From 5328322c3848bd997be53e34320de435fe9a7fd7 Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Sat, 6 Jun 2026 01:40:38 +0300 Subject: [PATCH 1/8] build(common): update raijin yarn bootstrap --- .pnp.loader.mjs | 6027 ++++++++++++++++-- .yarn/bin/yarn | 7 + .yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs | 9 + .yarn/releases/{yarn.mjs => yarn-remote.mjs} | 0 .yarnrc.yml | 5 +- 5 files changed, 5491 insertions(+), 557 deletions(-) create mode 100755 .yarn/bin/yarn create mode 100644 .yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs rename .yarn/releases/{yarn.mjs => yarn-remote.mjs} (100%) diff --git a/.pnp.loader.mjs b/.pnp.loader.mjs index 45359e90c..2d351c202 100644 --- a/.pnp.loader.mjs +++ b/.pnp.loader.mjs @@ -1,31 +1,40 @@ -/* eslint-disable */ -// @ts-nocheck - +import fs$1 from 'node:fs'; +import { fileURLToPath as fileURLToPath$1, pathToFileURL as pathToFileURL$1 } from 'node:url'; import fs from 'fs'; -import { URL as URL$1, fileURLToPath, pathToFileURL } from 'url'; -import path from 'path'; -import { createHash } from 'crypto'; -import { EOL } from 'os'; -import esmModule, { createRequire, isBuiltin } from 'module'; +import path$1 from 'path'; +import require$$1 from 'util'; +import require$$1$1 from 'events'; +import require$$0$1, { createHash } from 'crypto'; +import require$$1$2, { EOL } from 'os'; +import require$$1$3 from 'buffer'; +import require$$2, { fileURLToPath, pathToFileURL } from 'url'; +import require$$0$2 from 'readline'; +import { createRequire } from 'node:module'; +import { extname } from 'node:path'; +import esmModule, { createRequire as createRequire$1, isBuiltin } from 'module'; import assert from 'assert'; -const SAFE_TIME = 456789e3; +const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10)); +const WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13; +const SUPPORTS_IMPORT_ATTRIBUTES = major >= 21 || major === 20 && minor >= 10 || major === 18 && minor >= 20; +const SUPPORTS_IMPORT_ATTRIBUTES_ONLY = major >= 22; +const HAS_BROKEN_FSTAT_FOR_ZIP_FDS = major > 25 || major === 25 && minor >= 7; const PortablePath = { root: `/`, dot: `.`, parent: `..` }; -const npath = Object.create(path); -const ppath = Object.create(path.posix); +const npath = Object.create(path$1); +const ppath = Object.create(path$1.posix); npath.cwd = () => process.cwd(); ppath.cwd = process.platform === `win32` ? () => toPortablePath(process.cwd()) : process.cwd; if (process.platform === `win32`) { ppath.resolve = (...segments) => { if (segments.length > 0 && ppath.isAbsolute(segments[0])) { - return path.posix.resolve(...segments); + return path$1.posix.resolve(...segments); } else { - return path.posix.resolve(ppath.cwd(), ...segments); + return path$1.posix.resolve(ppath.cwd(), ...segments); } }; } @@ -75,6 +84,4956 @@ function convertPath(targetPathUtils, sourcePath) { return targetPathUtils === npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath); } +function readPackageScope(checkPath) { + const rootSeparatorIndex = checkPath.indexOf(npath.sep); + let separatorIndex; + do { + separatorIndex = checkPath.lastIndexOf(npath.sep); + checkPath = checkPath.slice(0, separatorIndex); + if (checkPath.endsWith(`${npath.sep}node_modules`)) + return false; + const pjson = readPackage(checkPath + npath.sep); + if (pjson) { + return { + data: pjson, + path: checkPath + }; + } + } while (separatorIndex > rootSeparatorIndex); + return false; +} +function readPackage(requestPath) { + const jsonPath = npath.resolve(requestPath, `package.json`); + if (!fs.existsSync(jsonPath)) + return null; + return JSON.parse(fs.readFileSync(jsonPath, `utf8`)); +} + +async function tryReadFile$1(path2) { + try { + return await fs.promises.readFile(path2, `utf8`); + } catch (error) { + if (error.code === `ENOENT`) + return null; + throw error; + } +} +function tryParseURL(str, base) { + try { + return new URL(str, base); + } catch { + return null; + } +} +let entrypointPath = null; +function setEntrypointPath(file) { + entrypointPath = file; +} +function getFileFormat$1(filepath) { + var _a, _b; + const ext = path$1.extname(filepath); + switch (ext) { + case `.mjs`: { + return `module`; + } + case `.cjs`: { + return `commonjs`; + } + case `.wasm`: { + throw new Error( + `Unknown file extension ".wasm" for ${filepath}` + ); + } + case `.json`: { + return `json`; + } + case `.js`: { + const pkg = readPackageScope(filepath); + if (!pkg) + return `commonjs`; + return (_a = pkg.data.type) != null ? _a : `commonjs`; + } + default: { + if (entrypointPath !== filepath) + return null; + const pkg = readPackageScope(filepath); + if (!pkg) + return `commonjs`; + if (pkg.data.type === `module`) + return null; + return (_b = pkg.data.type) != null ? _b : `commonjs`; + } + } +} + +function getDefaultExportFromNamespaceIfPresent (n) { + return n && Object.prototype.hasOwnProperty.call(n, 'default') ? n['default'] : n; +} + +var lib = {}; + +/****************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +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. +***************************************************************************** */ +/* global Reflect, Promise, SuppressedError, Symbol, Iterator */ + +var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); +}; + +function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} + +var __assign = function() { + __assign = Object.assign || function __assign(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); +}; + +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 __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { + function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; } + var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; + var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; + var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); + var _, done = false; + for (var i = decorators.length - 1; i >= 0; i--) { + var context = {}; + for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p]; + for (var p in contextIn.access) context.access[p] = contextIn.access[p]; + context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); }; + var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); + if (kind === "accessor") { + if (result === void 0) continue; + if (result === null || typeof result !== "object") throw new TypeError("Object expected"); + if (_ = accept(result.get)) descriptor.get = _; + if (_ = accept(result.set)) descriptor.set = _; + if (_ = accept(result.init)) initializers.unshift(_); + } + else if (_ = accept(result)) { + if (kind === "field") initializers.unshift(_); + else descriptor[key] = _; + } + } + if (target) Object.defineProperty(target, contextIn.name, descriptor); + done = true; +} +function __runInitializers(thisArg, initializers, value) { + var useValue = arguments.length > 2; + for (var i = 0; i < initializers.length; i++) { + value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); + } + return useValue ? value : void 0; +} +function __propKey(x) { + return typeof x === "symbol" ? x : "".concat(x); +} +function __setFunctionName(f, name, prefix) { + if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : ""; + return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); +} +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 = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype); + return g.next = verb(0), g["throw"] = verb(1), g["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 (g && (g = 0, op[0] && (_ = 0)), _) 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 __createBinding = Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +}); + +function __exportStar(m, o) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, 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: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +} + +/** @deprecated */ +function __spread() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read(arguments[i])); + return ar; +} + +/** @deprecated */ +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 __spreadArray(to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +} + +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 = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i; + function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; } + function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } } + 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: false } : 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(v) { resolve({ value: v, done: d }); }, reject); } +} + +function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } + return cooked; +} +var __setModuleDefault = Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}; + +var ownKeys = function(o) { + ownKeys = Object.getOwnPropertyNames || function (o) { + var ar = []; + for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; + return ar; + }; + return ownKeys(o); +}; + +function __importStar(mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); + __setModuleDefault(result, mod); + return result; +} + +function __importDefault(mod) { + return (mod && mod.__esModule) ? mod : { default: mod }; +} + +function __classPrivateFieldGet(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); +} + +function __classPrivateFieldSet(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; +} + +function __classPrivateFieldIn(state, receiver) { + if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object"); + return typeof state === "function" ? receiver === state : state.has(receiver); +} + +function __addDisposableResource(env, value, async) { + if (value !== null && value !== void 0) { + if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected."); + var dispose, inner; + if (async) { + if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined."); + dispose = value[Symbol.asyncDispose]; + } + if (dispose === void 0) { + if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined."); + dispose = value[Symbol.dispose]; + if (async) inner = dispose; + } + if (typeof dispose !== "function") throw new TypeError("Object not disposable."); + if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } }; + env.stack.push({ value: value, dispose: dispose, async: async }); + } + else if (async) { + env.stack.push({ async: true }); + } + return value; +} + +var _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { + var e = new Error(message); + return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; +}; + +function __disposeResources(env) { + function fail(e) { + env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e; + env.hasError = true; + } + var r, s = 0; + function next() { + while (r = env.stack.pop()) { + try { + if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next); + if (r.dispose) { + var result = r.dispose.call(r.value); + if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); }); + } + else s |= 1; + } + catch (e) { + fail(e); + } + } + if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve(); + if (env.hasError) throw env.error; + } + return next(); +} + +function __rewriteRelativeImportExtension(path, preserveJsx) { + if (typeof path === "string" && /^\.\.?\//.test(path)) { + return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) { + return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js"); + }); + } + return path; +} + +const tslib_es6 = { + __extends, + __assign, + __rest, + __decorate, + __param, + __esDecorate, + __runInitializers, + __propKey, + __setFunctionName, + __metadata, + __awaiter, + __generator, + __createBinding, + __exportStar, + __values, + __read, + __spread, + __spreadArrays, + __spreadArray, + __await, + __asyncGenerator, + __asyncDelegator, + __asyncValues, + __makeTemplateObject, + __importStar, + __importDefault, + __classPrivateFieldGet, + __classPrivateFieldSet, + __classPrivateFieldIn, + __addDisposableResource, + __disposeResources, + __rewriteRelativeImportExtension, +}; + +const tslib_es6$1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({ + __proto__: null, + __addDisposableResource, + get __assign () { return __assign; }, + __asyncDelegator, + __asyncGenerator, + __asyncValues, + __await, + __awaiter, + __classPrivateFieldGet, + __classPrivateFieldIn, + __classPrivateFieldSet, + __createBinding, + __decorate, + __disposeResources, + __esDecorate, + __exportStar, + __extends, + __generator, + __importDefault, + __importStar, + __makeTemplateObject, + __metadata, + __param, + __propKey, + __read, + __rest, + __rewriteRelativeImportExtension, + __runInitializers, + __setFunctionName, + __spread, + __spreadArray, + __spreadArrays, + __values, + default: tslib_es6 +}, Symbol.toStringTag, { value: 'Module' })); + +const require$$0 = /*@__PURE__*/getDefaultExportFromNamespaceIfPresent(tslib_es6$1); + +var constants = {}; + +var hasRequiredConstants; + +function requireConstants () { + if (hasRequiredConstants) return constants; + hasRequiredConstants = 1; + Object.defineProperty(constants, "__esModule", { value: true }); + constants.SAFE_TIME = constants.S_IFLNK = constants.S_IFREG = constants.S_IFDIR = constants.S_IFMT = void 0; + constants.S_IFMT = 0o170000; + constants.S_IFDIR = 0o040000; + constants.S_IFREG = 0o100000; + constants.S_IFLNK = 0o120000; + /** + * Unix timestamp for `1984-06-22T21:50:00.000Z` + * + * It needs to be after 1980-01-01 because that's what Zip supports, and it + * needs to have a slight offset to account for different timezones (because + * zip assumes that all times are local to whoever writes the file, which is + * really silly). + */ + constants.SAFE_TIME = 456789000; + return constants; +} + +var errors = {}; + +var hasRequiredErrors; + +function requireErrors () { + if (hasRequiredErrors) return errors; + hasRequiredErrors = 1; + Object.defineProperty(errors, "__esModule", { value: true }); + errors.EBUSY = EBUSY; + errors.ENOSYS = ENOSYS; + errors.EINVAL = EINVAL; + errors.EBADF = EBADF; + errors.ENOENT = ENOENT; + errors.ENOTDIR = ENOTDIR; + errors.EISDIR = EISDIR; + errors.EEXIST = EEXIST; + errors.EROFS = EROFS; + errors.ENOTEMPTY = ENOTEMPTY; + errors.EOPNOTSUPP = EOPNOTSUPP; + errors.ERR_DIR_CLOSED = ERR_DIR_CLOSED; + function makeError(code, message) { + return Object.assign(new Error(`${code}: ${message}`), { code }); + } + function EBUSY(message) { + return makeError(`EBUSY`, message); + } + function ENOSYS(message, reason) { + return makeError(`ENOSYS`, `${message}, ${reason}`); + } + function EINVAL(reason) { + return makeError(`EINVAL`, `invalid argument, ${reason}`); + } + function EBADF(reason) { + return makeError(`EBADF`, `bad file descriptor, ${reason}`); + } + function ENOENT(reason) { + return makeError(`ENOENT`, `no such file or directory, ${reason}`); + } + function ENOTDIR(reason) { + return makeError(`ENOTDIR`, `not a directory, ${reason}`); + } + function EISDIR(reason) { + return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); + } + function EEXIST(reason) { + return makeError(`EEXIST`, `file already exists, ${reason}`); + } + function EROFS(reason) { + return makeError(`EROFS`, `read-only filesystem, ${reason}`); + } + function ENOTEMPTY(reason) { + return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); + } + function EOPNOTSUPP(reason) { + return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); + } + // ------------------------------------------------------------------------ + function ERR_DIR_CLOSED() { + return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); + } + return errors; +} + +var statUtils = {}; + +var hasRequiredStatUtils; + +function requireStatUtils () { + if (hasRequiredStatUtils) return statUtils; + hasRequiredStatUtils = 1; + (function (exports) { + Object.defineProperty(exports, "__esModule", { value: true }); + exports.BigIntStatsEntry = exports.StatEntry = exports.DirEntry = exports.DEFAULT_MODE = void 0; + exports.makeDefaultStats = makeDefaultStats; + exports.makeEmptyStats = makeEmptyStats; + exports.clearStats = clearStats; + exports.convertToBigIntStats = convertToBigIntStats; + exports.areStatsEqual = areStatsEqual; + const tslib_1 = require$$0; + const nodeUtils = tslib_1.__importStar(require$$1); + const constants_1 = requireConstants(); + exports.DEFAULT_MODE = constants_1.S_IFREG | 0o644; + class DirEntry { + constructor() { + this.name = ``; + this.path = ``; + this.mode = 0; + } + isBlockDevice() { + return false; + } + isCharacterDevice() { + return false; + } + isDirectory() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR; + } + isFIFO() { + return false; + } + isFile() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG; + } + isSocket() { + return false; + } + isSymbolicLink() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK; + } + } + exports.DirEntry = DirEntry; + class StatEntry { + constructor() { + this.uid = 0; + this.gid = 0; + this.size = 0; + this.blksize = 0; + this.atimeMs = 0; + this.mtimeMs = 0; + this.ctimeMs = 0; + this.birthtimeMs = 0; + this.atime = new Date(0); + this.mtime = new Date(0); + this.ctime = new Date(0); + this.birthtime = new Date(0); + this.dev = 0; + this.ino = 0; + this.mode = exports.DEFAULT_MODE; + this.nlink = 1; + this.rdev = 0; + this.blocks = 1; + } + isBlockDevice() { + return false; + } + isCharacterDevice() { + return false; + } + isDirectory() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR; + } + isFIFO() { + return false; + } + isFile() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG; + } + isSocket() { + return false; + } + isSymbolicLink() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK; + } + } + exports.StatEntry = StatEntry; + class BigIntStatsEntry { + constructor() { + this.uid = BigInt(0); + this.gid = BigInt(0); + this.size = BigInt(0); + this.blksize = BigInt(0); + this.atimeMs = BigInt(0); + this.mtimeMs = BigInt(0); + this.ctimeMs = BigInt(0); + this.birthtimeMs = BigInt(0); + this.atimeNs = BigInt(0); + this.mtimeNs = BigInt(0); + this.ctimeNs = BigInt(0); + this.birthtimeNs = BigInt(0); + this.atime = new Date(0); + this.mtime = new Date(0); + this.ctime = new Date(0); + this.birthtime = new Date(0); + this.dev = BigInt(0); + this.ino = BigInt(0); + this.mode = BigInt(exports.DEFAULT_MODE); + this.nlink = BigInt(1); + this.rdev = BigInt(0); + this.blocks = BigInt(1); + } + isBlockDevice() { + return false; + } + isCharacterDevice() { + return false; + } + isDirectory() { + return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFDIR); + } + isFIFO() { + return false; + } + isFile() { + return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFREG); + } + isSocket() { + return false; + } + isSymbolicLink() { + return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFLNK); + } + } + exports.BigIntStatsEntry = BigIntStatsEntry; + function makeDefaultStats() { + return new StatEntry(); + } + function makeEmptyStats() { + return clearStats(makeDefaultStats()); + } + /** + * Mutates the provided stats object to zero it out then returns it for convenience + */ + function clearStats(stats) { + for (const key in stats) { + if (Object.hasOwn(stats, key)) { + const element = stats[key]; + if (typeof element === `number`) { + // @ts-expect-error Typescript can't tell that stats[key] is a number + stats[key] = 0; + } + else if (typeof element === `bigint`) { + // @ts-expect-error Typescript can't tell that stats[key] is a bigint + stats[key] = BigInt(0); + } + else if (nodeUtils.types.isDate(element)) { + // @ts-expect-error Typescript can't tell that stats[key] is a bigint + stats[key] = new Date(0); + } + } + } + return stats; + } + function convertToBigIntStats(stats) { + const bigintStats = new BigIntStatsEntry(); + for (const key in stats) { + if (Object.hasOwn(stats, key)) { + const element = stats[key]; + if (typeof element === `number`) { + // @ts-expect-error Typescript isn't able to tell this is valid + bigintStats[key] = BigInt(Math.floor(element)); + } + else if (nodeUtils.types.isDate(element)) { + // @ts-expect-error Typescript isn't able to tell this is valid + bigintStats[key] = new Date(element); + } + } + } + bigintStats.atimeNs = bigintStats.atimeMs * BigInt(1e6) + BigInt(Math.floor((stats.atimeMs % 1) * 1e3)) * BigInt(1e3); + bigintStats.mtimeNs = bigintStats.mtimeMs * BigInt(1e6) + BigInt(Math.floor((stats.mtimeMs % 1) * 1e3)) * BigInt(1e3); + bigintStats.ctimeNs = bigintStats.ctimeMs * BigInt(1e6) + BigInt(Math.floor((stats.ctimeMs % 1) * 1e3)) * BigInt(1e3); + bigintStats.birthtimeNs = bigintStats.birthtimeMs * BigInt(1e6) + BigInt(Math.floor((stats.birthtimeMs % 1) * 1e3)) * BigInt(1e3); + return bigintStats; + } + function areStatsEqual(a, b) { + if (a.atimeMs !== b.atimeMs) + return false; + if (a.birthtimeMs !== b.birthtimeMs) + return false; + if (a.blksize !== b.blksize) + return false; + if (a.blocks !== b.blocks) + return false; + if (a.ctimeMs !== b.ctimeMs) + return false; + if (a.dev !== b.dev) + return false; + if (a.gid !== b.gid) + return false; + if (a.ino !== b.ino) + return false; + if (a.isBlockDevice() !== b.isBlockDevice()) + return false; + if (a.isCharacterDevice() !== b.isCharacterDevice()) + return false; + if (a.isDirectory() !== b.isDirectory()) + return false; + if (a.isFIFO() !== b.isFIFO()) + return false; + if (a.isFile() !== b.isFile()) + return false; + if (a.isSocket() !== b.isSocket()) + return false; + if (a.isSymbolicLink() !== b.isSymbolicLink()) + return false; + if (a.mode !== b.mode) + return false; + if (a.mtimeMs !== b.mtimeMs) + return false; + if (a.nlink !== b.nlink) + return false; + if (a.rdev !== b.rdev) + return false; + if (a.size !== b.size) + return false; + if (a.uid !== b.uid) + return false; + const aN = a; + const bN = b; + if (aN.atimeNs !== bN.atimeNs) + return false; + if (aN.mtimeNs !== bN.mtimeNs) + return false; + if (aN.ctimeNs !== bN.ctimeNs) + return false; + if (aN.birthtimeNs !== bN.birthtimeNs) + return false; + return true; + } + } (statUtils)); + return statUtils; +} + +var copyPromise$1 = {}; + +var path = {}; + +var hasRequiredPath; + +function requirePath () { + if (hasRequiredPath) return path; + hasRequiredPath = 1; + (function (exports) { + Object.defineProperty(exports, "__esModule", { value: true }); + exports.ppath = exports.npath = exports.Filename = exports.PortablePath = void 0; + exports.convertPath = convertPath; + const tslib_1 = require$$0; + const path_1 = tslib_1.__importDefault(path$1); + var PathType; + (function (PathType) { + PathType[PathType["File"] = 0] = "File"; + PathType[PathType["Portable"] = 1] = "Portable"; + PathType[PathType["Native"] = 2] = "Native"; + })(PathType || (PathType = {})); + exports.PortablePath = { + root: `/`, + dot: `.`, + parent: `..`, + }; + exports.Filename = { + home: `~`, + nodeModules: `node_modules`, + manifest: `package.json`, + lockfile: `yarn.lock`, + virtual: `__virtual__`, + /** + * @deprecated + */ + pnpJs: `.pnp.js`, + pnpCjs: `.pnp.cjs`, + pnpData: `.pnp.data.json`, + pnpEsmLoader: `.pnp.loader.mjs`, + rc: `.yarnrc.yml`, + env: `.env`, + }; + exports.npath = Object.create(path_1.default); + exports.ppath = Object.create(path_1.default.posix); + exports.npath.cwd = () => process.cwd(); + exports.ppath.cwd = process.platform === `win32` + ? () => toPortablePath(process.cwd()) + : process.cwd; + if (process.platform === `win32`) { + exports.ppath.resolve = (...segments) => { + if (segments.length > 0 && exports.ppath.isAbsolute(segments[0])) { + return path_1.default.posix.resolve(...segments); + } + else { + return path_1.default.posix.resolve(exports.ppath.cwd(), ...segments); + } + }; + } + const contains = function (pathUtils, from, to) { + from = pathUtils.normalize(from); + to = pathUtils.normalize(to); + if (from === to) + return `.`; + if (!from.endsWith(pathUtils.sep)) + from = (from + pathUtils.sep); + if (to.startsWith(from)) { + return to.slice(from.length); + } + else { + return null; + } + }; + exports.npath.contains = (from, to) => contains(exports.npath, from, to); + exports.ppath.contains = (from, to) => contains(exports.ppath, from, to); + const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; + const UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/; + const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; + const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; + // Path should look like "/N:/berry/scripts/plugin-pack.js" + // And transform to "N:\berry\scripts\plugin-pack.js" + function fromPortablePathWin32(p) { + let portablePathMatch, uncPortablePathMatch; + if ((portablePathMatch = p.match(PORTABLE_PATH_REGEXP))) + p = portablePathMatch[1]; + else if ((uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP))) + p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`; + else + return p; + return p.replace(/\//g, `\\`); + } + // Path should look like "N:/berry/scripts/plugin-pack.js" + // And transform to "/N:/berry/scripts/plugin-pack.js" + function toPortablePathWin32(p) { + p = p.replace(/\\/g, `/`); + let windowsPathMatch, uncWindowsPathMatch; + if ((windowsPathMatch = p.match(WINDOWS_PATH_REGEXP))) + p = `/${windowsPathMatch[1]}`; + else if ((uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP))) + p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`; + return p; + } + const toPortablePath = process.platform === `win32` + ? toPortablePathWin32 + : (p) => p; + const fromPortablePath = process.platform === `win32` + ? fromPortablePathWin32 + : (p) => p; + exports.npath.fromPortablePath = fromPortablePath; + exports.npath.toPortablePath = toPortablePath; + function convertPath(targetPathUtils, sourcePath) { + return (targetPathUtils === exports.npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath)); + } + } (path)); + return path; +} + +var hasRequiredCopyPromise; + +function requireCopyPromise () { + if (hasRequiredCopyPromise) return copyPromise$1; + hasRequiredCopyPromise = 1; + Object.defineProperty(copyPromise$1, "__esModule", { value: true }); + copyPromise$1.setupCopyIndex = setupCopyIndex; + copyPromise$1.copyPromise = copyPromise; + const tslib_1 = require$$0; + const constants = tslib_1.__importStar(requireConstants()); + const path_1 = requirePath(); + const defaultTime = new Date(constants.SAFE_TIME * 1000); + const defaultTimeMs = defaultTime.getTime(); + async function setupCopyIndex(destinationFs, linkStrategy) { + const hexCharacters = `0123456789abcdef`; + await destinationFs.mkdirPromise(linkStrategy.indexPath, { recursive: true }); + const promises = []; + for (const l1 of hexCharacters) + for (const l2 of hexCharacters) + promises.push(destinationFs.mkdirPromise(destinationFs.pathUtils.join(linkStrategy.indexPath, `${l1}${l2}`), { recursive: true })); + await Promise.all(promises); + return linkStrategy.indexPath; + } + async function copyPromise(destinationFs, destination, sourceFs, source, opts) { + const normalizedDestination = destinationFs.pathUtils.normalize(destination); + const normalizedSource = sourceFs.pathUtils.normalize(source); + const prelayout = []; + const postlayout = []; + const { atime, mtime } = opts.stableTime + ? { atime: defaultTime, mtime: defaultTime } + : await sourceFs.lstatPromise(normalizedSource); + await destinationFs.mkdirpPromise(destinationFs.pathUtils.dirname(destination), { utimes: [atime, mtime] }); + await copyImpl(prelayout, postlayout, destinationFs, normalizedDestination, sourceFs, normalizedSource, { ...opts, didParentExist: true }); + for (const operation of prelayout) + await operation(); + await Promise.all(postlayout.map(operation => { + return operation(); + })); + } + async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) { + const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null; + const sourceStat = await sourceFs.lstatPromise(source); + const { atime, mtime } = opts.stableTime + ? { atime: defaultTime, mtime: defaultTime } + : sourceStat; + let updated; + switch (true) { + case sourceStat.isDirectory(): + { + updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + case sourceStat.isFile(): + { + updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + case sourceStat.isSymbolicLink(): + { + updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + default: { + throw new Error(`Unsupported file type (${sourceStat.mode})`); + } + } + // We aren't allowed to modify the destination if we work with the index, + // since otherwise we'd accidentally propagate the changes to all projects. + if (opts.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) { + if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) { + postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime)); + updated = true; + } + if (destinationStat === null || (destinationStat.mode & 0o777) !== (sourceStat.mode & 0o777)) { + postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 0o777)); + updated = true; + } + } + return updated; + } + async function maybeLStat(baseFs, p) { + try { + return await baseFs.lstatPromise(p); + } + catch { + return null; + } + } + async function copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null && !destinationStat.isDirectory()) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } + else { + return false; + } + } + let updated = false; + if (destinationStat === null) { + prelayout.push(async () => { + try { + await destinationFs.mkdirPromise(destination, { mode: sourceStat.mode }); + } + catch (err) { + if (err.code !== `EEXIST`) { + throw err; + } + } + }); + updated = true; + } + const entries = await sourceFs.readdirPromise(source); + const nextOpts = opts.didParentExist && !destinationStat ? { ...opts, didParentExist: false } : opts; + if (opts.stableSort) { + for (const entry of entries.sort()) { + if (await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts)) { + updated = true; + } + } + } + else { + const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => { + await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts); + })); + if (entriesUpdateStatus.some(status => status)) { + updated = true; + } + } + return updated; + } + async function copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, linkStrategy) { + const sourceHash = await sourceFs.checksumFilePromise(source, { algorithm: `sha1` }); + const defaultMode = 0o644; + const sourceMode = sourceStat.mode & 0o777; + // add mode to the index file name if it's not the default b/c different packages could have the file with same content, but different modes + const indexFileName = `${sourceHash}${sourceMode !== defaultMode ? sourceMode.toString(8) : ``}`; + const indexPath = destinationFs.pathUtils.join(linkStrategy.indexPath, sourceHash.slice(0, 2), `${indexFileName}.dat`); + let AtomicBehavior; + (function (AtomicBehavior) { + AtomicBehavior[AtomicBehavior["Lock"] = 0] = "Lock"; + AtomicBehavior[AtomicBehavior["Rename"] = 1] = "Rename"; + })(AtomicBehavior || (AtomicBehavior = {})); + let atomicBehavior = AtomicBehavior.Rename; + let indexStat = await maybeLStat(destinationFs, indexPath); + if (destinationStat) { + const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino; + const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs; + if (isDestinationHardlinkedFromIndex) { + // If the index is modified, we will want to repair it. However, the + // default logic ensuring atomicity (creating a file in a temporary + // place before atomically moving it into its final location) won't + // work: we'd lose all the existing hardlinks. + // + // To avoid that, when repairing a file, we fallback to the slow but + // safer `lockPromise`-based mutex, which will prevent multiple + // processes to modify the file without impacting their inode. + // + // Give that the repair mechanism should be very rarely needed in + // situation where performance is critical, it should be ok. + // + if (isIndexModified && linkStrategy.autoRepair) { + atomicBehavior = AtomicBehavior.Lock; + indexStat = null; + } + } + if (!isDestinationHardlinkedFromIndex) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } + else { + return false; + } + } + } + const tempPath = !indexStat && atomicBehavior === AtomicBehavior.Rename + ? `${indexPath}.${Math.floor(Math.random() * 0x100000000).toString(16).padStart(8, `0`)}` + : null; + let tempPathCleaned = false; + prelayout.push(async () => { + if (!indexStat) { + if (atomicBehavior === AtomicBehavior.Lock) { + await destinationFs.lockPromise(indexPath, async () => { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(indexPath, content); + }); + } + if (atomicBehavior === AtomicBehavior.Rename && tempPath) { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(tempPath, content); + // We use `linkPromise` rather than `renamePromise` because the later + // overwrites the destination if it already exists; usually this + // wouldn't be a problem, but since we care about preserving the + // hardlink identity of the destination, we can't do that. + // + // So instead we create a hardlink of the source file (which will + // fail with EEXIST if the destination already exists), and we remove + // the source in the postlayout steps. + // + try { + await destinationFs.linkPromise(tempPath, indexPath); + } + catch (err) { + if (err.code === `EEXIST`) { + tempPathCleaned = true; + await destinationFs.unlinkPromise(tempPath); + } + else { + throw err; + } + } + } + } + if (!destinationStat) { + await destinationFs.linkPromise(indexPath, destination); + } + }); + postlayout.push(async () => { + if (!indexStat) { + await destinationFs.lutimesPromise(indexPath, defaultTime, defaultTime); + if (sourceMode !== defaultMode) { + await destinationFs.chmodPromise(indexPath, sourceMode); + } + } + if (tempPath && !tempPathCleaned) { + await destinationFs.unlinkPromise(tempPath); + } + }); + return false; + } + async function copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } + else { + return false; + } + } + // TODO: Add support for file cloning, by adding a flag inside the FakeFS + // instances to detect which "namespace" they're part of (for example, the + // NodeFS and the ZipFS would be different namespaces since you can't clone + // from one disk to the other; on the other hand, a CwdFS would share the + // namespace from its base FS and thus would support cloning). + prelayout.push(async () => { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(destination, content); + }); + return true; + } + async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (opts.linkStrategy?.type === `HardlinkFromIndex`) { + return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy); + } + else { + return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + } + async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } + else { + return false; + } + } + prelayout.push(async () => { + await destinationFs.symlinkPromise((0, path_1.convertPath)(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination); + }); + return true; + } + return copyPromise$1; +} + +var opendir = {}; + +var hasRequiredOpendir; + +function requireOpendir () { + if (hasRequiredOpendir) return opendir; + hasRequiredOpendir = 1; + Object.defineProperty(opendir, "__esModule", { value: true }); + opendir.CustomDir = void 0; + opendir.opendir = opendir$1; + const tslib_1 = require$$0; + const errors = tslib_1.__importStar(requireErrors()); + class CustomDir { + constructor(path, nextDirent, opts = {}) { + this.path = path; + this.nextDirent = nextDirent; + this.opts = opts; + this.closed = false; + } + throwIfClosed() { + if (this.closed) { + throw errors.ERR_DIR_CLOSED(); + } + } + async *[Symbol.asyncIterator]() { + try { + let dirent; + while ((dirent = await this.read()) !== null) { + yield dirent; + } + } + finally { + await this.close(); + } + } + read(cb) { + const dirent = this.readSync(); + if (typeof cb !== `undefined`) + return cb(null, dirent); + return Promise.resolve(dirent); + } + readSync() { + this.throwIfClosed(); + return this.nextDirent(); + } + close(cb) { + this.closeSync(); + if (typeof cb !== `undefined`) + return cb(null); + return Promise.resolve(); + } + closeSync() { + this.throwIfClosed(); + this.opts.onClose?.(); + this.closed = true; + } + } + opendir.CustomDir = CustomDir; + function opendir$1(fakeFs, path, entries, opts) { + const nextDirent = () => { + const filename = entries.shift(); + if (typeof filename === `undefined`) + return null; + const entryPath = fakeFs.pathUtils.join(path, filename); + return Object.assign(fakeFs.statSync(entryPath), { + name: filename, + path: undefined, + }); + }; + return new CustomDir(path, nextDirent, opts); + } + return opendir; +} + +var watchFile = {}; + +var CustomStatWatcher = {}; + +var hasRequiredCustomStatWatcher; + +function requireCustomStatWatcher () { + if (hasRequiredCustomStatWatcher) return CustomStatWatcher; + hasRequiredCustomStatWatcher = 1; + Object.defineProperty(CustomStatWatcher, "__esModule", { value: true }); + CustomStatWatcher.CustomStatWatcher = CustomStatWatcher.Status = CustomStatWatcher.Event = void 0; + CustomStatWatcher.assertStatus = assertStatus; + const tslib_1 = require$$0; + const events_1 = require$$1$1; + const statUtils = tslib_1.__importStar(requireStatUtils()); + var Event; + (function (Event) { + Event["Change"] = "change"; + Event["Stop"] = "stop"; + })(Event || (CustomStatWatcher.Event = Event = {})); + var Status; + (function (Status) { + Status["Ready"] = "ready"; + Status["Running"] = "running"; + Status["Stopped"] = "stopped"; + })(Status || (CustomStatWatcher.Status = Status = {})); + function assertStatus(current, expected) { + if (current !== expected) { + throw new Error(`Invalid StatWatcher status: expected '${expected}', got '${current}'`); + } + } + let CustomStatWatcher$1 = class CustomStatWatcher extends events_1.EventEmitter { + static create(fakeFs, path, opts) { + const statWatcher = new CustomStatWatcher(fakeFs, path, opts); + statWatcher.start(); + return statWatcher; + } + constructor(fakeFs, path, { bigint = false } = {}) { + super(); + this.status = Status.Ready; + this.changeListeners = new Map(); + this.startTimeout = null; + this.fakeFs = fakeFs; + this.path = path; + this.bigint = bigint; + this.lastStats = this.stat(); + } + start() { + assertStatus(this.status, Status.Ready); + this.status = Status.Running; + // Node allows other listeners to be registered up to 3 milliseconds + // after the watcher has been started, so that's what we're doing too + this.startTimeout = setTimeout(() => { + this.startTimeout = null; + // Per the Node FS docs: + // "When an fs.watchFile operation results in an ENOENT error, + // it will invoke the listener once, with all the fields zeroed + // (or, for dates, the Unix Epoch)." + if (!this.fakeFs.existsSync(this.path)) { + this.emit(Event.Change, this.lastStats, this.lastStats); + } + }, 3); + } + stop() { + assertStatus(this.status, Status.Running); + this.status = Status.Stopped; + if (this.startTimeout !== null) { + clearTimeout(this.startTimeout); + this.startTimeout = null; + } + this.emit(Event.Stop); + } + stat() { + try { + return this.fakeFs.statSync(this.path, { bigint: this.bigint }); + } + catch { + // From observation, all errors seem to be mostly ignored by Node. + // Checked with ENOENT, ENOTDIR, EPERM + const statInstance = this.bigint + ? new statUtils.BigIntStatsEntry() + : new statUtils.StatEntry(); + return statUtils.clearStats(statInstance); + } + } + /** + * Creates an interval whose callback compares the current stats with the previous stats and notifies all listeners in case of changes. + * + * @param opts.persistent Decides whether the interval should be immediately unref-ed. + */ + makeInterval(opts) { + const interval = setInterval(() => { + const currentStats = this.stat(); + const previousStats = this.lastStats; + if (statUtils.areStatsEqual(currentStats, previousStats)) + return; + this.lastStats = currentStats; + this.emit(Event.Change, currentStats, previousStats); + }, opts.interval); + return opts.persistent ? interval : interval.unref(); + } + /** + * Registers a listener and assigns it an interval. + */ + registerChangeListener(listener, opts) { + this.addListener(Event.Change, listener); + this.changeListeners.set(listener, this.makeInterval(opts)); + } + /** + * Unregisters the listener and clears the assigned interval. + */ + unregisterChangeListener(listener) { + this.removeListener(Event.Change, listener); + const interval = this.changeListeners.get(listener); + if (typeof interval !== `undefined`) + clearInterval(interval); + this.changeListeners.delete(listener); + } + /** + * Unregisters all listeners and clears all assigned intervals. + */ + unregisterAllChangeListeners() { + for (const listener of this.changeListeners.keys()) { + this.unregisterChangeListener(listener); + } + } + hasChangeListeners() { + return this.changeListeners.size > 0; + } + /** + * Refs all stored intervals. + */ + ref() { + for (const interval of this.changeListeners.values()) + interval.ref(); + return this; + } + /** + * Unrefs all stored intervals. + */ + unref() { + for (const interval of this.changeListeners.values()) + interval.unref(); + return this; + } + }; + CustomStatWatcher.CustomStatWatcher = CustomStatWatcher$1; + return CustomStatWatcher; +} + +var hasRequiredWatchFile; + +function requireWatchFile () { + if (hasRequiredWatchFile) return watchFile; + hasRequiredWatchFile = 1; + Object.defineProperty(watchFile, "__esModule", { value: true }); + watchFile.watchFile = watchFile$1; + watchFile.unwatchFile = unwatchFile; + watchFile.unwatchAllFiles = unwatchAllFiles; + const CustomStatWatcher_1 = requireCustomStatWatcher(); + const statWatchersByFakeFS = new WeakMap(); + function watchFile$1(fakeFs, path, a, b) { + let bigint; + let persistent; + let interval; + let listener; + switch (typeof a) { + case `function`: + { + bigint = false; + persistent = true; + interval = 5007; + listener = a; + } + break; + default: + { + ({ + bigint = false, + persistent = true, + interval = 5007, + } = a); + listener = b; + } + break; + } + let statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + statWatchersByFakeFS.set(fakeFs, statWatchers = new Map()); + let statWatcher = statWatchers.get(path); + if (typeof statWatcher === `undefined`) { + statWatcher = CustomStatWatcher_1.CustomStatWatcher.create(fakeFs, path, { bigint }); + statWatchers.set(path, statWatcher); + } + statWatcher.registerChangeListener(listener, { persistent, interval }); + return statWatcher; + } + function unwatchFile(fakeFs, path, cb) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + return; + const statWatcher = statWatchers.get(path); + if (typeof statWatcher === `undefined`) + return; + if (typeof cb === `undefined`) + statWatcher.unregisterAllChangeListeners(); + else + statWatcher.unregisterChangeListener(cb); + if (!statWatcher.hasChangeListeners()) { + statWatcher.stop(); + statWatchers.delete(path); + } + } + function unwatchAllFiles(fakeFs) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + return; + for (const path of statWatchers.keys()) { + unwatchFile(fakeFs, path); + } + } + return watchFile; +} + +var FakeFS$1 = {}; + +var hasRequiredFakeFS; + +function requireFakeFS () { + if (hasRequiredFakeFS) return FakeFS$1; + hasRequiredFakeFS = 1; + Object.defineProperty(FakeFS$1, "__esModule", { value: true }); + FakeFS$1.BasePortableFakeFS = FakeFS$1.FakeFS = void 0; + FakeFS$1.normalizeLineEndings = normalizeLineEndings; + const crypto_1 = require$$0$1; + const os_1 = require$$1$2; + const copyPromise_1 = requireCopyPromise(); + const path_1 = requirePath(); + class FakeFS { + constructor(pathUtils) { + this.pathUtils = pathUtils; + } + async *genTraversePromise(init, { stableSort = false } = {}) { + const stack = [init]; + while (stack.length > 0) { + const p = stack.shift(); + const entry = await this.lstatPromise(p); + if (entry.isDirectory()) { + const entries = await this.readdirPromise(p); + if (stableSort) { + for (const entry of entries.sort()) { + stack.push(this.pathUtils.join(p, entry)); + } + } + else { + throw new Error(`Not supported`); + } + } + else { + yield p; + } + } + } + async checksumFilePromise(path, { algorithm = `sha512` } = {}) { + const fd = await this.openPromise(path, `r`); + try { + const CHUNK_SIZE = 65536; + const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE); + const hash = (0, crypto_1.createHash)(algorithm); + let bytesRead = 0; + while ((bytesRead = await this.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0) + hash.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead)); + return hash.digest(`hex`); + } + finally { + await this.closePromise(fd); + } + } + async removePromise(p, { recursive = true, maxRetries = 5 } = {}) { + let stat; + try { + stat = await this.lstatPromise(p); + } + catch (error) { + if (error.code === `ENOENT`) { + return; + } + else { + throw error; + } + } + if (stat.isDirectory()) { + if (recursive) { + const entries = await this.readdirPromise(p); + await Promise.all(entries.map(entry => { + return this.removePromise(this.pathUtils.resolve(p, entry)); + })); + } + // 5 gives 1s worth of retries at worst + for (let t = 0; t <= maxRetries; t++) { + try { + await this.rmdirPromise(p); + break; + } + catch (error) { + if (error.code !== `EBUSY` && error.code !== `ENOTEMPTY`) { + throw error; + } + else if (t < maxRetries) { + await new Promise(resolve => setTimeout(resolve, t * 100)); + } + } + } + } + else { + await this.unlinkPromise(p); + } + } + removeSync(p, { recursive = true } = {}) { + let stat; + try { + stat = this.lstatSync(p); + } + catch (error) { + if (error.code === `ENOENT`) { + return; + } + else { + throw error; + } + } + if (stat.isDirectory()) { + if (recursive) + for (const entry of this.readdirSync(p)) + this.removeSync(this.pathUtils.resolve(p, entry)); + this.rmdirSync(p); + } + else { + this.unlinkSync(p); + } + } + async mkdirpPromise(p, { chmod, utimes } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) + return undefined; + const parts = p.split(this.pathUtils.sep); + let createdDirectory; + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + if (!this.existsSync(subPath)) { + try { + await this.mkdirPromise(subPath); + } + catch (error) { + if (error.code === `EEXIST`) { + continue; + } + else { + throw error; + } + } + createdDirectory ??= subPath; + if (chmod != null) + await this.chmodPromise(subPath, chmod); + if (utimes != null) { + await this.utimesPromise(subPath, utimes[0], utimes[1]); + } + else { + const parentStat = await this.statPromise(this.pathUtils.dirname(subPath)); + await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime); + } + } + } + return createdDirectory; + } + mkdirpSync(p, { chmod, utimes } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) + return undefined; + const parts = p.split(this.pathUtils.sep); + let createdDirectory; + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + if (!this.existsSync(subPath)) { + try { + this.mkdirSync(subPath); + } + catch (error) { + if (error.code === `EEXIST`) { + continue; + } + else { + throw error; + } + } + createdDirectory ??= subPath; + if (chmod != null) + this.chmodSync(subPath, chmod); + if (utimes != null) { + this.utimesSync(subPath, utimes[0], utimes[1]); + } + else { + const parentStat = this.statSync(this.pathUtils.dirname(subPath)); + this.utimesSync(subPath, parentStat.atime, parentStat.mtime); + } + } + } + return createdDirectory; + } + async copyPromise(destination, source, { baseFs = this, overwrite = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) { + return await (0, copyPromise_1.copyPromise)(this, destination, baseFs, source, { overwrite, stableSort, stableTime, linkStrategy }); + } + copySync(destination, source, { baseFs = this, overwrite = true } = {}) { + const stat = baseFs.lstatSync(source); + const exists = this.existsSync(destination); + if (stat.isDirectory()) { + this.mkdirpSync(destination); + const directoryListing = baseFs.readdirSync(source); + for (const entry of directoryListing) { + this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { baseFs, overwrite }); + } + } + else if (stat.isFile()) { + if (!exists || overwrite) { + if (exists) + this.removeSync(destination); + const content = baseFs.readFileSync(source); + this.writeFileSync(destination, content); + } + } + else if (stat.isSymbolicLink()) { + if (!exists || overwrite) { + if (exists) + this.removeSync(destination); + const target = baseFs.readlinkSync(source); + this.symlinkSync((0, path_1.convertPath)(this.pathUtils, target), destination); + } + } + else { + throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`); + } + const mode = stat.mode & 0o777; + this.chmodSync(destination, mode); + } + async changeFilePromise(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferPromise(p, content, opts); + } + else { + return this.changeFileTextPromise(p, content, opts); + } + } + async changeFileBufferPromise(p, content, { mode } = {}) { + let current = Buffer.alloc(0); + try { + current = await this.readFilePromise(p); + } + catch { + // ignore errors, no big deal + } + if (Buffer.compare(current, content) === 0) + return; + await this.writeFilePromise(p, content, { mode }); + } + async changeFileTextPromise(p, content, { automaticNewlines, mode } = {}) { + let current = ``; + try { + current = await this.readFilePromise(p, `utf8`); + } + catch { + // ignore errors, no big deal + } + const normalizedContent = automaticNewlines + ? normalizeLineEndings(current, content) + : content; + if (current === normalizedContent) + return; + await this.writeFilePromise(p, normalizedContent, { mode }); + } + changeFileSync(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferSync(p, content, opts); + } + else { + return this.changeFileTextSync(p, content, opts); + } + } + changeFileBufferSync(p, content, { mode } = {}) { + let current = Buffer.alloc(0); + try { + current = this.readFileSync(p); + } + catch { + // ignore errors, no big deal + } + if (Buffer.compare(current, content) === 0) + return; + this.writeFileSync(p, content, { mode }); + } + changeFileTextSync(p, content, { automaticNewlines = false, mode } = {}) { + let current = ``; + try { + current = this.readFileSync(p, `utf8`); + } + catch { + // ignore errors, no big deal + } + const normalizedContent = automaticNewlines + ? normalizeLineEndings(current, content) + : content; + if (current === normalizedContent) + return; + this.writeFileSync(p, normalizedContent, { mode }); + } + async movePromise(fromP, toP) { + try { + await this.renamePromise(fromP, toP); + } + catch (error) { + if (error.code === `EXDEV`) { + await this.copyPromise(toP, fromP); + await this.removePromise(fromP); + } + else { + throw error; + } + } + } + moveSync(fromP, toP) { + try { + this.renameSync(fromP, toP); + } + catch (error) { + if (error.code === `EXDEV`) { + this.copySync(toP, fromP); + this.removeSync(fromP); + } + else { + throw error; + } + } + } + async lockPromise(affectedPath, callback) { + const lockPath = `${affectedPath}.flock`; + const interval = 1000 / 60; + const startTime = Date.now(); + let fd = null; + // Even when we detect that a lock file exists, we still look inside to see + // whether the pid that created it is still alive. It's not foolproof + // (there are false positive), but there are no false negative and that's + // all that matters in 99% of the cases. + const isAlive = async () => { + let pid; + try { + ([pid] = await this.readJsonPromise(lockPath)); + } + catch { + // If we can't read the file repeatedly, we assume the process was + // aborted before even finishing writing the payload. + return Date.now() - startTime < 500; + } + try { + // "As a special case, a signal of 0 can be used to test for the + // existence of a process" - so we check whether it's alive. + process.kill(pid, 0); + return true; + } + catch { + return false; + } + }; + while (fd === null) { + try { + fd = await this.openPromise(lockPath, `wx`); + } + catch (error) { + if (error.code === `EEXIST`) { + if (!await isAlive()) { + try { + await this.unlinkPromise(lockPath); + continue; + } + catch { + // No big deal if we can't remove it. Just fallback to wait for + // it to be eventually released by its owner. + } + } + if (Date.now() - startTime < 60 * 1000) { + await new Promise(resolve => setTimeout(resolve, interval)); + } + else { + throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`); + } + } + else { + throw error; + } + } + } + await this.writePromise(fd, JSON.stringify([process.pid])); + try { + return await callback(); + } + finally { + try { + // closePromise needs to come before unlinkPromise otherwise another process can attempt + // to get the file handle after the unlink but before close resuling in + // EPERM: operation not permitted, open + await this.closePromise(fd); + await this.unlinkPromise(lockPath); + } + catch { + // noop + } + } + } + async readJsonPromise(p) { + const content = await this.readFilePromise(p, `utf8`); + try { + return JSON.parse(content); + } + catch (error) { + error.message += ` (in ${p})`; + throw error; + } + } + readJsonSync(p) { + const content = this.readFileSync(p, `utf8`); + try { + return JSON.parse(content); + } + catch (error) { + error.message += ` (in ${p})`; + throw error; + } + } + async writeJsonPromise(p, data, { compact = false } = {}) { + const space = compact + ? 0 + : 2; + return await this.writeFilePromise(p, `${JSON.stringify(data, null, space)}\n`); + } + writeJsonSync(p, data, { compact = false } = {}) { + const space = compact + ? 0 + : 2; + return this.writeFileSync(p, `${JSON.stringify(data, null, space)}\n`); + } + async preserveTimePromise(p, cb) { + const stat = await this.lstatPromise(p); + const result = await cb(); + if (typeof result !== `undefined`) + p = result; + await this.lutimesPromise(p, stat.atime, stat.mtime); + } + async preserveTimeSync(p, cb) { + const stat = this.lstatSync(p); + const result = cb(); + if (typeof result !== `undefined`) + p = result; + this.lutimesSync(p, stat.atime, stat.mtime); + } + } + FakeFS$1.FakeFS = FakeFS; + class BasePortableFakeFS extends FakeFS { + constructor() { + super(path_1.ppath); + } + } + FakeFS$1.BasePortableFakeFS = BasePortableFakeFS; + function getEndOfLine(content) { + const matches = content.match(/\r?\n/g); + if (matches === null) + return os_1.EOL; + const crlf = matches.filter(nl => nl === `\r\n`).length; + const lf = matches.length - crlf; + return crlf > lf ? `\r\n` : `\n`; + } + function normalizeLineEndings(originalContent, newContent) { + return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); + } + return FakeFS$1; +} + +var AliasFS = {}; + +var ProxiedFS$1 = {}; + +var hasRequiredProxiedFS; + +function requireProxiedFS () { + if (hasRequiredProxiedFS) return ProxiedFS$1; + hasRequiredProxiedFS = 1; + Object.defineProperty(ProxiedFS$1, "__esModule", { value: true }); + ProxiedFS$1.ProxiedFS = void 0; + const FakeFS_1 = requireFakeFS(); + class ProxiedFS extends FakeFS_1.FakeFS { + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + resolve(path) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); + } + getRealPath() { + return this.mapFromBase(this.baseFs.getRealPath()); + } + async openPromise(p, flags, mode) { + return this.baseFs.openPromise(this.mapToBase(p), flags, mode); + } + openSync(p, flags, mode) { + return this.baseFs.openSync(this.mapToBase(p), flags, mode); + } + async opendirPromise(p, opts) { + return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); + } + opendirSync(p, opts) { + return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); + } + async readPromise(fd, buffer, offset, length, position) { + return await this.baseFs.readPromise(fd, buffer, offset, length, position); + } + readSync(fd, buffer, offset, length, position) { + return this.baseFs.readSync(fd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } + else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } + } + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } + else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); + } + } + async closePromise(fd) { + return this.baseFs.closePromise(fd); + } + closeSync(fd) { + this.baseFs.closeSync(fd); + } + createReadStream(p, opts) { + return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); + } + createWriteStream(p, opts) { + return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); + } + async realpathPromise(p) { + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); + } + realpathSync(p) { + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); + } + async existsPromise(p) { + return this.baseFs.existsPromise(this.mapToBase(p)); + } + existsSync(p) { + return this.baseFs.existsSync(this.mapToBase(p)); + } + accessSync(p, mode) { + return this.baseFs.accessSync(this.mapToBase(p), mode); + } + async accessPromise(p, mode) { + return this.baseFs.accessPromise(this.mapToBase(p), mode); + } + async statPromise(p, opts) { + return this.baseFs.statPromise(this.mapToBase(p), opts); + } + statSync(p, opts) { + return this.baseFs.statSync(this.mapToBase(p), opts); + } + async fstatPromise(fd, opts) { + return this.baseFs.fstatPromise(fd, opts); + } + fstatSync(fd, opts) { + return this.baseFs.fstatSync(fd, opts); + } + lstatPromise(p, opts) { + return this.baseFs.lstatPromise(this.mapToBase(p), opts); + } + lstatSync(p, opts) { + return this.baseFs.lstatSync(this.mapToBase(p), opts); + } + async fchmodPromise(fd, mask) { + return this.baseFs.fchmodPromise(fd, mask); + } + fchmodSync(fd, mask) { + return this.baseFs.fchmodSync(fd, mask); + } + async chmodPromise(p, mask) { + return this.baseFs.chmodPromise(this.mapToBase(p), mask); + } + chmodSync(p, mask) { + return this.baseFs.chmodSync(this.mapToBase(p), mask); + } + async fchownPromise(fd, uid, gid) { + return this.baseFs.fchownPromise(fd, uid, gid); + } + fchownSync(fd, uid, gid) { + return this.baseFs.fchownSync(fd, uid, gid); + } + async chownPromise(p, uid, gid) { + return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); + } + chownSync(p, uid, gid) { + return this.baseFs.chownSync(this.mapToBase(p), uid, gid); + } + async renamePromise(oldP, newP) { + return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); + } + renameSync(oldP, newP) { + return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); + } + async copyFilePromise(sourceP, destP, flags = 0) { + return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + copyFileSync(sourceP, destP, flags = 0) { + return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + async appendFilePromise(p, content, opts) { + return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); + } + appendFileSync(p, content, opts) { + return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); + } + async writeFilePromise(p, content, opts) { + return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); + } + writeFileSync(p, content, opts) { + return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); + } + async unlinkPromise(p) { + return this.baseFs.unlinkPromise(this.mapToBase(p)); + } + unlinkSync(p) { + return this.baseFs.unlinkSync(this.mapToBase(p)); + } + async utimesPromise(p, atime, mtime) { + return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); + } + utimesSync(p, atime, mtime) { + return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); + } + async lutimesPromise(p, atime, mtime) { + return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); + } + lutimesSync(p, atime, mtime) { + return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); + } + async mkdirPromise(p, opts) { + return this.baseFs.mkdirPromise(this.mapToBase(p), opts); + } + mkdirSync(p, opts) { + return this.baseFs.mkdirSync(this.mapToBase(p), opts); + } + async rmdirPromise(p, opts) { + return this.baseFs.rmdirPromise(this.mapToBase(p), opts); + } + rmdirSync(p, opts) { + return this.baseFs.rmdirSync(this.mapToBase(p), opts); + } + async rmPromise(p, opts) { + return this.baseFs.rmPromise(this.mapToBase(p), opts); + } + rmSync(p, opts) { + return this.baseFs.rmSync(this.mapToBase(p), opts); + } + async linkPromise(existingP, newP) { + return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); + } + linkSync(existingP, newP) { + return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); + } + async symlinkPromise(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); + } + symlinkSync(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkSync(mappedTarget, mappedP, type); + } + async readFilePromise(p, encoding) { + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + } + readFileSync(p, encoding) { + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + } + readdirPromise(p, opts) { + return this.baseFs.readdirPromise(this.mapToBase(p), opts); + } + readdirSync(p, opts) { + return this.baseFs.readdirSync(this.mapToBase(p), opts); + } + async readlinkPromise(p) { + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); + } + readlinkSync(p) { + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); + } + async truncatePromise(p, len) { + return this.baseFs.truncatePromise(this.mapToBase(p), len); + } + truncateSync(p, len) { + return this.baseFs.truncateSync(this.mapToBase(p), len); + } + async ftruncatePromise(fd, len) { + return this.baseFs.ftruncatePromise(fd, len); + } + ftruncateSync(fd, len) { + return this.baseFs.ftruncateSync(fd, len); + } + watch(p, a, b) { + return this.baseFs.watch(this.mapToBase(p), + // @ts-expect-error - reason TBS + a, b); + } + watchFile(p, a, b) { + return this.baseFs.watchFile(this.mapToBase(p), + // @ts-expect-error - reason TBS + a, b); + } + unwatchFile(p, cb) { + return this.baseFs.unwatchFile(this.mapToBase(p), cb); + } + fsMapToBase(p) { + if (typeof p === `number`) { + return p; + } + else { + return this.mapToBase(p); + } + } + } + ProxiedFS$1.ProxiedFS = ProxiedFS; + return ProxiedFS$1; +} + +var hasRequiredAliasFS; + +function requireAliasFS () { + if (hasRequiredAliasFS) return AliasFS; + hasRequiredAliasFS = 1; + Object.defineProperty(AliasFS, "__esModule", { value: true }); + AliasFS.AliasFS = void 0; + const ProxiedFS_1 = requireProxiedFS(); + let AliasFS$1 = class AliasFS extends ProxiedFS_1.ProxiedFS { + constructor(target, { baseFs, pathUtils }) { + super(pathUtils); + this.target = target; + this.baseFs = baseFs; + } + getRealPath() { + return this.target; + } + getBaseFs() { + return this.baseFs; + } + mapFromBase(p) { + return p; + } + mapToBase(p) { + return p; + } + }; + AliasFS.AliasFS = AliasFS$1; + return AliasFS; +} + +var CwdFS = {}; + +var NodeFS$1 = {}; + +var hasRequiredNodeFS; + +function requireNodeFS () { + if (hasRequiredNodeFS) return NodeFS$1; + hasRequiredNodeFS = 1; + Object.defineProperty(NodeFS$1, "__esModule", { value: true }); + NodeFS$1.NodeFS = void 0; + const tslib_1 = require$$0; + const fs_1 = tslib_1.__importDefault(fs); + const FakeFS_1 = requireFakeFS(); + const path_1 = requirePath(); + function direntToPortable(dirent) { + // We don't need to return a copy, we can just reuse the object the real fs returned + const portableDirent = dirent; + if (typeof dirent.path === `string`) + portableDirent.path = path_1.npath.toPortablePath(dirent.path); + return portableDirent; + } + class NodeFS extends FakeFS_1.BasePortableFakeFS { + constructor(realFs = fs_1.default) { + super(); + this.realFs = realFs; + } + getExtractHint() { + return false; + } + getRealPath() { + return path_1.PortablePath.root; + } + resolve(p) { + return path_1.ppath.resolve(p); + } + async openPromise(p, flags, mode) { + return await new Promise((resolve, reject) => { + this.realFs.open(path_1.npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); + }); + } + openSync(p, flags, mode) { + return this.realFs.openSync(path_1.npath.fromPortablePath(p), flags, mode); + } + async opendirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (typeof opts !== `undefined`) { + this.realFs.opendir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.opendir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }).then(dir => { + // @ts-expect-error - reason TBS + // + // We need a way to tell TS that the values returned by the `read` + // methods are compatible with `Dir`, especially the `name` field. + // + // We also can't use `Object.assign` to set the because the `path` + // field to a Filename, because the property isn't writable, so + // we need to use defineProperty instead. + // + const dirWithFixedPath = dir; + Object.defineProperty(dirWithFixedPath, `path`, { + value: p, + configurable: true, + writable: true, + }); + return dirWithFixedPath; + }); + } + opendirSync(p, opts) { + const dir = typeof opts !== `undefined` + ? this.realFs.opendirSync(path_1.npath.fromPortablePath(p), opts) + : this.realFs.opendirSync(path_1.npath.fromPortablePath(p)); + // @ts-expect-error - reason TBS + // + // We need a way to tell TS that the values returned by the `read` + // methods are compatible with `Dir`, especially the `name` field. + // + // We also can't use `Object.assign` to set the because the `path` + // field to a Filename, because the property isn't writable, so + // we need to use defineProperty instead. + // + const dirWithFixedPath = dir; + Object.defineProperty(dirWithFixedPath, `path`, { + value: p, + configurable: true, + writable: true, + }); + return dirWithFixedPath; + } + async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { + return await new Promise((resolve, reject) => { + this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { + if (error) { + reject(error); + } + else { + resolve(bytesRead); + } + }); + }); + } + readSync(fd, buffer, offset, length, position) { + return this.realFs.readSync(fd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + return await new Promise((resolve, reject) => { + if (typeof buffer === `string`) { + return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); + } + else { + return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); + } + }); + } + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.realFs.writeSync(fd, buffer, offset); + } + else { + return this.realFs.writeSync(fd, buffer, offset, length, position); + } + } + async closePromise(fd) { + await new Promise((resolve, reject) => { + this.realFs.close(fd, this.makeCallback(resolve, reject)); + }); + } + closeSync(fd) { + this.realFs.closeSync(fd); + } + createReadStream(p, opts) { + const realPath = (p !== null ? path_1.npath.fromPortablePath(p) : p); + return this.realFs.createReadStream(realPath, opts); + } + createWriteStream(p, opts) { + const realPath = (p !== null ? path_1.npath.fromPortablePath(p) : p); + return this.realFs.createWriteStream(realPath, opts); + } + async realpathPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.realpath(path_1.npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then(path => { + return path_1.npath.toPortablePath(path); + }); + } + realpathSync(p) { + return path_1.npath.toPortablePath(this.realFs.realpathSync(path_1.npath.fromPortablePath(p), {})); + } + async existsPromise(p) { + return await new Promise(resolve => { + this.realFs.exists(path_1.npath.fromPortablePath(p), resolve); + }); + } + accessSync(p, mode) { + return this.realFs.accessSync(path_1.npath.fromPortablePath(p), mode); + } + async accessPromise(p, mode) { + return await new Promise((resolve, reject) => { + this.realFs.access(path_1.npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); + }); + } + existsSync(p) { + return this.realFs.existsSync(path_1.npath.fromPortablePath(p)); + } + async statPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.stat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.stat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + statSync(p, opts) { + if (opts) { + return this.realFs.statSync(path_1.npath.fromPortablePath(p), opts); + } + else { + return this.realFs.statSync(path_1.npath.fromPortablePath(p)); + } + } + async fstatPromise(fd, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.fstat(fd, this.makeCallback(resolve, reject)); + } + }); + } + fstatSync(fd, opts) { + if (opts) { + return this.realFs.fstatSync(fd, opts); + } + else { + return this.realFs.fstatSync(fd); + } + } + async lstatPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.lstat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.lstat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + lstatSync(p, opts) { + if (opts) { + return this.realFs.lstatSync(path_1.npath.fromPortablePath(p), opts); + } + else { + return this.realFs.lstatSync(path_1.npath.fromPortablePath(p)); + } + } + async fchmodPromise(fd, mask) { + return await new Promise((resolve, reject) => { + this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); + }); + } + fchmodSync(fd, mask) { + return this.realFs.fchmodSync(fd, mask); + } + async chmodPromise(p, mask) { + return await new Promise((resolve, reject) => { + this.realFs.chmod(path_1.npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + }); + } + chmodSync(p, mask) { + return this.realFs.chmodSync(path_1.npath.fromPortablePath(p), mask); + } + async fchownPromise(fd, uid, gid) { + return await new Promise((resolve, reject) => { + this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); + }); + } + fchownSync(fd, uid, gid) { + return this.realFs.fchownSync(fd, uid, gid); + } + async chownPromise(p, uid, gid) { + return await new Promise((resolve, reject) => { + this.realFs.chown(path_1.npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); + }); + } + chownSync(p, uid, gid) { + return this.realFs.chownSync(path_1.npath.fromPortablePath(p), uid, gid); + } + async renamePromise(oldP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.rename(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + renameSync(oldP, newP) { + return this.realFs.renameSync(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP)); + } + async copyFilePromise(sourceP, destP, flags = 0) { + return await new Promise((resolve, reject) => { + this.realFs.copyFile(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + }); + } + copyFileSync(sourceP, destP, flags = 0) { + return this.realFs.copyFileSync(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags); + } + async appendFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + appendFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFileSync(fsNativePath, content, opts); + } + else { + this.realFs.appendFileSync(fsNativePath, content); + } + } + async writeFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + writeFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFileSync(fsNativePath, content, opts); + } + else { + this.realFs.writeFileSync(fsNativePath, content); + } + } + async unlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.unlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); + } + unlinkSync(p) { + return this.realFs.unlinkSync(path_1.npath.fromPortablePath(p)); + } + async utimesPromise(p, atime, mtime) { + return await new Promise((resolve, reject) => { + this.realFs.utimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + utimesSync(p, atime, mtime) { + this.realFs.utimesSync(path_1.npath.fromPortablePath(p), atime, mtime); + } + async lutimesPromise(p, atime, mtime) { + return await new Promise((resolve, reject) => { + this.realFs.lutimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + lutimesSync(p, atime, mtime) { + this.realFs.lutimesSync(path_1.npath.fromPortablePath(p), atime, mtime); + } + async mkdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + this.realFs.mkdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + }); + } + mkdirSync(p, opts) { + return this.realFs.mkdirSync(path_1.npath.fromPortablePath(p), opts); + } + async rmdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + // TODO: always pass opts when min node version is 12.10+ + if (opts) { + this.realFs.rmdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.rmdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + rmdirSync(p, opts) { + return this.realFs.rmdirSync(path_1.npath.fromPortablePath(p), opts); + } + async rmPromise(p, opts) { + return await new Promise((resolve, reject) => { + // TODO: always pass opts when min node version is 12.10+ + if (opts) { + this.realFs.rm(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + else { + this.realFs.rm(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + rmSync(p, opts) { + return this.realFs.rmSync(path_1.npath.fromPortablePath(p), opts); + } + async linkPromise(existingP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.link(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + linkSync(existingP, newP) { + return this.realFs.linkSync(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP)); + } + async symlinkPromise(target, p, type) { + return await new Promise((resolve, reject) => { + this.realFs.symlink(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); + }); + } + symlinkSync(target, p, type) { + return this.realFs.symlinkSync(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type); + } + async readFilePromise(p, encoding) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); + }); + } + readFileSync(p, encoding) { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + return this.realFs.readFileSync(fsNativePath, encoding); + } + async readdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + if (opts.recursive && process.platform === `win32`) { + if (opts.withFileTypes) { + this.realFs.readdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(results => resolve(results.map(direntToPortable)), reject)); + } + else { + this.realFs.readdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(results => resolve(results.map(path_1.npath.toPortablePath)), reject)); + } + } + else { + this.realFs.readdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + } + else { + this.realFs.readdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + readdirSync(p, opts) { + if (opts) { + if (opts.recursive && process.platform === `win32`) { + if (opts.withFileTypes) { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts).map(direntToPortable); + } + else { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts).map(path_1.npath.toPortablePath); + } + } + else { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts); + } + } + else { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p)); + } + } + async readlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.readlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then(path => { + return path_1.npath.toPortablePath(path); + }); + } + readlinkSync(p) { + return path_1.npath.toPortablePath(this.realFs.readlinkSync(path_1.npath.fromPortablePath(p))); + } + async truncatePromise(p, len) { + return await new Promise((resolve, reject) => { + this.realFs.truncate(path_1.npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); + }); + } + truncateSync(p, len) { + return this.realFs.truncateSync(path_1.npath.fromPortablePath(p), len); + } + async ftruncatePromise(fd, len) { + return await new Promise((resolve, reject) => { + this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); + }); + } + ftruncateSync(fd, len) { + return this.realFs.ftruncateSync(fd, len); + } + watch(p, a, b) { + return this.realFs.watch(path_1.npath.fromPortablePath(p), + // @ts-expect-error - reason TBS + a, b); + } + watchFile(p, a, b) { + return this.realFs.watchFile(path_1.npath.fromPortablePath(p), + // @ts-expect-error - reason TBS + a, b); + } + unwatchFile(p, cb) { + return this.realFs.unwatchFile(path_1.npath.fromPortablePath(p), cb); + } + makeCallback(resolve, reject) { + return (err, result) => { + if (err) { + reject(err); + } + else { + resolve(result); + } + }; + } + } + NodeFS$1.NodeFS = NodeFS; + return NodeFS$1; +} + +var hasRequiredCwdFS; + +function requireCwdFS () { + if (hasRequiredCwdFS) return CwdFS; + hasRequiredCwdFS = 1; + Object.defineProperty(CwdFS, "__esModule", { value: true }); + CwdFS.CwdFS = void 0; + const NodeFS_1 = requireNodeFS(); + const ProxiedFS_1 = requireProxiedFS(); + const path_1 = requirePath(); + let CwdFS$1 = class CwdFS extends ProxiedFS_1.ProxiedFS { + constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { + super(path_1.ppath); + this.target = this.pathUtils.normalize(target); + this.baseFs = baseFs; + } + getRealPath() { + return this.pathUtils.resolve(this.baseFs.getRealPath(), this.target); + } + resolve(p) { + if (this.pathUtils.isAbsolute(p)) { + return path_1.ppath.normalize(p); + } + else { + return this.baseFs.resolve(path_1.ppath.join(this.target, p)); + } + } + mapFromBase(path) { + return path; + } + mapToBase(path) { + if (this.pathUtils.isAbsolute(path)) { + return path; + } + else { + return this.pathUtils.join(this.target, path); + } + } + }; + CwdFS.CwdFS = CwdFS$1; + return CwdFS; +} + +var JailFS = {}; + +var hasRequiredJailFS; + +function requireJailFS () { + if (hasRequiredJailFS) return JailFS; + hasRequiredJailFS = 1; + Object.defineProperty(JailFS, "__esModule", { value: true }); + JailFS.JailFS = void 0; + const NodeFS_1 = requireNodeFS(); + const ProxiedFS_1 = requireProxiedFS(); + const path_1 = requirePath(); + const JAIL_ROOT = path_1.PortablePath.root; + let JailFS$1 = class JailFS extends ProxiedFS_1.ProxiedFS { + constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { + super(path_1.ppath); + this.target = this.pathUtils.resolve(path_1.PortablePath.root, target); + this.baseFs = baseFs; + } + getRealPath() { + return this.pathUtils.resolve(this.baseFs.getRealPath(), this.pathUtils.relative(path_1.PortablePath.root, this.target)); + } + getTarget() { + return this.target; + } + getBaseFs() { + return this.baseFs; + } + mapToBase(p) { + const normalized = this.pathUtils.normalize(p); + if (this.pathUtils.isAbsolute(p)) + return this.pathUtils.resolve(this.target, this.pathUtils.relative(JAIL_ROOT, p)); + if (normalized.match(/^\.\.\/?/)) + throw new Error(`Resolving this path (${p}) would escape the jail`); + return this.pathUtils.resolve(this.target, p); + } + mapFromBase(p) { + return this.pathUtils.resolve(JAIL_ROOT, this.pathUtils.relative(this.target, p)); + } + }; + JailFS.JailFS = JailFS$1; + return JailFS; +} + +var LazyFS = {}; + +var hasRequiredLazyFS; + +function requireLazyFS () { + if (hasRequiredLazyFS) return LazyFS; + hasRequiredLazyFS = 1; + Object.defineProperty(LazyFS, "__esModule", { value: true }); + LazyFS.LazyFS = void 0; + const ProxiedFS_1 = requireProxiedFS(); + let LazyFS$1 = class LazyFS extends ProxiedFS_1.ProxiedFS { + constructor(factory, pathUtils) { + super(pathUtils); + this.instance = null; + this.factory = factory; + } + get baseFs() { + if (!this.instance) + this.instance = this.factory(); + return this.instance; + } + set baseFs(value) { + this.instance = value; + } + mapFromBase(p) { + return p; + } + mapToBase(p) { + return p; + } + }; + LazyFS.LazyFS = LazyFS$1; + return LazyFS; +} + +var MountFS = {}; + +var hasRequiredMountFS; + +function requireMountFS () { + if (hasRequiredMountFS) return MountFS; + hasRequiredMountFS = 1; + Object.defineProperty(MountFS, "__esModule", { value: true }); + MountFS.MountFS = void 0; + const tslib_1 = require$$0; + const fs_1 = fs; + const FakeFS_1 = requireFakeFS(); + const NodeFS_1 = requireNodeFS(); + const watchFile_1 = requireWatchFile(); + const errors = tslib_1.__importStar(requireErrors()); + const path_1 = requirePath(); + // Only file descriptors prefixed by those values will be forwarded to the MountFS + // instances. Note that the highest MOUNT_MAGIC bit MUST NOT be set, otherwise the + // resulting fd becomes a negative integer, which isn't supposed to happen per + // the unix rules (caused problems w/ Go). + // + // Those values must be synced with packages/yarnpkg-pnp/sources/esm-loader/fspatch.ts + // + const MOUNT_MASK = 0xff000000; + let MountFS$1 = class MountFS extends FakeFS_1.BasePortableFakeFS { + constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, magicByte = 0x2a, maxOpenFiles = Infinity, useCache = true, maxAge = 5000, typeCheck = fs_1.constants.S_IFREG, getMountPoint, factoryPromise, factorySync }) { + if (Math.floor(magicByte) !== magicByte || !(magicByte > 1 && magicByte <= 127)) + throw new Error(`The magic byte must be set to a round value between 1 and 127 included`); + super(); + this.fdMap = new Map(); + this.nextFd = 3; + this.isMount = new Set(); + this.notMount = new Set(); + this.realPaths = new Map(); + this.limitOpenFilesTimeout = null; + this.baseFs = baseFs; + this.mountInstances = useCache ? new Map() : null; + this.factoryPromise = factoryPromise; + this.factorySync = factorySync; + this.filter = filter; + this.getMountPoint = getMountPoint; + this.magic = magicByte << 24; + this.maxAge = maxAge; + this.maxOpenFiles = maxOpenFiles; + this.typeCheck = typeCheck; + } + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + getRealPath() { + return this.baseFs.getRealPath(); + } + saveAndClose() { + (0, watchFile_1.unwatchAllFiles)(this); + if (this.mountInstances) { + for (const [path, { childFs }] of this.mountInstances.entries()) { + childFs.saveAndClose?.(); + this.mountInstances.delete(path); + } + } + } + discardAndClose() { + (0, watchFile_1.unwatchAllFiles)(this); + if (this.mountInstances) { + for (const [path, { childFs }] of this.mountInstances.entries()) { + childFs.discardAndClose?.(); + this.mountInstances.delete(path); + } + } + } + resolve(p) { + return this.baseFs.resolve(p); + } + remapFd(mountFs, fd) { + const remappedFd = this.nextFd++ | this.magic; + this.fdMap.set(remappedFd, [mountFs, fd]); + return remappedFd; + } + async openPromise(p, flags, mode) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.openPromise(p, flags, mode); + }, async (mountFs, { subPath }) => { + return this.remapFd(mountFs, await mountFs.openPromise(subPath, flags, mode)); + }); + } + openSync(p, flags, mode) { + return this.makeCallSync(p, () => { + return this.baseFs.openSync(p, flags, mode); + }, (mountFs, { subPath }) => { + return this.remapFd(mountFs, mountFs.openSync(subPath, flags, mode)); + }); + } + async opendirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.opendirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.opendirPromise(subPath, opts); + }, { + requireSubpath: false, + }); + } + opendirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.opendirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.opendirSync(subPath, opts); + }, { + requireSubpath: false, + }); + } + async readPromise(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) + return await this.baseFs.readPromise(fd, buffer, offset, length, position); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`read`); + const [mountFs, realFd] = entry; + return await mountFs.readPromise(realFd, buffer, offset, length, position); + } + readSync(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.readSync(fd, buffer, offset, length, position); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`readSync`); + const [mountFs, realFd] = entry; + return mountFs.readSync(realFd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) { + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } + else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } + } + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`write`); + const [mountFs, realFd] = entry; + if (typeof buffer === `string`) { + return await mountFs.writePromise(realFd, buffer, offset); + } + else { + return await mountFs.writePromise(realFd, buffer, offset, length, position); + } + } + writeSync(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) { + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } + else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); + } + } + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`writeSync`); + const [mountFs, realFd] = entry; + if (typeof buffer === `string`) { + return mountFs.writeSync(realFd, buffer, offset); + } + else { + return mountFs.writeSync(realFd, buffer, offset, length, position); + } + } + async closePromise(fd) { + if ((fd & MOUNT_MASK) !== this.magic) + return await this.baseFs.closePromise(fd); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`close`); + this.fdMap.delete(fd); + const [mountFs, realFd] = entry; + return await mountFs.closePromise(realFd); + } + closeSync(fd) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.closeSync(fd); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`closeSync`); + this.fdMap.delete(fd); + const [mountFs, realFd] = entry; + return mountFs.closeSync(realFd); + } + createReadStream(p, opts) { + if (p === null) + return this.baseFs.createReadStream(p, opts); + return this.makeCallSync(p, () => { + return this.baseFs.createReadStream(p, opts); + }, (mountFs, { archivePath, subPath }) => { + const stream = mountFs.createReadStream(subPath, opts); + // This is a very hacky workaround. `MountOpenFS` shouldn't have to work with `NativePath`s. + // Ref: https://github.com/yarnpkg/berry/pull/3774 + // TODO: think of a better solution + stream.path = path_1.npath.fromPortablePath(this.pathUtils.join(archivePath, subPath)); + return stream; + }); + } + createWriteStream(p, opts) { + if (p === null) + return this.baseFs.createWriteStream(p, opts); + return this.makeCallSync(p, () => { + return this.baseFs.createWriteStream(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.createWriteStream(subPath, opts); + }); + } + async realpathPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.realpathPromise(p); + }, async (mountFs, { archivePath, subPath }) => { + let realArchivePath = this.realPaths.get(archivePath); + if (typeof realArchivePath === `undefined`) { + realArchivePath = await this.baseFs.realpathPromise(archivePath); + this.realPaths.set(archivePath, realArchivePath); + } + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, await mountFs.realpathPromise(subPath))); + }); + } + realpathSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.realpathSync(p); + }, (mountFs, { archivePath, subPath }) => { + let realArchivePath = this.realPaths.get(archivePath); + if (typeof realArchivePath === `undefined`) { + realArchivePath = this.baseFs.realpathSync(archivePath); + this.realPaths.set(archivePath, realArchivePath); + } + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, mountFs.realpathSync(subPath))); + }); + } + async existsPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.existsPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.existsPromise(subPath); + }); + } + existsSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.existsSync(p); + }, (mountFs, { subPath }) => { + return mountFs.existsSync(subPath); + }); + } + async accessPromise(p, mode) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.accessPromise(p, mode); + }, async (mountFs, { subPath }) => { + return await mountFs.accessPromise(subPath, mode); + }); + } + accessSync(p, mode) { + return this.makeCallSync(p, () => { + return this.baseFs.accessSync(p, mode); + }, (mountFs, { subPath }) => { + return mountFs.accessSync(subPath, mode); + }); + } + async statPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.statPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.statPromise(subPath, opts); + }); + } + statSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.statSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.statSync(subPath, opts); + }); + } + async fstatPromise(fd, opts) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fstatPromise(fd, opts); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fstat`); + const [mountFs, realFd] = entry; + return mountFs.fstatPromise(realFd, opts); + } + fstatSync(fd, opts) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fstatSync(fd, opts); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fstatSync`); + const [mountFs, realFd] = entry; + return mountFs.fstatSync(realFd, opts); + } + async lstatPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.lstatPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.lstatPromise(subPath, opts); + }); + } + lstatSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.lstatSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.lstatSync(subPath, opts); + }); + } + async fchmodPromise(fd, mask) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchmodPromise(fd, mask); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchmod`); + const [mountFs, realFd] = entry; + return mountFs.fchmodPromise(realFd, mask); + } + fchmodSync(fd, mask) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchmodSync(fd, mask); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchmodSync`); + const [mountFs, realFd] = entry; + return mountFs.fchmodSync(realFd, mask); + } + async chmodPromise(p, mask) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.chmodPromise(p, mask); + }, async (mountFs, { subPath }) => { + return await mountFs.chmodPromise(subPath, mask); + }); + } + chmodSync(p, mask) { + return this.makeCallSync(p, () => { + return this.baseFs.chmodSync(p, mask); + }, (mountFs, { subPath }) => { + return mountFs.chmodSync(subPath, mask); + }); + } + async fchownPromise(fd, uid, gid) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchownPromise(fd, uid, gid); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchown`); + const [zipFs, realFd] = entry; + return zipFs.fchownPromise(realFd, uid, gid); + } + fchownSync(fd, uid, gid) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchownSync(fd, uid, gid); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchownSync`); + const [zipFs, realFd] = entry; + return zipFs.fchownSync(realFd, uid, gid); + } + async chownPromise(p, uid, gid) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.chownPromise(p, uid, gid); + }, async (mountFs, { subPath }) => { + return await mountFs.chownPromise(subPath, uid, gid); + }); + } + chownSync(p, uid, gid) { + return this.makeCallSync(p, () => { + return this.baseFs.chownSync(p, uid, gid); + }, (mountFs, { subPath }) => { + return mountFs.chownSync(subPath, uid, gid); + }); + } + async renamePromise(oldP, newP) { + return await this.makeCallPromise(oldP, async () => { + return await this.makeCallPromise(newP, async () => { + return await this.baseFs.renamePromise(oldP, newP); + }, async () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }); + }, async (mountFsO, { subPath: subPathO }) => { + return await this.makeCallPromise(newP, async () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }, async (mountFsN, { subPath: subPathN }) => { + if (mountFsO !== mountFsN) { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + } + else { + return await mountFsO.renamePromise(subPathO, subPathN); + } + }); + }); + } + renameSync(oldP, newP) { + return this.makeCallSync(oldP, () => { + return this.makeCallSync(newP, () => { + return this.baseFs.renameSync(oldP, newP); + }, () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }); + }, (mountFsO, { subPath: subPathO }) => { + return this.makeCallSync(newP, () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }, (mountFsN, { subPath: subPathN }) => { + if (mountFsO !== mountFsN) { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + } + else { + return mountFsO.renameSync(subPathO, subPathN); + } + }); + }); + } + async copyFilePromise(sourceP, destP, flags = 0) { + const fallback = async (sourceFs, sourceP, destFs, destP) => { + if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) + throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` }); + if ((flags & fs_1.constants.COPYFILE_EXCL) && await this.existsPromise(sourceP)) + throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` }); + let content; + try { + content = await sourceFs.readFilePromise(sourceP); + } + catch { + throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` }); + } + await destFs.writeFilePromise(destP, content); + }; + return await this.makeCallPromise(sourceP, async () => { + return await this.makeCallPromise(destP, async () => { + return await this.baseFs.copyFilePromise(sourceP, destP, flags); + }, async (mountFsD, { subPath: subPathD }) => { + return await fallback(this.baseFs, sourceP, mountFsD, subPathD); + }); + }, async (mountFsS, { subPath: subPathS }) => { + return await this.makeCallPromise(destP, async () => { + return await fallback(mountFsS, subPathS, this.baseFs, destP); + }, async (mountFsD, { subPath: subPathD }) => { + if (mountFsS !== mountFsD) { + return await fallback(mountFsS, subPathS, mountFsD, subPathD); + } + else { + return await mountFsS.copyFilePromise(subPathS, subPathD, flags); + } + }); + }); + } + copyFileSync(sourceP, destP, flags = 0) { + const fallback = (sourceFs, sourceP, destFs, destP) => { + if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) + throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` }); + if ((flags & fs_1.constants.COPYFILE_EXCL) && this.existsSync(sourceP)) + throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` }); + let content; + try { + content = sourceFs.readFileSync(sourceP); + } + catch { + throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` }); + } + destFs.writeFileSync(destP, content); + }; + return this.makeCallSync(sourceP, () => { + return this.makeCallSync(destP, () => { + return this.baseFs.copyFileSync(sourceP, destP, flags); + }, (mountFsD, { subPath: subPathD }) => { + return fallback(this.baseFs, sourceP, mountFsD, subPathD); + }); + }, (mountFsS, { subPath: subPathS }) => { + return this.makeCallSync(destP, () => { + return fallback(mountFsS, subPathS, this.baseFs, destP); + }, (mountFsD, { subPath: subPathD }) => { + if (mountFsS !== mountFsD) { + return fallback(mountFsS, subPathS, mountFsD, subPathD); + } + else { + return mountFsS.copyFileSync(subPathS, subPathD, flags); + } + }); + }); + } + async appendFilePromise(p, content, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.appendFilePromise(p, content, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.appendFilePromise(subPath, content, opts); + }); + } + appendFileSync(p, content, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.appendFileSync(p, content, opts); + }, (mountFs, { subPath }) => { + return mountFs.appendFileSync(subPath, content, opts); + }); + } + async writeFilePromise(p, content, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.writeFilePromise(p, content, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.writeFilePromise(subPath, content, opts); + }); + } + writeFileSync(p, content, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.writeFileSync(p, content, opts); + }, (mountFs, { subPath }) => { + return mountFs.writeFileSync(subPath, content, opts); + }); + } + async unlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.unlinkPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.unlinkPromise(subPath); + }); + } + unlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.unlinkSync(p); + }, (mountFs, { subPath }) => { + return mountFs.unlinkSync(subPath); + }); + } + async utimesPromise(p, atime, mtime) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.utimesPromise(p, atime, mtime); + }, async (mountFs, { subPath }) => { + return await mountFs.utimesPromise(subPath, atime, mtime); + }); + } + utimesSync(p, atime, mtime) { + return this.makeCallSync(p, () => { + return this.baseFs.utimesSync(p, atime, mtime); + }, (mountFs, { subPath }) => { + return mountFs.utimesSync(subPath, atime, mtime); + }); + } + async lutimesPromise(p, atime, mtime) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.lutimesPromise(p, atime, mtime); + }, async (mountFs, { subPath }) => { + return await mountFs.lutimesPromise(subPath, atime, mtime); + }); + } + lutimesSync(p, atime, mtime) { + return this.makeCallSync(p, () => { + return this.baseFs.lutimesSync(p, atime, mtime); + }, (mountFs, { subPath }) => { + return mountFs.lutimesSync(subPath, atime, mtime); + }); + } + async mkdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.mkdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.mkdirPromise(subPath, opts); + }); + } + mkdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.mkdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.mkdirSync(subPath, opts); + }); + } + async rmdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.rmdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.rmdirPromise(subPath, opts); + }); + } + rmdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.rmdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.rmdirSync(subPath, opts); + }); + } + async rmPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.rmPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.rmPromise(subPath, opts); + }); + } + rmSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.rmSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.rmSync(subPath, opts); + }); + } + async linkPromise(existingP, newP) { + return await this.makeCallPromise(newP, async () => { + return await this.baseFs.linkPromise(existingP, newP); + }, async (mountFs, { subPath }) => { + return await mountFs.linkPromise(existingP, subPath); + }); + } + linkSync(existingP, newP) { + return this.makeCallSync(newP, () => { + return this.baseFs.linkSync(existingP, newP); + }, (mountFs, { subPath }) => { + return mountFs.linkSync(existingP, subPath); + }); + } + async symlinkPromise(target, p, type) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.symlinkPromise(target, p, type); + }, async (mountFs, { subPath }) => { + return await mountFs.symlinkPromise(target, subPath); + }); + } + symlinkSync(target, p, type) { + return this.makeCallSync(p, () => { + return this.baseFs.symlinkSync(target, p, type); + }, (mountFs, { subPath }) => { + return mountFs.symlinkSync(target, subPath); + }); + } + async readFilePromise(p, encoding) { + return this.makeCallPromise(p, async () => { + return await this.baseFs.readFilePromise(p, encoding); + }, async (mountFs, { subPath }) => { + return await mountFs.readFilePromise(subPath, encoding); + }); + } + readFileSync(p, encoding) { + return this.makeCallSync(p, () => { + return this.baseFs.readFileSync(p, encoding); + }, (mountFs, { subPath }) => { + return mountFs.readFileSync(subPath, encoding); + }); + } + async readdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.readdirPromise(subPath, opts); + }, { + requireSubpath: false, + }); + } + readdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.readdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.readdirSync(subPath, opts); + }, { + requireSubpath: false, + }); + } + async readlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readlinkPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.readlinkPromise(subPath); + }); + } + readlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.readlinkSync(p); + }, (mountFs, { subPath }) => { + return mountFs.readlinkSync(subPath); + }); + } + async truncatePromise(p, len) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.truncatePromise(p, len); + }, async (mountFs, { subPath }) => { + return await mountFs.truncatePromise(subPath, len); + }); + } + truncateSync(p, len) { + return this.makeCallSync(p, () => { + return this.baseFs.truncateSync(p, len); + }, (mountFs, { subPath }) => { + return mountFs.truncateSync(subPath, len); + }); + } + async ftruncatePromise(fd, len) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.ftruncatePromise(fd, len); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`ftruncate`); + const [mountFs, realFd] = entry; + return mountFs.ftruncatePromise(realFd, len); + } + ftruncateSync(fd, len) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.ftruncateSync(fd, len); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`ftruncateSync`); + const [mountFs, realFd] = entry; + return mountFs.ftruncateSync(realFd, len); + } + watch(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watch(p, + // @ts-expect-error - reason TBS + a, b); + }, (mountFs, { subPath }) => { + return mountFs.watch(subPath, + // @ts-expect-error - reason TBS + a, b); + }); + } + watchFile(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watchFile(p, + // @ts-expect-error - reason TBS + a, b); + }, () => { + return (0, watchFile_1.watchFile)(this, p, a, b); + }); + } + unwatchFile(p, cb) { + return this.makeCallSync(p, () => { + return this.baseFs.unwatchFile(p, cb); + }, () => { + return (0, watchFile_1.unwatchFile)(this, p, cb); + }); + } + async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) { + if (typeof p !== `string`) + return await discard(); + const normalizedP = this.resolve(p); + const mountInfo = this.findMount(normalizedP); + if (!mountInfo) + return await discard(); + if (requireSubpath && mountInfo.subPath === `/`) + return await discard(); + return await this.getMountPromise(mountInfo.archivePath, async (mountFs) => await accept(mountFs, mountInfo)); + } + makeCallSync(p, discard, accept, { requireSubpath = true } = {}) { + if (typeof p !== `string`) + return discard(); + const normalizedP = this.resolve(p); + const mountInfo = this.findMount(normalizedP); + if (!mountInfo) + return discard(); + if (requireSubpath && mountInfo.subPath === `/`) + return discard(); + return this.getMountSync(mountInfo.archivePath, mountFs => accept(mountFs, mountInfo)); + } + findMount(p) { + if (this.filter && !this.filter.test(p)) + return null; + let filePath = ``; + while (true) { + const pathPartWithArchive = p.substring(filePath.length); + const mountPoint = this.getMountPoint(pathPartWithArchive, filePath); + if (!mountPoint) + return null; + filePath = this.pathUtils.join(filePath, mountPoint); + if (!this.isMount.has(filePath)) { + if (this.notMount.has(filePath)) + continue; + try { + if (this.typeCheck !== null && (this.baseFs.statSync(filePath).mode & fs_1.constants.S_IFMT) !== this.typeCheck) { + this.notMount.add(filePath); + continue; + } + } + catch { + return null; + } + this.isMount.add(filePath); + } + return { + archivePath: filePath, + subPath: this.pathUtils.join(path_1.PortablePath.root, p.substring(filePath.length)), + }; + } + } + limitOpenFiles(max) { + if (this.mountInstances === null) + return; + const now = Date.now(); + let nextExpiresAt = now + this.maxAge; + let closeCount = max === null ? 0 : this.mountInstances.size - max; + for (const [path, { childFs, expiresAt, refCount }] of this.mountInstances.entries()) { + if (refCount !== 0 || childFs.hasOpenFileHandles?.()) { + continue; + } + else if (now >= expiresAt) { + childFs.saveAndClose?.(); + this.mountInstances.delete(path); + closeCount -= 1; + continue; + } + else if (max === null || closeCount <= 0) { + nextExpiresAt = expiresAt; + break; + } + childFs.saveAndClose?.(); + this.mountInstances.delete(path); + closeCount -= 1; + } + if (this.limitOpenFilesTimeout === null && ((max === null && this.mountInstances.size > 0) || max !== null) && isFinite(nextExpiresAt)) { + this.limitOpenFilesTimeout = setTimeout(() => { + this.limitOpenFilesTimeout = null; + this.limitOpenFiles(null); + }, nextExpiresAt - now).unref(); + } + } + async getMountPromise(p, accept) { + if (this.mountInstances) { + let cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + const createFsInstance = await this.factoryPromise(this.baseFs, p); + // We need to recheck because concurrent getMountPromise calls may + // have instantiated the mount archive while we were waiting + cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + cachedMountFs = { + childFs: createFsInstance(), + expiresAt: 0, + refCount: 0, + }; + } + } + // Removing then re-adding the field allows us to easily implement + // a basic LRU garbage collection strategy + this.mountInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.mountInstances.set(p, cachedMountFs); + cachedMountFs.expiresAt = Date.now() + this.maxAge; + cachedMountFs.refCount += 1; + try { + return await accept(cachedMountFs.childFs); + } + finally { + cachedMountFs.refCount -= 1; + } + } + else { + const mountFs = (await this.factoryPromise(this.baseFs, p))(); + try { + return await accept(mountFs); + } + finally { + mountFs.saveAndClose?.(); + } + } + } + getMountSync(p, accept) { + if (this.mountInstances) { + let cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + cachedMountFs = { + childFs: this.factorySync(this.baseFs, p), + expiresAt: 0, + refCount: 0, + }; + } + // Removing then re-adding the field allows us to easily implement + // a basic LRU garbage collection strategy + this.mountInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.mountInstances.set(p, cachedMountFs); + cachedMountFs.expiresAt = Date.now() + this.maxAge; + return accept(cachedMountFs.childFs); + } + else { + const childFs = this.factorySync(this.baseFs, p); + try { + return accept(childFs); + } + finally { + childFs.saveAndClose?.(); + } + } + } + }; + MountFS.MountFS = MountFS$1; + return MountFS; +} + +var NoFS = {}; + +var hasRequiredNoFS; + +function requireNoFS () { + if (hasRequiredNoFS) return NoFS; + hasRequiredNoFS = 1; + Object.defineProperty(NoFS, "__esModule", { value: true }); + NoFS.NoFS = void 0; + const FakeFS_1 = requireFakeFS(); + const path_1 = requirePath(); + const makeError = () => Object.assign(new Error(`ENOSYS: unsupported filesystem access`), { code: `ENOSYS` }); + let NoFS$1 = class NoFS extends FakeFS_1.FakeFS { + constructor() { + super(path_1.ppath); + } + getExtractHint() { + throw makeError(); + } + getRealPath() { + throw makeError(); + } + resolve() { + throw makeError(); + } + async openPromise() { + throw makeError(); + } + openSync() { + throw makeError(); + } + async opendirPromise() { + throw makeError(); + } + opendirSync() { + throw makeError(); + } + async readPromise() { + throw makeError(); + } + readSync() { + throw makeError(); + } + async writePromise() { + throw makeError(); + } + writeSync() { + throw makeError(); + } + async closePromise() { + throw makeError(); + } + closeSync() { + throw makeError(); + } + createWriteStream() { + throw makeError(); + } + createReadStream() { + throw makeError(); + } + async realpathPromise() { + throw makeError(); + } + realpathSync() { + throw makeError(); + } + async readdirPromise() { + throw makeError(); + } + readdirSync() { + throw makeError(); + } + async existsPromise(p) { + throw makeError(); + } + existsSync(p) { + throw makeError(); + } + async accessPromise() { + throw makeError(); + } + accessSync() { + throw makeError(); + } + async statPromise() { + throw makeError(); + } + statSync() { + throw makeError(); + } + async fstatPromise(fd) { + throw makeError(); + } + fstatSync(fd) { + throw makeError(); + } + async lstatPromise(p) { + throw makeError(); + } + lstatSync(p) { + throw makeError(); + } + async fchmodPromise() { + throw makeError(); + } + fchmodSync() { + throw makeError(); + } + async chmodPromise() { + throw makeError(); + } + chmodSync() { + throw makeError(); + } + async fchownPromise() { + throw makeError(); + } + fchownSync() { + throw makeError(); + } + async chownPromise() { + throw makeError(); + } + chownSync() { + throw makeError(); + } + async mkdirPromise() { + throw makeError(); + } + mkdirSync() { + throw makeError(); + } + async rmdirPromise() { + throw makeError(); + } + rmdirSync() { + throw makeError(); + } + async rmPromise() { + throw makeError(); + } + rmSync() { + throw makeError(); + } + async linkPromise() { + throw makeError(); + } + linkSync() { + throw makeError(); + } + async symlinkPromise() { + throw makeError(); + } + symlinkSync() { + throw makeError(); + } + async renamePromise() { + throw makeError(); + } + renameSync() { + throw makeError(); + } + async copyFilePromise() { + throw makeError(); + } + copyFileSync() { + throw makeError(); + } + async appendFilePromise() { + throw makeError(); + } + appendFileSync() { + throw makeError(); + } + async writeFilePromise() { + throw makeError(); + } + writeFileSync() { + throw makeError(); + } + async unlinkPromise() { + throw makeError(); + } + unlinkSync() { + throw makeError(); + } + async utimesPromise() { + throw makeError(); + } + utimesSync() { + throw makeError(); + } + async lutimesPromise() { + throw makeError(); + } + lutimesSync() { + throw makeError(); + } + async readFilePromise() { + throw makeError(); + } + readFileSync() { + throw makeError(); + } + async readlinkPromise() { + throw makeError(); + } + readlinkSync() { + throw makeError(); + } + async truncatePromise() { + throw makeError(); + } + truncateSync() { + throw makeError(); + } + async ftruncatePromise(fd, len) { + throw makeError(); + } + ftruncateSync(fd, len) { + throw makeError(); + } + watch() { + throw makeError(); + } + watchFile() { + throw makeError(); + } + unwatchFile() { + throw makeError(); + } + }; + NoFS.NoFS = NoFS$1; + NoFS$1.instance = new NoFS$1(); + return NoFS; +} + +var PosixFS = {}; + +var hasRequiredPosixFS; + +function requirePosixFS () { + if (hasRequiredPosixFS) return PosixFS; + hasRequiredPosixFS = 1; + Object.defineProperty(PosixFS, "__esModule", { value: true }); + PosixFS.PosixFS = void 0; + const ProxiedFS_1 = requireProxiedFS(); + const path_1 = requirePath(); + let PosixFS$1 = class PosixFS extends ProxiedFS_1.ProxiedFS { + constructor(baseFs) { + super(path_1.npath); + this.baseFs = baseFs; + } + mapFromBase(path) { + return path_1.npath.fromPortablePath(path); + } + mapToBase(path) { + return path_1.npath.toPortablePath(path); + } + }; + PosixFS.PosixFS = PosixFS$1; + return PosixFS; +} + +var VirtualFS$1 = {}; + +var hasRequiredVirtualFS; + +function requireVirtualFS () { + if (hasRequiredVirtualFS) return VirtualFS$1; + hasRequiredVirtualFS = 1; + Object.defineProperty(VirtualFS$1, "__esModule", { value: true }); + VirtualFS$1.VirtualFS = void 0; + const NodeFS_1 = requireNodeFS(); + const ProxiedFS_1 = requireProxiedFS(); + const path_1 = requirePath(); + const NUMBER_REGEXP = /^[0-9]+$/; + // $0: full path + // $1: virtual folder + // $2: virtual segment + // $3: hash + // $4: depth + // $5: subpath + const VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; + const VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; + class VirtualFS extends ProxiedFS_1.ProxiedFS { + static makeVirtualPath(base, component, to) { + if (path_1.ppath.basename(base) !== `__virtual__`) + throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`); + if (!path_1.ppath.basename(component).match(VALID_COMPONENT)) + throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); + // Obtains the relative distance between the virtual path and its actual target + const target = path_1.ppath.relative(path_1.ppath.dirname(base), to); + const segments = target.split(`/`); + // Counts how many levels we need to go back to start applying the rest of the path + let depth = 0; + while (depth < segments.length && segments[depth] === `..`) + depth += 1; + const finalSegments = segments.slice(depth); + const fullVirtualPath = path_1.ppath.join(base, component, String(depth), ...finalSegments); + return fullVirtualPath; + } + static resolveVirtual(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match || (!match[3] && match[5])) + return p; + const target = path_1.ppath.dirname(match[1]); + if (!match[3] || !match[4]) + return target; + const isnum = NUMBER_REGEXP.test(match[4]); + if (!isnum) + return p; + const depth = Number(match[4]); + const backstep = `../`.repeat(depth); + const subpath = (match[5] || `.`); + return VirtualFS.resolveVirtual(path_1.ppath.join(target, backstep, subpath)); + } + constructor({ baseFs = new NodeFS_1.NodeFS() } = {}) { + super(path_1.ppath); + this.baseFs = baseFs; + } + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + getRealPath() { + return this.baseFs.getRealPath(); + } + realpathSync(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return this.baseFs.realpathSync(p); + if (!match[5]) + return p; + const realpath = this.baseFs.realpathSync(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + async realpathPromise(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return await this.baseFs.realpathPromise(p); + if (!match[5]) + return p; + const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + mapToBase(p) { + if (p === ``) + return p; + if (this.pathUtils.isAbsolute(p)) + return VirtualFS.resolveVirtual(p); + const resolvedRoot = VirtualFS.resolveVirtual(this.baseFs.resolve(path_1.PortablePath.dot)); + const resolvedP = VirtualFS.resolveVirtual(this.baseFs.resolve(p)); + return path_1.ppath.relative(resolvedRoot, resolvedP) || path_1.PortablePath.dot; + } + mapFromBase(p) { + return p; + } + } + VirtualFS$1.VirtualFS = VirtualFS; + return VirtualFS$1; +} + +var patchFs = {}; + +var NodePathFS = {}; + +var hasRequiredNodePathFS; + +function requireNodePathFS () { + if (hasRequiredNodePathFS) return NodePathFS; + hasRequiredNodePathFS = 1; + Object.defineProperty(NodePathFS, "__esModule", { value: true }); + NodePathFS.NodePathFS = void 0; + const tslib_1 = require$$0; + const buffer_1 = tslib_1.__importDefault(require$$1$3); + const url_1 = require$$2; + const util_1 = require$$1; + const ProxiedFS_1 = requireProxiedFS(); + const path_1 = requirePath(); + /** + * Adds support for file URLs and Buffers to the wrapped `baseFs`, but *not* inside the typings. + * + * Only exists for compatibility with Node's behavior. + * + * Automatically wraps all FS instances passed to `patchFs` & `extendFs`. + * + * Don't use it! + */ + let NodePathFS$1 = class NodePathFS extends ProxiedFS_1.ProxiedFS { + constructor(baseFs) { + super(path_1.npath); + this.baseFs = baseFs; + } + mapFromBase(path) { + return path; + } + mapToBase(path) { + if (typeof path === `string`) + return path; + if (path instanceof URL) + return (0, url_1.fileURLToPath)(path); + if (Buffer.isBuffer(path)) { + const str = path.toString(); + if (!isUtf8(path, str)) + throw new Error(`Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942`); + return str; + } + throw new Error(`Unsupported path type: ${(0, util_1.inspect)(path)}`); + } + }; + NodePathFS.NodePathFS = NodePathFS$1; + // TODO: remove the fallback when dropping support for Node.js < 18.14.0 + function isUtf8(buf, str) { + if (typeof buffer_1.default.isUtf8 !== `undefined`) + return buffer_1.default.isUtf8(buf); + return Buffer.byteLength(str) === buf.byteLength; + } + return NodePathFS; +} + +var FileHandle = {}; + +var hasRequiredFileHandle; + +function requireFileHandle () { + if (hasRequiredFileHandle) return FileHandle; + hasRequiredFileHandle = 1; + var _a, _b, _c, _d; + Object.defineProperty(FileHandle, "__esModule", { value: true }); + FileHandle.FileHandle = void 0; + const readline_1 = require$$0$2; + const kBaseFs = Symbol(`kBaseFs`); + const kFd = Symbol(`kFd`); + const kClosePromise = Symbol(`kClosePromise`); + const kCloseResolve = Symbol(`kCloseResolve`); + const kCloseReject = Symbol(`kCloseReject`); + const kRefs = Symbol(`kRefs`); + const kRef = Symbol(`kRef`); + const kUnref = Symbol(`kUnref`); + let FileHandle$1 = class FileHandle { + constructor(fd, baseFs) { + this[_a] = 1; + this[_b] = undefined; + this[_c] = undefined; + this[_d] = undefined; + this[kBaseFs] = baseFs; + this[kFd] = fd; + } + get fd() { + return this[kFd]; + } + async appendFile(data, options) { + try { + this[kRef](this.appendFile); + const encoding = (typeof options === `string` ? options : options?.encoding) ?? undefined; + return await this[kBaseFs].appendFilePromise(this.fd, data, encoding ? { encoding } : undefined); + } + finally { + this[kUnref](); + } + } + async chown(uid, gid) { + try { + this[kRef](this.chown); + return await this[kBaseFs].fchownPromise(this.fd, uid, gid); + } + finally { + this[kUnref](); + } + } + async chmod(mode) { + try { + this[kRef](this.chmod); + return await this[kBaseFs].fchmodPromise(this.fd, mode); + } + finally { + this[kUnref](); + } + } + createReadStream(options) { + return this[kBaseFs].createReadStream(null, { ...options, fd: this.fd }); + } + createWriteStream(options) { + return this[kBaseFs].createWriteStream(null, { ...options, fd: this.fd }); + } + // FIXME: Missing FakeFS version + datasync() { + throw new Error(`Method not implemented.`); + } + // FIXME: Missing FakeFS version + sync() { + throw new Error(`Method not implemented.`); + } + async read(bufferOrOptions, offsetOrOptions, length, position) { + try { + this[kRef](this.read); + let buffer; + let offset; + if (!ArrayBuffer.isView(bufferOrOptions)) { + // read([options]) + // TypeScript isn't able to infer that the coalescing happens only in the no-generic case + buffer = bufferOrOptions?.buffer ?? Buffer.alloc(16384); + offset = bufferOrOptions?.offset ?? 0; + length = bufferOrOptions?.length ?? buffer.byteLength - offset; + position = bufferOrOptions?.position ?? null; + } + else if (typeof offsetOrOptions === `object` && offsetOrOptions !== null) { + // read(buffer[, options]) + buffer = bufferOrOptions; + offset = offsetOrOptions?.offset ?? 0; + length = offsetOrOptions?.length ?? buffer.byteLength - offset; + position = offsetOrOptions?.position ?? null; + } + else { + // read(buffer, offset[, length[, position]]) + buffer = bufferOrOptions; + offset = offsetOrOptions ?? 0; + length ??= 0; + } + if (length === 0) { + return { + bytesRead: length, + buffer, + }; + } + const bytesRead = await this[kBaseFs].readPromise(this.fd, + // FIXME: FakeFS should support ArrayBufferViews directly + Buffer.isBuffer(buffer) ? buffer : Buffer.from(buffer.buffer, buffer.byteOffset, buffer.byteLength), offset, length, position); + return { + bytesRead, + buffer, + }; + } + finally { + this[kUnref](); + } + } + async readFile(options) { + try { + this[kRef](this.readFile); + const encoding = (typeof options === `string` ? options : options?.encoding) ?? undefined; + return await this[kBaseFs].readFilePromise(this.fd, encoding); + } + finally { + this[kUnref](); + } + } + readLines(options) { + return (0, readline_1.createInterface)({ + input: this.createReadStream(options), + crlfDelay: Infinity, + }); + } + async stat(opts) { + try { + this[kRef](this.stat); + return await this[kBaseFs].fstatPromise(this.fd, opts); + } + finally { + this[kUnref](); + } + } + async truncate(len) { + try { + this[kRef](this.truncate); + return await this[kBaseFs].ftruncatePromise(this.fd, len); + } + finally { + this[kUnref](); + } + } + // FIXME: Missing FakeFS version + utimes(atime, mtime) { + throw new Error(`Method not implemented.`); + } + async writeFile(data, options) { + try { + this[kRef](this.writeFile); + const encoding = (typeof options === `string` ? options : options?.encoding) ?? undefined; + await this[kBaseFs].writeFilePromise(this.fd, data, encoding); + } + finally { + this[kUnref](); + } + } + async write(...args) { + try { + this[kRef](this.write); + if (ArrayBuffer.isView(args[0])) { + const [buffer, offset, length, position] = args; + const bytesWritten = await this[kBaseFs].writePromise(this.fd, buffer, offset ?? undefined, length ?? undefined, position ?? undefined); + return { bytesWritten, buffer }; + } + else { + const [data, position, encoding] = args; + // @ts-expect-error - FIXME: Types/implementation need to be updated in FakeFS + const bytesWritten = await this[kBaseFs].writePromise(this.fd, data, position, encoding); + return { bytesWritten, buffer: data }; + } + } + finally { + this[kUnref](); + } + } + // TODO: Use writev from FakeFS when that is implemented + async writev(buffers, position) { + try { + this[kRef](this.writev); + let bytesWritten = 0; + if (typeof position !== `undefined`) { + for (const buffer of buffers) { + const writeResult = await this.write(buffer, undefined, undefined, position); + bytesWritten += writeResult.bytesWritten; + position += writeResult.bytesWritten; + } + } + else { + for (const buffer of buffers) { + const writeResult = await this.write(buffer); + bytesWritten += writeResult.bytesWritten; + } + } + return { + buffers, + bytesWritten, + }; + } + finally { + this[kUnref](); + } + } + // FIXME: Missing FakeFS version + readv(buffers, position) { + throw new Error(`Method not implemented.`); + } + close() { + if (this[kFd] === -1) + return Promise.resolve(); + if (this[kClosePromise]) + return this[kClosePromise]; + this[kRefs]--; + if (this[kRefs] === 0) { + const fd = this[kFd]; + this[kFd] = -1; + this[kClosePromise] = this[kBaseFs].closePromise(fd).finally(() => { + this[kClosePromise] = undefined; + }); + } + else { + this[kClosePromise] = + new Promise((resolve, reject) => { + this[kCloseResolve] = resolve; + this[kCloseReject] = reject; + }).finally(() => { + this[kClosePromise] = undefined; + this[kCloseReject] = undefined; + this[kCloseResolve] = undefined; + }); + } + return this[kClosePromise]; + } + [(_a = kRefs, _b = kClosePromise, _c = kCloseResolve, _d = kCloseReject, kRef)](caller) { + if (this[kFd] === -1) { + const err = new Error(`file closed`); + err.code = `EBADF`; + err.syscall = caller.name; + throw err; + } + this[kRefs]++; + } + [kUnref]() { + this[kRefs]--; + if (this[kRefs] === 0) { + const fd = this[kFd]; + this[kFd] = -1; + this[kBaseFs].closePromise(fd).then(this[kCloseResolve], this[kCloseReject]); + } + } + }; + FileHandle.FileHandle = FileHandle$1; + return FileHandle; +} + +var hasRequiredPatchFs; + +function requirePatchFs () { + if (hasRequiredPatchFs) return patchFs; + hasRequiredPatchFs = 1; + Object.defineProperty(patchFs, "__esModule", { value: true }); + patchFs.patchFs = patchFs$1; + patchFs.extendFs = extendFs; + const util_1 = require$$1; + const NodePathFS_1 = requireNodePathFS(); + const FileHandle_1 = requireFileHandle(); + const SYNC_IMPLEMENTATIONS = new Set([ + `accessSync`, + `appendFileSync`, + `createReadStream`, + `createWriteStream`, + `chmodSync`, + `fchmodSync`, + `chownSync`, + `fchownSync`, + `closeSync`, + `copyFileSync`, + `linkSync`, + `lstatSync`, + `fstatSync`, + `lutimesSync`, + `mkdirSync`, + `openSync`, + `opendirSync`, + `readlinkSync`, + `readFileSync`, + `readdirSync`, + `readlinkSync`, + `realpathSync`, + `renameSync`, + `rmdirSync`, + `rmSync`, + `statSync`, + `symlinkSync`, + `truncateSync`, + `ftruncateSync`, + `unlinkSync`, + `unwatchFile`, + `utimesSync`, + `watch`, + `watchFile`, + `writeFileSync`, + `writeSync`, + ]); + const ASYNC_IMPLEMENTATIONS = new Set([ + `accessPromise`, + `appendFilePromise`, + `fchmodPromise`, + `chmodPromise`, + `fchownPromise`, + `chownPromise`, + `closePromise`, + `copyFilePromise`, + `linkPromise`, + `fstatPromise`, + `lstatPromise`, + `lutimesPromise`, + `mkdirPromise`, + `openPromise`, + `opendirPromise`, + `readdirPromise`, + `realpathPromise`, + `readFilePromise`, + `readdirPromise`, + `readlinkPromise`, + `renamePromise`, + `rmdirPromise`, + `rmPromise`, + `statPromise`, + `symlinkPromise`, + `truncatePromise`, + `ftruncatePromise`, + `unlinkPromise`, + `utimesPromise`, + `writeFilePromise`, + `writeSync`, + ]); + //#endregion + function patchFs$1(patchedFs, fakeFs) { + // We wrap the `fakeFs` with a `NodePathFS` to add support for all path types supported by Node + fakeFs = new NodePathFS_1.NodePathFS(fakeFs); + const setupFn = (target, name, replacement) => { + const orig = target[name]; + target[name] = replacement; + // Preserve any util.promisify implementations + if (typeof orig?.[util_1.promisify.custom] !== `undefined`) { + replacement[util_1.promisify.custom] = orig[util_1.promisify.custom]; + } + }; + /** Callback implementations */ + { + setupFn(patchedFs, `exists`, (p, ...args) => { + const hasCallback = typeof args[args.length - 1] === `function`; + const callback = hasCallback ? args.pop() : () => { }; + process.nextTick(() => { + fakeFs.existsPromise(p).then(exists => { + callback(exists); + }, () => { + callback(false); + }); + }); + }); + // Adapted from https://github.com/nodejs/node/blob/e5c1fd7a2a1801fd75bdde23b260488e85453eb2/lib/fs.js#L603-L667 + setupFn(patchedFs, `read`, (...args) => { + let [fd, buffer, offset, length, position, callback] = args; + if (args.length <= 3) { + // Assume fs.read(fd, options, callback) + let options = {}; + if (args.length < 3) { + // This is fs.read(fd, callback) + callback = args[1]; + } + else { + // This is fs.read(fd, {}, callback) + options = args[1]; + callback = args[2]; + } + ({ + buffer = Buffer.alloc(16384), + offset = 0, + length = buffer.byteLength, + position, + } = options); + } + if (offset == null) + offset = 0; + length |= 0; + if (length === 0) { + process.nextTick(() => { + callback(null, 0, buffer); + }); + return; + } + if (position == null) + position = -1; + process.nextTick(() => { + fakeFs.readPromise(fd, buffer, offset, length, position).then(bytesRead => { + callback(null, bytesRead, buffer); + }, error => { + // https://github.com/nodejs/node/blob/1317252dfe8824fd9cfee125d2aaa94004db2f3b/lib/fs.js#L655-L658 + // Known issue: bytesRead could theoretically be > than 0, but we currently always return 0 + callback(error, 0, buffer); + }); + }); + }); + for (const fnName of ASYNC_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + if (typeof patchedFs[origName] === `undefined`) + continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) + continue; + const wrapper = (...args) => { + const hasCallback = typeof args[args.length - 1] === `function`; + const callback = hasCallback ? args.pop() : () => { }; + process.nextTick(() => { + fakeImpl.apply(fakeFs, args).then((result) => { + callback(null, result); + }, (error) => { + callback(error); + }); + }); + }; + setupFn(patchedFs, origName, wrapper); + } + patchedFs.realpath.native = patchedFs.realpath; + } + /** Sync implementations */ + { + setupFn(patchedFs, `existsSync`, (p) => { + try { + return fakeFs.existsSync(p); + } + catch { + return false; + } + }); + // Adapted from https://github.com/nodejs/node/blob/e5c1fd7a2a1801fd75bdde23b260488e85453eb2/lib/fs.js#L684-L725 + setupFn(patchedFs, `readSync`, (...args) => { + let [fd, buffer, offset, length, position] = args; + if (args.length <= 3) { + // Assume fs.read(fd, buffer, options) + const options = args[2] || {}; + ({ offset = 0, length = buffer.byteLength, position } = options); + } + if (offset == null) + offset = 0; + length |= 0; + if (length === 0) + return 0; + if (position == null) + position = -1; + return fakeFs.readSync(fd, buffer, offset, length, position); + }); + for (const fnName of SYNC_IMPLEMENTATIONS) { + const origName = fnName; + if (typeof patchedFs[origName] === `undefined`) + continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) + continue; + setupFn(patchedFs, origName, fakeImpl.bind(fakeFs)); + } + patchedFs.realpathSync.native = patchedFs.realpathSync; + } + /** Promise implementations */ + { + // `fs.promises` is a getter that returns a reference to require(`fs/promises`), + // so we can just patch `fs.promises` and both will be updated + const patchedFsPromises = patchedFs.promises; + // `fs.promises.exists` doesn't exist + for (const fnName of ASYNC_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + if (typeof patchedFsPromises[origName] === `undefined`) + continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) + continue; + // Open is a bit particular with fs.promises: it returns a file handle + // instance instead of the traditional file descriptor number + if (fnName === `open`) + continue; + setupFn(patchedFsPromises, origName, (pathLike, ...args) => { + if (pathLike instanceof FileHandle_1.FileHandle) { + return pathLike[origName].apply(pathLike, args); + } + else { + return fakeImpl.call(fakeFs, pathLike, ...args); + } + }); + } + setupFn(patchedFsPromises, `open`, async (...args) => { + // @ts-expect-error - reason TBS + const fd = await fakeFs.openPromise(...args); + return new FileHandle_1.FileHandle(fd, fakeFs); + }); + // `fs.promises.realpath` doesn't have a `native` property + } + /** util.promisify implementations */ + { + // TODO add promisified `fs.readv` and `fs.writev`, once they are implemented + // Override the promisified versions of `fs.read` and `fs.write` to return an object as per + // https://github.com/nodejs/node/blob/dc79f3f37caf6f25b8efee4623bec31e2c20f595/lib/fs.js#L559-L560 + // and + // https://github.com/nodejs/node/blob/dc79f3f37caf6f25b8efee4623bec31e2c20f595/lib/fs.js#L690-L691 + // and + // https://github.com/nodejs/node/blob/ba684805b6c0eded76e5cd89ee00328ac7a59365/lib/internal/util.js#L293 + // @ts-expect-error - reason TBS + patchedFs.read[util_1.promisify.custom] = async (fd, buffer, ...args) => { + const res = fakeFs.readPromise(fd, buffer, ...args); + return { bytesRead: await res, buffer }; + }; + // @ts-expect-error - reason TBS + patchedFs.write[util_1.promisify.custom] = async (fd, buffer, ...args) => { + const res = fakeFs.writePromise(fd, buffer, ...args); + return { bytesWritten: await res, buffer }; + }; + } + } + function extendFs(realFs, fakeFs) { + const patchedFs = Object.create(realFs); + patchFs$1(patchedFs, fakeFs); + return patchedFs; + } + return patchFs; +} + +var xfs = {}; + +var hasRequiredXfs; + +function requireXfs () { + if (hasRequiredXfs) return xfs; + hasRequiredXfs = 1; + (function (exports) { + Object.defineProperty(exports, "__esModule", { value: true }); + exports.xfs = void 0; + const tslib_1 = require$$0; + const os_1 = tslib_1.__importDefault(require$$1$2); + const NodeFS_1 = requireNodeFS(); + const path_1 = requirePath(); + function getTempName(prefix) { + const hash = Math.ceil(Math.random() * 0x100000000).toString(16).padStart(8, `0`); + return `${prefix}${hash}`; + } + const tmpdirs = new Set(); + let tmpEnv = null; + function initTmpEnv() { + if (tmpEnv) + return tmpEnv; + const tmpdir = path_1.npath.toPortablePath(os_1.default.tmpdir()); + const realTmpdir = exports.xfs.realpathSync(tmpdir); + process.once(`exit`, () => { + exports.xfs.rmtempSync(); + }); + return tmpEnv = { + tmpdir, + realTmpdir, + }; + } + exports.xfs = Object.assign(new NodeFS_1.NodeFS(), { + detachTemp(p) { + tmpdirs.delete(p); + }, + mktempSync(cb) { + const { tmpdir, realTmpdir } = initTmpEnv(); + while (true) { + const name = getTempName(`xfs-`); + try { + this.mkdirSync(path_1.ppath.join(tmpdir, name)); + } + catch (error) { + if (error.code === `EEXIST`) { + continue; + } + else { + throw error; + } + } + const realP = path_1.ppath.join(realTmpdir, name); + tmpdirs.add(realP); + if (typeof cb === `undefined`) + return realP; + try { + return cb(realP); + } + finally { + if (tmpdirs.has(realP)) { + tmpdirs.delete(realP); + try { + this.removeSync(realP); + } + catch { + // Too bad if there's an error + } + } + } + } + }, + async mktempPromise(cb) { + const { tmpdir, realTmpdir } = initTmpEnv(); + while (true) { + const name = getTempName(`xfs-`); + try { + await this.mkdirPromise(path_1.ppath.join(tmpdir, name)); + } + catch (error) { + if (error.code === `EEXIST`) { + continue; + } + else { + throw error; + } + } + const realP = path_1.ppath.join(realTmpdir, name); + tmpdirs.add(realP); + if (typeof cb === `undefined`) + return realP; + try { + return await cb(realP); + } + finally { + if (tmpdirs.has(realP)) { + tmpdirs.delete(realP); + try { + await this.removePromise(realP); + } + catch { + // Too bad if there's an error + } + } + } + } + }, + async rmtempPromise() { + await Promise.all(Array.from(tmpdirs.values()).map(async (p) => { + try { + await exports.xfs.removePromise(p, { maxRetries: 0 }); + tmpdirs.delete(p); + } + catch { + // Too bad if there's an error + } + })); + }, + rmtempSync() { + for (const p of tmpdirs) { + try { + exports.xfs.removeSync(p); + tmpdirs.delete(p); + } + catch { + // Too bad if there's an error + } + } + }, + }); + } (xfs)); + return xfs; +} + +(function (exports) { + Object.defineProperty(exports, "__esModule", { value: true }); + exports.xfs = exports.extendFs = exports.patchFs = exports.VirtualFS = exports.ProxiedFS = exports.PosixFS = exports.NodeFS = exports.NoFS = exports.MountFS = exports.LazyFS = exports.JailFS = exports.CwdFS = exports.BasePortableFakeFS = exports.FakeFS = exports.AliasFS = exports.ppath = exports.npath = exports.Filename = exports.PortablePath = exports.normalizeLineEndings = exports.unwatchAllFiles = exports.unwatchFile = exports.watchFile = exports.CustomDir = exports.opendir = exports.setupCopyIndex = exports.statUtils = exports.errors = exports.constants = void 0; + const tslib_1 = require$$0; + const constants = tslib_1.__importStar(requireConstants()); + exports.constants = constants; + const errors = tslib_1.__importStar(requireErrors()); + exports.errors = errors; + const statUtils = tslib_1.__importStar(requireStatUtils()); + exports.statUtils = statUtils; + var copyPromise_1 = requireCopyPromise(); + Object.defineProperty(exports, "setupCopyIndex", { enumerable: true, get: function () { return copyPromise_1.setupCopyIndex; } }); + var opendir_1 = requireOpendir(); + Object.defineProperty(exports, "opendir", { enumerable: true, get: function () { return opendir_1.opendir; } }); + Object.defineProperty(exports, "CustomDir", { enumerable: true, get: function () { return opendir_1.CustomDir; } }); + var watchFile_1 = requireWatchFile(); + Object.defineProperty(exports, "watchFile", { enumerable: true, get: function () { return watchFile_1.watchFile; } }); + Object.defineProperty(exports, "unwatchFile", { enumerable: true, get: function () { return watchFile_1.unwatchFile; } }); + Object.defineProperty(exports, "unwatchAllFiles", { enumerable: true, get: function () { return watchFile_1.unwatchAllFiles; } }); + var FakeFS_1 = requireFakeFS(); + Object.defineProperty(exports, "normalizeLineEndings", { enumerable: true, get: function () { return FakeFS_1.normalizeLineEndings; } }); + var path_1 = requirePath(); + Object.defineProperty(exports, "PortablePath", { enumerable: true, get: function () { return path_1.PortablePath; } }); + Object.defineProperty(exports, "Filename", { enumerable: true, get: function () { return path_1.Filename; } }); + var path_2 = requirePath(); + Object.defineProperty(exports, "npath", { enumerable: true, get: function () { return path_2.npath; } }); + Object.defineProperty(exports, "ppath", { enumerable: true, get: function () { return path_2.ppath; } }); + var AliasFS_1 = requireAliasFS(); + Object.defineProperty(exports, "AliasFS", { enumerable: true, get: function () { return AliasFS_1.AliasFS; } }); + var FakeFS_2 = requireFakeFS(); + Object.defineProperty(exports, "FakeFS", { enumerable: true, get: function () { return FakeFS_2.FakeFS; } }); + Object.defineProperty(exports, "BasePortableFakeFS", { enumerable: true, get: function () { return FakeFS_2.BasePortableFakeFS; } }); + var CwdFS_1 = requireCwdFS(); + Object.defineProperty(exports, "CwdFS", { enumerable: true, get: function () { return CwdFS_1.CwdFS; } }); + var JailFS_1 = requireJailFS(); + Object.defineProperty(exports, "JailFS", { enumerable: true, get: function () { return JailFS_1.JailFS; } }); + var LazyFS_1 = requireLazyFS(); + Object.defineProperty(exports, "LazyFS", { enumerable: true, get: function () { return LazyFS_1.LazyFS; } }); + var MountFS_1 = requireMountFS(); + Object.defineProperty(exports, "MountFS", { enumerable: true, get: function () { return MountFS_1.MountFS; } }); + var NoFS_1 = requireNoFS(); + Object.defineProperty(exports, "NoFS", { enumerable: true, get: function () { return NoFS_1.NoFS; } }); + var NodeFS_1 = requireNodeFS(); + Object.defineProperty(exports, "NodeFS", { enumerable: true, get: function () { return NodeFS_1.NodeFS; } }); + var PosixFS_1 = requirePosixFS(); + Object.defineProperty(exports, "PosixFS", { enumerable: true, get: function () { return PosixFS_1.PosixFS; } }); + var ProxiedFS_1 = requireProxiedFS(); + Object.defineProperty(exports, "ProxiedFS", { enumerable: true, get: function () { return ProxiedFS_1.ProxiedFS; } }); + var VirtualFS_1 = requireVirtualFS(); + Object.defineProperty(exports, "VirtualFS", { enumerable: true, get: function () { return VirtualFS_1.VirtualFS; } }); + var patchFs_1 = requirePatchFs(); + Object.defineProperty(exports, "patchFs", { enumerable: true, get: function () { return patchFs_1.patchFs; } }); + Object.defineProperty(exports, "extendFs", { enumerable: true, get: function () { return patchFs_1.extendFs; } }); + var xfs_1 = requireXfs(); + Object.defineProperty(exports, "xfs", { enumerable: true, get: function () { return xfs_1.xfs; } }); +} (lib)); + +const SAFE_TIME = 456789e3; + const defaultTime = new Date(SAFE_TIME * 1e3); const defaultTimeMs = defaultTime.getTime(); async function copyPromise(destinationFs, destination, sourceFs, source, opts) { @@ -92,6 +5051,7 @@ async function copyPromise(destinationFs, destination, sourceFs, source, opts) { })); } async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) { + var _a, _b, _c; const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null; const sourceStat = await sourceFs.lstatPromise(source); const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat; @@ -116,8 +5076,8 @@ async function copyImpl(prelayout, postlayout, destinationFs, destination, sourc throw new Error(`Unsupported file type (${sourceStat.mode})`); } } - if (opts.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) { - if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) { + if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) !== `HardlinkFromIndex` || !sourceStat.isFile()) { + if (updated || ((_b = destinationStat == null ? void 0 : destinationStat.mtime) == null ? void 0 : _b.getTime()) !== mtime.getTime() || ((_c = destinationStat == null ? void 0 : destinationStat.atime) == null ? void 0 : _c.getTime()) !== atime.getTime()) { postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime)); updated = true; } @@ -190,7 +5150,7 @@ async function copyFileViaIndex(prelayout, postlayout, destinationFs, destinatio let indexStat = await maybeLStat(destinationFs, indexPath); if (destinationStat) { const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino; - const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs; + const isIndexModified = (indexStat == null ? void 0 : indexStat.mtimeMs) !== defaultTimeMs; if (isDestinationHardlinkedFromIndex) { if (isIndexModified && linkStrategy.autoRepair) { atomicBehavior = 0 /* Lock */; @@ -264,7 +5224,8 @@ async function copyFileDirect(prelayout, postlayout, destinationFs, destination, return true; } async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (opts.linkStrategy?.type === `HardlinkFromIndex`) { + var _a; + if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) === `HardlinkFromIndex`) { return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy); } else { return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); @@ -395,7 +5356,7 @@ class FakeFS { throw error; } } - createdDirectory ??= subPath; + createdDirectory != null ? createdDirectory : createdDirectory = subPath; if (chmod != null) await this.chmodPromise(subPath, chmod); if (utimes != null) { @@ -426,7 +5387,7 @@ class FakeFS { throw error; } } - createdDirectory ??= subPath; + createdDirectory != null ? createdDirectory : createdDirectory = subPath; if (chmod != null) this.chmodSync(subPath, chmod); if (utimes != null) { @@ -666,687 +5627,687 @@ function normalizeLineEndings(originalContent, newContent) { return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); } -class ProxiedFS extends FakeFS { - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); +function direntToPortable(dirent) { + const portableDirent = dirent; + if (typeof dirent.path === `string`) + portableDirent.path = npath.toPortablePath(dirent.path); + return portableDirent; +} +class NodeFS extends BasePortableFakeFS { + realFs; + constructor(realFs = fs) { + super(); + this.realFs = realFs; } - resolve(path) { - return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); + getExtractHint() { + return false; } getRealPath() { - return this.mapFromBase(this.baseFs.getRealPath()); + return PortablePath.root; + } + resolve(p) { + return ppath.resolve(p); } async openPromise(p, flags, mode) { - return this.baseFs.openPromise(this.mapToBase(p), flags, mode); + return await new Promise((resolve, reject) => { + this.realFs.open(npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); + }); } openSync(p, flags, mode) { - return this.baseFs.openSync(this.mapToBase(p), flags, mode); + return this.realFs.openSync(npath.fromPortablePath(p), flags, mode); } async opendirPromise(p, opts) { - return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); + return await new Promise((resolve, reject) => { + if (typeof opts !== `undefined`) { + this.realFs.opendir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }).then((dir) => { + const dirWithFixedPath = dir; + Object.defineProperty(dirWithFixedPath, `path`, { + value: p, + configurable: true, + writable: true + }); + return dirWithFixedPath; + }); } opendirSync(p, opts) { - return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); + const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p)); + const dirWithFixedPath = dir; + Object.defineProperty(dirWithFixedPath, `path`, { + value: p, + configurable: true, + writable: true + }); + return dirWithFixedPath; } - async readPromise(fd, buffer, offset, length, position) { - return await this.baseFs.readPromise(fd, buffer, offset, length, position); + async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { + return await new Promise((resolve, reject) => { + this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { + if (error) { + reject(error); + } else { + resolve(bytesRead); + } + }); + }); } readSync(fd, buffer, offset, length, position) { - return this.baseFs.readSync(fd, buffer, offset, length, position); + return this.realFs.readSync(fd, buffer, offset, length, position); } async writePromise(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return await this.baseFs.writePromise(fd, buffer, offset); - } else { - return await this.baseFs.writePromise(fd, buffer, offset, length, position); - } + return await new Promise((resolve, reject) => { + if (typeof buffer === `string`) { + return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); + } else { + return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); + } + }); } writeSync(fd, buffer, offset, length, position) { if (typeof buffer === `string`) { - return this.baseFs.writeSync(fd, buffer, offset); + return this.realFs.writeSync(fd, buffer, offset); } else { - return this.baseFs.writeSync(fd, buffer, offset, length, position); + return this.realFs.writeSync(fd, buffer, offset, length, position); } } async closePromise(fd) { - return this.baseFs.closePromise(fd); + await new Promise((resolve, reject) => { + this.realFs.close(fd, this.makeCallback(resolve, reject)); + }); } closeSync(fd) { - this.baseFs.closeSync(fd); + this.realFs.closeSync(fd); } createReadStream(p, opts) { - return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createReadStream(realPath, opts); } createWriteStream(p, opts) { - return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createWriteStream(realPath, opts); } async realpathPromise(p) { - return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); + return await new Promise((resolve, reject) => { + this.realFs.realpath(npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then((path) => { + return npath.toPortablePath(path); + }); } realpathSync(p) { - return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); + return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(p), {})); } async existsPromise(p) { - return this.baseFs.existsPromise(this.mapToBase(p)); - } - existsSync(p) { - return this.baseFs.existsSync(this.mapToBase(p)); + return await new Promise((resolve) => { + this.realFs.exists(npath.fromPortablePath(p), resolve); + }); } accessSync(p, mode) { - return this.baseFs.accessSync(this.mapToBase(p), mode); + return this.realFs.accessSync(npath.fromPortablePath(p), mode); } async accessPromise(p, mode) { - return this.baseFs.accessPromise(this.mapToBase(p), mode); + return await new Promise((resolve, reject) => { + this.realFs.access(npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); + }); + } + existsSync(p) { + return this.realFs.existsSync(npath.fromPortablePath(p)); } async statPromise(p, opts) { - return this.baseFs.statPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.stat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } statSync(p, opts) { - return this.baseFs.statSync(this.mapToBase(p), opts); + if (opts) { + return this.realFs.statSync(npath.fromPortablePath(p), opts); + } else { + return this.realFs.statSync(npath.fromPortablePath(p)); + } } async fstatPromise(fd, opts) { - return this.baseFs.fstatPromise(fd, opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.fstat(fd, this.makeCallback(resolve, reject)); + } + }); } fstatSync(fd, opts) { - return this.baseFs.fstatSync(fd, opts); + if (opts) { + return this.realFs.fstatSync(fd, opts); + } else { + return this.realFs.fstatSync(fd); + } } - lstatPromise(p, opts) { - return this.baseFs.lstatPromise(this.mapToBase(p), opts); + async lstatPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.lstat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } lstatSync(p, opts) { - return this.baseFs.lstatSync(this.mapToBase(p), opts); + if (opts) { + return this.realFs.lstatSync(npath.fromPortablePath(p), opts); + } else { + return this.realFs.lstatSync(npath.fromPortablePath(p)); + } } async fchmodPromise(fd, mask) { - return this.baseFs.fchmodPromise(fd, mask); + return await new Promise((resolve, reject) => { + this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); + }); } fchmodSync(fd, mask) { - return this.baseFs.fchmodSync(fd, mask); + return this.realFs.fchmodSync(fd, mask); } async chmodPromise(p, mask) { - return this.baseFs.chmodPromise(this.mapToBase(p), mask); + return await new Promise((resolve, reject) => { + this.realFs.chmod(npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + }); } chmodSync(p, mask) { - return this.baseFs.chmodSync(this.mapToBase(p), mask); + return this.realFs.chmodSync(npath.fromPortablePath(p), mask); } async fchownPromise(fd, uid, gid) { - return this.baseFs.fchownPromise(fd, uid, gid); + return await new Promise((resolve, reject) => { + this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); + }); } fchownSync(fd, uid, gid) { - return this.baseFs.fchownSync(fd, uid, gid); + return this.realFs.fchownSync(fd, uid, gid); } async chownPromise(p, uid, gid) { - return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); + return await new Promise((resolve, reject) => { + this.realFs.chown(npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); + }); } chownSync(p, uid, gid) { - return this.baseFs.chownSync(this.mapToBase(p), uid, gid); + return this.realFs.chownSync(npath.fromPortablePath(p), uid, gid); } async renamePromise(oldP, newP) { - return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); + return await new Promise((resolve, reject) => { + this.realFs.rename(npath.fromPortablePath(oldP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); } renameSync(oldP, newP) { - return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); + return this.realFs.renameSync(npath.fromPortablePath(oldP), npath.fromPortablePath(newP)); } async copyFilePromise(sourceP, destP, flags = 0) { - return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); + return await new Promise((resolve, reject) => { + this.realFs.copyFile(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + }); } copyFileSync(sourceP, destP, flags = 0) { - return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); + return this.realFs.copyFileSync(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags); } async appendFilePromise(p, content, opts) { - return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); } appendFileSync(p, content, opts) { - return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFileSync(fsNativePath, content, opts); + } else { + this.realFs.appendFileSync(fsNativePath, content); + } } async writeFilePromise(p, content, opts) { - return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); } writeFileSync(p, content, opts) { - return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFileSync(fsNativePath, content, opts); + } else { + this.realFs.writeFileSync(fsNativePath, content); + } } async unlinkPromise(p) { - return this.baseFs.unlinkPromise(this.mapToBase(p)); + return await new Promise((resolve, reject) => { + this.realFs.unlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); } unlinkSync(p) { - return this.baseFs.unlinkSync(this.mapToBase(p)); + return this.realFs.unlinkSync(npath.fromPortablePath(p)); } async utimesPromise(p, atime, mtime) { - return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); + return await new Promise((resolve, reject) => { + this.realFs.utimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); } utimesSync(p, atime, mtime) { - return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); + this.realFs.utimesSync(npath.fromPortablePath(p), atime, mtime); } async lutimesPromise(p, atime, mtime) { - return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); + return await new Promise((resolve, reject) => { + this.realFs.lutimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); } lutimesSync(p, atime, mtime) { - return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); + this.realFs.lutimesSync(npath.fromPortablePath(p), atime, mtime); } async mkdirPromise(p, opts) { - return this.baseFs.mkdirPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + this.realFs.mkdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + }); } mkdirSync(p, opts) { - return this.baseFs.mkdirSync(this.mapToBase(p), opts); + return this.realFs.mkdirSync(npath.fromPortablePath(p), opts); } async rmdirPromise(p, opts) { - return this.baseFs.rmdirPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.rmdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rmdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } rmdirSync(p, opts) { - return this.baseFs.rmdirSync(this.mapToBase(p), opts); + return this.realFs.rmdirSync(npath.fromPortablePath(p), opts); } async rmPromise(p, opts) { - return this.baseFs.rmPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.rm(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rm(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } rmSync(p, opts) { - return this.baseFs.rmSync(this.mapToBase(p), opts); + return this.realFs.rmSync(npath.fromPortablePath(p), opts); } async linkPromise(existingP, newP) { - return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); + return await new Promise((resolve, reject) => { + this.realFs.link(npath.fromPortablePath(existingP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); } linkSync(existingP, newP) { - return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); + return this.realFs.linkSync(npath.fromPortablePath(existingP), npath.fromPortablePath(newP)); } async symlinkPromise(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); + return await new Promise((resolve, reject) => { + this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); + }); } symlinkSync(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkSync(mappedTarget, mappedP, type); + return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type); } async readFilePromise(p, encoding) { - return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); + }); } readFileSync(p, encoding) { - return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + return this.realFs.readFileSync(fsNativePath, encoding); } - readdirPromise(p, opts) { - return this.baseFs.readdirPromise(this.mapToBase(p), opts); + async readdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + if (opts.recursive && process.platform === `win32`) { + if (opts.withFileTypes) { + this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(direntToPortable)), reject)); + } else { + this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(npath.toPortablePath)), reject)); + } + } else { + this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + } else { + this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } readdirSync(p, opts) { - return this.baseFs.readdirSync(this.mapToBase(p), opts); + if (opts) { + if (opts.recursive && process.platform === `win32`) { + if (opts.withFileTypes) { + return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(direntToPortable); + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(npath.toPortablePath); + } + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p), opts); + } + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p)); + } } async readlinkPromise(p) { - return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); + return await new Promise((resolve, reject) => { + this.realFs.readlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then((path) => { + return npath.toPortablePath(path); + }); } readlinkSync(p) { - return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); + return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(p))); } async truncatePromise(p, len) { - return this.baseFs.truncatePromise(this.mapToBase(p), len); + return await new Promise((resolve, reject) => { + this.realFs.truncate(npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); + }); } truncateSync(p, len) { - return this.baseFs.truncateSync(this.mapToBase(p), len); + return this.realFs.truncateSync(npath.fromPortablePath(p), len); } async ftruncatePromise(fd, len) { - return this.baseFs.ftruncatePromise(fd, len); + return await new Promise((resolve, reject) => { + this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); + }); } ftruncateSync(fd, len) { - return this.baseFs.ftruncateSync(fd, len); + return this.realFs.ftruncateSync(fd, len); } watch(p, a, b) { - return this.baseFs.watch( - this.mapToBase(p), + return this.realFs.watch( + npath.fromPortablePath(p), // @ts-expect-error - reason TBS a, b ); } watchFile(p, a, b) { - return this.baseFs.watchFile( - this.mapToBase(p), + return this.realFs.watchFile( + npath.fromPortablePath(p), // @ts-expect-error - reason TBS a, b ); } unwatchFile(p, cb) { - return this.baseFs.unwatchFile(this.mapToBase(p), cb); + return this.realFs.unwatchFile(npath.fromPortablePath(p), cb); } - fsMapToBase(p) { - if (typeof p === `number`) { - return p; - } else { - return this.mapToBase(p); - } + makeCallback(resolve, reject) { + return (err, result) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }; } } -function direntToPortable(dirent) { - const portableDirent = dirent; - if (typeof dirent.path === `string`) - portableDirent.path = npath.toPortablePath(dirent.path); - return portableDirent; -} -class NodeFS extends BasePortableFakeFS { - realFs; - constructor(realFs = fs) { - super(); - this.realFs = realFs; +class ProxiedFS extends FakeFS { + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); } - getExtractHint() { - return false; + resolve(path) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); } getRealPath() { - return PortablePath.root; - } - resolve(p) { - return ppath.resolve(p); + return this.mapFromBase(this.baseFs.getRealPath()); } async openPromise(p, flags, mode) { - return await new Promise((resolve, reject) => { - this.realFs.open(npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); - }); + return this.baseFs.openPromise(this.mapToBase(p), flags, mode); } openSync(p, flags, mode) { - return this.realFs.openSync(npath.fromPortablePath(p), flags, mode); + return this.baseFs.openSync(this.mapToBase(p), flags, mode); } async opendirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (typeof opts !== `undefined`) { - this.realFs.opendir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }).then((dir) => { - const dirWithFixedPath = dir; - Object.defineProperty(dirWithFixedPath, `path`, { - value: p, - configurable: true, - writable: true - }); - return dirWithFixedPath; - }); + return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); } opendirSync(p, opts) { - const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p)); - const dirWithFixedPath = dir; - Object.defineProperty(dirWithFixedPath, `path`, { - value: p, - configurable: true, - writable: true - }); - return dirWithFixedPath; + return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); } - async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { - return await new Promise((resolve, reject) => { - this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { - if (error) { - reject(error); - } else { - resolve(bytesRead); - } - }); - }); + async readPromise(fd, buffer, offset, length, position) { + return await this.baseFs.readPromise(fd, buffer, offset, length, position); } readSync(fd, buffer, offset, length, position) { - return this.realFs.readSync(fd, buffer, offset, length, position); + return this.baseFs.readSync(fd, buffer, offset, length, position); } async writePromise(fd, buffer, offset, length, position) { - return await new Promise((resolve, reject) => { - if (typeof buffer === `string`) { - return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); - } else { - return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); - } - }); + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } } writeSync(fd, buffer, offset, length, position) { if (typeof buffer === `string`) { - return this.realFs.writeSync(fd, buffer, offset); + return this.baseFs.writeSync(fd, buffer, offset); } else { - return this.realFs.writeSync(fd, buffer, offset, length, position); + return this.baseFs.writeSync(fd, buffer, offset, length, position); } } async closePromise(fd) { - await new Promise((resolve, reject) => { - this.realFs.close(fd, this.makeCallback(resolve, reject)); - }); + return this.baseFs.closePromise(fd); } closeSync(fd) { - this.realFs.closeSync(fd); + this.baseFs.closeSync(fd); } createReadStream(p, opts) { - const realPath = p !== null ? npath.fromPortablePath(p) : p; - return this.realFs.createReadStream(realPath, opts); + return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); } createWriteStream(p, opts) { - const realPath = p !== null ? npath.fromPortablePath(p) : p; - return this.realFs.createWriteStream(realPath, opts); + return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); } async realpathPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.realpath(npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); - }).then((path) => { - return npath.toPortablePath(path); - }); + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); } realpathSync(p) { - return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(p), {})); + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); } async existsPromise(p) { - return await new Promise((resolve) => { - this.realFs.exists(npath.fromPortablePath(p), resolve); - }); + return this.baseFs.existsPromise(this.mapToBase(p)); + } + existsSync(p) { + return this.baseFs.existsSync(this.mapToBase(p)); } accessSync(p, mode) { - return this.realFs.accessSync(npath.fromPortablePath(p), mode); + return this.baseFs.accessSync(this.mapToBase(p), mode); } async accessPromise(p, mode) { - return await new Promise((resolve, reject) => { - this.realFs.access(npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); - }); - } - existsSync(p) { - return this.realFs.existsSync(npath.fromPortablePath(p)); + return this.baseFs.accessPromise(this.mapToBase(p), mode); } async statPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.stat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.statPromise(this.mapToBase(p), opts); } statSync(p, opts) { - if (opts) { - return this.realFs.statSync(npath.fromPortablePath(p), opts); - } else { - return this.realFs.statSync(npath.fromPortablePath(p)); - } + return this.baseFs.statSync(this.mapToBase(p), opts); } async fstatPromise(fd, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.fstat(fd, this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.fstatPromise(fd, opts); } fstatSync(fd, opts) { - if (opts) { - return this.realFs.fstatSync(fd, opts); - } else { - return this.realFs.fstatSync(fd); - } + return this.baseFs.fstatSync(fd, opts); } - async lstatPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.lstat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + lstatPromise(p, opts) { + return this.baseFs.lstatPromise(this.mapToBase(p), opts); } lstatSync(p, opts) { - if (opts) { - return this.realFs.lstatSync(npath.fromPortablePath(p), opts); - } else { - return this.realFs.lstatSync(npath.fromPortablePath(p)); - } + return this.baseFs.lstatSync(this.mapToBase(p), opts); } async fchmodPromise(fd, mask) { - return await new Promise((resolve, reject) => { - this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); - }); + return this.baseFs.fchmodPromise(fd, mask); } fchmodSync(fd, mask) { - return this.realFs.fchmodSync(fd, mask); + return this.baseFs.fchmodSync(fd, mask); } async chmodPromise(p, mask) { - return await new Promise((resolve, reject) => { - this.realFs.chmod(npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); - }); + return this.baseFs.chmodPromise(this.mapToBase(p), mask); } chmodSync(p, mask) { - return this.realFs.chmodSync(npath.fromPortablePath(p), mask); + return this.baseFs.chmodSync(this.mapToBase(p), mask); } async fchownPromise(fd, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); - }); + return this.baseFs.fchownPromise(fd, uid, gid); } fchownSync(fd, uid, gid) { - return this.realFs.fchownSync(fd, uid, gid); + return this.baseFs.fchownSync(fd, uid, gid); } async chownPromise(p, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.chown(npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); - }); + return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); } chownSync(p, uid, gid) { - return this.realFs.chownSync(npath.fromPortablePath(p), uid, gid); + return this.baseFs.chownSync(this.mapToBase(p), uid, gid); } async renamePromise(oldP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.rename(npath.fromPortablePath(oldP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); + return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); } renameSync(oldP, newP) { - return this.realFs.renameSync(npath.fromPortablePath(oldP), npath.fromPortablePath(newP)); + return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); } async copyFilePromise(sourceP, destP, flags = 0) { - return await new Promise((resolve, reject) => { - this.realFs.copyFile(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); - }); + return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); } copyFileSync(sourceP, destP, flags = 0) { - return this.realFs.copyFileSync(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags); + return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); } async appendFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); } appendFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFileSync(fsNativePath, content, opts); - } else { - this.realFs.appendFileSync(fsNativePath, content); - } + return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); } async writeFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); } writeFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFileSync(fsNativePath, content, opts); - } else { - this.realFs.writeFileSync(fsNativePath, content); - } + return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); } async unlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.unlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }); + return this.baseFs.unlinkPromise(this.mapToBase(p)); } unlinkSync(p) { - return this.realFs.unlinkSync(npath.fromPortablePath(p)); + return this.baseFs.unlinkSync(this.mapToBase(p)); } async utimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.utimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); + return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); } utimesSync(p, atime, mtime) { - this.realFs.utimesSync(npath.fromPortablePath(p), atime, mtime); + return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); } async lutimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.lutimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); + return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); } lutimesSync(p, atime, mtime) { - this.realFs.lutimesSync(npath.fromPortablePath(p), atime, mtime); + return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); } async mkdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - this.realFs.mkdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - }); + return this.baseFs.mkdirPromise(this.mapToBase(p), opts); } mkdirSync(p, opts) { - return this.realFs.mkdirSync(npath.fromPortablePath(p), opts); + return this.baseFs.mkdirSync(this.mapToBase(p), opts); } async rmdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.rmdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.rmdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.rmdirPromise(this.mapToBase(p), opts); } rmdirSync(p, opts) { - return this.realFs.rmdirSync(npath.fromPortablePath(p), opts); + return this.baseFs.rmdirSync(this.mapToBase(p), opts); } async rmPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.rm(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.rm(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.rmPromise(this.mapToBase(p), opts); } rmSync(p, opts) { - return this.realFs.rmSync(npath.fromPortablePath(p), opts); + return this.baseFs.rmSync(this.mapToBase(p), opts); } async linkPromise(existingP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.link(npath.fromPortablePath(existingP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); + return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); } linkSync(existingP, newP) { - return this.realFs.linkSync(npath.fromPortablePath(existingP), npath.fromPortablePath(newP)); + return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); } async symlinkPromise(target, p, type) { - return await new Promise((resolve, reject) => { - this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); - }); + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); } symlinkSync(target, p, type) { - return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type); + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkSync(mappedTarget, mappedP, type); } async readFilePromise(p, encoding) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); - }); + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); } readFileSync(p, encoding) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - return this.realFs.readFileSync(fsNativePath, encoding); + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); } - async readdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - if (opts.recursive && process.platform === `win32`) { - if (opts.withFileTypes) { - this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(direntToPortable)), reject)); - } else { - this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(npath.toPortablePath)), reject)); - } - } else { - this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - } else { - this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + readdirPromise(p, opts) { + return this.baseFs.readdirPromise(this.mapToBase(p), opts); } readdirSync(p, opts) { - if (opts) { - if (opts.recursive && process.platform === `win32`) { - if (opts.withFileTypes) { - return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(direntToPortable); - } else { - return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(npath.toPortablePath); - } - } else { - return this.realFs.readdirSync(npath.fromPortablePath(p), opts); - } - } else { - return this.realFs.readdirSync(npath.fromPortablePath(p)); - } + return this.baseFs.readdirSync(this.mapToBase(p), opts); } async readlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.readlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }).then((path) => { - return npath.toPortablePath(path); - }); + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); } readlinkSync(p) { - return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(p))); + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); } async truncatePromise(p, len) { - return await new Promise((resolve, reject) => { - this.realFs.truncate(npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); - }); + return this.baseFs.truncatePromise(this.mapToBase(p), len); } truncateSync(p, len) { - return this.realFs.truncateSync(npath.fromPortablePath(p), len); + return this.baseFs.truncateSync(this.mapToBase(p), len); } async ftruncatePromise(fd, len) { - return await new Promise((resolve, reject) => { - this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); - }); + return this.baseFs.ftruncatePromise(fd, len); } ftruncateSync(fd, len) { - return this.realFs.ftruncateSync(fd, len); + return this.baseFs.ftruncateSync(fd, len); } watch(p, a, b) { - return this.realFs.watch( - npath.fromPortablePath(p), + return this.baseFs.watch( + this.mapToBase(p), // @ts-expect-error - reason TBS a, b ); } watchFile(p, a, b) { - return this.realFs.watchFile( - npath.fromPortablePath(p), + return this.baseFs.watchFile( + this.mapToBase(p), // @ts-expect-error - reason TBS a, b ); } unwatchFile(p, cb) { - return this.realFs.unwatchFile(npath.fromPortablePath(p), cb); + return this.baseFs.unwatchFile(this.mapToBase(p), cb); } - makeCallback(resolve, reject) { - return (err, result) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }; + fsMapToBase(p) { + if (typeof p === `number`) { + return p; + } else { + return this.mapToBase(p); + } } } @@ -1426,113 +6387,24 @@ class VirtualFS extends ProxiedFS { } } -const URL = Number(process.versions.node.split('.', 1)[0]) < 20 ? URL$1 : globalThis.URL; - -const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10)); -const WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13; -const HAS_LAZY_LOADED_TRANSLATORS = major === 20 && minor < 6 || major === 19 && minor >= 3; -const SUPPORTS_IMPORT_ATTRIBUTES = major >= 21 || major === 20 && minor >= 10 || major === 18 && minor >= 20; -const SUPPORTS_IMPORT_ATTRIBUTES_ONLY = major >= 22; -const HAS_BROKEN_FSTAT_FOR_ZIP_FDS = major > 25 || major === 25 && minor >= 7 || major === 24 && minor >= 15; - -function readPackageScope(checkPath) { - const rootSeparatorIndex = checkPath.indexOf(npath.sep); - let separatorIndex; - do { - separatorIndex = checkPath.lastIndexOf(npath.sep); - checkPath = checkPath.slice(0, separatorIndex); - if (checkPath.endsWith(`${npath.sep}node_modules`)) - return false; - const pjson = readPackage(checkPath + npath.sep); - if (pjson) { - return { - data: pjson, - path: checkPath - }; - } - } while (separatorIndex > rootSeparatorIndex); - return false; -} -function readPackage(requestPath) { - const jsonPath = npath.resolve(requestPath, `package.json`); - if (!fs.existsSync(jsonPath)) - return null; - return JSON.parse(fs.readFileSync(jsonPath, `utf8`)); -} - -async function tryReadFile$1(path2) { - try { - return await fs.promises.readFile(path2, `utf8`); - } catch (error) { - if (error.code === `ENOENT`) - return null; - throw error; - } -} -function tryParseURL(str, base) { - try { - return new URL(str, base); - } catch { - return null; - } -} -let entrypointPath = null; -function setEntrypointPath(file) { - entrypointPath = file; -} -function getFileFormat(filepath) { - const ext = path.extname(filepath); - switch (ext) { - case `.mjs`: { - return `module`; - } - case `.cjs`: { - return `commonjs`; - } - case `.wasm`: { - throw new Error( - `Unknown file extension ".wasm" for ${filepath}` - ); - } - case `.json`: { - return `json`; - } - case `.js`: { - const pkg = readPackageScope(filepath); - if (!pkg) - return `commonjs`; - return pkg.data.type ?? `commonjs`; - } - default: { - if (entrypointPath !== filepath) - return null; - const pkg = readPackageScope(filepath); - if (!pkg) - return `commonjs`; - if (pkg.data.type === `module`) - return null; - return pkg.data.type ?? `commonjs`; - } - } -} - async function load$1(urlString, context, nextLoad) { + var _a, _b, _c; const url = tryParseURL(urlString); - if (url?.protocol !== `file:`) + if ((url == null ? void 0 : url.protocol) !== `file:`) return nextLoad(urlString, context, nextLoad); const filePath = fileURLToPath(url); - const format = getFileFormat(filePath); + const format = getFileFormat$1(filePath); if (!format) return nextLoad(urlString, context, nextLoad); if (format === `json`) { if (SUPPORTS_IMPORT_ATTRIBUTES_ONLY) { - if (context.importAttributes?.type !== `json`) { + if (((_a = context.importAttributes) == null ? void 0 : _a.type) !== `json`) { const err = new TypeError(`[ERR_IMPORT_ATTRIBUTE_MISSING]: Module "${urlString}" needs an import attribute of "type: json"`); err.code = `ERR_IMPORT_ATTRIBUTE_MISSING`; throw err; } } else { - const type = `importAttributes` in context ? context.importAttributes?.type : context.importAssertions?.type; + const type = `importAttributes` in context ? (_b = context.importAttributes) == null ? void 0 : _b.type : (_c = context.importAssertions) == null ? void 0 : _c.type; if (type !== `json`) { const err = new TypeError(`[ERR_IMPORT_ASSERTION_TYPE_MISSING]: Module "${urlString}" needs an import ${SUPPORTS_IMPORT_ATTRIBUTES ? `attribute` : `assertion`} of type "json"`); err.code = `ERR_IMPORT_ASSERTION_TYPE_MISSING`; @@ -1559,6 +6431,71 @@ async function load$1(urlString, context, nextLoad) { }; } +const require = createRequire(import.meta.url); +const getFileFormat = (filepath) => { + const ext = extname(filepath); + switch (ext) { + case ".mts": { + return "module"; + } + case ".cts": { + return "commonjs"; + } + case ".ts": { + const pkg = readPackageScope(filepath); + if (!pkg) return "commonjs"; + return pkg.data.type ?? "commonjs"; + } + case ".tsx": { + const pkg = readPackageScope(filepath); + if (!pkg) return "commonjs"; + return pkg.data.type ?? "commonjs"; + } + default: { + return null; + } + } +}; +const transformSource = (source, format, ext) => { + const { transformSync } = require("esbuild"); + const { code } = transformSync(source, { + format: format === "module" ? "esm" : "cjs", + loader: ext === "tsx" ? "tsx" : "ts", + target: `node${process.versions.node}` + }); + return code; +}; + +const loadHook = async (urlString, context, nextLoad) => load$1(urlString, context, async (urlString2, context2) => { + const url = tryParseURL(urlString2); + if ((url == null ? void 0 : url.protocol) !== `file:`) { + return nextLoad(urlString2, context2, nextLoad); + } + const filePath = fileURLToPath$1(url); + const format = getFileFormat(filePath); + if (!format) { + return nextLoad(urlString2, context2, nextLoad); + } + if (process.env.WATCH_REPORT_DEPENDENCIES && process.send) { + const pathToSend = pathToFileURL$1( + lib.npath.fromPortablePath(lib.VirtualFS.resolveVirtual(lib.npath.toPortablePath(filePath))) + ).href; + process.send({ + "watch:import": WATCH_MODE_MESSAGE_USES_ARRAYS ? [pathToSend] : pathToSend + }); + } + const source = await fs$1.promises.readFile(filePath, `utf8`); + return { + format, + source: transformSource( + source, + format, + filePath.includes(".tsx") ? "tsx" : "ts" + ), + shortCircuit: true + }; +}); + const ArrayIsArray = Array.isArray; const JSONStringify = JSON.stringify; const ObjectGetOwnPropertyNames = Object.getOwnPropertyNames; @@ -1657,7 +6594,7 @@ function getPackageConfig(path, specifier, base, readFileSyncFn) { } catch (error) { throw new ERR_INVALID_PACKAGE_CONFIG( path, - (base ? `"${specifier}" from ` : "") + fileURLToPath(base || specifier), + ("") + fileURLToPath(specifier), error.message ); } @@ -1728,6 +6665,28 @@ function getPackageScopeConfig(resolved, readFileSyncFn) { return packageConfig; } +/** + @license + Copyright Node.js contributors. All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to + deal in the Software without restriction, including without limitation the + rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + IN THE SOFTWARE. +*/ function throwImportNotDefined(specifier, packageJSONUrl, base) { throw new ERR_PACKAGE_IMPORT_NOT_DEFINED( specifier, @@ -1736,7 +6695,7 @@ function throwImportNotDefined(specifier, packageJSONUrl, base) { ); } function throwInvalidSubpath(subpath, packageJSONUrl, internal, base) { - const reason = `request is not a valid subpath for the "${internal ? "imports" : "exports"}" resolution of ${fileURLToPath(packageJSONUrl)}`; + const reason = `request is not a valid subpath for the "${"imports" }" resolution of ${fileURLToPath(packageJSONUrl)}`; throw new ERR_INVALID_MODULE_SPECIFIER( subpath, reason, @@ -1763,7 +6722,7 @@ function resolvePackageTargetString(target, subpath, match, packageJSONUrl, base if (subpath !== "" && !pattern && target[target.length - 1] !== "/") throwInvalidPackageTarget(match, target, packageJSONUrl, internal, base); if (!StringPrototypeStartsWith(target, "./")) { - if (internal && !StringPrototypeStartsWith(target, "../") && !StringPrototypeStartsWith(target, "/")) { + if (!StringPrototypeStartsWith(target, "../") && !StringPrototypeStartsWith(target, "/")) { let isURL = false; try { new URL(target); @@ -1978,7 +6937,7 @@ function packageImportsResolve({ name, base, conditions, readFileSyncFn }) { let findPnpApi = esmModule.findPnpApi; if (!findPnpApi) { - const require = createRequire(import.meta.url); + const require = createRequire$1(import.meta.url); const pnpApi = require(structuredClone(`./.pnp.cjs`)); pnpApi.setup(); findPnpApi = esmModule.findPnpApi; @@ -2010,6 +6969,7 @@ async function resolvePrivateRequest(specifier, issuer, context, nextResolve) { } } async function resolve$1(originalSpecifier, context, nextResolve) { + var _a, _b; if (!findPnpApi || isBuiltin(originalSpecifier)) return nextResolve(originalSpecifier, context, nextResolve); let specifier = originalSpecifier; @@ -2020,8 +6980,8 @@ async function resolve$1(originalSpecifier, context, nextResolve) { specifier = fileURLToPath(url); } const { parentURL, conditions = [] } = context; - const issuer = parentURL && tryParseURL(parentURL)?.protocol === `file:` ? fileURLToPath(parentURL) : process.cwd(); - const pnpapi = findPnpApi(issuer) ?? (url ? findPnpApi(specifier) : null); + const issuer = parentURL && ((_a = tryParseURL(parentURL)) == null ? void 0 : _a.protocol) === `file:` ? fileURLToPath(parentURL) : process.cwd(); + const pnpapi = (_b = findPnpApi(issuer)) != null ? _b : url ? findPnpApi(specifier) : null; if (!pnpapi) return nextResolve(originalSpecifier, context, nextResolve); if (specifier.startsWith(`#`)) @@ -2068,62 +7028,17 @@ async function resolve$1(originalSpecifier, context, nextResolve) { }; } -if (!HAS_LAZY_LOADED_TRANSLATORS) { - const binding = process.binding(`fs`); - const originalReadFile = binding.readFileUtf8 || binding.readFileSync; - if (originalReadFile) { - binding[originalReadFile.name] = function(...args) { - try { - return fs.readFileSync(args[0], { - encoding: `utf8`, - // @ts-expect-error - The docs says it needs to be a string but - // links to https://nodejs.org/dist/latest-v20.x/docs/api/fs.html#file-system-flags - // which says it can be a number which matches the implementation. - flag: args[1] - }); - } catch { - } - return originalReadFile.apply(this, args); - }; - } else { - const binding2 = process.binding(`fs`); - const originalfstat = binding2.fstat; - const ZIP_MASK = 4278190080; - const ZIP_MAGIC = 704643072; - binding2.fstat = function(...args) { - const [fd, useBigint, req] = args; - if ((fd & ZIP_MASK) === ZIP_MAGIC && useBigint === false && req === void 0) { - try { - const stats = fs.fstatSync(fd); - return new Float64Array([ - stats.dev, - stats.mode, - stats.nlink, - stats.uid, - stats.gid, - stats.rdev, - stats.blksize, - stats.ino, - stats.size, - stats.blocks - // atime sec - // atime ns - // mtime sec - // mtime ns - // ctime sec - // ctime ns - // birthtime sec - // birthtime ns - ]); - } catch { - } - } - return originalfstat.apply(this, args); - }; +const resolveHook = async (originalSpecifier, context, nextResolve) => { + const tsSpecifier = originalSpecifier.replace(/\.(c|m)?js$/, `.$1ts`).replace(/\.(c|m)?jsx$/, ".$1tsx"); + try { + return await resolve$1(tsSpecifier, context, nextResolve); + } catch (err) { + if (tsSpecifier === originalSpecifier) throw err; + return resolve$1(originalSpecifier, context, nextResolve); } -} +}; -const resolve = resolve$1; -const load = load$1; +const resolve = resolveHook; +const load = loadHook; export { load, resolve }; diff --git a/.yarn/bin/yarn b/.yarn/bin/yarn new file mode 100755 index 000000000..6a61fd5ee --- /dev/null +++ b/.yarn/bin/yarn @@ -0,0 +1,7 @@ +#!/usr/bin/env sh +set -eu + +ROOT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/../.." && pwd) +YARN_PATH=$(awk '/^yarnPath:/ { print $2; exit }' "$ROOT_DIR/.yarnrc.yml") + +exec "$ROOT_DIR/$YARN_PATH" "$@" diff --git a/.yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs b/.yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs new file mode 100644 index 000000000..19b79b324 --- /dev/null +++ b/.yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs @@ -0,0 +1,9 @@ +/* eslint-disable */ +//prettier-ignore +module.exports = { +name: "@yarnpkg/plugin-pnp-patch", +factory: function (require) { +"use strict";var plugin=(()=>{var x=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var t=(O=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(O,{get:(z,W)=>(typeof require<"u"?require:z)[W]}):O)(function(O){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+O+'" is not supported')});var I=(O,z)=>{for(var W in z)x(O,W,{get:z[W],enumerable:!0})},i=(O,z,W,m)=>{if(z&&typeof z=="object"||typeof z=="function")for(let u of f(z))!X.call(O,u)&&u!==W&&x(O,u,{get:()=>z[u],enumerable:!(m=D(z,u))||m.enumerable});return O};var N=O=>i(x({},"__esModule",{value:!0}),O);var s={};I(s,{default:()=>r});var C=t("@yarnpkg/fslib"),p=t("@yarnpkg/plugin-pnp");var Z=t("node:zlib"),o,A=()=>(typeof o>"u"&&(o=(0,Z.brotliDecompressSync)(Buffer.from("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","base64")).toString()),o);var g={hooks:{async afterAllInstalled(O){let{esmLoader:z}=(0,p.getPnpPath)(O);await C.xfs.existsPromise(z)&&await C.xfs.changeFilePromise(z,A(),{automaticNewlines:!0,mode:420})}}},r=g;return N(s);})(); +return plugin; +} +}; diff --git a/.yarn/releases/yarn.mjs b/.yarn/releases/yarn-remote.mjs similarity index 100% rename from .yarn/releases/yarn.mjs rename to .yarn/releases/yarn-remote.mjs diff --git a/.yarnrc.yml b/.yarnrc.yml index 412685c09..69fb9e8e8 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -8,6 +8,9 @@ defaultSemverRangePrefix: '' pnpEnableEsmLoader: true +plugins: + - path: .yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs + preferReuse: true packageExtensions: @@ -384,4 +387,4 @@ packageExtensions: dependencies: '@types/node': '*' -yarnPath: .yarn/releases/yarn.mjs +yarnPath: .yarn/releases/yarn-remote.mjs From a047e3df28dd5877c83fe51dc3bcee11e2d4fbc8 Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Sat, 6 Jun 2026 01:40:58 +0300 Subject: [PATCH 2/8] build(service): align entrypoint builds with raijin pnp --- catalog/service/package.json | 5 +++-- collaboration/service/package.json | 5 +++-- files/service/package.json | 5 +++-- hits/app/package.json | 5 +++-- hits/service/package.json | 5 +++-- identity/service/package.json | 5 +++-- mailer/service/package.json | 5 +++-- portfolio/service/package.json | 5 +++-- private-gateway/app/package.json | 5 +++-- public-gateway/app/package.json | 5 +++-- search/service/package.json | 5 +++-- 11 files changed, 33 insertions(+), 22 deletions(-) diff --git a/catalog/service/package.json b/catalog/service/package.json index 67b02b5ba..f8d319984 100644 --- a/catalog/service/package.json +++ b/catalog/service/package.json @@ -2,10 +2,11 @@ "name": "@catalog/service", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/collaboration/service/package.json b/collaboration/service/package.json index dc1d2bdcf..dbd6271fb 100644 --- a/collaboration/service/package.json +++ b/collaboration/service/package.json @@ -2,10 +2,11 @@ "name": "@collaboration/service", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/files/service/package.json b/files/service/package.json index e8b031648..29b4df9e8 100644 --- a/files/service/package.json +++ b/files/service/package.json @@ -2,10 +2,11 @@ "name": "@files/service", "version": "0.0.2", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/hits/app/package.json b/hits/app/package.json index 931bf5e6e..14f71f80b 100644 --- a/hits/app/package.json +++ b/hits/app/package.json @@ -2,10 +2,11 @@ "name": "@hits/app", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/hits/service/package.json b/hits/service/package.json index a57213208..14ef8a895 100644 --- a/hits/service/package.json +++ b/hits/service/package.json @@ -2,10 +2,11 @@ "name": "@hits/service", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/identity/service/package.json b/identity/service/package.json index 9737a5bac..9f6f7ab1a 100644 --- a/identity/service/package.json +++ b/identity/service/package.json @@ -2,10 +2,11 @@ "name": "@identity/service", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/mailer/service/package.json b/mailer/service/package.json index 774824951..76854e445 100644 --- a/mailer/service/package.json +++ b/mailer/service/package.json @@ -2,10 +2,11 @@ "name": "@mailer/service", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/portfolio/service/package.json b/portfolio/service/package.json index c475d8267..b3f807452 100644 --- a/portfolio/service/package.json +++ b/portfolio/service/package.json @@ -2,10 +2,11 @@ "name": "@portfolio/service", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/private-gateway/app/package.json b/private-gateway/app/package.json index e4414baa2..40fffe17b 100644 --- a/private-gateway/app/package.json +++ b/private-gateway/app/package.json @@ -2,10 +2,11 @@ "name": "@private-gateway/app", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/public-gateway/app/package.json b/public-gateway/app/package.json index 6c3f34106..dbd3e8ccb 100644 --- a/public-gateway/app/package.json +++ b/public-gateway/app/package.json @@ -2,10 +2,11 @@ "name": "@public-gateway/app", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { diff --git a/search/service/package.json b/search/service/package.json index 689ba483b..f51ebb50f 100644 --- a/search/service/package.json +++ b/search/service/package.json @@ -2,10 +2,11 @@ "name": "@search/service", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { - "build": "yarn service build", - "dev": "yarn service dev", + "build": "$PROJECT_CWD/.yarn/bin/yarn service build", + "dev": "$PROJECT_CWD/.yarn/bin/yarn service dev", "start": "node dist/index.js" }, "dependencies": { From d80c717a46c619cedbc62c5a191cadbd3fbc27c8 Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Sat, 6 Jun 2026 02:13:07 +0300 Subject: [PATCH 3/8] build(common): declare raijin loader esbuild runtime --- .pnp.cjs | 17 +++++++++++++++++ package.json | 1 + yarn.lock | 10 ++++++++++ 3 files changed, 28 insertions(+) diff --git a/.pnp.cjs b/.pnp.cjs index 371ffbc91..a33995f17 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -659,6 +659,10 @@ const RAW_RUNTIME_STATE = ["@types/jest", "npm:26.0.23"],\ ["@types/node", "npm:22.13.10"],\ ["@types/react", "npm:17.0.8"],\ + ["esbuild", [\ + "esbuild-wasm",\ + "npm:0.23.1"\ + ]],\ ["eslint", "npm:8.4.1"],\ ["husky", "npm:5.2.0"],\ ["root-workspace-0b6124", "workspace:."],\ @@ -36996,6 +37000,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["esbuild-wasm", [\ + ["npm:0.23.1", {\ + "packageLocation": "../.yarn/berry/cache/esbuild-wasm-npm-0.23.1-bc60c5041a-10.zip/node_modules/esbuild-wasm/",\ + "packageDependencies": [\ + ["esbuild-wasm", "npm:0.23.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["escalade", [\ ["npm:3.1.1", {\ "packageLocation": "../.yarn/berry/cache/escalade-npm-3.1.1-e02da076aa-10.zip/node_modules/escalade/",\ @@ -48870,6 +48883,10 @@ const RAW_RUNTIME_STATE = ["@types/jest", "npm:26.0.23"],\ ["@types/node", "npm:22.13.10"],\ ["@types/react", "npm:17.0.8"],\ + ["esbuild", [\ + "esbuild-wasm",\ + "npm:0.23.1"\ + ]],\ ["eslint", "npm:8.4.1"],\ ["husky", "npm:5.2.0"],\ ["root-workspace-0b6124", "workspace:."],\ diff --git a/package.json b/package.json index 3b10edbb7..28ce78675 100644 --- a/package.json +++ b/package.json @@ -51,6 +51,7 @@ "@types/jest": "^26.0.23", "@types/node": "22.13.10", "@types/react": "^17.0.6", + "esbuild": "npm:esbuild-wasm@^0.23.1", "eslint": "8.4.1", "husky": "5.2.0", "typescript": "5.5.4" diff --git a/yarn.lock b/yarn.lock index 4f44bc59c..b89d720bc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14090,6 +14090,15 @@ __metadata: languageName: node linkType: hard +"esbuild@npm:esbuild-wasm@^0.23.1": + version: 0.23.1 + resolution: "esbuild-wasm@npm:0.23.1" + bin: + esbuild: bin/esbuild + checksum: 10/30677e4ea96211d15f7b3780d70ecee564267767bc4465ba6539f57b565f2505ab930ca409d7b85695b5931fc37afb508f62c694c2e2092dd519efdecf62959b + languageName: node + linkType: hard + "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -24309,6 +24318,7 @@ __metadata: "@types/jest": "npm:^26.0.23" "@types/node": "npm:22.13.10" "@types/react": "npm:^17.0.6" + esbuild: "npm:esbuild-wasm@^0.23.1" eslint: "npm:8.4.1" husky: "npm:5.2.0" typescript: "npm:5.5.4" From e90d3772757858c434d31e01fc5da1186ad295f0 Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Thu, 11 Jun 2026 23:22:21 +0300 Subject: [PATCH 4/8] build(common): update raijin pnp runtime artifacts --- .pnp.cjs | 501 +- .pnp.loader.mjs | 6029 ++----------------- .yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs | 9 - .yarn/releases/yarn-remote.mjs | 1828 +++--- .yarnrc.yml | 3 - collaboration/persistence/package.json | 2 +- package.json | 3 +- yarn.lock | 97 +- 8 files changed, 1683 insertions(+), 6789 deletions(-) delete mode 100644 .yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs diff --git a/.pnp.cjs b/.pnp.cjs index a33995f17..3f26e4ed7 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -653,16 +653,12 @@ const RAW_RUNTIME_STATE = [null, {\ "packageLocation": "./",\ "packageDependencies": [\ - ["@atls/code-runtime", "npm:2.1.30"],\ + ["@atls/code-runtime", "npm:2.1.32"],\ ["@jest/core", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:27.4.7"],\ ["@types/eslint", "npm:8.4.1"],\ ["@types/jest", "npm:26.0.23"],\ ["@types/node", "npm:22.13.10"],\ ["@types/react", "npm:17.0.8"],\ - ["esbuild", [\ - "esbuild-wasm",\ - "npm:0.23.1"\ - ]],\ ["eslint", "npm:8.4.1"],\ ["husky", "npm:5.2.0"],\ ["root-workspace-0b6124", "workspace:."],\ @@ -1285,23 +1281,22 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@atls/code-runtime", [\ - ["npm:2.1.30", {\ - "packageLocation": "../.yarn/berry/cache/@atls-code-runtime-npm-2.1.30-e12b58a18b-10.zip/node_modules/@atls/code-runtime/",\ + ["npm:2.1.32", {\ + "packageLocation": "../.yarn/berry/cache/@atls-code-runtime-npm-2.1.32-79415ff4dc-10.zip/node_modules/@atls/code-runtime/",\ "packageDependencies": [\ - ["@atls/code-runtime", "npm:2.1.30"],\ - ["@atls/config-eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:2.0.15"],\ + ["@atls/code-runtime", "npm:2.1.32"],\ + ["@atls/config-eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:2.0.15"],\ ["@atls/config-prettier", "npm:2.0.4"],\ ["@atls/config-typescript", "npm:2.0.3"],\ ["@atls/webpack-proto-imports-loader", "npm:1.0.6"],\ ["@svgr/core", "npm:8.1.0"],\ - ["@svgr/plugin-jsx", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:8.1.0"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["node-loader", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:2.1.0"],\ + ["@svgr/plugin-jsx", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:8.1.0"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["node-loader", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:2.1.0"],\ ["strip-json-comments", "npm:3.1.1"],\ - ["ts-loader", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.5.2"],\ - ["ts-node", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:10.9.2"],\ + ["ts-loader", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.5.2"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"],\ - ["webpack", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:5.98.0"]\ + ["webpack", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:5.98.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -1314,24 +1309,24 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:2.0.15", {\ - "packageLocation": "./.yarn/__virtual__/@atls-config-eslint-virtual-34c04129f7/2/.yarn/berry/cache/@atls-config-eslint-npm-2.0.15-ca6853aa0b-10.zip/node_modules/@atls/config-eslint/",\ + ["virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:2.0.15", {\ + "packageLocation": "./.yarn/__virtual__/@atls-config-eslint-virtual-ba1c2dcb72/2/.yarn/berry/cache/@atls-config-eslint-npm-2.0.15-ca6853aa0b-10.zip/node_modules/@atls/config-eslint/",\ "packageDependencies": [\ - ["@atls/config-eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:2.0.15"],\ + ["@atls/config-eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:2.0.15"],\ ["@atls/config-prettier", "npm:2.0.4"],\ ["@next/eslint-plugin-next", "npm:16.0.7"],\ ["@types/typescript", null],\ - ["@typescript-eslint/eslint-plugin", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1"],\ - ["@typescript-eslint/parser", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["@typescript-eslint/eslint-plugin", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1"],\ + ["@typescript-eslint/parser", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["eslint-import-resolver-node", "npm:0.3.9"],\ - ["eslint-plugin-import", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:2.22.0"],\ - ["eslint-plugin-jsx-a11y", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:6.10.2"],\ - ["eslint-plugin-n", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:17.23.1"],\ - ["eslint-plugin-prettier", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:5.5.4"],\ - ["eslint-plugin-react", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:7.37.5"],\ - ["eslint-plugin-react-compiler", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:19.1.0-rc.2"],\ - ["eslint-plugin-react-hooks", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:7.0.1"],\ + ["eslint-plugin-import", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:2.22.0"],\ + ["eslint-plugin-jsx-a11y", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:6.10.2"],\ + ["eslint-plugin-n", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:17.23.1"],\ + ["eslint-plugin-prettier", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:5.5.4"],\ + ["eslint-plugin-react", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:7.37.5"],\ + ["eslint-plugin-react-compiler", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:19.1.0-rc.2"],\ + ["eslint-plugin-react-hooks", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:7.0.1"],\ ["eslint-plugin-security", "npm:3.0.1"],\ ["prettier", "npm:3.5.3"],\ ["react", "npm:17.0.2"],\ @@ -2355,15 +2350,15 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e77bb055759ac2a5a712edc5757fd3ed529cabdcfb540ff5e1487a4b57e69e334dd2506a3306cfbf59172da9fd3518537f6519c0cc3bb9ac1afea3f4285a9cfe#npm:7.28.6", {\ - "packageLocation": "./.yarn/__virtual__/@babel-helper-create-class-features-plugin-virtual-e368ff7496/2/.yarn/berry/cache/@babel-helper-create-class-features-plugin-npm-7.28.6-6b870abc40-10.zip/node_modules/@babel/helper-create-class-features-plugin/",\ + ["virtual:47c69e2c73fb63f9673178082e522d00f05509e1ed33709dec6bde84f343a9678e3bd47b5c2872c5b3c93b22d25a517d4627efdd6e669c881af0e03d157a03db#npm:7.28.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-create-class-features-plugin-virtual-f7d5439f66/2/.yarn/berry/cache/@babel-helper-create-class-features-plugin-npm-7.28.6-6b870abc40-10.zip/node_modules/@babel/helper-create-class-features-plugin/",\ "packageDependencies": [\ ["@babel/core", "npm:7.29.0"],\ ["@babel/helper-annotate-as-pure", "npm:7.27.3"],\ - ["@babel/helper-create-class-features-plugin", "virtual:e77bb055759ac2a5a712edc5757fd3ed529cabdcfb540ff5e1487a4b57e69e334dd2506a3306cfbf59172da9fd3518537f6519c0cc3bb9ac1afea3f4285a9cfe#npm:7.28.6"],\ + ["@babel/helper-create-class-features-plugin", "virtual:47c69e2c73fb63f9673178082e522d00f05509e1ed33709dec6bde84f343a9678e3bd47b5c2872c5b3c93b22d25a517d4627efdd6e669c881af0e03d157a03db#npm:7.28.6"],\ ["@babel/helper-member-expression-to-functions", "npm:7.28.5"],\ ["@babel/helper-optimise-call-expression", "npm:7.27.1"],\ - ["@babel/helper-replace-supers", "virtual:e368ff74964642c0ccb03ea7771275c8489a3d8f058f0afba57d32853c0b27e8dc99eeb9be6434af1525cf40b4d57be3d17728dddee34149509dc5b91c8efc9a#npm:7.28.6"],\ + ["@babel/helper-replace-supers", "virtual:f7d5439f66460cf8fe5c2e9b32a4f1c3fb5d6f548ad317ed1e5d0e817b6dd0c4985a9f3933a07214060f8747725a8e233bf146caa01b3ab634c583be415d33d0#npm:7.28.6"],\ ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.27.1"],\ ["@babel/traverse", "npm:7.29.0"],\ ["@types/babel__core", null],\ @@ -2624,13 +2619,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e368ff74964642c0ccb03ea7771275c8489a3d8f058f0afba57d32853c0b27e8dc99eeb9be6434af1525cf40b4d57be3d17728dddee34149509dc5b91c8efc9a#npm:7.28.6", {\ - "packageLocation": "./.yarn/__virtual__/@babel-helper-replace-supers-virtual-36c860e2d3/2/.yarn/berry/cache/@babel-helper-replace-supers-npm-7.28.6-f11a32993b-10.zip/node_modules/@babel/helper-replace-supers/",\ + ["virtual:f7d5439f66460cf8fe5c2e9b32a4f1c3fb5d6f548ad317ed1e5d0e817b6dd0c4985a9f3933a07214060f8747725a8e233bf146caa01b3ab634c583be415d33d0#npm:7.28.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-replace-supers-virtual-115b799607/2/.yarn/berry/cache/@babel-helper-replace-supers-npm-7.28.6-f11a32993b-10.zip/node_modules/@babel/helper-replace-supers/",\ "packageDependencies": [\ ["@babel/core", "npm:7.29.0"],\ ["@babel/helper-member-expression-to-functions", "npm:7.28.5"],\ ["@babel/helper-optimise-call-expression", "npm:7.27.1"],\ - ["@babel/helper-replace-supers", "virtual:e368ff74964642c0ccb03ea7771275c8489a3d8f058f0afba57d32853c0b27e8dc99eeb9be6434af1525cf40b4d57be3d17728dddee34149509dc5b91c8efc9a#npm:7.28.6"],\ + ["@babel/helper-replace-supers", "virtual:f7d5439f66460cf8fe5c2e9b32a4f1c3fb5d6f548ad317ed1e5d0e817b6dd0c4985a9f3933a07214060f8747725a8e233bf146caa01b3ab634c583be415d33d0#npm:7.28.6"],\ ["@babel/traverse", "npm:7.29.0"],\ ["@types/babel__core", null]\ ],\ @@ -2861,13 +2856,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:0c81a81438f35c51d2bd45f4ae668cf58929f90d5dd159169a011463c13521835df33d735372630c540f7ce1c142082c9aab3550380af7782d0732f44961754f#npm:7.18.6", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-proposal-private-methods-virtual-e77bb05575/2/.yarn/berry/cache/@babel-plugin-proposal-private-methods-npm-7.18.6-55729207b7-10.zip/node_modules/@babel/plugin-proposal-private-methods/",\ + ["virtual:332c18debc4f0e6cd174c53a66b02d1b625c5fb8ce0da3b370180c8cfaad08ae63c0404c903c7fc2b2518883d9668c4a36174b29f5830b20561964cca42fefbc#npm:7.18.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-proposal-private-methods-virtual-47c69e2c73/2/.yarn/berry/cache/@babel-plugin-proposal-private-methods-npm-7.18.6-55729207b7-10.zip/node_modules/@babel/plugin-proposal-private-methods/",\ "packageDependencies": [\ ["@babel/core", "npm:7.29.0"],\ - ["@babel/helper-create-class-features-plugin", "virtual:e77bb055759ac2a5a712edc5757fd3ed529cabdcfb540ff5e1487a4b57e69e334dd2506a3306cfbf59172da9fd3518537f6519c0cc3bb9ac1afea3f4285a9cfe#npm:7.28.6"],\ + ["@babel/helper-create-class-features-plugin", "virtual:47c69e2c73fb63f9673178082e522d00f05509e1ed33709dec6bde84f343a9678e3bd47b5c2872c5b3c93b22d25a517d4627efdd6e669c881af0e03d157a03db#npm:7.28.6"],\ ["@babel/helper-plugin-utils", "npm:7.28.6"],\ - ["@babel/plugin-proposal-private-methods", "virtual:0c81a81438f35c51d2bd45f4ae668cf58929f90d5dd159169a011463c13521835df33d735372630c540f7ce1c142082c9aab3550380af7782d0732f44961754f#npm:7.18.6"],\ + ["@babel/plugin-proposal-private-methods", "virtual:332c18debc4f0e6cd174c53a66b02d1b625c5fb8ce0da3b370180c8cfaad08ae63c0404c903c7fc2b2518883d9668c4a36174b29f5830b20561964cca42fefbc#npm:7.18.6"],\ ["@types/babel__core", null]\ ],\ "packagePeers": [\ @@ -3867,7 +3862,6 @@ const RAW_RUNTIME_STATE = ["@collaboration/persistence", "virtual:0643f1f56d3caf61a7c371a126e2f5af1cce49e0630df0d8051dc72672c88f7465b17570acece60905df363908cf33e738e44796d48f4a98932a7b25a72392cb#workspace:collaboration/persistence"],\ ["@monstrs/nestjs-bus", "virtual:8bbe6755d4ea59701197a8305be4c0e55d40263c567cf67124af9992151128a708fb67bafa0d8ee84aa8ee073126ca13a0d393c7b30efb6ca6b54417d0e501b7#npm:0.1.4"],\ ["@monstrs/nestjs-logger", "virtual:8bbe6755d4ea59701197a8305be4c0e55d40263c567cf67124af9992151128a708fb67bafa0d8ee84aa8ee073126ca13a0d393c7b30efb6ca6b54417d0e501b7#npm:0.1.2"],\ - ["@monstrs/tsconfig", "npm:0.2.0"],\ ["@nestjs/common", "virtual:5555dfeafebad57024fa761523d5586005035b492a086da1575bbc01ba47f616de96fe523cc848756887ea8ed55b2b0959223c22333301bb023c916864aeaa39#npm:8.4.2"],\ ["@nestjs/core", "virtual:0643f1f56d3caf61a7c371a126e2f5af1cce49e0630df0d8051dc72672c88f7465b17570acece60905df363908cf33e738e44796d48f4a98932a7b25a72392cb#npm:8.4.2"],\ ["@nestjs/typeorm", "virtual:8bbe6755d4ea59701197a8305be4c0e55d40263c567cf67124af9992151128a708fb67bafa0d8ee84aa8ee073126ca13a0d393c7b30efb6ca6b54417d0e501b7#npm:8.0.3"],\ @@ -3893,7 +3887,6 @@ const RAW_RUNTIME_STATE = ["@collaboration/persistence", "virtual:38e0748160cacd0d747758d9750598c79d4ac1e03602d24ed851973cdfa722702c9fe14791c1d6ef4ca53f875c19229da4df10c6aaa5b48c40d0b01515a48893#workspace:collaboration/persistence"],\ ["@monstrs/nestjs-bus", "virtual:f6d44ed4cc5c255d0a98dc5972197217279a99f7a95c9342870b243a6e0a1c868757a03a59d62e718ab5ebd670d312a43c652149711e52469ebac5d5edd9e56a#npm:0.1.4"],\ ["@monstrs/nestjs-logger", "virtual:f6d44ed4cc5c255d0a98dc5972197217279a99f7a95c9342870b243a6e0a1c868757a03a59d62e718ab5ebd670d312a43c652149711e52469ebac5d5edd9e56a#npm:0.1.2"],\ - ["@monstrs/tsconfig", "npm:0.2.0"],\ ["@nestjs/common", "virtual:5555dfeafebad57024fa761523d5586005035b492a086da1575bbc01ba47f616de96fe523cc848756887ea8ed55b2b0959223c22333301bb023c916864aeaa39#npm:8.4.2"],\ ["@nestjs/core", "virtual:38e0748160cacd0d747758d9750598c79d4ac1e03602d24ed851973cdfa722702c9fe14791c1d6ef4ca53f875c19229da4df10c6aaa5b48c40d0b01515a48893#npm:8.4.2"],\ ["@nestjs/typeorm", "virtual:f6d44ed4cc5c255d0a98dc5972197217279a99f7a95c9342870b243a6e0a1c868757a03a59d62e718ab5ebd670d312a43c652149711e52469ebac5d5edd9e56a#npm:8.0.3"],\ @@ -3919,7 +3912,6 @@ const RAW_RUNTIME_STATE = ["@collaboration/persistence", "workspace:collaboration/persistence"],\ ["@monstrs/nestjs-bus", "virtual:0171653359003e55ae12cabe481a61ac0f03e4cb435801b7e5b8b8565250c856c53e7b96aaaf344d3920c5c6e52dbfaea774e00eae53119c5e4c8cfc44abb8ef#npm:0.1.4"],\ ["@monstrs/nestjs-logger", "virtual:0171653359003e55ae12cabe481a61ac0f03e4cb435801b7e5b8b8565250c856c53e7b96aaaf344d3920c5c6e52dbfaea774e00eae53119c5e4c8cfc44abb8ef#npm:0.1.2"],\ - ["@monstrs/tsconfig", "npm:0.2.0"],\ ["@nestjs/common", "virtual:5555dfeafebad57024fa761523d5586005035b492a086da1575bbc01ba47f616de96fe523cc848756887ea8ed55b2b0959223c22333301bb023c916864aeaa39#npm:8.4.2"],\ ["@nestjs/typeorm", "virtual:0171653359003e55ae12cabe481a61ac0f03e4cb435801b7e5b8b8565250c856c53e7b96aaaf344d3920c5c6e52dbfaea774e00eae53119c5e4c8cfc44abb8ef#npm:8.0.3"],\ ["@node-ts/ddd", "virtual:eb79e9ee9f9f768ad974c46be57bf87615ee256365565cd70b6cbe3411f6273b52052dc8cd41da9c50d562fa7ce86198e201d419b6e40d81d1888ae46890525c#npm:0.1.6"],\ @@ -3978,14 +3970,6 @@ const RAW_RUNTIME_STATE = ["@cspotcode/source-map-support", "npm:0.7.0"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:0.8.1", {\ - "packageLocation": "../.yarn/berry/cache/@cspotcode-source-map-support-npm-0.8.1-964f2de99d-10.zip/node_modules/@cspotcode/source-map-support/",\ - "packageDependencies": [\ - ["@cspotcode/source-map-support", "npm:0.8.1"],\ - ["@jridgewell/trace-mapping", "npm:0.3.9"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["@elastic/elasticsearch", [\ @@ -4765,12 +4749,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:5c299942413bb1b61d9fa84545f456297a834e64f49474bbe5547a6e2debca94cff618fa820fee2d06ea46e0b117de22676e8dcf173f7c90dff8f04fdd180ab7#npm:4.9.1", {\ - "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-d340bed559/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.9.1-30ad3d49de-10.zip/node_modules/@eslint-community/eslint-utils/",\ + ["virtual:8081deba9df2c1aac50e891f98c9b578b32ba09181bfa8a81efc40b8a0d2a426b886839b82f6348f64fc5423f3696a1f4af13e88c8eff427303b86f511d37cbc#npm:4.9.1", {\ + "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-de69e81345/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.9.1-30ad3d49de-10.zip/node_modules/@eslint-community/eslint-utils/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:5c299942413bb1b61d9fa84545f456297a834e64f49474bbe5547a6e2debca94cff618fa820fee2d06ea46e0b117de22676e8dcf173f7c90dff8f04fdd180ab7#npm:4.9.1"],\ + ["@eslint-community/eslint-utils", "virtual:8081deba9df2c1aac50e891f98c9b578b32ba09181bfa8a81efc40b8a0d2a426b886839b82f6348f64fc5423f3696a1f4af13e88c8eff427303b86f511d37cbc#npm:4.9.1"],\ ["@types/eslint", null],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["eslint-visitor-keys", "npm:3.4.3"]\ ],\ "packagePeers": [\ @@ -7348,15 +7332,6 @@ const RAW_RUNTIME_STATE = ["@jridgewell/trace-mapping", "npm:0.3.31"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:0.3.9", {\ - "packageLocation": "../.yarn/berry/cache/@jridgewell-trace-mapping-npm-0.3.9-91625cd7fb-10.zip/node_modules/@jridgewell/trace-mapping/",\ - "packageDependencies": [\ - ["@jridgewell/resolve-uri", "npm:3.1.2"],\ - ["@jridgewell/sourcemap-codec", "npm:1.5.5"],\ - ["@jridgewell/trace-mapping", "npm:0.3.9"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["@mailer/api", [\ @@ -8887,15 +8862,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["@monstrs/tsconfig", [\ - ["npm:0.2.0", {\ - "packageLocation": "../.yarn/berry/cache/@monstrs-tsconfig-npm-0.2.0-09ac6dba3a-10.zip/node_modules/@monstrs/tsconfig/",\ - "packageDependencies": [\ - ["@monstrs/tsconfig", "npm:0.2.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["@nestjs/common", [\ ["npm:8.2.6", {\ "packageLocation": "../.yarn/berry/cache/@nestjs-common-npm-8.2.6-41d5e24fae-10.zip/node_modules/@nestjs/common/",\ @@ -26023,14 +25989,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:8.1.0", {\ - "packageLocation": "./.yarn/__virtual__/@svgr-plugin-jsx-virtual-137983c9ac/2/.yarn/berry/cache/@svgr-plugin-jsx-npm-8.1.0-e2710753df-10.zip/node_modules/@svgr/plugin-jsx/",\ + ["virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:8.1.0", {\ + "packageLocation": "./.yarn/__virtual__/@svgr-plugin-jsx-virtual-968e2cc34a/2/.yarn/berry/cache/@svgr-plugin-jsx-npm-8.1.0-e2710753df-10.zip/node_modules/@svgr/plugin-jsx/",\ "packageDependencies": [\ ["@babel/core", "npm:7.29.0"],\ ["@svgr/babel-preset", "virtual:77cc138b8f03e76bc81b53d7c536b91810383e8b8e9f294aac9f969daaf6fd5a72e29c2099e3025b537aac701c45d44c7e6af1647a2799c9f61d4f4f9312b7a3#npm:8.1.0"],\ ["@svgr/core", "npm:8.1.0"],\ ["@svgr/hast-util-to-babel-ast", "npm:8.0.0"],\ - ["@svgr/plugin-jsx", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:8.1.0"],\ + ["@svgr/plugin-jsx", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:8.1.0"],\ ["@types/svgr__core", null],\ ["svg-parser", "npm:2.0.4"]\ ],\ @@ -27135,24 +27101,24 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-addb73cb1b/2/.yarn/berry/cache/@typescript-eslint-eslint-plugin-npm-8.48.1-a09326c531-10.zip/node_modules/@typescript-eslint/eslint-plugin/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-212e8891d2/2/.yarn/berry/cache/@typescript-eslint-eslint-plugin-npm-8.48.1-a09326c531-10.zip/node_modules/@typescript-eslint/eslint-plugin/",\ "packageDependencies": [\ ["@eslint-community/regexpp", "npm:4.12.2"],\ ["@types/eslint", null],\ ["@types/typescript", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/eslint-plugin", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1"],\ - ["@typescript-eslint/parser", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1"],\ + ["@typescript-eslint/eslint-plugin", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1"],\ + ["@typescript-eslint/parser", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1"],\ ["@typescript-eslint/scope-manager", "npm:8.48.1"],\ - ["@typescript-eslint/type-utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:8.48.1"],\ - ["@typescript-eslint/utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:8.48.1"],\ + ["@typescript-eslint/type-utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:8.48.1"],\ + ["@typescript-eslint/utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:8.48.1"],\ ["@typescript-eslint/visitor-keys", "npm:8.48.1"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["graphemer", "npm:1.4.0"],\ ["ignore", "npm:7.0.5"],\ ["natural-compare", "npm:1.4.0"],\ - ["ts-api-utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:2.5.0"],\ + ["ts-api-utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:2.5.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -27174,18 +27140,18 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-825730af1c/2/.yarn/berry/cache/@typescript-eslint-parser-npm-8.48.1-cf0a8b9c11-10.zip/node_modules/@typescript-eslint/parser/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-a07f0fafc7/2/.yarn/berry/cache/@typescript-eslint-parser-npm-8.48.1-cf0a8b9c11-10.zip/node_modules/@typescript-eslint/parser/",\ "packageDependencies": [\ ["@types/eslint", null],\ ["@types/typescript", null],\ - ["@typescript-eslint/parser", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1"],\ + ["@typescript-eslint/parser", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1"],\ ["@typescript-eslint/scope-manager", "npm:8.48.1"],\ ["@typescript-eslint/types", "npm:8.48.1"],\ - ["@typescript-eslint/typescript-estree", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:8.48.1"],\ + ["@typescript-eslint/typescript-estree", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:8.48.1"],\ ["@typescript-eslint/visitor-keys", "npm:8.48.1"],\ - ["debug", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:4.4.3"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["debug", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:4.4.3"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -27205,14 +27171,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:519e7bf4e76f0455139f2d47ff709a017adef9041d8d4ebd7e7ccf83499014ec70c3e95029e14d05d64ab83d12646119c6e10a73b8f09fef60b11d43715f728e#npm:8.48.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-project-service-virtual-2db1035887/2/.yarn/berry/cache/@typescript-eslint-project-service-npm-8.48.1-13c2e2d2dc-10.zip/node_modules/@typescript-eslint/project-service/",\ + ["virtual:f7b81930cb164df0555d40cccf86ff9b1efbde3d4c00c261cfd39ee8fb22b342e9e6ca96890ccd91a7eb0c02af53955b1d8852185456b8698c4e04a4160de227#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-project-service-virtual-bccf7910ae/2/.yarn/berry/cache/@typescript-eslint-project-service-npm-8.48.1-13c2e2d2dc-10.zip/node_modules/@typescript-eslint/project-service/",\ "packageDependencies": [\ ["@types/typescript", null],\ - ["@typescript-eslint/project-service", "virtual:519e7bf4e76f0455139f2d47ff709a017adef9041d8d4ebd7e7ccf83499014ec70c3e95029e14d05d64ab83d12646119c6e10a73b8f09fef60b11d43715f728e#npm:8.48.1"],\ - ["@typescript-eslint/tsconfig-utils", "virtual:2db1035887294d71f1a43c66f88307914b3cf92548c1f01ff7ffb70105dcb495f9959e49449a3e29b311eb9e6f7600031d83b8fea3963d73b616f352df46cb0c#npm:8.59.0"],\ + ["@typescript-eslint/project-service", "virtual:f7b81930cb164df0555d40cccf86ff9b1efbde3d4c00c261cfd39ee8fb22b342e9e6ca96890ccd91a7eb0c02af53955b1d8852185456b8698c4e04a4160de227#npm:8.48.1"],\ + ["@typescript-eslint/tsconfig-utils", "virtual:bccf7910ae523b53f28a52e282196464c5cefe9d0d1b702b61d07c73be606f6f1d8ea8cd413de9ce26b42172b65b837f58ab08599c0fd309a75de313e209bff9#npm:8.59.0"],\ ["@typescript-eslint/types", "npm:8.59.0"],\ - ["debug", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:4.4.3"],\ + ["debug", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:4.4.3"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -27248,11 +27214,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:2db1035887294d71f1a43c66f88307914b3cf92548c1f01ff7ffb70105dcb495f9959e49449a3e29b311eb9e6f7600031d83b8fea3963d73b616f352df46cb0c#npm:8.59.0", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-tsconfig-utils-virtual-a0ffcca7f3/2/.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.59.0-47637519b3-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ + ["virtual:bccf7910ae523b53f28a52e282196464c5cefe9d0d1b702b61d07c73be606f6f1d8ea8cd413de9ce26b42172b65b837f58ab08599c0fd309a75de313e209bff9#npm:8.59.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-tsconfig-utils-virtual-86bee666ec/2/.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.59.0-47637519b3-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ "packageDependencies": [\ ["@types/typescript", null],\ - ["@typescript-eslint/tsconfig-utils", "virtual:2db1035887294d71f1a43c66f88307914b3cf92548c1f01ff7ffb70105dcb495f9959e49449a3e29b311eb9e6f7600031d83b8fea3963d73b616f352df46cb0c#npm:8.59.0"],\ + ["@typescript-eslint/tsconfig-utils", "virtual:bccf7910ae523b53f28a52e282196464c5cefe9d0d1b702b61d07c73be606f6f1d8ea8cd413de9ce26b42172b65b837f58ab08599c0fd309a75de313e209bff9#npm:8.59.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -27261,11 +27227,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:519e7bf4e76f0455139f2d47ff709a017adef9041d8d4ebd7e7ccf83499014ec70c3e95029e14d05d64ab83d12646119c6e10a73b8f09fef60b11d43715f728e#npm:8.48.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-tsconfig-utils-virtual-dc3d0c9bb1/2/.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.48.1-702d6abc7f-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ + ["virtual:f7b81930cb164df0555d40cccf86ff9b1efbde3d4c00c261cfd39ee8fb22b342e9e6ca96890ccd91a7eb0c02af53955b1d8852185456b8698c4e04a4160de227#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-tsconfig-utils-virtual-25095d6293/2/.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.48.1-702d6abc7f-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ "packageDependencies": [\ ["@types/typescript", null],\ - ["@typescript-eslint/tsconfig-utils", "virtual:519e7bf4e76f0455139f2d47ff709a017adef9041d8d4ebd7e7ccf83499014ec70c3e95029e14d05d64ab83d12646119c6e10a73b8f09fef60b11d43715f728e#npm:8.48.1"],\ + ["@typescript-eslint/tsconfig-utils", "virtual:f7b81930cb164df0555d40cccf86ff9b1efbde3d4c00c261cfd39ee8fb22b342e9e6ca96890ccd91a7eb0c02af53955b1d8852185456b8698c4e04a4160de227#npm:8.48.1"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -27283,18 +27249,18 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:8.48.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-type-utils-virtual-1bafc86999/2/.yarn/berry/cache/@typescript-eslint-type-utils-npm-8.48.1-9718d9fe5e-10.zip/node_modules/@typescript-eslint/type-utils/",\ + ["virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-type-utils-virtual-1ccb636e48/2/.yarn/berry/cache/@typescript-eslint-type-utils-npm-8.48.1-9718d9fe5e-10.zip/node_modules/@typescript-eslint/type-utils/",\ "packageDependencies": [\ ["@types/eslint", null],\ ["@types/typescript", null],\ - ["@typescript-eslint/type-utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:8.48.1"],\ + ["@typescript-eslint/type-utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:8.48.1"],\ ["@typescript-eslint/types", "npm:8.48.1"],\ - ["@typescript-eslint/typescript-estree", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:8.48.1"],\ - ["@typescript-eslint/utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:8.48.1"],\ - ["debug", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:4.4.3"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["ts-api-utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:2.5.0"],\ + ["@typescript-eslint/typescript-estree", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:8.48.1"],\ + ["@typescript-eslint/utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:8.48.1"],\ + ["debug", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:4.4.3"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["ts-api-utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:2.5.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -27330,20 +27296,20 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:8.48.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-519e7bf4e7/2/.yarn/berry/cache/@typescript-eslint-typescript-estree-npm-8.48.1-751b2295c1-10.zip/node_modules/@typescript-eslint/typescript-estree/",\ + ["virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-f7b81930cb/2/.yarn/berry/cache/@typescript-eslint-typescript-estree-npm-8.48.1-751b2295c1-10.zip/node_modules/@typescript-eslint/typescript-estree/",\ "packageDependencies": [\ ["@types/typescript", null],\ - ["@typescript-eslint/project-service", "virtual:519e7bf4e76f0455139f2d47ff709a017adef9041d8d4ebd7e7ccf83499014ec70c3e95029e14d05d64ab83d12646119c6e10a73b8f09fef60b11d43715f728e#npm:8.48.1"],\ - ["@typescript-eslint/tsconfig-utils", "virtual:519e7bf4e76f0455139f2d47ff709a017adef9041d8d4ebd7e7ccf83499014ec70c3e95029e14d05d64ab83d12646119c6e10a73b8f09fef60b11d43715f728e#npm:8.48.1"],\ + ["@typescript-eslint/project-service", "virtual:f7b81930cb164df0555d40cccf86ff9b1efbde3d4c00c261cfd39ee8fb22b342e9e6ca96890ccd91a7eb0c02af53955b1d8852185456b8698c4e04a4160de227#npm:8.48.1"],\ + ["@typescript-eslint/tsconfig-utils", "virtual:f7b81930cb164df0555d40cccf86ff9b1efbde3d4c00c261cfd39ee8fb22b342e9e6ca96890ccd91a7eb0c02af53955b1d8852185456b8698c4e04a4160de227#npm:8.48.1"],\ ["@typescript-eslint/types", "npm:8.48.1"],\ - ["@typescript-eslint/typescript-estree", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:8.48.1"],\ + ["@typescript-eslint/typescript-estree", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:8.48.1"],\ ["@typescript-eslint/visitor-keys", "npm:8.48.1"],\ - ["debug", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:4.4.3"],\ + ["debug", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:4.4.3"],\ ["minimatch", "npm:9.0.9"],\ ["semver", "npm:7.7.4"],\ ["tinyglobby", "npm:0.2.16"],\ - ["ts-api-utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:2.5.0"],\ + ["ts-api-utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:2.5.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -27361,17 +27327,17 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:8.48.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-utils-virtual-5c29994241/2/.yarn/berry/cache/@typescript-eslint-utils-npm-8.48.1-aec1d5feca-10.zip/node_modules/@typescript-eslint/utils/",\ + ["virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-utils-virtual-8081deba9d/2/.yarn/berry/cache/@typescript-eslint-utils-npm-8.48.1-aec1d5feca-10.zip/node_modules/@typescript-eslint/utils/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:5c299942413bb1b61d9fa84545f456297a834e64f49474bbe5547a6e2debca94cff618fa820fee2d06ea46e0b117de22676e8dcf173f7c90dff8f04fdd180ab7#npm:4.9.1"],\ + ["@eslint-community/eslint-utils", "virtual:8081deba9df2c1aac50e891f98c9b578b32ba09181bfa8a81efc40b8a0d2a426b886839b82f6348f64fc5423f3696a1f4af13e88c8eff427303b86f511d37cbc#npm:4.9.1"],\ ["@types/eslint", null],\ ["@types/typescript", null],\ ["@typescript-eslint/scope-manager", "npm:8.48.1"],\ ["@typescript-eslint/types", "npm:8.48.1"],\ - ["@typescript-eslint/typescript-estree", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:8.48.1"],\ - ["@typescript-eslint/utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:8.48.1"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["@typescript-eslint/typescript-estree", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:8.48.1"],\ + ["@typescript-eslint/utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:8.48.1"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -32381,7 +32347,7 @@ const RAW_RUNTIME_STATE = ["chalk", "npm:1.1.3"],\ ["convert-source-map", "npm:1.8.0"],\ ["core-js", "npm:1.2.7"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["detect-indent", "npm:3.0.1"],\ ["esutils", "npm:2.0.3"],\ ["fs-readdir-recursive", "npm:0.1.2"],\ @@ -32425,7 +32391,7 @@ const RAW_RUNTIME_STATE = ["babel-types", "npm:6.26.0"],\ ["babylon", "npm:6.18.0"],\ ["convert-source-map", "npm:1.8.0"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["json5", "npm:0.5.1"],\ ["lodash", "npm:4.17.21"],\ ["minimatch", "npm:3.0.4"],\ @@ -33570,7 +33536,7 @@ const RAW_RUNTIME_STATE = ["babel-traverse", "npm:6.26.0"],\ ["babel-types", "npm:6.26.0"],\ ["babylon", "npm:6.18.0"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["globals", "npm:9.18.0"],\ ["invariant", "npm:2.2.4"],\ ["lodash", "npm:4.17.21"]\ @@ -33755,7 +33721,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["bitsyntax", "npm:0.1.0"],\ ["buffer-more-ints", "npm:1.0.0"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["safe-buffer", "npm:5.1.2"]\ ],\ "linkType": "HARD"\ @@ -33796,7 +33762,7 @@ const RAW_RUNTIME_STATE = ["body-parser", "npm:1.19.0"],\ ["bytes", "npm:3.1.0"],\ ["content-type", "npm:1.0.4"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["depd", "npm:1.1.2"],\ ["http-errors", "npm:1.7.2"],\ ["iconv-lite", "npm:0.4.24"],\ @@ -33813,7 +33779,7 @@ const RAW_RUNTIME_STATE = ["body-parser", "npm:1.19.1"],\ ["bytes", "npm:3.1.1"],\ ["content-type", "npm:1.0.4"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["depd", "npm:1.1.2"],\ ["http-errors", "npm:1.8.1"],\ ["iconv-lite", "npm:0.4.24"],\ @@ -33830,7 +33796,7 @@ const RAW_RUNTIME_STATE = ["body-parser", "npm:1.19.2"],\ ["bytes", "npm:3.1.2"],\ ["content-type", "npm:1.0.4"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["depd", "npm:1.1.2"],\ ["http-errors", "npm:1.8.1"],\ ["iconv-lite", "npm:0.4.24"],\ @@ -35662,24 +35628,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9", {\ - "packageLocation": "./.yarn/__virtual__/debug-virtual-360f1eaee4/2/.yarn/berry/cache/debug-npm-2.6.9-7d4cb597dc-10.zip/node_modules/debug/",\ + ["virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:4.4.3", {\ + "packageLocation": "./.yarn/__virtual__/debug-virtual-7e851d372e/2/.yarn/berry/cache/debug-npm-4.4.3-0105c6123a-10.zip/node_modules/debug/",\ "packageDependencies": [\ ["@types/supports-color", null],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ - ["ms", "npm:2.0.0"],\ - ["supports-color", "npm:9.2.1"]\ - ],\ - "packagePeers": [\ - "@types/supports-color"\ - ],\ - "linkType": "HARD"\ - }],\ - ["virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:4.4.3", {\ - "packageLocation": "./.yarn/__virtual__/debug-virtual-b2e22c777d/2/.yarn/berry/cache/debug-npm-4.4.3-0105c6123a-10.zip/node_modules/debug/",\ - "packageDependencies": [\ - ["@types/supports-color", null],\ - ["debug", "virtual:1bafc86999d015a95b2eda01d4e9021129b7148039165677d99d2a6ba036ee381f67d7a80bce183a52cdcb37c9d1bc92abb9bb38599bab812079bd2112186b58#npm:4.4.3"],\ + ["debug", "virtual:1ccb636e480a75555a345ff06fc36d79d6fe60d99ef416ab5661d64da5ed2a4913a34345a320859705c68edbfbccc08d30de7f4299be70049ce6c56a0283e13d#npm:4.4.3"],\ ["ms", "npm:2.1.3"],\ ["supports-color", "npm:9.2.1"]\ ],\ @@ -35766,6 +35719,19 @@ const RAW_RUNTIME_STATE = "@types/supports-color"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9", {\ + "packageLocation": "./.yarn/__virtual__/debug-virtual-27347a06ed/2/.yarn/berry/cache/debug-npm-2.6.9-7d4cb597dc-10.zip/node_modules/debug/",\ + "packageDependencies": [\ + ["@types/supports-color", null],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ + ["ms", "npm:2.0.0"],\ + ["supports-color", "npm:9.2.1"]\ + ],\ + "packagePeers": [\ + "@types/supports-color"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["decamelize", [\ @@ -37000,15 +36966,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["esbuild-wasm", [\ - ["npm:0.23.1", {\ - "packageLocation": "../.yarn/berry/cache/esbuild-wasm-npm-0.23.1-bc60c5041a-10.zip/node_modules/esbuild-wasm/",\ - "packageDependencies": [\ - ["esbuild-wasm", "npm:0.23.1"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["escalade", [\ ["npm:3.1.1", {\ "packageLocation": "../.yarn/berry/cache/escalade-npm-3.1.1-e02da076aa-10.zip/node_modules/escalade/",\ @@ -37124,10 +37081,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-virtual-32340bd336/2/.yarn/berry/cache/eslint-npm-9.22.0-dd7abea6c7-10.zip/node_modules/eslint/",\ + ["virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-virtual-e785490421/2/.yarn/berry/cache/eslint-npm-9.22.0-dd7abea6c7-10.zip/node_modules/eslint/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:5c299942413bb1b61d9fa84545f456297a834e64f49474bbe5547a6e2debca94cff618fa820fee2d06ea46e0b117de22676e8dcf173f7c90dff8f04fdd180ab7#npm:4.9.1"],\ + ["@eslint-community/eslint-utils", "virtual:8081deba9df2c1aac50e891f98c9b578b32ba09181bfa8a81efc40b8a0d2a426b886839b82f6348f64fc5423f3696a1f4af13e88c8eff427303b86f511d37cbc#npm:4.9.1"],\ ["@eslint-community/regexpp", "npm:4.12.2"],\ ["@eslint/config-array", "npm:0.19.2"],\ ["@eslint/config-helpers", "npm:0.1.0"],\ @@ -37146,7 +37103,7 @@ const RAW_RUNTIME_STATE = ["cross-spawn", "npm:7.0.6"],\ ["debug", "virtual:85d5d916b6a745b2f8de0d4b1704b7084bdd4f7573c1ef5d1c877f2c866045a9b29fe2bc752d1b73e531c378a0518dd3f9fa187b31427fb9bacbe34b14715dde#npm:4.3.3"],\ ["escape-string-regexp", "npm:4.0.0"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["eslint-scope", "npm:8.4.0"],\ ["eslint-visitor-keys", "npm:4.2.1"],\ ["espree", "npm:10.4.0"],\ @@ -37181,12 +37138,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:29dddebf8aab550e9caa3e1d80dabef2f457c8705ed03dd8007d1a8e3973b3ab8d3b88ed86062a59581184039f4ce1655dac59d85fe59e97d6923ba46473978a#npm:0.5.1", {\ - "packageLocation": "./.yarn/__virtual__/eslint-compat-utils-virtual-d250b481b1/2/.yarn/berry/cache/eslint-compat-utils-npm-0.5.1-f1f8ade49a-10.zip/node_modules/eslint-compat-utils/",\ + ["virtual:93e5d7e1128e6bd4db24de24374a0bc8dae31cd0901c2369c08e4b86493de78fa7872090e8451d298c025266684e6a23d1dc9364d5d4222a81bd0956be123eb8#npm:0.5.1", {\ + "packageLocation": "./.yarn/__virtual__/eslint-compat-utils-virtual-f40b4e6374/2/.yarn/berry/cache/eslint-compat-utils-npm-0.5.1-f1f8ade49a-10.zip/node_modules/eslint-compat-utils/",\ "packageDependencies": [\ ["@types/eslint", null],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["eslint-compat-utils", "virtual:29dddebf8aab550e9caa3e1d80dabef2f457c8705ed03dd8007d1a8e3973b3ab8d3b88ed86062a59581184039f4ce1655dac59d85fe59e97d6923ba46473978a#npm:0.5.1"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["eslint-compat-utils", "virtual:93e5d7e1128e6bd4db24de24374a0bc8dae31cd0901c2369c08e4b86493de78fa7872090e8451d298c025266684e6a23d1dc9364d5d4222a81bd0956be123eb8#npm:0.5.1"],\ ["semver", "npm:7.7.4"]\ ],\ "packagePeers": [\ @@ -37226,21 +37183,21 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.12.1", {\ - "packageLocation": "./.yarn/__virtual__/eslint-module-utils-virtual-cee3c59c6d/2/.yarn/berry/cache/eslint-module-utils-npm-2.12.1-11995f0970-10.zip/node_modules/eslint-module-utils/",\ + ["virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.12.1", {\ + "packageLocation": "./.yarn/__virtual__/eslint-module-utils-virtual-98da5bc2c4/2/.yarn/berry/cache/eslint-module-utils-npm-2.12.1-11995f0970-10.zip/node_modules/eslint-module-utils/",\ "packageDependencies": [\ ["@types/eslint", null],\ ["@types/eslint-import-resolver-node", null],\ ["@types/eslint-import-resolver-typescript", null],\ ["@types/eslint-import-resolver-webpack", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1"],\ + ["@typescript-eslint/parser", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1"],\ ["debug", "virtual:2a426afc4b2eef43db12a540d29c2b5476640459bfcd5c24f86bb401cf8cce97e63bd81794d206a5643057e7f662643afd5ce3dfc4d4bfd8e706006c6309c5fa#npm:3.2.7"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["eslint-import-resolver-node", "npm:0.3.10"],\ ["eslint-import-resolver-typescript", null],\ ["eslint-import-resolver-webpack", null],\ - ["eslint-module-utils", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.12.1"]\ + ["eslint-module-utils", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.12.1"]\ ],\ "packagePeers": [\ "@types/eslint-import-resolver-node",\ @@ -37265,15 +37222,15 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:b1e44c6666d26e18c52fcb85c90f92597d06c0fef8c1a91cd09d5f8d373f2caaec661eb1bd42329237fb8f93f6aaf76d2054b0db4050d8d10fd3f140236f9b05#npm:7.8.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-es-x-virtual-29dddebf8a/2/.yarn/berry/cache/eslint-plugin-es-x-npm-7.8.0-8237bd972e-10.zip/node_modules/eslint-plugin-es-x/",\ + ["virtual:7bc423e6cd41eca0e25cb95770a8f8a97b1d7641a2e508ebb0c5bbc4f7d9dd5e23f472b63c0c9062a6ab001f1a57bf354fa5fd426381c7096c454ee27c1de90f#npm:7.8.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-es-x-virtual-93e5d7e112/2/.yarn/berry/cache/eslint-plugin-es-x-npm-7.8.0-8237bd972e-10.zip/node_modules/eslint-plugin-es-x/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:5c299942413bb1b61d9fa84545f456297a834e64f49474bbe5547a6e2debca94cff618fa820fee2d06ea46e0b117de22676e8dcf173f7c90dff8f04fdd180ab7#npm:4.9.1"],\ + ["@eslint-community/eslint-utils", "virtual:8081deba9df2c1aac50e891f98c9b578b32ba09181bfa8a81efc40b8a0d2a426b886839b82f6348f64fc5423f3696a1f4af13e88c8eff427303b86f511d37cbc#npm:4.9.1"],\ ["@eslint-community/regexpp", "npm:4.12.2"],\ ["@types/eslint", null],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["eslint-compat-utils", "virtual:29dddebf8aab550e9caa3e1d80dabef2f457c8705ed03dd8007d1a8e3973b3ab8d3b88ed86062a59581184039f4ce1655dac59d85fe59e97d6923ba46473978a#npm:0.5.1"],\ - ["eslint-plugin-es-x", "virtual:b1e44c6666d26e18c52fcb85c90f92597d06c0fef8c1a91cd09d5f8d373f2caaec661eb1bd42329237fb8f93f6aaf76d2054b0db4050d8d10fd3f140236f9b05#npm:7.8.0"]\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["eslint-compat-utils", "virtual:93e5d7e1128e6bd4db24de24374a0bc8dae31cd0901c2369c08e4b86493de78fa7872090e8451d298c025266684e6a23d1dc9364d5d4222a81bd0956be123eb8#npm:0.5.1"],\ + ["eslint-plugin-es-x", "virtual:7bc423e6cd41eca0e25cb95770a8f8a97b1d7641a2e508ebb0c5bbc4f7d9dd5e23f472b63c0c9062a6ab001f1a57bf354fa5fd426381c7096c454ee27c1de90f#npm:7.8.0"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -37290,21 +37247,21 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:2.22.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-import-virtual-0ca4f44df4/2/.yarn/berry/cache/eslint-plugin-import-npm-2.22.0-d731009c35-10.zip/node_modules/eslint-plugin-import/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:2.22.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-import-virtual-dcbf492026/2/.yarn/berry/cache/eslint-plugin-import-npm-2.22.0-d731009c35-10.zip/node_modules/eslint-plugin-import/",\ "packageDependencies": [\ ["@types/eslint", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:8.48.1"],\ + ["@typescript-eslint/parser", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:8.48.1"],\ ["array-includes", "npm:3.1.9"],\ ["array.prototype.flat", "npm:1.3.3"],\ ["contains-path", "npm:0.1.0"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["doctrine", "npm:1.5.0"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["eslint-import-resolver-node", "npm:0.3.10"],\ - ["eslint-module-utils", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.12.1"],\ - ["eslint-plugin-import", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:2.22.0"],\ + ["eslint-module-utils", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.12.1"],\ + ["eslint-plugin-import", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:2.22.0"],\ ["has", "npm:1.0.3"],\ ["minimatch", "npm:3.0.4"],\ ["object.values", "npm:1.2.1"],\ @@ -37329,8 +37286,8 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:6.10.2", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-jsx-a11y-virtual-b91b4695da/2/.yarn/berry/cache/eslint-plugin-jsx-a11y-npm-6.10.2-23afcd8d2e-10.zip/node_modules/eslint-plugin-jsx-a11y/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:6.10.2", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-jsx-a11y-virtual-3caa5df95a/2/.yarn/berry/cache/eslint-plugin-jsx-a11y-npm-6.10.2-23afcd8d2e-10.zip/node_modules/eslint-plugin-jsx-a11y/",\ "packageDependencies": [\ ["@types/eslint", null],\ ["aria-query", "npm:5.3.2"],\ @@ -37341,8 +37298,8 @@ const RAW_RUNTIME_STATE = ["axobject-query", "npm:4.1.0"],\ ["damerau-levenshtein", "npm:1.0.8"],\ ["emoji-regex", "npm:9.2.2"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["eslint-plugin-jsx-a11y", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:6.10.2"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["eslint-plugin-jsx-a11y", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:6.10.2"],\ ["hasown", "npm:2.0.3"],\ ["jsx-ast-utils", "npm:3.3.5"],\ ["language-tags", "npm:1.0.9"],\ @@ -37366,21 +37323,21 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:17.23.1", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-n-virtual-b1e44c6666/2/.yarn/berry/cache/eslint-plugin-n-npm-17.23.1-0a973aa61c-10.zip/node_modules/eslint-plugin-n/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:17.23.1", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-n-virtual-7bc423e6cd/2/.yarn/berry/cache/eslint-plugin-n-npm-17.23.1-0a973aa61c-10.zip/node_modules/eslint-plugin-n/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:5c299942413bb1b61d9fa84545f456297a834e64f49474bbe5547a6e2debca94cff618fa820fee2d06ea46e0b117de22676e8dcf173f7c90dff8f04fdd180ab7#npm:4.9.1"],\ + ["@eslint-community/eslint-utils", "virtual:8081deba9df2c1aac50e891f98c9b578b32ba09181bfa8a81efc40b8a0d2a426b886839b82f6348f64fc5423f3696a1f4af13e88c8eff427303b86f511d37cbc#npm:4.9.1"],\ ["@types/eslint", null],\ ["enhanced-resolve", "npm:5.20.1"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["eslint-plugin-es-x", "virtual:b1e44c6666d26e18c52fcb85c90f92597d06c0fef8c1a91cd09d5f8d373f2caaec661eb1bd42329237fb8f93f6aaf76d2054b0db4050d8d10fd3f140236f9b05#npm:7.8.0"],\ - ["eslint-plugin-n", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:17.23.1"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["eslint-plugin-es-x", "virtual:7bc423e6cd41eca0e25cb95770a8f8a97b1d7641a2e508ebb0c5bbc4f7d9dd5e23f472b63c0c9062a6ab001f1a57bf354fa5fd426381c7096c454ee27c1de90f#npm:7.8.0"],\ + ["eslint-plugin-n", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:17.23.1"],\ ["get-tsconfig", "npm:4.14.0"],\ ["globals", "npm:15.15.0"],\ ["globrex", "npm:0.1.2"],\ ["ignore", "npm:5.3.2"],\ ["semver", "npm:7.7.4"],\ - ["ts-declaration-location", "virtual:b1e44c6666d26e18c52fcb85c90f92597d06c0fef8c1a91cd09d5f8d373f2caaec661eb1bd42329237fb8f93f6aaf76d2054b0db4050d8d10fd3f140236f9b05#npm:1.0.7"]\ + ["ts-declaration-location", "virtual:7bc423e6cd41eca0e25cb95770a8f8a97b1d7641a2e508ebb0c5bbc4f7d9dd5e23f472b63c0c9062a6ab001f1a57bf354fa5fd426381c7096c454ee27c1de90f#npm:1.0.7"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -37397,15 +37354,15 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:5.5.4", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-prettier-virtual-8d4087f843/2/.yarn/berry/cache/eslint-plugin-prettier-npm-5.5.4-401c52477f-10.zip/node_modules/eslint-plugin-prettier/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:5.5.4", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-prettier-virtual-7b58ea0bbb/2/.yarn/berry/cache/eslint-plugin-prettier-npm-5.5.4-401c52477f-10.zip/node_modules/eslint-plugin-prettier/",\ "packageDependencies": [\ ["@types/eslint", null],\ ["@types/eslint-config-prettier", null],\ ["@types/prettier", null],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ ["eslint-config-prettier", null],\ - ["eslint-plugin-prettier", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:5.5.4"],\ + ["eslint-plugin-prettier", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:5.5.4"],\ ["prettier", "npm:3.5.3"],\ ["prettier-linter-helpers", "npm:1.0.1"],\ ["synckit", "npm:0.11.12"]\ @@ -37429,8 +37386,8 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:7.37.5", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-virtual-41e51e9c02/2/.yarn/berry/cache/eslint-plugin-react-npm-7.37.5-d03f6b6543-10.zip/node_modules/eslint-plugin-react/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:7.37.5", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-virtual-28920e3f43/2/.yarn/berry/cache/eslint-plugin-react-npm-7.37.5-d03f6b6543-10.zip/node_modules/eslint-plugin-react/",\ "packageDependencies": [\ ["@types/eslint", null],\ ["array-includes", "npm:3.1.9"],\ @@ -37439,8 +37396,8 @@ const RAW_RUNTIME_STATE = ["array.prototype.tosorted", "npm:1.1.4"],\ ["doctrine", "npm:2.1.0"],\ ["es-iterator-helpers", "npm:1.3.2"],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["eslint-plugin-react", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:7.37.5"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["eslint-plugin-react", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:7.37.5"],\ ["estraverse", "npm:5.3.0"],\ ["hasown", "npm:2.0.3"],\ ["jsx-ast-utils", "npm:3.3.5"],\ @@ -37469,18 +37426,18 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:19.1.0-rc.2", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-compiler-virtual-0c81a81438/2/.yarn/berry/cache/eslint-plugin-react-compiler-npm-19.1.0-rc.2-2f779f2f58-10.zip/node_modules/eslint-plugin-react-compiler/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:19.1.0-rc.2", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-compiler-virtual-332c18debc/2/.yarn/berry/cache/eslint-plugin-react-compiler-npm-19.1.0-rc.2-2f779f2f58-10.zip/node_modules/eslint-plugin-react-compiler/",\ "packageDependencies": [\ ["@babel/core", "npm:7.29.0"],\ ["@babel/parser", "npm:7.29.2"],\ - ["@babel/plugin-proposal-private-methods", "virtual:0c81a81438f35c51d2bd45f4ae668cf58929f90d5dd159169a011463c13521835df33d735372630c540f7ce1c142082c9aab3550380af7782d0732f44961754f#npm:7.18.6"],\ + ["@babel/plugin-proposal-private-methods", "virtual:332c18debc4f0e6cd174c53a66b02d1b625c5fb8ce0da3b370180c8cfaad08ae63c0404c903c7fc2b2518883d9668c4a36174b29f5830b20561964cca42fefbc#npm:7.18.6"],\ ["@types/eslint", null],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["eslint-plugin-react-compiler", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:19.1.0-rc.2"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["eslint-plugin-react-compiler", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:19.1.0-rc.2"],\ ["hermes-parser", "npm:0.25.1"],\ ["zod", "npm:3.25.76"],\ - ["zod-validation-error", "virtual:0c81a81438f35c51d2bd45f4ae668cf58929f90d5dd159169a011463c13521835df33d735372630c540f7ce1c142082c9aab3550380af7782d0732f44961754f#npm:3.5.4"]\ + ["zod-validation-error", "virtual:332c18debc4f0e6cd174c53a66b02d1b625c5fb8ce0da3b370180c8cfaad08ae63c0404c903c7fc2b2518883d9668c4a36174b29f5830b20561964cca42fefbc#npm:3.5.4"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -37497,17 +37454,17 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:7.0.1", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-hooks-virtual-e56a9aa2a2/2/.yarn/berry/cache/eslint-plugin-react-hooks-npm-7.0.1-218b8cae26-10.zip/node_modules/eslint-plugin-react-hooks/",\ + ["virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:7.0.1", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-hooks-virtual-be54fa8b02/2/.yarn/berry/cache/eslint-plugin-react-hooks-npm-7.0.1-218b8cae26-10.zip/node_modules/eslint-plugin-react-hooks/",\ "packageDependencies": [\ ["@babel/core", "npm:7.29.0"],\ ["@babel/parser", "npm:7.29.2"],\ ["@types/eslint", null],\ - ["eslint", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.22.0"],\ - ["eslint-plugin-react-hooks", "virtual:34c04129f7945563d5a84ae0e779f2215fc30fb48996da125ee59f2a24fe38b73f1c150e262fbdb52e2741475a2c7cbcf8909341c83baa66eece5e1f62091399#npm:7.0.1"],\ + ["eslint", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.22.0"],\ + ["eslint-plugin-react-hooks", "virtual:ba1c2dcb7268d88eba8bbcb98a8af78cf0b1c1880400c1b8df0056a89d8b2f6d35deca916595bd86dcb7fd095820d9ab40a18122d5f57b6243a09d9db9586d5e#npm:7.0.1"],\ ["hermes-parser", "npm:0.25.1"],\ ["zod", "npm:4.3.6"],\ - ["zod-validation-error", "virtual:e56a9aa2a21b04b426f7c3ac94f527b4a35ae919b58920a37d5d6240b72ba821bf168ba553fdff27f8128f63f93ad133761793e82a6a832d38b592c085d0b2c2#npm:4.0.2"]\ + ["zod-validation-error", "virtual:be54fa8b0251d572ffdb6a93778be5d3070c21bb9fb50b6eeaf8138caee80b2fd7c9f175d931b4eb6ba40fb63578ce91556535ef714f580da80896c41326196f#npm:4.0.2"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -37853,7 +37810,7 @@ const RAW_RUNTIME_STATE = ["npm:2.1.4", {\ "packageLocation": "../.yarn/berry/cache/expand-brackets-npm-2.1.4-392c703c48-10.zip/node_modules/expand-brackets/",\ "packageDependencies": [\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["define-property", "npm:0.2.5"],\ ["expand-brackets", "npm:2.1.4"],\ ["extend-shallow", "npm:2.0.1"],\ @@ -37899,7 +37856,7 @@ const RAW_RUNTIME_STATE = ["content-type", "npm:1.0.4"],\ ["cookie", "npm:0.4.1"],\ ["cookie-signature", "npm:1.0.6"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["depd", "npm:1.1.2"],\ ["encodeurl", "npm:1.0.2"],\ ["escape-html", "npm:1.0.3"],\ @@ -37936,7 +37893,7 @@ const RAW_RUNTIME_STATE = ["content-type", "npm:1.0.4"],\ ["cookie", "npm:0.4.2"],\ ["cookie-signature", "npm:1.0.6"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["depd", "npm:1.1.2"],\ ["encodeurl", "npm:1.0.2"],\ ["escape-html", "npm:1.0.3"],\ @@ -37970,7 +37927,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["cookie", "npm:0.4.0"],\ ["cookie-signature", "npm:1.0.6"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["depd", "npm:2.0.0"],\ ["express-session", "npm:1.17.0"],\ ["on-headers", "npm:1.0.2"],\ @@ -38443,7 +38400,7 @@ const RAW_RUNTIME_STATE = ["npm:1.1.2", {\ "packageLocation": "../.yarn/berry/cache/finalhandler-npm-1.1.2-55a75d6b53-10.zip/node_modules/finalhandler/",\ "packageDependencies": [\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["encodeurl", "npm:1.0.2"],\ ["escape-html", "npm:1.0.3"],\ ["finalhandler", "npm:1.1.2"],\ @@ -45117,13 +45074,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:2.1.0", {\ - "packageLocation": "./.yarn/__virtual__/node-loader-virtual-2ddbbd4149/2/.yarn/berry/cache/node-loader-npm-2.1.0-5af18c0afb-10.zip/node_modules/node-loader/",\ + ["virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:2.1.0", {\ + "packageLocation": "./.yarn/__virtual__/node-loader-virtual-9bcd0e83cf/2/.yarn/berry/cache/node-loader-npm-2.1.0-5af18c0afb-10.zip/node_modules/node-loader/",\ "packageDependencies": [\ ["@types/webpack", null],\ ["loader-utils", "npm:2.0.4"],\ - ["node-loader", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:2.1.0"],\ - ["webpack", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:5.98.0"]\ + ["node-loader", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:2.1.0"],\ + ["webpack", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:5.98.0"]\ ],\ "packagePeers": [\ "@types/webpack",\ @@ -48877,16 +48834,12 @@ const RAW_RUNTIME_STATE = ["workspace:.", {\ "packageLocation": "./",\ "packageDependencies": [\ - ["@atls/code-runtime", "npm:2.1.30"],\ + ["@atls/code-runtime", "npm:2.1.32"],\ ["@jest/core", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:27.4.7"],\ ["@types/eslint", "npm:8.4.1"],\ ["@types/jest", "npm:26.0.23"],\ ["@types/node", "npm:22.13.10"],\ ["@types/react", "npm:17.0.8"],\ - ["esbuild", [\ - "esbuild-wasm",\ - "npm:0.23.1"\ - ]],\ ["eslint", "npm:8.4.1"],\ ["husky", "npm:5.2.0"],\ ["root-workspace-0b6124", "workspace:."],\ @@ -49221,7 +49174,7 @@ const RAW_RUNTIME_STATE = ["npm:0.17.2", {\ "packageLocation": "../.yarn/berry/cache/send-npm-0.17.2-73a3dbeba6-10.zip/node_modules/send/",\ "packageDependencies": [\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["depd", "npm:1.1.2"],\ ["destroy", "npm:1.0.4"],\ ["encodeurl", "npm:1.0.2"],\ @@ -49772,7 +49725,7 @@ const RAW_RUNTIME_STATE = "packageLocation": "../.yarn/berry/cache/snapdragon-npm-0.8.2-2bcc47d217-10.zip/node_modules/snapdragon/",\ "packageDependencies": [\ ["base", "npm:0.11.2"],\ - ["debug", "virtual:0ca4f44df49c088bc88c9cf7aa4f5e38e4928e6fe660ff9b2c0aaa66c105817f9b599c7a18da580420aac51f28ea1bcb690f086679931e3381c46faafce7fd3b#npm:2.6.9"],\ + ["debug", "virtual:dcbf4920267a8c473db7e63e1f0bd09a13a1f427f3f2d2fa7f0d8abf20f0817bbfacc88b49105a5aab78af451bc9a443c14818ff15c677a9782e344765d36160#npm:2.6.9"],\ ["define-property", "npm:0.2.5"],\ ["extend-shallow", "npm:2.0.1"],\ ["map-cache", "npm:0.2.2"],\ @@ -51011,8 +50964,8 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:b08a6563ab931a19c1845715fcadbffed51f5b7b79706a000962b9ff810ab4afd2a3cb58c4d8fe1124737c0b16345537112b10e7457c9e2c87d99fc1892b2d2b#npm:5.4.0", {\ - "packageLocation": "./.yarn/__virtual__/terser-webpack-plugin-virtual-39d726cc1c/2/.yarn/berry/cache/terser-webpack-plugin-npm-5.4.0-4b0b171795-10.zip/node_modules/terser-webpack-plugin/",\ + ["virtual:9ad4f774ff0c0dd73a771b71352cef1dd4c73ad9edd9553798cec42d54748e599095da71cd9ed60ca7b3fb026a39eba695c4c61e1d0afec3378d6977fa226fe0#npm:5.4.0", {\ + "packageLocation": "./.yarn/__virtual__/terser-webpack-plugin-virtual-63f52ba37a/2/.yarn/berry/cache/terser-webpack-plugin-npm-5.4.0-4b0b171795-10.zip/node_modules/terser-webpack-plugin/",\ "packageDependencies": [\ ["@jridgewell/trace-mapping", "npm:0.3.31"],\ ["@swc/core", null],\ @@ -51024,9 +50977,9 @@ const RAW_RUNTIME_STATE = ["jest-worker", "npm:27.5.1"],\ ["schema-utils", "npm:4.3.3"],\ ["terser", "npm:5.46.1"],\ - ["terser-webpack-plugin", "virtual:b08a6563ab931a19c1845715fcadbffed51f5b7b79706a000962b9ff810ab4afd2a3cb58c4d8fe1124737c0b16345537112b10e7457c9e2c87d99fc1892b2d2b#npm:5.4.0"],\ + ["terser-webpack-plugin", "virtual:9ad4f774ff0c0dd73a771b71352cef1dd4c73ad9edd9553798cec42d54748e599095da71cd9ed60ca7b3fb026a39eba695c4c61e1d0afec3378d6977fa226fe0#npm:5.4.0"],\ ["uglify-js", null],\ - ["webpack", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:5.98.0"]\ + ["webpack", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:5.98.0"]\ ],\ "packagePeers": [\ "@swc/core",\ @@ -51428,11 +51381,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:2.5.0", {\ - "packageLocation": "./.yarn/__virtual__/ts-api-utils-virtual-968d33ea92/2/.yarn/berry/cache/ts-api-utils-npm-2.5.0-6bde2b2eb9-10.zip/node_modules/ts-api-utils/",\ + ["virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:2.5.0", {\ + "packageLocation": "./.yarn/__virtual__/ts-api-utils-virtual-c08be6de50/2/.yarn/berry/cache/ts-api-utils-npm-2.5.0-6bde2b2eb9-10.zip/node_modules/ts-api-utils/",\ "packageDependencies": [\ ["@types/typescript", null],\ - ["ts-api-utils", "virtual:addb73cb1b6110fbb3e9d0e2e6d3e3436ca47b416ba03313a6502b2bbe93c31922f696003d28f4ee67a4efc050527e1504a9514d8f3446e8da9a236ac3a1cb2b#npm:2.5.0"],\ + ["ts-api-utils", "virtual:212e8891d28681f6ee14ee3eb712ec6c24cb9054cf647ca9540320d3dc87d31816be08340a72367d4a2ef92d9793aceb38a95232e9ec8a9ab61eba7651ef96ac#npm:2.5.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -51450,12 +51403,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:b1e44c6666d26e18c52fcb85c90f92597d06c0fef8c1a91cd09d5f8d373f2caaec661eb1bd42329237fb8f93f6aaf76d2054b0db4050d8d10fd3f140236f9b05#npm:1.0.7", {\ - "packageLocation": "./.yarn/__virtual__/ts-declaration-location-virtual-85ecde6bad/2/.yarn/berry/cache/ts-declaration-location-npm-1.0.7-804f747b5c-10.zip/node_modules/ts-declaration-location/",\ + ["virtual:7bc423e6cd41eca0e25cb95770a8f8a97b1d7641a2e508ebb0c5bbc4f7d9dd5e23f472b63c0c9062a6ab001f1a57bf354fa5fd426381c7096c454ee27c1de90f#npm:1.0.7", {\ + "packageLocation": "./.yarn/__virtual__/ts-declaration-location-virtual-ce9d7911db/2/.yarn/berry/cache/ts-declaration-location-npm-1.0.7-804f747b5c-10.zip/node_modules/ts-declaration-location/",\ "packageDependencies": [\ ["@types/typescript", null],\ ["picomatch", "npm:4.0.4"],\ - ["ts-declaration-location", "virtual:b1e44c6666d26e18c52fcb85c90f92597d06c0fef8c1a91cd09d5f8d373f2caaec661eb1bd42329237fb8f93f6aaf76d2054b0db4050d8d10fd3f140236f9b05#npm:1.0.7"],\ + ["ts-declaration-location", "virtual:7bc423e6cd41eca0e25cb95770a8f8a97b1d7641a2e508ebb0c5bbc4f7d9dd5e23f472b63c0c9062a6ab001f1a57bf354fa5fd426381c7096c454ee27c1de90f#npm:1.0.7"],\ ["typescript", null]\ ],\ "packagePeers": [\ @@ -51499,8 +51452,8 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.5.2", {\ - "packageLocation": "./.yarn/__virtual__/ts-loader-virtual-ea8450b5e1/2/.yarn/berry/cache/ts-loader-npm-9.5.2-15fe2fd8a6-10.zip/node_modules/ts-loader/",\ + ["virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.5.2", {\ + "packageLocation": "./.yarn/__virtual__/ts-loader-virtual-ff590c0ec6/2/.yarn/berry/cache/ts-loader-npm-9.5.2-15fe2fd8a6-10.zip/node_modules/ts-loader/",\ "packageDependencies": [\ ["@types/typescript", null],\ ["@types/webpack", null],\ @@ -51509,9 +51462,9 @@ const RAW_RUNTIME_STATE = ["micromatch", "npm:4.0.2"],\ ["semver", "npm:7.3.5"],\ ["source-map", "npm:0.7.6"],\ - ["ts-loader", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:9.5.2"],\ + ["ts-loader", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:9.5.2"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"],\ - ["webpack", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:5.98.0"]\ + ["webpack", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:5.98.0"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -51542,13 +51495,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["npm:10.9.2", {\ - "packageLocation": "../.yarn/berry/cache/ts-node-npm-10.9.2-3f3890b9ac-10.zip/node_modules/ts-node/",\ - "packageDependencies": [\ - ["ts-node", "npm:10.9.2"]\ - ],\ - "linkType": "SOFT"\ - }],\ ["npm:8.10.2", {\ "packageLocation": "../.yarn/berry/cache/ts-node-npm-8.10.2-b4fe5a56b0-10.zip/node_modules/ts-node/",\ "packageDependencies": [\ @@ -51635,42 +51581,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:10.9.2", {\ - "packageLocation": "./.yarn/__virtual__/ts-node-virtual-1135d3c034/2/.yarn/berry/cache/ts-node-npm-10.9.2-3f3890b9ac-10.zip/node_modules/ts-node/",\ - "packageDependencies": [\ - ["@cspotcode/source-map-support", "npm:0.8.1"],\ - ["@swc/core", null],\ - ["@swc/wasm", null],\ - ["@tsconfig/node10", "npm:1.0.8"],\ - ["@tsconfig/node12", "npm:1.0.9"],\ - ["@tsconfig/node14", "npm:1.0.1"],\ - ["@tsconfig/node16", "npm:1.0.2"],\ - ["@types/node", null],\ - ["@types/swc__core", null],\ - ["@types/swc__wasm", null],\ - ["@types/typescript", null],\ - ["acorn", "npm:8.7.0"],\ - ["acorn-walk", "npm:8.2.0"],\ - ["arg", "npm:4.1.3"],\ - ["create-require", "npm:1.1.1"],\ - ["diff", "npm:4.0.2"],\ - ["make-error", "npm:1.3.6"],\ - ["ts-node", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:10.9.2"],\ - ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"],\ - ["v8-compile-cache-lib", "npm:3.0.1"],\ - ["yn", "npm:3.1.1"]\ - ],\ - "packagePeers": [\ - "@swc/core",\ - "@swc/wasm",\ - "@types/node",\ - "@types/swc__core",\ - "@types/swc__wasm",\ - "@types/typescript",\ - "typescript"\ - ],\ - "linkType": "HARD"\ - }],\ ["virtual:facf602d67d3a47a69fde649069c8ea8a55ca154f018eb70d1cffe46b142bea432e2bb2de4bc47d81d2900c54aade279ddb84c097b3372f591736a2cf077aeef#npm:8.5.2", {\ "packageLocation": "./.yarn/__virtual__/ts-node-virtual-09e72740a0/2/.yarn/berry/cache/ts-node-npm-8.5.2-641007bc8f-10.zip/node_modules/ts-node/",\ "packageDependencies": [\ @@ -52774,13 +52684,6 @@ const RAW_RUNTIME_STATE = ["v8-compile-cache-lib", "npm:3.0.0"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:3.0.1", {\ - "packageLocation": "../.yarn/berry/cache/v8-compile-cache-lib-npm-3.0.1-4886071ece-10.zip/node_modules/v8-compile-cache-lib/",\ - "packageDependencies": [\ - ["v8-compile-cache-lib", "npm:3.0.1"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["v8-to-istanbul", [\ @@ -53048,8 +52951,8 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:5.98.0", {\ - "packageLocation": "./.yarn/__virtual__/webpack-virtual-b08a6563ab/2/.yarn/berry/cache/webpack-npm-5.98.0-4e921faeb6-10.zip/node_modules/webpack/",\ + ["virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:5.98.0", {\ + "packageLocation": "./.yarn/__virtual__/webpack-virtual-9ad4f774ff/2/.yarn/berry/cache/webpack-npm-5.98.0-4e921faeb6-10.zip/node_modules/webpack/",\ "packageDependencies": [\ ["@types/eslint-scope", "npm:3.7.7"],\ ["@types/estree", "npm:1.0.8"],\ @@ -53073,9 +52976,9 @@ const RAW_RUNTIME_STATE = ["neo-async", "npm:2.6.2"],\ ["schema-utils", "npm:4.3.3"],\ ["tapable", "npm:2.2.0"],\ - ["terser-webpack-plugin", "virtual:b08a6563ab931a19c1845715fcadbffed51f5b7b79706a000962b9ff810ab4afd2a3cb58c4d8fe1124737c0b16345537112b10e7457c9e2c87d99fc1892b2d2b#npm:5.4.0"],\ + ["terser-webpack-plugin", "virtual:9ad4f774ff0c0dd73a771b71352cef1dd4c73ad9edd9553798cec42d54748e599095da71cd9ed60ca7b3fb026a39eba695c4c61e1d0afec3378d6977fa226fe0#npm:5.4.0"],\ ["watchpack", "npm:2.5.1"],\ - ["webpack", "virtual:e12b58a18bf05152069c040359a4eeaf1478046fd0773ba8b8b6010f74e1ecfe8c9a47d254d3a61d4232b1b08c7d0e452bcc126d76d3a98ec67d5f6d2f72b5d8#npm:5.98.0"],\ + ["webpack", "virtual:79415ff4dcc167a43e4c6821048d155006416fd243655ed519d2eedf69ec0a66262774d12c334d645e2084da0dde86a3b65c394af9ba0891463e6cc87d2b358a#npm:5.98.0"],\ ["webpack-cli", null],\ ["webpack-sources", "npm:3.2.3"]\ ],\ @@ -53841,12 +53744,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:0c81a81438f35c51d2bd45f4ae668cf58929f90d5dd159169a011463c13521835df33d735372630c540f7ce1c142082c9aab3550380af7782d0732f44961754f#npm:3.5.4", {\ - "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-6fac47fd8a/2/.yarn/berry/cache/zod-validation-error-npm-3.5.4-d39f0404cd-10.zip/node_modules/zod-validation-error/",\ + ["virtual:332c18debc4f0e6cd174c53a66b02d1b625c5fb8ce0da3b370180c8cfaad08ae63c0404c903c7fc2b2518883d9668c4a36174b29f5830b20561964cca42fefbc#npm:3.5.4", {\ + "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-20f4aa10e8/2/.yarn/berry/cache/zod-validation-error-npm-3.5.4-d39f0404cd-10.zip/node_modules/zod-validation-error/",\ "packageDependencies": [\ ["@types/zod", null],\ ["zod", "npm:3.25.76"],\ - ["zod-validation-error", "virtual:0c81a81438f35c51d2bd45f4ae668cf58929f90d5dd159169a011463c13521835df33d735372630c540f7ce1c142082c9aab3550380af7782d0732f44961754f#npm:3.5.4"]\ + ["zod-validation-error", "virtual:332c18debc4f0e6cd174c53a66b02d1b625c5fb8ce0da3b370180c8cfaad08ae63c0404c903c7fc2b2518883d9668c4a36174b29f5830b20561964cca42fefbc#npm:3.5.4"]\ ],\ "packagePeers": [\ "@types/zod",\ @@ -53854,12 +53757,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:e56a9aa2a21b04b426f7c3ac94f527b4a35ae919b58920a37d5d6240b72ba821bf168ba553fdff27f8128f63f93ad133761793e82a6a832d38b592c085d0b2c2#npm:4.0.2", {\ - "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-dd25e53996/2/.yarn/berry/cache/zod-validation-error-npm-4.0.2-1b963160c8-10.zip/node_modules/zod-validation-error/",\ + ["virtual:be54fa8b0251d572ffdb6a93778be5d3070c21bb9fb50b6eeaf8138caee80b2fd7c9f175d931b4eb6ba40fb63578ce91556535ef714f580da80896c41326196f#npm:4.0.2", {\ + "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-73d20c17ba/2/.yarn/berry/cache/zod-validation-error-npm-4.0.2-1b963160c8-10.zip/node_modules/zod-validation-error/",\ "packageDependencies": [\ ["@types/zod", null],\ ["zod", "npm:4.3.6"],\ - ["zod-validation-error", "virtual:e56a9aa2a21b04b426f7c3ac94f527b4a35ae919b58920a37d5d6240b72ba821bf168ba553fdff27f8128f63f93ad133761793e82a6a832d38b592c085d0b2c2#npm:4.0.2"]\ + ["zod-validation-error", "virtual:be54fa8b0251d572ffdb6a93778be5d3070c21bb9fb50b6eeaf8138caee80b2fd7c9f175d931b4eb6ba40fb63578ce91556535ef714f580da80896c41326196f#npm:4.0.2"]\ ],\ "packagePeers": [\ "@types/zod",\ diff --git a/.pnp.loader.mjs b/.pnp.loader.mjs index 2d351c202..45359e90c 100644 --- a/.pnp.loader.mjs +++ b/.pnp.loader.mjs @@ -1,40 +1,31 @@ -import fs$1 from 'node:fs'; -import { fileURLToPath as fileURLToPath$1, pathToFileURL as pathToFileURL$1 } from 'node:url'; +/* eslint-disable */ +// @ts-nocheck + import fs from 'fs'; -import path$1 from 'path'; -import require$$1 from 'util'; -import require$$1$1 from 'events'; -import require$$0$1, { createHash } from 'crypto'; -import require$$1$2, { EOL } from 'os'; -import require$$1$3 from 'buffer'; -import require$$2, { fileURLToPath, pathToFileURL } from 'url'; -import require$$0$2 from 'readline'; -import { createRequire } from 'node:module'; -import { extname } from 'node:path'; -import esmModule, { createRequire as createRequire$1, isBuiltin } from 'module'; +import { URL as URL$1, fileURLToPath, pathToFileURL } from 'url'; +import path from 'path'; +import { createHash } from 'crypto'; +import { EOL } from 'os'; +import esmModule, { createRequire, isBuiltin } from 'module'; import assert from 'assert'; -const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10)); -const WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13; -const SUPPORTS_IMPORT_ATTRIBUTES = major >= 21 || major === 20 && minor >= 10 || major === 18 && minor >= 20; -const SUPPORTS_IMPORT_ATTRIBUTES_ONLY = major >= 22; -const HAS_BROKEN_FSTAT_FOR_ZIP_FDS = major > 25 || major === 25 && minor >= 7; +const SAFE_TIME = 456789e3; const PortablePath = { root: `/`, dot: `.`, parent: `..` }; -const npath = Object.create(path$1); -const ppath = Object.create(path$1.posix); +const npath = Object.create(path); +const ppath = Object.create(path.posix); npath.cwd = () => process.cwd(); ppath.cwd = process.platform === `win32` ? () => toPortablePath(process.cwd()) : process.cwd; if (process.platform === `win32`) { ppath.resolve = (...segments) => { if (segments.length > 0 && ppath.isAbsolute(segments[0])) { - return path$1.posix.resolve(...segments); + return path.posix.resolve(...segments); } else { - return path$1.posix.resolve(ppath.cwd(), ...segments); + return path.posix.resolve(ppath.cwd(), ...segments); } }; } @@ -84,4956 +75,6 @@ function convertPath(targetPathUtils, sourcePath) { return targetPathUtils === npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath); } -function readPackageScope(checkPath) { - const rootSeparatorIndex = checkPath.indexOf(npath.sep); - let separatorIndex; - do { - separatorIndex = checkPath.lastIndexOf(npath.sep); - checkPath = checkPath.slice(0, separatorIndex); - if (checkPath.endsWith(`${npath.sep}node_modules`)) - return false; - const pjson = readPackage(checkPath + npath.sep); - if (pjson) { - return { - data: pjson, - path: checkPath - }; - } - } while (separatorIndex > rootSeparatorIndex); - return false; -} -function readPackage(requestPath) { - const jsonPath = npath.resolve(requestPath, `package.json`); - if (!fs.existsSync(jsonPath)) - return null; - return JSON.parse(fs.readFileSync(jsonPath, `utf8`)); -} - -async function tryReadFile$1(path2) { - try { - return await fs.promises.readFile(path2, `utf8`); - } catch (error) { - if (error.code === `ENOENT`) - return null; - throw error; - } -} -function tryParseURL(str, base) { - try { - return new URL(str, base); - } catch { - return null; - } -} -let entrypointPath = null; -function setEntrypointPath(file) { - entrypointPath = file; -} -function getFileFormat$1(filepath) { - var _a, _b; - const ext = path$1.extname(filepath); - switch (ext) { - case `.mjs`: { - return `module`; - } - case `.cjs`: { - return `commonjs`; - } - case `.wasm`: { - throw new Error( - `Unknown file extension ".wasm" for ${filepath}` - ); - } - case `.json`: { - return `json`; - } - case `.js`: { - const pkg = readPackageScope(filepath); - if (!pkg) - return `commonjs`; - return (_a = pkg.data.type) != null ? _a : `commonjs`; - } - default: { - if (entrypointPath !== filepath) - return null; - const pkg = readPackageScope(filepath); - if (!pkg) - return `commonjs`; - if (pkg.data.type === `module`) - return null; - return (_b = pkg.data.type) != null ? _b : `commonjs`; - } - } -} - -function getDefaultExportFromNamespaceIfPresent (n) { - return n && Object.prototype.hasOwnProperty.call(n, 'default') ? n['default'] : n; -} - -var lib = {}; - -/****************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -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. -***************************************************************************** */ -/* global Reflect, Promise, SuppressedError, Symbol, Iterator */ - -var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); -}; - -function __extends(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} - -var __assign = function() { - __assign = Object.assign || function __assign(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); -}; - -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 __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { - function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; } - var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; - var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; - var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); - var _, done = false; - for (var i = decorators.length - 1; i >= 0; i--) { - var context = {}; - for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p]; - for (var p in contextIn.access) context.access[p] = contextIn.access[p]; - context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); }; - var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); - if (kind === "accessor") { - if (result === void 0) continue; - if (result === null || typeof result !== "object") throw new TypeError("Object expected"); - if (_ = accept(result.get)) descriptor.get = _; - if (_ = accept(result.set)) descriptor.set = _; - if (_ = accept(result.init)) initializers.unshift(_); - } - else if (_ = accept(result)) { - if (kind === "field") initializers.unshift(_); - else descriptor[key] = _; - } - } - if (target) Object.defineProperty(target, contextIn.name, descriptor); - done = true; -} -function __runInitializers(thisArg, initializers, value) { - var useValue = arguments.length > 2; - for (var i = 0; i < initializers.length; i++) { - value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); - } - return useValue ? value : void 0; -} -function __propKey(x) { - return typeof x === "symbol" ? x : "".concat(x); -} -function __setFunctionName(f, name, prefix) { - if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : ""; - return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); -} -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 = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype); - return g.next = verb(0), g["throw"] = verb(1), g["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 (g && (g = 0, op[0] && (_ = 0)), _) 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 __createBinding = Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -}); - -function __exportStar(m, o) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, 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: error }; } - finally { - try { - if (r && !r.done && (m = i["return"])) m.call(i); - } - finally { if (e) throw e.error; } - } - return ar; -} - -/** @deprecated */ -function __spread() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read(arguments[i])); - return ar; -} - -/** @deprecated */ -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 __spreadArray(to, from, pack) { - if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { - if (ar || !(i in from)) { - if (!ar) ar = Array.prototype.slice.call(from, 0, i); - ar[i] = from[i]; - } - } - return to.concat(ar || Array.prototype.slice.call(from)); -} - -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 = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i; - function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; } - function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } } - 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: false } : 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(v) { resolve({ value: v, done: d }); }, reject); } -} - -function __makeTemplateObject(cooked, raw) { - if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } - return cooked; -} -var __setModuleDefault = Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}; - -var ownKeys = function(o) { - ownKeys = Object.getOwnPropertyNames || function (o) { - var ar = []; - for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; - return ar; - }; - return ownKeys(o); -}; - -function __importStar(mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); - __setModuleDefault(result, mod); - return result; -} - -function __importDefault(mod) { - return (mod && mod.__esModule) ? mod : { default: mod }; -} - -function __classPrivateFieldGet(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); -} - -function __classPrivateFieldSet(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; -} - -function __classPrivateFieldIn(state, receiver) { - if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object"); - return typeof state === "function" ? receiver === state : state.has(receiver); -} - -function __addDisposableResource(env, value, async) { - if (value !== null && value !== void 0) { - if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected."); - var dispose, inner; - if (async) { - if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined."); - dispose = value[Symbol.asyncDispose]; - } - if (dispose === void 0) { - if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined."); - dispose = value[Symbol.dispose]; - if (async) inner = dispose; - } - if (typeof dispose !== "function") throw new TypeError("Object not disposable."); - if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } }; - env.stack.push({ value: value, dispose: dispose, async: async }); - } - else if (async) { - env.stack.push({ async: true }); - } - return value; -} - -var _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { - var e = new Error(message); - return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; -}; - -function __disposeResources(env) { - function fail(e) { - env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e; - env.hasError = true; - } - var r, s = 0; - function next() { - while (r = env.stack.pop()) { - try { - if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next); - if (r.dispose) { - var result = r.dispose.call(r.value); - if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); }); - } - else s |= 1; - } - catch (e) { - fail(e); - } - } - if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve(); - if (env.hasError) throw env.error; - } - return next(); -} - -function __rewriteRelativeImportExtension(path, preserveJsx) { - if (typeof path === "string" && /^\.\.?\//.test(path)) { - return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) { - return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js"); - }); - } - return path; -} - -const tslib_es6 = { - __extends, - __assign, - __rest, - __decorate, - __param, - __esDecorate, - __runInitializers, - __propKey, - __setFunctionName, - __metadata, - __awaiter, - __generator, - __createBinding, - __exportStar, - __values, - __read, - __spread, - __spreadArrays, - __spreadArray, - __await, - __asyncGenerator, - __asyncDelegator, - __asyncValues, - __makeTemplateObject, - __importStar, - __importDefault, - __classPrivateFieldGet, - __classPrivateFieldSet, - __classPrivateFieldIn, - __addDisposableResource, - __disposeResources, - __rewriteRelativeImportExtension, -}; - -const tslib_es6$1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({ - __proto__: null, - __addDisposableResource, - get __assign () { return __assign; }, - __asyncDelegator, - __asyncGenerator, - __asyncValues, - __await, - __awaiter, - __classPrivateFieldGet, - __classPrivateFieldIn, - __classPrivateFieldSet, - __createBinding, - __decorate, - __disposeResources, - __esDecorate, - __exportStar, - __extends, - __generator, - __importDefault, - __importStar, - __makeTemplateObject, - __metadata, - __param, - __propKey, - __read, - __rest, - __rewriteRelativeImportExtension, - __runInitializers, - __setFunctionName, - __spread, - __spreadArray, - __spreadArrays, - __values, - default: tslib_es6 -}, Symbol.toStringTag, { value: 'Module' })); - -const require$$0 = /*@__PURE__*/getDefaultExportFromNamespaceIfPresent(tslib_es6$1); - -var constants = {}; - -var hasRequiredConstants; - -function requireConstants () { - if (hasRequiredConstants) return constants; - hasRequiredConstants = 1; - Object.defineProperty(constants, "__esModule", { value: true }); - constants.SAFE_TIME = constants.S_IFLNK = constants.S_IFREG = constants.S_IFDIR = constants.S_IFMT = void 0; - constants.S_IFMT = 0o170000; - constants.S_IFDIR = 0o040000; - constants.S_IFREG = 0o100000; - constants.S_IFLNK = 0o120000; - /** - * Unix timestamp for `1984-06-22T21:50:00.000Z` - * - * It needs to be after 1980-01-01 because that's what Zip supports, and it - * needs to have a slight offset to account for different timezones (because - * zip assumes that all times are local to whoever writes the file, which is - * really silly). - */ - constants.SAFE_TIME = 456789000; - return constants; -} - -var errors = {}; - -var hasRequiredErrors; - -function requireErrors () { - if (hasRequiredErrors) return errors; - hasRequiredErrors = 1; - Object.defineProperty(errors, "__esModule", { value: true }); - errors.EBUSY = EBUSY; - errors.ENOSYS = ENOSYS; - errors.EINVAL = EINVAL; - errors.EBADF = EBADF; - errors.ENOENT = ENOENT; - errors.ENOTDIR = ENOTDIR; - errors.EISDIR = EISDIR; - errors.EEXIST = EEXIST; - errors.EROFS = EROFS; - errors.ENOTEMPTY = ENOTEMPTY; - errors.EOPNOTSUPP = EOPNOTSUPP; - errors.ERR_DIR_CLOSED = ERR_DIR_CLOSED; - function makeError(code, message) { - return Object.assign(new Error(`${code}: ${message}`), { code }); - } - function EBUSY(message) { - return makeError(`EBUSY`, message); - } - function ENOSYS(message, reason) { - return makeError(`ENOSYS`, `${message}, ${reason}`); - } - function EINVAL(reason) { - return makeError(`EINVAL`, `invalid argument, ${reason}`); - } - function EBADF(reason) { - return makeError(`EBADF`, `bad file descriptor, ${reason}`); - } - function ENOENT(reason) { - return makeError(`ENOENT`, `no such file or directory, ${reason}`); - } - function ENOTDIR(reason) { - return makeError(`ENOTDIR`, `not a directory, ${reason}`); - } - function EISDIR(reason) { - return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); - } - function EEXIST(reason) { - return makeError(`EEXIST`, `file already exists, ${reason}`); - } - function EROFS(reason) { - return makeError(`EROFS`, `read-only filesystem, ${reason}`); - } - function ENOTEMPTY(reason) { - return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); - } - function EOPNOTSUPP(reason) { - return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); - } - // ------------------------------------------------------------------------ - function ERR_DIR_CLOSED() { - return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); - } - return errors; -} - -var statUtils = {}; - -var hasRequiredStatUtils; - -function requireStatUtils () { - if (hasRequiredStatUtils) return statUtils; - hasRequiredStatUtils = 1; - (function (exports) { - Object.defineProperty(exports, "__esModule", { value: true }); - exports.BigIntStatsEntry = exports.StatEntry = exports.DirEntry = exports.DEFAULT_MODE = void 0; - exports.makeDefaultStats = makeDefaultStats; - exports.makeEmptyStats = makeEmptyStats; - exports.clearStats = clearStats; - exports.convertToBigIntStats = convertToBigIntStats; - exports.areStatsEqual = areStatsEqual; - const tslib_1 = require$$0; - const nodeUtils = tslib_1.__importStar(require$$1); - const constants_1 = requireConstants(); - exports.DEFAULT_MODE = constants_1.S_IFREG | 0o644; - class DirEntry { - constructor() { - this.name = ``; - this.path = ``; - this.mode = 0; - } - isBlockDevice() { - return false; - } - isCharacterDevice() { - return false; - } - isDirectory() { - return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR; - } - isFIFO() { - return false; - } - isFile() { - return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG; - } - isSocket() { - return false; - } - isSymbolicLink() { - return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK; - } - } - exports.DirEntry = DirEntry; - class StatEntry { - constructor() { - this.uid = 0; - this.gid = 0; - this.size = 0; - this.blksize = 0; - this.atimeMs = 0; - this.mtimeMs = 0; - this.ctimeMs = 0; - this.birthtimeMs = 0; - this.atime = new Date(0); - this.mtime = new Date(0); - this.ctime = new Date(0); - this.birthtime = new Date(0); - this.dev = 0; - this.ino = 0; - this.mode = exports.DEFAULT_MODE; - this.nlink = 1; - this.rdev = 0; - this.blocks = 1; - } - isBlockDevice() { - return false; - } - isCharacterDevice() { - return false; - } - isDirectory() { - return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR; - } - isFIFO() { - return false; - } - isFile() { - return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG; - } - isSocket() { - return false; - } - isSymbolicLink() { - return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK; - } - } - exports.StatEntry = StatEntry; - class BigIntStatsEntry { - constructor() { - this.uid = BigInt(0); - this.gid = BigInt(0); - this.size = BigInt(0); - this.blksize = BigInt(0); - this.atimeMs = BigInt(0); - this.mtimeMs = BigInt(0); - this.ctimeMs = BigInt(0); - this.birthtimeMs = BigInt(0); - this.atimeNs = BigInt(0); - this.mtimeNs = BigInt(0); - this.ctimeNs = BigInt(0); - this.birthtimeNs = BigInt(0); - this.atime = new Date(0); - this.mtime = new Date(0); - this.ctime = new Date(0); - this.birthtime = new Date(0); - this.dev = BigInt(0); - this.ino = BigInt(0); - this.mode = BigInt(exports.DEFAULT_MODE); - this.nlink = BigInt(1); - this.rdev = BigInt(0); - this.blocks = BigInt(1); - } - isBlockDevice() { - return false; - } - isCharacterDevice() { - return false; - } - isDirectory() { - return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFDIR); - } - isFIFO() { - return false; - } - isFile() { - return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFREG); - } - isSocket() { - return false; - } - isSymbolicLink() { - return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFLNK); - } - } - exports.BigIntStatsEntry = BigIntStatsEntry; - function makeDefaultStats() { - return new StatEntry(); - } - function makeEmptyStats() { - return clearStats(makeDefaultStats()); - } - /** - * Mutates the provided stats object to zero it out then returns it for convenience - */ - function clearStats(stats) { - for (const key in stats) { - if (Object.hasOwn(stats, key)) { - const element = stats[key]; - if (typeof element === `number`) { - // @ts-expect-error Typescript can't tell that stats[key] is a number - stats[key] = 0; - } - else if (typeof element === `bigint`) { - // @ts-expect-error Typescript can't tell that stats[key] is a bigint - stats[key] = BigInt(0); - } - else if (nodeUtils.types.isDate(element)) { - // @ts-expect-error Typescript can't tell that stats[key] is a bigint - stats[key] = new Date(0); - } - } - } - return stats; - } - function convertToBigIntStats(stats) { - const bigintStats = new BigIntStatsEntry(); - for (const key in stats) { - if (Object.hasOwn(stats, key)) { - const element = stats[key]; - if (typeof element === `number`) { - // @ts-expect-error Typescript isn't able to tell this is valid - bigintStats[key] = BigInt(Math.floor(element)); - } - else if (nodeUtils.types.isDate(element)) { - // @ts-expect-error Typescript isn't able to tell this is valid - bigintStats[key] = new Date(element); - } - } - } - bigintStats.atimeNs = bigintStats.atimeMs * BigInt(1e6) + BigInt(Math.floor((stats.atimeMs % 1) * 1e3)) * BigInt(1e3); - bigintStats.mtimeNs = bigintStats.mtimeMs * BigInt(1e6) + BigInt(Math.floor((stats.mtimeMs % 1) * 1e3)) * BigInt(1e3); - bigintStats.ctimeNs = bigintStats.ctimeMs * BigInt(1e6) + BigInt(Math.floor((stats.ctimeMs % 1) * 1e3)) * BigInt(1e3); - bigintStats.birthtimeNs = bigintStats.birthtimeMs * BigInt(1e6) + BigInt(Math.floor((stats.birthtimeMs % 1) * 1e3)) * BigInt(1e3); - return bigintStats; - } - function areStatsEqual(a, b) { - if (a.atimeMs !== b.atimeMs) - return false; - if (a.birthtimeMs !== b.birthtimeMs) - return false; - if (a.blksize !== b.blksize) - return false; - if (a.blocks !== b.blocks) - return false; - if (a.ctimeMs !== b.ctimeMs) - return false; - if (a.dev !== b.dev) - return false; - if (a.gid !== b.gid) - return false; - if (a.ino !== b.ino) - return false; - if (a.isBlockDevice() !== b.isBlockDevice()) - return false; - if (a.isCharacterDevice() !== b.isCharacterDevice()) - return false; - if (a.isDirectory() !== b.isDirectory()) - return false; - if (a.isFIFO() !== b.isFIFO()) - return false; - if (a.isFile() !== b.isFile()) - return false; - if (a.isSocket() !== b.isSocket()) - return false; - if (a.isSymbolicLink() !== b.isSymbolicLink()) - return false; - if (a.mode !== b.mode) - return false; - if (a.mtimeMs !== b.mtimeMs) - return false; - if (a.nlink !== b.nlink) - return false; - if (a.rdev !== b.rdev) - return false; - if (a.size !== b.size) - return false; - if (a.uid !== b.uid) - return false; - const aN = a; - const bN = b; - if (aN.atimeNs !== bN.atimeNs) - return false; - if (aN.mtimeNs !== bN.mtimeNs) - return false; - if (aN.ctimeNs !== bN.ctimeNs) - return false; - if (aN.birthtimeNs !== bN.birthtimeNs) - return false; - return true; - } - } (statUtils)); - return statUtils; -} - -var copyPromise$1 = {}; - -var path = {}; - -var hasRequiredPath; - -function requirePath () { - if (hasRequiredPath) return path; - hasRequiredPath = 1; - (function (exports) { - Object.defineProperty(exports, "__esModule", { value: true }); - exports.ppath = exports.npath = exports.Filename = exports.PortablePath = void 0; - exports.convertPath = convertPath; - const tslib_1 = require$$0; - const path_1 = tslib_1.__importDefault(path$1); - var PathType; - (function (PathType) { - PathType[PathType["File"] = 0] = "File"; - PathType[PathType["Portable"] = 1] = "Portable"; - PathType[PathType["Native"] = 2] = "Native"; - })(PathType || (PathType = {})); - exports.PortablePath = { - root: `/`, - dot: `.`, - parent: `..`, - }; - exports.Filename = { - home: `~`, - nodeModules: `node_modules`, - manifest: `package.json`, - lockfile: `yarn.lock`, - virtual: `__virtual__`, - /** - * @deprecated - */ - pnpJs: `.pnp.js`, - pnpCjs: `.pnp.cjs`, - pnpData: `.pnp.data.json`, - pnpEsmLoader: `.pnp.loader.mjs`, - rc: `.yarnrc.yml`, - env: `.env`, - }; - exports.npath = Object.create(path_1.default); - exports.ppath = Object.create(path_1.default.posix); - exports.npath.cwd = () => process.cwd(); - exports.ppath.cwd = process.platform === `win32` - ? () => toPortablePath(process.cwd()) - : process.cwd; - if (process.platform === `win32`) { - exports.ppath.resolve = (...segments) => { - if (segments.length > 0 && exports.ppath.isAbsolute(segments[0])) { - return path_1.default.posix.resolve(...segments); - } - else { - return path_1.default.posix.resolve(exports.ppath.cwd(), ...segments); - } - }; - } - const contains = function (pathUtils, from, to) { - from = pathUtils.normalize(from); - to = pathUtils.normalize(to); - if (from === to) - return `.`; - if (!from.endsWith(pathUtils.sep)) - from = (from + pathUtils.sep); - if (to.startsWith(from)) { - return to.slice(from.length); - } - else { - return null; - } - }; - exports.npath.contains = (from, to) => contains(exports.npath, from, to); - exports.ppath.contains = (from, to) => contains(exports.ppath, from, to); - const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; - const UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/; - const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; - const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; - // Path should look like "/N:/berry/scripts/plugin-pack.js" - // And transform to "N:\berry\scripts\plugin-pack.js" - function fromPortablePathWin32(p) { - let portablePathMatch, uncPortablePathMatch; - if ((portablePathMatch = p.match(PORTABLE_PATH_REGEXP))) - p = portablePathMatch[1]; - else if ((uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP))) - p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`; - else - return p; - return p.replace(/\//g, `\\`); - } - // Path should look like "N:/berry/scripts/plugin-pack.js" - // And transform to "/N:/berry/scripts/plugin-pack.js" - function toPortablePathWin32(p) { - p = p.replace(/\\/g, `/`); - let windowsPathMatch, uncWindowsPathMatch; - if ((windowsPathMatch = p.match(WINDOWS_PATH_REGEXP))) - p = `/${windowsPathMatch[1]}`; - else if ((uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP))) - p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`; - return p; - } - const toPortablePath = process.platform === `win32` - ? toPortablePathWin32 - : (p) => p; - const fromPortablePath = process.platform === `win32` - ? fromPortablePathWin32 - : (p) => p; - exports.npath.fromPortablePath = fromPortablePath; - exports.npath.toPortablePath = toPortablePath; - function convertPath(targetPathUtils, sourcePath) { - return (targetPathUtils === exports.npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath)); - } - } (path)); - return path; -} - -var hasRequiredCopyPromise; - -function requireCopyPromise () { - if (hasRequiredCopyPromise) return copyPromise$1; - hasRequiredCopyPromise = 1; - Object.defineProperty(copyPromise$1, "__esModule", { value: true }); - copyPromise$1.setupCopyIndex = setupCopyIndex; - copyPromise$1.copyPromise = copyPromise; - const tslib_1 = require$$0; - const constants = tslib_1.__importStar(requireConstants()); - const path_1 = requirePath(); - const defaultTime = new Date(constants.SAFE_TIME * 1000); - const defaultTimeMs = defaultTime.getTime(); - async function setupCopyIndex(destinationFs, linkStrategy) { - const hexCharacters = `0123456789abcdef`; - await destinationFs.mkdirPromise(linkStrategy.indexPath, { recursive: true }); - const promises = []; - for (const l1 of hexCharacters) - for (const l2 of hexCharacters) - promises.push(destinationFs.mkdirPromise(destinationFs.pathUtils.join(linkStrategy.indexPath, `${l1}${l2}`), { recursive: true })); - await Promise.all(promises); - return linkStrategy.indexPath; - } - async function copyPromise(destinationFs, destination, sourceFs, source, opts) { - const normalizedDestination = destinationFs.pathUtils.normalize(destination); - const normalizedSource = sourceFs.pathUtils.normalize(source); - const prelayout = []; - const postlayout = []; - const { atime, mtime } = opts.stableTime - ? { atime: defaultTime, mtime: defaultTime } - : await sourceFs.lstatPromise(normalizedSource); - await destinationFs.mkdirpPromise(destinationFs.pathUtils.dirname(destination), { utimes: [atime, mtime] }); - await copyImpl(prelayout, postlayout, destinationFs, normalizedDestination, sourceFs, normalizedSource, { ...opts, didParentExist: true }); - for (const operation of prelayout) - await operation(); - await Promise.all(postlayout.map(operation => { - return operation(); - })); - } - async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) { - const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null; - const sourceStat = await sourceFs.lstatPromise(source); - const { atime, mtime } = opts.stableTime - ? { atime: defaultTime, mtime: defaultTime } - : sourceStat; - let updated; - switch (true) { - case sourceStat.isDirectory(): - { - updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); - } - break; - case sourceStat.isFile(): - { - updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); - } - break; - case sourceStat.isSymbolicLink(): - { - updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); - } - break; - default: { - throw new Error(`Unsupported file type (${sourceStat.mode})`); - } - } - // We aren't allowed to modify the destination if we work with the index, - // since otherwise we'd accidentally propagate the changes to all projects. - if (opts.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) { - if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) { - postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime)); - updated = true; - } - if (destinationStat === null || (destinationStat.mode & 0o777) !== (sourceStat.mode & 0o777)) { - postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 0o777)); - updated = true; - } - } - return updated; - } - async function maybeLStat(baseFs, p) { - try { - return await baseFs.lstatPromise(p); - } - catch { - return null; - } - } - async function copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (destinationStat !== null && !destinationStat.isDirectory()) { - if (opts.overwrite) { - prelayout.push(async () => destinationFs.removePromise(destination)); - destinationStat = null; - } - else { - return false; - } - } - let updated = false; - if (destinationStat === null) { - prelayout.push(async () => { - try { - await destinationFs.mkdirPromise(destination, { mode: sourceStat.mode }); - } - catch (err) { - if (err.code !== `EEXIST`) { - throw err; - } - } - }); - updated = true; - } - const entries = await sourceFs.readdirPromise(source); - const nextOpts = opts.didParentExist && !destinationStat ? { ...opts, didParentExist: false } : opts; - if (opts.stableSort) { - for (const entry of entries.sort()) { - if (await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts)) { - updated = true; - } - } - } - else { - const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => { - await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts); - })); - if (entriesUpdateStatus.some(status => status)) { - updated = true; - } - } - return updated; - } - async function copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, linkStrategy) { - const sourceHash = await sourceFs.checksumFilePromise(source, { algorithm: `sha1` }); - const defaultMode = 0o644; - const sourceMode = sourceStat.mode & 0o777; - // add mode to the index file name if it's not the default b/c different packages could have the file with same content, but different modes - const indexFileName = `${sourceHash}${sourceMode !== defaultMode ? sourceMode.toString(8) : ``}`; - const indexPath = destinationFs.pathUtils.join(linkStrategy.indexPath, sourceHash.slice(0, 2), `${indexFileName}.dat`); - let AtomicBehavior; - (function (AtomicBehavior) { - AtomicBehavior[AtomicBehavior["Lock"] = 0] = "Lock"; - AtomicBehavior[AtomicBehavior["Rename"] = 1] = "Rename"; - })(AtomicBehavior || (AtomicBehavior = {})); - let atomicBehavior = AtomicBehavior.Rename; - let indexStat = await maybeLStat(destinationFs, indexPath); - if (destinationStat) { - const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino; - const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs; - if (isDestinationHardlinkedFromIndex) { - // If the index is modified, we will want to repair it. However, the - // default logic ensuring atomicity (creating a file in a temporary - // place before atomically moving it into its final location) won't - // work: we'd lose all the existing hardlinks. - // - // To avoid that, when repairing a file, we fallback to the slow but - // safer `lockPromise`-based mutex, which will prevent multiple - // processes to modify the file without impacting their inode. - // - // Give that the repair mechanism should be very rarely needed in - // situation where performance is critical, it should be ok. - // - if (isIndexModified && linkStrategy.autoRepair) { - atomicBehavior = AtomicBehavior.Lock; - indexStat = null; - } - } - if (!isDestinationHardlinkedFromIndex) { - if (opts.overwrite) { - prelayout.push(async () => destinationFs.removePromise(destination)); - destinationStat = null; - } - else { - return false; - } - } - } - const tempPath = !indexStat && atomicBehavior === AtomicBehavior.Rename - ? `${indexPath}.${Math.floor(Math.random() * 0x100000000).toString(16).padStart(8, `0`)}` - : null; - let tempPathCleaned = false; - prelayout.push(async () => { - if (!indexStat) { - if (atomicBehavior === AtomicBehavior.Lock) { - await destinationFs.lockPromise(indexPath, async () => { - const content = await sourceFs.readFilePromise(source); - await destinationFs.writeFilePromise(indexPath, content); - }); - } - if (atomicBehavior === AtomicBehavior.Rename && tempPath) { - const content = await sourceFs.readFilePromise(source); - await destinationFs.writeFilePromise(tempPath, content); - // We use `linkPromise` rather than `renamePromise` because the later - // overwrites the destination if it already exists; usually this - // wouldn't be a problem, but since we care about preserving the - // hardlink identity of the destination, we can't do that. - // - // So instead we create a hardlink of the source file (which will - // fail with EEXIST if the destination already exists), and we remove - // the source in the postlayout steps. - // - try { - await destinationFs.linkPromise(tempPath, indexPath); - } - catch (err) { - if (err.code === `EEXIST`) { - tempPathCleaned = true; - await destinationFs.unlinkPromise(tempPath); - } - else { - throw err; - } - } - } - } - if (!destinationStat) { - await destinationFs.linkPromise(indexPath, destination); - } - }); - postlayout.push(async () => { - if (!indexStat) { - await destinationFs.lutimesPromise(indexPath, defaultTime, defaultTime); - if (sourceMode !== defaultMode) { - await destinationFs.chmodPromise(indexPath, sourceMode); - } - } - if (tempPath && !tempPathCleaned) { - await destinationFs.unlinkPromise(tempPath); - } - }); - return false; - } - async function copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (destinationStat !== null) { - if (opts.overwrite) { - prelayout.push(async () => destinationFs.removePromise(destination)); - destinationStat = null; - } - else { - return false; - } - } - // TODO: Add support for file cloning, by adding a flag inside the FakeFS - // instances to detect which "namespace" they're part of (for example, the - // NodeFS and the ZipFS would be different namespaces since you can't clone - // from one disk to the other; on the other hand, a CwdFS would share the - // namespace from its base FS and thus would support cloning). - prelayout.push(async () => { - const content = await sourceFs.readFilePromise(source); - await destinationFs.writeFilePromise(destination, content); - }); - return true; - } - async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (opts.linkStrategy?.type === `HardlinkFromIndex`) { - return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy); - } - else { - return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); - } - } - async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (destinationStat !== null) { - if (opts.overwrite) { - prelayout.push(async () => destinationFs.removePromise(destination)); - destinationStat = null; - } - else { - return false; - } - } - prelayout.push(async () => { - await destinationFs.symlinkPromise((0, path_1.convertPath)(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination); - }); - return true; - } - return copyPromise$1; -} - -var opendir = {}; - -var hasRequiredOpendir; - -function requireOpendir () { - if (hasRequiredOpendir) return opendir; - hasRequiredOpendir = 1; - Object.defineProperty(opendir, "__esModule", { value: true }); - opendir.CustomDir = void 0; - opendir.opendir = opendir$1; - const tslib_1 = require$$0; - const errors = tslib_1.__importStar(requireErrors()); - class CustomDir { - constructor(path, nextDirent, opts = {}) { - this.path = path; - this.nextDirent = nextDirent; - this.opts = opts; - this.closed = false; - } - throwIfClosed() { - if (this.closed) { - throw errors.ERR_DIR_CLOSED(); - } - } - async *[Symbol.asyncIterator]() { - try { - let dirent; - while ((dirent = await this.read()) !== null) { - yield dirent; - } - } - finally { - await this.close(); - } - } - read(cb) { - const dirent = this.readSync(); - if (typeof cb !== `undefined`) - return cb(null, dirent); - return Promise.resolve(dirent); - } - readSync() { - this.throwIfClosed(); - return this.nextDirent(); - } - close(cb) { - this.closeSync(); - if (typeof cb !== `undefined`) - return cb(null); - return Promise.resolve(); - } - closeSync() { - this.throwIfClosed(); - this.opts.onClose?.(); - this.closed = true; - } - } - opendir.CustomDir = CustomDir; - function opendir$1(fakeFs, path, entries, opts) { - const nextDirent = () => { - const filename = entries.shift(); - if (typeof filename === `undefined`) - return null; - const entryPath = fakeFs.pathUtils.join(path, filename); - return Object.assign(fakeFs.statSync(entryPath), { - name: filename, - path: undefined, - }); - }; - return new CustomDir(path, nextDirent, opts); - } - return opendir; -} - -var watchFile = {}; - -var CustomStatWatcher = {}; - -var hasRequiredCustomStatWatcher; - -function requireCustomStatWatcher () { - if (hasRequiredCustomStatWatcher) return CustomStatWatcher; - hasRequiredCustomStatWatcher = 1; - Object.defineProperty(CustomStatWatcher, "__esModule", { value: true }); - CustomStatWatcher.CustomStatWatcher = CustomStatWatcher.Status = CustomStatWatcher.Event = void 0; - CustomStatWatcher.assertStatus = assertStatus; - const tslib_1 = require$$0; - const events_1 = require$$1$1; - const statUtils = tslib_1.__importStar(requireStatUtils()); - var Event; - (function (Event) { - Event["Change"] = "change"; - Event["Stop"] = "stop"; - })(Event || (CustomStatWatcher.Event = Event = {})); - var Status; - (function (Status) { - Status["Ready"] = "ready"; - Status["Running"] = "running"; - Status["Stopped"] = "stopped"; - })(Status || (CustomStatWatcher.Status = Status = {})); - function assertStatus(current, expected) { - if (current !== expected) { - throw new Error(`Invalid StatWatcher status: expected '${expected}', got '${current}'`); - } - } - let CustomStatWatcher$1 = class CustomStatWatcher extends events_1.EventEmitter { - static create(fakeFs, path, opts) { - const statWatcher = new CustomStatWatcher(fakeFs, path, opts); - statWatcher.start(); - return statWatcher; - } - constructor(fakeFs, path, { bigint = false } = {}) { - super(); - this.status = Status.Ready; - this.changeListeners = new Map(); - this.startTimeout = null; - this.fakeFs = fakeFs; - this.path = path; - this.bigint = bigint; - this.lastStats = this.stat(); - } - start() { - assertStatus(this.status, Status.Ready); - this.status = Status.Running; - // Node allows other listeners to be registered up to 3 milliseconds - // after the watcher has been started, so that's what we're doing too - this.startTimeout = setTimeout(() => { - this.startTimeout = null; - // Per the Node FS docs: - // "When an fs.watchFile operation results in an ENOENT error, - // it will invoke the listener once, with all the fields zeroed - // (or, for dates, the Unix Epoch)." - if (!this.fakeFs.existsSync(this.path)) { - this.emit(Event.Change, this.lastStats, this.lastStats); - } - }, 3); - } - stop() { - assertStatus(this.status, Status.Running); - this.status = Status.Stopped; - if (this.startTimeout !== null) { - clearTimeout(this.startTimeout); - this.startTimeout = null; - } - this.emit(Event.Stop); - } - stat() { - try { - return this.fakeFs.statSync(this.path, { bigint: this.bigint }); - } - catch { - // From observation, all errors seem to be mostly ignored by Node. - // Checked with ENOENT, ENOTDIR, EPERM - const statInstance = this.bigint - ? new statUtils.BigIntStatsEntry() - : new statUtils.StatEntry(); - return statUtils.clearStats(statInstance); - } - } - /** - * Creates an interval whose callback compares the current stats with the previous stats and notifies all listeners in case of changes. - * - * @param opts.persistent Decides whether the interval should be immediately unref-ed. - */ - makeInterval(opts) { - const interval = setInterval(() => { - const currentStats = this.stat(); - const previousStats = this.lastStats; - if (statUtils.areStatsEqual(currentStats, previousStats)) - return; - this.lastStats = currentStats; - this.emit(Event.Change, currentStats, previousStats); - }, opts.interval); - return opts.persistent ? interval : interval.unref(); - } - /** - * Registers a listener and assigns it an interval. - */ - registerChangeListener(listener, opts) { - this.addListener(Event.Change, listener); - this.changeListeners.set(listener, this.makeInterval(opts)); - } - /** - * Unregisters the listener and clears the assigned interval. - */ - unregisterChangeListener(listener) { - this.removeListener(Event.Change, listener); - const interval = this.changeListeners.get(listener); - if (typeof interval !== `undefined`) - clearInterval(interval); - this.changeListeners.delete(listener); - } - /** - * Unregisters all listeners and clears all assigned intervals. - */ - unregisterAllChangeListeners() { - for (const listener of this.changeListeners.keys()) { - this.unregisterChangeListener(listener); - } - } - hasChangeListeners() { - return this.changeListeners.size > 0; - } - /** - * Refs all stored intervals. - */ - ref() { - for (const interval of this.changeListeners.values()) - interval.ref(); - return this; - } - /** - * Unrefs all stored intervals. - */ - unref() { - for (const interval of this.changeListeners.values()) - interval.unref(); - return this; - } - }; - CustomStatWatcher.CustomStatWatcher = CustomStatWatcher$1; - return CustomStatWatcher; -} - -var hasRequiredWatchFile; - -function requireWatchFile () { - if (hasRequiredWatchFile) return watchFile; - hasRequiredWatchFile = 1; - Object.defineProperty(watchFile, "__esModule", { value: true }); - watchFile.watchFile = watchFile$1; - watchFile.unwatchFile = unwatchFile; - watchFile.unwatchAllFiles = unwatchAllFiles; - const CustomStatWatcher_1 = requireCustomStatWatcher(); - const statWatchersByFakeFS = new WeakMap(); - function watchFile$1(fakeFs, path, a, b) { - let bigint; - let persistent; - let interval; - let listener; - switch (typeof a) { - case `function`: - { - bigint = false; - persistent = true; - interval = 5007; - listener = a; - } - break; - default: - { - ({ - bigint = false, - persistent = true, - interval = 5007, - } = a); - listener = b; - } - break; - } - let statWatchers = statWatchersByFakeFS.get(fakeFs); - if (typeof statWatchers === `undefined`) - statWatchersByFakeFS.set(fakeFs, statWatchers = new Map()); - let statWatcher = statWatchers.get(path); - if (typeof statWatcher === `undefined`) { - statWatcher = CustomStatWatcher_1.CustomStatWatcher.create(fakeFs, path, { bigint }); - statWatchers.set(path, statWatcher); - } - statWatcher.registerChangeListener(listener, { persistent, interval }); - return statWatcher; - } - function unwatchFile(fakeFs, path, cb) { - const statWatchers = statWatchersByFakeFS.get(fakeFs); - if (typeof statWatchers === `undefined`) - return; - const statWatcher = statWatchers.get(path); - if (typeof statWatcher === `undefined`) - return; - if (typeof cb === `undefined`) - statWatcher.unregisterAllChangeListeners(); - else - statWatcher.unregisterChangeListener(cb); - if (!statWatcher.hasChangeListeners()) { - statWatcher.stop(); - statWatchers.delete(path); - } - } - function unwatchAllFiles(fakeFs) { - const statWatchers = statWatchersByFakeFS.get(fakeFs); - if (typeof statWatchers === `undefined`) - return; - for (const path of statWatchers.keys()) { - unwatchFile(fakeFs, path); - } - } - return watchFile; -} - -var FakeFS$1 = {}; - -var hasRequiredFakeFS; - -function requireFakeFS () { - if (hasRequiredFakeFS) return FakeFS$1; - hasRequiredFakeFS = 1; - Object.defineProperty(FakeFS$1, "__esModule", { value: true }); - FakeFS$1.BasePortableFakeFS = FakeFS$1.FakeFS = void 0; - FakeFS$1.normalizeLineEndings = normalizeLineEndings; - const crypto_1 = require$$0$1; - const os_1 = require$$1$2; - const copyPromise_1 = requireCopyPromise(); - const path_1 = requirePath(); - class FakeFS { - constructor(pathUtils) { - this.pathUtils = pathUtils; - } - async *genTraversePromise(init, { stableSort = false } = {}) { - const stack = [init]; - while (stack.length > 0) { - const p = stack.shift(); - const entry = await this.lstatPromise(p); - if (entry.isDirectory()) { - const entries = await this.readdirPromise(p); - if (stableSort) { - for (const entry of entries.sort()) { - stack.push(this.pathUtils.join(p, entry)); - } - } - else { - throw new Error(`Not supported`); - } - } - else { - yield p; - } - } - } - async checksumFilePromise(path, { algorithm = `sha512` } = {}) { - const fd = await this.openPromise(path, `r`); - try { - const CHUNK_SIZE = 65536; - const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE); - const hash = (0, crypto_1.createHash)(algorithm); - let bytesRead = 0; - while ((bytesRead = await this.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0) - hash.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead)); - return hash.digest(`hex`); - } - finally { - await this.closePromise(fd); - } - } - async removePromise(p, { recursive = true, maxRetries = 5 } = {}) { - let stat; - try { - stat = await this.lstatPromise(p); - } - catch (error) { - if (error.code === `ENOENT`) { - return; - } - else { - throw error; - } - } - if (stat.isDirectory()) { - if (recursive) { - const entries = await this.readdirPromise(p); - await Promise.all(entries.map(entry => { - return this.removePromise(this.pathUtils.resolve(p, entry)); - })); - } - // 5 gives 1s worth of retries at worst - for (let t = 0; t <= maxRetries; t++) { - try { - await this.rmdirPromise(p); - break; - } - catch (error) { - if (error.code !== `EBUSY` && error.code !== `ENOTEMPTY`) { - throw error; - } - else if (t < maxRetries) { - await new Promise(resolve => setTimeout(resolve, t * 100)); - } - } - } - } - else { - await this.unlinkPromise(p); - } - } - removeSync(p, { recursive = true } = {}) { - let stat; - try { - stat = this.lstatSync(p); - } - catch (error) { - if (error.code === `ENOENT`) { - return; - } - else { - throw error; - } - } - if (stat.isDirectory()) { - if (recursive) - for (const entry of this.readdirSync(p)) - this.removeSync(this.pathUtils.resolve(p, entry)); - this.rmdirSync(p); - } - else { - this.unlinkSync(p); - } - } - async mkdirpPromise(p, { chmod, utimes } = {}) { - p = this.resolve(p); - if (p === this.pathUtils.dirname(p)) - return undefined; - const parts = p.split(this.pathUtils.sep); - let createdDirectory; - for (let u = 2; u <= parts.length; ++u) { - const subPath = parts.slice(0, u).join(this.pathUtils.sep); - if (!this.existsSync(subPath)) { - try { - await this.mkdirPromise(subPath); - } - catch (error) { - if (error.code === `EEXIST`) { - continue; - } - else { - throw error; - } - } - createdDirectory ??= subPath; - if (chmod != null) - await this.chmodPromise(subPath, chmod); - if (utimes != null) { - await this.utimesPromise(subPath, utimes[0], utimes[1]); - } - else { - const parentStat = await this.statPromise(this.pathUtils.dirname(subPath)); - await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime); - } - } - } - return createdDirectory; - } - mkdirpSync(p, { chmod, utimes } = {}) { - p = this.resolve(p); - if (p === this.pathUtils.dirname(p)) - return undefined; - const parts = p.split(this.pathUtils.sep); - let createdDirectory; - for (let u = 2; u <= parts.length; ++u) { - const subPath = parts.slice(0, u).join(this.pathUtils.sep); - if (!this.existsSync(subPath)) { - try { - this.mkdirSync(subPath); - } - catch (error) { - if (error.code === `EEXIST`) { - continue; - } - else { - throw error; - } - } - createdDirectory ??= subPath; - if (chmod != null) - this.chmodSync(subPath, chmod); - if (utimes != null) { - this.utimesSync(subPath, utimes[0], utimes[1]); - } - else { - const parentStat = this.statSync(this.pathUtils.dirname(subPath)); - this.utimesSync(subPath, parentStat.atime, parentStat.mtime); - } - } - } - return createdDirectory; - } - async copyPromise(destination, source, { baseFs = this, overwrite = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) { - return await (0, copyPromise_1.copyPromise)(this, destination, baseFs, source, { overwrite, stableSort, stableTime, linkStrategy }); - } - copySync(destination, source, { baseFs = this, overwrite = true } = {}) { - const stat = baseFs.lstatSync(source); - const exists = this.existsSync(destination); - if (stat.isDirectory()) { - this.mkdirpSync(destination); - const directoryListing = baseFs.readdirSync(source); - for (const entry of directoryListing) { - this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { baseFs, overwrite }); - } - } - else if (stat.isFile()) { - if (!exists || overwrite) { - if (exists) - this.removeSync(destination); - const content = baseFs.readFileSync(source); - this.writeFileSync(destination, content); - } - } - else if (stat.isSymbolicLink()) { - if (!exists || overwrite) { - if (exists) - this.removeSync(destination); - const target = baseFs.readlinkSync(source); - this.symlinkSync((0, path_1.convertPath)(this.pathUtils, target), destination); - } - } - else { - throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`); - } - const mode = stat.mode & 0o777; - this.chmodSync(destination, mode); - } - async changeFilePromise(p, content, opts = {}) { - if (Buffer.isBuffer(content)) { - return this.changeFileBufferPromise(p, content, opts); - } - else { - return this.changeFileTextPromise(p, content, opts); - } - } - async changeFileBufferPromise(p, content, { mode } = {}) { - let current = Buffer.alloc(0); - try { - current = await this.readFilePromise(p); - } - catch { - // ignore errors, no big deal - } - if (Buffer.compare(current, content) === 0) - return; - await this.writeFilePromise(p, content, { mode }); - } - async changeFileTextPromise(p, content, { automaticNewlines, mode } = {}) { - let current = ``; - try { - current = await this.readFilePromise(p, `utf8`); - } - catch { - // ignore errors, no big deal - } - const normalizedContent = automaticNewlines - ? normalizeLineEndings(current, content) - : content; - if (current === normalizedContent) - return; - await this.writeFilePromise(p, normalizedContent, { mode }); - } - changeFileSync(p, content, opts = {}) { - if (Buffer.isBuffer(content)) { - return this.changeFileBufferSync(p, content, opts); - } - else { - return this.changeFileTextSync(p, content, opts); - } - } - changeFileBufferSync(p, content, { mode } = {}) { - let current = Buffer.alloc(0); - try { - current = this.readFileSync(p); - } - catch { - // ignore errors, no big deal - } - if (Buffer.compare(current, content) === 0) - return; - this.writeFileSync(p, content, { mode }); - } - changeFileTextSync(p, content, { automaticNewlines = false, mode } = {}) { - let current = ``; - try { - current = this.readFileSync(p, `utf8`); - } - catch { - // ignore errors, no big deal - } - const normalizedContent = automaticNewlines - ? normalizeLineEndings(current, content) - : content; - if (current === normalizedContent) - return; - this.writeFileSync(p, normalizedContent, { mode }); - } - async movePromise(fromP, toP) { - try { - await this.renamePromise(fromP, toP); - } - catch (error) { - if (error.code === `EXDEV`) { - await this.copyPromise(toP, fromP); - await this.removePromise(fromP); - } - else { - throw error; - } - } - } - moveSync(fromP, toP) { - try { - this.renameSync(fromP, toP); - } - catch (error) { - if (error.code === `EXDEV`) { - this.copySync(toP, fromP); - this.removeSync(fromP); - } - else { - throw error; - } - } - } - async lockPromise(affectedPath, callback) { - const lockPath = `${affectedPath}.flock`; - const interval = 1000 / 60; - const startTime = Date.now(); - let fd = null; - // Even when we detect that a lock file exists, we still look inside to see - // whether the pid that created it is still alive. It's not foolproof - // (there are false positive), but there are no false negative and that's - // all that matters in 99% of the cases. - const isAlive = async () => { - let pid; - try { - ([pid] = await this.readJsonPromise(lockPath)); - } - catch { - // If we can't read the file repeatedly, we assume the process was - // aborted before even finishing writing the payload. - return Date.now() - startTime < 500; - } - try { - // "As a special case, a signal of 0 can be used to test for the - // existence of a process" - so we check whether it's alive. - process.kill(pid, 0); - return true; - } - catch { - return false; - } - }; - while (fd === null) { - try { - fd = await this.openPromise(lockPath, `wx`); - } - catch (error) { - if (error.code === `EEXIST`) { - if (!await isAlive()) { - try { - await this.unlinkPromise(lockPath); - continue; - } - catch { - // No big deal if we can't remove it. Just fallback to wait for - // it to be eventually released by its owner. - } - } - if (Date.now() - startTime < 60 * 1000) { - await new Promise(resolve => setTimeout(resolve, interval)); - } - else { - throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`); - } - } - else { - throw error; - } - } - } - await this.writePromise(fd, JSON.stringify([process.pid])); - try { - return await callback(); - } - finally { - try { - // closePromise needs to come before unlinkPromise otherwise another process can attempt - // to get the file handle after the unlink but before close resuling in - // EPERM: operation not permitted, open - await this.closePromise(fd); - await this.unlinkPromise(lockPath); - } - catch { - // noop - } - } - } - async readJsonPromise(p) { - const content = await this.readFilePromise(p, `utf8`); - try { - return JSON.parse(content); - } - catch (error) { - error.message += ` (in ${p})`; - throw error; - } - } - readJsonSync(p) { - const content = this.readFileSync(p, `utf8`); - try { - return JSON.parse(content); - } - catch (error) { - error.message += ` (in ${p})`; - throw error; - } - } - async writeJsonPromise(p, data, { compact = false } = {}) { - const space = compact - ? 0 - : 2; - return await this.writeFilePromise(p, `${JSON.stringify(data, null, space)}\n`); - } - writeJsonSync(p, data, { compact = false } = {}) { - const space = compact - ? 0 - : 2; - return this.writeFileSync(p, `${JSON.stringify(data, null, space)}\n`); - } - async preserveTimePromise(p, cb) { - const stat = await this.lstatPromise(p); - const result = await cb(); - if (typeof result !== `undefined`) - p = result; - await this.lutimesPromise(p, stat.atime, stat.mtime); - } - async preserveTimeSync(p, cb) { - const stat = this.lstatSync(p); - const result = cb(); - if (typeof result !== `undefined`) - p = result; - this.lutimesSync(p, stat.atime, stat.mtime); - } - } - FakeFS$1.FakeFS = FakeFS; - class BasePortableFakeFS extends FakeFS { - constructor() { - super(path_1.ppath); - } - } - FakeFS$1.BasePortableFakeFS = BasePortableFakeFS; - function getEndOfLine(content) { - const matches = content.match(/\r?\n/g); - if (matches === null) - return os_1.EOL; - const crlf = matches.filter(nl => nl === `\r\n`).length; - const lf = matches.length - crlf; - return crlf > lf ? `\r\n` : `\n`; - } - function normalizeLineEndings(originalContent, newContent) { - return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); - } - return FakeFS$1; -} - -var AliasFS = {}; - -var ProxiedFS$1 = {}; - -var hasRequiredProxiedFS; - -function requireProxiedFS () { - if (hasRequiredProxiedFS) return ProxiedFS$1; - hasRequiredProxiedFS = 1; - Object.defineProperty(ProxiedFS$1, "__esModule", { value: true }); - ProxiedFS$1.ProxiedFS = void 0; - const FakeFS_1 = requireFakeFS(); - class ProxiedFS extends FakeFS_1.FakeFS { - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); - } - resolve(path) { - return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); - } - getRealPath() { - return this.mapFromBase(this.baseFs.getRealPath()); - } - async openPromise(p, flags, mode) { - return this.baseFs.openPromise(this.mapToBase(p), flags, mode); - } - openSync(p, flags, mode) { - return this.baseFs.openSync(this.mapToBase(p), flags, mode); - } - async opendirPromise(p, opts) { - return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); - } - opendirSync(p, opts) { - return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); - } - async readPromise(fd, buffer, offset, length, position) { - return await this.baseFs.readPromise(fd, buffer, offset, length, position); - } - readSync(fd, buffer, offset, length, position) { - return this.baseFs.readSync(fd, buffer, offset, length, position); - } - async writePromise(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return await this.baseFs.writePromise(fd, buffer, offset); - } - else { - return await this.baseFs.writePromise(fd, buffer, offset, length, position); - } - } - writeSync(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return this.baseFs.writeSync(fd, buffer, offset); - } - else { - return this.baseFs.writeSync(fd, buffer, offset, length, position); - } - } - async closePromise(fd) { - return this.baseFs.closePromise(fd); - } - closeSync(fd) { - this.baseFs.closeSync(fd); - } - createReadStream(p, opts) { - return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); - } - createWriteStream(p, opts) { - return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); - } - async realpathPromise(p) { - return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); - } - realpathSync(p) { - return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); - } - async existsPromise(p) { - return this.baseFs.existsPromise(this.mapToBase(p)); - } - existsSync(p) { - return this.baseFs.existsSync(this.mapToBase(p)); - } - accessSync(p, mode) { - return this.baseFs.accessSync(this.mapToBase(p), mode); - } - async accessPromise(p, mode) { - return this.baseFs.accessPromise(this.mapToBase(p), mode); - } - async statPromise(p, opts) { - return this.baseFs.statPromise(this.mapToBase(p), opts); - } - statSync(p, opts) { - return this.baseFs.statSync(this.mapToBase(p), opts); - } - async fstatPromise(fd, opts) { - return this.baseFs.fstatPromise(fd, opts); - } - fstatSync(fd, opts) { - return this.baseFs.fstatSync(fd, opts); - } - lstatPromise(p, opts) { - return this.baseFs.lstatPromise(this.mapToBase(p), opts); - } - lstatSync(p, opts) { - return this.baseFs.lstatSync(this.mapToBase(p), opts); - } - async fchmodPromise(fd, mask) { - return this.baseFs.fchmodPromise(fd, mask); - } - fchmodSync(fd, mask) { - return this.baseFs.fchmodSync(fd, mask); - } - async chmodPromise(p, mask) { - return this.baseFs.chmodPromise(this.mapToBase(p), mask); - } - chmodSync(p, mask) { - return this.baseFs.chmodSync(this.mapToBase(p), mask); - } - async fchownPromise(fd, uid, gid) { - return this.baseFs.fchownPromise(fd, uid, gid); - } - fchownSync(fd, uid, gid) { - return this.baseFs.fchownSync(fd, uid, gid); - } - async chownPromise(p, uid, gid) { - return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); - } - chownSync(p, uid, gid) { - return this.baseFs.chownSync(this.mapToBase(p), uid, gid); - } - async renamePromise(oldP, newP) { - return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); - } - renameSync(oldP, newP) { - return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); - } - async copyFilePromise(sourceP, destP, flags = 0) { - return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); - } - copyFileSync(sourceP, destP, flags = 0) { - return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); - } - async appendFilePromise(p, content, opts) { - return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); - } - appendFileSync(p, content, opts) { - return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); - } - async writeFilePromise(p, content, opts) { - return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); - } - writeFileSync(p, content, opts) { - return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); - } - async unlinkPromise(p) { - return this.baseFs.unlinkPromise(this.mapToBase(p)); - } - unlinkSync(p) { - return this.baseFs.unlinkSync(this.mapToBase(p)); - } - async utimesPromise(p, atime, mtime) { - return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); - } - utimesSync(p, atime, mtime) { - return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); - } - async lutimesPromise(p, atime, mtime) { - return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); - } - lutimesSync(p, atime, mtime) { - return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); - } - async mkdirPromise(p, opts) { - return this.baseFs.mkdirPromise(this.mapToBase(p), opts); - } - mkdirSync(p, opts) { - return this.baseFs.mkdirSync(this.mapToBase(p), opts); - } - async rmdirPromise(p, opts) { - return this.baseFs.rmdirPromise(this.mapToBase(p), opts); - } - rmdirSync(p, opts) { - return this.baseFs.rmdirSync(this.mapToBase(p), opts); - } - async rmPromise(p, opts) { - return this.baseFs.rmPromise(this.mapToBase(p), opts); - } - rmSync(p, opts) { - return this.baseFs.rmSync(this.mapToBase(p), opts); - } - async linkPromise(existingP, newP) { - return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); - } - linkSync(existingP, newP) { - return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); - } - async symlinkPromise(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); - } - symlinkSync(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkSync(mappedTarget, mappedP, type); - } - async readFilePromise(p, encoding) { - return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); - } - readFileSync(p, encoding) { - return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); - } - readdirPromise(p, opts) { - return this.baseFs.readdirPromise(this.mapToBase(p), opts); - } - readdirSync(p, opts) { - return this.baseFs.readdirSync(this.mapToBase(p), opts); - } - async readlinkPromise(p) { - return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); - } - readlinkSync(p) { - return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); - } - async truncatePromise(p, len) { - return this.baseFs.truncatePromise(this.mapToBase(p), len); - } - truncateSync(p, len) { - return this.baseFs.truncateSync(this.mapToBase(p), len); - } - async ftruncatePromise(fd, len) { - return this.baseFs.ftruncatePromise(fd, len); - } - ftruncateSync(fd, len) { - return this.baseFs.ftruncateSync(fd, len); - } - watch(p, a, b) { - return this.baseFs.watch(this.mapToBase(p), - // @ts-expect-error - reason TBS - a, b); - } - watchFile(p, a, b) { - return this.baseFs.watchFile(this.mapToBase(p), - // @ts-expect-error - reason TBS - a, b); - } - unwatchFile(p, cb) { - return this.baseFs.unwatchFile(this.mapToBase(p), cb); - } - fsMapToBase(p) { - if (typeof p === `number`) { - return p; - } - else { - return this.mapToBase(p); - } - } - } - ProxiedFS$1.ProxiedFS = ProxiedFS; - return ProxiedFS$1; -} - -var hasRequiredAliasFS; - -function requireAliasFS () { - if (hasRequiredAliasFS) return AliasFS; - hasRequiredAliasFS = 1; - Object.defineProperty(AliasFS, "__esModule", { value: true }); - AliasFS.AliasFS = void 0; - const ProxiedFS_1 = requireProxiedFS(); - let AliasFS$1 = class AliasFS extends ProxiedFS_1.ProxiedFS { - constructor(target, { baseFs, pathUtils }) { - super(pathUtils); - this.target = target; - this.baseFs = baseFs; - } - getRealPath() { - return this.target; - } - getBaseFs() { - return this.baseFs; - } - mapFromBase(p) { - return p; - } - mapToBase(p) { - return p; - } - }; - AliasFS.AliasFS = AliasFS$1; - return AliasFS; -} - -var CwdFS = {}; - -var NodeFS$1 = {}; - -var hasRequiredNodeFS; - -function requireNodeFS () { - if (hasRequiredNodeFS) return NodeFS$1; - hasRequiredNodeFS = 1; - Object.defineProperty(NodeFS$1, "__esModule", { value: true }); - NodeFS$1.NodeFS = void 0; - const tslib_1 = require$$0; - const fs_1 = tslib_1.__importDefault(fs); - const FakeFS_1 = requireFakeFS(); - const path_1 = requirePath(); - function direntToPortable(dirent) { - // We don't need to return a copy, we can just reuse the object the real fs returned - const portableDirent = dirent; - if (typeof dirent.path === `string`) - portableDirent.path = path_1.npath.toPortablePath(dirent.path); - return portableDirent; - } - class NodeFS extends FakeFS_1.BasePortableFakeFS { - constructor(realFs = fs_1.default) { - super(); - this.realFs = realFs; - } - getExtractHint() { - return false; - } - getRealPath() { - return path_1.PortablePath.root; - } - resolve(p) { - return path_1.ppath.resolve(p); - } - async openPromise(p, flags, mode) { - return await new Promise((resolve, reject) => { - this.realFs.open(path_1.npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); - }); - } - openSync(p, flags, mode) { - return this.realFs.openSync(path_1.npath.fromPortablePath(p), flags, mode); - } - async opendirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (typeof opts !== `undefined`) { - this.realFs.opendir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.opendir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }).then(dir => { - // @ts-expect-error - reason TBS - // - // We need a way to tell TS that the values returned by the `read` - // methods are compatible with `Dir`, especially the `name` field. - // - // We also can't use `Object.assign` to set the because the `path` - // field to a Filename, because the property isn't writable, so - // we need to use defineProperty instead. - // - const dirWithFixedPath = dir; - Object.defineProperty(dirWithFixedPath, `path`, { - value: p, - configurable: true, - writable: true, - }); - return dirWithFixedPath; - }); - } - opendirSync(p, opts) { - const dir = typeof opts !== `undefined` - ? this.realFs.opendirSync(path_1.npath.fromPortablePath(p), opts) - : this.realFs.opendirSync(path_1.npath.fromPortablePath(p)); - // @ts-expect-error - reason TBS - // - // We need a way to tell TS that the values returned by the `read` - // methods are compatible with `Dir`, especially the `name` field. - // - // We also can't use `Object.assign` to set the because the `path` - // field to a Filename, because the property isn't writable, so - // we need to use defineProperty instead. - // - const dirWithFixedPath = dir; - Object.defineProperty(dirWithFixedPath, `path`, { - value: p, - configurable: true, - writable: true, - }); - return dirWithFixedPath; - } - async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { - return await new Promise((resolve, reject) => { - this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { - if (error) { - reject(error); - } - else { - resolve(bytesRead); - } - }); - }); - } - readSync(fd, buffer, offset, length, position) { - return this.realFs.readSync(fd, buffer, offset, length, position); - } - async writePromise(fd, buffer, offset, length, position) { - return await new Promise((resolve, reject) => { - if (typeof buffer === `string`) { - return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); - } - else { - return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); - } - }); - } - writeSync(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return this.realFs.writeSync(fd, buffer, offset); - } - else { - return this.realFs.writeSync(fd, buffer, offset, length, position); - } - } - async closePromise(fd) { - await new Promise((resolve, reject) => { - this.realFs.close(fd, this.makeCallback(resolve, reject)); - }); - } - closeSync(fd) { - this.realFs.closeSync(fd); - } - createReadStream(p, opts) { - const realPath = (p !== null ? path_1.npath.fromPortablePath(p) : p); - return this.realFs.createReadStream(realPath, opts); - } - createWriteStream(p, opts) { - const realPath = (p !== null ? path_1.npath.fromPortablePath(p) : p); - return this.realFs.createWriteStream(realPath, opts); - } - async realpathPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.realpath(path_1.npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); - }).then(path => { - return path_1.npath.toPortablePath(path); - }); - } - realpathSync(p) { - return path_1.npath.toPortablePath(this.realFs.realpathSync(path_1.npath.fromPortablePath(p), {})); - } - async existsPromise(p) { - return await new Promise(resolve => { - this.realFs.exists(path_1.npath.fromPortablePath(p), resolve); - }); - } - accessSync(p, mode) { - return this.realFs.accessSync(path_1.npath.fromPortablePath(p), mode); - } - async accessPromise(p, mode) { - return await new Promise((resolve, reject) => { - this.realFs.access(path_1.npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); - }); - } - existsSync(p) { - return this.realFs.existsSync(path_1.npath.fromPortablePath(p)); - } - async statPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.stat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.stat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - statSync(p, opts) { - if (opts) { - return this.realFs.statSync(path_1.npath.fromPortablePath(p), opts); - } - else { - return this.realFs.statSync(path_1.npath.fromPortablePath(p)); - } - } - async fstatPromise(fd, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.fstat(fd, this.makeCallback(resolve, reject)); - } - }); - } - fstatSync(fd, opts) { - if (opts) { - return this.realFs.fstatSync(fd, opts); - } - else { - return this.realFs.fstatSync(fd); - } - } - async lstatPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.lstat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.lstat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - lstatSync(p, opts) { - if (opts) { - return this.realFs.lstatSync(path_1.npath.fromPortablePath(p), opts); - } - else { - return this.realFs.lstatSync(path_1.npath.fromPortablePath(p)); - } - } - async fchmodPromise(fd, mask) { - return await new Promise((resolve, reject) => { - this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); - }); - } - fchmodSync(fd, mask) { - return this.realFs.fchmodSync(fd, mask); - } - async chmodPromise(p, mask) { - return await new Promise((resolve, reject) => { - this.realFs.chmod(path_1.npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); - }); - } - chmodSync(p, mask) { - return this.realFs.chmodSync(path_1.npath.fromPortablePath(p), mask); - } - async fchownPromise(fd, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); - }); - } - fchownSync(fd, uid, gid) { - return this.realFs.fchownSync(fd, uid, gid); - } - async chownPromise(p, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.chown(path_1.npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); - }); - } - chownSync(p, uid, gid) { - return this.realFs.chownSync(path_1.npath.fromPortablePath(p), uid, gid); - } - async renamePromise(oldP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.rename(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); - } - renameSync(oldP, newP) { - return this.realFs.renameSync(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP)); - } - async copyFilePromise(sourceP, destP, flags = 0) { - return await new Promise((resolve, reject) => { - this.realFs.copyFile(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); - }); - } - copyFileSync(sourceP, destP, flags = 0) { - return this.realFs.copyFileSync(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags); - } - async appendFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); - } - appendFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFileSync(fsNativePath, content, opts); - } - else { - this.realFs.appendFileSync(fsNativePath, content); - } - } - async writeFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); - } - writeFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFileSync(fsNativePath, content, opts); - } - else { - this.realFs.writeFileSync(fsNativePath, content); - } - } - async unlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.unlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }); - } - unlinkSync(p) { - return this.realFs.unlinkSync(path_1.npath.fromPortablePath(p)); - } - async utimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.utimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); - } - utimesSync(p, atime, mtime) { - this.realFs.utimesSync(path_1.npath.fromPortablePath(p), atime, mtime); - } - async lutimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.lutimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); - } - lutimesSync(p, atime, mtime) { - this.realFs.lutimesSync(path_1.npath.fromPortablePath(p), atime, mtime); - } - async mkdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - this.realFs.mkdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - }); - } - mkdirSync(p, opts) { - return this.realFs.mkdirSync(path_1.npath.fromPortablePath(p), opts); - } - async rmdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - // TODO: always pass opts when min node version is 12.10+ - if (opts) { - this.realFs.rmdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.rmdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - rmdirSync(p, opts) { - return this.realFs.rmdirSync(path_1.npath.fromPortablePath(p), opts); - } - async rmPromise(p, opts) { - return await new Promise((resolve, reject) => { - // TODO: always pass opts when min node version is 12.10+ - if (opts) { - this.realFs.rm(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - else { - this.realFs.rm(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - rmSync(p, opts) { - return this.realFs.rmSync(path_1.npath.fromPortablePath(p), opts); - } - async linkPromise(existingP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.link(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); - } - linkSync(existingP, newP) { - return this.realFs.linkSync(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP)); - } - async symlinkPromise(target, p, type) { - return await new Promise((resolve, reject) => { - this.realFs.symlink(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); - }); - } - symlinkSync(target, p, type) { - return this.realFs.symlinkSync(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type); - } - async readFilePromise(p, encoding) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); - }); - } - readFileSync(p, encoding) { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - return this.realFs.readFileSync(fsNativePath, encoding); - } - async readdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - if (opts.recursive && process.platform === `win32`) { - if (opts.withFileTypes) { - this.realFs.readdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(results => resolve(results.map(direntToPortable)), reject)); - } - else { - this.realFs.readdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(results => resolve(results.map(path_1.npath.toPortablePath)), reject)); - } - } - else { - this.realFs.readdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - } - else { - this.realFs.readdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - readdirSync(p, opts) { - if (opts) { - if (opts.recursive && process.platform === `win32`) { - if (opts.withFileTypes) { - return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts).map(direntToPortable); - } - else { - return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts).map(path_1.npath.toPortablePath); - } - } - else { - return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts); - } - } - else { - return this.realFs.readdirSync(path_1.npath.fromPortablePath(p)); - } - } - async readlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.readlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }).then(path => { - return path_1.npath.toPortablePath(path); - }); - } - readlinkSync(p) { - return path_1.npath.toPortablePath(this.realFs.readlinkSync(path_1.npath.fromPortablePath(p))); - } - async truncatePromise(p, len) { - return await new Promise((resolve, reject) => { - this.realFs.truncate(path_1.npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); - }); - } - truncateSync(p, len) { - return this.realFs.truncateSync(path_1.npath.fromPortablePath(p), len); - } - async ftruncatePromise(fd, len) { - return await new Promise((resolve, reject) => { - this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); - }); - } - ftruncateSync(fd, len) { - return this.realFs.ftruncateSync(fd, len); - } - watch(p, a, b) { - return this.realFs.watch(path_1.npath.fromPortablePath(p), - // @ts-expect-error - reason TBS - a, b); - } - watchFile(p, a, b) { - return this.realFs.watchFile(path_1.npath.fromPortablePath(p), - // @ts-expect-error - reason TBS - a, b); - } - unwatchFile(p, cb) { - return this.realFs.unwatchFile(path_1.npath.fromPortablePath(p), cb); - } - makeCallback(resolve, reject) { - return (err, result) => { - if (err) { - reject(err); - } - else { - resolve(result); - } - }; - } - } - NodeFS$1.NodeFS = NodeFS; - return NodeFS$1; -} - -var hasRequiredCwdFS; - -function requireCwdFS () { - if (hasRequiredCwdFS) return CwdFS; - hasRequiredCwdFS = 1; - Object.defineProperty(CwdFS, "__esModule", { value: true }); - CwdFS.CwdFS = void 0; - const NodeFS_1 = requireNodeFS(); - const ProxiedFS_1 = requireProxiedFS(); - const path_1 = requirePath(); - let CwdFS$1 = class CwdFS extends ProxiedFS_1.ProxiedFS { - constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { - super(path_1.ppath); - this.target = this.pathUtils.normalize(target); - this.baseFs = baseFs; - } - getRealPath() { - return this.pathUtils.resolve(this.baseFs.getRealPath(), this.target); - } - resolve(p) { - if (this.pathUtils.isAbsolute(p)) { - return path_1.ppath.normalize(p); - } - else { - return this.baseFs.resolve(path_1.ppath.join(this.target, p)); - } - } - mapFromBase(path) { - return path; - } - mapToBase(path) { - if (this.pathUtils.isAbsolute(path)) { - return path; - } - else { - return this.pathUtils.join(this.target, path); - } - } - }; - CwdFS.CwdFS = CwdFS$1; - return CwdFS; -} - -var JailFS = {}; - -var hasRequiredJailFS; - -function requireJailFS () { - if (hasRequiredJailFS) return JailFS; - hasRequiredJailFS = 1; - Object.defineProperty(JailFS, "__esModule", { value: true }); - JailFS.JailFS = void 0; - const NodeFS_1 = requireNodeFS(); - const ProxiedFS_1 = requireProxiedFS(); - const path_1 = requirePath(); - const JAIL_ROOT = path_1.PortablePath.root; - let JailFS$1 = class JailFS extends ProxiedFS_1.ProxiedFS { - constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { - super(path_1.ppath); - this.target = this.pathUtils.resolve(path_1.PortablePath.root, target); - this.baseFs = baseFs; - } - getRealPath() { - return this.pathUtils.resolve(this.baseFs.getRealPath(), this.pathUtils.relative(path_1.PortablePath.root, this.target)); - } - getTarget() { - return this.target; - } - getBaseFs() { - return this.baseFs; - } - mapToBase(p) { - const normalized = this.pathUtils.normalize(p); - if (this.pathUtils.isAbsolute(p)) - return this.pathUtils.resolve(this.target, this.pathUtils.relative(JAIL_ROOT, p)); - if (normalized.match(/^\.\.\/?/)) - throw new Error(`Resolving this path (${p}) would escape the jail`); - return this.pathUtils.resolve(this.target, p); - } - mapFromBase(p) { - return this.pathUtils.resolve(JAIL_ROOT, this.pathUtils.relative(this.target, p)); - } - }; - JailFS.JailFS = JailFS$1; - return JailFS; -} - -var LazyFS = {}; - -var hasRequiredLazyFS; - -function requireLazyFS () { - if (hasRequiredLazyFS) return LazyFS; - hasRequiredLazyFS = 1; - Object.defineProperty(LazyFS, "__esModule", { value: true }); - LazyFS.LazyFS = void 0; - const ProxiedFS_1 = requireProxiedFS(); - let LazyFS$1 = class LazyFS extends ProxiedFS_1.ProxiedFS { - constructor(factory, pathUtils) { - super(pathUtils); - this.instance = null; - this.factory = factory; - } - get baseFs() { - if (!this.instance) - this.instance = this.factory(); - return this.instance; - } - set baseFs(value) { - this.instance = value; - } - mapFromBase(p) { - return p; - } - mapToBase(p) { - return p; - } - }; - LazyFS.LazyFS = LazyFS$1; - return LazyFS; -} - -var MountFS = {}; - -var hasRequiredMountFS; - -function requireMountFS () { - if (hasRequiredMountFS) return MountFS; - hasRequiredMountFS = 1; - Object.defineProperty(MountFS, "__esModule", { value: true }); - MountFS.MountFS = void 0; - const tslib_1 = require$$0; - const fs_1 = fs; - const FakeFS_1 = requireFakeFS(); - const NodeFS_1 = requireNodeFS(); - const watchFile_1 = requireWatchFile(); - const errors = tslib_1.__importStar(requireErrors()); - const path_1 = requirePath(); - // Only file descriptors prefixed by those values will be forwarded to the MountFS - // instances. Note that the highest MOUNT_MAGIC bit MUST NOT be set, otherwise the - // resulting fd becomes a negative integer, which isn't supposed to happen per - // the unix rules (caused problems w/ Go). - // - // Those values must be synced with packages/yarnpkg-pnp/sources/esm-loader/fspatch.ts - // - const MOUNT_MASK = 0xff000000; - let MountFS$1 = class MountFS extends FakeFS_1.BasePortableFakeFS { - constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, magicByte = 0x2a, maxOpenFiles = Infinity, useCache = true, maxAge = 5000, typeCheck = fs_1.constants.S_IFREG, getMountPoint, factoryPromise, factorySync }) { - if (Math.floor(magicByte) !== magicByte || !(magicByte > 1 && magicByte <= 127)) - throw new Error(`The magic byte must be set to a round value between 1 and 127 included`); - super(); - this.fdMap = new Map(); - this.nextFd = 3; - this.isMount = new Set(); - this.notMount = new Set(); - this.realPaths = new Map(); - this.limitOpenFilesTimeout = null; - this.baseFs = baseFs; - this.mountInstances = useCache ? new Map() : null; - this.factoryPromise = factoryPromise; - this.factorySync = factorySync; - this.filter = filter; - this.getMountPoint = getMountPoint; - this.magic = magicByte << 24; - this.maxAge = maxAge; - this.maxOpenFiles = maxOpenFiles; - this.typeCheck = typeCheck; - } - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); - } - getRealPath() { - return this.baseFs.getRealPath(); - } - saveAndClose() { - (0, watchFile_1.unwatchAllFiles)(this); - if (this.mountInstances) { - for (const [path, { childFs }] of this.mountInstances.entries()) { - childFs.saveAndClose?.(); - this.mountInstances.delete(path); - } - } - } - discardAndClose() { - (0, watchFile_1.unwatchAllFiles)(this); - if (this.mountInstances) { - for (const [path, { childFs }] of this.mountInstances.entries()) { - childFs.discardAndClose?.(); - this.mountInstances.delete(path); - } - } - } - resolve(p) { - return this.baseFs.resolve(p); - } - remapFd(mountFs, fd) { - const remappedFd = this.nextFd++ | this.magic; - this.fdMap.set(remappedFd, [mountFs, fd]); - return remappedFd; - } - async openPromise(p, flags, mode) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.openPromise(p, flags, mode); - }, async (mountFs, { subPath }) => { - return this.remapFd(mountFs, await mountFs.openPromise(subPath, flags, mode)); - }); - } - openSync(p, flags, mode) { - return this.makeCallSync(p, () => { - return this.baseFs.openSync(p, flags, mode); - }, (mountFs, { subPath }) => { - return this.remapFd(mountFs, mountFs.openSync(subPath, flags, mode)); - }); - } - async opendirPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.opendirPromise(p, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.opendirPromise(subPath, opts); - }, { - requireSubpath: false, - }); - } - opendirSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.opendirSync(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.opendirSync(subPath, opts); - }, { - requireSubpath: false, - }); - } - async readPromise(fd, buffer, offset, length, position) { - if ((fd & MOUNT_MASK) !== this.magic) - return await this.baseFs.readPromise(fd, buffer, offset, length, position); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`read`); - const [mountFs, realFd] = entry; - return await mountFs.readPromise(realFd, buffer, offset, length, position); - } - readSync(fd, buffer, offset, length, position) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.readSync(fd, buffer, offset, length, position); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`readSync`); - const [mountFs, realFd] = entry; - return mountFs.readSync(realFd, buffer, offset, length, position); - } - async writePromise(fd, buffer, offset, length, position) { - if ((fd & MOUNT_MASK) !== this.magic) { - if (typeof buffer === `string`) { - return await this.baseFs.writePromise(fd, buffer, offset); - } - else { - return await this.baseFs.writePromise(fd, buffer, offset, length, position); - } - } - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`write`); - const [mountFs, realFd] = entry; - if (typeof buffer === `string`) { - return await mountFs.writePromise(realFd, buffer, offset); - } - else { - return await mountFs.writePromise(realFd, buffer, offset, length, position); - } - } - writeSync(fd, buffer, offset, length, position) { - if ((fd & MOUNT_MASK) !== this.magic) { - if (typeof buffer === `string`) { - return this.baseFs.writeSync(fd, buffer, offset); - } - else { - return this.baseFs.writeSync(fd, buffer, offset, length, position); - } - } - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`writeSync`); - const [mountFs, realFd] = entry; - if (typeof buffer === `string`) { - return mountFs.writeSync(realFd, buffer, offset); - } - else { - return mountFs.writeSync(realFd, buffer, offset, length, position); - } - } - async closePromise(fd) { - if ((fd & MOUNT_MASK) !== this.magic) - return await this.baseFs.closePromise(fd); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`close`); - this.fdMap.delete(fd); - const [mountFs, realFd] = entry; - return await mountFs.closePromise(realFd); - } - closeSync(fd) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.closeSync(fd); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`closeSync`); - this.fdMap.delete(fd); - const [mountFs, realFd] = entry; - return mountFs.closeSync(realFd); - } - createReadStream(p, opts) { - if (p === null) - return this.baseFs.createReadStream(p, opts); - return this.makeCallSync(p, () => { - return this.baseFs.createReadStream(p, opts); - }, (mountFs, { archivePath, subPath }) => { - const stream = mountFs.createReadStream(subPath, opts); - // This is a very hacky workaround. `MountOpenFS` shouldn't have to work with `NativePath`s. - // Ref: https://github.com/yarnpkg/berry/pull/3774 - // TODO: think of a better solution - stream.path = path_1.npath.fromPortablePath(this.pathUtils.join(archivePath, subPath)); - return stream; - }); - } - createWriteStream(p, opts) { - if (p === null) - return this.baseFs.createWriteStream(p, opts); - return this.makeCallSync(p, () => { - return this.baseFs.createWriteStream(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.createWriteStream(subPath, opts); - }); - } - async realpathPromise(p) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.realpathPromise(p); - }, async (mountFs, { archivePath, subPath }) => { - let realArchivePath = this.realPaths.get(archivePath); - if (typeof realArchivePath === `undefined`) { - realArchivePath = await this.baseFs.realpathPromise(archivePath); - this.realPaths.set(archivePath, realArchivePath); - } - return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, await mountFs.realpathPromise(subPath))); - }); - } - realpathSync(p) { - return this.makeCallSync(p, () => { - return this.baseFs.realpathSync(p); - }, (mountFs, { archivePath, subPath }) => { - let realArchivePath = this.realPaths.get(archivePath); - if (typeof realArchivePath === `undefined`) { - realArchivePath = this.baseFs.realpathSync(archivePath); - this.realPaths.set(archivePath, realArchivePath); - } - return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, mountFs.realpathSync(subPath))); - }); - } - async existsPromise(p) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.existsPromise(p); - }, async (mountFs, { subPath }) => { - return await mountFs.existsPromise(subPath); - }); - } - existsSync(p) { - return this.makeCallSync(p, () => { - return this.baseFs.existsSync(p); - }, (mountFs, { subPath }) => { - return mountFs.existsSync(subPath); - }); - } - async accessPromise(p, mode) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.accessPromise(p, mode); - }, async (mountFs, { subPath }) => { - return await mountFs.accessPromise(subPath, mode); - }); - } - accessSync(p, mode) { - return this.makeCallSync(p, () => { - return this.baseFs.accessSync(p, mode); - }, (mountFs, { subPath }) => { - return mountFs.accessSync(subPath, mode); - }); - } - async statPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.statPromise(p, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.statPromise(subPath, opts); - }); - } - statSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.statSync(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.statSync(subPath, opts); - }); - } - async fstatPromise(fd, opts) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.fstatPromise(fd, opts); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`fstat`); - const [mountFs, realFd] = entry; - return mountFs.fstatPromise(realFd, opts); - } - fstatSync(fd, opts) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.fstatSync(fd, opts); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`fstatSync`); - const [mountFs, realFd] = entry; - return mountFs.fstatSync(realFd, opts); - } - async lstatPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.lstatPromise(p, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.lstatPromise(subPath, opts); - }); - } - lstatSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.lstatSync(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.lstatSync(subPath, opts); - }); - } - async fchmodPromise(fd, mask) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.fchmodPromise(fd, mask); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`fchmod`); - const [mountFs, realFd] = entry; - return mountFs.fchmodPromise(realFd, mask); - } - fchmodSync(fd, mask) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.fchmodSync(fd, mask); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`fchmodSync`); - const [mountFs, realFd] = entry; - return mountFs.fchmodSync(realFd, mask); - } - async chmodPromise(p, mask) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.chmodPromise(p, mask); - }, async (mountFs, { subPath }) => { - return await mountFs.chmodPromise(subPath, mask); - }); - } - chmodSync(p, mask) { - return this.makeCallSync(p, () => { - return this.baseFs.chmodSync(p, mask); - }, (mountFs, { subPath }) => { - return mountFs.chmodSync(subPath, mask); - }); - } - async fchownPromise(fd, uid, gid) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.fchownPromise(fd, uid, gid); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`fchown`); - const [zipFs, realFd] = entry; - return zipFs.fchownPromise(realFd, uid, gid); - } - fchownSync(fd, uid, gid) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.fchownSync(fd, uid, gid); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`fchownSync`); - const [zipFs, realFd] = entry; - return zipFs.fchownSync(realFd, uid, gid); - } - async chownPromise(p, uid, gid) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.chownPromise(p, uid, gid); - }, async (mountFs, { subPath }) => { - return await mountFs.chownPromise(subPath, uid, gid); - }); - } - chownSync(p, uid, gid) { - return this.makeCallSync(p, () => { - return this.baseFs.chownSync(p, uid, gid); - }, (mountFs, { subPath }) => { - return mountFs.chownSync(subPath, uid, gid); - }); - } - async renamePromise(oldP, newP) { - return await this.makeCallPromise(oldP, async () => { - return await this.makeCallPromise(newP, async () => { - return await this.baseFs.renamePromise(oldP, newP); - }, async () => { - throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - }); - }, async (mountFsO, { subPath: subPathO }) => { - return await this.makeCallPromise(newP, async () => { - throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - }, async (mountFsN, { subPath: subPathN }) => { - if (mountFsO !== mountFsN) { - throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - } - else { - return await mountFsO.renamePromise(subPathO, subPathN); - } - }); - }); - } - renameSync(oldP, newP) { - return this.makeCallSync(oldP, () => { - return this.makeCallSync(newP, () => { - return this.baseFs.renameSync(oldP, newP); - }, () => { - throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - }); - }, (mountFsO, { subPath: subPathO }) => { - return this.makeCallSync(newP, () => { - throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - }, (mountFsN, { subPath: subPathN }) => { - if (mountFsO !== mountFsN) { - throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - } - else { - return mountFsO.renameSync(subPathO, subPathN); - } - }); - }); - } - async copyFilePromise(sourceP, destP, flags = 0) { - const fallback = async (sourceFs, sourceP, destFs, destP) => { - if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) - throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` }); - if ((flags & fs_1.constants.COPYFILE_EXCL) && await this.existsPromise(sourceP)) - throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` }); - let content; - try { - content = await sourceFs.readFilePromise(sourceP); - } - catch { - throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` }); - } - await destFs.writeFilePromise(destP, content); - }; - return await this.makeCallPromise(sourceP, async () => { - return await this.makeCallPromise(destP, async () => { - return await this.baseFs.copyFilePromise(sourceP, destP, flags); - }, async (mountFsD, { subPath: subPathD }) => { - return await fallback(this.baseFs, sourceP, mountFsD, subPathD); - }); - }, async (mountFsS, { subPath: subPathS }) => { - return await this.makeCallPromise(destP, async () => { - return await fallback(mountFsS, subPathS, this.baseFs, destP); - }, async (mountFsD, { subPath: subPathD }) => { - if (mountFsS !== mountFsD) { - return await fallback(mountFsS, subPathS, mountFsD, subPathD); - } - else { - return await mountFsS.copyFilePromise(subPathS, subPathD, flags); - } - }); - }); - } - copyFileSync(sourceP, destP, flags = 0) { - const fallback = (sourceFs, sourceP, destFs, destP) => { - if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) - throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` }); - if ((flags & fs_1.constants.COPYFILE_EXCL) && this.existsSync(sourceP)) - throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` }); - let content; - try { - content = sourceFs.readFileSync(sourceP); - } - catch { - throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` }); - } - destFs.writeFileSync(destP, content); - }; - return this.makeCallSync(sourceP, () => { - return this.makeCallSync(destP, () => { - return this.baseFs.copyFileSync(sourceP, destP, flags); - }, (mountFsD, { subPath: subPathD }) => { - return fallback(this.baseFs, sourceP, mountFsD, subPathD); - }); - }, (mountFsS, { subPath: subPathS }) => { - return this.makeCallSync(destP, () => { - return fallback(mountFsS, subPathS, this.baseFs, destP); - }, (mountFsD, { subPath: subPathD }) => { - if (mountFsS !== mountFsD) { - return fallback(mountFsS, subPathS, mountFsD, subPathD); - } - else { - return mountFsS.copyFileSync(subPathS, subPathD, flags); - } - }); - }); - } - async appendFilePromise(p, content, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.appendFilePromise(p, content, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.appendFilePromise(subPath, content, opts); - }); - } - appendFileSync(p, content, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.appendFileSync(p, content, opts); - }, (mountFs, { subPath }) => { - return mountFs.appendFileSync(subPath, content, opts); - }); - } - async writeFilePromise(p, content, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.writeFilePromise(p, content, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.writeFilePromise(subPath, content, opts); - }); - } - writeFileSync(p, content, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.writeFileSync(p, content, opts); - }, (mountFs, { subPath }) => { - return mountFs.writeFileSync(subPath, content, opts); - }); - } - async unlinkPromise(p) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.unlinkPromise(p); - }, async (mountFs, { subPath }) => { - return await mountFs.unlinkPromise(subPath); - }); - } - unlinkSync(p) { - return this.makeCallSync(p, () => { - return this.baseFs.unlinkSync(p); - }, (mountFs, { subPath }) => { - return mountFs.unlinkSync(subPath); - }); - } - async utimesPromise(p, atime, mtime) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.utimesPromise(p, atime, mtime); - }, async (mountFs, { subPath }) => { - return await mountFs.utimesPromise(subPath, atime, mtime); - }); - } - utimesSync(p, atime, mtime) { - return this.makeCallSync(p, () => { - return this.baseFs.utimesSync(p, atime, mtime); - }, (mountFs, { subPath }) => { - return mountFs.utimesSync(subPath, atime, mtime); - }); - } - async lutimesPromise(p, atime, mtime) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.lutimesPromise(p, atime, mtime); - }, async (mountFs, { subPath }) => { - return await mountFs.lutimesPromise(subPath, atime, mtime); - }); - } - lutimesSync(p, atime, mtime) { - return this.makeCallSync(p, () => { - return this.baseFs.lutimesSync(p, atime, mtime); - }, (mountFs, { subPath }) => { - return mountFs.lutimesSync(subPath, atime, mtime); - }); - } - async mkdirPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.mkdirPromise(p, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.mkdirPromise(subPath, opts); - }); - } - mkdirSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.mkdirSync(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.mkdirSync(subPath, opts); - }); - } - async rmdirPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.rmdirPromise(p, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.rmdirPromise(subPath, opts); - }); - } - rmdirSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.rmdirSync(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.rmdirSync(subPath, opts); - }); - } - async rmPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.rmPromise(p, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.rmPromise(subPath, opts); - }); - } - rmSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.rmSync(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.rmSync(subPath, opts); - }); - } - async linkPromise(existingP, newP) { - return await this.makeCallPromise(newP, async () => { - return await this.baseFs.linkPromise(existingP, newP); - }, async (mountFs, { subPath }) => { - return await mountFs.linkPromise(existingP, subPath); - }); - } - linkSync(existingP, newP) { - return this.makeCallSync(newP, () => { - return this.baseFs.linkSync(existingP, newP); - }, (mountFs, { subPath }) => { - return mountFs.linkSync(existingP, subPath); - }); - } - async symlinkPromise(target, p, type) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.symlinkPromise(target, p, type); - }, async (mountFs, { subPath }) => { - return await mountFs.symlinkPromise(target, subPath); - }); - } - symlinkSync(target, p, type) { - return this.makeCallSync(p, () => { - return this.baseFs.symlinkSync(target, p, type); - }, (mountFs, { subPath }) => { - return mountFs.symlinkSync(target, subPath); - }); - } - async readFilePromise(p, encoding) { - return this.makeCallPromise(p, async () => { - return await this.baseFs.readFilePromise(p, encoding); - }, async (mountFs, { subPath }) => { - return await mountFs.readFilePromise(subPath, encoding); - }); - } - readFileSync(p, encoding) { - return this.makeCallSync(p, () => { - return this.baseFs.readFileSync(p, encoding); - }, (mountFs, { subPath }) => { - return mountFs.readFileSync(subPath, encoding); - }); - } - async readdirPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.readdirPromise(p, opts); - }, async (mountFs, { subPath }) => { - return await mountFs.readdirPromise(subPath, opts); - }, { - requireSubpath: false, - }); - } - readdirSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.readdirSync(p, opts); - }, (mountFs, { subPath }) => { - return mountFs.readdirSync(subPath, opts); - }, { - requireSubpath: false, - }); - } - async readlinkPromise(p) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.readlinkPromise(p); - }, async (mountFs, { subPath }) => { - return await mountFs.readlinkPromise(subPath); - }); - } - readlinkSync(p) { - return this.makeCallSync(p, () => { - return this.baseFs.readlinkSync(p); - }, (mountFs, { subPath }) => { - return mountFs.readlinkSync(subPath); - }); - } - async truncatePromise(p, len) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.truncatePromise(p, len); - }, async (mountFs, { subPath }) => { - return await mountFs.truncatePromise(subPath, len); - }); - } - truncateSync(p, len) { - return this.makeCallSync(p, () => { - return this.baseFs.truncateSync(p, len); - }, (mountFs, { subPath }) => { - return mountFs.truncateSync(subPath, len); - }); - } - async ftruncatePromise(fd, len) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.ftruncatePromise(fd, len); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`ftruncate`); - const [mountFs, realFd] = entry; - return mountFs.ftruncatePromise(realFd, len); - } - ftruncateSync(fd, len) { - if ((fd & MOUNT_MASK) !== this.magic) - return this.baseFs.ftruncateSync(fd, len); - const entry = this.fdMap.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`ftruncateSync`); - const [mountFs, realFd] = entry; - return mountFs.ftruncateSync(realFd, len); - } - watch(p, a, b) { - return this.makeCallSync(p, () => { - return this.baseFs.watch(p, - // @ts-expect-error - reason TBS - a, b); - }, (mountFs, { subPath }) => { - return mountFs.watch(subPath, - // @ts-expect-error - reason TBS - a, b); - }); - } - watchFile(p, a, b) { - return this.makeCallSync(p, () => { - return this.baseFs.watchFile(p, - // @ts-expect-error - reason TBS - a, b); - }, () => { - return (0, watchFile_1.watchFile)(this, p, a, b); - }); - } - unwatchFile(p, cb) { - return this.makeCallSync(p, () => { - return this.baseFs.unwatchFile(p, cb); - }, () => { - return (0, watchFile_1.unwatchFile)(this, p, cb); - }); - } - async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) { - if (typeof p !== `string`) - return await discard(); - const normalizedP = this.resolve(p); - const mountInfo = this.findMount(normalizedP); - if (!mountInfo) - return await discard(); - if (requireSubpath && mountInfo.subPath === `/`) - return await discard(); - return await this.getMountPromise(mountInfo.archivePath, async (mountFs) => await accept(mountFs, mountInfo)); - } - makeCallSync(p, discard, accept, { requireSubpath = true } = {}) { - if (typeof p !== `string`) - return discard(); - const normalizedP = this.resolve(p); - const mountInfo = this.findMount(normalizedP); - if (!mountInfo) - return discard(); - if (requireSubpath && mountInfo.subPath === `/`) - return discard(); - return this.getMountSync(mountInfo.archivePath, mountFs => accept(mountFs, mountInfo)); - } - findMount(p) { - if (this.filter && !this.filter.test(p)) - return null; - let filePath = ``; - while (true) { - const pathPartWithArchive = p.substring(filePath.length); - const mountPoint = this.getMountPoint(pathPartWithArchive, filePath); - if (!mountPoint) - return null; - filePath = this.pathUtils.join(filePath, mountPoint); - if (!this.isMount.has(filePath)) { - if (this.notMount.has(filePath)) - continue; - try { - if (this.typeCheck !== null && (this.baseFs.statSync(filePath).mode & fs_1.constants.S_IFMT) !== this.typeCheck) { - this.notMount.add(filePath); - continue; - } - } - catch { - return null; - } - this.isMount.add(filePath); - } - return { - archivePath: filePath, - subPath: this.pathUtils.join(path_1.PortablePath.root, p.substring(filePath.length)), - }; - } - } - limitOpenFiles(max) { - if (this.mountInstances === null) - return; - const now = Date.now(); - let nextExpiresAt = now + this.maxAge; - let closeCount = max === null ? 0 : this.mountInstances.size - max; - for (const [path, { childFs, expiresAt, refCount }] of this.mountInstances.entries()) { - if (refCount !== 0 || childFs.hasOpenFileHandles?.()) { - continue; - } - else if (now >= expiresAt) { - childFs.saveAndClose?.(); - this.mountInstances.delete(path); - closeCount -= 1; - continue; - } - else if (max === null || closeCount <= 0) { - nextExpiresAt = expiresAt; - break; - } - childFs.saveAndClose?.(); - this.mountInstances.delete(path); - closeCount -= 1; - } - if (this.limitOpenFilesTimeout === null && ((max === null && this.mountInstances.size > 0) || max !== null) && isFinite(nextExpiresAt)) { - this.limitOpenFilesTimeout = setTimeout(() => { - this.limitOpenFilesTimeout = null; - this.limitOpenFiles(null); - }, nextExpiresAt - now).unref(); - } - } - async getMountPromise(p, accept) { - if (this.mountInstances) { - let cachedMountFs = this.mountInstances.get(p); - if (!cachedMountFs) { - const createFsInstance = await this.factoryPromise(this.baseFs, p); - // We need to recheck because concurrent getMountPromise calls may - // have instantiated the mount archive while we were waiting - cachedMountFs = this.mountInstances.get(p); - if (!cachedMountFs) { - cachedMountFs = { - childFs: createFsInstance(), - expiresAt: 0, - refCount: 0, - }; - } - } - // Removing then re-adding the field allows us to easily implement - // a basic LRU garbage collection strategy - this.mountInstances.delete(p); - this.limitOpenFiles(this.maxOpenFiles - 1); - this.mountInstances.set(p, cachedMountFs); - cachedMountFs.expiresAt = Date.now() + this.maxAge; - cachedMountFs.refCount += 1; - try { - return await accept(cachedMountFs.childFs); - } - finally { - cachedMountFs.refCount -= 1; - } - } - else { - const mountFs = (await this.factoryPromise(this.baseFs, p))(); - try { - return await accept(mountFs); - } - finally { - mountFs.saveAndClose?.(); - } - } - } - getMountSync(p, accept) { - if (this.mountInstances) { - let cachedMountFs = this.mountInstances.get(p); - if (!cachedMountFs) { - cachedMountFs = { - childFs: this.factorySync(this.baseFs, p), - expiresAt: 0, - refCount: 0, - }; - } - // Removing then re-adding the field allows us to easily implement - // a basic LRU garbage collection strategy - this.mountInstances.delete(p); - this.limitOpenFiles(this.maxOpenFiles - 1); - this.mountInstances.set(p, cachedMountFs); - cachedMountFs.expiresAt = Date.now() + this.maxAge; - return accept(cachedMountFs.childFs); - } - else { - const childFs = this.factorySync(this.baseFs, p); - try { - return accept(childFs); - } - finally { - childFs.saveAndClose?.(); - } - } - } - }; - MountFS.MountFS = MountFS$1; - return MountFS; -} - -var NoFS = {}; - -var hasRequiredNoFS; - -function requireNoFS () { - if (hasRequiredNoFS) return NoFS; - hasRequiredNoFS = 1; - Object.defineProperty(NoFS, "__esModule", { value: true }); - NoFS.NoFS = void 0; - const FakeFS_1 = requireFakeFS(); - const path_1 = requirePath(); - const makeError = () => Object.assign(new Error(`ENOSYS: unsupported filesystem access`), { code: `ENOSYS` }); - let NoFS$1 = class NoFS extends FakeFS_1.FakeFS { - constructor() { - super(path_1.ppath); - } - getExtractHint() { - throw makeError(); - } - getRealPath() { - throw makeError(); - } - resolve() { - throw makeError(); - } - async openPromise() { - throw makeError(); - } - openSync() { - throw makeError(); - } - async opendirPromise() { - throw makeError(); - } - opendirSync() { - throw makeError(); - } - async readPromise() { - throw makeError(); - } - readSync() { - throw makeError(); - } - async writePromise() { - throw makeError(); - } - writeSync() { - throw makeError(); - } - async closePromise() { - throw makeError(); - } - closeSync() { - throw makeError(); - } - createWriteStream() { - throw makeError(); - } - createReadStream() { - throw makeError(); - } - async realpathPromise() { - throw makeError(); - } - realpathSync() { - throw makeError(); - } - async readdirPromise() { - throw makeError(); - } - readdirSync() { - throw makeError(); - } - async existsPromise(p) { - throw makeError(); - } - existsSync(p) { - throw makeError(); - } - async accessPromise() { - throw makeError(); - } - accessSync() { - throw makeError(); - } - async statPromise() { - throw makeError(); - } - statSync() { - throw makeError(); - } - async fstatPromise(fd) { - throw makeError(); - } - fstatSync(fd) { - throw makeError(); - } - async lstatPromise(p) { - throw makeError(); - } - lstatSync(p) { - throw makeError(); - } - async fchmodPromise() { - throw makeError(); - } - fchmodSync() { - throw makeError(); - } - async chmodPromise() { - throw makeError(); - } - chmodSync() { - throw makeError(); - } - async fchownPromise() { - throw makeError(); - } - fchownSync() { - throw makeError(); - } - async chownPromise() { - throw makeError(); - } - chownSync() { - throw makeError(); - } - async mkdirPromise() { - throw makeError(); - } - mkdirSync() { - throw makeError(); - } - async rmdirPromise() { - throw makeError(); - } - rmdirSync() { - throw makeError(); - } - async rmPromise() { - throw makeError(); - } - rmSync() { - throw makeError(); - } - async linkPromise() { - throw makeError(); - } - linkSync() { - throw makeError(); - } - async symlinkPromise() { - throw makeError(); - } - symlinkSync() { - throw makeError(); - } - async renamePromise() { - throw makeError(); - } - renameSync() { - throw makeError(); - } - async copyFilePromise() { - throw makeError(); - } - copyFileSync() { - throw makeError(); - } - async appendFilePromise() { - throw makeError(); - } - appendFileSync() { - throw makeError(); - } - async writeFilePromise() { - throw makeError(); - } - writeFileSync() { - throw makeError(); - } - async unlinkPromise() { - throw makeError(); - } - unlinkSync() { - throw makeError(); - } - async utimesPromise() { - throw makeError(); - } - utimesSync() { - throw makeError(); - } - async lutimesPromise() { - throw makeError(); - } - lutimesSync() { - throw makeError(); - } - async readFilePromise() { - throw makeError(); - } - readFileSync() { - throw makeError(); - } - async readlinkPromise() { - throw makeError(); - } - readlinkSync() { - throw makeError(); - } - async truncatePromise() { - throw makeError(); - } - truncateSync() { - throw makeError(); - } - async ftruncatePromise(fd, len) { - throw makeError(); - } - ftruncateSync(fd, len) { - throw makeError(); - } - watch() { - throw makeError(); - } - watchFile() { - throw makeError(); - } - unwatchFile() { - throw makeError(); - } - }; - NoFS.NoFS = NoFS$1; - NoFS$1.instance = new NoFS$1(); - return NoFS; -} - -var PosixFS = {}; - -var hasRequiredPosixFS; - -function requirePosixFS () { - if (hasRequiredPosixFS) return PosixFS; - hasRequiredPosixFS = 1; - Object.defineProperty(PosixFS, "__esModule", { value: true }); - PosixFS.PosixFS = void 0; - const ProxiedFS_1 = requireProxiedFS(); - const path_1 = requirePath(); - let PosixFS$1 = class PosixFS extends ProxiedFS_1.ProxiedFS { - constructor(baseFs) { - super(path_1.npath); - this.baseFs = baseFs; - } - mapFromBase(path) { - return path_1.npath.fromPortablePath(path); - } - mapToBase(path) { - return path_1.npath.toPortablePath(path); - } - }; - PosixFS.PosixFS = PosixFS$1; - return PosixFS; -} - -var VirtualFS$1 = {}; - -var hasRequiredVirtualFS; - -function requireVirtualFS () { - if (hasRequiredVirtualFS) return VirtualFS$1; - hasRequiredVirtualFS = 1; - Object.defineProperty(VirtualFS$1, "__esModule", { value: true }); - VirtualFS$1.VirtualFS = void 0; - const NodeFS_1 = requireNodeFS(); - const ProxiedFS_1 = requireProxiedFS(); - const path_1 = requirePath(); - const NUMBER_REGEXP = /^[0-9]+$/; - // $0: full path - // $1: virtual folder - // $2: virtual segment - // $3: hash - // $4: depth - // $5: subpath - const VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; - const VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; - class VirtualFS extends ProxiedFS_1.ProxiedFS { - static makeVirtualPath(base, component, to) { - if (path_1.ppath.basename(base) !== `__virtual__`) - throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`); - if (!path_1.ppath.basename(component).match(VALID_COMPONENT)) - throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); - // Obtains the relative distance between the virtual path and its actual target - const target = path_1.ppath.relative(path_1.ppath.dirname(base), to); - const segments = target.split(`/`); - // Counts how many levels we need to go back to start applying the rest of the path - let depth = 0; - while (depth < segments.length && segments[depth] === `..`) - depth += 1; - const finalSegments = segments.slice(depth); - const fullVirtualPath = path_1.ppath.join(base, component, String(depth), ...finalSegments); - return fullVirtualPath; - } - static resolveVirtual(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match || (!match[3] && match[5])) - return p; - const target = path_1.ppath.dirname(match[1]); - if (!match[3] || !match[4]) - return target; - const isnum = NUMBER_REGEXP.test(match[4]); - if (!isnum) - return p; - const depth = Number(match[4]); - const backstep = `../`.repeat(depth); - const subpath = (match[5] || `.`); - return VirtualFS.resolveVirtual(path_1.ppath.join(target, backstep, subpath)); - } - constructor({ baseFs = new NodeFS_1.NodeFS() } = {}) { - super(path_1.ppath); - this.baseFs = baseFs; - } - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); - } - getRealPath() { - return this.baseFs.getRealPath(); - } - realpathSync(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match) - return this.baseFs.realpathSync(p); - if (!match[5]) - return p; - const realpath = this.baseFs.realpathSync(this.mapToBase(p)); - return VirtualFS.makeVirtualPath(match[1], match[3], realpath); - } - async realpathPromise(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match) - return await this.baseFs.realpathPromise(p); - if (!match[5]) - return p; - const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); - return VirtualFS.makeVirtualPath(match[1], match[3], realpath); - } - mapToBase(p) { - if (p === ``) - return p; - if (this.pathUtils.isAbsolute(p)) - return VirtualFS.resolveVirtual(p); - const resolvedRoot = VirtualFS.resolveVirtual(this.baseFs.resolve(path_1.PortablePath.dot)); - const resolvedP = VirtualFS.resolveVirtual(this.baseFs.resolve(p)); - return path_1.ppath.relative(resolvedRoot, resolvedP) || path_1.PortablePath.dot; - } - mapFromBase(p) { - return p; - } - } - VirtualFS$1.VirtualFS = VirtualFS; - return VirtualFS$1; -} - -var patchFs = {}; - -var NodePathFS = {}; - -var hasRequiredNodePathFS; - -function requireNodePathFS () { - if (hasRequiredNodePathFS) return NodePathFS; - hasRequiredNodePathFS = 1; - Object.defineProperty(NodePathFS, "__esModule", { value: true }); - NodePathFS.NodePathFS = void 0; - const tslib_1 = require$$0; - const buffer_1 = tslib_1.__importDefault(require$$1$3); - const url_1 = require$$2; - const util_1 = require$$1; - const ProxiedFS_1 = requireProxiedFS(); - const path_1 = requirePath(); - /** - * Adds support for file URLs and Buffers to the wrapped `baseFs`, but *not* inside the typings. - * - * Only exists for compatibility with Node's behavior. - * - * Automatically wraps all FS instances passed to `patchFs` & `extendFs`. - * - * Don't use it! - */ - let NodePathFS$1 = class NodePathFS extends ProxiedFS_1.ProxiedFS { - constructor(baseFs) { - super(path_1.npath); - this.baseFs = baseFs; - } - mapFromBase(path) { - return path; - } - mapToBase(path) { - if (typeof path === `string`) - return path; - if (path instanceof URL) - return (0, url_1.fileURLToPath)(path); - if (Buffer.isBuffer(path)) { - const str = path.toString(); - if (!isUtf8(path, str)) - throw new Error(`Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942`); - return str; - } - throw new Error(`Unsupported path type: ${(0, util_1.inspect)(path)}`); - } - }; - NodePathFS.NodePathFS = NodePathFS$1; - // TODO: remove the fallback when dropping support for Node.js < 18.14.0 - function isUtf8(buf, str) { - if (typeof buffer_1.default.isUtf8 !== `undefined`) - return buffer_1.default.isUtf8(buf); - return Buffer.byteLength(str) === buf.byteLength; - } - return NodePathFS; -} - -var FileHandle = {}; - -var hasRequiredFileHandle; - -function requireFileHandle () { - if (hasRequiredFileHandle) return FileHandle; - hasRequiredFileHandle = 1; - var _a, _b, _c, _d; - Object.defineProperty(FileHandle, "__esModule", { value: true }); - FileHandle.FileHandle = void 0; - const readline_1 = require$$0$2; - const kBaseFs = Symbol(`kBaseFs`); - const kFd = Symbol(`kFd`); - const kClosePromise = Symbol(`kClosePromise`); - const kCloseResolve = Symbol(`kCloseResolve`); - const kCloseReject = Symbol(`kCloseReject`); - const kRefs = Symbol(`kRefs`); - const kRef = Symbol(`kRef`); - const kUnref = Symbol(`kUnref`); - let FileHandle$1 = class FileHandle { - constructor(fd, baseFs) { - this[_a] = 1; - this[_b] = undefined; - this[_c] = undefined; - this[_d] = undefined; - this[kBaseFs] = baseFs; - this[kFd] = fd; - } - get fd() { - return this[kFd]; - } - async appendFile(data, options) { - try { - this[kRef](this.appendFile); - const encoding = (typeof options === `string` ? options : options?.encoding) ?? undefined; - return await this[kBaseFs].appendFilePromise(this.fd, data, encoding ? { encoding } : undefined); - } - finally { - this[kUnref](); - } - } - async chown(uid, gid) { - try { - this[kRef](this.chown); - return await this[kBaseFs].fchownPromise(this.fd, uid, gid); - } - finally { - this[kUnref](); - } - } - async chmod(mode) { - try { - this[kRef](this.chmod); - return await this[kBaseFs].fchmodPromise(this.fd, mode); - } - finally { - this[kUnref](); - } - } - createReadStream(options) { - return this[kBaseFs].createReadStream(null, { ...options, fd: this.fd }); - } - createWriteStream(options) { - return this[kBaseFs].createWriteStream(null, { ...options, fd: this.fd }); - } - // FIXME: Missing FakeFS version - datasync() { - throw new Error(`Method not implemented.`); - } - // FIXME: Missing FakeFS version - sync() { - throw new Error(`Method not implemented.`); - } - async read(bufferOrOptions, offsetOrOptions, length, position) { - try { - this[kRef](this.read); - let buffer; - let offset; - if (!ArrayBuffer.isView(bufferOrOptions)) { - // read([options]) - // TypeScript isn't able to infer that the coalescing happens only in the no-generic case - buffer = bufferOrOptions?.buffer ?? Buffer.alloc(16384); - offset = bufferOrOptions?.offset ?? 0; - length = bufferOrOptions?.length ?? buffer.byteLength - offset; - position = bufferOrOptions?.position ?? null; - } - else if (typeof offsetOrOptions === `object` && offsetOrOptions !== null) { - // read(buffer[, options]) - buffer = bufferOrOptions; - offset = offsetOrOptions?.offset ?? 0; - length = offsetOrOptions?.length ?? buffer.byteLength - offset; - position = offsetOrOptions?.position ?? null; - } - else { - // read(buffer, offset[, length[, position]]) - buffer = bufferOrOptions; - offset = offsetOrOptions ?? 0; - length ??= 0; - } - if (length === 0) { - return { - bytesRead: length, - buffer, - }; - } - const bytesRead = await this[kBaseFs].readPromise(this.fd, - // FIXME: FakeFS should support ArrayBufferViews directly - Buffer.isBuffer(buffer) ? buffer : Buffer.from(buffer.buffer, buffer.byteOffset, buffer.byteLength), offset, length, position); - return { - bytesRead, - buffer, - }; - } - finally { - this[kUnref](); - } - } - async readFile(options) { - try { - this[kRef](this.readFile); - const encoding = (typeof options === `string` ? options : options?.encoding) ?? undefined; - return await this[kBaseFs].readFilePromise(this.fd, encoding); - } - finally { - this[kUnref](); - } - } - readLines(options) { - return (0, readline_1.createInterface)({ - input: this.createReadStream(options), - crlfDelay: Infinity, - }); - } - async stat(opts) { - try { - this[kRef](this.stat); - return await this[kBaseFs].fstatPromise(this.fd, opts); - } - finally { - this[kUnref](); - } - } - async truncate(len) { - try { - this[kRef](this.truncate); - return await this[kBaseFs].ftruncatePromise(this.fd, len); - } - finally { - this[kUnref](); - } - } - // FIXME: Missing FakeFS version - utimes(atime, mtime) { - throw new Error(`Method not implemented.`); - } - async writeFile(data, options) { - try { - this[kRef](this.writeFile); - const encoding = (typeof options === `string` ? options : options?.encoding) ?? undefined; - await this[kBaseFs].writeFilePromise(this.fd, data, encoding); - } - finally { - this[kUnref](); - } - } - async write(...args) { - try { - this[kRef](this.write); - if (ArrayBuffer.isView(args[0])) { - const [buffer, offset, length, position] = args; - const bytesWritten = await this[kBaseFs].writePromise(this.fd, buffer, offset ?? undefined, length ?? undefined, position ?? undefined); - return { bytesWritten, buffer }; - } - else { - const [data, position, encoding] = args; - // @ts-expect-error - FIXME: Types/implementation need to be updated in FakeFS - const bytesWritten = await this[kBaseFs].writePromise(this.fd, data, position, encoding); - return { bytesWritten, buffer: data }; - } - } - finally { - this[kUnref](); - } - } - // TODO: Use writev from FakeFS when that is implemented - async writev(buffers, position) { - try { - this[kRef](this.writev); - let bytesWritten = 0; - if (typeof position !== `undefined`) { - for (const buffer of buffers) { - const writeResult = await this.write(buffer, undefined, undefined, position); - bytesWritten += writeResult.bytesWritten; - position += writeResult.bytesWritten; - } - } - else { - for (const buffer of buffers) { - const writeResult = await this.write(buffer); - bytesWritten += writeResult.bytesWritten; - } - } - return { - buffers, - bytesWritten, - }; - } - finally { - this[kUnref](); - } - } - // FIXME: Missing FakeFS version - readv(buffers, position) { - throw new Error(`Method not implemented.`); - } - close() { - if (this[kFd] === -1) - return Promise.resolve(); - if (this[kClosePromise]) - return this[kClosePromise]; - this[kRefs]--; - if (this[kRefs] === 0) { - const fd = this[kFd]; - this[kFd] = -1; - this[kClosePromise] = this[kBaseFs].closePromise(fd).finally(() => { - this[kClosePromise] = undefined; - }); - } - else { - this[kClosePromise] = - new Promise((resolve, reject) => { - this[kCloseResolve] = resolve; - this[kCloseReject] = reject; - }).finally(() => { - this[kClosePromise] = undefined; - this[kCloseReject] = undefined; - this[kCloseResolve] = undefined; - }); - } - return this[kClosePromise]; - } - [(_a = kRefs, _b = kClosePromise, _c = kCloseResolve, _d = kCloseReject, kRef)](caller) { - if (this[kFd] === -1) { - const err = new Error(`file closed`); - err.code = `EBADF`; - err.syscall = caller.name; - throw err; - } - this[kRefs]++; - } - [kUnref]() { - this[kRefs]--; - if (this[kRefs] === 0) { - const fd = this[kFd]; - this[kFd] = -1; - this[kBaseFs].closePromise(fd).then(this[kCloseResolve], this[kCloseReject]); - } - } - }; - FileHandle.FileHandle = FileHandle$1; - return FileHandle; -} - -var hasRequiredPatchFs; - -function requirePatchFs () { - if (hasRequiredPatchFs) return patchFs; - hasRequiredPatchFs = 1; - Object.defineProperty(patchFs, "__esModule", { value: true }); - patchFs.patchFs = patchFs$1; - patchFs.extendFs = extendFs; - const util_1 = require$$1; - const NodePathFS_1 = requireNodePathFS(); - const FileHandle_1 = requireFileHandle(); - const SYNC_IMPLEMENTATIONS = new Set([ - `accessSync`, - `appendFileSync`, - `createReadStream`, - `createWriteStream`, - `chmodSync`, - `fchmodSync`, - `chownSync`, - `fchownSync`, - `closeSync`, - `copyFileSync`, - `linkSync`, - `lstatSync`, - `fstatSync`, - `lutimesSync`, - `mkdirSync`, - `openSync`, - `opendirSync`, - `readlinkSync`, - `readFileSync`, - `readdirSync`, - `readlinkSync`, - `realpathSync`, - `renameSync`, - `rmdirSync`, - `rmSync`, - `statSync`, - `symlinkSync`, - `truncateSync`, - `ftruncateSync`, - `unlinkSync`, - `unwatchFile`, - `utimesSync`, - `watch`, - `watchFile`, - `writeFileSync`, - `writeSync`, - ]); - const ASYNC_IMPLEMENTATIONS = new Set([ - `accessPromise`, - `appendFilePromise`, - `fchmodPromise`, - `chmodPromise`, - `fchownPromise`, - `chownPromise`, - `closePromise`, - `copyFilePromise`, - `linkPromise`, - `fstatPromise`, - `lstatPromise`, - `lutimesPromise`, - `mkdirPromise`, - `openPromise`, - `opendirPromise`, - `readdirPromise`, - `realpathPromise`, - `readFilePromise`, - `readdirPromise`, - `readlinkPromise`, - `renamePromise`, - `rmdirPromise`, - `rmPromise`, - `statPromise`, - `symlinkPromise`, - `truncatePromise`, - `ftruncatePromise`, - `unlinkPromise`, - `utimesPromise`, - `writeFilePromise`, - `writeSync`, - ]); - //#endregion - function patchFs$1(patchedFs, fakeFs) { - // We wrap the `fakeFs` with a `NodePathFS` to add support for all path types supported by Node - fakeFs = new NodePathFS_1.NodePathFS(fakeFs); - const setupFn = (target, name, replacement) => { - const orig = target[name]; - target[name] = replacement; - // Preserve any util.promisify implementations - if (typeof orig?.[util_1.promisify.custom] !== `undefined`) { - replacement[util_1.promisify.custom] = orig[util_1.promisify.custom]; - } - }; - /** Callback implementations */ - { - setupFn(patchedFs, `exists`, (p, ...args) => { - const hasCallback = typeof args[args.length - 1] === `function`; - const callback = hasCallback ? args.pop() : () => { }; - process.nextTick(() => { - fakeFs.existsPromise(p).then(exists => { - callback(exists); - }, () => { - callback(false); - }); - }); - }); - // Adapted from https://github.com/nodejs/node/blob/e5c1fd7a2a1801fd75bdde23b260488e85453eb2/lib/fs.js#L603-L667 - setupFn(patchedFs, `read`, (...args) => { - let [fd, buffer, offset, length, position, callback] = args; - if (args.length <= 3) { - // Assume fs.read(fd, options, callback) - let options = {}; - if (args.length < 3) { - // This is fs.read(fd, callback) - callback = args[1]; - } - else { - // This is fs.read(fd, {}, callback) - options = args[1]; - callback = args[2]; - } - ({ - buffer = Buffer.alloc(16384), - offset = 0, - length = buffer.byteLength, - position, - } = options); - } - if (offset == null) - offset = 0; - length |= 0; - if (length === 0) { - process.nextTick(() => { - callback(null, 0, buffer); - }); - return; - } - if (position == null) - position = -1; - process.nextTick(() => { - fakeFs.readPromise(fd, buffer, offset, length, position).then(bytesRead => { - callback(null, bytesRead, buffer); - }, error => { - // https://github.com/nodejs/node/blob/1317252dfe8824fd9cfee125d2aaa94004db2f3b/lib/fs.js#L655-L658 - // Known issue: bytesRead could theoretically be > than 0, but we currently always return 0 - callback(error, 0, buffer); - }); - }); - }); - for (const fnName of ASYNC_IMPLEMENTATIONS) { - const origName = fnName.replace(/Promise$/, ``); - if (typeof patchedFs[origName] === `undefined`) - continue; - const fakeImpl = fakeFs[fnName]; - if (typeof fakeImpl === `undefined`) - continue; - const wrapper = (...args) => { - const hasCallback = typeof args[args.length - 1] === `function`; - const callback = hasCallback ? args.pop() : () => { }; - process.nextTick(() => { - fakeImpl.apply(fakeFs, args).then((result) => { - callback(null, result); - }, (error) => { - callback(error); - }); - }); - }; - setupFn(patchedFs, origName, wrapper); - } - patchedFs.realpath.native = patchedFs.realpath; - } - /** Sync implementations */ - { - setupFn(patchedFs, `existsSync`, (p) => { - try { - return fakeFs.existsSync(p); - } - catch { - return false; - } - }); - // Adapted from https://github.com/nodejs/node/blob/e5c1fd7a2a1801fd75bdde23b260488e85453eb2/lib/fs.js#L684-L725 - setupFn(patchedFs, `readSync`, (...args) => { - let [fd, buffer, offset, length, position] = args; - if (args.length <= 3) { - // Assume fs.read(fd, buffer, options) - const options = args[2] || {}; - ({ offset = 0, length = buffer.byteLength, position } = options); - } - if (offset == null) - offset = 0; - length |= 0; - if (length === 0) - return 0; - if (position == null) - position = -1; - return fakeFs.readSync(fd, buffer, offset, length, position); - }); - for (const fnName of SYNC_IMPLEMENTATIONS) { - const origName = fnName; - if (typeof patchedFs[origName] === `undefined`) - continue; - const fakeImpl = fakeFs[fnName]; - if (typeof fakeImpl === `undefined`) - continue; - setupFn(patchedFs, origName, fakeImpl.bind(fakeFs)); - } - patchedFs.realpathSync.native = patchedFs.realpathSync; - } - /** Promise implementations */ - { - // `fs.promises` is a getter that returns a reference to require(`fs/promises`), - // so we can just patch `fs.promises` and both will be updated - const patchedFsPromises = patchedFs.promises; - // `fs.promises.exists` doesn't exist - for (const fnName of ASYNC_IMPLEMENTATIONS) { - const origName = fnName.replace(/Promise$/, ``); - if (typeof patchedFsPromises[origName] === `undefined`) - continue; - const fakeImpl = fakeFs[fnName]; - if (typeof fakeImpl === `undefined`) - continue; - // Open is a bit particular with fs.promises: it returns a file handle - // instance instead of the traditional file descriptor number - if (fnName === `open`) - continue; - setupFn(patchedFsPromises, origName, (pathLike, ...args) => { - if (pathLike instanceof FileHandle_1.FileHandle) { - return pathLike[origName].apply(pathLike, args); - } - else { - return fakeImpl.call(fakeFs, pathLike, ...args); - } - }); - } - setupFn(patchedFsPromises, `open`, async (...args) => { - // @ts-expect-error - reason TBS - const fd = await fakeFs.openPromise(...args); - return new FileHandle_1.FileHandle(fd, fakeFs); - }); - // `fs.promises.realpath` doesn't have a `native` property - } - /** util.promisify implementations */ - { - // TODO add promisified `fs.readv` and `fs.writev`, once they are implemented - // Override the promisified versions of `fs.read` and `fs.write` to return an object as per - // https://github.com/nodejs/node/blob/dc79f3f37caf6f25b8efee4623bec31e2c20f595/lib/fs.js#L559-L560 - // and - // https://github.com/nodejs/node/blob/dc79f3f37caf6f25b8efee4623bec31e2c20f595/lib/fs.js#L690-L691 - // and - // https://github.com/nodejs/node/blob/ba684805b6c0eded76e5cd89ee00328ac7a59365/lib/internal/util.js#L293 - // @ts-expect-error - reason TBS - patchedFs.read[util_1.promisify.custom] = async (fd, buffer, ...args) => { - const res = fakeFs.readPromise(fd, buffer, ...args); - return { bytesRead: await res, buffer }; - }; - // @ts-expect-error - reason TBS - patchedFs.write[util_1.promisify.custom] = async (fd, buffer, ...args) => { - const res = fakeFs.writePromise(fd, buffer, ...args); - return { bytesWritten: await res, buffer }; - }; - } - } - function extendFs(realFs, fakeFs) { - const patchedFs = Object.create(realFs); - patchFs$1(patchedFs, fakeFs); - return patchedFs; - } - return patchFs; -} - -var xfs = {}; - -var hasRequiredXfs; - -function requireXfs () { - if (hasRequiredXfs) return xfs; - hasRequiredXfs = 1; - (function (exports) { - Object.defineProperty(exports, "__esModule", { value: true }); - exports.xfs = void 0; - const tslib_1 = require$$0; - const os_1 = tslib_1.__importDefault(require$$1$2); - const NodeFS_1 = requireNodeFS(); - const path_1 = requirePath(); - function getTempName(prefix) { - const hash = Math.ceil(Math.random() * 0x100000000).toString(16).padStart(8, `0`); - return `${prefix}${hash}`; - } - const tmpdirs = new Set(); - let tmpEnv = null; - function initTmpEnv() { - if (tmpEnv) - return tmpEnv; - const tmpdir = path_1.npath.toPortablePath(os_1.default.tmpdir()); - const realTmpdir = exports.xfs.realpathSync(tmpdir); - process.once(`exit`, () => { - exports.xfs.rmtempSync(); - }); - return tmpEnv = { - tmpdir, - realTmpdir, - }; - } - exports.xfs = Object.assign(new NodeFS_1.NodeFS(), { - detachTemp(p) { - tmpdirs.delete(p); - }, - mktempSync(cb) { - const { tmpdir, realTmpdir } = initTmpEnv(); - while (true) { - const name = getTempName(`xfs-`); - try { - this.mkdirSync(path_1.ppath.join(tmpdir, name)); - } - catch (error) { - if (error.code === `EEXIST`) { - continue; - } - else { - throw error; - } - } - const realP = path_1.ppath.join(realTmpdir, name); - tmpdirs.add(realP); - if (typeof cb === `undefined`) - return realP; - try { - return cb(realP); - } - finally { - if (tmpdirs.has(realP)) { - tmpdirs.delete(realP); - try { - this.removeSync(realP); - } - catch { - // Too bad if there's an error - } - } - } - } - }, - async mktempPromise(cb) { - const { tmpdir, realTmpdir } = initTmpEnv(); - while (true) { - const name = getTempName(`xfs-`); - try { - await this.mkdirPromise(path_1.ppath.join(tmpdir, name)); - } - catch (error) { - if (error.code === `EEXIST`) { - continue; - } - else { - throw error; - } - } - const realP = path_1.ppath.join(realTmpdir, name); - tmpdirs.add(realP); - if (typeof cb === `undefined`) - return realP; - try { - return await cb(realP); - } - finally { - if (tmpdirs.has(realP)) { - tmpdirs.delete(realP); - try { - await this.removePromise(realP); - } - catch { - // Too bad if there's an error - } - } - } - } - }, - async rmtempPromise() { - await Promise.all(Array.from(tmpdirs.values()).map(async (p) => { - try { - await exports.xfs.removePromise(p, { maxRetries: 0 }); - tmpdirs.delete(p); - } - catch { - // Too bad if there's an error - } - })); - }, - rmtempSync() { - for (const p of tmpdirs) { - try { - exports.xfs.removeSync(p); - tmpdirs.delete(p); - } - catch { - // Too bad if there's an error - } - } - }, - }); - } (xfs)); - return xfs; -} - -(function (exports) { - Object.defineProperty(exports, "__esModule", { value: true }); - exports.xfs = exports.extendFs = exports.patchFs = exports.VirtualFS = exports.ProxiedFS = exports.PosixFS = exports.NodeFS = exports.NoFS = exports.MountFS = exports.LazyFS = exports.JailFS = exports.CwdFS = exports.BasePortableFakeFS = exports.FakeFS = exports.AliasFS = exports.ppath = exports.npath = exports.Filename = exports.PortablePath = exports.normalizeLineEndings = exports.unwatchAllFiles = exports.unwatchFile = exports.watchFile = exports.CustomDir = exports.opendir = exports.setupCopyIndex = exports.statUtils = exports.errors = exports.constants = void 0; - const tslib_1 = require$$0; - const constants = tslib_1.__importStar(requireConstants()); - exports.constants = constants; - const errors = tslib_1.__importStar(requireErrors()); - exports.errors = errors; - const statUtils = tslib_1.__importStar(requireStatUtils()); - exports.statUtils = statUtils; - var copyPromise_1 = requireCopyPromise(); - Object.defineProperty(exports, "setupCopyIndex", { enumerable: true, get: function () { return copyPromise_1.setupCopyIndex; } }); - var opendir_1 = requireOpendir(); - Object.defineProperty(exports, "opendir", { enumerable: true, get: function () { return opendir_1.opendir; } }); - Object.defineProperty(exports, "CustomDir", { enumerable: true, get: function () { return opendir_1.CustomDir; } }); - var watchFile_1 = requireWatchFile(); - Object.defineProperty(exports, "watchFile", { enumerable: true, get: function () { return watchFile_1.watchFile; } }); - Object.defineProperty(exports, "unwatchFile", { enumerable: true, get: function () { return watchFile_1.unwatchFile; } }); - Object.defineProperty(exports, "unwatchAllFiles", { enumerable: true, get: function () { return watchFile_1.unwatchAllFiles; } }); - var FakeFS_1 = requireFakeFS(); - Object.defineProperty(exports, "normalizeLineEndings", { enumerable: true, get: function () { return FakeFS_1.normalizeLineEndings; } }); - var path_1 = requirePath(); - Object.defineProperty(exports, "PortablePath", { enumerable: true, get: function () { return path_1.PortablePath; } }); - Object.defineProperty(exports, "Filename", { enumerable: true, get: function () { return path_1.Filename; } }); - var path_2 = requirePath(); - Object.defineProperty(exports, "npath", { enumerable: true, get: function () { return path_2.npath; } }); - Object.defineProperty(exports, "ppath", { enumerable: true, get: function () { return path_2.ppath; } }); - var AliasFS_1 = requireAliasFS(); - Object.defineProperty(exports, "AliasFS", { enumerable: true, get: function () { return AliasFS_1.AliasFS; } }); - var FakeFS_2 = requireFakeFS(); - Object.defineProperty(exports, "FakeFS", { enumerable: true, get: function () { return FakeFS_2.FakeFS; } }); - Object.defineProperty(exports, "BasePortableFakeFS", { enumerable: true, get: function () { return FakeFS_2.BasePortableFakeFS; } }); - var CwdFS_1 = requireCwdFS(); - Object.defineProperty(exports, "CwdFS", { enumerable: true, get: function () { return CwdFS_1.CwdFS; } }); - var JailFS_1 = requireJailFS(); - Object.defineProperty(exports, "JailFS", { enumerable: true, get: function () { return JailFS_1.JailFS; } }); - var LazyFS_1 = requireLazyFS(); - Object.defineProperty(exports, "LazyFS", { enumerable: true, get: function () { return LazyFS_1.LazyFS; } }); - var MountFS_1 = requireMountFS(); - Object.defineProperty(exports, "MountFS", { enumerable: true, get: function () { return MountFS_1.MountFS; } }); - var NoFS_1 = requireNoFS(); - Object.defineProperty(exports, "NoFS", { enumerable: true, get: function () { return NoFS_1.NoFS; } }); - var NodeFS_1 = requireNodeFS(); - Object.defineProperty(exports, "NodeFS", { enumerable: true, get: function () { return NodeFS_1.NodeFS; } }); - var PosixFS_1 = requirePosixFS(); - Object.defineProperty(exports, "PosixFS", { enumerable: true, get: function () { return PosixFS_1.PosixFS; } }); - var ProxiedFS_1 = requireProxiedFS(); - Object.defineProperty(exports, "ProxiedFS", { enumerable: true, get: function () { return ProxiedFS_1.ProxiedFS; } }); - var VirtualFS_1 = requireVirtualFS(); - Object.defineProperty(exports, "VirtualFS", { enumerable: true, get: function () { return VirtualFS_1.VirtualFS; } }); - var patchFs_1 = requirePatchFs(); - Object.defineProperty(exports, "patchFs", { enumerable: true, get: function () { return patchFs_1.patchFs; } }); - Object.defineProperty(exports, "extendFs", { enumerable: true, get: function () { return patchFs_1.extendFs; } }); - var xfs_1 = requireXfs(); - Object.defineProperty(exports, "xfs", { enumerable: true, get: function () { return xfs_1.xfs; } }); -} (lib)); - -const SAFE_TIME = 456789e3; - const defaultTime = new Date(SAFE_TIME * 1e3); const defaultTimeMs = defaultTime.getTime(); async function copyPromise(destinationFs, destination, sourceFs, source, opts) { @@ -5051,7 +92,6 @@ async function copyPromise(destinationFs, destination, sourceFs, source, opts) { })); } async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) { - var _a, _b, _c; const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null; const sourceStat = await sourceFs.lstatPromise(source); const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat; @@ -5076,8 +116,8 @@ async function copyImpl(prelayout, postlayout, destinationFs, destination, sourc throw new Error(`Unsupported file type (${sourceStat.mode})`); } } - if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) !== `HardlinkFromIndex` || !sourceStat.isFile()) { - if (updated || ((_b = destinationStat == null ? void 0 : destinationStat.mtime) == null ? void 0 : _b.getTime()) !== mtime.getTime() || ((_c = destinationStat == null ? void 0 : destinationStat.atime) == null ? void 0 : _c.getTime()) !== atime.getTime()) { + if (opts.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) { + if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) { postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime)); updated = true; } @@ -5150,7 +190,7 @@ async function copyFileViaIndex(prelayout, postlayout, destinationFs, destinatio let indexStat = await maybeLStat(destinationFs, indexPath); if (destinationStat) { const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino; - const isIndexModified = (indexStat == null ? void 0 : indexStat.mtimeMs) !== defaultTimeMs; + const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs; if (isDestinationHardlinkedFromIndex) { if (isIndexModified && linkStrategy.autoRepair) { atomicBehavior = 0 /* Lock */; @@ -5224,8 +264,7 @@ async function copyFileDirect(prelayout, postlayout, destinationFs, destination, return true; } async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - var _a; - if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) === `HardlinkFromIndex`) { + if (opts.linkStrategy?.type === `HardlinkFromIndex`) { return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy); } else { return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); @@ -5356,7 +395,7 @@ class FakeFS { throw error; } } - createdDirectory != null ? createdDirectory : createdDirectory = subPath; + createdDirectory ??= subPath; if (chmod != null) await this.chmodPromise(subPath, chmod); if (utimes != null) { @@ -5387,7 +426,7 @@ class FakeFS { throw error; } } - createdDirectory != null ? createdDirectory : createdDirectory = subPath; + createdDirectory ??= subPath; if (chmod != null) this.chmodSync(subPath, chmod); if (utimes != null) { @@ -5627,687 +666,687 @@ function normalizeLineEndings(originalContent, newContent) { return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); } -function direntToPortable(dirent) { - const portableDirent = dirent; - if (typeof dirent.path === `string`) - portableDirent.path = npath.toPortablePath(dirent.path); - return portableDirent; -} -class NodeFS extends BasePortableFakeFS { - realFs; - constructor(realFs = fs) { - super(); - this.realFs = realFs; +class ProxiedFS extends FakeFS { + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); } - getExtractHint() { - return false; + resolve(path) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); } getRealPath() { - return PortablePath.root; - } - resolve(p) { - return ppath.resolve(p); + return this.mapFromBase(this.baseFs.getRealPath()); } async openPromise(p, flags, mode) { - return await new Promise((resolve, reject) => { - this.realFs.open(npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); - }); + return this.baseFs.openPromise(this.mapToBase(p), flags, mode); } openSync(p, flags, mode) { - return this.realFs.openSync(npath.fromPortablePath(p), flags, mode); + return this.baseFs.openSync(this.mapToBase(p), flags, mode); } async opendirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (typeof opts !== `undefined`) { - this.realFs.opendir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }).then((dir) => { - const dirWithFixedPath = dir; - Object.defineProperty(dirWithFixedPath, `path`, { - value: p, - configurable: true, - writable: true - }); - return dirWithFixedPath; - }); + return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); } opendirSync(p, opts) { - const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p)); - const dirWithFixedPath = dir; - Object.defineProperty(dirWithFixedPath, `path`, { - value: p, - configurable: true, - writable: true - }); - return dirWithFixedPath; + return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); } - async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { - return await new Promise((resolve, reject) => { - this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { - if (error) { - reject(error); - } else { - resolve(bytesRead); - } - }); - }); + async readPromise(fd, buffer, offset, length, position) { + return await this.baseFs.readPromise(fd, buffer, offset, length, position); } readSync(fd, buffer, offset, length, position) { - return this.realFs.readSync(fd, buffer, offset, length, position); + return this.baseFs.readSync(fd, buffer, offset, length, position); } async writePromise(fd, buffer, offset, length, position) { - return await new Promise((resolve, reject) => { - if (typeof buffer === `string`) { - return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); - } else { - return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); - } - }); + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } } writeSync(fd, buffer, offset, length, position) { if (typeof buffer === `string`) { - return this.realFs.writeSync(fd, buffer, offset); + return this.baseFs.writeSync(fd, buffer, offset); } else { - return this.realFs.writeSync(fd, buffer, offset, length, position); + return this.baseFs.writeSync(fd, buffer, offset, length, position); } } async closePromise(fd) { - await new Promise((resolve, reject) => { - this.realFs.close(fd, this.makeCallback(resolve, reject)); - }); + return this.baseFs.closePromise(fd); } closeSync(fd) { - this.realFs.closeSync(fd); + this.baseFs.closeSync(fd); } createReadStream(p, opts) { - const realPath = p !== null ? npath.fromPortablePath(p) : p; - return this.realFs.createReadStream(realPath, opts); + return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); } createWriteStream(p, opts) { - const realPath = p !== null ? npath.fromPortablePath(p) : p; - return this.realFs.createWriteStream(realPath, opts); + return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); } async realpathPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.realpath(npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); - }).then((path) => { - return npath.toPortablePath(path); - }); + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); } realpathSync(p) { - return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(p), {})); + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); } async existsPromise(p) { - return await new Promise((resolve) => { - this.realFs.exists(npath.fromPortablePath(p), resolve); - }); + return this.baseFs.existsPromise(this.mapToBase(p)); + } + existsSync(p) { + return this.baseFs.existsSync(this.mapToBase(p)); } accessSync(p, mode) { - return this.realFs.accessSync(npath.fromPortablePath(p), mode); + return this.baseFs.accessSync(this.mapToBase(p), mode); } async accessPromise(p, mode) { - return await new Promise((resolve, reject) => { - this.realFs.access(npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); - }); - } - existsSync(p) { - return this.realFs.existsSync(npath.fromPortablePath(p)); + return this.baseFs.accessPromise(this.mapToBase(p), mode); } - async statPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.stat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + async statPromise(p, opts) { + return this.baseFs.statPromise(this.mapToBase(p), opts); } statSync(p, opts) { - if (opts) { - return this.realFs.statSync(npath.fromPortablePath(p), opts); - } else { - return this.realFs.statSync(npath.fromPortablePath(p)); - } + return this.baseFs.statSync(this.mapToBase(p), opts); } async fstatPromise(fd, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.fstat(fd, this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.fstatPromise(fd, opts); } fstatSync(fd, opts) { - if (opts) { - return this.realFs.fstatSync(fd, opts); - } else { - return this.realFs.fstatSync(fd); - } + return this.baseFs.fstatSync(fd, opts); } - async lstatPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.lstat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + lstatPromise(p, opts) { + return this.baseFs.lstatPromise(this.mapToBase(p), opts); } lstatSync(p, opts) { - if (opts) { - return this.realFs.lstatSync(npath.fromPortablePath(p), opts); - } else { - return this.realFs.lstatSync(npath.fromPortablePath(p)); - } + return this.baseFs.lstatSync(this.mapToBase(p), opts); } async fchmodPromise(fd, mask) { - return await new Promise((resolve, reject) => { - this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); - }); + return this.baseFs.fchmodPromise(fd, mask); } fchmodSync(fd, mask) { - return this.realFs.fchmodSync(fd, mask); + return this.baseFs.fchmodSync(fd, mask); } async chmodPromise(p, mask) { - return await new Promise((resolve, reject) => { - this.realFs.chmod(npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); - }); + return this.baseFs.chmodPromise(this.mapToBase(p), mask); } chmodSync(p, mask) { - return this.realFs.chmodSync(npath.fromPortablePath(p), mask); + return this.baseFs.chmodSync(this.mapToBase(p), mask); } async fchownPromise(fd, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); - }); + return this.baseFs.fchownPromise(fd, uid, gid); } fchownSync(fd, uid, gid) { - return this.realFs.fchownSync(fd, uid, gid); + return this.baseFs.fchownSync(fd, uid, gid); } async chownPromise(p, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.chown(npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); - }); + return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); } chownSync(p, uid, gid) { - return this.realFs.chownSync(npath.fromPortablePath(p), uid, gid); + return this.baseFs.chownSync(this.mapToBase(p), uid, gid); } async renamePromise(oldP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.rename(npath.fromPortablePath(oldP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); + return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); } renameSync(oldP, newP) { - return this.realFs.renameSync(npath.fromPortablePath(oldP), npath.fromPortablePath(newP)); + return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); } async copyFilePromise(sourceP, destP, flags = 0) { - return await new Promise((resolve, reject) => { - this.realFs.copyFile(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); - }); + return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); } copyFileSync(sourceP, destP, flags = 0) { - return this.realFs.copyFileSync(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags); + return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); } async appendFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); } appendFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFileSync(fsNativePath, content, opts); - } else { - this.realFs.appendFileSync(fsNativePath, content); - } + return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); } async writeFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); } writeFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFileSync(fsNativePath, content, opts); - } else { - this.realFs.writeFileSync(fsNativePath, content); - } + return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); } async unlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.unlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }); + return this.baseFs.unlinkPromise(this.mapToBase(p)); } unlinkSync(p) { - return this.realFs.unlinkSync(npath.fromPortablePath(p)); + return this.baseFs.unlinkSync(this.mapToBase(p)); } async utimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.utimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); + return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); } utimesSync(p, atime, mtime) { - this.realFs.utimesSync(npath.fromPortablePath(p), atime, mtime); + return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); } async lutimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.lutimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); + return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); } lutimesSync(p, atime, mtime) { - this.realFs.lutimesSync(npath.fromPortablePath(p), atime, mtime); + return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); } async mkdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - this.realFs.mkdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - }); + return this.baseFs.mkdirPromise(this.mapToBase(p), opts); } mkdirSync(p, opts) { - return this.realFs.mkdirSync(npath.fromPortablePath(p), opts); + return this.baseFs.mkdirSync(this.mapToBase(p), opts); } async rmdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.rmdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.rmdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.rmdirPromise(this.mapToBase(p), opts); } rmdirSync(p, opts) { - return this.realFs.rmdirSync(npath.fromPortablePath(p), opts); + return this.baseFs.rmdirSync(this.mapToBase(p), opts); } async rmPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.rm(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.rm(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + return this.baseFs.rmPromise(this.mapToBase(p), opts); } rmSync(p, opts) { - return this.realFs.rmSync(npath.fromPortablePath(p), opts); + return this.baseFs.rmSync(this.mapToBase(p), opts); } async linkPromise(existingP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.link(npath.fromPortablePath(existingP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); + return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); } linkSync(existingP, newP) { - return this.realFs.linkSync(npath.fromPortablePath(existingP), npath.fromPortablePath(newP)); + return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); } async symlinkPromise(target, p, type) { - return await new Promise((resolve, reject) => { - this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); - }); + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); } symlinkSync(target, p, type) { - return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type); + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkSync(mappedTarget, mappedP, type); } async readFilePromise(p, encoding) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); - }); + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); } readFileSync(p, encoding) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - return this.realFs.readFileSync(fsNativePath, encoding); + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); } - async readdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - if (opts.recursive && process.platform === `win32`) { - if (opts.withFileTypes) { - this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(direntToPortable)), reject)); - } else { - this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(npath.toPortablePath)), reject)); - } - } else { - this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } - } else { - this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); + readdirPromise(p, opts) { + return this.baseFs.readdirPromise(this.mapToBase(p), opts); } readdirSync(p, opts) { - if (opts) { - if (opts.recursive && process.platform === `win32`) { - if (opts.withFileTypes) { - return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(direntToPortable); - } else { - return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(npath.toPortablePath); - } - } else { - return this.realFs.readdirSync(npath.fromPortablePath(p), opts); - } - } else { - return this.realFs.readdirSync(npath.fromPortablePath(p)); - } + return this.baseFs.readdirSync(this.mapToBase(p), opts); } async readlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.readlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }).then((path) => { - return npath.toPortablePath(path); - }); + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); } readlinkSync(p) { - return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(p))); + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); } async truncatePromise(p, len) { - return await new Promise((resolve, reject) => { - this.realFs.truncate(npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); - }); + return this.baseFs.truncatePromise(this.mapToBase(p), len); } truncateSync(p, len) { - return this.realFs.truncateSync(npath.fromPortablePath(p), len); + return this.baseFs.truncateSync(this.mapToBase(p), len); } async ftruncatePromise(fd, len) { - return await new Promise((resolve, reject) => { - this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); - }); + return this.baseFs.ftruncatePromise(fd, len); } ftruncateSync(fd, len) { - return this.realFs.ftruncateSync(fd, len); + return this.baseFs.ftruncateSync(fd, len); } watch(p, a, b) { - return this.realFs.watch( - npath.fromPortablePath(p), + return this.baseFs.watch( + this.mapToBase(p), // @ts-expect-error - reason TBS a, b ); } watchFile(p, a, b) { - return this.realFs.watchFile( - npath.fromPortablePath(p), + return this.baseFs.watchFile( + this.mapToBase(p), // @ts-expect-error - reason TBS a, b ); } unwatchFile(p, cb) { - return this.realFs.unwatchFile(npath.fromPortablePath(p), cb); + return this.baseFs.unwatchFile(this.mapToBase(p), cb); } - makeCallback(resolve, reject) { - return (err, result) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }; + fsMapToBase(p) { + if (typeof p === `number`) { + return p; + } else { + return this.mapToBase(p); + } } } -class ProxiedFS extends FakeFS { - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); +function direntToPortable(dirent) { + const portableDirent = dirent; + if (typeof dirent.path === `string`) + portableDirent.path = npath.toPortablePath(dirent.path); + return portableDirent; +} +class NodeFS extends BasePortableFakeFS { + realFs; + constructor(realFs = fs) { + super(); + this.realFs = realFs; } - resolve(path) { - return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); + getExtractHint() { + return false; } getRealPath() { - return this.mapFromBase(this.baseFs.getRealPath()); + return PortablePath.root; + } + resolve(p) { + return ppath.resolve(p); } async openPromise(p, flags, mode) { - return this.baseFs.openPromise(this.mapToBase(p), flags, mode); + return await new Promise((resolve, reject) => { + this.realFs.open(npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); + }); } openSync(p, flags, mode) { - return this.baseFs.openSync(this.mapToBase(p), flags, mode); + return this.realFs.openSync(npath.fromPortablePath(p), flags, mode); } async opendirPromise(p, opts) { - return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); + return await new Promise((resolve, reject) => { + if (typeof opts !== `undefined`) { + this.realFs.opendir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }).then((dir) => { + const dirWithFixedPath = dir; + Object.defineProperty(dirWithFixedPath, `path`, { + value: p, + configurable: true, + writable: true + }); + return dirWithFixedPath; + }); } opendirSync(p, opts) { - return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); + const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p)); + const dirWithFixedPath = dir; + Object.defineProperty(dirWithFixedPath, `path`, { + value: p, + configurable: true, + writable: true + }); + return dirWithFixedPath; } - async readPromise(fd, buffer, offset, length, position) { - return await this.baseFs.readPromise(fd, buffer, offset, length, position); + async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { + return await new Promise((resolve, reject) => { + this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { + if (error) { + reject(error); + } else { + resolve(bytesRead); + } + }); + }); } readSync(fd, buffer, offset, length, position) { - return this.baseFs.readSync(fd, buffer, offset, length, position); + return this.realFs.readSync(fd, buffer, offset, length, position); } async writePromise(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return await this.baseFs.writePromise(fd, buffer, offset); - } else { - return await this.baseFs.writePromise(fd, buffer, offset, length, position); - } + return await new Promise((resolve, reject) => { + if (typeof buffer === `string`) { + return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); + } else { + return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); + } + }); } writeSync(fd, buffer, offset, length, position) { if (typeof buffer === `string`) { - return this.baseFs.writeSync(fd, buffer, offset); + return this.realFs.writeSync(fd, buffer, offset); } else { - return this.baseFs.writeSync(fd, buffer, offset, length, position); + return this.realFs.writeSync(fd, buffer, offset, length, position); } } async closePromise(fd) { - return this.baseFs.closePromise(fd); + await new Promise((resolve, reject) => { + this.realFs.close(fd, this.makeCallback(resolve, reject)); + }); } closeSync(fd) { - this.baseFs.closeSync(fd); + this.realFs.closeSync(fd); } createReadStream(p, opts) { - return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createReadStream(realPath, opts); } createWriteStream(p, opts) { - return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createWriteStream(realPath, opts); } async realpathPromise(p) { - return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); + return await new Promise((resolve, reject) => { + this.realFs.realpath(npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then((path) => { + return npath.toPortablePath(path); + }); } realpathSync(p) { - return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); + return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(p), {})); } async existsPromise(p) { - return this.baseFs.existsPromise(this.mapToBase(p)); - } - existsSync(p) { - return this.baseFs.existsSync(this.mapToBase(p)); + return await new Promise((resolve) => { + this.realFs.exists(npath.fromPortablePath(p), resolve); + }); } accessSync(p, mode) { - return this.baseFs.accessSync(this.mapToBase(p), mode); + return this.realFs.accessSync(npath.fromPortablePath(p), mode); } async accessPromise(p, mode) { - return this.baseFs.accessPromise(this.mapToBase(p), mode); + return await new Promise((resolve, reject) => { + this.realFs.access(npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); + }); + } + existsSync(p) { + return this.realFs.existsSync(npath.fromPortablePath(p)); } async statPromise(p, opts) { - return this.baseFs.statPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.stat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } statSync(p, opts) { - return this.baseFs.statSync(this.mapToBase(p), opts); + if (opts) { + return this.realFs.statSync(npath.fromPortablePath(p), opts); + } else { + return this.realFs.statSync(npath.fromPortablePath(p)); + } } async fstatPromise(fd, opts) { - return this.baseFs.fstatPromise(fd, opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.fstat(fd, this.makeCallback(resolve, reject)); + } + }); } fstatSync(fd, opts) { - return this.baseFs.fstatSync(fd, opts); + if (opts) { + return this.realFs.fstatSync(fd, opts); + } else { + return this.realFs.fstatSync(fd); + } } - lstatPromise(p, opts) { - return this.baseFs.lstatPromise(this.mapToBase(p), opts); + async lstatPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.lstat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } lstatSync(p, opts) { - return this.baseFs.lstatSync(this.mapToBase(p), opts); + if (opts) { + return this.realFs.lstatSync(npath.fromPortablePath(p), opts); + } else { + return this.realFs.lstatSync(npath.fromPortablePath(p)); + } } async fchmodPromise(fd, mask) { - return this.baseFs.fchmodPromise(fd, mask); + return await new Promise((resolve, reject) => { + this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); + }); } fchmodSync(fd, mask) { - return this.baseFs.fchmodSync(fd, mask); + return this.realFs.fchmodSync(fd, mask); } async chmodPromise(p, mask) { - return this.baseFs.chmodPromise(this.mapToBase(p), mask); + return await new Promise((resolve, reject) => { + this.realFs.chmod(npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + }); } chmodSync(p, mask) { - return this.baseFs.chmodSync(this.mapToBase(p), mask); + return this.realFs.chmodSync(npath.fromPortablePath(p), mask); } async fchownPromise(fd, uid, gid) { - return this.baseFs.fchownPromise(fd, uid, gid); + return await new Promise((resolve, reject) => { + this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); + }); } fchownSync(fd, uid, gid) { - return this.baseFs.fchownSync(fd, uid, gid); + return this.realFs.fchownSync(fd, uid, gid); } async chownPromise(p, uid, gid) { - return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); + return await new Promise((resolve, reject) => { + this.realFs.chown(npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); + }); } chownSync(p, uid, gid) { - return this.baseFs.chownSync(this.mapToBase(p), uid, gid); + return this.realFs.chownSync(npath.fromPortablePath(p), uid, gid); } async renamePromise(oldP, newP) { - return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); + return await new Promise((resolve, reject) => { + this.realFs.rename(npath.fromPortablePath(oldP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); } renameSync(oldP, newP) { - return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); + return this.realFs.renameSync(npath.fromPortablePath(oldP), npath.fromPortablePath(newP)); } async copyFilePromise(sourceP, destP, flags = 0) { - return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); + return await new Promise((resolve, reject) => { + this.realFs.copyFile(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + }); } copyFileSync(sourceP, destP, flags = 0) { - return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); + return this.realFs.copyFileSync(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags); } async appendFilePromise(p, content, opts) { - return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); } appendFileSync(p, content, opts) { - return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFileSync(fsNativePath, content, opts); + } else { + this.realFs.appendFileSync(fsNativePath, content); + } } async writeFilePromise(p, content, opts) { - return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); } writeFileSync(p, content, opts) { - return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFileSync(fsNativePath, content, opts); + } else { + this.realFs.writeFileSync(fsNativePath, content); + } } async unlinkPromise(p) { - return this.baseFs.unlinkPromise(this.mapToBase(p)); + return await new Promise((resolve, reject) => { + this.realFs.unlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); } unlinkSync(p) { - return this.baseFs.unlinkSync(this.mapToBase(p)); + return this.realFs.unlinkSync(npath.fromPortablePath(p)); } async utimesPromise(p, atime, mtime) { - return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); + return await new Promise((resolve, reject) => { + this.realFs.utimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); } utimesSync(p, atime, mtime) { - return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); + this.realFs.utimesSync(npath.fromPortablePath(p), atime, mtime); } async lutimesPromise(p, atime, mtime) { - return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); + return await new Promise((resolve, reject) => { + this.realFs.lutimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); } lutimesSync(p, atime, mtime) { - return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); + this.realFs.lutimesSync(npath.fromPortablePath(p), atime, mtime); } async mkdirPromise(p, opts) { - return this.baseFs.mkdirPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + this.realFs.mkdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + }); } mkdirSync(p, opts) { - return this.baseFs.mkdirSync(this.mapToBase(p), opts); + return this.realFs.mkdirSync(npath.fromPortablePath(p), opts); } async rmdirPromise(p, opts) { - return this.baseFs.rmdirPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.rmdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rmdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } rmdirSync(p, opts) { - return this.baseFs.rmdirSync(this.mapToBase(p), opts); + return this.realFs.rmdirSync(npath.fromPortablePath(p), opts); } async rmPromise(p, opts) { - return this.baseFs.rmPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.rm(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rm(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } rmSync(p, opts) { - return this.baseFs.rmSync(this.mapToBase(p), opts); + return this.realFs.rmSync(npath.fromPortablePath(p), opts); } async linkPromise(existingP, newP) { - return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); + return await new Promise((resolve, reject) => { + this.realFs.link(npath.fromPortablePath(existingP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); } linkSync(existingP, newP) { - return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); + return this.realFs.linkSync(npath.fromPortablePath(existingP), npath.fromPortablePath(newP)); } async symlinkPromise(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); + return await new Promise((resolve, reject) => { + this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); + }); } symlinkSync(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkSync(mappedTarget, mappedP, type); + return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type); } async readFilePromise(p, encoding) { - return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); + }); } readFileSync(p, encoding) { - return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + return this.realFs.readFileSync(fsNativePath, encoding); } - readdirPromise(p, opts) { - return this.baseFs.readdirPromise(this.mapToBase(p), opts); + async readdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + if (opts.recursive && process.platform === `win32`) { + if (opts.withFileTypes) { + this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(direntToPortable)), reject)); + } else { + this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(npath.toPortablePath)), reject)); + } + } else { + this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } + } else { + this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } readdirSync(p, opts) { - return this.baseFs.readdirSync(this.mapToBase(p), opts); + if (opts) { + if (opts.recursive && process.platform === `win32`) { + if (opts.withFileTypes) { + return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(direntToPortable); + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(npath.toPortablePath); + } + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p), opts); + } + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p)); + } } async readlinkPromise(p) { - return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); + return await new Promise((resolve, reject) => { + this.realFs.readlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then((path) => { + return npath.toPortablePath(path); + }); } readlinkSync(p) { - return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); + return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(p))); } async truncatePromise(p, len) { - return this.baseFs.truncatePromise(this.mapToBase(p), len); + return await new Promise((resolve, reject) => { + this.realFs.truncate(npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); + }); } truncateSync(p, len) { - return this.baseFs.truncateSync(this.mapToBase(p), len); + return this.realFs.truncateSync(npath.fromPortablePath(p), len); } async ftruncatePromise(fd, len) { - return this.baseFs.ftruncatePromise(fd, len); + return await new Promise((resolve, reject) => { + this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); + }); } ftruncateSync(fd, len) { - return this.baseFs.ftruncateSync(fd, len); + return this.realFs.ftruncateSync(fd, len); } watch(p, a, b) { - return this.baseFs.watch( - this.mapToBase(p), + return this.realFs.watch( + npath.fromPortablePath(p), // @ts-expect-error - reason TBS a, b ); } watchFile(p, a, b) { - return this.baseFs.watchFile( - this.mapToBase(p), + return this.realFs.watchFile( + npath.fromPortablePath(p), // @ts-expect-error - reason TBS a, b ); } unwatchFile(p, cb) { - return this.baseFs.unwatchFile(this.mapToBase(p), cb); + return this.realFs.unwatchFile(npath.fromPortablePath(p), cb); } - fsMapToBase(p) { - if (typeof p === `number`) { - return p; - } else { - return this.mapToBase(p); - } + makeCallback(resolve, reject) { + return (err, result) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }; } } @@ -6387,24 +1426,113 @@ class VirtualFS extends ProxiedFS { } } +const URL = Number(process.versions.node.split('.', 1)[0]) < 20 ? URL$1 : globalThis.URL; + +const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10)); +const WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13; +const HAS_LAZY_LOADED_TRANSLATORS = major === 20 && minor < 6 || major === 19 && minor >= 3; +const SUPPORTS_IMPORT_ATTRIBUTES = major >= 21 || major === 20 && minor >= 10 || major === 18 && minor >= 20; +const SUPPORTS_IMPORT_ATTRIBUTES_ONLY = major >= 22; +const HAS_BROKEN_FSTAT_FOR_ZIP_FDS = major > 25 || major === 25 && minor >= 7 || major === 24 && minor >= 15; + +function readPackageScope(checkPath) { + const rootSeparatorIndex = checkPath.indexOf(npath.sep); + let separatorIndex; + do { + separatorIndex = checkPath.lastIndexOf(npath.sep); + checkPath = checkPath.slice(0, separatorIndex); + if (checkPath.endsWith(`${npath.sep}node_modules`)) + return false; + const pjson = readPackage(checkPath + npath.sep); + if (pjson) { + return { + data: pjson, + path: checkPath + }; + } + } while (separatorIndex > rootSeparatorIndex); + return false; +} +function readPackage(requestPath) { + const jsonPath = npath.resolve(requestPath, `package.json`); + if (!fs.existsSync(jsonPath)) + return null; + return JSON.parse(fs.readFileSync(jsonPath, `utf8`)); +} + +async function tryReadFile$1(path2) { + try { + return await fs.promises.readFile(path2, `utf8`); + } catch (error) { + if (error.code === `ENOENT`) + return null; + throw error; + } +} +function tryParseURL(str, base) { + try { + return new URL(str, base); + } catch { + return null; + } +} +let entrypointPath = null; +function setEntrypointPath(file) { + entrypointPath = file; +} +function getFileFormat(filepath) { + const ext = path.extname(filepath); + switch (ext) { + case `.mjs`: { + return `module`; + } + case `.cjs`: { + return `commonjs`; + } + case `.wasm`: { + throw new Error( + `Unknown file extension ".wasm" for ${filepath}` + ); + } + case `.json`: { + return `json`; + } + case `.js`: { + const pkg = readPackageScope(filepath); + if (!pkg) + return `commonjs`; + return pkg.data.type ?? `commonjs`; + } + default: { + if (entrypointPath !== filepath) + return null; + const pkg = readPackageScope(filepath); + if (!pkg) + return `commonjs`; + if (pkg.data.type === `module`) + return null; + return pkg.data.type ?? `commonjs`; + } + } +} + async function load$1(urlString, context, nextLoad) { - var _a, _b, _c; const url = tryParseURL(urlString); - if ((url == null ? void 0 : url.protocol) !== `file:`) + if (url?.protocol !== `file:`) return nextLoad(urlString, context, nextLoad); const filePath = fileURLToPath(url); - const format = getFileFormat$1(filePath); + const format = getFileFormat(filePath); if (!format) return nextLoad(urlString, context, nextLoad); if (format === `json`) { if (SUPPORTS_IMPORT_ATTRIBUTES_ONLY) { - if (((_a = context.importAttributes) == null ? void 0 : _a.type) !== `json`) { + if (context.importAttributes?.type !== `json`) { const err = new TypeError(`[ERR_IMPORT_ATTRIBUTE_MISSING]: Module "${urlString}" needs an import attribute of "type: json"`); err.code = `ERR_IMPORT_ATTRIBUTE_MISSING`; throw err; } } else { - const type = `importAttributes` in context ? (_b = context.importAttributes) == null ? void 0 : _b.type : (_c = context.importAssertions) == null ? void 0 : _c.type; + const type = `importAttributes` in context ? context.importAttributes?.type : context.importAssertions?.type; if (type !== `json`) { const err = new TypeError(`[ERR_IMPORT_ASSERTION_TYPE_MISSING]: Module "${urlString}" needs an import ${SUPPORTS_IMPORT_ATTRIBUTES ? `attribute` : `assertion`} of type "json"`); err.code = `ERR_IMPORT_ASSERTION_TYPE_MISSING`; @@ -6431,71 +1559,6 @@ async function load$1(urlString, context, nextLoad) { }; } -const require = createRequire(import.meta.url); -const getFileFormat = (filepath) => { - const ext = extname(filepath); - switch (ext) { - case ".mts": { - return "module"; - } - case ".cts": { - return "commonjs"; - } - case ".ts": { - const pkg = readPackageScope(filepath); - if (!pkg) return "commonjs"; - return pkg.data.type ?? "commonjs"; - } - case ".tsx": { - const pkg = readPackageScope(filepath); - if (!pkg) return "commonjs"; - return pkg.data.type ?? "commonjs"; - } - default: { - return null; - } - } -}; -const transformSource = (source, format, ext) => { - const { transformSync } = require("esbuild"); - const { code } = transformSync(source, { - format: format === "module" ? "esm" : "cjs", - loader: ext === "tsx" ? "tsx" : "ts", - target: `node${process.versions.node}` - }); - return code; -}; - -const loadHook = async (urlString, context, nextLoad) => load$1(urlString, context, async (urlString2, context2) => { - const url = tryParseURL(urlString2); - if ((url == null ? void 0 : url.protocol) !== `file:`) { - return nextLoad(urlString2, context2, nextLoad); - } - const filePath = fileURLToPath$1(url); - const format = getFileFormat(filePath); - if (!format) { - return nextLoad(urlString2, context2, nextLoad); - } - if (process.env.WATCH_REPORT_DEPENDENCIES && process.send) { - const pathToSend = pathToFileURL$1( - lib.npath.fromPortablePath(lib.VirtualFS.resolveVirtual(lib.npath.toPortablePath(filePath))) - ).href; - process.send({ - "watch:import": WATCH_MODE_MESSAGE_USES_ARRAYS ? [pathToSend] : pathToSend - }); - } - const source = await fs$1.promises.readFile(filePath, `utf8`); - return { - format, - source: transformSource( - source, - format, - filePath.includes(".tsx") ? "tsx" : "ts" - ), - shortCircuit: true - }; -}); - const ArrayIsArray = Array.isArray; const JSONStringify = JSON.stringify; const ObjectGetOwnPropertyNames = Object.getOwnPropertyNames; @@ -6594,7 +1657,7 @@ function getPackageConfig(path, specifier, base, readFileSyncFn) { } catch (error) { throw new ERR_INVALID_PACKAGE_CONFIG( path, - ("") + fileURLToPath(specifier), + (base ? `"${specifier}" from ` : "") + fileURLToPath(base || specifier), error.message ); } @@ -6665,28 +1728,6 @@ function getPackageScopeConfig(resolved, readFileSyncFn) { return packageConfig; } -/** - @license - Copyright Node.js contributors. All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to - deal in the Software without restriction, including without limitation the - rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - IN THE SOFTWARE. -*/ function throwImportNotDefined(specifier, packageJSONUrl, base) { throw new ERR_PACKAGE_IMPORT_NOT_DEFINED( specifier, @@ -6695,7 +1736,7 @@ function throwImportNotDefined(specifier, packageJSONUrl, base) { ); } function throwInvalidSubpath(subpath, packageJSONUrl, internal, base) { - const reason = `request is not a valid subpath for the "${"imports" }" resolution of ${fileURLToPath(packageJSONUrl)}`; + const reason = `request is not a valid subpath for the "${internal ? "imports" : "exports"}" resolution of ${fileURLToPath(packageJSONUrl)}`; throw new ERR_INVALID_MODULE_SPECIFIER( subpath, reason, @@ -6722,7 +1763,7 @@ function resolvePackageTargetString(target, subpath, match, packageJSONUrl, base if (subpath !== "" && !pattern && target[target.length - 1] !== "/") throwInvalidPackageTarget(match, target, packageJSONUrl, internal, base); if (!StringPrototypeStartsWith(target, "./")) { - if (!StringPrototypeStartsWith(target, "../") && !StringPrototypeStartsWith(target, "/")) { + if (internal && !StringPrototypeStartsWith(target, "../") && !StringPrototypeStartsWith(target, "/")) { let isURL = false; try { new URL(target); @@ -6937,7 +1978,7 @@ function packageImportsResolve({ name, base, conditions, readFileSyncFn }) { let findPnpApi = esmModule.findPnpApi; if (!findPnpApi) { - const require = createRequire$1(import.meta.url); + const require = createRequire(import.meta.url); const pnpApi = require(structuredClone(`./.pnp.cjs`)); pnpApi.setup(); findPnpApi = esmModule.findPnpApi; @@ -6969,7 +2010,6 @@ async function resolvePrivateRequest(specifier, issuer, context, nextResolve) { } } async function resolve$1(originalSpecifier, context, nextResolve) { - var _a, _b; if (!findPnpApi || isBuiltin(originalSpecifier)) return nextResolve(originalSpecifier, context, nextResolve); let specifier = originalSpecifier; @@ -6980,8 +2020,8 @@ async function resolve$1(originalSpecifier, context, nextResolve) { specifier = fileURLToPath(url); } const { parentURL, conditions = [] } = context; - const issuer = parentURL && ((_a = tryParseURL(parentURL)) == null ? void 0 : _a.protocol) === `file:` ? fileURLToPath(parentURL) : process.cwd(); - const pnpapi = (_b = findPnpApi(issuer)) != null ? _b : url ? findPnpApi(specifier) : null; + const issuer = parentURL && tryParseURL(parentURL)?.protocol === `file:` ? fileURLToPath(parentURL) : process.cwd(); + const pnpapi = findPnpApi(issuer) ?? (url ? findPnpApi(specifier) : null); if (!pnpapi) return nextResolve(originalSpecifier, context, nextResolve); if (specifier.startsWith(`#`)) @@ -7028,17 +2068,62 @@ async function resolve$1(originalSpecifier, context, nextResolve) { }; } -const resolveHook = async (originalSpecifier, context, nextResolve) => { - const tsSpecifier = originalSpecifier.replace(/\.(c|m)?js$/, `.$1ts`).replace(/\.(c|m)?jsx$/, ".$1tsx"); - try { - return await resolve$1(tsSpecifier, context, nextResolve); - } catch (err) { - if (tsSpecifier === originalSpecifier) throw err; - return resolve$1(originalSpecifier, context, nextResolve); +if (!HAS_LAZY_LOADED_TRANSLATORS) { + const binding = process.binding(`fs`); + const originalReadFile = binding.readFileUtf8 || binding.readFileSync; + if (originalReadFile) { + binding[originalReadFile.name] = function(...args) { + try { + return fs.readFileSync(args[0], { + encoding: `utf8`, + // @ts-expect-error - The docs says it needs to be a string but + // links to https://nodejs.org/dist/latest-v20.x/docs/api/fs.html#file-system-flags + // which says it can be a number which matches the implementation. + flag: args[1] + }); + } catch { + } + return originalReadFile.apply(this, args); + }; + } else { + const binding2 = process.binding(`fs`); + const originalfstat = binding2.fstat; + const ZIP_MASK = 4278190080; + const ZIP_MAGIC = 704643072; + binding2.fstat = function(...args) { + const [fd, useBigint, req] = args; + if ((fd & ZIP_MASK) === ZIP_MAGIC && useBigint === false && req === void 0) { + try { + const stats = fs.fstatSync(fd); + return new Float64Array([ + stats.dev, + stats.mode, + stats.nlink, + stats.uid, + stats.gid, + stats.rdev, + stats.blksize, + stats.ino, + stats.size, + stats.blocks + // atime sec + // atime ns + // mtime sec + // mtime ns + // ctime sec + // ctime ns + // birthtime sec + // birthtime ns + ]); + } catch { + } + } + return originalfstat.apply(this, args); + }; } -}; +} -const resolve = resolveHook; -const load = loadHook; +const resolve = resolve$1; +const load = load$1; export { load, resolve }; diff --git a/.yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs b/.yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs deleted file mode 100644 index 19b79b324..000000000 --- a/.yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs +++ /dev/null @@ -1,9 +0,0 @@ -/* eslint-disable */ -//prettier-ignore -module.exports = { -name: "@yarnpkg/plugin-pnp-patch", -factory: function (require) { -"use strict";var plugin=(()=>{var x=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var t=(O=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(O,{get:(z,W)=>(typeof require<"u"?require:z)[W]}):O)(function(O){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+O+'" is not supported')});var I=(O,z)=>{for(var W in z)x(O,W,{get:z[W],enumerable:!0})},i=(O,z,W,m)=>{if(z&&typeof z=="object"||typeof z=="function")for(let u of f(z))!X.call(O,u)&&u!==W&&x(O,u,{get:()=>z[u],enumerable:!(m=D(z,u))||m.enumerable});return O};var N=O=>i(x({},"__esModule",{value:!0}),O);var s={};I(s,{default:()=>r});var C=t("@yarnpkg/fslib"),p=t("@yarnpkg/plugin-pnp");var Z=t("node:zlib"),o,A=()=>(typeof o>"u"&&(o=(0,Z.brotliDecompressSync)(Buffer.from("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","base64")).toString()),o);var g={hooks:{async afterAllInstalled(O){let{esmLoader:z}=(0,p.getPnpPath)(O);await C.xfs.existsPromise(z)&&await C.xfs.changeFilePromise(z,A(),{automaticNewlines:!0,mode:420})}}},r=g;return N(s);})(); -return plugin; -} -}; diff --git a/.yarn/releases/yarn-remote.mjs b/.yarn/releases/yarn-remote.mjs index 69071d6b4..5f36cbd5b 100755 --- a/.yarn/releases/yarn-remote.mjs +++ b/.yarn/releases/yarn-remote.mjs @@ -24,7 +24,7 @@ } })(); -var K8s=Object.create;var Act=Object.defineProperty;var j8s=Object.getOwnPropertyDescriptor;var z8s=Object.getOwnPropertyNames;var q8s=Object.getPrototypeOf,$8s=Object.prototype.hasOwnProperty;var Et=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var bc=(e,t)=>()=>(e&&(t=e(e=0)),t);var H=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Uf=(e,t)=>{for(var r in t)Act(e,r,{get:t[r],enumerable:!0})},xyn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of z8s(t))!$8s.call(e,a)&&a!==r&&Act(e,a,{get:()=>t[a],enumerable:!(n=j8s(t,a))||n.enumerable});return e};var Nt=(e,t,r)=>(r=e!=null?K8s(q8s(e)):{},xyn(t||!e||!e.__esModule?Act(r,"default",{value:e,enumerable:!0}):r,e)),vi=e=>xyn(Act({},"__esModule",{value:!0}),e);var qy,bC,Bfe,T6t,dct,Gyn,R6t,N6t,pct=bc(()=>{(function(e){e.StartOfInput="\0",e.EndOfInput="",e.EndOfPartialInput=""})(qy||(qy={}));(function(e){e[e.InitialNode=0]="InitialNode",e[e.SuccessNode=1]="SuccessNode",e[e.ErrorNode=2]="ErrorNode",e[e.CustomNode=3]="CustomNode"})(bC||(bC={}));Bfe=-1,T6t=/^(-h|--help)(?:=([0-9]+))?$/,dct=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,Gyn=/^-[a-zA-Z]{2,}$/,R6t=/^([^=]+)=([\s\S]*)$/,N6t=process.env.DEBUG_CLI==="1"});var wfe,xSe,fct,D6t,Ict=bc(()=>{pct();wfe=class extends Error{constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageError"}},xSe=class extends Error{constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(n=>n.reason!==null&&n.reason===r[0].reason)){let[{reason:n}]=this.candidates;this.message=`${n} +var j8s=Object.create;var gct=Object.defineProperty;var z8s=Object.getOwnPropertyDescriptor;var q8s=Object.getOwnPropertyNames;var $8s=Object.getPrototypeOf,e6s=Object.prototype.hasOwnProperty;var Et=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var bc=(e,t)=>()=>(e&&(t=e(e=0)),t);var H=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Uf=(e,t)=>{for(var r in t)gct(e,r,{get:t[r],enumerable:!0})},Wyn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of q8s(t))!e6s.call(e,a)&&a!==r&&gct(e,a,{get:()=>t[a],enumerable:!(n=z8s(t,a))||n.enumerable});return e};var xt=(e,t,r)=>(r=e!=null?j8s($8s(e)):{},Wyn(t||!e||!e.__esModule?gct(r,"default",{value:e,enumerable:!0}):r,e)),vi=e=>Wyn(gct({},"__esModule",{value:!0}),e);var $y,bC,wfe,T6t,Act,Oyn,R6t,N6t,dct=bc(()=>{(function(e){e.StartOfInput="\0",e.EndOfInput="",e.EndOfPartialInput=""})($y||($y={}));(function(e){e[e.InitialNode=0]="InitialNode",e[e.SuccessNode=1]="SuccessNode",e[e.ErrorNode=2]="ErrorNode",e[e.CustomNode=3]="CustomNode"})(bC||(bC={}));wfe=-1,T6t=/^(-h|--help)(?:=([0-9]+))?$/,Act=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,Oyn=/^-[a-zA-Z]{2,}$/,R6t=/^([^=]+)=([\s\S]*)$/,N6t=process.env.DEBUG_CLI==="1"});var Tfe,xSe,pct,D6t,fct=bc(()=>{dct();Tfe=class extends Error{constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageError"}},xSe=class extends Error{constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(n=>n.reason!==null&&n.reason===r[0].reason)){let[{reason:n}]=this.candidates;this.message=`${n} ${this.candidates.map(({usage:a})=>`$ ${a}`).join(` `)}`}else if(this.candidates.length===1){let[{usage:n}]=this.candidates;this.message=`Command not found; did you mean: @@ -35,45 +35,45 @@ ${D6t(t)}`}else this.message=`Command not found; did you mean one of: ${this.candidates.map(({usage:n},a)=>`${`${a}.`.padStart(4)} ${n}`).join(` `)} -${D6t(t)}`}},fct=class extends Error{constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: +${D6t(t)}`}},pct=class extends Error{constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: ${this.usages.map((n,a)=>`${`${a}.`.padStart(4)} ${n}`).join(` `)} -${D6t(t)}`}},D6t=e=>`While running ${e.filter(t=>t!==qy.EndOfInput&&t!==qy.EndOfPartialInput).map(t=>{let r=JSON.stringify(t);return t.match(/\s/)||t.length===0||r!==`"${t}"`?r:t}).join(" ")}`});function e6s(e){let t=e.split(` +${D6t(t)}`}},D6t=e=>`While running ${e.filter(t=>t!==$y.EndOfInput&&t!==$y.EndOfPartialInput).map(t=>{let r=JSON.stringify(t);return t.match(/\s/)||t.length===0||r!==`"${t}"`?r:t}).join(" ")}`});function t6s(e){let t=e.split(` `),r=t.filter(a=>a.match(/\S/)),n=r.length>0?r.reduce((a,o)=>Math.min(a,o.length-o.trimStart().length),Number.MAX_VALUE):0;return t.map(a=>a.slice(n).trimRight()).join(` -`)}function O9(e,{format:t,paragraphs:r}){return e=e.replace(/\r\n?/g,` -`),e=e6s(e),e=e.replace(/^\n+|\n+$/g,""),e=e.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 +`)}function P9(e,{format:t,paragraphs:r}){return e=e.replace(/\r\n?/g,` +`),e=t6s(e),e=e.replace(/^\n+|\n+$/g,""),e=e.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 `),e=e.replace(/\n(\n)?\n*/g,(n,a)=>a||" "),r&&(e=e.split(/\n/).map(n=>{let a=n.match(/^\s*[*-][\t ]+(.*)/);if(!a)return n.match(/(.{1,80})(?: |$)/g).join(` `);let o=n.length-n.trimStart().length;return a[1].match(new RegExp(`(.{1,${78-o}})(?: |$)`,"g")).map((l,A)=>" ".repeat(o)+(A===0?"- ":" ")+l).join(` `)}).join(` `)),e=e.replace(/(`+)((?:.|[\n])*?)\1/g,(n,a,o)=>t.code(a+o+a)),e=e.replace(/(\*\*)((?:.|[\n])*?)\1/g,(n,a,o)=>t.bold(a+o+a)),e?`${e} -`:""}var k6t,Fyn,Zyn,x6t=bc(()=>{k6t=Array(80).fill("\u2501");for(let e=0;e<=24;++e)k6t[k6t.length-e]=`\x1B[38;5;${232+e}m\u2501`;Fyn={header:e=>`\x1B[1m\u2501\u2501\u2501 ${e}${e.length<75?` ${k6t.slice(e.length+5).join("")}`:":"}\x1B[0m`,bold:e=>`\x1B[1m${e}\x1B[22m`,error:e=>`\x1B[31m\x1B[1m${e}\x1B[22m\x1B[39m`,code:e=>`\x1B[36m${e}\x1B[39m`},Zyn={header:e=>e,bold:e=>e,error:e=>e,code:e=>e}});function EZ(e){return{...e,[a3e]:!0}}function UK(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&&!Array.isArray(e)?[void 0,e]:[e,t]}function hct(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,n,a]=r;return t&&(a=a[0].toLowerCase()+a.slice(1)),a=n!=="."||!t?`${n.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function c3e(e,t){return t.length===1?new wfe(`${e}${hct(t[0],{mergeName:!0})}`):new wfe(`${e}: +`:""}var k6t,Pyn,Myn,x6t=bc(()=>{k6t=Array(80).fill("\u2501");for(let e=0;e<=24;++e)k6t[k6t.length-e]=`\x1B[38;5;${232+e}m\u2501`;Pyn={header:e=>`\x1B[1m\u2501\u2501\u2501 ${e}${e.length<75?` ${k6t.slice(e.length+5).join("")}`:":"}\x1B[0m`,bold:e=>`\x1B[1m${e}\x1B[22m`,error:e=>`\x1B[31m\x1B[1m${e}\x1B[22m\x1B[39m`,code:e=>`\x1B[36m${e}\x1B[39m`},Myn={header:e=>e,bold:e=>e,error:e=>e,code:e=>e}});function SZ(e){return{...e,[a3e]:!0}}function KK(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&&!Array.isArray(e)?[void 0,e]:[e,t]}function Ict(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,n,a]=r;return t&&(a=a[0].toLowerCase()+a.slice(1)),a=n!=="."||!t?`${n.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function c3e(e,t){return t.length===1?new Tfe(`${e}${Ict(t[0],{mergeName:!0})}`):new Tfe(`${e}: ${t.map(r=>` -- ${hct(r)}`).join("")}`)}function Tfe(e,t,r){if(typeof r>"u")return t;let n=[],a=[],o=A=>{let f=t;return t=A,o.bind(null,f)};if(!r(t,{errors:n,coercions:a,coercion:o}))throw c3e(`Invalid value for ${e}`,n);for(let[,A]of a)A();return t}var a3e,r$=bc(()=>{Ict();a3e=Symbol("clipanion/isOption")});var SZ={};Uf(SZ,{KeyRelationship:()=>GSe,TypeAssertionError:()=>loe,applyCascade:()=>P6s,as:()=>y6s,assert:()=>m6s,assertWithErrors:()=>C6s,cascade:()=>Hyn,fn:()=>b6s,hasAtLeastOneKey:()=>Q6s,hasExactLength:()=>Myn,hasForbiddenKeys:()=>X6s,hasKeyRelationship:()=>K6s,hasMaxLength:()=>S6s,hasMinLength:()=>E6s,hasMutuallyExclusiveKeys:()=>J6s,hasRequiredKeys:()=>Y6s,hasUniqueItems:()=>v6s,isArray:()=>mct,isAtLeast:()=>T6s,isAtMost:()=>R6s,isBase64:()=>W6s,isBoolean:()=>c6s,isDate:()=>g6s,isDict:()=>p6s,isEnum:()=>Z6t,isHexColor:()=>V6s,isISO8601:()=>L6s,isInExclusiveRange:()=>D6s,isInInclusiveRange:()=>N6s,isInstanceOf:()=>I6s,isInteger:()=>k6s,isJSON:()=>O6s,isLiteral:()=>Vyn,isLowerCase:()=>G6s,isMap:()=>d6s,isNegative:()=>B6s,isNullable:()=>H6s,isNumber:()=>l6s,isObject:()=>Oyn,isOneOf:()=>h6s,isOptional:()=>M6s,isPartial:()=>f6s,isPayload:()=>u6s,isPositive:()=>w6s,isRecord:()=>_ct,isSet:()=>A6s,isString:()=>Wyn,isTuple:()=>Cct,isUUID4:()=>Z6s,isUnknown:()=>F6t,isUpperCase:()=>F6s,makeTrait:()=>Pyn,makeValidator:()=>xI,matchesRegExp:()=>x6s,softAssert:()=>_6s});function $y(e){return e===null?"null":e===void 0?"undefined":e===""?"an empty string":typeof e=="symbol"?`<${e.toString()}>`:Array.isArray(e)?"an array":JSON.stringify(e)}function FSe(e,t){if(e.length===0)return"nothing";if(e.length===1)return $y(e[0]);let r=e.slice(0,-1),n=e[e.length-1],a=e.length>2?`, ${t} `:` ${t} `;return`${r.map(o=>$y(o)).join(", ")}${a}${$y(n)}`}function coe(e,t){var r,n,a;return typeof t=="number"?`${(r=e?.p)!==null&&r!==void 0?r:"."}[${t}]`:t6s.test(t)?`${(n=e?.p)!==null&&n!==void 0?n:""}.${t}`:`${(a=e?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(t)}]`}function G6t(e,t,r){return e===1?t:r}function Cd({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}function o6s(e,t){return r=>{e[t]=r}}function KK(e,t){return r=>{let n=e[t];return e[t]=r,KK(e,t).bind(null,n)}}function l3e(e,t,r){let n=()=>(e(r()),a),a=()=>(e(t),n);return n}function F6t(){return xI({test:(e,t)=>!0})}function Vyn(e){return xI({test:(t,r)=>t!==e?Cd(r,`Expected ${$y(e)} (got ${$y(t)})`):!0})}function Wyn(){return xI({test:(e,t)=>typeof e!="string"?Cd(t,`Expected a string (got ${$y(e)})`):!0})}function Z6t(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>typeof a=="string"||typeof a=="number"),n=new Set(t);return n.size===1?Vyn([...n][0]):xI({test:(a,o)=>n.has(a)?!0:r?Cd(o,`Expected one of ${FSe(t,"or")} (got ${$y(a)})`):Cd(o,`Expected a valid enumeration value (got ${$y(a)})`)})}function c6s(){return xI({test:(e,t)=>{var r;if(typeof e!="boolean"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return Cd(t,"Unbound coercion result");let n=a6s.get(e);if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return Cd(t,`Expected a boolean (got ${$y(e)})`)}return!0}})}function l6s(){return xI({test:(e,t)=>{var r;if(typeof e!="number"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return Cd(t,"Unbound coercion result");let n;if(typeof e=="string"){let a;try{a=JSON.parse(e)}catch{}if(typeof a=="number")if(JSON.stringify(a)===e)n=a;else return Cd(t,`Received a number that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return Cd(t,`Expected a number (got ${$y(e)})`)}return!0}})}function u6s(e){return xI({test:(t,r)=>{var n;if(typeof r?.coercions>"u")return Cd(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return Cd(r,"Unbound coercion result");if(typeof t!="string")return Cd(r,`Expected a string (got ${$y(t)})`);let a;try{a=JSON.parse(t)}catch{return Cd(r,`Expected a JSON string (got ${$y(t)})`)}let o={value:a};return e(a,Object.assign(Object.assign({},r),{coercion:KK(o,"value")}))?(r.coercions.push([(n=r.p)!==null&&n!==void 0?n:".",r.coercion.bind(null,o.value)]),!0):!1}})}function g6s(){return xI({test:(e,t)=>{var r;if(!(e instanceof Date)){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return Cd(t,"Unbound coercion result");let n;if(typeof e=="string"&&Lyn.test(e))n=new Date(e);else{let a;if(typeof e=="string"){let o;try{o=JSON.parse(e)}catch{}typeof o=="number"&&(a=o)}else typeof e=="number"&&(a=e);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))n=new Date(a*1e3);else return Cd(t,`Received a timestamp that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return Cd(t,`Expected a date (got ${$y(e)})`)}return!0}})}function mct(e,{delimiter:t}={}){return xI({test:(r,n)=>{var a;let o=r;if(typeof r=="string"&&typeof t<"u"&&typeof n?.coercions<"u"){if(typeof n?.coercion>"u")return Cd(n,"Unbound coercion result");r=r.split(t)}if(!Array.isArray(r))return Cd(n,`Expected an array (got ${$y(r)})`);let l=!0;for(let A=0,f=r.length;A{var o,l;if(Object.getPrototypeOf(n).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");let A=[...n],f=[...n];if(!r(f,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let I=()=>f.some((C,b)=>C!==A[b])?new Set(f):n;return a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",l3e(a.coercion,n,I)]),!0}else{let A=!0;for(let f of n)if(A=e(f,Object.assign({},a))&&A,!A&&a?.errors==null)break;return A}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");let A={value:n};return r(n,Object.assign(Object.assign({},a),{coercion:KK(A,"value")}))?(a.coercions.push([(l=a.p)!==null&&l!==void 0?l:".",l3e(a.coercion,n,()=>new Set(A.value))]),!0):!1}return Cd(a,`Expected a set (got ${$y(n)})`)}})}function d6s(e,t){let r=mct(Cct([e,t])),n=_ct(t,{keys:e});return xI({test:(a,o)=>{var l,A,f;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return Cd(o,"Unbound coercion result");let I=[...a],C=[...a];if(!r(C,Object.assign(Object.assign({},o),{coercion:void 0})))return!1;let b=()=>C.some((E,N)=>E[0]!==I[N][0]||E[1]!==I[N][1])?new Map(C):a;return o.coercions.push([(l=o.p)!==null&&l!==void 0?l:".",l3e(o.coercion,a,b)]),!0}else{let I=!0;for(let[C,b]of a)if(I=e(C,Object.assign({},o))&&I,!I&&o?.errors==null||(I=t(b,Object.assign(Object.assign({},o),{p:coe(o,C)}))&&I,!I&&o?.errors==null))break;return I}if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return Cd(o,"Unbound coercion result");let I={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},o),{coercion:void 0}))?(o.coercions.push([(A=o.p)!==null&&A!==void 0?A:".",l3e(o.coercion,a,()=>new Map(I.value))]),!0):!1:n(a,Object.assign(Object.assign({},o),{coercion:KK(I,"value")}))?(o.coercions.push([(f=o.p)!==null&&f!==void 0?f:".",l3e(o.coercion,a,()=>new Map(Object.entries(I.value)))]),!0):!1}return Cd(o,`Expected a map (got ${$y(a)})`)}})}function Cct(e,{delimiter:t}={}){let r=Myn(e.length);return xI({test:(n,a)=>{var o;if(typeof n=="string"&&typeof t<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");n=n.split(t),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)])}if(!Array.isArray(n))return Cd(a,`Expected a tuple (got ${$y(n)})`);let l=r(n,Object.assign({},a));for(let A=0,f=n.length;A{var o;if(Array.isArray(n)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?Cd(a,"Unbound coercion result"):r(n,Object.assign(Object.assign({},a),{coercion:void 0}))?(n=Object.fromEntries(n),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)]),!0):!1;if(typeof n!="object"||n===null)return Cd(a,`Expected an object (got ${$y(n)})`);let l=Object.keys(n),A=!0;for(let f=0,I=l.length;f{if(typeof a!="object"||a===null)return Cd(o,`Expected an object (got ${$y(a)})`);let l=new Set([...r,...Object.keys(a)]),A={},f=!0;for(let I of l){if(I==="constructor"||I==="__proto__")f=Cd(Object.assign(Object.assign({},o),{p:coe(o,I)}),"Unsafe property name");else{let C=Object.prototype.hasOwnProperty.call(e,I)?e[I]:void 0,b=Object.prototype.hasOwnProperty.call(a,I)?a[I]:void 0;typeof C<"u"?f=C(b,Object.assign(Object.assign({},o),{p:coe(o,I),coercion:KK(a,I)}))&&f:t===null?f=Cd(Object.assign(Object.assign({},o),{p:coe(o,I)}),`Extraneous property (got ${$y(b)})`):Object.defineProperty(A,I,{enumerable:!0,get:()=>b,set:o6s(a,I)})}if(!f&&o?.errors==null)break}return t!==null&&(f||o?.errors!=null)&&(f=t(A,o)&&f),f}});return Object.assign(n,{properties:e})}function f6s(e){return Oyn(e,{extra:_ct(F6t())})}function Pyn(e){return()=>e}function xI({test:e}){return Pyn(e)()}function m6s(e,t){if(!t(e))throw new loe}function C6s(e,t){let r=[];if(!t(e,{errors:r}))throw new loe({errors:r})}function _6s(e,t){}function y6s(e,t,{coerce:r=!1,errors:n,throw:a}={}){let o=n?[]:void 0;if(!r){if(t(e,{errors:o}))return a?e:{value:e,errors:void 0};if(a)throw new loe({errors:o});return{value:void 0,errors:o??!0}}let l={value:e},A=KK(l,"value"),f=[];if(!t(e,{errors:o,coercion:A,coercions:f})){if(a)throw new loe({errors:o});return{value:void 0,errors:o??!0}}for(let[,I]of f)I();return a?l.value:{value:l.value,errors:void 0}}function b6s(e,t){let r=Cct(e);return(...n)=>{if(!r(n))throw new loe;return t(...n)}}function E6s(e){return xI({test:(t,r)=>t.length>=e?!0:Cd(r,`Expected to have a length of at least ${e} elements (got ${t.length})`)})}function S6s(e){return xI({test:(t,r)=>t.length<=e?!0:Cd(r,`Expected to have a length of at most ${e} elements (got ${t.length})`)})}function Myn(e){return xI({test:(t,r)=>t.length!==e?Cd(r,`Expected to have a length of exactly ${e} elements (got ${t.length})`):!0})}function v6s({map:e}={}){return xI({test:(t,r)=>{let n=new Set,a=new Set;for(let o=0,l=t.length;oe<=0?!0:Cd(t,`Expected to be negative (got ${e})`)})}function w6s(){return xI({test:(e,t)=>e>=0?!0:Cd(t,`Expected to be positive (got ${e})`)})}function T6s(e){return xI({test:(t,r)=>t>=e?!0:Cd(r,`Expected to be at least ${e} (got ${t})`)})}function R6s(e){return xI({test:(t,r)=>t<=e?!0:Cd(r,`Expected to be at most ${e} (got ${t})`)})}function N6s(e,t){return xI({test:(r,n)=>r>=e&&r<=t?!0:Cd(n,`Expected to be in the [${e}; ${t}] range (got ${r})`)})}function D6s(e,t){return xI({test:(r,n)=>r>=e&&rt!==Math.round(t)?Cd(r,`Expected to be an integer (got ${t})`):!e&&!Number.isSafeInteger(t)?Cd(r,`Expected to be a safe integer (got ${t})`):!0})}function x6s(e){return xI({test:(t,r)=>e.test(t)?!0:Cd(r,`Expected to match the pattern ${e.toString()} (got ${$y(t)})`)})}function G6s(){return xI({test:(e,t)=>e!==e.toLowerCase()?Cd(t,`Expected to be all-lowercase (got ${e})`):!0})}function F6s(){return xI({test:(e,t)=>e!==e.toUpperCase()?Cd(t,`Expected to be all-uppercase (got ${e})`):!0})}function Z6s(){return xI({test:(e,t)=>s6s.test(e)?!0:Cd(t,`Expected to be a valid UUID v4 (got ${$y(e)})`)})}function L6s(){return xI({test:(e,t)=>Lyn.test(e)?!0:Cd(t,`Expected to be a valid ISO 8601 date string (got ${$y(e)})`)})}function V6s({alpha:e=!1}){return xI({test:(t,r)=>(e?r6s.test(t):n6s.test(t))?!0:Cd(r,`Expected to be a valid hexadecimal color string (got ${$y(t)})`)})}function W6s(){return xI({test:(e,t)=>i6s.test(e)?!0:Cd(t,`Expected to be a valid base 64 string (got ${$y(e)})`)})}function O6s(e=F6t()){return xI({test:(t,r)=>{let n;try{n=JSON.parse(t)}catch{return Cd(r,`Expected to be a valid JSON string (got ${$y(t)})`)}return e(n,r)}})}function Hyn(e,...t){let r=Array.isArray(t[0])?t[0]:t;return xI({test:(n,a)=>{var o,l;let A={value:n},f=typeof a?.coercions<"u"?KK(A,"value"):void 0,I=typeof a?.coercions<"u"?[]:void 0;if(!e(n,Object.assign(Object.assign({},a),{coercion:f,coercions:I})))return!1;let C=[];if(typeof I<"u")for(let[,b]of I)C.push(b());try{if(typeof a?.coercions<"u"){if(A.value!==n){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,A.value)])}(l=a?.coercions)===null||l===void 0||l.push(...I)}return r.every(b=>b(A.value,a))}finally{for(let b of C)b()}}})}function P6s(e,...t){let r=Array.isArray(t[0])?t[0]:t;return Hyn(e,r)}function M6s(e){return xI({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}function H6s(e){return xI({test:(t,r)=>t===null?!0:e(t,r)})}function Y6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)||f.push(I);return f.length>0?Cd(l,`Missing required ${G6t(f.length,"property","properties")} ${FSe(f,"and")}`):!0}})}function Q6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>Object.keys(o).some(I=>a(n,I,o))?!0:Cd(l,`Missing at least one property from ${FSe(Array.from(n),"or")}`)})}function X6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>0?Cd(l,`Forbidden ${G6t(f.length,"property","properties")} ${FSe(f,"and")}`):!0}})}function J6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>1?Cd(l,`Mutually exclusive properties ${FSe(f,"and")}`):!0}})}function K6s(e,t,r,n){var a,o;let l=new Set((a=n?.ignore)!==null&&a!==void 0?a:[]),A=u3e[(o=n?.missingIf)!==null&&o!==void 0?o:"missing"],f=new Set(r),I=U6s[t],C=t===GSe.Forbids?"or":"and";return xI({test:(b,E)=>{let N=new Set(Object.keys(b));if(!A(N,e,b)||l.has(b[e]))return!0;let B=[];for(let F of f)(A(N,F,b)&&!l.has(b[F]))!==I.expect&&B.push(F);return B.length>=1?Cd(E,`Property "${e}" ${I.message} ${G6t(B.length,"property","properties")} ${FSe(B,C)}`):!0}})}var t6s,r6s,n6s,i6s,s6s,Lyn,a6s,I6s,h6s,loe,u3e,GSe,U6s,vZ=bc(()=>{t6s=/^[a-zA-Z_][a-zA-Z0-9_]*$/;r6s=/^#[0-9a-f]{6}$/i,n6s=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,i6s=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,s6s=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,Lyn=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;a6s=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);I6s=e=>xI({test:(t,r)=>t instanceof e?!0:Cd(r,`Expected an instance of ${e.name} (got ${$y(t)})`)}),h6s=(e,{exclusive:t=!1}={})=>xI({test:(r,n)=>{var a,o,l;let A=[],f=typeof n?.errors<"u"?[]:void 0;for(let I=0,C=e.length;I1?Cd(n,`Expected to match exactly a single predicate (matched ${A.join(", ")})`):(l=n?.errors)===null||l===void 0||l.push(...f),!1}});loe=class extends Error{constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=` +- ${Ict(r)}`).join("")}`)}function Rfe(e,t,r){if(typeof r>"u")return t;let n=[],a=[],o=A=>{let f=t;return t=A,o.bind(null,f)};if(!r(t,{errors:n,coercions:a,coercion:o}))throw c3e(`Invalid value for ${e}`,n);for(let[,A]of a)A();return t}var a3e,n$=bc(()=>{fct();a3e=Symbol("clipanion/isOption")});var vZ={};Uf(vZ,{KeyRelationship:()=>GSe,TypeAssertionError:()=>uoe,applyCascade:()=>M6s,as:()=>b6s,assert:()=>C6s,assertWithErrors:()=>_6s,cascade:()=>Kyn,fn:()=>E6s,hasAtLeastOneKey:()=>X6s,hasExactLength:()=>Uyn,hasForbiddenKeys:()=>J6s,hasKeyRelationship:()=>j6s,hasMaxLength:()=>v6s,hasMinLength:()=>S6s,hasMutuallyExclusiveKeys:()=>U6s,hasRequiredKeys:()=>Q6s,hasUniqueItems:()=>B6s,isArray:()=>hct,isAtLeast:()=>R6s,isAtMost:()=>N6s,isBase64:()=>O6s,isBoolean:()=>l6s,isDate:()=>A6s,isDict:()=>f6s,isEnum:()=>Z6t,isHexColor:()=>W6s,isISO8601:()=>V6s,isInExclusiveRange:()=>k6s,isInInclusiveRange:()=>D6s,isInstanceOf:()=>h6s,isInteger:()=>x6s,isJSON:()=>P6s,isLiteral:()=>Yyn,isLowerCase:()=>F6s,isMap:()=>p6s,isNegative:()=>w6s,isNullable:()=>Y6s,isNumber:()=>u6s,isObject:()=>Xyn,isOneOf:()=>m6s,isOptional:()=>H6s,isPartial:()=>I6s,isPayload:()=>g6s,isPositive:()=>T6s,isRecord:()=>Cct,isSet:()=>d6s,isString:()=>Qyn,isTuple:()=>mct,isUUID4:()=>L6s,isUnknown:()=>F6t,isUpperCase:()=>Z6s,makeTrait:()=>Jyn,makeValidator:()=>xI,matchesRegExp:()=>G6s,softAssert:()=>y6s});function eb(e){return e===null?"null":e===void 0?"undefined":e===""?"an empty string":typeof e=="symbol"?`<${e.toString()}>`:Array.isArray(e)?"an array":JSON.stringify(e)}function FSe(e,t){if(e.length===0)return"nothing";if(e.length===1)return eb(e[0]);let r=e.slice(0,-1),n=e[e.length-1],a=e.length>2?`, ${t} `:` ${t} `;return`${r.map(o=>eb(o)).join(", ")}${a}${eb(n)}`}function loe(e,t){var r,n,a;return typeof t=="number"?`${(r=e?.p)!==null&&r!==void 0?r:"."}[${t}]`:r6s.test(t)?`${(n=e?.p)!==null&&n!==void 0?n:""}.${t}`:`${(a=e?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(t)}]`}function G6t(e,t,r){return e===1?t:r}function Cd({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}function a6s(e,t){return r=>{e[t]=r}}function jK(e,t){return r=>{let n=e[t];return e[t]=r,jK(e,t).bind(null,n)}}function l3e(e,t,r){let n=()=>(e(r()),a),a=()=>(e(t),n);return n}function F6t(){return xI({test:(e,t)=>!0})}function Yyn(e){return xI({test:(t,r)=>t!==e?Cd(r,`Expected ${eb(e)} (got ${eb(t)})`):!0})}function Qyn(){return xI({test:(e,t)=>typeof e!="string"?Cd(t,`Expected a string (got ${eb(e)})`):!0})}function Z6t(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>typeof a=="string"||typeof a=="number"),n=new Set(t);return n.size===1?Yyn([...n][0]):xI({test:(a,o)=>n.has(a)?!0:r?Cd(o,`Expected one of ${FSe(t,"or")} (got ${eb(a)})`):Cd(o,`Expected a valid enumeration value (got ${eb(a)})`)})}function l6s(){return xI({test:(e,t)=>{var r;if(typeof e!="boolean"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return Cd(t,"Unbound coercion result");let n=c6s.get(e);if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return Cd(t,`Expected a boolean (got ${eb(e)})`)}return!0}})}function u6s(){return xI({test:(e,t)=>{var r;if(typeof e!="number"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return Cd(t,"Unbound coercion result");let n;if(typeof e=="string"){let a;try{a=JSON.parse(e)}catch{}if(typeof a=="number")if(JSON.stringify(a)===e)n=a;else return Cd(t,`Received a number that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return Cd(t,`Expected a number (got ${eb(e)})`)}return!0}})}function g6s(e){return xI({test:(t,r)=>{var n;if(typeof r?.coercions>"u")return Cd(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return Cd(r,"Unbound coercion result");if(typeof t!="string")return Cd(r,`Expected a string (got ${eb(t)})`);let a;try{a=JSON.parse(t)}catch{return Cd(r,`Expected a JSON string (got ${eb(t)})`)}let o={value:a};return e(a,Object.assign(Object.assign({},r),{coercion:jK(o,"value")}))?(r.coercions.push([(n=r.p)!==null&&n!==void 0?n:".",r.coercion.bind(null,o.value)]),!0):!1}})}function A6s(){return xI({test:(e,t)=>{var r;if(!(e instanceof Date)){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return Cd(t,"Unbound coercion result");let n;if(typeof e=="string"&&Hyn.test(e))n=new Date(e);else{let a;if(typeof e=="string"){let o;try{o=JSON.parse(e)}catch{}typeof o=="number"&&(a=o)}else typeof e=="number"&&(a=e);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))n=new Date(a*1e3);else return Cd(t,`Received a timestamp that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return Cd(t,`Expected a date (got ${eb(e)})`)}return!0}})}function hct(e,{delimiter:t}={}){return xI({test:(r,n)=>{var a;let o=r;if(typeof r=="string"&&typeof t<"u"&&typeof n?.coercions<"u"){if(typeof n?.coercion>"u")return Cd(n,"Unbound coercion result");r=r.split(t)}if(!Array.isArray(r))return Cd(n,`Expected an array (got ${eb(r)})`);let l=!0;for(let A=0,f=r.length;A{var o,l;if(Object.getPrototypeOf(n).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");let A=[...n],f=[...n];if(!r(f,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let I=()=>f.some((C,b)=>C!==A[b])?new Set(f):n;return a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",l3e(a.coercion,n,I)]),!0}else{let A=!0;for(let f of n)if(A=e(f,Object.assign({},a))&&A,!A&&a?.errors==null)break;return A}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");let A={value:n};return r(n,Object.assign(Object.assign({},a),{coercion:jK(A,"value")}))?(a.coercions.push([(l=a.p)!==null&&l!==void 0?l:".",l3e(a.coercion,n,()=>new Set(A.value))]),!0):!1}return Cd(a,`Expected a set (got ${eb(n)})`)}})}function p6s(e,t){let r=hct(mct([e,t])),n=Cct(t,{keys:e});return xI({test:(a,o)=>{var l,A,f;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return Cd(o,"Unbound coercion result");let I=[...a],C=[...a];if(!r(C,Object.assign(Object.assign({},o),{coercion:void 0})))return!1;let b=()=>C.some((E,N)=>E[0]!==I[N][0]||E[1]!==I[N][1])?new Map(C):a;return o.coercions.push([(l=o.p)!==null&&l!==void 0?l:".",l3e(o.coercion,a,b)]),!0}else{let I=!0;for(let[C,b]of a)if(I=e(C,Object.assign({},o))&&I,!I&&o?.errors==null||(I=t(b,Object.assign(Object.assign({},o),{p:loe(o,C)}))&&I,!I&&o?.errors==null))break;return I}if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return Cd(o,"Unbound coercion result");let I={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},o),{coercion:void 0}))?(o.coercions.push([(A=o.p)!==null&&A!==void 0?A:".",l3e(o.coercion,a,()=>new Map(I.value))]),!0):!1:n(a,Object.assign(Object.assign({},o),{coercion:jK(I,"value")}))?(o.coercions.push([(f=o.p)!==null&&f!==void 0?f:".",l3e(o.coercion,a,()=>new Map(Object.entries(I.value)))]),!0):!1}return Cd(o,`Expected a map (got ${eb(a)})`)}})}function mct(e,{delimiter:t}={}){let r=Uyn(e.length);return xI({test:(n,a)=>{var o;if(typeof n=="string"&&typeof t<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");n=n.split(t),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)])}if(!Array.isArray(n))return Cd(a,`Expected a tuple (got ${eb(n)})`);let l=r(n,Object.assign({},a));for(let A=0,f=n.length;A{var o;if(Array.isArray(n)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?Cd(a,"Unbound coercion result"):r(n,Object.assign(Object.assign({},a),{coercion:void 0}))?(n=Object.fromEntries(n),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)]),!0):!1;if(typeof n!="object"||n===null)return Cd(a,`Expected an object (got ${eb(n)})`);let l=Object.keys(n),A=!0;for(let f=0,I=l.length;f{if(typeof a!="object"||a===null)return Cd(o,`Expected an object (got ${eb(a)})`);let l=new Set([...r,...Object.keys(a)]),A={},f=!0;for(let I of l){if(I==="constructor"||I==="__proto__")f=Cd(Object.assign(Object.assign({},o),{p:loe(o,I)}),"Unsafe property name");else{let C=Object.prototype.hasOwnProperty.call(e,I)?e[I]:void 0,b=Object.prototype.hasOwnProperty.call(a,I)?a[I]:void 0;typeof C<"u"?f=C(b,Object.assign(Object.assign({},o),{p:loe(o,I),coercion:jK(a,I)}))&&f:t===null?f=Cd(Object.assign(Object.assign({},o),{p:loe(o,I)}),`Extraneous property (got ${eb(b)})`):Object.defineProperty(A,I,{enumerable:!0,get:()=>b,set:a6s(a,I)})}if(!f&&o?.errors==null)break}return t!==null&&(f||o?.errors!=null)&&(f=t(A,o)&&f),f}});return Object.assign(n,{properties:e})}function I6s(e){return Xyn(e,{extra:Cct(F6t())})}function Jyn(e){return()=>e}function xI({test:e}){return Jyn(e)()}function C6s(e,t){if(!t(e))throw new uoe}function _6s(e,t){let r=[];if(!t(e,{errors:r}))throw new uoe({errors:r})}function y6s(e,t){}function b6s(e,t,{coerce:r=!1,errors:n,throw:a}={}){let o=n?[]:void 0;if(!r){if(t(e,{errors:o}))return a?e:{value:e,errors:void 0};if(a)throw new uoe({errors:o});return{value:void 0,errors:o??!0}}let l={value:e},A=jK(l,"value"),f=[];if(!t(e,{errors:o,coercion:A,coercions:f})){if(a)throw new uoe({errors:o});return{value:void 0,errors:o??!0}}for(let[,I]of f)I();return a?l.value:{value:l.value,errors:void 0}}function E6s(e,t){let r=mct(e);return(...n)=>{if(!r(n))throw new uoe;return t(...n)}}function S6s(e){return xI({test:(t,r)=>t.length>=e?!0:Cd(r,`Expected to have a length of at least ${e} elements (got ${t.length})`)})}function v6s(e){return xI({test:(t,r)=>t.length<=e?!0:Cd(r,`Expected to have a length of at most ${e} elements (got ${t.length})`)})}function Uyn(e){return xI({test:(t,r)=>t.length!==e?Cd(r,`Expected to have a length of exactly ${e} elements (got ${t.length})`):!0})}function B6s({map:e}={}){return xI({test:(t,r)=>{let n=new Set,a=new Set;for(let o=0,l=t.length;oe<=0?!0:Cd(t,`Expected to be negative (got ${e})`)})}function T6s(){return xI({test:(e,t)=>e>=0?!0:Cd(t,`Expected to be positive (got ${e})`)})}function R6s(e){return xI({test:(t,r)=>t>=e?!0:Cd(r,`Expected to be at least ${e} (got ${t})`)})}function N6s(e){return xI({test:(t,r)=>t<=e?!0:Cd(r,`Expected to be at most ${e} (got ${t})`)})}function D6s(e,t){return xI({test:(r,n)=>r>=e&&r<=t?!0:Cd(n,`Expected to be in the [${e}; ${t}] range (got ${r})`)})}function k6s(e,t){return xI({test:(r,n)=>r>=e&&rt!==Math.round(t)?Cd(r,`Expected to be an integer (got ${t})`):!e&&!Number.isSafeInteger(t)?Cd(r,`Expected to be a safe integer (got ${t})`):!0})}function G6s(e){return xI({test:(t,r)=>e.test(t)?!0:Cd(r,`Expected to match the pattern ${e.toString()} (got ${eb(t)})`)})}function F6s(){return xI({test:(e,t)=>e!==e.toLowerCase()?Cd(t,`Expected to be all-lowercase (got ${e})`):!0})}function Z6s(){return xI({test:(e,t)=>e!==e.toUpperCase()?Cd(t,`Expected to be all-uppercase (got ${e})`):!0})}function L6s(){return xI({test:(e,t)=>o6s.test(e)?!0:Cd(t,`Expected to be a valid UUID v4 (got ${eb(e)})`)})}function V6s(){return xI({test:(e,t)=>Hyn.test(e)?!0:Cd(t,`Expected to be a valid ISO 8601 date string (got ${eb(e)})`)})}function W6s({alpha:e=!1}){return xI({test:(t,r)=>(e?n6s.test(t):i6s.test(t))?!0:Cd(r,`Expected to be a valid hexadecimal color string (got ${eb(t)})`)})}function O6s(){return xI({test:(e,t)=>s6s.test(e)?!0:Cd(t,`Expected to be a valid base 64 string (got ${eb(e)})`)})}function P6s(e=F6t()){return xI({test:(t,r)=>{let n;try{n=JSON.parse(t)}catch{return Cd(r,`Expected to be a valid JSON string (got ${eb(t)})`)}return e(n,r)}})}function Kyn(e,...t){let r=Array.isArray(t[0])?t[0]:t;return xI({test:(n,a)=>{var o,l;let A={value:n},f=typeof a?.coercions<"u"?jK(A,"value"):void 0,I=typeof a?.coercions<"u"?[]:void 0;if(!e(n,Object.assign(Object.assign({},a),{coercion:f,coercions:I})))return!1;let C=[];if(typeof I<"u")for(let[,b]of I)C.push(b());try{if(typeof a?.coercions<"u"){if(A.value!==n){if(typeof a?.coercion>"u")return Cd(a,"Unbound coercion result");a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,A.value)])}(l=a?.coercions)===null||l===void 0||l.push(...I)}return r.every(b=>b(A.value,a))}finally{for(let b of C)b()}}})}function M6s(e,...t){let r=Array.isArray(t[0])?t[0]:t;return Kyn(e,r)}function H6s(e){return xI({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}function Y6s(e){return xI({test:(t,r)=>t===null?!0:e(t,r)})}function Q6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)||f.push(I);return f.length>0?Cd(l,`Missing required ${G6t(f.length,"property","properties")} ${FSe(f,"and")}`):!0}})}function X6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>Object.keys(o).some(I=>a(n,I,o))?!0:Cd(l,`Missing at least one property from ${FSe(Array.from(n),"or")}`)})}function J6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>0?Cd(l,`Forbidden ${G6t(f.length,"property","properties")} ${FSe(f,"and")}`):!0}})}function U6s(e,t){var r;let n=new Set(e),a=u3e[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return xI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>1?Cd(l,`Mutually exclusive properties ${FSe(f,"and")}`):!0}})}function j6s(e,t,r,n){var a,o;let l=new Set((a=n?.ignore)!==null&&a!==void 0?a:[]),A=u3e[(o=n?.missingIf)!==null&&o!==void 0?o:"missing"],f=new Set(r),I=K6s[t],C=t===GSe.Forbids?"or":"and";return xI({test:(b,E)=>{let N=new Set(Object.keys(b));if(!A(N,e,b)||l.has(b[e]))return!0;let B=[];for(let F of f)(A(N,F,b)&&!l.has(b[F]))!==I.expect&&B.push(F);return B.length>=1?Cd(E,`Property "${e}" ${I.message} ${G6t(B.length,"property","properties")} ${FSe(B,C)}`):!0}})}var r6s,n6s,i6s,s6s,o6s,Hyn,c6s,h6s,m6s,uoe,u3e,GSe,K6s,BZ=bc(()=>{r6s=/^[a-zA-Z_][a-zA-Z0-9_]*$/;n6s=/^#[0-9a-f]{6}$/i,i6s=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,s6s=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,o6s=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,Hyn=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;c6s=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);h6s=e=>xI({test:(t,r)=>t instanceof e?!0:Cd(r,`Expected an instance of ${e.name} (got ${eb(t)})`)}),m6s=(e,{exclusive:t=!1}={})=>xI({test:(r,n)=>{var a,o,l;let A=[],f=typeof n?.errors<"u"?[]:void 0;for(let I=0,C=e.length;I1?Cd(n,`Expected to match exactly a single predicate (matched ${A.join(", ")})`):(l=n?.errors)===null||l===void 0||l.push(...f),!1}});uoe=class extends Error{constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=` `;for(let n of t)r+=` -- ${n}`}super(r)}};u3e={missing:(e,t)=>e.has(t),undefined:(e,t,r)=>e.has(t)&&typeof r[t]<"u",nil:(e,t,r)=>e.has(t)&&r[t]!=null,falsy:(e,t,r)=>e.has(t)&&!!r[t]};(function(e){e.Forbids="Forbids",e.Requires="Requires"})(GSe||(GSe={}));U6s={[GSe.Forbids]:{expect:!1,message:"forbids using"},[GSe.Requires]:{expect:!0,message:"requires using"}}});var Ub,uoe=bc(()=>{r$();Ub=class{constructor(){this.help=!1}static Usage(t){return t}async catch(t){throw t}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:o,applyCascade:l}=await Promise.resolve().then(()=>(vZ(),SZ)),A=l(a(o()),r),f=[],I=[];if(!A(this,{errors:f,coercions:I}))throw c3e("Invalid option schema",f);for(let[,b]of I)b()}else if(r!=null)throw new Error("Invalid command schema");let n=await this.execute();return typeof n<"u"?n:0}};Ub.isOption=a3e;Ub.Default=[]});function P9(e){N6t&&console.log(e)}function Qyn(){let e={nodes:[]};for(let t=0;t{if(t.has(n))return;t.add(n);let a=e.nodes[n];for(let l of Object.values(a.statics))for(let{to:A}of l)r(A);for(let[,{to:l}]of a.dynamics)r(l);for(let{to:l}of a.shortcuts)r(l);let o=new Set(a.shortcuts.map(({to:l})=>l));for(;a.shortcuts.length>0;){let{to:l}=a.shortcuts.shift(),A=e.nodes[l];for(let[f,I]of Object.entries(A.statics)){let C=Object.prototype.hasOwnProperty.call(a.statics,f)?a.statics[f]:a.statics[f]=[];for(let b of I)C.some(({to:E})=>b.to===E)||C.push(b)}for(let[f,I]of A.dynamics)a.dynamics.some(([C,{to:b}])=>f===C&&I.to===b)||a.dynamics.push([f,I]);for(let f of A.shortcuts)o.has(f.to)||(a.shortcuts.push(f),o.add(f.to))}};r(bC.InitialNode)}function q6s(e,{prefix:t=""}={}){if(N6t){P9(`${t}Nodes are:`);for(let r=0;rC!==bC.ErrorNode).map(({state:C})=>({usage:C.candidateUsage,reason:null})));if(I.every(({node:C})=>C===bC.ErrorNode))throw new xSe(t,I.map(({state:C})=>({usage:C.candidateUsage,reason:C.errorMessage})));n=tjs(I)}if(n.length>0){P9(" Results:");for(let o of n)P9(` - ${o.node} -> ${JSON.stringify(o.state)}`)}else P9(" No results");return n}function ejs(e,t,{endToken:r=qy.EndOfInput}={}){let n=$6s(e,[...t,r]);return rjs(t,n.map(({state:a})=>a))}function tjs(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path.length);return e.filter(({state:r})=>r.path.length===t)}function rjs(e,t){let r=t.filter(E=>E.selectedIndex!==null),n=r.filter(E=>!E.partial);if(n.length>0&&(r=n),r.length===0)throw new Error;let a=r.filter(E=>E.selectedIndex===Bfe||E.requiredOptions.every(N=>N.some(B=>E.options.find(F=>F.name===B))));if(a.length===0)throw new xSe(e,r.map(E=>({usage:E.candidateUsage,reason:null})));let o=0;for(let E of a)E.path.length>o&&(o=E.path.length);let l=a.filter(E=>E.path.length===o),A=E=>E.positionals.filter(({extra:N})=>!N).length+E.options.length,f=l.map(E=>({state:E,positionalCount:A(E)})),I=0;for(let{positionalCount:E}of f)E>I&&(I=E);let C=f.filter(({positionalCount:E})=>E===I).map(({state:E})=>E),b=njs(C);if(b.length>1)throw new fct(e,b.map(E=>E.candidateUsage));return b[0]}function njs(e){let t=[],r=[];for(let n of e)n.selectedIndex===Bfe?r.push(n):t.push(n);return r.length>0&&t.push({...Yyn,path:Xyn(...r.map(n=>n.path)),options:r.reduce((n,a)=>n.concat(a.options),[])}),t}function Xyn(e,t,...r){return t===void 0?Array.from(e):Xyn(e.filter((n,a)=>n===t[a]),...r)}function GO(){return{dynamics:[],shortcuts:[],statics:{}}}function Jyn(e){return e===bC.SuccessNode||e===bC.ErrorNode}function L6t(e,t=0){return{to:Jyn(e.to)?e.to:e.to>=bC.CustomNode?e.to+t-bC.CustomNode+1:e.to+t,reducer:e.reducer}}function ijs(e,t=0){let r=GO();for(let[n,a]of e.dynamics)r.dynamics.push([n,L6t(a,t)]);for(let n of e.shortcuts)r.shortcuts.push(L6t(n,t));for(let[n,a]of Object.entries(e.statics))r.statics[n]=a.map(o=>L6t(o,t));return r}function jN(e,t,r,n,a){e.nodes[t].dynamics.push([r,{to:n,reducer:a}])}function ZSe(e,t,r,n){e.nodes[t].shortcuts.push({to:r,reducer:n})}function BZ(e,t,r,n,a){(Object.prototype.hasOwnProperty.call(e.nodes[t].statics,r)?e.nodes[t].statics[r]:e.nodes[t].statics[r]=[]).push({to:n,reducer:a})}function yct(e,t,r,n,a){if(Array.isArray(t)){let[o,...l]=t;return e[o](r,n,a,...l)}else return e[t](r,n,a)}var Yyn,sjs,V6t,FO,W6t,bct,Ect=bc(()=>{pct();Ict();Yyn={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:Bfe,partial:!1,tokens:[]};sjs={always:()=>!0,isOptionLike:(e,t)=>!e.ignoreOptions&&t!=="-"&&t.startsWith("-"),isNotOptionLike:(e,t)=>e.ignoreOptions||t==="-"||!t.startsWith("-"),isOption:(e,t,r,n)=>!e.ignoreOptions&&t===n,isBatchOption:(e,t,r,n)=>!e.ignoreOptions&&Gyn.test(t)&&[...t.slice(1)].every(a=>n.has(`-${a}`)),isBoundOption:(e,t,r,n,a)=>{let o=t.match(R6t);return!e.ignoreOptions&&!!o&&dct.test(o[1])&&n.has(o[1])&&a.filter(l=>l.nameSet.includes(o[1])).every(l=>l.allowBinding)},isNegatedOption:(e,t,r,n)=>!e.ignoreOptions&&t===`--no-${n.slice(2)}`,isHelp:(e,t)=>!e.ignoreOptions&&T6t.test(t),isUnsupportedOption:(e,t,r,n)=>!e.ignoreOptions&&t.startsWith("-")&&dct.test(t)&&!n.has(t),isInvalidOption:(e,t)=>!e.ignoreOptions&&t.startsWith("-")&&!dct.test(t)},V6t={setCandidateState:(e,t,r,n)=>({...e,...n}),setSelectedIndex:(e,t,r,n)=>({...e,selectedIndex:n}),setPartialIndex:(e,t,r,n)=>({...e,selectedIndex:n,partial:!0}),pushBatch:(e,t,r,n)=>{let a=e.options.slice(),o=e.tokens.slice();for(let l=1;l{let[,n,a]=t.match(R6t),o=e.options.concat({name:n,value:a}),l=e.tokens.concat([{segmentIndex:r,type:"option",slice:[0,n.length],option:n},{segmentIndex:r,type:"assign",slice:[n.length,n.length+1]},{segmentIndex:r,type:"value",slice:[n.length+1,n.length+a.length+1]}]);return{...e,options:o,tokens:l}},pushPath:(e,t,r)=>{let n=e.path.concat(t),a=e.tokens.concat({segmentIndex:r,type:"path"});return{...e,path:n,tokens:a}},pushPositional:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!1}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtra:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!0}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtraNoLimits:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:FO}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushTrue:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushFalse:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!1}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushUndefined:(e,t,r,n)=>{let a=e.options.concat({name:t,value:void 0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:t});return{...e,options:a,tokens:o}},pushStringValue:(e,t,r)=>{var n;let a=e.options[e.options.length-1],o=e.options.slice(),l=e.tokens.concat({segmentIndex:r,type:"value"});return a.value=((n=a.value)!==null&&n!==void 0?n:[]).concat([t]),{...e,options:o,tokens:l}},setStringValue:(e,t,r)=>{let n=e.options[e.options.length-1],a=e.options.slice(),o=e.tokens.concat({segmentIndex:r,type:"value"});return n.value=t,{...e,options:a,tokens:o}},inhibateOptions:e=>({...e,ignoreOptions:!0}),useHelp:(e,t,r,n)=>{let[,,a]=t.match(T6t);return typeof a<"u"?{...e,options:[{name:"-c",value:String(n)},{name:"-i",value:a}]}:{...e,options:[{name:"-c",value:String(n)}]}},setError:(e,t,r,n)=>t===qy.EndOfInput||t===qy.EndOfPartialInput?{...e,errorMessage:`${n}.`}:{...e,errorMessage:`${n} ("${t}").`},setOptionArityError:(e,t)=>{let r=e.options[e.options.length-1];return{...e,errorMessage:`Not enough arguments to option ${r.name}.`}}},FO=Symbol(),W6t=class{constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=t,this.cliOpts=r}addPath(t){this.paths.push(t)}setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,extra:n=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:t,trailing:r,extra:n,proxy:a})}addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra===FO)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==FO?this.arity.extra.push(t):this.arity.extra!==FO&&this.arity.extra.length===0?this.arity.leading.push(t):this.arity.trailing.push(t)}addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===FO)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let n=0;n1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(n))throw new Error(`The arity must be an integer, got ${n}`);if(n<0)throw new Error(`The arity must be positive, got ${n}`);let A=t.reduce((f,I)=>I.length>f.length?I:f,"");for(let f of t)this.allOptionNames.set(f,A);this.options.push({preferredName:A,nameSet:t,description:r,arity:n,hidden:a,required:o,allowBinding:l})}setContext(t){this.context=t}usage({detailed:t=!0,inlineOptions:r=!0}={}){let n=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&n.push(...this.paths[0]),t){for(let{preferredName:l,nameSet:A,arity:f,hidden:I,description:C,required:b}of this.options){if(I)continue;let E=[];for(let B=0;B`:`[${N}]`)}n.push(...this.arity.leading.map(l=>`<${l}>`)),this.arity.extra===FO?n.push("..."):n.push(...this.arity.extra.map(l=>`[${l}]`)),n.push(...this.arity.trailing.map(l=>`<${l}>`))}return{usage:n.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let t=Qyn(),r=bC.InitialNode,n=this.usage().usage,a=this.options.filter(A=>A.required).map(A=>A.nameSet);r=lX(t,GO()),BZ(t,bC.InitialNode,qy.StartOfInput,r,["setCandidateState",{candidateUsage:n,requiredOptions:a}]);let o=this.arity.proxy?"always":"isNotOptionLike",l=this.paths.length>0?this.paths:[[]];for(let A of l){let f=r;if(A.length>0){let E=lX(t,GO());ZSe(t,f,E),this.registerOptions(t,E),f=E}for(let E=0;E0||!this.arity.proxy){let E=lX(t,GO());jN(t,f,"isHelp",E,["useHelp",this.cliIndex]),jN(t,E,"always",E,"pushExtra"),BZ(t,E,qy.EndOfInput,bC.SuccessNode,["setSelectedIndex",Bfe]),this.registerOptions(t,f)}this.arity.leading.length>0&&(BZ(t,f,qy.EndOfInput,bC.ErrorNode,["setError","Not enough positional arguments"]),BZ(t,f,qy.EndOfPartialInput,bC.SuccessNode,["setPartialIndex",this.cliIndex]));let I=f;for(let E=0;E0||E+1!==this.arity.leading.length)&&(BZ(t,N,qy.EndOfInput,bC.ErrorNode,["setError","Not enough positional arguments"]),BZ(t,N,qy.EndOfPartialInput,bC.SuccessNode,["setPartialIndex",this.cliIndex])),jN(t,I,"isNotOptionLike",N,"pushPositional"),I=N}let C=I;if(this.arity.extra===FO||this.arity.extra.length>0){let E=lX(t,GO());if(ZSe(t,I,E),this.arity.extra===FO){let N=lX(t,GO());this.arity.proxy||this.registerOptions(t,N),jN(t,I,o,N,"pushExtraNoLimits"),jN(t,N,o,N,"pushExtraNoLimits"),ZSe(t,N,E)}else for(let N=0;N0)&&this.registerOptions(t,B),jN(t,C,o,B,"pushExtra"),ZSe(t,B,E),C=B}C=E}this.arity.trailing.length>0&&(BZ(t,C,qy.EndOfInput,bC.ErrorNode,["setError","Not enough positional arguments"]),BZ(t,C,qy.EndOfPartialInput,bC.SuccessNode,["setPartialIndex",this.cliIndex]));let b=C;for(let E=0;E=0&&t{let l=o?qy.EndOfPartialInput:qy.EndOfInput;return ejs(n,a,{endToken:l})}}}}});import O6t from"tty";function Kyn(){return O6t&&"getColorDepth"in O6t.WriteStream.prototype?O6t.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function jyn(e){let t=Uyn;if(typeof t>"u"){if(e.stdout===process.stdout&&e.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=Et("async_hooks");t=Uyn=new r;let n=process.stdout._write;process.stdout._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?n.call(this,o,l,A):f.stdout.write(o,l,A)};let a=process.stderr._write;process.stderr._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?a.call(this,o,l,A):f.stderr.write(o,l,A)}}return r=>t.run(e,r)}var Uyn,zyn=bc(()=>{});var Sct,qyn=bc(()=>{uoe();Sct=class e extends Ub{constructor(t){super(),this.contexts=t,this.commands=[]}static from(t,r){let n=new e(r);n.path=t.path;for(let a of t.options)switch(a.name){case"-c":n.commands.push(Number(a.value));break;case"-i":n.index=Number(a.value);break}return n}async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: +- ${n}`}super(r)}};u3e={missing:(e,t)=>e.has(t),undefined:(e,t,r)=>e.has(t)&&typeof r[t]<"u",nil:(e,t,r)=>e.has(t)&&r[t]!=null,falsy:(e,t,r)=>e.has(t)&&!!r[t]};(function(e){e.Forbids="Forbids",e.Requires="Requires"})(GSe||(GSe={}));K6s={[GSe.Forbids]:{expect:!1,message:"forbids using"},[GSe.Requires]:{expect:!0,message:"requires using"}}});var Kb,goe=bc(()=>{n$();Kb=class{constructor(){this.help=!1}static Usage(t){return t}async catch(t){throw t}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:o,applyCascade:l}=await Promise.resolve().then(()=>(BZ(),vZ)),A=l(a(o()),r),f=[],I=[];if(!A(this,{errors:f,coercions:I}))throw c3e("Invalid option schema",f);for(let[,b]of I)b()}else if(r!=null)throw new Error("Invalid command schema");let n=await this.execute();return typeof n<"u"?n:0}};Kb.isOption=a3e;Kb.Default=[]});function M9(e){N6t&&console.log(e)}function zyn(){let e={nodes:[]};for(let t=0;t{if(t.has(n))return;t.add(n);let a=e.nodes[n];for(let l of Object.values(a.statics))for(let{to:A}of l)r(A);for(let[,{to:l}]of a.dynamics)r(l);for(let{to:l}of a.shortcuts)r(l);let o=new Set(a.shortcuts.map(({to:l})=>l));for(;a.shortcuts.length>0;){let{to:l}=a.shortcuts.shift(),A=e.nodes[l];for(let[f,I]of Object.entries(A.statics)){let C=Object.prototype.hasOwnProperty.call(a.statics,f)?a.statics[f]:a.statics[f]=[];for(let b of I)C.some(({to:E})=>b.to===E)||C.push(b)}for(let[f,I]of A.dynamics)a.dynamics.some(([C,{to:b}])=>f===C&&I.to===b)||a.dynamics.push([f,I]);for(let f of A.shortcuts)o.has(f.to)||(a.shortcuts.push(f),o.add(f.to))}};r(bC.InitialNode)}function $6s(e,{prefix:t=""}={}){if(N6t){M9(`${t}Nodes are:`);for(let r=0;rC!==bC.ErrorNode).map(({state:C})=>({usage:C.candidateUsage,reason:null})));if(I.every(({node:C})=>C===bC.ErrorNode))throw new xSe(t,I.map(({state:C})=>({usage:C.candidateUsage,reason:C.errorMessage})));n=rjs(I)}if(n.length>0){M9(" Results:");for(let o of n)M9(` - ${o.node} -> ${JSON.stringify(o.state)}`)}else M9(" No results");return n}function tjs(e,t,{endToken:r=$y.EndOfInput}={}){let n=ejs(e,[...t,r]);return njs(t,n.map(({state:a})=>a))}function rjs(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path.length);return e.filter(({state:r})=>r.path.length===t)}function njs(e,t){let r=t.filter(E=>E.selectedIndex!==null),n=r.filter(E=>!E.partial);if(n.length>0&&(r=n),r.length===0)throw new Error;let a=r.filter(E=>E.selectedIndex===wfe||E.requiredOptions.every(N=>N.some(B=>E.options.find(F=>F.name===B))));if(a.length===0)throw new xSe(e,r.map(E=>({usage:E.candidateUsage,reason:null})));let o=0;for(let E of a)E.path.length>o&&(o=E.path.length);let l=a.filter(E=>E.path.length===o),A=E=>E.positionals.filter(({extra:N})=>!N).length+E.options.length,f=l.map(E=>({state:E,positionalCount:A(E)})),I=0;for(let{positionalCount:E}of f)E>I&&(I=E);let C=f.filter(({positionalCount:E})=>E===I).map(({state:E})=>E),b=ijs(C);if(b.length>1)throw new pct(e,b.map(E=>E.candidateUsage));return b[0]}function ijs(e){let t=[],r=[];for(let n of e)n.selectedIndex===wfe?r.push(n):t.push(n);return r.length>0&&t.push({...jyn,path:qyn(...r.map(n=>n.path)),options:r.reduce((n,a)=>n.concat(a.options),[])}),t}function qyn(e,t,...r){return t===void 0?Array.from(e):qyn(e.filter((n,a)=>n===t[a]),...r)}function FO(){return{dynamics:[],shortcuts:[],statics:{}}}function $yn(e){return e===bC.SuccessNode||e===bC.ErrorNode}function L6t(e,t=0){return{to:$yn(e.to)?e.to:e.to>=bC.CustomNode?e.to+t-bC.CustomNode+1:e.to+t,reducer:e.reducer}}function sjs(e,t=0){let r=FO();for(let[n,a]of e.dynamics)r.dynamics.push([n,L6t(a,t)]);for(let n of e.shortcuts)r.shortcuts.push(L6t(n,t));for(let[n,a]of Object.entries(e.statics))r.statics[n]=a.map(o=>L6t(o,t));return r}function zN(e,t,r,n,a){e.nodes[t].dynamics.push([r,{to:n,reducer:a}])}function ZSe(e,t,r,n){e.nodes[t].shortcuts.push({to:r,reducer:n})}function wZ(e,t,r,n,a){(Object.prototype.hasOwnProperty.call(e.nodes[t].statics,r)?e.nodes[t].statics[r]:e.nodes[t].statics[r]=[]).push({to:n,reducer:a})}function _ct(e,t,r,n,a){if(Array.isArray(t)){let[o,...l]=t;return e[o](r,n,a,...l)}else return e[t](r,n,a)}var jyn,ojs,V6t,ZO,W6t,yct,bct=bc(()=>{dct();fct();jyn={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:wfe,partial:!1,tokens:[]};ojs={always:()=>!0,isOptionLike:(e,t)=>!e.ignoreOptions&&t!=="-"&&t.startsWith("-"),isNotOptionLike:(e,t)=>e.ignoreOptions||t==="-"||!t.startsWith("-"),isOption:(e,t,r,n)=>!e.ignoreOptions&&t===n,isBatchOption:(e,t,r,n)=>!e.ignoreOptions&&Oyn.test(t)&&[...t.slice(1)].every(a=>n.has(`-${a}`)),isBoundOption:(e,t,r,n,a)=>{let o=t.match(R6t);return!e.ignoreOptions&&!!o&&Act.test(o[1])&&n.has(o[1])&&a.filter(l=>l.nameSet.includes(o[1])).every(l=>l.allowBinding)},isNegatedOption:(e,t,r,n)=>!e.ignoreOptions&&t===`--no-${n.slice(2)}`,isHelp:(e,t)=>!e.ignoreOptions&&T6t.test(t),isUnsupportedOption:(e,t,r,n)=>!e.ignoreOptions&&t.startsWith("-")&&Act.test(t)&&!n.has(t),isInvalidOption:(e,t)=>!e.ignoreOptions&&t.startsWith("-")&&!Act.test(t)},V6t={setCandidateState:(e,t,r,n)=>({...e,...n}),setSelectedIndex:(e,t,r,n)=>({...e,selectedIndex:n}),setPartialIndex:(e,t,r,n)=>({...e,selectedIndex:n,partial:!0}),pushBatch:(e,t,r,n)=>{let a=e.options.slice(),o=e.tokens.slice();for(let l=1;l{let[,n,a]=t.match(R6t),o=e.options.concat({name:n,value:a}),l=e.tokens.concat([{segmentIndex:r,type:"option",slice:[0,n.length],option:n},{segmentIndex:r,type:"assign",slice:[n.length,n.length+1]},{segmentIndex:r,type:"value",slice:[n.length+1,n.length+a.length+1]}]);return{...e,options:o,tokens:l}},pushPath:(e,t,r)=>{let n=e.path.concat(t),a=e.tokens.concat({segmentIndex:r,type:"path"});return{...e,path:n,tokens:a}},pushPositional:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!1}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtra:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!0}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtraNoLimits:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:ZO}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushTrue:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushFalse:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!1}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushUndefined:(e,t,r,n)=>{let a=e.options.concat({name:t,value:void 0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:t});return{...e,options:a,tokens:o}},pushStringValue:(e,t,r)=>{var n;let a=e.options[e.options.length-1],o=e.options.slice(),l=e.tokens.concat({segmentIndex:r,type:"value"});return a.value=((n=a.value)!==null&&n!==void 0?n:[]).concat([t]),{...e,options:o,tokens:l}},setStringValue:(e,t,r)=>{let n=e.options[e.options.length-1],a=e.options.slice(),o=e.tokens.concat({segmentIndex:r,type:"value"});return n.value=t,{...e,options:a,tokens:o}},inhibateOptions:e=>({...e,ignoreOptions:!0}),useHelp:(e,t,r,n)=>{let[,,a]=t.match(T6t);return typeof a<"u"?{...e,options:[{name:"-c",value:String(n)},{name:"-i",value:a}]}:{...e,options:[{name:"-c",value:String(n)}]}},setError:(e,t,r,n)=>t===$y.EndOfInput||t===$y.EndOfPartialInput?{...e,errorMessage:`${n}.`}:{...e,errorMessage:`${n} ("${t}").`},setOptionArityError:(e,t)=>{let r=e.options[e.options.length-1];return{...e,errorMessage:`Not enough arguments to option ${r.name}.`}}},ZO=Symbol(),W6t=class{constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=t,this.cliOpts=r}addPath(t){this.paths.push(t)}setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,extra:n=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:t,trailing:r,extra:n,proxy:a})}addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra===ZO)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==ZO?this.arity.extra.push(t):this.arity.extra!==ZO&&this.arity.extra.length===0?this.arity.leading.push(t):this.arity.trailing.push(t)}addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===ZO)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let n=0;n1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(n))throw new Error(`The arity must be an integer, got ${n}`);if(n<0)throw new Error(`The arity must be positive, got ${n}`);let A=t.reduce((f,I)=>I.length>f.length?I:f,"");for(let f of t)this.allOptionNames.set(f,A);this.options.push({preferredName:A,nameSet:t,description:r,arity:n,hidden:a,required:o,allowBinding:l})}setContext(t){this.context=t}usage({detailed:t=!0,inlineOptions:r=!0}={}){let n=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&n.push(...this.paths[0]),t){for(let{preferredName:l,nameSet:A,arity:f,hidden:I,description:C,required:b}of this.options){if(I)continue;let E=[];for(let B=0;B`:`[${N}]`)}n.push(...this.arity.leading.map(l=>`<${l}>`)),this.arity.extra===ZO?n.push("..."):n.push(...this.arity.extra.map(l=>`[${l}]`)),n.push(...this.arity.trailing.map(l=>`<${l}>`))}return{usage:n.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let t=zyn(),r=bC.InitialNode,n=this.usage().usage,a=this.options.filter(A=>A.required).map(A=>A.nameSet);r=uX(t,FO()),wZ(t,bC.InitialNode,$y.StartOfInput,r,["setCandidateState",{candidateUsage:n,requiredOptions:a}]);let o=this.arity.proxy?"always":"isNotOptionLike",l=this.paths.length>0?this.paths:[[]];for(let A of l){let f=r;if(A.length>0){let E=uX(t,FO());ZSe(t,f,E),this.registerOptions(t,E),f=E}for(let E=0;E0||!this.arity.proxy){let E=uX(t,FO());zN(t,f,"isHelp",E,["useHelp",this.cliIndex]),zN(t,E,"always",E,"pushExtra"),wZ(t,E,$y.EndOfInput,bC.SuccessNode,["setSelectedIndex",wfe]),this.registerOptions(t,f)}this.arity.leading.length>0&&(wZ(t,f,$y.EndOfInput,bC.ErrorNode,["setError","Not enough positional arguments"]),wZ(t,f,$y.EndOfPartialInput,bC.SuccessNode,["setPartialIndex",this.cliIndex]));let I=f;for(let E=0;E0||E+1!==this.arity.leading.length)&&(wZ(t,N,$y.EndOfInput,bC.ErrorNode,["setError","Not enough positional arguments"]),wZ(t,N,$y.EndOfPartialInput,bC.SuccessNode,["setPartialIndex",this.cliIndex])),zN(t,I,"isNotOptionLike",N,"pushPositional"),I=N}let C=I;if(this.arity.extra===ZO||this.arity.extra.length>0){let E=uX(t,FO());if(ZSe(t,I,E),this.arity.extra===ZO){let N=uX(t,FO());this.arity.proxy||this.registerOptions(t,N),zN(t,I,o,N,"pushExtraNoLimits"),zN(t,N,o,N,"pushExtraNoLimits"),ZSe(t,N,E)}else for(let N=0;N0)&&this.registerOptions(t,B),zN(t,C,o,B,"pushExtra"),ZSe(t,B,E),C=B}C=E}this.arity.trailing.length>0&&(wZ(t,C,$y.EndOfInput,bC.ErrorNode,["setError","Not enough positional arguments"]),wZ(t,C,$y.EndOfPartialInput,bC.SuccessNode,["setPartialIndex",this.cliIndex]));let b=C;for(let E=0;E=0&&t{let l=o?$y.EndOfPartialInput:$y.EndOfInput;return tjs(n,a,{endToken:l})}}}}});import O6t from"tty";function tbn(){return O6t&&"getColorDepth"in O6t.WriteStream.prototype?O6t.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function rbn(e){let t=ebn;if(typeof t>"u"){if(e.stdout===process.stdout&&e.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=Et("async_hooks");t=ebn=new r;let n=process.stdout._write;process.stdout._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?n.call(this,o,l,A):f.stdout.write(o,l,A)};let a=process.stderr._write;process.stderr._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?a.call(this,o,l,A):f.stderr.write(o,l,A)}}return r=>t.run(e,r)}var ebn,nbn=bc(()=>{});var Ect,ibn=bc(()=>{goe();Ect=class e extends Kb{constructor(t){super(),this.contexts=t,this.commands=[]}static from(t,r){let n=new e(r);n.path=t.path;for(let a of t.options)switch(a.name){case"-c":n.commands.push(Number(a.value));break;case"-i":n.index=Number(a.value);break}return n}async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: `),this.context.stdout.write(` `);let r=0;for(let n of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[n].commandClass,{prefix:`${r++}. `.padStart(5)}));this.context.stdout.write(` `),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}}});async function tbn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=nbn(e);return Rfe.from(r,t).runExit(n,a)}async function rbn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=nbn(e);return Rfe.from(r,t).run(n,a)}function nbn(e){let t,r,n,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(n=process.argv.slice(2)),e.length){case 1:r=e[0];break;case 2:e[0]&&e[0].prototype instanceof Ub||Array.isArray(e[0])?(r=e[0],Array.isArray(e[1])?n=e[1]:a=e[1]):(t=e[0],r=e[1]);break;case 3:Array.isArray(e[2])?(t=e[0],r=e[1],n=e[2]):e[0]&&e[0].prototype instanceof Ub||Array.isArray(e[0])?(r=e[0],n=e[1],a=e[2]):(t=e[0],r=e[1],a=e[2]);break;default:t=e[0],r=e[1],n=e[2],a=e[3];break}if(typeof n>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}}function ebn(e){return e()}var $yn,Rfe,ibn=bc(()=>{pct();Ect();x6t();zyn();uoe();qyn();$yn=Symbol("clipanion/errorCommand");Rfe=class e{constructor({binaryLabel:t,binaryName:r="...",binaryVersion:n,enableCapture:a=!1,enableColors:o}={}){this.registrations=new Map,this.builder=new bct({binaryName:r}),this.binaryLabel=t,this.binaryName=r,this.binaryVersion=n,this.enableCapture=a,this.enableColors=o}static from(t,r={}){let n=new e(r),a=Array.isArray(t)?t:[t];for(let o of a)n.register(o);return n}register(t){var r;let n=new Map,a=new t;for(let f in a){let I=a[f];typeof I=="object"&&I!==null&&I[Ub.isOption]&&n.set(f,I)}let o=this.builder.command(),l=o.cliIndex,A=(r=t.paths)!==null&&r!==void 0?r:a.paths;if(typeof A<"u")for(let f of A)o.addPath(f);this.registrations.set(t,{specs:n,builder:o,index:l});for(let[f,{definition:I}]of n.entries())I(o,f);o.setContext({commandClass:t})}process(t,r){let{input:n,context:a,partial:o}=typeof t=="object"&&Array.isArray(t)?{input:t,context:r}:t,{contexts:l,process:A}=this.builder.compile(),f=A(n,{partial:o}),I={...e.defaultContext,...a};switch(f.selectedIndex){case Bfe:{let C=Sct.from(f,l);return C.context=I,C.tokens=f.tokens,C}default:{let{commandClass:C}=l[f.selectedIndex],b=this.registrations.get(C);if(typeof b>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let E=new C;E.context=I,E.tokens=f.tokens,E.path=f.path;try{for(let[N,{transformer:B}]of b.specs.entries())E[N]=B(b.builder,N,f,I);return E}catch(N){throw N[$yn]=E,N}}break}}async run(t,r){var n,a;let o,l={...e.defaultContext,...r},A=(n=this.enableColors)!==null&&n!==void 0?n:l.colorDepth>1;if(!Array.isArray(t))o=t;else try{o=this.process(t,l)}catch(C){return l.stdout.write(this.error(C,{colored:A})),1}if(o.help)return l.stdout.write(this.usage(o,{colored:A,detailed:!0})),0;o.context=l,o.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:C=>this.definition(C),error:(C,b)=>this.error(C,b),format:C=>this.format(C),process:(C,b)=>this.process(C,{...l,...b}),run:(C,b)=>this.run(C,{...l,...b}),usage:(C,b)=>this.usage(C,b)};let f=this.enableCapture&&(a=jyn(l))!==null&&a!==void 0?a:ebn,I;try{I=await f(()=>o.validateAndExecute().catch(C=>o.catch(C).then(()=>0)))}catch(C){return l.stdout.write(this.error(C,{colored:A,command:o})),1}return I}async runExit(t,r){process.exitCode=await this.run(t,r)}definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:n}=this.getUsageByRegistration(t,{detailed:!1}),{usage:a,options:o}=this.getUsageByRegistration(t,{detailed:!0,inlineOptions:!1}),l=typeof t.usage.category<"u"?O9(t.usage.category,{format:this.format(r),paragraphs:!1}):void 0,A=typeof t.usage.description<"u"?O9(t.usage.description,{format:this.format(r),paragraphs:!1}):void 0,f=typeof t.usage.details<"u"?O9(t.usage.details,{format:this.format(r),paragraphs:!0}):void 0,I=typeof t.usage.examples<"u"?t.usage.examples.map(([C,b])=>[O9(C,{format:this.format(r),paragraphs:!1}),b.replace(/\$0/g,this.binaryName)]):void 0;return{path:n,usage:a,category:l,description:A,details:f,examples:I,options:o}}definitions({colored:t=!1}={}){let r=[];for(let n of this.registrations.keys()){let a=this.definition(n,{colored:t});a&&r.push(a)}return r}usage(t=null,{colored:r,detailed:n=!1,prefix:a="$ "}={}){var o;if(t===null){for(let f of this.registrations.keys()){let I=f.paths,C=typeof f.usage<"u";if(!I||I.length===0||I.length===1&&I[0].length===0||((o=I?.some(N=>N.length===0))!==null&&o!==void 0?o:!1))if(t){t=null;break}else t=f;else if(C){t=null;continue}}t&&(n=!0)}let l=t!==null&&t instanceof Ub?t.constructor:t,A="";if(l)if(n){let{description:f="",details:I="",examples:C=[]}=l.usage||{};f!==""&&(A+=O9(f,{format:this.format(r),paragraphs:!1}).replace(/^./,N=>N.toUpperCase()),A+=` +`)}}}});async function abn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=lbn(e);return Nfe.from(r,t).runExit(n,a)}async function cbn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=lbn(e);return Nfe.from(r,t).run(n,a)}function lbn(e){let t,r,n,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(n=process.argv.slice(2)),e.length){case 1:r=e[0];break;case 2:e[0]&&e[0].prototype instanceof Kb||Array.isArray(e[0])?(r=e[0],Array.isArray(e[1])?n=e[1]:a=e[1]):(t=e[0],r=e[1]);break;case 3:Array.isArray(e[2])?(t=e[0],r=e[1],n=e[2]):e[0]&&e[0].prototype instanceof Kb||Array.isArray(e[0])?(r=e[0],n=e[1],a=e[2]):(t=e[0],r=e[1],a=e[2]);break;default:t=e[0],r=e[1],n=e[2],a=e[3];break}if(typeof n>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}}function obn(e){return e()}var sbn,Nfe,ubn=bc(()=>{dct();bct();x6t();nbn();goe();ibn();sbn=Symbol("clipanion/errorCommand");Nfe=class e{constructor({binaryLabel:t,binaryName:r="...",binaryVersion:n,enableCapture:a=!1,enableColors:o}={}){this.registrations=new Map,this.builder=new yct({binaryName:r}),this.binaryLabel=t,this.binaryName=r,this.binaryVersion=n,this.enableCapture=a,this.enableColors=o}static from(t,r={}){let n=new e(r),a=Array.isArray(t)?t:[t];for(let o of a)n.register(o);return n}register(t){var r;let n=new Map,a=new t;for(let f in a){let I=a[f];typeof I=="object"&&I!==null&&I[Kb.isOption]&&n.set(f,I)}let o=this.builder.command(),l=o.cliIndex,A=(r=t.paths)!==null&&r!==void 0?r:a.paths;if(typeof A<"u")for(let f of A)o.addPath(f);this.registrations.set(t,{specs:n,builder:o,index:l});for(let[f,{definition:I}]of n.entries())I(o,f);o.setContext({commandClass:t})}process(t,r){let{input:n,context:a,partial:o}=typeof t=="object"&&Array.isArray(t)?{input:t,context:r}:t,{contexts:l,process:A}=this.builder.compile(),f=A(n,{partial:o}),I={...e.defaultContext,...a};switch(f.selectedIndex){case wfe:{let C=Ect.from(f,l);return C.context=I,C.tokens=f.tokens,C}default:{let{commandClass:C}=l[f.selectedIndex],b=this.registrations.get(C);if(typeof b>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let E=new C;E.context=I,E.tokens=f.tokens,E.path=f.path;try{for(let[N,{transformer:B}]of b.specs.entries())E[N]=B(b.builder,N,f,I);return E}catch(N){throw N[sbn]=E,N}}break}}async run(t,r){var n,a;let o,l={...e.defaultContext,...r},A=(n=this.enableColors)!==null&&n!==void 0?n:l.colorDepth>1;if(!Array.isArray(t))o=t;else try{o=this.process(t,l)}catch(C){return l.stdout.write(this.error(C,{colored:A})),1}if(o.help)return l.stdout.write(this.usage(o,{colored:A,detailed:!0})),0;o.context=l,o.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:C=>this.definition(C),error:(C,b)=>this.error(C,b),format:C=>this.format(C),process:(C,b)=>this.process(C,{...l,...b}),run:(C,b)=>this.run(C,{...l,...b}),usage:(C,b)=>this.usage(C,b)};let f=this.enableCapture&&(a=rbn(l))!==null&&a!==void 0?a:obn,I;try{I=await f(()=>o.validateAndExecute().catch(C=>o.catch(C).then(()=>0)))}catch(C){return l.stdout.write(this.error(C,{colored:A,command:o})),1}return I}async runExit(t,r){process.exitCode=await this.run(t,r)}definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:n}=this.getUsageByRegistration(t,{detailed:!1}),{usage:a,options:o}=this.getUsageByRegistration(t,{detailed:!0,inlineOptions:!1}),l=typeof t.usage.category<"u"?P9(t.usage.category,{format:this.format(r),paragraphs:!1}):void 0,A=typeof t.usage.description<"u"?P9(t.usage.description,{format:this.format(r),paragraphs:!1}):void 0,f=typeof t.usage.details<"u"?P9(t.usage.details,{format:this.format(r),paragraphs:!0}):void 0,I=typeof t.usage.examples<"u"?t.usage.examples.map(([C,b])=>[P9(C,{format:this.format(r),paragraphs:!1}),b.replace(/\$0/g,this.binaryName)]):void 0;return{path:n,usage:a,category:l,description:A,details:f,examples:I,options:o}}definitions({colored:t=!1}={}){let r=[];for(let n of this.registrations.keys()){let a=this.definition(n,{colored:t});a&&r.push(a)}return r}usage(t=null,{colored:r,detailed:n=!1,prefix:a="$ "}={}){var o;if(t===null){for(let f of this.registrations.keys()){let I=f.paths,C=typeof f.usage<"u";if(!I||I.length===0||I.length===1&&I[0].length===0||((o=I?.some(N=>N.length===0))!==null&&o!==void 0?o:!1))if(t){t=null;break}else t=f;else if(C){t=null;continue}}t&&(n=!0)}let l=t!==null&&t instanceof Kb?t.constructor:t,A="";if(l)if(n){let{description:f="",details:I="",examples:C=[]}=l.usage||{};f!==""&&(A+=P9(f,{format:this.format(r),paragraphs:!1}).replace(/^./,N=>N.toUpperCase()),A+=` `),(I!==""||C.length>0)&&(A+=`${this.format(r).header("Usage")} `,A+=` `);let{usage:b,options:E}=this.getUsageByRegistration(l,{inlineOptions:!1});if(A+=`${this.format(r).bold(a)}${b} `,E.length>0){A+=` `,A+=`${this.format(r).header("Options")} `;let N=E.reduce((B,F)=>Math.max(B,F.definition.length),0);A+=` -`;for(let{definition:B,description:F}of E)A+=` ${this.format(r).bold(B.padEnd(N))} ${O9(F,{format:this.format(r),paragraphs:!1})}`}if(I!==""&&(A+=` +`;for(let{definition:B,description:F}of E)A+=` ${this.format(r).bold(B.padEnd(N))} ${P9(F,{format:this.format(r),paragraphs:!1})}`}if(I!==""&&(A+=` `,A+=`${this.format(r).header("Details")} `,A+=` -`,A+=O9(I,{format:this.format(r),paragraphs:!0})),C.length>0){A+=` +`,A+=P9(I,{format:this.format(r),paragraphs:!0})),C.length>0){A+=` `,A+=`${this.format(r).header("Examples")} `;for(let[N,B]of C)A+=` -`,A+=O9(N,{format:this.format(r),paragraphs:!1}),A+=`${B.replace(/^/m,` ${this.format(r).bold(a)}`).replace(/\$0/g,this.binaryName)} +`,A+=P9(N,{format:this.format(r),paragraphs:!1}),A+=`${B.replace(/^/m,` ${this.format(r).bold(a)}`).replace(/\$0/g,this.binaryName)} `}}else{let{usage:f}=this.getUsageByRegistration(l);A+=`${this.format(r).bold(a)}${f} -`}else{let f=new Map;for(let[E,{index:N}]of this.registrations.entries()){if(typeof E.usage>"u")continue;let B=typeof E.usage.category<"u"?O9(E.usage.category,{format:this.format(r),paragraphs:!1}):null,F=f.get(B);typeof F>"u"&&f.set(B,F=[]);let{usage:Q}=this.getUsageByIndex(N);F.push({commandClass:E,usage:Q})}let I=Array.from(f.keys()).sort((E,N)=>E===null?-1:N===null?1:E.localeCompare(N,"en",{usage:"sort",caseFirst:"upper"})),C=typeof this.binaryLabel<"u",b=typeof this.binaryVersion<"u";C||b?(C&&b?A+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} +`}else{let f=new Map;for(let[E,{index:N}]of this.registrations.entries()){if(typeof E.usage>"u")continue;let B=typeof E.usage.category<"u"?P9(E.usage.category,{format:this.format(r),paragraphs:!1}):null,F=f.get(B);typeof F>"u"&&f.set(B,F=[]);let{usage:Q}=this.getUsageByIndex(N);F.push({commandClass:E,usage:Q})}let I=Array.from(f.keys()).sort((E,N)=>E===null?-1:N===null?1:E.localeCompare(N,"en",{usage:"sort",caseFirst:"upper"})),C=typeof this.binaryLabel<"u",b=typeof this.binaryVersion<"u";C||b?(C&&b?A+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} `:C?A+=`${this.format(r).header(`${this.binaryLabel}`)} `:A+=`${this.format(r).header(`${this.binaryVersion}`)} @@ -83,87 +83,87 @@ ${t.map(r=>` `,A+=`${this.format(r).header(`${B}`)} `;for(let{commandClass:F,usage:Q}of N){let J=F.usage.description||"undocumented";A+=` `,A+=` ${this.format(r).bold(Q)} -`,A+=` ${O9(J,{format:this.format(r),paragraphs:!1})}`}}A+=` -`,A+=O9("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return A}error(t,r){var n,{colored:a,command:o=(n=t[$yn])!==null&&n!==void 0?n:null}=r===void 0?{}:r;(!t||typeof t!="object"||!("stack"in t))&&(t=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(t)})`));let l="",A=t.name.replace(/([a-z])([A-Z])/g,"$1 $2");A==="Error"&&(A="Internal Error"),l+=`${this.format(a).error(A)}: ${t.message} +`,A+=` ${P9(J,{format:this.format(r),paragraphs:!1})}`}}A+=` +`,A+=P9("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return A}error(t,r){var n,{colored:a,command:o=(n=t[sbn])!==null&&n!==void 0?n:null}=r===void 0?{}:r;(!t||typeof t!="object"||!("stack"in t))&&(t=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(t)})`));let l="",A=t.name.replace(/([a-z])([A-Z])/g,"$1 $2");A==="Error"&&(A="Internal Error"),l+=`${this.format(a).error(A)}: ${t.message} `;let f=t.clipanion;return typeof f<"u"?f.type==="usage"&&(l+=` `,l+=this.usage(o)):t.stack&&(l+=`${t.stack.replace(/^.*\n/,"")} -`),l}format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.defaultContext.colorDepth>1)?Fyn:Zyn}getUsageByRegistration(t,r){let n=this.registrations.get(t);if(typeof n>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(n.index,r)}getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}};Rfe.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:Kyn()}});var g3e,sbn=bc(()=>{uoe();g3e=class extends Ub{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};g3e.paths=[["--clipanion=definitions"]]});var A3e,obn=bc(()=>{uoe();A3e=class extends Ub{async execute(){this.context.stdout.write(this.cli.usage())}};A3e.paths=[["-h"],["--help"]]});function vct(e={}){return EZ({definition(t,r){var n;t.addProxy({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){return n.positionals.map(({value:a})=>a)}})}var P6t=bc(()=>{r$()});var d3e,abn=bc(()=>{uoe();P6t();d3e=class extends Ub{constructor(){super(...arguments),this.args=vct()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} -`)}};d3e.paths=[["--clipanion=tokens"]]});var p3e,cbn=bc(()=>{uoe();p3e=class extends Ub{async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVersion)!==null&&t!==void 0?t:""} -`)}};p3e.paths=[["-v"],["--version"]]});var M6t={};Uf(M6t,{DefinitionsCommand:()=>g3e,HelpCommand:()=>A3e,TokensCommand:()=>d3e,VersionCommand:()=>p3e});var lbn=bc(()=>{sbn();obn();abn();cbn()});function ubn(e,t,r){let[n,a]=UK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return EZ({definition(f){f.addOption({names:l,arity:o,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(f,I,C){let b,E=typeof n<"u"?[...n]:void 0;for(let{name:N,value:B}of C.options)A.has(N)&&(b=N,E=E??[],E.push(B));return typeof E<"u"?Tfe(b??I,E,a.validator):E}})}var gbn=bc(()=>{r$()});function Abn(e,t,r){let[n,a]=UK(t,r??{}),o=e.split(","),l=new Set(o);return EZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C=E);return C}})}var dbn=bc(()=>{r$()});function pbn(e,t,r){let[n,a]=UK(t,r??{}),o=e.split(","),l=new Set(o);return EZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C??(C=0),E?C+=1:C=0);return C}})}var fbn=bc(()=>{r$()});function Ibn(e={}){return EZ({definition(t,r){var n;t.addRest({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){let a=l=>{let A=n.positionals[l];return A.extra===FO||A.extra===!1&&ll)}})}var hbn=bc(()=>{Ect();r$()});function ojs(e,t,r){let[n,a]=UK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return EZ({definition(f){f.addOption({names:l,arity:a.tolerateBoolean?0:o,hidden:a.hidden,description:a.description,required:a.required})},transformer(f,I,C,b){let E,N=n;typeof a.env<"u"&&b.env[a.env]&&(E=a.env,N=b.env[a.env]);for(let{name:B,value:F}of C.options)A.has(B)&&(E=B,N=F);return typeof N=="string"?Tfe(E??I,N,a.validator):N}})}function ajs(e={}){let{required:t=!0}=e;return EZ({definition(r,n){var a;r.addPositional({name:(a=e.name)!==null&&a!==void 0?a:n,required:e.required})},transformer(r,n,a){var o;for(let l=0;l{Ect();r$()});var vA={};Uf(vA,{Array:()=>ubn,Boolean:()=>Abn,Counter:()=>pbn,Proxy:()=>vct,Rest:()=>Ibn,String:()=>mbn,applyValidator:()=>Tfe,cleanValidationError:()=>hct,formatError:()=>c3e,isOptionSymbol:()=>a3e,makeCommandOption:()=>EZ,rerouteArguments:()=>UK});var _bn=bc(()=>{r$();P6t();gbn();dbn();fbn();hbn();Cbn()});var ng={};Uf(ng,{Builtins:()=>M6t,Cli:()=>Rfe,Command:()=>Ub,Option:()=>vA,UsageError:()=>wfe,formatMarkdownish:()=>O9,run:()=>rbn,runExit:()=>tbn});var Rl=bc(()=>{Ict();x6t();uoe();ibn();lbn();_bn()});var ybn=H(Bct=>{"use strict";Object.defineProperty(Bct,"__esModule",{value:!0});Bct.BaseCommand=void 0;var H6t=(Rl(),vi(ng)),Y6t=class extends H6t.Command{constructor(){super(...arguments),this.cwd=H6t.Option.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new H6t.UsageError("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};Bct.BaseCommand=Y6t});var Va={};Uf(Va,{__addDisposableResource:()=>Xbn,__assign:()=>wct,__asyncDelegator:()=>Vbn,__asyncGenerator:()=>Lbn,__asyncValues:()=>Wbn,__await:()=>LSe,__awaiter:()=>Dbn,__classPrivateFieldGet:()=>Hbn,__classPrivateFieldIn:()=>Qbn,__classPrivateFieldSet:()=>Ybn,__createBinding:()=>Rct,__decorate:()=>Sbn,__disposeResources:()=>Jbn,__esDecorate:()=>Bbn,__exportStar:()=>xbn,__extends:()=>bbn,__generator:()=>kbn,__importDefault:()=>Mbn,__importStar:()=>Pbn,__makeTemplateObject:()=>Obn,__metadata:()=>Nbn,__param:()=>vbn,__propKey:()=>Tbn,__read:()=>J6t,__rest:()=>Ebn,__rewriteRelativeImportExtension:()=>Ubn,__runInitializers:()=>wbn,__setFunctionName:()=>Rbn,__spread:()=>Gbn,__spreadArray:()=>Zbn,__spreadArrays:()=>Fbn,__values:()=>Tct,default:()=>ujs});function bbn(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Q6t(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function Ebn(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function vbn(e,t){return function(r,n){t(r,n,e)}}function Bbn(e,t,r,n,a,o){function l(J){if(J!==void 0&&typeof J!="function")throw new TypeError("Function expected");return J}for(var A=n.kind,f=A==="getter"?"get":A==="setter"?"set":"value",I=!t&&e?n.static?e:e.prototype:null,C=t||(I?Object.getOwnPropertyDescriptor(I,n.name):{}),b,E=!1,N=r.length-1;N>=0;N--){var B={};for(var F in n)B[F]=F==="access"?{}:n[F];for(var F in n.access)B.access[F]=n.access[F];B.addInitializer=function(J){if(E)throw new TypeError("Cannot add initializers after decoration has completed");o.push(l(J||null))};var Q=(0,r[N])(A==="accessor"?{get:C.get,set:C.set}:C[f],B);if(A==="accessor"){if(Q===void 0)continue;if(Q===null||typeof Q!="object")throw new TypeError("Object expected");(b=l(Q.get))&&(C.get=b),(b=l(Q.set))&&(C.set=b),(b=l(Q.init))&&a.unshift(b)}else(b=l(Q))&&(A==="field"?a.unshift(b):C[f]=b)}I&&Object.defineProperty(I,n.name,C),E=!0}function wbn(e,t,r){for(var n=arguments.length>2,a=0;a0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function J6t(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o}function Gbn(){for(var e=[],t=0;t1||f(N,F)})},B&&(a[N]=B(a[N])))}function f(N,B){try{I(n[N](B))}catch(F){E(o[0][3],F)}}function I(N){N.value instanceof LSe?Promise.resolve(N.value.v).then(C,b):E(o[0][2],N)}function C(N){f("next",N)}function b(N){f("throw",N)}function E(N,B){N(B),o.shift(),o.length&&f(o[0][0],o[0][1])}}function Vbn(e){var t,r;return t={},n("next"),n("throw",function(a){throw a}),n("return"),t[Symbol.iterator]=function(){return this},t;function n(a,o){t[a]=e[a]?function(l){return(r=!r)?{value:LSe(e[a](l)),done:!1}:o?o(l):l}:o}}function Wbn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Tct=="function"?Tct(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=e[o]&&function(l){return new Promise(function(A,f){l=e[o](l),a(A,f,l.done,l.value)})}}function a(o,l,A,f){Promise.resolve(f).then(function(I){o({value:I,done:A})},l)}}function Obn(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function Pbn(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=X6t(e),n=0;n{Q6t=function(e,t){return Q6t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(r[a]=n[a])},Q6t(e,t)};wct=function(){return wct=Object.assign||function(t){for(var r,n=1,a=arguments.length;n{"use strict";Object.defineProperty($5,"__esModule",{value:!0});$5.SAFE_TIME=$5.S_IFLNK=$5.S_IFREG=$5.S_IFDIR=$5.S_IFMT=void 0;$5.S_IFMT=61440;$5.S_IFDIR=16384;$5.S_IFREG=32768;$5.S_IFLNK=40960;$5.SAFE_TIME=456789e3});var Dct=H(M9=>{"use strict";Object.defineProperty(M9,"__esModule",{value:!0});M9.EBUSY=gjs;M9.ENOSYS=Ajs;M9.EINVAL=djs;M9.EBADF=pjs;M9.ENOENT=fjs;M9.ENOTDIR=Ijs;M9.EISDIR=hjs;M9.EEXIST=mjs;M9.EROFS=Cjs;M9.ENOTEMPTY=_js;M9.EOPNOTSUPP=yjs;M9.ERR_DIR_CLOSED=bjs;function eM(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function gjs(e){return eM("EBUSY",e)}function Ajs(e,t){return eM("ENOSYS",`${e}, ${t}`)}function djs(e){return eM("EINVAL",`invalid argument, ${e}`)}function pjs(e){return eM("EBADF",`bad file descriptor, ${e}`)}function fjs(e){return eM("ENOENT",`no such file or directory, ${e}`)}function Ijs(e){return eM("ENOTDIR",`not a directory, ${e}`)}function hjs(e){return eM("EISDIR",`illegal operation on a directory, ${e}`)}function mjs(e){return eM("EEXIST",`file already exists, ${e}`)}function Cjs(e){return eM("EROFS",`read-only filesystem, ${e}`)}function _js(e){return eM("ENOTEMPTY",`directory not empty, ${e}`)}function yjs(e){return eM("EOPNOTSUPP",`operation not supported, ${e}`)}function bjs(){return eM("ERR_DIR_CLOSED","Directory handle was closed")}});var K6t=H(wk=>{"use strict";Object.defineProperty(wk,"__esModule",{value:!0});wk.BigIntStatsEntry=wk.StatEntry=wk.DirEntry=wk.DEFAULT_MODE=void 0;wk.makeDefaultStats=jbn;wk.makeEmptyStats=Sjs;wk.clearStats=zbn;wk.convertToBigIntStats=vjs;wk.areStatsEqual=Bjs;var Ejs=(Wa(),vi(Va)),Kbn=Ejs.__importStar(Et("util")),wR=Nct();wk.DEFAULT_MODE=wR.S_IFREG|420;var U6t=class{constructor(){this.name="",this.path="",this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&wR.S_IFMT)===wR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&wR.S_IFMT)===wR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&wR.S_IFMT)===wR.S_IFLNK}};wk.DirEntry=U6t;var kct=class{constructor(){this.uid=0,this.gid=0,this.size=0,this.blksize=0,this.atimeMs=0,this.mtimeMs=0,this.ctimeMs=0,this.birthtimeMs=0,this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=0,this.ino=0,this.mode=wk.DEFAULT_MODE,this.nlink=1,this.rdev=0,this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&wR.S_IFMT)===wR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&wR.S_IFMT)===wR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&wR.S_IFMT)===wR.S_IFLNK}};wk.StatEntry=kct;var xct=class{constructor(){this.uid=BigInt(0),this.gid=BigInt(0),this.size=BigInt(0),this.blksize=BigInt(0),this.atimeMs=BigInt(0),this.mtimeMs=BigInt(0),this.ctimeMs=BigInt(0),this.birthtimeMs=BigInt(0),this.atimeNs=BigInt(0),this.mtimeNs=BigInt(0),this.ctimeNs=BigInt(0),this.birthtimeNs=BigInt(0),this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=BigInt(0),this.ino=BigInt(0),this.mode=BigInt(wk.DEFAULT_MODE),this.nlink=BigInt(1),this.rdev=BigInt(0),this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(wR.S_IFMT))===BigInt(wR.S_IFDIR)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(wR.S_IFMT))===BigInt(wR.S_IFREG)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(wR.S_IFMT))===BigInt(wR.S_IFLNK)}};wk.BigIntStatsEntry=xct;function jbn(){return new kct}function Sjs(){return zbn(jbn())}function zbn(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):Kbn.types.isDate(r)&&(e[t]=new Date(0))}return e}function vjs(e){let t=new xct;for(let r in e)if(Object.hasOwn(e,r)){let n=e[r];typeof n=="number"?t[r]=BigInt(Math.floor(n)):Kbn.types.isDate(n)&&(t[r]=new Date(n))}return t.atimeNs=t.atimeMs*BigInt(1e6)+BigInt(Math.floor(e.atimeMs%1*1e3))*BigInt(1e3),t.mtimeNs=t.mtimeMs*BigInt(1e6)+BigInt(Math.floor(e.mtimeMs%1*1e3))*BigInt(1e3),t.ctimeNs=t.ctimeMs*BigInt(1e6)+BigInt(Math.floor(e.ctimeMs%1*1e3))*BigInt(1e3),t.birthtimeNs=t.birthtimeMs*BigInt(1e6)+BigInt(Math.floor(e.birthtimeMs%1*1e3))*BigInt(1e3),t}function Bjs(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,n=t;return!(r.atimeNs!==n.atimeNs||r.mtimeNs!==n.mtimeNs||r.ctimeNs!==n.ctimeNs||r.birthtimeNs!==n.birthtimeNs)}});var H9=H(NS=>{"use strict";Object.defineProperty(NS,"__esModule",{value:!0});NS.ppath=NS.npath=NS.Filename=NS.PortablePath=void 0;NS.convertPath=Gjs;var wjs=(Wa(),vi(Va)),Gct=wjs.__importDefault(Et("path")),qbn;(function(e){e[e.File=0]="File",e[e.Portable=1]="Portable",e[e.Native=2]="Native"})(qbn||(qbn={}));NS.PortablePath={root:"/",dot:".",parent:".."};NS.Filename={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"};NS.npath=Object.create(Gct.default);NS.ppath=Object.create(Gct.default.posix);NS.npath.cwd=()=>process.cwd();NS.ppath.cwd=process.platform==="win32"?()=>j6t(process.cwd()):process.cwd;process.platform==="win32"&&(NS.ppath.resolve=(...e)=>e.length>0&&NS.ppath.isAbsolute(e[0])?Gct.default.posix.resolve(...e):Gct.default.posix.resolve(NS.ppath.cwd(),...e));var $bn=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};NS.npath.contains=(e,t)=>$bn(NS.npath,e,t);NS.ppath.contains=(e,t)=>$bn(NS.ppath,e,t);var Tjs=/^([a-zA-Z]:.*)$/,Rjs=/^\/\/(\.\/)?(.*)$/,Njs=/^\/([a-zA-Z]:.*)$/,Djs=/^\/unc\/(\.dot\/)?(.*)$/;function kjs(e){let t,r;if(t=e.match(Njs))e=t[1];else if(r=e.match(Djs))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function xjs(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(Tjs))?e=`/${t[1]}`:(r=e.match(Rjs))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var j6t=process.platform==="win32"?xjs:e=>e,eEn=process.platform==="win32"?kjs:e=>e;NS.npath.fromPortablePath=eEn;NS.npath.toPortablePath=j6t;function Gjs(e,t){return e===NS.npath?eEn(t):j6t(t)}});var q6t=H(Fct=>{"use strict";Object.defineProperty(Fct,"__esModule",{value:!0});Fct.setupCopyIndex=Wjs;Fct.copyPromise=Ojs;var Fjs=(Wa(),vi(Va)),Zjs=Fjs.__importStar(Nct()),Ljs=H9(),Nfe=new Date(Zjs.SAFE_TIME*1e3),Vjs=Nfe.getTime();async function Wjs(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let n=[];for(let a of r)for(let o of r)n.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${o}`),{recursive:!0}));return await Promise.all(n),t.indexPath}async function Ojs(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:Nfe,mtime:Nfe}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await z6t(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function z6t(e,t,r,n,a,o,l){let A=l.didParentExist?await tEn(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:Nfe,mtime:Nfe}:f,b;switch(!0){case f.isDirectory():b=await Pjs(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await Yjs(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await Qjs(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function tEn(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function Pjs(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await z6t(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await z6t(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function Mjs(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(function(ce){ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=F.Rename,J=await tEn(r,B);if(a){let ce=J&&a.dev===J.dev&&a.ino===J.ino,fe=J?.mtimeMs!==Vjs;if(ce&&fe&&I.autoRepair&&(Q=F.Lock,J=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!J&&Q===F.Rename?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!J&&(Q===F.Lock&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===F.Rename&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{J||(await r.lutimesPromise(B,Nfe,Nfe),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function Hjs(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function Yjs(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?Mjs(e,t,r,n,a,o,l,A,f,f.linkStrategy):Hjs(e,t,r,n,a,o,l,A,f)}async function Qjs(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise((0,Ljs.convertPath)(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}});var rEn=H(f3e=>{"use strict";Object.defineProperty(f3e,"__esModule",{value:!0});f3e.CustomDir=void 0;f3e.opendir=Ujs;var Xjs=(Wa(),vi(Va)),Jjs=Xjs.__importStar(Dct()),Zct=class{constructor(t,r,n={}){this.path=t,this.nextDirent=r,this.opts=n,this.closed=!1}throwIfClosed(){if(this.closed)throw Jjs.ERR_DIR_CLOSED()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}};f3e.CustomDir=Zct;function Ujs(e,t,r,n){let a=()=>{let o=r.shift();if(typeof o>"u")return null;let l=e.pathUtils.join(t,o);return Object.assign(e.statSync(l),{name:o,path:void 0})};return new Zct(t,a,n)}});var nEn=H(n$=>{"use strict";Object.defineProperty(n$,"__esModule",{value:!0});n$.CustomStatWatcher=n$.Status=n$.Event=void 0;n$.assertStatus=$6t;var Kjs=(Wa(),vi(Va)),jjs=Et("events"),Lct=Kjs.__importStar(K6t()),Dfe;(function(e){e.Change="change",e.Stop="stop"})(Dfe||(n$.Event=Dfe={}));var kfe;(function(e){e.Ready="ready",e.Running="running",e.Stopped="stopped"})(kfe||(n$.Status=kfe={}));function $6t(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var ejt=class e extends jjs.EventEmitter{static create(t,r,n){let a=new e(t,r,n);return a.start(),a}constructor(t,r,{bigint:n=!1}={}){super(),this.status=kfe.Ready,this.changeListeners=new Map,this.startTimeout=null,this.fakeFs=t,this.path=r,this.bigint=n,this.lastStats=this.stat()}start(){$6t(this.status,kfe.Ready),this.status=kfe.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(Dfe.Change,this.lastStats,this.lastStats)},3)}stop(){$6t(this.status,kfe.Running),this.status=kfe.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(Dfe.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let t=this.bigint?new Lct.BigIntStatsEntry:new Lct.StatEntry;return Lct.clearStats(t)}}makeInterval(t){let r=setInterval(()=>{let n=this.stat(),a=this.lastStats;Lct.areStatsEqual(n,a)||(this.lastStats=n,this.emit(Dfe.Change,n,a))},t.interval);return t.persistent?r:r.unref()}registerChangeListener(t,r){this.addListener(Dfe.Change,t),this.changeListeners.set(t,this.makeInterval(r))}unregisterChangeListener(t){this.removeListener(Dfe.Change,t);let r=this.changeListeners.get(t);typeof r<"u"&&clearInterval(r),this.changeListeners.delete(t)}unregisterAllChangeListeners(){for(let t of this.changeListeners.keys())this.unregisterChangeListener(t)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let t of this.changeListeners.values())t.ref();return this}unref(){for(let t of this.changeListeners.values())t.unref();return this}};n$.CustomStatWatcher=ejt});var tjt=H(I3e=>{"use strict";Object.defineProperty(I3e,"__esModule",{value:!0});I3e.watchFile=qjs;I3e.unwatchFile=iEn;I3e.unwatchAllFiles=$js;var zjs=nEn(),Vct=new WeakMap;function qjs(e,t,r,n){let a,o,l,A;switch(typeof r){case"function":a=!1,o=!0,l=5007,A=r;break;default:({bigint:a=!1,persistent:o=!0,interval:l=5007}=r),A=n;break}let f=Vct.get(e);typeof f>"u"&&Vct.set(e,f=new Map);let I=f.get(t);return typeof I>"u"&&(I=zjs.CustomStatWatcher.create(e,t,{bigint:a}),f.set(t,I)),I.registerChangeListener(A,{persistent:o,interval:l}),I}function iEn(e,t,r){let n=Vct.get(e);if(typeof n>"u")return;let a=n.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),n.delete(t)))}function $js(e){let t=Vct.get(e);if(!(typeof t>"u"))for(let r of t.keys())iEn(e,r)}});var Gfe=H(xfe=>{"use strict";Object.defineProperty(xfe,"__esModule",{value:!0});xfe.BasePortableFakeFS=xfe.FakeFS=void 0;xfe.normalizeLineEndings=njt;var e7s=Et("crypto"),t7s=Et("os"),r7s=q6t(),sEn=H9(),Wct=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,e7s.createHash)(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await(0,r7s.copyPromise)(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync((0,sEn.convertPath)(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?njt(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?njt(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} +`),l}format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.defaultContext.colorDepth>1)?Pyn:Myn}getUsageByRegistration(t,r){let n=this.registrations.get(t);if(typeof n>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(n.index,r)}getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}};Nfe.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:tbn()}});var g3e,gbn=bc(()=>{goe();g3e=class extends Kb{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} +`)}};g3e.paths=[["--clipanion=definitions"]]});var A3e,Abn=bc(()=>{goe();A3e=class extends Kb{async execute(){this.context.stdout.write(this.cli.usage())}};A3e.paths=[["-h"],["--help"]]});function Sct(e={}){return SZ({definition(t,r){var n;t.addProxy({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){return n.positionals.map(({value:a})=>a)}})}var P6t=bc(()=>{n$()});var d3e,dbn=bc(()=>{goe();P6t();d3e=class extends Kb{constructor(){super(...arguments),this.args=Sct()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} +`)}};d3e.paths=[["--clipanion=tokens"]]});var p3e,pbn=bc(()=>{goe();p3e=class extends Kb{async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVersion)!==null&&t!==void 0?t:""} +`)}};p3e.paths=[["-v"],["--version"]]});var M6t={};Uf(M6t,{DefinitionsCommand:()=>g3e,HelpCommand:()=>A3e,TokensCommand:()=>d3e,VersionCommand:()=>p3e});var fbn=bc(()=>{gbn();Abn();dbn();pbn()});function Ibn(e,t,r){let[n,a]=KK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return SZ({definition(f){f.addOption({names:l,arity:o,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(f,I,C){let b,E=typeof n<"u"?[...n]:void 0;for(let{name:N,value:B}of C.options)A.has(N)&&(b=N,E=E??[],E.push(B));return typeof E<"u"?Rfe(b??I,E,a.validator):E}})}var hbn=bc(()=>{n$()});function mbn(e,t,r){let[n,a]=KK(t,r??{}),o=e.split(","),l=new Set(o);return SZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C=E);return C}})}var Cbn=bc(()=>{n$()});function _bn(e,t,r){let[n,a]=KK(t,r??{}),o=e.split(","),l=new Set(o);return SZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C??(C=0),E?C+=1:C=0);return C}})}var ybn=bc(()=>{n$()});function bbn(e={}){return SZ({definition(t,r){var n;t.addRest({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){let a=l=>{let A=n.positionals[l];return A.extra===ZO||A.extra===!1&&ll)}})}var Ebn=bc(()=>{bct();n$()});function ajs(e,t,r){let[n,a]=KK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return SZ({definition(f){f.addOption({names:l,arity:a.tolerateBoolean?0:o,hidden:a.hidden,description:a.description,required:a.required})},transformer(f,I,C,b){let E,N=n;typeof a.env<"u"&&b.env[a.env]&&(E=a.env,N=b.env[a.env]);for(let{name:B,value:F}of C.options)A.has(B)&&(E=B,N=F);return typeof N=="string"?Rfe(E??I,N,a.validator):N}})}function cjs(e={}){let{required:t=!0}=e;return SZ({definition(r,n){var a;r.addPositional({name:(a=e.name)!==null&&a!==void 0?a:n,required:e.required})},transformer(r,n,a){var o;for(let l=0;l{bct();n$()});var sA={};Uf(sA,{Array:()=>Ibn,Boolean:()=>mbn,Counter:()=>_bn,Proxy:()=>Sct,Rest:()=>bbn,String:()=>Sbn,applyValidator:()=>Rfe,cleanValidationError:()=>Ict,formatError:()=>c3e,isOptionSymbol:()=>a3e,makeCommandOption:()=>SZ,rerouteArguments:()=>KK});var Bbn=bc(()=>{n$();P6t();hbn();Cbn();ybn();Ebn();vbn()});var ng={};Uf(ng,{Builtins:()=>M6t,Cli:()=>Nfe,Command:()=>Kb,Option:()=>sA,UsageError:()=>Tfe,formatMarkdownish:()=>P9,run:()=>cbn,runExit:()=>abn});var vl=bc(()=>{fct();x6t();goe();ubn();fbn();Bbn()});var wbn=H(vct=>{"use strict";Object.defineProperty(vct,"__esModule",{value:!0});vct.BaseCommand=void 0;var H6t=(vl(),vi(ng)),Y6t=class extends H6t.Command{constructor(){super(...arguments),this.cwd=H6t.Option.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new H6t.UsageError("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};vct.BaseCommand=Y6t});var Va={};Uf(Va,{__addDisposableResource:()=>qbn,__assign:()=>Bct,__asyncDelegator:()=>Ybn,__asyncGenerator:()=>Hbn,__asyncValues:()=>Qbn,__await:()=>LSe,__awaiter:()=>Lbn,__classPrivateFieldGet:()=>Kbn,__classPrivateFieldIn:()=>zbn,__classPrivateFieldSet:()=>jbn,__createBinding:()=>Tct,__decorate:()=>Nbn,__disposeResources:()=>$bn,__esDecorate:()=>kbn,__exportStar:()=>Wbn,__extends:()=>Tbn,__generator:()=>Vbn,__importDefault:()=>Ubn,__importStar:()=>Jbn,__makeTemplateObject:()=>Xbn,__metadata:()=>Zbn,__param:()=>Dbn,__propKey:()=>Gbn,__read:()=>J6t,__rest:()=>Rbn,__rewriteRelativeImportExtension:()=>eEn,__runInitializers:()=>xbn,__setFunctionName:()=>Fbn,__spread:()=>Obn,__spreadArray:()=>Mbn,__spreadArrays:()=>Pbn,__values:()=>wct,default:()=>gjs});function Tbn(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Q6t(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function Rbn(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function Dbn(e,t){return function(r,n){t(r,n,e)}}function kbn(e,t,r,n,a,o){function l(J){if(J!==void 0&&typeof J!="function")throw new TypeError("Function expected");return J}for(var A=n.kind,f=A==="getter"?"get":A==="setter"?"set":"value",I=!t&&e?n.static?e:e.prototype:null,C=t||(I?Object.getOwnPropertyDescriptor(I,n.name):{}),b,E=!1,N=r.length-1;N>=0;N--){var B={};for(var F in n)B[F]=F==="access"?{}:n[F];for(var F in n.access)B.access[F]=n.access[F];B.addInitializer=function(J){if(E)throw new TypeError("Cannot add initializers after decoration has completed");o.push(l(J||null))};var Q=(0,r[N])(A==="accessor"?{get:C.get,set:C.set}:C[f],B);if(A==="accessor"){if(Q===void 0)continue;if(Q===null||typeof Q!="object")throw new TypeError("Object expected");(b=l(Q.get))&&(C.get=b),(b=l(Q.set))&&(C.set=b),(b=l(Q.init))&&a.unshift(b)}else(b=l(Q))&&(A==="field"?a.unshift(b):C[f]=b)}I&&Object.defineProperty(I,n.name,C),E=!0}function xbn(e,t,r){for(var n=arguments.length>2,a=0;a0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function J6t(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o}function Obn(){for(var e=[],t=0;t1||f(N,F)})},B&&(a[N]=B(a[N])))}function f(N,B){try{I(n[N](B))}catch(F){E(o[0][3],F)}}function I(N){N.value instanceof LSe?Promise.resolve(N.value.v).then(C,b):E(o[0][2],N)}function C(N){f("next",N)}function b(N){f("throw",N)}function E(N,B){N(B),o.shift(),o.length&&f(o[0][0],o[0][1])}}function Ybn(e){var t,r;return t={},n("next"),n("throw",function(a){throw a}),n("return"),t[Symbol.iterator]=function(){return this},t;function n(a,o){t[a]=e[a]?function(l){return(r=!r)?{value:LSe(e[a](l)),done:!1}:o?o(l):l}:o}}function Qbn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof wct=="function"?wct(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=e[o]&&function(l){return new Promise(function(A,f){l=e[o](l),a(A,f,l.done,l.value)})}}function a(o,l,A,f){Promise.resolve(f).then(function(I){o({value:I,done:A})},l)}}function Xbn(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function Jbn(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=X6t(e),n=0;n{Q6t=function(e,t){return Q6t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(r[a]=n[a])},Q6t(e,t)};Bct=function(){return Bct=Object.assign||function(t){for(var r,n=1,a=arguments.length;n{"use strict";Object.defineProperty(tM,"__esModule",{value:!0});tM.SAFE_TIME=tM.S_IFLNK=tM.S_IFREG=tM.S_IFDIR=tM.S_IFMT=void 0;tM.S_IFMT=61440;tM.S_IFDIR=16384;tM.S_IFREG=32768;tM.S_IFLNK=40960;tM.SAFE_TIME=456789e3});var Nct=H(H9=>{"use strict";Object.defineProperty(H9,"__esModule",{value:!0});H9.EBUSY=Ajs;H9.ENOSYS=djs;H9.EINVAL=pjs;H9.EBADF=fjs;H9.ENOENT=Ijs;H9.ENOTDIR=hjs;H9.EISDIR=mjs;H9.EEXIST=Cjs;H9.EROFS=_js;H9.ENOTEMPTY=yjs;H9.EOPNOTSUPP=bjs;H9.ERR_DIR_CLOSED=Ejs;function rM(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function Ajs(e){return rM("EBUSY",e)}function djs(e,t){return rM("ENOSYS",`${e}, ${t}`)}function pjs(e){return rM("EINVAL",`invalid argument, ${e}`)}function fjs(e){return rM("EBADF",`bad file descriptor, ${e}`)}function Ijs(e){return rM("ENOENT",`no such file or directory, ${e}`)}function hjs(e){return rM("ENOTDIR",`not a directory, ${e}`)}function mjs(e){return rM("EISDIR",`illegal operation on a directory, ${e}`)}function Cjs(e){return rM("EEXIST",`file already exists, ${e}`)}function _js(e){return rM("EROFS",`read-only filesystem, ${e}`)}function yjs(e){return rM("ENOTEMPTY",`directory not empty, ${e}`)}function bjs(e){return rM("EOPNOTSUPP",`operation not supported, ${e}`)}function Ejs(){return rM("ERR_DIR_CLOSED","Directory handle was closed")}});var K6t=H(Tk=>{"use strict";Object.defineProperty(Tk,"__esModule",{value:!0});Tk.BigIntStatsEntry=Tk.StatEntry=Tk.DirEntry=Tk.DEFAULT_MODE=void 0;Tk.makeDefaultStats=rEn;Tk.makeEmptyStats=vjs;Tk.clearStats=nEn;Tk.convertToBigIntStats=Bjs;Tk.areStatsEqual=wjs;var Sjs=(Wa(),vi(Va)),tEn=Sjs.__importStar(Et("util")),TR=Rct();Tk.DEFAULT_MODE=TR.S_IFREG|420;var U6t=class{constructor(){this.name="",this.path="",this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&TR.S_IFMT)===TR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&TR.S_IFMT)===TR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&TR.S_IFMT)===TR.S_IFLNK}};Tk.DirEntry=U6t;var Dct=class{constructor(){this.uid=0,this.gid=0,this.size=0,this.blksize=0,this.atimeMs=0,this.mtimeMs=0,this.ctimeMs=0,this.birthtimeMs=0,this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=0,this.ino=0,this.mode=Tk.DEFAULT_MODE,this.nlink=1,this.rdev=0,this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&TR.S_IFMT)===TR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&TR.S_IFMT)===TR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&TR.S_IFMT)===TR.S_IFLNK}};Tk.StatEntry=Dct;var kct=class{constructor(){this.uid=BigInt(0),this.gid=BigInt(0),this.size=BigInt(0),this.blksize=BigInt(0),this.atimeMs=BigInt(0),this.mtimeMs=BigInt(0),this.ctimeMs=BigInt(0),this.birthtimeMs=BigInt(0),this.atimeNs=BigInt(0),this.mtimeNs=BigInt(0),this.ctimeNs=BigInt(0),this.birthtimeNs=BigInt(0),this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=BigInt(0),this.ino=BigInt(0),this.mode=BigInt(Tk.DEFAULT_MODE),this.nlink=BigInt(1),this.rdev=BigInt(0),this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(TR.S_IFMT))===BigInt(TR.S_IFDIR)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(TR.S_IFMT))===BigInt(TR.S_IFREG)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(TR.S_IFMT))===BigInt(TR.S_IFLNK)}};Tk.BigIntStatsEntry=kct;function rEn(){return new Dct}function vjs(){return nEn(rEn())}function nEn(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):tEn.types.isDate(r)&&(e[t]=new Date(0))}return e}function Bjs(e){let t=new kct;for(let r in e)if(Object.hasOwn(e,r)){let n=e[r];typeof n=="number"?t[r]=BigInt(Math.floor(n)):tEn.types.isDate(n)&&(t[r]=new Date(n))}return t.atimeNs=t.atimeMs*BigInt(1e6)+BigInt(Math.floor(e.atimeMs%1*1e3))*BigInt(1e3),t.mtimeNs=t.mtimeMs*BigInt(1e6)+BigInt(Math.floor(e.mtimeMs%1*1e3))*BigInt(1e3),t.ctimeNs=t.ctimeMs*BigInt(1e6)+BigInt(Math.floor(e.ctimeMs%1*1e3))*BigInt(1e3),t.birthtimeNs=t.birthtimeMs*BigInt(1e6)+BigInt(Math.floor(e.birthtimeMs%1*1e3))*BigInt(1e3),t}function wjs(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,n=t;return!(r.atimeNs!==n.atimeNs||r.mtimeNs!==n.mtimeNs||r.ctimeNs!==n.ctimeNs||r.birthtimeNs!==n.birthtimeNs)}});var Y9=H(DS=>{"use strict";Object.defineProperty(DS,"__esModule",{value:!0});DS.ppath=DS.npath=DS.Filename=DS.PortablePath=void 0;DS.convertPath=Fjs;var Tjs=(Wa(),vi(Va)),xct=Tjs.__importDefault(Et("path")),iEn;(function(e){e[e.File=0]="File",e[e.Portable=1]="Portable",e[e.Native=2]="Native"})(iEn||(iEn={}));DS.PortablePath={root:"/",dot:".",parent:".."};DS.Filename={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"};DS.npath=Object.create(xct.default);DS.ppath=Object.create(xct.default.posix);DS.npath.cwd=()=>process.cwd();DS.ppath.cwd=process.platform==="win32"?()=>j6t(process.cwd()):process.cwd;process.platform==="win32"&&(DS.ppath.resolve=(...e)=>e.length>0&&DS.ppath.isAbsolute(e[0])?xct.default.posix.resolve(...e):xct.default.posix.resolve(DS.ppath.cwd(),...e));var sEn=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};DS.npath.contains=(e,t)=>sEn(DS.npath,e,t);DS.ppath.contains=(e,t)=>sEn(DS.ppath,e,t);var Rjs=/^([a-zA-Z]:.*)$/,Njs=/^\/\/(\.\/)?(.*)$/,Djs=/^\/([a-zA-Z]:.*)$/,kjs=/^\/unc\/(\.dot\/)?(.*)$/;function xjs(e){let t,r;if(t=e.match(Djs))e=t[1];else if(r=e.match(kjs))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function Gjs(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(Rjs))?e=`/${t[1]}`:(r=e.match(Njs))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var j6t=process.platform==="win32"?Gjs:e=>e,oEn=process.platform==="win32"?xjs:e=>e;DS.npath.fromPortablePath=oEn;DS.npath.toPortablePath=j6t;function Fjs(e,t){return e===DS.npath?oEn(t):j6t(t)}});var q6t=H(Gct=>{"use strict";Object.defineProperty(Gct,"__esModule",{value:!0});Gct.setupCopyIndex=Ojs;Gct.copyPromise=Pjs;var Zjs=(Wa(),vi(Va)),Ljs=Zjs.__importStar(Rct()),Vjs=Y9(),Dfe=new Date(Ljs.SAFE_TIME*1e3),Wjs=Dfe.getTime();async function Ojs(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let n=[];for(let a of r)for(let o of r)n.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${o}`),{recursive:!0}));return await Promise.all(n),t.indexPath}async function Pjs(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:Dfe,mtime:Dfe}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await z6t(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function z6t(e,t,r,n,a,o,l){let A=l.didParentExist?await aEn(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:Dfe,mtime:Dfe}:f,b;switch(!0){case f.isDirectory():b=await Mjs(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await Qjs(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await Xjs(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function aEn(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function Mjs(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await z6t(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await z6t(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function Hjs(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(function(ce){ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=F.Rename,J=await aEn(r,B);if(a){let ce=J&&a.dev===J.dev&&a.ino===J.ino,fe=J?.mtimeMs!==Wjs;if(ce&&fe&&I.autoRepair&&(Q=F.Lock,J=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!J&&Q===F.Rename?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!J&&(Q===F.Lock&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===F.Rename&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{J||(await r.lutimesPromise(B,Dfe,Dfe),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function Yjs(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function Qjs(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?Hjs(e,t,r,n,a,o,l,A,f,f.linkStrategy):Yjs(e,t,r,n,a,o,l,A,f)}async function Xjs(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise((0,Vjs.convertPath)(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}});var cEn=H(f3e=>{"use strict";Object.defineProperty(f3e,"__esModule",{value:!0});f3e.CustomDir=void 0;f3e.opendir=Kjs;var Jjs=(Wa(),vi(Va)),Ujs=Jjs.__importStar(Nct()),Fct=class{constructor(t,r,n={}){this.path=t,this.nextDirent=r,this.opts=n,this.closed=!1}throwIfClosed(){if(this.closed)throw Ujs.ERR_DIR_CLOSED()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}};f3e.CustomDir=Fct;function Kjs(e,t,r,n){let a=()=>{let o=r.shift();if(typeof o>"u")return null;let l=e.pathUtils.join(t,o);return Object.assign(e.statSync(l),{name:o,path:void 0})};return new Fct(t,a,n)}});var lEn=H(i$=>{"use strict";Object.defineProperty(i$,"__esModule",{value:!0});i$.CustomStatWatcher=i$.Status=i$.Event=void 0;i$.assertStatus=$6t;var jjs=(Wa(),vi(Va)),zjs=Et("events"),Zct=jjs.__importStar(K6t()),kfe;(function(e){e.Change="change",e.Stop="stop"})(kfe||(i$.Event=kfe={}));var xfe;(function(e){e.Ready="ready",e.Running="running",e.Stopped="stopped"})(xfe||(i$.Status=xfe={}));function $6t(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var ejt=class e extends zjs.EventEmitter{static create(t,r,n){let a=new e(t,r,n);return a.start(),a}constructor(t,r,{bigint:n=!1}={}){super(),this.status=xfe.Ready,this.changeListeners=new Map,this.startTimeout=null,this.fakeFs=t,this.path=r,this.bigint=n,this.lastStats=this.stat()}start(){$6t(this.status,xfe.Ready),this.status=xfe.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(kfe.Change,this.lastStats,this.lastStats)},3)}stop(){$6t(this.status,xfe.Running),this.status=xfe.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(kfe.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let t=this.bigint?new Zct.BigIntStatsEntry:new Zct.StatEntry;return Zct.clearStats(t)}}makeInterval(t){let r=setInterval(()=>{let n=this.stat(),a=this.lastStats;Zct.areStatsEqual(n,a)||(this.lastStats=n,this.emit(kfe.Change,n,a))},t.interval);return t.persistent?r:r.unref()}registerChangeListener(t,r){this.addListener(kfe.Change,t),this.changeListeners.set(t,this.makeInterval(r))}unregisterChangeListener(t){this.removeListener(kfe.Change,t);let r=this.changeListeners.get(t);typeof r<"u"&&clearInterval(r),this.changeListeners.delete(t)}unregisterAllChangeListeners(){for(let t of this.changeListeners.keys())this.unregisterChangeListener(t)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let t of this.changeListeners.values())t.ref();return this}unref(){for(let t of this.changeListeners.values())t.unref();return this}};i$.CustomStatWatcher=ejt});var tjt=H(I3e=>{"use strict";Object.defineProperty(I3e,"__esModule",{value:!0});I3e.watchFile=$js;I3e.unwatchFile=uEn;I3e.unwatchAllFiles=e7s;var qjs=lEn(),Lct=new WeakMap;function $js(e,t,r,n){let a,o,l,A;switch(typeof r){case"function":a=!1,o=!0,l=5007,A=r;break;default:({bigint:a=!1,persistent:o=!0,interval:l=5007}=r),A=n;break}let f=Lct.get(e);typeof f>"u"&&Lct.set(e,f=new Map);let I=f.get(t);return typeof I>"u"&&(I=qjs.CustomStatWatcher.create(e,t,{bigint:a}),f.set(t,I)),I.registerChangeListener(A,{persistent:o,interval:l}),I}function uEn(e,t,r){let n=Lct.get(e);if(typeof n>"u")return;let a=n.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),n.delete(t)))}function e7s(e){let t=Lct.get(e);if(!(typeof t>"u"))for(let r of t.keys())uEn(e,r)}});var Ffe=H(Gfe=>{"use strict";Object.defineProperty(Gfe,"__esModule",{value:!0});Gfe.BasePortableFakeFS=Gfe.FakeFS=void 0;Gfe.normalizeLineEndings=njt;var t7s=Et("crypto"),r7s=Et("os"),n7s=q6t(),gEn=Y9(),Vct=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,t7s.createHash)(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await(0,n7s.copyPromise)(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync((0,gEn.convertPath)(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?njt(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?njt(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} `)}writeJsonSync(t,r,{compact:n=!1}={}){let a=n?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}};xfe.FakeFS=Wct;var rjt=class extends Wct{constructor(){super(sEn.ppath)}};xfe.BasePortableFakeFS=rjt;function n7s(e){let t=e.match(/\r?\n/g);if(t===null)return t7s.EOL;let r=t.filter(a=>a===`\r +`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}};Gfe.FakeFS=Vct;var rjt=class extends Vct{constructor(){super(gEn.ppath)}};Gfe.BasePortableFakeFS=rjt;function i7s(e){let t=e.match(/\r?\n/g);if(t===null)return r7s.EOL;let r=t.filter(a=>a===`\r `).length,n=t.length-r;return r>n?`\r `:` -`}function njt(e,t){return t.replace(/\r?\n/g,n7s(e))}});var i$=H(Oct=>{"use strict";Object.defineProperty(Oct,"__esModule",{value:!0});Oct.ProxiedFS=void 0;var i7s=Gfe(),ijt=class extends i7s.FakeFS{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};Oct.ProxiedFS=ijt});var oEn=H(Pct=>{"use strict";Object.defineProperty(Pct,"__esModule",{value:!0});Pct.AliasFS=void 0;var s7s=i$(),sjt=class extends s7s.ProxiedFS{constructor(t,{baseFs:r,pathUtils:n}){super(n),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}};Pct.AliasFS=sjt});var Ffe=H(Mct=>{"use strict";Object.defineProperty(Mct,"__esModule",{value:!0});Mct.NodeFS=void 0;var o7s=(Wa(),vi(Va)),a7s=o7s.__importDefault(Et("fs")),c7s=Gfe(),ku=H9();function aEn(e){let t=e;return typeof e.path=="string"&&(t.path=ku.npath.toPortablePath(e.path)),t}var ojt=class extends c7s.BasePortableFakeFS{constructor(t=a7s.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return ku.PortablePath.root}resolve(t){return ku.ppath.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(ku.npath.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(ku.npath.fromPortablePath(t),r):this.realFs.opendirSync(ku.npath.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(ku.npath.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}realpathSync(t){return ku.npath.toPortablePath(this.realFs.realpathSync(ku.npath.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(ku.npath.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(ku.npath.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(ku.npath.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(ku.npath.fromPortablePath(t),r):this.realFs.statSync(ku.npath.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(ku.npath.fromPortablePath(t),r):this.realFs.lstatSync(ku.npath.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(ku.npath.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(ku.npath.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(ku.npath.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(ku.npath.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(ku.npath.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(ku.npath.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(ku.npath.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(ku.npath.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?ku.npath.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?ku.npath.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(aEn)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(ku.npath.toPortablePath)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(aEn):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(ku.npath.toPortablePath):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r):this.realFs.readdirSync(ku.npath.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}readlinkSync(t){return ku.npath.toPortablePath(this.realFs.readlinkSync(ku.npath.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(ku.npath.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(ku.npath.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(ku.npath.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(ku.npath.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}};Mct.NodeFS=ojt});var cEn=H(Hct=>{"use strict";Object.defineProperty(Hct,"__esModule",{value:!0});Hct.CwdFS=void 0;var l7s=Ffe(),u7s=i$(),ajt=H9(),cjt=class extends u7s.ProxiedFS{constructor(t,{baseFs:r=new l7s.NodeFS}={}){super(ajt.ppath),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?ajt.ppath.normalize(t):this.baseFs.resolve(ajt.ppath.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}};Hct.CwdFS=cjt});var uEn=H(Qct=>{"use strict";Object.defineProperty(Qct,"__esModule",{value:!0});Qct.JailFS=void 0;var g7s=Ffe(),A7s=i$(),Yct=H9(),lEn=Yct.PortablePath.root,ljt=class extends A7s.ProxiedFS{constructor(t,{baseFs:r=new g7s.NodeFS}={}){super(Yct.ppath),this.target=this.pathUtils.resolve(Yct.PortablePath.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Yct.PortablePath.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(lEn,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(lEn,this.pathUtils.relative(this.target,t))}};Qct.JailFS=ljt});var gEn=H(Xct=>{"use strict";Object.defineProperty(Xct,"__esModule",{value:!0});Xct.LazyFS=void 0;var d7s=i$(),ujt=class extends d7s.ProxiedFS{constructor(t,r){super(r),this.instance=null,this.factory=t}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(t){this.instance=t}mapFromBase(t){return t}mapToBase(t){return t}};Xct.LazyFS=ujt});var AEn=H(Kct=>{"use strict";Object.defineProperty(Kct,"__esModule",{value:!0});Kct.MountFS=void 0;var p7s=(Wa(),vi(Va)),VSe=Et("fs"),f7s=Gfe(),I7s=Ffe(),Jct=tjt(),Y9=p7s.__importStar(Dct()),Uct=H9(),Q9=4278190080,gjt=class extends f7s.BasePortableFakeFS{constructor({baseFs:t=new I7s.NodeFS,filter:r=null,magicByte:n=42,maxOpenFiles:a=1/0,useCache:o=!0,maxAge:l=5e3,typeCheck:A=VSe.constants.S_IFREG,getMountPoint:f,factoryPromise:I,factorySync:C}){if(Math.floor(n)!==n||!(n>1&&n<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super(),this.fdMap=new Map,this.nextFd=3,this.isMount=new Set,this.notMount=new Set,this.realPaths=new Map,this.limitOpenFilesTimeout=null,this.baseFs=t,this.mountInstances=o?new Map:null,this.factoryPromise=I,this.factorySync=C,this.filter=r,this.getMountPoint=f,this.magic=n<<24,this.maxAge=l,this.maxOpenFiles=a,this.typeCheck=A}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if((0,Jct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.saveAndClose?.(),this.mountInstances.delete(t)}discardAndClose(){if((0,Jct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.discardAndClose?.(),this.mountInstances.delete(t)}resolve(t){return this.baseFs.resolve(t)}remapFd(t,r){let n=this.nextFd++|this.magic;return this.fdMap.set(n,[t,r]),n}async openPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.openPromise(t,r,n),async(a,{subPath:o})=>this.remapFd(a,await a.openPromise(o,r,n)))}openSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.openSync(t,r,n),(a,{subPath:o})=>this.remapFd(a,a.openSync(o,r,n)))}async opendirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.opendirPromise(t,r),async(n,{subPath:a})=>await n.opendirPromise(a,r),{requireSubpath:!1})}opendirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.opendirSync(t,r),(n,{subPath:a})=>n.opendirSync(a,r),{requireSubpath:!1})}async readPromise(t,r,n,a,o){if((t&Q9)!==this.magic)return await this.baseFs.readPromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Y9.EBADF("read");let[A,f]=l;return await A.readPromise(f,r,n,a,o)}readSync(t,r,n,a,o){if((t&Q9)!==this.magic)return this.baseFs.readSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Y9.EBADF("readSync");let[A,f]=l;return A.readSync(f,r,n,a,o)}async writePromise(t,r,n,a,o){if((t&Q9)!==this.magic)return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Y9.EBADF("write");let[A,f]=l;return typeof r=="string"?await A.writePromise(f,r,n):await A.writePromise(f,r,n,a,o)}writeSync(t,r,n,a,o){if((t&Q9)!==this.magic)return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Y9.EBADF("writeSync");let[A,f]=l;return typeof r=="string"?A.writeSync(f,r,n):A.writeSync(f,r,n,a,o)}async closePromise(t){if((t&Q9)!==this.magic)return await this.baseFs.closePromise(t);let r=this.fdMap.get(t);if(typeof r>"u")throw Y9.EBADF("close");this.fdMap.delete(t);let[n,a]=r;return await n.closePromise(a)}closeSync(t){if((t&Q9)!==this.magic)return this.baseFs.closeSync(t);let r=this.fdMap.get(t);if(typeof r>"u")throw Y9.EBADF("closeSync");this.fdMap.delete(t);let[n,a]=r;return n.closeSync(a)}createReadStream(t,r){return t===null?this.baseFs.createReadStream(t,r):this.makeCallSync(t,()=>this.baseFs.createReadStream(t,r),(n,{archivePath:a,subPath:o})=>{let l=n.createReadStream(o,r);return l.path=Uct.npath.fromPortablePath(this.pathUtils.join(a,o)),l})}createWriteStream(t,r){return t===null?this.baseFs.createWriteStream(t,r):this.makeCallSync(t,()=>this.baseFs.createWriteStream(t,r),(n,{subPath:a})=>n.createWriteStream(a,r))}async realpathPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.realpathPromise(t),async(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=await this.baseFs.realpathPromise(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(Uct.PortablePath.root,await r.realpathPromise(a)))})}realpathSync(t){return this.makeCallSync(t,()=>this.baseFs.realpathSync(t),(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=this.baseFs.realpathSync(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(Uct.PortablePath.root,r.realpathSync(a)))})}async existsPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.existsPromise(t),async(r,{subPath:n})=>await r.existsPromise(n))}existsSync(t){return this.makeCallSync(t,()=>this.baseFs.existsSync(t),(r,{subPath:n})=>r.existsSync(n))}async accessPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.accessPromise(t,r),async(n,{subPath:a})=>await n.accessPromise(a,r))}accessSync(t,r){return this.makeCallSync(t,()=>this.baseFs.accessSync(t,r),(n,{subPath:a})=>n.accessSync(a,r))}async statPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.statPromise(t,r),async(n,{subPath:a})=>await n.statPromise(a,r))}statSync(t,r){return this.makeCallSync(t,()=>this.baseFs.statSync(t,r),(n,{subPath:a})=>n.statSync(a,r))}async fstatPromise(t,r){if((t&Q9)!==this.magic)return this.baseFs.fstatPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Y9.EBADF("fstat");let[a,o]=n;return a.fstatPromise(o,r)}fstatSync(t,r){if((t&Q9)!==this.magic)return this.baseFs.fstatSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Y9.EBADF("fstatSync");let[a,o]=n;return a.fstatSync(o,r)}async lstatPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.lstatPromise(t,r),async(n,{subPath:a})=>await n.lstatPromise(a,r))}lstatSync(t,r){return this.makeCallSync(t,()=>this.baseFs.lstatSync(t,r),(n,{subPath:a})=>n.lstatSync(a,r))}async fchmodPromise(t,r){if((t&Q9)!==this.magic)return this.baseFs.fchmodPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Y9.EBADF("fchmod");let[a,o]=n;return a.fchmodPromise(o,r)}fchmodSync(t,r){if((t&Q9)!==this.magic)return this.baseFs.fchmodSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Y9.EBADF("fchmodSync");let[a,o]=n;return a.fchmodSync(o,r)}async chmodPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.chmodPromise(t,r),async(n,{subPath:a})=>await n.chmodPromise(a,r))}chmodSync(t,r){return this.makeCallSync(t,()=>this.baseFs.chmodSync(t,r),(n,{subPath:a})=>n.chmodSync(a,r))}async fchownPromise(t,r,n){if((t&Q9)!==this.magic)return this.baseFs.fchownPromise(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw Y9.EBADF("fchown");let[o,l]=a;return o.fchownPromise(l,r,n)}fchownSync(t,r,n){if((t&Q9)!==this.magic)return this.baseFs.fchownSync(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw Y9.EBADF("fchownSync");let[o,l]=a;return o.fchownSync(l,r,n)}async chownPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.chownPromise(t,r,n),async(a,{subPath:o})=>await a.chownPromise(o,r,n))}chownSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.chownSync(t,r,n),(a,{subPath:o})=>a.chownSync(o,r,n))}async renamePromise(t,r){return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(t,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(n,{subPath:a})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await n.renamePromise(a,l)}))}renameSync(t,r){return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(t,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(n,{subPath:a})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return n.renameSync(a,l)}))}async copyFilePromise(t,r,n=0){let a=async(o,l,A,f)=>{if(n&VSe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&VSe.constants.COPYFILE_EXCL&&await this.existsPromise(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=await o.readFilePromise(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}await A.writeFilePromise(f,I)};return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(t,r,n),async(o,{subPath:l})=>await a(this.baseFs,t,o,l)),async(o,{subPath:l})=>await this.makeCallPromise(r,async()=>await a(o,l,this.baseFs,r),async(A,{subPath:f})=>o!==A?await a(o,l,A,f):await o.copyFilePromise(l,f,n)))}copyFileSync(t,r,n=0){let a=(o,l,A,f)=>{if(n&VSe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&VSe.constants.COPYFILE_EXCL&&this.existsSync(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=o.readFileSync(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}A.writeFileSync(f,I)};return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(t,r,n),(o,{subPath:l})=>a(this.baseFs,t,o,l)),(o,{subPath:l})=>this.makeCallSync(r,()=>a(o,l,this.baseFs,r),(A,{subPath:f})=>o!==A?a(o,l,A,f):o.copyFileSync(l,f,n)))}async appendFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.appendFilePromise(t,r,n),async(a,{subPath:o})=>await a.appendFilePromise(o,r,n))}appendFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.appendFileSync(t,r,n),(a,{subPath:o})=>a.appendFileSync(o,r,n))}async writeFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.writeFilePromise(t,r,n),async(a,{subPath:o})=>await a.writeFilePromise(o,r,n))}writeFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.writeFileSync(t,r,n),(a,{subPath:o})=>a.writeFileSync(o,r,n))}async unlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.unlinkPromise(t),async(r,{subPath:n})=>await r.unlinkPromise(n))}unlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.unlinkSync(t),(r,{subPath:n})=>r.unlinkSync(n))}async utimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.utimesPromise(t,r,n),async(a,{subPath:o})=>await a.utimesPromise(o,r,n))}utimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.utimesSync(t,r,n),(a,{subPath:o})=>a.utimesSync(o,r,n))}async lutimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.lutimesPromise(t,r,n),async(a,{subPath:o})=>await a.lutimesPromise(o,r,n))}lutimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.lutimesSync(t,r,n),(a,{subPath:o})=>a.lutimesSync(o,r,n))}async mkdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.mkdirPromise(t,r),async(n,{subPath:a})=>await n.mkdirPromise(a,r))}mkdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.mkdirSync(t,r),(n,{subPath:a})=>n.mkdirSync(a,r))}async rmdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmdirPromise(t,r),async(n,{subPath:a})=>await n.rmdirPromise(a,r))}rmdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmdirSync(t,r),(n,{subPath:a})=>n.rmdirSync(a,r))}async rmPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmPromise(t,r),async(n,{subPath:a})=>await n.rmPromise(a,r))}rmSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmSync(t,r),(n,{subPath:a})=>n.rmSync(a,r))}async linkPromise(t,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(t,r),async(n,{subPath:a})=>await n.linkPromise(t,a))}linkSync(t,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(t,r),(n,{subPath:a})=>n.linkSync(t,a))}async symlinkPromise(t,r,n){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(t,r,n),async(a,{subPath:o})=>await a.symlinkPromise(t,o))}symlinkSync(t,r,n){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(t,r,n),(a,{subPath:o})=>a.symlinkSync(t,o))}async readFilePromise(t,r){return this.makeCallPromise(t,async()=>await this.baseFs.readFilePromise(t,r),async(n,{subPath:a})=>await n.readFilePromise(a,r))}readFileSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readFileSync(t,r),(n,{subPath:a})=>n.readFileSync(a,r))}async readdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.readdirPromise(t,r),async(n,{subPath:a})=>await n.readdirPromise(a,r),{requireSubpath:!1})}readdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readdirSync(t,r),(n,{subPath:a})=>n.readdirSync(a,r),{requireSubpath:!1})}async readlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.readlinkPromise(t),async(r,{subPath:n})=>await r.readlinkPromise(n))}readlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.readlinkSync(t),(r,{subPath:n})=>r.readlinkSync(n))}async truncatePromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.truncatePromise(t,r),async(n,{subPath:a})=>await n.truncatePromise(a,r))}truncateSync(t,r){return this.makeCallSync(t,()=>this.baseFs.truncateSync(t,r),(n,{subPath:a})=>n.truncateSync(a,r))}async ftruncatePromise(t,r){if((t&Q9)!==this.magic)return this.baseFs.ftruncatePromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Y9.EBADF("ftruncate");let[a,o]=n;return a.ftruncatePromise(o,r)}ftruncateSync(t,r){if((t&Q9)!==this.magic)return this.baseFs.ftruncateSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Y9.EBADF("ftruncateSync");let[a,o]=n;return a.ftruncateSync(o,r)}watch(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watch(t,r,n),(a,{subPath:o})=>a.watch(o,r,n))}watchFile(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watchFile(t,r,n),()=>(0,Jct.watchFile)(this,t,r,n))}unwatchFile(t,r){return this.makeCallSync(t,()=>this.baseFs.unwatchFile(t,r),()=>(0,Jct.unwatchFile)(this,t,r))}async makeCallPromise(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return await r();let o=this.resolve(t),l=this.findMount(o);return l?a&&l.subPath==="/"?await r():await this.getMountPromise(l.archivePath,async A=>await n(A,l)):await r()}makeCallSync(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return r();let o=this.resolve(t),l=this.findMount(o);return!l||a&&l.subPath==="/"?r():this.getMountSync(l.archivePath,A=>n(A,l))}findMount(t){if(this.filter&&!this.filter.test(t))return null;let r="";for(;;){let n=t.substring(r.length),a=this.getMountPoint(n,r);if(!a)return null;if(r=this.pathUtils.join(r,a),!this.isMount.has(r)){if(this.notMount.has(r))continue;try{if(this.typeCheck!==null&&(this.baseFs.statSync(r).mode&VSe.constants.S_IFMT)!==this.typeCheck){this.notMount.add(r);continue}}catch{return null}this.isMount.add(r)}return{archivePath:r,subPath:this.pathUtils.join(Uct.PortablePath.root,t.substring(r.length))}}}limitOpenFiles(t){if(this.mountInstances===null)return;let r=Date.now(),n=r+this.maxAge,a=t===null?0:this.mountInstances.size-t;for(let[o,{childFs:l,expiresAt:A,refCount:f}]of this.mountInstances.entries())if(!(f!==0||l.hasOpenFileHandles?.())){if(r>=A){l.saveAndClose?.(),this.mountInstances.delete(o),a-=1;continue}else if(t===null||a<=0){n=A;break}l.saveAndClose?.(),this.mountInstances.delete(o),a-=1}this.limitOpenFilesTimeout===null&&(t===null&&this.mountInstances.size>0||t!==null)&&isFinite(n)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},n-r).unref())}async getMountPromise(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);if(!n){let a=await this.factoryPromise(this.baseFs,t);n=this.mountInstances.get(t),n||(n={childFs:a(),expiresAt:0,refCount:0})}this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.childFs)}finally{n.refCount-=1}}else{let n=(await this.factoryPromise(this.baseFs,t))();try{return await r(n)}finally{n.saveAndClose?.()}}}getMountSync(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);return n||(n={childFs:this.factorySync(this.baseFs,t),expiresAt:0,refCount:0}),this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,r(n.childFs)}else{let n=this.factorySync(this.baseFs,t);try{return r(n)}finally{n.saveAndClose?.()}}}};Kct.MountFS=gjt});var dEn=H(jct=>{"use strict";Object.defineProperty(jct,"__esModule",{value:!0});jct.NoFS=void 0;var h7s=Gfe(),m7s=H9(),Og=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),h3e=class extends h7s.FakeFS{constructor(){super(m7s.ppath)}getExtractHint(){throw Og()}getRealPath(){throw Og()}resolve(){throw Og()}async openPromise(){throw Og()}openSync(){throw Og()}async opendirPromise(){throw Og()}opendirSync(){throw Og()}async readPromise(){throw Og()}readSync(){throw Og()}async writePromise(){throw Og()}writeSync(){throw Og()}async closePromise(){throw Og()}closeSync(){throw Og()}createWriteStream(){throw Og()}createReadStream(){throw Og()}async realpathPromise(){throw Og()}realpathSync(){throw Og()}async readdirPromise(){throw Og()}readdirSync(){throw Og()}async existsPromise(t){throw Og()}existsSync(t){throw Og()}async accessPromise(){throw Og()}accessSync(){throw Og()}async statPromise(){throw Og()}statSync(){throw Og()}async fstatPromise(t){throw Og()}fstatSync(t){throw Og()}async lstatPromise(t){throw Og()}lstatSync(t){throw Og()}async fchmodPromise(){throw Og()}fchmodSync(){throw Og()}async chmodPromise(){throw Og()}chmodSync(){throw Og()}async fchownPromise(){throw Og()}fchownSync(){throw Og()}async chownPromise(){throw Og()}chownSync(){throw Og()}async mkdirPromise(){throw Og()}mkdirSync(){throw Og()}async rmdirPromise(){throw Og()}rmdirSync(){throw Og()}async rmPromise(){throw Og()}rmSync(){throw Og()}async linkPromise(){throw Og()}linkSync(){throw Og()}async symlinkPromise(){throw Og()}symlinkSync(){throw Og()}async renamePromise(){throw Og()}renameSync(){throw Og()}async copyFilePromise(){throw Og()}copyFileSync(){throw Og()}async appendFilePromise(){throw Og()}appendFileSync(){throw Og()}async writeFilePromise(){throw Og()}writeFileSync(){throw Og()}async unlinkPromise(){throw Og()}unlinkSync(){throw Og()}async utimesPromise(){throw Og()}utimesSync(){throw Og()}async lutimesPromise(){throw Og()}lutimesSync(){throw Og()}async readFilePromise(){throw Og()}readFileSync(){throw Og()}async readlinkPromise(){throw Og()}readlinkSync(){throw Og()}async truncatePromise(){throw Og()}truncateSync(){throw Og()}async ftruncatePromise(t,r){throw Og()}ftruncateSync(t,r){throw Og()}watch(){throw Og()}watchFile(){throw Og()}unwatchFile(){throw Og()}};jct.NoFS=h3e;h3e.instance=new h3e});var pEn=H(zct=>{"use strict";Object.defineProperty(zct,"__esModule",{value:!0});zct.PosixFS=void 0;var C7s=i$(),Ajt=H9(),djt=class extends C7s.ProxiedFS{constructor(t){super(Ajt.npath),this.baseFs=t}mapFromBase(t){return Ajt.npath.fromPortablePath(t)}mapToBase(t){return Ajt.npath.toPortablePath(t)}};zct.PosixFS=djt});var fEn=H(qct=>{"use strict";Object.defineProperty(qct,"__esModule",{value:!0});qct.VirtualFS=void 0;var _7s=Ffe(),y7s=i$(),uX=H9(),b7s=/^[0-9]+$/,pjt=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,E7s=/^([^/]+-)?[a-f0-9]+$/,fjt=class e extends y7s.ProxiedFS{static makeVirtualPath(t,r,n){if(uX.ppath.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!uX.ppath.basename(r).match(E7s))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=uX.ppath.relative(uX.ppath.dirname(t),n).split("/"),l=0;for(;l{"use strict";Object.defineProperty($ct,"__esModule",{value:!0});$ct.NodePathFS=void 0;var S7s=(Wa(),vi(Va)),IEn=S7s.__importDefault(Et("buffer")),v7s=Et("url"),B7s=Et("util"),w7s=i$(),T7s=H9(),Ijt=class extends w7s.ProxiedFS{constructor(t){super(T7s.npath),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,v7s.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!R7s(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,B7s.inspect)(t)}`)}};$ct.NodePathFS=Ijt;function R7s(e,t){return typeof IEn.default.isUtf8<"u"?IEn.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}});var bEn=H(rlt=>{"use strict";var mEn,CEn,_En,yEn;Object.defineProperty(rlt,"__esModule",{value:!0});rlt.FileHandle=void 0;var N7s=Et("readline"),wZ=Symbol("kBaseFs"),goe=Symbol("kFd"),Aoe=Symbol("kClosePromise"),elt=Symbol("kCloseResolve"),tlt=Symbol("kCloseReject"),WSe=Symbol("kRefs"),gX=Symbol("kRef"),AX=Symbol("kUnref"),hjt=class{constructor(t,r){this[mEn]=1,this[CEn]=void 0,this[_En]=void 0,this[yEn]=void 0,this[wZ]=r,this[goe]=t}get fd(){return this[goe]}async appendFile(t,r){try{this[gX](this.appendFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;return await this[wZ].appendFilePromise(this.fd,t,n?{encoding:n}:void 0)}finally{this[AX]()}}async chown(t,r){try{return this[gX](this.chown),await this[wZ].fchownPromise(this.fd,t,r)}finally{this[AX]()}}async chmod(t){try{return this[gX](this.chmod),await this[wZ].fchmodPromise(this.fd,t)}finally{this[AX]()}}createReadStream(t){return this[wZ].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[wZ].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,n,a){try{this[gX](this.read);let o,l;return ArrayBuffer.isView(t)?typeof r=="object"&&r!==null?(o=t,l=r?.offset??0,n=r?.length??o.byteLength-l,a=r?.position??null):(o=t,l=r??0,n??=0):(o=t?.buffer??Buffer.alloc(16384),l=t?.offset??0,n=t?.length??o.byteLength-l,a=t?.position??null),n===0?{bytesRead:n,buffer:o}:{bytesRead:await this[wZ].readPromise(this.fd,Buffer.isBuffer(o)?o:Buffer.from(o.buffer,o.byteOffset,o.byteLength),l,n,a),buffer:o}}finally{this[AX]()}}async readFile(t){try{this[gX](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[wZ].readFilePromise(this.fd,r)}finally{this[AX]()}}readLines(t){return(0,N7s.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[gX](this.stat),await this[wZ].fstatPromise(this.fd,t)}finally{this[AX]()}}async truncate(t){try{return this[gX](this.truncate),await this[wZ].ftruncatePromise(this.fd,t)}finally{this[AX]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[gX](this.writeFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;await this[wZ].writeFilePromise(this.fd,t,n)}finally{this[AX]()}}async write(...t){try{if(this[gX](this.write),ArrayBuffer.isView(t[0])){let[r,n,a,o]=t;return{bytesWritten:await this[wZ].writePromise(this.fd,r,n??void 0,a??void 0,o??void 0),buffer:r}}else{let[r,n,a]=t;return{bytesWritten:await this[wZ].writePromise(this.fd,r,n,a),buffer:r}}}finally{this[AX]()}}async writev(t,r){try{this[gX](this.writev);let n=0;if(typeof r<"u")for(let a of t){let o=await this.write(a,void 0,void 0,r);n+=o.bytesWritten,r+=o.bytesWritten}else for(let a of t){let o=await this.write(a);n+=o.bytesWritten}return{buffers:t,bytesWritten:n}}finally{this[AX]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[goe]===-1)return Promise.resolve();if(this[Aoe])return this[Aoe];if(this[WSe]--,this[WSe]===0){let t=this[goe];this[goe]=-1,this[Aoe]=this[wZ].closePromise(t).finally(()=>{this[Aoe]=void 0})}else this[Aoe]=new Promise((t,r)=>{this[elt]=t,this[tlt]=r}).finally(()=>{this[Aoe]=void 0,this[tlt]=void 0,this[elt]=void 0});return this[Aoe]}[(mEn=WSe,CEn=Aoe,_En=elt,yEn=tlt,gX)](t){if(this[goe]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[WSe]++}[AX](){if(this[WSe]--,this[WSe]===0){let t=this[goe];this[goe]=-1,this[wZ].closePromise(t).then(this[elt],this[tlt])}}};rlt.FileHandle=hjt});var BEn=H(nlt=>{"use strict";Object.defineProperty(nlt,"__esModule",{value:!0});nlt.patchFs=vEn;nlt.extendFs=x7s;var m3e=Et("util"),D7s=hEn(),EEn=bEn(),k7s=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),SEn=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]);function vEn(e,t){t=new D7s.NodePathFS(t);let r=(n,a,o)=>{let l=n[a];n[a]=o,typeof l?.[m3e.promisify.custom]<"u"&&(o[m3e.promisify.custom]=l[m3e.promisify.custom])};{r(e,"exists",(n,...a)=>{let l=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(n).then(A=>{l(A)},()=>{l(!1)})})}),r(e,"read",(...n)=>{let[a,o,l,A,f,I]=n;if(n.length<=3){let C={};n.length<3?I=n[1]:(C=n[1],I=n[2]),{buffer:o=Buffer.alloc(16384),offset:l=0,length:A=o.byteLength,position:f}=C}if(l==null&&(l=0),A|=0,A===0){process.nextTick(()=>{I(null,0,o)});return}f==null&&(f=-1),process.nextTick(()=>{t.readPromise(a,o,l,A,f).then(C=>{I(null,C,o)},C=>{I(C,0,o)})})});for(let n of SEn){let a=n.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let o=t[n];if(typeof o>"u")continue;r(e,a,(...A)=>{let I=typeof A[A.length-1]=="function"?A.pop():()=>{};process.nextTick(()=>{o.apply(t,A).then(C=>{I(null,C)},C=>{I(C)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",n=>{try{return t.existsSync(n)}catch{return!1}}),r(e,"readSync",(...n)=>{let[a,o,l,A,f]=n;return n.length<=3&&({offset:l=0,length:A=o.byteLength,position:f}=n[2]||{}),l==null&&(l=0),A|=0,A===0?0:(f==null&&(f=-1),t.readSync(a,o,l,A,f))});for(let n of k7s){let a=n;if(typeof e[a]>"u")continue;let o=t[n];typeof o>"u"||r(e,a,o.bind(t))}e.realpathSync.native=e.realpathSync}{let n=e.promises;for(let a of SEn){let o=a.replace(/Promise$/,"");if(typeof n[o]>"u")continue;let l=t[a];typeof l>"u"||a!=="open"&&r(n,o,(A,...f)=>A instanceof EEn.FileHandle?A[o].apply(A,f):l.call(t,A,...f))}r(n,"open",async(...a)=>{let o=await t.openPromise(...a);return new EEn.FileHandle(o,t)})}e.read[m3e.promisify.custom]=async(n,a,...o)=>({bytesRead:await t.readPromise(n,a,...o),buffer:a}),e.write[m3e.promisify.custom]=async(n,a,...o)=>({bytesWritten:await t.writePromise(n,a,...o),buffer:a})}function x7s(e,t){let r=Object.create(e);return vEn(r,t),r}});var REn=H(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});doe.xfs=void 0;var G7s=(Wa(),vi(Va)),F7s=G7s.__importDefault(Et("os")),Z7s=Ffe(),C3e=H9();function wEn(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}var dX=new Set,mjt=null;function TEn(){if(mjt)return mjt;let e=C3e.npath.toPortablePath(F7s.default.tmpdir()),t=doe.xfs.realpathSync(e);return process.once("exit",()=>{doe.xfs.rmtempSync()}),mjt={tmpdir:e,realTmpdir:t}}doe.xfs=Object.assign(new Z7s.NodeFS,{detachTemp(e){dX.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=TEn();for(;;){let n=wEn("xfs-");try{this.mkdirSync(C3e.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=C3e.ppath.join(r,n);if(dX.add(a),typeof e>"u")return a;try{return e(a)}finally{if(dX.has(a)){dX.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=TEn();for(;;){let n=wEn("xfs-");try{await this.mkdirPromise(C3e.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=C3e.ppath.join(r,n);if(dX.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(dX.has(a)){dX.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(dX.values()).map(async e=>{try{await doe.xfs.removePromise(e,{maxRetries:0}),dX.delete(e)}catch{}}))},rmtempSync(){for(let e of dX)try{doe.xfs.removeSync(e),dX.delete(e)}catch{}}})});var Io=H(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.xfs=_d.extendFs=_d.patchFs=_d.VirtualFS=_d.ProxiedFS=_d.PosixFS=_d.NodeFS=_d.NoFS=_d.MountFS=_d.LazyFS=_d.JailFS=_d.CwdFS=_d.BasePortableFakeFS=_d.FakeFS=_d.AliasFS=_d.ppath=_d.npath=_d.Filename=_d.PortablePath=_d.normalizeLineEndings=_d.unwatchAllFiles=_d.unwatchFile=_d.watchFile=_d.CustomDir=_d.opendir=_d.setupCopyIndex=_d.statUtils=_d.errors=_d.constants=void 0;var Cjt=(Wa(),vi(Va)),L7s=Cjt.__importStar(Nct());_d.constants=L7s;var V7s=Cjt.__importStar(Dct());_d.errors=V7s;var W7s=Cjt.__importStar(K6t());_d.statUtils=W7s;var O7s=q6t();Object.defineProperty(_d,"setupCopyIndex",{enumerable:!0,get:function(){return O7s.setupCopyIndex}});var NEn=rEn();Object.defineProperty(_d,"opendir",{enumerable:!0,get:function(){return NEn.opendir}});Object.defineProperty(_d,"CustomDir",{enumerable:!0,get:function(){return NEn.CustomDir}});var _jt=tjt();Object.defineProperty(_d,"watchFile",{enumerable:!0,get:function(){return _jt.watchFile}});Object.defineProperty(_d,"unwatchFile",{enumerable:!0,get:function(){return _jt.unwatchFile}});Object.defineProperty(_d,"unwatchAllFiles",{enumerable:!0,get:function(){return _jt.unwatchAllFiles}});var P7s=Gfe();Object.defineProperty(_d,"normalizeLineEndings",{enumerable:!0,get:function(){return P7s.normalizeLineEndings}});var DEn=H9();Object.defineProperty(_d,"PortablePath",{enumerable:!0,get:function(){return DEn.PortablePath}});Object.defineProperty(_d,"Filename",{enumerable:!0,get:function(){return DEn.Filename}});var kEn=H9();Object.defineProperty(_d,"npath",{enumerable:!0,get:function(){return kEn.npath}});Object.defineProperty(_d,"ppath",{enumerable:!0,get:function(){return kEn.ppath}});var M7s=oEn();Object.defineProperty(_d,"AliasFS",{enumerable:!0,get:function(){return M7s.AliasFS}});var xEn=Gfe();Object.defineProperty(_d,"FakeFS",{enumerable:!0,get:function(){return xEn.FakeFS}});Object.defineProperty(_d,"BasePortableFakeFS",{enumerable:!0,get:function(){return xEn.BasePortableFakeFS}});var H7s=cEn();Object.defineProperty(_d,"CwdFS",{enumerable:!0,get:function(){return H7s.CwdFS}});var Y7s=uEn();Object.defineProperty(_d,"JailFS",{enumerable:!0,get:function(){return Y7s.JailFS}});var Q7s=gEn();Object.defineProperty(_d,"LazyFS",{enumerable:!0,get:function(){return Q7s.LazyFS}});var X7s=AEn();Object.defineProperty(_d,"MountFS",{enumerable:!0,get:function(){return X7s.MountFS}});var J7s=dEn();Object.defineProperty(_d,"NoFS",{enumerable:!0,get:function(){return J7s.NoFS}});var U7s=Ffe();Object.defineProperty(_d,"NodeFS",{enumerable:!0,get:function(){return U7s.NodeFS}});var K7s=pEn();Object.defineProperty(_d,"PosixFS",{enumerable:!0,get:function(){return K7s.PosixFS}});var j7s=i$();Object.defineProperty(_d,"ProxiedFS",{enumerable:!0,get:function(){return j7s.ProxiedFS}});var z7s=fEn();Object.defineProperty(_d,"VirtualFS",{enumerable:!0,get:function(){return z7s.VirtualFS}});var GEn=BEn();Object.defineProperty(_d,"patchFs",{enumerable:!0,get:function(){return GEn.patchFs}});Object.defineProperty(_d,"extendFs",{enumerable:!0,get:function(){return GEn.extendFs}});var q7s=REn();Object.defineProperty(_d,"xfs",{enumerable:!0,get:function(){return q7s.xfs}})});var WEn=H((QOl,VEn)=>{VEn.exports=LEn;LEn.sync=ezs;var FEn=Et("fs");function $7s(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{HEn.exports=PEn;PEn.sync=tzs;var OEn=Et("fs");function PEn(e,t,r){OEn.stat(e,function(n,a){r(n,n?!1:MEn(a,t))})}function tzs(e,t){return MEn(OEn.statSync(e),t)}function MEn(e,t){return e.isFile()&&rzs(e,t)}function rzs(e,t){var r=e.mode,n=e.uid,a=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),l=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),A=parseInt("100",8),f=parseInt("010",8),I=parseInt("001",8),C=A|f,b=r&I||r&f&&a===l||r&A&&n===o||r&C&&o===0;return b}});var XEn=H((UOl,QEn)=>{var JOl=Et("fs"),ilt;process.platform==="win32"||global.TESTING_WINDOWS?ilt=WEn():ilt=YEn();QEn.exports=yjt;yjt.sync=nzs;function yjt(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,a){yjt(e,t||{},function(o,l){o?a(o):n(l)})})}ilt(e,t||{},function(n,a){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,a=!1),r(n,a)})}function nzs(e,t){try{return ilt.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var bjt=H((KOl,qEn)=>{var OSe=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",JEn=Et("path"),izs=OSe?";":":",UEn=XEn(),KEn=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),jEn=(e,t)=>{let r=t.colon||izs,n=e.match(/\//)||OSe&&e.match(/\\/)?[""]:[...OSe?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=OSe?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=OSe?a.split(r):[""];return OSe&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:n,pathExt:o,pathExtExe:a}},zEn=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:a,pathExtExe:o}=jEn(e,t),l=[],A=I=>new Promise((C,b)=>{if(I===n.length)return t.all&&l.length?C(l):b(KEn(e));let E=n[I],N=/^".*"$/.test(E)?E.slice(1,-1):E,B=JEn.join(N,e),F=!N&&/^\.[\\\/]/.test(e)?e.slice(0,2)+B:B;C(f(F,I,0))}),f=(I,C,b)=>new Promise((E,N)=>{if(b===a.length)return E(A(C+1));let B=a[b];UEn(I+B,{pathExt:o},(F,Q)=>{if(!F&&Q)if(t.all)l.push(I+B);else return E(I+B);return E(f(I,C,b+1))})});return r?A(0).then(I=>r(null,I),r):A(0)},szs=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:a}=jEn(e,t),o=[];for(let l=0;l{"use strict";var $En=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Ejt.exports=$En;Ejt.exports.default=$En});var n1n=H((zOl,r1n)=>{"use strict";var e1n=Et("path"),ozs=bjt(),azs=Sjt();function t1n(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=ozs.sync(e.command,{path:r[azs({env:r})],pathExt:t?e1n.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=e1n.resolve(a?e.options.cwd:"",l)),l}function czs(e){return t1n(e)||t1n(e,!0)}r1n.exports=czs});var i1n=H((qOl,Bjt)=>{"use strict";var vjt=/([()\][%!^"`<>&|;, *?])/g;function lzs(e){return e=e.replace(vjt,"^$1"),e}function uzs(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(vjt,"^$1"),t&&(e=e.replace(vjt,"^$1")),e}Bjt.exports.command=lzs;Bjt.exports.argument=uzs});var o1n=H(($Ol,s1n)=>{"use strict";s1n.exports=/^#!(.*)/});var wjt=H((ePl,a1n)=>{"use strict";var gzs=o1n();a1n.exports=(e="")=>{let t=e.match(gzs);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?n:n?`${a} ${n}`:a}});var l1n=H((tPl,c1n)=>{"use strict";var Tjt=Et("fs"),Azs=wjt();function dzs(e){let r=Buffer.alloc(150),n;try{n=Tjt.openSync(e,"r"),Tjt.readSync(n,r,0,150,0),Tjt.closeSync(n)}catch{}return Azs(r.toString())}c1n.exports=dzs});var d1n=H((rPl,A1n)=>{"use strict";var pzs=Et("path"),u1n=n1n(),g1n=i1n(),fzs=l1n(),Izs=process.platform==="win32",hzs=/\.(?:com|exe)$/i,mzs=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Czs(e){e.file=u1n(e);let t=e.file&&fzs(e.file);return t?(e.args.unshift(e.file),e.command=t,u1n(e)):e.file}function _zs(e){if(!Izs)return e;let t=Czs(e),r=!hzs.test(t);if(e.options.forceShell||r){let n=mzs.test(t);e.command=pzs.normalize(e.command),e.command=g1n.command(e.command),e.args=e.args.map(o=>g1n.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function yzs(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:_zs(n)}A1n.exports=yzs});var I1n=H((nPl,f1n)=>{"use strict";var Rjt=process.platform==="win32";function Njt(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function bzs(e,t){if(!Rjt)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=p1n(a,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function p1n(e,t){return Rjt&&e===1&&!t.file?Njt(t.original,"spawn"):null}function Ezs(e,t){return Rjt&&e===1&&!t.file?Njt(t.original,"spawnSync"):null}f1n.exports={hookChildProcess:bzs,verifyENOENT:p1n,verifyENOENTSync:Ezs,notFoundError:Njt}});var slt=H((iPl,PSe)=>{"use strict";var h1n=Et("child_process"),Djt=d1n(),kjt=I1n();function m1n(e,t,r){let n=Djt(e,t,r),a=h1n.spawn(n.command,n.args,n.options);return kjt.hookChildProcess(a,n),a}function Szs(e,t,r){let n=Djt(e,t,r),a=h1n.spawnSync(n.command,n.args,n.options);return a.error=a.error||kjt.verifyENOENTSync(a.status,n),a}PSe.exports=m1n;PSe.exports.spawn=m1n;PSe.exports.sync=Szs;PSe.exports._parse=Djt;PSe.exports._enoent=kjt});var _1n=H((sPl,C1n)=>{"use strict";function vzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Zfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Zfe)}vzs(Zfe,Error);Zfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b>",yn=ca(">>",!1),ke=">&",zt=ca(">&",!1),Fn=">",Nn=ca(">",!1),Hi="<<<",Ao=ca("<<<",!1),Vr="<&",xi=ca("<&",!1),no="<",ga=ca("<",!1),Ya=function(gt){return{type:"argument",segments:[].concat(...gt)}},Gc=function(gt){return gt},ol="$'",Sc=ca("$'",!1),Hr="'",Or=ca("'",!1),Ft=function(gt){return[{type:"text",text:gt}]},zr='""',Rn=ca('""',!1),Pr=function(){return{type:"text",text:""}},Qi='"',ps=ca('"',!1),yo=function(gt){return gt},bo=function(gt){return{type:"arithmetic",arithmetic:gt,quoted:!0}},Qa=function(gt){return{type:"shell",shell:gt,quoted:!0}},gc=function(gt){return{type:"variable",...gt,quoted:!0}},_g=function(gt){return{type:"text",text:gt}},Nc=function(gt){return{type:"arithmetic",arithmetic:gt,quoted:!1}},sA=function(gt){return{type:"shell",shell:gt,quoted:!1}},ma=function(gt){return{type:"variable",...gt,quoted:!1}},vu=function(gt){return{type:"glob",pattern:gt}},li=/^[^']/,Ei=Bl(["'"],!0,!1),Ws=function(gt){return gt.join("")},Xa=/^[^$"]/,ac=Bl(["$",'"'],!0,!1),Ql=`\\ +`}function njt(e,t){return t.replace(/\r?\n/g,i7s(e))}});var s$=H(Wct=>{"use strict";Object.defineProperty(Wct,"__esModule",{value:!0});Wct.ProxiedFS=void 0;var s7s=Ffe(),ijt=class extends s7s.FakeFS{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};Wct.ProxiedFS=ijt});var AEn=H(Oct=>{"use strict";Object.defineProperty(Oct,"__esModule",{value:!0});Oct.AliasFS=void 0;var o7s=s$(),sjt=class extends o7s.ProxiedFS{constructor(t,{baseFs:r,pathUtils:n}){super(n),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}};Oct.AliasFS=sjt});var Zfe=H(Pct=>{"use strict";Object.defineProperty(Pct,"__esModule",{value:!0});Pct.NodeFS=void 0;var a7s=(Wa(),vi(Va)),c7s=a7s.__importDefault(Et("fs")),l7s=Ffe(),ku=Y9();function dEn(e){let t=e;return typeof e.path=="string"&&(t.path=ku.npath.toPortablePath(e.path)),t}var ojt=class extends l7s.BasePortableFakeFS{constructor(t=c7s.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return ku.PortablePath.root}resolve(t){return ku.ppath.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(ku.npath.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(ku.npath.fromPortablePath(t),r):this.realFs.opendirSync(ku.npath.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(ku.npath.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}realpathSync(t){return ku.npath.toPortablePath(this.realFs.realpathSync(ku.npath.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(ku.npath.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(ku.npath.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(ku.npath.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(ku.npath.fromPortablePath(t),r):this.realFs.statSync(ku.npath.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(ku.npath.fromPortablePath(t),r):this.realFs.lstatSync(ku.npath.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(ku.npath.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(ku.npath.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(ku.npath.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(ku.npath.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(ku.npath.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(ku.npath.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(ku.npath.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(ku.npath.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?ku.npath.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?ku.npath.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(dEn)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(ku.npath.toPortablePath)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(dEn):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(ku.npath.toPortablePath):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r):this.realFs.readdirSync(ku.npath.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}readlinkSync(t){return ku.npath.toPortablePath(this.realFs.readlinkSync(ku.npath.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(ku.npath.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(ku.npath.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(ku.npath.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(ku.npath.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}};Pct.NodeFS=ojt});var pEn=H(Mct=>{"use strict";Object.defineProperty(Mct,"__esModule",{value:!0});Mct.CwdFS=void 0;var u7s=Zfe(),g7s=s$(),ajt=Y9(),cjt=class extends g7s.ProxiedFS{constructor(t,{baseFs:r=new u7s.NodeFS}={}){super(ajt.ppath),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?ajt.ppath.normalize(t):this.baseFs.resolve(ajt.ppath.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}};Mct.CwdFS=cjt});var IEn=H(Yct=>{"use strict";Object.defineProperty(Yct,"__esModule",{value:!0});Yct.JailFS=void 0;var A7s=Zfe(),d7s=s$(),Hct=Y9(),fEn=Hct.PortablePath.root,ljt=class extends d7s.ProxiedFS{constructor(t,{baseFs:r=new A7s.NodeFS}={}){super(Hct.ppath),this.target=this.pathUtils.resolve(Hct.PortablePath.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Hct.PortablePath.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(fEn,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(fEn,this.pathUtils.relative(this.target,t))}};Yct.JailFS=ljt});var hEn=H(Qct=>{"use strict";Object.defineProperty(Qct,"__esModule",{value:!0});Qct.LazyFS=void 0;var p7s=s$(),ujt=class extends p7s.ProxiedFS{constructor(t,r){super(r),this.instance=null,this.factory=t}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(t){this.instance=t}mapFromBase(t){return t}mapToBase(t){return t}};Qct.LazyFS=ujt});var mEn=H(Uct=>{"use strict";Object.defineProperty(Uct,"__esModule",{value:!0});Uct.MountFS=void 0;var f7s=(Wa(),vi(Va)),VSe=Et("fs"),I7s=Ffe(),h7s=Zfe(),Xct=tjt(),Q9=f7s.__importStar(Nct()),Jct=Y9(),X9=4278190080,gjt=class extends I7s.BasePortableFakeFS{constructor({baseFs:t=new h7s.NodeFS,filter:r=null,magicByte:n=42,maxOpenFiles:a=1/0,useCache:o=!0,maxAge:l=5e3,typeCheck:A=VSe.constants.S_IFREG,getMountPoint:f,factoryPromise:I,factorySync:C}){if(Math.floor(n)!==n||!(n>1&&n<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super(),this.fdMap=new Map,this.nextFd=3,this.isMount=new Set,this.notMount=new Set,this.realPaths=new Map,this.limitOpenFilesTimeout=null,this.baseFs=t,this.mountInstances=o?new Map:null,this.factoryPromise=I,this.factorySync=C,this.filter=r,this.getMountPoint=f,this.magic=n<<24,this.maxAge=l,this.maxOpenFiles=a,this.typeCheck=A}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if((0,Xct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.saveAndClose?.(),this.mountInstances.delete(t)}discardAndClose(){if((0,Xct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.discardAndClose?.(),this.mountInstances.delete(t)}resolve(t){return this.baseFs.resolve(t)}remapFd(t,r){let n=this.nextFd++|this.magic;return this.fdMap.set(n,[t,r]),n}async openPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.openPromise(t,r,n),async(a,{subPath:o})=>this.remapFd(a,await a.openPromise(o,r,n)))}openSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.openSync(t,r,n),(a,{subPath:o})=>this.remapFd(a,a.openSync(o,r,n)))}async opendirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.opendirPromise(t,r),async(n,{subPath:a})=>await n.opendirPromise(a,r),{requireSubpath:!1})}opendirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.opendirSync(t,r),(n,{subPath:a})=>n.opendirSync(a,r),{requireSubpath:!1})}async readPromise(t,r,n,a,o){if((t&X9)!==this.magic)return await this.baseFs.readPromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Q9.EBADF("read");let[A,f]=l;return await A.readPromise(f,r,n,a,o)}readSync(t,r,n,a,o){if((t&X9)!==this.magic)return this.baseFs.readSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Q9.EBADF("readSync");let[A,f]=l;return A.readSync(f,r,n,a,o)}async writePromise(t,r,n,a,o){if((t&X9)!==this.magic)return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Q9.EBADF("write");let[A,f]=l;return typeof r=="string"?await A.writePromise(f,r,n):await A.writePromise(f,r,n,a,o)}writeSync(t,r,n,a,o){if((t&X9)!==this.magic)return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw Q9.EBADF("writeSync");let[A,f]=l;return typeof r=="string"?A.writeSync(f,r,n):A.writeSync(f,r,n,a,o)}async closePromise(t){if((t&X9)!==this.magic)return await this.baseFs.closePromise(t);let r=this.fdMap.get(t);if(typeof r>"u")throw Q9.EBADF("close");this.fdMap.delete(t);let[n,a]=r;return await n.closePromise(a)}closeSync(t){if((t&X9)!==this.magic)return this.baseFs.closeSync(t);let r=this.fdMap.get(t);if(typeof r>"u")throw Q9.EBADF("closeSync");this.fdMap.delete(t);let[n,a]=r;return n.closeSync(a)}createReadStream(t,r){return t===null?this.baseFs.createReadStream(t,r):this.makeCallSync(t,()=>this.baseFs.createReadStream(t,r),(n,{archivePath:a,subPath:o})=>{let l=n.createReadStream(o,r);return l.path=Jct.npath.fromPortablePath(this.pathUtils.join(a,o)),l})}createWriteStream(t,r){return t===null?this.baseFs.createWriteStream(t,r):this.makeCallSync(t,()=>this.baseFs.createWriteStream(t,r),(n,{subPath:a})=>n.createWriteStream(a,r))}async realpathPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.realpathPromise(t),async(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=await this.baseFs.realpathPromise(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(Jct.PortablePath.root,await r.realpathPromise(a)))})}realpathSync(t){return this.makeCallSync(t,()=>this.baseFs.realpathSync(t),(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=this.baseFs.realpathSync(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(Jct.PortablePath.root,r.realpathSync(a)))})}async existsPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.existsPromise(t),async(r,{subPath:n})=>await r.existsPromise(n))}existsSync(t){return this.makeCallSync(t,()=>this.baseFs.existsSync(t),(r,{subPath:n})=>r.existsSync(n))}async accessPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.accessPromise(t,r),async(n,{subPath:a})=>await n.accessPromise(a,r))}accessSync(t,r){return this.makeCallSync(t,()=>this.baseFs.accessSync(t,r),(n,{subPath:a})=>n.accessSync(a,r))}async statPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.statPromise(t,r),async(n,{subPath:a})=>await n.statPromise(a,r))}statSync(t,r){return this.makeCallSync(t,()=>this.baseFs.statSync(t,r),(n,{subPath:a})=>n.statSync(a,r))}async fstatPromise(t,r){if((t&X9)!==this.magic)return this.baseFs.fstatPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Q9.EBADF("fstat");let[a,o]=n;return a.fstatPromise(o,r)}fstatSync(t,r){if((t&X9)!==this.magic)return this.baseFs.fstatSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Q9.EBADF("fstatSync");let[a,o]=n;return a.fstatSync(o,r)}async lstatPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.lstatPromise(t,r),async(n,{subPath:a})=>await n.lstatPromise(a,r))}lstatSync(t,r){return this.makeCallSync(t,()=>this.baseFs.lstatSync(t,r),(n,{subPath:a})=>n.lstatSync(a,r))}async fchmodPromise(t,r){if((t&X9)!==this.magic)return this.baseFs.fchmodPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Q9.EBADF("fchmod");let[a,o]=n;return a.fchmodPromise(o,r)}fchmodSync(t,r){if((t&X9)!==this.magic)return this.baseFs.fchmodSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Q9.EBADF("fchmodSync");let[a,o]=n;return a.fchmodSync(o,r)}async chmodPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.chmodPromise(t,r),async(n,{subPath:a})=>await n.chmodPromise(a,r))}chmodSync(t,r){return this.makeCallSync(t,()=>this.baseFs.chmodSync(t,r),(n,{subPath:a})=>n.chmodSync(a,r))}async fchownPromise(t,r,n){if((t&X9)!==this.magic)return this.baseFs.fchownPromise(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw Q9.EBADF("fchown");let[o,l]=a;return o.fchownPromise(l,r,n)}fchownSync(t,r,n){if((t&X9)!==this.magic)return this.baseFs.fchownSync(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw Q9.EBADF("fchownSync");let[o,l]=a;return o.fchownSync(l,r,n)}async chownPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.chownPromise(t,r,n),async(a,{subPath:o})=>await a.chownPromise(o,r,n))}chownSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.chownSync(t,r,n),(a,{subPath:o})=>a.chownSync(o,r,n))}async renamePromise(t,r){return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(t,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(n,{subPath:a})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await n.renamePromise(a,l)}))}renameSync(t,r){return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(t,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(n,{subPath:a})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return n.renameSync(a,l)}))}async copyFilePromise(t,r,n=0){let a=async(o,l,A,f)=>{if(n&VSe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&VSe.constants.COPYFILE_EXCL&&await this.existsPromise(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=await o.readFilePromise(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}await A.writeFilePromise(f,I)};return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(t,r,n),async(o,{subPath:l})=>await a(this.baseFs,t,o,l)),async(o,{subPath:l})=>await this.makeCallPromise(r,async()=>await a(o,l,this.baseFs,r),async(A,{subPath:f})=>o!==A?await a(o,l,A,f):await o.copyFilePromise(l,f,n)))}copyFileSync(t,r,n=0){let a=(o,l,A,f)=>{if(n&VSe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&VSe.constants.COPYFILE_EXCL&&this.existsSync(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=o.readFileSync(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}A.writeFileSync(f,I)};return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(t,r,n),(o,{subPath:l})=>a(this.baseFs,t,o,l)),(o,{subPath:l})=>this.makeCallSync(r,()=>a(o,l,this.baseFs,r),(A,{subPath:f})=>o!==A?a(o,l,A,f):o.copyFileSync(l,f,n)))}async appendFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.appendFilePromise(t,r,n),async(a,{subPath:o})=>await a.appendFilePromise(o,r,n))}appendFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.appendFileSync(t,r,n),(a,{subPath:o})=>a.appendFileSync(o,r,n))}async writeFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.writeFilePromise(t,r,n),async(a,{subPath:o})=>await a.writeFilePromise(o,r,n))}writeFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.writeFileSync(t,r,n),(a,{subPath:o})=>a.writeFileSync(o,r,n))}async unlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.unlinkPromise(t),async(r,{subPath:n})=>await r.unlinkPromise(n))}unlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.unlinkSync(t),(r,{subPath:n})=>r.unlinkSync(n))}async utimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.utimesPromise(t,r,n),async(a,{subPath:o})=>await a.utimesPromise(o,r,n))}utimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.utimesSync(t,r,n),(a,{subPath:o})=>a.utimesSync(o,r,n))}async lutimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.lutimesPromise(t,r,n),async(a,{subPath:o})=>await a.lutimesPromise(o,r,n))}lutimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.lutimesSync(t,r,n),(a,{subPath:o})=>a.lutimesSync(o,r,n))}async mkdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.mkdirPromise(t,r),async(n,{subPath:a})=>await n.mkdirPromise(a,r))}mkdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.mkdirSync(t,r),(n,{subPath:a})=>n.mkdirSync(a,r))}async rmdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmdirPromise(t,r),async(n,{subPath:a})=>await n.rmdirPromise(a,r))}rmdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmdirSync(t,r),(n,{subPath:a})=>n.rmdirSync(a,r))}async rmPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmPromise(t,r),async(n,{subPath:a})=>await n.rmPromise(a,r))}rmSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmSync(t,r),(n,{subPath:a})=>n.rmSync(a,r))}async linkPromise(t,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(t,r),async(n,{subPath:a})=>await n.linkPromise(t,a))}linkSync(t,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(t,r),(n,{subPath:a})=>n.linkSync(t,a))}async symlinkPromise(t,r,n){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(t,r,n),async(a,{subPath:o})=>await a.symlinkPromise(t,o))}symlinkSync(t,r,n){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(t,r,n),(a,{subPath:o})=>a.symlinkSync(t,o))}async readFilePromise(t,r){return this.makeCallPromise(t,async()=>await this.baseFs.readFilePromise(t,r),async(n,{subPath:a})=>await n.readFilePromise(a,r))}readFileSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readFileSync(t,r),(n,{subPath:a})=>n.readFileSync(a,r))}async readdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.readdirPromise(t,r),async(n,{subPath:a})=>await n.readdirPromise(a,r),{requireSubpath:!1})}readdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readdirSync(t,r),(n,{subPath:a})=>n.readdirSync(a,r),{requireSubpath:!1})}async readlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.readlinkPromise(t),async(r,{subPath:n})=>await r.readlinkPromise(n))}readlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.readlinkSync(t),(r,{subPath:n})=>r.readlinkSync(n))}async truncatePromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.truncatePromise(t,r),async(n,{subPath:a})=>await n.truncatePromise(a,r))}truncateSync(t,r){return this.makeCallSync(t,()=>this.baseFs.truncateSync(t,r),(n,{subPath:a})=>n.truncateSync(a,r))}async ftruncatePromise(t,r){if((t&X9)!==this.magic)return this.baseFs.ftruncatePromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Q9.EBADF("ftruncate");let[a,o]=n;return a.ftruncatePromise(o,r)}ftruncateSync(t,r){if((t&X9)!==this.magic)return this.baseFs.ftruncateSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw Q9.EBADF("ftruncateSync");let[a,o]=n;return a.ftruncateSync(o,r)}watch(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watch(t,r,n),(a,{subPath:o})=>a.watch(o,r,n))}watchFile(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watchFile(t,r,n),()=>(0,Xct.watchFile)(this,t,r,n))}unwatchFile(t,r){return this.makeCallSync(t,()=>this.baseFs.unwatchFile(t,r),()=>(0,Xct.unwatchFile)(this,t,r))}async makeCallPromise(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return await r();let o=this.resolve(t),l=this.findMount(o);return l?a&&l.subPath==="/"?await r():await this.getMountPromise(l.archivePath,async A=>await n(A,l)):await r()}makeCallSync(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return r();let o=this.resolve(t),l=this.findMount(o);return!l||a&&l.subPath==="/"?r():this.getMountSync(l.archivePath,A=>n(A,l))}findMount(t){if(this.filter&&!this.filter.test(t))return null;let r="";for(;;){let n=t.substring(r.length),a=this.getMountPoint(n,r);if(!a)return null;if(r=this.pathUtils.join(r,a),!this.isMount.has(r)){if(this.notMount.has(r))continue;try{if(this.typeCheck!==null&&(this.baseFs.statSync(r).mode&VSe.constants.S_IFMT)!==this.typeCheck){this.notMount.add(r);continue}}catch{return null}this.isMount.add(r)}return{archivePath:r,subPath:this.pathUtils.join(Jct.PortablePath.root,t.substring(r.length))}}}limitOpenFiles(t){if(this.mountInstances===null)return;let r=Date.now(),n=r+this.maxAge,a=t===null?0:this.mountInstances.size-t;for(let[o,{childFs:l,expiresAt:A,refCount:f}]of this.mountInstances.entries())if(!(f!==0||l.hasOpenFileHandles?.())){if(r>=A){l.saveAndClose?.(),this.mountInstances.delete(o),a-=1;continue}else if(t===null||a<=0){n=A;break}l.saveAndClose?.(),this.mountInstances.delete(o),a-=1}this.limitOpenFilesTimeout===null&&(t===null&&this.mountInstances.size>0||t!==null)&&isFinite(n)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},n-r).unref())}async getMountPromise(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);if(!n){let a=await this.factoryPromise(this.baseFs,t);n=this.mountInstances.get(t),n||(n={childFs:a(),expiresAt:0,refCount:0})}this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.childFs)}finally{n.refCount-=1}}else{let n=(await this.factoryPromise(this.baseFs,t))();try{return await r(n)}finally{n.saveAndClose?.()}}}getMountSync(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);return n||(n={childFs:this.factorySync(this.baseFs,t),expiresAt:0,refCount:0}),this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,r(n.childFs)}else{let n=this.factorySync(this.baseFs,t);try{return r(n)}finally{n.saveAndClose?.()}}}};Uct.MountFS=gjt});var CEn=H(Kct=>{"use strict";Object.defineProperty(Kct,"__esModule",{value:!0});Kct.NoFS=void 0;var m7s=Ffe(),C7s=Y9(),Og=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),h3e=class extends m7s.FakeFS{constructor(){super(C7s.ppath)}getExtractHint(){throw Og()}getRealPath(){throw Og()}resolve(){throw Og()}async openPromise(){throw Og()}openSync(){throw Og()}async opendirPromise(){throw Og()}opendirSync(){throw Og()}async readPromise(){throw Og()}readSync(){throw Og()}async writePromise(){throw Og()}writeSync(){throw Og()}async closePromise(){throw Og()}closeSync(){throw Og()}createWriteStream(){throw Og()}createReadStream(){throw Og()}async realpathPromise(){throw Og()}realpathSync(){throw Og()}async readdirPromise(){throw Og()}readdirSync(){throw Og()}async existsPromise(t){throw Og()}existsSync(t){throw Og()}async accessPromise(){throw Og()}accessSync(){throw Og()}async statPromise(){throw Og()}statSync(){throw Og()}async fstatPromise(t){throw Og()}fstatSync(t){throw Og()}async lstatPromise(t){throw Og()}lstatSync(t){throw Og()}async fchmodPromise(){throw Og()}fchmodSync(){throw Og()}async chmodPromise(){throw Og()}chmodSync(){throw Og()}async fchownPromise(){throw Og()}fchownSync(){throw Og()}async chownPromise(){throw Og()}chownSync(){throw Og()}async mkdirPromise(){throw Og()}mkdirSync(){throw Og()}async rmdirPromise(){throw Og()}rmdirSync(){throw Og()}async rmPromise(){throw Og()}rmSync(){throw Og()}async linkPromise(){throw Og()}linkSync(){throw Og()}async symlinkPromise(){throw Og()}symlinkSync(){throw Og()}async renamePromise(){throw Og()}renameSync(){throw Og()}async copyFilePromise(){throw Og()}copyFileSync(){throw Og()}async appendFilePromise(){throw Og()}appendFileSync(){throw Og()}async writeFilePromise(){throw Og()}writeFileSync(){throw Og()}async unlinkPromise(){throw Og()}unlinkSync(){throw Og()}async utimesPromise(){throw Og()}utimesSync(){throw Og()}async lutimesPromise(){throw Og()}lutimesSync(){throw Og()}async readFilePromise(){throw Og()}readFileSync(){throw Og()}async readlinkPromise(){throw Og()}readlinkSync(){throw Og()}async truncatePromise(){throw Og()}truncateSync(){throw Og()}async ftruncatePromise(t,r){throw Og()}ftruncateSync(t,r){throw Og()}watch(){throw Og()}watchFile(){throw Og()}unwatchFile(){throw Og()}};Kct.NoFS=h3e;h3e.instance=new h3e});var _En=H(jct=>{"use strict";Object.defineProperty(jct,"__esModule",{value:!0});jct.PosixFS=void 0;var _7s=s$(),Ajt=Y9(),djt=class extends _7s.ProxiedFS{constructor(t){super(Ajt.npath),this.baseFs=t}mapFromBase(t){return Ajt.npath.fromPortablePath(t)}mapToBase(t){return Ajt.npath.toPortablePath(t)}};jct.PosixFS=djt});var yEn=H(zct=>{"use strict";Object.defineProperty(zct,"__esModule",{value:!0});zct.VirtualFS=void 0;var y7s=Zfe(),b7s=s$(),gX=Y9(),E7s=/^[0-9]+$/,pjt=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,S7s=/^([^/]+-)?[a-f0-9]+$/,fjt=class e extends b7s.ProxiedFS{static makeVirtualPath(t,r,n){if(gX.ppath.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!gX.ppath.basename(r).match(S7s))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=gX.ppath.relative(gX.ppath.dirname(t),n).split("/"),l=0;for(;l{"use strict";Object.defineProperty(qct,"__esModule",{value:!0});qct.NodePathFS=void 0;var v7s=(Wa(),vi(Va)),bEn=v7s.__importDefault(Et("buffer")),B7s=Et("url"),w7s=Et("util"),T7s=s$(),R7s=Y9(),Ijt=class extends T7s.ProxiedFS{constructor(t){super(R7s.npath),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,B7s.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!N7s(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,w7s.inspect)(t)}`)}};qct.NodePathFS=Ijt;function N7s(e,t){return typeof bEn.default.isUtf8<"u"?bEn.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}});var TEn=H(tlt=>{"use strict";var SEn,vEn,BEn,wEn;Object.defineProperty(tlt,"__esModule",{value:!0});tlt.FileHandle=void 0;var D7s=Et("readline"),TZ=Symbol("kBaseFs"),Aoe=Symbol("kFd"),doe=Symbol("kClosePromise"),$ct=Symbol("kCloseResolve"),elt=Symbol("kCloseReject"),WSe=Symbol("kRefs"),AX=Symbol("kRef"),dX=Symbol("kUnref"),hjt=class{constructor(t,r){this[SEn]=1,this[vEn]=void 0,this[BEn]=void 0,this[wEn]=void 0,this[TZ]=r,this[Aoe]=t}get fd(){return this[Aoe]}async appendFile(t,r){try{this[AX](this.appendFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;return await this[TZ].appendFilePromise(this.fd,t,n?{encoding:n}:void 0)}finally{this[dX]()}}async chown(t,r){try{return this[AX](this.chown),await this[TZ].fchownPromise(this.fd,t,r)}finally{this[dX]()}}async chmod(t){try{return this[AX](this.chmod),await this[TZ].fchmodPromise(this.fd,t)}finally{this[dX]()}}createReadStream(t){return this[TZ].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[TZ].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,n,a){try{this[AX](this.read);let o,l;return ArrayBuffer.isView(t)?typeof r=="object"&&r!==null?(o=t,l=r?.offset??0,n=r?.length??o.byteLength-l,a=r?.position??null):(o=t,l=r??0,n??=0):(o=t?.buffer??Buffer.alloc(16384),l=t?.offset??0,n=t?.length??o.byteLength-l,a=t?.position??null),n===0?{bytesRead:n,buffer:o}:{bytesRead:await this[TZ].readPromise(this.fd,Buffer.isBuffer(o)?o:Buffer.from(o.buffer,o.byteOffset,o.byteLength),l,n,a),buffer:o}}finally{this[dX]()}}async readFile(t){try{this[AX](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[TZ].readFilePromise(this.fd,r)}finally{this[dX]()}}readLines(t){return(0,D7s.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[AX](this.stat),await this[TZ].fstatPromise(this.fd,t)}finally{this[dX]()}}async truncate(t){try{return this[AX](this.truncate),await this[TZ].ftruncatePromise(this.fd,t)}finally{this[dX]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[AX](this.writeFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;await this[TZ].writeFilePromise(this.fd,t,n)}finally{this[dX]()}}async write(...t){try{if(this[AX](this.write),ArrayBuffer.isView(t[0])){let[r,n,a,o]=t;return{bytesWritten:await this[TZ].writePromise(this.fd,r,n??void 0,a??void 0,o??void 0),buffer:r}}else{let[r,n,a]=t;return{bytesWritten:await this[TZ].writePromise(this.fd,r,n,a),buffer:r}}}finally{this[dX]()}}async writev(t,r){try{this[AX](this.writev);let n=0;if(typeof r<"u")for(let a of t){let o=await this.write(a,void 0,void 0,r);n+=o.bytesWritten,r+=o.bytesWritten}else for(let a of t){let o=await this.write(a);n+=o.bytesWritten}return{buffers:t,bytesWritten:n}}finally{this[dX]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[Aoe]===-1)return Promise.resolve();if(this[doe])return this[doe];if(this[WSe]--,this[WSe]===0){let t=this[Aoe];this[Aoe]=-1,this[doe]=this[TZ].closePromise(t).finally(()=>{this[doe]=void 0})}else this[doe]=new Promise((t,r)=>{this[$ct]=t,this[elt]=r}).finally(()=>{this[doe]=void 0,this[elt]=void 0,this[$ct]=void 0});return this[doe]}[(SEn=WSe,vEn=doe,BEn=$ct,wEn=elt,AX)](t){if(this[Aoe]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[WSe]++}[dX](){if(this[WSe]--,this[WSe]===0){let t=this[Aoe];this[Aoe]=-1,this[TZ].closePromise(t).then(this[$ct],this[elt])}}};tlt.FileHandle=hjt});var kEn=H(rlt=>{"use strict";Object.defineProperty(rlt,"__esModule",{value:!0});rlt.patchFs=DEn;rlt.extendFs=G7s;var m3e=Et("util"),k7s=EEn(),REn=TEn(),x7s=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),NEn=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]);function DEn(e,t){t=new k7s.NodePathFS(t);let r=(n,a,o)=>{let l=n[a];n[a]=o,typeof l?.[m3e.promisify.custom]<"u"&&(o[m3e.promisify.custom]=l[m3e.promisify.custom])};{r(e,"exists",(n,...a)=>{let l=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(n).then(A=>{l(A)},()=>{l(!1)})})}),r(e,"read",(...n)=>{let[a,o,l,A,f,I]=n;if(n.length<=3){let C={};n.length<3?I=n[1]:(C=n[1],I=n[2]),{buffer:o=Buffer.alloc(16384),offset:l=0,length:A=o.byteLength,position:f}=C}if(l==null&&(l=0),A|=0,A===0){process.nextTick(()=>{I(null,0,o)});return}f==null&&(f=-1),process.nextTick(()=>{t.readPromise(a,o,l,A,f).then(C=>{I(null,C,o)},C=>{I(C,0,o)})})});for(let n of NEn){let a=n.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let o=t[n];if(typeof o>"u")continue;r(e,a,(...A)=>{let I=typeof A[A.length-1]=="function"?A.pop():()=>{};process.nextTick(()=>{o.apply(t,A).then(C=>{I(null,C)},C=>{I(C)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",n=>{try{return t.existsSync(n)}catch{return!1}}),r(e,"readSync",(...n)=>{let[a,o,l,A,f]=n;return n.length<=3&&({offset:l=0,length:A=o.byteLength,position:f}=n[2]||{}),l==null&&(l=0),A|=0,A===0?0:(f==null&&(f=-1),t.readSync(a,o,l,A,f))});for(let n of x7s){let a=n;if(typeof e[a]>"u")continue;let o=t[n];typeof o>"u"||r(e,a,o.bind(t))}e.realpathSync.native=e.realpathSync}{let n=e.promises;for(let a of NEn){let o=a.replace(/Promise$/,"");if(typeof n[o]>"u")continue;let l=t[a];typeof l>"u"||a!=="open"&&r(n,o,(A,...f)=>A instanceof REn.FileHandle?A[o].apply(A,f):l.call(t,A,...f))}r(n,"open",async(...a)=>{let o=await t.openPromise(...a);return new REn.FileHandle(o,t)})}e.read[m3e.promisify.custom]=async(n,a,...o)=>({bytesRead:await t.readPromise(n,a,...o),buffer:a}),e.write[m3e.promisify.custom]=async(n,a,...o)=>({bytesWritten:await t.writePromise(n,a,...o),buffer:a})}function G7s(e,t){let r=Object.create(e);return DEn(r,t),r}});var FEn=H(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});poe.xfs=void 0;var F7s=(Wa(),vi(Va)),Z7s=F7s.__importDefault(Et("os")),L7s=Zfe(),C3e=Y9();function xEn(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}var pX=new Set,mjt=null;function GEn(){if(mjt)return mjt;let e=C3e.npath.toPortablePath(Z7s.default.tmpdir()),t=poe.xfs.realpathSync(e);return process.once("exit",()=>{poe.xfs.rmtempSync()}),mjt={tmpdir:e,realTmpdir:t}}poe.xfs=Object.assign(new L7s.NodeFS,{detachTemp(e){pX.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=GEn();for(;;){let n=xEn("xfs-");try{this.mkdirSync(C3e.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=C3e.ppath.join(r,n);if(pX.add(a),typeof e>"u")return a;try{return e(a)}finally{if(pX.has(a)){pX.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=GEn();for(;;){let n=xEn("xfs-");try{await this.mkdirPromise(C3e.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=C3e.ppath.join(r,n);if(pX.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(pX.has(a)){pX.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(pX.values()).map(async e=>{try{await poe.xfs.removePromise(e,{maxRetries:0}),pX.delete(e)}catch{}}))},rmtempSync(){for(let e of pX)try{poe.xfs.removeSync(e),pX.delete(e)}catch{}}})});var No=H(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.xfs=_d.extendFs=_d.patchFs=_d.VirtualFS=_d.ProxiedFS=_d.PosixFS=_d.NodeFS=_d.NoFS=_d.MountFS=_d.LazyFS=_d.JailFS=_d.CwdFS=_d.BasePortableFakeFS=_d.FakeFS=_d.AliasFS=_d.ppath=_d.npath=_d.Filename=_d.PortablePath=_d.normalizeLineEndings=_d.unwatchAllFiles=_d.unwatchFile=_d.watchFile=_d.CustomDir=_d.opendir=_d.setupCopyIndex=_d.statUtils=_d.errors=_d.constants=void 0;var Cjt=(Wa(),vi(Va)),V7s=Cjt.__importStar(Rct());_d.constants=V7s;var W7s=Cjt.__importStar(Nct());_d.errors=W7s;var O7s=Cjt.__importStar(K6t());_d.statUtils=O7s;var P7s=q6t();Object.defineProperty(_d,"setupCopyIndex",{enumerable:!0,get:function(){return P7s.setupCopyIndex}});var ZEn=cEn();Object.defineProperty(_d,"opendir",{enumerable:!0,get:function(){return ZEn.opendir}});Object.defineProperty(_d,"CustomDir",{enumerable:!0,get:function(){return ZEn.CustomDir}});var _jt=tjt();Object.defineProperty(_d,"watchFile",{enumerable:!0,get:function(){return _jt.watchFile}});Object.defineProperty(_d,"unwatchFile",{enumerable:!0,get:function(){return _jt.unwatchFile}});Object.defineProperty(_d,"unwatchAllFiles",{enumerable:!0,get:function(){return _jt.unwatchAllFiles}});var M7s=Ffe();Object.defineProperty(_d,"normalizeLineEndings",{enumerable:!0,get:function(){return M7s.normalizeLineEndings}});var LEn=Y9();Object.defineProperty(_d,"PortablePath",{enumerable:!0,get:function(){return LEn.PortablePath}});Object.defineProperty(_d,"Filename",{enumerable:!0,get:function(){return LEn.Filename}});var VEn=Y9();Object.defineProperty(_d,"npath",{enumerable:!0,get:function(){return VEn.npath}});Object.defineProperty(_d,"ppath",{enumerable:!0,get:function(){return VEn.ppath}});var H7s=AEn();Object.defineProperty(_d,"AliasFS",{enumerable:!0,get:function(){return H7s.AliasFS}});var WEn=Ffe();Object.defineProperty(_d,"FakeFS",{enumerable:!0,get:function(){return WEn.FakeFS}});Object.defineProperty(_d,"BasePortableFakeFS",{enumerable:!0,get:function(){return WEn.BasePortableFakeFS}});var Y7s=pEn();Object.defineProperty(_d,"CwdFS",{enumerable:!0,get:function(){return Y7s.CwdFS}});var Q7s=IEn();Object.defineProperty(_d,"JailFS",{enumerable:!0,get:function(){return Q7s.JailFS}});var X7s=hEn();Object.defineProperty(_d,"LazyFS",{enumerable:!0,get:function(){return X7s.LazyFS}});var J7s=mEn();Object.defineProperty(_d,"MountFS",{enumerable:!0,get:function(){return J7s.MountFS}});var U7s=CEn();Object.defineProperty(_d,"NoFS",{enumerable:!0,get:function(){return U7s.NoFS}});var K7s=Zfe();Object.defineProperty(_d,"NodeFS",{enumerable:!0,get:function(){return K7s.NodeFS}});var j7s=_En();Object.defineProperty(_d,"PosixFS",{enumerable:!0,get:function(){return j7s.PosixFS}});var z7s=s$();Object.defineProperty(_d,"ProxiedFS",{enumerable:!0,get:function(){return z7s.ProxiedFS}});var q7s=yEn();Object.defineProperty(_d,"VirtualFS",{enumerable:!0,get:function(){return q7s.VirtualFS}});var OEn=kEn();Object.defineProperty(_d,"patchFs",{enumerable:!0,get:function(){return OEn.patchFs}});Object.defineProperty(_d,"extendFs",{enumerable:!0,get:function(){return OEn.extendFs}});var $7s=FEn();Object.defineProperty(_d,"xfs",{enumerable:!0,get:function(){return $7s.xfs}})});var QEn=H((MPl,YEn)=>{YEn.exports=HEn;HEn.sync=tzs;var PEn=Et("fs");function ezs(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{KEn.exports=JEn;JEn.sync=rzs;var XEn=Et("fs");function JEn(e,t,r){XEn.stat(e,function(n,a){r(n,n?!1:UEn(a,t))})}function rzs(e,t){return UEn(XEn.statSync(e),t)}function UEn(e,t){return e.isFile()&&nzs(e,t)}function nzs(e,t){var r=e.mode,n=e.uid,a=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),l=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),A=parseInt("100",8),f=parseInt("010",8),I=parseInt("001",8),C=A|f,b=r&I||r&f&&a===l||r&A&&n===o||r&C&&o===0;return b}});var qEn=H((QPl,zEn)=>{var YPl=Et("fs"),nlt;process.platform==="win32"||global.TESTING_WINDOWS?nlt=QEn():nlt=jEn();zEn.exports=yjt;yjt.sync=izs;function yjt(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,a){yjt(e,t||{},function(o,l){o?a(o):n(l)})})}nlt(e,t||{},function(n,a){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,a=!1),r(n,a)})}function izs(e,t){try{return nlt.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var bjt=H((XPl,i1n)=>{var OSe=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",$En=Et("path"),szs=OSe?";":":",e1n=qEn(),t1n=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),r1n=(e,t)=>{let r=t.colon||szs,n=e.match(/\//)||OSe&&e.match(/\\/)?[""]:[...OSe?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=OSe?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=OSe?a.split(r):[""];return OSe&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:n,pathExt:o,pathExtExe:a}},n1n=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:a,pathExtExe:o}=r1n(e,t),l=[],A=I=>new Promise((C,b)=>{if(I===n.length)return t.all&&l.length?C(l):b(t1n(e));let E=n[I],N=/^".*"$/.test(E)?E.slice(1,-1):E,B=$En.join(N,e),F=!N&&/^\.[\\\/]/.test(e)?e.slice(0,2)+B:B;C(f(F,I,0))}),f=(I,C,b)=>new Promise((E,N)=>{if(b===a.length)return E(A(C+1));let B=a[b];e1n(I+B,{pathExt:o},(F,Q)=>{if(!F&&Q)if(t.all)l.push(I+B);else return E(I+B);return E(f(I,C,b+1))})});return r?A(0).then(I=>r(null,I),r):A(0)},ozs=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:a}=r1n(e,t),o=[];for(let l=0;l{"use strict";var s1n=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Ejt.exports=s1n;Ejt.exports.default=s1n});var l1n=H((UPl,c1n)=>{"use strict";var o1n=Et("path"),azs=bjt(),czs=Sjt();function a1n(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=azs.sync(e.command,{path:r[czs({env:r})],pathExt:t?o1n.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=o1n.resolve(a?e.options.cwd:"",l)),l}function lzs(e){return a1n(e)||a1n(e,!0)}c1n.exports=lzs});var u1n=H((KPl,Bjt)=>{"use strict";var vjt=/([()\][%!^"`<>&|;, *?])/g;function uzs(e){return e=e.replace(vjt,"^$1"),e}function gzs(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(vjt,"^$1"),t&&(e=e.replace(vjt,"^$1")),e}Bjt.exports.command=uzs;Bjt.exports.argument=gzs});var A1n=H((jPl,g1n)=>{"use strict";g1n.exports=/^#!(.*)/});var wjt=H((zPl,d1n)=>{"use strict";var Azs=A1n();d1n.exports=(e="")=>{let t=e.match(Azs);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?n:n?`${a} ${n}`:a}});var f1n=H((qPl,p1n)=>{"use strict";var Tjt=Et("fs"),dzs=wjt();function pzs(e){let r=Buffer.alloc(150),n;try{n=Tjt.openSync(e,"r"),Tjt.readSync(n,r,0,150,0),Tjt.closeSync(n)}catch{}return dzs(r.toString())}p1n.exports=pzs});var C1n=H(($Pl,m1n)=>{"use strict";var fzs=Et("path"),I1n=l1n(),h1n=u1n(),Izs=f1n(),hzs=process.platform==="win32",mzs=/\.(?:com|exe)$/i,Czs=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function _zs(e){e.file=I1n(e);let t=e.file&&Izs(e.file);return t?(e.args.unshift(e.file),e.command=t,I1n(e)):e.file}function yzs(e){if(!hzs)return e;let t=_zs(e),r=!mzs.test(t);if(e.options.forceShell||r){let n=Czs.test(t);e.command=fzs.normalize(e.command),e.command=h1n.command(e.command),e.args=e.args.map(o=>h1n.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function bzs(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:yzs(n)}m1n.exports=bzs});var b1n=H((e3l,y1n)=>{"use strict";var Rjt=process.platform==="win32";function Njt(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function Ezs(e,t){if(!Rjt)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=_1n(a,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function _1n(e,t){return Rjt&&e===1&&!t.file?Njt(t.original,"spawn"):null}function Szs(e,t){return Rjt&&e===1&&!t.file?Njt(t.original,"spawnSync"):null}y1n.exports={hookChildProcess:Ezs,verifyENOENT:_1n,verifyENOENTSync:Szs,notFoundError:Njt}});var ilt=H((t3l,PSe)=>{"use strict";var E1n=Et("child_process"),Djt=C1n(),kjt=b1n();function S1n(e,t,r){let n=Djt(e,t,r),a=E1n.spawn(n.command,n.args,n.options);return kjt.hookChildProcess(a,n),a}function vzs(e,t,r){let n=Djt(e,t,r),a=E1n.spawnSync(n.command,n.args,n.options);return a.error=a.error||kjt.verifyENOENTSync(a.status,n),a}PSe.exports=S1n;PSe.exports.spawn=S1n;PSe.exports.sync=vzs;PSe.exports._parse=Djt;PSe.exports._enoent=kjt});var B1n=H((r3l,v1n)=>{"use strict";function Bzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Lfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Lfe)}Bzs(Lfe,Error);Lfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b>",_n=ca(">>",!1),ke=">&",zt=ca(">&",!1),Fn=">",Nn=ca(">",!1),Hi="<<<",Ao=ca("<<<",!1),Vr="<&",xi=ca("<&",!1),no="<",ga=ca("<",!1),Ya=function(gt){return{type:"argument",segments:[].concat(...gt)}},Gc=function(gt){return gt},al="$'",Sc=ca("$'",!1),Hr="'",Or=ca("'",!1),Ft=function(gt){return[{type:"text",text:gt}]},zr='""',Rn=ca('""',!1),Pr=function(){return{type:"text",text:""}},Qi='"',ps=ca('"',!1),_o=function(gt){return gt},yo=function(gt){return{type:"arithmetic",arithmetic:gt,quoted:!0}},Qa=function(gt){return{type:"shell",shell:gt,quoted:!0}},gc=function(gt){return{type:"variable",...gt,quoted:!0}},_g=function(gt){return{type:"text",text:gt}},Nc=function(gt){return{type:"arithmetic",arithmetic:gt,quoted:!1}},oA=function(gt){return{type:"shell",shell:gt,quoted:!1}},ma=function(gt){return{type:"variable",...gt,quoted:!1}},vu=function(gt){return{type:"glob",pattern:gt}},li=/^[^']/,Ei=wl(["'"],!0,!1),Ws=function(gt){return gt.join("")},Xa=/^[^$"]/,ac=wl(["$",'"'],!0,!1),Ql=`\\ `,Oc=ca(`\\ -`,!1),vg=function(){return""},Kl="\\",Ju=ca("\\",!1),Da=/^[\\$"`]/,fu=Bl(["\\","$",'"',"`"],!1,!1),yg=function(gt){return gt},_I="\\a",Kh=ca("\\a",!1),Ri=function(){return"a"},Do="\\b",Pt=ca("\\b",!1),Hu=function(){return"\b"},Ru=/^[Ee]/,Vs=Bl(["E","e"],!1,!1),Uu=function(){return"\x1B"},Yn="\\f",Ko=ca("\\f",!1),Sg=function(){return"\f"},HA="\\n",ZA=ca("\\n",!1),$i=function(){return` -`},gl="\\r",zf=ca("\\r",!1),zd=function(){return"\r"},aA="\\t",so=ca("\\t",!1),Ki=function(){return" "},cc="\\v",Xs=ca("\\v",!1),ws=function(){return"\v"},Gs=/^[\\'"?]/,Ma=Bl(["\\","'",'"',"?"],!1,!1),Dc=function(gt){return String.fromCharCode(parseInt(gt,16))},As="\\x",Nf=ca("\\x",!1),Am="\\u",Zl=ca("\\u",!1),rc="\\U",ad=ca("\\U",!1),Qm=function(gt){return String.fromCodePoint(parseInt(gt,16))},rl=/^[0-7]/,LA=Bl([["0","7"]],!1,!1),VA=/^[0-9a-fA-f]/,bl=Bl([["0","9"],["a","f"],["A","f"]],!1,!1),bg=eA(),Yp="{}",YA=ca("{}",!1),vr=function(){return"{}"},Zt="-",bn=ca("-",!1),ls="+",oa=ca("+",!1),Fs=".",Oa=ca(".",!1),Ca=function(gt,ar,Jr){return{type:"number",value:(gt==="-"?-1:1)*parseFloat(ar.join("")+"."+Jr.join(""))}},gd=function(gt,ar){return{type:"number",value:(gt==="-"?-1:1)*parseInt(ar.join(""))}},Dp=function(gt){return{type:"variable",...gt}},sp=function(gt){return{type:"variable",name:gt}},QA=function(gt){return gt},ff="*",Zs=ca("*",!1),io="/",Ea=ca("/",!1),Hl=function(gt,ar,Jr){return{type:ar==="*"?"multiplication":"division",right:Jr}},Dr=function(gt,ar){return ar.reduce((Jr,Gn)=>({left:Jr,...Gn}),gt)},On=function(gt,ar,Jr){return{type:ar==="+"?"addition":"subtraction",right:Jr}},di="$((",aa=ca("$((",!1),Bo="))",us=ca("))",!1),Xl=function(gt){return gt},WA="$(",If=ca("$(",!1),rf=function(gt){return gt},op="${",bd=ca("${",!1),$1=":-",Cw=ca(":-",!1),XA=function(gt,ar){return{name:gt,defaultValue:ar}},Ac=":-}",Gm=ca(":-}",!1),JS=function(gt){return{name:gt,defaultValue:[]}},qd=":+",hh=ca(":+",!1),Qp=function(gt,ar){return{name:gt,alternativeValue:ar}},dC=":+}",oE=ca(":+}",!1),K_=function(gt){return{name:gt,alternativeValue:[]}},ey=function(gt){return{name:gt}},KE="$",NC=ca("$",!1),n_=function(gt){return t.isGlobPattern(gt)},up=function(gt){return gt},Xm=/^[a-zA-Z0-9_]/,hb=Bl([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),pe=function(){return $n()},dm=/^[$@*?#a-zA-Z0-9_\-]/,qf=Bl(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),yI=/^[()}<>$|&; \t"']/,bI=Bl(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),J2=/^[<>&; \t"']/,aE=Bl(["<",">","&",";"," "," ",'"',"'"],!1,!1),se=/^[ \t]/,P=Bl([" "," "],!1,!1),K=0,we=0,At=[{line:1,column:1}],sr=0,Yr=[],Lr=0,fi;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function $n(){return e.substring(we,K)}function ra(){return mb(we,K)}function kc(gt,ar){throw ar=ar!==void 0?ar:mb(we,K),e2([gI(gt)],e.substring(we,K),ar)}function Dl(gt,ar){throw ar=ar!==void 0?ar:mb(we,K),Rd(gt,ar)}function ca(gt,ar){return{type:"literal",text:gt,ignoreCase:ar}}function Bl(gt,ar,Jr){return{type:"class",parts:gt,inverted:ar,ignoreCase:Jr}}function eA(){return{type:"any"}}function BA(){return{type:"end"}}function gI(gt){return{type:"other",description:gt}}function gp(gt){var ar=At[gt],Jr;if(ar)return ar;for(Jr=gt-1;!At[Jr];)Jr--;for(ar=At[Jr],ar={line:ar.line,column:ar.column};Jrsr&&(sr=K,Yr=[]),Yr.push(gt))}function Rd(gt,ar){return new Zfe(gt,null,null,ar)}function e2(gt,ar,Jr){return new Zfe(Zfe.buildMessage(gt,ar),gt,ar,Jr)}function N_(){var gt,ar,Jr;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=DC(),Jr===r&&(Jr=null),Jr!==r?(we=gt,ar=o(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function DC(){var gt,ar,Jr,Gn,Ts;if(gt=K,ar=Zg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=US(),Gn!==r?(Ts=Jm(),Ts===r&&(Ts=null),Ts!==r?(we=gt,ar=l(ar,Gn,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;if(gt===r)if(gt=K,ar=Zg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=US(),Gn===r&&(Gn=null),Gn!==r?(we=gt,ar=A(ar,Gn),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;return gt}function Jm(){var gt,ar,Jr,Gn,Ts;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=DC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=f(Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r;return gt}function US(){var gt;return e.charCodeAt(K)===59?(gt=I,K++):(gt=r,Lr===0&&Na(C)),gt===r&&(e.charCodeAt(K)===38?(gt=b,K++):(gt=r,Lr===0&&Na(E))),gt}function Zg(){var gt,ar,Jr;return gt=K,ar=kC(),ar!==r?(Jr=Cb(),Jr===r&&(Jr=null),Jr!==r?(we=gt,ar=N(ar,Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function Cb(){var gt,ar,Jr,Gn,Ts,Qo,Bg;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=pC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=Zg(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();Qo!==r?(we=gt,ar=B(Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;return gt}function pC(){var gt;return e.substr(K,2)===F?(gt=F,K+=2):(gt=r,Lr===0&&Na(Q)),gt===r&&(e.substr(K,2)===J?(gt=J,K+=2):(gt=r,Lr===0&&Na(ae))),gt}function kC(){var gt,ar,Jr;return gt=K,ar=GC(),ar!==r?(Jr=U2(),Jr===r&&(Jr=null),Jr!==r?(we=gt,ar=ne(ar,Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function U2(){var gt,ar,Jr,Gn,Ts,Qo,Bg;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=j_(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=kC(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();Qo!==r?(we=gt,ar=ce(Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;return gt}function j_(){var gt;return e.substr(K,2)===fe?(gt=fe,K+=2):(gt=r,Lr===0&&Na(ue)),gt===r&&(e.charCodeAt(K)===124?(gt=de,K++):(gt=r,Lr===0&&Na(be))),gt}function xC(){var gt,ar,Jr,Gn,Ts,Qo;if(gt=K,ar=Ty(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r)if(Gn=Pf(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(we=gt,ar=k(ar,Gn),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r;else K=gt,gt=r;if(gt===r)if(gt=K,ar=Ty(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=tt(ar),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r;return gt}function GC(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg,Df,AI,kh;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===40?(Jr=ze,K++):(Jr=r,Lr===0&&Na(Le)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=DC(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();if(Qo!==r)if(e.charCodeAt(K)===41?(Bg=Je,K++):(Bg=r,Lr===0&&Na(ft)),Bg!==r){for(Dg=[],Df=xc();Df!==r;)Dg.push(Df),Df=xc();if(Dg!==r){for(Df=[],AI=wA();AI!==r;)Df.push(AI),AI=wA();if(Df!==r){for(AI=[],kh=xc();kh!==r;)AI.push(kh),kh=xc();AI!==r?(we=gt,ar=lt(Ts,Df),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;if(gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===123?(Jr=Ot,K++):(Jr=r,Lr===0&&Na(Er)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=DC(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();if(Qo!==r)if(e.charCodeAt(K)===125?(Bg=Sr,K++):(Bg=r,Lr===0&&Na(jt)),Bg!==r){for(Dg=[],Df=xc();Df!==r;)Dg.push(Df),Df=xc();if(Dg!==r){for(Df=[],AI=wA();AI!==r;)Df.push(AI),AI=wA();if(Df!==r){for(AI=[],kh=xc();kh!==r;)AI.push(kh),kh=xc();AI!==r?(we=gt,ar=Bt(Ts,Df),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;if(gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){for(Jr=[],Gn=xC();Gn!==r;)Jr.push(Gn),Gn=xC();if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r){if(Ts=[],Qo=mh(),Qo!==r)for(;Qo!==r;)Ts.push(Qo),Qo=mh();else Ts=r;if(Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();Qo!==r?(we=gt,ar=Dt(Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r;if(gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=xC(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=xC();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=Fr(Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}}}return gt}function th(){var gt,ar,Jr,Gn,Ts;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=Mc(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=Mc();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=$t(Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r;return gt}function mh(){var gt,ar,Jr;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r?(Jr=wA(),Jr!==r?(we=gt,ar=Xt(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();ar!==r?(Jr=Mc(),Jr!==r?(we=gt,ar=Xt(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}return gt}function wA(){var gt,ar,Jr,Gn,Ts;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(lr.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(cr)),Jr===r&&(Jr=null),Jr!==r?(Gn=Nd(),Gn!==r?(Ts=Mc(),Ts!==r?(we=gt,ar=Ar(Jr,Gn,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function Nd(){var gt;return e.substr(K,2)===qr?(gt=qr,K+=2):(gt=r,Lr===0&&Na(yn)),gt===r&&(e.substr(K,2)===ke?(gt=ke,K+=2):(gt=r,Lr===0&&Na(zt)),gt===r&&(e.charCodeAt(K)===62?(gt=Fn,K++):(gt=r,Lr===0&&Na(Nn)),gt===r&&(e.substr(K,3)===Hi?(gt=Hi,K+=3):(gt=r,Lr===0&&Na(Ao)),gt===r&&(e.substr(K,2)===Vr?(gt=Vr,K+=2):(gt=r,Lr===0&&Na(xi)),gt===r&&(e.charCodeAt(K)===60?(gt=no,K++):(gt=r,Lr===0&&Na(ga))))))),gt}function Mc(){var gt,ar,Jr;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=Pf(),Jr!==r?(we=gt,ar=Xt(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function Pf(){var gt,ar,Jr;if(gt=K,ar=[],Jr=cE(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=cE();else ar=r;return ar!==r&&(we=gt,ar=Ya(ar)),gt=ar,gt}function cE(){var gt,ar;return gt=K,ar=tA(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar,gt===r&&(gt=K,ar=KS(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar,gt===r&&(gt=K,ar=jS(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar,gt===r&&(gt=K,ar=pm(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar))),gt}function tA(){var gt,ar,Jr,Gn;return gt=K,e.substr(K,2)===ol?(ar=ol,K+=2):(ar=r,Lr===0&&Na(Sc)),ar!==r?(Jr=jl(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Or)),Gn!==r?(we=gt,ar=Ft(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function KS(){var gt,ar,Jr,Gn;return gt=K,e.charCodeAt(K)===39?(ar=Hr,K++):(ar=r,Lr===0&&Na(Or)),ar!==r?(Jr=na(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Or)),Gn!==r?(we=gt,ar=Ft(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function jS(){var gt,ar,Jr,Gn;if(gt=K,e.substr(K,2)===zr?(ar=zr,K+=2):(ar=r,Lr===0&&Na(Rn)),ar!==r&&(we=gt,ar=Pr()),gt=ar,gt===r)if(gt=K,e.charCodeAt(K)===34?(ar=Qi,K++):(ar=r,Lr===0&&Na(ps)),ar!==r){for(Jr=[],Gn=fm();Gn!==r;)Jr.push(Gn),Gn=fm();Jr!==r?(e.charCodeAt(K)===34?(Gn=Qi,K++):(Gn=r,Lr===0&&Na(ps)),Gn!==r?(we=gt,ar=yo(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;return gt}function pm(){var gt,ar,Jr;if(gt=K,ar=[],Jr=cs(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=cs();else ar=r;return ar!==r&&(we=gt,ar=yo(ar)),gt=ar,gt}function fm(){var gt,ar;return gt=K,ar=cd(),ar!==r&&(we=gt,ar=bo(ar)),gt=ar,gt===r&&(gt=K,ar=zE(),ar!==r&&(we=gt,ar=Qa(ar)),gt=ar,gt===r&&(gt=K,ar=qE(),ar!==r&&(we=gt,ar=gc(ar)),gt=ar,gt===r&&(gt=K,ar=ko(),ar!==r&&(we=gt,ar=_g(ar)),gt=ar))),gt}function cs(){var gt,ar;return gt=K,ar=cd(),ar!==r&&(we=gt,ar=Nc(ar)),gt=ar,gt===r&&(gt=K,ar=zE(),ar!==r&&(we=gt,ar=sA(ar)),gt=ar,gt===r&&(gt=K,ar=qE(),ar!==r&&(we=gt,ar=ma(ar)),gt=ar,gt===r&&(gt=K,ar=Xp(),ar!==r&&(we=gt,ar=vu(ar)),gt=ar,gt===r&&(gt=K,ar=jE(),ar!==r&&(we=gt,ar=_g(ar)),gt=ar)))),gt}function na(){var gt,ar,Jr;for(gt=K,ar=[],li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));Jr!==r;)ar.push(Jr),li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function ko(){var gt,ar,Jr;if(gt=K,ar=[],Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac)));else ar=r;return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function ki(){var gt,ar,Jr;return gt=K,e.substr(K,2)===Ql?(ar=Ql,K+=2):(ar=r,Lr===0&&Na(Oc)),ar!==r&&(we=gt,ar=vg()),gt=ar,gt===r&&(gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Da.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fu)),Jr!==r?(we=gt,ar=yg(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)),gt}function jl(){var gt,ar,Jr;for(gt=K,ar=[],Jr=hd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));Jr!==r;)ar.push(Jr),Jr=hd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function hd(){var gt,ar,Jr;return gt=K,e.substr(K,2)===_I?(ar=_I,K+=2):(ar=r,Lr===0&&Na(Kh)),ar!==r&&(we=gt,ar=Ri()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===Do?(ar=Do,K+=2):(ar=r,Lr===0&&Na(Pt)),ar!==r&&(we=gt,ar=Hu()),gt=ar,gt===r&&(gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Ru.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Vs)),Jr!==r?(we=gt,ar=Uu(),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===Yn?(ar=Yn,K+=2):(ar=r,Lr===0&&Na(Ko)),ar!==r&&(we=gt,ar=Sg()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===HA?(ar=HA,K+=2):(ar=r,Lr===0&&Na(ZA)),ar!==r&&(we=gt,ar=$i()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===gl?(ar=gl,K+=2):(ar=r,Lr===0&&Na(zf)),ar!==r&&(we=gt,ar=zd()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===aA?(ar=aA,K+=2):(ar=r,Lr===0&&Na(so)),ar!==r&&(we=gt,ar=Ki()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===cc?(ar=cc,K+=2):(ar=r,Lr===0&&Na(Xs)),ar!==r&&(we=gt,ar=ws()),gt=ar,gt===r&&(gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Gs.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ma)),Jr!==r?(we=gt,ar=yg(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=$f()))))))))),gt}function $f(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg,Df,AI,kh,lE;return gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Jr=Wd(),Jr!==r?(we=gt,ar=Dc(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===As?(ar=As,K+=2):(ar=r,Lr===0&&Na(Nf)),ar!==r?(Jr=K,Gn=K,Ts=Wd(),Ts!==r?(Qo=fC(),Qo!==r?(Ts=[Ts,Qo],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn===r&&(Gn=Wd()),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=gt,ar=Dc(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===Am?(ar=Am,K+=2):(ar=r,Lr===0&&Na(Zl)),ar!==r?(Jr=K,Gn=K,Ts=fC(),Ts!==r?(Qo=fC(),Qo!==r?(Bg=fC(),Bg!==r?(Dg=fC(),Dg!==r?(Ts=[Ts,Qo,Bg,Dg],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=gt,ar=Dc(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===rc?(ar=rc,K+=2):(ar=r,Lr===0&&Na(ad)),ar!==r?(Jr=K,Gn=K,Ts=fC(),Ts!==r?(Qo=fC(),Qo!==r?(Bg=fC(),Bg!==r?(Dg=fC(),Dg!==r?(Df=fC(),Df!==r?(AI=fC(),AI!==r?(kh=fC(),kh!==r?(lE=fC(),lE!==r?(Ts=[Ts,Qo,Bg,Dg,Df,AI,kh,lE],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=gt,ar=Qm(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)))),gt}function Wd(){var gt;return rl.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(LA)),gt}function fC(){var gt;return VA.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(bl)),gt}function jE(){var gt,ar,Jr,Gn,Ts;if(gt=K,ar=[],Jr=K,e.charCodeAt(K)===92?(Gn=Kl,K++):(Gn=r,Lr===0&&Na(Ju)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Yp?(Gn=Yp,K+=2):(Gn=r,Lr===0&&Na(YA)),Gn!==r&&(we=Jr,Gn=vr()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=_w(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,e.charCodeAt(K)===92?(Gn=Kl,K++):(Gn=r,Lr===0&&Na(Ju)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Yp?(Gn=Yp,K+=2):(Gn=r,Lr===0&&Na(YA)),Gn!==r&&(we=Jr,Gn=vr()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=_w(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r)));else ar=r;return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function Um(){var gt,ar,Jr,Gn,Ts,Qo;if(gt=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(bn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;if(Jr!==r)if(e.charCodeAt(K)===46?(Gn=Fs,K++):(Gn=r,Lr===0&&Na(Oa)),Gn!==r){if(Ts=[],lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr)),Qo!==r)for(;Qo!==r;)Ts.push(Qo),lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr));else Ts=r;Ts!==r?(we=gt,ar=Ca(ar,Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;if(gt===r){if(gt=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(bn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;Jr!==r?(we=gt,ar=gd(ar,Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;if(gt===r&&(gt=K,ar=qE(),ar!==r&&(we=gt,ar=Dp(ar)),gt=ar,gt===r&&(gt=K,ar=ty(),ar!==r&&(we=gt,ar=sp(ar)),gt=ar,gt===r)))if(gt=K,e.charCodeAt(K)===40?(ar=ze,K++):(ar=r,Lr===0&&Na(Le)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=z_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.charCodeAt(K)===41?(Qo=Je,K++):(Qo=r,Lr===0&&Na(ft)),Qo!==r?(we=gt,ar=QA(Gn),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r}return gt}function wy(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg;if(gt=K,ar=Um(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=ff,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=io,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=Um(),Dg!==r?(we=Gn,Ts=Hl(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=ff,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=io,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=Um(),Dg!==r?(we=Gn,Ts=Hl(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=gt,ar=Dr(ar,Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;return gt}function z_(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg;if(gt=K,ar=wy(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(bn))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=wy(),Dg!==r?(we=Gn,Ts=On(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(bn))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=wy(),Dg!==r?(we=Gn,Ts=On(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=gt,ar=Dr(ar,Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;return gt}function cd(){var gt,ar,Jr,Gn,Ts,Qo;if(gt=K,e.substr(K,3)===di?(ar=di,K+=3):(ar=r,Lr===0&&Na(aa)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=z_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.substr(K,2)===Bo?(Qo=Bo,K+=2):(Qo=r,Lr===0&&Na(us)),Qo!==r?(we=gt,ar=Xl(Gn),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;return gt}function zE(){var gt,ar,Jr,Gn;return gt=K,e.substr(K,2)===WA?(ar=WA,K+=2):(ar=r,Lr===0&&Na(If)),ar!==r?(Jr=DC(),Jr!==r?(e.charCodeAt(K)===41?(Gn=Je,K++):(Gn=r,Lr===0&&Na(ft)),Gn!==r?(we=gt,ar=rf(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function qE(){var gt,ar,Jr,Gn,Ts,Qo;return gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ty(),Jr!==r?(e.substr(K,2)===$1?(Gn=$1,K+=2):(Gn=r,Lr===0&&Na(Cw)),Gn!==r?(Ts=th(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Sr,K++):(Qo=r,Lr===0&&Na(jt)),Qo!==r?(we=gt,ar=XA(Jr,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ty(),Jr!==r?(e.substr(K,3)===Ac?(Gn=Ac,K+=3):(Gn=r,Lr===0&&Na(Gm)),Gn!==r?(we=gt,ar=JS(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ty(),Jr!==r?(e.substr(K,2)===qd?(Gn=qd,K+=2):(Gn=r,Lr===0&&Na(hh)),Gn!==r?(Ts=th(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Sr,K++):(Qo=r,Lr===0&&Na(jt)),Qo!==r?(we=gt,ar=Qp(Jr,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ty(),Jr!==r?(e.substr(K,3)===dC?(Gn=dC,K+=3):(Gn=r,Lr===0&&Na(oE)),Gn!==r?(we=gt,ar=K_(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ty(),Jr!==r?(e.charCodeAt(K)===125?(Gn=Sr,K++):(Gn=r,Lr===0&&Na(jt)),Gn!==r?(we=gt,ar=ey(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.charCodeAt(K)===36?(ar=KE,K++):(ar=r,Lr===0&&Na(NC)),ar!==r?(Jr=ty(),Jr!==r?(we=gt,ar=ey(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)))))),gt}function Xp(){var gt,ar,Jr;return gt=K,ar=zS(),ar!==r?(we=K,Jr=n_(ar),Jr?Jr=void 0:Jr=r,Jr!==r?(we=gt,ar=up(ar),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function zS(){var gt,ar,Jr,Gn,Ts;if(gt=K,ar=[],Jr=K,Gn=K,Lr++,Ts=K2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,Gn=K,Lr++,Ts=K2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r);else ar=r;return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function Ty(){var gt,ar,Jr;if(gt=K,ar=[],Xm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(hb)),Jr!==r)for(;Jr!==r;)ar.push(Jr),Xm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(hb));else ar=r;return ar!==r&&(we=gt,ar=pe()),gt=ar,gt}function ty(){var gt,ar,Jr;if(gt=K,ar=[],dm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(qf)),Jr!==r)for(;Jr!==r;)ar.push(Jr),dm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(qf));else ar=r;return ar!==r&&(we=gt,ar=pe()),gt=ar,gt}function _w(){var gt;return yI.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(bI)),gt}function K2(){var gt;return J2.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(aE)),gt}function xc(){var gt,ar;if(gt=[],se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(P)),ar!==r)for(;ar!==r;)gt.push(ar),se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(P));else gt=r;return gt}if(fi=a(),fi!==r&&K===e.length)return fi;throw fi!==r&&K{"use strict";Object.defineProperty(zN,"__esModule",{value:!0});zN.parseShell=Tzs;zN.stringifyShellLine=Lfe;zN.stringifyShell=Lfe;zN.stringifyCommandLine=Gjt;zN.stringifyCommandLineThen=y1n;zN.stringifyCommandChain=Fjt;zN.stringifyCommandChainThen=b1n;zN.stringifyCommand=E1n;zN.stringifyEnvSegment=xjt;zN.stringifyArgument=S1n;zN.stringifyRedirectArgument=olt;zN.stringifyValueArgument=MSe;zN.stringifyArgumentSegment=w1n;zN.stringifyArithmeticExpression=Zjt;zN.stringifyShellLine=Lfe;zN.stringifyShell=Lfe;var wzs=_1n();function Tzs(e,t={isGlobPattern:()=>!1}){try{return(0,wzs.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Lfe(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:n},a)=>`${Gjt(r)}${n===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function Gjt(e){return`${Fjt(e.chain)}${e.then?` ${y1n(e.then)}`:""}`}function y1n(e){return`${e.type} ${Gjt(e.line)}`}function Fjt(e){return`${E1n(e)}${e.then?` ${b1n(e.then)}`:""}`}function b1n(e){return`${e.type} ${Fjt(e.chain)}`}function E1n(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>xjt(t)).join(" ")} `:""}${e.args.map(t=>S1n(t)).join(" ")}`;case"subshell":return`(${Lfe(e.subshell)})${e.args.length>0?` ${e.args.map(t=>olt(t)).join(" ")}`:""}`;case"group":return`{ ${Lfe(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>olt(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>xjt(t)).join(" ");default:throw new Error(`Unsupported command type: "${e.type}"`)}}function xjt(e){return`${e.name}=${e.args[0]?MSe(e.args[0]):""}`}function S1n(e){switch(e.type){case"redirection":return olt(e);case"argument":return MSe(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function olt(e){return`${e.subtype} ${e.args.map(t=>MSe(t)).join(" ")}`}function MSe(e){return e.segments.map(t=>w1n(t)).join("")}var v1n=new Map([["\f","\\f"],[` -`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),Rzs=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(v1n,([e,t])=>[e,`"$'${t}'"`])]),B1n=e=>v1n.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,Nzs=e=>Rzs.get(e)??`"$'${B1n(e)}'"`;function w1n(e){let t=(n,a)=>a?`"${n}"`:n,r=n=>n===""?"''":n.match(/[()}<>$|&;"'\n\t ]/)?n.match(/['\t\p{C}]/u)?n.match(/'/)?`"${n.replace(/["$\t\p{C}]/u,Nzs)}"`:`$'${n.replace(/[\t\p{C}]/u,B1n)}'`:`'${n}'`:n;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${Lfe(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(n=>MSe(n)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(n=>MSe(n)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${Zjt(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function Zjt(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,o)=>o?`( ${a} )`:a,n=a=>r(Zjt(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${n(e.left)} ${t(e.type)} ${n(e.right)}`}}});var N1n=H((aPl,R1n)=>{"use strict";function Dzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Vfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Vfe)}Dzs(Vfe,Error);Vfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;bfe&&(fe=ae,ue=[]),ue.push(cr))}function jt(cr,Ar){return new Vfe(cr,null,null,Ar)}function Bt(cr,Ar,qr){return new Vfe(Vfe.buildMessage(cr,Ar),cr,Ar,qr)}function Dt(){var cr,Ar,qr,yn;return cr=ae,Ar=Fr(),Ar!==r?(e.charCodeAt(ae)===47?(qr=o,ae++):(qr=r,de===0&&Sr(l)),qr!==r?(yn=Fr(),yn!==r?(ne=cr,Ar=A(Ar,yn),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Fr(),Ar!==r&&(ne=cr,Ar=f(Ar)),cr=Ar),cr}function Fr(){var cr,Ar,qr,yn;return cr=ae,Ar=$t(),Ar!==r?(e.charCodeAt(ae)===64?(qr=I,ae++):(qr=r,de===0&&Sr(C)),qr!==r?(yn=lr(),yn!==r?(ne=cr,Ar=b(Ar,yn),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=$t(),Ar!==r&&(ne=cr,Ar=E(Ar)),cr=Ar),cr}function $t(){var cr,Ar,qr,yn,ke;return cr=ae,e.charCodeAt(ae)===64?(Ar=I,ae++):(Ar=r,de===0&&Sr(C)),Ar!==r?(qr=Xt(),qr!==r?(e.charCodeAt(ae)===47?(yn=o,ae++):(yn=r,de===0&&Sr(l)),yn!==r?(ke=Xt(),ke!==r?(ne=cr,Ar=N(),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Xt(),Ar!==r&&(ne=cr,Ar=N()),cr=Ar),cr}function Xt(){var cr,Ar,qr;if(cr=ae,Ar=[],B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(F)),qr!==r)for(;qr!==r;)Ar.push(qr),B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(F));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}function lr(){var cr,Ar,qr;if(cr=ae,Ar=[],Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(J)),qr!==r)for(;qr!==r;)Ar.push(qr),Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(J));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}if(be=a(),be!==r&&ae===e.length)return be;throw be!==r&&ae{"use strict";Object.defineProperty(alt,"__esModule",{value:!0});alt.parseResolution=Gzs;alt.stringifyResolution=Fzs;var xzs=N1n();function Gzs(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,xzs.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Fzs(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}});var Ofe=H((lPl,Wfe)=>{"use strict";function k1n(e){return typeof e>"u"||e===null}function Zzs(e){return typeof e=="object"&&e!==null}function Lzs(e){return Array.isArray(e)?e:k1n(e)?[]:[e]}function Vzs(e,t){var r,n,a,o;if(t)for(o=Object.keys(t),r=0,n=o.length;r{"use strict";function _3e(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}_3e.prototype=Object.create(Error.prototype);_3e.prototype.constructor=_3e;_3e.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};x1n.exports=_3e});var Z1n=H((gPl,F1n)=>{"use strict";var G1n=Ofe();function Ljt(e,t,r,n,a){this.name=e,this.buffer=t,this.position=r,this.line=n,this.column=a}Ljt.prototype.getSnippet=function(t,r){var n,a,o,l,A;if(!this.buffer)return null;for(t=t||4,r=r||75,n="",a=this.position;a>0&&`\0\r +`,!1),vg=function(){return""},Kl="\\",Ju=ca("\\",!1),Da=/^[\\$"`]/,fu=wl(["\\","$",'"',"`"],!1,!1),yg=function(gt){return gt},_I="\\a",Kh=ca("\\a",!1),Ri=function(){return"a"},Do="\\b",Pt=ca("\\b",!1),Hu=function(){return"\b"},Ru=/^[Ee]/,Vs=wl(["E","e"],!1,!1),Uu=function(){return"\x1B"},Yn="\\f",Ko=ca("\\f",!1),Sg=function(){return"\f"},HA="\\n",ZA=ca("\\n",!1),$i=function(){return` +`},Al="\\r",zf=ca("\\r",!1),zd=function(){return"\r"},cA="\\t",so=ca("\\t",!1),Ki=function(){return" "},cc="\\v",Xs=ca("\\v",!1),ws=function(){return"\v"},Gs=/^[\\'"?]/,Ma=wl(["\\","'",'"',"?"],!1,!1),Dc=function(gt){return String.fromCharCode(parseInt(gt,16))},As="\\x",Nf=ca("\\x",!1),Am="\\u",Zl=ca("\\u",!1),rc="\\U",ad=ca("\\U",!1),Qm=function(gt){return String.fromCodePoint(parseInt(gt,16))},rl=/^[0-7]/,LA=wl([["0","7"]],!1,!1),VA=/^[0-9a-fA-f]/,bl=wl([["0","9"],["a","f"],["A","f"]],!1,!1),bg=eA(),Yp="{}",YA=ca("{}",!1),vr=function(){return"{}"},Zt="-",yn=ca("-",!1),ls="+",oa=ca("+",!1),Fs=".",Oa=ca(".",!1),Ca=function(gt,ar,Jr){return{type:"number",value:(gt==="-"?-1:1)*parseFloat(ar.join("")+"."+Jr.join(""))}},gd=function(gt,ar){return{type:"number",value:(gt==="-"?-1:1)*parseInt(ar.join(""))}},Dp=function(gt){return{type:"variable",...gt}},sp=function(gt){return{type:"variable",name:gt}},QA=function(gt){return gt},ff="*",Zs=ca("*",!1),io="/",Ea=ca("/",!1),Hl=function(gt,ar,Jr){return{type:ar==="*"?"multiplication":"division",right:Jr}},Dr=function(gt,ar){return ar.reduce((Jr,Gn)=>({left:Jr,...Gn}),gt)},On=function(gt,ar,Jr){return{type:ar==="+"?"addition":"subtraction",right:Jr}},di="$((",aa=ca("$((",!1),vo="))",us=ca("))",!1),Xl=function(gt){return gt},WA="$(",If=ca("$(",!1),rf=function(gt){return gt},op="${",bd=ca("${",!1),e2=":-",_w=ca(":-",!1),XA=function(gt,ar){return{name:gt,defaultValue:ar}},Ac=":-}",Gm=ca(":-}",!1),US=function(gt){return{name:gt,defaultValue:[]}},qd=":+",hh=ca(":+",!1),Qp=function(gt,ar){return{name:gt,alternativeValue:ar}},dC=":+}",aE=ca(":+}",!1),j_=function(gt){return{name:gt,alternativeValue:[]}},ty=function(gt){return{name:gt}},jE="$",DC=ca("$",!1),i_=function(gt){return t.isGlobPattern(gt)},up=function(gt){return gt},Xm=/^[a-zA-Z0-9_]/,mb=wl([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),pe=function(){return $n()},dm=/^[$@*?#a-zA-Z0-9_\-]/,qf=wl(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),yI=/^[()}<>$|&; \t"']/,bI=wl(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),U2=/^[<>&; \t"']/,cE=wl(["<",">","&",";"," "," ",'"',"'"],!1,!1),se=/^[ \t]/,P=wl([" "," "],!1,!1),K=0,we=0,At=[{line:1,column:1}],sr=0,Yr=[],Lr=0,fi;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function $n(){return e.substring(we,K)}function ra(){return Cb(we,K)}function kc(gt,ar){throw ar=ar!==void 0?ar:Cb(we,K),t2([gI(gt)],e.substring(we,K),ar)}function Dl(gt,ar){throw ar=ar!==void 0?ar:Cb(we,K),Rd(gt,ar)}function ca(gt,ar){return{type:"literal",text:gt,ignoreCase:ar}}function wl(gt,ar,Jr){return{type:"class",parts:gt,inverted:ar,ignoreCase:Jr}}function eA(){return{type:"any"}}function BA(){return{type:"end"}}function gI(gt){return{type:"other",description:gt}}function gp(gt){var ar=At[gt],Jr;if(ar)return ar;for(Jr=gt-1;!At[Jr];)Jr--;for(ar=At[Jr],ar={line:ar.line,column:ar.column};Jrsr&&(sr=K,Yr=[]),Yr.push(gt))}function Rd(gt,ar){return new Lfe(gt,null,null,ar)}function t2(gt,ar,Jr){return new Lfe(Lfe.buildMessage(gt,ar),gt,ar,Jr)}function D_(){var gt,ar,Jr;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=kC(),Jr===r&&(Jr=null),Jr!==r?(we=gt,ar=o(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function kC(){var gt,ar,Jr,Gn,Ts;if(gt=K,ar=Zg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=KS(),Gn!==r?(Ts=Jm(),Ts===r&&(Ts=null),Ts!==r?(we=gt,ar=l(ar,Gn,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;if(gt===r)if(gt=K,ar=Zg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=KS(),Gn===r&&(Gn=null),Gn!==r?(we=gt,ar=A(ar,Gn),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;return gt}function Jm(){var gt,ar,Jr,Gn,Ts;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=kC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=f(Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r;return gt}function KS(){var gt;return e.charCodeAt(K)===59?(gt=I,K++):(gt=r,Lr===0&&Na(C)),gt===r&&(e.charCodeAt(K)===38?(gt=b,K++):(gt=r,Lr===0&&Na(E))),gt}function Zg(){var gt,ar,Jr;return gt=K,ar=xC(),ar!==r?(Jr=_b(),Jr===r&&(Jr=null),Jr!==r?(we=gt,ar=N(ar,Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function _b(){var gt,ar,Jr,Gn,Ts,Qo,Bg;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=pC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=Zg(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();Qo!==r?(we=gt,ar=B(Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;return gt}function pC(){var gt;return e.substr(K,2)===F?(gt=F,K+=2):(gt=r,Lr===0&&Na(Q)),gt===r&&(e.substr(K,2)===J?(gt=J,K+=2):(gt=r,Lr===0&&Na(ae))),gt}function xC(){var gt,ar,Jr;return gt=K,ar=FC(),ar!==r?(Jr=K2(),Jr===r&&(Jr=null),Jr!==r?(we=gt,ar=ne(ar,Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function K2(){var gt,ar,Jr,Gn,Ts,Qo,Bg;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=z_(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=xC(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();Qo!==r?(we=gt,ar=ce(Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;return gt}function z_(){var gt;return e.substr(K,2)===fe?(gt=fe,K+=2):(gt=r,Lr===0&&Na(ue)),gt===r&&(e.charCodeAt(K)===124?(gt=de,K++):(gt=r,Lr===0&&Na(be))),gt}function GC(){var gt,ar,Jr,Gn,Ts,Qo;if(gt=K,ar=Ry(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r)if(Gn=Pf(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(we=gt,ar=k(ar,Gn),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r;else K=gt,gt=r;if(gt===r)if(gt=K,ar=Ry(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=tt(ar),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r;return gt}function FC(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg,Df,AI,kh;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===40?(Jr=ze,K++):(Jr=r,Lr===0&&Na(Le)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=kC(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();if(Qo!==r)if(e.charCodeAt(K)===41?(Bg=Je,K++):(Bg=r,Lr===0&&Na(ft)),Bg!==r){for(Dg=[],Df=xc();Df!==r;)Dg.push(Df),Df=xc();if(Dg!==r){for(Df=[],AI=wA();AI!==r;)Df.push(AI),AI=wA();if(Df!==r){for(AI=[],kh=xc();kh!==r;)AI.push(kh),kh=xc();AI!==r?(we=gt,ar=lt(Ts,Df),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;if(gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===123?(Jr=Ot,K++):(Jr=r,Lr===0&&Na(Er)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=kC(),Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();if(Qo!==r)if(e.charCodeAt(K)===125?(Bg=Sr,K++):(Bg=r,Lr===0&&Na(jt)),Bg!==r){for(Dg=[],Df=xc();Df!==r;)Dg.push(Df),Df=xc();if(Dg!==r){for(Df=[],AI=wA();AI!==r;)Df.push(AI),AI=wA();if(Df!==r){for(AI=[],kh=xc();kh!==r;)AI.push(kh),kh=xc();AI!==r?(we=gt,ar=Bt(Ts,Df),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;else K=gt,gt=r;if(gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){for(Jr=[],Gn=GC();Gn!==r;)Jr.push(Gn),Gn=GC();if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r){if(Ts=[],Qo=mh(),Qo!==r)for(;Qo!==r;)Ts.push(Qo),Qo=mh();else Ts=r;if(Ts!==r){for(Qo=[],Bg=xc();Bg!==r;)Qo.push(Bg),Bg=xc();Qo!==r?(we=gt,ar=Nt(Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r}else K=gt,gt=r;if(gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=GC(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=GC();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=Fr(Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r}}}return gt}function th(){var gt,ar,Jr,Gn,Ts;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=Mc(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=Mc();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=gt,ar=$t(Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r}else K=gt,gt=r;return gt}function mh(){var gt,ar,Jr;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r?(Jr=wA(),Jr!==r?(we=gt,ar=Xt(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r){for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();ar!==r?(Jr=Mc(),Jr!==r?(we=gt,ar=Xt(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}return gt}function wA(){var gt,ar,Jr,Gn,Ts;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(lr.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(cr)),Jr===r&&(Jr=null),Jr!==r?(Gn=Nd(),Gn!==r?(Ts=Mc(),Ts!==r?(we=gt,ar=Ar(Jr,Gn,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function Nd(){var gt;return e.substr(K,2)===qr?(gt=qr,K+=2):(gt=r,Lr===0&&Na(_n)),gt===r&&(e.substr(K,2)===ke?(gt=ke,K+=2):(gt=r,Lr===0&&Na(zt)),gt===r&&(e.charCodeAt(K)===62?(gt=Fn,K++):(gt=r,Lr===0&&Na(Nn)),gt===r&&(e.substr(K,3)===Hi?(gt=Hi,K+=3):(gt=r,Lr===0&&Na(Ao)),gt===r&&(e.substr(K,2)===Vr?(gt=Vr,K+=2):(gt=r,Lr===0&&Na(xi)),gt===r&&(e.charCodeAt(K)===60?(gt=no,K++):(gt=r,Lr===0&&Na(ga))))))),gt}function Mc(){var gt,ar,Jr;for(gt=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=Pf(),Jr!==r?(we=gt,ar=Xt(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function Pf(){var gt,ar,Jr;if(gt=K,ar=[],Jr=lE(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=lE();else ar=r;return ar!==r&&(we=gt,ar=Ya(ar)),gt=ar,gt}function lE(){var gt,ar;return gt=K,ar=tA(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar,gt===r&&(gt=K,ar=jS(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar,gt===r&&(gt=K,ar=zS(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar,gt===r&&(gt=K,ar=pm(),ar!==r&&(we=gt,ar=Gc(ar)),gt=ar))),gt}function tA(){var gt,ar,Jr,Gn;return gt=K,e.substr(K,2)===al?(ar=al,K+=2):(ar=r,Lr===0&&Na(Sc)),ar!==r?(Jr=jl(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Or)),Gn!==r?(we=gt,ar=Ft(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function jS(){var gt,ar,Jr,Gn;return gt=K,e.charCodeAt(K)===39?(ar=Hr,K++):(ar=r,Lr===0&&Na(Or)),ar!==r?(Jr=na(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Or)),Gn!==r?(we=gt,ar=Ft(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function zS(){var gt,ar,Jr,Gn;if(gt=K,e.substr(K,2)===zr?(ar=zr,K+=2):(ar=r,Lr===0&&Na(Rn)),ar!==r&&(we=gt,ar=Pr()),gt=ar,gt===r)if(gt=K,e.charCodeAt(K)===34?(ar=Qi,K++):(ar=r,Lr===0&&Na(ps)),ar!==r){for(Jr=[],Gn=fm();Gn!==r;)Jr.push(Gn),Gn=fm();Jr!==r?(e.charCodeAt(K)===34?(Gn=Qi,K++):(Gn=r,Lr===0&&Na(ps)),Gn!==r?(we=gt,ar=_o(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;return gt}function pm(){var gt,ar,Jr;if(gt=K,ar=[],Jr=cs(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=cs();else ar=r;return ar!==r&&(we=gt,ar=_o(ar)),gt=ar,gt}function fm(){var gt,ar;return gt=K,ar=cd(),ar!==r&&(we=gt,ar=yo(ar)),gt=ar,gt===r&&(gt=K,ar=qE(),ar!==r&&(we=gt,ar=Qa(ar)),gt=ar,gt===r&&(gt=K,ar=$E(),ar!==r&&(we=gt,ar=gc(ar)),gt=ar,gt===r&&(gt=K,ar=ko(),ar!==r&&(we=gt,ar=_g(ar)),gt=ar))),gt}function cs(){var gt,ar;return gt=K,ar=cd(),ar!==r&&(we=gt,ar=Nc(ar)),gt=ar,gt===r&&(gt=K,ar=qE(),ar!==r&&(we=gt,ar=oA(ar)),gt=ar,gt===r&&(gt=K,ar=$E(),ar!==r&&(we=gt,ar=ma(ar)),gt=ar,gt===r&&(gt=K,ar=Xp(),ar!==r&&(we=gt,ar=vu(ar)),gt=ar,gt===r&&(gt=K,ar=zE(),ar!==r&&(we=gt,ar=_g(ar)),gt=ar)))),gt}function na(){var gt,ar,Jr;for(gt=K,ar=[],li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));Jr!==r;)ar.push(Jr),li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function ko(){var gt,ar,Jr;if(gt=K,ar=[],Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac)));else ar=r;return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function ki(){var gt,ar,Jr;return gt=K,e.substr(K,2)===Ql?(ar=Ql,K+=2):(ar=r,Lr===0&&Na(Oc)),ar!==r&&(we=gt,ar=vg()),gt=ar,gt===r&&(gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Da.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fu)),Jr!==r?(we=gt,ar=yg(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)),gt}function jl(){var gt,ar,Jr;for(gt=K,ar=[],Jr=hd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));Jr!==r;)ar.push(Jr),Jr=hd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function hd(){var gt,ar,Jr;return gt=K,e.substr(K,2)===_I?(ar=_I,K+=2):(ar=r,Lr===0&&Na(Kh)),ar!==r&&(we=gt,ar=Ri()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===Do?(ar=Do,K+=2):(ar=r,Lr===0&&Na(Pt)),ar!==r&&(we=gt,ar=Hu()),gt=ar,gt===r&&(gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Ru.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Vs)),Jr!==r?(we=gt,ar=Uu(),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===Yn?(ar=Yn,K+=2):(ar=r,Lr===0&&Na(Ko)),ar!==r&&(we=gt,ar=Sg()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===HA?(ar=HA,K+=2):(ar=r,Lr===0&&Na(ZA)),ar!==r&&(we=gt,ar=$i()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===Al?(ar=Al,K+=2):(ar=r,Lr===0&&Na(zf)),ar!==r&&(we=gt,ar=zd()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===cA?(ar=cA,K+=2):(ar=r,Lr===0&&Na(so)),ar!==r&&(we=gt,ar=Ki()),gt=ar,gt===r&&(gt=K,e.substr(K,2)===cc?(ar=cc,K+=2):(ar=r,Lr===0&&Na(Xs)),ar!==r&&(we=gt,ar=ws()),gt=ar,gt===r&&(gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Gs.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ma)),Jr!==r?(we=gt,ar=yg(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=$f()))))))))),gt}function $f(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg,Df,AI,kh,uE;return gt=K,e.charCodeAt(K)===92?(ar=Kl,K++):(ar=r,Lr===0&&Na(Ju)),ar!==r?(Jr=Wd(),Jr!==r?(we=gt,ar=Dc(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===As?(ar=As,K+=2):(ar=r,Lr===0&&Na(Nf)),ar!==r?(Jr=K,Gn=K,Ts=Wd(),Ts!==r?(Qo=fC(),Qo!==r?(Ts=[Ts,Qo],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn===r&&(Gn=Wd()),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=gt,ar=Dc(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===Am?(ar=Am,K+=2):(ar=r,Lr===0&&Na(Zl)),ar!==r?(Jr=K,Gn=K,Ts=fC(),Ts!==r?(Qo=fC(),Qo!==r?(Bg=fC(),Bg!==r?(Dg=fC(),Dg!==r?(Ts=[Ts,Qo,Bg,Dg],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=gt,ar=Dc(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===rc?(ar=rc,K+=2):(ar=r,Lr===0&&Na(ad)),ar!==r?(Jr=K,Gn=K,Ts=fC(),Ts!==r?(Qo=fC(),Qo!==r?(Bg=fC(),Bg!==r?(Dg=fC(),Dg!==r?(Df=fC(),Df!==r?(AI=fC(),AI!==r?(kh=fC(),kh!==r?(uE=fC(),uE!==r?(Ts=[Ts,Qo,Bg,Dg,Df,AI,kh,uE],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=gt,ar=Qm(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)))),gt}function Wd(){var gt;return rl.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(LA)),gt}function fC(){var gt;return VA.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(bl)),gt}function zE(){var gt,ar,Jr,Gn,Ts;if(gt=K,ar=[],Jr=K,e.charCodeAt(K)===92?(Gn=Kl,K++):(Gn=r,Lr===0&&Na(Ju)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Yp?(Gn=Yp,K+=2):(Gn=r,Lr===0&&Na(YA)),Gn!==r&&(we=Jr,Gn=vr()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=yw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,e.charCodeAt(K)===92?(Gn=Kl,K++):(Gn=r,Lr===0&&Na(Ju)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Yp?(Gn=Yp,K+=2):(Gn=r,Lr===0&&Na(YA)),Gn!==r&&(we=Jr,Gn=vr()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=yw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r)));else ar=r;return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function Um(){var gt,ar,Jr,Gn,Ts,Qo;if(gt=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(yn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;if(Jr!==r)if(e.charCodeAt(K)===46?(Gn=Fs,K++):(Gn=r,Lr===0&&Na(Oa)),Gn!==r){if(Ts=[],lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr)),Qo!==r)for(;Qo!==r;)Ts.push(Qo),lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr));else Ts=r;Ts!==r?(we=gt,ar=Ca(ar,Jr,Ts),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;if(gt===r){if(gt=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(yn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;Jr!==r?(we=gt,ar=gd(ar,Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;if(gt===r&&(gt=K,ar=$E(),ar!==r&&(we=gt,ar=Dp(ar)),gt=ar,gt===r&&(gt=K,ar=ry(),ar!==r&&(we=gt,ar=sp(ar)),gt=ar,gt===r)))if(gt=K,e.charCodeAt(K)===40?(ar=ze,K++):(ar=r,Lr===0&&Na(Le)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=q_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.charCodeAt(K)===41?(Qo=Je,K++):(Qo=r,Lr===0&&Na(ft)),Qo!==r?(we=gt,ar=QA(Gn),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r}return gt}function Ty(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg;if(gt=K,ar=Um(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=ff,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=io,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=Um(),Dg!==r?(we=Gn,Ts=Hl(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=ff,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=io,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=Um(),Dg!==r?(we=Gn,Ts=Hl(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=gt,ar=Dr(ar,Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;return gt}function q_(){var gt,ar,Jr,Gn,Ts,Qo,Bg,Dg;if(gt=K,ar=Ty(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(yn))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=Ty(),Dg!==r?(we=Gn,Ts=On(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(yn))),Qo!==r){for(Bg=[],Dg=xc();Dg!==r;)Bg.push(Dg),Dg=xc();Bg!==r?(Dg=Ty(),Dg!==r?(we=Gn,Ts=On(ar,Qo,Dg),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=gt,ar=Dr(ar,Jr),gt=ar):(K=gt,gt=r)}else K=gt,gt=r;return gt}function cd(){var gt,ar,Jr,Gn,Ts,Qo;if(gt=K,e.substr(K,3)===di?(ar=di,K+=3):(ar=r,Lr===0&&Na(aa)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=q_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.substr(K,2)===vo?(Qo=vo,K+=2):(Qo=r,Lr===0&&Na(us)),Qo!==r?(we=gt,ar=Xl(Gn),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)}else K=gt,gt=r;else K=gt,gt=r}else K=gt,gt=r;return gt}function qE(){var gt,ar,Jr,Gn;return gt=K,e.substr(K,2)===WA?(ar=WA,K+=2):(ar=r,Lr===0&&Na(If)),ar!==r?(Jr=kC(),Jr!==r?(e.charCodeAt(K)===41?(Gn=Je,K++):(Gn=r,Lr===0&&Na(ft)),Gn!==r?(we=gt,ar=rf(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt}function $E(){var gt,ar,Jr,Gn,Ts,Qo;return gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ry(),Jr!==r?(e.substr(K,2)===e2?(Gn=e2,K+=2):(Gn=r,Lr===0&&Na(_w)),Gn!==r?(Ts=th(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Sr,K++):(Qo=r,Lr===0&&Na(jt)),Qo!==r?(we=gt,ar=XA(Jr,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ry(),Jr!==r?(e.substr(K,3)===Ac?(Gn=Ac,K+=3):(Gn=r,Lr===0&&Na(Gm)),Gn!==r?(we=gt,ar=US(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ry(),Jr!==r?(e.substr(K,2)===qd?(Gn=qd,K+=2):(Gn=r,Lr===0&&Na(hh)),Gn!==r?(Ts=th(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Sr,K++):(Qo=r,Lr===0&&Na(jt)),Qo!==r?(we=gt,ar=Qp(Jr,Ts),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ry(),Jr!==r?(e.substr(K,3)===dC?(Gn=dC,K+=3):(Gn=r,Lr===0&&Na(aE)),Gn!==r?(we=gt,ar=j_(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.substr(K,2)===op?(ar=op,K+=2):(ar=r,Lr===0&&Na(bd)),ar!==r?(Jr=ry(),Jr!==r?(e.charCodeAt(K)===125?(Gn=Sr,K++):(Gn=r,Lr===0&&Na(jt)),Gn!==r?(we=gt,ar=ty(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)):(K=gt,gt=r),gt===r&&(gt=K,e.charCodeAt(K)===36?(ar=jE,K++):(ar=r,Lr===0&&Na(DC)),ar!==r?(Jr=ry(),Jr!==r?(we=gt,ar=ty(Jr),gt=ar):(K=gt,gt=r)):(K=gt,gt=r)))))),gt}function Xp(){var gt,ar,Jr;return gt=K,ar=qS(),ar!==r?(we=K,Jr=i_(ar),Jr?Jr=void 0:Jr=r,Jr!==r?(we=gt,ar=up(ar),gt=ar):(K=gt,gt=r)):(K=gt,gt=r),gt}function qS(){var gt,ar,Jr,Gn,Ts;if(gt=K,ar=[],Jr=K,Gn=K,Lr++,Ts=j2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,Gn=K,Lr++,Ts=j2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(bg)),Ts!==r?(we=Jr,Gn=yg(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r);else ar=r;return ar!==r&&(we=gt,ar=Ws(ar)),gt=ar,gt}function Ry(){var gt,ar,Jr;if(gt=K,ar=[],Xm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(mb)),Jr!==r)for(;Jr!==r;)ar.push(Jr),Xm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(mb));else ar=r;return ar!==r&&(we=gt,ar=pe()),gt=ar,gt}function ry(){var gt,ar,Jr;if(gt=K,ar=[],dm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(qf)),Jr!==r)for(;Jr!==r;)ar.push(Jr),dm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(qf));else ar=r;return ar!==r&&(we=gt,ar=pe()),gt=ar,gt}function yw(){var gt;return yI.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(bI)),gt}function j2(){var gt;return U2.test(e.charAt(K))?(gt=e.charAt(K),K++):(gt=r,Lr===0&&Na(cE)),gt}function xc(){var gt,ar;if(gt=[],se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(P)),ar!==r)for(;ar!==r;)gt.push(ar),se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(P));else gt=r;return gt}if(fi=a(),fi!==r&&K===e.length)return fi;throw fi!==r&&K{"use strict";Object.defineProperty(qN,"__esModule",{value:!0});qN.parseShell=Rzs;qN.stringifyShellLine=Vfe;qN.stringifyShell=Vfe;qN.stringifyCommandLine=Gjt;qN.stringifyCommandLineThen=w1n;qN.stringifyCommandChain=Fjt;qN.stringifyCommandChainThen=T1n;qN.stringifyCommand=R1n;qN.stringifyEnvSegment=xjt;qN.stringifyArgument=N1n;qN.stringifyRedirectArgument=slt;qN.stringifyValueArgument=MSe;qN.stringifyArgumentSegment=x1n;qN.stringifyArithmeticExpression=Zjt;qN.stringifyShellLine=Vfe;qN.stringifyShell=Vfe;var Tzs=B1n();function Rzs(e,t={isGlobPattern:()=>!1}){try{return(0,Tzs.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Vfe(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:n},a)=>`${Gjt(r)}${n===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function Gjt(e){return`${Fjt(e.chain)}${e.then?` ${w1n(e.then)}`:""}`}function w1n(e){return`${e.type} ${Gjt(e.line)}`}function Fjt(e){return`${R1n(e)}${e.then?` ${T1n(e.then)}`:""}`}function T1n(e){return`${e.type} ${Fjt(e.chain)}`}function R1n(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>xjt(t)).join(" ")} `:""}${e.args.map(t=>N1n(t)).join(" ")}`;case"subshell":return`(${Vfe(e.subshell)})${e.args.length>0?` ${e.args.map(t=>slt(t)).join(" ")}`:""}`;case"group":return`{ ${Vfe(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>slt(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>xjt(t)).join(" ");default:throw new Error(`Unsupported command type: "${e.type}"`)}}function xjt(e){return`${e.name}=${e.args[0]?MSe(e.args[0]):""}`}function N1n(e){switch(e.type){case"redirection":return slt(e);case"argument":return MSe(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function slt(e){return`${e.subtype} ${e.args.map(t=>MSe(t)).join(" ")}`}function MSe(e){return e.segments.map(t=>x1n(t)).join("")}var D1n=new Map([["\f","\\f"],[` +`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),Nzs=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(D1n,([e,t])=>[e,`"$'${t}'"`])]),k1n=e=>D1n.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,Dzs=e=>Nzs.get(e)??`"$'${k1n(e)}'"`;function x1n(e){let t=(n,a)=>a?`"${n}"`:n,r=n=>n===""?"''":n.match(/[()}<>$|&;"'\n\t ]/)?n.match(/['\t\p{C}]/u)?n.match(/'/)?`"${n.replace(/["$\t\p{C}]/u,Dzs)}"`:`$'${n.replace(/[\t\p{C}]/u,k1n)}'`:`'${n}'`:n;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${Vfe(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(n=>MSe(n)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(n=>MSe(n)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${Zjt(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function Zjt(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,o)=>o?`( ${a} )`:a,n=a=>r(Zjt(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${n(e.left)} ${t(e.type)} ${n(e.right)}`}}});var Z1n=H((i3l,F1n)=>{"use strict";function kzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Wfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Wfe)}kzs(Wfe,Error);Wfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;bfe&&(fe=ae,ue=[]),ue.push(cr))}function jt(cr,Ar){return new Wfe(cr,null,null,Ar)}function Bt(cr,Ar,qr){return new Wfe(Wfe.buildMessage(cr,Ar),cr,Ar,qr)}function Nt(){var cr,Ar,qr,_n;return cr=ae,Ar=Fr(),Ar!==r?(e.charCodeAt(ae)===47?(qr=o,ae++):(qr=r,de===0&&Sr(l)),qr!==r?(_n=Fr(),_n!==r?(ne=cr,Ar=A(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Fr(),Ar!==r&&(ne=cr,Ar=f(Ar)),cr=Ar),cr}function Fr(){var cr,Ar,qr,_n;return cr=ae,Ar=$t(),Ar!==r?(e.charCodeAt(ae)===64?(qr=I,ae++):(qr=r,de===0&&Sr(C)),qr!==r?(_n=lr(),_n!==r?(ne=cr,Ar=b(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=$t(),Ar!==r&&(ne=cr,Ar=E(Ar)),cr=Ar),cr}function $t(){var cr,Ar,qr,_n,ke;return cr=ae,e.charCodeAt(ae)===64?(Ar=I,ae++):(Ar=r,de===0&&Sr(C)),Ar!==r?(qr=Xt(),qr!==r?(e.charCodeAt(ae)===47?(_n=o,ae++):(_n=r,de===0&&Sr(l)),_n!==r?(ke=Xt(),ke!==r?(ne=cr,Ar=N(),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Xt(),Ar!==r&&(ne=cr,Ar=N()),cr=Ar),cr}function Xt(){var cr,Ar,qr;if(cr=ae,Ar=[],B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(F)),qr!==r)for(;qr!==r;)Ar.push(qr),B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(F));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}function lr(){var cr,Ar,qr;if(cr=ae,Ar=[],Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(J)),qr!==r)for(;qr!==r;)Ar.push(qr),Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Sr(J));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}if(be=a(),be!==r&&ae===e.length)return be;throw be!==r&&ae{"use strict";Object.defineProperty(olt,"__esModule",{value:!0});olt.parseResolution=Fzs;olt.stringifyResolution=Zzs;var Gzs=Z1n();function Fzs(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,Gzs.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Zzs(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}});var Pfe=H((o3l,Ofe)=>{"use strict";function V1n(e){return typeof e>"u"||e===null}function Lzs(e){return typeof e=="object"&&e!==null}function Vzs(e){return Array.isArray(e)?e:V1n(e)?[]:[e]}function Wzs(e,t){var r,n,a,o;if(t)for(o=Object.keys(t),r=0,n=o.length;r{"use strict";function _3e(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}_3e.prototype=Object.create(Error.prototype);_3e.prototype.constructor=_3e;_3e.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};W1n.exports=_3e});var M1n=H((c3l,P1n)=>{"use strict";var O1n=Pfe();function Ljt(e,t,r,n,a){this.name=e,this.buffer=t,this.position=r,this.line=n,this.column=a}Ljt.prototype.getSnippet=function(t,r){var n,a,o,l,A;if(!this.buffer)return null;for(t=t||4,r=r||75,n="",a=this.position;a>0&&`\0\r \x85\u2028\u2029`.indexOf(this.buffer.charAt(a-1))===-1;)if(a-=1,this.position-a>r/2-1){n=" ... ",a+=5;break}for(o="",l=this.position;lr/2-1){o=" ... ",l-=5;break}return A=this.buffer.slice(a,l),G1n.repeat(" ",t)+n+A+o+` -`+G1n.repeat(" ",t+this.position-a+n.length)+"^"};Ljt.prototype.toString=function(t){var r,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(n+=`: -`+r)),n};F1n.exports=Ljt});var TR=H((APl,V1n)=>{"use strict";var L1n=HSe(),Pzs=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],Mzs=["scalar","sequence","mapping"];function Hzs(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function Yzs(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(Pzs.indexOf(r)===-1)throw new L1n('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=Hzs(t.styleAliases||null),Mzs.indexOf(this.kind)===-1)throw new L1n('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}V1n.exports=Yzs});var Pfe=H((dPl,O1n)=>{"use strict";var W1n=Ofe(),clt=HSe(),Qzs=TR();function Vjt(e,t,r){var n=[];return e.include.forEach(function(a){r=Vjt(a,t,r)}),e[t].forEach(function(a){r.forEach(function(o,l){o.tag===a.tag&&o.kind===a.kind&&n.push(l)}),r.push(a)}),r.filter(function(a,o){return n.indexOf(o)===-1})}function Xzs(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function n(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t{"use strict";var Jzs=TR();P1n.exports=new Jzs("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var Y1n=H((fPl,H1n)=>{"use strict";var Uzs=TR();H1n.exports=new Uzs("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var X1n=H((IPl,Q1n)=>{"use strict";var Kzs=TR();Q1n.exports=new Kzs("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var llt=H((hPl,J1n)=>{"use strict";var jzs=Pfe();J1n.exports=new jzs({explicit:[M1n(),Y1n(),X1n()]})});var K1n=H((mPl,U1n)=>{"use strict";var zzs=TR();function qzs(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function $zs(){return null}function eqs(e){return e===null}U1n.exports=new zzs("tag:yaml.org,2002:null",{kind:"scalar",resolve:qzs,construct:$zs,predicate:eqs,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var z1n=H((CPl,j1n)=>{"use strict";var tqs=TR();function rqs(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function nqs(e){return e==="true"||e==="True"||e==="TRUE"}function iqs(e){return Object.prototype.toString.call(e)==="[object Boolean]"}j1n.exports=new tqs("tag:yaml.org,2002:bool",{kind:"scalar",resolve:rqs,construct:nqs,predicate:iqs,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var $1n=H((_Pl,q1n)=>{"use strict";var sqs=Ofe(),oqs=TR();function aqs(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function cqs(e){return 48<=e&&e<=55}function lqs(e){return 48<=e&&e<=57}function uqs(e){if(e===null)return!1;var t=e.length,r=0,n=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var r2n=H((yPl,t2n)=>{"use strict";var e2n=Ofe(),dqs=TR(),pqs=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function fqs(e){return!(e===null||!pqs.test(e)||e[e.length-1]==="_")}function Iqs(e){var t,r,n,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(o){a.unshift(parseFloat(o,10))}),t=0,n=1,a.forEach(function(o){t+=o*n,n*=60}),r*t):r*parseFloat(t,10)}var hqs=/^[-+]?[0-9]+e/;function mqs(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(e2n.isNegativeZero(e))return"-0.0";return r=e.toString(10),hqs.test(r)?r.replace("e",".e"):r}function Cqs(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||e2n.isNegativeZero(e))}t2n.exports=new dqs("tag:yaml.org,2002:float",{kind:"scalar",resolve:fqs,construct:Iqs,predicate:Cqs,represent:mqs,defaultStyle:"lowercase"})});var Wjt=H((bPl,n2n)=>{"use strict";var _qs=Pfe();n2n.exports=new _qs({include:[llt()],implicit:[K1n(),z1n(),$1n(),r2n()]})});var Ojt=H((EPl,i2n)=>{"use strict";var yqs=Pfe();i2n.exports=new yqs({include:[Wjt()]})});var c2n=H((SPl,a2n)=>{"use strict";var bqs=TR(),s2n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),o2n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Eqs(e){return e===null?!1:s2n.exec(e)!==null||o2n.exec(e)!==null}function Sqs(e){var t,r,n,a,o,l,A,f=0,I=null,C,b,E;if(t=s2n.exec(e),t===null&&(t=o2n.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,n,a));if(o=+t[4],l=+t[5],A=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(C=+t[10],b=+(t[11]||0),I=(C*60+b)*6e4,t[9]==="-"&&(I=-I)),E=new Date(Date.UTC(r,n,a,o,l,A,f)),I&&E.setTime(E.getTime()-I),E}function vqs(e){return e.toISOString()}a2n.exports=new bqs("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Eqs,construct:Sqs,instanceOf:Date,represent:vqs})});var u2n=H((vPl,l2n)=>{"use strict";var Bqs=TR();function wqs(e){return e==="<<"||e===null}l2n.exports=new Bqs("tag:yaml.org,2002:merge",{kind:"scalar",resolve:wqs})});var d2n=H((BPl,A2n)=>{"use strict";var Mfe;try{g2n=Et,Mfe=g2n("buffer").Buffer}catch{}var g2n,Tqs=TR(),Pjt=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function Rqs(e){if(e===null)return!1;var t,r,n=0,a=e.length,o=Pjt;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function Nqs(e){var t,r,n=e.replace(/[\r\n=]/g,""),a=n.length,o=Pjt,l=0,A=[];for(t=0;t>16&255),A.push(l>>8&255),A.push(l&255)),l=l<<6|o.indexOf(n.charAt(t));return r=a%4*6,r===0?(A.push(l>>16&255),A.push(l>>8&255),A.push(l&255)):r===18?(A.push(l>>10&255),A.push(l>>2&255)):r===12&&A.push(l>>4&255),Mfe?Mfe.from?Mfe.from(A):new Mfe(A):A}function Dqs(e){var t="",r=0,n,a,o=e.length,l=Pjt;for(n=0;n>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]),r=(r<<8)+e[n];return a=o%3,a===0?(t+=l[r>>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]):a===2?(t+=l[r>>10&63],t+=l[r>>4&63],t+=l[r<<2&63],t+=l[64]):a===1&&(t+=l[r>>2&63],t+=l[r<<4&63],t+=l[64],t+=l[64]),t}function kqs(e){return Mfe&&Mfe.isBuffer(e)}A2n.exports=new Tqs("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Rqs,construct:Nqs,predicate:kqs,represent:Dqs})});var f2n=H((TPl,p2n)=>{"use strict";var xqs=TR(),Gqs=Object.prototype.hasOwnProperty,Fqs=Object.prototype.toString;function Zqs(e){if(e===null)return!0;var t=[],r,n,a,o,l,A=e;for(r=0,n=A.length;r{"use strict";var Vqs=TR(),Wqs=Object.prototype.toString;function Oqs(e){if(e===null)return!0;var t,r,n,a,o,l=e;for(o=new Array(l.length),t=0,r=l.length;t{"use strict";var Mqs=TR(),Hqs=Object.prototype.hasOwnProperty;function Yqs(e){if(e===null)return!0;var t,r=e;for(t in r)if(Hqs.call(r,t)&&r[t]!==null)return!1;return!0}function Qqs(e){return e!==null?e:{}}m2n.exports=new Mqs("tag:yaml.org,2002:set",{kind:"mapping",resolve:Yqs,construct:Qqs})});var QSe=H((DPl,_2n)=>{"use strict";var Xqs=Pfe();_2n.exports=new Xqs({include:[Ojt()],implicit:[c2n(),u2n()],explicit:[d2n(),f2n(),h2n(),C2n()]})});var b2n=H((kPl,y2n)=>{"use strict";var Jqs=TR();function Uqs(){return!0}function Kqs(){}function jqs(){return""}function zqs(e){return typeof e>"u"}y2n.exports=new Jqs("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:Uqs,construct:Kqs,predicate:zqs,represent:jqs})});var S2n=H((xPl,E2n)=>{"use strict";var qqs=TR();function $qs(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),n="";return!(t[0]==="/"&&(r&&(n=r[1]),n.length>3||t[t.length-n.length-1]!=="/"))}function e$s(e){var t=e,r=/\/([gim]*)$/.exec(e),n="";return t[0]==="/"&&(r&&(n=r[1]),t=t.slice(1,t.length-n.length-1)),new RegExp(t,n)}function t$s(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function r$s(e){return Object.prototype.toString.call(e)==="[object RegExp]"}E2n.exports=new qqs("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:$qs,construct:e$s,predicate:r$s,represent:t$s})});var w2n=H((GPl,B2n)=>{"use strict";var ult;try{v2n=Et,ult=v2n("esprima")}catch{typeof window<"u"&&(ult=window.esprima)}var v2n,n$s=TR();function i$s(e){if(e===null)return!1;try{var t="("+e+")",r=ult.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function s$s(e){var t="("+e+")",r=ult.parse(t,{range:!0}),n=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(o){n.push(o.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(n,t.slice(a[0]+1,a[1]-1)):new Function(n,"return "+t.slice(a[0],a[1]))}function o$s(e){return e.toString()}function a$s(e){return Object.prototype.toString.call(e)==="[object Function]"}B2n.exports=new n$s("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:i$s,construct:s$s,predicate:a$s,represent:o$s})});var y3e=H((ZPl,R2n)=>{"use strict";var T2n=Pfe();R2n.exports=T2n.DEFAULT=new T2n({include:[QSe()],explicit:[b2n(),S2n(),w2n()]})});var U2n=H((LPl,b3e)=>{"use strict";var s$=Ofe(),Z2n=HSe(),c$s=Z1n(),L2n=QSe(),l$s=y3e(),foe=Object.prototype.hasOwnProperty,glt=1,V2n=2,W2n=3,Alt=4,Mjt=1,u$s=2,N2n=3,g$s=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,A$s=/[\x85\u2028\u2029]/,d$s=/[,\[\]\{\}]/,O2n=/^(?:!|!!|![a-z\-]+!)$/i,P2n=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function D2n(e){return Object.prototype.toString.call(e)}function jK(e){return e===10||e===13}function Yfe(e){return e===9||e===32}function X9(e){return e===9||e===32||e===10||e===13}function XSe(e){return e===44||e===91||e===93||e===123||e===125}function p$s(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function f$s(e){return e===120?2:e===117?4:e===85?8:0}function I$s(e){return 48<=e&&e<=57?e-48:-1}function k2n(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` -`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function h$s(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var M2n=new Array(256),H2n=new Array(256);for(Hfe=0;Hfe<256;Hfe++)M2n[Hfe]=k2n(Hfe)?1:0,H2n[Hfe]=k2n(Hfe);var Hfe;function m$s(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||l$s,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function Y2n(e,t){return new Z2n(t,new c$s(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function $p(e,t){throw Y2n(e,t)}function dlt(e,t){e.onWarning&&e.onWarning.call(null,Y2n(e,t))}var x2n={YAML:function(t,r,n){var a,o,l;t.version!==null&&$p(t,"duplication of %YAML directive"),n.length!==1&&$p(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),a===null&&$p(t,"ill-formed argument of the YAML directive"),o=parseInt(a[1],10),l=parseInt(a[2],10),o!==1&&$p(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&dlt(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var a,o;n.length!==2&&$p(t,"TAG directive accepts exactly two arguments"),a=n[0],o=n[1],O2n.test(a)||$p(t,"ill-formed tag handle (first argument) of the TAG directive"),foe.call(t.tagMap,a)&&$p(t,'there is a previously declared suffix for "'+a+'" tag handle'),P2n.test(o)||$p(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=o}};function poe(e,t,r,n){var a,o,l,A;if(t1&&(e.result+=s$.repeat(` -`,t-1))}function C$s(e,t,r){var n,a,o,l,A,f,I,C,b=e.kind,E=e.result,N;if(N=e.input.charCodeAt(e.position),X9(N)||XSe(N)||N===35||N===38||N===42||N===33||N===124||N===62||N===39||N===34||N===37||N===64||N===96||(N===63||N===45)&&(a=e.input.charCodeAt(e.position+1),X9(a)||r&&XSe(a)))return!1;for(e.kind="scalar",e.result="",o=l=e.position,A=!1;N!==0;){if(N===58){if(a=e.input.charCodeAt(e.position+1),X9(a)||r&&XSe(a))break}else if(N===35){if(n=e.input.charCodeAt(e.position-1),X9(n))break}else{if(e.position===e.lineStart&&plt(e)||r&&XSe(N))break;if(jK(N))if(f=e.line,I=e.lineStart,C=e.lineIndent,nT(e,!1,-1),e.lineIndent>=t){A=!0,N=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=f,e.lineStart=I,e.lineIndent=C;break}}A&&(poe(e,o,l,!1),Yjt(e,e.line-f),o=l=e.position,A=!1),Yfe(N)||(l=e.position+1),N=e.input.charCodeAt(++e.position)}return poe(e,o,l,!1),e.result?!0:(e.kind=b,e.result=E,!1)}function _$s(e,t){var r,n,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(poe(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,a=e.position;else return!0;else jK(r)?(poe(e,n,a,!0),Yjt(e,nT(e,!1,t)),n=a=e.position):e.position===e.lineStart&&plt(e)?$p(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);$p(e,"unexpected end of the stream within a single quoted scalar")}function y$s(e,t){var r,n,a,o,l,A;if(A=e.input.charCodeAt(e.position),A!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(A=e.input.charCodeAt(e.position))!==0;){if(A===34)return poe(e,r,e.position,!0),e.position++,!0;if(A===92){if(poe(e,r,e.position,!0),A=e.input.charCodeAt(++e.position),jK(A))nT(e,!1,t);else if(A<256&&M2n[A])e.result+=H2n[A],e.position++;else if((l=f$s(A))>0){for(a=l,o=0;a>0;a--)A=e.input.charCodeAt(++e.position),(l=p$s(A))>=0?o=(o<<4)+l:$p(e,"expected hexadecimal character");e.result+=h$s(o),e.position++}else $p(e,"unknown escape sequence");r=n=e.position}else jK(A)?(poe(e,r,n,!0),Yjt(e,nT(e,!1,t)),r=n=e.position):e.position===e.lineStart&&plt(e)?$p(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}$p(e,"unexpected end of the stream within a double quoted scalar")}function b$s(e,t){var r=!0,n,a=e.tag,o,l=e.anchor,A,f,I,C,b,E={},N,B,F,Q;if(Q=e.input.charCodeAt(e.position),Q===91)f=93,b=!1,o=[];else if(Q===123)f=125,b=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),Q=e.input.charCodeAt(++e.position);Q!==0;){if(nT(e,!0,t),Q=e.input.charCodeAt(e.position),Q===f)return e.position++,e.tag=a,e.anchor=l,e.kind=b?"mapping":"sequence",e.result=o,!0;r||$p(e,"missed comma between flow collection entries"),B=N=F=null,I=C=!1,Q===63&&(A=e.input.charCodeAt(e.position+1),X9(A)&&(I=C=!0,e.position++,nT(e,!0,t))),n=e.line,USe(e,t,glt,!1,!0),B=e.tag,N=e.result,nT(e,!0,t),Q=e.input.charCodeAt(e.position),(C||e.line===n)&&Q===58&&(I=!0,Q=e.input.charCodeAt(++e.position),nT(e,!0,t),USe(e,t,glt,!1,!0),F=e.result),b?JSe(e,o,E,B,N,F):I?o.push(JSe(e,null,E,B,N,F)):o.push(N),nT(e,!0,t),Q=e.input.charCodeAt(e.position),Q===44?(r=!0,Q=e.input.charCodeAt(++e.position)):r=!1}$p(e,"unexpected end of the stream within a flow collection")}function E$s(e,t){var r,n,a=Mjt,o=!1,l=!1,A=t,f=0,I=!1,C,b;if(b=e.input.charCodeAt(e.position),b===124)n=!1;else if(b===62)n=!0;else return!1;for(e.kind="scalar",e.result="";b!==0;)if(b=e.input.charCodeAt(++e.position),b===43||b===45)Mjt===a?a=b===43?N2n:u$s:$p(e,"repeat of a chomping mode identifier");else if((C=I$s(b))>=0)C===0?$p(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?$p(e,"repeat of an indentation width identifier"):(A=t+C-1,l=!0);else break;if(Yfe(b)){do b=e.input.charCodeAt(++e.position);while(Yfe(b));if(b===35)do b=e.input.charCodeAt(++e.position);while(!jK(b)&&b!==0)}for(;b!==0;){for(Hjt(e),e.lineIndent=0,b=e.input.charCodeAt(e.position);(!l||e.lineIndentA&&(A=e.lineIndent),jK(b)){f++;continue}if(e.lineIndentr/2-1){o=" ... ",l-=5;break}return A=this.buffer.slice(a,l),O1n.repeat(" ",t)+n+A+o+` +`+O1n.repeat(" ",t+this.position-a+n.length)+"^"};Ljt.prototype.toString=function(t){var r,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(n+=`: +`+r)),n};P1n.exports=Ljt});var RR=H((l3l,Y1n)=>{"use strict";var H1n=HSe(),Mzs=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],Hzs=["scalar","sequence","mapping"];function Yzs(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function Qzs(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(Mzs.indexOf(r)===-1)throw new H1n('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=Yzs(t.styleAliases||null),Hzs.indexOf(this.kind)===-1)throw new H1n('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}Y1n.exports=Qzs});var Mfe=H((u3l,X1n)=>{"use strict";var Q1n=Pfe(),alt=HSe(),Xzs=RR();function Vjt(e,t,r){var n=[];return e.include.forEach(function(a){r=Vjt(a,t,r)}),e[t].forEach(function(a){r.forEach(function(o,l){o.tag===a.tag&&o.kind===a.kind&&n.push(l)}),r.push(a)}),r.filter(function(a,o){return n.indexOf(o)===-1})}function Jzs(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function n(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t{"use strict";var Uzs=RR();J1n.exports=new Uzs("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var j1n=H((A3l,K1n)=>{"use strict";var Kzs=RR();K1n.exports=new Kzs("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var q1n=H((d3l,z1n)=>{"use strict";var jzs=RR();z1n.exports=new jzs("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var clt=H((p3l,$1n)=>{"use strict";var zzs=Mfe();$1n.exports=new zzs({explicit:[U1n(),j1n(),q1n()]})});var t2n=H((f3l,e2n)=>{"use strict";var qzs=RR();function $zs(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function eqs(){return null}function tqs(e){return e===null}e2n.exports=new qzs("tag:yaml.org,2002:null",{kind:"scalar",resolve:$zs,construct:eqs,predicate:tqs,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var n2n=H((I3l,r2n)=>{"use strict";var rqs=RR();function nqs(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function iqs(e){return e==="true"||e==="True"||e==="TRUE"}function sqs(e){return Object.prototype.toString.call(e)==="[object Boolean]"}r2n.exports=new rqs("tag:yaml.org,2002:bool",{kind:"scalar",resolve:nqs,construct:iqs,predicate:sqs,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var s2n=H((h3l,i2n)=>{"use strict";var oqs=Pfe(),aqs=RR();function cqs(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function lqs(e){return 48<=e&&e<=55}function uqs(e){return 48<=e&&e<=57}function gqs(e){if(e===null)return!1;var t=e.length,r=0,n=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var c2n=H((m3l,a2n)=>{"use strict";var o2n=Pfe(),pqs=RR(),fqs=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Iqs(e){return!(e===null||!fqs.test(e)||e[e.length-1]==="_")}function hqs(e){var t,r,n,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(o){a.unshift(parseFloat(o,10))}),t=0,n=1,a.forEach(function(o){t+=o*n,n*=60}),r*t):r*parseFloat(t,10)}var mqs=/^[-+]?[0-9]+e/;function Cqs(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(o2n.isNegativeZero(e))return"-0.0";return r=e.toString(10),mqs.test(r)?r.replace("e",".e"):r}function _qs(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||o2n.isNegativeZero(e))}a2n.exports=new pqs("tag:yaml.org,2002:float",{kind:"scalar",resolve:Iqs,construct:hqs,predicate:_qs,represent:Cqs,defaultStyle:"lowercase"})});var Wjt=H((C3l,l2n)=>{"use strict";var yqs=Mfe();l2n.exports=new yqs({include:[clt()],implicit:[t2n(),n2n(),s2n(),c2n()]})});var Ojt=H((_3l,u2n)=>{"use strict";var bqs=Mfe();u2n.exports=new bqs({include:[Wjt()]})});var p2n=H((y3l,d2n)=>{"use strict";var Eqs=RR(),g2n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),A2n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Sqs(e){return e===null?!1:g2n.exec(e)!==null||A2n.exec(e)!==null}function vqs(e){var t,r,n,a,o,l,A,f=0,I=null,C,b,E;if(t=g2n.exec(e),t===null&&(t=A2n.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,n,a));if(o=+t[4],l=+t[5],A=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(C=+t[10],b=+(t[11]||0),I=(C*60+b)*6e4,t[9]==="-"&&(I=-I)),E=new Date(Date.UTC(r,n,a,o,l,A,f)),I&&E.setTime(E.getTime()-I),E}function Bqs(e){return e.toISOString()}d2n.exports=new Eqs("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Sqs,construct:vqs,instanceOf:Date,represent:Bqs})});var I2n=H((b3l,f2n)=>{"use strict";var wqs=RR();function Tqs(e){return e==="<<"||e===null}f2n.exports=new wqs("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Tqs})});var C2n=H((E3l,m2n)=>{"use strict";var Hfe;try{h2n=Et,Hfe=h2n("buffer").Buffer}catch{}var h2n,Rqs=RR(),Pjt=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function Nqs(e){if(e===null)return!1;var t,r,n=0,a=e.length,o=Pjt;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function Dqs(e){var t,r,n=e.replace(/[\r\n=]/g,""),a=n.length,o=Pjt,l=0,A=[];for(t=0;t>16&255),A.push(l>>8&255),A.push(l&255)),l=l<<6|o.indexOf(n.charAt(t));return r=a%4*6,r===0?(A.push(l>>16&255),A.push(l>>8&255),A.push(l&255)):r===18?(A.push(l>>10&255),A.push(l>>2&255)):r===12&&A.push(l>>4&255),Hfe?Hfe.from?Hfe.from(A):new Hfe(A):A}function kqs(e){var t="",r=0,n,a,o=e.length,l=Pjt;for(n=0;n>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]),r=(r<<8)+e[n];return a=o%3,a===0?(t+=l[r>>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]):a===2?(t+=l[r>>10&63],t+=l[r>>4&63],t+=l[r<<2&63],t+=l[64]):a===1&&(t+=l[r>>2&63],t+=l[r<<4&63],t+=l[64],t+=l[64]),t}function xqs(e){return Hfe&&Hfe.isBuffer(e)}m2n.exports=new Rqs("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Nqs,construct:Dqs,predicate:xqs,represent:kqs})});var y2n=H((v3l,_2n)=>{"use strict";var Gqs=RR(),Fqs=Object.prototype.hasOwnProperty,Zqs=Object.prototype.toString;function Lqs(e){if(e===null)return!0;var t=[],r,n,a,o,l,A=e;for(r=0,n=A.length;r{"use strict";var Wqs=RR(),Oqs=Object.prototype.toString;function Pqs(e){if(e===null)return!0;var t,r,n,a,o,l=e;for(o=new Array(l.length),t=0,r=l.length;t{"use strict";var Hqs=RR(),Yqs=Object.prototype.hasOwnProperty;function Qqs(e){if(e===null)return!0;var t,r=e;for(t in r)if(Yqs.call(r,t)&&r[t]!==null)return!1;return!0}function Xqs(e){return e!==null?e:{}}S2n.exports=new Hqs("tag:yaml.org,2002:set",{kind:"mapping",resolve:Qqs,construct:Xqs})});var QSe=H((T3l,B2n)=>{"use strict";var Jqs=Mfe();B2n.exports=new Jqs({include:[Ojt()],implicit:[p2n(),I2n()],explicit:[C2n(),y2n(),E2n(),v2n()]})});var T2n=H((R3l,w2n)=>{"use strict";var Uqs=RR();function Kqs(){return!0}function jqs(){}function zqs(){return""}function qqs(e){return typeof e>"u"}w2n.exports=new Uqs("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:Kqs,construct:jqs,predicate:qqs,represent:zqs})});var N2n=H((N3l,R2n)=>{"use strict";var $qs=RR();function e$s(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),n="";return!(t[0]==="/"&&(r&&(n=r[1]),n.length>3||t[t.length-n.length-1]!=="/"))}function t$s(e){var t=e,r=/\/([gim]*)$/.exec(e),n="";return t[0]==="/"&&(r&&(n=r[1]),t=t.slice(1,t.length-n.length-1)),new RegExp(t,n)}function r$s(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function n$s(e){return Object.prototype.toString.call(e)==="[object RegExp]"}R2n.exports=new $qs("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:e$s,construct:t$s,predicate:n$s,represent:r$s})});var x2n=H((D3l,k2n)=>{"use strict";var llt;try{D2n=Et,llt=D2n("esprima")}catch{typeof window<"u"&&(llt=window.esprima)}var D2n,i$s=RR();function s$s(e){if(e===null)return!1;try{var t="("+e+")",r=llt.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function o$s(e){var t="("+e+")",r=llt.parse(t,{range:!0}),n=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(o){n.push(o.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(n,t.slice(a[0]+1,a[1]-1)):new Function(n,"return "+t.slice(a[0],a[1]))}function a$s(e){return e.toString()}function c$s(e){return Object.prototype.toString.call(e)==="[object Function]"}k2n.exports=new i$s("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:s$s,construct:o$s,predicate:c$s,represent:a$s})});var y3e=H((x3l,F2n)=>{"use strict";var G2n=Mfe();F2n.exports=G2n.DEFAULT=new G2n({include:[QSe()],explicit:[T2n(),N2n(),x2n()]})});var eSn=H((G3l,b3e)=>{"use strict";var o$=Pfe(),M2n=HSe(),l$s=M1n(),H2n=QSe(),u$s=y3e(),Ioe=Object.prototype.hasOwnProperty,ult=1,Y2n=2,Q2n=3,glt=4,Mjt=1,g$s=2,Z2n=3,A$s=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,d$s=/[\x85\u2028\u2029]/,p$s=/[,\[\]\{\}]/,X2n=/^(?:!|!!|![a-z\-]+!)$/i,J2n=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function L2n(e){return Object.prototype.toString.call(e)}function zK(e){return e===10||e===13}function Qfe(e){return e===9||e===32}function J9(e){return e===9||e===32||e===10||e===13}function XSe(e){return e===44||e===91||e===93||e===123||e===125}function f$s(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function I$s(e){return e===120?2:e===117?4:e===85?8:0}function h$s(e){return 48<=e&&e<=57?e-48:-1}function V2n(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` +`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function m$s(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var U2n=new Array(256),K2n=new Array(256);for(Yfe=0;Yfe<256;Yfe++)U2n[Yfe]=V2n(Yfe)?1:0,K2n[Yfe]=V2n(Yfe);var Yfe;function C$s(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||u$s,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function j2n(e,t){return new M2n(t,new l$s(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function $p(e,t){throw j2n(e,t)}function Alt(e,t){e.onWarning&&e.onWarning.call(null,j2n(e,t))}var W2n={YAML:function(t,r,n){var a,o,l;t.version!==null&&$p(t,"duplication of %YAML directive"),n.length!==1&&$p(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),a===null&&$p(t,"ill-formed argument of the YAML directive"),o=parseInt(a[1],10),l=parseInt(a[2],10),o!==1&&$p(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&Alt(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var a,o;n.length!==2&&$p(t,"TAG directive accepts exactly two arguments"),a=n[0],o=n[1],X2n.test(a)||$p(t,"ill-formed tag handle (first argument) of the TAG directive"),Ioe.call(t.tagMap,a)&&$p(t,'there is a previously declared suffix for "'+a+'" tag handle'),J2n.test(o)||$p(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=o}};function foe(e,t,r,n){var a,o,l,A;if(t1&&(e.result+=o$.repeat(` +`,t-1))}function _$s(e,t,r){var n,a,o,l,A,f,I,C,b=e.kind,E=e.result,N;if(N=e.input.charCodeAt(e.position),J9(N)||XSe(N)||N===35||N===38||N===42||N===33||N===124||N===62||N===39||N===34||N===37||N===64||N===96||(N===63||N===45)&&(a=e.input.charCodeAt(e.position+1),J9(a)||r&&XSe(a)))return!1;for(e.kind="scalar",e.result="",o=l=e.position,A=!1;N!==0;){if(N===58){if(a=e.input.charCodeAt(e.position+1),J9(a)||r&&XSe(a))break}else if(N===35){if(n=e.input.charCodeAt(e.position-1),J9(n))break}else{if(e.position===e.lineStart&&dlt(e)||r&&XSe(N))break;if(zK(N))if(f=e.line,I=e.lineStart,C=e.lineIndent,iT(e,!1,-1),e.lineIndent>=t){A=!0,N=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=f,e.lineStart=I,e.lineIndent=C;break}}A&&(foe(e,o,l,!1),Yjt(e,e.line-f),o=l=e.position,A=!1),Qfe(N)||(l=e.position+1),N=e.input.charCodeAt(++e.position)}return foe(e,o,l,!1),e.result?!0:(e.kind=b,e.result=E,!1)}function y$s(e,t){var r,n,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(foe(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,a=e.position;else return!0;else zK(r)?(foe(e,n,a,!0),Yjt(e,iT(e,!1,t)),n=a=e.position):e.position===e.lineStart&&dlt(e)?$p(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);$p(e,"unexpected end of the stream within a single quoted scalar")}function b$s(e,t){var r,n,a,o,l,A;if(A=e.input.charCodeAt(e.position),A!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(A=e.input.charCodeAt(e.position))!==0;){if(A===34)return foe(e,r,e.position,!0),e.position++,!0;if(A===92){if(foe(e,r,e.position,!0),A=e.input.charCodeAt(++e.position),zK(A))iT(e,!1,t);else if(A<256&&U2n[A])e.result+=K2n[A],e.position++;else if((l=I$s(A))>0){for(a=l,o=0;a>0;a--)A=e.input.charCodeAt(++e.position),(l=f$s(A))>=0?o=(o<<4)+l:$p(e,"expected hexadecimal character");e.result+=m$s(o),e.position++}else $p(e,"unknown escape sequence");r=n=e.position}else zK(A)?(foe(e,r,n,!0),Yjt(e,iT(e,!1,t)),r=n=e.position):e.position===e.lineStart&&dlt(e)?$p(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}$p(e,"unexpected end of the stream within a double quoted scalar")}function E$s(e,t){var r=!0,n,a=e.tag,o,l=e.anchor,A,f,I,C,b,E={},N,B,F,Q;if(Q=e.input.charCodeAt(e.position),Q===91)f=93,b=!1,o=[];else if(Q===123)f=125,b=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),Q=e.input.charCodeAt(++e.position);Q!==0;){if(iT(e,!0,t),Q=e.input.charCodeAt(e.position),Q===f)return e.position++,e.tag=a,e.anchor=l,e.kind=b?"mapping":"sequence",e.result=o,!0;r||$p(e,"missed comma between flow collection entries"),B=N=F=null,I=C=!1,Q===63&&(A=e.input.charCodeAt(e.position+1),J9(A)&&(I=C=!0,e.position++,iT(e,!0,t))),n=e.line,USe(e,t,ult,!1,!0),B=e.tag,N=e.result,iT(e,!0,t),Q=e.input.charCodeAt(e.position),(C||e.line===n)&&Q===58&&(I=!0,Q=e.input.charCodeAt(++e.position),iT(e,!0,t),USe(e,t,ult,!1,!0),F=e.result),b?JSe(e,o,E,B,N,F):I?o.push(JSe(e,null,E,B,N,F)):o.push(N),iT(e,!0,t),Q=e.input.charCodeAt(e.position),Q===44?(r=!0,Q=e.input.charCodeAt(++e.position)):r=!1}$p(e,"unexpected end of the stream within a flow collection")}function S$s(e,t){var r,n,a=Mjt,o=!1,l=!1,A=t,f=0,I=!1,C,b;if(b=e.input.charCodeAt(e.position),b===124)n=!1;else if(b===62)n=!0;else return!1;for(e.kind="scalar",e.result="";b!==0;)if(b=e.input.charCodeAt(++e.position),b===43||b===45)Mjt===a?a=b===43?Z2n:g$s:$p(e,"repeat of a chomping mode identifier");else if((C=h$s(b))>=0)C===0?$p(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?$p(e,"repeat of an indentation width identifier"):(A=t+C-1,l=!0);else break;if(Qfe(b)){do b=e.input.charCodeAt(++e.position);while(Qfe(b));if(b===35)do b=e.input.charCodeAt(++e.position);while(!zK(b)&&b!==0)}for(;b!==0;){for(Hjt(e),e.lineIndent=0,b=e.input.charCodeAt(e.position);(!l||e.lineIndentA&&(A=e.lineIndent),zK(b)){f++;continue}if(e.lineIndentt)&&f!==0)$p(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(USe(e,t,Alt,!0,a)&&(B?E=e.result:N=e.result),B||(JSe(e,I,C,b,E,N,o,l),b=E=N=null),nT(e,!0,-1),Q=e.input.charCodeAt(e.position)),e.lineIndent>t&&Q!==0)$p(e,"bad indentation of a mapping entry");else if(e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),b=0,E=e.implicitTypes.length;b tag; it should be "'+N.kind+'", not "'+e.kind+'"'),N.resolve(e.result)?(e.result=N.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):$p(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):$p(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||C}function T$s(e){var t=e.position,r,n,a,o=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(l=e.input.charCodeAt(e.position))!==0&&(nT(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(o=!0,l=e.input.charCodeAt(++e.position),r=e.position;l!==0&&!X9(l);)l=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),a=[],n.length<1&&$p(e,"directive name must not be less than one character in length");l!==0;){for(;Yfe(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!jK(l));break}if(jK(l))break;for(r=e.position;l!==0&&!X9(l);)l=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}l!==0&&Hjt(e),foe.call(x2n,n)?x2n[n](e,n,a):dlt(e,'unknown document directive "'+n+'"')}if(nT(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,nT(e,!0,-1)):o&&$p(e,"directives end mark is expected"),USe(e,e.lineIndent-1,Alt,!1,!0),nT(e,!0,-1),e.checkLineBreaks&&A$s.test(e.input.slice(t,e.position))&&dlt(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&plt(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,nT(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=Q2n(e,r);if(typeof t!="function")return n;for(var a=0,o=n.length;a"u"&&(r=t,t=null),X2n(e,t,s$.extend({schema:L2n},r))}function N$s(e,t){return J2n(e,s$.extend({schema:L2n},t))}b3e.exports.loadAll=X2n;b3e.exports.load=J2n;b3e.exports.safeLoadAll=R$s;b3e.exports.safeLoad=N$s});var hSn=H((VPl,Ujt)=>{"use strict";var S3e=Ofe(),v3e=HSe(),D$s=y3e(),k$s=QSe(),rSn=Object.prototype.toString,nSn=Object.prototype.hasOwnProperty,x$s=9,E3e=10,G$s=13,F$s=32,Z$s=33,L$s=34,iSn=35,V$s=37,W$s=38,O$s=39,P$s=42,sSn=44,M$s=45,oSn=58,H$s=61,Y$s=62,Q$s=63,X$s=64,aSn=91,cSn=93,J$s=96,lSn=123,U$s=124,uSn=125,AG={};AG[0]="\\0";AG[7]="\\a";AG[8]="\\b";AG[9]="\\t";AG[10]="\\n";AG[11]="\\v";AG[12]="\\f";AG[13]="\\r";AG[27]="\\e";AG[34]='\\"';AG[92]="\\\\";AG[133]="\\N";AG[160]="\\_";AG[8232]="\\L";AG[8233]="\\P";var K$s=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function j$s(e,t){var r,n,a,o,l,A,f;if(t===null)return{};for(r={},n=Object.keys(t),a=0,o=n.length;at)&&f!==0)$p(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(USe(e,t,glt,!0,a)&&(B?E=e.result:N=e.result),B||(JSe(e,I,C,b,E,N,o,l),b=E=N=null),iT(e,!0,-1),Q=e.input.charCodeAt(e.position)),e.lineIndent>t&&Q!==0)$p(e,"bad indentation of a mapping entry");else if(e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),b=0,E=e.implicitTypes.length;b tag; it should be "'+N.kind+'", not "'+e.kind+'"'),N.resolve(e.result)?(e.result=N.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):$p(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):$p(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||C}function R$s(e){var t=e.position,r,n,a,o=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(l=e.input.charCodeAt(e.position))!==0&&(iT(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(o=!0,l=e.input.charCodeAt(++e.position),r=e.position;l!==0&&!J9(l);)l=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),a=[],n.length<1&&$p(e,"directive name must not be less than one character in length");l!==0;){for(;Qfe(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!zK(l));break}if(zK(l))break;for(r=e.position;l!==0&&!J9(l);)l=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}l!==0&&Hjt(e),Ioe.call(W2n,n)?W2n[n](e,n,a):Alt(e,'unknown document directive "'+n+'"')}if(iT(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,iT(e,!0,-1)):o&&$p(e,"directives end mark is expected"),USe(e,e.lineIndent-1,glt,!1,!0),iT(e,!0,-1),e.checkLineBreaks&&d$s.test(e.input.slice(t,e.position))&&Alt(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&dlt(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,iT(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=z2n(e,r);if(typeof t!="function")return n;for(var a=0,o=n.length;a"u"&&(r=t,t=null),q2n(e,t,o$.extend({schema:H2n},r))}function D$s(e,t){return $2n(e,o$.extend({schema:H2n},t))}b3e.exports.loadAll=q2n;b3e.exports.load=$2n;b3e.exports.safeLoadAll=N$s;b3e.exports.safeLoad=D$s});var ESn=H((F3l,Ujt)=>{"use strict";var S3e=Pfe(),v3e=HSe(),k$s=y3e(),x$s=QSe(),cSn=Object.prototype.toString,lSn=Object.prototype.hasOwnProperty,G$s=9,E3e=10,F$s=13,Z$s=32,L$s=33,V$s=34,uSn=35,W$s=37,O$s=38,P$s=39,M$s=42,gSn=44,H$s=45,ASn=58,Y$s=61,Q$s=62,X$s=63,J$s=64,dSn=91,pSn=93,U$s=96,fSn=123,K$s=124,ISn=125,dG={};dG[0]="\\0";dG[7]="\\a";dG[8]="\\b";dG[9]="\\t";dG[10]="\\n";dG[11]="\\v";dG[12]="\\f";dG[13]="\\r";dG[27]="\\e";dG[34]='\\"';dG[92]="\\\\";dG[133]="\\N";dG[160]="\\_";dG[8232]="\\L";dG[8233]="\\P";var j$s=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function z$s(e,t){var r,n,a,o,l,A,f;if(t===null)return{};for(r={},n=Object.keys(t),a=0,o=n.length;a0?e.charCodeAt(o-1):null,E=E&&z2n(l,A)}else{for(o=0;on&&e[b+1]!==" ",b=o);else if(!KSe(l))return flt;A=o>0?e.charCodeAt(o-1):null,E=E&&z2n(l,A)}I=I||C&&o-b-1>n&&e[b+1]!==" "}return!f&&!I?E&&!a(e)?ASn:dSn:r>9&&gSn(e)?flt:I?fSn:pSn}function reo(e,t,r,n){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&K$s.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),l=n||e.flowLevel>-1&&r>=e.flowLevel;function A(f){return q$s(e,f)}switch(teo(t,l,e.indent,o,A)){case ASn:return t;case dSn:return"'"+t.replace(/'/g,"''")+"'";case pSn:return"|"+q2n(t,e.indent)+$2n(j2n(t,a));case fSn:return">"+q2n(t,e.indent)+$2n(j2n(neo(t,o),a));case flt:return'"'+ieo(t,o)+'"';default:throw new v3e("impossible error: invalid scalar style")}}()}function q2n(e,t){var r=gSn(e)?String(t):"",n=e[e.length-1]===` +`+S3e.repeat(" ",e.indent*t)}function $$s(e,t){var r,n,a;for(r=0,n=e.implicitTypes.length;r0?e.charCodeAt(o-1):null,E=E&&nSn(l,A)}else{for(o=0;on&&e[b+1]!==" ",b=o);else if(!KSe(l))return plt;A=o>0?e.charCodeAt(o-1):null,E=E&&nSn(l,A)}I=I||C&&o-b-1>n&&e[b+1]!==" "}return!f&&!I?E&&!a(e)?mSn:CSn:r>9&&hSn(e)?plt:I?ySn:_Sn}function neo(e,t,r,n){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&j$s.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),l=n||e.flowLevel>-1&&r>=e.flowLevel;function A(f){return $$s(e,f)}switch(reo(t,l,e.indent,o,A)){case mSn:return t;case CSn:return"'"+t.replace(/'/g,"''")+"'";case _Sn:return"|"+iSn(t,e.indent)+sSn(rSn(t,a));case ySn:return">"+iSn(t,e.indent)+sSn(rSn(ieo(t,o),a));case plt:return'"'+seo(t,o)+'"';default:throw new v3e("impossible error: invalid scalar style")}}()}function iSn(e,t){var r=hSn(e)?String(t):"",n=e[e.length-1]===` `,a=n&&(e[e.length-2]===` `||e===` `),o=a?"+":n?"":"-";return r+o+` -`}function $2n(e){return e[e.length-1]===` -`?e.slice(0,-1):e}function neo(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var I=e.indexOf(` -`);return I=I!==-1?I:e.length,r.lastIndex=I,eSn(e.slice(0,I),t)}(),a=e[0]===` +`}function sSn(e){return e[e.length-1]===` +`?e.slice(0,-1):e}function ieo(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var I=e.indexOf(` +`);return I=I!==-1?I:e.length,r.lastIndex=I,oSn(e.slice(0,I),t)}(),a=e[0]===` `||e[0]===" ",o,l;l=r.exec(e);){var A=l[1],f=l[2];o=f[0]===" ",n+=A+(!a&&!o&&f!==""?` -`:"")+eSn(f,t),a=o}return n}function eSn(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,a=0,o,l=0,A=0,f="";n=r.exec(e);)A=n.index,A-a>t&&(o=l>a?l:A,f+=` +`:"")+oSn(f,t),a=o}return n}function oSn(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,a=0,o,l=0,A=0,f="";n=r.exec(e);)A=n.index,A-a>t&&(o=l>a?l:A,f+=` `+e.slice(a,o),a=o+1),l=A;return f+=` `,e.length-a>t&&l>a?f+=e.slice(a,l)+` -`+e.slice(l+1):f+=e.slice(a),f.slice(1)}function ieo(e){for(var t="",r,n,a,o=0;o=55296&&r<=56319&&(n=e.charCodeAt(o+1),n>=56320&&n<=57343)){t+=K2n((r-55296)*1024+n-56320+65536),o++;continue}a=AG[r],t+=!a&&KSe(r)?e[o]:a||K2n(r)}return t}function seo(e,t,r){var n="",a=e.tag,o,l;for(o=0,l=r.length;o1024&&(C+="? "),C+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Qfe(e,t,I,!1,!1)&&(C+=e.dump,n+=C));e.tag=a,e.dump="{"+n+"}"}function ceo(e,t,r,n){var a="",o=e.tag,l=Object.keys(r),A,f,I,C,b,E;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new v3e("sortKeys must be a boolean or a function");for(A=0,f=l.length;A1024,b&&(e.dump&&E3e===e.dump.charCodeAt(0)?E+="?":E+="? "),E+=e.dump,b&&(E+=Qjt(e,t)),Qfe(e,t+1,C,!0,b)&&(e.dump&&E3e===e.dump.charCodeAt(0)?E+=":":E+=": ",E+=e.dump,a+=E));e.tag=o,e.dump=a||"{}"}function tSn(e,t,r){var n,a,o,l,A,f;for(a=r?e.explicitTypes:e.implicitTypes,o=0,l=a.length;o tag resolver accepts not "'+f+'" style');e.dump=n}return!0}return!1}function Qfe(e,t,r,n,a,o){e.tag=null,e.dump=r,tSn(e,r,!1)||tSn(e,r,!0);var l=rSn.call(e.dump);n&&(n=e.flowLevel<0||e.flowLevel>t);var A=l==="[object Object]"||l==="[object Array]",f,I;if(A&&(f=e.duplicates.indexOf(r),I=f!==-1),(e.tag!==null&&e.tag!=="?"||I||e.indent!==2&&t>0)&&(a=!1),I&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(A&&I&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),l==="[object Object]")n&&Object.keys(e.dump).length!==0?(ceo(e,t,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(aeo(e,t,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump));else if(l==="[object Array]"){var C=e.noArrayIndent&&t>0?t-1:t;n&&e.dump.length!==0?(oeo(e,C,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(seo(e,C,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump))}else if(l==="[object String]")e.tag!=="?"&&reo(e,e.dump,t,o);else{if(e.skipInvalid)return!1;throw new v3e("unacceptable kind of an object to dump "+l)}e.tag!==null&&e.tag!=="?"&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function leo(e,t){var r=[],n=[],a,o;for(Xjt(e,r,n),a=0,o=n.length;a{"use strict";var Ilt=U2n(),mSn=hSn();function hlt(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}Wv.exports.Type=TR();Wv.exports.Schema=Pfe();Wv.exports.FAILSAFE_SCHEMA=llt();Wv.exports.JSON_SCHEMA=Wjt();Wv.exports.CORE_SCHEMA=Ojt();Wv.exports.DEFAULT_SAFE_SCHEMA=QSe();Wv.exports.DEFAULT_FULL_SCHEMA=y3e();Wv.exports.load=Ilt.load;Wv.exports.loadAll=Ilt.loadAll;Wv.exports.safeLoad=Ilt.safeLoad;Wv.exports.safeLoadAll=Ilt.safeLoadAll;Wv.exports.dump=mSn.dump;Wv.exports.safeDump=mSn.safeDump;Wv.exports.YAMLException=HSe();Wv.exports.MINIMAL_SCHEMA=llt();Wv.exports.SAFE_SCHEMA=QSe();Wv.exports.DEFAULT_SCHEMA=y3e();Wv.exports.scan=hlt("scan");Wv.exports.parse=hlt("parse");Wv.exports.compose=hlt("compose");Wv.exports.addConstructor=hlt("addConstructor")});var ySn=H((OPl,_Sn)=>{"use strict";var geo=CSn();_Sn.exports=geo});var ESn=H((PPl,bSn)=>{"use strict";function Aeo(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Xfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Xfe)}Aeo(Xfe,Error);Xfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b({[aa]:di})))},fe=function(Dr){return Dr},ue=function(Dr){return Dr},de=Gs("correct indentation"),be=" ",Se=Ki(" ",!1),De=function(Dr){return Dr.length===Hl*Ea},k=function(Dr){return Dr.length===(Hl+1)*Ea},tt=function(){return Hl++,!0},ze=function(){return Hl--,!0},Le=function(){return zf()},Je=Gs("pseudostring"),ft=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,lt=cc(["\r",` +`+e.slice(l+1):f+=e.slice(a),f.slice(1)}function seo(e){for(var t="",r,n,a,o=0;o=55296&&r<=56319&&(n=e.charCodeAt(o+1),n>=56320&&n<=57343)){t+=tSn((r-55296)*1024+n-56320+65536),o++;continue}a=dG[r],t+=!a&&KSe(r)?e[o]:a||tSn(r)}return t}function oeo(e,t,r){var n="",a=e.tag,o,l;for(o=0,l=r.length;o1024&&(C+="? "),C+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Xfe(e,t,I,!1,!1)&&(C+=e.dump,n+=C));e.tag=a,e.dump="{"+n+"}"}function leo(e,t,r,n){var a="",o=e.tag,l=Object.keys(r),A,f,I,C,b,E;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new v3e("sortKeys must be a boolean or a function");for(A=0,f=l.length;A1024,b&&(e.dump&&E3e===e.dump.charCodeAt(0)?E+="?":E+="? "),E+=e.dump,b&&(E+=Qjt(e,t)),Xfe(e,t+1,C,!0,b)&&(e.dump&&E3e===e.dump.charCodeAt(0)?E+=":":E+=": ",E+=e.dump,a+=E));e.tag=o,e.dump=a||"{}"}function aSn(e,t,r){var n,a,o,l,A,f;for(a=r?e.explicitTypes:e.implicitTypes,o=0,l=a.length;o tag resolver accepts not "'+f+'" style');e.dump=n}return!0}return!1}function Xfe(e,t,r,n,a,o){e.tag=null,e.dump=r,aSn(e,r,!1)||aSn(e,r,!0);var l=cSn.call(e.dump);n&&(n=e.flowLevel<0||e.flowLevel>t);var A=l==="[object Object]"||l==="[object Array]",f,I;if(A&&(f=e.duplicates.indexOf(r),I=f!==-1),(e.tag!==null&&e.tag!=="?"||I||e.indent!==2&&t>0)&&(a=!1),I&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(A&&I&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),l==="[object Object]")n&&Object.keys(e.dump).length!==0?(leo(e,t,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(ceo(e,t,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump));else if(l==="[object Array]"){var C=e.noArrayIndent&&t>0?t-1:t;n&&e.dump.length!==0?(aeo(e,C,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(oeo(e,C,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump))}else if(l==="[object String]")e.tag!=="?"&&neo(e,e.dump,t,o);else{if(e.skipInvalid)return!1;throw new v3e("unacceptable kind of an object to dump "+l)}e.tag!==null&&e.tag!=="?"&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function ueo(e,t){var r=[],n=[],a,o;for(Xjt(e,r,n),a=0,o=n.length;a{"use strict";var flt=eSn(),SSn=ESn();function Ilt(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}Ov.exports.Type=RR();Ov.exports.Schema=Mfe();Ov.exports.FAILSAFE_SCHEMA=clt();Ov.exports.JSON_SCHEMA=Wjt();Ov.exports.CORE_SCHEMA=Ojt();Ov.exports.DEFAULT_SAFE_SCHEMA=QSe();Ov.exports.DEFAULT_FULL_SCHEMA=y3e();Ov.exports.load=flt.load;Ov.exports.loadAll=flt.loadAll;Ov.exports.safeLoad=flt.safeLoad;Ov.exports.safeLoadAll=flt.safeLoadAll;Ov.exports.dump=SSn.dump;Ov.exports.safeDump=SSn.safeDump;Ov.exports.YAMLException=HSe();Ov.exports.MINIMAL_SCHEMA=clt();Ov.exports.SAFE_SCHEMA=QSe();Ov.exports.DEFAULT_SCHEMA=y3e();Ov.exports.scan=Ilt("scan");Ov.exports.parse=Ilt("parse");Ov.exports.compose=Ilt("compose");Ov.exports.addConstructor=Ilt("addConstructor")});var wSn=H((L3l,BSn)=>{"use strict";var Aeo=vSn();BSn.exports=Aeo});var RSn=H((V3l,TSn)=>{"use strict";function deo(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Jfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Jfe)}deo(Jfe,Error);Jfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b({[aa]:di})))},fe=function(Dr){return Dr},ue=function(Dr){return Dr},de=Gs("correct indentation"),be=" ",Se=Ki(" ",!1),De=function(Dr){return Dr.length===Hl*Ea},k=function(Dr){return Dr.length===(Hl+1)*Ea},tt=function(){return Hl++,!0},ze=function(){return Hl--,!0},Le=function(){return zf()},Je=Gs("pseudostring"),ft=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,lt=cc(["\r",` `," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),Ot=/^[^\r\n\t ,\][{}:#"']/,Er=cc(["\r",` -`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Sr=function(){return zf().replace(/^ *| *$/g,"")},jt="--",Bt=Ki("--",!1),Dt=/^[a-zA-Z\/0-9]/,Fr=cc([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),$t=/^[^\r\n\t :,]/,Xt=cc(["\r",` -`," "," ",":",","],!0,!1),lr="null",cr=Ki("null",!1),Ar=function(){return null},qr="true",yn=Ki("true",!1),ke=function(){return!0},zt="false",Fn=Ki("false",!1),Nn=function(){return!1},Hi=Gs("string"),Ao='"',Vr=Ki('"',!1),xi=function(){return""},no=function(Dr){return Dr},ga=function(Dr){return Dr.join("")},Ya=/^[^"\\\0-\x1F\x7F]/,Gc=cc(['"',"\\",["\0",""],"\x7F"],!0,!1),ol='\\"',Sc=Ki('\\"',!1),Hr=function(){return'"'},Or="\\\\",Ft=Ki("\\\\",!1),zr=function(){return"\\"},Rn="\\/",Pr=Ki("\\/",!1),Qi=function(){return"/"},ps="\\b",yo=Ki("\\b",!1),bo=function(){return"\b"},Qa="\\f",gc=Ki("\\f",!1),_g=function(){return"\f"},Nc="\\n",sA=Ki("\\n",!1),ma=function(){return` +`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Sr=function(){return zf().replace(/^ *| *$/g,"")},jt="--",Bt=Ki("--",!1),Nt=/^[a-zA-Z\/0-9]/,Fr=cc([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),$t=/^[^\r\n\t :,]/,Xt=cc(["\r",` +`," "," ",":",","],!0,!1),lr="null",cr=Ki("null",!1),Ar=function(){return null},qr="true",_n=Ki("true",!1),ke=function(){return!0},zt="false",Fn=Ki("false",!1),Nn=function(){return!1},Hi=Gs("string"),Ao='"',Vr=Ki('"',!1),xi=function(){return""},no=function(Dr){return Dr},ga=function(Dr){return Dr.join("")},Ya=/^[^"\\\0-\x1F\x7F]/,Gc=cc(['"',"\\",["\0",""],"\x7F"],!0,!1),al='\\"',Sc=Ki('\\"',!1),Hr=function(){return'"'},Or="\\\\",Ft=Ki("\\\\",!1),zr=function(){return"\\"},Rn="\\/",Pr=Ki("\\/",!1),Qi=function(){return"/"},ps="\\b",_o=Ki("\\b",!1),yo=function(){return"\b"},Qa="\\f",gc=Ki("\\f",!1),_g=function(){return"\f"},Nc="\\n",oA=Ki("\\n",!1),ma=function(){return` `},vu="\\r",li=Ki("\\r",!1),Ei=function(){return"\r"},Ws="\\t",Xa=Ki("\\t",!1),ac=function(){return" "},Ql="\\u",Oc=Ki("\\u",!1),vg=function(Dr,On,di,aa){return String.fromCharCode(parseInt(`0x${Dr}${On}${di}${aa}`))},Kl=/^[0-9a-fA-F]/,Ju=cc([["0","9"],["a","f"],["A","F"]],!1,!1),Da=Gs("blank space"),fu=/^[ \t]/,yg=cc([" "," "],!1,!1),_I=Gs("white space"),Kh=/^[ \t\n\r]/,Ri=cc([" "," ",` `,"\r"],!1,!1),Do=`\r `,Pt=Ki(`\r `,!1),Hu=` `,Ru=Ki(` -`,!1),Vs="\r",Uu=Ki("\r",!1),Yn=0,Ko=0,Sg=[{line:1,column:1}],HA=0,ZA=[],$i=0,gl;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function zf(){return e.substring(Ko,Yn)}function zd(){return Dc(Ko,Yn)}function aA(Dr,On){throw On=On!==void 0?On:Dc(Ko,Yn),Am([Gs(Dr)],e.substring(Ko,Yn),On)}function so(Dr,On){throw On=On!==void 0?On:Dc(Ko,Yn),Nf(Dr,On)}function Ki(Dr,On){return{type:"literal",text:Dr,ignoreCase:On}}function cc(Dr,On,di){return{type:"class",parts:Dr,inverted:On,ignoreCase:di}}function Xs(){return{type:"any"}}function ws(){return{type:"end"}}function Gs(Dr){return{type:"other",description:Dr}}function Ma(Dr){var On=Sg[Dr],di;if(On)return On;for(di=Dr-1;!Sg[di];)di--;for(On=Sg[di],On={line:On.line,column:On.column};diHA&&(HA=Yn,ZA=[]),ZA.push(Dr))}function Nf(Dr,On){return new Xfe(Dr,null,null,On)}function Am(Dr,On,di){return new Xfe(Xfe.buildMessage(Dr,On),Dr,On,di)}function Zl(){var Dr;return Dr=Qm(),Dr}function rc(){var Dr,On,di;for(Dr=Yn,On=[],di=ad();di!==r;)On.push(di),di=ad();return On!==r&&(Ko=Dr,On=o(On)),Dr=On,Dr}function ad(){var Dr,On,di,aa,Bo;return Dr=Yn,On=VA(),On!==r?(e.charCodeAt(Yn)===45?(di=l,Yn++):(di=r,$i===0&&As(A)),di!==r?(aa=QA(),aa!==r?(Bo=LA(),Bo!==r?(Ko=Dr,On=f(Bo),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function Qm(){var Dr,On,di;for(Dr=Yn,On=[],di=rl();di!==r;)On.push(di),di=rl();return On!==r&&(Ko=Dr,On=I(On)),Dr=On,Dr}function rl(){var Dr,On,di,aa,Bo,us,Xl,WA,If;if(Dr=Yn,On=QA(),On===r&&(On=null),On!==r){if(di=Yn,e.charCodeAt(Yn)===35?(aa=C,Yn++):(aa=r,$i===0&&As(b)),aa!==r){if(Bo=[],us=Yn,Xl=Yn,$i++,WA=io(),$i--,WA===r?Xl=void 0:(Yn=Xl,Xl=r),Xl!==r?(e.length>Yn?(WA=e.charAt(Yn),Yn++):(WA=r,$i===0&&As(E)),WA!==r?(Xl=[Xl,WA],us=Xl):(Yn=us,us=r)):(Yn=us,us=r),us!==r)for(;us!==r;)Bo.push(us),us=Yn,Xl=Yn,$i++,WA=io(),$i--,WA===r?Xl=void 0:(Yn=Xl,Xl=r),Xl!==r?(e.length>Yn?(WA=e.charAt(Yn),Yn++):(WA=r,$i===0&&As(E)),WA!==r?(Xl=[Xl,WA],us=Xl):(Yn=us,us=r)):(Yn=us,us=r);else Bo=r;Bo!==r?(aa=[aa,Bo],di=aa):(Yn=di,di=r)}else Yn=di,di=r;if(di===r&&(di=null),di!==r){if(aa=[],Bo=Zs(),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Zs();else aa=r;aa!==r?(Ko=Dr,On=N(),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r}else Yn=Dr,Dr=r;if(Dr===r&&(Dr=Yn,On=VA(),On!==r?(di=YA(),di!==r?(aa=QA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=QA(),us===r&&(us=null),us!==r?(Xl=LA(),Xl!==r?(Ko=Dr,On=Q(di,Xl),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,On=VA(),On!==r?(di=vr(),di!==r?(aa=QA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=QA(),us===r&&(us=null),us!==r?(Xl=LA(),Xl!==r?(Ko=Dr,On=Q(di,Xl),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))){if(Dr=Yn,On=VA(),On!==r)if(di=vr(),di!==r)if(aa=QA(),aa!==r)if(Bo=bn(),Bo!==r){if(us=[],Xl=Zs(),Xl!==r)for(;Xl!==r;)us.push(Xl),Xl=Zs();else us=r;us!==r?(Ko=Dr,On=Q(di,Bo),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;if(Dr===r)if(Dr=Yn,On=VA(),On!==r)if(di=vr(),di!==r){if(aa=[],Bo=Yn,us=QA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Xl=J,Yn++):(Xl=r,$i===0&&As(ae)),Xl!==r?(WA=QA(),WA===r&&(WA=null),WA!==r?(If=vr(),If!==r?(Ko=Bo,us=ne(di,If),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Yn,us=QA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Xl=J,Yn++):(Xl=r,$i===0&&As(ae)),Xl!==r?(WA=QA(),WA===r&&(WA=null),WA!==r?(If=vr(),If!==r?(Ko=Bo,us=ne(di,If),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r);else aa=r;aa!==r?(Bo=QA(),Bo===r&&(Bo=null),Bo!==r?(e.charCodeAt(Yn)===58?(us=B,Yn++):(us=r,$i===0&&As(F)),us!==r?(Xl=QA(),Xl===r&&(Xl=null),Xl!==r?(WA=LA(),WA!==r?(Ko=Dr,On=ce(di,aa,WA),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r}return Dr}function LA(){var Dr,On,di,aa,Bo,us,Xl;if(Dr=Yn,On=Yn,$i++,di=Yn,aa=io(),aa!==r?(Bo=bl(),Bo!==r?(e.charCodeAt(Yn)===45?(us=l,Yn++):(us=r,$i===0&&As(A)),us!==r?(Xl=QA(),Xl!==r?(aa=[aa,Bo,us,Xl],di=aa):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r),$i--,di!==r?(Yn=On,On=void 0):On=r,On!==r?(di=Zs(),di!==r?(aa=bg(),aa!==r?(Bo=rc(),Bo!==r?(us=Yp(),us!==r?(Ko=Dr,On=fe(Bo),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,On=io(),On!==r?(di=bg(),di!==r?(aa=Qm(),aa!==r?(Bo=Yp(),Bo!==r?(Ko=Dr,On=fe(aa),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))if(Dr=Yn,On=Zt(),On!==r){if(di=[],aa=Zs(),aa!==r)for(;aa!==r;)di.push(aa),aa=Zs();else di=r;di!==r?(Ko=Dr,On=ue(On),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function VA(){var Dr,On,di;for($i++,Dr=Yn,On=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)On.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return On!==r?(Ko=Yn,di=De(On),di?di=void 0:di=r,di!==r?(On=[On,di],Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),$i--,Dr===r&&(On=r,$i===0&&As(de)),Dr}function bl(){var Dr,On,di;for(Dr=Yn,On=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)On.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return On!==r?(Ko=Yn,di=k(On),di?di=void 0:di=r,di!==r?(On=[On,di],Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function bg(){var Dr;return Ko=Yn,Dr=tt(),Dr?Dr=void 0:Dr=r,Dr}function Yp(){var Dr;return Ko=Yn,Dr=ze(),Dr?Dr=void 0:Dr=r,Dr}function YA(){var Dr;return Dr=Ca(),Dr===r&&(Dr=ls()),Dr}function vr(){var Dr,On,di;if(Dr=Ca(),Dr===r){if(Dr=Yn,On=[],di=oa(),di!==r)for(;di!==r;)On.push(di),di=oa();else On=r;On!==r&&(Ko=Dr,On=Le()),Dr=On}return Dr}function Zt(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Oa(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=ls()))),Dr}function bn(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=oa())),Dr}function ls(){var Dr,On,di,aa,Bo,us;if($i++,Dr=Yn,ft.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(lt)),On!==r){for(di=[],aa=Yn,Bo=QA(),Bo===r&&(Bo=null),Bo!==r?(Ot.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Er)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=QA(),Bo===r&&(Bo=null),Bo!==r?(Ot.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Er)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Ko=Dr,On=Sr(),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return $i--,Dr===r&&(On=r,$i===0&&As(Je)),Dr}function oa(){var Dr,On,di,aa,Bo;if(Dr=Yn,e.substr(Yn,2)===jt?(On=jt,Yn+=2):(On=r,$i===0&&As(Bt)),On===r&&(On=null),On!==r)if(Dt.test(e.charAt(Yn))?(di=e.charAt(Yn),Yn++):(di=r,$i===0&&As(Fr)),di!==r){for(aa=[],$t.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));Bo!==r;)aa.push(Bo),$t.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));aa!==r?(Ko=Dr,On=Sr(),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;return Dr}function Fs(){var Dr,On;return Dr=Yn,e.substr(Yn,4)===lr?(On=lr,Yn+=4):(On=r,$i===0&&As(cr)),On!==r&&(Ko=Dr,On=Ar()),Dr=On,Dr}function Oa(){var Dr,On;return Dr=Yn,e.substr(Yn,4)===qr?(On=qr,Yn+=4):(On=r,$i===0&&As(yn)),On!==r&&(Ko=Dr,On=ke()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,5)===zt?(On=zt,Yn+=5):(On=r,$i===0&&As(Fn)),On!==r&&(Ko=Dr,On=Nn()),Dr=On),Dr}function Ca(){var Dr,On,di,aa;return $i++,Dr=Yn,e.charCodeAt(Yn)===34?(On=Ao,Yn++):(On=r,$i===0&&As(Vr)),On!==r?(e.charCodeAt(Yn)===34?(di=Ao,Yn++):(di=r,$i===0&&As(Vr)),di!==r?(Ko=Dr,On=xi(),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,e.charCodeAt(Yn)===34?(On=Ao,Yn++):(On=r,$i===0&&As(Vr)),On!==r?(di=gd(),di!==r?(e.charCodeAt(Yn)===34?(aa=Ao,Yn++):(aa=r,$i===0&&As(Vr)),aa!==r?(Ko=Dr,On=no(di),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)),$i--,Dr===r&&(On=r,$i===0&&As(Hi)),Dr}function gd(){var Dr,On,di;if(Dr=Yn,On=[],di=Dp(),di!==r)for(;di!==r;)On.push(di),di=Dp();else On=r;return On!==r&&(Ko=Dr,On=ga(On)),Dr=On,Dr}function Dp(){var Dr,On,di,aa,Bo,us;return Ya.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Gc)),Dr===r&&(Dr=Yn,e.substr(Yn,2)===ol?(On=ol,Yn+=2):(On=r,$i===0&&As(Sc)),On!==r&&(Ko=Dr,On=Hr()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Or?(On=Or,Yn+=2):(On=r,$i===0&&As(Ft)),On!==r&&(Ko=Dr,On=zr()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Rn?(On=Rn,Yn+=2):(On=r,$i===0&&As(Pr)),On!==r&&(Ko=Dr,On=Qi()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===ps?(On=ps,Yn+=2):(On=r,$i===0&&As(yo)),On!==r&&(Ko=Dr,On=bo()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Qa?(On=Qa,Yn+=2):(On=r,$i===0&&As(gc)),On!==r&&(Ko=Dr,On=_g()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Nc?(On=Nc,Yn+=2):(On=r,$i===0&&As(sA)),On!==r&&(Ko=Dr,On=ma()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===vu?(On=vu,Yn+=2):(On=r,$i===0&&As(li)),On!==r&&(Ko=Dr,On=Ei()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Ws?(On=Ws,Yn+=2):(On=r,$i===0&&As(Xa)),On!==r&&(Ko=Dr,On=ac()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Ql?(On=Ql,Yn+=2):(On=r,$i===0&&As(Oc)),On!==r?(di=sp(),di!==r?(aa=sp(),aa!==r?(Bo=sp(),Bo!==r?(us=sp(),us!==r?(Ko=Dr,On=vg(di,aa,Bo,us),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)))))))))),Dr}function sp(){var Dr;return Kl.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Ju)),Dr}function QA(){var Dr,On;if($i++,Dr=[],fu.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(yg)),On!==r)for(;On!==r;)Dr.push(On),fu.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(yg));else Dr=r;return $i--,Dr===r&&(On=r,$i===0&&As(Da)),Dr}function ff(){var Dr,On;if($i++,Dr=[],Kh.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(Ri)),On!==r)for(;On!==r;)Dr.push(On),Kh.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(Ri));else Dr=r;return $i--,Dr===r&&(On=r,$i===0&&As(_I)),Dr}function Zs(){var Dr,On,di,aa,Bo,us;if(Dr=Yn,On=io(),On!==r){for(di=[],aa=Yn,Bo=QA(),Bo===r&&(Bo=null),Bo!==r?(us=io(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=QA(),Bo===r&&(Bo=null),Bo!==r?(us=io(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(On=[On,di],Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function io(){var Dr;return e.substr(Yn,2)===Do?(Dr=Do,Yn+=2):(Dr=r,$i===0&&As(Pt)),Dr===r&&(e.charCodeAt(Yn)===10?(Dr=Hu,Yn++):(Dr=r,$i===0&&As(Ru)),Dr===r&&(e.charCodeAt(Yn)===13?(Dr=Vs,Yn++):(Dr=r,$i===0&&As(Uu)))),Dr}let Ea=2,Hl=0;if(gl=a(),gl!==r&&Yn===e.length)return gl;throw gl!==r&&Yn{"use strict";Object.defineProperty(jSe,"__esModule",{value:!0});jSe.PreserveOrdering=void 0;jSe.stringifySyml=TSn;jSe.parseSyml=Ceo;var SSn=ySn(),peo=ESn(),feo=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,vSn=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],B3e=class{constructor(t){this.data=t}};jSe.PreserveOrdering=B3e;function BSn(e){return e.match(feo)?e:JSON.stringify(e)}function wSn(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Array.isArray(e)?Object.keys(e).every(t=>wSn(e[t])):!1}function Kjt(e,t,r){if(e===null)return`null +`,!1),Vs="\r",Uu=Ki("\r",!1),Yn=0,Ko=0,Sg=[{line:1,column:1}],HA=0,ZA=[],$i=0,Al;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function zf(){return e.substring(Ko,Yn)}function zd(){return Dc(Ko,Yn)}function cA(Dr,On){throw On=On!==void 0?On:Dc(Ko,Yn),Am([Gs(Dr)],e.substring(Ko,Yn),On)}function so(Dr,On){throw On=On!==void 0?On:Dc(Ko,Yn),Nf(Dr,On)}function Ki(Dr,On){return{type:"literal",text:Dr,ignoreCase:On}}function cc(Dr,On,di){return{type:"class",parts:Dr,inverted:On,ignoreCase:di}}function Xs(){return{type:"any"}}function ws(){return{type:"end"}}function Gs(Dr){return{type:"other",description:Dr}}function Ma(Dr){var On=Sg[Dr],di;if(On)return On;for(di=Dr-1;!Sg[di];)di--;for(On=Sg[di],On={line:On.line,column:On.column};diHA&&(HA=Yn,ZA=[]),ZA.push(Dr))}function Nf(Dr,On){return new Jfe(Dr,null,null,On)}function Am(Dr,On,di){return new Jfe(Jfe.buildMessage(Dr,On),Dr,On,di)}function Zl(){var Dr;return Dr=Qm(),Dr}function rc(){var Dr,On,di;for(Dr=Yn,On=[],di=ad();di!==r;)On.push(di),di=ad();return On!==r&&(Ko=Dr,On=o(On)),Dr=On,Dr}function ad(){var Dr,On,di,aa,vo;return Dr=Yn,On=VA(),On!==r?(e.charCodeAt(Yn)===45?(di=l,Yn++):(di=r,$i===0&&As(A)),di!==r?(aa=QA(),aa!==r?(vo=LA(),vo!==r?(Ko=Dr,On=f(vo),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function Qm(){var Dr,On,di;for(Dr=Yn,On=[],di=rl();di!==r;)On.push(di),di=rl();return On!==r&&(Ko=Dr,On=I(On)),Dr=On,Dr}function rl(){var Dr,On,di,aa,vo,us,Xl,WA,If;if(Dr=Yn,On=QA(),On===r&&(On=null),On!==r){if(di=Yn,e.charCodeAt(Yn)===35?(aa=C,Yn++):(aa=r,$i===0&&As(b)),aa!==r){if(vo=[],us=Yn,Xl=Yn,$i++,WA=io(),$i--,WA===r?Xl=void 0:(Yn=Xl,Xl=r),Xl!==r?(e.length>Yn?(WA=e.charAt(Yn),Yn++):(WA=r,$i===0&&As(E)),WA!==r?(Xl=[Xl,WA],us=Xl):(Yn=us,us=r)):(Yn=us,us=r),us!==r)for(;us!==r;)vo.push(us),us=Yn,Xl=Yn,$i++,WA=io(),$i--,WA===r?Xl=void 0:(Yn=Xl,Xl=r),Xl!==r?(e.length>Yn?(WA=e.charAt(Yn),Yn++):(WA=r,$i===0&&As(E)),WA!==r?(Xl=[Xl,WA],us=Xl):(Yn=us,us=r)):(Yn=us,us=r);else vo=r;vo!==r?(aa=[aa,vo],di=aa):(Yn=di,di=r)}else Yn=di,di=r;if(di===r&&(di=null),di!==r){if(aa=[],vo=Zs(),vo!==r)for(;vo!==r;)aa.push(vo),vo=Zs();else aa=r;aa!==r?(Ko=Dr,On=N(),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r}else Yn=Dr,Dr=r;if(Dr===r&&(Dr=Yn,On=VA(),On!==r?(di=YA(),di!==r?(aa=QA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(vo=B,Yn++):(vo=r,$i===0&&As(F)),vo!==r?(us=QA(),us===r&&(us=null),us!==r?(Xl=LA(),Xl!==r?(Ko=Dr,On=Q(di,Xl),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,On=VA(),On!==r?(di=vr(),di!==r?(aa=QA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(vo=B,Yn++):(vo=r,$i===0&&As(F)),vo!==r?(us=QA(),us===r&&(us=null),us!==r?(Xl=LA(),Xl!==r?(Ko=Dr,On=Q(di,Xl),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))){if(Dr=Yn,On=VA(),On!==r)if(di=vr(),di!==r)if(aa=QA(),aa!==r)if(vo=yn(),vo!==r){if(us=[],Xl=Zs(),Xl!==r)for(;Xl!==r;)us.push(Xl),Xl=Zs();else us=r;us!==r?(Ko=Dr,On=Q(di,vo),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;if(Dr===r)if(Dr=Yn,On=VA(),On!==r)if(di=vr(),di!==r){if(aa=[],vo=Yn,us=QA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Xl=J,Yn++):(Xl=r,$i===0&&As(ae)),Xl!==r?(WA=QA(),WA===r&&(WA=null),WA!==r?(If=vr(),If!==r?(Ko=vo,us=ne(di,If),vo=us):(Yn=vo,vo=r)):(Yn=vo,vo=r)):(Yn=vo,vo=r)):(Yn=vo,vo=r),vo!==r)for(;vo!==r;)aa.push(vo),vo=Yn,us=QA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Xl=J,Yn++):(Xl=r,$i===0&&As(ae)),Xl!==r?(WA=QA(),WA===r&&(WA=null),WA!==r?(If=vr(),If!==r?(Ko=vo,us=ne(di,If),vo=us):(Yn=vo,vo=r)):(Yn=vo,vo=r)):(Yn=vo,vo=r)):(Yn=vo,vo=r);else aa=r;aa!==r?(vo=QA(),vo===r&&(vo=null),vo!==r?(e.charCodeAt(Yn)===58?(us=B,Yn++):(us=r,$i===0&&As(F)),us!==r?(Xl=QA(),Xl===r&&(Xl=null),Xl!==r?(WA=LA(),WA!==r?(Ko=Dr,On=ce(di,aa,WA),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r}return Dr}function LA(){var Dr,On,di,aa,vo,us,Xl;if(Dr=Yn,On=Yn,$i++,di=Yn,aa=io(),aa!==r?(vo=bl(),vo!==r?(e.charCodeAt(Yn)===45?(us=l,Yn++):(us=r,$i===0&&As(A)),us!==r?(Xl=QA(),Xl!==r?(aa=[aa,vo,us,Xl],di=aa):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r),$i--,di!==r?(Yn=On,On=void 0):On=r,On!==r?(di=Zs(),di!==r?(aa=bg(),aa!==r?(vo=rc(),vo!==r?(us=Yp(),us!==r?(Ko=Dr,On=fe(vo),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,On=io(),On!==r?(di=bg(),di!==r?(aa=Qm(),aa!==r?(vo=Yp(),vo!==r?(Ko=Dr,On=fe(aa),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))if(Dr=Yn,On=Zt(),On!==r){if(di=[],aa=Zs(),aa!==r)for(;aa!==r;)di.push(aa),aa=Zs();else di=r;di!==r?(Ko=Dr,On=ue(On),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function VA(){var Dr,On,di;for($i++,Dr=Yn,On=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)On.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return On!==r?(Ko=Yn,di=De(On),di?di=void 0:di=r,di!==r?(On=[On,di],Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),$i--,Dr===r&&(On=r,$i===0&&As(de)),Dr}function bl(){var Dr,On,di;for(Dr=Yn,On=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)On.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return On!==r?(Ko=Yn,di=k(On),di?di=void 0:di=r,di!==r?(On=[On,di],Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function bg(){var Dr;return Ko=Yn,Dr=tt(),Dr?Dr=void 0:Dr=r,Dr}function Yp(){var Dr;return Ko=Yn,Dr=ze(),Dr?Dr=void 0:Dr=r,Dr}function YA(){var Dr;return Dr=Ca(),Dr===r&&(Dr=ls()),Dr}function vr(){var Dr,On,di;if(Dr=Ca(),Dr===r){if(Dr=Yn,On=[],di=oa(),di!==r)for(;di!==r;)On.push(di),di=oa();else On=r;On!==r&&(Ko=Dr,On=Le()),Dr=On}return Dr}function Zt(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Oa(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=ls()))),Dr}function yn(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=oa())),Dr}function ls(){var Dr,On,di,aa,vo,us;if($i++,Dr=Yn,ft.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(lt)),On!==r){for(di=[],aa=Yn,vo=QA(),vo===r&&(vo=null),vo!==r?(Ot.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Er)),us!==r?(vo=[vo,us],aa=vo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,vo=QA(),vo===r&&(vo=null),vo!==r?(Ot.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Er)),us!==r?(vo=[vo,us],aa=vo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Ko=Dr,On=Sr(),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return $i--,Dr===r&&(On=r,$i===0&&As(Je)),Dr}function oa(){var Dr,On,di,aa,vo;if(Dr=Yn,e.substr(Yn,2)===jt?(On=jt,Yn+=2):(On=r,$i===0&&As(Bt)),On===r&&(On=null),On!==r)if(Nt.test(e.charAt(Yn))?(di=e.charAt(Yn),Yn++):(di=r,$i===0&&As(Fr)),di!==r){for(aa=[],$t.test(e.charAt(Yn))?(vo=e.charAt(Yn),Yn++):(vo=r,$i===0&&As(Xt));vo!==r;)aa.push(vo),$t.test(e.charAt(Yn))?(vo=e.charAt(Yn),Yn++):(vo=r,$i===0&&As(Xt));aa!==r?(Ko=Dr,On=Sr(),Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;return Dr}function Fs(){var Dr,On;return Dr=Yn,e.substr(Yn,4)===lr?(On=lr,Yn+=4):(On=r,$i===0&&As(cr)),On!==r&&(Ko=Dr,On=Ar()),Dr=On,Dr}function Oa(){var Dr,On;return Dr=Yn,e.substr(Yn,4)===qr?(On=qr,Yn+=4):(On=r,$i===0&&As(_n)),On!==r&&(Ko=Dr,On=ke()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,5)===zt?(On=zt,Yn+=5):(On=r,$i===0&&As(Fn)),On!==r&&(Ko=Dr,On=Nn()),Dr=On),Dr}function Ca(){var Dr,On,di,aa;return $i++,Dr=Yn,e.charCodeAt(Yn)===34?(On=Ao,Yn++):(On=r,$i===0&&As(Vr)),On!==r?(e.charCodeAt(Yn)===34?(di=Ao,Yn++):(di=r,$i===0&&As(Vr)),di!==r?(Ko=Dr,On=xi(),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,e.charCodeAt(Yn)===34?(On=Ao,Yn++):(On=r,$i===0&&As(Vr)),On!==r?(di=gd(),di!==r?(e.charCodeAt(Yn)===34?(aa=Ao,Yn++):(aa=r,$i===0&&As(Vr)),aa!==r?(Ko=Dr,On=no(di),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)),$i--,Dr===r&&(On=r,$i===0&&As(Hi)),Dr}function gd(){var Dr,On,di;if(Dr=Yn,On=[],di=Dp(),di!==r)for(;di!==r;)On.push(di),di=Dp();else On=r;return On!==r&&(Ko=Dr,On=ga(On)),Dr=On,Dr}function Dp(){var Dr,On,di,aa,vo,us;return Ya.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Gc)),Dr===r&&(Dr=Yn,e.substr(Yn,2)===al?(On=al,Yn+=2):(On=r,$i===0&&As(Sc)),On!==r&&(Ko=Dr,On=Hr()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Or?(On=Or,Yn+=2):(On=r,$i===0&&As(Ft)),On!==r&&(Ko=Dr,On=zr()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Rn?(On=Rn,Yn+=2):(On=r,$i===0&&As(Pr)),On!==r&&(Ko=Dr,On=Qi()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===ps?(On=ps,Yn+=2):(On=r,$i===0&&As(_o)),On!==r&&(Ko=Dr,On=yo()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Qa?(On=Qa,Yn+=2):(On=r,$i===0&&As(gc)),On!==r&&(Ko=Dr,On=_g()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Nc?(On=Nc,Yn+=2):(On=r,$i===0&&As(oA)),On!==r&&(Ko=Dr,On=ma()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===vu?(On=vu,Yn+=2):(On=r,$i===0&&As(li)),On!==r&&(Ko=Dr,On=Ei()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Ws?(On=Ws,Yn+=2):(On=r,$i===0&&As(Xa)),On!==r&&(Ko=Dr,On=ac()),Dr=On,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Ql?(On=Ql,Yn+=2):(On=r,$i===0&&As(Oc)),On!==r?(di=sp(),di!==r?(aa=sp(),aa!==r?(vo=sp(),vo!==r?(us=sp(),us!==r?(Ko=Dr,On=vg(di,aa,vo,us),Dr=On):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)))))))))),Dr}function sp(){var Dr;return Kl.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Ju)),Dr}function QA(){var Dr,On;if($i++,Dr=[],fu.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(yg)),On!==r)for(;On!==r;)Dr.push(On),fu.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(yg));else Dr=r;return $i--,Dr===r&&(On=r,$i===0&&As(Da)),Dr}function ff(){var Dr,On;if($i++,Dr=[],Kh.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(Ri)),On!==r)for(;On!==r;)Dr.push(On),Kh.test(e.charAt(Yn))?(On=e.charAt(Yn),Yn++):(On=r,$i===0&&As(Ri));else Dr=r;return $i--,Dr===r&&(On=r,$i===0&&As(_I)),Dr}function Zs(){var Dr,On,di,aa,vo,us;if(Dr=Yn,On=io(),On!==r){for(di=[],aa=Yn,vo=QA(),vo===r&&(vo=null),vo!==r?(us=io(),us!==r?(vo=[vo,us],aa=vo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,vo=QA(),vo===r&&(vo=null),vo!==r?(us=io(),us!==r?(vo=[vo,us],aa=vo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(On=[On,di],Dr=On):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function io(){var Dr;return e.substr(Yn,2)===Do?(Dr=Do,Yn+=2):(Dr=r,$i===0&&As(Pt)),Dr===r&&(e.charCodeAt(Yn)===10?(Dr=Hu,Yn++):(Dr=r,$i===0&&As(Ru)),Dr===r&&(e.charCodeAt(Yn)===13?(Dr=Vs,Yn++):(Dr=r,$i===0&&As(Uu)))),Dr}let Ea=2,Hl=0;if(Al=a(),Al!==r&&Yn===e.length)return Al;throw Al!==r&&Yn{"use strict";Object.defineProperty(jSe,"__esModule",{value:!0});jSe.PreserveOrdering=void 0;jSe.stringifySyml=GSn;jSe.parseSyml=_eo;var NSn=wSn(),feo=RSn(),Ieo=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,DSn=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],B3e=class{constructor(t){this.data=t}};jSe.PreserveOrdering=B3e;function kSn(e){return e.match(Ieo)?e:JSON.stringify(e)}function xSn(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Array.isArray(e)?Object.keys(e).every(t=>xSn(e[t])):!1}function Kjt(e,t,r){if(e===null)return`null `;if(typeof e=="number"||typeof e=="boolean")return`${e.toString()} -`;if(typeof e=="string")return`${BSn(e)} +`;if(typeof e=="string")return`${kSn(e)} `;if(Array.isArray(e)){if(e.length===0)return`[] `;let n=" ".repeat(t);return` -${e.map(o=>`${n}- ${Kjt(o,t+1,!1)}`).join("")}`}if(typeof e=="object"&&e){let[n,a]=e instanceof B3e?[e.data,!1]:[e,!0],o=" ".repeat(t),l=Object.keys(n);a&&l.sort((f,I)=>{let C=vSn.indexOf(f),b=vSn.indexOf(I);return C===-1&&b===-1?fI?1:0:C!==-1&&b===-1?-1:C===-1&&b!==-1?1:C-b});let A=l.filter(f=>!wSn(n[f])).map((f,I)=>{let C=n[f],b=BSn(f),E=Kjt(C,t+1,!0),N=I>0||r?o:"",B=b.length>1024?`? ${b} +${e.map(o=>`${n}- ${Kjt(o,t+1,!1)}`).join("")}`}if(typeof e=="object"&&e){let[n,a]=e instanceof B3e?[e.data,!1]:[e,!0],o=" ".repeat(t),l=Object.keys(n);a&&l.sort((f,I)=>{let C=DSn.indexOf(f),b=DSn.indexOf(I);return C===-1&&b===-1?fI?1:0:C!==-1&&b===-1?-1:C===-1&&b!==-1?1:C-b});let A=l.filter(f=>!xSn(n[f])).map((f,I)=>{let C=n[f],b=kSn(f),E=Kjt(C,t+1,!0),N=I>0||r?o:"",B=b.length>1024?`? ${b} ${N}:`:`${b}:`,F=E.startsWith(` `)?E:` ${E}`;return`${N}${B}${F}`}).join(t===0?` `:"")||` `;return r?` -${A}`:`${A}`}throw new Error(`Unsupported value type (${e})`)}function TSn(e){try{let t=Kjt(e,0,!1);return t!==` -`?t:""}catch(t){throw t.location&&(t.message=t.message.replace(/(\.)?$/,` (line ${t.location.start.line}, column ${t.location.start.column})$1`)),t}}TSn.PreserveOrdering=B3e;function Ieo(e){return e.endsWith(` +${A}`:`${A}`}throw new Error(`Unsupported value type (${e})`)}function GSn(e){try{let t=Kjt(e,0,!1);return t!==` +`?t:""}catch(t){throw t.location&&(t.message=t.message.replace(/(\.)?$/,` (line ${t.location.start.line}, column ${t.location.start.column})$1`)),t}}GSn.PreserveOrdering=B3e;function heo(e){return e.endsWith(` `)||(e+=` -`),(0,peo.parse)(e)}var heo=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function meo(e){if(heo.test(e))return Ieo(e);let t=(0,SSn.safeLoad)(e,{schema:SSn.FAILSAFE_SCHEMA,json:!0});if(t==null)return{};if(typeof t!="object")throw new Error(`Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?`);if(Array.isArray(t))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return t}function Ceo(e){return meo(e)}});var tM=H(vm=>{"use strict";Object.defineProperty(vm,"__esModule",{value:!0});vm.stringifySyml=vm.parseSyml=vm.stringifyResolution=vm.parseResolution=vm.stringifyValueArgument=vm.stringifyShellLine=vm.stringifyRedirectArgument=vm.stringifyEnvSegment=vm.stringifyCommandLineThen=vm.stringifyCommandLine=vm.stringifyCommandChainThen=vm.stringifyCommandChain=vm.stringifyCommand=vm.stringifyArithmeticExpression=vm.stringifyArgumentSegment=vm.stringifyArgument=vm.stringifyShell=vm.parseShell=void 0;var J9=T1n();Object.defineProperty(vm,"parseShell",{enumerable:!0,get:function(){return J9.parseShell}});Object.defineProperty(vm,"stringifyShell",{enumerable:!0,get:function(){return J9.stringifyShell}});Object.defineProperty(vm,"stringifyArgument",{enumerable:!0,get:function(){return J9.stringifyArgument}});Object.defineProperty(vm,"stringifyArgumentSegment",{enumerable:!0,get:function(){return J9.stringifyArgumentSegment}});Object.defineProperty(vm,"stringifyArithmeticExpression",{enumerable:!0,get:function(){return J9.stringifyArithmeticExpression}});Object.defineProperty(vm,"stringifyCommand",{enumerable:!0,get:function(){return J9.stringifyCommand}});Object.defineProperty(vm,"stringifyCommandChain",{enumerable:!0,get:function(){return J9.stringifyCommandChain}});Object.defineProperty(vm,"stringifyCommandChainThen",{enumerable:!0,get:function(){return J9.stringifyCommandChainThen}});Object.defineProperty(vm,"stringifyCommandLine",{enumerable:!0,get:function(){return J9.stringifyCommandLine}});Object.defineProperty(vm,"stringifyCommandLineThen",{enumerable:!0,get:function(){return J9.stringifyCommandLineThen}});Object.defineProperty(vm,"stringifyEnvSegment",{enumerable:!0,get:function(){return J9.stringifyEnvSegment}});Object.defineProperty(vm,"stringifyRedirectArgument",{enumerable:!0,get:function(){return J9.stringifyRedirectArgument}});Object.defineProperty(vm,"stringifyShellLine",{enumerable:!0,get:function(){return J9.stringifyShellLine}});Object.defineProperty(vm,"stringifyValueArgument",{enumerable:!0,get:function(){return J9.stringifyValueArgument}});var NSn=D1n();Object.defineProperty(vm,"parseResolution",{enumerable:!0,get:function(){return NSn.parseResolution}});Object.defineProperty(vm,"stringifyResolution",{enumerable:!0,get:function(){return NSn.stringifyResolution}});var DSn=RSn();Object.defineProperty(vm,"parseSyml",{enumerable:!0,get:function(){return DSn.parseSyml}});Object.defineProperty(vm,"stringifySyml",{enumerable:!0,get:function(){return DSn.stringifySyml}})});var xSn=H((YPl,jjt)=>{"use strict";var _eo=e=>{let t=!1,r=!1,n=!1;for(let a=0;a{if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");t=Object.assign({pascalCase:!1},t);let r=a=>t.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(e)?e=e.map(a=>a.trim()).filter(a=>a.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=_eo(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(e))};jjt.exports=kSn;jjt.exports.default=kSn});var GSn=H((QPl,yeo)=>{yeo.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{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:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{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:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{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:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{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:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{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:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var Jfe=H(ZO=>{"use strict";var ZSn=GSn(),RR=process.env;Object.defineProperty(ZO,"_vendors",{value:ZSn.map(function(e){return e.constant})});ZO.name=null;ZO.isPR=null;ZSn.forEach(function(e){let r=(Array.isArray(e.env)?e.env:[e.env]).every(function(n){return FSn(n)});if(ZO[e.constant]=r,!!r)switch(ZO.name=e.name,typeof e.pr){case"string":ZO.isPR=!!RR[e.pr];break;case"object":"env"in e.pr?ZO.isPR=e.pr.env in RR&&RR[e.pr.env]!==e.pr.ne:"any"in e.pr?ZO.isPR=e.pr.any.some(function(n){return!!RR[n]}):ZO.isPR=FSn(e.pr);break;default:ZO.isPR=null}});ZO.isCI=!!(RR.CI!=="false"&&(RR.BUILD_ID||RR.BUILD_NUMBER||RR.CI||RR.CI_APP_ID||RR.CI_BUILD_ID||RR.CI_BUILD_NUMBER||RR.CI_NAME||RR.CONTINUOUS_INTEGRATION||RR.RUN_ID||ZO.name));function FSn(e){return typeof e=="string"?!!RR[e]:"env"in e?RR[e.env]&&RR[e.env].includes(e.includes):"any"in e?e.any.some(function(t){return!!RR[t]}):Object.keys(e).every(function(t){return RR[t]===e[t]})}});var LSn=H((JPl,beo)=>{beo.exports={name:"dotenv",version:"16.4.5",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var PSn=H((UPl,o$)=>{var zjt=Et("fs"),qjt=Et("path"),Eeo=Et("os"),Seo=Et("crypto"),veo=LSn(),$jt=veo.version,Beo=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function weo(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` -`);let n;for(;(n=Beo.exec(r))!=null;){let a=n[1],o=n[2]||"";o=o.trim();let l=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),l==='"'&&(o=o.replace(/\\n/g,` -`),o=o.replace(/\\r/g,"\r")),t[a]=o}return t}function Teo(e){let t=OSn(e),r=NR.configDotenv({path:t});if(!r.parsed){let l=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw l.code="MISSING_DATA",l}let n=WSn(e).split(","),a=n.length,o;for(let l=0;l=a)throw A}return NR.parse(o)}function Reo(e){console.log(`[dotenv@${$jt}][INFO] ${e}`)}function Neo(e){console.log(`[dotenv@${$jt}][WARN] ${e}`)}function mlt(e){console.log(`[dotenv@${$jt}][DEBUG] ${e}`)}function WSn(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function Deo(e,t){let r;try{r=new URL(t)}catch(A){if(A.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw A}let n=r.password;if(!n){let A=new Error("INVALID_DOTENV_KEY: Missing key part");throw A.code="INVALID_DOTENV_KEY",A}let a=r.searchParams.get("environment");if(!a){let A=new Error("INVALID_DOTENV_KEY: Missing environment part");throw A.code="INVALID_DOTENV_KEY",A}let o=`DOTENV_VAULT_${a.toUpperCase()}`,l=e.parsed[o];if(!l){let A=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw A.code="NOT_FOUND_DOTENV_ENVIRONMENT",A}return{ciphertext:l,key:n}}function OSn(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)zjt.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=qjt.resolve(process.cwd(),".env.vault");return zjt.existsSync(t)?t:null}function VSn(e){return e[0]==="~"?qjt.join(Eeo.homedir(),e.slice(1)):e}function keo(e){Reo("Loading env from encrypted .env.vault");let t=NR._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),NR.populate(r,t,e),{parsed:t}}function xeo(e){let t=qjt.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&mlt("No encoding is specified. UTF-8 is used by default");let a=[t];if(e&&e.path)if(!Array.isArray(e.path))a=[VSn(e.path)];else{a=[];for(let f of e.path)a.push(VSn(f))}let o,l={};for(let f of a)try{let I=NR.parse(zjt.readFileSync(f,{encoding:r}));NR.populate(l,I,e)}catch(I){n&&mlt(`Failed to load ${f} ${I.message}`),o=I}let A=process.env;return e&&e.processEnv!=null&&(A=e.processEnv),NR.populate(A,l,e),o?{parsed:l,error:o}:{parsed:l}}function Geo(e){if(WSn(e).length===0)return NR.configDotenv(e);let t=OSn(e);return t?NR._configVault(e):(Neo(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),NR.configDotenv(e))}function Feo(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),a=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let l=Seo.createDecipheriv("aes-256-gcm",r,a);return l.setAuthTag(o),`${l.update(n)}${l.final()}`}catch(l){let A=l instanceof RangeError,f=l.message==="Invalid key length",I=l.message==="Unsupported state or unable to authenticate data";if(A||f){let C=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw C.code="INVALID_DOTENV_KEY",C}else if(I){let C=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw C.code="DECRYPTION_FAILED",C}else throw l}}function Zeo(e,t,r={}){let n=!!(r&&r.debug),a=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(a===!0&&(e[o]=t[o]),n&&mlt(a===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var NR={configDotenv:xeo,_configVault:keo,_parseVault:Teo,config:Geo,decrypt:Feo,parse:weo,populate:Zeo};o$.exports.configDotenv=NR.configDotenv;o$.exports._configVault=NR._configVault;o$.exports._parseVault=NR._parseVault;o$.exports.config=NR.config;o$.exports.decrypt=NR.decrypt;o$.exports.parse=NR.parse;o$.exports.populate=NR.populate;o$.exports=NR});var HSn=H((KPl,e7t)=>{"use strict";var MSn=(e,...t)=>new Promise(r=>{r(e(...t))});e7t.exports=MSn;e7t.exports.default=MSn});var Ufe=H((jPl,t7t)=>{"use strict";var Leo=HSn(),YSn=e=>{if(!((Number.isInteger(e)||e===1/0)&&e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));let t=[],r=0,n=()=>{r--,t.length>0&&t.shift()()},a=(A,f,...I)=>{r++;let C=Leo(A,...I);f(C),C.then(n,n)},o=(A,f,...I)=>{rnew Promise(I=>o(A,I,...f));return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),l};t7t.exports=YSn;t7t.exports.default=YSn});var U9=H(zSe=>{"use strict";Object.defineProperty(zSe,"__esModule",{value:!0});zSe.MessageName=void 0;zSe.stringifyMessageName=Veo;zSe.parseMessageName=Weo;var r7t;(function(e){e[e.UNNAMED=0]="UNNAMED",e[e.EXCEPTION=1]="EXCEPTION",e[e.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",e[e.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",e[e.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",e[e.BUILD_DISABLED=5]="BUILD_DISABLED",e[e.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",e[e.MUST_BUILD=7]="MUST_BUILD",e[e.MUST_REBUILD=8]="MUST_REBUILD",e[e.BUILD_FAILED=9]="BUILD_FAILED",e[e.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",e[e.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",e[e.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",e[e.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",e[e.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",e[e.REMOTE_INVALID=15]="REMOTE_INVALID",e[e.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",e[e.RESOLUTION_PACK=17]="RESOLUTION_PACK",e[e.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",e[e.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",e[e.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",e[e.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",e[e.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",e[e.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",e[e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",e[e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",e[e.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",e[e.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",e[e.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",e[e.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",e[e.FETCH_FAILED=30]="FETCH_FAILED",e[e.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",e[e.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",e[e.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",e[e.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",e[e.NETWORK_ERROR=35]="NETWORK_ERROR",e[e.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",e[e.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",e[e.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",e[e.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",e[e.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",e[e.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",e[e.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",e[e.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",e[e.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",e[e.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",e[e.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",e[e.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",e[e.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",e[e.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",e[e.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",e[e.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",e[e.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",e[e.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",e[e.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",e[e.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",e[e.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",e[e.INVALID_MANIFEST=57]="INVALID_MANIFEST",e[e.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",e[e.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",e[e.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",e[e.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",e[e.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",e[e.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",e[e.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",e[e.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",e[e.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",e[e.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",e[e.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",e[e.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",e[e.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",e[e.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",e[e.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",e[e.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",e[e.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",e[e.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",e[e.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",e[e.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",e[e.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",e[e.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",e[e.NETWORK_DISABLED=80]="NETWORK_DISABLED",e[e.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",e[e.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",e[e.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",e[e.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",e[e.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",e[e.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",e[e.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",e[e.VERSION_NOTICE=88]="VERSION_NOTICE",e[e.TIPS_NOTICE=89]="TIPS_NOTICE",e[e.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED",e[e.INVALID_PROVENANCE_ENVIRONMENT=91]="INVALID_PROVENANCE_ENVIRONMENT",e[e.EXPERIMENTAL=92]="EXPERIMENTAL"})(r7t||(zSe.MessageName=r7t={}));function Veo(e){return`YN${e.toString(10).padStart(4,"0")}`}function Weo(e){let t=Number(e.slice(2));if(typeof r7t[t]>"u")throw new Error(`Unknown message name: "${e}"`);return t}});var w3e=H((qPl,QSn)=>{var Oeo="2.0.0",Peo=Number.MAX_SAFE_INTEGER||9007199254740991,Meo=16,Heo=250,Yeo=["major","premajor","minor","preminor","patch","prepatch","prerelease"];QSn.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Meo,MAX_SAFE_BUILD_LENGTH:Heo,MAX_SAFE_INTEGER:Peo,RELEASE_TYPES:Yeo,SEMVER_SPEC_VERSION:Oeo,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var T3e=H(($Pl,XSn)=>{var Qeo=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};XSn.exports=Qeo});var qSe=H((a$,JSn)=>{var{MAX_SAFE_COMPONENT_LENGTH:n7t,MAX_SAFE_BUILD_LENGTH:Xeo,MAX_LENGTH:Jeo}=w3e(),Ueo=T3e();a$=JSn.exports={};var Keo=a$.re=[],jeo=a$.safeRe=[],dA=a$.src=[],pA=a$.t={},zeo=0,i7t="[a-zA-Z0-9-]",qeo=[["\\s",1],["\\d",Jeo],[i7t,Xeo]],$eo=e=>{for(let[t,r]of qeo)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},$I=(e,t,r)=>{let n=$eo(t),a=zeo++;Ueo(e,a,t),pA[e]=a,dA[a]=t,Keo[a]=new RegExp(t,r?"g":void 0),jeo[a]=new RegExp(n,r?"g":void 0)};$I("NUMERICIDENTIFIER","0|[1-9]\\d*");$I("NUMERICIDENTIFIERLOOSE","\\d+");$I("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${i7t}*`);$I("MAINVERSION",`(${dA[pA.NUMERICIDENTIFIER]})\\.(${dA[pA.NUMERICIDENTIFIER]})\\.(${dA[pA.NUMERICIDENTIFIER]})`);$I("MAINVERSIONLOOSE",`(${dA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[pA.NUMERICIDENTIFIERLOOSE]})`);$I("PRERELEASEIDENTIFIER",`(?:${dA[pA.NUMERICIDENTIFIER]}|${dA[pA.NONNUMERICIDENTIFIER]})`);$I("PRERELEASEIDENTIFIERLOOSE",`(?:${dA[pA.NUMERICIDENTIFIERLOOSE]}|${dA[pA.NONNUMERICIDENTIFIER]})`);$I("PRERELEASE",`(?:-(${dA[pA.PRERELEASEIDENTIFIER]}(?:\\.${dA[pA.PRERELEASEIDENTIFIER]})*))`);$I("PRERELEASELOOSE",`(?:-?(${dA[pA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dA[pA.PRERELEASEIDENTIFIERLOOSE]})*))`);$I("BUILDIDENTIFIER",`${i7t}+`);$I("BUILD",`(?:\\+(${dA[pA.BUILDIDENTIFIER]}(?:\\.${dA[pA.BUILDIDENTIFIER]})*))`);$I("FULLPLAIN",`v?${dA[pA.MAINVERSION]}${dA[pA.PRERELEASE]}?${dA[pA.BUILD]}?`);$I("FULL",`^${dA[pA.FULLPLAIN]}$`);$I("LOOSEPLAIN",`[v=\\s]*${dA[pA.MAINVERSIONLOOSE]}${dA[pA.PRERELEASELOOSE]}?${dA[pA.BUILD]}?`);$I("LOOSE",`^${dA[pA.LOOSEPLAIN]}$`);$I("GTLT","((?:<|>)?=?)");$I("XRANGEIDENTIFIERLOOSE",`${dA[pA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);$I("XRANGEIDENTIFIER",`${dA[pA.NUMERICIDENTIFIER]}|x|X|\\*`);$I("XRANGEPLAIN",`[v=\\s]*(${dA[pA.XRANGEIDENTIFIER]})(?:\\.(${dA[pA.XRANGEIDENTIFIER]})(?:\\.(${dA[pA.XRANGEIDENTIFIER]})(?:${dA[pA.PRERELEASE]})?${dA[pA.BUILD]}?)?)?`);$I("XRANGEPLAINLOOSE",`[v=\\s]*(${dA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[pA.XRANGEIDENTIFIERLOOSE]})(?:${dA[pA.PRERELEASELOOSE]})?${dA[pA.BUILD]}?)?)?`);$I("XRANGE",`^${dA[pA.GTLT]}\\s*${dA[pA.XRANGEPLAIN]}$`);$I("XRANGELOOSE",`^${dA[pA.GTLT]}\\s*${dA[pA.XRANGEPLAINLOOSE]}$`);$I("COERCEPLAIN",`(^|[^\\d])(\\d{1,${n7t}})(?:\\.(\\d{1,${n7t}}))?(?:\\.(\\d{1,${n7t}}))?`);$I("COERCE",`${dA[pA.COERCEPLAIN]}(?:$|[^\\d])`);$I("COERCEFULL",dA[pA.COERCEPLAIN]+`(?:${dA[pA.PRERELEASE]})?(?:${dA[pA.BUILD]})?(?:$|[^\\d])`);$I("COERCERTL",dA[pA.COERCE],!0);$I("COERCERTLFULL",dA[pA.COERCEFULL],!0);$I("LONETILDE","(?:~>?)");$I("TILDETRIM",`(\\s*)${dA[pA.LONETILDE]}\\s+`,!0);a$.tildeTrimReplace="$1~";$I("TILDE",`^${dA[pA.LONETILDE]}${dA[pA.XRANGEPLAIN]}$`);$I("TILDELOOSE",`^${dA[pA.LONETILDE]}${dA[pA.XRANGEPLAINLOOSE]}$`);$I("LONECARET","(?:\\^)");$I("CARETTRIM",`(\\s*)${dA[pA.LONECARET]}\\s+`,!0);a$.caretTrimReplace="$1^";$I("CARET",`^${dA[pA.LONECARET]}${dA[pA.XRANGEPLAIN]}$`);$I("CARETLOOSE",`^${dA[pA.LONECARET]}${dA[pA.XRANGEPLAINLOOSE]}$`);$I("COMPARATORLOOSE",`^${dA[pA.GTLT]}\\s*(${dA[pA.LOOSEPLAIN]})$|^$`);$I("COMPARATOR",`^${dA[pA.GTLT]}\\s*(${dA[pA.FULLPLAIN]})$|^$`);$I("COMPARATORTRIM",`(\\s*)${dA[pA.GTLT]}\\s*(${dA[pA.LOOSEPLAIN]}|${dA[pA.XRANGEPLAIN]})`,!0);a$.comparatorTrimReplace="$1$2$3";$I("HYPHENRANGE",`^\\s*(${dA[pA.XRANGEPLAIN]})\\s+-\\s+(${dA[pA.XRANGEPLAIN]})\\s*$`);$I("HYPHENRANGELOOSE",`^\\s*(${dA[pA.XRANGEPLAINLOOSE]})\\s+-\\s+(${dA[pA.XRANGEPLAINLOOSE]})\\s*$`);$I("STAR","(<|>)?=?\\s*\\*");$I("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");$I("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var Clt=H((e3l,USn)=>{var eto=Object.freeze({loose:!0}),tto=Object.freeze({}),rto=e=>e?typeof e!="object"?eto:e:tto;USn.exports=rto});var s7t=H((t3l,zSn)=>{var KSn=/^[0-9]+$/,jSn=(e,t)=>{let r=KSn.test(e),n=KSn.test(t);return r&&n&&(e=+e,t=+t),e===t?0:r&&!n?-1:n&&!r?1:ejSn(t,e);zSn.exports={compareIdentifiers:jSn,rcompareIdentifiers:nto}});var dG=H((r3l,tvn)=>{var _lt=T3e(),{MAX_LENGTH:qSn,MAX_SAFE_INTEGER:ylt}=w3e(),{safeRe:$Sn,t:evn}=qSe(),ito=Clt(),{compareIdentifiers:$Se}=s7t(),o7t=class e{constructor(t,r){if(r=ito(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>qSn)throw new TypeError(`version is longer than ${qSn} characters`);_lt("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?$Sn[evn.LOOSE]:$Sn[evn.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>ylt||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ylt||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ylt||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let o=+a;if(o>=0&&o=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let o=[r,a];n===!1&&(o=[r]),$Se(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};tvn.exports=o7t});var Kfe=H((n3l,nvn)=>{var rvn=dG(),sto=(e,t,r=!1)=>{if(e instanceof rvn)return e;try{return new rvn(e,t)}catch(n){if(!r)return null;throw n}};nvn.exports=sto});var a7t=H((i3l,ivn)=>{var oto=Kfe(),ato=(e,t)=>{let r=oto(e,t);return r?r.version:null};ivn.exports=ato});var c7t=H((s3l,svn)=>{var cto=Kfe(),lto=(e,t)=>{let r=cto(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};svn.exports=lto});var cvn=H((o3l,avn)=>{var ovn=dG(),uto=(e,t,r,n,a)=>{typeof r=="string"&&(a=n,n=r,r=void 0);try{return new ovn(e instanceof ovn?e.version:e,r).inc(t,n,a).version}catch{return null}};avn.exports=uto});var gvn=H((a3l,uvn)=>{var lvn=Kfe(),gto=(e,t)=>{let r=lvn(e,null,!0),n=lvn(t,null,!0),a=r.compare(n);if(a===0)return null;let o=a>0,l=o?r:n,A=o?n:r,f=!!l.prerelease.length;if(!!A.prerelease.length&&!f)return!A.patch&&!A.minor?"major":l.patch?"patch":l.minor?"minor":"major";let C=f?"pre":"";return r.major!==n.major?C+"major":r.minor!==n.minor?C+"minor":r.patch!==n.patch?C+"patch":"prerelease"};uvn.exports=gto});var dvn=H((c3l,Avn)=>{var Ato=dG(),dto=(e,t)=>new Ato(e,t).major;Avn.exports=dto});var fvn=H((l3l,pvn)=>{var pto=dG(),fto=(e,t)=>new pto(e,t).minor;pvn.exports=fto});var hvn=H((u3l,Ivn)=>{var Ito=dG(),hto=(e,t)=>new Ito(e,t).patch;Ivn.exports=hto});var Cvn=H((g3l,mvn)=>{var mto=Kfe(),Cto=(e,t)=>{let r=mto(e,t);return r&&r.prerelease.length?r.prerelease:null};mvn.exports=Cto});var rM=H((A3l,yvn)=>{var _vn=dG(),_to=(e,t,r)=>new _vn(e,r).compare(new _vn(t,r));yvn.exports=_to});var Evn=H((d3l,bvn)=>{var yto=rM(),bto=(e,t,r)=>yto(t,e,r);bvn.exports=bto});var vvn=H((p3l,Svn)=>{var Eto=rM(),Sto=(e,t)=>Eto(e,t,!0);Svn.exports=Sto});var blt=H((f3l,wvn)=>{var Bvn=dG(),vto=(e,t,r)=>{let n=new Bvn(e,r),a=new Bvn(t,r);return n.compare(a)||n.compareBuild(a)};wvn.exports=vto});var Rvn=H((I3l,Tvn)=>{var Bto=blt(),wto=(e,t)=>e.sort((r,n)=>Bto(r,n,t));Tvn.exports=wto});var Dvn=H((h3l,Nvn)=>{var Tto=blt(),Rto=(e,t)=>e.sort((r,n)=>Tto(n,r,t));Nvn.exports=Rto});var R3e=H((m3l,kvn)=>{var Nto=rM(),Dto=(e,t,r)=>Nto(e,t,r)>0;kvn.exports=Dto});var Elt=H((C3l,xvn)=>{var kto=rM(),xto=(e,t,r)=>kto(e,t,r)<0;xvn.exports=xto});var l7t=H((_3l,Gvn)=>{var Gto=rM(),Fto=(e,t,r)=>Gto(e,t,r)===0;Gvn.exports=Fto});var u7t=H((y3l,Fvn)=>{var Zto=rM(),Lto=(e,t,r)=>Zto(e,t,r)!==0;Fvn.exports=Lto});var Slt=H((b3l,Zvn)=>{var Vto=rM(),Wto=(e,t,r)=>Vto(e,t,r)>=0;Zvn.exports=Wto});var vlt=H((E3l,Lvn)=>{var Oto=rM(),Pto=(e,t,r)=>Oto(e,t,r)<=0;Lvn.exports=Pto});var g7t=H((S3l,Vvn)=>{var Mto=l7t(),Hto=u7t(),Yto=R3e(),Qto=Slt(),Xto=Elt(),Jto=vlt(),Uto=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return Mto(e,r,n);case"!=":return Hto(e,r,n);case">":return Yto(e,r,n);case">=":return Qto(e,r,n);case"<":return Xto(e,r,n);case"<=":return Jto(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};Vvn.exports=Uto});var Ovn=H((v3l,Wvn)=>{var Kto=dG(),jto=Kfe(),{safeRe:Blt,t:wlt}=qSe(),zto=(e,t)=>{if(e instanceof Kto)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?Blt[wlt.COERCEFULL]:Blt[wlt.COERCE]);else{let f=t.includePrerelease?Blt[wlt.COERCERTLFULL]:Blt[wlt.COERCERTL],I;for(;(I=f.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||I.index+I[0].length!==r.index+r[0].length)&&(r=I),f.lastIndex=I.index+I[1].length+I[2].length;f.lastIndex=-1}if(r===null)return null;let n=r[2],a=r[3]||"0",o=r[4]||"0",l=t.includePrerelease&&r[5]?`-${r[5]}`:"",A=t.includePrerelease&&r[6]?`+${r[6]}`:"";return jto(`${n}.${a}.${o}${l}${A}`,t)};Wvn.exports=zto});var Mvn=H((B3l,Pvn)=>{var A7t=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let a=this.map.keys().next().value;this.delete(a)}this.map.set(t,r)}return this}};Pvn.exports=A7t});var nM=H((w3l,Xvn)=>{var qto=/\s+/g,d7t=class e{constructor(t,r){if(r=ero(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof p7t)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(qto," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(a=>!Yvn(a[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&aro(a[0])){this.set=[a];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&sro)|(this.options.loose&&oro))+":"+t,a=Hvn.get(n);if(a)return a;let o=this.options.loose,l=o?K9[TZ.HYPHENRANGELOOSE]:K9[TZ.HYPHENRANGE];t=t.replace(l,hro(this.options.includePrerelease)),F1("hyphen replace",t),t=t.replace(K9[TZ.COMPARATORTRIM],rro),F1("comparator trim",t),t=t.replace(K9[TZ.TILDETRIM],nro),F1("tilde trim",t),t=t.replace(K9[TZ.CARETTRIM],iro),F1("caret trim",t);let A=t.split(" ").map(b=>cro(b,this.options)).join(" ").split(/\s+/).map(b=>Iro(b,this.options));o&&(A=A.filter(b=>(F1("loose invalid filter",b,this.options),!!b.match(K9[TZ.COMPARATORLOOSE])))),F1("range list",A);let f=new Map,I=A.map(b=>new p7t(b,this.options));for(let b of I){if(Yvn(b))return[b];f.set(b.value,b)}f.size>1&&f.has("")&&f.delete("");let C=[...f.values()];return Hvn.set(n,C),C}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>Qvn(n,r)&&t.set.some(a=>Qvn(a,r)&&n.every(o=>a.every(l=>o.intersects(l,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new tro(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",aro=e=>e.value==="",Qvn=(e,t)=>{let r=!0,n=e.slice(),a=n.pop();for(;r&&n.length;)r=n.every(o=>a.intersects(o,t)),a=n.pop();return r},cro=(e,t)=>(F1("comp",e,t),e=gro(e,t),F1("caret",e),e=lro(e,t),F1("tildes",e),e=dro(e,t),F1("xrange",e),e=fro(e,t),F1("stars",e),e),RZ=e=>!e||e.toLowerCase()==="x"||e==="*",lro=(e,t)=>e.trim().split(/\s+/).map(r=>uro(r,t)).join(" "),uro=(e,t)=>{let r=t.loose?K9[TZ.TILDELOOSE]:K9[TZ.TILDE];return e.replace(r,(n,a,o,l,A)=>{F1("tilde",e,n,a,o,l,A);let f;return RZ(a)?f="":RZ(o)?f=`>=${a}.0.0 <${+a+1}.0.0-0`:RZ(l)?f=`>=${a}.${o}.0 <${a}.${+o+1}.0-0`:A?(F1("replaceTilde pr",A),f=`>=${a}.${o}.${l}-${A} <${a}.${+o+1}.0-0`):f=`>=${a}.${o}.${l} <${a}.${+o+1}.0-0`,F1("tilde return",f),f})},gro=(e,t)=>e.trim().split(/\s+/).map(r=>Aro(r,t)).join(" "),Aro=(e,t)=>{F1("caret",e,t);let r=t.loose?K9[TZ.CARETLOOSE]:K9[TZ.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(a,o,l,A,f)=>{F1("caret",e,a,o,l,A,f);let I;return RZ(o)?I="":RZ(l)?I=`>=${o}.0.0${n} <${+o+1}.0.0-0`:RZ(A)?o==="0"?I=`>=${o}.${l}.0${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.0${n} <${+o+1}.0.0-0`:f?(F1("replaceCaret pr",f),o==="0"?l==="0"?I=`>=${o}.${l}.${A}-${f} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}-${f} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A}-${f} <${+o+1}.0.0-0`):(F1("no pr"),o==="0"?l==="0"?I=`>=${o}.${l}.${A}${n} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A} <${+o+1}.0.0-0`),F1("caret return",I),I})},dro=(e,t)=>(F1("replaceXRanges",e,t),e.split(/\s+/).map(r=>pro(r,t)).join(" ")),pro=(e,t)=>{e=e.trim();let r=t.loose?K9[TZ.XRANGELOOSE]:K9[TZ.XRANGE];return e.replace(r,(n,a,o,l,A,f)=>{F1("xRange",e,n,a,o,l,A,f);let I=RZ(o),C=I||RZ(l),b=C||RZ(A),E=b;return a==="="&&E&&(a=""),f=t.includePrerelease?"-0":"",I?a===">"||a==="<"?n="<0.0.0-0":n="*":a&&E?(C&&(l=0),A=0,a===">"?(a=">=",C?(o=+o+1,l=0,A=0):(l=+l+1,A=0)):a==="<="&&(a="<",C?o=+o+1:l=+l+1),a==="<"&&(f="-0"),n=`${a+o}.${l}.${A}${f}`):C?n=`>=${o}.0.0${f} <${+o+1}.0.0-0`:b&&(n=`>=${o}.${l}.0${f} <${o}.${+l+1}.0-0`),F1("xRange return",n),n})},fro=(e,t)=>(F1("replaceStars",e,t),e.trim().replace(K9[TZ.STAR],"")),Iro=(e,t)=>(F1("replaceGTE0",e,t),e.trim().replace(K9[t.includePrerelease?TZ.GTE0PRE:TZ.GTE0],"")),hro=e=>(t,r,n,a,o,l,A,f,I,C,b,E)=>(RZ(n)?r="":RZ(a)?r=`>=${n}.0.0${e?"-0":""}`:RZ(o)?r=`>=${n}.${a}.0${e?"-0":""}`:l?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,RZ(I)?f="":RZ(C)?f=`<${+I+1}.0.0-0`:RZ(b)?f=`<${I}.${+C+1}.0-0`:E?f=`<=${I}.${C}.${b}-${E}`:e?f=`<${I}.${C}.${+b+1}-0`:f=`<=${f}`,`${r} ${f}`.trim()),mro=(e,t,r)=>{for(let n=0;n0){let a=e[n].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch)return!0}return!1}return!0}});var N3e=H((T3l,qvn)=>{var D3e=Symbol("SemVer ANY"),h7t=class e{static get ANY(){return D3e}constructor(t,r){if(r=Jvn(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),I7t("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===D3e?this.value="":this.value=this.operator+this.semver.version,I7t("comp",this)}parse(t){let r=this.options.loose?Uvn[Kvn.COMPARATORLOOSE]:Uvn[Kvn.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new jvn(n[2],this.options.loose):this.semver=D3e}toString(){return this.value}test(t){if(I7t("Comparator.test",t,this.options.loose),this.semver===D3e||t===D3e)return!0;if(typeof t=="string")try{t=new jvn(t,this.options)}catch{return!1}return f7t(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new zvn(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new zvn(this.value,r).test(t.semver):(r=Jvn(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||f7t(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||f7t(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};qvn.exports=h7t;var Jvn=Clt(),{safeRe:Uvn,t:Kvn}=qSe(),f7t=g7t(),I7t=T3e(),jvn=dG(),zvn=nM()});var k3e=H((R3l,$vn)=>{var Cro=nM(),_ro=(e,t,r)=>{try{t=new Cro(t,r)}catch{return!1}return t.test(e)};$vn.exports=_ro});var tBn=H((N3l,eBn)=>{var yro=nM(),bro=(e,t)=>new yro(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));eBn.exports=bro});var nBn=H((D3l,rBn)=>{var Ero=dG(),Sro=nM(),vro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new Sro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===-1)&&(n=l,a=new Ero(n,r))}),n};rBn.exports=vro});var sBn=H((k3l,iBn)=>{var Bro=dG(),wro=nM(),Tro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new wro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===1)&&(n=l,a=new Bro(n,r))}),n};iBn.exports=Tro});var cBn=H((x3l,aBn)=>{var m7t=dG(),Rro=nM(),oBn=R3e(),Nro=(e,t)=>{e=new Rro(e,t);let r=new m7t("0.0.0");if(e.test(r)||(r=new m7t("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let A=new m7t(l.semver.version);switch(l.operator){case">":A.prerelease.length===0?A.patch++:A.prerelease.push(0),A.raw=A.format();case"":case">=":(!o||oBn(A,o))&&(o=A);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${l.operator}`)}}),o&&(!r||oBn(r,o))&&(r=o)}return r&&e.test(r)?r:null};aBn.exports=Nro});var uBn=H((G3l,lBn)=>{var Dro=nM(),kro=(e,t)=>{try{return new Dro(e,t).range||"*"}catch{return null}};lBn.exports=kro});var Tlt=H((F3l,pBn)=>{var xro=dG(),dBn=N3e(),{ANY:Gro}=dBn,Fro=nM(),Zro=k3e(),gBn=R3e(),ABn=Elt(),Lro=vlt(),Vro=Slt(),Wro=(e,t,r,n)=>{e=new xro(e,n),t=new Fro(t,n);let a,o,l,A,f;switch(r){case">":a=gBn,o=Lro,l=ABn,A=">",f=">=";break;case"<":a=ABn,o=Vro,l=gBn,A="<",f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Zro(e,t,n))return!1;for(let I=0;I{N.semver===Gro&&(N=new dBn(">=0.0.0")),b=b||N,E=E||N,a(N.semver,b.semver,n)?b=N:l(N.semver,E.semver,n)&&(E=N)}),b.operator===A||b.operator===f||(!E.operator||E.operator===A)&&o(e,E.semver))return!1;if(E.operator===f&&l(e,E.semver))return!1}return!0};pBn.exports=Wro});var IBn=H((Z3l,fBn)=>{var Oro=Tlt(),Pro=(e,t,r)=>Oro(e,t,">",r);fBn.exports=Pro});var mBn=H((L3l,hBn)=>{var Mro=Tlt(),Hro=(e,t,r)=>Mro(e,t,"<",r);hBn.exports=Hro});var yBn=H((V3l,_Bn)=>{var CBn=nM(),Yro=(e,t,r)=>(e=new CBn(e,r),t=new CBn(t,r),e.intersects(t,r));_Bn.exports=Yro});var EBn=H((W3l,bBn)=>{var Qro=k3e(),Xro=rM();bBn.exports=(e,t,r)=>{let n=[],a=null,o=null,l=e.sort((C,b)=>Xro(C,b,r));for(let C of l)Qro(C,t,r)?(o=C,a||(a=C)):(o&&n.push([a,o]),o=null,a=null);a&&n.push([a,null]);let A=[];for(let[C,b]of n)C===b?A.push(C):!b&&C===l[0]?A.push("*"):b?C===l[0]?A.push(`<=${b}`):A.push(`${C} - ${b}`):A.push(`>=${C}`);let f=A.join(" || "),I=typeof t.raw=="string"?t.raw:String(t);return f.length{var SBn=nM(),_7t=N3e(),{ANY:C7t}=_7t,x3e=k3e(),y7t=rM(),Jro=(e,t,r={})=>{if(e===t)return!0;e=new SBn(e,r),t=new SBn(t,r);let n=!1;e:for(let a of e.set){for(let o of t.set){let l=Kro(a,o,r);if(n=n||l!==null,l)continue e}if(n)return!1}return!0},Uro=[new _7t(">=0.0.0-0")],vBn=[new _7t(">=0.0.0")],Kro=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===C7t){if(t.length===1&&t[0].semver===C7t)return!0;r.includePrerelease?e=Uro:e=vBn}if(t.length===1&&t[0].semver===C7t){if(r.includePrerelease)return!0;t=vBn}let n=new Set,a,o;for(let N of e)N.operator===">"||N.operator===">="?a=BBn(a,N,r):N.operator==="<"||N.operator==="<="?o=wBn(o,N,r):n.add(N.semver);if(n.size>1)return null;let l;if(a&&o){if(l=y7t(a.semver,o.semver,r),l>0)return null;if(l===0&&(a.operator!==">="||o.operator!=="<="))return null}for(let N of n){if(a&&!x3e(N,String(a),r)||o&&!x3e(N,String(o),r))return null;for(let B of t)if(!x3e(N,String(B),r))return!1;return!0}let A,f,I,C,b=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,E=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;b&&b.prerelease.length===1&&o.operator==="<"&&b.prerelease[0]===0&&(b=!1);for(let N of t){if(C=C||N.operator===">"||N.operator===">=",I=I||N.operator==="<"||N.operator==="<=",a){if(E&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===E.major&&N.semver.minor===E.minor&&N.semver.patch===E.patch&&(E=!1),N.operator===">"||N.operator===">="){if(A=BBn(a,N,r),A===N&&A!==a)return!1}else if(a.operator===">="&&!x3e(a.semver,String(N),r))return!1}if(o){if(b&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===b.major&&N.semver.minor===b.minor&&N.semver.patch===b.patch&&(b=!1),N.operator==="<"||N.operator==="<="){if(f=wBn(o,N,r),f===N&&f!==o)return!1}else if(o.operator==="<="&&!x3e(o.semver,String(N),r))return!1}if(!N.operator&&(o||a)&&l!==0)return!1}return!(a&&I&&!o&&l!==0||o&&C&&!a&&l!==0||E||b)},BBn=(e,t,r)=>{if(!e)return t;let n=y7t(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},wBn=(e,t,r)=>{if(!e)return t;let n=y7t(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};TBn.exports=Jro});var jC=H((P3l,kBn)=>{var b7t=qSe(),NBn=w3e(),jro=dG(),DBn=s7t(),zro=Kfe(),qro=a7t(),$ro=c7t(),eno=cvn(),tno=gvn(),rno=dvn(),nno=fvn(),ino=hvn(),sno=Cvn(),ono=rM(),ano=Evn(),cno=vvn(),lno=blt(),uno=Rvn(),gno=Dvn(),Ano=R3e(),dno=Elt(),pno=l7t(),fno=u7t(),Ino=Slt(),hno=vlt(),mno=g7t(),Cno=Ovn(),_no=N3e(),yno=nM(),bno=k3e(),Eno=tBn(),Sno=nBn(),vno=sBn(),Bno=cBn(),wno=uBn(),Tno=Tlt(),Rno=IBn(),Nno=mBn(),Dno=yBn(),kno=EBn(),xno=RBn();kBn.exports={parse:zro,valid:qro,clean:$ro,inc:eno,diff:tno,major:rno,minor:nno,patch:ino,prerelease:sno,compare:ono,rcompare:ano,compareLoose:cno,compareBuild:lno,sort:uno,rsort:gno,gt:Ano,lt:dno,eq:pno,neq:fno,gte:Ino,lte:hno,cmp:mno,coerce:Cno,Comparator:_no,Range:yno,satisfies:bno,toComparators:Eno,maxSatisfying:Sno,minSatisfying:vno,minVersion:Bno,validRange:wno,outside:Tno,gtr:Rno,ltr:Nno,intersects:Dno,simplifyRange:kno,subset:xno,SemVer:jro,re:b7t.re,src:b7t.src,tokens:b7t.t,SEMVER_SPEC_VERSION:NBn.SEMVER_SPEC_VERSION,RELEASE_TYPES:NBn.RELEASE_TYPES,compareIdentifiers:DBn.compareIdentifiers,rcompareIdentifiers:DBn.rcompareIdentifiers}});var GBn=H((M3l,xBn)=>{"use strict";function Gno(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function jfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,jfe)}Gno(jfe,Error);jfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b{switch(xi[1]){case"|":return Vr|xi[3];case"&":return Vr&xi[3];case"^":return Vr^xi[3]}},Hi)},E="!",N=Bt("!",!1),B=function(Hi){return!Hi},F="(",Q=Bt("(",!1),J=")",ae=Bt(")",!1),ne=function(Hi){return Hi},ce=/^[^ \t\n\r()!|&\^]/,fe=Dt([" "," ",` -`,"\r","(",")","!","|","&","^"],!0,!1),ue=function(Hi){return t.queryPattern.test(Hi)},de=function(Hi){return t.checkFn(Hi)},be=Xt("whitespace"),Se=/^[ \t\n\r]/,De=Dt([" "," ",` -`,"\r"],!1,!1),k=0,tt=0,ze=[{line:1,column:1}],Le=0,Je=[],ft=0,lt;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Ot(){return e.substring(tt,k)}function Er(){return cr(tt,k)}function Sr(Hi,Ao){throw Ao=Ao!==void 0?Ao:cr(tt,k),yn([Xt(Hi)],e.substring(tt,k),Ao)}function jt(Hi,Ao){throw Ao=Ao!==void 0?Ao:cr(tt,k),qr(Hi,Ao)}function Bt(Hi,Ao){return{type:"literal",text:Hi,ignoreCase:Ao}}function Dt(Hi,Ao,Vr){return{type:"class",parts:Hi,inverted:Ao,ignoreCase:Vr}}function Fr(){return{type:"any"}}function $t(){return{type:"end"}}function Xt(Hi){return{type:"other",description:Hi}}function lr(Hi){var Ao=ze[Hi],Vr;if(Ao)return Ao;for(Vr=Hi-1;!ze[Vr];)Vr--;for(Ao=ze[Vr],Ao={line:Ao.line,column:Ao.column};VrLe&&(Le=k,Je=[]),Je.push(Hi))}function qr(Hi,Ao){return new jfe(Hi,null,null,Ao)}function yn(Hi,Ao,Vr){return new jfe(jfe.buildMessage(Hi,Ao),Hi,Ao,Vr)}function ke(){var Hi,Ao,Vr,xi,no,ga,Ya,Gc;if(Hi=k,Ao=zt(),Ao!==r){for(Vr=[],xi=k,no=Nn(),no!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,ft===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,ft===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,ft===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=zt(),Gc!==r?(no=[no,ga,Ya,Gc],xi=no):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);xi!==r;)Vr.push(xi),xi=k,no=Nn(),no!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,ft===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,ft===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,ft===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=zt(),Gc!==r?(no=[no,ga,Ya,Gc],xi=no):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);Vr!==r?(tt=Hi,Ao=b(Ao,Vr),Hi=Ao):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function zt(){var Hi,Ao,Vr,xi,no,ga;return Hi=k,e.charCodeAt(k)===33?(Ao=E,k++):(Ao=r,ft===0&&Ar(N)),Ao!==r?(Vr=zt(),Vr!==r?(tt=Hi,Ao=B(Vr),Hi=Ao):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=k,e.charCodeAt(k)===40?(Ao=F,k++):(Ao=r,ft===0&&Ar(Q)),Ao!==r?(Vr=Nn(),Vr!==r?(xi=ke(),xi!==r?(no=Nn(),no!==r?(e.charCodeAt(k)===41?(ga=J,k++):(ga=r,ft===0&&Ar(ae)),ga!==r?(tt=Hi,Ao=ne(xi),Hi=Ao):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=Fn())),Hi}function Fn(){var Hi,Ao,Vr,xi,no;if(Hi=k,Ao=Nn(),Ao!==r){if(Vr=k,xi=[],ce.test(e.charAt(k))?(no=e.charAt(k),k++):(no=r,ft===0&&Ar(fe)),no!==r)for(;no!==r;)xi.push(no),ce.test(e.charAt(k))?(no=e.charAt(k),k++):(no=r,ft===0&&Ar(fe));else xi=r;xi!==r?Vr=e.substring(Vr,k):Vr=xi,Vr!==r?(tt=k,xi=ue(Vr),xi?xi=void 0:xi=r,xi!==r?(tt=Hi,Ao=de(Vr),Hi=Ao):(k=Hi,Hi=r)):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function Nn(){var Hi,Ao;for(ft++,Hi=[],Se.test(e.charAt(k))?(Ao=e.charAt(k),k++):(Ao=r,ft===0&&Ar(De));Ao!==r;)Hi.push(Ao),Se.test(e.charAt(k))?(Ao=e.charAt(k),k++):(Ao=r,ft===0&&Ar(De));return ft--,Hi===r&&(Ao=r,ft===0&&Ar(be)),Hi}if(lt=a(),lt!==r&&k===e.length)return lt;throw lt!==r&&k{var{parse:Zno}=GBn();Rlt.makeParser=(e=/[a-z]+/)=>(t,r)=>Zno(t,{queryPattern:e,checkFn:r});Rlt.parse=Rlt.makeParser()});var LBn=H((Y3l,ZBn)=>{"use strict";ZBn.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 E7t=H((Q3l,WBn)=>{var G3e=LBn(),VBn={};for(let e of Object.keys(G3e))VBn[G3e[e]]=e;var fd={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"]}};WBn.exports=fd;for(let e of Object.keys(fd)){if(!("channels"in fd[e]))throw new Error("missing channels property: "+e);if(!("labels"in fd[e]))throw new Error("missing channel labels property: "+e);if(fd[e].labels.length!==fd[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=fd[e];delete fd[e].channels,delete fd[e].labels,Object.defineProperty(fd[e],"channels",{value:t}),Object.defineProperty(fd[e],"labels",{value:r})}fd.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f;o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360);let I=(a+o)/2;return o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};fd.rgb.hsv=function(e){let t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?(a=0,o=0):(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};fd.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],a=fd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};fd.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(1-t,1-r,1-n),o=(1-t-a)/(1-a)||0,l=(1-r-a)/(1-a)||0,A=(1-n-a)/(1-a)||0;return[o*100,l*100,A*100,a*100]};function Lno(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}fd.rgb.keyword=function(e){let t=VBn[e];if(t)return t;let r=1/0,n;for(let a of Object.keys(G3e)){let o=G3e[a],l=Lno(e,o);l.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92;let a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};fd.rgb.lab=function(e){let t=fd.rgb.xyz(e),r=t[0],n=t[1],a=t[2];r/=95.047,n/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let o=116*n-16,l=500*(r-n),A=200*(n-a);return[o,l,A]};fd.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l;if(r===0)return l=n*255,[l,l,l];n<.5?a=n*(1+r):a=n+r-n*r;let A=2*n-a,f=[0,0,0];for(let I=0;I<3;I++)o=t+1/3*-(I-1),o<0&&o++,o>1&&o--,6*o<1?l=A+(a-A)*6*o:2*o<1?l=a:3*o<2?l=A+(a-A)*(2/3-o)*6:l=A,f[I]=l*255;return f};fd.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01);n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o;let l=(n+r)/2,A=n===0?2*a/(o+a):2*r/(n+r);return[t,A*100,l*100]};fd.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};fd.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l;l=(2-r)*n;let A=(2-r)*a;return o=r*a,o/=A<=1?A:2-A,o=o||0,l/=2,[t,o*100,l*100]};fd.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o;a>1&&(r/=a,n/=a);let l=Math.floor(6*t),A=1-n;o=6*t-l,l&1&&(o=1-o);let f=r+o*(A-r),I,C,b;switch(l){default:case 6:case 0:I=A,C=f,b=r;break;case 1:I=f,C=A,b=r;break;case 2:I=r,C=A,b=f;break;case 3:I=r,C=f,b=A;break;case 4:I=f,C=r,b=A;break;case 5:I=A,C=r,b=f;break}return[I*255,C*255,b*255]};fd.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a);return[o*255,l*255,A*255]};fd.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,l=l>.0031308?1.055*l**(1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};fd.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let a=116*r-16,o=500*(t-r),l=200*(r-n);return[a,o,l]};fd.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;let A=o**3,f=a**3,I=l**3;return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};fd.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],a;a=Math.atan2(n,r)*360/2/Math.PI,a<0&&(a+=360);let l=Math.sqrt(r*r+n*n);return[t,l,a]};fd.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,o=r*Math.cos(a),l=r*Math.sin(a);return[t,o,l]};fd.rgb.ansi16=function(e,t=null){let[r,n,a]=e,o=t===null?fd.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let l=30+(Math.round(a/255)<<2|Math.round(n/255)<<1|Math.round(r/255));return o===2&&(l+=60),l};fd.hsv.ansi16=function(e){return fd.rgb.ansi16(fd.hsv.rgb(e),e[2])};fd.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};fd.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};fd.ansi256.rgb=function(e){if(e>=232){let o=(e-232)*10+8;return[o,o,o]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,a=t%6/5*255;return[r,n,a]};fd.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};fd.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(A=>A+A).join(""));let n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};fd.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l,f/=6,f%=1,[f*360,l*100,A*100]};fd.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<.5?2*t*r:2*t*(1-r),a=0;return n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};fd.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};fd.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];let a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};fd.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};fd.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};fd.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};fd.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};fd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};fd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};fd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};fd.gray.hsl=function(e){return[0,0,e[0]]};fd.gray.hsv=fd.gray.hsl;fd.gray.hwb=function(e){return[0,100,e[0]]};fd.gray.cmyk=function(e){return[0,0,0,e[0]]};fd.gray.lab=function(e){return[e[0],0,0]};fd.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n};fd.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}});var PBn=H((X3l,OBn)=>{var Nlt=E7t();function Vno(){let e={},t=Object.keys(Nlt);for(let r=t.length,n=0;n{var S7t=E7t(),Mno=PBn(),eve={},Hno=Object.keys(S7t);function Yno(e){let t=function(...r){let n=r[0];return n==null?n:(n.length>1&&(r=n),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function Qno(e){let t=function(...r){let n=r[0];if(n==null)return n;n.length>1&&(r=n);let a=e(r);if(typeof a=="object")for(let o=a.length,l=0;l{eve[e]={},Object.defineProperty(eve[e],"channels",{value:S7t[e].channels}),Object.defineProperty(eve[e],"labels",{value:S7t[e].labels});let t=Mno(e);Object.keys(t).forEach(n=>{let a=t[n];eve[e][n]=Qno(a),eve[e][n].raw=Yno(a)})});MBn.exports=eve});var klt=H((U3l,UBn)=>{"use strict";var YBn=(e,t)=>(...r)=>`\x1B[${e(...r)+t}m`,QBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};5;${n}m`},XBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};2;${n[0]};${n[1]};${n[2]}m`},Dlt=e=>e,JBn=(e,t,r)=>[e,t,r],tve=(e,t,r)=>{Object.defineProperty(e,t,{get:()=>{let n=r();return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0}),n},enumerable:!0,configurable:!0})},v7t,rve=(e,t,r,n)=>{v7t===void 0&&(v7t=HBn());let a=n?10:0,o={};for(let[l,A]of Object.entries(v7t)){let f=l==="ansi16"?"ansi":l;l===t?o[f]=e(r,a):typeof A=="object"&&(o[f]=e(A[t],a))}return o};function Xno(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(let[r,n]of Object.entries(t)){for(let[a,o]of Object.entries(n))t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},n[a]=t[a],e.set(o[0],o[1]);Object.defineProperty(t,r,{value:n,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",tve(t.color,"ansi",()=>rve(YBn,"ansi16",Dlt,!1)),tve(t.color,"ansi256",()=>rve(QBn,"ansi256",Dlt,!1)),tve(t.color,"ansi16m",()=>rve(XBn,"rgb",JBn,!1)),tve(t.bgColor,"ansi",()=>rve(YBn,"ansi16",Dlt,!0)),tve(t.bgColor,"ansi256",()=>rve(QBn,"ansi256",Dlt,!0)),tve(t.bgColor,"ansi16m",()=>rve(XBn,"rgb",JBn,!0)),t}Object.defineProperty(UBn,"exports",{enumerable:!0,get:Xno})});var B7t=H((K3l,KBn)=>{"use strict";KBn.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n{"use strict";var Jno=Et("os"),jBn=Et("tty"),iM=B7t(),{env:qN}=process,Ioe;iM("no-color")||iM("no-colors")||iM("color=false")||iM("color=never")?Ioe=0:(iM("color")||iM("colors")||iM("color=true")||iM("color=always"))&&(Ioe=1);"FORCE_COLOR"in qN&&(qN.FORCE_COLOR==="true"?Ioe=1:qN.FORCE_COLOR==="false"?Ioe=0:Ioe=qN.FORCE_COLOR.length===0?1:Math.min(parseInt(qN.FORCE_COLOR,10),3));function w7t(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function T7t(e,t){if(Ioe===0)return 0;if(iM("color=16m")||iM("color=full")||iM("color=truecolor"))return 3;if(iM("color=256"))return 2;if(e&&!t&&Ioe===void 0)return 0;let r=Ioe||0;if(qN.TERM==="dumb")return r;if(process.platform==="win32"){let n=Jno.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in qN)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in qN)||qN.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in qN)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(qN.TEAMCITY_VERSION)?1:0;if(qN.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in qN){let n=parseInt((qN.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(qN.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(qN.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(qN.TERM)||"COLORTERM"in qN?1:r}function Uno(e){let t=T7t(e,e&&e.isTTY);return w7t(t)}zBn.exports={supportsColor:Uno,stdout:w7t(T7t(!0,jBn.isatty(1))),stderr:w7t(T7t(!0,jBn.isatty(2)))}});var $Bn=H((z3l,qBn)=>{"use strict";var Kno=(e,t,r)=>{let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.substr(o,n-o)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.substr(o),l},jno=(e,t,r,n)=>{let a=0,o="";do{let l=e[n-1]==="\r";o+=e.substr(a,(l?n-1:n)-a)+t+(l?`\r +`),(0,feo.parse)(e)}var meo=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function Ceo(e){if(meo.test(e))return heo(e);let t=(0,NSn.safeLoad)(e,{schema:NSn.FAILSAFE_SCHEMA,json:!0});if(t==null)return{};if(typeof t!="object")throw new Error(`Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?`);if(Array.isArray(t))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return t}function _eo(e){return Ceo(e)}});var LO=H(vm=>{"use strict";Object.defineProperty(vm,"__esModule",{value:!0});vm.stringifySyml=vm.parseSyml=vm.stringifyResolution=vm.parseResolution=vm.stringifyValueArgument=vm.stringifyShellLine=vm.stringifyRedirectArgument=vm.stringifyEnvSegment=vm.stringifyCommandLineThen=vm.stringifyCommandLine=vm.stringifyCommandChainThen=vm.stringifyCommandChain=vm.stringifyCommand=vm.stringifyArithmeticExpression=vm.stringifyArgumentSegment=vm.stringifyArgument=vm.stringifyShell=vm.parseShell=void 0;var U9=G1n();Object.defineProperty(vm,"parseShell",{enumerable:!0,get:function(){return U9.parseShell}});Object.defineProperty(vm,"stringifyShell",{enumerable:!0,get:function(){return U9.stringifyShell}});Object.defineProperty(vm,"stringifyArgument",{enumerable:!0,get:function(){return U9.stringifyArgument}});Object.defineProperty(vm,"stringifyArgumentSegment",{enumerable:!0,get:function(){return U9.stringifyArgumentSegment}});Object.defineProperty(vm,"stringifyArithmeticExpression",{enumerable:!0,get:function(){return U9.stringifyArithmeticExpression}});Object.defineProperty(vm,"stringifyCommand",{enumerable:!0,get:function(){return U9.stringifyCommand}});Object.defineProperty(vm,"stringifyCommandChain",{enumerable:!0,get:function(){return U9.stringifyCommandChain}});Object.defineProperty(vm,"stringifyCommandChainThen",{enumerable:!0,get:function(){return U9.stringifyCommandChainThen}});Object.defineProperty(vm,"stringifyCommandLine",{enumerable:!0,get:function(){return U9.stringifyCommandLine}});Object.defineProperty(vm,"stringifyCommandLineThen",{enumerable:!0,get:function(){return U9.stringifyCommandLineThen}});Object.defineProperty(vm,"stringifyEnvSegment",{enumerable:!0,get:function(){return U9.stringifyEnvSegment}});Object.defineProperty(vm,"stringifyRedirectArgument",{enumerable:!0,get:function(){return U9.stringifyRedirectArgument}});Object.defineProperty(vm,"stringifyShellLine",{enumerable:!0,get:function(){return U9.stringifyShellLine}});Object.defineProperty(vm,"stringifyValueArgument",{enumerable:!0,get:function(){return U9.stringifyValueArgument}});var ZSn=L1n();Object.defineProperty(vm,"parseResolution",{enumerable:!0,get:function(){return ZSn.parseResolution}});Object.defineProperty(vm,"stringifyResolution",{enumerable:!0,get:function(){return ZSn.stringifyResolution}});var LSn=FSn();Object.defineProperty(vm,"parseSyml",{enumerable:!0,get:function(){return LSn.parseSyml}});Object.defineProperty(vm,"stringifySyml",{enumerable:!0,get:function(){return LSn.stringifySyml}})});var WSn=H((P3l,jjt)=>{"use strict";var yeo=e=>{let t=!1,r=!1,n=!1;for(let a=0;a{if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");t=Object.assign({pascalCase:!1},t);let r=a=>t.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(e)?e=e.map(a=>a.trim()).filter(a=>a.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=yeo(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(e))};jjt.exports=VSn;jjt.exports.default=VSn});var OSn=H((M3l,beo)=>{beo.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{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:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{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:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{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:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{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:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{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:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var Ufe=H(VO=>{"use strict";var MSn=OSn(),NR=process.env;Object.defineProperty(VO,"_vendors",{value:MSn.map(function(e){return e.constant})});VO.name=null;VO.isPR=null;MSn.forEach(function(e){let r=(Array.isArray(e.env)?e.env:[e.env]).every(function(n){return PSn(n)});if(VO[e.constant]=r,!!r)switch(VO.name=e.name,typeof e.pr){case"string":VO.isPR=!!NR[e.pr];break;case"object":"env"in e.pr?VO.isPR=e.pr.env in NR&&NR[e.pr.env]!==e.pr.ne:"any"in e.pr?VO.isPR=e.pr.any.some(function(n){return!!NR[n]}):VO.isPR=PSn(e.pr);break;default:VO.isPR=null}});VO.isCI=!!(NR.CI!=="false"&&(NR.BUILD_ID||NR.BUILD_NUMBER||NR.CI||NR.CI_APP_ID||NR.CI_BUILD_ID||NR.CI_BUILD_NUMBER||NR.CI_NAME||NR.CONTINUOUS_INTEGRATION||NR.RUN_ID||VO.name));function PSn(e){return typeof e=="string"?!!NR[e]:"env"in e?NR[e.env]&&NR[e.env].includes(e.includes):"any"in e?e.any.some(function(t){return!!NR[t]}):Object.keys(e).every(function(t){return NR[t]===e[t]})}});var HSn=H((Y3l,Eeo)=>{Eeo.exports={name:"dotenv",version:"16.4.5",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var JSn=H((Q3l,a$)=>{var zjt=Et("fs"),qjt=Et("path"),Seo=Et("os"),veo=Et("crypto"),Beo=HSn(),$jt=Beo.version,weo=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Teo(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` +`);let n;for(;(n=weo.exec(r))!=null;){let a=n[1],o=n[2]||"";o=o.trim();let l=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),l==='"'&&(o=o.replace(/\\n/g,` +`),o=o.replace(/\\r/g,"\r")),t[a]=o}return t}function Reo(e){let t=XSn(e),r=DR.configDotenv({path:t});if(!r.parsed){let l=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw l.code="MISSING_DATA",l}let n=QSn(e).split(","),a=n.length,o;for(let l=0;l=a)throw A}return DR.parse(o)}function Neo(e){console.log(`[dotenv@${$jt}][INFO] ${e}`)}function Deo(e){console.log(`[dotenv@${$jt}][WARN] ${e}`)}function hlt(e){console.log(`[dotenv@${$jt}][DEBUG] ${e}`)}function QSn(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function keo(e,t){let r;try{r=new URL(t)}catch(A){if(A.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw A}let n=r.password;if(!n){let A=new Error("INVALID_DOTENV_KEY: Missing key part");throw A.code="INVALID_DOTENV_KEY",A}let a=r.searchParams.get("environment");if(!a){let A=new Error("INVALID_DOTENV_KEY: Missing environment part");throw A.code="INVALID_DOTENV_KEY",A}let o=`DOTENV_VAULT_${a.toUpperCase()}`,l=e.parsed[o];if(!l){let A=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw A.code="NOT_FOUND_DOTENV_ENVIRONMENT",A}return{ciphertext:l,key:n}}function XSn(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)zjt.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=qjt.resolve(process.cwd(),".env.vault");return zjt.existsSync(t)?t:null}function YSn(e){return e[0]==="~"?qjt.join(Seo.homedir(),e.slice(1)):e}function xeo(e){Neo("Loading env from encrypted .env.vault");let t=DR._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),DR.populate(r,t,e),{parsed:t}}function Geo(e){let t=qjt.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&hlt("No encoding is specified. UTF-8 is used by default");let a=[t];if(e&&e.path)if(!Array.isArray(e.path))a=[YSn(e.path)];else{a=[];for(let f of e.path)a.push(YSn(f))}let o,l={};for(let f of a)try{let I=DR.parse(zjt.readFileSync(f,{encoding:r}));DR.populate(l,I,e)}catch(I){n&&hlt(`Failed to load ${f} ${I.message}`),o=I}let A=process.env;return e&&e.processEnv!=null&&(A=e.processEnv),DR.populate(A,l,e),o?{parsed:l,error:o}:{parsed:l}}function Feo(e){if(QSn(e).length===0)return DR.configDotenv(e);let t=XSn(e);return t?DR._configVault(e):(Deo(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),DR.configDotenv(e))}function Zeo(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),a=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let l=veo.createDecipheriv("aes-256-gcm",r,a);return l.setAuthTag(o),`${l.update(n)}${l.final()}`}catch(l){let A=l instanceof RangeError,f=l.message==="Invalid key length",I=l.message==="Unsupported state or unable to authenticate data";if(A||f){let C=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw C.code="INVALID_DOTENV_KEY",C}else if(I){let C=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw C.code="DECRYPTION_FAILED",C}else throw l}}function Leo(e,t,r={}){let n=!!(r&&r.debug),a=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(a===!0&&(e[o]=t[o]),n&&hlt(a===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var DR={configDotenv:Geo,_configVault:xeo,_parseVault:Reo,config:Feo,decrypt:Zeo,parse:Teo,populate:Leo};a$.exports.configDotenv=DR.configDotenv;a$.exports._configVault=DR._configVault;a$.exports._parseVault=DR._parseVault;a$.exports.config=DR.config;a$.exports.decrypt=DR.decrypt;a$.exports.parse=DR.parse;a$.exports.populate=DR.populate;a$.exports=DR});var KSn=H((X3l,e7t)=>{"use strict";var USn=(e,...t)=>new Promise(r=>{r(e(...t))});e7t.exports=USn;e7t.exports.default=USn});var Kfe=H((J3l,t7t)=>{"use strict";var Veo=KSn(),jSn=e=>{if(!((Number.isInteger(e)||e===1/0)&&e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));let t=[],r=0,n=()=>{r--,t.length>0&&t.shift()()},a=(A,f,...I)=>{r++;let C=Veo(A,...I);f(C),C.then(n,n)},o=(A,f,...I)=>{rnew Promise(I=>o(A,I,...f));return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),l};t7t.exports=jSn;t7t.exports.default=jSn});var K9=H(zSe=>{"use strict";Object.defineProperty(zSe,"__esModule",{value:!0});zSe.MessageName=void 0;zSe.stringifyMessageName=Weo;zSe.parseMessageName=Oeo;var r7t;(function(e){e[e.UNNAMED=0]="UNNAMED",e[e.EXCEPTION=1]="EXCEPTION",e[e.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",e[e.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",e[e.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",e[e.BUILD_DISABLED=5]="BUILD_DISABLED",e[e.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",e[e.MUST_BUILD=7]="MUST_BUILD",e[e.MUST_REBUILD=8]="MUST_REBUILD",e[e.BUILD_FAILED=9]="BUILD_FAILED",e[e.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",e[e.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",e[e.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",e[e.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",e[e.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",e[e.REMOTE_INVALID=15]="REMOTE_INVALID",e[e.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",e[e.RESOLUTION_PACK=17]="RESOLUTION_PACK",e[e.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",e[e.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",e[e.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",e[e.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",e[e.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",e[e.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",e[e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",e[e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",e[e.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",e[e.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",e[e.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",e[e.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",e[e.FETCH_FAILED=30]="FETCH_FAILED",e[e.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",e[e.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",e[e.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",e[e.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",e[e.NETWORK_ERROR=35]="NETWORK_ERROR",e[e.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",e[e.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",e[e.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",e[e.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",e[e.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",e[e.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",e[e.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",e[e.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",e[e.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",e[e.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",e[e.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",e[e.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",e[e.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",e[e.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",e[e.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",e[e.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",e[e.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",e[e.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",e[e.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",e[e.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",e[e.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",e[e.INVALID_MANIFEST=57]="INVALID_MANIFEST",e[e.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",e[e.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",e[e.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",e[e.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",e[e.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",e[e.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",e[e.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",e[e.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",e[e.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",e[e.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",e[e.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",e[e.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",e[e.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",e[e.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",e[e.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",e[e.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",e[e.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",e[e.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",e[e.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",e[e.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",e[e.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",e[e.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",e[e.NETWORK_DISABLED=80]="NETWORK_DISABLED",e[e.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",e[e.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",e[e.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",e[e.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",e[e.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",e[e.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",e[e.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",e[e.VERSION_NOTICE=88]="VERSION_NOTICE",e[e.TIPS_NOTICE=89]="TIPS_NOTICE",e[e.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED",e[e.INVALID_PROVENANCE_ENVIRONMENT=91]="INVALID_PROVENANCE_ENVIRONMENT",e[e.EXPERIMENTAL=92]="EXPERIMENTAL"})(r7t||(zSe.MessageName=r7t={}));function Weo(e){return`YN${e.toString(10).padStart(4,"0")}`}function Oeo(e){let t=Number(e.slice(2));if(typeof r7t[t]>"u")throw new Error(`Unknown message name: "${e}"`);return t}});var w3e=H((K3l,zSn)=>{var Peo="2.0.0",Meo=Number.MAX_SAFE_INTEGER||9007199254740991,Heo=16,Yeo=250,Qeo=["major","premajor","minor","preminor","patch","prepatch","prerelease"];zSn.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Heo,MAX_SAFE_BUILD_LENGTH:Yeo,MAX_SAFE_INTEGER:Meo,RELEASE_TYPES:Qeo,SEMVER_SPEC_VERSION:Peo,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var T3e=H((j3l,qSn)=>{var Xeo=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};qSn.exports=Xeo});var qSe=H((c$,$Sn)=>{var{MAX_SAFE_COMPONENT_LENGTH:n7t,MAX_SAFE_BUILD_LENGTH:Jeo,MAX_LENGTH:Ueo}=w3e(),Keo=T3e();c$=$Sn.exports={};var jeo=c$.re=[],zeo=c$.safeRe=[],pA=c$.src=[],fA=c$.t={},qeo=0,i7t="[a-zA-Z0-9-]",$eo=[["\\s",1],["\\d",Ueo],[i7t,Jeo]],eto=e=>{for(let[t,r]of $eo)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},$I=(e,t,r)=>{let n=eto(t),a=qeo++;Keo(e,a,t),fA[e]=a,pA[a]=t,jeo[a]=new RegExp(t,r?"g":void 0),zeo[a]=new RegExp(n,r?"g":void 0)};$I("NUMERICIDENTIFIER","0|[1-9]\\d*");$I("NUMERICIDENTIFIERLOOSE","\\d+");$I("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${i7t}*`);$I("MAINVERSION",`(${pA[fA.NUMERICIDENTIFIER]})\\.(${pA[fA.NUMERICIDENTIFIER]})\\.(${pA[fA.NUMERICIDENTIFIER]})`);$I("MAINVERSIONLOOSE",`(${pA[fA.NUMERICIDENTIFIERLOOSE]})\\.(${pA[fA.NUMERICIDENTIFIERLOOSE]})\\.(${pA[fA.NUMERICIDENTIFIERLOOSE]})`);$I("PRERELEASEIDENTIFIER",`(?:${pA[fA.NUMERICIDENTIFIER]}|${pA[fA.NONNUMERICIDENTIFIER]})`);$I("PRERELEASEIDENTIFIERLOOSE",`(?:${pA[fA.NUMERICIDENTIFIERLOOSE]}|${pA[fA.NONNUMERICIDENTIFIER]})`);$I("PRERELEASE",`(?:-(${pA[fA.PRERELEASEIDENTIFIER]}(?:\\.${pA[fA.PRERELEASEIDENTIFIER]})*))`);$I("PRERELEASELOOSE",`(?:-?(${pA[fA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${pA[fA.PRERELEASEIDENTIFIERLOOSE]})*))`);$I("BUILDIDENTIFIER",`${i7t}+`);$I("BUILD",`(?:\\+(${pA[fA.BUILDIDENTIFIER]}(?:\\.${pA[fA.BUILDIDENTIFIER]})*))`);$I("FULLPLAIN",`v?${pA[fA.MAINVERSION]}${pA[fA.PRERELEASE]}?${pA[fA.BUILD]}?`);$I("FULL",`^${pA[fA.FULLPLAIN]}$`);$I("LOOSEPLAIN",`[v=\\s]*${pA[fA.MAINVERSIONLOOSE]}${pA[fA.PRERELEASELOOSE]}?${pA[fA.BUILD]}?`);$I("LOOSE",`^${pA[fA.LOOSEPLAIN]}$`);$I("GTLT","((?:<|>)?=?)");$I("XRANGEIDENTIFIERLOOSE",`${pA[fA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);$I("XRANGEIDENTIFIER",`${pA[fA.NUMERICIDENTIFIER]}|x|X|\\*`);$I("XRANGEPLAIN",`[v=\\s]*(${pA[fA.XRANGEIDENTIFIER]})(?:\\.(${pA[fA.XRANGEIDENTIFIER]})(?:\\.(${pA[fA.XRANGEIDENTIFIER]})(?:${pA[fA.PRERELEASE]})?${pA[fA.BUILD]}?)?)?`);$I("XRANGEPLAINLOOSE",`[v=\\s]*(${pA[fA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${pA[fA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${pA[fA.XRANGEIDENTIFIERLOOSE]})(?:${pA[fA.PRERELEASELOOSE]})?${pA[fA.BUILD]}?)?)?`);$I("XRANGE",`^${pA[fA.GTLT]}\\s*${pA[fA.XRANGEPLAIN]}$`);$I("XRANGELOOSE",`^${pA[fA.GTLT]}\\s*${pA[fA.XRANGEPLAINLOOSE]}$`);$I("COERCEPLAIN",`(^|[^\\d])(\\d{1,${n7t}})(?:\\.(\\d{1,${n7t}}))?(?:\\.(\\d{1,${n7t}}))?`);$I("COERCE",`${pA[fA.COERCEPLAIN]}(?:$|[^\\d])`);$I("COERCEFULL",pA[fA.COERCEPLAIN]+`(?:${pA[fA.PRERELEASE]})?(?:${pA[fA.BUILD]})?(?:$|[^\\d])`);$I("COERCERTL",pA[fA.COERCE],!0);$I("COERCERTLFULL",pA[fA.COERCEFULL],!0);$I("LONETILDE","(?:~>?)");$I("TILDETRIM",`(\\s*)${pA[fA.LONETILDE]}\\s+`,!0);c$.tildeTrimReplace="$1~";$I("TILDE",`^${pA[fA.LONETILDE]}${pA[fA.XRANGEPLAIN]}$`);$I("TILDELOOSE",`^${pA[fA.LONETILDE]}${pA[fA.XRANGEPLAINLOOSE]}$`);$I("LONECARET","(?:\\^)");$I("CARETTRIM",`(\\s*)${pA[fA.LONECARET]}\\s+`,!0);c$.caretTrimReplace="$1^";$I("CARET",`^${pA[fA.LONECARET]}${pA[fA.XRANGEPLAIN]}$`);$I("CARETLOOSE",`^${pA[fA.LONECARET]}${pA[fA.XRANGEPLAINLOOSE]}$`);$I("COMPARATORLOOSE",`^${pA[fA.GTLT]}\\s*(${pA[fA.LOOSEPLAIN]})$|^$`);$I("COMPARATOR",`^${pA[fA.GTLT]}\\s*(${pA[fA.FULLPLAIN]})$|^$`);$I("COMPARATORTRIM",`(\\s*)${pA[fA.GTLT]}\\s*(${pA[fA.LOOSEPLAIN]}|${pA[fA.XRANGEPLAIN]})`,!0);c$.comparatorTrimReplace="$1$2$3";$I("HYPHENRANGE",`^\\s*(${pA[fA.XRANGEPLAIN]})\\s+-\\s+(${pA[fA.XRANGEPLAIN]})\\s*$`);$I("HYPHENRANGELOOSE",`^\\s*(${pA[fA.XRANGEPLAINLOOSE]})\\s+-\\s+(${pA[fA.XRANGEPLAINLOOSE]})\\s*$`);$I("STAR","(<|>)?=?\\s*\\*");$I("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");$I("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var mlt=H((z3l,evn)=>{var tto=Object.freeze({loose:!0}),rto=Object.freeze({}),nto=e=>e?typeof e!="object"?tto:e:rto;evn.exports=nto});var s7t=H((q3l,nvn)=>{var tvn=/^[0-9]+$/,rvn=(e,t)=>{let r=tvn.test(e),n=tvn.test(t);return r&&n&&(e=+e,t=+t),e===t?0:r&&!n?-1:n&&!r?1:ervn(t,e);nvn.exports={compareIdentifiers:rvn,rcompareIdentifiers:ito}});var pG=H(($3l,avn)=>{var Clt=T3e(),{MAX_LENGTH:ivn,MAX_SAFE_INTEGER:_lt}=w3e(),{safeRe:svn,t:ovn}=qSe(),sto=mlt(),{compareIdentifiers:$Se}=s7t(),o7t=class e{constructor(t,r){if(r=sto(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>ivn)throw new TypeError(`version is longer than ${ivn} characters`);Clt("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?svn[ovn.LOOSE]:svn[ovn.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>_lt||this.major<0)throw new TypeError("Invalid major version");if(this.minor>_lt||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>_lt||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let o=+a;if(o>=0&&o<_lt)return o}return a}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(Clt("SemVer.compare",this.version,this.options,t),!(t instanceof e)){if(typeof t=="string"&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),$Se(this.major,t.major)||$Se(this.minor,t.minor)||$Se(this.patch,t.patch)}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],a=t.prerelease[r];if(Clt("prerelease compare",r,n,a),n===void 0&&a===void 0)return 0;if(a===void 0)return 1;if(n===void 0)return-1;if(n===a)continue;return $Se(n,a)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let n=this.build[r],a=t.build[r];if(Clt("build compare",r,n,a),n===void 0&&a===void 0)return 0;if(a===void 0)return 1;if(n===void 0)return-1;if(n===a)continue;return $Se(n,a)}while(++r)}inc(t,r,n){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let a=Number(n)?1:0;if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(this.prerelease.length===0)this.prerelease=[a];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let o=[r,a];n===!1&&(o=[r]),$Se(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};avn.exports=o7t});var jfe=H((e5l,lvn)=>{var cvn=pG(),oto=(e,t,r=!1)=>{if(e instanceof cvn)return e;try{return new cvn(e,t)}catch(n){if(!r)return null;throw n}};lvn.exports=oto});var a7t=H((t5l,uvn)=>{var ato=jfe(),cto=(e,t)=>{let r=ato(e,t);return r?r.version:null};uvn.exports=cto});var c7t=H((r5l,gvn)=>{var lto=jfe(),uto=(e,t)=>{let r=lto(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};gvn.exports=uto});var pvn=H((n5l,dvn)=>{var Avn=pG(),gto=(e,t,r,n,a)=>{typeof r=="string"&&(a=n,n=r,r=void 0);try{return new Avn(e instanceof Avn?e.version:e,r).inc(t,n,a).version}catch{return null}};dvn.exports=gto});var hvn=H((i5l,Ivn)=>{var fvn=jfe(),Ato=(e,t)=>{let r=fvn(e,null,!0),n=fvn(t,null,!0),a=r.compare(n);if(a===0)return null;let o=a>0,l=o?r:n,A=o?n:r,f=!!l.prerelease.length;if(!!A.prerelease.length&&!f)return!A.patch&&!A.minor?"major":l.patch?"patch":l.minor?"minor":"major";let C=f?"pre":"";return r.major!==n.major?C+"major":r.minor!==n.minor?C+"minor":r.patch!==n.patch?C+"patch":"prerelease"};Ivn.exports=Ato});var Cvn=H((s5l,mvn)=>{var dto=pG(),pto=(e,t)=>new dto(e,t).major;mvn.exports=pto});var yvn=H((o5l,_vn)=>{var fto=pG(),Ito=(e,t)=>new fto(e,t).minor;_vn.exports=Ito});var Evn=H((a5l,bvn)=>{var hto=pG(),mto=(e,t)=>new hto(e,t).patch;bvn.exports=mto});var vvn=H((c5l,Svn)=>{var Cto=jfe(),_to=(e,t)=>{let r=Cto(e,t);return r&&r.prerelease.length?r.prerelease:null};Svn.exports=_to});var nM=H((l5l,wvn)=>{var Bvn=pG(),yto=(e,t,r)=>new Bvn(e,r).compare(new Bvn(t,r));wvn.exports=yto});var Rvn=H((u5l,Tvn)=>{var bto=nM(),Eto=(e,t,r)=>bto(t,e,r);Tvn.exports=Eto});var Dvn=H((g5l,Nvn)=>{var Sto=nM(),vto=(e,t)=>Sto(e,t,!0);Nvn.exports=vto});var ylt=H((A5l,xvn)=>{var kvn=pG(),Bto=(e,t,r)=>{let n=new kvn(e,r),a=new kvn(t,r);return n.compare(a)||n.compareBuild(a)};xvn.exports=Bto});var Fvn=H((d5l,Gvn)=>{var wto=ylt(),Tto=(e,t)=>e.sort((r,n)=>wto(r,n,t));Gvn.exports=Tto});var Lvn=H((p5l,Zvn)=>{var Rto=ylt(),Nto=(e,t)=>e.sort((r,n)=>Rto(n,r,t));Zvn.exports=Nto});var R3e=H((f5l,Vvn)=>{var Dto=nM(),kto=(e,t,r)=>Dto(e,t,r)>0;Vvn.exports=kto});var blt=H((I5l,Wvn)=>{var xto=nM(),Gto=(e,t,r)=>xto(e,t,r)<0;Wvn.exports=Gto});var l7t=H((h5l,Ovn)=>{var Fto=nM(),Zto=(e,t,r)=>Fto(e,t,r)===0;Ovn.exports=Zto});var u7t=H((m5l,Pvn)=>{var Lto=nM(),Vto=(e,t,r)=>Lto(e,t,r)!==0;Pvn.exports=Vto});var Elt=H((C5l,Mvn)=>{var Wto=nM(),Oto=(e,t,r)=>Wto(e,t,r)>=0;Mvn.exports=Oto});var Slt=H((_5l,Hvn)=>{var Pto=nM(),Mto=(e,t,r)=>Pto(e,t,r)<=0;Hvn.exports=Mto});var g7t=H((y5l,Yvn)=>{var Hto=l7t(),Yto=u7t(),Qto=R3e(),Xto=Elt(),Jto=blt(),Uto=Slt(),Kto=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return Hto(e,r,n);case"!=":return Yto(e,r,n);case">":return Qto(e,r,n);case">=":return Xto(e,r,n);case"<":return Jto(e,r,n);case"<=":return Uto(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};Yvn.exports=Kto});var Xvn=H((b5l,Qvn)=>{var jto=pG(),zto=jfe(),{safeRe:vlt,t:Blt}=qSe(),qto=(e,t)=>{if(e instanceof jto)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?vlt[Blt.COERCEFULL]:vlt[Blt.COERCE]);else{let f=t.includePrerelease?vlt[Blt.COERCERTLFULL]:vlt[Blt.COERCERTL],I;for(;(I=f.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||I.index+I[0].length!==r.index+r[0].length)&&(r=I),f.lastIndex=I.index+I[1].length+I[2].length;f.lastIndex=-1}if(r===null)return null;let n=r[2],a=r[3]||"0",o=r[4]||"0",l=t.includePrerelease&&r[5]?`-${r[5]}`:"",A=t.includePrerelease&&r[6]?`+${r[6]}`:"";return zto(`${n}.${a}.${o}${l}${A}`,t)};Qvn.exports=qto});var Uvn=H((E5l,Jvn)=>{var A7t=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let a=this.map.keys().next().value;this.delete(a)}this.map.set(t,r)}return this}};Jvn.exports=A7t});var iM=H((S5l,qvn)=>{var $to=/\s+/g,d7t=class e{constructor(t,r){if(r=tro(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof p7t)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace($to," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(a=>!jvn(a[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&cro(a[0])){this.set=[a];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&oro)|(this.options.loose&&aro))+":"+t,a=Kvn.get(n);if(a)return a;let o=this.options.loose,l=o?j9[RZ.HYPHENRANGELOOSE]:j9[RZ.HYPHENRANGE];t=t.replace(l,mro(this.options.includePrerelease)),Z1("hyphen replace",t),t=t.replace(j9[RZ.COMPARATORTRIM],nro),Z1("comparator trim",t),t=t.replace(j9[RZ.TILDETRIM],iro),Z1("tilde trim",t),t=t.replace(j9[RZ.CARETTRIM],sro),Z1("caret trim",t);let A=t.split(" ").map(b=>lro(b,this.options)).join(" ").split(/\s+/).map(b=>hro(b,this.options));o&&(A=A.filter(b=>(Z1("loose invalid filter",b,this.options),!!b.match(j9[RZ.COMPARATORLOOSE])))),Z1("range list",A);let f=new Map,I=A.map(b=>new p7t(b,this.options));for(let b of I){if(jvn(b))return[b];f.set(b.value,b)}f.size>1&&f.has("")&&f.delete("");let C=[...f.values()];return Kvn.set(n,C),C}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>zvn(n,r)&&t.set.some(a=>zvn(a,r)&&n.every(o=>a.every(l=>o.intersects(l,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new rro(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",cro=e=>e.value==="",zvn=(e,t)=>{let r=!0,n=e.slice(),a=n.pop();for(;r&&n.length;)r=n.every(o=>a.intersects(o,t)),a=n.pop();return r},lro=(e,t)=>(Z1("comp",e,t),e=Aro(e,t),Z1("caret",e),e=uro(e,t),Z1("tildes",e),e=pro(e,t),Z1("xrange",e),e=Iro(e,t),Z1("stars",e),e),NZ=e=>!e||e.toLowerCase()==="x"||e==="*",uro=(e,t)=>e.trim().split(/\s+/).map(r=>gro(r,t)).join(" "),gro=(e,t)=>{let r=t.loose?j9[RZ.TILDELOOSE]:j9[RZ.TILDE];return e.replace(r,(n,a,o,l,A)=>{Z1("tilde",e,n,a,o,l,A);let f;return NZ(a)?f="":NZ(o)?f=`>=${a}.0.0 <${+a+1}.0.0-0`:NZ(l)?f=`>=${a}.${o}.0 <${a}.${+o+1}.0-0`:A?(Z1("replaceTilde pr",A),f=`>=${a}.${o}.${l}-${A} <${a}.${+o+1}.0-0`):f=`>=${a}.${o}.${l} <${a}.${+o+1}.0-0`,Z1("tilde return",f),f})},Aro=(e,t)=>e.trim().split(/\s+/).map(r=>dro(r,t)).join(" "),dro=(e,t)=>{Z1("caret",e,t);let r=t.loose?j9[RZ.CARETLOOSE]:j9[RZ.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(a,o,l,A,f)=>{Z1("caret",e,a,o,l,A,f);let I;return NZ(o)?I="":NZ(l)?I=`>=${o}.0.0${n} <${+o+1}.0.0-0`:NZ(A)?o==="0"?I=`>=${o}.${l}.0${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.0${n} <${+o+1}.0.0-0`:f?(Z1("replaceCaret pr",f),o==="0"?l==="0"?I=`>=${o}.${l}.${A}-${f} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}-${f} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A}-${f} <${+o+1}.0.0-0`):(Z1("no pr"),o==="0"?l==="0"?I=`>=${o}.${l}.${A}${n} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A} <${+o+1}.0.0-0`),Z1("caret return",I),I})},pro=(e,t)=>(Z1("replaceXRanges",e,t),e.split(/\s+/).map(r=>fro(r,t)).join(" ")),fro=(e,t)=>{e=e.trim();let r=t.loose?j9[RZ.XRANGELOOSE]:j9[RZ.XRANGE];return e.replace(r,(n,a,o,l,A,f)=>{Z1("xRange",e,n,a,o,l,A,f);let I=NZ(o),C=I||NZ(l),b=C||NZ(A),E=b;return a==="="&&E&&(a=""),f=t.includePrerelease?"-0":"",I?a===">"||a==="<"?n="<0.0.0-0":n="*":a&&E?(C&&(l=0),A=0,a===">"?(a=">=",C?(o=+o+1,l=0,A=0):(l=+l+1,A=0)):a==="<="&&(a="<",C?o=+o+1:l=+l+1),a==="<"&&(f="-0"),n=`${a+o}.${l}.${A}${f}`):C?n=`>=${o}.0.0${f} <${+o+1}.0.0-0`:b&&(n=`>=${o}.${l}.0${f} <${o}.${+l+1}.0-0`),Z1("xRange return",n),n})},Iro=(e,t)=>(Z1("replaceStars",e,t),e.trim().replace(j9[RZ.STAR],"")),hro=(e,t)=>(Z1("replaceGTE0",e,t),e.trim().replace(j9[t.includePrerelease?RZ.GTE0PRE:RZ.GTE0],"")),mro=e=>(t,r,n,a,o,l,A,f,I,C,b,E)=>(NZ(n)?r="":NZ(a)?r=`>=${n}.0.0${e?"-0":""}`:NZ(o)?r=`>=${n}.${a}.0${e?"-0":""}`:l?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,NZ(I)?f="":NZ(C)?f=`<${+I+1}.0.0-0`:NZ(b)?f=`<${I}.${+C+1}.0-0`:E?f=`<=${I}.${C}.${b}-${E}`:e?f=`<${I}.${C}.${+b+1}-0`:f=`<=${f}`,`${r} ${f}`.trim()),Cro=(e,t,r)=>{for(let n=0;n0){let a=e[n].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch)return!0}return!1}return!0}});var N3e=H((v5l,iBn)=>{var D3e=Symbol("SemVer ANY"),h7t=class e{static get ANY(){return D3e}constructor(t,r){if(r=$vn(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),I7t("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===D3e?this.value="":this.value=this.operator+this.semver.version,I7t("comp",this)}parse(t){let r=this.options.loose?eBn[tBn.COMPARATORLOOSE]:eBn[tBn.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new rBn(n[2],this.options.loose):this.semver=D3e}toString(){return this.value}test(t){if(I7t("Comparator.test",t,this.options.loose),this.semver===D3e||t===D3e)return!0;if(typeof t=="string")try{t=new rBn(t,this.options)}catch{return!1}return f7t(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new nBn(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new nBn(this.value,r).test(t.semver):(r=$vn(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||f7t(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||f7t(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};iBn.exports=h7t;var $vn=mlt(),{safeRe:eBn,t:tBn}=qSe(),f7t=g7t(),I7t=T3e(),rBn=pG(),nBn=iM()});var k3e=H((B5l,sBn)=>{var _ro=iM(),yro=(e,t,r)=>{try{t=new _ro(t,r)}catch{return!1}return t.test(e)};sBn.exports=yro});var aBn=H((w5l,oBn)=>{var bro=iM(),Ero=(e,t)=>new bro(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));oBn.exports=Ero});var lBn=H((T5l,cBn)=>{var Sro=pG(),vro=iM(),Bro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new vro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===-1)&&(n=l,a=new Sro(n,r))}),n};cBn.exports=Bro});var gBn=H((R5l,uBn)=>{var wro=pG(),Tro=iM(),Rro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new Tro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===1)&&(n=l,a=new wro(n,r))}),n};uBn.exports=Rro});var pBn=H((N5l,dBn)=>{var m7t=pG(),Nro=iM(),ABn=R3e(),Dro=(e,t)=>{e=new Nro(e,t);let r=new m7t("0.0.0");if(e.test(r)||(r=new m7t("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let A=new m7t(l.semver.version);switch(l.operator){case">":A.prerelease.length===0?A.patch++:A.prerelease.push(0),A.raw=A.format();case"":case">=":(!o||ABn(A,o))&&(o=A);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${l.operator}`)}}),o&&(!r||ABn(r,o))&&(r=o)}return r&&e.test(r)?r:null};dBn.exports=Dro});var IBn=H((D5l,fBn)=>{var kro=iM(),xro=(e,t)=>{try{return new kro(e,t).range||"*"}catch{return null}};fBn.exports=xro});var wlt=H((k5l,_Bn)=>{var Gro=pG(),CBn=N3e(),{ANY:Fro}=CBn,Zro=iM(),Lro=k3e(),hBn=R3e(),mBn=blt(),Vro=Slt(),Wro=Elt(),Oro=(e,t,r,n)=>{e=new Gro(e,n),t=new Zro(t,n);let a,o,l,A,f;switch(r){case">":a=hBn,o=Vro,l=mBn,A=">",f=">=";break;case"<":a=mBn,o=Wro,l=hBn,A="<",f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Lro(e,t,n))return!1;for(let I=0;I{N.semver===Fro&&(N=new CBn(">=0.0.0")),b=b||N,E=E||N,a(N.semver,b.semver,n)?b=N:l(N.semver,E.semver,n)&&(E=N)}),b.operator===A||b.operator===f||(!E.operator||E.operator===A)&&o(e,E.semver))return!1;if(E.operator===f&&l(e,E.semver))return!1}return!0};_Bn.exports=Oro});var bBn=H((x5l,yBn)=>{var Pro=wlt(),Mro=(e,t,r)=>Pro(e,t,">",r);yBn.exports=Mro});var SBn=H((G5l,EBn)=>{var Hro=wlt(),Yro=(e,t,r)=>Hro(e,t,"<",r);EBn.exports=Yro});var wBn=H((F5l,BBn)=>{var vBn=iM(),Qro=(e,t,r)=>(e=new vBn(e,r),t=new vBn(t,r),e.intersects(t,r));BBn.exports=Qro});var RBn=H((Z5l,TBn)=>{var Xro=k3e(),Jro=nM();TBn.exports=(e,t,r)=>{let n=[],a=null,o=null,l=e.sort((C,b)=>Jro(C,b,r));for(let C of l)Xro(C,t,r)?(o=C,a||(a=C)):(o&&n.push([a,o]),o=null,a=null);a&&n.push([a,null]);let A=[];for(let[C,b]of n)C===b?A.push(C):!b&&C===l[0]?A.push("*"):b?C===l[0]?A.push(`<=${b}`):A.push(`${C} - ${b}`):A.push(`>=${C}`);let f=A.join(" || "),I=typeof t.raw=="string"?t.raw:String(t);return f.length{var NBn=iM(),_7t=N3e(),{ANY:C7t}=_7t,x3e=k3e(),y7t=nM(),Uro=(e,t,r={})=>{if(e===t)return!0;e=new NBn(e,r),t=new NBn(t,r);let n=!1;e:for(let a of e.set){for(let o of t.set){let l=jro(a,o,r);if(n=n||l!==null,l)continue e}if(n)return!1}return!0},Kro=[new _7t(">=0.0.0-0")],DBn=[new _7t(">=0.0.0")],jro=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===C7t){if(t.length===1&&t[0].semver===C7t)return!0;r.includePrerelease?e=Kro:e=DBn}if(t.length===1&&t[0].semver===C7t){if(r.includePrerelease)return!0;t=DBn}let n=new Set,a,o;for(let N of e)N.operator===">"||N.operator===">="?a=kBn(a,N,r):N.operator==="<"||N.operator==="<="?o=xBn(o,N,r):n.add(N.semver);if(n.size>1)return null;let l;if(a&&o){if(l=y7t(a.semver,o.semver,r),l>0)return null;if(l===0&&(a.operator!==">="||o.operator!=="<="))return null}for(let N of n){if(a&&!x3e(N,String(a),r)||o&&!x3e(N,String(o),r))return null;for(let B of t)if(!x3e(N,String(B),r))return!1;return!0}let A,f,I,C,b=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,E=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;b&&b.prerelease.length===1&&o.operator==="<"&&b.prerelease[0]===0&&(b=!1);for(let N of t){if(C=C||N.operator===">"||N.operator===">=",I=I||N.operator==="<"||N.operator==="<=",a){if(E&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===E.major&&N.semver.minor===E.minor&&N.semver.patch===E.patch&&(E=!1),N.operator===">"||N.operator===">="){if(A=kBn(a,N,r),A===N&&A!==a)return!1}else if(a.operator===">="&&!x3e(a.semver,String(N),r))return!1}if(o){if(b&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===b.major&&N.semver.minor===b.minor&&N.semver.patch===b.patch&&(b=!1),N.operator==="<"||N.operator==="<="){if(f=xBn(o,N,r),f===N&&f!==o)return!1}else if(o.operator==="<="&&!x3e(o.semver,String(N),r))return!1}if(!N.operator&&(o||a)&&l!==0)return!1}return!(a&&I&&!o&&l!==0||o&&C&&!a&&l!==0||E||b)},kBn=(e,t,r)=>{if(!e)return t;let n=y7t(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},xBn=(e,t,r)=>{if(!e)return t;let n=y7t(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};GBn.exports=Uro});var zC=H((V5l,VBn)=>{var b7t=qSe(),ZBn=w3e(),zro=pG(),LBn=s7t(),qro=jfe(),$ro=a7t(),eno=c7t(),tno=pvn(),rno=hvn(),nno=Cvn(),ino=yvn(),sno=Evn(),ono=vvn(),ano=nM(),cno=Rvn(),lno=Dvn(),uno=ylt(),gno=Fvn(),Ano=Lvn(),dno=R3e(),pno=blt(),fno=l7t(),Ino=u7t(),hno=Elt(),mno=Slt(),Cno=g7t(),_no=Xvn(),yno=N3e(),bno=iM(),Eno=k3e(),Sno=aBn(),vno=lBn(),Bno=gBn(),wno=pBn(),Tno=IBn(),Rno=wlt(),Nno=bBn(),Dno=SBn(),kno=wBn(),xno=RBn(),Gno=FBn();VBn.exports={parse:qro,valid:$ro,clean:eno,inc:tno,diff:rno,major:nno,minor:ino,patch:sno,prerelease:ono,compare:ano,rcompare:cno,compareLoose:lno,compareBuild:uno,sort:gno,rsort:Ano,gt:dno,lt:pno,eq:fno,neq:Ino,gte:hno,lte:mno,cmp:Cno,coerce:_no,Comparator:yno,Range:bno,satisfies:Eno,toComparators:Sno,maxSatisfying:vno,minSatisfying:Bno,minVersion:wno,validRange:Tno,outside:Rno,gtr:Nno,ltr:Dno,intersects:kno,simplifyRange:xno,subset:Gno,SemVer:zro,re:b7t.re,src:b7t.src,tokens:b7t.t,SEMVER_SPEC_VERSION:ZBn.SEMVER_SPEC_VERSION,RELEASE_TYPES:ZBn.RELEASE_TYPES,compareIdentifiers:LBn.compareIdentifiers,rcompareIdentifiers:LBn.rcompareIdentifiers}});var OBn=H((W5l,WBn)=>{"use strict";function Fno(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function zfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,zfe)}Fno(zfe,Error);zfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b{switch(xi[1]){case"|":return Vr|xi[3];case"&":return Vr&xi[3];case"^":return Vr^xi[3]}},Hi)},E="!",N=Bt("!",!1),B=function(Hi){return!Hi},F="(",Q=Bt("(",!1),J=")",ae=Bt(")",!1),ne=function(Hi){return Hi},ce=/^[^ \t\n\r()!|&\^]/,fe=Nt([" "," ",` +`,"\r","(",")","!","|","&","^"],!0,!1),ue=function(Hi){return t.queryPattern.test(Hi)},de=function(Hi){return t.checkFn(Hi)},be=Xt("whitespace"),Se=/^[ \t\n\r]/,De=Nt([" "," ",` +`,"\r"],!1,!1),k=0,tt=0,ze=[{line:1,column:1}],Le=0,Je=[],ft=0,lt;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Ot(){return e.substring(tt,k)}function Er(){return cr(tt,k)}function Sr(Hi,Ao){throw Ao=Ao!==void 0?Ao:cr(tt,k),_n([Xt(Hi)],e.substring(tt,k),Ao)}function jt(Hi,Ao){throw Ao=Ao!==void 0?Ao:cr(tt,k),qr(Hi,Ao)}function Bt(Hi,Ao){return{type:"literal",text:Hi,ignoreCase:Ao}}function Nt(Hi,Ao,Vr){return{type:"class",parts:Hi,inverted:Ao,ignoreCase:Vr}}function Fr(){return{type:"any"}}function $t(){return{type:"end"}}function Xt(Hi){return{type:"other",description:Hi}}function lr(Hi){var Ao=ze[Hi],Vr;if(Ao)return Ao;for(Vr=Hi-1;!ze[Vr];)Vr--;for(Ao=ze[Vr],Ao={line:Ao.line,column:Ao.column};VrLe&&(Le=k,Je=[]),Je.push(Hi))}function qr(Hi,Ao){return new zfe(Hi,null,null,Ao)}function _n(Hi,Ao,Vr){return new zfe(zfe.buildMessage(Hi,Ao),Hi,Ao,Vr)}function ke(){var Hi,Ao,Vr,xi,no,ga,Ya,Gc;if(Hi=k,Ao=zt(),Ao!==r){for(Vr=[],xi=k,no=Nn(),no!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,ft===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,ft===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,ft===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=zt(),Gc!==r?(no=[no,ga,Ya,Gc],xi=no):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);xi!==r;)Vr.push(xi),xi=k,no=Nn(),no!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,ft===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,ft===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,ft===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=zt(),Gc!==r?(no=[no,ga,Ya,Gc],xi=no):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);Vr!==r?(tt=Hi,Ao=b(Ao,Vr),Hi=Ao):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function zt(){var Hi,Ao,Vr,xi,no,ga;return Hi=k,e.charCodeAt(k)===33?(Ao=E,k++):(Ao=r,ft===0&&Ar(N)),Ao!==r?(Vr=zt(),Vr!==r?(tt=Hi,Ao=B(Vr),Hi=Ao):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=k,e.charCodeAt(k)===40?(Ao=F,k++):(Ao=r,ft===0&&Ar(Q)),Ao!==r?(Vr=Nn(),Vr!==r?(xi=ke(),xi!==r?(no=Nn(),no!==r?(e.charCodeAt(k)===41?(ga=J,k++):(ga=r,ft===0&&Ar(ae)),ga!==r?(tt=Hi,Ao=ne(xi),Hi=Ao):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=Fn())),Hi}function Fn(){var Hi,Ao,Vr,xi,no;if(Hi=k,Ao=Nn(),Ao!==r){if(Vr=k,xi=[],ce.test(e.charAt(k))?(no=e.charAt(k),k++):(no=r,ft===0&&Ar(fe)),no!==r)for(;no!==r;)xi.push(no),ce.test(e.charAt(k))?(no=e.charAt(k),k++):(no=r,ft===0&&Ar(fe));else xi=r;xi!==r?Vr=e.substring(Vr,k):Vr=xi,Vr!==r?(tt=k,xi=ue(Vr),xi?xi=void 0:xi=r,xi!==r?(tt=Hi,Ao=de(Vr),Hi=Ao):(k=Hi,Hi=r)):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function Nn(){var Hi,Ao;for(ft++,Hi=[],Se.test(e.charAt(k))?(Ao=e.charAt(k),k++):(Ao=r,ft===0&&Ar(De));Ao!==r;)Hi.push(Ao),Se.test(e.charAt(k))?(Ao=e.charAt(k),k++):(Ao=r,ft===0&&Ar(De));return ft--,Hi===r&&(Ao=r,ft===0&&Ar(be)),Hi}if(lt=a(),lt!==r&&k===e.length)return lt;throw lt!==r&&k{var{parse:Lno}=OBn();Tlt.makeParser=(e=/[a-z]+/)=>(t,r)=>Lno(t,{queryPattern:e,checkFn:r});Tlt.parse=Tlt.makeParser()});var HBn=H((P5l,MBn)=>{"use strict";MBn.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 E7t=H((M5l,QBn)=>{var G3e=HBn(),YBn={};for(let e of Object.keys(G3e))YBn[G3e[e]]=e;var fd={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"]}};QBn.exports=fd;for(let e of Object.keys(fd)){if(!("channels"in fd[e]))throw new Error("missing channels property: "+e);if(!("labels"in fd[e]))throw new Error("missing channel labels property: "+e);if(fd[e].labels.length!==fd[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=fd[e];delete fd[e].channels,delete fd[e].labels,Object.defineProperty(fd[e],"channels",{value:t}),Object.defineProperty(fd[e],"labels",{value:r})}fd.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f;o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360);let I=(a+o)/2;return o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};fd.rgb.hsv=function(e){let t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?(a=0,o=0):(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};fd.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],a=fd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};fd.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(1-t,1-r,1-n),o=(1-t-a)/(1-a)||0,l=(1-r-a)/(1-a)||0,A=(1-n-a)/(1-a)||0;return[o*100,l*100,A*100,a*100]};function Vno(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}fd.rgb.keyword=function(e){let t=YBn[e];if(t)return t;let r=1/0,n;for(let a of Object.keys(G3e)){let o=G3e[a],l=Vno(e,o);l.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92;let a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};fd.rgb.lab=function(e){let t=fd.rgb.xyz(e),r=t[0],n=t[1],a=t[2];r/=95.047,n/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let o=116*n-16,l=500*(r-n),A=200*(n-a);return[o,l,A]};fd.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l;if(r===0)return l=n*255,[l,l,l];n<.5?a=n*(1+r):a=n+r-n*r;let A=2*n-a,f=[0,0,0];for(let I=0;I<3;I++)o=t+1/3*-(I-1),o<0&&o++,o>1&&o--,6*o<1?l=A+(a-A)*6*o:2*o<1?l=a:3*o<2?l=A+(a-A)*(2/3-o)*6:l=A,f[I]=l*255;return f};fd.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01);n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o;let l=(n+r)/2,A=n===0?2*a/(o+a):2*r/(n+r);return[t,A*100,l*100]};fd.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};fd.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l;l=(2-r)*n;let A=(2-r)*a;return o=r*a,o/=A<=1?A:2-A,o=o||0,l/=2,[t,o*100,l*100]};fd.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o;a>1&&(r/=a,n/=a);let l=Math.floor(6*t),A=1-n;o=6*t-l,l&1&&(o=1-o);let f=r+o*(A-r),I,C,b;switch(l){default:case 6:case 0:I=A,C=f,b=r;break;case 1:I=f,C=A,b=r;break;case 2:I=r,C=A,b=f;break;case 3:I=r,C=f,b=A;break;case 4:I=f,C=r,b=A;break;case 5:I=A,C=r,b=f;break}return[I*255,C*255,b*255]};fd.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a);return[o*255,l*255,A*255]};fd.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,l=l>.0031308?1.055*l**(1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};fd.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let a=116*r-16,o=500*(t-r),l=200*(r-n);return[a,o,l]};fd.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;let A=o**3,f=a**3,I=l**3;return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};fd.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],a;a=Math.atan2(n,r)*360/2/Math.PI,a<0&&(a+=360);let l=Math.sqrt(r*r+n*n);return[t,l,a]};fd.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,o=r*Math.cos(a),l=r*Math.sin(a);return[t,o,l]};fd.rgb.ansi16=function(e,t=null){let[r,n,a]=e,o=t===null?fd.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let l=30+(Math.round(a/255)<<2|Math.round(n/255)<<1|Math.round(r/255));return o===2&&(l+=60),l};fd.hsv.ansi16=function(e){return fd.rgb.ansi16(fd.hsv.rgb(e),e[2])};fd.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};fd.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};fd.ansi256.rgb=function(e){if(e>=232){let o=(e-232)*10+8;return[o,o,o]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,a=t%6/5*255;return[r,n,a]};fd.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};fd.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(A=>A+A).join(""));let n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};fd.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l,f/=6,f%=1,[f*360,l*100,A*100]};fd.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<.5?2*t*r:2*t*(1-r),a=0;return n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};fd.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};fd.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];let a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};fd.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};fd.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};fd.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};fd.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};fd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};fd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};fd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};fd.gray.hsl=function(e){return[0,0,e[0]]};fd.gray.hsv=fd.gray.hsl;fd.gray.hwb=function(e){return[0,100,e[0]]};fd.gray.cmyk=function(e){return[0,0,0,e[0]]};fd.gray.lab=function(e){return[e[0],0,0]};fd.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n};fd.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}});var JBn=H((H5l,XBn)=>{var Rlt=E7t();function Wno(){let e={},t=Object.keys(Rlt);for(let r=t.length,n=0;n{var S7t=E7t(),Hno=JBn(),eve={},Yno=Object.keys(S7t);function Qno(e){let t=function(...r){let n=r[0];return n==null?n:(n.length>1&&(r=n),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function Xno(e){let t=function(...r){let n=r[0];if(n==null)return n;n.length>1&&(r=n);let a=e(r);if(typeof a=="object")for(let o=a.length,l=0;l{eve[e]={},Object.defineProperty(eve[e],"channels",{value:S7t[e].channels}),Object.defineProperty(eve[e],"labels",{value:S7t[e].labels});let t=Hno(e);Object.keys(t).forEach(n=>{let a=t[n];eve[e][n]=Xno(a),eve[e][n].raw=Qno(a)})});UBn.exports=eve});var Dlt=H((Q5l,ewn)=>{"use strict";var jBn=(e,t)=>(...r)=>`\x1B[${e(...r)+t}m`,zBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};5;${n}m`},qBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};2;${n[0]};${n[1]};${n[2]}m`},Nlt=e=>e,$Bn=(e,t,r)=>[e,t,r],tve=(e,t,r)=>{Object.defineProperty(e,t,{get:()=>{let n=r();return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0}),n},enumerable:!0,configurable:!0})},v7t,rve=(e,t,r,n)=>{v7t===void 0&&(v7t=KBn());let a=n?10:0,o={};for(let[l,A]of Object.entries(v7t)){let f=l==="ansi16"?"ansi":l;l===t?o[f]=e(r,a):typeof A=="object"&&(o[f]=e(A[t],a))}return o};function Jno(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(let[r,n]of Object.entries(t)){for(let[a,o]of Object.entries(n))t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},n[a]=t[a],e.set(o[0],o[1]);Object.defineProperty(t,r,{value:n,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",tve(t.color,"ansi",()=>rve(jBn,"ansi16",Nlt,!1)),tve(t.color,"ansi256",()=>rve(zBn,"ansi256",Nlt,!1)),tve(t.color,"ansi16m",()=>rve(qBn,"rgb",$Bn,!1)),tve(t.bgColor,"ansi",()=>rve(jBn,"ansi16",Nlt,!0)),tve(t.bgColor,"ansi256",()=>rve(zBn,"ansi256",Nlt,!0)),tve(t.bgColor,"ansi16m",()=>rve(qBn,"rgb",$Bn,!0)),t}Object.defineProperty(ewn,"exports",{enumerable:!0,get:Jno})});var B7t=H((X5l,twn)=>{"use strict";twn.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n{"use strict";var Uno=Et("os"),rwn=Et("tty"),sM=B7t(),{env:$N}=process,hoe;sM("no-color")||sM("no-colors")||sM("color=false")||sM("color=never")?hoe=0:(sM("color")||sM("colors")||sM("color=true")||sM("color=always"))&&(hoe=1);"FORCE_COLOR"in $N&&($N.FORCE_COLOR==="true"?hoe=1:$N.FORCE_COLOR==="false"?hoe=0:hoe=$N.FORCE_COLOR.length===0?1:Math.min(parseInt($N.FORCE_COLOR,10),3));function w7t(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function T7t(e,t){if(hoe===0)return 0;if(sM("color=16m")||sM("color=full")||sM("color=truecolor"))return 3;if(sM("color=256"))return 2;if(e&&!t&&hoe===void 0)return 0;let r=hoe||0;if($N.TERM==="dumb")return r;if(process.platform==="win32"){let n=Uno.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in $N)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in $N)||$N.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in $N)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test($N.TEAMCITY_VERSION)?1:0;if($N.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in $N){let n=parseInt(($N.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch($N.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test($N.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test($N.TERM)||"COLORTERM"in $N?1:r}function Kno(e){let t=T7t(e,e&&e.isTTY);return w7t(t)}nwn.exports={supportsColor:Kno,stdout:w7t(T7t(!0,rwn.isatty(1))),stderr:w7t(T7t(!0,rwn.isatty(2)))}});var swn=H((U5l,iwn)=>{"use strict";var jno=(e,t,r)=>{let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.substr(o,n-o)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.substr(o),l},zno=(e,t,r,n)=>{let a=0,o="";do{let l=e[n-1]==="\r";o+=e.substr(a,(l?n-1:n)-a)+t+(l?`\r `:` `)+r,a=n+1,n=e.indexOf(` -`,a)}while(n!==-1);return o+=e.substr(a),o};qBn.exports={stringReplaceAll:Kno,stringEncaseCRLFWithFirstIndex:jno}});var iwn=H((q3l,nwn)=>{"use strict";var zno=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,ewn=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,qno=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,$no=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,eio=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function rwn(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):eio.get(e)||e}function tio(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n){let l=Number(o);if(!Number.isNaN(l))r.push(l);else if(a=o.match(qno))r.push(a[2].replace($no,(A,f,I)=>f?rwn(f):I));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function rio(e){ewn.lastIndex=0;let t=[],r;for(;(r=ewn.exec(e))!==null;){let n=r[1];if(r[2]){let a=tio(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function twn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);n=o.length>0?n[a](...o):n[a]}return n}nwn.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(zno,(o,l,A,f,I,C)=>{if(l)a.push(rwn(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:twn(e,r)(b)),r.push({inverse:A,styles:rio(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(twn(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var zK=H(($3l,uwn)=>{"use strict";var F3e=klt(),{stdout:D7t,stderr:k7t}=R7t(),{stringReplaceAll:nio,stringEncaseCRLFWithFirstIndex:iio}=$Bn(),{isArray:xlt}=Array,own=["ansi","ansi","ansi256","ansi16m"],nve=Object.create(null),sio=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=D7t?D7t.level:0;e.level=t.level===void 0?r:t.level},x7t=class{constructor(t){return awn(t)}},awn=e=>{let t={};return sio(t,e),t.template=(...r)=>lwn(t.template,...r),Object.setPrototypeOf(t,Glt.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=x7t,t.template};function Glt(e){return awn(e)}for(let[e,t]of Object.entries(F3e))nve[e]={get(){let r=Flt(this,G7t(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};nve.visible={get(){let e=Flt(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var cwn=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of cwn)nve[e]={get(){let{level:t}=this;return function(...r){let n=G7t(F3e.color[own[t]][e](...r),F3e.color.close,this._styler);return Flt(this,n,this._isEmpty)}}};for(let e of cwn){let t="bg"+e[0].toUpperCase()+e.slice(1);nve[t]={get(){let{level:r}=this;return function(...n){let a=G7t(F3e.bgColor[own[r]][e](...n),F3e.bgColor.close,this._styler);return Flt(this,a,this._isEmpty)}}}}var oio=Object.defineProperties(()=>{},{...nve,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),G7t=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},Flt=(e,t,r)=>{let n=(...a)=>xlt(a[0])&&xlt(a[0].raw)?swn(n,lwn(n,...a)):swn(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,oio),n._generator=e,n._styler=t,n._isEmpty=r,n},swn=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=nio(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=iio(t,a,n,o)),n+t+a},N7t,lwn=(e,...t)=>{let[r]=t;if(!xlt(r)||!xlt(r.raw))return t.join(" ");let n=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";sM.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;sM.find=(e,t)=>e.nodes.find(r=>r.type===t);sM.exceedsLimit=(e,t,r=1,n)=>n===!1||!sM.isInteger(e)||!sM.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=n;sM.escapeNode=(e,t=0,r)=>{let n=e.nodes[t];n&&(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};sM.encloseBrace=e=>e.type!=="brace"||e.commas>>0+e.ranges>>0?!1:(e.invalid=!0,!0);sM.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:!(e.commas>>0+e.ranges>>0)||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;sM.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;sM.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);sM.flatten=(...e)=>{let t=[],r=n=>{for(let a=0;a{"use strict";var gwn=Llt();Awn.exports=(e,t={})=>{let r=(n,a={})=>{let o=t.escapeInvalid&&gwn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A="";if(n.value)return(o||l)&&gwn.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let f of n.nodes)A+=r(f);return A};return r(e)}});var pwn=H((r5l,dwn)=>{"use strict";dwn.exports=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var Ewn=H((n5l,bwn)=>{"use strict";var fwn=pwn(),zfe=(e,t,r)=>{if(fwn(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(fwn(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...r};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let a=String(n.relaxZeros),o=String(n.shorthand),l=String(n.capture),A=String(n.wrap),f=e+":"+t+"="+a+o+l+A;if(zfe.cache.hasOwnProperty(f))return zfe.cache[f].result;let I=Math.min(e,t),C=Math.max(e,t);if(Math.abs(I-C)===1){let F=e+"|"+t;return n.capture?`(${F})`:n.wrap===!1?F:`(?:${F})`}let b=ywn(e)||ywn(t),E={min:e,max:t,a:I,b:C},N=[],B=[];if(b&&(E.isPadded=b,E.maxLen=String(E.max).length),I<0){let F=C<0?Math.abs(C):1;B=Iwn(F,Math.abs(I),E,n),I=E.a=0}return C>=0&&(N=Iwn(I,C,E,n)),E.negatives=B,E.positives=N,E.result=aio(B,N,n),n.capture===!0?E.result=`(${E.result})`:n.wrap!==!1&&N.length+B.length>1&&(E.result=`(?:${E.result})`),zfe.cache[f]=E,E.result};function aio(e,t,r){let n=F7t(e,t,"-",!1,r)||[],a=F7t(t,e,"",!1,r)||[],o=F7t(e,t,"-?",!0,r)||[];return n.concat(o).concat(a).join("|")}function cio(e,t){let r=1,n=1,a=mwn(e,r),o=new Set([t]);for(;e<=a&&a<=t;)o.add(a),r+=1,a=mwn(e,r);for(a=Cwn(t+1,n)-1;e1&&A.count.pop(),A.count.push(C.count[0]),A.string=A.pattern+_wn(A.count),l=I+1;continue}r.isPadded&&(b=dio(I,r,n)),C.string=b+C.pattern+_wn(C.count),o.push(C),l=I+1,A=C}return o}function F7t(e,t,r,n,a){let o=[];for(let l of e){let{string:A}=l;!n&&!hwn(t,"string",A)&&o.push(r+A),n&&hwn(t,"string",A)&&o.push(r+A)}return o}function uio(e,t){let r=[];for(let n=0;nt?1:t>e?-1:0}function hwn(e,t,r){return e.some(n=>n[t]===r)}function mwn(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function Cwn(e,t){return e-e%Math.pow(10,t)}function _wn(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function Aio(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function ywn(e){return/^-?(0+)\d/.test(e)}function dio(e,t,r){if(!t.isPadded)return e;let n=Math.abs(t.maxLen-String(e).length),a=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${n}}`:`0{${n}}`}}zfe.cache={};zfe.clearCache=()=>zfe.cache={};bwn.exports=zfe});var V7t=H((i5l,Nwn)=>{"use strict";var pio=Et("util"),vwn=Ewn(),Swn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),fio=e=>t=>e===!0?Number(t):String(t),Z7t=e=>typeof e=="number"||typeof e=="string"&&e!=="",Z3e=e=>Number.isInteger(+e),L7t=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},Iio=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,hio=(e,t,r)=>{if(t>0){let n=e[0]==="-"?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return r===!1?String(e):e},Olt=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((A,f)=>Af?1:0),e.positives.sort((A,f)=>Af?1:0);let n=t.capture?"":"?:",a="",o="",l;return e.positives.length&&(a=e.positives.map(A=>Olt(String(A),r)).join("|")),e.negatives.length&&(o=`-(${n}${e.negatives.map(A=>Olt(String(A),r)).join("|")})`),a&&o?l=`${a}|${o}`:l=a||o,t.wrap?`(${n}${l})`:l},Bwn=(e,t,r,n)=>{if(r)return vwn(e,t,{wrap:!1,...n});let a=String.fromCharCode(e);if(e===t)return a;let o=String.fromCharCode(t);return`[${a}-${o}]`},wwn=(e,t,r)=>{if(Array.isArray(e)){let n=r.wrap===!0,a=r.capture?"":"?:";return n?`(${a}${e.join("|")})`:e.join("|")}return vwn(e,t,r)},Twn=(...e)=>new RangeError("Invalid range arguments: "+pio.inspect(...e)),Rwn=(e,t,r)=>{if(r.strictRanges===!0)throw Twn([e,t]);return[]},Cio=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},_io=(e,t,r=1,n={})=>{let a=Number(e),o=Number(t);if(!Number.isInteger(a)||!Number.isInteger(o)){if(n.strictRanges===!0)throw Twn([e,t]);return[]}a===0&&(a=0),o===0&&(o=0);let l=a>o,A=String(e),f=String(t),I=String(r);r=Math.max(Math.abs(r),1);let C=L7t(A)||L7t(f)||L7t(I),b=C?Math.max(A.length,f.length,I.length):0,E=C===!1&&Iio(e,t,n)===!1,N=n.transform||fio(E);if(n.toRegex&&r===1)return Bwn(Olt(e,b),Olt(t,b),!0,n);let B={negatives:[],positives:[]},F=ae=>B[ae<0?"negatives":"positives"].push(Math.abs(ae)),Q=[],J=0;for(;l?a>=o:a<=o;)n.toRegex===!0&&r>1?F(a):Q.push(hio(N(a,J),b,E)),a=l?a-r:a+r,J++;return n.toRegex===!0?r>1?mio(B,n,b):wwn(Q,null,{wrap:!1,...n}):Q},yio=(e,t,r=1,n={})=>{if(!Z3e(e)&&e.length>1||!Z3e(t)&&t.length>1)return Rwn(e,t,n);let a=n.transform||(E=>String.fromCharCode(E)),o=`${e}`.charCodeAt(0),l=`${t}`.charCodeAt(0),A=o>l,f=Math.min(o,l),I=Math.max(o,l);if(n.toRegex&&r===1)return Bwn(f,I,!1,n);let C=[],b=0;for(;A?o>=l:o<=l;)C.push(a(o,b)),o=A?o-r:o+r,b++;return n.toRegex===!0?wwn(C,null,{wrap:!1,options:n}):C},Wlt=(e,t,r,n={})=>{if(t==null&&Z7t(e))return[e];if(!Z7t(e)||!Z7t(t))return Rwn(e,t,n);if(typeof r=="function")return Wlt(e,t,1,{transform:r});if(Swn(r))return Wlt(e,t,0,r);let a={...n};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,Z3e(r)?Z3e(e)&&Z3e(t)?_io(e,t,r,a):yio(e,t,Math.max(Math.abs(r),1),a):r!=null&&!Swn(r)?Cio(r,a):Wlt(e,t,1,r)};Nwn.exports=Wlt});var xwn=H((s5l,kwn)=>{"use strict";var bio=V7t(),Dwn=Llt(),Eio=(e,t={})=>{let r=(n,a={})=>{let o=Dwn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A=o===!0||l===!0,f=t.escapeInvalid===!0?"\\":"",I="";if(n.isOpen===!0)return f+n.value;if(n.isClose===!0)return console.log("node.isClose",f,n.value),f+n.value;if(n.type==="open")return A?f+n.value:"(";if(n.type==="close")return A?f+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":A?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let C=Dwn.reduce(n.nodes),b=bio(...C,{...t,wrap:!1,toRegex:!0,strictZeros:!0});if(b.length!==0)return C.length>1&&b.length>1?`(${b})`:b}if(n.nodes)for(let C of n.nodes)I+=r(C,n);return I};return r(e)};kwn.exports=Eio});var Zwn=H((o5l,Fwn)=>{"use strict";var Sio=V7t(),Gwn=Vlt(),ive=Llt(),qfe=(e="",t="",r=!1)=>{let n=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?ive.flatten(t).map(a=>`{${a}}`):t;for(let a of e)if(Array.isArray(a))for(let o of a)n.push(qfe(o,t,r));else for(let o of t)r===!0&&typeof o=="string"&&(o=`{${o}}`),n.push(Array.isArray(o)?qfe(a,o,r):a+o);return ive.flatten(n)},vio=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,n=(a,o={})=>{a.queue=[];let l=o,A=o.queue;for(;l.type!=="brace"&&l.type!=="root"&&l.parent;)l=l.parent,A=l.queue;if(a.invalid||a.dollar){A.push(qfe(A.pop(),Gwn(a,t)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){A.push(qfe(A.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let b=ive.reduce(a.nodes);if(ive.exceedsLimit(...b,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let E=Sio(...b,t);E.length===0&&(E=Gwn(a,t)),A.push(qfe(A.pop(),E)),a.nodes=[];return}let f=ive.encloseBrace(a),I=a.queue,C=a;for(;C.type!=="brace"&&C.type!=="root"&&C.parent;)C=C.parent,I=C.queue;for(let b=0;b{"use strict";Lwn.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` -`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Hwn=H((c5l,Mwn)=>{"use strict";var Bio=Vlt(),{MAX_LENGTH:Wwn,CHAR_BACKSLASH:W7t,CHAR_BACKTICK:wio,CHAR_COMMA:Tio,CHAR_DOT:Rio,CHAR_LEFT_PARENTHESES:Nio,CHAR_RIGHT_PARENTHESES:Dio,CHAR_LEFT_CURLY_BRACE:kio,CHAR_RIGHT_CURLY_BRACE:xio,CHAR_LEFT_SQUARE_BRACKET:Own,CHAR_RIGHT_SQUARE_BRACKET:Pwn,CHAR_DOUBLE_QUOTE:Gio,CHAR_SINGLE_QUOTE:Fio,CHAR_NO_BREAK_SPACE:Zio,CHAR_ZERO_WIDTH_NOBREAK_SPACE:Lio}=Vwn(),Vio=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},n=typeof r.maxLength=="number"?Math.min(Wwn,r.maxLength):Wwn;if(e.length>n)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${n})`);let a={type:"root",input:e,nodes:[]},o=[a],l=a,A=a,f=0,I=e.length,C=0,b=0,E,N=()=>e[C++],B=F=>{if(F.type==="text"&&A.type==="dot"&&(A.type="text"),A&&A.type==="text"&&F.type==="text"){A.value+=F.value;return}return l.nodes.push(F),F.parent=l,F.prev=A,A=F,F};for(B({type:"bos"});C0){if(l.ranges>0){l.ranges=0;let F=l.nodes.shift();l.nodes=[F,{type:"text",value:Bio(l)}]}B({type:"comma",value:E}),l.commas++;continue}if(E===Rio&&b>0&&l.commas===0){let F=l.nodes;if(b===0||F.length===0){B({type:"text",value:E});continue}if(A.type==="dot"){if(l.range=[],A.value+=E,A.type="range",l.nodes.length!==3&&l.nodes.length!==5){l.invalid=!0,l.ranges=0,A.type="text";continue}l.ranges++,l.args=[];continue}if(A.type==="range"){F.pop();let Q=F[F.length-1];Q.value+=A.value+E,A=Q,l.ranges--;continue}B({type:"dot",value:E});continue}B({type:"text",value:E})}do if(l=o.pop(),l.type!=="root"){l.nodes.forEach(J=>{J.nodes||(J.type==="open"&&(J.isOpen=!0),J.type==="close"&&(J.isClose=!0),J.nodes||(J.type="text"),J.invalid=!0)});let F=o[o.length-1],Q=F.nodes.indexOf(l);F.nodes.splice(Q,1,...l.nodes)}while(o.length>0);return B({type:"eos"}),a};Mwn.exports=Vio});var Xwn=H((l5l,Qwn)=>{"use strict";var Ywn=Vlt(),Wio=xwn(),Oio=Zwn(),Pio=Hwn(),LO=(e,t={})=>{let r=[];if(Array.isArray(e))for(let n of e){let a=LO.create(n,t);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(LO.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};LO.parse=(e,t={})=>Pio(e,t);LO.stringify=(e,t={})=>Ywn(typeof e=="string"?LO.parse(e,t):e,t);LO.compile=(e,t={})=>(typeof e=="string"&&(e=LO.parse(e,t)),Wio(e,t));LO.expand=(e,t={})=>{typeof e=="string"&&(e=LO.parse(e,t));let r=Oio(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};LO.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?LO.compile(e,t):LO.expand(e,t);Qwn.exports=LO});var L3e=H((u5l,zwn)=>{"use strict";var Mio=Et("path"),qK="\\\\/",Jwn=`[^${qK}]`,c$="\\.",Hio="\\+",Yio="\\?",Plt="\\/",Qio="(?=.)",Uwn="[^/]",O7t=`(?:${Plt}|$)`,Kwn=`(?:^|${Plt})`,P7t=`${c$}{1,2}${O7t}`,Xio=`(?!${c$})`,Jio=`(?!${Kwn}${P7t})`,Uio=`(?!${c$}{0,1}${O7t})`,Kio=`(?!${P7t})`,jio=`[^.${Plt}]`,zio=`${Uwn}*?`,jwn={DOT_LITERAL:c$,PLUS_LITERAL:Hio,QMARK_LITERAL:Yio,SLASH_LITERAL:Plt,ONE_CHAR:Qio,QMARK:Uwn,END_ANCHOR:O7t,DOTS_SLASH:P7t,NO_DOT:Xio,NO_DOTS:Jio,NO_DOT_SLASH:Uio,NO_DOTS_SLASH:Kio,QMARK_NO_DOT:jio,STAR:zio,START_ANCHOR:Kwn},qio={...jwn,SLASH_LITERAL:`[${qK}]`,QMARK:Jwn,STAR:`${Jwn}*?`,DOTS_SLASH:`${c$}{1,2}(?:[${qK}]|$)`,NO_DOT:`(?!${c$})`,NO_DOTS:`(?!(?:^|[${qK}])${c$}{1,2}(?:[${qK}]|$))`,NO_DOT_SLASH:`(?!${c$}{0,1}(?:[${qK}]|$))`,NO_DOTS_SLASH:`(?!${c$}{1,2}(?:[${qK}]|$))`,QMARK_NO_DOT:`[^.${qK}]`,START_ANCHOR:`(?:^|[${qK}])`,END_ANCHOR:`(?:[${qK}]|$)`},$io={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"};zwn.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:$io,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:Mio.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?qio:jwn}}});var V3e=H(j9=>{"use strict";var eso=Et("path"),tso=process.platform==="win32",{REGEX_BACKSLASH:rso,REGEX_REMOVE_BACKSLASH:nso,REGEX_SPECIAL_CHARS:iso,REGEX_SPECIAL_CHARS_GLOBAL:sso}=L3e();j9.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);j9.hasRegexChars=e=>iso.test(e);j9.isRegexChar=e=>e.length===1&&j9.hasRegexChars(e);j9.escapeRegex=e=>e.replace(sso,"\\$1");j9.toPosixSlashes=e=>e.replace(rso,"/");j9.removeBackslashes=e=>e.replace(nso,t=>t==="\\"?"":t);j9.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};j9.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:tso===!0||eso.sep==="\\";j9.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?j9.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};j9.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};j9.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var sTn=H((A5l,iTn)=>{"use strict";var qwn=V3e(),{CHAR_ASTERISK:M7t,CHAR_AT:oso,CHAR_BACKWARD_SLASH:W3e,CHAR_COMMA:aso,CHAR_DOT:H7t,CHAR_EXCLAMATION_MARK:Y7t,CHAR_FORWARD_SLASH:nTn,CHAR_LEFT_CURLY_BRACE:Q7t,CHAR_LEFT_PARENTHESES:X7t,CHAR_LEFT_SQUARE_BRACKET:cso,CHAR_PLUS:lso,CHAR_QUESTION_MARK:$wn,CHAR_RIGHT_CURLY_BRACE:uso,CHAR_RIGHT_PARENTHESES:eTn,CHAR_RIGHT_SQUARE_BRACKET:gso}=L3e(),tTn=e=>e===nTn||e===W3e,rTn=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},Aso=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,J=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),tt=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Le=f.slice(0,C),f=f.slice(C),b-=C),ze&&B===!0&&b>0?(ze=f.slice(0,b),Je=f.slice(b)):B===!0?(ze="",Je=f):ze=f,ze&&ze!==""&&ze!=="/"&&ze!==f&&tTn(ze.charCodeAt(ze.length-1))&&(ze=ze.slice(0,-1)),r.unescape===!0&&(Je&&(Je=qwn.removeBackslashes(Je)),ze&&ae===!0&&(ze=qwn.removeBackslashes(ze)));let ft={prefix:Le,input:e,start:C,base:ze,glob:Je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(ft.maxDepth=0,tTn(be)||l.push(Se),ft.tokens=l),r.parts===!0||r.tokens===!0){let lt;for(let Ot=0;Ot{"use strict";var Mlt=L3e(),VO=V3e(),{MAX_LENGTH:Hlt,POSIX_REGEX_SOURCE:dso,REGEX_NON_SPECIAL_CHARS:pso,REGEX_SPECIAL_CHARS_BACKREF:fso,REPLACEMENTS:oTn}=Mlt,Iso=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>VO.escapeRegex(a)).join("..")}return r},sve=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,J7t=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=oTn[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(Hlt,r.maxLength):Hlt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=VO.isWindows(t),I=Mlt.globChars(f),C=Mlt.extglobChars(I),{DOT_LITERAL:b,PLUS_LITERAL:E,SLASH_LITERAL:N,ONE_CHAR:B,DOTS_SLASH:F,NO_DOT:Q,NO_DOT_SLASH:J,NO_DOTS_SLASH:ae,QMARK:ne,QMARK_NO_DOT:ce,STAR:fe,START_ANCHOR:ue}=I,de=Ar=>`(${A}(?:(?!${ue}${Ar.dot?F:b}).)*?)`,be=r.dot?"":Q,Se=r.dot?ne:ce,De=r.bash===!0?de(r):fe;r.capture&&(De=`(${De})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let k={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=VO.removePrefix(e,k),a=e.length;let tt=[],ze=[],Le=[],Je=o,ft,lt=()=>k.index===a-1,Ot=k.peek=(Ar=1)=>e[k.index+Ar],Er=k.advance=()=>e[++k.index]||"",Sr=()=>e.slice(k.index+1),jt=(Ar="",qr=0)=>{k.consumed+=Ar,k.index+=qr},Bt=Ar=>{k.output+=Ar.output!=null?Ar.output:Ar.value,jt(Ar.value)},Dt=()=>{let Ar=1;for(;Ot()==="!"&&(Ot(2)!=="("||Ot(3)==="?");)Er(),k.start++,Ar++;return Ar%2===0?!1:(k.negated=!0,k.start++,!0)},Fr=Ar=>{k[Ar]++,Le.push(Ar)},$t=Ar=>{k[Ar]--,Le.pop()},Xt=Ar=>{if(Je.type==="globstar"){let qr=k.braces>0&&(Ar.type==="comma"||Ar.type==="brace"),yn=Ar.extglob===!0||tt.length&&(Ar.type==="pipe"||Ar.type==="paren");Ar.type!=="slash"&&Ar.type!=="paren"&&!qr&&!yn&&(k.output=k.output.slice(0,-Je.output.length),Je.type="star",Je.value="*",Je.output=De,k.output+=Je.output)}if(tt.length&&Ar.type!=="paren"&&(tt[tt.length-1].inner+=Ar.value),(Ar.value||Ar.output)&&Bt(Ar),Je&&Je.type==="text"&&Ar.type==="text"){Je.value+=Ar.value,Je.output=(Je.output||"")+Ar.value;return}Ar.prev=Je,l.push(Ar),Je=Ar},lr=(Ar,qr)=>{let yn={...C[qr],conditions:1,inner:""};yn.prev=Je,yn.parens=k.parens,yn.output=k.output;let ke=(r.capture?"(":"")+yn.open;Fr("parens"),Xt({type:Ar,value:qr,output:k.output?"":B}),Xt({type:"paren",extglob:!0,value:Er(),output:ke}),tt.push(yn)},cr=Ar=>{let qr=Ar.close+(r.capture?")":""),yn;if(Ar.type==="negate"){let ke=De;if(Ar.inner&&Ar.inner.length>1&&Ar.inner.includes("/")&&(ke=de(r)),(ke!==De||lt()||/^\)+$/.test(Sr()))&&(qr=Ar.close=`)$))${ke}`),Ar.inner.includes("*")&&(yn=Sr())&&/^\.[^\\/.]+$/.test(yn)){let zt=J7t(yn,{...t,fastpaths:!1}).output;qr=Ar.close=`)${zt})${ke})`}Ar.prev.type==="bos"&&(k.negatedExtglob=!0)}Xt({type:"paren",extglob:!0,value:ft,output:qr}),$t("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let Ar=!1,qr=e.replace(fso,(yn,ke,zt,Fn,Nn,Hi)=>Fn==="\\"?(Ar=!0,yn):Fn==="?"?ke?ke+Fn+(Nn?ne.repeat(Nn.length):""):Hi===0?Se+(Nn?ne.repeat(Nn.length):""):ne.repeat(zt.length):Fn==="."?b.repeat(zt.length):Fn==="*"?ke?ke+Fn+(Nn?De:""):De:ke?yn:`\\${yn}`);return Ar===!0&&(r.unescape===!0?qr=qr.replace(/\\/g,""):qr=qr.replace(/\\+/g,yn=>yn.length%2===0?"\\\\":yn?"\\":"")),qr===e&&r.contains===!0?(k.output=e,k):(k.output=VO.wrapOutput(qr,k,t),k)}for(;!lt();){if(ft=Er(),ft==="\0")continue;if(ft==="\\"){let yn=Ot();if(yn==="/"&&r.bash!==!0||yn==="."||yn===";")continue;if(!yn){ft+="\\",Xt({type:"text",value:ft});continue}let ke=/^\\+/.exec(Sr()),zt=0;if(ke&&ke[0].length>2&&(zt=ke[0].length,k.index+=zt,zt%2!==0&&(ft+="\\")),r.unescape===!0?ft=Er():ft+=Er(),k.brackets===0){Xt({type:"text",value:ft});continue}}if(k.brackets>0&&(ft!=="]"||Je.value==="["||Je.value==="[^")){if(r.posix!==!1&&ft===":"){let yn=Je.value.slice(1);if(yn.includes("[")&&(Je.posix=!0,yn.includes(":"))){let ke=Je.value.lastIndexOf("["),zt=Je.value.slice(0,ke),Fn=Je.value.slice(ke+2),Nn=dso[Fn];if(Nn){Je.value=zt+Nn,k.backtrack=!0,Er(),!o.output&&l.indexOf(Je)===1&&(o.output=B);continue}}}(ft==="["&&Ot()!==":"||ft==="-"&&Ot()==="]")&&(ft=`\\${ft}`),ft==="]"&&(Je.value==="["||Je.value==="[^")&&(ft=`\\${ft}`),r.posix===!0&&ft==="!"&&Je.value==="["&&(ft="^"),Je.value+=ft,Bt({value:ft});continue}if(k.quotes===1&&ft!=='"'){ft=VO.escapeRegex(ft),Je.value+=ft,Bt({value:ft});continue}if(ft==='"'){k.quotes=k.quotes===1?0:1,r.keepQuotes===!0&&Xt({type:"text",value:ft});continue}if(ft==="("){Fr("parens"),Xt({type:"paren",value:ft});continue}if(ft===")"){if(k.parens===0&&r.strictBrackets===!0)throw new SyntaxError(sve("opening","("));let yn=tt[tt.length-1];if(yn&&k.parens===yn.parens+1){cr(tt.pop());continue}Xt({type:"paren",value:ft,output:k.parens?")":"\\)"}),$t("parens");continue}if(ft==="["){if(r.nobracket===!0||!Sr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(sve("closing","]"));ft=`\\${ft}`}else Fr("brackets");Xt({type:"bracket",value:ft});continue}if(ft==="]"){if(r.nobracket===!0||Je&&Je.type==="bracket"&&Je.value.length===1){Xt({type:"text",value:ft,output:`\\${ft}`});continue}if(k.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(sve("opening","["));Xt({type:"text",value:ft,output:`\\${ft}`});continue}$t("brackets");let yn=Je.value.slice(1);if(Je.posix!==!0&&yn[0]==="^"&&!yn.includes("/")&&(ft=`/${ft}`),Je.value+=ft,Bt({value:ft}),r.literalBrackets===!1||VO.hasRegexChars(yn))continue;let ke=VO.escapeRegex(Je.value);if(k.output=k.output.slice(0,-Je.value.length),r.literalBrackets===!0){k.output+=ke,Je.value=ke;continue}Je.value=`(${A}${ke}|${Je.value})`,k.output+=Je.value;continue}if(ft==="{"&&r.nobrace!==!0){Fr("braces");let yn={type:"brace",value:ft,output:"(",outputIndex:k.output.length,tokensIndex:k.tokens.length};ze.push(yn),Xt(yn);continue}if(ft==="}"){let yn=ze[ze.length-1];if(r.nobrace===!0||!yn){Xt({type:"text",value:ft,output:ft});continue}let ke=")";if(yn.dots===!0){let zt=l.slice(),Fn=[];for(let Nn=zt.length-1;Nn>=0&&(l.pop(),zt[Nn].type!=="brace");Nn--)zt[Nn].type!=="dots"&&Fn.unshift(zt[Nn].value);ke=Iso(Fn,r),k.backtrack=!0}if(yn.comma!==!0&&yn.dots!==!0){let zt=k.output.slice(0,yn.outputIndex),Fn=k.tokens.slice(yn.tokensIndex);yn.value=yn.output="\\{",ft=ke="\\}",k.output=zt;for(let Nn of Fn)k.output+=Nn.output||Nn.value}Xt({type:"brace",value:ft,output:ke}),$t("braces"),ze.pop();continue}if(ft==="|"){tt.length>0&&tt[tt.length-1].conditions++,Xt({type:"text",value:ft});continue}if(ft===","){let yn=ft,ke=ze[ze.length-1];ke&&Le[Le.length-1]==="braces"&&(ke.comma=!0,yn="|"),Xt({type:"comma",value:ft,output:yn});continue}if(ft==="/"){if(Je.type==="dot"&&k.index===k.start+1){k.start=k.index+1,k.consumed="",k.output="",l.pop(),Je=o;continue}Xt({type:"slash",value:ft,output:N});continue}if(ft==="."){if(k.braces>0&&Je.type==="dot"){Je.value==="."&&(Je.output=b);let yn=ze[ze.length-1];Je.type="dots",Je.output+=ft,Je.value+=ft,yn.dots=!0;continue}if(k.braces+k.parens===0&&Je.type!=="bos"&&Je.type!=="slash"){Xt({type:"text",value:ft,output:b});continue}Xt({type:"dot",value:ft,output:b});continue}if(ft==="?"){if(!(Je&&Je.value==="(")&&r.noextglob!==!0&&Ot()==="("&&Ot(2)!=="?"){lr("qmark",ft);continue}if(Je&&Je.type==="paren"){let ke=Ot(),zt=ft;if(ke==="<"&&!VO.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(Je.value==="("&&!/[!=<:]/.test(ke)||ke==="<"&&!/<([!=]|\w+>)/.test(Sr()))&&(zt=`\\${ft}`),Xt({type:"text",value:ft,output:zt});continue}if(r.dot!==!0&&(Je.type==="slash"||Je.type==="bos")){Xt({type:"qmark",value:ft,output:ce});continue}Xt({type:"qmark",value:ft,output:ne});continue}if(ft==="!"){if(r.noextglob!==!0&&Ot()==="("&&(Ot(2)!=="?"||!/[!=<:]/.test(Ot(3)))){lr("negate",ft);continue}if(r.nonegate!==!0&&k.index===0){Dt();continue}}if(ft==="+"){if(r.noextglob!==!0&&Ot()==="("&&Ot(2)!=="?"){lr("plus",ft);continue}if(Je&&Je.value==="("||r.regex===!1){Xt({type:"plus",value:ft,output:E});continue}if(Je&&(Je.type==="bracket"||Je.type==="paren"||Je.type==="brace")||k.parens>0){Xt({type:"plus",value:ft});continue}Xt({type:"plus",value:E});continue}if(ft==="@"){if(r.noextglob!==!0&&Ot()==="("&&Ot(2)!=="?"){Xt({type:"at",extglob:!0,value:ft,output:""});continue}Xt({type:"text",value:ft});continue}if(ft!=="*"){(ft==="$"||ft==="^")&&(ft=`\\${ft}`);let yn=pso.exec(Sr());yn&&(ft+=yn[0],k.index+=yn[0].length),Xt({type:"text",value:ft});continue}if(Je&&(Je.type==="globstar"||Je.star===!0)){Je.type="star",Je.star=!0,Je.value+=ft,Je.output=De,k.backtrack=!0,k.globstar=!0,jt(ft);continue}let Ar=Sr();if(r.noextglob!==!0&&/^\([^?]/.test(Ar)){lr("star",ft);continue}if(Je.type==="star"){if(r.noglobstar===!0){jt(ft);continue}let yn=Je.prev,ke=yn.prev,zt=yn.type==="slash"||yn.type==="bos",Fn=ke&&(ke.type==="star"||ke.type==="globstar");if(r.bash===!0&&(!zt||Ar[0]&&Ar[0]!=="/")){Xt({type:"star",value:ft,output:""});continue}let Nn=k.braces>0&&(yn.type==="comma"||yn.type==="brace"),Hi=tt.length&&(yn.type==="pipe"||yn.type==="paren");if(!zt&&yn.type!=="paren"&&!Nn&&!Hi){Xt({type:"star",value:ft,output:""});continue}for(;Ar.slice(0,3)==="/**";){let Ao=e[k.index+4];if(Ao&&Ao!=="/")break;Ar=Ar.slice(3),jt("/**",3)}if(yn.type==="bos"&<()){Je.type="globstar",Je.value+=ft,Je.output=de(r),k.output=Je.output,k.globstar=!0,jt(ft);continue}if(yn.type==="slash"&&yn.prev.type!=="bos"&&!Fn&<()){k.output=k.output.slice(0,-(yn.output+Je.output).length),yn.output=`(?:${yn.output}`,Je.type="globstar",Je.output=de(r)+(r.strictSlashes?")":"|$)"),Je.value+=ft,k.globstar=!0,k.output+=yn.output+Je.output,jt(ft);continue}if(yn.type==="slash"&&yn.prev.type!=="bos"&&Ar[0]==="/"){let Ao=Ar[1]!==void 0?"|$":"";k.output=k.output.slice(0,-(yn.output+Je.output).length),yn.output=`(?:${yn.output}`,Je.type="globstar",Je.output=`${de(r)}${N}|${N}${Ao})`,Je.value+=ft,k.output+=yn.output+Je.output,k.globstar=!0,jt(ft+Er()),Xt({type:"slash",value:"/",output:""});continue}if(yn.type==="bos"&&Ar[0]==="/"){Je.type="globstar",Je.value+=ft,Je.output=`(?:^|${N}|${de(r)}${N})`,k.output=Je.output,k.globstar=!0,jt(ft+Er()),Xt({type:"slash",value:"/",output:""});continue}k.output=k.output.slice(0,-Je.output.length),Je.type="globstar",Je.output=de(r),Je.value+=ft,k.output+=Je.output,k.globstar=!0,jt(ft);continue}let qr={type:"star",value:ft,output:De};if(r.bash===!0){qr.output=".*?",(Je.type==="bos"||Je.type==="slash")&&(qr.output=be+qr.output),Xt(qr);continue}if(Je&&(Je.type==="bracket"||Je.type==="paren")&&r.regex===!0){qr.output=ft,Xt(qr);continue}(k.index===k.start||Je.type==="slash"||Je.type==="dot")&&(Je.type==="dot"?(k.output+=J,Je.output+=J):r.dot===!0?(k.output+=ae,Je.output+=ae):(k.output+=be,Je.output+=be),Ot()!=="*"&&(k.output+=B,Je.output+=B)),Xt(qr)}for(;k.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(sve("closing","]"));k.output=VO.escapeLast(k.output,"["),$t("brackets")}for(;k.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(sve("closing",")"));k.output=VO.escapeLast(k.output,"("),$t("parens")}for(;k.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(sve("closing","}"));k.output=VO.escapeLast(k.output,"{"),$t("braces")}if(r.strictSlashes!==!0&&(Je.type==="star"||Je.type==="bracket")&&Xt({type:"maybe_slash",value:"",output:`${N}?`}),k.backtrack===!0){k.output="";for(let Ar of k.tokens)k.output+=Ar.output!=null?Ar.output:Ar.value,Ar.suffix&&(k.output+=Ar.suffix)}return k};J7t.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(Hlt,r.maxLength):Hlt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=oTn[e]||e;let o=VO.isWindows(t),{DOT_LITERAL:l,SLASH_LITERAL:A,ONE_CHAR:f,DOTS_SLASH:I,NO_DOT:C,NO_DOTS:b,NO_DOTS_SLASH:E,STAR:N,START_ANCHOR:B}=Mlt.globChars(o),F=r.dot?b:C,Q=r.dot?E:C,J=r.capture?"":"?:",ae={negated:!1,prefix:""},ne=r.bash===!0?".*?":N;r.capture&&(ne=`(${ne})`);let ce=be=>be.noglobstar===!0?ne:`(${J}(?:(?!${B}${be.dot?I:l}).)*?)`,fe=be=>{switch(be){case"*":return`${F}${f}${ne}`;case".*":return`${l}${f}${ne}`;case"*.*":return`${F}${ne}${l}${f}${ne}`;case"*/*":return`${F}${ne}${A}${f}${Q}${ne}`;case"**":return F+ce(r);case"**/*":return`(?:${F}${ce(r)}${A})?${Q}${f}${ne}`;case"**/*.*":return`(?:${F}${ce(r)}${A})?${Q}${ne}${l}${f}${ne}`;case"**/.*":return`(?:${F}${ce(r)}${A})?${l}${f}${ne}`;default:{let Se=/^(.*?)\.(\w+)$/.exec(be);if(!Se)return;let De=fe(Se[1]);return De?De+l+Se[2]:void 0}}},ue=VO.removePrefix(e,ae),de=fe(ue);return de&&r.strictSlashes!==!0&&(de+=`${A}?`),de};aTn.exports=J7t});var uTn=H((p5l,lTn)=>{"use strict";var hso=Et("path"),mso=sTn(),U7t=cTn(),K7t=V3e(),Cso=L3e(),_so=e=>e&&typeof e=="object"&&!Array.isArray(e),ew=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>ew(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=_so(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=K7t.isWindows(t),l=n?ew.compileRe(e,t):ew.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=ew(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=ew.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};ew.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?K7t.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=ew.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};ew.matchBase=(e,t,r,n=K7t.isWindows(r))=>(t instanceof RegExp?t:ew.makeRe(t,r)).test(hso.basename(e));ew.isMatch=(e,t,r)=>ew(t,r)(e);ew.parse=(e,t)=>Array.isArray(e)?e.map(r=>ew.parse(r,t)):U7t(e,{...t,fastpaths:!1});ew.scan=(e,t)=>mso(e,t);ew.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=ew.toRegex(A,t);return n===!0&&(f.state=e),f};ew.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=U7t.fastpaths(e,t)),a.output||(a=U7t(e,t)),ew.compileRe(a,t,r,n)};ew.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};ew.constants=Cso;lTn.exports=ew});var ATn=H((f5l,gTn)=>{"use strict";gTn.exports=uTn()});var Tk=H((I5l,hTn)=>{"use strict";var pTn=Et("util"),fTn=Xwn(),$K=ATn(),j7t=V3e(),dTn=e=>e===""||e==="./",ITn=e=>{let t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},Z1=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let n=new Set,a=new Set,o=new Set,l=0,A=C=>{o.add(C.output),r&&r.onResult&&r.onResult(C)};for(let C=0;C!n.has(C));if(r&&I.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(C=>C.replace(/\\/g,"")):t}return I};Z1.match=Z1;Z1.matcher=(e,t)=>$K(e,t);Z1.isMatch=(e,t,r)=>$K(t,r)(e);Z1.any=Z1.isMatch;Z1.not=(e,t,r={})=>{t=[].concat(t).map(String);let n=new Set,a=[],o=A=>{r.onResult&&r.onResult(A),a.push(A.output)},l=new Set(Z1(e,t,{...r,onResult:o}));for(let A of a)l.has(A)||n.add(A);return[...n]};Z1.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${pTn.inspect(e)}"`);if(Array.isArray(t))return t.some(n=>Z1.contains(e,n,r));if(typeof t=="string"){if(dTn(e)||dTn(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return Z1.isMatch(e,t,{...r,contains:!0})};Z1.matchKeys=(e,t,r)=>{if(!j7t.isObject(e))throw new TypeError("Expected the first argument to be an object");let n=Z1(Object.keys(e),t,r),a={};for(let o of n)a[o]=e[o];return a};Z1.some=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=$K(String(a),r);if(n.some(l=>o(l)))return!0}return!1};Z1.every=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=$K(String(a),r);if(!n.every(l=>o(l)))return!1}return!0};Z1.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${pTn.inspect(e)}"`);return[].concat(t).every(n=>$K(n,r)(e))};Z1.capture=(e,t,r)=>{let n=j7t.isWindows(r),o=$K.makeRe(String(e),{...r,capture:!0}).exec(n?j7t.toPosixSlashes(t):t);if(o)return o.slice(1).map(l=>l===void 0?"":l)};Z1.makeRe=(...e)=>$K.makeRe(...e);Z1.scan=(...e)=>$K.scan(...e);Z1.parse=(e,t)=>{let r=[];for(let n of[].concat(e||[]))for(let a of fTn(String(n),t))r.push($K.parse(a,t));return r};Z1.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!ITn(e)?[e]:fTn(e,t)};Z1.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return Z1.braces(e,{...t,expand:!0})};Z1.hasBraces=ITn;hTn.exports=Z1});var CTn=H((h5l,mTn)=>{"use strict";mTn.exports=({onlyFirst:e=!1}={})=>{let t=["[\\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(t,e?void 0:"g")}});var oM=H((m5l,_Tn)=>{"use strict";var yso=CTn();_Tn.exports=e=>typeof e=="string"?e.replace(yso(),""):e});var q7t=H(z7t=>{"use strict";Object.defineProperty(z7t,Symbol.toStringTag,{value:"Module"});function bso(e){return arguments.length===0?[]:Array.isArray(e)?e:[e]}z7t.castArray=bso});var yTn=H($7t=>{"use strict";Object.defineProperty($7t,Symbol.toStringTag,{value:"Module"});function Eso(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Size must be an integer greater than zero.");let r=Math.ceil(e.length/t),n=Array(r);for(let a=0;a{"use strict";Object.defineProperty(ezt,Symbol.toStringTag,{value:"Module"});function Sso(e){return Array.isArray(e)?e:Array.from(e)}ezt.toArray=Sso});var bTn=H(tzt=>{"use strict";Object.defineProperty(tzt,Symbol.toStringTag,{value:"Module"});function vso(e){return Number.isSafeInteger(e)&&e>=0}tzt.isLength=vso});var Bf=H(rzt=>{"use strict";Object.defineProperty(rzt,Symbol.toStringTag,{value:"Module"});var Bso=bTn();function wso(e){return e!=null&&typeof e!="function"&&Bso.isLength(e.length)}rzt.isArrayLike=wso});var izt=H(nzt=>{"use strict";Object.defineProperty(nzt,Symbol.toStringTag,{value:"Module"});var Tso=yTn(),Rso=NZ(),Nso=Bf();function Dso(e,t=1){return t=Math.max(Math.floor(t),0),t===0||!Nso.isArrayLike(e)?[]:Tso.chunk(Rso.toArray(e),t)}nzt.chunk=Dso});var ETn=H(szt=>{"use strict";Object.defineProperty(szt,Symbol.toStringTag,{value:"Module"});function kso(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(ozt,Symbol.toStringTag,{value:"Module"});var xso=ETn(),Gso=Bf();function Fso(e){return Gso.isArrayLike(e)?xso.compact(Array.from(e)):[]}ozt.compact=Fso});var O3e=H(czt=>{"use strict";Object.defineProperty(czt,Symbol.toStringTag,{value:"Module"});function Zso(e,t=1){let r=[],n=Math.floor(t),a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(lzt,Symbol.toStringTag,{value:"Module"});var Lso=O3e();function Vso(...e){return Lso.flatten(e)}lzt.concat=Vso});var Bm=H(gzt=>{"use strict";Object.defineProperty(gzt,Symbol.toStringTag,{value:"Module"});function Wso(e){return e}gzt.identity=Wso});var P3e=H(Azt=>{"use strict";Object.defineProperty(Azt,Symbol.toStringTag,{value:"Module"});function Oso(e){return e==="__proto__"}Azt.isUnsafeProperty=Oso});var ove=H(dzt=>{"use strict";Object.defineProperty(dzt,Symbol.toStringTag,{value:"Module"});function Pso(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}dzt.isDeepKey=Pso});var l$=H(pzt=>{"use strict";Object.defineProperty(pzt,Symbol.toStringTag,{value:"Module"});function Mso(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}pzt.toKey=Mso});var eb=H(fzt=>{"use strict";Object.defineProperty(fzt,Symbol.toStringTag,{value:"Module"});function STn(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(STn).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}fzt.toString=STn});var aM=H(Izt=>{"use strict";Object.defineProperty(Izt,Symbol.toStringTag,{value:"Module"});var Hso=eb(),Yso=l$();function Qso(e){if(Array.isArray(e))return e.map(Yso.toKey);if(typeof e=="symbol")return[e];e=Hso.toString(e);let t=[],r=e.length;if(r===0)return t;let n=0,a="",o="",l=!1;for(e.charCodeAt(0)===46&&(t.push(""),n++);n{"use strict";Object.defineProperty(mzt,Symbol.toStringTag,{value:"Module"});var hzt=P3e(),Xso=ove(),Jso=l$(),Uso=aM();function vTn(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(hzt.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?Xso.isDeepKey(t)?vTn(e,Uso.toPath(t),r):r:n}case"number":case"symbol":{typeof t=="number"&&(t=Jso.toKey(t));let n=e[t];return n===void 0?r:n}default:{if(Array.isArray(t))return Kso(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),hzt.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?r:n}}}function Kso(e,t,r){if(t.length===0)return r;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Czt,Symbol.toStringTag,{value:"Module"});var jso=cM();function zso(e){return function(t){return jso.get(t,e)}}Czt.property=zso});var lM=H(_zt=>{"use strict";Object.defineProperty(_zt,Symbol.toStringTag,{value:"Module"});function qso(e){return e!==null&&(typeof e=="object"||typeof e=="function")}_zt.isObject=qso});var ave=H(yzt=>{"use strict";Object.defineProperty(yzt,Symbol.toStringTag,{value:"Module"});function $so(e){return e==null||typeof e!="object"&&typeof e!="function"}yzt.isPrimitive=$so});var Rk=H(bzt=>{"use strict";Object.defineProperty(bzt,Symbol.toStringTag,{value:"Module"});function eoo(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}bzt.isEqualsSameValueZero=eoo});var Qlt=H(Ylt=>{"use strict";Object.defineProperty(Ylt,Symbol.toStringTag,{value:"Module"});var too=lM(),BTn=ave(),wTn=Rk();function TTn(e,t,r){return typeof r!="function"?TTn(e,t,()=>{}):Ezt(e,t,function n(a,o,l,A,f,I){let C=r(a,o,l,A,f,I);return C!==void 0?!!C:Ezt(a,o,n,I)},new Map)}function Ezt(e,t,r,n){if(t===e)return!0;switch(typeof t){case"object":return roo(e,t,r,n);case"function":return Object.keys(t).length>0?Ezt(e,{...t},r,n):wTn.isEqualsSameValueZero(e,t);default:return too.isObject(e)?typeof t=="string"?t==="":!0:wTn.isEqualsSameValueZero(e,t)}}function roo(e,t,r,n){if(t==null)return!0;if(Array.isArray(t))return RTn(e,t,r,n);if(t instanceof Map)return noo(e,t,r,n);if(t instanceof Set)return NTn(e,t,r,n);let a=Object.keys(t);if(e==null||BTn.isPrimitive(e))return a.length===0;if(a.length===0)return!0;if(n?.has(t))return n.get(t)===e;n?.set(t,e);try{for(let o=0;o{"use strict";Object.defineProperty(Szt,Symbol.toStringTag,{value:"Module"});var ioo=Qlt();function soo(e,t){return ioo.isMatchWith(e,t,()=>{})}Szt.isMatch=soo});var H3e=H(vzt=>{"use strict";Object.defineProperty(vzt,Symbol.toStringTag,{value:"Module"});function ooo(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}vzt.getSymbols=ooo});var $fe=H(Bzt=>{"use strict";Object.defineProperty(Bzt,Symbol.toStringTag,{value:"Module"});function aoo(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}Bzt.getTag=aoo});var Y3e=H(tb=>{"use strict";Object.defineProperty(tb,Symbol.toStringTag,{value:"Module"});var coo="[object RegExp]",loo="[object String]",uoo="[object Number]",goo="[object Boolean]",Aoo="[object Arguments]",doo="[object Symbol]",poo="[object Date]",foo="[object Map]",Ioo="[object Set]",hoo="[object Array]",moo="[object Function]",Coo="[object ArrayBuffer]",_oo="[object Object]",yoo="[object Error]",boo="[object DataView]",Eoo="[object Uint8Array]",Soo="[object Uint8ClampedArray]",voo="[object Uint16Array]",Boo="[object Uint32Array]",woo="[object BigUint64Array]",Too="[object Int8Array]",Roo="[object Int16Array]",Noo="[object Int32Array]",Doo="[object BigInt64Array]",koo="[object Float32Array]",xoo="[object Float64Array]";tb.argumentsTag=Aoo;tb.arrayBufferTag=Coo;tb.arrayTag=hoo;tb.bigInt64ArrayTag=Doo;tb.bigUint64ArrayTag=woo;tb.booleanTag=goo;tb.dataViewTag=boo;tb.dateTag=poo;tb.errorTag=yoo;tb.float32ArrayTag=koo;tb.float64ArrayTag=xoo;tb.functionTag=moo;tb.int16ArrayTag=Roo;tb.int32ArrayTag=Noo;tb.int8ArrayTag=Too;tb.mapTag=foo;tb.numberTag=uoo;tb.objectTag=_oo;tb.regexpTag=coo;tb.setTag=Ioo;tb.stringTag=loo;tb.symbolTag=doo;tb.uint16ArrayTag=voo;tb.uint32ArrayTag=Boo;tb.uint8ArrayTag=Eoo;tb.uint8ClampedArrayTag=Soo});var Tzt=H(wzt=>{"use strict";Object.defineProperty(wzt,Symbol.toStringTag,{value:"Module"});var Goo=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||function(){return this}()||Function("return this")();wzt.globalThis=Goo});var hoe=H(Rzt=>{"use strict";Object.defineProperty(Rzt,Symbol.toStringTag,{value:"Module"});var DTn=Tzt();function Foo(e){return typeof DTn.globalThis.Buffer<"u"&&DTn.globalThis.Buffer.isBuffer(e)}Rzt.isBuffer=Foo});var Xlt=H(Nzt=>{"use strict";Object.defineProperty(Nzt,Symbol.toStringTag,{value:"Module"});function Zoo(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}Nzt.isTypedArray=Zoo});var Dzt=H(Q3e=>{"use strict";Object.defineProperty(Q3e,Symbol.toStringTag,{value:"Module"});var Loo=H3e(),Voo=$fe(),Ov=Y3e(),Woo=hoe(),Ooo=ave(),Poo=Xlt();function Moo(e,t){return eIe(e,void 0,e,new Map,t)}function eIe(e,t,r,n=new Map,a=void 0){let o=a?.(e,t,r,n);if(o!==void 0)return o;if(Ooo.isPrimitive(e))return e;if(n.has(e))return n.get(e);if(Array.isArray(e)){let l=new Array(e.length);n.set(e,l);for(let A=0;A{"use strict";Object.defineProperty(kzt,Symbol.toStringTag,{value:"Module"});var Yoo=Dzt();function Qoo(e){return Yoo.cloneDeepWithImpl(e,void 0,e,new Map,void 0)}kzt.cloneDeep=Qoo});var e8=H(Gzt=>{"use strict";Object.defineProperty(Gzt,Symbol.toStringTag,{value:"Module"});var Xoo=M3e(),Joo=xzt();function Uoo(e){return e=Joo.cloneDeep(e),t=>Xoo.isMatch(t,e)}Gzt.matches=Uoo});var J3e=H(Fzt=>{"use strict";Object.defineProperty(Fzt,Symbol.toStringTag,{value:"Module"});var Jlt=Dzt(),Koo=$fe(),X3e=Y3e();function joo(e,t){return Jlt.cloneDeepWith(e,(r,n,a,o)=>{let l=t?.(r,n,a,o);if(l!==void 0)return l;if(typeof e=="object"){if(Koo.getTag(e)===X3e.objectTag&&typeof e.constructor!="function"){let A={};return o.set(e,A),Jlt.copyProperties(A,e,a,o),A}switch(Object.prototype.toString.call(e)){case X3e.numberTag:case X3e.stringTag:case X3e.booleanTag:{let A=new e.constructor(e?.valueOf());return Jlt.copyProperties(A,e),A}case X3e.argumentsTag:{let A={};return Jlt.copyProperties(A,e),A.length=e.length,A[Symbol.iterator]=e[Symbol.iterator],A}default:return}}})}Fzt.cloneDeepWith=joo});var cve=H(Zzt=>{"use strict";Object.defineProperty(Zzt,Symbol.toStringTag,{value:"Module"});var zoo=J3e();function qoo(e){return zoo.cloneDeepWith(e)}Zzt.cloneDeep=qoo});var lve=H(Lzt=>{"use strict";Object.defineProperty(Lzt,Symbol.toStringTag,{value:"Module"});var $oo=/^(?:0|[1-9]\d*)$/;function eao(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e{"use strict";Object.defineProperty(Vzt,Symbol.toStringTag,{value:"Module"});var tao=$fe();function rao(e){return e!==null&&typeof e=="object"&&tao.getTag(e)==="[object Arguments]"}Vzt.isArguments=rao});var U3e=H(Wzt=>{"use strict";Object.defineProperty(Wzt,Symbol.toStringTag,{value:"Module"});var nao=ove(),iao=lve(),sao=tIe(),oao=aM();function aao(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&nao.isDeepKey(t)&&e?.[t]==null?r=oao.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Ozt,Symbol.toStringTag,{value:"Module"});var cao=M3e(),lao=l$(),uao=cve(),gao=cM(),Aao=U3e();function dao(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=lao.toKey(e);break}}return t=uao.cloneDeep(t),function(r){let n=gao.get(r,e);return n===void 0?Aao.has(r,e):t===void 0?n===void 0:cao.isMatch(n,t)}}Ozt.matchesProperty=dao});var cm=H(Pzt=>{"use strict";Object.defineProperty(Pzt,Symbol.toStringTag,{value:"Module"});var pao=Bm(),fao=pX(),Iao=e8(),hao=t8();function mao(e){if(e==null)return pao.identity;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?hao.matchesProperty(e[0],e[1]):Iao.matches(e);case"string":case"symbol":case"number":return fao.property(e)}}Pzt.iteratee=mao});var Hzt=H(Mzt=>{"use strict";Object.defineProperty(Mzt,Symbol.toStringTag,{value:"Module"});var Cao=Bf(),_ao=cm();function yao(e,t){if(e==null)return{};let r=Cao.isArrayLike(e)?Array.from(e):Object.values(e),n=_ao.iteratee(t??void 0),a=Object.create(null);for(let o=0;o{"use strict";Object.defineProperty(Yzt,Symbol.toStringTag,{value:"Module"});function bao(e,t){let r=new Set(t);return e.filter(n=>!r.has(n))}Yzt.difference=bao});var moe=H(Qzt=>{"use strict";Object.defineProperty(Qzt,Symbol.toStringTag,{value:"Module"});function Eao(e){return typeof e=="object"&&e!==null}Qzt.isObjectLike=Eao});var v2=H(Xzt=>{"use strict";Object.defineProperty(Xzt,Symbol.toStringTag,{value:"Module"});var Sao=Bf(),vao=moe();function Bao(e){return vao.isObjectLike(e)&&Sao.isArrayLike(e)}Xzt.isArrayLikeObject=Bao});var Uzt=H(Jzt=>{"use strict";Object.defineProperty(Jzt,Symbol.toStringTag,{value:"Module"});var wao=K3e(),Tao=NZ(),kTn=v2();function Rao(e,...t){if(!kTn.isArrayLikeObject(e))return[];let r=Tao.toArray(e),n=[];for(let a=0;a{"use strict";Object.defineProperty(Kzt,Symbol.toStringTag,{value:"Module"});function Nao(e){return e[e.length-1]}Kzt.last=Nao});var g$=H(jzt=>{"use strict";Object.defineProperty(jzt,Symbol.toStringTag,{value:"Module"});var Dao=j3e(),kao=NZ(),xao=Bf();function Gao(e){if(xao.isArrayLike(e))return Dao.last(kao.toArray(e))}jzt.last=Gao});var xTn=H(zzt=>{"use strict";Object.defineProperty(zzt,Symbol.toStringTag,{value:"Module"});function Fao(e,t,r){let n=new Set(t.map(a=>r(a)));return e.filter(a=>!n.has(r(a)))}zzt.differenceBy=Fao});var z3e=H(qzt=>{"use strict";Object.defineProperty(qzt,Symbol.toStringTag,{value:"Module"});var Zao=v2();function Lao(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty($zt,Symbol.toStringTag,{value:"Module"});var Vao=g$(),Wao=K3e(),Oao=xTn(),Pao=z3e(),GTn=v2(),Mao=cm();function Hao(e,...t){if(!GTn.isArrayLikeObject(e))return[];let r=Vao.last(t),n=Pao.flattenArrayLike(t);return GTn.isArrayLikeObject(r)?Wao.difference(Array.from(e),n):Oao.differenceBy(Array.from(e),n,Mao.iteratee(r))}$zt.differenceBy=Hao});var FTn=H(eqt=>{"use strict";Object.defineProperty(eqt,Symbol.toStringTag,{value:"Module"});function Yao(e,t,r){return e.filter(n=>t.every(a=>!r(n,a)))}eqt.differenceWith=Yao});var Klt=H(tqt=>{"use strict";Object.defineProperty(tqt,Symbol.toStringTag,{value:"Module"});var Qao=g$(),Xao=K3e(),Jao=FTn(),Uao=z3e(),Kao=v2();function jao(e,...t){if(!Kao.isArrayLikeObject(e))return[];let r=Qao.last(t),n=Uao.flattenArrayLike(t);return typeof r=="function"?Jao.differenceWith(Array.from(e),n,r):Xao.difference(Array.from(e),n)}tqt.differenceWith=jao});var ZTn=H(rqt=>{"use strict";Object.defineProperty(rqt,Symbol.toStringTag,{value:"Module"});function zao(e,t){return t=Math.max(t,0),e.slice(t)}rqt.drop=zao});var Coe=H(nqt=>{"use strict";Object.defineProperty(nqt,Symbol.toStringTag,{value:"Module"});function qao(e){return typeof e=="symbol"||e instanceof Symbol}nqt.isSymbol=qao});var z9=H(iqt=>{"use strict";Object.defineProperty(iqt,Symbol.toStringTag,{value:"Module"});var $ao=Coe();function eco(e){return $ao.isSymbol(e)?NaN:Number(e)}iqt.toNumber=eco});var uve=H(sqt=>{"use strict";Object.defineProperty(sqt,Symbol.toStringTag,{value:"Module"});var tco=z9();function rco(e){return e?(e=tco.toNumber(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}sqt.toFinite=rco});var iT=H(oqt=>{"use strict";Object.defineProperty(oqt,Symbol.toStringTag,{value:"Module"});var nco=uve();function ico(e){let t=nco.toFinite(e),r=t%1;return r?t-r:t}oqt.toInteger=ico});var cqt=H(aqt=>{"use strict";Object.defineProperty(aqt,Symbol.toStringTag,{value:"Module"});var sco=ZTn(),oco=NZ(),aco=Bf(),cco=iT();function lco(e,t=1,r){return aco.isArrayLike(e)?(t=r?1:cco.toInteger(t),sco.drop(oco.toArray(e),t)):[]}aqt.drop=lco});var LTn=H(lqt=>{"use strict";Object.defineProperty(lqt,Symbol.toStringTag,{value:"Module"});function uco(e,t){return t=Math.min(-t,0),t===0?e.slice():e.slice(0,t)}lqt.dropRight=uco});var gqt=H(uqt=>{"use strict";Object.defineProperty(uqt,Symbol.toStringTag,{value:"Module"});var gco=LTn(),Aco=NZ(),dco=Bf(),pco=iT();function fco(e,t=1,r){return dco.isArrayLike(e)?(t=r?1:pco.toInteger(t),gco.dropRight(Aco.toArray(e),t)):[]}uqt.dropRight=fco});var VTn=H(Aqt=>{"use strict";Object.defineProperty(Aqt,Symbol.toStringTag,{value:"Module"});function Ico(e,t){for(let r=e.length-1;r>=0;r--)if(!t(e[r],r,e))return e.slice(0,r+1);return[]}Aqt.dropRightWhile=Ico});var pqt=H(dqt=>{"use strict";Object.defineProperty(dqt,Symbol.toStringTag,{value:"Module"});var jlt=VTn(),hco=Bm(),mco=pX(),Cco=Bf(),_co=e8(),yco=t8();function bco(e,t=hco.identity){return Cco.isArrayLike(e)?Eco(Array.from(e),t):[]}function Eco(e,t){switch(typeof t){case"function":return jlt.dropRightWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return jlt.dropRightWhile(e,yco.matchesProperty(r,n))}else return jlt.dropRightWhile(e,_co.matches(t));case"symbol":case"number":case"string":return jlt.dropRightWhile(e,mco.property(t))}}dqt.dropRightWhile=bco});var WTn=H(fqt=>{"use strict";Object.defineProperty(fqt,Symbol.toStringTag,{value:"Module"});function Sco(e,t){let r=e.findIndex((n,a,o)=>!t(n,a,o));return r===-1?[]:e.slice(r)}fqt.dropWhile=Sco});var hqt=H(Iqt=>{"use strict";Object.defineProperty(Iqt,Symbol.toStringTag,{value:"Module"});var zlt=WTn(),vco=Bm(),Bco=NZ(),wco=pX(),Tco=Bf(),Rco=e8(),Nco=t8();function Dco(e,t=vco.identity){return Tco.isArrayLike(e)?kco(Bco.toArray(e),t):[]}function kco(e,t){switch(typeof t){case"function":return zlt.dropWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return zlt.dropWhile(e,Nco.matchesProperty(r,n))}else return zlt.dropWhile(e,Rco.matches(t));case"number":case"symbol":case"string":return zlt.dropWhile(e,wco.property(t))}}Iqt.dropWhile=Dco});var _oe=H(mqt=>{"use strict";Object.defineProperty(mqt,Symbol.toStringTag,{value:"Module"});function xco(e,t,r=1){if(t==null&&(t=e,e=0),!Number.isInteger(r)||r===0)throw new Error("The step value must be a non-zero integer.");let n=Math.max(Math.ceil((t-e)/r),0),a=new Array(n);for(let o=0;o{"use strict";Object.defineProperty(Cqt,Symbol.toStringTag,{value:"Module"});var Gco=Bm(),Fco=_oe(),Zco=Bf();function Lco(e,t=Gco.identity){if(!e)return e;let r=Zco.isArrayLike(e)||Array.isArray(e)?Fco.range(0,e.length):Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(_qt,Symbol.toStringTag,{value:"Module"});var Vco=Bm(),Wco=_oe(),Oco=Bf();function Pco(e,t=Vco.identity){if(!e)return e;let r=Oco.isArrayLike(e)?Wco.range(0,e.length):Object.keys(e);for(let n=r.length-1;n>=0;n--){let a=r[n],o=e[a];if(t(o,a,e)===!1)break}return e}_qt.forEachRight=Pco});var A$=H(bqt=>{"use strict";Object.defineProperty(bqt,Symbol.toStringTag,{value:"Module"});var Mco=lve(),Hco=Bf(),Yco=lM(),Qco=Rk();function Xco(e,t,r){return Yco.isObject(r)&&(typeof t=="number"&&Hco.isArrayLike(r)&&Mco.isIndex(t)&&t{"use strict";Object.defineProperty(Eqt,Symbol.toStringTag,{value:"Module"});var Jco=Bm(),Uco=A$(),Kco=pX(),jco=Bf(),zco=e8(),qco=t8();function $co(e,t,r){if(!e)return!0;r&&Uco.isIterateeCall(e,t,r)&&(t=void 0),t||(t=Jco.identity);let n;switch(typeof t){case"function":{n=t;break}case"object":{if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];n=qco.matchesProperty(a,o)}else n=zco.matches(t);break}case"symbol":case"number":case"string":n=Kco.property(t)}if(!jco.isArrayLike(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(vqt,Symbol.toStringTag,{value:"Module"});function elo(e,t,r=0,n=e.length){let a=e.length,o=Math.max(r>=0?r:a+r,0),l=Math.min(n>=0?n:a+n,a);for(let A=o;A{"use strict";Object.defineProperty(Bqt,Symbol.toStringTag,{value:"Module"});function tlo(e){return typeof e=="string"||e instanceof String}Bqt.isString=tlo});var Tqt=H(wqt=>{"use strict";Object.defineProperty(wqt,Symbol.toStringTag,{value:"Module"});var rlo=OTn(),nlo=Bf(),ilo=gve();function slo(e,t,r=0,n=e?e.length:0){return nlo.isArrayLike(e)?ilo.isString(e)?e:(r=Math.floor(r),n=Math.floor(n),r||(r=0),n||(n=0),rlo.fill(e,t,r,n)):[]}wqt.fill=slo});var $lt=H(Rqt=>{"use strict";Object.defineProperty(Rqt,Symbol.toStringTag,{value:"Module"});var olo=Bm(),alo=Bf(),clo=cm();function llo(e,t=olo.identity){if(!e)return[];if(t=clo.iteratee(t),!Array.isArray(e)){let a=[],o=Object.keys(e),l=alo.isArrayLike(e)?e.length:o.length;for(let A=0;A{"use strict";Object.defineProperty(Nqt,Symbol.toStringTag,{value:"Module"});var ulo=Bm(),glo=cm();function Alo(e,t=ulo.identity,r=0){if(!e)return;r<0&&(r=Math.max(e.length+r,0));let n=glo.iteratee(t);if(!Array.isArray(e)){let a=Object.keys(e);for(let o=r;o{"use strict";Object.defineProperty(kqt,Symbol.toStringTag,{value:"Module"});function dlo(e){return e}kqt.identity=dlo});var Gqt=H(xqt=>{"use strict";Object.defineProperty(xqt,Symbol.toStringTag,{value:"Module"});var plo=r8(),flo=pX(),Ilo=e8(),hlo=t8();function mlo(e,t=plo.identity,r=0){if(!e)return-1;r<0&&(r=Math.max(e.length+r,0));let n=Array.from(e).slice(r),a=-1;switch(typeof t){case"function":{a=n.findIndex(t);break}case"object":{if(Array.isArray(t)&&t.length===2){let o=t[0],l=t[1];a=n.findIndex(hlo.matchesProperty(o,l))}else a=n.findIndex(Ilo.matches(t));break}case"number":case"symbol":case"string":a=n.findIndex(flo.property(t))}return a===-1?-1:a+r}xqt.findIndex=mlo});var Zqt=H(Fqt=>{"use strict";Object.defineProperty(Fqt,Symbol.toStringTag,{value:"Module"});var Clo=Bm(),_lo=cm(),ylo=iT();function blo(e,t=Clo.identity,r){if(!e)return;let n=Array.isArray(e)?e.length:Object.keys(e).length;r=ylo.toInteger(r??n-1),r<0?r=Math.max(n+r,0):r=Math.min(r,n-1);let a=_lo.iteratee(t);if(!Array.isArray(e)){let o=Object.keys(e);for(let l=r;l>=0;l--){let A=o[l],f=e[A];if(a(f,A,e))return f}return}return e.slice(0,r+1).findLast(a)}Fqt.findLast=blo});var Vqt=H(Lqt=>{"use strict";Object.defineProperty(Lqt,Symbol.toStringTag,{value:"Module"});var Elo=Bm(),Slo=NZ(),vlo=pX(),Blo=e8(),wlo=t8();function Tlo(e,t=Elo.identity,r=e?e.length-1:0){if(!e)return-1;r<0?r=Math.max(e.length+r,0):r=Math.min(r,e.length-1);let n=Slo.toArray(e).slice(0,r+1);switch(typeof t){case"function":return n.findLastIndex(t);case"object":if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];return n.findLastIndex(wlo.matchesProperty(a,o))}else return n.findLastIndex(Blo.matches(t));case"number":case"symbol":case"string":return n.findLastIndex(vlo.property(t))}}Lqt.findLastIndex=Tlo});var PTn=H(Wqt=>{"use strict";Object.defineProperty(Wqt,Symbol.toStringTag,{value:"Module"});function Rlo(e){return e[0]}Wqt.head=Rlo});var Pqt=H(Oqt=>{"use strict";Object.defineProperty(Oqt,Symbol.toStringTag,{value:"Module"});var Nlo=PTn(),Dlo=NZ(),klo=Bf();function xlo(e){if(klo.isArrayLike(e))return Nlo.head(Dlo.toArray(e))}Oqt.head=xlo});var rIe=H(Mqt=>{"use strict";Object.defineProperty(Mqt,Symbol.toStringTag,{value:"Module"});var Glo=Bf();function Flo(e,t=1){let r=[],n=Math.floor(t);if(!Glo.isArrayLike(e))return r;let a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(Hqt,Symbol.toStringTag,{value:"Module"});var Zlo=rIe();function Llo(e,t=1){return Zlo.flatten(e,t)}Hqt.flattenDepth=Llo});var q3e=H(Yqt=>{"use strict";Object.defineProperty(Yqt,Symbol.toStringTag,{value:"Module"});var Vlo=Bm(),Wlo=_oe(),Olo=Bf(),Plo=cm();function Mlo(e,t){if(!e)return[];let r=Olo.isArrayLike(e)||Array.isArray(e)?Wlo.range(0,e.length):Object.keys(e),n=Plo.iteratee(t??Vlo.identity),a=new Array(r.length);for(let o=0;o{"use strict";Object.defineProperty(Qqt,Symbol.toStringTag,{value:"Module"});function Hlo(e){return e==null}Qqt.isNil=Hlo});var Jqt=H(Xqt=>{"use strict";Object.defineProperty(Xqt,Symbol.toStringTag,{value:"Module"});var Ylo=Ave(),MTn=q3e(),HTn=yoe();function Qlo(e,t){if(HTn.isNil(e))return[];let r=HTn.isNil(t)?MTn.map(e):MTn.map(e,t);return Ylo.flattenDepth(r,1)}Xqt.flatMap=Qlo});var $3e=H(Uqt=>{"use strict";Object.defineProperty(Uqt,Symbol.toStringTag,{value:"Module"});var Xlo=rIe(),Jlo=q3e(),Ulo=Bm(),Klo=cm();function jlo(e,t=Ulo.identity,r=1){if(e==null)return[];let n=Klo.iteratee(t),a=Jlo.map(e,n);return Xlo.flatten(a,r)}Uqt.flatMapDepth=jlo});var jqt=H(Kqt=>{"use strict";Object.defineProperty(Kqt,Symbol.toStringTag,{value:"Module"});var zlo=$3e();function qlo(e,t){return zlo.flatMapDepth(e,t,1/0)}Kqt.flatMapDeep=qlo});var qqt=H(zqt=>{"use strict";Object.defineProperty(zqt,Symbol.toStringTag,{value:"Module"});var $lo=Ave();function euo(e){return $lo.flattenDepth(e,1/0)}zqt.flattenDeep=euo});var YTn=H($qt=>{"use strict";Object.defineProperty($qt,Symbol.toStringTag,{value:"Module"});function tuo(e,t){let r={};for(let n=0;n{"use strict";Object.defineProperty(e$t,Symbol.toStringTag,{value:"Module"});var ruo=YTn(),nuo=Bm(),iuo=Bf(),suo=cm();function ouo(e,t){if(e==null)return{};let r=iuo.isArrayLike(e)?Array.from(e):Object.values(e),n=suo.iteratee(t??nuo.identity);return ruo.groupBy(r,n)}e$t.groupBy=ouo});var n$t=H(r$t=>{"use strict";Object.defineProperty(r$t,Symbol.toStringTag,{value:"Module"});var auo=gve(),cuo=Rk(),luo=iT();function uuo(e,t,r,n){if(e==null)return!1;if(n||!r?r=0:r=luo.toInteger(r),auo.isString(e))return r>e.length||t instanceof RegExp?!1:(r<0&&(r=Math.max(0,e.length+r)),e.includes(t,r));if(Array.isArray(e))return e.includes(t,r);let a=Object.keys(e);r<0&&(r=Math.max(0,a.length+r));for(let o=r;o{"use strict";Object.defineProperty(i$t,Symbol.toStringTag,{value:"Module"});var guo=Bf();function Auo(e,t,r){if(!guo.isArrayLike(e))return-1;if(Number.isNaN(t)){r=r??0,r<0&&(r=Math.max(0,e.length+r));for(let n=r;n{"use strict";Object.defineProperty(o$t,Symbol.toStringTag,{value:"Module"});function duo(e){return e.slice(0,-1)}o$t.initial=duo});var c$t=H(a$t=>{"use strict";Object.defineProperty(a$t,Symbol.toStringTag,{value:"Module"});var puo=QTn(),fuo=Bf();function Iuo(e){return fuo.isArrayLike(e)?puo.initial(Array.from(e)):[]}a$t.initial=Iuo});var XTn=H(l$t=>{"use strict";Object.defineProperty(l$t,Symbol.toStringTag,{value:"Module"});function huo(e,t){let r=new Set(t);return e.filter(n=>r.has(n))}l$t.intersection=huo});var nIe=H(u$t=>{"use strict";Object.defineProperty(u$t,Symbol.toStringTag,{value:"Module"});function muo(e){return[...new Set(e)]}u$t.uniq=muo});var A$t=H(g$t=>{"use strict";Object.defineProperty(g$t,Symbol.toStringTag,{value:"Module"});var Cuo=XTn(),_uo=nIe(),JTn=v2();function yuo(...e){if(e.length===0)return[];if(!JTn.isArrayLikeObject(e[0]))return[];let t=_uo.uniq(Array.from(e[0]));for(let r=1;r{"use strict";Object.defineProperty(d$t,Symbol.toStringTag,{value:"Module"});function buo(e,t,r){let n=[],a=new Set(t.map(r));for(let o=0;o{"use strict";Object.defineProperty(f$t,Symbol.toStringTag,{value:"Module"});var p$t=UTn(),Euo=j3e(),Suo=nIe(),vuo=Bm(),Buo=pX(),eut=v2();function wuo(e,...t){if(!eut.isArrayLikeObject(e))return[];let r=Euo.last(t);if(r===void 0)return Array.from(e);let n=Suo.uniq(Array.from(e)),a=eut.isArrayLikeObject(r)?t.length:t.length-1;for(let o=0;or(A)):typeof r=="string"&&(n=p$t.intersectionBy(n,Array.from(l),Buo.property(r)))}return n}f$t.intersectionBy=wuo});var KTn=H(I$t=>{"use strict";Object.defineProperty(I$t,Symbol.toStringTag,{value:"Module"});function Tuo(e,t,r){return e.filter(n=>t.some(a=>r(n,a)))}I$t.intersectionWith=Tuo});var e5e=H(h$t=>{"use strict";Object.defineProperty(h$t,Symbol.toStringTag,{value:"Module"});var Ruo=nIe(),Nuo=Bf();function Duo(e){return Nuo.isArrayLike(e)?Ruo.uniq(Array.from(e)):[]}h$t.uniq=Duo});var rut=H(m$t=>{"use strict";Object.defineProperty(m$t,Symbol.toStringTag,{value:"Module"});var kuo=g$(),xuo=KTn(),Guo=e5e(),Fuo=Rk();function Zuo(e,...t){if(e==null)return[];let r=kuo.last(t),n=Fuo.isEqualsSameValueZero,a=Guo.uniq;typeof r=="function"&&(n=r,a=Luo,t.pop());let o=a(Array.from(e));for(let l=0;l{"use strict";Object.defineProperty(C$t,Symbol.toStringTag,{value:"Module"});function Vuo(e){return typeof e=="function"}C$t.isFunction=Vuo});var b$t=H(y$t=>{"use strict";Object.defineProperty(y$t,Symbol.toStringTag,{value:"Module"});Tzt();var Wuo=boe(),Ouo=yoe(),_$t=cM(),Puo=Bf();function Muo(e,t,...r){if(Ouo.isNil(e))return[];let n=Puo.isArrayLike(e)?Array.from(e):Object.values(e),a=[];for(let o=0;o0&&(f=_$t.get(l,I))}else if(typeof t=="string"&&t.includes(".")){let C=t.split(".").slice(0,-1).join(".");f=_$t.get(l,C)}a.push(A?.apply(f,r))}return a}y$t.invokeMap=Muo});var S$t=H(E$t=>{"use strict";Object.defineProperty(E$t,Symbol.toStringTag,{value:"Module"});var Huo=Bf();function Yuo(e,t){return Huo.isArrayLike(e)?Array.from(e).join(t):""}E$t.join=Yuo});var nut=H(v$t=>{"use strict";Object.defineProperty(v$t,Symbol.toStringTag,{value:"Module"});var Quo=Bm(),Xuo=_oe(),Juo=Bf();function Uuo(e,t=Quo.identity,r){if(!e)return r;let n,a=0;Juo.isArrayLike(e)?(n=Xuo.range(0,e.length),r==null&&e.length>0&&(r=e[0],a+=1)):(n=Object.keys(e),r==null&&(r=e[n[0]],a+=1));for(let o=a;o{"use strict";Object.defineProperty(B$t,Symbol.toStringTag,{value:"Module"});var Kuo=nut(),juo=Bm(),zuo=Bf(),quo=moe(),$uo=cm();function ego(e,t){if(!zuo.isArrayLike(e)&&!quo.isObjectLike(e))return{};let r=$uo.iteratee(t??juo.identity);return Kuo.reduce(e,(n,a)=>{let o=r(a);return n[o]=a,n},{})}B$t.keyBy=ego});var R$t=H(T$t=>{"use strict";Object.defineProperty(T$t,Symbol.toStringTag,{value:"Module"});var tgo=Bf();function rgo(e,t,r){if(!tgo.isArrayLike(e)||e.length===0)return-1;let n=e.length,a=r??n-1;if(r!=null&&(a=a<0?Math.max(n+a,0):Math.min(a,n-1)),Number.isNaN(t)){for(let o=a;o>=0;o--)if(Number.isNaN(e[o]))return o}return Array.from(e).lastIndexOf(t,a)}T$t.lastIndexOf=rgo});var D$t=H(N$t=>{"use strict";Object.defineProperty(N$t,Symbol.toStringTag,{value:"Module"});var ngo=v2(),igo=iT();function sgo(e,t=0){if(!(!ngo.isArrayLikeObject(e)||e.length===0))return t=igo.toInteger(t),t<0&&(t+=e.length),e[t]}N$t.nth=sgo});var zTn=H(k$t=>{"use strict";Object.defineProperty(k$t,Symbol.toStringTag,{value:"Module"});function jTn(e){return typeof e=="symbol"?1:e===null?2:e===void 0?3:e!==e?4:0}var ogo=(e,t,r)=>{if(e!==t){let n=jTn(e),a=jTn(t);if(n===a&&n===0){if(et)return r==="desc"?-1:1}return r==="desc"?a-n:n-a}return 0};k$t.compareValues=ogo});var t5e=H(x$t=>{"use strict";Object.defineProperty(x$t,Symbol.toStringTag,{value:"Module"});var ago=Coe(),cgo=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,lgo=/^\w*$/;function ugo(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof e=="boolean"||e==null||ago.isSymbol(e)?!0:typeof e=="string"&&(lgo.test(e)||!cgo.test(e))||t!=null&&Object.hasOwn(t,e)}x$t.isKey=ugo});var iut=H(G$t=>{"use strict";Object.defineProperty(G$t,Symbol.toStringTag,{value:"Module"});var ggo=zTn(),Ago=t5e(),dgo=aM();function pgo(e,t,r,n){if(e==null)return[];r=n?void 0:r,Array.isArray(e)||(e=Object.values(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(r)||(r=r==null?[]:[r]),r=r.map(f=>String(f));let a=(f,I)=>{let C=f;for(let b=0;bI==null||f==null?I:typeof f=="object"&&"key"in f?Object.hasOwn(I,f.key)?I[f.key]:a(I,f.path):typeof f=="function"?f(I):Array.isArray(f)?a(I,f):typeof I=="object"?I[f]:I,l=t.map(f=>(Array.isArray(f)&&f.length===1&&(f=f[0]),f==null||typeof f=="function"||Array.isArray(f)||Ago.isKey(f)?f:{key:f,path:dgo.toPath(f)}));return e.map(f=>({original:f,criteria:l.map(I=>o(I,f))})).slice().sort((f,I)=>{for(let C=0;Cf.original)}G$t.orderBy=pgo});var Z$t=H(F$t=>{"use strict";Object.defineProperty(F$t,Symbol.toStringTag,{value:"Module"});var fgo=Bm(),Igo=Bf(),hgo=cm();function mgo(e,t=fgo.identity){if(!e)return[[],[]];let r=Igo.isArrayLike(e)?e:Object.values(e);t=hgo.iteratee(t);let n=[],a=[];for(let o=0;o{"use strict";Object.defineProperty(L$t,Symbol.toStringTag,{value:"Module"});function Cgo(e,t){let r=new Set(t),n=0;for(let a=0;a{"use strict";Object.defineProperty(W$t,Symbol.toStringTag,{value:"Module"});var _go=V$t();function ygo(e,...t){return _go.pull(e,t)}W$t.pull=ygo});var M$t=H(P$t=>{"use strict";Object.defineProperty(P$t,Symbol.toStringTag,{value:"Module"});var bgo=V$t();function Ego(e,t=[]){return bgo.pull(e,Array.from(t))}P$t.pullAll=Ego});var Y$t=H(H$t=>{"use strict";Object.defineProperty(H$t,Symbol.toStringTag,{value:"Module"});var Sgo=cm();function vgo(e,t,r){let n=Sgo.iteratee(r),a=new Set(Array.from(t).map(l=>n(l))),o=0;for(let l=0;l{"use strict";function Bgo(e,t){let r=e.length;t==null&&(t=Array(r));for(let n=0;n{"use strict";Object.defineProperty(Q$t,Symbol.toStringTag,{value:"Module"});var wgo=$Tn(),Tgo=Rk();function Rgo(e,t,r){if(e?.length==null||t?.length==null)return e;e===t&&(t=wgo(t));let n=0;r==null&&(r=(l,A)=>Tgo.isEqualsSameValueZero(l,A));let a=Array.isArray(t)?t:Array.from(t),o=a.includes(void 0);for(let l=0;lr(e[l],f))||(e[n++]=e[l]);continue}o||delete e[n++]}return e.length=n,e}Q$t.pullAllWith=Rgo});var sut=H(J$t=>{"use strict";Object.defineProperty(J$t,Symbol.toStringTag,{value:"Module"});var Ngo=cM(),Dgo=Bf(),kgo=gve();function xgo(e,...t){if(t.length===0)return[];let r=[];for(let a=0;a{"use strict";Object.defineProperty(K$t,Symbol.toStringTag,{value:"Module"});var Ggo=cM(),U$t=P3e(),Fgo=ove(),Zgo=l$(),Lgo=aM();function Vgo(e,t){if(e==null)return!0;switch(typeof t){case"symbol":case"number":case"object":{if(Array.isArray(t))return eRn(e,t);if(typeof t=="number"?t=Zgo.toKey(t):typeof t=="object"&&(Object.is(t?.valueOf(),-0)?t="-0":t=String(t)),U$t.isUnsafeProperty(t))return!1;if(e?.[t]===void 0)return!0;try{return delete e[t],!0}catch{return!1}}case"string":{if(e?.[t]===void 0&&Fgo.isDeepKey(t))return eRn(e,Lgo.toPath(t));if(U$t.isUnsafeProperty(t))return!1;try{return delete e[t],!0}catch{return!1}}}}function eRn(e,t){let r=t.length===1?e:Ggo.get(e,t.slice(0,-1)),n=t[t.length-1];if(r?.[n]===void 0)return!0;if(U$t.isUnsafeProperty(n))return!1;try{return delete r[n],!0}catch{return!1}}K$t.unset=Vgo});var d$=H(j$t=>{"use strict";Object.defineProperty(j$t,Symbol.toStringTag,{value:"Module"});function Wgo(e){return Array.isArray(e)}j$t.isArray=Wgo});var q$t=H(z$t=>{"use strict";Object.defineProperty(z$t,Symbol.toStringTag,{value:"Module"});var Ogo=Ave(),tRn=lve(),Pgo=t5e(),Mgo=l$(),Hgo=sut(),Ygo=r5e(),Qgo=d$(),Xgo=aM();function Jgo(e,...t){let r=Ogo.flattenDepth(t,1);if(!e)return Array(r.length);let n=Hgo.at(e,r),a=r.map(o=>tRn.isIndex(o,e.length)?Number(o):o).sort((o,l)=>l-o);for(let o of new Set(a)){if(tRn.isIndex(o,e.length)){Array.prototype.splice.call(e,o,1);continue}if(Pgo.isKey(o,e)){delete e[Mgo.toKey(o)];continue}let l=Qgo.isArray(o)?o:Xgo.toPath(o);Ygo.unset(e,l)}return n}z$t.pullAt=Jgo});var eer=H($$t=>{"use strict";Object.defineProperty($$t,Symbol.toStringTag,{value:"Module"});var Ugo=Bm(),Kgo=_oe(),jgo=Bf();function zgo(e,t=Ugo.identity,r){if(!e)return r;let n,a;jgo.isArrayLike(e)?(n=Kgo.range(0,e.length).reverse(),r==null&&e.length>0?(r=e[e.length-1],a=1):a=0):(n=Object.keys(e).reverse(),r==null?(r=e[n[0]],a=1):a=0);for(let o=a;o{"use strict";Object.defineProperty(ter,Symbol.toStringTag,{value:"Module"});function qgo(e){if(typeof e!="function")throw new TypeError("Expected a function");return function(...t){return!e.apply(this,t)}}ter.negate=qgo});var ner=H(rer=>{"use strict";Object.defineProperty(rer,Symbol.toStringTag,{value:"Module"});var $go=$lt(),eAo=Bm(),tAo=n5e(),rAo=cm();function nAo(e,t=eAo.identity){return $go.filter(e,tAo.negate(rAo.iteratee(t)))}rer.reject=nAo});var rRn=H(ier=>{"use strict";Object.defineProperty(ier,Symbol.toStringTag,{value:"Module"});function iAo(e,t){let r=e.slice(),n=[],a=0;for(let o=0;o{"use strict";Object.defineProperty(ser,Symbol.toStringTag,{value:"Module"});var sAo=rRn(),oAo=Bm(),aAo=cm();function cAo(e,t=oAo.identity){return sAo.remove(e,aAo.iteratee(t))}ser.remove=cAo});var cer=H(aer=>{"use strict";Object.defineProperty(aer,Symbol.toStringTag,{value:"Module"});function lAo(e){return e==null?e:e.reverse()}aer.reverse=lAo});var nRn=H(ler=>{"use strict";Object.defineProperty(ler,Symbol.toStringTag,{value:"Module"});function uAo(e){let t=Math.floor(Math.random()*e.length);return e[t]}ler.sample=uAo});var ger=H(uer=>{"use strict";Object.defineProperty(uer,Symbol.toStringTag,{value:"Module"});var iRn=nRn(),gAo=NZ(),AAo=Bf();function dAo(e){if(e!=null)return AAo.isArrayLike(e)?iRn.sample(gAo.toArray(e)):iRn.sample(Object.values(e))}uer.sample=dAo});var der=H(Aer=>{"use strict";Object.defineProperty(Aer,Symbol.toStringTag,{value:"Module"});function pAo(e,t){if(t==null&&(t=e,e=0),e>=t)throw new Error("Invalid input: The maximum value must be greater than the minimum value.");return Math.random()*(t-e)+e}Aer.random=pAo});var fer=H(per=>{"use strict";Object.defineProperty(per,Symbol.toStringTag,{value:"Module"});var fAo=der();function IAo(e,t){return Math.floor(fAo.random(e,t))}per.randomInt=IAo});var sRn=H(Ier=>{"use strict";Object.defineProperty(Ier,Symbol.toStringTag,{value:"Module"});var hAo=fer();function mAo(e,t){if(t>e.length)throw new Error("Size must be less than or equal to the length of array.");let r=new Array(t),n=new Set;for(let a=e.length-t,o=0;a{"use strict";Object.defineProperty(her,Symbol.toStringTag,{value:"Module"});var oRn=z9();function CAo(e,t,r){return r===void 0&&(r=t,t=void 0),r!==void 0&&(r=oRn.toNumber(r),e=Math.min(e,Number.isNaN(r)?0:r)),t!==void 0&&(t=oRn.toNumber(t),e=Math.max(e,Number.isNaN(t)?0:t)),e}her.clamp=CAo});var aRn=H(mer=>{"use strict";Object.defineProperty(mer,Symbol.toStringTag,{value:"Module"});function _Ao(e){return e instanceof Map}mer.isMap=_Ao});var out=H(Cer=>{"use strict";Object.defineProperty(Cer,Symbol.toStringTag,{value:"Module"});var yAo=aRn();function bAo(e){return yAo.isMap(e)}Cer.isMap=bAo});var i5e=H(_er=>{"use strict";Object.defineProperty(_er,Symbol.toStringTag,{value:"Module"});var EAo=Bf(),SAo=out();function vAo(e){return e==null?[]:EAo.isArrayLike(e)||SAo.isMap(e)?Array.from(e):typeof e=="object"?Object.values(e):[]}_er.toArray=vAo});var ber=H(yer=>{"use strict";Object.defineProperty(yer,Symbol.toStringTag,{value:"Module"});var BAo=sRn(),wAo=A$(),TAo=iIe(),RAo=i5e(),NAo=iT();function DAo(e,t,r){let n=RAo.toArray(e);return(r?wAo.isIterateeCall(e,t,r):t===void 0)?t=1:t=TAo.clamp(NAo.toInteger(t),0,n.length),BAo.sampleSize(n,t)}yer.sampleSize=DAo});var cRn=H(Eer=>{"use strict";Object.defineProperty(Eer,Symbol.toStringTag,{value:"Module"});function kAo(e){let t=e.slice();for(let r=t.length-1;r>=1;r--){let n=Math.floor(Math.random()*(r+1));[t[r],t[n]]=[t[n],t[r]]}return t}Eer.shuffle=kAo});var aut=H(Ser=>{"use strict";Object.defineProperty(Ser,Symbol.toStringTag,{value:"Module"});function xAo(e){return e==null?[]:Object.values(e)}Ser.values=xAo});var dve=H(ver=>{"use strict";Object.defineProperty(ver,Symbol.toStringTag,{value:"Module"});function GAo(e){return e==null}ver.isNil=GAo});var Ter=H(wer=>{"use strict";Object.defineProperty(wer,Symbol.toStringTag,{value:"Module"});var Ber=cRn(),FAo=aut(),ZAo=d$(),LAo=Bf(),VAo=dve(),WAo=moe();function OAo(e){return VAo.isNil(e)?[]:ZAo.isArray(e)?Ber.shuffle(e):LAo.isArrayLike(e)?Ber.shuffle(Array.from(e)):WAo.isObjectLike(e)?Ber.shuffle(FAo.values(e)):[]}wer.shuffle=OAo});var Ner=H(Rer=>{"use strict";Object.defineProperty(Rer,Symbol.toStringTag,{value:"Module"});var PAo=yoe();function MAo(e){return PAo.isNil(e)?0:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}Rer.size=MAo});var ker=H(Der=>{"use strict";Object.defineProperty(Der,Symbol.toStringTag,{value:"Module"});var HAo=A$(),YAo=Bf(),lRn=iT();function QAo(e,t,r){if(!YAo.isArrayLike(e))return[];let n=e.length;r===void 0?r=n:typeof r!="number"&&HAo.isIterateeCall(e,t,r)&&(t=0,r=n),t=lRn.toInteger(t),r=lRn.toInteger(r),t<0?t=Math.max(n+t,0):t=Math.min(t,n),r<0?r=Math.max(n+r,0):r=Math.min(r,n);let a=Math.max(r-t,0),o=new Array(a);for(let l=0;l{"use strict";Object.defineProperty(xer,Symbol.toStringTag,{value:"Module"});var XAo=Bm(),JAo=pX(),UAo=e8(),KAo=t8();function jAo(e,t,r){if(!e)return!1;r!=null&&(t=void 0),t==null&&(t=XAo.identity);let n=Array.isArray(e)?e:Object.values(e);switch(typeof t){case"function":{if(!Array.isArray(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(Fer,Symbol.toStringTag,{value:"Module"});var zAo=iut(),qAo=O3e(),uRn=A$();function $Ao(e,...t){let r=t.length;return r>1&&uRn.isIterateeCall(e,t[0],t[1])?t=[]:r>2&&uRn.isIterateeCall(t[0],t[1],t[2])&&(t=[t[0]]),zAo.orderBy(e,qAo.flatten(t),["asc"])}Fer.sortBy=$Ao});var cut=H(Ler=>{"use strict";Object.defineProperty(Ler,Symbol.toStringTag,{value:"Module"});function edo(e){return e===null}Ler.isNull=edo});var Wer=H(Ver=>{"use strict";Object.defineProperty(Ver,Symbol.toStringTag,{value:"Module"});function tdo(e){return e===void 0}Ver.isUndefined=tdo});var lut=H(Oer=>{"use strict";Object.defineProperty(Oer,Symbol.toStringTag,{value:"Module"});function rdo(e){return Number.isNaN(e)}Oer.isNaN=rdo});var s5e=H(Per=>{"use strict";Object.defineProperty(Per,Symbol.toStringTag,{value:"Module"});var gRn=cut(),ARn=Wer(),ndo=r8(),dRn=lut(),ido=dve(),pRn=Coe(),sdo=cm(),odo=4294967295,ado=odo-1;function cdo(e,t,r=ndo.identity,n){if(ido.isNil(e)||e.length===0)return 0;let a=0,o=e.length,l=sdo.iteratee(r),A=l(t),f=dRn.isNaN(A),I=gRn.isNull(A),C=pRn.isSymbol(A),b=ARn.isUndefined(A);for(;a{"use strict";Object.defineProperty(Mer,Symbol.toStringTag,{value:"Module"});function ldo(e){return typeof e=="symbol"}Mer.isSymbol=ldo});var o5e=H(Yer=>{"use strict";Object.defineProperty(Yer,Symbol.toStringTag,{value:"Module"});function udo(e){return typeof e=="number"||e instanceof Number}Yer.isNumber=udo});var uut=H(Qer=>{"use strict";Object.defineProperty(Qer,Symbol.toStringTag,{value:"Module"});var gdo=s5e(),Ado=yoe(),ddo=cut(),pdo=Her(),fdo=o5e(),Ido=4294967295,hdo=Ido>>>1;function mdo(e,t){if(Ado.isNil(e))return 0;let r=0,n=e.length;if(fdo.isNumber(t)&&t===t&&n<=hdo){for(;r>>1,o=e[a];!ddo.isNull(o)&&!pdo.isSymbol(o)&&oa)}Qer.sortedIndex=mdo});var Jer=H(Xer=>{"use strict";Object.defineProperty(Xer,Symbol.toStringTag,{value:"Module"});var Cdo=uut(),_do=Rk();function ydo(e,t){if(!e?.length)return-1;let r=Cdo.sortedIndex(e,t);return r{"use strict";Object.defineProperty(Uer,Symbol.toStringTag,{value:"Module"});var bdo=s5e();function Edo(e,t,r){return bdo.sortedIndexBy(e,t,r,!0)}Uer.sortedLastIndexBy=Edo});var Aut=H(Ker=>{"use strict";Object.defineProperty(Ker,Symbol.toStringTag,{value:"Module"});var Sdo=gut(),vdo=yoe(),Bdo=cut(),wdo=Her(),Tdo=o5e(),Rdo=4294967295,Ndo=Rdo>>>1;function Ddo(e,t){if(vdo.isNil(e))return 0;let r=e.length;if(!Tdo.isNumber(t)||Number.isNaN(t)||r>Ndo)return Sdo.sortedLastIndexBy(e,t,a=>a);let n=0;for(;n>>1,o=e[a];!Bdo.isNull(o)&&!wdo.isSymbol(o)&&o<=t?n=a+1:r=a}return r}Ker.sortedLastIndex=Ddo});var zer=H(jer=>{"use strict";Object.defineProperty(jer,Symbol.toStringTag,{value:"Module"});var kdo=Aut(),xdo=Rk();function Gdo(e,t){if(!e?.length)return-1;let r=kdo.sortedLastIndex(e,t)-1;return r>=0&&xdo.isEqualsSameValueZero(e[r],t)?r:-1}jer.sortedLastIndexOf=Gdo});var fRn=H(qer=>{"use strict";Object.defineProperty(qer,Symbol.toStringTag,{value:"Module"});function Fdo(e){return e.slice(1)}qer.tail=Fdo});var etr=H($er=>{"use strict";Object.defineProperty($er,Symbol.toStringTag,{value:"Module"});var Zdo=fRn(),Ldo=NZ(),Vdo=Bf();function Wdo(e){return Vdo.isArrayLike(e)?Zdo.tail(Ldo.toArray(e)):[]}$er.tail=Wdo});var IRn=H(ttr=>{"use strict";Object.defineProperty(ttr,Symbol.toStringTag,{value:"Module"});var Odo=iT();function Pdo(e,t,r){return t=r||t===void 0?1:Odo.toInteger(t),e.slice(0,t)}ttr.take=Pdo});var ntr=H(rtr=>{"use strict";Object.defineProperty(rtr,Symbol.toStringTag,{value:"Module"});var Mdo=IRn(),Hdo=NZ(),Ydo=Bf(),Qdo=iT();function Xdo(e,t=1,r){return t=r?1:Qdo.toInteger(t),t<1||!Ydo.isArrayLike(e)?[]:Mdo.take(Hdo.toArray(e),t)}rtr.take=Xdo});var hRn=H(itr=>{"use strict";Object.defineProperty(itr,Symbol.toStringTag,{value:"Module"});var Jdo=iT();function Udo(e,t,r){return t=r||t===void 0?1:Jdo.toInteger(t),t<=0||e.length===0?[]:e.slice(-t)}itr.takeRight=Udo});var otr=H(str=>{"use strict";Object.defineProperty(str,Symbol.toStringTag,{value:"Module"});var Kdo=hRn(),jdo=NZ(),zdo=Bf(),qdo=iT();function $do(e,t=1,r){return t=r?1:qdo.toInteger(t),t<=0||!zdo.isArrayLike(e)?[]:Kdo.takeRight(jdo.toArray(e),t)}str.takeRight=$do});var mRn=H(atr=>{"use strict";Object.defineProperty(atr,Symbol.toStringTag,{value:"Module"});function epo(e){return(...t)=>!e(...t)}atr.negate=epo});var ltr=H(ctr=>{"use strict";Object.defineProperty(ctr,Symbol.toStringTag,{value:"Module"});var tpo=Bm(),rpo=mRn(),npo=NZ(),ipo=v2(),spo=cm();function opo(e,t){if(!ipo.isArrayLikeObject(e))return[];let r=npo.toArray(e),n=r.findLastIndex(rpo.negate(spo.iteratee(t??tpo.identity)));return r.slice(n+1)}ctr.takeRightWhile=opo});var gtr=H(utr=>{"use strict";Object.defineProperty(utr,Symbol.toStringTag,{value:"Module"});var apo=NZ(),cpo=r8(),lpo=n5e(),upo=v2(),gpo=cm();function Apo(e,t){if(!upo.isArrayLikeObject(e))return[];let r=apo.toArray(e),n=r.findIndex(lpo.negate(gpo.iteratee(t??cpo.identity)));return n===-1?r:r.slice(0,n)}utr.takeWhile=Apo});var dtr=H(Atr=>{"use strict";Object.defineProperty(Atr,Symbol.toStringTag,{value:"Module"});var dpo=$3e(),ppo=nIe(),fpo=v2();function Ipo(...e){let t=e.filter(fpo.isArrayLikeObject),r=dpo.flatMapDepth(t,n=>Array.from(n),1);return ppo.uniq(r)}Atr.union=Ipo});var Itr=H(ftr=>{"use strict";Object.defineProperty(ftr,Symbol.toStringTag,{value:"Module"});function hpo(e,t){let r=new Map;for(let n=0;n{"use strict";Object.defineProperty(htr,Symbol.toStringTag,{value:"Module"});function mpo(e,t){return function(...r){return e.apply(this,r.slice(0,t))}}htr.ary=mpo});var put=H(mtr=>{"use strict";Object.defineProperty(mtr,Symbol.toStringTag,{value:"Module"});var Cpo=j3e(),_po=nIe(),ypo=Itr(),bpo=dut(),Epo=z3e(),Spo=v2(),vpo=cm();function Bpo(...e){let t=Cpo.last(e),r=Epo.flattenArrayLike(e);return Spo.isArrayLikeObject(t)||t==null?_po.uniq(r):ypo.uniqBy(r,bpo.ary(vpo.iteratee(t),1))}mtr.unionBy=Bpo});var _tr=H(Ctr=>{"use strict";Object.defineProperty(Ctr,Symbol.toStringTag,{value:"Module"});function wpo(e,t){let r=[];for(let n=0;n!t(l,a))&&r.push(a)}return r}Ctr.uniqWith=wpo});var fut=H(ytr=>{"use strict";Object.defineProperty(ytr,Symbol.toStringTag,{value:"Module"});var Tpo=j3e(),Rpo=nIe(),Npo=_tr(),Dpo=z3e(),kpo=v2();function xpo(...e){let t=Tpo.last(e),r=Dpo.flattenArrayLike(e);return kpo.isArrayLikeObject(t)||t==null?Rpo.uniq(r):Npo.uniqWith(r,t)}ytr.unionWith=xpo});var Etr=H(btr=>{"use strict";Object.defineProperty(btr,Symbol.toStringTag,{value:"Module"});var Gpo=Itr(),Fpo=dut(),Zpo=Bm(),Lpo=v2(),Vpo=cm();function Wpo(e,t=Zpo.identity){return Lpo.isArrayLikeObject(e)?Gpo.uniqBy(Array.from(e),Fpo.ary(Vpo.iteratee(t),1)):[]}btr.uniqBy=Wpo});var vtr=H(Str=>{"use strict";Object.defineProperty(Str,Symbol.toStringTag,{value:"Module"});var Opo=_tr(),Ppo=e5e(),Mpo=Bf();function Hpo(e,t){return Mpo.isArrayLike(e)?typeof t=="function"?Opo.uniqWith(Array.from(e),t):Ppo.uniq(Array.from(e)):[]}Str.uniqWith=Hpo});var wtr=H(Btr=>{"use strict";Object.defineProperty(Btr,Symbol.toStringTag,{value:"Module"});function Ypo(e){let t=0;for(let n=0;nt&&(t=e[n].length);let r=new Array(t);for(let n=0;n{"use strict";Object.defineProperty(Ttr,Symbol.toStringTag,{value:"Module"});var Qpo=wtr(),Xpo=d$(),CRn=v2();function Jpo(e){return!CRn.isArrayLikeObject(e)||!e.length?[]:(e=Xpo.isArray(e)?e:Array.from(e),e=e.filter(t=>CRn.isArrayLikeObject(t)),Qpo.unzip(e))}Ttr.unzip=Jpo});var Ntr=H(Rtr=>{"use strict";Object.defineProperty(Rtr,Symbol.toStringTag,{value:"Module"});var _Rn=wtr(),Upo=d$(),Kpo=v2();function jpo(e,t){if(!Kpo.isArrayLikeObject(e)||!e.length)return[];let r=Upo.isArray(e)?_Rn.unzip(e):_Rn.unzip(Array.from(e,a=>Array.from(a)));if(!t)return r;let n=new Array(r.length);for(let a=0;a{"use strict";Object.defineProperty(Dtr,Symbol.toStringTag,{value:"Module"});var zpo=K3e();function qpo(e,...t){return zpo.difference(e,t)}Dtr.without=qpo});var xtr=H(ktr=>{"use strict";Object.defineProperty(ktr,Symbol.toStringTag,{value:"Module"});var $po=yRn(),efo=v2();function tfo(e,...t){return efo.isArrayLikeObject(e)?$po.without(Array.from(e),...t):[]}ktr.without=tfo});var Ftr=H(Gtr=>{"use strict";Object.defineProperty(Gtr,Symbol.toStringTag,{value:"Module"});var rfo=v2(),nfo=i5e();function ifo(...e){let t=new Map;for(let n=0;n{"use strict";Object.defineProperty(Ztr,Symbol.toStringTag,{value:"Module"});function sfo(e,t,r=1,{partialWindows:n=!1}={}){if(t<=0||!Number.isInteger(t))throw new Error("Size must be a positive integer.");if(r<=0||!Number.isInteger(r))throw new Error("Step must be a positive integer.");let a=[],o=n?e.length:e.length-t+1;for(let l=0;l{"use strict";Object.defineProperty(Vtr,Symbol.toStringTag,{value:"Module"});var ofo=Ult(),afo=tut(),cfo=g$(),bRn=put(),lfo=Ltr(),ufo=Bm(),ERn=v2(),gfo=cm();function Afo(...e){let t=cfo.last(e),r=ufo.identity;!ERn.isArrayLikeObject(t)&&t!=null&&(r=gfo.iteratee(t),e=e.slice(0,-1));let n=e.filter(ERn.isArrayLikeObject),a=bRn.unionBy(...n,r),o=lfo.windowed(n,2).map(([l,A])=>afo.intersectionBy(l,A,r));return ofo.differenceBy(a,bRn.unionBy(...o,r),r)}Vtr.xorBy=Afo});var Ptr=H(Otr=>{"use strict";Object.defineProperty(Otr,Symbol.toStringTag,{value:"Module"});var dfo=Klt(),pfo=rut(),ffo=g$(),SRn=fut(),Ifo=Ltr(),hfo=v2();function mfo(...e){let t=ffo.last(e),r=(l,A)=>l===A;typeof t=="function"&&(r=t,e=e.slice(0,-1));let n=e.filter(hfo.isArrayLikeObject),a=SRn.unionWith(...n,r),o=Ifo.windowed(n,2).map(([l,A])=>pfo.intersectionWith(l,A,r));return dfo.differenceWith(a,SRn.unionWith(...o,r),r)}Otr.xorWith=mfo});var Htr=H(Mtr=>{"use strict";Object.defineProperty(Mtr,Symbol.toStringTag,{value:"Module"});function Cfo(...e){let t=0;for(let a=0;at&&(t=e[a].length);let r=e.length,n=Array(t);for(let a=0;a{"use strict";Object.defineProperty(Ytr,Symbol.toStringTag,{value:"Module"});var _fo=Htr(),yfo=v2();function bfo(...e){return e.length?_fo.zip(...e.filter(t=>yfo.isArrayLikeObject(t))):[]}Ytr.zip=bfo});var hut=H(Xtr=>{"use strict";Object.defineProperty(Xtr,Symbol.toStringTag,{value:"Module"});var Efo=Rk(),Sfo=(e,t,r)=>{let n=e[t];(!(Object.hasOwn(e,t)&&Efo.isEqualsSameValueZero(n,r))||r===void 0&&!(t in e))&&(e[t]=r)};Xtr.assignValue=Sfo});var Utr=H(Jtr=>{"use strict";Object.defineProperty(Jtr,Symbol.toStringTag,{value:"Module"});var vfo=hut();function Bfo(e=[],t=[]){let r={};for(let n=0;n{"use strict";Object.defineProperty(Ktr,Symbol.toStringTag,{value:"Module"});var wfo=cM(),Tfo=P3e(),Rfo=hut(),Nfo=lve(),Dfo=t5e(),kfo=l$(),vRn=lM(),xfo=aM();function Gfo(e,t,r,n){if(e==null&&!vRn.isObject(e))return e;let a;Dfo.isKey(t,e)?a=[t]:Array.isArray(t)?a=t:a=xfo.toPath(t);let o=r(wfo.get(e,a)),l=e;for(let A=0;A{"use strict";Object.defineProperty(jtr,Symbol.toStringTag,{value:"Module"});var Ffo=pve();function Zfo(e,t,r){return Ffo.updateWith(e,t,()=>r,()=>{})}jtr.set=Zfo});var qtr=H(ztr=>{"use strict";Object.defineProperty(ztr,Symbol.toStringTag,{value:"Module"});var Lfo=Htr(),Vfo=a5e(),BRn=Bf();function Wfo(e,t){let r={};if(!BRn.isArrayLike(e))return r;BRn.isArrayLike(t)||(t=[]);let n=Lfo.zip(Array.from(e),Array.from(t));for(let a=0;a{"use strict";Object.defineProperty($tr,Symbol.toStringTag,{value:"Module"});var Ofo=Iut(),Pfo=boe();function Mfo(...e){let t=e.pop();if(Pfo.isFunction(t)||(e.push(t),t=void 0),!e?.length)return[];let r=Ofo.unzip(e);return t==null?r:r.map(n=>t(...n))}$tr.zipWith=Mfo});var nrr=H(rrr=>{"use strict";Object.defineProperty(rrr,Symbol.toStringTag,{value:"Module"});var Hfo=iT();function Yfo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");return e=Hfo.toInteger(e),function(...r){if(--e<1)return t.apply(this,r)}}rrr.after=Yfo});var mut=H(irr=>{"use strict";Object.defineProperty(irr,Symbol.toStringTag,{value:"Module"});var Qfo=dut();function Xfo(e,t=e.length,r){return r&&(t=e.length),(Number.isNaN(t)||t<0)&&(t=0),Qfo.ary(e,t)}irr.ary=Xfo});var Cut=H(srr=>{"use strict";Object.defineProperty(srr,Symbol.toStringTag,{value:"Module"});function Jfo(e,...t){try{return e(...t)}catch(r){return r instanceof Error?r:new Error(r)}}srr.attempt=Jfo});var arr=H(orr=>{"use strict";Object.defineProperty(orr,Symbol.toStringTag,{value:"Module"});var Ufo=iT();function Kfo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");let r;return e=Ufo.toInteger(e),function(...n){return--e>0&&(r=t.apply(this,n)),e<=1&&t&&(t=void 0),r}}orr.before=Kfo});var urr=H(lrr=>{"use strict";Object.defineProperty(lrr,Symbol.toStringTag,{value:"Module"});function crr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Arr,Symbol.toStringTag,{value:"Module"});function grr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(frr,Symbol.toStringTag,{value:"Module"});function c5e(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===c5e.placeholder),l=a.length-o.length;return lA===c5e.placeholder),l=a.length-o.length;return a=qfo(a,r),l{"use strict";Object.defineProperty(mrr,Symbol.toStringTag,{value:"Module"});function fve(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===fve.placeholder),l=a.length-o.length;return lA===fve.placeholder),l=a.length-o.length;return a=$fo(a,r),ll===fve.placeholder).length,n=Math.max(e.length-r,0),a=[],o=0;for(let l=0;l{"use strict";Object.defineProperty(_rr,Symbol.toStringTag,{value:"Module"});function eIo(e,t,{signal:r,edges:n}={}){let a,o=null,l=n!=null&&n.includes("leading"),A=n==null||n.includes("trailing"),f=()=>{o!==null&&(e.apply(a,o),a=void 0,o=null)},I=()=>{A&&f(),N()},C=null,b=()=>{C!=null&&clearTimeout(C),C=setTimeout(()=>{C=null,I()},t)},E=()=>{C!==null&&(clearTimeout(C),C=null)},N=()=>{E(),a=void 0,o=null},B=()=>{f()},F=function(...Q){if(r?.aborted)return;a=this,o=Q;let J=C==null;b(),l&&J&&f()};return F.schedule=b,F.cancel=N,F.flush=B,r?.addEventListener("abort",N,{once:!0}),F}_rr.debounce=eIo});var _ut=H(yrr=>{"use strict";Object.defineProperty(yrr,Symbol.toStringTag,{value:"Module"});var tIo=RRn();function rIo(e,t=0,r={}){typeof r!="object"&&(r={});let{leading:n=!1,trailing:a=!0,maxWait:o}=r,l=Array(2);n&&(l[0]="leading"),a&&(l[1]="trailing");let A,f=null,I=tIo.debounce(function(...E){A=e.apply(this,E),f=null},t,{edges:l}),C=function(...E){return o!=null&&(f===null&&(f=Date.now()),Date.now()-f>=o)?(A=e.apply(this,E),f=Date.now(),I.cancel(),I.schedule(),A):(I.apply(this,E),A)},b=()=>(I.flush(),A);return C.cancel=I.cancel,C.flush=b,C}yrr.debounce=rIo});var Err=H(brr=>{"use strict";Object.defineProperty(brr,Symbol.toStringTag,{value:"Module"});function nIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,1,...t)}brr.defer=nIo});var vrr=H(Srr=>{"use strict";Object.defineProperty(Srr,Symbol.toStringTag,{value:"Module"});var iIo=z9();function sIo(e,t,...r){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,iIo.toNumber(t)||0,...r)}Srr.delay=sIo});var wrr=H(Brr=>{"use strict";Object.defineProperty(Brr,Symbol.toStringTag,{value:"Module"});function oIo(e){return function(...t){return e.apply(this,t.reverse())}}Brr.flip=oIo});var Rrr=H(Trr=>{"use strict";Object.defineProperty(Trr,Symbol.toStringTag,{value:"Module"});function aIo(...e){return function(...t){let r=e.length?e[0].apply(this,t):t[0];for(let n=1;n{"use strict";Object.defineProperty(Nrr,Symbol.toStringTag,{value:"Module"});var cIo=O3e(),lIo=Rrr();function uIo(...e){let t=cIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return lIo.flow(...t)}Nrr.flow=uIo});var NRn=H(krr=>{"use strict";Object.defineProperty(krr,Symbol.toStringTag,{value:"Module"});var gIo=Rrr();function AIo(...e){return gIo.flow(...e.reverse())}krr.flowRight=AIo});var Grr=H(xrr=>{"use strict";Object.defineProperty(xrr,Symbol.toStringTag,{value:"Module"});var dIo=O3e(),pIo=NRn();function fIo(...e){let t=dIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return pIo.flowRight(...t)}xrr.flowRight=fIo});var Lrr=H(Zrr=>{"use strict";Object.defineProperty(Zrr,Symbol.toStringTag,{value:"Module"});function Frr(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError("Expected a function");let r=function(...a){let o=t?t.apply(this,a):a[0],l=r.cache;if(l.has(o))return l.get(o);let A=e.apply(this,a);return r.cache=l.set(o,A)||l,A},n=Frr.Cache||Map;return r.cache=new n,r}Frr.Cache=Map;Zrr.memoize=Frr});var Wrr=H(Vrr=>{"use strict";Object.defineProperty(Vrr,Symbol.toStringTag,{value:"Module"});var IIo=iT();function hIo(e=0){return function(...t){return t.at(IIo.toInteger(e))}}Vrr.nthArg=hIo});var DRn=H(Orr=>{"use strict";Object.defineProperty(Orr,Symbol.toStringTag,{value:"Module"});function mIo(e){let t=!1,r;return function(...n){return t||(t=!0,r=e(...n)),r}}Orr.once=mIo});var Mrr=H(Prr=>{"use strict";Object.defineProperty(Prr,Symbol.toStringTag,{value:"Module"});var CIo=DRn();function _Io(e){return CIo.once(e)}Prr.once=_Io});var Yrr=H(Hrr=>{"use strict";Object.defineProperty(Hrr,Symbol.toStringTag,{value:"Module"});var yIo=Bm(),bIo=cm();function EIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");let r=t.flat();return function(...n){let a=Math.min(n.length,r.length),o=[...n];for(let l=0;l{"use strict";Object.defineProperty(yut,Symbol.toStringTag,{value:"Module"});function kRn(e,...t){return xRn(e,GRn,...t)}function xRn(e,t,...r){let n=function(...a){let o=0,l=r.slice().map(f=>f===t?a[o++]:f),A=a.slice(o);return e.apply(this,l.concat(A))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var GRn=Symbol("partial.placeholder");kRn.placeholder=GRn;yut.partial=kRn;yut.partialImpl=xRn});var Jrr=H(Xrr=>{"use strict";Object.defineProperty(Xrr,Symbol.toStringTag,{value:"Module"});var SIo=FRn();function Qrr(e,...t){return SIo.partialImpl(e,Qrr.placeholder,...t)}Qrr.placeholder=Symbol("compat.partial.placeholder");Xrr.partial=Qrr});var WRn=H(but=>{"use strict";Object.defineProperty(but,Symbol.toStringTag,{value:"Module"});function ZRn(e,...t){return LRn(e,VRn,...t)}function LRn(e,t,...r){let n=function(...a){let o=r.filter(C=>C===t).length,l=Math.max(a.length-o,0),A=a.slice(0,l),f=l,I=r.slice().map(C=>C===t?a[f++]:C);return e.apply(this,A.concat(I))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var VRn=Symbol("partialRight.placeholder");ZRn.placeholder=VRn;but.partialRight=ZRn;but.partialRightImpl=LRn});var jrr=H(Krr=>{"use strict";Object.defineProperty(Krr,Symbol.toStringTag,{value:"Module"});var vIo=WRn();function Urr(e,...t){return vIo.partialRightImpl(e,Urr.placeholder,...t)}Urr.placeholder=Symbol("compat.partialRight.placeholder");Krr.partialRight=Urr});var qrr=H(zrr=>{"use strict";Object.defineProperty(zrr,Symbol.toStringTag,{value:"Module"});var BIo=rIe();function wIo(e,...t){let r=BIo.flatten(t);return function(...n){let a=r.map(o=>n[o]).slice(0,n.length);for(let o=a.length;o{"use strict";Object.defineProperty($rr,Symbol.toStringTag,{value:"Module"});function TIo(e,t=e.length-1){return function(...r){let n=r.slice(t),a=r.slice(0,t);for(;a.length{"use strict";Object.defineProperty(enr,Symbol.toStringTag,{value:"Module"});var RIo=ORn();function NIo(e,t=e.length-1){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=e.length-1),RIo.rest(e,t)}enr.rest=NIo});var nnr=H(rnr=>{"use strict";Object.defineProperty(rnr,Symbol.toStringTag,{value:"Module"});function DIo(e,t=0){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=0),function(...r){let n=r[t],a=r.slice(0,t);return n&&a.push(...n),e.apply(this,a)}}rnr.spread=DIo});var snr=H(inr=>{"use strict";Object.defineProperty(inr,Symbol.toStringTag,{value:"Module"});var kIo=_ut();function xIo(e,t=0,r={}){let{leading:n=!0,trailing:a=!0}=r;return kIo.debounce(e,t,{leading:n,maxWait:t,trailing:a})}inr.throttle=xIo});var anr=H(onr=>{"use strict";Object.defineProperty(onr,Symbol.toStringTag,{value:"Module"});var GIo=mut();function FIo(e){return GIo.ary(e,1)}onr.unary=FIo});var lnr=H(cnr=>{"use strict";Object.defineProperty(cnr,Symbol.toStringTag,{value:"Module"});var ZIo=Bm(),LIo=boe();function VIo(e,t){return function(...r){return(LIo.isFunction(t)?t:ZIo.identity).apply(this,[e,...r])}}cnr.wrap=VIo});var gnr=H(unr=>{"use strict";Object.defineProperty(unr,Symbol.toStringTag,{value:"Module"});var PRn=z9(),MRn=eb();function WIo(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=MRn.toString(e),t=MRn.toString(t)):(e=PRn.toNumber(e),t=PRn.toNumber(t)),e+t)}unr.add=WIo});var Eut=H(Anr=>{"use strict";Object.defineProperty(Anr,Symbol.toStringTag,{value:"Module"});function OIo(e,t,r=0){if(t=Number(t),Object.is(t,-0)&&(t="-0"),r=Math.min(Number.parseInt(r,10),292),r){let[n,a=0]=t.toString().split("e"),o=Math[e](+`${n}e${Number(a)+r}`);Object.is(o,-0)&&(o="-0");let[l,A=0]=o.toString().split("e");return+`${l}e${Number(A)-r}`}return Math[e](Number(t))}Anr.decimalAdjust=OIo});var pnr=H(dnr=>{"use strict";Object.defineProperty(dnr,Symbol.toStringTag,{value:"Module"});var PIo=Eut();function MIo(e,t=0){return PIo.decimalAdjust("ceil",e,t)}dnr.ceil=MIo});var Inr=H(fnr=>{"use strict";Object.defineProperty(fnr,Symbol.toStringTag,{value:"Module"});var HRn=z9(),YRn=eb();function HIo(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=YRn.toString(e),t=YRn.toString(t)):(e=HRn.toNumber(e),t=HRn.toNumber(t)),e/t)}fnr.divide=HIo});var mnr=H(hnr=>{"use strict";Object.defineProperty(hnr,Symbol.toStringTag,{value:"Module"});var YIo=Eut();function QIo(e,t=0){return YIo.decimalAdjust("floor",e,t)}hnr.floor=QIo});var QRn=H(Cnr=>{"use strict";Object.defineProperty(Cnr,Symbol.toStringTag,{value:"Module"});function XIo(e,t,r){if(r==null&&(r=t,t=0),t>=r)throw new Error("The maximum value must be greater than the minimum value.");return t<=e&&e{"use strict";Object.defineProperty(_nr,Symbol.toStringTag,{value:"Module"});var JIo=QRn();function UIo(e,t,r){return t||(t=0),r!=null&&!r&&(r=0),t!=null&&typeof t!="number"&&(t=Number(t)),r==null&&t===0||(r!=null&&typeof r!="number"&&(r=Number(r)),r!=null&&t>r&&([t,r]=[r,t]),t===r)?!1:JIo.inRange(e,t,r)}_nr.inRange=UIo});var Enr=H(bnr=>{"use strict";Object.defineProperty(bnr,Symbol.toStringTag,{value:"Module"});function KIo(e){if(!e||e.length===0)return;let t;for(let r=0;rt)&&(t=n)}return t}bnr.max=KIo});var XRn=H(Snr=>{"use strict";Object.defineProperty(Snr,Symbol.toStringTag,{value:"Module"});function jIo(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;an&&(n=l,r=o)}return r}Snr.maxBy=jIo});var Bnr=H(vnr=>{"use strict";Object.defineProperty(vnr,Symbol.toStringTag,{value:"Module"});var zIo=XRn(),qIo=Bm(),$Io=cm();function eho(e,t){if(e!=null)return zIo.maxBy(Array.from(e),$Io.iteratee(t??qIo.identity))}vnr.maxBy=eho});var Sut=H(wnr=>{"use strict";Object.defineProperty(wnr,Symbol.toStringTag,{value:"Module"});var tho=cm();function rho(e,t){if(!e||!e.length)return 0;t!=null&&(t=tho.iteratee(t));let r;for(let n=0;n{"use strict";Object.defineProperty(Tnr,Symbol.toStringTag,{value:"Module"});var nho=Sut();function iho(e){return nho.sumBy(e)}Tnr.sum=iho});var Nnr=H(Rnr=>{"use strict";Object.defineProperty(Rnr,Symbol.toStringTag,{value:"Module"});var sho=vut();function oho(e){let t=e?e.length:0;return t===0?NaN:sho.sum(e)/t}Rnr.mean=oho});var JRn=H(Dnr=>{"use strict";Object.defineProperty(Dnr,Symbol.toStringTag,{value:"Module"});function aho(e,t){let r=0;for(let n=0;n{"use strict";Object.defineProperty(knr,Symbol.toStringTag,{value:"Module"});var cho=JRn();function lho(e,t){return cho.sumBy(e,r=>t(r))/e.length}knr.meanBy=lho});var Gnr=H(xnr=>{"use strict";Object.defineProperty(xnr,Symbol.toStringTag,{value:"Module"});var uho=Bm(),gho=URn(),Aho=cm();function dho(e,t){return e==null?NaN:gho.meanBy(Array.from(e),Aho.iteratee(t??uho.identity))}xnr.meanBy=dho});var Znr=H(Fnr=>{"use strict";Object.defineProperty(Fnr,Symbol.toStringTag,{value:"Module"});function pho(e){if(!e||e.length===0)return;let t;for(let r=0;r{"use strict";Object.defineProperty(Lnr,Symbol.toStringTag,{value:"Module"});function fho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;a{"use strict";Object.defineProperty(Vnr,Symbol.toStringTag,{value:"Module"});var Iho=KRn(),hho=Bm(),mho=cm();function Cho(e,t){if(e!=null)return Iho.minBy(Array.from(e),mho.iteratee(t??hho.identity))}Vnr.minBy=Cho});var Pnr=H(Onr=>{"use strict";Object.defineProperty(Onr,Symbol.toStringTag,{value:"Module"});var jRn=z9(),zRn=eb();function _ho(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=zRn.toString(e),t=zRn.toString(t)):(e=jRn.toNumber(e),t=jRn.toNumber(t)),e*t)}Onr.multiply=_ho});var Hnr=H(Mnr=>{"use strict";Object.defineProperty(Mnr,Symbol.toStringTag,{value:"Module"});function yho(e,t=0,r){return r&&(t=0),Number.parseInt(e,t)}Mnr.parseInt=yho});var Qnr=H(Ynr=>{"use strict";Object.defineProperty(Ynr,Symbol.toStringTag,{value:"Module"});var qRn=iIe(),bho=der(),Eho=fer();function Sho(...e){let t=0,r=1,n=!1;switch(e.length){case 1:{typeof e[0]=="boolean"?n=e[0]:r=e[0];break}case 2:typeof e[1]=="boolean"?(r=e[0],n=e[1]):(t=e[0],r=e[1]);case 3:typeof e[2]=="object"&&e[2]!=null&&e[2][e[1]]===e[0]?(t=0,r=e[0],n=!1):(t=e[0],r=e[1],n=e[2])}return typeof t!="number"&&(t=Number(t)),typeof r!="number"&&(t=Number(r)),t||(t=0),r||(r=0),t>r&&([t,r]=[r,t]),t=qRn.clamp(t,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),r=qRn.clamp(r,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),t===r?t:n?bho.random(t,r+1):Eho.randomInt(t,r+1)}Ynr.random=Sho});var Unr=H(Jnr=>{"use strict";Object.defineProperty(Jnr,Symbol.toStringTag,{value:"Module"});var vho=A$(),Xnr=uve();function Bho(e,t,r){r&&typeof r!="number"&&vho.isIterateeCall(e,t,r)&&(t=r=void 0),e=Xnr.toFinite(e),t===void 0?(t=e,e=0):t=Xnr.toFinite(t),r=r===void 0?e{"use strict";Object.defineProperty(jnr,Symbol.toStringTag,{value:"Module"});var who=A$(),Knr=uve();function Tho(e,t,r){r&&typeof r!="number"&&who.isIterateeCall(e,t,r)&&(t=r=void 0),e=Knr.toFinite(e),t===void 0?(t=e,e=0):t=Knr.toFinite(t),r=r===void 0?e=0;o--)a[o]=e,e+=r;return a}jnr.rangeRight=Tho});var $nr=H(qnr=>{"use strict";Object.defineProperty(qnr,Symbol.toStringTag,{value:"Module"});var Rho=Eut();function Nho(e,t=0){return Rho.decimalAdjust("round",e,t)}qnr.round=Nho});var tir=H(eir=>{"use strict";Object.defineProperty(eir,Symbol.toStringTag,{value:"Module"});var $Rn=z9(),eNn=eb();function Dho(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=eNn.toString(e),t=eNn.toString(t)):(e=$Rn.toNumber(e),t=$Rn.toNumber(t)),e-t)}eir.subtract=Dho});var tNn=H(rir=>{"use strict";Object.defineProperty(rir,Symbol.toStringTag,{value:"Module"});function kho(e){if(!e||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}rir.isPlainObject=kho});var iir=H(nir=>{"use strict";Object.defineProperty(nir,Symbol.toStringTag,{value:"Module"});var rNn=hoe(),nNn=tNn(),iNn=H3e(),sNn=$fe(),Cy=Y3e(),xho=Rk();function Gho(e,t,r){return l5e(e,t,void 0,void 0,void 0,void 0,r)}function l5e(e,t,r,n,a,o,l){let A=l(e,t,r,n,a,o);if(A!==void 0)return A;if(typeof e==typeof t)switch(typeof e){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return e===t;case"number":return e===t||Object.is(e,t);case"function":return e===t;case"object":return u5e(e,t,o,l)}return u5e(e,t,o,l)}function u5e(e,t,r,n){if(Object.is(e,t))return!0;let a=sNn.getTag(e),o=sNn.getTag(t);if(a===Cy.argumentsTag&&(a=Cy.objectTag),o===Cy.argumentsTag&&(o=Cy.objectTag),a!==o)return!1;switch(a){case Cy.stringTag:return e.toString()===t.toString();case Cy.numberTag:{let f=e.valueOf(),I=t.valueOf();return xho.isEqualsSameValueZero(f,I)}case Cy.booleanTag:case Cy.dateTag:case Cy.symbolTag:return Object.is(e.valueOf(),t.valueOf());case Cy.regexpTag:return e.source===t.source&&e.flags===t.flags;case Cy.functionTag:return e===t}r=r??new Map;let l=r.get(e),A=r.get(t);if(l!=null&&A!=null)return l===t;r.set(e,t),r.set(t,e);try{switch(a){case Cy.mapTag:{if(e.size!==t.size)return!1;for(let[f,I]of e.entries())if(!t.has(f)||!l5e(I,t.get(f),f,e,t,r,n))return!1;return!0}case Cy.setTag:{if(e.size!==t.size)return!1;let f=Array.from(e.values()),I=Array.from(t.values());for(let C=0;Cl5e(b,N,void 0,e,t,r,n));if(E===-1)return!1;I.splice(E,1)}return!0}case Cy.arrayTag:case Cy.uint8ArrayTag:case Cy.uint8ClampedArrayTag:case Cy.uint16ArrayTag:case Cy.uint32ArrayTag:case Cy.bigUint64ArrayTag:case Cy.int8ArrayTag:case Cy.int16ArrayTag:case Cy.int32ArrayTag:case Cy.bigInt64ArrayTag:case Cy.float32ArrayTag:case Cy.float64ArrayTag:{if(rNn.isBuffer(e)!==rNn.isBuffer(t)||e.length!==t.length)return!1;for(let f=0;f{"use strict";Object.defineProperty(sir,Symbol.toStringTag,{value:"Module"});function Fho(){}sir.noop=Fho});var cir=H(air=>{"use strict";Object.defineProperty(air,Symbol.toStringTag,{value:"Module"});var Zho=iir(),Lho=oir();function Vho(e,t){return Zho.isEqualWith(e,t,Lho.noop)}air.isEqual=Vho});var uir=H(lir=>{"use strict";Object.defineProperty(lir,Symbol.toStringTag,{value:"Module"});function Who(...e){}lir.noop=Who});var But=H(gir=>{"use strict";Object.defineProperty(gir,Symbol.toStringTag,{value:"Module"});function Oho(e){let t=e?.constructor,r=typeof t=="function"?t.prototype:Object.prototype;return e===r}gir.isPrototype=Oho});var p$=H(Air=>{"use strict";Object.defineProperty(Air,Symbol.toStringTag,{value:"Module"});var Pho=Xlt();function Mho(e){return Pho.isTypedArray(e)}Air.isTypedArray=Mho});var g5e=H(dir=>{"use strict";Object.defineProperty(dir,Symbol.toStringTag,{value:"Module"});var Hho=iT();function Yho(e,t){if(e=Hho.toInteger(e),e<1||!Number.isSafeInteger(e))return[];let r=new Array(e);for(let n=0;n{"use strict";Object.defineProperty(pir,Symbol.toStringTag,{value:"Module"});var Qho=hoe(),Xho=But(),Jho=Bf(),Uho=p$(),Kho=g5e();function jho(e){if(Jho.isArrayLike(e))return zho(e);let t=Object.keys(Object(e));return Xho.isPrototype(e)?t.filter(r=>r!=="constructor"):t}function zho(e){let t=Kho.times(e.length,a=>`${a}`),r=new Set(t);Qho.isBuffer(e)&&(r.add("offset"),r.add("parent")),Uho.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=Object.keys(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}pir.keys=jho});var Iir=H(fir=>{"use strict";Object.defineProperty(fir,Symbol.toStringTag,{value:"Module"});var qho=n8(),$ho=Rk();function emo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(hir,Symbol.toStringTag,{value:"Module"});var rmo=hoe(),nmo=But(),imo=Bf(),smo=p$(),omo=g5e();function amo(e){if(e==null)return[];switch(typeof e){case"object":case"function":return imo.isArrayLike(e)?lmo(e):nmo.isPrototype(e)?cmo(e):wut(e);default:return wut(Object(e))}}function wut(e){let t=[];for(let r in e)t.push(r);return t}function cmo(e){return wut(e).filter(r=>r!=="constructor")}function lmo(e){let t=omo.times(e.length,a=>`${a}`),r=new Set(t);rmo.isBuffer(e)&&(r.add("offset"),r.add("parent")),smo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=wut(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}hir.keysIn=amo});var Cir=H(mir=>{"use strict";Object.defineProperty(mir,Symbol.toStringTag,{value:"Module"});var umo=fX(),gmo=Rk();function Amo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(_ir,Symbol.toStringTag,{value:"Module"});var pmo=fX(),fmo=Rk();function Imo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(bir,Symbol.toStringTag,{value:"Module"});var mmo=n8(),Cmo=Rk();function _mo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(vir,Symbol.toStringTag,{value:"Module"});var bmo=ave(),oNn=$fe(),zC=Y3e(),Emo=d$(),Smo=p$();function vmo(e){if(bmo.isPrimitive(e))return e;let t=oNn.getTag(e);if(!Bmo(e))return{};if(Emo.isArray(e)){let n=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(n.index=e.index,n.input=e.input),n}if(Smo.isTypedArray(e)){let n=e,a=n.constructor;return new a(n.buffer,n.byteOffset,n.length)}if(t===zC.arrayBufferTag)return new ArrayBuffer(e.byteLength);if(t===zC.dataViewTag){let n=e,a=n.buffer,o=n.byteOffset,l=n.byteLength,A=new ArrayBuffer(l),f=new Uint8Array(a,o,l);return new Uint8Array(A).set(f),new DataView(A)}if(t===zC.booleanTag||t===zC.numberTag||t===zC.stringTag){let n=e.constructor,a=new n(e.valueOf());return t===zC.stringTag?Tmo(a,e):Sir(a,e),a}if(t===zC.dateTag)return new Date(Number(e));if(t===zC.regexpTag){let n=e,a=new RegExp(n.source,n.flags);return a.lastIndex=n.lastIndex,a}if(t===zC.symbolTag)return Object(Symbol.prototype.valueOf.call(e));if(t===zC.mapTag){let n=e,a=new Map;return n.forEach((o,l)=>{a.set(l,o)}),a}if(t===zC.setTag){let n=e,a=new Set;return n.forEach(o=>{a.add(o)}),a}if(t===zC.argumentsTag){let n=e,a={};return Sir(a,n),a.length=n.length,a[Symbol.iterator]=n[Symbol.iterator],a}let r={};return Rmo(r,e),Sir(r,e),wmo(r,e),r}function Bmo(e){switch(oNn.getTag(e)){case zC.argumentsTag:case zC.arrayTag:case zC.arrayBufferTag:case zC.dataViewTag:case zC.booleanTag:case zC.dateTag:case zC.float32ArrayTag:case zC.float64ArrayTag:case zC.int8ArrayTag:case zC.int16ArrayTag:case zC.int32ArrayTag:case zC.mapTag:case zC.numberTag:case zC.objectTag:case zC.regexpTag:case zC.setTag:case zC.stringTag:case zC.symbolTag:case zC.uint8ArrayTag:case zC.uint8ClampedArrayTag:case zC.uint16ArrayTag:case zC.uint32ArrayTag:return!0;default:return!1}}function Sir(e,t){for(let r in t)Object.hasOwn(t,r)&&(e[r]=t[r])}function wmo(e,t){let r=Object.getOwnPropertySymbols(t);for(let n=0;n=r)&&(e[n]=t[n])}function Rmo(e,t){let r=Object.getPrototypeOf(t);r!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,r)}vir.clone=vmo});var wir=H(Bir=>{"use strict";Object.defineProperty(Bir,Symbol.toStringTag,{value:"Module"});var aNn=Tut();function Nmo(e,t){if(!t)return aNn.clone(e);let r=t(e);return r!==void 0?r:aNn.clone(e)}Bir.cloneWith=Nmo});var Rir=H(Tir=>{"use strict";Object.defineProperty(Tir,Symbol.toStringTag,{value:"Module"});var Dmo=n8(),kmo=hut(),xmo=lM();function Gmo(e,t){let r=xmo.isObject(e)?Object.create(e):{};if(t!=null){let n=Dmo.keys(t);for(let a=0;a{"use strict";Object.defineProperty(Nir,Symbol.toStringTag,{value:"Module"});var Fmo=yoe(),Zmo=A$(),Lmo=Rk();function Vmo(e,...t){e=Object(e);let r=Object.prototype,n=t.length,a=n>2?t[2]:void 0;a&&Zmo.isIterateeCall(t[0],t[1],a)&&(n=1);for(let o=0;o{"use strict";Object.defineProperty(Dir,Symbol.toStringTag,{value:"Module"});function Wmo(e){if(typeof e!="object"||e==null)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!=="[object Object]"){let r=e[Symbol.toStringTag];return r==null||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable?!1:e.toString()===`[object ${r}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}Dir.isPlainObject=Wmo});var xir=H(kir=>{"use strict";Object.defineProperty(kir,Symbol.toStringTag,{value:"Module"});var d5e=sIe();function Omo(e,...t){e=Object(e);for(let r=0;r{"use strict";Object.defineProperty(Gir,Symbol.toStringTag,{value:"Module"});function Ymo(e,t){return Object.keys(e).find(n=>t(e[n],n,e))}Gir.findKey=Ymo});var Zir=H(Fir=>{"use strict";Object.defineProperty(Fir,Symbol.toStringTag,{value:"Module"});var Qmo=cNn(),Xmo=r8(),Jmo=lM(),Umo=cm();function Kmo(e,t){if(!Jmo.isObject(e))return;let r=Umo.iteratee(t??Xmo.identity);return Qmo.findKey(e,r)}Fir.findKey=Kmo});var Vir=H(Lir=>{"use strict";Object.defineProperty(Lir,Symbol.toStringTag,{value:"Module"});var jmo=r8(),zmo=lM(),qmo=cm();function $mo(e,t){if(!zmo.isObject(e))return;let r=qmo.iteratee(t??jmo.identity);return Object.keys(e).findLast(a=>r(e[a],a,e))}Lir.findLastKey=$mo});var Oir=H(Wir=>{"use strict";Object.defineProperty(Wir,Symbol.toStringTag,{value:"Module"});var eCo=Bm();function tCo(e,t=eCo.identity){if(e==null)return e;for(let r in e)if(t(e[r],r,e)===!1)break;return e}Wir.forIn=tCo});var Mir=H(Pir=>{"use strict";Object.defineProperty(Pir,Symbol.toStringTag,{value:"Module"});var rCo=Bm();function nCo(e,t=rCo.identity){if(e==null)return e;let r=[];for(let n in e)r.push(n);for(let n=r.length-1;n>=0;n--){let a=r[n];if(t(e[a],a,e)===!1)break}return e}Pir.forInRight=nCo});var Yir=H(Hir=>{"use strict";Object.defineProperty(Hir,Symbol.toStringTag,{value:"Module"});var iCo=n8(),sCo=Bm();function oCo(e,t=sCo.identity){if(e==null)return e;let r=Object(e),n=iCo.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Qir,Symbol.toStringTag,{value:"Module"});var aCo=n8(),cCo=Bm();function lCo(e,t=cCo.identity){if(e==null)return e;let r=Object(e),n=aCo.keys(e);for(let a=n.length-1;a>=0;--a){let o=n[a];if(t(r[o],o,r)===!1)break}return e}Qir.forOwnRight=lCo});var Uir=H(Jir=>{"use strict";Object.defineProperty(Jir,Symbol.toStringTag,{value:"Module"});var uCo=Bf();function gCo(e){if(!uCo.isArrayLike(e))return{};let t={};for(let r=0;r{"use strict";Object.defineProperty(Kir,Symbol.toStringTag,{value:"Module"});var ACo=n8();function dCo(e){return e==null?[]:ACo.keys(e).filter(t=>typeof e[t]=="function")}Kir.functions=dCo});var qir=H(zir=>{"use strict";Object.defineProperty(zir,Symbol.toStringTag,{value:"Module"});var pCo=boe();function fCo(e){if(e==null)return[];let t=[];for(let r in e)pCo.isFunction(e[r])&&t.push(r);return t}zir.functionsIn=fCo});var esr=H($ir=>{"use strict";Object.defineProperty($ir,Symbol.toStringTag,{value:"Module"});var ICo=ove(),hCo=lve(),mCo=tIe(),CCo=aM();function _Co(e,t){if(e==null)return!1;let r;if(Array.isArray(t)?r=t:typeof t=="string"&&ICo.isDeepKey(t)&&e[t]==null?r=CCo.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(tsr,Symbol.toStringTag,{value:"Module"});function yCo(e){let t={},r=Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(rsr,Symbol.toStringTag,{value:"Module"});var bCo=lNn();function ECo(e){return bCo.invert(e)}rsr.invert=ECo});var ssr=H(isr=>{"use strict";Object.defineProperty(isr,Symbol.toStringTag,{value:"Module"});var SCo=Bm(),vCo=yoe(),BCo=cm();function wCo(e,t){let r={};if(vCo.isNil(e))return r;t==null&&(t=SCo.identity);let n=Object.keys(e),a=BCo.iteratee(t);for(let o=0;o{"use strict";Object.defineProperty(osr,Symbol.toStringTag,{value:"Module"});function TCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(asr,Symbol.toStringTag,{value:"Module"});var RCo=Bm(),NCo=uNn(),DCo=cm();function kCo(e,t=RCo.identity){return e==null?{}:NCo.mapKeys(e,DCo.iteratee(t))}asr.mapKeys=kCo});var gNn=H(lsr=>{"use strict";Object.defineProperty(lsr,Symbol.toStringTag,{value:"Module"});function xCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(usr,Symbol.toStringTag,{value:"Module"});var GCo=Bm(),FCo=gNn(),ZCo=cm();function LCo(e,t=GCo.identity){return e==null?{}:FCo.mapValues(e,ZCo.iteratee(t))}usr.mapValues=LCo});var ANn=H(Asr=>{"use strict";Object.defineProperty(Asr,Symbol.toStringTag,{value:"Module"});var VCo=ave(),WCo=Xlt();function OCo(e){if(VCo.isPrimitive(e))return e;if(Array.isArray(e)||WCo.isTypedArray(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);let r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp){let n=new r(e);return n.lastIndex=e.lastIndex,n}if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let n;return e instanceof AggregateError?n=new r(e.errors,e.message,{cause:e.cause}):n=new r(e.message,{cause:e.cause}),n.stack=e.stack,Object.assign(n,e),n}if(typeof File<"u"&&e instanceof File)return new r([e],e.name,{type:e.type,lastModified:e.lastModified});if(typeof e=="object"){let n=Object.create(t);return Object.assign(n,e)}return e}Asr.clone=OCo});var Dut=H(fsr=>{"use strict";Object.defineProperty(fsr,Symbol.toStringTag,{value:"Module"});var dNn=cve(),PCo=P3e(),MCo=ANn(),HCo=hoe(),YCo=ave(),QCo=H3e(),pNn=tIe(),XCo=v2(),fNn=moe(),dsr=sIe(),psr=p$();function JCo(e,...t){let r=t.slice(0,-1),n=t[t.length-1],a=e;for(let o=0;o{"use strict";Object.defineProperty(Isr,Symbol.toStringTag,{value:"Module"});var UCo=Dut(),KCo=oir();function jCo(e,...t){return UCo.mergeWith(e,...t,KCo.noop)}Isr.merge=jCo});var kut=H(msr=>{"use strict";Object.defineProperty(msr,Symbol.toStringTag,{value:"Module"});var zCo=H3e();function qCo(e){let t=[];for(;e;)t.push(...zCo.getSymbols(e)),e=Object.getPrototypeOf(e);return t}msr.getSymbolsIn=qCo});var _sr=H(Csr=>{"use strict";Object.defineProperty(Csr,Symbol.toStringTag,{value:"Module"});var $Co=J3e(),hNn=fX(),INn=r5e(),mNn=kut(),e_o=ove(),t_o=rIe(),r_o=sIe();function n_o(e,...t){if(e==null)return{};t=t_o.flatten(t);let r=i_o(e,t);for(let n=0;nArray.isArray(n)||e_o.isDeepKey(n))?o_o(e):s_o(e)}function s_o(e){let t={},r=[...hNn.keysIn(e),...mNn.getSymbolsIn(e)];for(let n=0;n{if(!r_o.isPlainObject(o))return o})}return t}Csr.omit=n_o});var bsr=H(ysr=>{"use strict";Object.defineProperty(ysr,Symbol.toStringTag,{value:"Module"});var a_o=fX(),c_o=_oe(),l_o=kut(),u_o=r8(),g_o=Bf(),A_o=Coe(),d_o=cm();function p_o(e,t){if(e==null)return{};let r={},n=d_o.iteratee(t??u_o.identity),a=g_o.isArrayLike(e)?c_o.range(0,e.length):[...a_o.keysIn(e),...l_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(Esr,Symbol.toStringTag,{value:"Module"});var f_o=cM(),I_o=U3e(),h_o=a5e(),m_o=Bf(),C_o=dve();function __o(e,...t){if(C_o.isNil(e))return{};let r={};for(let n=0;n{"use strict";Object.defineProperty(vsr,Symbol.toStringTag,{value:"Module"});var y_o=fX(),b_o=_oe(),E_o=kut(),S_o=r8(),v_o=Bf(),B_o=Coe(),w_o=cm();function T_o(e,t){if(e==null)return{};let r=w_o.iteratee(t??S_o.identity),n={},a=v_o.isArrayLike(e)?b_o.range(0,e.length):[...y_o.keysIn(e),...E_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(wsr,Symbol.toStringTag,{value:"Module"});var R_o=cM();function N_o(e){return function(t){return R_o.get(e,t)}}wsr.propertyOf=N_o});var Nsr=H(Rsr=>{"use strict";Object.defineProperty(Rsr,Symbol.toStringTag,{value:"Module"});var D_o=t5e(),k_o=l$(),x_o=aM(),G_o=eb();function F_o(e,t,r){D_o.isKey(t,e)?t=[t]:Array.isArray(t)||(t=x_o.toPath(G_o.toString(t)));let n=Math.max(t.length,1);for(let a=0;a{"use strict";Object.defineProperty(Dsr,Symbol.toStringTag,{value:"Module"});var Z_o=pve();function L_o(e,t,r,n){let a;return typeof n=="function"?a=n:a=()=>{},Z_o.updateWith(e,t,()=>r,a)}Dsr.setWith=L_o});var Gsr=H(xsr=>{"use strict";Object.defineProperty(xsr,Symbol.toStringTag,{value:"Module"});var V_o=cve(),W_o=A5e();function O_o(e,...t){let r=V_o.cloneDeep(e);return W_o.defaults(r,...t)}xsr.toDefaulted=O_o});var Zsr=H(Fsr=>{"use strict";Object.defineProperty(Fsr,Symbol.toStringTag,{value:"Module"});function P_o(e){let t=new Array(e.size),r=e.keys(),n=e.values();for(let a=0;a{"use strict";Object.defineProperty(Lsr,Symbol.toStringTag,{value:"Module"});function M_o(e){let t=new Array(e.size),r=e.values();for(let n=0;n{"use strict";Object.defineProperty(Wsr,Symbol.toStringTag,{value:"Module"});var H_o=n8(),Y_o=Zsr(),Q_o=Vsr();function X_o(e){if(e==null)return[];if(e instanceof Set)return Q_o.setToEntries(e);if(e instanceof Map)return Y_o.mapToEntries(e);let t=H_o.keys(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(Psr,Symbol.toStringTag,{value:"Module"});var J_o=fX(),U_o=Zsr(),K_o=Vsr();function j_o(e){if(e==null)return[];if(e instanceof Set)return K_o.setToEntries(e);if(e instanceof Map)return U_o.mapToEntries(e);let t=J_o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(Hsr,Symbol.toStringTag,{value:"Module"});var z_o=hoe();function q_o(e){return z_o.isBuffer(e)}Hsr.isBuffer=q_o});var Qsr=H(Ysr=>{"use strict";Object.defineProperty(Ysr,Symbol.toStringTag,{value:"Module"});var $_o=Bm(),e0o=boe(),t0o=qlt(),r0o=xut(),n0o=lM(),i0o=p$(),s0o=cm();function o0o(e,t=$_o.identity,r){let n=Array.isArray(e)||r0o.isBuffer(e)||i0o.isTypedArray(e);return t=s0o.iteratee(t),r==null&&(n?r=[]:n0o.isObject(e)&&e0o.isFunction(e.constructor)?r=Object.create(Object.getPrototypeOf(e)):r={}),e==null||t0o.forEach(e,(a,o,l)=>t(r,a,o,l)),r}Ysr.transform=o0o});var Jsr=H(Xsr=>{"use strict";Object.defineProperty(Xsr,Symbol.toStringTag,{value:"Module"});var a0o=pve();function c0o(e,t,r){return a0o.updateWith(e,t,r,()=>{})}Xsr.update=c0o});var Ksr=H(Usr=>{"use strict";Object.defineProperty(Usr,Symbol.toStringTag,{value:"Module"});var l0o=fX();function u0o(e){let t=l0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(jsr,Symbol.toStringTag,{value:"Module"});function g0o(e){return typeof e=="function"}jsr.isFunction=g0o});var $sr=H(qsr=>{"use strict";Object.defineProperty(qsr,Symbol.toStringTag,{value:"Module"});function A0o(e){return Number.isSafeInteger(e)&&e>=0}qsr.isLength=A0o});var tor=H(eor=>{"use strict";Object.defineProperty(eor,Symbol.toStringTag,{value:"Module"});var CNn=Function.prototype.toString,d0o=/[\\^$.*+?()[\]{}|]/g,p0o=RegExp(`^${CNn.call(Object.prototype.hasOwnProperty).replace(d0o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")}$`);function f0o(e){if(typeof e!="function")return!1;if(globalThis?.["__core-js_shared__"]!=null)throw new Error("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return p0o.test(CNn.call(e))}eor.isNative=f0o});var nor=H(ror=>{"use strict";Object.defineProperty(ror,Symbol.toStringTag,{value:"Module"});function I0o(e){return e===null}ror.isNull=I0o});var sor=H(ior=>{"use strict";Object.defineProperty(ior,Symbol.toStringTag,{value:"Module"});var h0o=Wer();function m0o(e){return h0o.isUndefined(e)}ior.isUndefined=m0o});var Gut=H(oor=>{"use strict";Object.defineProperty(oor,Symbol.toStringTag,{value:"Module"});function C0o(e,t){if(t==null)return!0;if(e==null)return Object.keys(t).length===0;let r=Object.keys(t);for(let n=0;n{"use strict";Object.defineProperty(aor,Symbol.toStringTag,{value:"Module"});var _0o=Gut(),y0o=xzt();function b0o(e){return e=y0o.cloneDeep(e),function(t){return _0o.conformsTo(t,e)}}aor.conforms=b0o});var _Nn=H(lor=>{"use strict";Object.defineProperty(lor,Symbol.toStringTag,{value:"Module"});function E0o(e){return e instanceof ArrayBuffer}lor.isArrayBuffer=E0o});var gor=H(uor=>{"use strict";Object.defineProperty(uor,Symbol.toStringTag,{value:"Module"});var S0o=_Nn();function v0o(e){return S0o.isArrayBuffer(e)}uor.isArrayBuffer=v0o});var dor=H(Aor=>{"use strict";Object.defineProperty(Aor,Symbol.toStringTag,{value:"Module"});function B0o(e){return typeof e=="boolean"||e instanceof Boolean}Aor.isBoolean=B0o});var yNn=H(por=>{"use strict";Object.defineProperty(por,Symbol.toStringTag,{value:"Module"});function w0o(e){return e instanceof Date}por.isDate=w0o});var hor=H(Ior=>{"use strict";Object.defineProperty(Ior,Symbol.toStringTag,{value:"Module"});var T0o=yNn();function R0o(e){return T0o.isDate(e)}Ior.isDate=R0o});var Cor=H(mor=>{"use strict";Object.defineProperty(mor,Symbol.toStringTag,{value:"Module"});var N0o=moe(),D0o=sIe();function k0o(e){return N0o.isObjectLike(e)&&e.nodeType===1&&!D0o.isPlainObject(e)}mor.isElement=k0o});var yor=H(_or=>{"use strict";Object.defineProperty(_or,Symbol.toStringTag,{value:"Module"});var x0o=tIe(),G0o=Bf(),F0o=p$(),Z0o=hoe(),L0o=But();function V0o(e){if(e==null)return!0;if(G0o.isArrayLike(e))return typeof e.splice!="function"&&typeof e!="string"&&!Z0o.isBuffer(e)&&!F0o.isTypedArray(e)&&!x0o.isArguments(e)?!1:e.length===0;if(typeof e=="object"){if(e instanceof Map||e instanceof Set)return e.size===0;let t=Object.keys(e);return L0o.isPrototype(e)?t.filter(r=>r!=="constructor").length===0:t.length===0}return!0}_or.isEmpty=V0o});var bNn=H(bor=>{"use strict";Object.defineProperty(bor,Symbol.toStringTag,{value:"Module"});function W0o(e,t){if(!Number.isInteger(e)||e<0)throw new Error("n must be a non-negative integer.");let r=0;return(...n)=>{if(++r>=e)return t(...n)}}bor.after=W0o});var vor=H(Sor=>{"use strict";Object.defineProperty(Sor,Symbol.toStringTag,{value:"Module"});var ENn=bNn(),O0o=iir();function Eor(e,t,r){return typeof r!="function"&&(r=()=>{}),O0o.isEqualWith(e,t,(...n)=>{let a=r(...n);if(a!==void 0)return!!a;if(e instanceof Map&&t instanceof Map||e instanceof Set&&t instanceof Set)return Eor(Array.from(e),Array.from(t),ENn.after(2,r))})}Sor.isEqualWith=Eor});var wor=H(Bor=>{"use strict";Object.defineProperty(Bor,Symbol.toStringTag,{value:"Module"});var P0o=$fe();function M0o(e){return P0o.getTag(e)==="[object Error]"}Bor.isError=M0o});var Ror=H(Tor=>{"use strict";Object.defineProperty(Tor,Symbol.toStringTag,{value:"Module"});function H0o(e){return Number.isFinite(e)}Tor.isFinite=H0o});var Dor=H(Nor=>{"use strict";Object.defineProperty(Nor,Symbol.toStringTag,{value:"Module"});function Y0o(e){return Number.isInteger(e)}Nor.isInteger=Y0o});var SNn=H(kor=>{"use strict";Object.defineProperty(kor,Symbol.toStringTag,{value:"Module"});function Q0o(e){return e instanceof RegExp}kor.isRegExp=Q0o});var Gor=H(xor=>{"use strict";Object.defineProperty(xor,Symbol.toStringTag,{value:"Module"});var X0o=SNn();function J0o(e){return X0o.isRegExp(e)}xor.isRegExp=J0o});var Zor=H(For=>{"use strict";Object.defineProperty(For,Symbol.toStringTag,{value:"Module"});function U0o(e){return Number.isSafeInteger(e)}For.isSafeInteger=U0o});var vNn=H(Lor=>{"use strict";Object.defineProperty(Lor,Symbol.toStringTag,{value:"Module"});function K0o(e){return e instanceof Set}Lor.isSet=K0o});var Wor=H(Vor=>{"use strict";Object.defineProperty(Vor,Symbol.toStringTag,{value:"Module"});var j0o=vNn();function z0o(e){return j0o.isSet(e)}Vor.isSet=z0o});var BNn=H(Oor=>{"use strict";Object.defineProperty(Oor,Symbol.toStringTag,{value:"Module"});function q0o(e){return e instanceof WeakMap}Oor.isWeakMap=q0o});var Mor=H(Por=>{"use strict";Object.defineProperty(Por,Symbol.toStringTag,{value:"Module"});var $0o=BNn();function eyo(e){return $0o.isWeakMap(e)}Por.isWeakMap=eyo});var wNn=H(Hor=>{"use strict";Object.defineProperty(Hor,Symbol.toStringTag,{value:"Module"});function tyo(e){return e instanceof WeakSet}Hor.isWeakSet=tyo});var Qor=H(Yor=>{"use strict";Object.defineProperty(Yor,Symbol.toStringTag,{value:"Module"});var ryo=wNn();function nyo(e){return ryo.isWeakSet(e)}Yor.isWeakSet=nyo});var Jor=H(Xor=>{"use strict";Object.defineProperty(Xor,Symbol.toStringTag,{value:"Module"});function iyo(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}Xor.capitalize=iyo});var Kor=H(Uor=>{"use strict";Object.defineProperty(Uor,Symbol.toStringTag,{value:"Module"});var syo=Jor(),oyo=eb();function ayo(e){return syo.capitalize(oyo.toString(e))}Uor.capitalize=ayo});var zor=H(jor=>{"use strict";Object.defineProperty(jor,Symbol.toStringTag,{value:"Module"});var cyo=boe(),TNn=d$(),lyo=lM(),uyo=eb();function gyo(e,...t){if(e==null||!lyo.isObject(e)||TNn.isArray(e)&&t.length===0)return e;let r=[];for(let n=0;n{"use strict";Object.defineProperty(qor,Symbol.toStringTag,{value:"Module"});var Ayo=new Map([["\xC6","Ae"],["\xD0","D"],["\xD8","O"],["\xDE","Th"],["\xDF","ss"],["\xE6","ae"],["\xF0","d"],["\xF8","o"],["\xFE","th"],["\u0110","D"],["\u0111","d"],["\u0126","H"],["\u0127","h"],["\u0131","i"],["\u0132","IJ"],["\u0133","ij"],["\u0138","k"],["\u013F","L"],["\u0140","l"],["\u0141","L"],["\u0142","l"],["\u0149","'n"],["\u014A","N"],["\u014B","n"],["\u0152","Oe"],["\u0153","oe"],["\u0166","T"],["\u0167","t"],["\u017F","s"]]);function dyo(e){e=e.normalize("NFD");let t="";for(let r=0;r="\u0300"&&n<="\u036F"||n>="\uFE20"&&n<="\uFE23"||(t+=Ayo.get(n)??n)}return t}qor.deburr=dyo});var f$=H($or=>{"use strict";Object.defineProperty($or,Symbol.toStringTag,{value:"Module"});var pyo=RNn(),fyo=eb();function Iyo(e){return pyo.deburr(fyo.toString(e))}$or.deburr=Iyo});var oIe=H(Fut=>{"use strict";Object.defineProperty(Fut,Symbol.toStringTag,{value:"Module"});var NNn=/\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;function hyo(e){return Array.from(e.match(NNn)??[])}Fut.CASE_SPLIT_PATTERN=NNn;Fut.words=hyo});var DNn=H(ear=>{"use strict";Object.defineProperty(ear,Symbol.toStringTag,{value:"Module"});var myo=Jor(),Cyo=oIe();function _yo(e){let t=Cyo.words(e);if(t.length===0)return"";let[r,...n]=t;return`${r.toLowerCase()}${n.map(a=>myo.capitalize(a)).join("")}`}ear.camelCase=_yo});var aIe=H(tar=>{"use strict";Object.defineProperty(tar,Symbol.toStringTag,{value:"Module"});var yyo=eb();function byo(e){return typeof e!="string"&&(e=yyo.toString(e)),e.replace(/['\u2019]/g,"")}tar.normalizeForCase=byo});var nar=H(rar=>{"use strict";Object.defineProperty(rar,Symbol.toStringTag,{value:"Module"});var Eyo=f$(),Syo=DNn(),vyo=aIe();function Byo(e){return Syo.camelCase(vyo.normalizeForCase(Eyo.deburr(e)))}rar.camelCase=Byo});var sar=H(iar=>{"use strict";Object.defineProperty(iar,Symbol.toStringTag,{value:"Module"});function wyo(e,t,r){return e==null||t==null?!1:(r==null&&(r=e.length),e.endsWith(t,r))}iar.endsWith=wyo});var kNn=H(oar=>{"use strict";Object.defineProperty(oar,Symbol.toStringTag,{value:"Module"});var Tyo={"&":"&","<":"<",">":">",'"':""","'":"'"};function Ryo(e){return e.replace(/[&<>"']/g,t=>Tyo[t])}oar.escape=Ryo});var Zut=H(aar=>{"use strict";Object.defineProperty(aar,Symbol.toStringTag,{value:"Module"});var Nyo=kNn(),Dyo=eb();function kyo(e){return Nyo.escape(Dyo.toString(e))}aar.escape=kyo});var xNn=H(car=>{"use strict";Object.defineProperty(car,Symbol.toStringTag,{value:"Module"});function xyo(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")}car.escapeRegExp=xyo});var uar=H(lar=>{"use strict";Object.defineProperty(lar,Symbol.toStringTag,{value:"Module"});var Gyo=xNn(),Fyo=eb();function Zyo(e){return Gyo.escapeRegExp(Fyo.toString(e))}lar.escapeRegExp=Zyo});var GNn=H(gar=>{"use strict";Object.defineProperty(gar,Symbol.toStringTag,{value:"Module"});var Lyo=oIe();function Vyo(e){return Lyo.words(e).map(r=>r.toLowerCase()).join("-")}gar.kebabCase=Vyo});var dar=H(Aar=>{"use strict";Object.defineProperty(Aar,Symbol.toStringTag,{value:"Module"});var Wyo=f$(),Oyo=GNn(),Pyo=aIe();function Myo(e){return Oyo.kebabCase(Pyo.normalizeForCase(Wyo.deburr(e)))}Aar.kebabCase=Myo});var FNn=H(par=>{"use strict";Object.defineProperty(par,Symbol.toStringTag,{value:"Module"});var Hyo=oIe();function Yyo(e){return Hyo.words(e).map(r=>r.toLowerCase()).join(" ")}par.lowerCase=Yyo});var Iar=H(far=>{"use strict";Object.defineProperty(far,Symbol.toStringTag,{value:"Module"});var Qyo=f$(),Xyo=FNn(),Jyo=aIe();function Uyo(e){return Xyo.lowerCase(Jyo.normalizeForCase(Qyo.deburr(e)))}far.lowerCase=Uyo});var ZNn=H(har=>{"use strict";Object.defineProperty(har,Symbol.toStringTag,{value:"Module"});function Kyo(e){return e.substring(0,1).toLowerCase()+e.substring(1)}har.lowerFirst=Kyo});var Car=H(mar=>{"use strict";Object.defineProperty(mar,Symbol.toStringTag,{value:"Module"});var jyo=ZNn(),zyo=eb();function qyo(e){return jyo.lowerFirst(zyo.toString(e))}mar.lowerFirst=qyo});var LNn=H(_ar=>{"use strict";Object.defineProperty(_ar,Symbol.toStringTag,{value:"Module"});function $yo(e,t,r=" "){return e.padStart(Math.floor((t-e.length)/2)+e.length,r).padEnd(t,r)}_ar.pad=$yo});var bar=H(yar=>{"use strict";Object.defineProperty(yar,Symbol.toStringTag,{value:"Module"});var ebo=LNn(),tbo=eb();function rbo(e,t,r){return ebo.pad(tbo.toString(e),t,r)}yar.pad=rbo});var Sar=H(Ear=>{"use strict";Object.defineProperty(Ear,Symbol.toStringTag,{value:"Module"});var nbo=eb();function ibo(e,t=0,r=" "){return nbo.toString(e).padEnd(t,r)}Ear.padEnd=ibo});var war=H(Bar=>{"use strict";Object.defineProperty(Bar,Symbol.toStringTag,{value:"Module"});var sbo=eb();function obo(e,t=0,r=" "){return sbo.toString(e).padStart(t,r)}Bar.padStart=obo});var Rar=H(Tar=>{"use strict";Object.defineProperty(Tar,Symbol.toStringTag,{value:"Module"});var abo=Number.MAX_SAFE_INTEGER;Tar.MAX_SAFE_INTEGER=abo});var Dar=H(Nar=>{"use strict";Object.defineProperty(Nar,Symbol.toStringTag,{value:"Module"});var cbo=A$(),lbo=Rar(),ubo=iT(),gbo=eb();function Abo(e,t,r){return(r?cbo.isIterateeCall(e,t,r):t===void 0)?t=1:t=ubo.toInteger(t),t<1||t>lbo.MAX_SAFE_INTEGER?"":gbo.toString(e).repeat(t)}Nar.repeat=Abo});var xar=H(kar=>{"use strict";Object.defineProperty(kar,Symbol.toStringTag,{value:"Module"});var VNn=eb();function dbo(e,t,r){return arguments.length<3?VNn.toString(e):VNn.toString(e).replace(t,r)}kar.replace=dbo});var WNn=H(Gar=>{"use strict";Object.defineProperty(Gar,Symbol.toStringTag,{value:"Module"});var pbo=oIe();function fbo(e){return pbo.words(e).map(r=>r.toLowerCase()).join("_")}Gar.snakeCase=fbo});var Zar=H(Far=>{"use strict";Object.defineProperty(Far,Symbol.toStringTag,{value:"Module"});var Ibo=f$(),hbo=WNn(),mbo=aIe();function Cbo(e){return hbo.snakeCase(mbo.normalizeForCase(Ibo.deburr(e)))}Far.snakeCase=Cbo});var War=H(Lar=>{"use strict";Object.defineProperty(Lar,Symbol.toStringTag,{value:"Module"});var _bo=eb();function ybo(e,t,r){return _bo.toString(e).split(t,r)}Lar.split=ybo});var Par=H(Oar=>{"use strict";Object.defineProperty(Oar,Symbol.toStringTag,{value:"Module"});var bbo=f$(),Ebo=oIe(),Sbo=aIe();function vbo(e){let t=Ebo.words(Sbo.normalizeForCase(bbo.deburr(e)).trim()),r="";for(let n=0;n{"use strict";Object.defineProperty(Mar,Symbol.toStringTag,{value:"Module"});function Bbo(e,t,r){return e==null||t==null?!1:(r==null&&(r=0),e.startsWith(t,r))}Mar.startsWith=Bbo});var Yar=H(Wut=>{"use strict";Object.defineProperty(Wut,Symbol.toStringTag,{value:"Module"});var wbo=Zut(),Tbo=Cut(),ONn=A5e(),Rbo=eb(),Nbo=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Dbo=/['\n\r\u2028\u2029\\]/g,Lut=/($^)/,kbo=new Map([["\\","\\"],["'","'"],[` -`,"n"],["\r","r"],["\u2028","u2028"],["\u2029","u2029"]]);function xbo(e){return`\\${kbo.get(e)}`}var PNn=/<%=([\s\S]+?)%>/g,Vut={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:PNn,variable:"",imports:{_:{escape:wbo.escape,template:MNn}}};function MNn(e,t,r){e=Rbo.toString(e),r&&(t=Vut),t=ONn.defaults({...t},Vut);let n=new RegExp([t.escape?.source??Lut.source,t.interpolate?.source??Lut.source,t.interpolate===PNn?Nbo.source:Lut.source,t.evaluate?.source??Lut.source,"$"].join("|"),"g"),a=0,o=!1,l="__p += ''";for(let N of e.matchAll(n)){let[B,F,Q,J,ae]=N,{index:ne}=N;l+=` + '${e.slice(a,ne).replace(Dbo,xbo)}'`,F&&(l+=` + _.escape(${F})`),Q?l+=` + ((${Q}) == null ? '' : ${Q})`:J&&(l+=` + ((${J}) == null ? '' : ${J})`),ae&&(l+=`; +`,a)}while(n!==-1);return o+=e.substr(a),o};iwn.exports={stringReplaceAll:jno,stringEncaseCRLFWithFirstIndex:zno}});var uwn=H((K5l,lwn)=>{"use strict";var qno=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,own=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,$no=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,eio=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,tio=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function cwn(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):tio.get(e)||e}function rio(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n){let l=Number(o);if(!Number.isNaN(l))r.push(l);else if(a=o.match($no))r.push(a[2].replace(eio,(A,f,I)=>f?cwn(f):I));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function nio(e){own.lastIndex=0;let t=[],r;for(;(r=own.exec(e))!==null;){let n=r[1];if(r[2]){let a=rio(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function awn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);n=o.length>0?n[a](...o):n[a]}return n}lwn.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(qno,(o,l,A,f,I,C)=>{if(l)a.push(cwn(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:awn(e,r)(b)),r.push({inverse:A,styles:nio(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(awn(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var qK=H((j5l,Iwn)=>{"use strict";var F3e=Dlt(),{stdout:D7t,stderr:k7t}=R7t(),{stringReplaceAll:iio,stringEncaseCRLFWithFirstIndex:sio}=swn(),{isArray:klt}=Array,Awn=["ansi","ansi","ansi256","ansi16m"],nve=Object.create(null),oio=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=D7t?D7t.level:0;e.level=t.level===void 0?r:t.level},x7t=class{constructor(t){return dwn(t)}},dwn=e=>{let t={};return oio(t,e),t.template=(...r)=>fwn(t.template,...r),Object.setPrototypeOf(t,xlt.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=x7t,t.template};function xlt(e){return dwn(e)}for(let[e,t]of Object.entries(F3e))nve[e]={get(){let r=Glt(this,G7t(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};nve.visible={get(){let e=Glt(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var pwn=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of pwn)nve[e]={get(){let{level:t}=this;return function(...r){let n=G7t(F3e.color[Awn[t]][e](...r),F3e.color.close,this._styler);return Glt(this,n,this._isEmpty)}}};for(let e of pwn){let t="bg"+e[0].toUpperCase()+e.slice(1);nve[t]={get(){let{level:r}=this;return function(...n){let a=G7t(F3e.bgColor[Awn[r]][e](...n),F3e.bgColor.close,this._styler);return Glt(this,a,this._isEmpty)}}}}var aio=Object.defineProperties(()=>{},{...nve,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),G7t=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},Glt=(e,t,r)=>{let n=(...a)=>klt(a[0])&&klt(a[0].raw)?gwn(n,fwn(n,...a)):gwn(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,aio),n._generator=e,n._styler=t,n._isEmpty=r,n},gwn=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=iio(t,r.close,r.open),r=r.parent;let o=t.indexOf(` +`);return o!==-1&&(t=sio(t,a,n,o)),n+t+a},N7t,fwn=(e,...t)=>{let[r]=t;if(!klt(r)||!klt(r.raw))return t.join(" ");let n=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";oM.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;oM.find=(e,t)=>e.nodes.find(r=>r.type===t);oM.exceedsLimit=(e,t,r=1,n)=>n===!1||!oM.isInteger(e)||!oM.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=n;oM.escapeNode=(e,t=0,r)=>{let n=e.nodes[t];n&&(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};oM.encloseBrace=e=>e.type!=="brace"||e.commas>>0+e.ranges>>0?!1:(e.invalid=!0,!0);oM.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:!(e.commas>>0+e.ranges>>0)||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;oM.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;oM.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);oM.flatten=(...e)=>{let t=[],r=n=>{for(let a=0;a{"use strict";var hwn=Zlt();mwn.exports=(e,t={})=>{let r=(n,a={})=>{let o=t.escapeInvalid&&hwn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A="";if(n.value)return(o||l)&&hwn.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let f of n.nodes)A+=r(f);return A};return r(e)}});var _wn=H(($5l,Cwn)=>{"use strict";Cwn.exports=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var Rwn=H((eMl,Twn)=>{"use strict";var ywn=_wn(),qfe=(e,t,r)=>{if(ywn(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(ywn(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...r};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let a=String(n.relaxZeros),o=String(n.shorthand),l=String(n.capture),A=String(n.wrap),f=e+":"+t+"="+a+o+l+A;if(qfe.cache.hasOwnProperty(f))return qfe.cache[f].result;let I=Math.min(e,t),C=Math.max(e,t);if(Math.abs(I-C)===1){let F=e+"|"+t;return n.capture?`(${F})`:n.wrap===!1?F:`(?:${F})`}let b=wwn(e)||wwn(t),E={min:e,max:t,a:I,b:C},N=[],B=[];if(b&&(E.isPadded=b,E.maxLen=String(E.max).length),I<0){let F=C<0?Math.abs(C):1;B=bwn(F,Math.abs(I),E,n),I=E.a=0}return C>=0&&(N=bwn(I,C,E,n)),E.negatives=B,E.positives=N,E.result=cio(B,N,n),n.capture===!0?E.result=`(${E.result})`:n.wrap!==!1&&N.length+B.length>1&&(E.result=`(?:${E.result})`),qfe.cache[f]=E,E.result};function cio(e,t,r){let n=F7t(e,t,"-",!1,r)||[],a=F7t(t,e,"",!1,r)||[],o=F7t(e,t,"-?",!0,r)||[];return n.concat(o).concat(a).join("|")}function lio(e,t){let r=1,n=1,a=Swn(e,r),o=new Set([t]);for(;e<=a&&a<=t;)o.add(a),r+=1,a=Swn(e,r);for(a=vwn(t+1,n)-1;e1&&A.count.pop(),A.count.push(C.count[0]),A.string=A.pattern+Bwn(A.count),l=I+1;continue}r.isPadded&&(b=pio(I,r,n)),C.string=b+C.pattern+Bwn(C.count),o.push(C),l=I+1,A=C}return o}function F7t(e,t,r,n,a){let o=[];for(let l of e){let{string:A}=l;!n&&!Ewn(t,"string",A)&&o.push(r+A),n&&Ewn(t,"string",A)&&o.push(r+A)}return o}function gio(e,t){let r=[];for(let n=0;nt?1:t>e?-1:0}function Ewn(e,t,r){return e.some(n=>n[t]===r)}function Swn(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function vwn(e,t){return e-e%Math.pow(10,t)}function Bwn(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function dio(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function wwn(e){return/^-?(0+)\d/.test(e)}function pio(e,t,r){if(!t.isPadded)return e;let n=Math.abs(t.maxLen-String(e).length),a=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${n}}`:`0{${n}}`}}qfe.cache={};qfe.clearCache=()=>qfe.cache={};Twn.exports=qfe});var V7t=H((tMl,Zwn)=>{"use strict";var fio=Et("util"),Dwn=Rwn(),Nwn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),Iio=e=>t=>e===!0?Number(t):String(t),Z7t=e=>typeof e=="number"||typeof e=="string"&&e!=="",Z3e=e=>Number.isInteger(+e),L7t=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},hio=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,mio=(e,t,r)=>{if(t>0){let n=e[0]==="-"?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return r===!1?String(e):e},Wlt=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((A,f)=>Af?1:0),e.positives.sort((A,f)=>Af?1:0);let n=t.capture?"":"?:",a="",o="",l;return e.positives.length&&(a=e.positives.map(A=>Wlt(String(A),r)).join("|")),e.negatives.length&&(o=`-(${n}${e.negatives.map(A=>Wlt(String(A),r)).join("|")})`),a&&o?l=`${a}|${o}`:l=a||o,t.wrap?`(${n}${l})`:l},kwn=(e,t,r,n)=>{if(r)return Dwn(e,t,{wrap:!1,...n});let a=String.fromCharCode(e);if(e===t)return a;let o=String.fromCharCode(t);return`[${a}-${o}]`},xwn=(e,t,r)=>{if(Array.isArray(e)){let n=r.wrap===!0,a=r.capture?"":"?:";return n?`(${a}${e.join("|")})`:e.join("|")}return Dwn(e,t,r)},Gwn=(...e)=>new RangeError("Invalid range arguments: "+fio.inspect(...e)),Fwn=(e,t,r)=>{if(r.strictRanges===!0)throw Gwn([e,t]);return[]},_io=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},yio=(e,t,r=1,n={})=>{let a=Number(e),o=Number(t);if(!Number.isInteger(a)||!Number.isInteger(o)){if(n.strictRanges===!0)throw Gwn([e,t]);return[]}a===0&&(a=0),o===0&&(o=0);let l=a>o,A=String(e),f=String(t),I=String(r);r=Math.max(Math.abs(r),1);let C=L7t(A)||L7t(f)||L7t(I),b=C?Math.max(A.length,f.length,I.length):0,E=C===!1&&hio(e,t,n)===!1,N=n.transform||Iio(E);if(n.toRegex&&r===1)return kwn(Wlt(e,b),Wlt(t,b),!0,n);let B={negatives:[],positives:[]},F=ae=>B[ae<0?"negatives":"positives"].push(Math.abs(ae)),Q=[],J=0;for(;l?a>=o:a<=o;)n.toRegex===!0&&r>1?F(a):Q.push(mio(N(a,J),b,E)),a=l?a-r:a+r,J++;return n.toRegex===!0?r>1?Cio(B,n,b):xwn(Q,null,{wrap:!1,...n}):Q},bio=(e,t,r=1,n={})=>{if(!Z3e(e)&&e.length>1||!Z3e(t)&&t.length>1)return Fwn(e,t,n);let a=n.transform||(E=>String.fromCharCode(E)),o=`${e}`.charCodeAt(0),l=`${t}`.charCodeAt(0),A=o>l,f=Math.min(o,l),I=Math.max(o,l);if(n.toRegex&&r===1)return kwn(f,I,!1,n);let C=[],b=0;for(;A?o>=l:o<=l;)C.push(a(o,b)),o=A?o-r:o+r,b++;return n.toRegex===!0?xwn(C,null,{wrap:!1,options:n}):C},Vlt=(e,t,r,n={})=>{if(t==null&&Z7t(e))return[e];if(!Z7t(e)||!Z7t(t))return Fwn(e,t,n);if(typeof r=="function")return Vlt(e,t,1,{transform:r});if(Nwn(r))return Vlt(e,t,0,r);let a={...n};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,Z3e(r)?Z3e(e)&&Z3e(t)?yio(e,t,r,a):bio(e,t,Math.max(Math.abs(r),1),a):r!=null&&!Nwn(r)?_io(r,a):Vlt(e,t,1,r)};Zwn.exports=Vlt});var Wwn=H((rMl,Vwn)=>{"use strict";var Eio=V7t(),Lwn=Zlt(),Sio=(e,t={})=>{let r=(n,a={})=>{let o=Lwn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A=o===!0||l===!0,f=t.escapeInvalid===!0?"\\":"",I="";if(n.isOpen===!0)return f+n.value;if(n.isClose===!0)return console.log("node.isClose",f,n.value),f+n.value;if(n.type==="open")return A?f+n.value:"(";if(n.type==="close")return A?f+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":A?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let C=Lwn.reduce(n.nodes),b=Eio(...C,{...t,wrap:!1,toRegex:!0,strictZeros:!0});if(b.length!==0)return C.length>1&&b.length>1?`(${b})`:b}if(n.nodes)for(let C of n.nodes)I+=r(C,n);return I};return r(e)};Vwn.exports=Sio});var Mwn=H((nMl,Pwn)=>{"use strict";var vio=V7t(),Own=Llt(),ive=Zlt(),$fe=(e="",t="",r=!1)=>{let n=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?ive.flatten(t).map(a=>`{${a}}`):t;for(let a of e)if(Array.isArray(a))for(let o of a)n.push($fe(o,t,r));else for(let o of t)r===!0&&typeof o=="string"&&(o=`{${o}}`),n.push(Array.isArray(o)?$fe(a,o,r):a+o);return ive.flatten(n)},Bio=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,n=(a,o={})=>{a.queue=[];let l=o,A=o.queue;for(;l.type!=="brace"&&l.type!=="root"&&l.parent;)l=l.parent,A=l.queue;if(a.invalid||a.dollar){A.push($fe(A.pop(),Own(a,t)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){A.push($fe(A.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let b=ive.reduce(a.nodes);if(ive.exceedsLimit(...b,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let E=vio(...b,t);E.length===0&&(E=Own(a,t)),A.push($fe(A.pop(),E)),a.nodes=[];return}let f=ive.encloseBrace(a),I=a.queue,C=a;for(;C.type!=="brace"&&C.type!=="root"&&C.parent;)C=C.parent,I=C.queue;for(let b=0;b{"use strict";Hwn.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` +`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Kwn=H((sMl,Uwn)=>{"use strict";var wio=Llt(),{MAX_LENGTH:Qwn,CHAR_BACKSLASH:W7t,CHAR_BACKTICK:Tio,CHAR_COMMA:Rio,CHAR_DOT:Nio,CHAR_LEFT_PARENTHESES:Dio,CHAR_RIGHT_PARENTHESES:kio,CHAR_LEFT_CURLY_BRACE:xio,CHAR_RIGHT_CURLY_BRACE:Gio,CHAR_LEFT_SQUARE_BRACKET:Xwn,CHAR_RIGHT_SQUARE_BRACKET:Jwn,CHAR_DOUBLE_QUOTE:Fio,CHAR_SINGLE_QUOTE:Zio,CHAR_NO_BREAK_SPACE:Lio,CHAR_ZERO_WIDTH_NOBREAK_SPACE:Vio}=Ywn(),Wio=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},n=typeof r.maxLength=="number"?Math.min(Qwn,r.maxLength):Qwn;if(e.length>n)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${n})`);let a={type:"root",input:e,nodes:[]},o=[a],l=a,A=a,f=0,I=e.length,C=0,b=0,E,N=()=>e[C++],B=F=>{if(F.type==="text"&&A.type==="dot"&&(A.type="text"),A&&A.type==="text"&&F.type==="text"){A.value+=F.value;return}return l.nodes.push(F),F.parent=l,F.prev=A,A=F,F};for(B({type:"bos"});C0){if(l.ranges>0){l.ranges=0;let F=l.nodes.shift();l.nodes=[F,{type:"text",value:wio(l)}]}B({type:"comma",value:E}),l.commas++;continue}if(E===Nio&&b>0&&l.commas===0){let F=l.nodes;if(b===0||F.length===0){B({type:"text",value:E});continue}if(A.type==="dot"){if(l.range=[],A.value+=E,A.type="range",l.nodes.length!==3&&l.nodes.length!==5){l.invalid=!0,l.ranges=0,A.type="text";continue}l.ranges++,l.args=[];continue}if(A.type==="range"){F.pop();let Q=F[F.length-1];Q.value+=A.value+E,A=Q,l.ranges--;continue}B({type:"dot",value:E});continue}B({type:"text",value:E})}do if(l=o.pop(),l.type!=="root"){l.nodes.forEach(J=>{J.nodes||(J.type==="open"&&(J.isOpen=!0),J.type==="close"&&(J.isClose=!0),J.nodes||(J.type="text"),J.invalid=!0)});let F=o[o.length-1],Q=F.nodes.indexOf(l);F.nodes.splice(Q,1,...l.nodes)}while(o.length>0);return B({type:"eos"}),a};Uwn.exports=Wio});var qwn=H((oMl,zwn)=>{"use strict";var jwn=Llt(),Oio=Wwn(),Pio=Mwn(),Mio=Kwn(),WO=(e,t={})=>{let r=[];if(Array.isArray(e))for(let n of e){let a=WO.create(n,t);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(WO.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};WO.parse=(e,t={})=>Mio(e,t);WO.stringify=(e,t={})=>jwn(typeof e=="string"?WO.parse(e,t):e,t);WO.compile=(e,t={})=>(typeof e=="string"&&(e=WO.parse(e,t)),Oio(e,t));WO.expand=(e,t={})=>{typeof e=="string"&&(e=WO.parse(e,t));let r=Pio(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};WO.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?WO.compile(e,t):WO.expand(e,t);zwn.exports=WO});var L3e=H((aMl,nTn)=>{"use strict";var Hio=Et("path"),$K="\\\\/",$wn=`[^${$K}]`,l$="\\.",Yio="\\+",Qio="\\?",Olt="\\/",Xio="(?=.)",eTn="[^/]",O7t=`(?:${Olt}|$)`,tTn=`(?:^|${Olt})`,P7t=`${l$}{1,2}${O7t}`,Jio=`(?!${l$})`,Uio=`(?!${tTn}${P7t})`,Kio=`(?!${l$}{0,1}${O7t})`,jio=`(?!${P7t})`,zio=`[^.${Olt}]`,qio=`${eTn}*?`,rTn={DOT_LITERAL:l$,PLUS_LITERAL:Yio,QMARK_LITERAL:Qio,SLASH_LITERAL:Olt,ONE_CHAR:Xio,QMARK:eTn,END_ANCHOR:O7t,DOTS_SLASH:P7t,NO_DOT:Jio,NO_DOTS:Uio,NO_DOT_SLASH:Kio,NO_DOTS_SLASH:jio,QMARK_NO_DOT:zio,STAR:qio,START_ANCHOR:tTn},$io={...rTn,SLASH_LITERAL:`[${$K}]`,QMARK:$wn,STAR:`${$wn}*?`,DOTS_SLASH:`${l$}{1,2}(?:[${$K}]|$)`,NO_DOT:`(?!${l$})`,NO_DOTS:`(?!(?:^|[${$K}])${l$}{1,2}(?:[${$K}]|$))`,NO_DOT_SLASH:`(?!${l$}{0,1}(?:[${$K}]|$))`,NO_DOTS_SLASH:`(?!${l$}{1,2}(?:[${$K}]|$))`,QMARK_NO_DOT:`[^.${$K}]`,START_ANCHOR:`(?:^|[${$K}])`,END_ANCHOR:`(?:[${$K}]|$)`},eso={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"};nTn.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:eso,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:Hio.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?$io:rTn}}});var V3e=H(z9=>{"use strict";var tso=Et("path"),rso=process.platform==="win32",{REGEX_BACKSLASH:nso,REGEX_REMOVE_BACKSLASH:iso,REGEX_SPECIAL_CHARS:sso,REGEX_SPECIAL_CHARS_GLOBAL:oso}=L3e();z9.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);z9.hasRegexChars=e=>sso.test(e);z9.isRegexChar=e=>e.length===1&&z9.hasRegexChars(e);z9.escapeRegex=e=>e.replace(oso,"\\$1");z9.toPosixSlashes=e=>e.replace(nso,"/");z9.removeBackslashes=e=>e.replace(iso,t=>t==="\\"?"":t);z9.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};z9.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:rso===!0||tso.sep==="\\";z9.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?z9.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};z9.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};z9.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var gTn=H((lMl,uTn)=>{"use strict";var iTn=V3e(),{CHAR_ASTERISK:M7t,CHAR_AT:aso,CHAR_BACKWARD_SLASH:W3e,CHAR_COMMA:cso,CHAR_DOT:H7t,CHAR_EXCLAMATION_MARK:Y7t,CHAR_FORWARD_SLASH:lTn,CHAR_LEFT_CURLY_BRACE:Q7t,CHAR_LEFT_PARENTHESES:X7t,CHAR_LEFT_SQUARE_BRACKET:lso,CHAR_PLUS:uso,CHAR_QUESTION_MARK:sTn,CHAR_RIGHT_CURLY_BRACE:gso,CHAR_RIGHT_PARENTHESES:oTn,CHAR_RIGHT_SQUARE_BRACKET:Aso}=L3e(),aTn=e=>e===lTn||e===W3e,cTn=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},dso=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,J=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),tt=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Le=f.slice(0,C),f=f.slice(C),b-=C),ze&&B===!0&&b>0?(ze=f.slice(0,b),Je=f.slice(b)):B===!0?(ze="",Je=f):ze=f,ze&&ze!==""&&ze!=="/"&&ze!==f&&aTn(ze.charCodeAt(ze.length-1))&&(ze=ze.slice(0,-1)),r.unescape===!0&&(Je&&(Je=iTn.removeBackslashes(Je)),ze&&ae===!0&&(ze=iTn.removeBackslashes(ze)));let ft={prefix:Le,input:e,start:C,base:ze,glob:Je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(ft.maxDepth=0,aTn(be)||l.push(Se),ft.tokens=l),r.parts===!0||r.tokens===!0){let lt;for(let Ot=0;Ot{"use strict";var Plt=L3e(),OO=V3e(),{MAX_LENGTH:Mlt,POSIX_REGEX_SOURCE:pso,REGEX_NON_SPECIAL_CHARS:fso,REGEX_SPECIAL_CHARS_BACKREF:Iso,REPLACEMENTS:ATn}=Plt,hso=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>OO.escapeRegex(a)).join("..")}return r},sve=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,J7t=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=ATn[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(Mlt,r.maxLength):Mlt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=OO.isWindows(t),I=Plt.globChars(f),C=Plt.extglobChars(I),{DOT_LITERAL:b,PLUS_LITERAL:E,SLASH_LITERAL:N,ONE_CHAR:B,DOTS_SLASH:F,NO_DOT:Q,NO_DOT_SLASH:J,NO_DOTS_SLASH:ae,QMARK:ne,QMARK_NO_DOT:ce,STAR:fe,START_ANCHOR:ue}=I,de=Ar=>`(${A}(?:(?!${ue}${Ar.dot?F:b}).)*?)`,be=r.dot?"":Q,Se=r.dot?ne:ce,De=r.bash===!0?de(r):fe;r.capture&&(De=`(${De})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let k={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=OO.removePrefix(e,k),a=e.length;let tt=[],ze=[],Le=[],Je=o,ft,lt=()=>k.index===a-1,Ot=k.peek=(Ar=1)=>e[k.index+Ar],Er=k.advance=()=>e[++k.index]||"",Sr=()=>e.slice(k.index+1),jt=(Ar="",qr=0)=>{k.consumed+=Ar,k.index+=qr},Bt=Ar=>{k.output+=Ar.output!=null?Ar.output:Ar.value,jt(Ar.value)},Nt=()=>{let Ar=1;for(;Ot()==="!"&&(Ot(2)!=="("||Ot(3)==="?");)Er(),k.start++,Ar++;return Ar%2===0?!1:(k.negated=!0,k.start++,!0)},Fr=Ar=>{k[Ar]++,Le.push(Ar)},$t=Ar=>{k[Ar]--,Le.pop()},Xt=Ar=>{if(Je.type==="globstar"){let qr=k.braces>0&&(Ar.type==="comma"||Ar.type==="brace"),_n=Ar.extglob===!0||tt.length&&(Ar.type==="pipe"||Ar.type==="paren");Ar.type!=="slash"&&Ar.type!=="paren"&&!qr&&!_n&&(k.output=k.output.slice(0,-Je.output.length),Je.type="star",Je.value="*",Je.output=De,k.output+=Je.output)}if(tt.length&&Ar.type!=="paren"&&(tt[tt.length-1].inner+=Ar.value),(Ar.value||Ar.output)&&Bt(Ar),Je&&Je.type==="text"&&Ar.type==="text"){Je.value+=Ar.value,Je.output=(Je.output||"")+Ar.value;return}Ar.prev=Je,l.push(Ar),Je=Ar},lr=(Ar,qr)=>{let _n={...C[qr],conditions:1,inner:""};_n.prev=Je,_n.parens=k.parens,_n.output=k.output;let ke=(r.capture?"(":"")+_n.open;Fr("parens"),Xt({type:Ar,value:qr,output:k.output?"":B}),Xt({type:"paren",extglob:!0,value:Er(),output:ke}),tt.push(_n)},cr=Ar=>{let qr=Ar.close+(r.capture?")":""),_n;if(Ar.type==="negate"){let ke=De;if(Ar.inner&&Ar.inner.length>1&&Ar.inner.includes("/")&&(ke=de(r)),(ke!==De||lt()||/^\)+$/.test(Sr()))&&(qr=Ar.close=`)$))${ke}`),Ar.inner.includes("*")&&(_n=Sr())&&/^\.[^\\/.]+$/.test(_n)){let zt=J7t(_n,{...t,fastpaths:!1}).output;qr=Ar.close=`)${zt})${ke})`}Ar.prev.type==="bos"&&(k.negatedExtglob=!0)}Xt({type:"paren",extglob:!0,value:ft,output:qr}),$t("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let Ar=!1,qr=e.replace(Iso,(_n,ke,zt,Fn,Nn,Hi)=>Fn==="\\"?(Ar=!0,_n):Fn==="?"?ke?ke+Fn+(Nn?ne.repeat(Nn.length):""):Hi===0?Se+(Nn?ne.repeat(Nn.length):""):ne.repeat(zt.length):Fn==="."?b.repeat(zt.length):Fn==="*"?ke?ke+Fn+(Nn?De:""):De:ke?_n:`\\${_n}`);return Ar===!0&&(r.unescape===!0?qr=qr.replace(/\\/g,""):qr=qr.replace(/\\+/g,_n=>_n.length%2===0?"\\\\":_n?"\\":"")),qr===e&&r.contains===!0?(k.output=e,k):(k.output=OO.wrapOutput(qr,k,t),k)}for(;!lt();){if(ft=Er(),ft==="\0")continue;if(ft==="\\"){let _n=Ot();if(_n==="/"&&r.bash!==!0||_n==="."||_n===";")continue;if(!_n){ft+="\\",Xt({type:"text",value:ft});continue}let ke=/^\\+/.exec(Sr()),zt=0;if(ke&&ke[0].length>2&&(zt=ke[0].length,k.index+=zt,zt%2!==0&&(ft+="\\")),r.unescape===!0?ft=Er():ft+=Er(),k.brackets===0){Xt({type:"text",value:ft});continue}}if(k.brackets>0&&(ft!=="]"||Je.value==="["||Je.value==="[^")){if(r.posix!==!1&&ft===":"){let _n=Je.value.slice(1);if(_n.includes("[")&&(Je.posix=!0,_n.includes(":"))){let ke=Je.value.lastIndexOf("["),zt=Je.value.slice(0,ke),Fn=Je.value.slice(ke+2),Nn=pso[Fn];if(Nn){Je.value=zt+Nn,k.backtrack=!0,Er(),!o.output&&l.indexOf(Je)===1&&(o.output=B);continue}}}(ft==="["&&Ot()!==":"||ft==="-"&&Ot()==="]")&&(ft=`\\${ft}`),ft==="]"&&(Je.value==="["||Je.value==="[^")&&(ft=`\\${ft}`),r.posix===!0&&ft==="!"&&Je.value==="["&&(ft="^"),Je.value+=ft,Bt({value:ft});continue}if(k.quotes===1&&ft!=='"'){ft=OO.escapeRegex(ft),Je.value+=ft,Bt({value:ft});continue}if(ft==='"'){k.quotes=k.quotes===1?0:1,r.keepQuotes===!0&&Xt({type:"text",value:ft});continue}if(ft==="("){Fr("parens"),Xt({type:"paren",value:ft});continue}if(ft===")"){if(k.parens===0&&r.strictBrackets===!0)throw new SyntaxError(sve("opening","("));let _n=tt[tt.length-1];if(_n&&k.parens===_n.parens+1){cr(tt.pop());continue}Xt({type:"paren",value:ft,output:k.parens?")":"\\)"}),$t("parens");continue}if(ft==="["){if(r.nobracket===!0||!Sr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(sve("closing","]"));ft=`\\${ft}`}else Fr("brackets");Xt({type:"bracket",value:ft});continue}if(ft==="]"){if(r.nobracket===!0||Je&&Je.type==="bracket"&&Je.value.length===1){Xt({type:"text",value:ft,output:`\\${ft}`});continue}if(k.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(sve("opening","["));Xt({type:"text",value:ft,output:`\\${ft}`});continue}$t("brackets");let _n=Je.value.slice(1);if(Je.posix!==!0&&_n[0]==="^"&&!_n.includes("/")&&(ft=`/${ft}`),Je.value+=ft,Bt({value:ft}),r.literalBrackets===!1||OO.hasRegexChars(_n))continue;let ke=OO.escapeRegex(Je.value);if(k.output=k.output.slice(0,-Je.value.length),r.literalBrackets===!0){k.output+=ke,Je.value=ke;continue}Je.value=`(${A}${ke}|${Je.value})`,k.output+=Je.value;continue}if(ft==="{"&&r.nobrace!==!0){Fr("braces");let _n={type:"brace",value:ft,output:"(",outputIndex:k.output.length,tokensIndex:k.tokens.length};ze.push(_n),Xt(_n);continue}if(ft==="}"){let _n=ze[ze.length-1];if(r.nobrace===!0||!_n){Xt({type:"text",value:ft,output:ft});continue}let ke=")";if(_n.dots===!0){let zt=l.slice(),Fn=[];for(let Nn=zt.length-1;Nn>=0&&(l.pop(),zt[Nn].type!=="brace");Nn--)zt[Nn].type!=="dots"&&Fn.unshift(zt[Nn].value);ke=hso(Fn,r),k.backtrack=!0}if(_n.comma!==!0&&_n.dots!==!0){let zt=k.output.slice(0,_n.outputIndex),Fn=k.tokens.slice(_n.tokensIndex);_n.value=_n.output="\\{",ft=ke="\\}",k.output=zt;for(let Nn of Fn)k.output+=Nn.output||Nn.value}Xt({type:"brace",value:ft,output:ke}),$t("braces"),ze.pop();continue}if(ft==="|"){tt.length>0&&tt[tt.length-1].conditions++,Xt({type:"text",value:ft});continue}if(ft===","){let _n=ft,ke=ze[ze.length-1];ke&&Le[Le.length-1]==="braces"&&(ke.comma=!0,_n="|"),Xt({type:"comma",value:ft,output:_n});continue}if(ft==="/"){if(Je.type==="dot"&&k.index===k.start+1){k.start=k.index+1,k.consumed="",k.output="",l.pop(),Je=o;continue}Xt({type:"slash",value:ft,output:N});continue}if(ft==="."){if(k.braces>0&&Je.type==="dot"){Je.value==="."&&(Je.output=b);let _n=ze[ze.length-1];Je.type="dots",Je.output+=ft,Je.value+=ft,_n.dots=!0;continue}if(k.braces+k.parens===0&&Je.type!=="bos"&&Je.type!=="slash"){Xt({type:"text",value:ft,output:b});continue}Xt({type:"dot",value:ft,output:b});continue}if(ft==="?"){if(!(Je&&Je.value==="(")&&r.noextglob!==!0&&Ot()==="("&&Ot(2)!=="?"){lr("qmark",ft);continue}if(Je&&Je.type==="paren"){let ke=Ot(),zt=ft;if(ke==="<"&&!OO.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(Je.value==="("&&!/[!=<:]/.test(ke)||ke==="<"&&!/<([!=]|\w+>)/.test(Sr()))&&(zt=`\\${ft}`),Xt({type:"text",value:ft,output:zt});continue}if(r.dot!==!0&&(Je.type==="slash"||Je.type==="bos")){Xt({type:"qmark",value:ft,output:ce});continue}Xt({type:"qmark",value:ft,output:ne});continue}if(ft==="!"){if(r.noextglob!==!0&&Ot()==="("&&(Ot(2)!=="?"||!/[!=<:]/.test(Ot(3)))){lr("negate",ft);continue}if(r.nonegate!==!0&&k.index===0){Nt();continue}}if(ft==="+"){if(r.noextglob!==!0&&Ot()==="("&&Ot(2)!=="?"){lr("plus",ft);continue}if(Je&&Je.value==="("||r.regex===!1){Xt({type:"plus",value:ft,output:E});continue}if(Je&&(Je.type==="bracket"||Je.type==="paren"||Je.type==="brace")||k.parens>0){Xt({type:"plus",value:ft});continue}Xt({type:"plus",value:E});continue}if(ft==="@"){if(r.noextglob!==!0&&Ot()==="("&&Ot(2)!=="?"){Xt({type:"at",extglob:!0,value:ft,output:""});continue}Xt({type:"text",value:ft});continue}if(ft!=="*"){(ft==="$"||ft==="^")&&(ft=`\\${ft}`);let _n=fso.exec(Sr());_n&&(ft+=_n[0],k.index+=_n[0].length),Xt({type:"text",value:ft});continue}if(Je&&(Je.type==="globstar"||Je.star===!0)){Je.type="star",Je.star=!0,Je.value+=ft,Je.output=De,k.backtrack=!0,k.globstar=!0,jt(ft);continue}let Ar=Sr();if(r.noextglob!==!0&&/^\([^?]/.test(Ar)){lr("star",ft);continue}if(Je.type==="star"){if(r.noglobstar===!0){jt(ft);continue}let _n=Je.prev,ke=_n.prev,zt=_n.type==="slash"||_n.type==="bos",Fn=ke&&(ke.type==="star"||ke.type==="globstar");if(r.bash===!0&&(!zt||Ar[0]&&Ar[0]!=="/")){Xt({type:"star",value:ft,output:""});continue}let Nn=k.braces>0&&(_n.type==="comma"||_n.type==="brace"),Hi=tt.length&&(_n.type==="pipe"||_n.type==="paren");if(!zt&&_n.type!=="paren"&&!Nn&&!Hi){Xt({type:"star",value:ft,output:""});continue}for(;Ar.slice(0,3)==="/**";){let Ao=e[k.index+4];if(Ao&&Ao!=="/")break;Ar=Ar.slice(3),jt("/**",3)}if(_n.type==="bos"&<()){Je.type="globstar",Je.value+=ft,Je.output=de(r),k.output=Je.output,k.globstar=!0,jt(ft);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&!Fn&<()){k.output=k.output.slice(0,-(_n.output+Je.output).length),_n.output=`(?:${_n.output}`,Je.type="globstar",Je.output=de(r)+(r.strictSlashes?")":"|$)"),Je.value+=ft,k.globstar=!0,k.output+=_n.output+Je.output,jt(ft);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&Ar[0]==="/"){let Ao=Ar[1]!==void 0?"|$":"";k.output=k.output.slice(0,-(_n.output+Je.output).length),_n.output=`(?:${_n.output}`,Je.type="globstar",Je.output=`${de(r)}${N}|${N}${Ao})`,Je.value+=ft,k.output+=_n.output+Je.output,k.globstar=!0,jt(ft+Er()),Xt({type:"slash",value:"/",output:""});continue}if(_n.type==="bos"&&Ar[0]==="/"){Je.type="globstar",Je.value+=ft,Je.output=`(?:^|${N}|${de(r)}${N})`,k.output=Je.output,k.globstar=!0,jt(ft+Er()),Xt({type:"slash",value:"/",output:""});continue}k.output=k.output.slice(0,-Je.output.length),Je.type="globstar",Je.output=de(r),Je.value+=ft,k.output+=Je.output,k.globstar=!0,jt(ft);continue}let qr={type:"star",value:ft,output:De};if(r.bash===!0){qr.output=".*?",(Je.type==="bos"||Je.type==="slash")&&(qr.output=be+qr.output),Xt(qr);continue}if(Je&&(Je.type==="bracket"||Je.type==="paren")&&r.regex===!0){qr.output=ft,Xt(qr);continue}(k.index===k.start||Je.type==="slash"||Je.type==="dot")&&(Je.type==="dot"?(k.output+=J,Je.output+=J):r.dot===!0?(k.output+=ae,Je.output+=ae):(k.output+=be,Je.output+=be),Ot()!=="*"&&(k.output+=B,Je.output+=B)),Xt(qr)}for(;k.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(sve("closing","]"));k.output=OO.escapeLast(k.output,"["),$t("brackets")}for(;k.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(sve("closing",")"));k.output=OO.escapeLast(k.output,"("),$t("parens")}for(;k.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(sve("closing","}"));k.output=OO.escapeLast(k.output,"{"),$t("braces")}if(r.strictSlashes!==!0&&(Je.type==="star"||Je.type==="bracket")&&Xt({type:"maybe_slash",value:"",output:`${N}?`}),k.backtrack===!0){k.output="";for(let Ar of k.tokens)k.output+=Ar.output!=null?Ar.output:Ar.value,Ar.suffix&&(k.output+=Ar.suffix)}return k};J7t.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(Mlt,r.maxLength):Mlt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=ATn[e]||e;let o=OO.isWindows(t),{DOT_LITERAL:l,SLASH_LITERAL:A,ONE_CHAR:f,DOTS_SLASH:I,NO_DOT:C,NO_DOTS:b,NO_DOTS_SLASH:E,STAR:N,START_ANCHOR:B}=Plt.globChars(o),F=r.dot?b:C,Q=r.dot?E:C,J=r.capture?"":"?:",ae={negated:!1,prefix:""},ne=r.bash===!0?".*?":N;r.capture&&(ne=`(${ne})`);let ce=be=>be.noglobstar===!0?ne:`(${J}(?:(?!${B}${be.dot?I:l}).)*?)`,fe=be=>{switch(be){case"*":return`${F}${f}${ne}`;case".*":return`${l}${f}${ne}`;case"*.*":return`${F}${ne}${l}${f}${ne}`;case"*/*":return`${F}${ne}${A}${f}${Q}${ne}`;case"**":return F+ce(r);case"**/*":return`(?:${F}${ce(r)}${A})?${Q}${f}${ne}`;case"**/*.*":return`(?:${F}${ce(r)}${A})?${Q}${ne}${l}${f}${ne}`;case"**/.*":return`(?:${F}${ce(r)}${A})?${l}${f}${ne}`;default:{let Se=/^(.*?)\.(\w+)$/.exec(be);if(!Se)return;let De=fe(Se[1]);return De?De+l+Se[2]:void 0}}},ue=OO.removePrefix(e,ae),de=fe(ue);return de&&r.strictSlashes!==!0&&(de+=`${A}?`),de};dTn.exports=J7t});var ITn=H((gMl,fTn)=>{"use strict";var mso=Et("path"),Cso=gTn(),U7t=pTn(),K7t=V3e(),_so=L3e(),yso=e=>e&&typeof e=="object"&&!Array.isArray(e),tw=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>tw(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=yso(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=K7t.isWindows(t),l=n?tw.compileRe(e,t):tw.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=tw(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=tw.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};tw.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?K7t.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=tw.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};tw.matchBase=(e,t,r,n=K7t.isWindows(r))=>(t instanceof RegExp?t:tw.makeRe(t,r)).test(mso.basename(e));tw.isMatch=(e,t,r)=>tw(t,r)(e);tw.parse=(e,t)=>Array.isArray(e)?e.map(r=>tw.parse(r,t)):U7t(e,{...t,fastpaths:!1});tw.scan=(e,t)=>Cso(e,t);tw.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=tw.toRegex(A,t);return n===!0&&(f.state=e),f};tw.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=U7t.fastpaths(e,t)),a.output||(a=U7t(e,t)),tw.compileRe(a,t,r,n)};tw.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};tw.constants=_so;fTn.exports=tw});var mTn=H((AMl,hTn)=>{"use strict";hTn.exports=ITn()});var Rk=H((dMl,ETn)=>{"use strict";var _Tn=Et("util"),yTn=qwn(),e8=mTn(),j7t=V3e(),CTn=e=>e===""||e==="./",bTn=e=>{let t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},L1=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let n=new Set,a=new Set,o=new Set,l=0,A=C=>{o.add(C.output),r&&r.onResult&&r.onResult(C)};for(let C=0;C!n.has(C));if(r&&I.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(C=>C.replace(/\\/g,"")):t}return I};L1.match=L1;L1.matcher=(e,t)=>e8(e,t);L1.isMatch=(e,t,r)=>e8(t,r)(e);L1.any=L1.isMatch;L1.not=(e,t,r={})=>{t=[].concat(t).map(String);let n=new Set,a=[],o=A=>{r.onResult&&r.onResult(A),a.push(A.output)},l=new Set(L1(e,t,{...r,onResult:o}));for(let A of a)l.has(A)||n.add(A);return[...n]};L1.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${_Tn.inspect(e)}"`);if(Array.isArray(t))return t.some(n=>L1.contains(e,n,r));if(typeof t=="string"){if(CTn(e)||CTn(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return L1.isMatch(e,t,{...r,contains:!0})};L1.matchKeys=(e,t,r)=>{if(!j7t.isObject(e))throw new TypeError("Expected the first argument to be an object");let n=L1(Object.keys(e),t,r),a={};for(let o of n)a[o]=e[o];return a};L1.some=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=e8(String(a),r);if(n.some(l=>o(l)))return!0}return!1};L1.every=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=e8(String(a),r);if(!n.every(l=>o(l)))return!1}return!0};L1.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${_Tn.inspect(e)}"`);return[].concat(t).every(n=>e8(n,r)(e))};L1.capture=(e,t,r)=>{let n=j7t.isWindows(r),o=e8.makeRe(String(e),{...r,capture:!0}).exec(n?j7t.toPosixSlashes(t):t);if(o)return o.slice(1).map(l=>l===void 0?"":l)};L1.makeRe=(...e)=>e8.makeRe(...e);L1.scan=(...e)=>e8.scan(...e);L1.parse=(e,t)=>{let r=[];for(let n of[].concat(e||[]))for(let a of yTn(String(n),t))r.push(e8.parse(a,t));return r};L1.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!bTn(e)?[e]:yTn(e,t)};L1.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return L1.braces(e,{...t,expand:!0})};L1.hasBraces=bTn;ETn.exports=L1});var vTn=H((pMl,STn)=>{"use strict";STn.exports=({onlyFirst:e=!1}={})=>{let t=["[\\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(t,e?void 0:"g")}});var aM=H((fMl,BTn)=>{"use strict";var bso=vTn();BTn.exports=e=>typeof e=="string"?e.replace(bso(),""):e});var q7t=H(z7t=>{"use strict";Object.defineProperty(z7t,Symbol.toStringTag,{value:"Module"});function Eso(e){return arguments.length===0?[]:Array.isArray(e)?e:[e]}z7t.castArray=Eso});var wTn=H($7t=>{"use strict";Object.defineProperty($7t,Symbol.toStringTag,{value:"Module"});function Sso(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Size must be an integer greater than zero.");let r=Math.ceil(e.length/t),n=Array(r);for(let a=0;a{"use strict";Object.defineProperty(ezt,Symbol.toStringTag,{value:"Module"});function vso(e){return Array.isArray(e)?e:Array.from(e)}ezt.toArray=vso});var TTn=H(tzt=>{"use strict";Object.defineProperty(tzt,Symbol.toStringTag,{value:"Module"});function Bso(e){return Number.isSafeInteger(e)&&e>=0}tzt.isLength=Bso});var Bf=H(rzt=>{"use strict";Object.defineProperty(rzt,Symbol.toStringTag,{value:"Module"});var wso=TTn();function Tso(e){return e!=null&&typeof e!="function"&&wso.isLength(e.length)}rzt.isArrayLike=Tso});var izt=H(nzt=>{"use strict";Object.defineProperty(nzt,Symbol.toStringTag,{value:"Module"});var Rso=wTn(),Nso=DZ(),Dso=Bf();function kso(e,t=1){return t=Math.max(Math.floor(t),0),t===0||!Dso.isArrayLike(e)?[]:Rso.chunk(Nso.toArray(e),t)}nzt.chunk=kso});var RTn=H(szt=>{"use strict";Object.defineProperty(szt,Symbol.toStringTag,{value:"Module"});function xso(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(ozt,Symbol.toStringTag,{value:"Module"});var Gso=RTn(),Fso=Bf();function Zso(e){return Fso.isArrayLike(e)?Gso.compact(Array.from(e)):[]}ozt.compact=Zso});var O3e=H(czt=>{"use strict";Object.defineProperty(czt,Symbol.toStringTag,{value:"Module"});function Lso(e,t=1){let r=[],n=Math.floor(t),a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(lzt,Symbol.toStringTag,{value:"Module"});var Vso=O3e();function Wso(...e){return Vso.flatten(e)}lzt.concat=Wso});var Bm=H(gzt=>{"use strict";Object.defineProperty(gzt,Symbol.toStringTag,{value:"Module"});function Oso(e){return e}gzt.identity=Oso});var P3e=H(Azt=>{"use strict";Object.defineProperty(Azt,Symbol.toStringTag,{value:"Module"});function Pso(e){return e==="__proto__"}Azt.isUnsafeProperty=Pso});var ove=H(dzt=>{"use strict";Object.defineProperty(dzt,Symbol.toStringTag,{value:"Module"});function Mso(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}dzt.isDeepKey=Mso});var u$=H(pzt=>{"use strict";Object.defineProperty(pzt,Symbol.toStringTag,{value:"Module"});function Hso(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}pzt.toKey=Hso});var tb=H(fzt=>{"use strict";Object.defineProperty(fzt,Symbol.toStringTag,{value:"Module"});function NTn(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(NTn).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}fzt.toString=NTn});var cM=H(Izt=>{"use strict";Object.defineProperty(Izt,Symbol.toStringTag,{value:"Module"});var Yso=tb(),Qso=u$();function Xso(e){if(Array.isArray(e))return e.map(Qso.toKey);if(typeof e=="symbol")return[e];e=Yso.toString(e);let t=[],r=e.length;if(r===0)return t;let n=0,a="",o="",l=!1;for(e.charCodeAt(0)===46&&(t.push(""),n++);n{"use strict";Object.defineProperty(mzt,Symbol.toStringTag,{value:"Module"});var hzt=P3e(),Jso=ove(),Uso=u$(),Kso=cM();function DTn(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(hzt.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?Jso.isDeepKey(t)?DTn(e,Kso.toPath(t),r):r:n}case"number":case"symbol":{typeof t=="number"&&(t=Uso.toKey(t));let n=e[t];return n===void 0?r:n}default:{if(Array.isArray(t))return jso(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),hzt.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?r:n}}}function jso(e,t,r){if(t.length===0)return r;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Czt,Symbol.toStringTag,{value:"Module"});var zso=lM();function qso(e){return function(t){return zso.get(t,e)}}Czt.property=qso});var uM=H(_zt=>{"use strict";Object.defineProperty(_zt,Symbol.toStringTag,{value:"Module"});function $so(e){return e!==null&&(typeof e=="object"||typeof e=="function")}_zt.isObject=$so});var ave=H(yzt=>{"use strict";Object.defineProperty(yzt,Symbol.toStringTag,{value:"Module"});function eoo(e){return e==null||typeof e!="object"&&typeof e!="function"}yzt.isPrimitive=eoo});var Nk=H(bzt=>{"use strict";Object.defineProperty(bzt,Symbol.toStringTag,{value:"Module"});function too(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}bzt.isEqualsSameValueZero=too});var Ylt=H(Hlt=>{"use strict";Object.defineProperty(Hlt,Symbol.toStringTag,{value:"Module"});var roo=uM(),kTn=ave(),xTn=Nk();function GTn(e,t,r){return typeof r!="function"?GTn(e,t,()=>{}):Ezt(e,t,function n(a,o,l,A,f,I){let C=r(a,o,l,A,f,I);return C!==void 0?!!C:Ezt(a,o,n,I)},new Map)}function Ezt(e,t,r,n){if(t===e)return!0;switch(typeof t){case"object":return noo(e,t,r,n);case"function":return Object.keys(t).length>0?Ezt(e,{...t},r,n):xTn.isEqualsSameValueZero(e,t);default:return roo.isObject(e)?typeof t=="string"?t==="":!0:xTn.isEqualsSameValueZero(e,t)}}function noo(e,t,r,n){if(t==null)return!0;if(Array.isArray(t))return FTn(e,t,r,n);if(t instanceof Map)return ioo(e,t,r,n);if(t instanceof Set)return ZTn(e,t,r,n);let a=Object.keys(t);if(e==null||kTn.isPrimitive(e))return a.length===0;if(a.length===0)return!0;if(n?.has(t))return n.get(t)===e;n?.set(t,e);try{for(let o=0;o{"use strict";Object.defineProperty(Szt,Symbol.toStringTag,{value:"Module"});var soo=Ylt();function ooo(e,t){return soo.isMatchWith(e,t,()=>{})}Szt.isMatch=ooo});var H3e=H(vzt=>{"use strict";Object.defineProperty(vzt,Symbol.toStringTag,{value:"Module"});function aoo(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}vzt.getSymbols=aoo});var eIe=H(Bzt=>{"use strict";Object.defineProperty(Bzt,Symbol.toStringTag,{value:"Module"});function coo(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}Bzt.getTag=coo});var Y3e=H(rb=>{"use strict";Object.defineProperty(rb,Symbol.toStringTag,{value:"Module"});var loo="[object RegExp]",uoo="[object String]",goo="[object Number]",Aoo="[object Boolean]",doo="[object Arguments]",poo="[object Symbol]",foo="[object Date]",Ioo="[object Map]",hoo="[object Set]",moo="[object Array]",Coo="[object Function]",_oo="[object ArrayBuffer]",yoo="[object Object]",boo="[object Error]",Eoo="[object DataView]",Soo="[object Uint8Array]",voo="[object Uint8ClampedArray]",Boo="[object Uint16Array]",woo="[object Uint32Array]",Too="[object BigUint64Array]",Roo="[object Int8Array]",Noo="[object Int16Array]",Doo="[object Int32Array]",koo="[object BigInt64Array]",xoo="[object Float32Array]",Goo="[object Float64Array]";rb.argumentsTag=doo;rb.arrayBufferTag=_oo;rb.arrayTag=moo;rb.bigInt64ArrayTag=koo;rb.bigUint64ArrayTag=Too;rb.booleanTag=Aoo;rb.dataViewTag=Eoo;rb.dateTag=foo;rb.errorTag=boo;rb.float32ArrayTag=xoo;rb.float64ArrayTag=Goo;rb.functionTag=Coo;rb.int16ArrayTag=Noo;rb.int32ArrayTag=Doo;rb.int8ArrayTag=Roo;rb.mapTag=Ioo;rb.numberTag=goo;rb.objectTag=yoo;rb.regexpTag=loo;rb.setTag=hoo;rb.stringTag=uoo;rb.symbolTag=poo;rb.uint16ArrayTag=Boo;rb.uint32ArrayTag=woo;rb.uint8ArrayTag=Soo;rb.uint8ClampedArrayTag=voo});var Tzt=H(wzt=>{"use strict";Object.defineProperty(wzt,Symbol.toStringTag,{value:"Module"});var Foo=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||function(){return this}()||Function("return this")();wzt.globalThis=Foo});var moe=H(Rzt=>{"use strict";Object.defineProperty(Rzt,Symbol.toStringTag,{value:"Module"});var LTn=Tzt();function Zoo(e){return typeof LTn.globalThis.Buffer<"u"&<n.globalThis.Buffer.isBuffer(e)}Rzt.isBuffer=Zoo});var Qlt=H(Nzt=>{"use strict";Object.defineProperty(Nzt,Symbol.toStringTag,{value:"Module"});function Loo(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}Nzt.isTypedArray=Loo});var Dzt=H(Q3e=>{"use strict";Object.defineProperty(Q3e,Symbol.toStringTag,{value:"Module"});var Voo=H3e(),Woo=eIe(),Pv=Y3e(),Ooo=moe(),Poo=ave(),Moo=Qlt();function Hoo(e,t){return tIe(e,void 0,e,new Map,t)}function tIe(e,t,r,n=new Map,a=void 0){let o=a?.(e,t,r,n);if(o!==void 0)return o;if(Poo.isPrimitive(e))return e;if(n.has(e))return n.get(e);if(Array.isArray(e)){let l=new Array(e.length);n.set(e,l);for(let A=0;A{"use strict";Object.defineProperty(kzt,Symbol.toStringTag,{value:"Module"});var Qoo=Dzt();function Xoo(e){return Qoo.cloneDeepWithImpl(e,void 0,e,new Map,void 0)}kzt.cloneDeep=Xoo});var t8=H(Gzt=>{"use strict";Object.defineProperty(Gzt,Symbol.toStringTag,{value:"Module"});var Joo=M3e(),Uoo=xzt();function Koo(e){return e=Uoo.cloneDeep(e),t=>Joo.isMatch(t,e)}Gzt.matches=Koo});var J3e=H(Fzt=>{"use strict";Object.defineProperty(Fzt,Symbol.toStringTag,{value:"Module"});var Xlt=Dzt(),joo=eIe(),X3e=Y3e();function zoo(e,t){return Xlt.cloneDeepWith(e,(r,n,a,o)=>{let l=t?.(r,n,a,o);if(l!==void 0)return l;if(typeof e=="object"){if(joo.getTag(e)===X3e.objectTag&&typeof e.constructor!="function"){let A={};return o.set(e,A),Xlt.copyProperties(A,e,a,o),A}switch(Object.prototype.toString.call(e)){case X3e.numberTag:case X3e.stringTag:case X3e.booleanTag:{let A=new e.constructor(e?.valueOf());return Xlt.copyProperties(A,e),A}case X3e.argumentsTag:{let A={};return Xlt.copyProperties(A,e),A.length=e.length,A[Symbol.iterator]=e[Symbol.iterator],A}default:return}}})}Fzt.cloneDeepWith=zoo});var cve=H(Zzt=>{"use strict";Object.defineProperty(Zzt,Symbol.toStringTag,{value:"Module"});var qoo=J3e();function $oo(e){return qoo.cloneDeepWith(e)}Zzt.cloneDeep=$oo});var lve=H(Lzt=>{"use strict";Object.defineProperty(Lzt,Symbol.toStringTag,{value:"Module"});var eao=/^(?:0|[1-9]\d*)$/;function tao(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e{"use strict";Object.defineProperty(Vzt,Symbol.toStringTag,{value:"Module"});var rao=eIe();function nao(e){return e!==null&&typeof e=="object"&&rao.getTag(e)==="[object Arguments]"}Vzt.isArguments=nao});var U3e=H(Wzt=>{"use strict";Object.defineProperty(Wzt,Symbol.toStringTag,{value:"Module"});var iao=ove(),sao=lve(),oao=rIe(),aao=cM();function cao(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&iao.isDeepKey(t)&&e?.[t]==null?r=aao.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Ozt,Symbol.toStringTag,{value:"Module"});var lao=M3e(),uao=u$(),gao=cve(),Aao=lM(),dao=U3e();function pao(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=uao.toKey(e);break}}return t=gao.cloneDeep(t),function(r){let n=Aao.get(r,e);return n===void 0?dao.has(r,e):t===void 0?n===void 0:lao.isMatch(n,t)}}Ozt.matchesProperty=pao});var cm=H(Pzt=>{"use strict";Object.defineProperty(Pzt,Symbol.toStringTag,{value:"Module"});var fao=Bm(),Iao=fX(),hao=t8(),mao=r8();function Cao(e){if(e==null)return fao.identity;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?mao.matchesProperty(e[0],e[1]):hao.matches(e);case"string":case"symbol":case"number":return Iao.property(e)}}Pzt.iteratee=Cao});var Hzt=H(Mzt=>{"use strict";Object.defineProperty(Mzt,Symbol.toStringTag,{value:"Module"});var _ao=Bf(),yao=cm();function bao(e,t){if(e==null)return{};let r=_ao.isArrayLike(e)?Array.from(e):Object.values(e),n=yao.iteratee(t??void 0),a=Object.create(null);for(let o=0;o{"use strict";Object.defineProperty(Yzt,Symbol.toStringTag,{value:"Module"});function Eao(e,t){let r=new Set(t);return e.filter(n=>!r.has(n))}Yzt.difference=Eao});var Coe=H(Qzt=>{"use strict";Object.defineProperty(Qzt,Symbol.toStringTag,{value:"Module"});function Sao(e){return typeof e=="object"&&e!==null}Qzt.isObjectLike=Sao});var B2=H(Xzt=>{"use strict";Object.defineProperty(Xzt,Symbol.toStringTag,{value:"Module"});var vao=Bf(),Bao=Coe();function wao(e){return Bao.isObjectLike(e)&&vao.isArrayLike(e)}Xzt.isArrayLikeObject=wao});var Uzt=H(Jzt=>{"use strict";Object.defineProperty(Jzt,Symbol.toStringTag,{value:"Module"});var Tao=K3e(),Rao=DZ(),VTn=B2();function Nao(e,...t){if(!VTn.isArrayLikeObject(e))return[];let r=Rao.toArray(e),n=[];for(let a=0;a{"use strict";Object.defineProperty(Kzt,Symbol.toStringTag,{value:"Module"});function Dao(e){return e[e.length-1]}Kzt.last=Dao});var A$=H(jzt=>{"use strict";Object.defineProperty(jzt,Symbol.toStringTag,{value:"Module"});var kao=j3e(),xao=DZ(),Gao=Bf();function Fao(e){if(Gao.isArrayLike(e))return kao.last(xao.toArray(e))}jzt.last=Fao});var WTn=H(zzt=>{"use strict";Object.defineProperty(zzt,Symbol.toStringTag,{value:"Module"});function Zao(e,t,r){let n=new Set(t.map(a=>r(a)));return e.filter(a=>!n.has(r(a)))}zzt.differenceBy=Zao});var z3e=H(qzt=>{"use strict";Object.defineProperty(qzt,Symbol.toStringTag,{value:"Module"});var Lao=B2();function Vao(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty($zt,Symbol.toStringTag,{value:"Module"});var Wao=A$(),Oao=K3e(),Pao=WTn(),Mao=z3e(),OTn=B2(),Hao=cm();function Yao(e,...t){if(!OTn.isArrayLikeObject(e))return[];let r=Wao.last(t),n=Mao.flattenArrayLike(t);return OTn.isArrayLikeObject(r)?Oao.difference(Array.from(e),n):Pao.differenceBy(Array.from(e),n,Hao.iteratee(r))}$zt.differenceBy=Yao});var PTn=H(eqt=>{"use strict";Object.defineProperty(eqt,Symbol.toStringTag,{value:"Module"});function Qao(e,t,r){return e.filter(n=>t.every(a=>!r(n,a)))}eqt.differenceWith=Qao});var Ult=H(tqt=>{"use strict";Object.defineProperty(tqt,Symbol.toStringTag,{value:"Module"});var Xao=A$(),Jao=K3e(),Uao=PTn(),Kao=z3e(),jao=B2();function zao(e,...t){if(!jao.isArrayLikeObject(e))return[];let r=Xao.last(t),n=Kao.flattenArrayLike(t);return typeof r=="function"?Uao.differenceWith(Array.from(e),n,r):Jao.difference(Array.from(e),n)}tqt.differenceWith=zao});var MTn=H(rqt=>{"use strict";Object.defineProperty(rqt,Symbol.toStringTag,{value:"Module"});function qao(e,t){return t=Math.max(t,0),e.slice(t)}rqt.drop=qao});var _oe=H(nqt=>{"use strict";Object.defineProperty(nqt,Symbol.toStringTag,{value:"Module"});function $ao(e){return typeof e=="symbol"||e instanceof Symbol}nqt.isSymbol=$ao});var q9=H(iqt=>{"use strict";Object.defineProperty(iqt,Symbol.toStringTag,{value:"Module"});var eco=_oe();function tco(e){return eco.isSymbol(e)?NaN:Number(e)}iqt.toNumber=tco});var uve=H(sqt=>{"use strict";Object.defineProperty(sqt,Symbol.toStringTag,{value:"Module"});var rco=q9();function nco(e){return e?(e=rco.toNumber(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}sqt.toFinite=nco});var sT=H(oqt=>{"use strict";Object.defineProperty(oqt,Symbol.toStringTag,{value:"Module"});var ico=uve();function sco(e){let t=ico.toFinite(e),r=t%1;return r?t-r:t}oqt.toInteger=sco});var cqt=H(aqt=>{"use strict";Object.defineProperty(aqt,Symbol.toStringTag,{value:"Module"});var oco=MTn(),aco=DZ(),cco=Bf(),lco=sT();function uco(e,t=1,r){return cco.isArrayLike(e)?(t=r?1:lco.toInteger(t),oco.drop(aco.toArray(e),t)):[]}aqt.drop=uco});var HTn=H(lqt=>{"use strict";Object.defineProperty(lqt,Symbol.toStringTag,{value:"Module"});function gco(e,t){return t=Math.min(-t,0),t===0?e.slice():e.slice(0,t)}lqt.dropRight=gco});var gqt=H(uqt=>{"use strict";Object.defineProperty(uqt,Symbol.toStringTag,{value:"Module"});var Aco=HTn(),dco=DZ(),pco=Bf(),fco=sT();function Ico(e,t=1,r){return pco.isArrayLike(e)?(t=r?1:fco.toInteger(t),Aco.dropRight(dco.toArray(e),t)):[]}uqt.dropRight=Ico});var YTn=H(Aqt=>{"use strict";Object.defineProperty(Aqt,Symbol.toStringTag,{value:"Module"});function hco(e,t){for(let r=e.length-1;r>=0;r--)if(!t(e[r],r,e))return e.slice(0,r+1);return[]}Aqt.dropRightWhile=hco});var pqt=H(dqt=>{"use strict";Object.defineProperty(dqt,Symbol.toStringTag,{value:"Module"});var Klt=YTn(),mco=Bm(),Cco=fX(),_co=Bf(),yco=t8(),bco=r8();function Eco(e,t=mco.identity){return _co.isArrayLike(e)?Sco(Array.from(e),t):[]}function Sco(e,t){switch(typeof t){case"function":return Klt.dropRightWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return Klt.dropRightWhile(e,bco.matchesProperty(r,n))}else return Klt.dropRightWhile(e,yco.matches(t));case"symbol":case"number":case"string":return Klt.dropRightWhile(e,Cco.property(t))}}dqt.dropRightWhile=Eco});var QTn=H(fqt=>{"use strict";Object.defineProperty(fqt,Symbol.toStringTag,{value:"Module"});function vco(e,t){let r=e.findIndex((n,a,o)=>!t(n,a,o));return r===-1?[]:e.slice(r)}fqt.dropWhile=vco});var hqt=H(Iqt=>{"use strict";Object.defineProperty(Iqt,Symbol.toStringTag,{value:"Module"});var jlt=QTn(),Bco=Bm(),wco=DZ(),Tco=fX(),Rco=Bf(),Nco=t8(),Dco=r8();function kco(e,t=Bco.identity){return Rco.isArrayLike(e)?xco(wco.toArray(e),t):[]}function xco(e,t){switch(typeof t){case"function":return jlt.dropWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return jlt.dropWhile(e,Dco.matchesProperty(r,n))}else return jlt.dropWhile(e,Nco.matches(t));case"number":case"symbol":case"string":return jlt.dropWhile(e,Tco.property(t))}}Iqt.dropWhile=kco});var yoe=H(mqt=>{"use strict";Object.defineProperty(mqt,Symbol.toStringTag,{value:"Module"});function Gco(e,t,r=1){if(t==null&&(t=e,e=0),!Number.isInteger(r)||r===0)throw new Error("The step value must be a non-zero integer.");let n=Math.max(Math.ceil((t-e)/r),0),a=new Array(n);for(let o=0;o{"use strict";Object.defineProperty(Cqt,Symbol.toStringTag,{value:"Module"});var Fco=Bm(),Zco=yoe(),Lco=Bf();function Vco(e,t=Fco.identity){if(!e)return e;let r=Lco.isArrayLike(e)||Array.isArray(e)?Zco.range(0,e.length):Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(_qt,Symbol.toStringTag,{value:"Module"});var Wco=Bm(),Oco=yoe(),Pco=Bf();function Mco(e,t=Wco.identity){if(!e)return e;let r=Pco.isArrayLike(e)?Oco.range(0,e.length):Object.keys(e);for(let n=r.length-1;n>=0;n--){let a=r[n],o=e[a];if(t(o,a,e)===!1)break}return e}_qt.forEachRight=Mco});var d$=H(bqt=>{"use strict";Object.defineProperty(bqt,Symbol.toStringTag,{value:"Module"});var Hco=lve(),Yco=Bf(),Qco=uM(),Xco=Nk();function Jco(e,t,r){return Qco.isObject(r)&&(typeof t=="number"&&Yco.isArrayLike(r)&&Hco.isIndex(t)&&t{"use strict";Object.defineProperty(Eqt,Symbol.toStringTag,{value:"Module"});var Uco=Bm(),Kco=d$(),jco=fX(),zco=Bf(),qco=t8(),$co=r8();function elo(e,t,r){if(!e)return!0;r&&Kco.isIterateeCall(e,t,r)&&(t=void 0),t||(t=Uco.identity);let n;switch(typeof t){case"function":{n=t;break}case"object":{if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];n=$co.matchesProperty(a,o)}else n=qco.matches(t);break}case"symbol":case"number":case"string":n=jco.property(t)}if(!zco.isArrayLike(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(vqt,Symbol.toStringTag,{value:"Module"});function tlo(e,t,r=0,n=e.length){let a=e.length,o=Math.max(r>=0?r:a+r,0),l=Math.min(n>=0?n:a+n,a);for(let A=o;A{"use strict";Object.defineProperty(Bqt,Symbol.toStringTag,{value:"Module"});function rlo(e){return typeof e=="string"||e instanceof String}Bqt.isString=rlo});var Tqt=H(wqt=>{"use strict";Object.defineProperty(wqt,Symbol.toStringTag,{value:"Module"});var nlo=XTn(),ilo=Bf(),slo=gve();function olo(e,t,r=0,n=e?e.length:0){return ilo.isArrayLike(e)?slo.isString(e)?e:(r=Math.floor(r),n=Math.floor(n),r||(r=0),n||(n=0),nlo.fill(e,t,r,n)):[]}wqt.fill=olo});var qlt=H(Rqt=>{"use strict";Object.defineProperty(Rqt,Symbol.toStringTag,{value:"Module"});var alo=Bm(),clo=Bf(),llo=cm();function ulo(e,t=alo.identity){if(!e)return[];if(t=llo.iteratee(t),!Array.isArray(e)){let a=[],o=Object.keys(e),l=clo.isArrayLike(e)?e.length:o.length;for(let A=0;A{"use strict";Object.defineProperty(Nqt,Symbol.toStringTag,{value:"Module"});var glo=Bm(),Alo=cm();function dlo(e,t=glo.identity,r=0){if(!e)return;r<0&&(r=Math.max(e.length+r,0));let n=Alo.iteratee(t);if(!Array.isArray(e)){let a=Object.keys(e);for(let o=r;o{"use strict";Object.defineProperty(kqt,Symbol.toStringTag,{value:"Module"});function plo(e){return e}kqt.identity=plo});var Gqt=H(xqt=>{"use strict";Object.defineProperty(xqt,Symbol.toStringTag,{value:"Module"});var flo=n8(),Ilo=fX(),hlo=t8(),mlo=r8();function Clo(e,t=flo.identity,r=0){if(!e)return-1;r<0&&(r=Math.max(e.length+r,0));let n=Array.from(e).slice(r),a=-1;switch(typeof t){case"function":{a=n.findIndex(t);break}case"object":{if(Array.isArray(t)&&t.length===2){let o=t[0],l=t[1];a=n.findIndex(mlo.matchesProperty(o,l))}else a=n.findIndex(hlo.matches(t));break}case"number":case"symbol":case"string":a=n.findIndex(Ilo.property(t))}return a===-1?-1:a+r}xqt.findIndex=Clo});var Zqt=H(Fqt=>{"use strict";Object.defineProperty(Fqt,Symbol.toStringTag,{value:"Module"});var _lo=Bm(),ylo=cm(),blo=sT();function Elo(e,t=_lo.identity,r){if(!e)return;let n=Array.isArray(e)?e.length:Object.keys(e).length;r=blo.toInteger(r??n-1),r<0?r=Math.max(n+r,0):r=Math.min(r,n-1);let a=ylo.iteratee(t);if(!Array.isArray(e)){let o=Object.keys(e);for(let l=r;l>=0;l--){let A=o[l],f=e[A];if(a(f,A,e))return f}return}return e.slice(0,r+1).findLast(a)}Fqt.findLast=Elo});var Vqt=H(Lqt=>{"use strict";Object.defineProperty(Lqt,Symbol.toStringTag,{value:"Module"});var Slo=Bm(),vlo=DZ(),Blo=fX(),wlo=t8(),Tlo=r8();function Rlo(e,t=Slo.identity,r=e?e.length-1:0){if(!e)return-1;r<0?r=Math.max(e.length+r,0):r=Math.min(r,e.length-1);let n=vlo.toArray(e).slice(0,r+1);switch(typeof t){case"function":return n.findLastIndex(t);case"object":if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];return n.findLastIndex(Tlo.matchesProperty(a,o))}else return n.findLastIndex(wlo.matches(t));case"number":case"symbol":case"string":return n.findLastIndex(Blo.property(t))}}Lqt.findLastIndex=Rlo});var JTn=H(Wqt=>{"use strict";Object.defineProperty(Wqt,Symbol.toStringTag,{value:"Module"});function Nlo(e){return e[0]}Wqt.head=Nlo});var Pqt=H(Oqt=>{"use strict";Object.defineProperty(Oqt,Symbol.toStringTag,{value:"Module"});var Dlo=JTn(),klo=DZ(),xlo=Bf();function Glo(e){if(xlo.isArrayLike(e))return Dlo.head(klo.toArray(e))}Oqt.head=Glo});var nIe=H(Mqt=>{"use strict";Object.defineProperty(Mqt,Symbol.toStringTag,{value:"Module"});var Flo=Bf();function Zlo(e,t=1){let r=[],n=Math.floor(t);if(!Flo.isArrayLike(e))return r;let a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(Hqt,Symbol.toStringTag,{value:"Module"});var Llo=nIe();function Vlo(e,t=1){return Llo.flatten(e,t)}Hqt.flattenDepth=Vlo});var q3e=H(Yqt=>{"use strict";Object.defineProperty(Yqt,Symbol.toStringTag,{value:"Module"});var Wlo=Bm(),Olo=yoe(),Plo=Bf(),Mlo=cm();function Hlo(e,t){if(!e)return[];let r=Plo.isArrayLike(e)||Array.isArray(e)?Olo.range(0,e.length):Object.keys(e),n=Mlo.iteratee(t??Wlo.identity),a=new Array(r.length);for(let o=0;o{"use strict";Object.defineProperty(Qqt,Symbol.toStringTag,{value:"Module"});function Ylo(e){return e==null}Qqt.isNil=Ylo});var Jqt=H(Xqt=>{"use strict";Object.defineProperty(Xqt,Symbol.toStringTag,{value:"Module"});var Qlo=Ave(),UTn=q3e(),KTn=boe();function Xlo(e,t){if(KTn.isNil(e))return[];let r=KTn.isNil(t)?UTn.map(e):UTn.map(e,t);return Qlo.flattenDepth(r,1)}Xqt.flatMap=Xlo});var $3e=H(Uqt=>{"use strict";Object.defineProperty(Uqt,Symbol.toStringTag,{value:"Module"});var Jlo=nIe(),Ulo=q3e(),Klo=Bm(),jlo=cm();function zlo(e,t=Klo.identity,r=1){if(e==null)return[];let n=jlo.iteratee(t),a=Ulo.map(e,n);return Jlo.flatten(a,r)}Uqt.flatMapDepth=zlo});var jqt=H(Kqt=>{"use strict";Object.defineProperty(Kqt,Symbol.toStringTag,{value:"Module"});var qlo=$3e();function $lo(e,t){return qlo.flatMapDepth(e,t,1/0)}Kqt.flatMapDeep=$lo});var qqt=H(zqt=>{"use strict";Object.defineProperty(zqt,Symbol.toStringTag,{value:"Module"});var euo=Ave();function tuo(e){return euo.flattenDepth(e,1/0)}zqt.flattenDeep=tuo});var jTn=H($qt=>{"use strict";Object.defineProperty($qt,Symbol.toStringTag,{value:"Module"});function ruo(e,t){let r={};for(let n=0;n{"use strict";Object.defineProperty(e$t,Symbol.toStringTag,{value:"Module"});var nuo=jTn(),iuo=Bm(),suo=Bf(),ouo=cm();function auo(e,t){if(e==null)return{};let r=suo.isArrayLike(e)?Array.from(e):Object.values(e),n=ouo.iteratee(t??iuo.identity);return nuo.groupBy(r,n)}e$t.groupBy=auo});var n$t=H(r$t=>{"use strict";Object.defineProperty(r$t,Symbol.toStringTag,{value:"Module"});var cuo=gve(),luo=Nk(),uuo=sT();function guo(e,t,r,n){if(e==null)return!1;if(n||!r?r=0:r=uuo.toInteger(r),cuo.isString(e))return r>e.length||t instanceof RegExp?!1:(r<0&&(r=Math.max(0,e.length+r)),e.includes(t,r));if(Array.isArray(e))return e.includes(t,r);let a=Object.keys(e);r<0&&(r=Math.max(0,a.length+r));for(let o=r;o{"use strict";Object.defineProperty(i$t,Symbol.toStringTag,{value:"Module"});var Auo=Bf();function duo(e,t,r){if(!Auo.isArrayLike(e))return-1;if(Number.isNaN(t)){r=r??0,r<0&&(r=Math.max(0,e.length+r));for(let n=r;n{"use strict";Object.defineProperty(o$t,Symbol.toStringTag,{value:"Module"});function puo(e){return e.slice(0,-1)}o$t.initial=puo});var c$t=H(a$t=>{"use strict";Object.defineProperty(a$t,Symbol.toStringTag,{value:"Module"});var fuo=zTn(),Iuo=Bf();function huo(e){return Iuo.isArrayLike(e)?fuo.initial(Array.from(e)):[]}a$t.initial=huo});var qTn=H(l$t=>{"use strict";Object.defineProperty(l$t,Symbol.toStringTag,{value:"Module"});function muo(e,t){let r=new Set(t);return e.filter(n=>r.has(n))}l$t.intersection=muo});var iIe=H(u$t=>{"use strict";Object.defineProperty(u$t,Symbol.toStringTag,{value:"Module"});function Cuo(e){return[...new Set(e)]}u$t.uniq=Cuo});var A$t=H(g$t=>{"use strict";Object.defineProperty(g$t,Symbol.toStringTag,{value:"Module"});var _uo=qTn(),yuo=iIe(),$Tn=B2();function buo(...e){if(e.length===0)return[];if(!$Tn.isArrayLikeObject(e[0]))return[];let t=yuo.uniq(Array.from(e[0]));for(let r=1;r{"use strict";Object.defineProperty(d$t,Symbol.toStringTag,{value:"Module"});function Euo(e,t,r){let n=[],a=new Set(t.map(r));for(let o=0;o{"use strict";Object.defineProperty(f$t,Symbol.toStringTag,{value:"Module"});var p$t=eRn(),Suo=j3e(),vuo=iIe(),Buo=Bm(),wuo=fX(),$lt=B2();function Tuo(e,...t){if(!$lt.isArrayLikeObject(e))return[];let r=Suo.last(t);if(r===void 0)return Array.from(e);let n=vuo.uniq(Array.from(e)),a=$lt.isArrayLikeObject(r)?t.length:t.length-1;for(let o=0;or(A)):typeof r=="string"&&(n=p$t.intersectionBy(n,Array.from(l),wuo.property(r)))}return n}f$t.intersectionBy=Tuo});var tRn=H(I$t=>{"use strict";Object.defineProperty(I$t,Symbol.toStringTag,{value:"Module"});function Ruo(e,t,r){return e.filter(n=>t.some(a=>r(n,a)))}I$t.intersectionWith=Ruo});var e5e=H(h$t=>{"use strict";Object.defineProperty(h$t,Symbol.toStringTag,{value:"Module"});var Nuo=iIe(),Duo=Bf();function kuo(e){return Duo.isArrayLike(e)?Nuo.uniq(Array.from(e)):[]}h$t.uniq=kuo});var tut=H(m$t=>{"use strict";Object.defineProperty(m$t,Symbol.toStringTag,{value:"Module"});var xuo=A$(),Guo=tRn(),Fuo=e5e(),Zuo=Nk();function Luo(e,...t){if(e==null)return[];let r=xuo.last(t),n=Zuo.isEqualsSameValueZero,a=Fuo.uniq;typeof r=="function"&&(n=r,a=Vuo,t.pop());let o=a(Array.from(e));for(let l=0;l{"use strict";Object.defineProperty(C$t,Symbol.toStringTag,{value:"Module"});function Wuo(e){return typeof e=="function"}C$t.isFunction=Wuo});var b$t=H(y$t=>{"use strict";Object.defineProperty(y$t,Symbol.toStringTag,{value:"Module"});Tzt();var Ouo=Eoe(),Puo=boe(),_$t=lM(),Muo=Bf();function Huo(e,t,...r){if(Puo.isNil(e))return[];let n=Muo.isArrayLike(e)?Array.from(e):Object.values(e),a=[];for(let o=0;o0&&(f=_$t.get(l,I))}else if(typeof t=="string"&&t.includes(".")){let C=t.split(".").slice(0,-1).join(".");f=_$t.get(l,C)}a.push(A?.apply(f,r))}return a}y$t.invokeMap=Huo});var S$t=H(E$t=>{"use strict";Object.defineProperty(E$t,Symbol.toStringTag,{value:"Module"});var Yuo=Bf();function Quo(e,t){return Yuo.isArrayLike(e)?Array.from(e).join(t):""}E$t.join=Quo});var rut=H(v$t=>{"use strict";Object.defineProperty(v$t,Symbol.toStringTag,{value:"Module"});var Xuo=Bm(),Juo=yoe(),Uuo=Bf();function Kuo(e,t=Xuo.identity,r){if(!e)return r;let n,a=0;Uuo.isArrayLike(e)?(n=Juo.range(0,e.length),r==null&&e.length>0&&(r=e[0],a+=1)):(n=Object.keys(e),r==null&&(r=e[n[0]],a+=1));for(let o=a;o{"use strict";Object.defineProperty(B$t,Symbol.toStringTag,{value:"Module"});var juo=rut(),zuo=Bm(),quo=Bf(),$uo=Coe(),ego=cm();function tgo(e,t){if(!quo.isArrayLike(e)&&!$uo.isObjectLike(e))return{};let r=ego.iteratee(t??zuo.identity);return juo.reduce(e,(n,a)=>{let o=r(a);return n[o]=a,n},{})}B$t.keyBy=tgo});var R$t=H(T$t=>{"use strict";Object.defineProperty(T$t,Symbol.toStringTag,{value:"Module"});var rgo=Bf();function ngo(e,t,r){if(!rgo.isArrayLike(e)||e.length===0)return-1;let n=e.length,a=r??n-1;if(r!=null&&(a=a<0?Math.max(n+a,0):Math.min(a,n-1)),Number.isNaN(t)){for(let o=a;o>=0;o--)if(Number.isNaN(e[o]))return o}return Array.from(e).lastIndexOf(t,a)}T$t.lastIndexOf=ngo});var D$t=H(N$t=>{"use strict";Object.defineProperty(N$t,Symbol.toStringTag,{value:"Module"});var igo=B2(),sgo=sT();function ogo(e,t=0){if(!(!igo.isArrayLikeObject(e)||e.length===0))return t=sgo.toInteger(t),t<0&&(t+=e.length),e[t]}N$t.nth=ogo});var nRn=H(k$t=>{"use strict";Object.defineProperty(k$t,Symbol.toStringTag,{value:"Module"});function rRn(e){return typeof e=="symbol"?1:e===null?2:e===void 0?3:e!==e?4:0}var ago=(e,t,r)=>{if(e!==t){let n=rRn(e),a=rRn(t);if(n===a&&n===0){if(et)return r==="desc"?-1:1}return r==="desc"?a-n:n-a}return 0};k$t.compareValues=ago});var t5e=H(x$t=>{"use strict";Object.defineProperty(x$t,Symbol.toStringTag,{value:"Module"});var cgo=_oe(),lgo=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ugo=/^\w*$/;function ggo(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof e=="boolean"||e==null||cgo.isSymbol(e)?!0:typeof e=="string"&&(ugo.test(e)||!lgo.test(e))||t!=null&&Object.hasOwn(t,e)}x$t.isKey=ggo});var nut=H(G$t=>{"use strict";Object.defineProperty(G$t,Symbol.toStringTag,{value:"Module"});var Ago=nRn(),dgo=t5e(),pgo=cM();function fgo(e,t,r,n){if(e==null)return[];r=n?void 0:r,Array.isArray(e)||(e=Object.values(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(r)||(r=r==null?[]:[r]),r=r.map(f=>String(f));let a=(f,I)=>{let C=f;for(let b=0;bI==null||f==null?I:typeof f=="object"&&"key"in f?Object.hasOwn(I,f.key)?I[f.key]:a(I,f.path):typeof f=="function"?f(I):Array.isArray(f)?a(I,f):typeof I=="object"?I[f]:I,l=t.map(f=>(Array.isArray(f)&&f.length===1&&(f=f[0]),f==null||typeof f=="function"||Array.isArray(f)||dgo.isKey(f)?f:{key:f,path:pgo.toPath(f)}));return e.map(f=>({original:f,criteria:l.map(I=>o(I,f))})).slice().sort((f,I)=>{for(let C=0;Cf.original)}G$t.orderBy=fgo});var Z$t=H(F$t=>{"use strict";Object.defineProperty(F$t,Symbol.toStringTag,{value:"Module"});var Igo=Bm(),hgo=Bf(),mgo=cm();function Cgo(e,t=Igo.identity){if(!e)return[[],[]];let r=hgo.isArrayLike(e)?e:Object.values(e);t=mgo.iteratee(t);let n=[],a=[];for(let o=0;o{"use strict";Object.defineProperty(L$t,Symbol.toStringTag,{value:"Module"});function _go(e,t){let r=new Set(t),n=0;for(let a=0;a{"use strict";Object.defineProperty(W$t,Symbol.toStringTag,{value:"Module"});var ygo=V$t();function bgo(e,...t){return ygo.pull(e,t)}W$t.pull=bgo});var M$t=H(P$t=>{"use strict";Object.defineProperty(P$t,Symbol.toStringTag,{value:"Module"});var Ego=V$t();function Sgo(e,t=[]){return Ego.pull(e,Array.from(t))}P$t.pullAll=Sgo});var Y$t=H(H$t=>{"use strict";Object.defineProperty(H$t,Symbol.toStringTag,{value:"Module"});var vgo=cm();function Bgo(e,t,r){let n=vgo.iteratee(r),a=new Set(Array.from(t).map(l=>n(l))),o=0;for(let l=0;l{"use strict";function wgo(e,t){let r=e.length;t==null&&(t=Array(r));for(let n=0;n{"use strict";Object.defineProperty(Q$t,Symbol.toStringTag,{value:"Module"});var Tgo=sRn(),Rgo=Nk();function Ngo(e,t,r){if(e?.length==null||t?.length==null)return e;e===t&&(t=Tgo(t));let n=0;r==null&&(r=(l,A)=>Rgo.isEqualsSameValueZero(l,A));let a=Array.isArray(t)?t:Array.from(t),o=a.includes(void 0);for(let l=0;lr(e[l],f))||(e[n++]=e[l]);continue}o||delete e[n++]}return e.length=n,e}Q$t.pullAllWith=Ngo});var iut=H(J$t=>{"use strict";Object.defineProperty(J$t,Symbol.toStringTag,{value:"Module"});var Dgo=lM(),kgo=Bf(),xgo=gve();function Ggo(e,...t){if(t.length===0)return[];let r=[];for(let a=0;a{"use strict";Object.defineProperty(K$t,Symbol.toStringTag,{value:"Module"});var Fgo=lM(),U$t=P3e(),Zgo=ove(),Lgo=u$(),Vgo=cM();function Wgo(e,t){if(e==null)return!0;switch(typeof t){case"symbol":case"number":case"object":{if(Array.isArray(t))return oRn(e,t);if(typeof t=="number"?t=Lgo.toKey(t):typeof t=="object"&&(Object.is(t?.valueOf(),-0)?t="-0":t=String(t)),U$t.isUnsafeProperty(t))return!1;if(e?.[t]===void 0)return!0;try{return delete e[t],!0}catch{return!1}}case"string":{if(e?.[t]===void 0&&Zgo.isDeepKey(t))return oRn(e,Vgo.toPath(t));if(U$t.isUnsafeProperty(t))return!1;try{return delete e[t],!0}catch{return!1}}}}function oRn(e,t){let r=t.length===1?e:Fgo.get(e,t.slice(0,-1)),n=t[t.length-1];if(r?.[n]===void 0)return!0;if(U$t.isUnsafeProperty(n))return!1;try{return delete r[n],!0}catch{return!1}}K$t.unset=Wgo});var p$=H(j$t=>{"use strict";Object.defineProperty(j$t,Symbol.toStringTag,{value:"Module"});function Ogo(e){return Array.isArray(e)}j$t.isArray=Ogo});var q$t=H(z$t=>{"use strict";Object.defineProperty(z$t,Symbol.toStringTag,{value:"Module"});var Pgo=Ave(),aRn=lve(),Mgo=t5e(),Hgo=u$(),Ygo=iut(),Qgo=r5e(),Xgo=p$(),Jgo=cM();function Ugo(e,...t){let r=Pgo.flattenDepth(t,1);if(!e)return Array(r.length);let n=Ygo.at(e,r),a=r.map(o=>aRn.isIndex(o,e.length)?Number(o):o).sort((o,l)=>l-o);for(let o of new Set(a)){if(aRn.isIndex(o,e.length)){Array.prototype.splice.call(e,o,1);continue}if(Mgo.isKey(o,e)){delete e[Hgo.toKey(o)];continue}let l=Xgo.isArray(o)?o:Jgo.toPath(o);Qgo.unset(e,l)}return n}z$t.pullAt=Ugo});var eer=H($$t=>{"use strict";Object.defineProperty($$t,Symbol.toStringTag,{value:"Module"});var Kgo=Bm(),jgo=yoe(),zgo=Bf();function qgo(e,t=Kgo.identity,r){if(!e)return r;let n,a;zgo.isArrayLike(e)?(n=jgo.range(0,e.length).reverse(),r==null&&e.length>0?(r=e[e.length-1],a=1):a=0):(n=Object.keys(e).reverse(),r==null?(r=e[n[0]],a=1):a=0);for(let o=a;o{"use strict";Object.defineProperty(ter,Symbol.toStringTag,{value:"Module"});function $go(e){if(typeof e!="function")throw new TypeError("Expected a function");return function(...t){return!e.apply(this,t)}}ter.negate=$go});var ner=H(rer=>{"use strict";Object.defineProperty(rer,Symbol.toStringTag,{value:"Module"});var eAo=qlt(),tAo=Bm(),rAo=n5e(),nAo=cm();function iAo(e,t=tAo.identity){return eAo.filter(e,rAo.negate(nAo.iteratee(t)))}rer.reject=iAo});var cRn=H(ier=>{"use strict";Object.defineProperty(ier,Symbol.toStringTag,{value:"Module"});function sAo(e,t){let r=e.slice(),n=[],a=0;for(let o=0;o{"use strict";Object.defineProperty(ser,Symbol.toStringTag,{value:"Module"});var oAo=cRn(),aAo=Bm(),cAo=cm();function lAo(e,t=aAo.identity){return oAo.remove(e,cAo.iteratee(t))}ser.remove=lAo});var cer=H(aer=>{"use strict";Object.defineProperty(aer,Symbol.toStringTag,{value:"Module"});function uAo(e){return e==null?e:e.reverse()}aer.reverse=uAo});var lRn=H(ler=>{"use strict";Object.defineProperty(ler,Symbol.toStringTag,{value:"Module"});function gAo(e){let t=Math.floor(Math.random()*e.length);return e[t]}ler.sample=gAo});var ger=H(uer=>{"use strict";Object.defineProperty(uer,Symbol.toStringTag,{value:"Module"});var uRn=lRn(),AAo=DZ(),dAo=Bf();function pAo(e){if(e!=null)return dAo.isArrayLike(e)?uRn.sample(AAo.toArray(e)):uRn.sample(Object.values(e))}uer.sample=pAo});var der=H(Aer=>{"use strict";Object.defineProperty(Aer,Symbol.toStringTag,{value:"Module"});function fAo(e,t){if(t==null&&(t=e,e=0),e>=t)throw new Error("Invalid input: The maximum value must be greater than the minimum value.");return Math.random()*(t-e)+e}Aer.random=fAo});var fer=H(per=>{"use strict";Object.defineProperty(per,Symbol.toStringTag,{value:"Module"});var IAo=der();function hAo(e,t){return Math.floor(IAo.random(e,t))}per.randomInt=hAo});var gRn=H(Ier=>{"use strict";Object.defineProperty(Ier,Symbol.toStringTag,{value:"Module"});var mAo=fer();function CAo(e,t){if(t>e.length)throw new Error("Size must be less than or equal to the length of array.");let r=new Array(t),n=new Set;for(let a=e.length-t,o=0;a{"use strict";Object.defineProperty(her,Symbol.toStringTag,{value:"Module"});var ARn=q9();function _Ao(e,t,r){return r===void 0&&(r=t,t=void 0),r!==void 0&&(r=ARn.toNumber(r),e=Math.min(e,Number.isNaN(r)?0:r)),t!==void 0&&(t=ARn.toNumber(t),e=Math.max(e,Number.isNaN(t)?0:t)),e}her.clamp=_Ao});var dRn=H(mer=>{"use strict";Object.defineProperty(mer,Symbol.toStringTag,{value:"Module"});function yAo(e){return e instanceof Map}mer.isMap=yAo});var sut=H(Cer=>{"use strict";Object.defineProperty(Cer,Symbol.toStringTag,{value:"Module"});var bAo=dRn();function EAo(e){return bAo.isMap(e)}Cer.isMap=EAo});var i5e=H(_er=>{"use strict";Object.defineProperty(_er,Symbol.toStringTag,{value:"Module"});var SAo=Bf(),vAo=sut();function BAo(e){return e==null?[]:SAo.isArrayLike(e)||vAo.isMap(e)?Array.from(e):typeof e=="object"?Object.values(e):[]}_er.toArray=BAo});var ber=H(yer=>{"use strict";Object.defineProperty(yer,Symbol.toStringTag,{value:"Module"});var wAo=gRn(),TAo=d$(),RAo=sIe(),NAo=i5e(),DAo=sT();function kAo(e,t,r){let n=NAo.toArray(e);return(r?TAo.isIterateeCall(e,t,r):t===void 0)?t=1:t=RAo.clamp(DAo.toInteger(t),0,n.length),wAo.sampleSize(n,t)}yer.sampleSize=kAo});var pRn=H(Eer=>{"use strict";Object.defineProperty(Eer,Symbol.toStringTag,{value:"Module"});function xAo(e){let t=e.slice();for(let r=t.length-1;r>=1;r--){let n=Math.floor(Math.random()*(r+1));[t[r],t[n]]=[t[n],t[r]]}return t}Eer.shuffle=xAo});var out=H(Ser=>{"use strict";Object.defineProperty(Ser,Symbol.toStringTag,{value:"Module"});function GAo(e){return e==null?[]:Object.values(e)}Ser.values=GAo});var dve=H(ver=>{"use strict";Object.defineProperty(ver,Symbol.toStringTag,{value:"Module"});function FAo(e){return e==null}ver.isNil=FAo});var Ter=H(wer=>{"use strict";Object.defineProperty(wer,Symbol.toStringTag,{value:"Module"});var Ber=pRn(),ZAo=out(),LAo=p$(),VAo=Bf(),WAo=dve(),OAo=Coe();function PAo(e){return WAo.isNil(e)?[]:LAo.isArray(e)?Ber.shuffle(e):VAo.isArrayLike(e)?Ber.shuffle(Array.from(e)):OAo.isObjectLike(e)?Ber.shuffle(ZAo.values(e)):[]}wer.shuffle=PAo});var Ner=H(Rer=>{"use strict";Object.defineProperty(Rer,Symbol.toStringTag,{value:"Module"});var MAo=boe();function HAo(e){return MAo.isNil(e)?0:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}Rer.size=HAo});var ker=H(Der=>{"use strict";Object.defineProperty(Der,Symbol.toStringTag,{value:"Module"});var YAo=d$(),QAo=Bf(),fRn=sT();function XAo(e,t,r){if(!QAo.isArrayLike(e))return[];let n=e.length;r===void 0?r=n:typeof r!="number"&&YAo.isIterateeCall(e,t,r)&&(t=0,r=n),t=fRn.toInteger(t),r=fRn.toInteger(r),t<0?t=Math.max(n+t,0):t=Math.min(t,n),r<0?r=Math.max(n+r,0):r=Math.min(r,n);let a=Math.max(r-t,0),o=new Array(a);for(let l=0;l{"use strict";Object.defineProperty(xer,Symbol.toStringTag,{value:"Module"});var JAo=Bm(),UAo=fX(),KAo=t8(),jAo=r8();function zAo(e,t,r){if(!e)return!1;r!=null&&(t=void 0),t==null&&(t=JAo.identity);let n=Array.isArray(e)?e:Object.values(e);switch(typeof t){case"function":{if(!Array.isArray(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(Fer,Symbol.toStringTag,{value:"Module"});var qAo=nut(),$Ao=O3e(),IRn=d$();function edo(e,...t){let r=t.length;return r>1&&IRn.isIterateeCall(e,t[0],t[1])?t=[]:r>2&&IRn.isIterateeCall(t[0],t[1],t[2])&&(t=[t[0]]),qAo.orderBy(e,$Ao.flatten(t),["asc"])}Fer.sortBy=edo});var aut=H(Ler=>{"use strict";Object.defineProperty(Ler,Symbol.toStringTag,{value:"Module"});function tdo(e){return e===null}Ler.isNull=tdo});var Wer=H(Ver=>{"use strict";Object.defineProperty(Ver,Symbol.toStringTag,{value:"Module"});function rdo(e){return e===void 0}Ver.isUndefined=rdo});var cut=H(Oer=>{"use strict";Object.defineProperty(Oer,Symbol.toStringTag,{value:"Module"});function ndo(e){return Number.isNaN(e)}Oer.isNaN=ndo});var s5e=H(Per=>{"use strict";Object.defineProperty(Per,Symbol.toStringTag,{value:"Module"});var hRn=aut(),mRn=Wer(),ido=n8(),CRn=cut(),sdo=dve(),_Rn=_oe(),odo=cm(),ado=4294967295,cdo=ado-1;function ldo(e,t,r=ido.identity,n){if(sdo.isNil(e)||e.length===0)return 0;let a=0,o=e.length,l=odo.iteratee(r),A=l(t),f=CRn.isNaN(A),I=hRn.isNull(A),C=_Rn.isSymbol(A),b=mRn.isUndefined(A);for(;a{"use strict";Object.defineProperty(Mer,Symbol.toStringTag,{value:"Module"});function udo(e){return typeof e=="symbol"}Mer.isSymbol=udo});var o5e=H(Yer=>{"use strict";Object.defineProperty(Yer,Symbol.toStringTag,{value:"Module"});function gdo(e){return typeof e=="number"||e instanceof Number}Yer.isNumber=gdo});var lut=H(Qer=>{"use strict";Object.defineProperty(Qer,Symbol.toStringTag,{value:"Module"});var Ado=s5e(),ddo=boe(),pdo=aut(),fdo=Her(),Ido=o5e(),hdo=4294967295,mdo=hdo>>>1;function Cdo(e,t){if(ddo.isNil(e))return 0;let r=0,n=e.length;if(Ido.isNumber(t)&&t===t&&n<=mdo){for(;r>>1,o=e[a];!pdo.isNull(o)&&!fdo.isSymbol(o)&&oa)}Qer.sortedIndex=Cdo});var Jer=H(Xer=>{"use strict";Object.defineProperty(Xer,Symbol.toStringTag,{value:"Module"});var _do=lut(),ydo=Nk();function bdo(e,t){if(!e?.length)return-1;let r=_do.sortedIndex(e,t);return r{"use strict";Object.defineProperty(Uer,Symbol.toStringTag,{value:"Module"});var Edo=s5e();function Sdo(e,t,r){return Edo.sortedIndexBy(e,t,r,!0)}Uer.sortedLastIndexBy=Sdo});var gut=H(Ker=>{"use strict";Object.defineProperty(Ker,Symbol.toStringTag,{value:"Module"});var vdo=uut(),Bdo=boe(),wdo=aut(),Tdo=Her(),Rdo=o5e(),Ndo=4294967295,Ddo=Ndo>>>1;function kdo(e,t){if(Bdo.isNil(e))return 0;let r=e.length;if(!Rdo.isNumber(t)||Number.isNaN(t)||r>Ddo)return vdo.sortedLastIndexBy(e,t,a=>a);let n=0;for(;n>>1,o=e[a];!wdo.isNull(o)&&!Tdo.isSymbol(o)&&o<=t?n=a+1:r=a}return r}Ker.sortedLastIndex=kdo});var zer=H(jer=>{"use strict";Object.defineProperty(jer,Symbol.toStringTag,{value:"Module"});var xdo=gut(),Gdo=Nk();function Fdo(e,t){if(!e?.length)return-1;let r=xdo.sortedLastIndex(e,t)-1;return r>=0&&Gdo.isEqualsSameValueZero(e[r],t)?r:-1}jer.sortedLastIndexOf=Fdo});var yRn=H(qer=>{"use strict";Object.defineProperty(qer,Symbol.toStringTag,{value:"Module"});function Zdo(e){return e.slice(1)}qer.tail=Zdo});var etr=H($er=>{"use strict";Object.defineProperty($er,Symbol.toStringTag,{value:"Module"});var Ldo=yRn(),Vdo=DZ(),Wdo=Bf();function Odo(e){return Wdo.isArrayLike(e)?Ldo.tail(Vdo.toArray(e)):[]}$er.tail=Odo});var bRn=H(ttr=>{"use strict";Object.defineProperty(ttr,Symbol.toStringTag,{value:"Module"});var Pdo=sT();function Mdo(e,t,r){return t=r||t===void 0?1:Pdo.toInteger(t),e.slice(0,t)}ttr.take=Mdo});var ntr=H(rtr=>{"use strict";Object.defineProperty(rtr,Symbol.toStringTag,{value:"Module"});var Hdo=bRn(),Ydo=DZ(),Qdo=Bf(),Xdo=sT();function Jdo(e,t=1,r){return t=r?1:Xdo.toInteger(t),t<1||!Qdo.isArrayLike(e)?[]:Hdo.take(Ydo.toArray(e),t)}rtr.take=Jdo});var ERn=H(itr=>{"use strict";Object.defineProperty(itr,Symbol.toStringTag,{value:"Module"});var Udo=sT();function Kdo(e,t,r){return t=r||t===void 0?1:Udo.toInteger(t),t<=0||e.length===0?[]:e.slice(-t)}itr.takeRight=Kdo});var otr=H(str=>{"use strict";Object.defineProperty(str,Symbol.toStringTag,{value:"Module"});var jdo=ERn(),zdo=DZ(),qdo=Bf(),$do=sT();function epo(e,t=1,r){return t=r?1:$do.toInteger(t),t<=0||!qdo.isArrayLike(e)?[]:jdo.takeRight(zdo.toArray(e),t)}str.takeRight=epo});var SRn=H(atr=>{"use strict";Object.defineProperty(atr,Symbol.toStringTag,{value:"Module"});function tpo(e){return(...t)=>!e(...t)}atr.negate=tpo});var ltr=H(ctr=>{"use strict";Object.defineProperty(ctr,Symbol.toStringTag,{value:"Module"});var rpo=Bm(),npo=SRn(),ipo=DZ(),spo=B2(),opo=cm();function apo(e,t){if(!spo.isArrayLikeObject(e))return[];let r=ipo.toArray(e),n=r.findLastIndex(npo.negate(opo.iteratee(t??rpo.identity)));return r.slice(n+1)}ctr.takeRightWhile=apo});var gtr=H(utr=>{"use strict";Object.defineProperty(utr,Symbol.toStringTag,{value:"Module"});var cpo=DZ(),lpo=n8(),upo=n5e(),gpo=B2(),Apo=cm();function dpo(e,t){if(!gpo.isArrayLikeObject(e))return[];let r=cpo.toArray(e),n=r.findIndex(upo.negate(Apo.iteratee(t??lpo.identity)));return n===-1?r:r.slice(0,n)}utr.takeWhile=dpo});var dtr=H(Atr=>{"use strict";Object.defineProperty(Atr,Symbol.toStringTag,{value:"Module"});var ppo=$3e(),fpo=iIe(),Ipo=B2();function hpo(...e){let t=e.filter(Ipo.isArrayLikeObject),r=ppo.flatMapDepth(t,n=>Array.from(n),1);return fpo.uniq(r)}Atr.union=hpo});var Itr=H(ftr=>{"use strict";Object.defineProperty(ftr,Symbol.toStringTag,{value:"Module"});function mpo(e,t){let r=new Map;for(let n=0;n{"use strict";Object.defineProperty(htr,Symbol.toStringTag,{value:"Module"});function Cpo(e,t){return function(...r){return e.apply(this,r.slice(0,t))}}htr.ary=Cpo});var dut=H(mtr=>{"use strict";Object.defineProperty(mtr,Symbol.toStringTag,{value:"Module"});var _po=j3e(),ypo=iIe(),bpo=Itr(),Epo=Aut(),Spo=z3e(),vpo=B2(),Bpo=cm();function wpo(...e){let t=_po.last(e),r=Spo.flattenArrayLike(e);return vpo.isArrayLikeObject(t)||t==null?ypo.uniq(r):bpo.uniqBy(r,Epo.ary(Bpo.iteratee(t),1))}mtr.unionBy=wpo});var _tr=H(Ctr=>{"use strict";Object.defineProperty(Ctr,Symbol.toStringTag,{value:"Module"});function Tpo(e,t){let r=[];for(let n=0;n!t(l,a))&&r.push(a)}return r}Ctr.uniqWith=Tpo});var put=H(ytr=>{"use strict";Object.defineProperty(ytr,Symbol.toStringTag,{value:"Module"});var Rpo=j3e(),Npo=iIe(),Dpo=_tr(),kpo=z3e(),xpo=B2();function Gpo(...e){let t=Rpo.last(e),r=kpo.flattenArrayLike(e);return xpo.isArrayLikeObject(t)||t==null?Npo.uniq(r):Dpo.uniqWith(r,t)}ytr.unionWith=Gpo});var Etr=H(btr=>{"use strict";Object.defineProperty(btr,Symbol.toStringTag,{value:"Module"});var Fpo=Itr(),Zpo=Aut(),Lpo=Bm(),Vpo=B2(),Wpo=cm();function Opo(e,t=Lpo.identity){return Vpo.isArrayLikeObject(e)?Fpo.uniqBy(Array.from(e),Zpo.ary(Wpo.iteratee(t),1)):[]}btr.uniqBy=Opo});var vtr=H(Str=>{"use strict";Object.defineProperty(Str,Symbol.toStringTag,{value:"Module"});var Ppo=_tr(),Mpo=e5e(),Hpo=Bf();function Ypo(e,t){return Hpo.isArrayLike(e)?typeof t=="function"?Ppo.uniqWith(Array.from(e),t):Mpo.uniq(Array.from(e)):[]}Str.uniqWith=Ypo});var wtr=H(Btr=>{"use strict";Object.defineProperty(Btr,Symbol.toStringTag,{value:"Module"});function Qpo(e){let t=0;for(let n=0;nt&&(t=e[n].length);let r=new Array(t);for(let n=0;n{"use strict";Object.defineProperty(Ttr,Symbol.toStringTag,{value:"Module"});var Xpo=wtr(),Jpo=p$(),vRn=B2();function Upo(e){return!vRn.isArrayLikeObject(e)||!e.length?[]:(e=Jpo.isArray(e)?e:Array.from(e),e=e.filter(t=>vRn.isArrayLikeObject(t)),Xpo.unzip(e))}Ttr.unzip=Upo});var Ntr=H(Rtr=>{"use strict";Object.defineProperty(Rtr,Symbol.toStringTag,{value:"Module"});var BRn=wtr(),Kpo=p$(),jpo=B2();function zpo(e,t){if(!jpo.isArrayLikeObject(e)||!e.length)return[];let r=Kpo.isArray(e)?BRn.unzip(e):BRn.unzip(Array.from(e,a=>Array.from(a)));if(!t)return r;let n=new Array(r.length);for(let a=0;a{"use strict";Object.defineProperty(Dtr,Symbol.toStringTag,{value:"Module"});var qpo=K3e();function $po(e,...t){return qpo.difference(e,t)}Dtr.without=$po});var xtr=H(ktr=>{"use strict";Object.defineProperty(ktr,Symbol.toStringTag,{value:"Module"});var efo=wRn(),tfo=B2();function rfo(e,...t){return tfo.isArrayLikeObject(e)?efo.without(Array.from(e),...t):[]}ktr.without=rfo});var Ftr=H(Gtr=>{"use strict";Object.defineProperty(Gtr,Symbol.toStringTag,{value:"Module"});var nfo=B2(),ifo=i5e();function sfo(...e){let t=new Map;for(let n=0;n{"use strict";Object.defineProperty(Ztr,Symbol.toStringTag,{value:"Module"});function ofo(e,t,r=1,{partialWindows:n=!1}={}){if(t<=0||!Number.isInteger(t))throw new Error("Size must be a positive integer.");if(r<=0||!Number.isInteger(r))throw new Error("Step must be a positive integer.");let a=[],o=n?e.length:e.length-t+1;for(let l=0;l{"use strict";Object.defineProperty(Vtr,Symbol.toStringTag,{value:"Module"});var afo=Jlt(),cfo=eut(),lfo=A$(),TRn=dut(),ufo=Ltr(),gfo=Bm(),RRn=B2(),Afo=cm();function dfo(...e){let t=lfo.last(e),r=gfo.identity;!RRn.isArrayLikeObject(t)&&t!=null&&(r=Afo.iteratee(t),e=e.slice(0,-1));let n=e.filter(RRn.isArrayLikeObject),a=TRn.unionBy(...n,r),o=ufo.windowed(n,2).map(([l,A])=>cfo.intersectionBy(l,A,r));return afo.differenceBy(a,TRn.unionBy(...o,r),r)}Vtr.xorBy=dfo});var Ptr=H(Otr=>{"use strict";Object.defineProperty(Otr,Symbol.toStringTag,{value:"Module"});var pfo=Ult(),ffo=tut(),Ifo=A$(),NRn=put(),hfo=Ltr(),mfo=B2();function Cfo(...e){let t=Ifo.last(e),r=(l,A)=>l===A;typeof t=="function"&&(r=t,e=e.slice(0,-1));let n=e.filter(mfo.isArrayLikeObject),a=NRn.unionWith(...n,r),o=hfo.windowed(n,2).map(([l,A])=>ffo.intersectionWith(l,A,r));return pfo.differenceWith(a,NRn.unionWith(...o,r),r)}Otr.xorWith=Cfo});var Htr=H(Mtr=>{"use strict";Object.defineProperty(Mtr,Symbol.toStringTag,{value:"Module"});function _fo(...e){let t=0;for(let a=0;at&&(t=e[a].length);let r=e.length,n=Array(t);for(let a=0;a{"use strict";Object.defineProperty(Ytr,Symbol.toStringTag,{value:"Module"});var yfo=Htr(),bfo=B2();function Efo(...e){return e.length?yfo.zip(...e.filter(t=>bfo.isArrayLikeObject(t))):[]}Ytr.zip=Efo});var Iut=H(Xtr=>{"use strict";Object.defineProperty(Xtr,Symbol.toStringTag,{value:"Module"});var Sfo=Nk(),vfo=(e,t,r)=>{let n=e[t];(!(Object.hasOwn(e,t)&&Sfo.isEqualsSameValueZero(n,r))||r===void 0&&!(t in e))&&(e[t]=r)};Xtr.assignValue=vfo});var Utr=H(Jtr=>{"use strict";Object.defineProperty(Jtr,Symbol.toStringTag,{value:"Module"});var Bfo=Iut();function wfo(e=[],t=[]){let r={};for(let n=0;n{"use strict";Object.defineProperty(Ktr,Symbol.toStringTag,{value:"Module"});var Tfo=lM(),Rfo=P3e(),Nfo=Iut(),Dfo=lve(),kfo=t5e(),xfo=u$(),DRn=uM(),Gfo=cM();function Ffo(e,t,r,n){if(e==null&&!DRn.isObject(e))return e;let a;kfo.isKey(t,e)?a=[t]:Array.isArray(t)?a=t:a=Gfo.toPath(t);let o=r(Tfo.get(e,a)),l=e;for(let A=0;A{"use strict";Object.defineProperty(jtr,Symbol.toStringTag,{value:"Module"});var Zfo=pve();function Lfo(e,t,r){return Zfo.updateWith(e,t,()=>r,()=>{})}jtr.set=Lfo});var qtr=H(ztr=>{"use strict";Object.defineProperty(ztr,Symbol.toStringTag,{value:"Module"});var Vfo=Htr(),Wfo=a5e(),kRn=Bf();function Ofo(e,t){let r={};if(!kRn.isArrayLike(e))return r;kRn.isArrayLike(t)||(t=[]);let n=Vfo.zip(Array.from(e),Array.from(t));for(let a=0;a{"use strict";Object.defineProperty($tr,Symbol.toStringTag,{value:"Module"});var Pfo=fut(),Mfo=Eoe();function Hfo(...e){let t=e.pop();if(Mfo.isFunction(t)||(e.push(t),t=void 0),!e?.length)return[];let r=Pfo.unzip(e);return t==null?r:r.map(n=>t(...n))}$tr.zipWith=Hfo});var nrr=H(rrr=>{"use strict";Object.defineProperty(rrr,Symbol.toStringTag,{value:"Module"});var Yfo=sT();function Qfo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");return e=Yfo.toInteger(e),function(...r){if(--e<1)return t.apply(this,r)}}rrr.after=Qfo});var hut=H(irr=>{"use strict";Object.defineProperty(irr,Symbol.toStringTag,{value:"Module"});var Xfo=Aut();function Jfo(e,t=e.length,r){return r&&(t=e.length),(Number.isNaN(t)||t<0)&&(t=0),Xfo.ary(e,t)}irr.ary=Jfo});var mut=H(srr=>{"use strict";Object.defineProperty(srr,Symbol.toStringTag,{value:"Module"});function Ufo(e,...t){try{return e(...t)}catch(r){return r instanceof Error?r:new Error(r)}}srr.attempt=Ufo});var arr=H(orr=>{"use strict";Object.defineProperty(orr,Symbol.toStringTag,{value:"Module"});var Kfo=sT();function jfo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");let r;return e=Kfo.toInteger(e),function(...n){return--e>0&&(r=t.apply(this,n)),e<=1&&t&&(t=void 0),r}}orr.before=jfo});var urr=H(lrr=>{"use strict";Object.defineProperty(lrr,Symbol.toStringTag,{value:"Module"});function crr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Arr,Symbol.toStringTag,{value:"Module"});function grr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(frr,Symbol.toStringTag,{value:"Module"});function c5e(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===c5e.placeholder),l=a.length-o.length;return lA===c5e.placeholder),l=a.length-o.length;return a=$fo(a,r),l{"use strict";Object.defineProperty(mrr,Symbol.toStringTag,{value:"Module"});function fve(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===fve.placeholder),l=a.length-o.length;return lA===fve.placeholder),l=a.length-o.length;return a=eIo(a,r),ll===fve.placeholder).length,n=Math.max(e.length-r,0),a=[],o=0;for(let l=0;l{"use strict";Object.defineProperty(_rr,Symbol.toStringTag,{value:"Module"});function tIo(e,t,{signal:r,edges:n}={}){let a,o=null,l=n!=null&&n.includes("leading"),A=n==null||n.includes("trailing"),f=()=>{o!==null&&(e.apply(a,o),a=void 0,o=null)},I=()=>{A&&f(),N()},C=null,b=()=>{C!=null&&clearTimeout(C),C=setTimeout(()=>{C=null,I()},t)},E=()=>{C!==null&&(clearTimeout(C),C=null)},N=()=>{E(),a=void 0,o=null},B=()=>{f()},F=function(...Q){if(r?.aborted)return;a=this,o=Q;let J=C==null;b(),l&&J&&f()};return F.schedule=b,F.cancel=N,F.flush=B,r?.addEventListener("abort",N,{once:!0}),F}_rr.debounce=tIo});var Cut=H(yrr=>{"use strict";Object.defineProperty(yrr,Symbol.toStringTag,{value:"Module"});var rIo=FRn();function nIo(e,t=0,r={}){typeof r!="object"&&(r={});let{leading:n=!1,trailing:a=!0,maxWait:o}=r,l=Array(2);n&&(l[0]="leading"),a&&(l[1]="trailing");let A,f=null,I=rIo.debounce(function(...E){A=e.apply(this,E),f=null},t,{edges:l}),C=function(...E){return o!=null&&(f===null&&(f=Date.now()),Date.now()-f>=o)?(A=e.apply(this,E),f=Date.now(),I.cancel(),I.schedule(),A):(I.apply(this,E),A)},b=()=>(I.flush(),A);return C.cancel=I.cancel,C.flush=b,C}yrr.debounce=nIo});var Err=H(brr=>{"use strict";Object.defineProperty(brr,Symbol.toStringTag,{value:"Module"});function iIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,1,...t)}brr.defer=iIo});var vrr=H(Srr=>{"use strict";Object.defineProperty(Srr,Symbol.toStringTag,{value:"Module"});var sIo=q9();function oIo(e,t,...r){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,sIo.toNumber(t)||0,...r)}Srr.delay=oIo});var wrr=H(Brr=>{"use strict";Object.defineProperty(Brr,Symbol.toStringTag,{value:"Module"});function aIo(e){return function(...t){return e.apply(this,t.reverse())}}Brr.flip=aIo});var Rrr=H(Trr=>{"use strict";Object.defineProperty(Trr,Symbol.toStringTag,{value:"Module"});function cIo(...e){return function(...t){let r=e.length?e[0].apply(this,t):t[0];for(let n=1;n{"use strict";Object.defineProperty(Nrr,Symbol.toStringTag,{value:"Module"});var lIo=O3e(),uIo=Rrr();function gIo(...e){let t=lIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return uIo.flow(...t)}Nrr.flow=gIo});var ZRn=H(krr=>{"use strict";Object.defineProperty(krr,Symbol.toStringTag,{value:"Module"});var AIo=Rrr();function dIo(...e){return AIo.flow(...e.reverse())}krr.flowRight=dIo});var Grr=H(xrr=>{"use strict";Object.defineProperty(xrr,Symbol.toStringTag,{value:"Module"});var pIo=O3e(),fIo=ZRn();function IIo(...e){let t=pIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return fIo.flowRight(...t)}xrr.flowRight=IIo});var Lrr=H(Zrr=>{"use strict";Object.defineProperty(Zrr,Symbol.toStringTag,{value:"Module"});function Frr(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError("Expected a function");let r=function(...a){let o=t?t.apply(this,a):a[0],l=r.cache;if(l.has(o))return l.get(o);let A=e.apply(this,a);return r.cache=l.set(o,A)||l,A},n=Frr.Cache||Map;return r.cache=new n,r}Frr.Cache=Map;Zrr.memoize=Frr});var Wrr=H(Vrr=>{"use strict";Object.defineProperty(Vrr,Symbol.toStringTag,{value:"Module"});var hIo=sT();function mIo(e=0){return function(...t){return t.at(hIo.toInteger(e))}}Vrr.nthArg=mIo});var LRn=H(Orr=>{"use strict";Object.defineProperty(Orr,Symbol.toStringTag,{value:"Module"});function CIo(e){let t=!1,r;return function(...n){return t||(t=!0,r=e(...n)),r}}Orr.once=CIo});var Mrr=H(Prr=>{"use strict";Object.defineProperty(Prr,Symbol.toStringTag,{value:"Module"});var _Io=LRn();function yIo(e){return _Io.once(e)}Prr.once=yIo});var Yrr=H(Hrr=>{"use strict";Object.defineProperty(Hrr,Symbol.toStringTag,{value:"Module"});var bIo=Bm(),EIo=cm();function SIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");let r=t.flat();return function(...n){let a=Math.min(n.length,r.length),o=[...n];for(let l=0;l{"use strict";Object.defineProperty(_ut,Symbol.toStringTag,{value:"Module"});function VRn(e,...t){return WRn(e,ORn,...t)}function WRn(e,t,...r){let n=function(...a){let o=0,l=r.slice().map(f=>f===t?a[o++]:f),A=a.slice(o);return e.apply(this,l.concat(A))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var ORn=Symbol("partial.placeholder");VRn.placeholder=ORn;_ut.partial=VRn;_ut.partialImpl=WRn});var Jrr=H(Xrr=>{"use strict";Object.defineProperty(Xrr,Symbol.toStringTag,{value:"Module"});var vIo=PRn();function Qrr(e,...t){return vIo.partialImpl(e,Qrr.placeholder,...t)}Qrr.placeholder=Symbol("compat.partial.placeholder");Xrr.partial=Qrr});var QRn=H(yut=>{"use strict";Object.defineProperty(yut,Symbol.toStringTag,{value:"Module"});function MRn(e,...t){return HRn(e,YRn,...t)}function HRn(e,t,...r){let n=function(...a){let o=r.filter(C=>C===t).length,l=Math.max(a.length-o,0),A=a.slice(0,l),f=l,I=r.slice().map(C=>C===t?a[f++]:C);return e.apply(this,A.concat(I))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var YRn=Symbol("partialRight.placeholder");MRn.placeholder=YRn;yut.partialRight=MRn;yut.partialRightImpl=HRn});var jrr=H(Krr=>{"use strict";Object.defineProperty(Krr,Symbol.toStringTag,{value:"Module"});var BIo=QRn();function Urr(e,...t){return BIo.partialRightImpl(e,Urr.placeholder,...t)}Urr.placeholder=Symbol("compat.partialRight.placeholder");Krr.partialRight=Urr});var qrr=H(zrr=>{"use strict";Object.defineProperty(zrr,Symbol.toStringTag,{value:"Module"});var wIo=nIe();function TIo(e,...t){let r=wIo.flatten(t);return function(...n){let a=r.map(o=>n[o]).slice(0,n.length);for(let o=a.length;o{"use strict";Object.defineProperty($rr,Symbol.toStringTag,{value:"Module"});function RIo(e,t=e.length-1){return function(...r){let n=r.slice(t),a=r.slice(0,t);for(;a.length{"use strict";Object.defineProperty(enr,Symbol.toStringTag,{value:"Module"});var NIo=XRn();function DIo(e,t=e.length-1){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=e.length-1),NIo.rest(e,t)}enr.rest=DIo});var nnr=H(rnr=>{"use strict";Object.defineProperty(rnr,Symbol.toStringTag,{value:"Module"});function kIo(e,t=0){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=0),function(...r){let n=r[t],a=r.slice(0,t);return n&&a.push(...n),e.apply(this,a)}}rnr.spread=kIo});var snr=H(inr=>{"use strict";Object.defineProperty(inr,Symbol.toStringTag,{value:"Module"});var xIo=Cut();function GIo(e,t=0,r={}){let{leading:n=!0,trailing:a=!0}=r;return xIo.debounce(e,t,{leading:n,maxWait:t,trailing:a})}inr.throttle=GIo});var anr=H(onr=>{"use strict";Object.defineProperty(onr,Symbol.toStringTag,{value:"Module"});var FIo=hut();function ZIo(e){return FIo.ary(e,1)}onr.unary=ZIo});var lnr=H(cnr=>{"use strict";Object.defineProperty(cnr,Symbol.toStringTag,{value:"Module"});var LIo=Bm(),VIo=Eoe();function WIo(e,t){return function(...r){return(VIo.isFunction(t)?t:LIo.identity).apply(this,[e,...r])}}cnr.wrap=WIo});var gnr=H(unr=>{"use strict";Object.defineProperty(unr,Symbol.toStringTag,{value:"Module"});var JRn=q9(),URn=tb();function OIo(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=URn.toString(e),t=URn.toString(t)):(e=JRn.toNumber(e),t=JRn.toNumber(t)),e+t)}unr.add=OIo});var but=H(Anr=>{"use strict";Object.defineProperty(Anr,Symbol.toStringTag,{value:"Module"});function PIo(e,t,r=0){if(t=Number(t),Object.is(t,-0)&&(t="-0"),r=Math.min(Number.parseInt(r,10),292),r){let[n,a=0]=t.toString().split("e"),o=Math[e](+`${n}e${Number(a)+r}`);Object.is(o,-0)&&(o="-0");let[l,A=0]=o.toString().split("e");return+`${l}e${Number(A)-r}`}return Math[e](Number(t))}Anr.decimalAdjust=PIo});var pnr=H(dnr=>{"use strict";Object.defineProperty(dnr,Symbol.toStringTag,{value:"Module"});var MIo=but();function HIo(e,t=0){return MIo.decimalAdjust("ceil",e,t)}dnr.ceil=HIo});var Inr=H(fnr=>{"use strict";Object.defineProperty(fnr,Symbol.toStringTag,{value:"Module"});var KRn=q9(),jRn=tb();function YIo(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=jRn.toString(e),t=jRn.toString(t)):(e=KRn.toNumber(e),t=KRn.toNumber(t)),e/t)}fnr.divide=YIo});var mnr=H(hnr=>{"use strict";Object.defineProperty(hnr,Symbol.toStringTag,{value:"Module"});var QIo=but();function XIo(e,t=0){return QIo.decimalAdjust("floor",e,t)}hnr.floor=XIo});var zRn=H(Cnr=>{"use strict";Object.defineProperty(Cnr,Symbol.toStringTag,{value:"Module"});function JIo(e,t,r){if(r==null&&(r=t,t=0),t>=r)throw new Error("The maximum value must be greater than the minimum value.");return t<=e&&e{"use strict";Object.defineProperty(_nr,Symbol.toStringTag,{value:"Module"});var UIo=zRn();function KIo(e,t,r){return t||(t=0),r!=null&&!r&&(r=0),t!=null&&typeof t!="number"&&(t=Number(t)),r==null&&t===0||(r!=null&&typeof r!="number"&&(r=Number(r)),r!=null&&t>r&&([t,r]=[r,t]),t===r)?!1:UIo.inRange(e,t,r)}_nr.inRange=KIo});var Enr=H(bnr=>{"use strict";Object.defineProperty(bnr,Symbol.toStringTag,{value:"Module"});function jIo(e){if(!e||e.length===0)return;let t;for(let r=0;rt)&&(t=n)}return t}bnr.max=jIo});var qRn=H(Snr=>{"use strict";Object.defineProperty(Snr,Symbol.toStringTag,{value:"Module"});function zIo(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;an&&(n=l,r=o)}return r}Snr.maxBy=zIo});var Bnr=H(vnr=>{"use strict";Object.defineProperty(vnr,Symbol.toStringTag,{value:"Module"});var qIo=qRn(),$Io=Bm(),eho=cm();function tho(e,t){if(e!=null)return qIo.maxBy(Array.from(e),eho.iteratee(t??$Io.identity))}vnr.maxBy=tho});var Eut=H(wnr=>{"use strict";Object.defineProperty(wnr,Symbol.toStringTag,{value:"Module"});var rho=cm();function nho(e,t){if(!e||!e.length)return 0;t!=null&&(t=rho.iteratee(t));let r;for(let n=0;n{"use strict";Object.defineProperty(Tnr,Symbol.toStringTag,{value:"Module"});var iho=Eut();function sho(e){return iho.sumBy(e)}Tnr.sum=sho});var Nnr=H(Rnr=>{"use strict";Object.defineProperty(Rnr,Symbol.toStringTag,{value:"Module"});var oho=Sut();function aho(e){let t=e?e.length:0;return t===0?NaN:oho.sum(e)/t}Rnr.mean=aho});var $Rn=H(Dnr=>{"use strict";Object.defineProperty(Dnr,Symbol.toStringTag,{value:"Module"});function cho(e,t){let r=0;for(let n=0;n{"use strict";Object.defineProperty(knr,Symbol.toStringTag,{value:"Module"});var lho=$Rn();function uho(e,t){return lho.sumBy(e,r=>t(r))/e.length}knr.meanBy=uho});var Gnr=H(xnr=>{"use strict";Object.defineProperty(xnr,Symbol.toStringTag,{value:"Module"});var gho=Bm(),Aho=eNn(),dho=cm();function pho(e,t){return e==null?NaN:Aho.meanBy(Array.from(e),dho.iteratee(t??gho.identity))}xnr.meanBy=pho});var Znr=H(Fnr=>{"use strict";Object.defineProperty(Fnr,Symbol.toStringTag,{value:"Module"});function fho(e){if(!e||e.length===0)return;let t;for(let r=0;r{"use strict";Object.defineProperty(Lnr,Symbol.toStringTag,{value:"Module"});function Iho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;a{"use strict";Object.defineProperty(Vnr,Symbol.toStringTag,{value:"Module"});var hho=tNn(),mho=Bm(),Cho=cm();function _ho(e,t){if(e!=null)return hho.minBy(Array.from(e),Cho.iteratee(t??mho.identity))}Vnr.minBy=_ho});var Pnr=H(Onr=>{"use strict";Object.defineProperty(Onr,Symbol.toStringTag,{value:"Module"});var rNn=q9(),nNn=tb();function yho(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=nNn.toString(e),t=nNn.toString(t)):(e=rNn.toNumber(e),t=rNn.toNumber(t)),e*t)}Onr.multiply=yho});var Hnr=H(Mnr=>{"use strict";Object.defineProperty(Mnr,Symbol.toStringTag,{value:"Module"});function bho(e,t=0,r){return r&&(t=0),Number.parseInt(e,t)}Mnr.parseInt=bho});var Qnr=H(Ynr=>{"use strict";Object.defineProperty(Ynr,Symbol.toStringTag,{value:"Module"});var iNn=sIe(),Eho=der(),Sho=fer();function vho(...e){let t=0,r=1,n=!1;switch(e.length){case 1:{typeof e[0]=="boolean"?n=e[0]:r=e[0];break}case 2:typeof e[1]=="boolean"?(r=e[0],n=e[1]):(t=e[0],r=e[1]);case 3:typeof e[2]=="object"&&e[2]!=null&&e[2][e[1]]===e[0]?(t=0,r=e[0],n=!1):(t=e[0],r=e[1],n=e[2])}return typeof t!="number"&&(t=Number(t)),typeof r!="number"&&(t=Number(r)),t||(t=0),r||(r=0),t>r&&([t,r]=[r,t]),t=iNn.clamp(t,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),r=iNn.clamp(r,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),t===r?t:n?Eho.random(t,r+1):Sho.randomInt(t,r+1)}Ynr.random=vho});var Unr=H(Jnr=>{"use strict";Object.defineProperty(Jnr,Symbol.toStringTag,{value:"Module"});var Bho=d$(),Xnr=uve();function who(e,t,r){r&&typeof r!="number"&&Bho.isIterateeCall(e,t,r)&&(t=r=void 0),e=Xnr.toFinite(e),t===void 0?(t=e,e=0):t=Xnr.toFinite(t),r=r===void 0?e{"use strict";Object.defineProperty(jnr,Symbol.toStringTag,{value:"Module"});var Tho=d$(),Knr=uve();function Rho(e,t,r){r&&typeof r!="number"&&Tho.isIterateeCall(e,t,r)&&(t=r=void 0),e=Knr.toFinite(e),t===void 0?(t=e,e=0):t=Knr.toFinite(t),r=r===void 0?e=0;o--)a[o]=e,e+=r;return a}jnr.rangeRight=Rho});var $nr=H(qnr=>{"use strict";Object.defineProperty(qnr,Symbol.toStringTag,{value:"Module"});var Nho=but();function Dho(e,t=0){return Nho.decimalAdjust("round",e,t)}qnr.round=Dho});var tir=H(eir=>{"use strict";Object.defineProperty(eir,Symbol.toStringTag,{value:"Module"});var sNn=q9(),oNn=tb();function kho(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=oNn.toString(e),t=oNn.toString(t)):(e=sNn.toNumber(e),t=sNn.toNumber(t)),e-t)}eir.subtract=kho});var aNn=H(rir=>{"use strict";Object.defineProperty(rir,Symbol.toStringTag,{value:"Module"});function xho(e){if(!e||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}rir.isPlainObject=xho});var iir=H(nir=>{"use strict";Object.defineProperty(nir,Symbol.toStringTag,{value:"Module"});var cNn=moe(),lNn=aNn(),uNn=H3e(),gNn=eIe(),_y=Y3e(),Gho=Nk();function Fho(e,t,r){return l5e(e,t,void 0,void 0,void 0,void 0,r)}function l5e(e,t,r,n,a,o,l){let A=l(e,t,r,n,a,o);if(A!==void 0)return A;if(typeof e==typeof t)switch(typeof e){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return e===t;case"number":return e===t||Object.is(e,t);case"function":return e===t;case"object":return u5e(e,t,o,l)}return u5e(e,t,o,l)}function u5e(e,t,r,n){if(Object.is(e,t))return!0;let a=gNn.getTag(e),o=gNn.getTag(t);if(a===_y.argumentsTag&&(a=_y.objectTag),o===_y.argumentsTag&&(o=_y.objectTag),a!==o)return!1;switch(a){case _y.stringTag:return e.toString()===t.toString();case _y.numberTag:{let f=e.valueOf(),I=t.valueOf();return Gho.isEqualsSameValueZero(f,I)}case _y.booleanTag:case _y.dateTag:case _y.symbolTag:return Object.is(e.valueOf(),t.valueOf());case _y.regexpTag:return e.source===t.source&&e.flags===t.flags;case _y.functionTag:return e===t}r=r??new Map;let l=r.get(e),A=r.get(t);if(l!=null&&A!=null)return l===t;r.set(e,t),r.set(t,e);try{switch(a){case _y.mapTag:{if(e.size!==t.size)return!1;for(let[f,I]of e.entries())if(!t.has(f)||!l5e(I,t.get(f),f,e,t,r,n))return!1;return!0}case _y.setTag:{if(e.size!==t.size)return!1;let f=Array.from(e.values()),I=Array.from(t.values());for(let C=0;Cl5e(b,N,void 0,e,t,r,n));if(E===-1)return!1;I.splice(E,1)}return!0}case _y.arrayTag:case _y.uint8ArrayTag:case _y.uint8ClampedArrayTag:case _y.uint16ArrayTag:case _y.uint32ArrayTag:case _y.bigUint64ArrayTag:case _y.int8ArrayTag:case _y.int16ArrayTag:case _y.int32ArrayTag:case _y.bigInt64ArrayTag:case _y.float32ArrayTag:case _y.float64ArrayTag:{if(cNn.isBuffer(e)!==cNn.isBuffer(t)||e.length!==t.length)return!1;for(let f=0;f{"use strict";Object.defineProperty(sir,Symbol.toStringTag,{value:"Module"});function Zho(){}sir.noop=Zho});var cir=H(air=>{"use strict";Object.defineProperty(air,Symbol.toStringTag,{value:"Module"});var Lho=iir(),Vho=oir();function Who(e,t){return Lho.isEqualWith(e,t,Vho.noop)}air.isEqual=Who});var uir=H(lir=>{"use strict";Object.defineProperty(lir,Symbol.toStringTag,{value:"Module"});function Oho(...e){}lir.noop=Oho});var vut=H(gir=>{"use strict";Object.defineProperty(gir,Symbol.toStringTag,{value:"Module"});function Pho(e){let t=e?.constructor,r=typeof t=="function"?t.prototype:Object.prototype;return e===r}gir.isPrototype=Pho});var f$=H(Air=>{"use strict";Object.defineProperty(Air,Symbol.toStringTag,{value:"Module"});var Mho=Qlt();function Hho(e){return Mho.isTypedArray(e)}Air.isTypedArray=Hho});var g5e=H(dir=>{"use strict";Object.defineProperty(dir,Symbol.toStringTag,{value:"Module"});var Yho=sT();function Qho(e,t){if(e=Yho.toInteger(e),e<1||!Number.isSafeInteger(e))return[];let r=new Array(e);for(let n=0;n{"use strict";Object.defineProperty(pir,Symbol.toStringTag,{value:"Module"});var Xho=moe(),Jho=vut(),Uho=Bf(),Kho=f$(),jho=g5e();function zho(e){if(Uho.isArrayLike(e))return qho(e);let t=Object.keys(Object(e));return Jho.isPrototype(e)?t.filter(r=>r!=="constructor"):t}function qho(e){let t=jho.times(e.length,a=>`${a}`),r=new Set(t);Xho.isBuffer(e)&&(r.add("offset"),r.add("parent")),Kho.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=Object.keys(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}pir.keys=zho});var Iir=H(fir=>{"use strict";Object.defineProperty(fir,Symbol.toStringTag,{value:"Module"});var $ho=i8(),emo=Nk();function tmo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(hir,Symbol.toStringTag,{value:"Module"});var nmo=moe(),imo=vut(),smo=Bf(),omo=f$(),amo=g5e();function cmo(e){if(e==null)return[];switch(typeof e){case"object":case"function":return smo.isArrayLike(e)?umo(e):imo.isPrototype(e)?lmo(e):But(e);default:return But(Object(e))}}function But(e){let t=[];for(let r in e)t.push(r);return t}function lmo(e){return But(e).filter(r=>r!=="constructor")}function umo(e){let t=amo.times(e.length,a=>`${a}`),r=new Set(t);nmo.isBuffer(e)&&(r.add("offset"),r.add("parent")),omo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=But(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}hir.keysIn=cmo});var Cir=H(mir=>{"use strict";Object.defineProperty(mir,Symbol.toStringTag,{value:"Module"});var gmo=IX(),Amo=Nk();function dmo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(_ir,Symbol.toStringTag,{value:"Module"});var fmo=IX(),Imo=Nk();function hmo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(bir,Symbol.toStringTag,{value:"Module"});var Cmo=i8(),_mo=Nk();function ymo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(vir,Symbol.toStringTag,{value:"Module"});var Emo=ave(),ANn=eIe(),qC=Y3e(),Smo=p$(),vmo=f$();function Bmo(e){if(Emo.isPrimitive(e))return e;let t=ANn.getTag(e);if(!wmo(e))return{};if(Smo.isArray(e)){let n=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(n.index=e.index,n.input=e.input),n}if(vmo.isTypedArray(e)){let n=e,a=n.constructor;return new a(n.buffer,n.byteOffset,n.length)}if(t===qC.arrayBufferTag)return new ArrayBuffer(e.byteLength);if(t===qC.dataViewTag){let n=e,a=n.buffer,o=n.byteOffset,l=n.byteLength,A=new ArrayBuffer(l),f=new Uint8Array(a,o,l);return new Uint8Array(A).set(f),new DataView(A)}if(t===qC.booleanTag||t===qC.numberTag||t===qC.stringTag){let n=e.constructor,a=new n(e.valueOf());return t===qC.stringTag?Rmo(a,e):Sir(a,e),a}if(t===qC.dateTag)return new Date(Number(e));if(t===qC.regexpTag){let n=e,a=new RegExp(n.source,n.flags);return a.lastIndex=n.lastIndex,a}if(t===qC.symbolTag)return Object(Symbol.prototype.valueOf.call(e));if(t===qC.mapTag){let n=e,a=new Map;return n.forEach((o,l)=>{a.set(l,o)}),a}if(t===qC.setTag){let n=e,a=new Set;return n.forEach(o=>{a.add(o)}),a}if(t===qC.argumentsTag){let n=e,a={};return Sir(a,n),a.length=n.length,a[Symbol.iterator]=n[Symbol.iterator],a}let r={};return Nmo(r,e),Sir(r,e),Tmo(r,e),r}function wmo(e){switch(ANn.getTag(e)){case qC.argumentsTag:case qC.arrayTag:case qC.arrayBufferTag:case qC.dataViewTag:case qC.booleanTag:case qC.dateTag:case qC.float32ArrayTag:case qC.float64ArrayTag:case qC.int8ArrayTag:case qC.int16ArrayTag:case qC.int32ArrayTag:case qC.mapTag:case qC.numberTag:case qC.objectTag:case qC.regexpTag:case qC.setTag:case qC.stringTag:case qC.symbolTag:case qC.uint8ArrayTag:case qC.uint8ClampedArrayTag:case qC.uint16ArrayTag:case qC.uint32ArrayTag:return!0;default:return!1}}function Sir(e,t){for(let r in t)Object.hasOwn(t,r)&&(e[r]=t[r])}function Tmo(e,t){let r=Object.getOwnPropertySymbols(t);for(let n=0;n=r)&&(e[n]=t[n])}function Nmo(e,t){let r=Object.getPrototypeOf(t);r!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,r)}vir.clone=Bmo});var wir=H(Bir=>{"use strict";Object.defineProperty(Bir,Symbol.toStringTag,{value:"Module"});var dNn=wut();function Dmo(e,t){if(!t)return dNn.clone(e);let r=t(e);return r!==void 0?r:dNn.clone(e)}Bir.cloneWith=Dmo});var Rir=H(Tir=>{"use strict";Object.defineProperty(Tir,Symbol.toStringTag,{value:"Module"});var kmo=i8(),xmo=Iut(),Gmo=uM();function Fmo(e,t){let r=Gmo.isObject(e)?Object.create(e):{};if(t!=null){let n=kmo.keys(t);for(let a=0;a{"use strict";Object.defineProperty(Nir,Symbol.toStringTag,{value:"Module"});var Zmo=boe(),Lmo=d$(),Vmo=Nk();function Wmo(e,...t){e=Object(e);let r=Object.prototype,n=t.length,a=n>2?t[2]:void 0;a&&Lmo.isIterateeCall(t[0],t[1],a)&&(n=1);for(let o=0;o{"use strict";Object.defineProperty(Dir,Symbol.toStringTag,{value:"Module"});function Omo(e){if(typeof e!="object"||e==null)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!=="[object Object]"){let r=e[Symbol.toStringTag];return r==null||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable?!1:e.toString()===`[object ${r}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}Dir.isPlainObject=Omo});var xir=H(kir=>{"use strict";Object.defineProperty(kir,Symbol.toStringTag,{value:"Module"});var d5e=oIe();function Pmo(e,...t){e=Object(e);for(let r=0;r{"use strict";Object.defineProperty(Gir,Symbol.toStringTag,{value:"Module"});function Qmo(e,t){return Object.keys(e).find(n=>t(e[n],n,e))}Gir.findKey=Qmo});var Zir=H(Fir=>{"use strict";Object.defineProperty(Fir,Symbol.toStringTag,{value:"Module"});var Xmo=pNn(),Jmo=n8(),Umo=uM(),Kmo=cm();function jmo(e,t){if(!Umo.isObject(e))return;let r=Kmo.iteratee(t??Jmo.identity);return Xmo.findKey(e,r)}Fir.findKey=jmo});var Vir=H(Lir=>{"use strict";Object.defineProperty(Lir,Symbol.toStringTag,{value:"Module"});var zmo=n8(),qmo=uM(),$mo=cm();function eCo(e,t){if(!qmo.isObject(e))return;let r=$mo.iteratee(t??zmo.identity);return Object.keys(e).findLast(a=>r(e[a],a,e))}Lir.findLastKey=eCo});var Oir=H(Wir=>{"use strict";Object.defineProperty(Wir,Symbol.toStringTag,{value:"Module"});var tCo=Bm();function rCo(e,t=tCo.identity){if(e==null)return e;for(let r in e)if(t(e[r],r,e)===!1)break;return e}Wir.forIn=rCo});var Mir=H(Pir=>{"use strict";Object.defineProperty(Pir,Symbol.toStringTag,{value:"Module"});var nCo=Bm();function iCo(e,t=nCo.identity){if(e==null)return e;let r=[];for(let n in e)r.push(n);for(let n=r.length-1;n>=0;n--){let a=r[n];if(t(e[a],a,e)===!1)break}return e}Pir.forInRight=iCo});var Yir=H(Hir=>{"use strict";Object.defineProperty(Hir,Symbol.toStringTag,{value:"Module"});var sCo=i8(),oCo=Bm();function aCo(e,t=oCo.identity){if(e==null)return e;let r=Object(e),n=sCo.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Qir,Symbol.toStringTag,{value:"Module"});var cCo=i8(),lCo=Bm();function uCo(e,t=lCo.identity){if(e==null)return e;let r=Object(e),n=cCo.keys(e);for(let a=n.length-1;a>=0;--a){let o=n[a];if(t(r[o],o,r)===!1)break}return e}Qir.forOwnRight=uCo});var Uir=H(Jir=>{"use strict";Object.defineProperty(Jir,Symbol.toStringTag,{value:"Module"});var gCo=Bf();function ACo(e){if(!gCo.isArrayLike(e))return{};let t={};for(let r=0;r{"use strict";Object.defineProperty(Kir,Symbol.toStringTag,{value:"Module"});var dCo=i8();function pCo(e){return e==null?[]:dCo.keys(e).filter(t=>typeof e[t]=="function")}Kir.functions=pCo});var qir=H(zir=>{"use strict";Object.defineProperty(zir,Symbol.toStringTag,{value:"Module"});var fCo=Eoe();function ICo(e){if(e==null)return[];let t=[];for(let r in e)fCo.isFunction(e[r])&&t.push(r);return t}zir.functionsIn=ICo});var esr=H($ir=>{"use strict";Object.defineProperty($ir,Symbol.toStringTag,{value:"Module"});var hCo=ove(),mCo=lve(),CCo=rIe(),_Co=cM();function yCo(e,t){if(e==null)return!1;let r;if(Array.isArray(t)?r=t:typeof t=="string"&&hCo.isDeepKey(t)&&e[t]==null?r=_Co.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(tsr,Symbol.toStringTag,{value:"Module"});function bCo(e){let t={},r=Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(rsr,Symbol.toStringTag,{value:"Module"});var ECo=fNn();function SCo(e){return ECo.invert(e)}rsr.invert=SCo});var ssr=H(isr=>{"use strict";Object.defineProperty(isr,Symbol.toStringTag,{value:"Module"});var vCo=Bm(),BCo=boe(),wCo=cm();function TCo(e,t){let r={};if(BCo.isNil(e))return r;t==null&&(t=vCo.identity);let n=Object.keys(e),a=wCo.iteratee(t);for(let o=0;o{"use strict";Object.defineProperty(osr,Symbol.toStringTag,{value:"Module"});function RCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(asr,Symbol.toStringTag,{value:"Module"});var NCo=Bm(),DCo=INn(),kCo=cm();function xCo(e,t=NCo.identity){return e==null?{}:DCo.mapKeys(e,kCo.iteratee(t))}asr.mapKeys=xCo});var hNn=H(lsr=>{"use strict";Object.defineProperty(lsr,Symbol.toStringTag,{value:"Module"});function GCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(usr,Symbol.toStringTag,{value:"Module"});var FCo=Bm(),ZCo=hNn(),LCo=cm();function VCo(e,t=FCo.identity){return e==null?{}:ZCo.mapValues(e,LCo.iteratee(t))}usr.mapValues=VCo});var mNn=H(Asr=>{"use strict";Object.defineProperty(Asr,Symbol.toStringTag,{value:"Module"});var WCo=ave(),OCo=Qlt();function PCo(e){if(WCo.isPrimitive(e))return e;if(Array.isArray(e)||OCo.isTypedArray(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);let r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp){let n=new r(e);return n.lastIndex=e.lastIndex,n}if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let n;return e instanceof AggregateError?n=new r(e.errors,e.message,{cause:e.cause}):n=new r(e.message,{cause:e.cause}),n.stack=e.stack,Object.assign(n,e),n}if(typeof File<"u"&&e instanceof File)return new r([e],e.name,{type:e.type,lastModified:e.lastModified});if(typeof e=="object"){let n=Object.create(t);return Object.assign(n,e)}return e}Asr.clone=PCo});var Nut=H(fsr=>{"use strict";Object.defineProperty(fsr,Symbol.toStringTag,{value:"Module"});var CNn=cve(),MCo=P3e(),HCo=mNn(),YCo=moe(),QCo=ave(),XCo=H3e(),_Nn=rIe(),JCo=B2(),yNn=Coe(),dsr=oIe(),psr=f$();function UCo(e,...t){let r=t.slice(0,-1),n=t[t.length-1],a=e;for(let o=0;o{"use strict";Object.defineProperty(Isr,Symbol.toStringTag,{value:"Module"});var KCo=Nut(),jCo=oir();function zCo(e,...t){return KCo.mergeWith(e,...t,jCo.noop)}Isr.merge=zCo});var Dut=H(msr=>{"use strict";Object.defineProperty(msr,Symbol.toStringTag,{value:"Module"});var qCo=H3e();function $Co(e){let t=[];for(;e;)t.push(...qCo.getSymbols(e)),e=Object.getPrototypeOf(e);return t}msr.getSymbolsIn=$Co});var _sr=H(Csr=>{"use strict";Object.defineProperty(Csr,Symbol.toStringTag,{value:"Module"});var e_o=J3e(),ENn=IX(),bNn=r5e(),SNn=Dut(),t_o=ove(),r_o=nIe(),n_o=oIe();function i_o(e,...t){if(e==null)return{};t=r_o.flatten(t);let r=s_o(e,t);for(let n=0;nArray.isArray(n)||t_o.isDeepKey(n))?a_o(e):o_o(e)}function o_o(e){let t={},r=[...ENn.keysIn(e),...SNn.getSymbolsIn(e)];for(let n=0;n{if(!n_o.isPlainObject(o))return o})}return t}Csr.omit=i_o});var bsr=H(ysr=>{"use strict";Object.defineProperty(ysr,Symbol.toStringTag,{value:"Module"});var c_o=IX(),l_o=yoe(),u_o=Dut(),g_o=n8(),A_o=Bf(),d_o=_oe(),p_o=cm();function f_o(e,t){if(e==null)return{};let r={},n=p_o.iteratee(t??g_o.identity),a=A_o.isArrayLike(e)?l_o.range(0,e.length):[...c_o.keysIn(e),...u_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(Esr,Symbol.toStringTag,{value:"Module"});var I_o=lM(),h_o=U3e(),m_o=a5e(),C_o=Bf(),__o=dve();function y_o(e,...t){if(__o.isNil(e))return{};let r={};for(let n=0;n{"use strict";Object.defineProperty(vsr,Symbol.toStringTag,{value:"Module"});var b_o=IX(),E_o=yoe(),S_o=Dut(),v_o=n8(),B_o=Bf(),w_o=_oe(),T_o=cm();function R_o(e,t){if(e==null)return{};let r=T_o.iteratee(t??v_o.identity),n={},a=B_o.isArrayLike(e)?E_o.range(0,e.length):[...b_o.keysIn(e),...S_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(wsr,Symbol.toStringTag,{value:"Module"});var N_o=lM();function D_o(e){return function(t){return N_o.get(e,t)}}wsr.propertyOf=D_o});var Nsr=H(Rsr=>{"use strict";Object.defineProperty(Rsr,Symbol.toStringTag,{value:"Module"});var k_o=t5e(),x_o=u$(),G_o=cM(),F_o=tb();function Z_o(e,t,r){k_o.isKey(t,e)?t=[t]:Array.isArray(t)||(t=G_o.toPath(F_o.toString(t)));let n=Math.max(t.length,1);for(let a=0;a{"use strict";Object.defineProperty(Dsr,Symbol.toStringTag,{value:"Module"});var L_o=pve();function V_o(e,t,r,n){let a;return typeof n=="function"?a=n:a=()=>{},L_o.updateWith(e,t,()=>r,a)}Dsr.setWith=V_o});var Gsr=H(xsr=>{"use strict";Object.defineProperty(xsr,Symbol.toStringTag,{value:"Module"});var W_o=cve(),O_o=A5e();function P_o(e,...t){let r=W_o.cloneDeep(e);return O_o.defaults(r,...t)}xsr.toDefaulted=P_o});var Zsr=H(Fsr=>{"use strict";Object.defineProperty(Fsr,Symbol.toStringTag,{value:"Module"});function M_o(e){let t=new Array(e.size),r=e.keys(),n=e.values();for(let a=0;a{"use strict";Object.defineProperty(Lsr,Symbol.toStringTag,{value:"Module"});function H_o(e){let t=new Array(e.size),r=e.values();for(let n=0;n{"use strict";Object.defineProperty(Wsr,Symbol.toStringTag,{value:"Module"});var Y_o=i8(),Q_o=Zsr(),X_o=Vsr();function J_o(e){if(e==null)return[];if(e instanceof Set)return X_o.setToEntries(e);if(e instanceof Map)return Q_o.mapToEntries(e);let t=Y_o.keys(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(Psr,Symbol.toStringTag,{value:"Module"});var U_o=IX(),K_o=Zsr(),j_o=Vsr();function z_o(e){if(e==null)return[];if(e instanceof Set)return j_o.setToEntries(e);if(e instanceof Map)return K_o.mapToEntries(e);let t=U_o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(Hsr,Symbol.toStringTag,{value:"Module"});var q_o=moe();function $_o(e){return q_o.isBuffer(e)}Hsr.isBuffer=$_o});var Qsr=H(Ysr=>{"use strict";Object.defineProperty(Ysr,Symbol.toStringTag,{value:"Module"});var e0o=Bm(),t0o=Eoe(),r0o=zlt(),n0o=kut(),i0o=uM(),s0o=f$(),o0o=cm();function a0o(e,t=e0o.identity,r){let n=Array.isArray(e)||n0o.isBuffer(e)||s0o.isTypedArray(e);return t=o0o.iteratee(t),r==null&&(n?r=[]:i0o.isObject(e)&&t0o.isFunction(e.constructor)?r=Object.create(Object.getPrototypeOf(e)):r={}),e==null||r0o.forEach(e,(a,o,l)=>t(r,a,o,l)),r}Ysr.transform=a0o});var Jsr=H(Xsr=>{"use strict";Object.defineProperty(Xsr,Symbol.toStringTag,{value:"Module"});var c0o=pve();function l0o(e,t,r){return c0o.updateWith(e,t,r,()=>{})}Xsr.update=l0o});var Ksr=H(Usr=>{"use strict";Object.defineProperty(Usr,Symbol.toStringTag,{value:"Module"});var u0o=IX();function g0o(e){let t=u0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(jsr,Symbol.toStringTag,{value:"Module"});function A0o(e){return typeof e=="function"}jsr.isFunction=A0o});var $sr=H(qsr=>{"use strict";Object.defineProperty(qsr,Symbol.toStringTag,{value:"Module"});function d0o(e){return Number.isSafeInteger(e)&&e>=0}qsr.isLength=d0o});var tor=H(eor=>{"use strict";Object.defineProperty(eor,Symbol.toStringTag,{value:"Module"});var vNn=Function.prototype.toString,p0o=/[\\^$.*+?()[\]{}|]/g,f0o=RegExp(`^${vNn.call(Object.prototype.hasOwnProperty).replace(p0o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")}$`);function I0o(e){if(typeof e!="function")return!1;if(globalThis?.["__core-js_shared__"]!=null)throw new Error("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return f0o.test(vNn.call(e))}eor.isNative=I0o});var nor=H(ror=>{"use strict";Object.defineProperty(ror,Symbol.toStringTag,{value:"Module"});function h0o(e){return e===null}ror.isNull=h0o});var sor=H(ior=>{"use strict";Object.defineProperty(ior,Symbol.toStringTag,{value:"Module"});var m0o=Wer();function C0o(e){return m0o.isUndefined(e)}ior.isUndefined=C0o});var xut=H(oor=>{"use strict";Object.defineProperty(oor,Symbol.toStringTag,{value:"Module"});function _0o(e,t){if(t==null)return!0;if(e==null)return Object.keys(t).length===0;let r=Object.keys(t);for(let n=0;n{"use strict";Object.defineProperty(aor,Symbol.toStringTag,{value:"Module"});var y0o=xut(),b0o=xzt();function E0o(e){return e=b0o.cloneDeep(e),function(t){return y0o.conformsTo(t,e)}}aor.conforms=E0o});var BNn=H(lor=>{"use strict";Object.defineProperty(lor,Symbol.toStringTag,{value:"Module"});function S0o(e){return e instanceof ArrayBuffer}lor.isArrayBuffer=S0o});var gor=H(uor=>{"use strict";Object.defineProperty(uor,Symbol.toStringTag,{value:"Module"});var v0o=BNn();function B0o(e){return v0o.isArrayBuffer(e)}uor.isArrayBuffer=B0o});var dor=H(Aor=>{"use strict";Object.defineProperty(Aor,Symbol.toStringTag,{value:"Module"});function w0o(e){return typeof e=="boolean"||e instanceof Boolean}Aor.isBoolean=w0o});var wNn=H(por=>{"use strict";Object.defineProperty(por,Symbol.toStringTag,{value:"Module"});function T0o(e){return e instanceof Date}por.isDate=T0o});var hor=H(Ior=>{"use strict";Object.defineProperty(Ior,Symbol.toStringTag,{value:"Module"});var R0o=wNn();function N0o(e){return R0o.isDate(e)}Ior.isDate=N0o});var Cor=H(mor=>{"use strict";Object.defineProperty(mor,Symbol.toStringTag,{value:"Module"});var D0o=Coe(),k0o=oIe();function x0o(e){return D0o.isObjectLike(e)&&e.nodeType===1&&!k0o.isPlainObject(e)}mor.isElement=x0o});var yor=H(_or=>{"use strict";Object.defineProperty(_or,Symbol.toStringTag,{value:"Module"});var G0o=rIe(),F0o=Bf(),Z0o=f$(),L0o=moe(),V0o=vut();function W0o(e){if(e==null)return!0;if(F0o.isArrayLike(e))return typeof e.splice!="function"&&typeof e!="string"&&!L0o.isBuffer(e)&&!Z0o.isTypedArray(e)&&!G0o.isArguments(e)?!1:e.length===0;if(typeof e=="object"){if(e instanceof Map||e instanceof Set)return e.size===0;let t=Object.keys(e);return V0o.isPrototype(e)?t.filter(r=>r!=="constructor").length===0:t.length===0}return!0}_or.isEmpty=W0o});var TNn=H(bor=>{"use strict";Object.defineProperty(bor,Symbol.toStringTag,{value:"Module"});function O0o(e,t){if(!Number.isInteger(e)||e<0)throw new Error("n must be a non-negative integer.");let r=0;return(...n)=>{if(++r>=e)return t(...n)}}bor.after=O0o});var vor=H(Sor=>{"use strict";Object.defineProperty(Sor,Symbol.toStringTag,{value:"Module"});var RNn=TNn(),P0o=iir();function Eor(e,t,r){return typeof r!="function"&&(r=()=>{}),P0o.isEqualWith(e,t,(...n)=>{let a=r(...n);if(a!==void 0)return!!a;if(e instanceof Map&&t instanceof Map||e instanceof Set&&t instanceof Set)return Eor(Array.from(e),Array.from(t),RNn.after(2,r))})}Sor.isEqualWith=Eor});var wor=H(Bor=>{"use strict";Object.defineProperty(Bor,Symbol.toStringTag,{value:"Module"});var M0o=eIe();function H0o(e){return M0o.getTag(e)==="[object Error]"}Bor.isError=H0o});var Ror=H(Tor=>{"use strict";Object.defineProperty(Tor,Symbol.toStringTag,{value:"Module"});function Y0o(e){return Number.isFinite(e)}Tor.isFinite=Y0o});var Dor=H(Nor=>{"use strict";Object.defineProperty(Nor,Symbol.toStringTag,{value:"Module"});function Q0o(e){return Number.isInteger(e)}Nor.isInteger=Q0o});var NNn=H(kor=>{"use strict";Object.defineProperty(kor,Symbol.toStringTag,{value:"Module"});function X0o(e){return e instanceof RegExp}kor.isRegExp=X0o});var Gor=H(xor=>{"use strict";Object.defineProperty(xor,Symbol.toStringTag,{value:"Module"});var J0o=NNn();function U0o(e){return J0o.isRegExp(e)}xor.isRegExp=U0o});var Zor=H(For=>{"use strict";Object.defineProperty(For,Symbol.toStringTag,{value:"Module"});function K0o(e){return Number.isSafeInteger(e)}For.isSafeInteger=K0o});var DNn=H(Lor=>{"use strict";Object.defineProperty(Lor,Symbol.toStringTag,{value:"Module"});function j0o(e){return e instanceof Set}Lor.isSet=j0o});var Wor=H(Vor=>{"use strict";Object.defineProperty(Vor,Symbol.toStringTag,{value:"Module"});var z0o=DNn();function q0o(e){return z0o.isSet(e)}Vor.isSet=q0o});var kNn=H(Oor=>{"use strict";Object.defineProperty(Oor,Symbol.toStringTag,{value:"Module"});function $0o(e){return e instanceof WeakMap}Oor.isWeakMap=$0o});var Mor=H(Por=>{"use strict";Object.defineProperty(Por,Symbol.toStringTag,{value:"Module"});var eyo=kNn();function tyo(e){return eyo.isWeakMap(e)}Por.isWeakMap=tyo});var xNn=H(Hor=>{"use strict";Object.defineProperty(Hor,Symbol.toStringTag,{value:"Module"});function ryo(e){return e instanceof WeakSet}Hor.isWeakSet=ryo});var Qor=H(Yor=>{"use strict";Object.defineProperty(Yor,Symbol.toStringTag,{value:"Module"});var nyo=xNn();function iyo(e){return nyo.isWeakSet(e)}Yor.isWeakSet=iyo});var Jor=H(Xor=>{"use strict";Object.defineProperty(Xor,Symbol.toStringTag,{value:"Module"});function syo(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}Xor.capitalize=syo});var Kor=H(Uor=>{"use strict";Object.defineProperty(Uor,Symbol.toStringTag,{value:"Module"});var oyo=Jor(),ayo=tb();function cyo(e){return oyo.capitalize(ayo.toString(e))}Uor.capitalize=cyo});var zor=H(jor=>{"use strict";Object.defineProperty(jor,Symbol.toStringTag,{value:"Module"});var lyo=Eoe(),GNn=p$(),uyo=uM(),gyo=tb();function Ayo(e,...t){if(e==null||!uyo.isObject(e)||GNn.isArray(e)&&t.length===0)return e;let r=[];for(let n=0;n{"use strict";Object.defineProperty(qor,Symbol.toStringTag,{value:"Module"});var dyo=new Map([["\xC6","Ae"],["\xD0","D"],["\xD8","O"],["\xDE","Th"],["\xDF","ss"],["\xE6","ae"],["\xF0","d"],["\xF8","o"],["\xFE","th"],["\u0110","D"],["\u0111","d"],["\u0126","H"],["\u0127","h"],["\u0131","i"],["\u0132","IJ"],["\u0133","ij"],["\u0138","k"],["\u013F","L"],["\u0140","l"],["\u0141","L"],["\u0142","l"],["\u0149","'n"],["\u014A","N"],["\u014B","n"],["\u0152","Oe"],["\u0153","oe"],["\u0166","T"],["\u0167","t"],["\u017F","s"]]);function pyo(e){e=e.normalize("NFD");let t="";for(let r=0;r="\u0300"&&n<="\u036F"||n>="\uFE20"&&n<="\uFE23"||(t+=dyo.get(n)??n)}return t}qor.deburr=pyo});var I$=H($or=>{"use strict";Object.defineProperty($or,Symbol.toStringTag,{value:"Module"});var fyo=FNn(),Iyo=tb();function hyo(e){return fyo.deburr(Iyo.toString(e))}$or.deburr=hyo});var aIe=H(Gut=>{"use strict";Object.defineProperty(Gut,Symbol.toStringTag,{value:"Module"});var ZNn=/\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;function myo(e){return Array.from(e.match(ZNn)??[])}Gut.CASE_SPLIT_PATTERN=ZNn;Gut.words=myo});var LNn=H(ear=>{"use strict";Object.defineProperty(ear,Symbol.toStringTag,{value:"Module"});var Cyo=Jor(),_yo=aIe();function yyo(e){let t=_yo.words(e);if(t.length===0)return"";let[r,...n]=t;return`${r.toLowerCase()}${n.map(a=>Cyo.capitalize(a)).join("")}`}ear.camelCase=yyo});var cIe=H(tar=>{"use strict";Object.defineProperty(tar,Symbol.toStringTag,{value:"Module"});var byo=tb();function Eyo(e){return typeof e!="string"&&(e=byo.toString(e)),e.replace(/['\u2019]/g,"")}tar.normalizeForCase=Eyo});var nar=H(rar=>{"use strict";Object.defineProperty(rar,Symbol.toStringTag,{value:"Module"});var Syo=I$(),vyo=LNn(),Byo=cIe();function wyo(e){return vyo.camelCase(Byo.normalizeForCase(Syo.deburr(e)))}rar.camelCase=wyo});var sar=H(iar=>{"use strict";Object.defineProperty(iar,Symbol.toStringTag,{value:"Module"});function Tyo(e,t,r){return e==null||t==null?!1:(r==null&&(r=e.length),e.endsWith(t,r))}iar.endsWith=Tyo});var VNn=H(oar=>{"use strict";Object.defineProperty(oar,Symbol.toStringTag,{value:"Module"});var Ryo={"&":"&","<":"<",">":">",'"':""","'":"'"};function Nyo(e){return e.replace(/[&<>"']/g,t=>Ryo[t])}oar.escape=Nyo});var Fut=H(aar=>{"use strict";Object.defineProperty(aar,Symbol.toStringTag,{value:"Module"});var Dyo=VNn(),kyo=tb();function xyo(e){return Dyo.escape(kyo.toString(e))}aar.escape=xyo});var WNn=H(car=>{"use strict";Object.defineProperty(car,Symbol.toStringTag,{value:"Module"});function Gyo(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")}car.escapeRegExp=Gyo});var uar=H(lar=>{"use strict";Object.defineProperty(lar,Symbol.toStringTag,{value:"Module"});var Fyo=WNn(),Zyo=tb();function Lyo(e){return Fyo.escapeRegExp(Zyo.toString(e))}lar.escapeRegExp=Lyo});var ONn=H(gar=>{"use strict";Object.defineProperty(gar,Symbol.toStringTag,{value:"Module"});var Vyo=aIe();function Wyo(e){return Vyo.words(e).map(r=>r.toLowerCase()).join("-")}gar.kebabCase=Wyo});var dar=H(Aar=>{"use strict";Object.defineProperty(Aar,Symbol.toStringTag,{value:"Module"});var Oyo=I$(),Pyo=ONn(),Myo=cIe();function Hyo(e){return Pyo.kebabCase(Myo.normalizeForCase(Oyo.deburr(e)))}Aar.kebabCase=Hyo});var PNn=H(par=>{"use strict";Object.defineProperty(par,Symbol.toStringTag,{value:"Module"});var Yyo=aIe();function Qyo(e){return Yyo.words(e).map(r=>r.toLowerCase()).join(" ")}par.lowerCase=Qyo});var Iar=H(far=>{"use strict";Object.defineProperty(far,Symbol.toStringTag,{value:"Module"});var Xyo=I$(),Jyo=PNn(),Uyo=cIe();function Kyo(e){return Jyo.lowerCase(Uyo.normalizeForCase(Xyo.deburr(e)))}far.lowerCase=Kyo});var MNn=H(har=>{"use strict";Object.defineProperty(har,Symbol.toStringTag,{value:"Module"});function jyo(e){return e.substring(0,1).toLowerCase()+e.substring(1)}har.lowerFirst=jyo});var Car=H(mar=>{"use strict";Object.defineProperty(mar,Symbol.toStringTag,{value:"Module"});var zyo=MNn(),qyo=tb();function $yo(e){return zyo.lowerFirst(qyo.toString(e))}mar.lowerFirst=$yo});var HNn=H(_ar=>{"use strict";Object.defineProperty(_ar,Symbol.toStringTag,{value:"Module"});function ebo(e,t,r=" "){return e.padStart(Math.floor((t-e.length)/2)+e.length,r).padEnd(t,r)}_ar.pad=ebo});var bar=H(yar=>{"use strict";Object.defineProperty(yar,Symbol.toStringTag,{value:"Module"});var tbo=HNn(),rbo=tb();function nbo(e,t,r){return tbo.pad(rbo.toString(e),t,r)}yar.pad=nbo});var Sar=H(Ear=>{"use strict";Object.defineProperty(Ear,Symbol.toStringTag,{value:"Module"});var ibo=tb();function sbo(e,t=0,r=" "){return ibo.toString(e).padEnd(t,r)}Ear.padEnd=sbo});var war=H(Bar=>{"use strict";Object.defineProperty(Bar,Symbol.toStringTag,{value:"Module"});var obo=tb();function abo(e,t=0,r=" "){return obo.toString(e).padStart(t,r)}Bar.padStart=abo});var Rar=H(Tar=>{"use strict";Object.defineProperty(Tar,Symbol.toStringTag,{value:"Module"});var cbo=Number.MAX_SAFE_INTEGER;Tar.MAX_SAFE_INTEGER=cbo});var Dar=H(Nar=>{"use strict";Object.defineProperty(Nar,Symbol.toStringTag,{value:"Module"});var lbo=d$(),ubo=Rar(),gbo=sT(),Abo=tb();function dbo(e,t,r){return(r?lbo.isIterateeCall(e,t,r):t===void 0)?t=1:t=gbo.toInteger(t),t<1||t>ubo.MAX_SAFE_INTEGER?"":Abo.toString(e).repeat(t)}Nar.repeat=dbo});var xar=H(kar=>{"use strict";Object.defineProperty(kar,Symbol.toStringTag,{value:"Module"});var YNn=tb();function pbo(e,t,r){return arguments.length<3?YNn.toString(e):YNn.toString(e).replace(t,r)}kar.replace=pbo});var QNn=H(Gar=>{"use strict";Object.defineProperty(Gar,Symbol.toStringTag,{value:"Module"});var fbo=aIe();function Ibo(e){return fbo.words(e).map(r=>r.toLowerCase()).join("_")}Gar.snakeCase=Ibo});var Zar=H(Far=>{"use strict";Object.defineProperty(Far,Symbol.toStringTag,{value:"Module"});var hbo=I$(),mbo=QNn(),Cbo=cIe();function _bo(e){return mbo.snakeCase(Cbo.normalizeForCase(hbo.deburr(e)))}Far.snakeCase=_bo});var War=H(Lar=>{"use strict";Object.defineProperty(Lar,Symbol.toStringTag,{value:"Module"});var ybo=tb();function bbo(e,t,r){return ybo.toString(e).split(t,r)}Lar.split=bbo});var Par=H(Oar=>{"use strict";Object.defineProperty(Oar,Symbol.toStringTag,{value:"Module"});var Ebo=I$(),Sbo=aIe(),vbo=cIe();function Bbo(e){let t=Sbo.words(vbo.normalizeForCase(Ebo.deburr(e)).trim()),r="";for(let n=0;n{"use strict";Object.defineProperty(Mar,Symbol.toStringTag,{value:"Module"});function wbo(e,t,r){return e==null||t==null?!1:(r==null&&(r=0),e.startsWith(t,r))}Mar.startsWith=wbo});var Yar=H(Vut=>{"use strict";Object.defineProperty(Vut,Symbol.toStringTag,{value:"Module"});var Tbo=Fut(),Rbo=mut(),XNn=A5e(),Nbo=tb(),Dbo=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,kbo=/['\n\r\u2028\u2029\\]/g,Zut=/($^)/,xbo=new Map([["\\","\\"],["'","'"],[` +`,"n"],["\r","r"],["\u2028","u2028"],["\u2029","u2029"]]);function Gbo(e){return`\\${xbo.get(e)}`}var JNn=/<%=([\s\S]+?)%>/g,Lut={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:JNn,variable:"",imports:{_:{escape:Tbo.escape,template:UNn}}};function UNn(e,t,r){e=Nbo.toString(e),r&&(t=Lut),t=XNn.defaults({...t},Lut);let n=new RegExp([t.escape?.source??Zut.source,t.interpolate?.source??Zut.source,t.interpolate===JNn?Dbo.source:Zut.source,t.evaluate?.source??Zut.source,"$"].join("|"),"g"),a=0,o=!1,l="__p += ''";for(let N of e.matchAll(n)){let[B,F,Q,J,ae]=N,{index:ne}=N;l+=` + '${e.slice(a,ne).replace(kbo,Gbo)}'`,F&&(l+=` + _.escape(${F})`),Q?l+=` + ((${Q}) == null ? '' : ${Q})`:J&&(l+=` + ((${J}) == null ? '' : ${J})`),ae&&(l+=`; ${ae}; - __p += ''`,o=!0),a=ne+B.length}let A=ONn.defaults({...t.imports},Vut.imports),f=Object.keys(A),I=Object.values(A),C=`//# sourceURL=${t.sourceURL?String(t.sourceURL).replace(/[\r\n]/g," "):`es-toolkit.templateSource[${Date.now()}]`} + __p += ''`,o=!0),a=ne+B.length}let A=XNn.defaults({...t.imports},Lut.imports),f=Object.keys(A),I=Object.values(A),C=`//# sourceURL=${t.sourceURL?String(t.sourceURL).replace(/[\r\n]/g," "):`es-toolkit.templateSource[${Date.now()}]`} `,b=`function(${t.variable||"obj"}) { let __p = ''; ${t.variable?"":"if (obj == null) { obj = {}; }"} @@ -172,15 +172,15 @@ ${ae}; ${l} }`} return __p; - }`,E=Tbo.attempt(()=>new Function(...f,`${C}return ${b}`)(...I));if(E.source=b,E instanceof Error)throw E;return E}Wut.template=MNn;Wut.templateSettings=Vut});var Xar=H(Qar=>{"use strict";Object.defineProperty(Qar,Symbol.toStringTag,{value:"Module"});var Gbo=eb();function Fbo(e){return Gbo.toString(e).toLowerCase()}Qar.toLower=Fbo});var Uar=H(Jar=>{"use strict";Object.defineProperty(Jar,Symbol.toStringTag,{value:"Module"});var Zbo=eb();function Lbo(e){return Zbo.toString(e).toUpperCase()}Jar.toUpper=Lbo});var jar=H(Kar=>{"use strict";Object.defineProperty(Kar,Symbol.toStringTag,{value:"Module"});function Vbo(e,t){if(t===void 0)return e.trimEnd();let r=e.length;switch(typeof t){case"string":{if(t.length!==1)throw new Error("The 'chars' parameter should be a single character string.");for(;r>0&&e[r-1]===t;)r--;break}case"object":for(;r>0&&t.includes(e[r-1]);)r--}return e.substring(0,r)}Kar.trimEnd=Vbo});var qar=H(zar=>{"use strict";Object.defineProperty(zar,Symbol.toStringTag,{value:"Module"});function Wbo(e,t){if(t===void 0)return e.trimStart();let r=0;switch(typeof t){case"string":{for(;r{"use strict";Object.defineProperty($ar,Symbol.toStringTag,{value:"Module"});var Obo=jar(),Pbo=qar();function Mbo(e,t){return t===void 0?e.trim():Pbo.trimStart(Obo.trimEnd(e,t),t)}$ar.trim=Mbo});var rcr=H(tcr=>{"use strict";Object.defineProperty(tcr,Symbol.toStringTag,{value:"Module"});var ecr=HNn();function Hbo(e,t,r){if(e==null)return"";if(r!=null||t==null)return e.toString().trim();switch(typeof t){case"object":return Array.isArray(t)?ecr.trim(e,t.flatMap(n=>n.toString().split(""))):ecr.trim(e,t.toString().split(""));default:return ecr.trim(e,t.toString().split(""))}}tcr.trim=Hbo});var icr=H(ncr=>{"use strict";Object.defineProperty(ncr,Symbol.toStringTag,{value:"Module"});var Ybo=jar();function Qbo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimEnd():Ybo.trimEnd(e,t.toString().split(""))}ncr.trimEnd=Qbo});var ocr=H(scr=>{"use strict";Object.defineProperty(scr,Symbol.toStringTag,{value:"Module"});var Xbo=qar();function Jbo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimStart():Xbo.trimStart(e,t.toString().split(""))}scr.trimStart=Jbo});var ccr=H(acr=>{"use strict";Object.defineProperty(acr,Symbol.toStringTag,{value:"Module"});var Ubo=lM(),Kbo=/[\u200d\ud800-\udfff\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff\ufe0e\ufe0f]/;function jbo(e,t){e=e!=null?`${e}`:"";let r=30,n="...";Ubo.isObject(t)&&(r=zbo(t.length),n="omission"in t?`${t.omission}`:"...");let a=e.length,o=Array.from(n).length,l=Math.max(r-o,0),A;if(Kbo.test(e)&&(A=Array.from(e),a=A.length),r>=a)return e;if(a<=o)return n;let I=A===void 0?e.slice(0,l):A?.slice(0,l).join(""),C=t?.separator;if(!C)return I+=n,I;let b=C instanceof RegExp?C.source:C,E="u"+(C instanceof RegExp?C.flags.replace("u",""):""),N=new RegExp(`(?.*(?:(?!${b}).))(?:${b})`,E).exec(I);return(N?.groups?N.groups.result:I)+n}function zbo(e){return e==null?30:e<=0?0:e}acr.truncate=jbo});var YNn=H(lcr=>{"use strict";Object.defineProperty(lcr,Symbol.toStringTag,{value:"Module"});var qbo={"&":"&","<":"<",">":">",""":'"',"'":"'"};function $bo(e){return e.replace(/&(?:amp|lt|gt|quot|#(0+)?39);/g,t=>qbo[t]||"'")}lcr.unescape=$bo});var gcr=H(ucr=>{"use strict";Object.defineProperty(ucr,Symbol.toStringTag,{value:"Module"});var eEo=YNn(),tEo=eb();function rEo(e){return eEo.unescape(tEo.toString(e))}ucr.unescape=rEo});var QNn=H(Acr=>{"use strict";Object.defineProperty(Acr,Symbol.toStringTag,{value:"Module"});var nEo=oIe();function iEo(e){let t=nEo.words(e),r="";for(let n=0;n{"use strict";Object.defineProperty(dcr,Symbol.toStringTag,{value:"Module"});var sEo=f$(),oEo=QNn(),aEo=aIe();function cEo(e){return oEo.upperCase(aEo.normalizeForCase(sEo.deburr(e)))}dcr.upperCase=cEo});var XNn=H(fcr=>{"use strict";Object.defineProperty(fcr,Symbol.toStringTag,{value:"Module"});function lEo(e){return e.substring(0,1).toUpperCase()+e.substring(1)}fcr.upperFirst=lEo});var hcr=H(Icr=>{"use strict";Object.defineProperty(Icr,Symbol.toStringTag,{value:"Module"});var uEo=XNn(),gEo=eb();function AEo(e){return uEo.upperFirst(gEo.toString(e))}Icr.upperFirst=AEo});var Ccr=H(mcr=>{"use strict";Object.defineProperty(mcr,Symbol.toStringTag,{value:"Module"});var dEo=eb(),pEo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\xd7\\xf7",Ive="\\p{Lu}",qNn="\\p{Ll}",$Nn="(?:[\\p{Lm}\\p{Lo}]\\p{M}*)",p5e="\\d",JNn="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",UNn="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",KNn=`[\\p{Z}\\p{P}${pEo}]`,fEo=`(?:${Ive}|${$Nn})`,jNn=`(?:${qNn}|${$Nn})`,zNn=RegExp([`${Ive}?${qNn}+${JNn}(?=${KNn}|${Ive}|$)`,`${fEo}+${UNn}(?=${KNn}|${Ive}${jNn}|$)`,`${Ive}?${jNn}+${JNn}`,`${Ive}+${UNn}`,`${p5e}*(?:1ST|2ND|3RD|(?![123])${p5e}TH)(?=\\b|[a-z_])`,`${p5e}*(?:1st|2nd|3rd|(?![123])${p5e}th)(?=\\b|[A-Z_])`,`${p5e}+`,"\\p{Emoji_Presentation}","\\p{Extended_Pictographic}"].join("|"),"gu");function IEo(e,t=zNn,r){let n=dEo.toString(e);return r&&(t=zNn),typeof t=="number"&&(t=t.toString()),Array.from(n.match(t)??[]).filter(o=>o!=="")}mcr.words=IEo});var ycr=H(_cr=>{"use strict";Object.defineProperty(_cr,Symbol.toStringTag,{value:"Module"});var hEo=cm(),mEo=boe();function CEo(e){let t=e.length,r=e.map(n=>{let a=n[0],o=n[1];if(!mEo.isFunction(o))throw new TypeError("Expected a function");return[hEo.iteratee(a),o]});return function(...n){for(let a=0;a{"use strict";Object.defineProperty(bcr,Symbol.toStringTag,{value:"Module"});function _Eo(e){return()=>e}bcr.constant=_Eo});var vcr=H(Scr=>{"use strict";Object.defineProperty(Scr,Symbol.toStringTag,{value:"Module"});function yEo(e,t){return e==null||Number.isNaN(e)?t:e}Scr.defaultTo=yEo});var wcr=H(Bcr=>{"use strict";Object.defineProperty(Bcr,Symbol.toStringTag,{value:"Module"});var eDn=z9();function bEo(e,t){return typeof e=="string"&&typeof t=="string"?e>t:eDn.toNumber(e)>eDn.toNumber(t)}Bcr.gt=bEo});var Rcr=H(Tcr=>{"use strict";Object.defineProperty(Tcr,Symbol.toStringTag,{value:"Module"});var tDn=z9();function EEo(e,t){return typeof e=="string"&&typeof t=="string"?e>=t:tDn.toNumber(e)>=tDn.toNumber(t)}Tcr.gte=EEo});var I5e=H(Ncr=>{"use strict";Object.defineProperty(Ncr,Symbol.toStringTag,{value:"Module"});var SEo=aM(),vEo=l$(),BEo=g$(),rDn=cM();function wEo(e,t,...r){if(r=r.flat(1),e!=null)switch(typeof t){case"string":return typeof e=="object"&&Object.hasOwn(e,t)?f5e(e,[t],r):f5e(e,SEo.toPath(t),r);case"number":case"symbol":return f5e(e,[t],r);default:return Array.isArray(t)?f5e(e,t,r):f5e(e,[t],r)}}function f5e(e,t,r){let n=rDn.get(e,t.slice(0,-1),e);if(n==null)return;let a=BEo.last(t),o=a?.valueOf();return typeof o=="number"?a=vEo.toKey(o):a=String(a),rDn.get(n,a)?.apply(n,r)}Ncr.invoke=wEo});var kcr=H(Dcr=>{"use strict";Object.defineProperty(Dcr,Symbol.toStringTag,{value:"Module"});var nDn=z9();function TEo(e,t){return typeof e=="string"&&typeof t=="string"?e{"use strict";Object.defineProperty(xcr,Symbol.toStringTag,{value:"Module"});var iDn=z9();function REo(e,t){return typeof e=="string"&&typeof t=="string"?e<=t:iDn.toNumber(e)<=iDn.toNumber(t)}xcr.lte=REo});var Zcr=H(Fcr=>{"use strict";Object.defineProperty(Fcr,Symbol.toStringTag,{value:"Module"});var NEo=I5e();function DEo(e,...t){return function(r){return NEo.invoke(r,e,t)}}Fcr.method=DEo});var Vcr=H(Lcr=>{"use strict";Object.defineProperty(Lcr,Symbol.toStringTag,{value:"Module"});var kEo=I5e();function xEo(e,...t){return function(r){return kEo.invoke(e,r,t)}}Lcr.methodOf=xEo});var Ocr=H(Wcr=>{"use strict";Object.defineProperty(Wcr,Symbol.toStringTag,{value:"Module"});function GEo(){return Date.now()}Wcr.now=GEo});var Mcr=H(Pcr=>{"use strict";Object.defineProperty(Pcr,Symbol.toStringTag,{value:"Module"});var FEo=cm();function ZEo(...e){e.length===1&&Array.isArray(e[0])&&(e=e[0]);let t=e.map(r=>FEo.iteratee(r));return function(...r){return t.map(n=>n.apply(this,r))}}Pcr.over=ZEo});var Ycr=H(Hcr=>{"use strict";Object.defineProperty(Hcr,Symbol.toStringTag,{value:"Module"});var sDn=cm();function LEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(Qcr,Symbol.toStringTag,{value:"Module"});var oDn=cm();function VEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(Jcr,Symbol.toStringTag,{value:"Module"});function WEo(){return[]}Jcr.stubArray=WEo});var jcr=H(Kcr=>{"use strict";Object.defineProperty(Kcr,Symbol.toStringTag,{value:"Module"});function OEo(){return!1}Kcr.stubFalse=OEo});var qcr=H(zcr=>{"use strict";Object.defineProperty(zcr,Symbol.toStringTag,{value:"Module"});function PEo(){return{}}zcr.stubObject=PEo});var elr=H($cr=>{"use strict";Object.defineProperty($cr,Symbol.toStringTag,{value:"Module"});function MEo(){return""}$cr.stubString=MEo});var rlr=H(tlr=>{"use strict";Object.defineProperty(tlr,Symbol.toStringTag,{value:"Module"});function HEo(){return!0}tlr.stubTrue=HEo});var aDn=H(nlr=>{"use strict";Object.defineProperty(nlr,Symbol.toStringTag,{value:"Module"});var YEo=4294967295;nlr.MAX_ARRAY_LENGTH=YEo});var slr=H(ilr=>{"use strict";Object.defineProperty(ilr,Symbol.toStringTag,{value:"Module"});var QEo=aDn(),XEo=iIe();function JEo(e){if(e==null)return 0;let t=Math.floor(Number(e));return XEo.clamp(t,0,QEo.MAX_ARRAY_LENGTH)}ilr.toLength=JEo});var alr=H(olr=>{"use strict";Object.defineProperty(olr,Symbol.toStringTag,{value:"Module"});var UEo=fX();function KEo(e){let t={},r=UEo.keysIn(e);for(let n=0;n{"use strict";Object.defineProperty(clr,Symbol.toStringTag,{value:"Module"});var jEo=iT(),cDn=Rar(),zEo=iIe();function qEo(e){return e==null?0:zEo.clamp(jEo.toInteger(e),-cDn.MAX_SAFE_INTEGER,cDn.MAX_SAFE_INTEGER)}clr.toSafeInteger=qEo});var glr=H(ulr=>{"use strict";Object.defineProperty(ulr,Symbol.toStringTag,{value:"Module"});var $Eo=0;function e1o(e=""){let t=++$Eo;return`${e}${t}`}ulr.uniqueId=e1o});var fDn=H(Kn=>{"use strict";Object.defineProperty(Kn,Symbol.toStringTag,{value:"Module"});var t1o=q7t(),r1o=izt(),n1o=azt(),i1o=uzt(),s1o=Hzt(),o1o=Uzt(),a1o=Ult(),c1o=Klt(),l1o=cqt(),u1o=gqt(),g1o=pqt(),A1o=hqt(),lDn=qlt(),uDn=yqt(),d1o=Sqt(),p1o=Tqt(),f1o=$lt(),I1o=Dqt(),h1o=Gqt(),m1o=Zqt(),C1o=Vqt(),gDn=Pqt(),_1o=Jqt(),y1o=jqt(),b1o=$3e(),E1o=rIe(),S1o=qqt(),v1o=Ave(),B1o=t$t(),w1o=n$t(),T1o=s$t(),R1o=c$t(),N1o=A$t(),D1o=tut(),k1o=rut(),x1o=b$t(),G1o=S$t(),F1o=w$t(),Z1o=g$(),L1o=R$t(),V1o=q3e(),W1o=D$t(),O1o=iut(),P1o=Z$t(),M1o=O$t(),H1o=M$t(),Y1o=Y$t(),Q1o=X$t(),X1o=q$t(),J1o=nut(),U1o=eer(),K1o=ner(),j1o=oer(),z1o=cer(),q1o=ger(),$1o=ber(),e2o=Ter(),t2o=Ner(),r2o=ker(),n2o=Ger(),i2o=Zer(),s2o=uut(),o2o=s5e(),a2o=Jer(),c2o=Aut(),l2o=gut(),u2o=zer(),g2o=etr(),A2o=ntr(),d2o=otr(),p2o=ltr(),f2o=gtr(),I2o=dtr(),h2o=put(),m2o=fut(),C2o=e5e(),_2o=Etr(),y2o=vtr(),b2o=Iut(),E2o=Ntr(),S2o=xtr(),v2o=Ftr(),B2o=Wtr(),w2o=Ptr(),T2o=Qtr(),R2o=Utr(),N2o=qtr(),D2o=trr(),k2o=nrr(),x2o=mut(),G2o=Cut(),F2o=arr(),Z2o=urr(),L2o=drr(),V2o=Irr(),W2o=Crr(),O2o=_ut(),P2o=Err(),M2o=vrr(),H2o=wrr(),Y2o=Drr(),Q2o=Grr(),X2o=Lrr(),J2o=n5e(),U2o=Wrr(),K2o=Mrr(),j2o=Yrr(),z2o=Jrr(),q2o=jrr(),$2o=qrr(),eSo=tnr(),tSo=nnr(),rSo=snr(),nSo=anr(),iSo=lnr(),sSo=gnr(),oSo=pnr(),aSo=iIe(),cSo=Inr(),lSo=mnr(),uSo=ynr(),gSo=Enr(),ASo=Bnr(),dSo=Nnr(),pSo=Gnr(),fSo=Znr(),ISo=Wnr(),hSo=Pnr(),mSo=Hnr(),CSo=Qnr(),_So=Unr(),ySo=znr(),bSo=$nr(),ESo=tir(),SSo=vut(),vSo=Sut(),BSo=cir(),wSo=r8(),TSo=uir(),RSo=Iir(),ADn=Cir(),dDn=yir(),NSo=Eir(),DSo=sut(),kSo=Tut(),xSo=cve(),GSo=J3e(),FSo=wir(),ZSo=Rir(),LSo=A5e(),VSo=xir(),WSo=Zir(),OSo=Vir(),PSo=Oir(),MSo=Mir(),HSo=Yir(),YSo=Xir(),QSo=Uir(),XSo=jir(),JSo=qir(),USo=cM(),KSo=U3e(),jSo=esr(),zSo=nsr(),qSo=ssr(),$So=n8(),evo=fX(),tvo=csr(),rvo=gsr(),nvo=hsr(),ivo=Dut(),svo=_sr(),ovo=bsr(),avo=Ssr(),cvo=Bsr(),lvo=pX(),uvo=Tsr(),gvo=Nsr(),Avo=a5e(),dvo=ksr(),pvo=Gsr(),fvo=Osr(),Ivo=Msr(),hvo=Qsr(),mvo=r5e(),Cvo=Jsr(),_vo=pve(),yvo=aut(),bvo=Ksr(),Evo=zsr(),Svo=$sr(),vvo=Qlt(),Bvo=tor(),wvo=nor(),Tvo=sor(),Rvo=cor(),Nvo=Gut(),Dvo=tIe(),kvo=d$(),xvo=gor(),Gvo=Bf(),Fvo=v2(),Zvo=dor(),Lvo=xut(),Vvo=hor(),Wvo=Cor(),Ovo=yor(),Pvo=vor(),Mvo=wor(),Hvo=Ror(),Yvo=Dor(),Qvo=out(),Xvo=M3e(),Jvo=lut(),Uvo=dve(),Kvo=o5e(),jvo=lM(),zvo=moe(),qvo=sIe(),$vo=Gor(),eBo=Zor(),tBo=Wor(),rBo=gve(),nBo=Coe(),iBo=p$(),sBo=Mor(),oBo=Qor(),aBo=e8(),cBo=t8(),lBo=Kor(),uBo=zor(),gBo=nar(),ABo=f$(),dBo=sar(),pBo=Zut(),fBo=uar(),IBo=dar(),hBo=Iar(),mBo=Car(),CBo=bar(),_Bo=Sar(),yBo=war(),bBo=Dar(),EBo=xar(),SBo=Zar(),vBo=War(),BBo=Par(),wBo=Har(),pDn=Yar(),TBo=Xar(),RBo=Uar(),NBo=rcr(),DBo=icr(),kBo=ocr(),xBo=ccr(),GBo=gcr(),FBo=pcr(),ZBo=hcr(),LBo=Ccr(),VBo=ycr(),WBo=Ecr(),OBo=vcr(),PBo=Rk(),MBo=wcr(),HBo=Rcr(),YBo=I5e(),QBo=cm(),XBo=kcr(),JBo=Gcr(),UBo=Zcr(),KBo=Vcr(),jBo=Ocr(),zBo=Mcr(),qBo=Ycr(),$Bo=Xcr(),ewo=Ucr(),two=jcr(),rwo=qcr(),nwo=elr(),iwo=rlr(),swo=g5e(),owo=i5e(),awo=uve(),cwo=iT(),lwo=slr(),uwo=z9(),gwo=aM(),Awo=alr(),dwo=llr(),pwo=eb(),fwo=glr();Kn.castArray=t1o.castArray;Kn.chunk=r1o.chunk;Kn.compact=n1o.compact;Kn.concat=i1o.concat;Kn.countBy=s1o.countBy;Kn.difference=o1o.difference;Kn.differenceBy=a1o.differenceBy;Kn.differenceWith=c1o.differenceWith;Kn.drop=l1o.drop;Kn.dropRight=u1o.dropRight;Kn.dropRightWhile=g1o.dropRightWhile;Kn.dropWhile=A1o.dropWhile;Kn.each=lDn.forEach;Kn.forEach=lDn.forEach;Kn.eachRight=uDn.forEachRight;Kn.forEachRight=uDn.forEachRight;Kn.every=d1o.every;Kn.fill=p1o.fill;Kn.filter=f1o.filter;Kn.find=I1o.find;Kn.findIndex=h1o.findIndex;Kn.findLast=m1o.findLast;Kn.findLastIndex=C1o.findLastIndex;Kn.first=gDn.head;Kn.head=gDn.head;Kn.flatMap=_1o.flatMap;Kn.flatMapDeep=y1o.flatMapDeep;Kn.flatMapDepth=b1o.flatMapDepth;Kn.flatten=E1o.flatten;Kn.flattenDeep=S1o.flattenDeep;Kn.flattenDepth=v1o.flattenDepth;Kn.groupBy=B1o.groupBy;Kn.includes=w1o.includes;Kn.indexOf=T1o.indexOf;Kn.initial=R1o.initial;Kn.intersection=N1o.intersection;Kn.intersectionBy=D1o.intersectionBy;Kn.intersectionWith=k1o.intersectionWith;Kn.invokeMap=x1o.invokeMap;Kn.join=G1o.join;Kn.keyBy=F1o.keyBy;Kn.last=Z1o.last;Kn.lastIndexOf=L1o.lastIndexOf;Kn.map=V1o.map;Kn.nth=W1o.nth;Kn.orderBy=O1o.orderBy;Kn.partition=P1o.partition;Kn.pull=M1o.pull;Kn.pullAll=H1o.pullAll;Kn.pullAllBy=Y1o.pullAllBy;Kn.pullAllWith=Q1o.pullAllWith;Kn.pullAt=X1o.pullAt;Kn.reduce=J1o.reduce;Kn.reduceRight=U1o.reduceRight;Kn.reject=K1o.reject;Kn.remove=j1o.remove;Kn.reverse=z1o.reverse;Kn.sample=q1o.sample;Kn.sampleSize=$1o.sampleSize;Kn.shuffle=e2o.shuffle;Kn.size=t2o.size;Kn.slice=r2o.slice;Kn.some=n2o.some;Kn.sortBy=i2o.sortBy;Kn.sortedIndex=s2o.sortedIndex;Kn.sortedIndexBy=o2o.sortedIndexBy;Kn.sortedIndexOf=a2o.sortedIndexOf;Kn.sortedLastIndex=c2o.sortedLastIndex;Kn.sortedLastIndexBy=l2o.sortedLastIndexBy;Kn.sortedLastIndexOf=u2o.sortedLastIndexOf;Kn.tail=g2o.tail;Kn.take=A2o.take;Kn.takeRight=d2o.takeRight;Kn.takeRightWhile=p2o.takeRightWhile;Kn.takeWhile=f2o.takeWhile;Kn.union=I2o.union;Kn.unionBy=h2o.unionBy;Kn.unionWith=m2o.unionWith;Kn.uniq=C2o.uniq;Kn.uniqBy=_2o.uniqBy;Kn.uniqWith=y2o.uniqWith;Kn.unzip=b2o.unzip;Kn.unzipWith=E2o.unzipWith;Kn.without=S2o.without;Kn.xor=v2o.xor;Kn.xorBy=B2o.xorBy;Kn.xorWith=w2o.xorWith;Kn.zip=T2o.zip;Kn.zipObject=R2o.zipObject;Kn.zipObjectDeep=N2o.zipObjectDeep;Kn.zipWith=D2o.zipWith;Kn.after=k2o.after;Kn.ary=x2o.ary;Kn.attempt=G2o.attempt;Kn.before=F2o.before;Kn.bind=Z2o.bind;Kn.bindKey=L2o.bindKey;Kn.curry=V2o.curry;Kn.curryRight=W2o.curryRight;Kn.debounce=O2o.debounce;Kn.defer=P2o.defer;Kn.delay=M2o.delay;Kn.flip=H2o.flip;Kn.flow=Y2o.flow;Kn.flowRight=Q2o.flowRight;Kn.memoize=X2o.memoize;Kn.negate=J2o.negate;Kn.nthArg=U2o.nthArg;Kn.once=K2o.once;Kn.overArgs=j2o.overArgs;Kn.partial=z2o.partial;Kn.partialRight=q2o.partialRight;Kn.rearg=$2o.rearg;Kn.rest=eSo.rest;Kn.spread=tSo.spread;Kn.throttle=rSo.throttle;Kn.unary=nSo.unary;Kn.wrap=iSo.wrap;Kn.add=sSo.add;Kn.ceil=oSo.ceil;Kn.clamp=aSo.clamp;Kn.divide=cSo.divide;Kn.floor=lSo.floor;Kn.inRange=uSo.inRange;Kn.max=gSo.max;Kn.maxBy=ASo.maxBy;Kn.mean=dSo.mean;Kn.meanBy=pSo.meanBy;Kn.min=fSo.min;Kn.minBy=ISo.minBy;Kn.multiply=hSo.multiply;Kn.parseInt=mSo.parseInt;Kn.random=CSo.random;Kn.range=_So.range;Kn.rangeRight=ySo.rangeRight;Kn.round=bSo.round;Kn.subtract=ESo.subtract;Kn.sum=SSo.sum;Kn.sumBy=vSo.sumBy;Kn.isEqual=BSo.isEqual;Kn.identity=wSo.identity;Kn.noop=TSo.noop;Kn.assign=RSo.assign;Kn.assignIn=ADn.assignIn;Kn.extend=ADn.assignIn;Kn.assignInWith=dDn.assignInWith;Kn.extendWith=dDn.assignInWith;Kn.assignWith=NSo.assignWith;Kn.at=DSo.at;Kn.clone=kSo.clone;Kn.cloneDeep=xSo.cloneDeep;Kn.cloneDeepWith=GSo.cloneDeepWith;Kn.cloneWith=FSo.cloneWith;Kn.create=ZSo.create;Kn.defaults=LSo.defaults;Kn.defaultsDeep=VSo.defaultsDeep;Kn.findKey=WSo.findKey;Kn.findLastKey=OSo.findLastKey;Kn.forIn=PSo.forIn;Kn.forInRight=MSo.forInRight;Kn.forOwn=HSo.forOwn;Kn.forOwnRight=YSo.forOwnRight;Kn.fromPairs=QSo.fromPairs;Kn.functions=XSo.functions;Kn.functionsIn=JSo.functionsIn;Kn.get=USo.get;Kn.has=KSo.has;Kn.hasIn=jSo.hasIn;Kn.invert=zSo.invert;Kn.invertBy=qSo.invertBy;Kn.keys=$So.keys;Kn.keysIn=evo.keysIn;Kn.mapKeys=tvo.mapKeys;Kn.mapValues=rvo.mapValues;Kn.merge=nvo.merge;Kn.mergeWith=ivo.mergeWith;Kn.omit=svo.omit;Kn.omitBy=ovo.omitBy;Kn.pick=avo.pick;Kn.pickBy=cvo.pickBy;Kn.property=lvo.property;Kn.propertyOf=uvo.propertyOf;Kn.result=gvo.result;Kn.set=Avo.set;Kn.setWith=dvo.setWith;Kn.toDefaulted=pvo.toDefaulted;Kn.toPairs=fvo.toPairs;Kn.toPairsIn=Ivo.toPairsIn;Kn.transform=hvo.transform;Kn.unset=mvo.unset;Kn.update=Cvo.update;Kn.updateWith=_vo.updateWith;Kn.values=yvo.values;Kn.valuesIn=bvo.valuesIn;Kn.isFunction=Evo.isFunction;Kn.isLength=Svo.isLength;Kn.isMatchWith=vvo.isMatchWith;Kn.isNative=Bvo.isNative;Kn.isNull=wvo.isNull;Kn.isUndefined=Tvo.isUndefined;Kn.conforms=Rvo.conforms;Kn.conformsTo=Nvo.conformsTo;Kn.isArguments=Dvo.isArguments;Kn.isArray=kvo.isArray;Kn.isArrayBuffer=xvo.isArrayBuffer;Kn.isArrayLike=Gvo.isArrayLike;Kn.isArrayLikeObject=Fvo.isArrayLikeObject;Kn.isBoolean=Zvo.isBoolean;Kn.isBuffer=Lvo.isBuffer;Kn.isDate=Vvo.isDate;Kn.isElement=Wvo.isElement;Kn.isEmpty=Ovo.isEmpty;Kn.isEqualWith=Pvo.isEqualWith;Kn.isError=Mvo.isError;Kn.isFinite=Hvo.isFinite;Kn.isInteger=Yvo.isInteger;Kn.isMap=Qvo.isMap;Kn.isMatch=Xvo.isMatch;Kn.isNaN=Jvo.isNaN;Kn.isNil=Uvo.isNil;Kn.isNumber=Kvo.isNumber;Kn.isObject=jvo.isObject;Kn.isObjectLike=zvo.isObjectLike;Kn.isPlainObject=qvo.isPlainObject;Kn.isRegExp=$vo.isRegExp;Kn.isSafeInteger=eBo.isSafeInteger;Kn.isSet=tBo.isSet;Kn.isString=rBo.isString;Kn.isSymbol=nBo.isSymbol;Kn.isTypedArray=iBo.isTypedArray;Kn.isWeakMap=sBo.isWeakMap;Kn.isWeakSet=oBo.isWeakSet;Kn.matches=aBo.matches;Kn.matchesProperty=cBo.matchesProperty;Kn.capitalize=lBo.capitalize;Kn.bindAll=uBo.bindAll;Kn.camelCase=gBo.camelCase;Kn.deburr=ABo.deburr;Kn.endsWith=dBo.endsWith;Kn.escape=pBo.escape;Kn.escapeRegExp=fBo.escapeRegExp;Kn.kebabCase=IBo.kebabCase;Kn.lowerCase=hBo.lowerCase;Kn.lowerFirst=mBo.lowerFirst;Kn.pad=CBo.pad;Kn.padEnd=_Bo.padEnd;Kn.padStart=yBo.padStart;Kn.repeat=bBo.repeat;Kn.replace=EBo.replace;Kn.snakeCase=SBo.snakeCase;Kn.split=vBo.split;Kn.startCase=BBo.startCase;Kn.startsWith=wBo.startsWith;Kn.template=pDn.template;Kn.templateSettings=pDn.templateSettings;Kn.toLower=TBo.toLower;Kn.toUpper=RBo.toUpper;Kn.trim=NBo.trim;Kn.trimEnd=DBo.trimEnd;Kn.trimStart=kBo.trimStart;Kn.truncate=xBo.truncate;Kn.unescape=GBo.unescape;Kn.upperCase=FBo.upperCase;Kn.upperFirst=ZBo.upperFirst;Kn.words=LBo.words;Kn.cond=VBo.cond;Kn.constant=WBo.constant;Kn.defaultTo=OBo.defaultTo;Kn.eq=PBo.isEqualsSameValueZero;Kn.gt=MBo.gt;Kn.gte=HBo.gte;Kn.invoke=YBo.invoke;Kn.iteratee=QBo.iteratee;Kn.lt=XBo.lt;Kn.lte=JBo.lte;Kn.method=UBo.method;Kn.methodOf=KBo.methodOf;Kn.now=jBo.now;Kn.over=zBo.over;Kn.overEvery=qBo.overEvery;Kn.overSome=$Bo.overSome;Kn.stubArray=ewo.stubArray;Kn.stubFalse=two.stubFalse;Kn.stubObject=rwo.stubObject;Kn.stubString=nwo.stubString;Kn.stubTrue=iwo.stubTrue;Kn.times=swo.times;Kn.toArray=owo.toArray;Kn.toFinite=awo.toFinite;Kn.toInteger=cwo.toInteger;Kn.toLength=lwo.toLength;Kn.toNumber=uwo.toNumber;Kn.toPath=gwo.toPath;Kn.toPlainObject=Awo.toPlainObject;Kn.toSafeInteger=dwo.toSafeInteger;Kn.toString=pwo.toString;Kn.uniqueId=fwo.uniqueId});var IDn=H(Alr=>{"use strict";Object.defineProperty(Alr,Symbol.toStringTag,{value:"Module"});var Iwo=fDn(),hve=e=>e;Object.assign(hve,Iwo);hve.partial.placeholder=hve;hve.partialRight.placeholder=hve;Alr.toolkit=hve});var WO=H(Jn=>{"use strict";Object.defineProperties(Jn,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var hwo=q7t(),mwo=izt(),Cwo=azt(),_wo=uzt(),ywo=Hzt(),bwo=Uzt(),Ewo=Ult(),Swo=Klt(),vwo=cqt(),Bwo=gqt(),wwo=pqt(),Two=hqt(),hDn=qlt(),mDn=yqt(),Rwo=Sqt(),Nwo=Tqt(),Dwo=$lt(),kwo=Dqt(),xwo=Gqt(),Gwo=Zqt(),Fwo=Vqt(),CDn=Pqt(),Zwo=Jqt(),Lwo=jqt(),Vwo=$3e(),Wwo=rIe(),Owo=qqt(),Pwo=Ave(),Mwo=t$t(),Hwo=n$t(),Ywo=s$t(),Qwo=c$t(),Xwo=A$t(),Jwo=tut(),Uwo=rut(),Kwo=b$t(),jwo=S$t(),zwo=w$t(),qwo=g$(),$wo=R$t(),eTo=q3e(),tTo=D$t(),rTo=iut(),nTo=Z$t(),iTo=O$t(),sTo=M$t(),oTo=Y$t(),aTo=X$t(),cTo=q$t(),lTo=nut(),uTo=eer(),gTo=ner(),ATo=oer(),dTo=cer(),pTo=ger(),fTo=ber(),ITo=Ter(),hTo=Ner(),mTo=ker(),CTo=Ger(),_To=Zer(),yTo=uut(),bTo=s5e(),ETo=Jer(),STo=Aut(),vTo=gut(),BTo=zer(),wTo=etr(),TTo=ntr(),RTo=otr(),NTo=ltr(),DTo=gtr(),kTo=dtr(),xTo=put(),GTo=fut(),FTo=e5e(),ZTo=Etr(),LTo=vtr(),VTo=Iut(),WTo=Ntr(),OTo=xtr(),PTo=Ftr(),MTo=Wtr(),HTo=Ptr(),YTo=Qtr(),QTo=Utr(),XTo=qtr(),JTo=trr(),UTo=nrr(),KTo=mut(),jTo=Cut(),zTo=arr(),qTo=urr(),$To=drr(),eRo=Irr(),tRo=Crr(),rRo=_ut(),nRo=Err(),iRo=vrr(),sRo=wrr(),oRo=Drr(),aRo=Grr(),cRo=Lrr(),lRo=n5e(),uRo=Wrr(),gRo=Mrr(),ARo=Yrr(),dRo=Jrr(),pRo=jrr(),fRo=qrr(),IRo=tnr(),hRo=nnr(),mRo=snr(),CRo=anr(),_Ro=lnr(),yRo=gnr(),bRo=pnr(),ERo=iIe(),SRo=Inr(),vRo=mnr(),BRo=ynr(),wRo=Enr(),TRo=Bnr(),RRo=Nnr(),NRo=Gnr(),DRo=Znr(),kRo=Wnr(),xRo=Pnr(),GRo=Hnr(),FRo=Qnr(),ZRo=Unr(),LRo=znr(),VRo=$nr(),WRo=tir(),ORo=vut(),PRo=Sut(),MRo=cir(),HRo=r8(),YRo=uir(),QRo=Iir(),_Dn=Cir(),yDn=yir(),XRo=Eir(),JRo=sut(),URo=Tut(),KRo=cve(),jRo=J3e(),zRo=wir(),qRo=Rir(),$Ro=A5e(),eNo=xir(),tNo=Zir(),rNo=Vir(),nNo=Oir(),iNo=Mir(),sNo=Yir(),oNo=Xir(),aNo=Uir(),cNo=jir(),lNo=qir(),uNo=cM(),gNo=U3e(),ANo=esr(),dNo=nsr(),pNo=ssr(),fNo=n8(),INo=fX(),hNo=csr(),mNo=gsr(),CNo=hsr(),_No=Dut(),yNo=_sr(),bNo=bsr(),ENo=Ssr(),SNo=Bsr(),vNo=pX(),BNo=Tsr(),wNo=Nsr(),TNo=a5e(),RNo=ksr(),NNo=Gsr(),DNo=Osr(),kNo=Msr(),xNo=Qsr(),GNo=r5e(),FNo=Jsr(),ZNo=pve(),LNo=aut(),VNo=Ksr(),WNo=zsr(),ONo=$sr(),PNo=Qlt(),MNo=tor(),HNo=nor(),YNo=sor(),QNo=cor(),XNo=Gut(),JNo=tIe(),UNo=d$(),KNo=gor(),jNo=Bf(),zNo=v2(),qNo=dor(),$No=xut(),eDo=hor(),tDo=Cor(),rDo=yor(),nDo=vor(),iDo=wor(),sDo=Ror(),oDo=Dor(),aDo=out(),cDo=M3e(),lDo=lut(),uDo=dve(),gDo=o5e(),ADo=lM(),dDo=moe(),pDo=sIe(),fDo=Gor(),IDo=Zor(),hDo=Wor(),mDo=gve(),CDo=Coe(),_Do=p$(),yDo=Mor(),bDo=Qor(),EDo=e8(),SDo=t8(),vDo=Kor(),BDo=zor(),wDo=nar(),TDo=f$(),RDo=sar(),NDo=Zut(),DDo=uar(),kDo=dar(),xDo=Iar(),GDo=Car(),FDo=bar(),ZDo=Sar(),LDo=war(),VDo=Dar(),WDo=xar(),ODo=Zar(),PDo=War(),MDo=Par(),HDo=Har(),bDn=Yar(),YDo=Xar(),QDo=Uar(),XDo=rcr(),JDo=icr(),UDo=ocr(),KDo=ccr(),jDo=gcr(),zDo=pcr(),qDo=hcr(),$Do=Ccr(),eko=ycr(),tko=Ecr(),rko=vcr(),nko=Rk(),iko=wcr(),sko=Rcr(),oko=I5e(),ako=cm(),cko=kcr(),lko=Gcr(),uko=Zcr(),gko=Vcr(),Ako=Ocr(),dko=Mcr(),pko=Ycr(),fko=Xcr(),Iko=Ucr(),hko=jcr(),mko=qcr(),Cko=elr(),_ko=rlr(),yko=g5e(),bko=i5e(),Eko=uve(),Sko=iT(),vko=slr(),Bko=z9(),wko=aM(),Tko=alr(),Rko=llr(),Nko=eb(),Dko=glr(),kko=IDn();Jn.castArray=hwo.castArray;Jn.chunk=mwo.chunk;Jn.compact=Cwo.compact;Jn.concat=_wo.concat;Jn.countBy=ywo.countBy;Jn.difference=bwo.difference;Jn.differenceBy=Ewo.differenceBy;Jn.differenceWith=Swo.differenceWith;Jn.drop=vwo.drop;Jn.dropRight=Bwo.dropRight;Jn.dropRightWhile=wwo.dropRightWhile;Jn.dropWhile=Two.dropWhile;Jn.each=hDn.forEach;Jn.forEach=hDn.forEach;Jn.eachRight=mDn.forEachRight;Jn.forEachRight=mDn.forEachRight;Jn.every=Rwo.every;Jn.fill=Nwo.fill;Jn.filter=Dwo.filter;Jn.find=kwo.find;Jn.findIndex=xwo.findIndex;Jn.findLast=Gwo.findLast;Jn.findLastIndex=Fwo.findLastIndex;Jn.first=CDn.head;Jn.head=CDn.head;Jn.flatMap=Zwo.flatMap;Jn.flatMapDeep=Lwo.flatMapDeep;Jn.flatMapDepth=Vwo.flatMapDepth;Jn.flatten=Wwo.flatten;Jn.flattenDeep=Owo.flattenDeep;Jn.flattenDepth=Pwo.flattenDepth;Jn.groupBy=Mwo.groupBy;Jn.includes=Hwo.includes;Jn.indexOf=Ywo.indexOf;Jn.initial=Qwo.initial;Jn.intersection=Xwo.intersection;Jn.intersectionBy=Jwo.intersectionBy;Jn.intersectionWith=Uwo.intersectionWith;Jn.invokeMap=Kwo.invokeMap;Jn.join=jwo.join;Jn.keyBy=zwo.keyBy;Jn.last=qwo.last;Jn.lastIndexOf=$wo.lastIndexOf;Jn.map=eTo.map;Jn.nth=tTo.nth;Jn.orderBy=rTo.orderBy;Jn.partition=nTo.partition;Jn.pull=iTo.pull;Jn.pullAll=sTo.pullAll;Jn.pullAllBy=oTo.pullAllBy;Jn.pullAllWith=aTo.pullAllWith;Jn.pullAt=cTo.pullAt;Jn.reduce=lTo.reduce;Jn.reduceRight=uTo.reduceRight;Jn.reject=gTo.reject;Jn.remove=ATo.remove;Jn.reverse=dTo.reverse;Jn.sample=pTo.sample;Jn.sampleSize=fTo.sampleSize;Jn.shuffle=ITo.shuffle;Jn.size=hTo.size;Jn.slice=mTo.slice;Jn.some=CTo.some;Jn.sortBy=_To.sortBy;Jn.sortedIndex=yTo.sortedIndex;Jn.sortedIndexBy=bTo.sortedIndexBy;Jn.sortedIndexOf=ETo.sortedIndexOf;Jn.sortedLastIndex=STo.sortedLastIndex;Jn.sortedLastIndexBy=vTo.sortedLastIndexBy;Jn.sortedLastIndexOf=BTo.sortedLastIndexOf;Jn.tail=wTo.tail;Jn.take=TTo.take;Jn.takeRight=RTo.takeRight;Jn.takeRightWhile=NTo.takeRightWhile;Jn.takeWhile=DTo.takeWhile;Jn.union=kTo.union;Jn.unionBy=xTo.unionBy;Jn.unionWith=GTo.unionWith;Jn.uniq=FTo.uniq;Jn.uniqBy=ZTo.uniqBy;Jn.uniqWith=LTo.uniqWith;Jn.unzip=VTo.unzip;Jn.unzipWith=WTo.unzipWith;Jn.without=OTo.without;Jn.xor=PTo.xor;Jn.xorBy=MTo.xorBy;Jn.xorWith=HTo.xorWith;Jn.zip=YTo.zip;Jn.zipObject=QTo.zipObject;Jn.zipObjectDeep=XTo.zipObjectDeep;Jn.zipWith=JTo.zipWith;Jn.after=UTo.after;Jn.ary=KTo.ary;Jn.attempt=jTo.attempt;Jn.before=zTo.before;Jn.bind=qTo.bind;Jn.bindKey=$To.bindKey;Jn.curry=eRo.curry;Jn.curryRight=tRo.curryRight;Jn.debounce=rRo.debounce;Jn.defer=nRo.defer;Jn.delay=iRo.delay;Jn.flip=sRo.flip;Jn.flow=oRo.flow;Jn.flowRight=aRo.flowRight;Jn.memoize=cRo.memoize;Jn.negate=lRo.negate;Jn.nthArg=uRo.nthArg;Jn.once=gRo.once;Jn.overArgs=ARo.overArgs;Jn.partial=dRo.partial;Jn.partialRight=pRo.partialRight;Jn.rearg=fRo.rearg;Jn.rest=IRo.rest;Jn.spread=hRo.spread;Jn.throttle=mRo.throttle;Jn.unary=CRo.unary;Jn.wrap=_Ro.wrap;Jn.add=yRo.add;Jn.ceil=bRo.ceil;Jn.clamp=ERo.clamp;Jn.divide=SRo.divide;Jn.floor=vRo.floor;Jn.inRange=BRo.inRange;Jn.max=wRo.max;Jn.maxBy=TRo.maxBy;Jn.mean=RRo.mean;Jn.meanBy=NRo.meanBy;Jn.min=DRo.min;Jn.minBy=kRo.minBy;Jn.multiply=xRo.multiply;Jn.parseInt=GRo.parseInt;Jn.random=FRo.random;Jn.range=ZRo.range;Jn.rangeRight=LRo.rangeRight;Jn.round=VRo.round;Jn.subtract=WRo.subtract;Jn.sum=ORo.sum;Jn.sumBy=PRo.sumBy;Jn.isEqual=MRo.isEqual;Jn.identity=HRo.identity;Jn.noop=YRo.noop;Jn.assign=QRo.assign;Jn.assignIn=_Dn.assignIn;Jn.extend=_Dn.assignIn;Jn.assignInWith=yDn.assignInWith;Jn.extendWith=yDn.assignInWith;Jn.assignWith=XRo.assignWith;Jn.at=JRo.at;Jn.clone=URo.clone;Jn.cloneDeep=KRo.cloneDeep;Jn.cloneDeepWith=jRo.cloneDeepWith;Jn.cloneWith=zRo.cloneWith;Jn.create=qRo.create;Jn.defaults=$Ro.defaults;Jn.defaultsDeep=eNo.defaultsDeep;Jn.findKey=tNo.findKey;Jn.findLastKey=rNo.findLastKey;Jn.forIn=nNo.forIn;Jn.forInRight=iNo.forInRight;Jn.forOwn=sNo.forOwn;Jn.forOwnRight=oNo.forOwnRight;Jn.fromPairs=aNo.fromPairs;Jn.functions=cNo.functions;Jn.functionsIn=lNo.functionsIn;Jn.get=uNo.get;Jn.has=gNo.has;Jn.hasIn=ANo.hasIn;Jn.invert=dNo.invert;Jn.invertBy=pNo.invertBy;Jn.keys=fNo.keys;Jn.keysIn=INo.keysIn;Jn.mapKeys=hNo.mapKeys;Jn.mapValues=mNo.mapValues;Jn.merge=CNo.merge;Jn.mergeWith=_No.mergeWith;Jn.omit=yNo.omit;Jn.omitBy=bNo.omitBy;Jn.pick=ENo.pick;Jn.pickBy=SNo.pickBy;Jn.property=vNo.property;Jn.propertyOf=BNo.propertyOf;Jn.result=wNo.result;Jn.set=TNo.set;Jn.setWith=RNo.setWith;Jn.toDefaulted=NNo.toDefaulted;Jn.toPairs=DNo.toPairs;Jn.toPairsIn=kNo.toPairsIn;Jn.transform=xNo.transform;Jn.unset=GNo.unset;Jn.update=FNo.update;Jn.updateWith=ZNo.updateWith;Jn.values=LNo.values;Jn.valuesIn=VNo.valuesIn;Jn.isFunction=WNo.isFunction;Jn.isLength=ONo.isLength;Jn.isMatchWith=PNo.isMatchWith;Jn.isNative=MNo.isNative;Jn.isNull=HNo.isNull;Jn.isUndefined=YNo.isUndefined;Jn.conforms=QNo.conforms;Jn.conformsTo=XNo.conformsTo;Jn.isArguments=JNo.isArguments;Jn.isArray=UNo.isArray;Jn.isArrayBuffer=KNo.isArrayBuffer;Jn.isArrayLike=jNo.isArrayLike;Jn.isArrayLikeObject=zNo.isArrayLikeObject;Jn.isBoolean=qNo.isBoolean;Jn.isBuffer=$No.isBuffer;Jn.isDate=eDo.isDate;Jn.isElement=tDo.isElement;Jn.isEmpty=rDo.isEmpty;Jn.isEqualWith=nDo.isEqualWith;Jn.isError=iDo.isError;Jn.isFinite=sDo.isFinite;Jn.isInteger=oDo.isInteger;Jn.isMap=aDo.isMap;Jn.isMatch=cDo.isMatch;Jn.isNaN=lDo.isNaN;Jn.isNil=uDo.isNil;Jn.isNumber=gDo.isNumber;Jn.isObject=ADo.isObject;Jn.isObjectLike=dDo.isObjectLike;Jn.isPlainObject=pDo.isPlainObject;Jn.isRegExp=fDo.isRegExp;Jn.isSafeInteger=IDo.isSafeInteger;Jn.isSet=hDo.isSet;Jn.isString=mDo.isString;Jn.isSymbol=CDo.isSymbol;Jn.isTypedArray=_Do.isTypedArray;Jn.isWeakMap=yDo.isWeakMap;Jn.isWeakSet=bDo.isWeakSet;Jn.matches=EDo.matches;Jn.matchesProperty=SDo.matchesProperty;Jn.capitalize=vDo.capitalize;Jn.bindAll=BDo.bindAll;Jn.camelCase=wDo.camelCase;Jn.deburr=TDo.deburr;Jn.endsWith=RDo.endsWith;Jn.escape=NDo.escape;Jn.escapeRegExp=DDo.escapeRegExp;Jn.kebabCase=kDo.kebabCase;Jn.lowerCase=xDo.lowerCase;Jn.lowerFirst=GDo.lowerFirst;Jn.pad=FDo.pad;Jn.padEnd=ZDo.padEnd;Jn.padStart=LDo.padStart;Jn.repeat=VDo.repeat;Jn.replace=WDo.replace;Jn.snakeCase=ODo.snakeCase;Jn.split=PDo.split;Jn.startCase=MDo.startCase;Jn.startsWith=HDo.startsWith;Jn.template=bDn.template;Jn.templateSettings=bDn.templateSettings;Jn.toLower=YDo.toLower;Jn.toUpper=QDo.toUpper;Jn.trim=XDo.trim;Jn.trimEnd=JDo.trimEnd;Jn.trimStart=UDo.trimStart;Jn.truncate=KDo.truncate;Jn.unescape=jDo.unescape;Jn.upperCase=zDo.upperCase;Jn.upperFirst=qDo.upperFirst;Jn.words=$Do.words;Jn.cond=eko.cond;Jn.constant=tko.constant;Jn.defaultTo=rko.defaultTo;Jn.eq=nko.isEqualsSameValueZero;Jn.gt=iko.gt;Jn.gte=sko.gte;Jn.invoke=oko.invoke;Jn.iteratee=ako.iteratee;Jn.lt=cko.lt;Jn.lte=lko.lte;Jn.method=uko.method;Jn.methodOf=gko.methodOf;Jn.now=Ako.now;Jn.over=dko.over;Jn.overEvery=pko.overEvery;Jn.overSome=fko.overSome;Jn.stubArray=Iko.stubArray;Jn.stubFalse=hko.stubFalse;Jn.stubObject=mko.stubObject;Jn.stubString=Cko.stubString;Jn.stubTrue=_ko.stubTrue;Jn.times=yko.times;Jn.toArray=bko.toArray;Jn.toFinite=Eko.toFinite;Jn.toInteger=Sko.toInteger;Jn.toLength=vko.toLength;Jn.toNumber=Bko.toNumber;Jn.toPath=wko.toPath;Jn.toPlainObject=Tko.toPlainObject;Jn.toSafeInteger=Rko.toSafeInteger;Jn.toString=Nko.toString;Jn.uniqueId=Dko.uniqueId;Jn.default=kko.toolkit});var OO=H((exports,module)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.CachingStrategy=exports.DefaultStream=exports.AsyncActions=exports.BufferStream=void 0;exports.isTaggedYarnVersion=isTaggedYarnVersion;exports.plural=plural;exports.escapeRegExp=escapeRegExp;exports.overrideType=overrideType;exports.assertNever=assertNever;exports.validateEnum=validateEnum;exports.mapAndFilter=mapAndFilter;exports.mapAndFind=mapAndFind;exports.isIndexableObject=isIndexableObject;exports.allSettledSafe=allSettledSafe;exports.convertMapsToIndexableObjects=convertMapsToIndexableObjects;exports.getFactoryWithDefault=getFactoryWithDefault;exports.getArrayWithDefault=getArrayWithDefault;exports.getSetWithDefault=getSetWithDefault;exports.getMapWithDefault=getMapWithDefault;exports.releaseAfterUseAsync=releaseAfterUseAsync;exports.prettifyAsyncErrors=prettifyAsyncErrors;exports.prettifySyncErrors=prettifySyncErrors;exports.bufferStream=bufferStream;exports.makeDeferred=makeDeferred;exports.dynamicRequire=dynamicRequire;exports.sortMap=sortMap;exports.buildIgnorePattern=buildIgnorePattern;exports.replaceEnvVariables=replaceEnvVariables;exports.parseBoolean=parseBoolean;exports.parseOptionalBoolean=parseOptionalBoolean;exports.tryParseOptionalBoolean=tryParseOptionalBoolean;exports.isPathLike=isPathLike;exports.mergeIntoTarget=mergeIntoTarget;exports.toMerged=toMerged;exports.groupBy=groupBy;exports.parseInt=parseInt;exports.parseDuration=parseDuration;var tslib_1=(Wa(),vi(Va)),fslib_1=Io(),clipanion_1=(Rl(),vi(ng)),compat_1=WO(),micromatch_1=tslib_1.__importDefault(Tk()),p_limit_1=tslib_1.__importDefault(Ufe()),semver_1=tslib_1.__importDefault(jC()),stream_1=Et("stream");function isTaggedYarnVersion(e){return!!(semver_1.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9]+)?$/))}function plural(e,{one:t,more:r,zero:n=r}){return e===0?n:e===1?t:r}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(e){}function assertNever(e){throw new Error(`Assertion failed: Unexpected object '${e}'`)}function validateEnum(e,t){let r=Object.values(e);if(!r.includes(t))throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(t)} (expected one of ${r.map(n=>JSON.stringify(n)).join(", ")})`);return t}function mapAndFilter(e,t){let r=[];for(let n of e){let a=t(n);a!==mapAndFilterSkip&&r.push(a)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(e,t){for(let r of e){let n=t(r);if(n!==mapAndFindSkip)return n}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(e){return typeof e=="object"&&e!==null}async function allSettledSafe(e){let t=await Promise.allSettled(e),r=[];for(let n of t){if(n.status==="rejected")throw n.reason;r.push(n.value)}return r}function convertMapsToIndexableObjects(e){if(e instanceof Map&&(e=Object.fromEntries(e)),isIndexableObject(e))for(let t of Object.keys(e)){let r=e[t];isIndexableObject(r)&&(e[t]=convertMapsToIndexableObjects(r))}return e}function getFactoryWithDefault(e,t,r){let n=e.get(t);return typeof n>"u"&&e.set(t,n=r()),n}function getArrayWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}function getSetWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}function getMapWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}async function releaseAfterUseAsync(e,t){if(t==null)return await e();try{return await e()}finally{await t()}}async function prettifyAsyncErrors(e,t){try{return await e()}catch(r){throw r.message=t(r.message),r}}function prettifySyncErrors(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}async function bufferStream(e){return await new Promise((t,r)=>{let n=[];e.on("error",a=>{r(a)}),e.on("data",a=>{n.push(a)}),e.on("end",()=>{t(Buffer.concat(n))})})}var BufferStream=class extends stream_1.Transform{constructor(){super(...arguments),this.chunks=[]}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(t),n(null,null)}_flush(t){t(null,Buffer.concat(this.chunks))}};exports.BufferStream=BufferStream;function makeDeferred(){let e,t;return{promise:new Promise((n,a)=>{e=n,t=a}),resolve:e,reject:t}}var AsyncActions=class{constructor(t){this.deferred=new Map,this.promises=new Map,this.limit=(0,p_limit_1.default)(t)}set(t,r){let n=this.deferred.get(t);typeof n>"u"&&this.deferred.set(t,n=makeDeferred());let a=this.limit(()=>r());return this.promises.set(t,a),a.then(()=>{this.promises.get(t)===a&&n.resolve()},o=>{this.promises.get(t)===a&&n.reject(o)}),n.promise}reduce(t,r){let n=this.promises.get(t)??Promise.resolve();this.set(t,()=>r(n))}async wait(){await Promise.all(this.promises.values())}};exports.AsyncActions=AsyncActions;var DefaultStream=class extends stream_1.Transform{constructor(t=Buffer.alloc(0)){super(),this.active=!0,this.ifEmpty=t}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,n(null,t)}_flush(t){this.active&&this.ifEmpty.length>0?t(null,this.ifEmpty):t(null)}};exports.DefaultStream=DefaultStream;var realRequire=eval("require");function dynamicRequireNode(e){return realRequire(fslib_1.npath.fromPortablePath(e))}function dynamicRequireNoCache(path){let physicalPath=fslib_1.npath.fromPortablePath(path),currentCacheEntry=realRequire.cache[physicalPath];delete realRequire.cache[physicalPath];let result;try{result=dynamicRequireNode(physicalPath);let freshCacheEntry=realRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children?dynamicModule.children.indexOf(freshCacheEntry):-1;freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{realRequire.cache[physicalPath]=currentCacheEntry}return result}var dynamicRequireFsTimeCache=new Map;function dynamicRequireFsTime(e){let t=dynamicRequireFsTimeCache.get(e),r=fslib_1.xfs.statSync(e);if(t?.mtime===r.mtimeMs)return t.instance;let n=dynamicRequireNoCache(e);return dynamicRequireFsTimeCache.set(e,{mtime:r.mtimeMs,instance:n}),n}var CachingStrategy;(function(e){e[e.NoCache=0]="NoCache",e[e.FsTime=1]="FsTime",e[e.Node=2]="Node"})(CachingStrategy||(exports.CachingStrategy=CachingStrategy={}));function dynamicRequire(e,{cachingStrategy:t=CachingStrategy.Node}={}){switch(t){case CachingStrategy.NoCache:return dynamicRequireNoCache(e);case CachingStrategy.FsTime:return dynamicRequireFsTime(e);case CachingStrategy.Node:return dynamicRequireNode(e);default:throw new Error("Unsupported caching strategy")}}function sortMap(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function buildIgnorePattern(e){return e.length===0?null:e.map(t=>`(${micromatch_1.default.makeRe(t,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(e,{env:t}){let r="",n=0,a=0,o=e.matchAll(/\\(?[\\$}])|\$\{(?[a-zA-Z]\w*)(?:-|-|(?=\}))|(?\$\{)|\}/g),l=()=>{let A=a;for(let{0:f,index:I,groups:{variable:C}={}}of o)if(C)a++;else if(f==="}"&&--a0)throw new clipanion_1.UsageError(`Incomplete variable substitution in input: ${e}`);return r+e.slice(n)}function parseBoolean(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${e}" as a boolean`)}}function parseOptionalBoolean(e){return typeof e>"u"?e:parseBoolean(e)}function tryParseOptionalBoolean(e){try{return parseOptionalBoolean(e)}catch{return null}}function isPathLike(e){return!!(fslib_1.npath.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}function mergeIntoTarget(e,...t){let r=l=>({value:l}),n=r(e),a=t.map(l=>r(l)),{value:o}=(0,compat_1.mergeWith)(n,...a,(l,A)=>{if(Array.isArray(l)&&Array.isArray(A)){for(let f of A)l.find(I=>(0,compat_1.isEqual)(I,f))||l.push(f);return l}});return o}function toMerged(...e){return mergeIntoTarget({},...e)}function groupBy(e,t){let r=Object.create(null);for(let n of e){let a=n[t];r[a]??=[],r[a].push(n)}return r}function parseInt(e){return typeof e=="string"?Number.parseInt(e,10):e}var DURATION_UNITS={ms:1,s:1e3,m:60*1e3,h:60*60*1e3,d:24*60*60*1e3,w:7*24*60*60*1e3},DURATION_REGEXP=new RegExp(`^(?\\d*\\.?\\d+)(?${Object.keys(DURATION_UNITS).join("|")})?$`);function parseDuration(e,t){let r=DURATION_REGEXP.exec(e)?.groups;if(!r)throw new Error(`Couldn't parse "${e}" as a duration`);if(r.unit===void 0)return parseFloat(r.num);let n=DURATION_UNITS[r.unit];if(!n)throw new Error(`Invalid duration unit "${r.unit}"`);return parseFloat(r.num)*n/DURATION_UNITS[t]}});var cIe=H(Eoe=>{"use strict";Object.defineProperty(Eoe,"__esModule",{value:!0});Eoe.PackageExtensionStatus=Eoe.PackageExtensionType=Eoe.LinkType=void 0;var EDn;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(EDn||(Eoe.LinkType=EDn={}));var SDn;(function(e){e.Dependency="Dependency",e.PeerDependency="PeerDependency",e.PeerDependencyMeta="PeerDependencyMeta"})(SDn||(Eoe.PackageExtensionType=SDn={}));var vDn;(function(e){e.Inactive="inactive",e.Redundant="redundant",e.Active="active"})(vDn||(Eoe.PackageExtensionStatus=vDn={}))});var uM=H(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.LogLevel=Ou.supportsHyperlinks=Ou.supportsColor=Ou.Style=Ou.Type=Ou.stripAnsi=void 0;Ou.tuple=Lko;Ou.applyStyle=RDn;Ou.applyColor=rb;Ou.applyHyperlink=NDn;Ou.pretty=lIe;Ou.prettyList=Wko;Ou.json=DDn;Ou.jsonOrPretty=Oko;Ou.mark=Pko;Ou.prettyField=Mko;Ou.prettyTruncatedLocatorList=Hko;Ou.addLogFilterSupport=Yko;var Cve=(Wa(),vi(Va)),BDn=Io(),Hut=Cve.__importDefault(zK()),Put=Cve.__importDefault(Jfe()),xko=(Rl(),vi(ng)),Gko=Cve.__importDefault(Tk()),TDn=Cve.__importDefault(oM());Ou.stripAnsi=TDn.default;var Out=U9(),Fko=Cve.__importStar(OO()),GE=Cve.__importStar(fG()),mve=cIe();Ou.Type={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",STRING:"STRING",BOOLEAN:"BOOLEAN",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"};var Yut;(function(e){e[e.BOLD=2]="BOLD"})(Yut||(Ou.Style=Yut={}));var plr=Put.default.GITHUB_ACTIONS?{level:2}:Hut.default.supportsColor?{level:Hut.default.supportsColor.level}:{level:0};Ou.supportsColor=plr.level!==0;Ou.supportsHyperlinks=Ou.supportsColor&&!Put.default.GITHUB_ACTIONS&&!Put.default.CIRCLE&&!Put.default.GITLAB;var dlr=new Hut.default.Instance(plr),Zko=new Map([[Ou.Type.NO_HINT,null],[Ou.Type.NULL,["#a853b5",129]],[Ou.Type.SCOPE,["#d75f00",166]],[Ou.Type.NAME,["#d7875f",173]],[Ou.Type.RANGE,["#00afaf",37]],[Ou.Type.REFERENCE,["#87afff",111]],[Ou.Type.NUMBER,["#ffd700",220]],[Ou.Type.STRING,["#b4bd68",32]],[Ou.Type.BOOLEAN,["#faa023",209]],[Ou.Type.PATH,["#d75fd7",170]],[Ou.Type.URL,["#d75fd7",170]],[Ou.Type.ADDED,["#5faf00",70]],[Ou.Type.REMOVED,["#ff3131",160]],[Ou.Type.CODE,["#87afff",111]],[Ou.Type.SIZE,["#ffd700",220]]]),pG=e=>e;function wDn(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1024**r;)r-=1;let n=1024**r;return`${Math.floor(e*100/n)/100} ${t[r-1]}`}function Mut(e,t){if(Array.isArray(t))return t.length===0?rb(e,"[]",Ou.Type.CODE):rb(e,"[ ",Ou.Type.CODE)+t.map(r=>Mut(e,r)).join(", ")+rb(e," ]",Ou.Type.CODE);if(typeof t=="string")return rb(e,JSON.stringify(t),Ou.Type.STRING);if(typeof t=="number")return rb(e,JSON.stringify(t),Ou.Type.NUMBER);if(typeof t=="boolean")return rb(e,JSON.stringify(t),Ou.Type.BOOLEAN);if(t===null)return rb(e,"null",Ou.Type.NULL);if(typeof t=="object"&&Object.getPrototypeOf(t)===Object.prototype){let r=Object.entries(t);return r.length===0?rb(e,"{}",Ou.Type.CODE):rb(e,"{ ",Ou.Type.CODE)+r.map(([n,a])=>`${Mut(e,n)}: ${Mut(e,a)}`).join(", ")+rb(e," }",Ou.Type.CODE)}if(typeof t>"u")return rb(e,"undefined",Ou.Type.NULL);throw new Error("Assertion failed: The value doesn't seem to be a valid JSON object")}var Qut={[Ou.Type.ID]:pG({pretty:(e,t)=>typeof t=="number"?rb(e,`${t}`,Ou.Type.NUMBER):rb(e,t,Ou.Type.CODE),json:e=>e}),[Ou.Type.INSPECT]:pG({pretty:(e,t)=>Mut(e,t),json:e=>e}),[Ou.Type.NUMBER]:pG({pretty:(e,t)=>rb(e,`${t}`,Ou.Type.NUMBER),json:e=>e}),[Ou.Type.IDENT]:pG({pretty:(e,t)=>GE.prettyIdent(e,t),json:e=>GE.stringifyIdent(e)}),[Ou.Type.LOCATOR]:pG({pretty:(e,t)=>GE.prettyLocator(e,t),json:e=>GE.stringifyLocator(e)}),[Ou.Type.DESCRIPTOR]:pG({pretty:(e,t)=>GE.prettyDescriptor(e,t),json:e=>GE.stringifyDescriptor(e)}),[Ou.Type.RESOLUTION]:pG({pretty:(e,{descriptor:t,locator:r})=>GE.prettyResolution(e,t,r),json:({descriptor:e,locator:t})=>({descriptor:GE.stringifyDescriptor(e),locator:t!==null?GE.stringifyLocator(t):null})}),[Ou.Type.DEPENDENT]:pG({pretty:(e,{locator:t,descriptor:r})=>GE.prettyDependent(e,t,r),json:({locator:e,descriptor:t})=>({locator:GE.stringifyLocator(e),descriptor:GE.stringifyDescriptor(t)})}),[Ou.Type.PACKAGE_EXTENSION]:pG({pretty:(e,t)=>{switch(t.type){case mve.PackageExtensionType.Dependency:return`${GE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${rb(e,"dependencies",Ou.Type.CODE)} \u27A4 ${GE.prettyIdent(e,t.descriptor)}`;case mve.PackageExtensionType.PeerDependency:return`${GE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${rb(e,"peerDependencies",Ou.Type.CODE)} \u27A4 ${GE.prettyIdent(e,t.descriptor)}`;case mve.PackageExtensionType.PeerDependencyMeta:return`${GE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${rb(e,"peerDependenciesMeta",Ou.Type.CODE)} \u27A4 ${GE.prettyIdent(e,GE.parseIdent(t.selector))} \u27A4 ${rb(e,t.key,Ou.Type.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}},json:e=>{switch(e.type){case mve.PackageExtensionType.Dependency:return`${GE.stringifyIdent(e.parentDescriptor)} > ${GE.stringifyIdent(e.descriptor)}`;case mve.PackageExtensionType.PeerDependency:return`${GE.stringifyIdent(e.parentDescriptor)} >> ${GE.stringifyIdent(e.descriptor)}`;case mve.PackageExtensionType.PeerDependencyMeta:return`${GE.stringifyIdent(e.parentDescriptor)} >> ${e.selector} / ${e.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}}}),[Ou.Type.SETTING]:pG({pretty:(e,t)=>(e.get(t),NDn(e,rb(e,t,Ou.Type.CODE),`https://yarnpkg.com/configuration/yarnrc#${t}`)),json:e=>e}),[Ou.Type.DURATION]:pG({pretty:(e,t)=>{if(t>1e3*60){let r=Math.floor(t/1e3/60),n=Math.ceil((t-r*60*1e3)/1e3);return n===0?`${r}m`:`${r}m ${n}s`}else{let r=Math.floor(t/1e3),n=t-r*1e3;return n===0?`${r}s`:`${r}s ${n}ms`}},json:e=>e}),[Ou.Type.SIZE]:pG({pretty:(e,t)=>rb(e,wDn(t),Ou.Type.NUMBER),json:e=>e}),[Ou.Type.SIZE_DIFF]:pG({pretty:(e,t)=>{let r=t>=0?"+":"-",n=r==="+"?Ou.Type.REMOVED:Ou.Type.ADDED;return rb(e,`${r} ${wDn(Math.max(Math.abs(t),1))}`,n)},json:e=>e}),[Ou.Type.PATH]:pG({pretty:(e,t)=>rb(e,BDn.npath.fromPortablePath(t),Ou.Type.PATH),json:e=>BDn.npath.fromPortablePath(e)}),[Ou.Type.MARKDOWN]:pG({pretty:(e,{text:t,format:r,paragraphs:n})=>(0,xko.formatMarkdownish)(t,{format:r,paragraphs:n}),json:({text:e})=>e}),[Ou.Type.MARKDOWN_INLINE]:pG({pretty:(e,t)=>(t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(r,n,a)=>lIe(e,n+a+n,Ou.Type.CODE)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,n,a)=>RDn(e,a,Yut.BOLD)),t),json:e=>e})};function Lko(e,t){return[t,e]}function RDn(e,t,r){return e.get("enableColors")&&r&Yut.BOLD&&(t=Hut.default.bold(t)),t}function rb(e,t,r){if(!e.get("enableColors"))return t;let n=Zko.get(r);if(n===null)return t;let a=typeof n>"u"?r:plr.level>=3?n[0]:n[1],o=typeof a=="number"?dlr.ansi256(a):a.startsWith("#")?dlr.hex(a):dlr[a];if(typeof o!="function")throw new Error(`Invalid format type ${a}`);return o(t)}var Vko=!!process.env.KONSOLE_VERSION;function NDn(e,t,r){return e.get("enableHyperlinks")?Vko?`\x1B]8;;${r}\x1B\\${t}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${t}\x1B]8;;\x07`:t}function lIe(e,t,r){if(t===null)return rb(e,"null",Ou.Type.NULL);if(Object.hasOwn(Qut,r))return Qut[r].pretty(e,t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return rb(e,t,r)}function Wko(e,t,r,{separator:n=", "}={}){return[...t].map(a=>lIe(e,a,r)).join(n)}function DDn(e,t){if(e===null)return null;if(Object.hasOwn(Qut,t))return Fko.overrideType(t),Qut[t].json(e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return e}function Oko(e,t,[r,n]){return e?DDn(r,n):lIe(t,r,n)}function Pko(e){return{Check:rb(e,"\u2713","green"),Cross:rb(e,"\u2718","red"),Question:rb(e,"?","cyan")}}function Mko(e,{label:t,value:[r,n]}){return`${lIe(e,t,Ou.Type.CODE)}: ${lIe(e,r,n)}`}function Hko(e,t,r){let n=[],a=[...t],o=r;for(;a.length>0;){let I=a[0],C=`${GE.prettyLocator(e,I)}, `,b=GE.prettyLocatorNoColors(I).length+2;if(n.length>0&&oI).join("").slice(0,-2);let l="X".repeat(a.length.toString().length),A=`and ${l} more.`,f=a.length;for(;n.length>1&&oI).join(""),A.replace(l,lIe(e,f,Ou.Type.NUMBER))].join("")}var Soe;(function(e){e.Error="error",e.Warning="warning",e.Info="info",e.Discard="discard"})(Soe||(Ou.LogLevel=Soe={}));function Yko(e,{configuration:t}){let r=t.get("logFilters"),n=new Map,a=new Map,o=[];for(let b of r){let E=b.get("level");if(typeof E>"u")continue;let N=b.get("code");typeof N<"u"&&n.set(N,E);let B=b.get("text");typeof B<"u"&&a.set(B,E);let F=b.get("pattern");typeof F<"u"&&o.push([Gko.default.matcher(F,{contains:!0}),E])}o.reverse();let l=(b,E,N)=>{if(b===null||b===Out.MessageName.UNNAMED)return N;let B=a.size>0||o.length>0?(0,TDn.default)(E):E;if(a.size>0){let F=a.get(B);if(typeof F<"u")return F??N}if(o.length>0){for(let[F,Q]of o)if(F(B))return Q??N}if(n.size>0){let F=n.get((0,Out.stringifyMessageName)(b));if(typeof F<"u")return F??N}return N},A=e.reportInfo,f=e.reportWarning,I=e.reportError,C=function(b,E,N,B){switch(l(E,N,B)){case Soe.Info:A.call(b,E,N);break;case Soe.Warning:f.call(b,E??Out.MessageName.UNNAMED,N);break;case Soe.Error:I.call(b,E??Out.MessageName.UNNAMED,N);break}};e.reportInfo=function(...b){return C(this,...b,Soe.Info)},e.reportWarning=function(...b){return C(this,...b,Soe.Warning)},e.reportError=function(...b){return C(this,...b,Soe.Error)}}});var kDn=H(_ve=>{"use strict";Object.defineProperty(_ve,"__esModule",{value:!0});_ve.splitWhen=_ve.flatten=void 0;function Qko(e){return e.reduce((t,r)=>[].concat(t,r),[])}_ve.flatten=Qko;function Xko(e,t){let r=[[]],n=0;for(let a of e)t(a)?(n++,r[n]=[]):r[n].push(a);return r}_ve.splitWhen=Xko});var xDn=H(Xut=>{"use strict";Object.defineProperty(Xut,"__esModule",{value:!0});Xut.isEnoentCodeError=void 0;function Jko(e){return e.code==="ENOENT"}Xut.isEnoentCodeError=Jko});var GDn=H(Jut=>{"use strict";Object.defineProperty(Jut,"__esModule",{value:!0});Jut.createDirentFromStats=void 0;var flr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function Uko(e,t){return new flr(e,t)}Jut.createDirentFromStats=Uko});var VDn=H(sT=>{"use strict";Object.defineProperty(sT,"__esModule",{value:!0});sT.convertPosixPathToPattern=sT.convertWindowsPathToPattern=sT.convertPathToPattern=sT.escapePosixPath=sT.escapeWindowsPath=sT.escape=sT.removeLeadingDotSegment=sT.makeAbsolute=sT.unixify=void 0;var Kko=Et("os"),jko=Et("path"),FDn=Kko.platform()==="win32",zko=2,qko=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,$ko=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,exo=/^\\\\([.?])/,txo=/\\(?![!()+@[\]{}])/g;function rxo(e){return e.replace(/\\/g,"/")}sT.unixify=rxo;function nxo(e,t){return jko.resolve(e,t)}sT.makeAbsolute=nxo;function ixo(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t==="\\")return e.slice(zko)}return e}sT.removeLeadingDotSegment=ixo;sT.escape=FDn?Ilr:hlr;function Ilr(e){return e.replace($ko,"\\$2")}sT.escapeWindowsPath=Ilr;function hlr(e){return e.replace(qko,"\\$2")}sT.escapePosixPath=hlr;sT.convertPathToPattern=FDn?ZDn:LDn;function ZDn(e){return Ilr(e).replace(exo,"//$1").replace(txo,"/")}sT.convertWindowsPathToPattern=ZDn;function LDn(e){return hlr(e)}sT.convertPosixPathToPattern=LDn});var ODn=H((sUl,WDn)=>{WDn.exports=function(t){if(typeof t!="string"||t==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(t);){if(r[2])return!0;t=t.slice(r.index+r[0].length)}return!1}});var HDn=H((oUl,MDn)=>{var sxo=ODn(),PDn={"{":"}","(":")","[":"]"},oxo=function(e){if(e[0]==="!")return!0;for(var t=0,r=-2,n=-2,a=-2,o=-2,l=-2;tt&&(l===-1||l>n||(l=e.indexOf("\\",t),l===-1||l>n)))||a!==-1&&e[t]==="{"&&e[t+1]!=="}"&&(a=e.indexOf("}",t),a>t&&(l=e.indexOf("\\",t),l===-1||l>a))||o!==-1&&e[t]==="("&&e[t+1]==="?"&&/[:!=]/.test(e[t+2])&&e[t+3]!==")"&&(o=e.indexOf(")",t),o>t&&(l=e.indexOf("\\",t),l===-1||l>o))||r!==-1&&e[t]==="("&&e[t+1]!=="|"&&(rr&&(l=e.indexOf("\\",r),l===-1||l>o))))return!0;if(e[t]==="\\"){var A=e[t+1];t+=2;var f=PDn[A];if(f){var I=e.indexOf(f,t);I!==-1&&(t=I+1)}if(e[t]==="!")return!0}else t++}return!1},axo=function(e){if(e[0]==="!")return!0;for(var t=0;t{"use strict";var cxo=HDn(),lxo=Et("path").posix.dirname,uxo=Et("os").platform()==="win32",mlr="/",gxo=/\\/g,Axo=/[\{\[].*[\}\]]$/,dxo=/(^|[^\\])([\{\[]|\([^\)]+$)/,pxo=/\\([\!\*\?\|\[\]\(\)\{\}])/g;YDn.exports=function(t,r){var n=Object.assign({flipBackslashes:!0},r);n.flipBackslashes&&uxo&&t.indexOf(mlr)<0&&(t=t.replace(gxo,mlr)),Axo.test(t)&&(t+=mlr),t+="a";do t=lxo(t);while(cxo(t)||dxo.test(t));return t.replace(pxo,"$1")}});var $Dn=H(cI=>{"use strict";Object.defineProperty(cI,"__esModule",{value:!0});cI.removeDuplicateSlashes=cI.matchAny=cI.convertPatternsToRe=cI.makeRe=cI.getPatternParts=cI.expandBraceExpansion=cI.expandPatternsWithBraceExpansion=cI.isAffectDepthOfReadingPattern=cI.endsWithSlashGlobStar=cI.hasGlobStar=cI.getBaseDirectory=cI.isPatternRelatedToParentDirectory=cI.getPatternsOutsideCurrentDirectory=cI.getPatternsInsideCurrentDirectory=cI.getPositivePatterns=cI.getNegativePatterns=cI.isPositivePattern=cI.isNegativePattern=cI.convertToNegativePattern=cI.convertToPositivePattern=cI.isDynamicPattern=cI.isStaticPattern=void 0;var fxo=Et("path"),Ixo=QDn(),Clr=Tk(),XDn="**",hxo="\\",mxo=/[*?]|^!/,Cxo=/\[[^[]*]/,_xo=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,yxo=/[!*+?@]\([^(]*\)/,bxo=/,|\.\./,Exo=/(?!^)\/{2,}/g;function JDn(e,t={}){return!UDn(e,t)}cI.isStaticPattern=JDn;function UDn(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.includes(hxo)||mxo.test(e)||Cxo.test(e)||_xo.test(e)||t.extglob!==!1&&yxo.test(e)||t.braceExpansion!==!1&&Sxo(e))}cI.isDynamicPattern=UDn;function Sxo(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf("}",t+1);if(r===-1)return!1;let n=e.slice(t,r);return bxo.test(n)}function vxo(e){return Uut(e)?e.slice(1):e}cI.convertToPositivePattern=vxo;function Bxo(e){return"!"+e}cI.convertToNegativePattern=Bxo;function Uut(e){return e.startsWith("!")&&e[1]!=="("}cI.isNegativePattern=Uut;function KDn(e){return!Uut(e)}cI.isPositivePattern=KDn;function wxo(e){return e.filter(Uut)}cI.getNegativePatterns=wxo;function Txo(e){return e.filter(KDn)}cI.getPositivePatterns=Txo;function Rxo(e){return e.filter(t=>!_lr(t))}cI.getPatternsInsideCurrentDirectory=Rxo;function Nxo(e){return e.filter(_lr)}cI.getPatternsOutsideCurrentDirectory=Nxo;function _lr(e){return e.startsWith("..")||e.startsWith("./..")}cI.isPatternRelatedToParentDirectory=_lr;function Dxo(e){return Ixo(e,{flipBackslashes:!1})}cI.getBaseDirectory=Dxo;function kxo(e){return e.includes(XDn)}cI.hasGlobStar=kxo;function jDn(e){return e.endsWith("/"+XDn)}cI.endsWithSlashGlobStar=jDn;function xxo(e){let t=fxo.basename(e);return jDn(e)||JDn(t)}cI.isAffectDepthOfReadingPattern=xxo;function Gxo(e){return e.reduce((t,r)=>t.concat(zDn(r)),[])}cI.expandPatternsWithBraceExpansion=Gxo;function zDn(e){let t=Clr.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0});return t.sort((r,n)=>r.length-n.length),t.filter(r=>r!=="")}cI.expandBraceExpansion=zDn;function Fxo(e,t){let{parts:r}=Clr.scan(e,Object.assign(Object.assign({},t),{parts:!0}));return r.length===0&&(r=[e]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}cI.getPatternParts=Fxo;function qDn(e,t){return Clr.makeRe(e,t)}cI.makeRe=qDn;function Zxo(e,t){return e.map(r=>qDn(r,t))}cI.convertPatternsToRe=Zxo;function Lxo(e,t){return t.some(r=>r.test(e))}cI.matchAny=Lxo;function Vxo(e){return e.replace(Exo,"/")}cI.removeDuplicateSlashes=Vxo});var ylr=H((lUl,rkn)=>{"use strict";var Wxo=Et("stream"),ekn=Wxo.PassThrough,Oxo=Array.prototype.slice;rkn.exports=Pxo;function Pxo(){let e=[],t=Oxo.call(arguments),r=!1,n=t[t.length-1];n&&!Array.isArray(n)&&n.pipe==null?t.pop():n={};let a=n.end!==!1,o=n.pipeError===!0;n.objectMode==null&&(n.objectMode=!0),n.highWaterMark==null&&(n.highWaterMark=64*1024);let l=ekn(n);function A(){for(let C=0,b=arguments.length;C0||(r=!1,f())}function N(B){function F(){B.removeListener("merge2UnpipeEnd",F),B.removeListener("end",F),o&&B.removeListener("error",Q),E()}function Q(J){l.emit("error",J)}if(B._readableState.endEmitted)return E();B.on("merge2UnpipeEnd",F),B.on("end",F),o&&B.on("error",Q),B.pipe(l,{end:!1}),B.resume()}for(let B=0;B{"use strict";Object.defineProperty(Kut,"__esModule",{value:!0});Kut.merge=void 0;var Mxo=ylr();function Hxo(e){let t=Mxo(e);return e.forEach(r=>{r.once("error",n=>t.emit("error",n))}),t.once("close",()=>nkn(e)),t.once("end",()=>nkn(e)),t}Kut.merge=Hxo;function nkn(e){e.forEach(t=>t.emit("close"))}});var skn=H(yve=>{"use strict";Object.defineProperty(yve,"__esModule",{value:!0});yve.isEmpty=yve.isString=void 0;function Yxo(e){return typeof e=="string"}yve.isString=Yxo;function Qxo(e){return e===""}yve.isEmpty=Qxo});var I$=H(IG=>{"use strict";Object.defineProperty(IG,"__esModule",{value:!0});IG.string=IG.stream=IG.pattern=IG.path=IG.fs=IG.errno=IG.array=void 0;var Xxo=kDn();IG.array=Xxo;var Jxo=xDn();IG.errno=Jxo;var Uxo=GDn();IG.fs=Uxo;var Kxo=VDn();IG.path=Kxo;var jxo=$Dn();IG.pattern=jxo;var zxo=ikn();IG.stream=zxo;var qxo=skn();IG.string=qxo});var lkn=H(hG=>{"use strict";Object.defineProperty(hG,"__esModule",{value:!0});hG.convertPatternGroupToTask=hG.convertPatternGroupsToTasks=hG.groupPatternsByBaseDirectory=hG.getNegativePatternsAsPositive=hG.getPositivePatterns=hG.convertPatternsToTasks=hG.generate=void 0;var IX=I$();function $xo(e,t){let r=okn(e,t),n=okn(t.ignore,t),a=akn(r),o=ckn(r,n),l=a.filter(C=>IX.pattern.isStaticPattern(C,t)),A=a.filter(C=>IX.pattern.isDynamicPattern(C,t)),f=blr(l,o,!1),I=blr(A,o,!0);return f.concat(I)}hG.generate=$xo;function okn(e,t){let r=e;return t.braceExpansion&&(r=IX.pattern.expandPatternsWithBraceExpansion(r)),t.baseNameMatch&&(r=r.map(n=>n.includes("/")?n:`**/${n}`)),r.map(n=>IX.pattern.removeDuplicateSlashes(n))}function blr(e,t,r){let n=[],a=IX.pattern.getPatternsOutsideCurrentDirectory(e),o=IX.pattern.getPatternsInsideCurrentDirectory(e),l=Elr(a),A=Elr(o);return n.push(...Slr(l,t,r)),"."in A?n.push(vlr(".",o,t,r)):n.push(...Slr(A,t,r)),n}hG.convertPatternsToTasks=blr;function akn(e){return IX.pattern.getPositivePatterns(e)}hG.getPositivePatterns=akn;function ckn(e,t){return IX.pattern.getNegativePatterns(e).concat(t).map(IX.pattern.convertToPositivePattern)}hG.getNegativePatternsAsPositive=ckn;function Elr(e){let t={};return e.reduce((r,n)=>{let a=IX.pattern.getBaseDirectory(n);return a in r?r[a].push(n):r[a]=[n],r},t)}hG.groupPatternsByBaseDirectory=Elr;function Slr(e,t,r){return Object.keys(e).map(n=>vlr(n,e[n],t,r))}hG.convertPatternGroupsToTasks=Slr;function vlr(e,t,r,n){return{dynamic:n,positive:t,negative:r,base:e,patterns:[].concat(t,r.map(IX.pattern.convertToNegativePattern))}}hG.convertPatternGroupToTask=vlr});var gkn=H(jut=>{"use strict";Object.defineProperty(jut,"__esModule",{value:!0});jut.read=void 0;function eGo(e,t,r){t.fs.lstat(e,(n,a)=>{if(n!==null){ukn(r,n);return}if(!a.isSymbolicLink()||!t.followSymbolicLink){Blr(r,a);return}t.fs.stat(e,(o,l)=>{if(o!==null){if(t.throwErrorOnBrokenSymbolicLink){ukn(r,o);return}Blr(r,a);return}t.markSymbolicLink&&(l.isSymbolicLink=()=>!0),Blr(r,l)})})}jut.read=eGo;function ukn(e,t){e(t)}function Blr(e,t){e(null,t)}});var Akn=H(zut=>{"use strict";Object.defineProperty(zut,"__esModule",{value:!0});zut.read=void 0;function tGo(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.followSymbolicLink)return r;try{let n=t.fs.statSync(e);return t.markSymbolicLink&&(n.isSymbolicLink=()=>!0),n}catch(n){if(!t.throwErrorOnBrokenSymbolicLink)return r;throw n}}zut.read=tGo});var dkn=H(voe=>{"use strict";Object.defineProperty(voe,"__esModule",{value:!0});voe.createFileSystemAdapter=voe.FILE_SYSTEM_ADAPTER=void 0;var qut=Et("fs");voe.FILE_SYSTEM_ADAPTER={lstat:qut.lstat,stat:qut.stat,lstatSync:qut.lstatSync,statSync:qut.statSync};function rGo(e){return e===void 0?voe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},voe.FILE_SYSTEM_ADAPTER),e)}voe.createFileSystemAdapter=rGo});var pkn=H(Tlr=>{"use strict";Object.defineProperty(Tlr,"__esModule",{value:!0});var nGo=dkn(),wlr=class{constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=nGo.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(t,r){return t??r}};Tlr.default=wlr});var uIe=H(Boe=>{"use strict";Object.defineProperty(Boe,"__esModule",{value:!0});Boe.statSync=Boe.stat=Boe.Settings=void 0;var fkn=gkn(),iGo=Akn(),Rlr=pkn();Boe.Settings=Rlr.default;function sGo(e,t,r){if(typeof t=="function"){fkn.read(e,Nlr(),t);return}fkn.read(e,Nlr(t),r)}Boe.stat=sGo;function oGo(e,t){let r=Nlr(t);return iGo.read(e,r)}Boe.statSync=oGo;function Nlr(e={}){return e instanceof Rlr.default?e:new Rlr.default(e)}});var mkn=H((CUl,hkn)=>{var Ikn;hkn.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):e=>(Ikn||(Ikn=Promise.resolve())).then(e).catch(t=>setTimeout(()=>{throw t},0))});var _kn=H((_Ul,Ckn)=>{Ckn.exports=cGo;var aGo=mkn();function cGo(e,t){let r,n,a,o=!0;Array.isArray(e)?(r=[],n=e.length):(a=Object.keys(e),r={},n=a.length);function l(f){function I(){t&&t(f,r),t=null}o?aGo(I):I()}function A(f,I,C){r[f]=C,(--n===0||I)&&l(I)}n?a?a.forEach(function(f){e[f](function(I,C){A(f,I,C)})}):e.forEach(function(f,I){f(function(C,b){A(I,C,b)})}):l(null),o=!1}});var Dlr=H(egt=>{"use strict";Object.defineProperty(egt,"__esModule",{value:!0});egt.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var $ut=process.versions.node.split(".");if($ut[0]===void 0||$ut[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var ykn=Number.parseInt($ut[0],10),lGo=Number.parseInt($ut[1],10),bkn=10,uGo=10,gGo=ykn>bkn,AGo=ykn===bkn&&lGo>=uGo;egt.IS_SUPPORT_READDIR_WITH_FILE_TYPES=gGo||AGo});var Ekn=H(tgt=>{"use strict";Object.defineProperty(tgt,"__esModule",{value:!0});tgt.createDirentFromStats=void 0;var klr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function dGo(e,t){return new klr(e,t)}tgt.createDirentFromStats=dGo});var xlr=H(rgt=>{"use strict";Object.defineProperty(rgt,"__esModule",{value:!0});rgt.fs=void 0;var pGo=Ekn();rgt.fs=pGo});var Glr=H(ngt=>{"use strict";Object.defineProperty(ngt,"__esModule",{value:!0});ngt.joinPathSegments=void 0;function fGo(e,t,r){return e.endsWith(r)?e+t:e+r+t}ngt.joinPathSegments=fGo});var Rkn=H(woe=>{"use strict";Object.defineProperty(woe,"__esModule",{value:!0});woe.readdir=woe.readdirWithFileTypes=woe.read=void 0;var IGo=uIe(),Skn=_kn(),hGo=Dlr(),vkn=xlr(),Bkn=Glr();function mGo(e,t,r){if(!t.stats&&hGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES){wkn(e,t,r);return}Tkn(e,t,r)}woe.read=mGo;function wkn(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(n,a)=>{if(n!==null){igt(r,n);return}let o=a.map(A=>({dirent:A,name:A.name,path:Bkn.joinPathSegments(e,A.name,t.pathSegmentSeparator)}));if(!t.followSymbolicLinks){Flr(r,o);return}let l=o.map(A=>CGo(A,t));Skn(l,(A,f)=>{if(A!==null){igt(r,A);return}Flr(r,f)})})}woe.readdirWithFileTypes=wkn;function CGo(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);return}t.fs.stat(e.path,(n,a)=>{if(n!==null){if(t.throwErrorOnBrokenSymbolicLink){r(n);return}r(null,e);return}e.dirent=vkn.fs.createDirentFromStats(e.name,a),r(null,e)})}}function Tkn(e,t,r){t.fs.readdir(e,(n,a)=>{if(n!==null){igt(r,n);return}let o=a.map(l=>{let A=Bkn.joinPathSegments(e,l,t.pathSegmentSeparator);return f=>{IGo.stat(A,t.fsStatSettings,(I,C)=>{if(I!==null){f(I);return}let b={name:l,path:A,dirent:vkn.fs.createDirentFromStats(l,C)};t.stats&&(b.stats=C),f(null,b)})}});Skn(o,(l,A)=>{if(l!==null){igt(r,l);return}Flr(r,A)})})}woe.readdir=Tkn;function igt(e,t){e(t)}function Flr(e,t){e(null,t)}});var Gkn=H(Toe=>{"use strict";Object.defineProperty(Toe,"__esModule",{value:!0});Toe.readdir=Toe.readdirWithFileTypes=Toe.read=void 0;var _Go=uIe(),yGo=Dlr(),Nkn=xlr(),Dkn=Glr();function bGo(e,t){return!t.stats&&yGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES?kkn(e,t):xkn(e,t)}Toe.read=bGo;function kkn(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(n=>{let a={dirent:n,name:n.name,path:Dkn.joinPathSegments(e,n.name,t.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&t.followSymbolicLinks)try{let o=t.fs.statSync(a.path);a.dirent=Nkn.fs.createDirentFromStats(a.name,o)}catch(o){if(t.throwErrorOnBrokenSymbolicLink)throw o}return a})}Toe.readdirWithFileTypes=kkn;function xkn(e,t){return t.fs.readdirSync(e).map(n=>{let a=Dkn.joinPathSegments(e,n,t.pathSegmentSeparator),o=_Go.statSync(a,t.fsStatSettings),l={name:n,path:a,dirent:Nkn.fs.createDirentFromStats(n,o)};return t.stats&&(l.stats=o),l})}Toe.readdir=xkn});var Fkn=H(Roe=>{"use strict";Object.defineProperty(Roe,"__esModule",{value:!0});Roe.createFileSystemAdapter=Roe.FILE_SYSTEM_ADAPTER=void 0;var bve=Et("fs");Roe.FILE_SYSTEM_ADAPTER={lstat:bve.lstat,stat:bve.stat,lstatSync:bve.lstatSync,statSync:bve.statSync,readdir:bve.readdir,readdirSync:bve.readdirSync};function EGo(e){return e===void 0?Roe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Roe.FILE_SYSTEM_ADAPTER),e)}Roe.createFileSystemAdapter=EGo});var Zkn=H(Llr=>{"use strict";Object.defineProperty(Llr,"__esModule",{value:!0});var SGo=Et("path"),vGo=uIe(),BGo=Fkn(),Zlr=class{constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=BGo.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,SGo.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new vGo.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};Llr.default=Zlr});var sgt=H(Noe=>{"use strict";Object.defineProperty(Noe,"__esModule",{value:!0});Noe.Settings=Noe.scandirSync=Noe.scandir=void 0;var Lkn=Rkn(),wGo=Gkn(),Vlr=Zkn();Noe.Settings=Vlr.default;function TGo(e,t,r){if(typeof t=="function"){Lkn.read(e,Wlr(),t);return}Lkn.read(e,Wlr(t),r)}Noe.scandir=TGo;function RGo(e,t){let r=Wlr(t);return wGo.read(e,r)}Noe.scandirSync=RGo;function Wlr(e={}){return e instanceof Vlr.default?e:new Vlr.default(e)}});var Wkn=H((NUl,Vkn)=>{"use strict";function NGo(e){var t=new e,r=t;function n(){var o=t;return o.next?t=o.next:(t=new e,r=t),o.next=null,o}function a(o){r.next=o,r=o}return{get:n,release:a}}Vkn.exports=NGo});var Pkn=H((DUl,Olr)=>{"use strict";var DGo=Wkn();function Okn(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=DGo(kGo),a=null,o=null,l=0,A=null,f={push:F,drain:gM,saturated:gM,pause:C,paused:!1,get concurrency(){return r},set concurrency(fe){if(!(fe>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=fe,!f.paused)for(;a&&l=r||f.paused?o?(o.next=de,o=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function Q(fe,ue){var de=n.get();de.context=e,de.release=J,de.value=fe,de.callback=ue||gM,de.errorHandler=A,l>=r||f.paused?a?(de.next=a,a=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function J(fe){fe&&n.release(fe);var ue=a;ue&&l<=r?f.paused?l--:(o===a&&(o=null),a=ue.next,ue.next=null,t.call(e,ue.value,ue.worked),o===null&&f.empty()):--l===0&&f.drain()}function ae(){a=null,o=null,f.drain=gM}function ne(){a=null,o=null,f.drain(),f.drain=gM}function ce(fe){A=fe}}function gM(){}function kGo(){this.value=null,this.callback=gM,this.next=null,this.release=gM,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var a=e.callback,o=e.errorHandler,l=e.value;e.value=null,e.callback=gM,e.errorHandler&&o(r,l),a.call(e.context,r,n),e.release(e)}}function xGo(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(C,b){t.call(this,C).then(function(E){b(null,E)},b)}var a=Okn(e,n,r),o=a.push,l=a.unshift;return a.push=A,a.unshift=f,a.drained=I,a;function A(C){var b=new Promise(function(E,N){o(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(gM),b}function f(C){var b=new Promise(function(E,N){l(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(gM),b}function I(){if(a.idle())return new Promise(function(E){E()});var C=a.drain,b=new Promise(function(E){a.drain=function(){C(),E()}});return b}}Olr.exports=Okn;Olr.exports.promise=xGo});var ogt=H(i8=>{"use strict";Object.defineProperty(i8,"__esModule",{value:!0});i8.joinPathSegments=i8.replacePathSegmentSeparator=i8.isAppliedFilter=i8.isFatalError=void 0;function GGo(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}i8.isFatalError=GGo;function FGo(e,t){return e===null||e(t)}i8.isAppliedFilter=FGo;function ZGo(e,t){return e.split(/[/\\]/).join(t)}i8.replacePathSegmentSeparator=ZGo;function LGo(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}i8.joinPathSegments=LGo});var Hlr=H(Mlr=>{"use strict";Object.defineProperty(Mlr,"__esModule",{value:!0});var VGo=ogt(),Plr=class{constructor(t,r){this._root=t,this._settings=r,this._root=VGo.replacePathSegmentSeparator(t,r.pathSegmentSeparator)}};Mlr.default=Plr});var Xlr=H(Qlr=>{"use strict";Object.defineProperty(Qlr,"__esModule",{value:!0});var WGo=Et("events"),OGo=sgt(),PGo=Pkn(),agt=ogt(),MGo=Hlr(),Ylr=class extends MGo.default{constructor(t,r){super(t,r),this._settings=r,this._scandir=OGo.scandir,this._emitter=new WGo.EventEmitter,this._queue=PGo(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(t){this._emitter.on("entry",t)}onError(t){this._emitter.once("error",t)}onEnd(t){this._emitter.once("end",t)}_pushToQueue(t,r){let n={directory:t,base:r};this._queue.push(n,a=>{a!==null&&this._handleError(a)})}_worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,(n,a)=>{if(n!==null){r(n,void 0);return}for(let o of a)this._handleEntry(o,t.base);r(null,void 0)})}_handleError(t){this._isDestroyed||!agt.isFatalError(this._settings,t)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",t))}_handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let n=t.path;r!==void 0&&(t.path=agt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),agt.isAppliedFilter(this._settings.entryFilter,t)&&this._emitEntry(t),t.dirent.isDirectory()&&agt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_emitEntry(t){this._emitter.emit("entry",t)}};Qlr.default=Ylr});var Mkn=H(Ulr=>{"use strict";Object.defineProperty(Ulr,"__esModule",{value:!0});var HGo=Xlr(),Jlr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new HGo.default(this._root,this._settings),this._storage=[]}read(t){this._reader.onError(r=>{YGo(t,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{QGo(t,this._storage)}),this._reader.read()}};Ulr.default=Jlr;function YGo(e,t){e(t)}function QGo(e,t){e(null,t)}});var Hkn=H(jlr=>{"use strict";Object.defineProperty(jlr,"__esModule",{value:!0});var XGo=Et("stream"),JGo=Xlr(),Klr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new JGo.default(this._root,this._settings),this._stream=new XGo.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),this._reader.onEntry(t=>{this._stream.push(t)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};jlr.default=Klr});var Ykn=H(qlr=>{"use strict";Object.defineProperty(qlr,"__esModule",{value:!0});var UGo=sgt(),cgt=ogt(),KGo=Hlr(),zlr=class extends KGo.default{constructor(){super(...arguments),this._scandir=UGo.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(t,r){this._queue.add({directory:t,base:r})}_handleQueue(){for(let t of this._queue.values())this._handleDirectory(t.directory,t.base)}_handleDirectory(t,r){try{let n=this._scandir(t,this._settings.fsScandirSettings);for(let a of n)this._handleEntry(a,r)}catch(n){this._handleError(n)}}_handleError(t){if(cgt.isFatalError(this._settings,t))throw t}_handleEntry(t,r){let n=t.path;r!==void 0&&(t.path=cgt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),cgt.isAppliedFilter(this._settings.entryFilter,t)&&this._pushToStorage(t),t.dirent.isDirectory()&&cgt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_pushToStorage(t){this._storage.push(t)}};qlr.default=zlr});var Qkn=H(eur=>{"use strict";Object.defineProperty(eur,"__esModule",{value:!0});var jGo=Ykn(),$lr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new jGo.default(this._root,this._settings)}read(){return this._reader.read()}};eur.default=$lr});var Xkn=H(rur=>{"use strict";Object.defineProperty(rur,"__esModule",{value:!0});var zGo=Et("path"),qGo=sgt(),tur=class{constructor(t={}){this._options=t,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,zGo.sep),this.fsScandirSettings=new qGo.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};rur.default=tur});var ugt=H(s8=>{"use strict";Object.defineProperty(s8,"__esModule",{value:!0});s8.Settings=s8.walkStream=s8.walkSync=s8.walk=void 0;var Jkn=Mkn(),$Go=Hkn(),eFo=Qkn(),nur=Xkn();s8.Settings=nur.default;function tFo(e,t,r){if(typeof t=="function"){new Jkn.default(e,lgt()).read(t);return}new Jkn.default(e,lgt(t)).read(r)}s8.walk=tFo;function rFo(e,t){let r=lgt(t);return new eFo.default(e,r).read()}s8.walkSync=rFo;function nFo(e,t){let r=lgt(t);return new $Go.default(e,r).read()}s8.walkStream=nFo;function lgt(e={}){return e instanceof nur.default?e:new nur.default(e)}});var ggt=H(sur=>{"use strict";Object.defineProperty(sur,"__esModule",{value:!0});var iFo=Et("path"),sFo=uIe(),Ukn=I$(),iur=class{constructor(t){this._settings=t,this._fsStatSettings=new sFo.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(t){return iFo.resolve(this._settings.cwd,t)}_makeEntry(t,r){let n={name:r,path:r,dirent:Ukn.fs.createDirentFromStats(r,t)};return this._settings.stats&&(n.stats=t),n}_isFatalError(t){return!Ukn.errno.isEnoentCodeError(t)&&!this._settings.suppressErrors}};sur.default=iur});var cur=H(aur=>{"use strict";Object.defineProperty(aur,"__esModule",{value:!0});var oFo=Et("stream"),aFo=uIe(),cFo=ugt(),lFo=ggt(),our=class extends lFo.default{constructor(){super(...arguments),this._walkStream=cFo.walkStream,this._stat=aFo.stat}dynamic(t,r){return this._walkStream(t,r)}static(t,r){let n=t.map(this._getFullEntryPath,this),a=new oFo.PassThrough({objectMode:!0});a._write=(o,l,A)=>this._getEntry(n[o],t[o],r).then(f=>{f!==null&&r.entryFilter(f)&&a.push(f),o===n.length-1&&a.end(),A()}).catch(A);for(let o=0;othis._makeEntry(a,r)).catch(a=>{if(n.errorFilter(a))return null;throw a})}_getStat(t){return new Promise((r,n)=>{this._stat(t,this._fsStatSettings,(a,o)=>a===null?r(o):n(a))})}};aur.default=our});var Kkn=H(uur=>{"use strict";Object.defineProperty(uur,"__esModule",{value:!0});var uFo=ugt(),gFo=ggt(),AFo=cur(),lur=class extends gFo.default{constructor(){super(...arguments),this._walkAsync=uFo.walk,this._readerStream=new AFo.default(this._settings)}dynamic(t,r){return new Promise((n,a)=>{this._walkAsync(t,r,(o,l)=>{o===null?n(l):a(o)})})}async static(t,r){let n=[],a=this._readerStream.static(t,r);return new Promise((o,l)=>{a.once("error",l),a.on("data",A=>n.push(A)),a.once("end",()=>o(n))})}};uur.default=lur});var jkn=H(Aur=>{"use strict";Object.defineProperty(Aur,"__esModule",{value:!0});var h5e=I$(),gur=class{constructor(t,r,n){this._patterns=t,this._settings=r,this._micromatchOptions=n,this._storage=[],this._fillStorage()}_fillStorage(){for(let t of this._patterns){let r=this._getPatternSegments(t),n=this._splitSegmentsIntoSections(r);this._storage.push({complete:n.length<=1,pattern:t,segments:r,sections:n})}}_getPatternSegments(t){return h5e.pattern.getPatternParts(t,this._micromatchOptions).map(n=>h5e.pattern.isDynamicPattern(n,this._settings)?{dynamic:!0,pattern:n,patternRe:h5e.pattern.makeRe(n,this._micromatchOptions)}:{dynamic:!1,pattern:n})}_splitSegmentsIntoSections(t){return h5e.array.splitWhen(t,r=>r.dynamic&&h5e.pattern.hasGlobStar(r.pattern))}};Aur.default=gur});var zkn=H(pur=>{"use strict";Object.defineProperty(pur,"__esModule",{value:!0});var dFo=jkn(),dur=class extends dFo.default{match(t){let r=t.split("/"),n=r.length,a=this._storage.filter(o=>!o.complete||o.segments.length>n);for(let o of a){let l=o.sections[0];if(!o.complete&&n>l.length||r.every((f,I)=>{let C=o.segments[I];return!!(C.dynamic&&C.patternRe.test(f)||!C.dynamic&&C.pattern===f)}))return!0}return!1}};pur.default=dur});var qkn=H(Iur=>{"use strict";Object.defineProperty(Iur,"__esModule",{value:!0});var Agt=I$(),pFo=zkn(),fur=class{constructor(t,r){this._settings=t,this._micromatchOptions=r}getFilter(t,r,n){let a=this._getMatcher(r),o=this._getNegativePatternsRe(n);return l=>this._filter(t,l,a,o)}_getMatcher(t){return new pFo.default(t,this._settings,this._micromatchOptions)}_getNegativePatternsRe(t){let r=t.filter(Agt.pattern.isAffectDepthOfReadingPattern);return Agt.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(t,r,n,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymbolicLink(r))return!1;let o=Agt.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,n)?!1:this._isSkippedByNegativePatterns(o,a)}_isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntryLevel(t,r)>=this._settings.deep}_getEntryLevel(t,r){let n=r.split("/").length;if(t==="")return n;let a=t.split("/").length;return n-a}_isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!r.match(t)}_isSkippedByNegativePatterns(t,r){return!Agt.pattern.matchAny(t,r)}};Iur.default=fur});var $kn=H(mur=>{"use strict";Object.defineProperty(mur,"__esModule",{value:!0});var gIe=I$(),hur=class{constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=new Map}getFilter(t,r){let n=gIe.pattern.convertPatternsToRe(t,this._micromatchOptions),a=gIe.pattern.convertPatternsToRe(r,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}));return o=>this._filter(o,n,a)}_filter(t,r,n){let a=gIe.path.removeLeadingDotSegment(t.path);if(this._settings.unique&&this._isDuplicateEntry(a)||this._onlyFileFilter(t)||this._onlyDirectoryFilter(t)||this._isSkippedByAbsoluteNegativePatterns(a,n))return!1;let o=t.dirent.isDirectory(),l=this._isMatchToPatterns(a,r,o)&&!this._isMatchToPatterns(a,n,o);return this._settings.unique&&l&&this._createIndexRecord(a),l}_isDuplicateEntry(t){return this.index.has(t)}_createIndexRecord(t){this.index.set(t,void 0)}_onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}_onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)return!1;let n=gIe.path.makeAbsolute(this._settings.cwd,t);return gIe.pattern.matchAny(n,r)}_isMatchToPatterns(t,r,n){let a=gIe.pattern.matchAny(t,r);return!a&&n?gIe.pattern.matchAny(t+"/",r):a}};mur.default=hur});var exn=H(_ur=>{"use strict";Object.defineProperty(_ur,"__esModule",{value:!0});var fFo=I$(),Cur=class{constructor(t){this._settings=t}getFilter(){return t=>this._isNonFatalError(t)}_isNonFatalError(t){return fFo.errno.isEnoentCodeError(t)||this._settings.suppressErrors}};_ur.default=Cur});var rxn=H(bur=>{"use strict";Object.defineProperty(bur,"__esModule",{value:!0});var txn=I$(),yur=class{constructor(t){this._settings=t}getTransformer(){return t=>this._transform(t)}_transform(t){let r=t.path;return this._settings.absolute&&(r=txn.path.makeAbsolute(this._settings.cwd,r),r=txn.path.unixify(r)),this._settings.markDirectories&&t.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},t),{path:r}):r}};bur.default=yur});var dgt=H(Sur=>{"use strict";Object.defineProperty(Sur,"__esModule",{value:!0});var IFo=Et("path"),hFo=qkn(),mFo=$kn(),CFo=exn(),_Fo=rxn(),Eur=class{constructor(t){this._settings=t,this.errorFilter=new CFo.default(this._settings),this.entryFilter=new mFo.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new hFo.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new _Fo.default(this._settings)}_getRootDirectory(t){return IFo.resolve(this._settings.cwd,t.base)}_getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,t.positive,t.negative),entryFilter:this.entryFilter.getFilter(t.positive,t.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};Sur.default=Eur});var nxn=H(Bur=>{"use strict";Object.defineProperty(Bur,"__esModule",{value:!0});var yFo=Kkn(),bFo=dgt(),vur=class extends bFo.default{constructor(){super(...arguments),this._reader=new yFo.default(this._settings)}async read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return(await this.api(r,t,n)).map(o=>n.transform(o))}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};Bur.default=vur});var ixn=H(Tur=>{"use strict";Object.defineProperty(Tur,"__esModule",{value:!0});var EFo=Et("stream"),SFo=cur(),vFo=dgt(),wur=class extends vFo.default{constructor(){super(...arguments),this._reader=new SFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t),a=this.api(r,t,n),o=new EFo.Readable({objectMode:!0,read:()=>{}});return a.once("error",l=>o.emit("error",l)).on("data",l=>o.emit("data",n.transform(l))).once("end",()=>o.emit("end")),o.once("close",()=>a.destroy()),o}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};Tur.default=wur});var sxn=H(Nur=>{"use strict";Object.defineProperty(Nur,"__esModule",{value:!0});var BFo=uIe(),wFo=ugt(),TFo=ggt(),Rur=class extends TFo.default{constructor(){super(...arguments),this._walkSync=wFo.walkSync,this._statSync=BFo.statSync}dynamic(t,r){return this._walkSync(t,r)}static(t,r){let n=[];for(let a of t){let o=this._getFullEntryPath(a),l=this._getEntry(o,a,r);l===null||!r.entryFilter(l)||n.push(l)}return n}_getEntry(t,r,n){try{let a=this._getStat(t);return this._makeEntry(a,r)}catch(a){if(n.errorFilter(a))return null;throw a}}_getStat(t){return this._statSync(t,this._fsStatSettings)}};Nur.default=Rur});var oxn=H(kur=>{"use strict";Object.defineProperty(kur,"__esModule",{value:!0});var RFo=sxn(),NFo=dgt(),Dur=class extends NFo.default{constructor(){super(...arguments),this._reader=new RFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return this.api(r,t,n).map(n.transform)}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};kur.default=Dur});var axn=H(Sve=>{"use strict";Object.defineProperty(Sve,"__esModule",{value:!0});Sve.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var Eve=Et("fs"),DFo=Et("os"),kFo=Math.max(DFo.cpus().length,1);Sve.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:Eve.lstat,lstatSync:Eve.lstatSync,stat:Eve.stat,statSync:Eve.statSync,readdir:Eve.readdir,readdirSync:Eve.readdirSync};var xur=class{constructor(t={}){this._options=t,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,kFo),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(t,r){return t===void 0?r:t}_getFileSystemMethods(t={}){return Object.assign(Object.assign({},Sve.DEFAULT_FILE_SYSTEM_ADAPTER),t)}};Sve.default=xur});var vve=H((rKl,lxn)=>{"use strict";var cxn=lkn(),xFo=nxn(),GFo=ixn(),FFo=oxn(),Gur=axn(),AM=I$();async function Fur(e,t){hX(e);let r=Zur(e,xFo.default,t),n=await Promise.all(r);return AM.array.flatten(n)}(function(e){e.glob=e,e.globSync=t,e.globStream=r,e.async=e;function t(I,C){hX(I);let b=Zur(I,FFo.default,C);return AM.array.flatten(b)}e.sync=t;function r(I,C){hX(I);let b=Zur(I,GFo.default,C);return AM.stream.merge(b)}e.stream=r;function n(I,C){hX(I);let b=[].concat(I),E=new Gur.default(C);return cxn.generate(b,E)}e.generateTasks=n;function a(I,C){hX(I);let b=new Gur.default(C);return AM.pattern.isDynamicPattern(I,b)}e.isDynamicPattern=a;function o(I){return hX(I),AM.path.escape(I)}e.escapePath=o;function l(I){return hX(I),AM.path.convertPathToPattern(I)}e.convertPathToPattern=l;let A;(function(I){function C(E){return hX(E),AM.path.escapePosixPath(E)}I.escapePath=C;function b(E){return hX(E),AM.path.convertPosixPathToPattern(E)}I.convertPathToPattern=b})(A=e.posix||(e.posix={}));let f;(function(I){function C(E){return hX(E),AM.path.escapeWindowsPath(E)}I.escapePath=C;function b(E){return hX(E),AM.path.convertWindowsPathToPattern(E)}I.convertPathToPattern=b})(f=e.win32||(e.win32={}))})(Fur||(Fur={}));function Zur(e,t,r){let n=[].concat(e),a=new Gur.default(r),o=cxn.generate(n,a),l=new t(a);return o.map(l.read,l)}function hX(e){if(![].concat(e).every(n=>AM.string.isString(n)&&!AM.string.isEmpty(n)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}lxn.exports=Fur});var koe=H(m5e=>{"use strict";Object.defineProperty(m5e,"__esModule",{value:!0});m5e.makeHash=LFo;m5e.checksumFile=VFo;m5e.checksumPattern=WFo;var ZFo=(Wa(),vi(Va)),Doe=Io(),Lur=Et("crypto"),uxn=ZFo.__importDefault(vve());function LFo(...e){let t=(0,Lur.createHash)("sha512"),r="";for(let n of e)typeof n=="string"?r+=n:n&&(r&&(t.update(r),r=""),t.update(n));return r&&t.update(r),t.digest("hex")}async function VFo(e,{baseFs:t,algorithm:r}={baseFs:Doe.xfs,algorithm:"sha512"}){let n=await t.openPromise(e,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,Lur.createHash)(r),A=0;for(;(A=await t.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await t.closePromise(n)}}async function WFo(e,{cwd:t}){let n=(await(0,uxn.default)(e,{cwd:Doe.npath.fromPortablePath(t),onlyDirectories:!0})).map(A=>`${A}/**/*`),a=await(0,uxn.default)([e,...n],{cwd:Doe.npath.fromPortablePath(t),onlyFiles:!1});a.sort();let o=await Promise.all(a.map(async A=>{let f=[Buffer.from(A)],I=Doe.ppath.join(t,Doe.npath.toPortablePath(A)),C=await Doe.xfs.lstatPromise(I);return C.isSymbolicLink()?f.push(Buffer.from(await Doe.xfs.readlinkPromise(I))):C.isFile()&&f.push(await Doe.xfs.readFilePromise(I)),f.join("\0")})),l=(0,Lur.createHash)("sha512");for(let A of o)l.update(A);return l.digest("hex")}});var fG=H(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.makeIdent=wve;Ud.makeDescriptor=Rve;Ud.makeLocator=Nve;Ud.convertToIdent=YFo;Ud.convertDescriptorToLocator=QFo;Ud.convertLocatorToDescriptor=XFo;Ud.convertPackageToLocator=JFo;Ud.renamePackage=Pur;Ud.copyPackage=UFo;Ud.virtualizeDescriptor=KFo;Ud.virtualizePackage=jFo;Ud.isVirtualDescriptor=fgt;Ud.isVirtualLocator=y5e;Ud.devirtualizeDescriptor=pxn;Ud.devirtualizeLocator=zFo;Ud.ensureDevirtualizedDescriptor=qFo;Ud.ensureDevirtualizedLocator=$Fo;Ud.bindDescriptor=eZo;Ud.bindLocator=tZo;Ud.areIdentsEqual=fxn;Ud.areDescriptorsEqual=Ixn;Ud.areLocatorsEqual=rZo;Ud.areVirtualPackagesEquivalent=nZo;Ud.parseIdent=iZo;Ud.tryParseIdent=hxn;Ud.parseDescriptor=oZo;Ud.tryParseDescriptor=mxn;Ud.parseLocator=Cxn;Ud.tryParseLocator=_xn;Ud.parseRange=b5e;Ud.tryParseRange=AZo;Ud.parseFileStyleRange=dZo;Ud.makeRange=yxn;Ud.convertToManifestRange=fZo;Ud.stringifyIdent=hgt;Ud.wrapIdentIntoScope=IZo;Ud.unwrapIdentFromScope=hZo;Ud.stringifyDescriptor=mZo;Ud.stringifyLocator=CZo;Ud.slugifyIdent=Wur;Ud.slugifyLocator=yZo;Ud.prettyIdent=mgt;Ud.prettyRange=bxn;Ud.prettyDescriptor=EZo;Ud.prettyReference=Mur;Ud.prettyLocator=pgt;Ud.prettyLocatorNoColors=SZo;Ud.sortDescriptors=vZo;Ud.prettyWorkspace=BZo;Ud.prettyResolution=wZo;Ud.prettyDependent=TZo;Ud.getIdentVendorPath=RZo;Ud.isPackageInRange=NZo;Ud.isPackageCompatible=DZo;Ud.allPeerRequests=kZo;var Tve=(Wa(),vi(Va)),_5e=Tve.__importDefault(Et("querystring")),Axn=Tve.__importDefault(jC()),OFo=FBn(),DZ=Tve.__importStar(uM()),Our=Tve.__importStar(koe()),PFo=Tve.__importStar(OO()),Bve=Tve.__importStar(fG()),C5e="virtual:",MFo=5,dxn=/(os|cpu|libc)=([a-z0-9_-]+)/,HFo=(0,OFo.makeParser)(dxn);function wve(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:Our.makeHash(e,t),scope:e,name:t}}function Rve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:Our.makeHash(e.identHash,t),range:t}}function Nve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:Our.makeHash(e.identHash,t),reference:t}}function YFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}function QFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.descriptorHash,reference:e.range}}function XFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:e.locatorHash,range:e.reference}}function JFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference}}function Pur(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference,version:e.version,languageName:e.languageName,linkType:e.linkType,conditions:e.conditions,dependencies:new Map(e.dependencies),peerDependencies:new Map(e.peerDependencies),dependenciesMeta:new Map(e.dependenciesMeta),peerDependenciesMeta:new Map(e.peerDependenciesMeta),bin:new Map(e.bin)}}function UFo(e){return Pur(e,e)}function KFo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Rve(e,`virtual:${t}#${e.range}`)}function jFo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Pur(e,Nve(e,`virtual:${t}#${e.reference}`))}function fgt(e){return e.range.startsWith(C5e)}function y5e(e){return e.reference.startsWith(C5e)}var Igt=/^[^#]*#/;function pxn(e){if(!fgt(e))throw new Error("Not a virtual descriptor");return Rve(e,e.range.replace(Igt,""))}function zFo(e){if(!y5e(e))throw new Error("Not a virtual descriptor");return Nve(e,e.reference.replace(Igt,""))}function qFo(e){return fgt(e)?Rve(e,e.range.replace(Igt,"")):e}function $Fo(e){return y5e(e)?Nve(e,e.reference.replace(Igt,"")):e}function eZo(e,t){return e.range.includes("::")?e:Rve(e,`${e.range}::${_5e.default.stringify(t)}`)}function tZo(e,t){return e.reference.includes("::")?e:Nve(e,`${e.reference}::${_5e.default.stringify(t)}`)}function fxn(e,t){return e.identHash===t.identHash}function Ixn(e,t){return e.descriptorHash===t.descriptorHash}function rZo(e,t){return e.locatorHash===t.locatorHash}function nZo(e,t){if(!y5e(e))throw new Error("Invalid package type");if(!y5e(t))throw new Error("Invalid package type");if(!fxn(e,t)||e.dependencies.size!==t.dependencies.size)return!1;for(let r of e.dependencies.values()){let n=t.dependencies.get(r.identHash);if(!n||!Ixn(r,n))return!1}return!0}function iZo(e){let t=hxn(e);if(!t)throw new Error(`Invalid ident (${e})`);return t}var sZo=/^(?:@([^/]+?)\/)?([^@/]+)$/;function hxn(e){let t=e.match(sZo);if(!t)return null;let[,r,n]=t;return wve(typeof r<"u"?r:null,n)}function oZo(e,t=!1){let r=mxn(e,t);if(!r)throw new Error(`Invalid descriptor (${e})`);return r}var aZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,cZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/,Vur="unknown";function mxn(e,t=!1){let r=t?e.match(aZo):e.match(cZo);if(!r)return null;let[,n,a,o]=r;if(o===Vur)throw new Error(`Invalid range (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:Vur;return Rve(wve(l,a),A)}function Cxn(e,t=!1){let r=_xn(e,t);if(!r)throw new Error(`Invalid locator (${e})`);return r}var lZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,uZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function _xn(e,t=!1){let r=t?e.match(lZo):e.match(uZo);if(!r)return null;let[,n,a,o]=r;if(o==="unknown")throw new Error(`Invalid reference (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:"unknown";return Nve(wve(l,a),A)}var gZo=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;function b5e(e,t){let r=e.match(gZo);if(r===null)throw new Error(`Invalid range (${e})`);let n=typeof r[1]<"u"?r[1]:null;if(typeof t?.requireProtocol=="string"&&n!==t.requireProtocol)throw new Error(`Invalid protocol (${n})`);if(t?.requireProtocol&&n===null)throw new Error(`Missing protocol (${n})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(t?.requireSource&&a===null)throw new Error(`Missing source (${e})`);let o=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),l=t?.parseSelector?_5e.default.parse(o):o,A=typeof r[4]<"u"?_5e.default.parse(r[4]):null;return{protocol:n,source:a,selector:l,params:A}}function AZo(e,t){try{return b5e(e,t)}catch{return null}}function dZo(e,{protocol:t}){let{selector:r,params:n}=b5e(e,{requireProtocol:t,requireBindings:!0});if(typeof n.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${e}`);return{parentLocator:Cxn(n.locator,!0),path:r}}function gxn(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A"),e=e.replaceAll("#","%23"),e}function pZo(e){return e===null?!1:Object.entries(e).length>0}function yxn({protocol:e,source:t,selector:r,params:n}){let a="";return e!==null&&(a+=`${e}`),t!==null&&(a+=`${gxn(t)}#`),a+=gxn(r),pZo(n)&&(a+=`::${_5e.default.stringify(n)}`),a}function fZo(e){let{params:t,protocol:r,source:n,selector:a}=b5e(e);for(let o in t)o.startsWith("__")&&delete t[o];return yxn({protocol:r,source:n,params:t,selector:a})}function hgt(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}function IZo(e,t){return e.scope?Bve.makeIdent(t,`${e.scope}__${e.name}`):Bve.makeIdent(t,e.name)}function hZo(e,t){if(e.scope!==t)return e;let r=e.name.indexOf("__");if(r===-1)return wve(null,e.name);let n=e.name.slice(0,r),a=e.name.slice(r+2);return wve(n,a)}function mZo(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.name}@${e.range}`}function CZo(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${e.name}@${e.reference}`}function Wur(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}var _Zo=/:$/;function yZo(e){let{protocol:t,selector:r}=b5e(e.reference),n=t!==null?t.replace(_Zo,""):"exotic",a=Axn.default.valid(r),o=a!==null?`${n}-${a}`:`${n}`,l=10;return e.scope?`${Wur(e)}-${o}-${e.locatorHash.slice(0,l)}`:`${Wur(e)}-${o}-${e.locatorHash.slice(0,l)}`}function mgt(e,t){return t.scope?`${DZ.pretty(e,`@${t.scope}/`,DZ.Type.SCOPE)}${DZ.pretty(e,t.name,DZ.Type.NAME)}`:`${DZ.pretty(e,t.name,DZ.Type.NAME)}`}var bZo=/\?.*/;function Cgt(e){if(e.startsWith(C5e)){let t=Cgt(e.substring(e.indexOf("#")+1)),r=e.substring(C5e.length,C5e.length+MFo);return`${t} [${r}]`}else return e.replace(bZo,"?[...]")}function bxn(e,t){return`${DZ.pretty(e,Cgt(t),DZ.Type.RANGE)}`}function EZo(e,t){return`${mgt(e,t)}${DZ.pretty(e,"@",DZ.Type.RANGE)}${bxn(e,t.range)}`}function Mur(e,t){return`${DZ.pretty(e,Cgt(t),DZ.Type.REFERENCE)}`}function pgt(e,t){return`${mgt(e,t)}${DZ.pretty(e,"@",DZ.Type.REFERENCE)}${Mur(e,t.reference)}`}function SZo(e){return`${hgt(e)}@${Cgt(e.reference)}`}function vZo(e){return PFo.sortMap(e,[t=>hgt(t),t=>t.range])}function BZo(e,t){return mgt(e,t.anchoredLocator)}function wZo(e,t,r){let n=fgt(t)?pxn(t):t;return r===null?`${Bve.prettyDescriptor(e,n)} \u2192 ${DZ.mark(e).Cross}`:n.identHash===r.identHash?`${Bve.prettyDescriptor(e,n)} \u2192 ${Mur(e,r.reference)}`:`${Bve.prettyDescriptor(e,n)} \u2192 ${pgt(e,r)}`}function TZo(e,t,r){return r===null?`${pgt(e,t)}`:`${pgt(e,t)} (via ${Bve.prettyRange(e,r.range)})`}function RZo(e){return`node_modules/${hgt(e)}`}function NZo(e,t){return t===Vur||!e.version?!0:Axn.default.satisfies(e.version??"",t)}function DZo(e,t){return e.conditions?HFo(e.conditions,r=>{let[,n,a]=r.match(dxn),o=t[n];return o?o.includes(a):!0}):!0}function kZo(e){let t=new Set;if("children"in e)t.add(e);else for(let r of e.requests.values())t.add(r);for(let r of t)for(let n of r.children.values())t.add(n);return t}});var Exn=H(_gt=>{"use strict";Object.defineProperty(_gt,"__esModule",{value:!0});_gt.CorePlugin=void 0;var xZo=(Wa(),vi(Va)),GZo=U9(),xoe=xZo.__importStar(fG());_gt.CorePlugin={hooks:{reduceDependency:(e,t,r,n,{resolver:a,resolveOptions:o})=>{for(let{pattern:l,reference:A}of t.topLevelWorkspace.manifest.resolutions){if(l.from&&(l.from.fullName!==xoe.stringifyIdent(r)||t.configuration.normalizeLocator(xoe.makeLocator(xoe.parseIdent(l.from.fullName),l.from.description??r.reference)).locatorHash!==r.locatorHash)||l.descriptor.fullName!==xoe.stringifyIdent(e)||t.configuration.normalizeDependency(xoe.makeDescriptor(xoe.parseLocator(l.descriptor.fullName),l.descriptor.description??e.range)).descriptorHash!==e.descriptorHash)continue;return a.bindDescriptor(t.configuration.normalizeDependency(xoe.makeDescriptor(e,A)),t.topLevelWorkspace.anchoredLocator,o)}return e},validateProject:async(e,t)=>{for(let r of e.workspaces){let n=xoe.prettyWorkspace(e.configuration,r);await e.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,o)=>t.reportWarning(a,`${n}: ${o}`),reportError:(a,o)=>t.reportError(a,`${n}: ${o}`)})}},validateWorkspace:async(e,t)=>{let{manifest:r}=e;r.resolutions.length&&e.cwd!==e.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let n of r.errors)t.reportWarning(GZo.MessageName.INVALID_MANIFEST,n.message)}}}});var AIe=H(bgt=>{"use strict";Object.defineProperty(bgt,"__esModule",{value:!0});bgt.WorkspaceResolver=void 0;var FZo=cIe(),ygt=class e{supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.project.tryWorkspaceByDescriptor(t)!==null)}supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[n.project.getWorkspaceByDescriptor(t).anchoredLocator]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.getWorkspaceByCwd(t.reference.slice(e.protocol.length));return{...t,version:n.manifest.version||"0.0.0",languageName:"unknown",linkType:FZo.LinkType.SOFT,conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...n.manifest.dependencies,...n.manifest.devDependencies])),peerDependencies:new Map([...n.manifest.peerDependencies]),dependenciesMeta:n.manifest.dependenciesMeta,peerDependenciesMeta:n.manifest.peerDependenciesMeta,bin:n.manifest.bin}}};bgt.WorkspaceResolver=ygt;ygt.protocol="workspace:"});var h$=H(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});mX.SemVer=void 0;mX.satisfiesWithPrereleases=VZo;mX.validRange=Bxn;mX.clean=OZo;mX.getComparator=wxn;mX.mergeComparators=Hur;mX.stringifyComparator=Txn;mX.simplifyRanges=PZo;var ZZo=(Wa(),vi(Va)),Goe=ZZo.__importDefault(jC()),LZo=jC();Object.defineProperty(mX,"SemVer",{enumerable:!0,get:function(){return LZo.SemVer}});var Sxn=new Map;function VZo(e,t,r=!1){if(!e)return!1;let n=`${t}${r}`,a=Sxn.get(n);if(typeof a>"u")try{a=new Goe.default.Range(t,{includePrerelease:!0,loose:r})}catch{return!1}finally{Sxn.set(n,a||null)}else if(a===null)return!1;let o;try{o=new Goe.default.SemVer(e,a)}catch{return!1}return a.test(o)?!0:(o.prerelease&&(o.prerelease=[]),a.set.some(l=>{for(let A of l)A.semver.prerelease&&(A.semver.prerelease=[]);return l.every(A=>A.test(o))}))}var vxn=new Map;function Bxn(e){if(e.indexOf(":")!==-1)return null;let t=vxn.get(e);if(typeof t<"u")return t;try{t=new Goe.default.Range(e)}catch{t=null}return vxn.set(e,t),t}var WZo=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function OZo(e){let t=WZo.exec(e);return t?t[1]:null}function wxn(e){if(e.semver===Goe.default.Comparator.ANY)return{gt:null,lt:null};switch(e.operator){case"":return{gt:[">=",e.semver],lt:["<=",e.semver]};case">":case">=":return{gt:[e.operator,e.semver],lt:null};case"<":case"<=":return{gt:null,lt:[e.operator,e.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${e.operator})`)}}function Hur(e){if(e.length===0)return null;let t=null,r=null;for(let n of e){if(n.gt){let a=t!==null?Goe.default.compare(n.gt[1],t[1]):null;(a===null||a>0||a===0&&n.gt[0]===">")&&(t=n.gt)}if(n.lt){let a=r!==null?Goe.default.compare(n.lt[1],r[1]):null;(a===null||a<0||a===0&&n.lt[0]==="<")&&(r=n.lt)}}if(t&&r){let n=Goe.default.compare(t[1],r[1]);if(n===0&&(t[0]===">"||r[0]==="<")||n>0)return null}return{gt:t,lt:r}}function Txn(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1].version===e.lt[1].version)return e.gt[1].version;if(e.gt[0]===">="&&e.lt[0]==="<"){if(e.lt[1].version===`${e.gt[1].major+1}.0.0-0`)return`^${e.gt[1].version}`;if(e.lt[1].version===`${e.gt[1].major}.${e.gt[1].minor+1}.0-0`)return`~${e.gt[1].version}`}}let t=[];return e.gt&&t.push(e.gt[0]+e.gt[1].version),e.lt&&t.push(e.lt[0]+e.lt[1].version),t.length?t.join(" "):"*"}function PZo(e){let t=e.map(MZo).map(n=>Bxn(n).set.map(a=>a.map(o=>wxn(o)))),r=t.shift().map(n=>Hur(n)).filter(n=>n!==null);for(let n of t){let a=[];for(let o of r)for(let l of n){let A=Hur([o,...l]);A!==null&&a.push(A)}r=a}return r.length===0?null:r.map(n=>Txn(n)).join(" || ")}function MZo(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let n of t)t.some(a=>a!==n&&Goe.default.subset(n,a))||r.add(n);if(r.size{"use strict";Object.defineProperty(wgt,"__esModule",{value:!0});wgt.Manifest=void 0;var Bgt=(Wa(),vi(Va)),Egt=Io(),Rxn=tM(),HZo=Bgt.__importDefault(jC()),YZo=AIe(),vgt=Bgt.__importStar(OO()),QZo=Bgt.__importStar(h$()),H0=Bgt.__importStar(fG()),Dve=class e{constructor(){this.indent=" ",this.name=null,this.version=null,this.os=null,this.cpu=null,this.libc=null,this.type=null,this.packageManager=null,this.private=!1,this.license=null,this.main=null,this.module=null,this.browser=null,this.languageName=null,this.bin=new Map,this.scripts=new Map,this.dependencies=new Map,this.devDependencies=new Map,this.peerDependencies=new Map,this.workspaceDefinitions=[],this.dependenciesMeta=new Map,this.peerDependenciesMeta=new Map,this.resolutions=[],this.files=null,this.publishConfig=null,this.installConfig=null,this.preferUnplugged=null,this.raw={},this.errors=[]}static async tryFind(t,{baseFs:r=new Egt.NodeFS}={}){let n=Egt.ppath.join(t,"package.json");try{return await e.fromFile(n,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(t,{baseFs:r}={}){let n=await e.tryFind(t,{baseFs:r});if(n===null)throw new Error("Manifest not found");return n}static async fromFile(t,{baseFs:r=new Egt.NodeFS}={}){let n=new e;return await n.loadFile(t,{baseFs:r}),n}static fromText(t){let r=new e;return r.loadFromText(t),r}loadFromText(t){let r;try{r=JSON.parse(Dxn(t)||"{}")}catch(n){throw n.message+=` (when parsing ${t})`,n}this.load(r),this.indent=Nxn(t)}async loadFile(t,{baseFs:r=new Egt.NodeFS}){let n=await r.readFilePromise(t,"utf8"),a;try{a=JSON.parse(Dxn(n)||"{}")}catch(o){throw o.message+=` (when parsing ${t})`,o}this.load(a),this.indent=Nxn(n)}load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)throw new Error(`Utterly invalid manifest data (${t})`);this.raw=t;let n=[];if(this.name=null,typeof t.name=="string")try{this.name=H0.parseIdent(t.name)}catch{n.push(new Error("Parsing failed for the 'name' field"))}if(typeof t.version=="string"?this.version=t.version:this.version=null,Array.isArray(t.os)){let o=[];this.os=o;for(let l of t.os)typeof l!="string"?n.push(new Error("Parsing failed for the 'os' field")):o.push(l)}else this.os=null;if(Array.isArray(t.cpu)){let o=[];this.cpu=o;for(let l of t.cpu)typeof l!="string"?n.push(new Error("Parsing failed for the 'cpu' field")):o.push(l)}else this.cpu=null;if(Array.isArray(t.libc)){let o=[];this.libc=o;for(let l of t.libc)typeof l!="string"?n.push(new Error("Parsing failed for the 'libc' field")):o.push(l)}else this.libc=null;if(typeof t.type=="string"?this.type=t.type:this.type=null,typeof t.packageManager=="string"?this.packageManager=t.packageManager:this.packageManager=null,typeof t.private=="boolean"?this.private=t.private:this.private=!1,typeof t.license=="string"?this.license=t.license:this.license=null,typeof t.languageName=="string"?this.languageName=t.languageName:this.languageName=null,typeof t.main=="string"?this.main=kZ(t.main):this.main=null,typeof t.module=="string"?this.module=kZ(t.module):this.module=null,t.browser!=null)if(typeof t.browser=="string")this.browser=kZ(t.browser);else{this.browser=new Map;for(let[o,l]of Object.entries(t.browser))this.browser.set(kZ(o),typeof l=="string"?kZ(l):l)}else this.browser=null;if(this.bin=new Map,typeof t.bin=="string")t.bin.trim()===""?n.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,kZ(t.bin)):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.bin=="object"&&t.bin!==null)for(let[o,l]of Object.entries(t.bin)){if(typeof l!="string"||l.trim()===""){n.push(new Error(`Invalid bin definition for '${o}'`));continue}let A=H0.parseIdent(o);this.bin.set(A.name,kZ(l))}if(this.scripts=new Map,typeof t.scripts=="object"&&t.scripts!==null)for(let[o,l]of Object.entries(t.scripts)){if(typeof l!="string"){n.push(new Error(`Invalid script definition for '${o}'`));continue}this.scripts.set(o,l)}if(this.dependencies=new Map,typeof t.dependencies=="object"&&t.dependencies!==null)for(let[o,l]of Object.entries(t.dependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=H0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=H0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f)}if(this.devDependencies=new Map,typeof t.devDependencies=="object"&&t.devDependencies!==null)for(let[o,l]of Object.entries(t.devDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=H0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=H0.makeDescriptor(A,l);this.devDependencies.set(f.identHash,f)}if(this.peerDependencies=new Map,typeof t.peerDependencies=="object"&&t.peerDependencies!==null)for(let[o,l]of Object.entries(t.peerDependencies)){let A;try{A=H0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}(typeof l!="string"||!l.startsWith(YZo.WorkspaceResolver.protocol)&&!QZo.validRange(l))&&(n.push(new Error(`Invalid dependency range for '${o}'`)),l="*");let f=H0.makeDescriptor(A,l);this.peerDependencies.set(f.identHash,f)}typeof t.workspaces=="object"&&t.workspaces!==null&&t.workspaces.nohoist&&n.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=Array.isArray(t.workspaces)?t.workspaces:typeof t.workspaces=="object"&&t.workspaces!==null&&Array.isArray(t.workspaces.packages)?t.workspaces.packages:[];this.workspaceDefinitions=[];for(let o of a){if(typeof o!="string"){n.push(new Error(`Invalid workspace definition for '${o}'`));continue}this.workspaceDefinitions.push({pattern:o})}if(this.dependenciesMeta=new Map,typeof t.dependenciesMeta=="object"&&t.dependenciesMeta!==null)for(let[o,l]of Object.entries(t.dependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}`));continue}let A=H0.parseDescriptor(o),f=this.ensureDependencyMeta(A),I=Sgt(l.built,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid built meta field for '${o}'`));continue}let C=Sgt(l.optional,{yamlCompatibilityMode:r});if(C===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}let b=Sgt(l.unplugged,{yamlCompatibilityMode:r});if(b===null){n.push(new Error(`Invalid unplugged meta field for '${o}'`));continue}Object.assign(f,{built:I,optional:C,unplugged:b})}if(this.peerDependenciesMeta=new Map,typeof t.peerDependenciesMeta=="object"&&t.peerDependenciesMeta!==null)for(let[o,l]of Object.entries(t.peerDependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}'`));continue}let A=H0.parseDescriptor(o),f=this.ensurePeerDependencyMeta(A),I=Sgt(l.optional,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}Object.assign(f,{optional:I})}if(this.resolutions=[],typeof t.resolutions=="object"&&t.resolutions!==null)for(let[o,l]of Object.entries(t.resolutions)){if(typeof l!="string"){n.push(new Error(`Invalid resolution entry for '${o}'`));continue}try{this.resolutions.push({pattern:(0,Rxn.parseResolution)(o),reference:l})}catch(A){n.push(A);continue}}if(Array.isArray(t.files)){this.files=new Set;for(let o of t.files){if(typeof o!="string"){n.push(new Error(`Invalid files entry for '${o}'`));continue}this.files.add(o)}}else this.files=null;if(typeof t.publishConfig=="object"&&t.publishConfig!==null){if(this.publishConfig={},typeof t.publishConfig.access=="string"&&(this.publishConfig.access=t.publishConfig.access),typeof t.publishConfig.main=="string"&&(this.publishConfig.main=kZ(t.publishConfig.main)),typeof t.publishConfig.module=="string"&&(this.publishConfig.module=kZ(t.publishConfig.module)),t.publishConfig.browser!=null)if(typeof t.publishConfig.browser=="string")this.publishConfig.browser=kZ(t.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[o,l]of Object.entries(t.publishConfig.browser))this.publishConfig.browser.set(kZ(o),typeof l=="string"?kZ(l):l)}if(typeof t.publishConfig.registry=="string"&&(this.publishConfig.registry=t.publishConfig.registry),typeof t.publishConfig.provenance=="boolean"&&(this.publishConfig.provenance=t.publishConfig.provenance),typeof t.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,kZ(t.publishConfig.bin)]]):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.publishConfig.bin=="object"&&t.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[o,l]of Object.entries(t.publishConfig.bin)){if(typeof l!="string"){n.push(new Error(`Invalid bin definition for '${o}'`));continue}this.publishConfig.bin.set(o,kZ(l))}}if(Array.isArray(t.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let o of t.publishConfig.executableFiles){if(typeof o!="string"){n.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(kZ(o))}}}else this.publishConfig=null;if(typeof t.installConfig=="object"&&t.installConfig!==null){this.installConfig={};for(let o of Object.keys(t.installConfig))o==="hoistingLimits"?typeof t.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=t.installConfig.hoistingLimits:n.push(new Error("Invalid hoisting limits definition")):o=="selfReferences"?typeof t.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=t.installConfig.selfReferences:n.push(new Error("Invalid selfReferences definition, must be a boolean value")):n.push(new Error(`Unrecognized installConfig key: ${o}`))}else this.installConfig=null;if(typeof t.optionalDependencies=="object"&&t.optionalDependencies!==null)for(let[o,l]of Object.entries(t.optionalDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=H0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=H0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f);let I=H0.makeDescriptor(A,"unknown"),C=this.ensureDependencyMeta(I);Object.assign(C,{optional:!0})}typeof t.preferUnplugged=="boolean"?this.preferUnplugged=t.preferUnplugged:this.preferUnplugged=null,this.errors=n}getForScope(t){switch(t){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${t}")`)}}hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||this.peerDependencies.has(t.identHash))}hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.devDependencies.has(t.identHash))}hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDependency(t))}getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(Yur("os",this.os)),this.cpu&&this.cpu.length>0&&t.push(Yur("cpu",this.cpu)),this.libc&&this.libc.length>0&&t.push(Yur("libc",this.libc)),t.length>0?t.join(" & "):null}ensureDependencyMeta(t){if(t.range!=="unknown"&&!HZo.default.valid(t.range))throw new Error(`Invalid meta field range for '${H0.stringifyDescriptor(t)}'`);let r=H0.stringifyIdent(t),n=t.range!=="unknown"?t.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let o=a.get(n);return o||a.set(n,o={}),o}ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Invalid meta field range for '${H0.stringifyDescriptor(t)}'`);let r=H0.stringifyIdent(t),n=this.peerDependenciesMeta.get(r);return n||this.peerDependenciesMeta.set(r,n={}),n}setRawField(t,r,{after:n=[]}={}){let a=new Set(n.filter(o=>Object.hasOwn(this.raw,o)));if(a.size===0||Object.hasOwn(this.raw,t))this.raw[t]=r;else{let o=this.raw,l=this.raw={},A=!1;for(let f of Object.keys(o))l[f]=o[f],A||(a.delete(f),a.size===0&&(l[t]=r,A=!0))}}exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),this.name!==null?t.name=H0.stringifyIdent(this.name):delete t.name,this.version!==null?t.version=this.version:delete t.version,this.os!==null?t.os=this.os:delete t.os,this.cpu!==null?t.cpu=this.cpu:delete t.cpu,this.type!==null?t.type=this.type:delete t.type,this.packageManager!==null?t.packageManager=this.packageManager:delete t.packageManager,this.private?t.private=!0:delete t.private,this.license!==null?t.license=this.license:delete t.license,this.languageName!==null?t.languageName=this.languageName:delete t.languageName,this.main!==null?t.main=this.main:delete t.main,this.module!==null?t.module=this.module:delete t.module,this.browser!==null){let o=this.browser;typeof o=="string"?t.browser=o:o instanceof Map&&(t.browser=Object.assign({},...Array.from(o.keys()).sort().map(l=>({[l]:o.get(l)}))))}else delete t.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?t.bin=this.bin.get(this.name.name):this.bin.size>0?t.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(o=>({[o]:this.bin.get(o)}))):delete t.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?t.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:o})=>o)}:t.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?t.workspaces=this.raw.workspaces:delete t.workspaces;let n=[],a=[];for(let o of this.dependencies.values()){let l=this.dependenciesMeta.get(H0.stringifyIdent(o)),A=!1;if(r&&l){let f=l.get(null);f&&f.optional&&(A=!0)}A?a.push(o):n.push(o)}n.length>0?t.dependencies=Object.assign({},...H0.sortDescriptors(n).map(o=>({[H0.stringifyIdent(o)]:o.range}))):delete t.dependencies,a.length>0?t.optionalDependencies=Object.assign({},...H0.sortDescriptors(a).map(o=>({[H0.stringifyIdent(o)]:o.range}))):delete t.optionalDependencies,this.devDependencies.size>0?t.devDependencies=Object.assign({},...H0.sortDescriptors(this.devDependencies.values()).map(o=>({[H0.stringifyIdent(o)]:o.range}))):delete t.devDependencies,this.peerDependencies.size>0?t.peerDependencies=Object.assign({},...H0.sortDescriptors(this.peerDependencies.values()).map(o=>({[H0.stringifyIdent(o)]:o.range}))):delete t.peerDependencies,t.dependenciesMeta={};for(let[o,l]of vgt.sortMap(this.dependenciesMeta.entries(),([A,f])=>A))for(let[A,f]of vgt.sortMap(l.entries(),([I,C])=>I!==null?`0${I}`:"1")){let I=A!==null?H0.stringifyDescriptor(H0.makeDescriptor(H0.parseIdent(o),A)):o,C={...f};r&&A===null&&delete C.optional,Object.keys(C).length!==0&&(t.dependenciesMeta[I]=C)}if(Object.keys(t.dependenciesMeta).length===0&&delete t.dependenciesMeta,this.peerDependenciesMeta.size>0?t.peerDependenciesMeta=Object.assign({},...vgt.sortMap(this.peerDependenciesMeta.entries(),([o,l])=>o).map(([o,l])=>({[o]:l}))):delete t.peerDependenciesMeta,this.resolutions.length>0?t.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:l})=>({[(0,Rxn.stringifyResolution)(o)]:l}))):delete t.resolutions,this.files!==null?t.files=Array.from(this.files):delete t.files,this.preferUnplugged!==null?t.preferUnplugged=this.preferUnplugged:delete t.preferUnplugged,this.scripts!==null&&this.scripts.size>0){t.scripts??={};for(let o of Object.keys(t.scripts))this.scripts.has(o)||delete t.scripts[o];for(let[o,l]of this.scripts.entries())t.scripts[o]=l}else delete t.scripts;return t}};wgt.Manifest=Dve;Dve.fileName="package.json";Dve.allDependencies=["dependencies","devDependencies","peerDependencies"];Dve.hardDependencies=["dependencies","devDependencies"];function Nxn(e){let t=e.match(/^[ \t]+/m);return t?t[0]:" "}function Dxn(e){return e.charCodeAt(0)===65279?e.slice(1):e}function kZ(e){return e.replace(/\\/g,"/")}function Sgt(e,{yamlCompatibilityMode:t}){return t?vgt.tryParseOptionalBoolean(e):typeof e>"u"||typeof e=="boolean"?e:null}function kxn(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let n=r%2===0?"":"!",a=t.slice(r);return`${n}${e}=${a}`}function Yur(e,t){return t.length===1?kxn(e,t[0]):`(${t.map(r=>kxn(e,r)).join(" | ")})`}});var dM=H(dIe=>{"use strict";Object.defineProperty(dIe,"__esModule",{value:!0});dIe.Report=dIe.ReportError=void 0;dIe.isReportError=xxn;var XZo=WO(),JZo=Et("stream"),UZo=Et("string_decoder"),KZo=U9(),jZo=15,Qur=class extends Error{constructor(t,r,n){super(r),this.reportExtra=n,this.reportCode=t}};dIe.ReportError=Qur;function xxn(e){return typeof e.reportCode<"u"}var Xur=class{constructor(){this.cacheHits=new Set,this.cacheMisses=new Set,this.reportedInfos=new Set,this.reportedWarnings=new Set,this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(t){this.cacheHits.add(t.locatorHash)}reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}static progressViaCounter(t){let r=0,n,a=new Promise(f=>{n=f}),o=f=>{let I=n;a=new Promise(C=>{n=C}),r=f,I()},l=(f=0)=>{o(r+1)},A=async function*(){for(;r{r=l}),a=(0,XZo.throttle)(l=>{let A=r;n=new Promise(f=>{r=f}),t=l,A()},1e3/jZo),o=async function*(){for(;;)await n,yield{title:t}}();return{[Symbol.asyncIterator](){return o},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(t,r){let n=this.reportProgress(t);try{return await r(t)}finally{n.stop()}}startProgressSync(t,r){let n=this.reportProgress(t);try{return r(t)}finally{n.stop()}}reportInfoOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(t,r),n?.reportExtra?.(this))}reportWarningOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(t,r),n?.reportExtra?.(this))}reportErrorOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(t,r),n?.reportExtra?.(this))}reportExceptionOnce(t){xxn(t)?this.reportErrorOnce(t.reportCode,t.message,{key:t,reportExtra:t.reportExtra}):this.reportErrorOnce(KZo.MessageName.EXCEPTION,t.stack||t.message,{key:t})}createStreamReporter(t=null){let r=new JZo.PassThrough,n=new UZo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` -`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",t!==null?this.reportInfo(null,`${t} ${f}`):this.reportInfo(null,f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&(t!==null?this.reportInfo(null,`${t} ${o}`):this.reportInfo(null,o))}),r}};dIe.Report=Xur});var Uur=H(Tgt=>{"use strict";Object.defineProperty(Tgt,"__esModule",{value:!0});Tgt.MultiFetcher=void 0;var zZo=(Wa(),vi(Va)),qZo=U9(),$Zo=dM(),eLo=zZo.__importStar(fG()),Jur=class{constructor(t){this.fetchers=t}supports(t,r){return!!this.tryFetcher(t,r)}getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}tryFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));return n||null}getFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));if(!n)throw new $Zo.ReportError(qZo.MessageName.FETCHER_NOT_FOUND,`${eLo.prettyLocator(r.project.configuration,t)} isn't supported by any available fetcher`);return n}};Tgt.MultiFetcher=Jur});var jur=H(Rgt=>{"use strict";Object.defineProperty(Rgt,"__esModule",{value:!0});Rgt.MultiResolver=void 0;var tLo=(Wa(),vi(Va)),Gxn=tLo.__importStar(fG()),Kur=class{constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${Gxn.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${Gxn.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};Rgt.MultiResolver=Kur});var egr=H(Ngt=>{"use strict";Object.defineProperty(Ngt,"__esModule",{value:!0});Ngt.VirtualFetcher=void 0;var rLo=(Wa(),vi(Va)),zur=Io(),qur=rLo.__importStar(fG()),$ur=class{supports(t){return!!t.reference.startsWith("virtual:")}getLocalPath(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=qur.makeLocator(t,a);return r.fetcher.getLocalPath(o,r)}async fetch(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=qur.makeLocator(t,a),l=await r.fetcher.fetch(o,r);return await this.ensureVirtualLink(t,l,r)}getLocatorFilename(t){return qur.slugifyLocator(t)}async ensureVirtualLink(t,r,n){let a=r.packageFs.getRealPath(),o=n.project.configuration.get("virtualFolder"),l=this.getLocatorFilename(t),A=zur.VirtualFS.makeVirtualPath(o,l,a),f=new zur.AliasFS(A,{baseFs:r.packageFs,pathUtils:zur.ppath});return{...r,packageFs:f}}};Ngt.VirtualFetcher=$ur});var Fxn=H(kgt=>{"use strict";Object.defineProperty(kgt,"__esModule",{value:!0});kgt.VirtualResolver=void 0;var Dgt=class e{static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};kgt.VirtualResolver=Dgt;Dgt.protocol="virtual:"});var rgr=H(xgt=>{"use strict";Object.defineProperty(xgt,"__esModule",{value:!0});xgt.WorkspaceFetcher=void 0;var Zxn=Io(),Lxn=AIe(),tgr=class{supports(t){return!!t.reference.startsWith(Lxn.WorkspaceResolver.protocol)}getLocalPath(t,r){return this.getWorkspace(t,r).cwd}async fetch(t,r){let n=this.getWorkspace(t,r).cwd;return{packageFs:new Zxn.CwdFS(n),prefixPath:Zxn.PortablePath.dot,localPath:n}}getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(Lxn.WorkspaceResolver.protocol.length))}};xgt.WorkspaceFetcher=tgr});var Oxn=H(o8=>{"use strict";Object.defineProperty(o8,"__esModule",{value:!0});o8.RESOLVED_RC_FILE=void 0;o8.resolveRcFiles=oLo;o8.getValue=aLo;o8.getValueByTree=sgr;o8.getSource=cLo;var nLo=(e,t,r)=>{let n=[...e];return n.reverse(),n.findIndex(t,r)};function E5e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var pM;(function(e){e[e.Object=0]="Object",e[e.Array=1]="Array",e[e.Literal=2]="Literal",e[e.Undefined=3]="Undefined"})(pM||(pM={}));function Vxn(e){return typeof e>"u"?pM.Undefined:E5e(e)?pM.Object:Array.isArray(e)?pM.Array:pM.Literal}function ogr(e,t){return Object.hasOwn(e,t)}function iLo(e){return E5e(e)&&ogr(e,"onConflict")&&typeof e.onConflict=="string"}function sLo(e){if(typeof e>"u")return{onConflict:"default",value:e};if(!iLo(e))return{onConflict:"default",value:e};if(ogr(e,"value"))return e;let{onConflict:t,...r}=e;return{onConflict:t,value:r}}function Wxn(e,t){let r=E5e(e)&&ogr(e,t)?e[t]:void 0;return sLo(r)}o8.RESOLVED_RC_FILE=Symbol();function xve(e,t){return[e,t,o8.RESOLVED_RC_FILE]}function agr(e){return Array.isArray(e)?e[2]===o8.RESOLVED_RC_FILE:!1}function ngr(e,t){if(E5e(e)){let r={};for(let n of Object.keys(e))r[n]=ngr(e[n],t);return xve(t,r)}return Array.isArray(e)?xve(t,e.map(r=>ngr(r,t))):xve(t,e)}function igr(e,t,r,n,a){let o,l=[],A=a,f=0;for(let C=a-1;C>=n;--C){let[b,E]=e[C],{onConflict:N,value:B}=Wxn(E,r),F=Vxn(B);if(F!==pM.Undefined){if(o??=F,F!==o||N==="hardReset"){f=A;break}if(F===pM.Literal)return xve(b,B);if(l.unshift([b,B]),N==="reset"){f=C;break}N==="extend"&&C===n&&(n=0),A=C}}if(typeof o>"u")return null;let I=l.map(([C])=>C).join(", ");switch(o){case pM.Array:return xve(I,new Array().concat(...l.map(([C,b])=>b.map(E=>ngr(E,C)))));case pM.Object:{let C=Object.assign({},...l.map(([,F])=>F)),b=Object.keys(C),E={},N=e.map(([F,Q])=>[F,Wxn(Q,r).value]),B=nLo(N,([F,Q])=>{let J=Vxn(Q);return J!==pM.Object&&J!==pM.Undefined});if(B!==-1){let F=N.slice(B+1);for(let Q of b)E[Q]=igr(F,t,Q,0,F.length)}else for(let F of b)E[F]=igr(N,t,F,f,N.length);return xve(I,E)}default:throw new Error("Assertion failed: Non-extendable value type")}}function oLo(e){return igr(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}function aLo(e){return agr(e)?e[1]:e}function sgr(e){let t=agr(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>sgr(r));if(E5e(t)){let r={};for(let[n,a]of Object.entries(t))r[n]=sgr(a);return r}return t}function cLo(e){return agr(e)?e[0]:null}});var Ggt=H(S5e=>{"use strict";Object.defineProperty(S5e,"__esModule",{value:!0});S5e.getDefaultGlobalFolder=lLo;S5e.getHomeFolder=Mxn;S5e.isFolderInside=uLo;var m$=Io(),Pxn=Et("os");function lLo(){if(process.platform==="win32"){let e=m$.npath.toPortablePath(process.env.LOCALAPPDATA||m$.npath.join((0,Pxn.homedir)(),"AppData","Local"));return m$.ppath.resolve(e,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let e=m$.npath.toPortablePath(process.env.XDG_DATA_HOME);return m$.ppath.resolve(e,"yarn/berry")}return m$.ppath.resolve(Mxn(),".yarn/berry")}function Mxn(){return m$.npath.toPortablePath((0,Pxn.homedir)()||"/usr/local/share")}function uLo(e,t){let r=m$.ppath.relative(t,e);return r&&!r.startsWith("..")&&!m$.ppath.isAbsolute(r)}});var Qxn=H((hKl,Yxn)=>{"use strict";var cgr=Et("https"),lgr=Et("http"),{URL:Hxn}=Et("url"),ugr=class extends lgr.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new Hxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?lgr:cgr).request(n);a.once("connect",(o,l,A)=>{a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200?r(null,l):(l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null))}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}},ggr=class extends cgr.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new Hxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?lgr:cgr).request(n);a.once("connect",(o,l,A)=>{if(a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200){let f=super.createConnection({...t,socket:l});r(null,f)}else l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null)}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}};Yxn.exports={HttpProxyAgent:ugr,HttpsProxyAgent:ggr}});var _$=H((C$,Fgt)=>{"use strict";Object.defineProperty(C$,"__esModule",{value:!0});var Xxn=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function gLo(e){return Xxn.includes(e)}var ALo=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...Xxn];function dLo(e){return ALo.includes(e)}var pLo=["null","undefined","string","number","bigint","boolean","symbol"];function fLo(e){return pLo.includes(e)}function Gve(e){return t=>typeof t===e}var{toString:Jxn}=Object.prototype,v5e=e=>{let t=Jxn.call(e).slice(8,-1);if(/HTML\w+Element/.test(t)&&Xi.domElement(e))return"HTMLElement";if(dLo(t))return t},Kb=e=>t=>v5e(t)===e;function Xi(e){if(e===null)return"null";switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(Xi.observable(e))return"Observable";if(Xi.array(e))return"Array";if(Xi.buffer(e))return"Buffer";let t=v5e(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}Xi.undefined=Gve("undefined");Xi.string=Gve("string");var ILo=Gve("number");Xi.number=e=>ILo(e)&&!Xi.nan(e);Xi.bigint=Gve("bigint");Xi.function_=Gve("function");Xi.null_=e=>e===null;Xi.class_=e=>Xi.function_(e)&&e.toString().startsWith("class ");Xi.boolean=e=>e===!0||e===!1;Xi.symbol=Gve("symbol");Xi.numericString=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e)&&!Number.isNaN(Number(e));Xi.array=(e,t)=>Array.isArray(e)?Xi.function_(t)?e.every(t):!0:!1;Xi.buffer=e=>{var t,r,n,a;return(a=(n=(r=(t=e)===null||t===void 0?void 0:t.constructor)===null||r===void 0?void 0:r.isBuffer)===null||n===void 0?void 0:n.call(r,e))!==null&&a!==void 0?a:!1};Xi.blob=e=>Kb("Blob")(e);Xi.nullOrUndefined=e=>Xi.null_(e)||Xi.undefined(e);Xi.object=e=>!Xi.null_(e)&&(typeof e=="object"||Xi.function_(e));Xi.iterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.iterator])};Xi.asyncIterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.asyncIterator])};Xi.generator=e=>{var t,r;return Xi.iterable(e)&&Xi.function_((t=e)===null||t===void 0?void 0:t.next)&&Xi.function_((r=e)===null||r===void 0?void 0:r.throw)};Xi.asyncGenerator=e=>Xi.asyncIterable(e)&&Xi.function_(e.next)&&Xi.function_(e.throw);Xi.nativePromise=e=>Kb("Promise")(e);var hLo=e=>{var t,r;return Xi.function_((t=e)===null||t===void 0?void 0:t.then)&&Xi.function_((r=e)===null||r===void 0?void 0:r.catch)};Xi.promise=e=>Xi.nativePromise(e)||hLo(e);Xi.generatorFunction=Kb("GeneratorFunction");Xi.asyncGeneratorFunction=e=>v5e(e)==="AsyncGeneratorFunction";Xi.asyncFunction=e=>v5e(e)==="AsyncFunction";Xi.boundFunction=e=>Xi.function_(e)&&!e.hasOwnProperty("prototype");Xi.regExp=Kb("RegExp");Xi.date=Kb("Date");Xi.error=Kb("Error");Xi.map=e=>Kb("Map")(e);Xi.set=e=>Kb("Set")(e);Xi.weakMap=e=>Kb("WeakMap")(e);Xi.weakSet=e=>Kb("WeakSet")(e);Xi.int8Array=Kb("Int8Array");Xi.uint8Array=Kb("Uint8Array");Xi.uint8ClampedArray=Kb("Uint8ClampedArray");Xi.int16Array=Kb("Int16Array");Xi.uint16Array=Kb("Uint16Array");Xi.int32Array=Kb("Int32Array");Xi.uint32Array=Kb("Uint32Array");Xi.float32Array=Kb("Float32Array");Xi.float64Array=Kb("Float64Array");Xi.bigInt64Array=Kb("BigInt64Array");Xi.bigUint64Array=Kb("BigUint64Array");Xi.arrayBuffer=Kb("ArrayBuffer");Xi.sharedArrayBuffer=Kb("SharedArrayBuffer");Xi.dataView=Kb("DataView");Xi.enumCase=(e,t)=>Object.values(t).includes(e);Xi.directInstanceOf=(e,t)=>Object.getPrototypeOf(e)===t.prototype;Xi.urlInstance=e=>Kb("URL")(e);Xi.urlString=e=>{if(!Xi.string(e))return!1;try{return new URL(e),!0}catch{return!1}};Xi.truthy=e=>!!e;Xi.falsy=e=>!e;Xi.nan=e=>Number.isNaN(e);Xi.primitive=e=>Xi.null_(e)||fLo(typeof e);Xi.integer=e=>Number.isInteger(e);Xi.safeInteger=e=>Number.isSafeInteger(e);Xi.plainObject=e=>{if(Jxn.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.getPrototypeOf({})};Xi.typedArray=e=>gLo(v5e(e));var mLo=e=>Xi.safeInteger(e)&&e>=0;Xi.arrayLike=e=>!Xi.nullOrUndefined(e)&&!Xi.function_(e)&&mLo(e.length);Xi.inRange=(e,t)=>{if(Xi.number(t))return e>=Math.min(0,t)&&e<=Math.max(t,0);if(Xi.array(t)&&t.length===2)return e>=Math.min(...t)&&e<=Math.max(...t);throw new TypeError(`Invalid range: ${JSON.stringify(t)}`)};var CLo=1,_Lo=["innerHTML","ownerDocument","style","attributes","nodeValue"];Xi.domElement=e=>Xi.object(e)&&e.nodeType===CLo&&Xi.string(e.nodeName)&&!Xi.plainObject(e)&&_Lo.every(t=>t in e);Xi.observable=e=>{var t,r,n,a;return e?e===((r=(t=e)[Symbol.observable])===null||r===void 0?void 0:r.call(t))||e===((a=(n=e)["@@observable"])===null||a===void 0?void 0:a.call(n)):!1};Xi.nodeStream=e=>Xi.object(e)&&Xi.function_(e.pipe)&&!Xi.observable(e);Xi.infinite=e=>e===1/0||e===-1/0;var Uxn=e=>t=>Xi.integer(t)&&Math.abs(t%2)===e;Xi.evenInteger=Uxn(0);Xi.oddInteger=Uxn(1);Xi.emptyArray=e=>Xi.array(e)&&e.length===0;Xi.nonEmptyArray=e=>Xi.array(e)&&e.length>0;Xi.emptyString=e=>Xi.string(e)&&e.length===0;var yLo=e=>Xi.string(e)&&!/\S/.test(e);Xi.emptyStringOrWhitespace=e=>Xi.emptyString(e)||yLo(e);Xi.nonEmptyString=e=>Xi.string(e)&&e.length>0;Xi.nonEmptyStringAndNotWhitespace=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e);Xi.emptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length===0;Xi.nonEmptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length>0;Xi.emptySet=e=>Xi.set(e)&&e.size===0;Xi.nonEmptySet=e=>Xi.set(e)&&e.size>0;Xi.emptyMap=e=>Xi.map(e)&&e.size===0;Xi.nonEmptyMap=e=>Xi.map(e)&&e.size>0;Xi.propertyKey=e=>Xi.any([Xi.string,Xi.number,Xi.symbol],e);Xi.formData=e=>Kb("FormData")(e);Xi.urlSearchParams=e=>Kb("URLSearchParams")(e);var Kxn=(e,t,r)=>{if(!Xi.function_(t))throw new TypeError(`Invalid predicate: ${JSON.stringify(t)}`);if(r.length===0)throw new TypeError("Invalid number of values");return e.call(r,t)};Xi.any=(e,...t)=>(Xi.array(e)?e:[e]).some(n=>Kxn(Array.prototype.some,n,t));Xi.all=(e,...t)=>Kxn(Array.prototype.every,e,t);var Mu=(e,t,r,n={})=>{if(!e){let{multipleValues:a}=n,o=a?`received values of types ${[...new Set(r.map(l=>`\`${Xi(l)}\``))].join(", ")}`:`received value of type \`${Xi(r)}\``;throw new TypeError(`Expected value which is \`${t}\`, ${o}.`)}};C$.assert={undefined:e=>Mu(Xi.undefined(e),"undefined",e),string:e=>Mu(Xi.string(e),"string",e),number:e=>Mu(Xi.number(e),"number",e),bigint:e=>Mu(Xi.bigint(e),"bigint",e),function_:e=>Mu(Xi.function_(e),"Function",e),null_:e=>Mu(Xi.null_(e),"null",e),class_:e=>Mu(Xi.class_(e),"Class",e),boolean:e=>Mu(Xi.boolean(e),"boolean",e),symbol:e=>Mu(Xi.symbol(e),"symbol",e),numericString:e=>Mu(Xi.numericString(e),"string with a number",e),array:(e,t)=>{Mu(Xi.array(e),"Array",e),t&&e.forEach(t)},buffer:e=>Mu(Xi.buffer(e),"Buffer",e),blob:e=>Mu(Xi.blob(e),"Blob",e),nullOrUndefined:e=>Mu(Xi.nullOrUndefined(e),"null or undefined",e),object:e=>Mu(Xi.object(e),"Object",e),iterable:e=>Mu(Xi.iterable(e),"Iterable",e),asyncIterable:e=>Mu(Xi.asyncIterable(e),"AsyncIterable",e),generator:e=>Mu(Xi.generator(e),"Generator",e),asyncGenerator:e=>Mu(Xi.asyncGenerator(e),"AsyncGenerator",e),nativePromise:e=>Mu(Xi.nativePromise(e),"native Promise",e),promise:e=>Mu(Xi.promise(e),"Promise",e),generatorFunction:e=>Mu(Xi.generatorFunction(e),"GeneratorFunction",e),asyncGeneratorFunction:e=>Mu(Xi.asyncGeneratorFunction(e),"AsyncGeneratorFunction",e),asyncFunction:e=>Mu(Xi.asyncFunction(e),"AsyncFunction",e),boundFunction:e=>Mu(Xi.boundFunction(e),"Function",e),regExp:e=>Mu(Xi.regExp(e),"RegExp",e),date:e=>Mu(Xi.date(e),"Date",e),error:e=>Mu(Xi.error(e),"Error",e),map:e=>Mu(Xi.map(e),"Map",e),set:e=>Mu(Xi.set(e),"Set",e),weakMap:e=>Mu(Xi.weakMap(e),"WeakMap",e),weakSet:e=>Mu(Xi.weakSet(e),"WeakSet",e),int8Array:e=>Mu(Xi.int8Array(e),"Int8Array",e),uint8Array:e=>Mu(Xi.uint8Array(e),"Uint8Array",e),uint8ClampedArray:e=>Mu(Xi.uint8ClampedArray(e),"Uint8ClampedArray",e),int16Array:e=>Mu(Xi.int16Array(e),"Int16Array",e),uint16Array:e=>Mu(Xi.uint16Array(e),"Uint16Array",e),int32Array:e=>Mu(Xi.int32Array(e),"Int32Array",e),uint32Array:e=>Mu(Xi.uint32Array(e),"Uint32Array",e),float32Array:e=>Mu(Xi.float32Array(e),"Float32Array",e),float64Array:e=>Mu(Xi.float64Array(e),"Float64Array",e),bigInt64Array:e=>Mu(Xi.bigInt64Array(e),"BigInt64Array",e),bigUint64Array:e=>Mu(Xi.bigUint64Array(e),"BigUint64Array",e),arrayBuffer:e=>Mu(Xi.arrayBuffer(e),"ArrayBuffer",e),sharedArrayBuffer:e=>Mu(Xi.sharedArrayBuffer(e),"SharedArrayBuffer",e),dataView:e=>Mu(Xi.dataView(e),"DataView",e),enumCase:(e,t)=>Mu(Xi.enumCase(e,t),"EnumCase",e),urlInstance:e=>Mu(Xi.urlInstance(e),"URL",e),urlString:e=>Mu(Xi.urlString(e),"string with a URL",e),truthy:e=>Mu(Xi.truthy(e),"truthy",e),falsy:e=>Mu(Xi.falsy(e),"falsy",e),nan:e=>Mu(Xi.nan(e),"NaN",e),primitive:e=>Mu(Xi.primitive(e),"primitive",e),integer:e=>Mu(Xi.integer(e),"integer",e),safeInteger:e=>Mu(Xi.safeInteger(e),"integer",e),plainObject:e=>Mu(Xi.plainObject(e),"plain object",e),typedArray:e=>Mu(Xi.typedArray(e),"TypedArray",e),arrayLike:e=>Mu(Xi.arrayLike(e),"array-like",e),domElement:e=>Mu(Xi.domElement(e),"HTMLElement",e),observable:e=>Mu(Xi.observable(e),"Observable",e),nodeStream:e=>Mu(Xi.nodeStream(e),"Node.js Stream",e),infinite:e=>Mu(Xi.infinite(e),"infinite number",e),emptyArray:e=>Mu(Xi.emptyArray(e),"empty array",e),nonEmptyArray:e=>Mu(Xi.nonEmptyArray(e),"non-empty array",e),emptyString:e=>Mu(Xi.emptyString(e),"empty string",e),emptyStringOrWhitespace:e=>Mu(Xi.emptyStringOrWhitespace(e),"empty string or whitespace",e),nonEmptyString:e=>Mu(Xi.nonEmptyString(e),"non-empty string",e),nonEmptyStringAndNotWhitespace:e=>Mu(Xi.nonEmptyStringAndNotWhitespace(e),"non-empty string and not whitespace",e),emptyObject:e=>Mu(Xi.emptyObject(e),"empty object",e),nonEmptyObject:e=>Mu(Xi.nonEmptyObject(e),"non-empty object",e),emptySet:e=>Mu(Xi.emptySet(e),"empty set",e),nonEmptySet:e=>Mu(Xi.nonEmptySet(e),"non-empty set",e),emptyMap:e=>Mu(Xi.emptyMap(e),"empty map",e),nonEmptyMap:e=>Mu(Xi.nonEmptyMap(e),"non-empty map",e),propertyKey:e=>Mu(Xi.propertyKey(e),"PropertyKey",e),formData:e=>Mu(Xi.formData(e),"FormData",e),urlSearchParams:e=>Mu(Xi.urlSearchParams(e),"URLSearchParams",e),evenInteger:e=>Mu(Xi.evenInteger(e),"even integer",e),oddInteger:e=>Mu(Xi.oddInteger(e),"odd integer",e),directInstanceOf:(e,t)=>Mu(Xi.directInstanceOf(e,t),"T",e),inRange:(e,t)=>Mu(Xi.inRange(e,t),"in range",e),any:(e,...t)=>Mu(Xi.any(e,...t),"predicate returns truthy for any value",t,{multipleValues:!0}),all:(e,...t)=>Mu(Xi.all(e,...t),"predicate returns truthy for all values",t,{multipleValues:!0})};Object.defineProperties(Xi,{class:{value:Xi.class_},function:{value:Xi.function_},null:{value:Xi.null_}});Object.defineProperties(C$.assert,{class:{value:C$.assert.class_},function:{value:C$.assert.function_},null:{value:C$.assert.null_}});C$.default=Xi;Fgt.exports=Xi;Fgt.exports.default=Xi;Fgt.exports.assert=C$.assert});var jxn=H((mKl,Agr)=>{"use strict";var Zgt=class extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},Lgt=class e{static fn(t){return(...r)=>new e((n,a,o)=>{r.push(o),t(...r).then(n,a)})}constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,n)=>{this._reject=n;let a=A=>{(!this._isCanceled||!l.shouldReject)&&(this._isPending=!1,r(A))},o=A=>{this._isPending=!1,n(A)},l=A=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(A)};return Object.defineProperties(l,{shouldReject:{get:()=>this._rejectOnCancel,set:A=>{this._rejectOnCancel=A}}}),t(a,o,l)})}then(t,r){return this._promise.then(t,r)}catch(t){return this._promise.catch(t)}finally(t){return this._promise.finally(t)}cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r);return}this._rejectOnCancel&&this._reject(new Zgt(t))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(Lgt.prototype,Promise.prototype);Agr.exports=Lgt;Agr.exports.CancelError=Zgt});var zxn=H((pgr,fgr)=>{"use strict";Object.defineProperty(pgr,"__esModule",{value:!0});function bLo(e){return e.encrypted}var dgr=(e,t)=>{let r;typeof t=="function"?r={connect:t}:r=t;let n=typeof r.connect=="function",a=typeof r.secureConnect=="function",o=typeof r.close=="function",l=()=>{n&&r.connect(),bLo(e)&&a&&(e.authorized?r.secureConnect():e.authorizationError||e.once("secureConnect",r.secureConnect)),o&&e.once("close",r.close)};e.writable&&!e.connecting?l():e.connecting?e.once("connect",l):e.destroyed&&o&&r.close(e._hadError)};pgr.default=dgr;fgr.exports=dgr;fgr.exports.default=dgr});var qxn=H((hgr,mgr)=>{"use strict";Object.defineProperty(hgr,"__esModule",{value:!0});var ELo=zxn(),SLo=Et("util"),vLo=Number(process.versions.node.split(".")[0]),Igr=e=>{if(e.timings)return e.timings;let t={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};e.timings=t;let r=A=>{let f=A.emit.bind(A);A.emit=(I,...C)=>(I==="error"&&(t.error=Date.now(),t.phases.total=t.error-t.start,A.emit=f),f(I,...C))};r(e);let n=()=>{t.abort=Date.now(),(!t.response||vLo>=13)&&(t.phases.total=Date.now()-t.start)};e.prependOnceListener("abort",n);let a=A=>{if(t.socket=Date.now(),t.phases.wait=t.socket-t.start,SLo.types.isProxy(A))return;let f=()=>{t.lookup=Date.now(),t.phases.dns=t.lookup-t.socket};A.prependOnceListener("lookup",f),ELo.default(A,{connect:()=>{t.connect=Date.now(),t.lookup===void 0&&(A.removeListener("lookup",f),t.lookup=t.connect,t.phases.dns=t.lookup-t.socket),t.phases.tcp=t.connect-t.lookup},secureConnect:()=>{t.secureConnect=Date.now(),t.phases.tls=t.secureConnect-t.connect}})};e.socket?a(e.socket):e.prependOnceListener("socket",a);let o=()=>{var A;t.upload=Date.now(),t.phases.request=t.upload-((A=t.secureConnect)!==null&&A!==void 0?A:t.connect)};return(typeof e.writableFinished=="boolean"?e.writableFinished:e.finished&&e.outputSize===0&&(!e.socket||e.socket.writableLength===0))?o():e.prependOnceListener("finish",o),e.prependOnceListener("response",A=>{t.response=Date.now(),t.phases.firstByte=t.response-t.upload,A.timings=t,r(A),A.prependOnceListener("end",()=>{t.end=Date.now(),t.phases.download=t.end-t.response,t.phases.total=t.end-t.start}),A.prependOnceListener("aborted",n)}),t};hgr.default=Igr;mgr.exports=Igr;mgr.exports.default=Igr});var sGn=H((CKl,ygr)=>{"use strict";var{V4MAPPED:BLo,ADDRCONFIG:wLo,ALL:iGn,promises:{Resolver:$xn},lookup:TLo}=Et("dns"),{promisify:Cgr}=Et("util"),RLo=Et("os"),Fve=Symbol("cacheableLookupCreateConnection"),_gr=Symbol("cacheableLookupInstance"),eGn=Symbol("expires"),NLo=typeof iGn=="number",tGn=e=>{if(!(e&&typeof e.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},DLo=e=>{for(let t of e)t.family!==6&&(t.address=`::ffff:${t.address}`,t.family=6)},rGn=()=>{let e=!1,t=!1;for(let r of Object.values(RLo.networkInterfaces()))for(let n of r)if(!n.internal&&(n.family==="IPv6"?t=!0:e=!0,e&&t))return{has4:e,has6:t};return{has4:e,has6:t}},kLo=e=>Symbol.iterator in e,nGn={ttl:!0},xLo={all:!0},Vgt=class{constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:n=3600,errorTtl:a=.15,resolver:o=new $xn,lookup:l=TLo}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=t,this._resolver=o,this._dnsLookup=Cgr(l),this._resolver instanceof $xn?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Cgr(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Cgr(this._resolver.resolve6.bind(this._resolver))),this._iface=rGn(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,n<1)this._fallback=!1;else{this._fallback=!0;let A=setInterval(()=>{this._hostnamesToFallback.clear()},n*1e3);A.unref&&A.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(t){this.clear(),this._resolver.setServers(t)}get servers(){return this._resolver.getServers()}lookup(t,r,n){if(typeof r=="function"?(n=r,r={}):typeof r=="number"&&(r={family:r}),!n)throw new Error("Callback must be a function.");this.lookupAsync(t,r).then(a=>{r.all?n(null,a):n(null,a.address,a.family,a.expires,a.ttl)},n)}async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let n=await this.query(t);if(r.family===6){let a=n.filter(o=>o.family===6);r.hints&BLo&&(NLo&&r.hints&iGn||a.length===0)?DLo(n):n=a}else r.family===4&&(n=n.filter(a=>a.family===4));if(r.hints&wLo){let{_iface:a}=this;n=n.filter(o=>o.family===6?a.has6:a.has4)}if(n.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${t}`);throw a.code="ENOTFOUND",a.hostname=t,a}return r.all?n:n[0]}async query(t){let r=await this._cache.get(t);if(!r){let n=this._pending[t];if(n)r=await n;else{let a=this.queryAndCache(t);this._pending[t]=a;try{r=await a}finally{delete this._pending[t]}}}return r=r.map(n=>({...n})),r}async _resolve(t){let r=async I=>{try{return await I}catch(C){if(C.code==="ENODATA"||C.code==="ENOTFOUND")return[];throw C}},[n,a]=await Promise.all([this._resolve4(t,nGn),this._resolve6(t,nGn)].map(I=>r(I))),o=0,l=0,A=0,f=Date.now();for(let I of n)I.family=4,I.expires=f+I.ttl*1e3,o=Math.max(o,I.ttl);for(let I of a)I.family=6,I.expires=f+I.ttl*1e3,l=Math.max(l,I.ttl);return n.length>0?a.length>0?A=Math.min(o,l):A=o:A=l,{entries:[...n,...a],cacheTtl:A}}async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(t,r,n){if(this.maxTtl>0&&n>0){n=Math.min(n,this.maxTtl)*1e3,r[eGn]=Date.now()+n;try{await this._cache.set(t,r,n)}catch(a){this.lookupAsync=async()=>{let o=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw o.cause=a,o}}kLo(this._cache)&&this._tick(n)}}async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._dnsLookup(t,xLo);let r=await this._resolve(t);r.entries.length===0&&this._fallback&&(r=await this._lookup(t),r.entries.length!==0&&this._hostnamesToFallback.add(t));let n=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(t,r.entries,n),r.entries}_tick(t){let r=this._nextRemovalTime;(!r||t{this._nextRemovalTime=!1;let n=1/0,a=Date.now();for(let[o,l]of this._cache){let A=l[eGn];a>=A?this._cache.delete(o):A("lookup"in r||(r.lookup=this.lookup),t[Fve](r,n))}uninstall(t){if(tGn(t),t[Fve]){if(t[_gr]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");t.createConnection=t[Fve],delete t[Fve],delete t[_gr]}}updateInterfaceInfo(){let{_iface:t}=this;this._iface=rGn(),(t.has4&&!this._iface.has4||t.has6&&!this._iface.has6)&&this._cache.clear()}clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}};ygr.exports=Vgt;ygr.exports.default=Vgt});var cGn=H((_Kl,aGn)=>{"use strict";var GLo="text/plain",FLo="us-ascii",oGn=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),ZLo=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===FLo)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length!==0||f&&f!==GLo)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`},LLo=(e,t)=>{if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return ZLo(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname&&(a.pathname=a.pathname.replace(/(?0){let l=a.pathname.split("/"),A=l[l.length-1];oGn(A,t.removeDirectoryIndex)&&(l=l.slice(0,l.length-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])oGn(l,t.removeQueryParameters)&&a.searchParams.delete(l);t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters&&a.searchParams.sort(),t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e};aGn.exports=LLo});var gGn=H((yKl,uGn)=>{uGn.exports=lGn;function lGn(e,t){if(e&&t)return lGn(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(n){r[n]=e[n]}),r;function r(){for(var n=new Array(arguments.length),a=0;a{var AGn=gGn();bgr.exports=AGn(Wgt);bgr.exports.strict=AGn(dGn);Wgt.proto=Wgt(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return Wgt(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return dGn(this)},configurable:!0})});function Wgt(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function dGn(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});var Egr=H((EKl,fGn)=>{var VLo=Ogt(),WLo=function(){},OLo=function(e){return e.setHeader&&typeof e.abort=="function"},PLo=function(e){return e.stdio&&Array.isArray(e.stdio)&&e.stdio.length===3},pGn=function(e,t,r){if(typeof t=="function")return pGn(e,null,t);t||(t={}),r=VLo(r||WLo);var n=e._writableState,a=e._readableState,o=t.readable||t.readable!==!1&&e.readable,l=t.writable||t.writable!==!1&&e.writable,A=!1,f=function(){e.writable||I()},I=function(){l=!1,o||r.call(e)},C=function(){o=!1,l||r.call(e)},b=function(Q){r.call(e,Q?new Error("exited with error code: "+Q):null)},E=function(Q){r.call(e,Q)},N=function(){process.nextTick(B)},B=function(){if(!A){if(o&&!(a&&a.ended&&!a.destroyed))return r.call(e,new Error("premature close"));if(l&&!(n&&n.ended&&!n.destroyed))return r.call(e,new Error("premature close"))}},F=function(){e.req.on("finish",I)};return OLo(e)?(e.on("complete",I),e.on("abort",N),e.req?F():e.on("request",F)):l&&!n&&(e.on("end",f),e.on("close",f)),PLo(e)&&e.on("exit",b),e.on("end",C),e.on("finish",I),t.error!==!1&&e.on("error",E),e.on("close",N),function(){A=!0,e.removeListener("complete",I),e.removeListener("abort",N),e.removeListener("request",F),e.req&&e.req.removeListener("finish",I),e.removeListener("end",f),e.removeListener("close",f),e.removeListener("finish",I),e.removeListener("exit",b),e.removeListener("end",C),e.removeListener("error",E),e.removeListener("close",N)}};fGn.exports=pGn});var mGn=H((SKl,hGn)=>{var MLo=Ogt(),HLo=Egr(),Pgt;try{Pgt=Et("fs")}catch{}var B5e=function(){},YLo=/^v?\.0/.test(process.version),Mgt=function(e){return typeof e=="function"},QLo=function(e){return!YLo||!Pgt?!1:(e instanceof(Pgt.ReadStream||B5e)||e instanceof(Pgt.WriteStream||B5e))&&Mgt(e.close)},XLo=function(e){return e.setHeader&&Mgt(e.abort)},JLo=function(e,t,r,n){n=MLo(n);var a=!1;e.on("close",function(){a=!0}),HLo(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,QLo(e))return e.close(B5e);if(XLo(e))return e.abort();if(Mgt(e.destroy))return e.destroy();n(l||new Error("stream was destroyed"))}}},IGn=function(e){e()},ULo=function(e,t){return e.pipe(t)},KLo=function(){var e=Array.prototype.slice.call(arguments),t=Mgt(e[e.length-1]||B5e)&&e.pop()||B5e;if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new Error("pump requires two streams per minimum");var r,n=e.map(function(a,o){var l=o0;return JLo(a,l,A,function(f){r||(r=f),f&&n.forEach(IGn),!l&&(n.forEach(IGn),t(r))})});return e.reduce(ULo)};hGn.exports=KLo});var _Gn=H((vKl,CGn)=>{"use strict";var{PassThrough:jLo}=Et("stream");CGn.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,n=r==="buffer",a=!1;t?a=!(r||n):r=r||"utf8",n&&(r=null);let o=new jLo({objectMode:a});r&&o.setEncoding(r);let l=0,A=[];return o.on("data",f=>{A.push(f),a?l=A.length:l+=f.length}),o.getBufferedValue=()=>t?A:n?Buffer.concat(A,l):A.join(""),o.getBufferedLength=()=>l,o}});var yGn=H((BKl,Zve)=>{"use strict";var{constants:zLo}=Et("buffer"),qLo=mGn(),$Lo=_Gn(),Hgt=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function Ygt(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,n;return await new Promise((a,o)=>{let l=A=>{A&&n.getBufferedLength()<=zLo.MAX_LENGTH&&(A.bufferedData=n.getBufferedValue()),o(A)};n=qLo(e,$Lo(t),A=>{if(A){l(A);return}a()}),n.on("data",()=>{n.getBufferedLength()>r&&l(new Hgt)})}),n.getBufferedValue()}Zve.exports=Ygt;Zve.exports.default=Ygt;Zve.exports.buffer=(e,t)=>Ygt(e,{...t,encoding:"buffer"});Zve.exports.array=(e,t)=>Ygt(e,{...t,array:!0});Zve.exports.MaxBufferError=Hgt});var vgr=H((TKl,bGn)=>{"use strict";var e9o=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),t9o=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),r9o=new Set([500,502,503,504]),n9o={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},i9o={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function pIe(e){let t=parseInt(e,10);return isFinite(t)?t:0}function s9o(e){return e?r9o.has(e.status):!0}function Sgr(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let n of r){let[a,o]=n.split(/=/,2);t[a.trim()]=o===void 0?!0:o.trim().replace(/^"|"$/g,"")}return t}function o9o(e){let t=[];for(let r in e){let n=e[r];t.push(n===!0?r:r+"="+n)}if(t.length)return t.join(", ")}bGn.exports=class{constructor(t,r,{shared:n,cacheHeuristic:a,immutableMinTimeToLive:o,ignoreCargoCult:l,_fromObject:A}={}){if(A){this._fromObject(A);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(t),this._responseTime=this.now(),this._isShared=n!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=o!==void 0?o:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=Sgr(r.headers["cache-control"]),this._method="method"in t?t.method:"GET",this._url=t.url,this._host=t.headers.host,this._noAuthorization=!t.headers.authorization,this._reqHeaders=r.headers.vary?t.headers:null,this._reqcc=Sgr(t.headers["cache-control"]),l&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":o9o(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&t9o.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||e9o.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=Sgr(t.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(t.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(t,!1)}_requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host===t.headers.host&&(!t.method||this._method===t.method||r&&t.method==="HEAD")&&this._varyMatches(t)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let n of r)if(t.headers[n]!==this._reqHeaders[n])return!1;return!0}_copyWithoutHopByHopHeaders(t){let r={};for(let n in t)n9o[n]||(r[n]=t[n]);if(t.connection){let n=t.connection.trim().split(/\s*,\s*/);for(let a of n)delete r[a]}if(r.warning){let n=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));n.length?r.warning=n.join(",").trim():delete r.warning}return r}responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(t.warning=(t.warning?`${t.warning}, `:"")+'113 - "rfc7234 5.5.4"'),t.age=`${Math.round(r)}`,t.date=new Date(this.now()).toUTCString(),t}date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this._responseTime}age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return t+r}_ageValue(){return pIe(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return pIe(this._rescc["s-maxage"])}if(this._rescc["max-age"])return pIe(this._rescc["max-age"]);let t=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let n=Date.parse(this._resHeaders.expires);return Number.isNaN(n)||nn)return Math.max(t,(r-n)/1e3*this._cacheHeuristic)}return t}timeToLive(){let t=this.maxAge()-this.age(),r=t+pIe(this._rescc["stale-if-error"]),n=t+pIe(this._rescc["stale-while-revalidate"]);return Math.max(0,t,r,n)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+pIe(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+pIe(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}_fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t||t.v!==1)throw Error("Invalid serialization");this._responseTime=t.t,this._isShared=t.sh,this._cacheHeuristic=t.ch,this._immutableMinTtl=t.imm!==void 0?t.imm:24*3600*1e3,this._status=t.st,this._resHeaders=t.resh,this._rescc=t.rescc,this._method=t.m,this._url=t.u,this._host=t.h,this._noAuthorization=t.a,this._reqHeaders=t.reqh,this._reqcc=t.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copyWithoutHopByHopHeaders(t.headers);if(delete r["if-range"],!this._requestMatches(t,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let a=r["if-none-match"].split(/,/).filter(o=>!/^\s*W\//.test(o));a.length?r["if-none-match"]=a.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStaleIfError()&&s9o(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let n=!1;if(r.status!==void 0&&r.status!=304?n=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?n=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?n=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?n=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(n=!0),!n)return{policy:new this.constructor(t,r),modified:r.status!=304,matches:!1};let a={};for(let l in this._resHeaders)a[l]=l in r.headers&&!i9o[l]?r.headers[l]:this._resHeaders[l];let o=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(t,o,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var Qgt=H((RKl,EGn)=>{"use strict";EGn.exports=e=>{let t={};for(let[r,n]of Object.entries(e))t[r.toLowerCase()]=n;return t}});var vGn=H((NKl,SGn)=>{"use strict";var a9o=Et("stream").Readable,c9o=Qgt(),Bgr=class extends a9o{constructor(t,r,n,a){if(typeof t!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(n instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=t,this.headers=c9o(r),this.body=n,this.url=a}_read(){this.push(this.body),this.push(null)}};SGn.exports=Bgr});var wGn=H((DKl,BGn)=>{"use strict";var l9o=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];BGn.exports=(e,t)=>{let r=new Set(Object.keys(e).concat(l9o));for(let n of r)n in t||(t[n]=typeof e[n]=="function"?e[n].bind(e):e[n])}});var RGn=H((kKl,TGn)=>{"use strict";var u9o=Et("stream").PassThrough,g9o=wGn(),A9o=e=>{if(!(e&&e.pipe))throw new TypeError("Parameter `response` must be a response stream.");let t=new u9o;return g9o(e,t),e.pipe(t)};TGn.exports=A9o});var NGn=H(wgr=>{wgr.stringify=function e(t){if(typeof t>"u")return t;if(t&&Buffer.isBuffer(t))return JSON.stringify(":base64:"+t.toString("base64"));if(t&&t.toJSON&&(t=t.toJSON()),t&&typeof t=="object"){var r="",n=Array.isArray(t);r=n?"[":"{";var a=!0;for(var o in t){var l=typeof t[o]=="function"||!n&&typeof t[o]>"u";Object.hasOwnProperty.call(t,o)&&!l&&(a||(r+=","),a=!1,n?t[o]==null?r+="null":r+=e(t[o]):t[o]!==void 0&&(r+=e(o)+":"+e(t[o])))}return r+=n?"]":"}",r}else return typeof t=="string"?JSON.stringify(/^:/.test(t)?":"+t:t):typeof t>"u"?"null":JSON.stringify(t)};wgr.parse=function(e){return JSON.parse(e,function(t,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var GGn=H((GKl,xGn)=>{"use strict";var d9o=Et("events"),DGn=NGn(),p9o=e=>{let t={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(e.adapter||e.uri){let r=e.adapter||/^[^:+]*/.exec(e.uri)[0];return new(Et(t[r]))(e)}return new Map},kGn=["sqlite","postgres","mysql","mongo","redis","tiered"],Tgr=class extends d9o{constructor(t,{emitErrors:r=!0,...n}={}){if(super(),this.opts={namespace:"keyv",serialize:DGn.stringify,deserialize:DGn.parse,...typeof t=="string"?{uri:t}:t,...n},!this.opts.store){let o={...this.opts};this.opts.store=p9o(o)}if(this.opts.compression){let o=this.opts.compression;this.opts.serialize=o.serialize.bind(o),this.opts.deserialize=o.deserialize.bind(o)}typeof this.opts.store.on=="function"&&r&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace;let a=o=>async function*(){for await(let[l,A]of typeof o=="function"?o(this.opts.store.namespace):o){let f=await this.opts.deserialize(A);if(!(this.opts.store.namespace&&!l.includes(this.opts.store.namespace))){if(typeof f.expires=="number"&&Date.now()>f.expires){this.delete(l);continue}yield[this._getKeyUnprefix(l),f.value]}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=a(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=a(this.opts.store.iterator.bind(this.opts.store)))}_checkIterableAdaptar(){return kGn.includes(this.opts.store.opts.dialect)||kGn.findIndex(t=>this.opts.store.opts.url.includes(t))>=0}_getKeyPrefix(t){return`${this.opts.namespace}:${t}`}_getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}_getKeyUnprefix(t){return t.split(":").splice(1).join(":")}get(t,r){let{store:n}=this.opts,a=Array.isArray(t),o=a?this._getKeyPrefixArray(t):this._getKeyPrefix(t);if(a&&n.getMany===void 0){let l=[];for(let A of o)l.push(Promise.resolve().then(()=>n.get(A)).then(f=>typeof f=="string"?this.opts.deserialize(f):this.opts.compression?this.opts.deserialize(f):f).then(f=>{if(f!=null)return typeof f.expires=="number"&&Date.now()>f.expires?this.delete(A).then(()=>{}):r&&r.raw?f:f.value}));return Promise.allSettled(l).then(A=>{let f=[];for(let I of A)f.push(I.value);return f})}return Promise.resolve().then(()=>a?n.getMany(o):n.get(o)).then(l=>typeof l=="string"?this.opts.deserialize(l):this.opts.compression?this.opts.deserialize(l):l).then(l=>{if(l!=null)return a?l.map((A,f)=>{if(typeof A=="string"&&(A=this.opts.deserialize(A)),A!=null){if(typeof A.expires=="number"&&Date.now()>A.expires){this.delete(t[f]).then(()=>{});return}return r&&r.raw?A:A.value}}):typeof l.expires=="number"&&Date.now()>l.expires?this.delete(t).then(()=>{}):r&&r.raw?l:l.value})}set(t,r,n){let a=this._getKeyPrefix(t);typeof n>"u"&&(n=this.opts.ttl),n===0&&(n=void 0);let{store:o}=this.opts;return Promise.resolve().then(()=>{let l=typeof n=="number"?Date.now()+n:null;return typeof r=="symbol"&&this.emit("error","symbol cannot be serialized"),r={value:r,expires:l},this.opts.serialize(r)}).then(l=>o.set(a,l,n)).then(()=>!0)}delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKeyPrefixArray(t);if(r.deleteMany===void 0){let o=[];for(let l of a)o.push(r.delete(l));return Promise.allSettled(o).then(l=>l.every(A=>A.value===!0))}return Promise.resolve().then(()=>r.deleteMany(a))}let n=this._getKeyPrefix(t);return Promise.resolve().then(()=>r.delete(n))}clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear())}has(t){let r=this._getKeyPrefix(t),{store:n}=this.opts;return Promise.resolve().then(async()=>typeof n.has=="function"?n.has(r):await n.get(r)!==void 0)}disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")return t.disconnect()}};xGn.exports=Tgr});var LGn=H((ZKl,ZGn)=>{"use strict";var f9o=Et("events"),Xgt=Et("url"),I9o=cGn(),h9o=yGn(),Rgr=vgr(),FGn=vGn(),m9o=Qgt(),C9o=RGn(),_9o=GGn(),w5e=class e{constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new _9o({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(t)}createCacheableRequest(t){return(r,n)=>{let a;if(typeof r=="string")a=Ngr(Xgt.parse(r)),r={};else if(r instanceof Xgt.URL)a=Ngr(Xgt.parse(r.toString())),r={};else{let[b,...E]=(r.path||"").split("?"),N=E.length>0?`?${E.join("?")}`:"";a=Ngr({...r,pathname:b,search:N})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...y9o(a)},r.headers=m9o(r.headers);let o=new f9o,l=I9o(Xgt.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),A=`${r.method}:${l}`,f=!1,I=!1,C=b=>{I=!0;let E=!1,N,B=new Promise(Q=>{N=()=>{E||(E=!0,Q())}}),F=Q=>{if(f&&!b.forceRefresh){Q.status=Q.statusCode;let ae=Rgr.fromObject(f.cachePolicy).revalidatedPolicy(b,Q);if(!ae.modified){let ne=ae.policy.responseHeaders();Q=new FGn(f.statusCode,ne,f.body,f.url),Q.cachePolicy=ae.policy,Q.fromCache=!0}}Q.fromCache||(Q.cachePolicy=new Rgr(b,Q,b),Q.fromCache=!1);let J;b.cache&&Q.cachePolicy.storable()?(J=C9o(Q),(async()=>{try{let ae=h9o.buffer(Q);if(await Promise.race([B,new Promise(ue=>Q.once("end",ue))]),E)return;let ne=await ae,ce={cachePolicy:Q.cachePolicy.toObject(),url:Q.url,statusCode:Q.fromCache?f.statusCode:Q.statusCode,body:ne},fe=b.strictTtl?Q.cachePolicy.timeToLive():void 0;b.maxTtl&&(fe=fe?Math.min(fe,b.maxTtl):b.maxTtl),await this.cache.set(A,ce,fe)}catch(ae){o.emit("error",new e.CacheError(ae))}})()):b.cache&&f&&(async()=>{try{await this.cache.delete(A)}catch(ae){o.emit("error",new e.CacheError(ae))}})(),o.emit("response",J||Q),typeof n=="function"&&n(J||Q)};try{let Q=t(b,F);Q.once("error",N),Q.once("abort",N),o.emit("request",Q)}catch(Q){o.emit("error",new e.RequestError(Q))}};return(async()=>{let b=async N=>{await Promise.resolve();let B=N.cache?await this.cache.get(A):void 0;if(typeof B>"u")return C(N);let F=Rgr.fromObject(B.cachePolicy);if(F.satisfiesWithoutRevalidation(N)&&!N.forceRefresh){let Q=F.responseHeaders(),J=new FGn(B.statusCode,Q,B.body,B.url);J.cachePolicy=F,J.fromCache=!0,o.emit("response",J),typeof n=="function"&&n(J)}else f=B,N.headers=F.revalidationHeaders(N),C(N)},E=N=>o.emit("error",new e.CacheError(N));this.cache.once("error",E),o.on("response",()=>this.cache.removeListener("error",E));try{await b(r)}catch(N){r.automaticFailover&&!I&&C(r),o.emit("error",new e.CacheError(N))}})(),o}}};function y9o(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search||""}`,delete t.pathname,delete t.search,t}function Ngr(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostname||e.host||"localhost",port:e.port,pathname:e.pathname,search:e.search}}w5e.RequestError=class extends Error{constructor(e){super(e.message),this.name="RequestError",Object.assign(this,e)}};w5e.CacheError=class extends Error{constructor(e){super(e.message),this.name="CacheError",Object.assign(this,e)}};ZGn.exports=w5e});var WGn=H((WKl,VGn)=>{"use strict";var b9o=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];VGn.exports=(e,t)=>{if(t._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(e).concat(b9o)),n={};for(let a of r)a in t||(n[a]={get(){let o=e[a];return typeof o=="function"?o.bind(e):o},set(o){e[a]=o},enumerable:!0,configurable:!1});return Object.defineProperties(t,n),e.once("aborted",()=>{t.destroy(),t.emit("aborted")}),e.once("close",()=>{e.complete&&t.readable?t.once("end",()=>{t.emit("close")}):t.emit("close")}),t}});var PGn=H((OKl,OGn)=>{"use strict";var{Transform:E9o,PassThrough:S9o}=Et("stream"),Dgr=Et("zlib"),v9o=WGn();OGn.exports=e=>{let t=(e.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(t))return e;let r=t==="br";if(r&&typeof Dgr.createBrotliDecompress!="function")return e.destroy(new Error("Brotli is not supported on Node.js < 12")),e;let n=!0,a=new E9o({transform(A,f,I){n=!1,I(null,A)},flush(A){A()}}),o=new S9o({autoDestroy:!1,destroy(A,f){e.destroy(),f(A)}}),l=r?Dgr.createBrotliDecompress():Dgr.createUnzip();return l.once("error",A=>{if(n&&!e.readable){o.end();return}o.destroy(A)}),v9o(e,o),e.pipe(a).pipe(l).pipe(o),o}});var xgr=H((PKl,MGn)=>{"use strict";var kgr=class{constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=t.maxSize,this.onEviction=t.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[n,a]of this.oldCache.entries())this.onEviction(n,a);this.oldCache=this.cache,this.cache=new Map}}get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t)){let r=this.oldCache.get(t);return this.oldCache.delete(t),this._set(t,r),r}}set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}has(t){return this.cache.has(t)||this.oldCache.has(t)}peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t))return this.oldCache.get(t)}delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCache.delete(t)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.oldCache){let[r]=t;this.cache.has(r)||(yield t)}}get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||t++;return Math.min(this._size+t,this.maxSize)}};MGn.exports=kgr});var Fgr=H((MKl,XGn)=>{"use strict";var B9o=Et("events"),w9o=Et("tls"),T9o=Et("http2"),R9o=xgr(),xZ=Symbol("currentStreamsCount"),HGn=Symbol("request"),fM=Symbol("cachedOriginSet"),Lve=Symbol("gracefullyClosing"),N9o=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],D9o=(e,t,r)=>{let n=0,a=e.length;for(;n>>1;r(e[o],t)?n=o+1:a=o}return n},k9o=(e,t)=>e.remoteSettings.maxConcurrentStreams>t.remoteSettings.maxConcurrentStreams,Ggr=(e,t)=>{for(let r of e)r[fM].lengtht[fM].includes(n))&&r[xZ]+t[xZ]<=t.remoteSettings.maxConcurrentStreams&&QGn(r)},x9o=(e,t)=>{for(let r of e)t[fM].lengthr[fM].includes(n))&&t[xZ]+r[xZ]<=r.remoteSettings.maxConcurrentStreams&&QGn(t)},YGn=({agent:e,isFree:t})=>{let r={};for(let n in e.sessions){let o=e.sessions[n].filter(l=>{let A=l[fIe.kCurrentStreamsCount]{e[Lve]=!0,e[xZ]===0&&e.close()},fIe=class e extends B9o{constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:n=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=t,this.maxSessions=r,this.maxFreeSessions=n,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new R9o({maxSize:a})}static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&&t.hostname!==r&&(t.hostname=r),t.origin}normalizeOptions(t){let r="";if(t)for(let n of N9o)t[n]&&(r+=`:${t[n]}`);return r}_tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t]))return;let n=this.queue[t][r];this._sessionsCount{Array.isArray(n)?(n=[...n],a()):n=[{resolve:a,reject:o}];let l=this.normalizeOptions(r),A=e.normalizeOrigin(t,r&&r.servername);if(A===void 0){for(let{reject:C}of n)C(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(l in this.sessions){let C=this.sessions[l],b=-1,E=-1,N;for(let B of C){let F=B.remoteSettings.maxConcurrentStreams;if(F=F||B[Lve]||B.destroyed)continue;N||(b=F),Q>E&&(N=B,E=Q)}}if(N){if(n.length!==1){for(let{reject:B}of n){let F=new Error(`Expected the length of listeners to be 1, got ${n.length}. -Please report this to https://github.com/szmarczak/http2-wrapper/`);B(F)}return}n[0].resolve(N);return}}if(l in this.queue){if(A in this.queue[l]){this.queue[l][A].listeners.push(...n),this._tryToCreateNewSession(l,A);return}}else this.queue[l]={};let f=()=>{l in this.queue&&this.queue[l][A]===I&&(delete this.queue[l][A],Object.keys(this.queue[l]).length===0&&delete this.queue[l])},I=()=>{let C=`${A}:${l}`,b=!1;try{let E=T9o.connect(t,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(C),...r});E[xZ]=0,E[Lve]=!1;let N=()=>E[xZ]{this.tlsSessionCache.set(C,Q)}),E.once("error",Q=>{for(let{reject:J}of n)J(Q);this.tlsSessionCache.delete(C)}),E.setTimeout(this.timeout,()=>{E.destroy()}),E.once("close",()=>{if(b){B&&this._freeSessionsCount--,this._sessionsCount--;let Q=this.sessions[l];Q.splice(Q.indexOf(E),1),Q.length===0&&delete this.sessions[l]}else{let Q=new Error("Session closed without receiving a SETTINGS frame");Q.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:J}of n)J(Q);f()}this._tryToCreateNewSession(l,A)});let F=()=>{if(!(!(l in this.queue)||!N())){for(let Q of E[fM])if(Q in this.queue[l]){let{listeners:J}=this.queue[l][Q];for(;J.length!==0&&N();)J.shift().resolve(E);let ae=this.queue[l];if(ae[Q].listeners.length===0&&(delete ae[Q],Object.keys(ae).length===0)){delete this.queue[l];break}if(!N())break}}};E.on("origin",()=>{E[fM]=E.originSet,N()&&(F(),Ggr(this.sessions[l],E))}),E.once("remoteSettings",()=>{if(E.ref(),E.unref(),this._sessionsCount++,I.destroyed){let Q=new Error("Agent has been destroyed");for(let J of n)J.reject(Q);E.destroy();return}E[fM]=E.originSet;{let Q=this.sessions;if(l in Q){let J=Q[l];J.splice(D9o(J,E,k9o),0,E)}else Q[l]=[E]}this._freeSessionsCount+=1,b=!0,this.emit("session",E),F(),f(),E[xZ]===0&&this._freeSessionsCount>this.maxFreeSessions&&E.close(),n.length!==0&&(this.getSession(A,r,n),n.length=0),E.on("remoteSettings",()=>{F(),Ggr(this.sessions[l],E)})}),E[HGn]=E.request,E.request=(Q,J)=>{if(E[Lve])throw new Error("The session is gracefully closing. No new streams are allowed.");let ae=E[HGn](Q,J);return E.ref(),++E[xZ],E[xZ]===E.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,ae.once("close",()=>{if(B=N(),--E[xZ],!E.destroyed&&!E.closed&&(x9o(this.sessions[l],E),N()&&!E.closed)){B||(this._freeSessionsCount++,B=!0);let ne=E[xZ]===0;ne&&E.unref(),ne&&(this._freeSessionsCount>this.maxFreeSessions||E[Lve])?E.close():(Ggr(this.sessions[l],E),F())}}),ae}}catch(E){for(let N of n)N.reject(E);f()}};I.listeners=n,I.completed=!1,I.destroyed=!1,this.queue[l][A]=I,this._tryToCreateNewSession(l,A)})}request(t,r,n,a){return new Promise((o,l)=>{this.getSession(t,r,[{reject:l,resolve:A=>{try{o(A.request(n,a))}catch(f){l(f)}}}])})}createConnection(t,r){return e.connect(t,r)}static connect(t,r){r.ALPNProtocols=["h2"];let n=t.port||443,a=t.hostname||t.host;return typeof r.servername>"u"&&(r.servername=a),w9o.connect(n,a,r)}closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r of t)r[xZ]===0&&r.close()}destroy(t){for(let r of Object.values(this.sessions))for(let n of r)n.destroy(t);for(let r of Object.values(this.queue))for(let n of Object.values(r))n.destroyed=!0;this.queue={}}get freeSessions(){return YGn({agent:this,isFree:!0})}get busySessions(){return YGn({agent:this,isFree:!1})}};fIe.kCurrentStreamsCount=xZ;fIe.kGracefullyClosing=Lve;XGn.exports={Agent:fIe,globalAgent:new fIe}});var Lgr=H((HKl,JGn)=>{"use strict";var{Readable:G9o}=Et("stream"),Zgr=class extends G9o{constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=t,this.connection=t,this._dumped=!1}_destroy(t){this.req._request.destroy(t)}setTimeout(t,r){return this.req.setTimeout(t,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};JGn.exports=Zgr});var Vgr=H((YKl,UGn)=>{"use strict";UGn.exports=e=>{let t={protocol:e.protocol,hostname:typeof e.hostname=="string"&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return typeof e.port=="string"&&e.port.length!==0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var jGn=H((QKl,KGn)=>{"use strict";KGn.exports=(e,t,r)=>{for(let n of r)e.on(n,(...a)=>t.emit(n,...a))}});var qGn=H((XKl,zGn)=>{"use strict";zGn.exports=e=>{switch(e){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var eFn=H((UKl,$Gn)=>{"use strict";var Vve=(e,t,r)=>{$Gn.exports[t]=class extends e{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${t}]`,this.code=t}}};Vve(TypeError,"ERR_INVALID_ARG_TYPE",e=>{let t=e[0].includes(".")?"property":"argument",r=e[1],n=Array.isArray(r);return n&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${e[0]}" ${t} must be ${n?"one of":"of"} type ${r}. Received ${typeof e[2]}`});Vve(TypeError,"ERR_INVALID_PROTOCOL",e=>`Protocol "${e[0]}" not supported. Expected "${e[1]}"`);Vve(Error,"ERR_HTTP_HEADERS_SENT",e=>`Cannot ${e[0]} headers after they are sent to the client`);Vve(TypeError,"ERR_INVALID_HTTP_TOKEN",e=>`${e[0]} must be a valid HTTP token [${e[1]}]`);Vve(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",e=>`Invalid value "${e[0]} for header "${e[1]}"`);Vve(TypeError,"ERR_INVALID_CHAR",e=>`Invalid character in ${e[0]} [${e[1]}]`)});var Hgr=H((KKl,aFn)=>{"use strict";var F9o=Et("http2"),{Writable:Z9o}=Et("stream"),{Agent:tFn,globalAgent:L9o}=Fgr(),V9o=Lgr(),W9o=Vgr(),O9o=jGn(),P9o=qGn(),{ERR_INVALID_ARG_TYPE:Wgr,ERR_INVALID_PROTOCOL:M9o,ERR_HTTP_HEADERS_SENT:rFn,ERR_INVALID_HTTP_TOKEN:H9o,ERR_HTTP_INVALID_HEADER_VALUE:Y9o,ERR_INVALID_CHAR:Q9o}=eFn(),{HTTP2_HEADER_STATUS:nFn,HTTP2_HEADER_METHOD:iFn,HTTP2_HEADER_PATH:sFn,HTTP2_METHOD_CONNECT:X9o}=F9o.constants,mG=Symbol("headers"),Ogr=Symbol("origin"),Pgr=Symbol("session"),oFn=Symbol("options"),Jgt=Symbol("flushedHeaders"),T5e=Symbol("jobs"),J9o=/^[\^`\-\w!#$%&*+.|~]+$/,U9o=/[^\t\u0020-\u007E\u0080-\u00FF]/,Mgr=class extends Z9o{constructor(t,r,n){super({autoDestroy:!1});let a=typeof t=="string"||t instanceof URL;if(a&&(t=W9o(t instanceof URL?t:new URL(t))),typeof r=="function"||r===void 0?(n=r,r=a?t:{...t}):r={...t,...r},r.h2session)this[Pgr]=r.h2session;else if(r.agent===!1)this.agent=new tFn({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new tFn({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=L9o;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new Wgr("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new M9o(r.protocol,"https:");let o=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,l=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:A}=r;if(r.timeout=void 0,this[mG]=Object.create(null),this[T5e]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[f,I]of Object.entries(r.headers))this.setHeader(f,I);r.auth&&!("authorization"in this[mG])&&(this[mG].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[oFn]=r,o===443?(this[Ogr]=`https://${l}`,":authority"in this[mG]||(this[mG][":authority"]=l)):(this[Ogr]=`https://${l}:${o}`,":authority"in this[mG]||(this[mG][":authority"]=`${l}:${o}`)),A&&this.setTimeout(A),n&&this.once("response",n),this[Jgt]=!1}get method(){return this[mG][iFn]}set method(t){t&&(this[mG][iFn]=t.toUpperCase())}get path(){return this[mG][sFn]}set path(t){t&&(this[mG][sFn]=t)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(t,r,n){if(this._mustNotHaveABody){n(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(t,r,n);this._request?a():this[T5e].push(a)}_final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){t();return}this._request.end(t)};this._request?r():this[T5e].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(t)}async flushHeaders(){if(this[Jgt]||this.destroyed)return;this[Jgt]=!0;let t=this.method===X9o,r=n=>{if(this._request=n,this.destroyed){n.destroy();return}t||O9o(n,this,["timeout","continue","close","error"]);let a=l=>(...A)=>{!this.writable&&!this.destroyed?l(...A):this.once("finish",()=>{l(...A)})};n.once("response",a((l,A,f)=>{let I=new V9o(this.socket,n.readableHighWaterMark);this.res=I,I.req=this,I.statusCode=l[nFn],I.headers=l,I.rawHeaders=f,I.once("end",()=>{this.aborted?(I.aborted=!0,I.emit("aborted")):(I.complete=!0,I.socket=null,I.connection=null)}),t?(I.upgrade=!0,this.emit("connect",I,n,Buffer.alloc(0))?this.emit("close"):n.destroy()):(n.on("data",C=>{!I._dumped&&!I.push(C)&&n.pause()}),n.once("end",()=>{I.push(null)}),this.emit("response",I)||I._dump())})),n.once("headers",a(l=>this.emit("information",{statusCode:l[nFn]}))),n.once("trailers",a((l,A,f)=>{let{res:I}=this;I.trailers=l,I.rawTrailers=f}));let{socket:o}=n.session;this.socket=o,this.connection=o;for(let l of this[T5e])l();this.emit("socket",this.socket)};if(this[Pgr])try{r(this[Pgr].request(this[mG]))}catch(n){this.emit("error",n)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[Ogr],this[oFn],this[mG]))}catch(n){this.emit("error",n)}}}getHeader(t){if(typeof t!="string")throw new Wgr("name","string",t);return this[mG][t.toLowerCase()]}get headersSent(){return this[Jgt]}removeHeader(t){if(typeof t!="string")throw new Wgr("name","string",t);if(this.headersSent)throw new rFn("remove");delete this[mG][t.toLowerCase()]}setHeader(t,r){if(this.headersSent)throw new rFn("set");if(typeof t!="string"||!J9o.test(t)&&!P9o(t))throw new H9o("Header name",t);if(typeof r>"u")throw new Y9o(r,t);if(U9o.test(r))throw new Q9o("header content",t);this[mG][t.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(t,r){let n=()=>this._request.setTimeout(t,r);return this._request?n():this[T5e].push(n),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(t){}};aFn.exports=Mgr});var lFn=H((jKl,cFn)=>{"use strict";var K9o=Et("tls");cFn.exports=(e={},t=K9o.connect)=>new Promise((r,n)=>{let a=!1,o,l=async()=>{await f,o.off("timeout",A),o.off("error",n),e.resolveSocket?(r({alpnProtocol:o.alpnProtocol,socket:o,timeout:a}),a&&(await Promise.resolve(),o.emit("timeout"))):(o.destroy(),r({alpnProtocol:o.alpnProtocol,timeout:a}))},A=async()=>{a=!0,l()},f=(async()=>{try{o=await t(e,l),o.on("error",n),o.once("timeout",A)}catch(I){n(I)}})()})});var gFn=H((zKl,uFn)=>{"use strict";var j9o=Et("net");uFn.exports=e=>{let t=e.host,r=e.headers&&e.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?t=r:t=r.slice(1,-1):t=r.split(":",1)[0]),j9o.isIP(t)?"":t}});var pFn=H((qKl,Qgr)=>{"use strict";var AFn=Et("http"),Ygr=Et("https"),z9o=lFn(),q9o=xgr(),$9o=Hgr(),eVo=gFn(),tVo=Vgr(),Ugt=new q9o({maxSize:100}),R5e=new Map,dFn=(e,t,r)=>{t._httpMessage={shouldKeepAlive:!0};let n=()=>{e.emit("free",t,r)};t.on("free",n);let a=()=>{e.removeSocket(t,r)};t.on("close",a);let o=()=>{e.removeSocket(t,r),t.off("close",a),t.off("free",n),t.off("agentRemove",o)};t.on("agentRemove",o),e.emit("free",t,r)},rVo=async e=>{let t=`${e.host}:${e.port}:${e.ALPNProtocols.sort()}`;if(!Ugt.has(t)){if(R5e.has(t))return(await R5e.get(t)).alpnProtocol;let{path:r,agent:n}=e;e.path=e.socketPath;let a=z9o(e);R5e.set(t,a);try{let{socket:o,alpnProtocol:l}=await a;if(Ugt.set(t,l),e.path=r,l==="h2")o.destroy();else{let{globalAgent:A}=Ygr,f=Ygr.Agent.prototype.createConnection;n?n.createConnection===f?dFn(n,o,e):o.destroy():A.createConnection===f?dFn(A,o,e):o.destroy()}return R5e.delete(t),l}catch(o){throw R5e.delete(t),o}}return Ugt.get(t)};Qgr.exports=async(e,t,r)=>{if((typeof e=="string"||e instanceof URL)&&(e=tVo(new URL(e))),typeof t=="function"&&(r=t,t=void 0),t={ALPNProtocols:["h2","http/1.1"],...e,...t,resolveSocket:!0},!Array.isArray(t.ALPNProtocols)||t.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");t.protocol=t.protocol||"https:";let n=t.protocol==="https:";t.host=t.hostname||t.host||"localhost",t.session=t.tlsSession,t.servername=t.servername||eVo(t),t.port=t.port||(n?443:80),t._defaultAgent=n?Ygr.globalAgent:AFn.globalAgent;let a=t.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");t.agent=a[n?"https":"http"]}return n&&await rVo(t)==="h2"?(a&&(t.agent=a.http2),new $9o(t,r)):AFn.request(t,r)};Qgr.exports.protocolCache=Ugt});var IFn=H(($Kl,fFn)=>{"use strict";var nVo=Et("http2"),iVo=Fgr(),Xgr=Hgr(),sVo=Lgr(),oVo=pFn(),aVo=(e,t,r)=>new Xgr(e,t,r),cVo=(e,t,r)=>{let n=new Xgr(e,t,r);return n.end(),n};fFn.exports={...nVo,ClientRequest:Xgr,IncomingMessage:sVo,...iVo,request:aVo,get:cVo,auto:oVo}});var Ugr=H(Jgr=>{"use strict";Object.defineProperty(Jgr,"__esModule",{value:!0});var hFn=_$();Jgr.default=e=>hFn.default.nodeStream(e)&&hFn.default.function_(e.getBoundary)});var yFn=H(Kgr=>{"use strict";Object.defineProperty(Kgr,"__esModule",{value:!0});var CFn=Et("fs"),_Fn=Et("util"),mFn=_$(),lVo=Ugr(),uVo=_Fn.promisify(CFn.stat);Kgr.default=async(e,t)=>{if(t&&"content-length"in t)return Number(t["content-length"]);if(!e)return 0;if(mFn.default.string(e))return Buffer.byteLength(e);if(mFn.default.buffer(e))return e.length;if(lVo.default(e))return _Fn.promisify(e.getLength.bind(e))();if(e instanceof CFn.ReadStream){let{size:r}=await uVo(e.path);return r===0?void 0:r}}});var zgr=H(jgr=>{"use strict";Object.defineProperty(jgr,"__esModule",{value:!0});function gVo(e,t,r){let n={};for(let a of r)n[a]=(...o)=>{t.emit(a,...o)},e.on(a,n[a]);return()=>{for(let a of r)e.off(a,n[a])}}jgr.default=gVo});var bFn=H(qgr=>{"use strict";Object.defineProperty(qgr,"__esModule",{value:!0});qgr.default=()=>{let e=[];return{once(t,r,n){t.once(r,n),e.push({origin:t,event:r,fn:n})},unhandleAll(){for(let t of e){let{origin:r,event:n,fn:a}=t;r.removeListener(n,a)}e.length=0}}}});var SFn=H(N5e=>{"use strict";Object.defineProperty(N5e,"__esModule",{value:!0});N5e.TimeoutError=void 0;var AVo=Et("net"),dVo=bFn(),EFn=Symbol("reentry"),pVo=()=>{},Kgt=class extends Error{constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};N5e.TimeoutError=Kgt;N5e.default=(e,t,r)=>{if(EFn in e)return pVo;e[EFn]=!0;let n=[],{once:a,unhandleAll:o}=dVo.default(),l=(b,E,N)=>{var B;let F=setTimeout(E,b,b,N);(B=F.unref)===null||B===void 0||B.call(F);let Q=()=>{clearTimeout(F)};return n.push(Q),Q},{host:A,hostname:f}=r,I=(b,E)=>{e.destroy(new Kgt(b,E))},C=()=>{for(let b of n)b();o()};if(e.once("error",b=>{if(C(),e.listenerCount("error")===0)throw b}),e.once("close",C),a(e,"response",b=>{a(b,"end",C)}),typeof t.request<"u"&&l(t.request,I,"request"),typeof t.socket<"u"){let b=()=>{I(t.socket,"socket")};e.setTimeout(t.socket,b),n.push(()=>{e.removeListener("timeout",b)})}return a(e,"socket",b=>{var E;let{socketPath:N}=e;if(b.connecting){let B=!!(N??AVo.isIP((E=f??A)!==null&&E!==void 0?E:"")!==0);if(typeof t.lookup<"u"&&!B&&typeof b.address().address>"u"){let F=l(t.lookup,I,"lookup");a(b,"lookup",F)}if(typeof t.connect<"u"){let F=()=>l(t.connect,I,"connect");B?a(b,"connect",F()):a(b,"lookup",Q=>{Q===null&&a(b,"connect",F())})}typeof t.secureConnect<"u"&&r.protocol==="https:"&&a(b,"connect",()=>{let F=l(t.secureConnect,I,"secureConnect");a(b,"secureConnect",F)})}if(typeof t.send<"u"){let B=()=>l(t.send,I,"send");b.connecting?a(b,"connect",()=>{a(e,"upload-complete",B())}):a(e,"upload-complete",B())}}),typeof t.response<"u"&&a(e,"upload-complete",()=>{let b=l(t.response,I,"response");a(e,"response",b)}),C}});var BFn=H($gr=>{"use strict";Object.defineProperty($gr,"__esModule",{value:!0});var vFn=_$();$gr.default=e=>{e=e;let t={protocol:e.protocol,hostname:vFn.default.string(e.hostname)&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return vFn.default.string(e.port)&&e.port.length>0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var wFn=H(eAr=>{"use strict";Object.defineProperty(eAr,"__esModule",{value:!0});var fVo=Et("url"),IVo=["protocol","host","hostname","port","pathname","search"];eAr.default=(e,t)=>{var r,n;if(t.path){if(t.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(t.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(t.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(t.search&&t.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!e){if(!t.protocol)throw new TypeError("No URL protocol specified");e=`${t.protocol}//${(n=(r=t.hostname)!==null&&r!==void 0?r:t.host)!==null&&n!==void 0?n:""}`}let a=new fVo.URL(e);if(t.path){let o=t.path.indexOf("?");o===-1?t.pathname=t.path:(t.pathname=t.path.slice(0,o),t.search=t.path.slice(o+1)),delete t.path}for(let o of IVo)t[o]&&(a[o]=t[o].toString());return a}});var TFn=H(rAr=>{"use strict";Object.defineProperty(rAr,"__esModule",{value:!0});var tAr=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}};rAr.default=tAr});var iAr=H(nAr=>{"use strict";Object.defineProperty(nAr,"__esModule",{value:!0});var hVo=async e=>{let t=[],r=0;for await(let n of e)t.push(n),r+=Buffer.byteLength(n);return Buffer.isBuffer(t[0])?Buffer.concat(t,r):Buffer.from(t.join(""))};nAr.default=hVo});var NFn=H(IIe=>{"use strict";Object.defineProperty(IIe,"__esModule",{value:!0});IIe.dnsLookupIpVersionToFamily=IIe.isDnsLookupIpVersion=void 0;var RFn={auto:0,ipv4:4,ipv6:6};IIe.isDnsLookupIpVersion=e=>e in RFn;IIe.dnsLookupIpVersionToFamily=e=>{if(IIe.isDnsLookupIpVersion(e))return RFn[e];throw new Error("Invalid DNS lookup IP version")}});var sAr=H(jgt=>{"use strict";Object.defineProperty(jgt,"__esModule",{value:!0});jgt.isResponseOk=void 0;jgt.isResponseOk=e=>{let{statusCode:t}=e,r=e.request.options.followRedirect?299:399;return t>=200&&t<=r||t===304}});var kFn=H(oAr=>{"use strict";Object.defineProperty(oAr,"__esModule",{value:!0});var DFn=new Set;oAr.default=e=>{DFn.has(e)||(DFn.add(e),process.emitWarning(`Got: ${e}`,{type:"DeprecationWarning"}))}});var xFn=H(aAr=>{"use strict";Object.defineProperty(aAr,"__esModule",{value:!0});var L1=_$(),mVo=(e,t)=>{if(L1.default.null_(e.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");L1.assert.any([L1.default.string,L1.default.undefined],e.encoding),L1.assert.any([L1.default.boolean,L1.default.undefined],e.resolveBodyOnly),L1.assert.any([L1.default.boolean,L1.default.undefined],e.methodRewriting),L1.assert.any([L1.default.boolean,L1.default.undefined],e.isStream),L1.assert.any([L1.default.string,L1.default.undefined],e.responseType),e.responseType===void 0&&(e.responseType="text");let{retry:r}=e;if(t?e.retry={...t.retry}:e.retry={calculateDelay:n=>n.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},L1.default.object(r)?(e.retry={...e.retry,...r},e.retry.methods=[...new Set(e.retry.methods.map(n=>n.toUpperCase()))],e.retry.statusCodes=[...new Set(e.retry.statusCodes)],e.retry.errorCodes=[...new Set(e.retry.errorCodes)]):L1.default.number(r)&&(e.retry.limit=r),L1.default.undefined(e.retry.maxRetryAfter)&&(e.retry.maxRetryAfter=Math.min(...[e.timeout.request,e.timeout.connect].filter(L1.default.number))),L1.default.object(e.pagination)){t&&(e.pagination={...t.pagination,...e.pagination});let{pagination:n}=e;if(!L1.default.function_(n.transform))throw new Error("`options.pagination.transform` must be implemented");if(!L1.default.function_(n.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!L1.default.function_(n.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!L1.default.function_(n.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return e.responseType==="json"&&e.headers.accept===void 0&&(e.headers.accept="application/json"),e};aAr.default=mVo});var GFn=H(D5e=>{"use strict";Object.defineProperty(D5e,"__esModule",{value:!0});D5e.retryAfterStatusCodes=void 0;D5e.retryAfterStatusCodes=new Set([413,429,503]);var CVo=({attemptCount:e,retryOptions:t,error:r,retryAfter:n})=>{if(e>t.limit)return 0;let a=t.methods.includes(r.options.method),o=t.errorCodes.includes(r.code),l=r.response&&t.statusCodes.includes(r.response.statusCode);if(!a||!o&&!l)return 0;if(r.response){if(n)return t.maxRetryAfter===void 0||n>t.maxRetryAfter?0:n;if(r.response.statusCode===413)return 0}let A=Math.random()*100;return 2**(e-1)*1e3+A};D5e.default=CVo});var G5e=H(H_=>{"use strict";Object.defineProperty(H_,"__esModule",{value:!0});H_.UnsupportedProtocolError=H_.ReadError=H_.TimeoutError=H_.UploadError=H_.CacheError=H_.HTTPError=H_.MaxRedirectsError=H_.RequestError=H_.setNonEnumerableProperties=H_.knownHookEvents=H_.withoutBody=H_.kIsNormalizedAlready=void 0;var FFn=Et("util"),ZFn=Et("stream"),_Vo=Et("fs"),Foe=Et("url"),LFn=Et("http"),cAr=Et("http"),yVo=Et("https"),bVo=qxn(),EVo=sGn(),VFn=LGn(),SVo=PGn(),vVo=IFn(),BVo=Qgt(),va=_$(),wVo=yFn(),WFn=Ugr(),TVo=zgr(),OFn=SFn(),RVo=BFn(),PFn=wFn(),NVo=TFn(),DVo=iAr(),MFn=NFn(),kVo=sAr(),Zoe=kFn(),xVo=xFn(),GVo=GFn(),lAr,Nk=Symbol("request"),$gt=Symbol("response"),Wve=Symbol("responseSize"),Ove=Symbol("downloadedSize"),Pve=Symbol("bodySize"),Mve=Symbol("uploadedSize"),zgt=Symbol("serverResponsesPiped"),HFn=Symbol("unproxyEvents"),YFn=Symbol("isFromCache"),uAr=Symbol("cancelTimeouts"),QFn=Symbol("startedReading"),Hve=Symbol("stopReading"),qgt=Symbol("triggerRead"),Loe=Symbol("body"),k5e=Symbol("jobs"),XFn=Symbol("originalResponse"),JFn=Symbol("retryTimeout");H_.kIsNormalizedAlready=Symbol("isNormalizedAlready");var FVo=va.default.string(process.versions.brotli);H_.withoutBody=new Set(["GET","HEAD"]);H_.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function ZVo(e){for(let t in e){let r=e[t];if(!va.default.string(r)&&!va.default.number(r)&&!va.default.boolean(r)&&!va.default.null_(r)&&!va.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function LVo(e){return va.default.object(e)&&!("statusCode"in e)}var gAr=new NVo.default,VVo=async e=>new Promise((t,r)=>{let n=a=>{r(a)};e.pending||t(),e.once("error",n),e.once("ready",()=>{e.off("error",n),t()})}),WVo=new Set([300,301,302,303,304,307,308]),OVo=["context","body","json","form"];H_.setNonEnumerableProperties=(e,t)=>{let r={};for(let n of e)if(n)for(let a of OVo)a in n&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:n[a]});Object.defineProperties(t,r)};var tw=class extends Error{constructor(t,r,n){var a,o;if(super(t),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=(a=r.code)!==null&&a!==void 0?a:"ERR_GOT_REQUEST_ERROR",n instanceof oAt?(Object.defineProperty(this,"request",{enumerable:!1,value:n}),Object.defineProperty(this,"response",{enumerable:!1,value:n[$gt]}),Object.defineProperty(this,"options",{enumerable:!1,value:n.options})):Object.defineProperty(this,"options",{enumerable:!1,value:n}),this.timings=(o=this.request)===null||o===void 0?void 0:o.timings,va.default.string(r.stack)&&va.default.string(this.stack)){let l=this.stack.indexOf(this.message)+this.message.length,A=this.stack.slice(l).split(` + }`,E=Rbo.attempt(()=>new Function(...f,`${C}return ${b}`)(...I));if(E.source=b,E instanceof Error)throw E;return E}Vut.template=UNn;Vut.templateSettings=Lut});var Xar=H(Qar=>{"use strict";Object.defineProperty(Qar,Symbol.toStringTag,{value:"Module"});var Fbo=tb();function Zbo(e){return Fbo.toString(e).toLowerCase()}Qar.toLower=Zbo});var Uar=H(Jar=>{"use strict";Object.defineProperty(Jar,Symbol.toStringTag,{value:"Module"});var Lbo=tb();function Vbo(e){return Lbo.toString(e).toUpperCase()}Jar.toUpper=Vbo});var jar=H(Kar=>{"use strict";Object.defineProperty(Kar,Symbol.toStringTag,{value:"Module"});function Wbo(e,t){if(t===void 0)return e.trimEnd();let r=e.length;switch(typeof t){case"string":{if(t.length!==1)throw new Error("The 'chars' parameter should be a single character string.");for(;r>0&&e[r-1]===t;)r--;break}case"object":for(;r>0&&t.includes(e[r-1]);)r--}return e.substring(0,r)}Kar.trimEnd=Wbo});var qar=H(zar=>{"use strict";Object.defineProperty(zar,Symbol.toStringTag,{value:"Module"});function Obo(e,t){if(t===void 0)return e.trimStart();let r=0;switch(typeof t){case"string":{for(;r{"use strict";Object.defineProperty($ar,Symbol.toStringTag,{value:"Module"});var Pbo=jar(),Mbo=qar();function Hbo(e,t){return t===void 0?e.trim():Mbo.trimStart(Pbo.trimEnd(e,t),t)}$ar.trim=Hbo});var rcr=H(tcr=>{"use strict";Object.defineProperty(tcr,Symbol.toStringTag,{value:"Module"});var ecr=KNn();function Ybo(e,t,r){if(e==null)return"";if(r!=null||t==null)return e.toString().trim();switch(typeof t){case"object":return Array.isArray(t)?ecr.trim(e,t.flatMap(n=>n.toString().split(""))):ecr.trim(e,t.toString().split(""));default:return ecr.trim(e,t.toString().split(""))}}tcr.trim=Ybo});var icr=H(ncr=>{"use strict";Object.defineProperty(ncr,Symbol.toStringTag,{value:"Module"});var Qbo=jar();function Xbo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimEnd():Qbo.trimEnd(e,t.toString().split(""))}ncr.trimEnd=Xbo});var ocr=H(scr=>{"use strict";Object.defineProperty(scr,Symbol.toStringTag,{value:"Module"});var Jbo=qar();function Ubo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimStart():Jbo.trimStart(e,t.toString().split(""))}scr.trimStart=Ubo});var ccr=H(acr=>{"use strict";Object.defineProperty(acr,Symbol.toStringTag,{value:"Module"});var Kbo=uM(),jbo=/[\u200d\ud800-\udfff\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff\ufe0e\ufe0f]/;function zbo(e,t){e=e!=null?`${e}`:"";let r=30,n="...";Kbo.isObject(t)&&(r=qbo(t.length),n="omission"in t?`${t.omission}`:"...");let a=e.length,o=Array.from(n).length,l=Math.max(r-o,0),A;if(jbo.test(e)&&(A=Array.from(e),a=A.length),r>=a)return e;if(a<=o)return n;let I=A===void 0?e.slice(0,l):A?.slice(0,l).join(""),C=t?.separator;if(!C)return I+=n,I;let b=C instanceof RegExp?C.source:C,E="u"+(C instanceof RegExp?C.flags.replace("u",""):""),N=new RegExp(`(?.*(?:(?!${b}).))(?:${b})`,E).exec(I);return(N?.groups?N.groups.result:I)+n}function qbo(e){return e==null?30:e<=0?0:e}acr.truncate=zbo});var jNn=H(lcr=>{"use strict";Object.defineProperty(lcr,Symbol.toStringTag,{value:"Module"});var $bo={"&":"&","<":"<",">":">",""":'"',"'":"'"};function eEo(e){return e.replace(/&(?:amp|lt|gt|quot|#(0+)?39);/g,t=>$bo[t]||"'")}lcr.unescape=eEo});var gcr=H(ucr=>{"use strict";Object.defineProperty(ucr,Symbol.toStringTag,{value:"Module"});var tEo=jNn(),rEo=tb();function nEo(e){return tEo.unescape(rEo.toString(e))}ucr.unescape=nEo});var zNn=H(Acr=>{"use strict";Object.defineProperty(Acr,Symbol.toStringTag,{value:"Module"});var iEo=aIe();function sEo(e){let t=iEo.words(e),r="";for(let n=0;n{"use strict";Object.defineProperty(dcr,Symbol.toStringTag,{value:"Module"});var oEo=I$(),aEo=zNn(),cEo=cIe();function lEo(e){return aEo.upperCase(cEo.normalizeForCase(oEo.deburr(e)))}dcr.upperCase=lEo});var qNn=H(fcr=>{"use strict";Object.defineProperty(fcr,Symbol.toStringTag,{value:"Module"});function uEo(e){return e.substring(0,1).toUpperCase()+e.substring(1)}fcr.upperFirst=uEo});var hcr=H(Icr=>{"use strict";Object.defineProperty(Icr,Symbol.toStringTag,{value:"Module"});var gEo=qNn(),AEo=tb();function dEo(e){return gEo.upperFirst(AEo.toString(e))}Icr.upperFirst=dEo});var Ccr=H(mcr=>{"use strict";Object.defineProperty(mcr,Symbol.toStringTag,{value:"Module"});var pEo=tb(),fEo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\xd7\\xf7",Ive="\\p{Lu}",iDn="\\p{Ll}",sDn="(?:[\\p{Lm}\\p{Lo}]\\p{M}*)",p5e="\\d",$Nn="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",eDn="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",tDn=`[\\p{Z}\\p{P}${fEo}]`,IEo=`(?:${Ive}|${sDn})`,rDn=`(?:${iDn}|${sDn})`,nDn=RegExp([`${Ive}?${iDn}+${$Nn}(?=${tDn}|${Ive}|$)`,`${IEo}+${eDn}(?=${tDn}|${Ive}${rDn}|$)`,`${Ive}?${rDn}+${$Nn}`,`${Ive}+${eDn}`,`${p5e}*(?:1ST|2ND|3RD|(?![123])${p5e}TH)(?=\\b|[a-z_])`,`${p5e}*(?:1st|2nd|3rd|(?![123])${p5e}th)(?=\\b|[A-Z_])`,`${p5e}+`,"\\p{Emoji_Presentation}","\\p{Extended_Pictographic}"].join("|"),"gu");function hEo(e,t=nDn,r){let n=pEo.toString(e);return r&&(t=nDn),typeof t=="number"&&(t=t.toString()),Array.from(n.match(t)??[]).filter(o=>o!=="")}mcr.words=hEo});var ycr=H(_cr=>{"use strict";Object.defineProperty(_cr,Symbol.toStringTag,{value:"Module"});var mEo=cm(),CEo=Eoe();function _Eo(e){let t=e.length,r=e.map(n=>{let a=n[0],o=n[1];if(!CEo.isFunction(o))throw new TypeError("Expected a function");return[mEo.iteratee(a),o]});return function(...n){for(let a=0;a{"use strict";Object.defineProperty(bcr,Symbol.toStringTag,{value:"Module"});function yEo(e){return()=>e}bcr.constant=yEo});var vcr=H(Scr=>{"use strict";Object.defineProperty(Scr,Symbol.toStringTag,{value:"Module"});function bEo(e,t){return e==null||Number.isNaN(e)?t:e}Scr.defaultTo=bEo});var wcr=H(Bcr=>{"use strict";Object.defineProperty(Bcr,Symbol.toStringTag,{value:"Module"});var oDn=q9();function EEo(e,t){return typeof e=="string"&&typeof t=="string"?e>t:oDn.toNumber(e)>oDn.toNumber(t)}Bcr.gt=EEo});var Rcr=H(Tcr=>{"use strict";Object.defineProperty(Tcr,Symbol.toStringTag,{value:"Module"});var aDn=q9();function SEo(e,t){return typeof e=="string"&&typeof t=="string"?e>=t:aDn.toNumber(e)>=aDn.toNumber(t)}Tcr.gte=SEo});var I5e=H(Ncr=>{"use strict";Object.defineProperty(Ncr,Symbol.toStringTag,{value:"Module"});var vEo=cM(),BEo=u$(),wEo=A$(),cDn=lM();function TEo(e,t,...r){if(r=r.flat(1),e!=null)switch(typeof t){case"string":return typeof e=="object"&&Object.hasOwn(e,t)?f5e(e,[t],r):f5e(e,vEo.toPath(t),r);case"number":case"symbol":return f5e(e,[t],r);default:return Array.isArray(t)?f5e(e,t,r):f5e(e,[t],r)}}function f5e(e,t,r){let n=cDn.get(e,t.slice(0,-1),e);if(n==null)return;let a=wEo.last(t),o=a?.valueOf();return typeof o=="number"?a=BEo.toKey(o):a=String(a),cDn.get(n,a)?.apply(n,r)}Ncr.invoke=TEo});var kcr=H(Dcr=>{"use strict";Object.defineProperty(Dcr,Symbol.toStringTag,{value:"Module"});var lDn=q9();function REo(e,t){return typeof e=="string"&&typeof t=="string"?e{"use strict";Object.defineProperty(xcr,Symbol.toStringTag,{value:"Module"});var uDn=q9();function NEo(e,t){return typeof e=="string"&&typeof t=="string"?e<=t:uDn.toNumber(e)<=uDn.toNumber(t)}xcr.lte=NEo});var Zcr=H(Fcr=>{"use strict";Object.defineProperty(Fcr,Symbol.toStringTag,{value:"Module"});var DEo=I5e();function kEo(e,...t){return function(r){return DEo.invoke(r,e,t)}}Fcr.method=kEo});var Vcr=H(Lcr=>{"use strict";Object.defineProperty(Lcr,Symbol.toStringTag,{value:"Module"});var xEo=I5e();function GEo(e,...t){return function(r){return xEo.invoke(e,r,t)}}Lcr.methodOf=GEo});var Ocr=H(Wcr=>{"use strict";Object.defineProperty(Wcr,Symbol.toStringTag,{value:"Module"});function FEo(){return Date.now()}Wcr.now=FEo});var Mcr=H(Pcr=>{"use strict";Object.defineProperty(Pcr,Symbol.toStringTag,{value:"Module"});var ZEo=cm();function LEo(...e){e.length===1&&Array.isArray(e[0])&&(e=e[0]);let t=e.map(r=>ZEo.iteratee(r));return function(...r){return t.map(n=>n.apply(this,r))}}Pcr.over=LEo});var Ycr=H(Hcr=>{"use strict";Object.defineProperty(Hcr,Symbol.toStringTag,{value:"Module"});var gDn=cm();function VEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(Qcr,Symbol.toStringTag,{value:"Module"});var ADn=cm();function WEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(Jcr,Symbol.toStringTag,{value:"Module"});function OEo(){return[]}Jcr.stubArray=OEo});var jcr=H(Kcr=>{"use strict";Object.defineProperty(Kcr,Symbol.toStringTag,{value:"Module"});function PEo(){return!1}Kcr.stubFalse=PEo});var qcr=H(zcr=>{"use strict";Object.defineProperty(zcr,Symbol.toStringTag,{value:"Module"});function MEo(){return{}}zcr.stubObject=MEo});var elr=H($cr=>{"use strict";Object.defineProperty($cr,Symbol.toStringTag,{value:"Module"});function HEo(){return""}$cr.stubString=HEo});var rlr=H(tlr=>{"use strict";Object.defineProperty(tlr,Symbol.toStringTag,{value:"Module"});function YEo(){return!0}tlr.stubTrue=YEo});var dDn=H(nlr=>{"use strict";Object.defineProperty(nlr,Symbol.toStringTag,{value:"Module"});var QEo=4294967295;nlr.MAX_ARRAY_LENGTH=QEo});var slr=H(ilr=>{"use strict";Object.defineProperty(ilr,Symbol.toStringTag,{value:"Module"});var XEo=dDn(),JEo=sIe();function UEo(e){if(e==null)return 0;let t=Math.floor(Number(e));return JEo.clamp(t,0,XEo.MAX_ARRAY_LENGTH)}ilr.toLength=UEo});var alr=H(olr=>{"use strict";Object.defineProperty(olr,Symbol.toStringTag,{value:"Module"});var KEo=IX();function jEo(e){let t={},r=KEo.keysIn(e);for(let n=0;n{"use strict";Object.defineProperty(clr,Symbol.toStringTag,{value:"Module"});var zEo=sT(),pDn=Rar(),qEo=sIe();function $Eo(e){return e==null?0:qEo.clamp(zEo.toInteger(e),-pDn.MAX_SAFE_INTEGER,pDn.MAX_SAFE_INTEGER)}clr.toSafeInteger=$Eo});var glr=H(ulr=>{"use strict";Object.defineProperty(ulr,Symbol.toStringTag,{value:"Module"});var e1o=0;function t1o(e=""){let t=++e1o;return`${e}${t}`}ulr.uniqueId=t1o});var yDn=H(Kn=>{"use strict";Object.defineProperty(Kn,Symbol.toStringTag,{value:"Module"});var r1o=q7t(),n1o=izt(),i1o=azt(),s1o=uzt(),o1o=Hzt(),a1o=Uzt(),c1o=Jlt(),l1o=Ult(),u1o=cqt(),g1o=gqt(),A1o=pqt(),d1o=hqt(),fDn=zlt(),IDn=yqt(),p1o=Sqt(),f1o=Tqt(),I1o=qlt(),h1o=Dqt(),m1o=Gqt(),C1o=Zqt(),_1o=Vqt(),hDn=Pqt(),y1o=Jqt(),b1o=jqt(),E1o=$3e(),S1o=nIe(),v1o=qqt(),B1o=Ave(),w1o=t$t(),T1o=n$t(),R1o=s$t(),N1o=c$t(),D1o=A$t(),k1o=eut(),x1o=tut(),G1o=b$t(),F1o=S$t(),Z1o=w$t(),L1o=A$(),V1o=R$t(),W1o=q3e(),O1o=D$t(),P1o=nut(),M1o=Z$t(),H1o=O$t(),Y1o=M$t(),Q1o=Y$t(),X1o=X$t(),J1o=q$t(),U1o=rut(),K1o=eer(),j1o=ner(),z1o=oer(),q1o=cer(),$1o=ger(),e2o=ber(),t2o=Ter(),r2o=Ner(),n2o=ker(),i2o=Ger(),s2o=Zer(),o2o=lut(),a2o=s5e(),c2o=Jer(),l2o=gut(),u2o=uut(),g2o=zer(),A2o=etr(),d2o=ntr(),p2o=otr(),f2o=ltr(),I2o=gtr(),h2o=dtr(),m2o=dut(),C2o=put(),_2o=e5e(),y2o=Etr(),b2o=vtr(),E2o=fut(),S2o=Ntr(),v2o=xtr(),B2o=Ftr(),w2o=Wtr(),T2o=Ptr(),R2o=Qtr(),N2o=Utr(),D2o=qtr(),k2o=trr(),x2o=nrr(),G2o=hut(),F2o=mut(),Z2o=arr(),L2o=urr(),V2o=drr(),W2o=Irr(),O2o=Crr(),P2o=Cut(),M2o=Err(),H2o=vrr(),Y2o=wrr(),Q2o=Drr(),X2o=Grr(),J2o=Lrr(),U2o=n5e(),K2o=Wrr(),j2o=Mrr(),z2o=Yrr(),q2o=Jrr(),$2o=jrr(),eSo=qrr(),tSo=tnr(),rSo=nnr(),nSo=snr(),iSo=anr(),sSo=lnr(),oSo=gnr(),aSo=pnr(),cSo=sIe(),lSo=Inr(),uSo=mnr(),gSo=ynr(),ASo=Enr(),dSo=Bnr(),pSo=Nnr(),fSo=Gnr(),ISo=Znr(),hSo=Wnr(),mSo=Pnr(),CSo=Hnr(),_So=Qnr(),ySo=Unr(),bSo=znr(),ESo=$nr(),SSo=tir(),vSo=Sut(),BSo=Eut(),wSo=cir(),TSo=n8(),RSo=uir(),NSo=Iir(),mDn=Cir(),CDn=yir(),DSo=Eir(),kSo=iut(),xSo=wut(),GSo=cve(),FSo=J3e(),ZSo=wir(),LSo=Rir(),VSo=A5e(),WSo=xir(),OSo=Zir(),PSo=Vir(),MSo=Oir(),HSo=Mir(),YSo=Yir(),QSo=Xir(),XSo=Uir(),JSo=jir(),USo=qir(),KSo=lM(),jSo=U3e(),zSo=esr(),qSo=nsr(),$So=ssr(),evo=i8(),tvo=IX(),rvo=csr(),nvo=gsr(),ivo=hsr(),svo=Nut(),ovo=_sr(),avo=bsr(),cvo=Ssr(),lvo=Bsr(),uvo=fX(),gvo=Tsr(),Avo=Nsr(),dvo=a5e(),pvo=ksr(),fvo=Gsr(),Ivo=Osr(),hvo=Msr(),mvo=Qsr(),Cvo=r5e(),_vo=Jsr(),yvo=pve(),bvo=out(),Evo=Ksr(),Svo=zsr(),vvo=$sr(),Bvo=Ylt(),wvo=tor(),Tvo=nor(),Rvo=sor(),Nvo=cor(),Dvo=xut(),kvo=rIe(),xvo=p$(),Gvo=gor(),Fvo=Bf(),Zvo=B2(),Lvo=dor(),Vvo=kut(),Wvo=hor(),Ovo=Cor(),Pvo=yor(),Mvo=vor(),Hvo=wor(),Yvo=Ror(),Qvo=Dor(),Xvo=sut(),Jvo=M3e(),Uvo=cut(),Kvo=dve(),jvo=o5e(),zvo=uM(),qvo=Coe(),$vo=oIe(),eBo=Gor(),tBo=Zor(),rBo=Wor(),nBo=gve(),iBo=_oe(),sBo=f$(),oBo=Mor(),aBo=Qor(),cBo=t8(),lBo=r8(),uBo=Kor(),gBo=zor(),ABo=nar(),dBo=I$(),pBo=sar(),fBo=Fut(),IBo=uar(),hBo=dar(),mBo=Iar(),CBo=Car(),_Bo=bar(),yBo=Sar(),bBo=war(),EBo=Dar(),SBo=xar(),vBo=Zar(),BBo=War(),wBo=Par(),TBo=Har(),_Dn=Yar(),RBo=Xar(),NBo=Uar(),DBo=rcr(),kBo=icr(),xBo=ocr(),GBo=ccr(),FBo=gcr(),ZBo=pcr(),LBo=hcr(),VBo=Ccr(),WBo=ycr(),OBo=Ecr(),PBo=vcr(),MBo=Nk(),HBo=wcr(),YBo=Rcr(),QBo=I5e(),XBo=cm(),JBo=kcr(),UBo=Gcr(),KBo=Zcr(),jBo=Vcr(),zBo=Ocr(),qBo=Mcr(),$Bo=Ycr(),ewo=Xcr(),two=Ucr(),rwo=jcr(),nwo=qcr(),iwo=elr(),swo=rlr(),owo=g5e(),awo=i5e(),cwo=uve(),lwo=sT(),uwo=slr(),gwo=q9(),Awo=cM(),dwo=alr(),pwo=llr(),fwo=tb(),Iwo=glr();Kn.castArray=r1o.castArray;Kn.chunk=n1o.chunk;Kn.compact=i1o.compact;Kn.concat=s1o.concat;Kn.countBy=o1o.countBy;Kn.difference=a1o.difference;Kn.differenceBy=c1o.differenceBy;Kn.differenceWith=l1o.differenceWith;Kn.drop=u1o.drop;Kn.dropRight=g1o.dropRight;Kn.dropRightWhile=A1o.dropRightWhile;Kn.dropWhile=d1o.dropWhile;Kn.each=fDn.forEach;Kn.forEach=fDn.forEach;Kn.eachRight=IDn.forEachRight;Kn.forEachRight=IDn.forEachRight;Kn.every=p1o.every;Kn.fill=f1o.fill;Kn.filter=I1o.filter;Kn.find=h1o.find;Kn.findIndex=m1o.findIndex;Kn.findLast=C1o.findLast;Kn.findLastIndex=_1o.findLastIndex;Kn.first=hDn.head;Kn.head=hDn.head;Kn.flatMap=y1o.flatMap;Kn.flatMapDeep=b1o.flatMapDeep;Kn.flatMapDepth=E1o.flatMapDepth;Kn.flatten=S1o.flatten;Kn.flattenDeep=v1o.flattenDeep;Kn.flattenDepth=B1o.flattenDepth;Kn.groupBy=w1o.groupBy;Kn.includes=T1o.includes;Kn.indexOf=R1o.indexOf;Kn.initial=N1o.initial;Kn.intersection=D1o.intersection;Kn.intersectionBy=k1o.intersectionBy;Kn.intersectionWith=x1o.intersectionWith;Kn.invokeMap=G1o.invokeMap;Kn.join=F1o.join;Kn.keyBy=Z1o.keyBy;Kn.last=L1o.last;Kn.lastIndexOf=V1o.lastIndexOf;Kn.map=W1o.map;Kn.nth=O1o.nth;Kn.orderBy=P1o.orderBy;Kn.partition=M1o.partition;Kn.pull=H1o.pull;Kn.pullAll=Y1o.pullAll;Kn.pullAllBy=Q1o.pullAllBy;Kn.pullAllWith=X1o.pullAllWith;Kn.pullAt=J1o.pullAt;Kn.reduce=U1o.reduce;Kn.reduceRight=K1o.reduceRight;Kn.reject=j1o.reject;Kn.remove=z1o.remove;Kn.reverse=q1o.reverse;Kn.sample=$1o.sample;Kn.sampleSize=e2o.sampleSize;Kn.shuffle=t2o.shuffle;Kn.size=r2o.size;Kn.slice=n2o.slice;Kn.some=i2o.some;Kn.sortBy=s2o.sortBy;Kn.sortedIndex=o2o.sortedIndex;Kn.sortedIndexBy=a2o.sortedIndexBy;Kn.sortedIndexOf=c2o.sortedIndexOf;Kn.sortedLastIndex=l2o.sortedLastIndex;Kn.sortedLastIndexBy=u2o.sortedLastIndexBy;Kn.sortedLastIndexOf=g2o.sortedLastIndexOf;Kn.tail=A2o.tail;Kn.take=d2o.take;Kn.takeRight=p2o.takeRight;Kn.takeRightWhile=f2o.takeRightWhile;Kn.takeWhile=I2o.takeWhile;Kn.union=h2o.union;Kn.unionBy=m2o.unionBy;Kn.unionWith=C2o.unionWith;Kn.uniq=_2o.uniq;Kn.uniqBy=y2o.uniqBy;Kn.uniqWith=b2o.uniqWith;Kn.unzip=E2o.unzip;Kn.unzipWith=S2o.unzipWith;Kn.without=v2o.without;Kn.xor=B2o.xor;Kn.xorBy=w2o.xorBy;Kn.xorWith=T2o.xorWith;Kn.zip=R2o.zip;Kn.zipObject=N2o.zipObject;Kn.zipObjectDeep=D2o.zipObjectDeep;Kn.zipWith=k2o.zipWith;Kn.after=x2o.after;Kn.ary=G2o.ary;Kn.attempt=F2o.attempt;Kn.before=Z2o.before;Kn.bind=L2o.bind;Kn.bindKey=V2o.bindKey;Kn.curry=W2o.curry;Kn.curryRight=O2o.curryRight;Kn.debounce=P2o.debounce;Kn.defer=M2o.defer;Kn.delay=H2o.delay;Kn.flip=Y2o.flip;Kn.flow=Q2o.flow;Kn.flowRight=X2o.flowRight;Kn.memoize=J2o.memoize;Kn.negate=U2o.negate;Kn.nthArg=K2o.nthArg;Kn.once=j2o.once;Kn.overArgs=z2o.overArgs;Kn.partial=q2o.partial;Kn.partialRight=$2o.partialRight;Kn.rearg=eSo.rearg;Kn.rest=tSo.rest;Kn.spread=rSo.spread;Kn.throttle=nSo.throttle;Kn.unary=iSo.unary;Kn.wrap=sSo.wrap;Kn.add=oSo.add;Kn.ceil=aSo.ceil;Kn.clamp=cSo.clamp;Kn.divide=lSo.divide;Kn.floor=uSo.floor;Kn.inRange=gSo.inRange;Kn.max=ASo.max;Kn.maxBy=dSo.maxBy;Kn.mean=pSo.mean;Kn.meanBy=fSo.meanBy;Kn.min=ISo.min;Kn.minBy=hSo.minBy;Kn.multiply=mSo.multiply;Kn.parseInt=CSo.parseInt;Kn.random=_So.random;Kn.range=ySo.range;Kn.rangeRight=bSo.rangeRight;Kn.round=ESo.round;Kn.subtract=SSo.subtract;Kn.sum=vSo.sum;Kn.sumBy=BSo.sumBy;Kn.isEqual=wSo.isEqual;Kn.identity=TSo.identity;Kn.noop=RSo.noop;Kn.assign=NSo.assign;Kn.assignIn=mDn.assignIn;Kn.extend=mDn.assignIn;Kn.assignInWith=CDn.assignInWith;Kn.extendWith=CDn.assignInWith;Kn.assignWith=DSo.assignWith;Kn.at=kSo.at;Kn.clone=xSo.clone;Kn.cloneDeep=GSo.cloneDeep;Kn.cloneDeepWith=FSo.cloneDeepWith;Kn.cloneWith=ZSo.cloneWith;Kn.create=LSo.create;Kn.defaults=VSo.defaults;Kn.defaultsDeep=WSo.defaultsDeep;Kn.findKey=OSo.findKey;Kn.findLastKey=PSo.findLastKey;Kn.forIn=MSo.forIn;Kn.forInRight=HSo.forInRight;Kn.forOwn=YSo.forOwn;Kn.forOwnRight=QSo.forOwnRight;Kn.fromPairs=XSo.fromPairs;Kn.functions=JSo.functions;Kn.functionsIn=USo.functionsIn;Kn.get=KSo.get;Kn.has=jSo.has;Kn.hasIn=zSo.hasIn;Kn.invert=qSo.invert;Kn.invertBy=$So.invertBy;Kn.keys=evo.keys;Kn.keysIn=tvo.keysIn;Kn.mapKeys=rvo.mapKeys;Kn.mapValues=nvo.mapValues;Kn.merge=ivo.merge;Kn.mergeWith=svo.mergeWith;Kn.omit=ovo.omit;Kn.omitBy=avo.omitBy;Kn.pick=cvo.pick;Kn.pickBy=lvo.pickBy;Kn.property=uvo.property;Kn.propertyOf=gvo.propertyOf;Kn.result=Avo.result;Kn.set=dvo.set;Kn.setWith=pvo.setWith;Kn.toDefaulted=fvo.toDefaulted;Kn.toPairs=Ivo.toPairs;Kn.toPairsIn=hvo.toPairsIn;Kn.transform=mvo.transform;Kn.unset=Cvo.unset;Kn.update=_vo.update;Kn.updateWith=yvo.updateWith;Kn.values=bvo.values;Kn.valuesIn=Evo.valuesIn;Kn.isFunction=Svo.isFunction;Kn.isLength=vvo.isLength;Kn.isMatchWith=Bvo.isMatchWith;Kn.isNative=wvo.isNative;Kn.isNull=Tvo.isNull;Kn.isUndefined=Rvo.isUndefined;Kn.conforms=Nvo.conforms;Kn.conformsTo=Dvo.conformsTo;Kn.isArguments=kvo.isArguments;Kn.isArray=xvo.isArray;Kn.isArrayBuffer=Gvo.isArrayBuffer;Kn.isArrayLike=Fvo.isArrayLike;Kn.isArrayLikeObject=Zvo.isArrayLikeObject;Kn.isBoolean=Lvo.isBoolean;Kn.isBuffer=Vvo.isBuffer;Kn.isDate=Wvo.isDate;Kn.isElement=Ovo.isElement;Kn.isEmpty=Pvo.isEmpty;Kn.isEqualWith=Mvo.isEqualWith;Kn.isError=Hvo.isError;Kn.isFinite=Yvo.isFinite;Kn.isInteger=Qvo.isInteger;Kn.isMap=Xvo.isMap;Kn.isMatch=Jvo.isMatch;Kn.isNaN=Uvo.isNaN;Kn.isNil=Kvo.isNil;Kn.isNumber=jvo.isNumber;Kn.isObject=zvo.isObject;Kn.isObjectLike=qvo.isObjectLike;Kn.isPlainObject=$vo.isPlainObject;Kn.isRegExp=eBo.isRegExp;Kn.isSafeInteger=tBo.isSafeInteger;Kn.isSet=rBo.isSet;Kn.isString=nBo.isString;Kn.isSymbol=iBo.isSymbol;Kn.isTypedArray=sBo.isTypedArray;Kn.isWeakMap=oBo.isWeakMap;Kn.isWeakSet=aBo.isWeakSet;Kn.matches=cBo.matches;Kn.matchesProperty=lBo.matchesProperty;Kn.capitalize=uBo.capitalize;Kn.bindAll=gBo.bindAll;Kn.camelCase=ABo.camelCase;Kn.deburr=dBo.deburr;Kn.endsWith=pBo.endsWith;Kn.escape=fBo.escape;Kn.escapeRegExp=IBo.escapeRegExp;Kn.kebabCase=hBo.kebabCase;Kn.lowerCase=mBo.lowerCase;Kn.lowerFirst=CBo.lowerFirst;Kn.pad=_Bo.pad;Kn.padEnd=yBo.padEnd;Kn.padStart=bBo.padStart;Kn.repeat=EBo.repeat;Kn.replace=SBo.replace;Kn.snakeCase=vBo.snakeCase;Kn.split=BBo.split;Kn.startCase=wBo.startCase;Kn.startsWith=TBo.startsWith;Kn.template=_Dn.template;Kn.templateSettings=_Dn.templateSettings;Kn.toLower=RBo.toLower;Kn.toUpper=NBo.toUpper;Kn.trim=DBo.trim;Kn.trimEnd=kBo.trimEnd;Kn.trimStart=xBo.trimStart;Kn.truncate=GBo.truncate;Kn.unescape=FBo.unescape;Kn.upperCase=ZBo.upperCase;Kn.upperFirst=LBo.upperFirst;Kn.words=VBo.words;Kn.cond=WBo.cond;Kn.constant=OBo.constant;Kn.defaultTo=PBo.defaultTo;Kn.eq=MBo.isEqualsSameValueZero;Kn.gt=HBo.gt;Kn.gte=YBo.gte;Kn.invoke=QBo.invoke;Kn.iteratee=XBo.iteratee;Kn.lt=JBo.lt;Kn.lte=UBo.lte;Kn.method=KBo.method;Kn.methodOf=jBo.methodOf;Kn.now=zBo.now;Kn.over=qBo.over;Kn.overEvery=$Bo.overEvery;Kn.overSome=ewo.overSome;Kn.stubArray=two.stubArray;Kn.stubFalse=rwo.stubFalse;Kn.stubObject=nwo.stubObject;Kn.stubString=iwo.stubString;Kn.stubTrue=swo.stubTrue;Kn.times=owo.times;Kn.toArray=awo.toArray;Kn.toFinite=cwo.toFinite;Kn.toInteger=lwo.toInteger;Kn.toLength=uwo.toLength;Kn.toNumber=gwo.toNumber;Kn.toPath=Awo.toPath;Kn.toPlainObject=dwo.toPlainObject;Kn.toSafeInteger=pwo.toSafeInteger;Kn.toString=fwo.toString;Kn.uniqueId=Iwo.uniqueId});var bDn=H(Alr=>{"use strict";Object.defineProperty(Alr,Symbol.toStringTag,{value:"Module"});var hwo=yDn(),hve=e=>e;Object.assign(hve,hwo);hve.partial.placeholder=hve;hve.partialRight.placeholder=hve;Alr.toolkit=hve});var PO=H(Jn=>{"use strict";Object.defineProperties(Jn,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var mwo=q7t(),Cwo=izt(),_wo=azt(),ywo=uzt(),bwo=Hzt(),Ewo=Uzt(),Swo=Jlt(),vwo=Ult(),Bwo=cqt(),wwo=gqt(),Two=pqt(),Rwo=hqt(),EDn=zlt(),SDn=yqt(),Nwo=Sqt(),Dwo=Tqt(),kwo=qlt(),xwo=Dqt(),Gwo=Gqt(),Fwo=Zqt(),Zwo=Vqt(),vDn=Pqt(),Lwo=Jqt(),Vwo=jqt(),Wwo=$3e(),Owo=nIe(),Pwo=qqt(),Mwo=Ave(),Hwo=t$t(),Ywo=n$t(),Qwo=s$t(),Xwo=c$t(),Jwo=A$t(),Uwo=eut(),Kwo=tut(),jwo=b$t(),zwo=S$t(),qwo=w$t(),$wo=A$(),eTo=R$t(),tTo=q3e(),rTo=D$t(),nTo=nut(),iTo=Z$t(),sTo=O$t(),oTo=M$t(),aTo=Y$t(),cTo=X$t(),lTo=q$t(),uTo=rut(),gTo=eer(),ATo=ner(),dTo=oer(),pTo=cer(),fTo=ger(),ITo=ber(),hTo=Ter(),mTo=Ner(),CTo=ker(),_To=Ger(),yTo=Zer(),bTo=lut(),ETo=s5e(),STo=Jer(),vTo=gut(),BTo=uut(),wTo=zer(),TTo=etr(),RTo=ntr(),NTo=otr(),DTo=ltr(),kTo=gtr(),xTo=dtr(),GTo=dut(),FTo=put(),ZTo=e5e(),LTo=Etr(),VTo=vtr(),WTo=fut(),OTo=Ntr(),PTo=xtr(),MTo=Ftr(),HTo=Wtr(),YTo=Ptr(),QTo=Qtr(),XTo=Utr(),JTo=qtr(),UTo=trr(),KTo=nrr(),jTo=hut(),zTo=mut(),qTo=arr(),$To=urr(),eRo=drr(),tRo=Irr(),rRo=Crr(),nRo=Cut(),iRo=Err(),sRo=vrr(),oRo=wrr(),aRo=Drr(),cRo=Grr(),lRo=Lrr(),uRo=n5e(),gRo=Wrr(),ARo=Mrr(),dRo=Yrr(),pRo=Jrr(),fRo=jrr(),IRo=qrr(),hRo=tnr(),mRo=nnr(),CRo=snr(),_Ro=anr(),yRo=lnr(),bRo=gnr(),ERo=pnr(),SRo=sIe(),vRo=Inr(),BRo=mnr(),wRo=ynr(),TRo=Enr(),RRo=Bnr(),NRo=Nnr(),DRo=Gnr(),kRo=Znr(),xRo=Wnr(),GRo=Pnr(),FRo=Hnr(),ZRo=Qnr(),LRo=Unr(),VRo=znr(),WRo=$nr(),ORo=tir(),PRo=Sut(),MRo=Eut(),HRo=cir(),YRo=n8(),QRo=uir(),XRo=Iir(),BDn=Cir(),wDn=yir(),JRo=Eir(),URo=iut(),KRo=wut(),jRo=cve(),zRo=J3e(),qRo=wir(),$Ro=Rir(),eNo=A5e(),tNo=xir(),rNo=Zir(),nNo=Vir(),iNo=Oir(),sNo=Mir(),oNo=Yir(),aNo=Xir(),cNo=Uir(),lNo=jir(),uNo=qir(),gNo=lM(),ANo=U3e(),dNo=esr(),pNo=nsr(),fNo=ssr(),INo=i8(),hNo=IX(),mNo=csr(),CNo=gsr(),_No=hsr(),yNo=Nut(),bNo=_sr(),ENo=bsr(),SNo=Ssr(),vNo=Bsr(),BNo=fX(),wNo=Tsr(),TNo=Nsr(),RNo=a5e(),NNo=ksr(),DNo=Gsr(),kNo=Osr(),xNo=Msr(),GNo=Qsr(),FNo=r5e(),ZNo=Jsr(),LNo=pve(),VNo=out(),WNo=Ksr(),ONo=zsr(),PNo=$sr(),MNo=Ylt(),HNo=tor(),YNo=nor(),QNo=sor(),XNo=cor(),JNo=xut(),UNo=rIe(),KNo=p$(),jNo=gor(),zNo=Bf(),qNo=B2(),$No=dor(),eDo=kut(),tDo=hor(),rDo=Cor(),nDo=yor(),iDo=vor(),sDo=wor(),oDo=Ror(),aDo=Dor(),cDo=sut(),lDo=M3e(),uDo=cut(),gDo=dve(),ADo=o5e(),dDo=uM(),pDo=Coe(),fDo=oIe(),IDo=Gor(),hDo=Zor(),mDo=Wor(),CDo=gve(),_Do=_oe(),yDo=f$(),bDo=Mor(),EDo=Qor(),SDo=t8(),vDo=r8(),BDo=Kor(),wDo=zor(),TDo=nar(),RDo=I$(),NDo=sar(),DDo=Fut(),kDo=uar(),xDo=dar(),GDo=Iar(),FDo=Car(),ZDo=bar(),LDo=Sar(),VDo=war(),WDo=Dar(),ODo=xar(),PDo=Zar(),MDo=War(),HDo=Par(),YDo=Har(),TDn=Yar(),QDo=Xar(),XDo=Uar(),JDo=rcr(),UDo=icr(),KDo=ocr(),jDo=ccr(),zDo=gcr(),qDo=pcr(),$Do=hcr(),eko=Ccr(),tko=ycr(),rko=Ecr(),nko=vcr(),iko=Nk(),sko=wcr(),oko=Rcr(),ako=I5e(),cko=cm(),lko=kcr(),uko=Gcr(),gko=Zcr(),Ako=Vcr(),dko=Ocr(),pko=Mcr(),fko=Ycr(),Iko=Xcr(),hko=Ucr(),mko=jcr(),Cko=qcr(),_ko=elr(),yko=rlr(),bko=g5e(),Eko=i5e(),Sko=uve(),vko=sT(),Bko=slr(),wko=q9(),Tko=cM(),Rko=alr(),Nko=llr(),Dko=tb(),kko=glr(),xko=bDn();Jn.castArray=mwo.castArray;Jn.chunk=Cwo.chunk;Jn.compact=_wo.compact;Jn.concat=ywo.concat;Jn.countBy=bwo.countBy;Jn.difference=Ewo.difference;Jn.differenceBy=Swo.differenceBy;Jn.differenceWith=vwo.differenceWith;Jn.drop=Bwo.drop;Jn.dropRight=wwo.dropRight;Jn.dropRightWhile=Two.dropRightWhile;Jn.dropWhile=Rwo.dropWhile;Jn.each=EDn.forEach;Jn.forEach=EDn.forEach;Jn.eachRight=SDn.forEachRight;Jn.forEachRight=SDn.forEachRight;Jn.every=Nwo.every;Jn.fill=Dwo.fill;Jn.filter=kwo.filter;Jn.find=xwo.find;Jn.findIndex=Gwo.findIndex;Jn.findLast=Fwo.findLast;Jn.findLastIndex=Zwo.findLastIndex;Jn.first=vDn.head;Jn.head=vDn.head;Jn.flatMap=Lwo.flatMap;Jn.flatMapDeep=Vwo.flatMapDeep;Jn.flatMapDepth=Wwo.flatMapDepth;Jn.flatten=Owo.flatten;Jn.flattenDeep=Pwo.flattenDeep;Jn.flattenDepth=Mwo.flattenDepth;Jn.groupBy=Hwo.groupBy;Jn.includes=Ywo.includes;Jn.indexOf=Qwo.indexOf;Jn.initial=Xwo.initial;Jn.intersection=Jwo.intersection;Jn.intersectionBy=Uwo.intersectionBy;Jn.intersectionWith=Kwo.intersectionWith;Jn.invokeMap=jwo.invokeMap;Jn.join=zwo.join;Jn.keyBy=qwo.keyBy;Jn.last=$wo.last;Jn.lastIndexOf=eTo.lastIndexOf;Jn.map=tTo.map;Jn.nth=rTo.nth;Jn.orderBy=nTo.orderBy;Jn.partition=iTo.partition;Jn.pull=sTo.pull;Jn.pullAll=oTo.pullAll;Jn.pullAllBy=aTo.pullAllBy;Jn.pullAllWith=cTo.pullAllWith;Jn.pullAt=lTo.pullAt;Jn.reduce=uTo.reduce;Jn.reduceRight=gTo.reduceRight;Jn.reject=ATo.reject;Jn.remove=dTo.remove;Jn.reverse=pTo.reverse;Jn.sample=fTo.sample;Jn.sampleSize=ITo.sampleSize;Jn.shuffle=hTo.shuffle;Jn.size=mTo.size;Jn.slice=CTo.slice;Jn.some=_To.some;Jn.sortBy=yTo.sortBy;Jn.sortedIndex=bTo.sortedIndex;Jn.sortedIndexBy=ETo.sortedIndexBy;Jn.sortedIndexOf=STo.sortedIndexOf;Jn.sortedLastIndex=vTo.sortedLastIndex;Jn.sortedLastIndexBy=BTo.sortedLastIndexBy;Jn.sortedLastIndexOf=wTo.sortedLastIndexOf;Jn.tail=TTo.tail;Jn.take=RTo.take;Jn.takeRight=NTo.takeRight;Jn.takeRightWhile=DTo.takeRightWhile;Jn.takeWhile=kTo.takeWhile;Jn.union=xTo.union;Jn.unionBy=GTo.unionBy;Jn.unionWith=FTo.unionWith;Jn.uniq=ZTo.uniq;Jn.uniqBy=LTo.uniqBy;Jn.uniqWith=VTo.uniqWith;Jn.unzip=WTo.unzip;Jn.unzipWith=OTo.unzipWith;Jn.without=PTo.without;Jn.xor=MTo.xor;Jn.xorBy=HTo.xorBy;Jn.xorWith=YTo.xorWith;Jn.zip=QTo.zip;Jn.zipObject=XTo.zipObject;Jn.zipObjectDeep=JTo.zipObjectDeep;Jn.zipWith=UTo.zipWith;Jn.after=KTo.after;Jn.ary=jTo.ary;Jn.attempt=zTo.attempt;Jn.before=qTo.before;Jn.bind=$To.bind;Jn.bindKey=eRo.bindKey;Jn.curry=tRo.curry;Jn.curryRight=rRo.curryRight;Jn.debounce=nRo.debounce;Jn.defer=iRo.defer;Jn.delay=sRo.delay;Jn.flip=oRo.flip;Jn.flow=aRo.flow;Jn.flowRight=cRo.flowRight;Jn.memoize=lRo.memoize;Jn.negate=uRo.negate;Jn.nthArg=gRo.nthArg;Jn.once=ARo.once;Jn.overArgs=dRo.overArgs;Jn.partial=pRo.partial;Jn.partialRight=fRo.partialRight;Jn.rearg=IRo.rearg;Jn.rest=hRo.rest;Jn.spread=mRo.spread;Jn.throttle=CRo.throttle;Jn.unary=_Ro.unary;Jn.wrap=yRo.wrap;Jn.add=bRo.add;Jn.ceil=ERo.ceil;Jn.clamp=SRo.clamp;Jn.divide=vRo.divide;Jn.floor=BRo.floor;Jn.inRange=wRo.inRange;Jn.max=TRo.max;Jn.maxBy=RRo.maxBy;Jn.mean=NRo.mean;Jn.meanBy=DRo.meanBy;Jn.min=kRo.min;Jn.minBy=xRo.minBy;Jn.multiply=GRo.multiply;Jn.parseInt=FRo.parseInt;Jn.random=ZRo.random;Jn.range=LRo.range;Jn.rangeRight=VRo.rangeRight;Jn.round=WRo.round;Jn.subtract=ORo.subtract;Jn.sum=PRo.sum;Jn.sumBy=MRo.sumBy;Jn.isEqual=HRo.isEqual;Jn.identity=YRo.identity;Jn.noop=QRo.noop;Jn.assign=XRo.assign;Jn.assignIn=BDn.assignIn;Jn.extend=BDn.assignIn;Jn.assignInWith=wDn.assignInWith;Jn.extendWith=wDn.assignInWith;Jn.assignWith=JRo.assignWith;Jn.at=URo.at;Jn.clone=KRo.clone;Jn.cloneDeep=jRo.cloneDeep;Jn.cloneDeepWith=zRo.cloneDeepWith;Jn.cloneWith=qRo.cloneWith;Jn.create=$Ro.create;Jn.defaults=eNo.defaults;Jn.defaultsDeep=tNo.defaultsDeep;Jn.findKey=rNo.findKey;Jn.findLastKey=nNo.findLastKey;Jn.forIn=iNo.forIn;Jn.forInRight=sNo.forInRight;Jn.forOwn=oNo.forOwn;Jn.forOwnRight=aNo.forOwnRight;Jn.fromPairs=cNo.fromPairs;Jn.functions=lNo.functions;Jn.functionsIn=uNo.functionsIn;Jn.get=gNo.get;Jn.has=ANo.has;Jn.hasIn=dNo.hasIn;Jn.invert=pNo.invert;Jn.invertBy=fNo.invertBy;Jn.keys=INo.keys;Jn.keysIn=hNo.keysIn;Jn.mapKeys=mNo.mapKeys;Jn.mapValues=CNo.mapValues;Jn.merge=_No.merge;Jn.mergeWith=yNo.mergeWith;Jn.omit=bNo.omit;Jn.omitBy=ENo.omitBy;Jn.pick=SNo.pick;Jn.pickBy=vNo.pickBy;Jn.property=BNo.property;Jn.propertyOf=wNo.propertyOf;Jn.result=TNo.result;Jn.set=RNo.set;Jn.setWith=NNo.setWith;Jn.toDefaulted=DNo.toDefaulted;Jn.toPairs=kNo.toPairs;Jn.toPairsIn=xNo.toPairsIn;Jn.transform=GNo.transform;Jn.unset=FNo.unset;Jn.update=ZNo.update;Jn.updateWith=LNo.updateWith;Jn.values=VNo.values;Jn.valuesIn=WNo.valuesIn;Jn.isFunction=ONo.isFunction;Jn.isLength=PNo.isLength;Jn.isMatchWith=MNo.isMatchWith;Jn.isNative=HNo.isNative;Jn.isNull=YNo.isNull;Jn.isUndefined=QNo.isUndefined;Jn.conforms=XNo.conforms;Jn.conformsTo=JNo.conformsTo;Jn.isArguments=UNo.isArguments;Jn.isArray=KNo.isArray;Jn.isArrayBuffer=jNo.isArrayBuffer;Jn.isArrayLike=zNo.isArrayLike;Jn.isArrayLikeObject=qNo.isArrayLikeObject;Jn.isBoolean=$No.isBoolean;Jn.isBuffer=eDo.isBuffer;Jn.isDate=tDo.isDate;Jn.isElement=rDo.isElement;Jn.isEmpty=nDo.isEmpty;Jn.isEqualWith=iDo.isEqualWith;Jn.isError=sDo.isError;Jn.isFinite=oDo.isFinite;Jn.isInteger=aDo.isInteger;Jn.isMap=cDo.isMap;Jn.isMatch=lDo.isMatch;Jn.isNaN=uDo.isNaN;Jn.isNil=gDo.isNil;Jn.isNumber=ADo.isNumber;Jn.isObject=dDo.isObject;Jn.isObjectLike=pDo.isObjectLike;Jn.isPlainObject=fDo.isPlainObject;Jn.isRegExp=IDo.isRegExp;Jn.isSafeInteger=hDo.isSafeInteger;Jn.isSet=mDo.isSet;Jn.isString=CDo.isString;Jn.isSymbol=_Do.isSymbol;Jn.isTypedArray=yDo.isTypedArray;Jn.isWeakMap=bDo.isWeakMap;Jn.isWeakSet=EDo.isWeakSet;Jn.matches=SDo.matches;Jn.matchesProperty=vDo.matchesProperty;Jn.capitalize=BDo.capitalize;Jn.bindAll=wDo.bindAll;Jn.camelCase=TDo.camelCase;Jn.deburr=RDo.deburr;Jn.endsWith=NDo.endsWith;Jn.escape=DDo.escape;Jn.escapeRegExp=kDo.escapeRegExp;Jn.kebabCase=xDo.kebabCase;Jn.lowerCase=GDo.lowerCase;Jn.lowerFirst=FDo.lowerFirst;Jn.pad=ZDo.pad;Jn.padEnd=LDo.padEnd;Jn.padStart=VDo.padStart;Jn.repeat=WDo.repeat;Jn.replace=ODo.replace;Jn.snakeCase=PDo.snakeCase;Jn.split=MDo.split;Jn.startCase=HDo.startCase;Jn.startsWith=YDo.startsWith;Jn.template=TDn.template;Jn.templateSettings=TDn.templateSettings;Jn.toLower=QDo.toLower;Jn.toUpper=XDo.toUpper;Jn.trim=JDo.trim;Jn.trimEnd=UDo.trimEnd;Jn.trimStart=KDo.trimStart;Jn.truncate=jDo.truncate;Jn.unescape=zDo.unescape;Jn.upperCase=qDo.upperCase;Jn.upperFirst=$Do.upperFirst;Jn.words=eko.words;Jn.cond=tko.cond;Jn.constant=rko.constant;Jn.defaultTo=nko.defaultTo;Jn.eq=iko.isEqualsSameValueZero;Jn.gt=sko.gt;Jn.gte=oko.gte;Jn.invoke=ako.invoke;Jn.iteratee=cko.iteratee;Jn.lt=lko.lt;Jn.lte=uko.lte;Jn.method=gko.method;Jn.methodOf=Ako.methodOf;Jn.now=dko.now;Jn.over=pko.over;Jn.overEvery=fko.overEvery;Jn.overSome=Iko.overSome;Jn.stubArray=hko.stubArray;Jn.stubFalse=mko.stubFalse;Jn.stubObject=Cko.stubObject;Jn.stubString=_ko.stubString;Jn.stubTrue=yko.stubTrue;Jn.times=bko.times;Jn.toArray=Eko.toArray;Jn.toFinite=Sko.toFinite;Jn.toInteger=vko.toInteger;Jn.toLength=Bko.toLength;Jn.toNumber=wko.toNumber;Jn.toPath=Tko.toPath;Jn.toPlainObject=Rko.toPlainObject;Jn.toSafeInteger=Nko.toSafeInteger;Jn.toString=Dko.toString;Jn.uniqueId=kko.uniqueId;Jn.default=xko.toolkit});var MO=H((exports,module)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.CachingStrategy=exports.DefaultStream=exports.AsyncActions=exports.BufferStream=void 0;exports.isTaggedYarnVersion=isTaggedYarnVersion;exports.plural=plural;exports.escapeRegExp=escapeRegExp;exports.overrideType=overrideType;exports.assertNever=assertNever;exports.validateEnum=validateEnum;exports.mapAndFilter=mapAndFilter;exports.mapAndFind=mapAndFind;exports.isIndexableObject=isIndexableObject;exports.allSettledSafe=allSettledSafe;exports.convertMapsToIndexableObjects=convertMapsToIndexableObjects;exports.getFactoryWithDefault=getFactoryWithDefault;exports.getArrayWithDefault=getArrayWithDefault;exports.getSetWithDefault=getSetWithDefault;exports.getMapWithDefault=getMapWithDefault;exports.releaseAfterUseAsync=releaseAfterUseAsync;exports.prettifyAsyncErrors=prettifyAsyncErrors;exports.prettifySyncErrors=prettifySyncErrors;exports.bufferStream=bufferStream;exports.makeDeferred=makeDeferred;exports.dynamicRequire=dynamicRequire;exports.sortMap=sortMap;exports.buildIgnorePattern=buildIgnorePattern;exports.replaceEnvVariables=replaceEnvVariables;exports.parseBoolean=parseBoolean;exports.parseOptionalBoolean=parseOptionalBoolean;exports.tryParseOptionalBoolean=tryParseOptionalBoolean;exports.isPathLike=isPathLike;exports.mergeIntoTarget=mergeIntoTarget;exports.toMerged=toMerged;exports.groupBy=groupBy;exports.parseInt=parseInt;exports.parseDuration=parseDuration;var tslib_1=(Wa(),vi(Va)),fslib_1=No(),clipanion_1=(vl(),vi(ng)),compat_1=PO(),micromatch_1=tslib_1.__importDefault(Rk()),p_limit_1=tslib_1.__importDefault(Kfe()),semver_1=tslib_1.__importDefault(zC()),stream_1=Et("stream");function isTaggedYarnVersion(e){return!!(semver_1.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9]+)?$/))}function plural(e,{one:t,more:r,zero:n=r}){return e===0?n:e===1?t:r}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(e){}function assertNever(e){throw new Error(`Assertion failed: Unexpected object '${e}'`)}function validateEnum(e,t){let r=Object.values(e);if(!r.includes(t))throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(t)} (expected one of ${r.map(n=>JSON.stringify(n)).join(", ")})`);return t}function mapAndFilter(e,t){let r=[];for(let n of e){let a=t(n);a!==mapAndFilterSkip&&r.push(a)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(e,t){for(let r of e){let n=t(r);if(n!==mapAndFindSkip)return n}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(e){return typeof e=="object"&&e!==null}async function allSettledSafe(e){let t=await Promise.allSettled(e),r=[];for(let n of t){if(n.status==="rejected")throw n.reason;r.push(n.value)}return r}function convertMapsToIndexableObjects(e){if(e instanceof Map&&(e=Object.fromEntries(e)),isIndexableObject(e))for(let t of Object.keys(e)){let r=e[t];isIndexableObject(r)&&(e[t]=convertMapsToIndexableObjects(r))}return e}function getFactoryWithDefault(e,t,r){let n=e.get(t);return typeof n>"u"&&e.set(t,n=r()),n}function getArrayWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}function getSetWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}function getMapWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}async function releaseAfterUseAsync(e,t){if(t==null)return await e();try{return await e()}finally{await t()}}async function prettifyAsyncErrors(e,t){try{return await e()}catch(r){throw r.message=t(r.message),r}}function prettifySyncErrors(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}async function bufferStream(e){return await new Promise((t,r)=>{let n=[];e.on("error",a=>{r(a)}),e.on("data",a=>{n.push(a)}),e.on("end",()=>{t(Buffer.concat(n))})})}var BufferStream=class extends stream_1.Transform{constructor(){super(...arguments),this.chunks=[]}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(t),n(null,null)}_flush(t){t(null,Buffer.concat(this.chunks))}};exports.BufferStream=BufferStream;function makeDeferred(){let e,t;return{promise:new Promise((n,a)=>{e=n,t=a}),resolve:e,reject:t}}var AsyncActions=class{constructor(t){this.deferred=new Map,this.promises=new Map,this.limit=(0,p_limit_1.default)(t)}set(t,r){let n=this.deferred.get(t);typeof n>"u"&&this.deferred.set(t,n=makeDeferred());let a=this.limit(()=>r());return this.promises.set(t,a),a.then(()=>{this.promises.get(t)===a&&n.resolve()},o=>{this.promises.get(t)===a&&n.reject(o)}),n.promise}reduce(t,r){let n=this.promises.get(t)??Promise.resolve();this.set(t,()=>r(n))}async wait(){await Promise.all(this.promises.values())}};exports.AsyncActions=AsyncActions;var DefaultStream=class extends stream_1.Transform{constructor(t=Buffer.alloc(0)){super(),this.active=!0,this.ifEmpty=t}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,n(null,t)}_flush(t){this.active&&this.ifEmpty.length>0?t(null,this.ifEmpty):t(null)}};exports.DefaultStream=DefaultStream;var realRequire=eval("require");function dynamicRequireNode(e){return realRequire(fslib_1.npath.fromPortablePath(e))}function dynamicRequireNoCache(path){let physicalPath=fslib_1.npath.fromPortablePath(path),currentCacheEntry=realRequire.cache[physicalPath];delete realRequire.cache[physicalPath];let result;try{result=dynamicRequireNode(physicalPath);let freshCacheEntry=realRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children?dynamicModule.children.indexOf(freshCacheEntry):-1;freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{realRequire.cache[physicalPath]=currentCacheEntry}return result}var dynamicRequireFsTimeCache=new Map;function dynamicRequireFsTime(e){let t=dynamicRequireFsTimeCache.get(e),r=fslib_1.xfs.statSync(e);if(t?.mtime===r.mtimeMs)return t.instance;let n=dynamicRequireNoCache(e);return dynamicRequireFsTimeCache.set(e,{mtime:r.mtimeMs,instance:n}),n}var CachingStrategy;(function(e){e[e.NoCache=0]="NoCache",e[e.FsTime=1]="FsTime",e[e.Node=2]="Node"})(CachingStrategy||(exports.CachingStrategy=CachingStrategy={}));function dynamicRequire(e,{cachingStrategy:t=CachingStrategy.Node}={}){switch(t){case CachingStrategy.NoCache:return dynamicRequireNoCache(e);case CachingStrategy.FsTime:return dynamicRequireFsTime(e);case CachingStrategy.Node:return dynamicRequireNode(e);default:throw new Error("Unsupported caching strategy")}}function sortMap(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function buildIgnorePattern(e){return e.length===0?null:e.map(t=>`(${micromatch_1.default.makeRe(t,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(e,{env:t}){let r="",n=0,a=0,o=e.matchAll(/\\(?[\\$}])|\$\{(?[a-zA-Z]\w*)(?:-|-|(?=\}))|(?\$\{)|\}/g),l=()=>{let A=a;for(let{0:f,index:I,groups:{variable:C}={}}of o)if(C)a++;else if(f==="}"&&--a0)throw new clipanion_1.UsageError(`Incomplete variable substitution in input: ${e}`);return r+e.slice(n)}function parseBoolean(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${e}" as a boolean`)}}function parseOptionalBoolean(e){return typeof e>"u"?e:parseBoolean(e)}function tryParseOptionalBoolean(e){try{return parseOptionalBoolean(e)}catch{return null}}function isPathLike(e){return!!(fslib_1.npath.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}function mergeIntoTarget(e,...t){let r=l=>({value:l}),n=r(e),a=t.map(l=>r(l)),{value:o}=(0,compat_1.mergeWith)(n,...a,(l,A)=>{if(Array.isArray(l)&&Array.isArray(A)){for(let f of A)l.find(I=>(0,compat_1.isEqual)(I,f))||l.push(f);return l}});return o}function toMerged(...e){return mergeIntoTarget({},...e)}function groupBy(e,t){let r=Object.create(null);for(let n of e){let a=n[t];r[a]??=[],r[a].push(n)}return r}function parseInt(e){return typeof e=="string"?Number.parseInt(e,10):e}var DURATION_UNITS={ms:1,s:1e3,m:60*1e3,h:60*60*1e3,d:24*60*60*1e3,w:7*24*60*60*1e3},DURATION_REGEXP=new RegExp(`^(?\\d*\\.?\\d+)(?${Object.keys(DURATION_UNITS).join("|")})?$`);function parseDuration(e,t){let r=DURATION_REGEXP.exec(e)?.groups;if(!r)throw new Error(`Couldn't parse "${e}" as a duration`);if(r.unit===void 0)return parseFloat(r.num);let n=DURATION_UNITS[r.unit];if(!n)throw new Error(`Invalid duration unit "${r.unit}"`);return parseFloat(r.num)*n/DURATION_UNITS[t]}});var lIe=H(Soe=>{"use strict";Object.defineProperty(Soe,"__esModule",{value:!0});Soe.PackageExtensionStatus=Soe.PackageExtensionType=Soe.LinkType=void 0;var RDn;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(RDn||(Soe.LinkType=RDn={}));var NDn;(function(e){e.Dependency="Dependency",e.PeerDependency="PeerDependency",e.PeerDependencyMeta="PeerDependencyMeta"})(NDn||(Soe.PackageExtensionType=NDn={}));var DDn;(function(e){e.Inactive="inactive",e.Redundant="redundant",e.Active="active"})(DDn||(Soe.PackageExtensionStatus=DDn={}))});var gM=H(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.LogLevel=Ou.supportsHyperlinks=Ou.supportsColor=Ou.Style=Ou.Type=Ou.stripAnsi=void 0;Ou.tuple=Vko;Ou.applyStyle=FDn;Ou.applyColor=nb;Ou.applyHyperlink=ZDn;Ou.pretty=uIe;Ou.prettyList=Oko;Ou.json=LDn;Ou.jsonOrPretty=Pko;Ou.mark=Mko;Ou.prettyField=Hko;Ou.prettyTruncatedLocatorList=Yko;Ou.addLogFilterSupport=Qko;var Cve=(Wa(),vi(Va)),kDn=No(),Mut=Cve.__importDefault(qK()),Out=Cve.__importDefault(Ufe()),Gko=(vl(),vi(ng)),Fko=Cve.__importDefault(Rk()),GDn=Cve.__importDefault(aM());Ou.stripAnsi=GDn.default;var Wut=K9(),Zko=Cve.__importStar(MO()),FE=Cve.__importStar(IG()),mve=lIe();Ou.Type={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",STRING:"STRING",BOOLEAN:"BOOLEAN",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"};var Hut;(function(e){e[e.BOLD=2]="BOLD"})(Hut||(Ou.Style=Hut={}));var plr=Out.default.GITHUB_ACTIONS?{level:2}:Mut.default.supportsColor?{level:Mut.default.supportsColor.level}:{level:0};Ou.supportsColor=plr.level!==0;Ou.supportsHyperlinks=Ou.supportsColor&&!Out.default.GITHUB_ACTIONS&&!Out.default.CIRCLE&&!Out.default.GITLAB;var dlr=new Mut.default.Instance(plr),Lko=new Map([[Ou.Type.NO_HINT,null],[Ou.Type.NULL,["#a853b5",129]],[Ou.Type.SCOPE,["#d75f00",166]],[Ou.Type.NAME,["#d7875f",173]],[Ou.Type.RANGE,["#00afaf",37]],[Ou.Type.REFERENCE,["#87afff",111]],[Ou.Type.NUMBER,["#ffd700",220]],[Ou.Type.STRING,["#b4bd68",32]],[Ou.Type.BOOLEAN,["#faa023",209]],[Ou.Type.PATH,["#d75fd7",170]],[Ou.Type.URL,["#d75fd7",170]],[Ou.Type.ADDED,["#5faf00",70]],[Ou.Type.REMOVED,["#ff3131",160]],[Ou.Type.CODE,["#87afff",111]],[Ou.Type.SIZE,["#ffd700",220]]]),fG=e=>e;function xDn(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1024**r;)r-=1;let n=1024**r;return`${Math.floor(e*100/n)/100} ${t[r-1]}`}function Put(e,t){if(Array.isArray(t))return t.length===0?nb(e,"[]",Ou.Type.CODE):nb(e,"[ ",Ou.Type.CODE)+t.map(r=>Put(e,r)).join(", ")+nb(e," ]",Ou.Type.CODE);if(typeof t=="string")return nb(e,JSON.stringify(t),Ou.Type.STRING);if(typeof t=="number")return nb(e,JSON.stringify(t),Ou.Type.NUMBER);if(typeof t=="boolean")return nb(e,JSON.stringify(t),Ou.Type.BOOLEAN);if(t===null)return nb(e,"null",Ou.Type.NULL);if(typeof t=="object"&&Object.getPrototypeOf(t)===Object.prototype){let r=Object.entries(t);return r.length===0?nb(e,"{}",Ou.Type.CODE):nb(e,"{ ",Ou.Type.CODE)+r.map(([n,a])=>`${Put(e,n)}: ${Put(e,a)}`).join(", ")+nb(e," }",Ou.Type.CODE)}if(typeof t>"u")return nb(e,"undefined",Ou.Type.NULL);throw new Error("Assertion failed: The value doesn't seem to be a valid JSON object")}var Yut={[Ou.Type.ID]:fG({pretty:(e,t)=>typeof t=="number"?nb(e,`${t}`,Ou.Type.NUMBER):nb(e,t,Ou.Type.CODE),json:e=>e}),[Ou.Type.INSPECT]:fG({pretty:(e,t)=>Put(e,t),json:e=>e}),[Ou.Type.NUMBER]:fG({pretty:(e,t)=>nb(e,`${t}`,Ou.Type.NUMBER),json:e=>e}),[Ou.Type.IDENT]:fG({pretty:(e,t)=>FE.prettyIdent(e,t),json:e=>FE.stringifyIdent(e)}),[Ou.Type.LOCATOR]:fG({pretty:(e,t)=>FE.prettyLocator(e,t),json:e=>FE.stringifyLocator(e)}),[Ou.Type.DESCRIPTOR]:fG({pretty:(e,t)=>FE.prettyDescriptor(e,t),json:e=>FE.stringifyDescriptor(e)}),[Ou.Type.RESOLUTION]:fG({pretty:(e,{descriptor:t,locator:r})=>FE.prettyResolution(e,t,r),json:({descriptor:e,locator:t})=>({descriptor:FE.stringifyDescriptor(e),locator:t!==null?FE.stringifyLocator(t):null})}),[Ou.Type.DEPENDENT]:fG({pretty:(e,{locator:t,descriptor:r})=>FE.prettyDependent(e,t,r),json:({locator:e,descriptor:t})=>({locator:FE.stringifyLocator(e),descriptor:FE.stringifyDescriptor(t)})}),[Ou.Type.PACKAGE_EXTENSION]:fG({pretty:(e,t)=>{switch(t.type){case mve.PackageExtensionType.Dependency:return`${FE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${nb(e,"dependencies",Ou.Type.CODE)} \u27A4 ${FE.prettyIdent(e,t.descriptor)}`;case mve.PackageExtensionType.PeerDependency:return`${FE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${nb(e,"peerDependencies",Ou.Type.CODE)} \u27A4 ${FE.prettyIdent(e,t.descriptor)}`;case mve.PackageExtensionType.PeerDependencyMeta:return`${FE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${nb(e,"peerDependenciesMeta",Ou.Type.CODE)} \u27A4 ${FE.prettyIdent(e,FE.parseIdent(t.selector))} \u27A4 ${nb(e,t.key,Ou.Type.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}},json:e=>{switch(e.type){case mve.PackageExtensionType.Dependency:return`${FE.stringifyIdent(e.parentDescriptor)} > ${FE.stringifyIdent(e.descriptor)}`;case mve.PackageExtensionType.PeerDependency:return`${FE.stringifyIdent(e.parentDescriptor)} >> ${FE.stringifyIdent(e.descriptor)}`;case mve.PackageExtensionType.PeerDependencyMeta:return`${FE.stringifyIdent(e.parentDescriptor)} >> ${e.selector} / ${e.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}}}),[Ou.Type.SETTING]:fG({pretty:(e,t)=>(e.get(t),ZDn(e,nb(e,t,Ou.Type.CODE),`https://yarnpkg.com/configuration/yarnrc#${t}`)),json:e=>e}),[Ou.Type.DURATION]:fG({pretty:(e,t)=>{if(t>1e3*60){let r=Math.floor(t/1e3/60),n=Math.ceil((t-r*60*1e3)/1e3);return n===0?`${r}m`:`${r}m ${n}s`}else{let r=Math.floor(t/1e3),n=t-r*1e3;return n===0?`${r}s`:`${r}s ${n}ms`}},json:e=>e}),[Ou.Type.SIZE]:fG({pretty:(e,t)=>nb(e,xDn(t),Ou.Type.NUMBER),json:e=>e}),[Ou.Type.SIZE_DIFF]:fG({pretty:(e,t)=>{let r=t>=0?"+":"-",n=r==="+"?Ou.Type.REMOVED:Ou.Type.ADDED;return nb(e,`${r} ${xDn(Math.max(Math.abs(t),1))}`,n)},json:e=>e}),[Ou.Type.PATH]:fG({pretty:(e,t)=>nb(e,kDn.npath.fromPortablePath(t),Ou.Type.PATH),json:e=>kDn.npath.fromPortablePath(e)}),[Ou.Type.MARKDOWN]:fG({pretty:(e,{text:t,format:r,paragraphs:n})=>(0,Gko.formatMarkdownish)(t,{format:r,paragraphs:n}),json:({text:e})=>e}),[Ou.Type.MARKDOWN_INLINE]:fG({pretty:(e,t)=>(t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(r,n,a)=>uIe(e,n+a+n,Ou.Type.CODE)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,n,a)=>FDn(e,a,Hut.BOLD)),t),json:e=>e})};function Vko(e,t){return[t,e]}function FDn(e,t,r){return e.get("enableColors")&&r&Hut.BOLD&&(t=Mut.default.bold(t)),t}function nb(e,t,r){if(!e.get("enableColors"))return t;let n=Lko.get(r);if(n===null)return t;let a=typeof n>"u"?r:plr.level>=3?n[0]:n[1],o=typeof a=="number"?dlr.ansi256(a):a.startsWith("#")?dlr.hex(a):dlr[a];if(typeof o!="function")throw new Error(`Invalid format type ${a}`);return o(t)}var Wko=!!process.env.KONSOLE_VERSION;function ZDn(e,t,r){return e.get("enableHyperlinks")?Wko?`\x1B]8;;${r}\x1B\\${t}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${t}\x1B]8;;\x07`:t}function uIe(e,t,r){if(t===null)return nb(e,"null",Ou.Type.NULL);if(Object.hasOwn(Yut,r))return Yut[r].pretty(e,t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return nb(e,t,r)}function Oko(e,t,r,{separator:n=", "}={}){return[...t].map(a=>uIe(e,a,r)).join(n)}function LDn(e,t){if(e===null)return null;if(Object.hasOwn(Yut,t))return Zko.overrideType(t),Yut[t].json(e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return e}function Pko(e,t,[r,n]){return e?LDn(r,n):uIe(t,r,n)}function Mko(e){return{Check:nb(e,"\u2713","green"),Cross:nb(e,"\u2718","red"),Question:nb(e,"?","cyan")}}function Hko(e,{label:t,value:[r,n]}){return`${uIe(e,t,Ou.Type.CODE)}: ${uIe(e,r,n)}`}function Yko(e,t,r){let n=[],a=[...t],o=r;for(;a.length>0;){let I=a[0],C=`${FE.prettyLocator(e,I)}, `,b=FE.prettyLocatorNoColors(I).length+2;if(n.length>0&&oI).join("").slice(0,-2);let l="X".repeat(a.length.toString().length),A=`and ${l} more.`,f=a.length;for(;n.length>1&&oI).join(""),A.replace(l,uIe(e,f,Ou.Type.NUMBER))].join("")}var voe;(function(e){e.Error="error",e.Warning="warning",e.Info="info",e.Discard="discard"})(voe||(Ou.LogLevel=voe={}));function Qko(e,{configuration:t}){let r=t.get("logFilters"),n=new Map,a=new Map,o=[];for(let b of r){let E=b.get("level");if(typeof E>"u")continue;let N=b.get("code");typeof N<"u"&&n.set(N,E);let B=b.get("text");typeof B<"u"&&a.set(B,E);let F=b.get("pattern");typeof F<"u"&&o.push([Fko.default.matcher(F,{contains:!0}),E])}o.reverse();let l=(b,E,N)=>{if(b===null||b===Wut.MessageName.UNNAMED)return N;let B=a.size>0||o.length>0?(0,GDn.default)(E):E;if(a.size>0){let F=a.get(B);if(typeof F<"u")return F??N}if(o.length>0){for(let[F,Q]of o)if(F(B))return Q??N}if(n.size>0){let F=n.get((0,Wut.stringifyMessageName)(b));if(typeof F<"u")return F??N}return N},A=e.reportInfo,f=e.reportWarning,I=e.reportError,C=function(b,E,N,B){switch(l(E,N,B)){case voe.Info:A.call(b,E,N);break;case voe.Warning:f.call(b,E??Wut.MessageName.UNNAMED,N);break;case voe.Error:I.call(b,E??Wut.MessageName.UNNAMED,N);break}};e.reportInfo=function(...b){return C(this,...b,voe.Info)},e.reportWarning=function(...b){return C(this,...b,voe.Warning)},e.reportError=function(...b){return C(this,...b,voe.Error)}}});var VDn=H(_ve=>{"use strict";Object.defineProperty(_ve,"__esModule",{value:!0});_ve.splitWhen=_ve.flatten=void 0;function Xko(e){return e.reduce((t,r)=>[].concat(t,r),[])}_ve.flatten=Xko;function Jko(e,t){let r=[[]],n=0;for(let a of e)t(a)?(n++,r[n]=[]):r[n].push(a);return r}_ve.splitWhen=Jko});var WDn=H(Qut=>{"use strict";Object.defineProperty(Qut,"__esModule",{value:!0});Qut.isEnoentCodeError=void 0;function Uko(e){return e.code==="ENOENT"}Qut.isEnoentCodeError=Uko});var ODn=H(Xut=>{"use strict";Object.defineProperty(Xut,"__esModule",{value:!0});Xut.createDirentFromStats=void 0;var flr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function Kko(e,t){return new flr(e,t)}Xut.createDirentFromStats=Kko});var YDn=H(oT=>{"use strict";Object.defineProperty(oT,"__esModule",{value:!0});oT.convertPosixPathToPattern=oT.convertWindowsPathToPattern=oT.convertPathToPattern=oT.escapePosixPath=oT.escapeWindowsPath=oT.escape=oT.removeLeadingDotSegment=oT.makeAbsolute=oT.unixify=void 0;var jko=Et("os"),zko=Et("path"),PDn=jko.platform()==="win32",qko=2,$ko=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,exo=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,txo=/^\\\\([.?])/,rxo=/\\(?![!()+@[\]{}])/g;function nxo(e){return e.replace(/\\/g,"/")}oT.unixify=nxo;function ixo(e,t){return zko.resolve(e,t)}oT.makeAbsolute=ixo;function sxo(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t==="\\")return e.slice(qko)}return e}oT.removeLeadingDotSegment=sxo;oT.escape=PDn?Ilr:hlr;function Ilr(e){return e.replace(exo,"\\$2")}oT.escapeWindowsPath=Ilr;function hlr(e){return e.replace($ko,"\\$2")}oT.escapePosixPath=hlr;oT.convertPathToPattern=PDn?MDn:HDn;function MDn(e){return Ilr(e).replace(txo,"//$1").replace(rxo,"/")}oT.convertWindowsPathToPattern=MDn;function HDn(e){return hlr(e)}oT.convertPosixPathToPattern=HDn});var XDn=H((rKl,QDn)=>{QDn.exports=function(t){if(typeof t!="string"||t==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(t);){if(r[2])return!0;t=t.slice(r.index+r[0].length)}return!1}});var KDn=H((nKl,UDn)=>{var oxo=XDn(),JDn={"{":"}","(":")","[":"]"},axo=function(e){if(e[0]==="!")return!0;for(var t=0,r=-2,n=-2,a=-2,o=-2,l=-2;tt&&(l===-1||l>n||(l=e.indexOf("\\",t),l===-1||l>n)))||a!==-1&&e[t]==="{"&&e[t+1]!=="}"&&(a=e.indexOf("}",t),a>t&&(l=e.indexOf("\\",t),l===-1||l>a))||o!==-1&&e[t]==="("&&e[t+1]==="?"&&/[:!=]/.test(e[t+2])&&e[t+3]!==")"&&(o=e.indexOf(")",t),o>t&&(l=e.indexOf("\\",t),l===-1||l>o))||r!==-1&&e[t]==="("&&e[t+1]!=="|"&&(rr&&(l=e.indexOf("\\",r),l===-1||l>o))))return!0;if(e[t]==="\\"){var A=e[t+1];t+=2;var f=JDn[A];if(f){var I=e.indexOf(f,t);I!==-1&&(t=I+1)}if(e[t]==="!")return!0}else t++}return!1},cxo=function(e){if(e[0]==="!")return!0;for(var t=0;t{"use strict";var lxo=KDn(),uxo=Et("path").posix.dirname,gxo=Et("os").platform()==="win32",mlr="/",Axo=/\\/g,dxo=/[\{\[].*[\}\]]$/,pxo=/(^|[^\\])([\{\[]|\([^\)]+$)/,fxo=/\\([\!\*\?\|\[\]\(\)\{\}])/g;jDn.exports=function(t,r){var n=Object.assign({flipBackslashes:!0},r);n.flipBackslashes&&gxo&&t.indexOf(mlr)<0&&(t=t.replace(Axo,mlr)),dxo.test(t)&&(t+=mlr),t+="a";do t=uxo(t);while(lxo(t)||pxo.test(t));return t.replace(fxo,"$1")}});var skn=H(cI=>{"use strict";Object.defineProperty(cI,"__esModule",{value:!0});cI.removeDuplicateSlashes=cI.matchAny=cI.convertPatternsToRe=cI.makeRe=cI.getPatternParts=cI.expandBraceExpansion=cI.expandPatternsWithBraceExpansion=cI.isAffectDepthOfReadingPattern=cI.endsWithSlashGlobStar=cI.hasGlobStar=cI.getBaseDirectory=cI.isPatternRelatedToParentDirectory=cI.getPatternsOutsideCurrentDirectory=cI.getPatternsInsideCurrentDirectory=cI.getPositivePatterns=cI.getNegativePatterns=cI.isPositivePattern=cI.isNegativePattern=cI.convertToNegativePattern=cI.convertToPositivePattern=cI.isDynamicPattern=cI.isStaticPattern=void 0;var Ixo=Et("path"),hxo=zDn(),Clr=Rk(),qDn="**",mxo="\\",Cxo=/[*?]|^!/,_xo=/\[[^[]*]/,yxo=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,bxo=/[!*+?@]\([^(]*\)/,Exo=/,|\.\./,Sxo=/(?!^)\/{2,}/g;function $Dn(e,t={}){return!ekn(e,t)}cI.isStaticPattern=$Dn;function ekn(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.includes(mxo)||Cxo.test(e)||_xo.test(e)||yxo.test(e)||t.extglob!==!1&&bxo.test(e)||t.braceExpansion!==!1&&vxo(e))}cI.isDynamicPattern=ekn;function vxo(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf("}",t+1);if(r===-1)return!1;let n=e.slice(t,r);return Exo.test(n)}function Bxo(e){return Jut(e)?e.slice(1):e}cI.convertToPositivePattern=Bxo;function wxo(e){return"!"+e}cI.convertToNegativePattern=wxo;function Jut(e){return e.startsWith("!")&&e[1]!=="("}cI.isNegativePattern=Jut;function tkn(e){return!Jut(e)}cI.isPositivePattern=tkn;function Txo(e){return e.filter(Jut)}cI.getNegativePatterns=Txo;function Rxo(e){return e.filter(tkn)}cI.getPositivePatterns=Rxo;function Nxo(e){return e.filter(t=>!_lr(t))}cI.getPatternsInsideCurrentDirectory=Nxo;function Dxo(e){return e.filter(_lr)}cI.getPatternsOutsideCurrentDirectory=Dxo;function _lr(e){return e.startsWith("..")||e.startsWith("./..")}cI.isPatternRelatedToParentDirectory=_lr;function kxo(e){return hxo(e,{flipBackslashes:!1})}cI.getBaseDirectory=kxo;function xxo(e){return e.includes(qDn)}cI.hasGlobStar=xxo;function rkn(e){return e.endsWith("/"+qDn)}cI.endsWithSlashGlobStar=rkn;function Gxo(e){let t=Ixo.basename(e);return rkn(e)||$Dn(t)}cI.isAffectDepthOfReadingPattern=Gxo;function Fxo(e){return e.reduce((t,r)=>t.concat(nkn(r)),[])}cI.expandPatternsWithBraceExpansion=Fxo;function nkn(e){let t=Clr.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0});return t.sort((r,n)=>r.length-n.length),t.filter(r=>r!=="")}cI.expandBraceExpansion=nkn;function Zxo(e,t){let{parts:r}=Clr.scan(e,Object.assign(Object.assign({},t),{parts:!0}));return r.length===0&&(r=[e]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}cI.getPatternParts=Zxo;function ikn(e,t){return Clr.makeRe(e,t)}cI.makeRe=ikn;function Lxo(e,t){return e.map(r=>ikn(r,t))}cI.convertPatternsToRe=Lxo;function Vxo(e,t){return t.some(r=>r.test(e))}cI.matchAny=Vxo;function Wxo(e){return e.replace(Sxo,"/")}cI.removeDuplicateSlashes=Wxo});var ylr=H((oKl,ckn)=>{"use strict";var Oxo=Et("stream"),okn=Oxo.PassThrough,Pxo=Array.prototype.slice;ckn.exports=Mxo;function Mxo(){let e=[],t=Pxo.call(arguments),r=!1,n=t[t.length-1];n&&!Array.isArray(n)&&n.pipe==null?t.pop():n={};let a=n.end!==!1,o=n.pipeError===!0;n.objectMode==null&&(n.objectMode=!0),n.highWaterMark==null&&(n.highWaterMark=64*1024);let l=okn(n);function A(){for(let C=0,b=arguments.length;C0||(r=!1,f())}function N(B){function F(){B.removeListener("merge2UnpipeEnd",F),B.removeListener("end",F),o&&B.removeListener("error",Q),E()}function Q(J){l.emit("error",J)}if(B._readableState.endEmitted)return E();B.on("merge2UnpipeEnd",F),B.on("end",F),o&&B.on("error",Q),B.pipe(l,{end:!1}),B.resume()}for(let B=0;B{"use strict";Object.defineProperty(Uut,"__esModule",{value:!0});Uut.merge=void 0;var Hxo=ylr();function Yxo(e){let t=Hxo(e);return e.forEach(r=>{r.once("error",n=>t.emit("error",n))}),t.once("close",()=>lkn(e)),t.once("end",()=>lkn(e)),t}Uut.merge=Yxo;function lkn(e){e.forEach(t=>t.emit("close"))}});var gkn=H(yve=>{"use strict";Object.defineProperty(yve,"__esModule",{value:!0});yve.isEmpty=yve.isString=void 0;function Qxo(e){return typeof e=="string"}yve.isString=Qxo;function Xxo(e){return e===""}yve.isEmpty=Xxo});var h$=H(hG=>{"use strict";Object.defineProperty(hG,"__esModule",{value:!0});hG.string=hG.stream=hG.pattern=hG.path=hG.fs=hG.errno=hG.array=void 0;var Jxo=VDn();hG.array=Jxo;var Uxo=WDn();hG.errno=Uxo;var Kxo=ODn();hG.fs=Kxo;var jxo=YDn();hG.path=jxo;var zxo=skn();hG.pattern=zxo;var qxo=ukn();hG.stream=qxo;var $xo=gkn();hG.string=$xo});var fkn=H(mG=>{"use strict";Object.defineProperty(mG,"__esModule",{value:!0});mG.convertPatternGroupToTask=mG.convertPatternGroupsToTasks=mG.groupPatternsByBaseDirectory=mG.getNegativePatternsAsPositive=mG.getPositivePatterns=mG.convertPatternsToTasks=mG.generate=void 0;var hX=h$();function eGo(e,t){let r=Akn(e,t),n=Akn(t.ignore,t),a=dkn(r),o=pkn(r,n),l=a.filter(C=>hX.pattern.isStaticPattern(C,t)),A=a.filter(C=>hX.pattern.isDynamicPattern(C,t)),f=blr(l,o,!1),I=blr(A,o,!0);return f.concat(I)}mG.generate=eGo;function Akn(e,t){let r=e;return t.braceExpansion&&(r=hX.pattern.expandPatternsWithBraceExpansion(r)),t.baseNameMatch&&(r=r.map(n=>n.includes("/")?n:`**/${n}`)),r.map(n=>hX.pattern.removeDuplicateSlashes(n))}function blr(e,t,r){let n=[],a=hX.pattern.getPatternsOutsideCurrentDirectory(e),o=hX.pattern.getPatternsInsideCurrentDirectory(e),l=Elr(a),A=Elr(o);return n.push(...Slr(l,t,r)),"."in A?n.push(vlr(".",o,t,r)):n.push(...Slr(A,t,r)),n}mG.convertPatternsToTasks=blr;function dkn(e){return hX.pattern.getPositivePatterns(e)}mG.getPositivePatterns=dkn;function pkn(e,t){return hX.pattern.getNegativePatterns(e).concat(t).map(hX.pattern.convertToPositivePattern)}mG.getNegativePatternsAsPositive=pkn;function Elr(e){let t={};return e.reduce((r,n)=>{let a=hX.pattern.getBaseDirectory(n);return a in r?r[a].push(n):r[a]=[n],r},t)}mG.groupPatternsByBaseDirectory=Elr;function Slr(e,t,r){return Object.keys(e).map(n=>vlr(n,e[n],t,r))}mG.convertPatternGroupsToTasks=Slr;function vlr(e,t,r,n){return{dynamic:n,positive:t,negative:r,base:e,patterns:[].concat(t,r.map(hX.pattern.convertToNegativePattern))}}mG.convertPatternGroupToTask=vlr});var hkn=H(Kut=>{"use strict";Object.defineProperty(Kut,"__esModule",{value:!0});Kut.read=void 0;function tGo(e,t,r){t.fs.lstat(e,(n,a)=>{if(n!==null){Ikn(r,n);return}if(!a.isSymbolicLink()||!t.followSymbolicLink){Blr(r,a);return}t.fs.stat(e,(o,l)=>{if(o!==null){if(t.throwErrorOnBrokenSymbolicLink){Ikn(r,o);return}Blr(r,a);return}t.markSymbolicLink&&(l.isSymbolicLink=()=>!0),Blr(r,l)})})}Kut.read=tGo;function Ikn(e,t){e(t)}function Blr(e,t){e(null,t)}});var mkn=H(jut=>{"use strict";Object.defineProperty(jut,"__esModule",{value:!0});jut.read=void 0;function rGo(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.followSymbolicLink)return r;try{let n=t.fs.statSync(e);return t.markSymbolicLink&&(n.isSymbolicLink=()=>!0),n}catch(n){if(!t.throwErrorOnBrokenSymbolicLink)return r;throw n}}jut.read=rGo});var Ckn=H(Boe=>{"use strict";Object.defineProperty(Boe,"__esModule",{value:!0});Boe.createFileSystemAdapter=Boe.FILE_SYSTEM_ADAPTER=void 0;var zut=Et("fs");Boe.FILE_SYSTEM_ADAPTER={lstat:zut.lstat,stat:zut.stat,lstatSync:zut.lstatSync,statSync:zut.statSync};function nGo(e){return e===void 0?Boe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Boe.FILE_SYSTEM_ADAPTER),e)}Boe.createFileSystemAdapter=nGo});var _kn=H(Tlr=>{"use strict";Object.defineProperty(Tlr,"__esModule",{value:!0});var iGo=Ckn(),wlr=class{constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=iGo.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(t,r){return t??r}};Tlr.default=wlr});var gIe=H(woe=>{"use strict";Object.defineProperty(woe,"__esModule",{value:!0});woe.statSync=woe.stat=woe.Settings=void 0;var ykn=hkn(),sGo=mkn(),Rlr=_kn();woe.Settings=Rlr.default;function oGo(e,t,r){if(typeof t=="function"){ykn.read(e,Nlr(),t);return}ykn.read(e,Nlr(t),r)}woe.stat=oGo;function aGo(e,t){let r=Nlr(t);return sGo.read(e,r)}woe.statSync=aGo;function Nlr(e={}){return e instanceof Rlr.default?e:new Rlr.default(e)}});var Skn=H((IKl,Ekn)=>{var bkn;Ekn.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):e=>(bkn||(bkn=Promise.resolve())).then(e).catch(t=>setTimeout(()=>{throw t},0))});var Bkn=H((hKl,vkn)=>{vkn.exports=lGo;var cGo=Skn();function lGo(e,t){let r,n,a,o=!0;Array.isArray(e)?(r=[],n=e.length):(a=Object.keys(e),r={},n=a.length);function l(f){function I(){t&&t(f,r),t=null}o?cGo(I):I()}function A(f,I,C){r[f]=C,(--n===0||I)&&l(I)}n?a?a.forEach(function(f){e[f](function(I,C){A(f,I,C)})}):e.forEach(function(f,I){f(function(C,b){A(I,C,b)})}):l(null),o=!1}});var Dlr=H($ut=>{"use strict";Object.defineProperty($ut,"__esModule",{value:!0});$ut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var qut=process.versions.node.split(".");if(qut[0]===void 0||qut[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var wkn=Number.parseInt(qut[0],10),uGo=Number.parseInt(qut[1],10),Tkn=10,gGo=10,AGo=wkn>Tkn,dGo=wkn===Tkn&&uGo>=gGo;$ut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=AGo||dGo});var Rkn=H(egt=>{"use strict";Object.defineProperty(egt,"__esModule",{value:!0});egt.createDirentFromStats=void 0;var klr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function pGo(e,t){return new klr(e,t)}egt.createDirentFromStats=pGo});var xlr=H(tgt=>{"use strict";Object.defineProperty(tgt,"__esModule",{value:!0});tgt.fs=void 0;var fGo=Rkn();tgt.fs=fGo});var Glr=H(rgt=>{"use strict";Object.defineProperty(rgt,"__esModule",{value:!0});rgt.joinPathSegments=void 0;function IGo(e,t,r){return e.endsWith(r)?e+t:e+r+t}rgt.joinPathSegments=IGo});var Fkn=H(Toe=>{"use strict";Object.defineProperty(Toe,"__esModule",{value:!0});Toe.readdir=Toe.readdirWithFileTypes=Toe.read=void 0;var hGo=gIe(),Nkn=Bkn(),mGo=Dlr(),Dkn=xlr(),kkn=Glr();function CGo(e,t,r){if(!t.stats&&mGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES){xkn(e,t,r);return}Gkn(e,t,r)}Toe.read=CGo;function xkn(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(n,a)=>{if(n!==null){ngt(r,n);return}let o=a.map(A=>({dirent:A,name:A.name,path:kkn.joinPathSegments(e,A.name,t.pathSegmentSeparator)}));if(!t.followSymbolicLinks){Flr(r,o);return}let l=o.map(A=>_Go(A,t));Nkn(l,(A,f)=>{if(A!==null){ngt(r,A);return}Flr(r,f)})})}Toe.readdirWithFileTypes=xkn;function _Go(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);return}t.fs.stat(e.path,(n,a)=>{if(n!==null){if(t.throwErrorOnBrokenSymbolicLink){r(n);return}r(null,e);return}e.dirent=Dkn.fs.createDirentFromStats(e.name,a),r(null,e)})}}function Gkn(e,t,r){t.fs.readdir(e,(n,a)=>{if(n!==null){ngt(r,n);return}let o=a.map(l=>{let A=kkn.joinPathSegments(e,l,t.pathSegmentSeparator);return f=>{hGo.stat(A,t.fsStatSettings,(I,C)=>{if(I!==null){f(I);return}let b={name:l,path:A,dirent:Dkn.fs.createDirentFromStats(l,C)};t.stats&&(b.stats=C),f(null,b)})}});Nkn(o,(l,A)=>{if(l!==null){ngt(r,l);return}Flr(r,A)})})}Toe.readdir=Gkn;function ngt(e,t){e(t)}function Flr(e,t){e(null,t)}});var Okn=H(Roe=>{"use strict";Object.defineProperty(Roe,"__esModule",{value:!0});Roe.readdir=Roe.readdirWithFileTypes=Roe.read=void 0;var yGo=gIe(),bGo=Dlr(),Zkn=xlr(),Lkn=Glr();function EGo(e,t){return!t.stats&&bGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES?Vkn(e,t):Wkn(e,t)}Roe.read=EGo;function Vkn(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(n=>{let a={dirent:n,name:n.name,path:Lkn.joinPathSegments(e,n.name,t.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&t.followSymbolicLinks)try{let o=t.fs.statSync(a.path);a.dirent=Zkn.fs.createDirentFromStats(a.name,o)}catch(o){if(t.throwErrorOnBrokenSymbolicLink)throw o}return a})}Roe.readdirWithFileTypes=Vkn;function Wkn(e,t){return t.fs.readdirSync(e).map(n=>{let a=Lkn.joinPathSegments(e,n,t.pathSegmentSeparator),o=yGo.statSync(a,t.fsStatSettings),l={name:n,path:a,dirent:Zkn.fs.createDirentFromStats(n,o)};return t.stats&&(l.stats=o),l})}Roe.readdir=Wkn});var Pkn=H(Noe=>{"use strict";Object.defineProperty(Noe,"__esModule",{value:!0});Noe.createFileSystemAdapter=Noe.FILE_SYSTEM_ADAPTER=void 0;var bve=Et("fs");Noe.FILE_SYSTEM_ADAPTER={lstat:bve.lstat,stat:bve.stat,lstatSync:bve.lstatSync,statSync:bve.statSync,readdir:bve.readdir,readdirSync:bve.readdirSync};function SGo(e){return e===void 0?Noe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Noe.FILE_SYSTEM_ADAPTER),e)}Noe.createFileSystemAdapter=SGo});var Mkn=H(Llr=>{"use strict";Object.defineProperty(Llr,"__esModule",{value:!0});var vGo=Et("path"),BGo=gIe(),wGo=Pkn(),Zlr=class{constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=wGo.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,vGo.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new BGo.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};Llr.default=Zlr});var igt=H(Doe=>{"use strict";Object.defineProperty(Doe,"__esModule",{value:!0});Doe.Settings=Doe.scandirSync=Doe.scandir=void 0;var Hkn=Fkn(),TGo=Okn(),Vlr=Mkn();Doe.Settings=Vlr.default;function RGo(e,t,r){if(typeof t=="function"){Hkn.read(e,Wlr(),t);return}Hkn.read(e,Wlr(t),r)}Doe.scandir=RGo;function NGo(e,t){let r=Wlr(t);return TGo.read(e,r)}Doe.scandirSync=NGo;function Wlr(e={}){return e instanceof Vlr.default?e:new Vlr.default(e)}});var Qkn=H((wKl,Ykn)=>{"use strict";function DGo(e){var t=new e,r=t;function n(){var o=t;return o.next?t=o.next:(t=new e,r=t),o.next=null,o}function a(o){r.next=o,r=o}return{get:n,release:a}}Ykn.exports=DGo});var Jkn=H((TKl,Olr)=>{"use strict";var kGo=Qkn();function Xkn(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=kGo(xGo),a=null,o=null,l=0,A=null,f={push:F,drain:AM,saturated:AM,pause:C,paused:!1,get concurrency(){return r},set concurrency(fe){if(!(fe>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=fe,!f.paused)for(;a&&l=r||f.paused?o?(o.next=de,o=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function Q(fe,ue){var de=n.get();de.context=e,de.release=J,de.value=fe,de.callback=ue||AM,de.errorHandler=A,l>=r||f.paused?a?(de.next=a,a=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function J(fe){fe&&n.release(fe);var ue=a;ue&&l<=r?f.paused?l--:(o===a&&(o=null),a=ue.next,ue.next=null,t.call(e,ue.value,ue.worked),o===null&&f.empty()):--l===0&&f.drain()}function ae(){a=null,o=null,f.drain=AM}function ne(){a=null,o=null,f.drain(),f.drain=AM}function ce(fe){A=fe}}function AM(){}function xGo(){this.value=null,this.callback=AM,this.next=null,this.release=AM,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var a=e.callback,o=e.errorHandler,l=e.value;e.value=null,e.callback=AM,e.errorHandler&&o(r,l),a.call(e.context,r,n),e.release(e)}}function GGo(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(C,b){t.call(this,C).then(function(E){b(null,E)},b)}var a=Xkn(e,n,r),o=a.push,l=a.unshift;return a.push=A,a.unshift=f,a.drained=I,a;function A(C){var b=new Promise(function(E,N){o(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(AM),b}function f(C){var b=new Promise(function(E,N){l(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(AM),b}function I(){if(a.idle())return new Promise(function(E){E()});var C=a.drain,b=new Promise(function(E){a.drain=function(){C(),E()}});return b}}Olr.exports=Xkn;Olr.exports.promise=GGo});var sgt=H(s8=>{"use strict";Object.defineProperty(s8,"__esModule",{value:!0});s8.joinPathSegments=s8.replacePathSegmentSeparator=s8.isAppliedFilter=s8.isFatalError=void 0;function FGo(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}s8.isFatalError=FGo;function ZGo(e,t){return e===null||e(t)}s8.isAppliedFilter=ZGo;function LGo(e,t){return e.split(/[/\\]/).join(t)}s8.replacePathSegmentSeparator=LGo;function VGo(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}s8.joinPathSegments=VGo});var Hlr=H(Mlr=>{"use strict";Object.defineProperty(Mlr,"__esModule",{value:!0});var WGo=sgt(),Plr=class{constructor(t,r){this._root=t,this._settings=r,this._root=WGo.replacePathSegmentSeparator(t,r.pathSegmentSeparator)}};Mlr.default=Plr});var Xlr=H(Qlr=>{"use strict";Object.defineProperty(Qlr,"__esModule",{value:!0});var OGo=Et("events"),PGo=igt(),MGo=Jkn(),ogt=sgt(),HGo=Hlr(),Ylr=class extends HGo.default{constructor(t,r){super(t,r),this._settings=r,this._scandir=PGo.scandir,this._emitter=new OGo.EventEmitter,this._queue=MGo(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(t){this._emitter.on("entry",t)}onError(t){this._emitter.once("error",t)}onEnd(t){this._emitter.once("end",t)}_pushToQueue(t,r){let n={directory:t,base:r};this._queue.push(n,a=>{a!==null&&this._handleError(a)})}_worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,(n,a)=>{if(n!==null){r(n,void 0);return}for(let o of a)this._handleEntry(o,t.base);r(null,void 0)})}_handleError(t){this._isDestroyed||!ogt.isFatalError(this._settings,t)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",t))}_handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let n=t.path;r!==void 0&&(t.path=ogt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),ogt.isAppliedFilter(this._settings.entryFilter,t)&&this._emitEntry(t),t.dirent.isDirectory()&&ogt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_emitEntry(t){this._emitter.emit("entry",t)}};Qlr.default=Ylr});var Ukn=H(Ulr=>{"use strict";Object.defineProperty(Ulr,"__esModule",{value:!0});var YGo=Xlr(),Jlr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new YGo.default(this._root,this._settings),this._storage=[]}read(t){this._reader.onError(r=>{QGo(t,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{XGo(t,this._storage)}),this._reader.read()}};Ulr.default=Jlr;function QGo(e,t){e(t)}function XGo(e,t){e(null,t)}});var Kkn=H(jlr=>{"use strict";Object.defineProperty(jlr,"__esModule",{value:!0});var JGo=Et("stream"),UGo=Xlr(),Klr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new UGo.default(this._root,this._settings),this._stream=new JGo.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),this._reader.onEntry(t=>{this._stream.push(t)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};jlr.default=Klr});var jkn=H(qlr=>{"use strict";Object.defineProperty(qlr,"__esModule",{value:!0});var KGo=igt(),agt=sgt(),jGo=Hlr(),zlr=class extends jGo.default{constructor(){super(...arguments),this._scandir=KGo.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(t,r){this._queue.add({directory:t,base:r})}_handleQueue(){for(let t of this._queue.values())this._handleDirectory(t.directory,t.base)}_handleDirectory(t,r){try{let n=this._scandir(t,this._settings.fsScandirSettings);for(let a of n)this._handleEntry(a,r)}catch(n){this._handleError(n)}}_handleError(t){if(agt.isFatalError(this._settings,t))throw t}_handleEntry(t,r){let n=t.path;r!==void 0&&(t.path=agt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),agt.isAppliedFilter(this._settings.entryFilter,t)&&this._pushToStorage(t),t.dirent.isDirectory()&&agt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_pushToStorage(t){this._storage.push(t)}};qlr.default=zlr});var zkn=H(eur=>{"use strict";Object.defineProperty(eur,"__esModule",{value:!0});var zGo=jkn(),$lr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new zGo.default(this._root,this._settings)}read(){return this._reader.read()}};eur.default=$lr});var qkn=H(rur=>{"use strict";Object.defineProperty(rur,"__esModule",{value:!0});var qGo=Et("path"),$Go=igt(),tur=class{constructor(t={}){this._options=t,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,qGo.sep),this.fsScandirSettings=new $Go.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};rur.default=tur});var lgt=H(o8=>{"use strict";Object.defineProperty(o8,"__esModule",{value:!0});o8.Settings=o8.walkStream=o8.walkSync=o8.walk=void 0;var $kn=Ukn(),eFo=Kkn(),tFo=zkn(),nur=qkn();o8.Settings=nur.default;function rFo(e,t,r){if(typeof t=="function"){new $kn.default(e,cgt()).read(t);return}new $kn.default(e,cgt(t)).read(r)}o8.walk=rFo;function nFo(e,t){let r=cgt(t);return new tFo.default(e,r).read()}o8.walkSync=nFo;function iFo(e,t){let r=cgt(t);return new eFo.default(e,r).read()}o8.walkStream=iFo;function cgt(e={}){return e instanceof nur.default?e:new nur.default(e)}});var ugt=H(sur=>{"use strict";Object.defineProperty(sur,"__esModule",{value:!0});var sFo=Et("path"),oFo=gIe(),exn=h$(),iur=class{constructor(t){this._settings=t,this._fsStatSettings=new oFo.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(t){return sFo.resolve(this._settings.cwd,t)}_makeEntry(t,r){let n={name:r,path:r,dirent:exn.fs.createDirentFromStats(r,t)};return this._settings.stats&&(n.stats=t),n}_isFatalError(t){return!exn.errno.isEnoentCodeError(t)&&!this._settings.suppressErrors}};sur.default=iur});var cur=H(aur=>{"use strict";Object.defineProperty(aur,"__esModule",{value:!0});var aFo=Et("stream"),cFo=gIe(),lFo=lgt(),uFo=ugt(),our=class extends uFo.default{constructor(){super(...arguments),this._walkStream=lFo.walkStream,this._stat=cFo.stat}dynamic(t,r){return this._walkStream(t,r)}static(t,r){let n=t.map(this._getFullEntryPath,this),a=new aFo.PassThrough({objectMode:!0});a._write=(o,l,A)=>this._getEntry(n[o],t[o],r).then(f=>{f!==null&&r.entryFilter(f)&&a.push(f),o===n.length-1&&a.end(),A()}).catch(A);for(let o=0;othis._makeEntry(a,r)).catch(a=>{if(n.errorFilter(a))return null;throw a})}_getStat(t){return new Promise((r,n)=>{this._stat(t,this._fsStatSettings,(a,o)=>a===null?r(o):n(a))})}};aur.default=our});var txn=H(uur=>{"use strict";Object.defineProperty(uur,"__esModule",{value:!0});var gFo=lgt(),AFo=ugt(),dFo=cur(),lur=class extends AFo.default{constructor(){super(...arguments),this._walkAsync=gFo.walk,this._readerStream=new dFo.default(this._settings)}dynamic(t,r){return new Promise((n,a)=>{this._walkAsync(t,r,(o,l)=>{o===null?n(l):a(o)})})}async static(t,r){let n=[],a=this._readerStream.static(t,r);return new Promise((o,l)=>{a.once("error",l),a.on("data",A=>n.push(A)),a.once("end",()=>o(n))})}};uur.default=lur});var rxn=H(Aur=>{"use strict";Object.defineProperty(Aur,"__esModule",{value:!0});var h5e=h$(),gur=class{constructor(t,r,n){this._patterns=t,this._settings=r,this._micromatchOptions=n,this._storage=[],this._fillStorage()}_fillStorage(){for(let t of this._patterns){let r=this._getPatternSegments(t),n=this._splitSegmentsIntoSections(r);this._storage.push({complete:n.length<=1,pattern:t,segments:r,sections:n})}}_getPatternSegments(t){return h5e.pattern.getPatternParts(t,this._micromatchOptions).map(n=>h5e.pattern.isDynamicPattern(n,this._settings)?{dynamic:!0,pattern:n,patternRe:h5e.pattern.makeRe(n,this._micromatchOptions)}:{dynamic:!1,pattern:n})}_splitSegmentsIntoSections(t){return h5e.array.splitWhen(t,r=>r.dynamic&&h5e.pattern.hasGlobStar(r.pattern))}};Aur.default=gur});var nxn=H(pur=>{"use strict";Object.defineProperty(pur,"__esModule",{value:!0});var pFo=rxn(),dur=class extends pFo.default{match(t){let r=t.split("/"),n=r.length,a=this._storage.filter(o=>!o.complete||o.segments.length>n);for(let o of a){let l=o.sections[0];if(!o.complete&&n>l.length||r.every((f,I)=>{let C=o.segments[I];return!!(C.dynamic&&C.patternRe.test(f)||!C.dynamic&&C.pattern===f)}))return!0}return!1}};pur.default=dur});var ixn=H(Iur=>{"use strict";Object.defineProperty(Iur,"__esModule",{value:!0});var ggt=h$(),fFo=nxn(),fur=class{constructor(t,r){this._settings=t,this._micromatchOptions=r}getFilter(t,r,n){let a=this._getMatcher(r),o=this._getNegativePatternsRe(n);return l=>this._filter(t,l,a,o)}_getMatcher(t){return new fFo.default(t,this._settings,this._micromatchOptions)}_getNegativePatternsRe(t){let r=t.filter(ggt.pattern.isAffectDepthOfReadingPattern);return ggt.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(t,r,n,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymbolicLink(r))return!1;let o=ggt.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,n)?!1:this._isSkippedByNegativePatterns(o,a)}_isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntryLevel(t,r)>=this._settings.deep}_getEntryLevel(t,r){let n=r.split("/").length;if(t==="")return n;let a=t.split("/").length;return n-a}_isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!r.match(t)}_isSkippedByNegativePatterns(t,r){return!ggt.pattern.matchAny(t,r)}};Iur.default=fur});var sxn=H(mur=>{"use strict";Object.defineProperty(mur,"__esModule",{value:!0});var AIe=h$(),hur=class{constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=new Map}getFilter(t,r){let n=AIe.pattern.convertPatternsToRe(t,this._micromatchOptions),a=AIe.pattern.convertPatternsToRe(r,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}));return o=>this._filter(o,n,a)}_filter(t,r,n){let a=AIe.path.removeLeadingDotSegment(t.path);if(this._settings.unique&&this._isDuplicateEntry(a)||this._onlyFileFilter(t)||this._onlyDirectoryFilter(t)||this._isSkippedByAbsoluteNegativePatterns(a,n))return!1;let o=t.dirent.isDirectory(),l=this._isMatchToPatterns(a,r,o)&&!this._isMatchToPatterns(a,n,o);return this._settings.unique&&l&&this._createIndexRecord(a),l}_isDuplicateEntry(t){return this.index.has(t)}_createIndexRecord(t){this.index.set(t,void 0)}_onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}_onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)return!1;let n=AIe.path.makeAbsolute(this._settings.cwd,t);return AIe.pattern.matchAny(n,r)}_isMatchToPatterns(t,r,n){let a=AIe.pattern.matchAny(t,r);return!a&&n?AIe.pattern.matchAny(t+"/",r):a}};mur.default=hur});var oxn=H(_ur=>{"use strict";Object.defineProperty(_ur,"__esModule",{value:!0});var IFo=h$(),Cur=class{constructor(t){this._settings=t}getFilter(){return t=>this._isNonFatalError(t)}_isNonFatalError(t){return IFo.errno.isEnoentCodeError(t)||this._settings.suppressErrors}};_ur.default=Cur});var cxn=H(bur=>{"use strict";Object.defineProperty(bur,"__esModule",{value:!0});var axn=h$(),yur=class{constructor(t){this._settings=t}getTransformer(){return t=>this._transform(t)}_transform(t){let r=t.path;return this._settings.absolute&&(r=axn.path.makeAbsolute(this._settings.cwd,r),r=axn.path.unixify(r)),this._settings.markDirectories&&t.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},t),{path:r}):r}};bur.default=yur});var Agt=H(Sur=>{"use strict";Object.defineProperty(Sur,"__esModule",{value:!0});var hFo=Et("path"),mFo=ixn(),CFo=sxn(),_Fo=oxn(),yFo=cxn(),Eur=class{constructor(t){this._settings=t,this.errorFilter=new _Fo.default(this._settings),this.entryFilter=new CFo.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new mFo.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new yFo.default(this._settings)}_getRootDirectory(t){return hFo.resolve(this._settings.cwd,t.base)}_getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,t.positive,t.negative),entryFilter:this.entryFilter.getFilter(t.positive,t.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};Sur.default=Eur});var lxn=H(Bur=>{"use strict";Object.defineProperty(Bur,"__esModule",{value:!0});var bFo=txn(),EFo=Agt(),vur=class extends EFo.default{constructor(){super(...arguments),this._reader=new bFo.default(this._settings)}async read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return(await this.api(r,t,n)).map(o=>n.transform(o))}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};Bur.default=vur});var uxn=H(Tur=>{"use strict";Object.defineProperty(Tur,"__esModule",{value:!0});var SFo=Et("stream"),vFo=cur(),BFo=Agt(),wur=class extends BFo.default{constructor(){super(...arguments),this._reader=new vFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t),a=this.api(r,t,n),o=new SFo.Readable({objectMode:!0,read:()=>{}});return a.once("error",l=>o.emit("error",l)).on("data",l=>o.emit("data",n.transform(l))).once("end",()=>o.emit("end")),o.once("close",()=>a.destroy()),o}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};Tur.default=wur});var gxn=H(Nur=>{"use strict";Object.defineProperty(Nur,"__esModule",{value:!0});var wFo=gIe(),TFo=lgt(),RFo=ugt(),Rur=class extends RFo.default{constructor(){super(...arguments),this._walkSync=TFo.walkSync,this._statSync=wFo.statSync}dynamic(t,r){return this._walkSync(t,r)}static(t,r){let n=[];for(let a of t){let o=this._getFullEntryPath(a),l=this._getEntry(o,a,r);l===null||!r.entryFilter(l)||n.push(l)}return n}_getEntry(t,r,n){try{let a=this._getStat(t);return this._makeEntry(a,r)}catch(a){if(n.errorFilter(a))return null;throw a}}_getStat(t){return this._statSync(t,this._fsStatSettings)}};Nur.default=Rur});var Axn=H(kur=>{"use strict";Object.defineProperty(kur,"__esModule",{value:!0});var NFo=gxn(),DFo=Agt(),Dur=class extends DFo.default{constructor(){super(...arguments),this._reader=new NFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return this.api(r,t,n).map(n.transform)}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};kur.default=Dur});var dxn=H(Sve=>{"use strict";Object.defineProperty(Sve,"__esModule",{value:!0});Sve.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var Eve=Et("fs"),kFo=Et("os"),xFo=Math.max(kFo.cpus().length,1);Sve.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:Eve.lstat,lstatSync:Eve.lstatSync,stat:Eve.stat,statSync:Eve.statSync,readdir:Eve.readdir,readdirSync:Eve.readdirSync};var xur=class{constructor(t={}){this._options=t,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,xFo),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(t,r){return t===void 0?r:t}_getFileSystemMethods(t={}){return Object.assign(Object.assign({},Sve.DEFAULT_FILE_SYSTEM_ADAPTER),t)}};Sve.default=xur});var vve=H(($Kl,fxn)=>{"use strict";var pxn=fkn(),GFo=lxn(),FFo=uxn(),ZFo=Axn(),Gur=dxn(),dM=h$();async function Fur(e,t){mX(e);let r=Zur(e,GFo.default,t),n=await Promise.all(r);return dM.array.flatten(n)}(function(e){e.glob=e,e.globSync=t,e.globStream=r,e.async=e;function t(I,C){mX(I);let b=Zur(I,ZFo.default,C);return dM.array.flatten(b)}e.sync=t;function r(I,C){mX(I);let b=Zur(I,FFo.default,C);return dM.stream.merge(b)}e.stream=r;function n(I,C){mX(I);let b=[].concat(I),E=new Gur.default(C);return pxn.generate(b,E)}e.generateTasks=n;function a(I,C){mX(I);let b=new Gur.default(C);return dM.pattern.isDynamicPattern(I,b)}e.isDynamicPattern=a;function o(I){return mX(I),dM.path.escape(I)}e.escapePath=o;function l(I){return mX(I),dM.path.convertPathToPattern(I)}e.convertPathToPattern=l;let A;(function(I){function C(E){return mX(E),dM.path.escapePosixPath(E)}I.escapePath=C;function b(E){return mX(E),dM.path.convertPosixPathToPattern(E)}I.convertPathToPattern=b})(A=e.posix||(e.posix={}));let f;(function(I){function C(E){return mX(E),dM.path.escapeWindowsPath(E)}I.escapePath=C;function b(E){return mX(E),dM.path.convertWindowsPathToPattern(E)}I.convertPathToPattern=b})(f=e.win32||(e.win32={}))})(Fur||(Fur={}));function Zur(e,t,r){let n=[].concat(e),a=new Gur.default(r),o=pxn.generate(n,a),l=new t(a);return o.map(l.read,l)}function mX(e){if(![].concat(e).every(n=>dM.string.isString(n)&&!dM.string.isEmpty(n)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}fxn.exports=Fur});var xoe=H(m5e=>{"use strict";Object.defineProperty(m5e,"__esModule",{value:!0});m5e.makeHash=VFo;m5e.checksumFile=WFo;m5e.checksumPattern=OFo;var LFo=(Wa(),vi(Va)),koe=No(),Lur=Et("crypto"),Ixn=LFo.__importDefault(vve());function VFo(...e){let t=(0,Lur.createHash)("sha512"),r="";for(let n of e)typeof n=="string"?r+=n:n&&(r&&(t.update(r),r=""),t.update(n));return r&&t.update(r),t.digest("hex")}async function WFo(e,{baseFs:t,algorithm:r}={baseFs:koe.xfs,algorithm:"sha512"}){let n=await t.openPromise(e,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,Lur.createHash)(r),A=0;for(;(A=await t.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await t.closePromise(n)}}async function OFo(e,{cwd:t}){let n=(await(0,Ixn.default)(e,{cwd:koe.npath.fromPortablePath(t),onlyDirectories:!0})).map(A=>`${A}/**/*`),a=await(0,Ixn.default)([e,...n],{cwd:koe.npath.fromPortablePath(t),onlyFiles:!1});a.sort();let o=await Promise.all(a.map(async A=>{let f=[Buffer.from(A)],I=koe.ppath.join(t,koe.npath.toPortablePath(A)),C=await koe.xfs.lstatPromise(I);return C.isSymbolicLink()?f.push(Buffer.from(await koe.xfs.readlinkPromise(I))):C.isFile()&&f.push(await koe.xfs.readFilePromise(I)),f.join("\0")})),l=(0,Lur.createHash)("sha512");for(let A of o)l.update(A);return l.digest("hex")}});var IG=H(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.makeIdent=wve;Ud.makeDescriptor=Rve;Ud.makeLocator=Nve;Ud.convertToIdent=QFo;Ud.convertDescriptorToLocator=XFo;Ud.convertLocatorToDescriptor=JFo;Ud.convertPackageToLocator=UFo;Ud.renamePackage=Pur;Ud.copyPackage=KFo;Ud.virtualizeDescriptor=jFo;Ud.virtualizePackage=zFo;Ud.isVirtualDescriptor=pgt;Ud.isVirtualLocator=y5e;Ud.devirtualizeDescriptor=_xn;Ud.devirtualizeLocator=qFo;Ud.ensureDevirtualizedDescriptor=$Fo;Ud.ensureDevirtualizedLocator=eZo;Ud.bindDescriptor=tZo;Ud.bindLocator=rZo;Ud.areIdentsEqual=yxn;Ud.areDescriptorsEqual=bxn;Ud.areLocatorsEqual=nZo;Ud.areVirtualPackagesEquivalent=iZo;Ud.parseIdent=sZo;Ud.tryParseIdent=Exn;Ud.parseDescriptor=aZo;Ud.tryParseDescriptor=Sxn;Ud.parseLocator=vxn;Ud.tryParseLocator=Bxn;Ud.parseRange=b5e;Ud.tryParseRange=dZo;Ud.parseFileStyleRange=pZo;Ud.makeRange=wxn;Ud.convertToManifestRange=IZo;Ud.stringifyIdent=Igt;Ud.wrapIdentIntoScope=hZo;Ud.unwrapIdentFromScope=mZo;Ud.stringifyDescriptor=CZo;Ud.stringifyLocator=_Zo;Ud.slugifyIdent=Wur;Ud.slugifyLocator=bZo;Ud.prettyIdent=hgt;Ud.prettyRange=Txn;Ud.prettyDescriptor=SZo;Ud.prettyReference=Mur;Ud.prettyLocator=dgt;Ud.prettyLocatorNoColors=vZo;Ud.sortDescriptors=BZo;Ud.prettyWorkspace=wZo;Ud.prettyResolution=TZo;Ud.prettyDependent=RZo;Ud.getIdentVendorPath=NZo;Ud.isPackageInRange=DZo;Ud.isPackageCompatible=kZo;Ud.allPeerRequests=xZo;var Tve=(Wa(),vi(Va)),_5e=Tve.__importDefault(Et("querystring")),mxn=Tve.__importDefault(zC()),PFo=PBn(),kZ=Tve.__importStar(gM()),Our=Tve.__importStar(xoe()),MFo=Tve.__importStar(MO()),Bve=Tve.__importStar(IG()),C5e="virtual:",HFo=5,Cxn=/(os|cpu|libc)=([a-z0-9_-]+)/,YFo=(0,PFo.makeParser)(Cxn);function wve(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:Our.makeHash(e,t),scope:e,name:t}}function Rve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:Our.makeHash(e.identHash,t),range:t}}function Nve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:Our.makeHash(e.identHash,t),reference:t}}function QFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}function XFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.descriptorHash,reference:e.range}}function JFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:e.locatorHash,range:e.reference}}function UFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference}}function Pur(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference,version:e.version,languageName:e.languageName,linkType:e.linkType,conditions:e.conditions,dependencies:new Map(e.dependencies),peerDependencies:new Map(e.peerDependencies),dependenciesMeta:new Map(e.dependenciesMeta),peerDependenciesMeta:new Map(e.peerDependenciesMeta),bin:new Map(e.bin)}}function KFo(e){return Pur(e,e)}function jFo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Rve(e,`virtual:${t}#${e.range}`)}function zFo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Pur(e,Nve(e,`virtual:${t}#${e.reference}`))}function pgt(e){return e.range.startsWith(C5e)}function y5e(e){return e.reference.startsWith(C5e)}var fgt=/^[^#]*#/;function _xn(e){if(!pgt(e))throw new Error("Not a virtual descriptor");return Rve(e,e.range.replace(fgt,""))}function qFo(e){if(!y5e(e))throw new Error("Not a virtual descriptor");return Nve(e,e.reference.replace(fgt,""))}function $Fo(e){return pgt(e)?Rve(e,e.range.replace(fgt,"")):e}function eZo(e){return y5e(e)?Nve(e,e.reference.replace(fgt,"")):e}function tZo(e,t){return e.range.includes("::")?e:Rve(e,`${e.range}::${_5e.default.stringify(t)}`)}function rZo(e,t){return e.reference.includes("::")?e:Nve(e,`${e.reference}::${_5e.default.stringify(t)}`)}function yxn(e,t){return e.identHash===t.identHash}function bxn(e,t){return e.descriptorHash===t.descriptorHash}function nZo(e,t){return e.locatorHash===t.locatorHash}function iZo(e,t){if(!y5e(e))throw new Error("Invalid package type");if(!y5e(t))throw new Error("Invalid package type");if(!yxn(e,t)||e.dependencies.size!==t.dependencies.size)return!1;for(let r of e.dependencies.values()){let n=t.dependencies.get(r.identHash);if(!n||!bxn(r,n))return!1}return!0}function sZo(e){let t=Exn(e);if(!t)throw new Error(`Invalid ident (${e})`);return t}var oZo=/^(?:@([^/]+?)\/)?([^@/]+)$/;function Exn(e){let t=e.match(oZo);if(!t)return null;let[,r,n]=t;return wve(typeof r<"u"?r:null,n)}function aZo(e,t=!1){let r=Sxn(e,t);if(!r)throw new Error(`Invalid descriptor (${e})`);return r}var cZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,lZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/,Vur="unknown";function Sxn(e,t=!1){let r=t?e.match(cZo):e.match(lZo);if(!r)return null;let[,n,a,o]=r;if(o===Vur)throw new Error(`Invalid range (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:Vur;return Rve(wve(l,a),A)}function vxn(e,t=!1){let r=Bxn(e,t);if(!r)throw new Error(`Invalid locator (${e})`);return r}var uZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,gZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function Bxn(e,t=!1){let r=t?e.match(uZo):e.match(gZo);if(!r)return null;let[,n,a,o]=r;if(o==="unknown")throw new Error(`Invalid reference (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:"unknown";return Nve(wve(l,a),A)}var AZo=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;function b5e(e,t){let r=e.match(AZo);if(r===null)throw new Error(`Invalid range (${e})`);let n=typeof r[1]<"u"?r[1]:null;if(typeof t?.requireProtocol=="string"&&n!==t.requireProtocol)throw new Error(`Invalid protocol (${n})`);if(t?.requireProtocol&&n===null)throw new Error(`Missing protocol (${n})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(t?.requireSource&&a===null)throw new Error(`Missing source (${e})`);let o=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),l=t?.parseSelector?_5e.default.parse(o):o,A=typeof r[4]<"u"?_5e.default.parse(r[4]):null;return{protocol:n,source:a,selector:l,params:A}}function dZo(e,t){try{return b5e(e,t)}catch{return null}}function pZo(e,{protocol:t}){let{selector:r,params:n}=b5e(e,{requireProtocol:t,requireBindings:!0});if(typeof n.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${e}`);return{parentLocator:vxn(n.locator,!0),path:r}}function hxn(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A"),e=e.replaceAll("#","%23"),e}function fZo(e){return e===null?!1:Object.entries(e).length>0}function wxn({protocol:e,source:t,selector:r,params:n}){let a="";return e!==null&&(a+=`${e}`),t!==null&&(a+=`${hxn(t)}#`),a+=hxn(r),fZo(n)&&(a+=`::${_5e.default.stringify(n)}`),a}function IZo(e){let{params:t,protocol:r,source:n,selector:a}=b5e(e);for(let o in t)o.startsWith("__")&&delete t[o];return wxn({protocol:r,source:n,params:t,selector:a})}function Igt(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}function hZo(e,t){return e.scope?Bve.makeIdent(t,`${e.scope}__${e.name}`):Bve.makeIdent(t,e.name)}function mZo(e,t){if(e.scope!==t)return e;let r=e.name.indexOf("__");if(r===-1)return wve(null,e.name);let n=e.name.slice(0,r),a=e.name.slice(r+2);return wve(n,a)}function CZo(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.name}@${e.range}`}function _Zo(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${e.name}@${e.reference}`}function Wur(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}var yZo=/:$/;function bZo(e){let{protocol:t,selector:r}=b5e(e.reference),n=t!==null?t.replace(yZo,""):"exotic",a=mxn.default.valid(r),o=a!==null?`${n}-${a}`:`${n}`,l=10;return e.scope?`${Wur(e)}-${o}-${e.locatorHash.slice(0,l)}`:`${Wur(e)}-${o}-${e.locatorHash.slice(0,l)}`}function hgt(e,t){return t.scope?`${kZ.pretty(e,`@${t.scope}/`,kZ.Type.SCOPE)}${kZ.pretty(e,t.name,kZ.Type.NAME)}`:`${kZ.pretty(e,t.name,kZ.Type.NAME)}`}var EZo=/\?.*/;function mgt(e){if(e.startsWith(C5e)){let t=mgt(e.substring(e.indexOf("#")+1)),r=e.substring(C5e.length,C5e.length+HFo);return`${t} [${r}]`}else return e.replace(EZo,"?[...]")}function Txn(e,t){return`${kZ.pretty(e,mgt(t),kZ.Type.RANGE)}`}function SZo(e,t){return`${hgt(e,t)}${kZ.pretty(e,"@",kZ.Type.RANGE)}${Txn(e,t.range)}`}function Mur(e,t){return`${kZ.pretty(e,mgt(t),kZ.Type.REFERENCE)}`}function dgt(e,t){return`${hgt(e,t)}${kZ.pretty(e,"@",kZ.Type.REFERENCE)}${Mur(e,t.reference)}`}function vZo(e){return`${Igt(e)}@${mgt(e.reference)}`}function BZo(e){return MFo.sortMap(e,[t=>Igt(t),t=>t.range])}function wZo(e,t){return hgt(e,t.anchoredLocator)}function TZo(e,t,r){let n=pgt(t)?_xn(t):t;return r===null?`${Bve.prettyDescriptor(e,n)} \u2192 ${kZ.mark(e).Cross}`:n.identHash===r.identHash?`${Bve.prettyDescriptor(e,n)} \u2192 ${Mur(e,r.reference)}`:`${Bve.prettyDescriptor(e,n)} \u2192 ${dgt(e,r)}`}function RZo(e,t,r){return r===null?`${dgt(e,t)}`:`${dgt(e,t)} (via ${Bve.prettyRange(e,r.range)})`}function NZo(e){return`node_modules/${Igt(e)}`}function DZo(e,t){return t===Vur||!e.version?!0:mxn.default.satisfies(e.version??"",t)}function kZo(e,t){return e.conditions?YFo(e.conditions,r=>{let[,n,a]=r.match(Cxn),o=t[n];return o?o.includes(a):!0}):!0}function xZo(e){let t=new Set;if("children"in e)t.add(e);else for(let r of e.requests.values())t.add(r);for(let r of t)for(let n of r.children.values())t.add(n);return t}});var Rxn=H(Cgt=>{"use strict";Object.defineProperty(Cgt,"__esModule",{value:!0});Cgt.CorePlugin=void 0;var GZo=(Wa(),vi(Va)),FZo=K9(),Goe=GZo.__importStar(IG());Cgt.CorePlugin={hooks:{reduceDependency:(e,t,r,n,{resolver:a,resolveOptions:o})=>{for(let{pattern:l,reference:A}of t.topLevelWorkspace.manifest.resolutions){if(l.from&&(l.from.fullName!==Goe.stringifyIdent(r)||t.configuration.normalizeLocator(Goe.makeLocator(Goe.parseIdent(l.from.fullName),l.from.description??r.reference)).locatorHash!==r.locatorHash)||l.descriptor.fullName!==Goe.stringifyIdent(e)||t.configuration.normalizeDependency(Goe.makeDescriptor(Goe.parseLocator(l.descriptor.fullName),l.descriptor.description??e.range)).descriptorHash!==e.descriptorHash)continue;return a.bindDescriptor(t.configuration.normalizeDependency(Goe.makeDescriptor(e,A)),t.topLevelWorkspace.anchoredLocator,o)}return e},validateProject:async(e,t)=>{for(let r of e.workspaces){let n=Goe.prettyWorkspace(e.configuration,r);await e.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,o)=>t.reportWarning(a,`${n}: ${o}`),reportError:(a,o)=>t.reportError(a,`${n}: ${o}`)})}},validateWorkspace:async(e,t)=>{let{manifest:r}=e;r.resolutions.length&&e.cwd!==e.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let n of r.errors)t.reportWarning(FZo.MessageName.INVALID_MANIFEST,n.message)}}}});var dIe=H(ygt=>{"use strict";Object.defineProperty(ygt,"__esModule",{value:!0});ygt.WorkspaceResolver=void 0;var ZZo=lIe(),_gt=class e{supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.project.tryWorkspaceByDescriptor(t)!==null)}supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[n.project.getWorkspaceByDescriptor(t).anchoredLocator]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.getWorkspaceByCwd(t.reference.slice(e.protocol.length));return{...t,version:n.manifest.version||"0.0.0",languageName:"unknown",linkType:ZZo.LinkType.SOFT,conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...n.manifest.dependencies,...n.manifest.devDependencies])),peerDependencies:new Map([...n.manifest.peerDependencies]),dependenciesMeta:n.manifest.dependenciesMeta,peerDependenciesMeta:n.manifest.peerDependenciesMeta,bin:n.manifest.bin}}};ygt.WorkspaceResolver=_gt;_gt.protocol="workspace:"});var m$=H(CX=>{"use strict";Object.defineProperty(CX,"__esModule",{value:!0});CX.SemVer=void 0;CX.satisfiesWithPrereleases=WZo;CX.validRange=kxn;CX.clean=PZo;CX.getComparator=xxn;CX.mergeComparators=Hur;CX.stringifyComparator=Gxn;CX.simplifyRanges=MZo;var LZo=(Wa(),vi(Va)),Foe=LZo.__importDefault(zC()),VZo=zC();Object.defineProperty(CX,"SemVer",{enumerable:!0,get:function(){return VZo.SemVer}});var Nxn=new Map;function WZo(e,t,r=!1){if(!e)return!1;let n=`${t}${r}`,a=Nxn.get(n);if(typeof a>"u")try{a=new Foe.default.Range(t,{includePrerelease:!0,loose:r})}catch{return!1}finally{Nxn.set(n,a||null)}else if(a===null)return!1;let o;try{o=new Foe.default.SemVer(e,a)}catch{return!1}return a.test(o)?!0:(o.prerelease&&(o.prerelease=[]),a.set.some(l=>{for(let A of l)A.semver.prerelease&&(A.semver.prerelease=[]);return l.every(A=>A.test(o))}))}var Dxn=new Map;function kxn(e){if(e.indexOf(":")!==-1)return null;let t=Dxn.get(e);if(typeof t<"u")return t;try{t=new Foe.default.Range(e)}catch{t=null}return Dxn.set(e,t),t}var OZo=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function PZo(e){let t=OZo.exec(e);return t?t[1]:null}function xxn(e){if(e.semver===Foe.default.Comparator.ANY)return{gt:null,lt:null};switch(e.operator){case"":return{gt:[">=",e.semver],lt:["<=",e.semver]};case">":case">=":return{gt:[e.operator,e.semver],lt:null};case"<":case"<=":return{gt:null,lt:[e.operator,e.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${e.operator})`)}}function Hur(e){if(e.length===0)return null;let t=null,r=null;for(let n of e){if(n.gt){let a=t!==null?Foe.default.compare(n.gt[1],t[1]):null;(a===null||a>0||a===0&&n.gt[0]===">")&&(t=n.gt)}if(n.lt){let a=r!==null?Foe.default.compare(n.lt[1],r[1]):null;(a===null||a<0||a===0&&n.lt[0]==="<")&&(r=n.lt)}}if(t&&r){let n=Foe.default.compare(t[1],r[1]);if(n===0&&(t[0]===">"||r[0]==="<")||n>0)return null}return{gt:t,lt:r}}function Gxn(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1].version===e.lt[1].version)return e.gt[1].version;if(e.gt[0]===">="&&e.lt[0]==="<"){if(e.lt[1].version===`${e.gt[1].major+1}.0.0-0`)return`^${e.gt[1].version}`;if(e.lt[1].version===`${e.gt[1].major}.${e.gt[1].minor+1}.0-0`)return`~${e.gt[1].version}`}}let t=[];return e.gt&&t.push(e.gt[0]+e.gt[1].version),e.lt&&t.push(e.lt[0]+e.lt[1].version),t.length?t.join(" "):"*"}function MZo(e){let t=e.map(HZo).map(n=>kxn(n).set.map(a=>a.map(o=>xxn(o)))),r=t.shift().map(n=>Hur(n)).filter(n=>n!==null);for(let n of t){let a=[];for(let o of r)for(let l of n){let A=Hur([o,...l]);A!==null&&a.push(A)}r=a}return r.length===0?null:r.map(n=>Gxn(n)).join(" || ")}function HZo(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let n of t)t.some(a=>a!==n&&Foe.default.subset(n,a))||r.add(n);if(r.size{"use strict";Object.defineProperty(Bgt,"__esModule",{value:!0});Bgt.Manifest=void 0;var vgt=(Wa(),vi(Va)),bgt=No(),Fxn=LO(),YZo=vgt.__importDefault(zC()),QZo=dIe(),Sgt=vgt.__importStar(MO()),XZo=vgt.__importStar(m$()),Y0=vgt.__importStar(IG()),Dve=class e{constructor(){this.indent=" ",this.name=null,this.version=null,this.os=null,this.cpu=null,this.libc=null,this.type=null,this.packageManager=null,this.private=!1,this.license=null,this.main=null,this.module=null,this.browser=null,this.languageName=null,this.bin=new Map,this.scripts=new Map,this.dependencies=new Map,this.devDependencies=new Map,this.peerDependencies=new Map,this.workspaceDefinitions=[],this.dependenciesMeta=new Map,this.peerDependenciesMeta=new Map,this.resolutions=[],this.files=null,this.publishConfig=null,this.installConfig=null,this.preferUnplugged=null,this.raw={},this.errors=[]}static async tryFind(t,{baseFs:r=new bgt.NodeFS}={}){let n=bgt.ppath.join(t,"package.json");try{return await e.fromFile(n,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(t,{baseFs:r}={}){let n=await e.tryFind(t,{baseFs:r});if(n===null)throw new Error("Manifest not found");return n}static async fromFile(t,{baseFs:r=new bgt.NodeFS}={}){let n=new e;return await n.loadFile(t,{baseFs:r}),n}static fromText(t){let r=new e;return r.loadFromText(t),r}loadFromText(t){let r;try{r=JSON.parse(Lxn(t)||"{}")}catch(n){throw n.message+=` (when parsing ${t})`,n}this.load(r),this.indent=Zxn(t)}async loadFile(t,{baseFs:r=new bgt.NodeFS}){let n=await r.readFilePromise(t,"utf8"),a;try{a=JSON.parse(Lxn(n)||"{}")}catch(o){throw o.message+=` (when parsing ${t})`,o}this.load(a),this.indent=Zxn(n)}load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)throw new Error(`Utterly invalid manifest data (${t})`);this.raw=t;let n=[];if(this.name=null,typeof t.name=="string")try{this.name=Y0.parseIdent(t.name)}catch{n.push(new Error("Parsing failed for the 'name' field"))}if(typeof t.version=="string"?this.version=t.version:this.version=null,Array.isArray(t.os)){let o=[];this.os=o;for(let l of t.os)typeof l!="string"?n.push(new Error("Parsing failed for the 'os' field")):o.push(l)}else this.os=null;if(Array.isArray(t.cpu)){let o=[];this.cpu=o;for(let l of t.cpu)typeof l!="string"?n.push(new Error("Parsing failed for the 'cpu' field")):o.push(l)}else this.cpu=null;if(Array.isArray(t.libc)){let o=[];this.libc=o;for(let l of t.libc)typeof l!="string"?n.push(new Error("Parsing failed for the 'libc' field")):o.push(l)}else this.libc=null;if(typeof t.type=="string"?this.type=t.type:this.type=null,typeof t.packageManager=="string"?this.packageManager=t.packageManager:this.packageManager=null,typeof t.private=="boolean"?this.private=t.private:this.private=!1,typeof t.license=="string"?this.license=t.license:this.license=null,typeof t.languageName=="string"?this.languageName=t.languageName:this.languageName=null,typeof t.main=="string"?this.main=xZ(t.main):this.main=null,typeof t.module=="string"?this.module=xZ(t.module):this.module=null,t.browser!=null)if(typeof t.browser=="string")this.browser=xZ(t.browser);else{this.browser=new Map;for(let[o,l]of Object.entries(t.browser))this.browser.set(xZ(o),typeof l=="string"?xZ(l):l)}else this.browser=null;if(this.bin=new Map,typeof t.bin=="string")t.bin.trim()===""?n.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,xZ(t.bin)):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.bin=="object"&&t.bin!==null)for(let[o,l]of Object.entries(t.bin)){if(typeof l!="string"||l.trim()===""){n.push(new Error(`Invalid bin definition for '${o}'`));continue}let A=Y0.parseIdent(o);this.bin.set(A.name,xZ(l))}if(this.scripts=new Map,typeof t.scripts=="object"&&t.scripts!==null)for(let[o,l]of Object.entries(t.scripts)){if(typeof l!="string"){n.push(new Error(`Invalid script definition for '${o}'`));continue}this.scripts.set(o,l)}if(this.dependencies=new Map,typeof t.dependencies=="object"&&t.dependencies!==null)for(let[o,l]of Object.entries(t.dependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=Y0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=Y0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f)}if(this.devDependencies=new Map,typeof t.devDependencies=="object"&&t.devDependencies!==null)for(let[o,l]of Object.entries(t.devDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=Y0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=Y0.makeDescriptor(A,l);this.devDependencies.set(f.identHash,f)}if(this.peerDependencies=new Map,typeof t.peerDependencies=="object"&&t.peerDependencies!==null)for(let[o,l]of Object.entries(t.peerDependencies)){let A;try{A=Y0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}(typeof l!="string"||!l.startsWith(QZo.WorkspaceResolver.protocol)&&!XZo.validRange(l))&&(n.push(new Error(`Invalid dependency range for '${o}'`)),l="*");let f=Y0.makeDescriptor(A,l);this.peerDependencies.set(f.identHash,f)}typeof t.workspaces=="object"&&t.workspaces!==null&&t.workspaces.nohoist&&n.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=Array.isArray(t.workspaces)?t.workspaces:typeof t.workspaces=="object"&&t.workspaces!==null&&Array.isArray(t.workspaces.packages)?t.workspaces.packages:[];this.workspaceDefinitions=[];for(let o of a){if(typeof o!="string"){n.push(new Error(`Invalid workspace definition for '${o}'`));continue}this.workspaceDefinitions.push({pattern:o})}if(this.dependenciesMeta=new Map,typeof t.dependenciesMeta=="object"&&t.dependenciesMeta!==null)for(let[o,l]of Object.entries(t.dependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}`));continue}let A=Y0.parseDescriptor(o),f=this.ensureDependencyMeta(A),I=Egt(l.built,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid built meta field for '${o}'`));continue}let C=Egt(l.optional,{yamlCompatibilityMode:r});if(C===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}let b=Egt(l.unplugged,{yamlCompatibilityMode:r});if(b===null){n.push(new Error(`Invalid unplugged meta field for '${o}'`));continue}Object.assign(f,{built:I,optional:C,unplugged:b})}if(this.peerDependenciesMeta=new Map,typeof t.peerDependenciesMeta=="object"&&t.peerDependenciesMeta!==null)for(let[o,l]of Object.entries(t.peerDependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}'`));continue}let A=Y0.parseDescriptor(o),f=this.ensurePeerDependencyMeta(A),I=Egt(l.optional,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}Object.assign(f,{optional:I})}if(this.resolutions=[],typeof t.resolutions=="object"&&t.resolutions!==null)for(let[o,l]of Object.entries(t.resolutions)){if(typeof l!="string"){n.push(new Error(`Invalid resolution entry for '${o}'`));continue}try{this.resolutions.push({pattern:(0,Fxn.parseResolution)(o),reference:l})}catch(A){n.push(A);continue}}if(Array.isArray(t.files)){this.files=new Set;for(let o of t.files){if(typeof o!="string"){n.push(new Error(`Invalid files entry for '${o}'`));continue}this.files.add(o)}}else this.files=null;if(typeof t.publishConfig=="object"&&t.publishConfig!==null){if(this.publishConfig={},typeof t.publishConfig.access=="string"&&(this.publishConfig.access=t.publishConfig.access),typeof t.publishConfig.main=="string"&&(this.publishConfig.main=xZ(t.publishConfig.main)),typeof t.publishConfig.module=="string"&&(this.publishConfig.module=xZ(t.publishConfig.module)),t.publishConfig.browser!=null)if(typeof t.publishConfig.browser=="string")this.publishConfig.browser=xZ(t.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[o,l]of Object.entries(t.publishConfig.browser))this.publishConfig.browser.set(xZ(o),typeof l=="string"?xZ(l):l)}if(typeof t.publishConfig.registry=="string"&&(this.publishConfig.registry=t.publishConfig.registry),typeof t.publishConfig.provenance=="boolean"&&(this.publishConfig.provenance=t.publishConfig.provenance),typeof t.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,xZ(t.publishConfig.bin)]]):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.publishConfig.bin=="object"&&t.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[o,l]of Object.entries(t.publishConfig.bin)){if(typeof l!="string"){n.push(new Error(`Invalid bin definition for '${o}'`));continue}this.publishConfig.bin.set(o,xZ(l))}}if(Array.isArray(t.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let o of t.publishConfig.executableFiles){if(typeof o!="string"){n.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(xZ(o))}}}else this.publishConfig=null;if(typeof t.installConfig=="object"&&t.installConfig!==null){this.installConfig={};for(let o of Object.keys(t.installConfig))o==="hoistingLimits"?typeof t.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=t.installConfig.hoistingLimits:n.push(new Error("Invalid hoisting limits definition")):o=="selfReferences"?typeof t.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=t.installConfig.selfReferences:n.push(new Error("Invalid selfReferences definition, must be a boolean value")):n.push(new Error(`Unrecognized installConfig key: ${o}`))}else this.installConfig=null;if(typeof t.optionalDependencies=="object"&&t.optionalDependencies!==null)for(let[o,l]of Object.entries(t.optionalDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=Y0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=Y0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f);let I=Y0.makeDescriptor(A,"unknown"),C=this.ensureDependencyMeta(I);Object.assign(C,{optional:!0})}typeof t.preferUnplugged=="boolean"?this.preferUnplugged=t.preferUnplugged:this.preferUnplugged=null,this.errors=n}getForScope(t){switch(t){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${t}")`)}}hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||this.peerDependencies.has(t.identHash))}hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.devDependencies.has(t.identHash))}hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDependency(t))}getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(Yur("os",this.os)),this.cpu&&this.cpu.length>0&&t.push(Yur("cpu",this.cpu)),this.libc&&this.libc.length>0&&t.push(Yur("libc",this.libc)),t.length>0?t.join(" & "):null}ensureDependencyMeta(t){if(t.range!=="unknown"&&!YZo.default.valid(t.range))throw new Error(`Invalid meta field range for '${Y0.stringifyDescriptor(t)}'`);let r=Y0.stringifyIdent(t),n=t.range!=="unknown"?t.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let o=a.get(n);return o||a.set(n,o={}),o}ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Invalid meta field range for '${Y0.stringifyDescriptor(t)}'`);let r=Y0.stringifyIdent(t),n=this.peerDependenciesMeta.get(r);return n||this.peerDependenciesMeta.set(r,n={}),n}setRawField(t,r,{after:n=[]}={}){let a=new Set(n.filter(o=>Object.hasOwn(this.raw,o)));if(a.size===0||Object.hasOwn(this.raw,t))this.raw[t]=r;else{let o=this.raw,l=this.raw={},A=!1;for(let f of Object.keys(o))l[f]=o[f],A||(a.delete(f),a.size===0&&(l[t]=r,A=!0))}}exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),this.name!==null?t.name=Y0.stringifyIdent(this.name):delete t.name,this.version!==null?t.version=this.version:delete t.version,this.os!==null?t.os=this.os:delete t.os,this.cpu!==null?t.cpu=this.cpu:delete t.cpu,this.type!==null?t.type=this.type:delete t.type,this.packageManager!==null?t.packageManager=this.packageManager:delete t.packageManager,this.private?t.private=!0:delete t.private,this.license!==null?t.license=this.license:delete t.license,this.languageName!==null?t.languageName=this.languageName:delete t.languageName,this.main!==null?t.main=this.main:delete t.main,this.module!==null?t.module=this.module:delete t.module,this.browser!==null){let o=this.browser;typeof o=="string"?t.browser=o:o instanceof Map&&(t.browser=Object.assign({},...Array.from(o.keys()).sort().map(l=>({[l]:o.get(l)}))))}else delete t.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?t.bin=this.bin.get(this.name.name):this.bin.size>0?t.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(o=>({[o]:this.bin.get(o)}))):delete t.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?t.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:o})=>o)}:t.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?t.workspaces=this.raw.workspaces:delete t.workspaces;let n=[],a=[];for(let o of this.dependencies.values()){let l=this.dependenciesMeta.get(Y0.stringifyIdent(o)),A=!1;if(r&&l){let f=l.get(null);f&&f.optional&&(A=!0)}A?a.push(o):n.push(o)}n.length>0?t.dependencies=Object.assign({},...Y0.sortDescriptors(n).map(o=>({[Y0.stringifyIdent(o)]:o.range}))):delete t.dependencies,a.length>0?t.optionalDependencies=Object.assign({},...Y0.sortDescriptors(a).map(o=>({[Y0.stringifyIdent(o)]:o.range}))):delete t.optionalDependencies,this.devDependencies.size>0?t.devDependencies=Object.assign({},...Y0.sortDescriptors(this.devDependencies.values()).map(o=>({[Y0.stringifyIdent(o)]:o.range}))):delete t.devDependencies,this.peerDependencies.size>0?t.peerDependencies=Object.assign({},...Y0.sortDescriptors(this.peerDependencies.values()).map(o=>({[Y0.stringifyIdent(o)]:o.range}))):delete t.peerDependencies,t.dependenciesMeta={};for(let[o,l]of Sgt.sortMap(this.dependenciesMeta.entries(),([A,f])=>A))for(let[A,f]of Sgt.sortMap(l.entries(),([I,C])=>I!==null?`0${I}`:"1")){let I=A!==null?Y0.stringifyDescriptor(Y0.makeDescriptor(Y0.parseIdent(o),A)):o,C={...f};r&&A===null&&delete C.optional,Object.keys(C).length!==0&&(t.dependenciesMeta[I]=C)}if(Object.keys(t.dependenciesMeta).length===0&&delete t.dependenciesMeta,this.peerDependenciesMeta.size>0?t.peerDependenciesMeta=Object.assign({},...Sgt.sortMap(this.peerDependenciesMeta.entries(),([o,l])=>o).map(([o,l])=>({[o]:l}))):delete t.peerDependenciesMeta,this.resolutions.length>0?t.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:l})=>({[(0,Fxn.stringifyResolution)(o)]:l}))):delete t.resolutions,this.files!==null?t.files=Array.from(this.files):delete t.files,this.preferUnplugged!==null?t.preferUnplugged=this.preferUnplugged:delete t.preferUnplugged,this.scripts!==null&&this.scripts.size>0){t.scripts??={};for(let o of Object.keys(t.scripts))this.scripts.has(o)||delete t.scripts[o];for(let[o,l]of this.scripts.entries())t.scripts[o]=l}else delete t.scripts;return t}};Bgt.Manifest=Dve;Dve.fileName="package.json";Dve.allDependencies=["dependencies","devDependencies","peerDependencies"];Dve.hardDependencies=["dependencies","devDependencies"];function Zxn(e){let t=e.match(/^[ \t]+/m);return t?t[0]:" "}function Lxn(e){return e.charCodeAt(0)===65279?e.slice(1):e}function xZ(e){return e.replace(/\\/g,"/")}function Egt(e,{yamlCompatibilityMode:t}){return t?Sgt.tryParseOptionalBoolean(e):typeof e>"u"||typeof e=="boolean"?e:null}function Vxn(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let n=r%2===0?"":"!",a=t.slice(r);return`${n}${e}=${a}`}function Yur(e,t){return t.length===1?Vxn(e,t[0]):`(${t.map(r=>Vxn(e,r)).join(" | ")})`}});var pM=H(pIe=>{"use strict";Object.defineProperty(pIe,"__esModule",{value:!0});pIe.Report=pIe.ReportError=void 0;pIe.isReportError=Wxn;var JZo=PO(),UZo=Et("stream"),KZo=Et("string_decoder"),jZo=K9(),zZo=15,Qur=class extends Error{constructor(t,r,n){super(r),this.reportExtra=n,this.reportCode=t}};pIe.ReportError=Qur;function Wxn(e){return typeof e.reportCode<"u"}var Xur=class{constructor(){this.cacheHits=new Set,this.cacheMisses=new Set,this.reportedInfos=new Set,this.reportedWarnings=new Set,this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(t){this.cacheHits.add(t.locatorHash)}reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}static progressViaCounter(t){let r=0,n,a=new Promise(f=>{n=f}),o=f=>{let I=n;a=new Promise(C=>{n=C}),r=f,I()},l=(f=0)=>{o(r+1)},A=async function*(){for(;r{r=l}),a=(0,JZo.throttle)(l=>{let A=r;n=new Promise(f=>{r=f}),t=l,A()},1e3/zZo),o=async function*(){for(;;)await n,yield{title:t}}();return{[Symbol.asyncIterator](){return o},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(t,r){let n=this.reportProgress(t);try{return await r(t)}finally{n.stop()}}startProgressSync(t,r){let n=this.reportProgress(t);try{return r(t)}finally{n.stop()}}reportInfoOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(t,r),n?.reportExtra?.(this))}reportWarningOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(t,r),n?.reportExtra?.(this))}reportErrorOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(t,r),n?.reportExtra?.(this))}reportExceptionOnce(t){Wxn(t)?this.reportErrorOnce(t.reportCode,t.message,{key:t,reportExtra:t.reportExtra}):this.reportErrorOnce(jZo.MessageName.EXCEPTION,t.stack||t.message,{key:t})}createStreamReporter(t=null){let r=new UZo.PassThrough,n=new KZo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` +`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",t!==null?this.reportInfo(null,`${t} ${f}`):this.reportInfo(null,f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&(t!==null?this.reportInfo(null,`${t} ${o}`):this.reportInfo(null,o))}),r}};pIe.Report=Xur});var Uur=H(wgt=>{"use strict";Object.defineProperty(wgt,"__esModule",{value:!0});wgt.MultiFetcher=void 0;var qZo=(Wa(),vi(Va)),$Zo=K9(),eLo=pM(),tLo=qZo.__importStar(IG()),Jur=class{constructor(t){this.fetchers=t}supports(t,r){return!!this.tryFetcher(t,r)}getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}tryFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));return n||null}getFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));if(!n)throw new eLo.ReportError($Zo.MessageName.FETCHER_NOT_FOUND,`${tLo.prettyLocator(r.project.configuration,t)} isn't supported by any available fetcher`);return n}};wgt.MultiFetcher=Jur});var jur=H(Tgt=>{"use strict";Object.defineProperty(Tgt,"__esModule",{value:!0});Tgt.MultiResolver=void 0;var rLo=(Wa(),vi(Va)),Oxn=rLo.__importStar(IG()),Kur=class{constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${Oxn.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${Oxn.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};Tgt.MultiResolver=Kur});var egr=H(Rgt=>{"use strict";Object.defineProperty(Rgt,"__esModule",{value:!0});Rgt.VirtualFetcher=void 0;var nLo=(Wa(),vi(Va)),zur=No(),qur=nLo.__importStar(IG()),$ur=class{supports(t){return!!t.reference.startsWith("virtual:")}getLocalPath(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=qur.makeLocator(t,a);return r.fetcher.getLocalPath(o,r)}async fetch(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=qur.makeLocator(t,a),l=await r.fetcher.fetch(o,r);return await this.ensureVirtualLink(t,l,r)}getLocatorFilename(t){return qur.slugifyLocator(t)}async ensureVirtualLink(t,r,n){let a=r.packageFs.getRealPath(),o=n.project.configuration.get("virtualFolder"),l=this.getLocatorFilename(t),A=zur.VirtualFS.makeVirtualPath(o,l,a),f=new zur.AliasFS(A,{baseFs:r.packageFs,pathUtils:zur.ppath});return{...r,packageFs:f}}};Rgt.VirtualFetcher=$ur});var Pxn=H(Dgt=>{"use strict";Object.defineProperty(Dgt,"__esModule",{value:!0});Dgt.VirtualResolver=void 0;var Ngt=class e{static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};Dgt.VirtualResolver=Ngt;Ngt.protocol="virtual:"});var rgr=H(kgt=>{"use strict";Object.defineProperty(kgt,"__esModule",{value:!0});kgt.WorkspaceFetcher=void 0;var Mxn=No(),Hxn=dIe(),tgr=class{supports(t){return!!t.reference.startsWith(Hxn.WorkspaceResolver.protocol)}getLocalPath(t,r){return this.getWorkspace(t,r).cwd}async fetch(t,r){let n=this.getWorkspace(t,r).cwd;return{packageFs:new Mxn.CwdFS(n),prefixPath:Mxn.PortablePath.dot,localPath:n}}getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(Hxn.WorkspaceResolver.protocol.length))}};kgt.WorkspaceFetcher=tgr});var Xxn=H(a8=>{"use strict";Object.defineProperty(a8,"__esModule",{value:!0});a8.RESOLVED_RC_FILE=void 0;a8.resolveRcFiles=aLo;a8.getValue=cLo;a8.getValueByTree=sgr;a8.getSource=lLo;var iLo=(e,t,r)=>{let n=[...e];return n.reverse(),n.findIndex(t,r)};function E5e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var fM;(function(e){e[e.Object=0]="Object",e[e.Array=1]="Array",e[e.Literal=2]="Literal",e[e.Undefined=3]="Undefined"})(fM||(fM={}));function Yxn(e){return typeof e>"u"?fM.Undefined:E5e(e)?fM.Object:Array.isArray(e)?fM.Array:fM.Literal}function ogr(e,t){return Object.hasOwn(e,t)}function sLo(e){return E5e(e)&&ogr(e,"onConflict")&&typeof e.onConflict=="string"}function oLo(e){if(typeof e>"u")return{onConflict:"default",value:e};if(!sLo(e))return{onConflict:"default",value:e};if(ogr(e,"value"))return e;let{onConflict:t,...r}=e;return{onConflict:t,value:r}}function Qxn(e,t){let r=E5e(e)&&ogr(e,t)?e[t]:void 0;return oLo(r)}a8.RESOLVED_RC_FILE=Symbol();function xve(e,t){return[e,t,a8.RESOLVED_RC_FILE]}function agr(e){return Array.isArray(e)?e[2]===a8.RESOLVED_RC_FILE:!1}function ngr(e,t){if(E5e(e)){let r={};for(let n of Object.keys(e))r[n]=ngr(e[n],t);return xve(t,r)}return Array.isArray(e)?xve(t,e.map(r=>ngr(r,t))):xve(t,e)}function igr(e,t,r,n,a){let o,l=[],A=a,f=0;for(let C=a-1;C>=n;--C){let[b,E]=e[C],{onConflict:N,value:B}=Qxn(E,r),F=Yxn(B);if(F!==fM.Undefined){if(o??=F,F!==o||N==="hardReset"){f=A;break}if(F===fM.Literal)return xve(b,B);if(l.unshift([b,B]),N==="reset"){f=C;break}N==="extend"&&C===n&&(n=0),A=C}}if(typeof o>"u")return null;let I=l.map(([C])=>C).join(", ");switch(o){case fM.Array:return xve(I,new Array().concat(...l.map(([C,b])=>b.map(E=>ngr(E,C)))));case fM.Object:{let C=Object.assign({},...l.map(([,F])=>F)),b=Object.keys(C),E={},N=e.map(([F,Q])=>[F,Qxn(Q,r).value]),B=iLo(N,([F,Q])=>{let J=Yxn(Q);return J!==fM.Object&&J!==fM.Undefined});if(B!==-1){let F=N.slice(B+1);for(let Q of b)E[Q]=igr(F,t,Q,0,F.length)}else for(let F of b)E[F]=igr(N,t,F,f,N.length);return xve(I,E)}default:throw new Error("Assertion failed: Non-extendable value type")}}function aLo(e){return igr(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}function cLo(e){return agr(e)?e[1]:e}function sgr(e){let t=agr(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>sgr(r));if(E5e(t)){let r={};for(let[n,a]of Object.entries(t))r[n]=sgr(a);return r}return t}function lLo(e){return agr(e)?e[0]:null}});var xgt=H(S5e=>{"use strict";Object.defineProperty(S5e,"__esModule",{value:!0});S5e.getDefaultGlobalFolder=uLo;S5e.getHomeFolder=Uxn;S5e.isFolderInside=gLo;var C$=No(),Jxn=Et("os");function uLo(){if(process.platform==="win32"){let e=C$.npath.toPortablePath(process.env.LOCALAPPDATA||C$.npath.join((0,Jxn.homedir)(),"AppData","Local"));return C$.ppath.resolve(e,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let e=C$.npath.toPortablePath(process.env.XDG_DATA_HOME);return C$.ppath.resolve(e,"yarn/berry")}return C$.ppath.resolve(Uxn(),".yarn/berry")}function Uxn(){return C$.npath.toPortablePath((0,Jxn.homedir)()||"/usr/local/share")}function gLo(e,t){let r=C$.ppath.relative(t,e);return r&&!r.startsWith("..")&&!C$.ppath.isAbsolute(r)}});var zxn=H((p8l,jxn)=>{"use strict";var cgr=Et("https"),lgr=Et("http"),{URL:Kxn}=Et("url"),ugr=class extends lgr.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new Kxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?lgr:cgr).request(n);a.once("connect",(o,l,A)=>{a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200?r(null,l):(l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null))}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}},ggr=class extends cgr.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new Kxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?lgr:cgr).request(n);a.once("connect",(o,l,A)=>{if(a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200){let f=super.createConnection({...t,socket:l});r(null,f)}else l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null)}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}};jxn.exports={HttpProxyAgent:ugr,HttpsProxyAgent:ggr}});var y$=H((_$,Ggt)=>{"use strict";Object.defineProperty(_$,"__esModule",{value:!0});var qxn=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function ALo(e){return qxn.includes(e)}var dLo=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...qxn];function pLo(e){return dLo.includes(e)}var fLo=["null","undefined","string","number","bigint","boolean","symbol"];function ILo(e){return fLo.includes(e)}function Gve(e){return t=>typeof t===e}var{toString:$xn}=Object.prototype,v5e=e=>{let t=$xn.call(e).slice(8,-1);if(/HTML\w+Element/.test(t)&&Xi.domElement(e))return"HTMLElement";if(pLo(t))return t},jb=e=>t=>v5e(t)===e;function Xi(e){if(e===null)return"null";switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(Xi.observable(e))return"Observable";if(Xi.array(e))return"Array";if(Xi.buffer(e))return"Buffer";let t=v5e(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}Xi.undefined=Gve("undefined");Xi.string=Gve("string");var hLo=Gve("number");Xi.number=e=>hLo(e)&&!Xi.nan(e);Xi.bigint=Gve("bigint");Xi.function_=Gve("function");Xi.null_=e=>e===null;Xi.class_=e=>Xi.function_(e)&&e.toString().startsWith("class ");Xi.boolean=e=>e===!0||e===!1;Xi.symbol=Gve("symbol");Xi.numericString=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e)&&!Number.isNaN(Number(e));Xi.array=(e,t)=>Array.isArray(e)?Xi.function_(t)?e.every(t):!0:!1;Xi.buffer=e=>{var t,r,n,a;return(a=(n=(r=(t=e)===null||t===void 0?void 0:t.constructor)===null||r===void 0?void 0:r.isBuffer)===null||n===void 0?void 0:n.call(r,e))!==null&&a!==void 0?a:!1};Xi.blob=e=>jb("Blob")(e);Xi.nullOrUndefined=e=>Xi.null_(e)||Xi.undefined(e);Xi.object=e=>!Xi.null_(e)&&(typeof e=="object"||Xi.function_(e));Xi.iterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.iterator])};Xi.asyncIterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.asyncIterator])};Xi.generator=e=>{var t,r;return Xi.iterable(e)&&Xi.function_((t=e)===null||t===void 0?void 0:t.next)&&Xi.function_((r=e)===null||r===void 0?void 0:r.throw)};Xi.asyncGenerator=e=>Xi.asyncIterable(e)&&Xi.function_(e.next)&&Xi.function_(e.throw);Xi.nativePromise=e=>jb("Promise")(e);var mLo=e=>{var t,r;return Xi.function_((t=e)===null||t===void 0?void 0:t.then)&&Xi.function_((r=e)===null||r===void 0?void 0:r.catch)};Xi.promise=e=>Xi.nativePromise(e)||mLo(e);Xi.generatorFunction=jb("GeneratorFunction");Xi.asyncGeneratorFunction=e=>v5e(e)==="AsyncGeneratorFunction";Xi.asyncFunction=e=>v5e(e)==="AsyncFunction";Xi.boundFunction=e=>Xi.function_(e)&&!e.hasOwnProperty("prototype");Xi.regExp=jb("RegExp");Xi.date=jb("Date");Xi.error=jb("Error");Xi.map=e=>jb("Map")(e);Xi.set=e=>jb("Set")(e);Xi.weakMap=e=>jb("WeakMap")(e);Xi.weakSet=e=>jb("WeakSet")(e);Xi.int8Array=jb("Int8Array");Xi.uint8Array=jb("Uint8Array");Xi.uint8ClampedArray=jb("Uint8ClampedArray");Xi.int16Array=jb("Int16Array");Xi.uint16Array=jb("Uint16Array");Xi.int32Array=jb("Int32Array");Xi.uint32Array=jb("Uint32Array");Xi.float32Array=jb("Float32Array");Xi.float64Array=jb("Float64Array");Xi.bigInt64Array=jb("BigInt64Array");Xi.bigUint64Array=jb("BigUint64Array");Xi.arrayBuffer=jb("ArrayBuffer");Xi.sharedArrayBuffer=jb("SharedArrayBuffer");Xi.dataView=jb("DataView");Xi.enumCase=(e,t)=>Object.values(t).includes(e);Xi.directInstanceOf=(e,t)=>Object.getPrototypeOf(e)===t.prototype;Xi.urlInstance=e=>jb("URL")(e);Xi.urlString=e=>{if(!Xi.string(e))return!1;try{return new URL(e),!0}catch{return!1}};Xi.truthy=e=>!!e;Xi.falsy=e=>!e;Xi.nan=e=>Number.isNaN(e);Xi.primitive=e=>Xi.null_(e)||ILo(typeof e);Xi.integer=e=>Number.isInteger(e);Xi.safeInteger=e=>Number.isSafeInteger(e);Xi.plainObject=e=>{if($xn.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.getPrototypeOf({})};Xi.typedArray=e=>ALo(v5e(e));var CLo=e=>Xi.safeInteger(e)&&e>=0;Xi.arrayLike=e=>!Xi.nullOrUndefined(e)&&!Xi.function_(e)&&CLo(e.length);Xi.inRange=(e,t)=>{if(Xi.number(t))return e>=Math.min(0,t)&&e<=Math.max(t,0);if(Xi.array(t)&&t.length===2)return e>=Math.min(...t)&&e<=Math.max(...t);throw new TypeError(`Invalid range: ${JSON.stringify(t)}`)};var _Lo=1,yLo=["innerHTML","ownerDocument","style","attributes","nodeValue"];Xi.domElement=e=>Xi.object(e)&&e.nodeType===_Lo&&Xi.string(e.nodeName)&&!Xi.plainObject(e)&&yLo.every(t=>t in e);Xi.observable=e=>{var t,r,n,a;return e?e===((r=(t=e)[Symbol.observable])===null||r===void 0?void 0:r.call(t))||e===((a=(n=e)["@@observable"])===null||a===void 0?void 0:a.call(n)):!1};Xi.nodeStream=e=>Xi.object(e)&&Xi.function_(e.pipe)&&!Xi.observable(e);Xi.infinite=e=>e===1/0||e===-1/0;var eGn=e=>t=>Xi.integer(t)&&Math.abs(t%2)===e;Xi.evenInteger=eGn(0);Xi.oddInteger=eGn(1);Xi.emptyArray=e=>Xi.array(e)&&e.length===0;Xi.nonEmptyArray=e=>Xi.array(e)&&e.length>0;Xi.emptyString=e=>Xi.string(e)&&e.length===0;var bLo=e=>Xi.string(e)&&!/\S/.test(e);Xi.emptyStringOrWhitespace=e=>Xi.emptyString(e)||bLo(e);Xi.nonEmptyString=e=>Xi.string(e)&&e.length>0;Xi.nonEmptyStringAndNotWhitespace=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e);Xi.emptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length===0;Xi.nonEmptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length>0;Xi.emptySet=e=>Xi.set(e)&&e.size===0;Xi.nonEmptySet=e=>Xi.set(e)&&e.size>0;Xi.emptyMap=e=>Xi.map(e)&&e.size===0;Xi.nonEmptyMap=e=>Xi.map(e)&&e.size>0;Xi.propertyKey=e=>Xi.any([Xi.string,Xi.number,Xi.symbol],e);Xi.formData=e=>jb("FormData")(e);Xi.urlSearchParams=e=>jb("URLSearchParams")(e);var tGn=(e,t,r)=>{if(!Xi.function_(t))throw new TypeError(`Invalid predicate: ${JSON.stringify(t)}`);if(r.length===0)throw new TypeError("Invalid number of values");return e.call(r,t)};Xi.any=(e,...t)=>(Xi.array(e)?e:[e]).some(n=>tGn(Array.prototype.some,n,t));Xi.all=(e,...t)=>tGn(Array.prototype.every,e,t);var Mu=(e,t,r,n={})=>{if(!e){let{multipleValues:a}=n,o=a?`received values of types ${[...new Set(r.map(l=>`\`${Xi(l)}\``))].join(", ")}`:`received value of type \`${Xi(r)}\``;throw new TypeError(`Expected value which is \`${t}\`, ${o}.`)}};_$.assert={undefined:e=>Mu(Xi.undefined(e),"undefined",e),string:e=>Mu(Xi.string(e),"string",e),number:e=>Mu(Xi.number(e),"number",e),bigint:e=>Mu(Xi.bigint(e),"bigint",e),function_:e=>Mu(Xi.function_(e),"Function",e),null_:e=>Mu(Xi.null_(e),"null",e),class_:e=>Mu(Xi.class_(e),"Class",e),boolean:e=>Mu(Xi.boolean(e),"boolean",e),symbol:e=>Mu(Xi.symbol(e),"symbol",e),numericString:e=>Mu(Xi.numericString(e),"string with a number",e),array:(e,t)=>{Mu(Xi.array(e),"Array",e),t&&e.forEach(t)},buffer:e=>Mu(Xi.buffer(e),"Buffer",e),blob:e=>Mu(Xi.blob(e),"Blob",e),nullOrUndefined:e=>Mu(Xi.nullOrUndefined(e),"null or undefined",e),object:e=>Mu(Xi.object(e),"Object",e),iterable:e=>Mu(Xi.iterable(e),"Iterable",e),asyncIterable:e=>Mu(Xi.asyncIterable(e),"AsyncIterable",e),generator:e=>Mu(Xi.generator(e),"Generator",e),asyncGenerator:e=>Mu(Xi.asyncGenerator(e),"AsyncGenerator",e),nativePromise:e=>Mu(Xi.nativePromise(e),"native Promise",e),promise:e=>Mu(Xi.promise(e),"Promise",e),generatorFunction:e=>Mu(Xi.generatorFunction(e),"GeneratorFunction",e),asyncGeneratorFunction:e=>Mu(Xi.asyncGeneratorFunction(e),"AsyncGeneratorFunction",e),asyncFunction:e=>Mu(Xi.asyncFunction(e),"AsyncFunction",e),boundFunction:e=>Mu(Xi.boundFunction(e),"Function",e),regExp:e=>Mu(Xi.regExp(e),"RegExp",e),date:e=>Mu(Xi.date(e),"Date",e),error:e=>Mu(Xi.error(e),"Error",e),map:e=>Mu(Xi.map(e),"Map",e),set:e=>Mu(Xi.set(e),"Set",e),weakMap:e=>Mu(Xi.weakMap(e),"WeakMap",e),weakSet:e=>Mu(Xi.weakSet(e),"WeakSet",e),int8Array:e=>Mu(Xi.int8Array(e),"Int8Array",e),uint8Array:e=>Mu(Xi.uint8Array(e),"Uint8Array",e),uint8ClampedArray:e=>Mu(Xi.uint8ClampedArray(e),"Uint8ClampedArray",e),int16Array:e=>Mu(Xi.int16Array(e),"Int16Array",e),uint16Array:e=>Mu(Xi.uint16Array(e),"Uint16Array",e),int32Array:e=>Mu(Xi.int32Array(e),"Int32Array",e),uint32Array:e=>Mu(Xi.uint32Array(e),"Uint32Array",e),float32Array:e=>Mu(Xi.float32Array(e),"Float32Array",e),float64Array:e=>Mu(Xi.float64Array(e),"Float64Array",e),bigInt64Array:e=>Mu(Xi.bigInt64Array(e),"BigInt64Array",e),bigUint64Array:e=>Mu(Xi.bigUint64Array(e),"BigUint64Array",e),arrayBuffer:e=>Mu(Xi.arrayBuffer(e),"ArrayBuffer",e),sharedArrayBuffer:e=>Mu(Xi.sharedArrayBuffer(e),"SharedArrayBuffer",e),dataView:e=>Mu(Xi.dataView(e),"DataView",e),enumCase:(e,t)=>Mu(Xi.enumCase(e,t),"EnumCase",e),urlInstance:e=>Mu(Xi.urlInstance(e),"URL",e),urlString:e=>Mu(Xi.urlString(e),"string with a URL",e),truthy:e=>Mu(Xi.truthy(e),"truthy",e),falsy:e=>Mu(Xi.falsy(e),"falsy",e),nan:e=>Mu(Xi.nan(e),"NaN",e),primitive:e=>Mu(Xi.primitive(e),"primitive",e),integer:e=>Mu(Xi.integer(e),"integer",e),safeInteger:e=>Mu(Xi.safeInteger(e),"integer",e),plainObject:e=>Mu(Xi.plainObject(e),"plain object",e),typedArray:e=>Mu(Xi.typedArray(e),"TypedArray",e),arrayLike:e=>Mu(Xi.arrayLike(e),"array-like",e),domElement:e=>Mu(Xi.domElement(e),"HTMLElement",e),observable:e=>Mu(Xi.observable(e),"Observable",e),nodeStream:e=>Mu(Xi.nodeStream(e),"Node.js Stream",e),infinite:e=>Mu(Xi.infinite(e),"infinite number",e),emptyArray:e=>Mu(Xi.emptyArray(e),"empty array",e),nonEmptyArray:e=>Mu(Xi.nonEmptyArray(e),"non-empty array",e),emptyString:e=>Mu(Xi.emptyString(e),"empty string",e),emptyStringOrWhitespace:e=>Mu(Xi.emptyStringOrWhitespace(e),"empty string or whitespace",e),nonEmptyString:e=>Mu(Xi.nonEmptyString(e),"non-empty string",e),nonEmptyStringAndNotWhitespace:e=>Mu(Xi.nonEmptyStringAndNotWhitespace(e),"non-empty string and not whitespace",e),emptyObject:e=>Mu(Xi.emptyObject(e),"empty object",e),nonEmptyObject:e=>Mu(Xi.nonEmptyObject(e),"non-empty object",e),emptySet:e=>Mu(Xi.emptySet(e),"empty set",e),nonEmptySet:e=>Mu(Xi.nonEmptySet(e),"non-empty set",e),emptyMap:e=>Mu(Xi.emptyMap(e),"empty map",e),nonEmptyMap:e=>Mu(Xi.nonEmptyMap(e),"non-empty map",e),propertyKey:e=>Mu(Xi.propertyKey(e),"PropertyKey",e),formData:e=>Mu(Xi.formData(e),"FormData",e),urlSearchParams:e=>Mu(Xi.urlSearchParams(e),"URLSearchParams",e),evenInteger:e=>Mu(Xi.evenInteger(e),"even integer",e),oddInteger:e=>Mu(Xi.oddInteger(e),"odd integer",e),directInstanceOf:(e,t)=>Mu(Xi.directInstanceOf(e,t),"T",e),inRange:(e,t)=>Mu(Xi.inRange(e,t),"in range",e),any:(e,...t)=>Mu(Xi.any(e,...t),"predicate returns truthy for any value",t,{multipleValues:!0}),all:(e,...t)=>Mu(Xi.all(e,...t),"predicate returns truthy for all values",t,{multipleValues:!0})};Object.defineProperties(Xi,{class:{value:Xi.class_},function:{value:Xi.function_},null:{value:Xi.null_}});Object.defineProperties(_$.assert,{class:{value:_$.assert.class_},function:{value:_$.assert.function_},null:{value:_$.assert.null_}});_$.default=Xi;Ggt.exports=Xi;Ggt.exports.default=Xi;Ggt.exports.assert=_$.assert});var rGn=H((f8l,Agr)=>{"use strict";var Fgt=class extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},Zgt=class e{static fn(t){return(...r)=>new e((n,a,o)=>{r.push(o),t(...r).then(n,a)})}constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,n)=>{this._reject=n;let a=A=>{(!this._isCanceled||!l.shouldReject)&&(this._isPending=!1,r(A))},o=A=>{this._isPending=!1,n(A)},l=A=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(A)};return Object.defineProperties(l,{shouldReject:{get:()=>this._rejectOnCancel,set:A=>{this._rejectOnCancel=A}}}),t(a,o,l)})}then(t,r){return this._promise.then(t,r)}catch(t){return this._promise.catch(t)}finally(t){return this._promise.finally(t)}cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r);return}this._rejectOnCancel&&this._reject(new Fgt(t))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(Zgt.prototype,Promise.prototype);Agr.exports=Zgt;Agr.exports.CancelError=Fgt});var nGn=H((pgr,fgr)=>{"use strict";Object.defineProperty(pgr,"__esModule",{value:!0});function ELo(e){return e.encrypted}var dgr=(e,t)=>{let r;typeof t=="function"?r={connect:t}:r=t;let n=typeof r.connect=="function",a=typeof r.secureConnect=="function",o=typeof r.close=="function",l=()=>{n&&r.connect(),ELo(e)&&a&&(e.authorized?r.secureConnect():e.authorizationError||e.once("secureConnect",r.secureConnect)),o&&e.once("close",r.close)};e.writable&&!e.connecting?l():e.connecting?e.once("connect",l):e.destroyed&&o&&r.close(e._hadError)};pgr.default=dgr;fgr.exports=dgr;fgr.exports.default=dgr});var iGn=H((hgr,mgr)=>{"use strict";Object.defineProperty(hgr,"__esModule",{value:!0});var SLo=nGn(),vLo=Et("util"),BLo=Number(process.versions.node.split(".")[0]),Igr=e=>{if(e.timings)return e.timings;let t={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};e.timings=t;let r=A=>{let f=A.emit.bind(A);A.emit=(I,...C)=>(I==="error"&&(t.error=Date.now(),t.phases.total=t.error-t.start,A.emit=f),f(I,...C))};r(e);let n=()=>{t.abort=Date.now(),(!t.response||BLo>=13)&&(t.phases.total=Date.now()-t.start)};e.prependOnceListener("abort",n);let a=A=>{if(t.socket=Date.now(),t.phases.wait=t.socket-t.start,vLo.types.isProxy(A))return;let f=()=>{t.lookup=Date.now(),t.phases.dns=t.lookup-t.socket};A.prependOnceListener("lookup",f),SLo.default(A,{connect:()=>{t.connect=Date.now(),t.lookup===void 0&&(A.removeListener("lookup",f),t.lookup=t.connect,t.phases.dns=t.lookup-t.socket),t.phases.tcp=t.connect-t.lookup},secureConnect:()=>{t.secureConnect=Date.now(),t.phases.tls=t.secureConnect-t.connect}})};e.socket?a(e.socket):e.prependOnceListener("socket",a);let o=()=>{var A;t.upload=Date.now(),t.phases.request=t.upload-((A=t.secureConnect)!==null&&A!==void 0?A:t.connect)};return(typeof e.writableFinished=="boolean"?e.writableFinished:e.finished&&e.outputSize===0&&(!e.socket||e.socket.writableLength===0))?o():e.prependOnceListener("finish",o),e.prependOnceListener("response",A=>{t.response=Date.now(),t.phases.firstByte=t.response-t.upload,A.timings=t,r(A),A.prependOnceListener("end",()=>{t.end=Date.now(),t.phases.download=t.end-t.response,t.phases.total=t.end-t.start}),A.prependOnceListener("aborted",n)}),t};hgr.default=Igr;mgr.exports=Igr;mgr.exports.default=Igr});var gGn=H((I8l,ygr)=>{"use strict";var{V4MAPPED:wLo,ADDRCONFIG:TLo,ALL:uGn,promises:{Resolver:sGn},lookup:RLo}=Et("dns"),{promisify:Cgr}=Et("util"),NLo=Et("os"),Fve=Symbol("cacheableLookupCreateConnection"),_gr=Symbol("cacheableLookupInstance"),oGn=Symbol("expires"),DLo=typeof uGn=="number",aGn=e=>{if(!(e&&typeof e.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},kLo=e=>{for(let t of e)t.family!==6&&(t.address=`::ffff:${t.address}`,t.family=6)},cGn=()=>{let e=!1,t=!1;for(let r of Object.values(NLo.networkInterfaces()))for(let n of r)if(!n.internal&&(n.family==="IPv6"?t=!0:e=!0,e&&t))return{has4:e,has6:t};return{has4:e,has6:t}},xLo=e=>Symbol.iterator in e,lGn={ttl:!0},GLo={all:!0},Lgt=class{constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:n=3600,errorTtl:a=.15,resolver:o=new sGn,lookup:l=RLo}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=t,this._resolver=o,this._dnsLookup=Cgr(l),this._resolver instanceof sGn?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Cgr(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Cgr(this._resolver.resolve6.bind(this._resolver))),this._iface=cGn(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,n<1)this._fallback=!1;else{this._fallback=!0;let A=setInterval(()=>{this._hostnamesToFallback.clear()},n*1e3);A.unref&&A.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(t){this.clear(),this._resolver.setServers(t)}get servers(){return this._resolver.getServers()}lookup(t,r,n){if(typeof r=="function"?(n=r,r={}):typeof r=="number"&&(r={family:r}),!n)throw new Error("Callback must be a function.");this.lookupAsync(t,r).then(a=>{r.all?n(null,a):n(null,a.address,a.family,a.expires,a.ttl)},n)}async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let n=await this.query(t);if(r.family===6){let a=n.filter(o=>o.family===6);r.hints&wLo&&(DLo&&r.hints&uGn||a.length===0)?kLo(n):n=a}else r.family===4&&(n=n.filter(a=>a.family===4));if(r.hints&TLo){let{_iface:a}=this;n=n.filter(o=>o.family===6?a.has6:a.has4)}if(n.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${t}`);throw a.code="ENOTFOUND",a.hostname=t,a}return r.all?n:n[0]}async query(t){let r=await this._cache.get(t);if(!r){let n=this._pending[t];if(n)r=await n;else{let a=this.queryAndCache(t);this._pending[t]=a;try{r=await a}finally{delete this._pending[t]}}}return r=r.map(n=>({...n})),r}async _resolve(t){let r=async I=>{try{return await I}catch(C){if(C.code==="ENODATA"||C.code==="ENOTFOUND")return[];throw C}},[n,a]=await Promise.all([this._resolve4(t,lGn),this._resolve6(t,lGn)].map(I=>r(I))),o=0,l=0,A=0,f=Date.now();for(let I of n)I.family=4,I.expires=f+I.ttl*1e3,o=Math.max(o,I.ttl);for(let I of a)I.family=6,I.expires=f+I.ttl*1e3,l=Math.max(l,I.ttl);return n.length>0?a.length>0?A=Math.min(o,l):A=o:A=l,{entries:[...n,...a],cacheTtl:A}}async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(t,r,n){if(this.maxTtl>0&&n>0){n=Math.min(n,this.maxTtl)*1e3,r[oGn]=Date.now()+n;try{await this._cache.set(t,r,n)}catch(a){this.lookupAsync=async()=>{let o=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw o.cause=a,o}}xLo(this._cache)&&this._tick(n)}}async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._dnsLookup(t,GLo);let r=await this._resolve(t);r.entries.length===0&&this._fallback&&(r=await this._lookup(t),r.entries.length!==0&&this._hostnamesToFallback.add(t));let n=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(t,r.entries,n),r.entries}_tick(t){let r=this._nextRemovalTime;(!r||t{this._nextRemovalTime=!1;let n=1/0,a=Date.now();for(let[o,l]of this._cache){let A=l[oGn];a>=A?this._cache.delete(o):A("lookup"in r||(r.lookup=this.lookup),t[Fve](r,n))}uninstall(t){if(aGn(t),t[Fve]){if(t[_gr]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");t.createConnection=t[Fve],delete t[Fve],delete t[_gr]}}updateInterfaceInfo(){let{_iface:t}=this;this._iface=cGn(),(t.has4&&!this._iface.has4||t.has6&&!this._iface.has6)&&this._cache.clear()}clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}};ygr.exports=Lgt;ygr.exports.default=Lgt});var pGn=H((h8l,dGn)=>{"use strict";var FLo="text/plain",ZLo="us-ascii",AGn=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),LLo=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===ZLo)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length!==0||f&&f!==FLo)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`},VLo=(e,t)=>{if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return LLo(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname&&(a.pathname=a.pathname.replace(/(?0){let l=a.pathname.split("/"),A=l[l.length-1];AGn(A,t.removeDirectoryIndex)&&(l=l.slice(0,l.length-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])AGn(l,t.removeQueryParameters)&&a.searchParams.delete(l);t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters&&a.searchParams.sort(),t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e};dGn.exports=VLo});var hGn=H((m8l,IGn)=>{IGn.exports=fGn;function fGn(e,t){if(e&&t)return fGn(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(n){r[n]=e[n]}),r;function r(){for(var n=new Array(arguments.length),a=0;a{var mGn=hGn();bgr.exports=mGn(Vgt);bgr.exports.strict=mGn(CGn);Vgt.proto=Vgt(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return Vgt(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return CGn(this)},configurable:!0})});function Vgt(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function CGn(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});var Egr=H((_8l,yGn)=>{var WLo=Wgt(),OLo=function(){},PLo=function(e){return e.setHeader&&typeof e.abort=="function"},MLo=function(e){return e.stdio&&Array.isArray(e.stdio)&&e.stdio.length===3},_Gn=function(e,t,r){if(typeof t=="function")return _Gn(e,null,t);t||(t={}),r=WLo(r||OLo);var n=e._writableState,a=e._readableState,o=t.readable||t.readable!==!1&&e.readable,l=t.writable||t.writable!==!1&&e.writable,A=!1,f=function(){e.writable||I()},I=function(){l=!1,o||r.call(e)},C=function(){o=!1,l||r.call(e)},b=function(Q){r.call(e,Q?new Error("exited with error code: "+Q):null)},E=function(Q){r.call(e,Q)},N=function(){process.nextTick(B)},B=function(){if(!A){if(o&&!(a&&a.ended&&!a.destroyed))return r.call(e,new Error("premature close"));if(l&&!(n&&n.ended&&!n.destroyed))return r.call(e,new Error("premature close"))}},F=function(){e.req.on("finish",I)};return PLo(e)?(e.on("complete",I),e.on("abort",N),e.req?F():e.on("request",F)):l&&!n&&(e.on("end",f),e.on("close",f)),MLo(e)&&e.on("exit",b),e.on("end",C),e.on("finish",I),t.error!==!1&&e.on("error",E),e.on("close",N),function(){A=!0,e.removeListener("complete",I),e.removeListener("abort",N),e.removeListener("request",F),e.req&&e.req.removeListener("finish",I),e.removeListener("end",f),e.removeListener("close",f),e.removeListener("finish",I),e.removeListener("exit",b),e.removeListener("end",C),e.removeListener("error",E),e.removeListener("close",N)}};yGn.exports=_Gn});var SGn=H((y8l,EGn)=>{var HLo=Wgt(),YLo=Egr(),Ogt;try{Ogt=Et("fs")}catch{}var B5e=function(){},QLo=/^v?\.0/.test(process.version),Pgt=function(e){return typeof e=="function"},XLo=function(e){return!QLo||!Ogt?!1:(e instanceof(Ogt.ReadStream||B5e)||e instanceof(Ogt.WriteStream||B5e))&&Pgt(e.close)},JLo=function(e){return e.setHeader&&Pgt(e.abort)},ULo=function(e,t,r,n){n=HLo(n);var a=!1;e.on("close",function(){a=!0}),YLo(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,XLo(e))return e.close(B5e);if(JLo(e))return e.abort();if(Pgt(e.destroy))return e.destroy();n(l||new Error("stream was destroyed"))}}},bGn=function(e){e()},KLo=function(e,t){return e.pipe(t)},jLo=function(){var e=Array.prototype.slice.call(arguments),t=Pgt(e[e.length-1]||B5e)&&e.pop()||B5e;if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new Error("pump requires two streams per minimum");var r,n=e.map(function(a,o){var l=o0;return ULo(a,l,A,function(f){r||(r=f),f&&n.forEach(bGn),!l&&(n.forEach(bGn),t(r))})});return e.reduce(KLo)};EGn.exports=jLo});var BGn=H((b8l,vGn)=>{"use strict";var{PassThrough:zLo}=Et("stream");vGn.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,n=r==="buffer",a=!1;t?a=!(r||n):r=r||"utf8",n&&(r=null);let o=new zLo({objectMode:a});r&&o.setEncoding(r);let l=0,A=[];return o.on("data",f=>{A.push(f),a?l=A.length:l+=f.length}),o.getBufferedValue=()=>t?A:n?Buffer.concat(A,l):A.join(""),o.getBufferedLength=()=>l,o}});var wGn=H((E8l,Zve)=>{"use strict";var{constants:qLo}=Et("buffer"),$Lo=SGn(),e9o=BGn(),Mgt=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function Hgt(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,n;return await new Promise((a,o)=>{let l=A=>{A&&n.getBufferedLength()<=qLo.MAX_LENGTH&&(A.bufferedData=n.getBufferedValue()),o(A)};n=$Lo(e,e9o(t),A=>{if(A){l(A);return}a()}),n.on("data",()=>{n.getBufferedLength()>r&&l(new Mgt)})}),n.getBufferedValue()}Zve.exports=Hgt;Zve.exports.default=Hgt;Zve.exports.buffer=(e,t)=>Hgt(e,{...t,encoding:"buffer"});Zve.exports.array=(e,t)=>Hgt(e,{...t,array:!0});Zve.exports.MaxBufferError=Mgt});var vgr=H((v8l,TGn)=>{"use strict";var t9o=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),r9o=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),n9o=new Set([500,502,503,504]),i9o={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},s9o={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function fIe(e){let t=parseInt(e,10);return isFinite(t)?t:0}function o9o(e){return e?n9o.has(e.status):!0}function Sgr(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let n of r){let[a,o]=n.split(/=/,2);t[a.trim()]=o===void 0?!0:o.trim().replace(/^"|"$/g,"")}return t}function a9o(e){let t=[];for(let r in e){let n=e[r];t.push(n===!0?r:r+"="+n)}if(t.length)return t.join(", ")}TGn.exports=class{constructor(t,r,{shared:n,cacheHeuristic:a,immutableMinTimeToLive:o,ignoreCargoCult:l,_fromObject:A}={}){if(A){this._fromObject(A);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(t),this._responseTime=this.now(),this._isShared=n!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=o!==void 0?o:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=Sgr(r.headers["cache-control"]),this._method="method"in t?t.method:"GET",this._url=t.url,this._host=t.headers.host,this._noAuthorization=!t.headers.authorization,this._reqHeaders=r.headers.vary?t.headers:null,this._reqcc=Sgr(t.headers["cache-control"]),l&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":a9o(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&r9o.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||t9o.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=Sgr(t.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(t.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(t,!1)}_requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host===t.headers.host&&(!t.method||this._method===t.method||r&&t.method==="HEAD")&&this._varyMatches(t)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let n of r)if(t.headers[n]!==this._reqHeaders[n])return!1;return!0}_copyWithoutHopByHopHeaders(t){let r={};for(let n in t)i9o[n]||(r[n]=t[n]);if(t.connection){let n=t.connection.trim().split(/\s*,\s*/);for(let a of n)delete r[a]}if(r.warning){let n=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));n.length?r.warning=n.join(",").trim():delete r.warning}return r}responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(t.warning=(t.warning?`${t.warning}, `:"")+'113 - "rfc7234 5.5.4"'),t.age=`${Math.round(r)}`,t.date=new Date(this.now()).toUTCString(),t}date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this._responseTime}age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return t+r}_ageValue(){return fIe(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return fIe(this._rescc["s-maxage"])}if(this._rescc["max-age"])return fIe(this._rescc["max-age"]);let t=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let n=Date.parse(this._resHeaders.expires);return Number.isNaN(n)||nn)return Math.max(t,(r-n)/1e3*this._cacheHeuristic)}return t}timeToLive(){let t=this.maxAge()-this.age(),r=t+fIe(this._rescc["stale-if-error"]),n=t+fIe(this._rescc["stale-while-revalidate"]);return Math.max(0,t,r,n)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+fIe(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+fIe(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}_fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t||t.v!==1)throw Error("Invalid serialization");this._responseTime=t.t,this._isShared=t.sh,this._cacheHeuristic=t.ch,this._immutableMinTtl=t.imm!==void 0?t.imm:24*3600*1e3,this._status=t.st,this._resHeaders=t.resh,this._rescc=t.rescc,this._method=t.m,this._url=t.u,this._host=t.h,this._noAuthorization=t.a,this._reqHeaders=t.reqh,this._reqcc=t.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copyWithoutHopByHopHeaders(t.headers);if(delete r["if-range"],!this._requestMatches(t,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let a=r["if-none-match"].split(/,/).filter(o=>!/^\s*W\//.test(o));a.length?r["if-none-match"]=a.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStaleIfError()&&o9o(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let n=!1;if(r.status!==void 0&&r.status!=304?n=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?n=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?n=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?n=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(n=!0),!n)return{policy:new this.constructor(t,r),modified:r.status!=304,matches:!1};let a={};for(let l in this._resHeaders)a[l]=l in r.headers&&!s9o[l]?r.headers[l]:this._resHeaders[l];let o=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(t,o,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var Ygt=H((B8l,RGn)=>{"use strict";RGn.exports=e=>{let t={};for(let[r,n]of Object.entries(e))t[r.toLowerCase()]=n;return t}});var DGn=H((w8l,NGn)=>{"use strict";var c9o=Et("stream").Readable,l9o=Ygt(),Bgr=class extends c9o{constructor(t,r,n,a){if(typeof t!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(n instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=t,this.headers=l9o(r),this.body=n,this.url=a}_read(){this.push(this.body),this.push(null)}};NGn.exports=Bgr});var xGn=H((T8l,kGn)=>{"use strict";var u9o=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];kGn.exports=(e,t)=>{let r=new Set(Object.keys(e).concat(u9o));for(let n of r)n in t||(t[n]=typeof e[n]=="function"?e[n].bind(e):e[n])}});var FGn=H((R8l,GGn)=>{"use strict";var g9o=Et("stream").PassThrough,A9o=xGn(),d9o=e=>{if(!(e&&e.pipe))throw new TypeError("Parameter `response` must be a response stream.");let t=new g9o;return A9o(e,t),e.pipe(t)};GGn.exports=d9o});var ZGn=H(wgr=>{wgr.stringify=function e(t){if(typeof t>"u")return t;if(t&&Buffer.isBuffer(t))return JSON.stringify(":base64:"+t.toString("base64"));if(t&&t.toJSON&&(t=t.toJSON()),t&&typeof t=="object"){var r="",n=Array.isArray(t);r=n?"[":"{";var a=!0;for(var o in t){var l=typeof t[o]=="function"||!n&&typeof t[o]>"u";Object.hasOwnProperty.call(t,o)&&!l&&(a||(r+=","),a=!1,n?t[o]==null?r+="null":r+=e(t[o]):t[o]!==void 0&&(r+=e(o)+":"+e(t[o])))}return r+=n?"]":"}",r}else return typeof t=="string"?JSON.stringify(/^:/.test(t)?":"+t:t):typeof t>"u"?"null":JSON.stringify(t)};wgr.parse=function(e){return JSON.parse(e,function(t,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var OGn=H((D8l,WGn)=>{"use strict";var p9o=Et("events"),LGn=ZGn(),f9o=e=>{let t={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(e.adapter||e.uri){let r=e.adapter||/^[^:+]*/.exec(e.uri)[0];return new(Et(t[r]))(e)}return new Map},VGn=["sqlite","postgres","mysql","mongo","redis","tiered"],Tgr=class extends p9o{constructor(t,{emitErrors:r=!0,...n}={}){if(super(),this.opts={namespace:"keyv",serialize:LGn.stringify,deserialize:LGn.parse,...typeof t=="string"?{uri:t}:t,...n},!this.opts.store){let o={...this.opts};this.opts.store=f9o(o)}if(this.opts.compression){let o=this.opts.compression;this.opts.serialize=o.serialize.bind(o),this.opts.deserialize=o.deserialize.bind(o)}typeof this.opts.store.on=="function"&&r&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace;let a=o=>async function*(){for await(let[l,A]of typeof o=="function"?o(this.opts.store.namespace):o){let f=await this.opts.deserialize(A);if(!(this.opts.store.namespace&&!l.includes(this.opts.store.namespace))){if(typeof f.expires=="number"&&Date.now()>f.expires){this.delete(l);continue}yield[this._getKeyUnprefix(l),f.value]}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=a(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=a(this.opts.store.iterator.bind(this.opts.store)))}_checkIterableAdaptar(){return VGn.includes(this.opts.store.opts.dialect)||VGn.findIndex(t=>this.opts.store.opts.url.includes(t))>=0}_getKeyPrefix(t){return`${this.opts.namespace}:${t}`}_getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}_getKeyUnprefix(t){return t.split(":").splice(1).join(":")}get(t,r){let{store:n}=this.opts,a=Array.isArray(t),o=a?this._getKeyPrefixArray(t):this._getKeyPrefix(t);if(a&&n.getMany===void 0){let l=[];for(let A of o)l.push(Promise.resolve().then(()=>n.get(A)).then(f=>typeof f=="string"?this.opts.deserialize(f):this.opts.compression?this.opts.deserialize(f):f).then(f=>{if(f!=null)return typeof f.expires=="number"&&Date.now()>f.expires?this.delete(A).then(()=>{}):r&&r.raw?f:f.value}));return Promise.allSettled(l).then(A=>{let f=[];for(let I of A)f.push(I.value);return f})}return Promise.resolve().then(()=>a?n.getMany(o):n.get(o)).then(l=>typeof l=="string"?this.opts.deserialize(l):this.opts.compression?this.opts.deserialize(l):l).then(l=>{if(l!=null)return a?l.map((A,f)=>{if(typeof A=="string"&&(A=this.opts.deserialize(A)),A!=null){if(typeof A.expires=="number"&&Date.now()>A.expires){this.delete(t[f]).then(()=>{});return}return r&&r.raw?A:A.value}}):typeof l.expires=="number"&&Date.now()>l.expires?this.delete(t).then(()=>{}):r&&r.raw?l:l.value})}set(t,r,n){let a=this._getKeyPrefix(t);typeof n>"u"&&(n=this.opts.ttl),n===0&&(n=void 0);let{store:o}=this.opts;return Promise.resolve().then(()=>{let l=typeof n=="number"?Date.now()+n:null;return typeof r=="symbol"&&this.emit("error","symbol cannot be serialized"),r={value:r,expires:l},this.opts.serialize(r)}).then(l=>o.set(a,l,n)).then(()=>!0)}delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKeyPrefixArray(t);if(r.deleteMany===void 0){let o=[];for(let l of a)o.push(r.delete(l));return Promise.allSettled(o).then(l=>l.every(A=>A.value===!0))}return Promise.resolve().then(()=>r.deleteMany(a))}let n=this._getKeyPrefix(t);return Promise.resolve().then(()=>r.delete(n))}clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear())}has(t){let r=this._getKeyPrefix(t),{store:n}=this.opts;return Promise.resolve().then(async()=>typeof n.has=="function"?n.has(r):await n.get(r)!==void 0)}disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")return t.disconnect()}};WGn.exports=Tgr});var HGn=H((x8l,MGn)=>{"use strict";var I9o=Et("events"),Qgt=Et("url"),h9o=pGn(),m9o=wGn(),Rgr=vgr(),PGn=DGn(),C9o=Ygt(),_9o=FGn(),y9o=OGn(),w5e=class e{constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new y9o({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(t)}createCacheableRequest(t){return(r,n)=>{let a;if(typeof r=="string")a=Ngr(Qgt.parse(r)),r={};else if(r instanceof Qgt.URL)a=Ngr(Qgt.parse(r.toString())),r={};else{let[b,...E]=(r.path||"").split("?"),N=E.length>0?`?${E.join("?")}`:"";a=Ngr({...r,pathname:b,search:N})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...b9o(a)},r.headers=C9o(r.headers);let o=new I9o,l=h9o(Qgt.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),A=`${r.method}:${l}`,f=!1,I=!1,C=b=>{I=!0;let E=!1,N,B=new Promise(Q=>{N=()=>{E||(E=!0,Q())}}),F=Q=>{if(f&&!b.forceRefresh){Q.status=Q.statusCode;let ae=Rgr.fromObject(f.cachePolicy).revalidatedPolicy(b,Q);if(!ae.modified){let ne=ae.policy.responseHeaders();Q=new PGn(f.statusCode,ne,f.body,f.url),Q.cachePolicy=ae.policy,Q.fromCache=!0}}Q.fromCache||(Q.cachePolicy=new Rgr(b,Q,b),Q.fromCache=!1);let J;b.cache&&Q.cachePolicy.storable()?(J=_9o(Q),(async()=>{try{let ae=m9o.buffer(Q);if(await Promise.race([B,new Promise(ue=>Q.once("end",ue))]),E)return;let ne=await ae,ce={cachePolicy:Q.cachePolicy.toObject(),url:Q.url,statusCode:Q.fromCache?f.statusCode:Q.statusCode,body:ne},fe=b.strictTtl?Q.cachePolicy.timeToLive():void 0;b.maxTtl&&(fe=fe?Math.min(fe,b.maxTtl):b.maxTtl),await this.cache.set(A,ce,fe)}catch(ae){o.emit("error",new e.CacheError(ae))}})()):b.cache&&f&&(async()=>{try{await this.cache.delete(A)}catch(ae){o.emit("error",new e.CacheError(ae))}})(),o.emit("response",J||Q),typeof n=="function"&&n(J||Q)};try{let Q=t(b,F);Q.once("error",N),Q.once("abort",N),o.emit("request",Q)}catch(Q){o.emit("error",new e.RequestError(Q))}};return(async()=>{let b=async N=>{await Promise.resolve();let B=N.cache?await this.cache.get(A):void 0;if(typeof B>"u")return C(N);let F=Rgr.fromObject(B.cachePolicy);if(F.satisfiesWithoutRevalidation(N)&&!N.forceRefresh){let Q=F.responseHeaders(),J=new PGn(B.statusCode,Q,B.body,B.url);J.cachePolicy=F,J.fromCache=!0,o.emit("response",J),typeof n=="function"&&n(J)}else f=B,N.headers=F.revalidationHeaders(N),C(N)},E=N=>o.emit("error",new e.CacheError(N));this.cache.once("error",E),o.on("response",()=>this.cache.removeListener("error",E));try{await b(r)}catch(N){r.automaticFailover&&!I&&C(r),o.emit("error",new e.CacheError(N))}})(),o}}};function b9o(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search||""}`,delete t.pathname,delete t.search,t}function Ngr(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostname||e.host||"localhost",port:e.port,pathname:e.pathname,search:e.search}}w5e.RequestError=class extends Error{constructor(e){super(e.message),this.name="RequestError",Object.assign(this,e)}};w5e.CacheError=class extends Error{constructor(e){super(e.message),this.name="CacheError",Object.assign(this,e)}};MGn.exports=w5e});var QGn=H((Z8l,YGn)=>{"use strict";var E9o=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];YGn.exports=(e,t)=>{if(t._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(e).concat(E9o)),n={};for(let a of r)a in t||(n[a]={get(){let o=e[a];return typeof o=="function"?o.bind(e):o},set(o){e[a]=o},enumerable:!0,configurable:!1});return Object.defineProperties(t,n),e.once("aborted",()=>{t.destroy(),t.emit("aborted")}),e.once("close",()=>{e.complete&&t.readable?t.once("end",()=>{t.emit("close")}):t.emit("close")}),t}});var JGn=H((L8l,XGn)=>{"use strict";var{Transform:S9o,PassThrough:v9o}=Et("stream"),Dgr=Et("zlib"),B9o=QGn();XGn.exports=e=>{let t=(e.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(t))return e;let r=t==="br";if(r&&typeof Dgr.createBrotliDecompress!="function")return e.destroy(new Error("Brotli is not supported on Node.js < 12")),e;let n=!0,a=new S9o({transform(A,f,I){n=!1,I(null,A)},flush(A){A()}}),o=new v9o({autoDestroy:!1,destroy(A,f){e.destroy(),f(A)}}),l=r?Dgr.createBrotliDecompress():Dgr.createUnzip();return l.once("error",A=>{if(n&&!e.readable){o.end();return}o.destroy(A)}),B9o(e,o),e.pipe(a).pipe(l).pipe(o),o}});var xgr=H((V8l,UGn)=>{"use strict";var kgr=class{constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=t.maxSize,this.onEviction=t.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[n,a]of this.oldCache.entries())this.onEviction(n,a);this.oldCache=this.cache,this.cache=new Map}}get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t)){let r=this.oldCache.get(t);return this.oldCache.delete(t),this._set(t,r),r}}set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}has(t){return this.cache.has(t)||this.oldCache.has(t)}peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t))return this.oldCache.get(t)}delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCache.delete(t)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.oldCache){let[r]=t;this.cache.has(r)||(yield t)}}get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||t++;return Math.min(this._size+t,this.maxSize)}};UGn.exports=kgr});var Fgr=H((W8l,qGn)=>{"use strict";var w9o=Et("events"),T9o=Et("tls"),R9o=Et("http2"),N9o=xgr(),GZ=Symbol("currentStreamsCount"),KGn=Symbol("request"),IM=Symbol("cachedOriginSet"),Lve=Symbol("gracefullyClosing"),D9o=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],k9o=(e,t,r)=>{let n=0,a=e.length;for(;n>>1;r(e[o],t)?n=o+1:a=o}return n},x9o=(e,t)=>e.remoteSettings.maxConcurrentStreams>t.remoteSettings.maxConcurrentStreams,Ggr=(e,t)=>{for(let r of e)r[IM].lengtht[IM].includes(n))&&r[GZ]+t[GZ]<=t.remoteSettings.maxConcurrentStreams&&zGn(r)},G9o=(e,t)=>{for(let r of e)t[IM].lengthr[IM].includes(n))&&t[GZ]+r[GZ]<=r.remoteSettings.maxConcurrentStreams&&zGn(t)},jGn=({agent:e,isFree:t})=>{let r={};for(let n in e.sessions){let o=e.sessions[n].filter(l=>{let A=l[IIe.kCurrentStreamsCount]{e[Lve]=!0,e[GZ]===0&&e.close()},IIe=class e extends w9o{constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:n=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=t,this.maxSessions=r,this.maxFreeSessions=n,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new N9o({maxSize:a})}static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&&t.hostname!==r&&(t.hostname=r),t.origin}normalizeOptions(t){let r="";if(t)for(let n of D9o)t[n]&&(r+=`:${t[n]}`);return r}_tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t]))return;let n=this.queue[t][r];this._sessionsCount{Array.isArray(n)?(n=[...n],a()):n=[{resolve:a,reject:o}];let l=this.normalizeOptions(r),A=e.normalizeOrigin(t,r&&r.servername);if(A===void 0){for(let{reject:C}of n)C(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(l in this.sessions){let C=this.sessions[l],b=-1,E=-1,N;for(let B of C){let F=B.remoteSettings.maxConcurrentStreams;if(F=F||B[Lve]||B.destroyed)continue;N||(b=F),Q>E&&(N=B,E=Q)}}if(N){if(n.length!==1){for(let{reject:B}of n){let F=new Error(`Expected the length of listeners to be 1, got ${n.length}. +Please report this to https://github.com/szmarczak/http2-wrapper/`);B(F)}return}n[0].resolve(N);return}}if(l in this.queue){if(A in this.queue[l]){this.queue[l][A].listeners.push(...n),this._tryToCreateNewSession(l,A);return}}else this.queue[l]={};let f=()=>{l in this.queue&&this.queue[l][A]===I&&(delete this.queue[l][A],Object.keys(this.queue[l]).length===0&&delete this.queue[l])},I=()=>{let C=`${A}:${l}`,b=!1;try{let E=R9o.connect(t,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(C),...r});E[GZ]=0,E[Lve]=!1;let N=()=>E[GZ]{this.tlsSessionCache.set(C,Q)}),E.once("error",Q=>{for(let{reject:J}of n)J(Q);this.tlsSessionCache.delete(C)}),E.setTimeout(this.timeout,()=>{E.destroy()}),E.once("close",()=>{if(b){B&&this._freeSessionsCount--,this._sessionsCount--;let Q=this.sessions[l];Q.splice(Q.indexOf(E),1),Q.length===0&&delete this.sessions[l]}else{let Q=new Error("Session closed without receiving a SETTINGS frame");Q.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:J}of n)J(Q);f()}this._tryToCreateNewSession(l,A)});let F=()=>{if(!(!(l in this.queue)||!N())){for(let Q of E[IM])if(Q in this.queue[l]){let{listeners:J}=this.queue[l][Q];for(;J.length!==0&&N();)J.shift().resolve(E);let ae=this.queue[l];if(ae[Q].listeners.length===0&&(delete ae[Q],Object.keys(ae).length===0)){delete this.queue[l];break}if(!N())break}}};E.on("origin",()=>{E[IM]=E.originSet,N()&&(F(),Ggr(this.sessions[l],E))}),E.once("remoteSettings",()=>{if(E.ref(),E.unref(),this._sessionsCount++,I.destroyed){let Q=new Error("Agent has been destroyed");for(let J of n)J.reject(Q);E.destroy();return}E[IM]=E.originSet;{let Q=this.sessions;if(l in Q){let J=Q[l];J.splice(k9o(J,E,x9o),0,E)}else Q[l]=[E]}this._freeSessionsCount+=1,b=!0,this.emit("session",E),F(),f(),E[GZ]===0&&this._freeSessionsCount>this.maxFreeSessions&&E.close(),n.length!==0&&(this.getSession(A,r,n),n.length=0),E.on("remoteSettings",()=>{F(),Ggr(this.sessions[l],E)})}),E[KGn]=E.request,E.request=(Q,J)=>{if(E[Lve])throw new Error("The session is gracefully closing. No new streams are allowed.");let ae=E[KGn](Q,J);return E.ref(),++E[GZ],E[GZ]===E.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,ae.once("close",()=>{if(B=N(),--E[GZ],!E.destroyed&&!E.closed&&(G9o(this.sessions[l],E),N()&&!E.closed)){B||(this._freeSessionsCount++,B=!0);let ne=E[GZ]===0;ne&&E.unref(),ne&&(this._freeSessionsCount>this.maxFreeSessions||E[Lve])?E.close():(Ggr(this.sessions[l],E),F())}}),ae}}catch(E){for(let N of n)N.reject(E);f()}};I.listeners=n,I.completed=!1,I.destroyed=!1,this.queue[l][A]=I,this._tryToCreateNewSession(l,A)})}request(t,r,n,a){return new Promise((o,l)=>{this.getSession(t,r,[{reject:l,resolve:A=>{try{o(A.request(n,a))}catch(f){l(f)}}}])})}createConnection(t,r){return e.connect(t,r)}static connect(t,r){r.ALPNProtocols=["h2"];let n=t.port||443,a=t.hostname||t.host;return typeof r.servername>"u"&&(r.servername=a),T9o.connect(n,a,r)}closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r of t)r[GZ]===0&&r.close()}destroy(t){for(let r of Object.values(this.sessions))for(let n of r)n.destroy(t);for(let r of Object.values(this.queue))for(let n of Object.values(r))n.destroyed=!0;this.queue={}}get freeSessions(){return jGn({agent:this,isFree:!0})}get busySessions(){return jGn({agent:this,isFree:!1})}};IIe.kCurrentStreamsCount=GZ;IIe.kGracefullyClosing=Lve;qGn.exports={Agent:IIe,globalAgent:new IIe}});var Lgr=H((O8l,$Gn)=>{"use strict";var{Readable:F9o}=Et("stream"),Zgr=class extends F9o{constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=t,this.connection=t,this._dumped=!1}_destroy(t){this.req._request.destroy(t)}setTimeout(t,r){return this.req.setTimeout(t,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};$Gn.exports=Zgr});var Vgr=H((P8l,eFn)=>{"use strict";eFn.exports=e=>{let t={protocol:e.protocol,hostname:typeof e.hostname=="string"&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return typeof e.port=="string"&&e.port.length!==0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var rFn=H((M8l,tFn)=>{"use strict";tFn.exports=(e,t,r)=>{for(let n of r)e.on(n,(...a)=>t.emit(n,...a))}});var iFn=H((H8l,nFn)=>{"use strict";nFn.exports=e=>{switch(e){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var oFn=H((Q8l,sFn)=>{"use strict";var Vve=(e,t,r)=>{sFn.exports[t]=class extends e{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${t}]`,this.code=t}}};Vve(TypeError,"ERR_INVALID_ARG_TYPE",e=>{let t=e[0].includes(".")?"property":"argument",r=e[1],n=Array.isArray(r);return n&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${e[0]}" ${t} must be ${n?"one of":"of"} type ${r}. Received ${typeof e[2]}`});Vve(TypeError,"ERR_INVALID_PROTOCOL",e=>`Protocol "${e[0]}" not supported. Expected "${e[1]}"`);Vve(Error,"ERR_HTTP_HEADERS_SENT",e=>`Cannot ${e[0]} headers after they are sent to the client`);Vve(TypeError,"ERR_INVALID_HTTP_TOKEN",e=>`${e[0]} must be a valid HTTP token [${e[1]}]`);Vve(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",e=>`Invalid value "${e[0]} for header "${e[1]}"`);Vve(TypeError,"ERR_INVALID_CHAR",e=>`Invalid character in ${e[0]} [${e[1]}]`)});var Hgr=H((X8l,dFn)=>{"use strict";var Z9o=Et("http2"),{Writable:L9o}=Et("stream"),{Agent:aFn,globalAgent:V9o}=Fgr(),W9o=Lgr(),O9o=Vgr(),P9o=rFn(),M9o=iFn(),{ERR_INVALID_ARG_TYPE:Wgr,ERR_INVALID_PROTOCOL:H9o,ERR_HTTP_HEADERS_SENT:cFn,ERR_INVALID_HTTP_TOKEN:Y9o,ERR_HTTP_INVALID_HEADER_VALUE:Q9o,ERR_INVALID_CHAR:X9o}=oFn(),{HTTP2_HEADER_STATUS:lFn,HTTP2_HEADER_METHOD:uFn,HTTP2_HEADER_PATH:gFn,HTTP2_METHOD_CONNECT:J9o}=Z9o.constants,CG=Symbol("headers"),Ogr=Symbol("origin"),Pgr=Symbol("session"),AFn=Symbol("options"),Xgt=Symbol("flushedHeaders"),T5e=Symbol("jobs"),U9o=/^[\^`\-\w!#$%&*+.|~]+$/,K9o=/[^\t\u0020-\u007E\u0080-\u00FF]/,Mgr=class extends L9o{constructor(t,r,n){super({autoDestroy:!1});let a=typeof t=="string"||t instanceof URL;if(a&&(t=O9o(t instanceof URL?t:new URL(t))),typeof r=="function"||r===void 0?(n=r,r=a?t:{...t}):r={...t,...r},r.h2session)this[Pgr]=r.h2session;else if(r.agent===!1)this.agent=new aFn({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new aFn({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=V9o;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new Wgr("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new H9o(r.protocol,"https:");let o=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,l=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:A}=r;if(r.timeout=void 0,this[CG]=Object.create(null),this[T5e]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[f,I]of Object.entries(r.headers))this.setHeader(f,I);r.auth&&!("authorization"in this[CG])&&(this[CG].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[AFn]=r,o===443?(this[Ogr]=`https://${l}`,":authority"in this[CG]||(this[CG][":authority"]=l)):(this[Ogr]=`https://${l}:${o}`,":authority"in this[CG]||(this[CG][":authority"]=`${l}:${o}`)),A&&this.setTimeout(A),n&&this.once("response",n),this[Xgt]=!1}get method(){return this[CG][uFn]}set method(t){t&&(this[CG][uFn]=t.toUpperCase())}get path(){return this[CG][gFn]}set path(t){t&&(this[CG][gFn]=t)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(t,r,n){if(this._mustNotHaveABody){n(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(t,r,n);this._request?a():this[T5e].push(a)}_final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){t();return}this._request.end(t)};this._request?r():this[T5e].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(t)}async flushHeaders(){if(this[Xgt]||this.destroyed)return;this[Xgt]=!0;let t=this.method===J9o,r=n=>{if(this._request=n,this.destroyed){n.destroy();return}t||P9o(n,this,["timeout","continue","close","error"]);let a=l=>(...A)=>{!this.writable&&!this.destroyed?l(...A):this.once("finish",()=>{l(...A)})};n.once("response",a((l,A,f)=>{let I=new W9o(this.socket,n.readableHighWaterMark);this.res=I,I.req=this,I.statusCode=l[lFn],I.headers=l,I.rawHeaders=f,I.once("end",()=>{this.aborted?(I.aborted=!0,I.emit("aborted")):(I.complete=!0,I.socket=null,I.connection=null)}),t?(I.upgrade=!0,this.emit("connect",I,n,Buffer.alloc(0))?this.emit("close"):n.destroy()):(n.on("data",C=>{!I._dumped&&!I.push(C)&&n.pause()}),n.once("end",()=>{I.push(null)}),this.emit("response",I)||I._dump())})),n.once("headers",a(l=>this.emit("information",{statusCode:l[lFn]}))),n.once("trailers",a((l,A,f)=>{let{res:I}=this;I.trailers=l,I.rawTrailers=f}));let{socket:o}=n.session;this.socket=o,this.connection=o;for(let l of this[T5e])l();this.emit("socket",this.socket)};if(this[Pgr])try{r(this[Pgr].request(this[CG]))}catch(n){this.emit("error",n)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[Ogr],this[AFn],this[CG]))}catch(n){this.emit("error",n)}}}getHeader(t){if(typeof t!="string")throw new Wgr("name","string",t);return this[CG][t.toLowerCase()]}get headersSent(){return this[Xgt]}removeHeader(t){if(typeof t!="string")throw new Wgr("name","string",t);if(this.headersSent)throw new cFn("remove");delete this[CG][t.toLowerCase()]}setHeader(t,r){if(this.headersSent)throw new cFn("set");if(typeof t!="string"||!U9o.test(t)&&!M9o(t))throw new Y9o("Header name",t);if(typeof r>"u")throw new Q9o(r,t);if(K9o.test(r))throw new X9o("header content",t);this[CG][t.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(t,r){let n=()=>this._request.setTimeout(t,r);return this._request?n():this[T5e].push(n),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(t){}};dFn.exports=Mgr});var fFn=H((J8l,pFn)=>{"use strict";var j9o=Et("tls");pFn.exports=(e={},t=j9o.connect)=>new Promise((r,n)=>{let a=!1,o,l=async()=>{await f,o.off("timeout",A),o.off("error",n),e.resolveSocket?(r({alpnProtocol:o.alpnProtocol,socket:o,timeout:a}),a&&(await Promise.resolve(),o.emit("timeout"))):(o.destroy(),r({alpnProtocol:o.alpnProtocol,timeout:a}))},A=async()=>{a=!0,l()},f=(async()=>{try{o=await t(e,l),o.on("error",n),o.once("timeout",A)}catch(I){n(I)}})()})});var hFn=H((U8l,IFn)=>{"use strict";var z9o=Et("net");IFn.exports=e=>{let t=e.host,r=e.headers&&e.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?t=r:t=r.slice(1,-1):t=r.split(":",1)[0]),z9o.isIP(t)?"":t}});var _Fn=H((K8l,Qgr)=>{"use strict";var mFn=Et("http"),Ygr=Et("https"),q9o=fFn(),$9o=xgr(),eVo=Hgr(),tVo=hFn(),rVo=Vgr(),Jgt=new $9o({maxSize:100}),R5e=new Map,CFn=(e,t,r)=>{t._httpMessage={shouldKeepAlive:!0};let n=()=>{e.emit("free",t,r)};t.on("free",n);let a=()=>{e.removeSocket(t,r)};t.on("close",a);let o=()=>{e.removeSocket(t,r),t.off("close",a),t.off("free",n),t.off("agentRemove",o)};t.on("agentRemove",o),e.emit("free",t,r)},nVo=async e=>{let t=`${e.host}:${e.port}:${e.ALPNProtocols.sort()}`;if(!Jgt.has(t)){if(R5e.has(t))return(await R5e.get(t)).alpnProtocol;let{path:r,agent:n}=e;e.path=e.socketPath;let a=q9o(e);R5e.set(t,a);try{let{socket:o,alpnProtocol:l}=await a;if(Jgt.set(t,l),e.path=r,l==="h2")o.destroy();else{let{globalAgent:A}=Ygr,f=Ygr.Agent.prototype.createConnection;n?n.createConnection===f?CFn(n,o,e):o.destroy():A.createConnection===f?CFn(A,o,e):o.destroy()}return R5e.delete(t),l}catch(o){throw R5e.delete(t),o}}return Jgt.get(t)};Qgr.exports=async(e,t,r)=>{if((typeof e=="string"||e instanceof URL)&&(e=rVo(new URL(e))),typeof t=="function"&&(r=t,t=void 0),t={ALPNProtocols:["h2","http/1.1"],...e,...t,resolveSocket:!0},!Array.isArray(t.ALPNProtocols)||t.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");t.protocol=t.protocol||"https:";let n=t.protocol==="https:";t.host=t.hostname||t.host||"localhost",t.session=t.tlsSession,t.servername=t.servername||tVo(t),t.port=t.port||(n?443:80),t._defaultAgent=n?Ygr.globalAgent:mFn.globalAgent;let a=t.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");t.agent=a[n?"https":"http"]}return n&&await nVo(t)==="h2"?(a&&(t.agent=a.http2),new eVo(t,r)):mFn.request(t,r)};Qgr.exports.protocolCache=Jgt});var bFn=H((j8l,yFn)=>{"use strict";var iVo=Et("http2"),sVo=Fgr(),Xgr=Hgr(),oVo=Lgr(),aVo=_Fn(),cVo=(e,t,r)=>new Xgr(e,t,r),lVo=(e,t,r)=>{let n=new Xgr(e,t,r);return n.end(),n};yFn.exports={...iVo,ClientRequest:Xgr,IncomingMessage:oVo,...sVo,request:cVo,get:lVo,auto:aVo}});var Ugr=H(Jgr=>{"use strict";Object.defineProperty(Jgr,"__esModule",{value:!0});var EFn=y$();Jgr.default=e=>EFn.default.nodeStream(e)&&EFn.default.function_(e.getBoundary)});var wFn=H(Kgr=>{"use strict";Object.defineProperty(Kgr,"__esModule",{value:!0});var vFn=Et("fs"),BFn=Et("util"),SFn=y$(),uVo=Ugr(),gVo=BFn.promisify(vFn.stat);Kgr.default=async(e,t)=>{if(t&&"content-length"in t)return Number(t["content-length"]);if(!e)return 0;if(SFn.default.string(e))return Buffer.byteLength(e);if(SFn.default.buffer(e))return e.length;if(uVo.default(e))return BFn.promisify(e.getLength.bind(e))();if(e instanceof vFn.ReadStream){let{size:r}=await gVo(e.path);return r===0?void 0:r}}});var zgr=H(jgr=>{"use strict";Object.defineProperty(jgr,"__esModule",{value:!0});function AVo(e,t,r){let n={};for(let a of r)n[a]=(...o)=>{t.emit(a,...o)},e.on(a,n[a]);return()=>{for(let a of r)e.off(a,n[a])}}jgr.default=AVo});var TFn=H(qgr=>{"use strict";Object.defineProperty(qgr,"__esModule",{value:!0});qgr.default=()=>{let e=[];return{once(t,r,n){t.once(r,n),e.push({origin:t,event:r,fn:n})},unhandleAll(){for(let t of e){let{origin:r,event:n,fn:a}=t;r.removeListener(n,a)}e.length=0}}}});var NFn=H(N5e=>{"use strict";Object.defineProperty(N5e,"__esModule",{value:!0});N5e.TimeoutError=void 0;var dVo=Et("net"),pVo=TFn(),RFn=Symbol("reentry"),fVo=()=>{},Ugt=class extends Error{constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};N5e.TimeoutError=Ugt;N5e.default=(e,t,r)=>{if(RFn in e)return fVo;e[RFn]=!0;let n=[],{once:a,unhandleAll:o}=pVo.default(),l=(b,E,N)=>{var B;let F=setTimeout(E,b,b,N);(B=F.unref)===null||B===void 0||B.call(F);let Q=()=>{clearTimeout(F)};return n.push(Q),Q},{host:A,hostname:f}=r,I=(b,E)=>{e.destroy(new Ugt(b,E))},C=()=>{for(let b of n)b();o()};if(e.once("error",b=>{if(C(),e.listenerCount("error")===0)throw b}),e.once("close",C),a(e,"response",b=>{a(b,"end",C)}),typeof t.request<"u"&&l(t.request,I,"request"),typeof t.socket<"u"){let b=()=>{I(t.socket,"socket")};e.setTimeout(t.socket,b),n.push(()=>{e.removeListener("timeout",b)})}return a(e,"socket",b=>{var E;let{socketPath:N}=e;if(b.connecting){let B=!!(N??dVo.isIP((E=f??A)!==null&&E!==void 0?E:"")!==0);if(typeof t.lookup<"u"&&!B&&typeof b.address().address>"u"){let F=l(t.lookup,I,"lookup");a(b,"lookup",F)}if(typeof t.connect<"u"){let F=()=>l(t.connect,I,"connect");B?a(b,"connect",F()):a(b,"lookup",Q=>{Q===null&&a(b,"connect",F())})}typeof t.secureConnect<"u"&&r.protocol==="https:"&&a(b,"connect",()=>{let F=l(t.secureConnect,I,"secureConnect");a(b,"secureConnect",F)})}if(typeof t.send<"u"){let B=()=>l(t.send,I,"send");b.connecting?a(b,"connect",()=>{a(e,"upload-complete",B())}):a(e,"upload-complete",B())}}),typeof t.response<"u"&&a(e,"upload-complete",()=>{let b=l(t.response,I,"response");a(e,"response",b)}),C}});var kFn=H($gr=>{"use strict";Object.defineProperty($gr,"__esModule",{value:!0});var DFn=y$();$gr.default=e=>{e=e;let t={protocol:e.protocol,hostname:DFn.default.string(e.hostname)&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return DFn.default.string(e.port)&&e.port.length>0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var xFn=H(eAr=>{"use strict";Object.defineProperty(eAr,"__esModule",{value:!0});var IVo=Et("url"),hVo=["protocol","host","hostname","port","pathname","search"];eAr.default=(e,t)=>{var r,n;if(t.path){if(t.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(t.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(t.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(t.search&&t.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!e){if(!t.protocol)throw new TypeError("No URL protocol specified");e=`${t.protocol}//${(n=(r=t.hostname)!==null&&r!==void 0?r:t.host)!==null&&n!==void 0?n:""}`}let a=new IVo.URL(e);if(t.path){let o=t.path.indexOf("?");o===-1?t.pathname=t.path:(t.pathname=t.path.slice(0,o),t.search=t.path.slice(o+1)),delete t.path}for(let o of hVo)t[o]&&(a[o]=t[o].toString());return a}});var GFn=H(rAr=>{"use strict";Object.defineProperty(rAr,"__esModule",{value:!0});var tAr=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}};rAr.default=tAr});var iAr=H(nAr=>{"use strict";Object.defineProperty(nAr,"__esModule",{value:!0});var mVo=async e=>{let t=[],r=0;for await(let n of e)t.push(n),r+=Buffer.byteLength(n);return Buffer.isBuffer(t[0])?Buffer.concat(t,r):Buffer.from(t.join(""))};nAr.default=mVo});var ZFn=H(hIe=>{"use strict";Object.defineProperty(hIe,"__esModule",{value:!0});hIe.dnsLookupIpVersionToFamily=hIe.isDnsLookupIpVersion=void 0;var FFn={auto:0,ipv4:4,ipv6:6};hIe.isDnsLookupIpVersion=e=>e in FFn;hIe.dnsLookupIpVersionToFamily=e=>{if(hIe.isDnsLookupIpVersion(e))return FFn[e];throw new Error("Invalid DNS lookup IP version")}});var sAr=H(Kgt=>{"use strict";Object.defineProperty(Kgt,"__esModule",{value:!0});Kgt.isResponseOk=void 0;Kgt.isResponseOk=e=>{let{statusCode:t}=e,r=e.request.options.followRedirect?299:399;return t>=200&&t<=r||t===304}});var VFn=H(oAr=>{"use strict";Object.defineProperty(oAr,"__esModule",{value:!0});var LFn=new Set;oAr.default=e=>{LFn.has(e)||(LFn.add(e),process.emitWarning(`Got: ${e}`,{type:"DeprecationWarning"}))}});var WFn=H(aAr=>{"use strict";Object.defineProperty(aAr,"__esModule",{value:!0});var V1=y$(),CVo=(e,t)=>{if(V1.default.null_(e.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");V1.assert.any([V1.default.string,V1.default.undefined],e.encoding),V1.assert.any([V1.default.boolean,V1.default.undefined],e.resolveBodyOnly),V1.assert.any([V1.default.boolean,V1.default.undefined],e.methodRewriting),V1.assert.any([V1.default.boolean,V1.default.undefined],e.isStream),V1.assert.any([V1.default.string,V1.default.undefined],e.responseType),e.responseType===void 0&&(e.responseType="text");let{retry:r}=e;if(t?e.retry={...t.retry}:e.retry={calculateDelay:n=>n.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},V1.default.object(r)?(e.retry={...e.retry,...r},e.retry.methods=[...new Set(e.retry.methods.map(n=>n.toUpperCase()))],e.retry.statusCodes=[...new Set(e.retry.statusCodes)],e.retry.errorCodes=[...new Set(e.retry.errorCodes)]):V1.default.number(r)&&(e.retry.limit=r),V1.default.undefined(e.retry.maxRetryAfter)&&(e.retry.maxRetryAfter=Math.min(...[e.timeout.request,e.timeout.connect].filter(V1.default.number))),V1.default.object(e.pagination)){t&&(e.pagination={...t.pagination,...e.pagination});let{pagination:n}=e;if(!V1.default.function_(n.transform))throw new Error("`options.pagination.transform` must be implemented");if(!V1.default.function_(n.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!V1.default.function_(n.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!V1.default.function_(n.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return e.responseType==="json"&&e.headers.accept===void 0&&(e.headers.accept="application/json"),e};aAr.default=CVo});var OFn=H(D5e=>{"use strict";Object.defineProperty(D5e,"__esModule",{value:!0});D5e.retryAfterStatusCodes=void 0;D5e.retryAfterStatusCodes=new Set([413,429,503]);var _Vo=({attemptCount:e,retryOptions:t,error:r,retryAfter:n})=>{if(e>t.limit)return 0;let a=t.methods.includes(r.options.method),o=t.errorCodes.includes(r.code),l=r.response&&t.statusCodes.includes(r.response.statusCode);if(!a||!o&&!l)return 0;if(r.response){if(n)return t.maxRetryAfter===void 0||n>t.maxRetryAfter?0:n;if(r.response.statusCode===413)return 0}let A=Math.random()*100;return 2**(e-1)*1e3+A};D5e.default=_Vo});var G5e=H(Y_=>{"use strict";Object.defineProperty(Y_,"__esModule",{value:!0});Y_.UnsupportedProtocolError=Y_.ReadError=Y_.TimeoutError=Y_.UploadError=Y_.CacheError=Y_.HTTPError=Y_.MaxRedirectsError=Y_.RequestError=Y_.setNonEnumerableProperties=Y_.knownHookEvents=Y_.withoutBody=Y_.kIsNormalizedAlready=void 0;var PFn=Et("util"),MFn=Et("stream"),yVo=Et("fs"),Zoe=Et("url"),HFn=Et("http"),cAr=Et("http"),bVo=Et("https"),EVo=iGn(),SVo=gGn(),YFn=HGn(),vVo=JGn(),BVo=bFn(),wVo=Ygt(),va=y$(),TVo=wFn(),QFn=Ugr(),RVo=zgr(),XFn=NFn(),NVo=kFn(),JFn=xFn(),DVo=GFn(),kVo=iAr(),UFn=ZFn(),xVo=sAr(),Loe=VFn(),GVo=WFn(),FVo=OFn(),lAr,Dk=Symbol("request"),qgt=Symbol("response"),Wve=Symbol("responseSize"),Ove=Symbol("downloadedSize"),Pve=Symbol("bodySize"),Mve=Symbol("uploadedSize"),jgt=Symbol("serverResponsesPiped"),KFn=Symbol("unproxyEvents"),jFn=Symbol("isFromCache"),uAr=Symbol("cancelTimeouts"),zFn=Symbol("startedReading"),Hve=Symbol("stopReading"),zgt=Symbol("triggerRead"),Voe=Symbol("body"),k5e=Symbol("jobs"),qFn=Symbol("originalResponse"),$Fn=Symbol("retryTimeout");Y_.kIsNormalizedAlready=Symbol("isNormalizedAlready");var ZVo=va.default.string(process.versions.brotli);Y_.withoutBody=new Set(["GET","HEAD"]);Y_.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function LVo(e){for(let t in e){let r=e[t];if(!va.default.string(r)&&!va.default.number(r)&&!va.default.boolean(r)&&!va.default.null_(r)&&!va.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function VVo(e){return va.default.object(e)&&!("statusCode"in e)}var gAr=new DVo.default,WVo=async e=>new Promise((t,r)=>{let n=a=>{r(a)};e.pending||t(),e.once("error",n),e.once("ready",()=>{e.off("error",n),t()})}),OVo=new Set([300,301,302,303,304,307,308]),PVo=["context","body","json","form"];Y_.setNonEnumerableProperties=(e,t)=>{let r={};for(let n of e)if(n)for(let a of PVo)a in n&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:n[a]});Object.defineProperties(t,r)};var rw=class extends Error{constructor(t,r,n){var a,o;if(super(t),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=(a=r.code)!==null&&a!==void 0?a:"ERR_GOT_REQUEST_ERROR",n instanceof sAt?(Object.defineProperty(this,"request",{enumerable:!1,value:n}),Object.defineProperty(this,"response",{enumerable:!1,value:n[qgt]}),Object.defineProperty(this,"options",{enumerable:!1,value:n.options})):Object.defineProperty(this,"options",{enumerable:!1,value:n}),this.timings=(o=this.request)===null||o===void 0?void 0:o.timings,va.default.string(r.stack)&&va.default.string(this.stack)){let l=this.stack.indexOf(this.message)+this.message.length,A=this.stack.slice(l).split(` `).reverse(),f=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` `).reverse();for(;f.length!==0&&f[0]===A[0];)A.shift();this.stack=`${this.stack.slice(0,l)}${A.reverse().join(` `)}${f.reverse().join(` -`)}`}}};H_.RequestError=tw;var eAt=class extends tw{constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborting.`,{},t),this.name="MaxRedirectsError",this.code="ERR_TOO_MANY_REDIRECTS"}};H_.MaxRedirectsError=eAt;var tAt=class extends tw{constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})`,{},t.request),this.name="HTTPError",this.code="ERR_NON_2XX_3XX_RESPONSE"}};H_.HTTPError=tAt;var rAt=class extends tw{constructor(t,r){super(t.message,t,r),this.name="CacheError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_CACHE_ACCESS":this.code}};H_.CacheError=rAt;var nAt=class extends tw{constructor(t,r){super(t.message,t,r),this.name="UploadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_UPLOAD":this.code}};H_.UploadError=nAt;var iAt=class extends tw{constructor(t,r,n){super(t.message,t,n),this.name="TimeoutError",this.event=t.event,this.timings=r}};H_.TimeoutError=iAt;var x5e=class extends tw{constructor(t,r){super(t.message,t,r),this.name="ReadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_READING_RESPONSE_STREAM":this.code}};H_.ReadError=x5e;var sAt=class extends tw{constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),this.name="UnsupportedProtocolError",this.code="ERR_UNSUPPORTED_PROTOCOL"}};H_.UnsupportedProtocolError=sAt;var PVo=["socket","connect","continue","information","upgrade","timeout"],oAt=class extends ZFn.Duplex{constructor(t,r={},n){super({autoDestroy:!1,highWaterMark:0}),this[Ove]=0,this[Mve]=0,this.requestInitialized=!1,this[zgt]=new Set,this.redirects=[],this[Hve]=!1,this[qgt]=!1,this[k5e]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),o=()=>this._lockWrite();this.on("pipe",I=>{I.prependListener("data",a),I.on("data",o),I.prependListener("end",a),I.on("end",o)}),this.on("unpipe",I=>{I.off("data",a),I.off("data",o),I.off("end",a),I.off("end",o)}),this.on("pipe",I=>{I instanceof cAr.IncomingMessage&&(this.options.headers={...I.headers,...this.options.headers})});let{json:l,body:A,form:f}=r;if((l||A||f)&&this._lockWrite(),H_.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(t,r,n)}catch(I){va.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(I);return}(async()=>{var I;try{this.options.body instanceof _Vo.ReadStream&&await VVo(this.options.body);let{url:C}=this.options;if(!C)throw new TypeError("Missing `url` property");if(this.requestUrl=C.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(I=this[Nk])===null||I===void 0||I.destroy();return}for(let b of this[k5e])b();this[k5e].length=0,this.requestInitialized=!0}catch(C){if(C instanceof tw){this._beforeError(C);return}this.destroyed||this.destroy(C)}})()}static normalizeArguments(t,r,n){var a,o,l,A,f;let I=r;if(va.default.object(t)&&!va.default.urlInstance(t))r={...n,...t,...r};else{if(t&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...n,...r},t!==void 0&&(r.url=t),va.default.urlInstance(r.url)&&(r.url=new Foe.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),va.assert.any([va.default.string,va.default.undefined],r.method),va.assert.any([va.default.object,va.default.undefined],r.headers),va.assert.any([va.default.string,va.default.urlInstance,va.default.undefined],r.prefixUrl),va.assert.any([va.default.object,va.default.undefined],r.cookieJar),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.searchParams),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.cache),va.assert.any([va.default.object,va.default.number,va.default.undefined],r.timeout),va.assert.any([va.default.object,va.default.undefined],r.context),va.assert.any([va.default.object,va.default.undefined],r.hooks),va.assert.any([va.default.boolean,va.default.undefined],r.decompress),va.assert.any([va.default.boolean,va.default.undefined],r.ignoreInvalidCookies),va.assert.any([va.default.boolean,va.default.undefined],r.followRedirect),va.assert.any([va.default.number,va.default.undefined],r.maxRedirects),va.assert.any([va.default.boolean,va.default.undefined],r.throwHttpErrors),va.assert.any([va.default.boolean,va.default.undefined],r.http2),va.assert.any([va.default.boolean,va.default.undefined],r.allowGetBody),va.assert.any([va.default.string,va.default.undefined],r.localAddress),va.assert.any([MFn.isDnsLookupIpVersion,va.default.undefined],r.dnsLookupIpVersion),va.assert.any([va.default.object,va.default.undefined],r.https),va.assert.any([va.default.boolean,va.default.undefined],r.rejectUnauthorized),r.https&&(va.assert.any([va.default.boolean,va.default.undefined],r.https.rejectUnauthorized),va.assert.any([va.default.function_,va.default.undefined],r.https.checkServerIdentity),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificateAuthority),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.key),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificate),va.assert.any([va.default.string,va.default.undefined],r.https.passphrase),va.assert.any([va.default.string,va.default.buffer,va.default.array,va.default.undefined],r.https.pfx)),va.assert.any([va.default.object,va.default.undefined],r.cacheOptions),va.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===n?.headers?r.headers={...r.headers}:r.headers=BVo({...n?.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==n?.searchParams){let N;if(va.default.string(r.searchParams)||r.searchParams instanceof Foe.URLSearchParams)N=new Foe.URLSearchParams(r.searchParams);else{ZVo(r.searchParams),N=new Foe.URLSearchParams;for(let B in r.searchParams){let F=r.searchParams[B];F===null?N.append(B,""):F!==void 0&&N.append(B,F)}}(a=n?.searchParams)===null||a===void 0||a.forEach((B,F)=>{N.has(F)||N.append(F,B)}),r.searchParams=N}if(r.username=(o=r.username)!==null&&o!==void 0?o:"",r.password=(l=r.password)!==null&&l!==void 0?l:"",va.default.undefined(r.prefixUrl)?r.prefixUrl=(A=n?.prefixUrl)!==null&&A!==void 0?A:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),va.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=PFn.default(r.prefixUrl+r.url,r)}else(va.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=PFn.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:N}=r;Object.defineProperty(r,"prefixUrl",{set:F=>{let Q=r.url;if(!Q.href.startsWith(F))throw new Error(`Cannot change \`prefixUrl\` from ${N} to ${F}: ${Q.href}`);r.url=new Foe.URL(F+Q.href.slice(N.length)),N=F},get:()=>N});let{protocol:B}=r.url;if(B==="unix:"&&(B="http:",r.url=new Foe.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),B!=="http:"&&B!=="https:")throw new sAt(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:C}=r;if(C){let{setCookie:N,getCookieString:B}=C;va.assert.function_(N),va.assert.function_(B),N.length===4&&B.length===0&&(N=FFn.promisify(N.bind(r.cookieJar)),B=FFn.promisify(B.bind(r.cookieJar)),r.cookieJar={setCookie:N,getCookieString:B})}let{cache:b}=r;if(b&&(gAr.has(b)||gAr.set(b,new VFn((N,B)=>{let F=N[Nk](N,B);return va.default.promise(F)&&(F.once=(Q,J)=>{if(Q==="error")F.catch(J);else if(Q==="abort")(async()=>{try{(await F).once("abort",J)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${Q}`);return F}),F},b))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)lAr||(lAr=new EVo.default),r.dnsCache=lAr;else if(!va.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${va.default(r.dnsCache)}`);va.default.number(r.timeout)?r.timeout={request:r.timeout}:n&&r.timeout!==n.timeout?r.timeout={...n.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let E=r.hooks===n?.hooks;r.hooks={...r.hooks};for(let N of H_.knownHookEvents)if(N in r.hooks)if(va.default.array(r.hooks[N]))r.hooks[N]=[...r.hooks[N]];else throw new TypeError(`Parameter \`${N}\` must be an Array, got ${va.default(r.hooks[N])}`);else r.hooks[N]=[];if(n&&!E)for(let N of H_.knownHookEvents)n.hooks[N].length>0&&(r.hooks[N]=[...n.hooks[N],...r.hooks[N]]);if("family"in r&&Zoe.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),n?.https&&(r.https={...n.https,...r.https}),"rejectUnauthorized"in r&&Zoe.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&Zoe.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&Zoe.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&Zoe.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&Zoe.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&Zoe.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&Zoe.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let N in r.agent)if(N!=="http"&&N!=="https"&&N!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${N}\``)}return r.maxRedirects=(f=r.maxRedirects)!==null&&f!==void 0?f:0,H_.setNonEnumerableProperties([n,I],r),xVo.default(r,n)}_lockWrite(){let t=()=>{throw new TypeError("The payload has been already provided")};this.write=t,this.end=t}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,n=!va.default.undefined(t.form),a=!va.default.undefined(t.json),o=!va.default.undefined(t.body),l=n||a||o,A=H_.withoutBody.has(t.method)&&!(t.method==="GET"&&t.allowGetBody);if(this._cannotHaveBody=A,l){if(A)throw new TypeError(`The \`${t.method}\` method cannot be used with a body`);if([o,n,a].filter(f=>f).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(o&&!(t.body instanceof ZFn.Readable)&&!va.default.string(t.body)&&!va.default.buffer(t.body)&&!WFn.default(t.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(n&&!va.default.object(t.form))throw new TypeError("The `form` option must be an Object");{let f=!va.default.string(r["content-type"]);o?(WFn.default(t.body)&&f&&(r["content-type"]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[Loe]=t.body):n?(f&&(r["content-type"]="application/x-www-form-urlencoded"),this[Loe]=new Foe.URLSearchParams(t.form).toString()):(f&&(r["content-type"]="application/json"),this[Loe]=t.stringifyJson(t.json));let I=await wVo.default(this[Loe],t.headers);va.default.undefined(r["content-length"])&&va.default.undefined(r["transfer-encoding"])&&!A&&!va.default.undefined(I)&&(r["content-length"]=String(I))}}else A?this._lockWrite():this._unlockWrite();this[Pve]=Number(r["content-length"])||void 0}async _onResponseBase(t){let{options:r}=this,{url:n}=r;this[XFn]=t,r.decompress&&(t=SVo(t));let a=t.statusCode,o=t;o.statusMessage=o.statusMessage?o.statusMessage:LFn.STATUS_CODES[a],o.url=r.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=t.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[YFn]=o.isFromCache,this[Wve]=Number(t.headers["content-length"])||void 0,this[$gt]=t,t.once("end",()=>{this[Wve]=this[Ove],this.emit("downloadProgress",this.downloadProgress)}),t.once("error",A=>{t.destroy(),this._beforeError(new x5e(A,this))}),t.once("aborted",()=>{this._beforeError(new x5e({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let l=t.headers["set-cookie"];if(va.default.object(r.cookieJar)&&l){let A=l.map(async f=>r.cookieJar.setCookie(f,n.toString()));r.ignoreInvalidCookies&&(A=A.map(async f=>f.catch(()=>{})));try{await Promise.all(A)}catch(f){this._beforeError(f);return}}if(r.followRedirect&&t.headers.location&&WVo.has(a)){if(t.resume(),this[Nk]&&(this[uAr](),delete this[Nk],this[HFn]()),(a===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[Loe]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new eAt(this));return}try{let b=function(E){return E.protocol==="unix:"||E.hostname==="unix"},f=Buffer.from(t.headers.location,"binary").toString(),I=new Foe.URL(f,n),C=I.toString();if(decodeURI(C),!b(n)&&b(I)){this._beforeError(new tw("Cannot redirect to UNIX socket",{},this));return}I.hostname!==n.hostname||I.port!==n.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(I.username=r.username,I.password=r.password),this.redirects.push(C),r.url=I;for(let E of r.hooks.beforeRedirect)await E(r,o);this.emit("redirect",o,r),await this._makeRequest()}catch(f){this._beforeError(f);return}return}if(r.isStream&&r.throwHttpErrors&&!kVo.isResponseOk(o)){this._beforeError(new tAt(o));return}t.on("readable",()=>{this[qgt]&&this._read()}),this.on("resume",()=>{t.resume()}),this.on("pause",()=>{t.pause()}),t.once("end",()=>{this.push(null)}),this.emit("response",t);for(let A of this[zgt])if(!A.headersSent){for(let f in t.headers){let I=r.decompress?f!=="content-encoding":!0,C=t.headers[f];I&&A.setHeader(f,C)}A.statusCode=a}}async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._beforeError(r)}}_onRequest(t){let{options:r}=this,{timeout:n,url:a}=r;bVo.default(t),this[uAr]=OFn.default(t,n,a);let o=r.cache?"cacheableResponse":"response";t.once(o,f=>{this._onResponse(f)}),t.once("error",f=>{var I;t.destroy(),(I=t.res)===null||I===void 0||I.removeAllListeners("end"),f=f instanceof OFn.TimeoutError?new iAt(f,this.timings,this):new tw(f.message,f,this),this._beforeError(f)}),this[HFn]=TVo.default(t,this,PVo),this[Nk]=t,this.emit("uploadProgress",this.uploadProgress);let l=this[Loe],A=this.redirects.length===0?this:t;va.default.nodeStream(l)?(l.pipe(A),l.once("error",f=>{this._beforeError(new nAt(f,this))})):(this._unlockWrite(),va.default.undefined(l)?(this._cannotHaveBody||this._noPipe)&&(A.end(),this._lockWrite()):(this._writeRequest(l,void 0,()=>{}),A.end(),this._lockWrite())),this.emit("request",t)}async _createCacheableRequest(t,r){return new Promise((n,a)=>{Object.assign(r,RVo.default(t)),delete r.url;let o,l=gAr.get(r.cache)(r,async A=>{A._readableState.autoDestroy=!1,o&&(await o).emit("cacheableResponse",A),n(A)});r.url=t,l.once("error",a),l.once("request",async A=>{o=A,n(o)})})}async _makeRequest(){var t,r,n,a,o;let{options:l}=this,{headers:A}=l;for(let J in A)if(va.default.undefined(A[J]))delete A[J];else if(va.default.null_(A[J]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${J}\` header`);if(l.decompress&&va.default.undefined(A["accept-encoding"])&&(A["accept-encoding"]=FVo?"gzip, deflate, br":"gzip, deflate"),l.cookieJar){let J=await l.cookieJar.getCookieString(l.url.toString());va.default.nonEmptyString(J)&&(l.headers.cookie=J)}for(let J of l.hooks.beforeRequest){let ae=await J(l);if(!va.default.undefined(ae)){l.request=()=>ae;break}}l.body&&this[Loe]!==l.body&&(this[Loe]=l.body);let{agent:f,request:I,timeout:C,url:b}=l;if(l.dnsCache&&!("lookup"in l)&&(l.lookup=l.dnsCache.lookup),b.hostname==="unix"){let J=/(?.+?):(?.+)/.exec(`${b.pathname}${b.search}`);if(J?.groups){let{socketPath:ae,path:ne}=J.groups;Object.assign(l,{socketPath:ae,path:ne,host:""})}}let E=b.protocol==="https:",N;l.http2?N=vVo.auto:N=E?yVo.request:LFn.request;let B=(t=l.request)!==null&&t!==void 0?t:N,F=l.cache?this._createCacheableRequest:B;f&&!l.http2&&(l.agent=f[E?"https":"http"]),l[Nk]=B,delete l.request,delete l.timeout;let Q=l;if(Q.shared=(r=l.cacheOptions)===null||r===void 0?void 0:r.shared,Q.cacheHeuristic=(n=l.cacheOptions)===null||n===void 0?void 0:n.cacheHeuristic,Q.immutableMinTimeToLive=(a=l.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,Q.ignoreCargoCult=(o=l.cacheOptions)===null||o===void 0?void 0:o.ignoreCargoCult,l.dnsLookupIpVersion!==void 0)try{Q.family=MFn.dnsLookupIpVersionToFamily(l.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}l.https&&("rejectUnauthorized"in l.https&&(Q.rejectUnauthorized=l.https.rejectUnauthorized),l.https.checkServerIdentity&&(Q.checkServerIdentity=l.https.checkServerIdentity),l.https.certificateAuthority&&(Q.ca=l.https.certificateAuthority),l.https.certificate&&(Q.cert=l.https.certificate),l.https.key&&(Q.key=l.https.key),l.https.passphrase&&(Q.passphrase=l.https.passphrase),l.https.pfx&&(Q.pfx=l.https.pfx));try{let J=await F(b,Q);va.default.undefined(J)&&(J=N(b,Q)),l.request=I,l.timeout=C,l.agent=f,l.https&&("rejectUnauthorized"in l.https&&delete Q.rejectUnauthorized,l.https.checkServerIdentity&&delete Q.checkServerIdentity,l.https.certificateAuthority&&delete Q.ca,l.https.certificate&&delete Q.cert,l.https.key&&delete Q.key,l.https.passphrase&&delete Q.passphrase,l.https.pfx&&delete Q.pfx),LVo(J)?this._onRequest(J):this.writable?(this.once("finish",()=>{this._onResponse(J)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(J)}catch(J){throw J instanceof VFn.CacheError?new rAt(J,this):new tw(J.message,J,this)}}async _error(t){try{for(let r of this.options.hooks.beforeError)t=await r(t)}catch(r){t=new tw(r.message,r,this)}this.destroy(t)}_beforeError(t){if(this[Hve])return;let{options:r}=this,n=this.retryCount+1;this[Hve]=!0,t instanceof tw||(t=new tw(t.message,t,this));let a=t,{response:o}=a;(async()=>{if(o&&!o.body){o.setEncoding(this._readableState.encoding);try{o.rawBody=await DVo.default(o),o.body=o.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let l;try{let A;o&&"retry-after"in o.headers&&(A=Number(o.headers["retry-after"]),Number.isNaN(A)?(A=Date.parse(o.headers["retry-after"])-Date.now(),A<=0&&(A=1)):A*=1e3),l=await r.retry.calculateDelay({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:GVo.default({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:0})})}catch(A){this._error(new tw(A.message,A,this));return}if(l){let A=async()=>{try{for(let f of this.options.hooks.beforeRetry)await f(this.options,a,n)}catch(f){this._error(new tw(f.message,t,this));return}this.destroyed||(this.destroy(),this.emit("retry",n,t))};this[JFn]=setTimeout(A,l);return}}this._error(a)})()}_read(){this[qgt]=!0;let t=this[$gt];if(t&&!this[Hve]){t.readableLength&&(this[qgt]=!1);let r;for(;(r=t.read())!==null;){this[Ove]+=r.length,this[QFn]=!0;let n=this.downloadProgress;n.percent<1&&this.emit("downloadProgress",n),this.push(r)}}}_write(t,r,n){let a=()=>{this._writeRequest(t,r,n)};this.requestInitialized?a():this[k5e].push(a)}_writeRequest(t,r,n){this[Nk].destroyed||(this._progressCallbacks.push(()=>{this[Mve]+=Buffer.byteLength(t,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[Nk].write(t,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),n(a)}))}_final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(Nk in this)){t();return}if(this[Nk].destroyed){t();return}this[Nk].end(n=>{n||(this[Pve]=this[Mve],this.emit("uploadProgress",this.uploadProgress),this[Nk].emit("upload-complete")),t(n)})};this.requestInitialized?r():this[k5e].push(r)}_destroy(t,r){var n;this[Hve]=!0,clearTimeout(this[JFn]),Nk in this&&(this[uAr](),!((n=this[$gt])===null||n===void 0)&&n.complete||this[Nk].destroy()),t!==null&&!va.default.undefined(t)&&!(t instanceof tw)&&(t=new tw(t.message,t,this)),r(t)}get _isAboutToError(){return this[Hve]}get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteAddress}get aborted(){var t,r,n;return((r=(t=this[Nk])===null||t===void 0?void 0:t.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((n=this[XFn])===null||n===void 0)&&n.complete)}get socket(){var t,r;return(r=(t=this[Nk])===null||t===void 0?void 0:t.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let t;return this[Wve]?t=this[Ove]/this[Wve]:this[Wve]===this[Ove]?t=1:t=0,{percent:t,transferred:this[Ove],total:this[Wve]}}get uploadProgress(){let t;return this[Pve]?t=this[Mve]/this[Pve]:this[Pve]===this[Mve]?t=1:t=0,{percent:t,transferred:this[Mve],total:this[Pve]}}get timings(){var t;return(t=this[Nk])===null||t===void 0?void 0:t.timings}get isFromCache(){return this[YFn]}pipe(t,r){if(this[QFn])throw new Error("Failed to pipe. The response has been emitted already.");return t instanceof cAr.ServerResponse&&this[zgt].add(t),super.pipe(t,r)}unpipe(t){return t instanceof cAr.ServerResponse&&this[zgt].delete(t),super.unpipe(t),this}};H_.default=oAt});var F5e=H(CX=>{"use strict";var MVo=CX&&CX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),HVo=CX&&CX.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&MVo(t,e,r)};Object.defineProperty(CX,"__esModule",{value:!0});CX.CancelError=CX.ParseError=void 0;var UFn=G5e(),AAr=class extends UFn.RequestError{constructor(t,r){let{options:n}=r.request;super(`${t.message} in "${n.url.toString()}"`,t,r.request),this.name="ParseError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_BODY_PARSE_FAILURE":this.code}};CX.ParseError=AAr;var dAr=class extends UFn.RequestError{constructor(t){super("Promise was canceled",{},t),this.name="CancelError",this.code="ERR_CANCELED"}get isCanceled(){return!0}};CX.CancelError=dAr;HVo(G5e(),CX)});var jFn=H(pAr=>{"use strict";Object.defineProperty(pAr,"__esModule",{value:!0});var KFn=F5e(),YVo=(e,t,r,n)=>{let{rawBody:a}=e;try{if(t==="text")return a.toString(n);if(t==="json")return a.length===0?"":r(a.toString());if(t==="buffer")return a;throw new KFn.ParseError({message:`Unknown body type '${t}'`,name:"Error"},e)}catch(o){throw new KFn.ParseError(o,e)}};pAr.default=YVo});var fAr=H(Voe=>{"use strict";var QVo=Voe&&Voe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),XVo=Voe&&Voe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&QVo(t,e,r)};Object.defineProperty(Voe,"__esModule",{value:!0});var JVo=Et("events"),UVo=_$(),KVo=jxn(),aAt=F5e(),zFn=jFn(),qFn=G5e(),jVo=zgr(),zVo=iAr(),$Fn=sAr(),qVo=["request","response","redirect","uploadProgress","downloadProgress"];function eZn(e){let t,r,n=new JVo.EventEmitter,a=new KVo((l,A,f)=>{let I=C=>{let b=new qFn.default(void 0,e);b.retryCount=C,b._noPipe=!0,f(()=>b.destroy()),f.shouldReject=!1,f(()=>A(new aAt.CancelError(b))),t=b,b.once("response",async B=>{var F;if(B.retryCount=C,B.request.aborted)return;let Q;try{Q=await zVo.default(b),B.rawBody=Q}catch{return}if(b._isAboutToError)return;let J=((F=B.headers["content-encoding"])!==null&&F!==void 0?F:"").toLowerCase(),ae=["gzip","deflate","br"].includes(J),{options:ne}=b;if(ae&&!ne.decompress)B.body=Q;else try{B.body=zFn.default(B,ne.responseType,ne.parseJson,ne.encoding)}catch(ce){if(B.body=Q.toString(),$Fn.isResponseOk(B)){b._beforeError(ce);return}}try{for(let[ce,fe]of ne.hooks.afterResponse.entries())B=await fe(B,async ue=>{let de=qFn.default.normalizeArguments(void 0,{...ue,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},ne);de.hooks.afterResponse=de.hooks.afterResponse.slice(0,ce);for(let Se of de.hooks.beforeRetry)await Se(de);let be=eZn(de);return f(()=>{be.catch(()=>{}),be.cancel()}),be})}catch(ce){b._beforeError(new aAt.RequestError(ce.message,ce,b));return}if(r=B,!$Fn.isResponseOk(B)){b._beforeError(new aAt.HTTPError(B));return}b.destroy(),l(b.options.resolveBodyOnly?B.body:B)});let E=B=>{if(a.isCanceled)return;let{options:F}=b;if(B instanceof aAt.HTTPError&&!F.throwHttpErrors){let{response:Q}=B;l(b.options.resolveBodyOnly?Q.body:Q);return}A(B)};b.once("error",E);let N=b.options.body;b.once("retry",(B,F)=>{var Q,J;if(N===((Q=F.request)===null||Q===void 0?void 0:Q.options.body)&&UVo.default.nodeStream((J=F.request)===null||J===void 0?void 0:J.options.body)){E(F);return}I(B)}),jVo.default(b,n,qVo)};I(0)});a.on=(l,A)=>(n.on(l,A),a);let o=l=>{let A=(async()=>{await a;let{options:f}=r.request;return zFn.default(r,l,f.parseJson,f.encoding)})();return Object.defineProperties(A,Object.getOwnPropertyDescriptors(a)),A};return a.json=()=>{let{headers:l}=t.options;return!t.writableFinished&&l.accept===void 0&&(l.accept="application/json"),o("json")},a.buffer=()=>o("buffer"),a.text=()=>o("text"),a}Voe.default=eZn;XVo(F5e(),Voe)});var tZn=H(IAr=>{"use strict";Object.defineProperty(IAr,"__esModule",{value:!0});var $Vo=F5e();function eWo(e,...t){let r=(async()=>{if(e instanceof $Vo.RequestError)try{for(let a of t)if(a)for(let o of a)e=await o(e)}catch(a){e=a}throw e})(),n=()=>r;return r.json=n,r.text=n,r.buffer=n,r.on=n,r}IAr.default=eWo});var iZn=H(hAr=>{"use strict";Object.defineProperty(hAr,"__esModule",{value:!0});var rZn=_$();function nZn(e){for(let t of Object.values(e))(rZn.default.plainObject(t)||rZn.default.array(t))&&nZn(t);return Object.freeze(e)}hAr.default=nZn});var oZn=H(sZn=>{"use strict";Object.defineProperty(sZn,"__esModule",{value:!0})});var mAr=H(hM=>{"use strict";var tWo=hM&&hM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rWo=hM&&hM.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&tWo(t,e,r)};Object.defineProperty(hM,"__esModule",{value:!0});hM.defaultHandler=void 0;var aZn=_$(),IM=fAr(),nWo=tZn(),lAt=G5e(),iWo=iZn(),sWo={RequestError:IM.RequestError,CacheError:IM.CacheError,ReadError:IM.ReadError,HTTPError:IM.HTTPError,MaxRedirectsError:IM.MaxRedirectsError,TimeoutError:IM.TimeoutError,ParseError:IM.ParseError,CancelError:IM.CancelError,UnsupportedProtocolError:IM.UnsupportedProtocolError,UploadError:IM.UploadError},oWo=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:cAt}=lAt.default,cZn=(...e)=>{let t;for(let r of e)t=cAt(void 0,r,t);return t},aWo=e=>e.isStream?new lAt.default(void 0,e):IM.default(e),cWo=e=>"defaults"in e&&"options"in e.defaults,lWo=["get","post","put","patch","head","delete"];hM.defaultHandler=(e,t)=>t(e);var lZn=(e,t)=>{if(e)for(let r of e)r(t)},uZn=e=>{e._rawHandlers=e.handlers,e.handlers=e.handlers.map(n=>(a,o)=>{let l,A=n(a,f=>(l=o(f),l));if(A!==l&&!a.isStream&&l){let f=A,{then:I,catch:C,finally:b}=f;Object.setPrototypeOf(f,Object.getPrototypeOf(l)),Object.defineProperties(f,Object.getOwnPropertyDescriptors(l)),f.then=I,f.catch=C,f.finally=b}return A});let t=(n,a={},o)=>{var l,A;let f=0,I=C=>e.handlers[f++](C,f===e.handlers.length?aWo:I);if(aZn.default.plainObject(n)){let C={...n,...a};lAt.setNonEnumerableProperties([n,a],C),a=C,n=void 0}try{let C;try{lZn(e.options.hooks.init,a),lZn((l=a.hooks)===null||l===void 0?void 0:l.init,a)}catch(E){C=E}let b=cAt(n,a,o??e.options);if(b[lAt.kIsNormalizedAlready]=!0,C)throw new IM.RequestError(C.message,C,b);return I(b)}catch(C){if(a.isStream)throw C;return nWo.default(C,e.options.hooks.beforeError,(A=a.hooks)===null||A===void 0?void 0:A.beforeError)}};t.extend=(...n)=>{let a=[e.options],o=[...e._rawHandlers],l;for(let A of n)cWo(A)?(a.push(A.defaults.options),o.push(...A.defaults._rawHandlers),l=A.defaults.mutableDefaults):(a.push(A),"handlers"in A&&o.push(...A.handlers),l=A.mutableDefaults);return o=o.filter(A=>A!==hM.defaultHandler),o.length===0&&o.push(hM.defaultHandler),uZn({options:cZn(...a),handlers:o,mutableDefaults:!!l})};let r=async function*(n,a){let o=cAt(n,a,e.options);o.resolveBodyOnly=!1;let l=o.pagination;if(!aZn.default.object(l))throw new TypeError("`options.pagination` must be implemented");let A=[],{countLimit:f}=l,I=0;for(;I{let o=[];for await(let l of r(n,a))o.push(l);return o},t.paginate.each=r,t.stream=(n,a)=>t(n,{...a,isStream:!0});for(let n of lWo)t[n]=(a,o)=>t(a,{...o,method:n}),t.stream[n]=(a,o)=>t(a,{...o,method:n,isStream:!0});return Object.assign(t,sWo),Object.defineProperty(t,"defaults",{value:e.mutableDefaults?e:iWo.default(e),writable:e.mutableDefaults,configurable:e.mutableDefaults,enumerable:!0}),t.mergeOptions=cZn,t};hM.default=uZn;rWo(oZn(),hM)});var dZn=H((y$,uAt)=>{"use strict";var uWo=y$&&y$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),gZn=y$&&y$.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&uWo(t,e,r)};Object.defineProperty(y$,"__esModule",{value:!0});var gWo=Et("url"),AZn=mAr(),AWo={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType==="json"?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,"link"))return!1;let t=e.headers.link.split(","),r;for(let n of t){let a=n.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new gWo.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[AZn.defaultHandler],mutableDefaults:!1},CAr=AZn.default(AWo);y$.default=CAr;uAt.exports=CAr;uAt.exports.default=CAr;uAt.exports.__esModule=!0;gZn(mAr(),y$);gZn(fAr(),y$)});var dAt=H(a8=>{"use strict";Object.defineProperty(a8,"__esModule",{value:!0});a8.Method=void 0;a8.getNetworkSettings=CZn;a8.request=Z5e;a8.get=CWo;a8.put=_Wo;a8.post=yWo;a8.del=bWo;var gAt=(Wa(),vi(Va)),dWo=Io(),pZn=Qxn(),pWo=Et("https"),fWo=Et("http"),hZn=gAt.__importDefault(Tk()),Woe=U9(),yAr=dM(),FE=gAt.__importStar(uM()),mZn=gAt.__importStar(OO()),fZn=new Map,IZn=new Map,IWo=new fWo.Agent({keepAlive:!0}),hWo=new pWo.Agent({keepAlive:!0});async function _Ar(e){return mZn.getFactoryWithDefault(IZn,e,()=>dWo.xfs.readFilePromise(e).then(t=>(IZn.set(e,t),t)))}function mWo({statusCode:e,statusMessage:t},r){let n=FE.pretty(r,e,FE.Type.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${e}`;return FE.applyHyperlink(r,`${n}${t?` (${t})`:""}`,a)}async function AAt(e,{configuration:t,customErrorMessage:r}){try{return await e}catch(n){if(n.name!=="HTTPError")throw n;let a=r?.(n,t)??n.response.body?.error;a==null&&(n.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=n.message),n.code==="ETIMEDOUT"&&n.event==="socket"&&(a+=`(can be increased via ${FE.pretty(t,"httpTimeout",FE.Type.SETTING)})`);let o=new yAr.ReportError(Woe.MessageName.NETWORK_ERROR,a,l=>{n.response&&l.reportError(Woe.MessageName.NETWORK_ERROR,` ${FE.prettyField(t,{label:"Response Code",value:FE.tuple(FE.Type.NO_HINT,mWo(n.response,t))})}`),n.request&&(l.reportError(Woe.MessageName.NETWORK_ERROR,` ${FE.prettyField(t,{label:"Request Method",value:FE.tuple(FE.Type.NO_HINT,n.request.options.method)})}`),l.reportError(Woe.MessageName.NETWORK_ERROR,` ${FE.prettyField(t,{label:"Request URL",value:FE.tuple(FE.Type.URL,n.request.requestUrl)})}`)),n.request.redirects.length>0&&l.reportError(Woe.MessageName.NETWORK_ERROR,` ${FE.prettyField(t,{label:"Request Redirects",value:FE.tuple(FE.Type.NO_HINT,FE.prettyList(t,n.request.redirects,FE.Type.URL))})}`),n.request.retryCount===n.request.options.retry.limit&&l.reportError(Woe.MessageName.NETWORK_ERROR,` ${FE.prettyField(t,{label:"Request Retry Count",value:FE.tuple(FE.Type.NO_HINT,`${FE.pretty(t,n.request.retryCount,FE.Type.NUMBER)} (can be increased via ${FE.pretty(t,"httpRetry",FE.Type.SETTING)})`)})}`)});throw o.originalError=n,o}}function CZn(e,t){let r=[...t.configuration.get("networkSettings")].sort(([l],[A])=>A.length-l.length),n={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(n),o=typeof e=="string"?new URL(e):e;for(let[l,A]of r)if(hZn.default.isMatch(o.hostname,l))for(let f of a){let I=A.get(f);I!==null&&typeof n[f]>"u"&&(n[f]=I)}for(let l of a)typeof n[l]>"u"&&(n[l]=t.configuration.get(l));return n}var hIe;(function(e){e.GET="GET",e.PUT="PUT",e.POST="POST",e.DELETE="DELETE"})(hIe||(a8.Method=hIe={}));async function Z5e(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=hIe.GET,wrapNetworkRequest:A}){let f={target:e,body:t,configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l},I=async()=>await EWo(e,t,f),C=typeof A<"u"?await A(I,f):I;return await(await r.reduceHook(E=>E.wrapNetworkRequest,C,f))()}async function CWo(e,{configuration:t,jsonResponse:r,customErrorMessage:n,wrapNetworkRequest:a,...o}){let l=()=>AAt(Z5e(e,null,{configuration:t,wrapNetworkRequest:a,...o}),{configuration:t,customErrorMessage:n}).then(f=>f.body),A=await(typeof a<"u"?l():mZn.getFactoryWithDefault(fZn,e,()=>l().then(f=>(fZn.set(e,f),f))));return r?JSON.parse(A.toString()):A}async function _Wo(e,t,{customErrorMessage:r,...n}){return(await AAt(Z5e(e,t,{...n,method:hIe.PUT}),{customErrorMessage:r,configuration:n.configuration})).body}async function yWo(e,t,{customErrorMessage:r,...n}){return(await AAt(Z5e(e,t,{...n,method:hIe.POST}),{customErrorMessage:r,configuration:n.configuration})).body}async function bWo(e,{customErrorMessage:t,...r}){return(await AAt(Z5e(e,null,{...r,method:hIe.DELETE}),{customErrorMessage:t,configuration:r.configuration})).body}async function EWo(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=hIe.GET}){let A=typeof e=="string"?new URL(e):e,f=CZn(A,{configuration:r});if(f.enableNetwork===!1)throw new yAr.ReportError(Woe.MessageName.NETWORK_DISABLED,`Request to '${A.href}' has been blocked because of your configuration settings`);if(A.protocol==="http:"&&!hZn.default.isMatch(A.hostname,r.get("unsafeHttpWhitelist")))throw new yAr.ReportError(Woe.MessageName.NETWORK_UNSAFE_HTTP,`Unsafe http requests must be explicitly whitelisted in your configuration (${A.hostname})`);let I={headers:n,method:l};I.responseType=o?"json":"buffer",t!==null&&(Buffer.isBuffer(t)||!a&&typeof t=="string"?I.body=t:I.json=t);let C=r.get("httpTimeout"),b=r.get("httpRetry"),E=r.get("enableStrictSsl"),N=f.httpsCaFilePath,B=f.httpsCertFilePath,F=f.httpsKeyFilePath,{default:Q}=await Promise.resolve().then(()=>gAt.__importStar(dZn())),J=N?await _Ar(N):void 0,ae=B?await _Ar(B):void 0,ne=F?await _Ar(F):void 0,ce={rejectUnauthorized:E,ca:J,cert:ae,key:ne},fe={http:f.httpProxy?new pZn.HttpProxyAgent({proxy:f.httpProxy,proxyRequestOptions:ce}):IWo,https:f.httpsProxy?new pZn.HttpsProxyAgent({proxy:f.httpsProxy,proxyRequestOptions:ce}):hWo},ue=Q.extend({timeout:{socket:C},retry:b,agent:fe,https:{rejectUnauthorized:E,certificateAuthority:J,certificate:ae,key:ne},...I});return r.getLimit("networkConcurrency")(()=>ue(A))}});var pAt=H(_X=>{"use strict";Object.defineProperty(_X,"__esModule",{value:!0});_X.openUrl=_X.major=void 0;_X.getArchitecture=SAr;_X.getArchitectureName=wWo;_X.getArchitectureSet=TWo;_X.getCaller=kWo;_X.availableParallelism=xWo;var EAr=(Wa(),vi(Va)),SZn=Io(),bAr=EAr.__importDefault(Et("os")),SWo=EAr.__importStar(fAt()),_Zn=EAr.__importStar(OO());_X.major=Number(process.versions.node.split(".")[0]);var yZn=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform);_X.openUrl=typeof yZn<"u"?async e=>{try{return await SWo.execvp(yZn,[e],{cwd:SZn.ppath.cwd()}),!0}catch{return!1}}:void 0;var vWo="/usr/bin/ldd";function BWo(){if(process.platform!=="linux")return null;let e;try{e=SZn.xfs.readFileSync(vWo)}catch{}if(typeof e<"u"){if(e&&(e.includes("GLIBC")||e.includes("GNU libc")||e.includes("GNU C Library")))return"glibc";if(e&&e.includes("musl"))return"musl"}let r=(process.report?.getReport()??{}).sharedObjects??[],n=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return _Zn.mapAndFind(r,a=>{let o=a.match(n);if(!o)return _Zn.mapAndFind.skip;if(o[1])return"glibc";if(o[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}var bZn,EZn;function SAr(){return bZn=bZn??{os:(process.env.YARN_IS_TEST_ENV?process.env.YARN_OS_OVERRIDE:void 0)??process.platform,cpu:(process.env.YARN_IS_TEST_ENV?process.env.YARN_CPU_OVERRIDE:void 0)??process.arch,libc:(process.env.YARN_IS_TEST_ENV?process.env.YARN_LIBC_OVERRIDE:void 0)??BWo()}}function wWo(e=SAr()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}-${e.cpu}`}function TWo(){let e=SAr();return EZn=EZn??{os:[e.os],cpu:[e.cpu],libc:e.libc?[e.libc]:[]}}var RWo=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,NWo=/\((\S*)(?::(\d+))(?::(\d+))\)/;function DWo(e){let t=RWo.exec(e);if(!t)return null;let r=t[2]&&t[2].indexOf("native")===0,n=t[2]&&t[2].indexOf("eval")===0,a=NWo.exec(t[2]);return n&&a!=null&&(t[2]=a[1],t[3]=a[2],t[4]=a[3]),{file:r?null:t[2],methodName:t[1]||"",arguments:r?[t[2]]:[],line:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}function kWo(){let t=new Error().stack.split(` -`)[3];return DWo(t)}function xWo(){return typeof bAr.default.availableParallelism<"u"?bAr.default.availableParallelism():Math.max(1,bAr.default.cpus().length)}});var V5e=H(Om=>{"use strict";Object.defineProperty(Om,"__esModule",{value:!0});Om.Configuration=Om.coreDefinitions=Om.WindowsLinkType=Om.DurationUnit=Om.FormatType=Om.SettingsType=Om.SECRET=Om.DEFAULT_RC_FILENAME=Om.ENVIRONMENT_PREFIX=Om.TAG_REGEXP=Om.LEGACY_PLUGINS=void 0;var bX=(Wa(),vi(Va)),Zf=Io(),IAt=tM(),GWo=bX.__importDefault(xSn()),Yve=Jfe(),yX=(Rl(),vi(ng)),FWo=PSn(),ZWo=Et("module"),LWo=bX.__importDefault(Ufe()),vZn=Et("stream"),VWo=Exn(),WWo=kve(),OWo=Uur(),PWo=jur(),MWo=egr(),HWo=Fxn(),YWo=rgr(),QWo=AIe(),Ooe=bX.__importStar(Oxn()),mAt=bX.__importStar(Ggt()),nb=bX.__importStar(uM()),XWo=bX.__importStar(koe()),JWo=bX.__importStar(dAt()),$N=bX.__importStar(OO()),TZn=bX.__importStar(pAt()),hAt=bX.__importStar(h$()),GZ=bX.__importStar(fG()),mM=cIe(),UWo=function(){if(!Yve.GITHUB_ACTIONS||!process.env.GITHUB_EVENT_PATH)return!1;let e=Zf.npath.toPortablePath(process.env.GITHUB_EVENT_PATH),t;try{t=Zf.xfs.readJsonSync(e)}catch{return!1}return!(!("repository"in t)||!t.repository||(t.repository.private??!0))}();Om.LEGACY_PLUGINS=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]);var KWo=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","zipDataEpilogue","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","osOverride","cpuOverride","libcOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]);Om.TAG_REGEXP=/^(?!v)[a-z0-9._-]+$/i;Om.ENVIRONMENT_PREFIX="yarn_";Om.DEFAULT_RC_FILENAME=".yarnrc.yml";Om.SECRET="********";var Wl;(function(e){e.ANY="ANY",e.BOOLEAN="BOOLEAN",e.ABSOLUTE_PATH="ABSOLUTE_PATH",e.LOCATOR="LOCATOR",e.LOCATOR_LOOSE="LOCATOR_LOOSE",e.NUMBER="NUMBER",e.STRING="STRING",e.DURATION="DURATION",e.SECRET="SECRET",e.SHAPE="SHAPE",e.MAP="MAP"})(Wl||(Om.SettingsType=Wl={}));Om.FormatType=nb.Type;var _At;(function(e){e.MILLISECONDS="ms",e.SECONDS="s",e.MINUTES="m",e.HOURS="h",e.DAYS="d",e.WEEKS="w"})(_At||(Om.DurationUnit=_At={}));var BZn;(function(e){e.JUNCTIONS="junctions",e.SYMLINKS="symlinks"})(BZn||(Om.WindowsLinkType=BZn={}));Om.coreDefinitions={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:Wl.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:Wl.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:Wl.BOOLEAN,default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:Wl.ABSOLUTE_PATH,default:mAt.getDefaultGlobalFolder()},cacheFolder:{description:"Folder where the cache files must be written",type:Wl.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:Wl.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:Wl.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:Wl.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:Wl.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:Wl.STRING,default:BAr()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:Wl.BOOLEAN,default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:Wl.STRING,values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:Wl.BOOLEAN,default:nb.supportsColor,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:Wl.BOOLEAN,default:nb.supportsHyperlinks,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:Wl.BOOLEAN,default:Yve.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:Wl.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:Wl.BOOLEAN,default:!Yve.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:Wl.BOOLEAN,default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:Wl.BOOLEAN,default:!Yve.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:Wl.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:Wl.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:Wl.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:Wl.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:Wl.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:Wl.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:Wl.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:Wl.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:Wl.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:Wl.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:Wl.BOOLEAN,default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:Wl.BOOLEAN,default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:Wl.BOOLEAN,default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Wl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Wl.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:Wl.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request",type:Wl.DURATION,unit:_At.MILLISECONDS,default:"1m"},httpRetry:{description:"Retry times on http failure",type:Wl.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:Wl.NUMBER,default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:Wl.NUMBER,default:TZn.availableParallelism()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:Wl.STRING,values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:Wl.MAP,valueDefinition:{description:"",type:Wl.SHAPE,properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:Wl.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Wl.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Wl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Wl.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Wl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Wl.ABSOLUTE_PATH,default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:Wl.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Wl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Wl.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:Wl.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:Wl.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:Wl.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:Wl.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:Wl.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:Wl.STRING,values:Object.values(nb.LogLevel),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:Wl.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads",type:Wl.DURATION,unit:_At.DAYS,default:"7d"},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:Wl.STRING,default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:Wl.BOOLEAN,default:Yve.isPR&&UWo,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:Wl.BOOLEAN,default:!1},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:Wl.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:Wl.BOOLEAN,default:!1},enableCacheClean:{description:"If false, disallows the `cache clean` command",type:Wl.BOOLEAN,default:!0},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:Wl.STRING,default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:Wl.ABSOLUTE_PATH,default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:Wl.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:Wl.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:Wl.MAP,valueDefinition:{description:"A range",type:Wl.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:Wl.MAP,valueDefinition:{description:"A semver range",type:Wl.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:Wl.MAP,valueDefinition:{description:"The peerDependency meta",type:Wl.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:Wl.BOOLEAN,default:!1}}}}}}}};function wAr(e,t,r,n,a){let o=Ooe.getValue(r);if(n.isArray||n.type===Wl.ANY&&Array.isArray(o))return Array.isArray(o)?o.map((l,A)=>vAr(e,`${t}[${A}]`,l,n,a)):String(o).split(/,/).map(l=>vAr(e,t,l,n,a));if(Array.isArray(o))throw new Error(`Non-array configuration settings "${t}" cannot be an array`);return vAr(e,t,r,n,a)}function vAr(e,t,r,n,a){let o=Ooe.getValue(r);switch(n.type){case Wl.ANY:return Ooe.getValueByTree(o);case Wl.SHAPE:return jWo(e,t,r,n,a);case Wl.MAP:return zWo(e,t,r,n,a)}if(o===null&&!n.isNullable&&n.default!==null)throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`);if("values"in n&&n.values?.includes(o))return o;let A=(()=>{if(n.type===Wl.BOOLEAN&&typeof o!="string")return $N.parseBoolean(o);if(typeof o!="string")throw new Error(`Expected configuration setting "${t}" to be a string, got ${typeof o}`);let f=$N.replaceEnvVariables(o,{env:e.env});switch(n.type){case Wl.ABSOLUTE_PATH:{let I=a,C=Ooe.getSource(r);return C&&C[0]!=="<"&&(I=Zf.ppath.dirname(C)),Zf.ppath.resolve(I,Zf.npath.toPortablePath(f))}case Wl.LOCATOR_LOOSE:return GZ.parseLocator(f,!1);case Wl.NUMBER:return parseInt(f);case Wl.LOCATOR:return GZ.parseLocator(f);case Wl.BOOLEAN:return $N.parseBoolean(f);case Wl.DURATION:return $N.parseDuration(f,n.unit);default:return f}})();if("values"in n&&n.values&&!n.values.includes(A))throw new Error(`Invalid value, expected one of ${n.values.join(", ")}`);return A}function jWo(e,t,r,n,a){let o=Ooe.getValue(r);if(typeof o!="object"||Array.isArray(o))throw new yX.UsageError(`Object configuration settings "${t}" must be an object`);let l=TAr(e,n,{ignoreArrays:!0});if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=`${t}.${A}`;if(!n.properties[A])throw new yX.UsageError(`Unrecognized configuration settings found: ${t}.${A} - run "yarn config" to see the list of settings supported in Yarn`);l.set(A,wAr(e,I,f,n.properties[A],a))}return l}function zWo(e,t,r,n,a){let o=Ooe.getValue(r),l=new Map;if(typeof o!="object"||Array.isArray(o))throw new yX.UsageError(`Map configuration settings "${t}" must be an object`);if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=n.normalizeKeys?n.normalizeKeys(A):A,C=`${t}['${I}']`,b=n.valueDefinition;l.set(I,wAr(e,C,f,b,a))}return l}function TAr(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case Wl.SHAPE:{if(t.isArray&&!r)return[];let n=new Map;for(let[a,o]of Object.entries(t.properties))n.set(a,TAr(e,o));return n}case Wl.MAP:return t.isArray&&!r?[]:new Map;case Wl.ABSOLUTE_PATH:return t.default===null?null:e.projectCwd===null?Array.isArray(t.default)?t.default.map(n=>Zf.ppath.normalize(n)):Zf.ppath.isAbsolute(t.default)?Zf.ppath.normalize(t.default):t.isNullable?null:void 0:Array.isArray(t.default)?t.default.map(n=>Zf.ppath.resolve(e.projectCwd,n)):Zf.ppath.resolve(e.projectCwd,t.default);case Wl.DURATION:return $N.parseDuration(t.default,t.unit);default:return t.default}}function CAt(e,t,r){if(t.type===Wl.SECRET&&typeof e=="string"&&r.hideSecrets)return Om.SECRET;if(t.type===Wl.ABSOLUTE_PATH&&typeof e=="string"&&r.getNativePaths)return Zf.npath.fromPortablePath(e);if(t.isArray&&Array.isArray(e)){let n=[];for(let a of e)n.push(CAt(a,t,r));return n}if(t.type===Wl.MAP&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=CAt(o,t.valueDefinition,r);typeof l<"u"&&n.set(a,l)}return n}if(t.type===Wl.SHAPE&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=t.properties[a],A=CAt(o,l,r);typeof A<"u"&&n.set(a,A)}return n}return e}function qWo(){let e={};for(let[t,r]of Object.entries(process.env))t=t.toLowerCase(),t.startsWith(Om.ENVIRONMENT_PREFIX)&&(t=(0,GWo.default)(t.slice(Om.ENVIRONMENT_PREFIX.length)),e[t]=r);return e}function BAr(){let e=`${Om.ENVIRONMENT_PREFIX}rc_filename`;for(let[t,r]of Object.entries(process.env))if(t.toLowerCase()===e&&typeof r=="string")return r;return Om.DEFAULT_RC_FILENAME}async function wZn(e){try{return await Zf.xfs.readFilePromise(e)}catch{return Buffer.of()}}async function $Wo(e,t){return Buffer.compare(...await Promise.all([wZn(e),wZn(t)]))===0}async function eOo(e,t){let[r,n]=await Promise.all([Zf.xfs.statPromise(e),Zf.xfs.statPromise(t)]);return r.dev===n.dev&&r.ino===n.ino}var tOo=process.platform==="win32"?$Wo:eOo;async function rOo({configuration:e,selfPath:t}){let r=e.get("yarnPath");return e.get("ignorePath")||r===null||r===t||await tOo(r,t)?null:r}var L5e=class e{static create(t,r,n){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(Om.coreDefinitions);let o=typeof n<"u"?n:r instanceof Map?r:new Map;for(let[l,A]of o)a.activatePlugin(l,A);return a}static async find(t,r,{strict:n=!0,usePathCheck:a=null,useRc:o=!0}={}){let l=qWo();delete l.rcFilename;let A=new e(t),f=await e.findRcFiles(t),I=await e.findFolderRcFile(mAt.getHomeFolder());I&&(f.find(de=>de.path===I.path)||f.unshift(I));let C=Ooe.resolveRcFiles(f.map(ue=>[ue.path,ue.data])),b=Zf.PortablePath.dot,E=new Set(Object.keys(Om.coreDefinitions)),N=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be})=>({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be}),B=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be,...Se})=>{let De={};for(let[k,tt]of Object.entries(Se))E.has(k)&&(De[k]=tt);return De},F=({yarnPath:ue,ignorePath:de,...be})=>{let Se={};for(let[De,k]of Object.entries(be))E.has(De)||(Se[De]=k);return Se};if(A.importSettings(N(Om.coreDefinitions)),A.useWithSource("",N(l),t,{strict:!1}),C){let[ue,de]=C;A.useWithSource(ue,N(de),b,{strict:!1})}if(a){if(await rOo({configuration:A,selfPath:a})!==null)return A;A.useWithSource("",{ignorePath:!0},t,{strict:!1,overwrite:!0})}let Q=await e.findProjectCwd(t);A.startingCwd=t,A.projectCwd=Q;let J=Object.assign(Object.create(null),process.env);A.env=J;let ae=await Promise.all(A.get("injectEnvironmentFiles").map(async ue=>{let de=ue.endsWith("?")?await Zf.xfs.readFilePromise(ue.slice(0,-1),"utf8").catch(()=>""):await Zf.xfs.readFilePromise(ue,"utf8");return(0,FWo.parse)(de)}));for(let ue of ae)for(let[de,be]of Object.entries(ue))A.env[de]=$N.replaceEnvVariables(be,{env:J});if(A.importSettings(B(Om.coreDefinitions)),A.useWithSource("",B(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,B(de),b,{strict:n})}let ne=ue=>"default"in ue?ue.default:ue,ce=new Map([["@@core",VWo.CorePlugin]]);if(r!==null)for(let ue of r.plugins.keys())ce.set(ue,ne(r.modules.get(ue)));for(let[ue,de]of ce)A.activatePlugin(ue,de);let fe=new Map([]);if(r!==null){let ue=new Map;for(let[Se,De]of r.modules)ue.set(Se,()=>De);let de=new Set,be=async(Se,De)=>{let{factory:k,name:tt}=$N.dynamicRequire(Se);if(!k||de.has(tt))return;let ze=new Map(ue),Le=ft=>{if((0,ZWo.isBuiltin)(ft))return $N.dynamicRequire(ft);if(ze.has(ft))return ze.get(ft)();throw new yX.UsageError(`This plugin cannot access the package referenced via ${ft} which is neither a builtin, nor an exposed entry`)},Je=await $N.prettifyAsyncErrors(async()=>ne(await k(Le)),ft=>`${ft} (when initializing ${tt}, defined in ${De})`);ue.set(tt,()=>Je),de.add(tt),fe.set(tt,Je)};if(l.plugins)for(let Se of l.plugins.split(";")){let De=Zf.ppath.resolve(t,Zf.npath.toPortablePath(Se));await be(De,"")}for(let{path:Se,cwd:De,data:k}of f)if(o&&Array.isArray(k.plugins))for(let tt of k.plugins){let ze=typeof tt!="string"?tt.path:tt,Le=tt?.spec??"",Je=tt?.checksum??"";if(Om.LEGACY_PLUGINS.has(Le))continue;let ft=Zf.ppath.resolve(De,Zf.npath.toPortablePath(ze));if(!await Zf.xfs.existsPromise(ft)){if(!Le){let Er=nb.pretty(A,Zf.ppath.basename(ft,".cjs"),nb.Type.NAME),Sr=nb.pretty(A,".gitignore",nb.Type.NAME),jt=nb.pretty(A,A.values.get("rcFilename"),nb.Type.NAME),Bt=nb.pretty(A,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",nb.Type.URL);throw new yX.UsageError(`Missing source for the ${Er} plugin - please try to remove the plugin from ${jt} then reinstall it manually. This error usually occurs because ${Sr} is incorrect, check ${Bt} to make sure your plugin folder isn't gitignored.`)}if(!Le.match(/^https?:/)){let Er=nb.pretty(A,Zf.ppath.basename(ft,".cjs"),nb.Type.NAME),Sr=nb.pretty(A,A.values.get("rcFilename"),nb.Type.NAME);throw new yX.UsageError(`Failed to recognize the source for the ${Er} plugin - please try to delete the plugin from ${Sr} then reinstall it manually.`)}let lt=await JWo.get(Le,{configuration:A}),Ot=XWo.makeHash(lt);if(Je&&Je!==Ot){let Er=nb.pretty(A,Zf.ppath.basename(ft,".cjs"),nb.Type.NAME),Sr=nb.pretty(A,A.values.get("rcFilename"),nb.Type.NAME),jt=nb.pretty(A,`yarn plugin import ${Le}`,nb.Type.CODE);throw new yX.UsageError(`Failed to fetch the ${Er} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${Sr} then run ${jt} to reimport it.`)}await Zf.xfs.mkdirPromise(Zf.ppath.dirname(ft),{recursive:!0}),await Zf.xfs.writeFilePromise(ft,lt)}await be(ft,Se)}}for(let[ue,de]of fe)A.activatePlugin(ue,de);if(A.useWithSource("",F(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,F(de),b,{strict:n})}return A.get("enableGlobalCache")&&(A.values.set("cacheFolder",`${A.get("globalFolder")}/cache`),A.sources.set("cacheFolder","")),A}static async findRcFiles(t){let r=BAr(),n=[],a=t,o=null;for(;a!==o;){o=a;let l=Zf.ppath.join(o,r);if(Zf.xfs.existsSync(l)){let A,f;try{f=await Zf.xfs.readFilePromise(l,"utf8"),A=(0,IAt.parseSyml)(f)}catch{let I="";throw f?.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(I=" (in particular, make sure you list the colons after each key name)"),new yX.UsageError(`Parse error when loading ${l}; please check it's proper Yaml${I}`)}n.unshift({path:l,cwd:o,data:A})}a=Zf.ppath.dirname(o)}return n}static async findFolderRcFile(t){let r=Zf.ppath.join(t,Zf.Filename.rc),n;try{n=await Zf.xfs.readFilePromise(r,"utf8")}catch(o){if(o.code==="ENOENT")return null;throw o}let a=(0,IAt.parseSyml)(n);return{path:r,cwd:t,data:a}}static async findProjectCwd(t){let r=null,n=t,a=null;for(;n!==a;){if(a=n,Zf.xfs.existsSync(Zf.ppath.join(a,Zf.Filename.lockfile)))return a;Zf.xfs.existsSync(Zf.ppath.join(a,Zf.Filename.manifest))&&(r=a),n=Zf.ppath.dirname(a)}return r}static async updateConfiguration(t,r,n={}){let a=BAr(),o=Zf.ppath.join(t,a),l=Zf.xfs.existsSync(o)?(0,IAt.parseSyml)(await Zf.xfs.readFilePromise(o,"utf8")):{},A=!1,f;if(typeof r=="function"){try{f=r(l)}catch{f=r({})}if(f===l)return!1}else{f=l;for(let I of Object.keys(r)){let C=l[I],b=r[I],E;if(typeof b=="function")try{E=b(C)}catch{E=b(void 0)}else E=b;C!==E&&(E===e.deleteProperty?delete f[I]:f[I]=E,A=!0)}if(!A)return!1}return await Zf.xfs.changeFilePromise(o,(0,IAt.stringifySyml)(f),{automaticNewlines:!0}),!0}static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,n=>{let a=n.plugins??[];if(a.length===0)return{...n,plugins:r};let o=[],l=[...r];for(let A of a){let f=typeof A!="string"?A.path:A,I=l.find(C=>C.path===f);I?(o.push(I),l=l.filter(C=>C!==I)):o.push(A)}return o.push(...l),{...n,plugins:o}})}static async updateHomeConfiguration(t){let r=mAt.getHomeFolder();return await e.updateConfiguration(r,t)}constructor(t){this.isCI=Yve.isCI,this.projectCwd=null,this.plugins=new Map,this.settings=new Map,this.values=new Map,this.sources=new Map,this.invalid=new Map,this.env={},this.limits=new Map,this.packageExtensions=null,this.startingCwd=t}activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(t){for(let[r,n]of Object.entries(t))if(n!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,n),this.values.set(r,TAr(this,n))}}useWithSource(t,r,n,a){try{this.use(t,r,n,a)}catch(o){throw o.message+=` (in ${nb.pretty(this,t,nb.Type.PATH)})`,o}}use(t,r,n,{strict:a=!0,overwrite:o=!1}={}){a=a&&this.get("enableStrictSettings");for(let l of["enableStrictSettings",...Object.keys(r)]){let A=r[l],f=Ooe.getSource(A);if(f&&(t=f),typeof A>"u"||l==="plugins"||t===""&&KWo.has(l))continue;if(l==="rcFilename")throw new yX.UsageError(`The rcFilename settings can only be set via ${`${Om.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`);let I=this.settings.get(l);if(!I){let b=mAt.getHomeFolder(),E=t[0]!=="<"?Zf.ppath.dirname(t):null;if(a&&!(E!==null?b===E:!1))throw new yX.UsageError(`Unrecognized or legacy configuration settings found: ${l} - run "yarn config" to see the list of settings supported in Yarn`);this.invalid.set(l,t);continue}if(this.sources.has(l)&&!(o||I.type===Wl.MAP||I.isArray&&I.concatenateValues))continue;let C;try{C=wAr(this,l,A,I,n)}catch(b){throw b.message+=` in ${nb.pretty(this,t,nb.Type.PATH)}`,b}if(l==="enableStrictSettings"&&t!==""){a=C;continue}if(I.type===Wl.MAP){let b=this.values.get(l);this.values.set(l,new Map(o?[...b,...C]:[...C,...b])),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else if(I.isArray&&I.concatenateValues){let b=this.values.get(l);this.values.set(l,o?[...b,...C]:[...C,...b]),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else this.values.set(l,C),this.sources.set(l,t)}}get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key "${t}"`);return this.values.get(t)}getSpecial(t,{hideSecrets:r=!1,getNativePaths:n=!1}){let a=this.get(t),o=this.settings.get(t);if(typeof o>"u")throw new yX.UsageError(`Couldn't find a configuration settings named "${t}"`);return CAt(a,o,{hideSecrets:r,getNativePaths:n})}getSubprocessStreams(t,{header:r,prefix:n,report:a}){let o,l,A=Zf.xfs.createWriteStream(t);if(this.get("enableInlineBuilds")){let f=a.createStreamReporter(`${n} ${nb.pretty(this,"STDOUT","green")}`),I=a.createStreamReporter(`${n} ${nb.pretty(this,"STDERR","red")}`);o=new vZn.PassThrough,o.pipe(f),o.pipe(A),l=new vZn.PassThrough,l.pipe(I),l.pipe(A)}else o=A,l=A,typeof r<"u"&&o.write(`${r} -`);return{stdout:o,stderr:l}}makeResolver(){let t=[];for(let r of this.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new PWo.MultiResolver([new HWo.VirtualResolver,new QWo.WorkspaceResolver,...t])}makeFetcher(){let t=[];for(let r of this.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new OWo.MultiFetcher([new MWo.VirtualFetcher,new YWo.WorkspaceFetcher,...t])}getLinkers(){let t=[];for(let r of this.plugins.values())for(let n of r.linkers||[])t.push(new n);return t}getSupportedArchitectures(){let t=TZn.getArchitecture(),r=this.get("supportedArchitectures"),n=r.get("os");n!==null&&(n=n.map(l=>l==="current"?t.os:l));let a=r.get("cpu");a!==null&&(a=a.map(l=>l==="current"?t.cpu:l));let o=r.get("libc");return o!==null&&(o=$N.mapAndFilter(o,l=>l==="current"?t.libc??$N.mapAndFilter.skip:l)),{os:n,cpu:a,libc:o}}isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("preferInteractive"):!1}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let t=this.packageExtensions,r=(n,a,{userProvided:o=!1}={})=>{if(!hAt.validRange(n.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let l=new WWo.Manifest;l.load(a,{yamlCompatibilityMode:!0});let A=$N.getArrayWithDefault(t,n.identHash),f=[];A.push([n.range,f]);let I={status:mM.PackageExtensionStatus.Inactive,userProvided:o,parentDescriptor:n};for(let C of l.dependencies.values())f.push({...I,type:mM.PackageExtensionType.Dependency,descriptor:C});for(let C of l.peerDependencies.values())f.push({...I,type:mM.PackageExtensionType.PeerDependency,descriptor:C});for(let[C,b]of l.peerDependenciesMeta)for(let[E,N]of Object.entries(b))f.push({...I,type:mM.PackageExtensionType.PeerDependencyMeta,selector:C,key:E,value:N})};await this.triggerHook(n=>n.registerPackageExtensions,this,r);for(let[n,a]of this.get("packageExtensions"))r(GZ.parseDescriptor(n,!0),$N.convertMapsToIndexableObjects(a),{userProvided:!0});return t}normalizeLocator(t){return hAt.validRange(t.reference)?GZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):Om.TAG_REGEXP.test(t.reference)?GZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):t}normalizeDependency(t){return hAt.validRange(t.range)?GZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):Om.TAG_REGEXP.test(t.range)?GZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):t}normalizeDependencyMap(t){return new Map([...t].map(([r,n])=>[r,this.normalizeDependency(n)]))}normalizePackage(t,{packageExtensions:r}){let n=GZ.copyPackage(t),a=r.get(t.identHash);if(typeof a<"u"){let l=t.version;if(l!==null){for(let[A,f]of a)if(hAt.satisfiesWithPrereleases(l,A))for(let I of f)switch(I.status===mM.PackageExtensionStatus.Inactive&&(I.status=mM.PackageExtensionStatus.Redundant),I.type){case mM.PackageExtensionType.Dependency:typeof n.dependencies.get(I.descriptor.identHash)>"u"&&(I.status=mM.PackageExtensionStatus.Active,n.dependencies.set(I.descriptor.identHash,this.normalizeDependency(I.descriptor)));break;case mM.PackageExtensionType.PeerDependency:typeof n.peerDependencies.get(I.descriptor.identHash)>"u"&&(I.status=mM.PackageExtensionStatus.Active,n.peerDependencies.set(I.descriptor.identHash,I.descriptor));break;case mM.PackageExtensionType.PeerDependencyMeta:{let C=n.peerDependenciesMeta.get(I.selector);(typeof C>"u"||!Object.hasOwn(C,I.key)||C[I.key]!==I.value)&&(I.status=mM.PackageExtensionStatus.Active,$N.getFactoryWithDefault(n.peerDependenciesMeta,I.selector,()=>({}))[I.key]=I.value)}break;default:$N.assertNever(I)}}}let o=l=>l.scope?`${l.scope}__${l.name}`:`${l.name}`;for(let l of n.peerDependenciesMeta.keys()){let A=GZ.parseIdent(l);n.peerDependencies.has(A.identHash)||n.peerDependencies.set(A.identHash,GZ.makeDescriptor(A,"*"))}for(let l of n.peerDependencies.values()){if(l.scope==="types")continue;let A=o(l),f=GZ.makeIdent("types",A),I=GZ.stringifyIdent(f);n.peerDependencies.has(f.identHash)||n.peerDependenciesMeta.has(I)||n.dependencies.has(f.identHash)||(n.peerDependencies.set(f.identHash,GZ.makeDescriptor(f,"*")),n.peerDependenciesMeta.set(I,{optional:!0}))}return n.dependencies=new Map($N.sortMap(n.dependencies,([,l])=>GZ.stringifyDescriptor(l))),n.peerDependencies=new Map($N.sortMap(n.peerDependencies,([,l])=>GZ.stringifyDescriptor(l))),n}getLimit(t){return $N.getFactoryWithDefault(this.limits,t,()=>(0,LWo.default)(this.get(t)))}async triggerHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);o&&await o(...r)}}async triggerMultipleHooks(t,r){for(let n of r)await this.triggerHook(t,...n)}async reduceHook(t,r,...n){let a=r;for(let o of this.plugins.values()){let l=o.hooks;if(!l)continue;let A=t(l);A&&(a=await A(a,...n))}return a}async firstHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);if(!o)continue;let l=await o(...r);if(typeof l<"u")return l}return null}};Om.Configuration=L5e;L5e.deleteProperty=Symbol();L5e.telemetry=null});var fAt=H(c8=>{"use strict";Object.defineProperty(c8,"__esModule",{value:!0});c8.ExecError=c8.PipeError=c8.EndStrategy=void 0;c8.pipevp=nOo;c8.execvp=iOo;var RZn=(Wa(),vi(Va)),yAt=Io(),NZn=RZn.__importDefault(slt()),DZn=V5e(),bAt=U9(),kZn=dM(),CM=RZn.__importStar(uM()),_Ie;(function(e){e[e.Never=0]="Never",e[e.ErrorCode=1]="ErrorCode",e[e.Always=2]="Always"})(_Ie||(c8.EndStrategy=_Ie={}));var W5e=class extends kZn.ReportError{constructor({fileName:t,code:r,signal:n}){let a=DZn.Configuration.create(yAt.ppath.cwd()),o=CM.pretty(a,t,CM.Type.PATH);super(bAt.MessageName.EXCEPTION,`Child ${o} reported an error`,l=>{oOo(r,n,{configuration:a,report:l})}),this.code=DAr(r,n)}};c8.PipeError=W5e;var EAt=class extends W5e{constructor({fileName:t,code:r,signal:n,stdout:a,stderr:o}){super({fileName:t,code:r,signal:n}),this.stdout=a,this.stderr=o}};c8.ExecError=EAt;function mIe(e){return e!==null&&typeof e.fd=="number"}var CIe=new Set;function RAr(){}function NAr(){for(let e of CIe)e.kill()}async function nOo(e,t,{cwd:r,env:n=process.env,strict:a=!1,stdin:o=null,stdout:l,stderr:A,end:f=_Ie.Always}){let I=["pipe","pipe","pipe"];o===null?I[0]="ignore":mIe(o)&&(I[0]=o),mIe(l)&&(I[1]=l),mIe(A)&&(I[2]=A);let C=(0,NZn.default)(e,t,{cwd:yAt.npath.fromPortablePath(r),env:{...n,PWD:yAt.npath.fromPortablePath(r)},stdio:I});CIe.add(C),CIe.size===1&&(process.on("SIGINT",RAr),process.on("SIGTERM",NAr)),!mIe(o)&&o!==null&&o.pipe(C.stdin),mIe(l)||C.stdout.pipe(l,{end:!1}),mIe(A)||C.stderr.pipe(A,{end:!1});let b=()=>{for(let E of new Set([l,A]))mIe(E)||E.end()};return new Promise((E,N)=>{C.on("error",B=>{CIe.delete(C),CIe.size===0&&(process.off("SIGINT",RAr),process.off("SIGTERM",NAr)),(f===_Ie.Always||f===_Ie.ErrorCode)&&b(),N(B)}),C.on("close",(B,F)=>{CIe.delete(C),CIe.size===0&&(process.off("SIGINT",RAr),process.off("SIGTERM",NAr)),(f===_Ie.Always||f===_Ie.ErrorCode&&B!==0)&&b(),B===0||!a?E({code:DAr(B,F)}):N(new W5e({fileName:e,code:B,signal:F}))})})}async function iOo(e,t,{cwd:r,env:n=process.env,encoding:a="utf8",strict:o=!1}){let l=["ignore","pipe","pipe"],A=[],f=[],I=yAt.npath.fromPortablePath(r);typeof n.PWD<"u"&&(n={...n,PWD:I});let C=(0,NZn.default)(e,t,{cwd:I,env:n,stdio:l});return C.stdout.on("data",b=>{A.push(b)}),C.stderr.on("data",b=>{f.push(b)}),await new Promise((b,E)=>{C.on("error",N=>{let B=DZn.Configuration.create(r),F=CM.pretty(B,e,CM.Type.PATH);E(new kZn.ReportError(bAt.MessageName.EXCEPTION,`Process ${F} failed to spawn`,Q=>{Q.reportError(bAt.MessageName.EXCEPTION,` ${CM.prettyField(B,{label:"Thrown Error",value:CM.tuple(CM.Type.NO_HINT,N.message)})}`)}))}),C.on("close",(N,B)=>{let F=a==="buffer"?Buffer.concat(A):Buffer.concat(A).toString(a),Q=a==="buffer"?Buffer.concat(f):Buffer.concat(f).toString(a);N===0||!o?b({code:DAr(N,B),stdout:F,stderr:Q}):E(new EAt({fileName:e,code:N,signal:B,stdout:F,stderr:Q}))})})}var sOo=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function DAr(e,t){let r=sOo.get(t);return typeof r<"u"?128+r:e??1}function oOo(e,t,{configuration:r,report:n}){n.reportError(bAt.MessageName.EXCEPTION,` ${CM.prettyField(r,e!==null?{label:"Exit Code",value:CM.tuple(CM.Type.NUMBER,e)}:{label:"Exit Signal",value:CM.tuple(CM.Type.CODE,t)})}`)}});var kAr=H(l8=>{"use strict";Object.defineProperty(l8,"__esModule",{value:!0});l8.cachedInstance=void 0;l8.setFactory=aOo;l8.getInstance=cOo;l8.tryInstance=lOo;var xZn=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")};function aOo(e){xZn=e}function cOo(){return typeof l8.cachedInstance>"u"&&(l8.cachedInstance=xZn()),l8.cachedInstance}function lOo(){return l8.cachedInstance}});var GZn=H((SAt,GAr)=>{var uOo=Object.assign({},Et("fs")),xAr=function(){var e=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(e=e||__filename),function(t){t=t||{};var r=typeof t<"u"?t:{},n,a;r.ready=new Promise(function(Zs,io){n=Zs,a=io});var o={},l;for(l in r)r.hasOwnProperty(l)&&(o[l]=r[l]);var A=[],f="./this.program",I=function(Zs,io){throw io},C=!1,b=!0,E="";function N(Zs){return r.locateFile?r.locateFile(Zs,E):E+Zs}var B,F,Q,J;b&&(C?E=Et("path").dirname(E)+"/":E=__dirname+"/",B=function(io,Ea){var Hl=_I(io);return Hl?Ea?Hl:Hl.toString():(Q||(Q=uOo),J||(J=Et("path")),io=J.normalize(io),Q.readFileSync(io,Ea?null:"utf8"))},F=function(io){var Ea=B(io,!0);return Ea.buffer||(Ea=new Uint8Array(Ea)),tt(Ea.buffer),Ea},process.argv.length>1&&(f=process.argv[1].replace(/\\/g,"/")),A=process.argv.slice(2),I=function(Zs){process.exit(Zs)},r.inspect=function(){return"[Emscripten Module object]"});var ae=r.print||console.log.bind(console),ne=r.printErr||console.warn.bind(console);for(l in o)o.hasOwnProperty(l)&&(r[l]=o[l]);o=null,r.arguments&&(A=r.arguments),r.thisProgram&&(f=r.thisProgram),r.quit&&(I=r.quit);var ce=0,fe=function(Zs){ce=Zs},ue;r.wasmBinary&&(ue=r.wasmBinary);var de=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Qi("no native wasm support detected");function be(Zs,io,Ea){switch(io=io||"i8",io.charAt(io.length-1)==="*"&&(io="i32"),io){case"i1":return $t[Zs>>0];case"i8":return $t[Zs>>0];case"i16":return ma((Zs>>1)*2);case"i32":return vu((Zs>>2)*4);case"i64":return vu((Zs>>2)*4);case"float":return Nc((Zs>>2)*4);case"double":return sA((Zs>>3)*8);default:Qi("invalid type for getValue: "+io)}return null}var Se,De=!1,k;function tt(Zs,io){Zs||Qi("Assertion failed: "+io)}function ze(Zs){var io=r["_"+Zs];return tt(io,"Cannot call unknown function "+Zs+", make sure it is exported"),io}function Le(Zs,io,Ea,Hl,Dr){var On={string:function(rf){var op=0;if(rf!=null&&rf!==0){var bd=(rf.length<<2)+1;op=sp(bd),Er(rf,op,bd)}return op},array:function(rf){var op=sp(rf.length);return Bt(rf,op),op}};function di(rf){return io==="string"?lt(rf):io==="boolean"?!!rf:rf}var aa=ze(Zs),Bo=[],us=0;if(Hl)for(var Xl=0;Xl=Ea)&&Xt[Hl];)++Hl;return ft.decode(Xt.subarray(Zs,Hl))}function Ot(Zs,io,Ea,Hl){if(!(Hl>0))return 0;for(var Dr=Ea,On=Ea+Hl-1,di=0;di=55296&&aa<=57343){var Bo=Zs.charCodeAt(++di);aa=65536+((aa&1023)<<10)|Bo&1023}if(aa<=127){if(Ea>=On)break;io[Ea++]=aa}else if(aa<=2047){if(Ea+1>=On)break;io[Ea++]=192|aa>>6,io[Ea++]=128|aa&63}else if(aa<=65535){if(Ea+2>=On)break;io[Ea++]=224|aa>>12,io[Ea++]=128|aa>>6&63,io[Ea++]=128|aa&63}else{if(Ea+3>=On)break;io[Ea++]=240|aa>>18,io[Ea++]=128|aa>>12&63,io[Ea++]=128|aa>>6&63,io[Ea++]=128|aa&63}}return io[Ea]=0,Ea-Dr}function Er(Zs,io,Ea){return Ot(Zs,Xt,io,Ea)}function Sr(Zs){for(var io=0,Ea=0;Ea=55296&&Hl<=57343&&(Hl=65536+((Hl&1023)<<10)|Zs.charCodeAt(++Ea)&1023),Hl<=127?++io:Hl<=2047?io+=2:Hl<=65535?io+=3:io+=4}return io}function jt(Zs){var io=Sr(Zs)+1,Ea=Ma(io);return Ea&&Ot(Zs,$t,Ea,io),Ea}function Bt(Zs,io){$t.set(Zs,io)}function Dt(Zs,io){return Zs%io>0&&(Zs+=io-Zs%io),Zs}var Fr,$t,Xt,lr,cr,Ar,qr,yn,ke,zt;function Fn(Zs){Fr=Zs,r.HEAP_DATA_VIEW=zt=new DataView(Zs),r.HEAP8=$t=new Int8Array(Zs),r.HEAP16=lr=new Int16Array(Zs),r.HEAP32=Ar=new Int32Array(Zs),r.HEAPU8=Xt=new Uint8Array(Zs),r.HEAPU16=cr=new Uint16Array(Zs),r.HEAPU32=qr=new Uint32Array(Zs),r.HEAPF32=yn=new Float32Array(Zs),r.HEAPF64=ke=new Float64Array(Zs)}var Nn=r.INITIAL_MEMORY||16777216,Hi,Ao=[],Vr=[],xi=[],no=!1;function ga(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)ol(r.preRun.shift());Ei(Ao)}function Ya(){no=!0,Ei(Vr)}function Gc(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Hr(r.postRun.shift());Ei(xi)}function ol(Zs){Ao.unshift(Zs)}function Sc(Zs){Vr.unshift(Zs)}function Hr(Zs){xi.unshift(Zs)}var Or=0,Ft=null,zr=null;function Rn(Zs){Or++,r.monitorRunDependencies&&r.monitorRunDependencies(Or)}function Pr(Zs){if(Or--,r.monitorRunDependencies&&r.monitorRunDependencies(Or),Or==0&&(Ft!==null&&(clearInterval(Ft),Ft=null),zr)){var io=zr;zr=null,io()}}r.preloadedImages={},r.preloadedAudios={};function Qi(Zs){r.onAbort&&r.onAbort(Zs),Zs+="",ne(Zs),De=!0,k=1,Zs="abort("+Zs+"). Build with -s ASSERTIONS=1 for more info.";var io=new WebAssembly.RuntimeError(Zs);throw a(io),io}var ps="data:application/octet-stream;base64,";function yo(Zs){return Zs.startsWith(ps)}var bo="data:application/octet-stream;base64,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QCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsi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CyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcNAQsCfwJ/An8gASgCBCICBEAgBCAAKAIoIAIQHiAAKAIcIQELIAEoAlAiAgsEQCAAKAIkIAAoAiggAhAeIAAoAhwhAQsgASgCTCICCwRAIAAoAiQgACgCKCACEB4gACgCHCEBCyABKAJIIgILBEAgACgCJCAAKAIoIAIQHiAAKAIcIQELIAAoAiQgACgCKCABEB4gAEEANgIcQX1BACADQfEARhshAgsgAgvrCQEIfyAAKAIwIgMgACgCDEEFayICIAIgA0sbIQggACgCACIEKAIEIQkgAUEERiEHAkADQCAEKAIQIgMgACgCoC5BKmpBA3UiAkkEQEEBIQYMAgsgCCADIAJrIgMgACgCaCAAKAJYayICIAQoAgRqIgVB//8DIAVB//8DSRsiBiADIAZJGyIDSwRAQQEhBiADQQBHIAdyRQ0CIAFFDQIgAyAFRw0CCyAAQQBBACAHIAMgBUZxIgUQOSAAIAAoAhBBBGsiBDYCECAAKAIEIARqIAM7AAAgACAAKAIQQQJqIgQ2AhAgACgCBCAEaiADQX9zOwAAIAAgACgCEEECajYCECAAKAIAEAoCfyACBEAgACgCACgCDCAAKAJIIAAoAlhqIAMgAiACIANLGyICEAcaIAAoAgAiBCAEKAIMIAJqNgIMIAQgBCgCECACazYCECAEIAQoAhQgAmo2AhQgACAAKAJYIAJqNgJYIAMgAmshAwsgAwsEQCAAKAIAIgIgAigCDCADEIMBIAAoAgAiAiACKAIMIANqNgIMIAIgAigCECADazYCECACIAIoAhQgA2o2AhQLIAAoAgAhBCAFRQ0AC0EAIQYLAkAgCSAEKAIEayICRQRAIAAoAmghAwwBCwJAIAAoAjAiAyACTQRAIABBAjYCgC4gACgCSCAEKAIAIANrIAMQBxogACAAKAIwIgM2AoQuIAAgAzYCaAwBCyACIAAoAkQgACgCaCIFa08EQCAAIAUgA2siBDYCaCAAKAJIIgUgAyAFaiAEEAcaIAAoAoAuIgNBAU0EQCAAIANBAWo2AoAuCyAAIAAoAmgiBSAAKAKELiIDIAMgBUsbNgKELiAAKAIAIQQLIAAoAkggBWogBCgCACACayACEAcaIAAgACgCaCACaiIDNgJoIAAgACgCMCAAKAKELiIEayIFIAIgAiAFSxsgBGo2AoQuCyAAIAM2AlgLIAAgAyAAKAJAIgIgAiADSRs2AkBBAyECAkAgBkUNACAAKAIAIgUoAgQhAgJAAkAgAUF7cUUNACACDQBBASECIAMgACgCWEYNAiAAKAJEIANrIQRBACECDAELIAIgACgCRCADayIETQ0AIAAoAlgiByAAKAIwIgZIDQAgACADIAZrIgM2AmggACAHIAZrNgJYIAAoAkgiAiACIAZqIAMQBxogACgCgC4iA0EBTQRAIAAgA0EBajYCgC4LIAAgACgCaCIDIAAoAoQuIgIgAiADSxs2AoQuIAAoAjAgBGohBCAAKAIAIgUoAgQhAgsCQCACIAQgAiAESRsiAkUEQCAAKAIwIQUMAQsgBSAAKAJIIANqIAIQgwEgACAAKAJoIAJqIgM2AmggACAAKAIwIgUgACgChC4iBGsiBiACIAIgBksbIARqNgKELgsgACADIAAoAkAiAiACIANJGzYCQCADIAAoAlgiBmsiAyAFIAAoAgwgACgCoC5BKmpBA3VrIgJB//8DIAJB//8DSRsiBCAEIAVLG0kEQEEAIQIgAUEERiADQQBHckUNASABRQ0BIAAoAgAoAgQNASADIARLDQELQQAhAiABQQRGBEAgACgCACgCBEUgAyAETXEhAgsgACAAKAJIIAZqIAQgAyADIARLGyIBIAIQOSAAIAAoAlggAWo2AlggACgCABAKQQJBACACGw8LIAIL/woCCn8DfiAAKQOYLiENIAAoAqAuIQQgAkEATgRAQQRBAyABLwECIggbIQlBB0GKASAIGyEFQX8hCgNAIAghByABIAsiDEEBaiILQQJ0ai8BAiEIAkACQCAGQQFqIgMgBU4NACAHIAhHDQAgAyEGDAELAkAgAyAJSARAIAAgB0ECdGoiBkHOFWohCSAGQcwVaiEKA0AgCjMBACEPAn8gBCAJLwEAIgZqIgVBP00EQCAPIASthiANhCENIAUMAQsgBEHAAEYEQCAAKAIEIAAoAhBqIA03AAAgACAAKAIQQQhqNgIQIA8hDSAGDAELIAAoAgQgACgCEGogDyAErYYgDYQ3AAAgACAAKAIQQQhqNgIQIA9BwAAgBGutiCENIAVBQGoLIQQgA0EBayIDDQALDAELIAcEQAJAIAcgCkYEQCANIQ8gBCEFIAMhBgwBCyAAIAdBAnRqIgNBzBVqMwEAIQ8gBCADQc4Vai8BACIDaiIFQT9NBEAgDyAErYYgDYQhDwwBCyAEQcAARgRAIAAoAgQgACgCEGogDTcAACAAIAAoAhBBCGo2AhAgAyEFDAELIAAoAgQgACgCEGogDyAErYYgDYQ3AAAgACAAKAIQQQhqNgIQIAVBQGohBSAPQcAAIARrrYghDwsgADMBjBYhDgJAIAUgAC8BjhYiBGoiA0E/TQRAIA4gBa2GIA+EIQ4MAQsgBUHAAEYEQCAAKAIEIAAoAhBqIA83AAAgACAAKAIQQQhqNgIQIAQhAwwBCyAAKAIEIAAoAhBqIA4gBa2GIA+ENwAAIAAgACgCEEEIajYCECADQUBqIQMgDkHAACAFa62IIQ4LIAasQgN9IQ0gA0E9TQRAIANBAmohBCANIAOthiAOhCENDAILIANBwABGBEAgACgCBCAAKAIQaiAONwAAIAAgACgCEEEIajYCEEECIQQMAgsgACgCBCAAKAIQaiANIAOthiAOhDcAACAAIAAoAhBBCGo2AhAgA0E+ayEEIA1BwAAgA2utiCENDAELIAZBCUwEQCAAMwGQFiEOAkAgBCAALwGSFiIFaiIDQT9NBEAgDiAErYYgDYQhDgwBCyAEQcAARgRAIAAoAgQgACgCEGogDTcAACAAIAAoAhBBCGo2AhAgBSEDDAELIAAoAgQgACgCEGogDiAErYYgDYQ3AAAgACAAKAIQQQhqNgIQIANBQGohAyAOQcAAIARrrYghDgsgBqxCAn0hDSADQTxNBEAgA0EDaiEEIA0gA62GIA6EIQ0MAgsgA0HAAEYEQCAAKAIEIAAoAhBqIA43AAAgACAAKAIQQQhqNgIQQQMhBAwCCyAAKAIEIAAoAhBqIA0gA62GIA6ENwAAIAAgACgCEEEIajYCECADQT1rIQQgDUHAACADa62IIQ0MAQsgADMBlBYhDgJAIAQgAC8BlhYiBWoiA0E/TQRAIA4gBK2GIA2EIQ4MAQsgBEHAAEYEQCAAKAIEIAAoAhBqIA03AAAgACAAKAIQQQhqNgIQIAUhAwwBCyAAKAIEIAAoAhBqIA4gBK2GIA2ENwAAIAAgACgCEEEIajYCECADQUBqIQMgDkHAACAEa62IIQ4LIAatQgp9IQ0gA0E4TQRAIANBB2ohBCANIAOthiAOhCENDAELIANBwABGBEAgACgCBCAAKAIQaiAONwAAIAAgACgCEEEIajYCEEEHIQQMAQsgACgCBCAAKAIQaiANIAOthiAOhDcAACAAIAAoAhBBCGo2AhAgA0E5ayEEIA1BwAAgA2utiCENC0EAIQYCfyAIRQRAQYoBIQVBAwwBC0EGQQcgByAIRiIDGyEFQQNBBCADGwshCSAHIQoLIAIgDEcNAAsLIAAgBDYCoC4gACANNwOYLgv5BQIIfwJ+AkAgACgC8C1FBEAgACkDmC4hCyAAKAKgLiEDDAELA0AgCSIDQQNqIQkgAyAAKALsLWoiAy0AAiEFIAApA5guIQwgACgCoC4hBAJAIAMvAAAiB0UEQCABIAVBAnRqIgMzAQAhCyAEIAMvAQIiBWoiA0E/TQRAIAsgBK2GIAyEIQsMAgsgBEHAAEYEQCAAKAIEIAAoAhBqIAw3AAAgACAAKAIQQQhqNgIQIAUhAwwCCyAAKAIEIAAoAhBqIAsgBK2GIAyENwAAIAAgACgCEEEIajYCECADQUBqIQMgC0HAACAEa62IIQsMAQsgBUGAzwBqLQAAIghBAnQiBiABaiIDQYQIajMBACELIANBhghqLwEAIQMgCEEIa0ETTQRAIAUgBkGA0QBqKAIAa60gA62GIAuEIQsgBkHA0wBqKAIAIANqIQMLIAMgAiAHQQFrIgcgB0EHdkGAAmogB0GAAkkbQYDLAGotAAAiBUECdCIIaiIKLwECaiEGIAozAQAgA62GIAuEIQsgBCAFQQRJBH8gBgUgByAIQYDSAGooAgBrrSAGrYYgC4QhCyAIQcDUAGooAgAgBmoLIgVqIgNBP00EQCALIASthiAMhCELDAELIARBwABGBEAgACgCBCAAKAIQaiAMNwAAIAAgACgCEEEIajYCECAFIQMMAQsgACgCBCAAKAIQaiALIASthiAMhDcAACAAIAAoAhBBCGo2AhAgA0FAaiEDIAtBwAAgBGutiCELCyAAIAs3A5guIAAgAzYCoC4gCSAAKALwLUkNAAsLIAFBgAhqMwEAIQwCQCADIAFBgghqLwEAIgJqIgFBP00EQCAMIAOthiALhCEMDAELIANBwABGBEAgACgCBCAAKAIQaiALNwAAIAAgACgCEEEIajYCECACIQEMAQsgACgCBCAAKAIQaiAMIAOthiALhDcAACAAIAAoAhBBCGo2AhAgAUFAaiEBIAxBwAAgA2utiCEMCyAAIAw3A5guIAAgATYCoC4L8AQBA38gAEHkAWohAgNAIAIgAUECdCIDakEAOwEAIAIgA0EEcmpBADsBACABQQJqIgFBngJHDQALIABBADsBzBUgAEEAOwHYEyAAQZQWakEAOwEAIABBkBZqQQA7AQAgAEGMFmpBADsBACAAQYgWakEAOwEAIABBhBZqQQA7AQAgAEGAFmpBADsBACAAQfwVakEAOwEAIABB+BVqQQA7AQAgAEH0FWpBADsBACAAQfAVakEAOwEAIABB7BVqQQA7AQAgAEHoFWpBADsBACAAQeQVakEAOwEAIABB4BVqQQA7AQAgAEHcFWpBADsBACAAQdgVakEAOwEAIABB1BVqQQA7AQAgAEHQFWpBADsBACAAQcwUakEAOwEAIABByBRqQQA7AQAgAEHEFGpBADsBACAAQcAUakEAOwEAIABBvBRqQQA7AQAgAEG4FGpBADsBACAAQbQUakEAOwEAIABBsBRqQQA7AQAgAEGsFGpBADsBACAAQagUakEAOwEAIABBpBRqQQA7AQAgAEGgFGpBADsBACAAQZwUakEAOwEAIABBmBRqQQA7AQAgAEGUFGpBADsBACAAQZAUakEAOwEAIABBjBRqQQA7AQAgAEGIFGpBADsBACAAQYQUakEAOwEAIABBgBRqQQA7AQAgAEH8E2pBADsBACAAQfgTakEAOwEAIABB9BNqQQA7AQAgAEHwE2pBADsBACAAQewTakEAOwEAIABB6BNqQQA7AQAgAEHkE2pBADsBACAAQeATakEAOwEAIABB3BNqQQA7AQAgAEIANwL8LSAAQeQJakEBOwEAIABBADYC+C0gAEEANgLwLQuKAwIGfwR+QcgAEAkiBEUEQEEADwsgBEIANwMAIARCADcDMCAEQQA2AiggBEIANwMgIARCADcDGCAEQgA3AxAgBEIANwMIIARCADcDOCABUARAIARBCBAJIgA2AgQgAEUEQCAEEAYgAwRAIANBADYCBCADQQ42AgALQQAPCyAAQgA3AwAgBA8LAkAgAaciBUEEdBAJIgZFDQAgBCAGNgIAIAVBA3RBCGoQCSIFRQ0AIAQgATcDECAEIAU2AgQDQCAAIAynIghBBHRqIgcpAwgiDVBFBEAgBygCACIHRQRAIAMEQCADQQA2AgQgA0ESNgIACyAGEAYgBRAGIAQQBkEADwsgBiAKp0EEdGoiCSANNwMIIAkgBzYCACAFIAhBA3RqIAs3AwAgCyANfCELIApCAXwhCgsgDEIBfCIMIAFSDQALIAQgCjcDCCAEQgAgCiACGzcDGCAFIAqnQQN0aiALNwMAIAQgCzcDMCAEDwsgAwRAIANBADYCBCADQQ42AgALIAYQBiAEEAZBAAvlAQIDfwF+QX8hBQJAIAAgASACQQAQJiIERQ0AIAAgASACEIsBIgZFDQACfgJAIAJBCHENACAAKAJAIAGnQQR0aigCCCICRQ0AIAIgAxAhQQBOBEAgAykDAAwCCyAAQQhqIgAEQCAAQQA2AgQgAEEPNgIAC0F/DwsgAxAqIAMgBCgCGDYCLCADIAQpAyg3AxggAyAEKAIUNgIoIAMgBCkDIDcDICADIAQoAhA7ATAgAyAELwFSOwEyQvwBQtwBIAQtAAYbCyEHIAMgBjYCCCADIAE3AxAgAyAHQgOENwMAQQAhBQsgBQspAQF/IAAgASACIABBCGoiABAmIgNFBEBBAA8LIAMoAjBBACACIAAQJQuAAwEGfwJ/An9BMCABQYB/Sw0BGgJ/IAFBgH9PBEBBhIQBQTA2AgBBAAwBC0EAQRAgAUELakF4cSABQQtJGyIFQcwAahAJIgFFDQAaIAFBCGshAgJAIAFBP3FFBEAgAiEBDAELIAFBBGsiBigCACIHQXhxIAFBP2pBQHFBCGsiASABQUBrIAEgAmtBD0sbIgEgAmsiA2shBCAHQQNxRQRAIAIoAgAhAiABIAQ2AgQgASACIANqNgIADAELIAEgBCABKAIEQQFxckECcjYCBCABIARqIgQgBCgCBEEBcjYCBCAGIAMgBigCAEEBcXJBAnI2AgAgAiADaiIEIAQoAgRBAXI2AgQgAiADEDsLAkAgASgCBCICQQNxRQ0AIAJBeHEiAyAFQRBqTQ0AIAEgBSACQQFxckECcjYCBCABIAVqIgIgAyAFayIFQQNyNgIEIAEgA2oiAyADKAIEQQFyNgIEIAIgBRA7CyABQQhqCyIBRQsEQEEwDwsgACABNgIAQQALCwoAIABBiIQBEAQL6AIBBX8gACgCUCEBIAAvATAhBEEEIQUDQCABQQAgAS8BACICIARrIgMgAiADSRs7AQAgAUEAIAEvAQIiAiAEayIDIAIgA0kbOwECIAFBACABLwEEIgIgBGsiAyACIANJGzsBBCABQQAgAS8BBiICIARrIgMgAiADSRs7AQYgBUGAgARGRQRAIAFBCGohASAFQQRqIQUMAQsLAkAgBEUNACAEQQNxIQUgACgCTCEBIARBAWtBA08EQCAEIAVrIQADQCABQQAgAS8BACICIARrIgMgAiADSRs7AQAgAUEAIAEvAQIiAiAEayIDIAIgA0kbOwECIAFBACABLwEEIgIgBGsiAyACIANJGzsBBCABQQAgAS8BBiICIARrIgMgAiADSRs7AQYgAUEIaiEBIABBBGsiAA0ACwsgBUUNAANAIAFBACABLwEAIgAgBGsiAiAAIAJJGzsBACABQQJqIQEgBUEBayIFDQALCwuDAQEEfyACQQFOBEAgAiAAKAJIIAFqIgJqIQMgACgCUCEEA0AgBCACKAAAQbHz3fF5bEEPdkH+/wdxaiIFLwEAIgYgAUH//wNxRwRAIAAoAkwgASAAKAI4cUH//wNxQQF0aiAGOwEAIAUgATsBAAsgAUEBaiEBIAJBAWoiAiADSQ0ACwsLUAECfyABIAAoAlAgACgCSCABaigAAEGx893xeWxBD3ZB/v8HcWoiAy8BACICRwRAIAAoAkwgACgCOCABcUEBdGogAjsBACADIAE7AQALIAILugEBAX8jAEEQayICJAAgAkEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgARBYIAJBEGokAAu9AQEBfyMAQRBrIgEkACABQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgAEEANgJAIAFBEGokAEEAC70BAQF/IwBBEGsiASQAIAFBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAKAJAIQAgAUEQaiQAIAALvgEBAX8jAEEQayIEJAAgBEEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgASACIAMQVyAEQRBqJAALygEAIwBBEGsiAyQAIANBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAAoAkAgASACQdSAASgCABEAADYCQCADQRBqJAALwAEBAX8jAEEQayIDJAAgA0EAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgASACEF0hACADQRBqJAAgAAu+AQEBfyMAQRBrIgIkACACQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABEFwhACACQRBqJAAgAAu2AQEBfyMAQRBrIgAkACAAQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgAEEQaiQAQQgLwgEBAX8jAEEQayIEJAAgBEEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgASACIAMQWSEAIARBEGokACAAC8IBAQF/IwBBEGsiBCQAIARBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAEgAiADEFYhACAEQRBqJAAgAAsHACAALwEwC8ABAQF/IwBBEGsiAyQAIANBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAEgAhBVIQAgA0EQaiQAIAALBwAgACgCQAsaACAAIAAoAkAgASACQdSAASgCABEAADYCQAsLACAAQQA2AkBBAAsHACAAKAIgCwQAQQgLzgUCA34BfyMAQYBAaiIIJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAEDhECAwwFAAEECAkJCQkJCQcJBgkLIANCCFoEfiACIAEoAmQ2AgAgAiABKAJoNgIEQggFQn8LIQYMCwsgARAGDAoLIAEoAhAiAgRAIAIgASkDGCABQeQAaiICEEEiA1ANCCABKQMIIgVCf4UgA1QEQCACBEAgAkEANgIEIAJBFTYCAAsMCQsgAUEANgIQIAEgAyAFfDcDCCABIAEpAwAgA3w3AwALIAEtAHgEQCABKQMAIQUMCQtCACEDIAEpAwAiBVAEQCABQgA3AyAMCgsDQCAAIAggBSADfSIFQoDAACAFQoDAAFQbEBEiB0J/VwRAIAFB5ABqIgEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwJCyAHUEUEQCABKQMAIgUgAyAHfCIDWA0KDAELCyABQeQAagRAIAFBADYCaCABQRE2AmQLDAcLIAEpAwggASkDICIFfSIHIAMgAyAHVhsiA1ANCAJAIAEtAHhFDQAgACAFQQAQFEF/Sg0AIAFB5ABqIgEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwHCyAAIAIgAxARIgZCf1cEQCABQeQAagRAIAFBADYCaCABQRE2AmQLDAcLIAEgASkDICAGfCIDNwMgIAZCAFINCEIAIQYgAyABKQMIWg0IIAFB5ABqBEAgAUEANgJoIAFBETYCZAsMBgsgASkDICABKQMAIgV9IAEpAwggBX0gAiADIAFB5ABqEEQiA0IAUw0FIAEgASkDACADfDcDIAwHCyACIAFBKGoQYEEfdawhBgwGCyABMABgIQYMBQsgASkDcCEGDAQLIAEpAyAgASkDAH0hBgwDCyABQeQAagRAIAFBADYCaCABQRw2AmQLC0J/IQYMAQsgASAFNwMgCyAIQYBAayQAIAYLBwAgACgCAAsPACAAIAAoAjBBAWo2AjALGABB+IMBQgA3AgBBgIQBQQA2AgBB+IMBCwcAIABBDGoLBwAgACgCLAsHACAAKAIoCwcAIAAoAhgLFQAgACABrSACrUIghoQgAyAEEIoBCxMBAX4gABAzIgFCIIinEAAgAacLbwEBfiABrSACrUIghoQhBSMAQRBrIgEkAAJ/IABFBEAgBVBFBEAgBARAIARBADYCBCAEQRI2AgALQQAMAgtBAEIAIAMgBBA6DAELIAEgBTcDCCABIAA2AgAgAUIBIAMgBBA6CyEAIAFBEGokACAACxQAIAAgASACrSADrUIghoQgBBBSC9oCAgJ/AX4CfyABrSACrUIghoQiByAAKQMwVEEAIARBCkkbRQRAIABBCGoEQCAAQQA2AgwgAEESNgIIC0F/DAELIAAtABhBAnEEQCAAQQhqBEAgAEEANgIMIABBGTYCCAtBfwwBCyADBH8gA0H//wNxQQhGIANBfUtyBUEBC0UEQCAAQQhqBEAgAEEANgIMIABBEDYCCAtBfwwBCyAAKAJAIgEgB6ciBUEEdGooAgAiAgR/IAIoAhAgA0YFIANBf0YLIQYgASAFQQR0aiIBIQUgASgCBCEBAkAgBgRAIAFFDQEgAUEAOwFQIAEgASgCAEF+cSIANgIAIAANASABECAgBUEANgIEQQAMAgsCQCABDQAgBSACECsiATYCBCABDQAgAEEIagRAIABBADYCDCAAQQ42AggLQX8MAgsgASAEOwFQIAEgAzYCECABIAEoAgBBAXI2AgALQQALCxwBAX4gACABIAIgAEEIahBMIgNCIIinEAAgA6cLHwEBfiAAIAEgAq0gA61CIIaEEBEiBEIgiKcQACAEpwteAQF+An5CfyAARQ0AGiAAKQMwIgIgAUEIcUUNABpCACACUA0AGiAAKAJAIQADQCACIAKnQQR0IABqQRBrKAIADQEaIAJCAX0iAkIAUg0AC0IACyICQiCIpxAAIAKnCxMAIAAgAa0gAq1CIIaEIAMQiwELnwEBAn4CfiACrSADrUIghoQhBUJ/IQQCQCAARQ0AIAAoAgQNACAAQQRqIQIgBUJ/VwRAIAIEQCACQQA2AgQgAkESNgIAC0J/DAILQgAhBCAALQAQDQAgBVANACAAKAIUIAEgBRARIgRCf1UNACAAKAIUIQAgAgRAIAIgACgCDDYCACACIAAoAhA2AgQLQn8hBAsgBAsiBEIgiKcQACAEpwueAQEBfwJ/IAAgACABrSACrUIghoQgAyAAKAIcEH8iAQRAIAEQMkF/TARAIABBCGoEQCAAIAEoAgw2AgggACABKAIQNgIMCyABEAtBAAwCC0EYEAkiBEUEQCAAQQhqBEAgAEEANgIMIABBDjYCCAsgARALQQAMAgsgBCAANgIAIARBADYCDCAEQgA3AgQgBCABNgIUIARBADoAEAsgBAsLsQICAX8BfgJ/QX8hBAJAIAAgAa0gAq1CIIaEIgZBAEEAECZFDQAgAC0AGEECcQRAIABBCGoEQCAAQQA2AgwgAEEZNgIIC0F/DAILIAAoAkAiASAGpyICQQR0aiIEKAIIIgUEQEEAIQQgBSADEHFBf0oNASAAQQhqBEAgAEEANgIMIABBDzYCCAtBfwwCCwJAIAQoAgAiBQRAIAUoAhQgA0YNAQsCQCABIAJBBHRqIgEoAgQiBA0AIAEgBRArIgQ2AgQgBA0AIABBCGoEQCAAQQA2AgwgAEEONgIIC0F/DAMLIAQgAzYCFCAEIAQoAgBBIHI2AgBBAAwCC0EAIQQgASACQQR0aiIBKAIEIgBFDQAgACAAKAIAQV9xIgI2AgAgAg0AIAAQICABQQA2AgQLIAQLCxQAIAAgAa0gAq1CIIaEIAQgBRBzCxIAIAAgAa0gAq1CIIaEIAMQFAtBAQF+An4gAUEAIAIbRQRAIABBCGoEQCAAQQA2AgwgAEESNgIIC0J/DAELIAAgASACIAMQdAsiBEIgiKcQACAEpwvGAwIFfwF+An4CQAJAIAAiBC0AGEECcQRAIARBCGoEQCAEQQA2AgwgBEEZNgIICwwBCyABRQRAIARBCGoEQCAEQQA2AgwgBEESNgIICwwBCyABECIiByABakEBay0AAEEvRwRAIAdBAmoQCSIARQRAIARBCGoEQCAEQQA2AgwgBEEONgIICwwCCwJAAkAgACIGIAEiBXNBA3ENACAFQQNxBEADQCAGIAUtAAAiAzoAACADRQ0DIAZBAWohBiAFQQFqIgVBA3ENAAsLIAUoAgAiA0F/cyADQYGChAhrcUGAgYKEeHENAANAIAYgAzYCACAFKAIEIQMgBkEEaiEGIAVBBGohBSADQYGChAhrIANBf3NxQYCBgoR4cUUNAAsLIAYgBS0AACIDOgAAIANFDQADQCAGIAUtAAEiAzoAASAGQQFqIQYgBUEBaiEFIAMNAAsLIAcgACIDakEvOwAACyAEQQBCAEEAEFIiAEUEQCADEAYMAQsgBCADIAEgAxsgACACEHQhCCADEAYgCEJ/VwRAIAAQCyAIDAMLIAQgCEEDQYCA/I8EEHNBf0oNASAEIAgQchoLQn8hCAsgCAsiCEIgiKcQACAIpwsQACAAIAGtIAKtQiCGhBByCxYAIAAgAa0gAq1CIIaEIAMgBCAFEGYL3iMDD38IfgF8IwBB8ABrIgkkAAJAIAFBAE5BACAAG0UEQCACBEAgAkEANgIEIAJBEjYCAAsMAQsgACkDGCISAn5BsIMBKQMAIhNCf1EEQCAJQoOAgIBwNwMwIAlChoCAgPAANwMoIAlCgYCAgCA3AyBBsIMBQQAgCUEgahAkNwMAIAlCj4CAgHA3AxAgCUKJgICAoAE3AwAgCUKMgICA0AE3AwhBuIMBQQggCRAkNwMAQbCDASkDACETCyATC4MgE1IEQCACBEAgAkEANgIEIAJBHDYCAAsMAQsgASABQRByQbiDASkDACITIBKDIBNRGyIKQRhxQRhGBEAgAgRAIAJBADYCBCACQRk2AgALDAELIAlBOGoQKgJAIAAgCUE4ahAhBEACQCAAKAIMQQVGBEAgACgCEEEsRg0BCyACBEAgAiAAKAIMNgIAIAIgACgCEDYCBAsMAgsgCkEBcUUEQCACBEAgAkEANgIEIAJBCTYCAAsMAwsgAhBJIgVFDQEgBSAKNgIEIAUgADYCACAKQRBxRQ0CIAUgBSgCFEECcjYCFCAFIAUoAhhBAnI2AhgMAgsgCkECcQRAIAIEQCACQQA2AgQgAkEKNgIACwwCCyAAEDJBf0wEQCACBEAgAiAAKAIMNgIAIAIgACgCEDYCBAsMAQsCfyAKQQhxBEACQCACEEkiAUUNACABIAo2AgQgASAANgIAIApBEHFFDQAgASABKAIUQQJyNgIUIAEgASgCGEECcjYCGAsgAQwBCyMAQUBqIg4kACAOQQhqECoCQCAAIA5BCGoQIUF/TARAIAIEQCACIAAoAgw2AgAgAiAAKAIQNgIECwwBCyAOLQAIQQRxRQRAIAIEQCACQYoBNgIEIAJBBDYCAAsMAQsgDikDICETIAIQSSIFRQRAQQAhBQwBCyAFIAo2AgQgBSAANgIAIApBEHEEQCAFIAUoAhRBAnI2AhQgBSAFKAIYQQJyNgIYCwJAAkACQCATUARAAn8gACEBAkADQCABKQMYQoCAEINCAFINASABKAIAIgENAAtBAQwBCyABQQBCAEESEA6nCw0EIAVBCGoEQCAFQQA2AgwgBUETNgIICwwBCyMAQdAAayIBJAACQCATQhVYBEAgBUEIagRAIAVBADYCDCAFQRM2AggLDAELAkACQCAFKAIAQgAgE0KqgAQgE0KqgARUGyISfUECEBRBf0oNACAFKAIAIgMoAgxBBEYEQCADKAIQQRZGDQELIAVBCGoEQCAFIAMoAgw2AgggBSADKAIQNgIMCwwBCyAFKAIAEDMiE0J/VwRAIAUoAgAhAyAFQQhqIggEQCAIIAMoAgw2AgAgCCADKAIQNgIECwwBCyAFKAIAIBJBACAFQQhqIg8QLSIERQ0BIBJCqoAEWgRAAkAgBCkDCEIUVARAIARBADoAAAwBCyAEQhQ3AxAgBEEBOgAACwsgAQRAIAFBADYCBCABQRM2AgALIARCABATIQwCQCAELQAABH4gBCkDCCAEKQMQfQVCAAunIgdBEmtBA0sEQEJ/IRcDQCAMQQFrIQMgByAMakEVayEGAkADQCADQQFqIgNB0AAgBiADaxB6IgNFDQEgA0EBaiIMQZ8SQQMQPQ0ACwJAIAMgBCgCBGusIhIgBCkDCFYEQCAEQQA6AAAMAQsgBCASNwMQIARBAToAAAsgBC0AAAR+IAQpAxAFQgALIRICQCAELQAABH4gBCkDCCAEKQMQfQVCAAtCFVgEQCABBEAgAUEANgIEIAFBEzYCAAsMAQsgBEIEEBMoAABB0JaVMEcEQCABBEAgAUEANgIEIAFBEzYCAAsMAQsCQAJAAkAgEkIUVA0AIAQoAgQgEqdqQRRrKAAAQdCWmThHDQACQCASQhR9IhQgBCIDKQMIVgRAIANBADoAAAwBCyADIBQ3AxAgA0EBOgAACyAFKAIUIRAgBSgCACEGIAMtAAAEfiAEKQMQBUIACyEWIARCBBATGiAEEAwhCyAEEAwhDSAEEB0iFEJ/VwRAIAEEQCABQRY2AgQgAUEENgIACwwECyAUQjh8IhUgEyAWfCIWVgRAIAEEQCABQQA2AgQgAUEVNgIACwwECwJAAkAgEyAUVg0AIBUgEyAEKQMIfFYNAAJAIBQgE30iFSAEKQMIVgRAIANBADoAAAwBCyADIBU3AxAgA0EBOgAAC0EAIQcMAQsgBiAUQQAQFEF/TARAIAEEQCABIAYoAgw2AgAgASAGKAIQNgIECwwFC0EBIQcgBkI4IAFBEGogARAtIgNFDQQLIANCBBATKAAAQdCWmTBHBEAgAQRAIAFBADYCBCABQRU2AgALIAdFDQQgAxAIDAQLIAMQHSEVAkAgEEEEcSIGRQ0AIBQgFXxCDHwgFlENACABBEAgAUEANgIEIAFBFTYCAAsgB0UNBCADEAgMBAsgA0IEEBMaIAMQFSIQIAsgC0H//wNGGyELIAMQFSIRIA0gDUH//wNGGyENAkAgBkUNACANIBFGQQAgCyAQRhsNACABBEAgAUEANgIEIAFBFTYCAAsgB0UNBCADEAgMBAsgCyANcgRAIAEEQCABQQA2AgQgAUEBNgIACyAHRQ0EIAMQCAwECyADEB0iGCADEB1SBEAgAQRAIAFBADYCBCABQQE2AgALIAdFDQQgAxAIDAQLIAMQHSEVIAMQHSEWIAMtAABFBEAgAQRAIAFBADYCBCABQRQ2AgALIAdFDQQgAxAIDAQLIAcEQCADEAgLAkAgFkIAWQRAIBUgFnwiGSAWWg0BCyABBEAgAUEWNgIEIAFBBDYCAAsMBAsgEyAUfCIUIBlUBEAgAQRAIAFBADYCBCABQRU2AgALDAQLAkAgBkUNACAUIBlRDQAgAQRAIAFBADYCBCABQRU2AgALDAQLIBggFUIugFgNASABBEAgAUEANgIEIAFBFTYCAAsMAwsCQCASIAQpAwhWBEAgBEEAOgAADAELIAQgEjcDECAEQQE6AAALIAUoAhQhAyAELQAABH4gBCkDCCAEKQMQfQVCAAtCFVgEQCABBEAgAUEANgIEIAFBFTYCAAsMAwsgBC0AAAR+IAQpAxAFQgALIRQgBEIEEBMaIAQQFQRAIAEEQCABQQA2AgQgAUEBNgIACwwDCyAEEAwgBBAMIgZHBEAgAQRAIAFBADYCBCABQRM2AgALDAMLIAQQFSEHIAQQFa0iFiAHrSIVfCIYIBMgFHwiFFYEQCABBEAgAUEANgIEIAFBFTYCAAsMAwsCQCADQQRxRQ0AIBQgGFENACABBEAgAUEANgIEIAFBFTYCAAsMAwsgBq0gARBqIgNFDQIgAyAWNwMgIAMgFTcDGCADQQA6ACwMAQsgGCABEGoiA0UNASADIBY3AyAgAyAVNwMYIANBAToALAsCQCASQhR8IhQgBCkDCFYEQCAEQQA6AAAMAQsgBCAUNwMQIARBAToAAAsgBBAMIQYCQCADKQMYIAMpAyB8IBIgE3xWDQACQCAGRQRAIAUtAARBBHFFDQELAkAgEkIWfCISIAQpAwhWBEAgBEEAOgAADAELIAQgEjcDECAEQQE6AAALIAQtAAAEfiAEKQMIIAQpAxB9BUIACyIUIAatIhJUDQEgBS0ABEEEcUEAIBIgFFIbDQEgBkUNACADIAQgEhATIAZBACABEDUiBjYCKCAGDQAgAxAWDAILAkAgEyADKQMgIhJYBEACQCASIBN9IhIgBCkDCFYEQCAEQQA6AAAMAQsgBCASNwMQIARBAToAAAsgBCADKQMYEBMiBkUNAiAGIAMpAxgQFyIHDQEgAQRAIAFBADYCBCABQQ42AgALIAMQFgwDCyAFKAIAIBJBABAUIQcgBSgCACEGIAdBf0wEQCABBEAgASAGKAIMNgIAIAEgBigCEDYCBAsgAxAWDAMLQQAhByAGEDMgAykDIFENACABBEAgAUEANgIEIAFBEzYCAAsgAxAWDAILQgAhFAJAAkAgAykDGCIWUEUEQANAIBQgAykDCFIiC0UEQCADLQAsDQMgFkIuVA0DAn8CQCADKQMQIhVCgIAEfCISIBVaQQAgEkKAgICAAVQbRQ0AIAMoAgAgEqdBBHQQNCIGRQ0AIAMgBjYCAAJAIAMpAwgiFSASWg0AIAYgFadBBHRqIgZCADcCACAGQgA3AAUgFUIBfCIVIBJRDQADQCADKAIAIBWnQQR0aiIGQgA3AgAgBkIANwAFIBVCAXwiFSASUg0ACwsgAyASNwMIIAMgEjcDEEEBDAELIAEEQCABQQA2AgQgAUEONgIAC0EAC0UNBAtB2AAQCSIGBH8gBkIANwMgIAZBADYCGCAGQv////8PNwMQIAZBADsBDCAGQb+GKDYCCCAGQQE6AAYgBkEAOwEEIAZBADYCACAGQgA3A0ggBkGAgNiNeDYCRCAGQgA3AyggBkIANwMwIAZCADcDOCAGQUBrQQA7AQAgBkIANwNQIAYFQQALIQYgAygCACAUp0EEdGogBjYCAAJAIAYEQCAGIAUoAgAgB0EAIAEQaCISQn9VDQELIAsNBCABKAIAQRNHDQQgAQRAIAFBADYCBCABQRU2AgALDAQLIBRCAXwhFCAWIBJ9IhZCAFINAAsLIBQgAykDCFINAAJAIAUtAARBBHFFDQAgBwRAIActAAAEfyAHKQMQIAcpAwhRBUEAC0UNAgwBCyAFKAIAEDMiEkJ/VwRAIAUoAgAhBiABBEAgASAGKAIMNgIAIAEgBigCEDYCBAsgAxAWDAULIBIgAykDGCADKQMgfFINAQsgBxAIAn4gCARAAn8gF0IAVwRAIAUgCCABEEghFwsgBSADIAEQSCISIBdVCwRAIAgQFiASDAILIAMQFgwFC0IAIAUtAARBBHFFDQAaIAUgAyABEEgLIRcgAyEIDAMLIAEEQCABQQA2AgQgAUEVNgIACyAHEAggAxAWDAILIAMQFiAHEAgMAQsgAQRAIAFBADYCBCABQRU2AgALIAMQFgsCQCAMIAQoAgRrrCISIAQpAwhWBEAgBEEAOgAADAELIAQgEjcDECAEQQE6AAALIAQtAAAEfiAEKQMIIAQpAxB9BUIAC6ciB0ESa0EDSw0BCwsgBBAIIBdCf1UNAwwBCyAEEAgLIA8iAwRAIAMgASgCADYCACADIAEoAgQ2AgQLIAgQFgtBACEICyABQdAAaiQAIAgNAQsgAgRAIAIgBSgCCDYCACACIAUoAgw2AgQLDAELIAUgCCgCADYCQCAFIAgpAwg3AzAgBSAIKQMQNwM4IAUgCCgCKDYCICAIEAYgBSgCUCEIIAVBCGoiBCEBQQAhBwJAIAUpAzAiE1ANAEGAgICAeCEGAn8gE7pEAAAAAAAA6D+jRAAA4P///+9BpCIaRAAAAAAAAPBBYyAaRAAAAAAAAAAAZnEEQCAaqwwBC0EACyIDQYCAgIB4TQRAIANBAWsiA0EBdiADciIDQQJ2IANyIgNBBHYgA3IiA0EIdiADciIDQRB2IANyQQFqIQYLIAYgCCgCACIMTQ0AIAYQPCILRQRAIAEEQCABQQA2AgQgAUEONgIACwwBCwJAIAgpAwhCACAMG1AEQCAIKAIQIQ8MAQsgCCgCECEPA0AgDyAHQQJ0aigCACIBBEADQCABKAIYIQMgASALIAEoAhwgBnBBAnRqIg0oAgA2AhggDSABNgIAIAMiAQ0ACwsgB0EBaiIHIAxHDQALCyAPEAYgCCAGNgIAIAggCzYCEAsCQCAFKQMwUA0AQgAhEwJAIApBBHFFBEADQCAFKAJAIBOnQQR0aigCACgCMEEAQQAgAhAlIgFFDQQgBSgCUCABIBNBCCAEEE1FBEAgBCgCAEEKRw0DCyATQgF8IhMgBSkDMFQNAAwDCwALA0AgBSgCQCATp0EEdGooAgAoAjBBAEEAIAIQJSIBRQ0DIAUoAlAgASATQQggBBBNRQ0BIBNCAXwiEyAFKQMwVA0ACwwBCyACBEAgAiAEKAIANgIAIAIgBCgCBDYCBAsMAQsgBSAFKAIUNgIYDAELIAAgACgCMEEBajYCMCAFEEtBACEFCyAOQUBrJAAgBQsiBQ0BIAAQGhoLQQAhBQsgCUHwAGokACAFCxAAIwAgAGtBcHEiACQAIAALBgAgACQACwQAIwAL4CoDEX8IfgN8IwBBwMAAayIHJABBfyECAkAgAEUNAAJ/IAAtAChFBEBBACAAKAIYIAAoAhRGDQEaC0EBCyEBAkACQCAAKQMwIhRQRQRAIAAoAkAhCgNAIAogEqdBBHRqIgMtAAwhCwJAAkAgAygCCA0AIAsNACADKAIEIgNFDQEgAygCAEUNAQtBASEBCyAXIAtBAXOtQv8Bg3whFyASQgF8IhIgFFINAAsgF0IAUg0BCyAAKAIEQQhxIAFyRQ0BAn8gACgCACIDKAIkIgFBA0cEQCADKAIgBH9BfyADEBpBAEgNAhogAygCJAUgAQsEQCADEEMLQX8gA0EAQgBBDxAOQgBTDQEaIANBAzYCJAtBAAtBf0oNASAAKAIAKAIMQRZGBEAgACgCACgCEEEsRg0CCyAAKAIAIQEgAEEIagRAIAAgASgCDDYCCCAAIAEoAhA2AgwLDAILIAFFDQAgFCAXVARAIABBCGoEQCAAQQA2AgwgAEEUNgIICwwCCyAXp0EDdBAJIgtFDQFCfyEWQgAhEgNAAkAgCiASp0EEdGoiBigCACIDRQ0AAkAgBigCCA0AIAYtAAwNACAGKAIEIgFFDQEgASgCAEUNAQsgFiADKQNIIhMgEyAWVhshFgsgBi0ADEUEQCAXIBlYBEAgCxAGIABBCGoEQCAAQQA2AgwgAEEUNgIICwwECyALIBmnQQN0aiASNwMAIBlCAXwhGQsgEkIBfCISIBRSDQALIBcgGVYEQCALEAYgAEEIagRAIABBADYCDCAAQRQ2AggLDAILAkACQCAAKAIAKQMYQoCACINQDQACQAJAIBZCf1INACAAKQMwIhNQDQIgE0IBgyEVIAAoAkAhAwJAIBNCAVEEQEJ/IRRCACESQgAhFgwBCyATQn6DIRlCfyEUQgAhEkIAIRYDQCADIBKnQQR0aigCACIBBEAgFiABKQNIIhMgEyAWVCIBGyEWIBQgEiABGyEUCyADIBJCAYQiGKdBBHRqKAIAIgEEQCAWIAEpA0giEyATIBZUIgEbIRYgFCAYIAEbIRQLIBJCAnwhEiAZQgJ9IhlQRQ0ACwsCQCAVUA0AIAMgEqdBBHRqKAIAIgFFDQAgFiABKQNIIhMgEyAWVCIBGyEWIBQgEiABGyEUCyAUQn9RDQBCACETIwBBEGsiBiQAAkAgACAUIABBCGoiCBBBIhVQDQAgFSAAKAJAIBSnQQR0aigCACIKKQMgIhh8IhQgGFpBACAUQn9VG0UEQCAIBEAgCEEWNgIEIAhBBDYCAAsMAQsgCi0ADEEIcUUEQCAUIRMMAQsgACgCACAUQQAQFCEBIAAoAgAhAyABQX9MBEAgCARAIAggAygCDDYCACAIIAMoAhA2AgQLDAELIAMgBkEMakIEEBFCBFIEQCAAKAIAIQEgCARAIAggASgCDDYCACAIIAEoAhA2AgQLDAELIBRCBHwgFCAGKAAMQdCWncAARhtCFEIMAn9BASEBAkAgCikDKEL+////D1YNACAKKQMgQv7///8PVg0AQQAhAQsgAQsbfCIUQn9XBEAgCARAIAhBFjYCBCAIQQQ2AgALDAELIBQhEwsgBkEQaiQAIBMiFkIAUg0BIAsQBgwFCyAWUA0BCwJ/IAAoAgAiASgCJEEBRgRAIAFBDGoEQCABQQA2AhAgAUESNgIMC0F/DAELQX8gAUEAIBZBERAOQgBTDQAaIAFBATYCJEEAC0F/Sg0BC0IAIRYCfyAAKAIAIgEoAiRBAUYEQCABQQxqBEAgAUEANgIQIAFBEjYCDAtBfwwBC0F/IAFBAEIAQQgQDkIAUw0AGiABQQE2AiRBAAtBf0oNACAAKAIAIQEgAEEIagRAIAAgASgCDDYCCCAAIAEoAhA2AgwLIAsQBgwCCyAAKAJUIgIEQCACQgA3AxggAigCAEQAAAAAAAAAACACKAIMIAIoAgQRDgALIABBCGohBCAXuiEcQgAhFAJAAkACQANAIBcgFCITUgRAIBO6IByjIRsgE0IBfCIUuiAcoyEaAkAgACgCVCICRQ0AIAIgGjkDKCACIBs5AyAgAisDECAaIBuhRAAAAAAAAAAAoiAboCIaIAIrAxihY0UNACACKAIAIBogAigCDCACKAIEEQ4AIAIgGjkDGAsCfwJAIAAoAkAgCyATp0EDdGopAwAiE6dBBHRqIg0oAgAiAQRAIAEpA0ggFlQNAQsgDSgCBCEFAkACfwJAIA0oAggiAkUEQCAFRQ0BQQEgBSgCACICQQFxDQIaIAJBwABxQQZ2DAILQQEgBQ0BGgsgDSABECsiBTYCBCAFRQ0BIAJBAEcLIQZBACEJIwBBEGsiDCQAAkAgEyAAKQMwWgRAIABBCGoEQCAAQQA2AgwgAEESNgIIC0F/IQkMAQsgACgCQCIKIBOnIgNBBHRqIg8oAgAiAkUNACACLQAEDQACQCACKQNIQhp8IhhCf1cEQCAAQQhqBEAgAEEWNgIMIABBBDYCCAsMAQtBfyEJIAAoAgAgGEEAEBRBf0wEQCAAKAIAIQIgAEEIagRAIAAgAigCDDYCCCAAIAIoAhA2AgwLDAILIAAoAgBCBCAMQQxqIABBCGoiDhAtIhBFDQEgEBAMIQEgEBAMIQggEC0AAAR/IBApAxAgECkDCFEFQQALIQIgEBAIIAJFBEAgDgRAIA5BADYCBCAOQRQ2AgALDAILAkAgCEUNACAAKAIAIAGtQQEQFEF/TARAQYSEASgCACECIA4EQCAOIAI2AgQgDkEENgIACwwDC0EAIAAoAgAgCEEAIA4QRSIBRQ0BIAEgCEGAAiAMQQhqIA4QbiECIAEQBiACRQ0BIAwoAggiAkUNACAMIAIQbSICNgIIIA8oAgAoAjQgAhBvIQIgDygCACACNgI0CyAPKAIAIgJBAToABEEAIQkgCiADQQR0aigCBCIBRQ0BIAEtAAQNASACKAI0IQIgAUEBOgAEIAEgAjYCNAwBC0F/IQkLIAxBEGokACAJQQBIDQUgACgCABAfIhhCAFMNBSAFIBg3A0ggBgRAQQAhDCANKAIIIg0hASANRQRAIAAgACATQQhBABB/IgwhASAMRQ0HCwJAAkAgASAHQQhqECFBf0wEQCAEBEAgBCABKAIMNgIAIAQgASgCEDYCBAsMAQsgBykDCCISQsAAg1AEQCAHQQA7ATggByASQsAAhCISNwMICwJAAkAgBSgCECICQX5PBEAgBy8BOCIDRQ0BIAUgAzYCECADIQIMAgsgAg0AIBJCBINQDQAgByAHKQMgNwMoIAcgEkIIhCISNwMIQQAhAgwBCyAHIBJC9////w+DIhI3AwgLIBJCgAGDUARAIAdBADsBOiAHIBJCgAGEIhI3AwgLAn8gEkIEg1AEQEJ/IRVBgAoMAQsgBSAHKQMgIhU3AyggEkIIg1AEQAJAAkACQAJAQQggAiACQX1LG0H//wNxDg0CAwMDAwMDAwEDAwMAAwtBgApBgAIgFUKUwuTzD1YbDAQLQYAKQYACIBVCg4Ow/w9WGwwDC0GACkGAAiAVQv////8PVhsMAgtBgApBgAIgFUIAUhsMAQsgBSAHKQMoNwMgQYACCyEPIAAoAgAQHyITQn9XBEAgACgCACECIAQEQCAEIAIoAgw2AgAgBCACKAIQNgIECwwBCyAFIAUvAQxB9/8DcTsBDCAAIAUgDxA3IgpBAEgNACAHLwE4IghBCCAFKAIQIgMgA0F9SxtB//8DcSICRyEGAkACQAJAAkACQAJAAkAgAiAIRwRAIANBAEchAwwBC0EAIQMgBS0AAEGAAXFFDQELIAUvAVIhCSAHLwE6IQIMAQsgBS8BUiIJIAcvAToiAkYNAQsgASABKAIwQQFqNgIwIAJB//8DcQ0BIAEhAgwCCyABIAEoAjBBAWo2AjBBACEJDAILQSZBACAHLwE6QQFGGyICRQRAIAQEQCAEQQA2AgQgBEEYNgIACyABEAsMAwsgACABIAcvATpBACAAKAIcIAIRBgAhAiABEAsgAkUNAgsgCUEARyEJIAhBAEcgBnFFBEAgAiEBDAELIAAgAiAHLwE4EIEBIQEgAhALIAFFDQELAkAgCEUgBnJFBEAgASECDAELIAAgAUEAEIABIQIgARALIAJFDQELAkAgA0UEQCACIQMMAQsgACACIAUoAhBBASAFLwFQEIIBIQMgAhALIANFDQELAkAgCUUEQCADIQEMAQsgBSgCVCIBRQRAIAAoAhwhAQsCfyAFLwFSGkEBCwRAIAQEQCAEQQA2AgQgBEEYNgIACyADEAsMAgsgACADIAUvAVJBASABQQARBgAhASADEAsgAUUNAQsgACgCABAfIhhCf1cEQCAAKAIAIQIgBARAIAQgAigCDDYCACAEIAIoAhA2AgQLDAELAkAgARAyQQBOBEACfwJAAkAgASAHQUBrQoDAABARIhJCAVMNAEIAIRkgFUIAVQRAIBW5IRoDQCAAIAdBQGsgEhAbQQBIDQMCQCASQoDAAFINACAAKAJUIgJFDQAgAiAZQoBAfSIZuSAaoxB7CyABIAdBQGtCgMAAEBEiEkIAVQ0ACwwBCwNAIAAgB0FAayASEBtBAEgNAiABIAdBQGtCgMAAEBEiEkIAVQ0ACwtBACASQn9VDQEaIAQEQCAEIAEoAgw2AgAgBCABKAIQNgIECwtBfwshAiABEBoaDAELIAQEQCAEIAEoAgw2AgAgBCABKAIQNgIEC0F/IQILIAEgB0EIahAhQX9MBEAgBARAIAQgASgCDDYCACAEIAEoAhA2AgQLQX8hAgsCf0EAIQkCQCABIgNFDQADQCADLQAaQQFxBEBB/wEhCSADQQBCAEEQEA4iFUIAUw0CIBVCBFkEQCADQQxqBEAgA0EANgIQIANBFDYCDAsMAwsgFachCQwCCyADKAIAIgMNAAsLIAlBGHRBGHUiA0F/TAsEQCAEBEAgBCABKAIMNgIAIAQgASgCEDYCBAsgARALDAELIAEQCyACQQBIDQAgACgCABAfIRUgACgCACECIBVCf1cEQCAEBEAgBCACKAIMNgIAIAQgAigCEDYCBAsMAQsgAiATEHVBf0wEQCAAKAIAIQIgBARAIAQgAigCDDYCACAEIAIoAhA2AgQLDAELIAcpAwgiE0LkAINC5ABSBEAgBARAIARBADYCBCAEQRQ2AgALDAELAkAgBS0AAEEgcQ0AIBNCEINQRQRAIAUgBygCMDYCFAwBCyAFQRRqEAEaCyAFIAcvATg2AhAgBSAHKAI0NgIYIAcpAyAhEyAFIBUgGH03AyAgBSATNwMoIAUgBS8BDEH5/wNxIANB/wFxQQF0cjsBDCAPQQp2IQNBPyEBAkACQAJAAkAgBSgCECICQQxrDgMAAQIBCyAFQS47AQoMAgtBLSEBIAMNACAFKQMoQv7///8PVg0AIAUpAyBC/v///w9WDQBBFCEBIAJBCEYNACAFLwFSQQFGDQAgBSgCMCICBH8gAi8BBAVBAAtB//8DcSICBEAgAiAFKAIwKAIAakEBay0AAEEvRg0BC0EKIQELIAUgATsBCgsgACAFIA8QNyICQQBIDQAgAiAKRwRAIAQEQCAEQQA2AgQgBEEUNgIACwwBCyAAKAIAIBUQdUF/Sg0BIAAoAgAhAiAEBEAgBCACKAIMNgIAIAQgAigCEDYCBAsLIA0NByAMEAsMBwsgDQ0CIAwQCwwCCyAFIAUvAQxB9/8DcTsBDCAAIAVBgAIQN0EASA0FIAAgEyAEEEEiE1ANBSAAKAIAIBNBABAUQX9MBEAgACgCACECIAQEQCAEIAIoAgw2AgAgBCACKAIQNgIECwwGCyAFKQMgIRIjAEGAQGoiAyQAAkAgElBFBEAgAEEIaiECIBK6IRoDQEF/IQEgACgCACADIBJCgMAAIBJCgMAAVBsiEyACEGVBAEgNAiAAIAMgExAbQQBIDQIgACgCVCAaIBIgE30iErqhIBqjEHsgEkIAUg0ACwtBACEBCyADQYBAayQAIAFBf0oNAUEBIREgAUEcdkEIcUEIRgwCCyAEBEAgBEEANgIEIARBDjYCAAsMBAtBAAtFDQELCyARDQBBfyECAkAgACgCABAfQgBTDQAgFyEUQQAhCkIAIRcjAEHwAGsiESQAAkAgACgCABAfIhVCAFkEQCAUUEUEQANAIAAgACgCQCALIBenQQN0aigCAEEEdGoiAygCBCIBBH8gAQUgAygCAAtBgAQQNyIBQQBIBEBCfyEXDAQLIAFBAEcgCnIhCiAXQgF8IhcgFFINAAsLQn8hFyAAKAIAEB8iGEJ/VwRAIAAoAgAhASAAQQhqBEAgACABKAIMNgIIIAAgASgCEDYCDAsMAgsgEULiABAXIgZFBEAgAEEIagRAIABBADYCDCAAQQ42AggLDAILIBggFX0hEyAVQv////8PViAUQv//A1ZyIApyQQFxBEAgBkGZEkEEECwgBkIsEBggBkEtEA0gBkEtEA0gBkEAEBIgBkEAEBIgBiAUEBggBiAUEBggBiATEBggBiAVEBggBkGUEkEEECwgBkEAEBIgBiAYEBggBkEBEBILIAZBnhJBBBAsIAZBABASIAYgFEL//wMgFEL//wNUG6dB//8DcSIBEA0gBiABEA0gBkF/IBOnIBNC/v///w9WGxASIAZBfyAVpyAVQv7///8PVhsQEiAGIABBJEEgIAAtACgbaigCACIDBH8gAy8BBAVBAAtB//8DcRANIAYtAABFBEAgAEEIagRAIABBADYCDCAAQRQ2AggLIAYQCAwCCyAAIAYoAgQgBi0AAAR+IAYpAxAFQgALEBshASAGEAggAUEASA0BIAMEQCAAIAMoAgAgAzMBBBAbQQBIDQILIBMhFwwBCyAAKAIAIQEgAEEIagRAIAAgASgCDDYCCCAAIAEoAhA2AgwLQn8hFwsgEUHwAGokACAXQgBTDQAgACgCABAfQj+HpyECCyALEAYgAkEASA0BAn8gACgCACIBKAIkQQFHBEAgAUEMagRAIAFBADYCECABQRI2AgwLQX8MAQsgASgCICICQQJPBEAgAUEMagRAIAFBADYCECABQR02AgwLQX8MAQsCQCACQQFHDQAgARAaQQBODQBBfwwBCyABQQBCAEEJEA5Cf1cEQCABQQI2AiRBfwwBCyABQQA2AiRBAAtFDQIgACgCACECIAQEQCAEIAIoAgw2AgAgBCACKAIQNgIECwwBCyALEAYLIAAoAlQQfCAAKAIAEENBfyECDAILIAAoAlQQfAsgABBLQQAhAgsgB0HAwABqJAAgAgtFAEHwgwFCADcDAEHogwFCADcDAEHggwFCADcDAEHYgwFCADcDAEHQgwFCADcDAEHIgwFCADcDAEHAgwFCADcDAEHAgwELoQMBCH8jAEGgAWsiAiQAIAAQMQJAAn8CQCAAKAIAIgFBAE4EQCABQbATKAIASA0BCyACIAE2AhAgAkEgakH2ESACQRBqEHZBASEGIAJBIGohBCACQSBqECIhA0EADAELIAFBAnQiAUGwEmooAgAhBQJ/AkACQCABQcATaigCAEEBaw4CAAEECyAAKAIEIQNB9IIBKAIAIQdBACEBAkACQANAIAMgAUHQ8QBqLQAARwRAQdcAIQQgAUEBaiIBQdcARw0BDAILCyABIgQNAEGw8gAhAwwBC0Gw8gAhAQNAIAEtAAAhCCABQQFqIgMhASAIDQAgAyEBIARBAWsiBA0ACwsgBygCFBogAwwBC0EAIAAoAgRrQQJ0QdjAAGooAgALIgRFDQEgBBAiIQMgBUUEQEEAIQVBASEGQQAMAQsgBRAiQQJqCyEBIAEgA2pBAWoQCSIBRQRAQegSKAIAIQUMAQsgAiAENgIIIAJBrBJBkRIgBhs2AgQgAkGsEiAFIAYbNgIAIAFBqwogAhB2IAAgATYCCCABIQULIAJBoAFqJAAgBQszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQBxogACAAKAIUIAFqNgIUIAILBgBBsIgBCwYAQayIAQsGAEGkiAELBwAgAEEEagsHACAAQQhqCyYBAX8gACgCFCIBBEAgARALCyAAKAIEIQEgAEEEahAxIAAQBiABC6kBAQN/AkAgAC0AACICRQ0AA0AgAS0AACIERQRAIAIhAwwCCwJAIAIgBEYNACACQSByIAIgAkHBAGtBGkkbIAEtAAAiAkEgciACIAJBwQBrQRpJG0YNACAALQAAIQMMAgsgAUEBaiEBIAAtAAEhAiAAQQFqIQAgAg0ACwsgA0H/AXEiAEEgciAAIABBwQBrQRpJGyABLQAAIgBBIHIgACAAQcEAa0EaSRtrC8sGAgJ+An8jAEHgAGsiByQAAkACQAJAAkACQAJAAkACQAJAAkACQCAEDg8AAQoCAwQGBwgICAgICAUICyABQgA3AyAMCQsgACACIAMQESIFQn9XBEAgAUEIaiIBBEAgASAAKAIMNgIAIAEgACgCEDYCBAsMCAsCQCAFUARAIAEpAygiAyABKQMgUg0BIAEgAzcDGCABQQE2AgQgASgCAEUNASAAIAdBKGoQIUF/TARAIAFBCGoiAQRAIAEgACgCDDYCACABIAAoAhA2AgQLDAoLAkAgBykDKCIDQiCDUA0AIAcoAlQgASgCMEYNACABQQhqBEAgAUEANgIMIAFBBzYCCAsMCgsgA0IEg1ANASAHKQNAIAEpAxhRDQEgAUEIagRAIAFBADYCDCABQRU2AggLDAkLIAEoAgQNACABKQMoIgMgASkDICIGVA0AIAUgAyAGfSIDWA0AIAEoAjAhBANAIAECfyAFIAN9IgZC/////w8gBkL/////D1QbIganIQBBACACIAOnaiIIRQ0AGiAEIAggAEHUgAEoAgARAAALIgQ2AjAgASABKQMoIAZ8NwMoIAUgAyAGfCIDVg0ACwsgASABKQMgIAV8NwMgDAgLIAEoAgRFDQcgAiABKQMYIgM3AxggASgCMCEAIAJBADYCMCACIAM3AyAgAiAANgIsIAIgAikDAELsAYQ3AwAMBwsgA0IIWgR+IAIgASgCCDYCACACIAEoAgw2AgRCCAVCfwshBQwGCyABEAYMBQtCfyEFIAApAxgiA0J/VwRAIAFBCGoiAQRAIAEgACgCDDYCACABIAAoAhA2AgQLDAULIAdBfzYCGCAHQo+AgICAAjcDECAHQoyAgIDQATcDCCAHQomAgICgATcDACADQQggBxAkQn+FgyEFDAQLIANCD1gEQCABQQhqBEAgAUEANgIMIAFBEjYCCAsMAwsgAkUNAgJAIAAgAikDACACKAIIEBRBAE4EQCAAEDMiA0J/VQ0BCyABQQhqIgEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwDCyABIAM3AyAMAwsgASkDICEFDAILIAFBCGoEQCABQQA2AgwgAUEcNgIICwtCfyEFCyAHQeAAaiQAIAULjAcCAn4CfyMAQRBrIgckAAJAAkACQAJAAkACQAJAAkACQAJAIAQOEQABAgMFBggICAgICAgIBwgECAsgAUJ/NwMgIAFBADoADyABQQA7AQwgAUIANwMYIAEoAqxAIAEoAqhAKAIMEQEArUIBfSEFDAgLQn8hBSABKAIADQdCACEFIANQDQcgAS0ADQ0HIAFBKGohBAJAA0ACQCAHIAMgBX03AwggASgCrEAgAiAFp2ogB0EIaiABKAKoQCgCHBEAACEIQgAgBykDCCAIQQJGGyAFfCEFAkACQAJAIAhBAWsOAwADAQILIAFBAToADSABKQMgIgNCf1cEQCABBEAgAUEANgIEIAFBFDYCAAsMBQsgAS0ADkUNBCADIAVWDQQgASADNwMYIAFBAToADyACIAQgA6cQBxogASkDGCEFDAwLIAEtAAwNAyAAIARCgMAAEBEiBkJ/VwRAIAEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwECyAGUARAIAFBAToADCABKAKsQCABKAKoQCgCGBEDACABKQMgQn9VDQEgAUIANwMgDAELAkAgASkDIEIAWQRAIAFBADoADgwBCyABIAY3AyALIAEoAqxAIAQgBiABKAKoQCgCFBEPABoLIAMgBVYNAQwCCwsgASgCAA0AIAEEQCABQQA2AgQgAUEUNgIACwsgBVBFBEAgAUEAOgAOIAEgASkDGCAFfDcDGAwIC0J/QgAgASgCABshBQwHCyABKAKsQCABKAKoQCgCEBEBAK1CAX0hBQwGCyABLQAQBEAgAS0ADQRAIAIgAS0ADwR/QQAFQQggASgCFCIAIABBfUsbCzsBMCACIAEpAxg3AyAgAiACKQMAQsgAhDcDAAwHCyACIAIpAwBCt////w+DNwMADAYLIAJBADsBMCACKQMAIQMgAS0ADQRAIAEpAxghBSACIANCxACENwMAIAIgBTcDGEIAIQUMBgsgAiADQrv///8Pg0LAAIQ3AwAMBQsgAS0ADw0EIAEoAqxAIAEoAqhAKAIIEQEArCEFDAQLIANCCFoEfiACIAEoAgA2AgAgAiABKAIENgIEQggFQn8LIQUMAwsgAUUNAiABKAKsQCABKAKoQCgCBBEDACABEDEgARAGDAILIAdBfzYCAEEQIAcQJEI/hCEFDAELIAEEQCABQQA2AgQgAUEUNgIAC0J/IQULIAdBEGokACAFC2MAQcgAEAkiAEUEQEGEhAEoAgAhASACBEAgAiABNgIEIAJBATYCAAsgAA8LIABBADoADCAAQQA6AAQgACACNgIAIABBADYCOCAAQgA3AzAgACABQQkgAUEBa0EJSRs2AgggAAu3fAIefwZ+IAIpAwAhIiAAIAE2AhwgACAiQv////8PICJC/////w9UGz4CICAAQRBqIQECfyAALQAEBEACfyAALQAMQQJ0IQpBfiEEAkACQAJAIAEiBUUNACAFKAIgRQ0AIAUoAiRFDQAgBSgCHCIDRQ0AIAMoAgAgBUcNAAJAAkAgAygCICIGQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyAGQZoFRg0AIAZBKkcNAQsgCkEFSw0AAkACQCAFKAIMRQ0AIAUoAgQiAQRAIAUoAgBFDQELIAZBmgVHDQEgCkEERg0BCyAFQeDAACgCADYCGEF+DAQLIAUoAhBFDQEgAygCJCEEIAMgCjYCJAJAIAMoAhAEQCADEDACQCAFKAIQIgYgAygCECIIIAYgCEkbIgFFDQAgBSgCDCADKAIIIAEQBxogBSAFKAIMIAFqNgIMIAMgAygCCCABajYCCCAFIAUoAhQgAWo2AhQgBSAFKAIQIAFrIgY2AhAgAyADKAIQIAFrIgg2AhAgCA0AIAMgAygCBDYCCEEAIQgLIAYEQCADKAIgIQYMAgsMBAsgAQ0AIApBAXRBd0EAIApBBEsbaiAEQQF0QXdBACAEQQRKG2pKDQAgCkEERg0ADAILAkACQAJAAkACQCAGQSpHBEAgBkGaBUcNASAFKAIERQ0DDAcLIAMoAhRFBEAgA0HxADYCIAwCCyADKAI0QQx0QYDwAWshBAJAIAMoAowBQQJODQAgAygCiAEiAUEBTA0AIAFBBUwEQCAEQcAAciEEDAELQYABQcABIAFBBkYbIARyIQQLIAMoAgQgCGogBEEgciAEIAMoAmgbIgFBH3AgAXJBH3NBCHQgAUGA/gNxQQh2cjsAACADIAMoAhBBAmoiATYCECADKAJoBEAgAygCBCABaiAFKAIwIgFBGHQgAUEIdEGAgPwHcXIgAUEIdkGA/gNxIAFBGHZycjYAACADIAMoAhBBBGo2AhALIAVBATYCMCADQfEANgIgIAUQCiADKAIQDQcgAygCICEGCwJAAkACQAJAIAZBOUYEfyADQaABakHkgAEoAgARAQAaIAMgAygCECIBQQFqNgIQIAEgAygCBGpBHzoAACADIAMoAhAiAUEBajYCECABIAMoAgRqQYsBOgAAIAMgAygCECIBQQFqNgIQIAEgAygCBGpBCDoAAAJAIAMoAhwiAUUEQCADKAIEIAMoAhBqQQA2AAAgAyADKAIQIgFBBWo2AhAgASADKAIEakEAOgAEQQIhBCADKAKIASIBQQlHBEBBBCABQQJIQQJ0IAMoAowBQQFKGyEECyADIAMoAhAiAUEBajYCECABIAMoAgRqIAQ6AAAgAyADKAIQIgFBAWo2AhAgASADKAIEakEDOgAAIANB8QA2AiAgBRAKIAMoAhBFDQEMDQsgASgCJCELIAEoAhwhCSABKAIQIQggASgCLCENIAEoAgAhBiADIAMoAhAiAUEBajYCEEECIQQgASADKAIEaiANQQBHQQF0IAZBAEdyIAhBAEdBAnRyIAlBAEdBA3RyIAtBAEdBBHRyOgAAIAMoAgQgAygCEGogAygCHCgCBDYAACADIAMoAhAiDUEEaiIGNgIQIAMoAogBIgFBCUcEQEEEIAFBAkhBAnQgAygCjAFBAUobIQQLIAMgDUEFajYCECADKAIEIAZqIAQ6AAAgAygCHCgCDCEEIAMgAygCECIBQQFqNgIQIAEgAygCBGogBDoAACADKAIcIgEoAhAEfyADKAIEIAMoAhBqIAEoAhQ7AAAgAyADKAIQQQJqNgIQIAMoAhwFIAELKAIsBEAgBQJ/IAUoAjAhBiADKAIQIQRBACADKAIEIgFFDQAaIAYgASAEQdSAASgCABEAAAs2AjALIANBxQA2AiAgA0EANgIYDAILIAMoAiAFIAYLQcUAaw4jAAQEBAEEBAQEBAQEBAQEBAQEBAQEBAIEBAQEBAQEBAQEBAMECyADKAIcIgEoAhAiBgRAIAMoAgwiCCADKAIQIgQgAS8BFCADKAIYIg1rIglqSQRAA0AgAygCBCAEaiAGIA1qIAggBGsiCBAHGiADIAMoAgwiDTYCEAJAIAMoAhwoAixFDQAgBCANTw0AIAUCfyAFKAIwIQZBACADKAIEIARqIgFFDQAaIAYgASANIARrQdSAASgCABEAAAs2AjALIAMgAygCGCAIajYCGCAFKAIcIgYQMAJAIAUoAhAiBCAGKAIQIgEgASAESxsiAUUNACAFKAIMIAYoAgggARAHGiAFIAUoAgwgAWo2AgwgBiAGKAIIIAFqNgIIIAUgBSgCFCABajYCFCAFIAUoAhAgAWs2AhAgBiAGKAIQIAFrIgE2AhAgAQ0AIAYgBigCBDYCCAsgAygCEA0MIAMoAhghDSADKAIcKAIQIQZBACEEIAkgCGsiCSADKAIMIghLDQALCyADKAIEIARqIAYgDWogCRAHGiADIAMoAhAgCWoiDTYCEAJAIAMoAhwoAixFDQAgBCANTw0AIAUCfyAFKAIwIQZBACADKAIEIARqIgFFDQAaIAYgASANIARrQdSAASgCABEAAAs2AjALIANBADYCGAsgA0HJADYCIAsgAygCHCgCHARAIAMoAhAiBCEJA0ACQCAEIAMoAgxHDQACQCADKAIcKAIsRQ0AIAQgCU0NACAFAn8gBSgCMCEGQQAgAygCBCAJaiIBRQ0AGiAGIAEgBCAJa0HUgAEoAgARAAALNgIwCyAFKAIcIgYQMAJAIAUoAhAiBCAGKAIQIgEgASAESxsiAUUNACAFKAIMIAYoAgggARAHGiAFIAUoAgwgAWo2AgwgBiAGKAIIIAFqNgIIIAUgBSgCFCABajYCFCAFIAUoAhAgAWs2AhAgBiAGKAIQIAFrIgE2AhAgAQ0AIAYgBigCBDYCCAtBACEEQQAhCSADKAIQRQ0ADAsLIAMoAhwoAhwhBiADIAMoAhgiAUEBajYCGCABIAZqLQAAIQEgAyAEQQFqNgIQIAMoAgQgBGogAToAACABBEAgAygCECEEDAELCwJAIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0EANgIYCyADQdsANgIgCwJAIAMoAhwoAiRFDQAgAygCECIEIQkDQAJAIAQgAygCDEcNAAJAIAMoAhwoAixFDQAgBCAJTQ0AIAUCfyAFKAIwIQZBACADKAIEIAlqIgFFDQAaIAYgASAEIAlrQdSAASgCABEAAAs2AjALIAUoAhwiBhAwAkAgBSgCECIEIAYoAhAiASABIARLGyIBRQ0AIAUoAgwgBigCCCABEAcaIAUgBSgCDCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQL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bGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRl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UgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkA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SXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";yo(bo)||(bo=N(bo));function Qa(Zs){try{if(Zs==bo&&ue)return new Uint8Array(ue);var io=_I(Zs);if(io)return io;if(F)return F(Zs);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(Ea){Qi(Ea)}}function gc(Zs,io){var Ea,Hl,Dr;try{Dr=Qa(Zs),Hl=new WebAssembly.Module(Dr),Ea=new WebAssembly.Instance(Hl,io)}catch(di){var On=di.toString();throw ne("failed to compile wasm module: "+On),(On.includes("imported Memory")||On.includes("memory import"))&&ne("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),di}return[Ea,Hl]}function _g(){var Zs={a:Kh};function io(Dr,On){var di=Dr.exports;r.asm=di,Se=r.asm.g,Fn(Se.buffer),Hi=r.asm.W,Sc(r.asm.h),Pr("wasm-instantiate")}if(Rn("wasm-instantiate"),r.instantiateWasm)try{var Ea=r.instantiateWasm(Zs,io);return Ea}catch(Dr){return ne("Module.instantiateWasm callback failed with error: "+Dr),!1}var Hl=gc(bo,Zs);return io(Hl[0]),r.asm}function Nc(Zs){return zt.getFloat32(Zs,!0)}function sA(Zs){return zt.getFloat64(Zs,!0)}function ma(Zs){return zt.getInt16(Zs,!0)}function vu(Zs){return zt.getInt32(Zs,!0)}function li(Zs,io){zt.setInt32(Zs,io,!0)}function Ei(Zs){for(;Zs.length>0;){var io=Zs.shift();if(typeof io=="function"){io(r);continue}var Ea=io.func;typeof Ea=="number"?io.arg===void 0?Hi.get(Ea)():Hi.get(Ea)(io.arg):Ea(io.arg===void 0?null:io.arg)}}function Ws(Zs,io){var Ea=new Date(vu((Zs>>2)*4)*1e3);li((io>>2)*4,Ea.getUTCSeconds()),li((io+4>>2)*4,Ea.getUTCMinutes()),li((io+8>>2)*4,Ea.getUTCHours()),li((io+12>>2)*4,Ea.getUTCDate()),li((io+16>>2)*4,Ea.getUTCMonth()),li((io+20>>2)*4,Ea.getUTCFullYear()-1900),li((io+24>>2)*4,Ea.getUTCDay()),li((io+36>>2)*4,0),li((io+32>>2)*4,0);var Hl=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Hl)/(1e3*60*60*24)|0;return li((io+28>>2)*4,Dr),Ws.GMTString||(Ws.GMTString=jt("GMT")),li((io+40>>2)*4,Ws.GMTString),io}function Xa(Zs,io){return Ws(Zs,io)}function ac(Zs,io,Ea){Xt.copyWithin(Zs,io,io+Ea)}function Ql(Zs){try{return Se.grow(Zs-Fr.byteLength+65535>>>16),Fn(Se.buffer),1}catch{}}function Oc(Zs){var io=Xt.length;Zs=Zs>>>0;var Ea=2147483648;if(Zs>Ea)return!1;for(var Hl=1;Hl<=4;Hl*=2){var Dr=io*(1+.2/Hl);Dr=Math.min(Dr,Zs+100663296);var On=Math.min(Ea,Dt(Math.max(Zs,Dr),65536)),di=Ql(On);if(di)return!0}return!1}function vg(Zs){fe(Zs)}function Kl(Zs){var io=Date.now()/1e3|0;return Zs&&li((Zs>>2)*4,io),io}function Ju(){if(Ju.called)return;Ju.called=!0;var Zs=new Date().getFullYear(),io=new Date(Zs,0,1),Ea=new Date(Zs,6,1),Hl=io.getTimezoneOffset(),Dr=Ea.getTimezoneOffset(),On=Math.max(Hl,Dr);li((Ca()>>2)*4,On*60),li((Oa()>>2)*4,+(Hl!=Dr));function di(WA){var If=WA.toTimeString().match(/\(([A-Za-z ]+)\)$/);return If?If[1]:"GMT"}var aa=di(io),Bo=di(Ea),us=jt(aa),Xl=jt(Bo);Dr>2)*4,us),li((Fs()+4>>2)*4,Xl)):(li((Fs()>>2)*4,Xl),li((Fs()+4>>2)*4,us))}function Da(Zs){Ju();var io=Date.UTC(vu((Zs+20>>2)*4)+1900,vu((Zs+16>>2)*4),vu((Zs+12>>2)*4),vu((Zs+8>>2)*4),vu((Zs+4>>2)*4),vu((Zs>>2)*4),0),Ea=new Date(io);li((Zs+24>>2)*4,Ea.getUTCDay());var Hl=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Hl)/(1e3*60*60*24)|0;return li((Zs+28>>2)*4,Dr),Ea.getTime()/1e3|0}var fu=typeof atob=="function"?atob:function(Zs){var io="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ea="",Hl,Dr,On,di,aa,Bo,us,Xl=0;Zs=Zs.replace(/[^A-Za-z0-9\+\/\=]/g,"");do di=io.indexOf(Zs.charAt(Xl++)),aa=io.indexOf(Zs.charAt(Xl++)),Bo=io.indexOf(Zs.charAt(Xl++)),us=io.indexOf(Zs.charAt(Xl++)),Hl=di<<2|aa>>4,Dr=(aa&15)<<4|Bo>>2,On=(Bo&3)<<6|us,Ea=Ea+String.fromCharCode(Hl),Bo!==64&&(Ea=Ea+String.fromCharCode(Dr)),us!==64&&(Ea=Ea+String.fromCharCode(On));while(Xl0||(ga(),Or>0))return;function io(){QA||(QA=!0,r.calledRun=!0,!De&&(Ya(),n(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),Gc()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),io()},1)):io()}if(r.run=ff,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return ff(),t}}();typeof SAt=="object"&&typeof GAr=="object"?GAr.exports=xAr:typeof define=="function"&&define.amd?define([],function(){return xAr}):typeof SAt=="object"&&(SAt.createModule=xAr)});var FZn=H(Qve=>{"use strict";Object.defineProperty(Qve,"__esModule",{value:!0});Qve.makeInterface=Qve.Errors=void 0;var b$=["number","number"],FAr;(function(e){e[e.ZIP_ER_OK=0]="ZIP_ER_OK",e[e.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",e[e.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",e[e.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",e[e.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",e[e.ZIP_ER_READ=5]="ZIP_ER_READ",e[e.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",e[e.ZIP_ER_CRC=7]="ZIP_ER_CRC",e[e.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",e[e.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",e[e.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",e[e.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",e[e.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",e[e.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",e[e.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",e[e.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",e[e.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",e[e.ZIP_ER_EOF=17]="ZIP_ER_EOF",e[e.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",e[e.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",e[e.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",e[e.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",e[e.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",e[e.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",e[e.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",e[e.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",e[e.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",e[e.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",e[e.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",e[e.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",e[e.ZIP_ER_TELL=30]="ZIP_ER_TELL",e[e.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(FAr||(Qve.Errors=FAr={}));var gOo=e=>({get HEAPU8(){return e.HEAPU8},errors:FAr,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:e._malloc(1),uint32S:e._malloc(4),malloc:e._malloc,free:e._free,getValue:e.getValue,openFromSource:e.cwrap("zip_open_from_source","number",["number","number","number"]),close:e.cwrap("zip_close","number",["number"]),discard:e.cwrap("zip_discard",null,["number"]),getError:e.cwrap("zip_get_error","number",["number"]),getName:e.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:e.cwrap("zip_get_num_entries","number",["number","number"]),delete:e.cwrap("zip_delete","number",["number","number"]),statIndex:e.cwrap("zip_stat_index","number",["number",...b$,"number","number"]),fopenIndex:e.cwrap("zip_fopen_index","number",["number",...b$,"number"]),fread:e.cwrap("zip_fread","number",["number","number","number","number"]),fclose:e.cwrap("zip_fclose","number",["number"]),dir:{add:e.cwrap("zip_dir_add","number",["number","string"])},file:{add:e.cwrap("zip_file_add","number",["number","string","number","number"]),getError:e.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:e.cwrap("zip_file_get_external_attributes","number",["number",...b$,"number","number","number"]),setExternalAttributes:e.cwrap("zip_file_set_external_attributes","number",["number",...b$,"number","number","number"]),setMtime:e.cwrap("zip_file_set_mtime","number",["number",...b$,"number","number"]),setCompression:e.cwrap("zip_set_file_compression","number",["number",...b$,"number","number"])},ext:{countSymlinks:e.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:e.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:e.cwrap("zip_error_strerror","string",["number"])},name:{locate:e.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:e.cwrap("zip_source_buffer_create","number",["number",...b$,"number","number"]),fromBuffer:e.cwrap("zip_source_buffer","number",["number","number",...b$,"number"]),free:e.cwrap("zip_source_free",null,["number"]),keep:e.cwrap("zip_source_keep",null,["number"]),open:e.cwrap("zip_source_open","number",["number"]),close:e.cwrap("zip_source_close","number",["number"]),seek:e.cwrap("zip_source_seek","number",["number",...b$,"number"]),tell:e.cwrap("zip_source_tell","number",["number"]),read:e.cwrap("zip_source_read","number",["number","number","number"]),error:e.cwrap("zip_source_error","number",["number"])},struct:{statS:e.cwrap("zipstruct_statS","number",[]),statSize:e.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:e.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:e.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:e.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:e.cwrap("zipstruct_stat_crc","number",["number"]),errorS:e.cwrap("zipstruct_errorS","number",[]),errorCodeZip:e.cwrap("zipstruct_error_code_zip","number",["number"])}});Qve.makeInterface=gOo});var LZn=H(O5e=>{"use strict";Object.defineProperty(O5e,"__esModule",{value:!0});O5e.ZipOpenFS=void 0;O5e.getArchivePart=LAr;var AOo=Io(),ZAr=Io(),ZZn=u8();function LAr(e,t){let r=e.indexOf(t);if(r<=0)return null;let n=r;for(;r>=0&&(n=r+t.length,e[n]!==ZAr.ppath.sep);){if(e[r-1]===ZAr.ppath.sep)return null;r=e.indexOf(t,n)}return e.length>n&&e[n]!==ZAr.ppath.sep?null:e.slice(0,n)}var VAr=class e extends AOo.MountFS{static async openPromise(t,r){let n=new e(r);try{return await t(n)}finally{n.saveAndClose()}}constructor(t={}){let r=t.fileExtensions,n=t.readOnlyArchives,a=typeof r>"u"?A=>LAr(A,".zip"):A=>{for(let f of r){let I=LAr(A,f);if(I)return I}return null},o=(A,f)=>new ZZn.ZipFS(f,{baseFs:A,readOnly:n,stats:A.statSync(f),customZipImplementation:t.customZipImplementation}),l=async(A,f)=>{let I={baseFs:A,readOnly:n,stats:await A.statPromise(f),customZipImplementation:t.customZipImplementation};return()=>new ZZn.ZipFS(f,I)};super({...t,factorySync:o,factoryPromise:l,getMountPoint:a})}};O5e.ZipOpenFS=VAr});var OAr=H(Xve=>{"use strict";Object.defineProperty(Xve,"__esModule",{value:!0});Xve.LibZipImpl=Xve.LibzipError=void 0;var dOo=kAr(),vAt=class extends Error{constructor(t,r){super(t),this.name="Libzip Error",this.code=r}};Xve.LibzipError=vAt;var WAr=class{constructor(t){this.filesShouldBeCached=!0;let r="buffer"in t?t.buffer:t.baseFs.readFileSync(t.path);this.libzip=(0,dOo.getInstance)();let n=this.libzip.malloc(4);try{let l=0;t.readOnly&&(l|=this.libzip.ZIP_RDONLY);let A=this.allocateUnattachedSource(r);try{this.zip=this.libzip.openFromSource(A,l,n),this.lzSource=A}catch(f){throw this.libzip.source.free(A),f}if(this.zip===0){let f=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(f,this.libzip.getValue(n,"i32")),this.makeLibzipError(f)}}finally{this.libzip.free(n)}let a=this.libzip.getNumEntries(this.zip,0),o=new Array(a);for(let l=0;l>>0,o=this.libzip.struct.statMtime(r)>>>0,l=this.libzip.struct.statCrc(r)>>>0;return{size:a,mtime:o,crc:l}}makeLibzipError(t){let r=this.libzip.struct.errorCodeZip(t),n=this.libzip.error.strerror(t),a=new vAt(n,this.libzip.errors[r]);if(r===this.libzip.errors.ZIP_ER_CHANGED)throw new Error(`Assertion failed: Unexpected libzip error: ${a.message}`);return a}setFileSource(t,r,n){let a=this.allocateSource(n);try{let o=this.libzip.file.add(this.zip,t,a,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(r!==null&&this.libzip.file.setCompression(this.zip,o,0,r[0],r[1])===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return o}catch(o){throw this.libzip.source.free(a),o}}setMtime(t,r){if(this.libzip.file.setMtime(this.zip,t,0,r,0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}getExternalAttributes(t){if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let n=this.libzip.getValue(this.libzip.uint08S,"i8")>>>0,a=this.libzip.getValue(this.libzip.uint32S,"i32")>>>0;return[n,a]}setExternalAttributes(t,r,n){if(this.libzip.file.setExternalAttributes(this.zip,t,0,0,r,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}locate(t){return this.libzip.name.locate(this.zip,t,0)}getFileSource(t){let r=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,t,0,0,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.libzip.struct.statCompSize(r),o=this.libzip.struct.statCompMethod(r),l=this.libzip.malloc(a);try{let A=this.libzip.fopenIndex(this.zip,t,0,this.libzip.ZIP_FL_COMPRESSED);if(A===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let f=this.libzip.fread(A,l,a,0);if(f===-1)throw this.makeLibzipError(this.libzip.file.getError(A));if(fa)throw new Error("Overread");let I=this.libzip.HEAPU8.subarray(l,l+a);return{data:Buffer.from(I),compressionMethod:o}}finally{this.libzip.fclose(A)}}finally{this.libzip.free(l)}}deleteEntry(t){if(this.libzip.delete(this.zip,t)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}addDirectory(t){let r=this.libzip.dir.add(this.zip,t);if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return r}getBufferAndClose(){try{if(this.libzip.source.keep(this.lzSource),this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.libzip.source.open(this.lzSource)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_END)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let t=this.libzip.source.tell(this.lzSource);if(t===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_SET)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let r=this.libzip.malloc(t);if(!r)throw new Error("Couldn't allocate enough memory");try{let n=this.libzip.source.read(this.lzSource,r,t);if(n===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(nt)throw new Error("Overread");let a=Buffer.from(this.libzip.HEAPU8.subarray(r,r+t));return process.env.YARN_IS_TEST_ENV&&process.env.YARN_ZIP_DATA_EPILOGUE&&(a=Buffer.concat([a,Buffer.from(process.env.YARN_ZIP_DATA_EPILOGUE)])),a}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource)}}allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libzip.malloc(t.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,t.byteLength).set(t),{buffer:r,byteLength:t.byteLength}}allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:n,byteLength:a}=this.allocateBuffer(t),o=this.libzip.source.fromUnattachedBuffer(n,a,0,1,r);if(o===0)throw this.libzip.free(r),this.makeLibzipError(r);return o}allocateSource(t){let{buffer:r,byteLength:n}=this.allocateBuffer(t),a=this.libzip.source.fromBuffer(this.zip,r,n,0,1);if(a===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return a}discard(){this.libzip.discard(this.zip)}};Xve.LibZipImpl=WAr});var wAt=H(Pv=>{"use strict";Object.defineProperty(Pv,"__esModule",{value:!0});Pv.ZipFS=Pv.DEFAULT_COMPRESSION_LEVEL=Pv.DEFLATE=Pv.STORE=Pv.ZIP_UNIX=void 0;Pv.makeEmptyArchive=BAt;var pOo=(Wa(),vi(Va)),fOo=Io(),IOo=Io(),hOo=Io(),PAr=Io(),fA=Io(),Bh=Io(),q9=Et("fs"),VZn=Et("stream"),mOo=Et("util"),WZn=pOo.__importDefault(Et("zlib")),COo=OAr();Pv.ZIP_UNIX=3;Pv.STORE=0;Pv.DEFLATE=8;Pv.DEFAULT_COMPRESSION_LEVEL="mixed";function _Oo(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof e=="number"&&Number.isFinite(e))return e<0?Date.now()/1e3:e;if(mOo.types.isDate(e))return e.getTime()/1e3;throw new Error("Invalid time")}function BAt(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var MAr=class extends fOo.BasePortableFakeFS{constructor(t,r={}){super(),this.listings=new Map,this.entries=new Map,this.fileSources=new Map,this.fds=new Map,this.nextFd=0,this.ready=!1,this.readOnly=!1,r.readOnly&&(this.readOnly=!0);let n=r;this.level=typeof n.level<"u"?n.level:Pv.DEFAULT_COMPRESSION_LEVEL;let a=r.customZipImplementation??COo.LibZipImpl;if(typeof t=="string"){let{baseFs:l=new IOo.NodeFS}=n;this.baseFs=l,this.path=t}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof t=="string")try{this.stats=this.baseFs.statSync(t)}catch(l){if(l.code==="ENOENT"&&n.create)this.stats=fA.statUtils.makeDefaultStats();else throw l}else this.stats=fA.statUtils.makeDefaultStats();typeof t=="string"?r.create?this.zipImpl=new a({buffer:BAt(),readOnly:this.readOnly}):this.zipImpl=new a({path:t,baseFs:this.baseFs,readOnly:this.readOnly,size:this.stats.size}):this.zipImpl=new a({buffer:t??BAt(),readOnly:this.readOnly}),this.listings.set(Bh.PortablePath.root,new Set);let o=this.zipImpl.getListings();for(let l=0;l{this.closeSync(l)};return(0,hOo.opendir)(this,n,o,{onClose:A})}async readPromise(t,r,n,a,o){return this.readSync(t,r,n,a,o)}readSync(t,r,n=0,a=r.byteLength,o=-1){let l=this.fds.get(t);if(typeof l>"u")throw fA.errors.EBADF("read");let A=o===-1||o===null?l.cursor:o,f=this.readFileSync(l.p);f.copy(r,n,A,A+a);let I=Math.max(0,Math.min(f.length-A,a));return(o===-1||o===null)&&(l.cursor+=I),I}async writePromise(t,r,n,a,o){return typeof r=="string"?this.writeSync(t,r,o):this.writeSync(t,r,n,a,o)}writeSync(t,r,n,a,o){throw typeof this.fds.get(t)>"u"?fA.errors.EBADF("read"):new Error("Unimplemented")}async closePromise(t){return this.closeSync(t)}closeSync(t){if(typeof this.fds.get(t)>"u")throw fA.errors.EBADF("read");this.fds.delete(t)}createReadStream(t,{encoding:r}={}){if(t===null)throw new Error("Unimplemented");let n=this.openSync(t,"r"),a=Object.assign(new VZn.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(l,A)=>{clearImmediate(o),this.closeSync(n),A(l)}}),{close(){a.destroy()},bytesRead:0,path:t,pending:!1}),o=setImmediate(async()=>{try{let l=await this.readFilePromise(t,r);a.bytesRead=l.length,a.end(l)}catch(l){a.destroy(l)}});return a}createWriteStream(t,{encoding:r}={}){if(this.readOnly)throw fA.errors.EROFS(`open '${t}'`);if(t===null)throw new Error("Unimplemented");let n=[],a=this.openSync(t,"w"),o=Object.assign(new VZn.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(l,A)=>{try{l?A(l):(this.writeFileSync(t,Buffer.concat(n),r),A(null))}catch(f){A(f)}finally{this.closeSync(a)}}}),{close(){o.destroy()},bytesWritten:0,path:t,pending:!1});return o.on("data",l=>{let A=Buffer.from(l);o.bytesWritten+=A.length,n.push(A)}),o}async realpathPromise(t){return this.realpathSync(t)}realpathSync(t){let r=this.resolveFilename(`lstat '${t}'`,t);if(!this.entries.has(r)&&!this.listings.has(r))throw fA.errors.ENOENT(`lstat '${t}'`);return r}async existsPromise(t){return this.existsSync(t)}existsSync(t){if(!this.ready)throw fA.errors.EBUSY(`archive closed, existsSync '${t}'`);if(this.symlinkCount===0){let n=Bh.ppath.resolve(Bh.PortablePath.root,t);return this.entries.has(n)||this.listings.has(n)}let r;try{r=this.resolveFilename(`stat '${t}'`,t,void 0,!1)}catch{return!1}return r===void 0?!1:this.entries.has(r)||this.listings.has(r)}async accessPromise(t,r){return this.accessSync(t,r)}accessSync(t,r=q9.constants.F_OK){let n=this.resolveFilename(`access '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw fA.errors.ENOENT(`access '${t}'`);if(this.readOnly&&r&q9.constants.W_OK)throw fA.errors.EROFS(`access '${t}'`)}async statPromise(t,r={bigint:!1}){return r.bigint?this.statSync(t,{bigint:!0}):this.statSync(t)}statSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`stat '${t}'`,t,void 0,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw fA.errors.ENOENT(`stat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw fA.errors.ENOTDIR(`stat '${t}'`);return this.statImpl(`stat '${t}'`,n,r)}}async fstatPromise(t,r){return this.fstatSync(t,r)}fstatSync(t,r){let n=this.fds.get(t);if(typeof n>"u")throw fA.errors.EBADF("fstatSync");let{p:a}=n,o=this.resolveFilename(`stat '${a}'`,a);if(!this.entries.has(o)&&!this.listings.has(o))throw fA.errors.ENOENT(`stat '${a}'`);if(a[a.length-1]==="/"&&!this.listings.has(o))throw fA.errors.ENOTDIR(`stat '${a}'`);return this.statImpl(`fstat '${a}'`,o,r)}async lstatPromise(t,r={bigint:!1}){return r.bigint?this.lstatSync(t,{bigint:!0}):this.lstatSync(t)}lstatSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`lstat '${t}'`,t,!1,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw fA.errors.ENOENT(`lstat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw fA.errors.ENOTDIR(`lstat '${t}'`);return this.statImpl(`lstat '${t}'`,n,r)}}statImpl(t,r,n={}){let a=this.entries.get(r);if(typeof a<"u"){let o=this.zipImpl.stat(a),l=o.crc,A=o.size,f=o.mtime*1e3,I=this.stats.uid,C=this.stats.gid,b=512,E=Math.ceil(o.size/b),N=f,B=f,F=f,Q=new Date(N),J=new Date(B),ae=new Date(F),ne=new Date(f),ce=this.listings.has(r)?q9.constants.S_IFDIR:this.isSymbolicLink(a)?q9.constants.S_IFLNK:q9.constants.S_IFREG,fe=ce===q9.constants.S_IFDIR?493:420,ue=ce|this.getUnixMode(a,fe)&511,de=Object.assign(new fA.statUtils.StatEntry,{uid:I,gid:C,size:A,blksize:b,blocks:E,atime:Q,birthtime:J,ctime:ae,mtime:ne,atimeMs:N,birthtimeMs:B,ctimeMs:F,mtimeMs:f,mode:ue,crc:l});return n.bigint===!0?fA.statUtils.convertToBigIntStats(de):de}if(this.listings.has(r)){let o=this.stats.uid,l=this.stats.gid,A=0,f=512,I=0,C=this.stats.mtimeMs,b=this.stats.mtimeMs,E=this.stats.mtimeMs,N=this.stats.mtimeMs,B=new Date(C),F=new Date(b),Q=new Date(E),J=new Date(N),ae=q9.constants.S_IFDIR|493,ce=Object.assign(new fA.statUtils.StatEntry,{uid:o,gid:l,size:A,blksize:f,blocks:I,atime:B,birthtime:F,ctime:Q,mtime:J,atimeMs:C,birthtimeMs:b,ctimeMs:E,mtimeMs:N,mode:ae,crc:0});return n.bigint===!0?fA.statUtils.convertToBigIntStats(ce):ce}throw new Error("Unreachable")}getUnixMode(t,r){let[n,a]=this.zipImpl.getExternalAttributes(t);return n!==Pv.ZIP_UNIX?r:a>>>16}registerListing(t){let r=this.listings.get(t);if(r)return r;this.registerListing(Bh.ppath.dirname(t)).add(Bh.ppath.basename(t));let a=new Set;return this.listings.set(t,a),a}registerEntry(t,r){this.registerListing(Bh.ppath.dirname(t)).add(Bh.ppath.basename(t)),this.entries.set(t,r)}unregisterListing(t){this.listings.delete(t),this.listings.get(Bh.ppath.dirname(t))?.delete(Bh.ppath.basename(t))}unregisterEntry(t){this.unregisterListing(t);let r=this.entries.get(t);this.entries.delete(t),!(typeof r>"u")&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(t,r){this.unregisterEntry(t),this.zipImpl.deleteEntry(r)}resolveFilename(t,r,n=!0,a=!0){if(!this.ready)throw fA.errors.EBUSY(`archive closed, ${t}`);let o=Bh.ppath.resolve(Bh.PortablePath.root,r);if(o==="/")return Bh.PortablePath.root;let l=this.entries.get(o);if(n&&l!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(l)){let A=this.getFileSource(l).toString();return this.resolveFilename(t,Bh.ppath.resolve(Bh.ppath.dirname(o),A),!0,a)}else return o;for(;;){let A=this.resolveFilename(t,Bh.ppath.dirname(o),!0,a);if(A===void 0)return A;let f=this.listings.has(A),I=this.entries.has(A);if(!f&&!I){if(a===!1)return;throw fA.errors.ENOENT(t)}if(!f)throw fA.errors.ENOTDIR(t);if(o=Bh.ppath.resolve(A,Bh.ppath.basename(o)),!n||this.symlinkCount===0)break;let C=this.zipImpl.locate(o.slice(1));if(C===-1)break;if(this.isSymbolicLink(C)){let b=this.getFileSource(C).toString();o=Bh.ppath.resolve(Bh.ppath.dirname(o),b)}else break}return o}setFileSource(t,r){let n=Buffer.isBuffer(r)?r:Buffer.from(r),a=Bh.ppath.relative(Bh.PortablePath.root,t),o=null;this.level!=="mixed"&&(o=[this.level===0?Pv.STORE:Pv.DEFLATE,this.level]);let l=this.zipImpl.setFileSource(a,o,n);return this.fileSources.set(l,n),l}isSymbolicLink(t){if(this.symlinkCount===0)return!1;let[r,n]=this.zipImpl.getExternalAttributes(t);return r!==Pv.ZIP_UNIX?!1:(n>>>16&q9.constants.S_IFMT)===q9.constants.S_IFLNK}getFileSource(t,r={asyncDecompress:!1}){let n=this.fileSources.get(t);if(typeof n<"u")return n;let{data:a,compressionMethod:o}=this.zipImpl.getFileSource(t);if(o===Pv.STORE)return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,a),a;if(o===Pv.DEFLATE){if(r.asyncDecompress)return new Promise((l,A)=>{WZn.default.inflateRaw(a,(f,I)=>{f?A(f):(this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,I),l(I))})});{let l=WZn.default.inflateRawSync(a);return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,l),l}}else throw new Error(`Unsupported compression method: ${o}`)}async fchmodPromise(t,r){return this.chmodPromise(this.fdToPath(t,"fchmod"),r)}fchmodSync(t,r){return this.chmodSync(this.fdToPath(t,"fchmodSync"),r)}async chmodPromise(t,r){return this.chmodSync(t,r)}chmodSync(t,r){if(this.readOnly)throw fA.errors.EROFS(`chmod '${t}'`);r&=493;let n=this.resolveFilename(`chmod '${t}'`,t,!1),a=this.entries.get(n);if(typeof a>"u")throw new Error(`Assertion failed: The entry should have been registered (${n})`);let l=this.getUnixMode(a,q9.constants.S_IFREG|0)&-512|r;this.zipImpl.setExternalAttributes(a,Pv.ZIP_UNIX,l<<16)}async fchownPromise(t,r,n){return this.chownPromise(this.fdToPath(t,"fchown"),r,n)}fchownSync(t,r,n){return this.chownSync(this.fdToPath(t,"fchownSync"),r,n)}async chownPromise(t,r,n){return this.chownSync(t,r,n)}chownSync(t,r,n){throw new Error("Unimplemented")}async renamePromise(t,r){return this.renameSync(t,r)}renameSync(t,r){throw new Error("Unimplemented")}async copyFilePromise(t,r,n){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=await this.getFileSource(a,{asyncDecompress:!0}),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}copyFileSync(t,r,n=0){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=this.getFileSource(a),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}prepareCopyFile(t,r,n=0){if(this.readOnly)throw fA.errors.EROFS(`copyfile '${t} -> '${r}'`);if(n&q9.constants.COPYFILE_FICLONE_FORCE)throw fA.errors.ENOSYS("unsupported clone operation",`copyfile '${t}' -> ${r}'`);let a=this.resolveFilename(`copyfile '${t} -> ${r}'`,t),o=this.entries.get(a);if(typeof o>"u")throw fA.errors.EINVAL(`copyfile '${t}' -> '${r}'`);let l=this.resolveFilename(`copyfile '${t}' -> ${r}'`,r),A=this.entries.get(l);if(n&(q9.constants.COPYFILE_EXCL|q9.constants.COPYFILE_FICLONE_FORCE)&&typeof A<"u")throw fA.errors.EEXIST(`copyfile '${t}' -> '${r}'`);return{indexSource:o,resolvedDestP:l,indexDest:A}}async appendFilePromise(t,r,n){if(this.readOnly)throw fA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFilePromise(t,r,n)}appendFileSync(t,r,n={}){if(this.readOnly)throw fA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFileSync(t,r,n)}fdToPath(t,r){let n=this.fds.get(t)?.p;if(typeof n>"u")throw fA.errors.EBADF(r);return n}async writeFilePromise(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(l,{asyncDecompress:!0}),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&await this.chmodPromise(A,o)}writeFileSync(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(l),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&this.chmodSync(A,o)}prepareWriteFile(t,r){if(typeof t=="number"&&(t=this.fdToPath(t,"read")),this.readOnly)throw fA.errors.EROFS(`open '${t}'`);let n=this.resolveFilename(`open '${t}'`,t);if(this.listings.has(n))throw fA.errors.EISDIR(`open '${t}'`);let a=null,o=null;typeof r=="string"?a=r:typeof r=="object"&&({encoding:a=null,mode:o=null}=r);let l=this.entries.get(n);return{encoding:a,mode:o,resolvedP:n,index:l}}async unlinkPromise(t){return this.unlinkSync(t)}unlinkSync(t){if(this.readOnly)throw fA.errors.EROFS(`unlink '${t}'`);let r=this.resolveFilename(`unlink '${t}'`,t);if(this.listings.has(r))throw fA.errors.EISDIR(`unlink '${t}'`);let n=this.entries.get(r);if(typeof n>"u")throw fA.errors.EINVAL(`unlink '${t}'`);this.deleteEntry(r,n)}async utimesPromise(t,r,n){return this.utimesSync(t,r,n)}utimesSync(t,r,n){if(this.readOnly)throw fA.errors.EROFS(`utimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t);this.utimesImpl(a,n)}async lutimesPromise(t,r,n){return this.lutimesSync(t,r,n)}lutimesSync(t,r,n){if(this.readOnly)throw fA.errors.EROFS(`lutimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t,!1);this.utimesImpl(a,n)}utimesImpl(t,r){this.listings.has(t)&&(this.entries.has(t)||this.hydrateDirectory(t));let n=this.entries.get(t);if(n===void 0)throw new Error("Unreachable");this.zipImpl.setMtime(n,_Oo(r))}async mkdirPromise(t,r){return this.mkdirSync(t,r)}mkdirSync(t,{mode:r=493,recursive:n=!1}={}){if(n)return this.mkdirpSync(t,{chmod:r});if(this.readOnly)throw fA.errors.EROFS(`mkdir '${t}'`);let a=this.resolveFilename(`mkdir '${t}'`,t);if(this.entries.has(a)||this.listings.has(a))throw fA.errors.EEXIST(`mkdir '${t}'`);this.hydrateDirectory(a),this.chmodSync(a,r)}async rmdirPromise(t,r){return this.rmdirSync(t,r)}rmdirSync(t,{recursive:r=!1}={}){if(this.readOnly)throw fA.errors.EROFS(`rmdir '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rmdir '${t}'`,t),a=this.listings.get(n);if(!a)throw fA.errors.ENOTDIR(`rmdir '${t}'`);if(a.size>0)throw fA.errors.ENOTEMPTY(`rmdir '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw fA.errors.EINVAL(`rmdir '${t}'`);this.deleteEntry(t,o)}async rmPromise(t,r){return this.rmSync(t,r)}rmSync(t,{recursive:r=!1}={}){if(this.readOnly)throw fA.errors.EROFS(`rm '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rm '${t}'`,t),a=this.listings.get(n);if(!a)throw fA.errors.ENOTDIR(`rm '${t}'`);if(a.size>0)throw fA.errors.ENOTEMPTY(`rm '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw fA.errors.EINVAL(`rm '${t}'`);this.deleteEntry(t,o)}hydrateDirectory(t){let r=this.zipImpl.addDirectory(Bh.ppath.relative(Bh.PortablePath.root,t));return this.registerListing(t),this.registerEntry(t,r),r}async linkPromise(t,r){return this.linkSync(t,r)}linkSync(t,r){throw fA.errors.EOPNOTSUPP(`link '${t}' -> '${r}'`)}async symlinkPromise(t,r){return this.symlinkSync(t,r)}symlinkSync(t,r){if(this.readOnly)throw fA.errors.EROFS(`symlink '${t}' -> '${r}'`);let n=this.resolveFilename(`symlink '${t}' -> '${r}'`,r);if(this.listings.has(n))throw fA.errors.EISDIR(`symlink '${t}' -> '${r}'`);if(this.entries.has(n))throw fA.errors.EEXIST(`symlink '${t}' -> '${r}'`);let a=this.setFileSource(n,t);this.registerEntry(n,a),this.zipImpl.setExternalAttributes(a,Pv.ZIP_UNIX,(q9.constants.S_IFLNK|511)<<16),this.symlinkCount+=1}async readFilePromise(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=await this.readFileBuffer(t,{asyncDecompress:!0});return r?n.toString(r):n}readFileSync(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=this.readFileBuffer(t);return r?n.toString(r):n}readFileBuffer(t,r={asyncDecompress:!1}){typeof t=="number"&&(t=this.fdToPath(t,"read"));let n=this.resolveFilename(`open '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw fA.errors.ENOENT(`open '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(n))throw fA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(n))throw fA.errors.EISDIR("read");let a=this.entries.get(n);if(a===void 0)throw new Error("Unreachable");return this.getFileSource(a,r)}async readdirPromise(t,r){return this.readdirSync(t,r)}readdirSync(t,r){let n=this.resolveFilename(`scandir '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw fA.errors.ENOENT(`scandir '${t}'`);let a=this.listings.get(n);if(!a)throw fA.errors.ENOTDIR(`scandir '${t}'`);if(r?.recursive)if(r?.withFileTypes){let o=Array.from(a,l=>Object.assign(this.statImpl("lstat",Bh.ppath.join(t,l)),{name:l,path:Bh.PortablePath.dot,parentPath:Bh.PortablePath.dot}));for(let l of o){if(!l.isDirectory())continue;let A=Bh.ppath.join(l.path,l.name),f=this.listings.get(Bh.ppath.join(n,A));for(let I of f)o.push(Object.assign(this.statImpl("lstat",Bh.ppath.join(t,A,I)),{name:I,path:A,parentPath:A}))}return o}else{let o=[...a];for(let l of o){let A=this.listings.get(Bh.ppath.join(n,l));if(!(typeof A>"u"))for(let f of A)o.push(Bh.ppath.join(l,f))}return o}else return r?.withFileTypes?Array.from(a,o=>Object.assign(this.statImpl("lstat",Bh.ppath.join(t,o)),{name:o,path:void 0,parentPath:void 0})):[...a]}async readlinkPromise(t){let r=this.prepareReadlink(t);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(t){let r=this.prepareReadlink(t);return this.getFileSource(r).toString()}prepareReadlink(t){let r=this.resolveFilename(`readlink '${t}'`,t,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw fA.errors.ENOENT(`readlink '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(r))throw fA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(r))throw fA.errors.EINVAL(`readlink '${t}'`);let n=this.entries.get(r);if(n===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(n))throw fA.errors.EINVAL(`readlink '${t}'`);return n}async truncatePromise(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw fA.errors.EINVAL(`open '${t}'`);let o=await this.getFileSource(a,{asyncDecompress:!0}),l=Buffer.alloc(r,0);return o.copy(l),await this.writeFilePromise(t,l)}truncateSync(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw fA.errors.EINVAL(`open '${t}'`);let o=this.getFileSource(a),l=Buffer.alloc(r,0);return o.copy(l),this.writeFileSync(t,l)}async ftruncatePromise(t,r){return this.truncatePromise(this.fdToPath(t,"ftruncate"),r)}ftruncateSync(t,r){return this.truncateSync(this.fdToPath(t,"ftruncateSync"),r)}watch(t,r,n){let a;switch(typeof r){case"function":case"string":case"undefined":a=!0;break;default:({persistent:a=!0}=r);break}if(!a)return{on:()=>{},close:()=>{}};let o=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(o)}}}watchFile(t,r,n){let a=Bh.ppath.resolve(Bh.PortablePath.root,t);return(0,PAr.watchFile)(this,a,r,n)}unwatchFile(t,r){let n=Bh.ppath.resolve(Bh.PortablePath.root,t);return(0,PAr.unwatchFile)(this,n,r)}};Pv.ZipFS=MAr});var OZn=H(HAr=>{"use strict";Object.defineProperty(HAr,"__esModule",{value:!0});HAr.mountMemoryDrive=SOo;var yOo=(Wa(),vi(Va)),TAt=Io(),bOo=yOo.__importDefault(Et("fs")),EOo=wAt();function SOo(e,t,r=Buffer.alloc(0),n){let a=new EOo.ZipFS(r),o=b=>b===t||b.startsWith(`${t}/`)?b.slice(0,t.length):null,l=async(b,E)=>()=>a,A=(b,E)=>a,f={...e},I=new TAt.NodeFS(f),C=new TAt.MountFS({baseFs:I,getMountPoint:o,factoryPromise:l,factorySync:A,magicByte:21,maxAge:1/0,typeCheck:n?.typeCheck});return(0,TAt.patchFs)(bOo.default,new TAt.PosixFS(C)),a}});var MZn=H(Jve=>{"use strict";Object.defineProperty(Jve,"__esModule",{value:!0});Jve.mountMemoryDrive=void 0;var PZn=(Wa(),vi(Va));PZn.__exportStar(LZn(),Jve);PZn.__exportStar(wAt(),Jve);var vOo=OZn();Object.defineProperty(Jve,"mountMemoryDrive",{enumerable:!0,get:function(){return vOo.mountMemoryDrive}})});var HZn=H(RAt=>{"use strict";Object.defineProperty(RAt,"__esModule",{value:!0});RAt.JsZipImpl=void 0;var YAr=Io(),BOo=wAt(),QAr={CENTRAL_DIRECTORY:33639248,END_OF_CENTRAL_DIRECTORY:101010256},P5e=22,XAr=class e{constructor(t){if(this.filesShouldBeCached=!1,"buffer"in t)throw new Error("Buffer based zip archives are not supported");if(!t.readOnly)throw new Error("Writable zip archives are not supported");this.baseFs=t.baseFs,this.fd=this.baseFs.openSync(t.path,"r");try{this.entries=e.readZipSync(this.fd,this.baseFs,t.size)}catch(r){throw this.baseFs.closeSync(this.fd),this.fd="closed",r}}static readZipSync(t,r,n){if(n=0;Q--)if(o.readUInt32LE(Q)===QAr.END_OF_CENTRAL_DIRECTORY){a=Q;break}if(a===-1)throw new Error("Not a zip archive")}let l=o.readUInt16LE(a+10),A=o.readUInt32LE(a+12),f=o.readUInt32LE(a+16),I=o.readUInt16LE(a+20);if(a+I+P5e>o.length)throw new Error("Zip archive inconsistent");if(l==65535||A==4294967295||f==4294967295)throw new Error("Zip 64 is not supported");if(A>n)throw new Error("Zip archive inconsistent");if(l>A/46)throw new Error("Zip archive inconsistent");let C=Buffer.alloc(A);if(r.readSync(t,C,0,C.length,f)!==C.length)throw new Error("Zip archive inconsistent");let b=[],E=0,N=0,B=0;for(;NC.length)throw new Error("Zip archive inconsistent");if(C.readUInt32LE(E)!==QAr.CENTRAL_DIRECTORY)throw new Error("Zip archive inconsistent");let Q=C.readUInt16LE(E+4)>>>8;if(C.readUInt16LE(E+8)&1)throw new Error("Encrypted zip files are not supported");let ae=C.readUInt16LE(E+10),ne=C.readUInt32LE(E+16),ce=C.readUInt16LE(E+28),fe=C.readUInt16LE(E+30),ue=C.readUInt16LE(E+32),de=C.readUInt32LE(E+42),be=C.toString("utf8",E+46,E+46+ce).replaceAll("\0"," ");if(be.includes("\0"))throw new Error("Invalid ZIP file");let Se=C.readUInt32LE(E+20),De=C.readUInt32LE(E+38);b.push({name:be,os:Q,mtime:YAr.constants.SAFE_TIME,crc:ne,compressionMethod:ae,isSymbolicLink:Q===BOo.ZIP_UNIX&&(De>>>16&YAr.constants.S_IFMT)===YAr.constants.S_IFLNK,size:C.readUInt32LE(E+24),compressedSize:Se,externalAttributes:De,localHeaderOffset:de}),B+=Se,N+=1,E+=46+ce+fe+ue}if(B>n)throw new Error("Zip archive inconsistent");if(E!==C.length)throw new Error("Zip archive inconsistent");return b}getExternalAttributes(t){let r=this.entries[t];return[r.os,r.externalAttributes]}getListings(){return this.entries.map(t=>t.name)}getSymlinkCount(){let t=0;for(let r of this.entries)r.isSymbolicLink&&(t+=1);return t}stat(t){let r=this.entries[t];return{crc:r.crc,mtime:r.mtime,size:r.size}}locate(t){for(let r=0;r{"use strict";Object.defineProperty(E$,"__esModule",{value:!0});E$.LibZipImpl=E$.JsZipImpl=void 0;E$.getLibzipSync=ROo;E$.getLibzipPromise=NOo;var YZn=(Wa(),vi(Va)),JAr=kAr(),wOo=YZn.__importDefault(GZn()),TOo=FZn();YZn.__exportStar(MZn(),E$);(0,JAr.setFactory)(()=>{let e=(0,wOo.default)();return(0,TOo.makeInterface)(e)});function ROo(){return(0,JAr.getInstance)()}async function NOo(){return(0,JAr.getInstance)()}var DOo=HZn();Object.defineProperty(E$,"JsZipImpl",{enumerable:!0,get:function(){return DOo.JsZipImpl}});var kOo=OAr();Object.defineProperty(E$,"LibZipImpl",{enumerable:!0,get:function(){return kOo.LibZipImpl}})});var QZn=H(UAr=>{"use strict";Object.defineProperty(UAr,"__esModule",{value:!0});var xOo=Io(),NAt=(Rl(),vi(ng)),GOo=M5e(),DAt=class extends NAt.Command{constructor(){super(...arguments),this.cwd=NAt.Option.String("--cwd",process.cwd(),{description:"The directory to run the command in"}),this.commandName=NAt.Option.String(),this.args=NAt.Option.Proxy()}async execute(){let t=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await(0,GOo.execute)(t,[],{cwd:xOo.npath.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};DAt.usage={description:"run a command using yarn's portable shell",details:` +`)}`}}};Y_.RequestError=rw;var $gt=class extends rw{constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborting.`,{},t),this.name="MaxRedirectsError",this.code="ERR_TOO_MANY_REDIRECTS"}};Y_.MaxRedirectsError=$gt;var eAt=class extends rw{constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})`,{},t.request),this.name="HTTPError",this.code="ERR_NON_2XX_3XX_RESPONSE"}};Y_.HTTPError=eAt;var tAt=class extends rw{constructor(t,r){super(t.message,t,r),this.name="CacheError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_CACHE_ACCESS":this.code}};Y_.CacheError=tAt;var rAt=class extends rw{constructor(t,r){super(t.message,t,r),this.name="UploadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_UPLOAD":this.code}};Y_.UploadError=rAt;var nAt=class extends rw{constructor(t,r,n){super(t.message,t,n),this.name="TimeoutError",this.event=t.event,this.timings=r}};Y_.TimeoutError=nAt;var x5e=class extends rw{constructor(t,r){super(t.message,t,r),this.name="ReadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_READING_RESPONSE_STREAM":this.code}};Y_.ReadError=x5e;var iAt=class extends rw{constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),this.name="UnsupportedProtocolError",this.code="ERR_UNSUPPORTED_PROTOCOL"}};Y_.UnsupportedProtocolError=iAt;var MVo=["socket","connect","continue","information","upgrade","timeout"],sAt=class extends MFn.Duplex{constructor(t,r={},n){super({autoDestroy:!1,highWaterMark:0}),this[Ove]=0,this[Mve]=0,this.requestInitialized=!1,this[jgt]=new Set,this.redirects=[],this[Hve]=!1,this[zgt]=!1,this[k5e]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),o=()=>this._lockWrite();this.on("pipe",I=>{I.prependListener("data",a),I.on("data",o),I.prependListener("end",a),I.on("end",o)}),this.on("unpipe",I=>{I.off("data",a),I.off("data",o),I.off("end",a),I.off("end",o)}),this.on("pipe",I=>{I instanceof cAr.IncomingMessage&&(this.options.headers={...I.headers,...this.options.headers})});let{json:l,body:A,form:f}=r;if((l||A||f)&&this._lockWrite(),Y_.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(t,r,n)}catch(I){va.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(I);return}(async()=>{var I;try{this.options.body instanceof yVo.ReadStream&&await WVo(this.options.body);let{url:C}=this.options;if(!C)throw new TypeError("Missing `url` property");if(this.requestUrl=C.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(I=this[Dk])===null||I===void 0||I.destroy();return}for(let b of this[k5e])b();this[k5e].length=0,this.requestInitialized=!0}catch(C){if(C instanceof rw){this._beforeError(C);return}this.destroyed||this.destroy(C)}})()}static normalizeArguments(t,r,n){var a,o,l,A,f;let I=r;if(va.default.object(t)&&!va.default.urlInstance(t))r={...n,...t,...r};else{if(t&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...n,...r},t!==void 0&&(r.url=t),va.default.urlInstance(r.url)&&(r.url=new Zoe.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),va.assert.any([va.default.string,va.default.undefined],r.method),va.assert.any([va.default.object,va.default.undefined],r.headers),va.assert.any([va.default.string,va.default.urlInstance,va.default.undefined],r.prefixUrl),va.assert.any([va.default.object,va.default.undefined],r.cookieJar),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.searchParams),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.cache),va.assert.any([va.default.object,va.default.number,va.default.undefined],r.timeout),va.assert.any([va.default.object,va.default.undefined],r.context),va.assert.any([va.default.object,va.default.undefined],r.hooks),va.assert.any([va.default.boolean,va.default.undefined],r.decompress),va.assert.any([va.default.boolean,va.default.undefined],r.ignoreInvalidCookies),va.assert.any([va.default.boolean,va.default.undefined],r.followRedirect),va.assert.any([va.default.number,va.default.undefined],r.maxRedirects),va.assert.any([va.default.boolean,va.default.undefined],r.throwHttpErrors),va.assert.any([va.default.boolean,va.default.undefined],r.http2),va.assert.any([va.default.boolean,va.default.undefined],r.allowGetBody),va.assert.any([va.default.string,va.default.undefined],r.localAddress),va.assert.any([UFn.isDnsLookupIpVersion,va.default.undefined],r.dnsLookupIpVersion),va.assert.any([va.default.object,va.default.undefined],r.https),va.assert.any([va.default.boolean,va.default.undefined],r.rejectUnauthorized),r.https&&(va.assert.any([va.default.boolean,va.default.undefined],r.https.rejectUnauthorized),va.assert.any([va.default.function_,va.default.undefined],r.https.checkServerIdentity),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificateAuthority),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.key),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificate),va.assert.any([va.default.string,va.default.undefined],r.https.passphrase),va.assert.any([va.default.string,va.default.buffer,va.default.array,va.default.undefined],r.https.pfx)),va.assert.any([va.default.object,va.default.undefined],r.cacheOptions),va.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===n?.headers?r.headers={...r.headers}:r.headers=wVo({...n?.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==n?.searchParams){let N;if(va.default.string(r.searchParams)||r.searchParams instanceof Zoe.URLSearchParams)N=new Zoe.URLSearchParams(r.searchParams);else{LVo(r.searchParams),N=new Zoe.URLSearchParams;for(let B in r.searchParams){let F=r.searchParams[B];F===null?N.append(B,""):F!==void 0&&N.append(B,F)}}(a=n?.searchParams)===null||a===void 0||a.forEach((B,F)=>{N.has(F)||N.append(F,B)}),r.searchParams=N}if(r.username=(o=r.username)!==null&&o!==void 0?o:"",r.password=(l=r.password)!==null&&l!==void 0?l:"",va.default.undefined(r.prefixUrl)?r.prefixUrl=(A=n?.prefixUrl)!==null&&A!==void 0?A:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),va.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=JFn.default(r.prefixUrl+r.url,r)}else(va.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=JFn.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:N}=r;Object.defineProperty(r,"prefixUrl",{set:F=>{let Q=r.url;if(!Q.href.startsWith(F))throw new Error(`Cannot change \`prefixUrl\` from ${N} to ${F}: ${Q.href}`);r.url=new Zoe.URL(F+Q.href.slice(N.length)),N=F},get:()=>N});let{protocol:B}=r.url;if(B==="unix:"&&(B="http:",r.url=new Zoe.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),B!=="http:"&&B!=="https:")throw new iAt(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:C}=r;if(C){let{setCookie:N,getCookieString:B}=C;va.assert.function_(N),va.assert.function_(B),N.length===4&&B.length===0&&(N=PFn.promisify(N.bind(r.cookieJar)),B=PFn.promisify(B.bind(r.cookieJar)),r.cookieJar={setCookie:N,getCookieString:B})}let{cache:b}=r;if(b&&(gAr.has(b)||gAr.set(b,new YFn((N,B)=>{let F=N[Dk](N,B);return va.default.promise(F)&&(F.once=(Q,J)=>{if(Q==="error")F.catch(J);else if(Q==="abort")(async()=>{try{(await F).once("abort",J)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${Q}`);return F}),F},b))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)lAr||(lAr=new SVo.default),r.dnsCache=lAr;else if(!va.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${va.default(r.dnsCache)}`);va.default.number(r.timeout)?r.timeout={request:r.timeout}:n&&r.timeout!==n.timeout?r.timeout={...n.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let E=r.hooks===n?.hooks;r.hooks={...r.hooks};for(let N of Y_.knownHookEvents)if(N in r.hooks)if(va.default.array(r.hooks[N]))r.hooks[N]=[...r.hooks[N]];else throw new TypeError(`Parameter \`${N}\` must be an Array, got ${va.default(r.hooks[N])}`);else r.hooks[N]=[];if(n&&!E)for(let N of Y_.knownHookEvents)n.hooks[N].length>0&&(r.hooks[N]=[...n.hooks[N],...r.hooks[N]]);if("family"in r&&Loe.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),n?.https&&(r.https={...n.https,...r.https}),"rejectUnauthorized"in r&&Loe.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&Loe.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&Loe.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&Loe.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&Loe.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&Loe.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&Loe.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let N in r.agent)if(N!=="http"&&N!=="https"&&N!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${N}\``)}return r.maxRedirects=(f=r.maxRedirects)!==null&&f!==void 0?f:0,Y_.setNonEnumerableProperties([n,I],r),GVo.default(r,n)}_lockWrite(){let t=()=>{throw new TypeError("The payload has been already provided")};this.write=t,this.end=t}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,n=!va.default.undefined(t.form),a=!va.default.undefined(t.json),o=!va.default.undefined(t.body),l=n||a||o,A=Y_.withoutBody.has(t.method)&&!(t.method==="GET"&&t.allowGetBody);if(this._cannotHaveBody=A,l){if(A)throw new TypeError(`The \`${t.method}\` method cannot be used with a body`);if([o,n,a].filter(f=>f).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(o&&!(t.body instanceof MFn.Readable)&&!va.default.string(t.body)&&!va.default.buffer(t.body)&&!QFn.default(t.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(n&&!va.default.object(t.form))throw new TypeError("The `form` option must be an Object");{let f=!va.default.string(r["content-type"]);o?(QFn.default(t.body)&&f&&(r["content-type"]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[Voe]=t.body):n?(f&&(r["content-type"]="application/x-www-form-urlencoded"),this[Voe]=new Zoe.URLSearchParams(t.form).toString()):(f&&(r["content-type"]="application/json"),this[Voe]=t.stringifyJson(t.json));let I=await TVo.default(this[Voe],t.headers);va.default.undefined(r["content-length"])&&va.default.undefined(r["transfer-encoding"])&&!A&&!va.default.undefined(I)&&(r["content-length"]=String(I))}}else A?this._lockWrite():this._unlockWrite();this[Pve]=Number(r["content-length"])||void 0}async _onResponseBase(t){let{options:r}=this,{url:n}=r;this[qFn]=t,r.decompress&&(t=vVo(t));let a=t.statusCode,o=t;o.statusMessage=o.statusMessage?o.statusMessage:HFn.STATUS_CODES[a],o.url=r.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=t.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[jFn]=o.isFromCache,this[Wve]=Number(t.headers["content-length"])||void 0,this[qgt]=t,t.once("end",()=>{this[Wve]=this[Ove],this.emit("downloadProgress",this.downloadProgress)}),t.once("error",A=>{t.destroy(),this._beforeError(new x5e(A,this))}),t.once("aborted",()=>{this._beforeError(new x5e({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let l=t.headers["set-cookie"];if(va.default.object(r.cookieJar)&&l){let A=l.map(async f=>r.cookieJar.setCookie(f,n.toString()));r.ignoreInvalidCookies&&(A=A.map(async f=>f.catch(()=>{})));try{await Promise.all(A)}catch(f){this._beforeError(f);return}}if(r.followRedirect&&t.headers.location&&OVo.has(a)){if(t.resume(),this[Dk]&&(this[uAr](),delete this[Dk],this[KFn]()),(a===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[Voe]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new $gt(this));return}try{let b=function(E){return E.protocol==="unix:"||E.hostname==="unix"},f=Buffer.from(t.headers.location,"binary").toString(),I=new Zoe.URL(f,n),C=I.toString();if(decodeURI(C),!b(n)&&b(I)){this._beforeError(new rw("Cannot redirect to UNIX socket",{},this));return}I.hostname!==n.hostname||I.port!==n.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(I.username=r.username,I.password=r.password),this.redirects.push(C),r.url=I;for(let E of r.hooks.beforeRedirect)await E(r,o);this.emit("redirect",o,r),await this._makeRequest()}catch(f){this._beforeError(f);return}return}if(r.isStream&&r.throwHttpErrors&&!xVo.isResponseOk(o)){this._beforeError(new eAt(o));return}t.on("readable",()=>{this[zgt]&&this._read()}),this.on("resume",()=>{t.resume()}),this.on("pause",()=>{t.pause()}),t.once("end",()=>{this.push(null)}),this.emit("response",t);for(let A of this[jgt])if(!A.headersSent){for(let f in t.headers){let I=r.decompress?f!=="content-encoding":!0,C=t.headers[f];I&&A.setHeader(f,C)}A.statusCode=a}}async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._beforeError(r)}}_onRequest(t){let{options:r}=this,{timeout:n,url:a}=r;EVo.default(t),this[uAr]=XFn.default(t,n,a);let o=r.cache?"cacheableResponse":"response";t.once(o,f=>{this._onResponse(f)}),t.once("error",f=>{var I;t.destroy(),(I=t.res)===null||I===void 0||I.removeAllListeners("end"),f=f instanceof XFn.TimeoutError?new nAt(f,this.timings,this):new rw(f.message,f,this),this._beforeError(f)}),this[KFn]=RVo.default(t,this,MVo),this[Dk]=t,this.emit("uploadProgress",this.uploadProgress);let l=this[Voe],A=this.redirects.length===0?this:t;va.default.nodeStream(l)?(l.pipe(A),l.once("error",f=>{this._beforeError(new rAt(f,this))})):(this._unlockWrite(),va.default.undefined(l)?(this._cannotHaveBody||this._noPipe)&&(A.end(),this._lockWrite()):(this._writeRequest(l,void 0,()=>{}),A.end(),this._lockWrite())),this.emit("request",t)}async _createCacheableRequest(t,r){return new Promise((n,a)=>{Object.assign(r,NVo.default(t)),delete r.url;let o,l=gAr.get(r.cache)(r,async A=>{A._readableState.autoDestroy=!1,o&&(await o).emit("cacheableResponse",A),n(A)});r.url=t,l.once("error",a),l.once("request",async A=>{o=A,n(o)})})}async _makeRequest(){var t,r,n,a,o;let{options:l}=this,{headers:A}=l;for(let J in A)if(va.default.undefined(A[J]))delete A[J];else if(va.default.null_(A[J]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${J}\` header`);if(l.decompress&&va.default.undefined(A["accept-encoding"])&&(A["accept-encoding"]=ZVo?"gzip, deflate, br":"gzip, deflate"),l.cookieJar){let J=await l.cookieJar.getCookieString(l.url.toString());va.default.nonEmptyString(J)&&(l.headers.cookie=J)}for(let J of l.hooks.beforeRequest){let ae=await J(l);if(!va.default.undefined(ae)){l.request=()=>ae;break}}l.body&&this[Voe]!==l.body&&(this[Voe]=l.body);let{agent:f,request:I,timeout:C,url:b}=l;if(l.dnsCache&&!("lookup"in l)&&(l.lookup=l.dnsCache.lookup),b.hostname==="unix"){let J=/(?.+?):(?.+)/.exec(`${b.pathname}${b.search}`);if(J?.groups){let{socketPath:ae,path:ne}=J.groups;Object.assign(l,{socketPath:ae,path:ne,host:""})}}let E=b.protocol==="https:",N;l.http2?N=BVo.auto:N=E?bVo.request:HFn.request;let B=(t=l.request)!==null&&t!==void 0?t:N,F=l.cache?this._createCacheableRequest:B;f&&!l.http2&&(l.agent=f[E?"https":"http"]),l[Dk]=B,delete l.request,delete l.timeout;let Q=l;if(Q.shared=(r=l.cacheOptions)===null||r===void 0?void 0:r.shared,Q.cacheHeuristic=(n=l.cacheOptions)===null||n===void 0?void 0:n.cacheHeuristic,Q.immutableMinTimeToLive=(a=l.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,Q.ignoreCargoCult=(o=l.cacheOptions)===null||o===void 0?void 0:o.ignoreCargoCult,l.dnsLookupIpVersion!==void 0)try{Q.family=UFn.dnsLookupIpVersionToFamily(l.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}l.https&&("rejectUnauthorized"in l.https&&(Q.rejectUnauthorized=l.https.rejectUnauthorized),l.https.checkServerIdentity&&(Q.checkServerIdentity=l.https.checkServerIdentity),l.https.certificateAuthority&&(Q.ca=l.https.certificateAuthority),l.https.certificate&&(Q.cert=l.https.certificate),l.https.key&&(Q.key=l.https.key),l.https.passphrase&&(Q.passphrase=l.https.passphrase),l.https.pfx&&(Q.pfx=l.https.pfx));try{let J=await F(b,Q);va.default.undefined(J)&&(J=N(b,Q)),l.request=I,l.timeout=C,l.agent=f,l.https&&("rejectUnauthorized"in l.https&&delete Q.rejectUnauthorized,l.https.checkServerIdentity&&delete Q.checkServerIdentity,l.https.certificateAuthority&&delete Q.ca,l.https.certificate&&delete Q.cert,l.https.key&&delete Q.key,l.https.passphrase&&delete Q.passphrase,l.https.pfx&&delete Q.pfx),VVo(J)?this._onRequest(J):this.writable?(this.once("finish",()=>{this._onResponse(J)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(J)}catch(J){throw J instanceof YFn.CacheError?new tAt(J,this):new rw(J.message,J,this)}}async _error(t){try{for(let r of this.options.hooks.beforeError)t=await r(t)}catch(r){t=new rw(r.message,r,this)}this.destroy(t)}_beforeError(t){if(this[Hve])return;let{options:r}=this,n=this.retryCount+1;this[Hve]=!0,t instanceof rw||(t=new rw(t.message,t,this));let a=t,{response:o}=a;(async()=>{if(o&&!o.body){o.setEncoding(this._readableState.encoding);try{o.rawBody=await kVo.default(o),o.body=o.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let l;try{let A;o&&"retry-after"in o.headers&&(A=Number(o.headers["retry-after"]),Number.isNaN(A)?(A=Date.parse(o.headers["retry-after"])-Date.now(),A<=0&&(A=1)):A*=1e3),l=await r.retry.calculateDelay({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:FVo.default({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:0})})}catch(A){this._error(new rw(A.message,A,this));return}if(l){let A=async()=>{try{for(let f of this.options.hooks.beforeRetry)await f(this.options,a,n)}catch(f){this._error(new rw(f.message,t,this));return}this.destroyed||(this.destroy(),this.emit("retry",n,t))};this[$Fn]=setTimeout(A,l);return}}this._error(a)})()}_read(){this[zgt]=!0;let t=this[qgt];if(t&&!this[Hve]){t.readableLength&&(this[zgt]=!1);let r;for(;(r=t.read())!==null;){this[Ove]+=r.length,this[zFn]=!0;let n=this.downloadProgress;n.percent<1&&this.emit("downloadProgress",n),this.push(r)}}}_write(t,r,n){let a=()=>{this._writeRequest(t,r,n)};this.requestInitialized?a():this[k5e].push(a)}_writeRequest(t,r,n){this[Dk].destroyed||(this._progressCallbacks.push(()=>{this[Mve]+=Buffer.byteLength(t,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[Dk].write(t,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),n(a)}))}_final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(Dk in this)){t();return}if(this[Dk].destroyed){t();return}this[Dk].end(n=>{n||(this[Pve]=this[Mve],this.emit("uploadProgress",this.uploadProgress),this[Dk].emit("upload-complete")),t(n)})};this.requestInitialized?r():this[k5e].push(r)}_destroy(t,r){var n;this[Hve]=!0,clearTimeout(this[$Fn]),Dk in this&&(this[uAr](),!((n=this[qgt])===null||n===void 0)&&n.complete||this[Dk].destroy()),t!==null&&!va.default.undefined(t)&&!(t instanceof rw)&&(t=new rw(t.message,t,this)),r(t)}get _isAboutToError(){return this[Hve]}get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteAddress}get aborted(){var t,r,n;return((r=(t=this[Dk])===null||t===void 0?void 0:t.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((n=this[qFn])===null||n===void 0)&&n.complete)}get socket(){var t,r;return(r=(t=this[Dk])===null||t===void 0?void 0:t.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let t;return this[Wve]?t=this[Ove]/this[Wve]:this[Wve]===this[Ove]?t=1:t=0,{percent:t,transferred:this[Ove],total:this[Wve]}}get uploadProgress(){let t;return this[Pve]?t=this[Mve]/this[Pve]:this[Pve]===this[Mve]?t=1:t=0,{percent:t,transferred:this[Mve],total:this[Pve]}}get timings(){var t;return(t=this[Dk])===null||t===void 0?void 0:t.timings}get isFromCache(){return this[jFn]}pipe(t,r){if(this[zFn])throw new Error("Failed to pipe. The response has been emitted already.");return t instanceof cAr.ServerResponse&&this[jgt].add(t),super.pipe(t,r)}unpipe(t){return t instanceof cAr.ServerResponse&&this[jgt].delete(t),super.unpipe(t),this}};Y_.default=sAt});var F5e=H(_X=>{"use strict";var HVo=_X&&_X.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YVo=_X&&_X.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&HVo(t,e,r)};Object.defineProperty(_X,"__esModule",{value:!0});_X.CancelError=_X.ParseError=void 0;var eZn=G5e(),AAr=class extends eZn.RequestError{constructor(t,r){let{options:n}=r.request;super(`${t.message} in "${n.url.toString()}"`,t,r.request),this.name="ParseError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_BODY_PARSE_FAILURE":this.code}};_X.ParseError=AAr;var dAr=class extends eZn.RequestError{constructor(t){super("Promise was canceled",{},t),this.name="CancelError",this.code="ERR_CANCELED"}get isCanceled(){return!0}};_X.CancelError=dAr;YVo(G5e(),_X)});var rZn=H(pAr=>{"use strict";Object.defineProperty(pAr,"__esModule",{value:!0});var tZn=F5e(),QVo=(e,t,r,n)=>{let{rawBody:a}=e;try{if(t==="text")return a.toString(n);if(t==="json")return a.length===0?"":r(a.toString());if(t==="buffer")return a;throw new tZn.ParseError({message:`Unknown body type '${t}'`,name:"Error"},e)}catch(o){throw new tZn.ParseError(o,e)}};pAr.default=QVo});var fAr=H(Woe=>{"use strict";var XVo=Woe&&Woe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),JVo=Woe&&Woe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&XVo(t,e,r)};Object.defineProperty(Woe,"__esModule",{value:!0});var UVo=Et("events"),KVo=y$(),jVo=rGn(),oAt=F5e(),nZn=rZn(),iZn=G5e(),zVo=zgr(),qVo=iAr(),sZn=sAr(),$Vo=["request","response","redirect","uploadProgress","downloadProgress"];function oZn(e){let t,r,n=new UVo.EventEmitter,a=new jVo((l,A,f)=>{let I=C=>{let b=new iZn.default(void 0,e);b.retryCount=C,b._noPipe=!0,f(()=>b.destroy()),f.shouldReject=!1,f(()=>A(new oAt.CancelError(b))),t=b,b.once("response",async B=>{var F;if(B.retryCount=C,B.request.aborted)return;let Q;try{Q=await qVo.default(b),B.rawBody=Q}catch{return}if(b._isAboutToError)return;let J=((F=B.headers["content-encoding"])!==null&&F!==void 0?F:"").toLowerCase(),ae=["gzip","deflate","br"].includes(J),{options:ne}=b;if(ae&&!ne.decompress)B.body=Q;else try{B.body=nZn.default(B,ne.responseType,ne.parseJson,ne.encoding)}catch(ce){if(B.body=Q.toString(),sZn.isResponseOk(B)){b._beforeError(ce);return}}try{for(let[ce,fe]of ne.hooks.afterResponse.entries())B=await fe(B,async ue=>{let de=iZn.default.normalizeArguments(void 0,{...ue,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},ne);de.hooks.afterResponse=de.hooks.afterResponse.slice(0,ce);for(let Se of de.hooks.beforeRetry)await Se(de);let be=oZn(de);return f(()=>{be.catch(()=>{}),be.cancel()}),be})}catch(ce){b._beforeError(new oAt.RequestError(ce.message,ce,b));return}if(r=B,!sZn.isResponseOk(B)){b._beforeError(new oAt.HTTPError(B));return}b.destroy(),l(b.options.resolveBodyOnly?B.body:B)});let E=B=>{if(a.isCanceled)return;let{options:F}=b;if(B instanceof oAt.HTTPError&&!F.throwHttpErrors){let{response:Q}=B;l(b.options.resolveBodyOnly?Q.body:Q);return}A(B)};b.once("error",E);let N=b.options.body;b.once("retry",(B,F)=>{var Q,J;if(N===((Q=F.request)===null||Q===void 0?void 0:Q.options.body)&&KVo.default.nodeStream((J=F.request)===null||J===void 0?void 0:J.options.body)){E(F);return}I(B)}),zVo.default(b,n,$Vo)};I(0)});a.on=(l,A)=>(n.on(l,A),a);let o=l=>{let A=(async()=>{await a;let{options:f}=r.request;return nZn.default(r,l,f.parseJson,f.encoding)})();return Object.defineProperties(A,Object.getOwnPropertyDescriptors(a)),A};return a.json=()=>{let{headers:l}=t.options;return!t.writableFinished&&l.accept===void 0&&(l.accept="application/json"),o("json")},a.buffer=()=>o("buffer"),a.text=()=>o("text"),a}Woe.default=oZn;JVo(F5e(),Woe)});var aZn=H(IAr=>{"use strict";Object.defineProperty(IAr,"__esModule",{value:!0});var eWo=F5e();function tWo(e,...t){let r=(async()=>{if(e instanceof eWo.RequestError)try{for(let a of t)if(a)for(let o of a)e=await o(e)}catch(a){e=a}throw e})(),n=()=>r;return r.json=n,r.text=n,r.buffer=n,r.on=n,r}IAr.default=tWo});var uZn=H(hAr=>{"use strict";Object.defineProperty(hAr,"__esModule",{value:!0});var cZn=y$();function lZn(e){for(let t of Object.values(e))(cZn.default.plainObject(t)||cZn.default.array(t))&&lZn(t);return Object.freeze(e)}hAr.default=lZn});var AZn=H(gZn=>{"use strict";Object.defineProperty(gZn,"__esModule",{value:!0})});var mAr=H(mM=>{"use strict";var rWo=mM&&mM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),nWo=mM&&mM.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&rWo(t,e,r)};Object.defineProperty(mM,"__esModule",{value:!0});mM.defaultHandler=void 0;var dZn=y$(),hM=fAr(),iWo=aZn(),cAt=G5e(),sWo=uZn(),oWo={RequestError:hM.RequestError,CacheError:hM.CacheError,ReadError:hM.ReadError,HTTPError:hM.HTTPError,MaxRedirectsError:hM.MaxRedirectsError,TimeoutError:hM.TimeoutError,ParseError:hM.ParseError,CancelError:hM.CancelError,UnsupportedProtocolError:hM.UnsupportedProtocolError,UploadError:hM.UploadError},aWo=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:aAt}=cAt.default,pZn=(...e)=>{let t;for(let r of e)t=aAt(void 0,r,t);return t},cWo=e=>e.isStream?new cAt.default(void 0,e):hM.default(e),lWo=e=>"defaults"in e&&"options"in e.defaults,uWo=["get","post","put","patch","head","delete"];mM.defaultHandler=(e,t)=>t(e);var fZn=(e,t)=>{if(e)for(let r of e)r(t)},IZn=e=>{e._rawHandlers=e.handlers,e.handlers=e.handlers.map(n=>(a,o)=>{let l,A=n(a,f=>(l=o(f),l));if(A!==l&&!a.isStream&&l){let f=A,{then:I,catch:C,finally:b}=f;Object.setPrototypeOf(f,Object.getPrototypeOf(l)),Object.defineProperties(f,Object.getOwnPropertyDescriptors(l)),f.then=I,f.catch=C,f.finally=b}return A});let t=(n,a={},o)=>{var l,A;let f=0,I=C=>e.handlers[f++](C,f===e.handlers.length?cWo:I);if(dZn.default.plainObject(n)){let C={...n,...a};cAt.setNonEnumerableProperties([n,a],C),a=C,n=void 0}try{let C;try{fZn(e.options.hooks.init,a),fZn((l=a.hooks)===null||l===void 0?void 0:l.init,a)}catch(E){C=E}let b=aAt(n,a,o??e.options);if(b[cAt.kIsNormalizedAlready]=!0,C)throw new hM.RequestError(C.message,C,b);return I(b)}catch(C){if(a.isStream)throw C;return iWo.default(C,e.options.hooks.beforeError,(A=a.hooks)===null||A===void 0?void 0:A.beforeError)}};t.extend=(...n)=>{let a=[e.options],o=[...e._rawHandlers],l;for(let A of n)lWo(A)?(a.push(A.defaults.options),o.push(...A.defaults._rawHandlers),l=A.defaults.mutableDefaults):(a.push(A),"handlers"in A&&o.push(...A.handlers),l=A.mutableDefaults);return o=o.filter(A=>A!==mM.defaultHandler),o.length===0&&o.push(mM.defaultHandler),IZn({options:pZn(...a),handlers:o,mutableDefaults:!!l})};let r=async function*(n,a){let o=aAt(n,a,e.options);o.resolveBodyOnly=!1;let l=o.pagination;if(!dZn.default.object(l))throw new TypeError("`options.pagination` must be implemented");let A=[],{countLimit:f}=l,I=0;for(;I{let o=[];for await(let l of r(n,a))o.push(l);return o},t.paginate.each=r,t.stream=(n,a)=>t(n,{...a,isStream:!0});for(let n of uWo)t[n]=(a,o)=>t(a,{...o,method:n}),t.stream[n]=(a,o)=>t(a,{...o,method:n,isStream:!0});return Object.assign(t,oWo),Object.defineProperty(t,"defaults",{value:e.mutableDefaults?e:sWo.default(e),writable:e.mutableDefaults,configurable:e.mutableDefaults,enumerable:!0}),t.mergeOptions=pZn,t};mM.default=IZn;nWo(AZn(),mM)});var CZn=H((b$,lAt)=>{"use strict";var gWo=b$&&b$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),hZn=b$&&b$.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&gWo(t,e,r)};Object.defineProperty(b$,"__esModule",{value:!0});var AWo=Et("url"),mZn=mAr(),dWo={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType==="json"?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,"link"))return!1;let t=e.headers.link.split(","),r;for(let n of t){let a=n.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new AWo.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[mZn.defaultHandler],mutableDefaults:!1},CAr=mZn.default(dWo);b$.default=CAr;lAt.exports=CAr;lAt.exports.default=CAr;lAt.exports.__esModule=!0;hZn(mAr(),b$);hZn(fAr(),b$)});var AAt=H(c8=>{"use strict";Object.defineProperty(c8,"__esModule",{value:!0});c8.Method=void 0;c8.getNetworkSettings=vZn;c8.request=Z5e;c8.get=_Wo;c8.put=yWo;c8.post=bWo;c8.del=EWo;var uAt=(Wa(),vi(Va)),pWo=No(),_Zn=zxn(),fWo=Et("https"),IWo=Et("http"),EZn=uAt.__importDefault(Rk()),Ooe=K9(),yAr=pM(),ZE=uAt.__importStar(gM()),SZn=uAt.__importStar(MO()),yZn=new Map,bZn=new Map,hWo=new IWo.Agent({keepAlive:!0}),mWo=new fWo.Agent({keepAlive:!0});async function _Ar(e){return SZn.getFactoryWithDefault(bZn,e,()=>pWo.xfs.readFilePromise(e).then(t=>(bZn.set(e,t),t)))}function CWo({statusCode:e,statusMessage:t},r){let n=ZE.pretty(r,e,ZE.Type.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${e}`;return ZE.applyHyperlink(r,`${n}${t?` (${t})`:""}`,a)}async function gAt(e,{configuration:t,customErrorMessage:r}){try{return await e}catch(n){if(n.name!=="HTTPError")throw n;let a=r?.(n,t)??n.response.body?.error;a==null&&(n.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=n.message),n.code==="ETIMEDOUT"&&n.event==="socket"&&(a+=`(can be increased via ${ZE.pretty(t,"httpTimeout",ZE.Type.SETTING)})`);let o=new yAr.ReportError(Ooe.MessageName.NETWORK_ERROR,a,l=>{n.response&&l.reportError(Ooe.MessageName.NETWORK_ERROR,` ${ZE.prettyField(t,{label:"Response Code",value:ZE.tuple(ZE.Type.NO_HINT,CWo(n.response,t))})}`),n.request&&(l.reportError(Ooe.MessageName.NETWORK_ERROR,` ${ZE.prettyField(t,{label:"Request Method",value:ZE.tuple(ZE.Type.NO_HINT,n.request.options.method)})}`),l.reportError(Ooe.MessageName.NETWORK_ERROR,` ${ZE.prettyField(t,{label:"Request URL",value:ZE.tuple(ZE.Type.URL,n.request.requestUrl)})}`)),n.request.redirects.length>0&&l.reportError(Ooe.MessageName.NETWORK_ERROR,` ${ZE.prettyField(t,{label:"Request Redirects",value:ZE.tuple(ZE.Type.NO_HINT,ZE.prettyList(t,n.request.redirects,ZE.Type.URL))})}`),n.request.retryCount===n.request.options.retry.limit&&l.reportError(Ooe.MessageName.NETWORK_ERROR,` ${ZE.prettyField(t,{label:"Request Retry Count",value:ZE.tuple(ZE.Type.NO_HINT,`${ZE.pretty(t,n.request.retryCount,ZE.Type.NUMBER)} (can be increased via ${ZE.pretty(t,"httpRetry",ZE.Type.SETTING)})`)})}`)});throw o.originalError=n,o}}function vZn(e,t){let r=[...t.configuration.get("networkSettings")].sort(([l],[A])=>A.length-l.length),n={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(n),o=typeof e=="string"?new URL(e):e;for(let[l,A]of r)if(EZn.default.isMatch(o.hostname,l))for(let f of a){let I=A.get(f);I!==null&&typeof n[f]>"u"&&(n[f]=I)}for(let l of a)typeof n[l]>"u"&&(n[l]=t.configuration.get(l));return n}var mIe;(function(e){e.GET="GET",e.PUT="PUT",e.POST="POST",e.DELETE="DELETE"})(mIe||(c8.Method=mIe={}));async function Z5e(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=mIe.GET,wrapNetworkRequest:A}){let f={target:e,body:t,configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l},I=async()=>await SWo(e,t,f),C=typeof A<"u"?await A(I,f):I;return await(await r.reduceHook(E=>E.wrapNetworkRequest,C,f))()}async function _Wo(e,{configuration:t,jsonResponse:r,customErrorMessage:n,wrapNetworkRequest:a,...o}){let l=()=>gAt(Z5e(e,null,{configuration:t,wrapNetworkRequest:a,...o}),{configuration:t,customErrorMessage:n}).then(f=>f.body),A=await(typeof a<"u"?l():SZn.getFactoryWithDefault(yZn,e,()=>l().then(f=>(yZn.set(e,f),f))));return r?JSON.parse(A.toString()):A}async function yWo(e,t,{customErrorMessage:r,...n}){return(await gAt(Z5e(e,t,{...n,method:mIe.PUT}),{customErrorMessage:r,configuration:n.configuration})).body}async function bWo(e,t,{customErrorMessage:r,...n}){return(await gAt(Z5e(e,t,{...n,method:mIe.POST}),{customErrorMessage:r,configuration:n.configuration})).body}async function EWo(e,{customErrorMessage:t,...r}){return(await gAt(Z5e(e,null,{...r,method:mIe.DELETE}),{customErrorMessage:t,configuration:r.configuration})).body}async function SWo(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=mIe.GET}){let A=typeof e=="string"?new URL(e):e,f=vZn(A,{configuration:r});if(f.enableNetwork===!1)throw new yAr.ReportError(Ooe.MessageName.NETWORK_DISABLED,`Request to '${A.href}' has been blocked because of your configuration settings`);if(A.protocol==="http:"&&!EZn.default.isMatch(A.hostname,r.get("unsafeHttpWhitelist")))throw new yAr.ReportError(Ooe.MessageName.NETWORK_UNSAFE_HTTP,`Unsafe http requests must be explicitly whitelisted in your configuration (${A.hostname})`);let I={headers:n,method:l};I.responseType=o?"json":"buffer",t!==null&&(Buffer.isBuffer(t)||!a&&typeof t=="string"?I.body=t:I.json=t);let C=r.get("httpTimeout"),b=r.get("httpRetry"),E=r.get("enableStrictSsl"),N=f.httpsCaFilePath,B=f.httpsCertFilePath,F=f.httpsKeyFilePath,{default:Q}=await Promise.resolve().then(()=>uAt.__importStar(CZn())),J=N?await _Ar(N):void 0,ae=B?await _Ar(B):void 0,ne=F?await _Ar(F):void 0,ce={rejectUnauthorized:E,ca:J,cert:ae,key:ne},fe={http:f.httpProxy?new _Zn.HttpProxyAgent({proxy:f.httpProxy,proxyRequestOptions:ce}):hWo,https:f.httpsProxy?new _Zn.HttpsProxyAgent({proxy:f.httpsProxy,proxyRequestOptions:ce}):mWo},ue=Q.extend({timeout:{socket:C},retry:b,agent:fe,https:{rejectUnauthorized:E,certificateAuthority:J,certificate:ae,key:ne},...I});return r.getLimit("networkConcurrency")(()=>ue(A))}});var dAt=H(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.openUrl=yX.major=void 0;yX.getArchitecture=SAr;yX.getArchitectureName=TWo;yX.getArchitectureSet=RWo;yX.getCaller=xWo;yX.availableParallelism=GWo;var EAr=(Wa(),vi(Va)),NZn=No(),bAr=EAr.__importDefault(Et("os")),vWo=EAr.__importStar(pAt()),BZn=EAr.__importStar(MO());yX.major=Number(process.versions.node.split(".")[0]);var wZn=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform);yX.openUrl=typeof wZn<"u"?async e=>{try{return await vWo.execvp(wZn,[e],{cwd:NZn.ppath.cwd()}),!0}catch{return!1}}:void 0;var BWo="/usr/bin/ldd";function wWo(){if(process.platform!=="linux")return null;let e;try{e=NZn.xfs.readFileSync(BWo)}catch{}if(typeof e<"u"){if(e&&(e.includes("GLIBC")||e.includes("GNU libc")||e.includes("GNU C Library")))return"glibc";if(e&&e.includes("musl"))return"musl"}let r=(process.report?.getReport()??{}).sharedObjects??[],n=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return BZn.mapAndFind(r,a=>{let o=a.match(n);if(!o)return BZn.mapAndFind.skip;if(o[1])return"glibc";if(o[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}var TZn,RZn;function SAr(){return TZn=TZn??{os:(process.env.YARN_IS_TEST_ENV?process.env.YARN_OS_OVERRIDE:void 0)??process.platform,cpu:(process.env.YARN_IS_TEST_ENV?process.env.YARN_CPU_OVERRIDE:void 0)??process.arch,libc:(process.env.YARN_IS_TEST_ENV?process.env.YARN_LIBC_OVERRIDE:void 0)??wWo()}}function TWo(e=SAr()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}-${e.cpu}`}function RWo(){let e=SAr();return RZn=RZn??{os:[e.os],cpu:[e.cpu],libc:e.libc?[e.libc]:[]}}var NWo=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,DWo=/\((\S*)(?::(\d+))(?::(\d+))\)/;function kWo(e){let t=NWo.exec(e);if(!t)return null;let r=t[2]&&t[2].indexOf("native")===0,n=t[2]&&t[2].indexOf("eval")===0,a=DWo.exec(t[2]);return n&&a!=null&&(t[2]=a[1],t[3]=a[2],t[4]=a[3]),{file:r?null:t[2],methodName:t[1]||"",arguments:r?[t[2]]:[],line:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}function xWo(){let t=new Error().stack.split(` +`)[3];return kWo(t)}function GWo(){return typeof bAr.default.availableParallelism<"u"?bAr.default.availableParallelism():Math.max(1,bAr.default.cpus().length)}});var V5e=H(Om=>{"use strict";Object.defineProperty(Om,"__esModule",{value:!0});Om.Configuration=Om.coreDefinitions=Om.WindowsLinkType=Om.DurationUnit=Om.FormatType=Om.SettingsType=Om.SECRET=Om.DEFAULT_RC_FILENAME=Om.ENVIRONMENT_PREFIX=Om.TAG_REGEXP=Om.LEGACY_PLUGINS=void 0;var EX=(Wa(),vi(Va)),Zf=No(),fAt=LO(),FWo=EX.__importDefault(WSn()),Yve=Ufe(),bX=(vl(),vi(ng)),ZWo=JSn(),LWo=Et("module"),VWo=EX.__importDefault(Kfe()),DZn=Et("stream"),WWo=Rxn(),OWo=kve(),PWo=Uur(),MWo=jur(),HWo=egr(),YWo=Pxn(),QWo=rgr(),XWo=dIe(),Poe=EX.__importStar(Xxn()),hAt=EX.__importStar(xgt()),ib=EX.__importStar(gM()),JWo=EX.__importStar(xoe()),UWo=EX.__importStar(AAt()),eD=EX.__importStar(MO()),GZn=EX.__importStar(dAt()),IAt=EX.__importStar(m$()),FZ=EX.__importStar(IG()),CM=lIe(),KWo=function(){if(!Yve.GITHUB_ACTIONS||!process.env.GITHUB_EVENT_PATH)return!1;let e=Zf.npath.toPortablePath(process.env.GITHUB_EVENT_PATH),t;try{t=Zf.xfs.readJsonSync(e)}catch{return!1}return!(!("repository"in t)||!t.repository||(t.repository.private??!0))}();Om.LEGACY_PLUGINS=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]);var jWo=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","zipDataEpilogue","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","osOverride","cpuOverride","libcOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]);Om.TAG_REGEXP=/^(?!v)[a-z0-9._-]+$/i;Om.ENVIRONMENT_PREFIX="yarn_";Om.DEFAULT_RC_FILENAME=".yarnrc.yml";Om.SECRET="********";var Wl;(function(e){e.ANY="ANY",e.BOOLEAN="BOOLEAN",e.ABSOLUTE_PATH="ABSOLUTE_PATH",e.LOCATOR="LOCATOR",e.LOCATOR_LOOSE="LOCATOR_LOOSE",e.NUMBER="NUMBER",e.STRING="STRING",e.DURATION="DURATION",e.SECRET="SECRET",e.SHAPE="SHAPE",e.MAP="MAP"})(Wl||(Om.SettingsType=Wl={}));Om.FormatType=ib.Type;var CAt;(function(e){e.MILLISECONDS="ms",e.SECONDS="s",e.MINUTES="m",e.HOURS="h",e.DAYS="d",e.WEEKS="w"})(CAt||(Om.DurationUnit=CAt={}));var kZn;(function(e){e.JUNCTIONS="junctions",e.SYMLINKS="symlinks"})(kZn||(Om.WindowsLinkType=kZn={}));Om.coreDefinitions={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:Wl.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:Wl.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:Wl.BOOLEAN,default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:Wl.ABSOLUTE_PATH,default:hAt.getDefaultGlobalFolder()},cacheFolder:{description:"Folder where the cache files must be written",type:Wl.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:Wl.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:Wl.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:Wl.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:Wl.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:Wl.STRING,default:BAr()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:Wl.BOOLEAN,default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:Wl.STRING,values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:Wl.BOOLEAN,default:ib.supportsColor,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:Wl.BOOLEAN,default:ib.supportsHyperlinks,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:Wl.BOOLEAN,default:Yve.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:Wl.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:Wl.BOOLEAN,default:!Yve.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:Wl.BOOLEAN,default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:Wl.BOOLEAN,default:!Yve.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:Wl.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:Wl.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:Wl.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:Wl.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:Wl.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:Wl.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:Wl.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:Wl.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:Wl.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:Wl.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:Wl.BOOLEAN,default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:Wl.BOOLEAN,default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:Wl.BOOLEAN,default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Wl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Wl.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:Wl.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request",type:Wl.DURATION,unit:CAt.MILLISECONDS,default:"1m"},httpRetry:{description:"Retry times on http failure",type:Wl.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:Wl.NUMBER,default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:Wl.NUMBER,default:GZn.availableParallelism()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:Wl.STRING,values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:Wl.MAP,valueDefinition:{description:"",type:Wl.SHAPE,properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:Wl.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Wl.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Wl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Wl.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Wl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Wl.ABSOLUTE_PATH,default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:Wl.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Wl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Wl.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:Wl.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:Wl.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:Wl.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:Wl.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:Wl.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:Wl.STRING,values:Object.values(ib.LogLevel),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:Wl.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads",type:Wl.DURATION,unit:CAt.DAYS,default:"7d"},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:Wl.STRING,default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:Wl.BOOLEAN,default:Yve.isPR&&KWo,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:Wl.BOOLEAN,default:!1},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:Wl.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:Wl.BOOLEAN,default:!1},enableCacheClean:{description:"If false, disallows the `cache clean` command",type:Wl.BOOLEAN,default:!0},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:Wl.STRING,default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:Wl.ABSOLUTE_PATH,default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:Wl.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:Wl.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:Wl.MAP,valueDefinition:{description:"A range",type:Wl.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:Wl.MAP,valueDefinition:{description:"A semver range",type:Wl.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:Wl.MAP,valueDefinition:{description:"The peerDependency meta",type:Wl.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:Wl.BOOLEAN,default:!1}}}}}}}};function wAr(e,t,r,n,a){let o=Poe.getValue(r);if(n.isArray||n.type===Wl.ANY&&Array.isArray(o))return Array.isArray(o)?o.map((l,A)=>vAr(e,`${t}[${A}]`,l,n,a)):String(o).split(/,/).map(l=>vAr(e,t,l,n,a));if(Array.isArray(o))throw new Error(`Non-array configuration settings "${t}" cannot be an array`);return vAr(e,t,r,n,a)}function vAr(e,t,r,n,a){let o=Poe.getValue(r);switch(n.type){case Wl.ANY:return Poe.getValueByTree(o);case Wl.SHAPE:return zWo(e,t,r,n,a);case Wl.MAP:return qWo(e,t,r,n,a)}if(o===null&&!n.isNullable&&n.default!==null)throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`);if("values"in n&&n.values?.includes(o))return o;let A=(()=>{if(n.type===Wl.BOOLEAN&&typeof o!="string")return eD.parseBoolean(o);if(typeof o!="string")throw new Error(`Expected configuration setting "${t}" to be a string, got ${typeof o}`);let f=eD.replaceEnvVariables(o,{env:e.env});switch(n.type){case Wl.ABSOLUTE_PATH:{let I=a,C=Poe.getSource(r);return C&&C[0]!=="<"&&(I=Zf.ppath.dirname(C)),Zf.ppath.resolve(I,Zf.npath.toPortablePath(f))}case Wl.LOCATOR_LOOSE:return FZ.parseLocator(f,!1);case Wl.NUMBER:return parseInt(f);case Wl.LOCATOR:return FZ.parseLocator(f);case Wl.BOOLEAN:return eD.parseBoolean(f);case Wl.DURATION:return eD.parseDuration(f,n.unit);default:return f}})();if("values"in n&&n.values&&!n.values.includes(A))throw new Error(`Invalid value, expected one of ${n.values.join(", ")}`);return A}function zWo(e,t,r,n,a){let o=Poe.getValue(r);if(typeof o!="object"||Array.isArray(o))throw new bX.UsageError(`Object configuration settings "${t}" must be an object`);let l=TAr(e,n,{ignoreArrays:!0});if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=`${t}.${A}`;if(!n.properties[A])throw new bX.UsageError(`Unrecognized configuration settings found: ${t}.${A} - run "yarn config" to see the list of settings supported in Yarn`);l.set(A,wAr(e,I,f,n.properties[A],a))}return l}function qWo(e,t,r,n,a){let o=Poe.getValue(r),l=new Map;if(typeof o!="object"||Array.isArray(o))throw new bX.UsageError(`Map configuration settings "${t}" must be an object`);if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=n.normalizeKeys?n.normalizeKeys(A):A,C=`${t}['${I}']`,b=n.valueDefinition;l.set(I,wAr(e,C,f,b,a))}return l}function TAr(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case Wl.SHAPE:{if(t.isArray&&!r)return[];let n=new Map;for(let[a,o]of Object.entries(t.properties))n.set(a,TAr(e,o));return n}case Wl.MAP:return t.isArray&&!r?[]:new Map;case Wl.ABSOLUTE_PATH:return t.default===null?null:e.projectCwd===null?Array.isArray(t.default)?t.default.map(n=>Zf.ppath.normalize(n)):Zf.ppath.isAbsolute(t.default)?Zf.ppath.normalize(t.default):t.isNullable?null:void 0:Array.isArray(t.default)?t.default.map(n=>Zf.ppath.resolve(e.projectCwd,n)):Zf.ppath.resolve(e.projectCwd,t.default);case Wl.DURATION:return eD.parseDuration(t.default,t.unit);default:return t.default}}function mAt(e,t,r){if(t.type===Wl.SECRET&&typeof e=="string"&&r.hideSecrets)return Om.SECRET;if(t.type===Wl.ABSOLUTE_PATH&&typeof e=="string"&&r.getNativePaths)return Zf.npath.fromPortablePath(e);if(t.isArray&&Array.isArray(e)){let n=[];for(let a of e)n.push(mAt(a,t,r));return n}if(t.type===Wl.MAP&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=mAt(o,t.valueDefinition,r);typeof l<"u"&&n.set(a,l)}return n}if(t.type===Wl.SHAPE&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=t.properties[a],A=mAt(o,l,r);typeof A<"u"&&n.set(a,A)}return n}return e}function $Wo(){let e={};for(let[t,r]of Object.entries(process.env))t=t.toLowerCase(),t.startsWith(Om.ENVIRONMENT_PREFIX)&&(t=(0,FWo.default)(t.slice(Om.ENVIRONMENT_PREFIX.length)),e[t]=r);return e}function BAr(){let e=`${Om.ENVIRONMENT_PREFIX}rc_filename`;for(let[t,r]of Object.entries(process.env))if(t.toLowerCase()===e&&typeof r=="string")return r;return Om.DEFAULT_RC_FILENAME}async function xZn(e){try{return await Zf.xfs.readFilePromise(e)}catch{return Buffer.of()}}async function eOo(e,t){return Buffer.compare(...await Promise.all([xZn(e),xZn(t)]))===0}async function tOo(e,t){let[r,n]=await Promise.all([Zf.xfs.statPromise(e),Zf.xfs.statPromise(t)]);return r.dev===n.dev&&r.ino===n.ino}var rOo=process.platform==="win32"?eOo:tOo;async function nOo({configuration:e,selfPath:t}){let r=e.get("yarnPath");return e.get("ignorePath")||r===null||r===t||await rOo(r,t)?null:r}var L5e=class e{static create(t,r,n){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(Om.coreDefinitions);let o=typeof n<"u"?n:r instanceof Map?r:new Map;for(let[l,A]of o)a.activatePlugin(l,A);return a}static async find(t,r,{strict:n=!0,usePathCheck:a=null,useRc:o=!0}={}){let l=$Wo();delete l.rcFilename;let A=new e(t),f=await e.findRcFiles(t),I=await e.findFolderRcFile(hAt.getHomeFolder());I&&(f.find(de=>de.path===I.path)||f.unshift(I));let C=Poe.resolveRcFiles(f.map(ue=>[ue.path,ue.data])),b=Zf.PortablePath.dot,E=new Set(Object.keys(Om.coreDefinitions)),N=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be})=>({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be}),B=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be,...Se})=>{let De={};for(let[k,tt]of Object.entries(Se))E.has(k)&&(De[k]=tt);return De},F=({yarnPath:ue,ignorePath:de,...be})=>{let Se={};for(let[De,k]of Object.entries(be))E.has(De)||(Se[De]=k);return Se};if(A.importSettings(N(Om.coreDefinitions)),A.useWithSource("",N(l),t,{strict:!1}),C){let[ue,de]=C;A.useWithSource(ue,N(de),b,{strict:!1})}if(a){if(await nOo({configuration:A,selfPath:a})!==null)return A;A.useWithSource("",{ignorePath:!0},t,{strict:!1,overwrite:!0})}let Q=await e.findProjectCwd(t);A.startingCwd=t,A.projectCwd=Q;let J=Object.assign(Object.create(null),process.env);A.env=J;let ae=await Promise.all(A.get("injectEnvironmentFiles").map(async ue=>{let de=ue.endsWith("?")?await Zf.xfs.readFilePromise(ue.slice(0,-1),"utf8").catch(()=>""):await Zf.xfs.readFilePromise(ue,"utf8");return(0,ZWo.parse)(de)}));for(let ue of ae)for(let[de,be]of Object.entries(ue))A.env[de]=eD.replaceEnvVariables(be,{env:J});if(A.importSettings(B(Om.coreDefinitions)),A.useWithSource("",B(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,B(de),b,{strict:n})}let ne=ue=>"default"in ue?ue.default:ue,ce=new Map([["@@core",WWo.CorePlugin]]);if(r!==null)for(let ue of r.plugins.keys())ce.set(ue,ne(r.modules.get(ue)));for(let[ue,de]of ce)A.activatePlugin(ue,de);let fe=new Map([]);if(r!==null){let ue=new Map;for(let[Se,De]of r.modules)ue.set(Se,()=>De);let de=new Set,be=async(Se,De)=>{let{factory:k,name:tt}=eD.dynamicRequire(Se);if(!k||de.has(tt))return;let ze=new Map(ue),Le=ft=>{if((0,LWo.isBuiltin)(ft))return eD.dynamicRequire(ft);if(ze.has(ft))return ze.get(ft)();throw new bX.UsageError(`This plugin cannot access the package referenced via ${ft} which is neither a builtin, nor an exposed entry`)},Je=await eD.prettifyAsyncErrors(async()=>ne(await k(Le)),ft=>`${ft} (when initializing ${tt}, defined in ${De})`);ue.set(tt,()=>Je),de.add(tt),fe.set(tt,Je)};if(l.plugins)for(let Se of l.plugins.split(";")){let De=Zf.ppath.resolve(t,Zf.npath.toPortablePath(Se));await be(De,"")}for(let{path:Se,cwd:De,data:k}of f)if(o&&Array.isArray(k.plugins))for(let tt of k.plugins){let ze=typeof tt!="string"?tt.path:tt,Le=tt?.spec??"",Je=tt?.checksum??"";if(Om.LEGACY_PLUGINS.has(Le))continue;let ft=Zf.ppath.resolve(De,Zf.npath.toPortablePath(ze));if(!await Zf.xfs.existsPromise(ft)){if(!Le){let Er=ib.pretty(A,Zf.ppath.basename(ft,".cjs"),ib.Type.NAME),Sr=ib.pretty(A,".gitignore",ib.Type.NAME),jt=ib.pretty(A,A.values.get("rcFilename"),ib.Type.NAME),Bt=ib.pretty(A,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",ib.Type.URL);throw new bX.UsageError(`Missing source for the ${Er} plugin - please try to remove the plugin from ${jt} then reinstall it manually. This error usually occurs because ${Sr} is incorrect, check ${Bt} to make sure your plugin folder isn't gitignored.`)}if(!Le.match(/^https?:/)){let Er=ib.pretty(A,Zf.ppath.basename(ft,".cjs"),ib.Type.NAME),Sr=ib.pretty(A,A.values.get("rcFilename"),ib.Type.NAME);throw new bX.UsageError(`Failed to recognize the source for the ${Er} plugin - please try to delete the plugin from ${Sr} then reinstall it manually.`)}let lt=await UWo.get(Le,{configuration:A}),Ot=JWo.makeHash(lt);if(Je&&Je!==Ot){let Er=ib.pretty(A,Zf.ppath.basename(ft,".cjs"),ib.Type.NAME),Sr=ib.pretty(A,A.values.get("rcFilename"),ib.Type.NAME),jt=ib.pretty(A,`yarn plugin import ${Le}`,ib.Type.CODE);throw new bX.UsageError(`Failed to fetch the ${Er} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${Sr} then run ${jt} to reimport it.`)}await Zf.xfs.mkdirPromise(Zf.ppath.dirname(ft),{recursive:!0}),await Zf.xfs.writeFilePromise(ft,lt)}await be(ft,Se)}}for(let[ue,de]of fe)A.activatePlugin(ue,de);if(A.useWithSource("",F(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,F(de),b,{strict:n})}return A.get("enableGlobalCache")&&(A.values.set("cacheFolder",`${A.get("globalFolder")}/cache`),A.sources.set("cacheFolder","")),A}static async findRcFiles(t){let r=BAr(),n=[],a=t,o=null;for(;a!==o;){o=a;let l=Zf.ppath.join(o,r);if(Zf.xfs.existsSync(l)){let A,f;try{f=await Zf.xfs.readFilePromise(l,"utf8"),A=(0,fAt.parseSyml)(f)}catch{let I="";throw f?.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(I=" (in particular, make sure you list the colons after each key name)"),new bX.UsageError(`Parse error when loading ${l}; please check it's proper Yaml${I}`)}n.unshift({path:l,cwd:o,data:A})}a=Zf.ppath.dirname(o)}return n}static async findFolderRcFile(t){let r=Zf.ppath.join(t,Zf.Filename.rc),n;try{n=await Zf.xfs.readFilePromise(r,"utf8")}catch(o){if(o.code==="ENOENT")return null;throw o}let a=(0,fAt.parseSyml)(n);return{path:r,cwd:t,data:a}}static async findProjectCwd(t){let r=null,n=t,a=null;for(;n!==a;){if(a=n,Zf.xfs.existsSync(Zf.ppath.join(a,Zf.Filename.lockfile)))return a;Zf.xfs.existsSync(Zf.ppath.join(a,Zf.Filename.manifest))&&(r=a),n=Zf.ppath.dirname(a)}return r}static async updateConfiguration(t,r,n={}){let a=BAr(),o=Zf.ppath.join(t,a),l=Zf.xfs.existsSync(o)?(0,fAt.parseSyml)(await Zf.xfs.readFilePromise(o,"utf8")):{},A=!1,f;if(typeof r=="function"){try{f=r(l)}catch{f=r({})}if(f===l)return!1}else{f=l;for(let I of Object.keys(r)){let C=l[I],b=r[I],E;if(typeof b=="function")try{E=b(C)}catch{E=b(void 0)}else E=b;C!==E&&(E===e.deleteProperty?delete f[I]:f[I]=E,A=!0)}if(!A)return!1}return await Zf.xfs.changeFilePromise(o,(0,fAt.stringifySyml)(f),{automaticNewlines:!0}),!0}static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,n=>{let a=n.plugins??[];if(a.length===0)return{...n,plugins:r};let o=[],l=[...r];for(let A of a){let f=typeof A!="string"?A.path:A,I=l.find(C=>C.path===f);I?(o.push(I),l=l.filter(C=>C!==I)):o.push(A)}return o.push(...l),{...n,plugins:o}})}static async updateHomeConfiguration(t){let r=hAt.getHomeFolder();return await e.updateConfiguration(r,t)}constructor(t){this.isCI=Yve.isCI,this.projectCwd=null,this.plugins=new Map,this.settings=new Map,this.values=new Map,this.sources=new Map,this.invalid=new Map,this.env={},this.limits=new Map,this.packageExtensions=null,this.startingCwd=t}activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(t){for(let[r,n]of Object.entries(t))if(n!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,n),this.values.set(r,TAr(this,n))}}useWithSource(t,r,n,a){try{this.use(t,r,n,a)}catch(o){throw o.message+=` (in ${ib.pretty(this,t,ib.Type.PATH)})`,o}}use(t,r,n,{strict:a=!0,overwrite:o=!1}={}){a=a&&this.get("enableStrictSettings");for(let l of["enableStrictSettings",...Object.keys(r)]){let A=r[l],f=Poe.getSource(A);if(f&&(t=f),typeof A>"u"||l==="plugins"||t===""&&jWo.has(l))continue;if(l==="rcFilename")throw new bX.UsageError(`The rcFilename settings can only be set via ${`${Om.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`);let I=this.settings.get(l);if(!I){let b=hAt.getHomeFolder(),E=t[0]!=="<"?Zf.ppath.dirname(t):null;if(a&&!(E!==null?b===E:!1))throw new bX.UsageError(`Unrecognized or legacy configuration settings found: ${l} - run "yarn config" to see the list of settings supported in Yarn`);this.invalid.set(l,t);continue}if(this.sources.has(l)&&!(o||I.type===Wl.MAP||I.isArray&&I.concatenateValues))continue;let C;try{C=wAr(this,l,A,I,n)}catch(b){throw b.message+=` in ${ib.pretty(this,t,ib.Type.PATH)}`,b}if(l==="enableStrictSettings"&&t!==""){a=C;continue}if(I.type===Wl.MAP){let b=this.values.get(l);this.values.set(l,new Map(o?[...b,...C]:[...C,...b])),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else if(I.isArray&&I.concatenateValues){let b=this.values.get(l);this.values.set(l,o?[...b,...C]:[...C,...b]),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else this.values.set(l,C),this.sources.set(l,t)}}get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key "${t}"`);return this.values.get(t)}getSpecial(t,{hideSecrets:r=!1,getNativePaths:n=!1}){let a=this.get(t),o=this.settings.get(t);if(typeof o>"u")throw new bX.UsageError(`Couldn't find a configuration settings named "${t}"`);return mAt(a,o,{hideSecrets:r,getNativePaths:n})}getSubprocessStreams(t,{header:r,prefix:n,report:a}){let o,l,A=Zf.xfs.createWriteStream(t);if(this.get("enableInlineBuilds")){let f=a.createStreamReporter(`${n} ${ib.pretty(this,"STDOUT","green")}`),I=a.createStreamReporter(`${n} ${ib.pretty(this,"STDERR","red")}`);o=new DZn.PassThrough,o.pipe(f),o.pipe(A),l=new DZn.PassThrough,l.pipe(I),l.pipe(A)}else o=A,l=A,typeof r<"u"&&o.write(`${r} +`);return{stdout:o,stderr:l}}makeResolver(){let t=[];for(let r of this.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new MWo.MultiResolver([new YWo.VirtualResolver,new XWo.WorkspaceResolver,...t])}makeFetcher(){let t=[];for(let r of this.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new PWo.MultiFetcher([new HWo.VirtualFetcher,new QWo.WorkspaceFetcher,...t])}getLinkers(){let t=[];for(let r of this.plugins.values())for(let n of r.linkers||[])t.push(new n);return t}getSupportedArchitectures(){let t=GZn.getArchitecture(),r=this.get("supportedArchitectures"),n=r.get("os");n!==null&&(n=n.map(l=>l==="current"?t.os:l));let a=r.get("cpu");a!==null&&(a=a.map(l=>l==="current"?t.cpu:l));let o=r.get("libc");return o!==null&&(o=eD.mapAndFilter(o,l=>l==="current"?t.libc??eD.mapAndFilter.skip:l)),{os:n,cpu:a,libc:o}}isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("preferInteractive"):!1}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let t=this.packageExtensions,r=(n,a,{userProvided:o=!1}={})=>{if(!IAt.validRange(n.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let l=new OWo.Manifest;l.load(a,{yamlCompatibilityMode:!0});let A=eD.getArrayWithDefault(t,n.identHash),f=[];A.push([n.range,f]);let I={status:CM.PackageExtensionStatus.Inactive,userProvided:o,parentDescriptor:n};for(let C of l.dependencies.values())f.push({...I,type:CM.PackageExtensionType.Dependency,descriptor:C});for(let C of l.peerDependencies.values())f.push({...I,type:CM.PackageExtensionType.PeerDependency,descriptor:C});for(let[C,b]of l.peerDependenciesMeta)for(let[E,N]of Object.entries(b))f.push({...I,type:CM.PackageExtensionType.PeerDependencyMeta,selector:C,key:E,value:N})};await this.triggerHook(n=>n.registerPackageExtensions,this,r);for(let[n,a]of this.get("packageExtensions"))r(FZ.parseDescriptor(n,!0),eD.convertMapsToIndexableObjects(a),{userProvided:!0});return t}normalizeLocator(t){return IAt.validRange(t.reference)?FZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):Om.TAG_REGEXP.test(t.reference)?FZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):t}normalizeDependency(t){return IAt.validRange(t.range)?FZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):Om.TAG_REGEXP.test(t.range)?FZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):t}normalizeDependencyMap(t){return new Map([...t].map(([r,n])=>[r,this.normalizeDependency(n)]))}normalizePackage(t,{packageExtensions:r}){let n=FZ.copyPackage(t),a=r.get(t.identHash);if(typeof a<"u"){let l=t.version;if(l!==null){for(let[A,f]of a)if(IAt.satisfiesWithPrereleases(l,A))for(let I of f)switch(I.status===CM.PackageExtensionStatus.Inactive&&(I.status=CM.PackageExtensionStatus.Redundant),I.type){case CM.PackageExtensionType.Dependency:typeof n.dependencies.get(I.descriptor.identHash)>"u"&&(I.status=CM.PackageExtensionStatus.Active,n.dependencies.set(I.descriptor.identHash,this.normalizeDependency(I.descriptor)));break;case CM.PackageExtensionType.PeerDependency:typeof n.peerDependencies.get(I.descriptor.identHash)>"u"&&(I.status=CM.PackageExtensionStatus.Active,n.peerDependencies.set(I.descriptor.identHash,I.descriptor));break;case CM.PackageExtensionType.PeerDependencyMeta:{let C=n.peerDependenciesMeta.get(I.selector);(typeof C>"u"||!Object.hasOwn(C,I.key)||C[I.key]!==I.value)&&(I.status=CM.PackageExtensionStatus.Active,eD.getFactoryWithDefault(n.peerDependenciesMeta,I.selector,()=>({}))[I.key]=I.value)}break;default:eD.assertNever(I)}}}let o=l=>l.scope?`${l.scope}__${l.name}`:`${l.name}`;for(let l of n.peerDependenciesMeta.keys()){let A=FZ.parseIdent(l);n.peerDependencies.has(A.identHash)||n.peerDependencies.set(A.identHash,FZ.makeDescriptor(A,"*"))}for(let l of n.peerDependencies.values()){if(l.scope==="types")continue;let A=o(l),f=FZ.makeIdent("types",A),I=FZ.stringifyIdent(f);n.peerDependencies.has(f.identHash)||n.peerDependenciesMeta.has(I)||n.dependencies.has(f.identHash)||(n.peerDependencies.set(f.identHash,FZ.makeDescriptor(f,"*")),n.peerDependenciesMeta.set(I,{optional:!0}))}return n.dependencies=new Map(eD.sortMap(n.dependencies,([,l])=>FZ.stringifyDescriptor(l))),n.peerDependencies=new Map(eD.sortMap(n.peerDependencies,([,l])=>FZ.stringifyDescriptor(l))),n}getLimit(t){return eD.getFactoryWithDefault(this.limits,t,()=>(0,VWo.default)(this.get(t)))}async triggerHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);o&&await o(...r)}}async triggerMultipleHooks(t,r){for(let n of r)await this.triggerHook(t,...n)}async reduceHook(t,r,...n){let a=r;for(let o of this.plugins.values()){let l=o.hooks;if(!l)continue;let A=t(l);A&&(a=await A(a,...n))}return a}async firstHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);if(!o)continue;let l=await o(...r);if(typeof l<"u")return l}return null}};Om.Configuration=L5e;L5e.deleteProperty=Symbol();L5e.telemetry=null});var pAt=H(l8=>{"use strict";Object.defineProperty(l8,"__esModule",{value:!0});l8.ExecError=l8.PipeError=l8.EndStrategy=void 0;l8.pipevp=iOo;l8.execvp=sOo;var FZn=(Wa(),vi(Va)),_At=No(),ZZn=FZn.__importDefault(ilt()),LZn=V5e(),yAt=K9(),VZn=pM(),_M=FZn.__importStar(gM()),yIe;(function(e){e[e.Never=0]="Never",e[e.ErrorCode=1]="ErrorCode",e[e.Always=2]="Always"})(yIe||(l8.EndStrategy=yIe={}));var W5e=class extends VZn.ReportError{constructor({fileName:t,code:r,signal:n}){let a=LZn.Configuration.create(_At.ppath.cwd()),o=_M.pretty(a,t,_M.Type.PATH);super(yAt.MessageName.EXCEPTION,`Child ${o} reported an error`,l=>{aOo(r,n,{configuration:a,report:l})}),this.code=DAr(r,n)}};l8.PipeError=W5e;var bAt=class extends W5e{constructor({fileName:t,code:r,signal:n,stdout:a,stderr:o}){super({fileName:t,code:r,signal:n}),this.stdout=a,this.stderr=o}};l8.ExecError=bAt;function CIe(e){return e!==null&&typeof e.fd=="number"}var _Ie=new Set;function RAr(){}function NAr(){for(let e of _Ie)e.kill()}async function iOo(e,t,{cwd:r,env:n=process.env,strict:a=!1,stdin:o=null,stdout:l,stderr:A,end:f=yIe.Always}){let I=["pipe","pipe","pipe"];o===null?I[0]="ignore":CIe(o)&&(I[0]=o),CIe(l)&&(I[1]=l),CIe(A)&&(I[2]=A);let C=(0,ZZn.default)(e,t,{cwd:_At.npath.fromPortablePath(r),env:{...n,PWD:_At.npath.fromPortablePath(r)},stdio:I});_Ie.add(C),_Ie.size===1&&(process.on("SIGINT",RAr),process.on("SIGTERM",NAr)),!CIe(o)&&o!==null&&o.pipe(C.stdin),CIe(l)||C.stdout.pipe(l,{end:!1}),CIe(A)||C.stderr.pipe(A,{end:!1});let b=()=>{for(let E of new Set([l,A]))CIe(E)||E.end()};return new Promise((E,N)=>{C.on("error",B=>{_Ie.delete(C),_Ie.size===0&&(process.off("SIGINT",RAr),process.off("SIGTERM",NAr)),(f===yIe.Always||f===yIe.ErrorCode)&&b(),N(B)}),C.on("close",(B,F)=>{_Ie.delete(C),_Ie.size===0&&(process.off("SIGINT",RAr),process.off("SIGTERM",NAr)),(f===yIe.Always||f===yIe.ErrorCode&&B!==0)&&b(),B===0||!a?E({code:DAr(B,F)}):N(new W5e({fileName:e,code:B,signal:F}))})})}async function sOo(e,t,{cwd:r,env:n=process.env,encoding:a="utf8",strict:o=!1}){let l=["ignore","pipe","pipe"],A=[],f=[],I=_At.npath.fromPortablePath(r);typeof n.PWD<"u"&&(n={...n,PWD:I});let C=(0,ZZn.default)(e,t,{cwd:I,env:n,stdio:l});return C.stdout.on("data",b=>{A.push(b)}),C.stderr.on("data",b=>{f.push(b)}),await new Promise((b,E)=>{C.on("error",N=>{let B=LZn.Configuration.create(r),F=_M.pretty(B,e,_M.Type.PATH);E(new VZn.ReportError(yAt.MessageName.EXCEPTION,`Process ${F} failed to spawn`,Q=>{Q.reportError(yAt.MessageName.EXCEPTION,` ${_M.prettyField(B,{label:"Thrown Error",value:_M.tuple(_M.Type.NO_HINT,N.message)})}`)}))}),C.on("close",(N,B)=>{let F=a==="buffer"?Buffer.concat(A):Buffer.concat(A).toString(a),Q=a==="buffer"?Buffer.concat(f):Buffer.concat(f).toString(a);N===0||!o?b({code:DAr(N,B),stdout:F,stderr:Q}):E(new bAt({fileName:e,code:N,signal:B,stdout:F,stderr:Q}))})})}var oOo=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function DAr(e,t){let r=oOo.get(t);return typeof r<"u"?128+r:e??1}function aOo(e,t,{configuration:r,report:n}){n.reportError(yAt.MessageName.EXCEPTION,` ${_M.prettyField(r,e!==null?{label:"Exit Code",value:_M.tuple(_M.Type.NUMBER,e)}:{label:"Exit Signal",value:_M.tuple(_M.Type.CODE,t)})}`)}});var kAr=H(u8=>{"use strict";Object.defineProperty(u8,"__esModule",{value:!0});u8.cachedInstance=void 0;u8.setFactory=cOo;u8.getInstance=lOo;u8.tryInstance=uOo;var WZn=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")};function cOo(e){WZn=e}function lOo(){return typeof u8.cachedInstance>"u"&&(u8.cachedInstance=WZn()),u8.cachedInstance}function uOo(){return u8.cachedInstance}});var OZn=H((EAt,GAr)=>{var gOo=Object.assign({},Et("fs")),xAr=function(){var e=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(e=e||__filename),function(t){t=t||{};var r=typeof t<"u"?t:{},n,a;r.ready=new Promise(function(Zs,io){n=Zs,a=io});var o={},l;for(l in r)r.hasOwnProperty(l)&&(o[l]=r[l]);var A=[],f="./this.program",I=function(Zs,io){throw io},C=!1,b=!0,E="";function N(Zs){return r.locateFile?r.locateFile(Zs,E):E+Zs}var B,F,Q,J;b&&(C?E=Et("path").dirname(E)+"/":E=__dirname+"/",B=function(io,Ea){var Hl=_I(io);return Hl?Ea?Hl:Hl.toString():(Q||(Q=gOo),J||(J=Et("path")),io=J.normalize(io),Q.readFileSync(io,Ea?null:"utf8"))},F=function(io){var Ea=B(io,!0);return Ea.buffer||(Ea=new Uint8Array(Ea)),tt(Ea.buffer),Ea},process.argv.length>1&&(f=process.argv[1].replace(/\\/g,"/")),A=process.argv.slice(2),I=function(Zs){process.exit(Zs)},r.inspect=function(){return"[Emscripten Module object]"});var ae=r.print||console.log.bind(console),ne=r.printErr||console.warn.bind(console);for(l in o)o.hasOwnProperty(l)&&(r[l]=o[l]);o=null,r.arguments&&(A=r.arguments),r.thisProgram&&(f=r.thisProgram),r.quit&&(I=r.quit);var ce=0,fe=function(Zs){ce=Zs},ue;r.wasmBinary&&(ue=r.wasmBinary);var de=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Qi("no native wasm support detected");function be(Zs,io,Ea){switch(io=io||"i8",io.charAt(io.length-1)==="*"&&(io="i32"),io){case"i1":return $t[Zs>>0];case"i8":return $t[Zs>>0];case"i16":return ma((Zs>>1)*2);case"i32":return vu((Zs>>2)*4);case"i64":return vu((Zs>>2)*4);case"float":return Nc((Zs>>2)*4);case"double":return oA((Zs>>3)*8);default:Qi("invalid type for getValue: "+io)}return null}var Se,De=!1,k;function tt(Zs,io){Zs||Qi("Assertion failed: "+io)}function ze(Zs){var io=r["_"+Zs];return tt(io,"Cannot call unknown function "+Zs+", make sure it is exported"),io}function Le(Zs,io,Ea,Hl,Dr){var On={string:function(rf){var op=0;if(rf!=null&&rf!==0){var bd=(rf.length<<2)+1;op=sp(bd),Er(rf,op,bd)}return op},array:function(rf){var op=sp(rf.length);return Bt(rf,op),op}};function di(rf){return io==="string"?lt(rf):io==="boolean"?!!rf:rf}var aa=ze(Zs),vo=[],us=0;if(Hl)for(var Xl=0;Xl=Ea)&&Xt[Hl];)++Hl;return ft.decode(Xt.subarray(Zs,Hl))}function Ot(Zs,io,Ea,Hl){if(!(Hl>0))return 0;for(var Dr=Ea,On=Ea+Hl-1,di=0;di=55296&&aa<=57343){var vo=Zs.charCodeAt(++di);aa=65536+((aa&1023)<<10)|vo&1023}if(aa<=127){if(Ea>=On)break;io[Ea++]=aa}else if(aa<=2047){if(Ea+1>=On)break;io[Ea++]=192|aa>>6,io[Ea++]=128|aa&63}else if(aa<=65535){if(Ea+2>=On)break;io[Ea++]=224|aa>>12,io[Ea++]=128|aa>>6&63,io[Ea++]=128|aa&63}else{if(Ea+3>=On)break;io[Ea++]=240|aa>>18,io[Ea++]=128|aa>>12&63,io[Ea++]=128|aa>>6&63,io[Ea++]=128|aa&63}}return io[Ea]=0,Ea-Dr}function Er(Zs,io,Ea){return Ot(Zs,Xt,io,Ea)}function Sr(Zs){for(var io=0,Ea=0;Ea=55296&&Hl<=57343&&(Hl=65536+((Hl&1023)<<10)|Zs.charCodeAt(++Ea)&1023),Hl<=127?++io:Hl<=2047?io+=2:Hl<=65535?io+=3:io+=4}return io}function jt(Zs){var io=Sr(Zs)+1,Ea=Ma(io);return Ea&&Ot(Zs,$t,Ea,io),Ea}function Bt(Zs,io){$t.set(Zs,io)}function Nt(Zs,io){return Zs%io>0&&(Zs+=io-Zs%io),Zs}var Fr,$t,Xt,lr,cr,Ar,qr,_n,ke,zt;function Fn(Zs){Fr=Zs,r.HEAP_DATA_VIEW=zt=new DataView(Zs),r.HEAP8=$t=new Int8Array(Zs),r.HEAP16=lr=new Int16Array(Zs),r.HEAP32=Ar=new Int32Array(Zs),r.HEAPU8=Xt=new Uint8Array(Zs),r.HEAPU16=cr=new Uint16Array(Zs),r.HEAPU32=qr=new Uint32Array(Zs),r.HEAPF32=_n=new Float32Array(Zs),r.HEAPF64=ke=new Float64Array(Zs)}var Nn=r.INITIAL_MEMORY||16777216,Hi,Ao=[],Vr=[],xi=[],no=!1;function ga(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)al(r.preRun.shift());Ei(Ao)}function Ya(){no=!0,Ei(Vr)}function Gc(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Hr(r.postRun.shift());Ei(xi)}function al(Zs){Ao.unshift(Zs)}function Sc(Zs){Vr.unshift(Zs)}function Hr(Zs){xi.unshift(Zs)}var Or=0,Ft=null,zr=null;function Rn(Zs){Or++,r.monitorRunDependencies&&r.monitorRunDependencies(Or)}function Pr(Zs){if(Or--,r.monitorRunDependencies&&r.monitorRunDependencies(Or),Or==0&&(Ft!==null&&(clearInterval(Ft),Ft=null),zr)){var io=zr;zr=null,io()}}r.preloadedImages={},r.preloadedAudios={};function Qi(Zs){r.onAbort&&r.onAbort(Zs),Zs+="",ne(Zs),De=!0,k=1,Zs="abort("+Zs+"). Build with -s ASSERTIONS=1 for more info.";var io=new WebAssembly.RuntimeError(Zs);throw a(io),io}var ps="data:application/octet-stream;base64,";function _o(Zs){return Zs.startsWith(ps)}var yo="data:application/octet-stream;base64,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QCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsi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CyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcN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DCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQL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bGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRl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UgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkA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SXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";_o(yo)||(yo=N(yo));function Qa(Zs){try{if(Zs==yo&&ue)return new Uint8Array(ue);var io=_I(Zs);if(io)return io;if(F)return F(Zs);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(Ea){Qi(Ea)}}function gc(Zs,io){var Ea,Hl,Dr;try{Dr=Qa(Zs),Hl=new WebAssembly.Module(Dr),Ea=new WebAssembly.Instance(Hl,io)}catch(di){var On=di.toString();throw ne("failed to compile wasm module: "+On),(On.includes("imported Memory")||On.includes("memory import"))&&ne("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),di}return[Ea,Hl]}function _g(){var Zs={a:Kh};function io(Dr,On){var di=Dr.exports;r.asm=di,Se=r.asm.g,Fn(Se.buffer),Hi=r.asm.W,Sc(r.asm.h),Pr("wasm-instantiate")}if(Rn("wasm-instantiate"),r.instantiateWasm)try{var Ea=r.instantiateWasm(Zs,io);return Ea}catch(Dr){return ne("Module.instantiateWasm callback failed with error: "+Dr),!1}var Hl=gc(yo,Zs);return io(Hl[0]),r.asm}function Nc(Zs){return zt.getFloat32(Zs,!0)}function oA(Zs){return zt.getFloat64(Zs,!0)}function ma(Zs){return zt.getInt16(Zs,!0)}function vu(Zs){return zt.getInt32(Zs,!0)}function li(Zs,io){zt.setInt32(Zs,io,!0)}function Ei(Zs){for(;Zs.length>0;){var io=Zs.shift();if(typeof io=="function"){io(r);continue}var Ea=io.func;typeof Ea=="number"?io.arg===void 0?Hi.get(Ea)():Hi.get(Ea)(io.arg):Ea(io.arg===void 0?null:io.arg)}}function Ws(Zs,io){var Ea=new Date(vu((Zs>>2)*4)*1e3);li((io>>2)*4,Ea.getUTCSeconds()),li((io+4>>2)*4,Ea.getUTCMinutes()),li((io+8>>2)*4,Ea.getUTCHours()),li((io+12>>2)*4,Ea.getUTCDate()),li((io+16>>2)*4,Ea.getUTCMonth()),li((io+20>>2)*4,Ea.getUTCFullYear()-1900),li((io+24>>2)*4,Ea.getUTCDay()),li((io+36>>2)*4,0),li((io+32>>2)*4,0);var Hl=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Hl)/(1e3*60*60*24)|0;return li((io+28>>2)*4,Dr),Ws.GMTString||(Ws.GMTString=jt("GMT")),li((io+40>>2)*4,Ws.GMTString),io}function Xa(Zs,io){return Ws(Zs,io)}function ac(Zs,io,Ea){Xt.copyWithin(Zs,io,io+Ea)}function Ql(Zs){try{return Se.grow(Zs-Fr.byteLength+65535>>>16),Fn(Se.buffer),1}catch{}}function Oc(Zs){var io=Xt.length;Zs=Zs>>>0;var Ea=2147483648;if(Zs>Ea)return!1;for(var Hl=1;Hl<=4;Hl*=2){var Dr=io*(1+.2/Hl);Dr=Math.min(Dr,Zs+100663296);var On=Math.min(Ea,Nt(Math.max(Zs,Dr),65536)),di=Ql(On);if(di)return!0}return!1}function vg(Zs){fe(Zs)}function Kl(Zs){var io=Date.now()/1e3|0;return Zs&&li((Zs>>2)*4,io),io}function Ju(){if(Ju.called)return;Ju.called=!0;var Zs=new Date().getFullYear(),io=new Date(Zs,0,1),Ea=new Date(Zs,6,1),Hl=io.getTimezoneOffset(),Dr=Ea.getTimezoneOffset(),On=Math.max(Hl,Dr);li((Ca()>>2)*4,On*60),li((Oa()>>2)*4,+(Hl!=Dr));function di(WA){var If=WA.toTimeString().match(/\(([A-Za-z ]+)\)$/);return If?If[1]:"GMT"}var aa=di(io),vo=di(Ea),us=jt(aa),Xl=jt(vo);Dr>2)*4,us),li((Fs()+4>>2)*4,Xl)):(li((Fs()>>2)*4,Xl),li((Fs()+4>>2)*4,us))}function Da(Zs){Ju();var io=Date.UTC(vu((Zs+20>>2)*4)+1900,vu((Zs+16>>2)*4),vu((Zs+12>>2)*4),vu((Zs+8>>2)*4),vu((Zs+4>>2)*4),vu((Zs>>2)*4),0),Ea=new Date(io);li((Zs+24>>2)*4,Ea.getUTCDay());var Hl=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Hl)/(1e3*60*60*24)|0;return li((Zs+28>>2)*4,Dr),Ea.getTime()/1e3|0}var fu=typeof atob=="function"?atob:function(Zs){var io="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ea="",Hl,Dr,On,di,aa,vo,us,Xl=0;Zs=Zs.replace(/[^A-Za-z0-9\+\/\=]/g,"");do di=io.indexOf(Zs.charAt(Xl++)),aa=io.indexOf(Zs.charAt(Xl++)),vo=io.indexOf(Zs.charAt(Xl++)),us=io.indexOf(Zs.charAt(Xl++)),Hl=di<<2|aa>>4,Dr=(aa&15)<<4|vo>>2,On=(vo&3)<<6|us,Ea=Ea+String.fromCharCode(Hl),vo!==64&&(Ea=Ea+String.fromCharCode(Dr)),us!==64&&(Ea=Ea+String.fromCharCode(On));while(Xl0||(ga(),Or>0))return;function io(){QA||(QA=!0,r.calledRun=!0,!De&&(Ya(),n(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),Gc()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),io()},1)):io()}if(r.run=ff,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return ff(),t}}();typeof EAt=="object"&&typeof GAr=="object"?GAr.exports=xAr:typeof define=="function"&&define.amd?define([],function(){return xAr}):typeof EAt=="object"&&(EAt.createModule=xAr)});var PZn=H(Qve=>{"use strict";Object.defineProperty(Qve,"__esModule",{value:!0});Qve.makeInterface=Qve.Errors=void 0;var E$=["number","number"],FAr;(function(e){e[e.ZIP_ER_OK=0]="ZIP_ER_OK",e[e.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",e[e.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",e[e.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",e[e.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",e[e.ZIP_ER_READ=5]="ZIP_ER_READ",e[e.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",e[e.ZIP_ER_CRC=7]="ZIP_ER_CRC",e[e.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",e[e.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",e[e.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",e[e.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",e[e.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",e[e.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",e[e.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",e[e.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",e[e.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",e[e.ZIP_ER_EOF=17]="ZIP_ER_EOF",e[e.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",e[e.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",e[e.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",e[e.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",e[e.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",e[e.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",e[e.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",e[e.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",e[e.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",e[e.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",e[e.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",e[e.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",e[e.ZIP_ER_TELL=30]="ZIP_ER_TELL",e[e.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(FAr||(Qve.Errors=FAr={}));var AOo=e=>({get HEAPU8(){return e.HEAPU8},errors:FAr,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:e._malloc(1),uint32S:e._malloc(4),malloc:e._malloc,free:e._free,getValue:e.getValue,openFromSource:e.cwrap("zip_open_from_source","number",["number","number","number"]),close:e.cwrap("zip_close","number",["number"]),discard:e.cwrap("zip_discard",null,["number"]),getError:e.cwrap("zip_get_error","number",["number"]),getName:e.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:e.cwrap("zip_get_num_entries","number",["number","number"]),delete:e.cwrap("zip_delete","number",["number","number"]),statIndex:e.cwrap("zip_stat_index","number",["number",...E$,"number","number"]),fopenIndex:e.cwrap("zip_fopen_index","number",["number",...E$,"number"]),fread:e.cwrap("zip_fread","number",["number","number","number","number"]),fclose:e.cwrap("zip_fclose","number",["number"]),dir:{add:e.cwrap("zip_dir_add","number",["number","string"])},file:{add:e.cwrap("zip_file_add","number",["number","string","number","number"]),getError:e.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:e.cwrap("zip_file_get_external_attributes","number",["number",...E$,"number","number","number"]),setExternalAttributes:e.cwrap("zip_file_set_external_attributes","number",["number",...E$,"number","number","number"]),setMtime:e.cwrap("zip_file_set_mtime","number",["number",...E$,"number","number"]),setCompression:e.cwrap("zip_set_file_compression","number",["number",...E$,"number","number"])},ext:{countSymlinks:e.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:e.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:e.cwrap("zip_error_strerror","string",["number"])},name:{locate:e.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:e.cwrap("zip_source_buffer_create","number",["number",...E$,"number","number"]),fromBuffer:e.cwrap("zip_source_buffer","number",["number","number",...E$,"number"]),free:e.cwrap("zip_source_free",null,["number"]),keep:e.cwrap("zip_source_keep",null,["number"]),open:e.cwrap("zip_source_open","number",["number"]),close:e.cwrap("zip_source_close","number",["number"]),seek:e.cwrap("zip_source_seek","number",["number",...E$,"number"]),tell:e.cwrap("zip_source_tell","number",["number"]),read:e.cwrap("zip_source_read","number",["number","number","number"]),error:e.cwrap("zip_source_error","number",["number"])},struct:{statS:e.cwrap("zipstruct_statS","number",[]),statSize:e.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:e.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:e.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:e.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:e.cwrap("zipstruct_stat_crc","number",["number"]),errorS:e.cwrap("zipstruct_errorS","number",[]),errorCodeZip:e.cwrap("zipstruct_error_code_zip","number",["number"])}});Qve.makeInterface=AOo});var HZn=H(O5e=>{"use strict";Object.defineProperty(O5e,"__esModule",{value:!0});O5e.ZipOpenFS=void 0;O5e.getArchivePart=LAr;var dOo=No(),ZAr=No(),MZn=g8();function LAr(e,t){let r=e.indexOf(t);if(r<=0)return null;let n=r;for(;r>=0&&(n=r+t.length,e[n]!==ZAr.ppath.sep);){if(e[r-1]===ZAr.ppath.sep)return null;r=e.indexOf(t,n)}return e.length>n&&e[n]!==ZAr.ppath.sep?null:e.slice(0,n)}var VAr=class e extends dOo.MountFS{static async openPromise(t,r){let n=new e(r);try{return await t(n)}finally{n.saveAndClose()}}constructor(t={}){let r=t.fileExtensions,n=t.readOnlyArchives,a=typeof r>"u"?A=>LAr(A,".zip"):A=>{for(let f of r){let I=LAr(A,f);if(I)return I}return null},o=(A,f)=>new MZn.ZipFS(f,{baseFs:A,readOnly:n,stats:A.statSync(f),customZipImplementation:t.customZipImplementation}),l=async(A,f)=>{let I={baseFs:A,readOnly:n,stats:await A.statPromise(f),customZipImplementation:t.customZipImplementation};return()=>new MZn.ZipFS(f,I)};super({...t,factorySync:o,factoryPromise:l,getMountPoint:a})}};O5e.ZipOpenFS=VAr});var OAr=H(Xve=>{"use strict";Object.defineProperty(Xve,"__esModule",{value:!0});Xve.LibZipImpl=Xve.LibzipError=void 0;var pOo=kAr(),SAt=class extends Error{constructor(t,r){super(t),this.name="Libzip Error",this.code=r}};Xve.LibzipError=SAt;var WAr=class{constructor(t){this.filesShouldBeCached=!0;let r="buffer"in t?t.buffer:t.baseFs.readFileSync(t.path);this.libzip=(0,pOo.getInstance)();let n=this.libzip.malloc(4);try{let l=0;t.readOnly&&(l|=this.libzip.ZIP_RDONLY);let A=this.allocateUnattachedSource(r);try{this.zip=this.libzip.openFromSource(A,l,n),this.lzSource=A}catch(f){throw this.libzip.source.free(A),f}if(this.zip===0){let f=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(f,this.libzip.getValue(n,"i32")),this.makeLibzipError(f)}}finally{this.libzip.free(n)}let a=this.libzip.getNumEntries(this.zip,0),o=new Array(a);for(let l=0;l>>0,o=this.libzip.struct.statMtime(r)>>>0,l=this.libzip.struct.statCrc(r)>>>0;return{size:a,mtime:o,crc:l}}makeLibzipError(t){let r=this.libzip.struct.errorCodeZip(t),n=this.libzip.error.strerror(t),a=new SAt(n,this.libzip.errors[r]);if(r===this.libzip.errors.ZIP_ER_CHANGED)throw new Error(`Assertion failed: Unexpected libzip error: ${a.message}`);return a}setFileSource(t,r,n){let a=this.allocateSource(n);try{let o=this.libzip.file.add(this.zip,t,a,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(r!==null&&this.libzip.file.setCompression(this.zip,o,0,r[0],r[1])===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return o}catch(o){throw this.libzip.source.free(a),o}}setMtime(t,r){if(this.libzip.file.setMtime(this.zip,t,0,r,0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}getExternalAttributes(t){if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let n=this.libzip.getValue(this.libzip.uint08S,"i8")>>>0,a=this.libzip.getValue(this.libzip.uint32S,"i32")>>>0;return[n,a]}setExternalAttributes(t,r,n){if(this.libzip.file.setExternalAttributes(this.zip,t,0,0,r,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}locate(t){return this.libzip.name.locate(this.zip,t,0)}getFileSource(t){let r=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,t,0,0,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.libzip.struct.statCompSize(r),o=this.libzip.struct.statCompMethod(r),l=this.libzip.malloc(a);try{let A=this.libzip.fopenIndex(this.zip,t,0,this.libzip.ZIP_FL_COMPRESSED);if(A===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let f=this.libzip.fread(A,l,a,0);if(f===-1)throw this.makeLibzipError(this.libzip.file.getError(A));if(fa)throw new Error("Overread");let I=this.libzip.HEAPU8.subarray(l,l+a);return{data:Buffer.from(I),compressionMethod:o}}finally{this.libzip.fclose(A)}}finally{this.libzip.free(l)}}deleteEntry(t){if(this.libzip.delete(this.zip,t)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}addDirectory(t){let r=this.libzip.dir.add(this.zip,t);if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return r}getBufferAndClose(){try{if(this.libzip.source.keep(this.lzSource),this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.libzip.source.open(this.lzSource)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_END)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let t=this.libzip.source.tell(this.lzSource);if(t===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_SET)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let r=this.libzip.malloc(t);if(!r)throw new Error("Couldn't allocate enough memory");try{let n=this.libzip.source.read(this.lzSource,r,t);if(n===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(nt)throw new Error("Overread");let a=Buffer.from(this.libzip.HEAPU8.subarray(r,r+t));return process.env.YARN_IS_TEST_ENV&&process.env.YARN_ZIP_DATA_EPILOGUE&&(a=Buffer.concat([a,Buffer.from(process.env.YARN_ZIP_DATA_EPILOGUE)])),a}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource)}}allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libzip.malloc(t.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,t.byteLength).set(t),{buffer:r,byteLength:t.byteLength}}allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:n,byteLength:a}=this.allocateBuffer(t),o=this.libzip.source.fromUnattachedBuffer(n,a,0,1,r);if(o===0)throw this.libzip.free(r),this.makeLibzipError(r);return o}allocateSource(t){let{buffer:r,byteLength:n}=this.allocateBuffer(t),a=this.libzip.source.fromBuffer(this.zip,r,n,0,1);if(a===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return a}discard(){this.libzip.discard(this.zip)}};Xve.LibZipImpl=WAr});var BAt=H(Mv=>{"use strict";Object.defineProperty(Mv,"__esModule",{value:!0});Mv.ZipFS=Mv.DEFAULT_COMPRESSION_LEVEL=Mv.DEFLATE=Mv.STORE=Mv.ZIP_UNIX=void 0;Mv.makeEmptyArchive=vAt;var fOo=(Wa(),vi(Va)),IOo=No(),hOo=No(),mOo=No(),PAr=No(),IA=No(),Bh=No(),$9=Et("fs"),YZn=Et("stream"),COo=Et("util"),QZn=fOo.__importDefault(Et("zlib")),_Oo=OAr();Mv.ZIP_UNIX=3;Mv.STORE=0;Mv.DEFLATE=8;Mv.DEFAULT_COMPRESSION_LEVEL="mixed";function yOo(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof e=="number"&&Number.isFinite(e))return e<0?Date.now()/1e3:e;if(COo.types.isDate(e))return e.getTime()/1e3;throw new Error("Invalid time")}function vAt(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var MAr=class extends IOo.BasePortableFakeFS{constructor(t,r={}){super(),this.listings=new Map,this.entries=new Map,this.fileSources=new Map,this.fds=new Map,this.nextFd=0,this.ready=!1,this.readOnly=!1,r.readOnly&&(this.readOnly=!0);let n=r;this.level=typeof n.level<"u"?n.level:Mv.DEFAULT_COMPRESSION_LEVEL;let a=r.customZipImplementation??_Oo.LibZipImpl;if(typeof t=="string"){let{baseFs:l=new hOo.NodeFS}=n;this.baseFs=l,this.path=t}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof t=="string")try{this.stats=this.baseFs.statSync(t)}catch(l){if(l.code==="ENOENT"&&n.create)this.stats=IA.statUtils.makeDefaultStats();else throw l}else this.stats=IA.statUtils.makeDefaultStats();typeof t=="string"?r.create?this.zipImpl=new a({buffer:vAt(),readOnly:this.readOnly}):this.zipImpl=new a({path:t,baseFs:this.baseFs,readOnly:this.readOnly,size:this.stats.size}):this.zipImpl=new a({buffer:t??vAt(),readOnly:this.readOnly}),this.listings.set(Bh.PortablePath.root,new Set);let o=this.zipImpl.getListings();for(let l=0;l{this.closeSync(l)};return(0,mOo.opendir)(this,n,o,{onClose:A})}async readPromise(t,r,n,a,o){return this.readSync(t,r,n,a,o)}readSync(t,r,n=0,a=r.byteLength,o=-1){let l=this.fds.get(t);if(typeof l>"u")throw IA.errors.EBADF("read");let A=o===-1||o===null?l.cursor:o,f=this.readFileSync(l.p);f.copy(r,n,A,A+a);let I=Math.max(0,Math.min(f.length-A,a));return(o===-1||o===null)&&(l.cursor+=I),I}async writePromise(t,r,n,a,o){return typeof r=="string"?this.writeSync(t,r,o):this.writeSync(t,r,n,a,o)}writeSync(t,r,n,a,o){throw typeof this.fds.get(t)>"u"?IA.errors.EBADF("read"):new Error("Unimplemented")}async closePromise(t){return this.closeSync(t)}closeSync(t){if(typeof this.fds.get(t)>"u")throw IA.errors.EBADF("read");this.fds.delete(t)}createReadStream(t,{encoding:r}={}){if(t===null)throw new Error("Unimplemented");let n=this.openSync(t,"r"),a=Object.assign(new YZn.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(l,A)=>{clearImmediate(o),this.closeSync(n),A(l)}}),{close(){a.destroy()},bytesRead:0,path:t,pending:!1}),o=setImmediate(async()=>{try{let l=await this.readFilePromise(t,r);a.bytesRead=l.length,a.end(l)}catch(l){a.destroy(l)}});return a}createWriteStream(t,{encoding:r}={}){if(this.readOnly)throw IA.errors.EROFS(`open '${t}'`);if(t===null)throw new Error("Unimplemented");let n=[],a=this.openSync(t,"w"),o=Object.assign(new YZn.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(l,A)=>{try{l?A(l):(this.writeFileSync(t,Buffer.concat(n),r),A(null))}catch(f){A(f)}finally{this.closeSync(a)}}}),{close(){o.destroy()},bytesWritten:0,path:t,pending:!1});return o.on("data",l=>{let A=Buffer.from(l);o.bytesWritten+=A.length,n.push(A)}),o}async realpathPromise(t){return this.realpathSync(t)}realpathSync(t){let r=this.resolveFilename(`lstat '${t}'`,t);if(!this.entries.has(r)&&!this.listings.has(r))throw IA.errors.ENOENT(`lstat '${t}'`);return r}async existsPromise(t){return this.existsSync(t)}existsSync(t){if(!this.ready)throw IA.errors.EBUSY(`archive closed, existsSync '${t}'`);if(this.symlinkCount===0){let n=Bh.ppath.resolve(Bh.PortablePath.root,t);return this.entries.has(n)||this.listings.has(n)}let r;try{r=this.resolveFilename(`stat '${t}'`,t,void 0,!1)}catch{return!1}return r===void 0?!1:this.entries.has(r)||this.listings.has(r)}async accessPromise(t,r){return this.accessSync(t,r)}accessSync(t,r=$9.constants.F_OK){let n=this.resolveFilename(`access '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw IA.errors.ENOENT(`access '${t}'`);if(this.readOnly&&r&$9.constants.W_OK)throw IA.errors.EROFS(`access '${t}'`)}async statPromise(t,r={bigint:!1}){return r.bigint?this.statSync(t,{bigint:!0}):this.statSync(t)}statSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`stat '${t}'`,t,void 0,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw IA.errors.ENOENT(`stat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw IA.errors.ENOTDIR(`stat '${t}'`);return this.statImpl(`stat '${t}'`,n,r)}}async fstatPromise(t,r){return this.fstatSync(t,r)}fstatSync(t,r){let n=this.fds.get(t);if(typeof n>"u")throw IA.errors.EBADF("fstatSync");let{p:a}=n,o=this.resolveFilename(`stat '${a}'`,a);if(!this.entries.has(o)&&!this.listings.has(o))throw IA.errors.ENOENT(`stat '${a}'`);if(a[a.length-1]==="/"&&!this.listings.has(o))throw IA.errors.ENOTDIR(`stat '${a}'`);return this.statImpl(`fstat '${a}'`,o,r)}async lstatPromise(t,r={bigint:!1}){return r.bigint?this.lstatSync(t,{bigint:!0}):this.lstatSync(t)}lstatSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`lstat '${t}'`,t,!1,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw IA.errors.ENOENT(`lstat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw IA.errors.ENOTDIR(`lstat '${t}'`);return this.statImpl(`lstat '${t}'`,n,r)}}statImpl(t,r,n={}){let a=this.entries.get(r);if(typeof a<"u"){let o=this.zipImpl.stat(a),l=o.crc,A=o.size,f=o.mtime*1e3,I=this.stats.uid,C=this.stats.gid,b=512,E=Math.ceil(o.size/b),N=f,B=f,F=f,Q=new Date(N),J=new Date(B),ae=new Date(F),ne=new Date(f),ce=this.listings.has(r)?$9.constants.S_IFDIR:this.isSymbolicLink(a)?$9.constants.S_IFLNK:$9.constants.S_IFREG,fe=ce===$9.constants.S_IFDIR?493:420,ue=ce|this.getUnixMode(a,fe)&511,de=Object.assign(new IA.statUtils.StatEntry,{uid:I,gid:C,size:A,blksize:b,blocks:E,atime:Q,birthtime:J,ctime:ae,mtime:ne,atimeMs:N,birthtimeMs:B,ctimeMs:F,mtimeMs:f,mode:ue,crc:l});return n.bigint===!0?IA.statUtils.convertToBigIntStats(de):de}if(this.listings.has(r)){let o=this.stats.uid,l=this.stats.gid,A=0,f=512,I=0,C=this.stats.mtimeMs,b=this.stats.mtimeMs,E=this.stats.mtimeMs,N=this.stats.mtimeMs,B=new Date(C),F=new Date(b),Q=new Date(E),J=new Date(N),ae=$9.constants.S_IFDIR|493,ce=Object.assign(new IA.statUtils.StatEntry,{uid:o,gid:l,size:A,blksize:f,blocks:I,atime:B,birthtime:F,ctime:Q,mtime:J,atimeMs:C,birthtimeMs:b,ctimeMs:E,mtimeMs:N,mode:ae,crc:0});return n.bigint===!0?IA.statUtils.convertToBigIntStats(ce):ce}throw new Error("Unreachable")}getUnixMode(t,r){let[n,a]=this.zipImpl.getExternalAttributes(t);return n!==Mv.ZIP_UNIX?r:a>>>16}registerListing(t){let r=this.listings.get(t);if(r)return r;this.registerListing(Bh.ppath.dirname(t)).add(Bh.ppath.basename(t));let a=new Set;return this.listings.set(t,a),a}registerEntry(t,r){this.registerListing(Bh.ppath.dirname(t)).add(Bh.ppath.basename(t)),this.entries.set(t,r)}unregisterListing(t){this.listings.delete(t),this.listings.get(Bh.ppath.dirname(t))?.delete(Bh.ppath.basename(t))}unregisterEntry(t){this.unregisterListing(t);let r=this.entries.get(t);this.entries.delete(t),!(typeof r>"u")&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(t,r){this.unregisterEntry(t),this.zipImpl.deleteEntry(r)}resolveFilename(t,r,n=!0,a=!0){if(!this.ready)throw IA.errors.EBUSY(`archive closed, ${t}`);let o=Bh.ppath.resolve(Bh.PortablePath.root,r);if(o==="/")return Bh.PortablePath.root;let l=this.entries.get(o);if(n&&l!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(l)){let A=this.getFileSource(l).toString();return this.resolveFilename(t,Bh.ppath.resolve(Bh.ppath.dirname(o),A),!0,a)}else return o;for(;;){let A=this.resolveFilename(t,Bh.ppath.dirname(o),!0,a);if(A===void 0)return A;let f=this.listings.has(A),I=this.entries.has(A);if(!f&&!I){if(a===!1)return;throw IA.errors.ENOENT(t)}if(!f)throw IA.errors.ENOTDIR(t);if(o=Bh.ppath.resolve(A,Bh.ppath.basename(o)),!n||this.symlinkCount===0)break;let C=this.zipImpl.locate(o.slice(1));if(C===-1)break;if(this.isSymbolicLink(C)){let b=this.getFileSource(C).toString();o=Bh.ppath.resolve(Bh.ppath.dirname(o),b)}else break}return o}setFileSource(t,r){let n=Buffer.isBuffer(r)?r:Buffer.from(r),a=Bh.ppath.relative(Bh.PortablePath.root,t),o=null;this.level!=="mixed"&&(o=[this.level===0?Mv.STORE:Mv.DEFLATE,this.level]);let l=this.zipImpl.setFileSource(a,o,n);return this.fileSources.set(l,n),l}isSymbolicLink(t){if(this.symlinkCount===0)return!1;let[r,n]=this.zipImpl.getExternalAttributes(t);return r!==Mv.ZIP_UNIX?!1:(n>>>16&$9.constants.S_IFMT)===$9.constants.S_IFLNK}getFileSource(t,r={asyncDecompress:!1}){let n=this.fileSources.get(t);if(typeof n<"u")return n;let{data:a,compressionMethod:o}=this.zipImpl.getFileSource(t);if(o===Mv.STORE)return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,a),a;if(o===Mv.DEFLATE){if(r.asyncDecompress)return new Promise((l,A)=>{QZn.default.inflateRaw(a,(f,I)=>{f?A(f):(this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,I),l(I))})});{let l=QZn.default.inflateRawSync(a);return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,l),l}}else throw new Error(`Unsupported compression method: ${o}`)}async fchmodPromise(t,r){return this.chmodPromise(this.fdToPath(t,"fchmod"),r)}fchmodSync(t,r){return this.chmodSync(this.fdToPath(t,"fchmodSync"),r)}async chmodPromise(t,r){return this.chmodSync(t,r)}chmodSync(t,r){if(this.readOnly)throw IA.errors.EROFS(`chmod '${t}'`);r&=493;let n=this.resolveFilename(`chmod '${t}'`,t,!1),a=this.entries.get(n);if(typeof a>"u")throw new Error(`Assertion failed: The entry should have been registered (${n})`);let l=this.getUnixMode(a,$9.constants.S_IFREG|0)&-512|r;this.zipImpl.setExternalAttributes(a,Mv.ZIP_UNIX,l<<16)}async fchownPromise(t,r,n){return this.chownPromise(this.fdToPath(t,"fchown"),r,n)}fchownSync(t,r,n){return this.chownSync(this.fdToPath(t,"fchownSync"),r,n)}async chownPromise(t,r,n){return this.chownSync(t,r,n)}chownSync(t,r,n){throw new Error("Unimplemented")}async renamePromise(t,r){return this.renameSync(t,r)}renameSync(t,r){throw new Error("Unimplemented")}async copyFilePromise(t,r,n){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=await this.getFileSource(a,{asyncDecompress:!0}),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}copyFileSync(t,r,n=0){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=this.getFileSource(a),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}prepareCopyFile(t,r,n=0){if(this.readOnly)throw IA.errors.EROFS(`copyfile '${t} -> '${r}'`);if(n&$9.constants.COPYFILE_FICLONE_FORCE)throw IA.errors.ENOSYS("unsupported clone operation",`copyfile '${t}' -> ${r}'`);let a=this.resolveFilename(`copyfile '${t} -> ${r}'`,t),o=this.entries.get(a);if(typeof o>"u")throw IA.errors.EINVAL(`copyfile '${t}' -> '${r}'`);let l=this.resolveFilename(`copyfile '${t}' -> ${r}'`,r),A=this.entries.get(l);if(n&($9.constants.COPYFILE_EXCL|$9.constants.COPYFILE_FICLONE_FORCE)&&typeof A<"u")throw IA.errors.EEXIST(`copyfile '${t}' -> '${r}'`);return{indexSource:o,resolvedDestP:l,indexDest:A}}async appendFilePromise(t,r,n){if(this.readOnly)throw IA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFilePromise(t,r,n)}appendFileSync(t,r,n={}){if(this.readOnly)throw IA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFileSync(t,r,n)}fdToPath(t,r){let n=this.fds.get(t)?.p;if(typeof n>"u")throw IA.errors.EBADF(r);return n}async writeFilePromise(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(l,{asyncDecompress:!0}),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&await this.chmodPromise(A,o)}writeFileSync(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(l),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&this.chmodSync(A,o)}prepareWriteFile(t,r){if(typeof t=="number"&&(t=this.fdToPath(t,"read")),this.readOnly)throw IA.errors.EROFS(`open '${t}'`);let n=this.resolveFilename(`open '${t}'`,t);if(this.listings.has(n))throw IA.errors.EISDIR(`open '${t}'`);let a=null,o=null;typeof r=="string"?a=r:typeof r=="object"&&({encoding:a=null,mode:o=null}=r);let l=this.entries.get(n);return{encoding:a,mode:o,resolvedP:n,index:l}}async unlinkPromise(t){return this.unlinkSync(t)}unlinkSync(t){if(this.readOnly)throw IA.errors.EROFS(`unlink '${t}'`);let r=this.resolveFilename(`unlink '${t}'`,t);if(this.listings.has(r))throw IA.errors.EISDIR(`unlink '${t}'`);let n=this.entries.get(r);if(typeof n>"u")throw IA.errors.EINVAL(`unlink '${t}'`);this.deleteEntry(r,n)}async utimesPromise(t,r,n){return this.utimesSync(t,r,n)}utimesSync(t,r,n){if(this.readOnly)throw IA.errors.EROFS(`utimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t);this.utimesImpl(a,n)}async lutimesPromise(t,r,n){return this.lutimesSync(t,r,n)}lutimesSync(t,r,n){if(this.readOnly)throw IA.errors.EROFS(`lutimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t,!1);this.utimesImpl(a,n)}utimesImpl(t,r){this.listings.has(t)&&(this.entries.has(t)||this.hydrateDirectory(t));let n=this.entries.get(t);if(n===void 0)throw new Error("Unreachable");this.zipImpl.setMtime(n,yOo(r))}async mkdirPromise(t,r){return this.mkdirSync(t,r)}mkdirSync(t,{mode:r=493,recursive:n=!1}={}){if(n)return this.mkdirpSync(t,{chmod:r});if(this.readOnly)throw IA.errors.EROFS(`mkdir '${t}'`);let a=this.resolveFilename(`mkdir '${t}'`,t);if(this.entries.has(a)||this.listings.has(a))throw IA.errors.EEXIST(`mkdir '${t}'`);this.hydrateDirectory(a),this.chmodSync(a,r)}async rmdirPromise(t,r){return this.rmdirSync(t,r)}rmdirSync(t,{recursive:r=!1}={}){if(this.readOnly)throw IA.errors.EROFS(`rmdir '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rmdir '${t}'`,t),a=this.listings.get(n);if(!a)throw IA.errors.ENOTDIR(`rmdir '${t}'`);if(a.size>0)throw IA.errors.ENOTEMPTY(`rmdir '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw IA.errors.EINVAL(`rmdir '${t}'`);this.deleteEntry(t,o)}async rmPromise(t,r){return this.rmSync(t,r)}rmSync(t,{recursive:r=!1}={}){if(this.readOnly)throw IA.errors.EROFS(`rm '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rm '${t}'`,t),a=this.listings.get(n);if(!a)throw IA.errors.ENOTDIR(`rm '${t}'`);if(a.size>0)throw IA.errors.ENOTEMPTY(`rm '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw IA.errors.EINVAL(`rm '${t}'`);this.deleteEntry(t,o)}hydrateDirectory(t){let r=this.zipImpl.addDirectory(Bh.ppath.relative(Bh.PortablePath.root,t));return this.registerListing(t),this.registerEntry(t,r),r}async linkPromise(t,r){return this.linkSync(t,r)}linkSync(t,r){throw IA.errors.EOPNOTSUPP(`link '${t}' -> '${r}'`)}async symlinkPromise(t,r){return this.symlinkSync(t,r)}symlinkSync(t,r){if(this.readOnly)throw IA.errors.EROFS(`symlink '${t}' -> '${r}'`);let n=this.resolveFilename(`symlink '${t}' -> '${r}'`,r);if(this.listings.has(n))throw IA.errors.EISDIR(`symlink '${t}' -> '${r}'`);if(this.entries.has(n))throw IA.errors.EEXIST(`symlink '${t}' -> '${r}'`);let a=this.setFileSource(n,t);this.registerEntry(n,a),this.zipImpl.setExternalAttributes(a,Mv.ZIP_UNIX,($9.constants.S_IFLNK|511)<<16),this.symlinkCount+=1}async readFilePromise(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=await this.readFileBuffer(t,{asyncDecompress:!0});return r?n.toString(r):n}readFileSync(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=this.readFileBuffer(t);return r?n.toString(r):n}readFileBuffer(t,r={asyncDecompress:!1}){typeof t=="number"&&(t=this.fdToPath(t,"read"));let n=this.resolveFilename(`open '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw IA.errors.ENOENT(`open '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(n))throw IA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(n))throw IA.errors.EISDIR("read");let a=this.entries.get(n);if(a===void 0)throw new Error("Unreachable");return this.getFileSource(a,r)}async readdirPromise(t,r){return this.readdirSync(t,r)}readdirSync(t,r){let n=this.resolveFilename(`scandir '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw IA.errors.ENOENT(`scandir '${t}'`);let a=this.listings.get(n);if(!a)throw IA.errors.ENOTDIR(`scandir '${t}'`);if(r?.recursive)if(r?.withFileTypes){let o=Array.from(a,l=>Object.assign(this.statImpl("lstat",Bh.ppath.join(t,l)),{name:l,path:Bh.PortablePath.dot,parentPath:Bh.PortablePath.dot}));for(let l of o){if(!l.isDirectory())continue;let A=Bh.ppath.join(l.path,l.name),f=this.listings.get(Bh.ppath.join(n,A));for(let I of f)o.push(Object.assign(this.statImpl("lstat",Bh.ppath.join(t,A,I)),{name:I,path:A,parentPath:A}))}return o}else{let o=[...a];for(let l of o){let A=this.listings.get(Bh.ppath.join(n,l));if(!(typeof A>"u"))for(let f of A)o.push(Bh.ppath.join(l,f))}return o}else return r?.withFileTypes?Array.from(a,o=>Object.assign(this.statImpl("lstat",Bh.ppath.join(t,o)),{name:o,path:void 0,parentPath:void 0})):[...a]}async readlinkPromise(t){let r=this.prepareReadlink(t);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(t){let r=this.prepareReadlink(t);return this.getFileSource(r).toString()}prepareReadlink(t){let r=this.resolveFilename(`readlink '${t}'`,t,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw IA.errors.ENOENT(`readlink '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(r))throw IA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(r))throw IA.errors.EINVAL(`readlink '${t}'`);let n=this.entries.get(r);if(n===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(n))throw IA.errors.EINVAL(`readlink '${t}'`);return n}async truncatePromise(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw IA.errors.EINVAL(`open '${t}'`);let o=await this.getFileSource(a,{asyncDecompress:!0}),l=Buffer.alloc(r,0);return o.copy(l),await this.writeFilePromise(t,l)}truncateSync(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw IA.errors.EINVAL(`open '${t}'`);let o=this.getFileSource(a),l=Buffer.alloc(r,0);return o.copy(l),this.writeFileSync(t,l)}async ftruncatePromise(t,r){return this.truncatePromise(this.fdToPath(t,"ftruncate"),r)}ftruncateSync(t,r){return this.truncateSync(this.fdToPath(t,"ftruncateSync"),r)}watch(t,r,n){let a;switch(typeof r){case"function":case"string":case"undefined":a=!0;break;default:({persistent:a=!0}=r);break}if(!a)return{on:()=>{},close:()=>{}};let o=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(o)}}}watchFile(t,r,n){let a=Bh.ppath.resolve(Bh.PortablePath.root,t);return(0,PAr.watchFile)(this,a,r,n)}unwatchFile(t,r){let n=Bh.ppath.resolve(Bh.PortablePath.root,t);return(0,PAr.unwatchFile)(this,n,r)}};Mv.ZipFS=MAr});var XZn=H(HAr=>{"use strict";Object.defineProperty(HAr,"__esModule",{value:!0});HAr.mountMemoryDrive=vOo;var bOo=(Wa(),vi(Va)),wAt=No(),EOo=bOo.__importDefault(Et("fs")),SOo=BAt();function vOo(e,t,r=Buffer.alloc(0),n){let a=new SOo.ZipFS(r),o=b=>b===t||b.startsWith(`${t}/`)?b.slice(0,t.length):null,l=async(b,E)=>()=>a,A=(b,E)=>a,f={...e},I=new wAt.NodeFS(f),C=new wAt.MountFS({baseFs:I,getMountPoint:o,factoryPromise:l,factorySync:A,magicByte:21,maxAge:1/0,typeCheck:n?.typeCheck});return(0,wAt.patchFs)(EOo.default,new wAt.PosixFS(C)),a}});var UZn=H(Jve=>{"use strict";Object.defineProperty(Jve,"__esModule",{value:!0});Jve.mountMemoryDrive=void 0;var JZn=(Wa(),vi(Va));JZn.__exportStar(HZn(),Jve);JZn.__exportStar(BAt(),Jve);var BOo=XZn();Object.defineProperty(Jve,"mountMemoryDrive",{enumerable:!0,get:function(){return BOo.mountMemoryDrive}})});var KZn=H(TAt=>{"use strict";Object.defineProperty(TAt,"__esModule",{value:!0});TAt.JsZipImpl=void 0;var YAr=No(),wOo=BAt(),QAr={CENTRAL_DIRECTORY:33639248,END_OF_CENTRAL_DIRECTORY:101010256},P5e=22,XAr=class e{constructor(t){if(this.filesShouldBeCached=!1,"buffer"in t)throw new Error("Buffer based zip archives are not supported");if(!t.readOnly)throw new Error("Writable zip archives are not supported");this.baseFs=t.baseFs,this.fd=this.baseFs.openSync(t.path,"r");try{this.entries=e.readZipSync(this.fd,this.baseFs,t.size)}catch(r){throw this.baseFs.closeSync(this.fd),this.fd="closed",r}}static readZipSync(t,r,n){if(n=0;Q--)if(o.readUInt32LE(Q)===QAr.END_OF_CENTRAL_DIRECTORY){a=Q;break}if(a===-1)throw new Error("Not a zip archive")}let l=o.readUInt16LE(a+10),A=o.readUInt32LE(a+12),f=o.readUInt32LE(a+16),I=o.readUInt16LE(a+20);if(a+I+P5e>o.length)throw new Error("Zip archive inconsistent");if(l==65535||A==4294967295||f==4294967295)throw new Error("Zip 64 is not supported");if(A>n)throw new Error("Zip archive inconsistent");if(l>A/46)throw new Error("Zip archive inconsistent");let C=Buffer.alloc(A);if(r.readSync(t,C,0,C.length,f)!==C.length)throw new Error("Zip archive inconsistent");let b=[],E=0,N=0,B=0;for(;NC.length)throw new Error("Zip archive inconsistent");if(C.readUInt32LE(E)!==QAr.CENTRAL_DIRECTORY)throw new Error("Zip archive inconsistent");let Q=C.readUInt16LE(E+4)>>>8;if(C.readUInt16LE(E+8)&1)throw new Error("Encrypted zip files are not supported");let ae=C.readUInt16LE(E+10),ne=C.readUInt32LE(E+16),ce=C.readUInt16LE(E+28),fe=C.readUInt16LE(E+30),ue=C.readUInt16LE(E+32),de=C.readUInt32LE(E+42),be=C.toString("utf8",E+46,E+46+ce).replaceAll("\0"," ");if(be.includes("\0"))throw new Error("Invalid ZIP file");let Se=C.readUInt32LE(E+20),De=C.readUInt32LE(E+38);b.push({name:be,os:Q,mtime:YAr.constants.SAFE_TIME,crc:ne,compressionMethod:ae,isSymbolicLink:Q===wOo.ZIP_UNIX&&(De>>>16&YAr.constants.S_IFMT)===YAr.constants.S_IFLNK,size:C.readUInt32LE(E+24),compressedSize:Se,externalAttributes:De,localHeaderOffset:de}),B+=Se,N+=1,E+=46+ce+fe+ue}if(B>n)throw new Error("Zip archive inconsistent");if(E!==C.length)throw new Error("Zip archive inconsistent");return b}getExternalAttributes(t){let r=this.entries[t];return[r.os,r.externalAttributes]}getListings(){return this.entries.map(t=>t.name)}getSymlinkCount(){let t=0;for(let r of this.entries)r.isSymbolicLink&&(t+=1);return t}stat(t){let r=this.entries[t];return{crc:r.crc,mtime:r.mtime,size:r.size}}locate(t){for(let r=0;r{"use strict";Object.defineProperty(S$,"__esModule",{value:!0});S$.LibZipImpl=S$.JsZipImpl=void 0;S$.getLibzipSync=NOo;S$.getLibzipPromise=DOo;var jZn=(Wa(),vi(Va)),JAr=kAr(),TOo=jZn.__importDefault(OZn()),ROo=PZn();jZn.__exportStar(UZn(),S$);(0,JAr.setFactory)(()=>{let e=(0,TOo.default)();return(0,ROo.makeInterface)(e)});function NOo(){return(0,JAr.getInstance)()}async function DOo(){return(0,JAr.getInstance)()}var kOo=KZn();Object.defineProperty(S$,"JsZipImpl",{enumerable:!0,get:function(){return kOo.JsZipImpl}});var xOo=OAr();Object.defineProperty(S$,"LibZipImpl",{enumerable:!0,get:function(){return xOo.LibZipImpl}})});var zZn=H(UAr=>{"use strict";Object.defineProperty(UAr,"__esModule",{value:!0});var GOo=No(),RAt=(vl(),vi(ng)),FOo=M5e(),NAt=class extends RAt.Command{constructor(){super(...arguments),this.cwd=RAt.Option.String("--cwd",process.cwd(),{description:"The directory to run the command in"}),this.commandName=RAt.Option.String(),this.args=RAt.Option.Proxy()}async execute(){let t=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await(0,FOo.execute)(t,[],{cwd:GOo.npath.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};NAt.usage={description:"run a command using yarn's portable shell",details:` This command will run a command using Yarn's portable shell. Make sure to escape glob patterns, redirections, and other features that might be expanded by your own shell. @@ -190,87 +190,87 @@ Please report this to https://github.com/szmarczak/http2-wrapper/`);B(F)}return} Note: Don't use this command in Yarn scripts, as Yarn's shell is automatically used. For a list of features, visit: https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-shell/README.md. - `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]};UAr.default=DAt});var XZn=H(kAt=>{"use strict";Object.defineProperty(kAt,"__esModule",{value:!0});kAt.ShellError=void 0;var KAr=class extends Error{constructor(t){super(t),this.name="ShellError"}};kAt.ShellError=KAr});var JZn=H(PO=>{"use strict";Object.defineProperty(PO,"__esModule",{value:!0});PO.fastGlobOptions=PO.micromatchOptions=void 0;PO.isGlobPattern=LOo;PO.match=VOo;PO.isBraceExpansion=WOo;var qAr=(Wa(),vi(Va)),jAr=Io(),FOo=qAr.__importDefault(vve()),ZOo=qAr.__importDefault(Et("fs")),zAr=qAr.__importDefault(Tk());PO.micromatchOptions={strictBrackets:!0};PO.fastGlobOptions={onlyDirectories:!1,onlyFiles:!1};function LOo(e){if(!zAr.default.scan(e,PO.micromatchOptions).isGlob)return!1;try{zAr.default.parse(e,PO.micromatchOptions)}catch{return!1}return!0}function VOo(e,{cwd:t,baseFs:r}){return(0,FOo.default)(e,{...PO.fastGlobOptions,cwd:jAr.npath.fromPortablePath(t),fs:(0,jAr.extendFs)(ZOo.default,new jAr.PosixFS(r))})}function WOo(e){return zAr.default.scan(e,PO.micromatchOptions).isBrace}});var ndr=H(_M=>{"use strict";Object.defineProperty(_M,"__esModule",{value:!0});_M.Handle=_M.ProtectedStream=_M.Pipe=void 0;_M.makeProcess=HOo;_M.makeBuiltin=YOo;_M.start=QOo;_M.createOutputStreamsWithPrefix=XOo;var OOo=(Wa(),vi(Va)),POo=OOo.__importDefault(slt()),Poe=Et("stream"),MOo=Et("string_decoder"),bIe;(function(e){e[e.STDIN=0]="STDIN",e[e.STDOUT=1]="STDOUT",e[e.STDERR=2]="STDERR"})(bIe||(_M.Pipe=bIe={}));var yIe=new Set;function $Ar(){}function edr(){for(let e of yIe)e.kill()}function HOo(e,t,r,n){return a=>{let o=a[0]instanceof Poe.Transform?"pipe":a[0],l=a[1]instanceof Poe.Transform?"pipe":a[1],A=a[2]instanceof Poe.Transform?"pipe":a[2],f=(0,POo.default)(e,t,{...n,stdio:[o,l,A]});return yIe.add(f),yIe.size===1&&(process.on("SIGINT",$Ar),process.on("SIGTERM",edr)),a[0]instanceof Poe.Transform&&a[0].pipe(f.stdin),a[1]instanceof Poe.Transform&&f.stdout.pipe(a[1],{end:!1}),a[2]instanceof Poe.Transform&&f.stderr.pipe(a[2],{end:!1}),{stdin:f.stdin,promise:new Promise(I=>{f.on("error",C=>{switch(yIe.delete(f),yIe.size===0&&(process.off("SIGINT",$Ar),process.off("SIGTERM",edr)),C.code){case"ENOENT":a[2].write(`command not found: ${e} + `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]};UAr.default=NAt});var qZn=H(DAt=>{"use strict";Object.defineProperty(DAt,"__esModule",{value:!0});DAt.ShellError=void 0;var KAr=class extends Error{constructor(t){super(t),this.name="ShellError"}};DAt.ShellError=KAr});var $Zn=H(HO=>{"use strict";Object.defineProperty(HO,"__esModule",{value:!0});HO.fastGlobOptions=HO.micromatchOptions=void 0;HO.isGlobPattern=VOo;HO.match=WOo;HO.isBraceExpansion=OOo;var qAr=(Wa(),vi(Va)),jAr=No(),ZOo=qAr.__importDefault(vve()),LOo=qAr.__importDefault(Et("fs")),zAr=qAr.__importDefault(Rk());HO.micromatchOptions={strictBrackets:!0};HO.fastGlobOptions={onlyDirectories:!1,onlyFiles:!1};function VOo(e){if(!zAr.default.scan(e,HO.micromatchOptions).isGlob)return!1;try{zAr.default.parse(e,HO.micromatchOptions)}catch{return!1}return!0}function WOo(e,{cwd:t,baseFs:r}){return(0,ZOo.default)(e,{...HO.fastGlobOptions,cwd:jAr.npath.fromPortablePath(t),fs:(0,jAr.extendFs)(LOo.default,new jAr.PosixFS(r))})}function OOo(e){return zAr.default.scan(e,HO.micromatchOptions).isBrace}});var ndr=H(yM=>{"use strict";Object.defineProperty(yM,"__esModule",{value:!0});yM.Handle=yM.ProtectedStream=yM.Pipe=void 0;yM.makeProcess=YOo;yM.makeBuiltin=QOo;yM.start=XOo;yM.createOutputStreamsWithPrefix=JOo;var POo=(Wa(),vi(Va)),MOo=POo.__importDefault(ilt()),Moe=Et("stream"),HOo=Et("string_decoder"),EIe;(function(e){e[e.STDIN=0]="STDIN",e[e.STDOUT=1]="STDOUT",e[e.STDERR=2]="STDERR"})(EIe||(yM.Pipe=EIe={}));var bIe=new Set;function $Ar(){}function edr(){for(let e of bIe)e.kill()}function YOo(e,t,r,n){return a=>{let o=a[0]instanceof Moe.Transform?"pipe":a[0],l=a[1]instanceof Moe.Transform?"pipe":a[1],A=a[2]instanceof Moe.Transform?"pipe":a[2],f=(0,MOo.default)(e,t,{...n,stdio:[o,l,A]});return bIe.add(f),bIe.size===1&&(process.on("SIGINT",$Ar),process.on("SIGTERM",edr)),a[0]instanceof Moe.Transform&&a[0].pipe(f.stdin),a[1]instanceof Moe.Transform&&f.stdout.pipe(a[1],{end:!1}),a[2]instanceof Moe.Transform&&f.stderr.pipe(a[2],{end:!1}),{stdin:f.stdin,promise:new Promise(I=>{f.on("error",C=>{switch(bIe.delete(f),bIe.size===0&&(process.off("SIGINT",$Ar),process.off("SIGTERM",edr)),C.code){case"ENOENT":a[2].write(`command not found: ${e} `),I(127);break;case"EACCES":a[2].write(`permission denied: ${e} `),I(128);break;default:a[2].write(`uncaught error: ${C.message} -`),I(1);break}}),f.on("close",C=>{yIe.delete(f),yIe.size===0&&(process.off("SIGINT",$Ar),process.off("SIGTERM",edr)),I(C!==null?C:129)})})}}}function YOo(e){return t=>{let r=t[0]==="pipe"?new Poe.PassThrough:t[0];return{stdin:r,promise:Promise.resolve().then(()=>e({stdin:r,stdout:t[1],stderr:t[2]}))}}}var tdr=class{constructor(t){this.stream=t}close(){}get(){return this.stream}};_M.ProtectedStream=tdr;var rdr=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(t){this.stream=t}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},xAt=class e{static start(t,{stdin:r,stdout:n,stderr:a}){let o=new e(null,t);return o.stdin=r,o.stdout=n,o.stderr=a,o}constructor(t,r){this.stdin=null,this.stdout=null,this.stderr=null,this.pipe=null,this.ancestor=t,this.implementation=r}pipeTo(t,r=bIe.STDOUT){let n=new e(this,t),a=new rdr;return n.pipe=a,n.stdout=this.stdout,n.stderr=this.stderr,(r&bIe.STDOUT)===bIe.STDOUT?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&bIe.STDERR)===bIe.STDERR?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),n}async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");t[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,t[1]=r.get();let n;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");n=this.stderr,t[2]=n.get();let a=this.implementation(t);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(o=>(r.close(),n.close(),o))}async run(){let t=[];for(let n=this;n;n=n.ancestor)t.push(n.exec());return(await Promise.all(t))[0]}};_M.Handle=xAt;function QOo(e,t){return xAt.start(e,t)}function UZn(e,t=null){let r=new Poe.PassThrough,n=new MOo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` -`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",e(t!==null?`${t} ${f}`:f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&e(t!==null?`${t} ${o}`:o)}),r}function XOo(e,{prefix:t}){return{stdout:UZn(r=>e.stdout.write(`${r} -`),e.stdout.isTTY?t:null),stderr:UZn(r=>e.stderr.write(`${r} -`),e.stderr.isTTY?t:null)}}});var M5e=H(S$=>{"use strict";Object.defineProperty(S$,"__esModule",{value:!0});S$.globUtils=S$.ShellError=S$.EntryCommand=void 0;S$.execute=iPo;var odr=(Wa(),vi(Va)),g8=Io(),$Zn=tM(),JOo=odr.__importDefault(zK()),UOo=Et("os"),EX=Et("stream"),KOo=Et("timers/promises"),jOo=odr.__importDefault(QZn());S$.EntryCommand=jOo.default;var A8=XZn();Object.defineProperty(S$,"ShellError",{enumerable:!0,get:function(){return A8.ShellError}});var adr=odr.__importStar(JZn());S$.globUtils=adr;var idr=ndr(),eD=ndr(),CG;(function(e){e[e.Readable=1]="Readable",e[e.Writable=2]="Writable"})(CG||(CG={}));function KZn(e,t,r){let n=new EX.PassThrough({autoDestroy:!0});switch(e){case eD.Pipe.STDIN:(t&CG.Readable)===CG.Readable&&r.stdin.pipe(n,{end:!1}),(t&CG.Writable)===CG.Writable&&r.stdin instanceof EX.Writable&&n.pipe(r.stdin,{end:!1});break;case eD.Pipe.STDOUT:(t&CG.Readable)===CG.Readable&&r.stdout.pipe(n,{end:!1}),(t&CG.Writable)===CG.Writable&&n.pipe(r.stdout,{end:!1});break;case eD.Pipe.STDERR:(t&CG.Readable)===CG.Readable&&r.stderr.pipe(n,{end:!1}),(t&CG.Writable)===CG.Writable&&n.pipe(r.stderr,{end:!1});break;default:throw new A8.ShellError(`Bad file descriptor: "${e}"`)}return n}function FAt(e,t={}){let r={...e,...t};return r.environment={...e.environment,...t.environment},r.variables={...e.variables,...t.variables},r}var zOo=new Map([["cd",async([e=(0,UOo.homedir)(),...t],r,n)=>{let a=g8.ppath.resolve(n.cwd,g8.npath.toPortablePath(e));if(!(await r.baseFs.statPromise(a).catch(l=>{throw l.code==="ENOENT"?new A8.ShellError(`cd: no such file or directory: ${e}`):l})).isDirectory())throw new A8.ShellError(`cd: not a directory: ${e}`);return n.cwd=a,0}],["pwd",async(e,t,r)=>(r.stdout.write(`${g8.npath.fromPortablePath(r.cwd)} +`),I(1);break}}),f.on("close",C=>{bIe.delete(f),bIe.size===0&&(process.off("SIGINT",$Ar),process.off("SIGTERM",edr)),I(C!==null?C:129)})})}}}function QOo(e){return t=>{let r=t[0]==="pipe"?new Moe.PassThrough:t[0];return{stdin:r,promise:Promise.resolve().then(()=>e({stdin:r,stdout:t[1],stderr:t[2]}))}}}var tdr=class{constructor(t){this.stream=t}close(){}get(){return this.stream}};yM.ProtectedStream=tdr;var rdr=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(t){this.stream=t}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},kAt=class e{static start(t,{stdin:r,stdout:n,stderr:a}){let o=new e(null,t);return o.stdin=r,o.stdout=n,o.stderr=a,o}constructor(t,r){this.stdin=null,this.stdout=null,this.stderr=null,this.pipe=null,this.ancestor=t,this.implementation=r}pipeTo(t,r=EIe.STDOUT){let n=new e(this,t),a=new rdr;return n.pipe=a,n.stdout=this.stdout,n.stderr=this.stderr,(r&EIe.STDOUT)===EIe.STDOUT?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&EIe.STDERR)===EIe.STDERR?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),n}async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");t[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,t[1]=r.get();let n;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");n=this.stderr,t[2]=n.get();let a=this.implementation(t);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(o=>(r.close(),n.close(),o))}async run(){let t=[];for(let n=this;n;n=n.ancestor)t.push(n.exec());return(await Promise.all(t))[0]}};yM.Handle=kAt;function XOo(e,t){return kAt.start(e,t)}function eLn(e,t=null){let r=new Moe.PassThrough,n=new HOo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` +`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",e(t!==null?`${t} ${f}`:f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&e(t!==null?`${t} ${o}`:o)}),r}function JOo(e,{prefix:t}){return{stdout:eLn(r=>e.stdout.write(`${r} +`),e.stdout.isTTY?t:null),stderr:eLn(r=>e.stderr.write(`${r} +`),e.stderr.isTTY?t:null)}}});var M5e=H(v$=>{"use strict";Object.defineProperty(v$,"__esModule",{value:!0});v$.globUtils=v$.ShellError=v$.EntryCommand=void 0;v$.execute=sPo;var odr=(Wa(),vi(Va)),A8=No(),sLn=LO(),UOo=odr.__importDefault(qK()),KOo=Et("os"),SX=Et("stream"),jOo=Et("timers/promises"),zOo=odr.__importDefault(zZn());v$.EntryCommand=zOo.default;var d8=qZn();Object.defineProperty(v$,"ShellError",{enumerable:!0,get:function(){return d8.ShellError}});var adr=odr.__importStar($Zn());v$.globUtils=adr;var idr=ndr(),tD=ndr(),_G;(function(e){e[e.Readable=1]="Readable",e[e.Writable=2]="Writable"})(_G||(_G={}));function tLn(e,t,r){let n=new SX.PassThrough({autoDestroy:!0});switch(e){case tD.Pipe.STDIN:(t&_G.Readable)===_G.Readable&&r.stdin.pipe(n,{end:!1}),(t&_G.Writable)===_G.Writable&&r.stdin instanceof SX.Writable&&n.pipe(r.stdin,{end:!1});break;case tD.Pipe.STDOUT:(t&_G.Readable)===_G.Readable&&r.stdout.pipe(n,{end:!1}),(t&_G.Writable)===_G.Writable&&n.pipe(r.stdout,{end:!1});break;case tD.Pipe.STDERR:(t&_G.Readable)===_G.Readable&&r.stderr.pipe(n,{end:!1}),(t&_G.Writable)===_G.Writable&&n.pipe(r.stderr,{end:!1});break;default:throw new d8.ShellError(`Bad file descriptor: "${e}"`)}return n}function GAt(e,t={}){let r={...e,...t};return r.environment={...e.environment,...t.environment},r.variables={...e.variables,...t.variables},r}var qOo=new Map([["cd",async([e=(0,KOo.homedir)(),...t],r,n)=>{let a=A8.ppath.resolve(n.cwd,A8.npath.toPortablePath(e));if(!(await r.baseFs.statPromise(a).catch(l=>{throw l.code==="ENOENT"?new d8.ShellError(`cd: no such file or directory: ${e}`):l})).isDirectory())throw new d8.ShellError(`cd: not a directory: ${e}`);return n.cwd=a,0}],["pwd",async(e,t,r)=>(r.stdout.write(`${A8.npath.fromPortablePath(r.cwd)} `),0)],[":",async(e,t,r)=>0],["true",async(e,t,r)=>0],["false",async(e,t,r)=>1],["exit",async([e,...t],r,n)=>n.exitCode=parseInt(e??n.variables["?"],10)],["echo",async(e,t,r)=>(r.stdout.write(`${e.join(" ")} -`),0)],["sleep",async([e],t,r)=>{if(typeof e>"u")throw new A8.ShellError("sleep: missing operand");let n=Number(e);if(Number.isNaN(n))throw new A8.ShellError(`sleep: invalid time interval '${e}'`);return await(0,KOo.setTimeout)(1e3*n,0)}],["unset",async(e,t,r)=>{for(let n of e)delete r.environment[n],delete r.variables[n];return 0}],["__ysh_run_procedure",async(e,t,r)=>{let n=r.procedures[e[0]];return await(0,eD.start)(n,{stdin:new eD.ProtectedStream(r.stdin),stdout:new eD.ProtectedStream(r.stdout),stderr:new eD.ProtectedStream(r.stderr)}).run()}],["__ysh_set_redirects",async(e,t,r)=>{let n=r.stdin,a=r.stdout,o=r.stderr,l=[],A=[],f=[],I=0;for(;e[I]!=="--";){let b=e[I++],{type:E,fd:N}=JSON.parse(b),B=ae=>{switch(N){case null:case 0:l.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},F=ae=>{switch(N){case null:case 1:A.push(ae);break;case 2:f.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},Q=Number(e[I++]),J=I+Q;for(let ae=I;aet.baseFs.createReadStream(g8.ppath.resolve(r.cwd,g8.npath.toPortablePath(e[ae]))));break;case"<<<":B(()=>{let ne=new EX.PassThrough;return process.nextTick(()=>{ne.write(`${e[ae]} -`),ne.end()}),ne});break;case"<&":B(()=>KZn(Number(e[ae]),CG.Readable,r));break;case">":case">>":{let ne=g8.ppath.resolve(r.cwd,g8.npath.toPortablePath(e[ae]));F(ne==="/dev/null"?new EX.Writable({autoDestroy:!0,emitClose:!0,write(ce,fe,ue){setImmediate(ue)}}):t.baseFs.createWriteStream(ne,E===">>"?{flags:"a"}:void 0))}break;case">&":F(KZn(Number(e[ae]),CG.Writable,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${E}"`)}}if(l.length>0){let b=new EX.PassThrough;n=b;let E=N=>{if(N===l.length)b.end();else{let B=l[N]();B.pipe(b,{end:!1}),B.on("end",()=>{E(N+1)})}};E(0)}if(A.length>0){let b=new EX.PassThrough;a=b;for(let E of A)b.pipe(E)}if(f.length>0){let b=new EX.PassThrough;o=b;for(let E of f)b.pipe(E)}let C=await(0,eD.start)(Y5e(e.slice(I+1),t,r),{stdin:new eD.ProtectedStream(n),stdout:new eD.ProtectedStream(a),stderr:new eD.ProtectedStream(o)}).run();return await Promise.all(A.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),await Promise.all(f.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),C}]]);async function qOo(e,t,r){let n=[],a=new EX.PassThrough;return a.on("data",o=>n.push(o)),await ZAt(e,t,FAt(r,{stdout:a})),Buffer.concat(n).toString().replace(/[\r\n]+$/,"")}async function jZn(e,t,r){let n=e.map(async o=>{let l=await EIe(o.args,t,r);return{name:o.name,value:l.join(" ")}});return(await Promise.all(n)).reduce((o,l)=>(o[l.name]=l.value,o),{})}function GAt(e){return e.match(/[^ \r\n\t]+/g)||[]}async function eLn(e,t,r,n,a=n){switch(e.name){case"$":n(String(process.pid));break;case"#":n(String(t.args.length));break;case"@":if(e.quoted)for(let o of t.args)a(o);else for(let o of t.args){let l=GAt(o);for(let A=0;A=0&&o"u"&&(e.defaultValue?l=(await EIe(e.defaultValue,t,r)).join(" "):e.alternativeValue&&(l="")),typeof l>"u")throw A?new A8.ShellError(`Unbound argument #${o}`):new A8.ShellError(`Unbound variable "${e.name}"`);if(e.quoted)n(l);else{let f=GAt(l);for(let C=0;Ce+t,subtraction:(e,t)=>e-t,multiplication:(e,t)=>e*t,division:(e,t)=>Math.trunc(e/t)};async function H5e(e,t,r){if(e.type==="number"){if(Number.isInteger(e.value))return e.value;throw new Error(`Invalid number: "${e.value}", only integers are allowed`)}else if(e.type==="variable"){let n=[];await eLn({...e,quoted:!0},t,r,o=>n.push(o));let a=Number(n.join(" "));return Number.isNaN(a)?H5e({type:"variable",name:n.join(" ")},t,r):H5e({type:"number",value:a},t,r)}else return $Oo[e.type](await H5e(e.left,t,r),await H5e(e.right,t,r))}async function EIe(e,t,r){let n=new Map,a=[],o=[],l=C=>{o.push(C)},A=()=>{o.length>0&&a.push(o.join("")),o=[]},f=C=>{l(C),A()},I=(C,b,E)=>{let N=JSON.stringify({type:C,fd:b}),B=n.get(N);typeof B>"u"&&n.set(N,B=[]),B.push(E)};for(let C of e){let b=!1;switch(C.type){case"redirection":{let E=await EIe(C.args,t,r);for(let N of E)I(C.subtype,C.fd,N)}break;case"argument":for(let E of C.segments)switch(E.type){case"text":l(E.text);break;case"glob":l(E.pattern),b=!0;break;case"shell":{let N=await qOo(E.shell,t,r);if(E.quoted)l(N);else{let B=GAt(N);for(let F=0;F"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let N=await t.glob.match(E,{cwd:r.cwd,baseFs:t.baseFs});if(N.length===0){let B=adr.isBraceExpansion(E)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new A8.ShellError(`No matches found: "${E}"${B}`)}for(let B of N.sort())f(B)}}if(n.size>0){let C=[];for(let[b,E]of n.entries())C.splice(C.length,0,b,String(E.length),...E);a.splice(0,0,"__ysh_set_redirects",...C,"--")}return a}function Y5e(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let n=g8.npath.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:n});let[o,...l]=e;if(o==="command")return(0,idr.makeProcess)(l[0],l.slice(1),t,{cwd:n,env:a});let A=t.builtins.get(o);if(typeof A>"u")throw new Error(`Assertion failed: A builtin should exist for "${o}"`);return(0,idr.makeBuiltin)(async({stdin:f,stdout:I,stderr:C})=>{let{stdin:b,stdout:E,stderr:N}=r;r.stdin=f,r.stdout=I,r.stderr=C;try{return await A(l,t,r)}finally{r.stdin=b,r.stdout=E,r.stderr=N}})}function ePo(e,t,r){return n=>{let a=new EX.PassThrough,o=ZAt(e,t,FAt(r,{stdin:a}));return{stdin:a,promise:o}}}function tPo(e,t,r){return n=>{let a=new EX.PassThrough,o=ZAt(e,t,r);return{stdin:a,promise:o}}}function zZn(e,t,r,n){if(t.length===0)return e;{let a;do a=String(Math.random());while(Object.hasOwn(n.procedures,a));return n.procedures={...n.procedures},n.procedures[a]=e,Y5e([...t,"__ysh_run_procedure",a],r,n)}}async function qZn(e,t,r){let n=e,a=null,o=null;for(;n;){let l=n.then?{...r}:r,A;switch(n.type){case"command":{let f=await EIe(n.args,t,r),I=await jZn(n.envs,t,r);A=n.envs.length?Y5e(f,t,FAt(l,{environment:I})):Y5e(f,t,l)}break;case"subshell":{let f=await EIe(n.args,t,r),I=ePo(n.subshell,t,l);A=zZn(I,f,t,l)}break;case"group":{let f=await EIe(n.args,t,r),I=tPo(n.group,t,l);A=zZn(I,f,t,l)}break;case"envs":{let f=await jZn(n.envs,t,r);l.environment={...l.environment,...f},A=Y5e(["true"],t,l)}break}if(typeof A>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)o=(0,eD.start)(A,{stdin:new eD.ProtectedStream(l.stdin),stdout:new eD.ProtectedStream(l.stdout),stderr:new eD.ProtectedStream(l.stderr)});else{if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":o=o.pipeTo(A,eD.Pipe.STDOUT);break;case"|&":o=o.pipeTo(A,eD.Pipe.STDOUT|eD.Pipe.STDERR);break}}n.then?(a=n.then.type,n=n.then.chain):n=null}if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await o.run()}async function rPo(e,t,r,{background:n=!1}={}){function a(o){let l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[o%l.length];return JOo.default.hex(A)}if(n){let o=r.nextBackgroundJobIndex++,l=a(o),A=`[${o}]`,f=l(A),{stdout:I,stderr:C}=(0,idr.createOutputStreamsWithPrefix)(r,{prefix:f});return r.backgroundJobs.push(qZn(e,t,FAt(r,{stdout:I,stderr:C})).catch(b=>C.write(`${b.message} -`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${f}, '${l((0,$Zn.stringifyCommandChain)(e))}' has ended -`)})),0}return await qZn(e,t,r)}async function nPo(e,t,r,{background:n=!1}={}){let a,o=A=>{a=A,r.variables["?"]=String(A)},l=async A=>{try{return await rPo(A.chain,t,r,{background:n&&typeof A.then>"u"})}catch(f){if(!(f instanceof A8.ShellError))throw f;return r.stderr.write(`${f.message} -`),1}};for(o(await l(e));e.then;){if(r.exitCode!==null)return r.exitCode;switch(e.then.type){case"&&":a===0&&o(await l(e.then.line));break;case"||":a!==0&&o(await l(e.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${e.then.type}"`)}e=e.then.line}return a}async function ZAt(e,t,r){let n=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:o,type:l}of e){if(a=await nPo(o,t,r,{background:l==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=n,a}function tLn(e){switch(e.type){case"variable":return e.name==="@"||e.name==="#"||e.name==="*"||Number.isFinite(parseInt(e.name,10))||"defaultValue"in e&&!!e.defaultValue&&e.defaultValue.some(t=>Q5e(t))||"alternativeValue"in e&&!!e.alternativeValue&&e.alternativeValue.some(t=>Q5e(t));case"arithmetic":return sdr(e.arithmetic);case"shell":return cdr(e.shell);default:return!1}}function Q5e(e){switch(e.type){case"redirection":return e.args.some(t=>Q5e(t));case"argument":return e.segments.some(t=>tLn(t));default:throw new Error(`Assertion failed: Unsupported argument type: "${e.type}"`)}}function sdr(e){switch(e.type){case"variable":return tLn(e);case"number":return!1;default:return sdr(e.left)||sdr(e.right)}}function cdr(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(;r;){let n;switch(r.type){case"subshell":n=cdr(r.subshell);break;case"command":n=r.envs.some(a=>a.args.some(o=>Q5e(o)))||r.args.some(a=>Q5e(a));break}if(n)return!0;if(!r.then)break;r=r.then.chain}if(!t.then)break;t=t.then.line}return!1})}async function iPo(e,t=[],{baseFs:r=new g8.NodeFS,builtins:n={},cwd:a=g8.npath.toPortablePath(process.cwd()),env:o=process.env,stdin:l=process.stdin,stdout:A=process.stdout,stderr:f=process.stderr,variables:I={},glob:C=adr}={}){let b={};for(let[B,F]of Object.entries(o))typeof F<"u"&&(b[B]=F);let E=new Map(zOo);for(let[B,F]of Object.entries(n))E.set(B,F);l===null&&(l=new EX.PassThrough,l.end());let N=(0,$Zn.parseShell)(e,C);if(!cdr(N)&&N.length>0&&t.length>0){let{command:B}=N[N.length-1];for(;B.then;)B=B.then.line;let F=B.chain;for(;F.then;)F=F.then.chain;F.type==="command"&&(F.args=F.args.concat(t.map(Q=>({type:"argument",segments:[{type:"text",text:Q}]}))))}return await ZAt(N,{args:t,baseFs:r,builtins:E,initialStdin:l,initialStdout:A,initialStderr:f,glob:C},{cwd:a,environment:b,exitCode:null,procedures:{},stdin:l,stdout:A,stderr:f,variables:Object.assign({},I,{"?":0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}});var rLn=H((O8l,LAt)=>{function sPo(){var e=0,t=1,r=2,n=3,a=4,o=5,l=6,A=7,f=8,I=9,C=10,b=11,E=12,N=13,B=14,F=15,Q=16,J=17,ae=0,ne=1,ce=2,fe=3,ue=4;function de(k,tt){return 55296<=k.charCodeAt(tt)&&k.charCodeAt(tt)<=56319&&56320<=k.charCodeAt(tt+1)&&k.charCodeAt(tt+1)<=57343}function be(k,tt){tt===void 0&&(tt=0);var ze=k.charCodeAt(tt);if(55296<=ze&&ze<=56319&&tt=1){var Le=k.charCodeAt(tt-1),Je=ze;return 55296<=Le&&Le<=56319?(Le-55296)*1024+(Je-56320)+65536:Je}return ze}function Se(k,tt,ze){var Le=[k].concat(tt).concat([ze]),Je=Le[Le.length-2],ft=ze,lt=Le.lastIndexOf(B);if(lt>1&&Le.slice(1,lt).every(function(Sr){return Sr==n})&&[n,N,J].indexOf(k)==-1)return ce;var Ot=Le.lastIndexOf(a);if(Ot>0&&Le.slice(1,Ot).every(function(Sr){return Sr==a})&&[E,a].indexOf(Je)==-1)return Le.filter(function(Sr){return Sr==a}).length%2==1?fe:ue;if(Je==e&&ft==t)return ae;if(Je==r||Je==e||Je==t)return ft==B&&tt.every(function(Sr){return Sr==n})?ce:ne;if(ft==r||ft==e||ft==t)return ne;if(Je==l&&(ft==l||ft==A||ft==I||ft==C))return ae;if((Je==I||Je==A)&&(ft==A||ft==f))return ae;if((Je==C||Je==f)&&ft==f)return ae;if(ft==n||ft==F)return ae;if(ft==o)return ae;if(Je==E)return ae;var Er=Le.indexOf(n)!=-1?Le.lastIndexOf(n)-1:Le.length-2;return[N,J].indexOf(Le[Er])!=-1&&Le.slice(Er+1,-1).every(function(Sr){return Sr==n})&&ft==B||Je==F&&[Q,J].indexOf(ft)!=-1?ae:tt.indexOf(a)!=-1?ce:Je==a&&ft==a?ae:ne}this.nextBreak=function(k,tt){if(tt===void 0&&(tt=0),tt<0)return 0;if(tt>=k.length-1)return k.length;for(var ze=De(be(k,tt)),Le=[],Je=tt+1;Je{var oPo=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,VAt;function aPo(){if(VAt)return VAt;if(typeof Intl.Segmenter<"u"){let e=new Intl.Segmenter("en",{granularity:"grapheme"});return VAt=t=>Array.from(e.segment(t),({segment:r})=>r)}else{let e=rLn(),t=new e;return VAt=r=>t.splitGraphemes(r)}}nLn.exports=(e,t=0,r=e.length)=>{if(t<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let n=r-t,a="",o=0,l=0;for(;e.length>0;){let A=e.match(oPo)||[e,e,void 0],f=aPo()(A[1]),I=Math.min(t-o,f.length);f=f.slice(I);let C=Math.min(n-l,f.length);a+=f.slice(0,C).join(""),o+=I,l+=C,typeof A[2]<"u"&&(a+=A[2]),e=e.slice(A[0].length)}return a}});var X5e=H(WAt=>{"use strict";Object.defineProperty(WAt,"__esModule",{value:!0});WAt.YarnVersion=void 0;WAt.YarnVersion=process.env.YARN_IS_TEST_ENV?"0.0.0":"1.1.73-atls"});var J5e=H(yM=>{"use strict";Object.defineProperty(yM,"__esModule",{value:!0});yM.StreamReport=yM.SUPPORTS_GROUPS=yM.SINGLE_LINE_CHAR=void 0;yM.formatName=gdr;yM.formatNameWithHyperlink=cLn;yM.reportOptionDeprecations=pPo;var udr=(Wa(),vi(Va)),cPo=udr.__importDefault(iLn()),ldr=udr.__importDefault(Jfe()),d8=U9(),lPo=dM(),uPo=X5e(),SX=udr.__importStar(uM());yM.SINGLE_LINE_CHAR="\xB7";var sLn=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],oLn=80,Moe=ldr.default.GITHUB_ACTIONS?{start:e=>`::group::${e} +`),0)],["sleep",async([e],t,r)=>{if(typeof e>"u")throw new d8.ShellError("sleep: missing operand");let n=Number(e);if(Number.isNaN(n))throw new d8.ShellError(`sleep: invalid time interval '${e}'`);return await(0,jOo.setTimeout)(1e3*n,0)}],["unset",async(e,t,r)=>{for(let n of e)delete r.environment[n],delete r.variables[n];return 0}],["__ysh_run_procedure",async(e,t,r)=>{let n=r.procedures[e[0]];return await(0,tD.start)(n,{stdin:new tD.ProtectedStream(r.stdin),stdout:new tD.ProtectedStream(r.stdout),stderr:new tD.ProtectedStream(r.stderr)}).run()}],["__ysh_set_redirects",async(e,t,r)=>{let n=r.stdin,a=r.stdout,o=r.stderr,l=[],A=[],f=[],I=0;for(;e[I]!=="--";){let b=e[I++],{type:E,fd:N}=JSON.parse(b),B=ae=>{switch(N){case null:case 0:l.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},F=ae=>{switch(N){case null:case 1:A.push(ae);break;case 2:f.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},Q=Number(e[I++]),J=I+Q;for(let ae=I;aet.baseFs.createReadStream(A8.ppath.resolve(r.cwd,A8.npath.toPortablePath(e[ae]))));break;case"<<<":B(()=>{let ne=new SX.PassThrough;return process.nextTick(()=>{ne.write(`${e[ae]} +`),ne.end()}),ne});break;case"<&":B(()=>tLn(Number(e[ae]),_G.Readable,r));break;case">":case">>":{let ne=A8.ppath.resolve(r.cwd,A8.npath.toPortablePath(e[ae]));F(ne==="/dev/null"?new SX.Writable({autoDestroy:!0,emitClose:!0,write(ce,fe,ue){setImmediate(ue)}}):t.baseFs.createWriteStream(ne,E===">>"?{flags:"a"}:void 0))}break;case">&":F(tLn(Number(e[ae]),_G.Writable,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${E}"`)}}if(l.length>0){let b=new SX.PassThrough;n=b;let E=N=>{if(N===l.length)b.end();else{let B=l[N]();B.pipe(b,{end:!1}),B.on("end",()=>{E(N+1)})}};E(0)}if(A.length>0){let b=new SX.PassThrough;a=b;for(let E of A)b.pipe(E)}if(f.length>0){let b=new SX.PassThrough;o=b;for(let E of f)b.pipe(E)}let C=await(0,tD.start)(Y5e(e.slice(I+1),t,r),{stdin:new tD.ProtectedStream(n),stdout:new tD.ProtectedStream(a),stderr:new tD.ProtectedStream(o)}).run();return await Promise.all(A.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),await Promise.all(f.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),C}]]);async function $Oo(e,t,r){let n=[],a=new SX.PassThrough;return a.on("data",o=>n.push(o)),await FAt(e,t,GAt(r,{stdout:a})),Buffer.concat(n).toString().replace(/[\r\n]+$/,"")}async function rLn(e,t,r){let n=e.map(async o=>{let l=await SIe(o.args,t,r);return{name:o.name,value:l.join(" ")}});return(await Promise.all(n)).reduce((o,l)=>(o[l.name]=l.value,o),{})}function xAt(e){return e.match(/[^ \r\n\t]+/g)||[]}async function oLn(e,t,r,n,a=n){switch(e.name){case"$":n(String(process.pid));break;case"#":n(String(t.args.length));break;case"@":if(e.quoted)for(let o of t.args)a(o);else for(let o of t.args){let l=xAt(o);for(let A=0;A=0&&o"u"&&(e.defaultValue?l=(await SIe(e.defaultValue,t,r)).join(" "):e.alternativeValue&&(l="")),typeof l>"u")throw A?new d8.ShellError(`Unbound argument #${o}`):new d8.ShellError(`Unbound variable "${e.name}"`);if(e.quoted)n(l);else{let f=xAt(l);for(let C=0;Ce+t,subtraction:(e,t)=>e-t,multiplication:(e,t)=>e*t,division:(e,t)=>Math.trunc(e/t)};async function H5e(e,t,r){if(e.type==="number"){if(Number.isInteger(e.value))return e.value;throw new Error(`Invalid number: "${e.value}", only integers are allowed`)}else if(e.type==="variable"){let n=[];await oLn({...e,quoted:!0},t,r,o=>n.push(o));let a=Number(n.join(" "));return Number.isNaN(a)?H5e({type:"variable",name:n.join(" ")},t,r):H5e({type:"number",value:a},t,r)}else return ePo[e.type](await H5e(e.left,t,r),await H5e(e.right,t,r))}async function SIe(e,t,r){let n=new Map,a=[],o=[],l=C=>{o.push(C)},A=()=>{o.length>0&&a.push(o.join("")),o=[]},f=C=>{l(C),A()},I=(C,b,E)=>{let N=JSON.stringify({type:C,fd:b}),B=n.get(N);typeof B>"u"&&n.set(N,B=[]),B.push(E)};for(let C of e){let b=!1;switch(C.type){case"redirection":{let E=await SIe(C.args,t,r);for(let N of E)I(C.subtype,C.fd,N)}break;case"argument":for(let E of C.segments)switch(E.type){case"text":l(E.text);break;case"glob":l(E.pattern),b=!0;break;case"shell":{let N=await $Oo(E.shell,t,r);if(E.quoted)l(N);else{let B=xAt(N);for(let F=0;F"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let N=await t.glob.match(E,{cwd:r.cwd,baseFs:t.baseFs});if(N.length===0){let B=adr.isBraceExpansion(E)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new d8.ShellError(`No matches found: "${E}"${B}`)}for(let B of N.sort())f(B)}}if(n.size>0){let C=[];for(let[b,E]of n.entries())C.splice(C.length,0,b,String(E.length),...E);a.splice(0,0,"__ysh_set_redirects",...C,"--")}return a}function Y5e(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let n=A8.npath.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:n});let[o,...l]=e;if(o==="command")return(0,idr.makeProcess)(l[0],l.slice(1),t,{cwd:n,env:a});let A=t.builtins.get(o);if(typeof A>"u")throw new Error(`Assertion failed: A builtin should exist for "${o}"`);return(0,idr.makeBuiltin)(async({stdin:f,stdout:I,stderr:C})=>{let{stdin:b,stdout:E,stderr:N}=r;r.stdin=f,r.stdout=I,r.stderr=C;try{return await A(l,t,r)}finally{r.stdin=b,r.stdout=E,r.stderr=N}})}function tPo(e,t,r){return n=>{let a=new SX.PassThrough,o=FAt(e,t,GAt(r,{stdin:a}));return{stdin:a,promise:o}}}function rPo(e,t,r){return n=>{let a=new SX.PassThrough,o=FAt(e,t,r);return{stdin:a,promise:o}}}function nLn(e,t,r,n){if(t.length===0)return e;{let a;do a=String(Math.random());while(Object.hasOwn(n.procedures,a));return n.procedures={...n.procedures},n.procedures[a]=e,Y5e([...t,"__ysh_run_procedure",a],r,n)}}async function iLn(e,t,r){let n=e,a=null,o=null;for(;n;){let l=n.then?{...r}:r,A;switch(n.type){case"command":{let f=await SIe(n.args,t,r),I=await rLn(n.envs,t,r);A=n.envs.length?Y5e(f,t,GAt(l,{environment:I})):Y5e(f,t,l)}break;case"subshell":{let f=await SIe(n.args,t,r),I=tPo(n.subshell,t,l);A=nLn(I,f,t,l)}break;case"group":{let f=await SIe(n.args,t,r),I=rPo(n.group,t,l);A=nLn(I,f,t,l)}break;case"envs":{let f=await rLn(n.envs,t,r);l.environment={...l.environment,...f},A=Y5e(["true"],t,l)}break}if(typeof A>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)o=(0,tD.start)(A,{stdin:new tD.ProtectedStream(l.stdin),stdout:new tD.ProtectedStream(l.stdout),stderr:new tD.ProtectedStream(l.stderr)});else{if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":o=o.pipeTo(A,tD.Pipe.STDOUT);break;case"|&":o=o.pipeTo(A,tD.Pipe.STDOUT|tD.Pipe.STDERR);break}}n.then?(a=n.then.type,n=n.then.chain):n=null}if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await o.run()}async function nPo(e,t,r,{background:n=!1}={}){function a(o){let l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[o%l.length];return UOo.default.hex(A)}if(n){let o=r.nextBackgroundJobIndex++,l=a(o),A=`[${o}]`,f=l(A),{stdout:I,stderr:C}=(0,idr.createOutputStreamsWithPrefix)(r,{prefix:f});return r.backgroundJobs.push(iLn(e,t,GAt(r,{stdout:I,stderr:C})).catch(b=>C.write(`${b.message} +`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${f}, '${l((0,sLn.stringifyCommandChain)(e))}' has ended +`)})),0}return await iLn(e,t,r)}async function iPo(e,t,r,{background:n=!1}={}){let a,o=A=>{a=A,r.variables["?"]=String(A)},l=async A=>{try{return await nPo(A.chain,t,r,{background:n&&typeof A.then>"u"})}catch(f){if(!(f instanceof d8.ShellError))throw f;return r.stderr.write(`${f.message} +`),1}};for(o(await l(e));e.then;){if(r.exitCode!==null)return r.exitCode;switch(e.then.type){case"&&":a===0&&o(await l(e.then.line));break;case"||":a!==0&&o(await l(e.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${e.then.type}"`)}e=e.then.line}return a}async function FAt(e,t,r){let n=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:o,type:l}of e){if(a=await iPo(o,t,r,{background:l==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=n,a}function aLn(e){switch(e.type){case"variable":return e.name==="@"||e.name==="#"||e.name==="*"||Number.isFinite(parseInt(e.name,10))||"defaultValue"in e&&!!e.defaultValue&&e.defaultValue.some(t=>Q5e(t))||"alternativeValue"in e&&!!e.alternativeValue&&e.alternativeValue.some(t=>Q5e(t));case"arithmetic":return sdr(e.arithmetic);case"shell":return cdr(e.shell);default:return!1}}function Q5e(e){switch(e.type){case"redirection":return e.args.some(t=>Q5e(t));case"argument":return e.segments.some(t=>aLn(t));default:throw new Error(`Assertion failed: Unsupported argument type: "${e.type}"`)}}function sdr(e){switch(e.type){case"variable":return aLn(e);case"number":return!1;default:return sdr(e.left)||sdr(e.right)}}function cdr(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(;r;){let n;switch(r.type){case"subshell":n=cdr(r.subshell);break;case"command":n=r.envs.some(a=>a.args.some(o=>Q5e(o)))||r.args.some(a=>Q5e(a));break}if(n)return!0;if(!r.then)break;r=r.then.chain}if(!t.then)break;t=t.then.line}return!1})}async function sPo(e,t=[],{baseFs:r=new A8.NodeFS,builtins:n={},cwd:a=A8.npath.toPortablePath(process.cwd()),env:o=process.env,stdin:l=process.stdin,stdout:A=process.stdout,stderr:f=process.stderr,variables:I={},glob:C=adr}={}){let b={};for(let[B,F]of Object.entries(o))typeof F<"u"&&(b[B]=F);let E=new Map(qOo);for(let[B,F]of Object.entries(n))E.set(B,F);l===null&&(l=new SX.PassThrough,l.end());let N=(0,sLn.parseShell)(e,C);if(!cdr(N)&&N.length>0&&t.length>0){let{command:B}=N[N.length-1];for(;B.then;)B=B.then.line;let F=B.chain;for(;F.then;)F=F.then.chain;F.type==="command"&&(F.args=F.args.concat(t.map(Q=>({type:"argument",segments:[{type:"text",text:Q}]}))))}return await FAt(N,{args:t,baseFs:r,builtins:E,initialStdin:l,initialStdout:A,initialStderr:f,glob:C},{cwd:a,environment:b,exitCode:null,procedures:{},stdin:l,stdout:A,stderr:f,variables:Object.assign({},I,{"?":0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}});var cLn=H((L6l,ZAt)=>{function oPo(){var e=0,t=1,r=2,n=3,a=4,o=5,l=6,A=7,f=8,I=9,C=10,b=11,E=12,N=13,B=14,F=15,Q=16,J=17,ae=0,ne=1,ce=2,fe=3,ue=4;function de(k,tt){return 55296<=k.charCodeAt(tt)&&k.charCodeAt(tt)<=56319&&56320<=k.charCodeAt(tt+1)&&k.charCodeAt(tt+1)<=57343}function be(k,tt){tt===void 0&&(tt=0);var ze=k.charCodeAt(tt);if(55296<=ze&&ze<=56319&&tt=1){var Le=k.charCodeAt(tt-1),Je=ze;return 55296<=Le&&Le<=56319?(Le-55296)*1024+(Je-56320)+65536:Je}return ze}function Se(k,tt,ze){var Le=[k].concat(tt).concat([ze]),Je=Le[Le.length-2],ft=ze,lt=Le.lastIndexOf(B);if(lt>1&&Le.slice(1,lt).every(function(Sr){return Sr==n})&&[n,N,J].indexOf(k)==-1)return ce;var Ot=Le.lastIndexOf(a);if(Ot>0&&Le.slice(1,Ot).every(function(Sr){return Sr==a})&&[E,a].indexOf(Je)==-1)return Le.filter(function(Sr){return Sr==a}).length%2==1?fe:ue;if(Je==e&&ft==t)return ae;if(Je==r||Je==e||Je==t)return ft==B&&tt.every(function(Sr){return Sr==n})?ce:ne;if(ft==r||ft==e||ft==t)return ne;if(Je==l&&(ft==l||ft==A||ft==I||ft==C))return ae;if((Je==I||Je==A)&&(ft==A||ft==f))return ae;if((Je==C||Je==f)&&ft==f)return ae;if(ft==n||ft==F)return ae;if(ft==o)return ae;if(Je==E)return ae;var Er=Le.indexOf(n)!=-1?Le.lastIndexOf(n)-1:Le.length-2;return[N,J].indexOf(Le[Er])!=-1&&Le.slice(Er+1,-1).every(function(Sr){return Sr==n})&&ft==B||Je==F&&[Q,J].indexOf(ft)!=-1?ae:tt.indexOf(a)!=-1?ce:Je==a&&ft==a?ae:ne}this.nextBreak=function(k,tt){if(tt===void 0&&(tt=0),tt<0)return 0;if(tt>=k.length-1)return k.length;for(var ze=De(be(k,tt)),Le=[],Je=tt+1;Je{var aPo=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,LAt;function cPo(){if(LAt)return LAt;if(typeof Intl.Segmenter<"u"){let e=new Intl.Segmenter("en",{granularity:"grapheme"});return LAt=t=>Array.from(e.segment(t),({segment:r})=>r)}else{let e=cLn(),t=new e;return LAt=r=>t.splitGraphemes(r)}}lLn.exports=(e,t=0,r=e.length)=>{if(t<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let n=r-t,a="",o=0,l=0;for(;e.length>0;){let A=e.match(aPo)||[e,e,void 0],f=cPo()(A[1]),I=Math.min(t-o,f.length);f=f.slice(I);let C=Math.min(n-l,f.length);a+=f.slice(0,C).join(""),o+=I,l+=C,typeof A[2]<"u"&&(a+=A[2]),e=e.slice(A[0].length)}return a}});var X5e=H(VAt=>{"use strict";Object.defineProperty(VAt,"__esModule",{value:!0});VAt.YarnVersion=void 0;VAt.YarnVersion=process.env.YARN_IS_TEST_ENV?"0.0.0":"1.1.80-atls"});var J5e=H(bM=>{"use strict";Object.defineProperty(bM,"__esModule",{value:!0});bM.StreamReport=bM.SUPPORTS_GROUPS=bM.SINGLE_LINE_CHAR=void 0;bM.formatName=gdr;bM.formatNameWithHyperlink=pLn;bM.reportOptionDeprecations=fPo;var udr=(Wa(),vi(Va)),lPo=udr.__importDefault(uLn()),ldr=udr.__importDefault(Ufe()),p8=K9(),uPo=pM(),gPo=X5e(),vX=udr.__importStar(gM());bM.SINGLE_LINE_CHAR="\xB7";var gLn=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],ALn=80,Hoe=ldr.default.GITHUB_ACTIONS?{start:e=>`::group::${e} `,end:e=>`::endgroup:: `}:ldr.default.TRAVIS?{start:e=>`travis_fold:start:${e} `,end:e=>`travis_fold:end:${e} `}:ldr.default.GITLAB?{start:e=>`section_start:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r\x1B[0K${e} -`,end:e=>`section_end:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null;yM.SUPPORTS_GROUPS=Moe!==null;var aLn=new Date,gPo=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,APo=e=>e,OAt=APo({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),dPo=gPo&&Object.keys(OAt).find(e=>{let t=OAt[e];return!(t.date&&(t.date[0]!==aLn.getDate()||t.date[1]!==aLn.getMonth()+1))})||"default";function gdr(e,{configuration:t,json:r}){if(!t.get("enableMessageNames"))return"";let n=e===null?0:e,a=(0,d8.stringifyMessageName)(n);return!r&&e===null?SX.pretty(t,a,"grey"):a}function cLn(e,{configuration:t,json:r}){let n=gdr(e,{configuration:t,json:r});if(!n||e===null||e===d8.MessageName.UNNAMED)return n;let a=d8.MessageName[e],o=`https://yarnpkg.com/advanced/error-codes#${n}---${a}`.toLowerCase();return SX.applyHyperlink(t,n,o)}async function pPo({configuration:e,stdout:t,forceError:r},n){let a=await PAt.start({configuration:e,stdout:t,includeFooter:!1},async o=>{let l=!1,A=!1;for(let f of n)typeof f.option<"u"&&(f.error||r?(A=!0,o.reportError(d8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)):(l=!0,o.reportWarning(d8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)),f.callback?.());l&&!A&&o.reportSeparator()});return a.hasErrors()?a.exitCode():null}var PAt=class extends lPo.Report{static async start(t,r){let n=new this(t),a=process.emitWarning;process.emitWarning=(o,l)=>{if(typeof o!="string"){let f=o;o=f.message,l=l??f.name}let A=typeof l<"u"?`${l}: ${o}`:o;n.reportWarning(d8.MessageName.UNNAMED,A)},t.includeVersion&&n.reportInfo(d8.MessageName.UNNAMED,SX.applyStyle(t.configuration,`Yarn ${uPo.YarnVersion}`,SX.Style.BOLD));try{await r(n)}catch(o){n.reportExceptionOnce(o)}finally{await n.finalize(),process.emitWarning=a}return n}constructor({configuration:t,stdout:r,json:n=!1,forceSectionAlignment:a=!1,includeNames:o=!0,includePrefix:l=!0,includeFooter:A=!0,includeLogs:f=!n,includeInfos:I=f,includeWarnings:C=f}){if(super(),this.uncommitted=new Set,this.warningCount=0,this.errorCount=0,this.timerFooter=[],this.startTime=Date.now(),this.indent=0,this.level=0,this.progress=new Map,this.progressTime=0,this.progressFrame=0,this.progressTimeout=null,this.progressStyle=null,this.progressMaxScaledSize=null,SX.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.forceSectionAlignment=a,this.includeNames=o,this.includePrefix=l,this.includeFooter=A,this.includeInfos=I,this.includeWarnings=C,this.json=n,this.stdout=r,t.get("enableProgressBars")&&!n&&r.isTTY&&r.columns>22){let b=t.get("progressBarStyle")||dPo;if(!Object.hasOwn(OAt,b))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=OAt[b];let E=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*E/80)}}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let r=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,r-12-this.indent*2)}startSectionSync({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}async startSectionPromise({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return await a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}startTimerImpl(t,r,n){return{cb:typeof r=="function"?r:n,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${t}`),this.indent+=1,Moe!==null&&!this.json&&this.includeInfos&&this.stdout.write(Moe.start(t))},reportFooter:l=>{if(this.indent-=1,Moe!==null&&!this.json&&this.includeInfos){this.stdout.write(Moe.end(t));for(let A of this.timerFooter)A()}this.configuration.get("enableTimers")&&l>200?this.reportInfo(null,`\u2514 Completed in ${SX.pretty(this.configuration,l,SX.Type.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof r=="function"?{}:r).skipIfEmpty}}startTimerSync(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionSync(o,a)}async startTimerPromise(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionPromise(o,a)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(t,r){if(!this.includeInfos)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"",o=`${this.formatPrefix(a,"blueBright")}${r}`;this.json?this.reportJson({type:"info",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(o)}reportWarning(t,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"warning",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"yellowBright")}${r}`)}reportError(t,r){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(t,r)),this.reportErrorImpl(t,r)}reportErrorImpl(t,r){this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"error",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"redBright")}${r}`,{truncate:!1})}reportFold(t,r){if(!Moe)return;let n=`${Moe.start(t)}${r}${Moe.end(t)}`;this.timerFooter.push(()=>this.stdout.write(n))}reportProgress(t){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(t.hasProgress&&t.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,n=Promise.resolve().then(async()=>{let o={progress:t.hasProgress?0:void 0,title:t.hasTitle?"":void 0};this.progress.set(t,{definition:o,lastScaledSize:t.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:l,title:A}of t)r||o.progress===l&&o.title===A||(o.progress=l,o.title=A,this.refreshProgress());a()}),a=()=>{r||(r=!0,this.progress.delete(t),this.refreshProgress({delta:1}))};return{...n,stop:a}}reportJson(t){this.json&&this.writeLine(`${JSON.stringify(t)}`)}async finalize(){if(!this.includeFooter)return;let t="";this.errorCount>0?t="Failed with errors":this.warningCount>0?t="Done with warnings":t="Done";let r=SX.pretty(this.configuration,Date.now()-this.startTime,SX.Type.DURATION),n=this.configuration.get("enableTimers")?`${t} in ${r}`:t;this.errorCount>0?this.reportError(d8.MessageName.UNNAMED,n):this.warningCount>0?this.reportWarning(d8.MessageName.UNNAMED,n):this.reportInfo(d8.MessageName.UNNAMED,n)}writeLine(t,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(t,{truncate:r})} +`,end:e=>`section_end:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null;bM.SUPPORTS_GROUPS=Hoe!==null;var dLn=new Date,APo=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,dPo=e=>e,WAt=dPo({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),pPo=APo&&Object.keys(WAt).find(e=>{let t=WAt[e];return!(t.date&&(t.date[0]!==dLn.getDate()||t.date[1]!==dLn.getMonth()+1))})||"default";function gdr(e,{configuration:t,json:r}){if(!t.get("enableMessageNames"))return"";let n=e===null?0:e,a=(0,p8.stringifyMessageName)(n);return!r&&e===null?vX.pretty(t,a,"grey"):a}function pLn(e,{configuration:t,json:r}){let n=gdr(e,{configuration:t,json:r});if(!n||e===null||e===p8.MessageName.UNNAMED)return n;let a=p8.MessageName[e],o=`https://yarnpkg.com/advanced/error-codes#${n}---${a}`.toLowerCase();return vX.applyHyperlink(t,n,o)}async function fPo({configuration:e,stdout:t,forceError:r},n){let a=await OAt.start({configuration:e,stdout:t,includeFooter:!1},async o=>{let l=!1,A=!1;for(let f of n)typeof f.option<"u"&&(f.error||r?(A=!0,o.reportError(p8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)):(l=!0,o.reportWarning(p8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)),f.callback?.());l&&!A&&o.reportSeparator()});return a.hasErrors()?a.exitCode():null}var OAt=class extends uPo.Report{static async start(t,r){let n=new this(t),a=process.emitWarning;process.emitWarning=(o,l)=>{if(typeof o!="string"){let f=o;o=f.message,l=l??f.name}let A=typeof l<"u"?`${l}: ${o}`:o;n.reportWarning(p8.MessageName.UNNAMED,A)},t.includeVersion&&n.reportInfo(p8.MessageName.UNNAMED,vX.applyStyle(t.configuration,`Yarn ${gPo.YarnVersion}`,vX.Style.BOLD));try{await r(n)}catch(o){n.reportExceptionOnce(o)}finally{await n.finalize(),process.emitWarning=a}return n}constructor({configuration:t,stdout:r,json:n=!1,forceSectionAlignment:a=!1,includeNames:o=!0,includePrefix:l=!0,includeFooter:A=!0,includeLogs:f=!n,includeInfos:I=f,includeWarnings:C=f}){if(super(),this.uncommitted=new Set,this.warningCount=0,this.errorCount=0,this.timerFooter=[],this.startTime=Date.now(),this.indent=0,this.level=0,this.progress=new Map,this.progressTime=0,this.progressFrame=0,this.progressTimeout=null,this.progressStyle=null,this.progressMaxScaledSize=null,vX.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.forceSectionAlignment=a,this.includeNames=o,this.includePrefix=l,this.includeFooter=A,this.includeInfos=I,this.includeWarnings=C,this.json=n,this.stdout=r,t.get("enableProgressBars")&&!n&&r.isTTY&&r.columns>22){let b=t.get("progressBarStyle")||pPo;if(!Object.hasOwn(WAt,b))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=WAt[b];let E=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*E/80)}}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let r=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,r-12-this.indent*2)}startSectionSync({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}async startSectionPromise({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return await a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}startTimerImpl(t,r,n){return{cb:typeof r=="function"?r:n,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${t}`),this.indent+=1,Hoe!==null&&!this.json&&this.includeInfos&&this.stdout.write(Hoe.start(t))},reportFooter:l=>{if(this.indent-=1,Hoe!==null&&!this.json&&this.includeInfos){this.stdout.write(Hoe.end(t));for(let A of this.timerFooter)A()}this.configuration.get("enableTimers")&&l>200?this.reportInfo(null,`\u2514 Completed in ${vX.pretty(this.configuration,l,vX.Type.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof r=="function"?{}:r).skipIfEmpty}}startTimerSync(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionSync(o,a)}async startTimerPromise(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionPromise(o,a)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(t,r){if(!this.includeInfos)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"",o=`${this.formatPrefix(a,"blueBright")}${r}`;this.json?this.reportJson({type:"info",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(o)}reportWarning(t,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"warning",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"yellowBright")}${r}`)}reportError(t,r){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(t,r)),this.reportErrorImpl(t,r)}reportErrorImpl(t,r){this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"error",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"redBright")}${r}`,{truncate:!1})}reportFold(t,r){if(!Hoe)return;let n=`${Hoe.start(t)}${r}${Hoe.end(t)}`;this.timerFooter.push(()=>this.stdout.write(n))}reportProgress(t){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(t.hasProgress&&t.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,n=Promise.resolve().then(async()=>{let o={progress:t.hasProgress?0:void 0,title:t.hasTitle?"":void 0};this.progress.set(t,{definition:o,lastScaledSize:t.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:l,title:A}of t)r||o.progress===l&&o.title===A||(o.progress=l,o.title=A,this.refreshProgress());a()}),a=()=>{r||(r=!0,this.progress.delete(t),this.refreshProgress({delta:1}))};return{...n,stop:a}}reportJson(t){this.json&&this.writeLine(`${JSON.stringify(t)}`)}async finalize(){if(!this.includeFooter)return;let t="";this.errorCount>0?t="Failed with errors":this.warningCount>0?t="Done with warnings":t="Done";let r=vX.pretty(this.configuration,Date.now()-this.startTime,vX.Type.DURATION),n=this.configuration.get("enableTimers")?`${t} in ${r}`:t;this.errorCount>0?this.reportError(p8.MessageName.UNNAMED,n):this.warningCount>0?this.reportWarning(p8.MessageName.UNNAMED,n):this.reportInfo(p8.MessageName.UNNAMED,n)}writeLine(t,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(t,{truncate:r})} `),this.writeProgress()}writeLines(t,{truncate:r}={}){this.clearProgress({delta:t.length});for(let n of t)this.stdout.write(`${this.truncate(n,{truncate:r})} -`);this.writeProgress()}commit(){let t=this.uncommitted;this.uncommitted=new Set;for(let r of t)r.committed=!0,r.action()}clearProgress({delta:t=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+t>0&&(this.stdout.write(`\x1B[${this.progress.size+t}A`),(t>0||r)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let t=Date.now();t-this.progressTime>oLn&&(this.progressFrame=(this.progressFrame+1)%sLn.length,this.progressTime=t);let r=sLn[this.progressFrame];for(let n of this.progress.values()){let a="";if(typeof n.lastScaledSize<"u"){let f=this.progressStyle.chars[0].repeat(n.lastScaledSize),I=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-n.lastScaledSize);a=` ${f}${I}`}let o=this.formatName(null),l=o?`${o}: `:"",A=n.definition.title?` ${n.definition.title}`:"";this.stdout.write(`${SX.pretty(this.configuration,"\u27A4","blueBright")} ${l}${r}${a}${A} -`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},oLn)}refreshProgress({delta:t=0,force:r=!1}={}){let n=!1,a=!1;if(r||this.progress.size===0)n=!0;else for(let o of this.progress.values()){let l=typeof o.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*o.definition.progress):void 0,A=o.lastScaledSize;o.lastScaledSize=l;let f=o.lastTitle;if(o.lastTitle=o.definition.title,l!==A||(a=f!==o.definition.title)){n=!0;break}}n&&(this.clearProgress({delta:t,clear:a}),this.writeProgress())}truncate(t,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r>"u"&&(r=this.configuration.get("preferTruncatedLines")),r&&(t=(0,cPo.default)(t,0,this.stdout.columns-1)),t}formatName(t){return this.includeNames?gdr(t,{configuration:this.configuration,json:this.json}):""}formatPrefix(t,r){return this.includePrefix?`${SX.pretty(this.configuration,"\u27A4",r)} ${t}${this.formatIndent()}`:""}formatNameWithHyperlink(t){return this.includeNames?cLn(t,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${yM.SINGLE_LINE_CHAR} `}};yM.StreamReport=PAt});var mdr=H(DR=>{"use strict";Object.defineProperty(DR,"__esModule",{value:!0});DR.PackageManager=void 0;DR.detectPackageManager=ALn;DR.makeScriptEnv=U5e;DR.prepareExternalProject=_Po;DR.hasPackageScript=yPo;DR.executePackageScript=dLn;DR.executePackageShellcode=bPo;DR.executeWorkspaceScript=fLn;DR.hasWorkspaceScript=fdr;DR.executeWorkspaceLifecycleScript=ILn;DR.maybeExecuteWorkspaceLifecycleScript=SPo;DR.isNodeScript=Idr;DR.getPackageAccessibleBinaries=HAt;DR.getWorkspaceAccessibleBinaries=hLn;DR.executePackageAccessibleBinary=mLn;DR.executeWorkspaceAccessibleBinary=vPo;var Kve=(Wa(),vi(Va)),Yoe=Io(),np=Io(),lLn=u8(),uLn=M5e(),fPo=WO(),IPo=Kve.__importDefault(Ufe()),Uve=Et("stream"),pdr=kve(),ddr=U9(),gLn=dM(),MAt=J5e(),Adr=X5e(),MO=Kve.__importStar(fAt()),p8=Kve.__importStar(uM()),SIe=Kve.__importStar(OO()),hPo=Kve.__importStar(h$()),oT=Kve.__importStar(fG()),FZ;(function(e){e.Yarn1="Yarn Classic",e.Yarn2="Yarn",e.Npm="npm",e.Pnpm="pnpm"})(FZ||(DR.PackageManager=FZ={}));async function Hoe(e,t,r,n=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${n.map(o=>`"${o.replace('"','""')}"`).join(" ")} %*`;await np.xfs.writeFilePromise(np.ppath.format({dir:e,name:t,ext:".cmd"}),a)}await np.xfs.writeFilePromise(np.ppath.join(e,t),`#!/bin/sh +`);this.writeProgress()}commit(){let t=this.uncommitted;this.uncommitted=new Set;for(let r of t)r.committed=!0,r.action()}clearProgress({delta:t=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+t>0&&(this.stdout.write(`\x1B[${this.progress.size+t}A`),(t>0||r)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let t=Date.now();t-this.progressTime>ALn&&(this.progressFrame=(this.progressFrame+1)%gLn.length,this.progressTime=t);let r=gLn[this.progressFrame];for(let n of this.progress.values()){let a="";if(typeof n.lastScaledSize<"u"){let f=this.progressStyle.chars[0].repeat(n.lastScaledSize),I=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-n.lastScaledSize);a=` ${f}${I}`}let o=this.formatName(null),l=o?`${o}: `:"",A=n.definition.title?` ${n.definition.title}`:"";this.stdout.write(`${vX.pretty(this.configuration,"\u27A4","blueBright")} ${l}${r}${a}${A} +`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},ALn)}refreshProgress({delta:t=0,force:r=!1}={}){let n=!1,a=!1;if(r||this.progress.size===0)n=!0;else for(let o of this.progress.values()){let l=typeof o.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*o.definition.progress):void 0,A=o.lastScaledSize;o.lastScaledSize=l;let f=o.lastTitle;if(o.lastTitle=o.definition.title,l!==A||(a=f!==o.definition.title)){n=!0;break}}n&&(this.clearProgress({delta:t,clear:a}),this.writeProgress())}truncate(t,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r>"u"&&(r=this.configuration.get("preferTruncatedLines")),r&&(t=(0,lPo.default)(t,0,this.stdout.columns-1)),t}formatName(t){return this.includeNames?gdr(t,{configuration:this.configuration,json:this.json}):""}formatPrefix(t,r){return this.includePrefix?`${vX.pretty(this.configuration,"\u27A4",r)} ${t}${this.formatIndent()}`:""}formatNameWithHyperlink(t){return this.includeNames?pLn(t,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${bM.SINGLE_LINE_CHAR} `}};bM.StreamReport=OAt});var mdr=H(kR=>{"use strict";Object.defineProperty(kR,"__esModule",{value:!0});kR.PackageManager=void 0;kR.detectPackageManager=mLn;kR.makeScriptEnv=U5e;kR.prepareExternalProject=yPo;kR.hasPackageScript=bPo;kR.executePackageScript=CLn;kR.executePackageShellcode=EPo;kR.executeWorkspaceScript=yLn;kR.hasWorkspaceScript=fdr;kR.executeWorkspaceLifecycleScript=bLn;kR.maybeExecuteWorkspaceLifecycleScript=vPo;kR.isNodeScript=Idr;kR.getPackageAccessibleBinaries=MAt;kR.getWorkspaceAccessibleBinaries=ELn;kR.executePackageAccessibleBinary=SLn;kR.executeWorkspaceAccessibleBinary=BPo;var Kve=(Wa(),vi(Va)),Qoe=No(),np=No(),fLn=g8(),ILn=M5e(),IPo=PO(),hPo=Kve.__importDefault(Kfe()),Uve=Et("stream"),pdr=kve(),ddr=K9(),hLn=pM(),PAt=J5e(),Adr=X5e(),YO=Kve.__importStar(pAt()),f8=Kve.__importStar(gM()),vIe=Kve.__importStar(MO()),mPo=Kve.__importStar(m$()),aT=Kve.__importStar(IG()),ZZ;(function(e){e.Yarn1="Yarn Classic",e.Yarn2="Yarn",e.Npm="npm",e.Pnpm="pnpm"})(ZZ||(kR.PackageManager=ZZ={}));async function Yoe(e,t,r,n=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${n.map(o=>`"${o.replace('"','""')}"`).join(" ")} %*`;await np.xfs.writeFilePromise(np.ppath.format({dir:e,name:t,ext:".cmd"}),a)}await np.xfs.writeFilePromise(np.ppath.join(e,t),`#!/bin/sh exec "${r}" ${n.map(a=>`'${a.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" -`,{mode:493})}async function ALn(e){let t=await pdr.Manifest.tryFind(e);if(t?.packageManager){let n=oT.tryParseLocator(t.packageManager);if(n?.name){let a=`found ${JSON.stringify({packageManager:t.packageManager})} in manifest`,[o]=n.reference.split(".");switch(n.name){case"yarn":return{packageManagerField:!0,packageManager:Number(o)===1?FZ.Yarn1:FZ.Yarn2,reason:a};case"npm":return{packageManagerField:!0,packageManager:FZ.Npm,reason:a};case"pnpm":return{packageManagerField:!0,packageManager:FZ.Pnpm,reason:a}}}}let r;try{r=await np.xfs.readFilePromise(np.ppath.join(e,Yoe.Filename.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:FZ.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:FZ.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:np.xfs.existsSync(np.ppath.join(e,"package-lock.json"))?{packageManager:FZ.Npm,reason:`found npm's "package-lock.json" lockfile`}:np.xfs.existsSync(np.ppath.join(e,"pnpm-lock.yaml"))?{packageManager:FZ.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function U5e({project:e,locator:t,binFolder:r,ignoreCorepack:n,lifecycleScript:a,baseEnv:o=e?.configuration.env??process.env}){let l={};for(let[C,b]of Object.entries(o))typeof b<"u"&&(l[C.toLowerCase()!=="path"?C:"PATH"]=b);let A=np.npath.fromPortablePath(r);l.BERRY_BIN_FOLDER=np.npath.fromPortablePath(A);let f=process.env.COREPACK_ROOT&&!n?np.npath.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Hoe(r,"node",process.execPath),...Adr.YarnVersion!==null?[Hoe(r,"run",process.execPath,[f,"run"]),Hoe(r,"yarn",process.execPath,[f]),Hoe(r,"yarnpkg",process.execPath,[f]),Hoe(r,"node-gyp",process.execPath,[f,"run","--top-level","node-gyp"])]:[]]),e&&(l.INIT_CWD=np.npath.fromPortablePath(e.configuration.startingCwd),l.PROJECT_CWD=np.npath.fromPortablePath(e.cwd)),l.PATH=l.PATH?`${A}${np.npath.delimiter}${l.PATH}`:`${A}`,l.npm_execpath=`${A}${np.npath.sep}yarn`,l.npm_node_execpath=`${A}${np.npath.sep}node`,t){if(!e)throw new Error("Assertion failed: Missing project");let C=e.tryWorkspaceByLocator(t),b=C?C.manifest.version??"":e.storedPackages.get(t.locatorHash).version??"";l.npm_package_name=oT.stringifyIdent(t),l.npm_package_version=b;let E;if(C)E=C.cwd;else{let N=e.storedPackages.get(t.locatorHash);if(!N)throw new Error(`Package for ${oT.prettyLocator(e.configuration,t)} not found in the project`);let B=e.configuration.getLinkers(),F={project:e,report:new MAt.StreamReport({stdout:new Uve.PassThrough,configuration:e.configuration})},Q=B.find(J=>J.supportsPackage(N,F));if(!Q)throw new Error(`The package ${oT.prettyLocator(e.configuration,N)} isn't supported by any of the available linkers`);E=await Q.findPackageLocation(N,F)}l.npm_package_json=np.npath.fromPortablePath(np.ppath.join(E,Yoe.Filename.manifest))}let I=Adr.YarnVersion!==null?`yarn/${Adr.YarnVersion}`:`yarn/${SIe.dynamicRequire("@yarnpkg/core").version}-core`;return l.npm_config_user_agent=`${I} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(l.npm_lifecycle_event=a),e&&await e.configuration.triggerHook(C=>C.setupScriptEnvironment,e,l,async(C,b,E)=>await Hoe(r,C,b,E)),l}var mPo=2,CPo=(0,IPo.default)(mPo);async function _Po(e,t,{configuration:r,report:n,workspace:a=null,locator:o=null}){await CPo(async()=>{await np.xfs.mktempPromise(async l=>{let A=np.ppath.join(l,"pack.log"),f=null,{stdout:I,stderr:C}=r.getSubprocessStreams(A,{prefix:np.npath.fromPortablePath(e),report:n}),b=o&&oT.isVirtualLocator(o)?oT.devirtualizeLocator(o):o,E=b?oT.stringifyLocator(b):"an external project";I.write(`Packing ${E} from sources -`);let N=await ALn(e),B;N!==null?(I.write(`Using ${N.packageManager} for bootstrap. Reason: ${N.reason} +`,{mode:493})}async function mLn(e){let t=await pdr.Manifest.tryFind(e);if(t?.packageManager){let n=aT.tryParseLocator(t.packageManager);if(n?.name){let a=`found ${JSON.stringify({packageManager:t.packageManager})} in manifest`,[o]=n.reference.split(".");switch(n.name){case"yarn":return{packageManagerField:!0,packageManager:Number(o)===1?ZZ.Yarn1:ZZ.Yarn2,reason:a};case"npm":return{packageManagerField:!0,packageManager:ZZ.Npm,reason:a};case"pnpm":return{packageManagerField:!0,packageManager:ZZ.Pnpm,reason:a}}}}let r;try{r=await np.xfs.readFilePromise(np.ppath.join(e,Qoe.Filename.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:ZZ.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:ZZ.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:np.xfs.existsSync(np.ppath.join(e,"package-lock.json"))?{packageManager:ZZ.Npm,reason:`found npm's "package-lock.json" lockfile`}:np.xfs.existsSync(np.ppath.join(e,"pnpm-lock.yaml"))?{packageManager:ZZ.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function U5e({project:e,locator:t,binFolder:r,ignoreCorepack:n,lifecycleScript:a,baseEnv:o=e?.configuration.env??process.env}){let l={};for(let[C,b]of Object.entries(o))typeof b<"u"&&(l[C.toLowerCase()!=="path"?C:"PATH"]=b);let A=np.npath.fromPortablePath(r);l.BERRY_BIN_FOLDER=np.npath.fromPortablePath(A);let f=process.env.COREPACK_ROOT&&!n?np.npath.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Yoe(r,"node",process.execPath),...Adr.YarnVersion!==null?[Yoe(r,"run",process.execPath,[f,"run"]),Yoe(r,"yarn",process.execPath,[f]),Yoe(r,"yarnpkg",process.execPath,[f]),Yoe(r,"node-gyp",process.execPath,[f,"run","--top-level","node-gyp"])]:[]]),e&&(l.INIT_CWD=np.npath.fromPortablePath(e.configuration.startingCwd),l.PROJECT_CWD=np.npath.fromPortablePath(e.cwd)),l.PATH=l.PATH?`${A}${np.npath.delimiter}${l.PATH}`:`${A}`,l.npm_execpath=`${A}${np.npath.sep}yarn`,l.npm_node_execpath=`${A}${np.npath.sep}node`,t){if(!e)throw new Error("Assertion failed: Missing project");let C=e.tryWorkspaceByLocator(t),b=C?C.manifest.version??"":e.storedPackages.get(t.locatorHash).version??"";l.npm_package_name=aT.stringifyIdent(t),l.npm_package_version=b;let E;if(C)E=C.cwd;else{let N=e.storedPackages.get(t.locatorHash);if(!N)throw new Error(`Package for ${aT.prettyLocator(e.configuration,t)} not found in the project`);let B=e.configuration.getLinkers(),F={project:e,report:new PAt.StreamReport({stdout:new Uve.PassThrough,configuration:e.configuration})},Q=B.find(J=>J.supportsPackage(N,F));if(!Q)throw new Error(`The package ${aT.prettyLocator(e.configuration,N)} isn't supported by any of the available linkers`);E=await Q.findPackageLocation(N,F)}l.npm_package_json=np.npath.fromPortablePath(np.ppath.join(E,Qoe.Filename.manifest))}let I=Adr.YarnVersion!==null?`yarn/${Adr.YarnVersion}`:`yarn/${vIe.dynamicRequire("@yarnpkg/core").version}-core`;return l.npm_config_user_agent=`${I} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(l.npm_lifecycle_event=a),e&&await e.configuration.triggerHook(C=>C.setupScriptEnvironment,e,l,async(C,b,E)=>await Yoe(r,C,b,E)),l}var CPo=2,_Po=(0,hPo.default)(CPo);async function yPo(e,t,{configuration:r,report:n,workspace:a=null,locator:o=null}){await _Po(async()=>{await np.xfs.mktempPromise(async l=>{let A=np.ppath.join(l,"pack.log"),f=null,{stdout:I,stderr:C}=r.getSubprocessStreams(A,{prefix:np.npath.fromPortablePath(e),report:n}),b=o&&aT.isVirtualLocator(o)?aT.devirtualizeLocator(o):o,E=b?aT.stringifyLocator(b):"an external project";I.write(`Packing ${E} from sources +`);let N=await mLn(e),B;N!==null?(I.write(`Using ${N.packageManager} for bootstrap. Reason: ${N.reason} `),B=N.packageManager):(I.write(`No package manager configuration detected; defaulting to Yarn -`),B=FZ.Yarn2);let F=B===FZ.Yarn2&&!N?.packageManagerField;await np.xfs.mktempPromise(async Q=>{let J=await U5e({binFolder:Q,ignoreCorepack:F,baseEnv:{...process.env,COREPACK_ENABLE_AUTO_PIN:"0"}}),ne=new Map([[FZ.Yarn1,async()=>{let fe=a!==null?["workspace",a]:[],ue=np.ppath.join(e,Yoe.Filename.manifest),de=await np.xfs.readFilePromise(ue),be=await MO.pipevp(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:e,env:J,stdin:f,stdout:I,stderr:C,end:MO.EndStrategy.ErrorCode});if(be.code!==0)return be.code;await np.xfs.writeFilePromise(ue,de),await np.xfs.appendFilePromise(np.ppath.join(e,".npmignore"),`/.yarn +`),B=ZZ.Yarn2);let F=B===ZZ.Yarn2&&!N?.packageManagerField;await np.xfs.mktempPromise(async Q=>{let J=await U5e({binFolder:Q,ignoreCorepack:F,baseEnv:{...process.env,COREPACK_ENABLE_AUTO_PIN:"0"}}),ne=new Map([[ZZ.Yarn1,async()=>{let fe=a!==null?["workspace",a]:[],ue=np.ppath.join(e,Qoe.Filename.manifest),de=await np.xfs.readFilePromise(ue),be=await YO.pipevp(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:e,env:J,stdin:f,stdout:I,stderr:C,end:YO.EndStrategy.ErrorCode});if(be.code!==0)return be.code;await np.xfs.writeFilePromise(ue,de),await np.xfs.appendFilePromise(np.ppath.join(e,".npmignore"),`/.yarn `),I.write(` -`),delete J.NODE_ENV;let Se=await MO.pipevp("yarn",["install"],{cwd:e,env:J,stdin:f,stdout:I,stderr:C,end:MO.EndStrategy.ErrorCode});if(Se.code!==0)return Se.code;I.write(` -`);let De=await MO.pipevp("yarn",[...fe,"pack","--filename",np.npath.fromPortablePath(t)],{cwd:e,env:J,stdin:f,stdout:I,stderr:C});return De.code!==0?De.code:0}],[FZ.Yarn2,async()=>{let fe=a!==null?["workspace",a]:[];J.YARN_ENABLE_INLINE_BUILDS="1";let ue=np.ppath.join(e,Yoe.Filename.lockfile);await np.xfs.existsPromise(ue)||await np.xfs.writeFilePromise(ue,"");let de=await MO.pipevp("yarn",[...fe,"pack","--install-if-needed","--filename",np.npath.fromPortablePath(t)],{cwd:e,env:J,stdin:f,stdout:I,stderr:C});return de.code!==0?de.code:0}],[FZ.Npm,async()=>{if(a!==null){let tt=new Uve.PassThrough,ze=SIe.bufferStream(tt);tt.pipe(I,{end:!1});let Le=await MO.pipevp("npm",["--version"],{cwd:e,env:J,stdin:f,stdout:tt,stderr:C,end:MO.EndStrategy.Never});if(tt.end(),Le.code!==0)return I.end(),C.end(),Le.code;let Je=(await ze).toString().trim();if(!hPo.satisfiesWithPrereleases(Je,">=7.x")){let ft=oT.makeIdent(null,"npm"),lt=oT.makeDescriptor(ft,Je),Ot=oT.makeDescriptor(ft,">=7.x");throw new Error(`Workspaces aren't supported by ${oT.prettyDescriptor(r,lt)}; please upgrade to ${oT.prettyDescriptor(r,Ot)} (npm has been detected as the primary package manager for ${p8.pretty(r,e,p8.Type.PATH)})`)}}let fe=a!==null?["--workspace",a]:[];delete J.npm_config_user_agent,delete J.npm_config_production,delete J.NPM_CONFIG_PRODUCTION,delete J.NODE_ENV;let ue=await MO.pipevp("npm",["install","--legacy-peer-deps"],{cwd:e,env:J,stdin:f,stdout:I,stderr:C,end:MO.EndStrategy.ErrorCode});if(ue.code!==0)return ue.code;let de=new Uve.PassThrough,be=SIe.bufferStream(de);de.pipe(I);let Se=await MO.pipevp("npm",["pack","--silent",...fe],{cwd:e,env:J,stdin:f,stdout:de,stderr:C});if(Se.code!==0)return Se.code;let De=(await be).toString().trim().replace(/^.*\n/s,""),k=np.ppath.resolve(e,np.npath.toPortablePath(De));return await np.xfs.renamePromise(k,t),0}]]).get(B);if(typeof ne>"u")throw new Error("Assertion failed: Unsupported workflow");let ce=await ne();if(!(ce===0||typeof ce>"u"))throw np.xfs.detachTemp(l),new gLn.ReportError(ddr.MessageName.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${ce}, logs can be found here: ${p8.pretty(r,A,p8.Type.PATH)})`)})})})}async function yPo(e,t,{project:r}){let n=r.tryWorkspaceByLocator(e);if(n!==null)return fdr(n,t);let a=r.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${oT.prettyLocator(r.configuration,e)} not found in the project`);return await lLn.ZipOpenFS.openPromise(async o=>{let l=r.configuration,A=r.configuration.getLinkers(),f={project:r,report:new MAt.StreamReport({stdout:new Uve.PassThrough,configuration:l})},I=A.find(N=>N.supportsPackage(a,f));if(!I)throw new Error(`The package ${oT.prettyLocator(r.configuration,a)} isn't supported by any of the available linkers`);let C=await I.findPackageLocation(a,f),b=new Yoe.CwdFS(C,{baseFs:o});return(await pdr.Manifest.find(Yoe.PortablePath.dot,{baseFs:b})).scripts.has(t)})}async function dLn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await np.xfs.mktempPromise(async f=>{let{manifest:I,env:C,cwd:b}=await pLn(e,{project:a,binFolder:f,cwd:n,lifecycleScript:t}),E=I.scripts.get(t);if(typeof E>"u")return 1;let N=async()=>await(0,uLn.execute)(E,r,{cwd:b,env:C,stdin:o,stdout:l,stderr:A});return await(await a.configuration.reduceHook(F=>F.wrapScriptExecution,N,a,e,t,{script:E,args:r,cwd:b,env:C,stdin:o,stdout:l,stderr:A}))()})}async function bPo(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await np.xfs.mktempPromise(async f=>{let{env:I,cwd:C}=await pLn(e,{project:a,binFolder:f,cwd:n});return await(0,uLn.execute)(t,r,{cwd:C,env:I,stdin:o,stdout:l,stderr:A})})}async function EPo(e,{binFolder:t,cwd:r,lifecycleScript:n}){let a=await U5e({project:e.project,locator:e.anchoredLocator,binFolder:t,lifecycleScript:n});return await hdr(t,await hLn(e)),typeof r>"u"&&(r=np.ppath.dirname(await np.xfs.realpathPromise(np.ppath.join(e.cwd,"package.json")))),{manifest:e.manifest,binFolder:t,env:a,cwd:r}}async function pLn(e,{project:t,binFolder:r,cwd:n,lifecycleScript:a}){let o=t.tryWorkspaceByLocator(e);if(o!==null)return EPo(o,{binFolder:r,cwd:n,lifecycleScript:a});let l=t.storedPackages.get(e.locatorHash);if(!l)throw new Error(`Package for ${oT.prettyLocator(t.configuration,e)} not found in the project`);return await lLn.ZipOpenFS.openPromise(async A=>{let f=t.configuration,I=t.configuration.getLinkers(),C={project:t,report:new MAt.StreamReport({stdout:new Uve.PassThrough,configuration:f})},b=I.find(Q=>Q.supportsPackage(l,C));if(!b)throw new Error(`The package ${oT.prettyLocator(t.configuration,l)} isn't supported by any of the available linkers`);let E=await U5e({project:t,locator:e,binFolder:r,lifecycleScript:a});await hdr(r,await HAt(e,{project:t}));let N=await b.findPackageLocation(l,C),B=new Yoe.CwdFS(N,{baseFs:A}),F=await pdr.Manifest.find(Yoe.PortablePath.dot,{baseFs:B});return typeof n>"u"&&(n=N),{manifest:F,binFolder:r,env:E,cwd:n}})}async function fLn(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l}){return await dLn(e.anchoredLocator,t,r,{cwd:n,project:e.project,stdin:a,stdout:o,stderr:l})}function fdr(e,t){return e.manifest.scripts.has(t)}async function ILn(e,t,{cwd:r,report:n}){let{configuration:a}=e.project,o=null;await np.xfs.mktempPromise(async l=>{let A=np.ppath.join(l,`${t}.log`),f=`# This file contains the result of Yarn calling the "${t}" lifecycle script inside a workspace ("${np.npath.fromPortablePath(e.cwd)}") -`,{stdout:I,stderr:C}=a.getSubprocessStreams(A,{report:n,prefix:oT.prettyLocator(a,e.anchoredLocator),header:f});n.reportInfo(ddr.MessageName.LIFECYCLE_SCRIPT,`Calling the "${t}" lifecycle script`);let b=await fLn(e,t,[],{cwd:r,stdin:o,stdout:I,stderr:C});if(I.end(),C.end(),b!==0)throw np.xfs.detachTemp(l),new gLn.ReportError(ddr.MessageName.LIFECYCLE_SCRIPT,`${(0,fPo.capitalize)(t)} script failed (exit code ${p8.pretty(a,b,p8.Type.NUMBER)}, logs can be found here: ${p8.pretty(a,A,p8.Type.PATH)}); run ${p8.pretty(a,`yarn ${t}`,p8.Type.CODE)} to investigate`)})}async function SPo(e,t,r){fdr(e,t)&&await ILn(e,t,r)}function Idr(e){let t=np.ppath.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0;if(t===".exe"||t===".bin")return!1;let r=Buffer.alloc(4),n;try{n=np.xfs.openSync(e,"r")}catch{return!0}try{np.xfs.readSync(n,r,0,r.length,0)}finally{np.xfs.closeSync(n)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function HAt(e,{project:t}){let r=t.configuration,n=new Map,a=t.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${oT.prettyLocator(r,e)} not found in the project`);let o=new Uve.Writable,l=r.getLinkers(),A={project:t,report:new MAt.StreamReport({configuration:r,stdout:o})},f=new Set([e.locatorHash]);for(let C of a.dependencies.values()){let b=t.storedResolutions.get(C.descriptorHash);if(!b)throw new Error(`Assertion failed: The resolution (${oT.prettyDescriptor(r,C)}) should have been registered`);f.add(b)}let I=await Promise.all(Array.from(f,async C=>{let b=t.storedPackages.get(C);if(!b)throw new Error(`Assertion failed: The package (${C}) should have been registered`);if(b.bin.size===0)return SIe.mapAndFilter.skip;let E=l.find(B=>B.supportsPackage(b,A));if(!E)return SIe.mapAndFilter.skip;let N=null;try{N=await E.findPackageLocation(b,A)}catch(B){if(B.code==="LOCATOR_NOT_INSTALLED")return SIe.mapAndFilter.skip;throw B}return{dependency:b,packageLocation:N}}));for(let C of I){if(C===SIe.mapAndFilter.skip)continue;let{dependency:b,packageLocation:E}=C;for(let[N,B]of b.bin){let F=np.ppath.resolve(E,B);n.set(N,[b,np.npath.fromPortablePath(F),Idr(F)])}}return n}async function hLn(e){return await HAt(e.anchoredLocator,{project:e.project})}async function hdr(e,t){await Promise.all(Array.from(t,([r,[,n,a]])=>a?Hoe(e,r,process.execPath,[n]):Hoe(e,r,n,[])))}async function mLn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A,nodeArgs:f=[],packageAccessibleBinaries:I}){I??=await HAt(e,{project:a});let C=I.get(t);if(!C)throw new Error(`Binary not found (${t}) for ${oT.prettyLocator(a.configuration,e)}`);return await np.xfs.mktempPromise(async b=>{let[,E]=C,N=await U5e({project:a,locator:e,binFolder:b});await hdr(N.BERRY_BIN_FOLDER,I);let B=Idr(np.npath.toPortablePath(E))?MO.pipevp(process.execPath,[...f,E,...r],{cwd:n,env:N,stdin:o,stdout:l,stderr:A}):MO.pipevp(E,r,{cwd:n,env:N,stdin:o,stdout:l,stderr:A}),F;try{F=await B}finally{await np.xfs.removePromise(N.BERRY_BIN_FOLDER)}return F.code})}async function vPo(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A}){return await mLn(e.anchoredLocator,t,r,{project:e.project,cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A})}});var kLn=H(qC=>{"use strict";var EC=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),K5e=EC(e=>{"use strict";var t=e&&e.__importDefault||function(Fn){return Fn&&Fn.__esModule?Fn:{default:Fn}};Object.defineProperty(e,"__esModule",{value:!0}),e.Minipass=e.isWritable=e.isReadable=e.isStream=void 0;var r=typeof process=="object"&&process?process:{stdout:null,stderr:null},n=Et("node:events"),a=t(Et("node:stream")),o=Et("node:string_decoder"),l=Fn=>!!Fn&&typeof Fn=="object"&&(Fn instanceof zt||Fn instanceof a.default||(0,e.isReadable)(Fn)||(0,e.isWritable)(Fn));e.isStream=l;var A=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.pipe=="function"&&Fn.pipe!==a.default.Writable.prototype.pipe;e.isReadable=A;var f=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.write=="function"&&typeof Fn.end=="function";e.isWritable=f;var I=Symbol("EOF"),C=Symbol("maybeEmitEnd"),b=Symbol("emittedEnd"),E=Symbol("emittingEnd"),N=Symbol("emittedError"),B=Symbol("closed"),F=Symbol("read"),Q=Symbol("flush"),J=Symbol("flushChunk"),ae=Symbol("encoding"),ne=Symbol("decoder"),ce=Symbol("flowing"),fe=Symbol("paused"),ue=Symbol("resume"),de=Symbol("buffer"),be=Symbol("pipes"),Se=Symbol("bufferLength"),De=Symbol("bufferPush"),k=Symbol("bufferShift"),tt=Symbol("objectMode"),ze=Symbol("destroyed"),Le=Symbol("error"),Je=Symbol("emitData"),ft=Symbol("emitEnd"),lt=Symbol("emitEnd2"),Ot=Symbol("async"),Er=Symbol("abort"),Sr=Symbol("aborted"),jt=Symbol("signal"),Bt=Symbol("dataListeners"),Dt=Symbol("discarded"),Fr=Fn=>Promise.resolve().then(Fn),$t=Fn=>Fn(),Xt=Fn=>Fn==="end"||Fn==="finish"||Fn==="prefinish",lr=Fn=>Fn instanceof ArrayBuffer||!!Fn&&typeof Fn=="object"&&Fn.constructor&&Fn.constructor.name==="ArrayBuffer"&&Fn.byteLength>=0,cr=Fn=>!Buffer.isBuffer(Fn)&&ArrayBuffer.isView(Fn),Ar=class{src;dest;opts;ondrain;constructor(Fn,Nn,Hi){this.src=Fn,this.dest=Nn,this.opts=Hi,this.ondrain=()=>Fn[ue](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(Fn){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},qr=class extends Ar{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(Fn,Nn,Hi){super(Fn,Nn,Hi),this.proxyErrors=Ao=>this.dest.emit("error",Ao),Fn.on("error",this.proxyErrors)}},yn=Fn=>!!Fn.objectMode,ke=Fn=>!Fn.objectMode&&!!Fn.encoding&&Fn.encoding!=="buffer",zt=class extends n.EventEmitter{[ce]=!1;[fe]=!1;[be]=[];[de]=[];[tt];[ae];[Ot];[ne];[I]=!1;[b]=!1;[E]=!1;[B]=!1;[N]=null;[Se]=0;[ze]=!1;[jt];[Sr]=!1;[Bt]=0;[Dt]=!1;writable=!0;readable=!0;constructor(...Fn){let Nn=Fn[0]||{};if(super(),Nn.objectMode&&typeof Nn.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");yn(Nn)?(this[tt]=!0,this[ae]=null):ke(Nn)?(this[ae]=Nn.encoding,this[tt]=!1):(this[tt]=!1,this[ae]=null),this[Ot]=!!Nn.async,this[ne]=this[ae]?new o.StringDecoder(this[ae]):null,Nn&&Nn.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[de]}),Nn&&Nn.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[be]});let{signal:Hi}=Nn;Hi&&(this[jt]=Hi,Hi.aborted?this[Er]():Hi.addEventListener("abort",()=>this[Er]()))}get bufferLength(){return this[Se]}get encoding(){return this[ae]}set encoding(Fn){throw new Error("Encoding must be set at instantiation time")}setEncoding(Fn){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[tt]}set objectMode(Fn){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Ot]}set async(Fn){this[Ot]=this[Ot]||!!Fn}[Er](){this[Sr]=!0,this.emit("abort",this[jt]?.reason),this.destroy(this[jt]?.reason)}get aborted(){return this[Sr]}set aborted(Fn){}write(Fn,Nn,Hi){if(this[Sr])return!1;if(this[I])throw new Error("write after end");if(this[ze])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Nn||(Nn="utf8");let Ao=this[Ot]?Fr:$t;if(!this[tt]&&!Buffer.isBuffer(Fn)){if(cr(Fn))Fn=Buffer.from(Fn.buffer,Fn.byteOffset,Fn.byteLength);else if(lr(Fn))Fn=Buffer.from(Fn);else if(typeof Fn!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[tt]?(this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&Ao(Hi),this[ce]):Fn.length?(typeof Fn=="string"&&!(Nn===this[ae]&&!this[ne]?.lastNeed)&&(Fn=Buffer.from(Fn,Nn)),Buffer.isBuffer(Fn)&&this[ae]&&(Fn=this[ne].write(Fn)),this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&Ao(Hi),this[ce]):(this[Se]!==0&&this.emit("readable"),Hi&&Ao(Hi),this[ce])}read(Fn){if(this[ze])return null;if(this[Dt]=!1,this[Se]===0||Fn===0||Fn&&Fn>this[Se])return this[C](),null;this[tt]&&(Fn=null),this[de].length>1&&!this[tt]&&(this[de]=[this[ae]?this[de].join(""):Buffer.concat(this[de],this[Se])]);let Nn=this[F](Fn||null,this[de][0]);return this[C](),Nn}[F](Fn,Nn){if(this[tt])this[k]();else{let Hi=Nn;Fn===Hi.length||Fn===null?this[k]():typeof Hi=="string"?(this[de][0]=Hi.slice(Fn),Nn=Hi.slice(0,Fn),this[Se]-=Fn):(this[de][0]=Hi.subarray(Fn),Nn=Hi.subarray(0,Fn),this[Se]-=Fn)}return this.emit("data",Nn),!this[de].length&&!this[I]&&this.emit("drain"),Nn}end(Fn,Nn,Hi){return typeof Fn=="function"&&(Hi=Fn,Fn=void 0),typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Fn!==void 0&&this.write(Fn,Nn),Hi&&this.once("end",Hi),this[I]=!0,this.writable=!1,(this[ce]||!this[fe])&&this[C](),this}[ue](){this[ze]||(!this[Bt]&&!this[be].length&&(this[Dt]=!0),this[fe]=!1,this[ce]=!0,this.emit("resume"),this[de].length?this[Q]():this[I]?this[C]():this.emit("drain"))}resume(){return this[ue]()}pause(){this[ce]=!1,this[fe]=!0,this[Dt]=!1}get destroyed(){return this[ze]}get flowing(){return this[ce]}get paused(){return this[fe]}[De](Fn){this[tt]?this[Se]+=1:this[Se]+=Fn.length,this[de].push(Fn)}[k](){return this[tt]?this[Se]-=1:this[Se]-=this[de][0].length,this[de].shift()}[Q](Fn=!1){do;while(this[J](this[k]())&&this[de].length);!Fn&&!this[de].length&&!this[I]&&this.emit("drain")}[J](Fn){return this.emit("data",Fn),this[ce]}pipe(Fn,Nn){if(this[ze])return Fn;this[Dt]=!1;let Hi=this[b];return Nn=Nn||{},Fn===r.stdout||Fn===r.stderr?Nn.end=!1:Nn.end=Nn.end!==!1,Nn.proxyErrors=!!Nn.proxyErrors,Hi?Nn.end&&Fn.end():(this[be].push(Nn.proxyErrors?new qr(this,Fn,Nn):new Ar(this,Fn,Nn)),this[Ot]?Fr(()=>this[ue]()):this[ue]()),Fn}unpipe(Fn){let Nn=this[be].find(Hi=>Hi.dest===Fn);Nn&&(this[be].length===1?(this[ce]&&this[Bt]===0&&(this[ce]=!1),this[be]=[]):this[be].splice(this[be].indexOf(Nn),1),Nn.unpipe())}addListener(Fn,Nn){return this.on(Fn,Nn)}on(Fn,Nn){let Hi=super.on(Fn,Nn);if(Fn==="data")this[Dt]=!1,this[Bt]++,!this[be].length&&!this[ce]&&this[ue]();else if(Fn==="readable"&&this[Se]!==0)super.emit("readable");else if(Xt(Fn)&&this[b])super.emit(Fn),this.removeAllListeners(Fn);else if(Fn==="error"&&this[N]){let Ao=Nn;this[Ot]?Fr(()=>Ao.call(this,this[N])):Ao.call(this,this[N])}return Hi}removeListener(Fn,Nn){return this.off(Fn,Nn)}off(Fn,Nn){let Hi=super.off(Fn,Nn);return Fn==="data"&&(this[Bt]=this.listeners("data").length,this[Bt]===0&&!this[Dt]&&!this[be].length&&(this[ce]=!1)),Hi}removeAllListeners(Fn){let Nn=super.removeAllListeners(Fn);return(Fn==="data"||Fn===void 0)&&(this[Bt]=0,!this[Dt]&&!this[be].length&&(this[ce]=!1)),Nn}get emittedEnd(){return this[b]}[C](){!this[E]&&!this[b]&&!this[ze]&&this[de].length===0&&this[I]&&(this[E]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[B]&&this.emit("close"),this[E]=!1)}emit(Fn,...Nn){let Hi=Nn[0];if(Fn!=="error"&&Fn!=="close"&&Fn!==ze&&this[ze])return!1;if(Fn==="data")return!this[tt]&&!Hi?!1:this[Ot]?(Fr(()=>this[Je](Hi)),!0):this[Je](Hi);if(Fn==="end")return this[ft]();if(Fn==="close"){if(this[B]=!0,!this[b]&&!this[ze])return!1;let Vr=super.emit("close");return this.removeAllListeners("close"),Vr}else if(Fn==="error"){this[N]=Hi,super.emit(Le,Hi);let Vr=!this[jt]||this.listeners("error").length?super.emit("error",Hi):!1;return this[C](),Vr}else if(Fn==="resume"){let Vr=super.emit("resume");return this[C](),Vr}else if(Fn==="finish"||Fn==="prefinish"){let Vr=super.emit(Fn);return this.removeAllListeners(Fn),Vr}let Ao=super.emit(Fn,...Nn);return this[C](),Ao}[Je](Fn){for(let Hi of this[be])Hi.dest.write(Fn)===!1&&this.pause();let Nn=this[Dt]?!1:super.emit("data",Fn);return this[C](),Nn}[ft](){return this[b]?!1:(this[b]=!0,this.readable=!1,this[Ot]?(Fr(()=>this[lt]()),!0):this[lt]())}[lt](){if(this[ne]){let Nn=this[ne].end();if(Nn){for(let Hi of this[be])Hi.dest.write(Nn);this[Dt]||super.emit("data",Nn)}}for(let Nn of this[be])Nn.end();let Fn=super.emit("end");return this.removeAllListeners("end"),Fn}async collect(){let Fn=Object.assign([],{dataLength:0});this[tt]||(Fn.dataLength=0);let Nn=this.promise();return this.on("data",Hi=>{Fn.push(Hi),this[tt]||(Fn.dataLength+=Hi.length)}),await Nn,Fn}async concat(){if(this[tt])throw new Error("cannot concat in objectMode");let Fn=await this.collect();return this[ae]?Fn.join(""):Buffer.concat(Fn,Fn.dataLength)}async promise(){return new Promise((Fn,Nn)=>{this.on(ze,()=>Nn(new Error("stream destroyed"))),this.on("error",Hi=>Nn(Hi)),this.on("end",()=>Fn())})}[Symbol.asyncIterator](){this[Dt]=!1;let Fn=!1,Nn=async()=>(this.pause(),Fn=!0,{value:void 0,done:!0});return{next:()=>{if(Fn)return Nn();let Hi=this.read();if(Hi!==null)return Promise.resolve({done:!1,value:Hi});if(this[I])return Nn();let Ao,Vr,xi=Gc=>{this.off("data",no),this.off("end",ga),this.off(ze,Ya),Nn(),Vr(Gc)},no=Gc=>{this.off("error",xi),this.off("end",ga),this.off(ze,Ya),this.pause(),Ao({value:Gc,done:!!this[I]})},ga=()=>{this.off("error",xi),this.off("data",no),this.off(ze,Ya),Nn(),Ao({done:!0,value:void 0})},Ya=()=>xi(new Error("stream destroyed"));return new Promise((Gc,ol)=>{Vr=ol,Ao=Gc,this.once(ze,Ya),this.once("error",xi),this.once("end",ga),this.once("data",no)})},throw:Nn,return:Nn,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[Dt]=!1;let Fn=!1,Nn=()=>(this.pause(),this.off(Le,Nn),this.off(ze,Nn),this.off("end",Nn),Fn=!0,{done:!0,value:void 0}),Hi=()=>{if(Fn)return Nn();let Ao=this.read();return Ao===null?Nn():{done:!1,value:Ao}};return this.once("end",Nn),this.once(Le,Nn),this.once(ze,Nn),{next:Hi,throw:Nn,return:Nn,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(Fn){if(this[ze])return Fn?this.emit("error",Fn):this.emit(ze),this;this[ze]=!0,this[Dt]=!0,this[de].length=0,this[Se]=0;let Nn=this;return typeof Nn.close=="function"&&!this[B]&&Nn.close(),Fn?this.emit("error",Fn):this.emit(ze),this}static get isStream(){return e.isStream}};e.Minipass=zt}),j5e=EC(e=>{"use strict";var t=e&&e.__importDefault||function(Bt){return Bt&&Bt.__esModule?Bt:{default:Bt}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteStreamSync=e.WriteStream=e.ReadStreamSync=e.ReadStream=void 0;var r=t(Et("events")),n=t(Et("fs")),a=K5e(),o=n.default.writev,l=Symbol("_autoClose"),A=Symbol("_close"),f=Symbol("_ended"),I=Symbol("_fd"),C=Symbol("_finished"),b=Symbol("_flags"),E=Symbol("_flush"),N=Symbol("_handleChunk"),B=Symbol("_makeBuf"),F=Symbol("_mode"),Q=Symbol("_needDrain"),J=Symbol("_onerror"),ae=Symbol("_onopen"),ne=Symbol("_onread"),ce=Symbol("_onwrite"),fe=Symbol("_open"),ue=Symbol("_path"),de=Symbol("_pos"),be=Symbol("_queue"),Se=Symbol("_read"),De=Symbol("_readSize"),k=Symbol("_reading"),tt=Symbol("_remain"),ze=Symbol("_size"),Le=Symbol("_write"),Je=Symbol("_writing"),ft=Symbol("_defaultFlag"),lt=Symbol("_errored"),Ot=class extends a.Minipass{[lt]=!1;[I];[ue];[De];[k]=!1;[ze];[tt];[l];constructor(Bt,Dt){if(Dt=Dt||{},super(Dt),this.readable=!0,this.writable=!1,typeof Bt!="string")throw new TypeError("path must be a string");this[lt]=!1,this[I]=typeof Dt.fd=="number"?Dt.fd:void 0,this[ue]=Bt,this[De]=Dt.readSize||16*1024*1024,this[k]=!1,this[ze]=typeof Dt.size=="number"?Dt.size:1/0,this[tt]=this[ze],this[l]=typeof Dt.autoClose=="boolean"?Dt.autoClose:!0,typeof this[I]=="number"?this[Se]():this[fe]()}get fd(){return this[I]}get path(){return this[ue]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[fe](){n.default.open(this[ue],"r",(Bt,Dt)=>this[ae](Bt,Dt))}[ae](Bt,Dt){Bt?this[J](Bt):(this[I]=Dt,this.emit("open",Dt),this[Se]())}[B](){return Buffer.allocUnsafe(Math.min(this[De],this[tt]))}[Se](){if(!this[k]){this[k]=!0;let Bt=this[B]();if(Bt.length===0)return process.nextTick(()=>this[ne](null,0,Bt));n.default.read(this[I],Bt,0,Bt.length,null,(Dt,Fr,$t)=>this[ne](Dt,Fr,$t))}}[ne](Bt,Dt,Fr){this[k]=!1,Bt?this[J](Bt):this[N](Dt,Fr)&&this[Se]()}[A](){if(this[l]&&typeof this[I]=="number"){let Bt=this[I];this[I]=void 0,n.default.close(Bt,Dt=>Dt?this.emit("error",Dt):this.emit("close"))}}[J](Bt){this[k]=!0,this[A](),this.emit("error",Bt)}[N](Bt,Dt){let Fr=!1;return this[tt]-=Bt,Bt>0&&(Fr=super.write(Btthis[ae](Bt,Dt))}[ae](Bt,Dt){this[ft]&&this[b]==="r+"&&Bt&&Bt.code==="ENOENT"?(this[b]="w",this[fe]()):Bt?this[J](Bt):(this[I]=Dt,this.emit("open",Dt),this[Je]||this[E]())}end(Bt,Dt){return Bt&&this.write(Bt,Dt),this[f]=!0,!this[Je]&&!this[be].length&&typeof this[I]=="number"&&this[ce](null,0),this}write(Bt,Dt){return typeof Bt=="string"&&(Bt=Buffer.from(Bt,Dt)),this[f]?(this.emit("error",new Error("write() after end()")),!1):this[I]===void 0||this[Je]||this[be].length?(this[be].push(Bt),this[Q]=!0,!1):(this[Je]=!0,this[Le](Bt),!0)}[Le](Bt){n.default.write(this[I],Bt,0,Bt.length,this[de],(Dt,Fr)=>this[ce](Dt,Fr))}[ce](Bt,Dt){Bt?this[J](Bt):(this[de]!==void 0&&typeof Dt=="number"&&(this[de]+=Dt),this[be].length?this[E]():(this[Je]=!1,this[f]&&!this[C]?(this[C]=!0,this[A](),this.emit("finish")):this[Q]&&(this[Q]=!1,this.emit("drain"))))}[E](){if(this[be].length===0)this[f]&&this[ce](null,0);else if(this[be].length===1)this[Le](this[be].pop());else{let Bt=this[be];this[be]=[],o(this[I],Bt,this[de],(Dt,Fr)=>this[ce](Dt,Fr))}}[A](){if(this[l]&&typeof this[I]=="number"){let Bt=this[I];this[I]=void 0,n.default.close(Bt,Dt=>Dt?this.emit("error",Dt):this.emit("close"))}}};e.WriteStream=Sr;var jt=class extends Sr{[fe](){let Bt;if(this[ft]&&this[b]==="r+")try{Bt=n.default.openSync(this[ue],this[b],this[F])}catch(Dt){if(Dt?.code==="ENOENT")return this[b]="w",this[fe]();throw Dt}else Bt=n.default.openSync(this[ue],this[b],this[F]);this[ae](null,Bt)}[A](){if(this[l]&&typeof this[I]=="number"){let Bt=this[I];this[I]=void 0,n.default.closeSync(Bt),this.emit("close")}}[Le](Bt){let Dt=!0;try{this[ce](null,n.default.writeSync(this[I],Bt,0,Bt.length,this[de])),Dt=!1}finally{if(Dt)try{this[A]()}catch{}}}};e.WriteStreamSync=jt}),Cdr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.dealias=e.isNoFile=e.isFile=e.isAsync=e.isSync=e.isAsyncNoFile=e.isSyncNoFile=e.isAsyncFile=e.isSyncFile=void 0;var t=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),r=E=>!!E.sync&&!!E.file;e.isSyncFile=r;var n=E=>!E.sync&&!!E.file;e.isAsyncFile=n;var a=E=>!!E.sync&&!E.file;e.isSyncNoFile=a;var o=E=>!E.sync&&!E.file;e.isAsyncNoFile=o;var l=E=>!!E.sync;e.isSync=l;var A=E=>!E.sync;e.isAsync=A;var f=E=>!!E.file;e.isFile=f;var I=E=>!E.file;e.isNoFile=I;var C=E=>t.get(E)||E,b=(E={})=>{if(!E)return{};let N={};for(let[B,F]of Object.entries(E)){let Q=C(B);N[Q]=F}return N.chmod===void 0&&N.noChmod===!1&&(N.chmod=!0),delete N.noChmod,N};e.dealias=b}),z5e=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.makeCommand=void 0;var t=Cdr(),r=(n,a,o,l,A)=>Object.assign((f=[],I,C)=>{Array.isArray(f)&&(I=f,f={}),typeof I=="function"&&(C=I,I=void 0),I=I?Array.from(I):[];let b=(0,t.dealias)(f);if(A?.(b,I),(0,t.isSyncFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return n(b,I)}else if((0,t.isAsyncFile)(b)){let E=a(b,I);return C?E.then(()=>C(),C):E}else if((0,t.isSyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return o(b,I)}else if((0,t.isAsyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback only supported with file option");return l(b,I)}throw new Error("impossible options??")},{syncFile:n,asyncFile:a,syncNoFile:o,asyncNoFile:l,validate:A});e.makeCommand=r}),CLn=EC(e=>{"use strict";var t=e&&e.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(e,"__esModule",{value:!0}),e.constants=void 0;var r=t(Et("zlib")),n=r.default.constants||{ZLIB_VERNUM:4736};e.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},n))}),_Ln=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(lt,Ot,Er,Sr){Sr===void 0&&(Sr=Er);var jt=Object.getOwnPropertyDescriptor(Ot,Er);(!jt||("get"in jt?!Ot.__esModule:jt.writable||jt.configurable))&&(jt={enumerable:!0,get:function(){return Ot[Er]}}),Object.defineProperty(lt,Sr,jt)}:function(lt,Ot,Er,Sr){Sr===void 0&&(Sr=Er),lt[Sr]=Ot[Er]}),r=e&&e.__setModuleDefault||(Object.create?function(lt,Ot){Object.defineProperty(lt,"default",{enumerable:!0,value:Ot})}:function(lt,Ot){lt.default=Ot}),n=e&&e.__importStar||function(){var lt=function(Ot){return lt=Object.getOwnPropertyNames||function(Er){var Sr=[];for(var jt in Er)Object.prototype.hasOwnProperty.call(Er,jt)&&(Sr[Sr.length]=jt);return Sr},lt(Ot)};return function(Ot){if(Ot&&Ot.__esModule)return Ot;var Er={};if(Ot!=null)for(var Sr=lt(Ot),jt=0;jtlt,B=E?.writable===!0||E?.set!==void 0?lt=>{l.Buffer.concat=lt?N:b}:lt=>{},F=Symbol("_superWrite"),Q=class extends Error{code;errno;constructor(lt,Ot){super("zlib: "+lt.message,{cause:lt}),this.code=lt.code,this.errno=lt.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+lt.message,Error.captureStackTrace(this,Ot??this.constructor)}get name(){return"ZlibError"}};e.ZlibError=Q;var J=Symbol("flushFlag"),ae=class extends A.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(lt,Ot){if(!lt||typeof lt!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(lt),this.#n=lt.flush??0,this.#r=lt.finishFlush??0,this.#i=lt.fullFlushFlag??0,typeof f[Ot]!="function")throw new TypeError("Compression method not supported: "+Ot);try{this.#s=new f[Ot](lt)}catch(Er){throw new Q(Er,this.constructor)}this.#o=Er=>{this.#e||(this.#e=!0,this.close(),this.emit("error",Er))},this.#s?.on("error",Er=>this.#o(new Q(Er))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,o.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(lt){this.ended||(typeof lt!="number"&&(lt=this.#i),this.write(Object.assign(l.Buffer.alloc(0),{[J]:lt})))}end(lt,Ot,Er){return typeof lt=="function"&&(Er=lt,Ot=void 0,lt=void 0),typeof Ot=="function"&&(Er=Ot,Ot=void 0),lt&&(Ot?this.write(lt,Ot):this.write(lt)),this.flush(this.#r),this.#t=!0,super.end(Er)}get ended(){return this.#t}[F](lt){return super.write(lt)}write(lt,Ot,Er){if(typeof Ot=="function"&&(Er=Ot,Ot="utf8"),typeof lt=="string"&&(lt=l.Buffer.from(lt,Ot)),this.#e)return;(0,o.default)(this.#s,"zlib binding closed");let Sr=this.#s._handle,jt=Sr.close;Sr.close=()=>{};let Bt=this.#s.close;this.#s.close=()=>{},B(!0);let Dt;try{let $t=typeof lt[J]=="number"?lt[J]:this.#n;Dt=this.#s._processChunk(lt,$t),B(!1)}catch($t){B(!1),this.#o(new Q($t,this.write))}finally{this.#s&&(this.#s._handle=Sr,Sr.close=jt,this.#s.close=Bt,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",$t=>this.#o(new Q($t,this.write)));let Fr;if(Dt)if(Array.isArray(Dt)&&Dt.length>0){let $t=Dt[0];Fr=this[F](l.Buffer.from($t));for(let Xt=1;Xt{typeof Sr=="function"&&(jt=Sr,Sr=this.flushFlag),this.flush(Sr),jt?.()};try{this.handle.params(lt,Ot)}finally{this.handle.flush=Er}this.handle&&(this.#e=lt,this.#t=Ot)}}}};e.Zlib=ne;var ce=class extends ne{constructor(lt){super(lt,"Deflate")}};e.Deflate=ce;var fe=class extends ne{constructor(lt){super(lt,"Inflate")}};e.Inflate=fe;var ue=class extends ne{#e;constructor(lt){super(lt,"Gzip"),this.#e=lt&&!!lt.portable}[F](lt){return this.#e?(this.#e=!1,lt[9]=255,super[F](lt)):super[F](lt)}};e.Gzip=ue;var de=class extends ne{constructor(lt){super(lt,"Gunzip")}};e.Gunzip=de;var be=class extends ne{constructor(lt){super(lt,"DeflateRaw")}};e.DeflateRaw=be;var Se=class extends ne{constructor(lt){super(lt,"InflateRaw")}};e.InflateRaw=Se;var De=class extends ne{constructor(lt){super(lt,"Unzip")}};e.Unzip=De;var k=class extends ae{constructor(lt,Ot){lt=lt||{},lt.flush=lt.flush||I.constants.BROTLI_OPERATION_PROCESS,lt.finishFlush=lt.finishFlush||I.constants.BROTLI_OPERATION_FINISH,lt.fullFlushFlag=I.constants.BROTLI_OPERATION_FLUSH,super(lt,Ot)}},tt=class extends k{constructor(lt){super(lt,"BrotliCompress")}};e.BrotliCompress=tt;var ze=class extends k{constructor(lt){super(lt,"BrotliDecompress")}};e.BrotliDecompress=ze;var Le=class extends ae{constructor(lt,Ot){lt=lt||{},lt.flush=lt.flush||I.constants.ZSTD_e_continue,lt.finishFlush=lt.finishFlush||I.constants.ZSTD_e_end,lt.fullFlushFlag=I.constants.ZSTD_e_flush,super(lt,Ot)}},Je=class extends Le{constructor(lt){super(lt,"ZstdCompress")}};e.ZstdCompress=Je;var ft=class extends Le{constructor(lt){super(lt,"ZstdDecompress")}};e.ZstdDecompress=ft}),BPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.parse=e.encode=void 0;var t=(I,C)=>{if(Number.isSafeInteger(I))I<0?n(I,C):r(I,C);else throw Error("cannot encode number outside of javascript safe integer range");return C};e.encode=t;var r=(I,C)=>{C[0]=128;for(var b=C.length;b>1;b--)C[b-1]=I&255,I=Math.floor(I/256)},n=(I,C)=>{C[0]=255;var b=!1;I=I*-1;for(var E=C.length;E>1;E--){var N=I&255;I=Math.floor(I/256),b?C[E-1]=A(N):N===0?C[E-1]=0:(b=!0,C[E-1]=f(N))}},a=I=>{let C=I[0],b=C===128?l(I.subarray(1,I.length)):C===255?o(I):null;if(b===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(b))throw Error("parsed number outside of javascript safe integer range");return b};e.parse=a;var o=I=>{for(var C=I.length,b=0,E=!1,N=C-1;N>-1;N--){var B=Number(I[N]),F;E?F=A(B):B===0?F=B:(E=!0,F=f(B)),F!==0&&(b-=F*Math.pow(256,C-N-1))}return b},l=I=>{for(var C=I.length,b=0,E=C-1;E>-1;E--){var N=Number(I[E]);N!==0&&(b+=N*Math.pow(256,C-E-1))}return b},A=I=>(255^I)&255,f=I=>(255^I)+1&255}),yLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.code=e.name=e.isName=e.isCode=void 0;var t=n=>e.name.has(n);e.isCode=t;var r=n=>e.code.has(n);e.isName=r,e.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),e.code=new Map(Array.from(e.name).map(n=>[n[1],n[0]]))}),q5e=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(de,be,Se,De){De===void 0&&(De=Se);var k=Object.getOwnPropertyDescriptor(be,Se);(!k||("get"in k?!be.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return be[Se]}}),Object.defineProperty(de,De,k)}:function(de,be,Se,De){De===void 0&&(De=Se),de[De]=be[Se]}),r=e&&e.__setModuleDefault||(Object.create?function(de,be){Object.defineProperty(de,"default",{enumerable:!0,value:be})}:function(de,be){de.default=be}),n=e&&e.__importStar||function(){var de=function(be){return de=Object.getOwnPropertyNames||function(Se){var De=[];for(var k in Se)Object.prototype.hasOwnProperty.call(Se,k)&&(De[De.length]=k);return De},de(be)};return function(be){if(be&&be.__esModule)return be;var Se={};if(be!=null)for(var De=de(be),k=0;k=be+512))throw new Error("need 512 bytes for header");this.path=Se?.path??I(de,be,100),this.mode=Se?.mode??De?.mode??E(de,be+100,8),this.uid=Se?.uid??De?.uid??E(de,be+108,8),this.gid=Se?.gid??De?.gid??E(de,be+116,8),this.size=Se?.size??De?.size??E(de,be+124,12),this.mtime=Se?.mtime??De?.mtime??C(de,be+136,12),this.cksum=E(de,be+148,12),De&&this.#t(De,!0),Se&&this.#t(Se);let k=I(de,be+156,1);if(l.isCode(k)&&(this.#e=k||"0"),this.#e==="0"&&this.path.slice(-1)==="/"&&(this.#e="5"),this.#e==="5"&&(this.size=0),this.linkpath=I(de,be+157,100),de.subarray(be+257,be+265).toString()==="ustar\x0000")if(this.uname=Se?.uname??De?.uname??I(de,be+265,32),this.gname=Se?.gname??De?.gname??I(de,be+297,32),this.devmaj=Se?.devmaj??De?.devmaj??E(de,be+329,8)??0,this.devmin=Se?.devmin??De?.devmin??E(de,be+337,8)??0,de[be+475]!==0){let ze=I(de,be+345,155);this.path=ze+"/"+this.path}else{let ze=I(de,be+345,130);ze&&(this.path=ze+"/"+this.path),this.atime=Se?.atime??De?.atime??C(de,be+476,12),this.ctime=Se?.ctime??De?.ctime??C(de,be+488,12)}let tt=256;for(let ze=be;ze!(De==null||Se==="path"&&be||Se==="linkpath"&&be||Se==="global"))))}encode(de,be=0){if(de||(de=this.block=Buffer.alloc(512)),this.#e==="Unsupported"&&(this.#e="0"),!(de.length>=be+512))throw new Error("need 512 bytes for header");let Se=this.ctime||this.atime?130:155,De=f(this.path||"",Se),k=De[0],tt=De[1];this.needPax=!!De[2],this.needPax=ue(de,be,100,k)||this.needPax,this.needPax=Q(de,be+100,8,this.mode)||this.needPax,this.needPax=Q(de,be+108,8,this.uid)||this.needPax,this.needPax=Q(de,be+116,8,this.gid)||this.needPax,this.needPax=Q(de,be+124,12,this.size)||this.needPax,this.needPax=ce(de,be+136,12,this.mtime)||this.needPax,de[be+156]=Number(this.#e.codePointAt(0)),this.needPax=ue(de,be+157,100,this.linkpath)||this.needPax,de.write("ustar\x0000",be+257,8),this.needPax=ue(de,be+265,32,this.uname)||this.needPax,this.needPax=ue(de,be+297,32,this.gname)||this.needPax,this.needPax=Q(de,be+329,8,this.devmaj)||this.needPax,this.needPax=Q(de,be+337,8,this.devmin)||this.needPax,this.needPax=ue(de,be+345,Se,tt)||this.needPax,de[be+475]!==0?this.needPax=ue(de,be+345,155,tt)||this.needPax:(this.needPax=ue(de,be+345,130,tt)||this.needPax,this.needPax=ce(de,be+476,12,this.atime)||this.needPax,this.needPax=ce(de,be+488,12,this.ctime)||this.needPax);let ze=256;for(let Le=be;Le{let Se=de,De="",k,tt=a.posix.parse(de).root||".";if(Buffer.byteLength(Se)<100)k=[Se,De,!1];else{De=a.posix.dirname(Se),Se=a.posix.basename(Se);do Buffer.byteLength(Se)<=100&&Buffer.byteLength(De)<=be?k=[Se,De,!1]:Buffer.byteLength(Se)>100&&Buffer.byteLength(De)<=be?k=[Se.slice(0,99),De,!0]:(Se=a.posix.join(a.posix.basename(De),Se),De=a.posix.dirname(De));while(De!==tt&&k===void 0);k||(k=[de.slice(0,99),"",!0])}return k},I=(de,be,Se)=>de.subarray(be,be+Se).toString("utf8").replace(/\0.*/,""),C=(de,be,Se)=>b(E(de,be,Se)),b=de=>de===void 0?void 0:new Date(de*1e3),E=(de,be,Se)=>Number(de[be])&128?o.parse(de.subarray(be,be+Se)):B(de,be,Se),N=de=>isNaN(de)?void 0:de,B=(de,be,Se)=>N(parseInt(de.subarray(be,be+Se).toString("utf8").replace(/\0.*$/,"").trim(),8)),F={12:8589934591,8:2097151},Q=(de,be,Se,De)=>De===void 0?!1:De>F[Se]||De<0?(o.encode(De,de.subarray(be,be+Se)),!0):(J(de,be,Se,De),!1),J=(de,be,Se,De)=>de.write(ae(De,Se),be,Se,"ascii"),ae=(de,be)=>ne(Math.floor(de).toString(8),be),ne=(de,be)=>(de.length===be-1?de:new Array(be-de.length-1).join("0")+de+" ")+"\0",ce=(de,be,Se,De)=>De===void 0?!1:Q(de,be,Se,De.getTime()/1e3),fe=new Array(156).join("\0"),ue=(de,be,Se,De)=>De===void 0?!1:(de.write(De+fe,be,Se,"utf8"),De.length!==Buffer.byteLength(De)||De.length>Se)}),_dr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Pax=void 0;var t=Et("node:path"),r=q5e(),n=class bLn{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(f,I=!1){this.atime=f.atime,this.charset=f.charset,this.comment=f.comment,this.ctime=f.ctime,this.dev=f.dev,this.gid=f.gid,this.global=I,this.gname=f.gname,this.ino=f.ino,this.linkpath=f.linkpath,this.mtime=f.mtime,this.nlink=f.nlink,this.path=f.path,this.size=f.size,this.uid=f.uid,this.uname=f.uname}encode(){let f=this.encodeBody();if(f==="")return Buffer.allocUnsafe(0);let I=Buffer.byteLength(f),C=512*Math.ceil(1+I/512),b=Buffer.allocUnsafe(C);for(let E=0;E<512;E++)b[E]=0;new r.Header({path:("PaxHeader/"+(0,t.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:I,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(b),b.write(f,512,I,"utf8");for(let E=I+512;E=Math.pow(10,N)&&(N+=1),N+E+b}static parse(f,I,C=!1){return new bLn(a(o(f),I),C)}};e.Pax=n;var a=(A,f)=>f?Object.assign({},f,A):A,o=A=>A.replace(/\n$/,"").split(` -`).reduce(l,Object.create(null)),l=(A,f)=>{let I=parseInt(f,10);if(I!==Buffer.byteLength(f)+1)return A;f=f.slice((I+" ").length);let C=f.split("="),b=C.shift();if(!b)return A;let E=b.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),N=C.join("=");return A[E]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(E)?new Date(Number(N)*1e3):/^[0-9]+$/.test(N)?+N:N,A}}),$5e=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeWindowsPath=void 0;var t=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;e.normalizeWindowsPath=t!=="win32"?r=>r:r=>r&&r.replaceAll(/\\/g,"/")}),ydr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ReadEntry=void 0;var t=K5e(),r=$5e(),n=class extends t.Minipass{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(a,o,l){switch(super({}),this.pause(),this.extended=o,this.globalExtended=l,this.header=a,this.remain=a.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=a.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!a.path)throw new Error("no path provided for tar.ReadEntry");this.path=(0,r.normalizeWindowsPath)(a.path),this.mode=a.mode,this.mode&&(this.mode=this.mode&4095),this.uid=a.uid,this.gid=a.gid,this.uname=a.uname,this.gname=a.gname,this.size=this.remain,this.mtime=a.mtime,this.atime=a.atime,this.ctime=a.ctime,this.linkpath=a.linkpath?(0,r.normalizeWindowsPath)(a.linkpath):void 0,this.uname=a.uname,this.gname=a.gname,o&&this.#e(o),l&&this.#e(l,!0)}write(a){let o=a.length;if(o>this.blockRemain)throw new Error("writing more to entry than is appropriate");let l=this.remain,A=this.blockRemain;return this.remain=Math.max(0,l-o),this.blockRemain=Math.max(0,A-o),this.ignore?!0:l>=o?super.write(a):super.write(a.subarray(0,l))}#e(a,o=!1){a.path&&(a.path=(0,r.normalizeWindowsPath)(a.path)),a.linkpath&&(a.linkpath=(0,r.normalizeWindowsPath)(a.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(a).filter(([l,A])=>!(A==null||l==="path"&&o))))}};e.ReadEntry=n}),bdr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.warnMethod=void 0;var t=(r,n,a,o={})=>{r.file&&(o.file=r.file),r.cwd&&(o.cwd=r.cwd),o.code=a instanceof Error&&a.code||n,o.tarCode=n,!r.strict&&o.recoverable!==!1?(a instanceof Error&&(o=Object.assign(a,o),a=a.message),r.emit("warn",n,a,o)):a instanceof Error?r.emit("error",Object.assign(a,o)):r.emit("error",Object.assign(new Error(`${n}: ${a}`),o))};e.warnMethod=t}),Edr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Parser=void 0;var t=Et("events"),r=_Ln(),n=q5e(),a=_dr(),o=ydr(),l=bdr(),A=1024*1024,f=Buffer.from([31,139]),I=Buffer.from([40,181,47,253]),C=Math.max(f.length,I.length),b=Symbol("state"),E=Symbol("writeEntry"),N=Symbol("readEntry"),B=Symbol("nextEntry"),F=Symbol("processEntry"),Q=Symbol("extendedHeader"),J=Symbol("globalExtendedHeader"),ae=Symbol("meta"),ne=Symbol("emitMeta"),ce=Symbol("buffer"),fe=Symbol("queue"),ue=Symbol("ended"),de=Symbol("emittedEnd"),be=Symbol("emit"),Se=Symbol("unzip"),De=Symbol("consumeChunk"),k=Symbol("consumeChunkSub"),tt=Symbol("consumeBody"),ze=Symbol("consumeMeta"),Le=Symbol("consumeHeader"),Je=Symbol("consuming"),ft=Symbol("bufferConcat"),lt=Symbol("maybeEnd"),Ot=Symbol("writing"),Er=Symbol("aborted"),Sr=Symbol("onDone"),jt=Symbol("sawValidEntry"),Bt=Symbol("sawNullBlock"),Dt=Symbol("sawEOF"),Fr=Symbol("closeStream"),$t=()=>!0,Xt=class extends t.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[fe]=[];[ce];[N];[E];[b]="begin";[ae]="";[Q];[J];[ue]=!1;[Se];[Er]=!1;[jt];[Bt]=!1;[Dt]=!1;[Ot]=!1;[Je]=!1;[de]=!1;constructor(lr={}){super(),this.file=lr.file||"",this.on(Sr,()=>{(this[b]==="begin"||this[jt]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),lr.ondone?this.on(Sr,lr.ondone):this.on(Sr,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!lr.strict,this.maxMetaEntrySize=lr.maxMetaEntrySize||A,this.filter=typeof lr.filter=="function"?lr.filter:$t;let cr=lr.file&&(lr.file.endsWith(".tar.br")||lr.file.endsWith(".tbr"));this.brotli=!(lr.gzip||lr.zstd)&&lr.brotli!==void 0?lr.brotli:cr?void 0:!1;let Ar=lr.file&&(lr.file.endsWith(".tar.zst")||lr.file.endsWith(".tzst"));this.zstd=!(lr.gzip||lr.brotli)&&lr.zstd!==void 0?lr.zstd:Ar?!0:void 0,this.on("end",()=>this[Fr]()),typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn),typeof lr.onReadEntry=="function"&&this.on("entry",lr.onReadEntry)}warn(lr,cr,Ar={}){(0,l.warnMethod)(this,lr,cr,Ar)}[Le](lr,cr){this[jt]===void 0&&(this[jt]=!1);let Ar;try{Ar=new n.Header(lr,cr,this[Q],this[J])}catch(qr){return this.warn("TAR_ENTRY_INVALID",qr)}if(Ar.nullBlock)this[Bt]?(this[Dt]=!0,this[b]==="begin"&&(this[b]="header"),this[be]("eof")):(this[Bt]=!0,this[be]("nullBlock"));else if(this[Bt]=!1,!Ar.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:Ar});else if(!Ar.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:Ar});else{let qr=Ar.type;if(/^(Symbolic)?Link$/.test(qr)&&!Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:Ar});else if(!/^(Symbolic)?Link$/.test(qr)&&!/^(Global)?ExtendedHeader$/.test(qr)&&Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:Ar});else{let yn=this[E]=new o.ReadEntry(Ar,this[Q],this[J]);if(!this[jt])if(yn.remain){let ke=()=>{yn.invalid||(this[jt]=!0)};yn.on("end",ke)}else this[jt]=!0;yn.meta?yn.size>this.maxMetaEntrySize?(yn.ignore=!0,this[be]("ignoredEntry",yn),this[b]="ignore",yn.resume()):yn.size>0&&(this[ae]="",yn.on("data",ke=>this[ae]+=ke),this[b]="meta"):(this[Q]=void 0,yn.ignore=yn.ignore||!this.filter(yn.path,yn),yn.ignore?(this[be]("ignoredEntry",yn),this[b]=yn.remain?"ignore":"header",yn.resume()):(yn.remain?this[b]="body":(this[b]="header",yn.end()),this[N]?this[fe].push(yn):(this[fe].push(yn),this[B]())))}}}[Fr](){queueMicrotask(()=>this.emit("close"))}[F](lr){let cr=!0;if(!lr)this[N]=void 0,cr=!1;else if(Array.isArray(lr)){let[Ar,...qr]=lr;this.emit(Ar,...qr)}else this[N]=lr,this.emit("entry",lr),lr.emittedEnd||(lr.on("end",()=>this[B]()),cr=!1);return cr}[B](){do;while(this[F](this[fe].shift()));if(this[fe].length===0){let lr=this[N];!lr||lr.flowing||lr.size===lr.remain?this[Ot]||this.emit("drain"):lr.once("drain",()=>this.emit("drain"))}}[tt](lr,cr){let Ar=this[E];if(!Ar)throw new Error("attempt to consume body without entry??");let qr=Ar.blockRemain??0,yn=qr>=lr.length&&cr===0?lr:lr.subarray(cr,cr+qr);return Ar.write(yn),Ar.blockRemain||(this[b]="header",this[E]=void 0,Ar.end()),yn.length}[ze](lr,cr){let Ar=this[E],qr=this[tt](lr,cr);return!this[E]&&Ar&&this[ne](Ar),qr}[be](lr,cr,Ar){this[fe].length===0&&!this[N]?this.emit(lr,cr,Ar):this[fe].push([lr,cr,Ar])}[ne](lr){switch(this[be]("meta",this[ae]),lr.type){case"ExtendedHeader":case"OldExtendedHeader":this[Q]=a.Pax.parse(this[ae],this[Q],!1);break;case"GlobalExtendedHeader":this[J]=a.Pax.parse(this[ae],this[J],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let cr=this[Q]??Object.create(null);this[Q]=cr,cr.path=this[ae].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let cr=this[Q]||Object.create(null);this[Q]=cr,cr.linkpath=this[ae].replace(/\0.*/,"");break}default:throw new Error("unknown meta: "+lr.type)}}abort(lr){this[Er]=!0,this.emit("abort",lr),this.warn("TAR_ABORT",lr,{recoverable:!1})}write(lr,cr,Ar){if(typeof cr=="function"&&(Ar=cr,cr=void 0),typeof lr=="string"&&(lr=Buffer.from(lr,typeof cr=="string"?cr:"utf8")),this[Er])return Ar?.(),!1;if((this[Se]===void 0||this.brotli===void 0&&this[Se]===!1)&&lr){if(this[ce]&&(lr=Buffer.concat([this[ce],lr]),this[ce]=void 0),lr.lengththis[De](Nn)),this[Se].on("error",Nn=>this.abort(Nn)),this[Se].on("end",()=>{this[ue]=!0,this[De]()}),this[Ot]=!0;let Fn=!!this[Se][zt?"end":"write"](lr);return this[Ot]=!1,Ar?.(),Fn}}this[Ot]=!0,this[Se]?this[Se].write(lr):this[De](lr),this[Ot]=!1;let qr=this[fe].length>0?!1:this[N]?this[N].flowing:!0;return!qr&&this[fe].length===0&&this[N]?.once("drain",()=>this.emit("drain")),Ar?.(),qr}[ft](lr){lr&&!this[Er]&&(this[ce]=this[ce]?Buffer.concat([this[ce],lr]):lr)}[lt](){if(this[ue]&&!this[de]&&!this[Er]&&!this[Je]){this[de]=!0;let lr=this[E];if(lr&&lr.blockRemain){let cr=this[ce]?this[ce].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${lr.blockRemain} more bytes, only ${cr} available)`,{entry:lr}),this[ce]&&lr.write(this[ce]),lr.end()}this[be](Sr)}}[De](lr){if(this[Je]&&lr)this[ft](lr);else if(!lr&&!this[ce])this[lt]();else if(lr){if(this[Je]=!0,this[ce]){this[ft](lr);let cr=this[ce];this[ce]=void 0,this[k](cr)}else this[k](lr);for(;this[ce]&&this[ce]?.length>=512&&!this[Er]&&!this[Dt];){let cr=this[ce];this[ce]=void 0,this[k](cr)}this[Je]=!1}(!this[ce]||this[ue])&&this[lt]()}[k](lr){let cr=0,Ar=lr.length;for(;cr+512<=Ar&&!this[Er]&&!this[Dt];)switch(this[b]){case"begin":case"header":this[Le](lr,cr),cr+=512;break;case"ignore":case"body":cr+=this[tt](lr,cr);break;case"meta":cr+=this[ze](lr,cr);break;default:throw new Error("invalid state: "+this[b])}cr{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripTrailingSlashes=void 0;var t=r=>{let n=r.length-1,a=-1;for(;n>-1&&r.charAt(n)==="/";)a=n,n--;return a===-1?r:r.slice(0,a)};e.stripTrailingSlashes=t}),eMe=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(F,Q,J,ae){ae===void 0&&(ae=J);var ne=Object.getOwnPropertyDescriptor(Q,J);(!ne||("get"in ne?!Q.__esModule:ne.writable||ne.configurable))&&(ne={enumerable:!0,get:function(){return Q[J]}}),Object.defineProperty(F,ae,ne)}:function(F,Q,J,ae){ae===void 0&&(ae=J),F[ae]=Q[J]}),r=e&&e.__setModuleDefault||(Object.create?function(F,Q){Object.defineProperty(F,"default",{enumerable:!0,value:Q})}:function(F,Q){F.default=Q}),n=e&&e.__importStar||function(){var F=function(Q){return F=Object.getOwnPropertyNames||function(J){var ae=[];for(var ne in J)Object.prototype.hasOwnProperty.call(J,ne)&&(ae[ae.length]=ne);return ae},F(Q)};return function(Q){if(Q&&Q.__esModule)return Q;var J={};if(Q!=null)for(var ae=F(Q),ne=0;ne{let Q=F.onReadEntry;F.onReadEntry=Q?J=>{Q(J),J.resume()}:J=>J.resume()},E=(F,Q)=>{let J=new Map(Q.map(ce=>[(0,C.stripTrailingSlashes)(ce),!0])),ae=F.filter,ne=(ce,fe="")=>{let ue=fe||(0,A.parse)(ce).root||".",de;if(ce===ue)de=!1;else{let be=J.get(ce);de=be!==void 0?be:ne((0,A.dirname)(ce),ue)}return J.set(ce,de),de};F.filter=ae?(ce,fe)=>ae(ce,fe)&&ne((0,C.stripTrailingSlashes)(ce)):ce=>ne((0,C.stripTrailingSlashes)(ce))};e.filesFilter=E;var N=F=>{let Q=new I.Parser(F),J=F.file,ae;try{ae=l.default.openSync(J,"r");let ne=l.default.fstatSync(ae),ce=F.maxReadSize||16*1024*1024;if(ne.size{let J=new I.Parser(F),ae=F.maxReadSize||16*1024*1024,ne=F.file;return new Promise((ce,fe)=>{J.on("error",fe),J.on("end",ce),l.default.stat(ne,(ue,de)=>{if(ue)fe(ue);else{let be=new o.ReadStream(ne,{readSize:ae,size:de.size});be.on("error",fe),be.pipe(J)}})})};e.list=(0,f.makeCommand)(N,B,F=>new I.Parser(F),F=>new I.Parser(F),(F,Q)=>{Q?.length&&(0,e.filesFilter)(F,Q),F.noResume||b(F)})}),wPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.modeFix=void 0;var t=(r,n,a)=>(r&=4095,a&&(r=(r|384)&-19),n&&(r&256&&(r|=64),r&32&&(r|=8),r&4&&(r|=1)),r);e.modeFix=t}),ELn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripAbsolutePath=void 0;var t=Et("node:path"),{isAbsolute:r,parse:n}=t.win32,a=o=>{let l="",A=n(o);for(;r(o)||A.root;){let f=o.charAt(0)==="/"&&o.slice(0,4)!=="//?/"?"/":A.root;o=o.slice(f.length),l+=f,A=n(o)}return[l,o]};e.stripAbsolutePath=a}),SLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;var t=["|","<",">","?",":"],r=t.map(A=>String.fromCodePoint(61440+Number(A.codePointAt(0)))),n=new Map(t.map((A,f)=>[A,r[f]])),a=new Map(r.map((A,f)=>[A,t[f]])),o=A=>t.reduce((f,I)=>f.split(I).join(n.get(I)),A);e.encode=o;var l=A=>r.reduce((f,I)=>f.split(I).join(a.get(I)),A);e.decode=l}),vLn=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function($t,Xt,lr,cr){cr===void 0&&(cr=lr);var Ar=Object.getOwnPropertyDescriptor(Xt,lr);(!Ar||("get"in Ar?!Xt.__esModule:Ar.writable||Ar.configurable))&&(Ar={enumerable:!0,get:function(){return Xt[lr]}}),Object.defineProperty($t,cr,Ar)}:function($t,Xt,lr,cr){cr===void 0&&(cr=lr),$t[cr]=Xt[lr]}),r=e&&e.__setModuleDefault||(Object.create?function($t,Xt){Object.defineProperty($t,"default",{enumerable:!0,value:Xt})}:function($t,Xt){$t.default=Xt}),n=e&&e.__importStar||function(){var $t=function(Xt){return $t=Object.getOwnPropertyNames||function(lr){var cr=[];for(var Ar in lr)Object.prototype.hasOwnProperty.call(lr,Ar)&&(cr[cr.length]=Ar);return cr},$t(Xt)};return function(Xt){if(Xt&&Xt.__esModule)return Xt;var lr={};if(Xt!=null)for(var cr=$t(Xt),Ar=0;ArXt?($t=(0,C.normalizeWindowsPath)($t).replace(/^\.(\/|$)/,""),(0,B.stripTrailingSlashes)(Xt)+"/"+$t):(0,C.normalizeWindowsPath)($t),ae=16*1024*1024,ne=Symbol("process"),ce=Symbol("file"),fe=Symbol("directory"),ue=Symbol("symlink"),de=Symbol("hardlink"),be=Symbol("header"),Se=Symbol("read"),De=Symbol("lstat"),k=Symbol("onlstat"),tt=Symbol("onread"),ze=Symbol("onreadlink"),Le=Symbol("openfile"),Je=Symbol("onopenfile"),ft=Symbol("close"),lt=Symbol("mode"),Ot=Symbol("awaitDrain"),Er=Symbol("ondrain"),Sr=Symbol("prefix"),jt=class extends l.Minipass{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#e=!1;constructor($t,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.path=(0,C.normalizeWindowsPath)($t),this.portable=!!lr.portable,this.maxReadSize=lr.maxReadSize||ae,this.linkCache=lr.linkCache||new Map,this.statCache=lr.statCache||new Map,this.preservePaths=!!lr.preservePaths,this.cwd=(0,C.normalizeWindowsPath)(lr.cwd||process.cwd()),this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.mtime=lr.mtime,this.prefix=lr.prefix?(0,C.normalizeWindowsPath)(lr.prefix):void 0,this.onWriteEntry=lr.onWriteEntry,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let cr=!1;if(!this.preservePaths){let[qr,yn]=(0,N.stripAbsolutePath)(this.path);qr&&typeof yn=="string"&&(this.path=yn,cr=qr)}this.win32=!!lr.win32||process.platform==="win32",this.win32&&(this.path=Q.decode(this.path.replaceAll(/\\/g,"/")),$t=$t.replaceAll(/\\/g,"/")),this.absolute=(0,C.normalizeWindowsPath)(lr.absolute||A.default.resolve(this.cwd,$t)),this.path===""&&(this.path="./"),cr&&this.warn("TAR_ENTRY_INFO",`stripping ${cr} from absolute path`,{entry:this,path:cr+this.path});let Ar=this.statCache.get(this.absolute);Ar?this[k](Ar):this[De]()}warn($t,Xt,lr={}){return(0,F.warnMethod)(this,$t,Xt,lr)}emit($t,...Xt){return $t==="error"&&(this.#e=!0),super.emit($t,...Xt)}[De](){o.default.lstat(this.absolute,($t,Xt)=>{if($t)return this.emit("error",$t);this[k](Xt)})}[k]($t){this.statCache.set(this.absolute,$t),this.stat=$t,$t.isFile()||($t.size=0),this.type=Fr($t),this.emit("stat",$t),this[ne]()}[ne](){switch(this.type){case"File":return this[ce]();case"Directory":return this[fe]();case"SymbolicLink":return this[ue]();default:return this.end()}}[lt]($t){return(0,I.modeFix)($t,this.type==="Directory",this.portable)}[Sr]($t){return J($t,this.prefix)}[be](){if(!this.stat)throw new Error("cannot write header before stat");this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new f.Header({path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,mode:this[lt](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:this.type==="Unsupported"?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let $t=this.header?.block;if(!$t)throw new Error("failed to encode header");super.write($t)}[fe](){if(!this.stat)throw new Error("cannot create directory entry without stat");this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[be](),this.end()}[ue](){o.default.readlink(this.absolute,($t,Xt)=>{if($t)return this.emit("error",$t);this[ze](Xt)})}[ze]($t){this.linkpath=(0,C.normalizeWindowsPath)($t),this[be](),this.end()}[de]($t){if(!this.stat)throw new Error("cannot create link entry without stat");this.type="Link",this.linkpath=(0,C.normalizeWindowsPath)(A.default.relative(this.cwd,$t)),this.stat.size=0,this[be](),this.end()}[ce](){if(!this.stat)throw new Error("cannot create file entry without stat");if(this.stat.nlink>1){let $t=`${this.stat.dev}:${this.stat.ino}`,Xt=this.linkCache.get($t);if(Xt?.indexOf(this.cwd)===0)return this[de](Xt);this.linkCache.set($t,this.absolute)}if(this[be](),this.stat.size===0)return this.end();this[Le]()}[Le](){o.default.open(this.absolute,"r",($t,Xt)=>{if($t)return this.emit("error",$t);this[Je](Xt)})}[Je]($t){if(this.fd=$t,this.#e)return this[ft]();if(!this.stat)throw new Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let Xt=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(Xt),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[Se]()}[Se](){let{fd:$t,buf:Xt,offset:lr,length:cr,pos:Ar}=this;if($t===void 0||Xt===void 0)throw new Error("cannot read file without first opening");o.default.read($t,Xt,lr,cr,Ar,(qr,yn)=>{if(qr)return this[ft](()=>this.emit("error",qr));this[tt](yn)})}[ft]($t=()=>{}){this.fd!==void 0&&o.default.close(this.fd,$t)}[tt]($t){if($t<=0&&this.remain>0){let lr=Object.assign(new Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[ft](()=>this.emit("error",lr))}if($t>this.remain){let lr=Object.assign(new Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[ft](()=>this.emit("error",lr))}if(!this.buf)throw new Error("should have created buffer prior to reading");if($t===this.remain)for(let lr=$t;lrthis[Er]())}[Ot]($t){this.once("drain",$t)}write($t,Xt,lr){if(typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof $t=="string"&&($t=Buffer.from($t,typeof Xt=="string"?Xt:"utf8")),this.blockRemain<$t.length){let cr=Object.assign(new Error("writing more data than expected"),{path:this.absolute});return this.emit("error",cr)}return this.remain-=$t.length,this.blockRemain-=$t.length,this.pos+=$t.length,this.offset+=$t.length,super.write($t,null,lr)}[Er](){if(!this.remain)return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),this[ft]($t=>$t?this.emit("error",$t):this.end());if(!this.buf)throw new Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[Se]()}};e.WriteEntry=jt;var Bt=class extends jt{sync=!0;[De](){this[k](o.default.lstatSync(this.absolute))}[ue](){this[ze](o.default.readlinkSync(this.absolute))}[Le](){this[Je](o.default.openSync(this.absolute,"r"))}[Se](){let $t=!0;try{let{fd:Xt,buf:lr,offset:cr,length:Ar,pos:qr}=this;if(Xt===void 0||lr===void 0)throw new Error("fd and buf must be set in READ method");let yn=o.default.readSync(Xt,lr,cr,Ar,qr);this[tt](yn),$t=!1}finally{if($t)try{this[ft](()=>{})}catch{}}}[Ot]($t){$t()}[ft]($t=()=>{}){this.fd!==void 0&&o.default.closeSync(this.fd),$t()}};e.WriteEntrySync=Bt;var Dt=class extends l.Minipass{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn($t,Xt,lr={}){return(0,F.warnMethod)(this,$t,Xt,lr)}constructor($t,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.preservePaths=!!lr.preservePaths,this.portable=!!lr.portable,this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.onWriteEntry=lr.onWriteEntry,this.readEntry=$t;let{type:cr}=$t;if(cr==="Unsupported")throw new Error("writing entry that should be ignored");this.type=cr,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=lr.prefix,this.path=(0,C.normalizeWindowsPath)($t.path),this.mode=$t.mode!==void 0?this[lt]($t.mode):void 0,this.uid=this.portable?void 0:$t.uid,this.gid=this.portable?void 0:$t.gid,this.uname=this.portable?void 0:$t.uname,this.gname=this.portable?void 0:$t.gname,this.size=$t.size,this.mtime=this.noMtime?void 0:lr.mtime||$t.mtime,this.atime=this.portable?void 0:$t.atime,this.ctime=this.portable?void 0:$t.ctime,this.linkpath=$t.linkpath!==void 0?(0,C.normalizeWindowsPath)($t.linkpath):void 0,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let Ar=!1;if(!this.preservePaths){let[yn,ke]=(0,N.stripAbsolutePath)(this.path);yn&&typeof ke=="string"&&(this.path=ke,Ar=yn)}this.remain=$t.size,this.blockRemain=$t.startBlockSize,this.onWriteEntry?.(this),this.header=new f.Header({path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),Ar&&this.warn("TAR_ENTRY_INFO",`stripping ${Ar} from absolute path`,{entry:this,path:Ar+this.path}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let qr=this.header?.block;if(!qr)throw new Error("failed to encode header");super.write(qr),$t.pipe(this)}[Sr]($t){return J($t,this.prefix)}[lt]($t){return(0,I.modeFix)($t,this.type==="Directory",this.portable)}write($t,Xt,lr){typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof $t=="string"&&($t=Buffer.from($t,typeof Xt=="string"?Xt:"utf8"));let cr=$t.length;if(cr>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=cr,super.write($t,lr)}end($t,Xt,lr){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),typeof $t=="function"&&(lr=$t,Xt=void 0,$t=void 0),typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof $t=="string"&&($t=Buffer.from($t,Xt??"utf8")),lr&&this.once("finish",lr),$t?super.end($t,lr):super.end(lr),this}};e.WriteEntryTar=Dt;var Fr=$t=>$t.isFile()?"File":$t.isDirectory()?"Directory":$t.isSymbolicLink()?"SymbolicLink":"Unsupported"}),TPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Node=e.Yallist=void 0;var t=class jve{tail;head;length=0;static create(A=[]){return new jve(A)}constructor(A=[]){for(let f of A)this.push(f)}*[Symbol.iterator](){for(let A=this.head;A;A=A.next)yield A.value}removeNode(A){if(A.list!==this)throw new Error("removing node which does not belong to this list");let f=A.next,I=A.prev;return f&&(f.prev=I),I&&(I.next=f),A===this.head&&(this.head=f),A===this.tail&&(this.tail=I),this.length--,A.next=void 0,A.prev=void 0,A.list=void 0,f}unshiftNode(A){if(A===this.head)return;A.list&&A.list.removeNode(A);let f=this.head;A.list=this,A.next=f,f&&(f.prev=A),this.head=A,this.tail||(this.tail=A),this.length++}pushNode(A){if(A===this.tail)return;A.list&&A.list.removeNode(A);let f=this.tail;A.list=this,A.prev=f,f&&(f.next=A),this.tail=A,this.head||(this.head=A),this.length++}push(...A){for(let f=0,I=A.length;f1)I=f;else if(this.head)C=this.head.next,I=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var b=0;C;b++)I=A(I,C.value,b),C=C.next;return I}reduceReverse(A,f){let I,C=this.tail;if(arguments.length>1)I=f;else if(this.tail)C=this.tail.prev,I=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let b=this.length-1;C;b--)I=A(I,C.value,b),C=C.prev;return I}toArray(){let A=new Array(this.length);for(let f=0,I=this.head;I;f++)A[f]=I.value,I=I.next;return A}toArrayReverse(){let A=new Array(this.length);for(let f=0,I=this.tail;I;f++)A[f]=I.value,I=I.prev;return A}slice(A=0,f=this.length){f<0&&(f+=this.length),A<0&&(A+=this.length);let I=new jve;if(fthis.length&&(f=this.length);let C=this.head,b=0;for(b=0;C&&bthis.length&&(f=this.length);let C=this.length,b=this.tail;for(;b&&C>f;C--)b=b.prev;for(;b&&C>A;C--,b=b.prev)I.push(b.value);return I}splice(A,f=0,...I){A>this.length&&(A=this.length-1),A<0&&(A=this.length+A);let C=this.head;for(let E=0;C&&E{"use strict";var t=e&&e.__createBinding||(Object.create?function(Bt,Dt,Fr,$t){$t===void 0&&($t=Fr);var Xt=Object.getOwnPropertyDescriptor(Dt,Fr);(!Xt||("get"in Xt?!Dt.__esModule:Xt.writable||Xt.configurable))&&(Xt={enumerable:!0,get:function(){return Dt[Fr]}}),Object.defineProperty(Bt,$t,Xt)}:function(Bt,Dt,Fr,$t){$t===void 0&&($t=Fr),Bt[$t]=Dt[Fr]}),r=e&&e.__setModuleDefault||(Object.create?function(Bt,Dt){Object.defineProperty(Bt,"default",{enumerable:!0,value:Dt})}:function(Bt,Dt){Bt.default=Dt}),n=e&&e.__importStar||function(){var Bt=function(Dt){return Bt=Object.getOwnPropertyNames||function(Fr){var $t=[];for(var Xt in Fr)Object.prototype.hasOwnProperty.call(Fr,Xt)&&($t[$t.length]=Xt);return $t},Bt(Dt)};return function(Dt){if(Dt&&Dt.__esModule)return Dt;var Fr={};if(Dt!=null)for(var $t=Bt(Dt),Xt=0;Xt<$t.length;Xt++)$t[Xt]!=="default"&&t(Fr,Dt,$t[Xt]);return r(Fr,Dt),Fr}}(),a=e&&e.__importDefault||function(Bt){return Bt&&Bt.__esModule?Bt:{default:Bt}};Object.defineProperty(e,"__esModule",{value:!0}),e.PackSync=e.Pack=e.PackJob=void 0;var o=a(Et("fs")),l=vLn(),A=class{path;absolute;entry;stat;readdir;pending=!1;ignore=!1;piped=!1;constructor(Bt,Dt){this.path=Bt||"./",this.absolute=Dt}};e.PackJob=A;var f=K5e(),I=n(_Ln()),C=TPo(),b=ydr(),E=bdr(),N=Buffer.alloc(1024),B=Symbol("onStat"),F=Symbol("ended"),Q=Symbol("queue"),J=Symbol("current"),ae=Symbol("process"),ne=Symbol("processing"),ce=Symbol("processJob"),fe=Symbol("jobs"),ue=Symbol("jobDone"),de=Symbol("addFSEntry"),be=Symbol("addTarEntry"),Se=Symbol("stat"),De=Symbol("readdir"),k=Symbol("onreaddir"),tt=Symbol("pipe"),ze=Symbol("entry"),Le=Symbol("entryOpt"),Je=Symbol("writeEntryClass"),ft=Symbol("write"),lt=Symbol("ondrain"),Ot=a(Et("path")),Er=$5e(),Sr=class extends f.Minipass{sync=!1;opt;cwd;maxReadSize;preservePaths;strict;noPax;prefix;linkCache;statCache;file;portable;zip;readdirCache;noDirRecurse;follow;noMtime;mtime;filter;jobs;[Je];onWriteEntry;[Q];[fe]=0;[ne]=!1;[F]=!1;constructor(Bt={}){if(super(),this.opt=Bt,this.file=Bt.file||"",this.cwd=Bt.cwd||process.cwd(),this.maxReadSize=Bt.maxReadSize,this.preservePaths=!!Bt.preservePaths,this.strict=!!Bt.strict,this.noPax=!!Bt.noPax,this.prefix=(0,Er.normalizeWindowsPath)(Bt.prefix||""),this.linkCache=Bt.linkCache||new Map,this.statCache=Bt.statCache||new Map,this.readdirCache=Bt.readdirCache||new Map,this.onWriteEntry=Bt.onWriteEntry,this[Je]=l.WriteEntry,typeof Bt.onwarn=="function"&&this.on("warn",Bt.onwarn),this.portable=!!Bt.portable,Bt.gzip||Bt.brotli||Bt.zstd){if((Bt.gzip?1:0)+(Bt.brotli?1:0)+(Bt.zstd?1:0)>1)throw new TypeError("gzip, brotli, zstd are mutually exclusive");if(Bt.gzip&&(typeof Bt.gzip!="object"&&(Bt.gzip={}),this.portable&&(Bt.gzip.portable=!0),this.zip=new I.Gzip(Bt.gzip)),Bt.brotli&&(typeof Bt.brotli!="object"&&(Bt.brotli={}),this.zip=new I.BrotliCompress(Bt.brotli)),Bt.zstd&&(typeof Bt.zstd!="object"&&(Bt.zstd={}),this.zip=new I.ZstdCompress(Bt.zstd)),!this.zip)throw new Error("impossible");let Dt=this.zip;Dt.on("data",Fr=>super.write(Fr)),Dt.on("end",()=>super.end()),Dt.on("drain",()=>this[lt]()),this.on("resume",()=>Dt.resume())}else this.on("drain",this[lt]);this.noDirRecurse=!!Bt.noDirRecurse,this.follow=!!Bt.follow,this.noMtime=!!Bt.noMtime,Bt.mtime&&(this.mtime=Bt.mtime),this.filter=typeof Bt.filter=="function"?Bt.filter:()=>!0,this[Q]=new C.Yallist,this[fe]=0,this.jobs=Number(Bt.jobs)||4,this[ne]=!1,this[F]=!1}[ft](Bt){return super.write(Bt)}add(Bt){return this.write(Bt),this}end(Bt,Dt,Fr){return typeof Bt=="function"&&(Fr=Bt,Bt=void 0),typeof Dt=="function"&&(Fr=Dt,Dt=void 0),Bt&&this.add(Bt),this[F]=!0,this[ae](),Fr&&Fr(),this}write(Bt){if(this[F])throw new Error("write after end");return Bt instanceof b.ReadEntry?this[be](Bt):this[de](Bt),this.flowing}[be](Bt){let Dt=(0,Er.normalizeWindowsPath)(Ot.default.resolve(this.cwd,Bt.path));if(!this.filter(Bt.path,Bt))Bt.resume();else{let Fr=new A(Bt.path,Dt);Fr.entry=new l.WriteEntryTar(Bt,this[Le](Fr)),Fr.entry.on("end",()=>this[ue](Fr)),this[fe]+=1,this[Q].push(Fr)}this[ae]()}[de](Bt){let Dt=(0,Er.normalizeWindowsPath)(Ot.default.resolve(this.cwd,Bt));this[Q].push(new A(Bt,Dt)),this[ae]()}[Se](Bt){Bt.pending=!0,this[fe]+=1;let Dt=this.follow?"stat":"lstat";o.default[Dt](Bt.absolute,(Fr,$t)=>{Bt.pending=!1,this[fe]-=1,Fr?this.emit("error",Fr):this[B](Bt,$t)})}[B](Bt,Dt){this.statCache.set(Bt.absolute,Dt),Bt.stat=Dt,this.filter(Bt.path,Dt)?Dt.isFile()&&Dt.nlink>1&&Bt===this[J]&&!this.linkCache.get(`${Dt.dev}:${Dt.ino}`)&&!this.sync&&this[ce](Bt):Bt.ignore=!0,this[ae]()}[De](Bt){Bt.pending=!0,this[fe]+=1,o.default.readdir(Bt.absolute,(Dt,Fr)=>{if(Bt.pending=!1,this[fe]-=1,Dt)return this.emit("error",Dt);this[k](Bt,Fr)})}[k](Bt,Dt){this.readdirCache.set(Bt.absolute,Dt),Bt.readdir=Dt,this[ae]()}[ae](){if(!this[ne]){this[ne]=!0;for(let Bt=this[Q].head;Bt&&this[fe]this.warn(Dt,Fr,$t),noPax:this.noPax,cwd:this.cwd,absolute:Bt.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[ze](Bt){this[fe]+=1;try{return new this[Je](Bt.path,this[Le](Bt)).on("end",()=>this[ue](Bt)).on("error",Dt=>this.emit("error",Dt))}catch(Dt){this.emit("error",Dt)}}[lt](){this[J]&&this[J].entry&&this[J].entry.resume()}[tt](Bt){Bt.piped=!0,Bt.readdir&&Bt.readdir.forEach($t=>{let Xt=Bt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+$t)});let Dt=Bt.entry,Fr=this.zip;if(!Dt)throw new Error("cannot pipe without source");Fr?Dt.on("data",$t=>{Fr.write($t)||Dt.pause()}):Dt.on("data",$t=>{super.write($t)||Dt.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(Bt,Dt,Fr={}){(0,E.warnMethod)(this,Bt,Dt,Fr)}};e.Pack=Sr;var jt=class extends Sr{sync=!0;constructor(Bt){super(Bt),this[Je]=l.WriteEntrySync}pause(){}resume(){}[Se](Bt){let Dt=this.follow?"statSync":"lstatSync";this[B](Bt,o.default[Dt](Bt.absolute))}[De](Bt){this[k](Bt,o.default.readdirSync(Bt.absolute))}[tt](Bt){let Dt=Bt.entry,Fr=this.zip;if(Bt.readdir&&Bt.readdir.forEach($t=>{let Xt=Bt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+$t)}),!Dt)throw new Error("Cannot pipe without source");Fr?Dt.on("data",$t=>{Fr.write($t)}):Dt.on("data",$t=>{super[ft]($t)})}};e.PackSync=jt}),BLn=EC(e=>{"use strict";var t=e&&e.__importDefault||function(N){return N&&N.__esModule?N:{default:N}};Object.defineProperty(e,"__esModule",{value:!0}),e.create=void 0;var r=j5e(),n=t(Et("node:path")),a=eMe(),o=z5e(),l=vdr(),A=(N,B)=>{let F=new l.PackSync(N),Q=new r.WriteStreamSync(N.file,{mode:N.mode||438});F.pipe(Q),I(F,B)},f=(N,B)=>{let F=new l.Pack(N),Q=new r.WriteStream(N.file,{mode:N.mode||438});F.pipe(Q);let J=new Promise((ae,ne)=>{Q.on("error",ne),Q.on("close",ae),F.on("error",ne)});return C(F,B).catch(ae=>F.emit("error",ae)),J},I=(N,B)=>{B.forEach(F=>{F.charAt(0)==="@"?(0,a.list)({file:n.default.resolve(N.cwd,F.slice(1)),sync:!0,noResume:!0,onReadEntry:Q=>N.add(Q)}):N.add(F)}),N.end()},C=async(N,B)=>{for(let F of B)F.charAt(0)==="@"?await(0,a.list)({file:n.default.resolve(String(N.cwd),F.slice(1)),noResume:!0,onReadEntry:Q=>{N.add(Q)}}):N.add(F);N.end()},b=(N,B)=>{let F=new l.PackSync(N);return I(F,B),F},E=(N,B)=>{let F=new l.Pack(N);return C(F,B).catch(Q=>F.emit("error",Q)),F};e.create=(0,o.makeCommand)(A,f,b,E,(N,B)=>{if(!B?.length)throw new TypeError("no paths specified to add to archive")})}),RPo=EC(e=>{"use strict";var t=e&&e.__importDefault||function(B){return B&&B.__esModule?B:{default:B}};Object.defineProperty(e,"__esModule",{value:!0}),e.getWriteFlag=void 0;var r=t(Et("fs")),n=process.platform,a=n==="win32",{O_CREAT:o,O_NOFOLLOW:l,O_TRUNC:A,O_WRONLY:f}=r.default.constants,I=Number(process.env.__FAKE_FS_O_FILENAME__)||r.default.constants.UV_FS_O_FILEMAP||0,C=a&&!!I,b=512*1024,E=I|A|o|f,N=!a&&typeof l=="number"?l|A|o|f:null;e.getWriteFlag=N!==null?()=>N:C?B=>B"w"}),NPo=EC(e=>{"use strict";var t=e&&e.__importDefault||function(C){return C&&C.__esModule?C:{default:C}};Object.defineProperty(e,"__esModule",{value:!0}),e.chownrSync=e.chownr=void 0;var r=t(Et("node:fs")),n=t(Et("node:path")),a=(C,b,E)=>{try{return r.default.lchownSync(C,b,E)}catch(N){if(N?.code!=="ENOENT")throw N}},o=(C,b,E,N)=>{r.default.lchown(C,b,E,B=>{N(B&&B?.code!=="ENOENT"?B:null)})},l=(C,b,E,N,B)=>{if(b.isDirectory())(0,e.chownr)(n.default.resolve(C,b.name),E,N,F=>{if(F)return B(F);let Q=n.default.resolve(C,b.name);o(Q,E,N,B)});else{let F=n.default.resolve(C,b.name);o(F,E,N,B)}},A=(C,b,E,N)=>{r.default.readdir(C,{withFileTypes:!0},(B,F)=>{if(B){if(B.code==="ENOENT")return N();if(B.code!=="ENOTDIR"&&B.code!=="ENOTSUP")return N(B)}if(B||!F.length)return o(C,b,E,N);let Q=F.length,J=null,ae=ne=>{if(!J){if(ne)return N(J=ne);if(--Q===0)return o(C,b,E,N)}};for(let ne of F)l(C,ne,b,E,ae)})};e.chownr=A;var f=(C,b,E,N)=>{b.isDirectory()&&(0,e.chownrSync)(n.default.resolve(C,b.name),E,N),a(n.default.resolve(C,b.name),E,N)},I=(C,b,E)=>{let N;try{N=r.default.readdirSync(C,{withFileTypes:!0})}catch(B){let F=B;if(F?.code==="ENOENT")return;if(F?.code==="ENOTDIR"||F?.code==="ENOTSUP")return a(C,b,E);throw F}for(let B of N)f(C,B,b,E);return a(C,b,E)};e.chownrSync=I}),DPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CwdError=void 0;var t=class extends Error{path;code;syscall="chdir";constructor(r,n){super(`${n}: Cannot cd into '${r}'`),this.path=r,this.code=n}get name(){return"CwdError"}};e.CwdError=t}),wLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SymlinkError=void 0;var t=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(r,n){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=r,this.path=n}get name(){return"SymlinkError"}};e.SymlinkError=t}),kPo=EC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.mkdirSync=e.mkdir=void 0;var r=NPo(),n=t(Et("node:fs")),a=t(Et("node:fs/promises")),o=t(Et("node:path")),l=DPo(),A=$5e(),f=wLn(),I=(F,Q)=>{n.default.stat(F,(J,ae)=>{(J||!ae.isDirectory())&&(J=new l.CwdError(F,J?.code||"ENOTDIR")),Q(J)})},C=(F,Q,J)=>{F=(0,A.normalizeWindowsPath)(F);let ae=Q.umask??18,ne=Q.mode|448,ce=(ne&ae)!==0,fe=Q.uid,ue=Q.gid,de=typeof fe=="number"&&typeof ue=="number"&&(fe!==Q.processUid||ue!==Q.processGid),be=Q.preserve,Se=Q.unlink,De=(0,A.normalizeWindowsPath)(Q.cwd),k=(ze,Le)=>{ze?J(ze):Le&&de?(0,r.chownr)(Le,fe,ue,Je=>k(Je)):ce?n.default.chmod(F,ne,J):J()};if(F===De)return I(F,k);if(be)return a.default.mkdir(F,{mode:ne,recursive:!0}).then(ze=>k(null,ze??void 0),k);let tt=(0,A.normalizeWindowsPath)(o.default.relative(De,F)).split("/");b(De,tt,ne,Se,De,void 0,k)};e.mkdir=C;var b=(F,Q,J,ae,ne,ce,fe)=>{if(Q.length===0)return fe(null,ce);let ue=Q.shift(),de=(0,A.normalizeWindowsPath)(o.default.resolve(F+"/"+ue));n.default.mkdir(de,J,E(de,Q,J,ae,ne,ce,fe))},E=(F,Q,J,ae,ne,ce,fe)=>ue=>{ue?n.default.lstat(F,(de,be)=>{if(de)de.path=de.path&&(0,A.normalizeWindowsPath)(de.path),fe(de);else if(be.isDirectory())b(F,Q,J,ae,ne,ce,fe);else if(ae)n.default.unlink(F,Se=>{if(Se)return fe(Se);n.default.mkdir(F,J,E(F,Q,J,ae,ne,ce,fe))});else{if(be.isSymbolicLink())return fe(new f.SymlinkError(F,F+"/"+Q.join("/")));fe(ue)}}):(ce=ce||F,b(F,Q,J,ae,ne,ce,fe))},N=F=>{let Q=!1,J;try{Q=n.default.statSync(F).isDirectory()}catch(ae){J=ae?.code}finally{if(!Q)throw new l.CwdError(F,J??"ENOTDIR")}},B=(F,Q)=>{F=(0,A.normalizeWindowsPath)(F);let J=Q.umask??18,ae=Q.mode|448,ne=(ae&J)!==0,ce=Q.uid,fe=Q.gid,ue=typeof ce=="number"&&typeof fe=="number"&&(ce!==Q.processUid||fe!==Q.processGid),de=Q.preserve,be=Q.unlink,Se=(0,A.normalizeWindowsPath)(Q.cwd),De=ze=>{ze&&ue&&(0,r.chownrSync)(ze,ce,fe),ne&&n.default.chmodSync(F,ae)};if(F===Se)return N(Se),De();if(de)return De(n.default.mkdirSync(F,{mode:ae,recursive:!0})??void 0);let k=(0,A.normalizeWindowsPath)(o.default.relative(Se,F)).split("/"),tt;for(let ze=k.shift(),Le=Se;ze&&(Le+="/"+ze);ze=k.shift()){Le=(0,A.normalizeWindowsPath)(o.default.resolve(Le));try{n.default.mkdirSync(Le,ae),tt=tt||Le}catch{let Je=n.default.lstatSync(Le);if(Je.isDirectory())continue;if(be){n.default.unlinkSync(Le),n.default.mkdirSync(Le,ae),tt=tt||Le;continue}else if(Je.isSymbolicLink())return new f.SymlinkError(Le,Le+"/"+k.join("/"))}}return De(tt)};e.mkdirSync=B}),xPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeUnicode=void 0;var t=Object.create(null),r=1e4,n=new Set,a=o=>{n.has(o)?n.delete(o):t[o]=o.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),n.add(o);let l=t[o],A=n.size-r;if(A>r/10){for(let f of n)if(n.delete(f),delete t[f],--A<=0)break}return l};e.normalizeUnicode=a}),GPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PathReservations=void 0;var t=Et("node:path"),r=xPo(),n=Sdr(),a=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,o=a==="win32",l=f=>f.split("/").slice(0,-1).reduce((I,C)=>{let b=I.at(-1);return b!==void 0&&(C=(0,t.join)(b,C)),I.push(C||"/"),I},[]),A=class{#e=new Map;#t=new Map;#n=new Set;reserve(f,I){f=o?["win32 parallelization disabled"]:f.map(b=>(0,n.stripTrailingSlashes)((0,t.join)((0,r.normalizeUnicode)(b))));let C=new Set(f.map(b=>l(b)).reduce((b,E)=>b.concat(E)));this.#t.set(I,{dirs:C,paths:f});for(let b of f){let E=this.#e.get(b);E?E.push(I):this.#e.set(b,[I])}for(let b of C){let E=this.#e.get(b);if(!E)this.#e.set(b,[new Set([I])]);else{let N=E.at(-1);N instanceof Set?N.add(I):E.push(new Set([I]))}}return this.#i(I)}#r(f){let I=this.#t.get(f);if(!I)throw new Error("function does not have any path reservations");return{paths:I.paths.map(C=>this.#e.get(C)),dirs:[...I.dirs].map(C=>this.#e.get(C))}}check(f){let{paths:I,dirs:C}=this.#r(f);return I.every(b=>b&&b[0]===f)&&C.every(b=>b&&b[0]instanceof Set&&b[0].has(f))}#i(f){return this.#n.has(f)||!this.check(f)?!1:(this.#n.add(f),f(()=>this.#s(f)),!0)}#s(f){if(!this.#n.has(f))return!1;let I=this.#t.get(f);if(!I)throw new Error("invalid reservation");let{paths:C,dirs:b}=I,E=new Set;for(let N of C){let B=this.#e.get(N);if(!B||B?.[0]!==f)continue;let F=B[1];if(!F){this.#e.delete(N);continue}if(B.shift(),typeof F=="function")E.add(F);else for(let Q of F)E.add(Q)}for(let N of b){let B=this.#e.get(N),F=B?.[0];if(!(!B||!(F instanceof Set)))if(F.size===1&&B.length===1){this.#e.delete(N);continue}else if(F.size===1){B.shift();let Q=B[0];typeof Q=="function"&&E.add(Q)}else F.delete(f)}return this.#n.delete(f),E.forEach(N=>this.#i(N)),!0}};e.PathReservations=A}),FPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.umask=void 0;var t=()=>process.umask();e.umask=t}),TLn=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(Vr,xi,no,ga){ga===void 0&&(ga=no);var Ya=Object.getOwnPropertyDescriptor(xi,no);(!Ya||("get"in Ya?!xi.__esModule:Ya.writable||Ya.configurable))&&(Ya={enumerable:!0,get:function(){return xi[no]}}),Object.defineProperty(Vr,ga,Ya)}:function(Vr,xi,no,ga){ga===void 0&&(ga=no),Vr[ga]=xi[no]}),r=e&&e.__setModuleDefault||(Object.create?function(Vr,xi){Object.defineProperty(Vr,"default",{enumerable:!0,value:xi})}:function(Vr,xi){Vr.default=xi}),n=e&&e.__importStar||function(){var Vr=function(xi){return Vr=Object.getOwnPropertyNames||function(no){var ga=[];for(var Ya in no)Object.prototype.hasOwnProperty.call(no,Ya)&&(ga[ga.length]=Ya);return ga},Vr(xi)};return function(xi){if(xi&&xi.__esModule)return xi;var no={};if(xi!=null)for(var ga=Vr(xi),Ya=0;Ya{if(!qr)return f.default.unlink(Vr,xi);let no=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.rename(Vr,no,ga=>{if(ga)return xi(ga);f.default.unlink(no,xi)})},zt=Vr=>{if(!qr)return f.default.unlinkSync(Vr);let xi=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.renameSync(Vr,xi),f.default.unlinkSync(xi)},Fn=(Vr,xi,no)=>Vr!==void 0&&Vr===Vr>>>0?Vr:xi!==void 0&&xi===xi>>>0?xi:no,Nn=class extends N.Parser{[Bt]=!1;[cr]=!1;[Er]=0;reservations=new Q.PathReservations;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(Vr={}){if(Vr.ondone=()=>{this[Bt]=!0,this[Dt]()},super(Vr),this.transform=Vr.transform,this.chmod=!!Vr.chmod,typeof Vr.uid=="number"||typeof Vr.gid=="number"){if(typeof Vr.uid!="number"||typeof Vr.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(Vr.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=Vr.uid,this.gid=Vr.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;this.preserveOwner=Vr.preserveOwner===void 0&&typeof Vr.uid!="number"?!!(process.getuid&&process.getuid()===0):!!Vr.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth=typeof Vr.maxDepth=="number"?Vr.maxDepth:yn,this.forceChown=Vr.forceChown===!0,this.win32=!!Vr.win32||qr,this.newer=!!Vr.newer,this.keep=!!Vr.keep,this.noMtime=!!Vr.noMtime,this.preservePaths=!!Vr.preservePaths,this.unlink=!!Vr.unlink,this.cwd=(0,E.normalizeWindowsPath)(I.default.resolve(Vr.cwd||process.cwd())),this.strip=Number(Vr.strip)||0,this.processUmask=this.chmod?typeof Vr.processUmask=="number"?Vr.processUmask:(0,ae.umask)():0,this.umask=typeof Vr.umask=="number"?Vr.umask:this.processUmask,this.dmode=Vr.dmode||511&~this.umask,this.fmode=Vr.fmode||438&~this.umask,this.on("entry",xi=>this[ne](xi))}warn(Vr,xi,no={}){return(Vr==="TAR_BAD_ARCHIVE"||Vr==="TAR_ABORT")&&(no.recoverable=!1),super.warn(Vr,xi,no)}[Dt](){this[Bt]&&this[Er]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[ft](Vr,xi){let no=Vr[xi],{type:ga}=Vr;if(!no||this.preservePaths)return!0;let[Ya,Gc]=(0,B.stripAbsolutePath)(no),ol=Gc.replaceAll(/\\/g,"/").split("/");if(ol.includes("..")||qr&&/^[a-z]:\.\.$/i.test(ol[0]??"")){if(xi==="path"||ga==="Link")return this.warn("TAR_ENTRY_ERROR",`${xi} contains '..'`,{entry:Vr,[xi]:no}),!1;let Sc=I.default.posix.dirname(Vr.path),Hr=I.default.posix.normalize(I.default.posix.join(Sc,ol.join("/")));if(Hr.startsWith("../")||Hr==="..")return this.warn("TAR_ENTRY_ERROR",`${xi} escapes extraction directory`,{entry:Vr,[xi]:no}),!1}return Ya&&(Vr[xi]=String(Gc),this.warn("TAR_ENTRY_INFO",`stripping ${Ya} from absolute ${xi}`,{entry:Vr,[xi]:no})),!0}[Je](Vr){let xi=(0,E.normalizeWindowsPath)(Vr.path),no=xi.split("/");if(this.strip){if(no.length=this.strip)Vr.linkpath=ga.slice(this.strip).join("/");else return!1}no.splice(0,this.strip),Vr.path=no.join("/")}if(isFinite(this.maxDepth)&&no.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:Vr,path:xi,depth:no.length,maxDepth:this.maxDepth}),!1;if(!this[ft](Vr,"path")||!this[ft](Vr,"linkpath"))return!1;if(Vr.absolute=I.default.isAbsolute(Vr.path)?(0,E.normalizeWindowsPath)(I.default.resolve(Vr.path)):(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,Vr.path)),!this.preservePaths&&typeof Vr.absolute=="string"&&Vr.absolute.indexOf(this.cwd+"/")!==0&&Vr.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:Vr,path:(0,E.normalizeWindowsPath)(Vr.path),resolvedPath:Vr.absolute,cwd:this.cwd}),!1;if(Vr.absolute===this.cwd&&Vr.type!=="Directory"&&Vr.type!=="GNUDumpDir")return!1;if(this.win32){let{root:ga}=I.default.win32.parse(String(Vr.absolute));Vr.absolute=ga+F.encode(String(Vr.absolute).slice(ga.length));let{root:Ya}=I.default.win32.parse(Vr.path);Vr.path=Ya+F.encode(Vr.path.slice(Ya.length))}return!0}[ne](Vr){if(!this[Je](Vr))return Vr.resume();switch(l.default.equal(typeof Vr.absolute,"string"),Vr.type){case"Directory":case"GNUDumpDir":Vr.mode&&(Vr.mode=Vr.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ce](Vr);default:return this[Le](Vr)}}[Ot](Vr,xi){Vr.name==="CwdError"?this.emit("error",Vr):(this.warn("TAR_ENTRY_ERROR",Vr,{entry:xi}),this[jt](),xi.resume())}[lt](Vr,xi,no){(0,b.mkdir)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi},no)}[$t](Vr){return this.forceChown||this.preserveOwner&&(typeof Vr.uid=="number"&&Vr.uid!==this.processUid||typeof Vr.gid=="number"&&Vr.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[Xt](Vr){return Fn(this.uid,Vr.uid,this.processUid)}[lr](Vr){return Fn(this.gid,Vr.gid,this.processGid)}[be](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=new o.WriteStream(String(Vr.absolute),{flags:(0,C.getWriteFlag)(Vr.size),mode:no,autoClose:!1});ga.on("error",Sc=>{ga.fd&&f.default.close(ga.fd,()=>{}),ga.write=()=>!0,this[Ot](Sc,Vr),xi()});let Ya=1,Gc=Sc=>{if(Sc){ga.fd&&f.default.close(ga.fd,()=>{}),this[Ot](Sc,Vr),xi();return}--Ya===0&&ga.fd!==void 0&&f.default.close(ga.fd,Hr=>{Hr?this[Ot](Hr,Vr):this[jt](),xi()})};ga.on("finish",()=>{let Sc=String(Vr.absolute),Hr=ga.fd;if(typeof Hr=="number"&&Vr.mtime&&!this.noMtime){Ya++;let Or=Vr.atime||new Date,Ft=Vr.mtime;f.default.futimes(Hr,Or,Ft,zr=>zr?f.default.utimes(Sc,Or,Ft,Rn=>Gc(Rn&&zr)):Gc())}if(typeof Hr=="number"&&this[$t](Vr)){Ya++;let Or=this[Xt](Vr),Ft=this[lr](Vr);typeof Or=="number"&&typeof Ft=="number"&&f.default.fchown(Hr,Or,Ft,zr=>zr?f.default.chown(Sc,Or,Ft,Rn=>Gc(Rn&&zr)):Gc())}Gc()});let ol=this.transform&&this.transform(Vr)||Vr;ol!==Vr&&(ol.on("error",Sc=>{this[Ot](Sc,Vr),xi()}),Vr.pipe(ol)),ol.pipe(ga)}[Se](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode;this[lt](String(Vr.absolute),no,ga=>{if(ga){this[Ot](ga,Vr),xi();return}let Ya=1,Gc=()=>{--Ya===0&&(xi(),this[jt](),Vr.resume())};Vr.mtime&&!this.noMtime&&(Ya++,f.default.utimes(String(Vr.absolute),Vr.atime||new Date,Vr.mtime,Gc)),this[$t](Vr)&&(Ya++,f.default.chown(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)),Gc)),Gc()})}[Le](Vr){Vr.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${Vr.type}`,{entry:Vr}),Vr.resume()}[k](Vr,xi){let no=(0,E.normalizeWindowsPath)(I.default.relative(this.cwd,I.default.resolve(I.default.dirname(String(Vr.absolute)),String(Vr.linkpath)))).split("/");this[ze](Vr,this.cwd,no,()=>this[De](Vr,String(Vr.linkpath),"symlink",xi),ga=>{this[Ot](ga,Vr),xi()})}[tt](Vr,xi){let no=(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,String(Vr.linkpath))),ga=(0,E.normalizeWindowsPath)(String(Vr.linkpath)).split("/");this[ze](Vr,this.cwd,ga,()=>this[De](Vr,no,"link",xi),Ya=>{this[Ot](Ya,Vr),xi()})}[ze](Vr,xi,no,ga,Ya){let Gc=no.shift();if(this.preservePaths||Gc===void 0)return ga();let ol=I.default.resolve(xi,Gc);f.default.lstat(ol,(Sc,Hr)=>{if(Sc)return ga();if(Hr?.isSymbolicLink())return Ya(new J.SymlinkError(ol,I.default.resolve(ol,no.join("/"))));this[ze](Vr,ol,no,ga,Ya)})}[Sr](){this[Er]++}[jt](){this[Er]--,this[Dt]()}[Fr](Vr){this[jt](),Vr.resume()}[ue](Vr,xi){return Vr.type==="File"&&!this.unlink&&xi.isFile()&&xi.nlink<=1&&!qr}[ce](Vr){this[Sr]();let xi=[Vr.path];Vr.linkpath&&xi.push(Vr.linkpath),this.reservations.reserve(xi,no=>this[fe](Vr,no))}[fe](Vr,xi){let no=ol=>{xi(ol)},ga=()=>{this[lt](this.cwd,this.dmode,ol=>{if(ol){this[Ot](ol,Vr),no();return}this[cr]=!0,Ya()})},Ya=()=>{if(Vr.absolute!==this.cwd){let ol=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(ol!==this.cwd)return this[lt](ol,this.dmode,Sc=>{if(Sc){this[Ot](Sc,Vr),no();return}Gc()})}Gc()},Gc=()=>{f.default.lstat(String(Vr.absolute),(ol,Sc)=>{if(Sc&&(this.keep||this.newer&&Sc.mtime>(Vr.mtime??Sc.mtime))){this[Fr](Vr),no();return}if(ol||this[ue](Vr,Sc))return this[de](null,Vr,no);if(Sc.isDirectory()){if(Vr.type==="Directory"){let Hr=this.chmod&&Vr.mode&&(Sc.mode&4095)!==Vr.mode,Or=Ft=>this[de](Ft??null,Vr,no);return Hr?f.default.chmod(String(Vr.absolute),Number(Vr.mode),Or):Or()}if(Vr.absolute!==this.cwd)return f.default.rmdir(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,no))}if(Vr.absolute===this.cwd)return this[de](null,Vr,no);ke(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,no))})};this[cr]?Ya():ga()}[de](Vr,xi,no){if(Vr){this[Ot](Vr,xi),no();return}switch(xi.type){case"File":case"OldFile":case"ContiguousFile":return this[be](xi,no);case"Link":return this[tt](xi,no);case"SymbolicLink":return this[k](xi,no);case"Directory":case"GNUDumpDir":return this[Se](xi,no)}}[De](Vr,xi,no,ga){f.default[no](xi,String(Vr.absolute),Ya=>{Ya?this[Ot](Ya,Vr):(this[jt](),Vr.resume()),ga()})}};e.Unpack=Nn;var Hi=Vr=>{try{return[null,Vr()]}catch(xi){return[xi,null]}},Ao=class extends Nn{sync=!0;[de](Vr,xi){return super[de](Vr,xi,()=>{})}[ce](Vr){if(!this[cr]){let Ya=this[lt](this.cwd,this.dmode);if(Ya)return this[Ot](Ya,Vr);this[cr]=!0}if(Vr.absolute!==this.cwd){let Ya=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(Ya!==this.cwd){let Gc=this[lt](Ya,this.dmode);if(Gc)return this[Ot](Gc,Vr)}}let[xi,no]=Hi(()=>f.default.lstatSync(String(Vr.absolute)));if(no&&(this.keep||this.newer&&no.mtime>(Vr.mtime??no.mtime)))return this[Fr](Vr);if(xi||this[ue](Vr,no))return this[de](null,Vr);if(no.isDirectory()){if(Vr.type==="Directory"){let Gc=this.chmod&&Vr.mode&&(no.mode&4095)!==Vr.mode,[ol]=Gc?Hi(()=>{f.default.chmodSync(String(Vr.absolute),Number(Vr.mode))}):[];return this[de](ol,Vr)}let[Ya]=Hi(()=>f.default.rmdirSync(String(Vr.absolute)));this[de](Ya,Vr)}let[ga]=Vr.absolute===this.cwd?[]:Hi(()=>zt(String(Vr.absolute)));this[de](ga,Vr)}[be](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=ol=>{let Sc;try{f.default.closeSync(Ya)}catch(Hr){Sc=Hr}(ol||Sc)&&this[Ot](ol||Sc,Vr),xi()},Ya;try{Ya=f.default.openSync(String(Vr.absolute),(0,C.getWriteFlag)(Vr.size),no)}catch(ol){return ga(ol)}let Gc=this.transform&&this.transform(Vr)||Vr;Gc!==Vr&&(Gc.on("error",ol=>this[Ot](ol,Vr)),Vr.pipe(Gc)),Gc.on("data",ol=>{try{f.default.writeSync(Ya,ol,0,ol.length)}catch(Sc){ga(Sc)}}),Gc.on("end",()=>{let ol=null;if(Vr.mtime&&!this.noMtime){let Sc=Vr.atime||new Date,Hr=Vr.mtime;try{f.default.futimesSync(Ya,Sc,Hr)}catch(Or){try{f.default.utimesSync(String(Vr.absolute),Sc,Hr)}catch{ol=Or}}}if(this[$t](Vr)){let Sc=this[Xt](Vr),Hr=this[lr](Vr);try{f.default.fchownSync(Ya,Number(Sc),Number(Hr))}catch(Or){try{f.default.chownSync(String(Vr.absolute),Number(Sc),Number(Hr))}catch{ol=ol||Or}}}ga(ol)})}[Se](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode,ga=this[lt](String(Vr.absolute),no);if(ga){this[Ot](ga,Vr),xi();return}if(Vr.mtime&&!this.noMtime)try{f.default.utimesSync(String(Vr.absolute),Vr.atime||new Date,Vr.mtime)}catch{}if(this[$t](Vr))try{f.default.chownSync(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)))}catch{}xi(),Vr.resume()}[lt](Vr,xi){try{return(0,b.mkdirSync)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi})}catch(no){return no}}[ze](Vr,xi,no,ga,Ya){if(this.preservePaths||no.length===0)return ga();let Gc=xi;for(let ol of no){Gc=I.default.resolve(Gc,ol);let[Sc,Hr]=Hi(()=>f.default.lstatSync(Gc));if(Sc)return ga();if(Hr.isSymbolicLink())return Ya(new J.SymlinkError(Gc,I.default.resolve(xi,no.join("/"))))}ga()}[De](Vr,xi,no,ga){let Ya=`${no}Sync`;try{f.default[Ya](xi,String(Vr.absolute)),ga(),Vr.resume()}catch(Gc){return this[Ot](Gc,Vr)}}};e.UnpackSync=Ao}),RLn=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(E,N,B,F){F===void 0&&(F=B);var Q=Object.getOwnPropertyDescriptor(N,B);(!Q||("get"in Q?!N.__esModule:Q.writable||Q.configurable))&&(Q={enumerable:!0,get:function(){return N[B]}}),Object.defineProperty(E,F,Q)}:function(E,N,B,F){F===void 0&&(F=B),E[F]=N[B]}),r=e&&e.__setModuleDefault||(Object.create?function(E,N){Object.defineProperty(E,"default",{enumerable:!0,value:N})}:function(E,N){E.default=N}),n=e&&e.__importStar||function(){var E=function(N){return E=Object.getOwnPropertyNames||function(B){var F=[];for(var Q in B)Object.prototype.hasOwnProperty.call(B,Q)&&(F[F.length]=Q);return F},E(N)};return function(N){if(N&&N.__esModule)return N;var B={};if(N!=null)for(var F=E(N),Q=0;Q{let N=new I.UnpackSync(E),B=E.file,F=l.default.statSync(B),Q=E.maxReadSize||16*1024*1024;new o.ReadStreamSync(B,{readSize:Q,size:F.size}).pipe(N)},b=(E,N)=>{let B=new I.Unpack(E),F=E.maxReadSize||16*1024*1024,Q=E.file;return new Promise((J,ae)=>{B.on("error",ae),B.on("close",J),l.default.stat(Q,(ne,ce)=>{if(ne)ae(ne);else{let fe=new o.ReadStream(Q,{readSize:F,size:ce.size});fe.on("error",ae),fe.pipe(B)}})})};e.extract=(0,f.makeCommand)(C,b,E=>new I.UnpackSync(E),E=>new I.Unpack(E),(E,N)=>{N?.length&&(0,A.filesFilter)(E,N)})}),Bdr=EC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.replace=void 0;var r=j5e(),n=t(Et("node:fs")),a=t(Et("node:path")),o=q5e(),l=eMe(),A=z5e(),f=Cdr(),I=vdr(),C=(F,Q)=>{let J=new I.PackSync(F),ae=!0,ne,ce;try{try{ne=n.default.openSync(F.file,"r+")}catch(de){if(de?.code==="ENOENT")ne=n.default.openSync(F.file,"w+");else throw de}let fe=n.default.fstatSync(ne),ue=Buffer.alloc(512);e:for(ce=0;cefe.size)break;ce+=be,F.mtimeCache&&de.mtime&&F.mtimeCache.set(String(de.path),de.mtime)}ae=!1,b(F,J,ce,ne,Q)}finally{if(ae)try{n.default.closeSync(ne)}catch{}}},b=(F,Q,J,ae,ne)=>{let ce=new r.WriteStreamSync(F.file,{fd:ae,start:J});Q.pipe(ce),N(Q,ne)},E=(F,Q)=>{Q=Array.from(Q);let J=new I.Pack(F),ae=(ne,ce,fe)=>{let ue=(k,tt)=>{k?n.default.close(ne,ze=>fe(k)):fe(null,tt)},de=0;if(ce===0)return ue(null,0);let be=0,Se=Buffer.alloc(512),De=(k,tt)=>{if(k||tt===void 0)return ue(k);if(be+=tt,be<512&&tt)return n.default.read(ne,Se,be,Se.length-be,de+be,De);if(de===0&&Se[0]===31&&Se[1]===139)return ue(new Error("cannot append to compressed archives"));if(be<512)return ue(null,de);let ze=new o.Header(Se);if(!ze.cksumValid)return ue(null,de);let Le=512*Math.ceil((ze.size??0)/512);if(de+Le+512>ce||(de+=Le+512,de>=ce))return ue(null,de);F.mtimeCache&&ze.mtime&&F.mtimeCache.set(String(ze.path),ze.mtime),be=0,n.default.read(ne,Se,0,512,de,De)};n.default.read(ne,Se,0,512,de,De)};return new Promise((ne,ce)=>{J.on("error",ce);let fe="r+",ue=(de,be)=>{if(de&&de.code==="ENOENT"&&fe==="r+")return fe="w+",n.default.open(F.file,fe,ue);if(de||!be)return ce(de);n.default.fstat(be,(Se,De)=>{if(Se)return n.default.close(be,()=>ce(Se));ae(be,De.size,(k,tt)=>{if(k)return ce(k);let ze=new r.WriteStream(F.file,{fd:be,start:tt});J.pipe(ze),ze.on("error",ce),ze.on("close",ne),B(J,Q)})})};n.default.open(F.file,fe,ue)})},N=(F,Q)=>{Q.forEach(J=>{J.charAt(0)==="@"?(0,l.list)({file:a.default.resolve(F.cwd,J.slice(1)),sync:!0,noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(J)}),F.end()},B=async(F,Q)=>{for(let J of Q)J.charAt(0)==="@"?await(0,l.list)({file:a.default.resolve(String(F.cwd),J.slice(1)),noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(J);F.end()};e.replace=(0,A.makeCommand)(C,E,()=>{throw new TypeError("file is required")},()=>{throw new TypeError("file is required")},(F,Q)=>{if(!(0,f.isFile)(F))throw new TypeError("file is required");if(F.gzip||F.brotli||F.zstd||F.file.endsWith(".br")||F.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!Q?.length)throw new TypeError("no paths specified to add/replace")})}),NLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.update=void 0;var t=z5e(),r=Bdr();e.update=(0,t.makeCommand)(r.replace.syncFile,r.replace.asyncFile,r.replace.syncNoFile,r.replace.asyncNoFile,(a,o=[])=>{r.replace.validate?.(a,o),n(a)});var n=a=>{let o=a.filter;a.mtimeCache||(a.mtimeCache=new Map),a.filter=o?(l,A)=>o(l,A)&&!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0)):(l,A)=>!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0))}}),DLn=qC&&qC.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ZPo=qC&&qC.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bM=qC&&qC.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&DLn(t,e,r)},LPo=qC&&qC.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(zve,"__esModule",{value:!0});zve.WorkerPool=zve.AsyncPool=void 0;var HPo=(Wa(),vi(Va)),xLn=HPo.__importDefault(Ufe()),YPo=Et("worker_threads"),Qoe=Symbol("kTaskInfo"),wdr=class{constructor(t,r){this.fn=t,this.limit=(0,xLn.default)(r.poolSize)}run(t){return this.limit(()=>this.fn(t))}};zve.AsyncPool=wdr;var Tdr=class{constructor(t,r){this.source=t,this.workers=[],this.limit=(0,xLn.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let n=this.workers.pop();n?n.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let t=new YPo.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return t.on("message",r=>{if(!t[Qoe])throw new Error("Assertion failed: Worker sent a result without having a task assigned");t[Qoe].resolve(r),t[Qoe]=null,t.unref(),this.workers.push(t)}),t.on("error",r=>{t[Qoe]?.reject(r),t[Qoe]=null}),t.on("exit",r=>{r!==0&&t[Qoe]?.reject(new Error(`Worker exited with code ${r}`)),t[Qoe]=null}),t}run(t){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((n,a)=>{r[Qoe]={resolve:n,reject:a},r.postMessage(t)})})}};zve.WorkerPool=Tdr});var ZLn=H((D6l,FLn)=>{var Rdr;FLn.exports.getContent=()=>(typeof Rdr>"u"&&(Rdr=Et("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),Rdr)});var HLn=H(Xoe=>{"use strict";Object.defineProperty(Xoe,"__esModule",{value:!0});Xoe.getDefaultTaskPool=OLn;Xoe.getTaskPoolForConfiguration=PLn;Xoe.convertToZipWorker=Ddr;Xoe.makeArchiveFromDirectory=jPo;Xoe.convertToZip=zPo;Xoe.extractArchiveTo=MLn;var LLn=(Wa(),vi(Va)),QPo=mn(),ib=Io(),YAt=u8(),XPo=Et("stream"),JPo=LLn.__importStar(kLn()),QAt=GLn(),VLn=LLn.__importStar(OO()),WLn=ZLn();function UPo(e,t){switch(e){case"async":return new QAt.AsyncPool(Ddr,{poolSize:t});case"workers":return new QAt.WorkerPool((0,WLn.getContent)(),{poolSize:t});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}}var Ndr;function OLn(){return typeof Ndr>"u"&&(Ndr=UPo("workers",QPo.nodeUtils.availableParallelism())),Ndr}var KPo=new WeakMap;function PLn(e){return typeof e>"u"?OLn():VLn.getFactoryWithDefault(KPo,e,()=>{let t=e.get("taskPoolMode"),r=e.get("taskPoolConcurrency");switch(t){case"async":return new QAt.AsyncPool(Ddr,{poolSize:r});case"workers":return new QAt.WorkerPool((0,WLn.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}})}async function Ddr(e){let{tmpFile:t,tgz:r,compressionLevel:n,extractBufferOpts:a}=e,o=new YAt.ZipFS(t,{create:!0,level:n,stats:ib.statUtils.makeDefaultStats()}),l=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await MLn(l,o,a),o.saveAndClose(),t}async function jPo(e,{baseFs:t=new ib.NodeFS,prefixPath:r=ib.PortablePath.root,compressionLevel:n,inMemory:a=!1}={}){let o;if(a)o=new YAt.ZipFS(null,{level:n});else{let A=await ib.xfs.mktempPromise(),f=ib.ppath.join(A,"archive.zip");o=new YAt.ZipFS(f,{create:!0,level:n})}let l=ib.ppath.resolve(ib.PortablePath.root,r);return await o.copyPromise(l,e,{baseFs:t,stableTime:!0,stableSort:!0}),o}async function zPo(e,t={}){let r=await ib.xfs.mktempPromise(),n=ib.ppath.join(r,"archive.zip"),a=t.compressionLevel??t.configuration?.get("compressionLevel")??"mixed",o={prefixPath:t.prefixPath,stripComponents:t.stripComponents};return await(t.taskPool??PLn(t.configuration)).run({tmpFile:n,tgz:e,compressionLevel:a,extractBufferOpts:o}),new YAt.ZipFS(n,{level:t.compressionLevel})}async function*qPo(e){let t=new JPo.Parser,r=new XPo.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});t.on("entry",n=>{r.write(n)}),t.on("error",n=>{r.destroy(n)}),t.on("close",()=>{r.destroyed||r.end()}),t.end(e);for await(let n of r){let a=n;yield a,a.resume()}}async function MLn(e,t,{stripComponents:r=0,prefixPath:n=ib.PortablePath.dot}={}){function a(o){if(o.path[0]==="/")return!0;let l=o.path.split(/\//g);return!!(l.some(A=>A==="..")||l.length<=r)}for await(let o of qPo(e)){if(a(o))continue;let l=ib.ppath.normalize(ib.npath.toPortablePath(o.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let A=l.slice(r).join("/"),f=ib.ppath.join(n,A),I=420;switch((o.type==="Directory"||(o.mode??0)&73)&&(I|=73),o.type){case"Directory":t.mkdirpSync(ib.ppath.dirname(f),{chmod:493,utimes:[ib.constants.SAFE_TIME,ib.constants.SAFE_TIME]}),t.mkdirSync(f,{mode:I}),t.utimesSync(f,ib.constants.SAFE_TIME,ib.constants.SAFE_TIME);break;case"OldFile":case"File":t.mkdirpSync(ib.ppath.dirname(f),{chmod:493,utimes:[ib.constants.SAFE_TIME,ib.constants.SAFE_TIME]}),t.writeFileSync(f,await VLn.bufferStream(o),{mode:I}),t.utimesSync(f,ib.constants.SAFE_TIME,ib.constants.SAFE_TIME);break;case"SymbolicLink":t.mkdirpSync(ib.ppath.dirname(f),{chmod:493,utimes:[ib.constants.SAFE_TIME,ib.constants.SAFE_TIME]}),t.symlinkSync(o.linkpath,f),t.lutimesSync(f,ib.constants.SAFE_TIME,ib.constants.SAFE_TIME);break}}return t}});var QLn=H((kdr,YLn)=>{(function(e,t){typeof kdr=="object"?YLn.exports=t():typeof define=="function"&&define.amd?define(t):e.treeify=t()})(kdr,function(){function e(a,o){var l=o?"\u2514":"\u251C";return a?l+="\u2500 ":l+="\u2500\u2500\u2510",l}function t(a,o){var l=[];for(var A in a)a.hasOwnProperty(A)&&(o&&typeof a[A]=="function"||l.push(A));return l}function r(a,o,l,A,f,I,C){var b="",E=0,N,B,F=A.slice(0);if(F.push([o,l])&&A.length>0&&(A.forEach(function(J,ae){ae>0&&(b+=(J[1]?" ":"\u2502")+" "),!B&&J[0]===o&&(B=!0)}),b+=e(a,l)+a,f&&(typeof o!="object"||o instanceof Date)&&(b+=": "+o),B&&(b+=" (circular ref.)"),C(b)),!B&&typeof o=="object"){var Q=t(o,I);Q.forEach(function(J){N=++E===Q.length,r(J,o[J],N,F,f,I,C)})}}var n={};return n.asLines=function(a,o,l,A){var f=typeof l!="function"?l:!1;r(".",a,!1,[],o,f,A||l)},n.asTree=function(a,o,l){var A="";return r(".",a,!1,[],o,l,function(f){A+=f+` -`}),A},n})});var KLn=H(qve=>{"use strict";Object.defineProperty(qve,"__esModule",{value:!0});qve.treeNodeToTreeify=XLn;qve.treeNodeToJson=JLn;qve.emitList=t3o;qve.emitTree=ULn;var $Po=(Wa(),vi(Va)),e3o=QLn(),vIe=$Po.__importStar(uM());function XLn(e,{configuration:t}){let r={},n=0,a=(o,l)=>{let A=Array.isArray(o)?o.entries():Object.entries(o);for(let[f,I]of A){if(!I)continue;let{label:C,value:b,children:E}=I,N=[];typeof C<"u"&&N.push(vIe.applyStyle(t,C,vIe.Style.BOLD)),typeof b<"u"&&N.push(vIe.pretty(t,b[0],b[1])),N.length===0&&N.push(vIe.applyStyle(t,`${f}`,vIe.Style.BOLD));let B=N.join(": ").trim(),F=`\0${n++}\0`,Q=l[`${F}${B}`]={};typeof E<"u"&&a(E,Q)}};if(typeof e.children>"u")throw new Error("The root node must only contain children");return a(e.children,r),r}function JLn(e){let t=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return vIe.json(r.value[0],r.value[1])}let n=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[o,l]of n)l&&(a[r3o(o)]=t(l));return typeof r.value>"u"?a:{value:vIe.json(r.value[0],r.value[1]),children:a}};return t(e)}function t3o(e,{configuration:t,stdout:r,json:n}){let a=e.map(o=>({value:o}));ULn({children:a},{configuration:t,stdout:r,json:n})}function ULn(e,{configuration:t,stdout:r,json:n,separators:a=0}){if(n){let l=Array.isArray(e.children)?e.children.values():Object.values(e.children??{});for(let A of l)A&&r.write(`${JSON.stringify(JLn(A))} -`);return}let o=(0,e3o.asTree)(XLn(e,{configuration:t}),!1,!1);if(o=o.replace(/\0[0-9]+\0/g,""),a>=1&&(o=o.replace(/^([├└]─)/gm,`\u2502 +`),delete J.NODE_ENV;let Se=await YO.pipevp("yarn",["install"],{cwd:e,env:J,stdin:f,stdout:I,stderr:C,end:YO.EndStrategy.ErrorCode});if(Se.code!==0)return Se.code;I.write(` +`);let De=await YO.pipevp("yarn",[...fe,"pack","--filename",np.npath.fromPortablePath(t)],{cwd:e,env:J,stdin:f,stdout:I,stderr:C});return De.code!==0?De.code:0}],[ZZ.Yarn2,async()=>{let fe=a!==null?["workspace",a]:[];J.YARN_ENABLE_INLINE_BUILDS="1";let ue=np.ppath.join(e,Qoe.Filename.lockfile);await np.xfs.existsPromise(ue)||await np.xfs.writeFilePromise(ue,"");let de=await YO.pipevp("yarn",[...fe,"pack","--install-if-needed","--filename",np.npath.fromPortablePath(t)],{cwd:e,env:J,stdin:f,stdout:I,stderr:C});return de.code!==0?de.code:0}],[ZZ.Npm,async()=>{if(a!==null){let tt=new Uve.PassThrough,ze=vIe.bufferStream(tt);tt.pipe(I,{end:!1});let Le=await YO.pipevp("npm",["--version"],{cwd:e,env:J,stdin:f,stdout:tt,stderr:C,end:YO.EndStrategy.Never});if(tt.end(),Le.code!==0)return I.end(),C.end(),Le.code;let Je=(await ze).toString().trim();if(!mPo.satisfiesWithPrereleases(Je,">=7.x")){let ft=aT.makeIdent(null,"npm"),lt=aT.makeDescriptor(ft,Je),Ot=aT.makeDescriptor(ft,">=7.x");throw new Error(`Workspaces aren't supported by ${aT.prettyDescriptor(r,lt)}; please upgrade to ${aT.prettyDescriptor(r,Ot)} (npm has been detected as the primary package manager for ${f8.pretty(r,e,f8.Type.PATH)})`)}}let fe=a!==null?["--workspace",a]:[];delete J.npm_config_user_agent,delete J.npm_config_production,delete J.NPM_CONFIG_PRODUCTION,delete J.NODE_ENV;let ue=await YO.pipevp("npm",["install","--legacy-peer-deps"],{cwd:e,env:J,stdin:f,stdout:I,stderr:C,end:YO.EndStrategy.ErrorCode});if(ue.code!==0)return ue.code;let de=new Uve.PassThrough,be=vIe.bufferStream(de);de.pipe(I);let Se=await YO.pipevp("npm",["pack","--silent",...fe],{cwd:e,env:J,stdin:f,stdout:de,stderr:C});if(Se.code!==0)return Se.code;let De=(await be).toString().trim().replace(/^.*\n/s,""),k=np.ppath.resolve(e,np.npath.toPortablePath(De));return await np.xfs.renamePromise(k,t),0}]]).get(B);if(typeof ne>"u")throw new Error("Assertion failed: Unsupported workflow");let ce=await ne();if(!(ce===0||typeof ce>"u"))throw np.xfs.detachTemp(l),new hLn.ReportError(ddr.MessageName.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${ce}, logs can be found here: ${f8.pretty(r,A,f8.Type.PATH)})`)})})})}async function bPo(e,t,{project:r}){let n=r.tryWorkspaceByLocator(e);if(n!==null)return fdr(n,t);let a=r.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${aT.prettyLocator(r.configuration,e)} not found in the project`);return await fLn.ZipOpenFS.openPromise(async o=>{let l=r.configuration,A=r.configuration.getLinkers(),f={project:r,report:new PAt.StreamReport({stdout:new Uve.PassThrough,configuration:l})},I=A.find(N=>N.supportsPackage(a,f));if(!I)throw new Error(`The package ${aT.prettyLocator(r.configuration,a)} isn't supported by any of the available linkers`);let C=await I.findPackageLocation(a,f),b=new Qoe.CwdFS(C,{baseFs:o});return(await pdr.Manifest.find(Qoe.PortablePath.dot,{baseFs:b})).scripts.has(t)})}async function CLn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await np.xfs.mktempPromise(async f=>{let{manifest:I,env:C,cwd:b}=await _Ln(e,{project:a,binFolder:f,cwd:n,lifecycleScript:t}),E=I.scripts.get(t);if(typeof E>"u")return 1;let N=async()=>await(0,ILn.execute)(E,r,{cwd:b,env:C,stdin:o,stdout:l,stderr:A});return await(await a.configuration.reduceHook(F=>F.wrapScriptExecution,N,a,e,t,{script:E,args:r,cwd:b,env:C,stdin:o,stdout:l,stderr:A}))()})}async function EPo(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await np.xfs.mktempPromise(async f=>{let{env:I,cwd:C}=await _Ln(e,{project:a,binFolder:f,cwd:n});return await(0,ILn.execute)(t,r,{cwd:C,env:I,stdin:o,stdout:l,stderr:A})})}async function SPo(e,{binFolder:t,cwd:r,lifecycleScript:n}){let a=await U5e({project:e.project,locator:e.anchoredLocator,binFolder:t,lifecycleScript:n});return await hdr(t,await ELn(e)),typeof r>"u"&&(r=np.ppath.dirname(await np.xfs.realpathPromise(np.ppath.join(e.cwd,"package.json")))),{manifest:e.manifest,binFolder:t,env:a,cwd:r}}async function _Ln(e,{project:t,binFolder:r,cwd:n,lifecycleScript:a}){let o=t.tryWorkspaceByLocator(e);if(o!==null)return SPo(o,{binFolder:r,cwd:n,lifecycleScript:a});let l=t.storedPackages.get(e.locatorHash);if(!l)throw new Error(`Package for ${aT.prettyLocator(t.configuration,e)} not found in the project`);return await fLn.ZipOpenFS.openPromise(async A=>{let f=t.configuration,I=t.configuration.getLinkers(),C={project:t,report:new PAt.StreamReport({stdout:new Uve.PassThrough,configuration:f})},b=I.find(Q=>Q.supportsPackage(l,C));if(!b)throw new Error(`The package ${aT.prettyLocator(t.configuration,l)} isn't supported by any of the available linkers`);let E=await U5e({project:t,locator:e,binFolder:r,lifecycleScript:a});await hdr(r,await MAt(e,{project:t}));let N=await b.findPackageLocation(l,C),B=new Qoe.CwdFS(N,{baseFs:A}),F=await pdr.Manifest.find(Qoe.PortablePath.dot,{baseFs:B});return typeof n>"u"&&(n=N),{manifest:F,binFolder:r,env:E,cwd:n}})}async function yLn(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l}){return await CLn(e.anchoredLocator,t,r,{cwd:n,project:e.project,stdin:a,stdout:o,stderr:l})}function fdr(e,t){return e.manifest.scripts.has(t)}async function bLn(e,t,{cwd:r,report:n}){let{configuration:a}=e.project,o=null;await np.xfs.mktempPromise(async l=>{let A=np.ppath.join(l,`${t}.log`),f=`# This file contains the result of Yarn calling the "${t}" lifecycle script inside a workspace ("${np.npath.fromPortablePath(e.cwd)}") +`,{stdout:I,stderr:C}=a.getSubprocessStreams(A,{report:n,prefix:aT.prettyLocator(a,e.anchoredLocator),header:f});n.reportInfo(ddr.MessageName.LIFECYCLE_SCRIPT,`Calling the "${t}" lifecycle script`);let b=await yLn(e,t,[],{cwd:r,stdin:o,stdout:I,stderr:C});if(I.end(),C.end(),b!==0)throw np.xfs.detachTemp(l),new hLn.ReportError(ddr.MessageName.LIFECYCLE_SCRIPT,`${(0,IPo.capitalize)(t)} script failed (exit code ${f8.pretty(a,b,f8.Type.NUMBER)}, logs can be found here: ${f8.pretty(a,A,f8.Type.PATH)}); run ${f8.pretty(a,`yarn ${t}`,f8.Type.CODE)} to investigate`)})}async function vPo(e,t,r){fdr(e,t)&&await bLn(e,t,r)}function Idr(e){let t=np.ppath.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0;if(t===".exe"||t===".bin")return!1;let r=Buffer.alloc(4),n;try{n=np.xfs.openSync(e,"r")}catch{return!0}try{np.xfs.readSync(n,r,0,r.length,0)}finally{np.xfs.closeSync(n)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function MAt(e,{project:t}){let r=t.configuration,n=new Map,a=t.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${aT.prettyLocator(r,e)} not found in the project`);let o=new Uve.Writable,l=r.getLinkers(),A={project:t,report:new PAt.StreamReport({configuration:r,stdout:o})},f=new Set([e.locatorHash]);for(let C of a.dependencies.values()){let b=t.storedResolutions.get(C.descriptorHash);if(!b)throw new Error(`Assertion failed: The resolution (${aT.prettyDescriptor(r,C)}) should have been registered`);f.add(b)}let I=await Promise.all(Array.from(f,async C=>{let b=t.storedPackages.get(C);if(!b)throw new Error(`Assertion failed: The package (${C}) should have been registered`);if(b.bin.size===0)return vIe.mapAndFilter.skip;let E=l.find(B=>B.supportsPackage(b,A));if(!E)return vIe.mapAndFilter.skip;let N=null;try{N=await E.findPackageLocation(b,A)}catch(B){if(B.code==="LOCATOR_NOT_INSTALLED")return vIe.mapAndFilter.skip;throw B}return{dependency:b,packageLocation:N}}));for(let C of I){if(C===vIe.mapAndFilter.skip)continue;let{dependency:b,packageLocation:E}=C;for(let[N,B]of b.bin){let F=np.ppath.resolve(E,B);n.set(N,[b,np.npath.fromPortablePath(F),Idr(F)])}}return n}async function ELn(e){return await MAt(e.anchoredLocator,{project:e.project})}async function hdr(e,t){await Promise.all(Array.from(t,([r,[,n,a]])=>a?Yoe(e,r,process.execPath,[n]):Yoe(e,r,n,[])))}async function SLn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A,nodeArgs:f=[],packageAccessibleBinaries:I}){I??=await MAt(e,{project:a});let C=I.get(t);if(!C)throw new Error(`Binary not found (${t}) for ${aT.prettyLocator(a.configuration,e)}`);return await np.xfs.mktempPromise(async b=>{let[,E]=C,N=await U5e({project:a,locator:e,binFolder:b});await hdr(N.BERRY_BIN_FOLDER,I);let B=Idr(np.npath.toPortablePath(E))?YO.pipevp(process.execPath,[...f,E,...r],{cwd:n,env:N,stdin:o,stdout:l,stderr:A}):YO.pipevp(E,r,{cwd:n,env:N,stdin:o,stdout:l,stderr:A}),F;try{F=await B}finally{await np.xfs.removePromise(N.BERRY_BIN_FOLDER)}return F.code})}async function BPo(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A}){return await SLn(e.anchoredLocator,t,r,{project:e.project,cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A})}});var VLn=H($C=>{"use strict";var EC=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),K5e=EC(e=>{"use strict";var t=e&&e.__importDefault||function(Fn){return Fn&&Fn.__esModule?Fn:{default:Fn}};Object.defineProperty(e,"__esModule",{value:!0}),e.Minipass=e.isWritable=e.isReadable=e.isStream=void 0;var r=typeof process=="object"&&process?process:{stdout:null,stderr:null},n=Et("node:events"),a=t(Et("node:stream")),o=Et("node:string_decoder"),l=Fn=>!!Fn&&typeof Fn=="object"&&(Fn instanceof zt||Fn instanceof a.default||(0,e.isReadable)(Fn)||(0,e.isWritable)(Fn));e.isStream=l;var A=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.pipe=="function"&&Fn.pipe!==a.default.Writable.prototype.pipe;e.isReadable=A;var f=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.write=="function"&&typeof Fn.end=="function";e.isWritable=f;var I=Symbol("EOF"),C=Symbol("maybeEmitEnd"),b=Symbol("emittedEnd"),E=Symbol("emittingEnd"),N=Symbol("emittedError"),B=Symbol("closed"),F=Symbol("read"),Q=Symbol("flush"),J=Symbol("flushChunk"),ae=Symbol("encoding"),ne=Symbol("decoder"),ce=Symbol("flowing"),fe=Symbol("paused"),ue=Symbol("resume"),de=Symbol("buffer"),be=Symbol("pipes"),Se=Symbol("bufferLength"),De=Symbol("bufferPush"),k=Symbol("bufferShift"),tt=Symbol("objectMode"),ze=Symbol("destroyed"),Le=Symbol("error"),Je=Symbol("emitData"),ft=Symbol("emitEnd"),lt=Symbol("emitEnd2"),Ot=Symbol("async"),Er=Symbol("abort"),Sr=Symbol("aborted"),jt=Symbol("signal"),Bt=Symbol("dataListeners"),Nt=Symbol("discarded"),Fr=Fn=>Promise.resolve().then(Fn),$t=Fn=>Fn(),Xt=Fn=>Fn==="end"||Fn==="finish"||Fn==="prefinish",lr=Fn=>Fn instanceof ArrayBuffer||!!Fn&&typeof Fn=="object"&&Fn.constructor&&Fn.constructor.name==="ArrayBuffer"&&Fn.byteLength>=0,cr=Fn=>!Buffer.isBuffer(Fn)&&ArrayBuffer.isView(Fn),Ar=class{src;dest;opts;ondrain;constructor(Fn,Nn,Hi){this.src=Fn,this.dest=Nn,this.opts=Hi,this.ondrain=()=>Fn[ue](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(Fn){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},qr=class extends Ar{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(Fn,Nn,Hi){super(Fn,Nn,Hi),this.proxyErrors=Ao=>this.dest.emit("error",Ao),Fn.on("error",this.proxyErrors)}},_n=Fn=>!!Fn.objectMode,ke=Fn=>!Fn.objectMode&&!!Fn.encoding&&Fn.encoding!=="buffer",zt=class extends n.EventEmitter{[ce]=!1;[fe]=!1;[be]=[];[de]=[];[tt];[ae];[Ot];[ne];[I]=!1;[b]=!1;[E]=!1;[B]=!1;[N]=null;[Se]=0;[ze]=!1;[jt];[Sr]=!1;[Bt]=0;[Nt]=!1;writable=!0;readable=!0;constructor(...Fn){let Nn=Fn[0]||{};if(super(),Nn.objectMode&&typeof Nn.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");_n(Nn)?(this[tt]=!0,this[ae]=null):ke(Nn)?(this[ae]=Nn.encoding,this[tt]=!1):(this[tt]=!1,this[ae]=null),this[Ot]=!!Nn.async,this[ne]=this[ae]?new o.StringDecoder(this[ae]):null,Nn&&Nn.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[de]}),Nn&&Nn.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[be]});let{signal:Hi}=Nn;Hi&&(this[jt]=Hi,Hi.aborted?this[Er]():Hi.addEventListener("abort",()=>this[Er]()))}get bufferLength(){return this[Se]}get encoding(){return this[ae]}set encoding(Fn){throw new Error("Encoding must be set at instantiation time")}setEncoding(Fn){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[tt]}set objectMode(Fn){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Ot]}set async(Fn){this[Ot]=this[Ot]||!!Fn}[Er](){this[Sr]=!0,this.emit("abort",this[jt]?.reason),this.destroy(this[jt]?.reason)}get aborted(){return this[Sr]}set aborted(Fn){}write(Fn,Nn,Hi){if(this[Sr])return!1;if(this[I])throw new Error("write after end");if(this[ze])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Nn||(Nn="utf8");let Ao=this[Ot]?Fr:$t;if(!this[tt]&&!Buffer.isBuffer(Fn)){if(cr(Fn))Fn=Buffer.from(Fn.buffer,Fn.byteOffset,Fn.byteLength);else if(lr(Fn))Fn=Buffer.from(Fn);else if(typeof Fn!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[tt]?(this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&Ao(Hi),this[ce]):Fn.length?(typeof Fn=="string"&&!(Nn===this[ae]&&!this[ne]?.lastNeed)&&(Fn=Buffer.from(Fn,Nn)),Buffer.isBuffer(Fn)&&this[ae]&&(Fn=this[ne].write(Fn)),this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&Ao(Hi),this[ce]):(this[Se]!==0&&this.emit("readable"),Hi&&Ao(Hi),this[ce])}read(Fn){if(this[ze])return null;if(this[Nt]=!1,this[Se]===0||Fn===0||Fn&&Fn>this[Se])return this[C](),null;this[tt]&&(Fn=null),this[de].length>1&&!this[tt]&&(this[de]=[this[ae]?this[de].join(""):Buffer.concat(this[de],this[Se])]);let Nn=this[F](Fn||null,this[de][0]);return this[C](),Nn}[F](Fn,Nn){if(this[tt])this[k]();else{let Hi=Nn;Fn===Hi.length||Fn===null?this[k]():typeof Hi=="string"?(this[de][0]=Hi.slice(Fn),Nn=Hi.slice(0,Fn),this[Se]-=Fn):(this[de][0]=Hi.subarray(Fn),Nn=Hi.subarray(0,Fn),this[Se]-=Fn)}return this.emit("data",Nn),!this[de].length&&!this[I]&&this.emit("drain"),Nn}end(Fn,Nn,Hi){return typeof Fn=="function"&&(Hi=Fn,Fn=void 0),typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Fn!==void 0&&this.write(Fn,Nn),Hi&&this.once("end",Hi),this[I]=!0,this.writable=!1,(this[ce]||!this[fe])&&this[C](),this}[ue](){this[ze]||(!this[Bt]&&!this[be].length&&(this[Nt]=!0),this[fe]=!1,this[ce]=!0,this.emit("resume"),this[de].length?this[Q]():this[I]?this[C]():this.emit("drain"))}resume(){return this[ue]()}pause(){this[ce]=!1,this[fe]=!0,this[Nt]=!1}get destroyed(){return this[ze]}get flowing(){return this[ce]}get paused(){return this[fe]}[De](Fn){this[tt]?this[Se]+=1:this[Se]+=Fn.length,this[de].push(Fn)}[k](){return this[tt]?this[Se]-=1:this[Se]-=this[de][0].length,this[de].shift()}[Q](Fn=!1){do;while(this[J](this[k]())&&this[de].length);!Fn&&!this[de].length&&!this[I]&&this.emit("drain")}[J](Fn){return this.emit("data",Fn),this[ce]}pipe(Fn,Nn){if(this[ze])return Fn;this[Nt]=!1;let Hi=this[b];return Nn=Nn||{},Fn===r.stdout||Fn===r.stderr?Nn.end=!1:Nn.end=Nn.end!==!1,Nn.proxyErrors=!!Nn.proxyErrors,Hi?Nn.end&&Fn.end():(this[be].push(Nn.proxyErrors?new qr(this,Fn,Nn):new Ar(this,Fn,Nn)),this[Ot]?Fr(()=>this[ue]()):this[ue]()),Fn}unpipe(Fn){let Nn=this[be].find(Hi=>Hi.dest===Fn);Nn&&(this[be].length===1?(this[ce]&&this[Bt]===0&&(this[ce]=!1),this[be]=[]):this[be].splice(this[be].indexOf(Nn),1),Nn.unpipe())}addListener(Fn,Nn){return this.on(Fn,Nn)}on(Fn,Nn){let Hi=super.on(Fn,Nn);if(Fn==="data")this[Nt]=!1,this[Bt]++,!this[be].length&&!this[ce]&&this[ue]();else if(Fn==="readable"&&this[Se]!==0)super.emit("readable");else if(Xt(Fn)&&this[b])super.emit(Fn),this.removeAllListeners(Fn);else if(Fn==="error"&&this[N]){let Ao=Nn;this[Ot]?Fr(()=>Ao.call(this,this[N])):Ao.call(this,this[N])}return Hi}removeListener(Fn,Nn){return this.off(Fn,Nn)}off(Fn,Nn){let Hi=super.off(Fn,Nn);return Fn==="data"&&(this[Bt]=this.listeners("data").length,this[Bt]===0&&!this[Nt]&&!this[be].length&&(this[ce]=!1)),Hi}removeAllListeners(Fn){let Nn=super.removeAllListeners(Fn);return(Fn==="data"||Fn===void 0)&&(this[Bt]=0,!this[Nt]&&!this[be].length&&(this[ce]=!1)),Nn}get emittedEnd(){return this[b]}[C](){!this[E]&&!this[b]&&!this[ze]&&this[de].length===0&&this[I]&&(this[E]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[B]&&this.emit("close"),this[E]=!1)}emit(Fn,...Nn){let Hi=Nn[0];if(Fn!=="error"&&Fn!=="close"&&Fn!==ze&&this[ze])return!1;if(Fn==="data")return!this[tt]&&!Hi?!1:this[Ot]?(Fr(()=>this[Je](Hi)),!0):this[Je](Hi);if(Fn==="end")return this[ft]();if(Fn==="close"){if(this[B]=!0,!this[b]&&!this[ze])return!1;let Vr=super.emit("close");return this.removeAllListeners("close"),Vr}else if(Fn==="error"){this[N]=Hi,super.emit(Le,Hi);let Vr=!this[jt]||this.listeners("error").length?super.emit("error",Hi):!1;return this[C](),Vr}else if(Fn==="resume"){let Vr=super.emit("resume");return this[C](),Vr}else if(Fn==="finish"||Fn==="prefinish"){let Vr=super.emit(Fn);return this.removeAllListeners(Fn),Vr}let Ao=super.emit(Fn,...Nn);return this[C](),Ao}[Je](Fn){for(let Hi of this[be])Hi.dest.write(Fn)===!1&&this.pause();let Nn=this[Nt]?!1:super.emit("data",Fn);return this[C](),Nn}[ft](){return this[b]?!1:(this[b]=!0,this.readable=!1,this[Ot]?(Fr(()=>this[lt]()),!0):this[lt]())}[lt](){if(this[ne]){let Nn=this[ne].end();if(Nn){for(let Hi of this[be])Hi.dest.write(Nn);this[Nt]||super.emit("data",Nn)}}for(let Nn of this[be])Nn.end();let Fn=super.emit("end");return this.removeAllListeners("end"),Fn}async collect(){let Fn=Object.assign([],{dataLength:0});this[tt]||(Fn.dataLength=0);let Nn=this.promise();return this.on("data",Hi=>{Fn.push(Hi),this[tt]||(Fn.dataLength+=Hi.length)}),await Nn,Fn}async concat(){if(this[tt])throw new Error("cannot concat in objectMode");let Fn=await this.collect();return this[ae]?Fn.join(""):Buffer.concat(Fn,Fn.dataLength)}async promise(){return new Promise((Fn,Nn)=>{this.on(ze,()=>Nn(new Error("stream destroyed"))),this.on("error",Hi=>Nn(Hi)),this.on("end",()=>Fn())})}[Symbol.asyncIterator](){this[Nt]=!1;let Fn=!1,Nn=async()=>(this.pause(),Fn=!0,{value:void 0,done:!0});return{next:()=>{if(Fn)return Nn();let Hi=this.read();if(Hi!==null)return Promise.resolve({done:!1,value:Hi});if(this[I])return Nn();let Ao,Vr,xi=Gc=>{this.off("data",no),this.off("end",ga),this.off(ze,Ya),Nn(),Vr(Gc)},no=Gc=>{this.off("error",xi),this.off("end",ga),this.off(ze,Ya),this.pause(),Ao({value:Gc,done:!!this[I]})},ga=()=>{this.off("error",xi),this.off("data",no),this.off(ze,Ya),Nn(),Ao({done:!0,value:void 0})},Ya=()=>xi(new Error("stream destroyed"));return new Promise((Gc,al)=>{Vr=al,Ao=Gc,this.once(ze,Ya),this.once("error",xi),this.once("end",ga),this.once("data",no)})},throw:Nn,return:Nn,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[Nt]=!1;let Fn=!1,Nn=()=>(this.pause(),this.off(Le,Nn),this.off(ze,Nn),this.off("end",Nn),Fn=!0,{done:!0,value:void 0}),Hi=()=>{if(Fn)return Nn();let Ao=this.read();return Ao===null?Nn():{done:!1,value:Ao}};return this.once("end",Nn),this.once(Le,Nn),this.once(ze,Nn),{next:Hi,throw:Nn,return:Nn,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(Fn){if(this[ze])return Fn?this.emit("error",Fn):this.emit(ze),this;this[ze]=!0,this[Nt]=!0,this[de].length=0,this[Se]=0;let Nn=this;return typeof Nn.close=="function"&&!this[B]&&Nn.close(),Fn?this.emit("error",Fn):this.emit(ze),this}static get isStream(){return e.isStream}};e.Minipass=zt}),j5e=EC(e=>{"use strict";var t=e&&e.__importDefault||function(Bt){return Bt&&Bt.__esModule?Bt:{default:Bt}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteStreamSync=e.WriteStream=e.ReadStreamSync=e.ReadStream=void 0;var r=t(Et("events")),n=t(Et("fs")),a=K5e(),o=n.default.writev,l=Symbol("_autoClose"),A=Symbol("_close"),f=Symbol("_ended"),I=Symbol("_fd"),C=Symbol("_finished"),b=Symbol("_flags"),E=Symbol("_flush"),N=Symbol("_handleChunk"),B=Symbol("_makeBuf"),F=Symbol("_mode"),Q=Symbol("_needDrain"),J=Symbol("_onerror"),ae=Symbol("_onopen"),ne=Symbol("_onread"),ce=Symbol("_onwrite"),fe=Symbol("_open"),ue=Symbol("_path"),de=Symbol("_pos"),be=Symbol("_queue"),Se=Symbol("_read"),De=Symbol("_readSize"),k=Symbol("_reading"),tt=Symbol("_remain"),ze=Symbol("_size"),Le=Symbol("_write"),Je=Symbol("_writing"),ft=Symbol("_defaultFlag"),lt=Symbol("_errored"),Ot=class extends a.Minipass{[lt]=!1;[I];[ue];[De];[k]=!1;[ze];[tt];[l];constructor(Bt,Nt){if(Nt=Nt||{},super(Nt),this.readable=!0,this.writable=!1,typeof Bt!="string")throw new TypeError("path must be a string");this[lt]=!1,this[I]=typeof Nt.fd=="number"?Nt.fd:void 0,this[ue]=Bt,this[De]=Nt.readSize||16*1024*1024,this[k]=!1,this[ze]=typeof Nt.size=="number"?Nt.size:1/0,this[tt]=this[ze],this[l]=typeof Nt.autoClose=="boolean"?Nt.autoClose:!0,typeof this[I]=="number"?this[Se]():this[fe]()}get fd(){return this[I]}get path(){return this[ue]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[fe](){n.default.open(this[ue],"r",(Bt,Nt)=>this[ae](Bt,Nt))}[ae](Bt,Nt){Bt?this[J](Bt):(this[I]=Nt,this.emit("open",Nt),this[Se]())}[B](){return Buffer.allocUnsafe(Math.min(this[De],this[tt]))}[Se](){if(!this[k]){this[k]=!0;let Bt=this[B]();if(Bt.length===0)return process.nextTick(()=>this[ne](null,0,Bt));n.default.read(this[I],Bt,0,Bt.length,null,(Nt,Fr,$t)=>this[ne](Nt,Fr,$t))}}[ne](Bt,Nt,Fr){this[k]=!1,Bt?this[J](Bt):this[N](Nt,Fr)&&this[Se]()}[A](){if(this[l]&&typeof this[I]=="number"){let Bt=this[I];this[I]=void 0,n.default.close(Bt,Nt=>Nt?this.emit("error",Nt):this.emit("close"))}}[J](Bt){this[k]=!0,this[A](),this.emit("error",Bt)}[N](Bt,Nt){let Fr=!1;return this[tt]-=Bt,Bt>0&&(Fr=super.write(Btthis[ae](Bt,Nt))}[ae](Bt,Nt){this[ft]&&this[b]==="r+"&&Bt&&Bt.code==="ENOENT"?(this[b]="w",this[fe]()):Bt?this[J](Bt):(this[I]=Nt,this.emit("open",Nt),this[Je]||this[E]())}end(Bt,Nt){return Bt&&this.write(Bt,Nt),this[f]=!0,!this[Je]&&!this[be].length&&typeof this[I]=="number"&&this[ce](null,0),this}write(Bt,Nt){return typeof Bt=="string"&&(Bt=Buffer.from(Bt,Nt)),this[f]?(this.emit("error",new Error("write() after end()")),!1):this[I]===void 0||this[Je]||this[be].length?(this[be].push(Bt),this[Q]=!0,!1):(this[Je]=!0,this[Le](Bt),!0)}[Le](Bt){n.default.write(this[I],Bt,0,Bt.length,this[de],(Nt,Fr)=>this[ce](Nt,Fr))}[ce](Bt,Nt){Bt?this[J](Bt):(this[de]!==void 0&&typeof Nt=="number"&&(this[de]+=Nt),this[be].length?this[E]():(this[Je]=!1,this[f]&&!this[C]?(this[C]=!0,this[A](),this.emit("finish")):this[Q]&&(this[Q]=!1,this.emit("drain"))))}[E](){if(this[be].length===0)this[f]&&this[ce](null,0);else if(this[be].length===1)this[Le](this[be].pop());else{let Bt=this[be];this[be]=[],o(this[I],Bt,this[de],(Nt,Fr)=>this[ce](Nt,Fr))}}[A](){if(this[l]&&typeof this[I]=="number"){let Bt=this[I];this[I]=void 0,n.default.close(Bt,Nt=>Nt?this.emit("error",Nt):this.emit("close"))}}};e.WriteStream=Sr;var jt=class extends Sr{[fe](){let Bt;if(this[ft]&&this[b]==="r+")try{Bt=n.default.openSync(this[ue],this[b],this[F])}catch(Nt){if(Nt?.code==="ENOENT")return this[b]="w",this[fe]();throw Nt}else Bt=n.default.openSync(this[ue],this[b],this[F]);this[ae](null,Bt)}[A](){if(this[l]&&typeof this[I]=="number"){let Bt=this[I];this[I]=void 0,n.default.closeSync(Bt),this.emit("close")}}[Le](Bt){let Nt=!0;try{this[ce](null,n.default.writeSync(this[I],Bt,0,Bt.length,this[de])),Nt=!1}finally{if(Nt)try{this[A]()}catch{}}}};e.WriteStreamSync=jt}),Cdr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.dealias=e.isNoFile=e.isFile=e.isAsync=e.isSync=e.isAsyncNoFile=e.isSyncNoFile=e.isAsyncFile=e.isSyncFile=void 0;var t=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),r=E=>!!E.sync&&!!E.file;e.isSyncFile=r;var n=E=>!E.sync&&!!E.file;e.isAsyncFile=n;var a=E=>!!E.sync&&!E.file;e.isSyncNoFile=a;var o=E=>!E.sync&&!E.file;e.isAsyncNoFile=o;var l=E=>!!E.sync;e.isSync=l;var A=E=>!E.sync;e.isAsync=A;var f=E=>!!E.file;e.isFile=f;var I=E=>!E.file;e.isNoFile=I;var C=E=>t.get(E)||E,b=(E={})=>{if(!E)return{};let N={};for(let[B,F]of Object.entries(E)){let Q=C(B);N[Q]=F}return N.chmod===void 0&&N.noChmod===!1&&(N.chmod=!0),delete N.noChmod,N};e.dealias=b}),z5e=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.makeCommand=void 0;var t=Cdr(),r=(n,a,o,l,A)=>Object.assign((f=[],I,C)=>{Array.isArray(f)&&(I=f,f={}),typeof I=="function"&&(C=I,I=void 0),I=I?Array.from(I):[];let b=(0,t.dealias)(f);if(A?.(b,I),(0,t.isSyncFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return n(b,I)}else if((0,t.isAsyncFile)(b)){let E=a(b,I);return C?E.then(()=>C(),C):E}else if((0,t.isSyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return o(b,I)}else if((0,t.isAsyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback only supported with file option");return l(b,I)}throw new Error("impossible options??")},{syncFile:n,asyncFile:a,syncNoFile:o,asyncNoFile:l,validate:A});e.makeCommand=r}),vLn=EC(e=>{"use strict";var t=e&&e.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(e,"__esModule",{value:!0}),e.constants=void 0;var r=t(Et("zlib")),n=r.default.constants||{ZLIB_VERNUM:4736};e.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},n))}),BLn=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(lt,Ot,Er,Sr){Sr===void 0&&(Sr=Er);var jt=Object.getOwnPropertyDescriptor(Ot,Er);(!jt||("get"in jt?!Ot.__esModule:jt.writable||jt.configurable))&&(jt={enumerable:!0,get:function(){return Ot[Er]}}),Object.defineProperty(lt,Sr,jt)}:function(lt,Ot,Er,Sr){Sr===void 0&&(Sr=Er),lt[Sr]=Ot[Er]}),r=e&&e.__setModuleDefault||(Object.create?function(lt,Ot){Object.defineProperty(lt,"default",{enumerable:!0,value:Ot})}:function(lt,Ot){lt.default=Ot}),n=e&&e.__importStar||function(){var lt=function(Ot){return lt=Object.getOwnPropertyNames||function(Er){var Sr=[];for(var jt in Er)Object.prototype.hasOwnProperty.call(Er,jt)&&(Sr[Sr.length]=jt);return Sr},lt(Ot)};return function(Ot){if(Ot&&Ot.__esModule)return Ot;var Er={};if(Ot!=null)for(var Sr=lt(Ot),jt=0;jtlt,B=E?.writable===!0||E?.set!==void 0?lt=>{l.Buffer.concat=lt?N:b}:lt=>{},F=Symbol("_superWrite"),Q=class extends Error{code;errno;constructor(lt,Ot){super("zlib: "+lt.message,{cause:lt}),this.code=lt.code,this.errno=lt.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+lt.message,Error.captureStackTrace(this,Ot??this.constructor)}get name(){return"ZlibError"}};e.ZlibError=Q;var J=Symbol("flushFlag"),ae=class extends A.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(lt,Ot){if(!lt||typeof lt!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(lt),this.#n=lt.flush??0,this.#r=lt.finishFlush??0,this.#i=lt.fullFlushFlag??0,typeof f[Ot]!="function")throw new TypeError("Compression method not supported: "+Ot);try{this.#s=new f[Ot](lt)}catch(Er){throw new Q(Er,this.constructor)}this.#o=Er=>{this.#e||(this.#e=!0,this.close(),this.emit("error",Er))},this.#s?.on("error",Er=>this.#o(new Q(Er))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,o.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(lt){this.ended||(typeof lt!="number"&&(lt=this.#i),this.write(Object.assign(l.Buffer.alloc(0),{[J]:lt})))}end(lt,Ot,Er){return typeof lt=="function"&&(Er=lt,Ot=void 0,lt=void 0),typeof Ot=="function"&&(Er=Ot,Ot=void 0),lt&&(Ot?this.write(lt,Ot):this.write(lt)),this.flush(this.#r),this.#t=!0,super.end(Er)}get ended(){return this.#t}[F](lt){return super.write(lt)}write(lt,Ot,Er){if(typeof Ot=="function"&&(Er=Ot,Ot="utf8"),typeof lt=="string"&&(lt=l.Buffer.from(lt,Ot)),this.#e)return;(0,o.default)(this.#s,"zlib binding closed");let Sr=this.#s._handle,jt=Sr.close;Sr.close=()=>{};let Bt=this.#s.close;this.#s.close=()=>{},B(!0);let Nt;try{let $t=typeof lt[J]=="number"?lt[J]:this.#n;Nt=this.#s._processChunk(lt,$t),B(!1)}catch($t){B(!1),this.#o(new Q($t,this.write))}finally{this.#s&&(this.#s._handle=Sr,Sr.close=jt,this.#s.close=Bt,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",$t=>this.#o(new Q($t,this.write)));let Fr;if(Nt)if(Array.isArray(Nt)&&Nt.length>0){let $t=Nt[0];Fr=this[F](l.Buffer.from($t));for(let Xt=1;Xt{typeof Sr=="function"&&(jt=Sr,Sr=this.flushFlag),this.flush(Sr),jt?.()};try{this.handle.params(lt,Ot)}finally{this.handle.flush=Er}this.handle&&(this.#e=lt,this.#t=Ot)}}}};e.Zlib=ne;var ce=class extends ne{constructor(lt){super(lt,"Deflate")}};e.Deflate=ce;var fe=class extends ne{constructor(lt){super(lt,"Inflate")}};e.Inflate=fe;var ue=class extends ne{#e;constructor(lt){super(lt,"Gzip"),this.#e=lt&&!!lt.portable}[F](lt){return this.#e?(this.#e=!1,lt[9]=255,super[F](lt)):super[F](lt)}};e.Gzip=ue;var de=class extends ne{constructor(lt){super(lt,"Gunzip")}};e.Gunzip=de;var be=class extends ne{constructor(lt){super(lt,"DeflateRaw")}};e.DeflateRaw=be;var Se=class extends ne{constructor(lt){super(lt,"InflateRaw")}};e.InflateRaw=Se;var De=class extends ne{constructor(lt){super(lt,"Unzip")}};e.Unzip=De;var k=class extends ae{constructor(lt,Ot){lt=lt||{},lt.flush=lt.flush||I.constants.BROTLI_OPERATION_PROCESS,lt.finishFlush=lt.finishFlush||I.constants.BROTLI_OPERATION_FINISH,lt.fullFlushFlag=I.constants.BROTLI_OPERATION_FLUSH,super(lt,Ot)}},tt=class extends k{constructor(lt){super(lt,"BrotliCompress")}};e.BrotliCompress=tt;var ze=class extends k{constructor(lt){super(lt,"BrotliDecompress")}};e.BrotliDecompress=ze;var Le=class extends ae{constructor(lt,Ot){lt=lt||{},lt.flush=lt.flush||I.constants.ZSTD_e_continue,lt.finishFlush=lt.finishFlush||I.constants.ZSTD_e_end,lt.fullFlushFlag=I.constants.ZSTD_e_flush,super(lt,Ot)}},Je=class extends Le{constructor(lt){super(lt,"ZstdCompress")}};e.ZstdCompress=Je;var ft=class extends Le{constructor(lt){super(lt,"ZstdDecompress")}};e.ZstdDecompress=ft}),wPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.parse=e.encode=void 0;var t=(I,C)=>{if(Number.isSafeInteger(I))I<0?n(I,C):r(I,C);else throw Error("cannot encode number outside of javascript safe integer range");return C};e.encode=t;var r=(I,C)=>{C[0]=128;for(var b=C.length;b>1;b--)C[b-1]=I&255,I=Math.floor(I/256)},n=(I,C)=>{C[0]=255;var b=!1;I=I*-1;for(var E=C.length;E>1;E--){var N=I&255;I=Math.floor(I/256),b?C[E-1]=A(N):N===0?C[E-1]=0:(b=!0,C[E-1]=f(N))}},a=I=>{let C=I[0],b=C===128?l(I.subarray(1,I.length)):C===255?o(I):null;if(b===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(b))throw Error("parsed number outside of javascript safe integer range");return b};e.parse=a;var o=I=>{for(var C=I.length,b=0,E=!1,N=C-1;N>-1;N--){var B=Number(I[N]),F;E?F=A(B):B===0?F=B:(E=!0,F=f(B)),F!==0&&(b-=F*Math.pow(256,C-N-1))}return b},l=I=>{for(var C=I.length,b=0,E=C-1;E>-1;E--){var N=Number(I[E]);N!==0&&(b+=N*Math.pow(256,C-E-1))}return b},A=I=>(255^I)&255,f=I=>(255^I)+1&255}),wLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.code=e.name=e.isName=e.isCode=void 0;var t=n=>e.name.has(n);e.isCode=t;var r=n=>e.code.has(n);e.isName=r,e.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),e.code=new Map(Array.from(e.name).map(n=>[n[1],n[0]]))}),q5e=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(de,be,Se,De){De===void 0&&(De=Se);var k=Object.getOwnPropertyDescriptor(be,Se);(!k||("get"in k?!be.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return be[Se]}}),Object.defineProperty(de,De,k)}:function(de,be,Se,De){De===void 0&&(De=Se),de[De]=be[Se]}),r=e&&e.__setModuleDefault||(Object.create?function(de,be){Object.defineProperty(de,"default",{enumerable:!0,value:be})}:function(de,be){de.default=be}),n=e&&e.__importStar||function(){var de=function(be){return de=Object.getOwnPropertyNames||function(Se){var De=[];for(var k in Se)Object.prototype.hasOwnProperty.call(Se,k)&&(De[De.length]=k);return De},de(be)};return function(be){if(be&&be.__esModule)return be;var Se={};if(be!=null)for(var De=de(be),k=0;k=be+512))throw new Error("need 512 bytes for header");this.path=Se?.path??I(de,be,100),this.mode=Se?.mode??De?.mode??E(de,be+100,8),this.uid=Se?.uid??De?.uid??E(de,be+108,8),this.gid=Se?.gid??De?.gid??E(de,be+116,8),this.size=Se?.size??De?.size??E(de,be+124,12),this.mtime=Se?.mtime??De?.mtime??C(de,be+136,12),this.cksum=E(de,be+148,12),De&&this.#t(De,!0),Se&&this.#t(Se);let k=I(de,be+156,1);if(l.isCode(k)&&(this.#e=k||"0"),this.#e==="0"&&this.path.slice(-1)==="/"&&(this.#e="5"),this.#e==="5"&&(this.size=0),this.linkpath=I(de,be+157,100),de.subarray(be+257,be+265).toString()==="ustar\x0000")if(this.uname=Se?.uname??De?.uname??I(de,be+265,32),this.gname=Se?.gname??De?.gname??I(de,be+297,32),this.devmaj=Se?.devmaj??De?.devmaj??E(de,be+329,8)??0,this.devmin=Se?.devmin??De?.devmin??E(de,be+337,8)??0,de[be+475]!==0){let ze=I(de,be+345,155);this.path=ze+"/"+this.path}else{let ze=I(de,be+345,130);ze&&(this.path=ze+"/"+this.path),this.atime=Se?.atime??De?.atime??C(de,be+476,12),this.ctime=Se?.ctime??De?.ctime??C(de,be+488,12)}let tt=256;for(let ze=be;ze!(De==null||Se==="path"&&be||Se==="linkpath"&&be||Se==="global"))))}encode(de,be=0){if(de||(de=this.block=Buffer.alloc(512)),this.#e==="Unsupported"&&(this.#e="0"),!(de.length>=be+512))throw new Error("need 512 bytes for header");let Se=this.ctime||this.atime?130:155,De=f(this.path||"",Se),k=De[0],tt=De[1];this.needPax=!!De[2],this.needPax=ue(de,be,100,k)||this.needPax,this.needPax=Q(de,be+100,8,this.mode)||this.needPax,this.needPax=Q(de,be+108,8,this.uid)||this.needPax,this.needPax=Q(de,be+116,8,this.gid)||this.needPax,this.needPax=Q(de,be+124,12,this.size)||this.needPax,this.needPax=ce(de,be+136,12,this.mtime)||this.needPax,de[be+156]=Number(this.#e.codePointAt(0)),this.needPax=ue(de,be+157,100,this.linkpath)||this.needPax,de.write("ustar\x0000",be+257,8),this.needPax=ue(de,be+265,32,this.uname)||this.needPax,this.needPax=ue(de,be+297,32,this.gname)||this.needPax,this.needPax=Q(de,be+329,8,this.devmaj)||this.needPax,this.needPax=Q(de,be+337,8,this.devmin)||this.needPax,this.needPax=ue(de,be+345,Se,tt)||this.needPax,de[be+475]!==0?this.needPax=ue(de,be+345,155,tt)||this.needPax:(this.needPax=ue(de,be+345,130,tt)||this.needPax,this.needPax=ce(de,be+476,12,this.atime)||this.needPax,this.needPax=ce(de,be+488,12,this.ctime)||this.needPax);let ze=256;for(let Le=be;Le{let Se=de,De="",k,tt=a.posix.parse(de).root||".";if(Buffer.byteLength(Se)<100)k=[Se,De,!1];else{De=a.posix.dirname(Se),Se=a.posix.basename(Se);do Buffer.byteLength(Se)<=100&&Buffer.byteLength(De)<=be?k=[Se,De,!1]:Buffer.byteLength(Se)>100&&Buffer.byteLength(De)<=be?k=[Se.slice(0,99),De,!0]:(Se=a.posix.join(a.posix.basename(De),Se),De=a.posix.dirname(De));while(De!==tt&&k===void 0);k||(k=[de.slice(0,99),"",!0])}return k},I=(de,be,Se)=>de.subarray(be,be+Se).toString("utf8").replace(/\0.*/,""),C=(de,be,Se)=>b(E(de,be,Se)),b=de=>de===void 0?void 0:new Date(de*1e3),E=(de,be,Se)=>Number(de[be])&128?o.parse(de.subarray(be,be+Se)):B(de,be,Se),N=de=>isNaN(de)?void 0:de,B=(de,be,Se)=>N(parseInt(de.subarray(be,be+Se).toString("utf8").replace(/\0.*$/,"").trim(),8)),F={12:8589934591,8:2097151},Q=(de,be,Se,De)=>De===void 0?!1:De>F[Se]||De<0?(o.encode(De,de.subarray(be,be+Se)),!0):(J(de,be,Se,De),!1),J=(de,be,Se,De)=>de.write(ae(De,Se),be,Se,"ascii"),ae=(de,be)=>ne(Math.floor(de).toString(8),be),ne=(de,be)=>(de.length===be-1?de:new Array(be-de.length-1).join("0")+de+" ")+"\0",ce=(de,be,Se,De)=>De===void 0?!1:Q(de,be,Se,De.getTime()/1e3),fe=new Array(156).join("\0"),ue=(de,be,Se,De)=>De===void 0?!1:(de.write(De+fe,be,Se,"utf8"),De.length!==Buffer.byteLength(De)||De.length>Se)}),_dr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Pax=void 0;var t=Et("node:path"),r=q5e(),n=class TLn{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(f,I=!1){this.atime=f.atime,this.charset=f.charset,this.comment=f.comment,this.ctime=f.ctime,this.dev=f.dev,this.gid=f.gid,this.global=I,this.gname=f.gname,this.ino=f.ino,this.linkpath=f.linkpath,this.mtime=f.mtime,this.nlink=f.nlink,this.path=f.path,this.size=f.size,this.uid=f.uid,this.uname=f.uname}encode(){let f=this.encodeBody();if(f==="")return Buffer.allocUnsafe(0);let I=Buffer.byteLength(f),C=512*Math.ceil(1+I/512),b=Buffer.allocUnsafe(C);for(let E=0;E<512;E++)b[E]=0;new r.Header({path:("PaxHeader/"+(0,t.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:I,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(b),b.write(f,512,I,"utf8");for(let E=I+512;E=Math.pow(10,N)&&(N+=1),N+E+b}static parse(f,I,C=!1){return new TLn(a(o(f),I),C)}};e.Pax=n;var a=(A,f)=>f?Object.assign({},f,A):A,o=A=>A.replace(/\n$/,"").split(` +`).reduce(l,Object.create(null)),l=(A,f)=>{let I=parseInt(f,10);if(I!==Buffer.byteLength(f)+1)return A;f=f.slice((I+" ").length);let C=f.split("="),b=C.shift();if(!b)return A;let E=b.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),N=C.join("=");return A[E]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(E)?new Date(Number(N)*1e3):/^[0-9]+$/.test(N)?+N:N,A}}),$5e=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeWindowsPath=void 0;var t=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;e.normalizeWindowsPath=t!=="win32"?r=>r:r=>r&&r.replaceAll(/\\/g,"/")}),ydr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ReadEntry=void 0;var t=K5e(),r=$5e(),n=class extends t.Minipass{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(a,o,l){switch(super({}),this.pause(),this.extended=o,this.globalExtended=l,this.header=a,this.remain=a.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=a.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!a.path)throw new Error("no path provided for tar.ReadEntry");this.path=(0,r.normalizeWindowsPath)(a.path),this.mode=a.mode,this.mode&&(this.mode=this.mode&4095),this.uid=a.uid,this.gid=a.gid,this.uname=a.uname,this.gname=a.gname,this.size=this.remain,this.mtime=a.mtime,this.atime=a.atime,this.ctime=a.ctime,this.linkpath=a.linkpath?(0,r.normalizeWindowsPath)(a.linkpath):void 0,this.uname=a.uname,this.gname=a.gname,o&&this.#e(o),l&&this.#e(l,!0)}write(a){let o=a.length;if(o>this.blockRemain)throw new Error("writing more to entry than is appropriate");let l=this.remain,A=this.blockRemain;return this.remain=Math.max(0,l-o),this.blockRemain=Math.max(0,A-o),this.ignore?!0:l>=o?super.write(a):super.write(a.subarray(0,l))}#e(a,o=!1){a.path&&(a.path=(0,r.normalizeWindowsPath)(a.path)),a.linkpath&&(a.linkpath=(0,r.normalizeWindowsPath)(a.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(a).filter(([l,A])=>!(A==null||l==="path"&&o))))}};e.ReadEntry=n}),bdr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.warnMethod=void 0;var t=(r,n,a,o={})=>{r.file&&(o.file=r.file),r.cwd&&(o.cwd=r.cwd),o.code=a instanceof Error&&a.code||n,o.tarCode=n,!r.strict&&o.recoverable!==!1?(a instanceof Error&&(o=Object.assign(a,o),a=a.message),r.emit("warn",n,a,o)):a instanceof Error?r.emit("error",Object.assign(a,o)):r.emit("error",Object.assign(new Error(`${n}: ${a}`),o))};e.warnMethod=t}),Edr=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Parser=void 0;var t=Et("events"),r=BLn(),n=q5e(),a=_dr(),o=ydr(),l=bdr(),A=1024*1024,f=Buffer.from([31,139]),I=Buffer.from([40,181,47,253]),C=Math.max(f.length,I.length),b=Symbol("state"),E=Symbol("writeEntry"),N=Symbol("readEntry"),B=Symbol("nextEntry"),F=Symbol("processEntry"),Q=Symbol("extendedHeader"),J=Symbol("globalExtendedHeader"),ae=Symbol("meta"),ne=Symbol("emitMeta"),ce=Symbol("buffer"),fe=Symbol("queue"),ue=Symbol("ended"),de=Symbol("emittedEnd"),be=Symbol("emit"),Se=Symbol("unzip"),De=Symbol("consumeChunk"),k=Symbol("consumeChunkSub"),tt=Symbol("consumeBody"),ze=Symbol("consumeMeta"),Le=Symbol("consumeHeader"),Je=Symbol("consuming"),ft=Symbol("bufferConcat"),lt=Symbol("maybeEnd"),Ot=Symbol("writing"),Er=Symbol("aborted"),Sr=Symbol("onDone"),jt=Symbol("sawValidEntry"),Bt=Symbol("sawNullBlock"),Nt=Symbol("sawEOF"),Fr=Symbol("closeStream"),$t=()=>!0,Xt=class extends t.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[fe]=[];[ce];[N];[E];[b]="begin";[ae]="";[Q];[J];[ue]=!1;[Se];[Er]=!1;[jt];[Bt]=!1;[Nt]=!1;[Ot]=!1;[Je]=!1;[de]=!1;constructor(lr={}){super(),this.file=lr.file||"",this.on(Sr,()=>{(this[b]==="begin"||this[jt]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),lr.ondone?this.on(Sr,lr.ondone):this.on(Sr,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!lr.strict,this.maxMetaEntrySize=lr.maxMetaEntrySize||A,this.filter=typeof lr.filter=="function"?lr.filter:$t;let cr=lr.file&&(lr.file.endsWith(".tar.br")||lr.file.endsWith(".tbr"));this.brotli=!(lr.gzip||lr.zstd)&&lr.brotli!==void 0?lr.brotli:cr?void 0:!1;let Ar=lr.file&&(lr.file.endsWith(".tar.zst")||lr.file.endsWith(".tzst"));this.zstd=!(lr.gzip||lr.brotli)&&lr.zstd!==void 0?lr.zstd:Ar?!0:void 0,this.on("end",()=>this[Fr]()),typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn),typeof lr.onReadEntry=="function"&&this.on("entry",lr.onReadEntry)}warn(lr,cr,Ar={}){(0,l.warnMethod)(this,lr,cr,Ar)}[Le](lr,cr){this[jt]===void 0&&(this[jt]=!1);let Ar;try{Ar=new n.Header(lr,cr,this[Q],this[J])}catch(qr){return this.warn("TAR_ENTRY_INVALID",qr)}if(Ar.nullBlock)this[Bt]?(this[Nt]=!0,this[b]==="begin"&&(this[b]="header"),this[be]("eof")):(this[Bt]=!0,this[be]("nullBlock"));else if(this[Bt]=!1,!Ar.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:Ar});else if(!Ar.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:Ar});else{let qr=Ar.type;if(/^(Symbolic)?Link$/.test(qr)&&!Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:Ar});else if(!/^(Symbolic)?Link$/.test(qr)&&!/^(Global)?ExtendedHeader$/.test(qr)&&Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:Ar});else{let _n=this[E]=new o.ReadEntry(Ar,this[Q],this[J]);if(!this[jt])if(_n.remain){let ke=()=>{_n.invalid||(this[jt]=!0)};_n.on("end",ke)}else this[jt]=!0;_n.meta?_n.size>this.maxMetaEntrySize?(_n.ignore=!0,this[be]("ignoredEntry",_n),this[b]="ignore",_n.resume()):_n.size>0&&(this[ae]="",_n.on("data",ke=>this[ae]+=ke),this[b]="meta"):(this[Q]=void 0,_n.ignore=_n.ignore||!this.filter(_n.path,_n),_n.ignore?(this[be]("ignoredEntry",_n),this[b]=_n.remain?"ignore":"header",_n.resume()):(_n.remain?this[b]="body":(this[b]="header",_n.end()),this[N]?this[fe].push(_n):(this[fe].push(_n),this[B]())))}}}[Fr](){queueMicrotask(()=>this.emit("close"))}[F](lr){let cr=!0;if(!lr)this[N]=void 0,cr=!1;else if(Array.isArray(lr)){let[Ar,...qr]=lr;this.emit(Ar,...qr)}else this[N]=lr,this.emit("entry",lr),lr.emittedEnd||(lr.on("end",()=>this[B]()),cr=!1);return cr}[B](){do;while(this[F](this[fe].shift()));if(this[fe].length===0){let lr=this[N];!lr||lr.flowing||lr.size===lr.remain?this[Ot]||this.emit("drain"):lr.once("drain",()=>this.emit("drain"))}}[tt](lr,cr){let Ar=this[E];if(!Ar)throw new Error("attempt to consume body without entry??");let qr=Ar.blockRemain??0,_n=qr>=lr.length&&cr===0?lr:lr.subarray(cr,cr+qr);return Ar.write(_n),Ar.blockRemain||(this[b]="header",this[E]=void 0,Ar.end()),_n.length}[ze](lr,cr){let Ar=this[E],qr=this[tt](lr,cr);return!this[E]&&Ar&&this[ne](Ar),qr}[be](lr,cr,Ar){this[fe].length===0&&!this[N]?this.emit(lr,cr,Ar):this[fe].push([lr,cr,Ar])}[ne](lr){switch(this[be]("meta",this[ae]),lr.type){case"ExtendedHeader":case"OldExtendedHeader":this[Q]=a.Pax.parse(this[ae],this[Q],!1);break;case"GlobalExtendedHeader":this[J]=a.Pax.parse(this[ae],this[J],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let cr=this[Q]??Object.create(null);this[Q]=cr,cr.path=this[ae].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let cr=this[Q]||Object.create(null);this[Q]=cr,cr.linkpath=this[ae].replace(/\0.*/,"");break}default:throw new Error("unknown meta: "+lr.type)}}abort(lr){this[Er]=!0,this.emit("abort",lr),this.warn("TAR_ABORT",lr,{recoverable:!1})}write(lr,cr,Ar){if(typeof cr=="function"&&(Ar=cr,cr=void 0),typeof lr=="string"&&(lr=Buffer.from(lr,typeof cr=="string"?cr:"utf8")),this[Er])return Ar?.(),!1;if((this[Se]===void 0||this.brotli===void 0&&this[Se]===!1)&&lr){if(this[ce]&&(lr=Buffer.concat([this[ce],lr]),this[ce]=void 0),lr.lengththis[De](Nn)),this[Se].on("error",Nn=>this.abort(Nn)),this[Se].on("end",()=>{this[ue]=!0,this[De]()}),this[Ot]=!0;let Fn=!!this[Se][zt?"end":"write"](lr);return this[Ot]=!1,Ar?.(),Fn}}this[Ot]=!0,this[Se]?this[Se].write(lr):this[De](lr),this[Ot]=!1;let qr=this[fe].length>0?!1:this[N]?this[N].flowing:!0;return!qr&&this[fe].length===0&&this[N]?.once("drain",()=>this.emit("drain")),Ar?.(),qr}[ft](lr){lr&&!this[Er]&&(this[ce]=this[ce]?Buffer.concat([this[ce],lr]):lr)}[lt](){if(this[ue]&&!this[de]&&!this[Er]&&!this[Je]){this[de]=!0;let lr=this[E];if(lr&&lr.blockRemain){let cr=this[ce]?this[ce].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${lr.blockRemain} more bytes, only ${cr} available)`,{entry:lr}),this[ce]&&lr.write(this[ce]),lr.end()}this[be](Sr)}}[De](lr){if(this[Je]&&lr)this[ft](lr);else if(!lr&&!this[ce])this[lt]();else if(lr){if(this[Je]=!0,this[ce]){this[ft](lr);let cr=this[ce];this[ce]=void 0,this[k](cr)}else this[k](lr);for(;this[ce]&&this[ce]?.length>=512&&!this[Er]&&!this[Nt];){let cr=this[ce];this[ce]=void 0,this[k](cr)}this[Je]=!1}(!this[ce]||this[ue])&&this[lt]()}[k](lr){let cr=0,Ar=lr.length;for(;cr+512<=Ar&&!this[Er]&&!this[Nt];)switch(this[b]){case"begin":case"header":this[Le](lr,cr),cr+=512;break;case"ignore":case"body":cr+=this[tt](lr,cr);break;case"meta":cr+=this[ze](lr,cr);break;default:throw new Error("invalid state: "+this[b])}cr{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripTrailingSlashes=void 0;var t=r=>{let n=r.length-1,a=-1;for(;n>-1&&r.charAt(n)==="/";)a=n,n--;return a===-1?r:r.slice(0,a)};e.stripTrailingSlashes=t}),eMe=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(F,Q,J,ae){ae===void 0&&(ae=J);var ne=Object.getOwnPropertyDescriptor(Q,J);(!ne||("get"in ne?!Q.__esModule:ne.writable||ne.configurable))&&(ne={enumerable:!0,get:function(){return Q[J]}}),Object.defineProperty(F,ae,ne)}:function(F,Q,J,ae){ae===void 0&&(ae=J),F[ae]=Q[J]}),r=e&&e.__setModuleDefault||(Object.create?function(F,Q){Object.defineProperty(F,"default",{enumerable:!0,value:Q})}:function(F,Q){F.default=Q}),n=e&&e.__importStar||function(){var F=function(Q){return F=Object.getOwnPropertyNames||function(J){var ae=[];for(var ne in J)Object.prototype.hasOwnProperty.call(J,ne)&&(ae[ae.length]=ne);return ae},F(Q)};return function(Q){if(Q&&Q.__esModule)return Q;var J={};if(Q!=null)for(var ae=F(Q),ne=0;ne{let Q=F.onReadEntry;F.onReadEntry=Q?J=>{Q(J),J.resume()}:J=>J.resume()},E=(F,Q)=>{let J=new Map(Q.map(ce=>[(0,C.stripTrailingSlashes)(ce),!0])),ae=F.filter,ne=(ce,fe="")=>{let ue=fe||(0,A.parse)(ce).root||".",de;if(ce===ue)de=!1;else{let be=J.get(ce);de=be!==void 0?be:ne((0,A.dirname)(ce),ue)}return J.set(ce,de),de};F.filter=ae?(ce,fe)=>ae(ce,fe)&&ne((0,C.stripTrailingSlashes)(ce)):ce=>ne((0,C.stripTrailingSlashes)(ce))};e.filesFilter=E;var N=F=>{let Q=new I.Parser(F),J=F.file,ae;try{ae=l.default.openSync(J,"r");let ne=l.default.fstatSync(ae),ce=F.maxReadSize||16*1024*1024;if(ne.size{let J=new I.Parser(F),ae=F.maxReadSize||16*1024*1024,ne=F.file;return new Promise((ce,fe)=>{J.on("error",fe),J.on("end",ce),l.default.stat(ne,(ue,de)=>{if(ue)fe(ue);else{let be=new o.ReadStream(ne,{readSize:ae,size:de.size});be.on("error",fe),be.pipe(J)}})})};e.list=(0,f.makeCommand)(N,B,F=>new I.Parser(F),F=>new I.Parser(F),(F,Q)=>{Q?.length&&(0,e.filesFilter)(F,Q),F.noResume||b(F)})}),TPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.modeFix=void 0;var t=(r,n,a)=>(r&=4095,a&&(r=(r|384)&-19),n&&(r&256&&(r|=64),r&32&&(r|=8),r&4&&(r|=1)),r);e.modeFix=t}),RLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripAbsolutePath=void 0;var t=Et("node:path"),{isAbsolute:r,parse:n}=t.win32,a=o=>{let l="",A=n(o);for(;r(o)||A.root;){let f=o.charAt(0)==="/"&&o.slice(0,4)!=="//?/"?"/":A.root;o=o.slice(f.length),l+=f,A=n(o)}return[l,o]};e.stripAbsolutePath=a}),NLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;var t=["|","<",">","?",":"],r=t.map(A=>String.fromCodePoint(61440+Number(A.codePointAt(0)))),n=new Map(t.map((A,f)=>[A,r[f]])),a=new Map(r.map((A,f)=>[A,t[f]])),o=A=>t.reduce((f,I)=>f.split(I).join(n.get(I)),A);e.encode=o;var l=A=>r.reduce((f,I)=>f.split(I).join(a.get(I)),A);e.decode=l}),DLn=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function($t,Xt,lr,cr){cr===void 0&&(cr=lr);var Ar=Object.getOwnPropertyDescriptor(Xt,lr);(!Ar||("get"in Ar?!Xt.__esModule:Ar.writable||Ar.configurable))&&(Ar={enumerable:!0,get:function(){return Xt[lr]}}),Object.defineProperty($t,cr,Ar)}:function($t,Xt,lr,cr){cr===void 0&&(cr=lr),$t[cr]=Xt[lr]}),r=e&&e.__setModuleDefault||(Object.create?function($t,Xt){Object.defineProperty($t,"default",{enumerable:!0,value:Xt})}:function($t,Xt){$t.default=Xt}),n=e&&e.__importStar||function(){var $t=function(Xt){return $t=Object.getOwnPropertyNames||function(lr){var cr=[];for(var Ar in lr)Object.prototype.hasOwnProperty.call(lr,Ar)&&(cr[cr.length]=Ar);return cr},$t(Xt)};return function(Xt){if(Xt&&Xt.__esModule)return Xt;var lr={};if(Xt!=null)for(var cr=$t(Xt),Ar=0;ArXt?($t=(0,C.normalizeWindowsPath)($t).replace(/^\.(\/|$)/,""),(0,B.stripTrailingSlashes)(Xt)+"/"+$t):(0,C.normalizeWindowsPath)($t),ae=16*1024*1024,ne=Symbol("process"),ce=Symbol("file"),fe=Symbol("directory"),ue=Symbol("symlink"),de=Symbol("hardlink"),be=Symbol("header"),Se=Symbol("read"),De=Symbol("lstat"),k=Symbol("onlstat"),tt=Symbol("onread"),ze=Symbol("onreadlink"),Le=Symbol("openfile"),Je=Symbol("onopenfile"),ft=Symbol("close"),lt=Symbol("mode"),Ot=Symbol("awaitDrain"),Er=Symbol("ondrain"),Sr=Symbol("prefix"),jt=class extends l.Minipass{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#e=!1;constructor($t,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.path=(0,C.normalizeWindowsPath)($t),this.portable=!!lr.portable,this.maxReadSize=lr.maxReadSize||ae,this.linkCache=lr.linkCache||new Map,this.statCache=lr.statCache||new Map,this.preservePaths=!!lr.preservePaths,this.cwd=(0,C.normalizeWindowsPath)(lr.cwd||process.cwd()),this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.mtime=lr.mtime,this.prefix=lr.prefix?(0,C.normalizeWindowsPath)(lr.prefix):void 0,this.onWriteEntry=lr.onWriteEntry,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let cr=!1;if(!this.preservePaths){let[qr,_n]=(0,N.stripAbsolutePath)(this.path);qr&&typeof _n=="string"&&(this.path=_n,cr=qr)}this.win32=!!lr.win32||process.platform==="win32",this.win32&&(this.path=Q.decode(this.path.replaceAll(/\\/g,"/")),$t=$t.replaceAll(/\\/g,"/")),this.absolute=(0,C.normalizeWindowsPath)(lr.absolute||A.default.resolve(this.cwd,$t)),this.path===""&&(this.path="./"),cr&&this.warn("TAR_ENTRY_INFO",`stripping ${cr} from absolute path`,{entry:this,path:cr+this.path});let Ar=this.statCache.get(this.absolute);Ar?this[k](Ar):this[De]()}warn($t,Xt,lr={}){return(0,F.warnMethod)(this,$t,Xt,lr)}emit($t,...Xt){return $t==="error"&&(this.#e=!0),super.emit($t,...Xt)}[De](){o.default.lstat(this.absolute,($t,Xt)=>{if($t)return this.emit("error",$t);this[k](Xt)})}[k]($t){this.statCache.set(this.absolute,$t),this.stat=$t,$t.isFile()||($t.size=0),this.type=Fr($t),this.emit("stat",$t),this[ne]()}[ne](){switch(this.type){case"File":return this[ce]();case"Directory":return this[fe]();case"SymbolicLink":return this[ue]();default:return this.end()}}[lt]($t){return(0,I.modeFix)($t,this.type==="Directory",this.portable)}[Sr]($t){return J($t,this.prefix)}[be](){if(!this.stat)throw new Error("cannot write header before stat");this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new f.Header({path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,mode:this[lt](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:this.type==="Unsupported"?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let $t=this.header?.block;if(!$t)throw new Error("failed to encode header");super.write($t)}[fe](){if(!this.stat)throw new Error("cannot create directory entry without stat");this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[be](),this.end()}[ue](){o.default.readlink(this.absolute,($t,Xt)=>{if($t)return this.emit("error",$t);this[ze](Xt)})}[ze]($t){this.linkpath=(0,C.normalizeWindowsPath)($t),this[be](),this.end()}[de]($t){if(!this.stat)throw new Error("cannot create link entry without stat");this.type="Link",this.linkpath=(0,C.normalizeWindowsPath)(A.default.relative(this.cwd,$t)),this.stat.size=0,this[be](),this.end()}[ce](){if(!this.stat)throw new Error("cannot create file entry without stat");if(this.stat.nlink>1){let $t=`${this.stat.dev}:${this.stat.ino}`,Xt=this.linkCache.get($t);if(Xt?.indexOf(this.cwd)===0)return this[de](Xt);this.linkCache.set($t,this.absolute)}if(this[be](),this.stat.size===0)return this.end();this[Le]()}[Le](){o.default.open(this.absolute,"r",($t,Xt)=>{if($t)return this.emit("error",$t);this[Je](Xt)})}[Je]($t){if(this.fd=$t,this.#e)return this[ft]();if(!this.stat)throw new Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let Xt=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(Xt),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[Se]()}[Se](){let{fd:$t,buf:Xt,offset:lr,length:cr,pos:Ar}=this;if($t===void 0||Xt===void 0)throw new Error("cannot read file without first opening");o.default.read($t,Xt,lr,cr,Ar,(qr,_n)=>{if(qr)return this[ft](()=>this.emit("error",qr));this[tt](_n)})}[ft]($t=()=>{}){this.fd!==void 0&&o.default.close(this.fd,$t)}[tt]($t){if($t<=0&&this.remain>0){let lr=Object.assign(new Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[ft](()=>this.emit("error",lr))}if($t>this.remain){let lr=Object.assign(new Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[ft](()=>this.emit("error",lr))}if(!this.buf)throw new Error("should have created buffer prior to reading");if($t===this.remain)for(let lr=$t;lrthis[Er]())}[Ot]($t){this.once("drain",$t)}write($t,Xt,lr){if(typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof $t=="string"&&($t=Buffer.from($t,typeof Xt=="string"?Xt:"utf8")),this.blockRemain<$t.length){let cr=Object.assign(new Error("writing more data than expected"),{path:this.absolute});return this.emit("error",cr)}return this.remain-=$t.length,this.blockRemain-=$t.length,this.pos+=$t.length,this.offset+=$t.length,super.write($t,null,lr)}[Er](){if(!this.remain)return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),this[ft]($t=>$t?this.emit("error",$t):this.end());if(!this.buf)throw new Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[Se]()}};e.WriteEntry=jt;var Bt=class extends jt{sync=!0;[De](){this[k](o.default.lstatSync(this.absolute))}[ue](){this[ze](o.default.readlinkSync(this.absolute))}[Le](){this[Je](o.default.openSync(this.absolute,"r"))}[Se](){let $t=!0;try{let{fd:Xt,buf:lr,offset:cr,length:Ar,pos:qr}=this;if(Xt===void 0||lr===void 0)throw new Error("fd and buf must be set in READ method");let _n=o.default.readSync(Xt,lr,cr,Ar,qr);this[tt](_n),$t=!1}finally{if($t)try{this[ft](()=>{})}catch{}}}[Ot]($t){$t()}[ft]($t=()=>{}){this.fd!==void 0&&o.default.closeSync(this.fd),$t()}};e.WriteEntrySync=Bt;var Nt=class extends l.Minipass{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn($t,Xt,lr={}){return(0,F.warnMethod)(this,$t,Xt,lr)}constructor($t,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.preservePaths=!!lr.preservePaths,this.portable=!!lr.portable,this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.onWriteEntry=lr.onWriteEntry,this.readEntry=$t;let{type:cr}=$t;if(cr==="Unsupported")throw new Error("writing entry that should be ignored");this.type=cr,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=lr.prefix,this.path=(0,C.normalizeWindowsPath)($t.path),this.mode=$t.mode!==void 0?this[lt]($t.mode):void 0,this.uid=this.portable?void 0:$t.uid,this.gid=this.portable?void 0:$t.gid,this.uname=this.portable?void 0:$t.uname,this.gname=this.portable?void 0:$t.gname,this.size=$t.size,this.mtime=this.noMtime?void 0:lr.mtime||$t.mtime,this.atime=this.portable?void 0:$t.atime,this.ctime=this.portable?void 0:$t.ctime,this.linkpath=$t.linkpath!==void 0?(0,C.normalizeWindowsPath)($t.linkpath):void 0,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let Ar=!1;if(!this.preservePaths){let[_n,ke]=(0,N.stripAbsolutePath)(this.path);_n&&typeof ke=="string"&&(this.path=ke,Ar=_n)}this.remain=$t.size,this.blockRemain=$t.startBlockSize,this.onWriteEntry?.(this),this.header=new f.Header({path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),Ar&&this.warn("TAR_ENTRY_INFO",`stripping ${Ar} from absolute path`,{entry:this,path:Ar+this.path}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[Sr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Sr](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let qr=this.header?.block;if(!qr)throw new Error("failed to encode header");super.write(qr),$t.pipe(this)}[Sr]($t){return J($t,this.prefix)}[lt]($t){return(0,I.modeFix)($t,this.type==="Directory",this.portable)}write($t,Xt,lr){typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof $t=="string"&&($t=Buffer.from($t,typeof Xt=="string"?Xt:"utf8"));let cr=$t.length;if(cr>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=cr,super.write($t,lr)}end($t,Xt,lr){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),typeof $t=="function"&&(lr=$t,Xt=void 0,$t=void 0),typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof $t=="string"&&($t=Buffer.from($t,Xt??"utf8")),lr&&this.once("finish",lr),$t?super.end($t,lr):super.end(lr),this}};e.WriteEntryTar=Nt;var Fr=$t=>$t.isFile()?"File":$t.isDirectory()?"Directory":$t.isSymbolicLink()?"SymbolicLink":"Unsupported"}),RPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Node=e.Yallist=void 0;var t=class jve{tail;head;length=0;static create(A=[]){return new jve(A)}constructor(A=[]){for(let f of A)this.push(f)}*[Symbol.iterator](){for(let A=this.head;A;A=A.next)yield A.value}removeNode(A){if(A.list!==this)throw new Error("removing node which does not belong to this list");let f=A.next,I=A.prev;return f&&(f.prev=I),I&&(I.next=f),A===this.head&&(this.head=f),A===this.tail&&(this.tail=I),this.length--,A.next=void 0,A.prev=void 0,A.list=void 0,f}unshiftNode(A){if(A===this.head)return;A.list&&A.list.removeNode(A);let f=this.head;A.list=this,A.next=f,f&&(f.prev=A),this.head=A,this.tail||(this.tail=A),this.length++}pushNode(A){if(A===this.tail)return;A.list&&A.list.removeNode(A);let f=this.tail;A.list=this,A.prev=f,f&&(f.next=A),this.tail=A,this.head||(this.head=A),this.length++}push(...A){for(let f=0,I=A.length;f1)I=f;else if(this.head)C=this.head.next,I=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var b=0;C;b++)I=A(I,C.value,b),C=C.next;return I}reduceReverse(A,f){let I,C=this.tail;if(arguments.length>1)I=f;else if(this.tail)C=this.tail.prev,I=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let b=this.length-1;C;b--)I=A(I,C.value,b),C=C.prev;return I}toArray(){let A=new Array(this.length);for(let f=0,I=this.head;I;f++)A[f]=I.value,I=I.next;return A}toArrayReverse(){let A=new Array(this.length);for(let f=0,I=this.tail;I;f++)A[f]=I.value,I=I.prev;return A}slice(A=0,f=this.length){f<0&&(f+=this.length),A<0&&(A+=this.length);let I=new jve;if(fthis.length&&(f=this.length);let C=this.head,b=0;for(b=0;C&&bthis.length&&(f=this.length);let C=this.length,b=this.tail;for(;b&&C>f;C--)b=b.prev;for(;b&&C>A;C--,b=b.prev)I.push(b.value);return I}splice(A,f=0,...I){A>this.length&&(A=this.length-1),A<0&&(A=this.length+A);let C=this.head;for(let E=0;C&&E{"use strict";var t=e&&e.__createBinding||(Object.create?function(Bt,Nt,Fr,$t){$t===void 0&&($t=Fr);var Xt=Object.getOwnPropertyDescriptor(Nt,Fr);(!Xt||("get"in Xt?!Nt.__esModule:Xt.writable||Xt.configurable))&&(Xt={enumerable:!0,get:function(){return Nt[Fr]}}),Object.defineProperty(Bt,$t,Xt)}:function(Bt,Nt,Fr,$t){$t===void 0&&($t=Fr),Bt[$t]=Nt[Fr]}),r=e&&e.__setModuleDefault||(Object.create?function(Bt,Nt){Object.defineProperty(Bt,"default",{enumerable:!0,value:Nt})}:function(Bt,Nt){Bt.default=Nt}),n=e&&e.__importStar||function(){var Bt=function(Nt){return Bt=Object.getOwnPropertyNames||function(Fr){var $t=[];for(var Xt in Fr)Object.prototype.hasOwnProperty.call(Fr,Xt)&&($t[$t.length]=Xt);return $t},Bt(Nt)};return function(Nt){if(Nt&&Nt.__esModule)return Nt;var Fr={};if(Nt!=null)for(var $t=Bt(Nt),Xt=0;Xt<$t.length;Xt++)$t[Xt]!=="default"&&t(Fr,Nt,$t[Xt]);return r(Fr,Nt),Fr}}(),a=e&&e.__importDefault||function(Bt){return Bt&&Bt.__esModule?Bt:{default:Bt}};Object.defineProperty(e,"__esModule",{value:!0}),e.PackSync=e.Pack=e.PackJob=void 0;var o=a(Et("fs")),l=DLn(),A=class{path;absolute;entry;stat;readdir;pending=!1;ignore=!1;piped=!1;constructor(Bt,Nt){this.path=Bt||"./",this.absolute=Nt}};e.PackJob=A;var f=K5e(),I=n(BLn()),C=RPo(),b=ydr(),E=bdr(),N=Buffer.alloc(1024),B=Symbol("onStat"),F=Symbol("ended"),Q=Symbol("queue"),J=Symbol("current"),ae=Symbol("process"),ne=Symbol("processing"),ce=Symbol("processJob"),fe=Symbol("jobs"),ue=Symbol("jobDone"),de=Symbol("addFSEntry"),be=Symbol("addTarEntry"),Se=Symbol("stat"),De=Symbol("readdir"),k=Symbol("onreaddir"),tt=Symbol("pipe"),ze=Symbol("entry"),Le=Symbol("entryOpt"),Je=Symbol("writeEntryClass"),ft=Symbol("write"),lt=Symbol("ondrain"),Ot=a(Et("path")),Er=$5e(),Sr=class extends f.Minipass{sync=!1;opt;cwd;maxReadSize;preservePaths;strict;noPax;prefix;linkCache;statCache;file;portable;zip;readdirCache;noDirRecurse;follow;noMtime;mtime;filter;jobs;[Je];onWriteEntry;[Q];[fe]=0;[ne]=!1;[F]=!1;constructor(Bt={}){if(super(),this.opt=Bt,this.file=Bt.file||"",this.cwd=Bt.cwd||process.cwd(),this.maxReadSize=Bt.maxReadSize,this.preservePaths=!!Bt.preservePaths,this.strict=!!Bt.strict,this.noPax=!!Bt.noPax,this.prefix=(0,Er.normalizeWindowsPath)(Bt.prefix||""),this.linkCache=Bt.linkCache||new Map,this.statCache=Bt.statCache||new Map,this.readdirCache=Bt.readdirCache||new Map,this.onWriteEntry=Bt.onWriteEntry,this[Je]=l.WriteEntry,typeof Bt.onwarn=="function"&&this.on("warn",Bt.onwarn),this.portable=!!Bt.portable,Bt.gzip||Bt.brotli||Bt.zstd){if((Bt.gzip?1:0)+(Bt.brotli?1:0)+(Bt.zstd?1:0)>1)throw new TypeError("gzip, brotli, zstd are mutually exclusive");if(Bt.gzip&&(typeof Bt.gzip!="object"&&(Bt.gzip={}),this.portable&&(Bt.gzip.portable=!0),this.zip=new I.Gzip(Bt.gzip)),Bt.brotli&&(typeof Bt.brotli!="object"&&(Bt.brotli={}),this.zip=new I.BrotliCompress(Bt.brotli)),Bt.zstd&&(typeof Bt.zstd!="object"&&(Bt.zstd={}),this.zip=new I.ZstdCompress(Bt.zstd)),!this.zip)throw new Error("impossible");let Nt=this.zip;Nt.on("data",Fr=>super.write(Fr)),Nt.on("end",()=>super.end()),Nt.on("drain",()=>this[lt]()),this.on("resume",()=>Nt.resume())}else this.on("drain",this[lt]);this.noDirRecurse=!!Bt.noDirRecurse,this.follow=!!Bt.follow,this.noMtime=!!Bt.noMtime,Bt.mtime&&(this.mtime=Bt.mtime),this.filter=typeof Bt.filter=="function"?Bt.filter:()=>!0,this[Q]=new C.Yallist,this[fe]=0,this.jobs=Number(Bt.jobs)||4,this[ne]=!1,this[F]=!1}[ft](Bt){return super.write(Bt)}add(Bt){return this.write(Bt),this}end(Bt,Nt,Fr){return typeof Bt=="function"&&(Fr=Bt,Bt=void 0),typeof Nt=="function"&&(Fr=Nt,Nt=void 0),Bt&&this.add(Bt),this[F]=!0,this[ae](),Fr&&Fr(),this}write(Bt){if(this[F])throw new Error("write after end");return Bt instanceof b.ReadEntry?this[be](Bt):this[de](Bt),this.flowing}[be](Bt){let Nt=(0,Er.normalizeWindowsPath)(Ot.default.resolve(this.cwd,Bt.path));if(!this.filter(Bt.path,Bt))Bt.resume();else{let Fr=new A(Bt.path,Nt);Fr.entry=new l.WriteEntryTar(Bt,this[Le](Fr)),Fr.entry.on("end",()=>this[ue](Fr)),this[fe]+=1,this[Q].push(Fr)}this[ae]()}[de](Bt){let Nt=(0,Er.normalizeWindowsPath)(Ot.default.resolve(this.cwd,Bt));this[Q].push(new A(Bt,Nt)),this[ae]()}[Se](Bt){Bt.pending=!0,this[fe]+=1;let Nt=this.follow?"stat":"lstat";o.default[Nt](Bt.absolute,(Fr,$t)=>{Bt.pending=!1,this[fe]-=1,Fr?this.emit("error",Fr):this[B](Bt,$t)})}[B](Bt,Nt){this.statCache.set(Bt.absolute,Nt),Bt.stat=Nt,this.filter(Bt.path,Nt)?Nt.isFile()&&Nt.nlink>1&&Bt===this[J]&&!this.linkCache.get(`${Nt.dev}:${Nt.ino}`)&&!this.sync&&this[ce](Bt):Bt.ignore=!0,this[ae]()}[De](Bt){Bt.pending=!0,this[fe]+=1,o.default.readdir(Bt.absolute,(Nt,Fr)=>{if(Bt.pending=!1,this[fe]-=1,Nt)return this.emit("error",Nt);this[k](Bt,Fr)})}[k](Bt,Nt){this.readdirCache.set(Bt.absolute,Nt),Bt.readdir=Nt,this[ae]()}[ae](){if(!this[ne]){this[ne]=!0;for(let Bt=this[Q].head;Bt&&this[fe]this.warn(Nt,Fr,$t),noPax:this.noPax,cwd:this.cwd,absolute:Bt.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[ze](Bt){this[fe]+=1;try{return new this[Je](Bt.path,this[Le](Bt)).on("end",()=>this[ue](Bt)).on("error",Nt=>this.emit("error",Nt))}catch(Nt){this.emit("error",Nt)}}[lt](){this[J]&&this[J].entry&&this[J].entry.resume()}[tt](Bt){Bt.piped=!0,Bt.readdir&&Bt.readdir.forEach($t=>{let Xt=Bt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+$t)});let Nt=Bt.entry,Fr=this.zip;if(!Nt)throw new Error("cannot pipe without source");Fr?Nt.on("data",$t=>{Fr.write($t)||Nt.pause()}):Nt.on("data",$t=>{super.write($t)||Nt.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(Bt,Nt,Fr={}){(0,E.warnMethod)(this,Bt,Nt,Fr)}};e.Pack=Sr;var jt=class extends Sr{sync=!0;constructor(Bt){super(Bt),this[Je]=l.WriteEntrySync}pause(){}resume(){}[Se](Bt){let Nt=this.follow?"statSync":"lstatSync";this[B](Bt,o.default[Nt](Bt.absolute))}[De](Bt){this[k](Bt,o.default.readdirSync(Bt.absolute))}[tt](Bt){let Nt=Bt.entry,Fr=this.zip;if(Bt.readdir&&Bt.readdir.forEach($t=>{let Xt=Bt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+$t)}),!Nt)throw new Error("Cannot pipe without source");Fr?Nt.on("data",$t=>{Fr.write($t)}):Nt.on("data",$t=>{super[ft]($t)})}};e.PackSync=jt}),kLn=EC(e=>{"use strict";var t=e&&e.__importDefault||function(N){return N&&N.__esModule?N:{default:N}};Object.defineProperty(e,"__esModule",{value:!0}),e.create=void 0;var r=j5e(),n=t(Et("node:path")),a=eMe(),o=z5e(),l=vdr(),A=(N,B)=>{let F=new l.PackSync(N),Q=new r.WriteStreamSync(N.file,{mode:N.mode||438});F.pipe(Q),I(F,B)},f=(N,B)=>{let F=new l.Pack(N),Q=new r.WriteStream(N.file,{mode:N.mode||438});F.pipe(Q);let J=new Promise((ae,ne)=>{Q.on("error",ne),Q.on("close",ae),F.on("error",ne)});return C(F,B).catch(ae=>F.emit("error",ae)),J},I=(N,B)=>{B.forEach(F=>{F.charAt(0)==="@"?(0,a.list)({file:n.default.resolve(N.cwd,F.slice(1)),sync:!0,noResume:!0,onReadEntry:Q=>N.add(Q)}):N.add(F)}),N.end()},C=async(N,B)=>{for(let F of B)F.charAt(0)==="@"?await(0,a.list)({file:n.default.resolve(String(N.cwd),F.slice(1)),noResume:!0,onReadEntry:Q=>{N.add(Q)}}):N.add(F);N.end()},b=(N,B)=>{let F=new l.PackSync(N);return I(F,B),F},E=(N,B)=>{let F=new l.Pack(N);return C(F,B).catch(Q=>F.emit("error",Q)),F};e.create=(0,o.makeCommand)(A,f,b,E,(N,B)=>{if(!B?.length)throw new TypeError("no paths specified to add to archive")})}),NPo=EC(e=>{"use strict";var t=e&&e.__importDefault||function(B){return B&&B.__esModule?B:{default:B}};Object.defineProperty(e,"__esModule",{value:!0}),e.getWriteFlag=void 0;var r=t(Et("fs")),n=process.platform,a=n==="win32",{O_CREAT:o,O_NOFOLLOW:l,O_TRUNC:A,O_WRONLY:f}=r.default.constants,I=Number(process.env.__FAKE_FS_O_FILENAME__)||r.default.constants.UV_FS_O_FILEMAP||0,C=a&&!!I,b=512*1024,E=I|A|o|f,N=!a&&typeof l=="number"?l|A|o|f:null;e.getWriteFlag=N!==null?()=>N:C?B=>B"w"}),DPo=EC(e=>{"use strict";var t=e&&e.__importDefault||function(C){return C&&C.__esModule?C:{default:C}};Object.defineProperty(e,"__esModule",{value:!0}),e.chownrSync=e.chownr=void 0;var r=t(Et("node:fs")),n=t(Et("node:path")),a=(C,b,E)=>{try{return r.default.lchownSync(C,b,E)}catch(N){if(N?.code!=="ENOENT")throw N}},o=(C,b,E,N)=>{r.default.lchown(C,b,E,B=>{N(B&&B?.code!=="ENOENT"?B:null)})},l=(C,b,E,N,B)=>{if(b.isDirectory())(0,e.chownr)(n.default.resolve(C,b.name),E,N,F=>{if(F)return B(F);let Q=n.default.resolve(C,b.name);o(Q,E,N,B)});else{let F=n.default.resolve(C,b.name);o(F,E,N,B)}},A=(C,b,E,N)=>{r.default.readdir(C,{withFileTypes:!0},(B,F)=>{if(B){if(B.code==="ENOENT")return N();if(B.code!=="ENOTDIR"&&B.code!=="ENOTSUP")return N(B)}if(B||!F.length)return o(C,b,E,N);let Q=F.length,J=null,ae=ne=>{if(!J){if(ne)return N(J=ne);if(--Q===0)return o(C,b,E,N)}};for(let ne of F)l(C,ne,b,E,ae)})};e.chownr=A;var f=(C,b,E,N)=>{b.isDirectory()&&(0,e.chownrSync)(n.default.resolve(C,b.name),E,N),a(n.default.resolve(C,b.name),E,N)},I=(C,b,E)=>{let N;try{N=r.default.readdirSync(C,{withFileTypes:!0})}catch(B){let F=B;if(F?.code==="ENOENT")return;if(F?.code==="ENOTDIR"||F?.code==="ENOTSUP")return a(C,b,E);throw F}for(let B of N)f(C,B,b,E);return a(C,b,E)};e.chownrSync=I}),kPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CwdError=void 0;var t=class extends Error{path;code;syscall="chdir";constructor(r,n){super(`${n}: Cannot cd into '${r}'`),this.path=r,this.code=n}get name(){return"CwdError"}};e.CwdError=t}),xLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SymlinkError=void 0;var t=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(r,n){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=r,this.path=n}get name(){return"SymlinkError"}};e.SymlinkError=t}),xPo=EC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.mkdirSync=e.mkdir=void 0;var r=DPo(),n=t(Et("node:fs")),a=t(Et("node:fs/promises")),o=t(Et("node:path")),l=kPo(),A=$5e(),f=xLn(),I=(F,Q)=>{n.default.stat(F,(J,ae)=>{(J||!ae.isDirectory())&&(J=new l.CwdError(F,J?.code||"ENOTDIR")),Q(J)})},C=(F,Q,J)=>{F=(0,A.normalizeWindowsPath)(F);let ae=Q.umask??18,ne=Q.mode|448,ce=(ne&ae)!==0,fe=Q.uid,ue=Q.gid,de=typeof fe=="number"&&typeof ue=="number"&&(fe!==Q.processUid||ue!==Q.processGid),be=Q.preserve,Se=Q.unlink,De=(0,A.normalizeWindowsPath)(Q.cwd),k=(ze,Le)=>{ze?J(ze):Le&&de?(0,r.chownr)(Le,fe,ue,Je=>k(Je)):ce?n.default.chmod(F,ne,J):J()};if(F===De)return I(F,k);if(be)return a.default.mkdir(F,{mode:ne,recursive:!0}).then(ze=>k(null,ze??void 0),k);let tt=(0,A.normalizeWindowsPath)(o.default.relative(De,F)).split("/");b(De,tt,ne,Se,De,void 0,k)};e.mkdir=C;var b=(F,Q,J,ae,ne,ce,fe)=>{if(Q.length===0)return fe(null,ce);let ue=Q.shift(),de=(0,A.normalizeWindowsPath)(o.default.resolve(F+"/"+ue));n.default.mkdir(de,J,E(de,Q,J,ae,ne,ce,fe))},E=(F,Q,J,ae,ne,ce,fe)=>ue=>{ue?n.default.lstat(F,(de,be)=>{if(de)de.path=de.path&&(0,A.normalizeWindowsPath)(de.path),fe(de);else if(be.isDirectory())b(F,Q,J,ae,ne,ce,fe);else if(ae)n.default.unlink(F,Se=>{if(Se)return fe(Se);n.default.mkdir(F,J,E(F,Q,J,ae,ne,ce,fe))});else{if(be.isSymbolicLink())return fe(new f.SymlinkError(F,F+"/"+Q.join("/")));fe(ue)}}):(ce=ce||F,b(F,Q,J,ae,ne,ce,fe))},N=F=>{let Q=!1,J;try{Q=n.default.statSync(F).isDirectory()}catch(ae){J=ae?.code}finally{if(!Q)throw new l.CwdError(F,J??"ENOTDIR")}},B=(F,Q)=>{F=(0,A.normalizeWindowsPath)(F);let J=Q.umask??18,ae=Q.mode|448,ne=(ae&J)!==0,ce=Q.uid,fe=Q.gid,ue=typeof ce=="number"&&typeof fe=="number"&&(ce!==Q.processUid||fe!==Q.processGid),de=Q.preserve,be=Q.unlink,Se=(0,A.normalizeWindowsPath)(Q.cwd),De=ze=>{ze&&ue&&(0,r.chownrSync)(ze,ce,fe),ne&&n.default.chmodSync(F,ae)};if(F===Se)return N(Se),De();if(de)return De(n.default.mkdirSync(F,{mode:ae,recursive:!0})??void 0);let k=(0,A.normalizeWindowsPath)(o.default.relative(Se,F)).split("/"),tt;for(let ze=k.shift(),Le=Se;ze&&(Le+="/"+ze);ze=k.shift()){Le=(0,A.normalizeWindowsPath)(o.default.resolve(Le));try{n.default.mkdirSync(Le,ae),tt=tt||Le}catch{let Je=n.default.lstatSync(Le);if(Je.isDirectory())continue;if(be){n.default.unlinkSync(Le),n.default.mkdirSync(Le,ae),tt=tt||Le;continue}else if(Je.isSymbolicLink())return new f.SymlinkError(Le,Le+"/"+k.join("/"))}}return De(tt)};e.mkdirSync=B}),GPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeUnicode=void 0;var t=Object.create(null),r=1e4,n=new Set,a=o=>{n.has(o)?n.delete(o):t[o]=o.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),n.add(o);let l=t[o],A=n.size-r;if(A>r/10){for(let f of n)if(n.delete(f),delete t[f],--A<=0)break}return l};e.normalizeUnicode=a}),FPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PathReservations=void 0;var t=Et("node:path"),r=GPo(),n=Sdr(),a=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,o=a==="win32",l=f=>f.split("/").slice(0,-1).reduce((I,C)=>{let b=I.at(-1);return b!==void 0&&(C=(0,t.join)(b,C)),I.push(C||"/"),I},[]),A=class{#e=new Map;#t=new Map;#n=new Set;reserve(f,I){f=o?["win32 parallelization disabled"]:f.map(b=>(0,n.stripTrailingSlashes)((0,t.join)((0,r.normalizeUnicode)(b))));let C=new Set(f.map(b=>l(b)).reduce((b,E)=>b.concat(E)));this.#t.set(I,{dirs:C,paths:f});for(let b of f){let E=this.#e.get(b);E?E.push(I):this.#e.set(b,[I])}for(let b of C){let E=this.#e.get(b);if(!E)this.#e.set(b,[new Set([I])]);else{let N=E.at(-1);N instanceof Set?N.add(I):E.push(new Set([I]))}}return this.#i(I)}#r(f){let I=this.#t.get(f);if(!I)throw new Error("function does not have any path reservations");return{paths:I.paths.map(C=>this.#e.get(C)),dirs:[...I.dirs].map(C=>this.#e.get(C))}}check(f){let{paths:I,dirs:C}=this.#r(f);return I.every(b=>b&&b[0]===f)&&C.every(b=>b&&b[0]instanceof Set&&b[0].has(f))}#i(f){return this.#n.has(f)||!this.check(f)?!1:(this.#n.add(f),f(()=>this.#s(f)),!0)}#s(f){if(!this.#n.has(f))return!1;let I=this.#t.get(f);if(!I)throw new Error("invalid reservation");let{paths:C,dirs:b}=I,E=new Set;for(let N of C){let B=this.#e.get(N);if(!B||B?.[0]!==f)continue;let F=B[1];if(!F){this.#e.delete(N);continue}if(B.shift(),typeof F=="function")E.add(F);else for(let Q of F)E.add(Q)}for(let N of b){let B=this.#e.get(N),F=B?.[0];if(!(!B||!(F instanceof Set)))if(F.size===1&&B.length===1){this.#e.delete(N);continue}else if(F.size===1){B.shift();let Q=B[0];typeof Q=="function"&&E.add(Q)}else F.delete(f)}return this.#n.delete(f),E.forEach(N=>this.#i(N)),!0}};e.PathReservations=A}),ZPo=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.umask=void 0;var t=()=>process.umask();e.umask=t}),GLn=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(Vr,xi,no,ga){ga===void 0&&(ga=no);var Ya=Object.getOwnPropertyDescriptor(xi,no);(!Ya||("get"in Ya?!xi.__esModule:Ya.writable||Ya.configurable))&&(Ya={enumerable:!0,get:function(){return xi[no]}}),Object.defineProperty(Vr,ga,Ya)}:function(Vr,xi,no,ga){ga===void 0&&(ga=no),Vr[ga]=xi[no]}),r=e&&e.__setModuleDefault||(Object.create?function(Vr,xi){Object.defineProperty(Vr,"default",{enumerable:!0,value:xi})}:function(Vr,xi){Vr.default=xi}),n=e&&e.__importStar||function(){var Vr=function(xi){return Vr=Object.getOwnPropertyNames||function(no){var ga=[];for(var Ya in no)Object.prototype.hasOwnProperty.call(no,Ya)&&(ga[ga.length]=Ya);return ga},Vr(xi)};return function(xi){if(xi&&xi.__esModule)return xi;var no={};if(xi!=null)for(var ga=Vr(xi),Ya=0;Ya{if(!qr)return f.default.unlink(Vr,xi);let no=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.rename(Vr,no,ga=>{if(ga)return xi(ga);f.default.unlink(no,xi)})},zt=Vr=>{if(!qr)return f.default.unlinkSync(Vr);let xi=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.renameSync(Vr,xi),f.default.unlinkSync(xi)},Fn=(Vr,xi,no)=>Vr!==void 0&&Vr===Vr>>>0?Vr:xi!==void 0&&xi===xi>>>0?xi:no,Nn=class extends N.Parser{[Bt]=!1;[cr]=!1;[Er]=0;reservations=new Q.PathReservations;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(Vr={}){if(Vr.ondone=()=>{this[Bt]=!0,this[Nt]()},super(Vr),this.transform=Vr.transform,this.chmod=!!Vr.chmod,typeof Vr.uid=="number"||typeof Vr.gid=="number"){if(typeof Vr.uid!="number"||typeof Vr.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(Vr.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=Vr.uid,this.gid=Vr.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;this.preserveOwner=Vr.preserveOwner===void 0&&typeof Vr.uid!="number"?!!(process.getuid&&process.getuid()===0):!!Vr.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth=typeof Vr.maxDepth=="number"?Vr.maxDepth:_n,this.forceChown=Vr.forceChown===!0,this.win32=!!Vr.win32||qr,this.newer=!!Vr.newer,this.keep=!!Vr.keep,this.noMtime=!!Vr.noMtime,this.preservePaths=!!Vr.preservePaths,this.unlink=!!Vr.unlink,this.cwd=(0,E.normalizeWindowsPath)(I.default.resolve(Vr.cwd||process.cwd())),this.strip=Number(Vr.strip)||0,this.processUmask=this.chmod?typeof Vr.processUmask=="number"?Vr.processUmask:(0,ae.umask)():0,this.umask=typeof Vr.umask=="number"?Vr.umask:this.processUmask,this.dmode=Vr.dmode||511&~this.umask,this.fmode=Vr.fmode||438&~this.umask,this.on("entry",xi=>this[ne](xi))}warn(Vr,xi,no={}){return(Vr==="TAR_BAD_ARCHIVE"||Vr==="TAR_ABORT")&&(no.recoverable=!1),super.warn(Vr,xi,no)}[Nt](){this[Bt]&&this[Er]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[ft](Vr,xi){let no=Vr[xi],{type:ga}=Vr;if(!no||this.preservePaths)return!0;let[Ya,Gc]=(0,B.stripAbsolutePath)(no),al=Gc.replaceAll(/\\/g,"/").split("/");if(al.includes("..")||qr&&/^[a-z]:\.\.$/i.test(al[0]??"")){if(xi==="path"||ga==="Link")return this.warn("TAR_ENTRY_ERROR",`${xi} contains '..'`,{entry:Vr,[xi]:no}),!1;let Sc=I.default.posix.dirname(Vr.path),Hr=I.default.posix.normalize(I.default.posix.join(Sc,al.join("/")));if(Hr.startsWith("../")||Hr==="..")return this.warn("TAR_ENTRY_ERROR",`${xi} escapes extraction directory`,{entry:Vr,[xi]:no}),!1}return Ya&&(Vr[xi]=String(Gc),this.warn("TAR_ENTRY_INFO",`stripping ${Ya} from absolute ${xi}`,{entry:Vr,[xi]:no})),!0}[Je](Vr){let xi=(0,E.normalizeWindowsPath)(Vr.path),no=xi.split("/");if(this.strip){if(no.length=this.strip)Vr.linkpath=ga.slice(this.strip).join("/");else return!1}no.splice(0,this.strip),Vr.path=no.join("/")}if(isFinite(this.maxDepth)&&no.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:Vr,path:xi,depth:no.length,maxDepth:this.maxDepth}),!1;if(!this[ft](Vr,"path")||!this[ft](Vr,"linkpath"))return!1;if(Vr.absolute=I.default.isAbsolute(Vr.path)?(0,E.normalizeWindowsPath)(I.default.resolve(Vr.path)):(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,Vr.path)),!this.preservePaths&&typeof Vr.absolute=="string"&&Vr.absolute.indexOf(this.cwd+"/")!==0&&Vr.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:Vr,path:(0,E.normalizeWindowsPath)(Vr.path),resolvedPath:Vr.absolute,cwd:this.cwd}),!1;if(Vr.absolute===this.cwd&&Vr.type!=="Directory"&&Vr.type!=="GNUDumpDir")return!1;if(this.win32){let{root:ga}=I.default.win32.parse(String(Vr.absolute));Vr.absolute=ga+F.encode(String(Vr.absolute).slice(ga.length));let{root:Ya}=I.default.win32.parse(Vr.path);Vr.path=Ya+F.encode(Vr.path.slice(Ya.length))}return!0}[ne](Vr){if(!this[Je](Vr))return Vr.resume();switch(l.default.equal(typeof Vr.absolute,"string"),Vr.type){case"Directory":case"GNUDumpDir":Vr.mode&&(Vr.mode=Vr.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ce](Vr);default:return this[Le](Vr)}}[Ot](Vr,xi){Vr.name==="CwdError"?this.emit("error",Vr):(this.warn("TAR_ENTRY_ERROR",Vr,{entry:xi}),this[jt](),xi.resume())}[lt](Vr,xi,no){(0,b.mkdir)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi},no)}[$t](Vr){return this.forceChown||this.preserveOwner&&(typeof Vr.uid=="number"&&Vr.uid!==this.processUid||typeof Vr.gid=="number"&&Vr.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[Xt](Vr){return Fn(this.uid,Vr.uid,this.processUid)}[lr](Vr){return Fn(this.gid,Vr.gid,this.processGid)}[be](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=new o.WriteStream(String(Vr.absolute),{flags:(0,C.getWriteFlag)(Vr.size),mode:no,autoClose:!1});ga.on("error",Sc=>{ga.fd&&f.default.close(ga.fd,()=>{}),ga.write=()=>!0,this[Ot](Sc,Vr),xi()});let Ya=1,Gc=Sc=>{if(Sc){ga.fd&&f.default.close(ga.fd,()=>{}),this[Ot](Sc,Vr),xi();return}--Ya===0&&ga.fd!==void 0&&f.default.close(ga.fd,Hr=>{Hr?this[Ot](Hr,Vr):this[jt](),xi()})};ga.on("finish",()=>{let Sc=String(Vr.absolute),Hr=ga.fd;if(typeof Hr=="number"&&Vr.mtime&&!this.noMtime){Ya++;let Or=Vr.atime||new Date,Ft=Vr.mtime;f.default.futimes(Hr,Or,Ft,zr=>zr?f.default.utimes(Sc,Or,Ft,Rn=>Gc(Rn&&zr)):Gc())}if(typeof Hr=="number"&&this[$t](Vr)){Ya++;let Or=this[Xt](Vr),Ft=this[lr](Vr);typeof Or=="number"&&typeof Ft=="number"&&f.default.fchown(Hr,Or,Ft,zr=>zr?f.default.chown(Sc,Or,Ft,Rn=>Gc(Rn&&zr)):Gc())}Gc()});let al=this.transform&&this.transform(Vr)||Vr;al!==Vr&&(al.on("error",Sc=>{this[Ot](Sc,Vr),xi()}),Vr.pipe(al)),al.pipe(ga)}[Se](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode;this[lt](String(Vr.absolute),no,ga=>{if(ga){this[Ot](ga,Vr),xi();return}let Ya=1,Gc=()=>{--Ya===0&&(xi(),this[jt](),Vr.resume())};Vr.mtime&&!this.noMtime&&(Ya++,f.default.utimes(String(Vr.absolute),Vr.atime||new Date,Vr.mtime,Gc)),this[$t](Vr)&&(Ya++,f.default.chown(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)),Gc)),Gc()})}[Le](Vr){Vr.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${Vr.type}`,{entry:Vr}),Vr.resume()}[k](Vr,xi){let no=(0,E.normalizeWindowsPath)(I.default.relative(this.cwd,I.default.resolve(I.default.dirname(String(Vr.absolute)),String(Vr.linkpath)))).split("/");this[ze](Vr,this.cwd,no,()=>this[De](Vr,String(Vr.linkpath),"symlink",xi),ga=>{this[Ot](ga,Vr),xi()})}[tt](Vr,xi){let no=(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,String(Vr.linkpath))),ga=(0,E.normalizeWindowsPath)(String(Vr.linkpath)).split("/");this[ze](Vr,this.cwd,ga,()=>this[De](Vr,no,"link",xi),Ya=>{this[Ot](Ya,Vr),xi()})}[ze](Vr,xi,no,ga,Ya){let Gc=no.shift();if(this.preservePaths||Gc===void 0)return ga();let al=I.default.resolve(xi,Gc);f.default.lstat(al,(Sc,Hr)=>{if(Sc)return ga();if(Hr?.isSymbolicLink())return Ya(new J.SymlinkError(al,I.default.resolve(al,no.join("/"))));this[ze](Vr,al,no,ga,Ya)})}[Sr](){this[Er]++}[jt](){this[Er]--,this[Nt]()}[Fr](Vr){this[jt](),Vr.resume()}[ue](Vr,xi){return Vr.type==="File"&&!this.unlink&&xi.isFile()&&xi.nlink<=1&&!qr}[ce](Vr){this[Sr]();let xi=[Vr.path];Vr.linkpath&&xi.push(Vr.linkpath),this.reservations.reserve(xi,no=>this[fe](Vr,no))}[fe](Vr,xi){let no=al=>{xi(al)},ga=()=>{this[lt](this.cwd,this.dmode,al=>{if(al){this[Ot](al,Vr),no();return}this[cr]=!0,Ya()})},Ya=()=>{if(Vr.absolute!==this.cwd){let al=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(al!==this.cwd)return this[lt](al,this.dmode,Sc=>{if(Sc){this[Ot](Sc,Vr),no();return}Gc()})}Gc()},Gc=()=>{f.default.lstat(String(Vr.absolute),(al,Sc)=>{if(Sc&&(this.keep||this.newer&&Sc.mtime>(Vr.mtime??Sc.mtime))){this[Fr](Vr),no();return}if(al||this[ue](Vr,Sc))return this[de](null,Vr,no);if(Sc.isDirectory()){if(Vr.type==="Directory"){let Hr=this.chmod&&Vr.mode&&(Sc.mode&4095)!==Vr.mode,Or=Ft=>this[de](Ft??null,Vr,no);return Hr?f.default.chmod(String(Vr.absolute),Number(Vr.mode),Or):Or()}if(Vr.absolute!==this.cwd)return f.default.rmdir(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,no))}if(Vr.absolute===this.cwd)return this[de](null,Vr,no);ke(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,no))})};this[cr]?Ya():ga()}[de](Vr,xi,no){if(Vr){this[Ot](Vr,xi),no();return}switch(xi.type){case"File":case"OldFile":case"ContiguousFile":return this[be](xi,no);case"Link":return this[tt](xi,no);case"SymbolicLink":return this[k](xi,no);case"Directory":case"GNUDumpDir":return this[Se](xi,no)}}[De](Vr,xi,no,ga){f.default[no](xi,String(Vr.absolute),Ya=>{Ya?this[Ot](Ya,Vr):(this[jt](),Vr.resume()),ga()})}};e.Unpack=Nn;var Hi=Vr=>{try{return[null,Vr()]}catch(xi){return[xi,null]}},Ao=class extends Nn{sync=!0;[de](Vr,xi){return super[de](Vr,xi,()=>{})}[ce](Vr){if(!this[cr]){let Ya=this[lt](this.cwd,this.dmode);if(Ya)return this[Ot](Ya,Vr);this[cr]=!0}if(Vr.absolute!==this.cwd){let Ya=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(Ya!==this.cwd){let Gc=this[lt](Ya,this.dmode);if(Gc)return this[Ot](Gc,Vr)}}let[xi,no]=Hi(()=>f.default.lstatSync(String(Vr.absolute)));if(no&&(this.keep||this.newer&&no.mtime>(Vr.mtime??no.mtime)))return this[Fr](Vr);if(xi||this[ue](Vr,no))return this[de](null,Vr);if(no.isDirectory()){if(Vr.type==="Directory"){let Gc=this.chmod&&Vr.mode&&(no.mode&4095)!==Vr.mode,[al]=Gc?Hi(()=>{f.default.chmodSync(String(Vr.absolute),Number(Vr.mode))}):[];return this[de](al,Vr)}let[Ya]=Hi(()=>f.default.rmdirSync(String(Vr.absolute)));this[de](Ya,Vr)}let[ga]=Vr.absolute===this.cwd?[]:Hi(()=>zt(String(Vr.absolute)));this[de](ga,Vr)}[be](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=al=>{let Sc;try{f.default.closeSync(Ya)}catch(Hr){Sc=Hr}(al||Sc)&&this[Ot](al||Sc,Vr),xi()},Ya;try{Ya=f.default.openSync(String(Vr.absolute),(0,C.getWriteFlag)(Vr.size),no)}catch(al){return ga(al)}let Gc=this.transform&&this.transform(Vr)||Vr;Gc!==Vr&&(Gc.on("error",al=>this[Ot](al,Vr)),Vr.pipe(Gc)),Gc.on("data",al=>{try{f.default.writeSync(Ya,al,0,al.length)}catch(Sc){ga(Sc)}}),Gc.on("end",()=>{let al=null;if(Vr.mtime&&!this.noMtime){let Sc=Vr.atime||new Date,Hr=Vr.mtime;try{f.default.futimesSync(Ya,Sc,Hr)}catch(Or){try{f.default.utimesSync(String(Vr.absolute),Sc,Hr)}catch{al=Or}}}if(this[$t](Vr)){let Sc=this[Xt](Vr),Hr=this[lr](Vr);try{f.default.fchownSync(Ya,Number(Sc),Number(Hr))}catch(Or){try{f.default.chownSync(String(Vr.absolute),Number(Sc),Number(Hr))}catch{al=al||Or}}}ga(al)})}[Se](Vr,xi){let no=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode,ga=this[lt](String(Vr.absolute),no);if(ga){this[Ot](ga,Vr),xi();return}if(Vr.mtime&&!this.noMtime)try{f.default.utimesSync(String(Vr.absolute),Vr.atime||new Date,Vr.mtime)}catch{}if(this[$t](Vr))try{f.default.chownSync(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)))}catch{}xi(),Vr.resume()}[lt](Vr,xi){try{return(0,b.mkdirSync)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi})}catch(no){return no}}[ze](Vr,xi,no,ga,Ya){if(this.preservePaths||no.length===0)return ga();let Gc=xi;for(let al of no){Gc=I.default.resolve(Gc,al);let[Sc,Hr]=Hi(()=>f.default.lstatSync(Gc));if(Sc)return ga();if(Hr.isSymbolicLink())return Ya(new J.SymlinkError(Gc,I.default.resolve(xi,no.join("/"))))}ga()}[De](Vr,xi,no,ga){let Ya=`${no}Sync`;try{f.default[Ya](xi,String(Vr.absolute)),ga(),Vr.resume()}catch(Gc){return this[Ot](Gc,Vr)}}};e.UnpackSync=Ao}),FLn=EC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(E,N,B,F){F===void 0&&(F=B);var Q=Object.getOwnPropertyDescriptor(N,B);(!Q||("get"in Q?!N.__esModule:Q.writable||Q.configurable))&&(Q={enumerable:!0,get:function(){return N[B]}}),Object.defineProperty(E,F,Q)}:function(E,N,B,F){F===void 0&&(F=B),E[F]=N[B]}),r=e&&e.__setModuleDefault||(Object.create?function(E,N){Object.defineProperty(E,"default",{enumerable:!0,value:N})}:function(E,N){E.default=N}),n=e&&e.__importStar||function(){var E=function(N){return E=Object.getOwnPropertyNames||function(B){var F=[];for(var Q in B)Object.prototype.hasOwnProperty.call(B,Q)&&(F[F.length]=Q);return F},E(N)};return function(N){if(N&&N.__esModule)return N;var B={};if(N!=null)for(var F=E(N),Q=0;Q{let N=new I.UnpackSync(E),B=E.file,F=l.default.statSync(B),Q=E.maxReadSize||16*1024*1024;new o.ReadStreamSync(B,{readSize:Q,size:F.size}).pipe(N)},b=(E,N)=>{let B=new I.Unpack(E),F=E.maxReadSize||16*1024*1024,Q=E.file;return new Promise((J,ae)=>{B.on("error",ae),B.on("close",J),l.default.stat(Q,(ne,ce)=>{if(ne)ae(ne);else{let fe=new o.ReadStream(Q,{readSize:F,size:ce.size});fe.on("error",ae),fe.pipe(B)}})})};e.extract=(0,f.makeCommand)(C,b,E=>new I.UnpackSync(E),E=>new I.Unpack(E),(E,N)=>{N?.length&&(0,A.filesFilter)(E,N)})}),Bdr=EC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.replace=void 0;var r=j5e(),n=t(Et("node:fs")),a=t(Et("node:path")),o=q5e(),l=eMe(),A=z5e(),f=Cdr(),I=vdr(),C=(F,Q)=>{let J=new I.PackSync(F),ae=!0,ne,ce;try{try{ne=n.default.openSync(F.file,"r+")}catch(de){if(de?.code==="ENOENT")ne=n.default.openSync(F.file,"w+");else throw de}let fe=n.default.fstatSync(ne),ue=Buffer.alloc(512);e:for(ce=0;cefe.size)break;ce+=be,F.mtimeCache&&de.mtime&&F.mtimeCache.set(String(de.path),de.mtime)}ae=!1,b(F,J,ce,ne,Q)}finally{if(ae)try{n.default.closeSync(ne)}catch{}}},b=(F,Q,J,ae,ne)=>{let ce=new r.WriteStreamSync(F.file,{fd:ae,start:J});Q.pipe(ce),N(Q,ne)},E=(F,Q)=>{Q=Array.from(Q);let J=new I.Pack(F),ae=(ne,ce,fe)=>{let ue=(k,tt)=>{k?n.default.close(ne,ze=>fe(k)):fe(null,tt)},de=0;if(ce===0)return ue(null,0);let be=0,Se=Buffer.alloc(512),De=(k,tt)=>{if(k||tt===void 0)return ue(k);if(be+=tt,be<512&&tt)return n.default.read(ne,Se,be,Se.length-be,de+be,De);if(de===0&&Se[0]===31&&Se[1]===139)return ue(new Error("cannot append to compressed archives"));if(be<512)return ue(null,de);let ze=new o.Header(Se);if(!ze.cksumValid)return ue(null,de);let Le=512*Math.ceil((ze.size??0)/512);if(de+Le+512>ce||(de+=Le+512,de>=ce))return ue(null,de);F.mtimeCache&&ze.mtime&&F.mtimeCache.set(String(ze.path),ze.mtime),be=0,n.default.read(ne,Se,0,512,de,De)};n.default.read(ne,Se,0,512,de,De)};return new Promise((ne,ce)=>{J.on("error",ce);let fe="r+",ue=(de,be)=>{if(de&&de.code==="ENOENT"&&fe==="r+")return fe="w+",n.default.open(F.file,fe,ue);if(de||!be)return ce(de);n.default.fstat(be,(Se,De)=>{if(Se)return n.default.close(be,()=>ce(Se));ae(be,De.size,(k,tt)=>{if(k)return ce(k);let ze=new r.WriteStream(F.file,{fd:be,start:tt});J.pipe(ze),ze.on("error",ce),ze.on("close",ne),B(J,Q)})})};n.default.open(F.file,fe,ue)})},N=(F,Q)=>{Q.forEach(J=>{J.charAt(0)==="@"?(0,l.list)({file:a.default.resolve(F.cwd,J.slice(1)),sync:!0,noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(J)}),F.end()},B=async(F,Q)=>{for(let J of Q)J.charAt(0)==="@"?await(0,l.list)({file:a.default.resolve(String(F.cwd),J.slice(1)),noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(J);F.end()};e.replace=(0,A.makeCommand)(C,E,()=>{throw new TypeError("file is required")},()=>{throw new TypeError("file is required")},(F,Q)=>{if(!(0,f.isFile)(F))throw new TypeError("file is required");if(F.gzip||F.brotli||F.zstd||F.file.endsWith(".br")||F.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!Q?.length)throw new TypeError("no paths specified to add/replace")})}),ZLn=EC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.update=void 0;var t=z5e(),r=Bdr();e.update=(0,t.makeCommand)(r.replace.syncFile,r.replace.asyncFile,r.replace.syncNoFile,r.replace.asyncNoFile,(a,o=[])=>{r.replace.validate?.(a,o),n(a)});var n=a=>{let o=a.filter;a.mtimeCache||(a.mtimeCache=new Map),a.filter=o?(l,A)=>o(l,A)&&!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0)):(l,A)=>!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0))}}),LLn=$C&&$C.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LPo=$C&&$C.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),EM=$C&&$C.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&LLn(t,e,r)},VPo=$C&&$C.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(zve,"__esModule",{value:!0});zve.WorkerPool=zve.AsyncPool=void 0;var YPo=(Wa(),vi(Va)),WLn=YPo.__importDefault(Kfe()),QPo=Et("worker_threads"),Xoe=Symbol("kTaskInfo"),wdr=class{constructor(t,r){this.fn=t,this.limit=(0,WLn.default)(r.poolSize)}run(t){return this.limit(()=>this.fn(t))}};zve.AsyncPool=wdr;var Tdr=class{constructor(t,r){this.source=t,this.workers=[],this.limit=(0,WLn.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let n=this.workers.pop();n?n.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let t=new QPo.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return t.on("message",r=>{if(!t[Xoe])throw new Error("Assertion failed: Worker sent a result without having a task assigned");t[Xoe].resolve(r),t[Xoe]=null,t.unref(),this.workers.push(t)}),t.on("error",r=>{t[Xoe]?.reject(r),t[Xoe]=null}),t.on("exit",r=>{r!==0&&t[Xoe]?.reject(new Error(`Worker exited with code ${r}`)),t[Xoe]=null}),t}run(t){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((n,a)=>{r[Xoe]={resolve:n,reject:a},r.postMessage(t)})})}};zve.WorkerPool=Tdr});var MLn=H((Tjl,PLn)=>{var Rdr;PLn.exports.getContent=()=>(typeof Rdr>"u"&&(Rdr=Et("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),Rdr)});var KLn=H(Joe=>{"use strict";Object.defineProperty(Joe,"__esModule",{value:!0});Joe.getDefaultTaskPool=XLn;Joe.getTaskPoolForConfiguration=JLn;Joe.convertToZipWorker=Ddr;Joe.makeArchiveFromDirectory=zPo;Joe.convertToZip=qPo;Joe.extractArchiveTo=ULn;var HLn=(Wa(),vi(Va)),XPo=wn(),sb=No(),HAt=g8(),JPo=Et("stream"),UPo=HLn.__importStar(VLn()),YAt=OLn(),YLn=HLn.__importStar(MO()),QLn=MLn();function KPo(e,t){switch(e){case"async":return new YAt.AsyncPool(Ddr,{poolSize:t});case"workers":return new YAt.WorkerPool((0,QLn.getContent)(),{poolSize:t});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}}var Ndr;function XLn(){return typeof Ndr>"u"&&(Ndr=KPo("workers",XPo.nodeUtils.availableParallelism())),Ndr}var jPo=new WeakMap;function JLn(e){return typeof e>"u"?XLn():YLn.getFactoryWithDefault(jPo,e,()=>{let t=e.get("taskPoolMode"),r=e.get("taskPoolConcurrency");switch(t){case"async":return new YAt.AsyncPool(Ddr,{poolSize:r});case"workers":return new YAt.WorkerPool((0,QLn.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}})}async function Ddr(e){let{tmpFile:t,tgz:r,compressionLevel:n,extractBufferOpts:a}=e,o=new HAt.ZipFS(t,{create:!0,level:n,stats:sb.statUtils.makeDefaultStats()}),l=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await ULn(l,o,a),o.saveAndClose(),t}async function zPo(e,{baseFs:t=new sb.NodeFS,prefixPath:r=sb.PortablePath.root,compressionLevel:n,inMemory:a=!1}={}){let o;if(a)o=new HAt.ZipFS(null,{level:n});else{let A=await sb.xfs.mktempPromise(),f=sb.ppath.join(A,"archive.zip");o=new HAt.ZipFS(f,{create:!0,level:n})}let l=sb.ppath.resolve(sb.PortablePath.root,r);return await o.copyPromise(l,e,{baseFs:t,stableTime:!0,stableSort:!0}),o}async function qPo(e,t={}){let r=await sb.xfs.mktempPromise(),n=sb.ppath.join(r,"archive.zip"),a=t.compressionLevel??t.configuration?.get("compressionLevel")??"mixed",o={prefixPath:t.prefixPath,stripComponents:t.stripComponents};return await(t.taskPool??JLn(t.configuration)).run({tmpFile:n,tgz:e,compressionLevel:a,extractBufferOpts:o}),new HAt.ZipFS(n,{level:t.compressionLevel})}async function*$Po(e){let t=new UPo.Parser,r=new JPo.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});t.on("entry",n=>{r.write(n)}),t.on("error",n=>{r.destroy(n)}),t.on("close",()=>{r.destroyed||r.end()}),t.end(e);for await(let n of r){let a=n;yield a,a.resume()}}async function ULn(e,t,{stripComponents:r=0,prefixPath:n=sb.PortablePath.dot}={}){function a(o){if(o.path[0]==="/")return!0;let l=o.path.split(/\//g);return!!(l.some(A=>A==="..")||l.length<=r)}for await(let o of $Po(e)){if(a(o))continue;let l=sb.ppath.normalize(sb.npath.toPortablePath(o.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let A=l.slice(r).join("/"),f=sb.ppath.join(n,A),I=420;switch((o.type==="Directory"||(o.mode??0)&73)&&(I|=73),o.type){case"Directory":t.mkdirpSync(sb.ppath.dirname(f),{chmod:493,utimes:[sb.constants.SAFE_TIME,sb.constants.SAFE_TIME]}),t.mkdirSync(f,{mode:I}),t.utimesSync(f,sb.constants.SAFE_TIME,sb.constants.SAFE_TIME);break;case"OldFile":case"File":t.mkdirpSync(sb.ppath.dirname(f),{chmod:493,utimes:[sb.constants.SAFE_TIME,sb.constants.SAFE_TIME]}),t.writeFileSync(f,await YLn.bufferStream(o),{mode:I}),t.utimesSync(f,sb.constants.SAFE_TIME,sb.constants.SAFE_TIME);break;case"SymbolicLink":t.mkdirpSync(sb.ppath.dirname(f),{chmod:493,utimes:[sb.constants.SAFE_TIME,sb.constants.SAFE_TIME]}),t.symlinkSync(o.linkpath,f),t.lutimesSync(f,sb.constants.SAFE_TIME,sb.constants.SAFE_TIME);break}}return t}});var zLn=H((kdr,jLn)=>{(function(e,t){typeof kdr=="object"?jLn.exports=t():typeof define=="function"&&define.amd?define(t):e.treeify=t()})(kdr,function(){function e(a,o){var l=o?"\u2514":"\u251C";return a?l+="\u2500 ":l+="\u2500\u2500\u2510",l}function t(a,o){var l=[];for(var A in a)a.hasOwnProperty(A)&&(o&&typeof a[A]=="function"||l.push(A));return l}function r(a,o,l,A,f,I,C){var b="",E=0,N,B,F=A.slice(0);if(F.push([o,l])&&A.length>0&&(A.forEach(function(J,ae){ae>0&&(b+=(J[1]?" ":"\u2502")+" "),!B&&J[0]===o&&(B=!0)}),b+=e(a,l)+a,f&&(typeof o!="object"||o instanceof Date)&&(b+=": "+o),B&&(b+=" (circular ref.)"),C(b)),!B&&typeof o=="object"){var Q=t(o,I);Q.forEach(function(J){N=++E===Q.length,r(J,o[J],N,F,f,I,C)})}}var n={};return n.asLines=function(a,o,l,A){var f=typeof l!="function"?l:!1;r(".",a,!1,[],o,f,A||l)},n.asTree=function(a,o,l){var A="";return r(".",a,!1,[],o,l,function(f){A+=f+` +`}),A},n})});var t9n=H(qve=>{"use strict";Object.defineProperty(qve,"__esModule",{value:!0});qve.treeNodeToTreeify=qLn;qve.treeNodeToJson=$Ln;qve.emitList=r3o;qve.emitTree=e9n;var e3o=(Wa(),vi(Va)),t3o=zLn(),BIe=e3o.__importStar(gM());function qLn(e,{configuration:t}){let r={},n=0,a=(o,l)=>{let A=Array.isArray(o)?o.entries():Object.entries(o);for(let[f,I]of A){if(!I)continue;let{label:C,value:b,children:E}=I,N=[];typeof C<"u"&&N.push(BIe.applyStyle(t,C,BIe.Style.BOLD)),typeof b<"u"&&N.push(BIe.pretty(t,b[0],b[1])),N.length===0&&N.push(BIe.applyStyle(t,`${f}`,BIe.Style.BOLD));let B=N.join(": ").trim(),F=`\0${n++}\0`,Q=l[`${F}${B}`]={};typeof E<"u"&&a(E,Q)}};if(typeof e.children>"u")throw new Error("The root node must only contain children");return a(e.children,r),r}function $Ln(e){let t=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return BIe.json(r.value[0],r.value[1])}let n=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[o,l]of n)l&&(a[n3o(o)]=t(l));return typeof r.value>"u"?a:{value:BIe.json(r.value[0],r.value[1]),children:a}};return t(e)}function r3o(e,{configuration:t,stdout:r,json:n}){let a=e.map(o=>({value:o}));e9n({children:a},{configuration:t,stdout:r,json:n})}function e9n(e,{configuration:t,stdout:r,json:n,separators:a=0}){if(n){let l=Array.isArray(e.children)?e.children.values():Object.values(e.children??{});for(let A of l)A&&r.write(`${JSON.stringify($Ln(A))} +`);return}let o=(0,t3o.asTree)(qLn(e,{configuration:t}),!1,!1);if(o=o.replace(/\0[0-9]+\0/g,""),a>=1&&(o=o.replace(/^([├└]─)/gm,`\u2502 $1`).replace(/^│\n/,"")),a>=2)for(let l=0;l<2;++l)o=o.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 -$2`).replace(/^│\n/,"");if(a>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(o)}function r3o(e){return typeof e=="string"?e.replace(/^\0[0-9]+\0/,""):e}});var jLn=H(XAt=>{"use strict";Object.defineProperty(XAt,"__esModule",{value:!0});XAt.RefCountedCache=void 0;var xdr=class{constructor(t){this.releaseFunction=t,this.map=new Map}addOrCreate(t,r){let n=this.map.get(t);if(typeof n<"u"){if(n.refCount<=0)throw new Error(`Race condition in RefCountedMap. While adding a new key the refCount is: ${n.refCount} for ${JSON.stringify(t)}`);return n.refCount++,{value:n.value,release:()=>this.release(t)}}else{let a=r();return this.map.set(t,{refCount:1,value:a}),{value:a,release:()=>this.release(t)}}}release(t){let r=this.map.get(t);if(!r)throw new Error(`Unbalanced calls to release. No known instances of: ${JSON.stringify(t)}`);let n=r.refCount;if(n<=0)throw new Error(`Unbalanced calls to release. Too many release vs alloc refcount would become: ${n-1} of ${JSON.stringify(t)}`);n==1?(this.map.delete(t),this.releaseFunction(r.value)):r.refCount--}};XAt.RefCountedCache=xdr});var Zdr=H(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.Cache=vX.CACHE_VERSION=vX.CACHE_CHECKPOINT=void 0;var JAt=(Wa(),vi(Va)),zLn=mn(),tMe=Io(),rw=Io(),qLn=u8(),n3o=Et("crypto"),$Ln=JAt.__importDefault(Et("fs")),rMe=U9(),i3o=jLn(),nMe=dM(),e9n=JAt.__importStar(koe()),Fdr=JAt.__importStar(OO()),v$=JAt.__importStar(fG());vX.CACHE_CHECKPOINT=Fdr.parseInt(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9);vX.CACHE_VERSION=Fdr.parseInt(process.env.YARN_CACHE_VERSION_OVERRIDE??10);var Gdr=class e{static async find(t,{immutable:r,check:n}={}){let a=new e(t.get("cacheFolder"),{configuration:t,immutable:r,check:n});return await a.setup(),a}static getCacheKey(t){let r=t.get("compressionLevel"),n=r!=="mixed"?`c${r}`:"";return{cacheKey:[vX.CACHE_VERSION,n].join(""),cacheSpec:n}}constructor(t,{configuration:r,immutable:n=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set,this.mutexes=new Map,this.refCountedZipFsCache=new i3o.RefCountedCache(A=>{A.discardAndClose()}),this.cacheId=`-${(0,n3o.randomBytes)(8).toString("hex")}.tmp`,this.configuration=r,this.cwd=t,this.immutable=n,this.check=a;let{cacheSpec:o,cacheKey:l}=e.getCacheKey(r);this.cacheSpec=o,this.cacheKey=l}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let t=`${this.configuration.get("globalFolder")}/cache`;return t!==this.cwd?t:null}getVersionFilename(t){return`${v$.slugifyLocator(t)}-${this.cacheKey}.zip`}getChecksumFilename(t,r){let a=iMe(r).hash.slice(0,10);return`${v$.slugifyLocator(t)}-${a}.zip`}isChecksumCompatible(t){if(t===null)return!1;let{cacheVersion:r,cacheSpec:n}=iMe(t);if(r===null||r=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(o)}function n3o(e){return typeof e=="string"?e.replace(/^\0[0-9]+\0/,""):e}});var r9n=H(QAt=>{"use strict";Object.defineProperty(QAt,"__esModule",{value:!0});QAt.RefCountedCache=void 0;var xdr=class{constructor(t){this.releaseFunction=t,this.map=new Map}addOrCreate(t,r){let n=this.map.get(t);if(typeof n<"u"){if(n.refCount<=0)throw new Error(`Race condition in RefCountedMap. While adding a new key the refCount is: ${n.refCount} for ${JSON.stringify(t)}`);return n.refCount++,{value:n.value,release:()=>this.release(t)}}else{let a=r();return this.map.set(t,{refCount:1,value:a}),{value:a,release:()=>this.release(t)}}}release(t){let r=this.map.get(t);if(!r)throw new Error(`Unbalanced calls to release. No known instances of: ${JSON.stringify(t)}`);let n=r.refCount;if(n<=0)throw new Error(`Unbalanced calls to release. Too many release vs alloc refcount would become: ${n-1} of ${JSON.stringify(t)}`);n==1?(this.map.delete(t),this.releaseFunction(r.value)):r.refCount--}};QAt.RefCountedCache=xdr});var Zdr=H(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});BX.Cache=BX.CACHE_VERSION=BX.CACHE_CHECKPOINT=void 0;var XAt=(Wa(),vi(Va)),n9n=wn(),tMe=No(),nw=No(),i9n=g8(),i3o=Et("crypto"),s9n=XAt.__importDefault(Et("fs")),rMe=K9(),s3o=r9n(),nMe=pM(),o9n=XAt.__importStar(xoe()),Fdr=XAt.__importStar(MO()),B$=XAt.__importStar(IG());BX.CACHE_CHECKPOINT=Fdr.parseInt(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9);BX.CACHE_VERSION=Fdr.parseInt(process.env.YARN_CACHE_VERSION_OVERRIDE??10);var Gdr=class e{static async find(t,{immutable:r,check:n}={}){let a=new e(t.get("cacheFolder"),{configuration:t,immutable:r,check:n});return await a.setup(),a}static getCacheKey(t){let r=t.get("compressionLevel"),n=r!=="mixed"?`c${r}`:"";return{cacheKey:[BX.CACHE_VERSION,n].join(""),cacheSpec:n}}constructor(t,{configuration:r,immutable:n=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set,this.mutexes=new Map,this.refCountedZipFsCache=new s3o.RefCountedCache(A=>{A.discardAndClose()}),this.cacheId=`-${(0,i3o.randomBytes)(8).toString("hex")}.tmp`,this.configuration=r,this.cwd=t,this.immutable=n,this.check=a;let{cacheSpec:o,cacheKey:l}=e.getCacheKey(r);this.cacheSpec=o,this.cacheKey=l}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let t=`${this.configuration.get("globalFolder")}/cache`;return t!==this.cwd?t:null}getVersionFilename(t){return`${B$.slugifyLocator(t)}-${this.cacheKey}.zip`}getChecksumFilename(t,r){let a=iMe(r).hash.slice(0,10);return`${B$.slugifyLocator(t)}-${a}.zip`}isChecksumCompatible(t){if(t===null)return!1;let{cacheVersion:r,cacheSpec:n}=iMe(t);if(r===null||r{let be=new qLn.ZipFS,Se=rw.ppath.join(tMe.PortablePath.root,v$.getIdentVendorPath(t));return be.mkdirSync(Se,{recursive:!0}),be.writeJsonSync(rw.ppath.join(Se,tMe.Filename.manifest),{name:v$.stringifyIdent(t),mocked:!0}),be},C=async(be,{isColdHit:Se,controlPath:De=null})=>{if(De===null&&l.unstablePackages?.has(t.locatorHash))return{isValid:!0,hash:null};let k=r&&!Se?iMe(r).cacheKey:this.cacheKey,tt=!l.skipIntegrityCheck||!r?`${k}/${await e9n.checksumFile(be)}`:r;if(De!==null){let Le=!l.skipIntegrityCheck||!r?`${this.cacheKey}/${await e9n.checksumFile(De)}`:r;if(tt!==Le)throw new nMe.ReportError(rMe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let ze=null;switch(r!==null&&tt!==r&&(this.check?ze="throw":iMe(r).cacheKey!==iMe(tt).cacheKey?ze="update":ze=this.configuration.get("checksumBehavior")),ze){case null:case"update":return{isValid:!0,hash:tt};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new nMe.ReportError(rMe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}},b=async be=>{if(!o)throw new Error(`Cache check required but no loader configured for ${v$.prettyLocator(this.configuration,t)}`);let Se=await o(),De=Se.getRealPath();Se.saveAndClose(),await rw.xfs.chmodPromise(De,420);let k=await C(be,{controlPath:De,isColdHit:!1});if(!k.isValid)throw new Error("Assertion failed: Expected a valid checksum");return k.hash},E=async()=>{if(A===null||!await rw.xfs.existsPromise(A)){let be=await o(),Se=be.getRealPath();return be.saveAndClose(),{source:"loader",path:Se}}return{source:"mirror",path:A}},N=async()=>{if(!o)throw new Error(`Cache entry required but missing for ${v$.prettyLocator(this.configuration,t)}`);if(this.immutable)throw new nMe.ReportError(rMe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${v$.prettyLocator(this.configuration,t)}`);let{path:be,source:Se}=await E(),{hash:De}=await C(be,{isColdHit:!0}),k=this.getLocatorPath(t,De),tt=[];Se!=="mirror"&&A!==null&&tt.push(async()=>{let Le=`${A}${this.cacheId}`;await rw.xfs.copyFilePromise(be,Le,$Ln.default.constants.COPYFILE_FICLONE),await rw.xfs.chmodPromise(Le,420),await rw.xfs.renamePromise(Le,A)}),(!l.mirrorWriteOnly||A===null)&&tt.push(async()=>{let Le=`${k}${this.cacheId}`;await rw.xfs.copyFilePromise(be,Le,$Ln.default.constants.COPYFILE_FICLONE),await rw.xfs.chmodPromise(Le,420),await rw.xfs.renamePromise(Le,k)});let ze=l.mirrorWriteOnly?A??k:k;return await Promise.all(tt.map(Le=>Le())),[!1,ze,De]},B=async()=>{let Se=(async()=>{let De=l.unstablePackages?.has(t.locatorHash),k=De||!r||this.isChecksumCompatible(r)?this.getLocatorPath(t,r):null,tt=k!==null?this.markedFiles.has(k)||await f.existsPromise(k):!1,ze=!!l.mockedPackages?.has(t.locatorHash)&&(!this.check||!tt),Le=ze||tt,Je=Le?n:a;if(Je&&Je(),Le){let ft=null,lt=k;if(!ze)if(this.check)ft=await b(lt);else{let Ot=await C(lt,{isColdHit:!1});if(Ot.isValid)ft=Ot.hash;else return N()}return[ze,lt,ft]}else{if(this.immutable&&De)throw new nMe.ReportError(rMe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${v$.prettyLocator(this.configuration,t)}; consider defining ${zLn.formatUtils.pretty(this.configuration,"supportedArchitectures",zLn.formatUtils.Type.CODE)} to cache packages for multiple systems`);return N()}})();this.mutexes.set(t.locatorHash,Se);try{return await Se}finally{this.mutexes.delete(t.locatorHash)}};for(let be;be=this.mutexes.get(t.locatorHash);)await be;let[F,Q,J]=await B();F||this.markedFiles.add(Q);let ae=()=>this.refCountedZipFsCache.addOrCreate(Q,()=>F?I():new qLn.ZipFS(Q,{baseFs:f,readOnly:!0})),ne,ce=new tMe.LazyFS(()=>Fdr.prettifySyncErrors(()=>(ne=ae(),ne.value),be=>`Failed to open the cache entry for ${v$.prettyLocator(this.configuration,t)}: ${be}`),rw.ppath),fe=new tMe.AliasFS(Q,{baseFs:ce,pathUtils:rw.ppath}),ue=()=>{ne?.release()},de=l.unstablePackages?.has(t.locatorHash)?null:J;return[fe,ue,de]}};vX.Cache=Gdr;var s3o=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/;function iMe(e){let t=e.match(s3o);if(!t?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=t.groups.cacheVersion?parseInt(t.groups.cacheVersion):null;return{cacheKey:t.groups.cacheKey??null,cacheVersion:r,cacheSpec:t.groups.cacheSpec??null,hash:t.groups.hash}}});var Ldr=H(UAt=>{"use strict";Object.defineProperty(UAt,"__esModule",{value:!0});UAt.BuildDirectiveType=void 0;var t9n;(function(e){e[e.SCRIPT=0]="SCRIPT",e[e.SHELLCODE=1]="SHELLCODE"})(t9n||(UAt.BuildDirectiveType=t9n={}))});var Wdr=H(BIe=>{"use strict";Object.defineProperty(BIe,"__esModule",{value:!0});BIe.LegacyMigrationResolver=BIe.IMPORTED_PATTERNS=void 0;var n9n=(Wa(),vi(Va)),KAt=Io(),o3o=tM(),r9n=U9(),a3o=n9n.__importStar(h$()),Joe=n9n.__importStar(fG());BIe.IMPORTED_PATTERNS=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(e,t,r,n)=>`${r}#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,e=>`npm:${e}`],[/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(e,t)=>Joe.makeRange({protocol:"npm:",source:null,selector:e,params:{__archiveUrl:t}})],[/^[^/]+\.tgz#[0-9a-f]+$/,e=>`npm:${e}`]];var Vdr=class{constructor(t){this.resolver=t,this.resolutions=null}async setup(t,{report:r}){let n=KAt.ppath.join(t.cwd,KAt.Filename.lockfile);if(!KAt.xfs.existsSync(n))return;let a=await KAt.xfs.readFilePromise(n,"utf8"),o=(0,o3o.parseSyml)(a);if(Object.hasOwn(o,"__metadata"))return;let l=this.resolutions=new Map;for(let A of Object.keys(o)){let f=Joe.tryParseDescriptor(A);if(!f){r.reportWarning(r9n.MessageName.YARN_IMPORT_FAILED,`Failed to parse the string "${A}" into a proper descriptor`);continue}let I=a3o.validRange(f.range)?Joe.makeDescriptor(f,`npm:${f.range}`):f,{version:C,resolved:b}=o[A];if(!b)continue;let E;for(let[B,F]of BIe.IMPORTED_PATTERNS){let Q=b.match(B);if(Q){E=F(C,...Q);break}}if(!E){r.reportWarning(r9n.MessageName.YARN_IMPORT_FAILED,`${Joe.prettyDescriptor(t.configuration,I)}: Only some patterns can be imported from legacy lockfiles (not "${b}")`);continue}let N=I;try{let B=Joe.parseRange(I.range),F=Joe.tryParseDescriptor(B.selector,!0);F&&(N=F)}catch{}l.set(I.descriptorHash,Joe.makeLocator(N,E))}}supportsDescriptor(t,r){return this.resolutions?this.resolutions.has(t.descriptorHash):!1}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(t.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let o=Joe.convertLocatorToDescriptor(a),l=n.project.configuration.normalizeDependency(o);return await this.resolver.getCandidates(l,r,n)}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};BIe.LegacyMigrationResolver=Vdr});var i9n=H(zAt=>{"use strict";Object.defineProperty(zAt,"__esModule",{value:!0});zAt.LightReport=void 0;var c3o=(Wa(),vi(Va)),l3o=dM(),u3o=J5e(),jAt=c3o.__importStar(uM()),Odr=class extends l3o.Report{static async start(t,r){let n=new this(t);try{await r(n)}catch(a){n.reportExceptionOnce(a)}finally{await n.finalize()}return n}constructor({configuration:t,stdout:r,suggestInstall:n=!0}){super(),this.errorCount=0,jAt.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.stdout=r,this.suggestInstall=n}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){this.errorCount+=1,this.stdout.write(`${jAt.pretty(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(t)}: ${r} +`)}(this.mirrorCwd||!this.immutable)&&await nw.xfs.mkdirPromise(this.mirrorCwd||this.cwd,{recursive:!0})}async fetchPackageFromCache(t,r,{onHit:n,onMiss:a,loader:o,...l}){let A=this.getLocatorMirrorPath(t),f=new tMe.NodeFS,I=()=>{let be=new i9n.ZipFS,Se=nw.ppath.join(tMe.PortablePath.root,B$.getIdentVendorPath(t));return be.mkdirSync(Se,{recursive:!0}),be.writeJsonSync(nw.ppath.join(Se,tMe.Filename.manifest),{name:B$.stringifyIdent(t),mocked:!0}),be},C=async(be,{isColdHit:Se,controlPath:De=null})=>{if(De===null&&l.unstablePackages?.has(t.locatorHash))return{isValid:!0,hash:null};let k=r&&!Se?iMe(r).cacheKey:this.cacheKey,tt=!l.skipIntegrityCheck||!r?`${k}/${await o9n.checksumFile(be)}`:r;if(De!==null){let Le=!l.skipIntegrityCheck||!r?`${this.cacheKey}/${await o9n.checksumFile(De)}`:r;if(tt!==Le)throw new nMe.ReportError(rMe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let ze=null;switch(r!==null&&tt!==r&&(this.check?ze="throw":iMe(r).cacheKey!==iMe(tt).cacheKey?ze="update":ze=this.configuration.get("checksumBehavior")),ze){case null:case"update":return{isValid:!0,hash:tt};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new nMe.ReportError(rMe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}},b=async be=>{if(!o)throw new Error(`Cache check required but no loader configured for ${B$.prettyLocator(this.configuration,t)}`);let Se=await o(),De=Se.getRealPath();Se.saveAndClose(),await nw.xfs.chmodPromise(De,420);let k=await C(be,{controlPath:De,isColdHit:!1});if(!k.isValid)throw new Error("Assertion failed: Expected a valid checksum");return k.hash},E=async()=>{if(A===null||!await nw.xfs.existsPromise(A)){let be=await o(),Se=be.getRealPath();return be.saveAndClose(),{source:"loader",path:Se}}return{source:"mirror",path:A}},N=async()=>{if(!o)throw new Error(`Cache entry required but missing for ${B$.prettyLocator(this.configuration,t)}`);if(this.immutable)throw new nMe.ReportError(rMe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${B$.prettyLocator(this.configuration,t)}`);let{path:be,source:Se}=await E(),{hash:De}=await C(be,{isColdHit:!0}),k=this.getLocatorPath(t,De),tt=[];Se!=="mirror"&&A!==null&&tt.push(async()=>{let Le=`${A}${this.cacheId}`;await nw.xfs.copyFilePromise(be,Le,s9n.default.constants.COPYFILE_FICLONE),await nw.xfs.chmodPromise(Le,420),await nw.xfs.renamePromise(Le,A)}),(!l.mirrorWriteOnly||A===null)&&tt.push(async()=>{let Le=`${k}${this.cacheId}`;await nw.xfs.copyFilePromise(be,Le,s9n.default.constants.COPYFILE_FICLONE),await nw.xfs.chmodPromise(Le,420),await nw.xfs.renamePromise(Le,k)});let ze=l.mirrorWriteOnly?A??k:k;return await Promise.all(tt.map(Le=>Le())),[!1,ze,De]},B=async()=>{let Se=(async()=>{let De=l.unstablePackages?.has(t.locatorHash),k=De||!r||this.isChecksumCompatible(r)?this.getLocatorPath(t,r):null,tt=k!==null?this.markedFiles.has(k)||await f.existsPromise(k):!1,ze=!!l.mockedPackages?.has(t.locatorHash)&&(!this.check||!tt),Le=ze||tt,Je=Le?n:a;if(Je&&Je(),Le){let ft=null,lt=k;if(!ze)if(this.check)ft=await b(lt);else{let Ot=await C(lt,{isColdHit:!1});if(Ot.isValid)ft=Ot.hash;else return N()}return[ze,lt,ft]}else{if(this.immutable&&De)throw new nMe.ReportError(rMe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${B$.prettyLocator(this.configuration,t)}; consider defining ${n9n.formatUtils.pretty(this.configuration,"supportedArchitectures",n9n.formatUtils.Type.CODE)} to cache packages for multiple systems`);return N()}})();this.mutexes.set(t.locatorHash,Se);try{return await Se}finally{this.mutexes.delete(t.locatorHash)}};for(let be;be=this.mutexes.get(t.locatorHash);)await be;let[F,Q,J]=await B();F||this.markedFiles.add(Q);let ae=()=>this.refCountedZipFsCache.addOrCreate(Q,()=>F?I():new i9n.ZipFS(Q,{baseFs:f,readOnly:!0})),ne,ce=new tMe.LazyFS(()=>Fdr.prettifySyncErrors(()=>(ne=ae(),ne.value),be=>`Failed to open the cache entry for ${B$.prettyLocator(this.configuration,t)}: ${be}`),nw.ppath),fe=new tMe.AliasFS(Q,{baseFs:ce,pathUtils:nw.ppath}),ue=()=>{ne?.release()},de=l.unstablePackages?.has(t.locatorHash)?null:J;return[fe,ue,de]}};BX.Cache=Gdr;var o3o=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/;function iMe(e){let t=e.match(o3o);if(!t?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=t.groups.cacheVersion?parseInt(t.groups.cacheVersion):null;return{cacheKey:t.groups.cacheKey??null,cacheVersion:r,cacheSpec:t.groups.cacheSpec??null,hash:t.groups.hash}}});var Ldr=H(JAt=>{"use strict";Object.defineProperty(JAt,"__esModule",{value:!0});JAt.BuildDirectiveType=void 0;var a9n;(function(e){e[e.SCRIPT=0]="SCRIPT",e[e.SHELLCODE=1]="SHELLCODE"})(a9n||(JAt.BuildDirectiveType=a9n={}))});var Wdr=H(wIe=>{"use strict";Object.defineProperty(wIe,"__esModule",{value:!0});wIe.LegacyMigrationResolver=wIe.IMPORTED_PATTERNS=void 0;var l9n=(Wa(),vi(Va)),UAt=No(),a3o=LO(),c9n=K9(),c3o=l9n.__importStar(m$()),Uoe=l9n.__importStar(IG());wIe.IMPORTED_PATTERNS=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(e,t,r,n)=>`${r}#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,e=>`npm:${e}`],[/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(e,t)=>Uoe.makeRange({protocol:"npm:",source:null,selector:e,params:{__archiveUrl:t}})],[/^[^/]+\.tgz#[0-9a-f]+$/,e=>`npm:${e}`]];var Vdr=class{constructor(t){this.resolver=t,this.resolutions=null}async setup(t,{report:r}){let n=UAt.ppath.join(t.cwd,UAt.Filename.lockfile);if(!UAt.xfs.existsSync(n))return;let a=await UAt.xfs.readFilePromise(n,"utf8"),o=(0,a3o.parseSyml)(a);if(Object.hasOwn(o,"__metadata"))return;let l=this.resolutions=new Map;for(let A of Object.keys(o)){let f=Uoe.tryParseDescriptor(A);if(!f){r.reportWarning(c9n.MessageName.YARN_IMPORT_FAILED,`Failed to parse the string "${A}" into a proper descriptor`);continue}let I=c3o.validRange(f.range)?Uoe.makeDescriptor(f,`npm:${f.range}`):f,{version:C,resolved:b}=o[A];if(!b)continue;let E;for(let[B,F]of wIe.IMPORTED_PATTERNS){let Q=b.match(B);if(Q){E=F(C,...Q);break}}if(!E){r.reportWarning(c9n.MessageName.YARN_IMPORT_FAILED,`${Uoe.prettyDescriptor(t.configuration,I)}: Only some patterns can be imported from legacy lockfiles (not "${b}")`);continue}let N=I;try{let B=Uoe.parseRange(I.range),F=Uoe.tryParseDescriptor(B.selector,!0);F&&(N=F)}catch{}l.set(I.descriptorHash,Uoe.makeLocator(N,E))}}supportsDescriptor(t,r){return this.resolutions?this.resolutions.has(t.descriptorHash):!1}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(t.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let o=Uoe.convertLocatorToDescriptor(a),l=n.project.configuration.normalizeDependency(o);return await this.resolver.getCandidates(l,r,n)}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};wIe.LegacyMigrationResolver=Vdr});var u9n=H(jAt=>{"use strict";Object.defineProperty(jAt,"__esModule",{value:!0});jAt.LightReport=void 0;var l3o=(Wa(),vi(Va)),u3o=pM(),g3o=J5e(),KAt=l3o.__importStar(gM()),Odr=class extends u3o.Report{static async start(t,r){let n=new this(t);try{await r(n)}catch(a){n.reportExceptionOnce(a)}finally{await n.finalize()}return n}constructor({configuration:t,stdout:r,suggestInstall:n=!0}){super(),this.errorCount=0,KAt.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.stdout=r,this.suggestInstall=n}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){this.errorCount+=1,this.stdout.write(`${KAt.pretty(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(t)}: ${r} `)}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){this.errorCount>0&&(this.stdout.write(` -`),this.stdout.write(`${jAt.pretty(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. -`),this.suggestInstall&&this.stdout.write(`${jAt.pretty(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. -`))}formatNameWithHyperlink(t){return(0,u3o.formatNameWithHyperlink)(t,{configuration:this.configuration,json:!1})}};zAt.LightReport=Odr});var Mdr=H(qAt=>{"use strict";Object.defineProperty(qAt,"__esModule",{value:!0});qAt.LockfileResolver=void 0;var g3o=(Wa(),vi(Va)),s9n=g3o.__importStar(fG()),Pdr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return!!(r.project.storedResolutions.get(t.descriptorHash)||r.project.originalPackages.has(s9n.convertDescriptorToLocator(t).locatorHash))}supportsLocator(t,r){return!!(r.project.originalPackages.has(t.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(t,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){let a=n.project.storedResolutions.get(t.descriptorHash);if(a){let l=n.project.originalPackages.get(a);if(l)return[l]}let o=n.project.originalPackages.get(s9n.convertDescriptorToLocator(t).locatorHash);if(o)return[o];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.originalPackages.get(t.locatorHash);if(!n)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return n}};qAt.LockfileResolver=Pdr});var B$=H(Hdr=>{"use strict";Object.defineProperty(Hdr,"__esModule",{value:!0});Hdr.default=o9n;function o9n(){}o9n.prototype={diff:function(t,r){var n,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.callback;typeof a=="function"&&(o=a,a={}),this.options=a;var l=this;function A(ce){return o?(setTimeout(function(){o(void 0,ce)},0),!0):ce}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var f=r.length,I=t.length,C=1,b=f+I;a.maxEditLength&&(b=Math.min(b,a.maxEditLength));var E=(n=a.timeout)!==null&&n!==void 0?n:1/0,N=Date.now()+E,B=[{oldPos:-1,lastComponent:void 0}],F=this.extractCommon(B[0],r,t,0);if(B[0].oldPos+1>=I&&F+1>=f)return A([{value:this.join(r),count:r.length}]);var Q=-1/0,J=1/0;function ae(){for(var ce=Math.max(Q,-C);ce<=Math.min(J,C);ce+=2){var fe=void 0,ue=B[ce-1],de=B[ce+1];ue&&(B[ce-1]=void 0);var be=!1;if(de){var Se=de.oldPos-ce;be=de&&0<=Se&&Se=I&&F+1>=f)return A(A3o(l,fe.lastComponent,r,t,l.useLongestToken));B[ce]=fe,fe.oldPos+1>=I&&(J=Math.min(J,ce-1)),F+1>=f&&(Q=Math.max(Q,ce+1))}C++}if(o)(function ce(){setTimeout(function(){if(C>b||Date.now()>N)return o();ae()||ce()},0)})();else for(;C<=b&&Date.now()<=N;){var ne=ae();if(ne)return ne}},addToPath:function(t,r,n,a){var o=t.lastComponent;return o&&o.added===r&&o.removed===n?{oldPos:t.oldPos+a,lastComponent:{count:o.count+1,added:r,removed:n,previousComponent:o.previousComponent}}:{oldPos:t.oldPos+a,lastComponent:{count:1,added:r,removed:n,previousComponent:o}}},extractCommon:function(t,r,n,a){for(var o=r.length,l=n.length,A=t.oldPos,f=A-a,I=0;f+1F.length?J:F}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}var B=o[f-1];return f>1&&typeof B.value=="string"&&(B.added||B.removed)&&e.equals("",B.value)&&(o[f-2].value+=B.value,o.pop()),o}});var c9n=H(sMe=>{"use strict";Object.defineProperty(sMe,"__esModule",{value:!0});sMe.diffChars=f3o;sMe.characterDiff=void 0;var d3o=p3o(B$());function p3o(e){return e&&e.__esModule?e:{default:e}}var a9n=new d3o.default;sMe.characterDiff=a9n;function f3o(e,t,r){return a9n.diff(e,t,r)}});var Qdr=H(Ydr=>{"use strict";Object.defineProperty(Ydr,"__esModule",{value:!0});Ydr.generateOptions=I3o;function I3o(e,t){if(typeof e=="function")t.callback=e;else if(e)for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}});var g9n=H($ve=>{"use strict";Object.defineProperty($ve,"__esModule",{value:!0});$ve.diffWords=_3o;$ve.diffWordsWithSpace=y3o;$ve.wordDiff=void 0;var h3o=C3o(B$()),m3o=Qdr();function C3o(e){return e&&e.__esModule?e:{default:e}}var l9n=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,u9n=/\S/,oMe=new h3o.default;$ve.wordDiff=oMe;oMe.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!u9n.test(e)&&!u9n.test(t)};oMe.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r{"use strict";Object.defineProperty(eBe,"__esModule",{value:!0});eBe.diffLines=v3o;eBe.diffTrimmedLines=B3o;eBe.lineDiff=void 0;var b3o=S3o(B$()),E3o=Qdr();function S3o(e){return e&&e.__esModule?e:{default:e}}var $At=new b3o.default;eBe.lineDiff=$At;$At.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var n=0;n{"use strict";Object.defineProperty(aMe,"__esModule",{value:!0});aMe.diffSentences=R3o;aMe.sentenceDiff=void 0;var w3o=T3o(B$());function T3o(e){return e&&e.__esModule?e:{default:e}}var Xdr=new w3o.default;aMe.sentenceDiff=Xdr;Xdr.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};function R3o(e,t,r){return Xdr.diff(e,t,r)}});var d9n=H(cMe=>{"use strict";Object.defineProperty(cMe,"__esModule",{value:!0});cMe.diffCss=k3o;cMe.cssDiff=void 0;var N3o=D3o(B$());function D3o(e){return e&&e.__esModule?e:{default:e}}var Jdr=new N3o.default;cMe.cssDiff=Jdr;Jdr.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function k3o(e,t,r){return Jdr.diff(e,t,r)}});var f9n=H(tBe=>{"use strict";Object.defineProperty(tBe,"__esModule",{value:!0});tBe.diffJson=Z3o;tBe.canonicalize=rdt;tBe.jsonDiff=void 0;var p9n=G3o(B$()),x3o=edt();function G3o(e){return e&&e.__esModule?e:{default:e}}function tdt(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?tdt=function(r){return typeof r}:tdt=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},tdt(e)}var F3o=Object.prototype.toString,wIe=new p9n.default;tBe.jsonDiff=wIe;wIe.useLongestToken=!0;wIe.tokenize=x3o.lineDiff.tokenize;wIe.castInput=function(e){var t=this.options,r=t.undefinedReplacement,n=t.stringifyReplacer,a=n===void 0?function(o,l){return typeof l>"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(rdt(e,null,null,a),a," ")};wIe.equals=function(e,t){return p9n.default.prototype.equals.call(wIe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function Z3o(e,t,r){return wIe.diff(e,t,r)}function rdt(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{"use strict";Object.defineProperty(uMe,"__esModule",{value:!0});uMe.diffArrays=W3o;uMe.arrayDiff=void 0;var L3o=V3o(B$());function V3o(e){return e&&e.__esModule?e:{default:e}}var lMe=new L3o.default;uMe.arrayDiff=lMe;lMe.tokenize=function(e){return e.slice()};lMe.join=lMe.removeEmpty=function(e){return e};function W3o(e,t,r){return lMe.diff(e,t,r)}});var ndt=H(Udr=>{"use strict";Object.defineProperty(Udr,"__esModule",{value:!0});Udr.parsePatch=O3o;function O3o(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=e.split(/\r\n|[\n\v\f\r\x85]/),n=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=[],o=0;function l(){var I={};for(a.push(I);o"u"?1:+b[2],newStart:+b[3],newLines:typeof b[4]>"u"?1:+b[4],lines:[],linedelimiters:[]};E.oldLines===0&&(E.oldStart+=1),E.newLines===0&&(E.newStart+=1);for(var N=0,B=0;o{"use strict";Object.defineProperty(Kdr,"__esModule",{value:!0});Kdr.default=P3o;function P3o(e,t,r){var n=!0,a=!1,o=!1,l=1;return function A(){if(n&&!o){if(a?l++:n=!1,e+l<=r)return l;o=!0}if(!a)return o||(n=!0),t<=e-l?-l++:(a=!0,A())}}});var _9n=H(idt=>{"use strict";Object.defineProperty(idt,"__esModule",{value:!0});idt.applyPatch=C9n;idt.applyPatches=Y3o;var m9n=ndt(),M3o=H3o(h9n());function H3o(e){return e&&e.__esModule?e:{default:e}}function C9n(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string"&&(t=(0,m9n.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var n=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=t.hunks,l=r.compareLine||function(Je,ft,lt,Ot){return ft===Ot},A=0,f=r.fuzzFactor||0,I=0,C=0,b,E;function N(Je,ft){for(var lt=0;lt0?Ot[0]:" ",Sr=Ot.length>0?Ot.substr(1):Ot;if(Er===" "||Er==="-"){if(!l(ft+1,n[ft],Er,Sr)&&(A++,A>f))return!1;ft++}}return!0}for(var B=0;B0?Se[0]:" ",k=Se.length>0?Se.substr(1):Se,tt=ue.linedelimiters&&ue.linedelimiters[be]||` +`),this.stdout.write(`${KAt.pretty(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. +`),this.suggestInstall&&this.stdout.write(`${KAt.pretty(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. +`))}formatNameWithHyperlink(t){return(0,g3o.formatNameWithHyperlink)(t,{configuration:this.configuration,json:!1})}};jAt.LightReport=Odr});var Mdr=H(zAt=>{"use strict";Object.defineProperty(zAt,"__esModule",{value:!0});zAt.LockfileResolver=void 0;var A3o=(Wa(),vi(Va)),g9n=A3o.__importStar(IG()),Pdr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return!!(r.project.storedResolutions.get(t.descriptorHash)||r.project.originalPackages.has(g9n.convertDescriptorToLocator(t).locatorHash))}supportsLocator(t,r){return!!(r.project.originalPackages.has(t.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(t,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){let a=n.project.storedResolutions.get(t.descriptorHash);if(a){let l=n.project.originalPackages.get(a);if(l)return[l]}let o=n.project.originalPackages.get(g9n.convertDescriptorToLocator(t).locatorHash);if(o)return[o];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.originalPackages.get(t.locatorHash);if(!n)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return n}};zAt.LockfileResolver=Pdr});var w$=H(Hdr=>{"use strict";Object.defineProperty(Hdr,"__esModule",{value:!0});Hdr.default=A9n;function A9n(){}A9n.prototype={diff:function(t,r){var n,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.callback;typeof a=="function"&&(o=a,a={}),this.options=a;var l=this;function A(ce){return o?(setTimeout(function(){o(void 0,ce)},0),!0):ce}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var f=r.length,I=t.length,C=1,b=f+I;a.maxEditLength&&(b=Math.min(b,a.maxEditLength));var E=(n=a.timeout)!==null&&n!==void 0?n:1/0,N=Date.now()+E,B=[{oldPos:-1,lastComponent:void 0}],F=this.extractCommon(B[0],r,t,0);if(B[0].oldPos+1>=I&&F+1>=f)return A([{value:this.join(r),count:r.length}]);var Q=-1/0,J=1/0;function ae(){for(var ce=Math.max(Q,-C);ce<=Math.min(J,C);ce+=2){var fe=void 0,ue=B[ce-1],de=B[ce+1];ue&&(B[ce-1]=void 0);var be=!1;if(de){var Se=de.oldPos-ce;be=de&&0<=Se&&Se=I&&F+1>=f)return A(d3o(l,fe.lastComponent,r,t,l.useLongestToken));B[ce]=fe,fe.oldPos+1>=I&&(J=Math.min(J,ce-1)),F+1>=f&&(Q=Math.max(Q,ce+1))}C++}if(o)(function ce(){setTimeout(function(){if(C>b||Date.now()>N)return o();ae()||ce()},0)})();else for(;C<=b&&Date.now()<=N;){var ne=ae();if(ne)return ne}},addToPath:function(t,r,n,a){var o=t.lastComponent;return o&&o.added===r&&o.removed===n?{oldPos:t.oldPos+a,lastComponent:{count:o.count+1,added:r,removed:n,previousComponent:o.previousComponent}}:{oldPos:t.oldPos+a,lastComponent:{count:1,added:r,removed:n,previousComponent:o}}},extractCommon:function(t,r,n,a){for(var o=r.length,l=n.length,A=t.oldPos,f=A-a,I=0;f+1F.length?J:F}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}var B=o[f-1];return f>1&&typeof B.value=="string"&&(B.added||B.removed)&&e.equals("",B.value)&&(o[f-2].value+=B.value,o.pop()),o}});var p9n=H(sMe=>{"use strict";Object.defineProperty(sMe,"__esModule",{value:!0});sMe.diffChars=I3o;sMe.characterDiff=void 0;var p3o=f3o(w$());function f3o(e){return e&&e.__esModule?e:{default:e}}var d9n=new p3o.default;sMe.characterDiff=d9n;function I3o(e,t,r){return d9n.diff(e,t,r)}});var Qdr=H(Ydr=>{"use strict";Object.defineProperty(Ydr,"__esModule",{value:!0});Ydr.generateOptions=h3o;function h3o(e,t){if(typeof e=="function")t.callback=e;else if(e)for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}});var h9n=H($ve=>{"use strict";Object.defineProperty($ve,"__esModule",{value:!0});$ve.diffWords=y3o;$ve.diffWordsWithSpace=b3o;$ve.wordDiff=void 0;var m3o=_3o(w$()),C3o=Qdr();function _3o(e){return e&&e.__esModule?e:{default:e}}var f9n=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,I9n=/\S/,oMe=new m3o.default;$ve.wordDiff=oMe;oMe.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!I9n.test(e)&&!I9n.test(t)};oMe.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r{"use strict";Object.defineProperty(eBe,"__esModule",{value:!0});eBe.diffLines=B3o;eBe.diffTrimmedLines=w3o;eBe.lineDiff=void 0;var E3o=v3o(w$()),S3o=Qdr();function v3o(e){return e&&e.__esModule?e:{default:e}}var qAt=new E3o.default;eBe.lineDiff=qAt;qAt.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var n=0;n{"use strict";Object.defineProperty(aMe,"__esModule",{value:!0});aMe.diffSentences=N3o;aMe.sentenceDiff=void 0;var T3o=R3o(w$());function R3o(e){return e&&e.__esModule?e:{default:e}}var Xdr=new T3o.default;aMe.sentenceDiff=Xdr;Xdr.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};function N3o(e,t,r){return Xdr.diff(e,t,r)}});var C9n=H(cMe=>{"use strict";Object.defineProperty(cMe,"__esModule",{value:!0});cMe.diffCss=x3o;cMe.cssDiff=void 0;var D3o=k3o(w$());function k3o(e){return e&&e.__esModule?e:{default:e}}var Jdr=new D3o.default;cMe.cssDiff=Jdr;Jdr.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function x3o(e,t,r){return Jdr.diff(e,t,r)}});var y9n=H(tBe=>{"use strict";Object.defineProperty(tBe,"__esModule",{value:!0});tBe.diffJson=L3o;tBe.canonicalize=tdt;tBe.jsonDiff=void 0;var _9n=F3o(w$()),G3o=$At();function F3o(e){return e&&e.__esModule?e:{default:e}}function edt(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?edt=function(r){return typeof r}:edt=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},edt(e)}var Z3o=Object.prototype.toString,TIe=new _9n.default;tBe.jsonDiff=TIe;TIe.useLongestToken=!0;TIe.tokenize=G3o.lineDiff.tokenize;TIe.castInput=function(e){var t=this.options,r=t.undefinedReplacement,n=t.stringifyReplacer,a=n===void 0?function(o,l){return typeof l>"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(tdt(e,null,null,a),a," ")};TIe.equals=function(e,t){return _9n.default.prototype.equals.call(TIe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function L3o(e,t,r){return TIe.diff(e,t,r)}function tdt(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{"use strict";Object.defineProperty(uMe,"__esModule",{value:!0});uMe.diffArrays=O3o;uMe.arrayDiff=void 0;var V3o=W3o(w$());function W3o(e){return e&&e.__esModule?e:{default:e}}var lMe=new V3o.default;uMe.arrayDiff=lMe;lMe.tokenize=function(e){return e.slice()};lMe.join=lMe.removeEmpty=function(e){return e};function O3o(e,t,r){return lMe.diff(e,t,r)}});var rdt=H(Udr=>{"use strict";Object.defineProperty(Udr,"__esModule",{value:!0});Udr.parsePatch=P3o;function P3o(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=e.split(/\r\n|[\n\v\f\r\x85]/),n=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=[],o=0;function l(){var I={};for(a.push(I);o"u"?1:+b[2],newStart:+b[3],newLines:typeof b[4]>"u"?1:+b[4],lines:[],linedelimiters:[]};E.oldLines===0&&(E.oldStart+=1),E.newLines===0&&(E.newStart+=1);for(var N=0,B=0;o{"use strict";Object.defineProperty(Kdr,"__esModule",{value:!0});Kdr.default=M3o;function M3o(e,t,r){var n=!0,a=!1,o=!1,l=1;return function A(){if(n&&!o){if(a?l++:n=!1,e+l<=r)return l;o=!0}if(!a)return o||(n=!0),t<=e-l?-l++:(a=!0,A())}}});var B9n=H(ndt=>{"use strict";Object.defineProperty(ndt,"__esModule",{value:!0});ndt.applyPatch=v9n;ndt.applyPatches=Q3o;var S9n=rdt(),H3o=Y3o(E9n());function Y3o(e){return e&&e.__esModule?e:{default:e}}function v9n(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string"&&(t=(0,S9n.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var n=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=t.hunks,l=r.compareLine||function(Je,ft,lt,Ot){return ft===Ot},A=0,f=r.fuzzFactor||0,I=0,C=0,b,E;function N(Je,ft){for(var lt=0;lt0?Ot[0]:" ",Sr=Ot.length>0?Ot.substr(1):Ot;if(Er===" "||Er==="-"){if(!l(ft+1,n[ft],Er,Sr)&&(A++,A>f))return!1;ft++}}return!0}for(var B=0;B0?Se[0]:" ",k=Se.length>0?Se.substr(1):Se,tt=ue.linedelimiters&&ue.linedelimiters[be]||` `;if(De===" ")de++;else if(De==="-")n.splice(de,1),a.splice(de,1);else if(De==="+")n.splice(de,0,k),a.splice(de,0,tt),de++;else if(De==="\\"){var ze=ue.lines[be-1]?ue.lines[be-1][0]:null;ze==="+"?b=!0:ze==="-"&&(E=!0)}}}if(b)for(;!n[n.length-1];)n.pop(),a.pop();else E&&(n.push(""),a.push(` -`));for(var Le=0;Le{"use strict";Object.defineProperty(rBe,"__esModule",{value:!0});rBe.structuredPatch=y9n;rBe.formatPatch=qdr;rBe.createTwoFilesPatch=b9n;rBe.createPatch=j3o;var Q3o=edt();function jdr(e){return K3o(e)||U3o(e)||J3o(e)||X3o()}function X3o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function J3o(e,t){if(e){if(typeof e=="string")return zdr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return zdr(e,t)}}function U3o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function K3o(e){if(Array.isArray(e))return zdr(e)}function zdr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"&&(l.context=4);var A=(0,Q3o.diffLines)(r,n,l);if(!A)return;A.push({value:"",lines:[]});function f(J){return J.map(function(ae){return" "+ae})}for(var I=[],C=0,b=0,E=[],N=1,B=1,F=function(ae){var ne=A[ae],ce=ne.lines||ne.value.replace(/\n$/,"").split(` +`));for(var Le=0;Le{"use strict";Object.defineProperty(rBe,"__esModule",{value:!0});rBe.structuredPatch=w9n;rBe.formatPatch=qdr;rBe.createTwoFilesPatch=T9n;rBe.createPatch=z3o;var X3o=$At();function jdr(e){return j3o(e)||K3o(e)||U3o(e)||J3o()}function J3o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function U3o(e,t){if(e){if(typeof e=="string")return zdr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return zdr(e,t)}}function K3o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function j3o(e){if(Array.isArray(e))return zdr(e)}function zdr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"&&(l.context=4);var A=(0,X3o.diffLines)(r,n,l);if(!A)return;A.push({value:"",lines:[]});function f(J){return J.map(function(ae){return" "+ae})}for(var I=[],C=0,b=0,E=[],N=1,B=1,F=function(ae){var ne=A[ae],ce=ne.lines||ne.value.replace(/\n$/,"").split(` `);if(ne.lines=ce,ne.added||ne.removed){var fe;if(!C){var ue=A[ae-1];C=N,b=B,ue&&(E=l.context>0?f(ue.lines.slice(-l.context)):[],C-=E.length,b-=E.length)}(fe=E).push.apply(fe,jdr(ce.map(function(Le){return(ne.added?"+":"-")+Le}))),ne.added?B+=ce.length:N+=ce.length}else{if(C)if(ce.length<=l.context*2&&ae=A.length-2&&ce.length<=l.context){var k=/\n$/.test(r),tt=/\n$/.test(n),ze=ce.length==0&&E.length>De.oldLines;!k&&ze&&r.length>0&&E.splice(De.oldLines,0,"\\ No newline at end of file"),(!k&&!ze||!tt)&&E.push("\\ No newline at end of file")}I.push(De),C=0,b=0,E=[]}N+=ce.length,B+=ce.length}},Q=0;Q"u"?"":" "+e.oldHeader)),t.push("+++ "+e.newFileName+(typeof e.newHeader>"u"?"":" "+e.newHeader));for(var r=0;r{"use strict";Object.defineProperty(sdt,"__esModule",{value:!0});sdt.arrayEqual=z3o;sdt.arrayStartsWith=E9n;function z3o(e,t){return e.length!==t.length?!1:E9n(e,t)}function E9n(e,t){if(t.length>e.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(adt,"__esModule",{value:!0});adt.calcLineCount=G9n;adt.merge=i5o;var q3o=$dr(),$3o=ndt(),epr=S9n();function nBe(e){return n5o(e)||r5o(e)||t5o(e)||e5o()}function e5o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function t5o(e,t){if(e){if(typeof e=="string")return tpr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return tpr(e,t)}}function r5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function n5o(e){if(Array.isArray(e))return tpr(e)}function tpr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r{"use strict";Object.defineProperty(ipr,"__esModule",{value:!0});ipr.reversePatch=V9n;function Z9n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function L9n(e){for(var t=1;t{"use strict";Object.defineProperty(spr,"__esModule",{value:!0});spr.convertChangesToDMP=l5o;function l5o(e){for(var t=[],r,n,a=0;a{"use strict";Object.defineProperty(opr,"__esModule",{value:!0});opr.convertChangesToXML=u5o;function u5o(e){for(var t=[],r=0;r"):n.removed&&t.push(""),t.push(g5o(n.value)),n.added?t.push(""):n.removed&&t.push("")}return t.join("")}function g5o(e){var t=e;return t=t.replace(/&/g,"&"),t=t.replace(//g,">"),t=t.replace(/"/g,"""),t}});var apr=H(B2=>{"use strict";Object.defineProperty(B2,"__esModule",{value:!0});Object.defineProperty(B2,"Diff",{enumerable:!0,get:function(){return A5o.default}});Object.defineProperty(B2,"diffChars",{enumerable:!0,get:function(){return d5o.diffChars}});Object.defineProperty(B2,"diffWords",{enumerable:!0,get:function(){return M9n.diffWords}});Object.defineProperty(B2,"diffWordsWithSpace",{enumerable:!0,get:function(){return M9n.diffWordsWithSpace}});Object.defineProperty(B2,"diffLines",{enumerable:!0,get:function(){return H9n.diffLines}});Object.defineProperty(B2,"diffTrimmedLines",{enumerable:!0,get:function(){return H9n.diffTrimmedLines}});Object.defineProperty(B2,"diffSentences",{enumerable:!0,get:function(){return p5o.diffSentences}});Object.defineProperty(B2,"diffCss",{enumerable:!0,get:function(){return f5o.diffCss}});Object.defineProperty(B2,"diffJson",{enumerable:!0,get:function(){return Y9n.diffJson}});Object.defineProperty(B2,"canonicalize",{enumerable:!0,get:function(){return Y9n.canonicalize}});Object.defineProperty(B2,"diffArrays",{enumerable:!0,get:function(){return I5o.diffArrays}});Object.defineProperty(B2,"applyPatch",{enumerable:!0,get:function(){return Q9n.applyPatch}});Object.defineProperty(B2,"applyPatches",{enumerable:!0,get:function(){return Q9n.applyPatches}});Object.defineProperty(B2,"parsePatch",{enumerable:!0,get:function(){return h5o.parsePatch}});Object.defineProperty(B2,"merge",{enumerable:!0,get:function(){return m5o.merge}});Object.defineProperty(B2,"reversePatch",{enumerable:!0,get:function(){return C5o.reversePatch}});Object.defineProperty(B2,"structuredPatch",{enumerable:!0,get:function(){return cdt.structuredPatch}});Object.defineProperty(B2,"createTwoFilesPatch",{enumerable:!0,get:function(){return cdt.createTwoFilesPatch}});Object.defineProperty(B2,"createPatch",{enumerable:!0,get:function(){return cdt.createPatch}});Object.defineProperty(B2,"formatPatch",{enumerable:!0,get:function(){return cdt.formatPatch}});Object.defineProperty(B2,"convertChangesToDMP",{enumerable:!0,get:function(){return _5o.convertChangesToDMP}});Object.defineProperty(B2,"convertChangesToXML",{enumerable:!0,get:function(){return y5o.convertChangesToXML}});var A5o=b5o(B$()),d5o=c9n(),M9n=g9n(),H9n=edt(),p5o=A9n(),f5o=d9n(),Y9n=f9n(),I5o=I9n(),Q9n=_9n(),h5o=ndt(),m5o=F9n(),C5o=W9n(),cdt=$dr(),_5o=O9n(),y5o=P9n();function b5o(e){return e&&e.__esModule?e:{default:e}}});var X9n=H(ldt=>{"use strict";Object.defineProperty(ldt,"__esModule",{value:!0});ldt.RunInstallPleaseResolver=void 0;var cpr=U9(),lpr=dM(),upr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return this.resolver.supportsDescriptor(t,r)}supportsLocator(t,r){return this.resolver.supportsLocator(t,r)}shouldPersistResolution(t,r){return this.resolver.shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.resolver.bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){throw new lpr.ReportError(cpr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(t,r,n,a){throw new lpr.ReportError(cpr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(t,r){throw new lpr.ReportError(cpr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};ldt.RunInstallPleaseResolver=upr});var Apr=H(udt=>{"use strict";Object.defineProperty(udt,"__esModule",{value:!0});udt.ThrowReport=void 0;var E5o=dM(),gpr=class extends E5o.Report{reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){}};udt.ThrowReport=gpr});var ppr=H(gdt=>{"use strict";Object.defineProperty(gdt,"__esModule",{value:!0});gdt.Workspace=void 0;var pMe=(Wa(),vi(Va)),HO=Io(),S5o=pMe.__importDefault(vve()),gMe=kve(),AMe=AIe(),J9n=pMe.__importStar(uM()),v5o=pMe.__importStar(koe()),B5o=pMe.__importStar(h$()),dMe=pMe.__importStar(fG()),dpr=class{constructor(t,{project:r}){this.workspacesCwds=new Set,this.project=r,this.cwd=t}async setup(){this.manifest=await gMe.Manifest.tryFind(this.cwd)??new gMe.Manifest,this.relativeCwd=HO.ppath.relative(this.project.cwd,this.cwd)||HO.PortablePath.dot;let t=this.manifest.name?this.manifest.name:dMe.makeIdent(null,`${this.computeCandidateName()}-${v5o.makeHash(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=dMe.makeDescriptor(t,`${AMe.WorkspaceResolver.protocol}${this.relativeCwd}`),this.anchoredLocator=dMe.makeLocator(t,`${AMe.WorkspaceResolver.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let n=await(0,S5o.default)(r,{cwd:HO.npath.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort(),await n.reduce(async(a,o)=>{let l=HO.ppath.resolve(this.cwd,HO.npath.toPortablePath(o)),A=await HO.xfs.existsPromise(HO.ppath.join(l,"package.json"));await a,A&&this.workspacesCwds.add(l)},Promise.resolve())}get anchoredPackage(){let t=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!t)throw new Error(`Assertion failed: Expected workspace ${dMe.prettyWorkspace(this.project.configuration,this)} (${J9n.pretty(this.project.configuration,HO.ppath.join(this.cwd,HO.Filename.manifest),J9n.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return t}accepts(t){let r=t.indexOf(":"),n=r!==-1?t.slice(0,r+1):null,a=r!==-1?t.slice(r+1):t;if(n===AMe.WorkspaceResolver.protocol&&HO.ppath.normalize(a)===this.relativeCwd||n===AMe.WorkspaceResolver.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let o=B5o.validRange(a);return o?n===AMe.WorkspaceResolver.protocol?o.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?o.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${HO.ppath.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:t=gMe.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of t)for(let l of a.manifest[o].values()){let A=this.project.tryWorkspaceByDescriptor(l);A===null||r.has(A)||(r.add(A),n(A))}};return n(this),r}getRecursiveWorkspaceDependents({dependencies:t=gMe.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of this.project.workspaces)t.some(A=>[...o.manifest[A].values()].some(f=>{let I=this.project.tryWorkspaceByDescriptor(f);return I!==null&&dMe.areLocatorsEqual(I.anchoredLocator,a.anchoredLocator)}))&&!r.has(o)&&(r.add(o),n(o))};return n(this),r}getRecursiveWorkspaceChildren(){let t=new Set([this]);for(let r of t)for(let n of r.workspacesCwds){let a=this.project.workspacesByCwd.get(n);a&&t.add(a)}return t.delete(this),Array.from(t)}async persistManifest(){let t={};this.manifest.exportTo(t);let r=HO.ppath.join(this.cwd,gMe.Manifest.fileName),n=`${JSON.stringify(t,null,this.manifest.indent)} -`;await HO.xfs.changeFilePromise(r,n,{automaticNewlines:!0}),this.manifest.raw=t}};gdt.Workspace=dpr});var oVn=H(EM=>{"use strict";Object.defineProperty(EM,"__esModule",{value:!0});EM.Project=EM.PeerWarningType=EM.InstallMode=EM.LOCKFILE_VERSION=void 0;var BX=(Wa(),vi(Va)),ddt=Io(),Kf=Io(),U9n=tM(),K9n=(Rl(),vi(ng)),fpr=Et("crypto"),w5o=apr(),Ipr=WO(),hpr=BX.__importDefault(Ufe()),T5o=BX.__importDefault(jC()),iVn=Et("util"),j9n=BX.__importDefault(Et("v8")),sVn=BX.__importDefault(Et("zlib")),R5o=Zdr(),fMe=V5e(),IMe=Ldr(),N5o=Wdr(),D5o=Mdr(),z9n=kve(),jb=U9(),q9n=jur(),Uoe=dM(),k5o=X9n(),$9n=J5e(),eVn=Apr(),pdt=AIe(),x5o=ppr(),G5o=Ggt(),ef=BX.__importStar(uM()),f8=BX.__importStar(koe()),__=BX.__importStar(OO()),F5o=BX.__importStar(pAt()),tVn=BX.__importStar(mdr()),fdt=BX.__importStar(h$()),ig=BX.__importStar(fG()),Z5o=cIe(),Adt=cIe();EM.LOCKFILE_VERSION=__.parseInt(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??9);var L5o=3,V5o=/ *, */g,rVn=/\/$/,W5o=32,O5o=(0,iVn.promisify)(sVn.default.gzip),P5o=(0,iVn.promisify)(sVn.default.gunzip),iBe;(function(e){e.UpdateLockfile="update-lockfile",e.SkipBuild="skip-build"})(iBe||(EM.InstallMode=iBe={}));var mpr={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},I8;(function(e){e[e.NotProvided=0]="NotProvided",e[e.NotCompatible=1]="NotCompatible",e[e.NodeNotProvided=2]="NodeNotProvided",e[e.NodeNotCompatible=3]="NodeNotCompatible"})(I8||(EM.PeerWarningType=I8={}));var nVn=e=>f8.makeHash(`${L5o}`,e),Cpr=class e{static async find(t,r){if(!t.projectCwd)throw new K9n.UsageError(`No project found in ${r}`);let n=t.projectCwd,a=r,o=null;for(;o!==t.projectCwd;){if(o=a,Kf.xfs.existsSync(Kf.ppath.join(o,Kf.Filename.manifest))){n=o;break}a=Kf.ppath.dirname(o)}let l=new e(t.projectCwd,{configuration:t});fMe.Configuration.telemetry?.reportProject(l.cwd),await l.setupResolutions(),await l.setupWorkspaces(),fMe.Configuration.telemetry?.reportWorkspaceCount(l.workspaces.length),fMe.Configuration.telemetry?.reportDependencyCount(l.workspaces.reduce((B,F)=>B+F.manifest.dependencies.size+F.manifest.devDependencies.size,0));let A=l.tryWorkspaceByCwd(n);if(A)return{project:l,workspace:A,locator:A.anchoredLocator};let f=await l.findLocatorForLocation(`${n}/`,{strict:!0});if(f)return{project:l,locator:f,workspace:null};let I=ef.pretty(t,l.cwd,ef.Type.PATH),C=ef.pretty(t,Kf.ppath.relative(l.cwd,n),ef.Type.PATH),b=`- If ${I} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,E=`- If ${I} is intended to be a project, it might be that you forgot to list ${C} in its workspace configuration.`,N=`- Finally, if ${I} is fine and you intend ${C} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new K9n.UsageError(`The nearest package directory (${ef.pretty(t,n,ef.Type.PATH)}) doesn't seem to be part of the project declared in ${ef.pretty(t,l.cwd,ef.Type.PATH)}. +`}function T9n(e,t,r,n,a,o,l){return qdr(w9n(e,t,r,n,a,o,l))}function z3o(e,t,r,n,a,o){return T9n(e,e,t,r,n,a,o)}});var N9n=H(idt=>{"use strict";Object.defineProperty(idt,"__esModule",{value:!0});idt.arrayEqual=q3o;idt.arrayStartsWith=R9n;function q3o(e,t){return e.length!==t.length?!1:R9n(e,t)}function R9n(e,t){if(t.length>e.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(odt,"__esModule",{value:!0});odt.calcLineCount=O9n;odt.merge=s5o;var $3o=$dr(),e5o=rdt(),epr=N9n();function nBe(e){return i5o(e)||n5o(e)||r5o(e)||t5o()}function t5o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function r5o(e,t){if(e){if(typeof e=="string")return tpr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return tpr(e,t)}}function n5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function i5o(e){if(Array.isArray(e))return tpr(e)}function tpr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r{"use strict";Object.defineProperty(ipr,"__esModule",{value:!0});ipr.reversePatch=Y9n;function M9n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function H9n(e){for(var t=1;t{"use strict";Object.defineProperty(spr,"__esModule",{value:!0});spr.convertChangesToDMP=u5o;function u5o(e){for(var t=[],r,n,a=0;a{"use strict";Object.defineProperty(opr,"__esModule",{value:!0});opr.convertChangesToXML=g5o;function g5o(e){for(var t=[],r=0;r"):n.removed&&t.push(""),t.push(A5o(n.value)),n.added?t.push(""):n.removed&&t.push("")}return t.join("")}function A5o(e){var t=e;return t=t.replace(/&/g,"&"),t=t.replace(//g,">"),t=t.replace(/"/g,"""),t}});var apr=H(w2=>{"use strict";Object.defineProperty(w2,"__esModule",{value:!0});Object.defineProperty(w2,"Diff",{enumerable:!0,get:function(){return d5o.default}});Object.defineProperty(w2,"diffChars",{enumerable:!0,get:function(){return p5o.diffChars}});Object.defineProperty(w2,"diffWords",{enumerable:!0,get:function(){return U9n.diffWords}});Object.defineProperty(w2,"diffWordsWithSpace",{enumerable:!0,get:function(){return U9n.diffWordsWithSpace}});Object.defineProperty(w2,"diffLines",{enumerable:!0,get:function(){return K9n.diffLines}});Object.defineProperty(w2,"diffTrimmedLines",{enumerable:!0,get:function(){return K9n.diffTrimmedLines}});Object.defineProperty(w2,"diffSentences",{enumerable:!0,get:function(){return f5o.diffSentences}});Object.defineProperty(w2,"diffCss",{enumerable:!0,get:function(){return I5o.diffCss}});Object.defineProperty(w2,"diffJson",{enumerable:!0,get:function(){return j9n.diffJson}});Object.defineProperty(w2,"canonicalize",{enumerable:!0,get:function(){return j9n.canonicalize}});Object.defineProperty(w2,"diffArrays",{enumerable:!0,get:function(){return h5o.diffArrays}});Object.defineProperty(w2,"applyPatch",{enumerable:!0,get:function(){return z9n.applyPatch}});Object.defineProperty(w2,"applyPatches",{enumerable:!0,get:function(){return z9n.applyPatches}});Object.defineProperty(w2,"parsePatch",{enumerable:!0,get:function(){return m5o.parsePatch}});Object.defineProperty(w2,"merge",{enumerable:!0,get:function(){return C5o.merge}});Object.defineProperty(w2,"reversePatch",{enumerable:!0,get:function(){return _5o.reversePatch}});Object.defineProperty(w2,"structuredPatch",{enumerable:!0,get:function(){return adt.structuredPatch}});Object.defineProperty(w2,"createTwoFilesPatch",{enumerable:!0,get:function(){return adt.createTwoFilesPatch}});Object.defineProperty(w2,"createPatch",{enumerable:!0,get:function(){return adt.createPatch}});Object.defineProperty(w2,"formatPatch",{enumerable:!0,get:function(){return adt.formatPatch}});Object.defineProperty(w2,"convertChangesToDMP",{enumerable:!0,get:function(){return y5o.convertChangesToDMP}});Object.defineProperty(w2,"convertChangesToXML",{enumerable:!0,get:function(){return b5o.convertChangesToXML}});var d5o=E5o(w$()),p5o=p9n(),U9n=h9n(),K9n=$At(),f5o=m9n(),I5o=C9n(),j9n=y9n(),h5o=b9n(),z9n=B9n(),m5o=rdt(),C5o=P9n(),_5o=Q9n(),adt=$dr(),y5o=X9n(),b5o=J9n();function E5o(e){return e&&e.__esModule?e:{default:e}}});var q9n=H(cdt=>{"use strict";Object.defineProperty(cdt,"__esModule",{value:!0});cdt.RunInstallPleaseResolver=void 0;var cpr=K9(),lpr=pM(),upr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return this.resolver.supportsDescriptor(t,r)}supportsLocator(t,r){return this.resolver.supportsLocator(t,r)}shouldPersistResolution(t,r){return this.resolver.shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.resolver.bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){throw new lpr.ReportError(cpr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(t,r,n,a){throw new lpr.ReportError(cpr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(t,r){throw new lpr.ReportError(cpr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};cdt.RunInstallPleaseResolver=upr});var Apr=H(ldt=>{"use strict";Object.defineProperty(ldt,"__esModule",{value:!0});ldt.ThrowReport=void 0;var S5o=pM(),gpr=class extends S5o.Report{reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){}};ldt.ThrowReport=gpr});var ppr=H(udt=>{"use strict";Object.defineProperty(udt,"__esModule",{value:!0});udt.Workspace=void 0;var pMe=(Wa(),vi(Va)),QO=No(),v5o=pMe.__importDefault(vve()),gMe=kve(),AMe=dIe(),$9n=pMe.__importStar(gM()),B5o=pMe.__importStar(xoe()),w5o=pMe.__importStar(m$()),dMe=pMe.__importStar(IG()),dpr=class{constructor(t,{project:r}){this.workspacesCwds=new Set,this.project=r,this.cwd=t}async setup(){this.manifest=await gMe.Manifest.tryFind(this.cwd)??new gMe.Manifest,this.relativeCwd=QO.ppath.relative(this.project.cwd,this.cwd)||QO.PortablePath.dot;let t=this.manifest.name?this.manifest.name:dMe.makeIdent(null,`${this.computeCandidateName()}-${B5o.makeHash(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=dMe.makeDescriptor(t,`${AMe.WorkspaceResolver.protocol}${this.relativeCwd}`),this.anchoredLocator=dMe.makeLocator(t,`${AMe.WorkspaceResolver.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let n=await(0,v5o.default)(r,{cwd:QO.npath.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort(),await n.reduce(async(a,o)=>{let l=QO.ppath.resolve(this.cwd,QO.npath.toPortablePath(o)),A=await QO.xfs.existsPromise(QO.ppath.join(l,"package.json"));await a,A&&this.workspacesCwds.add(l)},Promise.resolve())}get anchoredPackage(){let t=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!t)throw new Error(`Assertion failed: Expected workspace ${dMe.prettyWorkspace(this.project.configuration,this)} (${$9n.pretty(this.project.configuration,QO.ppath.join(this.cwd,QO.Filename.manifest),$9n.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return t}accepts(t){let r=t.indexOf(":"),n=r!==-1?t.slice(0,r+1):null,a=r!==-1?t.slice(r+1):t;if(n===AMe.WorkspaceResolver.protocol&&QO.ppath.normalize(a)===this.relativeCwd||n===AMe.WorkspaceResolver.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let o=w5o.validRange(a);return o?n===AMe.WorkspaceResolver.protocol?o.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?o.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${QO.ppath.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:t=gMe.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of t)for(let l of a.manifest[o].values()){let A=this.project.tryWorkspaceByDescriptor(l);A===null||r.has(A)||(r.add(A),n(A))}};return n(this),r}getRecursiveWorkspaceDependents({dependencies:t=gMe.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of this.project.workspaces)t.some(A=>[...o.manifest[A].values()].some(f=>{let I=this.project.tryWorkspaceByDescriptor(f);return I!==null&&dMe.areLocatorsEqual(I.anchoredLocator,a.anchoredLocator)}))&&!r.has(o)&&(r.add(o),n(o))};return n(this),r}getRecursiveWorkspaceChildren(){let t=new Set([this]);for(let r of t)for(let n of r.workspacesCwds){let a=this.project.workspacesByCwd.get(n);a&&t.add(a)}return t.delete(this),Array.from(t)}async persistManifest(){let t={};this.manifest.exportTo(t);let r=QO.ppath.join(this.cwd,gMe.Manifest.fileName),n=`${JSON.stringify(t,null,this.manifest.indent)} +`;await QO.xfs.changeFilePromise(r,n,{automaticNewlines:!0}),this.manifest.raw=t}};udt.Workspace=dpr});var AVn=H(SM=>{"use strict";Object.defineProperty(SM,"__esModule",{value:!0});SM.Project=SM.PeerWarningType=SM.InstallMode=SM.LOCKFILE_VERSION=void 0;var wX=(Wa(),vi(Va)),Adt=No(),Kf=No(),eVn=LO(),tVn=(vl(),vi(ng)),fpr=Et("crypto"),T5o=apr(),Ipr=PO(),hpr=wX.__importDefault(Kfe()),R5o=wX.__importDefault(zC()),uVn=Et("util"),rVn=wX.__importDefault(Et("v8")),gVn=wX.__importDefault(Et("zlib")),N5o=Zdr(),fMe=V5e(),IMe=Ldr(),D5o=Wdr(),k5o=Mdr(),nVn=kve(),zb=K9(),iVn=jur(),Koe=pM(),x5o=q9n(),sVn=J5e(),oVn=Apr(),ddt=dIe(),G5o=ppr(),F5o=xgt(),ef=wX.__importStar(gM()),I8=wX.__importStar(xoe()),y_=wX.__importStar(MO()),Z5o=wX.__importStar(dAt()),aVn=wX.__importStar(mdr()),pdt=wX.__importStar(m$()),ig=wX.__importStar(IG()),L5o=lIe(),gdt=lIe();SM.LOCKFILE_VERSION=y_.parseInt(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??9);var V5o=3,W5o=/ *, */g,cVn=/\/$/,O5o=32,P5o=(0,uVn.promisify)(gVn.default.gzip),M5o=(0,uVn.promisify)(gVn.default.gunzip),iBe;(function(e){e.UpdateLockfile="update-lockfile",e.SkipBuild="skip-build"})(iBe||(SM.InstallMode=iBe={}));var mpr={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},h8;(function(e){e[e.NotProvided=0]="NotProvided",e[e.NotCompatible=1]="NotCompatible",e[e.NodeNotProvided=2]="NodeNotProvided",e[e.NodeNotCompatible=3]="NodeNotCompatible"})(h8||(SM.PeerWarningType=h8={}));var lVn=e=>I8.makeHash(`${V5o}`,e),Cpr=class e{static async find(t,r){if(!t.projectCwd)throw new tVn.UsageError(`No project found in ${r}`);let n=t.projectCwd,a=r,o=null;for(;o!==t.projectCwd;){if(o=a,Kf.xfs.existsSync(Kf.ppath.join(o,Kf.Filename.manifest))){n=o;break}a=Kf.ppath.dirname(o)}let l=new e(t.projectCwd,{configuration:t});fMe.Configuration.telemetry?.reportProject(l.cwd),await l.setupResolutions(),await l.setupWorkspaces(),fMe.Configuration.telemetry?.reportWorkspaceCount(l.workspaces.length),fMe.Configuration.telemetry?.reportDependencyCount(l.workspaces.reduce((B,F)=>B+F.manifest.dependencies.size+F.manifest.devDependencies.size,0));let A=l.tryWorkspaceByCwd(n);if(A)return{project:l,workspace:A,locator:A.anchoredLocator};let f=await l.findLocatorForLocation(`${n}/`,{strict:!0});if(f)return{project:l,locator:f,workspace:null};let I=ef.pretty(t,l.cwd,ef.Type.PATH),C=ef.pretty(t,Kf.ppath.relative(l.cwd,n),ef.Type.PATH),b=`- If ${I} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,E=`- If ${I} is intended to be a project, it might be that you forgot to list ${C} in its workspace configuration.`,N=`- Finally, if ${I} is fine and you intend ${C} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new tVn.UsageError(`The nearest package directory (${ef.pretty(t,n,ef.Type.PATH)}) doesn't seem to be part of the project declared in ${ef.pretty(t,l.cwd,ef.Type.PATH)}. ${[b,E,N].join(` -`)}`)}constructor(t,{configuration:r}){this.resolutionAliases=new Map,this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map,this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.storedChecksums=new Map,this.storedBuildState=new Map,this.accessibleLocators=new Set,this.conditionalLocators=new Set,this.disabledLocators=new Set,this.originalPackages=new Map,this.optionalBuilds=new Set,this.skippedBuilds=new Set,this.lockfileLastVersion=null,this.lockfileNeedsRefresh=!1,this.peerRequirements=new Map,this.peerWarnings=[],this.peerRequirementNodes=new Map,this.linkersCustomData=new Map,this.lockFileChecksum=null,this.installStateChecksum=null,this.configuration=r,this.cwd=t}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let t=Kf.ppath.join(this.cwd,Kf.Filename.lockfile),r=this.configuration.get("defaultLanguageName");if(Kf.xfs.existsSync(t)){let n=await Kf.xfs.readFilePromise(t,"utf8");this.lockFileChecksum=nVn(n);let a=(0,U9n.parseSyml)(n);if(a.__metadata){let o=a.__metadata.version,l=a.__metadata.cacheKey;this.lockfileLastVersion=o,this.lockfileNeedsRefresh=o"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${A})`);let I=ig.parseLocator(f.resolution,!0),C=new z9n.Manifest;C.load(f,{yamlCompatibilityMode:!0});let b=C.version,E=C.languageName||r,N=f.linkType.toUpperCase(),B=f.conditions??null,F=C.dependencies,Q=C.peerDependencies,J=C.dependenciesMeta,ae=C.peerDependenciesMeta,ne=C.bin;if(f.checksum!=null){let fe=typeof l<"u"&&!f.checksum.includes("/")?`${l}/${f.checksum}`:f.checksum;this.storedChecksums.set(I.locatorHash,fe)}let ce={...I,version:b,languageName:E,linkType:N,conditions:B,dependencies:F,peerDependencies:Q,dependenciesMeta:J,peerDependenciesMeta:ae,bin:ne};this.originalPackages.set(ce.locatorHash,ce);for(let fe of A.split(V5o)){let ue=ig.parseDescriptor(fe);o<=6&&(ue=this.configuration.normalizeDependency(ue),ue=ig.makeDescriptor(ue,ue.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(ue.descriptorHash,ue),this.storedResolutions.set(ue.descriptorHash,I.locatorHash)}}}else n.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let t=new Set,r=(0,hpr.default)(4),n=async(a,o)=>{if(t.has(o))return a;t.add(o);let l=new x5o.Workspace(o,{project:this});await r(()=>l.setup());let A=a.then(()=>{this.addWorkspace(l)});return Array.from(l.workspacesCwds).reduce(n,A)};await n(Promise.resolve(),this.cwd)}addWorkspace(t){let r=this.workspacesByIdent.get(t.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${ig.prettyIdent(this.configuration,t.anchoredLocator)}: ${ddt.npath.fromPortablePath(t.cwd)} conflicts with ${ddt.npath.fromPortablePath(r.cwd)}`);this.workspaces.push(t),this.workspacesByCwd.set(t.cwd,t),this.workspacesByIdent.set(t.anchoredLocator.identHash,t)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(t){Kf.ppath.isAbsolute(t)||(t=Kf.ppath.resolve(this.cwd,t)),t=Kf.ppath.normalize(t).replace(/\/+$/,"");let r=this.workspacesByCwd.get(t);return r||null}getWorkspaceByCwd(t){let r=this.tryWorkspaceByCwd(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByFilePath(t){let r=null;for(let n of this.workspaces)Kf.ppath.relative(n.cwd,t).startsWith("../")||r&&r.cwd.length>=n.cwd.length||(r=n);return r||null}getWorkspaceByFilePath(t){let r=this.tryWorkspaceByFilePath(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByIdent(t){let r=this.workspacesByIdent.get(t.identHash);return typeof r>"u"?null:r}getWorkspaceByIdent(t){let r=this.tryWorkspaceByIdent(t);if(!r)throw new Error(`Workspace not found (${ig.prettyIdent(this.configuration,t)})`);return r}tryWorkspaceByDescriptor(t){if(t.range.startsWith(pdt.WorkspaceResolver.protocol)){let n=t.range.slice(pdt.WorkspaceResolver.protocol.length);if(n!=="^"&&n!=="~"&&n!=="*"&&!fdt.validRange(n))return this.tryWorkspaceByCwd(n)}let r=this.tryWorkspaceByIdent(t);return r===null||(ig.isVirtualDescriptor(t)&&(t=ig.devirtualizeDescriptor(t)),!r.accepts(t.range))?null:r}getWorkspaceByDescriptor(t){let r=this.tryWorkspaceByDescriptor(t);if(r===null)throw new Error(`Workspace not found (${ig.prettyDescriptor(this.configuration,t)})`);return r}tryWorkspaceByLocator(t){let r=this.tryWorkspaceByIdent(t);return r===null||(ig.isVirtualLocator(t)&&(t=ig.devirtualizeLocator(t)),r.anchoredLocator.locatorHash!==t.locatorHash)?null:r}getWorkspaceByLocator(t){let r=this.tryWorkspaceByLocator(t);if(!r)throw new Error(`Workspace not found (${ig.prettyLocator(this.configuration,t)})`);return r}deleteDescriptor(t){this.storedResolutions.delete(t),this.storedDescriptors.delete(t)}deleteLocator(t){this.originalPackages.delete(t),this.storedPackages.delete(t),this.accessibleLocators.delete(t)}forgetResolution(t){if("descriptorHash"in t){let r=this.storedResolutions.get(t.descriptorHash);this.deleteDescriptor(t.descriptorHash);let n=new Set(this.storedResolutions.values());typeof r<"u"&&!n.has(r)&&this.deleteLocator(r)}if("locatorHash"in t){this.deleteLocator(t.locatorHash);for(let[r,n]of this.storedResolutions)n===t.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let t=this.configuration.makeResolver(),r=new Map;for(let[n,a]of this.storedResolutions.entries()){let o=r.get(a);o||r.set(a,o=new Set),o.add(n)}for(let n of this.originalPackages.values()){let a;try{a=t.shouldPersistResolution(n,{project:this,resolver:t})}catch{a=!1}if(!a){this.deleteLocator(n.locatorHash);let o=r.get(n.locatorHash);if(o){r.delete(n.locatorHash);for(let l of o)this.deleteDescriptor(l)}}}}forgetVirtualResolutions(){for(let t of this.storedPackages.values())for(let[r,n]of t.dependencies)ig.isVirtualDescriptor(n)&&t.dependencies.set(r,ig.devirtualizeDescriptor(n))}getDependencyMeta(t,r){let n={},o=this.topLevelWorkspace.manifest.dependenciesMeta.get(ig.stringifyIdent(t));if(!o)return n;let l=o.get(null);if(l&&Object.assign(n,l),r===null||!T5o.default.valid(r))return n;for(let[A,f]of o)A!==null&&A===r&&Object.assign(n,f);return n}async findLocatorForLocation(t,{strict:r=!1}={}){let n=new eVn.ThrowReport,a=this.configuration.getLinkers(),o={project:this,report:n};for(let l of a){let A=await l.findPackageLocator(t,o);if(A){if(r&&(await l.findPackageLocation(A,o)).replace(rVn,"")!==t.replace(rVn,""))continue;return A}}return null}async loadUserConfig(){let t=Kf.ppath.join(this.cwd,".pnp.cjs");await Kf.xfs.existsPromise(t)&&__.dynamicRequire(t).setup();let r=Kf.ppath.join(this.cwd,"yarn.config.cjs");return await Kf.xfs.existsPromise(r)?__.dynamicRequire(r):null}async preparePackage(t,{resolver:r,resolveOptions:n}){let a=await this.configuration.getPackageExtensions(),o=this.configuration.normalizePackage(t,{packageExtensions:a});for(let[l,A]of o.dependencies){let f=await this.configuration.reduceHook(C=>C.reduceDependency,A,this,o,A,{resolver:r,resolveOptions:n});if(!ig.areIdentsEqual(A,f))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let I=r.bindDescriptor(f,o,n);o.dependencies.set(l,I)}return o}async resolveEverything(t){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),n=[];t.lockfileOnly||this.forgetTransientResolutions();let a=t.resolver||this.configuration.makeResolver(),o=new N5o.LegacyMigrationResolver(a);await o.setup(this,{report:t.report});let l=t.lockfileOnly?[new k5o.RunInstallPleaseResolver(a)]:[o,a],A=new q9n.MultiResolver([new D5o.LockfileResolver(a),...l]),f=new q9n.MultiResolver([...l]),I=this.configuration.makeFetcher(),C=t.lockfileOnly?{project:this,report:t.report,resolver:A}:{project:this,report:t.report,resolver:A,fetchOptions:{project:this,cache:t.cache,checksums:this.storedChecksums,report:t.report,fetcher:I,cacheOptions:{mirrorWriteOnly:!0}}},b=new Map,E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,J=this.topLevelWorkspace.anchoredLocator,ae=new Set,ne=[],ce=F5o.getArchitectureSet(),fe=this.configuration.getSupportedArchitectures();await t.report.startProgressPromise(Uoe.Report.progressViaTitle(),async Je=>{let ft=async jt=>{let Bt=await __.prettifyAsyncErrors(async()=>await A.resolve(jt,C),Xt=>`${ig.prettyLocator(this.configuration,jt)}: ${Xt}`);if(!ig.areLocatorsEqual(jt,Bt))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${ig.prettyLocator(this.configuration,jt)} to ${ig.prettyLocator(this.configuration,Bt)})`);B.set(Bt.locatorHash,Bt),!r.delete(Bt.locatorHash)&&!this.tryWorkspaceByLocator(Bt)&&n.push(Bt);let Fr=await this.preparePackage(Bt,{resolver:A,resolveOptions:C}),$t=__.allSettledSafe([...Fr.dependencies.values()].map(Xt=>Sr(Xt)));return ne.push($t),$t.catch(()=>{}),E.set(Fr.locatorHash,Fr),Fr},lt=async jt=>{let Bt=F.get(jt.locatorHash);if(typeof Bt<"u")return Bt;let Dt=Promise.resolve().then(()=>ft(jt));return F.set(jt.locatorHash,Dt),Dt},Ot=async(jt,Bt)=>{let Dt=await Sr(Bt);return b.set(jt.descriptorHash,jt),N.set(jt.descriptorHash,Dt.locatorHash),Dt},Er=async jt=>{Je.setTitle(ig.prettyDescriptor(this.configuration,jt));let Bt=this.resolutionAliases.get(jt.descriptorHash);if(typeof Bt<"u")return Ot(jt,this.storedDescriptors.get(Bt));let Dt=A.getResolutionDependencies(jt,C),Fr=Object.fromEntries(await __.allSettledSafe(Object.entries(Dt).map(async([lr,cr])=>{let Ar=A.bindDescriptor(cr,J,C),qr=await Sr(Ar);return ae.add(qr.locatorHash),[lr,qr]}))),Xt=(await __.prettifyAsyncErrors(async()=>await A.getCandidates(jt,Fr,C),lr=>`${ig.prettyDescriptor(this.configuration,jt)}: ${lr}`))[0];if(typeof Xt>"u")throw new Uoe.ReportError(jb.MessageName.RESOLUTION_FAILED,`${ig.prettyDescriptor(this.configuration,jt)}: No candidates found`);if(t.checkResolutions){let{locators:lr}=await f.getSatisfying(jt,Fr,[Xt],{...C,resolver:f});if(!lr.find(cr=>cr.locatorHash===Xt.locatorHash))throw new Uoe.ReportError(jb.MessageName.RESOLUTION_MISMATCH,`Invalid resolution ${ig.prettyResolution(this.configuration,jt,Xt)}`)}return b.set(jt.descriptorHash,jt),N.set(jt.descriptorHash,Xt.locatorHash),lt(Xt)},Sr=jt=>{let Bt=Q.get(jt.descriptorHash);if(typeof Bt<"u")return Bt;b.set(jt.descriptorHash,jt);let Dt=Promise.resolve().then(()=>Er(jt));return Q.set(jt.descriptorHash,Dt),Dt};for(let jt of this.workspaces){let Bt=jt.anchoredDescriptor;ne.push(Sr(Bt))}for(;ne.length>0;){let jt=[...ne];ne.length=0,await __.allSettledSafe(jt)}});let ue=__.mapAndFilter(r.values(),Je=>this.tryWorkspaceByLocator(Je)?__.mapAndFilter.skip:Je);if(n.length>0||ue.length>0){let Je=new Set(this.workspaces.flatMap(jt=>{let Bt=E.get(jt.anchoredLocator.locatorHash);if(!Bt)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(Bt.dependencies.values(),Dt=>{let Fr=N.get(Dt.descriptorHash);if(!Fr)throw new Error("Assertion failed: The resolution should have been registered");return Fr})})),ft=jt=>Je.has(jt.locatorHash)?"0":"1",lt=jt=>ig.stringifyLocator(jt),Ot=__.sortMap(n,[ft,lt]),Er=__.sortMap(ue,[ft,lt]),Sr=t.report.getRecommendedLength();Ot.length>0&&t.report.reportInfo(jb.MessageName.UPDATED_RESOLUTION_RECORD,`${ef.pretty(this.configuration,"+",ef.Type.ADDED)} ${ef.prettyTruncatedLocatorList(this.configuration,Ot,Sr)}`),Er.length>0&&t.report.reportInfo(jb.MessageName.UPDATED_RESOLUTION_RECORD,`${ef.pretty(this.configuration,"-",ef.Type.REMOVED)} ${ef.prettyTruncatedLocatorList(this.configuration,Er,Sr)}`)}let de=new Set(this.resolutionAliases.values()),be=new Set(E.keys()),Se=new Set,De=new Map,k=[],tt=new Map;M5o({project:this,accessibleLocators:Se,volatileDescriptors:de,optionalBuilds:be,peerRequirements:De,peerWarnings:k,peerRequirementNodes:tt,allDescriptors:b,allResolutions:N,allPackages:E});for(let Je of ae)be.delete(Je);for(let Je of de)b.delete(Je),N.delete(Je);let ze=new Set,Le=new Set;for(let Je of E.values())Je.conditions!=null&&be.has(Je.locatorHash)&&(ig.isPackageCompatible(Je,fe)||(ig.isPackageCompatible(Je,ce)&&t.report.reportWarningOnce(jb.MessageName.GHOST_ARCHITECTURE,`${ig.prettyLocator(this.configuration,Je)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${ef.pretty(this.configuration,"supportedArchitectures",ef.Type.SETTING)} setting`),Le.add(Je.locatorHash)),ze.add(Je.locatorHash));this.storedResolutions=N,this.storedDescriptors=b,this.storedPackages=E,this.accessibleLocators=Se,this.conditionalLocators=ze,this.disabledLocators=Le,this.originalPackages=B,this.optionalBuilds=be,this.peerRequirements=De,this.peerWarnings=k,this.peerRequirementNodes=tt}async fetchEverything({cache:t,report:r,fetcher:n,mode:a,persistProject:o=!0}){let l={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},A=n||this.configuration.makeFetcher(),f={checksums:this.storedChecksums,project:this,cache:t,fetcher:A,report:r,cacheOptions:l},I=Array.from(new Set(__.sortMap(this.storedResolutions.values(),[B=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");return ig.stringifyLocator(F)}])));a===iBe.UpdateLockfile&&(I=I.filter(B=>!this.storedChecksums.has(B)));let C=!1,b=Uoe.Report.progressViaCounter(I.length);await r.reportProgress(b);let E=(0,hpr.default)(W5o);if(await __.allSettledSafe(I.map(B=>E(async()=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");if(ig.isVirtualLocator(F))return;let Q;try{Q=await A.fetch(F,f)}catch(J){J.message=`${ig.prettyLocator(this.configuration,F)}: ${J.message}`,r.reportExceptionOnce(J),C=J;return}Q.checksum!=null?this.storedChecksums.set(F.locatorHash,Q.checksum):this.storedChecksums.delete(F.locatorHash),Q.releaseFs&&Q.releaseFs()}).finally(()=>{b.tick()}))),C)throw C;let N=o&&a!==iBe.UpdateLockfile?await this.cacheCleanup({cache:t,report:r}):null;if(r.cacheMisses.size>0||N){let F=(await Promise.all([...r.cacheMisses].map(async ue=>{let de=this.storedPackages.get(ue),be=this.storedChecksums.get(ue)??null,Se=t.getLocatorPath(de,be);return(await Kf.xfs.statPromise(Se)).size}))).reduce((ue,de)=>ue+de,0)-(N?.size??0),Q=r.cacheMisses.size,J=N?.count??0,ae=`${__.plural(Q,{zero:"No new packages",one:"A package was",more:`${ef.pretty(this.configuration,Q,ef.Type.NUMBER)} packages were`})} added to the project`,ne=`${__.plural(J,{zero:"none were",one:"one was",more:`${ef.pretty(this.configuration,J,ef.Type.NUMBER)} were`})} removed`,ce=F!==0?` (${ef.pretty(this.configuration,F,ef.Type.SIZE_DIFF)})`:"",fe=J>0?Q>0?`${ae}, and ${ne}${ce}.`:`${ae}, but ${ne}${ce}.`:`${ae}${ce}.`;r.reportInfo(jb.MessageName.FETCH_NOT_CACHED,fe)}}async linkEverything({cache:t,report:r,fetcher:n,mode:a}){let o={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},l=n||this.configuration.makeFetcher(),A={checksums:this.storedChecksums,project:this,cache:t,fetcher:l,report:r,cacheOptions:o},f=this.configuration.getLinkers(),I={project:this,report:r},C=new Map(f.map(ze=>{let Le=ze.makeInstaller(I),Je=ze.getCustomDataKey(),ft=this.linkersCustomData.get(Je);return typeof ft<"u"&&Le.attachCustomData(ft),[ze,Le]})),b=new Map,E=new Map,N=new Map,B=new Map(await __.allSettledSafe([...this.accessibleLocators].map(async ze=>{let Le=this.storedPackages.get(ze);if(!Le)throw new Error("Assertion failed: The locator should have been registered");return[ze,await l.fetch(Le,A)]}))),F=[],Q=new Set,J=[];for(let ze of this.accessibleLocators){let Le=this.storedPackages.get(ze);if(typeof Le>"u")throw new Error("Assertion failed: The locator should have been registered");let Je=B.get(Le.locatorHash);if(typeof Je>"u")throw new Error("Assertion failed: The fetch result should have been registered");let ft=[],lt=Er=>{ft.push(Er)},Ot=this.tryWorkspaceByLocator(Le);if(Ot!==null){let Er=[],{scripts:Sr}=Ot.manifest;for(let Bt of["preinstall","install","postinstall"])Sr.has(Bt)&&Er.push({type:IMe.BuildDirectiveType.SCRIPT,script:Bt});try{for(let[Bt,Dt]of C)if(Bt.supportsPackage(Le,I)&&(await Dt.installPackage(Le,Je,{holdFetchResult:lt})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{ft.length===0?Je.releaseFs?.():F.push(__.allSettledSafe(ft).catch(()=>{}).then(()=>{Je.releaseFs?.()}))}let jt=Kf.ppath.join(Je.packageFs.getRealPath(),Je.prefixPath);E.set(Le.locatorHash,jt),!ig.isVirtualLocator(Le)&&Er.length>0&&N.set(Le.locatorHash,{buildDirectives:Er,buildLocations:[jt]})}else{let Er=f.find(Bt=>Bt.supportsPackage(Le,I));if(!Er)throw new Uoe.ReportError(jb.MessageName.LINKER_NOT_FOUND,`${ig.prettyLocator(this.configuration,Le)} isn't supported by any available linker`);let Sr=C.get(Er);if(!Sr)throw new Error("Assertion failed: The installer should have been registered");let jt;try{jt=await Sr.installPackage(Le,Je,{holdFetchResult:lt})}finally{ft.length===0?Je.releaseFs?.():F.push(__.allSettledSafe(ft).then(()=>{}).then(()=>{Je.releaseFs?.()}))}b.set(Le.locatorHash,Er),E.set(Le.locatorHash,jt.packageLocation),jt.buildRequest&&jt.packageLocation&&(jt.buildRequest.skipped?(Q.add(Le.locatorHash),this.skippedBuilds.has(Le.locatorHash)||J.push([Le,jt.buildRequest.explain])):N.set(Le.locatorHash,{buildDirectives:jt.buildRequest.directives,buildLocations:[jt.packageLocation]}))}}let ae=new Map;for(let ze of this.accessibleLocators){let Le=this.storedPackages.get(ze);if(!Le)throw new Error("Assertion failed: The locator should have been registered");let Je=this.tryWorkspaceByLocator(Le)!==null,ft=async(lt,Ot)=>{let Er=E.get(Le.locatorHash);if(typeof Er>"u")throw new Error(`Assertion failed: The package (${ig.prettyLocator(this.configuration,Le)}) should have been registered`);let Sr=[];for(let jt of Le.dependencies.values()){let Bt=this.storedResolutions.get(jt.descriptorHash);if(typeof Bt>"u")throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(this.configuration,jt)}, from ${ig.prettyLocator(this.configuration,Le)})should have been registered`);let Dt=this.storedPackages.get(Bt);if(typeof Dt>"u")throw new Error(`Assertion failed: The package (${Bt}, resolved from ${ig.prettyDescriptor(this.configuration,jt)}) should have been registered`);let Fr=this.tryWorkspaceByLocator(Dt)===null?b.get(Bt):null;if(typeof Fr>"u")throw new Error(`Assertion failed: The package (${Bt}, resolved from ${ig.prettyDescriptor(this.configuration,jt)}) should have been registered`);Fr===lt||Fr===null?E.get(Dt.locatorHash)!==null&&Sr.push([jt,Dt]):!Je&&Er!==null&&__.getArrayWithDefault(ae,Bt).push(Er)}Er!==null&&await Ot.attachInternalDependencies(Le,Sr)};if(Je)for(let[lt,Ot]of C)lt.supportsPackage(Le,I)&&await ft(lt,Ot);else{let lt=b.get(Le.locatorHash);if(!lt)throw new Error("Assertion failed: The linker should have been found");let Ot=C.get(lt);if(!Ot)throw new Error("Assertion failed: The installer should have been registered");await ft(lt,Ot)}}for(let[ze,Le]of ae){let Je=this.storedPackages.get(ze);if(!Je)throw new Error("Assertion failed: The package should have been registered");let ft=b.get(Je.locatorHash);if(!ft)throw new Error("Assertion failed: The linker should have been found");let lt=C.get(ft);if(!lt)throw new Error("Assertion failed: The installer should have been registered");await lt.attachExternalDependents(Je,Le)}let ne=new Map;for(let[ze,Le]of C){let Je=await Le.finalizeInstall();for(let ft of Je?.records??[])ft.buildRequest.skipped?(Q.add(ft.locator.locatorHash),this.skippedBuilds.has(ft.locator.locatorHash)||J.push([ft.locator,ft.buildRequest.explain])):N.set(ft.locator.locatorHash,{buildDirectives:ft.buildRequest.directives,buildLocations:ft.buildLocations});typeof Je?.customData<"u"&&ne.set(ze.getCustomDataKey(),Je.customData)}if(this.linkersCustomData=ne,await __.allSettledSafe(F),a===iBe.SkipBuild)return;for(let[,ze]of __.sortMap(J,([Le])=>ig.stringifyLocator(Le)))ze(r);let ce=new Set(N.keys()),fe=(0,fpr.createHash)("sha512");fe.update(process.versions.node),await this.configuration.triggerHook(ze=>ze.globalHashGeneration,this,ze=>{fe.update("\0"),fe.update(ze)});let ue=fe.digest("hex"),de=new Map,be=ze=>{let Le=de.get(ze.locatorHash);if(typeof Le<"u")return Le;let Je=this.storedPackages.get(ze.locatorHash);if(typeof Je>"u")throw new Error("Assertion failed: The package should have been registered");let ft=(0,fpr.createHash)("sha512");ft.update(ze.locatorHash),de.set(ze.locatorHash,"");for(let lt of Je.dependencies.values()){let Ot=this.storedResolutions.get(lt.descriptorHash);if(typeof Ot>"u")throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(this.configuration,lt)}) should have been registered`);let Er=this.storedPackages.get(Ot);if(typeof Er>"u")throw new Error("Assertion failed: The package should have been registered");ft.update(be(Er))}return Le=ft.digest("hex"),de.set(ze.locatorHash,Le),Le},Se=(ze,Le)=>{let Je=(0,fpr.createHash)("sha512");Je.update(ue),Je.update(be(ze));for(let ft of Le)Je.update(ft);return Je.digest("hex")},De=new Map,k=!1,tt=ze=>{let Le=new Set([ze.locatorHash]);for(let Je of Le){let ft=this.storedPackages.get(Je);if(!ft)throw new Error("Assertion failed: The package should have been registered");for(let lt of ft.dependencies.values()){let Ot=this.storedResolutions.get(lt.descriptorHash);if(!Ot)throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(this.configuration,lt)}) should have been registered`);if(Ot!==ze.locatorHash&&ce.has(Ot))return!1;let Er=this.storedPackages.get(Ot);if(!Er)throw new Error("Assertion failed: The package should have been registered");let Sr=this.tryWorkspaceByLocator(Er);if(Sr){if(Sr.anchoredLocator.locatorHash!==ze.locatorHash&&ce.has(Sr.anchoredLocator.locatorHash))return!1;Le.add(Sr.anchoredLocator.locatorHash)}Le.add(Ot)}}return!0};for(;ce.size>0;){let ze=ce.size,Le=[];for(let Je of ce){let ft=this.storedPackages.get(Je);if(!ft)throw new Error("Assertion failed: The package should have been registered");if(!tt(ft))continue;let lt=N.get(ft.locatorHash);if(!lt)throw new Error("Assertion failed: The build directive should have been registered");let Ot=Se(ft,lt.buildLocations);if(this.storedBuildState.get(ft.locatorHash)===Ot){De.set(ft.locatorHash,Ot),ce.delete(Je);continue}k||(await this.persistInstallStateFile(),k=!0),this.storedBuildState.has(ft.locatorHash)?r.reportInfo(jb.MessageName.MUST_REBUILD,`${ig.prettyLocator(this.configuration,ft)} must be rebuilt because its dependency tree changed`):r.reportInfo(jb.MessageName.MUST_BUILD,`${ig.prettyLocator(this.configuration,ft)} must be built because it never has been before or the last one failed`);let Er=lt.buildLocations.map(async Sr=>{if(!Kf.ppath.isAbsolute(Sr))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Sr})`);for(let jt of lt.buildDirectives){let Bt=`# This file contains the result of Yarn building a package (${ig.stringifyLocator(ft)}) +`)}`)}constructor(t,{configuration:r}){this.resolutionAliases=new Map,this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map,this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.storedChecksums=new Map,this.storedBuildState=new Map,this.accessibleLocators=new Set,this.conditionalLocators=new Set,this.disabledLocators=new Set,this.originalPackages=new Map,this.optionalBuilds=new Set,this.skippedBuilds=new Set,this.lockfileLastVersion=null,this.lockfileNeedsRefresh=!1,this.peerRequirements=new Map,this.peerWarnings=[],this.peerRequirementNodes=new Map,this.linkersCustomData=new Map,this.lockFileChecksum=null,this.installStateChecksum=null,this.configuration=r,this.cwd=t}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let t=Kf.ppath.join(this.cwd,Kf.Filename.lockfile),r=this.configuration.get("defaultLanguageName");if(Kf.xfs.existsSync(t)){let n=await Kf.xfs.readFilePromise(t,"utf8");this.lockFileChecksum=lVn(n);let a=(0,eVn.parseSyml)(n);if(a.__metadata){let o=a.__metadata.version,l=a.__metadata.cacheKey;this.lockfileLastVersion=o,this.lockfileNeedsRefresh=o"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${A})`);let I=ig.parseLocator(f.resolution,!0),C=new nVn.Manifest;C.load(f,{yamlCompatibilityMode:!0});let b=C.version,E=C.languageName||r,N=f.linkType.toUpperCase(),B=f.conditions??null,F=C.dependencies,Q=C.peerDependencies,J=C.dependenciesMeta,ae=C.peerDependenciesMeta,ne=C.bin;if(f.checksum!=null){let fe=typeof l<"u"&&!f.checksum.includes("/")?`${l}/${f.checksum}`:f.checksum;this.storedChecksums.set(I.locatorHash,fe)}let ce={...I,version:b,languageName:E,linkType:N,conditions:B,dependencies:F,peerDependencies:Q,dependenciesMeta:J,peerDependenciesMeta:ae,bin:ne};this.originalPackages.set(ce.locatorHash,ce);for(let fe of A.split(W5o)){let ue=ig.parseDescriptor(fe);o<=6&&(ue=this.configuration.normalizeDependency(ue),ue=ig.makeDescriptor(ue,ue.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(ue.descriptorHash,ue),this.storedResolutions.set(ue.descriptorHash,I.locatorHash)}}}else n.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let t=new Set,r=(0,hpr.default)(4),n=async(a,o)=>{if(t.has(o))return a;t.add(o);let l=new G5o.Workspace(o,{project:this});await r(()=>l.setup());let A=a.then(()=>{this.addWorkspace(l)});return Array.from(l.workspacesCwds).reduce(n,A)};await n(Promise.resolve(),this.cwd)}addWorkspace(t){let r=this.workspacesByIdent.get(t.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${ig.prettyIdent(this.configuration,t.anchoredLocator)}: ${Adt.npath.fromPortablePath(t.cwd)} conflicts with ${Adt.npath.fromPortablePath(r.cwd)}`);this.workspaces.push(t),this.workspacesByCwd.set(t.cwd,t),this.workspacesByIdent.set(t.anchoredLocator.identHash,t)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(t){Kf.ppath.isAbsolute(t)||(t=Kf.ppath.resolve(this.cwd,t)),t=Kf.ppath.normalize(t).replace(/\/+$/,"");let r=this.workspacesByCwd.get(t);return r||null}getWorkspaceByCwd(t){let r=this.tryWorkspaceByCwd(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByFilePath(t){let r=null;for(let n of this.workspaces)Kf.ppath.relative(n.cwd,t).startsWith("../")||r&&r.cwd.length>=n.cwd.length||(r=n);return r||null}getWorkspaceByFilePath(t){let r=this.tryWorkspaceByFilePath(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByIdent(t){let r=this.workspacesByIdent.get(t.identHash);return typeof r>"u"?null:r}getWorkspaceByIdent(t){let r=this.tryWorkspaceByIdent(t);if(!r)throw new Error(`Workspace not found (${ig.prettyIdent(this.configuration,t)})`);return r}tryWorkspaceByDescriptor(t){if(t.range.startsWith(ddt.WorkspaceResolver.protocol)){let n=t.range.slice(ddt.WorkspaceResolver.protocol.length);if(n!=="^"&&n!=="~"&&n!=="*"&&!pdt.validRange(n))return this.tryWorkspaceByCwd(n)}let r=this.tryWorkspaceByIdent(t);return r===null||(ig.isVirtualDescriptor(t)&&(t=ig.devirtualizeDescriptor(t)),!r.accepts(t.range))?null:r}getWorkspaceByDescriptor(t){let r=this.tryWorkspaceByDescriptor(t);if(r===null)throw new Error(`Workspace not found (${ig.prettyDescriptor(this.configuration,t)})`);return r}tryWorkspaceByLocator(t){let r=this.tryWorkspaceByIdent(t);return r===null||(ig.isVirtualLocator(t)&&(t=ig.devirtualizeLocator(t)),r.anchoredLocator.locatorHash!==t.locatorHash)?null:r}getWorkspaceByLocator(t){let r=this.tryWorkspaceByLocator(t);if(!r)throw new Error(`Workspace not found (${ig.prettyLocator(this.configuration,t)})`);return r}deleteDescriptor(t){this.storedResolutions.delete(t),this.storedDescriptors.delete(t)}deleteLocator(t){this.originalPackages.delete(t),this.storedPackages.delete(t),this.accessibleLocators.delete(t)}forgetResolution(t){if("descriptorHash"in t){let r=this.storedResolutions.get(t.descriptorHash);this.deleteDescriptor(t.descriptorHash);let n=new Set(this.storedResolutions.values());typeof r<"u"&&!n.has(r)&&this.deleteLocator(r)}if("locatorHash"in t){this.deleteLocator(t.locatorHash);for(let[r,n]of this.storedResolutions)n===t.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let t=this.configuration.makeResolver(),r=new Map;for(let[n,a]of this.storedResolutions.entries()){let o=r.get(a);o||r.set(a,o=new Set),o.add(n)}for(let n of this.originalPackages.values()){let a;try{a=t.shouldPersistResolution(n,{project:this,resolver:t})}catch{a=!1}if(!a){this.deleteLocator(n.locatorHash);let o=r.get(n.locatorHash);if(o){r.delete(n.locatorHash);for(let l of o)this.deleteDescriptor(l)}}}}forgetVirtualResolutions(){for(let t of this.storedPackages.values())for(let[r,n]of t.dependencies)ig.isVirtualDescriptor(n)&&t.dependencies.set(r,ig.devirtualizeDescriptor(n))}getDependencyMeta(t,r){let n={},o=this.topLevelWorkspace.manifest.dependenciesMeta.get(ig.stringifyIdent(t));if(!o)return n;let l=o.get(null);if(l&&Object.assign(n,l),r===null||!R5o.default.valid(r))return n;for(let[A,f]of o)A!==null&&A===r&&Object.assign(n,f);return n}async findLocatorForLocation(t,{strict:r=!1}={}){let n=new oVn.ThrowReport,a=this.configuration.getLinkers(),o={project:this,report:n};for(let l of a){let A=await l.findPackageLocator(t,o);if(A){if(r&&(await l.findPackageLocation(A,o)).replace(cVn,"")!==t.replace(cVn,""))continue;return A}}return null}async loadUserConfig(){let t=Kf.ppath.join(this.cwd,".pnp.cjs");await Kf.xfs.existsPromise(t)&&y_.dynamicRequire(t).setup();let r=Kf.ppath.join(this.cwd,"yarn.config.cjs");return await Kf.xfs.existsPromise(r)?y_.dynamicRequire(r):null}async preparePackage(t,{resolver:r,resolveOptions:n}){let a=await this.configuration.getPackageExtensions(),o=this.configuration.normalizePackage(t,{packageExtensions:a});for(let[l,A]of o.dependencies){let f=await this.configuration.reduceHook(C=>C.reduceDependency,A,this,o,A,{resolver:r,resolveOptions:n});if(!ig.areIdentsEqual(A,f))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let I=r.bindDescriptor(f,o,n);o.dependencies.set(l,I)}return o}async resolveEverything(t){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),n=[];t.lockfileOnly||this.forgetTransientResolutions();let a=t.resolver||this.configuration.makeResolver(),o=new D5o.LegacyMigrationResolver(a);await o.setup(this,{report:t.report});let l=t.lockfileOnly?[new x5o.RunInstallPleaseResolver(a)]:[o,a],A=new iVn.MultiResolver([new k5o.LockfileResolver(a),...l]),f=new iVn.MultiResolver([...l]),I=this.configuration.makeFetcher(),C=t.lockfileOnly?{project:this,report:t.report,resolver:A}:{project:this,report:t.report,resolver:A,fetchOptions:{project:this,cache:t.cache,checksums:this.storedChecksums,report:t.report,fetcher:I,cacheOptions:{mirrorWriteOnly:!0}}},b=new Map,E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,J=this.topLevelWorkspace.anchoredLocator,ae=new Set,ne=[],ce=Z5o.getArchitectureSet(),fe=this.configuration.getSupportedArchitectures();await t.report.startProgressPromise(Koe.Report.progressViaTitle(),async Je=>{let ft=async jt=>{let Bt=await y_.prettifyAsyncErrors(async()=>await A.resolve(jt,C),Xt=>`${ig.prettyLocator(this.configuration,jt)}: ${Xt}`);if(!ig.areLocatorsEqual(jt,Bt))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${ig.prettyLocator(this.configuration,jt)} to ${ig.prettyLocator(this.configuration,Bt)})`);B.set(Bt.locatorHash,Bt),!r.delete(Bt.locatorHash)&&!this.tryWorkspaceByLocator(Bt)&&n.push(Bt);let Fr=await this.preparePackage(Bt,{resolver:A,resolveOptions:C}),$t=y_.allSettledSafe([...Fr.dependencies.values()].map(Xt=>Sr(Xt)));return ne.push($t),$t.catch(()=>{}),E.set(Fr.locatorHash,Fr),Fr},lt=async jt=>{let Bt=F.get(jt.locatorHash);if(typeof Bt<"u")return Bt;let Nt=Promise.resolve().then(()=>ft(jt));return F.set(jt.locatorHash,Nt),Nt},Ot=async(jt,Bt)=>{let Nt=await Sr(Bt);return b.set(jt.descriptorHash,jt),N.set(jt.descriptorHash,Nt.locatorHash),Nt},Er=async jt=>{Je.setTitle(ig.prettyDescriptor(this.configuration,jt));let Bt=this.resolutionAliases.get(jt.descriptorHash);if(typeof Bt<"u")return Ot(jt,this.storedDescriptors.get(Bt));let Nt=A.getResolutionDependencies(jt,C),Fr=Object.fromEntries(await y_.allSettledSafe(Object.entries(Nt).map(async([lr,cr])=>{let Ar=A.bindDescriptor(cr,J,C),qr=await Sr(Ar);return ae.add(qr.locatorHash),[lr,qr]}))),Xt=(await y_.prettifyAsyncErrors(async()=>await A.getCandidates(jt,Fr,C),lr=>`${ig.prettyDescriptor(this.configuration,jt)}: ${lr}`))[0];if(typeof Xt>"u")throw new Koe.ReportError(zb.MessageName.RESOLUTION_FAILED,`${ig.prettyDescriptor(this.configuration,jt)}: No candidates found`);if(t.checkResolutions){let{locators:lr}=await f.getSatisfying(jt,Fr,[Xt],{...C,resolver:f});if(!lr.find(cr=>cr.locatorHash===Xt.locatorHash))throw new Koe.ReportError(zb.MessageName.RESOLUTION_MISMATCH,`Invalid resolution ${ig.prettyResolution(this.configuration,jt,Xt)}`)}return b.set(jt.descriptorHash,jt),N.set(jt.descriptorHash,Xt.locatorHash),lt(Xt)},Sr=jt=>{let Bt=Q.get(jt.descriptorHash);if(typeof Bt<"u")return Bt;b.set(jt.descriptorHash,jt);let Nt=Promise.resolve().then(()=>Er(jt));return Q.set(jt.descriptorHash,Nt),Nt};for(let jt of this.workspaces){let Bt=jt.anchoredDescriptor;ne.push(Sr(Bt))}for(;ne.length>0;){let jt=[...ne];ne.length=0,await y_.allSettledSafe(jt)}});let ue=y_.mapAndFilter(r.values(),Je=>this.tryWorkspaceByLocator(Je)?y_.mapAndFilter.skip:Je);if(n.length>0||ue.length>0){let Je=new Set(this.workspaces.flatMap(jt=>{let Bt=E.get(jt.anchoredLocator.locatorHash);if(!Bt)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(Bt.dependencies.values(),Nt=>{let Fr=N.get(Nt.descriptorHash);if(!Fr)throw new Error("Assertion failed: The resolution should have been registered");return Fr})})),ft=jt=>Je.has(jt.locatorHash)?"0":"1",lt=jt=>ig.stringifyLocator(jt),Ot=y_.sortMap(n,[ft,lt]),Er=y_.sortMap(ue,[ft,lt]),Sr=t.report.getRecommendedLength();Ot.length>0&&t.report.reportInfo(zb.MessageName.UPDATED_RESOLUTION_RECORD,`${ef.pretty(this.configuration,"+",ef.Type.ADDED)} ${ef.prettyTruncatedLocatorList(this.configuration,Ot,Sr)}`),Er.length>0&&t.report.reportInfo(zb.MessageName.UPDATED_RESOLUTION_RECORD,`${ef.pretty(this.configuration,"-",ef.Type.REMOVED)} ${ef.prettyTruncatedLocatorList(this.configuration,Er,Sr)}`)}let de=new Set(this.resolutionAliases.values()),be=new Set(E.keys()),Se=new Set,De=new Map,k=[],tt=new Map;H5o({project:this,accessibleLocators:Se,volatileDescriptors:de,optionalBuilds:be,peerRequirements:De,peerWarnings:k,peerRequirementNodes:tt,allDescriptors:b,allResolutions:N,allPackages:E});for(let Je of ae)be.delete(Je);for(let Je of de)b.delete(Je),N.delete(Je);let ze=new Set,Le=new Set;for(let Je of E.values())Je.conditions!=null&&be.has(Je.locatorHash)&&(ig.isPackageCompatible(Je,fe)||(ig.isPackageCompatible(Je,ce)&&t.report.reportWarningOnce(zb.MessageName.GHOST_ARCHITECTURE,`${ig.prettyLocator(this.configuration,Je)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${ef.pretty(this.configuration,"supportedArchitectures",ef.Type.SETTING)} setting`),Le.add(Je.locatorHash)),ze.add(Je.locatorHash));this.storedResolutions=N,this.storedDescriptors=b,this.storedPackages=E,this.accessibleLocators=Se,this.conditionalLocators=ze,this.disabledLocators=Le,this.originalPackages=B,this.optionalBuilds=be,this.peerRequirements=De,this.peerWarnings=k,this.peerRequirementNodes=tt}async fetchEverything({cache:t,report:r,fetcher:n,mode:a,persistProject:o=!0}){let l={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},A=n||this.configuration.makeFetcher(),f={checksums:this.storedChecksums,project:this,cache:t,fetcher:A,report:r,cacheOptions:l},I=Array.from(new Set(y_.sortMap(this.storedResolutions.values(),[B=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");return ig.stringifyLocator(F)}])));a===iBe.UpdateLockfile&&(I=I.filter(B=>!this.storedChecksums.has(B)));let C=!1,b=Koe.Report.progressViaCounter(I.length);await r.reportProgress(b);let E=(0,hpr.default)(O5o);if(await y_.allSettledSafe(I.map(B=>E(async()=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");if(ig.isVirtualLocator(F))return;let Q;try{Q=await A.fetch(F,f)}catch(J){J.message=`${ig.prettyLocator(this.configuration,F)}: ${J.message}`,r.reportExceptionOnce(J),C=J;return}Q.checksum!=null?this.storedChecksums.set(F.locatorHash,Q.checksum):this.storedChecksums.delete(F.locatorHash),Q.releaseFs&&Q.releaseFs()}).finally(()=>{b.tick()}))),C)throw C;let N=o&&a!==iBe.UpdateLockfile?await this.cacheCleanup({cache:t,report:r}):null;if(r.cacheMisses.size>0||N){let F=(await Promise.all([...r.cacheMisses].map(async ue=>{let de=this.storedPackages.get(ue),be=this.storedChecksums.get(ue)??null,Se=t.getLocatorPath(de,be);return(await Kf.xfs.statPromise(Se)).size}))).reduce((ue,de)=>ue+de,0)-(N?.size??0),Q=r.cacheMisses.size,J=N?.count??0,ae=`${y_.plural(Q,{zero:"No new packages",one:"A package was",more:`${ef.pretty(this.configuration,Q,ef.Type.NUMBER)} packages were`})} added to the project`,ne=`${y_.plural(J,{zero:"none were",one:"one was",more:`${ef.pretty(this.configuration,J,ef.Type.NUMBER)} were`})} removed`,ce=F!==0?` (${ef.pretty(this.configuration,F,ef.Type.SIZE_DIFF)})`:"",fe=J>0?Q>0?`${ae}, and ${ne}${ce}.`:`${ae}, but ${ne}${ce}.`:`${ae}${ce}.`;r.reportInfo(zb.MessageName.FETCH_NOT_CACHED,fe)}}async linkEverything({cache:t,report:r,fetcher:n,mode:a}){let o={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},l=n||this.configuration.makeFetcher(),A={checksums:this.storedChecksums,project:this,cache:t,fetcher:l,report:r,cacheOptions:o},f=this.configuration.getLinkers(),I={project:this,report:r},C=new Map(f.map(ze=>{let Le=ze.makeInstaller(I),Je=ze.getCustomDataKey(),ft=this.linkersCustomData.get(Je);return typeof ft<"u"&&Le.attachCustomData(ft),[ze,Le]})),b=new Map,E=new Map,N=new Map,B=new Map(await y_.allSettledSafe([...this.accessibleLocators].map(async ze=>{let Le=this.storedPackages.get(ze);if(!Le)throw new Error("Assertion failed: The locator should have been registered");return[ze,await l.fetch(Le,A)]}))),F=[],Q=new Set,J=[];for(let ze of this.accessibleLocators){let Le=this.storedPackages.get(ze);if(typeof Le>"u")throw new Error("Assertion failed: The locator should have been registered");let Je=B.get(Le.locatorHash);if(typeof Je>"u")throw new Error("Assertion failed: The fetch result should have been registered");let ft=[],lt=Er=>{ft.push(Er)},Ot=this.tryWorkspaceByLocator(Le);if(Ot!==null){let Er=[],{scripts:Sr}=Ot.manifest;for(let Bt of["preinstall","install","postinstall"])Sr.has(Bt)&&Er.push({type:IMe.BuildDirectiveType.SCRIPT,script:Bt});try{for(let[Bt,Nt]of C)if(Bt.supportsPackage(Le,I)&&(await Nt.installPackage(Le,Je,{holdFetchResult:lt})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{ft.length===0?Je.releaseFs?.():F.push(y_.allSettledSafe(ft).catch(()=>{}).then(()=>{Je.releaseFs?.()}))}let jt=Kf.ppath.join(Je.packageFs.getRealPath(),Je.prefixPath);E.set(Le.locatorHash,jt),!ig.isVirtualLocator(Le)&&Er.length>0&&N.set(Le.locatorHash,{buildDirectives:Er,buildLocations:[jt]})}else{let Er=f.find(Bt=>Bt.supportsPackage(Le,I));if(!Er)throw new Koe.ReportError(zb.MessageName.LINKER_NOT_FOUND,`${ig.prettyLocator(this.configuration,Le)} isn't supported by any available linker`);let Sr=C.get(Er);if(!Sr)throw new Error("Assertion failed: The installer should have been registered");let jt;try{jt=await Sr.installPackage(Le,Je,{holdFetchResult:lt})}finally{ft.length===0?Je.releaseFs?.():F.push(y_.allSettledSafe(ft).then(()=>{}).then(()=>{Je.releaseFs?.()}))}b.set(Le.locatorHash,Er),E.set(Le.locatorHash,jt.packageLocation),jt.buildRequest&&jt.packageLocation&&(jt.buildRequest.skipped?(Q.add(Le.locatorHash),this.skippedBuilds.has(Le.locatorHash)||J.push([Le,jt.buildRequest.explain])):N.set(Le.locatorHash,{buildDirectives:jt.buildRequest.directives,buildLocations:[jt.packageLocation]}))}}let ae=new Map;for(let ze of this.accessibleLocators){let Le=this.storedPackages.get(ze);if(!Le)throw new Error("Assertion failed: The locator should have been registered");let Je=this.tryWorkspaceByLocator(Le)!==null,ft=async(lt,Ot)=>{let Er=E.get(Le.locatorHash);if(typeof Er>"u")throw new Error(`Assertion failed: The package (${ig.prettyLocator(this.configuration,Le)}) should have been registered`);let Sr=[];for(let jt of Le.dependencies.values()){let Bt=this.storedResolutions.get(jt.descriptorHash);if(typeof Bt>"u")throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(this.configuration,jt)}, from ${ig.prettyLocator(this.configuration,Le)})should have been registered`);let Nt=this.storedPackages.get(Bt);if(typeof Nt>"u")throw new Error(`Assertion failed: The package (${Bt}, resolved from ${ig.prettyDescriptor(this.configuration,jt)}) should have been registered`);let Fr=this.tryWorkspaceByLocator(Nt)===null?b.get(Bt):null;if(typeof Fr>"u")throw new Error(`Assertion failed: The package (${Bt}, resolved from ${ig.prettyDescriptor(this.configuration,jt)}) should have been registered`);Fr===lt||Fr===null?E.get(Nt.locatorHash)!==null&&Sr.push([jt,Nt]):!Je&&Er!==null&&y_.getArrayWithDefault(ae,Bt).push(Er)}Er!==null&&await Ot.attachInternalDependencies(Le,Sr)};if(Je)for(let[lt,Ot]of C)lt.supportsPackage(Le,I)&&await ft(lt,Ot);else{let lt=b.get(Le.locatorHash);if(!lt)throw new Error("Assertion failed: The linker should have been found");let Ot=C.get(lt);if(!Ot)throw new Error("Assertion failed: The installer should have been registered");await ft(lt,Ot)}}for(let[ze,Le]of ae){let Je=this.storedPackages.get(ze);if(!Je)throw new Error("Assertion failed: The package should have been registered");let ft=b.get(Je.locatorHash);if(!ft)throw new Error("Assertion failed: The linker should have been found");let lt=C.get(ft);if(!lt)throw new Error("Assertion failed: The installer should have been registered");await lt.attachExternalDependents(Je,Le)}let ne=new Map;for(let[ze,Le]of C){let Je=await Le.finalizeInstall();for(let ft of Je?.records??[])ft.buildRequest.skipped?(Q.add(ft.locator.locatorHash),this.skippedBuilds.has(ft.locator.locatorHash)||J.push([ft.locator,ft.buildRequest.explain])):N.set(ft.locator.locatorHash,{buildDirectives:ft.buildRequest.directives,buildLocations:ft.buildLocations});typeof Je?.customData<"u"&&ne.set(ze.getCustomDataKey(),Je.customData)}if(this.linkersCustomData=ne,await y_.allSettledSafe(F),a===iBe.SkipBuild)return;for(let[,ze]of y_.sortMap(J,([Le])=>ig.stringifyLocator(Le)))ze(r);let ce=new Set(N.keys()),fe=(0,fpr.createHash)("sha512");fe.update(process.versions.node),await this.configuration.triggerHook(ze=>ze.globalHashGeneration,this,ze=>{fe.update("\0"),fe.update(ze)});let ue=fe.digest("hex"),de=new Map,be=ze=>{let Le=de.get(ze.locatorHash);if(typeof Le<"u")return Le;let Je=this.storedPackages.get(ze.locatorHash);if(typeof Je>"u")throw new Error("Assertion failed: The package should have been registered");let ft=(0,fpr.createHash)("sha512");ft.update(ze.locatorHash),de.set(ze.locatorHash,"");for(let lt of Je.dependencies.values()){let Ot=this.storedResolutions.get(lt.descriptorHash);if(typeof Ot>"u")throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(this.configuration,lt)}) should have been registered`);let Er=this.storedPackages.get(Ot);if(typeof Er>"u")throw new Error("Assertion failed: The package should have been registered");ft.update(be(Er))}return Le=ft.digest("hex"),de.set(ze.locatorHash,Le),Le},Se=(ze,Le)=>{let Je=(0,fpr.createHash)("sha512");Je.update(ue),Je.update(be(ze));for(let ft of Le)Je.update(ft);return Je.digest("hex")},De=new Map,k=!1,tt=ze=>{let Le=new Set([ze.locatorHash]);for(let Je of Le){let ft=this.storedPackages.get(Je);if(!ft)throw new Error("Assertion failed: The package should have been registered");for(let lt of ft.dependencies.values()){let Ot=this.storedResolutions.get(lt.descriptorHash);if(!Ot)throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(this.configuration,lt)}) should have been registered`);if(Ot!==ze.locatorHash&&ce.has(Ot))return!1;let Er=this.storedPackages.get(Ot);if(!Er)throw new Error("Assertion failed: The package should have been registered");let Sr=this.tryWorkspaceByLocator(Er);if(Sr){if(Sr.anchoredLocator.locatorHash!==ze.locatorHash&&ce.has(Sr.anchoredLocator.locatorHash))return!1;Le.add(Sr.anchoredLocator.locatorHash)}Le.add(Ot)}}return!0};for(;ce.size>0;){let ze=ce.size,Le=[];for(let Je of ce){let ft=this.storedPackages.get(Je);if(!ft)throw new Error("Assertion failed: The package should have been registered");if(!tt(ft))continue;let lt=N.get(ft.locatorHash);if(!lt)throw new Error("Assertion failed: The build directive should have been registered");let Ot=Se(ft,lt.buildLocations);if(this.storedBuildState.get(ft.locatorHash)===Ot){De.set(ft.locatorHash,Ot),ce.delete(Je);continue}k||(await this.persistInstallStateFile(),k=!0),this.storedBuildState.has(ft.locatorHash)?r.reportInfo(zb.MessageName.MUST_REBUILD,`${ig.prettyLocator(this.configuration,ft)} must be rebuilt because its dependency tree changed`):r.reportInfo(zb.MessageName.MUST_BUILD,`${ig.prettyLocator(this.configuration,ft)} must be built because it never has been before or the last one failed`);let Er=lt.buildLocations.map(async Sr=>{if(!Kf.ppath.isAbsolute(Sr))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Sr})`);for(let jt of lt.buildDirectives){let Bt=`# This file contains the result of Yarn building a package (${ig.stringifyLocator(ft)}) `;switch(jt.type){case IMe.BuildDirectiveType.SCRIPT:Bt+=`# Script name: ${jt.script} `;break;case IMe.BuildDirectiveType.SHELLCODE:Bt+=`# Script code: ${jt.script} -`;break}let Dt=null;if(!await Kf.xfs.mktempPromise(async $t=>{let Xt=Kf.ppath.join($t,"build.log"),{stdout:lr,stderr:cr}=this.configuration.getSubprocessStreams(Xt,{header:Bt,prefix:ig.prettyLocator(this.configuration,ft),report:r}),Ar;try{switch(jt.type){case IMe.BuildDirectiveType.SCRIPT:Ar=await tVn.executePackageScript(ft,jt.script,[],{cwd:Sr,project:this,stdin:Dt,stdout:lr,stderr:cr});break;case IMe.BuildDirectiveType.SHELLCODE:Ar=await tVn.executePackageShellcode(ft,jt.script,[],{cwd:Sr,project:this,stdin:Dt,stdout:lr,stderr:cr});break}}catch(ke){cr.write(ke.stack),Ar=1}if(lr.end(),cr.end(),Ar===0)return!0;Kf.xfs.detachTemp($t);let qr=`${ig.prettyLocator(this.configuration,ft)} couldn't be built successfully (exit code ${ef.pretty(this.configuration,Ar,ef.Type.NUMBER)}, logs can be found here: ${ef.pretty(this.configuration,Xt,ef.Type.PATH)})`,yn=this.optionalBuilds.has(ft.locatorHash);return yn?r.reportInfo(jb.MessageName.BUILD_FAILED,qr):r.reportError(jb.MessageName.BUILD_FAILED,qr),$9n.SUPPORTS_GROUPS&&r.reportFold(ddt.npath.fromPortablePath(Xt),Kf.xfs.readFileSync(Xt,"utf8")),yn}))return!1}return!0});Le.push(...Er,Promise.allSettled(Er).then(Sr=>{ce.delete(Je),Sr.every(jt=>jt.status==="fulfilled"&&jt.value===!0)&&De.set(ft.locatorHash,Ot)}))}if(await __.allSettledSafe(Le),ze===ce.size){let Je=Array.from(ce).map(ft=>{let lt=this.storedPackages.get(ft);if(!lt)throw new Error("Assertion failed: The package should have been registered");return ig.prettyLocator(this.configuration,lt)}).join(", ");r.reportError(jb.MessageName.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${Je})`);break}}this.storedBuildState=De,this.skippedBuilds=Q}async installWithNewReport(t,r){return(await $9n.StreamReport.start({configuration:this.configuration,json:t.json,stdout:t.stdout,forceSectionAlignment:!0,includeLogs:!t.json&&!t.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(t){let r=this.configuration.get("nodeLinker");fMe.Configuration.telemetry?.reportInstall(r);let n=!1;if(await t.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&t.report.reportWarning(jb.MessageName.OFFLINE_MODE_ENABLED,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(C=>C.validateProject,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),n=!0}})}),n)return;let a=await this.configuration.getPackageExtensions();for(let C of a.values())for(let[,b]of C)for(let E of b)E.status=Adt.PackageExtensionStatus.Inactive;let o=Kf.ppath.join(this.cwd,Kf.Filename.lockfile),l=null;if(t.immutable)try{l=await Kf.xfs.readFilePromise(o,"utf8")}catch(C){throw C.code==="ENOENT"?new Uoe.ReportError(jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):C}await t.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(t)}),await t.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{Y5o(this,t.report);for(let[,C]of a)for(let[,b]of C)for(let E of b)if(E.userProvided){let N=ef.pretty(this.configuration,E,ef.Type.PACKAGE_EXTENSION);switch(E.status){case Adt.PackageExtensionStatus.Inactive:t.report.reportWarning(jb.MessageName.UNUSED_PACKAGE_EXTENSION,`${N}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case Adt.PackageExtensionStatus.Redundant:t.report.reportWarning(jb.MessageName.REDUNDANT_PACKAGE_EXTENSION,`${N}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(l!==null){let C=(0,Kf.normalizeLineEndings)(l,this.generateLockfile());if(C!==l){let b=(0,w5o.structuredPatch)(o,o,l,C,void 0,void 0,{maxEditLength:100});if(b){t.report.reportSeparator();for(let E of b.hunks){t.report.reportInfo(null,`@@ -${E.oldStart},${E.oldLines} +${E.newStart},${E.newLines} @@`);for(let N of E.lines)N.startsWith("+")?t.report.reportError(jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,ef.pretty(this.configuration,N,ef.Type.ADDED)):N.startsWith("-")?t.report.reportError(jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,ef.pretty(this.configuration,N,ef.Type.REMOVED)):t.report.reportInfo(null,ef.pretty(this.configuration,N,"grey"))}t.report.reportSeparator()}throw new Uoe.ReportError(jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let C of a.values())for(let[,b]of C)for(let E of b)E.userProvided&&E.status===Adt.PackageExtensionStatus.Active&&fMe.Configuration.telemetry?.reportPackageExtension(ef.json(E,ef.Type.PACKAGE_EXTENSION));await t.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(t)});let A=t.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],f=await Promise.all(A.map(async C=>f8.checksumPattern(C,{cwd:this.cwd})));(typeof t.persistProject>"u"||t.persistProject)&&await this.persist(),await t.report.startTimerPromise("Link step",async()=>{if(t.mode===iBe.UpdateLockfile){t.report.reportWarning(jb.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${ef.pretty(this.configuration,"mode=update-lockfile",ef.Type.CODE)}`);return}await this.linkEverything(t);let C=await Promise.all(A.map(async b=>f8.checksumPattern(b,{cwd:this.cwd})));for(let b=0;b{await this.configuration.triggerHook(C=>C.validateProjectAfterInstall,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),I=!0}})}),!I&&await this.configuration.triggerHook(C=>C.afterAllInstalled,this,t)}generateLockfile(){let t=new Map;for(let[o,l]of this.storedResolutions.entries()){let A=t.get(l);A||t.set(l,A=new Set),A.add(o)}let r={},{cacheKey:n}=R5o.Cache.getCacheKey(this.configuration);r.__metadata={version:EM.LOCKFILE_VERSION,cacheKey:n};for(let[o,l]of t.entries()){let A=this.originalPackages.get(o);if(!A)continue;let f=[];for(let b of l){let E=this.storedDescriptors.get(b);if(!E)throw new Error("Assertion failed: The descriptor should have been registered");f.push(E)}let I=f.map(b=>ig.stringifyDescriptor(b)).sort().join(", "),C=new z9n.Manifest;C.version=A.linkType===Z5o.LinkType.HARD?A.version:"0.0.0-use.local",C.languageName=A.languageName,C.dependencies=new Map(A.dependencies),C.peerDependencies=new Map(A.peerDependencies),C.dependenciesMeta=new Map(A.dependenciesMeta),C.peerDependenciesMeta=new Map(A.peerDependenciesMeta),C.bin=new Map(A.bin),r[I]={...C.exportTo({},{compatibilityMode:!1}),linkType:A.linkType.toLowerCase(),resolution:ig.stringifyLocator(A),checksum:this.storedChecksums.get(A.locatorHash),conditions:A.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. +`;break}let Nt=null;if(!await Kf.xfs.mktempPromise(async $t=>{let Xt=Kf.ppath.join($t,"build.log"),{stdout:lr,stderr:cr}=this.configuration.getSubprocessStreams(Xt,{header:Bt,prefix:ig.prettyLocator(this.configuration,ft),report:r}),Ar;try{switch(jt.type){case IMe.BuildDirectiveType.SCRIPT:Ar=await aVn.executePackageScript(ft,jt.script,[],{cwd:Sr,project:this,stdin:Nt,stdout:lr,stderr:cr});break;case IMe.BuildDirectiveType.SHELLCODE:Ar=await aVn.executePackageShellcode(ft,jt.script,[],{cwd:Sr,project:this,stdin:Nt,stdout:lr,stderr:cr});break}}catch(ke){cr.write(ke.stack),Ar=1}if(lr.end(),cr.end(),Ar===0)return!0;Kf.xfs.detachTemp($t);let qr=`${ig.prettyLocator(this.configuration,ft)} couldn't be built successfully (exit code ${ef.pretty(this.configuration,Ar,ef.Type.NUMBER)}, logs can be found here: ${ef.pretty(this.configuration,Xt,ef.Type.PATH)})`,_n=this.optionalBuilds.has(ft.locatorHash);return _n?r.reportInfo(zb.MessageName.BUILD_FAILED,qr):r.reportError(zb.MessageName.BUILD_FAILED,qr),sVn.SUPPORTS_GROUPS&&r.reportFold(Adt.npath.fromPortablePath(Xt),Kf.xfs.readFileSync(Xt,"utf8")),_n}))return!1}return!0});Le.push(...Er,Promise.allSettled(Er).then(Sr=>{ce.delete(Je),Sr.every(jt=>jt.status==="fulfilled"&&jt.value===!0)&&De.set(ft.locatorHash,Ot)}))}if(await y_.allSettledSafe(Le),ze===ce.size){let Je=Array.from(ce).map(ft=>{let lt=this.storedPackages.get(ft);if(!lt)throw new Error("Assertion failed: The package should have been registered");return ig.prettyLocator(this.configuration,lt)}).join(", ");r.reportError(zb.MessageName.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${Je})`);break}}this.storedBuildState=De,this.skippedBuilds=Q}async installWithNewReport(t,r){return(await sVn.StreamReport.start({configuration:this.configuration,json:t.json,stdout:t.stdout,forceSectionAlignment:!0,includeLogs:!t.json&&!t.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(t){let r=this.configuration.get("nodeLinker");fMe.Configuration.telemetry?.reportInstall(r);let n=!1;if(await t.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&t.report.reportWarning(zb.MessageName.OFFLINE_MODE_ENABLED,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(C=>C.validateProject,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),n=!0}})}),n)return;let a=await this.configuration.getPackageExtensions();for(let C of a.values())for(let[,b]of C)for(let E of b)E.status=gdt.PackageExtensionStatus.Inactive;let o=Kf.ppath.join(this.cwd,Kf.Filename.lockfile),l=null;if(t.immutable)try{l=await Kf.xfs.readFilePromise(o,"utf8")}catch(C){throw C.code==="ENOENT"?new Koe.ReportError(zb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):C}await t.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(t)}),await t.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{Q5o(this,t.report);for(let[,C]of a)for(let[,b]of C)for(let E of b)if(E.userProvided){let N=ef.pretty(this.configuration,E,ef.Type.PACKAGE_EXTENSION);switch(E.status){case gdt.PackageExtensionStatus.Inactive:t.report.reportWarning(zb.MessageName.UNUSED_PACKAGE_EXTENSION,`${N}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case gdt.PackageExtensionStatus.Redundant:t.report.reportWarning(zb.MessageName.REDUNDANT_PACKAGE_EXTENSION,`${N}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(l!==null){let C=(0,Kf.normalizeLineEndings)(l,this.generateLockfile());if(C!==l){let b=(0,T5o.structuredPatch)(o,o,l,C,void 0,void 0,{maxEditLength:100});if(b){t.report.reportSeparator();for(let E of b.hunks){t.report.reportInfo(null,`@@ -${E.oldStart},${E.oldLines} +${E.newStart},${E.newLines} @@`);for(let N of E.lines)N.startsWith("+")?t.report.reportError(zb.MessageName.FROZEN_LOCKFILE_EXCEPTION,ef.pretty(this.configuration,N,ef.Type.ADDED)):N.startsWith("-")?t.report.reportError(zb.MessageName.FROZEN_LOCKFILE_EXCEPTION,ef.pretty(this.configuration,N,ef.Type.REMOVED)):t.report.reportInfo(null,ef.pretty(this.configuration,N,"grey"))}t.report.reportSeparator()}throw new Koe.ReportError(zb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let C of a.values())for(let[,b]of C)for(let E of b)E.userProvided&&E.status===gdt.PackageExtensionStatus.Active&&fMe.Configuration.telemetry?.reportPackageExtension(ef.json(E,ef.Type.PACKAGE_EXTENSION));await t.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(t)});let A=t.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],f=await Promise.all(A.map(async C=>I8.checksumPattern(C,{cwd:this.cwd})));(typeof t.persistProject>"u"||t.persistProject)&&await this.persist(),await t.report.startTimerPromise("Link step",async()=>{if(t.mode===iBe.UpdateLockfile){t.report.reportWarning(zb.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${ef.pretty(this.configuration,"mode=update-lockfile",ef.Type.CODE)}`);return}await this.linkEverything(t);let C=await Promise.all(A.map(async b=>I8.checksumPattern(b,{cwd:this.cwd})));for(let b=0;b{await this.configuration.triggerHook(C=>C.validateProjectAfterInstall,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),I=!0}})}),!I&&await this.configuration.triggerHook(C=>C.afterAllInstalled,this,t)}generateLockfile(){let t=new Map;for(let[o,l]of this.storedResolutions.entries()){let A=t.get(l);A||t.set(l,A=new Set),A.add(o)}let r={},{cacheKey:n}=N5o.Cache.getCacheKey(this.configuration);r.__metadata={version:SM.LOCKFILE_VERSION,cacheKey:n};for(let[o,l]of t.entries()){let A=this.originalPackages.get(o);if(!A)continue;let f=[];for(let b of l){let E=this.storedDescriptors.get(b);if(!E)throw new Error("Assertion failed: The descriptor should have been registered");f.push(E)}let I=f.map(b=>ig.stringifyDescriptor(b)).sort().join(", "),C=new nVn.Manifest;C.version=A.linkType===L5o.LinkType.HARD?A.version:"0.0.0-use.local",C.languageName=A.languageName,C.dependencies=new Map(A.dependencies),C.peerDependencies=new Map(A.peerDependencies),C.dependenciesMeta=new Map(A.dependenciesMeta),C.peerDependenciesMeta=new Map(A.peerDependenciesMeta),C.bin=new Map(A.bin),r[I]={...C.exportTo({},{compatibilityMode:!1}),linkType:A.linkType.toLowerCase(),resolution:ig.stringifyLocator(A),checksum:this.storedChecksums.get(A.locatorHash),conditions:A.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. `,`# Manual changes might be lost - proceed with caution! `].join("")} -`+(0,U9n.stringifySyml)(r)}async persistLockfile(){let t=Kf.ppath.join(this.cwd,Kf.Filename.lockfile),r="";try{r=await Kf.xfs.readFilePromise(t,"utf8")}catch{}let n=this.generateLockfile(),a=(0,Kf.normalizeLineEndings)(r,n);a!==r&&(await Kf.xfs.writeFilePromise(t,a),this.lockFileChecksum=nVn(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let t=[];for(let l of Object.values(mpr))t.push(...l);let r=(0,Ipr.pick)(this,t),n=j9n.default.serialize(r),a=f8.makeHash(n);if(this.installStateChecksum===a)return;let o=this.configuration.get("installStatePath");await Kf.xfs.mkdirPromise(Kf.ppath.dirname(o),{recursive:!0}),await Kf.xfs.writeFilePromise(o,await O5o(n)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:t=!0,restoreResolutions:r=!0,restoreBuildState:n=!0}={}){let a=this.configuration.get("installStatePath"),o;try{let l=await P5o(await Kf.xfs.readFilePromise(a));o=j9n.default.deserialize(l),this.installStateChecksum=f8.makeHash(l)}catch{r&&await this.applyLightResolution();return}t&&typeof o.linkersCustomData<"u"&&(this.linkersCustomData=o.linkersCustomData),n&&Object.assign(this,(0,Ipr.pick)(o,mpr.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,Ipr.pick)(o,mpr.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new eVn.ThrowReport}),await this.persistInstallStateFile()}async persist(){let t=(0,hpr.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>t(()=>r.persistManifest()))])}async cacheCleanup({cache:t,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let n=new Set([".gitignore"]);if(!(0,G5o.isFolderInside)(t.cwd,this.cwd)||!await Kf.xfs.existsPromise(t.cwd))return null;let a=[];for(let l of await Kf.xfs.readdirPromise(t.cwd)){if(n.has(l))continue;let A=Kf.ppath.resolve(t.cwd,l);t.markedFiles.has(A)||(t.immutable?r.reportError(jb.MessageName.IMMUTABLE_CACHE,`${ef.pretty(this.configuration,Kf.ppath.basename(A),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(Kf.xfs.lstatPromise(A).then(async f=>(await Kf.xfs.removePromise(A),f.size))))}if(a.length===0)return null;let o=await Promise.all(a);return{count:a.length,size:o.reduce((l,A)=>l+A,0)}}};EM.Project=Cpr;function M5o({project:e,allDescriptors:t,allResolutions:r,allPackages:n,accessibleLocators:a=new Set,optionalBuilds:o=new Set,peerRequirements:l=new Map,peerWarnings:A=[],peerRequirementNodes:f=new Map,volatileDescriptors:I=new Set}){let C=new Map,b=[],E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,J=new Map(e.workspaces.map(ue=>{let de=ue.anchoredLocator.locatorHash,be=n.get(de);if(typeof be>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[de,ig.copyPackage(be)]})),ae=()=>{let ue=Kf.xfs.mktempSync(),de=Kf.ppath.join(ue,"stacktrace.log"),be=String(b.length+1).length,Se=b.map((De,k)=>`${`${k+1}.`.padStart(be," ")} ${ig.stringifyLocator(De)} -`).join("");throw Kf.xfs.writeFileSync(de,Se),Kf.xfs.detachTemp(ue),new Uoe.ReportError(jb.MessageName.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${ddt.npath.fromPortablePath(de)}`)},ne=ue=>{let de=r.get(ue.descriptorHash);if(typeof de>"u")throw new Error("Assertion failed: The resolution should have been registered");let be=n.get(de);if(!be)throw new Error("Assertion failed: The package could not be found");return be},ce=(ue,de,be,{top:Se,optional:De})=>{b.length>1e3&&ae(),b.push(de);let k=fe(ue,de,be,{top:Se,optional:De});return b.pop(),k},fe=(ue,de,be,{top:Se,optional:De})=>{if(De||o.delete(de.locatorHash),a.has(de.locatorHash))return;a.add(de.locatorHash);let k=n.get(de.locatorHash);if(!k)throw new Error(`Assertion failed: The package (${ig.prettyLocator(e.configuration,de)}) should have been registered`);let tt=new Set,ze=new Map,Le=[],Je=[],ft=[],lt=[];for(let Ot of Array.from(k.dependencies.values())){if(k.peerDependencies.has(Ot.identHash)&&k.locatorHash!==Se)continue;if(ig.isVirtualDescriptor(Ot))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");I.delete(Ot.descriptorHash);let Er=De;if(!Er){let Xt=k.dependenciesMeta.get(ig.stringifyIdent(Ot));if(typeof Xt<"u"){let lr=Xt.get(null);typeof lr<"u"&&lr.optional&&(Er=!0)}}let Sr=r.get(Ot.descriptorHash);if(!Sr)throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(e.configuration,Ot)}) should have been registered`);let jt=J.get(Sr)||n.get(Sr);if(!jt)throw new Error(`Assertion failed: The package (${Sr}, resolved from ${ig.prettyDescriptor(e.configuration,Ot)}) should have been registered`);if(jt.peerDependencies.size===0){ce(Ot,jt,new Map,{top:Se,optional:Er});continue}let Bt,Dt,Fr=new Set,$t=new Map;Le.push(()=>{Bt=ig.virtualizeDescriptor(Ot,de.locatorHash),Dt=ig.virtualizePackage(jt,de.locatorHash),k.dependencies.set(Ot.identHash,Bt),r.set(Bt.descriptorHash,Dt.locatorHash),t.set(Bt.descriptorHash,Bt),n.set(Dt.locatorHash,Dt),__.getSetWithDefault(F,Dt.locatorHash).add(Bt.descriptorHash),tt.add(Dt.locatorHash)}),Je.push(()=>{Q.set(Dt.locatorHash,$t);for(let Xt of Dt.peerDependencies.values()){let cr=__.getFactoryWithDefault(ze,Xt.identHash,()=>{let Ar=be.get(Xt.identHash)??null,qr=k.dependencies.get(Xt.identHash);return!qr&&ig.areIdentsEqual(de,Xt)&&(ue.identHash===de.identHash?qr=ue:(qr=ig.makeDescriptor(de,ue.range),t.set(qr.descriptorHash,qr),r.set(qr.descriptorHash,de.locatorHash),I.delete(qr.descriptorHash),Ar=null)),qr||(qr=ig.makeDescriptor(Xt,"missing:")),{subject:de,ident:Xt,provided:qr,root:!Ar,requests:new Map,hash:`p${f8.makeHash(de.locatorHash,Xt.identHash).slice(0,6)}`}}).provided;if(cr.range==="missing:"&&Dt.dependencies.has(Xt.identHash)){Dt.peerDependencies.delete(Xt.identHash);continue}if($t.set(Xt.identHash,{requester:Dt,descriptor:Xt,meta:Dt.peerDependenciesMeta.get(ig.stringifyIdent(Xt)),children:new Map}),Dt.dependencies.set(Xt.identHash,cr),ig.isVirtualDescriptor(cr)){let Ar=r.get(cr.descriptorHash);__.getSetWithDefault(B,Ar).add(Dt.locatorHash)}E.set(cr.identHash,cr),cr.range==="missing:"&&Fr.add(cr.identHash)}Dt.dependencies=new Map(__.sortMap(Dt.dependencies,([Xt,lr])=>ig.stringifyIdent(lr)))}),ft.push(()=>{if(!n.has(Dt.locatorHash))return;let Xt=C.get(jt.locatorHash);typeof Xt=="number"&&Xt>=2&&ae();let lr=C.get(jt.locatorHash),cr=typeof lr<"u"?lr+1:1;C.set(jt.locatorHash,cr),ce(Bt,Dt,$t,{top:Se,optional:Er}),C.set(jt.locatorHash,cr-1)}),lt.push(()=>{let Xt=r.get(Bt.descriptorHash);if(typeof Xt>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let lr=Q.get(Xt);if(typeof lr>"u")throw new Error("Assertion failed: Expected the peer requests to be registered");for(let cr of ze.values()){let Ar=lr.get(cr.ident.identHash);Ar&&(cr.requests.set(Bt.descriptorHash,Ar),f.set(cr.hash,cr),cr.root||be.get(cr.ident.identHash)?.children.set(Bt.descriptorHash,Ar))}if(n.has(Dt.locatorHash))for(let cr of Fr)Dt.dependencies.delete(cr)})}for(let Ot of[...Le,...Je])Ot();for(let Ot of tt){tt.delete(Ot);let Er=n.get(Ot),Sr=f8.makeHash(ig.devirtualizeLocator(Er).locatorHash,...Array.from(Er.dependencies.values(),Fr=>{let $t=Fr.range!=="missing:"?r.get(Fr.descriptorHash):"missing:";if(typeof $t>"u")throw new Error(`Assertion failed: Expected the resolution for ${ig.prettyDescriptor(e.configuration,Fr)} to have been registered`);return $t===Se?`${$t} (top)`:$t})),jt=N.get(Sr);if(typeof jt>"u"){N.set(Sr,Er);continue}let Bt=__.getSetWithDefault(F,jt.locatorHash);for(let Fr of F.get(Er.locatorHash)??[])r.set(Fr,jt.locatorHash),Bt.add(Fr);n.delete(Er.locatorHash),a.delete(Er.locatorHash),tt.delete(Er.locatorHash);let Dt=B.get(Er.locatorHash);if(Dt!==void 0){let Fr=__.getSetWithDefault(B,jt.locatorHash);for(let $t of Dt)Fr.add($t),tt.add($t)}}for(let Ot of[...ft,...lt])Ot()};for(let ue of e.workspaces){let de=ue.anchoredLocator;I.delete(ue.anchoredDescriptor.descriptorHash),ce(ue.anchoredDescriptor,de,new Map,{top:de.locatorHash,optional:!1})}for(let ue of f.values()){if(!ue.root)continue;let de=n.get(ue.subject.locatorHash);if(typeof de>"u")continue;for(let Se of ue.requests.values()){let De=`p${f8.makeHash(ue.subject.locatorHash,ig.stringifyIdent(ue.ident),Se.requester.locatorHash).slice(0,6)}`;l.set(De,{subject:ue.subject.locatorHash,requested:ue.ident,rootRequester:Se.requester.locatorHash,allRequesters:Array.from(ig.allPeerRequests(Se),k=>k.requester.locatorHash)})}let be=[...ig.allPeerRequests(ue)];if(ue.provided.range!=="missing:"){let Se=ne(ue.provided),De=Se.version??"0.0.0",k=ze=>{if(ze.startsWith(pdt.WorkspaceResolver.protocol)){if(!e.tryWorkspaceByLocator(Se))return null;ze=ze.slice(pdt.WorkspaceResolver.protocol.length),(ze==="^"||ze==="~")&&(ze="*")}return ze},tt=!0;for(let ze of be){let Le=k(ze.descriptor.range);if(Le===null){tt=!1;continue}if(!fdt.satisfiesWithPrereleases(De,Le)){tt=!1;let Je=`p${f8.makeHash(ue.subject.locatorHash,ig.stringifyIdent(ue.ident),ze.requester.locatorHash).slice(0,6)}`;A.push({type:I8.NotCompatible,subject:de,requested:ue.ident,requester:ze.requester,version:De,hash:Je,requirementCount:be.length})}}if(!tt){let ze=be.map(Le=>k(Le.descriptor.range));A.push({type:I8.NodeNotCompatible,node:ue,range:ze.includes(null)?null:fdt.simplifyRanges(ze),hash:ue.hash})}}else{let Se=!0;for(let De of be)if(!De.meta?.optional){Se=!1;let k=`p${f8.makeHash(ue.subject.locatorHash,ig.stringifyIdent(ue.ident),De.requester.locatorHash).slice(0,6)}`;A.push({type:I8.NotProvided,subject:de,requested:ue.ident,requester:De.requester,hash:k})}Se||A.push({type:I8.NodeNotProvided,node:ue,hash:ue.hash})}}}function*H5o(e){let t=new Map;if("children"in e)t.set(e,e);else for(let r of e.requests.values())t.set(r,r);for(let[r,n]of t){yield{request:r,root:n};for(let a of r.children.values())t.has(a)||t.set(a,n)}}function Y5o(e,t){let r=[],n=[],a=!1;for(let o of e.peerWarnings)if(!(o.type===I8.NotCompatible||o.type===I8.NotProvided)){if(!e.tryWorkspaceByLocator(o.node.subject)){a=!0;continue}if(o.type===I8.NodeNotCompatible){let l=e.storedResolutions.get(o.node.provided.descriptorHash);if(typeof l>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let A=e.storedPackages.get(l);if(typeof A>"u")throw new Error("Assertion failed: Expected the package to be registered");let f=__.mapAndFind(H5o(o.node),({request:b,root:E})=>fdt.satisfiesWithPrereleases(A.version??"0.0.0",b.descriptor.range)?__.mapAndFind.skip:b===E?ig.prettyIdent(e.configuration,b.requester):`${ig.prettyIdent(e.configuration,b.requester)} (via ${ig.prettyIdent(e.configuration,E.requester)})`),I=[...ig.allPeerRequests(o.node)].length>1?"and other dependencies request":"requests",C=o.range?ig.prettyRange(e.configuration,o.range):ef.pretty(e.configuration,"but they have non-overlapping ranges!","redBright");r.push(`${ig.prettyIdent(e.configuration,o.node.ident)} is listed by your project with version ${ig.prettyReference(e.configuration,A.version??"0.0.0")} (${ef.pretty(e.configuration,o.hash,ef.Type.CODE)}), which doesn't satisfy what ${f} ${I} (${C}).`)}if(o.type===I8.NodeNotProvided){let l=o.node.requests.size>1?" and other dependencies":"";n.push(`${ig.prettyLocator(e.configuration,o.node.subject)} doesn't provide ${ig.prettyIdent(e.configuration,o.node.ident)} (${ef.pretty(e.configuration,o.hash,ef.Type.CODE)}), requested by ${ig.prettyIdent(e.configuration,o.node.requests.values().next().value.requester)}${l}.`)}}t.startSectionSync({reportFooter:()=>{t.reportWarning(jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by your project; run ${ef.pretty(e.configuration,"yarn explain peer-requirements ",ef.Type.CODE)} for details, where ${ef.pretty(e.configuration,"",ef.Type.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let o of __.sortMap(r,l=>ef.stripAnsi(l)))t.reportWarning(jb.MessageName.INCOMPATIBLE_PEER_DEPENDENCY,o);for(let o of __.sortMap(n,l=>ef.stripAnsi(l)))t.reportWarning(jb.MessageName.MISSING_PEER_DEPENDENCY,o)}),a&&t.reportWarning(jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by dependencies; run ${ef.pretty(e.configuration,"yarn explain peer-requirements",ef.Type.CODE)} for details.`)}});var lVn=H(RIe=>{"use strict";Object.defineProperty(RIe,"__esModule",{value:!0});RIe.TelemetryManager=RIe.MetricName=void 0;RIe.derive=cVn;var hdt=(Wa(),vi(Va)),h8=Io(),aVn=X5e(),Q5o=hdt.__importStar(koe()),X5o=hdt.__importStar(dAt()),Idt=hdt.__importStar(OO()),J5o=hdt.__importStar(h$()),m8;(function(e){e.VERSION="version",e.COMMAND_NAME="commandName",e.PLUGIN_NAME="pluginName",e.INSTALL_COUNT="installCount",e.PROJECT_COUNT="projectCount",e.WORKSPACE_COUNT="workspaceCount",e.DEPENDENCY_COUNT="dependencyCount",e.EXTENSION="packageExtension"})(m8||(RIe.MetricName=m8={}));function cVn(e){let n=Math.floor(e.timeNow/864e5),a=e.updateInterval*864e5,o=e.state.lastUpdate??e.timeNow+a+Math.floor(a*e.randomInitialInterval),l=o+a,A=e.state.lastTips??n*864e5,f=A+864e5+8*36e5-e.timeZone,I=l<=e.timeNow,C=f<=e.timeNow,b=null;return(I||C||!e.state.lastUpdate||!e.state.lastTips)&&(b={},b.lastUpdate=I?e.timeNow:o,b.lastTips=A,b.blocks=I?{}:e.state.blocks,b.displayedTips=e.state.displayedTips),{nextState:b,triggerUpdate:I,triggerTips:C,nextTips:C?n*864e5:A}}var _pr=class{constructor(t,r){this.values=new Map,this.hits=new Map,this.enumerators=new Map,this.nextTips=0,this.displayedTips=[],this.shouldCommitTips=!1,this.configuration=t;let n=this.getRegistryPath();this.isNew=!h8.xfs.existsSync(n),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(t){let r=new Set(this.displayedTips),n=A=>A&&aVn.YarnVersion?J5o.satisfiesWithPrereleases(aVn.YarnVersion,A):!1,a=t.map((A,f)=>f).filter(A=>t[A]&&n(t[A]?.selector));if(a.length===0)return null;let o=a.filter(A=>!r.has(A));if(o.length===0){let A=Math.floor(a.length*.2);this.displayedTips=A>0?this.displayedTips.slice(-A):[],o=a.filter(f=>!r.has(f))}let l=o[Math.floor(Math.random()*o.length)];return this.displayedTips.push(l),this.commitTips(),t[l]}reportVersion(t){this.reportValue(m8.VERSION,t.replace(/-git\..*/,"-git"))}reportCommandName(t){this.reportValue(m8.COMMAND_NAME,t||"")}reportPluginName(t){this.reportValue(m8.PLUGIN_NAME,t)}reportProject(t){this.reportEnumerator(m8.PROJECT_COUNT,t)}reportInstall(t){this.reportHit(m8.INSTALL_COUNT,t)}reportPackageExtension(t){this.reportValue(m8.EXTENSION,t)}reportWorkspaceCount(t){this.reportValue(m8.WORKSPACE_COUNT,String(t))}reportDependencyCount(t){this.reportValue(m8.DEPENDENCY_COUNT,String(t))}reportValue(t,r){Idt.getSetWithDefault(this.values,t).add(r)}reportEnumerator(t,r){Idt.getSetWithDefault(this.enumerators,t).add(Q5o.makeHash(r))}reportHit(t,r="*"){let n=Idt.getMapWithDefault(this.hits,t),a=Idt.getFactoryWithDefault(n,r,()=>0);n.set(r,a+1)}getRegistryPath(){let t=this.configuration.get("globalFolder");return h8.ppath.join(t,"telemetry.json")}sendReport(t){let r=this.getRegistryPath(),n;try{n=h8.xfs.readJsonSync(r)}catch{n={}}let{nextState:a,triggerUpdate:o,triggerTips:l,nextTips:A}=cVn({state:n,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=A,this.displayedTips=n.displayedTips??[],a!==null)try{h8.xfs.mkdirSync(h8.ppath.dirname(r),{recursive:!0}),h8.xfs.writeJsonSync(r,a)}catch{return!1}if(l&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),o){let f=n.blocks??{};if(Object.keys(f).length===0){let I=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${t}?ddsource=yarn`,C=b=>X5o.post(I,b,{configuration:this.configuration}).catch(()=>{});for(let[b,E]of Object.entries(n.blocks??{})){if(Object.keys(E).length===0)continue;let N=E;N.userId=b,N.reportType="primary";for(let Q of Object.keys(N.enumerators??{}))N.enumerators[Q]=N.enumerators[Q].length;C(N);let B=new Map,F=20;for(let[Q,J]of Object.entries(N.values))J.length>0&&B.set(Q,J.slice(0,F));for(;B.size>0;){let Q={};Q.userId=b,Q.reportType="secondary",Q.metrics={};for(let[J,ae]of B)Q.metrics[J]=ae.shift(),ae.length===0&&B.delete(J);C(Q)}}}}return!0}applyChanges(){let t=this.getRegistryPath(),r;try{r=h8.xfs.readJsonSync(t)}catch{r={}}let n=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},o=a[n]=a[n]??{};for(let l of this.hits.keys()){let A=o.hits=o.hits??{},f=A[l]=A[l]??{};for(let[I,C]of this.hits.get(l))f[I]=(f[I]??0)+C}for(let l of["values","enumerators"])for(let A of this[l].keys()){let f=o[l]=o[l]??{};f[A]=[...new Set([...f[A]??[],...this[l].get(A)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),h8.xfs.mkdirSync(h8.ppath.dirname(t),{recursive:!0}),h8.xfs.writeJsonSync(t,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};RIe.TelemetryManager=_pr});var mn=H(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});Nl.treeUtils=Nl.tgzUtils=Nl.structUtils=Nl.semverUtils=Nl.scriptUtils=Nl.nodeUtils=Nl.miscUtils=Nl.formatUtils=Nl.folderUtils=Nl.execUtils=Nl.httpUtils=Nl.hashUtils=Nl.PackageExtensionStatus=Nl.PackageExtensionType=Nl.LinkType=Nl.YarnVersion=Nl.Workspace=Nl.WorkspaceResolver=Nl.WorkspaceFetcher=Nl.VirtualFetcher=Nl.ThrowReport=Nl.TelemetryManager=Nl.reportOptionDeprecations=Nl.StreamReport=Nl.Report=Nl.ReportError=Nl.InstallMode=Nl.Project=Nl.PeerWarningType=Nl.LOCKFILE_VERSION=Nl.MultiFetcher=Nl.stringifyMessageName=Nl.parseMessageName=Nl.MessageName=Nl.Manifest=Nl.LockfileResolver=Nl.LightReport=Nl.LegacyMigrationResolver=Nl.BuildDirectiveType=Nl.WindowsLinkType=Nl.DurationUnit=Nl.SettingsType=Nl.FormatType=Nl.Configuration=Nl.TAG_REGEXP=Nl.LEGACY_PLUGINS=Nl.DEFAULT_RC_FILENAME=Nl.Cache=Nl.CACHE_CHECKPOINT=Nl.CACHE_VERSION=void 0;var SM=(Wa(),vi(Va)),U5o=SM.__importStar(fAt());Nl.execUtils=U5o;var K5o=SM.__importStar(Ggt());Nl.folderUtils=K5o;var j5o=SM.__importStar(uM());Nl.formatUtils=j5o;var z5o=SM.__importStar(koe());Nl.hashUtils=z5o;var q5o=SM.__importStar(dAt());Nl.httpUtils=q5o;var $5o=SM.__importStar(OO());Nl.miscUtils=$5o;var eMo=SM.__importStar(pAt());Nl.nodeUtils=eMo;var tMo=SM.__importStar(mdr());Nl.scriptUtils=tMo;var rMo=SM.__importStar(h$());Nl.semverUtils=rMo;var nMo=SM.__importStar(fG());Nl.structUtils=nMo;var iMo=SM.__importStar(HLn());Nl.tgzUtils=iMo;var sMo=SM.__importStar(KLn());Nl.treeUtils=sMo;var ypr=Zdr();Object.defineProperty(Nl,"CACHE_VERSION",{enumerable:!0,get:function(){return ypr.CACHE_VERSION}});Object.defineProperty(Nl,"CACHE_CHECKPOINT",{enumerable:!0,get:function(){return ypr.CACHE_CHECKPOINT}});Object.defineProperty(Nl,"Cache",{enumerable:!0,get:function(){return ypr.Cache}});var bpr=V5e();Object.defineProperty(Nl,"DEFAULT_RC_FILENAME",{enumerable:!0,get:function(){return bpr.DEFAULT_RC_FILENAME}});Object.defineProperty(Nl,"LEGACY_PLUGINS",{enumerable:!0,get:function(){return bpr.LEGACY_PLUGINS}});Object.defineProperty(Nl,"TAG_REGEXP",{enumerable:!0,get:function(){return bpr.TAG_REGEXP}});var hMe=V5e();Object.defineProperty(Nl,"Configuration",{enumerable:!0,get:function(){return hMe.Configuration}});Object.defineProperty(Nl,"FormatType",{enumerable:!0,get:function(){return hMe.FormatType}});Object.defineProperty(Nl,"SettingsType",{enumerable:!0,get:function(){return hMe.SettingsType}});Object.defineProperty(Nl,"DurationUnit",{enumerable:!0,get:function(){return hMe.DurationUnit}});Object.defineProperty(Nl,"WindowsLinkType",{enumerable:!0,get:function(){return hMe.WindowsLinkType}});var oMo=Ldr();Object.defineProperty(Nl,"BuildDirectiveType",{enumerable:!0,get:function(){return oMo.BuildDirectiveType}});var aMo=Wdr();Object.defineProperty(Nl,"LegacyMigrationResolver",{enumerable:!0,get:function(){return aMo.LegacyMigrationResolver}});var cMo=i9n();Object.defineProperty(Nl,"LightReport",{enumerable:!0,get:function(){return cMo.LightReport}});var lMo=Mdr();Object.defineProperty(Nl,"LockfileResolver",{enumerable:!0,get:function(){return lMo.LockfileResolver}});var uMo=kve();Object.defineProperty(Nl,"Manifest",{enumerable:!0,get:function(){return uMo.Manifest}});var Epr=U9();Object.defineProperty(Nl,"MessageName",{enumerable:!0,get:function(){return Epr.MessageName}});Object.defineProperty(Nl,"parseMessageName",{enumerable:!0,get:function(){return Epr.parseMessageName}});Object.defineProperty(Nl,"stringifyMessageName",{enumerable:!0,get:function(){return Epr.stringifyMessageName}});var gMo=Uur();Object.defineProperty(Nl,"MultiFetcher",{enumerable:!0,get:function(){return gMo.MultiFetcher}});var mdt=oVn();Object.defineProperty(Nl,"LOCKFILE_VERSION",{enumerable:!0,get:function(){return mdt.LOCKFILE_VERSION}});Object.defineProperty(Nl,"PeerWarningType",{enumerable:!0,get:function(){return mdt.PeerWarningType}});Object.defineProperty(Nl,"Project",{enumerable:!0,get:function(){return mdt.Project}});Object.defineProperty(Nl,"InstallMode",{enumerable:!0,get:function(){return mdt.InstallMode}});var uVn=dM();Object.defineProperty(Nl,"ReportError",{enumerable:!0,get:function(){return uVn.ReportError}});Object.defineProperty(Nl,"Report",{enumerable:!0,get:function(){return uVn.Report}});var gVn=J5e();Object.defineProperty(Nl,"StreamReport",{enumerable:!0,get:function(){return gVn.StreamReport}});Object.defineProperty(Nl,"reportOptionDeprecations",{enumerable:!0,get:function(){return gVn.reportOptionDeprecations}});var AMo=lVn();Object.defineProperty(Nl,"TelemetryManager",{enumerable:!0,get:function(){return AMo.TelemetryManager}});var dMo=Apr();Object.defineProperty(Nl,"ThrowReport",{enumerable:!0,get:function(){return dMo.ThrowReport}});var pMo=egr();Object.defineProperty(Nl,"VirtualFetcher",{enumerable:!0,get:function(){return pMo.VirtualFetcher}});var fMo=rgr();Object.defineProperty(Nl,"WorkspaceFetcher",{enumerable:!0,get:function(){return fMo.WorkspaceFetcher}});var IMo=AIe();Object.defineProperty(Nl,"WorkspaceResolver",{enumerable:!0,get:function(){return IMo.WorkspaceResolver}});var hMo=ppr();Object.defineProperty(Nl,"Workspace",{enumerable:!0,get:function(){return hMo.Workspace}});var mMo=X5e();Object.defineProperty(Nl,"YarnVersion",{enumerable:!0,get:function(){return mMo.YarnVersion}});var Spr=cIe();Object.defineProperty(Nl,"LinkType",{enumerable:!0,get:function(){return Spr.LinkType}});Object.defineProperty(Nl,"PackageExtensionType",{enumerable:!0,get:function(){return Spr.PackageExtensionType}});Object.defineProperty(Nl,"PackageExtensionStatus",{enumerable:!0,get:function(){return Spr.PackageExtensionStatus}})});var Bpr=H(Cdt=>{"use strict";Object.defineProperty(Cdt,"__esModule",{value:!0});Cdt.WorkspaceRequiredError=void 0;var CMo=mn(),AVn=Io(),_Mo=(Rl(),vi(ng)),vpr=class extends _Mo.UsageError{constructor(t,r){let n=AVn.ppath.relative(t,r),a=AVn.ppath.join(t,CMo.Manifest.fileName);super(`This command can only be run from within a workspace of your project (${n} isn't a workspace of ${a}).`)}};Cdt.WorkspaceRequiredError=vpr});var wpr=H(_dt=>{"use strict";Object.defineProperty(_dt,"__esModule",{value:!0});_dt.getDynamicLibs=void 0;var w$=(Wa(),vi(Va)),yMo=w$.__importStar(dl()),bMo=w$.__importStar(mn()),EMo=w$.__importStar(Io()),SMo=w$.__importStar(u8()),vMo=w$.__importStar(tM()),BMo=w$.__importStar(M5e()),wMo=w$.__importStar((Rl(),vi(ng))),TMo=w$.__importStar(jC()),RMo=w$.__importStar((vZ(),vi(SZ))),NMo=()=>new Map([["@yarnpkg/cli",yMo],["@yarnpkg/core",bMo],["@yarnpkg/fslib",EMo],["@yarnpkg/libzip",SMo],["@yarnpkg/parsers",vMo],["@yarnpkg/shell",BMo],["clipanion",wMo],["semver",TMo],["typanion",RMo]]);_dt.getDynamicLibs=NMo});var Tpr=H((djl,DMo)=>{DMo.exports={name:"@yarnpkg/cli",version:"4.14.1",license:"BSD-2-Clause",main:"./lib/index.js",exports:{".":"./lib/index.js","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"^4.7.0","@yarnpkg/fslib":"^3.1.5","@yarnpkg/libzip":"^3.2.2","@yarnpkg/parsers":"^3.0.3","@yarnpkg/plugin-catalog":"^1.0.2","@yarnpkg/plugin-compat":"^4.0.12","@yarnpkg/plugin-constraints":"^4.0.5","@yarnpkg/plugin-dlx":"^4.0.2","@yarnpkg/plugin-essentials":"^4.5.0","@yarnpkg/plugin-exec":"^3.1.0","@yarnpkg/plugin-file":"^3.0.2","@yarnpkg/plugin-git":"^3.2.0","@yarnpkg/plugin-github":"^3.0.2","@yarnpkg/plugin-http":"^3.0.3","@yarnpkg/plugin-init":"^4.1.2","@yarnpkg/plugin-interactive-tools":"^4.1.0","@yarnpkg/plugin-jsr":"^1.1.1","@yarnpkg/plugin-link":"^3.0.2","@yarnpkg/plugin-nm":"^4.0.8","@yarnpkg/plugin-npm":"^3.5.0","@yarnpkg/plugin-npm-cli":"^4.4.1","@yarnpkg/plugin-pack":"^4.0.4","@yarnpkg/plugin-patch":"^4.0.3","@yarnpkg/plugin-pnp":"^4.1.5","@yarnpkg/plugin-pnpm":"^2.1.2","@yarnpkg/plugin-stage":"^4.0.2","@yarnpkg/plugin-typescript":"^4.1.3","@yarnpkg/plugin-version":"^4.2.0","@yarnpkg/plugin-workspace-tools":"^4.1.7","@yarnpkg/shell":"^4.1.3","ci-info":"^4.0.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"^4.2.3","@yarnpkg/monorepo":"^0.0.0","@yarnpkg/pnpify":"^4.1.6"},peerDependencies:{"@yarnpkg/core":"^4.7.0"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"git+https://github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var Npr=H(Rpr=>{"use strict";Object.defineProperty(Rpr,"__esModule",{value:!0});Rpr.getPluginConfiguration=FMo;var kMo=(Wa(),vi(Va)),xMo=kMo.__importDefault(Tpr()),GMo=wpr();function FMo(){let e=new Set;for(let r of xMo.default["@yarnpkg/builder"].bundles.standard)e.add(r);let t=(0,GMo.getDynamicLibs)();for(let r of e)t.set(r,Et(r).default);return{plugins:e,modules:t}}});var dVn=H(Dpr=>{"use strict";Object.defineProperty(Dpr,"__esModule",{value:!0});Dpr.openWorkspace=VMo;var ZMo=mn(),LMo=Bpr();async function VMo(e,t){let{project:r,workspace:n}=await ZMo.Project.find(e,t);if(!n)throw new LMo.WorkspaceRequiredError(r.cwd,t);return n}});var kpr=H(ydt=>{"use strict";Object.defineProperty(ydt,"__esModule",{value:!0});ydt.pluginCommands=void 0;ydt.pluginCommands=new Map([])});var hVn=H(bdt=>{"use strict";Object.defineProperty(bdt,"__esModule",{value:!0});bdt.getCli=UMo;bdt.runExit=KMo;var T$=mn(),wX=Io(),WMo=Et("child_process"),OMo=Jfe(),sBe=(Rl(),vi(ng)),PMo=kpr(),MMo=Npr();function pVn({cwd:e,pluginConfiguration:t}){let r=new sBe.Cli({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:T$.YarnVersion??""});return Object.assign(r,{defaultContext:{...sBe.Cli.defaultContext,cwd:e,plugins:t,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function HMo(e){if(T$.miscUtils.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,n=">=18.12.0";if(T$.semverUtils.satisfiesWithPrereleases(r,n))return!0;let a=new sBe.UsageError(`This tool requires a Node version compatible with ${n} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return sBe.Cli.defaultContext.stdout.write(e.error(a)),!1}async function fVn({selfPath:e,pluginConfiguration:t}){return await T$.Configuration.find(wX.npath.toPortablePath(process.cwd()),t,{strict:!1,usePathCheck:e})}function YMo(e,t,{yarnPath:r}){if(!wX.xfs.existsSync(r))return e.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let n={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,WMo.execFileSync)(process.execPath,[wX.npath.fromPortablePath(r),...t],n)}catch(a){return a.status??1}return 0}function QMo(e,t){let r=null,n=t;return t.length>=2&&t[0]==="--cwd"?(r=wX.npath.toPortablePath(t[1]),n=t.slice(2)):t.length>=1&&t[0].startsWith("--cwd=")?(r=wX.npath.toPortablePath(t[0].slice(6)),n=t.slice(1)):t[0]==="add"&&t[t.length-2]==="--cwd"&&(r=wX.npath.toPortablePath(t[t.length-1]),n=t.slice(0,t.length-2)),e.defaultContext.cwd=r!==null?wX.ppath.resolve(r):wX.ppath.cwd(),n}function XMo(e,{configuration:t}){if(!t.get("enableTelemetry")||OMo.isCI||!process.stdout.isTTY)return;T$.Configuration.telemetry=new T$.TelemetryManager(t,"puba9cdc10ec5790a2cf4969dd413a47270");let n=/^@yarnpkg\/plugin-(.*)$/;for(let a of t.plugins.keys())PMo.pluginCommands.has(a.match(n)?.[1]??"")&&T$.Configuration.telemetry?.reportPluginName(a);e.binaryVersion&&T$.Configuration.telemetry.reportVersion(e.binaryVersion)}function IVn(e,{configuration:t}){for(let r of t.plugins.values())for(let n of r.commands||[])e.register(n)}async function JMo(e,t,{selfPath:r,pluginConfiguration:n}){if(!HMo(e))return 1;let a=await fVn({selfPath:r,pluginConfiguration:n}),o=a.get("yarnPath"),l=a.get("ignorePath");if(o&&!l)return YMo(e,t,{yarnPath:o});delete process.env.YARN_IGNORE_PATH;let A=QMo(e,t);XMo(e,{configuration:a}),IVn(e,{configuration:a});let f=e.process(A,e.defaultContext);return f.help||T$.Configuration.telemetry?.reportCommandName(f.path.join(" ")),await e.run(f,e.defaultContext)}async function UMo({cwd:e=wX.ppath.cwd(),pluginConfiguration:t=(0,MMo.getPluginConfiguration)()}={}){let r=pVn({cwd:e,pluginConfiguration:t}),n=await fVn({pluginConfiguration:t,selfPath:null});return IVn(r,{configuration:n}),r}async function KMo(e,{cwd:t=wX.ppath.cwd(),selfPath:r,pluginConfiguration:n}){let a=pVn({cwd:t,pluginConfiguration:n});function o(){sBe.Cli.defaultContext.stdout.write(`ERROR: Yarn is terminating due to an unexpected empty event loop. -Please report this issue at https://github.com/yarnpkg/berry/issues.`)}process.once("beforeExit",o);try{process.exitCode=42,process.exitCode=await JMo(a,e,{selfPath:r,pluginConfiguration:n})}catch(l){sBe.Cli.defaultContext.stdout.write(a.error(l)),process.exitCode=1}finally{process.off("beforeExit",o),await wX.xfs.rmtempPromise()}}});var dl=H(tD=>{"use strict";Object.defineProperty(tD,"__esModule",{value:!0});tD.pluginCommands=tD.runExit=tD.getCli=tD.openWorkspace=tD.getPluginConfiguration=tD.getDynamicLibs=tD.WorkspaceRequiredError=tD.BaseCommand=void 0;var jMo=ybn();Object.defineProperty(tD,"BaseCommand",{enumerable:!0,get:function(){return jMo.BaseCommand}});var zMo=Bpr();Object.defineProperty(tD,"WorkspaceRequiredError",{enumerable:!0,get:function(){return zMo.WorkspaceRequiredError}});var qMo=wpr();Object.defineProperty(tD,"getDynamicLibs",{enumerable:!0,get:function(){return qMo.getDynamicLibs}});var $Mo=Npr();Object.defineProperty(tD,"getPluginConfiguration",{enumerable:!0,get:function(){return $Mo.getPluginConfiguration}});var eHo=dVn();Object.defineProperty(tD,"openWorkspace",{enumerable:!0,get:function(){return eHo.openWorkspace}});var mVn=hVn();Object.defineProperty(tD,"getCli",{enumerable:!0,get:function(){return mVn.getCli}});Object.defineProperty(tD,"runExit",{enumerable:!0,get:function(){return mVn.runExit}});var tHo=kpr();Object.defineProperty(tD,"pluginCommands",{enumerable:!0,get:function(){return tHo.pluginCommands}})});var xVn=H((Pjl,kVn)=>{"use strict";var RVn=Et("stream").PassThrough,NVn=Et("stream").Writable,DVn=Et("util");DVn.inherits(Lpr,RVn);DVn.inherits(Vpr,NVn);function Lpr(e,t){RVn.call(this,t),this.factory=e,this.opts=t}Lpr.prototype._flush=function(e){var t=this.factory();t.pipe(new Vpr(this,this.opts)).on("finish",e),t.resume()};function Vpr(e,t){NVn.call(this,t),this.target=e}Vpr.prototype._write=function(e,t,r){this.target.push(e),r()};function Zpr(e,t){t=t||{};var r;return typeof e=="function"?r=e:(e.pause(),r=function(){return e}),new Lpr(r,t)}Zpr.obj=function(e,t){return t=t||{},t.objectMode=!0,Zpr(e,t)};kVn.exports=Zpr});var ZVn=bc(()=>{});function Opr(e,t){return e.map(r=>r.trim()).filter(Boolean).join(t)}function cHo(e,t){if(!e)return LVn;let r=Opr(e,"|");return t?t(r):new RegExp(`^[\\s|*]*(${r})[:\\s]+(.*)`,"i")}function lHo(e,t){if(!e)return LVn;let r=t?"g":"gi";return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${Opr(e,"|")})([\\w-]*\\d+)`,r)}function uHo(e){if(!e)return/()(.+)/gi;let t=Opr(e,"|");return new RegExp(`(${t})(?:\\s+(.*?))(?=(?:${t})|$)`,"gi")}function VVn(e={}){let t=cHo(e.noteKeywords,e.notesPattern),r=lHo(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=uHo(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}var LVn,WVn=bc(()=>{LVn=/(?!.*)/});function yMe(e){let t=e.match(/[^\r\n]/);if(typeof t?.index!="number")return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` -`;)n--;return e.substring(r,n+1)}function DIe(e,t){return e?`${e} -${t||""}`:t||""}function OVn(e){return e?t=>!t.startsWith(e):()=>!0}function PVn(e){let t=e.indexOf(gHo);return t===-1?e:e.slice(0,t)}function MVn(e){return!e.match(/^\s*gpg:/)}var gHo,HVn=bc(()=>{gHo="# ------------------------ >8 ------------------------"});var YVn,QVn=bc(()=>{YVn={noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],issuePrefixes:["#"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],fieldPattern:/^-(.*?)-$/}});function Ppr(e={}){return{merge:null,revert:null,header:null,body:null,footer:null,notes:[],mentions:[],references:[],...e}}var bMe,Mpr=bc(()=>{WVn();HVn();QVn();bMe=class{options;regexes;lines=[];lineIndex=0;commit=Ppr();constructor(t={}){this.options={...YVn,...t},this.regexes=VVn(this.options)}currentLine(){return this.lines[this.lineIndex]}nextLine(){return this.lines[this.lineIndex++]}isLineAvailable(){return this.lineIndex{t[l]=o[A+1]||null}),!0):!1}parseHeader(t){t&&this.skipEmptyLines();let{commit:r,options:n}=this,a=n.headerCorrespondence||[],o=this.nextLine(),l=null;o&&(n.breakingHeaderPattern&&(l=o.match(n.breakingHeaderPattern)),!l&&n.headerPattern&&(l=o.match(n.headerPattern))),o&&(r.header=o),l&&a.forEach((A,f)=>{r[A]=l[f+1]||null})}parseMeta(){let{options:t,commit:r}=this;if(!t.fieldPattern||!this.isLineAvailable())return!1;let n,a=null,o=!1;for(;this.isLineAvailable();){if(n=this.currentLine().match(t.fieldPattern),n){a=n[1]||null,this.nextLine();continue}if(a)o=!0,r[a]=DIe(r[a],this.currentLine()),this.nextLine();else break}return o}parseNotes(){let{regexes:t,commit:r}=this;if(!this.isLineAvailable())return!1;let n=this.currentLine().match(t.notes),a=[];if(n){let o={title:n[1],text:n[2]};for(r.notes.push(o),r.footer=DIe(r.footer,this.currentLine()),this.nextLine();this.isLineAvailable();){if(this.parseMeta()||this.parseNotes())return!0;if(a=this.parseReferences(this.currentLine()),a.length?r.references.push(...a):o.text=DIe(o.text,this.currentLine()),r.footer=DIe(r.footer,this.currentLine()),this.nextLine(),a.length)break}return!0}return!1}parseBodyAndFooter(t){let{commit:r}=this;if(!this.isLineAvailable())return t;let n=this.parseReferences(this.currentLine()),a=!n.length&&t;return a?r.body=DIe(r.body,this.currentLine()):(r.references.push(...n),r.footer=DIe(r.footer,this.currentLine())),this.nextLine(),a}parseBreakingHeader(){let{commit:t,options:r}=this;if(!r.breakingHeaderPattern||t.notes.length||!t.header)return;let n=t.header.match(r.breakingHeaderPattern);n&&t.notes.push({title:"BREAKING CHANGE",text:n[3]})}parseMentions(t){let{commit:r,regexes:n}=this,a;for(;a=n.mentions.exec(t),!!a;)r.mentions.push(a[1])}parseRevert(t){let{commit:r,options:n}=this,a=n.revertCorrespondence||[],o=n.revertPattern?t.match(n.revertPattern):null;o&&(r.revert=a.reduce((l,A,f)=>(l[A]=o[f+1]||null,l),{}))}cleanupCommit(){let{commit:t}=this;t.body&&(t.body=yMe(t.body)),t.footer&&(t.footer=yMe(t.footer)),t.notes.forEach(r=>{r.text=yMe(r.text)})}parse(t){if(!t.trim())throw new TypeError("Expected a raw commit");let r=OVn(this.options.commentChar),n=yMe(t).split(/\r?\n/),a=PVn(n).filter(f=>r(f)&&MVn(f)),o=Ppr();this.lines=a,this.lineIndex=0,this.commit=o;let l=this.parseMerge();this.parseHeader(l),o.header&&(o.references=this.parseReferences(o.header));let A=!0;for(;this.isLineAvailable();)this.parseMeta(),this.parseNotes()&&(A=!1),this.parseBodyAndFooter(A)||(A=!1);return this.parseBreakingHeader(),this.parseMentions(t),this.parseRevert(t),this.cleanupCommit(),o}}});import{Transform as AHo}from"stream";function XVn(e={}){let t=e.warn,r=t===!0?n=>{throw n}:t?n=>t(n.toString()):()=>{};return async function*(a){let o=new bMe(e),l;for await(l of a)try{yield o.parse(l.toString())}catch(A){r(A)}}}function Hpr(e={}){return AHo.from(XVn(e))}var JVn=bc(()=>{Mpr()});var UVn={};Uf(UVn,{CommitParser:()=>bMe,createCommitObject:()=>Ppr,parseCommits:()=>XVn,parseCommitsStream:()=>Hpr});var Ypr=bc(()=>{ZVn();Mpr();JVn()});function dHo(e,t){let r,n;for(let a in t)if(r=e[a],n=t[a],typeof r=="string"&&(r=r.trim()),typeof n=="string"&&(n=n.trim()),r!==n)return!1;return!0}function KVn(e,t){if(!t.size)return null;let r=e.raw||e;for(let n of t)if(n.revert&&dHo(r,n.revert))return n;return null}var jVn=bc(()=>{});var aBe,Qpr=bc(()=>{jVn();aBe=class{hold=new Set;holdRevertsCount=0;*process(t){let{hold:r}=this,n=KVn(t,r);if(n){r.delete(n),this.holdRevertsCount--;return}if(t.revert){r.add(t),this.holdRevertsCount++;return}this.holdRevertsCount>0?r.add(t):(r.size&&(yield*r,r.clear()),yield t)}*flush(){let{hold:t}=this;t.size&&(yield*t,t.clear())}}});import{Transform as pHo}from"stream";async function*zVn(e){let t=new aBe;for await(let r of e)yield*t.process(r);yield*t.flush()}function*Xpr(e){let t=new aBe;for(let r of e)yield*t.process(r);yield*t.flush()}function fHo(){return pHo.from(zVn)}var qVn=bc(()=>{Qpr()});var $Vn={};Uf($Vn,{RevertedCommitsFilter:()=>aBe,filterRevertedCommits:()=>zVn,filterRevertedCommitsStream:()=>fHo,filterRevertedCommitsSync:()=>Xpr});var Jpr=bc(()=>{Qpr();qVn()});var ZZ=H(YO=>{"use strict";YO.__esModule=!0;YO.extend=aWn;YO.indexOf=vHo;YO.escapeExpression=BHo;YO.isEmpty=wHo;YO.createFrame=THo;YO.blockParams=RHo;YO.appendContextPath=NHo;var yHo={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},bHo=/[&<>"'`=]/g,EHo=/[&<>"'`=]/;function SHo(e){return yHo[e]}function aWn(e){for(var t=1;t{"use strict";Tdt.__esModule=!0;var zpr=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function qpr(e,t){var r=t&&t.loc,n=void 0,a=void 0,o=void 0,l=void 0;r&&(n=r.start.line,a=r.end.line,o=r.start.column,l=r.end.column,e+=" - "+n+":"+o);for(var A=Error.prototype.constructor.call(this,e),f=0;f{"use strict";Rdt.__esModule=!0;var $pr=ZZ();Rdt.default=function(e){e.registerHelper("blockHelperMissing",function(t,r){var n=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return n(this);if($pr.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):n(this);if(r.data&&r.ids){var o=$pr.createFrame(r.data);o.contextPath=$pr.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})};uWn.exports=Rdt.default});var dWn=H((Ndt,AWn)=>{"use strict";Ndt.__esModule=!0;function DHo(e){return e&&e.__esModule?e:{default:e}}var vMe=ZZ(),kHo=vM(),xHo=DHo(kHo);Ndt.default=function(e){e.registerHelper("each",function(t,r){if(!r)throw new xHo.default("Must pass iterator to #each");var n=r.fn,a=r.inverse,o=0,l="",A=void 0,f=void 0;r.data&&r.ids&&(f=vMe.appendContextPath(r.data.contextPath,r.ids[0])+"."),vMe.isFunction(t)&&(t=t.call(this)),r.data&&(A=vMe.createFrame(r.data));function I(B,F,Q){A&&(A.key=B,A.index=F,A.first=F===0,A.last=!!Q,f&&(A.contextPath=f+B)),l=l+n(t[B],{data:A,blockParams:vMe.blockParams([t[B],B],[f+B,null])})}if(t&&typeof t=="object")if(vMe.isArray(t))for(var C=t.length;o{"use strict";Ddt.__esModule=!0;function GHo(e){return e&&e.__esModule?e:{default:e}}var FHo=vM(),ZHo=GHo(FHo);Ddt.default=function(e){e.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new ZHo.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};pWn.exports=Ddt.default});var CWn=H((kdt,mWn)=>{"use strict";kdt.__esModule=!0;function LHo(e){return e&&e.__esModule?e:{default:e}}var IWn=ZZ(),VHo=vM(),hWn=LHo(VHo);kdt.default=function(e){e.registerHelper("if",function(t,r){if(arguments.length!=2)throw new hWn.default("#if requires exactly one argument");return IWn.isFunction(t)&&(t=t.call(this)),!r.hash.includeZero&&!t||IWn.isEmpty(t)?r.inverse(this):r.fn(this)}),e.registerHelper("unless",function(t,r){if(arguments.length!=2)throw new hWn.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};mWn.exports=kdt.default});var yWn=H((xdt,_Wn)=>{"use strict";xdt.__esModule=!0;xdt.default=function(e){e.registerHelper("log",function(){for(var t=[void 0],r=arguments[arguments.length-1],n=0;n{"use strict";Gdt.__esModule=!0;Gdt.default=function(e){e.registerHelper("lookup",function(t,r,n){return t&&n.lookupProperty(t,r)})};bWn.exports=Gdt.default});var vWn=H((Fdt,SWn)=>{"use strict";Fdt.__esModule=!0;function WHo(e){return e&&e.__esModule?e:{default:e}}var BMe=ZZ(),OHo=vM(),PHo=WHo(OHo);Fdt.default=function(e){e.registerHelper("with",function(t,r){if(arguments.length!=2)throw new PHo.default("#with requires exactly one argument");BMe.isFunction(t)&&(t=t.call(this));var n=r.fn;if(BMe.isEmpty(t))return r.inverse(this);var a=r.data;return r.data&&r.ids&&(a=BMe.createFrame(r.data),a.contextPath=BMe.appendContextPath(r.data.contextPath,r.ids[0])),n(t,{data:a,blockParams:BMe.blockParams([t],[a&&a.contextPath])})})};SWn.exports=Fdt.default});var efr=H(Zdt=>{"use strict";Zdt.__esModule=!0;Zdt.registerDefaultHelpers=rYo;Zdt.moveHelperToHooks=nYo;function kIe(e){return e&&e.__esModule?e:{default:e}}var MHo=gWn(),HHo=kIe(MHo),YHo=dWn(),QHo=kIe(YHo),XHo=fWn(),JHo=kIe(XHo),UHo=CWn(),KHo=kIe(UHo),jHo=yWn(),zHo=kIe(jHo),qHo=EWn(),$Ho=kIe(qHo),eYo=vWn(),tYo=kIe(eYo);function rYo(e){HHo.default(e),QHo.default(e),JHo.default(e),KHo.default(e),zHo.default(e),$Ho.default(e),tYo.default(e)}function nYo(e,t,r){e.helpers[t]&&(e.hooks[t]=e.helpers[t],r||delete e.helpers[t])}});var wWn=H((Ldt,BWn)=>{"use strict";Ldt.__esModule=!0;var iYo=ZZ();Ldt.default=function(e){e.registerDecorator("inline",function(t,r,n,a){var o=t;return r.partials||(r.partials={},o=function(l,A){var f=n.partials;n.partials=iYo.extend({},f,r.partials);var I=t(l,A);return n.partials=f,I}),r.partials[a.args[0]]=a.fn,o})};BWn.exports=Ldt.default});var TWn=H(tfr=>{"use strict";tfr.__esModule=!0;tfr.registerDefaultDecorators=cYo;function sYo(e){return e&&e.__esModule?e:{default:e}}var oYo=wWn(),aYo=sYo(oYo);function cYo(e){aYo.default(e)}});var rfr=H((Vdt,RWn)=>{"use strict";Vdt.__esModule=!0;var lYo=ZZ(),cBe={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(t){if(typeof t=="string"){var r=lYo.indexOf(cBe.methodMap,t.toLowerCase());r>=0?t=r:t=parseInt(t,10)}return t},log:function(t){if(t=cBe.lookupLevel(t),typeof console<"u"&&cBe.lookupLevel(cBe.level)<=t){var r=cBe.methodMap[t];console[r]||(r="log");for(var n=arguments.length,a=Array(n>1?n-1:0),o=1;o{"use strict";nfr.__esModule=!0;nfr.createNewLookupObject=gYo;var uYo=ZZ();function gYo(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";wMe.__esModule=!0;wMe.createProtoAccessControl=fYo;wMe.resultIsAllowed=IYo;wMe.resetLoggedProperties=mYo;function AYo(e){return e&&e.__esModule?e:{default:e}}var DWn=NWn(),dYo=rfr(),pYo=AYo(dYo),Wdt=Object.create(null);function fYo(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:DWn.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:DWn.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function IYo(e,t,r){return kWn(typeof e=="function"?t.methods:t.properties,r)}function kWn(e,t){return e.whitelist[t]!==void 0?e.whitelist[t]===!0:e.defaultValue!==void 0?e.defaultValue:(hYo(t),!1)}function hYo(e){Wdt[e]!==!0&&(Wdt[e]=!0,pYo.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+`" because it is not an "own property" of its parent. +`+(0,eVn.stringifySyml)(r)}async persistLockfile(){let t=Kf.ppath.join(this.cwd,Kf.Filename.lockfile),r="";try{r=await Kf.xfs.readFilePromise(t,"utf8")}catch{}let n=this.generateLockfile(),a=(0,Kf.normalizeLineEndings)(r,n);a!==r&&(await Kf.xfs.writeFilePromise(t,a),this.lockFileChecksum=lVn(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let t=[];for(let l of Object.values(mpr))t.push(...l);let r=(0,Ipr.pick)(this,t),n=rVn.default.serialize(r),a=I8.makeHash(n);if(this.installStateChecksum===a)return;let o=this.configuration.get("installStatePath");await Kf.xfs.mkdirPromise(Kf.ppath.dirname(o),{recursive:!0}),await Kf.xfs.writeFilePromise(o,await P5o(n)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:t=!0,restoreResolutions:r=!0,restoreBuildState:n=!0}={}){let a=this.configuration.get("installStatePath"),o;try{let l=await M5o(await Kf.xfs.readFilePromise(a));o=rVn.default.deserialize(l),this.installStateChecksum=I8.makeHash(l)}catch{r&&await this.applyLightResolution();return}t&&typeof o.linkersCustomData<"u"&&(this.linkersCustomData=o.linkersCustomData),n&&Object.assign(this,(0,Ipr.pick)(o,mpr.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,Ipr.pick)(o,mpr.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new oVn.ThrowReport}),await this.persistInstallStateFile()}async persist(){let t=(0,hpr.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>t(()=>r.persistManifest()))])}async cacheCleanup({cache:t,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let n=new Set([".gitignore"]);if(!(0,F5o.isFolderInside)(t.cwd,this.cwd)||!await Kf.xfs.existsPromise(t.cwd))return null;let a=[];for(let l of await Kf.xfs.readdirPromise(t.cwd)){if(n.has(l))continue;let A=Kf.ppath.resolve(t.cwd,l);t.markedFiles.has(A)||(t.immutable?r.reportError(zb.MessageName.IMMUTABLE_CACHE,`${ef.pretty(this.configuration,Kf.ppath.basename(A),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(Kf.xfs.lstatPromise(A).then(async f=>(await Kf.xfs.removePromise(A),f.size))))}if(a.length===0)return null;let o=await Promise.all(a);return{count:a.length,size:o.reduce((l,A)=>l+A,0)}}};SM.Project=Cpr;function H5o({project:e,allDescriptors:t,allResolutions:r,allPackages:n,accessibleLocators:a=new Set,optionalBuilds:o=new Set,peerRequirements:l=new Map,peerWarnings:A=[],peerRequirementNodes:f=new Map,volatileDescriptors:I=new Set}){let C=new Map,b=[],E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,J=new Map(e.workspaces.map(ue=>{let de=ue.anchoredLocator.locatorHash,be=n.get(de);if(typeof be>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[de,ig.copyPackage(be)]})),ae=()=>{let ue=Kf.xfs.mktempSync(),de=Kf.ppath.join(ue,"stacktrace.log"),be=String(b.length+1).length,Se=b.map((De,k)=>`${`${k+1}.`.padStart(be," ")} ${ig.stringifyLocator(De)} +`).join("");throw Kf.xfs.writeFileSync(de,Se),Kf.xfs.detachTemp(ue),new Koe.ReportError(zb.MessageName.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${Adt.npath.fromPortablePath(de)}`)},ne=ue=>{let de=r.get(ue.descriptorHash);if(typeof de>"u")throw new Error("Assertion failed: The resolution should have been registered");let be=n.get(de);if(!be)throw new Error("Assertion failed: The package could not be found");return be},ce=(ue,de,be,{top:Se,optional:De})=>{b.length>1e3&&ae(),b.push(de);let k=fe(ue,de,be,{top:Se,optional:De});return b.pop(),k},fe=(ue,de,be,{top:Se,optional:De})=>{if(De||o.delete(de.locatorHash),a.has(de.locatorHash))return;a.add(de.locatorHash);let k=n.get(de.locatorHash);if(!k)throw new Error(`Assertion failed: The package (${ig.prettyLocator(e.configuration,de)}) should have been registered`);let tt=new Set,ze=new Map,Le=[],Je=[],ft=[],lt=[];for(let Ot of Array.from(k.dependencies.values())){if(k.peerDependencies.has(Ot.identHash)&&k.locatorHash!==Se)continue;if(ig.isVirtualDescriptor(Ot))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");I.delete(Ot.descriptorHash);let Er=De;if(!Er){let Xt=k.dependenciesMeta.get(ig.stringifyIdent(Ot));if(typeof Xt<"u"){let lr=Xt.get(null);typeof lr<"u"&&lr.optional&&(Er=!0)}}let Sr=r.get(Ot.descriptorHash);if(!Sr)throw new Error(`Assertion failed: The resolution (${ig.prettyDescriptor(e.configuration,Ot)}) should have been registered`);let jt=J.get(Sr)||n.get(Sr);if(!jt)throw new Error(`Assertion failed: The package (${Sr}, resolved from ${ig.prettyDescriptor(e.configuration,Ot)}) should have been registered`);if(jt.peerDependencies.size===0){ce(Ot,jt,new Map,{top:Se,optional:Er});continue}let Bt,Nt,Fr=new Set,$t=new Map;Le.push(()=>{Bt=ig.virtualizeDescriptor(Ot,de.locatorHash),Nt=ig.virtualizePackage(jt,de.locatorHash),k.dependencies.set(Ot.identHash,Bt),r.set(Bt.descriptorHash,Nt.locatorHash),t.set(Bt.descriptorHash,Bt),n.set(Nt.locatorHash,Nt),y_.getSetWithDefault(F,Nt.locatorHash).add(Bt.descriptorHash),tt.add(Nt.locatorHash)}),Je.push(()=>{Q.set(Nt.locatorHash,$t);for(let Xt of Nt.peerDependencies.values()){let cr=y_.getFactoryWithDefault(ze,Xt.identHash,()=>{let Ar=be.get(Xt.identHash)??null,qr=k.dependencies.get(Xt.identHash);return!qr&&ig.areIdentsEqual(de,Xt)&&(ue.identHash===de.identHash?qr=ue:(qr=ig.makeDescriptor(de,ue.range),t.set(qr.descriptorHash,qr),r.set(qr.descriptorHash,de.locatorHash),I.delete(qr.descriptorHash),Ar=null)),qr||(qr=ig.makeDescriptor(Xt,"missing:")),{subject:de,ident:Xt,provided:qr,root:!Ar,requests:new Map,hash:`p${I8.makeHash(de.locatorHash,Xt.identHash).slice(0,6)}`}}).provided;if(cr.range==="missing:"&&Nt.dependencies.has(Xt.identHash)){Nt.peerDependencies.delete(Xt.identHash);continue}if($t.set(Xt.identHash,{requester:Nt,descriptor:Xt,meta:Nt.peerDependenciesMeta.get(ig.stringifyIdent(Xt)),children:new Map}),Nt.dependencies.set(Xt.identHash,cr),ig.isVirtualDescriptor(cr)){let Ar=r.get(cr.descriptorHash);y_.getSetWithDefault(B,Ar).add(Nt.locatorHash)}E.set(cr.identHash,cr),cr.range==="missing:"&&Fr.add(cr.identHash)}Nt.dependencies=new Map(y_.sortMap(Nt.dependencies,([Xt,lr])=>ig.stringifyIdent(lr)))}),ft.push(()=>{if(!n.has(Nt.locatorHash))return;let Xt=C.get(jt.locatorHash);typeof Xt=="number"&&Xt>=2&&ae();let lr=C.get(jt.locatorHash),cr=typeof lr<"u"?lr+1:1;C.set(jt.locatorHash,cr),ce(Bt,Nt,$t,{top:Se,optional:Er}),C.set(jt.locatorHash,cr-1)}),lt.push(()=>{let Xt=r.get(Bt.descriptorHash);if(typeof Xt>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let lr=Q.get(Xt);if(typeof lr>"u")throw new Error("Assertion failed: Expected the peer requests to be registered");for(let cr of ze.values()){let Ar=lr.get(cr.ident.identHash);Ar&&(cr.requests.set(Bt.descriptorHash,Ar),f.set(cr.hash,cr),cr.root||be.get(cr.ident.identHash)?.children.set(Bt.descriptorHash,Ar))}if(n.has(Nt.locatorHash))for(let cr of Fr)Nt.dependencies.delete(cr)})}for(let Ot of[...Le,...Je])Ot();for(let Ot of tt){tt.delete(Ot);let Er=n.get(Ot),Sr=I8.makeHash(ig.devirtualizeLocator(Er).locatorHash,...Array.from(Er.dependencies.values(),Fr=>{let $t=Fr.range!=="missing:"?r.get(Fr.descriptorHash):"missing:";if(typeof $t>"u")throw new Error(`Assertion failed: Expected the resolution for ${ig.prettyDescriptor(e.configuration,Fr)} to have been registered`);return $t===Se?`${$t} (top)`:$t})),jt=N.get(Sr);if(typeof jt>"u"){N.set(Sr,Er);continue}let Bt=y_.getSetWithDefault(F,jt.locatorHash);for(let Fr of F.get(Er.locatorHash)??[])r.set(Fr,jt.locatorHash),Bt.add(Fr);n.delete(Er.locatorHash),a.delete(Er.locatorHash),tt.delete(Er.locatorHash);let Nt=B.get(Er.locatorHash);if(Nt!==void 0){let Fr=y_.getSetWithDefault(B,jt.locatorHash);for(let $t of Nt)Fr.add($t),tt.add($t)}}for(let Ot of[...ft,...lt])Ot()};for(let ue of e.workspaces){let de=ue.anchoredLocator;I.delete(ue.anchoredDescriptor.descriptorHash),ce(ue.anchoredDescriptor,de,new Map,{top:de.locatorHash,optional:!1})}for(let ue of f.values()){if(!ue.root)continue;let de=n.get(ue.subject.locatorHash);if(typeof de>"u")continue;for(let Se of ue.requests.values()){let De=`p${I8.makeHash(ue.subject.locatorHash,ig.stringifyIdent(ue.ident),Se.requester.locatorHash).slice(0,6)}`;l.set(De,{subject:ue.subject.locatorHash,requested:ue.ident,rootRequester:Se.requester.locatorHash,allRequesters:Array.from(ig.allPeerRequests(Se),k=>k.requester.locatorHash)})}let be=[...ig.allPeerRequests(ue)];if(ue.provided.range!=="missing:"){let Se=ne(ue.provided),De=Se.version??"0.0.0",k=ze=>{if(ze.startsWith(ddt.WorkspaceResolver.protocol)){if(!e.tryWorkspaceByLocator(Se))return null;ze=ze.slice(ddt.WorkspaceResolver.protocol.length),(ze==="^"||ze==="~")&&(ze="*")}return ze},tt=!0;for(let ze of be){let Le=k(ze.descriptor.range);if(Le===null){tt=!1;continue}if(!pdt.satisfiesWithPrereleases(De,Le)){tt=!1;let Je=`p${I8.makeHash(ue.subject.locatorHash,ig.stringifyIdent(ue.ident),ze.requester.locatorHash).slice(0,6)}`;A.push({type:h8.NotCompatible,subject:de,requested:ue.ident,requester:ze.requester,version:De,hash:Je,requirementCount:be.length})}}if(!tt){let ze=be.map(Le=>k(Le.descriptor.range));A.push({type:h8.NodeNotCompatible,node:ue,range:ze.includes(null)?null:pdt.simplifyRanges(ze),hash:ue.hash})}}else{let Se=!0;for(let De of be)if(!De.meta?.optional){Se=!1;let k=`p${I8.makeHash(ue.subject.locatorHash,ig.stringifyIdent(ue.ident),De.requester.locatorHash).slice(0,6)}`;A.push({type:h8.NotProvided,subject:de,requested:ue.ident,requester:De.requester,hash:k})}Se||A.push({type:h8.NodeNotProvided,node:ue,hash:ue.hash})}}}function*Y5o(e){let t=new Map;if("children"in e)t.set(e,e);else for(let r of e.requests.values())t.set(r,r);for(let[r,n]of t){yield{request:r,root:n};for(let a of r.children.values())t.has(a)||t.set(a,n)}}function Q5o(e,t){let r=[],n=[],a=!1;for(let o of e.peerWarnings)if(!(o.type===h8.NotCompatible||o.type===h8.NotProvided)){if(!e.tryWorkspaceByLocator(o.node.subject)){a=!0;continue}if(o.type===h8.NodeNotCompatible){let l=e.storedResolutions.get(o.node.provided.descriptorHash);if(typeof l>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let A=e.storedPackages.get(l);if(typeof A>"u")throw new Error("Assertion failed: Expected the package to be registered");let f=y_.mapAndFind(Y5o(o.node),({request:b,root:E})=>pdt.satisfiesWithPrereleases(A.version??"0.0.0",b.descriptor.range)?y_.mapAndFind.skip:b===E?ig.prettyIdent(e.configuration,b.requester):`${ig.prettyIdent(e.configuration,b.requester)} (via ${ig.prettyIdent(e.configuration,E.requester)})`),I=[...ig.allPeerRequests(o.node)].length>1?"and other dependencies request":"requests",C=o.range?ig.prettyRange(e.configuration,o.range):ef.pretty(e.configuration,"but they have non-overlapping ranges!","redBright");r.push(`${ig.prettyIdent(e.configuration,o.node.ident)} is listed by your project with version ${ig.prettyReference(e.configuration,A.version??"0.0.0")} (${ef.pretty(e.configuration,o.hash,ef.Type.CODE)}), which doesn't satisfy what ${f} ${I} (${C}).`)}if(o.type===h8.NodeNotProvided){let l=o.node.requests.size>1?" and other dependencies":"";n.push(`${ig.prettyLocator(e.configuration,o.node.subject)} doesn't provide ${ig.prettyIdent(e.configuration,o.node.ident)} (${ef.pretty(e.configuration,o.hash,ef.Type.CODE)}), requested by ${ig.prettyIdent(e.configuration,o.node.requests.values().next().value.requester)}${l}.`)}}t.startSectionSync({reportFooter:()=>{t.reportWarning(zb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by your project; run ${ef.pretty(e.configuration,"yarn explain peer-requirements ",ef.Type.CODE)} for details, where ${ef.pretty(e.configuration,"",ef.Type.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let o of y_.sortMap(r,l=>ef.stripAnsi(l)))t.reportWarning(zb.MessageName.INCOMPATIBLE_PEER_DEPENDENCY,o);for(let o of y_.sortMap(n,l=>ef.stripAnsi(l)))t.reportWarning(zb.MessageName.MISSING_PEER_DEPENDENCY,o)}),a&&t.reportWarning(zb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by dependencies; run ${ef.pretty(e.configuration,"yarn explain peer-requirements",ef.Type.CODE)} for details.`)}});var fVn=H(NIe=>{"use strict";Object.defineProperty(NIe,"__esModule",{value:!0});NIe.TelemetryManager=NIe.MetricName=void 0;NIe.derive=pVn;var Idt=(Wa(),vi(Va)),m8=No(),dVn=X5e(),X5o=Idt.__importStar(xoe()),J5o=Idt.__importStar(AAt()),fdt=Idt.__importStar(MO()),U5o=Idt.__importStar(m$()),C8;(function(e){e.VERSION="version",e.COMMAND_NAME="commandName",e.PLUGIN_NAME="pluginName",e.INSTALL_COUNT="installCount",e.PROJECT_COUNT="projectCount",e.WORKSPACE_COUNT="workspaceCount",e.DEPENDENCY_COUNT="dependencyCount",e.EXTENSION="packageExtension"})(C8||(NIe.MetricName=C8={}));function pVn(e){let n=Math.floor(e.timeNow/864e5),a=e.updateInterval*864e5,o=e.state.lastUpdate??e.timeNow+a+Math.floor(a*e.randomInitialInterval),l=o+a,A=e.state.lastTips??n*864e5,f=A+864e5+8*36e5-e.timeZone,I=l<=e.timeNow,C=f<=e.timeNow,b=null;return(I||C||!e.state.lastUpdate||!e.state.lastTips)&&(b={},b.lastUpdate=I?e.timeNow:o,b.lastTips=A,b.blocks=I?{}:e.state.blocks,b.displayedTips=e.state.displayedTips),{nextState:b,triggerUpdate:I,triggerTips:C,nextTips:C?n*864e5:A}}var _pr=class{constructor(t,r){this.values=new Map,this.hits=new Map,this.enumerators=new Map,this.nextTips=0,this.displayedTips=[],this.shouldCommitTips=!1,this.configuration=t;let n=this.getRegistryPath();this.isNew=!m8.xfs.existsSync(n),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(t){let r=new Set(this.displayedTips),n=A=>A&&dVn.YarnVersion?U5o.satisfiesWithPrereleases(dVn.YarnVersion,A):!1,a=t.map((A,f)=>f).filter(A=>t[A]&&n(t[A]?.selector));if(a.length===0)return null;let o=a.filter(A=>!r.has(A));if(o.length===0){let A=Math.floor(a.length*.2);this.displayedTips=A>0?this.displayedTips.slice(-A):[],o=a.filter(f=>!r.has(f))}let l=o[Math.floor(Math.random()*o.length)];return this.displayedTips.push(l),this.commitTips(),t[l]}reportVersion(t){this.reportValue(C8.VERSION,t.replace(/-git\..*/,"-git"))}reportCommandName(t){this.reportValue(C8.COMMAND_NAME,t||"")}reportPluginName(t){this.reportValue(C8.PLUGIN_NAME,t)}reportProject(t){this.reportEnumerator(C8.PROJECT_COUNT,t)}reportInstall(t){this.reportHit(C8.INSTALL_COUNT,t)}reportPackageExtension(t){this.reportValue(C8.EXTENSION,t)}reportWorkspaceCount(t){this.reportValue(C8.WORKSPACE_COUNT,String(t))}reportDependencyCount(t){this.reportValue(C8.DEPENDENCY_COUNT,String(t))}reportValue(t,r){fdt.getSetWithDefault(this.values,t).add(r)}reportEnumerator(t,r){fdt.getSetWithDefault(this.enumerators,t).add(X5o.makeHash(r))}reportHit(t,r="*"){let n=fdt.getMapWithDefault(this.hits,t),a=fdt.getFactoryWithDefault(n,r,()=>0);n.set(r,a+1)}getRegistryPath(){let t=this.configuration.get("globalFolder");return m8.ppath.join(t,"telemetry.json")}sendReport(t){let r=this.getRegistryPath(),n;try{n=m8.xfs.readJsonSync(r)}catch{n={}}let{nextState:a,triggerUpdate:o,triggerTips:l,nextTips:A}=pVn({state:n,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=A,this.displayedTips=n.displayedTips??[],a!==null)try{m8.xfs.mkdirSync(m8.ppath.dirname(r),{recursive:!0}),m8.xfs.writeJsonSync(r,a)}catch{return!1}if(l&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),o){let f=n.blocks??{};if(Object.keys(f).length===0){let I=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${t}?ddsource=yarn`,C=b=>J5o.post(I,b,{configuration:this.configuration}).catch(()=>{});for(let[b,E]of Object.entries(n.blocks??{})){if(Object.keys(E).length===0)continue;let N=E;N.userId=b,N.reportType="primary";for(let Q of Object.keys(N.enumerators??{}))N.enumerators[Q]=N.enumerators[Q].length;C(N);let B=new Map,F=20;for(let[Q,J]of Object.entries(N.values))J.length>0&&B.set(Q,J.slice(0,F));for(;B.size>0;){let Q={};Q.userId=b,Q.reportType="secondary",Q.metrics={};for(let[J,ae]of B)Q.metrics[J]=ae.shift(),ae.length===0&&B.delete(J);C(Q)}}}}return!0}applyChanges(){let t=this.getRegistryPath(),r;try{r=m8.xfs.readJsonSync(t)}catch{r={}}let n=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},o=a[n]=a[n]??{};for(let l of this.hits.keys()){let A=o.hits=o.hits??{},f=A[l]=A[l]??{};for(let[I,C]of this.hits.get(l))f[I]=(f[I]??0)+C}for(let l of["values","enumerators"])for(let A of this[l].keys()){let f=o[l]=o[l]??{};f[A]=[...new Set([...f[A]??[],...this[l].get(A)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),m8.xfs.mkdirSync(m8.ppath.dirname(t),{recursive:!0}),m8.xfs.writeJsonSync(t,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};NIe.TelemetryManager=_pr});var wn=H(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});Nl.treeUtils=Nl.tgzUtils=Nl.structUtils=Nl.semverUtils=Nl.scriptUtils=Nl.nodeUtils=Nl.miscUtils=Nl.formatUtils=Nl.folderUtils=Nl.execUtils=Nl.httpUtils=Nl.hashUtils=Nl.PackageExtensionStatus=Nl.PackageExtensionType=Nl.LinkType=Nl.YarnVersion=Nl.Workspace=Nl.WorkspaceResolver=Nl.WorkspaceFetcher=Nl.VirtualFetcher=Nl.ThrowReport=Nl.TelemetryManager=Nl.reportOptionDeprecations=Nl.StreamReport=Nl.Report=Nl.ReportError=Nl.InstallMode=Nl.Project=Nl.PeerWarningType=Nl.LOCKFILE_VERSION=Nl.MultiFetcher=Nl.stringifyMessageName=Nl.parseMessageName=Nl.MessageName=Nl.Manifest=Nl.LockfileResolver=Nl.LightReport=Nl.LegacyMigrationResolver=Nl.BuildDirectiveType=Nl.WindowsLinkType=Nl.DurationUnit=Nl.SettingsType=Nl.FormatType=Nl.Configuration=Nl.TAG_REGEXP=Nl.LEGACY_PLUGINS=Nl.DEFAULT_RC_FILENAME=Nl.Cache=Nl.CACHE_CHECKPOINT=Nl.CACHE_VERSION=void 0;var vM=(Wa(),vi(Va)),K5o=vM.__importStar(pAt());Nl.execUtils=K5o;var j5o=vM.__importStar(xgt());Nl.folderUtils=j5o;var z5o=vM.__importStar(gM());Nl.formatUtils=z5o;var q5o=vM.__importStar(xoe());Nl.hashUtils=q5o;var $5o=vM.__importStar(AAt());Nl.httpUtils=$5o;var eMo=vM.__importStar(MO());Nl.miscUtils=eMo;var tMo=vM.__importStar(dAt());Nl.nodeUtils=tMo;var rMo=vM.__importStar(mdr());Nl.scriptUtils=rMo;var nMo=vM.__importStar(m$());Nl.semverUtils=nMo;var iMo=vM.__importStar(IG());Nl.structUtils=iMo;var sMo=vM.__importStar(KLn());Nl.tgzUtils=sMo;var oMo=vM.__importStar(t9n());Nl.treeUtils=oMo;var ypr=Zdr();Object.defineProperty(Nl,"CACHE_VERSION",{enumerable:!0,get:function(){return ypr.CACHE_VERSION}});Object.defineProperty(Nl,"CACHE_CHECKPOINT",{enumerable:!0,get:function(){return ypr.CACHE_CHECKPOINT}});Object.defineProperty(Nl,"Cache",{enumerable:!0,get:function(){return ypr.Cache}});var bpr=V5e();Object.defineProperty(Nl,"DEFAULT_RC_FILENAME",{enumerable:!0,get:function(){return bpr.DEFAULT_RC_FILENAME}});Object.defineProperty(Nl,"LEGACY_PLUGINS",{enumerable:!0,get:function(){return bpr.LEGACY_PLUGINS}});Object.defineProperty(Nl,"TAG_REGEXP",{enumerable:!0,get:function(){return bpr.TAG_REGEXP}});var hMe=V5e();Object.defineProperty(Nl,"Configuration",{enumerable:!0,get:function(){return hMe.Configuration}});Object.defineProperty(Nl,"FormatType",{enumerable:!0,get:function(){return hMe.FormatType}});Object.defineProperty(Nl,"SettingsType",{enumerable:!0,get:function(){return hMe.SettingsType}});Object.defineProperty(Nl,"DurationUnit",{enumerable:!0,get:function(){return hMe.DurationUnit}});Object.defineProperty(Nl,"WindowsLinkType",{enumerable:!0,get:function(){return hMe.WindowsLinkType}});var aMo=Ldr();Object.defineProperty(Nl,"BuildDirectiveType",{enumerable:!0,get:function(){return aMo.BuildDirectiveType}});var cMo=Wdr();Object.defineProperty(Nl,"LegacyMigrationResolver",{enumerable:!0,get:function(){return cMo.LegacyMigrationResolver}});var lMo=u9n();Object.defineProperty(Nl,"LightReport",{enumerable:!0,get:function(){return lMo.LightReport}});var uMo=Mdr();Object.defineProperty(Nl,"LockfileResolver",{enumerable:!0,get:function(){return uMo.LockfileResolver}});var gMo=kve();Object.defineProperty(Nl,"Manifest",{enumerable:!0,get:function(){return gMo.Manifest}});var Epr=K9();Object.defineProperty(Nl,"MessageName",{enumerable:!0,get:function(){return Epr.MessageName}});Object.defineProperty(Nl,"parseMessageName",{enumerable:!0,get:function(){return Epr.parseMessageName}});Object.defineProperty(Nl,"stringifyMessageName",{enumerable:!0,get:function(){return Epr.stringifyMessageName}});var AMo=Uur();Object.defineProperty(Nl,"MultiFetcher",{enumerable:!0,get:function(){return AMo.MultiFetcher}});var hdt=AVn();Object.defineProperty(Nl,"LOCKFILE_VERSION",{enumerable:!0,get:function(){return hdt.LOCKFILE_VERSION}});Object.defineProperty(Nl,"PeerWarningType",{enumerable:!0,get:function(){return hdt.PeerWarningType}});Object.defineProperty(Nl,"Project",{enumerable:!0,get:function(){return hdt.Project}});Object.defineProperty(Nl,"InstallMode",{enumerable:!0,get:function(){return hdt.InstallMode}});var IVn=pM();Object.defineProperty(Nl,"ReportError",{enumerable:!0,get:function(){return IVn.ReportError}});Object.defineProperty(Nl,"Report",{enumerable:!0,get:function(){return IVn.Report}});var hVn=J5e();Object.defineProperty(Nl,"StreamReport",{enumerable:!0,get:function(){return hVn.StreamReport}});Object.defineProperty(Nl,"reportOptionDeprecations",{enumerable:!0,get:function(){return hVn.reportOptionDeprecations}});var dMo=fVn();Object.defineProperty(Nl,"TelemetryManager",{enumerable:!0,get:function(){return dMo.TelemetryManager}});var pMo=Apr();Object.defineProperty(Nl,"ThrowReport",{enumerable:!0,get:function(){return pMo.ThrowReport}});var fMo=egr();Object.defineProperty(Nl,"VirtualFetcher",{enumerable:!0,get:function(){return fMo.VirtualFetcher}});var IMo=rgr();Object.defineProperty(Nl,"WorkspaceFetcher",{enumerable:!0,get:function(){return IMo.WorkspaceFetcher}});var hMo=dIe();Object.defineProperty(Nl,"WorkspaceResolver",{enumerable:!0,get:function(){return hMo.WorkspaceResolver}});var mMo=ppr();Object.defineProperty(Nl,"Workspace",{enumerable:!0,get:function(){return mMo.Workspace}});var CMo=X5e();Object.defineProperty(Nl,"YarnVersion",{enumerable:!0,get:function(){return CMo.YarnVersion}});var Spr=lIe();Object.defineProperty(Nl,"LinkType",{enumerable:!0,get:function(){return Spr.LinkType}});Object.defineProperty(Nl,"PackageExtensionType",{enumerable:!0,get:function(){return Spr.PackageExtensionType}});Object.defineProperty(Nl,"PackageExtensionStatus",{enumerable:!0,get:function(){return Spr.PackageExtensionStatus}})});var Bpr=H(mdt=>{"use strict";Object.defineProperty(mdt,"__esModule",{value:!0});mdt.WorkspaceRequiredError=void 0;var _Mo=wn(),mVn=No(),yMo=(vl(),vi(ng)),vpr=class extends yMo.UsageError{constructor(t,r){let n=mVn.ppath.relative(t,r),a=mVn.ppath.join(t,_Mo.Manifest.fileName);super(`This command can only be run from within a workspace of your project (${n} isn't a workspace of ${a}).`)}};mdt.WorkspaceRequiredError=vpr});var wpr=H(Cdt=>{"use strict";Object.defineProperty(Cdt,"__esModule",{value:!0});Cdt.getDynamicLibs=void 0;var T$=(Wa(),vi(Va)),bMo=T$.__importStar(sl()),EMo=T$.__importStar(wn()),SMo=T$.__importStar(No()),vMo=T$.__importStar(g8()),BMo=T$.__importStar(LO()),wMo=T$.__importStar(M5e()),TMo=T$.__importStar((vl(),vi(ng))),RMo=T$.__importStar(zC()),NMo=T$.__importStar((BZ(),vi(vZ))),DMo=()=>new Map([["@yarnpkg/cli",bMo],["@yarnpkg/core",EMo],["@yarnpkg/fslib",SMo],["@yarnpkg/libzip",vMo],["@yarnpkg/parsers",BMo],["@yarnpkg/shell",wMo],["clipanion",TMo],["semver",RMo],["typanion",NMo]]);Cdt.getDynamicLibs=DMo});var Tpr=H((u7l,kMo)=>{kMo.exports={name:"@yarnpkg/cli",version:"4.14.1",license:"BSD-2-Clause",main:"./lib/index.js",exports:{".":"./lib/index.js","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"^4.7.0","@yarnpkg/fslib":"^3.1.5","@yarnpkg/libzip":"^3.2.2","@yarnpkg/parsers":"^3.0.3","@yarnpkg/plugin-catalog":"^1.0.2","@yarnpkg/plugin-compat":"^4.0.12","@yarnpkg/plugin-constraints":"^4.0.5","@yarnpkg/plugin-dlx":"^4.0.2","@yarnpkg/plugin-essentials":"^4.5.0","@yarnpkg/plugin-exec":"^3.1.0","@yarnpkg/plugin-file":"^3.0.2","@yarnpkg/plugin-git":"^3.2.0","@yarnpkg/plugin-github":"^3.0.2","@yarnpkg/plugin-http":"^3.0.3","@yarnpkg/plugin-init":"^4.1.2","@yarnpkg/plugin-interactive-tools":"^4.1.0","@yarnpkg/plugin-jsr":"^1.1.1","@yarnpkg/plugin-link":"^3.0.2","@yarnpkg/plugin-nm":"^4.0.8","@yarnpkg/plugin-npm":"^3.5.0","@yarnpkg/plugin-npm-cli":"^4.4.1","@yarnpkg/plugin-pack":"^4.0.4","@yarnpkg/plugin-patch":"^4.0.3","@yarnpkg/plugin-pnp":"^4.1.5","@yarnpkg/plugin-pnpm":"^2.1.2","@yarnpkg/plugin-stage":"^4.0.2","@yarnpkg/plugin-typescript":"^4.1.3","@yarnpkg/plugin-version":"^4.2.0","@yarnpkg/plugin-workspace-tools":"^4.1.7","@yarnpkg/shell":"^4.1.3","ci-info":"^4.0.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"^4.2.3","@yarnpkg/monorepo":"^0.0.0","@yarnpkg/pnpify":"^4.1.6"},peerDependencies:{"@yarnpkg/core":"^4.7.0"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"git+https://github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var Npr=H(Rpr=>{"use strict";Object.defineProperty(Rpr,"__esModule",{value:!0});Rpr.getPluginConfiguration=ZMo;var xMo=(Wa(),vi(Va)),GMo=xMo.__importDefault(Tpr()),FMo=wpr();function ZMo(){let e=new Set;for(let r of GMo.default["@yarnpkg/builder"].bundles.standard)e.add(r);let t=(0,FMo.getDynamicLibs)();for(let r of e)t.set(r,Et(r).default);return{plugins:e,modules:t}}});var CVn=H(Dpr=>{"use strict";Object.defineProperty(Dpr,"__esModule",{value:!0});Dpr.openWorkspace=WMo;var LMo=wn(),VMo=Bpr();async function WMo(e,t){let{project:r,workspace:n}=await LMo.Project.find(e,t);if(!n)throw new VMo.WorkspaceRequiredError(r.cwd,t);return n}});var kpr=H(_dt=>{"use strict";Object.defineProperty(_dt,"__esModule",{value:!0});_dt.pluginCommands=void 0;_dt.pluginCommands=new Map([])});var EVn=H(ydt=>{"use strict";Object.defineProperty(ydt,"__esModule",{value:!0});ydt.getCli=KMo;ydt.runExit=jMo;var R$=wn(),TX=No(),OMo=Et("child_process"),PMo=Ufe(),sBe=(vl(),vi(ng)),MMo=kpr(),HMo=Npr();function _Vn({cwd:e,pluginConfiguration:t}){let r=new sBe.Cli({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:R$.YarnVersion??""});return Object.assign(r,{defaultContext:{...sBe.Cli.defaultContext,cwd:e,plugins:t,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function YMo(e){if(R$.miscUtils.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,n=">=18.12.0";if(R$.semverUtils.satisfiesWithPrereleases(r,n))return!0;let a=new sBe.UsageError(`This tool requires a Node version compatible with ${n} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return sBe.Cli.defaultContext.stdout.write(e.error(a)),!1}async function yVn({selfPath:e,pluginConfiguration:t}){return await R$.Configuration.find(TX.npath.toPortablePath(process.cwd()),t,{strict:!1,usePathCheck:e})}function QMo(e,t,{yarnPath:r}){if(!TX.xfs.existsSync(r))return e.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let n={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,OMo.execFileSync)(process.execPath,[TX.npath.fromPortablePath(r),...t],n)}catch(a){return a.status??1}return 0}function XMo(e,t){let r=null,n=t;return t.length>=2&&t[0]==="--cwd"?(r=TX.npath.toPortablePath(t[1]),n=t.slice(2)):t.length>=1&&t[0].startsWith("--cwd=")?(r=TX.npath.toPortablePath(t[0].slice(6)),n=t.slice(1)):t[0]==="add"&&t[t.length-2]==="--cwd"&&(r=TX.npath.toPortablePath(t[t.length-1]),n=t.slice(0,t.length-2)),e.defaultContext.cwd=r!==null?TX.ppath.resolve(r):TX.ppath.cwd(),n}function JMo(e,{configuration:t}){if(!t.get("enableTelemetry")||PMo.isCI||!process.stdout.isTTY)return;R$.Configuration.telemetry=new R$.TelemetryManager(t,"puba9cdc10ec5790a2cf4969dd413a47270");let n=/^@yarnpkg\/plugin-(.*)$/;for(let a of t.plugins.keys())MMo.pluginCommands.has(a.match(n)?.[1]??"")&&R$.Configuration.telemetry?.reportPluginName(a);e.binaryVersion&&R$.Configuration.telemetry.reportVersion(e.binaryVersion)}function bVn(e,{configuration:t}){for(let r of t.plugins.values())for(let n of r.commands||[])e.register(n)}async function UMo(e,t,{selfPath:r,pluginConfiguration:n}){if(!YMo(e))return 1;let a=await yVn({selfPath:r,pluginConfiguration:n}),o=a.get("yarnPath"),l=a.get("ignorePath");if(o&&!l)return QMo(e,t,{yarnPath:o});delete process.env.YARN_IGNORE_PATH;let A=XMo(e,t);JMo(e,{configuration:a}),bVn(e,{configuration:a});let f=e.process(A,e.defaultContext);return f.help||R$.Configuration.telemetry?.reportCommandName(f.path.join(" ")),await e.run(f,e.defaultContext)}async function KMo({cwd:e=TX.ppath.cwd(),pluginConfiguration:t=(0,HMo.getPluginConfiguration)()}={}){let r=_Vn({cwd:e,pluginConfiguration:t}),n=await yVn({pluginConfiguration:t,selfPath:null});return bVn(r,{configuration:n}),r}async function jMo(e,{cwd:t=TX.ppath.cwd(),selfPath:r,pluginConfiguration:n}){let a=_Vn({cwd:t,pluginConfiguration:n});function o(){sBe.Cli.defaultContext.stdout.write(`ERROR: Yarn is terminating due to an unexpected empty event loop. +Please report this issue at https://github.com/yarnpkg/berry/issues.`)}process.once("beforeExit",o);try{process.exitCode=42,process.exitCode=await UMo(a,e,{selfPath:r,pluginConfiguration:n})}catch(l){sBe.Cli.defaultContext.stdout.write(a.error(l)),process.exitCode=1}finally{process.off("beforeExit",o),await TX.xfs.rmtempPromise()}}});var sl=H(rD=>{"use strict";Object.defineProperty(rD,"__esModule",{value:!0});rD.pluginCommands=rD.runExit=rD.getCli=rD.openWorkspace=rD.getPluginConfiguration=rD.getDynamicLibs=rD.WorkspaceRequiredError=rD.BaseCommand=void 0;var zMo=wbn();Object.defineProperty(rD,"BaseCommand",{enumerable:!0,get:function(){return zMo.BaseCommand}});var qMo=Bpr();Object.defineProperty(rD,"WorkspaceRequiredError",{enumerable:!0,get:function(){return qMo.WorkspaceRequiredError}});var $Mo=wpr();Object.defineProperty(rD,"getDynamicLibs",{enumerable:!0,get:function(){return $Mo.getDynamicLibs}});var eHo=Npr();Object.defineProperty(rD,"getPluginConfiguration",{enumerable:!0,get:function(){return eHo.getPluginConfiguration}});var tHo=CVn();Object.defineProperty(rD,"openWorkspace",{enumerable:!0,get:function(){return tHo.openWorkspace}});var SVn=EVn();Object.defineProperty(rD,"getCli",{enumerable:!0,get:function(){return SVn.getCli}});Object.defineProperty(rD,"runExit",{enumerable:!0,get:function(){return SVn.runExit}});var rHo=kpr();Object.defineProperty(rD,"pluginCommands",{enumerable:!0,get:function(){return rHo.pluginCommands}})});var WVn=H((N7l,VVn)=>{"use strict";var FVn=Et("stream").PassThrough,ZVn=Et("stream").Writable,LVn=Et("util");LVn.inherits(Lpr,FVn);LVn.inherits(Vpr,ZVn);function Lpr(e,t){FVn.call(this,t),this.factory=e,this.opts=t}Lpr.prototype._flush=function(e){var t=this.factory();t.pipe(new Vpr(this,this.opts)).on("finish",e),t.resume()};function Vpr(e,t){ZVn.call(this,t),this.target=e}Vpr.prototype._write=function(e,t,r){this.target.push(e),r()};function Zpr(e,t){t=t||{};var r;return typeof e=="function"?r=e:(e.pause(),r=function(){return e}),new Lpr(r,t)}Zpr.obj=function(e,t){return t=t||{},t.objectMode=!0,Zpr(e,t)};VVn.exports=Zpr});var MVn=bc(()=>{});function Opr(e,t){return e.map(r=>r.trim()).filter(Boolean).join(t)}function cHo(e,t){if(!e)return HVn;let r=Opr(e,"|");return t?t(r):new RegExp(`^[\\s|*]*(${r})[:\\s]+(.*)`,"i")}function lHo(e,t){if(!e)return HVn;let r=t?"g":"gi";return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${Opr(e,"|")})([\\w-]*\\d+)`,r)}function uHo(e){if(!e)return/()(.+)/gi;let t=Opr(e,"|");return new RegExp(`(${t})(?:\\s+(.*?))(?=(?:${t})|$)`,"gi")}function YVn(e={}){let t=cHo(e.noteKeywords,e.notesPattern),r=lHo(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=uHo(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}var HVn,QVn=bc(()=>{HVn=/(?!.*)/});function _Me(e){let t=e.match(/[^\r\n]/);if(typeof t?.index!="number")return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` +`;)n--;return e.substring(r,n+1)}function kIe(e,t){return e?`${e} +${t||""}`:t||""}function XVn(e){return e?t=>!t.startsWith(e):()=>!0}function JVn(e){let t=e.indexOf(gHo);return t===-1?e:e.slice(0,t)}function UVn(e){return!e.match(/^\s*gpg:/)}var gHo,KVn=bc(()=>{gHo="# ------------------------ >8 ------------------------"});var jVn,zVn=bc(()=>{jVn={noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],issuePrefixes:["#"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],fieldPattern:/^-(.*?)-$/}});function Ppr(e={}){return{merge:null,revert:null,header:null,body:null,footer:null,notes:[],mentions:[],references:[],...e}}var yMe,Mpr=bc(()=>{QVn();KVn();zVn();yMe=class{options;regexes;lines=[];lineIndex=0;commit=Ppr();constructor(t={}){this.options={...jVn,...t},this.regexes=YVn(this.options)}currentLine(){return this.lines[this.lineIndex]}nextLine(){return this.lines[this.lineIndex++]}isLineAvailable(){return this.lineIndex{t[l]=o[A+1]||null}),!0):!1}parseHeader(t){t&&this.skipEmptyLines();let{commit:r,options:n}=this,a=n.headerCorrespondence||[],o=this.nextLine(),l=null;o&&(n.breakingHeaderPattern&&(l=o.match(n.breakingHeaderPattern)),!l&&n.headerPattern&&(l=o.match(n.headerPattern))),o&&(r.header=o),l&&a.forEach((A,f)=>{r[A]=l[f+1]||null})}parseMeta(){let{options:t,commit:r}=this;if(!t.fieldPattern||!this.isLineAvailable())return!1;let n,a=null,o=!1;for(;this.isLineAvailable();){if(n=this.currentLine().match(t.fieldPattern),n){a=n[1]||null,this.nextLine();continue}if(a)o=!0,r[a]=kIe(r[a],this.currentLine()),this.nextLine();else break}return o}parseNotes(){let{regexes:t,commit:r}=this;if(!this.isLineAvailable())return!1;let n=this.currentLine().match(t.notes),a=[];if(n){let o={title:n[1],text:n[2]};for(r.notes.push(o),r.footer=kIe(r.footer,this.currentLine()),this.nextLine();this.isLineAvailable();){if(this.parseMeta()||this.parseNotes())return!0;if(a=this.parseReferences(this.currentLine()),a.length?r.references.push(...a):o.text=kIe(o.text,this.currentLine()),r.footer=kIe(r.footer,this.currentLine()),this.nextLine(),a.length)break}return!0}return!1}parseBodyAndFooter(t){let{commit:r}=this;if(!this.isLineAvailable())return t;let n=this.parseReferences(this.currentLine()),a=!n.length&&t;return a?r.body=kIe(r.body,this.currentLine()):(r.references.push(...n),r.footer=kIe(r.footer,this.currentLine())),this.nextLine(),a}parseBreakingHeader(){let{commit:t,options:r}=this;if(!r.breakingHeaderPattern||t.notes.length||!t.header)return;let n=t.header.match(r.breakingHeaderPattern);n&&t.notes.push({title:"BREAKING CHANGE",text:n[3]})}parseMentions(t){let{commit:r,regexes:n}=this,a;for(;a=n.mentions.exec(t),!!a;)r.mentions.push(a[1])}parseRevert(t){let{commit:r,options:n}=this,a=n.revertCorrespondence||[],o=n.revertPattern?t.match(n.revertPattern):null;o&&(r.revert=a.reduce((l,A,f)=>(l[A]=o[f+1]||null,l),{}))}cleanupCommit(){let{commit:t}=this;t.body&&(t.body=_Me(t.body)),t.footer&&(t.footer=_Me(t.footer)),t.notes.forEach(r=>{r.text=_Me(r.text)})}parse(t){if(!t.trim())throw new TypeError("Expected a raw commit");let r=XVn(this.options.commentChar),n=_Me(t).split(/\r?\n/),a=JVn(n).filter(f=>r(f)&&UVn(f)),o=Ppr();this.lines=a,this.lineIndex=0,this.commit=o;let l=this.parseMerge();this.parseHeader(l),o.header&&(o.references=this.parseReferences(o.header));let A=!0;for(;this.isLineAvailable();)this.parseMeta(),this.parseNotes()&&(A=!1),this.parseBodyAndFooter(A)||(A=!1);return this.parseBreakingHeader(),this.parseMentions(t),this.parseRevert(t),this.cleanupCommit(),o}}});import{Transform as AHo}from"stream";function qVn(e={}){let t=e.warn,r=t===!0?n=>{throw n}:t?n=>t(n.toString()):()=>{};return async function*(a){let o=new yMe(e),l;for await(l of a)try{yield o.parse(l.toString())}catch(A){r(A)}}}function Hpr(e={}){return AHo.from(qVn(e))}var $Vn=bc(()=>{Mpr()});var eWn={};Uf(eWn,{CommitParser:()=>yMe,createCommitObject:()=>Ppr,parseCommits:()=>qVn,parseCommitsStream:()=>Hpr});var Ypr=bc(()=>{MVn();Mpr();$Vn()});function dHo(e,t){let r,n;for(let a in t)if(r=e[a],n=t[a],typeof r=="string"&&(r=r.trim()),typeof n=="string"&&(n=n.trim()),r!==n)return!1;return!0}function tWn(e,t){if(!t.size)return null;let r=e.raw||e;for(let n of t)if(n.revert&&dHo(r,n.revert))return n;return null}var rWn=bc(()=>{});var aBe,Qpr=bc(()=>{rWn();aBe=class{hold=new Set;holdRevertsCount=0;*process(t){let{hold:r}=this,n=tWn(t,r);if(n){r.delete(n),this.holdRevertsCount--;return}if(t.revert){r.add(t),this.holdRevertsCount++;return}this.holdRevertsCount>0?r.add(t):(r.size&&(yield*r,r.clear()),yield t)}*flush(){let{hold:t}=this;t.size&&(yield*t,t.clear())}}});import{Transform as pHo}from"stream";async function*nWn(e){let t=new aBe;for await(let r of e)yield*t.process(r);yield*t.flush()}function*Xpr(e){let t=new aBe;for(let r of e)yield*t.process(r);yield*t.flush()}function fHo(){return pHo.from(nWn)}var iWn=bc(()=>{Qpr()});var sWn={};Uf(sWn,{RevertedCommitsFilter:()=>aBe,filterRevertedCommits:()=>nWn,filterRevertedCommitsStream:()=>fHo,filterRevertedCommitsSync:()=>Xpr});var Jpr=bc(()=>{Qpr();iWn()});var LZ=H(XO=>{"use strict";XO.__esModule=!0;XO.extend=dWn;XO.indexOf=vHo;XO.escapeExpression=BHo;XO.isEmpty=wHo;XO.createFrame=THo;XO.blockParams=RHo;XO.appendContextPath=NHo;var yHo={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},bHo=/[&<>"'`=]/g,EHo=/[&<>"'`=]/;function SHo(e){return yHo[e]}function dWn(e){for(var t=1;t{"use strict";Bdt.__esModule=!0;var zpr=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function qpr(e,t){var r=t&&t.loc,n=void 0,a=void 0,o=void 0,l=void 0;r&&(n=r.start.line,a=r.end.line,o=r.start.column,l=r.end.column,e+=" - "+n+":"+o);for(var A=Error.prototype.constructor.call(this,e),f=0;f{"use strict";wdt.__esModule=!0;var $pr=LZ();wdt.default=function(e){e.registerHelper("blockHelperMissing",function(t,r){var n=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return n(this);if($pr.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):n(this);if(r.data&&r.ids){var o=$pr.createFrame(r.data);o.contextPath=$pr.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})};IWn.exports=wdt.default});var CWn=H((Tdt,mWn)=>{"use strict";Tdt.__esModule=!0;function DHo(e){return e&&e.__esModule?e:{default:e}}var SMe=LZ(),kHo=BM(),xHo=DHo(kHo);Tdt.default=function(e){e.registerHelper("each",function(t,r){if(!r)throw new xHo.default("Must pass iterator to #each");var n=r.fn,a=r.inverse,o=0,l="",A=void 0,f=void 0;r.data&&r.ids&&(f=SMe.appendContextPath(r.data.contextPath,r.ids[0])+"."),SMe.isFunction(t)&&(t=t.call(this)),r.data&&(A=SMe.createFrame(r.data));function I(B,F,Q){A&&(A.key=B,A.index=F,A.first=F===0,A.last=!!Q,f&&(A.contextPath=f+B)),l=l+n(t[B],{data:A,blockParams:SMe.blockParams([t[B],B],[f+B,null])})}if(t&&typeof t=="object")if(SMe.isArray(t))for(var C=t.length;o{"use strict";Rdt.__esModule=!0;function GHo(e){return e&&e.__esModule?e:{default:e}}var FHo=BM(),ZHo=GHo(FHo);Rdt.default=function(e){e.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new ZHo.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};_Wn.exports=Rdt.default});var vWn=H((Ndt,SWn)=>{"use strict";Ndt.__esModule=!0;function LHo(e){return e&&e.__esModule?e:{default:e}}var bWn=LZ(),VHo=BM(),EWn=LHo(VHo);Ndt.default=function(e){e.registerHelper("if",function(t,r){if(arguments.length!=2)throw new EWn.default("#if requires exactly one argument");return bWn.isFunction(t)&&(t=t.call(this)),!r.hash.includeZero&&!t||bWn.isEmpty(t)?r.inverse(this):r.fn(this)}),e.registerHelper("unless",function(t,r){if(arguments.length!=2)throw new EWn.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};SWn.exports=Ndt.default});var wWn=H((Ddt,BWn)=>{"use strict";Ddt.__esModule=!0;Ddt.default=function(e){e.registerHelper("log",function(){for(var t=[void 0],r=arguments[arguments.length-1],n=0;n{"use strict";kdt.__esModule=!0;kdt.default=function(e){e.registerHelper("lookup",function(t,r,n){return t&&n.lookupProperty(t,r)})};TWn.exports=kdt.default});var DWn=H((xdt,NWn)=>{"use strict";xdt.__esModule=!0;function WHo(e){return e&&e.__esModule?e:{default:e}}var vMe=LZ(),OHo=BM(),PHo=WHo(OHo);xdt.default=function(e){e.registerHelper("with",function(t,r){if(arguments.length!=2)throw new PHo.default("#with requires exactly one argument");vMe.isFunction(t)&&(t=t.call(this));var n=r.fn;if(vMe.isEmpty(t))return r.inverse(this);var a=r.data;return r.data&&r.ids&&(a=vMe.createFrame(r.data),a.contextPath=vMe.appendContextPath(r.data.contextPath,r.ids[0])),n(t,{data:a,blockParams:vMe.blockParams([t],[a&&a.contextPath])})})};NWn.exports=xdt.default});var efr=H(Gdt=>{"use strict";Gdt.__esModule=!0;Gdt.registerDefaultHelpers=rYo;Gdt.moveHelperToHooks=nYo;function xIe(e){return e&&e.__esModule?e:{default:e}}var MHo=hWn(),HHo=xIe(MHo),YHo=CWn(),QHo=xIe(YHo),XHo=yWn(),JHo=xIe(XHo),UHo=vWn(),KHo=xIe(UHo),jHo=wWn(),zHo=xIe(jHo),qHo=RWn(),$Ho=xIe(qHo),eYo=DWn(),tYo=xIe(eYo);function rYo(e){HHo.default(e),QHo.default(e),JHo.default(e),KHo.default(e),zHo.default(e),$Ho.default(e),tYo.default(e)}function nYo(e,t,r){e.helpers[t]&&(e.hooks[t]=e.helpers[t],r||delete e.helpers[t])}});var xWn=H((Fdt,kWn)=>{"use strict";Fdt.__esModule=!0;var iYo=LZ();Fdt.default=function(e){e.registerDecorator("inline",function(t,r,n,a){var o=t;return r.partials||(r.partials={},o=function(l,A){var f=n.partials;n.partials=iYo.extend({},f,r.partials);var I=t(l,A);return n.partials=f,I}),r.partials[a.args[0]]=a.fn,o})};kWn.exports=Fdt.default});var GWn=H(tfr=>{"use strict";tfr.__esModule=!0;tfr.registerDefaultDecorators=cYo;function sYo(e){return e&&e.__esModule?e:{default:e}}var oYo=xWn(),aYo=sYo(oYo);function cYo(e){aYo.default(e)}});var rfr=H((Zdt,FWn)=>{"use strict";Zdt.__esModule=!0;var lYo=LZ(),cBe={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(t){if(typeof t=="string"){var r=lYo.indexOf(cBe.methodMap,t.toLowerCase());r>=0?t=r:t=parseInt(t,10)}return t},log:function(t){if(t=cBe.lookupLevel(t),typeof console<"u"&&cBe.lookupLevel(cBe.level)<=t){var r=cBe.methodMap[t];console[r]||(r="log");for(var n=arguments.length,a=Array(n>1?n-1:0),o=1;o{"use strict";nfr.__esModule=!0;nfr.createNewLookupObject=gYo;var uYo=LZ();function gYo(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";BMe.__esModule=!0;BMe.createProtoAccessControl=fYo;BMe.resultIsAllowed=IYo;BMe.resetLoggedProperties=mYo;function AYo(e){return e&&e.__esModule?e:{default:e}}var LWn=ZWn(),dYo=rfr(),pYo=AYo(dYo),Ldt=Object.create(null);function fYo(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:LWn.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:LWn.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function IYo(e,t,r){return VWn(typeof e=="function"?t.methods:t.properties,r)}function VWn(e,t){return e.whitelist[t]!==void 0?e.whitelist[t]===!0:e.defaultValue!==void 0?e.defaultValue:(hYo(t),!1)}function hYo(e){Ldt[e]!==!0&&(Ldt[e]=!0,pYo.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+`" because it is not an "own property" of its parent. You can add a runtime option to disable the check or this warning: -See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function mYo(){Object.keys(Wdt).forEach(function(e){delete Wdt[e]})}});var Pdt=H(C8=>{"use strict";C8.__esModule=!0;C8.HandlebarsEnvironment=afr;function xWn(e){return e&&e.__esModule?e:{default:e}}var xIe=ZZ(),CYo=vM(),sfr=xWn(CYo),_Yo=efr(),yYo=TWn(),bYo=rfr(),Odt=xWn(bYo),EYo=ifr(),SYo="4.7.8";C8.VERSION=SYo;var vYo=8;C8.COMPILER_REVISION=vYo;var BYo=7;C8.LAST_COMPATIBLE_COMPILER_REVISION=BYo;var wYo={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};C8.REVISION_CHANGES=wYo;var ofr="[object Object]";function afr(e,t,r){this.helpers=e||{},this.partials=t||{},this.decorators=r||{},_Yo.registerDefaultHelpers(this),yYo.registerDefaultDecorators(this)}afr.prototype={constructor:afr,logger:Odt.default,log:Odt.default.log,registerHelper:function(t,r){if(xIe.toString.call(t)===ofr){if(r)throw new sfr.default("Arg not supported with multiple helpers");xIe.extend(this.helpers,t)}else this.helpers[t]=r},unregisterHelper:function(t){delete this.helpers[t]},registerPartial:function(t,r){if(xIe.toString.call(t)===ofr)xIe.extend(this.partials,t);else{if(typeof r>"u")throw new sfr.default('Attempting to register a partial called "'+t+'" as undefined');this.partials[t]=r}},unregisterPartial:function(t){delete this.partials[t]},registerDecorator:function(t,r){if(xIe.toString.call(t)===ofr){if(r)throw new sfr.default("Arg not supported with multiple decorators");xIe.extend(this.decorators,t)}else this.decorators[t]=r},unregisterDecorator:function(t){delete this.decorators[t]},resetLoggedPropertyAccesses:function(){EYo.resetLoggedProperties()}};var TYo=Odt.default.log;C8.log=TYo;C8.createFrame=xIe.createFrame;C8.logger=Odt.default});var FWn=H((Mdt,GWn)=>{"use strict";Mdt.__esModule=!0;function cfr(e){this.string=e}cfr.prototype.toString=cfr.prototype.toHTML=function(){return""+this.string};Mdt.default=cfr;GWn.exports=Mdt.default});var ZWn=H(lfr=>{"use strict";lfr.__esModule=!0;lfr.wrapHelper=RYo;function RYo(e,t){if(typeof e!="function")return e;var r=function(){var a=arguments[arguments.length-1];return arguments[arguments.length-1]=t(a),e.apply(this,arguments)};return r}});var PWn=H(Koe=>{"use strict";Koe.__esModule=!0;Koe.checkRevision=FYo;Koe.template=ZYo;Koe.wrapProgram=Hdt;Koe.resolvePartial=LYo;Koe.invokePartial=VYo;Koe.noop=WWn;function NYo(e){return e&&e.__esModule?e:{default:e}}function DYo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var kYo=ZZ(),R$=DYo(kYo),xYo=vM(),N$=NYo(xYo),D$=Pdt(),LWn=efr(),GYo=ZWn(),VWn=ifr();function FYo(e){var t=e&&e[0]||1,r=D$.COMPILER_REVISION;if(!(t>=D$.LAST_COMPATIBLE_COMPILER_REVISION&&t<=D$.COMPILER_REVISION))if(t{"use strict";_8.__esModule=!0;_8.HandlebarsEnvironment=afr;function WWn(e){return e&&e.__esModule?e:{default:e}}var GIe=LZ(),CYo=BM(),sfr=WWn(CYo),_Yo=efr(),yYo=GWn(),bYo=rfr(),Vdt=WWn(bYo),EYo=ifr(),SYo="4.7.8";_8.VERSION=SYo;var vYo=8;_8.COMPILER_REVISION=vYo;var BYo=7;_8.LAST_COMPATIBLE_COMPILER_REVISION=BYo;var wYo={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};_8.REVISION_CHANGES=wYo;var ofr="[object Object]";function afr(e,t,r){this.helpers=e||{},this.partials=t||{},this.decorators=r||{},_Yo.registerDefaultHelpers(this),yYo.registerDefaultDecorators(this)}afr.prototype={constructor:afr,logger:Vdt.default,log:Vdt.default.log,registerHelper:function(t,r){if(GIe.toString.call(t)===ofr){if(r)throw new sfr.default("Arg not supported with multiple helpers");GIe.extend(this.helpers,t)}else this.helpers[t]=r},unregisterHelper:function(t){delete this.helpers[t]},registerPartial:function(t,r){if(GIe.toString.call(t)===ofr)GIe.extend(this.partials,t);else{if(typeof r>"u")throw new sfr.default('Attempting to register a partial called "'+t+'" as undefined');this.partials[t]=r}},unregisterPartial:function(t){delete this.partials[t]},registerDecorator:function(t,r){if(GIe.toString.call(t)===ofr){if(r)throw new sfr.default("Arg not supported with multiple decorators");GIe.extend(this.decorators,t)}else this.decorators[t]=r},unregisterDecorator:function(t){delete this.decorators[t]},resetLoggedPropertyAccesses:function(){EYo.resetLoggedProperties()}};var TYo=Vdt.default.log;_8.log=TYo;_8.createFrame=GIe.createFrame;_8.logger=Vdt.default});var PWn=H((Odt,OWn)=>{"use strict";Odt.__esModule=!0;function cfr(e){this.string=e}cfr.prototype.toString=cfr.prototype.toHTML=function(){return""+this.string};Odt.default=cfr;OWn.exports=Odt.default});var MWn=H(lfr=>{"use strict";lfr.__esModule=!0;lfr.wrapHelper=RYo;function RYo(e,t){if(typeof e!="function")return e;var r=function(){var a=arguments[arguments.length-1];return arguments[arguments.length-1]=t(a),e.apply(this,arguments)};return r}});var JWn=H(joe=>{"use strict";joe.__esModule=!0;joe.checkRevision=FYo;joe.template=ZYo;joe.wrapProgram=Pdt;joe.resolvePartial=LYo;joe.invokePartial=VYo;joe.noop=QWn;function NYo(e){return e&&e.__esModule?e:{default:e}}function DYo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var kYo=LZ(),N$=DYo(kYo),xYo=BM(),D$=NYo(xYo),k$=Wdt(),HWn=efr(),GYo=MWn(),YWn=ifr();function FYo(e){var t=e&&e[0]||1,r=k$.COMPILER_REVISION;if(!(t>=k$.LAST_COMPATIBLE_COMPILER_REVISION&&t<=k$.COMPILER_REVISION))if(t{"use strict";Ydt.__esModule=!0;Ydt.default=function(e){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}};MWn.exports=Ydt.default});var JWn=H((Qdt,XWn)=>{"use strict";Qdt.__esModule=!0;function Afr(e){return e&&e.__esModule?e:{default:e}}function dfr(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var MYo=Pdt(),HWn=dfr(MYo),HYo=FWn(),YYo=Afr(HYo),QYo=vM(),XYo=Afr(QYo),JYo=ZZ(),gfr=dfr(JYo),UYo=PWn(),YWn=dfr(UYo),KYo=ufr(),jYo=Afr(KYo);function QWn(){var e=new HWn.HandlebarsEnvironment;return gfr.extend(e,HWn),e.SafeString=YYo.default,e.Exception=XYo.default,e.Utils=gfr,e.escapeExpression=gfr.escapeExpression,e.VM=YWn,e.template=function(t){return YWn.template(t,e)},e}var TMe=QWn();TMe.create=QWn;jYo.default(TMe);TMe.default=TMe;Qdt.default=TMe;XWn.exports=Qdt.default});var pfr=H((Xdt,KWn)=>{"use strict";Xdt.__esModule=!0;var UWn={helpers:{helperExpression:function(t){return t.type==="SubExpression"||(t.type==="MustacheStatement"||t.type==="BlockStatement")&&!!(t.params&&t.params.length||t.hash)},scopedId:function(t){return/^\.|this\b/.test(t.original)},simpleId:function(t){return t.parts.length===1&&!UWn.helpers.scopedId(t)&&!t.depth}}};Xdt.default=UWn;KWn.exports=Xdt.default});var zWn=H((Jdt,jWn)=>{"use strict";Jdt.__esModule=!0;var zYo=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,o,l,A,f,I,C){var b=I.length-1;switch(f){case 1:return I[b-1];case 2:this.$=A.prepareProgram(I[b]);break;case 3:this.$=I[b];break;case 4:this.$=I[b];break;case 5:this.$=I[b];break;case 6:this.$=I[b];break;case 7:this.$=I[b];break;case 8:this.$=I[b];break;case 9:this.$={type:"CommentStatement",value:A.stripComment(I[b]),strip:A.stripFlags(I[b],I[b]),loc:A.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:I[b],value:I[b],loc:A.locInfo(this._$)};break;case 11:this.$=A.prepareRawBlock(I[b-2],I[b-1],I[b],this._$);break;case 12:this.$={path:I[b-3],params:I[b-2],hash:I[b-1]};break;case 13:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!1,this._$);break;case 14:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!0,this._$);break;case 15:this.$={open:I[b-5],path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 16:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 17:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 18:this.$={strip:A.stripFlags(I[b-1],I[b-1]),program:I[b]};break;case 19:var E=A.prepareBlock(I[b-2],I[b-1],I[b],I[b],!1,this._$),N=A.prepareProgram([E],I[b-1].loc);N.chained=!0,this.$={strip:I[b-2].strip,program:N,chain:!0};break;case 20:this.$=I[b];break;case 21:this.$={path:I[b-1],strip:A.stripFlags(I[b-2],I[b])};break;case 22:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 23:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 24:this.$={type:"PartialStatement",name:I[b-3],params:I[b-2],hash:I[b-1],indent:"",strip:A.stripFlags(I[b-4],I[b]),loc:A.locInfo(this._$)};break;case 25:this.$=A.preparePartialBlock(I[b-2],I[b-1],I[b],this._$);break;case 26:this.$={path:I[b-3],params:I[b-2],hash:I[b-1],strip:A.stripFlags(I[b-4],I[b])};break;case 27:this.$=I[b];break;case 28:this.$=I[b];break;case 29:this.$={type:"SubExpression",path:I[b-3],params:I[b-2],hash:I[b-1],loc:A.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:I[b],loc:A.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:A.id(I[b-2]),value:I[b],loc:A.locInfo(this._$)};break;case 32:this.$=A.id(I[b-1]);break;case 33:this.$=I[b];break;case 34:this.$=I[b];break;case 35:this.$={type:"StringLiteral",value:I[b],original:I[b],loc:A.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(I[b]),original:Number(I[b]),loc:A.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:I[b]==="true",original:I[b]==="true",loc:A.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:A.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:A.locInfo(this._$)};break;case 40:this.$=I[b];break;case 41:this.$=I[b];break;case 42:this.$=A.preparePath(!0,I[b],this._$);break;case 43:this.$=A.preparePath(!1,I[b],this._$);break;case 44:I[b-2].push({part:A.id(I[b]),original:I[b],separator:I[b-1]}),this.$=I[b-2];break;case 45:this.$=[{part:A.id(I[b]),original:I[b]}];break;case 46:this.$=[];break;case 47:I[b-1].push(I[b]);break;case 48:this.$=[];break;case 49:I[b-1].push(I[b]);break;case 50:this.$=[];break;case 51:I[b-1].push(I[b]);break;case 58:this.$=[];break;case 59:I[b-1].push(I[b]);break;case 64:this.$=[];break;case 65:I[b-1].push(I[b]);break;case 70:this.$=[];break;case 71:I[b-1].push(I[b]);break;case 78:this.$=[];break;case 79:I[b-1].push(I[b]);break;case 82:this.$=[];break;case 83:I[b-1].push(I[b]);break;case 86:this.$=[];break;case 87:I[b-1].push(I[b]);break;case 90:this.$=[];break;case 91:I[b-1].push(I[b]);break;case 94:this.$=[];break;case 95:I[b-1].push(I[b]);break;case 98:this.$=[I[b]];break;case 99:I[b-1].push(I[b]);break;case 100:this.$=[I[b]];break;case 101:I[b-1].push(I[b]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,o){throw new Error(a)},parse:function(a){var o=this,l=[0],A=[null],f=[],I=this.table,C="",b=0,E=0,N=0,B=2,F=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var Q=this.lexer.yylloc;f.push(Q);var J=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function ae(ft){l.length=l.length-2*ft,A.length=A.length-ft,f.length=f.length-ft}function ne(){var ft;return ft=o.lexer.lex()||1,typeof ft!="number"&&(ft=o.symbols_[ft]||ft),ft}for(var ce,fe,ue,de,be,Se,De={},k,tt,ze,Le;;){if(ue=l[l.length-1],this.defaultActions[ue]?de=this.defaultActions[ue]:((ce===null||typeof ce>"u")&&(ce=ne()),de=I[ue]&&I[ue][ce]),typeof de>"u"||!de.length||!de[0]){var Je="";if(!N){Le=[];for(k in I[ue])this.terminals_[k]&&k>2&&Le.push("'"+this.terminals_[k]+"'");this.lexer.showPosition?Je="Parse error on line "+(b+1)+`: +`)}return C}else throw new D$.default("The partial "+f.name+" could not be compiled when running in runtime-only mode")}var a={strict:function(A,f,I){if(!A||!(f in A))throw new D$.default('"'+f+'" not defined in '+A,{loc:I});return a.lookupProperty(A,f)},lookupProperty:function(A,f){var I=A[f];if(I==null||Object.prototype.hasOwnProperty.call(A,f)||YWn.resultIsAllowed(I,a.protoAccessControl,f))return I},lookup:function(A,f){for(var I=A.length,C=0;C{"use strict";Mdt.__esModule=!0;Mdt.default=function(e){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}};UWn.exports=Mdt.default});var $Wn=H((Hdt,qWn)=>{"use strict";Hdt.__esModule=!0;function Afr(e){return e&&e.__esModule?e:{default:e}}function dfr(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var MYo=Wdt(),KWn=dfr(MYo),HYo=PWn(),YYo=Afr(HYo),QYo=BM(),XYo=Afr(QYo),JYo=LZ(),gfr=dfr(JYo),UYo=JWn(),jWn=dfr(UYo),KYo=ufr(),jYo=Afr(KYo);function zWn(){var e=new KWn.HandlebarsEnvironment;return gfr.extend(e,KWn),e.SafeString=YYo.default,e.Exception=XYo.default,e.Utils=gfr,e.escapeExpression=gfr.escapeExpression,e.VM=jWn,e.template=function(t){return jWn.template(t,e)},e}var wMe=zWn();wMe.create=zWn;jYo.default(wMe);wMe.default=wMe;Hdt.default=wMe;qWn.exports=Hdt.default});var pfr=H((Ydt,tOn)=>{"use strict";Ydt.__esModule=!0;var eOn={helpers:{helperExpression:function(t){return t.type==="SubExpression"||(t.type==="MustacheStatement"||t.type==="BlockStatement")&&!!(t.params&&t.params.length||t.hash)},scopedId:function(t){return/^\.|this\b/.test(t.original)},simpleId:function(t){return t.parts.length===1&&!eOn.helpers.scopedId(t)&&!t.depth}}};Ydt.default=eOn;tOn.exports=Ydt.default});var nOn=H((Qdt,rOn)=>{"use strict";Qdt.__esModule=!0;var zYo=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,o,l,A,f,I,C){var b=I.length-1;switch(f){case 1:return I[b-1];case 2:this.$=A.prepareProgram(I[b]);break;case 3:this.$=I[b];break;case 4:this.$=I[b];break;case 5:this.$=I[b];break;case 6:this.$=I[b];break;case 7:this.$=I[b];break;case 8:this.$=I[b];break;case 9:this.$={type:"CommentStatement",value:A.stripComment(I[b]),strip:A.stripFlags(I[b],I[b]),loc:A.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:I[b],value:I[b],loc:A.locInfo(this._$)};break;case 11:this.$=A.prepareRawBlock(I[b-2],I[b-1],I[b],this._$);break;case 12:this.$={path:I[b-3],params:I[b-2],hash:I[b-1]};break;case 13:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!1,this._$);break;case 14:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!0,this._$);break;case 15:this.$={open:I[b-5],path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 16:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 17:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 18:this.$={strip:A.stripFlags(I[b-1],I[b-1]),program:I[b]};break;case 19:var E=A.prepareBlock(I[b-2],I[b-1],I[b],I[b],!1,this._$),N=A.prepareProgram([E],I[b-1].loc);N.chained=!0,this.$={strip:I[b-2].strip,program:N,chain:!0};break;case 20:this.$=I[b];break;case 21:this.$={path:I[b-1],strip:A.stripFlags(I[b-2],I[b])};break;case 22:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 23:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 24:this.$={type:"PartialStatement",name:I[b-3],params:I[b-2],hash:I[b-1],indent:"",strip:A.stripFlags(I[b-4],I[b]),loc:A.locInfo(this._$)};break;case 25:this.$=A.preparePartialBlock(I[b-2],I[b-1],I[b],this._$);break;case 26:this.$={path:I[b-3],params:I[b-2],hash:I[b-1],strip:A.stripFlags(I[b-4],I[b])};break;case 27:this.$=I[b];break;case 28:this.$=I[b];break;case 29:this.$={type:"SubExpression",path:I[b-3],params:I[b-2],hash:I[b-1],loc:A.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:I[b],loc:A.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:A.id(I[b-2]),value:I[b],loc:A.locInfo(this._$)};break;case 32:this.$=A.id(I[b-1]);break;case 33:this.$=I[b];break;case 34:this.$=I[b];break;case 35:this.$={type:"StringLiteral",value:I[b],original:I[b],loc:A.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(I[b]),original:Number(I[b]),loc:A.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:I[b]==="true",original:I[b]==="true",loc:A.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:A.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:A.locInfo(this._$)};break;case 40:this.$=I[b];break;case 41:this.$=I[b];break;case 42:this.$=A.preparePath(!0,I[b],this._$);break;case 43:this.$=A.preparePath(!1,I[b],this._$);break;case 44:I[b-2].push({part:A.id(I[b]),original:I[b],separator:I[b-1]}),this.$=I[b-2];break;case 45:this.$=[{part:A.id(I[b]),original:I[b]}];break;case 46:this.$=[];break;case 47:I[b-1].push(I[b]);break;case 48:this.$=[];break;case 49:I[b-1].push(I[b]);break;case 50:this.$=[];break;case 51:I[b-1].push(I[b]);break;case 58:this.$=[];break;case 59:I[b-1].push(I[b]);break;case 64:this.$=[];break;case 65:I[b-1].push(I[b]);break;case 70:this.$=[];break;case 71:I[b-1].push(I[b]);break;case 78:this.$=[];break;case 79:I[b-1].push(I[b]);break;case 82:this.$=[];break;case 83:I[b-1].push(I[b]);break;case 86:this.$=[];break;case 87:I[b-1].push(I[b]);break;case 90:this.$=[];break;case 91:I[b-1].push(I[b]);break;case 94:this.$=[];break;case 95:I[b-1].push(I[b]);break;case 98:this.$=[I[b]];break;case 99:I[b-1].push(I[b]);break;case 100:this.$=[I[b]];break;case 101:I[b-1].push(I[b]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,o){throw new Error(a)},parse:function(a){var o=this,l=[0],A=[null],f=[],I=this.table,C="",b=0,E=0,N=0,B=2,F=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var Q=this.lexer.yylloc;f.push(Q);var J=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function ae(ft){l.length=l.length-2*ft,A.length=A.length-ft,f.length=f.length-ft}function ne(){var ft;return ft=o.lexer.lex()||1,typeof ft!="number"&&(ft=o.symbols_[ft]||ft),ft}for(var ce,fe,ue,de,be,Se,De={},k,tt,ze,Le;;){if(ue=l[l.length-1],this.defaultActions[ue]?de=this.defaultActions[ue]:((ce===null||typeof ce>"u")&&(ce=ne()),de=I[ue]&&I[ue][ce]),typeof de>"u"||!de.length||!de[0]){var Je="";if(!N){Le=[];for(k in I[ue])this.terminals_[k]&&k>2&&Le.push("'"+this.terminals_[k]+"'");this.lexer.showPosition?Je="Parse error on line "+(b+1)+`: `+this.lexer.showPosition()+` Expecting `+Le.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":Je="Parse error on line "+(b+1)+": Unexpected "+(ce==1?"end of input":"'"+(this.terminals_[ce]||ce)+"'"),this.parseError(Je,{text:this.lexer.match,token:this.terminals_[ce]||ce,line:this.lexer.yylineno,loc:Q,expected:Le})}}if(de[0]instanceof Array&&de.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ue+", token: "+ce);switch(de[0]){case 1:l.push(ce),A.push(this.lexer.yytext),f.push(this.lexer.yylloc),l.push(de[1]),ce=null,fe?(ce=fe,fe=null):(E=this.lexer.yyleng,C=this.lexer.yytext,b=this.lexer.yylineno,Q=this.lexer.yylloc,N>0&&N--);break;case 2:if(tt=this.productions_[de[1]][1],De.$=A[A.length-tt],De._$={first_line:f[f.length-(tt||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(tt||1)].first_column,last_column:f[f.length-1].last_column},J&&(De._$.range=[f[f.length-(tt||1)].range[0],f[f.length-1].range[1]]),Se=this.performAction.call(De,C,E,b,this.yy,de[1],A,f),typeof Se<"u")return Se;tt&&(l=l.slice(0,-1*tt*2),A=A.slice(0,-1*tt),f=f.slice(0,-1*tt)),l.push(this.productions_[de[1]][0]),A.push(De.$),f.push(De._$),ze=I[l[l.length-2]][l[l.length-1]],l.push(ze);break;case 3:return!0}}return!0}},t=function(){var n={EOF:1,parseError:function(o,l){if(this.yy.parser)this.yy.parser.parseError(o,l);else throw new Error(o)},setInput:function(o){return this._input=o,this._more=this._less=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 o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var l=o.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var l=o.length,A=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l-1),this.offset-=l;var f=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),A.length-1&&(this.yylineno-=A.length-1);var I=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:A?(A.length===f.length?this.yylloc.first_column:0)+f[f.length-A.length].length-A[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[I[0],I[0]+this.yyleng-l]),this},more:function(){return this._more=!0,this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),l=new Array(o.length+1).join("-");return o+this.upcomingInput()+` `+l+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,l,A,f,I,C;this._more||(this.yytext="",this.match="");for(var b=this._currentRules(),E=0;El[0].length)&&(l=A,f=E,!this.options.flex)));E++);return l?(C=l[0].match(/(?:\r\n?|\n).*/g),C&&(this.yylineno+=C.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:C?C[C.length-1].length-C[C.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+l[0].length},this.yytext+=l[0],this.match+=l[0],this.matches=l,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(l[0].length),this.matched+=l[0],o=this.performAction.call(this,this.yy,this,b[f],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o||void 0):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 o=this.next();return typeof o<"u"?o:this.lex()},begin:function(o){this.conditionStack.push(o)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(o){this.begin(o)}};return n.options={},n.performAction=function(o,l,A,f){function I(b,E){return l.yytext=l.yytext.substring(b,l.yyleng-E+b)}var C=f;switch(A){case 0:if(l.yytext.slice(-2)==="\\\\"?(I(0,1),this.begin("mu")):l.yytext.slice(-1)==="\\"?(I(0,1),this.begin("emu")):this.begin("mu"),l.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:(I(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;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 51;case 20:return 48;case 21:this.unput(l.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return l.yytext=I(1,2).replace(/\\"/g,'"'),80;break;case 32:return l.yytext=I(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return l.yytext=l.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},n.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\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.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}},n}();e.lexer=t;function r(){this.yy={}}return r.prototype=e,e.Parser=r,new r}();Jdt.default=zYo;jWn.exports=Jdt.default});var zdt=H((jdt,eOn)=>{"use strict";jdt.__esModule=!0;function qYo(e){return e&&e.__esModule?e:{default:e}}var $Yo=vM(),ffr=qYo($Yo);function Udt(){this.parents=[]}Udt.prototype={constructor:Udt,mutating:!1,acceptKey:function(t,r){var n=this.accept(t[r]);if(this.mutating){if(n&&!Udt.prototype[n.type])throw new ffr.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+t.type);t[r]=n}},acceptRequired:function(t,r){if(this.acceptKey(t,r),!t[r])throw new ffr.default(t.type+" requires "+r)},acceptArray:function(t){for(var r=0,n=t.length;r{"use strict";qdt.__esModule=!0;function eQo(e){return e&&e.__esModule?e:{default:e}}var tQo=zdt(),rQo=eQo(tQo);function _8(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}_8.prototype=new rQo.default;_8.prototype.Program=function(e){var t=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=e.body,a=0,o=n.length;a{"use strict";BM.__esModule=!0;BM.SourceLocation=sQo;BM.id=oQo;BM.stripFlags=aQo;BM.stripComment=cQo;BM.preparePath=lQo;BM.prepareMustache=uQo;BM.prepareRawBlock=gQo;BM.prepareBlock=AQo;BM.prepareProgram=dQo;BM.preparePartialBlock=pQo;function nQo(e){return e&&e.__esModule?e:{default:e}}var iQo=vM(),mfr=nQo(iQo);function Cfr(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new mfr.default(e.path.original+" doesn't match "+t,r)}}function sQo(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function oQo(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function aQo(e,t){return{open:e.charAt(2)==="~",close:t.charAt(t.length-3)==="~"}}function cQo(e){return e.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function lQo(e,t,r){r=this.locInfo(r);for(var n=e?"@":"",a=[],o=0,l=0,A=t.length;l0)throw new mfr.default("Invalid path: "+n,{loc:r});f===".."&&o++}else a.push(f)}return{type:"PathExpression",data:e,depth:o,parts:a,original:n,loc:r}}function uQo(e,t,r,n,a,o){var l=n.charAt(3)||n.charAt(2),A=l!=="{"&&l!=="&",f=/\*/.test(n);return{type:f?"Decorator":"MustacheStatement",path:e,params:t,hash:r,escaped:A,strip:a,loc:this.locInfo(o)}}function gQo(e,t,r,n){Cfr(e,r),n=this.locInfo(n);var a={type:"Program",body:t,strip:{},loc:n};return{type:"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function AQo(e,t,r,n,a,o){n&&n.path&&Cfr(e,n);var l=/\*/.test(e.open);t.blockParams=e.blockParams;var A=void 0,f=void 0;if(r){if(l)throw new mfr.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),f=r.strip,A=r.program}return a&&(a=A,A=t,t=a),{type:l?"DecoratorBlock":"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:t,inverse:A,openStrip:e.strip,inverseStrip:f,closeStrip:n&&n.strip,loc:this.locInfo(o)}}function dQo(e,t){if(!t&&e.length){var r=e[0].loc,n=e[e.length-1].loc;r&&n&&(t={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:e,strip:{},loc:t}}function pQo(e,t,r,n){return Cfr(e,r),{type:"PartialBlockStatement",name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:r&&r.strip,loc:this.locInfo(n)}}});var oOn=H(RMe=>{"use strict";RMe.__esModule=!0;RMe.parseWithoutProcessing=sOn;RMe.parse=bQo;function fQo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function iOn(e){return e&&e.__esModule?e:{default:e}}var IQo=zWn(),_fr=iOn(IQo),hQo=rOn(),mQo=iOn(hQo),CQo=nOn(),_Qo=fQo(CQo),yQo=ZZ();RMe.parser=_fr.default;var $dt={};yQo.extend($dt,_Qo);function sOn(e,t){if(e.type==="Program")return e;_fr.default.yy=$dt,$dt.locInfo=function(n){return new $dt.SourceLocation(t&&t.srcName,n)};var r=_fr.default.parse(e);return r}function bQo(e,t){var r=sOn(e,t),n=new mQo.default(t);return n.accept(r)}});var uOn=H(xMe=>{"use strict";xMe.__esModule=!0;xMe.Compiler=yfr;xMe.precompile=BQo;xMe.compile=wQo;function cOn(e){return e&&e.__esModule?e:{default:e}}var EQo=vM(),DMe=cOn(EQo),kMe=ZZ(),SQo=pfr(),NMe=cOn(SQo),vQo=[].slice;function yfr(){}yfr.prototype={compiler:yfr,equals:function(t){var r=this.opcodes.length;if(t.opcodes.length!==r)return!1;for(var n=0;n1)throw new DMe.default("Unsupported number of partial arguments: "+n.length,t);n.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):n.push({type:"PathExpression",parts:[],depth:0}));var a=t.name.original,o=t.name.type==="SubExpression";o&&this.accept(t.name),this.setupFullMustacheParams(t,r,void 0,!0);var l=t.indent||"";this.options.preventIndent&&l&&(this.opcode("appendContent",l),l=""),this.opcode("invokePartial",o,a,l),this.opcode("append")},PartialBlockStatement:function(t){this.PartialStatement(t)},MustacheStatement:function(t){this.SubExpression(t),t.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(t){this.DecoratorBlock(t)},ContentStatement:function(t){t.value&&this.opcode("appendContent",t.value)},CommentStatement:function(){},SubExpression:function(t){aOn(t);var r=this.classifySexpr(t);r==="simple"?this.simpleSexpr(t):r==="helper"?this.helperSexpr(t):this.ambiguousSexpr(t)},ambiguousSexpr:function(t,r,n){var a=t.path,o=a.parts[0],l=r!=null||n!=null;this.opcode("getContext",a.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",n),a.strict=!0,this.accept(a),this.opcode("invokeAmbiguous",o,l)},simpleSexpr:function(t){var r=t.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(t,r,n){var a=this.setupFullMustacheParams(t,r,n),o=t.path,l=o.parts[0];if(this.options.knownHelpers[l])this.opcode("invokeKnownHelper",a.length,l);else{if(this.options.knownHelpersOnly)throw new DMe.default("You specified knownHelpersOnly, but used the unknown helper "+l,t);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",a.length,o.original,NMe.default.helpers.simpleId(o))}},PathExpression:function(t){this.addDepth(t.depth),this.opcode("getContext",t.depth);var r=t.parts[0],n=NMe.default.helpers.scopedId(t),a=!t.depth&&!n&&this.blockParamIndex(r);a?this.opcode("lookupBlockParam",a,t.parts):r?t.data?(this.options.data=!0,this.opcode("lookupData",t.depth,t.parts,t.strict)):this.opcode("lookupOnContext",t.parts,t.falsy,t.strict,n):this.opcode("pushContext")},StringLiteral:function(t){this.opcode("pushString",t.value)},NumberLiteral:function(t){this.opcode("pushLiteral",t.value)},BooleanLiteral:function(t){this.opcode("pushLiteral",t.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(t){var r=t.pairs,n=0,a=r.length;for(this.opcode("pushHash");n=0)return[r,o]}}};function BQo(e,t,r){if(e==null||typeof e!="string"&&e.type!=="Program")throw new DMe.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=r.parse(e,t),a=new r.Compiler().compile(n,t);return new r.JavaScriptCompiler().compile(a,t)}function wQo(e,t,r){if(t===void 0&&(t={}),e==null||typeof e!="string"&&e.type!=="Program")throw new DMe.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);t=kMe.extend({},t),"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=void 0;function a(){var l=r.parse(e,t),A=new r.Compiler().compile(l,t),f=new r.JavaScriptCompiler().compile(A,t,void 0,!0);return r.template(f)}function o(l,A){return n||(n=a()),n.call(this,l,A)}return o._setup=function(l){return n||(n=a()),n._setup(l)},o._child=function(l,A,f,I){return n||(n=a()),n._child(l,A,f,I)},o}function lOn(e,t){if(e===t)return!0;if(kMe.isArray(e)&&kMe.isArray(t)&&e.length===t.length){for(var r=0;r{var gOn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");bfr.encode=function(e){if(0<=e&&e{var dOn=AOn(),Efr=5,pOn=1<>1;return t?-r:r}Sfr.encode=function(t){var r="",n,a=TQo(t);do n=a&fOn,a>>>=Efr,a>0&&(n|=IOn),r+=dOn.encode(n);while(a>0);return r};Sfr.decode=function(t,r,n){var a=t.length,o=0,l=0,A,f;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(f=dOn.decode(t.charCodeAt(r++)),f===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));A=!!(f&IOn),f&=fOn,o=o+(f<{function NQo(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}_G.getArg=NQo;var hOn=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,DQo=/^data:.+\,.+$/;function GMe(e){var t=e.match(hOn);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}_G.urlParse=GMe;function lBe(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}_G.urlGenerate=lBe;function Bfr(e){var t=e,r=GMe(e);if(r){if(!r.path)return e;t=r.path}for(var n=_G.isAbsolute(t),a=t.split(/\/+/),o,l=0,A=a.length-1;A>=0;A--)o=a[A],o==="."?a.splice(A,1):o===".."?l++:l>0&&(o===""?(a.splice(A+1,l),l=0):(a.splice(A,2),l--));return t=a.join("/"),t===""&&(t=n?"/":"."),r?(r.path=t,lBe(r)):t}_G.normalize=Bfr;function mOn(e,t){e===""&&(e="."),t===""&&(t=".");var r=GMe(t),n=GMe(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),lBe(r);if(r||t.match(DQo))return t;if(n&&!n.host&&!n.path)return n.host=t,lBe(n);var a=t.charAt(0)==="/"?t:Bfr(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,lBe(n)):a}_G.join=mOn;_G.isAbsolute=function(e){return e.charAt(0)==="/"||hOn.test(e)};function kQo(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}_G.relative=kQo;var COn=function(){var e=Object.create(null);return!("__proto__"in e)}();function _On(e){return e}function xQo(e){return yOn(e)?"$"+e:e}_G.toSetString=COn?_On:xQo;function GQo(e){return yOn(e)?e.slice(1):e}_G.fromSetString=COn?_On:GQo;function yOn(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function FQo(e,t,r){var n=uBe(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:uBe(e.name,t.name)}_G.compareByOriginalPositions=FQo;function ZQo(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=uBe(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:uBe(e.name,t.name)}_G.compareByGeneratedPositionsDeflated=ZQo;function uBe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function LQo(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=uBe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:uBe(e.name,t.name)}_G.compareByGeneratedPositionsInflated=LQo;function VQo(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}_G.parseSourceMapInput=VQo;function WQo(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=GMe(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=mOn(lBe(n),t)}return Bfr(t)}_G.computeSourceURL=WQo});var Rfr=H(bOn=>{var wfr=gBe(),Tfr=Object.prototype.hasOwnProperty,FIe=typeof Map<"u";function k$(){this._array=[],this._set=FIe?new Map:Object.create(null)}k$.fromArray=function(t,r){for(var n=new k$,a=0,o=t.length;a=0)return r}else{var n=wfr.toSetString(t);if(Tfr.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};k$.prototype.at=function(t){if(t>=0&&t{var EOn=gBe();function OQo(e,t){var r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||EOn.compareByGeneratedPositionsInflated(e,t)<=0}function ept(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}ept.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};ept.prototype.add=function(t){OQo(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};ept.prototype.toArray=function(){return this._sorted||(this._array.sort(EOn.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};SOn.MappingList=ept});var Nfr=H(BOn=>{var FMe=vfr(),aT=gBe(),tpt=Rfr().ArraySet,PQo=vOn().MappingList;function wM(e){e||(e={}),this._file=aT.getArg(e,"file",null),this._sourceRoot=aT.getArg(e,"sourceRoot",null),this._skipValidation=aT.getArg(e,"skipValidation",!1),this._sources=new tpt,this._names=new tpt,this._mappings=new PQo,this._sourcesContents=null}wM.prototype._version=3;wM.fromSourceMap=function(t){var r=t.sourceRoot,n=new wM({file:t.file,sourceRoot:r});return t.eachMapping(function(a){var o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=aT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){var o=a;r!==null&&(o=aT.relative(r,a)),n._sources.has(o)||n._sources.add(o);var l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n};wM.prototype.addMapping=function(t){var r=aT.getArg(t,"generated"),n=aT.getArg(t,"original",null),a=aT.getArg(t,"source",null),o=aT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})};wM.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=aT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[aT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[aT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};wM.prototype.applySourceMap=function(t,r,n){var a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}var o=this._sourceRoot;o!=null&&(a=aT.relative(o,a));var l=new tpt,A=new tpt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){var I=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});I.source!=null&&(f.source=I.source,n!=null&&(f.source=aT.join(n,f.source)),o!=null&&(f.source=aT.relative(o,f.source)),f.originalLine=I.line,f.originalColumn=I.column,I.name!=null&&(f.name=I.name))}var C=f.source;C!=null&&!l.has(C)&&l.add(C);var b=f.name;b!=null&&!A.has(b)&&A.add(b)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){var I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=aT.join(n,f)),o!=null&&(f=aT.relative(o,f)),this.setSourceContent(f,I))},this)};wM.prototype._validateMapping=function(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("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(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}};wM.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray(),N=0,B=E.length;N0){if(!aT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=FMe.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=FMe.encode(b-l),l=b,f+=FMe.encode(I.originalLine-1-a),a=I.originalLine-1,f+=FMe.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=FMe.encode(C-o),o=C)),A+=f}return A};wM.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=aT.relative(r,n));var a=aT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)};wM.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};wM.prototype.toString=function(){return JSON.stringify(this.toJSON())};BOn.SourceMapGenerator=wM});var wOn=H(ZIe=>{ZIe.GREATEST_LOWER_BOUND=1;ZIe.LEAST_UPPER_BOUND=2;function Dfr(e,t,r,n,a,o){var l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?Dfr(l,t,r,n,a,o):o==ZIe.LEAST_UPPER_BOUND?t1?Dfr(e,l,r,n,a,o):o==ZIe.LEAST_UPPER_BOUND?l:e<0?-1:e}ZIe.search=function(t,r,n,a){if(r.length===0)return-1;var o=Dfr(-1,r.length,t,r,n,a||ZIe.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var ROn=H(TOn=>{function kfr(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function MQo(e,t){return Math.round(e+Math.random()*(t-e))}function xfr(e,t,r,n){if(r{var od=gBe(),Gfr=wOn(),ABe=Rfr().ArraySet,HQo=vfr(),ZMe=ROn().quickSort;function V1(e,t){var r=e;return typeof e=="string"&&(r=od.parseSourceMapInput(e)),r.sections!=null?new TX(r,t):new Dk(r,t)}V1.fromSourceMap=function(e,t){return Dk.fromSourceMap(e,t)};V1.prototype._version=3;V1.prototype.__generatedMappings=null;Object.defineProperty(V1.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});V1.prototype.__originalMappings=null;Object.defineProperty(V1.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});V1.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};V1.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};V1.GENERATED_ORDER=1;V1.ORIGINAL_ORDER=2;V1.GREATEST_LOWER_BOUND=1;V1.LEAST_UPPER_BOUND=2;V1.prototype.eachMapping=function(t,r,n){var a=r||null,o=n||V1.GENERATED_ORDER,l;switch(o){case V1.GENERATED_ORDER:l=this._generatedMappings;break;case V1.ORIGINAL_ORDER:l=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var A=this.sourceRoot;l.map(function(f){var I=f.source===null?null:this._sources.at(f.source);return I=od.computeSourceURL(A,I,this._sourceMapURL),{source:I,generatedLine:f.generatedLine,generatedColumn:f.generatedColumn,originalLine:f.originalLine,originalColumn:f.originalColumn,name:f.name===null?null:this._names.at(f.name)}},this).forEach(t,a)};V1.prototype.allGeneratedPositionsFor=function(t){var r=od.getArg(t,"line"),n={source:od.getArg(t,"source"),originalLine:r,originalColumn:od.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",od.compareByOriginalPositions,Gfr.LEAST_UPPER_BOUND);if(o>=0){var l=this._originalMappings[o];if(t.column===void 0)for(var A=l.originalLine;l&&l.originalLine===A;)a.push({line:od.getArg(l,"generatedLine",null),column:od.getArg(l,"generatedColumn",null),lastColumn:od.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o];else for(var f=l.originalColumn;l&&l.originalLine===r&&l.originalColumn==f;)a.push({line:od.getArg(l,"generatedLine",null),column:od.getArg(l,"generatedColumn",null),lastColumn:od.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o]}return a};rpt.SourceMapConsumer=V1;function Dk(e,t){var r=e;typeof e=="string"&&(r=od.parseSourceMapInput(e));var n=od.getArg(r,"version"),a=od.getArg(r,"sources"),o=od.getArg(r,"names",[]),l=od.getArg(r,"sourceRoot",null),A=od.getArg(r,"sourcesContent",null),f=od.getArg(r,"mappings"),I=od.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);l&&(l=od.normalize(l)),a=a.map(String).map(od.normalize).map(function(C){return l&&od.isAbsolute(l)&&od.isAbsolute(C)?od.relative(l,C):C}),this._names=ABe.fromArray(o.map(String),!0),this._sources=ABe.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map(function(C){return od.computeSourceURL(l,C,t)}),this.sourceRoot=l,this.sourcesContent=A,this._mappings=f,this._sourceMapURL=t,this.file=I}Dk.prototype=Object.create(V1.prototype);Dk.prototype.consumer=V1;Dk.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=od.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r1&&(F.source=A+J[1],A+=J[1],F.originalLine=o+J[2],o=F.originalLine,F.originalLine+=1,F.originalColumn=l+J[3],l=F.originalColumn,J.length>4&&(F.name=f+J[4],f+=J[4])),B.push(F),typeof F.originalLine=="number"&&N.push(F)}ZMe(B,od.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,ZMe(N,od.compareByOriginalPositions),this.__originalMappings=N};Dk.prototype._findMapping=function(t,r,n,a,o,l){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[a]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[a]);return Gfr.search(t,r,o,l)};Dk.prototype.computeColumnSpans=function(){for(var t=0;t=0){var a=this._generatedMappings[n];if(a.generatedLine===r.generatedLine){var o=od.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=od.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var l=od.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:od.getArg(a,"originalLine",null),column:od.getArg(a,"originalColumn",null),name:l}}}return{source:null,line:null,column:null,name:null}};Dk.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};Dk.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var a=t;this.sourceRoot!=null&&(a=od.relative(this.sourceRoot,a));var o;if(this.sourceRoot!=null&&(o=od.urlParse(this.sourceRoot))){var l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')};Dk.prototype.generatedPositionFor=function(t){var r=od.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:od.getArg(t,"line"),originalColumn:od.getArg(t,"column")},a=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",od.compareByOriginalPositions,od.getArg(t,"bias",V1.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===n.source)return{line:od.getArg(o,"generatedLine",null),column:od.getArg(o,"generatedColumn",null),lastColumn:od.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};rpt.BasicSourceMapConsumer=Dk;function TX(e,t){var r=e;typeof e=="string"&&(r=od.parseSourceMapInput(e));var n=od.getArg(r,"version"),a=od.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new ABe,this._names=new ABe;var o={line:-1,column:0};this._sections=a.map(function(l){if(l.url)throw new Error("Support for url field in sections not implemented.");var A=od.getArg(l,"offset"),f=od.getArg(A,"line"),I=od.getArg(A,"column");if(f{var YQo=Nfr().SourceMapGenerator,npt=gBe(),QQo=/(\r?\n)/,XQo=10,dBe="$$$isSourceNode$$$";function QO(e,t,r,n,a){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=a??null,this[dBe]=!0,n!=null&&this.add(n)}QO.fromStringWithSourceMap=function(t,r,n){var a=new QO,o=t.split(QQo),l=0,A=function(){var E=B(),N=B()||"";return E+N;function B(){return l=0;r--)this.prepend(t[r]);else if(t[dBe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};QO.prototype.walk=function(t){for(var r,n=0,a=this.children.length;n0){for(r=[],n=0;n{ipt.SourceMapGenerator=Nfr().SourceMapGenerator;ipt.SourceMapConsumer=DOn().SourceMapConsumer;ipt.SourceNode=xOn().SourceNode});var VOn=H((spt,LOn)=>{"use strict";spt.__esModule=!0;var Zfr=ZZ(),LIe=void 0;try{(typeof define!="function"||!define.amd)&&(FOn=GOn(),LIe=FOn.SourceNode)}catch{}var FOn;LIe||(LIe=function(e,t,r,n){this.src="",n&&this.add(n)},LIe.prototype={add:function(t){Zfr.isArray(t)&&(t=t.join("")),this.src+=t},prepend:function(t){Zfr.isArray(t)&&(t=t.join("")),this.src=t+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function Ffr(e,t,r){if(Zfr.isArray(e)){for(var n=[],a=0,o=e.length;a{"use strict";opt.__esModule=!0;function POn(e){return e&&e.__esModule?e:{default:e}}var WOn=Pdt(),JQo=vM(),Lfr=POn(JQo),UQo=ZZ(),KQo=VOn(),OOn=POn(KQo);function pBe(e){this.value=e}function fBe(){}fBe.prototype={nameLookup:function(t,r){return this.internalNameLookup(t,r)},depthedLookup:function(t){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(t),")"]},compilerInfo:function(){var t=WOn.COMPILER_REVISION,r=WOn.REVISION_CHANGES[t];return[t,r]},appendToBuffer:function(t,r,n){return UQo.isArray(t)||(t=[t]),t=this.source.wrap(t,r),this.environment.isSimple?["return ",t,";"]:n?["buffer += ",t,";"]:(t.appendToBuffer=!0,t)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(t,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",t,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(t,r,n,a){this.environment=t,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!a,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(t,r),this.useDepths=this.useDepths||t.useDepths||t.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||t.useBlockParams;var o=t.opcodes,l=void 0,A=void 0,f=void 0,I=void 0;for(f=0,I=o.length;f@\[-\^`\{-~]+(?=[=}\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\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.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}},n}();e.lexer=t;function r(){this.yy={}}return r.prototype=e,e.Parser=r,new r}();Qdt.default=zYo;rOn.exports=Qdt.default});var Kdt=H((Udt,oOn)=>{"use strict";Udt.__esModule=!0;function qYo(e){return e&&e.__esModule?e:{default:e}}var $Yo=BM(),ffr=qYo($Yo);function Xdt(){this.parents=[]}Xdt.prototype={constructor:Xdt,mutating:!1,acceptKey:function(t,r){var n=this.accept(t[r]);if(this.mutating){if(n&&!Xdt.prototype[n.type])throw new ffr.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+t.type);t[r]=n}},acceptRequired:function(t,r){if(this.acceptKey(t,r),!t[r])throw new ffr.default(t.type+" requires "+r)},acceptArray:function(t){for(var r=0,n=t.length;r{"use strict";jdt.__esModule=!0;function eQo(e){return e&&e.__esModule?e:{default:e}}var tQo=Kdt(),rQo=eQo(tQo);function y8(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}y8.prototype=new rQo.default;y8.prototype.Program=function(e){var t=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=e.body,a=0,o=n.length;a{"use strict";wM.__esModule=!0;wM.SourceLocation=sQo;wM.id=oQo;wM.stripFlags=aQo;wM.stripComment=cQo;wM.preparePath=lQo;wM.prepareMustache=uQo;wM.prepareRawBlock=gQo;wM.prepareBlock=AQo;wM.prepareProgram=dQo;wM.preparePartialBlock=pQo;function nQo(e){return e&&e.__esModule?e:{default:e}}var iQo=BM(),mfr=nQo(iQo);function Cfr(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new mfr.default(e.path.original+" doesn't match "+t,r)}}function sQo(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function oQo(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function aQo(e,t){return{open:e.charAt(2)==="~",close:t.charAt(t.length-3)==="~"}}function cQo(e){return e.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function lQo(e,t,r){r=this.locInfo(r);for(var n=e?"@":"",a=[],o=0,l=0,A=t.length;l0)throw new mfr.default("Invalid path: "+n,{loc:r});f===".."&&o++}else a.push(f)}return{type:"PathExpression",data:e,depth:o,parts:a,original:n,loc:r}}function uQo(e,t,r,n,a,o){var l=n.charAt(3)||n.charAt(2),A=l!=="{"&&l!=="&",f=/\*/.test(n);return{type:f?"Decorator":"MustacheStatement",path:e,params:t,hash:r,escaped:A,strip:a,loc:this.locInfo(o)}}function gQo(e,t,r,n){Cfr(e,r),n=this.locInfo(n);var a={type:"Program",body:t,strip:{},loc:n};return{type:"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function AQo(e,t,r,n,a,o){n&&n.path&&Cfr(e,n);var l=/\*/.test(e.open);t.blockParams=e.blockParams;var A=void 0,f=void 0;if(r){if(l)throw new mfr.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),f=r.strip,A=r.program}return a&&(a=A,A=t,t=a),{type:l?"DecoratorBlock":"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:t,inverse:A,openStrip:e.strip,inverseStrip:f,closeStrip:n&&n.strip,loc:this.locInfo(o)}}function dQo(e,t){if(!t&&e.length){var r=e[0].loc,n=e[e.length-1].loc;r&&n&&(t={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:e,strip:{},loc:t}}function pQo(e,t,r,n){return Cfr(e,r),{type:"PartialBlockStatement",name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:r&&r.strip,loc:this.locInfo(n)}}});var AOn=H(TMe=>{"use strict";TMe.__esModule=!0;TMe.parseWithoutProcessing=gOn;TMe.parse=bQo;function fQo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function uOn(e){return e&&e.__esModule?e:{default:e}}var IQo=nOn(),_fr=uOn(IQo),hQo=cOn(),mQo=uOn(hQo),CQo=lOn(),_Qo=fQo(CQo),yQo=LZ();TMe.parser=_fr.default;var zdt={};yQo.extend(zdt,_Qo);function gOn(e,t){if(e.type==="Program")return e;_fr.default.yy=zdt,zdt.locInfo=function(n){return new zdt.SourceLocation(t&&t.srcName,n)};var r=_fr.default.parse(e);return r}function bQo(e,t){var r=gOn(e,t),n=new mQo.default(t);return n.accept(r)}});var IOn=H(kMe=>{"use strict";kMe.__esModule=!0;kMe.Compiler=yfr;kMe.precompile=BQo;kMe.compile=wQo;function pOn(e){return e&&e.__esModule?e:{default:e}}var EQo=BM(),NMe=pOn(EQo),DMe=LZ(),SQo=pfr(),RMe=pOn(SQo),vQo=[].slice;function yfr(){}yfr.prototype={compiler:yfr,equals:function(t){var r=this.opcodes.length;if(t.opcodes.length!==r)return!1;for(var n=0;n1)throw new NMe.default("Unsupported number of partial arguments: "+n.length,t);n.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):n.push({type:"PathExpression",parts:[],depth:0}));var a=t.name.original,o=t.name.type==="SubExpression";o&&this.accept(t.name),this.setupFullMustacheParams(t,r,void 0,!0);var l=t.indent||"";this.options.preventIndent&&l&&(this.opcode("appendContent",l),l=""),this.opcode("invokePartial",o,a,l),this.opcode("append")},PartialBlockStatement:function(t){this.PartialStatement(t)},MustacheStatement:function(t){this.SubExpression(t),t.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(t){this.DecoratorBlock(t)},ContentStatement:function(t){t.value&&this.opcode("appendContent",t.value)},CommentStatement:function(){},SubExpression:function(t){dOn(t);var r=this.classifySexpr(t);r==="simple"?this.simpleSexpr(t):r==="helper"?this.helperSexpr(t):this.ambiguousSexpr(t)},ambiguousSexpr:function(t,r,n){var a=t.path,o=a.parts[0],l=r!=null||n!=null;this.opcode("getContext",a.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",n),a.strict=!0,this.accept(a),this.opcode("invokeAmbiguous",o,l)},simpleSexpr:function(t){var r=t.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(t,r,n){var a=this.setupFullMustacheParams(t,r,n),o=t.path,l=o.parts[0];if(this.options.knownHelpers[l])this.opcode("invokeKnownHelper",a.length,l);else{if(this.options.knownHelpersOnly)throw new NMe.default("You specified knownHelpersOnly, but used the unknown helper "+l,t);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",a.length,o.original,RMe.default.helpers.simpleId(o))}},PathExpression:function(t){this.addDepth(t.depth),this.opcode("getContext",t.depth);var r=t.parts[0],n=RMe.default.helpers.scopedId(t),a=!t.depth&&!n&&this.blockParamIndex(r);a?this.opcode("lookupBlockParam",a,t.parts):r?t.data?(this.options.data=!0,this.opcode("lookupData",t.depth,t.parts,t.strict)):this.opcode("lookupOnContext",t.parts,t.falsy,t.strict,n):this.opcode("pushContext")},StringLiteral:function(t){this.opcode("pushString",t.value)},NumberLiteral:function(t){this.opcode("pushLiteral",t.value)},BooleanLiteral:function(t){this.opcode("pushLiteral",t.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(t){var r=t.pairs,n=0,a=r.length;for(this.opcode("pushHash");n=0)return[r,o]}}};function BQo(e,t,r){if(e==null||typeof e!="string"&&e.type!=="Program")throw new NMe.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=r.parse(e,t),a=new r.Compiler().compile(n,t);return new r.JavaScriptCompiler().compile(a,t)}function wQo(e,t,r){if(t===void 0&&(t={}),e==null||typeof e!="string"&&e.type!=="Program")throw new NMe.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);t=DMe.extend({},t),"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=void 0;function a(){var l=r.parse(e,t),A=new r.Compiler().compile(l,t),f=new r.JavaScriptCompiler().compile(A,t,void 0,!0);return r.template(f)}function o(l,A){return n||(n=a()),n.call(this,l,A)}return o._setup=function(l){return n||(n=a()),n._setup(l)},o._child=function(l,A,f,I){return n||(n=a()),n._child(l,A,f,I)},o}function fOn(e,t){if(e===t)return!0;if(DMe.isArray(e)&&DMe.isArray(t)&&e.length===t.length){for(var r=0;r{var hOn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");bfr.encode=function(e){if(0<=e&&e{var COn=mOn(),Efr=5,_On=1<>1;return t?-r:r}Sfr.encode=function(t){var r="",n,a=TQo(t);do n=a&yOn,a>>>=Efr,a>0&&(n|=bOn),r+=COn.encode(n);while(a>0);return r};Sfr.decode=function(t,r,n){var a=t.length,o=0,l=0,A,f;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(f=COn.decode(t.charCodeAt(r++)),f===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));A=!!(f&bOn),f&=yOn,o=o+(f<{function NQo(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}yG.getArg=NQo;var EOn=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,DQo=/^data:.+\,.+$/;function xMe(e){var t=e.match(EOn);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}yG.urlParse=xMe;function lBe(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}yG.urlGenerate=lBe;function Bfr(e){var t=e,r=xMe(e);if(r){if(!r.path)return e;t=r.path}for(var n=yG.isAbsolute(t),a=t.split(/\/+/),o,l=0,A=a.length-1;A>=0;A--)o=a[A],o==="."?a.splice(A,1):o===".."?l++:l>0&&(o===""?(a.splice(A+1,l),l=0):(a.splice(A,2),l--));return t=a.join("/"),t===""&&(t=n?"/":"."),r?(r.path=t,lBe(r)):t}yG.normalize=Bfr;function SOn(e,t){e===""&&(e="."),t===""&&(t=".");var r=xMe(t),n=xMe(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),lBe(r);if(r||t.match(DQo))return t;if(n&&!n.host&&!n.path)return n.host=t,lBe(n);var a=t.charAt(0)==="/"?t:Bfr(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,lBe(n)):a}yG.join=SOn;yG.isAbsolute=function(e){return e.charAt(0)==="/"||EOn.test(e)};function kQo(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}yG.relative=kQo;var vOn=function(){var e=Object.create(null);return!("__proto__"in e)}();function BOn(e){return e}function xQo(e){return wOn(e)?"$"+e:e}yG.toSetString=vOn?BOn:xQo;function GQo(e){return wOn(e)?e.slice(1):e}yG.fromSetString=vOn?BOn:GQo;function wOn(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function FQo(e,t,r){var n=uBe(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:uBe(e.name,t.name)}yG.compareByOriginalPositions=FQo;function ZQo(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=uBe(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:uBe(e.name,t.name)}yG.compareByGeneratedPositionsDeflated=ZQo;function uBe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function LQo(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=uBe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:uBe(e.name,t.name)}yG.compareByGeneratedPositionsInflated=LQo;function VQo(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}yG.parseSourceMapInput=VQo;function WQo(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=xMe(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=SOn(lBe(n),t)}return Bfr(t)}yG.computeSourceURL=WQo});var Rfr=H(TOn=>{var wfr=gBe(),Tfr=Object.prototype.hasOwnProperty,ZIe=typeof Map<"u";function x$(){this._array=[],this._set=ZIe?new Map:Object.create(null)}x$.fromArray=function(t,r){for(var n=new x$,a=0,o=t.length;a=0)return r}else{var n=wfr.toSetString(t);if(Tfr.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};x$.prototype.at=function(t){if(t>=0&&t{var ROn=gBe();function OQo(e,t){var r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||ROn.compareByGeneratedPositionsInflated(e,t)<=0}function qdt(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}qdt.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};qdt.prototype.add=function(t){OQo(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};qdt.prototype.toArray=function(){return this._sorted||(this._array.sort(ROn.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};NOn.MappingList=qdt});var Nfr=H(kOn=>{var GMe=vfr(),cT=gBe(),$dt=Rfr().ArraySet,PQo=DOn().MappingList;function TM(e){e||(e={}),this._file=cT.getArg(e,"file",null),this._sourceRoot=cT.getArg(e,"sourceRoot",null),this._skipValidation=cT.getArg(e,"skipValidation",!1),this._sources=new $dt,this._names=new $dt,this._mappings=new PQo,this._sourcesContents=null}TM.prototype._version=3;TM.fromSourceMap=function(t){var r=t.sourceRoot,n=new TM({file:t.file,sourceRoot:r});return t.eachMapping(function(a){var o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=cT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){var o=a;r!==null&&(o=cT.relative(r,a)),n._sources.has(o)||n._sources.add(o);var l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n};TM.prototype.addMapping=function(t){var r=cT.getArg(t,"generated"),n=cT.getArg(t,"original",null),a=cT.getArg(t,"source",null),o=cT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})};TM.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=cT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[cT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[cT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};TM.prototype.applySourceMap=function(t,r,n){var a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}var o=this._sourceRoot;o!=null&&(a=cT.relative(o,a));var l=new $dt,A=new $dt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){var I=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});I.source!=null&&(f.source=I.source,n!=null&&(f.source=cT.join(n,f.source)),o!=null&&(f.source=cT.relative(o,f.source)),f.originalLine=I.line,f.originalColumn=I.column,I.name!=null&&(f.name=I.name))}var C=f.source;C!=null&&!l.has(C)&&l.add(C);var b=f.name;b!=null&&!A.has(b)&&A.add(b)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){var I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=cT.join(n,f)),o!=null&&(f=cT.relative(o,f)),this.setSourceContent(f,I))},this)};TM.prototype._validateMapping=function(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("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(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}};TM.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray(),N=0,B=E.length;N0){if(!cT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=GMe.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=GMe.encode(b-l),l=b,f+=GMe.encode(I.originalLine-1-a),a=I.originalLine-1,f+=GMe.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=GMe.encode(C-o),o=C)),A+=f}return A};TM.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=cT.relative(r,n));var a=cT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)};TM.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};TM.prototype.toString=function(){return JSON.stringify(this.toJSON())};kOn.SourceMapGenerator=TM});var xOn=H(LIe=>{LIe.GREATEST_LOWER_BOUND=1;LIe.LEAST_UPPER_BOUND=2;function Dfr(e,t,r,n,a,o){var l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?Dfr(l,t,r,n,a,o):o==LIe.LEAST_UPPER_BOUND?t1?Dfr(e,l,r,n,a,o):o==LIe.LEAST_UPPER_BOUND?l:e<0?-1:e}LIe.search=function(t,r,n,a){if(r.length===0)return-1;var o=Dfr(-1,r.length,t,r,n,a||LIe.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var FOn=H(GOn=>{function kfr(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function MQo(e,t){return Math.round(e+Math.random()*(t-e))}function xfr(e,t,r,n){if(r{var od=gBe(),Gfr=xOn(),ABe=Rfr().ArraySet,HQo=vfr(),FMe=FOn().quickSort;function W1(e,t){var r=e;return typeof e=="string"&&(r=od.parseSourceMapInput(e)),r.sections!=null?new RX(r,t):new kk(r,t)}W1.fromSourceMap=function(e,t){return kk.fromSourceMap(e,t)};W1.prototype._version=3;W1.prototype.__generatedMappings=null;Object.defineProperty(W1.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});W1.prototype.__originalMappings=null;Object.defineProperty(W1.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});W1.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};W1.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};W1.GENERATED_ORDER=1;W1.ORIGINAL_ORDER=2;W1.GREATEST_LOWER_BOUND=1;W1.LEAST_UPPER_BOUND=2;W1.prototype.eachMapping=function(t,r,n){var a=r||null,o=n||W1.GENERATED_ORDER,l;switch(o){case W1.GENERATED_ORDER:l=this._generatedMappings;break;case W1.ORIGINAL_ORDER:l=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var A=this.sourceRoot;l.map(function(f){var I=f.source===null?null:this._sources.at(f.source);return I=od.computeSourceURL(A,I,this._sourceMapURL),{source:I,generatedLine:f.generatedLine,generatedColumn:f.generatedColumn,originalLine:f.originalLine,originalColumn:f.originalColumn,name:f.name===null?null:this._names.at(f.name)}},this).forEach(t,a)};W1.prototype.allGeneratedPositionsFor=function(t){var r=od.getArg(t,"line"),n={source:od.getArg(t,"source"),originalLine:r,originalColumn:od.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",od.compareByOriginalPositions,Gfr.LEAST_UPPER_BOUND);if(o>=0){var l=this._originalMappings[o];if(t.column===void 0)for(var A=l.originalLine;l&&l.originalLine===A;)a.push({line:od.getArg(l,"generatedLine",null),column:od.getArg(l,"generatedColumn",null),lastColumn:od.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o];else for(var f=l.originalColumn;l&&l.originalLine===r&&l.originalColumn==f;)a.push({line:od.getArg(l,"generatedLine",null),column:od.getArg(l,"generatedColumn",null),lastColumn:od.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o]}return a};ept.SourceMapConsumer=W1;function kk(e,t){var r=e;typeof e=="string"&&(r=od.parseSourceMapInput(e));var n=od.getArg(r,"version"),a=od.getArg(r,"sources"),o=od.getArg(r,"names",[]),l=od.getArg(r,"sourceRoot",null),A=od.getArg(r,"sourcesContent",null),f=od.getArg(r,"mappings"),I=od.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);l&&(l=od.normalize(l)),a=a.map(String).map(od.normalize).map(function(C){return l&&od.isAbsolute(l)&&od.isAbsolute(C)?od.relative(l,C):C}),this._names=ABe.fromArray(o.map(String),!0),this._sources=ABe.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map(function(C){return od.computeSourceURL(l,C,t)}),this.sourceRoot=l,this.sourcesContent=A,this._mappings=f,this._sourceMapURL=t,this.file=I}kk.prototype=Object.create(W1.prototype);kk.prototype.consumer=W1;kk.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=od.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r1&&(F.source=A+J[1],A+=J[1],F.originalLine=o+J[2],o=F.originalLine,F.originalLine+=1,F.originalColumn=l+J[3],l=F.originalColumn,J.length>4&&(F.name=f+J[4],f+=J[4])),B.push(F),typeof F.originalLine=="number"&&N.push(F)}FMe(B,od.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,FMe(N,od.compareByOriginalPositions),this.__originalMappings=N};kk.prototype._findMapping=function(t,r,n,a,o,l){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[a]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[a]);return Gfr.search(t,r,o,l)};kk.prototype.computeColumnSpans=function(){for(var t=0;t=0){var a=this._generatedMappings[n];if(a.generatedLine===r.generatedLine){var o=od.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=od.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var l=od.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:od.getArg(a,"originalLine",null),column:od.getArg(a,"originalColumn",null),name:l}}}return{source:null,line:null,column:null,name:null}};kk.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};kk.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var a=t;this.sourceRoot!=null&&(a=od.relative(this.sourceRoot,a));var o;if(this.sourceRoot!=null&&(o=od.urlParse(this.sourceRoot))){var l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')};kk.prototype.generatedPositionFor=function(t){var r=od.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:od.getArg(t,"line"),originalColumn:od.getArg(t,"column")},a=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",od.compareByOriginalPositions,od.getArg(t,"bias",W1.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===n.source)return{line:od.getArg(o,"generatedLine",null),column:od.getArg(o,"generatedColumn",null),lastColumn:od.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};ept.BasicSourceMapConsumer=kk;function RX(e,t){var r=e;typeof e=="string"&&(r=od.parseSourceMapInput(e));var n=od.getArg(r,"version"),a=od.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new ABe,this._names=new ABe;var o={line:-1,column:0};this._sections=a.map(function(l){if(l.url)throw new Error("Support for url field in sections not implemented.");var A=od.getArg(l,"offset"),f=od.getArg(A,"line"),I=od.getArg(A,"column");if(f{var YQo=Nfr().SourceMapGenerator,tpt=gBe(),QQo=/(\r?\n)/,XQo=10,dBe="$$$isSourceNode$$$";function JO(e,t,r,n,a){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=a??null,this[dBe]=!0,n!=null&&this.add(n)}JO.fromStringWithSourceMap=function(t,r,n){var a=new JO,o=t.split(QQo),l=0,A=function(){var E=B(),N=B()||"";return E+N;function B(){return l=0;r--)this.prepend(t[r]);else if(t[dBe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};JO.prototype.walk=function(t){for(var r,n=0,a=this.children.length;n0){for(r=[],n=0;n{rpt.SourceMapGenerator=Nfr().SourceMapGenerator;rpt.SourceMapConsumer=LOn().SourceMapConsumer;rpt.SourceNode=WOn().SourceNode});var YOn=H((npt,HOn)=>{"use strict";npt.__esModule=!0;var Zfr=LZ(),VIe=void 0;try{(typeof define!="function"||!define.amd)&&(POn=OOn(),VIe=POn.SourceNode)}catch{}var POn;VIe||(VIe=function(e,t,r,n){this.src="",n&&this.add(n)},VIe.prototype={add:function(t){Zfr.isArray(t)&&(t=t.join("")),this.src+=t},prepend:function(t){Zfr.isArray(t)&&(t=t.join("")),this.src=t+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function Ffr(e,t,r){if(Zfr.isArray(e)){for(var n=[],a=0,o=e.length;a{"use strict";ipt.__esModule=!0;function JOn(e){return e&&e.__esModule?e:{default:e}}var QOn=Wdt(),JQo=BM(),Lfr=JOn(JQo),UQo=LZ(),KQo=YOn(),XOn=JOn(KQo);function pBe(e){this.value=e}function fBe(){}fBe.prototype={nameLookup:function(t,r){return this.internalNameLookup(t,r)},depthedLookup:function(t){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(t),")"]},compilerInfo:function(){var t=QOn.COMPILER_REVISION,r=QOn.REVISION_CHANGES[t];return[t,r]},appendToBuffer:function(t,r,n){return UQo.isArray(t)||(t=[t]),t=this.source.wrap(t,r),this.environment.isSimple?["return ",t,";"]:n?["buffer += ",t,";"]:(t.appendToBuffer=!0,t)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(t,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",t,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(t,r,n,a){this.environment=t,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!a,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(t,r),this.useDepths=this.useDepths||t.useDepths||t.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||t.useBlockParams;var o=t.opcodes,l=void 0,A=void 0,f=void 0,I=void 0;for(f=0,I=o.length;f0&&(n+=", "+a.join(", "));var o=0;Object.keys(this.aliases).forEach(function(f){var I=r.aliases[f];I.children&&I.referenceCount>1&&(n+=", alias"+ ++o+"="+f,I.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var l=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&l.push("blockParams"),this.useDepths&&l.push("depths");var A=this.mergeSource(n);return t?(l.push(A),Function.apply(this,l)):this.source.wrap(["function(",l.join(","),`) { +`),this.decorators=this.decorators.merge()));var C=this.createFunctionContext(a);if(this.isChild)return C;var b={compiler:this.compilerInfo(),main:C};this.decorators&&(b.main_d=this.decorators,b.useDecorators=!0);var E=this.context,N=E.programs,B=E.decorators;for(f=0,I=N.length;f0&&(n+=", "+a.join(", "));var o=0;Object.keys(this.aliases).forEach(function(f){var I=r.aliases[f];I.children&&I.referenceCount>1&&(n+=", alias"+ ++o+"="+f,I.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var l=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&l.push("blockParams"),this.useDepths&&l.push("depths");var A=this.mergeSource(n);return t?(l.push(A),Function.apply(this,l)):this.source.wrap(["function(",l.join(","),`) { `,A,"}"])},mergeSource:function(t){var r=this.environment.isSimple,n=!this.forceBuffer,a=void 0,o=void 0,l=void 0,A=void 0;return this.source.each(function(f){f.appendToBuffer?(l?f.prepend(" + "):l=f,A=f):(l&&(o?l.prepend("buffer += "):a=!0,A.add(";"),l=A=void 0),o=!0,r||(n=!1))}),n?l?(l.prepend("return "),A.add(";")):o||this.source.push('return "";'):(t+=", buffer = "+(a?"":this.initializeBuffer()),l?(l.prepend("return buffer + "),A.add(";")):this.source.push("return buffer;")),t&&this.source.prepend("var "+t.substring(2)+(a?"":`; `)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return` lookupProperty = container.lookupProperty || function(parent, propertyName) { @@ -279,32 +279,32 @@ Expecting `+Le.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":Je="Parse erro } return undefined } - `.trim()},blockValue:function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(t,0,n);var a=this.popStack();n.splice(1,0,a),this.push(this.source.functionCall(r,"call",n))},ambiguousBlockValue:function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(t,"call",r),"}"])},appendContent:function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(t){this.lastContext=t},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(t,r,n,a){var o=0;!a&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[o++])):this.pushContext(),this.resolvePath("context",t,o,r,n)},lookupBlockParam:function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(t,r,n){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},resolvePath:function(t,r,n,a,o){var l=this;if(this.options.strict||this.options.assumeObjects){this.push(jQo(this.options.strict&&o,this,r,n,t));return}for(var A=r.length;nthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,n=t.length;r{"use strict";apt.__esModule=!0;function LMe(e){return e&&e.__esModule?e:{default:e}}var zQo=JWn(),qQo=LMe(zQo),$Qo=pfr(),eXo=LMe($Qo),Vfr=oOn(),Wfr=uOn(),tXo=HOn(),rXo=LMe(tXo),nXo=zdt(),iXo=LMe(nXo),sXo=ufr(),oXo=LMe(sXo),aXo=qQo.default.create;function YOn(){var e=aXo();return e.compile=function(t,r){return Wfr.compile(t,r,e)},e.precompile=function(t,r){return Wfr.precompile(t,r,e)},e.AST=eXo.default,e.Compiler=Wfr.Compiler,e.JavaScriptCompiler=rXo.default,e.Parser=Vfr.parser,e.parse=Vfr.parse,e.parseWithoutProcessing=Vfr.parseWithoutProcessing,e}var IBe=YOn();IBe.create=YOn;oXo.default(IBe);IBe.Visitor=iXo.default;IBe.default=IBe;apt.default=IBe;QOn.exports=apt.default});var JOn=H(cpt=>{"use strict";cpt.__esModule=!0;cpt.print=gXo;cpt.PrintVisitor=Mv;function cXo(e){return e&&e.__esModule?e:{default:e}}var lXo=zdt(),uXo=cXo(lXo);function gXo(e){return new Mv().accept(e)}function Mv(){this.padding=0}Mv.prototype=new uXo.default;Mv.prototype.pad=function(e){for(var t="",r=0,n=this.padding;r "+t+" }}")};Mv.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};Mv.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};Mv.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};Mv.prototype.SubExpression=function(e){for(var t=e.params,r=[],n=void 0,a=0,o=t.length;a{"use strict";Object.defineProperty(gpt,"__esModule",{value:!0});gpt.LRUCache=void 0;var mBe=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,oPn=new Set,Pfr=typeof process=="object"&&process?process:{},aPn=(e,t,r,n)=>{typeof Pfr.emitWarning=="function"?Pfr.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)},upt=globalThis.AbortController,sPn=globalThis.AbortSignal;if(typeof upt>"u"){sPn=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,a){this._onabort.push(a)}},upt=class{constructor(){t()}signal=new sPn;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let a of this.signal._onabort)a(n);this.signal.onabort?.(n)}}};let e=Pfr.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,aPn("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var CXo=e=>!oPn.has(e),mzl=Symbol("type"),zoe=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),cPn=e=>zoe(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?CBe:null:null,CBe=class extends Array{constructor(t){super(t),this.fill(0)}},Mfr=class e{heap;length;static#e=!1;static create(t){let r=cPn(t);if(!r)return[];e.#e=!0;let n=new e(t,r);return e.#e=!1,n}constructor(t,r){if(!e.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},Hfr=class e{#e;#t;#n;#r;#i;#s;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#o;#g;#l;#u;#a;#m;#f;#I;#d;#b;#h;#S;#v;#C;#E;#_;#p;static unsafeExposeInternals(t){return{starts:t.#v,ttls:t.#C,sizes:t.#S,keyMap:t.#l,keyList:t.#u,valList:t.#a,next:t.#m,prev:t.#f,get head(){return t.#I},get tail(){return t.#d},free:t.#b,isBackgroundFetch:r=>t.#A(r),backgroundFetch:(r,n,a,o)=>t.#V(r,n,a,o),moveToTail:r=>t.#O(r),indexes:r=>t.#T(r),rindexes:r=>t.#R(r),isStale:r=>t.#y(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#g}get size(){return this.#o}get fetchMethod(){return this.#i}get memoMethod(){return this.#s}get dispose(){return this.#n}get disposeAfter(){return this.#r}constructor(t){let{max:r=0,ttl:n,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:l,updateAgeOnHas:A,allowStale:f,dispose:I,disposeAfter:C,noDisposeOnSet:b,noUpdateTTL:E,maxSize:N=0,maxEntrySize:B=0,sizeCalculation:F,fetchMethod:Q,memoMethod:J,noDeleteOnFetchRejection:ae,noDeleteOnStaleGet:ne,allowStaleOnFetchRejection:ce,allowStaleOnFetchAbort:fe,ignoreFetchAbort:ue}=t;if(r!==0&&!zoe(r))throw new TypeError("max option must be a nonnegative integer");let de=r?cPn(r):Array;if(!de)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=N,this.maxEntrySize=B||this.#t,this.sizeCalculation=F,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(J!==void 0&&typeof J!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#s=J,Q!==void 0&&typeof Q!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#i=Q,this.#_=!!Q,this.#l=new Map,this.#u=new Array(r).fill(void 0),this.#a=new Array(r).fill(void 0),this.#m=new de(r),this.#f=new de(r),this.#I=0,this.#d=0,this.#b=Mfr.create(r),this.#o=0,this.#g=0,typeof I=="function"&&(this.#n=I),typeof C=="function"?(this.#r=C,this.#h=[]):(this.#r=void 0,this.#h=void 0),this.#E=!!this.#n,this.#p=!!this.#r,this.noDisposeOnSet=!!b,this.noUpdateTTL=!!E,this.noDeleteOnFetchRejection=!!ae,this.allowStaleOnFetchRejection=!!ce,this.allowStaleOnFetchAbort=!!fe,this.ignoreFetchAbort=!!ue,this.maxEntrySize!==0){if(this.#t!==0&&!zoe(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!zoe(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#N()}if(this.allowStale=!!f,this.noDeleteOnStaleGet=!!ne,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!A,this.ttlResolution=zoe(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=n||0,this.ttl){if(!zoe(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#B()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let be="LRU_CACHE_UNBOUNDED";CXo(be)&&(oPn.add(be),aPn("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",be,e))}}getRemainingTTL(t){return this.#l.has(t)?1/0:0}#B(){let t=new CBe(this.#e),r=new CBe(this.#e);this.#C=t,this.#v=r,this.#k=(o,l,A=mBe.now())=>{if(r[o]=l!==0?A:0,t[o]=l,l!==0&&this.ttlAutopurge){let f=setTimeout(()=>{this.#y(o)&&this.#D(this.#u[o],"expire")},l+1);f.unref&&f.unref()}},this.#w=o=>{r[o]=t[o]!==0?mBe.now():0},this.#c=(o,l)=>{if(t[l]){let A=t[l],f=r[l];if(!A||!f)return;o.ttl=A,o.start=f,o.now=n||a();let I=o.now-f;o.remainingTTL=A-I}};let n=0,a=()=>{let o=mBe.now();if(this.ttlResolution>0){n=o;let l=setTimeout(()=>n=0,this.ttlResolution);l.unref&&l.unref()}return o};this.getRemainingTTL=o=>{let l=this.#l.get(o);if(l===void 0)return 0;let A=t[l],f=r[l];if(!A||!f)return 1/0;let I=(n||a())-f;return A-I},this.#y=o=>{let l=r[o],A=t[o];return!!A&&!!l&&(n||a())-l>A}}#w=()=>{};#c=()=>{};#k=()=>{};#y=()=>!1;#N(){let t=new CBe(this.#e);this.#g=0,this.#S=t,this.#x=r=>{this.#g-=t[r],t[r]=0},this.#F=(r,n,a,o)=>{if(this.#A(n))return 0;if(!zoe(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(n,r),!zoe(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a},this.#G=(r,n,a)=>{if(t[r]=n,this.#t){let o=this.#t-t[r];for(;this.#g>o;)this.#L(!0)}this.#g+=t[r],a&&(a.entrySize=n,a.totalCalculatedSize=this.#g)}}#x=t=>{};#G=(t,r,n)=>{};#F=(t,r,n,a)=>{if(n||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#T({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#d;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#I));)r=this.#f[r]}*#R({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#I;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#d));)r=this.#m[r]}#Z(t){return t!==void 0&&this.#l.get(this.#u[t])===t}*entries(){for(let t of this.#T())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*rentries(){for(let t of this.#R())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*keys(){for(let t of this.#T()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*rkeys(){for(let t of this.#R()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*values(){for(let t of this.#T())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}*rvalues(){for(let t of this.#R())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,r={}){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;if(o!==void 0&&t(o,this.#u[n],this))return this.get(this.#u[n],r)}}forEach(t,r=this){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}rforEach(t,r=this){for(let n of this.#R()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}purgeStale(){let t=!1;for(let r of this.#R({allowStale:!0}))this.#y(r)&&(this.#D(this.#u[r],"expire"),t=!0);return t}info(t){let r=this.#l.get(t);if(r===void 0)return;let n=this.#a[r],a=this.#A(n)?n.__staleWhileFetching:n;if(a===void 0)return;let o={value:a};if(this.#C&&this.#v){let l=this.#C[r],A=this.#v[r];if(l&&A){let f=l-(mBe.now()-A);o.ttl=f,o.start=Date.now()}}return this.#S&&(o.size=this.#S[r]),o}dump(){let t=[];for(let r of this.#T({allowStale:!0})){let n=this.#u[r],a=this.#a[r],o=this.#A(a)?a.__staleWhileFetching:a;if(o===void 0||n===void 0)continue;let l={value:o};if(this.#C&&this.#v){l.ttl=this.#C[r];let A=mBe.now()-this.#v[r];l.start=Math.floor(Date.now()-A)}this.#S&&(l.size=this.#S[r]),t.unshift([n,l])}return t}load(t){this.clear();for(let[r,n]of t){if(n.start){let a=Date.now()-n.start;n.start=mBe.now()-a}this.set(r,n.value,n)}}set(t,r,n={}){if(r===void 0)return this.delete(t),this;let{ttl:a=this.ttl,start:o,noDisposeOnSet:l=this.noDisposeOnSet,sizeCalculation:A=this.sizeCalculation,status:f}=n,{noUpdateTTL:I=this.noUpdateTTL}=n,C=this.#F(t,r,n.size||0,A);if(this.maxEntrySize&&C>this.maxEntrySize)return f&&(f.set="miss",f.maxEntrySizeExceeded=!0),this.#D(t,"set"),this;let b=this.#o===0?void 0:this.#l.get(t);if(b===void 0)b=this.#o===0?this.#d:this.#b.length!==0?this.#b.pop():this.#o===this.#e?this.#L(!1):this.#o,this.#u[b]=t,this.#a[b]=r,this.#l.set(t,b),this.#m[this.#d]=b,this.#f[b]=this.#d,this.#d=b,this.#o++,this.#G(b,C,f),f&&(f.set="add"),I=!1;else{this.#O(b);let E=this.#a[b];if(r!==E){if(this.#_&&this.#A(E)){E.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:N}=E;N!==void 0&&!l&&(this.#E&&this.#n?.(N,t,"set"),this.#p&&this.#h?.push([N,t,"set"]))}else l||(this.#E&&this.#n?.(E,t,"set"),this.#p&&this.#h?.push([E,t,"set"]));if(this.#x(b),this.#G(b,C,f),this.#a[b]=r,f){f.set="replace";let N=E&&this.#A(E)?E.__staleWhileFetching:E;N!==void 0&&(f.oldValue=N)}}else f&&(f.set="update")}if(a!==0&&!this.#C&&this.#B(),this.#C&&(I||this.#k(b,a,o),f&&this.#c(f,b)),!l&&this.#p&&this.#h){let E=this.#h,N;for(;N=E?.shift();)this.#r?.(...N)}return this}pop(){try{for(;this.#o;){let t=this.#a[this.#I];if(this.#L(!0),this.#A(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#p&&this.#h){let t=this.#h,r;for(;r=t?.shift();)this.#r?.(...r)}}}#L(t){let r=this.#I,n=this.#u[r],a=this.#a[r];return this.#_&&this.#A(a)?a.__abortController.abort(new Error("evicted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(a,n,"evict"),this.#p&&this.#h?.push([a,n,"evict"])),this.#x(r),t&&(this.#u[r]=void 0,this.#a[r]=void 0,this.#b.push(r)),this.#o===1?(this.#I=this.#d=0,this.#b.length=0):this.#I=this.#m[r],this.#l.delete(n),this.#o--,r}has(t,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:a}=r,o=this.#l.get(t);if(o!==void 0){let l=this.#a[o];if(this.#A(l)&&l.__staleWhileFetching===void 0)return!1;if(this.#y(o))a&&(a.has="stale",this.#c(a,o));else return n&&this.#w(o),a&&(a.has="hit",this.#c(a,o)),!0}else a&&(a.has="miss");return!1}peek(t,r={}){let{allowStale:n=this.allowStale}=r,a=this.#l.get(t);if(a===void 0||!n&&this.#y(a))return;let o=this.#a[a];return this.#A(o)?o.__staleWhileFetching:o}#V(t,r,n,a){let o=r===void 0?void 0:this.#a[r];if(this.#A(o))return o;let l=new upt,{signal:A}=n;A?.addEventListener("abort",()=>l.abort(A.reason),{signal:l.signal});let f={signal:l.signal,options:n,context:a},I=(F,Q=!1)=>{let{aborted:J}=l.signal,ae=n.ignoreFetchAbort&&F!==void 0;if(n.status&&(J&&!Q?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,ae&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),J&&!ae&&!Q)return b(l.signal.reason);let ne=N;return this.#a[r]===N&&(F===void 0?ne.__staleWhileFetching?this.#a[r]=ne.__staleWhileFetching:this.#D(t,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(t,F,f.options))),F},C=F=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=F),b(F)),b=F=>{let{aborted:Q}=l.signal,J=Q&&n.allowStaleOnFetchAbort,ae=J||n.allowStaleOnFetchRejection,ne=ae||n.noDeleteOnFetchRejection,ce=N;if(this.#a[r]===N&&(!ne||ce.__staleWhileFetching===void 0?this.#D(t,"fetch"):J||(this.#a[r]=ce.__staleWhileFetching)),ae)return n.status&&ce.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),ce.__staleWhileFetching;if(ce.__returned===ce)throw F},E=(F,Q)=>{let J=this.#i?.(t,o,f);J&&J instanceof Promise&&J.then(ae=>F(ae===void 0?void 0:ae),Q),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(F(void 0),n.allowStaleOnFetchAbort&&(F=ae=>I(ae,!0)))})};n.status&&(n.status.fetchDispatched=!0);let N=new Promise(E).then(I,C),B=Object.assign(N,{__abortController:l,__staleWhileFetching:o,__returned:void 0});return r===void 0?(this.set(t,B,{...f.options,status:void 0}),r=this.#l.get(t)):this.#a[r]=B,B}#A(t){if(!this.#_)return!1;let r=t;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof upt}async fetch(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:l=this.ttl,noDisposeOnSet:A=this.noDisposeOnSet,size:f=0,sizeCalculation:I=this.sizeCalculation,noUpdateTTL:C=this.noUpdateTTL,noDeleteOnFetchRejection:b=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:E=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:B=this.allowStaleOnFetchAbort,context:F,forceRefresh:Q=!1,status:J,signal:ae}=r;if(!this.#_)return J&&(J.fetch="get"),this.get(t,{allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:J});let ne={allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:l,noDisposeOnSet:A,size:f,sizeCalculation:I,noUpdateTTL:C,noDeleteOnFetchRejection:b,allowStaleOnFetchRejection:E,allowStaleOnFetchAbort:B,ignoreFetchAbort:N,status:J,signal:ae},ce=this.#l.get(t);if(ce===void 0){J&&(J.fetch="miss");let fe=this.#V(t,ce,ne,F);return fe.__returned=fe}else{let fe=this.#a[ce];if(this.#A(fe)){let De=n&&fe.__staleWhileFetching!==void 0;return J&&(J.fetch="inflight",De&&(J.returnedStale=!0)),De?fe.__staleWhileFetching:fe.__returned=fe}let ue=this.#y(ce);if(!Q&&!ue)return J&&(J.fetch="hit"),this.#O(ce),a&&this.#w(ce),J&&this.#c(J,ce),fe;let de=this.#V(t,ce,ne,F),Se=de.__staleWhileFetching!==void 0&&n;return J&&(J.fetch=ue?"stale":"refresh",Se&&ue&&(J.returnedStale=!0)),Se?de.__staleWhileFetching:de.__returned=de}}async forceFetch(t,r={}){let n=await this.fetch(t,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(t,r={}){let n=this.#s;if(!n)throw new Error("no memoMethod provided to constructor");let{context:a,forceRefresh:o,...l}=r,A=this.get(t,l);if(!o&&A!==void 0)return A;let f=n(t,A,{options:l,context:a});return this.set(t,f,l),f}get(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:l}=r,A=this.#l.get(t);if(A!==void 0){let f=this.#a[A],I=this.#A(f);return l&&this.#c(l,A),this.#y(A)?(l&&(l.get="stale"),I?(l&&n&&f.__staleWhileFetching!==void 0&&(l.returnedStale=!0),n?f.__staleWhileFetching:void 0):(o||this.#D(t,"expire"),l&&n&&(l.returnedStale=!0),n?f:void 0)):(l&&(l.get="hit"),I?f.__staleWhileFetching:(this.#O(A),a&&this.#w(A),f))}else l&&(l.get="miss")}#W(t,r){this.#f[r]=t,this.#m[t]=r}#O(t){t!==this.#d&&(t===this.#I?this.#I=this.#m[t]:this.#W(this.#f[t],this.#m[t]),this.#W(this.#d,t),this.#d=t)}delete(t){return this.#D(t,"delete")}#D(t,r){let n=!1;if(this.#o!==0){let a=this.#l.get(t);if(a!==void 0)if(n=!0,this.#o===1)this.#P(r);else{this.#x(a);let o=this.#a[a];if(this.#A(o)?o.__abortController.abort(new Error("deleted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(o,t,r),this.#p&&this.#h?.push([o,t,r])),this.#l.delete(t),this.#u[a]=void 0,this.#a[a]=void 0,a===this.#d)this.#d=this.#f[a];else if(a===this.#I)this.#I=this.#m[a];else{let l=this.#f[a];this.#m[l]=this.#m[a];let A=this.#m[a];this.#f[A]=this.#f[a]}this.#o--,this.#b.push(a)}}if(this.#p&&this.#h?.length){let a=this.#h,o;for(;o=a?.shift();)this.#r?.(...o)}return n}clear(){return this.#P("delete")}#P(t){for(let r of this.#R({allowStale:!0})){let n=this.#a[r];if(this.#A(n))n.__abortController.abort(new Error("deleted"));else{let a=this.#u[r];this.#E&&this.#n?.(n,a,t),this.#p&&this.#h?.push([n,a,t])}}if(this.#l.clear(),this.#a.fill(void 0),this.#u.fill(void 0),this.#C&&this.#v&&(this.#C.fill(0),this.#v.fill(0)),this.#S&&this.#S.fill(0),this.#I=0,this.#d=0,this.#b.length=0,this.#g=0,this.#o=0,this.#p&&this.#h){let r=this.#h,n;for(;n=r?.shift();)this.#r?.(...n)}}};gpt.LRUCache=Hfr});var gPn=H((_zl,uPn)=>{"use strict";var Y_=(...e)=>e.every(t=>t)?e.join(""):"",cT=e=>e?encodeURIComponent(e):"",lPn=e=>e.toLowerCase().replace(/^\W+|\/|\W+$/g,"").replace(/\W+/g,"-"),_Xo={sshtemplate:({domain:e,user:t,project:r,committish:n})=>`git@${e}:${t}/${r}.git${Y_("#",n)}`,sshurltemplate:({domain:e,user:t,project:r,committish:n})=>`git+ssh://git@${e}/${t}/${r}.git${Y_("#",n)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a,path:o})=>`https://${e}/${t}/${r}${Y_("/",a,"/",cT(n||"HEAD"),"/",o)}`,browsetemplate:({domain:e,user:t,project:r,committish:n,treepath:a})=>`https://${e}/${t}/${r}${Y_("/",a,"/",cT(n))}`,browsetreetemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${cT(n||"HEAD")}/${o}${Y_("#",A(l||""))}`,browseblobtemplate:({domain:e,user:t,project:r,committish:n,blobpath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${cT(n||"HEAD")}/${o}${Y_("#",A(l||""))}`,docstemplate:({domain:e,user:t,project:r,treepath:n,committish:a})=>`https://${e}/${t}/${r}${Y_("/",n,"/",cT(a))}#readme`,httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${Y_(e,"@")}${t}/${r}/${n}.git${Y_("#",a)}`,filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/raw/${cT(n||"HEAD")}/${a}`,shortcuttemplate:({type:e,user:t,project:r,committish:n})=>`${e}:${t}/${r}${Y_("#",n)}`,pathtemplate:({user:e,project:t,committish:r})=>`${e}/${t}${Y_("#",r)}`,bugstemplate:({domain:e,user:t,project:r})=>`https://${e}/${t}/${r}/issues`,hashformat:lPn},qoe={};qoe.github={protocols:["git:","http:","git+ssh:","git+https:","ssh:","https:"],domain:"github.com",treepath:"tree",blobpath:"blob",editpath:"edit",filetemplate:({auth:e,user:t,project:r,committish:n,path:a})=>`https://${Y_(e,"@")}raw.githubusercontent.com/${t}/${r}/${cT(n||"HEAD")}/${a}`,gittemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git://${Y_(e,"@")}${t}/${r}/${n}.git${Y_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://codeload.${e}/${t}/${r}/tar.gz/${cT(n||"HEAD")}`,extract:e=>{let[,t,r,n,a]=e.pathname.split("/",5);if(!(n&&n!=="tree")&&(n||(a=e.hash.slice(1)),r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:a}}};qoe.bitbucket={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"bitbucket.org",treepath:"src",blobpath:"src",editpath:"?mode=edit",edittemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,editpath:l})=>`https://${e}/${t}/${r}${Y_("/",a,"/",cT(n||"HEAD"),"/",o,l)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/get/${cT(n||"HEAD")}.tar.gz`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["get"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};qoe.gitlab={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"gitlab.com",treepath:"tree",blobpath:"tree",editpath:"-/edit",httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${Y_(e,"@")}${t}/${r}/${n}.git${Y_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/repository/archive.tar.gz?ref=${cT(n||"HEAD")}`,extract:e=>{let t=e.pathname.slice(1);if(t.includes("/-/")||t.includes("/archive.tar.gz"))return;let r=t.split("/"),n=r.pop();n.endsWith(".git")&&(n=n.slice(0,-4));let a=r.join("/");if(!(!a||!n))return{user:a,project:n,committish:e.hash.slice(1)}}};qoe.gist={protocols:["git:","git+ssh:","git+https:","ssh:","https:"],domain:"gist.github.com",editpath:"edit",sshtemplate:({domain:e,project:t,committish:r})=>`git@${e}:${t}.git${Y_("#",r)}`,sshurltemplate:({domain:e,project:t,committish:r})=>`git+ssh://git@${e}/${t}.git${Y_("#",r)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a})=>`https://${e}/${t}/${r}${Y_("/",cT(n))}/${a}`,browsetemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${Y_("/",cT(r))}`,browsetreetemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${Y_("/",cT(r))}${Y_("#",a(n))}`,browseblobtemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${Y_("/",cT(r))}${Y_("#",a(n))}`,docstemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${Y_("/",cT(r))}`,httpstemplate:({domain:e,project:t,committish:r})=>`git+https://${e}/${t}.git${Y_("#",r)}`,filetemplate:({user:e,project:t,committish:r,path:n})=>`https://gist.githubusercontent.com/${e}/${t}/raw${Y_("/",cT(r))}/${n}`,shortcuttemplate:({type:e,project:t,committish:r})=>`${e}:${t}${Y_("#",r)}`,pathtemplate:({project:e,committish:t})=>`${e}${Y_("#",t)}`,bugstemplate:({domain:e,project:t})=>`https://${e}/${t}`,gittemplate:({domain:e,project:t,committish:r})=>`git://${e}/${t}.git${Y_("#",r)}`,tarballtemplate:({project:e,committish:t})=>`https://codeload.github.com/gist/${e}/tar.gz/${cT(t||"HEAD")}`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(n!=="raw"){if(!r){if(!t)return;r=t,t=null}return r.endsWith(".git")&&(r=r.slice(0,-4)),{user:t,project:r,committish:e.hash.slice(1)}}},hashformat:function(e){return e&&"file-"+lPn(e)}};qoe.sourcehut={protocols:["git+ssh:","https:"],domain:"git.sr.ht",treepath:"tree",blobpath:"tree",filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/blob/${cT(n)||"HEAD"}/${a}`,httpstemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}.git${Y_("#",n)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/archive/${cT(n)||"HEAD"}.tar.gz`,bugstemplate:()=>null,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["archive"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};for(let[e,t]of Object.entries(qoe))qoe[e]=Object.assign({},_Xo,t);uPn.exports=qoe});var Qfr=H((yzl,dPn)=>{var yXo=Et("url"),Yfr=(e,t,r)=>{let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)},APn=e=>{try{return new yXo.URL(e)}catch{}},bXo=(e,t)=>{let r=e.indexOf(":"),n=e.slice(0,r+1);if(Object.prototype.hasOwnProperty.call(t,n))return e;let a=e.indexOf("@");return a>-1?a>r?`git+ssh://${e}`:e:e.indexOf("//")===r+1?e:`${e.slice(0,r+1)}//${e.slice(r+1)}`},EXo=e=>{let t=Yfr(e,"@","#"),r=Yfr(e,":","#");return r>t&&(e=e.slice(0,r)+"/"+e.slice(r+1)),Yfr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`git+ssh://${e}`),e};dPn.exports=(e,t)=>{let r=t?bXo(e,t):e;return APn(r)||APn(EXo(r))}});var fPn=H((bzl,pPn)=>{"use strict";var SXo=Qfr(),vXo=e=>{let t=e.indexOf("#"),r=e.indexOf("/"),n=e.indexOf("/",r+1),a=e.indexOf(":"),o=/\s/.exec(e),l=e.indexOf("@"),A=!o||t>-1&&o.index>t,f=l===-1||t>-1&&l>t,I=a===-1||t>-1&&a>t,C=n===-1||t>-1&&n>t,b=r>0,E=t>-1?e[t-1]!=="/":!e.endsWith("/"),N=!e.startsWith(".");return A&&b&&E&&N&&f&&I&&C};pPn.exports=(e,t,{gitHosts:r,protocols:n})=>{if(!e)return;let a=vXo(e)?`github:${e}`:e,o=SXo(a,n);if(!o)return;let l=r.byShortcut[o.protocol],A=r.byDomain[o.hostname.startsWith("www.")?o.hostname.slice(4):o.hostname],f=l||A;if(!f)return;let I=r[l||A],C=null;n[o.protocol]?.auth&&(o.username||o.password)&&(C=`${o.username}${o.password?":"+o.password:""}`);let b=null,E=null,N=null,B=null;try{if(l){let F=o.pathname.startsWith("/")?o.pathname.slice(1):o.pathname,Q=F.indexOf("@");Q>-1&&(F=F.slice(Q+1));let J=F.lastIndexOf("/");J>-1?(E=decodeURIComponent(F.slice(0,J)),E||(E=null),N=decodeURIComponent(F.slice(J+1))):N=decodeURIComponent(F),N.endsWith(".git")&&(N=N.slice(0,-4)),o.hash&&(b=decodeURIComponent(o.hash.slice(1))),B="shortcut"}else{if(!I.protocols.includes(o.protocol))return;let F=I.extract(o);if(!F)return;E=F.user&&decodeURIComponent(F.user),N=decodeURIComponent(F.project),b=decodeURIComponent(F.committish),B=n[o.protocol]?.name||o.protocol.slice(0,-1)}}catch(F){if(F instanceof URIError)return;throw F}return[f,E,C,N,b,B,t]}});var Jfr=H((Ezl,IPn)=>{"use strict";var{LRUCache:BXo}=VIe(),wXo=gPn(),TXo=fPn(),RXo=Qfr(),Xfr=new BXo({max:1e3}),Apt=class e{constructor(t,r,n,a,o,l,A={}){Object.assign(this,e.#e[t],{type:t,user:r,auth:n,project:a,committish:o,default:l,opts:A})}static#e={byShortcut:{},byDomain:{}};static#t={"git+ssh:":{name:"sshurl"},"ssh:":{name:"sshurl"},"git+https:":{name:"https",auth:!0},"git:":{auth:!0},"http:":{auth:!0},"https:":{auth:!0},"git+http:":{auth:!0}};static addHost(t,r){e.#e[t]=r,e.#e.byDomain[r.domain]=t,e.#e.byShortcut[`${t}:`]=t,e.#t[`${t}:`]={name:t}}static fromUrl(t,r){if(typeof t!="string")return;let n=t+JSON.stringify(r||{});if(!Xfr.has(n)){let a=TXo(t,r,{gitHosts:e.#e,protocols:e.#t});Xfr.set(n,a?new e(...a):void 0)}return Xfr.get(n)}static parseUrl(t){return RXo(t)}#n(t,r){if(typeof t!="function")return null;let n={...this,...this.opts,...r};n.path||(n.path=""),n.path.startsWith("/")&&(n.path=n.path.slice(1)),n.noCommittish&&(n.committish=null);let a=t(n);return n.noGitPlus&&a.startsWith("git+")?a.slice(4):a}hash(){return this.committish?`#${this.committish}`:""}ssh(t){return this.#n(this.sshtemplate,t)}sshurl(t){return this.#n(this.sshurltemplate,t)}browse(t,...r){return typeof t!="string"?this.#n(this.browsetemplate,t):typeof r[0]!="string"?this.#n(this.browsetreetemplate,{...r[0],path:t}):this.#n(this.browsetreetemplate,{...r[1],fragment:r[0],path:t})}browseFile(t,...r){return typeof r[0]!="string"?this.#n(this.browseblobtemplate,{...r[0],path:t}):this.#n(this.browseblobtemplate,{...r[1],fragment:r[0],path:t})}docs(t){return this.#n(this.docstemplate,t)}bugs(t){return this.#n(this.bugstemplate,t)}https(t){return this.#n(this.httpstemplate,t)}git(t){return this.#n(this.gittemplate,t)}shortcut(t){return this.#n(this.shortcuttemplate,t)}path(t){return this.#n(this.pathtemplate,t)}tarball(t){return this.#n(this.tarballtemplate,{...t,noCommittish:!1})}file(t,r){return this.#n(this.filetemplate,{...r,path:t})}edit(t,r){return this.#n(this.edittemplate,{...r,path:t})}getDefaultRepresentation(){return this.default}toString(t){return this.default&&typeof this[this.default]=="function"?this[this.default](t):this.sshurl(t)}};for(let[e,t]of Object.entries(wXo))Apt.addHost(e,t);IPn.exports=Apt});var mPn=H((Szl,hPn)=>{"use strict";var{URL:NXo}=Et("url"),DXo=new RegExp(/^\/?:?([/\w-.]+)\/([\w-.]+)\/?$/),kXo=new RegExp(/^\/repos\/([\w-.]+)\/([\w-.]+)\/(?:tarball|zipball)(?:\/.+)?$/),xXo=new RegExp(/^\/([\w-.]+)\/([\w-.]+)\/(?:legacy\.(?:zip|tar\.gz))(?:\/.+)?$/);hPn.exports=e=>{let t=e.replace(/^git@/,"https://git@").replace(/git@([.\w]+):(?!\d)/,"git@$1/").replace(/\.git$/,""),r=new NXo(t,"https://example.com/"),n=a=>({browse:FXo(r,a),domain:r.host,project:a[2]||null,type:GXo(r),user:a[1]||null});if(r.host){if(r.host.includes("api.github.com")){let a=kXo.exec(r.pathname)||[];return n(a)}if(r.host.includes("codeload.github.com")){let a=xXo.exec(r.pathname)||[];return n(a)}}return n(DXo.exec(r.pathname)||[])};function GXo({host:e}){return typeof e!="string"?null:e.indexOf("github")!==-1?"github":e.indexOf("gitlab")!==-1?"gitlab":null}function FXo(e,t){let n=`${e.protocol==="http:"?"http:":"https:"}//${e.host}/${t[1]}/${t[2]}`;return()=>n}});var Ufr=H((wzl,LXo)=>{LXo.exports=["0BSD","3D-Slicer-1.0","AAL","ADSL","AFL-1.1","AFL-1.2","AFL-2.0","AFL-2.1","AFL-3.0","AGPL-1.0-only","AGPL-1.0-or-later","AGPL-3.0-only","AGPL-3.0-or-later","AMD-newlib","AMDPLPA","AML","AML-glslang","AMPAS","ANTLR-PD","ANTLR-PD-fallback","APAFML","APL-1.0","APSL-1.0","APSL-1.1","APSL-1.2","APSL-2.0","ASWF-Digital-Assets-1.0","ASWF-Digital-Assets-1.1","Abstyles","AdaCore-doc","Adobe-2006","Adobe-Display-PostScript","Adobe-Glyph","Adobe-Utopia","Afmparse","Aladdin","Apache-1.0","Apache-1.1","Apache-2.0","App-s2p","Arphic-1999","Artistic-1.0","Artistic-1.0-Perl","Artistic-1.0-cl8","Artistic-2.0","BSD-1-Clause","BSD-2-Clause","BSD-2-Clause-Darwin","BSD-2-Clause-Patent","BSD-2-Clause-Views","BSD-2-Clause-first-lines","BSD-3-Clause","BSD-3-Clause-Attribution","BSD-3-Clause-Clear","BSD-3-Clause-HP","BSD-3-Clause-LBNL","BSD-3-Clause-Modification","BSD-3-Clause-No-Military-License","BSD-3-Clause-No-Nuclear-License","BSD-3-Clause-No-Nuclear-License-2014","BSD-3-Clause-No-Nuclear-Warranty","BSD-3-Clause-Open-MPI","BSD-3-Clause-Sun","BSD-3-Clause-acpica","BSD-3-Clause-flex","BSD-4-Clause","BSD-4-Clause-Shortened","BSD-4-Clause-UC","BSD-4.3RENO","BSD-4.3TAHOE","BSD-Advertising-Acknowledgement","BSD-Attribution-HPND-disclaimer","BSD-Inferno-Nettverk","BSD-Protection","BSD-Source-Code","BSD-Source-beginning-file","BSD-Systemics","BSD-Systemics-W3Works","BSL-1.0","BUSL-1.1","Baekmuk","Bahyph","Barr","Beerware","BitTorrent-1.0","BitTorrent-1.1","Bitstream-Charter","Bitstream-Vera","BlueOak-1.0.0","Boehm-GC","Borceux","Brian-Gladman-2-Clause","Brian-Gladman-3-Clause","C-UDA-1.0","CAL-1.0","CAL-1.0-Combined-Work-Exception","CATOSL-1.1","CC-BY-1.0","CC-BY-2.0","CC-BY-2.5","CC-BY-2.5-AU","CC-BY-3.0","CC-BY-3.0-AT","CC-BY-3.0-AU","CC-BY-3.0-DE","CC-BY-3.0-IGO","CC-BY-3.0-NL","CC-BY-3.0-US","CC-BY-4.0","CC-BY-NC-1.0","CC-BY-NC-2.0","CC-BY-NC-2.5","CC-BY-NC-3.0","CC-BY-NC-3.0-DE","CC-BY-NC-4.0","CC-BY-NC-ND-1.0","CC-BY-NC-ND-2.0","CC-BY-NC-ND-2.5","CC-BY-NC-ND-3.0","CC-BY-NC-ND-3.0-DE","CC-BY-NC-ND-3.0-IGO","CC-BY-NC-ND-4.0","CC-BY-NC-SA-1.0","CC-BY-NC-SA-2.0","CC-BY-NC-SA-2.0-DE","CC-BY-NC-SA-2.0-FR","CC-BY-NC-SA-2.0-UK","CC-BY-NC-SA-2.5","CC-BY-NC-SA-3.0","CC-BY-NC-SA-3.0-DE","CC-BY-NC-SA-3.0-IGO","CC-BY-NC-SA-4.0","CC-BY-ND-1.0","CC-BY-ND-2.0","CC-BY-ND-2.5","CC-BY-ND-3.0","CC-BY-ND-3.0-DE","CC-BY-ND-4.0","CC-BY-SA-1.0","CC-BY-SA-2.0","CC-BY-SA-2.0-UK","CC-BY-SA-2.1-JP","CC-BY-SA-2.5","CC-BY-SA-3.0","CC-BY-SA-3.0-AT","CC-BY-SA-3.0-DE","CC-BY-SA-3.0-IGO","CC-BY-SA-4.0","CC-PDDC","CC0-1.0","CDDL-1.0","CDDL-1.1","CDL-1.0","CDLA-Permissive-1.0","CDLA-Permissive-2.0","CDLA-Sharing-1.0","CECILL-1.0","CECILL-1.1","CECILL-2.0","CECILL-2.1","CECILL-B","CECILL-C","CERN-OHL-1.1","CERN-OHL-1.2","CERN-OHL-P-2.0","CERN-OHL-S-2.0","CERN-OHL-W-2.0","CFITSIO","CMU-Mach","CMU-Mach-nodoc","CNRI-Jython","CNRI-Python","CNRI-Python-GPL-Compatible","COIL-1.0","CPAL-1.0","CPL-1.0","CPOL-1.02","CUA-OPL-1.0","Caldera","Caldera-no-preamble","Catharon","ClArtistic","Clips","Community-Spec-1.0","Condor-1.1","Cornell-Lossless-JPEG","Cronyx","Crossword","CrystalStacker","Cube","D-FSL-1.0","DEC-3-Clause","DL-DE-BY-2.0","DL-DE-ZERO-2.0","DOC","DRL-1.0","DRL-1.1","DSDP","DocBook-Schema","DocBook-XML","Dotseqn","ECL-1.0","ECL-2.0","EFL-1.0","EFL-2.0","EPICS","EPL-1.0","EPL-2.0","EUDatagrid","EUPL-1.0","EUPL-1.1","EUPL-1.2","Elastic-2.0","Entessa","ErlPL-1.1","Eurosym","FBM","FDK-AAC","FSFAP","FSFAP-no-warranty-disclaimer","FSFUL","FSFULLR","FSFULLRWD","FTL","Fair","Ferguson-Twofish","Frameworx-1.0","FreeBSD-DOC","FreeImage","Furuseth","GCR-docs","GD","GFDL-1.1-invariants-only","GFDL-1.1-invariants-or-later","GFDL-1.1-no-invariants-only","GFDL-1.1-no-invariants-or-later","GFDL-1.1-only","GFDL-1.1-or-later","GFDL-1.2-invariants-only","GFDL-1.2-invariants-or-later","GFDL-1.2-no-invariants-only","GFDL-1.2-no-invariants-or-later","GFDL-1.2-only","GFDL-1.2-or-later","GFDL-1.3-invariants-only","GFDL-1.3-invariants-or-later","GFDL-1.3-no-invariants-only","GFDL-1.3-no-invariants-or-later","GFDL-1.3-only","GFDL-1.3-or-later","GL2PS","GLWTPL","GPL-1.0-only","GPL-1.0-or-later","GPL-2.0-only","GPL-2.0-or-later","GPL-3.0-only","GPL-3.0-or-later","Giftware","Glide","Glulxe","Graphics-Gems","Gutmann","HIDAPI","HP-1986","HP-1989","HPND","HPND-DEC","HPND-Fenneberg-Livingston","HPND-INRIA-IMAG","HPND-Intel","HPND-Kevlin-Henney","HPND-MIT-disclaimer","HPND-Markus-Kuhn","HPND-Netrek","HPND-Pbmplus","HPND-UC","HPND-UC-export-US","HPND-doc","HPND-doc-sell","HPND-export-US","HPND-export-US-acknowledgement","HPND-export-US-modify","HPND-export2-US","HPND-merchantability-variant","HPND-sell-MIT-disclaimer-xserver","HPND-sell-regexpr","HPND-sell-variant","HPND-sell-variant-MIT-disclaimer","HPND-sell-variant-MIT-disclaimer-rev","HTMLTIDY","HaskellReport","Hippocratic-2.1","IBM-pibs","ICU","IEC-Code-Components-EULA","IJG","IJG-short","IPA","IPL-1.0","ISC","ISC-Veillard","ImageMagick","Imlib2","Info-ZIP","Inner-Net-2.0","Intel","Intel-ACPI","Interbase-1.0","JPL-image","JPNIC","JSON","Jam","JasPer-2.0","Kastrup","Kazlib","Knuth-CTAN","LAL-1.2","LAL-1.3","LGPL-2.0-only","LGPL-2.0-or-later","LGPL-2.1-only","LGPL-2.1-or-later","LGPL-3.0-only","LGPL-3.0-or-later","LGPLLR","LOOP","LPD-document","LPL-1.0","LPL-1.02","LPPL-1.0","LPPL-1.1","LPPL-1.2","LPPL-1.3a","LPPL-1.3c","LZMA-SDK-9.11-to-9.20","LZMA-SDK-9.22","Latex2e","Latex2e-translated-notice","Leptonica","LiLiQ-P-1.1","LiLiQ-R-1.1","LiLiQ-Rplus-1.1","Libpng","Linux-OpenIB","Linux-man-pages-1-para","Linux-man-pages-copyleft","Linux-man-pages-copyleft-2-para","Linux-man-pages-copyleft-var","Lucida-Bitmap-Fonts","MIT","MIT-0","MIT-CMU","MIT-Festival","MIT-Khronos-old","MIT-Modern-Variant","MIT-Wu","MIT-advertising","MIT-enna","MIT-feh","MIT-open-group","MIT-testregex","MITNFA","MMIXware","MPEG-SSG","MPL-1.0","MPL-1.1","MPL-2.0","MPL-2.0-no-copyleft-exception","MS-LPL","MS-PL","MS-RL","MTLL","Mackerras-3-Clause","Mackerras-3-Clause-acknowledgment","MakeIndex","Martin-Birgmeier","McPhee-slideshow","Minpack","MirOS","Motosoto","MulanPSL-1.0","MulanPSL-2.0","Multics","Mup","NAIST-2003","NASA-1.3","NBPL-1.0","NCBI-PD","NCGL-UK-2.0","NCL","NCSA","NGPL","NICTA-1.0","NIST-PD","NIST-PD-fallback","NIST-Software","NLOD-1.0","NLOD-2.0","NLPL","NOSL","NPL-1.0","NPL-1.1","NPOSL-3.0","NRL","NTP","NTP-0","Naumen","NetCDF","Newsletr","Nokia","Noweb","O-UDA-1.0","OAR","OCCT-PL","OCLC-2.0","ODC-By-1.0","ODbL-1.0","OFFIS","OFL-1.0","OFL-1.0-RFN","OFL-1.0-no-RFN","OFL-1.1","OFL-1.1-RFN","OFL-1.1-no-RFN","OGC-1.0","OGDL-Taiwan-1.0","OGL-Canada-2.0","OGL-UK-1.0","OGL-UK-2.0","OGL-UK-3.0","OGTSL","OLDAP-1.1","OLDAP-1.2","OLDAP-1.3","OLDAP-1.4","OLDAP-2.0","OLDAP-2.0.1","OLDAP-2.1","OLDAP-2.2","OLDAP-2.2.1","OLDAP-2.2.2","OLDAP-2.3","OLDAP-2.4","OLDAP-2.5","OLDAP-2.6","OLDAP-2.7","OLDAP-2.8","OLFL-1.3","OML","OPL-1.0","OPL-UK-3.0","OPUBL-1.0","OSET-PL-2.1","OSL-1.0","OSL-1.1","OSL-2.0","OSL-2.1","OSL-3.0","OpenPBS-2.3","OpenSSL","OpenSSL-standalone","OpenVision","PADL","PDDL-1.0","PHP-3.0","PHP-3.01","PPL","PSF-2.0","Parity-6.0.0","Parity-7.0.0","Pixar","Plexus","PolyForm-Noncommercial-1.0.0","PolyForm-Small-Business-1.0.0","PostgreSQL","Python-2.0","Python-2.0.1","QPL-1.0","QPL-1.0-INRIA-2004","Qhull","RHeCos-1.1","RPL-1.1","RPL-1.5","RPSL-1.0","RSA-MD","RSCPL","Rdisc","Ruby","Ruby-pty","SAX-PD","SAX-PD-2.0","SCEA","SGI-B-1.0","SGI-B-1.1","SGI-B-2.0","SGI-OpenGL","SGP4","SHL-0.5","SHL-0.51","SISSL","SISSL-1.2","SL","SMLNJ","SMPPL","SNIA","SPL-1.0","SSH-OpenSSH","SSH-short","SSLeay-standalone","SSPL-1.0","SWL","Saxpath","SchemeReport","Sendmail","Sendmail-8.23","SimPL-2.0","Sleepycat","Soundex","Spencer-86","Spencer-94","Spencer-99","SugarCRM-1.1.3","Sun-PPP","Sun-PPP-2000","SunPro","Symlinks","TAPR-OHL-1.0","TCL","TCP-wrappers","TGPPL-1.0","TMate","TORQUE-1.1","TOSL","TPDL","TPL-1.0","TTWL","TTYP0","TU-Berlin-1.0","TU-Berlin-2.0","TermReadKey","UCAR","UCL-1.0","UMich-Merit","UPL-1.0","URT-RLE","Ubuntu-font-1.0","Unicode-3.0","Unicode-DFS-2015","Unicode-DFS-2016","Unicode-TOU","UnixCrypt","Unlicense","VOSTROM","VSL-1.0","Vim","W3C","W3C-19980720","W3C-20150513","WTFPL","Watcom-1.0","Widget-Workshop","Wsuipa","X11","X11-distribute-modifications-variant","X11-swapped","XFree86-1.1","XSkat","Xdebug-1.03","Xerox","Xfig","Xnet","YPL-1.0","YPL-1.1","ZPL-1.1","ZPL-2.0","ZPL-2.1","Zed","Zeeff","Zend-2.0","Zimbra-1.3","Zimbra-1.4","Zlib","any-OSI","bcrypt-Solar-Designer","blessing","bzip2-1.0.6","check-cvs","checkmk","copyleft-next-0.3.0","copyleft-next-0.3.1","curl","cve-tou","diffmark","dtoa","dvipdfm","eGenix","etalab-2.0","fwlw","gSOAP-1.3b","gnuplot","gtkbook","hdparm","iMatix","libpng-2.0","libselinux-1.0","libtiff","libutil-David-Nugent","lsof","magaz","mailprio","metamail","mpi-permissive","mpich2","mplus","pkgconf","pnmstitch","psfrag","psutils","python-ldap","radvd","snprintf","softSurfer","ssh-keyscan","swrule","threeparttable","ulem","w3m","xinetd","xkeyboard-config-Zinoviev","xlock","xpp","xzoom","zlib-acknowledgement"]});var _Pn=H((Tzl,VXo)=>{VXo.exports=["AGPL-1.0","AGPL-3.0","BSD-2-Clause-FreeBSD","BSD-2-Clause-NetBSD","GFDL-1.1","GFDL-1.2","GFDL-1.3","GPL-1.0","GPL-2.0","GPL-2.0-with-GCC-exception","GPL-2.0-with-autoconf-exception","GPL-2.0-with-bison-exception","GPL-2.0-with-classpath-exception","GPL-2.0-with-font-exception","GPL-3.0","GPL-3.0-with-GCC-exception","GPL-3.0-with-autoconf-exception","LGPL-2.0","LGPL-2.1","LGPL-3.0","Net-SNMP","Nunit","StandardML-NJ","bzip2-1.0.5","eCos-2.0","wxWindows"]});var yPn=H((Rzl,WXo)=>{WXo.exports=["389-exception","Asterisk-exception","Autoconf-exception-2.0","Autoconf-exception-3.0","Autoconf-exception-generic","Autoconf-exception-generic-3.0","Autoconf-exception-macro","Bison-exception-1.24","Bison-exception-2.2","Bootloader-exception","Classpath-exception-2.0","CLISP-exception-2.0","cryptsetup-OpenSSL-exception","DigiRule-FOSS-exception","eCos-exception-2.0","Fawkes-Runtime-exception","FLTK-exception","fmt-exception","Font-exception-2.0","freertos-exception-2.0","GCC-exception-2.0","GCC-exception-2.0-note","GCC-exception-3.1","Gmsh-exception","GNAT-exception","GNOME-examples-exception","GNU-compiler-exception","gnu-javamail-exception","GPL-3.0-interface-exception","GPL-3.0-linking-exception","GPL-3.0-linking-source-exception","GPL-CC-1.0","GStreamer-exception-2005","GStreamer-exception-2008","i2p-gpl-java-exception","KiCad-libraries-exception","LGPL-3.0-linking-exception","libpri-OpenH323-exception","Libtool-exception","Linux-syscall-note","LLGPL","LLVM-exception","LZMA-exception","mif-exception","OCaml-LGPL-linking-exception","OCCT-exception-1.0","OpenJDK-assembly-exception-1.0","openvpn-openssl-exception","PS-or-PDF-font-exception-20170817","QPL-1.0-INRIA-2004-exception","Qt-GPL-exception-1.0","Qt-LGPL-exception-1.1","Qwt-exception-1.0","SANE-exception","SHL-2.0","SHL-2.1","stunnel-exception","SWI-exception","Swift-exception","Texinfo-exception","u-boot-exception-2.0","UBDL-exception","Universal-FOSS-exception-1.0","vsftpd-openssl-exception","WxWindows-exception-3.1","x11vnc-openssl-exception"]});var EPn=H((Nzl,bPn)=>{"use strict";var OXo=[].concat(Ufr()).concat(_Pn()),PXo=yPn();bPn.exports=function(e){var t=0;function r(){return t1&&e[t-2]===" ")throw new Error("Space before `+`");return B&&{type:"OPERATOR",string:B}}function l(){return n(/[A-Za-z0-9-.]+/)}function A(){var B=l();if(!B)throw new Error("Expected idstring at offset "+t);return B}function f(){if(n("DocumentRef-")){var B=A();return{type:"DOCUMENTREF",string:B}}}function I(){if(n("LicenseRef-")){var B=A();return{type:"LICENSEREF",string:B}}}function C(){var B=t,F=l();if(OXo.indexOf(F)!==-1)return{type:"LICENSE",string:F};if(PXo.indexOf(F)!==-1)return{type:"EXCEPTION",string:F};t=B}function b(){return o()||f()||I()||C()}for(var E=[];r()&&(a(),!!r());){var N=b();if(!N)throw new Error("Unexpected `"+e[t]+"` at offset "+t);E.push(N)}return E}});var vPn=H((Dzl,SPn)=>{"use strict";SPn.exports=function(e){var t=0;function r(){return t{"use strict";var MXo=EPn(),HXo=vPn();BPn.exports=function(e){return HXo(MXo(e))}});var FPn=H((xzl,GPn)=>{var YXo=Kfr(),QXo=Ufr();function dpt(e){try{return YXo(e),!0}catch{return!1}}function xPn(e,t){var r=t[0].length-e[0].length;return r!==0?r:e[0].toUpperCase().localeCompare(t[0].toUpperCase())}var wPn=[["APGL","AGPL"],["Gpl","GPL"],["GLP","GPL"],["APL","Apache"],["ISD","ISC"],["GLP","GPL"],["IST","ISC"],["Claude","Clause"],[" or later","+"],[" International",""],["GNU","GPL"],["GUN","GPL"],["+",""],["GNU GPL","GPL"],["GNU LGPL","LGPL"],["GNU/GPL","GPL"],["GNU GLP","GPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL"],["GNU Lesser General Public License","LGPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["GNU Lesser General Public License","LGPL-2.1"],["LESSER GENERAL PUBLIC LICENSE","LGPL"],["Lesser General Public License","LGPL"],["LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["Lesser General Public License","LGPL-2.1"],["GNU General Public License","GPL"],["Gnu public license","GPL"],["GNU Public License","GPL"],["GNU GENERAL PUBLIC LICENSE","GPL"],["MTI","MIT"],["Mozilla Public License","MPL"],["Universal Permissive License","UPL"],["WTH","WTF"],["WTFGPL","WTFPL"],["-License",""]].sort(xPn),XXo=0,JXo=1,TPn=[function(e){return e.toUpperCase()},function(e){return e.trim()},function(e){return e.replace(/\./g,"")},function(e){return e.replace(/\s+/g,"")},function(e){return e.replace(/\s+/g,"-")},function(e){return e.replace("v","-")},function(e){return e.replace(/,?\s*(\d)/,"-$1")},function(e){return e.replace(/,?\s*(\d)/,"-$1.0")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2.0")},function(e){return e[0].toUpperCase()+e.slice(1)},function(e){return e.replace("/","-")},function(e){return e.replace(/\s*V\s*(\d)/,"-$1").replace(/(\d)$/,"$1.0")},function(e){return e.indexOf("3.0")!==-1?e+"-or-later":e+"-only"},function(e){return e+"only"},function(e){return e.replace(/(\d)$/,"-$1.0")},function(e){return e.replace(/(-| )?(\d)$/,"-$2-Clause")},function(e){return e.replace(/(-| )clause(-| )(\d)/,"-$3-Clause")},function(e){return e.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i,"BSD-3-Clause")},function(e){return e.replace(/\bSimplified(-| )?BSD((-| )License)?/i,"BSD-2-Clause")},function(e){return e.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i,"BSD-2-Clause-$1BSD")},function(e){return e.replace(/\bClear(-| )?BSD((-| )License)?/i,"BSD-3-Clause-Clear")},function(e){return e.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i,"BSD-4-Clause")},function(e){return"CC-"+e},function(e){return"CC-"+e+"-4.0"},function(e){return e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")},function(e){return"CC-"+e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")+"-4.0"}],jfr=QXo.map(function(e){var t=/^(.*)-\d+\.\d+$/.exec(e);return t?[t[0],t[1]]:[e,null]}).reduce(function(e,t){var r=t[1];return e[r]=e[r]||[],e[r].push(t[0]),e},{}),UXo=Object.keys(jfr).map(function(t){return[t,jfr[t]]}).filter(function(t){return t[1].length===1&&t[0]!==null&&t[0]!=="APL"}).map(function(t){return[t[0],t[1][0]]});jfr=void 0;var RPn=[["UNLI","Unlicense"],["WTF","WTFPL"],["2 CLAUSE","BSD-2-Clause"],["2-CLAUSE","BSD-2-Clause"],["3 CLAUSE","BSD-3-Clause"],["3-CLAUSE","BSD-3-Clause"],["AFFERO","AGPL-3.0-or-later"],["AGPL","AGPL-3.0-or-later"],["APACHE","Apache-2.0"],["ARTISTIC","Artistic-2.0"],["Affero","AGPL-3.0-or-later"],["BEER","Beerware"],["BOOST","BSL-1.0"],["BSD","BSD-2-Clause"],["CDDL","CDDL-1.1"],["ECLIPSE","EPL-1.0"],["FUCK","WTFPL"],["GNU","GPL-3.0-or-later"],["LGPL","LGPL-3.0-or-later"],["GPLV1","GPL-1.0-only"],["GPL-1","GPL-1.0-only"],["GPLV2","GPL-2.0-only"],["GPL-2","GPL-2.0-only"],["GPL","GPL-3.0-or-later"],["MIT +NO-FALSE-ATTRIBS","MITNFA"],["MIT","MIT"],["MPL","MPL-2.0"],["X11","X11"],["ZLIB","Zlib"]].concat(UXo).sort(xPn),KXo=0,jXo=1,NPn=function(e){for(var t=0;t-1)return n[jXo]}return null},kPn=function(e,t){for(var r=0;r-1){var o=e.replace(a,n[JXo]),l=t(o);if(l!==null)return l}}return null};GPn.exports=function(e,t){t=t||{};var r=t.upgrade===void 0?!0:!!t.upgrade;function n(A){return r?zXo(A):A}var a=typeof e=="string"&&e.trim().length!==0;if(!a)throw Error("Invalid argument. Expected non-empty string.");if(e=e.trim(),dpt(e))return n(e);var o=e.replace(/\+$/,"").trim();if(dpt(o))return n(o);var l=NPn(e);return l!==null||(l=kPn(e,function(A){return dpt(A)?A:NPn(A)}),l!==null)||(l=DPn(e),l!==null)||(l=kPn(e,DPn),l!==null)?n(l):null};function zXo(e){return["GPL-1.0","LGPL-1.0","AGPL-1.0","GPL-2.0","LGPL-2.0","AGPL-2.0","LGPL-2.1"].indexOf(e)!==-1?e+"-only":["GPL-1.0+","GPL-2.0+","GPL-3.0+","LGPL-2.0+","LGPL-2.1+","LGPL-3.0+","AGPL-1.0+","AGPL-3.0+"].indexOf(e)!==-1?e.replace(/\+$/,"-or-later"):["GPL-3.0","LGPL-3.0","AGPL-3.0"].indexOf(e)!==-1?e+"-or-later":e}});var WPn=H((Gzl,VPn)=>{var qXo=Kfr(),$Xo=FPn(),ZPn='license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "',e4o=/^SEE LICEN[CS]E IN (.+)$/;function LPn(e,t){return t.slice(0,e.length)===e}function zfr(e){if(e.hasOwnProperty("license")){var t=e.license;return LPn("LicenseRef",t)||LPn("DocumentRef",t)}else return zfr(e.left)||zfr(e.right)}VPn.exports=function(e){var t;try{t=qXo(e)}catch{var r;if(e==="UNLICENSED"||e==="UNLICENCED")return{validForOldPackages:!0,validForNewPackages:!0,unlicensed:!0};if(r=e4o.exec(e))return{validForOldPackages:!0,validForNewPackages:!0,inFile:r[1]};var n={validForOldPackages:!1,validForNewPackages:!1,warnings:[ZPn]};if(e.trim().length!==0){var a=$Xo(e);a&&n.warnings.push('license is similar to the valid expression "'+a+'"')}return n}return zfr(t)?{validForNewPackages:!1,validForOldPackages:!1,spdx:!0,warnings:[ZPn]}:{validForNewPackages:!0,validForOldPackages:!0,spdx:!0}}});var PPn=H((Fzl,OPn)=>{OPn.exports=t4o;function t4o(e){if(!e||e==="ERROR: No README data found!")return;e=e.trim().split(` -`);let t=0;for(;e[t]&&e[t].trim().match(/^(#|$)/);)t++;let r=e.length,n=t+1;for(;n{r4o.exports={topLevel:{dependancies:"dependencies",dependecies:"dependencies",depdenencies:"dependencies",devEependencies:"devDependencies",depends:"dependencies","dev-dependencies":"devDependencies",devDependences:"devDependencies",devDepenencies:"devDependencies",devdependencies:"devDependencies",repostitory:"repository",repo:"repository",prefereGlobal:"preferGlobal",hompage:"homepage",hampage:"homepage",autohr:"author",autor:"author",contributers:"contributors",publicationConfig:"publishConfig",script:"scripts"},bugs:{web:"url",name:"url"},script:{server:"start",tests:"test"}}});var XPn=H((Lzl,QPn)=>{var n4o=a7t(),i4o=c7t(),s4o=WPn(),ppt=Jfr(),o4o=Et("node:module"),a4o=["dependencies","devDependencies","optionalDependencies"],c4o=PPn(),qfr=Et("url"),$oe=MPn(),HPn=e=>e.includes("@")&&e.indexOf("@")"u"&&(t={});var r=t.strict;if(!e.name&&!r){e.name="";return}if(typeof e.name!="string")throw new Error("name field must be a string.");r||(e.name=e.name.trim()),g4o(e.name,r,t.allowLegacyCase),o4o.builtinModules.includes(e.name)&&this.warn("conflictingName",e.name)},fixDescriptionField:function(e){e.description&&typeof e.description!="string"&&(this.warn("nonStringDescription"),delete e.description),e.readme&&!e.description&&(e.description=c4o(e.readme)),e.description===void 0&&delete e.description,e.description||this.warn("missingDescription")},fixReadmeField:function(e){e.readme||(this.warn("missingReadme"),e.readme="ERROR: No README data found!")},fixBugsField:function(e){if(!e.bugs&&e.repository&&e.repository.url){var t=ppt.fromUrl(e.repository.url);t&&t.bugs()&&(e.bugs={url:t.bugs()})}else if(e.bugs){if(typeof e.bugs=="string")HPn(e.bugs)?e.bugs={email:e.bugs}:qfr.parse(e.bugs).protocol?e.bugs={url:e.bugs}:this.warn("nonEmailUrlBugsString");else{h4o(e.bugs,this.warn);var r=e.bugs;e.bugs={},r.url&&(typeof r.url=="string"&&qfr.parse(r.url).protocol?e.bugs.url=r.url:this.warn("nonUrlBugsUrlField")),r.email&&(typeof r.email=="string"&&HPn(r.email)?e.bugs.email=r.email:this.warn("nonEmailBugsEmailField"))}!e.bugs.email&&!e.bugs.url&&(delete e.bugs,this.warn("emptyNormalizedBugs"))}},fixHomepageField:function(e){if(!e.homepage&&e.repository&&e.repository.url){var t=ppt.fromUrl(e.repository.url);t&&t.docs()&&(e.homepage=t.docs())}if(e.homepage){if(typeof e.homepage!="string")return this.warn("nonUrlHomepage"),delete e.homepage;qfr.parse(e.homepage).protocol||(e.homepage="http://"+e.homepage)}},fixLicenseField:function(e){let t=e.license||e.licence;if(!t)return this.warn("missingLicense");if(typeof t!="string"||t.length<1||t.trim()==="")return this.warn("invalidLicense");if(!s4o(t).validForNewPackages)return this.warn("invalidLicense")}};function l4o(e){if(e.charAt(0)!=="@")return!1;var t=e.slice(1).split("/");return t.length!==2?!1:t[0]&&t[1]&&t[0]===encodeURIComponent(t[0])&&t[1]===encodeURIComponent(t[1])}function u4o(e){return!e.match(/[/@\s+%:]/)&&e===encodeURIComponent(e)}function g4o(e,t,r){if(e.charAt(0)==="."||!(l4o(e)||u4o(e))||t&&!r&&e!==e.toLowerCase()||e.toLowerCase()==="node_modules"||e.toLowerCase()==="favicon.ico")throw new Error("Invalid name: "+JSON.stringify(e))}function YPn(e,t){return e.author&&(e.author=t(e.author)),["maintainers","contributors"].forEach(function(r){Array.isArray(e[r])&&(e[r]=e[r].map(t))}),e}function A4o(e){if(typeof e=="string")return e;var t=e.name||"",r=e.url||e.web,n=r?" ("+r+")":"",a=e.email||e.mail,o=a?" <"+a+">":"";return t+o+n}function d4o(e){if(typeof e!="string")return e;var t=e.match(/^([^(<]+)/),r=e.match(/\(([^()]+)\)/),n=e.match(/<([^<>]+)>/),a={};return t&&t[0].trim()&&(a.name=t[0].trim()),n&&(a.email=n[1]),r&&(a.url=r[1]),a}function p4o(e){var t=e.optionalDependencies;if(t){var r=e.dependencies||{};Object.keys(t).forEach(function(n){r[n]=t[n]}),e.dependencies=r}}function f4o(e,t,r){if(!e)return{};if(typeof e=="string"&&(e=e.trim().split(/[\n\r\s\t ,]+/)),!Array.isArray(e))return e;r("deprecatedArrayDependencies",t);var n={};return e.filter(function(a){return typeof a=="string"}).forEach(function(a){a=a.trim().split(/(:?[@\s><=])/);var o=a.shift(),l=a.join("");l=l.trim(),l=l.replace(/^@/,""),n[o]=l}),n}function I4o(e,t){a4o.forEach(function(r){e[r]&&(e[r]=f4o(e[r],r,t))})}function h4o(e,t){e&&Object.keys(e).forEach(function(r){$oe.bugs[r]&&(t("typo",r,$oe.bugs[r],"bugs"),e[$oe.bugs[r]]=e[r],delete e[r])})}});var JPn=H((Vzl,m4o)=>{m4o.exports={repositories:"'repositories' (plural) Not supported. Please pick one as the 'repository' field",missingRepository:"No repository field.",brokenGitUrl:"Probably broken git url: %s",nonObjectScripts:"scripts must be an object",nonStringScript:"script values must be string commands",nonArrayFiles:"Invalid 'files' member",invalidFilename:"Invalid filename in 'files' list: %s",nonArrayBundleDependencies:"Invalid 'bundleDependencies' list. Must be array of package names",nonStringBundleDependency:"Invalid bundleDependencies member: %s",nonDependencyBundleDependency:"Non-dependency in bundleDependencies: %s",nonObjectDependencies:"%s field must be an object",nonStringDependency:"Invalid dependency: %s %s",deprecatedArrayDependencies:"specifying %s as array is deprecated",deprecatedModules:"modules field is deprecated",nonArrayKeywords:"keywords should be an array of strings",nonStringKeyword:"keywords should be an array of strings",conflictingName:"%s is also the name of a node core module.",nonStringDescription:"'description' field should be a string",missingDescription:"No description",missingReadme:"No README data",missingLicense:"No license field.",nonEmailUrlBugsString:"Bug string field must be url, email, or {email,url}",nonUrlBugsUrlField:"bugs.url field must be a string url. Deleted.",nonEmailBugsEmailField:"bugs.email field must be a string email. Deleted.",emptyNormalizedBugs:"Normalized value of bugs field is an empty object. Deleted.",nonUrlHomepage:"homepage field must be a string url. Deleted.",invalidLicense:"license should be a valid SPDX license expression",typo:"%s should probably be %s."}});var jPn=H((Wzl,KPn)=>{var UPn=Et("util"),$fr=JPn();KPn.exports=function(){var e=Array.prototype.slice.call(arguments,0),t=e.shift();if(t==="typo")return C4o.apply(null,e);var r=$fr[t]?$fr[t]:t+": '%s'";return e.unshift(r),UPn.format.apply(null,e)};function C4o(e,t,r){return r&&(e=r+"['"+e+"']",t=r+"['"+t+"']"),UPn.format($fr.typo,e,t)}});var rIr=H((Ozl,$Pn)=>{$Pn.exports=zPn;var eIr=XPn();zPn.fixer=eIr;var _4o=jPn(),y4o=["name","version","description","repository","modules","scripts","files","bin","man","bugs","keywords","readme","homepage","license"],b4o=["dependencies","people","typos"],tIr=y4o.map(function(e){return qPn(e)+"Field"});tIr=tIr.concat(b4o);function zPn(e,t,r){t===!0&&(t=null,r=!0),r||(r=!1),(!t||e.private)&&(t=function(){}),e.scripts&&e.scripts.install==="node-gyp rebuild"&&!e.scripts.preinstall&&(e.gypfile=!0),eIr.warn=function(){t(_4o.apply(null,arguments))},tIr.forEach(function(n){eIr["fix"+qPn(n)](e,r)}),e._id=e.name+"@"+e.version}function qPn(e){return e.charAt(0).toUpperCase()+e.slice(1)}});var hpt=H((Yzl,nIr)=>{var Ipt=process||{},n3n=Ipt.argv||[],fpt=Ipt.env||{},B4o=!(fpt.NO_COLOR||n3n.includes("--no-color"))&&(!!fpt.FORCE_COLOR||n3n.includes("--color")||Ipt.platform==="win32"||(Ipt.stdout||{}).isTTY&&fpt.TERM!=="dumb"||!!fpt.CI),w4o=(e,t,r=e)=>n=>{let a=""+n,o=a.indexOf(t,e.length);return~o?e+T4o(a,t,r,o)+t:e+a+t},T4o=(e,t,r,n)=>{let a="",o=0;do a+=e.substring(o,n)+r,o=n+t.length,n=e.indexOf(t,o);while(~n);return a+e.substring(o)},i3n=(e=B4o)=>{let t=e?w4o:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};nIr.exports=i3n();nIr.exports.createColors=i3n});var iIr=H(mpt=>{Object.defineProperty(mpt,"__esModule",{value:!0});mpt.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;mpt.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var l3n=H(VMe=>{"use strict";Object.defineProperty(VMe,"__esModule",{value:!0});VMe.isIdentifierChar=c3n;VMe.isIdentifierName=k4o;VMe.isIdentifierStart=a3n;var oIr="\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-\u1C8A\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-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\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",s3n="\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\u0897-\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\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\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\uFF65",R4o=new RegExp("["+oIr+"]"),N4o=new RegExp("["+oIr+s3n+"]");oIr=s3n=null;var o3n=[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,4,51,13,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,39,27,10,22,251,41,7,1,17,2,60,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,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,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,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,229,29,3,0,496,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,16,621,2467,541,1507,4938,6,4191],D4o=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,343,9,54,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,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function sIr(e,t){let r=65536;for(let n=0,a=t.length;ne)return!1;if(r+=t[n+1],r>=e)return!0}return!1}function a3n(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&R4o.test(String.fromCharCode(e)):sIr(e,o3n)}function c3n(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&N4o.test(String.fromCharCode(e)):sIr(e,o3n)||sIr(e,D4o)}function k4o(e){let t=!0;for(let r=0;r{"use strict";Object.defineProperty(WIe,"__esModule",{value:!0});WIe.isKeyword=L4o;WIe.isReservedWord=u3n;WIe.isStrictBindOnlyReservedWord=A3n;WIe.isStrictBindReservedWord=Z4o;WIe.isStrictReservedWord=g3n;var aIr={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"]},x4o=new Set(aIr.keyword),G4o=new Set(aIr.strict),F4o=new Set(aIr.strictBind);function u3n(e,t){return t&&e==="await"||e==="enum"}function g3n(e,t){return u3n(e,t)||G4o.has(e)}function A3n(e){return F4o.has(e)}function Z4o(e,t){return g3n(e,t)||A3n(e)}function L4o(e){return x4o.has(e)}});var lIr=H(y8=>{"use strict";Object.defineProperty(y8,"__esModule",{value:!0});Object.defineProperty(y8,"isIdentifierChar",{enumerable:!0,get:function(){return cIr.isIdentifierChar}});Object.defineProperty(y8,"isIdentifierName",{enumerable:!0,get:function(){return cIr.isIdentifierName}});Object.defineProperty(y8,"isIdentifierStart",{enumerable:!0,get:function(){return cIr.isIdentifierStart}});Object.defineProperty(y8,"isKeyword",{enumerable:!0,get:function(){return WMe.isKeyword}});Object.defineProperty(y8,"isReservedWord",{enumerable:!0,get:function(){return WMe.isReservedWord}});Object.defineProperty(y8,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return WMe.isStrictBindOnlyReservedWord}});Object.defineProperty(y8,"isStrictBindReservedWord",{enumerable:!0,get:function(){return WMe.isStrictBindReservedWord}});Object.defineProperty(y8,"isStrictReservedWord",{enumerable:!0,get:function(){return WMe.isStrictReservedWord}});var cIr=l3n(),WMe=d3n()});var E3n=H(OMe=>{"use strict";Object.defineProperty(OMe,"__esModule",{value:!0});var uIr=hpt(),p3n=iIr(),f3n=lIr();function V4o(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:uIr.isColorSupported}var Cpt=(e,t)=>r=>e(t(r));function m3n(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:Cpt(Cpt(e.white,e.bgRed),e.bold),gutter:e.gray,marker:Cpt(e.red,e.bold),message:Cpt(e.red,e.bold),reset:e.reset}}var W4o=m3n(uIr.createColors(!0)),O4o=m3n(uIr.createColors(!1));function C3n(e){return e?W4o:O4o}var P4o=new Set(["as","async","from","get","of","set"]),M4o=/\r\n|[\n\r\u2028\u2029]/,H4o=/^[()[\]{}]$/,_3n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if(f3n.isKeyword(r.value)||f3n.isStrictReservedWord(r.value,!0)||P4o.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="t[n](o)).join(` -`):r+=a;return r}var I3n=!1,h3n=/\r\n|[\n\r\u2028\u2029]/;function Y4o(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let J=t[Q-1].length;B[Q]=[f,J-f+1]}else if(F===N)B[Q]=[0,C];else{let J=t[Q-F].length;B[Q]=[0,J]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function b3n(e,t,r={}){let n=r.forceColor||V4o()&&r.highlightCode,a=C3n(n),o=e.split(h3n),{start:l,end:A,markerLines:f}=Y4o(t,o,r),I=t.start&&typeof t.start.column=="number",C=String(A).length,E=(n?y3n(e):e).split(h3n,A).slice(l,A).map((N,B)=>{let F=l+1+B,J=` ${` ${F}`.slice(-C)} |`,ae=f[F],ne=!f[F+1];if(ae){let ce="";if(Array.isArray(ae)){let fe=N.slice(0,Math.max(ae[0]-1,0)).replace(/[^\t]/g," "),ue=ae[1]||1;ce=[` + `.trim()},blockValue:function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(t,0,n);var a=this.popStack();n.splice(1,0,a),this.push(this.source.functionCall(r,"call",n))},ambiguousBlockValue:function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(t,"call",r),"}"])},appendContent:function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(t){this.lastContext=t},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(t,r,n,a){var o=0;!a&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[o++])):this.pushContext(),this.resolvePath("context",t,o,r,n)},lookupBlockParam:function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(t,r,n){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},resolvePath:function(t,r,n,a,o){var l=this;if(this.options.strict||this.options.assumeObjects){this.push(jQo(this.options.strict&&o,this,r,n,t));return}for(var A=r.length;nthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,n=t.length;r{"use strict";spt.__esModule=!0;function ZMe(e){return e&&e.__esModule?e:{default:e}}var zQo=$Wn(),qQo=ZMe(zQo),$Qo=pfr(),eXo=ZMe($Qo),Vfr=AOn(),Wfr=IOn(),tXo=KOn(),rXo=ZMe(tXo),nXo=Kdt(),iXo=ZMe(nXo),sXo=ufr(),oXo=ZMe(sXo),aXo=qQo.default.create;function jOn(){var e=aXo();return e.compile=function(t,r){return Wfr.compile(t,r,e)},e.precompile=function(t,r){return Wfr.precompile(t,r,e)},e.AST=eXo.default,e.Compiler=Wfr.Compiler,e.JavaScriptCompiler=rXo.default,e.Parser=Vfr.parser,e.parse=Vfr.parse,e.parseWithoutProcessing=Vfr.parseWithoutProcessing,e}var IBe=jOn();IBe.create=jOn;oXo.default(IBe);IBe.Visitor=iXo.default;IBe.default=IBe;spt.default=IBe;zOn.exports=spt.default});var $On=H(opt=>{"use strict";opt.__esModule=!0;opt.print=gXo;opt.PrintVisitor=Hv;function cXo(e){return e&&e.__esModule?e:{default:e}}var lXo=Kdt(),uXo=cXo(lXo);function gXo(e){return new Hv().accept(e)}function Hv(){this.padding=0}Hv.prototype=new uXo.default;Hv.prototype.pad=function(e){for(var t="",r=0,n=this.padding;r "+t+" }}")};Hv.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};Hv.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};Hv.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};Hv.prototype.SubExpression=function(e){for(var t=e.params,r=[],n=void 0,a=0,o=t.length;a{"use strict";Object.defineProperty(lpt,"__esModule",{value:!0});lpt.LRUCache=void 0;var mBe=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,APn=new Set,Pfr=typeof process=="object"&&process?process:{},dPn=(e,t,r,n)=>{typeof Pfr.emitWarning=="function"?Pfr.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)},cpt=globalThis.AbortController,gPn=globalThis.AbortSignal;if(typeof cpt>"u"){gPn=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,a){this._onabort.push(a)}},cpt=class{constructor(){t()}signal=new gPn;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let a of this.signal._onabort)a(n);this.signal.onabort?.(n)}}};let e=Pfr.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,dPn("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var CXo=e=>!APn.has(e),aql=Symbol("type"),qoe=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),pPn=e=>qoe(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?CBe:null:null,CBe=class extends Array{constructor(t){super(t),this.fill(0)}},Mfr=class e{heap;length;static#e=!1;static create(t){let r=pPn(t);if(!r)return[];e.#e=!0;let n=new e(t,r);return e.#e=!1,n}constructor(t,r){if(!e.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},Hfr=class e{#e;#t;#n;#r;#i;#s;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#o;#g;#l;#u;#a;#m;#f;#I;#d;#b;#h;#S;#v;#C;#E;#_;#p;static unsafeExposeInternals(t){return{starts:t.#v,ttls:t.#C,sizes:t.#S,keyMap:t.#l,keyList:t.#u,valList:t.#a,next:t.#m,prev:t.#f,get head(){return t.#I},get tail(){return t.#d},free:t.#b,isBackgroundFetch:r=>t.#A(r),backgroundFetch:(r,n,a,o)=>t.#V(r,n,a,o),moveToTail:r=>t.#O(r),indexes:r=>t.#T(r),rindexes:r=>t.#R(r),isStale:r=>t.#y(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#g}get size(){return this.#o}get fetchMethod(){return this.#i}get memoMethod(){return this.#s}get dispose(){return this.#n}get disposeAfter(){return this.#r}constructor(t){let{max:r=0,ttl:n,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:l,updateAgeOnHas:A,allowStale:f,dispose:I,disposeAfter:C,noDisposeOnSet:b,noUpdateTTL:E,maxSize:N=0,maxEntrySize:B=0,sizeCalculation:F,fetchMethod:Q,memoMethod:J,noDeleteOnFetchRejection:ae,noDeleteOnStaleGet:ne,allowStaleOnFetchRejection:ce,allowStaleOnFetchAbort:fe,ignoreFetchAbort:ue}=t;if(r!==0&&!qoe(r))throw new TypeError("max option must be a nonnegative integer");let de=r?pPn(r):Array;if(!de)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=N,this.maxEntrySize=B||this.#t,this.sizeCalculation=F,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(J!==void 0&&typeof J!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#s=J,Q!==void 0&&typeof Q!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#i=Q,this.#_=!!Q,this.#l=new Map,this.#u=new Array(r).fill(void 0),this.#a=new Array(r).fill(void 0),this.#m=new de(r),this.#f=new de(r),this.#I=0,this.#d=0,this.#b=Mfr.create(r),this.#o=0,this.#g=0,typeof I=="function"&&(this.#n=I),typeof C=="function"?(this.#r=C,this.#h=[]):(this.#r=void 0,this.#h=void 0),this.#E=!!this.#n,this.#p=!!this.#r,this.noDisposeOnSet=!!b,this.noUpdateTTL=!!E,this.noDeleteOnFetchRejection=!!ae,this.allowStaleOnFetchRejection=!!ce,this.allowStaleOnFetchAbort=!!fe,this.ignoreFetchAbort=!!ue,this.maxEntrySize!==0){if(this.#t!==0&&!qoe(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!qoe(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#N()}if(this.allowStale=!!f,this.noDeleteOnStaleGet=!!ne,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!A,this.ttlResolution=qoe(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=n||0,this.ttl){if(!qoe(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#B()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let be="LRU_CACHE_UNBOUNDED";CXo(be)&&(APn.add(be),dPn("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",be,e))}}getRemainingTTL(t){return this.#l.has(t)?1/0:0}#B(){let t=new CBe(this.#e),r=new CBe(this.#e);this.#C=t,this.#v=r,this.#k=(o,l,A=mBe.now())=>{if(r[o]=l!==0?A:0,t[o]=l,l!==0&&this.ttlAutopurge){let f=setTimeout(()=>{this.#y(o)&&this.#D(this.#u[o],"expire")},l+1);f.unref&&f.unref()}},this.#w=o=>{r[o]=t[o]!==0?mBe.now():0},this.#c=(o,l)=>{if(t[l]){let A=t[l],f=r[l];if(!A||!f)return;o.ttl=A,o.start=f,o.now=n||a();let I=o.now-f;o.remainingTTL=A-I}};let n=0,a=()=>{let o=mBe.now();if(this.ttlResolution>0){n=o;let l=setTimeout(()=>n=0,this.ttlResolution);l.unref&&l.unref()}return o};this.getRemainingTTL=o=>{let l=this.#l.get(o);if(l===void 0)return 0;let A=t[l],f=r[l];if(!A||!f)return 1/0;let I=(n||a())-f;return A-I},this.#y=o=>{let l=r[o],A=t[o];return!!A&&!!l&&(n||a())-l>A}}#w=()=>{};#c=()=>{};#k=()=>{};#y=()=>!1;#N(){let t=new CBe(this.#e);this.#g=0,this.#S=t,this.#x=r=>{this.#g-=t[r],t[r]=0},this.#F=(r,n,a,o)=>{if(this.#A(n))return 0;if(!qoe(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(n,r),!qoe(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a},this.#G=(r,n,a)=>{if(t[r]=n,this.#t){let o=this.#t-t[r];for(;this.#g>o;)this.#L(!0)}this.#g+=t[r],a&&(a.entrySize=n,a.totalCalculatedSize=this.#g)}}#x=t=>{};#G=(t,r,n)=>{};#F=(t,r,n,a)=>{if(n||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#T({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#d;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#I));)r=this.#f[r]}*#R({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#I;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#d));)r=this.#m[r]}#Z(t){return t!==void 0&&this.#l.get(this.#u[t])===t}*entries(){for(let t of this.#T())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*rentries(){for(let t of this.#R())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*keys(){for(let t of this.#T()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*rkeys(){for(let t of this.#R()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*values(){for(let t of this.#T())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}*rvalues(){for(let t of this.#R())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,r={}){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;if(o!==void 0&&t(o,this.#u[n],this))return this.get(this.#u[n],r)}}forEach(t,r=this){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}rforEach(t,r=this){for(let n of this.#R()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}purgeStale(){let t=!1;for(let r of this.#R({allowStale:!0}))this.#y(r)&&(this.#D(this.#u[r],"expire"),t=!0);return t}info(t){let r=this.#l.get(t);if(r===void 0)return;let n=this.#a[r],a=this.#A(n)?n.__staleWhileFetching:n;if(a===void 0)return;let o={value:a};if(this.#C&&this.#v){let l=this.#C[r],A=this.#v[r];if(l&&A){let f=l-(mBe.now()-A);o.ttl=f,o.start=Date.now()}}return this.#S&&(o.size=this.#S[r]),o}dump(){let t=[];for(let r of this.#T({allowStale:!0})){let n=this.#u[r],a=this.#a[r],o=this.#A(a)?a.__staleWhileFetching:a;if(o===void 0||n===void 0)continue;let l={value:o};if(this.#C&&this.#v){l.ttl=this.#C[r];let A=mBe.now()-this.#v[r];l.start=Math.floor(Date.now()-A)}this.#S&&(l.size=this.#S[r]),t.unshift([n,l])}return t}load(t){this.clear();for(let[r,n]of t){if(n.start){let a=Date.now()-n.start;n.start=mBe.now()-a}this.set(r,n.value,n)}}set(t,r,n={}){if(r===void 0)return this.delete(t),this;let{ttl:a=this.ttl,start:o,noDisposeOnSet:l=this.noDisposeOnSet,sizeCalculation:A=this.sizeCalculation,status:f}=n,{noUpdateTTL:I=this.noUpdateTTL}=n,C=this.#F(t,r,n.size||0,A);if(this.maxEntrySize&&C>this.maxEntrySize)return f&&(f.set="miss",f.maxEntrySizeExceeded=!0),this.#D(t,"set"),this;let b=this.#o===0?void 0:this.#l.get(t);if(b===void 0)b=this.#o===0?this.#d:this.#b.length!==0?this.#b.pop():this.#o===this.#e?this.#L(!1):this.#o,this.#u[b]=t,this.#a[b]=r,this.#l.set(t,b),this.#m[this.#d]=b,this.#f[b]=this.#d,this.#d=b,this.#o++,this.#G(b,C,f),f&&(f.set="add"),I=!1;else{this.#O(b);let E=this.#a[b];if(r!==E){if(this.#_&&this.#A(E)){E.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:N}=E;N!==void 0&&!l&&(this.#E&&this.#n?.(N,t,"set"),this.#p&&this.#h?.push([N,t,"set"]))}else l||(this.#E&&this.#n?.(E,t,"set"),this.#p&&this.#h?.push([E,t,"set"]));if(this.#x(b),this.#G(b,C,f),this.#a[b]=r,f){f.set="replace";let N=E&&this.#A(E)?E.__staleWhileFetching:E;N!==void 0&&(f.oldValue=N)}}else f&&(f.set="update")}if(a!==0&&!this.#C&&this.#B(),this.#C&&(I||this.#k(b,a,o),f&&this.#c(f,b)),!l&&this.#p&&this.#h){let E=this.#h,N;for(;N=E?.shift();)this.#r?.(...N)}return this}pop(){try{for(;this.#o;){let t=this.#a[this.#I];if(this.#L(!0),this.#A(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#p&&this.#h){let t=this.#h,r;for(;r=t?.shift();)this.#r?.(...r)}}}#L(t){let r=this.#I,n=this.#u[r],a=this.#a[r];return this.#_&&this.#A(a)?a.__abortController.abort(new Error("evicted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(a,n,"evict"),this.#p&&this.#h?.push([a,n,"evict"])),this.#x(r),t&&(this.#u[r]=void 0,this.#a[r]=void 0,this.#b.push(r)),this.#o===1?(this.#I=this.#d=0,this.#b.length=0):this.#I=this.#m[r],this.#l.delete(n),this.#o--,r}has(t,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:a}=r,o=this.#l.get(t);if(o!==void 0){let l=this.#a[o];if(this.#A(l)&&l.__staleWhileFetching===void 0)return!1;if(this.#y(o))a&&(a.has="stale",this.#c(a,o));else return n&&this.#w(o),a&&(a.has="hit",this.#c(a,o)),!0}else a&&(a.has="miss");return!1}peek(t,r={}){let{allowStale:n=this.allowStale}=r,a=this.#l.get(t);if(a===void 0||!n&&this.#y(a))return;let o=this.#a[a];return this.#A(o)?o.__staleWhileFetching:o}#V(t,r,n,a){let o=r===void 0?void 0:this.#a[r];if(this.#A(o))return o;let l=new cpt,{signal:A}=n;A?.addEventListener("abort",()=>l.abort(A.reason),{signal:l.signal});let f={signal:l.signal,options:n,context:a},I=(F,Q=!1)=>{let{aborted:J}=l.signal,ae=n.ignoreFetchAbort&&F!==void 0;if(n.status&&(J&&!Q?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,ae&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),J&&!ae&&!Q)return b(l.signal.reason);let ne=N;return this.#a[r]===N&&(F===void 0?ne.__staleWhileFetching?this.#a[r]=ne.__staleWhileFetching:this.#D(t,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(t,F,f.options))),F},C=F=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=F),b(F)),b=F=>{let{aborted:Q}=l.signal,J=Q&&n.allowStaleOnFetchAbort,ae=J||n.allowStaleOnFetchRejection,ne=ae||n.noDeleteOnFetchRejection,ce=N;if(this.#a[r]===N&&(!ne||ce.__staleWhileFetching===void 0?this.#D(t,"fetch"):J||(this.#a[r]=ce.__staleWhileFetching)),ae)return n.status&&ce.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),ce.__staleWhileFetching;if(ce.__returned===ce)throw F},E=(F,Q)=>{let J=this.#i?.(t,o,f);J&&J instanceof Promise&&J.then(ae=>F(ae===void 0?void 0:ae),Q),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(F(void 0),n.allowStaleOnFetchAbort&&(F=ae=>I(ae,!0)))})};n.status&&(n.status.fetchDispatched=!0);let N=new Promise(E).then(I,C),B=Object.assign(N,{__abortController:l,__staleWhileFetching:o,__returned:void 0});return r===void 0?(this.set(t,B,{...f.options,status:void 0}),r=this.#l.get(t)):this.#a[r]=B,B}#A(t){if(!this.#_)return!1;let r=t;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof cpt}async fetch(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:l=this.ttl,noDisposeOnSet:A=this.noDisposeOnSet,size:f=0,sizeCalculation:I=this.sizeCalculation,noUpdateTTL:C=this.noUpdateTTL,noDeleteOnFetchRejection:b=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:E=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:B=this.allowStaleOnFetchAbort,context:F,forceRefresh:Q=!1,status:J,signal:ae}=r;if(!this.#_)return J&&(J.fetch="get"),this.get(t,{allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:J});let ne={allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:l,noDisposeOnSet:A,size:f,sizeCalculation:I,noUpdateTTL:C,noDeleteOnFetchRejection:b,allowStaleOnFetchRejection:E,allowStaleOnFetchAbort:B,ignoreFetchAbort:N,status:J,signal:ae},ce=this.#l.get(t);if(ce===void 0){J&&(J.fetch="miss");let fe=this.#V(t,ce,ne,F);return fe.__returned=fe}else{let fe=this.#a[ce];if(this.#A(fe)){let De=n&&fe.__staleWhileFetching!==void 0;return J&&(J.fetch="inflight",De&&(J.returnedStale=!0)),De?fe.__staleWhileFetching:fe.__returned=fe}let ue=this.#y(ce);if(!Q&&!ue)return J&&(J.fetch="hit"),this.#O(ce),a&&this.#w(ce),J&&this.#c(J,ce),fe;let de=this.#V(t,ce,ne,F),Se=de.__staleWhileFetching!==void 0&&n;return J&&(J.fetch=ue?"stale":"refresh",Se&&ue&&(J.returnedStale=!0)),Se?de.__staleWhileFetching:de.__returned=de}}async forceFetch(t,r={}){let n=await this.fetch(t,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(t,r={}){let n=this.#s;if(!n)throw new Error("no memoMethod provided to constructor");let{context:a,forceRefresh:o,...l}=r,A=this.get(t,l);if(!o&&A!==void 0)return A;let f=n(t,A,{options:l,context:a});return this.set(t,f,l),f}get(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:l}=r,A=this.#l.get(t);if(A!==void 0){let f=this.#a[A],I=this.#A(f);return l&&this.#c(l,A),this.#y(A)?(l&&(l.get="stale"),I?(l&&n&&f.__staleWhileFetching!==void 0&&(l.returnedStale=!0),n?f.__staleWhileFetching:void 0):(o||this.#D(t,"expire"),l&&n&&(l.returnedStale=!0),n?f:void 0)):(l&&(l.get="hit"),I?f.__staleWhileFetching:(this.#O(A),a&&this.#w(A),f))}else l&&(l.get="miss")}#W(t,r){this.#f[r]=t,this.#m[t]=r}#O(t){t!==this.#d&&(t===this.#I?this.#I=this.#m[t]:this.#W(this.#f[t],this.#m[t]),this.#W(this.#d,t),this.#d=t)}delete(t){return this.#D(t,"delete")}#D(t,r){let n=!1;if(this.#o!==0){let a=this.#l.get(t);if(a!==void 0)if(n=!0,this.#o===1)this.#P(r);else{this.#x(a);let o=this.#a[a];if(this.#A(o)?o.__abortController.abort(new Error("deleted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(o,t,r),this.#p&&this.#h?.push([o,t,r])),this.#l.delete(t),this.#u[a]=void 0,this.#a[a]=void 0,a===this.#d)this.#d=this.#f[a];else if(a===this.#I)this.#I=this.#m[a];else{let l=this.#f[a];this.#m[l]=this.#m[a];let A=this.#m[a];this.#f[A]=this.#f[a]}this.#o--,this.#b.push(a)}}if(this.#p&&this.#h?.length){let a=this.#h,o;for(;o=a?.shift();)this.#r?.(...o)}return n}clear(){return this.#P("delete")}#P(t){for(let r of this.#R({allowStale:!0})){let n=this.#a[r];if(this.#A(n))n.__abortController.abort(new Error("deleted"));else{let a=this.#u[r];this.#E&&this.#n?.(n,a,t),this.#p&&this.#h?.push([n,a,t])}}if(this.#l.clear(),this.#a.fill(void 0),this.#u.fill(void 0),this.#C&&this.#v&&(this.#C.fill(0),this.#v.fill(0)),this.#S&&this.#S.fill(0),this.#I=0,this.#d=0,this.#b.length=0,this.#g=0,this.#o=0,this.#p&&this.#h){let r=this.#h,n;for(;n=r?.shift();)this.#r?.(...n)}}};lpt.LRUCache=Hfr});var hPn=H((lql,IPn)=>{"use strict";var Q_=(...e)=>e.every(t=>t)?e.join(""):"",lT=e=>e?encodeURIComponent(e):"",fPn=e=>e.toLowerCase().replace(/^\W+|\/|\W+$/g,"").replace(/\W+/g,"-"),_Xo={sshtemplate:({domain:e,user:t,project:r,committish:n})=>`git@${e}:${t}/${r}.git${Q_("#",n)}`,sshurltemplate:({domain:e,user:t,project:r,committish:n})=>`git+ssh://git@${e}/${t}/${r}.git${Q_("#",n)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a,path:o})=>`https://${e}/${t}/${r}${Q_("/",a,"/",lT(n||"HEAD"),"/",o)}`,browsetemplate:({domain:e,user:t,project:r,committish:n,treepath:a})=>`https://${e}/${t}/${r}${Q_("/",a,"/",lT(n))}`,browsetreetemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${lT(n||"HEAD")}/${o}${Q_("#",A(l||""))}`,browseblobtemplate:({domain:e,user:t,project:r,committish:n,blobpath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${lT(n||"HEAD")}/${o}${Q_("#",A(l||""))}`,docstemplate:({domain:e,user:t,project:r,treepath:n,committish:a})=>`https://${e}/${t}/${r}${Q_("/",n,"/",lT(a))}#readme`,httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${Q_(e,"@")}${t}/${r}/${n}.git${Q_("#",a)}`,filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/raw/${lT(n||"HEAD")}/${a}`,shortcuttemplate:({type:e,user:t,project:r,committish:n})=>`${e}:${t}/${r}${Q_("#",n)}`,pathtemplate:({user:e,project:t,committish:r})=>`${e}/${t}${Q_("#",r)}`,bugstemplate:({domain:e,user:t,project:r})=>`https://${e}/${t}/${r}/issues`,hashformat:fPn},$oe={};$oe.github={protocols:["git:","http:","git+ssh:","git+https:","ssh:","https:"],domain:"github.com",treepath:"tree",blobpath:"blob",editpath:"edit",filetemplate:({auth:e,user:t,project:r,committish:n,path:a})=>`https://${Q_(e,"@")}raw.githubusercontent.com/${t}/${r}/${lT(n||"HEAD")}/${a}`,gittemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git://${Q_(e,"@")}${t}/${r}/${n}.git${Q_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://codeload.${e}/${t}/${r}/tar.gz/${lT(n||"HEAD")}`,extract:e=>{let[,t,r,n,a]=e.pathname.split("/",5);if(!(n&&n!=="tree")&&(n||(a=e.hash.slice(1)),r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:a}}};$oe.bitbucket={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"bitbucket.org",treepath:"src",blobpath:"src",editpath:"?mode=edit",edittemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,editpath:l})=>`https://${e}/${t}/${r}${Q_("/",a,"/",lT(n||"HEAD"),"/",o,l)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/get/${lT(n||"HEAD")}.tar.gz`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["get"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};$oe.gitlab={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"gitlab.com",treepath:"tree",blobpath:"tree",editpath:"-/edit",httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${Q_(e,"@")}${t}/${r}/${n}.git${Q_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/repository/archive.tar.gz?ref=${lT(n||"HEAD")}`,extract:e=>{let t=e.pathname.slice(1);if(t.includes("/-/")||t.includes("/archive.tar.gz"))return;let r=t.split("/"),n=r.pop();n.endsWith(".git")&&(n=n.slice(0,-4));let a=r.join("/");if(!(!a||!n))return{user:a,project:n,committish:e.hash.slice(1)}}};$oe.gist={protocols:["git:","git+ssh:","git+https:","ssh:","https:"],domain:"gist.github.com",editpath:"edit",sshtemplate:({domain:e,project:t,committish:r})=>`git@${e}:${t}.git${Q_("#",r)}`,sshurltemplate:({domain:e,project:t,committish:r})=>`git+ssh://git@${e}/${t}.git${Q_("#",r)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a})=>`https://${e}/${t}/${r}${Q_("/",lT(n))}/${a}`,browsetemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${Q_("/",lT(r))}`,browsetreetemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${Q_("/",lT(r))}${Q_("#",a(n))}`,browseblobtemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${Q_("/",lT(r))}${Q_("#",a(n))}`,docstemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${Q_("/",lT(r))}`,httpstemplate:({domain:e,project:t,committish:r})=>`git+https://${e}/${t}.git${Q_("#",r)}`,filetemplate:({user:e,project:t,committish:r,path:n})=>`https://gist.githubusercontent.com/${e}/${t}/raw${Q_("/",lT(r))}/${n}`,shortcuttemplate:({type:e,project:t,committish:r})=>`${e}:${t}${Q_("#",r)}`,pathtemplate:({project:e,committish:t})=>`${e}${Q_("#",t)}`,bugstemplate:({domain:e,project:t})=>`https://${e}/${t}`,gittemplate:({domain:e,project:t,committish:r})=>`git://${e}/${t}.git${Q_("#",r)}`,tarballtemplate:({project:e,committish:t})=>`https://codeload.github.com/gist/${e}/tar.gz/${lT(t||"HEAD")}`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(n!=="raw"){if(!r){if(!t)return;r=t,t=null}return r.endsWith(".git")&&(r=r.slice(0,-4)),{user:t,project:r,committish:e.hash.slice(1)}}},hashformat:function(e){return e&&"file-"+fPn(e)}};$oe.sourcehut={protocols:["git+ssh:","https:"],domain:"git.sr.ht",treepath:"tree",blobpath:"tree",filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/blob/${lT(n)||"HEAD"}/${a}`,httpstemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}.git${Q_("#",n)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/archive/${lT(n)||"HEAD"}.tar.gz`,bugstemplate:()=>null,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["archive"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};for(let[e,t]of Object.entries($oe))$oe[e]=Object.assign({},_Xo,t);IPn.exports=$oe});var Qfr=H((uql,CPn)=>{var yXo=Et("url"),Yfr=(e,t,r)=>{let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)},mPn=e=>{try{return new yXo.URL(e)}catch{}},bXo=(e,t)=>{let r=e.indexOf(":"),n=e.slice(0,r+1);if(Object.prototype.hasOwnProperty.call(t,n))return e;let a=e.indexOf("@");return a>-1?a>r?`git+ssh://${e}`:e:e.indexOf("//")===r+1?e:`${e.slice(0,r+1)}//${e.slice(r+1)}`},EXo=e=>{let t=Yfr(e,"@","#"),r=Yfr(e,":","#");return r>t&&(e=e.slice(0,r)+"/"+e.slice(r+1)),Yfr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`git+ssh://${e}`),e};CPn.exports=(e,t)=>{let r=t?bXo(e,t):e;return mPn(r)||mPn(EXo(r))}});var yPn=H((gql,_Pn)=>{"use strict";var SXo=Qfr(),vXo=e=>{let t=e.indexOf("#"),r=e.indexOf("/"),n=e.indexOf("/",r+1),a=e.indexOf(":"),o=/\s/.exec(e),l=e.indexOf("@"),A=!o||t>-1&&o.index>t,f=l===-1||t>-1&&l>t,I=a===-1||t>-1&&a>t,C=n===-1||t>-1&&n>t,b=r>0,E=t>-1?e[t-1]!=="/":!e.endsWith("/"),N=!e.startsWith(".");return A&&b&&E&&N&&f&&I&&C};_Pn.exports=(e,t,{gitHosts:r,protocols:n})=>{if(!e)return;let a=vXo(e)?`github:${e}`:e,o=SXo(a,n);if(!o)return;let l=r.byShortcut[o.protocol],A=r.byDomain[o.hostname.startsWith("www.")?o.hostname.slice(4):o.hostname],f=l||A;if(!f)return;let I=r[l||A],C=null;n[o.protocol]?.auth&&(o.username||o.password)&&(C=`${o.username}${o.password?":"+o.password:""}`);let b=null,E=null,N=null,B=null;try{if(l){let F=o.pathname.startsWith("/")?o.pathname.slice(1):o.pathname,Q=F.indexOf("@");Q>-1&&(F=F.slice(Q+1));let J=F.lastIndexOf("/");J>-1?(E=decodeURIComponent(F.slice(0,J)),E||(E=null),N=decodeURIComponent(F.slice(J+1))):N=decodeURIComponent(F),N.endsWith(".git")&&(N=N.slice(0,-4)),o.hash&&(b=decodeURIComponent(o.hash.slice(1))),B="shortcut"}else{if(!I.protocols.includes(o.protocol))return;let F=I.extract(o);if(!F)return;E=F.user&&decodeURIComponent(F.user),N=decodeURIComponent(F.project),b=decodeURIComponent(F.committish),B=n[o.protocol]?.name||o.protocol.slice(0,-1)}}catch(F){if(F instanceof URIError)return;throw F}return[f,E,C,N,b,B,t]}});var Jfr=H((Aql,bPn)=>{"use strict";var{LRUCache:BXo}=WIe(),wXo=hPn(),TXo=yPn(),RXo=Qfr(),Xfr=new BXo({max:1e3}),upt=class e{constructor(t,r,n,a,o,l,A={}){Object.assign(this,e.#e[t],{type:t,user:r,auth:n,project:a,committish:o,default:l,opts:A})}static#e={byShortcut:{},byDomain:{}};static#t={"git+ssh:":{name:"sshurl"},"ssh:":{name:"sshurl"},"git+https:":{name:"https",auth:!0},"git:":{auth:!0},"http:":{auth:!0},"https:":{auth:!0},"git+http:":{auth:!0}};static addHost(t,r){e.#e[t]=r,e.#e.byDomain[r.domain]=t,e.#e.byShortcut[`${t}:`]=t,e.#t[`${t}:`]={name:t}}static fromUrl(t,r){if(typeof t!="string")return;let n=t+JSON.stringify(r||{});if(!Xfr.has(n)){let a=TXo(t,r,{gitHosts:e.#e,protocols:e.#t});Xfr.set(n,a?new e(...a):void 0)}return Xfr.get(n)}static parseUrl(t){return RXo(t)}#n(t,r){if(typeof t!="function")return null;let n={...this,...this.opts,...r};n.path||(n.path=""),n.path.startsWith("/")&&(n.path=n.path.slice(1)),n.noCommittish&&(n.committish=null);let a=t(n);return n.noGitPlus&&a.startsWith("git+")?a.slice(4):a}hash(){return this.committish?`#${this.committish}`:""}ssh(t){return this.#n(this.sshtemplate,t)}sshurl(t){return this.#n(this.sshurltemplate,t)}browse(t,...r){return typeof t!="string"?this.#n(this.browsetemplate,t):typeof r[0]!="string"?this.#n(this.browsetreetemplate,{...r[0],path:t}):this.#n(this.browsetreetemplate,{...r[1],fragment:r[0],path:t})}browseFile(t,...r){return typeof r[0]!="string"?this.#n(this.browseblobtemplate,{...r[0],path:t}):this.#n(this.browseblobtemplate,{...r[1],fragment:r[0],path:t})}docs(t){return this.#n(this.docstemplate,t)}bugs(t){return this.#n(this.bugstemplate,t)}https(t){return this.#n(this.httpstemplate,t)}git(t){return this.#n(this.gittemplate,t)}shortcut(t){return this.#n(this.shortcuttemplate,t)}path(t){return this.#n(this.pathtemplate,t)}tarball(t){return this.#n(this.tarballtemplate,{...t,noCommittish:!1})}file(t,r){return this.#n(this.filetemplate,{...r,path:t})}edit(t,r){return this.#n(this.edittemplate,{...r,path:t})}getDefaultRepresentation(){return this.default}toString(t){return this.default&&typeof this[this.default]=="function"?this[this.default](t):this.sshurl(t)}};for(let[e,t]of Object.entries(wXo))upt.addHost(e,t);bPn.exports=upt});var SPn=H((dql,EPn)=>{"use strict";var{URL:NXo}=Et("url"),DXo=new RegExp(/^\/?:?([/\w-.]+)\/([\w-.]+)\/?$/),kXo=new RegExp(/^\/repos\/([\w-.]+)\/([\w-.]+)\/(?:tarball|zipball)(?:\/.+)?$/),xXo=new RegExp(/^\/([\w-.]+)\/([\w-.]+)\/(?:legacy\.(?:zip|tar\.gz))(?:\/.+)?$/);EPn.exports=e=>{let t=e.replace(/^git@/,"https://git@").replace(/git@([.\w]+):(?!\d)/,"git@$1/").replace(/\.git$/,""),r=new NXo(t,"https://example.com/"),n=a=>({browse:FXo(r,a),domain:r.host,project:a[2]||null,type:GXo(r),user:a[1]||null});if(r.host){if(r.host.includes("api.github.com")){let a=kXo.exec(r.pathname)||[];return n(a)}if(r.host.includes("codeload.github.com")){let a=xXo.exec(r.pathname)||[];return n(a)}}return n(DXo.exec(r.pathname)||[])};function GXo({host:e}){return typeof e!="string"?null:e.indexOf("github")!==-1?"github":e.indexOf("gitlab")!==-1?"gitlab":null}function FXo(e,t){let n=`${e.protocol==="http:"?"http:":"https:"}//${e.host}/${t[1]}/${t[2]}`;return()=>n}});var Ufr=H((Iql,LXo)=>{LXo.exports=["0BSD","3D-Slicer-1.0","AAL","ADSL","AFL-1.1","AFL-1.2","AFL-2.0","AFL-2.1","AFL-3.0","AGPL-1.0-only","AGPL-1.0-or-later","AGPL-3.0-only","AGPL-3.0-or-later","AMD-newlib","AMDPLPA","AML","AML-glslang","AMPAS","ANTLR-PD","ANTLR-PD-fallback","APAFML","APL-1.0","APSL-1.0","APSL-1.1","APSL-1.2","APSL-2.0","ASWF-Digital-Assets-1.0","ASWF-Digital-Assets-1.1","Abstyles","AdaCore-doc","Adobe-2006","Adobe-Display-PostScript","Adobe-Glyph","Adobe-Utopia","Afmparse","Aladdin","Apache-1.0","Apache-1.1","Apache-2.0","App-s2p","Arphic-1999","Artistic-1.0","Artistic-1.0-Perl","Artistic-1.0-cl8","Artistic-2.0","BSD-1-Clause","BSD-2-Clause","BSD-2-Clause-Darwin","BSD-2-Clause-Patent","BSD-2-Clause-Views","BSD-2-Clause-first-lines","BSD-3-Clause","BSD-3-Clause-Attribution","BSD-3-Clause-Clear","BSD-3-Clause-HP","BSD-3-Clause-LBNL","BSD-3-Clause-Modification","BSD-3-Clause-No-Military-License","BSD-3-Clause-No-Nuclear-License","BSD-3-Clause-No-Nuclear-License-2014","BSD-3-Clause-No-Nuclear-Warranty","BSD-3-Clause-Open-MPI","BSD-3-Clause-Sun","BSD-3-Clause-acpica","BSD-3-Clause-flex","BSD-4-Clause","BSD-4-Clause-Shortened","BSD-4-Clause-UC","BSD-4.3RENO","BSD-4.3TAHOE","BSD-Advertising-Acknowledgement","BSD-Attribution-HPND-disclaimer","BSD-Inferno-Nettverk","BSD-Protection","BSD-Source-Code","BSD-Source-beginning-file","BSD-Systemics","BSD-Systemics-W3Works","BSL-1.0","BUSL-1.1","Baekmuk","Bahyph","Barr","Beerware","BitTorrent-1.0","BitTorrent-1.1","Bitstream-Charter","Bitstream-Vera","BlueOak-1.0.0","Boehm-GC","Borceux","Brian-Gladman-2-Clause","Brian-Gladman-3-Clause","C-UDA-1.0","CAL-1.0","CAL-1.0-Combined-Work-Exception","CATOSL-1.1","CC-BY-1.0","CC-BY-2.0","CC-BY-2.5","CC-BY-2.5-AU","CC-BY-3.0","CC-BY-3.0-AT","CC-BY-3.0-AU","CC-BY-3.0-DE","CC-BY-3.0-IGO","CC-BY-3.0-NL","CC-BY-3.0-US","CC-BY-4.0","CC-BY-NC-1.0","CC-BY-NC-2.0","CC-BY-NC-2.5","CC-BY-NC-3.0","CC-BY-NC-3.0-DE","CC-BY-NC-4.0","CC-BY-NC-ND-1.0","CC-BY-NC-ND-2.0","CC-BY-NC-ND-2.5","CC-BY-NC-ND-3.0","CC-BY-NC-ND-3.0-DE","CC-BY-NC-ND-3.0-IGO","CC-BY-NC-ND-4.0","CC-BY-NC-SA-1.0","CC-BY-NC-SA-2.0","CC-BY-NC-SA-2.0-DE","CC-BY-NC-SA-2.0-FR","CC-BY-NC-SA-2.0-UK","CC-BY-NC-SA-2.5","CC-BY-NC-SA-3.0","CC-BY-NC-SA-3.0-DE","CC-BY-NC-SA-3.0-IGO","CC-BY-NC-SA-4.0","CC-BY-ND-1.0","CC-BY-ND-2.0","CC-BY-ND-2.5","CC-BY-ND-3.0","CC-BY-ND-3.0-DE","CC-BY-ND-4.0","CC-BY-SA-1.0","CC-BY-SA-2.0","CC-BY-SA-2.0-UK","CC-BY-SA-2.1-JP","CC-BY-SA-2.5","CC-BY-SA-3.0","CC-BY-SA-3.0-AT","CC-BY-SA-3.0-DE","CC-BY-SA-3.0-IGO","CC-BY-SA-4.0","CC-PDDC","CC0-1.0","CDDL-1.0","CDDL-1.1","CDL-1.0","CDLA-Permissive-1.0","CDLA-Permissive-2.0","CDLA-Sharing-1.0","CECILL-1.0","CECILL-1.1","CECILL-2.0","CECILL-2.1","CECILL-B","CECILL-C","CERN-OHL-1.1","CERN-OHL-1.2","CERN-OHL-P-2.0","CERN-OHL-S-2.0","CERN-OHL-W-2.0","CFITSIO","CMU-Mach","CMU-Mach-nodoc","CNRI-Jython","CNRI-Python","CNRI-Python-GPL-Compatible","COIL-1.0","CPAL-1.0","CPL-1.0","CPOL-1.02","CUA-OPL-1.0","Caldera","Caldera-no-preamble","Catharon","ClArtistic","Clips","Community-Spec-1.0","Condor-1.1","Cornell-Lossless-JPEG","Cronyx","Crossword","CrystalStacker","Cube","D-FSL-1.0","DEC-3-Clause","DL-DE-BY-2.0","DL-DE-ZERO-2.0","DOC","DRL-1.0","DRL-1.1","DSDP","DocBook-Schema","DocBook-XML","Dotseqn","ECL-1.0","ECL-2.0","EFL-1.0","EFL-2.0","EPICS","EPL-1.0","EPL-2.0","EUDatagrid","EUPL-1.0","EUPL-1.1","EUPL-1.2","Elastic-2.0","Entessa","ErlPL-1.1","Eurosym","FBM","FDK-AAC","FSFAP","FSFAP-no-warranty-disclaimer","FSFUL","FSFULLR","FSFULLRWD","FTL","Fair","Ferguson-Twofish","Frameworx-1.0","FreeBSD-DOC","FreeImage","Furuseth","GCR-docs","GD","GFDL-1.1-invariants-only","GFDL-1.1-invariants-or-later","GFDL-1.1-no-invariants-only","GFDL-1.1-no-invariants-or-later","GFDL-1.1-only","GFDL-1.1-or-later","GFDL-1.2-invariants-only","GFDL-1.2-invariants-or-later","GFDL-1.2-no-invariants-only","GFDL-1.2-no-invariants-or-later","GFDL-1.2-only","GFDL-1.2-or-later","GFDL-1.3-invariants-only","GFDL-1.3-invariants-or-later","GFDL-1.3-no-invariants-only","GFDL-1.3-no-invariants-or-later","GFDL-1.3-only","GFDL-1.3-or-later","GL2PS","GLWTPL","GPL-1.0-only","GPL-1.0-or-later","GPL-2.0-only","GPL-2.0-or-later","GPL-3.0-only","GPL-3.0-or-later","Giftware","Glide","Glulxe","Graphics-Gems","Gutmann","HIDAPI","HP-1986","HP-1989","HPND","HPND-DEC","HPND-Fenneberg-Livingston","HPND-INRIA-IMAG","HPND-Intel","HPND-Kevlin-Henney","HPND-MIT-disclaimer","HPND-Markus-Kuhn","HPND-Netrek","HPND-Pbmplus","HPND-UC","HPND-UC-export-US","HPND-doc","HPND-doc-sell","HPND-export-US","HPND-export-US-acknowledgement","HPND-export-US-modify","HPND-export2-US","HPND-merchantability-variant","HPND-sell-MIT-disclaimer-xserver","HPND-sell-regexpr","HPND-sell-variant","HPND-sell-variant-MIT-disclaimer","HPND-sell-variant-MIT-disclaimer-rev","HTMLTIDY","HaskellReport","Hippocratic-2.1","IBM-pibs","ICU","IEC-Code-Components-EULA","IJG","IJG-short","IPA","IPL-1.0","ISC","ISC-Veillard","ImageMagick","Imlib2","Info-ZIP","Inner-Net-2.0","Intel","Intel-ACPI","Interbase-1.0","JPL-image","JPNIC","JSON","Jam","JasPer-2.0","Kastrup","Kazlib","Knuth-CTAN","LAL-1.2","LAL-1.3","LGPL-2.0-only","LGPL-2.0-or-later","LGPL-2.1-only","LGPL-2.1-or-later","LGPL-3.0-only","LGPL-3.0-or-later","LGPLLR","LOOP","LPD-document","LPL-1.0","LPL-1.02","LPPL-1.0","LPPL-1.1","LPPL-1.2","LPPL-1.3a","LPPL-1.3c","LZMA-SDK-9.11-to-9.20","LZMA-SDK-9.22","Latex2e","Latex2e-translated-notice","Leptonica","LiLiQ-P-1.1","LiLiQ-R-1.1","LiLiQ-Rplus-1.1","Libpng","Linux-OpenIB","Linux-man-pages-1-para","Linux-man-pages-copyleft","Linux-man-pages-copyleft-2-para","Linux-man-pages-copyleft-var","Lucida-Bitmap-Fonts","MIT","MIT-0","MIT-CMU","MIT-Festival","MIT-Khronos-old","MIT-Modern-Variant","MIT-Wu","MIT-advertising","MIT-enna","MIT-feh","MIT-open-group","MIT-testregex","MITNFA","MMIXware","MPEG-SSG","MPL-1.0","MPL-1.1","MPL-2.0","MPL-2.0-no-copyleft-exception","MS-LPL","MS-PL","MS-RL","MTLL","Mackerras-3-Clause","Mackerras-3-Clause-acknowledgment","MakeIndex","Martin-Birgmeier","McPhee-slideshow","Minpack","MirOS","Motosoto","MulanPSL-1.0","MulanPSL-2.0","Multics","Mup","NAIST-2003","NASA-1.3","NBPL-1.0","NCBI-PD","NCGL-UK-2.0","NCL","NCSA","NGPL","NICTA-1.0","NIST-PD","NIST-PD-fallback","NIST-Software","NLOD-1.0","NLOD-2.0","NLPL","NOSL","NPL-1.0","NPL-1.1","NPOSL-3.0","NRL","NTP","NTP-0","Naumen","NetCDF","Newsletr","Nokia","Noweb","O-UDA-1.0","OAR","OCCT-PL","OCLC-2.0","ODC-By-1.0","ODbL-1.0","OFFIS","OFL-1.0","OFL-1.0-RFN","OFL-1.0-no-RFN","OFL-1.1","OFL-1.1-RFN","OFL-1.1-no-RFN","OGC-1.0","OGDL-Taiwan-1.0","OGL-Canada-2.0","OGL-UK-1.0","OGL-UK-2.0","OGL-UK-3.0","OGTSL","OLDAP-1.1","OLDAP-1.2","OLDAP-1.3","OLDAP-1.4","OLDAP-2.0","OLDAP-2.0.1","OLDAP-2.1","OLDAP-2.2","OLDAP-2.2.1","OLDAP-2.2.2","OLDAP-2.3","OLDAP-2.4","OLDAP-2.5","OLDAP-2.6","OLDAP-2.7","OLDAP-2.8","OLFL-1.3","OML","OPL-1.0","OPL-UK-3.0","OPUBL-1.0","OSET-PL-2.1","OSL-1.0","OSL-1.1","OSL-2.0","OSL-2.1","OSL-3.0","OpenPBS-2.3","OpenSSL","OpenSSL-standalone","OpenVision","PADL","PDDL-1.0","PHP-3.0","PHP-3.01","PPL","PSF-2.0","Parity-6.0.0","Parity-7.0.0","Pixar","Plexus","PolyForm-Noncommercial-1.0.0","PolyForm-Small-Business-1.0.0","PostgreSQL","Python-2.0","Python-2.0.1","QPL-1.0","QPL-1.0-INRIA-2004","Qhull","RHeCos-1.1","RPL-1.1","RPL-1.5","RPSL-1.0","RSA-MD","RSCPL","Rdisc","Ruby","Ruby-pty","SAX-PD","SAX-PD-2.0","SCEA","SGI-B-1.0","SGI-B-1.1","SGI-B-2.0","SGI-OpenGL","SGP4","SHL-0.5","SHL-0.51","SISSL","SISSL-1.2","SL","SMLNJ","SMPPL","SNIA","SPL-1.0","SSH-OpenSSH","SSH-short","SSLeay-standalone","SSPL-1.0","SWL","Saxpath","SchemeReport","Sendmail","Sendmail-8.23","SimPL-2.0","Sleepycat","Soundex","Spencer-86","Spencer-94","Spencer-99","SugarCRM-1.1.3","Sun-PPP","Sun-PPP-2000","SunPro","Symlinks","TAPR-OHL-1.0","TCL","TCP-wrappers","TGPPL-1.0","TMate","TORQUE-1.1","TOSL","TPDL","TPL-1.0","TTWL","TTYP0","TU-Berlin-1.0","TU-Berlin-2.0","TermReadKey","UCAR","UCL-1.0","UMich-Merit","UPL-1.0","URT-RLE","Ubuntu-font-1.0","Unicode-3.0","Unicode-DFS-2015","Unicode-DFS-2016","Unicode-TOU","UnixCrypt","Unlicense","VOSTROM","VSL-1.0","Vim","W3C","W3C-19980720","W3C-20150513","WTFPL","Watcom-1.0","Widget-Workshop","Wsuipa","X11","X11-distribute-modifications-variant","X11-swapped","XFree86-1.1","XSkat","Xdebug-1.03","Xerox","Xfig","Xnet","YPL-1.0","YPL-1.1","ZPL-1.1","ZPL-2.0","ZPL-2.1","Zed","Zeeff","Zend-2.0","Zimbra-1.3","Zimbra-1.4","Zlib","any-OSI","bcrypt-Solar-Designer","blessing","bzip2-1.0.6","check-cvs","checkmk","copyleft-next-0.3.0","copyleft-next-0.3.1","curl","cve-tou","diffmark","dtoa","dvipdfm","eGenix","etalab-2.0","fwlw","gSOAP-1.3b","gnuplot","gtkbook","hdparm","iMatix","libpng-2.0","libselinux-1.0","libtiff","libutil-David-Nugent","lsof","magaz","mailprio","metamail","mpi-permissive","mpich2","mplus","pkgconf","pnmstitch","psfrag","psutils","python-ldap","radvd","snprintf","softSurfer","ssh-keyscan","swrule","threeparttable","ulem","w3m","xinetd","xkeyboard-config-Zinoviev","xlock","xpp","xzoom","zlib-acknowledgement"]});var BPn=H((hql,VXo)=>{VXo.exports=["AGPL-1.0","AGPL-3.0","BSD-2-Clause-FreeBSD","BSD-2-Clause-NetBSD","GFDL-1.1","GFDL-1.2","GFDL-1.3","GPL-1.0","GPL-2.0","GPL-2.0-with-GCC-exception","GPL-2.0-with-autoconf-exception","GPL-2.0-with-bison-exception","GPL-2.0-with-classpath-exception","GPL-2.0-with-font-exception","GPL-3.0","GPL-3.0-with-GCC-exception","GPL-3.0-with-autoconf-exception","LGPL-2.0","LGPL-2.1","LGPL-3.0","Net-SNMP","Nunit","StandardML-NJ","bzip2-1.0.5","eCos-2.0","wxWindows"]});var wPn=H((mql,WXo)=>{WXo.exports=["389-exception","Asterisk-exception","Autoconf-exception-2.0","Autoconf-exception-3.0","Autoconf-exception-generic","Autoconf-exception-generic-3.0","Autoconf-exception-macro","Bison-exception-1.24","Bison-exception-2.2","Bootloader-exception","Classpath-exception-2.0","CLISP-exception-2.0","cryptsetup-OpenSSL-exception","DigiRule-FOSS-exception","eCos-exception-2.0","Fawkes-Runtime-exception","FLTK-exception","fmt-exception","Font-exception-2.0","freertos-exception-2.0","GCC-exception-2.0","GCC-exception-2.0-note","GCC-exception-3.1","Gmsh-exception","GNAT-exception","GNOME-examples-exception","GNU-compiler-exception","gnu-javamail-exception","GPL-3.0-interface-exception","GPL-3.0-linking-exception","GPL-3.0-linking-source-exception","GPL-CC-1.0","GStreamer-exception-2005","GStreamer-exception-2008","i2p-gpl-java-exception","KiCad-libraries-exception","LGPL-3.0-linking-exception","libpri-OpenH323-exception","Libtool-exception","Linux-syscall-note","LLGPL","LLVM-exception","LZMA-exception","mif-exception","OCaml-LGPL-linking-exception","OCCT-exception-1.0","OpenJDK-assembly-exception-1.0","openvpn-openssl-exception","PS-or-PDF-font-exception-20170817","QPL-1.0-INRIA-2004-exception","Qt-GPL-exception-1.0","Qt-LGPL-exception-1.1","Qwt-exception-1.0","SANE-exception","SHL-2.0","SHL-2.1","stunnel-exception","SWI-exception","Swift-exception","Texinfo-exception","u-boot-exception-2.0","UBDL-exception","Universal-FOSS-exception-1.0","vsftpd-openssl-exception","WxWindows-exception-3.1","x11vnc-openssl-exception"]});var RPn=H((Cql,TPn)=>{"use strict";var OXo=[].concat(Ufr()).concat(BPn()),PXo=wPn();TPn.exports=function(e){var t=0;function r(){return t1&&e[t-2]===" ")throw new Error("Space before `+`");return B&&{type:"OPERATOR",string:B}}function l(){return n(/[A-Za-z0-9-.]+/)}function A(){var B=l();if(!B)throw new Error("Expected idstring at offset "+t);return B}function f(){if(n("DocumentRef-")){var B=A();return{type:"DOCUMENTREF",string:B}}}function I(){if(n("LicenseRef-")){var B=A();return{type:"LICENSEREF",string:B}}}function C(){var B=t,F=l();if(OXo.indexOf(F)!==-1)return{type:"LICENSE",string:F};if(PXo.indexOf(F)!==-1)return{type:"EXCEPTION",string:F};t=B}function b(){return o()||f()||I()||C()}for(var E=[];r()&&(a(),!!r());){var N=b();if(!N)throw new Error("Unexpected `"+e[t]+"` at offset "+t);E.push(N)}return E}});var DPn=H((_ql,NPn)=>{"use strict";NPn.exports=function(e){var t=0;function r(){return t{"use strict";var MXo=RPn(),HXo=DPn();kPn.exports=function(e){return HXo(MXo(e))}});var PPn=H((bql,OPn)=>{var YXo=Kfr(),QXo=Ufr();function gpt(e){try{return YXo(e),!0}catch{return!1}}function WPn(e,t){var r=t[0].length-e[0].length;return r!==0?r:e[0].toUpperCase().localeCompare(t[0].toUpperCase())}var xPn=[["APGL","AGPL"],["Gpl","GPL"],["GLP","GPL"],["APL","Apache"],["ISD","ISC"],["GLP","GPL"],["IST","ISC"],["Claude","Clause"],[" or later","+"],[" International",""],["GNU","GPL"],["GUN","GPL"],["+",""],["GNU GPL","GPL"],["GNU LGPL","LGPL"],["GNU/GPL","GPL"],["GNU GLP","GPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL"],["GNU Lesser General Public License","LGPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["GNU Lesser General Public License","LGPL-2.1"],["LESSER GENERAL PUBLIC LICENSE","LGPL"],["Lesser General Public License","LGPL"],["LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["Lesser General Public License","LGPL-2.1"],["GNU General Public License","GPL"],["Gnu public license","GPL"],["GNU Public License","GPL"],["GNU GENERAL PUBLIC LICENSE","GPL"],["MTI","MIT"],["Mozilla Public License","MPL"],["Universal Permissive License","UPL"],["WTH","WTF"],["WTFGPL","WTFPL"],["-License",""]].sort(WPn),XXo=0,JXo=1,GPn=[function(e){return e.toUpperCase()},function(e){return e.trim()},function(e){return e.replace(/\./g,"")},function(e){return e.replace(/\s+/g,"")},function(e){return e.replace(/\s+/g,"-")},function(e){return e.replace("v","-")},function(e){return e.replace(/,?\s*(\d)/,"-$1")},function(e){return e.replace(/,?\s*(\d)/,"-$1.0")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2.0")},function(e){return e[0].toUpperCase()+e.slice(1)},function(e){return e.replace("/","-")},function(e){return e.replace(/\s*V\s*(\d)/,"-$1").replace(/(\d)$/,"$1.0")},function(e){return e.indexOf("3.0")!==-1?e+"-or-later":e+"-only"},function(e){return e+"only"},function(e){return e.replace(/(\d)$/,"-$1.0")},function(e){return e.replace(/(-| )?(\d)$/,"-$2-Clause")},function(e){return e.replace(/(-| )clause(-| )(\d)/,"-$3-Clause")},function(e){return e.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i,"BSD-3-Clause")},function(e){return e.replace(/\bSimplified(-| )?BSD((-| )License)?/i,"BSD-2-Clause")},function(e){return e.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i,"BSD-2-Clause-$1BSD")},function(e){return e.replace(/\bClear(-| )?BSD((-| )License)?/i,"BSD-3-Clause-Clear")},function(e){return e.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i,"BSD-4-Clause")},function(e){return"CC-"+e},function(e){return"CC-"+e+"-4.0"},function(e){return e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")},function(e){return"CC-"+e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")+"-4.0"}],jfr=QXo.map(function(e){var t=/^(.*)-\d+\.\d+$/.exec(e);return t?[t[0],t[1]]:[e,null]}).reduce(function(e,t){var r=t[1];return e[r]=e[r]||[],e[r].push(t[0]),e},{}),UXo=Object.keys(jfr).map(function(t){return[t,jfr[t]]}).filter(function(t){return t[1].length===1&&t[0]!==null&&t[0]!=="APL"}).map(function(t){return[t[0],t[1][0]]});jfr=void 0;var FPn=[["UNLI","Unlicense"],["WTF","WTFPL"],["2 CLAUSE","BSD-2-Clause"],["2-CLAUSE","BSD-2-Clause"],["3 CLAUSE","BSD-3-Clause"],["3-CLAUSE","BSD-3-Clause"],["AFFERO","AGPL-3.0-or-later"],["AGPL","AGPL-3.0-or-later"],["APACHE","Apache-2.0"],["ARTISTIC","Artistic-2.0"],["Affero","AGPL-3.0-or-later"],["BEER","Beerware"],["BOOST","BSL-1.0"],["BSD","BSD-2-Clause"],["CDDL","CDDL-1.1"],["ECLIPSE","EPL-1.0"],["FUCK","WTFPL"],["GNU","GPL-3.0-or-later"],["LGPL","LGPL-3.0-or-later"],["GPLV1","GPL-1.0-only"],["GPL-1","GPL-1.0-only"],["GPLV2","GPL-2.0-only"],["GPL-2","GPL-2.0-only"],["GPL","GPL-3.0-or-later"],["MIT +NO-FALSE-ATTRIBS","MITNFA"],["MIT","MIT"],["MPL","MPL-2.0"],["X11","X11"],["ZLIB","Zlib"]].concat(UXo).sort(WPn),KXo=0,jXo=1,ZPn=function(e){for(var t=0;t-1)return n[jXo]}return null},VPn=function(e,t){for(var r=0;r-1){var o=e.replace(a,n[JXo]),l=t(o);if(l!==null)return l}}return null};OPn.exports=function(e,t){t=t||{};var r=t.upgrade===void 0?!0:!!t.upgrade;function n(A){return r?zXo(A):A}var a=typeof e=="string"&&e.trim().length!==0;if(!a)throw Error("Invalid argument. Expected non-empty string.");if(e=e.trim(),gpt(e))return n(e);var o=e.replace(/\+$/,"").trim();if(gpt(o))return n(o);var l=ZPn(e);return l!==null||(l=VPn(e,function(A){return gpt(A)?A:ZPn(A)}),l!==null)||(l=LPn(e),l!==null)||(l=VPn(e,LPn),l!==null)?n(l):null};function zXo(e){return["GPL-1.0","LGPL-1.0","AGPL-1.0","GPL-2.0","LGPL-2.0","AGPL-2.0","LGPL-2.1"].indexOf(e)!==-1?e+"-only":["GPL-1.0+","GPL-2.0+","GPL-3.0+","LGPL-2.0+","LGPL-2.1+","LGPL-3.0+","AGPL-1.0+","AGPL-3.0+"].indexOf(e)!==-1?e.replace(/\+$/,"-or-later"):["GPL-3.0","LGPL-3.0","AGPL-3.0"].indexOf(e)!==-1?e+"-or-later":e}});var QPn=H((Eql,YPn)=>{var qXo=Kfr(),$Xo=PPn(),MPn='license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "',e4o=/^SEE LICEN[CS]E IN (.+)$/;function HPn(e,t){return t.slice(0,e.length)===e}function zfr(e){if(e.hasOwnProperty("license")){var t=e.license;return HPn("LicenseRef",t)||HPn("DocumentRef",t)}else return zfr(e.left)||zfr(e.right)}YPn.exports=function(e){var t;try{t=qXo(e)}catch{var r;if(e==="UNLICENSED"||e==="UNLICENCED")return{validForOldPackages:!0,validForNewPackages:!0,unlicensed:!0};if(r=e4o.exec(e))return{validForOldPackages:!0,validForNewPackages:!0,inFile:r[1]};var n={validForOldPackages:!1,validForNewPackages:!1,warnings:[MPn]};if(e.trim().length!==0){var a=$Xo(e);a&&n.warnings.push('license is similar to the valid expression "'+a+'"')}return n}return zfr(t)?{validForNewPackages:!1,validForOldPackages:!1,spdx:!0,warnings:[MPn]}:{validForNewPackages:!0,validForOldPackages:!0,spdx:!0}}});var JPn=H((Sql,XPn)=>{XPn.exports=t4o;function t4o(e){if(!e||e==="ERROR: No README data found!")return;e=e.trim().split(` +`);let t=0;for(;e[t]&&e[t].trim().match(/^(#|$)/);)t++;let r=e.length,n=t+1;for(;n{r4o.exports={topLevel:{dependancies:"dependencies",dependecies:"dependencies",depdenencies:"dependencies",devEependencies:"devDependencies",depends:"dependencies","dev-dependencies":"devDependencies",devDependences:"devDependencies",devDepenencies:"devDependencies",devdependencies:"devDependencies",repostitory:"repository",repo:"repository",prefereGlobal:"preferGlobal",hompage:"homepage",hampage:"homepage",autohr:"author",autor:"author",contributers:"contributors",publicationConfig:"publishConfig",script:"scripts"},bugs:{web:"url",name:"url"},script:{server:"start",tests:"test"}}});var qPn=H((Bql,zPn)=>{var n4o=a7t(),i4o=c7t(),s4o=QPn(),Apt=Jfr(),o4o=Et("node:module"),a4o=["dependencies","devDependencies","optionalDependencies"],c4o=JPn(),qfr=Et("url"),eae=UPn(),KPn=e=>e.includes("@")&&e.indexOf("@")"u"&&(t={});var r=t.strict;if(!e.name&&!r){e.name="";return}if(typeof e.name!="string")throw new Error("name field must be a string.");r||(e.name=e.name.trim()),g4o(e.name,r,t.allowLegacyCase),o4o.builtinModules.includes(e.name)&&this.warn("conflictingName",e.name)},fixDescriptionField:function(e){e.description&&typeof e.description!="string"&&(this.warn("nonStringDescription"),delete e.description),e.readme&&!e.description&&(e.description=c4o(e.readme)),e.description===void 0&&delete e.description,e.description||this.warn("missingDescription")},fixReadmeField:function(e){e.readme||(this.warn("missingReadme"),e.readme="ERROR: No README data found!")},fixBugsField:function(e){if(!e.bugs&&e.repository&&e.repository.url){var t=Apt.fromUrl(e.repository.url);t&&t.bugs()&&(e.bugs={url:t.bugs()})}else if(e.bugs){if(typeof e.bugs=="string")KPn(e.bugs)?e.bugs={email:e.bugs}:qfr.parse(e.bugs).protocol?e.bugs={url:e.bugs}:this.warn("nonEmailUrlBugsString");else{h4o(e.bugs,this.warn);var r=e.bugs;e.bugs={},r.url&&(typeof r.url=="string"&&qfr.parse(r.url).protocol?e.bugs.url=r.url:this.warn("nonUrlBugsUrlField")),r.email&&(typeof r.email=="string"&&KPn(r.email)?e.bugs.email=r.email:this.warn("nonEmailBugsEmailField"))}!e.bugs.email&&!e.bugs.url&&(delete e.bugs,this.warn("emptyNormalizedBugs"))}},fixHomepageField:function(e){if(!e.homepage&&e.repository&&e.repository.url){var t=Apt.fromUrl(e.repository.url);t&&t.docs()&&(e.homepage=t.docs())}if(e.homepage){if(typeof e.homepage!="string")return this.warn("nonUrlHomepage"),delete e.homepage;qfr.parse(e.homepage).protocol||(e.homepage="http://"+e.homepage)}},fixLicenseField:function(e){let t=e.license||e.licence;if(!t)return this.warn("missingLicense");if(typeof t!="string"||t.length<1||t.trim()==="")return this.warn("invalidLicense");if(!s4o(t).validForNewPackages)return this.warn("invalidLicense")}};function l4o(e){if(e.charAt(0)!=="@")return!1;var t=e.slice(1).split("/");return t.length!==2?!1:t[0]&&t[1]&&t[0]===encodeURIComponent(t[0])&&t[1]===encodeURIComponent(t[1])}function u4o(e){return!e.match(/[/@\s+%:]/)&&e===encodeURIComponent(e)}function g4o(e,t,r){if(e.charAt(0)==="."||!(l4o(e)||u4o(e))||t&&!r&&e!==e.toLowerCase()||e.toLowerCase()==="node_modules"||e.toLowerCase()==="favicon.ico")throw new Error("Invalid name: "+JSON.stringify(e))}function jPn(e,t){return e.author&&(e.author=t(e.author)),["maintainers","contributors"].forEach(function(r){Array.isArray(e[r])&&(e[r]=e[r].map(t))}),e}function A4o(e){if(typeof e=="string")return e;var t=e.name||"",r=e.url||e.web,n=r?" ("+r+")":"",a=e.email||e.mail,o=a?" <"+a+">":"";return t+o+n}function d4o(e){if(typeof e!="string")return e;var t=e.match(/^([^(<]+)/),r=e.match(/\(([^()]+)\)/),n=e.match(/<([^<>]+)>/),a={};return t&&t[0].trim()&&(a.name=t[0].trim()),n&&(a.email=n[1]),r&&(a.url=r[1]),a}function p4o(e){var t=e.optionalDependencies;if(t){var r=e.dependencies||{};Object.keys(t).forEach(function(n){r[n]=t[n]}),e.dependencies=r}}function f4o(e,t,r){if(!e)return{};if(typeof e=="string"&&(e=e.trim().split(/[\n\r\s\t ,]+/)),!Array.isArray(e))return e;r("deprecatedArrayDependencies",t);var n={};return e.filter(function(a){return typeof a=="string"}).forEach(function(a){a=a.trim().split(/(:?[@\s><=])/);var o=a.shift(),l=a.join("");l=l.trim(),l=l.replace(/^@/,""),n[o]=l}),n}function I4o(e,t){a4o.forEach(function(r){e[r]&&(e[r]=f4o(e[r],r,t))})}function h4o(e,t){e&&Object.keys(e).forEach(function(r){eae.bugs[r]&&(t("typo",r,eae.bugs[r],"bugs"),e[eae.bugs[r]]=e[r],delete e[r])})}});var $Pn=H((wql,m4o)=>{m4o.exports={repositories:"'repositories' (plural) Not supported. Please pick one as the 'repository' field",missingRepository:"No repository field.",brokenGitUrl:"Probably broken git url: %s",nonObjectScripts:"scripts must be an object",nonStringScript:"script values must be string commands",nonArrayFiles:"Invalid 'files' member",invalidFilename:"Invalid filename in 'files' list: %s",nonArrayBundleDependencies:"Invalid 'bundleDependencies' list. Must be array of package names",nonStringBundleDependency:"Invalid bundleDependencies member: %s",nonDependencyBundleDependency:"Non-dependency in bundleDependencies: %s",nonObjectDependencies:"%s field must be an object",nonStringDependency:"Invalid dependency: %s %s",deprecatedArrayDependencies:"specifying %s as array is deprecated",deprecatedModules:"modules field is deprecated",nonArrayKeywords:"keywords should be an array of strings",nonStringKeyword:"keywords should be an array of strings",conflictingName:"%s is also the name of a node core module.",nonStringDescription:"'description' field should be a string",missingDescription:"No description",missingReadme:"No README data",missingLicense:"No license field.",nonEmailUrlBugsString:"Bug string field must be url, email, or {email,url}",nonUrlBugsUrlField:"bugs.url field must be a string url. Deleted.",nonEmailBugsEmailField:"bugs.email field must be a string email. Deleted.",emptyNormalizedBugs:"Normalized value of bugs field is an empty object. Deleted.",nonUrlHomepage:"homepage field must be a string url. Deleted.",invalidLicense:"license should be a valid SPDX license expression",typo:"%s should probably be %s."}});var r3n=H((Tql,t3n)=>{var e3n=Et("util"),$fr=$Pn();t3n.exports=function(){var e=Array.prototype.slice.call(arguments,0),t=e.shift();if(t==="typo")return C4o.apply(null,e);var r=$fr[t]?$fr[t]:t+": '%s'";return e.unshift(r),e3n.format.apply(null,e)};function C4o(e,t,r){return r&&(e=r+"['"+e+"']",t=r+"['"+t+"']"),e3n.format($fr.typo,e,t)}});var rIr=H((Rql,s3n)=>{s3n.exports=n3n;var eIr=qPn();n3n.fixer=eIr;var _4o=r3n(),y4o=["name","version","description","repository","modules","scripts","files","bin","man","bugs","keywords","readme","homepage","license"],b4o=["dependencies","people","typos"],tIr=y4o.map(function(e){return i3n(e)+"Field"});tIr=tIr.concat(b4o);function n3n(e,t,r){t===!0&&(t=null,r=!0),r||(r=!1),(!t||e.private)&&(t=function(){}),e.scripts&&e.scripts.install==="node-gyp rebuild"&&!e.scripts.preinstall&&(e.gypfile=!0),eIr.warn=function(){t(_4o.apply(null,arguments))},tIr.forEach(function(n){eIr["fix"+i3n(n)](e,r)}),e._id=e.name+"@"+e.version}function i3n(e){return e.charAt(0).toUpperCase()+e.slice(1)}});var fpt=H((xql,nIr)=>{var ppt=process||{},l3n=ppt.argv||[],dpt=ppt.env||{},B4o=!(dpt.NO_COLOR||l3n.includes("--no-color"))&&(!!dpt.FORCE_COLOR||l3n.includes("--color")||ppt.platform==="win32"||(ppt.stdout||{}).isTTY&&dpt.TERM!=="dumb"||!!dpt.CI),w4o=(e,t,r=e)=>n=>{let a=""+n,o=a.indexOf(t,e.length);return~o?e+T4o(a,t,r,o)+t:e+a+t},T4o=(e,t,r,n)=>{let a="",o=0;do a+=e.substring(o,n)+r,o=n+t.length,n=e.indexOf(t,o);while(~n);return a+e.substring(o)},u3n=(e=B4o)=>{let t=e?w4o:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};nIr.exports=u3n();nIr.exports.createColors=u3n});var iIr=H(Ipt=>{Object.defineProperty(Ipt,"__esModule",{value:!0});Ipt.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;Ipt.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var f3n=H(LMe=>{"use strict";Object.defineProperty(LMe,"__esModule",{value:!0});LMe.isIdentifierChar=p3n;LMe.isIdentifierName=k4o;LMe.isIdentifierStart=d3n;var oIr="\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-\u1C8A\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-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\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",g3n="\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\u0897-\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\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\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\uFF65",R4o=new RegExp("["+oIr+"]"),N4o=new RegExp("["+oIr+g3n+"]");oIr=g3n=null;var A3n=[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,4,51,13,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,39,27,10,22,251,41,7,1,17,2,60,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,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,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,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,229,29,3,0,496,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,16,621,2467,541,1507,4938,6,4191],D4o=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,343,9,54,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,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function sIr(e,t){let r=65536;for(let n=0,a=t.length;ne)return!1;if(r+=t[n+1],r>=e)return!0}return!1}function d3n(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&R4o.test(String.fromCharCode(e)):sIr(e,A3n)}function p3n(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&N4o.test(String.fromCharCode(e)):sIr(e,A3n)||sIr(e,D4o)}function k4o(e){let t=!0;for(let r=0;r{"use strict";Object.defineProperty(OIe,"__esModule",{value:!0});OIe.isKeyword=L4o;OIe.isReservedWord=I3n;OIe.isStrictBindOnlyReservedWord=m3n;OIe.isStrictBindReservedWord=Z4o;OIe.isStrictReservedWord=h3n;var aIr={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"]},x4o=new Set(aIr.keyword),G4o=new Set(aIr.strict),F4o=new Set(aIr.strictBind);function I3n(e,t){return t&&e==="await"||e==="enum"}function h3n(e,t){return I3n(e,t)||G4o.has(e)}function m3n(e){return F4o.has(e)}function Z4o(e,t){return h3n(e,t)||m3n(e)}function L4o(e){return x4o.has(e)}});var lIr=H(b8=>{"use strict";Object.defineProperty(b8,"__esModule",{value:!0});Object.defineProperty(b8,"isIdentifierChar",{enumerable:!0,get:function(){return cIr.isIdentifierChar}});Object.defineProperty(b8,"isIdentifierName",{enumerable:!0,get:function(){return cIr.isIdentifierName}});Object.defineProperty(b8,"isIdentifierStart",{enumerable:!0,get:function(){return cIr.isIdentifierStart}});Object.defineProperty(b8,"isKeyword",{enumerable:!0,get:function(){return VMe.isKeyword}});Object.defineProperty(b8,"isReservedWord",{enumerable:!0,get:function(){return VMe.isReservedWord}});Object.defineProperty(b8,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return VMe.isStrictBindOnlyReservedWord}});Object.defineProperty(b8,"isStrictBindReservedWord",{enumerable:!0,get:function(){return VMe.isStrictBindReservedWord}});Object.defineProperty(b8,"isStrictReservedWord",{enumerable:!0,get:function(){return VMe.isStrictReservedWord}});var cIr=f3n(),VMe=C3n()});var R3n=H(WMe=>{"use strict";Object.defineProperty(WMe,"__esModule",{value:!0});var uIr=fpt(),_3n=iIr(),y3n=lIr();function V4o(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:uIr.isColorSupported}var hpt=(e,t)=>r=>e(t(r));function S3n(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:hpt(hpt(e.white,e.bgRed),e.bold),gutter:e.gray,marker:hpt(e.red,e.bold),message:hpt(e.red,e.bold),reset:e.reset}}var W4o=S3n(uIr.createColors(!0)),O4o=S3n(uIr.createColors(!1));function v3n(e){return e?W4o:O4o}var P4o=new Set(["as","async","from","get","of","set"]),M4o=/\r\n|[\n\r\u2028\u2029]/,H4o=/^[()[\]{}]$/,B3n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if(y3n.isKeyword(r.value)||y3n.isStrictReservedWord(r.value,!0)||P4o.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="t[n](o)).join(` +`):r+=a;return r}var b3n=!1,E3n=/\r\n|[\n\r\u2028\u2029]/;function Y4o(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let J=t[Q-1].length;B[Q]=[f,J-f+1]}else if(F===N)B[Q]=[0,C];else{let J=t[Q-F].length;B[Q]=[0,J]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function T3n(e,t,r={}){let n=r.forceColor||V4o()&&r.highlightCode,a=v3n(n),o=e.split(E3n),{start:l,end:A,markerLines:f}=Y4o(t,o,r),I=t.start&&typeof t.start.column=="number",C=String(A).length,E=(n?w3n(e):e).split(E3n,A).slice(l,A).map((N,B)=>{let F=l+1+B,J=` ${` ${F}`.slice(-C)} |`,ae=f[F],ne=!f[F+1];if(ae){let ce="";if(Array.isArray(ae)){let fe=N.slice(0,Math.max(ae[0]-1,0)).replace(/[^\t]/g," "),ue=ae[1]||1;ce=[` `,a.gutter(J.replace(/\d/g," "))," ",fe,a.marker("^").repeat(ue)].join(""),ne&&r.message&&(ce+=" "+a.message(r.message))}return[a.marker(">"),a.gutter(J),N.length>0?` ${N}`:"",ce].join("")}else return` ${a.gutter(J)}${N.length>0?` ${N}`:""}`}).join(` `);return r.message&&!I&&(E=`${" ".repeat(C+1)}${r.message} -${E}`),n?a.reset(E):E}function Q4o(e,t,r,n={}){if(!I3n){I3n=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),b3n(e,{start:{column:r,line:t}},n)}OMe.codeFrameColumns=b3n;OMe.default=Q4o;OMe.highlight=y3n});function X4o(e,t){let r=S3n(e,` -`,t-1),n=t-r-1,a=0;for(let o=r;o>=0;o=S3n(e,` -`,o-1))a++;return{line:a,column:n}}function _pt(e,t,{oneBased:r=!1}={}){if(t<0||t>=e.length&&e.length>0)throw new RangeError("Index out of bounds");let n=X4o(e,t);return r?{line:n.line+1,column:n.column+1}:n}var S3n,v3n=bc(()=>{S3n=(e,t,r)=>r<0?-1:e.lastIndexOf(t,r)});function AIr(e,t,r){typeof t=="string"&&(r=t,t=void 0);let n;try{return JSON.parse(e,t)}catch(l){n=l.message}let a;e?(a=U4o(e,n),n=K4o(n)):n+=" while parsing empty string";let o=new gIr(n);throw o.fileName=r,a&&(o.codeFrame=B3n(e,a),o.rawCodeFrame=B3n(e,a,!1)),o}var w3n,J4o,gIr,B3n,U4o,K4o,T3n=bc(()=>{w3n=Nt(E3n(),1);v3n();J4o=e=>`\\u{${e.codePointAt(0).toString(16)}}`,gIr=class e extends Error{name="JSONError";fileName;codeFrame;rawCodeFrame;#e;constructor(t){super(),this.#e=t,Error.captureStackTrace?.(this,e)}get message(){let{fileName:t,codeFrame:r}=this;return`${this.#e}${t?` in ${t}`:""}${r?` +${E}`),n?a.reset(E):E}function Q4o(e,t,r,n={}){if(!b3n){b3n=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),T3n(e,{start:{column:r,line:t}},n)}WMe.codeFrameColumns=T3n;WMe.default=Q4o;WMe.highlight=w3n});function X4o(e,t){let r=N3n(e,` +`,t-1),n=t-r-1,a=0;for(let o=r;o>=0;o=N3n(e,` +`,o-1))a++;return{line:a,column:n}}function mpt(e,t,{oneBased:r=!1}={}){if(t<0||t>=e.length&&e.length>0)throw new RangeError("Index out of bounds");let n=X4o(e,t);return r?{line:n.line+1,column:n.column+1}:n}var N3n,D3n=bc(()=>{N3n=(e,t,r)=>r<0?-1:e.lastIndexOf(t,r)});function AIr(e,t,r){typeof t=="string"&&(r=t,t=void 0);let n;try{return JSON.parse(e,t)}catch(l){n=l.message}let a;e?(a=U4o(e,n),n=K4o(n)):n+=" while parsing empty string";let o=new gIr(n);throw o.fileName=r,a&&(o.codeFrame=k3n(e,a),o.rawCodeFrame=k3n(e,a,!1)),o}var x3n,J4o,gIr,k3n,U4o,K4o,G3n=bc(()=>{x3n=xt(R3n(),1);D3n();J4o=e=>`\\u{${e.codePointAt(0).toString(16)}}`,gIr=class e extends Error{name="JSONError";fileName;codeFrame;rawCodeFrame;#e;constructor(t){super(),this.#e=t,Error.captureStackTrace?.(this,e)}get message(){let{fileName:t,codeFrame:r}=this;return`${this.#e}${t?` in ${t}`:""}${r?` ${r} -`:""}`}set message(t){this.#e=t}},B3n=(e,t,r=!0)=>(0,w3n.codeFrameColumns)(e,{start:t},{highlightCode:r}),U4o=(e,t)=>{let r=t.match(/in JSON at position (?\d+)(?: \(line (?\d+) column (?\d+)\))?$/);if(!r)return;let{index:n,line:a,column:o}=r.groups;if(a&&o)return{line:Number(a),column:Number(o)};if(n=Number(n),n===e.length){let{line:l,column:A}=_pt(e,e.length-1,{oneBased:!0});return{line:l,column:A+1}}return _pt(e,n,{oneBased:!0})},K4o=e=>e.replace(/(?<=^Unexpected token )(?')?(.)\k/,(t,r,n)=>`"${n}"(${J4o(n)})`)});var R3n=bc(()=>{});import{fileURLToPath as j4o}from"node:url";function PMe(e){return e instanceof URL?j4o(e):e}var dIr=bc(()=>{R3n()});var k3n={};Uf(k3n,{parsePackage:()=>eJo,readPackage:()=>fIr,readPackageSync:()=>IIr});import z4o from"node:fs";import q4o from"node:fs/promises";import $4o from"node:path";async function fIr({cwd:e,normalize:t=!0}={}){let r=await q4o.readFile(D3n(e),"utf8");return pIr(r,t)}function IIr({cwd:e,normalize:t=!0}={}){let r=z4o.readFileSync(D3n(e),"utf8");return pIr(r,t)}function eJo(e,{normalize:t=!0}={}){let r=e!==null&&typeof e=="object"&&!Array.isArray(e);if(!r&&!(typeof e=="string"))throw new TypeError("`packageFile` should be either an `object` or a `string`.");let a=r?structuredClone(e):e;return pIr(a,t)}var N3n,D3n,pIr,hIr=bc(()=>{T3n();N3n=Nt(rIr(),1);dIr();D3n=e=>$4o.resolve(PMe(e)??".","package.json"),pIr=(e,t)=>{let r=typeof e=="string"?AIr(e):e;return t&&(0,N3n.default)(r),r}});import x3n from"node:process";import tJo from"node:fs/promises";import{fileURLToPath as rJo}from"node:url";import nJo from"node:fs";import TM from"node:path";async function G3n(e,{cwd:t=x3n.cwd(),type:r="file",stopAt:n}={}){let a=TM.resolve(ypt(t)??""),{root:o}=TM.parse(a);for(n=TM.resolve(a,ypt(n??o));a&&a!==n&&a!==o;){let l=TM.isAbsolute(e)?e:TM.join(a,e);try{let A=await tJo.stat(l);if(r==="file"&&A.isFile()||r==="directory"&&A.isDirectory())return l}catch{}a=TM.dirname(a)}}function F3n(e,{cwd:t=x3n.cwd(),type:r="file",stopAt:n}={}){let a=TM.resolve(ypt(t)??""),{root:o}=TM.parse(a);for(n=TM.resolve(a,ypt(n)??o);a&&a!==n&&a!==o;){let l=TM.isAbsolute(e)?e:TM.join(a,e);try{let A=nJo.statSync(l,{throwIfNoEntry:!1});if(r==="file"&&A?.isFile()||r==="directory"&&A?.isDirectory())return l}catch{}a=TM.dirname(a)}}var ypt,Z3n=bc(()=>{ypt=e=>e instanceof URL?rJo(e):e});var V3n={};Uf(V3n,{readPackageUp:()=>iJo,readPackageUpSync:()=>sJo});import L3n from"node:path";async function iJo(e){let t=await G3n("package.json",e);if(t)return{packageJson:await fIr({...e,cwd:L3n.dirname(t)}),path:t}}function sJo(e){let t=F3n("package.json",e);if(t)return{packageJson:IIr({...e,cwd:L3n.dirname(t)}),path:t}}var W3n=bc(()=>{Z3n();hIr()});var K3n=H((Pql,U3n)=>{"use strict";U3n.exports=function(e){return Array.isArray(e)?e:[e]}});var z3n=H((Mql,j3n)=>{"use strict";j3n.exports=e=>{let t=typeof e;return e!==null&&(t==="object"||t==="function")}});var $3n=H((Hql,q3n)=>{"use strict";var OIe=z3n(),_Jo=["__proto__","prototype","constructor"],yJo=e=>!e.some(t=>_Jo.includes(t));function bpt(e){let t=e.split("."),r=[];for(let n=0;n{"use strict";var bJo=K3n(),e5n=$3n().get;function EJo(e){return function(t,r){var n=0;return bJo(e).some(function(a){var o,l;if(typeof a=="function"?(o=a(t),l=a(r)):typeof a=="string"?(o=e5n(t,a),l=e5n(r,a)):(o=t,l=r),o===l){n=0;return}return typeof o=="string"&&typeof l=="string"?(n=o.localeCompare(l),n!==0):(n=o{"use strict";var RJo=/[|\\{}()[\]^$+*?.]/g;p5n.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(RJo,"\\$&")}});var I5n=H((C$l,f5n)=>{"use strict";f5n.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 BIr=H((_$l,_5n)=>{var PIe=I5n(),C5n={};for(Spt in PIe)PIe.hasOwnProperty(Spt)&&(C5n[PIe[Spt]]=Spt);var Spt,Id=_5n.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(LZ in Id)if(Id.hasOwnProperty(LZ)){if(!("channels"in Id[LZ]))throw new Error("missing channels property: "+LZ);if(!("labels"in Id[LZ]))throw new Error("missing channel labels property: "+LZ);if(Id[LZ].labels.length!==Id[LZ].channels)throw new Error("channel and label counts mismatch: "+LZ);h5n=Id[LZ].channels,m5n=Id[LZ].labels,delete Id[LZ].channels,delete Id[LZ].labels,Object.defineProperty(Id[LZ],"channels",{value:h5n}),Object.defineProperty(Id[LZ],"labels",{value:m5n})}var h5n,m5n,LZ;Id.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f,I;return o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360),I=(a+o)/2,o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};Id.rgb.hsv=function(e){var t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?a=o=0:(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};Id.rgb.hwb=function(e){var t=e[0],r=e[1],n=e[2],a=Id.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};Id.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a,o,l,A;return A=Math.min(1-t,1-r,1-n),a=(1-t-A)/(1-A)||0,o=(1-r-A)/(1-A)||0,l=(1-n-A)/(1-A)||0,[a*100,o*100,l*100,A*100]};function NJo(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}Id.rgb.keyword=function(e){var t=C5n[e];if(t)return t;var r=1/0,n;for(var a in PIe)if(PIe.hasOwnProperty(a)){var o=PIe[a],l=NJo(e,o);l.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};Id.rgb.lab=function(e){var t=Id.rgb.xyz(e),r=t[0],n=t[1],a=t[2],o,l,A;return r/=95.047,n/=100,a/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=116*n-16,l=500*(r-n),A=200*(n-a),[o,l,A]};Id.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l,A,f;if(r===0)return f=n*255,[f,f,f];n<.5?o=n*(1+r):o=n+r-n*r,a=2*n-o,A=[0,0,0];for(var I=0;I<3;I++)l=t+1/3*-(I-1),l<0&&l++,l>1&&l--,6*l<1?f=a+(o-a)*6*l:2*l<1?f=o:3*l<2?f=a+(o-a)*(2/3-l)*6:f=a,A[I]=f*255;return A};Id.hsl.hsv=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01),l,A;return n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o,A=(n+r)/2,l=n===0?2*a/(o+a):2*r/(n+r),[t,l*100,A*100]};Id.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};Id.hsv.hsl=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l,A;return A=(2-r)*n,o=(2-r)*a,l=r*a,l/=o<=1?o:2-o,l=l||0,A/=2,[t,l*100,A*100]};Id.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o,l,A,f;a>1&&(r/=a,n/=a),o=Math.floor(6*t),l=1-n,A=6*t-o,o&1&&(A=1-A),f=r+A*(l-r);var I,C,b;switch(o){default:case 6:case 0:I=l,C=f,b=r;break;case 1:I=f,C=l,b=r;break;case 2:I=r,C=l,b=f;break;case 3:I=r,C=f,b=l;break;case 4:I=f,C=r,b=l;break;case 5:I=l,C=r,b=f;break}return[I*255,C*255,b*255]};Id.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o,l,A;return o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a),[o*255,l*255,A*255]};Id.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,l=l>.0031308?1.055*Math.pow(l,1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};Id.xyz.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return t/=95.047,r/=100,n/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=116*r-16,o=500*(t-r),l=200*(r-n),[a,o,l]};Id.lab.xyz=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;var A=Math.pow(o,3),f=Math.pow(a,3),I=Math.pow(l,3);return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};Id.lab.lch=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return a=Math.atan2(n,r),o=a*360/2/Math.PI,o<0&&(o+=360),l=Math.sqrt(r*r+n*n),[t,l,o]};Id.lch.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return l=n/360*2*Math.PI,a=r*Math.cos(l),o=r*Math.sin(l),[t,a,o]};Id.rgb.ansi16=function(e){var t=e[0],r=e[1],n=e[2],a=1 in arguments?arguments[1]:Id.rgb.hsv(e)[2];if(a=Math.round(a/50),a===0)return 30;var o=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return a===2&&(o+=60),o};Id.hsv.ansi16=function(e){return Id.rgb.ansi16(Id.hsv.rgb(e),e[2])};Id.rgb.ansi256=function(e){var t=e[0],r=e[1],n=e[2];if(t===r&&r===n)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var a=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return a};Id.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};Id.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,n=Math.floor(e/36)/5*255,a=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[n,a,o]};Id.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};Id.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(A){return A+A}).join(""));var n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};Id.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l+4,f/=6,f%=1,[f*360,l*100,A*100]};Id.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1,a=0;return r<.5?n=2*t*r:n=2*t*(1-r),n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};Id.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};Id.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];var a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};Id.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};Id.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,n=r*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};Id.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};Id.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1-r,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};Id.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};Id.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};Id.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};Id.gray.hsl=Id.gray.hsv=function(e){return[0,0,e[0]]};Id.gray.hwb=function(e){return[0,100,e[0]]};Id.gray.cmyk=function(e){return[0,0,0,e[0]]};Id.gray.lab=function(e){return[e[0],0,0]};Id.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};Id.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var b5n=H((y$l,y5n)=>{var vpt=BIr();function DJo(){for(var e={},t=Object.keys(vpt),r=t.length,n=0;n{var wIr=BIr(),FJo=b5n(),yBe={},ZJo=Object.keys(wIr);function LJo(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function VJo(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var n=e(r);if(typeof n=="object")for(var a=n.length,o=0;o{"use strict";var bBe=S5n(),Bpt=(e,t)=>function(){return`\x1B[${e.apply(bBe,arguments)+t}m`},wpt=(e,t)=>function(){let r=e.apply(bBe,arguments);return`\x1B[${38+t};5;${r}m`},Tpt=(e,t)=>function(){let r=e.apply(bBe,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function WJo(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],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]}};t.color.grey=t.color.gray;for(let a of Object.keys(t)){let o=t[a];for(let l of Object.keys(o)){let A=o[l];t[l]={open:`\x1B[${A[0]}m`,close:`\x1B[${A[1]}m`},o[l]=t[l],e.set(A[0],A[1])}Object.defineProperty(t,a,{value:o,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=a=>a,n=(a,o,l)=>[a,o,l];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:Bpt(r,0)},t.color.ansi256={ansi256:wpt(r,0)},t.color.ansi16m={rgb:Tpt(n,0)},t.bgColor.ansi={ansi:Bpt(r,10)},t.bgColor.ansi256={ansi256:wpt(r,10)},t.bgColor.ansi16m={rgb:Tpt(n,10)};for(let a of Object.keys(bBe)){if(typeof bBe[a]!="object")continue;let o=bBe[a];a==="ansi16"&&(a="ansi"),"ansi16"in o&&(t.color.ansi[a]=Bpt(o.ansi16,0),t.bgColor.ansi[a]=Bpt(o.ansi16,10)),"ansi256"in o&&(t.color.ansi256[a]=wpt(o.ansi256,0),t.bgColor.ansi256[a]=wpt(o.ansi256,10)),"rgb"in o&&(t.color.ansi16m[a]=Tpt(o.rgb,0),t.bgColor.ansi16m[a]=Tpt(o.rgb,10))}return t}Object.defineProperty(v5n,"exports",{enumerable:!0,get:WJo})});var T5n=H((S$l,w5n)=>{"use strict";w5n.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1?!0:n{"use strict";var OJo=Et("os"),RX=T5n(),yG=process.env,EBe;RX("no-color")||RX("no-colors")||RX("color=false")?EBe=!1:(RX("color")||RX("colors")||RX("color=true")||RX("color=always"))&&(EBe=!0);"FORCE_COLOR"in yG&&(EBe=yG.FORCE_COLOR.length===0||parseInt(yG.FORCE_COLOR,10)!==0);function PJo(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function MJo(e){if(EBe===!1)return 0;if(RX("color=16m")||RX("color=full")||RX("color=truecolor"))return 3;if(RX("color=256"))return 2;if(e&&!e.isTTY&&EBe!==!0)return 0;let t=EBe?1:0;if(process.platform==="win32"){let r=OJo.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in yG)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in yG)||yG.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in yG)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(yG.TEAMCITY_VERSION)?1:0;if(yG.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in yG){let r=parseInt((yG.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(yG.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(yG.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(yG.TERM)||"COLORTERM"in yG?1:(yG.TERM==="dumb",t)}function TIr(e){let t=MJo(e);return PJo(t)}R5n.exports={supportsColor:TIr,stdout:TIr(process.stdout),stderr:TIr(process.stderr)}});var F5n=H((B$l,G5n)=>{"use strict";var HJo=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,D5n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,YJo=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,QJo=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,XJo=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function x5n(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):XJo.get(e)||e}function JJo(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n)if(!isNaN(o))r.push(Number(o));else if(a=o.match(YJo))r.push(a[2].replace(QJo,(l,A,f)=>A?x5n(A):f));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`);return r}function UJo(e){D5n.lastIndex=0;let t=[],r;for(;(r=D5n.exec(e))!==null;){let n=r[1];if(r[2]){let a=JJo(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function k5n(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let a of Object.keys(r))if(Array.isArray(r[a])){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);r[a].length>0?n=n[a].apply(n,r[a]):n=n[a]}return n}G5n.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(HJo,(o,l,A,f,I,C)=>{if(l)a.push(x5n(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:k5n(e,r)(b)),r.push({inverse:A,styles:UJo(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(k5n(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var O5n=H((w$l,YMe)=>{"use strict";var NIr=vIr(),lT=B5n(),RIr=N5n().stdout,KJo=F5n(),L5n=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),V5n=["ansi","ansi","ansi256","ansi16m"],W5n=new Set(["gray"]),SBe=Object.create(null);function Z5n(e,t){t=t||{};let r=RIr?RIr.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function HMe(e){if(!this||!(this instanceof HMe)||this.template){let t={};return Z5n(t,e),t.template=function(){let r=[].slice.call(arguments);return qJo.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,HMe.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=HMe,t.template}Z5n(this,e)}L5n&&(lT.blue.open="\x1B[94m");for(let e of Object.keys(lT))lT[e].closeRe=new RegExp(NIr(lT[e].close),"g"),SBe[e]={get(){let t=lT[e];return Rpt.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};SBe.visible={get(){return Rpt.call(this,this._styles||[],!0,"visible")}};lT.color.closeRe=new RegExp(NIr(lT.color.close),"g");for(let e of Object.keys(lT.color.ansi))W5n.has(e)||(SBe[e]={get(){let t=this.level;return function(){let n={open:lT.color[V5n[t]][e].apply(null,arguments),close:lT.color.close,closeRe:lT.color.closeRe};return Rpt.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});lT.bgColor.closeRe=new RegExp(NIr(lT.bgColor.close),"g");for(let e of Object.keys(lT.bgColor.ansi)){if(W5n.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);SBe[t]={get(){let r=this.level;return function(){let a={open:lT.bgColor[V5n[r]][e].apply(null,arguments),close:lT.bgColor.close,closeRe:lT.bgColor.closeRe};return Rpt.call(this,this._styles?this._styles.concat(a):[a],this._empty,e)}}}}var jJo=Object.defineProperties(()=>{},SBe);function Rpt(e,t,r){let n=function(){return zJo.apply(n,arguments)};n._styles=e,n._empty=t;let a=this;return Object.defineProperty(n,"level",{enumerable:!0,get(){return a.level},set(o){a.level=o}}),Object.defineProperty(n,"enabled",{enumerable:!0,get(){return a.enabled},set(o){a.enabled=o}}),n.hasGrey=this.hasGrey||r==="gray"||r==="grey",n.__proto__=jJo,n}function zJo(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let a=1;a{"use strict";Object.defineProperty(QMe,"__esModule",{value:!0});QMe.default=oUo;QMe.shouldHighlight=J5n;var P5n=iIr(),M5n=lIr(),kIr=$Jo(hpt(),!0);function Y5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(Y5n=function(n){return n?r:t})(e)}function $Jo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=Y5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var Q5n=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,kIr.createColors)(!1):kIr.default,H5n=(e,t)=>r=>e(t(r)),eUo=new Set(["as","async","from","get","of","set"]);function tUo(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:H5n(H5n(e.white,e.bgRed),e.bold)}}var rUo=/\r\n|[\n\r\u2028\u2029]/,nUo=/^[()[\]{}]$/,X5n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if((0,M5n.isKeyword)(r.value)||(0,M5n.isStrictReservedWord)(r.value,!0)||eUo.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="o(l)).join(` -`):r+=a}return r}function J5n(e){return Q5n.isColorSupported||e.forceColor}var DIr;function sUo(e){if(e){var t;return(t=DIr)!=null||(DIr=(0,kIr.createColors)(!0)),DIr}return Q5n}function oUo(e,t={}){if(e!==""&&J5n(t)){let r=tUo(sUo(t.forceColor));return iUo(r,e)}else return e}{let e,t;QMe.getChalk=({forceColor:r})=>{var n;if((n=e)!=null||(e=O5n()),r){var a;return(a=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var FIr=H(Npt=>{"use strict";Object.defineProperty(Npt,"__esModule",{value:!0});Npt.codeFrameColumns=eMn;Npt.default=AUo;var K5n=U5n(),GIr=aUo(hpt(),!0);function $5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return($5n=function(n){return n?r:t})(e)}function aUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=$5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var cUo=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,GIr.createColors)(!1):GIr.default,j5n=(e,t)=>r=>e(t(r)),xIr;function lUo(e){if(e){var t;return(t=xIr)!=null||(xIr=(0,GIr.createColors)(!0)),xIr}return cUo}var z5n=!1;function uUo(e){return{gutter:e.gray,marker:j5n(e.red,e.bold),message:j5n(e.red,e.bold)}}var q5n=/\r\n|[\n\r\u2028\u2029]/;function gUo(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let J=t[Q-1].length;B[Q]=[f,J-f+1]}else if(F===N)B[Q]=[0,C];else{let J=t[Q-F].length;B[Q]=[0,J]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function eMn(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0,K5n.shouldHighlight)(r),a=lUo(r.forceColor),o=uUo(a),l=(F,Q)=>n?F(Q):Q,A=e.split(q5n),{start:f,end:I,markerLines:C}=gUo(t,A,r),b=t.start&&typeof t.start.column=="number",E=String(I).length,B=(n?(0,K5n.default)(e,r):e).split(q5n,I).slice(f,I).map((F,Q)=>{let J=f+1+Q,ne=` ${` ${J}`.slice(-E)} |`,ce=C[J],fe=!C[J+1];if(ce){let ue="";if(Array.isArray(ce)){let de=F.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` +`:""}`}set message(t){this.#e=t}},k3n=(e,t,r=!0)=>(0,x3n.codeFrameColumns)(e,{start:t},{highlightCode:r}),U4o=(e,t)=>{let r=t.match(/in JSON at position (?\d+)(?: \(line (?\d+) column (?\d+)\))?$/);if(!r)return;let{index:n,line:a,column:o}=r.groups;if(a&&o)return{line:Number(a),column:Number(o)};if(n=Number(n),n===e.length){let{line:l,column:A}=mpt(e,e.length-1,{oneBased:!0});return{line:l,column:A+1}}return mpt(e,n,{oneBased:!0})},K4o=e=>e.replace(/(?<=^Unexpected token )(?')?(.)\k/,(t,r,n)=>`"${n}"(${J4o(n)})`)});var F3n=bc(()=>{});import{fileURLToPath as j4o}from"node:url";function OMe(e){return e instanceof URL?j4o(e):e}var dIr=bc(()=>{F3n()});var V3n={};Uf(V3n,{parsePackage:()=>eJo,readPackage:()=>fIr,readPackageSync:()=>IIr});import z4o from"node:fs";import q4o from"node:fs/promises";import $4o from"node:path";async function fIr({cwd:e,normalize:t=!0}={}){let r=await q4o.readFile(L3n(e),"utf8");return pIr(r,t)}function IIr({cwd:e,normalize:t=!0}={}){let r=z4o.readFileSync(L3n(e),"utf8");return pIr(r,t)}function eJo(e,{normalize:t=!0}={}){let r=e!==null&&typeof e=="object"&&!Array.isArray(e);if(!r&&!(typeof e=="string"))throw new TypeError("`packageFile` should be either an `object` or a `string`.");let a=r?structuredClone(e):e;return pIr(a,t)}var Z3n,L3n,pIr,hIr=bc(()=>{G3n();Z3n=xt(rIr(),1);dIr();L3n=e=>$4o.resolve(OMe(e)??".","package.json"),pIr=(e,t)=>{let r=typeof e=="string"?AIr(e):e;return t&&(0,Z3n.default)(r),r}});import W3n from"node:process";import tJo from"node:fs/promises";import{fileURLToPath as rJo}from"node:url";import nJo from"node:fs";import RM from"node:path";async function O3n(e,{cwd:t=W3n.cwd(),type:r="file",stopAt:n}={}){let a=RM.resolve(Cpt(t)??""),{root:o}=RM.parse(a);for(n=RM.resolve(a,Cpt(n??o));a&&a!==n&&a!==o;){let l=RM.isAbsolute(e)?e:RM.join(a,e);try{let A=await tJo.stat(l);if(r==="file"&&A.isFile()||r==="directory"&&A.isDirectory())return l}catch{}a=RM.dirname(a)}}function P3n(e,{cwd:t=W3n.cwd(),type:r="file",stopAt:n}={}){let a=RM.resolve(Cpt(t)??""),{root:o}=RM.parse(a);for(n=RM.resolve(a,Cpt(n)??o);a&&a!==n&&a!==o;){let l=RM.isAbsolute(e)?e:RM.join(a,e);try{let A=nJo.statSync(l,{throwIfNoEntry:!1});if(r==="file"&&A?.isFile()||r==="directory"&&A?.isDirectory())return l}catch{}a=RM.dirname(a)}}var Cpt,M3n=bc(()=>{Cpt=e=>e instanceof URL?rJo(e):e});var Y3n={};Uf(Y3n,{readPackageUp:()=>iJo,readPackageUpSync:()=>sJo});import H3n from"node:path";async function iJo(e){let t=await O3n("package.json",e);if(t)return{packageJson:await fIr({...e,cwd:H3n.dirname(t)}),path:t}}function sJo(e){let t=P3n("package.json",e);if(t)return{packageJson:IIr({...e,cwd:H3n.dirname(t)}),path:t}}var Q3n=bc(()=>{M3n();hIr()});var t5n=H((N$l,e5n)=>{"use strict";e5n.exports=function(e){return Array.isArray(e)?e:[e]}});var n5n=H((D$l,r5n)=>{"use strict";r5n.exports=e=>{let t=typeof e;return e!==null&&(t==="object"||t==="function")}});var s5n=H((k$l,i5n)=>{"use strict";var PIe=n5n(),_Jo=["__proto__","prototype","constructor"],yJo=e=>!e.some(t=>_Jo.includes(t));function _pt(e){let t=e.split("."),r=[];for(let n=0;n{"use strict";var bJo=t5n(),o5n=s5n().get;function EJo(e){return function(t,r){var n=0;return bJo(e).some(function(a){var o,l;if(typeof a=="function"?(o=a(t),l=a(r)):typeof a=="string"?(o=o5n(t,a),l=o5n(r,a)):(o=t,l=r),o===l){n=0;return}return typeof o=="string"&&typeof l=="string"?(n=o.localeCompare(l),n!==0):(n=o{"use strict";var RJo=/[|\\{}()[\]^$+*?.]/g;_5n.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(RJo,"\\$&")}});var b5n=H((ceu,y5n)=>{"use strict";y5n.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 BIr=H((leu,B5n)=>{var MIe=b5n(),v5n={};for(bpt in MIe)MIe.hasOwnProperty(bpt)&&(v5n[MIe[bpt]]=bpt);var bpt,Id=B5n.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(VZ in Id)if(Id.hasOwnProperty(VZ)){if(!("channels"in Id[VZ]))throw new Error("missing channels property: "+VZ);if(!("labels"in Id[VZ]))throw new Error("missing channel labels property: "+VZ);if(Id[VZ].labels.length!==Id[VZ].channels)throw new Error("channel and label counts mismatch: "+VZ);E5n=Id[VZ].channels,S5n=Id[VZ].labels,delete Id[VZ].channels,delete Id[VZ].labels,Object.defineProperty(Id[VZ],"channels",{value:E5n}),Object.defineProperty(Id[VZ],"labels",{value:S5n})}var E5n,S5n,VZ;Id.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f,I;return o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360),I=(a+o)/2,o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};Id.rgb.hsv=function(e){var t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?a=o=0:(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};Id.rgb.hwb=function(e){var t=e[0],r=e[1],n=e[2],a=Id.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};Id.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a,o,l,A;return A=Math.min(1-t,1-r,1-n),a=(1-t-A)/(1-A)||0,o=(1-r-A)/(1-A)||0,l=(1-n-A)/(1-A)||0,[a*100,o*100,l*100,A*100]};function NJo(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}Id.rgb.keyword=function(e){var t=v5n[e];if(t)return t;var r=1/0,n;for(var a in MIe)if(MIe.hasOwnProperty(a)){var o=MIe[a],l=NJo(e,o);l.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};Id.rgb.lab=function(e){var t=Id.rgb.xyz(e),r=t[0],n=t[1],a=t[2],o,l,A;return r/=95.047,n/=100,a/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=116*n-16,l=500*(r-n),A=200*(n-a),[o,l,A]};Id.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l,A,f;if(r===0)return f=n*255,[f,f,f];n<.5?o=n*(1+r):o=n+r-n*r,a=2*n-o,A=[0,0,0];for(var I=0;I<3;I++)l=t+1/3*-(I-1),l<0&&l++,l>1&&l--,6*l<1?f=a+(o-a)*6*l:2*l<1?f=o:3*l<2?f=a+(o-a)*(2/3-l)*6:f=a,A[I]=f*255;return A};Id.hsl.hsv=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01),l,A;return n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o,A=(n+r)/2,l=n===0?2*a/(o+a):2*r/(n+r),[t,l*100,A*100]};Id.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};Id.hsv.hsl=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l,A;return A=(2-r)*n,o=(2-r)*a,l=r*a,l/=o<=1?o:2-o,l=l||0,A/=2,[t,l*100,A*100]};Id.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o,l,A,f;a>1&&(r/=a,n/=a),o=Math.floor(6*t),l=1-n,A=6*t-o,o&1&&(A=1-A),f=r+A*(l-r);var I,C,b;switch(o){default:case 6:case 0:I=l,C=f,b=r;break;case 1:I=f,C=l,b=r;break;case 2:I=r,C=l,b=f;break;case 3:I=r,C=f,b=l;break;case 4:I=f,C=r,b=l;break;case 5:I=l,C=r,b=f;break}return[I*255,C*255,b*255]};Id.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o,l,A;return o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a),[o*255,l*255,A*255]};Id.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,l=l>.0031308?1.055*Math.pow(l,1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};Id.xyz.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return t/=95.047,r/=100,n/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=116*r-16,o=500*(t-r),l=200*(r-n),[a,o,l]};Id.lab.xyz=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;var A=Math.pow(o,3),f=Math.pow(a,3),I=Math.pow(l,3);return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};Id.lab.lch=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return a=Math.atan2(n,r),o=a*360/2/Math.PI,o<0&&(o+=360),l=Math.sqrt(r*r+n*n),[t,l,o]};Id.lch.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return l=n/360*2*Math.PI,a=r*Math.cos(l),o=r*Math.sin(l),[t,a,o]};Id.rgb.ansi16=function(e){var t=e[0],r=e[1],n=e[2],a=1 in arguments?arguments[1]:Id.rgb.hsv(e)[2];if(a=Math.round(a/50),a===0)return 30;var o=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return a===2&&(o+=60),o};Id.hsv.ansi16=function(e){return Id.rgb.ansi16(Id.hsv.rgb(e),e[2])};Id.rgb.ansi256=function(e){var t=e[0],r=e[1],n=e[2];if(t===r&&r===n)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var a=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return a};Id.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};Id.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,n=Math.floor(e/36)/5*255,a=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[n,a,o]};Id.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};Id.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(A){return A+A}).join(""));var n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};Id.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l+4,f/=6,f%=1,[f*360,l*100,A*100]};Id.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1,a=0;return r<.5?n=2*t*r:n=2*t*(1-r),n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};Id.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};Id.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];var a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};Id.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};Id.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,n=r*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};Id.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};Id.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1-r,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};Id.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};Id.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};Id.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};Id.gray.hsl=Id.gray.hsv=function(e){return[0,0,e[0]]};Id.gray.hwb=function(e){return[0,100,e[0]]};Id.gray.cmyk=function(e){return[0,0,0,e[0]]};Id.gray.lab=function(e){return[e[0],0,0]};Id.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};Id.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var T5n=H((ueu,w5n)=>{var Ept=BIr();function DJo(){for(var e={},t=Object.keys(Ept),r=t.length,n=0;n{var wIr=BIr(),FJo=T5n(),yBe={},ZJo=Object.keys(wIr);function LJo(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function VJo(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var n=e(r);if(typeof n=="object")for(var a=n.length,o=0;o{"use strict";var bBe=N5n(),Spt=(e,t)=>function(){return`\x1B[${e.apply(bBe,arguments)+t}m`},vpt=(e,t)=>function(){let r=e.apply(bBe,arguments);return`\x1B[${38+t};5;${r}m`},Bpt=(e,t)=>function(){let r=e.apply(bBe,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function WJo(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],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]}};t.color.grey=t.color.gray;for(let a of Object.keys(t)){let o=t[a];for(let l of Object.keys(o)){let A=o[l];t[l]={open:`\x1B[${A[0]}m`,close:`\x1B[${A[1]}m`},o[l]=t[l],e.set(A[0],A[1])}Object.defineProperty(t,a,{value:o,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=a=>a,n=(a,o,l)=>[a,o,l];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:Spt(r,0)},t.color.ansi256={ansi256:vpt(r,0)},t.color.ansi16m={rgb:Bpt(n,0)},t.bgColor.ansi={ansi:Spt(r,10)},t.bgColor.ansi256={ansi256:vpt(r,10)},t.bgColor.ansi16m={rgb:Bpt(n,10)};for(let a of Object.keys(bBe)){if(typeof bBe[a]!="object")continue;let o=bBe[a];a==="ansi16"&&(a="ansi"),"ansi16"in o&&(t.color.ansi[a]=Spt(o.ansi16,0),t.bgColor.ansi[a]=Spt(o.ansi16,10)),"ansi256"in o&&(t.color.ansi256[a]=vpt(o.ansi256,0),t.bgColor.ansi256[a]=vpt(o.ansi256,10)),"rgb"in o&&(t.color.ansi16m[a]=Bpt(o.rgb,0),t.bgColor.ansi16m[a]=Bpt(o.rgb,10))}return t}Object.defineProperty(D5n,"exports",{enumerable:!0,get:WJo})});var G5n=H((deu,x5n)=>{"use strict";x5n.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1?!0:n{"use strict";var OJo=Et("os"),NX=G5n(),bG=process.env,EBe;NX("no-color")||NX("no-colors")||NX("color=false")?EBe=!1:(NX("color")||NX("colors")||NX("color=true")||NX("color=always"))&&(EBe=!0);"FORCE_COLOR"in bG&&(EBe=bG.FORCE_COLOR.length===0||parseInt(bG.FORCE_COLOR,10)!==0);function PJo(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function MJo(e){if(EBe===!1)return 0;if(NX("color=16m")||NX("color=full")||NX("color=truecolor"))return 3;if(NX("color=256"))return 2;if(e&&!e.isTTY&&EBe!==!0)return 0;let t=EBe?1:0;if(process.platform==="win32"){let r=OJo.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in bG)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in bG)||bG.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in bG)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(bG.TEAMCITY_VERSION)?1:0;if(bG.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in bG){let r=parseInt((bG.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(bG.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(bG.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(bG.TERM)||"COLORTERM"in bG?1:(bG.TERM==="dumb",t)}function TIr(e){let t=MJo(e);return PJo(t)}F5n.exports={supportsColor:TIr,stdout:TIr(process.stdout),stderr:TIr(process.stderr)}});var P5n=H((feu,O5n)=>{"use strict";var HJo=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,L5n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,YJo=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,QJo=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,XJo=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function W5n(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):XJo.get(e)||e}function JJo(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n)if(!isNaN(o))r.push(Number(o));else if(a=o.match(YJo))r.push(a[2].replace(QJo,(l,A,f)=>A?W5n(A):f));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`);return r}function UJo(e){L5n.lastIndex=0;let t=[],r;for(;(r=L5n.exec(e))!==null;){let n=r[1];if(r[2]){let a=JJo(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function V5n(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let a of Object.keys(r))if(Array.isArray(r[a])){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);r[a].length>0?n=n[a].apply(n,r[a]):n=n[a]}return n}O5n.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(HJo,(o,l,A,f,I,C)=>{if(l)a.push(W5n(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:V5n(e,r)(b)),r.push({inverse:A,styles:UJo(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(V5n(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var X5n=H((Ieu,HMe)=>{"use strict";var NIr=vIr(),uT=k5n(),RIr=Z5n().stdout,KJo=P5n(),H5n=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),Y5n=["ansi","ansi","ansi256","ansi16m"],Q5n=new Set(["gray"]),SBe=Object.create(null);function M5n(e,t){t=t||{};let r=RIr?RIr.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function MMe(e){if(!this||!(this instanceof MMe)||this.template){let t={};return M5n(t,e),t.template=function(){let r=[].slice.call(arguments);return qJo.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,MMe.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=MMe,t.template}M5n(this,e)}H5n&&(uT.blue.open="\x1B[94m");for(let e of Object.keys(uT))uT[e].closeRe=new RegExp(NIr(uT[e].close),"g"),SBe[e]={get(){let t=uT[e];return wpt.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};SBe.visible={get(){return wpt.call(this,this._styles||[],!0,"visible")}};uT.color.closeRe=new RegExp(NIr(uT.color.close),"g");for(let e of Object.keys(uT.color.ansi))Q5n.has(e)||(SBe[e]={get(){let t=this.level;return function(){let n={open:uT.color[Y5n[t]][e].apply(null,arguments),close:uT.color.close,closeRe:uT.color.closeRe};return wpt.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});uT.bgColor.closeRe=new RegExp(NIr(uT.bgColor.close),"g");for(let e of Object.keys(uT.bgColor.ansi)){if(Q5n.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);SBe[t]={get(){let r=this.level;return function(){let a={open:uT.bgColor[Y5n[r]][e].apply(null,arguments),close:uT.bgColor.close,closeRe:uT.bgColor.closeRe};return wpt.call(this,this._styles?this._styles.concat(a):[a],this._empty,e)}}}}var jJo=Object.defineProperties(()=>{},SBe);function wpt(e,t,r){let n=function(){return zJo.apply(n,arguments)};n._styles=e,n._empty=t;let a=this;return Object.defineProperty(n,"level",{enumerable:!0,get(){return a.level},set(o){a.level=o}}),Object.defineProperty(n,"enabled",{enumerable:!0,get(){return a.enabled},set(o){a.enabled=o}}),n.hasGrey=this.hasGrey||r==="gray"||r==="grey",n.__proto__=jJo,n}function zJo(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let a=1;a{"use strict";Object.defineProperty(YMe,"__esModule",{value:!0});YMe.default=oUo;YMe.shouldHighlight=$5n;var J5n=iIr(),U5n=lIr(),kIr=$Jo(fpt(),!0);function j5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(j5n=function(n){return n?r:t})(e)}function $Jo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=j5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var z5n=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,kIr.createColors)(!1):kIr.default,K5n=(e,t)=>r=>e(t(r)),eUo=new Set(["as","async","from","get","of","set"]);function tUo(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:K5n(K5n(e.white,e.bgRed),e.bold)}}var rUo=/\r\n|[\n\r\u2028\u2029]/,nUo=/^[()[\]{}]$/,q5n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if((0,U5n.isKeyword)(r.value)||(0,U5n.isStrictReservedWord)(r.value,!0)||eUo.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="o(l)).join(` +`):r+=a}return r}function $5n(e){return z5n.isColorSupported||e.forceColor}var DIr;function sUo(e){if(e){var t;return(t=DIr)!=null||(DIr=(0,kIr.createColors)(!0)),DIr}return z5n}function oUo(e,t={}){if(e!==""&&$5n(t)){let r=tUo(sUo(t.forceColor));return iUo(r,e)}else return e}{let e,t;YMe.getChalk=({forceColor:r})=>{var n;if((n=e)!=null||(e=X5n()),r){var a;return(a=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var FIr=H(Tpt=>{"use strict";Object.defineProperty(Tpt,"__esModule",{value:!0});Tpt.codeFrameColumns=oMn;Tpt.default=AUo;var tMn=eMn(),GIr=aUo(fpt(),!0);function sMn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(sMn=function(n){return n?r:t})(e)}function aUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=sMn(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var cUo=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,GIr.createColors)(!1):GIr.default,rMn=(e,t)=>r=>e(t(r)),xIr;function lUo(e){if(e){var t;return(t=xIr)!=null||(xIr=(0,GIr.createColors)(!0)),xIr}return cUo}var nMn=!1;function uUo(e){return{gutter:e.gray,marker:rMn(e.red,e.bold),message:rMn(e.red,e.bold)}}var iMn=/\r\n|[\n\r\u2028\u2029]/;function gUo(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let J=t[Q-1].length;B[Q]=[f,J-f+1]}else if(F===N)B[Q]=[0,C];else{let J=t[Q-F].length;B[Q]=[0,J]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function oMn(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0,tMn.shouldHighlight)(r),a=lUo(r.forceColor),o=uUo(a),l=(F,Q)=>n?F(Q):Q,A=e.split(iMn),{start:f,end:I,markerLines:C}=gUo(t,A,r),b=t.start&&typeof t.start.column=="number",E=String(I).length,B=(n?(0,tMn.default)(e,r):e).split(iMn,I).slice(f,I).map((F,Q)=>{let J=f+1+Q,ne=` ${` ${J}`.slice(-E)} |`,ce=C[J],fe=!C[J+1];if(ce){let ue="";if(Array.isArray(ce)){let de=F.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` `,l(o.gutter,ne.replace(/\d/g," "))," ",de,l(o.marker,"^").repeat(be)].join(""),fe&&r.message&&(ue+=" "+l(o.message,r.message))}return[l(o.marker,">"),l(o.gutter,ne),F.length>0?` ${F}`:"",ue].join("")}else return` ${l(o.gutter,ne)}${F.length>0?` ${F}`:""}`}).join(` `);return r.message&&!b&&(B=`${" ".repeat(E+1)}${r.message} -${B}`),n?a.reset(B):B}function AUo(e,t,r,n={}){if(!z5n){z5n=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),eMn(e,{start:{column:r,line:t}},n)}});var AMn=H(Pm=>{"use strict";var XMe=Symbol.for("react.element"),dUo=Symbol.for("react.portal"),pUo=Symbol.for("react.fragment"),fUo=Symbol.for("react.strict_mode"),IUo=Symbol.for("react.profiler"),hUo=Symbol.for("react.provider"),mUo=Symbol.for("react.context"),CUo=Symbol.for("react.forward_ref"),_Uo=Symbol.for("react.suspense"),yUo=Symbol.for("react.memo"),bUo=Symbol.for("react.lazy"),tMn=Symbol.iterator;function EUo(e){return e===null||typeof e!="object"?null:(e=tMn&&e[tMn]||e["@@iterator"],typeof e=="function"?e:null)}var iMn={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},sMn=Object.assign,oMn={};function vBe(e,t,r){this.props=e,this.context=t,this.refs=oMn,this.updater=r||iMn}vBe.prototype.isReactComponent={};vBe.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};vBe.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function aMn(){}aMn.prototype=vBe.prototype;function LIr(e,t,r){this.props=e,this.context=t,this.refs=oMn,this.updater=r||iMn}var VIr=LIr.prototype=new aMn;VIr.constructor=LIr;sMn(VIr,vBe.prototype);VIr.isPureReactComponent=!0;var rMn=Array.isArray,cMn=Object.prototype.hasOwnProperty,WIr={current:null},lMn={key:!0,ref:!0,__self:!0,__source:!0};function uMn(e,t,r){var n,a={},o=null,l=null;if(t!=null)for(n in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(o=""+t.key),t)cMn.call(t,n)&&!lMn.hasOwnProperty(n)&&(a[n]=t[n]);var A=arguments.length-2;if(A===1)a.children=r;else if(1{"use strict";dMn.exports=AMn()});var PIr=H((BBe,JMe)=>{(function(){var e,t="4.17.21",r=200,n="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",o="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",A=500,f="__lodash_placeholder__",I=1,C=2,b=4,E=1,N=2,B=1,F=2,Q=4,J=8,ae=16,ne=32,ce=64,fe=128,ue=256,de=512,be=30,Se="...",De=800,k=16,tt=1,ze=2,Le=3,Je=1/0,ft=9007199254740991,lt=17976931348623157e292,Ot=NaN,Er=4294967295,Sr=Er-1,jt=Er>>>1,Bt=[["ary",fe],["bind",B],["bindKey",F],["curry",J],["curryRight",ae],["flip",de],["partial",ne],["partialRight",ce],["rearg",ue]],Dt="[object Arguments]",Fr="[object Array]",$t="[object AsyncFunction]",Xt="[object Boolean]",lr="[object Date]",cr="[object DOMException]",Ar="[object Error]",qr="[object Function]",yn="[object GeneratorFunction]",ke="[object Map]",zt="[object Number]",Fn="[object Null]",Nn="[object Object]",Hi="[object Promise]",Ao="[object Proxy]",Vr="[object RegExp]",xi="[object Set]",no="[object String]",ga="[object Symbol]",Ya="[object Undefined]",Gc="[object WeakMap]",ol="[object WeakSet]",Sc="[object ArrayBuffer]",Hr="[object DataView]",Or="[object Float32Array]",Ft="[object Float64Array]",zr="[object Int8Array]",Rn="[object Int16Array]",Pr="[object Int32Array]",Qi="[object Uint8Array]",ps="[object Uint8ClampedArray]",yo="[object Uint16Array]",bo="[object Uint32Array]",Qa=/\b__p \+= '';/g,gc=/\b(__p \+=) '' \+/g,_g=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Nc=/&(?:amp|lt|gt|quot|#39);/g,sA=/[&<>"']/g,ma=RegExp(Nc.source),vu=RegExp(sA.source),li=/<%-([\s\S]+?)%>/g,Ei=/<%([\s\S]+?)%>/g,Ws=/<%=([\s\S]+?)%>/g,Xa=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ac=/^\w*$/,Ql=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Oc=/[\\^$.*+?()[\]{}|]/g,vg=RegExp(Oc.source),Kl=/^\s+/,Ju=/\s/,Da=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,fu=/\{\n\/\* \[wrapped with (.+)\] \*/,yg=/,? & /,_I=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Kh=/[()=,{}\[\]\/\s]/,Ri=/\\(\\)?/g,Do=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Pt=/\w*$/,Hu=/^[-+]0x[0-9a-f]+$/i,Ru=/^0b[01]+$/i,Vs=/^\[object .+?Constructor\]$/,Uu=/^0o[0-7]+$/i,Yn=/^(?:0|[1-9]\d*)$/,Ko=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Sg=/($^)/,HA=/['\n\r\u2028\u2029\\]/g,ZA="\\ud800-\\udfff",$i="\\u0300-\\u036f",gl="\\ufe20-\\ufe2f",zf="\\u20d0-\\u20ff",zd=$i+gl+zf,aA="\\u2700-\\u27bf",so="a-z\\xdf-\\xf6\\xf8-\\xff",Ki="\\xac\\xb1\\xd7\\xf7",cc="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Xs="\\u2000-\\u206f",ws=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Gs="A-Z\\xc0-\\xd6\\xd8-\\xde",Ma="\\ufe0e\\ufe0f",Dc=Ki+cc+Xs+ws,As="['\u2019]",Nf="["+ZA+"]",Am="["+Dc+"]",Zl="["+zd+"]",rc="\\d+",ad="["+aA+"]",Qm="["+so+"]",rl="[^"+ZA+Dc+rc+aA+so+Gs+"]",LA="\\ud83c[\\udffb-\\udfff]",VA="(?:"+Zl+"|"+LA+")",bl="[^"+ZA+"]",bg="(?:\\ud83c[\\udde6-\\uddff]){2}",Yp="[\\ud800-\\udbff][\\udc00-\\udfff]",YA="["+Gs+"]",vr="\\u200d",Zt="(?:"+Qm+"|"+rl+")",bn="(?:"+YA+"|"+rl+")",ls="(?:"+As+"(?:d|ll|m|re|s|t|ve))?",oa="(?:"+As+"(?:D|LL|M|RE|S|T|VE))?",Fs=VA+"?",Oa="["+Ma+"]?",Ca="(?:"+vr+"(?:"+[bl,bg,Yp].join("|")+")"+Oa+Fs+")*",gd="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Dp="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",sp=Oa+Fs+Ca,QA="(?:"+[ad,bg,Yp].join("|")+")"+sp,ff="(?:"+[bl+Zl+"?",Zl,bg,Yp,Nf].join("|")+")",Zs=RegExp(As,"g"),io=RegExp(Zl,"g"),Ea=RegExp(LA+"(?="+LA+")|"+ff+sp,"g"),Hl=RegExp([YA+"?"+Qm+"+"+ls+"(?="+[Am,YA,"$"].join("|")+")",bn+"+"+oa+"(?="+[Am,YA+Zt,"$"].join("|")+")",YA+"?"+Zt+"+"+ls,YA+"+"+oa,Dp,gd,rc,QA].join("|"),"g"),Dr=RegExp("["+vr+ZA+zd+Ma+"]"),On=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,di=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],aa=-1,Bo={};Bo[Or]=Bo[Ft]=Bo[zr]=Bo[Rn]=Bo[Pr]=Bo[Qi]=Bo[ps]=Bo[yo]=Bo[bo]=!0,Bo[Dt]=Bo[Fr]=Bo[Sc]=Bo[Xt]=Bo[Hr]=Bo[lr]=Bo[Ar]=Bo[qr]=Bo[ke]=Bo[zt]=Bo[Nn]=Bo[Vr]=Bo[xi]=Bo[no]=Bo[Gc]=!1;var us={};us[Dt]=us[Fr]=us[Sc]=us[Hr]=us[Xt]=us[lr]=us[Or]=us[Ft]=us[zr]=us[Rn]=us[Pr]=us[ke]=us[zt]=us[Nn]=us[Vr]=us[xi]=us[no]=us[ga]=us[Qi]=us[ps]=us[yo]=us[bo]=!0,us[Ar]=us[qr]=us[Gc]=!1;var Xl={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},WA={"&":"&","<":"<",">":">",'"':""","'":"'"},If={"&":"&","<":"<",">":">",""":'"',"'":"'"},rf={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},op=parseFloat,bd=parseInt,$1=typeof global=="object"&&global&&global.Object===Object&&global,Cw=typeof self=="object"&&self&&self.Object===Object&&self,XA=$1||Cw||Function("return this")(),Ac=typeof BBe=="object"&&BBe&&!BBe.nodeType&&BBe,Gm=Ac&&typeof JMe=="object"&&JMe&&!JMe.nodeType&&JMe,JS=Gm&&Gm.exports===Ac,qd=JS&&$1.process,hh=function(){try{var cs=Gm&&Gm.require&&Gm.require("util").types;return cs||qd&&qd.binding&&qd.binding("util")}catch{}}(),Qp=hh&&hh.isArrayBuffer,dC=hh&&hh.isDate,oE=hh&&hh.isMap,K_=hh&&hh.isRegExp,ey=hh&&hh.isSet,KE=hh&&hh.isTypedArray;function NC(cs,na,ko){switch(ko.length){case 0:return cs.call(na);case 1:return cs.call(na,ko[0]);case 2:return cs.call(na,ko[0],ko[1]);case 3:return cs.call(na,ko[0],ko[1],ko[2])}return cs.apply(na,ko)}function n_(cs,na,ko,ki){for(var jl=-1,hd=cs==null?0:cs.length;++jl-1}function qf(cs,na,ko){for(var ki=-1,jl=cs==null?0:cs.length;++ki-1;);return ko}function e2(cs,na){for(var ko=cs.length;ko--&&Yr(na,cs[ko],0)>-1;);return ko}function N_(cs,na){for(var ko=cs.length,ki=0;ko--;)cs[ko]===na&&++ki;return ki}var DC=kc(Xl),Jm=kc(WA);function US(cs){return"\\"+rf[cs]}function Zg(cs,na){return cs==null?e:cs[na]}function Cb(cs){return Dr.test(cs)}function pC(cs){return On.test(cs)}function kC(cs){for(var na,ko=[];!(na=cs.next()).done;)ko.push(na.value);return ko}function U2(cs){var na=-1,ko=Array(cs.size);return cs.forEach(function(ki,jl){ko[++na]=[jl,ki]}),ko}function j_(cs,na){return function(ko){return cs(na(ko))}}function xC(cs,na){for(var ko=-1,ki=cs.length,jl=0,hd=[];++ko-1}function Eb(ie,he){var qe=this.__data__,Ut=IB(qe,ie);return Ut<0?(++this.size,qe.push([ie,he])):qe[Ut][1]=he,this}k_.prototype.clear=n1,k_.prototype.delete=i1,k_.prototype.get=iy,k_.prototype.has=VT,k_.prototype.set=Eb;function i_(ie){var he=-1,qe=ie==null?0:ie.length;for(this.clear();++he=he?ie:he)),ie}function SI(ie,he,qe,Ut,Qr,kn){var Fi,rs=he&I,qs=he&C,vc=he&b;if(qe&&(Fi=Qr?qe(ie,Ut,Qr,kn):qe(ie)),Fi!==e)return Fi;if(!HI(ie))return ie;var qa=vd(ie);if(qa){if(Fi=CE(ie),!rs)return ml(ie,Fi)}else{var fc=Gh(ie),Sl=fc==qr||fc==yn;if(YT(ie))return lA(ie,rs);if(fc==Nn||fc==Dt||Sl&&!Qr){if(Fi=qs||Sl?{}:rN(ie),!rs)return qs?eS(ie,S0(Fi,ie)):rI(ie,WT(Fi,ie))}else{if(!us[fc])return Qr?ie:{};Fi=a3(ie,fc,rs)}}kn||(kn=new lc);var Zu=kn.get(ie);if(Zu)return Zu;kn.set(ie,Fi),OJ(ie)?ie.forEach(function(Bd){Fi.add(SI(Bd,he,qe,Bd,ie,kn))}):Qre(ie)&&ie.forEach(function(Bd,iI){Fi.set(iI,SI(Bd,he,qe,iI,ie,kn))});var OA=vc?qs?Xr:kr:qs?Tw:B0,Cf=qa?e:OA(ie);return up(Cf||ie,function(Bd,iI){Cf&&(iI=Bd,Bd=ie[iI]),s1(Fi,iI,SI(Bd,he,qe,iI,ie,kn))}),Fi}function cg(ie){var he=B0(ie);return function(qe){return vb(qe,ie,he)}}function vb(ie,he,qe){var Ut=qe.length;if(ie==null)return!Ut;for(ie=Wd(ie);Ut--;){var Qr=qe[Ut],kn=he[Qr],Fi=ie[Qr];if(Fi===e&&!(Qr in ie)||!kn(Fi))return!1}return!0}function o1(ie,he,qe){if(typeof ie!="function")throw new Um(a);return xd(function(){ie.apply(e,qe)},he)}function q2(ie,he,qe,Ut){var Qr=-1,kn=dm,Fi=!0,rs=ie.length,qs=[],vc=he.length;if(!rs)return qs;qe&&(he=yI(he,gp(qe))),Ut?(kn=qf,Fi=!1):he.length>=r&&(kn=Na,Fi=!1,he=new e0(he));e:for(;++QrQr?0:Qr+qe),Ut=Ut===e||Ut>Qr?Qr:mf(Ut),Ut<0&&(Ut+=Qr),Ut=qe>Ut?0:QT(Ut);qe0&&qe(rs)?he>1?jh(rs,he-1,qe,Ut,Qr):bI(Qr,rs):Ut||(Qr[Qr.length]=rs)}return Qr}var v0=Yu(),cA=Yu(!0);function Iu(ie,he){return ie&&v0(ie,he,B0)}function Kp(ie,he){return ie&&cA(ie,he,B0)}function IC(ie,he){return pe(he,function(qe){return kx(ie[qe])})}function dE(ie,he){he=Ta(he,ie);for(var qe=0,Ut=he.length;ie!=null&&qehe}function dp(ie,he){return ie!=null&&Xp.call(ie,he)}function fF(ie,he){return ie!=null&&he in Wd(ie)}function IF(ie,he,qe){return ie>=TA(he,qe)&&ie=120&&qa.length>=120)?new e0(Fi&&qa):e}qa=ie[0];var fc=-1,Sl=rs[0];e:for(;++fc-1;)rs!==ie&&Dg.call(rs,qs,1),Dg.call(ie,qs,1);return ie}function s2(ie,he){for(var qe=ie?he.length:0,Ut=qe-1;qe--;){var Qr=he[qe];if(qe==Ut||Qr!==kn){var kn=Qr;$d(Qr)?Dg.call(ie,Qr,1):te(ie,Qr)}}return ie}function a1(ie,he){return ie+$E(eI()*(he-ie+1))}function Hf(ie,he,qe,Ut){for(var Qr=-1,kn=rh(Ry((he-ie)/(qe||1)),0),Fi=ko(kn);kn--;)Fi[Ut?kn:++Qr]=ie,ie+=qe;return Fi}function hE(ie,he){var qe="";if(!ie||he<1||he>ft)return qe;do he%2&&(qe+=ie),he=$E(he/2),he&&(ie+=ie);while(he);return qe}function Od(ie,he){return ji(ld(ie,he,Nw),ie+"")}function j(ie){return fB(JJ(ie))}function Z(ie,he){var qe=JJ(ie);return pp(qe,Ed(he,0,qe.length))}function md(ie,he,qe,Ut){if(!HI(ie))return ie;he=Ta(he,ie);for(var Qr=-1,kn=he.length,Fi=kn-1,rs=ie;rs!=null&&++QrQr?0:Qr+he),qe=qe>Qr?Qr:qe,qe<0&&(qe+=Qr),Qr=he>qe?0:qe-he>>>0,he>>>=0;for(var kn=ko(Qr);++Ut>>1,Fi=ie[kn];Fi!==null&&!nI(Fi)&&(qe?Fi<=he:Fi=r){var vc=he?null:qh(ie);if(vc)return GC(vc);Fi=!1,Qr=Na,qs=new e0}else qs=he?[]:rs;e:for(;++Ut=Ut?ie:wb(ie,he,qe)}var Pg=xT||function(ie){return XA.clearTimeout(ie)};function lA(ie,he){if(he)return ie.slice();var qe=ie.length,Ut=Gn?Gn(qe):new ie.constructor(qe);return ie.copy(Ut),Ut}function ih(ie){var he=new ie.constructor(ie.byteLength);return new Jr(he).set(new Jr(ie)),he}function xn(ie,he){var qe=he?ih(ie.buffer):ie.buffer;return new ie.constructor(qe,ie.byteOffset,ie.byteLength)}function rn(ie){var he=new ie.constructor(ie.source,Pt.exec(ie));return he.lastIndex=ie.lastIndex,he}function Ci(ie){return j2?Wd(j2.call(ie)):{}}function Wo(ie,he){var qe=he?ih(ie.buffer):ie.buffer;return new ie.constructor(qe,ie.byteOffset,ie.length)}function ec(ie,he){if(ie!==he){var qe=ie!==e,Ut=ie===null,Qr=ie===ie,kn=nI(ie),Fi=he!==e,rs=he===null,qs=he===he,vc=nI(he);if(!rs&&!vc&&!kn&&ie>he||kn&&Fi&&qs&&!rs&&!vc||Ut&&Fi&&qs||!qe&&qs||!Qr)return 1;if(!Ut&&!kn&&!vc&&ie=rs)return qs;var vc=qe[Ut];return qs*(vc=="desc"?-1:1)}}return ie.index-he.index}function dc(ie,he,qe,Ut){for(var Qr=-1,kn=ie.length,Fi=qe.length,rs=-1,qs=he.length,vc=rh(kn-Fi,0),qa=ko(qs+vc),fc=!Ut;++rs1?qe[Qr-1]:e,Fi=Qr>2?qe[2]:e;for(kn=ie.length>3&&typeof kn=="function"?(Qr--,kn):e,Fi&&RA(qe[0],qe[1],Fi)&&(kn=Qr<3?e:kn,Qr=1),he=Wd(he);++Ut-1?Qr[kn?he[Fi]:Fi]:e}}function MT(ie){return Jt(function(he){var qe=he.length,Ut=qe,Qr=ry.prototype.thru;for(ie&&he.reverse();Ut--;){var kn=he[Ut];if(typeof kn!="function")throw new Um(a);if(Qr&&!Fi&&Is(kn)=="wrapper")var Fi=new ry([],!0)}for(Ut=Fi?Ut:qe;++Ut1&&sI.reverse(),qa&&qsrs))return!1;var vc=kn.get(ie),qa=kn.get(he);if(vc&&qa)return vc==he&&qa==ie;var fc=-1,Sl=!0,Zu=qe&N?new e0:e;for(kn.set(ie,he),kn.set(he,ie);++fc1?"& ":"")+he[Ut],he=he.join(qe>2?", ":" "),ie.replace(Da,`{ +${B}`),n?a.reset(B):B}function AUo(e,t,r,n={}){if(!nMn){nMn=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),oMn(e,{start:{column:r,line:t}},n)}});var mMn=H(Pm=>{"use strict";var QMe=Symbol.for("react.element"),dUo=Symbol.for("react.portal"),pUo=Symbol.for("react.fragment"),fUo=Symbol.for("react.strict_mode"),IUo=Symbol.for("react.profiler"),hUo=Symbol.for("react.provider"),mUo=Symbol.for("react.context"),CUo=Symbol.for("react.forward_ref"),_Uo=Symbol.for("react.suspense"),yUo=Symbol.for("react.memo"),bUo=Symbol.for("react.lazy"),aMn=Symbol.iterator;function EUo(e){return e===null||typeof e!="object"?null:(e=aMn&&e[aMn]||e["@@iterator"],typeof e=="function"?e:null)}var uMn={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},gMn=Object.assign,AMn={};function vBe(e,t,r){this.props=e,this.context=t,this.refs=AMn,this.updater=r||uMn}vBe.prototype.isReactComponent={};vBe.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};vBe.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function dMn(){}dMn.prototype=vBe.prototype;function LIr(e,t,r){this.props=e,this.context=t,this.refs=AMn,this.updater=r||uMn}var VIr=LIr.prototype=new dMn;VIr.constructor=LIr;gMn(VIr,vBe.prototype);VIr.isPureReactComponent=!0;var cMn=Array.isArray,pMn=Object.prototype.hasOwnProperty,WIr={current:null},fMn={key:!0,ref:!0,__self:!0,__source:!0};function IMn(e,t,r){var n,a={},o=null,l=null;if(t!=null)for(n in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(o=""+t.key),t)pMn.call(t,n)&&!fMn.hasOwnProperty(n)&&(a[n]=t[n]);var A=arguments.length-2;if(A===1)a.children=r;else if(1{"use strict";CMn.exports=mMn()});var PIr=H((BBe,XMe)=>{(function(){var e,t="4.17.21",r=200,n="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",o="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",A=500,f="__lodash_placeholder__",I=1,C=2,b=4,E=1,N=2,B=1,F=2,Q=4,J=8,ae=16,ne=32,ce=64,fe=128,ue=256,de=512,be=30,Se="...",De=800,k=16,tt=1,ze=2,Le=3,Je=1/0,ft=9007199254740991,lt=17976931348623157e292,Ot=NaN,Er=4294967295,Sr=Er-1,jt=Er>>>1,Bt=[["ary",fe],["bind",B],["bindKey",F],["curry",J],["curryRight",ae],["flip",de],["partial",ne],["partialRight",ce],["rearg",ue]],Nt="[object Arguments]",Fr="[object Array]",$t="[object AsyncFunction]",Xt="[object Boolean]",lr="[object Date]",cr="[object DOMException]",Ar="[object Error]",qr="[object Function]",_n="[object GeneratorFunction]",ke="[object Map]",zt="[object Number]",Fn="[object Null]",Nn="[object Object]",Hi="[object Promise]",Ao="[object Proxy]",Vr="[object RegExp]",xi="[object Set]",no="[object String]",ga="[object Symbol]",Ya="[object Undefined]",Gc="[object WeakMap]",al="[object WeakSet]",Sc="[object ArrayBuffer]",Hr="[object DataView]",Or="[object Float32Array]",Ft="[object Float64Array]",zr="[object Int8Array]",Rn="[object Int16Array]",Pr="[object Int32Array]",Qi="[object Uint8Array]",ps="[object Uint8ClampedArray]",_o="[object Uint16Array]",yo="[object Uint32Array]",Qa=/\b__p \+= '';/g,gc=/\b(__p \+=) '' \+/g,_g=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Nc=/&(?:amp|lt|gt|quot|#39);/g,oA=/[&<>"']/g,ma=RegExp(Nc.source),vu=RegExp(oA.source),li=/<%-([\s\S]+?)%>/g,Ei=/<%([\s\S]+?)%>/g,Ws=/<%=([\s\S]+?)%>/g,Xa=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ac=/^\w*$/,Ql=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Oc=/[\\^$.*+?()[\]{}|]/g,vg=RegExp(Oc.source),Kl=/^\s+/,Ju=/\s/,Da=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,fu=/\{\n\/\* \[wrapped with (.+)\] \*/,yg=/,? & /,_I=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Kh=/[()=,{}\[\]\/\s]/,Ri=/\\(\\)?/g,Do=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Pt=/\w*$/,Hu=/^[-+]0x[0-9a-f]+$/i,Ru=/^0b[01]+$/i,Vs=/^\[object .+?Constructor\]$/,Uu=/^0o[0-7]+$/i,Yn=/^(?:0|[1-9]\d*)$/,Ko=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Sg=/($^)/,HA=/['\n\r\u2028\u2029\\]/g,ZA="\\ud800-\\udfff",$i="\\u0300-\\u036f",Al="\\ufe20-\\ufe2f",zf="\\u20d0-\\u20ff",zd=$i+Al+zf,cA="\\u2700-\\u27bf",so="a-z\\xdf-\\xf6\\xf8-\\xff",Ki="\\xac\\xb1\\xd7\\xf7",cc="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Xs="\\u2000-\\u206f",ws=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Gs="A-Z\\xc0-\\xd6\\xd8-\\xde",Ma="\\ufe0e\\ufe0f",Dc=Ki+cc+Xs+ws,As="['\u2019]",Nf="["+ZA+"]",Am="["+Dc+"]",Zl="["+zd+"]",rc="\\d+",ad="["+cA+"]",Qm="["+so+"]",rl="[^"+ZA+Dc+rc+cA+so+Gs+"]",LA="\\ud83c[\\udffb-\\udfff]",VA="(?:"+Zl+"|"+LA+")",bl="[^"+ZA+"]",bg="(?:\\ud83c[\\udde6-\\uddff]){2}",Yp="[\\ud800-\\udbff][\\udc00-\\udfff]",YA="["+Gs+"]",vr="\\u200d",Zt="(?:"+Qm+"|"+rl+")",yn="(?:"+YA+"|"+rl+")",ls="(?:"+As+"(?:d|ll|m|re|s|t|ve))?",oa="(?:"+As+"(?:D|LL|M|RE|S|T|VE))?",Fs=VA+"?",Oa="["+Ma+"]?",Ca="(?:"+vr+"(?:"+[bl,bg,Yp].join("|")+")"+Oa+Fs+")*",gd="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Dp="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",sp=Oa+Fs+Ca,QA="(?:"+[ad,bg,Yp].join("|")+")"+sp,ff="(?:"+[bl+Zl+"?",Zl,bg,Yp,Nf].join("|")+")",Zs=RegExp(As,"g"),io=RegExp(Zl,"g"),Ea=RegExp(LA+"(?="+LA+")|"+ff+sp,"g"),Hl=RegExp([YA+"?"+Qm+"+"+ls+"(?="+[Am,YA,"$"].join("|")+")",yn+"+"+oa+"(?="+[Am,YA+Zt,"$"].join("|")+")",YA+"?"+Zt+"+"+ls,YA+"+"+oa,Dp,gd,rc,QA].join("|"),"g"),Dr=RegExp("["+vr+ZA+zd+Ma+"]"),On=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,di=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],aa=-1,vo={};vo[Or]=vo[Ft]=vo[zr]=vo[Rn]=vo[Pr]=vo[Qi]=vo[ps]=vo[_o]=vo[yo]=!0,vo[Nt]=vo[Fr]=vo[Sc]=vo[Xt]=vo[Hr]=vo[lr]=vo[Ar]=vo[qr]=vo[ke]=vo[zt]=vo[Nn]=vo[Vr]=vo[xi]=vo[no]=vo[Gc]=!1;var us={};us[Nt]=us[Fr]=us[Sc]=us[Hr]=us[Xt]=us[lr]=us[Or]=us[Ft]=us[zr]=us[Rn]=us[Pr]=us[ke]=us[zt]=us[Nn]=us[Vr]=us[xi]=us[no]=us[ga]=us[Qi]=us[ps]=us[_o]=us[yo]=!0,us[Ar]=us[qr]=us[Gc]=!1;var Xl={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},WA={"&":"&","<":"<",">":">",'"':""","'":"'"},If={"&":"&","<":"<",">":">",""":'"',"'":"'"},rf={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},op=parseFloat,bd=parseInt,e2=typeof global=="object"&&global&&global.Object===Object&&global,_w=typeof self=="object"&&self&&self.Object===Object&&self,XA=e2||_w||Function("return this")(),Ac=typeof BBe=="object"&&BBe&&!BBe.nodeType&&BBe,Gm=Ac&&typeof XMe=="object"&&XMe&&!XMe.nodeType&&XMe,US=Gm&&Gm.exports===Ac,qd=US&&e2.process,hh=function(){try{var cs=Gm&&Gm.require&&Gm.require("util").types;return cs||qd&&qd.binding&&qd.binding("util")}catch{}}(),Qp=hh&&hh.isArrayBuffer,dC=hh&&hh.isDate,aE=hh&&hh.isMap,j_=hh&&hh.isRegExp,ty=hh&&hh.isSet,jE=hh&&hh.isTypedArray;function DC(cs,na,ko){switch(ko.length){case 0:return cs.call(na);case 1:return cs.call(na,ko[0]);case 2:return cs.call(na,ko[0],ko[1]);case 3:return cs.call(na,ko[0],ko[1],ko[2])}return cs.apply(na,ko)}function i_(cs,na,ko,ki){for(var jl=-1,hd=cs==null?0:cs.length;++jl-1}function qf(cs,na,ko){for(var ki=-1,jl=cs==null?0:cs.length;++ki-1;);return ko}function t2(cs,na){for(var ko=cs.length;ko--&&Yr(na,cs[ko],0)>-1;);return ko}function D_(cs,na){for(var ko=cs.length,ki=0;ko--;)cs[ko]===na&&++ki;return ki}var kC=kc(Xl),Jm=kc(WA);function KS(cs){return"\\"+rf[cs]}function Zg(cs,na){return cs==null?e:cs[na]}function _b(cs){return Dr.test(cs)}function pC(cs){return On.test(cs)}function xC(cs){for(var na,ko=[];!(na=cs.next()).done;)ko.push(na.value);return ko}function K2(cs){var na=-1,ko=Array(cs.size);return cs.forEach(function(ki,jl){ko[++na]=[jl,ki]}),ko}function z_(cs,na){return function(ko){return cs(na(ko))}}function GC(cs,na){for(var ko=-1,ki=cs.length,jl=0,hd=[];++ko-1}function Sb(ie,he){var qe=this.__data__,Ut=hB(qe,ie);return Ut<0?(++this.size,qe.push([ie,he])):qe[Ut][1]=he,this}x_.prototype.clear=i1,x_.prototype.delete=s1,x_.prototype.get=sy,x_.prototype.has=WT,x_.prototype.set=Sb;function s_(ie){var he=-1,qe=ie==null?0:ie.length;for(this.clear();++he=he?ie:he)),ie}function SI(ie,he,qe,Ut,Qr,kn){var Fi,rs=he&I,qs=he&C,vc=he&b;if(qe&&(Fi=Qr?qe(ie,Ut,Qr,kn):qe(ie)),Fi!==e)return Fi;if(!HI(ie))return ie;var qa=vd(ie);if(qa){if(Fi=_E(ie),!rs)return ml(ie,Fi)}else{var fc=Gh(ie),Sl=fc==qr||fc==_n;if(QT(ie))return uA(ie,rs);if(fc==Nn||fc==Nt||Sl&&!Qr){if(Fi=qs||Sl?{}:nN(ie),!rs)return qs?tS(ie,v0(Fi,ie)):rI(ie,OT(Fi,ie))}else{if(!us[fc])return Qr?ie:{};Fi=l3(ie,fc,rs)}}kn||(kn=new lc);var Zu=kn.get(ie);if(Zu)return Zu;kn.set(ie,Fi),PJ(ie)?ie.forEach(function(Bd){Fi.add(SI(Bd,he,qe,Bd,ie,kn))}):Xre(ie)&&ie.forEach(function(Bd,iI){Fi.set(iI,SI(Bd,he,qe,iI,ie,kn))});var OA=vc?qs?Xr:kr:qs?Rw:w0,Cf=qa?e:OA(ie);return up(Cf||ie,function(Bd,iI){Cf&&(iI=Bd,Bd=ie[iI]),o1(Fi,iI,SI(Bd,he,qe,iI,ie,kn))}),Fi}function cg(ie){var he=w0(ie);return function(qe){return Bb(qe,ie,he)}}function Bb(ie,he,qe){var Ut=qe.length;if(ie==null)return!Ut;for(ie=Wd(ie);Ut--;){var Qr=qe[Ut],kn=he[Qr],Fi=ie[Qr];if(Fi===e&&!(Qr in ie)||!kn(Fi))return!1}return!0}function a1(ie,he,qe){if(typeof ie!="function")throw new Um(a);return xd(function(){ie.apply(e,qe)},he)}function $2(ie,he,qe,Ut){var Qr=-1,kn=dm,Fi=!0,rs=ie.length,qs=[],vc=he.length;if(!rs)return qs;qe&&(he=yI(he,gp(qe))),Ut?(kn=qf,Fi=!1):he.length>=r&&(kn=Na,Fi=!1,he=new t0(he));e:for(;++QrQr?0:Qr+qe),Ut=Ut===e||Ut>Qr?Qr:mf(Ut),Ut<0&&(Ut+=Qr),Ut=qe>Ut?0:XT(Ut);qe0&&qe(rs)?he>1?jh(rs,he-1,qe,Ut,Qr):bI(Qr,rs):Ut||(Qr[Qr.length]=rs)}return Qr}var B0=Yu(),lA=Yu(!0);function Iu(ie,he){return ie&&B0(ie,he,w0)}function Kp(ie,he){return ie&&lA(ie,he,w0)}function IC(ie,he){return pe(he,function(qe){return xx(ie[qe])})}function pE(ie,he){he=Ta(he,ie);for(var qe=0,Ut=he.length;ie!=null&&qehe}function dp(ie,he){return ie!=null&&Xp.call(ie,he)}function IF(ie,he){return ie!=null&&he in Wd(ie)}function hF(ie,he,qe){return ie>=TA(he,qe)&&ie=120&&qa.length>=120)?new t0(Fi&&qa):e}qa=ie[0];var fc=-1,Sl=rs[0];e:for(;++fc-1;)rs!==ie&&Dg.call(rs,qs,1),Dg.call(ie,qs,1);return ie}function o2(ie,he){for(var qe=ie?he.length:0,Ut=qe-1;qe--;){var Qr=he[qe];if(qe==Ut||Qr!==kn){var kn=Qr;$d(Qr)?Dg.call(ie,Qr,1):te(ie,Qr)}}return ie}function c1(ie,he){return ie+e1(eI()*(he-ie+1))}function Hf(ie,he,qe,Ut){for(var Qr=-1,kn=rh(Ny((he-ie)/(qe||1)),0),Fi=ko(kn);kn--;)Fi[Ut?kn:++Qr]=ie,ie+=qe;return Fi}function mE(ie,he){var qe="";if(!ie||he<1||he>ft)return qe;do he%2&&(qe+=ie),he=e1(he/2),he&&(ie+=ie);while(he);return qe}function Od(ie,he){return ji(ld(ie,he,Dw),ie+"")}function j(ie){return IB(UJ(ie))}function Z(ie,he){var qe=UJ(ie);return pp(qe,Ed(he,0,qe.length))}function md(ie,he,qe,Ut){if(!HI(ie))return ie;he=Ta(he,ie);for(var Qr=-1,kn=he.length,Fi=kn-1,rs=ie;rs!=null&&++QrQr?0:Qr+he),qe=qe>Qr?Qr:qe,qe<0&&(qe+=Qr),Qr=he>qe?0:qe-he>>>0,he>>>=0;for(var kn=ko(Qr);++Ut>>1,Fi=ie[kn];Fi!==null&&!nI(Fi)&&(qe?Fi<=he:Fi=r){var vc=he?null:qh(ie);if(vc)return FC(vc);Fi=!1,Qr=Na,qs=new t0}else qs=he?[]:rs;e:for(;++Ut=Ut?ie:Tb(ie,he,qe)}var Pg=GT||function(ie){return XA.clearTimeout(ie)};function uA(ie,he){if(he)return ie.slice();var qe=ie.length,Ut=Gn?Gn(qe):new ie.constructor(qe);return ie.copy(Ut),Ut}function ih(ie){var he=new ie.constructor(ie.byteLength);return new Jr(he).set(new Jr(ie)),he}function xn(ie,he){var qe=he?ih(ie.buffer):ie.buffer;return new ie.constructor(qe,ie.byteOffset,ie.byteLength)}function rn(ie){var he=new ie.constructor(ie.source,Pt.exec(ie));return he.lastIndex=ie.lastIndex,he}function Ci(ie){return z2?Wd(z2.call(ie)):{}}function Wo(ie,he){var qe=he?ih(ie.buffer):ie.buffer;return new ie.constructor(qe,ie.byteOffset,ie.length)}function ec(ie,he){if(ie!==he){var qe=ie!==e,Ut=ie===null,Qr=ie===ie,kn=nI(ie),Fi=he!==e,rs=he===null,qs=he===he,vc=nI(he);if(!rs&&!vc&&!kn&&ie>he||kn&&Fi&&qs&&!rs&&!vc||Ut&&Fi&&qs||!qe&&qs||!Qr)return 1;if(!Ut&&!kn&&!vc&&ie=rs)return qs;var vc=qe[Ut];return qs*(vc=="desc"?-1:1)}}return ie.index-he.index}function dc(ie,he,qe,Ut){for(var Qr=-1,kn=ie.length,Fi=qe.length,rs=-1,qs=he.length,vc=rh(kn-Fi,0),qa=ko(qs+vc),fc=!Ut;++rs1?qe[Qr-1]:e,Fi=Qr>2?qe[2]:e;for(kn=ie.length>3&&typeof kn=="function"?(Qr--,kn):e,Fi&&RA(qe[0],qe[1],Fi)&&(kn=Qr<3?e:kn,Qr=1),he=Wd(he);++Ut-1?Qr[kn?he[Fi]:Fi]:e}}function HT(ie){return Jt(function(he){var qe=he.length,Ut=qe,Qr=ny.prototype.thru;for(ie&&he.reverse();Ut--;){var kn=he[Ut];if(typeof kn!="function")throw new Um(a);if(Qr&&!Fi&&Is(kn)=="wrapper")var Fi=new ny([],!0)}for(Ut=Fi?Ut:qe;++Ut1&&sI.reverse(),qa&&qsrs))return!1;var vc=kn.get(ie),qa=kn.get(he);if(vc&&qa)return vc==he&&qa==ie;var fc=-1,Sl=!0,Zu=qe&N?new t0:e;for(kn.set(ie,he),kn.set(he,ie);++fc1?"& ":"")+he[Ut],he=he.join(qe>2?", ":" "),ie.replace(Da,`{ /* [wrapped with `+he+`] */ -`)}function vI(ie){return vd(ie)||DY(ie)||!!(Df&&ie&&ie[Df])}function $d(ie,he){var qe=typeof ie;return he=he??ft,!!he&&(qe=="number"||qe!="symbol"&&Yn.test(ie))&&ie>-1&&ie%1==0&&ie0){if(++he>=De)return arguments[0]}else he=0;return ie.apply(e,arguments)}}function pp(ie,he){var qe=-1,Ut=ie.length,Qr=Ut-1;for(he=he===e?Ut:he;++qe1?ie[he-1]:e;return qe=typeof qe=="function"?(ie.pop(),qe):e,g3(ie,qe)});function A7(ie){var he=pn(ie);return he.__chain__=!0,he}function kL(ie,he){return he(ie),ie}function oN(ie,he){return he(ie)}var vY=Jt(function(ie){var he=ie.length,qe=he?ie[0]:0,Ut=this.__wrapped__,Qr=function(kn){return n2(kn,ie)};return he>1||this.__actions__.length||!(Ut instanceof Ap)||!$d(qe)?this.thru(Qr):(Ut=Ut.slice(qe,+qe+(he?1:0)),Ut.__actions__.push({func:oN,args:[Qr],thisArg:e}),new ry(Ut,this.__chain__).thru(function(kn){return he&&!kn.length&&kn.push(e),kn}))});function xL(){return A7(this)}function Zre(){return new ry(this.value(),this.__chain__)}function MD(){this.__values__===e&&(this.__values__=wB(this.value()));var ie=this.__index__>=this.__values__.length,he=ie?e:this.__values__[this.__index__++];return{done:ie,value:he}}function yge(){return this}function d7(ie){for(var he,qe=this;qe instanceof z2;){var Ut=a7(qe);Ut.__index__=0,Ut.__values__=e,he?Qr.__wrapped__=Ut:he=Ut;var Qr=Ut;qe=qe.__wrapped__}return Qr.__wrapped__=ie,he}function iS(){var ie=this.__wrapped__;if(ie instanceof Ap){var he=ie;return this.__actions__.length&&(he=new Ap(this)),he=he.reverse(),he.__actions__.push({func:oN,args:[pW],thisArg:e}),new ry(he,this.__chain__)}return this.thru(pW)}function aN(){return It(this.__wrapped__,this.__actions__)}var DJ=vx(function(ie,he,qe){Xp.call(ie,qe)?++ie[qe]:ia(ie,qe,1)});function cN(ie,he,qe){var Ut=vd(ie)?hb:Up;return qe&&RA(ie,he,qe)&&(he=e),Ut(ie,Rs(he,3))}function bge(ie,he){var qe=vd(ie)?pe:mp;return qe(ie,Rs(he,3))}var Lre=fY(EJ),p7=fY(_Y);function Gp(ie,he){return jh(mC(ie,he),1)}function FL(ie,he){return jh(mC(ie,he),Je)}function BY(ie,he,qe){return qe=qe===e?1:mf(qe),jh(mC(ie,he),qe)}function hC(ie,he){var qe=vd(ie)?up:r0;return qe(ie,Rs(he,3))}function IW(ie,he){var qe=vd(ie)?Xm:s_;return qe(ie,Rs(he,3))}var HD=vx(function(ie,he,qe){Xp.call(ie,qe)?ie[qe].push(he):ia(ie,qe,[he])});function wY(ie,he,qe,Ut){ie=uN(ie)?ie:JJ(ie),qe=qe&&!Ut?mf(qe):0;var Qr=ie.length;return qe<0&&(qe=rh(Qr+qe,0)),PJ(ie)?qe<=Qr&&ie.indexOf(he,qe)>-1:!!Qr&&Yr(ie,he,qe)>-1}var Vre=Od(function(ie,he,qe){var Ut=-1,Qr=typeof he=="function",kn=uN(ie)?ko(ie.length):[];return r0(ie,function(Fi){kn[++Ut]=Qr?NC(he,Fi,qe):kp(Fi,he,qe)}),kn}),hg=vx(function(ie,he,qe){ia(ie,qe,he)});function mC(ie,he){var qe=vd(ie)?yI:$2;return qe(ie,Rs(he,3))}function PI(ie,he,qe,Ut){return ie==null?[]:(vd(he)||(he=he==null?[]:[he]),qe=Ut?e:qe,vd(qe)||(qe=qe==null?[]:[qe]),tI(ie,he,qe))}var ZL=vx(function(ie,he,qe){ie[qe?0:1].push(he)},function(){return[[],[]]});function Eu(ie,he,qe){var Ut=vd(ie)?J2:Dl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),qe,Qr,r0)}function A3(ie,he,qe){var Ut=vd(ie)?aE:Dl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),qe,Qr,s_)}function Gd(ie,he){var qe=vd(ie)?pe:mp;return qe(ie,mW(Rs(he,3)))}function TY(ie){var he=vd(ie)?fB:j;return he(ie)}function vye(ie,he,qe){(qe?RA(ie,he,qe):he===e)?he=1:he=mf(he);var Ut=vd(ie)?_h:Z;return Ut(ie,he)}function hW(ie){var he=vd(ie)?FC:ky;return he(ie)}function kJ(ie){if(ie==null)return 0;if(uN(ie))return PJ(ie)?Nd(ie):ie.length;var he=Gh(ie);return he==ke||he==xi?ie.size:sy(ie).length}function MI(ie,he,qe){var Ut=vd(ie)?se:VD;return qe&&RA(ie,he,qe)&&(he=e),Ut(ie,Rs(he,3))}var xa=Od(function(ie,he){if(ie==null)return[];var qe=he.length;return qe>1&&RA(ie,he[0],he[1])?he=[]:qe>2&&RA(he[0],he[1],he[2])&&(he=[he[0]]),tI(ie,jh(he,1),[])}),BB=uB||function(){return XA.Date.now()};function n0(ie,he){if(typeof he!="function")throw new Um(a);return ie=mf(ie),function(){if(--ie<1)return he.apply(this,arguments)}}function Wre(ie,he,qe){return he=qe?e:he,he=ie&&he==null?ie.length:he,Ku(ie,fe,e,e,e,e,he)}function LL(ie,he){var qe;if(typeof he!="function")throw new Um(a);return ie=mf(ie),function(){return--ie>0&&(qe=he.apply(this,arguments)),ie<=1&&(he=e),qe}}var fp=Od(function(ie,he,qe){var Ut=B;if(qe.length){var Qr=xC(qe,Hs(fp));Ut|=ne}return Ku(ie,Ut,he,qe,Qr)}),Dx=Od(function(ie,he,qe){var Ut=B|F;if(qe.length){var Qr=xC(qe,Hs(Dx));Ut|=ne}return Ku(he,Ut,ie,qe,Qr)});function RY(ie,he,qe){he=qe?e:he;var Ut=Ku(ie,J,e,e,e,e,e,he);return Ut.placeholder=RY.placeholder,Ut}function Bw(ie,he,qe){he=qe?e:he;var Ut=Ku(ie,ae,e,e,e,e,e,he);return Ut.placeholder=Bw.placeholder,Ut}function uc(ie,he,qe){var Ut,Qr,kn,Fi,rs,qs,vc=0,qa=!1,fc=!1,Sl=!0;if(typeof ie!="function")throw new Um(a);he=A1(he)||0,HI(qe)&&(qa=!!qe.leading,fc="maxWait"in qe,kn=fc?rh(A1(qe.maxWait)||0,he):kn,Sl="trailing"in qe?!!qe.trailing:Sl);function Zu(jp){var pv=Ut,Gy=Qr;return Ut=Qr=e,vc=jp,Fi=ie.apply(Gy,pv),Fi}function OA(jp){return vc=jp,rs=xd(iI,he),qa?Zu(jp):Fi}function Cf(jp){var pv=jp-qs,Gy=jp-vc,aS=he-pv;return fc?TA(aS,kn-Gy):aS}function Bd(jp){var pv=jp-qs,Gy=jp-vc;return qs===e||pv>=he||pv<0||fc&&Gy>=kn}function iI(){var jp=BB();if(Bd(jp))return sI(jp);rs=xd(iI,Cf(jp))}function sI(jp){return rs=e,Sl&&Ut?Zu(jp):(Ut=Qr=e,Fi)}function XT(){rs!==e&&Pg(rs),vc=0,Ut=qs=Qr=rs=e}function oS(){return rs===e?Fi:sI(BB())}function xy(){var jp=BB(),pv=Bd(jp);if(Ut=arguments,Qr=this,qs=jp,pv){if(rs===e)return OA(qs);if(fc)return Pg(rs),rs=xd(iI,he),Zu(qs)}return rs===e&&(rs=xd(iI,he)),Fi}return xy.cancel=XT,xy.flush=oS,xy}var Ege=Od(function(ie,he){return o1(ie,1,he)}),Nu=Od(function(ie,he,qe){return o1(ie,A1(he)||0,qe)});function NY(ie){return Ku(ie,de)}function d3(ie,he){if(typeof ie!="function"||he!=null&&typeof he!="function")throw new Um(a);var qe=function(){var Ut=arguments,Qr=he?he.apply(this,Ut):Ut[0],kn=qe.cache;if(kn.has(Qr))return kn.get(Qr);var Fi=ie.apply(this,Ut);return qe.cache=kn.set(Qr,Fi)||kn,Fi};return qe.cache=new(d3.Cache||i_),qe}d3.Cache=i_;function mW(ie){if(typeof ie!="function")throw new Um(a);return function(){var he=arguments;switch(he.length){case 0:return!ie.call(this);case 1:return!ie.call(this,he[0]);case 2:return!ie.call(this,he[0],he[1]);case 3:return!ie.call(this,he[0],he[1],he[2])}return!ie.apply(this,he)}}function xJ(ie){return LL(2,ie)}var GJ=El(function(ie,he){he=he.length==1&&vd(he[0])?yI(he[0],gp(Rs())):yI(jh(he,1),gp(Rs()));var qe=he.length;return Od(function(Ut){for(var Qr=-1,kn=TA(Ut.length,qe);++Qr=he}),DY=Fm(function(){return arguments}())?Fm:function(ie){return bE(ie)&&Xp.call(ie,"callee")&&!Bg.call(ie,"callee")},vd=ko.isArray,HT=Qp?gp(Qp):xp;function uN(ie){return ie!=null&&yE(ie.length)&&!kx(ie)}function xb(ie){return bE(ie)&&uN(ie)}function f7(ie){return ie===!0||ie===!1||bE(ie)&&Mf(ie)==Xt}var YT=FT||qJ,VL=dC?gp(dC):i2;function I7(ie){return bE(ie)&&ie.nodeType===1&&!kY(ie)}function h7(ie){if(ie==null)return!0;if(uN(ie)&&(vd(ie)||typeof ie=="string"||typeof ie.splice=="function"||YT(ie)||f3(ie)||DY(ie)))return!ie.length;var he=Gh(ie);if(he==ke||he==xi)return!ie.size;if(ye(ie))return!sy(ie).length;for(var qe in ie)if(Xp.call(ie,qe))return!1;return!0}function _E(ie,he){return Ro(ie,he)}function vge(ie,he,qe){qe=typeof qe=="function"?qe:e;var Ut=qe?qe(ie,he):e;return Ut===e?Ro(ie,he,e,qe):!!Ut}function Yre(ie){if(!bE(ie))return!1;var he=Mf(ie);return he==Ar||he==cr||typeof ie.message=="string"&&typeof ie.name=="string"&&!kY(ie)}function Tye(ie){return typeof ie=="number"&&nf(ie)}function kx(ie){if(!HI(ie))return!1;var he=Mf(ie);return he==qr||he==yn||he==$t||he==Ao}function p3(ie){return typeof ie=="number"&&ie==mf(ie)}function yE(ie){return typeof ie=="number"&&ie>-1&&ie%1==0&&ie<=ft}function HI(ie){var he=typeof ie;return ie!=null&&(he=="object"||he=="function")}function bE(ie){return ie!=null&&typeof ie=="object"}var Qre=oE?gp(oE):hB;function Bge(ie,he){return ie===he||Xc(ie,he,ho(he))}function em(ie,he,qe){return qe=typeof qe=="function"?qe:e,Xc(ie,he,ho(he),qe)}function wge(ie){return Xre(ie)&&ie!=+ie}function VJ(ie){if(z(ie))throw new jl(n);return su(ie)}function Lc(ie){return ie===null}function Tge(ie){return ie==null}function Xre(ie){return typeof ie=="number"||bE(ie)&&Mf(ie)==zt}function kY(ie){if(!bE(ie)||Mf(ie)!=Nn)return!1;var he=Ts(ie);if(he===null)return!0;var qe=Xp.call(he,"constructor")&&he.constructor;return typeof qe=="function"&&qe instanceof qe&&qE.call(qe)==_w}var WL=K_?gp(K_):IE;function WJ(ie){return p3(ie)&&ie>=-ft&&ie<=ft}var OJ=ey?gp(ey):wL;function PJ(ie){return typeof ie=="string"||!vd(ie)&&bE(ie)&&Mf(ie)==no}function nI(ie){return typeof ie=="symbol"||bE(ie)&&Mf(ie)==ga}var f3=KE?gp(KE):eN;function MJ(ie){return ie===e}function I3(ie){return bE(ie)&&Gh(ie)==Gc}function m7(ie){return bE(ie)&&Mf(ie)==ol}var h3=EB(Im),Av=EB(function(ie,he){return ie<=he});function wB(ie){if(!ie)return[];if(uN(ie))return PJ(ie)?Mc(ie):ml(ie);if(AI&&ie[AI])return kC(ie[AI]());var he=Gh(ie),qe=he==ke?U2:he==xi?GC:JJ;return qe(ie)}function jm(ie){if(!ie)return ie===0?ie:0;if(ie=A1(ie),ie===Je||ie===-Je){var he=ie<0?-1:1;return he*lt}return ie===ie?ie:0}function mf(ie){var he=jm(ie),qe=he%1;return he===he?qe?he-qe:he:0}function QT(ie){return ie?Ed(mf(ie),0,Er):0}function A1(ie){if(typeof ie=="number")return ie;if(nI(ie))return Ot;if(HI(ie)){var he=typeof ie.valueOf=="function"?ie.valueOf():ie;ie=HI(he)?he+"":he}if(typeof ie!="string")return ie===0?ie:+ie;ie=gI(ie);var qe=Ru.test(ie);return qe||Uu.test(ie)?bd(ie.slice(2),qe?2:8):Hu.test(ie)?Ot:+ie}function xY(ie){return wl(ie,Tw(ie))}function C7(ie){return ie?Ed(mf(ie),-ft,ft):ie===0?ie:0}function CC(ie){return ie==null?"":x(ie)}var Jre=tS(function(ie,he){if(ye(he)||uN(he)){wl(he,B0(he),ie);return}for(var qe in he)Xp.call(he,qe)&&s1(ie,qe,he[qe])}),CA=tS(function(ie,he){wl(he,Tw(he),ie)}),xx=tS(function(ie,he,qe,Ut){wl(he,Tw(he),ie,Ut)}),Ure=tS(function(ie,he,qe,Ut){wl(he,B0(he),ie,Ut)}),TB=Jt(n2);function Rye(ie,he){var qe=t2(ie);return he==null?qe:WT(qe,he)}var Kre=Od(function(ie,he){ie=Wd(ie);var qe=-1,Ut=he.length,Qr=Ut>2?he[2]:e;for(Qr&&RA(he[0],he[1],Qr)&&(Ut=1);++qe1),kn}),wl(ie,Xr(ie),qe),Ut&&(qe=SI(qe,I|C|b,hY));for(var Qr=he.length;Qr--;)te(qe,he[Qr]);return qe});function qre(ie,he){return OL(ie,mW(Rs(he)))}var xge=Jt(function(ie,he){return ie==null?{}:zh(ie,he)});function OL(ie,he){if(ie==null)return{};var qe=yI(Xr(ie),function(Ut){return[Ut]});return he=Rs(he),nv(ie,qe,function(Ut,Qr){return he(Ut,Qr[0])})}function b7(ie,he,qe){he=Ta(he,ie);var Ut=-1,Qr=he.length;for(Qr||(Qr=1,ie=e);++Uthe){var Ut=ie;ie=he,he=Ut}if(qe||ie%1||he%1){var Qr=eI();return TA(ie+Qr*(he-ie+op("1e-"+((Qr+"").length-1))),he)}return a1(ie,he)}var XD=Ew(function(ie,he,qe){return he=he.toLowerCase(),ie+(qe?Zge(he):he)});function Zge(ie){return Fp(CC(ie).toLowerCase())}function ZY(ie){return ie=CC(ie),ie&&ie.replace(Ko,DC).replace(io,"")}function S7(ie,he,qe){ie=CC(ie),he=x(he);var Ut=ie.length;qe=qe===e?Ut:Ed(mf(qe),0,Ut);var Qr=qe;return qe-=he.length,qe>=0&&ie.slice(qe,Qr)==he}function af(ie){return ie=CC(ie),ie&&vu.test(ie)?ie.replace(sA,Jm):ie}function d1(ie){return ie=CC(ie),ie&&vg.test(ie)?ie.replace(Oc,"\\$&"):ie}var Lge=Ew(function(ie,he,qe){return ie+(qe?"-":"")+he.toLowerCase()}),LY=Ew(function(ie,he,qe){return ie+(qe?" ":"")+he.toLowerCase()}),Dye=bB("toLowerCase");function kye(ie,he,qe){ie=CC(ie),he=mf(he);var Ut=he?Nd(ie):0;if(!he||Ut>=he)return ie;var Qr=(he-Ut)/2;return OD($E(Qr),qe)+ie+OD(Ry(Qr),qe)}function xye(ie,he,qe){ie=CC(ie),he=mf(he);var Ut=he?Nd(ie):0;return he&&Ut>>0,qe?(ie=CC(ie),ie&&(typeof he=="string"||he!=null&&!WL(he))&&(he=x(he),!he&&Cb(ie))?Ho(Mc(ie),0,qe):ie.split(he,qe)):[]}var Wge=Ew(function(ie,he,qe){return ie+(qe?" ":"")+Fp(he)});function JD(ie,he,qe){return ie=CC(ie),qe=qe==null?0:Ed(mf(qe),0,ie.length),he=x(he),ie.slice(qe,qe+he.length)==he}function rne(ie,he,qe){var Ut=pn.templateSettings;qe&&RA(ie,he,qe)&&(he=e),ie=CC(ie),he=xx({},he,Ut,oy);var Qr=xx({},he.imports,Ut.imports,oy),kn=B0(Qr),Fi=mb(Qr,kn),rs,qs,vc=0,qa=he.interpolate||Sg,fc="__p += '",Sl=fC((he.escape||Sg).source+"|"+qa.source+"|"+(qa===Ws?Do:Sg).source+"|"+(he.evaluate||Sg).source+"|$","g"),Zu="//# sourceURL="+(Xp.call(he,"sourceURL")?(he.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++aa+"]")+` -`;ie.replace(Sl,function(Bd,iI,sI,XT,oS,xy){return sI||(sI=XT),fc+=ie.slice(vc,xy).replace(HA,US),iI&&(rs=!0,fc+=`' + +`)}function vI(ie){return vd(ie)||kY(ie)||!!(Df&&ie&&ie[Df])}function $d(ie,he){var qe=typeof ie;return he=he??ft,!!he&&(qe=="number"||qe!="symbol"&&Yn.test(ie))&&ie>-1&&ie%1==0&&ie0){if(++he>=De)return arguments[0]}else he=0;return ie.apply(e,arguments)}}function pp(ie,he){var qe=-1,Ut=ie.length,Qr=Ut-1;for(he=he===e?Ut:he;++qe1?ie[he-1]:e;return qe=typeof qe=="function"?(ie.pop(),qe):e,d3(ie,qe)});function d7(ie){var he=pn(ie);return he.__chain__=!0,he}function xL(ie,he){return he(ie),ie}function aN(ie,he){return he(ie)}var BY=Jt(function(ie){var he=ie.length,qe=he?ie[0]:0,Ut=this.__wrapped__,Qr=function(kn){return i2(kn,ie)};return he>1||this.__actions__.length||!(Ut instanceof Ap)||!$d(qe)?this.thru(Qr):(Ut=Ut.slice(qe,+qe+(he?1:0)),Ut.__actions__.push({func:aN,args:[Qr],thisArg:e}),new ny(Ut,this.__chain__).thru(function(kn){return he&&!kn.length&&kn.push(e),kn}))});function FL(){return d7(this)}function Lre(){return new ny(this.value(),this.__chain__)}function HD(){this.__values__===e&&(this.__values__=TB(this.value()));var ie=this.__index__>=this.__values__.length,he=ie?e:this.__values__[this.__index__++];return{done:ie,value:he}}function bge(){return this}function p7(ie){for(var he,qe=this;qe instanceof q2;){var Ut=c7(qe);Ut.__index__=0,Ut.__values__=e,he?Qr.__wrapped__=Ut:he=Ut;var Qr=Ut;qe=qe.__wrapped__}return Qr.__wrapped__=ie,he}function sS(){var ie=this.__wrapped__;if(ie instanceof Ap){var he=ie;return this.__actions__.length&&(he=new Ap(this)),he=he.reverse(),he.__actions__.push({func:aN,args:[fW],thisArg:e}),new ny(he,this.__chain__)}return this.thru(fW)}function cN(){return It(this.__wrapped__,this.__actions__)}var kJ=Bx(function(ie,he,qe){Xp.call(ie,qe)?++ie[qe]:ia(ie,qe,1)});function lN(ie,he,qe){var Ut=vd(ie)?mb:Up;return qe&&RA(ie,he,qe)&&(he=e),Ut(ie,Rs(he,3))}function Ege(ie,he){var qe=vd(ie)?pe:mp;return qe(ie,Rs(he,3))}var Vre=IY(SJ),f7=IY(yY);function Gp(ie,he){return jh(mC(ie,he),1)}function ZL(ie,he){return jh(mC(ie,he),Je)}function wY(ie,he,qe){return qe=qe===e?1:mf(qe),jh(mC(ie,he),qe)}function hC(ie,he){var qe=vd(ie)?up:n0;return qe(ie,Rs(he,3))}function hW(ie,he){var qe=vd(ie)?Xm:o_;return qe(ie,Rs(he,3))}var YD=Bx(function(ie,he,qe){Xp.call(ie,qe)?ie[qe].push(he):ia(ie,qe,[he])});function TY(ie,he,qe,Ut){ie=gN(ie)?ie:UJ(ie),qe=qe&&!Ut?mf(qe):0;var Qr=ie.length;return qe<0&&(qe=rh(Qr+qe,0)),MJ(ie)?qe<=Qr&&ie.indexOf(he,qe)>-1:!!Qr&&Yr(ie,he,qe)>-1}var Wre=Od(function(ie,he,qe){var Ut=-1,Qr=typeof he=="function",kn=gN(ie)?ko(ie.length):[];return n0(ie,function(Fi){kn[++Ut]=Qr?DC(he,Fi,qe):kp(Fi,he,qe)}),kn}),hg=Bx(function(ie,he,qe){ia(ie,qe,he)});function mC(ie,he){var qe=vd(ie)?yI:eS;return qe(ie,Rs(he,3))}function PI(ie,he,qe,Ut){return ie==null?[]:(vd(he)||(he=he==null?[]:[he]),qe=Ut?e:qe,vd(qe)||(qe=qe==null?[]:[qe]),tI(ie,he,qe))}var LL=Bx(function(ie,he,qe){ie[qe?0:1].push(he)},function(){return[[],[]]});function Eu(ie,he,qe){var Ut=vd(ie)?U2:Dl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),qe,Qr,n0)}function p3(ie,he,qe){var Ut=vd(ie)?cE:Dl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),qe,Qr,o_)}function Gd(ie,he){var qe=vd(ie)?pe:mp;return qe(ie,CW(Rs(he,3)))}function RY(ie){var he=vd(ie)?IB:j;return he(ie)}function vye(ie,he,qe){(qe?RA(ie,he,qe):he===e)?he=1:he=mf(he);var Ut=vd(ie)?_h:Z;return Ut(ie,he)}function mW(ie){var he=vd(ie)?ZC:xy;return he(ie)}function xJ(ie){if(ie==null)return 0;if(gN(ie))return MJ(ie)?Nd(ie):ie.length;var he=Gh(ie);return he==ke||he==xi?ie.size:oy(ie).length}function MI(ie,he,qe){var Ut=vd(ie)?se:WD;return qe&&RA(ie,he,qe)&&(he=e),Ut(ie,Rs(he,3))}var xa=Od(function(ie,he){if(ie==null)return[];var qe=he.length;return qe>1&&RA(ie,he[0],he[1])?he=[]:qe>2&&RA(he[0],he[1],he[2])&&(he=[he[0]]),tI(ie,jh(he,1),[])}),wB=gB||function(){return XA.Date.now()};function i0(ie,he){if(typeof he!="function")throw new Um(a);return ie=mf(ie),function(){if(--ie<1)return he.apply(this,arguments)}}function Ore(ie,he,qe){return he=qe?e:he,he=ie&&he==null?ie.length:he,Ku(ie,fe,e,e,e,e,he)}function VL(ie,he){var qe;if(typeof he!="function")throw new Um(a);return ie=mf(ie),function(){return--ie>0&&(qe=he.apply(this,arguments)),ie<=1&&(he=e),qe}}var fp=Od(function(ie,he,qe){var Ut=B;if(qe.length){var Qr=GC(qe,Hs(fp));Ut|=ne}return Ku(ie,Ut,he,qe,Qr)}),kx=Od(function(ie,he,qe){var Ut=B|F;if(qe.length){var Qr=GC(qe,Hs(kx));Ut|=ne}return Ku(he,Ut,ie,qe,Qr)});function NY(ie,he,qe){he=qe?e:he;var Ut=Ku(ie,J,e,e,e,e,e,he);return Ut.placeholder=NY.placeholder,Ut}function ww(ie,he,qe){he=qe?e:he;var Ut=Ku(ie,ae,e,e,e,e,e,he);return Ut.placeholder=ww.placeholder,Ut}function uc(ie,he,qe){var Ut,Qr,kn,Fi,rs,qs,vc=0,qa=!1,fc=!1,Sl=!0;if(typeof ie!="function")throw new Um(a);he=d1(he)||0,HI(qe)&&(qa=!!qe.leading,fc="maxWait"in qe,kn=fc?rh(d1(qe.maxWait)||0,he):kn,Sl="trailing"in qe?!!qe.trailing:Sl);function Zu(jp){var fv=Ut,Fy=Qr;return Ut=Qr=e,vc=jp,Fi=ie.apply(Fy,fv),Fi}function OA(jp){return vc=jp,rs=xd(iI,he),qa?Zu(jp):Fi}function Cf(jp){var fv=jp-qs,Fy=jp-vc,cS=he-fv;return fc?TA(cS,kn-Fy):cS}function Bd(jp){var fv=jp-qs,Fy=jp-vc;return qs===e||fv>=he||fv<0||fc&&Fy>=kn}function iI(){var jp=wB();if(Bd(jp))return sI(jp);rs=xd(iI,Cf(jp))}function sI(jp){return rs=e,Sl&&Ut?Zu(jp):(Ut=Qr=e,Fi)}function JT(){rs!==e&&Pg(rs),vc=0,Ut=qs=Qr=rs=e}function aS(){return rs===e?Fi:sI(wB())}function Gy(){var jp=wB(),fv=Bd(jp);if(Ut=arguments,Qr=this,qs=jp,fv){if(rs===e)return OA(qs);if(fc)return Pg(rs),rs=xd(iI,he),Zu(qs)}return rs===e&&(rs=xd(iI,he)),Fi}return Gy.cancel=JT,Gy.flush=aS,Gy}var Sge=Od(function(ie,he){return a1(ie,1,he)}),Nu=Od(function(ie,he,qe){return a1(ie,d1(he)||0,qe)});function DY(ie){return Ku(ie,de)}function f3(ie,he){if(typeof ie!="function"||he!=null&&typeof he!="function")throw new Um(a);var qe=function(){var Ut=arguments,Qr=he?he.apply(this,Ut):Ut[0],kn=qe.cache;if(kn.has(Qr))return kn.get(Qr);var Fi=ie.apply(this,Ut);return qe.cache=kn.set(Qr,Fi)||kn,Fi};return qe.cache=new(f3.Cache||s_),qe}f3.Cache=s_;function CW(ie){if(typeof ie!="function")throw new Um(a);return function(){var he=arguments;switch(he.length){case 0:return!ie.call(this);case 1:return!ie.call(this,he[0]);case 2:return!ie.call(this,he[0],he[1]);case 3:return!ie.call(this,he[0],he[1],he[2])}return!ie.apply(this,he)}}function GJ(ie){return VL(2,ie)}var FJ=El(function(ie,he){he=he.length==1&&vd(he[0])?yI(he[0],gp(Rs())):yI(jh(he,1),gp(Rs()));var qe=he.length;return Od(function(Ut){for(var Qr=-1,kn=TA(Ut.length,qe);++Qr=he}),kY=Fm(function(){return arguments}())?Fm:function(ie){return EE(ie)&&Xp.call(ie,"callee")&&!Bg.call(ie,"callee")},vd=ko.isArray,YT=Qp?gp(Qp):xp;function gN(ie){return ie!=null&&bE(ie.length)&&!xx(ie)}function Gb(ie){return EE(ie)&&gN(ie)}function I7(ie){return ie===!0||ie===!1||EE(ie)&&Mf(ie)==Xt}var QT=ZT||$J,WL=dC?gp(dC):s2;function h7(ie){return EE(ie)&&ie.nodeType===1&&!xY(ie)}function m7(ie){if(ie==null)return!0;if(gN(ie)&&(vd(ie)||typeof ie=="string"||typeof ie.splice=="function"||QT(ie)||h3(ie)||kY(ie)))return!ie.length;var he=Gh(ie);if(he==ke||he==xi)return!ie.size;if(ye(ie))return!oy(ie).length;for(var qe in ie)if(Xp.call(ie,qe))return!1;return!0}function yE(ie,he){return To(ie,he)}function Bge(ie,he,qe){qe=typeof qe=="function"?qe:e;var Ut=qe?qe(ie,he):e;return Ut===e?To(ie,he,e,qe):!!Ut}function Qre(ie){if(!EE(ie))return!1;var he=Mf(ie);return he==Ar||he==cr||typeof ie.message=="string"&&typeof ie.name=="string"&&!xY(ie)}function Tye(ie){return typeof ie=="number"&&nf(ie)}function xx(ie){if(!HI(ie))return!1;var he=Mf(ie);return he==qr||he==_n||he==$t||he==Ao}function I3(ie){return typeof ie=="number"&&ie==mf(ie)}function bE(ie){return typeof ie=="number"&&ie>-1&&ie%1==0&&ie<=ft}function HI(ie){var he=typeof ie;return ie!=null&&(he=="object"||he=="function")}function EE(ie){return ie!=null&&typeof ie=="object"}var Xre=aE?gp(aE):mB;function wge(ie,he){return ie===he||Xc(ie,he,Io(he))}function em(ie,he,qe){return qe=typeof qe=="function"?qe:e,Xc(ie,he,Io(he),qe)}function Tge(ie){return Jre(ie)&&ie!=+ie}function WJ(ie){if(z(ie))throw new jl(n);return su(ie)}function Lc(ie){return ie===null}function Rge(ie){return ie==null}function Jre(ie){return typeof ie=="number"||EE(ie)&&Mf(ie)==zt}function xY(ie){if(!EE(ie)||Mf(ie)!=Nn)return!1;var he=Ts(ie);if(he===null)return!0;var qe=Xp.call(he,"constructor")&&he.constructor;return typeof qe=="function"&&qe instanceof qe&&$E.call(qe)==yw}var OL=j_?gp(j_):hE;function OJ(ie){return I3(ie)&&ie>=-ft&&ie<=ft}var PJ=ty?gp(ty):TL;function MJ(ie){return typeof ie=="string"||!vd(ie)&&EE(ie)&&Mf(ie)==no}function nI(ie){return typeof ie=="symbol"||EE(ie)&&Mf(ie)==ga}var h3=jE?gp(jE):tN;function HJ(ie){return ie===e}function m3(ie){return EE(ie)&&Gh(ie)==Gc}function C7(ie){return EE(ie)&&Mf(ie)==al}var C3=SB(Im),dv=SB(function(ie,he){return ie<=he});function TB(ie){if(!ie)return[];if(gN(ie))return MJ(ie)?Mc(ie):ml(ie);if(AI&&ie[AI])return xC(ie[AI]());var he=Gh(ie),qe=he==ke?K2:he==xi?FC:UJ;return qe(ie)}function jm(ie){if(!ie)return ie===0?ie:0;if(ie=d1(ie),ie===Je||ie===-Je){var he=ie<0?-1:1;return he*lt}return ie===ie?ie:0}function mf(ie){var he=jm(ie),qe=he%1;return he===he?qe?he-qe:he:0}function XT(ie){return ie?Ed(mf(ie),0,Er):0}function d1(ie){if(typeof ie=="number")return ie;if(nI(ie))return Ot;if(HI(ie)){var he=typeof ie.valueOf=="function"?ie.valueOf():ie;ie=HI(he)?he+"":he}if(typeof ie!="string")return ie===0?ie:+ie;ie=gI(ie);var qe=Ru.test(ie);return qe||Uu.test(ie)?bd(ie.slice(2),qe?2:8):Hu.test(ie)?Ot:+ie}function GY(ie){return Tl(ie,Rw(ie))}function _7(ie){return ie?Ed(mf(ie),-ft,ft):ie===0?ie:0}function CC(ie){return ie==null?"":x(ie)}var Ure=rS(function(ie,he){if(ye(he)||gN(he)){Tl(he,w0(he),ie);return}for(var qe in he)Xp.call(he,qe)&&o1(ie,qe,he[qe])}),_A=rS(function(ie,he){Tl(he,Rw(he),ie)}),Gx=rS(function(ie,he,qe,Ut){Tl(he,Rw(he),ie,Ut)}),Kre=rS(function(ie,he,qe,Ut){Tl(he,w0(he),ie,Ut)}),RB=Jt(i2);function Rye(ie,he){var qe=r2(ie);return he==null?qe:OT(qe,he)}var jre=Od(function(ie,he){ie=Wd(ie);var qe=-1,Ut=he.length,Qr=Ut>2?he[2]:e;for(Qr&&RA(he[0],he[1],Qr)&&(Ut=1);++qe1),kn}),Tl(ie,Xr(ie),qe),Ut&&(qe=SI(qe,I|C|b,mY));for(var Qr=he.length;Qr--;)te(qe,he[Qr]);return qe});function $re(ie,he){return PL(ie,CW(Rs(he)))}var Gge=Jt(function(ie,he){return ie==null?{}:zh(ie,he)});function PL(ie,he){if(ie==null)return{};var qe=yI(Xr(ie),function(Ut){return[Ut]});return he=Rs(he),iv(ie,qe,function(Ut,Qr){return he(Ut,Qr[0])})}function E7(ie,he,qe){he=Ta(he,ie);var Ut=-1,Qr=he.length;for(Qr||(Qr=1,ie=e);++Uthe){var Ut=ie;ie=he,he=Ut}if(qe||ie%1||he%1){var Qr=eI();return TA(ie+Qr*(he-ie+op("1e-"+((Qr+"").length-1))),he)}return c1(ie,he)}var JD=Sw(function(ie,he,qe){return he=he.toLowerCase(),ie+(qe?Lge(he):he)});function Lge(ie){return Fp(CC(ie).toLowerCase())}function LY(ie){return ie=CC(ie),ie&&ie.replace(Ko,kC).replace(io,"")}function v7(ie,he,qe){ie=CC(ie),he=x(he);var Ut=ie.length;qe=qe===e?Ut:Ed(mf(qe),0,Ut);var Qr=qe;return qe-=he.length,qe>=0&&ie.slice(qe,Qr)==he}function af(ie){return ie=CC(ie),ie&&vu.test(ie)?ie.replace(oA,Jm):ie}function p1(ie){return ie=CC(ie),ie&&vg.test(ie)?ie.replace(Oc,"\\$&"):ie}var Vge=Sw(function(ie,he,qe){return ie+(qe?"-":"")+he.toLowerCase()}),VY=Sw(function(ie,he,qe){return ie+(qe?" ":"")+he.toLowerCase()}),Dye=EB("toLowerCase");function kye(ie,he,qe){ie=CC(ie),he=mf(he);var Ut=he?Nd(ie):0;if(!he||Ut>=he)return ie;var Qr=(he-Ut)/2;return PD(e1(Qr),qe)+ie+PD(Ny(Qr),qe)}function xye(ie,he,qe){ie=CC(ie),he=mf(he);var Ut=he?Nd(ie):0;return he&&Ut>>0,qe?(ie=CC(ie),ie&&(typeof he=="string"||he!=null&&!OL(he))&&(he=x(he),!he&&_b(ie))?Ho(Mc(ie),0,qe):ie.split(he,qe)):[]}var Oge=Sw(function(ie,he,qe){return ie+(qe?" ":"")+Fp(he)});function UD(ie,he,qe){return ie=CC(ie),qe=qe==null?0:Ed(mf(qe),0,ie.length),he=x(he),ie.slice(qe,qe+he.length)==he}function nne(ie,he,qe){var Ut=pn.templateSettings;qe&&RA(ie,he,qe)&&(he=e),ie=CC(ie),he=Gx({},he,Ut,ay);var Qr=Gx({},he.imports,Ut.imports,ay),kn=w0(Qr),Fi=Cb(Qr,kn),rs,qs,vc=0,qa=he.interpolate||Sg,fc="__p += '",Sl=fC((he.escape||Sg).source+"|"+qa.source+"|"+(qa===Ws?Do:Sg).source+"|"+(he.evaluate||Sg).source+"|$","g"),Zu="//# sourceURL="+(Xp.call(he,"sourceURL")?(he.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++aa+"]")+` +`;ie.replace(Sl,function(Bd,iI,sI,JT,aS,Gy){return sI||(sI=JT),fc+=ie.slice(vc,Gy).replace(HA,KS),iI&&(rs=!0,fc+=`' + __e(`+iI+`) + -'`),oS&&(qs=!0,fc+=`'; -`+oS+`; +'`),aS&&(qs=!0,fc+=`'; +`+aS+`; __p += '`),sI&&(fc+=`' + ((__t = (`+sI+`)) == null ? '' : __t) + -'`),vc=xy+Bd.length,Bd}),fc+=`'; +'`),vc=Gy+Bd.length,Bd}),fc+=`'; `;var OA=Xp.call(he,"variable")&&he.variable;if(!OA)fc=`with (obj) { `+fc+` } @@ -314,237 +314,237 @@ __p += '`),sI&&(fc+=`' + function print() { __p += __j.call(arguments, '') } `:`; `)+fc+`return __p -}`;var Cf=EW(function(){return hd(kn,Zu+"return "+fc).apply(e,Fi)});if(Cf.source=fc,Yre(Cf))throw Cf;return Cf}function Oge(ie){return CC(ie).toLowerCase()}function SF(ie){return CC(ie).toUpperCase()}function CZe(ie,he,qe){if(ie=CC(ie),ie&&(qe||he===e))return gI(ie);if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=Mc(he),kn=Rd(Ut,Qr),Fi=e2(Ut,Qr)+1;return Ho(Ut,kn,Fi).join("")}function VY(ie,he,qe){if(ie=CC(ie),ie&&(qe||he===e))return ie.slice(0,Pf(ie)+1);if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=e2(Ut,Mc(he))+1;return Ho(Ut,0,Qr).join("")}function UD(ie,he,qe){if(ie=CC(ie),ie&&(qe||he===e))return ie.replace(Kl,"");if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=Rd(Ut,Mc(he));return Ho(Ut,Qr).join("")}function vF(ie,he){var qe=be,Ut=Se;if(HI(he)){var Qr="separator"in he?he.separator:Qr;qe="length"in he?mf(he.length):qe,Ut="omission"in he?x(he.omission):Ut}ie=CC(ie);var kn=ie.length;if(Cb(ie)){var Fi=Mc(ie);kn=Fi.length}if(qe>=kn)return ie;var rs=qe-Nd(Ut);if(rs<1)return Ut;var qs=Fi?Ho(Fi,0,rs).join(""):ie.slice(0,rs);if(Qr===e)return qs+Ut;if(Fi&&(rs+=qs.length-rs),WL(Qr)){if(ie.slice(rs).search(Qr)){var vc,qa=qs;for(Qr.global||(Qr=fC(Qr.source,CC(Pt.exec(Qr))+"g")),Qr.lastIndex=0;vc=Qr.exec(qa);)var fc=vc.index;qs=qs.slice(0,fc===e?rs:fc)}}else if(ie.indexOf(x(Qr),rs)!=rs){var Sl=qs.lastIndexOf(Qr);Sl>-1&&(qs=qs.slice(0,Sl))}return qs+Ut}function dv(ie){return ie=CC(ie),ie&&ma.test(ie)?ie.replace(Nc,cE):ie}var WY=Ew(function(ie,he,qe){return ie+(qe?" ":"")+he.toUpperCase()}),Fp=bB("toUpperCase");function Gye(ie,he,qe){return ie=CC(ie),he=qe?e:he,he===e?pC(ie)?jS(ie):we(ie):ie.match(he)||[]}var EW=Od(function(ie,he){try{return NC(ie,e,he)}catch(qe){return Yre(qe)?qe:new jl(qe)}}),rA=Jt(function(ie,he){return up(he,function(qe){qe=Vo(qe),ia(ie,qe,fp(ie[qe],ie))}),ie});function p1(ie){var he=ie==null?0:ie.length,qe=Rs();return ie=he?yI(ie,function(Ut){if(typeof Ut[1]!="function")throw new Um(a);return[qe(Ut[0]),Ut[1]]}):[],Od(function(Ut){for(var Qr=-1;++Qrft)return[];var qe=Er,Ut=TA(ie,Er);he=Rs(he),ie-=Er;for(var Qr=eA(Ut,he);++qe0||he<0)?new Ap(qe):(ie<0?qe=qe.takeRight(-ie):ie&&(qe=qe.drop(ie)),he!==e&&(he=mf(he),qe=he<0?qe.dropRight(-he):qe.take(he-ie)),qe)},Ap.prototype.takeRightWhile=function(ie){return this.reverse().takeWhile(ie).reverse()},Ap.prototype.toArray=function(){return this.take(Er)},Iu(Ap.prototype,function(ie,he){var qe=/^(?:filter|find|map|reject)|While$/.test(he),Ut=/^(?:head|last)$/.test(he),Qr=pn[Ut?"take"+(he=="last"?"Right":""):he],kn=Ut||/^find/.test(he);Qr&&(pn.prototype[he]=function(){var Fi=this.__wrapped__,rs=Ut?[1]:arguments,qs=Fi instanceof Ap,vc=rs[0],qa=qs||vd(Fi),fc=function(iI){var sI=Qr.apply(pn,bI([iI],rs));return Ut&&Sl?sI[0]:sI};qa&&qe&&typeof vc=="function"&&vc.length!=1&&(qs=qa=!1);var Sl=this.__chain__,Zu=!!this.__actions__.length,OA=kn&&!Sl,Cf=qs&&!Zu;if(!kn&&qa){Fi=Cf?Fi:new Ap(this);var Bd=ie.apply(Fi,rs);return Bd.__actions__.push({func:oN,args:[fc],thisArg:e}),new ry(Bd,Sl)}return OA&&Cf?ie.apply(this,rs):(Bd=this.thru(fc),OA?Ut?Bd.value()[0]:Bd.value():Bd)})}),up(["pop","push","shift","sort","splice","unshift"],function(ie){var he=wy[ie],qe=/^(?:push|sort|unshift)$/.test(ie)?"tap":"thru",Ut=/^(?:pop|shift)$/.test(ie);pn.prototype[ie]=function(){var Qr=arguments;if(Ut&&!this.__chain__){var kn=this.value();return he.apply(vd(kn)?kn:[],Qr)}return this[qe](function(Fi){return he.apply(vd(Fi)?Fi:[],Qr)})}}),Iu(Ap.prototype,function(ie,he){var qe=pn[he];if(qe){var Ut=qe.name+"";Xp.call(gB,Ut)||(gB[Ut]=[]),gB[Ut].push({name:he,func:qe})}}),gB[WD(e,F).name]=[{name:"wrapper",func:e}],Ap.prototype.clone=yw,Ap.prototype.reverse=dB,Ap.prototype.value=GD,pn.prototype.at=vY,pn.prototype.chain=xL,pn.prototype.commit=Zre,pn.prototype.next=MD,pn.prototype.plant=d7,pn.prototype.reverse=iS,pn.prototype.toJSON=pn.prototype.valueOf=pn.prototype.value=aN,pn.prototype.first=pn.prototype.head,AI&&(pn.prototype[AI]=yge),pn},fm=pm();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(XA._=fm,define(function(){return fm})):Gm?((Gm.exports=fm)._=fm,Ac._=fm):XA._=fm}).call(BBe)});var KMe=H((k$l,MIr)=>{"use strict";var SC=MIr.exports;MIr.exports.default=SC;var _y="\x1B[",UMe="\x1B]",wBe="\x07",Gpt=";",pMn=process.env.TERM_PROGRAM==="Apple_Terminal";SC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?_y+(e+1)+"G":_y+(t+1)+";"+(e+1)+"H"};SC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=_y+-e+"D":e>0&&(r+=_y+e+"C"),t<0?r+=_y+-t+"A":t>0&&(r+=_y+t+"B"),r};SC.cursorUp=(e=1)=>_y+e+"A";SC.cursorDown=(e=1)=>_y+e+"B";SC.cursorForward=(e=1)=>_y+e+"C";SC.cursorBackward=(e=1)=>_y+e+"D";SC.cursorLeft=_y+"G";SC.cursorSavePosition=pMn?"\x1B7":_y+"s";SC.cursorRestorePosition=pMn?"\x1B8":_y+"u";SC.cursorGetPosition=_y+"6n";SC.cursorNextLine=_y+"E";SC.cursorPrevLine=_y+"F";SC.cursorHide=_y+"?25l";SC.cursorShow=_y+"?25h";SC.eraseLines=e=>{let t="";for(let r=0;r[UMe,"8",Gpt,Gpt,t,wBe,e,UMe,"8",Gpt,Gpt,wBe].join("");SC.image=(e,t={})=>{let r=`${UMe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+wBe};SC.iTerm={setCwd:(e=process.cwd())=>`${UMe}50;CurrentDir=${e}${wBe}`,annotation:(e,t={})=>{let r=`${UMe}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+wBe}}});var IMn=H((x$l,HIr)=>{"use strict";var fMn=(e,t)=>{for(let r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};HIr.exports=fMn;HIr.exports.default=fMn});var mMn=H((G$l,Zpt)=>{"use strict";var TUo=IMn(),Fpt=new WeakMap,hMn=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(Fpt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return TUo(o,e),Fpt.set(o,n),o};Zpt.exports=hMn;Zpt.exports.default=hMn;Zpt.exports.callCount=e=>{if(!Fpt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return Fpt.get(e)}});var CMn=H((F$l,Lpt)=>{Lpt.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&Lpt.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Lpt.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var Ppt=H((Z$l,NBe)=>{var w2=global.process,MIe=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};MIe(w2)?(_Mn=Et("assert"),TBe=CMn(),yMn=/^win/i.test(w2.platform),jMe=Et("events"),typeof jMe!="function"&&(jMe=jMe.EventEmitter),w2.__signal_exit_emitter__?rD=w2.__signal_exit_emitter__:(rD=w2.__signal_exit_emitter__=new jMe,rD.count=0,rD.emitted={}),rD.infinite||(rD.setMaxListeners(1/0),rD.infinite=!0),NBe.exports=function(e,t){if(!MIe(global.process))return function(){};_Mn.equal(typeof e,"function","a callback must be provided for exit handler"),RBe===!1&&YIr();var r="exit";t&&t.alwaysLast&&(r="afterexit");var n=function(){rD.removeListener(r,e),rD.listeners("exit").length===0&&rD.listeners("afterexit").length===0&&Vpt()};return rD.on(r,e),n},Vpt=function(){!RBe||!MIe(global.process)||(RBe=!1,TBe.forEach(function(t){try{w2.removeListener(t,Wpt[t])}catch{}}),w2.emit=Opt,w2.reallyExit=QIr,rD.count-=1)},NBe.exports.unload=Vpt,HIe=function(t,r,n){rD.emitted[t]||(rD.emitted[t]=!0,rD.emit(t,r,n))},Wpt={},TBe.forEach(function(e){Wpt[e]=function(){if(MIe(global.process)){var r=w2.listeners(e);r.length===rD.count&&(Vpt(),HIe("exit",null,e),HIe("afterexit",null,e),yMn&&e==="SIGHUP"&&(e="SIGINT"),w2.kill(w2.pid,e))}}}),NBe.exports.signals=function(){return TBe},RBe=!1,YIr=function(){RBe||!MIe(global.process)||(RBe=!0,rD.count+=1,TBe=TBe.filter(function(t){try{return w2.on(t,Wpt[t]),!0}catch{return!1}}),w2.emit=EMn,w2.reallyExit=bMn)},NBe.exports.load=YIr,QIr=w2.reallyExit,bMn=function(t){MIe(global.process)&&(w2.exitCode=t||0,HIe("exit",w2.exitCode,null),HIe("afterexit",w2.exitCode,null),QIr.call(w2,w2.exitCode))},Opt=w2.emit,EMn=function(t,r){if(t==="exit"&&MIe(global.process)){r!==void 0&&(w2.exitCode=r);var n=Opt.apply(this,arguments);return HIe("exit",w2.exitCode,null),HIe("afterexit",w2.exitCode,null),n}else return Opt.apply(this,arguments)}):NBe.exports=function(){return function(){}};var _Mn,TBe,yMn,jMe,rD,Vpt,HIe,Wpt,RBe,YIr,QIr,bMn,Opt,EMn});var vMn=H((L$l,SMn)=>{"use strict";var RUo=mMn(),NUo=Ppt();SMn.exports=RUo(()=>{NUo(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var kBe=H(DBe=>{"use strict";var DUo=vMn(),Mpt=!1;DBe.show=(e=process.stderr)=>{e.isTTY&&(Mpt=!1,e.write("\x1B[?25h"))};DBe.hide=(e=process.stderr)=>{e.isTTY&&(DUo(),Mpt=!0,e.write("\x1B[?25l"))};DBe.toggle=(e,t)=>{e!==void 0&&(Mpt=e),Mpt?DBe.show(t):DBe.hide(t)}});var RMn=H(zMe=>{"use strict";var TMn=zMe&&zMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zMe,"__esModule",{value:!0});var BMn=TMn(KMe()),wMn=TMn(kBe()),kUo=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(wMn.default.hide(),a=!0);let A=l+` -`;A!==n&&(n=A,e.write(BMn.default.eraseLines(r)+A),r=A.split(` -`).length)};return o.clear=()=>{e.write(BMn.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(wMn.default.show(),a=!1)},o};zMe.default={create:kUo}});var NMn=H((O$l,xUo)=>{xUo.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var xMn=H(XO=>{"use strict";var kMn=NMn(),b8=process.env;Object.defineProperty(XO,"_vendors",{value:kMn.map(function(e){return e.constant})});XO.name=null;XO.isPR=null;kMn.forEach(function(e){var t=Array.isArray(e.env)?e.env:[e.env],r=t.every(function(n){return DMn(n)});if(XO[e.constant]=r,r)switch(XO.name=e.name,typeof e.pr){case"string":XO.isPR=!!b8[e.pr];break;case"object":"env"in e.pr?XO.isPR=e.pr.env in b8&&b8[e.pr.env]!==e.pr.ne:"any"in e.pr?XO.isPR=e.pr.any.some(function(n){return!!b8[n]}):XO.isPR=DMn(e.pr);break;default:XO.isPR=null}});XO.isCI=!!(b8.CI||b8.CONTINUOUS_INTEGRATION||b8.BUILD_NUMBER||b8.RUN_ID||XO.name);function DMn(e){return typeof e=="string"?!!b8[e]:Object.keys(e).every(function(t){return b8[t]===e[t]})}});var XIr=H((M$l,GMn)=>{"use strict";GMn.exports=xMn().isCI});var JIr=H((H$l,FMn)=>{"use strict";var GUo=e=>{let t=new Set;do for(let r of Reflect.ownKeys(e))t.add([e,r]);while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t};FMn.exports=(e,{include:t,exclude:r}={})=>{let n=a=>{let o=l=>typeof l=="string"?a===l:l.test(a);return t?t.some(o):r?!r.some(o):!0};for(let[a,o]of GUo(e.constructor.prototype)){if(o==="constructor"||!n(o))continue;let l=Reflect.getOwnPropertyDescriptor(a,o);l&&typeof l.value=="function"&&(e[o]=e[o].bind(e))}return e}});var PMn=H(Y0=>{"use strict";var GBe,eHe,Xpt,ehr;typeof performance=="object"&&typeof performance.now=="function"?(ZMn=performance,Y0.unstable_now=function(){return ZMn.now()}):(UIr=Date,LMn=UIr.now(),Y0.unstable_now=function(){return UIr.now()-LMn});var ZMn,UIr,LMn;typeof window>"u"||typeof MessageChannel!="function"?(xBe=null,KIr=null,jIr=function(){if(xBe!==null)try{var e=Y0.unstable_now();xBe(!0,e),xBe=null}catch(t){throw setTimeout(jIr,0),t}},GBe=function(e){xBe!==null?setTimeout(GBe,0,e):(xBe=e,setTimeout(jIr,0))},eHe=function(e,t){KIr=setTimeout(e,t)},Xpt=function(){clearTimeout(KIr)},Y0.unstable_shouldYield=function(){return!1},ehr=Y0.unstable_forceFrameRate=function(){}):(VMn=window.setTimeout,WMn=window.clearTimeout,typeof console<"u"&&(OMn=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof OMn!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")),qMe=!1,$Me=null,Hpt=-1,zIr=5,qIr=0,Y0.unstable_shouldYield=function(){return Y0.unstable_now()>=qIr},ehr=function(){},Y0.unstable_forceFrameRate=function(e){0>e||125>>1,a=e[n];if(a!==void 0&&0Qpt(l,r))f!==void 0&&0>Qpt(f,l)?(e[n]=f,e[A]=r,n=A):(e[n]=l,e[o]=r,n=o);else if(f!==void 0&&0>Qpt(f,r))e[n]=f,e[A]=r,n=A;else break e}}return t}return null}function Qpt(e,t){var r=e.sortIndex-t.sortIndex;return r!==0?r:e.id-t.id}var E8=[],eae=[],FUo=1,RM=null,bG=3,Upt=!1,YIe=!1,tHe=!1;function rhr(e){for(var t=NX(eae);t!==null;){if(t.callback===null)Jpt(eae);else if(t.startTime<=e)Jpt(eae),t.sortIndex=t.expirationTime,thr(E8,t);else break;t=NX(eae)}}function nhr(e){if(tHe=!1,rhr(e),!YIe)if(NX(E8)!==null)YIe=!0,GBe(ihr);else{var t=NX(eae);t!==null&&eHe(nhr,t.startTime-e)}}function ihr(e,t){YIe=!1,tHe&&(tHe=!1,Xpt()),Upt=!0;var r=bG;try{for(rhr(t),RM=NX(E8);RM!==null&&(!(RM.expirationTime>t)||e&&!Y0.unstable_shouldYield());){var n=RM.callback;if(typeof n=="function"){RM.callback=null,bG=RM.priorityLevel;var a=n(RM.expirationTime<=t);t=Y0.unstable_now(),typeof a=="function"?RM.callback=a:RM===NX(E8)&&Jpt(E8),rhr(t)}else Jpt(E8);RM=NX(E8)}if(RM!==null)var o=!0;else{var l=NX(eae);l!==null&&eHe(nhr,l.startTime-t),o=!1}return o}finally{RM=null,bG=r,Upt=!1}}var ZUo=ehr;Y0.unstable_IdlePriority=5;Y0.unstable_ImmediatePriority=1;Y0.unstable_LowPriority=4;Y0.unstable_NormalPriority=3;Y0.unstable_Profiling=null;Y0.unstable_UserBlockingPriority=2;Y0.unstable_cancelCallback=function(e){e.callback=null};Y0.unstable_continueExecution=function(){YIe||Upt||(YIe=!0,GBe(ihr))};Y0.unstable_getCurrentPriorityLevel=function(){return bG};Y0.unstable_getFirstCallbackNode=function(){return NX(E8)};Y0.unstable_next=function(e){switch(bG){case 1:case 2:case 3:var t=3;break;default:t=bG}var r=bG;bG=t;try{return e()}finally{bG=r}};Y0.unstable_pauseExecution=function(){};Y0.unstable_requestPaint=ZUo;Y0.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=bG;bG=e;try{return t()}finally{bG=r}};Y0.unstable_scheduleCallback=function(e,t,r){var n=Y0.unstable_now();switch(typeof r=="object"&&r!==null?(r=r.delay,r=typeof r=="number"&&0n?(e.sortIndex=r,thr(eae,e),NX(E8)===null&&e===NX(eae)&&(tHe?Xpt():tHe=!0,eHe(nhr,r-n))):(e.sortIndex=a,thr(E8,e),YIe||Upt||(YIe=!0,GBe(ihr))),e};Y0.unstable_wrapCallback=function(e){var t=bG;return function(){var r=bG;bG=t;try{return e.apply(this,arguments)}finally{bG=r}}}});var rHe=H((Q$l,MMn)=>{"use strict";MMn.exports=PMn()});var Kpt=H((X$l,YMn)=>{"use strict";var HMn=Object.getOwnPropertySymbols,LUo=Object.prototype.hasOwnProperty,VUo=Object.prototype.propertyIsEnumerable;function WUo(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function OUo(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(o){return t[o]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}YMn.exports=OUo()?Object.assign:function(e,t){for(var r,n=WUo(e),a,o=1;o{nHe.exports=function(t){var r={},n=Kpt(),a=Ec(),o=rHe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;te=kn)return ie;var rs=qe-Nd(Ut);if(rs<1)return Ut;var qs=Fi?Ho(Fi,0,rs).join(""):ie.slice(0,rs);if(Qr===e)return qs+Ut;if(Fi&&(rs+=qs.length-rs),OL(Qr)){if(ie.slice(rs).search(Qr)){var vc,qa=qs;for(Qr.global||(Qr=fC(Qr.source,CC(Pt.exec(Qr))+"g")),Qr.lastIndex=0;vc=Qr.exec(qa);)var fc=vc.index;qs=qs.slice(0,fc===e?rs:fc)}}else if(ie.indexOf(x(Qr),rs)!=rs){var Sl=qs.lastIndexOf(Qr);Sl>-1&&(qs=qs.slice(0,Sl))}return qs+Ut}function pv(ie){return ie=CC(ie),ie&&ma.test(ie)?ie.replace(Nc,lE):ie}var OY=Sw(function(ie,he,qe){return ie+(qe?" ":"")+he.toUpperCase()}),Fp=EB("toUpperCase");function Gye(ie,he,qe){return ie=CC(ie),he=qe?e:he,he===e?pC(ie)?zS(ie):we(ie):ie.match(he)||[]}var SW=Od(function(ie,he){try{return DC(ie,e,he)}catch(qe){return Qre(qe)?qe:new jl(qe)}}),rA=Jt(function(ie,he){return up(he,function(qe){qe=Vo(qe),ia(ie,qe,fp(ie[qe],ie))}),ie});function f1(ie){var he=ie==null?0:ie.length,qe=Rs();return ie=he?yI(ie,function(Ut){if(typeof Ut[1]!="function")throw new Um(a);return[qe(Ut[0]),Ut[1]]}):[],Od(function(Ut){for(var Qr=-1;++Qrft)return[];var qe=Er,Ut=TA(ie,Er);he=Rs(he),ie-=Er;for(var Qr=eA(Ut,he);++qe0||he<0)?new Ap(qe):(ie<0?qe=qe.takeRight(-ie):ie&&(qe=qe.drop(ie)),he!==e&&(he=mf(he),qe=he<0?qe.dropRight(-he):qe.take(he-ie)),qe)},Ap.prototype.takeRightWhile=function(ie){return this.reverse().takeWhile(ie).reverse()},Ap.prototype.toArray=function(){return this.take(Er)},Iu(Ap.prototype,function(ie,he){var qe=/^(?:filter|find|map|reject)|While$/.test(he),Ut=/^(?:head|last)$/.test(he),Qr=pn[Ut?"take"+(he=="last"?"Right":""):he],kn=Ut||/^find/.test(he);Qr&&(pn.prototype[he]=function(){var Fi=this.__wrapped__,rs=Ut?[1]:arguments,qs=Fi instanceof Ap,vc=rs[0],qa=qs||vd(Fi),fc=function(iI){var sI=Qr.apply(pn,bI([iI],rs));return Ut&&Sl?sI[0]:sI};qa&&qe&&typeof vc=="function"&&vc.length!=1&&(qs=qa=!1);var Sl=this.__chain__,Zu=!!this.__actions__.length,OA=kn&&!Sl,Cf=qs&&!Zu;if(!kn&&qa){Fi=Cf?Fi:new Ap(this);var Bd=ie.apply(Fi,rs);return Bd.__actions__.push({func:aN,args:[fc],thisArg:e}),new ny(Bd,Sl)}return OA&&Cf?ie.apply(this,rs):(Bd=this.thru(fc),OA?Ut?Bd.value()[0]:Bd.value():Bd)})}),up(["pop","push","shift","sort","splice","unshift"],function(ie){var he=Ty[ie],qe=/^(?:push|sort|unshift)$/.test(ie)?"tap":"thru",Ut=/^(?:pop|shift)$/.test(ie);pn.prototype[ie]=function(){var Qr=arguments;if(Ut&&!this.__chain__){var kn=this.value();return he.apply(vd(kn)?kn:[],Qr)}return this[qe](function(Fi){return he.apply(vd(Fi)?Fi:[],Qr)})}}),Iu(Ap.prototype,function(ie,he){var qe=pn[he];if(qe){var Ut=qe.name+"";Xp.call(AB,Ut)||(AB[Ut]=[]),AB[Ut].push({name:he,func:qe})}}),AB[OD(e,F).name]=[{name:"wrapper",func:e}],Ap.prototype.clone=bw,Ap.prototype.reverse=pB,Ap.prototype.value=FD,pn.prototype.at=BY,pn.prototype.chain=FL,pn.prototype.commit=Lre,pn.prototype.next=HD,pn.prototype.plant=p7,pn.prototype.reverse=sS,pn.prototype.toJSON=pn.prototype.valueOf=pn.prototype.value=cN,pn.prototype.first=pn.prototype.head,AI&&(pn.prototype[AI]=bge),pn},fm=pm();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(XA._=fm,define(function(){return fm})):Gm?((Gm.exports=fm)._=fm,Ac._=fm):XA._=fm}).call(BBe)});var UMe=H((yeu,MIr)=>{"use strict";var SC=MIr.exports;MIr.exports.default=SC;var yy="\x1B[",JMe="\x1B]",wBe="\x07",kpt=";",_Mn=process.env.TERM_PROGRAM==="Apple_Terminal";SC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?yy+(e+1)+"G":yy+(t+1)+";"+(e+1)+"H"};SC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=yy+-e+"D":e>0&&(r+=yy+e+"C"),t<0?r+=yy+-t+"A":t>0&&(r+=yy+t+"B"),r};SC.cursorUp=(e=1)=>yy+e+"A";SC.cursorDown=(e=1)=>yy+e+"B";SC.cursorForward=(e=1)=>yy+e+"C";SC.cursorBackward=(e=1)=>yy+e+"D";SC.cursorLeft=yy+"G";SC.cursorSavePosition=_Mn?"\x1B7":yy+"s";SC.cursorRestorePosition=_Mn?"\x1B8":yy+"u";SC.cursorGetPosition=yy+"6n";SC.cursorNextLine=yy+"E";SC.cursorPrevLine=yy+"F";SC.cursorHide=yy+"?25l";SC.cursorShow=yy+"?25h";SC.eraseLines=e=>{let t="";for(let r=0;r[JMe,"8",kpt,kpt,t,wBe,e,JMe,"8",kpt,kpt,wBe].join("");SC.image=(e,t={})=>{let r=`${JMe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+wBe};SC.iTerm={setCwd:(e=process.cwd())=>`${JMe}50;CurrentDir=${e}${wBe}`,annotation:(e,t={})=>{let r=`${JMe}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+wBe}}});var bMn=H((beu,HIr)=>{"use strict";var yMn=(e,t)=>{for(let r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};HIr.exports=yMn;HIr.exports.default=yMn});var SMn=H((Eeu,Gpt)=>{"use strict";var TUo=bMn(),xpt=new WeakMap,EMn=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(xpt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return TUo(o,e),xpt.set(o,n),o};Gpt.exports=EMn;Gpt.exports.default=EMn;Gpt.exports.callCount=e=>{if(!xpt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return xpt.get(e)}});var vMn=H((Seu,Fpt)=>{Fpt.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&Fpt.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Fpt.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var Wpt=H((veu,NBe)=>{var T2=global.process,HIe=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};HIe(T2)?(BMn=Et("assert"),TBe=vMn(),wMn=/^win/i.test(T2.platform),KMe=Et("events"),typeof KMe!="function"&&(KMe=KMe.EventEmitter),T2.__signal_exit_emitter__?nD=T2.__signal_exit_emitter__:(nD=T2.__signal_exit_emitter__=new KMe,nD.count=0,nD.emitted={}),nD.infinite||(nD.setMaxListeners(1/0),nD.infinite=!0),NBe.exports=function(e,t){if(!HIe(global.process))return function(){};BMn.equal(typeof e,"function","a callback must be provided for exit handler"),RBe===!1&&YIr();var r="exit";t&&t.alwaysLast&&(r="afterexit");var n=function(){nD.removeListener(r,e),nD.listeners("exit").length===0&&nD.listeners("afterexit").length===0&&Zpt()};return nD.on(r,e),n},Zpt=function(){!RBe||!HIe(global.process)||(RBe=!1,TBe.forEach(function(t){try{T2.removeListener(t,Lpt[t])}catch{}}),T2.emit=Vpt,T2.reallyExit=QIr,nD.count-=1)},NBe.exports.unload=Zpt,YIe=function(t,r,n){nD.emitted[t]||(nD.emitted[t]=!0,nD.emit(t,r,n))},Lpt={},TBe.forEach(function(e){Lpt[e]=function(){if(HIe(global.process)){var r=T2.listeners(e);r.length===nD.count&&(Zpt(),YIe("exit",null,e),YIe("afterexit",null,e),wMn&&e==="SIGHUP"&&(e="SIGINT"),T2.kill(T2.pid,e))}}}),NBe.exports.signals=function(){return TBe},RBe=!1,YIr=function(){RBe||!HIe(global.process)||(RBe=!0,nD.count+=1,TBe=TBe.filter(function(t){try{return T2.on(t,Lpt[t]),!0}catch{return!1}}),T2.emit=RMn,T2.reallyExit=TMn)},NBe.exports.load=YIr,QIr=T2.reallyExit,TMn=function(t){HIe(global.process)&&(T2.exitCode=t||0,YIe("exit",T2.exitCode,null),YIe("afterexit",T2.exitCode,null),QIr.call(T2,T2.exitCode))},Vpt=T2.emit,RMn=function(t,r){if(t==="exit"&&HIe(global.process)){r!==void 0&&(T2.exitCode=r);var n=Vpt.apply(this,arguments);return YIe("exit",T2.exitCode,null),YIe("afterexit",T2.exitCode,null),n}else return Vpt.apply(this,arguments)}):NBe.exports=function(){return function(){}};var BMn,TBe,wMn,KMe,nD,Zpt,YIe,Lpt,RBe,YIr,QIr,TMn,Vpt,RMn});var DMn=H((Beu,NMn)=>{"use strict";var RUo=SMn(),NUo=Wpt();NMn.exports=RUo(()=>{NUo(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var kBe=H(DBe=>{"use strict";var DUo=DMn(),Opt=!1;DBe.show=(e=process.stderr)=>{e.isTTY&&(Opt=!1,e.write("\x1B[?25h"))};DBe.hide=(e=process.stderr)=>{e.isTTY&&(DUo(),Opt=!0,e.write("\x1B[?25l"))};DBe.toggle=(e,t)=>{e!==void 0&&(Opt=e),Opt?DBe.show(t):DBe.hide(t)}});var FMn=H(jMe=>{"use strict";var GMn=jMe&&jMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jMe,"__esModule",{value:!0});var kMn=GMn(UMe()),xMn=GMn(kBe()),kUo=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(xMn.default.hide(),a=!0);let A=l+` +`;A!==n&&(n=A,e.write(kMn.default.eraseLines(r)+A),r=A.split(` +`).length)};return o.clear=()=>{e.write(kMn.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(xMn.default.show(),a=!1)},o};jMe.default={create:kUo}});var ZMn=H((Reu,xUo)=>{xUo.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var WMn=H(UO=>{"use strict";var VMn=ZMn(),E8=process.env;Object.defineProperty(UO,"_vendors",{value:VMn.map(function(e){return e.constant})});UO.name=null;UO.isPR=null;VMn.forEach(function(e){var t=Array.isArray(e.env)?e.env:[e.env],r=t.every(function(n){return LMn(n)});if(UO[e.constant]=r,r)switch(UO.name=e.name,typeof e.pr){case"string":UO.isPR=!!E8[e.pr];break;case"object":"env"in e.pr?UO.isPR=e.pr.env in E8&&E8[e.pr.env]!==e.pr.ne:"any"in e.pr?UO.isPR=e.pr.any.some(function(n){return!!E8[n]}):UO.isPR=LMn(e.pr);break;default:UO.isPR=null}});UO.isCI=!!(E8.CI||E8.CONTINUOUS_INTEGRATION||E8.BUILD_NUMBER||E8.RUN_ID||UO.name);function LMn(e){return typeof e=="string"?!!E8[e]:Object.keys(e).every(function(t){return E8[t]===e[t]})}});var XIr=H((Deu,OMn)=>{"use strict";OMn.exports=WMn().isCI});var JIr=H((keu,PMn)=>{"use strict";var GUo=e=>{let t=new Set;do for(let r of Reflect.ownKeys(e))t.add([e,r]);while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t};PMn.exports=(e,{include:t,exclude:r}={})=>{let n=a=>{let o=l=>typeof l=="string"?a===l:l.test(a);return t?t.some(o):r?!r.some(o):!0};for(let[a,o]of GUo(e.constructor.prototype)){if(o==="constructor"||!n(o))continue;let l=Reflect.getOwnPropertyDescriptor(a,o);l&&typeof l.value=="function"&&(e[o]=e[o].bind(e))}return e}});var JMn=H(Q0=>{"use strict";var GBe,$Me,Ypt,ehr;typeof performance=="object"&&typeof performance.now=="function"?(MMn=performance,Q0.unstable_now=function(){return MMn.now()}):(UIr=Date,HMn=UIr.now(),Q0.unstable_now=function(){return UIr.now()-HMn});var MMn,UIr,HMn;typeof window>"u"||typeof MessageChannel!="function"?(xBe=null,KIr=null,jIr=function(){if(xBe!==null)try{var e=Q0.unstable_now();xBe(!0,e),xBe=null}catch(t){throw setTimeout(jIr,0),t}},GBe=function(e){xBe!==null?setTimeout(GBe,0,e):(xBe=e,setTimeout(jIr,0))},$Me=function(e,t){KIr=setTimeout(e,t)},Ypt=function(){clearTimeout(KIr)},Q0.unstable_shouldYield=function(){return!1},ehr=Q0.unstable_forceFrameRate=function(){}):(YMn=window.setTimeout,QMn=window.clearTimeout,typeof console<"u"&&(XMn=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof XMn!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")),zMe=!1,qMe=null,Ppt=-1,zIr=5,qIr=0,Q0.unstable_shouldYield=function(){return Q0.unstable_now()>=qIr},ehr=function(){},Q0.unstable_forceFrameRate=function(e){0>e||125>>1,a=e[n];if(a!==void 0&&0Hpt(l,r))f!==void 0&&0>Hpt(f,l)?(e[n]=f,e[A]=r,n=A):(e[n]=l,e[o]=r,n=o);else if(f!==void 0&&0>Hpt(f,r))e[n]=f,e[A]=r,n=A;else break e}}return t}return null}function Hpt(e,t){var r=e.sortIndex-t.sortIndex;return r!==0?r:e.id-t.id}var S8=[],tae=[],FUo=1,NM=null,EG=3,Xpt=!1,QIe=!1,eHe=!1;function rhr(e){for(var t=DX(tae);t!==null;){if(t.callback===null)Qpt(tae);else if(t.startTime<=e)Qpt(tae),t.sortIndex=t.expirationTime,thr(S8,t);else break;t=DX(tae)}}function nhr(e){if(eHe=!1,rhr(e),!QIe)if(DX(S8)!==null)QIe=!0,GBe(ihr);else{var t=DX(tae);t!==null&&$Me(nhr,t.startTime-e)}}function ihr(e,t){QIe=!1,eHe&&(eHe=!1,Ypt()),Xpt=!0;var r=EG;try{for(rhr(t),NM=DX(S8);NM!==null&&(!(NM.expirationTime>t)||e&&!Q0.unstable_shouldYield());){var n=NM.callback;if(typeof n=="function"){NM.callback=null,EG=NM.priorityLevel;var a=n(NM.expirationTime<=t);t=Q0.unstable_now(),typeof a=="function"?NM.callback=a:NM===DX(S8)&&Qpt(S8),rhr(t)}else Qpt(S8);NM=DX(S8)}if(NM!==null)var o=!0;else{var l=DX(tae);l!==null&&$Me(nhr,l.startTime-t),o=!1}return o}finally{NM=null,EG=r,Xpt=!1}}var ZUo=ehr;Q0.unstable_IdlePriority=5;Q0.unstable_ImmediatePriority=1;Q0.unstable_LowPriority=4;Q0.unstable_NormalPriority=3;Q0.unstable_Profiling=null;Q0.unstable_UserBlockingPriority=2;Q0.unstable_cancelCallback=function(e){e.callback=null};Q0.unstable_continueExecution=function(){QIe||Xpt||(QIe=!0,GBe(ihr))};Q0.unstable_getCurrentPriorityLevel=function(){return EG};Q0.unstable_getFirstCallbackNode=function(){return DX(S8)};Q0.unstable_next=function(e){switch(EG){case 1:case 2:case 3:var t=3;break;default:t=EG}var r=EG;EG=t;try{return e()}finally{EG=r}};Q0.unstable_pauseExecution=function(){};Q0.unstable_requestPaint=ZUo;Q0.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=EG;EG=e;try{return t()}finally{EG=r}};Q0.unstable_scheduleCallback=function(e,t,r){var n=Q0.unstable_now();switch(typeof r=="object"&&r!==null?(r=r.delay,r=typeof r=="number"&&0n?(e.sortIndex=r,thr(tae,e),DX(S8)===null&&e===DX(tae)&&(eHe?Ypt():eHe=!0,$Me(nhr,r-n))):(e.sortIndex=a,thr(S8,e),QIe||Xpt||(QIe=!0,GBe(ihr))),e};Q0.unstable_wrapCallback=function(e){var t=EG;return function(){var r=EG;EG=t;try{return e.apply(this,arguments)}finally{EG=r}}}});var tHe=H((Geu,UMn)=>{"use strict";UMn.exports=JMn()});var Jpt=H((Feu,jMn)=>{"use strict";var KMn=Object.getOwnPropertySymbols,LUo=Object.prototype.hasOwnProperty,VUo=Object.prototype.propertyIsEnumerable;function WUo(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function OUo(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(o){return t[o]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}jMn.exports=OUo()?Object.assign:function(e,t){for(var r,n=WUo(e),a,o=1;o{rHe.exports=function(t){var r={},n=Jpt(),a=Ec(),o=tHe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;teUr||Ve[dr]!==It[Ur])return` -`+Ve[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Uu(x):""}var Sg=[],HA=-1;function ZA(x){return{current:x}}function $i(x){0>HA||(x.current=Sg[HA],Sg[HA]=null,HA--)}function gl(x,L){HA++,Sg[HA]=x.current,x.current=L}var zf={},zd=ZA(zf),aA=ZA(!1),so=zf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return zf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Ve={},It;for(It in te)Ve[It]=L[It];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Ve),Ve}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(aA),$i(zd)}function ws(x,L,te){if(zd.current!==zf)throw Error(l(168));gl(zd,L),gl(aA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Ve in Re)if(!(Ve in x))throw Error(l(108,k(L)||"Unknown",Ve));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||zf,so=zd.current,gl(zd,x),gl(aA,aA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,so),Re.__reactInternalMemoizedMergedChildContext=x,$i(aA),$i(zd),gl(zd,x)):$i(aA),gl(aA,te)}var As=null,Nf=null,Am=o.unstable_now;Am();var Zl=0,rc=8;function ad(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Qm(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function rl(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function LA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Ve=0,It=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(It!==0)Re=It,Ve=rc=15;else if(It=te&134217727,It!==0){var mi=It&~dr;mi!==0?(Re=ad(mi),Ve=rc):(Ur&=It,Ur!==0&&(Re=ad(Ur),Ve=rc))}else It=te&~dr,It!==0?(Re=ad(It),Ve=rc):Ur!==0&&(Re=ad(Ur),Ve=rc);if(Re===0)return 0;if(Re=31-vr(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function YA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-vr(L),x[L]=te}var vr=Math.clz32?Math.clz32:ls,Zt=Math.log,bn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/bn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Oa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,gd=o.unstable_requestPaint,Dp=o.unstable_now,sp=o.unstable_getCurrentPriorityLevel,QA=o.unstable_ImmediatePriority,ff=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,io=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Hl={},Dr=gd!==void 0?gd:function(){},On=null,di=null,aa=!1,Bo=Dp(),us=1e4>Bo?Dp:function(){return Dp()-Bo};function Xl(){switch(sp()){case QA:return 99;case ff:return 98;case Zs:return 97;case io:return 96;case Ea:return 95;default:throw Error(l(332))}}function WA(x){switch(x){case 99:return QA;case 98:return ff;case 97:return Zs;case 96:return io;case 95:return Ea;default:throw Error(l(332))}}function If(x,L){return x=WA(x),oa(x,L)}function rf(x,L,te){return x=WA(x),Fs(x,L,te)}function op(){if(di!==null){var x=di;di=null,Oa(x)}bd()}function bd(){if(!aa&&On!==null){aa=!0;var x=0;try{var L=On;If(99,function(){for(;xhu?(ml=dc,dc=null):ml=dc.sibling;var wl=Ho(xn,dc,Ci[hu],Wo);if(wl===null){dc===null&&(dc=ml);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=It(wl,rn,hu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=ml}if(hu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;huhu?(ml=dc,dc=null):ml=dc.sibling;var rI=Ho(xn,dc,wl.value,Wo);if(rI===null){dc===null&&(dc=ml);break}x&&dc&&rI.alternate===null&&L(xn,dc),rn=It(rI,rn,hu),Ra===null?ec=rI:Ra.sibling=rI,Ra=rI,dc=ml}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;hu++,wl=Ci.next())wl=El(xn,wl.value,Wo),wl!==null&&(rn=It(wl,rn,hu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;hu++,wl=Ci.next())wl=Pg(dc,xn,hu,wl.value,Wo),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?hu:wl.key),rn=It(wl,rn,hu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(eS){return L(xn,eS)}),ec}return function(xn,rn,Ci,Wo){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Ve(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Ve(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=md(Ci.props.children,xn.mode,Wo,Ci.key),rn.return=xn,xn=rn):(Wo=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Wo),Wo.ref=Lr(xn,rn,Ci),Wo.return=xn,xn=Wo)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Ve(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=ky(Ci,xn.mode,Wo),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Ve(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=iv(Ci,xn.mode,Wo),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return lA(xn,rn,Ci,Wo);if(De(Ci))return ih(xn,rn,Ci,Wo);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Dl={},ca=ZA(Dl),Bl=ZA(Dl),eA=ZA(Dl);function BA(x){if(x===Dl)throw Error(l(174));return x}function gI(x,L){gl(eA,L),gl(Bl,x),gl(ca,Dl),x=Er(L),$i(ca),gl(ca,x)}function gp(){$i(ca),$i(Bl),$i(eA)}function mb(x){var L=BA(eA.current),te=BA(ca.current);L=Sr(te,x.type,L),te!==L&&(gl(Bl,x),gl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var Rd=ZA(0);function e2(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||fu(te)||yg(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var N_=null,DC=null,Jm=!1;function US(x,L){var te=Hf(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Zg(x,L){switch(x.tag){case 5:return L=Ju(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function Cb(x){if(Jm){var L=DC;if(L){var te=L;if(!Zg(x,L)){if(L=_I(te),!L||!Zg(x,L)){x.flags=x.flags&-1025|2,Jm=!1,N_=x;return}US(N_,te)}N_=x,DC=Kh(L)}else x.flags=x.flags&-1025|2,Jm=!1,N_=x}}function pC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;N_=x}function kC(x){if(!Nn||x!==N_)return!1;if(!Jm)return pC(x),Jm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=DC;L;)US(x,L),L=_I(L);if(pC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));DC=Pt(x)}else DC=N_?_I(x.stateNode):null;return!0}function U2(){Nn&&(DC=N_=null,Jm=!1)}var j_=[];function xC(){for(var x=0;xIt))throw Error(l(301));It+=1,Mc=Nd=null,L.updateQueue=null,GC.current=Jr,x=te(Re,Ve)}while(cE)}if(GC.current=xc,L=Nd!==null&&Nd.next!==null,mh=0,Mc=Nd=wA=null,Pf=!1,L)throw Error(l(300));return x}function pm(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function fm(){if(Nd===null){var x=wA.alternate;x=x!==null?x.memoizedState:null}else x=Nd.next;var L=Mc===null?wA.memoizedState:Mc.next;if(L!==null)Mc=L,Nd=x;else{if(x===null)throw Error(l(310));Nd=x,x={memoizedState:Nd.memoizedState,baseState:Nd.baseState,baseQueue:Nd.baseQueue,queue:Nd.queue,next:null},Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Nd,Ve=Re.baseQueue,It=te.pending;if(It!==null){if(Ve!==null){var dr=Ve.next;Ve.next=It.next,It.next=dr}Re.baseQueue=Ve=It,te.pending=null}if(Ve!==null){Ve=Ve.next,Re=Re.baseState;var Ur=dr=It=null,mi=Ve;do{var Vi=mi.lane;if((mh&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,It=Re):Ur=Ur.next=Ta,wA.lanes|=Vi,FC|=Vi}mi=mi.next}while(mi!==null&&mi!==Ve);Ur===null?It=Re:Ur.next=dr,XA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=It,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Ve=te.pending,It=L.memoizedState;if(Ve!==null){te.pending=null;var dr=Ve=Ve.next;do It=x(It,dr.action),dr=dr.next;while(dr!==Ve);XA(It,L.memoizedState)||(Ts=!0),L.memoizedState=It,L.baseQueue===null&&(L.baseState=It),te.lastRenderedState=It}return[It,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Ve=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Ve!==null?x=Ve===Re:(x=x.mutableReadLanes,(x=(mh&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,j_.push(L))),x)return te(L._source);throw j_.push(L),Error(l(350))}function jl(x,L,te,Re){var Ve=Ch;if(Ve===null)throw Error(l(349));var It=L._getVersion,dr=It(L._source),Ur=GC.current,mi=Ur.useState(function(){return ki(Ve,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var El=x.memoizedState,Ho=El.refs,Pg=Ho.getSnapshot,lA=El.source;El=El.subscribe;var ih=wA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=It(L._source);if(!XA(dr,xn)){xn=te(L._source),XA(Ta,xn)||(Vi(xn),xn=Kp(ih),Ve.mutableReadLanes|=xn&Ve.pendingLanes),xn=Ve.mutableReadLanes,Ve.entangledLanes|=xn;for(var rn=Ve.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),If(97WT&&(L.flags|=64,Ve=!0,Dy(Re,!1),L.lanes=33554432)}else{if(!Ve)if(x=e2(It),x!==null){if(L.flags|=64,Ve=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Dy(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!It.alternate&&!Jm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>WT&&te!==1073741824&&(L.flags|=64,Ve=!0,Dy(Re,!1),L.lanes=33554432);Re.isBackwards?(It.sibling=L.child,L.child=It):(x=Re.last,x!==null?x.sibling=It:L.child=It,Re.last=It)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=Rd.current,gl(Rd,Ve?L&1|2:L&1),x):null;case 23:case 24:return kp(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function bb(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(gp(),$i(aA),$i(zd),xC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(Rd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(Rd),null;case 4:return gp(),null;case 10:return KE(x),null;case 23:case 24:return kp(),null;default:return null}}function $_(x,L){try{var te="",Re=L;do te+=JS(Re),Re=Re.return;while(Re);var Ve=te}catch(It){Ve=` +`+Ve[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Uu(x):""}var Sg=[],HA=-1;function ZA(x){return{current:x}}function $i(x){0>HA||(x.current=Sg[HA],Sg[HA]=null,HA--)}function Al(x,L){HA++,Sg[HA]=x.current,x.current=L}var zf={},zd=ZA(zf),cA=ZA(!1),so=zf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return zf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Ve={},It;for(It in te)Ve[It]=L[It];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Ve),Ve}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(cA),$i(zd)}function ws(x,L,te){if(zd.current!==zf)throw Error(l(168));Al(zd,L),Al(cA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Ve in Re)if(!(Ve in x))throw Error(l(108,k(L)||"Unknown",Ve));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||zf,so=zd.current,Al(zd,x),Al(cA,cA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,so),Re.__reactInternalMemoizedMergedChildContext=x,$i(cA),$i(zd),Al(zd,x)):$i(cA),Al(cA,te)}var As=null,Nf=null,Am=o.unstable_now;Am();var Zl=0,rc=8;function ad(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Qm(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function rl(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function LA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Ve=0,It=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(It!==0)Re=It,Ve=rc=15;else if(It=te&134217727,It!==0){var mi=It&~dr;mi!==0?(Re=ad(mi),Ve=rc):(Ur&=It,Ur!==0&&(Re=ad(Ur),Ve=rc))}else It=te&~dr,It!==0?(Re=ad(It),Ve=rc):Ur!==0&&(Re=ad(Ur),Ve=rc);if(Re===0)return 0;if(Re=31-vr(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function YA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-vr(L),x[L]=te}var vr=Math.clz32?Math.clz32:ls,Zt=Math.log,yn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/yn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Oa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,gd=o.unstable_requestPaint,Dp=o.unstable_now,sp=o.unstable_getCurrentPriorityLevel,QA=o.unstable_ImmediatePriority,ff=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,io=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Hl={},Dr=gd!==void 0?gd:function(){},On=null,di=null,aa=!1,vo=Dp(),us=1e4>vo?Dp:function(){return Dp()-vo};function Xl(){switch(sp()){case QA:return 99;case ff:return 98;case Zs:return 97;case io:return 96;case Ea:return 95;default:throw Error(l(332))}}function WA(x){switch(x){case 99:return QA;case 98:return ff;case 97:return Zs;case 96:return io;case 95:return Ea;default:throw Error(l(332))}}function If(x,L){return x=WA(x),oa(x,L)}function rf(x,L,te){return x=WA(x),Fs(x,L,te)}function op(){if(di!==null){var x=di;di=null,Oa(x)}bd()}function bd(){if(!aa&&On!==null){aa=!0;var x=0;try{var L=On;If(99,function(){for(;xhu?(ml=dc,dc=null):ml=dc.sibling;var Tl=Ho(xn,dc,Ci[hu],Wo);if(Tl===null){dc===null&&(dc=ml);break}x&&dc&&Tl.alternate===null&&L(xn,dc),rn=It(Tl,rn,hu),Ra===null?ec=Tl:Ra.sibling=Tl,Ra=Tl,dc=ml}if(hu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;huhu?(ml=dc,dc=null):ml=dc.sibling;var rI=Ho(xn,dc,Tl.value,Wo);if(rI===null){dc===null&&(dc=ml);break}x&&dc&&rI.alternate===null&&L(xn,dc),rn=It(rI,rn,hu),Ra===null?ec=rI:Ra.sibling=rI,Ra=rI,dc=ml}if(Tl.done)return te(xn,dc),ec;if(dc===null){for(;!Tl.done;hu++,Tl=Ci.next())Tl=El(xn,Tl.value,Wo),Tl!==null&&(rn=It(Tl,rn,hu),Ra===null?ec=Tl:Ra.sibling=Tl,Ra=Tl);return ec}for(dc=Re(xn,dc);!Tl.done;hu++,Tl=Ci.next())Tl=Pg(dc,xn,hu,Tl.value,Wo),Tl!==null&&(x&&Tl.alternate!==null&&dc.delete(Tl.key===null?hu:Tl.key),rn=It(Tl,rn,hu),Ra===null?ec=Tl:Ra.sibling=Tl,Ra=Tl);return x&&dc.forEach(function(tS){return L(xn,tS)}),ec}return function(xn,rn,Ci,Wo){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Ve(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Ve(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=md(Ci.props.children,xn.mode,Wo,Ci.key),rn.return=xn,xn=rn):(Wo=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Wo),Wo.ref=Lr(xn,rn,Ci),Wo.return=xn,xn=Wo)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Ve(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=xy(Ci,xn.mode,Wo),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Ve(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=sv(Ci,xn.mode,Wo),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return uA(xn,rn,Ci,Wo);if(De(Ci))return ih(xn,rn,Ci,Wo);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Dl={},ca=ZA(Dl),wl=ZA(Dl),eA=ZA(Dl);function BA(x){if(x===Dl)throw Error(l(174));return x}function gI(x,L){Al(eA,L),Al(wl,x),Al(ca,Dl),x=Er(L),$i(ca),Al(ca,x)}function gp(){$i(ca),$i(wl),$i(eA)}function Cb(x){var L=BA(eA.current),te=BA(ca.current);L=Sr(te,x.type,L),te!==L&&(Al(wl,x),Al(ca,L))}function Na(x){wl.current===x&&($i(ca),$i(wl))}var Rd=ZA(0);function t2(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||fu(te)||yg(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var D_=null,kC=null,Jm=!1;function KS(x,L){var te=Hf(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Zg(x,L){switch(x.tag){case 5:return L=Ju(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function _b(x){if(Jm){var L=kC;if(L){var te=L;if(!Zg(x,L)){if(L=_I(te),!L||!Zg(x,L)){x.flags=x.flags&-1025|2,Jm=!1,D_=x;return}KS(D_,te)}D_=x,kC=Kh(L)}else x.flags=x.flags&-1025|2,Jm=!1,D_=x}}function pC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;D_=x}function xC(x){if(!Nn||x!==D_)return!1;if(!Jm)return pC(x),Jm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=kC;L;)KS(x,L),L=_I(L);if(pC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));kC=Pt(x)}else kC=D_?_I(x.stateNode):null;return!0}function K2(){Nn&&(kC=D_=null,Jm=!1)}var z_=[];function GC(){for(var x=0;xIt))throw Error(l(301));It+=1,Mc=Nd=null,L.updateQueue=null,FC.current=Jr,x=te(Re,Ve)}while(lE)}if(FC.current=xc,L=Nd!==null&&Nd.next!==null,mh=0,Mc=Nd=wA=null,Pf=!1,L)throw Error(l(300));return x}function pm(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function fm(){if(Nd===null){var x=wA.alternate;x=x!==null?x.memoizedState:null}else x=Nd.next;var L=Mc===null?wA.memoizedState:Mc.next;if(L!==null)Mc=L,Nd=x;else{if(x===null)throw Error(l(310));Nd=x,x={memoizedState:Nd.memoizedState,baseState:Nd.baseState,baseQueue:Nd.baseQueue,queue:Nd.queue,next:null},Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Nd,Ve=Re.baseQueue,It=te.pending;if(It!==null){if(Ve!==null){var dr=Ve.next;Ve.next=It.next,It.next=dr}Re.baseQueue=Ve=It,te.pending=null}if(Ve!==null){Ve=Ve.next,Re=Re.baseState;var Ur=dr=It=null,mi=Ve;do{var Vi=mi.lane;if((mh&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,It=Re):Ur=Ur.next=Ta,wA.lanes|=Vi,ZC|=Vi}mi=mi.next}while(mi!==null&&mi!==Ve);Ur===null?It=Re:Ur.next=dr,XA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=It,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Ve=te.pending,It=L.memoizedState;if(Ve!==null){te.pending=null;var dr=Ve=Ve.next;do It=x(It,dr.action),dr=dr.next;while(dr!==Ve);XA(It,L.memoizedState)||(Ts=!0),L.memoizedState=It,L.baseQueue===null&&(L.baseState=It),te.lastRenderedState=It}return[It,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Ve=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Ve!==null?x=Ve===Re:(x=x.mutableReadLanes,(x=(mh&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,z_.push(L))),x)return te(L._source);throw z_.push(L),Error(l(350))}function jl(x,L,te,Re){var Ve=Ch;if(Ve===null)throw Error(l(349));var It=L._getVersion,dr=It(L._source),Ur=FC.current,mi=Ur.useState(function(){return ki(Ve,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var El=x.memoizedState,Ho=El.refs,Pg=Ho.getSnapshot,uA=El.source;El=El.subscribe;var ih=wA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=It(L._source);if(!XA(dr,xn)){xn=te(L._source),XA(Ta,xn)||(Vi(xn),xn=Kp(ih),Ve.mutableReadLanes|=xn&Ve.pendingLanes),xn=Ve.mutableReadLanes,Ve.entangledLanes|=xn;for(var rn=Ve.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),If(97OT&&(L.flags|=64,Ve=!0,ky(Re,!1),L.lanes=33554432)}else{if(!Ve)if(x=t2(It),x!==null){if(L.flags|=64,Ve=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),ky(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!It.alternate&&!Jm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>OT&&te!==1073741824&&(L.flags|=64,Ve=!0,ky(Re,!1),L.lanes=33554432);Re.isBackwards?(It.sibling=L.child,L.child=It):(x=Re.last,x!==null?x.sibling=It:L.child=It,Re.last=It)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=Rd.current,Al(Rd,Ve?L&1|2:L&1),x):null;case 23:case 24:return kp(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function Eb(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(gp(),$i(cA),$i(zd),GC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(Rd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(Rd),null;case 4:return gp(),null;case 10:return jE(x),null;case 23:case 24:return kp(),null;default:return null}}function e0(x,L){try{var te="",Re=L;do te+=US(Re),Re=Re.return;while(Re);var Ve=te}catch(It){Ve=` Error generating stack: `+It.message+` -`+It.stack}return{value:x,source:L,stack:Ve}}function e1(x,L){try{console.error(L.value)}catch(te){setTimeout(function(){throw te})}}var gB=typeof WeakMap=="function"?WeakMap:Map;function ZT(x,L,te){te=dm(-1,te),te.tag=3,te.payload={element:null};var Re=L.value;return te.callback=function(){n2||(n2=!0,Ed=Re),e1(x,L)},te}function AB(x,L,te){te=dm(-1,te),te.tag=3;var Re=x.type.getDerivedStateFromError;if(typeof Re=="function"){var Ve=L.value;te.payload=function(){return e1(x,L),Re(Ve)}}var It=x.stateNode;return It!==null&&typeof It.componentDidCatch=="function"&&(te.callback=function(){typeof Re!="function"&&(SI===null?SI=new Set([this]):SI.add(this),e1(x,L));var dr=L.stack;this.componentDidCatch(L.value,{componentStack:dr!==null?dr:""})}),te}var ev=typeof WeakSet=="function"?WeakSet:Set;function zR(x){var L=x.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(te){o_(x,te)}else L.current=null}function tv(x,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&x!==null){var te=x.memoizedProps,Re=x.memoizedState;x=L.stateNode,L=x.getSnapshotBeforeUpdate(L.elementType===L.type?te:qd(L.type,te),Re),x.__reactInternalSnapshotBeforeUpdate=L}return;case 3:zt&&L.flags&256&&Ei(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(l(163))}function t1(x,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var te=L=L.next;do{if((te.tag&x)===x){var Re=te.destroy;te.destroy=void 0,Re!==void 0&&Re()}te=te.next}while(te!==L)}}function j2(x,L,te){switch(te.tag){case 0:case 11:case 15:case 22:if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{if((x.tag&3)===3){var Re=x.create;x.destroy=Re()}x=x.next}while(x!==L)}if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{var Ve=x;Re=Ve.next,Ve=Ve.tag,Ve&4&&Ve&1&&(Cp(te,x),sy(te,x)),x=Re}while(x!==L)}return;case 1:x=te.stateNode,te.flags&4&&(L===null?x.componentDidMount():(Re=te.elementType===te.type?L.memoizedProps:qd(te.type,L.memoizedProps),x.componentDidUpdate(Re,L.memoizedState,x.__reactInternalSnapshotBeforeUpdate))),L=te.updateQueue,L!==null&&J2(te,L,x);return;case 3:if(L=te.updateQueue,L!==null){if(x=null,te.child!==null)switch(te.child.tag){case 5:x=Ot(te.child.stateNode);break;case 1:x=te.child.stateNode}J2(te,L,x)}return;case 5:x=te.stateNode,L===null&&te.flags&4&&ps(x,te.type,te.memoizedProps,te);return;case 6:return;case 4:return;case 12:return;case 13:Nn&&te.memoizedState===null&&(te=te.alternate,te!==null&&(te=te.memoizedState,te!==null&&(te=te.dehydrated,te!==null&&Ru(te))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(l(163))}function LT(x,L){if(zt)for(var te=x;;){if(te.tag===5){var Re=te.stateNode;L?sA(Re):vu(te.stateNode,te.memoizedProps)}else if(te.tag===6)Re=te.stateNode,L?ma(Re):li(Re,te.memoizedProps);else if((te.tag!==23&&te.tag!==24||te.memoizedState===null||te===x)&&te.child!==null){te.child.return=te,te=te.child;continue}if(te===x)break;for(;te.sibling===null;){if(te.return===null||te.return===x)return;te=te.return}te.sibling.return=te.return,te=te.sibling}}function pn(x,L){if(Nf&&typeof Nf.onCommitFiberUnmount=="function")try{Nf.onCommitFiberUnmount(As,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(x=L.updateQueue,x!==null&&(x=x.lastEffect,x!==null)){var te=x=x.next;do{var Re=te,Ve=Re.destroy;if(Re=Re.tag,Ve!==void 0)if(Re&4)Cp(L,te);else{Re=L;try{Ve()}catch(It){o_(Re,It)}}te=te.next}while(te!==x)}break;case 1:if(zR(L),x=L.stateNode,typeof x.componentWillUnmount=="function")try{x.props=L.memoizedProps,x.state=L.memoizedState,x.componentWillUnmount()}catch(It){o_(L,It)}break;case 5:zR(L);break;case 4:zt?GD(x,L):Fn&&Fn&&(L=L.stateNode.containerInfo,x=Xa(L),Oc(L,x))}}function t2(x,L){for(var te=L;;)if(pn(x,te),te.child===null||zt&&te.tag===4){if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return}te.sibling.return=te.return,te=te.sibling}else te.child.return=te,te=te.child}function z2(x){x.alternate=null,x.child=null,x.dependencies=null,x.firstEffect=null,x.lastEffect=null,x.memoizedProps=null,x.memoizedState=null,x.pendingProps=null,x.return=null,x.updateQueue=null}function ry(x){return x.tag===5||x.tag===3||x.tag===4}function Ap(x){if(zt){e:{for(var L=x.return;L!==null;){if(ry(L))break e;L=L.return}throw Error(l(160))}var te=L;switch(L=te.stateNode,te.tag){case 5:var Re=!1;break;case 3:L=L.containerInfo,Re=!0;break;case 4:L=L.containerInfo,Re=!0;break;default:throw Error(l(161))}te.flags&16&&(Nc(L),te.flags&=-17);e:t:for(te=x;;){for(;te.sibling===null;){if(te.return===null||ry(te.return)){te=null;break e}te=te.return}for(te.sibling.return=te.return,te=te.sibling;te.tag!==5&&te.tag!==6&&te.tag!==18;){if(te.flags&2||te.child===null||te.tag===4)continue t;te.child.return=te,te=te.child}if(!(te.flags&2)){te=te.stateNode;break e}}Re?yw(x,te,L):dB(x,te,L)}}function yw(x,L,te){var Re=x.tag,Ve=Re===5||Re===6;if(Ve)x=Ve?x.stateNode:x.stateNode.instance,L?Qa(te,x,L):Pr(te,x);else if(Re!==4&&(x=x.child,x!==null))for(yw(x,L,te),x=x.sibling;x!==null;)yw(x,L,te),x=x.sibling}function dB(x,L,te){var Re=x.tag,Ve=Re===5||Re===6;if(Ve)x=Ve?x.stateNode:x.stateNode.instance,L?bo(te,x,L):Rn(te,x);else if(Re!==4&&(x=x.child,x!==null))for(dB(x,L,te),x=x.sibling;x!==null;)dB(x,L,te),x=x.sibling}function GD(x,L){for(var te=L,Re=!1,Ve,It;;){if(!Re){Re=te.return;e:for(;;){if(Re===null)throw Error(l(160));switch(Ve=Re.stateNode,Re.tag){case 5:It=!1;break e;case 3:Ve=Ve.containerInfo,It=!0;break e;case 4:Ve=Ve.containerInfo,It=!0;break e}Re=Re.return}Re=!0}if(te.tag===5||te.tag===6)t2(x,te),It?_g(Ve,te.stateNode):gc(Ve,te.stateNode);else if(te.tag===4){if(te.child!==null){Ve=te.stateNode.containerInfo,It=!0,te.child.return=te,te=te.child;continue}}else if(pn(x,te),te.child!==null){te.child.return=te,te=te.child;continue}if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return,te.tag===4&&(Re=!1)}te.sibling.return=te.return,te=te.sibling}}function Dd(x,L){if(zt){switch(L.tag){case 0:case 11:case 14:case 15:case 22:t1(3,L);return;case 1:return;case 5:var te=L.stateNode;if(te!=null){var Re=L.memoizedProps;x=x!==null?x.memoizedProps:Re;var Ve=L.type,It=L.updateQueue;L.updateQueue=null,It!==null&&yo(te,It,Ve,x,Re,L)}return;case 6:if(L.stateNode===null)throw Error(l(162));te=L.memoizedProps,Qi(L.stateNode,x!==null?x.memoizedProps:te,te);return;case 3:Nn&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,Hu(L.containerInfo)));return;case 12:return;case 13:qR(L),ny(L);return;case 19:ny(L);return;case 17:return;case 23:case 24:LT(L,L.memoizedState!==null);return}throw Error(l(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:t1(3,L);return;case 12:return;case 13:qR(L),ny(L);return;case 19:ny(L);return;case 3:Nn&&(te=L.stateNode,te.hydrate&&(te.hydrate=!1,Hu(te.containerInfo)));break;case 23:case 24:return}e:if(Fn){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,Oc(L.containerInfo,L.pendingChildren);break e}throw Error(l(163))}}function qR(x){x.memoizedState!==null&&(bw=us(),zt&<(x.child,!0))}function ny(x){var L=x.updateQueue;if(L!==null){x.updateQueue=null;var te=x.stateNode;te===null&&(te=x.stateNode=new ev),L.forEach(function(Re){var Ve=PT.bind(null,x,Re);te.has(Re)||(te.add(Re),Re.then(Ve,Ve))})}}function pF(x,L){return x!==null&&(x=x.memoizedState,x===null||x.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var r2=0,r1=1,k_=2,n1=3,i1=4;if(typeof Symbol=="function"&&Symbol.for){var iy=Symbol.for;r2=iy("selector.component"),r1=iy("selector.has_pseudo_class"),k_=iy("selector.role"),n1=iy("selector.test_id"),i1=iy("selector.text")}function VT(x){var L=Hi(x);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(l(364));return L}if(x=Gc(x),x===null)throw Error(l(362));return x.stateNode.current}function Eb(x,L){switch(L.$$typeof){case r2:if(x.type===L.value)return!0;break;case r1:e:{L=L.value,x=[x,0];for(var te=0;te";case r1:return":has("+(i_(x)||"")+")";case k_:return'[role="'+x.value+'"]';case i1:return'"'+x.value+'"';case n1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function xh(x,L){var te=[];x=[x,0];for(var Re=0;ReVe&&(Ve=dr),te&=~It}if(te=Ve,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*ZD(te/1960))-te,10";case n1:return":has("+(s_(x)||"")+")";case x_:return'[role="'+x.value+'"]';case s1:return'"'+x.value+'"';case i1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function xh(x,L){var te=[];x=[x,0];for(var Re=0;ReVe&&(Ve=dr),te&=~It}if(te=Ve,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*LD(te/1960))-te,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Jp!==5&&(Jp=2),mi=$_(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:It=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=ZT(Ho,It,L);yI(Ho,Ra);break e;case 1:It=mi;var dc=Ho.type,hu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||hu!==null&&typeof hu.componentDidCatch=="function"&&(SI===null||!SI.has(hu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var ml=AB(Ho,It,L);yI(Ho,ml);break e}}Ho=Ho.return}while(Ho!==null)}su(te)}catch(wl){L=wl,sf===te&&te!==null&&(sf=te=te.return);continue}break}while(!0)}function i2(){var x=e0.current;return e0.current=xc,x===null?xc:x}function Ro(x,L){var te=lc;lc|=16;var Re=i2();Ch===x&&EI===L||Fm(x,L);do try{fE();break}catch(Ve){xp(x,Ve)}while(!0);if(K_(),lc=te,e0.current=Re,sf!==null)throw Error(l(261));return Ch=null,EI=0,Jp}function fE(){for(;sf!==null;)Xc(sf)}function hB(){for(;sf!==null&&!Ca();)Xc(sf)}function Xc(x){var L=Sx(x.alternate,x,uE);x.memoizedProps=x.pendingProps,L===null?su(x):sf=L,LD.current=null}function su(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=bb(L),te!==null){te.flags&=2047,sf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=$S(te,L,uE),te!==null){sf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||uE&1073741824||!(te.mode&4)){for(var Re=0,Ve=te.child;Ve!==null;)Re|=Ve.lanes|Ve.childLanes,Ve=Ve.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-bw?Fm(x,0):s1|=te),nh(x,L)}function PT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(mp===0&&(mp=_h),L=bg(62914560&~mp),L===0&&(L=4194304)):L=Xl()===99?1:2:L=1),te=Iu(),x=dE(x,L),x!==null&&(YA(x,L,te),nh(x,te))}var Sx;Sx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||aA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:GT(L),U2();break;case 5:mb(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:gI(L,L.stateNode.containerInfo);break;case 10:ey(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?$E(x,L,te):(gl(Rd,Rd.current&1),L=TA(x,L,te),L!==null?L.sibling:null);gl(Rd,Rd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return rh(x,L,te);L.flags|=64}var Ve=L.memoizedState;if(Ve!==null&&(Ve.rendering=null,Ve.tail=null,Ve.lastEffect=null),gl(Rd,Rd.current),Re)break;return null;case 23:case 24:return L.lanes=0,AI(x,L,te)}return TA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Ve=Ki(L,zd.current),n_(L,te),Ve=jS(null,L,Re,x,Ve,te),L.flags|=1,typeof Ve=="object"&&Ve!==null&&typeof Ve.render=="function"&&Ve.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var It=!0;Ma(L)}else It=!1;L.memoizedState=Ve.state!==null&&Ve.state!==void 0?Ve.state:null,hb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Ve.updater=P,L.stateNode=Ve,Ve._reactInternals=L,sr(L,Re,x,te),L=uB(null,L,Re,!0,It,te)}else L.tag=0,Qo(null,L,Ve,te),L=L.child;return L;case 16:Ve=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,It=Ve._init,Ve=It(Ve._payload),L.type=Ve,It=L.tag=Od(Ve),x=qd(Ve,x),It){case 0:L=lE(null,L,Ve,x,te);break e;case 1:L=xT(null,L,Ve,x,te);break e;case 11:L=Bg(null,L,Ve,x,te);break e;case 14:L=Dg(null,L,Ve,qd(Ve.type,x),Re,te);break e}throw Error(l(306,Ve,""))}return L;case 0:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),lE(x,L,Re,Ve,te);case 1:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),xT(x,L,Re,Ve,te);case 3:if(GT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Ve=L.memoizedState,Ve=Ve!==null?Ve.element:null,pe(x,L),bI(L,Re,null,te),Re=L.memoizedState.element,Re===Ve)U2(),L=TA(x,L,te);else{if(Ve=L.stateNode,(It=Ve.hydrate)&&(Nn?(DC=Kh(L.stateNode.containerInfo),N_=L,It=Jm=!0):It=!1),It){if(Nn&&(x=Ve.mutableSourceEagerHydrationData,x!=null))for(Ve=0;Ve=Vi&&It>=El&&Ve<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(It!==El||te.height!==mi.height||TaVe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),TaIt&&(mi.height+=El-It,mi.y=It),Hote&&(te=dr)),dr component higher in the tree to provide a loading indicator or placeholder to display.`)}Jp!==5&&(Jp=2),mi=e0(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:It=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=LT(Ho,It,L);yI(Ho,Ra);break e;case 1:It=mi;var dc=Ho.type,hu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||hu!==null&&typeof hu.componentDidCatch=="function"&&(SI===null||!SI.has(hu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var ml=dB(Ho,It,L);yI(Ho,ml);break e}}Ho=Ho.return}while(Ho!==null)}su(te)}catch(Tl){L=Tl,sf===te&&te!==null&&(sf=te=te.return);continue}break}while(!0)}function s2(){var x=t0.current;return t0.current=xc,x===null?xc:x}function To(x,L){var te=lc;lc|=16;var Re=s2();Ch===x&&EI===L||Fm(x,L);do try{IE();break}catch(Ve){xp(x,Ve)}while(!0);if(j_(),lc=te,t0.current=Re,sf!==null)throw Error(l(261));return Ch=null,EI=0,Jp}function IE(){for(;sf!==null;)Xc(sf)}function mB(){for(;sf!==null&&!Ca();)Xc(sf)}function Xc(x){var L=vx(x.alternate,x,gE);x.memoizedProps=x.pendingProps,L===null?su(x):sf=L,VD.current=null}function su(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=Eb(L),te!==null){te.flags&=2047,sf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=ev(te,L,gE),te!==null){sf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||gE&1073741824||!(te.mode&4)){for(var Re=0,Ve=te.child;Ve!==null;)Re|=Ve.lanes|Ve.childLanes,Ve=Ve.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-Ew?Fm(x,0):o1|=te),nh(x,L)}function MT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(mp===0&&(mp=_h),L=bg(62914560&~mp),L===0&&(L=4194304)):L=Xl()===99?1:2:L=1),te=Iu(),x=pE(x,L),x!==null&&(YA(x,L,te),nh(x,te))}var vx;vx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||cA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:FT(L),K2();break;case 5:Cb(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:gI(L,L.stateNode.containerInfo);break;case 10:ty(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?e1(x,L,te):(Al(Rd,Rd.current&1),L=TA(x,L,te),L!==null?L.sibling:null);Al(Rd,Rd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return rh(x,L,te);L.flags|=64}var Ve=L.memoizedState;if(Ve!==null&&(Ve.rendering=null,Ve.tail=null,Ve.lastEffect=null),Al(Rd,Rd.current),Re)break;return null;case 23:case 24:return L.lanes=0,AI(x,L,te)}return TA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Ve=Ki(L,zd.current),i_(L,te),Ve=zS(null,L,Re,x,Ve,te),L.flags|=1,typeof Ve=="object"&&Ve!==null&&typeof Ve.render=="function"&&Ve.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var It=!0;Ma(L)}else It=!1;L.memoizedState=Ve.state!==null&&Ve.state!==void 0?Ve.state:null,mb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Ve.updater=P,L.stateNode=Ve,Ve._reactInternals=L,sr(L,Re,x,te),L=gB(null,L,Re,!0,It,te)}else L.tag=0,Qo(null,L,Ve,te),L=L.child;return L;case 16:Ve=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,It=Ve._init,Ve=It(Ve._payload),L.type=Ve,It=L.tag=Od(Ve),x=qd(Ve,x),It){case 0:L=uE(null,L,Ve,x,te);break e;case 1:L=GT(null,L,Ve,x,te);break e;case 11:L=Bg(null,L,Ve,x,te);break e;case 14:L=Dg(null,L,Ve,qd(Ve.type,x),Re,te);break e}throw Error(l(306,Ve,""))}return L;case 0:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),uE(x,L,Re,Ve,te);case 1:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),GT(x,L,Re,Ve,te);case 3:if(FT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Ve=L.memoizedState,Ve=Ve!==null?Ve.element:null,pe(x,L),bI(L,Re,null,te),Re=L.memoizedState.element,Re===Ve)K2(),L=TA(x,L,te);else{if(Ve=L.stateNode,(It=Ve.hydrate)&&(Nn?(kC=Kh(L.stateNode.containerInfo),D_=L,It=Jm=!0):It=!1),It){if(Nn&&(x=Ve.mutableSourceEagerHydrationData,x!=null))for(Ve=0;Ve=Vi&&It>=El&&Ve<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(It!==El||te.height!==mi.height||TaVe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),TaIt&&(mi.height+=El-It,mi.y=It),Hote&&(te=dr)),dr ")+` No matching component was found for: - `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Ot(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:TL,findFiberByHostInstance:x.findFiberByHostInstance||hF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Nf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=Sb(x,L);var Ve=zr(x,te,Re).disconnect;return{disconnect:function(){Ve()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Zl;try{return Zl=x,L()}finally{Zl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(S0(),op())}},r.updateContainer=function(x,L,te,Re){var Ve=L.current,It=Iu(),dr=Kp(Ve);e:if(te){te=te._reactInternals;t:{if(tt(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=zf;return L.context===null?L.context=te:L.pendingContext=te,L=dm(It,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),qf(Ve,L),IC(Ve,dr,It),dr},r}});var JMn=H((U$l,XMn)=>{"use strict";XMn.exports=QMn()});var KMn=H((K$l,UMn)=>{"use strict";var PUo={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};UMn.exports=PUo});var $Mn=H((j$l,qMn)=>{"use strict";var MUo=Object.assign||function(e){for(var t=1;t"}}]),e}(),jMn=function(){jpt(e,null,[{key:"fromJS",value:function(r){var n=r.width,a=r.height;return new e(n,a)}}]);function e(t,r){ohr(this,e),this.width=t,this.height=r}return jpt(e,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),zMn=function(){function e(t,r){ohr(this,e),this.unit=t,this.value=r}return jpt(e,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case DX.UNIT_POINT:return String(this.value);case DX.UNIT_PERCENT:return this.value+"%";case DX.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();qMn.exports=function(e,t){function r(l,A,f){var I=l[A];l[A]=function(){for(var C=arguments.length,b=Array(C),E=0;E1?b-1:0),N=1;N1&&arguments[1]!==void 0?arguments[1]:NaN,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,I=arguments.length>3&&arguments[3]!==void 0?arguments[3]:DX.DIRECTION_LTR;return l.call(this,A,f,I)}),MUo({Config:t.Config,Node:t.Node,Layout:e("Layout",HUo),Size:e("Size",jMn),Value:e("Value",zMn),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},DX)}});var eHn=H((exports,module)=>{(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t}):typeof module=="object"&&module.exports?module.exports=t:(e.nbind=e.nbind||{}).init=t})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){t(r);return}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module<"u"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof Et=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(t,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),t=nodePath.normalize(t);var n=nodeFS.readFileSync(t);return r?n:n.toString()},Module.readBinary=function(t){var r=Module.read(t,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},Module.load=function(t){globalEval(read(t))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(t){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(t));var r=read(t,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(e,t){quit(e)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(t,r,n){var a=new XMLHttpRequest;a.open("GET",t,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):n()},a.onerror=n,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")Module.print||(Module.print=function(t){console.log(t)}),Module.printErr||(Module.printErr=function(t){console.warn(t)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump<"u"?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(e){document.title=e})}else throw"Unknown runtime environment. Where are we?";function globalEval(e){eval.call(null,e)}!Module.load&&Module.read&&(Module.load=function(t){globalEval(Module.read(t))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return Runtime.QUANTUM_SIZE;if(e[0]==="i"){var t=parseInt(e.substr(1));return assert(t%8===0),t/8}else return 0}}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return t==="double"||t==="i64"?e&7&&(assert((e&7)===4),e+=4):assert((e&3)===0),e},getAlignSize:function(e,t,r){return!r&&(e=="i64"||e=="double")?8:e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8)},dynCall:function(e,t,r){return r&&r.length?Module["dynCall_"+e].apply(null,[t].concat(r)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],r=(t+e+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var n=enlargeMemory();if(!n)return HEAP32[DYNAMICTOP_PTR>>2]=t,0}return t},alignMemory:function(e,t){var r=e=Math.ceil(e/(t||16))*(t||16);return r},makeBigInt:function(e,t,r){var n=r?+(e>>>0)+ +(t>>>0)*4294967296:+(e>>>0)+ +(t|0)*4294967296;return n},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(e!=null&&e!==0){var r=(e.length<<2)+1;t=Runtime.stackAlloc(r),stringToUTF8(e,t,r)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(t,r,n,a,o){var l=getCFunc(t),A=[],f=0;if(a)for(var I=0;I>0]=t;break;case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(e,t,r){switch(t=t||"i8",t.charAt(t.length-1)==="*"&&(t="i32"),t){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(e,t,r,n){var a,o;typeof e=="number"?(a=!0,o=e):(a=!1,o=e.length);var l=typeof t=="string"?t:null,A;if(r==ALLOC_NONE?A=n:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(o,l?1:t.length)),a){var n=A,f;for(assert((A&3)==0),f=A+(o&-4);n>2]=0;for(f=A+o;n>0]=0;return A}if(l==="i8")return e.subarray||e.slice?HEAPU8.set(e,A):HEAPU8.set(new Uint8Array(e),A),A;for(var I=0,C,b,E;I>0],r|=n,!(n==0&&!t||(a++,t&&a==t)););t||(t=a);var o="";if(r<128){for(var l=1024,A;t>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,l))),o=o?o+A:A,e+=l,t-=l;return o}return Module.UTF8ToString(e)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(e){for(var t="";;){var r=HEAP8[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var n,a,o,l,A,f,I="";;){if(n=e[t++],!n)return I;if(!(n&128)){I+=String.fromCharCode(n);continue}if(a=e[t++]&63,(n&224)==192){I+=String.fromCharCode((n&31)<<6|a);continue}if(o=e[t++]&63,(n&240)==224?n=(n&15)<<12|a<<6|o:(l=e[t++]&63,(n&248)==240?n=(n&7)<<18|a<<12|o<<6|l:(A=e[t++]&63,(n&252)==248?n=(n&3)<<24|a<<18|o<<12|l<<6|A:(f=e[t++]&63,n=(n&1)<<30|a<<24|o<<18|l<<12|A<<6|f))),n<65536)I+=String.fromCharCode(n);else{var C=n-65536;I+=String.fromCharCode(55296|C>>10,56320|C&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(e,t,r,n){if(!(n>0))return 0;for(var a=r,o=r+n-1,l=0;l=55296&&A<=57343&&(A=65536+((A&1023)<<10)|e.charCodeAt(++l)&1023),A<=127){if(r>=o)break;t[r++]=A}else if(A<=2047){if(r+1>=o)break;t[r++]=192|A>>6,t[r++]=128|A&63}else if(A<=65535){if(r+2>=o)break;t[r++]=224|A>>12,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=2097151){if(r+3>=o)break;t[r++]=240|A>>18,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=67108863){if(r+4>=o)break;t[r++]=248|A>>24,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else{if(r+5>=o)break;t[r++]=252|A>>30,t[r++]=128|A>>24&63,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}}return t[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(e,t,r){return stringToUTF8Array(e,HEAPU8,t,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(e){for(var t=0,r=0;r=55296&&n<=57343&&(n=65536+((n&1023)<<10)|e.charCodeAt(++r)&1023),n<=127?++t:n<=2047?t+=2:n<=65535?t+=3:n<=2097151?t+=4:n<=67108863?t+=5:t+=6}return t}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var r=e.substr(1),n=lengthBytesUTF8(r)+1,a=_malloc(n);stringToUTF8(r,a,n);var o=_malloc(4),l=t(a,0,0,o);if(getValue(o,"i32")===0&&l)return Pointer_stringify(l)}catch{}finally{a&&_free(a),o&&_free(o),l&&_free(l)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){var t=/__Z[\w\d_]+/g;return e.replace(t,function(r){var n=demangle(r);return r===n?r:r+" ["+n+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=` -`+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var t=e.shift();if(typeof t=="function"){t();continue}var r=t.func;typeof r=="number"?t.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(t.arg===void 0?null:t.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}Module.addOnPreRun=addOnPreRun;function addOnInit(e){__ATINIT__.unshift(e)}Module.addOnInit=addOnInit;function addOnPreMain(e){__ATMAIN__.unshift(e)}Module.addOnPreMain=addOnPreMain;function addOnExit(e){__ATEXIT__.unshift(e)}Module.addOnExit=addOnExit;function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(e,t,r){var n=r>0?r:lengthBytesUTF8(e)+1,a=new Array(n),o=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=o),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(e){for(var t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(e,t,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var n,a;r&&(a=t+lengthBytesUTF8(e),n=HEAP8[a]),stringToUTF8(e,t,1/0),r&&(HEAP8[a]=n)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(e,t){HEAP8.set(e,t)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(e,t,r){for(var n=0;n>0]=e.charCodeAt(n);r||(HEAP8[t>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function e(t,r){var n=t>>>16,a=t&65535,o=r>>>16,l=r&65535;return a*l+(n*l+a*o<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e=e>>>0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,r,n,a,o,l,A){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,r,n,a,o,l,A){return ASM_CONSTS[e](t,r,n,a,o,l,A)}function _emscripten_asm_const_iiiii(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiidddddd(e,t,r,n,a,o,l,A,f){return ASM_CONSTS[e](t,r,n,a,o,l,A,f)}function _emscripten_asm_const_iiididi(e,t,r,n,a,o,l){return ASM_CONSTS[e](t,r,n,a,o,l)}function _emscripten_asm_const_iiii(e,t,r,n){return ASM_CONSTS[e](t,r,n)}function _emscripten_asm_const_iiiid(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiiiii(e,t,r,n,a,o){return ASM_CONSTS[e](t,r,n,a,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,r,n){var a=arguments.length,o=a<3?t:n===null?n=Object.getOwnPropertyDescriptor(t,r):n,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(e,t,r,n);else for(var A=e.length-1;A>=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function _defineHidden(e){return function(t,r){Object.defineProperty(t,r,{configurable:!1,enumerable:!1,value:e,writable:!0})}}var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,r=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(r)}function __nbind_register_pool(e,t,r,n){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=n/4,HEAP32[t/4]=16909060,HEAP8[t]==1&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=(o={},o[1024]=_nbind.PrimitiveType,o[64]=_nbind.Int64Type,o[2048]=_nbind.BindClass,o[3072]=_nbind.BindClassPtr,o[4096]=_nbind.SharedClassPtr,o[5120]=_nbind.ArrayType,o[6144]=_nbind.ArrayType,o[7168]=_nbind.CStringType,o[9216]=_nbind.CallbackType,o[10240]=_nbind.BindType,o),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var o}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(e==0)Browser.mainLoop.scheduler=function(){var l=Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,l)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(!window.setImmediate){let o=function(l){l.source===window&&l.data===n&&(l.stopPropagation(),r.shift()())};var a=o,r=[],n="setimmediate";window.addEventListener("message",o,!0),window.setImmediate=function(A){r.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:n})):window.postMessage(n,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,r,n,a){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=n;var o;typeof n<"u"?o=function(){Module.dynCall_vi(e,n)}:o=function(){Module.dynCall_v(e)};var l=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var f=Date.now(),I=Browser.mainLoop.queue.shift();if(I.func(I.arg),Browser.mainLoop.remainingBlockers){var C=Browser.mainLoop.remainingBlockers,b=C%1==0?C-1:Math.floor(C);I.counted?Browser.mainLoop.remainingBlockers=b:(b=b+.5,Browser.mainLoop.remainingBlockers=(8*C+b)/9)}if(console.log('main loop blocker "'+I.name+'" took '+(Date.now()-f)+" ms"),Browser.mainLoop.updateStatus(),l1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),!(l0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;t?t"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(o)},e.handle=function(o,l,A,f){var I=null;if(Browser.hasBlobConstructor)try{I=new Blob([o],{type:Browser.getMimetype(l)}),I.size!==o.length&&(I=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(l)}))}catch(N){Runtime.warnOnce("Blob constructor present but fails: "+N+"; falling back to blob builder")}if(!I){var C=new Browser.BlobBuilder;C.append(new Uint8Array(o).buffer),I=C.getBlob()}var b=Browser.URLObject.createObjectURL(I),E=new Image;E.onload=function(){assert(E.complete,"Image "+l+" could not be decoded");var B=document.createElement("canvas");B.width=E.width,B.height=E.height;var F=B.getContext("2d");F.drawImage(E,0,0),Module.preloadedImages[l]=B,Browser.URLObject.revokeObjectURL(b),A&&A(o)},E.onerror=function(B){console.log("Image "+b+" could not be decoded"),f&&f()},E.src=b},Module.preloadPlugins.push(e);var t={};t.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(o,l,A,f){var I=!1;function C(F){I||(I=!0,Module.preloadedAudios[l]=F,A&&A(o))}function b(){I||(I=!0,Module.preloadedAudios[l]=new Audio,f&&f())}if(Browser.hasBlobConstructor){try{var E=new Blob([o],{type:Browser.getMimetype(l)})}catch{return b()}var N=Browser.URLObject.createObjectURL(E),B=new Audio;B.addEventListener("canplaythrough",function(){C(B)},!1),B.onerror=function(Q){if(I)return;console.log("warning: browser could not fully decode audio "+l+", trying slower base64 approach");function J(ae){for(var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ce="=",fe="",ue=0,de=0,be=0;be=6;){var Se=ue>>de-6&63;de-=6,fe+=ne[Se]}return de==2?(fe+=ne[(ue&3)<<4],fe+=ce+ce):de==4&&(fe+=ne[(ue&15)<<2],fe+=ce),fe}B.src="data:audio/x-"+l.substr(-3)+";base64,"+J(o),C(B)},B.src=N,Browser.safeSetTimeout(function(){C(B)},1e4)}else return b()},Module.preloadPlugins.push(t);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(e,t,r,n){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(t){var l={antialias:!1,alpha:!1};if(n)for(var A in n)l[A]=n[A];o=GL.createContext(e,l),o&&(a=GL.getContext(o).GLctx)}else a=e.getContext("2d");return a?(r&&(t||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(function(f){f()}),Browser.init()),a):null},destroyContext:function(e,t,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,r){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var n=Module.canvas;function a(){Browser.isFullscreen=!1;var l=n.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===l?(n.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},n.exitFullscreen=n.exitFullscreen.bind(document),Browser.lockPointer&&n.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(l.parentNode.insertBefore(n,l),l.parentNode.removeChild(l),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(n)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");n.parentNode.insertBefore(o,n),o.appendChild(n),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?o.requestFullscreen({vrDisplay:r}):o.requestFullscreen()},requestFullScreen:function(e,t,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(n,a,o){return Browser.requestFullscreen(n,a,o)},Browser.requestFullscreen(e,t,r)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame:function e(t){typeof window>"u"?Browser.fakeRequestAnimationFrame(t):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(t))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(t){t()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,n=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,o=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var l=e.touch;if(l===void 0)return;var A=l.pageX-(a+t.left),f=l.pageY-(o+t.top);A=A*(r/t.width),f=f*(n/t.height);var I={x:A,y:f};if(e.type==="touchstart")Browser.lastTouches[l.identifier]=I,Browser.touches[l.identifier]=I;else if(e.type==="touchend"||e.type==="touchmove"){var C=Browser.touches[l.identifier];C||(C=I),Browser.lastTouches[l.identifier]=C,Browser.touches[l.identifier]=I}return}var b=e.pageX-(a+t.left),E=e.pageY-(o+t.top);b=b*(r/t.width),E=E*(n/t.height),Browser.mouseMovementX=b-Browser.mouseX,Browser.mouseMovementY=E-Browser.mouseY,Browser.mouseX=b,Browser.mouseY=E}},asyncLoad:function(e,t,r,n){var a=n?"":"al "+e;Module.readAsync(e,function(o){assert(o,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(o)),a&&removeRunDependency(a)},function(o){if(r)r();else throw'Loading data file "'+e+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(t){t(e.width,e.height)})},setCanvasSize:function(e,t,r){var n=Module.canvas;Browser.updateCanvasDimensions(n,e,t),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(n/a>2];return t},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return e>=0?assert(t===0):assert(t===-1),e},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(n){return(typeof FS>"u"||!(n instanceof FS.ErrnoError))&&abort(n),-n.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function r(f,I,C,b,E,N){if(I==1){var B=b&896;(B==128||B==256||B==384)&&(f="X const")}var F;return N?F=C.replace("X",f).replace("Y",E):F=f.replace("X",C).replace("Y",E),F.replace(/([*&]) (?=[*&])/g,"$1")}function n(f,I,C,b,E){throw new Error(f+" type "+C.replace("X",I+"?")+(b?" with flag "+b:"")+" in "+E)}function a(f,I,C,b,E,N,B,F){N===void 0&&(N="X"),F===void 0&&(F=1);var Q=C(f);if(Q)return Q;var J=b(f),ae=J.placeholderFlag,ne=t[ae];B&&ne&&(N=r(B[2],B[0],N,ne[0],"?",!0));var ce;ae==0&&(ce="Unbound"),ae>=10&&(ce="Corrupt"),F>20&&(ce="Deeply nested"),ce&&n(ce,f,N,ae,E||"?");var fe=J.paramList[0],ue=a(fe,I,C,b,E,N,ne,F+1),de,be={flags:ne[0],id:f,name:"",paramList:[ue]},Se=[],De="?";switch(J.placeholderFlag){case 1:de=ue.spec;break;case 2:if((ue.flags&15360)==1024&&ue.spec.ptrSize==1){be.flags=7168;break}case 3:case 6:case 5:de=ue.spec,ue.flags&15360;break;case 8:De=""+J.paramList[1],be.paramList.push(J.paramList[1]);break;case 9:for(var k=0,tt=J.paramList[1];k>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),l=SYSCALLS.get(),A=a;return FS.llseek(r,A,l),HEAP32[o>>2]=r.position,r.getdents&&A===0&&l===0&&(r.getdents=null),0}catch(f){return(typeof FS>"u"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.get(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(C,b){var E=___syscall146.buffers[C];assert(E),b===0||b===10?((C===1?Module.print:Module.printErr)(UTF8ArrayToString(E,0)),E.length=0):E.push(b)});for(var l=0;l>2],f=HEAP32[n+(l*8+4)>>2],I=0;I"u"||!(C instanceof FS.ErrnoError))&&abort(C),-C.errno}}function __nbind_finish(){for(var e=0,t=_nbind.BindClass.list;ee.pageSize/2||t>e.pageSize-r){var n=_nbind.typeNameTbl.NBind.proto;return n.lalloc(t)}else return HEAPU32[e.usedPtr]=r+t,e.rootPtr+r},e.lreset=function(t,r){var n=HEAPU32[e.pagePtr];if(n){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(t,r)}else HEAPU32[e.usedPtr]=t},e}();_nbind.Pool=Pool;function constructType(e,t){var r=e==10240?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e],n=new r(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}_nbind.constructType=constructType;function getType(e){return typeIdTbl[e]}_nbind.getType=getType;function queryType(e){var t=HEAPU8[e],r=_nbind.structureList[t][1];e/=4,r<0&&(++e,r=HEAPU32[e]+1);var n=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+r));return t==9&&(n=[n[0],n.slice(1)]),{paramList:n,placeholderFlag:t}}_nbind.queryType=queryType;function getTypes(e,t){return e.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,t):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(e){var t={};if(e)for(;;){var r=HEAPU32[e/4];if(!r)break;t[readAsciiString(r)]=!0,e+=4}return t}_nbind.readPolicyList=readPolicyList;function getDynCall(e,t){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},n=e.map(function(o){return r[o.name]||"i"}).join(""),a=Module["dynCall_"+n];if(!a)throw new Error("dynCall_"+n+" not found for "+t+"("+e.map(function(o){return o.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(e,t,r,n){var a=e[t];e.hasOwnProperty(t)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),e[t]=a),a.addMethod(r,n)):(r.arity=n,e[t]=r)}_nbind.addMethod=addMethod;function throwError(e){throw new Error(e)}_nbind.throwError=throwError,_nbind.bigEndian=!1;var _a=_typeModule(_typeModule);_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return t.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){__extends(t,e);function t(r){var n=e.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=a[r.ptrSize*8],n.ptrSize=r.ptrSize,n}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},t}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(e,t){if(e==null){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if(typeof e!="string")throw new Error("Type mismatch")}else e=e.toString();var r=Module.lengthBytesUTF8(e)+1,n=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(e,HEAPU8,n,r),n}_nbind.pushCString=pushCString;function popCString(e){return e===0?null:Module.Pointer_stringify(e)}_nbind.popCString=popCString;var CStringType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return t.prototype.makeWireWrite=function(r,n){return function(a){return pushCString(a,n)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=function(n){return!!n},r}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireRead=function(r){return"!!("+r+")"},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();_nbind.Wrapper=Wrapper;function makeBound(e,t){var r=function(n){__extends(a,n);function a(o,l,A,f){var I=n.call(this)||this;if(!(I instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var C=l,b=A,E=f;if(o!==_nbind.ptrMarker){var N=I.__nbindConstructor.apply(I,arguments);C=4608,E=HEAPU32[N/4],b=HEAPU32[N/4+1]}var B={configurable:!0,enumerable:!1,value:null,writable:!1},F={__nbindFlags:C,__nbindPtr:b};E&&(F.__nbindShared=E,_nbind.mark(I));for(var Q=0,J=Object.keys(F);Q>=1;var r=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,r}else{if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(e){return typeof e=="number"?e:pushValue(e)*4096+valueBase}function pop64(e){return e=3?l=Buffer.from(o):l=new Buffer(o),l.copy(n)}else getBuffer(n).set(o)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(e,t,r,n,a,o){try{Module.dynCall_viiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_vif(e,t,r){try{Module.dynCall_vif(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_vid(e,t,r){try{Module.dynCall_vid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_fiff(e,t,r,n){try{return Module.dynCall_fiff(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(e,t){try{Module.dynCall_vi(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(e,t,r){try{Module.dynCall_vii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_ii(e,t){try{return Module.dynCall_ii(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(e,t,r,n,a){try{Module.dynCall_viddi(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vidd(e,t,r,n){try{Module.dynCall_vidd(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(e,t,r,n){try{return Module.dynCall_iiii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(e,t,r,n){try{return Module.dynCall_diii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(e,t){try{return Module.dynCall_di(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(e,t,r){try{return Module.dynCall_iid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_iii(e,t,r){try{return Module.dynCall_iii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiddi(e,t,r,n,a,o){try{Module.dynCall_viiddi(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiiiii(e,t,r,n,a,o,l){try{Module.dynCall_viiiiii(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(e,t,r){try{return Module.dynCall_dii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_iiiiii(e,t,r,n,a,o){try{return Module.dynCall_iiiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiid(e,t,r,n,a){try{Module.dynCall_viiid(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viififi(e,t,r,n,a,o,l){try{Module.dynCall_viififi(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(e,t,r,n){try{Module.dynCall_viii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viid(e,t,r,n){try{Module.dynCall_viid(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(e,t,r){try{return Module.dynCall_idd(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiii(e,t,r,n,a){try{Module.dynCall_viiii(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,r){var n=new e.Int8Array(r),a=new e.Int16Array(r),o=new e.Int32Array(r),l=new e.Uint8Array(r),A=new e.Uint16Array(r),f=new e.Uint32Array(r),I=new e.Float32Array(r),C=new e.Float64Array(r),b=t.DYNAMICTOP_PTR|0,E=t.tempDoublePtr|0,N=t.ABORT|0,B=t.STACKTOP|0,F=t.STACK_MAX|0,Q=t.cttz_i8|0,J=t.___dso_handle|0,ae=0,ne=0,ce=0,fe=0,ue=e.NaN,de=e.Infinity,be=0,Se=0,De=0,k=0,tt=0,ze=0,Le=e.Math.floor,Je=e.Math.abs,ft=e.Math.sqrt,lt=e.Math.pow,Ot=e.Math.cos,Er=e.Math.sin,Sr=e.Math.tan,jt=e.Math.acos,Bt=e.Math.asin,Dt=e.Math.atan,Fr=e.Math.atan2,$t=e.Math.exp,Xt=e.Math.log,lr=e.Math.ceil,cr=e.Math.imul,Ar=e.Math.min,qr=e.Math.max,yn=e.Math.clz32,ke=e.Math.fround,zt=t.abort,Fn=t.assert,Nn=t.enlargeMemory,Hi=t.getTotalMemory,Ao=t.abortOnCannotGrowMemory,Vr=t.invoke_viiiii,xi=t.invoke_vif,no=t.invoke_vid,ga=t.invoke_fiff,Ya=t.invoke_vi,Gc=t.invoke_vii,ol=t.invoke_ii,Sc=t.invoke_viddi,Hr=t.invoke_vidd,Or=t.invoke_iiii,Ft=t.invoke_diii,zr=t.invoke_di,Rn=t.invoke_iid,Pr=t.invoke_iii,Qi=t.invoke_viiddi,ps=t.invoke_viiiiii,yo=t.invoke_dii,bo=t.invoke_i,Qa=t.invoke_iiiiii,gc=t.invoke_viiid,_g=t.invoke_viififi,Nc=t.invoke_viii,sA=t.invoke_v,ma=t.invoke_viid,vu=t.invoke_idd,li=t.invoke_viiii,Ei=t._emscripten_asm_const_iiiii,Ws=t._emscripten_asm_const_iiidddddd,Xa=t._emscripten_asm_const_iiiid,ac=t.__nbind_reference_external,Ql=t._emscripten_asm_const_iiiiiiii,Oc=t._removeAccessorPrefix,vg=t._typeModule,Kl=t.__nbind_register_pool,Ju=t.__decorate,Da=t._llvm_stackrestore,fu=t.___cxa_atexit,yg=t.__extends,_I=t.__nbind_get_value_object,Kh=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,Ri=t._emscripten_set_main_loop_timing,Do=t.__nbind_register_primitive,Pt=t.__nbind_register_type,Hu=t._emscripten_memcpy_big,Ru=t.__nbind_register_function,Vs=t.___setErrNo,Uu=t.__nbind_register_class,Yn=t.__nbind_finish,Ko=t._abort,Sg=t._nbind_value,HA=t._llvm_stacksave,ZA=t.___syscall54,$i=t._defineHidden,gl=t._emscripten_set_main_loop,zf=t._emscripten_get_now,zd=t.__nbind_register_callback_signature,aA=t._emscripten_asm_const_iiiiii,so=t.__nbind_free_external,Ki=t._emscripten_asm_const_iiii,cc=t._emscripten_asm_const_iiididi,Xs=t.___syscall6,ws=t._atexit,Gs=t.___syscall140,Ma=t.___syscall146,Dc=ke(0);let As=ke(0);function Nf(p){p=p|0;var y=0;return y=B,B=B+p|0,B=B+15&-16,y|0}function Am(){return B|0}function Zl(p){p=p|0,B=p}function rc(p,y){p=p|0,y=y|0,B=p,F=y}function ad(p,y){p=p|0,y=y|0,ae||(ae=p,ne=y)}function Qm(p){p=p|0,ze=p}function rl(){return ze|0}function LA(){var p=0,y=0;Yd(8104,8,400)|0,Yd(8504,408,540)|0,p=9044,y=p+44|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));n[9088]=0,n[9089]=1,o[2273]=0,o[2274]=948,o[2275]=948,fu(17,8104,J|0)|0}function VA(p){p=p|0,aa(p+948|0)}function bl(p){return p=ke(p),((LT(p)|0)&2147483647)>>>0>2139095040|0}function bg(p,y,w){p=p|0,y=y|0,w=w|0;e:do if(o[p+(y<<3)+4>>2]|0)p=p+(y<<3)|0;else{if((y|2|0)==3&&o[p+60>>2]|0){p=p+56|0;break}switch(y|0){case 0:case 2:case 4:case 5:{if(o[p+52>>2]|0){p=p+48|0;break e}break}default:}if(o[p+68>>2]|0){p=p+64|0;break}else{p=(y|1|0)==5?948:w;break}}while(!1);return p|0}function Yp(p){p=p|0;var y=0;return y=gie(1e3)|0,YA(p,(y|0)!=0,2456),o[2276]=(o[2276]|0)+1,Yd(y|0,8104,1e3)|0,n[p+2>>0]|0&&(o[y+4>>2]=2,o[y+12>>2]=4),o[y+976>>2]=p,y|0}function YA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;X=B,B=B+16|0,G=X,y||(o[G>>2]=w,zS(p,5,3197,G)),B=X}function vr(){return Yp(956)|0}function Zt(p){p=p|0;var y=0;return y=ju(1e3)|0,bn(y,p),YA(o[p+976>>2]|0,1,2456),o[2276]=(o[2276]|0)+1,o[y+944>>2]=0,y|0}function bn(p,y){p=p|0,y=y|0;var w=0;Yd(p|0,y|0,948)|0,_w(p+948|0,y+948|0),w=p+960|0,p=y+960|0,y=w+40|0;do o[w>>2]=o[p>>2],w=w+4|0,p=p+4|0;while((w|0)<(y|0))}function ls(p){p=p|0;var y=0,w=0,G=0,X=0;if(y=p+944|0,w=o[y>>2]|0,w|0&&(oa(w+948|0,p)|0,o[y>>2]=0),w=Fs(p)|0,w|0){y=0;do o[(Oa(p,y)|0)+944>>2]=0,y=y+1|0;while((y|0)!=(w|0))}w=p+948|0,G=o[w>>2]|0,X=p+952|0,y=o[X>>2]|0,(y|0)!=(G|0)&&(o[X>>2]=y+(~((y+-4-G|0)>>>2)<<2)),Ca(w),Aie(p),o[2276]=(o[2276]|0)+-1}function oa(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0;G=o[p>>2]|0,Ge=p+4|0,w=o[Ge>>2]|0,U=w;e:do if((G|0)==(w|0))X=G,le=4;else for(p=G;;){if((o[p>>2]|0)==(y|0)){X=p,le=4;break e}if(p=p+4|0,(p|0)==(w|0)){p=0;break}}while(!1);return(le|0)==4&&((X|0)!=(w|0)?(G=X+4|0,p=U-G|0,y=p>>2,y&&(qT(X|0,G|0,p|0)|0,w=o[Ge>>2]|0),p=X+(y<<2)|0,(w|0)==(p|0)||(o[Ge>>2]=w+(~((w+-4-p|0)>>>2)<<2)),p=1):p=0),p|0}function Fs(p){return p=p|0,(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2|0}function Oa(p,y){p=p|0,y=y|0;var w=0;return w=o[p+948>>2]|0,(o[p+952>>2]|0)-w>>2>>>0>y>>>0?p=o[w+(y<<2)>>2]|0:p=0,p|0}function Ca(p){p=p|0;var y=0,w=0,G=0,X=0;G=B,B=B+32|0,y=G,X=o[p>>2]|0,w=(o[p+4>>2]|0)-X|0,((o[p+8>>2]|0)-X|0)>>>0>w>>>0&&(X=w>>2,pn(y,X,X,p+8|0),t2(p,y),z2(y)),B=G}function gd(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;St=Fs(p)|0;do if(St|0){if((o[(Oa(p,0)|0)+944>>2]|0)==(p|0)){if(!(oa(p+948|0,y)|0))break;Yd(y+400|0,8504,540)|0,o[y+944>>2]=0,di(p);break}le=o[(o[p+976>>2]|0)+12>>2]|0,Ge=p+948|0,Xe=(le|0)==0,w=0,U=0;do G=o[(o[Ge>>2]|0)+(U<<2)>>2]|0,(G|0)==(y|0)?di(p):(X=Zt(G)|0,o[(o[Ge>>2]|0)+(w<<2)>>2]=X,o[X+944>>2]=p,Xe||Ir[le&15](G,X,p,w),w=w+1|0),U=U+1|0;while((U|0)!=(St|0));if(w>>>0>>0){Xe=p+948|0,Ge=p+952|0,le=w,w=o[Ge>>2]|0;do U=(o[Xe>>2]|0)+(le<<2)|0,G=U+4|0,X=w-G|0,y=X>>2,y&&(qT(U|0,G|0,X|0)|0,w=o[Ge>>2]|0),X=w,G=U+(y<<2)|0,(X|0)!=(G|0)&&(w=X+(~((X+-4-G|0)>>>2)<<2)|0,o[Ge>>2]=w),le=le+1|0;while((le|0)!=(St|0))}}while(!1)}function Dp(p){p=p|0;var y=0,w=0,G=0,X=0;sp(p,(Fs(p)|0)==0,2491),sp(p,(o[p+944>>2]|0)==0,2545),y=p+948|0,w=o[y>>2]|0,G=p+952|0,X=o[G>>2]|0,(X|0)!=(w|0)&&(o[G>>2]=X+(~((X+-4-w|0)>>>2)<<2)),Ca(y),y=p+976|0,w=o[y>>2]|0,Yd(p|0,8104,1e3)|0,n[w+2>>0]|0&&(o[p+4>>2]=2,o[p+12>>2]=4),o[y>>2]=w}function sp(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;X=B,B=B+16|0,G=X,y||(o[G>>2]=w,hd(p,5,3197,G)),B=X}function QA(){return o[2276]|0}function ff(){var p=0;return p=gie(20)|0,Zs((p|0)!=0,2592),o[2277]=(o[2277]|0)+1,o[p>>2]=o[239],o[p+4>>2]=o[240],o[p+8>>2]=o[241],o[p+12>>2]=o[242],o[p+16>>2]=o[243],p|0}function Zs(p,y){p=p|0,y=y|0;var w=0,G=0;G=B,B=B+16|0,w=G,p||(o[w>>2]=y,hd(0,5,3197,w)),B=G}function io(p){p=p|0,Aie(p),o[2277]=(o[2277]|0)+-1}function Ea(p,y){p=p|0,y=y|0;var w=0;y?(sp(p,(Fs(p)|0)==0,2629),w=1):(w=0,y=0),o[p+964>>2]=y,o[p+988>>2]=w}function Hl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,U=G+8|0,X=G+4|0,le=G,o[X>>2]=y,sp(p,(o[y+944>>2]|0)==0,2709),sp(p,(o[p+964>>2]|0)==0,2763),Dr(p),y=p+948|0,o[le>>2]=(o[y>>2]|0)+(w<<2),o[U>>2]=o[le>>2],On(y,U,X)|0,o[(o[X>>2]|0)+944>>2]=p,di(p),B=G}function Dr(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;if(w=Fs(p)|0,w|0&&(o[(Oa(p,0)|0)+944>>2]|0)!=(p|0)){G=o[(o[p+976>>2]|0)+12>>2]|0,X=p+948|0,U=(G|0)==0,y=0;do le=o[(o[X>>2]|0)+(y<<2)>>2]|0,Ge=Zt(le)|0,o[(o[X>>2]|0)+(y<<2)>>2]=Ge,o[Ge+944>>2]=p,U||Ir[G&15](le,Ge,p,y),y=y+1|0;while((y|0)!=(w|0))}}function On(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0;Ds=B,B=B+64|0,rr=Ds+52|0,Ge=Ds+48|0,an=Ds+28|0,Ks=Ds+24|0,zi=Ds+20|0,Un=Ds,G=o[p>>2]|0,U=G,y=G+((o[y>>2]|0)-U>>2<<2)|0,G=p+4|0,X=o[G>>2]|0,le=p+8|0;do if(X>>>0<(o[le>>2]|0)>>>0){if((y|0)==(X|0)){o[y>>2]=o[w>>2],o[G>>2]=(o[G>>2]|0)+4;break}ry(p,y,X,y+4|0),y>>>0<=w>>>0&&(w=(o[G>>2]|0)>>>0>w>>>0?w+4|0:w),o[y>>2]=o[w>>2]}else{G=(X-U>>2)+1|0,X=gt(p)|0,X>>>0>>0&&me(p),ht=o[p>>2]|0,St=(o[le>>2]|0)-ht|0,U=St>>1,pn(Un,St>>2>>>0>>1>>>0?U>>>0>>0?G:U:X,y-ht>>2,p+8|0),ht=Un+8|0,G=o[ht>>2]|0,U=Un+12|0,St=o[U>>2]|0,le=St,Xe=G;do if((G|0)==(St|0)){if(St=Un+4|0,G=o[St>>2]|0,Si=o[Un>>2]|0,X=Si,G>>>0<=Si>>>0){G=le-X>>1,G=G|0?G:1,pn(an,G,G>>>2,o[Un+16>>2]|0),o[Ks>>2]=o[St>>2],o[zi>>2]=o[ht>>2],o[Ge>>2]=o[Ks>>2],o[rr>>2]=o[zi>>2],yw(an,Ge,rr),G=o[Un>>2]|0,o[Un>>2]=o[an>>2],o[an>>2]=G,G=an+4|0,Si=o[St>>2]|0,o[St>>2]=o[G>>2],o[G>>2]=Si,G=an+8|0,Si=o[ht>>2]|0,o[ht>>2]=o[G>>2],o[G>>2]=Si,G=an+12|0,Si=o[U>>2]|0,o[U>>2]=o[G>>2],o[G>>2]=Si,z2(an),G=o[ht>>2]|0;break}U=G,le=((U-X>>2)+1|0)/-2|0,Ge=G+(le<<2)|0,X=Xe-U|0,U=X>>2,U&&(qT(Ge|0,G|0,X|0)|0,G=o[St>>2]|0),Si=Ge+(U<<2)|0,o[ht>>2]=Si,o[St>>2]=G+(le<<2),G=Si}while(!1);o[G>>2]=o[w>>2],o[ht>>2]=(o[ht>>2]|0)+4,y=Ap(p,Un,y)|0,z2(Un)}while(!1);return B=Ds,y|0}function di(p){p=p|0;var y=0;do{if(y=p+984|0,n[y>>0]|0)break;n[y>>0]=1,I[p+504>>2]=ke(ue),p=o[p+944>>2]|0}while(p|0)}function aa(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function Bo(p){return p=p|0,o[p+944>>2]|0}function us(p){p=p|0,sp(p,(o[p+964>>2]|0)!=0,2832),di(p)}function Xl(p){return p=p|0,(n[p+984>>0]|0)!=0|0}function WA(p,y){p=p|0,y=y|0,e9e(p,y,400)|0&&(Yd(p|0,y|0,400)|0,di(p))}function If(p){p=p|0;var y=As;return y=ke(I[p+44>>2]),p=bl(y)|0,ke(p?ke(0):y)}function rf(p){p=p|0;var y=As;return y=ke(I[p+48>>2]),bl(y)|0&&(y=n[(o[p+976>>2]|0)+2>>0]|0?ke(1):ke(0)),ke(y)}function op(p,y){p=p|0,y=y|0,o[p+980>>2]=y}function bd(p){return p=p|0,o[p+980>>2]|0}function $1(p,y){p=p|0,y=y|0;var w=0;w=p+4|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Cw(p){return p=p|0,o[p+4>>2]|0}function XA(p,y){p=p|0,y=y|0;var w=0;w=p+8|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Ac(p){return p=p|0,o[p+8>>2]|0}function Gm(p,y){p=p|0,y=y|0;var w=0;w=p+12|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function JS(p){return p=p|0,o[p+12>>2]|0}function qd(p,y){p=p|0,y=y|0;var w=0;w=p+16|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function hh(p){return p=p|0,o[p+16>>2]|0}function Qp(p,y){p=p|0,y=y|0;var w=0;w=p+20|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function dC(p){return p=p|0,o[p+20>>2]|0}function oE(p,y){p=p|0,y=y|0;var w=0;w=p+24|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function K_(p){return p=p|0,o[p+24>>2]|0}function ey(p,y){p=p|0,y=y|0;var w=0;w=p+28|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function KE(p){return p=p|0,o[p+28>>2]|0}function NC(p,y){p=p|0,y=y|0;var w=0;w=p+32|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function n_(p){return p=p|0,o[p+32>>2]|0}function up(p,y){p=p|0,y=y|0;var w=0;w=p+36|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Xm(p){return p=p|0,o[p+36>>2]|0}function hb(p,y){p=p|0,y=ke(y);var w=0;w=p+40|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function pe(p,y){p=p|0,y=ke(y);var w=0;w=p+44|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function dm(p,y){p=p|0,y=ke(y);var w=0;w=p+48|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function qf(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+52|0,X=p+56|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function yI(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+52|0,w=p+56|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=bl(y)|0,o[w>>2]=G?3:2,di(p))}function bI(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+52|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function J2(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function aE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=U?0:2,X=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function se(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+132+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function P(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function K(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=U?0:2,X=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function we(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+60+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function At(p,y){p=p|0,y=y|0;var w=0;w=p+60+(y<<3)+4|0,(o[w>>2]|0)!=3&&(I[p+60+(y<<3)>>2]=ke(ue),o[w>>2]=3,di(p))}function sr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function Yr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=U?0:2,X=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function Lr(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+204+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function fi(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+276+(y<<3)|0,y=p+276+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function $n(p,y){return p=p|0,y=y|0,ke(I[p+276+(y<<3)>>2])}function ra(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+348|0,X=p+352|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function kc(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+348|0,w=p+352|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=bl(y)|0,o[w>>2]=G?3:2,di(p))}function Dl(p){p=p|0;var y=0;y=p+352|0,(o[y>>2]|0)!=3&&(I[p+348>>2]=ke(ue),o[y>>2]=3,di(p))}function ca(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+348|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Bl(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+356|0,X=p+360|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function eA(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+356|0,w=p+360|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=bl(y)|0,o[w>>2]=G?3:2,di(p))}function BA(p){p=p|0;var y=0;y=p+360|0,(o[y>>2]|0)!=3&&(I[p+356>>2]=ke(ue),o[y>>2]=3,di(p))}function gI(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+356|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function gp(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+364|0,X=p+368|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function mb(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+364|0,X=p+368|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function Na(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+364|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Rd(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+372|0,X=p+376|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function e2(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+372|0,X=p+376|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function N_(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+372|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function DC(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+380|0,X=p+384|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function Jm(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+380|0,X=p+384|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function US(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+380|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Zg(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+388|0,X=p+392|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function Cb(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+388|0,X=p+392|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function pC(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+388|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function kC(p,y){p=p|0,y=ke(y);var w=0;w=p+396|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function U2(p){return p=p|0,ke(I[p+396>>2])}function j_(p){return p=p|0,ke(I[p+400>>2])}function xC(p){return p=p|0,ke(I[p+404>>2])}function GC(p){return p=p|0,ke(I[p+408>>2])}function th(p){return p=p|0,ke(I[p+412>>2])}function mh(p){return p=p|0,ke(I[p+416>>2])}function wA(p){return p=p|0,ke(I[p+420>>2])}function Nd(p,y){switch(p=p|0,y=y|0,sp(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+424+(y<<2)>>2])}function Mc(p,y){switch(p=p|0,y=y|0,sp(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+448+(y<<2)>>2])}function Pf(p,y){switch(p=p|0,y=y|0,sp(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+472+(y<<2)>>2])}function cE(p,y){p=p|0,y=y|0;var w=0,G=As;return w=o[p+4>>2]|0,(w|0)==(o[y+4>>2]|0)?w?(G=ke(I[p>>2]),p=ke(Je(ke(G-ke(I[y>>2]))))>2]=0,o[G+4>>2]=0,o[G+8>>2]=0,Kh(G|0,p|0,y|0,0),hd(p,3,(n[G+11>>0]|0)<0?o[G>>2]|0:G,w),Ww(G),B=w}function pm(p,y,w,G){p=ke(p),y=ke(y),w=w|0,G=G|0;var X=As;p=ke(p*y),X=ke(Bz(p,ke(1)));do if(tA(X,ke(0))|0)p=ke(p-X);else{if(p=ke(p-X),tA(X,ke(1))|0){p=ke(p+ke(1));break}if(w){p=ke(p+ke(1));break}G||(X>ke(.5)?X=ke(1):(G=tA(X,ke(.5))|0,X=ke(G?1:0)),p=ke(p+X))}while(!1);return ke(p/y)}function fm(p,y,w,G,X,U,le,Ge,Xe,St,ht,rr,an){p=p|0,y=ke(y),w=w|0,G=ke(G),X=X|0,U=ke(U),le=le|0,Ge=ke(Ge),Xe=ke(Xe),St=ke(St),ht=ke(ht),rr=ke(rr),an=an|0;var Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As;return Xe>2]),zi!=ke(0))?(Ds=ke(pm(y,zi,0,0)),Si=ke(pm(G,zi,0,0)),Un=ke(pm(U,zi,0,0)),zi=ke(pm(Ge,zi,0,0))):(Un=U,Ds=y,zi=Ge,Si=G),(X|0)==(p|0)?Ks=tA(Un,Ds)|0:Ks=0,(le|0)==(w|0)?an=tA(zi,Si)|0:an=0,!Ks&&(So=ke(y-ht),!(cs(p,So,Xe)|0))&&!(na(p,So,X,Xe)|0)?Ks=ko(p,So,X,U,Xe)|0:Ks=1,!an&&(ss=ke(G-rr),!(cs(w,ss,St)|0))&&!(na(w,ss,le,St)|0)?an=ko(w,ss,le,Ge,St)|0:an=1,an=Ks&an),an|0}function cs(p,y,w){return p=p|0,y=ke(y),w=ke(w),(p|0)==1?p=tA(y,w)|0:p=0,p|0}function na(p,y,w,G){return p=p|0,y=ke(y),w=w|0,G=ke(G),(p|0)==2&(w|0)==0?y>=G?p=1:p=tA(y,G)|0:p=0,p|0}function ko(p,y,w,G,X){return p=p|0,y=ke(y),w=w|0,G=ke(G),X=ke(X),(p|0)==2&(w|0)==2&G>y?X<=y?p=1:p=tA(y,X)|0:p=0,p|0}function ki(p,y,w,G,X,U,le,Ge,Xe,St,ht){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,St=St|0,ht=ht|0;var rr=0,an=0,Ks=0,zi=0,Un=As,Ds=As,Si=0,So=0,ss=0,pi=0,Il=0,gu=0,Al=0,Tc=0,wg=0,kg=0,Tg=0,im=As,R0=As,vE=As,oh=0,F_=0;Tg=B,B=B+160|0,Tc=Tg+152|0,Al=Tg+120|0,gu=Tg+104|0,ss=Tg+72|0,zi=Tg+56|0,Il=Tg+8|0,So=Tg,pi=(o[2279]|0)+1|0,o[2279]=pi,wg=p+984|0,n[wg>>0]|0&&(o[p+512>>2]|0)!=(o[2278]|0)?Si=4:(o[p+516>>2]|0)==(G|0)?kg=0:Si=4,(Si|0)==4&&(o[p+520>>2]=0,o[p+924>>2]=-1,o[p+928>>2]=-1,I[p+932>>2]=ke(-1),I[p+936>>2]=ke(-1),kg=1);e:do if(o[p+964>>2]|0)if(Un=ke(jl(p,2,le)),Ds=ke(jl(p,0,le)),rr=p+916|0,vE=ke(I[rr>>2]),R0=ke(I[p+920>>2]),im=ke(I[p+932>>2]),fm(X,y,U,w,o[p+924>>2]|0,vE,o[p+928>>2]|0,R0,im,ke(I[p+936>>2]),Un,Ds,ht)|0)Si=22;else if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,im=ke(I[rr>>2]),R0=ke(I[p+524+(an*24|0)+4>>2]),vE=ke(I[p+524+(an*24|0)+16>>2]),fm(X,y,U,w,o[p+524+(an*24|0)+8>>2]|0,im,o[p+524+(an*24|0)+12>>2]|0,R0,vE,ke(I[p+524+(an*24|0)+20>>2]),Un,Ds,ht)|0){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}else{if(Xe){if(rr=p+916|0,!(tA(ke(I[rr>>2]),y)|0)){Si=21;break}if(!(tA(ke(I[p+920>>2]),w)|0)){Si=21;break}if((o[p+924>>2]|0)!=(X|0)){Si=21;break}rr=(o[p+928>>2]|0)==(U|0)?rr:0,Si=22;break}if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,tA(ke(I[rr>>2]),y)|0&&tA(ke(I[p+524+(an*24|0)+4>>2]),w)|0&&(o[p+524+(an*24|0)+8>>2]|0)==(X|0)&&(o[p+524+(an*24|0)+12>>2]|0)==(U|0)){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}}while(!1);do if((Si|0)==21)n[11697]|0?(rr=0,Si=28):(rr=0,Si=31);else if((Si|0)==22){if(an=(n[11697]|0)!=0,!((rr|0)!=0&(kg^1)))if(an){Si=28;break}else{Si=31;break}zi=rr+16|0,o[p+908>>2]=o[zi>>2],Ks=rr+20|0,o[p+912>>2]=o[Ks>>2],(n[11698]|0)==0|an^1||(o[So>>2]=$f(pi)|0,o[So+4>>2]=pi,hd(p,4,2972,So),an=o[p+972>>2]|0,an|0&&LF[an&127](p),X=Wd(X,Xe)|0,U=Wd(U,Xe)|0,F_=+ke(I[zi>>2]),oh=+ke(I[Ks>>2]),o[Il>>2]=X,o[Il+4>>2]=U,C[Il+8>>3]=+y,C[Il+16>>3]=+w,C[Il+24>>3]=F_,C[Il+32>>3]=oh,o[Il+40>>2]=St,hd(p,4,2989,Il))}while(!1);return(Si|0)==28&&(an=$f(pi)|0,o[zi>>2]=an,o[zi+4>>2]=pi,o[zi+8>>2]=kg?3047:11699,hd(p,4,3038,zi),an=o[p+972>>2]|0,an|0&&LF[an&127](p),Il=Wd(X,Xe)|0,Si=Wd(U,Xe)|0,o[ss>>2]=Il,o[ss+4>>2]=Si,C[ss+8>>3]=+y,C[ss+16>>3]=+w,o[ss+24>>2]=St,hd(p,4,3049,ss),Si=31),(Si|0)==31&&(fC(p,y,w,G,X,U,le,Ge,Xe,ht),n[11697]|0&&(an=o[2279]|0,Il=$f(an)|0,o[gu>>2]=Il,o[gu+4>>2]=an,o[gu+8>>2]=kg?3047:11699,hd(p,4,3083,gu),an=o[p+972>>2]|0,an|0&&LF[an&127](p),Il=Wd(X,Xe)|0,gu=Wd(U,Xe)|0,oh=+ke(I[p+908>>2]),F_=+ke(I[p+912>>2]),o[Al>>2]=Il,o[Al+4>>2]=gu,C[Al+8>>3]=oh,C[Al+16>>3]=F_,o[Al+24>>2]=St,hd(p,4,3092,Al)),o[p+516>>2]=G,rr||(an=p+520|0,rr=o[an>>2]|0,(rr|0)==16&&(n[11697]|0&&hd(p,4,3124,Tc),o[an>>2]=0,rr=0),Xe?rr=p+916|0:(o[an>>2]=rr+1,rr=p+524+(rr*24|0)|0),I[rr>>2]=y,I[rr+4>>2]=w,o[rr+8>>2]=X,o[rr+12>>2]=U,o[rr+16>>2]=o[p+908>>2],o[rr+20>>2]=o[p+912>>2],rr=0)),Xe&&(o[p+416>>2]=o[p+908>>2],o[p+420>>2]=o[p+912>>2],n[p+985>>0]=1,n[wg>>0]=0),o[2279]=(o[2279]|0)+-1,o[p+512>>2]=o[2278],B=Tg,kg|(rr|0)==0|0}function jl(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(ar(p,y,w)),ke(G+ke(Jr(p,y,w)))}function hd(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=B,B=B+16|0,X=U,o[X>>2]=G,p?G=o[p+976>>2]|0:G=0,Ty(G,p,y,w,X),B=U}function $f(p){return p=p|0,(p>>>0>60?3201:3201+(60-p)|0)|0}function Wd(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;return X=B,B=B+32|0,w=X+12|0,G=X,o[w>>2]=o[254],o[w+4>>2]=o[255],o[w+8>>2]=o[256],o[G>>2]=o[257],o[G+4>>2]=o[258],o[G+8>>2]=o[259],(p|0)>2?p=11699:p=o[(y?G:w)+(p<<2)>>2]|0,B=X,p|0}function fC(p,y,w,G,X,U,le,Ge,Xe,St){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,St=St|0;var ht=0,rr=0,an=0,Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As,pi=As,Il=0,gu=0,Al=0,Tc=As,wg=As,kg=0,Tg=As,im=0,R0=0,vE=0,oh=0,F_=0,ik=0,Ow=0,bh=0,VF=0,Pw=0,eR=0,r9=0,n9=0,gS=0,_f=0,I2=0,tR=0,Cv=0,Ox=As,VB=As,_v=As,WB=As,BE=As,qm=0,EN=0,rR=0,$m=0,h2=0,mg=As,YI=As,ag=As,jo=As,Qg=As,Ll=As,m2=0,QI=As,WF=As,dI=As,jA=As,uA=As,OF=As,SN=0,nR=0,C1=As,N0=As,sk=0,po=0,Mw=0,PF=0,Qd=As,cf=0,wd=0,Ep=0,g_=0,Xd=0,Xg=0,yv=0,Du=As,M3=0,gy=0;yv=B,B=B+16|0,qm=yv+12|0,EN=yv+8|0,rR=yv+4|0,$m=yv,sp(p,(X|0)==0|(bl(y)|0)^1,3326),sp(p,(U|0)==0|(bl(w)|0)^1,3406),wd=Qo(p,G)|0,o[p+496>>2]=wd,Xd=Bg(2,wd)|0,Xg=Bg(0,wd)|0,I[p+440>>2]=ke(ar(p,Xd,le)),I[p+444>>2]=ke(Jr(p,Xd,le)),I[p+428>>2]=ke(ar(p,Xg,le)),I[p+436>>2]=ke(Jr(p,Xg,le)),I[p+464>>2]=ke(Dg(p,Xd)),I[p+468>>2]=ke(Df(p,Xd)),I[p+452>>2]=ke(Dg(p,Xg)),I[p+460>>2]=ke(Df(p,Xg)),I[p+488>>2]=ke(AI(p,Xd,le)),I[p+492>>2]=ke(kh(p,Xd,le)),I[p+476>>2]=ke(AI(p,Xg,le)),I[p+484>>2]=ke(kh(p,Xg,le));do if(o[p+964>>2]|0)lE(p,y,w,X,U,le,Ge);else{if(Ep=p+948|0,g_=(o[p+952>>2]|0)-(o[Ep>>2]|0)>>2,!g_){xT(p,y,w,X,U,le,Ge);break}if(!Xe&&uB(p,y,w,X,U,le,Ge)|0)break;Dr(p),I2=p+508|0,n[I2>>0]=0,Xd=Bg(o[p+4>>2]|0,wd)|0,Xg=GT(Xd,wd)|0,cf=Gn(Xd)|0,tR=o[p+8>>2]|0,po=p+28|0,Cv=(o[po>>2]|0)!=0,uA=cf?le:Ge,C1=cf?Ge:le,Ox=ke(Ry(p,Xd,le)),VB=ke($E(p,Xd,le)),zi=ke(Ry(p,Xg,le)),OF=ke(q_(p,Xd,le)),N0=ke(q_(p,Xg,le)),Al=cf?X:U,sk=cf?U:X,Qd=cf?OF:N0,So=cf?N0:OF,jA=ke(jl(p,2,le)),Si=ke(jl(p,0,le)),Un=ke(ke(cd(p+364|0,le))-Qd),Ds=ke(ke(cd(p+380|0,le))-Qd),ss=ke(ke(cd(p+372|0,Ge))-So),pi=ke(ke(cd(p+388|0,Ge))-So),_v=cf?Un:ss,WB=cf?Ds:pi,jA=ke(y-jA),y=ke(jA-Qd),bl(y)|0?Qd=y:Qd=ke(zs(ke(TU(y,Ds)),Un)),WF=ke(w-Si),y=ke(WF-So),bl(y)|0?dI=y:dI=ke(zs(ke(TU(y,pi)),ss)),Un=cf?Qd:dI,QI=cf?dI:Qd;e:do if((Al|0)==1)for(G=0,rr=0;;){if(ht=Oa(p,rr)|0,!G)ke(nf(ht))>ke(0)&&ke(Ny(ht))>ke(0)?G=ht:G=0;else if(FT(ht)|0){Ks=0;break e}if(rr=rr+1|0,rr>>>0>=g_>>>0){Ks=G;break}}else Ks=0;while(!1);Il=Ks+500|0,gu=Ks+504|0,G=0,ht=0,y=ke(0),an=0;do{if(rr=o[(o[Ep>>2]|0)+(an<<2)>>2]|0,(o[rr+36>>2]|0)==1)qS(rr),n[rr+985>>0]=1,n[rr+984>>0]=0;else{wy(rr),Xe&&zE(rr,Qo(rr,wd)|0,Un,QI,Qd);do if((o[rr+24>>2]|0)!=1)if((rr|0)==(Ks|0)){o[Il>>2]=o[2278],I[gu>>2]=ke(0);break}else{rh(p,rr,Qd,X,dI,Qd,dI,U,wd,St);break}else ht|0&&(o[ht+960>>2]=rr),o[rr+960>>2]=0,ht=rr,G=G|0?G:rr;while(!1);Ll=ke(I[rr+504>>2]),y=ke(y+ke(Ll+ke(jl(rr,Xd,Qd))))}an=an+1|0}while((an|0)!=(g_|0));for(vE=y>Un,m2=Cv&((Al|0)==2&vE)?1:Al,im=(sk|0)==1,F_=im&(Xe^1),ik=(m2|0)==1,Ow=(m2|0)==2,bh=976+(Xd<<2)|0,VF=(sk|2|0)==2,gS=im&(Cv^1),Pw=1040+(Xg<<2)|0,eR=1040+(Xd<<2)|0,r9=976+(Xg<<2)|0,n9=(sk|0)!=1,vE=Cv&((Al|0)!=0&vE),R0=p+976|0,im=im^1,y=Un,kg=0,oh=0,Ll=ke(0),BE=ke(0);;){e:do if(kg>>>0>>0)for(gu=o[Ep>>2]|0,an=0,pi=ke(0),ss=ke(0),Ds=ke(0),Un=ke(0),rr=0,ht=0,Ks=kg;;){if(Il=o[gu+(Ks<<2)>>2]|0,(o[Il+36>>2]|0)!=1&&(o[Il+940>>2]=oh,(o[Il+24>>2]|0)!=1)){if(Si=ke(jl(Il,Xd,Qd)),_f=o[bh>>2]|0,w=ke(cd(Il+380+(_f<<3)|0,uA)),So=ke(I[Il+504>>2]),w=ke(TU(w,So)),w=ke(zs(ke(cd(Il+364+(_f<<3)|0,uA)),w)),Cv&(an|0)!=0&ke(Si+ke(ss+w))>y){U=an,Si=pi,Al=Ks;break e}Si=ke(Si+w),w=ke(ss+Si),Si=ke(pi+Si),FT(Il)|0&&(Ds=ke(Ds+ke(nf(Il))),Un=ke(Un-ke(So*ke(Ny(Il))))),ht|0&&(o[ht+960>>2]=Il),o[Il+960>>2]=0,an=an+1|0,ht=Il,rr=rr|0?rr:Il}else Si=pi,w=ss;if(Ks=Ks+1|0,Ks>>>0>>0)pi=Si,ss=w;else{U=an,Al=Ks;break}}else U=0,Si=ke(0),Ds=ke(0),Un=ke(0),rr=0,Al=kg;while(!1);_f=Ds>ke(0)&Dske(0)&UnWB&((bl(WB)|0)^1))y=WB,_f=51;else if(n[(o[R0>>2]|0)+3>>0]|0)_f=51;else{if(Tc!=ke(0)&&ke(nf(p))!=ke(0)){_f=53;break}y=Si,_f=53}while(!1);if((_f|0)==51&&(_f=0,bl(y)|0?_f=53:(wg=ke(y-Si),Tg=y)),(_f|0)==53&&(_f=0,Si>2]|0,Ks=wgke(0),ss=ke(wg/Tc),Ds=ke(0),Si=ke(0),y=ke(0),ht=rr;do w=ke(cd(ht+380+(an<<3)|0,uA)),Un=ke(cd(ht+364+(an<<3)|0,uA)),Un=ke(TU(w,ke(zs(Un,ke(I[ht+504>>2]))))),Ks?(w=ke(Un*ke(Ny(ht))),w!=ke(-0)&&(Du=ke(Un-ke(So*w)),mg=ke(TA(ht,Xd,Du,Tg,Qd)),Du!=mg)&&(Ds=ke(Ds-ke(mg-Un)),y=ke(y+w))):Il&&(YI=ke(nf(ht)),YI!=ke(0))&&(Du=ke(Un+ke(ss*YI)),ag=ke(TA(ht,Xd,Du,Tg,Qd)),Du!=ag)&&(Ds=ke(Ds-ke(ag-Un)),Si=ke(Si-YI)),ht=o[ht+960>>2]|0;while(ht|0);if(y=ke(pi+y),Un=ke(wg+Ds),h2)y=ke(0);else{So=ke(Tc+Si),Ks=o[bh>>2]|0,Il=Unke(0),So=ke(Un/So),y=ke(0);do{Du=ke(cd(rr+380+(Ks<<3)|0,uA)),Ds=ke(cd(rr+364+(Ks<<3)|0,uA)),Ds=ke(TU(Du,ke(zs(Ds,ke(I[rr+504>>2]))))),Il?(Du=ke(Ds*ke(Ny(rr))),Un=ke(-Du),Du!=ke(-0)?(Du=ke(ss*Un),Un=ke(TA(rr,Xd,ke(Ds+(gu?Un:Du)),Tg,Qd))):Un=Ds):an&&(jo=ke(nf(rr)),jo!=ke(0))?Un=ke(TA(rr,Xd,ke(Ds+ke(So*jo)),Tg,Qd)):Un=Ds,y=ke(y-ke(Un-Ds)),Si=ke(jl(rr,Xd,Qd)),w=ke(jl(rr,Xg,Qd)),Un=ke(Un+Si),I[EN>>2]=Un,o[$m>>2]=1,Ds=ke(I[rr+396>>2]);e:do if(bl(Ds)|0){ht=bl(QI)|0;do if(!ht){if(vE|(z_(rr,Xg,QI)|0|im)||(td(p,rr)|0)!=4||(o[(Km(rr,Xg)|0)+4>>2]|0)==3||(o[(eI(rr,Xg)|0)+4>>2]|0)==3)break;I[qm>>2]=QI,o[rR>>2]=1;break e}while(!1);if(z_(rr,Xg,QI)|0){ht=o[rr+992+(o[r9>>2]<<2)>>2]|0,Du=ke(w+ke(cd(ht,QI))),I[qm>>2]=Du,ht=n9&(o[ht+4>>2]|0)==2,o[rR>>2]=((bl(Du)|0|ht)^1)&1;break}else{I[qm>>2]=QI,o[rR>>2]=ht?0:2;break}}else Du=ke(Un-Si),Tc=ke(Du/Ds),Du=ke(Ds*Du),o[rR>>2]=1,I[qm>>2]=ke(w+(cf?Tc:Du));while(!1);_b(rr,Xd,Tg,Qd,$m,EN),_b(rr,Xg,QI,Qd,rR,qm);do if(!(z_(rr,Xg,QI)|0)&&(td(p,rr)|0)==4){if((o[(Km(rr,Xg)|0)+4>>2]|0)==3){ht=0;break}ht=(o[(eI(rr,Xg)|0)+4>>2]|0)!=3}else ht=0;while(!1);Du=ke(I[EN>>2]),Tc=ke(I[qm>>2]),M3=o[$m>>2]|0,gy=o[rR>>2]|0,ki(rr,cf?Du:Tc,cf?Tc:Du,wd,cf?M3:gy,cf?gy:M3,Qd,dI,Xe&(ht^1),3488,St)|0,n[I2>>0]=n[I2>>0]|n[rr+508>>0],rr=o[rr+960>>2]|0}while(rr|0)}}else y=ke(0);if(y=ke(wg+y),gy=y>0]=gy|l[I2>>0],Ow&y>ke(0)?(ht=o[bh>>2]|0,o[p+364+(ht<<3)+4>>2]|0&&(Qg=ke(cd(p+364+(ht<<3)|0,uA)),Qg>=ke(0))?Un=ke(zs(ke(0),ke(Qg-ke(Tg-y)))):Un=ke(0)):Un=y,Il=kg>>>0>>0,Il){Ks=o[Ep>>2]|0,an=kg,ht=0;do rr=o[Ks+(an<<2)>>2]|0,o[rr+24>>2]|0||(ht=((o[(Km(rr,Xd)|0)+4>>2]|0)==3&1)+ht|0,ht=ht+((o[(eI(rr,Xd)|0)+4>>2]|0)==3&1)|0),an=an+1|0;while((an|0)!=(Al|0));ht?(Si=ke(0),w=ke(0)):_f=101}else _f=101;e:do if((_f|0)==101)switch(_f=0,tR|0){case 1:{ht=0,Si=ke(Un*ke(.5)),w=ke(0);break e}case 2:{ht=0,Si=Un,w=ke(0);break e}case 3:{if(U>>>0<=1){ht=0,Si=ke(0),w=ke(0);break e}w=ke((U+-1|0)>>>0),ht=0,Si=ke(0),w=ke(ke(zs(Un,ke(0)))/w);break e}case 5:{w=ke(Un/ke((U+1|0)>>>0)),ht=0,Si=w;break e}case 4:{w=ke(Un/ke(U>>>0)),ht=0,Si=ke(w*ke(.5));break e}default:{ht=0,Si=ke(0),w=ke(0);break e}}while(!1);if(y=ke(Ox+Si),Il){Ds=ke(Un/ke(ht|0)),an=o[Ep>>2]|0,rr=kg,Un=ke(0);do{ht=o[an+(rr<<2)>>2]|0;e:do if((o[ht+36>>2]|0)!=1){switch(o[ht+24>>2]|0){case 1:{if(D_(ht,Xd)|0){if(!Xe)break e;Du=ke(yb(ht,Xd,Tg)),Du=ke(Du+ke(Dg(p,Xd))),Du=ke(Du+ke(ar(ht,Xd,Qd))),I[ht+400+(o[eR>>2]<<2)>>2]=Du;break e}break}case 0:if(gy=(o[(Km(ht,Xd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=gy?Du:y,Xe&&(gy=ht+400+(o[eR>>2]<<2)|0,I[gy>>2]=ke(y+ke(I[gy>>2]))),gy=(o[(eI(ht,Xd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=gy?Du:y,F_){Du=ke(w+ke(jl(ht,Xd,Qd))),Un=QI,y=ke(y+ke(Du+ke(I[ht+504>>2])));break e}else{y=ke(y+ke(w+ke(Dy(ht,Xd,Qd)))),Un=ke(zs(Un,ke(Dy(ht,Xg,Qd))));break e}default:}Xe&&(Du=ke(Si+ke(Dg(p,Xd))),gy=ht+400+(o[eR>>2]<<2)|0,I[gy>>2]=ke(Du+ke(I[gy>>2])))}while(!1);rr=rr+1|0}while((rr|0)!=(Al|0))}else Un=ke(0);if(w=ke(VB+y),VF?Si=ke(ke(TA(p,Xg,ke(N0+Un),C1,le))-N0):Si=QI,Ds=ke(ke(TA(p,Xg,ke(N0+(gS?QI:Un)),C1,le))-N0),Il&Xe){rr=kg;do{an=o[(o[Ep>>2]|0)+(rr<<2)>>2]|0;do if((o[an+36>>2]|0)!=1){if((o[an+24>>2]|0)==1){if(D_(an,Xg)|0){if(Du=ke(yb(an,Xg,QI)),Du=ke(Du+ke(Dg(p,Xg))),Du=ke(Du+ke(ar(an,Xg,Qd))),ht=o[Pw>>2]|0,I[an+400+(ht<<2)>>2]=Du,!(bl(Du)|0))break}else ht=o[Pw>>2]|0;Du=ke(Dg(p,Xg)),I[an+400+(ht<<2)>>2]=ke(Du+ke(ar(an,Xg,Qd)));break}ht=td(p,an)|0;do if((ht|0)==4){if((o[(Km(an,Xg)|0)+4>>2]|0)==3){_f=139;break}if((o[(eI(an,Xg)|0)+4>>2]|0)==3){_f=139;break}if(z_(an,Xg,QI)|0){y=zi;break}M3=o[an+908+(o[bh>>2]<<2)>>2]|0,o[qm>>2]=M3,y=ke(I[an+396>>2]),gy=bl(y)|0,Un=(o[E>>2]=M3,ke(I[E>>2])),gy?y=Ds:(wg=ke(jl(an,Xg,Qd)),Du=ke(Un/y),y=ke(y*Un),y=ke(wg+(cf?Du:y))),I[EN>>2]=y,I[qm>>2]=ke(ke(jl(an,Xd,Qd))+Un),o[rR>>2]=1,o[$m>>2]=1,_b(an,Xd,Tg,Qd,rR,qm),_b(an,Xg,QI,Qd,$m,EN),y=ke(I[qm>>2]),wg=ke(I[EN>>2]),Du=cf?y:wg,y=cf?wg:y,gy=((bl(Du)|0)^1)&1,ki(an,Du,y,wd,gy,((bl(y)|0)^1)&1,Qd,dI,1,3493,St)|0,y=zi}else _f=139;while(!1);e:do if((_f|0)==139){_f=0,y=ke(Si-ke(Dy(an,Xg,Qd)));do if((o[(Km(an,Xg)|0)+4>>2]|0)==3){if((o[(eI(an,Xg)|0)+4>>2]|0)!=3)break;y=ke(zi+ke(zs(ke(0),ke(y*ke(.5)))));break e}while(!1);if((o[(eI(an,Xg)|0)+4>>2]|0)==3){y=zi;break}if((o[(Km(an,Xg)|0)+4>>2]|0)==3){y=ke(zi+ke(zs(ke(0),y)));break}switch(ht|0){case 1:{y=zi;break e}case 2:{y=ke(zi+ke(y*ke(.5)));break e}default:{y=ke(zi+y);break e}}}while(!1);Du=ke(Ll+y),gy=an+400+(o[Pw>>2]<<2)|0,I[gy>>2]=ke(Du+ke(I[gy>>2]))}while(!1);rr=rr+1|0}while((rr|0)!=(Al|0))}if(Ll=ke(Ll+Ds),BE=ke(zs(BE,w)),U=oh+1|0,Al>>>0>=g_>>>0)break;y=Tg,kg=Al,oh=U}do if(Xe){if(ht=U>>>0>1,!ht&&!($S(p)|0))break;if(!(bl(QI)|0)){y=ke(QI-Ll);e:do switch(o[p+12>>2]|0){case 3:{zi=ke(zi+y),ss=ke(0);break}case 2:{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break}case 4:{QI>Ll?ss=ke(y/ke(U>>>0)):ss=ke(0);break}case 7:if(QI>Ll){zi=ke(zi+ke(y/ke(U<<1>>>0))),ss=ke(y/ke(U>>>0)),ss=ht?ss:ke(0);break e}else{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break e}case 6:{ss=ke(y/ke(oh>>>0)),ss=QI>Ll&ht?ss:ke(0);break}default:ss=ke(0)}while(!1);if(U|0)for(Il=1040+(Xg<<2)|0,gu=976+(Xg<<2)|0,Ks=0,rr=0;;){e:do if(rr>>>0>>0)for(Un=ke(0),Ds=ke(0),y=ke(0),an=rr;;){ht=o[(o[Ep>>2]|0)+(an<<2)>>2]|0;do if((o[ht+36>>2]|0)!=1&&!(o[ht+24>>2]|0)){if((o[ht+940>>2]|0)!=(Ks|0))break e;if(bb(ht,Xg)|0&&(Du=ke(I[ht+908+(o[gu>>2]<<2)>>2]),y=ke(zs(y,ke(Du+ke(jl(ht,Xg,Qd)))))),(td(p,ht)|0)!=5)break;Qg=ke($_(ht)),Qg=ke(Qg+ke(ar(ht,0,Qd))),Du=ke(I[ht+912>>2]),Du=ke(ke(Du+ke(jl(ht,0,Qd)))-Qg),Qg=ke(zs(Ds,Qg)),Du=ke(zs(Un,Du)),Un=Du,Ds=Qg,y=ke(zs(y,ke(Qg+Du)))}while(!1);if(ht=an+1|0,ht>>>0>>0)an=ht;else{an=ht;break}}else Ds=ke(0),y=ke(0),an=rr;while(!1);if(So=ke(ss+y),w=zi,zi=ke(zi+So),rr>>>0>>0){Si=ke(w+Ds),ht=rr;do{rr=o[(o[Ep>>2]|0)+(ht<<2)>>2]|0;e:do if((o[rr+36>>2]|0)!=1&&!(o[rr+24>>2]|0))switch(td(p,rr)|0){case 1:{Du=ke(w+ke(ar(rr,Xg,Qd))),I[rr+400+(o[Il>>2]<<2)>>2]=Du;break e}case 3:{Du=ke(ke(zi-ke(Jr(rr,Xg,Qd)))-ke(I[rr+908+(o[gu>>2]<<2)>>2])),I[rr+400+(o[Il>>2]<<2)>>2]=Du;break e}case 2:{Du=ke(w+ke(ke(So-ke(I[rr+908+(o[gu>>2]<<2)>>2]))*ke(.5))),I[rr+400+(o[Il>>2]<<2)>>2]=Du;break e}case 4:{if(Du=ke(w+ke(ar(rr,Xg,Qd))),I[rr+400+(o[Il>>2]<<2)>>2]=Du,z_(rr,Xg,QI)|0||(cf?(Un=ke(I[rr+908>>2]),y=ke(Un+ke(jl(rr,Xd,Qd))),Ds=So):(Ds=ke(I[rr+912>>2]),Ds=ke(Ds+ke(jl(rr,Xg,Qd))),y=So,Un=ke(I[rr+908>>2])),tA(y,Un)|0&&tA(Ds,ke(I[rr+912>>2]))|0))break e;ki(rr,y,Ds,wd,1,1,Qd,dI,1,3501,St)|0;break e}case 5:{I[rr+404>>2]=ke(ke(Si-ke($_(rr)))+ke(yb(rr,0,QI)));break e}default:break e}while(!1);ht=ht+1|0}while((ht|0)!=(an|0))}if(Ks=Ks+1|0,(Ks|0)==(U|0))break;rr=an}}}while(!1);if(I[p+908>>2]=ke(TA(p,2,jA,le,le)),I[p+912>>2]=ke(TA(p,0,WF,Ge,le)),m2|0&&(SN=o[p+32>>2]|0,nR=(m2|0)==2,!(nR&(SN|0)!=2))?nR&(SN|0)==2&&(y=ke(OF+Tg),y=ke(zs(ke(TU(y,ke(e1(p,Xd,BE,uA)))),OF)),_f=198):(y=ke(TA(p,Xd,BE,uA,le)),_f=198),(_f|0)==198&&(I[p+908+(o[976+(Xd<<2)>>2]<<2)>>2]=y),sk|0&&(Mw=o[p+32>>2]|0,PF=(sk|0)==2,!(PF&(Mw|0)!=2))?PF&(Mw|0)==2&&(y=ke(N0+QI),y=ke(zs(ke(TU(y,ke(e1(p,Xg,ke(N0+Ll),C1)))),N0)),_f=204):(y=ke(TA(p,Xg,ke(N0+Ll),C1,le)),_f=204),(_f|0)==204&&(I[p+908+(o[976+(Xg<<2)>>2]<<2)>>2]=y),Xe){if((o[po>>2]|0)==2){rr=976+(Xg<<2)|0,an=1040+(Xg<<2)|0,ht=0;do Ks=Oa(p,ht)|0,o[Ks+24>>2]|0||(M3=o[rr>>2]|0,Du=ke(I[p+908+(M3<<2)>>2]),gy=Ks+400+(o[an>>2]<<2)|0,Du=ke(Du-ke(I[gy>>2])),I[gy>>2]=ke(Du-ke(I[Ks+908+(M3<<2)>>2]))),ht=ht+1|0;while((ht|0)!=(g_|0))}if(G|0){ht=cf?m2:X;do gB(p,G,Qd,ht,dI,wd,St),G=o[G+960>>2]|0;while(G|0)}if(ht=(Xd|2|0)==3,rr=(Xg|2|0)==3,ht|rr){G=0;do an=o[(o[Ep>>2]|0)+(G<<2)>>2]|0,(o[an+36>>2]|0)!=1&&(ht&&ZT(p,an,Xd),rr&&ZT(p,an,Xg)),G=G+1|0;while((G|0)!=(g_|0))}}}while(!1);B=yv}function jE(p,y){p=p|0,y=ke(y);var w=0;YA(p,y>=ke(0),3147),w=y==ke(0),I[p+4>>2]=w?ke(0):y}function Um(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=G|0;var X=As,U=As,le=0,Ge=0,Xe=0;o[2278]=(o[2278]|0)+1,wy(p),z_(p,2,y)|0?(X=ke(cd(o[p+992>>2]|0,y)),Xe=1,X=ke(X+ke(jl(p,2,y)))):(X=ke(cd(p+380|0,y)),X>=ke(0)?Xe=2:(Xe=((bl(y)|0)^1)&1,X=y)),z_(p,0,w)|0?(U=ke(cd(o[p+996>>2]|0,w)),Ge=1,U=ke(U+ke(jl(p,0,y)))):(U=ke(cd(p+388|0,w)),U>=ke(0)?Ge=2:(Ge=((bl(w)|0)^1)&1,U=w)),le=p+976|0,ki(p,X,U,G,Xe,Ge,y,w,1,3189,o[le>>2]|0)|0&&(zE(p,o[p+496>>2]|0,y,w,y),qE(p,ke(I[(o[le>>2]|0)+4>>2]),ke(0),ke(0)),n[11696]|0)&&KS(p,7)}function wy(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;Ge=B,B=B+32|0,le=Ge+24|0,U=Ge+16|0,G=Ge+8|0,X=Ge,w=0;do y=p+380+(w<<3)|0,o[p+380+(w<<3)+4>>2]|0&&(Xe=y,St=o[Xe+4>>2]|0,ht=G,o[ht>>2]=o[Xe>>2],o[ht+4>>2]=St,ht=p+364+(w<<3)|0,St=o[ht+4>>2]|0,Xe=X,o[Xe>>2]=o[ht>>2],o[Xe+4>>2]=St,o[U>>2]=o[G>>2],o[U+4>>2]=o[G+4>>2],o[le>>2]=o[X>>2],o[le+4>>2]=o[X+4>>2],cE(U,le)|0)||(y=p+348+(w<<3)|0),o[p+992+(w<<2)>>2]=y,w=w+1|0;while((w|0)!=2);B=Ge}function z_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0;switch(p=o[p+992+(o[976+(y<<2)>>2]<<2)>>2]|0,o[p+4>>2]|0){case 0:case 3:{p=0;break}case 1:{ke(I[p>>2])>2])>2]|0){case 2:{y=ke(ke(ke(I[p>>2])*y)/ke(100));break}case 1:{y=ke(I[p>>2]);break}default:y=ke(ue)}return ke(y)}function zE(p,y,w,G,X){p=p|0,y=y|0,w=ke(w),G=ke(G),X=ke(X);var U=0,le=As;y=o[p+944>>2]|0?y:1,U=Bg(o[p+4>>2]|0,y)|0,y=GT(U,y)|0,w=ke(j2(p,U,w)),G=ke(j2(p,y,G)),le=ke(w+ke(ar(p,U,X))),I[p+400+(o[1040+(U<<2)>>2]<<2)>>2]=le,w=ke(w+ke(Jr(p,U,X))),I[p+400+(o[1e3+(U<<2)>>2]<<2)>>2]=w,w=ke(G+ke(ar(p,y,X))),I[p+400+(o[1040+(y<<2)>>2]<<2)>>2]=w,X=ke(G+ke(Jr(p,y,X))),I[p+400+(o[1e3+(y<<2)>>2]<<2)>>2]=X}function qE(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=ke(G);var X=0,U=0,le=As,Ge=As,Xe=0,St=0,ht=As,rr=0,an=As,Ks=As,zi=As,Un=As;if(y!=ke(0)&&(X=p+400|0,Un=ke(I[X>>2]),U=p+404|0,zi=ke(I[U>>2]),rr=p+416|0,Ks=ke(I[rr>>2]),St=p+420|0,le=ke(I[St>>2]),an=ke(Un+w),ht=ke(zi+G),G=ke(an+Ks),Ge=ke(ht+le),Xe=(o[p+988>>2]|0)==1,I[X>>2]=ke(pm(Un,y,0,Xe)),I[U>>2]=ke(pm(zi,y,0,Xe)),w=ke(Bz(ke(Ks*y),ke(1))),tA(w,ke(0))|0?U=0:U=(tA(w,ke(1))|0)^1,w=ke(Bz(ke(le*y),ke(1))),tA(w,ke(0))|0?X=0:X=(tA(w,ke(1))|0)^1,Un=ke(pm(G,y,Xe&U,Xe&(U^1))),I[rr>>2]=ke(Un-ke(pm(an,y,0,Xe))),Un=ke(pm(Ge,y,Xe&X,Xe&(X^1))),I[St>>2]=ke(Un-ke(pm(ht,y,0,Xe))),U=(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2,U|0)){X=0;do qE(Oa(p,X)|0,y,an,ht),X=X+1|0;while((X|0)!=(U|0))}}function Xp(p,y,w,G,X){switch(p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,w|0){case 5:case 0:{p=pde(o[489]|0,G,X)|0;break}default:p=HWt(G,X)|0}return p|0}function zS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;X=B,B=B+16|0,U=X,o[U>>2]=G,Ty(p,0,y,w,U),B=X}function Ty(p,y,w,G,X){if(p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,p=p|0?p:956,yde[o[p+8>>2]&1](p,y,w,G,X)|0,(w|0)==5)Ko();else return}function ty(p,y,w){p=p|0,y=y|0,w=w|0,n[p+y>>0]=w&1}function _w(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(K2(p,G),xc(p,o[y>>2]|0,o[w>>2]|0,G))}function K2(p,y){p=p|0,y=y|0;var w=0;if((gt(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=ju(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function xc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Yd(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function gt(p){return p=p|0,1073741823}function ar(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+96>>2]|0?p=p+92|0:p=bg(p+60|0,o[1040+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Jr(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+104>>2]|0?p=p+100|0:p=bg(p+60|0,o[1e3+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Gn(p){return p=p|0,(p|1|0)==3|0}function Ts(p,y){return p=p|0,y=ke(y),(o[p+4>>2]|0)==3?y=ke(0):y=ke(cd(p,y)),ke(y)}function Qo(p,y){return p=p|0,y=y|0,p=o[p>>2]|0,(p|0?p:(y|0)>1?y:1)|0}function Bg(p,y){p=p|0,y=y|0;var w=0;e:do if((y|0)==2){switch(p|0){case 2:{p=3;break e}case 3:break;default:{w=4;break e}}p=2}else w=4;while(!1);return p|0}function Dg(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+312>>2]|0&&(w=ke(I[p+308>>2]),w>=ke(0))||(w=ke(zs(ke(I[(bg(p+276|0,o[1040+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function Df(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+320>>2]|0&&(w=ke(I[p+316>>2]),w>=ke(0))||(w=ke(zs(ke(I[(bg(p+276|0,o[1e3+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function AI(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+240>>2]|0&&(G=ke(cd(p+236|0,w)),G>=ke(0))||(G=ke(zs(ke(cd(bg(p+204|0,o[1040+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function kh(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+248>>2]|0&&(G=ke(cd(p+244|0,w)),G>=ke(0))||(G=ke(zs(ke(cd(bg(p+204|0,o[1e3+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function lE(p,y,w,G,X,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,St=As,ht=As,rr=As,an=As,Ks=0,zi=0,Un=0;Un=B,B=B+16|0,Ks=Un,zi=p+964|0,sp(p,(o[zi>>2]|0)!=0,3519),Ge=ke(q_(p,2,y)),Xe=ke(q_(p,0,y)),St=ke(jl(p,2,y)),ht=ke(jl(p,0,y)),bl(y)|0?rr=y:rr=ke(zs(ke(0),ke(ke(y-St)-Ge))),bl(w)|0?an=w:an=ke(zs(ke(0),ke(ke(w-ht)-Xe))),(G|0)==1&(X|0)==1?(I[p+908>>2]=ke(TA(p,2,ke(y-St),U,U)),y=ke(TA(p,0,ke(w-ht),le,U))):(xz[o[zi>>2]&1](Ks,p,rr,G,an,X),rr=ke(Ge+ke(I[Ks>>2])),an=ke(y-St),I[p+908>>2]=ke(TA(p,2,(G|2|0)==2?rr:an,U,U)),an=ke(Xe+ke(I[Ks+4>>2])),y=ke(w-ht),y=ke(TA(p,0,(X|2|0)==2?an:y,le,U))),I[p+912>>2]=y,B=Un}function xT(p,y,w,G,X,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,St=As,ht=As;St=ke(q_(p,2,U)),Ge=ke(q_(p,0,U)),ht=ke(jl(p,2,U)),Xe=ke(jl(p,0,U)),y=ke(y-ht),I[p+908>>2]=ke(TA(p,2,(G|2|0)==2?St:y,U,U)),w=ke(w-Xe),I[p+912>>2]=ke(TA(p,0,(X|2|0)==2?Ge:w,le,U))}function uB(p,y,w,G,X,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=ke(U),le=ke(le);var Ge=0,Xe=As,St=As;return Ge=(G|0)==2,!(y<=ke(0)&Ge)&&!(w<=ke(0)&(X|0)==2)&&!((G|0)==1&(X|0)==1)?p=0:(Xe=ke(jl(p,0,U)),St=ke(jl(p,2,U)),Ge=y>2]=ke(TA(p,2,Ge?ke(0):y,U,U)),y=ke(w-Xe),Ge=w>2]=ke(TA(p,0,Ge?ke(0):y,le,U)),p=1),p|0}function GT(p,y){return p=p|0,y=y|0,AB(p)|0?p=Bg(2,y)|0:p=0,p|0}function Ry(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(AI(p,y,w)),ke(w+ke(Dg(p,y)))}function $E(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(kh(p,y,w)),ke(w+ke(Df(p,y)))}function q_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(Ry(p,y,w)),ke(G+ke($E(p,y,w)))}function FT(p){return p=p|0,o[p+24>>2]|0?p=0:ke(nf(p))!=ke(0)?p=1:p=ke(Ny(p))!=ke(0),p|0}function nf(p){p=p|0;var y=As;if(o[p+944>>2]|0){if(y=ke(I[p+44>>2]),bl(y)|0)return y=ke(I[p+40>>2]),p=y>ke(0)&((bl(y)|0)^1),ke(p?y:ke(0))}else y=ke(0);return ke(y)}function Ny(p){p=p|0;var y=As,w=0,G=As;do if(o[p+944>>2]|0){if(y=ke(I[p+48>>2]),bl(y)|0){if(w=n[(o[p+976>>2]|0)+2>>0]|0,!(w<<24>>24)&&(G=ke(I[p+40>>2]),G>24?ke(1):ke(0)}}else y=ke(0);while(!1);return ke(y)}function qS(p){p=p|0;var y=0,w=0;if(Rz(p+400|0,0,540)|0,n[p+985>>0]=1,Dr(p),w=Fs(p)|0,w|0){y=p+948|0,p=0;do qS(o[(o[y>>2]|0)+(p<<2)>>2]|0),p=p+1|0;while((p|0)!=(w|0))}}function rh(p,y,w,G,X,U,le,Ge,Xe,St){p=p|0,y=y|0,w=ke(w),G=G|0,X=ke(X),U=ke(U),le=ke(le),Ge=Ge|0,Xe=Xe|0,St=St|0;var ht=0,rr=As,an=0,Ks=0,zi=As,Un=As,Ds=0,Si=As,So=0,ss=As,pi=0,Il=0,gu=0,Al=0,Tc=0,wg=0,kg=0,Tg=0,im=0,R0=0;im=B,B=B+16|0,gu=im+12|0,Al=im+8|0,Tc=im+4|0,wg=im,Tg=Bg(o[p+4>>2]|0,Xe)|0,pi=Gn(Tg)|0,rr=ke(cd(ev(y)|0,pi?U:le)),Il=z_(y,2,U)|0,kg=z_(y,0,le)|0;do if(!(bl(rr)|0)&&!(bl(pi?w:X)|0)){if(ht=y+504|0,!(bl(ke(I[ht>>2]))|0)&&(!(zR(o[y+976>>2]|0,0)|0)||(o[y+500>>2]|0)==(o[2278]|0)))break;I[ht>>2]=ke(zs(rr,ke(q_(y,Tg,U))))}else an=7;while(!1);do if((an|0)==7){if(So=pi^1,!(So|Il^1)){le=ke(cd(o[y+992>>2]|0,U)),I[y+504>>2]=ke(zs(le,ke(q_(y,2,U))));break}if(!(pi|kg^1)){le=ke(cd(o[y+996>>2]|0,le)),I[y+504>>2]=ke(zs(le,ke(q_(y,0,U))));break}I[gu>>2]=ke(ue),I[Al>>2]=ke(ue),o[Tc>>2]=0,o[wg>>2]=0,Si=ke(jl(y,2,U)),ss=ke(jl(y,0,U)),Il?(zi=ke(Si+ke(cd(o[y+992>>2]|0,U))),I[gu>>2]=zi,o[Tc>>2]=1,Ks=1):(Ks=0,zi=ke(ue)),kg?(rr=ke(ss+ke(cd(o[y+996>>2]|0,le))),I[Al>>2]=rr,o[wg>>2]=1,ht=1):(ht=0,rr=ke(ue)),an=o[p+32>>2]|0,pi&(an|0)==2?an=2:bl(zi)|0&&!(bl(w)|0)&&(I[gu>>2]=w,o[Tc>>2]=2,Ks=2,zi=w),!((an|0)==2&So)&&bl(rr)|0&&!(bl(X)|0)&&(I[Al>>2]=X,o[wg>>2]=2,ht=2,rr=X),Un=ke(I[y+396>>2]),Ds=bl(Un)|0;do if(Ds)an=Ks;else{if((Ks|0)==1&So){I[Al>>2]=ke(ke(zi-Si)/Un),o[wg>>2]=1,ht=1,an=1;break}pi&(ht|0)==1?(I[gu>>2]=ke(Un*ke(rr-ss)),o[Tc>>2]=1,ht=1,an=1):an=Ks}while(!1);R0=bl(w)|0,Ks=(td(p,y)|0)!=4,!(pi|Il|((G|0)!=1|R0)|(Ks|(an|0)==1))&&(I[gu>>2]=w,o[Tc>>2]=1,!Ds)&&(I[Al>>2]=ke(ke(w-Si)/Un),o[wg>>2]=1,ht=1),!(kg|So|((Ge|0)!=1|(bl(X)|0))|(Ks|(ht|0)==1))&&(I[Al>>2]=X,o[wg>>2]=1,!Ds)&&(I[gu>>2]=ke(Un*ke(X-ss)),o[Tc>>2]=1),_b(y,2,U,U,Tc,gu),_b(y,0,le,U,wg,Al),w=ke(I[gu>>2]),X=ke(I[Al>>2]),ki(y,w,X,Xe,o[Tc>>2]|0,o[wg>>2]|0,U,le,0,3565,St)|0,le=ke(I[y+908+(o[976+(Tg<<2)>>2]<<2)>>2]),I[y+504>>2]=ke(zs(le,ke(q_(y,Tg,U))))}while(!1);o[y+500>>2]=o[2278],B=im}function TA(p,y,w,G,X){return p=p|0,y=y|0,w=ke(w),G=ke(G),X=ke(X),G=ke(e1(p,y,w,G)),ke(zs(G,ke(q_(p,y,X))))}function td(p,y){return p=p|0,y=y|0,y=y+20|0,y=o[(o[y>>2]|0?y:p+16|0)>>2]|0,(y|0)==5&&AB(o[p+4>>2]|0)|0&&(y=1),y|0}function Km(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+96>>2]|0?y=4:y=o[1040+(y<<2)>>2]|0,p+60+(y<<3)|0}function eI(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+104>>2]|0?y=5:y=o[1e3+(y<<2)>>2]|0,p+60+(y<<3)|0}function _b(p,y,w,G,X,U){switch(p=p|0,y=y|0,w=ke(w),G=ke(G),X=X|0,U=U|0,w=ke(cd(p+380+(o[976+(y<<2)>>2]<<3)|0,w)),w=ke(w+ke(jl(p,y,G))),o[X>>2]|0){case 2:case 1:{X=bl(w)|0,G=ke(I[U>>2]),I[U>>2]=X|G>2]=2,I[U>>2]=w);break}default:}}function D_(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(bg(p,4,948)|0)+4>>2]|0?p=1:p=(o[(bg(p,o[1040+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function yb(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0;return p=p+132|0,Gn(y)|0&&(G=bg(p,4,948)|0,(o[G+4>>2]|0)!=0)?X=4:(G=bg(p,o[1040+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?X=4:w=ke(0)),(X|0)==4&&(w=ke(cd(G,w))),ke(w)}function Dy(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),G=ke(G+ke(ar(p,y,w))),ke(G+ke(Jr(p,y,w)))}function $S(p){p=p|0;var y=0,w=0,G=0;e:do if(AB(o[p+4>>2]|0)|0)y=0;else if((o[p+16>>2]|0)!=5)if(w=Fs(p)|0,!w)y=0;else for(y=0;;){if(G=Oa(p,y)|0,!(o[G+24>>2]|0)&&(o[G+20>>2]|0)==5){y=1;break e}if(y=y+1|0,y>>>0>=w>>>0){y=0;break}}else y=1;while(!1);return y|0}function bb(p,y){p=p|0,y=y|0;var w=As;return w=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),w>=ke(0)&((bl(w)|0)^1)|0}function $_(p){p=p|0;var y=As,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=As;if(w=o[p+968>>2]|0,w)Xe=ke(I[p+908>>2]),y=ke(I[p+912>>2]),y=ke(Eie[w&0](p,Xe,y)),sp(p,(bl(y)|0)^1,3573);else{U=Fs(p)|0;do if(U|0){for(w=0,X=0;;){if(G=Oa(p,X)|0,o[G+940>>2]|0){le=8;break}if((o[G+24>>2]|0)!=1)if(Ge=(td(p,G)|0)==5,Ge){w=G;break}else w=w|0?w:G;if(X=X+1|0,X>>>0>=U>>>0){le=8;break}}if((le|0)==8&&!w)break;return y=ke($_(w)),ke(y+ke(I[w+404>>2]))}while(!1);y=ke(I[p+912>>2])}return ke(y)}function e1(p,y,w,G){p=p|0,y=y|0,w=ke(w),G=ke(G);var X=As,U=0;return AB(y)|0?(y=1,U=3):Gn(y)|0?(y=0,U=3):(G=ke(ue),X=ke(ue)),(U|0)==3&&(X=ke(cd(p+364+(y<<3)|0,G)),G=ke(cd(p+380+(y<<3)|0,G))),U=G=ke(0)&((bl(G)|0)^1)),w=U?G:w,U=X>=ke(0)&((bl(X)|0)^1)&w>2]|0,U)|0,zi=GT(Ds,U)|0,Un=Gn(Ds)|0,rr=ke(jl(y,2,w)),an=ke(jl(y,0,w)),z_(y,2,w)|0?Ge=ke(rr+ke(cd(o[y+992>>2]|0,w))):D_(y,2)|0&&tv(y,2)|0?(Ge=ke(I[p+908>>2]),Xe=ke(Dg(p,2)),Xe=ke(Ge-ke(Xe+ke(Df(p,2)))),Ge=ke(yb(y,2,w)),Ge=ke(TA(y,2,ke(Xe-ke(Ge+ke(t1(y,2,w)))),w,w))):Ge=ke(ue),z_(y,0,X)|0?Xe=ke(an+ke(cd(o[y+996>>2]|0,X))):D_(y,0)|0&&tv(y,0)|0?(Xe=ke(I[p+912>>2]),So=ke(Dg(p,0)),So=ke(Xe-ke(So+ke(Df(p,0)))),Xe=ke(yb(y,0,X)),Xe=ke(TA(y,0,ke(So-ke(Xe+ke(t1(y,0,X)))),X,w))):Xe=ke(ue),St=bl(Ge)|0,ht=bl(Xe)|0;do if(St^ht&&(Ks=ke(I[y+396>>2]),!(bl(Ks)|0)))if(St){Ge=ke(rr+ke(ke(Xe-an)*Ks));break}else{So=ke(an+ke(ke(Ge-rr)/Ks)),Xe=ht?So:Xe;break}while(!1);ht=bl(Ge)|0,St=bl(Xe)|0,ht|St&&(ss=(ht^1)&1,G=w>ke(0)&((G|0)!=0&ht),Ge=Un?Ge:G?w:Ge,ki(y,Ge,Xe,U,Un?ss:G?2:ss,ht&(St^1)&1,Ge,Xe,0,3623,le)|0,Ge=ke(I[y+908>>2]),Ge=ke(Ge+ke(jl(y,2,w))),Xe=ke(I[y+912>>2]),Xe=ke(Xe+ke(jl(y,0,w)))),ki(y,Ge,Xe,U,1,1,Ge,Xe,1,3635,le)|0,tv(y,Ds)|0&&!(D_(y,Ds)|0)?(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Df(p,Ds))),So=ke(So-ke(Jr(y,Ds,w))),So=ke(So-ke(t1(y,Ds,Un?w:X))),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So):Si=21;do if((Si|0)==21){if(!(D_(y,Ds)|0)&&(o[p+8>>2]|0)==1){ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So;break}!(D_(y,Ds)|0)&&(o[p+8>>2]|0)==2&&(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So)}while(!1);tv(y,zi)|0&&!(D_(y,zi)|0)?(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Df(p,zi))),So=ke(So-ke(Jr(y,zi,w))),So=ke(So-ke(t1(y,zi,Un?X:w))),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So):Si=30;do if((Si|0)==30&&!(D_(y,zi)|0)){if((td(p,y)|0)==2){ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So;break}ss=(td(p,y)|0)==3,ss^(o[p+28>>2]|0)==2&&(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So)}while(!1)}function ZT(p,y,w){p=p|0,y=y|0,w=w|0;var G=As,X=0;X=o[976+(w<<2)>>2]|0,G=ke(I[y+908+(X<<2)>>2]),G=ke(ke(I[p+908+(X<<2)>>2])-G),G=ke(G-ke(I[y+400+(o[1040+(w<<2)>>2]<<2)>>2])),I[y+400+(o[1e3+(w<<2)>>2]<<2)>>2]=G}function AB(p){return p=p|0,(p|1|0)==1|0}function ev(p){p=p|0;var y=As;switch(o[p+56>>2]|0){case 0:case 3:{y=ke(I[p+40>>2]),y>ke(0)&((bl(y)|0)^1)?p=n[(o[p+976>>2]|0)+2>>0]|0?1056:992:p=1056;break}default:p=p+52|0}return p|0}function zR(p,y){return p=p|0,y=y|0,(n[p+y>>0]|0)!=0|0}function tv(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(bg(p,5,948)|0)+4>>2]|0?p=1:p=(o[(bg(p,o[1e3+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function t1(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0;return p=p+132|0,Gn(y)|0&&(G=bg(p,5,948)|0,(o[G+4>>2]|0)!=0)?X=4:(G=bg(p,o[1e3+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?X=4:w=ke(0)),(X|0)==4&&(w=ke(cd(G,w))),ke(w)}function j2(p,y,w){return p=p|0,y=y|0,w=ke(w),D_(p,y)|0?w=ke(yb(p,y,w)):w=ke(-ke(t1(p,y,w))),ke(w)}function LT(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function pn(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{X=ju(y<<2)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<2)}function t2(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>2)<<2)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function z2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function ry(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;if(le=p+4|0,Ge=o[le>>2]|0,X=Ge-G|0,U=X>>2,p=y+(U<<2)|0,p>>>0>>0){G=Ge;do o[G>>2]=o[p>>2],p=p+4|0,G=(o[le>>2]|0)+4|0,o[le>>2]=G;while(p>>>0>>0)}U|0&&qT(Ge+(0-U<<2)|0,y|0,X|0)|0}function Ap(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=y+4|0,Xe=o[Ge>>2]|0,X=o[p>>2]|0,le=w,U=le-X|0,G=Xe+(0-(U>>2)<<2)|0,o[Ge>>2]=G,(U|0)>0&&Yd(G|0,X|0,U|0)|0,X=p+4|0,U=y+8|0,G=(o[X>>2]|0)-le|0,(G|0)>0&&(Yd(o[U>>2]|0,w|0,G|0)|0,o[U>>2]=(o[U>>2]|0)+(G>>>2<<2)),le=o[p>>2]|0,o[p>>2]=o[Ge>>2],o[Ge>>2]=le,le=o[X>>2]|0,o[X>>2]=o[U>>2],o[U>>2]=le,le=p+8|0,w=y+12|0,p=o[le>>2]|0,o[le>>2]=o[w>>2],o[w>>2]=p,o[y>>2]=o[Ge>>2],Xe|0}function yw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;if(le=o[y>>2]|0,U=o[w>>2]|0,(le|0)!=(U|0)){X=p+8|0,w=((U+-4-le|0)>>>2)+1|0,p=le,G=o[X>>2]|0;do o[G>>2]=o[p>>2],G=(o[X>>2]|0)+4|0,o[X>>2]=G,p=p+4|0;while((p|0)!=(U|0));o[y>>2]=le+(w<<2)}}function dB(){LA()}function GD(){var p=0;return p=ju(4)|0,Dd(p),p|0}function Dd(p){p=p|0,o[p>>2]=ff()|0}function qR(p){p=p|0,p|0&&(ny(p),ti(p))}function ny(p){p=p|0,io(o[p>>2]|0)}function pF(p,y,w){p=p|0,y=y|0,w=w|0,ty(o[p>>2]|0,y,w)}function r2(p,y){p=p|0,y=ke(y),jE(o[p>>2]|0,y)}function r1(p,y){return p=p|0,y=y|0,zR(o[p>>2]|0,y)|0}function k_(){var p=0;return p=ju(8)|0,n1(p,0),p|0}function n1(p,y){p=p|0,y=y|0,y?y=Yp(o[y>>2]|0)|0:y=vr()|0,o[p>>2]=y,o[p+4>>2]=0,op(y,p)}function i1(p){p=p|0;var y=0;return y=ju(8)|0,n1(y,p),y|0}function iy(p){p=p|0,p|0&&(VT(p),ti(p))}function VT(p){p=p|0;var y=0;ls(o[p>>2]|0),y=p+4|0,p=o[y>>2]|0,o[y>>2]=0,p|0&&(Eb(p),ti(p))}function Eb(p){p=p|0,i_(p)}function i_(p){p=p|0,p=o[p>>2]|0,p|0&&so(p|0)}function xh(p){return p=p|0,bd(p)|0}function Sb(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(Eb(y),ti(y)),Dp(o[p>>2]|0)}function pB(p,y){p=p|0,y=y|0,WA(o[p>>2]|0,o[y>>2]|0)}function FD(p,y){p=p|0,y=y|0,oE(o[p>>2]|0,y)}function ZD(p,y,w){p=p|0,y=y|0,w=+w,J2(o[p>>2]|0,y,ke(w))}function e0(p,y,w){p=p|0,y=y|0,w=+w,aE(o[p>>2]|0,y,ke(w))}function LD(p,y){p=p|0,y=y|0,Gm(o[p>>2]|0,y)}function $R(p,y){p=p|0,y=y|0,qd(o[p>>2]|0,y)}function lc(p,y){p=p|0,y=y|0,Qp(o[p>>2]|0,y)}function Ch(p,y){p=p|0,y=y|0,$1(o[p>>2]|0,y)}function sf(p,y){p=p|0,y=y|0,ey(o[p>>2]|0,y)}function EI(p,y){p=p|0,y=y|0,XA(o[p>>2]|0,y)}function uE(p,y,w){p=p|0,y=y|0,w=+w,P(o[p>>2]|0,y,ke(w))}function rv(p,y,w){p=p|0,y=y|0,w=+w,K(o[p>>2]|0,y,ke(w))}function Jp(p,y){p=p|0,y=y|0,At(o[p>>2]|0,y)}function fB(p,y){p=p|0,y=y|0,NC(o[p>>2]|0,y)}function _h(p,y){p=p|0,y=y|0,up(o[p>>2]|0,y)}function FC(p,y){p=p|0,y=+y,hb(o[p>>2]|0,ke(y))}function t0(p,y){p=p|0,y=+y,qf(o[p>>2]|0,ke(y))}function s1(p,y){p=p|0,y=+y,yI(o[p>>2]|0,ke(y))}function IB(p,y){p=p|0,y=+y,pe(o[p>>2]|0,ke(y))}function bw(p,y){p=p|0,y=+y,dm(o[p>>2]|0,ke(y))}function WT(p,y){p=p|0,y=+y,ra(o[p>>2]|0,ke(y))}function S0(p,y){p=p|0,y=+y,kc(o[p>>2]|0,ke(y))}function ia(p){p=p|0,Dl(o[p>>2]|0)}function n2(p,y){p=p|0,y=+y,Bl(o[p>>2]|0,ke(y))}function Ed(p,y){p=p|0,y=+y,eA(o[p>>2]|0,ke(y))}function SI(p){p=p|0,BA(o[p>>2]|0)}function cg(p,y){p=p|0,y=+y,gp(o[p>>2]|0,ke(y))}function vb(p,y){p=p|0,y=+y,mb(o[p>>2]|0,ke(y))}function o1(p,y){p=p|0,y=+y,Rd(o[p>>2]|0,ke(y))}function q2(p,y){p=p|0,y=+y,e2(o[p>>2]|0,ke(y))}function r0(p,y){p=p|0,y=+y,DC(o[p>>2]|0,ke(y))}function s_(p,y){p=p|0,y=+y,Jm(o[p>>2]|0,ke(y))}function Up(p,y){p=p|0,y=+y,Zg(o[p>>2]|0,ke(y))}function gE(p,y){p=p|0,y=+y,Cb(o[p>>2]|0,ke(y))}function AE(p,y){p=p|0,y=+y,kC(o[p>>2]|0,ke(y))}function mp(p,y,w){p=p|0,y=y|0,w=+w,fi(o[p>>2]|0,y,ke(w))}function jh(p,y,w){p=p|0,y=y|0,w=+w,sr(o[p>>2]|0,y,ke(w))}function v0(p,y,w){p=p|0,y=y|0,w=+w,Yr(o[p>>2]|0,y,ke(w))}function cA(p){return p=p|0,K_(o[p>>2]|0)|0}function Iu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,se(X,o[y>>2]|0,w),Kp(p,X),B=G}function Kp(p,y){p=p|0,y=y|0,IC(p,o[y+4>>2]|0,+ke(I[y>>2]))}function IC(p,y,w){p=p|0,y=y|0,w=+w,o[p>>2]=y,C[p+8>>3]=w}function dE(p){return p=p|0,JS(o[p>>2]|0)|0}function nh(p){return p=p|0,hh(o[p>>2]|0)|0}function Mf(p){return p=p|0,dC(o[p>>2]|0)|0}function Mo(p){return p=p|0,Cw(o[p>>2]|0)|0}function dp(p){return p=p|0,KE(o[p>>2]|0)|0}function fF(p){return p=p|0,Ac(o[p>>2]|0)|0}function IF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,we(X,o[y>>2]|0,w),Kp(p,X),B=G}function pE(p){return p=p|0,n_(o[p>>2]|0)|0}function OT(p){return p=p|0,Xm(o[p>>2]|0)|0}function kp(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,bI(G,o[y>>2]|0),Kp(p,G),B=w}function Fm(p){return p=p|0,+ +ke(If(o[p>>2]|0))}function xp(p){return p=p|0,+ +ke(rf(o[p>>2]|0))}function i2(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,ca(G,o[y>>2]|0),Kp(p,G),B=w}function Ro(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,gI(G,o[y>>2]|0),Kp(p,G),B=w}function fE(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Na(G,o[y>>2]|0),Kp(p,G),B=w}function hB(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,N_(G,o[y>>2]|0),Kp(p,G),B=w}function Xc(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,US(G,o[y>>2]|0),Kp(p,G),B=w}function su(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,pC(G,o[y>>2]|0),Kp(p,G),B=w}function IE(p){return p=p|0,+ +ke(U2(o[p>>2]|0))}function wL(p,y){return p=p|0,y=y|0,+ +ke($n(o[p>>2]|0,y))}function eN(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,Lr(X,o[y>>2]|0,w),Kp(p,X),B=G}function Pu(p,y,w){p=p|0,y=y|0,w=w|0,Hl(o[p>>2]|0,o[y>>2]|0,w)}function sy(p,y){p=p|0,y=y|0,gd(o[p>>2]|0,o[y>>2]|0)}function Cp(p){return p=p|0,Fs(o[p>>2]|0)|0}function Im(p){return p=p|0,p=Bo(o[p>>2]|0)|0,p?p=xh(p)|0:p=0,p|0}function $2(p,y){return p=p|0,y=y|0,p=Oa(o[p>>2]|0,y)|0,p?p=xh(p)|0:p=0,p|0}function o_(p,y){p=p|0,y=y|0;var w=0,G=0;G=ju(4)|0,mB(G,y),w=p+4|0,y=o[w>>2]|0,o[w>>2]=G,y|0&&(Eb(y),ti(y)),Ea(o[p>>2]|0,1)}function mB(p,y){p=p|0,y=y|0,wb(p,y)}function PT(p,y,w,G,X,U){p=p|0,y=y|0,w=ke(w),G=G|0,X=ke(X),U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,Sx(Ge,bd(y)|0,+w,G,+X,U),I[p>>2]=ke(+C[Ge>>3]),I[p+4>>2]=ke(+C[Ge+8>>3]),B=le}function Sx(p,y,w,G,X,U){p=p|0,y=y|0,w=+w,G=G|0,X=+X,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0;le=B,B=B+32|0,ht=le+8|0,St=le+20|0,Xe=le,Ge=le+16|0,C[ht>>3]=w,o[St>>2]=G,C[Xe>>3]=X,o[Ge>>2]=U,CB(p,o[y+4>>2]|0,ht,St,Xe,Ge),B=le}function CB(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,Vw(Ge),y=tI(y)|0,zh(p,y,+C[w>>3],o[G>>2]|0,+C[X>>3],o[U>>2]|0),uS(Ge),B=le}function tI(p){return p=p|0,o[p>>2]|0}function zh(p,y,w,G,X,U){p=p|0,y=y|0,w=+w,G=G|0,X=+X,U=U|0;var le=0;le=Bb(nv()|0)|0,w=+_p(w),G=s2(G)|0,X=+_p(X),a1(p,cc(0,le|0,y|0,+w,G|0,+X,s2(U)|0)|0)}function nv(){var p=0;return n[7608]|0||(_B(9120),p=7608,o[p>>2]=1,o[p+4>>2]=0),9120}function Bb(p){return p=p|0,o[p+8>>2]|0}function _p(p){return p=+p,+ +md(p)}function s2(p){return p=p|0,Z(p)|0}function a1(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;X=B,B=B+32|0,w=X,G=y,G&1?(Hf(w,0),_I(G|0,w|0)|0,hE(p,w),Od(w)):(o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]),B=X}function Hf(p,y){p=p|0,y=y|0,j(p,y),o[p+8>>2]=0,n[p+24>>0]=0}function hE(p,y){p=p|0,y=y|0,y=y+8|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]}function Od(p){p=p|0,n[p+24>>0]=0}function j(p,y){p=p|0,y=y|0,o[p>>2]=y}function Z(p){return p=p|0,p|0}function md(p){return p=+p,+p}function _B(p){p=p|0,ky(p,iv()|0,4)}function iv(){return 1064}function ky(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=zd(y|0,w+1|0)|0}function wb(p,y){p=p|0,y=y|0,y=o[y>>2]|0,o[p>>2]=y,ac(y|0)}function VD(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(Eb(y),ti(y)),Ea(o[p>>2]|0,0)}function yB(p){p=p|0,us(o[p>>2]|0)}function Tb(p){return p=p|0,Xl(o[p>>2]|0)|0}function TL(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,Um(o[p>>2]|0,ke(y),ke(w),G)}function hF(p){return p=p|0,+ +ke(j_(o[p>>2]|0))}function x(p){return p=p|0,+ +ke(GC(o[p>>2]|0))}function L(p){return p=p|0,+ +ke(xC(o[p>>2]|0))}function te(p){return p=p|0,+ +ke(th(o[p>>2]|0))}function Re(p){return p=p|0,+ +ke(mh(o[p>>2]|0))}function Ve(p){return p=p|0,+ +ke(wA(o[p>>2]|0))}function It(p,y){p=p|0,y=y|0,C[p>>3]=+ke(j_(o[y>>2]|0)),C[p+8>>3]=+ke(GC(o[y>>2]|0)),C[p+16>>3]=+ke(xC(o[y>>2]|0)),C[p+24>>3]=+ke(th(o[y>>2]|0)),C[p+32>>3]=+ke(mh(o[y>>2]|0)),C[p+40>>3]=+ke(wA(o[y>>2]|0))}function dr(p,y){return p=p|0,y=y|0,+ +ke(Nd(o[p>>2]|0,y))}function Ur(p,y){return p=p|0,y=y|0,+ +ke(Mc(o[p>>2]|0,y))}function mi(p,y){return p=p|0,y=y|0,+ +ke(Pf(o[p>>2]|0,y))}function Vi(){return QA()|0}function Ta(){El(),Ho(),Pg(),lA(),ih(),xn()}function El(){e$e(11713,4938,1)}function Ho(){eLe(10448)}function Pg(){jZe(10408)}function lA(){Jqe(10324)}function ih(){Hye(10096)}function xn(){rn(9132)}function rn(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,Il=0,gu=0,Al=0,Tc=0,wg=0,kg=0,Tg=0,im=0,R0=0,vE=0,oh=0,F_=0,ik=0,Ow=0,bh=0,VF=0,Pw=0,eR=0,r9=0,n9=0,gS=0,_f=0,I2=0,tR=0,Cv=0,Ox=0,VB=0,_v=0,WB=0,BE=0,qm=0,EN=0,rR=0,$m=0,h2=0,mg=0,YI=0,ag=0,jo=0,Qg=0,Ll=0,m2=0,QI=0,WF=0,dI=0,jA=0,uA=0,OF=0,SN=0,nR=0,C1=0,N0=0,sk=0,po=0,Mw=0,PF=0,Qd=0,cf=0,wd=0,Ep=0,g_=0,Xd=0,Xg=0,yv=0;y=B,B=B+672|0,w=y+656|0,yv=y+648|0,Xg=y+640|0,Xd=y+632|0,g_=y+624|0,Ep=y+616|0,wd=y+608|0,cf=y+600|0,Qd=y+592|0,PF=y+584|0,Mw=y+576|0,po=y+568|0,sk=y+560|0,N0=y+552|0,C1=y+544|0,nR=y+536|0,SN=y+528|0,OF=y+520|0,uA=y+512|0,jA=y+504|0,dI=y+496|0,WF=y+488|0,QI=y+480|0,m2=y+472|0,Ll=y+464|0,Qg=y+456|0,jo=y+448|0,ag=y+440|0,YI=y+432|0,mg=y+424|0,h2=y+416|0,$m=y+408|0,rR=y+400|0,EN=y+392|0,qm=y+384|0,BE=y+376|0,WB=y+368|0,_v=y+360|0,VB=y+352|0,Ox=y+344|0,Cv=y+336|0,tR=y+328|0,I2=y+320|0,_f=y+312|0,gS=y+304|0,n9=y+296|0,r9=y+288|0,eR=y+280|0,Pw=y+272|0,VF=y+264|0,bh=y+256|0,Ow=y+248|0,ik=y+240|0,F_=y+232|0,oh=y+224|0,vE=y+216|0,R0=y+208|0,im=y+200|0,Tg=y+192|0,kg=y+184|0,wg=y+176|0,Tc=y+168|0,Al=y+160|0,gu=y+152|0,Il=y+144|0,pi=y+136|0,ss=y+128|0,So=y+120|0,Si=y+112|0,Ds=y+104|0,Un=y+96|0,zi=y+88|0,Ks=y+80|0,an=y+72|0,rr=y+64|0,ht=y+56|0,St=y+48|0,Xe=y+40|0,Ge=y+32|0,le=y+24|0,U=y+16|0,X=y+8|0,G=y,Ci(p,3646),Wo(p,3651,2)|0,ec(p,3665,2)|0,Ra(p,3682,18)|0,o[yv>>2]=19,o[yv+4>>2]=0,o[w>>2]=o[yv>>2],o[w+4>>2]=o[yv+4>>2],dc(p,3690,w)|0,o[Xg>>2]=1,o[Xg+4>>2]=0,o[w>>2]=o[Xg>>2],o[w+4>>2]=o[Xg+4>>2],hu(p,3696,w)|0,o[Xd>>2]=2,o[Xd+4>>2]=0,o[w>>2]=o[Xd>>2],o[w+4>>2]=o[Xd+4>>2],ml(p,3706,w)|0,o[g_>>2]=1,o[g_+4>>2]=0,o[w>>2]=o[g_>>2],o[w+4>>2]=o[g_+4>>2],wl(p,3722,w)|0,o[Ep>>2]=2,o[Ep+4>>2]=0,o[w>>2]=o[Ep>>2],o[w+4>>2]=o[Ep+4>>2],wl(p,3734,w)|0,o[wd>>2]=3,o[wd+4>>2]=0,o[w>>2]=o[wd>>2],o[w+4>>2]=o[wd+4>>2],ml(p,3753,w)|0,o[cf>>2]=4,o[cf+4>>2]=0,o[w>>2]=o[cf>>2],o[w+4>>2]=o[cf+4>>2],ml(p,3769,w)|0,o[Qd>>2]=5,o[Qd+4>>2]=0,o[w>>2]=o[Qd>>2],o[w+4>>2]=o[Qd+4>>2],ml(p,3783,w)|0,o[PF>>2]=6,o[PF+4>>2]=0,o[w>>2]=o[PF>>2],o[w+4>>2]=o[PF+4>>2],ml(p,3796,w)|0,o[Mw>>2]=7,o[Mw+4>>2]=0,o[w>>2]=o[Mw>>2],o[w+4>>2]=o[Mw+4>>2],ml(p,3813,w)|0,o[po>>2]=8,o[po+4>>2]=0,o[w>>2]=o[po>>2],o[w+4>>2]=o[po+4>>2],ml(p,3825,w)|0,o[sk>>2]=3,o[sk+4>>2]=0,o[w>>2]=o[sk>>2],o[w+4>>2]=o[sk+4>>2],wl(p,3843,w)|0,o[N0>>2]=4,o[N0+4>>2]=0,o[w>>2]=o[N0>>2],o[w+4>>2]=o[N0+4>>2],wl(p,3853,w)|0,o[C1>>2]=9,o[C1+4>>2]=0,o[w>>2]=o[C1>>2],o[w+4>>2]=o[C1+4>>2],ml(p,3870,w)|0,o[nR>>2]=10,o[nR+4>>2]=0,o[w>>2]=o[nR>>2],o[w+4>>2]=o[nR+4>>2],ml(p,3884,w)|0,o[SN>>2]=11,o[SN+4>>2]=0,o[w>>2]=o[SN>>2],o[w+4>>2]=o[SN+4>>2],ml(p,3896,w)|0,o[OF>>2]=1,o[OF+4>>2]=0,o[w>>2]=o[OF>>2],o[w+4>>2]=o[OF+4>>2],rI(p,3907,w)|0,o[uA>>2]=2,o[uA+4>>2]=0,o[w>>2]=o[uA>>2],o[w+4>>2]=o[uA+4>>2],rI(p,3915,w)|0,o[jA>>2]=3,o[jA+4>>2]=0,o[w>>2]=o[jA>>2],o[w+4>>2]=o[jA+4>>2],rI(p,3928,w)|0,o[dI>>2]=4,o[dI+4>>2]=0,o[w>>2]=o[dI>>2],o[w+4>>2]=o[dI+4>>2],rI(p,3948,w)|0,o[WF>>2]=5,o[WF+4>>2]=0,o[w>>2]=o[WF>>2],o[w+4>>2]=o[WF+4>>2],rI(p,3960,w)|0,o[QI>>2]=6,o[QI+4>>2]=0,o[w>>2]=o[QI>>2],o[w+4>>2]=o[QI+4>>2],rI(p,3974,w)|0,o[m2>>2]=7,o[m2+4>>2]=0,o[w>>2]=o[m2>>2],o[w+4>>2]=o[m2+4>>2],rI(p,3983,w)|0,o[Ll>>2]=20,o[Ll+4>>2]=0,o[w>>2]=o[Ll>>2],o[w+4>>2]=o[Ll+4>>2],dc(p,3999,w)|0,o[Qg>>2]=8,o[Qg+4>>2]=0,o[w>>2]=o[Qg>>2],o[w+4>>2]=o[Qg+4>>2],rI(p,4012,w)|0,o[jo>>2]=9,o[jo+4>>2]=0,o[w>>2]=o[jo>>2],o[w+4>>2]=o[jo+4>>2],rI(p,4022,w)|0,o[ag>>2]=21,o[ag+4>>2]=0,o[w>>2]=o[ag>>2],o[w+4>>2]=o[ag+4>>2],dc(p,4039,w)|0,o[YI>>2]=10,o[YI+4>>2]=0,o[w>>2]=o[YI>>2],o[w+4>>2]=o[YI+4>>2],rI(p,4053,w)|0,o[mg>>2]=11,o[mg+4>>2]=0,o[w>>2]=o[mg>>2],o[w+4>>2]=o[mg+4>>2],rI(p,4065,w)|0,o[h2>>2]=12,o[h2+4>>2]=0,o[w>>2]=o[h2>>2],o[w+4>>2]=o[h2+4>>2],rI(p,4084,w)|0,o[$m>>2]=13,o[$m+4>>2]=0,o[w>>2]=o[$m>>2],o[w+4>>2]=o[$m+4>>2],rI(p,4097,w)|0,o[rR>>2]=14,o[rR+4>>2]=0,o[w>>2]=o[rR>>2],o[w+4>>2]=o[rR+4>>2],rI(p,4117,w)|0,o[EN>>2]=15,o[EN+4>>2]=0,o[w>>2]=o[EN>>2],o[w+4>>2]=o[EN+4>>2],rI(p,4129,w)|0,o[qm>>2]=16,o[qm+4>>2]=0,o[w>>2]=o[qm>>2],o[w+4>>2]=o[qm+4>>2],rI(p,4148,w)|0,o[BE>>2]=17,o[BE+4>>2]=0,o[w>>2]=o[BE>>2],o[w+4>>2]=o[BE+4>>2],rI(p,4161,w)|0,o[WB>>2]=18,o[WB+4>>2]=0,o[w>>2]=o[WB>>2],o[w+4>>2]=o[WB+4>>2],rI(p,4181,w)|0,o[_v>>2]=5,o[_v+4>>2]=0,o[w>>2]=o[_v>>2],o[w+4>>2]=o[_v+4>>2],wl(p,4196,w)|0,o[VB>>2]=6,o[VB+4>>2]=0,o[w>>2]=o[VB>>2],o[w+4>>2]=o[VB+4>>2],wl(p,4206,w)|0,o[Ox>>2]=7,o[Ox+4>>2]=0,o[w>>2]=o[Ox>>2],o[w+4>>2]=o[Ox+4>>2],wl(p,4217,w)|0,o[Cv>>2]=3,o[Cv+4>>2]=0,o[w>>2]=o[Cv>>2],o[w+4>>2]=o[Cv+4>>2],eS(p,4235,w)|0,o[tR>>2]=1,o[tR+4>>2]=0,o[w>>2]=o[tR>>2],o[w+4>>2]=o[tR+4>>2],vx(p,4251,w)|0,o[I2>>2]=4,o[I2+4>>2]=0,o[w>>2]=o[I2>>2],o[w+4>>2]=o[I2+4>>2],eS(p,4263,w)|0,o[_f>>2]=5,o[_f+4>>2]=0,o[w>>2]=o[_f>>2],o[w+4>>2]=o[_f+4>>2],eS(p,4279,w)|0,o[gS>>2]=6,o[gS+4>>2]=0,o[w>>2]=o[gS>>2],o[w+4>>2]=o[gS+4>>2],eS(p,4293,w)|0,o[n9>>2]=7,o[n9+4>>2]=0,o[w>>2]=o[n9>>2],o[w+4>>2]=o[n9+4>>2],eS(p,4306,w)|0,o[r9>>2]=8,o[r9+4>>2]=0,o[w>>2]=o[r9>>2],o[w+4>>2]=o[r9+4>>2],eS(p,4323,w)|0,o[eR>>2]=9,o[eR+4>>2]=0,o[w>>2]=o[eR>>2],o[w+4>>2]=o[eR+4>>2],eS(p,4335,w)|0,o[Pw>>2]=2,o[Pw+4>>2]=0,o[w>>2]=o[Pw>>2],o[w+4>>2]=o[Pw+4>>2],vx(p,4353,w)|0,o[VF>>2]=12,o[VF+4>>2]=0,o[w>>2]=o[VF>>2],o[w+4>>2]=o[VF+4>>2],tS(p,4363,w)|0,o[bh>>2]=1,o[bh+4>>2]=0,o[w>>2]=o[bh>>2],o[w+4>>2]=o[bh+4>>2],sv(p,4376,w)|0,o[Ow>>2]=2,o[Ow+4>>2]=0,o[w>>2]=o[Ow>>2],o[w+4>>2]=o[Ow+4>>2],sv(p,4388,w)|0,o[ik>>2]=13,o[ik+4>>2]=0,o[w>>2]=o[ik>>2],o[w+4>>2]=o[ik+4>>2],tS(p,4402,w)|0,o[F_>>2]=14,o[F_+4>>2]=0,o[w>>2]=o[F_>>2],o[w+4>>2]=o[F_+4>>2],tS(p,4411,w)|0,o[oh>>2]=15,o[oh+4>>2]=0,o[w>>2]=o[oh>>2],o[w+4>>2]=o[oh+4>>2],tS(p,4421,w)|0,o[vE>>2]=16,o[vE+4>>2]=0,o[w>>2]=o[vE>>2],o[w+4>>2]=o[vE+4>>2],tS(p,4433,w)|0,o[R0>>2]=17,o[R0+4>>2]=0,o[w>>2]=o[R0>>2],o[w+4>>2]=o[R0+4>>2],tS(p,4446,w)|0,o[im>>2]=18,o[im+4>>2]=0,o[w>>2]=o[im>>2],o[w+4>>2]=o[im+4>>2],tS(p,4458,w)|0,o[Tg>>2]=3,o[Tg+4>>2]=0,o[w>>2]=o[Tg>>2],o[w+4>>2]=o[Tg+4>>2],sv(p,4471,w)|0,o[kg>>2]=1,o[kg+4>>2]=0,o[w>>2]=o[kg>>2],o[w+4>>2]=o[kg+4>>2],Yu(p,4486,w)|0,o[wg>>2]=10,o[wg+4>>2]=0,o[w>>2]=o[wg>>2],o[w+4>>2]=o[wg+4>>2],eS(p,4496,w)|0,o[Tc>>2]=11,o[Tc+4>>2]=0,o[w>>2]=o[Tc>>2],o[w+4>>2]=o[Tc+4>>2],eS(p,4508,w)|0,o[Al>>2]=3,o[Al+4>>2]=0,o[w>>2]=o[Al>>2],o[w+4>>2]=o[Al+4>>2],vx(p,4519,w)|0,o[gu>>2]=4,o[gu+4>>2]=0,o[w>>2]=o[gu>>2],o[w+4>>2]=o[gu+4>>2],s3(p,4530,w)|0,o[Il>>2]=19,o[Il+4>>2]=0,o[w>>2]=o[Il>>2],o[w+4>>2]=o[Il+4>>2],bB(p,4542,w)|0,o[pi>>2]=12,o[pi+4>>2]=0,o[w>>2]=o[pi>>2],o[w+4>>2]=o[pi+4>>2],Ew(p,4554,w)|0,o[ss>>2]=13,o[ss+4>>2]=0,o[w>>2]=o[ss>>2],o[w+4>>2]=o[ss+4>>2],mF(p,4568,w)|0,o[So>>2]=2,o[So+4>>2]=0,o[w>>2]=o[So>>2],o[w+4>>2]=o[So+4>>2],o3(p,4578,w)|0,o[Si>>2]=20,o[Si+4>>2]=0,o[w>>2]=o[Si>>2],o[w+4>>2]=o[Si+4>>2],fY(p,4587,w)|0,o[Ds>>2]=22,o[Ds+4>>2]=0,o[w>>2]=o[Ds>>2],o[w+4>>2]=o[Ds+4>>2],dc(p,4602,w)|0,o[Un>>2]=23,o[Un+4>>2]=0,o[w>>2]=o[Un>>2],o[w+4>>2]=o[Un+4>>2],dc(p,4619,w)|0,o[zi>>2]=14,o[zi+4>>2]=0,o[w>>2]=o[zi>>2],o[w+4>>2]=o[zi+4>>2],MT(p,4629,w)|0,o[Ks>>2]=1,o[Ks+4>>2]=0,o[w>>2]=o[Ks>>2],o[w+4>>2]=o[Ks+4>>2],WD(p,4637,w)|0,o[an>>2]=4,o[an+4>>2]=0,o[w>>2]=o[an>>2],o[w+4>>2]=o[an+4>>2],sv(p,4653,w)|0,o[rr>>2]=5,o[rr+4>>2]=0,o[w>>2]=o[rr>>2],o[w+4>>2]=o[rr+4>>2],sv(p,4669,w)|0,o[ht>>2]=6,o[ht+4>>2]=0,o[w>>2]=o[ht>>2],o[w+4>>2]=o[ht+4>>2],sv(p,4686,w)|0,o[St>>2]=7,o[St+4>>2]=0,o[w>>2]=o[St>>2],o[w+4>>2]=o[St+4>>2],sv(p,4701,w)|0,o[Xe>>2]=8,o[Xe+4>>2]=0,o[w>>2]=o[Xe>>2],o[w+4>>2]=o[Xe+4>>2],sv(p,4719,w)|0,o[Ge>>2]=9,o[Ge+4>>2]=0,o[w>>2]=o[Ge>>2],o[w+4>>2]=o[Ge+4>>2],sv(p,4736,w)|0,o[le>>2]=21,o[le+4>>2]=0,o[w>>2]=o[le>>2],o[w+4>>2]=o[le+4>>2],CF(p,4754,w)|0,o[U>>2]=2,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],Yu(p,4772,w)|0,o[X>>2]=3,o[X+4>>2]=0,o[w>>2]=o[X>>2],o[w+4>>2]=o[X+4>>2],Yu(p,4790,w)|0,o[G>>2]=4,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],Yu(p,4808,w)|0,B=y}function Ci(p,y){p=p|0,y=y|0;var w=0;w=VVt()|0,o[p>>2]=w,xZe(w,y),kF(o[p>>2]|0)}function Wo(p,y,w){return p=p|0,y=y|0,w=w|0,uAe(p,hf(y)|0,w,0),p|0}function ec(p,y,w){return p=p|0,y=y|0,w=w|0,aAe(p,hf(y)|0,w,0),p|0}function Ra(p,y,w){return p=p|0,y=y|0,w=w|0,f1(p,hf(y)|0,w,0),p|0}function dc(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],bZe(p,y,X),B=G,p|0}function hu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],XT(p,y,X),B=G,p|0}function ml(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ie(p,y,X),B=G,p|0}function wl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],SW(p,y,X),B=G,p|0}function rI(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ine(p,y,X),B=G,p|0}function eS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],SF(p,y,X),B=G,p|0}function vx(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ZY(p,y,X),B=G,p|0}function tS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],$u(p,y,X),B=G,p|0}function sv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],QT(p,y,X),B=G,p|0}function Yu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],VJ(p,y,X),B=G,p|0}function s3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],xb(p,y,X),B=G,p|0}function bB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],GJ(p,y,X),B=G,p|0}function Ew(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],vye(p,y,X),B=G,p|0}function mF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],bge(p,y,X),B=G,p|0}function o3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],bY(p,y,X),B=G,p|0}function fY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],u1(p,y,X),B=G,p|0}function MT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],DL(p,y,X),B=G,p|0}function WD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ld(p,y,X),B=G,p|0}function CF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],RL(p,y,X),B=G,p|0}function RL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],OD(p,w,X,1),B=G}function hf(p){return p=p|0,p|0}function OD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=mE()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=o2(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,EB(U,G)|0,G),B=X}function mE(){var p=0,y=0;if(n[7616]|0||(Jt(9136),fu(24,9136,J|0)|0,y=7616,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9136)|0)){p=9136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Jt(9136)}return 9136}function o2(p){return p=p|0,0}function EB(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=mE()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],oy(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(IY(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Sd(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0;le=B,B=B+32|0,an=le+24|0,rr=le+20|0,Xe=le+16|0,ht=le+12|0,St=le+8|0,Ge=le+4|0,Ks=le,o[rr>>2]=y,o[Xe>>2]=w,o[ht>>2]=G,o[St>>2]=X,o[Ge>>2]=U,U=p+28|0,o[Ks>>2]=o[U>>2],o[an>>2]=o[Ks>>2],c1(p+24|0,an,rr,ht,St,Xe,Ge)|0,o[U>>2]=o[o[U>>2]>>2],B=le}function c1(p,y,w,G,X,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0,p=qh(y)|0,y=ju(24)|0,Rb(y+4|0,o[w>>2]|0,o[G>>2]|0,o[X>>2]|0,o[U>>2]|0,o[le>>2]|0),o[y>>2]=o[p>>2],o[p>>2]=y,y|0}function qh(p){return p=p|0,o[p>>2]|0}function Rb(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=X,o[p+16>>2]=U}function Ku(p,y){return p=p|0,y=y|0,y|p|0}function oy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function IY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=hY(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,tN(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],oy(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,mY(p,Ge),rt(Ge),B=St;return}}function hY(p){return p=p|0,357913941}function tN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function mY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function rt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Jt(p){p=p|0,Is(p)}function kr(p){p=p|0,ui(p+24|0)}function Xr(p){return p=p|0,o[p>>2]|0}function ui(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Is(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,Rs()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hs(){return 9228}function Rs(){return 1140}function ja(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=nl(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=kd(y,G)|0,B=w,y|0}function ho(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=X,o[p+16>>2]=U}function nl(p){return p=p|0,(o[(mE()|0)+24>>2]|0)+(p*12|0)|0}function kd(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;return X=B,B=B+48|0,G=X,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),nk[w&31](G,p),G=rd(G)|0,B=X,G|0}function rd(p){p=p|0;var y=0,w=0,G=0,X=0;return X=B,B=B+32|0,y=X+12|0,w=X,G=Gh(Mg()|0)|0,G?(l1(y,G),Nb(w,y),rS(p,w),p=CE(y)|0):p=rN(p)|0,B=X,p|0}function Mg(){var p=0;return n[7632]|0||(ye(9184),fu(25,9184,J|0)|0,p=7632,o[p>>2]=1,o[p+4>>2]=0),9184}function Gh(p){return p=p|0,o[p+36>>2]|0}function l1(p,y){p=p|0,y=y|0,o[p>>2]=y,o[p+4>>2]=p,o[p+8>>2]=0}function Nb(p,y){p=p|0,y=y|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=0}function rS(p,y){p=p|0,y=y|0,RA(y,p,p+8|0,p+16|0,p+24|0,p+32|0,p+40|0)|0}function CE(p){return p=p|0,o[(o[p+4>>2]|0)+8>>2]|0}function rN(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;Xe=B,B=B+16|0,w=Xe+4|0,G=Xe,X=Lb(8)|0,U=X,le=ju(48)|0,Ge=le,y=Ge+48|0;do o[Ge>>2]=o[p>>2],Ge=Ge+4|0,p=p+4|0;while((Ge|0)<(y|0));return y=U+4|0,o[y>>2]=le,Ge=ju(8)|0,le=o[y>>2]|0,o[G>>2]=0,o[w>>2]=o[G>>2],a3(Ge,le,w),o[X>>2]=Ge,B=Xe,U|0}function a3(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1092,o[w+12>>2]=y,o[p+4>>2]=w}function hA(p){p=p|0,wz(p),ti(p)}function vI(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function $d(p){p=p|0,ti(p)}function RA(p,y,w,G,X,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0,U=nN(o[p>>2]|0,y,w,G,X,U,le)|0,le=p+4|0,o[(o[le>>2]|0)+8>>2]=U,o[(o[le>>2]|0)+8>>2]|0}function nN(p,y,w,G,X,U,le){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0;var Ge=0,Xe=0;return Ge=B,B=B+16|0,Xe=Ge,Vw(Xe),p=tI(p)|0,le=ay(p,+C[y>>3],+C[w>>3],+C[G>>3],+C[X>>3],+C[U>>3],+C[le>>3])|0,uS(Xe),B=Ge,le|0}function ay(p,y,w,G,X,U,le){p=p|0,y=+y,w=+w,G=+G,X=+X,U=+U,le=+le;var Ge=0;return Ge=Bb(nS()|0)|0,y=+_p(y),w=+_p(w),G=+_p(G),X=+_p(X),U=+_p(U),Ws(0,Ge|0,p|0,+y,+w,+G,+X,+U,+ +_p(le))|0}function nS(){var p=0;return n[7624]|0||(Eo(9172),p=7624,o[p>>2]=1,o[p+4>>2]=0),9172}function Eo(p){p=p|0,ky(p,z()|0,6)}function z(){return 1112}function ye(p){p=p|0,Hc(p)}function We(p){p=p|0,_t(p+24|0),Rr(p+16|0)}function _t(p){p=p|0,Lo(p)}function Rr(p){p=p|0,ai(p)}function ai(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Lo(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Hc(p){p=p|0;var y=0;o[p+16>>2]=0,o[p+20>>2]=0,y=p+24|0,o[y>>2]=0,o[p+28>>2]=y,o[p+36>>2]=0,n[p+40>>0]=0,n[p+41>>0]=0}function ld(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],hm(p,w,X,0),B=G}function hm(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=ov()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=av(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Bx(U,G)|0,G),B=X}function ov(){var p=0,y=0;if(n[7640]|0||(Vo(9232),fu(26,9232,J|0)|0,y=7640,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9232)|0)){p=9232,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Vo(9232)}return 9232}function av(p){return p=p|0,0}function Bx(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=ov()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],xd(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(ji(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function xd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function ji(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=NL(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,eu(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],xd(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,pp(p,Ge),Bc(Ge),B=St;return}}function NL(p){return p=p|0,357913941}function eu(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function pp(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bc(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Vo(p){p=p|0,a7(p)}function cv(p){p=p|0,of(p+24|0)}function of(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function a7(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,CY()|0,3),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function CY(){return 1144}function c3(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,le=U+8|0,Ge=U,Xe=_F(p)|0,p=o[Xe+4>>2]|0,o[Ge>>2]=o[Xe>>2],o[Ge+4>>2]=p,o[le>>2]=o[Ge>>2],o[le+4>>2]=o[Ge+4>>2],sh(y,le,w,G,X),B=U}function _F(p){return p=p|0,(o[(ov()|0)+24>>2]|0)+(p*12|0)|0}function sh(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0;St=B,B=B+16|0,le=St+2|0,Ge=St+1|0,Xe=St,U=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(U=o[(o[p>>2]|0)+U>>2]|0),Sw(le,w),w=+fl(le,w),Sw(Ge,G),G=+fl(Ge,G),SB(Xe,X),Xe=Db(Xe,X)|0,gQ[U&1](p,w,G,Xe),B=St}function Sw(p,y){p=p|0,y=+y}function fl(p,y){return p=p|0,y=+y,+ +xre(y)}function SB(p,y){p=p|0,y=y|0}function Db(p,y){return p=p|0,y=y|0,iN(y)|0}function iN(p){return p=p|0,p|0}function xre(p){return p=+p,+p}function DL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],EJ(p,w,X,1),B=G}function EJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=_Y()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=l3(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,c7(U,G)|0,G),B=X}function _Y(){var p=0,y=0;if(n[7648]|0||(Es(9268),fu(27,9268,J|0)|0,y=7648,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9268)|0)){p=9268,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Es(9268)}return 9268}function l3(p){return p=p|0,0}function c7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=_Y()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],SJ(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(l7(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function SJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function l7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=yY(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,wx(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],SJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Gre(p,Ge),Tx(Ge),B=St;return}}function yY(p){return p=p|0,357913941}function wx(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Gre(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Tx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Es(p){p=p|0,Ua(p)}function Aa(p){p=p|0,ha(p+24|0)}function ha(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Ua(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,wc()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function wc(){return 1160}function mA(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=Pd(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=$h(y,G)|0,B=w,y|0}function Pd(p){return p=p|0,(o[(_Y()|0)+24>>2]|0)+(p*12|0)|0}function $h(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),a2(yC[w&31](p)|0)|0}function a2(p){return p=p|0,p&1|0}function u1(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],kb(p,w,X,0),B=G}function kb(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=lv()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=pW(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,yF(U,G)|0,G),B=X}function lv(){var p=0,y=0;if(n[7656]|0||(BJ(9304),fu(28,9304,J|0)|0,y=7656,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9304)|0)){p=9304,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));BJ(9304)}return 9304}function pW(p){return p=p|0,0}function yF(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=lv()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],uv(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(sN(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function uv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function sN(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=vJ(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,u7(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],uv(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Rx(p,Ge),g1(Ge),B=St;return}}function vJ(p){return p=p|0,357913941}function u7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Rx(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function g1(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function BJ(p){p=p|0,hZe(p)}function Sye(p){p=p|0,wJ(p+24|0)}function wJ(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function hZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,PD()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function PD(){return 1164}function u3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=vw(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],TJ(y,X,w),B=G}function vw(p){return p=p|0,(o[(lv()|0)+24>>2]|0)+(p*12|0)|0}function TJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Nx(X,w),w=bF(X,w)|0,nk[G&31](p,w),vB(X),B=U}function Nx(p,y){p=p|0,y=y|0,ZC(p,y)}function bF(p,y){return p=p|0,y=y|0,p|0}function vB(p){p=p|0,Eb(p)}function ZC(p,y){p=p|0,y=y|0,fW(p,y)}function fW(p,y){p=p|0,y=y|0,o[p>>2]=y}function bY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],g3(p,w,X,0),B=G}function g3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=RJ()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=c2(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,l2(U,G)|0,G),B=X}function RJ(){var p=0,y=0;if(n[7664]|0||(kL(9340),fu(29,9340,J|0)|0,y=7664,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9340)|0)){p=9340,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));kL(9340)}return 9340}function c2(p){return p=p|0,0}function l2(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=RJ()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],NJ(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(EY(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function NJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function EY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Fre(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,SY(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],NJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,g7(p,Ge),A7(Ge),B=St;return}}function Fre(p){return p=p|0,357913941}function SY(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function g7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function A7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function kL(p){p=p|0,xL(p)}function oN(p){p=p|0,vY(p+24|0)}function vY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function xL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,Zre()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Zre(){return 1180}function MD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=yge(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=d7(y,X,w)|0,B=G,w|0}function yge(p){return p=p|0,(o[(RJ()|0)+24>>2]|0)+(p*12|0)|0}function d7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;return U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),iS(X,w),X=aN(X,w)|0,X=DJ(Sie[G&15](p,X)|0)|0,B=U,X|0}function iS(p,y){p=p|0,y=y|0}function aN(p,y){return p=p|0,y=y|0,cN(y)|0}function DJ(p){return p=p|0,p|0}function cN(p){return p=p|0,p|0}function bge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Lre(p,w,X,0),B=G}function Lre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=p7()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Gp(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,FL(U,G)|0,G),B=X}function p7(){var p=0,y=0;if(n[7672]|0||(hg(9376),fu(30,9376,J|0)|0,y=7672,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9376)|0)){p=9376,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));hg(9376)}return 9376}function Gp(p){return p=p|0,0}function FL(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=p7()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],BY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(hC(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function BY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function hC(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=IW(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,HD(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],BY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,wY(p,Ge),Vre(Ge),B=St;return}}function IW(p){return p=p|0,357913941}function HD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function wY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Vre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function hg(p){p=p|0,ZL(p)}function mC(p){p=p|0,PI(p+24|0)}function PI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function ZL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,Eu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Eu(){return 1196}function A3(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=Gd(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=TY(y,G)|0,B=w,y|0}function Gd(p){return p=p|0,(o[(p7()|0)+24>>2]|0)+(p*12|0)|0}function TY(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),DJ(yC[w&31](p)|0)|0}function vye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],hW(p,w,X,1),B=G}function hW(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=kJ()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=MI(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,xa(U,G)|0,G),B=X}function kJ(){var p=0,y=0;if(n[7680]|0||(RY(9412),fu(31,9412,J|0)|0,y=7680,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9412)|0)){p=9412,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));RY(9412)}return 9412}function MI(p){return p=p|0,0}function xa(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=kJ()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],BB(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(n0(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function BB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function n0(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Wre(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,LL(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],BB(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,fp(p,Ge),Dx(Ge),B=St;return}}function Wre(p){return p=p|0,357913941}function LL(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function fp(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Dx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function RY(p){p=p|0,Ege(p)}function Bw(p){p=p|0,uc(p+24|0)}function uc(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Ege(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Nu(){return 1200}function NY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=d3(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=mW(y,G)|0,B=w,y|0}function d3(p){return p=p|0,(o[(kJ()|0)+24>>2]|0)+(p*12|0)|0}function mW(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),xJ(yC[w&31](p)|0)|0}function xJ(p){return p=p|0,p|0}function GJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],FJ(p,w,X,0),B=G}function FJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=CW()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Ore(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,ZJ(U,G)|0,G),B=X}function CW(){var p=0,y=0;if(n[7688]|0||(x_(9448),fu(32,9448,J|0)|0,y=7688,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9448)|0)){p=9448,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));x_(9448)}return 9448}function Ore(p){return p=p|0,0}function ZJ(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=CW()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Pre(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(LJ(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Pre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function LJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Mre(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,EF(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Pre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,gv(p,Ge),_W(Ge),B=St;return}}function Mre(p){return p=p|0,357913941}function EF(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function gv(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function _W(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function x_(p){p=p|0,wye(p)}function Bye(p){p=p|0,Hre(p+24|0)}function Hre(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function wye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,lN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function lN(){return 1204}function Sge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=un(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],DY(y,X,w),B=G}function un(p){return p=p|0,(o[(CW()|0)+24>>2]|0)+(p*12|0)|0}function DY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vd(X,w),X=HT(X,w)|0,nk[G&31](p,X),B=U}function vd(p,y){p=p|0,y=y|0}function HT(p,y){return p=p|0,y=y|0,uN(y)|0}function uN(p){return p=p|0,p|0}function xb(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],f7(p,w,X,0),B=G}function f7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=YT()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=VL(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,I7(U,G)|0,G),B=X}function YT(){var p=0,y=0;if(n[7696]|0||(p3(9484),fu(33,9484,J|0)|0,y=7696,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9484)|0)){p=9484,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));p3(9484)}return 9484}function VL(p){return p=p|0,0}function I7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=YT()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],h7(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(_E(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function h7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function _E(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=vge(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Yre(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],h7(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Tye(p,Ge),kx(Ge),B=St;return}}function vge(p){return p=p|0,357913941}function Yre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Tye(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function p3(p){p=p|0,bE(p)}function yE(p){p=p|0,HI(p+24|0)}function HI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function bE(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,Qre()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Qre(){return 1212}function Bge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+8|0,le=X,Ge=em(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],wge(y,U,w,G),B=X}function em(p){return p=p|0,(o[(YT()|0)+24>>2]|0)+(p*12|0)|0}function wge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,X=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(X=o[(o[p>>2]|0)+X>>2]|0),vd(U,w),U=HT(U,w)|0,iS(le,G),le=aN(le,G)|0,$T[X&15](p,U,le),B=Ge}function VJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Lc(p,w,X,1),B=G}function Lc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Tge()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Xre(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,kY(U,G)|0,G),B=X}function Tge(){var p=0,y=0;if(n[7704]|0||(MJ(9520),fu(34,9520,J|0)|0,y=7704,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9520)|0)){p=9520,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));MJ(9520)}return 9520}function Xre(p){return p=p|0,0}function kY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Tge()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],WL(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(WJ(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function WL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function WJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=OJ(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,PJ(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],WL(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,nI(p,Ge),f3(Ge),B=St;return}}function OJ(p){return p=p|0,357913941}function PJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function nI(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function f3(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function MJ(p){p=p|0,h3(p)}function I3(p){p=p|0,m7(p+24|0)}function m7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function h3(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,Av()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Av(){return 1224}function wB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;return X=B,B=B+16|0,U=X+8|0,le=X,Ge=jm(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],G=+mf(y,U,w),B=X,+G}function jm(p){return p=p|0,(o[(Tge()|0)+24>>2]|0)+(p*12|0)|0}function mf(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),SB(X,w),X=Db(X,w)|0,le=+md(+SEe[G&7](p,X)),B=U,+le}function QT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],A1(p,w,X,1),B=G}function A1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=xY()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=C7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,CC(U,G)|0,G),B=X}function xY(){var p=0,y=0;if(n[7712]|0||(Kre(9556),fu(35,9556,J|0)|0,y=7712,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9556)|0)){p=9556,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Kre(9556)}return 9556}function C7(p){return p=p|0,0}function CC(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=xY()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Jre(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(CA(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Jre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function CA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=xx(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Ure(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Jre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,TB(p,Ge),Rye(Ge),B=St;return}}function xx(p){return p=p|0,357913941}function Ure(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function TB(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Rye(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Kre(p){p=p|0,GY(p)}function jre(p){p=p|0,YD(p+24|0)}function YD(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function GY(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,zre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function zre(){return 1232}function Rge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=yp(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=+Nge(y,X),B=G,+w}function yp(p){return p=p|0,(o[(xY()|0)+24>>2]|0)+(p*12|0)|0}function Nge(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),+ +md(+MW[w&15](p))}function $u(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ww(p,w,X,1),B=G}function ww(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=QD()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=_7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Dge(U,G)|0,G),B=X}function QD(){var p=0,y=0;if(n[7720]|0||(RB(9592),fu(36,9592,J|0)|0,y=7720,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9592)|0)){p=9592,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));RB(9592)}return 9592}function _7(p){return p=p|0,0}function Dge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=QD()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],HJ(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(mZe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function HJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function mZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=kge(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,B0(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],HJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Tw(p,Ge),Fh(Ge),B=St;return}}function kge(p){return p=p|0,357913941}function B0(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Tw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Fh(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function RB(p){p=p|0,YJ(p)}function y7(p){p=p|0,yW(p+24|0)}function yW(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function YJ(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,qre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function qre(){return 1276}function xge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=OL(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=b7(y,G)|0,B=w,y|0}function OL(p){return p=p|0,(o[(QD()|0)+24>>2]|0)+(p*12|0)|0}function b7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;return X=B,B=B+16|0,G=X,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),nk[w&31](G,p),G=QJ(G)|0,B=X,G|0}function QJ(p){p=p|0;var y=0,w=0,G=0,X=0;return X=B,B=B+32|0,y=X+12|0,w=X,G=Gh(E7()|0)|0,G?(l1(y,G),Nb(w,y),Nye(p,w),p=CE(y)|0):p=XJ(p)|0,B=X,p|0}function E7(){var p=0;return n[7736]|0||(Zge(9640),fu(25,9640,J|0)|0,p=7736,o[p>>2]=1,o[p+4>>2]=0),9640}function Nye(p,y){p=p|0,y=y|0,JJ(y,p,p+8|0)|0}function XJ(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,X=w+4|0,le=w,G=Lb(8)|0,y=G,Ge=ju(16)|0,o[Ge>>2]=o[p>>2],o[Ge+4>>2]=o[p+4>>2],o[Ge+8>>2]=o[p+8>>2],o[Ge+12>>2]=o[p+12>>2],U=y+4|0,o[U>>2]=Ge,p=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],gN(p,U,X),o[G>>2]=p,B=w,y|0}function gN(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1244,o[w+12>>2]=y,o[p+4>>2]=w}function Gge(p){p=p|0,wz(p),ti(p)}function $re(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function bW(p){p=p|0,ti(p)}function JJ(p,y,w){return p=p|0,y=y|0,w=w|0,y=ms(o[p>>2]|0,y,w)|0,w=p+4|0,o[(o[w>>2]|0)+8>>2]=y,o[(o[w>>2]|0)+8>>2]|0}function ms(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;return G=B,B=B+16|0,X=G,Vw(X),p=tI(p)|0,w=UJ(p,o[y>>2]|0,+C[w>>3])|0,uS(X),B=G,w|0}function UJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0;return G=Bb(FY()|0)|0,y=s2(y)|0,Xa(0,G|0,p|0,y|0,+ +_p(w))|0}function FY(){var p=0;return n[7728]|0||(Fge(9628),p=7728,o[p>>2]=1,o[p+4>>2]=0),9628}function Fge(p){p=p|0,ky(p,XD()|0,2)}function XD(){return 1264}function Zge(p){p=p|0,Hc(p)}function ZY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],S7(p,w,X,1),B=G}function S7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=af()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=d1(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Lge(U,G)|0,G),B=X}function af(){var p=0,y=0;if(n[7744]|0||(Vge(9684),fu(37,9684,J|0)|0,y=7744,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9684)|0)){p=9684,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Vge(9684)}return 9684}function d1(p){return p=p|0,0}function Lge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=af()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],LY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Dye(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function LY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Dye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=kye(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,xye(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],LY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Rw(p,Ge),ene(Ge),B=St;return}}function kye(p){return p=p|0,357913941}function xye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Rw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ene(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Vge(p){p=p|0,v7(p)}function PL(p){p=p|0,tne(p+24|0)}function tne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function v7(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,Wge()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Wge(){return 1280}function JD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=rne(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=Oge(y,X,w)|0,B=G,w|0}function rne(p){return p=p|0,(o[(af()|0)+24>>2]|0)+(p*12|0)|0}function Oge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return le=B,B=B+32|0,X=le,U=le+16|0,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),SB(U,w),U=Db(U,w)|0,$T[G&15](X,p,U),U=QJ(X)|0,B=le,U|0}function SF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],CZe(p,w,X,1),B=G}function CZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=VY()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=UD(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,vF(U,G)|0,G),B=X}function VY(){var p=0,y=0;if(n[7752]|0||(p1(9720),fu(38,9720,J|0)|0,y=7752,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9720)|0)){p=9720,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));p1(9720)}return 9720}function UD(p){return p=p|0,0}function vF(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=VY()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],dv(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(WY(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function dv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function WY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Fp(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Gye(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],dv(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,EW(p,Ge),rA(Ge),B=St;return}}function Fp(p){return p=p|0,357913941}function Gye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function EW(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function rA(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function p1(p){p=p|0,Pge(p)}function nne(p){p=p|0,B7(p+24|0)}function B7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Pge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,_Ze()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function _Ze(){return 1288}function Mge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=Nw(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=KJ(y,G)|0,B=w,y|0}function Nw(p){return p=p|0,(o[(VY()|0)+24>>2]|0)+(p*12|0)|0}function KJ(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),Z(yC[w&31](p)|0)|0}function ine(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],a_(p,w,X,0),B=G}function a_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=OY()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=sne(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Hge(U,G)|0,G),B=X}function OY(){var p=0,y=0;if(n[7760]|0||(jJ(9756),fu(39,9756,J|0)|0,y=7760,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9756)|0)){p=9756,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));jJ(9756)}return 9756}function sne(p){return p=p|0,0}function Hge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=OY()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],PY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Yge(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function PY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Yge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Qge(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,NB(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],PY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,BF(p,Ge),one(Ge),B=St;return}}function Qge(p){return p=p|0,357913941}function NB(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function BF(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function one(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function jJ(p){p=p|0,ane(p)}function yZe(p){p=p|0,m3(p+24|0)}function m3(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function ane(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,zJ()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function zJ(){return 1292}function qJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=cne(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],lne(y,X,w),B=G}function cne(p){return p=p|0,(o[(OY()|0)+24>>2]|0)+(p*12|0)|0}function lne(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Sw(X,w),w=+fl(X,w),k$e[G&31](p,w),B=U}function SW(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Xge(p,w,X,0),B=G}function Xge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=w7()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=T7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Jge(U,G)|0,G),B=X}function w7(){var p=0,y=0;if(n[7768]|0||(HY(9792),fu(40,9792,J|0)|0,y=7768,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9792)|0)){p=9792,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));HY(9792)}return 9792}function T7(p){return p=p|0,0}function Jge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=w7()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],MY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(R7(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function MY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function R7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=sS(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Uge(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],MY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Md(p,Ge),Kge(Ge),B=St;return}}function sS(p){return p=p|0,357913941}function Uge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Md(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Kge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function HY(p){p=p|0,cy(p)}function YY(p){p=p|0,vW(p+24|0)}function vW(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function cy(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,mo()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function mo(){return 1300}function C3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+8|0,le=X,Ge=EE(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Dw(y,U,w,G),B=X}function EE(p){return p=p|0,(o[(w7()|0)+24>>2]|0)+(p*12|0)|0}function Dw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var X=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,X=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(X=o[(o[p>>2]|0)+X>>2]|0),SB(U,w),U=Db(U,w)|0,Sw(le,G),G=+fl(le,G),Bie[X&15](p,U,G),B=Ge}function ie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],he(p,w,X,0),B=G}function he(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=qe()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Ut(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Qr(U,G)|0,G),B=X}function qe(){var p=0,y=0;if(n[7776]|0||(fc(9828),fu(41,9828,J|0)|0,y=7776,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9828)|0)){p=9828,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));fc(9828)}return 9828}function Ut(p){return p=p|0,0}function Qr(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=qe()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],kn(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Fi(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function kn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Fi(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=rs(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,qs(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kn(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,vc(p,Ge),qa(Ge),B=St;return}}function rs(p){return p=p|0,357913941}function qs(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function vc(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function qa(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function fc(p){p=p|0,OA(p)}function Sl(p){p=p|0,Zu(p+24|0)}function Zu(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function OA(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,Cf()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Cf(){return 1312}function Bd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=iI(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],sI(y,X,w),B=G}function iI(p){return p=p|0,(o[(qe()|0)+24>>2]|0)+(p*12|0)|0}function sI(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),SB(X,w),X=Db(X,w)|0,nk[G&31](p,X),B=U}function XT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],oS(p,w,X,0),B=G}function oS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=xy()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=jp(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,pv(U,G)|0,G),B=X}function xy(){var p=0,y=0;if(n[7784]|0||(qge(9864),fu(42,9864,J|0)|0,y=7784,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9864)|0)){p=9864,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));qge(9864)}return 9864}function jp(p){return p=p|0,0}function pv(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=xy()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Gy(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(aS(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Gy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function aS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=une(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,jge(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Gy(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,NVt(p,Ge),zge(Ge),B=St;return}}function une(p){return p=p|0,357913941}function jge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function NVt(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function zge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function qge(p){p=p|0,kVt(p)}function Fye(p){p=p|0,DVt(p+24|0)}function DVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function kVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,xVt()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function xVt(){return 1320}function GVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=FVt(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ZVt(y,X,w),B=G}function FVt(p){return p=p|0,(o[(xy()|0)+24>>2]|0)+(p*12|0)|0}function ZVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),kw(X,w),X=Vqe(X,w)|0,nk[G&31](p,X),B=U}function kw(p,y){p=p|0,y=y|0}function Vqe(p,y){return p=p|0,y=y|0,wF(y)|0}function wF(p){return p=p|0,p|0}function bZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Zye(p,w,X,0),B=G}function Zye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=$ge()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=N7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,D7(U,G)|0,G),B=X}function $ge(){var p=0,y=0;if(n[7792]|0||(u2(9900),fu(43,9900,J|0)|0,y=7792,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9900)|0)){p=9900,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));u2(9900)}return 9900}function N7(p){return p=p|0,0}function D7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=$ge()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Lye(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(eAe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Lye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function eAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=EZe(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,SZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Lye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Vye(p,Ge),BW(Ge),B=St;return}}function EZe(p){return p=p|0,357913941}function SZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Vye(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function BW(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function u2(p){p=p|0,BZe(p)}function tAe(p){p=p|0,vZe(p+24|0)}function vZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function BZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,22,y,$J()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function $J(){return 1344}function k7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;w=B,B=B+16|0,G=w+8|0,X=w,U=rAe(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],gne(y,G),B=w}function rAe(p){return p=p|0,(o[($ge()|0)+24>>2]|0)+(p*12|0)|0}function gne(p,y){p=p|0,y=y|0;var w=0;w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),LF[w&127](p)}function f1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=nAe()|0,p=_C(w)|0,Sd(U,y,X,p,wZe(w,G)|0,G)}function nAe(){var p=0,y=0;if(n[7800]|0||(x7(9936),fu(44,9936,J|0)|0,y=7800,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9936)|0)){p=9936,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));x7(9936)}return 9936}function _C(p){return p=p|0,p|0}function wZe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=nAe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Ane(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(iAe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Ane(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function iAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=i0(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,TZe(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,Ane(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,sAe(p,X),RZe(X),B=Ge;return}}function i0(p){return p=p|0,536870911}function TZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function sAe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function RZe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function x7(p){p=p|0,dne(p)}function ML(p){p=p|0,Fy(p+24|0)}function Fy(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function dne(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,23,y,lN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function oAe(p,y){p=p|0,y=y|0,pne(o[(NZe(p)|0)>>2]|0,y)}function NZe(p){return p=p|0,(o[(nAe()|0)+24>>2]|0)+(p<<3)|0}function pne(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,vd(G,y),y=HT(G,y)|0,LF[p&127](y),B=w}function aAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=eU()|0,p=tU(w)|0,Sd(U,y,X,p,fne(w,G)|0,G)}function eU(){var p=0,y=0;if(n[7808]|0||(Ine(9972),fu(45,9972,J|0)|0,y=7808,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9972)|0)){p=9972,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Ine(9972)}return 9972}function tU(p){return p=p|0,p|0}function fne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=eU()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(rU(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Gx(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function rU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Gx(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Wye(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,Oye(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,rU(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,nU(p,X),JT(X),B=Ge;return}}function Wye(p){return p=p|0,536870911}function Oye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function nU(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function JT(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Ine(p){p=p|0,HL(p)}function cAe(p){p=p|0,DZe(p+24|0)}function DZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function HL(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,9,y,G7()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function G7(){return 1348}function Pye(p,y){return p=p|0,y=y|0,AN(o[(_3(p)|0)>>2]|0,y)|0}function _3(p){return p=p|0,(o[(eU()|0)+24>>2]|0)+(p<<3)|0}function AN(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,s0(G,y),y=wo(G,y)|0,y=DJ(yC[p&31](y)|0)|0,B=w,y|0}function s0(p,y){p=p|0,y=y|0}function wo(p,y){return p=p|0,y=y|0,lAe(y)|0}function lAe(p){return p=p|0,p|0}function uAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=QY()|0,p=gAe(w)|0,Sd(U,y,X,p,ly(w,G)|0,G)}function QY(){var p=0,y=0;if(n[7816]|0||(Cne(10008),fu(46,10008,J|0)|0,y=7816,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10008)|0)){p=10008,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Cne(10008)}return 10008}function gAe(p){return p=p|0,p|0}function ly(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=QY()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(F7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(wW(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function F7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function wW(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=kZe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,Wqe(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,F7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,hne(p,X),mne(X),B=Ge;return}}function kZe(p){return p=p|0,536870911}function Wqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function hne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function mne(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Cne(p){p=p|0,L7(p)}function Z7(p){p=p|0,_ne(p+24|0)}function _ne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function L7(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,15,y,Eu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function LVt(p){return p=p|0,YL(o[(XY(p)|0)>>2]|0)|0}function XY(p){return p=p|0,(o[(QY()|0)+24>>2]|0)+(p<<3)|0}function YL(p){return p=p|0,DJ(kz[p&7]()|0)|0}function VVt(){var p=0;return n[7832]|0||(GZe(10052),fu(25,10052,J|0)|0,p=7832,o[p>>2]=1,o[p+4>>2]=0),10052}function xZe(p,y){p=p|0,y=y|0,o[p>>2]=Mye()|0,o[p+4>>2]=iU()|0,o[p+12>>2]=y,o[p+8>>2]=yne()|0,o[p+32>>2]=2}function Mye(){return 11709}function iU(){return 1188}function yne(){return oI()|0}function y3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(dN(w),ti(w)):y|0&&(VT(y),ti(y))}function TW(p,y){return p=p|0,y=y|0,y&p|0}function dN(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function oI(){var p=0;return n[7824]|0||(o[2511]=b3()|0,o[2512]=0,p=7824,o[p>>2]=1,o[p+4>>2]=0),10044}function b3(){return 0}function GZe(p){p=p|0,Hc(p)}function Hye(p){p=p|0;var y=0,w=0,G=0,X=0,U=0;y=B,B=B+32|0,w=y+24|0,U=y+16|0,X=y+8|0,G=y,RW(p,4827),AAe(p,4834,3)|0,E3(p,3682,47)|0,o[U>>2]=9,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],bne(p,4841,w)|0,o[X>>2]=1,o[X+4>>2]=0,o[w>>2]=o[X>>2],o[w+4>>2]=o[X+4>>2],WVt(p,4871,w)|0,o[G>>2]=10,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],OVt(p,4891,w)|0,B=y}function RW(p,y){p=p|0,y=y|0;var w=0;w=KL()|0,o[p>>2]=w,Gw(w,y),kF(o[p>>2]|0)}function AAe(p,y,w){return p=p|0,y=y|0,w=w|0,QZe(p,hf(y)|0,w,0),p|0}function E3(p,y,w){return p=p|0,y=y|0,w=w|0,Nne(p,hf(y)|0,w,0),p|0}function bne(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],OZe(p,y,X),B=G,p|0}function WVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],cS(p,y,X),B=G,p|0}function OVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],dAe(p,y,X),B=G,p|0}function dAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],KD(p,w,X,1),B=G}function KD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=sU()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Yye(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Ene(U,G)|0,G),B=X}function sU(){var p=0,y=0;if(n[7840]|0||(O7(10100),fu(48,10100,J|0)|0,y=7840,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10100)|0)){p=10100,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));O7(10100)}return 10100}function Yye(p){return p=p|0,0}function Ene(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=sU()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Qye(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(V7(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Qye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function V7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=FZe(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,ZZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Qye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,JY(p,Ge),W7(Ge),B=St;return}}function FZe(p){return p=p|0,357913941}function ZZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function JY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function W7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function O7(p){p=p|0,oU(p)}function Sne(p){p=p|0,UY(p+24|0)}function UY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function oU(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,S3()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function S3(){return 1364}function LZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=KY(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=jY(y,X,w)|0,B=G,w|0}function KY(p){return p=p|0,(o[(sU()|0)+24>>2]|0)+(p*12|0)|0}function jY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;return U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),SB(X,w),X=Db(X,w)|0,X=a2(Sie[G&15](p,X)|0)|0,B=U,X|0}function cS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],vne(p,w,X,0),B=G}function vne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=VZe()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Oqe(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Pqe(U,G)|0,G),B=X}function VZe(){var p=0,y=0;if(n[7848]|0||(Yqe(10136),fu(49,10136,J|0)|0,y=7848,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10136)|0)){p=10136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Yqe(10136)}return 10136}function Oqe(p){return p=p|0,0}function Pqe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=VZe()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],v3(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Mqe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function v3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Mqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=aU(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Bne(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],v3(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Xye(p,Ge),Hqe(Ge),B=St;return}}function aU(p){return p=p|0,357913941}function Bne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Xye(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Hqe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Yqe(p){p=p|0,pAe(p)}function Jye(p){p=p|0,wne(p+24|0)}function wne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function pAe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,9,y,Uye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Uye(){return 1372}function QL(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=XL(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],NW(y,X,w),B=G}function XL(p){return p=p|0,(o[(VZe()|0)+24>>2]|0)+(p*12|0)|0}function NW(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=As;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),cU(X,w),le=ke(WZe(X,w)),D$e[G&1](p,le),B=U}function cU(p,y){p=p|0,y=+y}function WZe(p,y){return p=p|0,y=+y,ke(Qqe(y))}function Qqe(p){return p=+p,ke(p)}function OZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],PZe(p,w,X,0),B=G}function PZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=jD()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=TF(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,PVt(U,G)|0,G),B=X}function jD(){var p=0,y=0;if(n[7856]|0||(Kye(10172),fu(50,10172,J|0)|0,y=7856,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10172)|0)){p=10172,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Kye(10172)}return 10172}function TF(p){return p=p|0,0}function PVt(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=jD()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],fAe(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(MZe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function fAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function MZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=B3(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Xqe(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],fAe(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Tne(p,Ge),fv(Ge),B=St;return}}function B3(p){return p=p|0,357913941}function Xqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Tne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function fv(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Kye(p){p=p|0,jye(p)}function P7(p){p=p|0,JA(p+24|0)}function JA(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function jye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,DW()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function DW(){return 1380}function UT(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+8|0,le=X,Ge=M7(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Rne(y,U,w,G),B=X}function M7(p){return p=p|0,(o[(jD()|0)+24>>2]|0)+(p*12|0)|0}function Rne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,X=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(X=o[(o[p>>2]|0)+X>>2]|0),SB(U,w),U=Db(U,w)|0,HZe(le,G),le=zye(le,G)|0,$T[X&15](p,U,le),B=Ge}function HZe(p,y){p=p|0,y=y|0}function zye(p,y){return p=p|0,y=y|0,IAe(y)|0}function IAe(p){return p=p|0,(p|0)!=0|0}function Nne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=Dne()|0,p=YZe(w)|0,Sd(U,y,X,p,DB(w,G)|0,G)}function Dne(){var p=0,y=0;if(n[7864]|0||(w0(10208),fu(51,10208,J|0)|0,y=7864,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10208)|0)){p=10208,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));w0(10208)}return 10208}function YZe(p){return p=p|0,p|0}function DB(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=Dne()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(JL(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(lU(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function JL(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function lU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=H7(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,Y7(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,JL(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,kne(p,X),UL(X),B=Ge;return}}function H7(p){return p=p|0,536870911}function Y7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function kne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function UL(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function w0(p){p=p|0,mAe(p)}function qye(p){p=p|0,hAe(p+24|0)}function hAe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function mAe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,24,y,$ye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function $ye(){return 1392}function zY(p,y){p=p|0,y=y|0,uU(o[(ebe(p)|0)>>2]|0,y)}function ebe(p){return p=p|0,(o[(Dne()|0)+24>>2]|0)+(p<<3)|0}function uU(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,s0(G,y),y=wo(G,y)|0,LF[p&127](y),B=w}function QZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=BI()|0,p=Q7(w)|0,Sd(U,y,X,p,I1(w,G)|0,G)}function BI(){var p=0,y=0;if(n[7872]|0||(gU(10244),fu(52,10244,J|0)|0,y=7872,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10244)|0)){p=10244,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));gU(10244)}return 10244}function Q7(p){return p=p|0,p|0}function I1(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=BI()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(xne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(zD(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function xne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function zD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=CAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,w3(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,xne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,xw(p,X),g2(X),B=Ge;return}}function CAe(p){return p=p|0,536870911}function w3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function xw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function g2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function gU(p){p=p|0,XZe(p)}function Gne(p){p=p|0,X7(p+24|0)}function X7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function XZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,16,y,MVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function MVt(){return 1400}function _Ae(p){return p=p|0,Gb(o[(tbe(p)|0)>>2]|0)|0}function tbe(p){return p=p|0,(o[(BI()|0)+24>>2]|0)+(p<<3)|0}function Gb(p){return p=p|0,rbe(kz[p&7]()|0)|0}function rbe(p){return p=p|0,p|0}function KL(){var p=0;return n[7880]|0||(J7(10280),fu(25,10280,J|0)|0,p=7880,o[p>>2]=1,o[p+4>>2]=0),10280}function Gw(p,y){p=p|0,y=y|0,o[p>>2]=nbe()|0,o[p+4>>2]=ap()|0,o[p+12>>2]=y,o[p+8>>2]=JZe()|0,o[p+32>>2]=4}function nbe(){return 11711}function ap(){return 1356}function JZe(){return oI()|0}function ibe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(sbe(w),ti(w)):y|0&&(ny(y),ti(y))}function sbe(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function J7(p){p=p|0,Hc(p)}function Jqe(p){p=p|0,UZe(p,4920),Fne(p)|0,Zne(p)|0}function UZe(p,y){p=p|0,y=y|0;var w=0;w=E7()|0,o[p>>2]=w,yAe(w,y),kF(o[p>>2]|0)}function Fne(p){p=p|0;var y=0;return y=o[p>>2]|0,RF(y,jqe()|0),p|0}function Zne(p){p=p|0;var y=0;return y=o[p>>2]|0,RF(y,AU()|0),p|0}function AU(){var p=0;return n[7888]|0||(Uqe(10328),fu(53,10328,J|0)|0,p=7888,o[p>>2]=1,o[p+4>>2]=0),Xr(10328)|0||Uqe(10328),10328}function RF(p,y){p=p|0,y=y|0,Sd(p,0,y,0,0,0)}function Uqe(p){p=p|0,abe(p),U7(p,10)}function obe(p){p=p|0,KZe(p+24|0)}function KZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function abe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,Kqe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function HVt(p,y,w){p=p|0,y=y|0,w=+w,YVt(p,y,w)}function U7(p,y){p=p|0,y=y|0,o[p+20>>2]=y}function YVt(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,U=G+8|0,Ge=G+13|0,X=G,le=G+12|0,SB(Ge,y),o[U>>2]=Db(Ge,y)|0,Sw(le,w),C[X>>3]=+fl(le,w),QVt(p,U,X),B=G}function QVt(p,y,w){p=p|0,y=y|0,w=w|0,IC(p+8|0,o[y>>2]|0,+C[w>>3]),n[p+24>>0]=1}function Kqe(){return 1404}function XVt(p,y){return p=p|0,y=+y,KT(p,y)|0}function KT(p,y){p=p|0,y=+y;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,U=G+4|0,le=G+8|0,Ge=G,X=Lb(8)|0,w=X,Xe=ju(16)|0,SB(U,p),p=Db(U,p)|0,Sw(le,y),IC(Xe,p,+fl(le,y)),le=w+4|0,o[le>>2]=Xe,p=ju(8)|0,le=o[le>>2]|0,o[Ge>>2]=0,o[U>>2]=o[Ge>>2],gN(p,le,U),o[X>>2]=p,B=G,w|0}function jqe(){var p=0;return n[7896]|0||(Lne(10364),fu(54,10364,J|0)|0,p=7896,o[p>>2]=1,o[p+4>>2]=0),Xr(10364)|0||Lne(10364),10364}function Lne(p){p=p|0,KVt(p),U7(p,55)}function JVt(p){p=p|0,UVt(p+24|0)}function UVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function KVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,4,y,qVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function jVt(p){p=p|0,zVt(p)}function zVt(p){p=p|0,cbe(p)}function cbe(p){p=p|0,A2(p+8|0),n[p+24>>0]=1}function A2(p){p=p|0,o[p>>2]=0,C[p+8>>3]=0}function qVt(){return 1424}function dU(){return Vne()|0}function Vne(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0;return y=B,B=B+16|0,X=y+4|0,le=y,w=Lb(8)|0,p=w,G=ju(16)|0,A2(G),U=p+4|0,o[U>>2]=G,G=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],gN(G,U,X),o[w>>2]=G,B=y,p|0}function yAe(p,y){p=p|0,y=y|0,o[p>>2]=Wne()|0,o[p+4>>2]=One()|0,o[p+12>>2]=y,o[p+8>>2]=lbe()|0,o[p+32>>2]=5}function Wne(){return 11710}function One(){return 1416}function lbe(){return K7()|0}function T3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(qD(w),ti(w)):y|0&&ti(y)}function qD(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function K7(){var p=0;return n[7904]|0||(o[2600]=zqe()|0,o[2601]=0,p=7904,o[p>>2]=1,o[p+4>>2]=0),10400}function zqe(){return o[357]|0}function jZe(p){p=p|0,ube(p,4926),zZe(p)|0}function ube(p,y){p=p|0,y=y|0;var w=0;w=Mg()|0,o[p>>2]=w,qqe(w,y),kF(o[p>>2]|0)}function zZe(p){p=p|0;var y=0;return y=o[p>>2]|0,RF(y,qZe()|0),p|0}function qZe(){var p=0;return n[7912]|0||(Pne(10412),fu(56,10412,J|0)|0,p=7912,o[p>>2]=1,o[p+4>>2]=0),Xr(10412)|0||Pne(10412),10412}function Pne(p){p=p|0,Abe(p),U7(p,57)}function bAe(p){p=p|0,gbe(p+24|0)}function gbe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Abe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,5,y,vAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function EAe(p){p=p|0,SAe(p)}function SAe(p){p=p|0,kW(p)}function kW(p){p=p|0;var y=0,w=0;y=p+8|0,w=y+48|0;do o[y>>2]=0,y=y+4|0;while((y|0)<(w|0));n[p+56>>0]=1}function vAe(){return 1432}function $Ze(){return BAe()|0}function BAe(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;le=B,B=B+16|0,p=le+4|0,y=le,w=Lb(8)|0,G=w,X=ju(48)|0,U=X,Ge=U+48|0;do o[U>>2]=0,U=U+4|0;while((U|0)<(Ge|0));return U=G+4|0,o[U>>2]=X,Ge=ju(8)|0,U=o[U>>2]|0,o[y>>2]=0,o[p>>2]=o[y>>2],a3(Ge,U,p),o[w>>2]=Ge,B=le,G|0}function qqe(p,y){p=p|0,y=y|0,o[p>>2]=dbe()|0,o[p+4>>2]=j7()|0,o[p+12>>2]=y,o[p+8>>2]=pU()|0,o[p+32>>2]=6}function dbe(){return 11704}function j7(){return 1436}function pU(){return K7()|0}function pN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(z7(w),ti(w)):y|0&&ti(y)}function z7(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function eLe(p){p=p|0,xW(p,4933),NF(p)|0,DF(p)|0}function xW(p,y){p=p|0,y=y|0;var w=0;w=R3()|0,o[p>>2]=w,h1(w,y),kF(o[p>>2]|0)}function NF(p){p=p|0;var y=0;return y=o[p>>2]|0,RF(y,rWt()|0),p|0}function DF(p){p=p|0;var y=0;return y=o[p>>2]|0,RF(y,qY()|0),p|0}function qY(){var p=0;return n[7920]|0||(jL(10452),fu(58,10452,J|0)|0,p=7920,o[p>>2]=1,o[p+4>>2]=0),Xr(10452)|0||jL(10452),10452}function jL(p){p=p|0,Zh(p),U7(p,1)}function pbe(p){p=p|0,GW(p+24|0)}function GW(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Zh(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,fbe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function tLe(p,y,w){p=p|0,y=+y,w=+w,Fb(p,y,w)}function Fb(p,y,w){p=p|0,y=+y,w=+w;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+32|0,U=G+8|0,Ge=G+17|0,X=G,le=G+16|0,Sw(Ge,y),C[U>>3]=+fl(Ge,y),Sw(le,w),C[X>>3]=+fl(le,w),wAe(p,U,X),B=G}function wAe(p,y,w){p=p|0,y=y|0,w=w|0,$qe(p+8|0,+C[y>>3],+C[w>>3]),n[p+24>>0]=1}function $qe(p,y,w){p=p|0,y=+y,w=+w,C[p>>3]=y,C[p+8>>3]=w}function fbe(){return 1472}function $Vt(p,y){return p=+p,y=+y,eWt(p,y)|0}function eWt(p,y){p=+p,y=+y;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,le=G+4|0,Ge=G+8|0,Xe=G,X=Lb(8)|0,w=X,U=ju(16)|0,Sw(le,p),p=+fl(le,p),Sw(Ge,y),$qe(U,p,+fl(Ge,y)),Ge=w+4|0,o[Ge>>2]=U,U=ju(8)|0,Ge=o[Ge>>2]|0,o[Xe>>2]=0,o[le>>2]=o[Xe>>2],Ibe(U,Ge,le),o[X>>2]=U,B=G,w|0}function Ibe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1452,o[w+12>>2]=y,o[p+4>>2]=w}function tWt(p){p=p|0,wz(p),ti(p)}function rLe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function fU(p){p=p|0,ti(p)}function rWt(){var p=0;return n[7928]|0||(nLe(10488),fu(59,10488,J|0)|0,p=7928,o[p>>2]=1,o[p+4>>2]=0),Xr(10488)|0||nLe(10488),10488}function nLe(p){p=p|0,Zb(p),U7(p,60)}function hbe(p){p=p|0,iLe(p+24|0)}function iLe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Zb(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,6,y,FW()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Ga(p){p=p|0,lg(p)}function lg(p){p=p|0,tm(p)}function tm(p){p=p|0,Mne(p+8|0),n[p+24>>0]=1}function Mne(p){p=p|0,o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,o[p+12>>2]=0}function FW(){return 1492}function mbe(){return Fw()|0}function Fw(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0;return y=B,B=B+16|0,X=y+4|0,le=y,w=Lb(8)|0,p=w,G=ju(16)|0,Mne(G),U=p+4|0,o[U>>2]=G,G=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],Ibe(G,U,X),o[w>>2]=G,B=y,p|0}function R3(){var p=0;return n[7936]|0||(Fx(10524),fu(25,10524,J|0)|0,p=7936,o[p>>2]=1,o[p+4>>2]=0),10524}function h1(p,y){p=p|0,y=y|0,o[p>>2]=$Y()|0,o[p+4>>2]=sLe()|0,o[p+12>>2]=y,o[p+8>>2]=oLe()|0,o[p+32>>2]=7}function $Y(){return 11700}function sLe(){return 1484}function oLe(){return K7()|0}function c_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(aLe(w),ti(w)):y|0&&ti(y)}function aLe(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function Fx(p){p=p|0,Hc(p)}function e$e(p,y,w){p=p|0,y=y|0,w=w|0,p=hf(y)|0,y=nWt(w)|0,w=t$e(w,0)|0,dLe(p,y,w,cLe()|0,0)}function nWt(p){return p=p|0,p|0}function t$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=cLe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(TAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(RAe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function cLe(){var p=0,y=0;if(n[7944]|0||(Cbe(10568),fu(61,10568,J|0)|0,y=7944,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10568)|0)){p=10568,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Cbe(10568)}return 10568}function Cbe(p){p=p|0,eQ(p)}function _be(p){p=p|0,Zw(p+24|0)}function Zw(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function eQ(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,17,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hne(p){return p=p|0,q7(o[(lLe(p)|0)>>2]|0)|0}function lLe(p){return p=p|0,(o[(cLe()|0)+24>>2]|0)+(p<<3)|0}function q7(p){return p=p|0,xJ(kz[p&7]()|0)|0}function TAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function RAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Yne(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,$D(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,TAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,ybe(p,X),bbe(X),B=Ge;return}}function Yne(p){return p=p|0,536870911}function $D(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function ybe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function bbe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function zm(){Zx()}function Zx(){NAe(10604)}function NAe(p){p=p|0,Hd(p,4955)}function Hd(p,y){p=p|0,y=y|0;var w=0;w=T0()|0,o[p>>2]=w,Qne(w,y),kF(o[p>>2]|0)}function T0(){var p=0;return n[7952]|0||(ez(10612),fu(25,10612,J|0)|0,p=7952,o[p>>2]=1,o[p+4>>2]=0),10612}function Qne(p,y){p=p|0,y=y|0,o[p>>2]=uLe()|0,o[p+4>>2]=DAe()|0,o[p+12>>2]=y,o[p+8>>2]=gLe()|0,o[p+32>>2]=8}function kF(p){p=p|0;var y=0,w=0;y=B,B=B+16|0,w=y,ZW()|0,o[w>>2]=p,xF(10608,w),B=y}function ZW(){return n[11714]|0||(o[2652]=0,fu(62,10608,J|0)|0,n[11714]=1),10608}function xF(p,y){p=p|0,y=y|0;var w=0;w=ju(8)|0,o[w+4>>2]=o[y>>2],o[w>>2]=o[p>>2],o[p>>2]=w}function $7(p){p=p|0,Ebe(p)}function Ebe(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function uLe(){return 11715}function DAe(){return 1496}function gLe(){return oI()|0}function Sbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(ALe(w),ti(w)):y|0&&ti(y)}function ALe(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function ez(p){p=p|0,Hc(p)}function iWt(p,y){p=p|0,y=y|0;var w=0,G=0;ZW()|0,w=o[2652]|0;e:do if(w|0){for(;G=o[w+4>>2]|0,!(G|0&&!(m$e(tz(G)|0,p)|0));)if(w=o[w>>2]|0,!w)break e;sWt(G,y)}while(!1)}function tz(p){return p=p|0,o[p+12>>2]|0}function sWt(p,y){p=p|0,y=y|0;var w=0;p=p+36|0,w=o[p>>2]|0,w|0&&(Eb(w),ti(w)),w=ju(4)|0,mB(w,y),o[p>>2]=w}function LW(){return n[11716]|0||(o[2664]=0,fu(63,10656,J|0)|0,n[11716]=1),10656}function vbe(){var p=0;return n[11717]|0?p=o[2665]|0:(oWt(),o[2665]=1504,n[11717]=1,p=1504),p|0}function oWt(){n[11740]|0||(n[11718]=Ku(Ku(8,0)|0,0)|0,n[11719]=Ku(Ku(0,0)|0,0)|0,n[11720]=Ku(Ku(0,16)|0,0)|0,n[11721]=Ku(Ku(8,0)|0,0)|0,n[11722]=Ku(Ku(0,0)|0,0)|0,n[11723]=Ku(Ku(8,0)|0,0)|0,n[11724]=Ku(Ku(0,0)|0,0)|0,n[11725]=Ku(Ku(8,0)|0,0)|0,n[11726]=Ku(Ku(0,0)|0,0)|0,n[11727]=Ku(Ku(8,0)|0,0)|0,n[11728]=Ku(Ku(0,0)|0,0)|0,n[11729]=Ku(Ku(0,0)|0,32)|0,n[11730]=Ku(Ku(0,0)|0,32)|0,n[11740]=1)}function Bbe(){return 1572}function dLe(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0;U=B,B=B+32|0,ht=U+16|0,St=U+12|0,Xe=U+8|0,Ge=U+4|0,le=U,o[ht>>2]=p,o[St>>2]=y,o[Xe>>2]=w,o[Ge>>2]=G,o[le>>2]=X,LW()|0,wbe(10656,ht,St,Xe,Ge,le),B=U}function wbe(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0;le=ju(24)|0,Rb(le+4|0,o[y>>2]|0,o[w>>2]|0,o[G>>2]|0,o[X>>2]|0,o[U>>2]|0),o[le>>2]=o[p>>2],o[p>>2]=le}function N3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0;if(So=B,B=B+32|0,zi=So+20|0,Un=So+8|0,Ds=So+4|0,Si=So,y=o[y>>2]|0,y|0){Ks=zi+4|0,Xe=zi+8|0,St=Un+4|0,ht=Un+8|0,rr=Un+8|0,an=zi+8|0;do{if(le=y+4|0,Ge=IU(le)|0,Ge|0){if(X=m1(Ge)|0,o[zi>>2]=0,o[Ks>>2]=0,o[Xe>>2]=0,G=(kAe(Ge)|0)+1|0,aWt(zi,G),G|0)for(;G=G+-1|0,GB(Un,o[X>>2]|0),U=o[Ks>>2]|0,U>>>0<(o[an>>2]|0)>>>0?(o[U>>2]=o[Un>>2],o[Ks>>2]=(o[Ks>>2]|0)+4):fN(zi,Un),G;)X=X+4|0;G=Zy(Ge)|0,o[Un>>2]=0,o[St>>2]=0,o[ht>>2]=0;e:do if(o[G>>2]|0)for(X=0,U=0;;){if((X|0)==(U|0)?xAe(Un,G):(o[X>>2]=o[G>>2],o[St>>2]=(o[St>>2]|0)+4),G=G+4|0,!(o[G>>2]|0))break e;X=o[St>>2]|0,U=o[rr>>2]|0}while(!1);o[Ds>>2]=ek(le)|0,o[Si>>2]=Xr(Ge)|0,tk(w,p,Ds,Si,zi,Un),Iv(Un),zL(zi)}y=o[y>>2]|0}while(y|0)}B=So}function IU(p){return p=p|0,o[p+12>>2]|0}function m1(p){return p=p|0,o[p+12>>2]|0}function kAe(p){return p=p|0,o[p+16>>2]|0}function aWt(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;X=B,B=B+32|0,w=X,G=o[p>>2]|0,(o[p+8>>2]|0)-G>>2>>>0>>0&&(Dbe(w,y,(o[p+4>>2]|0)-G>>2,p+8|0),hN(p,w),la(w)),B=X}function fN(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;if(le=B,B=B+32|0,w=le,G=p+4|0,X=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=LAe(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,St=(o[p+8>>2]|0)-Ge|0,Xe=St>>1,Dbe(w,St>>2>>>0>>1>>>0?Xe>>>0>>0?X:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,hN(p,w),la(w),B=le;return}}function Zy(p){return p=p|0,o[p+8>>2]|0}function xAe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;if(le=B,B=B+32|0,w=le,G=p+4|0,X=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=x3(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,St=(o[p+8>>2]|0)-Ge|0,Xe=St>>1,Ly(w,St>>2>>>0>>1>>>0?Xe>>>0>>0?X:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,IN(p,w),sz(w),B=le;return}}function ek(p){return p=p|0,o[p>>2]|0}function tk(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,D3(p,y,w,G,X,U)}function Iv(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function zL(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function D3(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;le=B,B=B+48|0,ht=le+40|0,Ge=le+32|0,rr=le+24|0,Xe=le+12|0,St=le,Vw(Ge),p=tI(p)|0,o[rr>>2]=o[y>>2],w=o[w>>2]|0,G=o[G>>2]|0,rz(Xe,X),pLe(St,U),o[ht>>2]=o[rr>>2],fLe(p,ht,w,G,Xe,St),Iv(St),zL(Xe),uS(Ge),B=le}function rz(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(iz(p,G),cWt(p,o[y>>2]|0,o[w>>2]|0,G))}function pLe(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(mU(p,G),ZAe(p,o[y>>2]|0,o[w>>2]|0,G))}function fLe(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;le=B,B=B+32|0,ht=le+28|0,rr=le+24|0,Ge=le+12|0,Xe=le,St=Bb(Xne()|0)|0,o[rr>>2]=o[y>>2],o[ht>>2]=o[rr>>2],y=k3(ht)|0,w=ILe(w)|0,G=GAe(G)|0,o[Ge>>2]=o[X>>2],ht=X+4|0,o[Ge+4>>2]=o[ht>>2],rr=X+8|0,o[Ge+8>>2]=o[rr>>2],o[rr>>2]=0,o[ht>>2]=0,o[X>>2]=0,X=SE(Ge)|0,o[Xe>>2]=o[U>>2],ht=U+4|0,o[Xe+4>>2]=o[ht>>2],rr=U+8|0,o[Xe+8>>2]=o[rr>>2],o[rr>>2]=0,o[ht>>2]=0,o[U>>2]=0,Ql(0,St|0,p|0,y|0,w|0,G|0,X|0,nz(Xe)|0)|0,Iv(Xe),zL(Ge),B=le}function Xne(){var p=0;return n[7968]|0||(d2(10708),p=7968,o[p>>2]=1,o[p+4>>2]=0),10708}function k3(p){return p=p|0,FAe(p)|0}function ILe(p){return p=p|0,Tbe(p)|0}function GAe(p){return p=p|0,xJ(p)|0}function SE(p){return p=p|0,uy(p)|0}function nz(p){return p=p|0,hLe(p)|0}function hLe(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Lb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=Tbe(o[(o[p>>2]|0)+(y<<2)>>2]|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function Tbe(p){return p=p|0,p|0}function uy(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Lb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=FAe((o[p>>2]|0)+(y<<2)|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function FAe(p){p=p|0;var y=0,w=0,G=0,X=0;return X=B,B=B+32|0,y=X+12|0,w=X,G=Gh(r$e()|0)|0,G?(l1(y,G),Nb(w,y),sEe(p,w),p=CE(y)|0):p=Rbe(p)|0,B=X,p|0}function r$e(){var p=0;return n[7960]|0||(aI(10664),fu(25,10664,J|0)|0,p=7960,o[p>>2]=1,o[p+4>>2]=0),10664}function Rbe(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,X=w+4|0,le=w,G=Lb(8)|0,y=G,Ge=ju(4)|0,o[Ge>>2]=o[p>>2],U=y+4|0,o[U>>2]=Ge,p=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],hU(p,U,X),o[G>>2]=p,B=w,y|0}function hU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1656,o[w+12>>2]=y,o[p+4>>2]=w}function Jne(p){p=p|0,wz(p),ti(p)}function Nbe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function hv(p){p=p|0,ti(p)}function aI(p){p=p|0,Hc(p)}function d2(p){p=p|0,ky(p,LC()|0,5)}function LC(){return 1676}function mU(p,y){p=p|0,y=y|0;var w=0;if((x3(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=ju(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function ZAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Yd(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function x3(p){return p=p|0,1073741823}function iz(p,y){p=p|0,y=y|0;var w=0;if((LAe(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=ju(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function cWt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Yd(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function LAe(p){return p=p|0,1073741823}function Ly(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{X=ju(y<<2)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<2)}function IN(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>2)<<2)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function sz(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function Dbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{X=ju(y<<2)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<2)}function hN(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>2)<<2)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function la(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function VAe(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(Un=B,B=B+32|0,ht=Un+20|0,rr=Un+12|0,St=Un+16|0,an=Un+4|0,Ks=Un,zi=Un+8|0,Ge=vbe()|0,U=o[Ge>>2]|0,le=o[U>>2]|0,le|0)for(Xe=o[Ge+8>>2]|0,Ge=o[Ge+4>>2]|0;GB(ht,le),mLe(p,ht,Ge,Xe),U=U+4|0,le=o[U>>2]|0,le;)Xe=Xe+1|0,Ge=Ge+1|0;if(U=Bbe()|0,le=o[U>>2]|0,le|0)do GB(ht,le),o[rr>>2]=o[U+4>>2],kbe(y,ht,rr),U=U+8|0,le=o[U>>2]|0;while(le|0);if(U=o[(ZW()|0)>>2]|0,U|0)do y=o[U+4>>2]|0,GB(ht,o[(Vy(y)|0)>>2]|0),o[rr>>2]=tz(y)|0,tQ(w,ht,rr),U=o[U>>2]|0;while(U|0);if(GB(St,0),U=LW()|0,o[ht>>2]=o[St>>2],N3(ht,U,X),U=o[(ZW()|0)>>2]|0,U|0){p=ht+4|0,y=ht+8|0,w=ht+8|0;do{if(Xe=o[U+4>>2]|0,GB(rr,o[(Vy(Xe)|0)>>2]|0),bp(an,WAe(Xe)|0),le=o[an>>2]|0,le|0){o[ht>>2]=0,o[p>>2]=0,o[y>>2]=0;do GB(Ks,o[(Vy(o[le+4>>2]|0)|0)>>2]|0),Ge=o[p>>2]|0,Ge>>>0<(o[w>>2]|0)>>>0?(o[Ge>>2]=o[Ks>>2],o[p>>2]=(o[p>>2]|0)+4):fN(ht,Ks),le=o[le>>2]|0;while(le|0);xbe(G,rr,ht),zL(ht)}o[zi>>2]=o[rr>>2],St=Une(Xe)|0,o[ht>>2]=o[zi>>2],N3(ht,St,X),Rr(an),U=o[U>>2]|0}while(U|0)}B=Un}function mLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,_Le(p,y,w,G)}function kbe(p,y,w){p=p|0,y=y|0,w=w|0,s$e(p,y,w)}function Vy(p){return p=p|0,p|0}function tQ(p,y,w){p=p|0,y=y|0,w=w|0,AWt(p,y,w)}function WAe(p){return p=p|0,p+16|0}function bp(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;if(U=B,B=B+16|0,X=U+8|0,w=U,o[p>>2]=0,G=o[y>>2]|0,o[X>>2]=G,o[w>>2]=p,w=gWt(w)|0,G|0){if(G=ju(12)|0,le=(Gbe(X)|0)+4|0,p=o[le+4>>2]|0,y=G+4|0,o[y>>2]=o[le>>2],o[y+4>>2]=p,y=o[o[X>>2]>>2]|0,o[X>>2]=y,!y)p=G;else for(y=G;p=ju(12)|0,Xe=(Gbe(X)|0)+4|0,Ge=o[Xe+4>>2]|0,le=p+4|0,o[le>>2]=o[Xe>>2],o[le+4>>2]=Ge,o[y>>2]=p,le=o[o[X>>2]>>2]|0,o[X>>2]=le,le;)y=p;o[p>>2]=o[w>>2],o[w>>2]=G}B=U}function xbe(p,y,w){p=p|0,y=y|0,w=w|0,CU(p,y,w)}function Une(p){return p=p|0,p+24|0}function CU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+24|0,X=G+16|0,Ge=G+12|0,U=G,Vw(X),p=tI(p)|0,o[Ge>>2]=o[y>>2],rz(U,w),o[le>>2]=o[Ge>>2],CLe(p,le,U),zL(U),uS(X),B=G}function CLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+16|0,Ge=G+12|0,X=G,U=Bb(_U()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=k3(le)|0,o[X>>2]=o[w>>2],le=w+4|0,o[X+4>>2]=o[le>>2],Ge=w+8|0,o[X+8>>2]=o[Ge>>2],o[Ge>>2]=0,o[le>>2]=0,o[w>>2]=0,Ei(0,U|0,p|0,y|0,SE(X)|0)|0,zL(X),B=G}function _U(){var p=0;return n[7976]|0||(lWt(10720),p=7976,o[p>>2]=1,o[p+4>>2]=0),10720}function lWt(p){p=p|0,ky(p,uWt()|0,2)}function uWt(){return 1732}function gWt(p){return p=p|0,o[p>>2]|0}function Gbe(p){return p=p|0,o[p>>2]|0}function AWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,X=G+8|0,le=G,Vw(X),p=tI(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],n$e(p,U,w),uS(X),B=G}function n$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,U=G+4|0,le=G,X=Bb(dWt()|0)|0,o[le>>2]=o[y>>2],o[U>>2]=o[le>>2],y=k3(U)|0,Ei(0,X|0,p|0,y|0,ILe(w)|0)|0,B=G}function dWt(){var p=0;return n[7984]|0||(VC(10732),p=7984,o[p>>2]=1,o[p+4>>2]=0),10732}function VC(p){p=p|0,ky(p,i$e()|0,2)}function i$e(){return 1744}function s$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,X=G+8|0,le=G,Vw(X),p=tI(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],n$e(p,U,w),uS(X),B=G}function _Le(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+32|0,le=X+16|0,U=X+8|0,Ge=X,Vw(U),p=tI(p)|0,o[Ge>>2]=o[y>>2],w=n[w>>0]|0,G=n[G>>0]|0,o[le>>2]=o[Ge>>2],mN(p,le,w,G),uS(U),B=X}function mN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,le=X+4|0,Ge=X,U=Bb(OAe()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=k3(le)|0,w=yU(w)|0,aA(0,U|0,p|0,y|0,w|0,yU(G)|0)|0,B=X}function OAe(){var p=0;return n[7992]|0||(Bu(10744),p=7992,o[p>>2]=1,o[p+4>>2]=0),10744}function yU(p){return p=p|0,yLe(p)|0}function yLe(p){return p=p|0,p&255|0}function Bu(p){p=p|0,ky(p,rQ()|0,3)}function rQ(){return 1756}function pWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;switch(an=B,B=B+32|0,Ge=an+8|0,Xe=an+4|0,St=an+20|0,ht=an,fW(p,0),G=iEe(y)|0,o[Ge>>2]=0,rr=Ge+4|0,o[rr>>2]=0,o[Ge+8>>2]=0,G<<24>>24){case 0:{n[St>>0]=0,o$e(Xe,w,St),qL(p,Xe)|0,i_(Xe);break}case 8:{rr=ade(y)|0,n[St>>0]=8,GB(ht,o[rr+4>>2]|0),rm(Xe,w,St,ht,rr+8|0),qL(p,Xe)|0,i_(Xe);break}case 9:{if(U=ade(y)|0,y=o[U+4>>2]|0,y|0)for(le=Ge+8|0,X=U+12|0;y=y+-1|0,GB(Xe,o[X>>2]|0),G=o[rr>>2]|0,G>>>0<(o[le>>2]|0)>>>0?(o[G>>2]=o[Xe>>2],o[rr>>2]=(o[rr>>2]|0)+4):fN(Ge,Xe),y;)X=X+4|0;n[St>>0]=9,GB(ht,o[U+8>>2]|0),nQ(Xe,w,St,ht,Ge),qL(p,Xe)|0,i_(Xe);break}default:rr=ade(y)|0,n[St>>0]=G,GB(ht,o[rr+4>>2]|0),kf(Xe,w,St,ht),qL(p,Xe)|0,i_(Xe)}zL(Ge),B=an}function o$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,Vw(X),y=tI(y)|0,Lbe(p,y,n[w>>0]|0),uS(X),B=G}function qL(p,y){p=p|0,y=y|0;var w=0;return w=o[p>>2]|0,w|0&&so(w|0),o[p>>2]=o[y>>2],o[y>>2]=0,p|0}function rm(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+32|0,Ge=U+16|0,le=U+8|0,Xe=U,Vw(le),y=tI(y)|0,w=n[w>>0]|0,o[Xe>>2]=o[G>>2],X=o[X>>2]|0,o[Ge>>2]=o[Xe>>2],a$e(p,y,w,Ge,X),uS(le),B=U}function nQ(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0;U=B,B=B+32|0,Xe=U+24|0,le=U+16|0,St=U+12|0,Ge=U,Vw(le),y=tI(y)|0,w=n[w>>0]|0,o[St>>2]=o[G>>2],rz(Ge,X),o[Xe>>2]=o[St>>2],bLe(p,y,w,Xe,Ge),zL(Ge),uS(le),B=U}function kf(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+32|0,le=X+16|0,U=X+8|0,Ge=X,Vw(U),y=tI(y)|0,w=n[w>>0]|0,o[Ge>>2]=o[G>>2],o[le>>2]=o[Ge>>2],PAe(p,y,w,le),uS(U),B=X}function PAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+4|0,Ge=X,le=Bb(wu()|0)|0,w=yU(w)|0,o[Ge>>2]=o[G>>2],o[U>>2]=o[Ge>>2],Kne(p,Ei(0,le|0,y|0,w|0,k3(U)|0)|0),B=X}function wu(){var p=0;return n[8e3]|0||(Fbe(10756),p=8e3,o[p>>2]=1,o[p+4>>2]=0),10756}function Kne(p,y){p=p|0,y=y|0,fW(p,y)}function Fbe(p){p=p|0,ky(p,oz()|0,2)}function oz(){return 1772}function bLe(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0;U=B,B=B+32|0,Xe=U+16|0,St=U+12|0,le=U,Ge=Bb(fWt()|0)|0,w=yU(w)|0,o[St>>2]=o[G>>2],o[Xe>>2]=o[St>>2],G=k3(Xe)|0,o[le>>2]=o[X>>2],Xe=X+4|0,o[le+4>>2]=o[Xe>>2],St=X+8|0,o[le+8>>2]=o[St>>2],o[St>>2]=0,o[Xe>>2]=0,o[X>>2]=0,Kne(p,aA(0,Ge|0,y|0,w|0,G|0,SE(le)|0)|0),zL(le),B=U}function fWt(){var p=0;return n[8008]|0||(IWt(10768),p=8008,o[p>>2]=1,o[p+4>>2]=0),10768}function IWt(p){p=p|0,ky(p,hWt()|0,3)}function hWt(){return 1784}function a$e(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,Ge=U+4|0,Xe=U,le=Bb(c$e()|0)|0,w=yU(w)|0,o[Xe>>2]=o[G>>2],o[Ge>>2]=o[Xe>>2],G=k3(Ge)|0,Kne(p,aA(0,le|0,y|0,w|0,G|0,GAe(X)|0)|0),B=U}function c$e(){var p=0;return n[8016]|0||(MAe(10780),p=8016,o[p>>2]=1,o[p+4>>2]=0),10780}function MAe(p){p=p|0,ky(p,Zbe()|0,3)}function Zbe(){return 1800}function Lbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=Bb(mWt()|0)|0,Kne(p,Ki(0,G|0,y|0,yU(w)|0)|0)}function mWt(){var p=0;return n[8024]|0||(jne(10792),p=8024,o[p>>2]=1,o[p+4>>2]=0),10792}function jne(p){p=p|0,ky(p,l$e()|0,1)}function l$e(){return 1816}function CWt(){_Wt(),zne(),Vbe()}function _Wt(){o[2702]=Tz(65536)|0}function zne(){vLe(10856)}function Vbe(){p$r(10816)}function p$r(p){p=p|0,WC(p,5044),az(p)|0}function WC(p,y){p=p|0,y=y|0;var w=0;w=r$e()|0,o[p>>2]=w,WW(w,y),kF(o[p>>2]|0)}function az(p){p=p|0;var y=0;return y=o[p>>2]|0,RF(y,ELe()|0),p|0}function ELe(){var p=0;return n[8032]|0||(Hg(10820),fu(64,10820,J|0)|0,p=8032,o[p>>2]=1,o[p+4>>2]=0),Xr(10820)|0||Hg(10820),10820}function Hg(p){p=p|0,SLe(p),U7(p,25)}function o0(p){p=p|0,G_(p+24|0)}function G_(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function SLe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,18,y,qne()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function lS(p,y){p=p|0,y=y|0,Lw(p,y)}function Lw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;w=B,B=B+16|0,G=w,X=w+4|0,iS(X,y),o[G>>2]=aN(X,y)|0,iQ(p,G),B=w}function iQ(p,y){p=p|0,y=y|0,cz(p+4|0,o[y>>2]|0),n[p+8>>0]=1}function cz(p,y){p=p|0,y=y|0,o[p>>2]=y}function qne(){return 1824}function VW(p){return p=p|0,Wy(p)|0}function Wy(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,X=w+4|0,le=w,G=Lb(8)|0,y=G,Ge=ju(4)|0,iS(X,p),cz(Ge,aN(X,p)|0),U=y+4|0,o[U>>2]=Ge,p=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],hU(p,U,X),o[G>>2]=p,B=w,y|0}function Lb(p){p=p|0;var y=0,w=0;return p=p+7&-8,p>>>0<=32768&&(y=o[2701]|0,p>>>0<=(65536-y|0)>>>0)?(w=(o[2702]|0)+y|0,o[2701]=y+p,p=w):(p=Tz(p+8|0)|0,o[p>>2]=o[2703],o[2703]=p,p=p+8|0),p|0}function WW(p,y){p=p|0,y=y|0,o[p>>2]=HAe()|0,o[p+4>>2]=GF()|0,o[p+12>>2]=y,o[p+8>>2]=$ne()|0,o[p+32>>2]=9}function HAe(){return 11744}function GF(){return 1832}function $ne(){return K7()|0}function eie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(YAe(w),ti(w)):y|0&&ti(y)}function YAe(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function vLe(p){p=p|0,BLe(p,5052),bU(p)|0,wLe(p,5058,26)|0,l_(p,5069,1)|0,QAe(p,5077,10)|0,Wbe(p,5087,19)|0,TLe(p,5094,27)|0}function BLe(p,y){p=p|0,y=y|0;var w=0;w=yz()|0,o[p>>2]=w,sde(w,y),kF(o[p>>2]|0)}function bU(p){p=p|0;var y=0;return y=o[p>>2]|0,RF(y,QLe()|0),p|0}function wLe(p,y,w){return p=p|0,y=y|0,w=w|0,$be(p,hf(y)|0,w,0),p|0}function l_(p,y,w){return p=p|0,y=y|0,w=w|0,oie(p,hf(y)|0,w,0),p|0}function QAe(p,y,w){return p=p|0,y=y|0,w=w|0,TWt(p,hf(y)|0,w,0),p|0}function Wbe(p,y,w){return p=p|0,y=y|0,w=w|0,d$e(p,hf(y)|0,w,0),p|0}function Obe(p,y){p=p|0,y=y|0;var w=0,G=0;e:for(;;){for(w=o[2703]|0;;){if((w|0)==(y|0))break e;if(G=o[w>>2]|0,o[2703]=G,!w)w=G;else break}ti(w)}o[2701]=p}function TLe(p,y,w){return p=p|0,y=y|0,w=w|0,RLe(p,hf(y)|0,w,0),p|0}function RLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=lz()|0,p=XAe(w)|0,Sd(U,y,X,p,tie(w,G)|0,G)}function lz(){var p=0,y=0;if(n[8040]|0||(JAe(10860),fu(65,10860,J|0)|0,y=8040,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10860)|0)){p=10860,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));JAe(10860)}return 10860}function XAe(p){return p=p|0,p|0}function tie(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=lz()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(rie(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Pbe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function rie(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Pbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Mbe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,yWt(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,rie(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,u$e(p,X),bWt(X),B=Ge;return}}function Mbe(p){return p=p|0,536870911}function yWt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function u$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function bWt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function JAe(p){p=p|0,EWt(p)}function NLe(p){p=p|0,g$e(p+24|0)}function g$e(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function EWt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,SWt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function SWt(){return 1840}function vWt(p,y,w){p=p|0,y=y|0,w=w|0,A$e(o[(DLe(p)|0)>>2]|0,y,w)}function DLe(p){return p=p|0,(o[(lz()|0)+24>>2]|0)+(p<<3)|0}function A$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;G=B,B=B+16|0,U=G+1|0,X=G,iS(U,y),y=aN(U,y)|0,iS(X,w),w=aN(X,w)|0,nk[p&31](y,w),B=G}function d$e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=Hbe()|0,p=kLe(w)|0,Sd(U,y,X,p,uz(w,G)|0,G)}function Hbe(){var p=0,y=0;if(n[8048]|0||(rk(10896),fu(66,10896,J|0)|0,y=8048,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10896)|0)){p=10896,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));rk(10896)}return 10896}function kLe(p){return p=p|0,p|0}function uz(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=Hbe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(nie(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Ybe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function nie(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Ybe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Qbe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,UAe(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,nie(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,xLe(p,X),KAe(X),B=Ge;return}}function Qbe(p){return p=p|0,536870911}function UAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function xLe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function KAe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function rk(p){p=p|0,wWt(p)}function Xbe(p){p=p|0,BWt(p+24|0)}function BWt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function wWt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,jAe()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function jAe(){return 1852}function zAe(p,y){return p=p|0,y=y|0,Jbe(o[(qAe(p)|0)>>2]|0,y)|0}function qAe(p){return p=p|0,(o[(Hbe()|0)+24>>2]|0)+(p<<3)|0}function Jbe(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,iS(G,y),y=aN(G,y)|0,y=xJ(yC[p&31](y)|0)|0,B=w,y|0}function TWt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=GLe()|0,p=RWt(w)|0,Sd(U,y,X,p,EU(w,G)|0,G)}function GLe(){var p=0,y=0;if(n[8056]|0||(Az(10932),fu(67,10932,J|0)|0,y=8056,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10932)|0)){p=10932,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Az(10932)}return 10932}function RWt(p){return p=p|0,p|0}function EU(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=GLe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?($Ae(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(NWt(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function $Ae(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function NWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=ede(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,iie(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,$Ae(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,tde(p,X),gz(X),B=Ge;return}}function ede(p){return p=p|0,536870911}function iie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function tde(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function gz(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Az(p){p=p|0,G3(p)}function DWt(p){p=p|0,CN(p+24|0)}function CN(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function G3(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,7,y,FLe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function FLe(){return 1860}function ZLe(p,y,w){return p=p|0,y=y|0,w=w|0,LLe(o[(kWt(p)|0)>>2]|0,y,w)|0}function kWt(p){return p=p|0,(o[(GLe()|0)+24>>2]|0)+(p<<3)|0}function LLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+32|0,le=G+12|0,U=G+8|0,Ge=G,Xe=G+16|0,X=G+4|0,xWt(Xe,y),Ube(Ge,Xe,y),Nx(X,w),w=bF(X,w)|0,o[le>>2]=o[Ge>>2],$T[p&15](U,le,w),w=p$e(U)|0,i_(U),vB(X),B=G,w|0}function xWt(p,y){p=p|0,y=y|0}function Ube(p,y,w){p=p|0,y=y|0,w=w|0,sie(p,w)}function p$e(p){return p=p|0,tI(p)|0}function sie(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;X=B,B=B+16|0,w=X,G=y,G&1?(VLe(w,0),_I(G|0,w|0)|0,a0(p,w),WLe(w)):o[p>>2]=o[y>>2],B=X}function VLe(p,y){p=p|0,y=y|0,j(p,y),o[p+4>>2]=0,n[p+8>>0]=0}function a0(p,y){p=p|0,y=y|0,o[p>>2]=o[y+4>>2]}function WLe(p){p=p|0,n[p+8>>0]=0}function oie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=_N()|0,p=sQ(w)|0,Sd(U,y,X,p,f$e(w,G)|0,G)}function _N(){var p=0,y=0;if(n[8064]|0||(jT(10968),fu(68,10968,J|0)|0,y=8064,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10968)|0)){p=10968,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));jT(10968)}return 10968}function sQ(p){return p=p|0,p|0}function f$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=_N()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(dz(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(kB(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function dz(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function kB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=rde(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,pz(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,dz(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,fz(p,X),I$e(X),B=Ge;return}}function rde(p){return p=p|0,536870911}function pz(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function fz(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function I$e(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function jT(p){p=p|0,jbe(p)}function Iz(p){p=p|0,Kbe(p+24|0)}function Kbe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function jbe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,1,y,zbe()|0,5),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function zbe(){return 1872}function ug(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,qbe(o[(OLe(p)|0)>>2]|0,y,w,G,X,U)}function OLe(p){return p=p|0,(o[(_N()|0)+24>>2]|0)+(p<<3)|0}function qbe(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;le=B,B=B+32|0,Ge=le+16|0,Xe=le+12|0,St=le+8|0,ht=le+4|0,rr=le,Nx(Ge,y),y=bF(Ge,y)|0,Nx(Xe,w),w=bF(Xe,w)|0,Nx(St,G),G=bF(St,G)|0,Nx(ht,X),X=bF(ht,X)|0,Nx(rr,U),U=bF(rr,U)|0,N$e[p&1](y,w,G,X,U),vB(rr),vB(ht),vB(St),vB(Xe),vB(Ge),B=le}function $be(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=F3()|0,p=PLe(w)|0,Sd(U,y,X,p,h$e(w,G)|0,G)}function F3(){var p=0,y=0;if(n[8072]|0||(aie(11004),fu(69,11004,J|0)|0,y=8072,o[y>>2]=1,o[y+4>>2]=0),!(Xr(11004)|0)){p=11004,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));aie(11004)}return 11004}function PLe(p){return p=p|0,p|0}function h$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=F3()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(SU(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(nde(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function SU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function nde(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=hz(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,OW(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,SU(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,MLe(p,X),eEe(X),B=Ge;return}}function hz(p){return p=p|0,536870911}function OW(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function MLe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function eEe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function aie(p){p=p|0,FWt(p)}function $L(p){p=p|0,GWt(p+24|0)}function GWt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function FWt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,12,y,ZWt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ZWt(){return 1896}function HLe(p,y,w){p=p|0,y=y|0,w=w|0,mz(o[(YLe(p)|0)>>2]|0,y,w)}function YLe(p){return p=p|0,(o[(F3()|0)+24>>2]|0)+(p<<3)|0}function mz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;G=B,B=B+16|0,U=G+4|0,X=G,vU(U,y),y=xB(U,y)|0,Nx(X,w),w=bF(X,w)|0,nk[p&31](y,w),vB(X),B=G}function vU(p,y){p=p|0,y=y|0}function xB(p,y){return p=p|0,y=y|0,tEe(y)|0}function tEe(p){return p=p|0,p|0}function QLe(){var p=0;return n[8080]|0||(UA(11040),fu(70,11040,J|0)|0,p=8080,o[p>>2]=1,o[p+4>>2]=0),Xr(11040)|0||UA(11040),11040}function UA(p){p=p|0,rEe(p),U7(p,71)}function e9(p){p=p|0,LWt(p+24|0)}function LWt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function rEe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,7,y,ide()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function XLe(p){p=p|0,Cz(p)}function Cz(p){p=p|0,JLe(p)}function JLe(p){p=p|0,n[p+8>>0]=1}function ide(){return 1936}function _z(){return ULe()|0}function ULe(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0;return y=B,B=B+16|0,X=y+4|0,le=y,w=Lb(8)|0,p=w,U=p+4|0,o[U>>2]=ju(1)|0,G=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],FF(G,U,X),o[w>>2]=G,B=y,p|0}function FF(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1916,o[w+12>>2]=y,o[p+4>>2]=w}function PW(p){p=p|0,wz(p),ti(p)}function yN(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function cie(p){p=p|0,ti(p)}function yz(){var p=0;return n[8088]|0||(ode(11076),fu(25,11076,J|0)|0,p=8088,o[p>>2]=1,o[p+4>>2]=0),11076}function sde(p,y){p=p|0,y=y|0,o[p>>2]=oQ()|0,o[p+4>>2]=lie()|0,o[p+12>>2]=y,o[p+8>>2]=uie()|0,o[p+32>>2]=10}function oQ(){return 11745}function lie(){return 1940}function uie(){return oI()|0}function nEe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(TW(G,896)|0)==512?w|0&&(KLe(w),ti(w)):y|0&&ti(y)}function KLe(p){p=p|0,p=o[p+4>>2]|0,p|0&&RU(p)}function ode(p){p=p|0,Hc(p)}function GB(p,y){p=p|0,y=y|0,o[p>>2]=y}function ade(p){return p=p|0,o[p>>2]|0}function iEe(p){return p=p|0,n[o[p>>2]>>0]|0}function sEe(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,o[G>>2]=o[p>>2],cde(y,G)|0,B=w}function cde(p,y){p=p|0,y=y|0;var w=0;return w=bz(o[p>>2]|0,y)|0,y=p+4|0,o[(o[y>>2]|0)+8>>2]=w,o[(o[y>>2]|0)+8>>2]|0}function bz(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,Vw(G),p=tI(p)|0,y=jLe(p,o[y>>2]|0)|0,uS(G),B=w,y|0}function Vw(p){p=p|0,o[p>>2]=o[2701],o[p+4>>2]=o[2703]}function jLe(p,y){p=p|0,y=y|0;var w=0;return w=Bb(Ez()|0)|0,Ki(0,w|0,p|0,GAe(y)|0)|0}function uS(p){p=p|0,Obe(o[p>>2]|0,o[p+4>>2]|0)}function Ez(){var p=0;return n[8096]|0||(oEe(11120),p=8096,o[p>>2]=1,o[p+4>>2]=0),11120}function oEe(p){p=p|0,ky(p,p2()|0,1)}function p2(){return 1948}function f2(){aQ()}function aQ(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(zi=B,B=B+16|0,ht=zi+4|0,rr=zi,Kl(65536,10804,o[2702]|0,10812),w=vbe()|0,y=o[w>>2]|0,p=o[y>>2]|0,p|0)for(G=o[w+8>>2]|0,w=o[w+4>>2]|0;Do(p|0,l[w>>0]|0|0,n[G>>0]|0),y=y+4|0,p=o[y>>2]|0,p;)G=G+1|0,w=w+1|0;if(p=Bbe()|0,y=o[p>>2]|0,y|0)do Pt(y|0,o[p+4>>2]|0),p=p+8|0,y=o[p>>2]|0;while(y|0);Pt(zLe()|0,5167),St=ZW()|0,p=o[St>>2]|0;e:do if(p|0){do VWt(o[p+4>>2]|0),p=o[p>>2]|0;while(p|0);if(p=o[St>>2]|0,p|0){Xe=St;do{for(;X=p,p=o[p>>2]|0,X=o[X+4>>2]|0,!!(Z3(X)|0);)if(o[rr>>2]=Xe,o[ht>>2]=o[rr>>2],lde(St,ht)|0,!p)break e;if(qLe(X),Xe=o[Xe>>2]|0,y=nm(X)|0,U=HA()|0,le=B,B=B+((1*(y<<2)|0)+15&-16)|0,Ge=B,B=B+((1*(y<<2)|0)+15&-16)|0,y=o[(WAe(X)|0)>>2]|0,y|0)for(w=le,G=Ge;o[w>>2]=o[(Vy(o[y+4>>2]|0)|0)>>2],o[G>>2]=o[y+8>>2],y=o[y>>2]|0,y;)w=w+4|0,G=G+4|0;Un=Vy(X)|0,y=$Le(X)|0,w=nm(X)|0,G=aEe(X)|0,Uu(Un|0,y|0,le|0,Ge|0,w|0,G|0,tz(X)|0),Da(U|0)}while(p|0)}}while(!1);if(p=o[(LW()|0)>>2]|0,p|0)do Un=p+4|0,St=IU(Un)|0,X=Zy(St)|0,U=m1(St)|0,le=(kAe(St)|0)+1|0,Ge=cQ(St)|0,Xe=ude(Un)|0,St=Xr(St)|0,ht=ek(Un)|0,rr=Sz(Un)|0,Ru(0,X|0,U|0,le|0,Ge|0,Xe|0,St|0,ht|0,rr|0,gde(Un)|0),p=o[p>>2]|0;while(p|0);p=o[(ZW()|0)>>2]|0;e:do if(p|0){t:for(;;){if(y=o[p+4>>2]|0,y|0&&(an=o[(Vy(y)|0)>>2]|0,Ks=o[(Une(y)|0)>>2]|0,Ks|0)){w=Ks;do{y=w+4|0,G=IU(y)|0;r:do if(G|0)switch(Xr(G)|0){case 0:break t;case 4:case 3:case 2:{Ge=Zy(G)|0,Xe=m1(G)|0,St=(kAe(G)|0)+1|0,ht=cQ(G)|0,rr=Xr(G)|0,Un=ek(y)|0,Ru(an|0,Ge|0,Xe|0,St|0,ht|0,0,rr|0,Un|0,Sz(y)|0,gde(y)|0);break r}case 1:{le=Zy(G)|0,Ge=m1(G)|0,Xe=(kAe(G)|0)+1|0,St=cQ(G)|0,ht=ude(y)|0,rr=Xr(G)|0,Un=ek(y)|0,Ru(an|0,le|0,Ge|0,Xe|0,St|0,ht|0,rr|0,Un|0,Sz(y)|0,gde(y)|0);break r}case 5:{St=Zy(G)|0,ht=m1(G)|0,rr=(kAe(G)|0)+1|0,Un=cQ(G)|0,Ru(an|0,St|0,ht|0,rr|0,Un|0,Ade(G)|0,Xr(G)|0,0,0,0);break r}default:break r}while(!1);w=o[w>>2]|0}while(w|0)}if(p=o[p>>2]|0,!p)break e}Ko()}while(!1);Yn(),B=zi}function zLe(){return 11703}function VWt(p){p=p|0,n[p+40>>0]=0}function Z3(p){return p=p|0,(n[p+40>>0]|0)!=0|0}function lde(p,y){return p=p|0,y=y|0,y=cEe(y)|0,p=o[y>>2]|0,o[y>>2]=o[p>>2],ti(p),o[y>>2]|0}function qLe(p){p=p|0,n[p+40>>0]=1}function nm(p){return p=p|0,o[p+20>>2]|0}function $Le(p){return p=p|0,o[p+8>>2]|0}function aEe(p){return p=p|0,o[p+32>>2]|0}function cQ(p){return p=p|0,o[p+4>>2]|0}function ude(p){return p=p|0,o[p+4>>2]|0}function Sz(p){return p=p|0,o[p+8>>2]|0}function gde(p){return p=p|0,o[p+16>>2]|0}function Ade(p){return p=p|0,o[p+20>>2]|0}function cEe(p){return p=p|0,o[p>>2]|0}function gie(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,Il=0;Il=B,B=B+16|0,an=Il;do if(p>>>0<245){if(St=p>>>0<11?16:p+11&-8,p=St>>>3,rr=o[2783]|0,w=rr>>>p,w&3|0)return y=(w&1^1)+p|0,p=11172+(y<<1<<2)|0,w=p+8|0,G=o[w>>2]|0,X=G+8|0,U=o[X>>2]|0,(p|0)==(U|0)?o[2783]=rr&~(1<>2]=p,o[w>>2]=U),pi=y<<3,o[G+4>>2]=pi|3,pi=G+pi+4|0,o[pi>>2]=o[pi>>2]|1,pi=X,B=Il,pi|0;if(ht=o[2785]|0,St>>>0>ht>>>0){if(w|0)return y=2<>>12&16,y=y>>>le,w=y>>>5&8,y=y>>>w,X=y>>>2&4,y=y>>>X,p=y>>>1&2,y=y>>>p,G=y>>>1&1,G=(w|le|X|p|G)+(y>>>G)|0,y=11172+(G<<1<<2)|0,p=y+8|0,X=o[p>>2]|0,le=X+8|0,w=o[le>>2]|0,(y|0)==(w|0)?(p=rr&~(1<>2]=y,o[p>>2]=w,p=rr),U=(G<<3)-St|0,o[X+4>>2]=St|3,G=X+St|0,o[G+4>>2]=U|1,o[G+U>>2]=U,ht|0&&(X=o[2788]|0,y=ht>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=X,o[y+12>>2]=X,o[X+8>>2]=y,o[X+12>>2]=w),o[2785]=U,o[2788]=G,pi=le,B=Il,pi|0;if(Ge=o[2784]|0,Ge){if(w=(Ge&0-Ge)+-1|0,le=w>>>12&16,w=w>>>le,U=w>>>5&8,w=w>>>U,Xe=w>>>2&4,w=w>>>Xe,G=w>>>1&2,w=w>>>G,p=w>>>1&1,p=o[11436+((U|le|Xe|G|p)+(w>>>p)<<2)>>2]|0,w=(o[p+4>>2]&-8)-St|0,G=o[p+16+(((o[p+16>>2]|0)==0&1)<<2)>>2]|0,!G)Xe=p,U=w;else{do le=(o[G+4>>2]&-8)-St|0,Xe=le>>>0>>0,w=Xe?le:w,p=Xe?G:p,G=o[G+16+(((o[G+16>>2]|0)==0&1)<<2)>>2]|0;while(G|0);Xe=p,U=w}if(le=Xe+St|0,Xe>>>0>>0){X=o[Xe+24>>2]|0,y=o[Xe+12>>2]|0;do if((y|0)==(Xe|0)){if(p=Xe+20|0,y=o[p>>2]|0,!y&&(p=Xe+16|0,y=o[p>>2]|0,!y)){w=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0,w=y}else w=o[Xe+8>>2]|0,o[w+12>>2]=y,o[y+8>>2]=w,w=y;while(!1);do if(X|0){if(y=o[Xe+28>>2]|0,p=11436+(y<<2)|0,(Xe|0)==(o[p>>2]|0)){if(o[p>>2]=w,!w){o[2784]=Ge&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=X,y=o[Xe+16>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),y=o[Xe+20>>2]|0,y|0&&(o[w+20>>2]=y,o[y+24>>2]=w)}while(!1);return U>>>0<16?(pi=U+St|0,o[Xe+4>>2]=pi|3,pi=Xe+pi+4|0,o[pi>>2]=o[pi>>2]|1):(o[Xe+4>>2]=St|3,o[le+4>>2]=U|1,o[le+U>>2]=U,ht|0&&(G=o[2788]|0,y=ht>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=rr|y,y=w,p=w+8|0),o[p>>2]=G,o[y+12>>2]=G,o[G+8>>2]=y,o[G+12>>2]=w),o[2785]=U,o[2788]=le),pi=Xe+8|0,B=Il,pi|0}else rr=St}else rr=St}else rr=St}else if(p>>>0<=4294967231)if(p=p+11|0,St=p&-8,Xe=o[2784]|0,Xe){G=0-St|0,p=p>>>8,p?St>>>0>16777215?Ge=31:(rr=(p+1048320|0)>>>16&8,ss=p<>>16&4,ss=ss<>>16&2,Ge=14-(ht|rr|Ge)+(ss<>>15)|0,Ge=St>>>(Ge+7|0)&1|Ge<<1):Ge=0,w=o[11436+(Ge<<2)>>2]|0;e:do if(!w)w=0,p=0,ss=57;else for(p=0,le=St<<((Ge|0)==31?0:25-(Ge>>>1)|0),U=0;;){if(X=(o[w+4>>2]&-8)-St|0,X>>>0>>0)if(X)p=w,G=X;else{p=w,G=0,X=w,ss=61;break e}if(X=o[w+20>>2]|0,w=o[w+16+(le>>>31<<2)>>2]|0,U=(X|0)==0|(X|0)==(w|0)?U:X,X=(w|0)==0,X){w=U,ss=57;break}else le=le<<((X^1)&1)}while(!1);if((ss|0)==57){if((w|0)==0&(p|0)==0){if(p=2<>>12&16,rr=rr>>>le,U=rr>>>5&8,rr=rr>>>U,Ge=rr>>>2&4,rr=rr>>>Ge,ht=rr>>>1&2,rr=rr>>>ht,w=rr>>>1&1,p=0,w=o[11436+((U|le|Ge|ht|w)+(rr>>>w)<<2)>>2]|0}w?(X=w,ss=61):(Ge=p,le=G)}if((ss|0)==61)for(;;)if(ss=0,w=(o[X+4>>2]&-8)-St|0,rr=w>>>0>>0,w=rr?w:G,p=rr?X:p,X=o[X+16+(((o[X+16>>2]|0)==0&1)<<2)>>2]|0,X)G=w,ss=61;else{Ge=p,le=w;break}if(Ge|0&&le>>>0<((o[2785]|0)-St|0)>>>0){if(U=Ge+St|0,Ge>>>0>=U>>>0)return pi=0,B=Il,pi|0;X=o[Ge+24>>2]|0,y=o[Ge+12>>2]|0;do if((y|0)==(Ge|0)){if(p=Ge+20|0,y=o[p>>2]|0,!y&&(p=Ge+16|0,y=o[p>>2]|0,!y)){y=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0}else pi=o[Ge+8>>2]|0,o[pi+12>>2]=y,o[y+8>>2]=pi;while(!1);do if(X){if(p=o[Ge+28>>2]|0,w=11436+(p<<2)|0,(Ge|0)==(o[w>>2]|0)){if(o[w>>2]=y,!y){G=Xe&~(1<>2]|0)!=(Ge|0)&1)<<2)>>2]=y,!y){G=Xe;break}o[y+24>>2]=X,p=o[Ge+16>>2]|0,p|0&&(o[y+16>>2]=p,o[p+24>>2]=y),p=o[Ge+20>>2]|0,p&&(o[y+20>>2]=p,o[p+24>>2]=y),G=Xe}else G=Xe;while(!1);do if(le>>>0>=16){if(o[Ge+4>>2]=St|3,o[U+4>>2]=le|1,o[U+le>>2]=le,y=le>>>3,le>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=U,o[y+12>>2]=U,o[U+8>>2]=y,o[U+12>>2]=w;break}if(y=le>>>8,y?le>>>0>16777215?y=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=le>>>(y+7|0)&1|y<<1):y=0,w=11436+(y<<2)|0,o[U+28>>2]=y,p=U+16|0,o[p+4>>2]=0,o[p>>2]=0,p=1<>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}for(p=le<<((y|0)==31?0:25-(y>>>1)|0),w=o[w>>2]|0;;){if((o[w+4>>2]&-8|0)==(le|0)){ss=97;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=96;break}}if((ss|0)==96){o[G>>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}else if((ss|0)==97){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=U,o[ss>>2]=U,o[U+8>>2]=pi,o[U+12>>2]=w,o[U+24>>2]=0;break}}else pi=le+St|0,o[Ge+4>>2]=pi|3,pi=Ge+pi+4|0,o[pi>>2]=o[pi>>2]|1;while(!1);return pi=Ge+8|0,B=Il,pi|0}else rr=St}else rr=St;else rr=-1;while(!1);if(w=o[2785]|0,w>>>0>=rr>>>0)return y=w-rr|0,p=o[2788]|0,y>>>0>15?(pi=p+rr|0,o[2788]=pi,o[2785]=y,o[pi+4>>2]=y|1,o[pi+y>>2]=y,o[p+4>>2]=rr|3):(o[2785]=0,o[2788]=0,o[p+4>>2]=w|3,pi=p+w+4|0,o[pi>>2]=o[pi>>2]|1),pi=p+8|0,B=Il,pi|0;if(le=o[2786]|0,le>>>0>rr>>>0)return So=le-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=Il,pi|0;if(o[2901]|0?p=o[2903]|0:(o[2903]=4096,o[2902]=4096,o[2904]=-1,o[2905]=-1,o[2906]=0,o[2894]=0,p=an&-16^1431655768,o[an>>2]=p,o[2901]=p,p=4096),Ge=rr+48|0,Xe=rr+47|0,U=p+Xe|0,X=0-p|0,St=U&X,St>>>0<=rr>>>0||(p=o[2893]|0,p|0&&(ht=o[2891]|0,an=ht+St|0,an>>>0<=ht>>>0|an>>>0>p>>>0)))return pi=0,B=Il,pi|0;e:do if(o[2894]&4)y=0,ss=133;else{w=o[2789]|0;t:do if(w){for(G=11580;p=o[G>>2]|0,!(p>>>0<=w>>>0&&(Un=G+4|0,(p+(o[Un>>2]|0)|0)>>>0>w>>>0));)if(p=o[G+8>>2]|0,p)G=p;else{ss=118;break t}if(y=U-le&X,y>>>0<2147483647)if(p=LB(y|0)|0,(p|0)==((o[G>>2]|0)+(o[Un>>2]|0)|0)){if((p|0)!=-1){le=y,U=p,ss=135;break e}}else G=p,ss=126;else y=0}else ss=118;while(!1);do if((ss|0)==118)if(w=LB(0)|0,(w|0)!=-1&&(y=w,Ks=o[2902]|0,zi=Ks+-1|0,y=(zi&y|0?(zi+y&0-Ks)-y|0:0)+St|0,Ks=o[2891]|0,zi=y+Ks|0,y>>>0>rr>>>0&y>>>0<2147483647)){if(Un=o[2893]|0,Un|0&&zi>>>0<=Ks>>>0|zi>>>0>Un>>>0){y=0;break}if(p=LB(y|0)|0,(p|0)==(w|0)){le=y,U=w,ss=135;break e}else G=p,ss=126}else y=0;while(!1);do if((ss|0)==126){if(w=0-y|0,!(Ge>>>0>y>>>0&(y>>>0<2147483647&(G|0)!=-1)))if((G|0)==-1){y=0;break}else{le=y,U=G,ss=135;break e}if(p=o[2903]|0,p=Xe-y+p&0-p,p>>>0>=2147483647){le=y,U=G,ss=135;break e}if((LB(p|0)|0)==-1){LB(w|0)|0,y=0;break}else{le=p+y|0,U=G,ss=135;break e}}while(!1);o[2894]=o[2894]|4,ss=133}while(!1);if((ss|0)==133&&St>>>0<2147483647&&(So=LB(St|0)|0,Un=LB(0)|0,Ds=Un-So|0,Si=Ds>>>0>(rr+40|0)>>>0,!((So|0)==-1|Si^1|So>>>0>>0&((So|0)!=-1&(Un|0)!=-1)^1))&&(le=Si?Ds:y,U=So,ss=135),(ss|0)==135){y=(o[2891]|0)+le|0,o[2891]=y,y>>>0>(o[2892]|0)>>>0&&(o[2892]=y),Xe=o[2789]|0;do if(Xe){for(y=11580;;){if(p=o[y>>2]|0,w=y+4|0,G=o[w>>2]|0,(U|0)==(p+G|0)){ss=145;break}if(X=o[y+8>>2]|0,X)y=X;else break}if((ss|0)==145&&!(o[y+12>>2]&8|0)&&Xe>>>0>>0&Xe>>>0>=p>>>0){o[w>>2]=G+le,pi=Xe+8|0,pi=pi&7|0?0-pi&7:0,ss=Xe+pi|0,pi=(o[2786]|0)+(le-pi)|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905];break}for(U>>>0<(o[2787]|0)>>>0&&(o[2787]=U),w=U+le|0,y=11580;;){if((o[y>>2]|0)==(w|0)){ss=153;break}if(p=o[y+8>>2]|0,p)y=p;else break}if((ss|0)==153&&!(o[y+12>>2]&8|0)){o[y>>2]=U,ht=y+4|0,o[ht>>2]=(o[ht>>2]|0)+le,ht=U+8|0,ht=U+(ht&7|0?0-ht&7:0)|0,y=w+8|0,y=w+(y&7|0?0-y&7:0)|0,St=ht+rr|0,Ge=y-ht-rr|0,o[ht+4>>2]=rr|3;do if((y|0)!=(Xe|0)){if((y|0)==(o[2788]|0)){pi=(o[2785]|0)+Ge|0,o[2785]=pi,o[2788]=St,o[St+4>>2]=pi|1,o[St+pi>>2]=pi;break}if(p=o[y+4>>2]|0,(p&3|0)==1){le=p&-8,G=p>>>3;e:do if(p>>>0<256)if(p=o[y+8>>2]|0,w=o[y+12>>2]|0,(w|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=w,o[w+8>>2]=p;break}else{U=o[y+24>>2]|0,p=o[y+12>>2]|0;do if((p|0)==(y|0)){if(G=y+16|0,w=G+4|0,p=o[w>>2]|0,!p)if(p=o[G>>2]|0,p)w=G;else{p=0;break}for(;;){if(G=p+20|0,X=o[G>>2]|0,X|0){p=X,w=G;continue}if(G=p+16|0,X=o[G>>2]|0,X)p=X,w=G;else break}o[w>>2]=0}else pi=o[y+8>>2]|0,o[pi+12>>2]=p,o[p+8>>2]=pi;while(!1);if(!U)break;w=o[y+28>>2]|0,G=11436+(w<<2)|0;do if((y|0)!=(o[G>>2]|0)){if(o[U+16+(((o[U+16>>2]|0)!=(y|0)&1)<<2)>>2]=p,!p)break e}else{if(o[G>>2]=p,p|0)break;o[2784]=o[2784]&~(1<>2]=U,w=y+16|0,G=o[w>>2]|0,G|0&&(o[p+16>>2]=G,o[G+24>>2]=p),w=o[w+4>>2]|0,!w)break;o[p+20>>2]=w,o[w+24>>2]=p}while(!1);y=y+le|0,X=le+Ge|0}else X=Ge;if(y=y+4|0,o[y>>2]=o[y>>2]&-2,o[St+4>>2]=X|1,o[St+X>>2]=X,y=X>>>3,X>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=St,o[y+12>>2]=St,o[St+8>>2]=y,o[St+12>>2]=w;break}y=X>>>8;do if(!y)y=0;else{if(X>>>0>16777215){y=31;break}ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=X>>>(y+7|0)&1|y<<1}while(!1);if(G=11436+(y<<2)|0,o[St+28>>2]=y,p=St+16|0,o[p+4>>2]=0,o[p>>2]=0,p=o[2784]|0,w=1<>2]=St,o[St+24>>2]=G,o[St+12>>2]=St,o[St+8>>2]=St;break}for(p=X<<((y|0)==31?0:25-(y>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(X|0)){ss=194;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=193;break}}if((ss|0)==193){o[G>>2]=St,o[St+24>>2]=w,o[St+12>>2]=St,o[St+8>>2]=St;break}else if((ss|0)==194){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=St,o[ss>>2]=St,o[St+8>>2]=pi,o[St+12>>2]=w,o[St+24>>2]=0;break}}else pi=(o[2786]|0)+Ge|0,o[2786]=pi,o[2789]=St,o[St+4>>2]=pi|1;while(!1);return pi=ht+8|0,B=Il,pi|0}for(y=11580;p=o[y>>2]|0,!(p>>>0<=Xe>>>0&&(pi=p+(o[y+4>>2]|0)|0,pi>>>0>Xe>>>0));)y=o[y+8>>2]|0;X=pi+-47|0,p=X+8|0,p=X+(p&7|0?0-p&7:0)|0,X=Xe+16|0,p=p>>>0>>0?Xe:p,y=p+8|0,w=U+8|0,w=w&7|0?0-w&7:0,ss=U+w|0,w=le+-40-w|0,o[2789]=ss,o[2786]=w,o[ss+4>>2]=w|1,o[ss+w+4>>2]=40,o[2790]=o[2905],w=p+4|0,o[w>>2]=27,o[y>>2]=o[2895],o[y+4>>2]=o[2896],o[y+8>>2]=o[2897],o[y+12>>2]=o[2898],o[2895]=U,o[2896]=le,o[2898]=0,o[2897]=y,y=p+24|0;do ss=y,y=y+4|0,o[y>>2]=7;while((ss+8|0)>>>0>>0);if((p|0)!=(Xe|0)){if(U=p-Xe|0,o[w>>2]=o[w>>2]&-2,o[Xe+4>>2]=U|1,o[p>>2]=U,y=U>>>3,U>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=Xe,o[y+12>>2]=Xe,o[Xe+8>>2]=y,o[Xe+12>>2]=w;break}if(y=U>>>8,y?U>>>0>16777215?w=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,w=14-(So|ss|w)+(pi<>>15)|0,w=U>>>(w+7|0)&1|w<<1):w=0,G=11436+(w<<2)|0,o[Xe+28>>2]=w,o[Xe+20>>2]=0,o[X>>2]=0,y=o[2784]|0,p=1<>2]=Xe,o[Xe+24>>2]=G,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}for(p=U<<((w|0)==31?0:25-(w>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(U|0)){ss=216;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=215;break}}if((ss|0)==215){o[G>>2]=Xe,o[Xe+24>>2]=w,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}else if((ss|0)==216){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=Xe,o[ss>>2]=Xe,o[Xe+8>>2]=pi,o[Xe+12>>2]=w,o[Xe+24>>2]=0;break}}}else{pi=o[2787]|0,(pi|0)==0|U>>>0>>0&&(o[2787]=U),o[2895]=U,o[2896]=le,o[2898]=0,o[2792]=o[2901],o[2791]=-1,y=0;do pi=11172+(y<<1<<2)|0,o[pi+12>>2]=pi,o[pi+8>>2]=pi,y=y+1|0;while((y|0)!=32);pi=U+8|0,pi=pi&7|0?0-pi&7:0,ss=U+pi|0,pi=le+-40-pi|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905]}while(!1);if(y=o[2786]|0,y>>>0>rr>>>0)return So=y-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=Il,pi|0}return o[(lQ()|0)>>2]=12,pi=0,B=Il,pi|0}function Aie(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;if(p){w=p+-8|0,X=o[2787]|0,p=o[p+-4>>2]|0,y=p&-8,Xe=w+y|0;do if(p&1)Ge=w,le=w;else{if(G=o[w>>2]|0,!(p&3)||(le=w+(0-G)|0,U=G+y|0,le>>>0>>0))return;if((le|0)==(o[2788]|0)){if(p=Xe+4|0,y=o[p>>2]|0,(y&3|0)!=3){Ge=le,y=U;break}o[2785]=U,o[p>>2]=y&-2,o[le+4>>2]=U|1,o[le+U>>2]=U;return}if(w=G>>>3,G>>>0<256)if(p=o[le+8>>2]|0,y=o[le+12>>2]|0,(y|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=y,o[y+8>>2]=p,Ge=le,y=U;break}X=o[le+24>>2]|0,p=o[le+12>>2]|0;do if((p|0)==(le|0)){if(w=le+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{p=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0}else Ge=o[le+8>>2]|0,o[Ge+12>>2]=p,o[p+8>>2]=Ge;while(!1);if(X){if(y=o[le+28>>2]|0,w=11436+(y<<2)|0,(le|0)==(o[w>>2]|0)){if(o[w>>2]=p,!p){o[2784]=o[2784]&~(1<>2]|0)!=(le|0)&1)<<2)>>2]=p,!p){Ge=le,y=U;break}o[p+24>>2]=X,y=le+16|0,w=o[y>>2]|0,w|0&&(o[p+16>>2]=w,o[w+24>>2]=p),y=o[y+4>>2]|0,y?(o[p+20>>2]=y,o[y+24>>2]=p,Ge=le,y=U):(Ge=le,y=U)}else Ge=le,y=U}while(!1);if(!(le>>>0>=Xe>>>0)&&(p=Xe+4|0,G=o[p>>2]|0,!!(G&1))){if(G&2)o[p>>2]=G&-2,o[Ge+4>>2]=y|1,o[le+y>>2]=y,X=y;else{if(p=o[2788]|0,(Xe|0)==(o[2789]|0)){if(Xe=(o[2786]|0)+y|0,o[2786]=Xe,o[2789]=Ge,o[Ge+4>>2]=Xe|1,(Ge|0)!=(p|0))return;o[2788]=0,o[2785]=0;return}if((Xe|0)==(p|0)){Xe=(o[2785]|0)+y|0,o[2785]=Xe,o[2788]=le,o[Ge+4>>2]=Xe|1,o[le+Xe>>2]=Xe;return}X=(G&-8)+y|0,w=G>>>3;do if(G>>>0<256)if(y=o[Xe+8>>2]|0,p=o[Xe+12>>2]|0,(p|0)==(y|0)){o[2783]=o[2783]&~(1<>2]=p,o[p+8>>2]=y;break}else{U=o[Xe+24>>2]|0,p=o[Xe+12>>2]|0;do if((p|0)==(Xe|0)){if(w=Xe+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{w=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0,w=p}else w=o[Xe+8>>2]|0,o[w+12>>2]=p,o[p+8>>2]=w,w=p;while(!1);if(U|0){if(p=o[Xe+28>>2]|0,y=11436+(p<<2)|0,(Xe|0)==(o[y>>2]|0)){if(o[y>>2]=w,!w){o[2784]=o[2784]&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=U,p=Xe+16|0,y=o[p>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),p=o[p+4>>2]|0,p|0&&(o[w+20>>2]=p,o[p+24>>2]=w)}}while(!1);if(o[Ge+4>>2]=X|1,o[le+X>>2]=X,(Ge|0)==(o[2788]|0)){o[2785]=X;return}}if(p=X>>>3,X>>>0<256){w=11172+(p<<1<<2)|0,y=o[2783]|0,p=1<>2]|0):(o[2783]=y|p,p=w,y=w+8|0),o[y>>2]=Ge,o[p+12>>2]=Ge,o[Ge+8>>2]=p,o[Ge+12>>2]=w;return}p=X>>>8,p?X>>>0>16777215?p=31:(le=(p+1048320|0)>>>16&8,Xe=p<>>16&4,Xe=Xe<>>16&2,p=14-(U|le|p)+(Xe<

>>15)|0,p=X>>>(p+7|0)&1|p<<1):p=0,G=11436+(p<<2)|0,o[Ge+28>>2]=p,o[Ge+20>>2]=0,o[Ge+16>>2]=0,y=o[2784]|0,w=1<>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(X|0)){p=73;break}if(G=w+16+(y>>>31<<2)|0,p=o[G>>2]|0,p)y=y<<1,w=p;else{p=72;break}}if((p|0)==72){o[G>>2]=Ge,o[Ge+24>>2]=w,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;break}else if((p|0)==73){le=w+8|0,Xe=o[le>>2]|0,o[Xe+12>>2]=Ge,o[le>>2]=Ge,o[Ge+8>>2]=Xe,o[Ge+12>>2]=w,o[Ge+24>>2]=0;break}}else o[2784]=y|w,o[G>>2]=Ge,o[Ge+24>>2]=G,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;while(!1);if(Xe=(o[2791]|0)+-1|0,o[2791]=Xe,!Xe)p=11588;else return;for(;p=o[p>>2]|0,p;)p=p+8|0;o[2791]=-1}}}function dde(){return 11628}function BU(p){p=p|0;var y=0,w=0;return y=B,B=B+16|0,w=y,o[w>>2]=vz(o[p+60>>2]|0)|0,p=pie(Xs(6,w|0)|0)|0,B=y,p|0}function die(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0;rr=B,B=B+48|0,St=rr+16|0,U=rr,X=rr+32|0,Ge=p+28|0,G=o[Ge>>2]|0,o[X>>2]=G,Xe=p+20|0,G=(o[Xe>>2]|0)-G|0,o[X+4>>2]=G,o[X+8>>2]=y,o[X+12>>2]=w,G=G+w|0,le=p+60|0,o[U>>2]=o[le>>2],o[U+4>>2]=X,o[U+8>>2]=2,U=pie(Ma(146,U|0)|0)|0;e:do if((G|0)!=(U|0)){for(y=2;!((U|0)<0);)if(G=G-U|0,Ks=o[X+4>>2]|0,an=U>>>0>Ks>>>0,X=an?X+8|0:X,y=(an<<31>>31)+y|0,Ks=U-(an?Ks:0)|0,o[X>>2]=(o[X>>2]|0)+Ks,an=X+4|0,o[an>>2]=(o[an>>2]|0)-Ks,o[St>>2]=o[le>>2],o[St+4>>2]=X,o[St+8>>2]=y,U=pie(Ma(146,St|0)|0)|0,(G|0)==(U|0)){ht=3;break e}o[p+16>>2]=0,o[Ge>>2]=0,o[Xe>>2]=0,o[p>>2]=o[p>>2]|32,(y|0)==2?w=0:w=w-(o[X+4>>2]|0)|0}else ht=3;while(!1);return(ht|0)==3&&(Ks=o[p+44>>2]|0,o[p+16>>2]=Ks+(o[p+48>>2]|0),o[Ge>>2]=Ks,o[Xe>>2]=Ks),B=rr,w|0}function WWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;return X=B,B=B+32|0,U=X,G=X+20|0,o[U>>2]=o[p+60>>2],o[U+4>>2]=0,o[U+8>>2]=y,o[U+12>>2]=G,o[U+16>>2]=w,(pie(Gs(140,U|0)|0)|0)<0?(o[G>>2]=-1,p=-1):p=o[G>>2]|0,B=X,p|0}function pie(p){return p=p|0,p>>>0>4294963200&&(o[(lQ()|0)>>2]=0-p,p=-1),p|0}function lQ(){return(lEe()|0)+64|0}function lEe(){return fie()|0}function fie(){return 2084}function vz(p){return p=p|0,p|0}function uEe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;return X=B,B=B+32|0,G=X,o[p+36>>2]=1,!(o[p>>2]&64|0)&&(o[G>>2]=o[p+60>>2],o[G+4>>2]=21523,o[G+8>>2]=X+16,ZA(54,G|0)|0)&&(n[p+75>>0]=-1),G=die(p,y,w)|0,B=X,G|0}function m$e(p,y){p=p|0,y=y|0;var w=0,G=0;if(w=n[p>>0]|0,G=n[y>>0]|0,!(w<<24>>24)||w<<24>>24!=G<<24>>24)p=G;else{do p=p+1|0,y=y+1|0,w=n[p>>0]|0,G=n[y>>0]|0;while(!(!(w<<24>>24)||w<<24>>24!=G<<24>>24));p=G}return(w&255)-(p&255)|0}function e9e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;e:do if(!w)p=0;else{for(;G=n[p>>0]|0,X=n[y>>0]|0,G<<24>>24==X<<24>>24;)if(w=w+-1|0,w)p=p+1|0,y=y+1|0;else{p=0;break e}p=(G&255)-(X&255)|0}while(!1);return p|0}function pde(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0;Un=B,B=B+224|0,ht=Un+120|0,rr=Un+80|0,Ks=Un,zi=Un+136|0,G=rr,X=G+40|0;do o[G>>2]=0,G=G+4|0;while((G|0)<(X|0));return o[ht>>2]=o[w>>2],(KA(0,y,ht,Ks,rr)|0)<0?w=-1:((o[p+76>>2]|0)>-1?an=Iie(p)|0:an=0,w=o[p>>2]|0,St=w&32,(n[p+74>>0]|0)<1&&(o[p>>2]=w&-33),G=p+48|0,o[G>>2]|0?w=KA(p,y,ht,Ks,rr)|0:(X=p+44|0,U=o[X>>2]|0,o[X>>2]=zi,le=p+28|0,o[le>>2]=zi,Ge=p+20|0,o[Ge>>2]=zi,o[G>>2]=80,Xe=p+16|0,o[Xe>>2]=zi+80,w=KA(p,y,ht,Ks,rr)|0,U&&(t9[o[p+36>>2]&7](p,0,0)|0,w=o[Ge>>2]|0?w:-1,o[X>>2]=U,o[G>>2]=0,o[Xe>>2]=0,o[le>>2]=0,o[Ge>>2]=0)),G=o[p>>2]|0,o[p>>2]=G|St,an|0&&C$e(p),w=G&32|0?-1:w),B=Un,w|0}function KA(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,Il=0,gu=0,Al=0,Tc=0,wg=0,kg=0,Tg=0;Tg=B,B=B+64|0,Al=Tg+16|0,Tc=Tg,Il=Tg+24|0,wg=Tg+8|0,kg=Tg+20|0,o[Al>>2]=y,So=(p|0)!=0,ss=Il+40|0,pi=ss,Il=Il+39|0,gu=wg+4|0,le=0,U=0,ht=0;e:for(;;){do if((U|0)>-1)if((le|0)>(2147483647-U|0)){o[(lQ()|0)>>2]=75,U=-1;break}else{U=le+U|0;break}while(!1);if(le=n[y>>0]|0,le<<24>>24)Ge=y;else{Si=87;break}t:for(;;){switch(le<<24>>24){case 37:{le=Ge,Si=9;break t}case 0:{le=Ge;break t}default:}Ds=Ge+1|0,o[Al>>2]=Ds,le=n[Ds>>0]|0,Ge=Ds}t:do if((Si|0)==9)for(;;){if(Si=0,(n[Ge+1>>0]|0)!=37)break t;if(le=le+1|0,Ge=Ge+2|0,o[Al>>2]=Ge,(n[Ge>>0]|0)==37)Si=9;else break}while(!1);if(le=le-y|0,So&&c0(p,y,le),le|0){y=Ge;continue}Xe=Ge+1|0,le=(n[Xe>>0]|0)+-48|0,le>>>0<10?(Ds=(n[Ge+2>>0]|0)==36,Un=Ds?le:-1,ht=Ds?1:ht,Xe=Ds?Ge+3|0:Xe):Un=-1,o[Al>>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0;t:do if(Ge>>>0<32)for(St=0,rr=le;;){if(le=1<>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0,Ge>>>0>=32)break;rr=le}else St=0;while(!1);if(le<<24>>24==42){if(Ge=Xe+1|0,le=(n[Ge>>0]|0)+-48|0,le>>>0<10&&(n[Xe+2>>0]|0)==36)o[X+(le<<2)>>2]=10,le=o[G+((n[Ge>>0]|0)+-48<<3)>>2]|0,ht=1,Xe=Xe+3|0;else{if(ht|0){U=-1;break}So?(ht=(o[w>>2]|0)+3&-4,le=o[ht>>2]|0,o[w>>2]=ht+4,ht=0,Xe=Ge):(le=0,ht=0,Xe=Ge)}o[Al>>2]=Xe,Ds=(le|0)<0,le=Ds?0-le|0:le,St=Ds?St|8192:St}else{if(le=fde(Al)|0,(le|0)<0){U=-1;break}Xe=o[Al>>2]|0}do if((n[Xe>>0]|0)==46){if((n[Xe+1>>0]|0)!=42){o[Al>>2]=Xe+1,Ge=fde(Al)|0,Xe=o[Al>>2]|0;break}if(rr=Xe+2|0,Ge=(n[rr>>0]|0)+-48|0,Ge>>>0<10&&(n[Xe+3>>0]|0)==36){o[X+(Ge<<2)>>2]=10,Ge=o[G+((n[rr>>0]|0)+-48<<3)>>2]|0,Xe=Xe+4|0,o[Al>>2]=Xe;break}if(ht|0){U=-1;break e}So?(Ds=(o[w>>2]|0)+3&-4,Ge=o[Ds>>2]|0,o[w>>2]=Ds+4):Ge=0,o[Al>>2]=rr,Xe=rr}else Ge=-1;while(!1);for(zi=0;;){if(((n[Xe>>0]|0)+-65|0)>>>0>57){U=-1;break e}if(Ds=Xe+1|0,o[Al>>2]=Ds,rr=n[(n[Xe>>0]|0)+-65+(5178+(zi*58|0))>>0]|0,an=rr&255,(an+-1|0)>>>0<8)zi=an,Xe=Ds;else break}if(!(rr<<24>>24)){U=-1;break}Ks=(Un|0)>-1;do if(rr<<24>>24==19)if(Ks){U=-1;break e}else Si=49;else{if(Ks){o[X+(Un<<2)>>2]=an,Ks=G+(Un<<3)|0,Un=o[Ks+4>>2]|0,Si=Tc,o[Si>>2]=o[Ks>>2],o[Si+4>>2]=Un,Si=49;break}if(!So){U=0;break e}Oy(Tc,an,w)}while(!1);if((Si|0)==49&&(Si=0,!So)){le=0,y=Ds;continue}Xe=n[Xe>>0]|0,Xe=(zi|0)!=0&(Xe&15|0)==3?Xe&-33:Xe,Ks=St&-65537,Un=St&8192|0?Ks:St;t:do switch(Xe|0){case 110:switch((zi&255)<<24>>24){case 0:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 1:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 2:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}case 3:{a[o[Tc>>2]>>1]=U,le=0,y=Ds;continue e}case 4:{n[o[Tc>>2]>>0]=U,le=0,y=Ds;continue e}case 6:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 7:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}default:{le=0,y=Ds;continue e}}case 112:{Xe=120,Ge=Ge>>>0>8?Ge:8,y=Un|8,Si=61;break}case 88:case 120:{y=Un,Si=61;break}case 111:{Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,an=t9e(y,Xe,ss)|0,Ks=pi-an|0,St=0,rr=5642,Ge=(Un&8|0)==0|(Ge|0)>(Ks|0)?Ge:Ks+1|0,Ks=Un,Si=67;break}case 105:case 100:if(Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,(Xe|0)<0){y=zT(0,0,y|0,Xe|0)|0,Xe=ze,St=Tc,o[St>>2]=y,o[St+4>>2]=Xe,St=1,rr=5642,Si=66;break t}else{St=(Un&2049|0)!=0&1,rr=Un&2048|0?5643:Un&1|0?5644:5642,Si=66;break t}case 117:{Xe=Tc,St=0,rr=5642,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,Si=66;break}case 99:{n[Il>>0]=o[Tc>>2],y=Il,St=0,rr=5642,an=ss,Xe=1,Ge=Ks;break}case 109:{Xe=OWt(o[(lQ()|0)>>2]|0)|0,Si=71;break}case 115:{Xe=o[Tc>>2]|0,Xe=Xe|0?Xe:5652,Si=71;break}case 67:{o[wg>>2]=o[Tc>>2],o[gu>>2]=0,o[Tc>>2]=wg,an=-1,Xe=wg,Si=75;break}case 83:{y=o[Tc>>2]|0,Ge?(an=Ge,Xe=y,Si=75):(mv(p,32,le,0,Un),y=0,Si=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{le=n9e(p,+C[Tc>>3],le,Ge,Un,Xe)|0,y=Ds;continue e}default:St=0,rr=5642,an=ss,Xe=Ge,Ge=Un}while(!1);t:do if((Si|0)==61)Un=Tc,zi=o[Un>>2]|0,Un=o[Un+4>>2]|0,an=gEe(zi,Un,ss,Xe&32)|0,rr=(y&8|0)==0|(zi|0)==0&(Un|0)==0,St=rr?0:2,rr=rr?5642:5642+(Xe>>4)|0,Ks=y,y=zi,Xe=Un,Si=67;else if((Si|0)==66)an=wU(y,Xe,ss)|0,Ks=Un,Si=67;else if((Si|0)==71)Si=0,Un=r9e(Xe,0,Ge)|0,zi=(Un|0)==0,y=Xe,St=0,rr=5642,an=zi?Xe+Ge|0:Un,Xe=zi?Ge:Un-Xe|0,Ge=Ks;else if((Si|0)==75){for(Si=0,rr=Xe,y=0,Ge=0;St=o[rr>>2]|0,!(!St||(Ge=AEe(kg,St)|0,(Ge|0)<0|Ge>>>0>(an-y|0)>>>0));)if(y=Ge+y|0,an>>>0>y>>>0)rr=rr+4|0;else break;if((Ge|0)<0){U=-1;break e}if(mv(p,32,le,y,Un),!y)y=0,Si=84;else for(St=0;;){if(Ge=o[Xe>>2]|0,!Ge){Si=84;break t}if(Ge=AEe(kg,Ge)|0,St=Ge+St|0,(St|0)>(y|0)){Si=84;break t}if(c0(p,kg,Ge),St>>>0>=y>>>0){Si=84;break}else Xe=Xe+4|0}}while(!1);if((Si|0)==67)Si=0,Xe=(y|0)!=0|(Xe|0)!=0,Un=(Ge|0)!=0|Xe,Xe=((Xe^1)&1)+(pi-an)|0,y=Un?an:ss,an=ss,Xe=Un?(Ge|0)>(Xe|0)?Ge:Xe:Ge,Ge=(Ge|0)>-1?Ks&-65537:Ks;else if((Si|0)==84){Si=0,mv(p,32,le,y,Un^8192),le=(le|0)>(y|0)?le:y,y=Ds;continue}zi=an-y|0,Ks=(Xe|0)<(zi|0)?zi:Xe,Un=Ks+St|0,le=(le|0)<(Un|0)?Un:le,mv(p,32,le,Un,Ge),c0(p,rr,St),mv(p,48,le,Un,Ge^65536),mv(p,48,Ks,zi,0),c0(p,y,zi),mv(p,32,le,Un,Ge^8192),y=Ds}e:do if((Si|0)==87&&!p)if(!ht)U=0;else{for(U=1;y=o[X+(U<<2)>>2]|0,!!y;)if(Oy(G+(U<<3)|0,y,w),U=U+1|0,(U|0)>=10){U=1;break e}for(;;){if(o[X+(U<<2)>>2]|0){U=-1;break e}if(U=U+1|0,(U|0)>=10){U=1;break}}}while(!1);return B=Tg,U|0}function Iie(p){return p=p|0,0}function C$e(p){p=p|0}function c0(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]&32||mie(y,w,p)|0}function fde(p){p=p|0;var y=0,w=0,G=0;if(w=o[p>>2]|0,G=(n[w>>0]|0)+-48|0,G>>>0<10){y=0;do y=G+(y*10|0)|0,w=w+1|0,o[p>>2]=w,G=(n[w>>0]|0)+-48|0;while(G>>>0<10)}else y=0;return y|0}function Oy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;e:do if(y>>>0<=20)do switch(y|0){case 9:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,o[p>>2]=y;break e}case 10:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=((y|0)<0)<<31>>31;break e}case 11:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=0;break e}case 12:{G=(o[w>>2]|0)+7&-8,y=G,X=o[y>>2]|0,y=o[y+4>>2]|0,o[w>>2]=G+8,G=p,o[G>>2]=X,o[G+4>>2]=y;break e}case 13:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,G=(G&65535)<<16>>16,X=p,o[X>>2]=G,o[X+4>>2]=((G|0)<0)<<31>>31;break e}case 14:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,X=p,o[X>>2]=G&65535,o[X+4>>2]=0;break e}case 15:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,G=(G&255)<<24>>24,X=p,o[X>>2]=G,o[X+4>>2]=((G|0)<0)<<31>>31;break e}case 16:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,X=p,o[X>>2]=G&255,o[X+4>>2]=0;break e}case 17:{X=(o[w>>2]|0)+7&-8,U=+C[X>>3],o[w>>2]=X+8,C[p>>3]=U;break e}case 18:{X=(o[w>>2]|0)+7&-8,U=+C[X>>3],o[w>>2]=X+8,C[p>>3]=U;break e}default:break e}while(!1);while(!1)}function gEe(p,y,w,G){if(p=p|0,y=y|0,w=w|0,G=G|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=l[5694+(p&15)>>0]|0|G,p=V3(p|0,y|0,4)|0,y=ze;while(!((p|0)==0&(y|0)==0));return w|0}function t9e(p,y,w){if(p=p|0,y=y|0,w=w|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=p&7|48,p=V3(p|0,y|0,3)|0,y=ze;while(!((p|0)==0&(y|0)==0));return w|0}function wU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if(y>>>0>0|(y|0)==0&p>>>0>4294967295){for(;G=NU(p|0,y|0,10,0)|0,w=w+-1|0,n[w>>0]=G&255|48,G=p,p=W3(p|0,y|0,10,0)|0,y>>>0>9|(y|0)==9&G>>>0>4294967295;)y=ze;y=p}else y=p;if(y)for(;w=w+-1|0,n[w>>0]=(y>>>0)%10|0|48,!(y>>>0<10);)y=(y>>>0)/10|0;return w|0}function OWt(p){return p=p|0,IEe(p,o[(hie()|0)+188>>2]|0)|0}function r9e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;U=y&255,G=(w|0)!=0;e:do if(G&(p&3|0)!=0)for(X=y&255;;){if((n[p>>0]|0)==X<<24>>24){le=6;break e}if(p=p+1|0,w=w+-1|0,G=(w|0)!=0,!(G&(p&3|0)!=0)){le=5;break}}else le=5;while(!1);(le|0)==5&&(G?le=6:w=0);e:do if((le|0)==6&&(X=y&255,(n[p>>0]|0)!=X<<24>>24)){G=cr(U,16843009)|0;t:do if(w>>>0>3){for(;U=o[p>>2]^G,!((U&-2139062144^-2139062144)&U+-16843009|0);)if(p=p+4|0,w=w+-4|0,w>>>0<=3){le=11;break t}}else le=11;while(!1);if((le|0)==11&&!w){w=0;break}for(;;){if((n[p>>0]|0)==X<<24>>24)break e;if(p=p+1|0,w=w+-1|0,!w){w=0;break}}}while(!1);return(w|0?p:0)|0}function mv(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0;if(le=B,B=B+256|0,U=le,(w|0)>(G|0)&(X&73728|0)==0){if(X=w-G|0,Rz(U|0,y|0,(X>>>0<256?X:256)|0)|0,X>>>0>255){y=w-G|0;do c0(p,U,256),X=X+-256|0;while(X>>>0>255);X=y&255}c0(p,U,X)}B=le}function AEe(p,y){return p=p|0,y=y|0,p?p=_$e(p,y,0)|0:p=0,p|0}function n9e(p,y,w,G,X,U){p=p|0,y=+y,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,Il=0,gu=0,Al=0,Tc=0,wg=0,kg=0,Tg=0,im=0;im=B,B=B+560|0,Xe=im+8|0,Ds=im,Tg=im+524|0,kg=Tg,St=im+512|0,o[Ds>>2]=0,wg=St+12|0,dEe(y)|0,(ze|0)<0?(y=-y,Al=1,gu=5659):(Al=(X&2049|0)!=0&1,gu=X&2048|0?5662:X&1|0?5665:5660),dEe(y)|0,Tc=ze&2146435072;do if(Tc>>>0<2146435072|(Tc|0)==2146435072&!1){if(Ks=+pEe(y,Ds)*2,le=Ks!=0,le&&(o[Ds>>2]=(o[Ds>>2]|0)+-1),So=U|32,(So|0)==97){zi=U&32,an=zi|0?gu+9|0:gu,rr=Al|2,le=12-G|0;do if(G>>>0>11|(le|0)==0)y=Ks;else{y=8;do le=le+-1|0,y=y*16;while(le|0);if((n[an>>0]|0)==45){y=-(y+(-Ks-y));break}else{y=Ks+y-y;break}}while(!1);Ge=o[Ds>>2]|0,le=(Ge|0)<0?0-Ge|0:Ge,le=wU(le,((le|0)<0)<<31>>31,wg)|0,(le|0)==(wg|0)&&(le=St+11|0,n[le>>0]=48),n[le+-1>>0]=(Ge>>31&2)+43,ht=le+-2|0,n[ht>>0]=U+15,St=(G|0)<1,Xe=(X&8|0)==0,le=Tg;do Tc=~~y,Ge=le+1|0,n[le>>0]=l[5694+Tc>>0]|zi,y=(y-+(Tc|0))*16,(Ge-kg|0)==1&&!(Xe&(St&y==0))?(n[Ge>>0]=46,le=le+2|0):le=Ge;while(y!=0);Tc=le-kg|0,kg=wg-ht|0,wg=(G|0)!=0&(Tc+-2|0)<(G|0)?G+2|0:Tc,le=kg+rr+wg|0,mv(p,32,w,le,X),c0(p,an,rr),mv(p,48,w,le,X^65536),c0(p,Tg,Tc),mv(p,48,wg-Tc|0,0,0),c0(p,ht,kg),mv(p,32,w,le,X^8192);break}Ge=(G|0)<0?6:G,le?(le=(o[Ds>>2]|0)+-28|0,o[Ds>>2]=le,y=Ks*268435456):(y=Ks,le=o[Ds>>2]|0),Tc=(le|0)<0?Xe:Xe+288|0,Xe=Tc;do pi=~~y>>>0,o[Xe>>2]=pi,Xe=Xe+4|0,y=(y-+(pi>>>0))*1e9;while(y!=0);if((le|0)>0)for(St=Tc,rr=Xe;;){if(ht=(le|0)<29?le:29,le=rr+-4|0,le>>>0>=St>>>0){Xe=0;do ss=hEe(o[le>>2]|0,0,ht|0)|0,ss=Yg(ss|0,ze|0,Xe|0,0)|0,pi=ze,Si=NU(ss|0,pi|0,1e9,0)|0,o[le>>2]=Si,Xe=W3(ss|0,pi|0,1e9,0)|0,le=le+-4|0;while(le>>>0>=St>>>0);Xe&&(St=St+-4|0,o[St>>2]=Xe)}for(Xe=rr;!(Xe>>>0<=St>>>0);)if(le=Xe+-4|0,!(o[le>>2]|0))Xe=le;else break;if(le=(o[Ds>>2]|0)-ht|0,o[Ds>>2]=le,(le|0)>0)rr=Xe;else break}else St=Tc;if((le|0)<0){G=((Ge+25|0)/9|0)+1|0,Un=(So|0)==102;do{if(zi=0-le|0,zi=(zi|0)<9?zi:9,St>>>0>>0){ht=(1<>>zi,an=0,le=St;do pi=o[le>>2]|0,o[le>>2]=(pi>>>zi)+an,an=cr(pi&ht,rr)|0,le=le+4|0;while(le>>>0>>0);le=o[St>>2]|0?St:St+4|0,an?(o[Xe>>2]=an,St=le,le=Xe+4|0):(St=le,le=Xe)}else St=o[St>>2]|0?St:St+4|0,le=Xe;Xe=Un?Tc:St,Xe=(le-Xe>>2|0)>(G|0)?Xe+(G<<2)|0:le,le=(o[Ds>>2]|0)+zi|0,o[Ds>>2]=le}while((le|0)<0);le=St,G=Xe}else le=St,G=Xe;if(pi=Tc,le>>>0>>0){if(Xe=(pi-le>>2)*9|0,ht=o[le>>2]|0,ht>>>0>=10){St=10;do St=St*10|0,Xe=Xe+1|0;while(ht>>>0>=St>>>0)}}else Xe=0;if(Un=(So|0)==103,Si=(Ge|0)!=0,St=Ge-((So|0)!=102?Xe:0)+((Si&Un)<<31>>31)|0,(St|0)<(((G-pi>>2)*9|0)+-9|0)){if(St=St+9216|0,zi=Tc+4+(((St|0)/9|0)+-1024<<2)|0,St=((St|0)%9|0)+1|0,(St|0)<9){ht=10;do ht=ht*10|0,St=St+1|0;while((St|0)!=9)}else ht=10;if(rr=o[zi>>2]|0,an=(rr>>>0)%(ht>>>0)|0,St=(zi+4|0)==(G|0),St&(an|0)==0)St=zi;else if(Ks=((rr>>>0)/(ht>>>0)|0)&1|0?9007199254740994:9007199254740992,ss=(ht|0)/2|0,y=an>>>0>>0?.5:St&(an|0)==(ss|0)?1:1.5,Al&&(ss=(n[gu>>0]|0)==45,y=ss?-y:y,Ks=ss?-Ks:Ks),St=rr-an|0,o[zi>>2]=St,Ks+y!=Ks){if(ss=St+ht|0,o[zi>>2]=ss,ss>>>0>999999999)for(Xe=zi;St=Xe+-4|0,o[Xe>>2]=0,St>>>0>>0&&(le=le+-4|0,o[le>>2]=0),ss=(o[St>>2]|0)+1|0,o[St>>2]=ss,ss>>>0>999999999;)Xe=St;else St=zi;if(Xe=(pi-le>>2)*9|0,rr=o[le>>2]|0,rr>>>0>=10){ht=10;do ht=ht*10|0,Xe=Xe+1|0;while(rr>>>0>=ht>>>0)}}else St=zi;St=St+4|0,St=G>>>0>St>>>0?St:G,ss=le}else St=G,ss=le;for(So=St;;){if(So>>>0<=ss>>>0){Ds=0;break}if(le=So+-4|0,!(o[le>>2]|0))So=le;else{Ds=1;break}}G=0-Xe|0;do if(Un)if(le=((Si^1)&1)+Ge|0,(le|0)>(Xe|0)&(Xe|0)>-5?(ht=U+-1|0,Ge=le+-1-Xe|0):(ht=U+-2|0,Ge=le+-1|0),le=X&8,le)zi=le;else{if(Ds&&(Il=o[So+-4>>2]|0,(Il|0)!=0))if((Il>>>0)%10|0)St=0;else{St=0,le=10;do le=le*10|0,St=St+1|0;while(!((Il>>>0)%(le>>>0)|0|0))}else St=9;if(le=((So-pi>>2)*9|0)+-9|0,(ht|32|0)==102){zi=le-St|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}else{zi=le+Xe-St|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}}else ht=U,zi=X&8;while(!1);if(Un=Ge|zi,rr=(Un|0)!=0&1,an=(ht|32|0)==102,an)Si=0,le=(Xe|0)>0?Xe:0;else{if(le=(Xe|0)<0?G:Xe,le=wU(le,((le|0)<0)<<31>>31,wg)|0,St=wg,(St-le|0)<2)do le=le+-1|0,n[le>>0]=48;while((St-le|0)<2);n[le+-1>>0]=(Xe>>31&2)+43,le=le+-2|0,n[le>>0]=ht,Si=le,le=St-le|0}if(le=Al+1+Ge+rr+le|0,mv(p,32,w,le,X),c0(p,gu,Al),mv(p,48,w,le,X^65536),an){ht=ss>>>0>Tc>>>0?Tc:ss,zi=Tg+9|0,rr=zi,an=Tg+8|0,St=ht;do{if(Xe=wU(o[St>>2]|0,0,zi)|0,(St|0)==(ht|0))(Xe|0)==(zi|0)&&(n[an>>0]=48,Xe=an);else if(Xe>>>0>Tg>>>0){Rz(Tg|0,48,Xe-kg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>Tg>>>0)}c0(p,Xe,rr-Xe|0),St=St+4|0}while(St>>>0<=Tc>>>0);if(Un|0&&c0(p,5710,1),St>>>0>>0&(Ge|0)>0)for(;;){if(Xe=wU(o[St>>2]|0,0,zi)|0,Xe>>>0>Tg>>>0){Rz(Tg|0,48,Xe-kg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>Tg>>>0)}if(c0(p,Xe,(Ge|0)<9?Ge:9),St=St+4|0,Xe=Ge+-9|0,St>>>0>>0&(Ge|0)>9)Ge=Xe;else{Ge=Xe;break}}mv(p,48,Ge+9|0,9,0)}else{if(Un=Ds?So:ss+4|0,(Ge|0)>-1){Ds=Tg+9|0,zi=(zi|0)==0,G=Ds,rr=0-kg|0,an=Tg+8|0,ht=ss;do{Xe=wU(o[ht>>2]|0,0,Ds)|0,(Xe|0)==(Ds|0)&&(n[an>>0]=48,Xe=an);do if((ht|0)==(ss|0)){if(St=Xe+1|0,c0(p,Xe,1),zi&(Ge|0)<1){Xe=St;break}c0(p,5710,1),Xe=St}else{if(Xe>>>0<=Tg>>>0)break;Rz(Tg|0,48,Xe+rr|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>Tg>>>0)}while(!1);kg=G-Xe|0,c0(p,Xe,(Ge|0)>(kg|0)?kg:Ge),Ge=Ge-kg|0,ht=ht+4|0}while(ht>>>0>>0&(Ge|0)>-1)}mv(p,48,Ge+18|0,18,0),c0(p,Si,wg-Si|0)}mv(p,32,w,le,X^8192)}else Tg=(U&32|0)!=0,le=Al+3|0,mv(p,32,w,le,X&-65537),c0(p,gu,Al),c0(p,y!=y|!1?Tg?5686:5690:Tg?5678:5682,3),mv(p,32,w,le,X^8192);while(!1);return B=im,((le|0)<(w|0)?w:le)|0}function dEe(p){p=+p;var y=0;return C[E>>3]=p,y=o[E>>2]|0,ze=o[E+4>>2]|0,y|0}function pEe(p,y){return p=+p,y=y|0,+ +fEe(p,y)}function fEe(p,y){p=+p,y=y|0;var w=0,G=0,X=0;switch(C[E>>3]=p,w=o[E>>2]|0,G=o[E+4>>2]|0,X=V3(w|0,G|0,52)|0,X&2047){case 0:{p!=0?(p=+fEe(p*18446744073709552e3,y),w=(o[y>>2]|0)+-64|0):w=0,o[y>>2]=w;break}case 2047:break;default:o[y>>2]=(X&2047)+-1022,o[E>>2]=w,o[E+4>>2]=G&-2146435073|1071644672,p=+C[E>>3]}return+p}function _$e(p,y,w){p=p|0,y=y|0,w=w|0;do if(p){if(y>>>0<128){n[p>>0]=y,p=1;break}if(!(o[o[(y$e()|0)+188>>2]>>2]|0))if((y&-128|0)==57216){n[p>>0]=y,p=1;break}else{o[(lQ()|0)>>2]=84,p=-1;break}if(y>>>0<2048){n[p>>0]=y>>>6|192,n[p+1>>0]=y&63|128,p=2;break}if(y>>>0<55296|(y&-8192|0)==57344){n[p>>0]=y>>>12|224,n[p+1>>0]=y>>>6&63|128,n[p+2>>0]=y&63|128,p=3;break}if((y+-65536|0)>>>0<1048576){n[p>>0]=y>>>18|240,n[p+1>>0]=y>>>12&63|128,n[p+2>>0]=y>>>6&63|128,n[p+3>>0]=y&63|128,p=4;break}else{o[(lQ()|0)>>2]=84,p=-1;break}}else p=1;while(!1);return p|0}function y$e(){return fie()|0}function hie(){return fie()|0}function IEe(p,y){p=p|0,y=y|0;var w=0,G=0;for(G=0;;){if((l[5712+G>>0]|0)==(p|0)){p=2;break}if(w=G+1|0,(w|0)==87){w=5800,G=87,p=5;break}else G=w}if((p|0)==2&&(G?(w=5800,p=5):w=5800),(p|0)==5)for(;;){do p=w,w=w+1|0;while(n[p>>0]|0);if(G=G+-1|0,G)p=5;else break}return Lx(w,o[y+20>>2]|0)|0}function Lx(p,y){return p=p|0,y=y|0,b$e(p,y)|0}function b$e(p,y){return p=p|0,y=y|0,y?y=PWt(o[y>>2]|0,o[y+4>>2]|0,p)|0:y=0,(y|0?y:p)|0}function PWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;an=(o[p>>2]|0)+1794895138|0,U=FB(o[p+8>>2]|0,an)|0,G=FB(o[p+12>>2]|0,an)|0,X=FB(o[p+16>>2]|0,an)|0;e:do if(U>>>0>>2>>>0&&(rr=y-(U<<2)|0,G>>>0>>0&X>>>0>>0)&&!((X|G)&3|0)){for(rr=G>>>2,ht=X>>>2,St=0;;){if(Ge=U>>>1,Xe=St+Ge|0,le=Xe<<1,X=le+rr|0,G=FB(o[p+(X<<2)>>2]|0,an)|0,X=FB(o[p+(X+1<<2)>>2]|0,an)|0,!(X>>>0>>0&G>>>0<(y-X|0)>>>0)){G=0;break e}if(n[p+(X+G)>>0]|0){G=0;break e}if(G=m$e(w,p+X|0)|0,!G)break;if(G=(G|0)<0,(U|0)==1){G=0;break e}else St=G?St:Xe,U=G?Ge:U-Ge|0}G=le+ht|0,X=FB(o[p+(G<<2)>>2]|0,an)|0,G=FB(o[p+(G+1<<2)>>2]|0,an)|0,G>>>0>>0&X>>>0<(y-G|0)>>>0?G=n[p+(G+X)>>0]|0?0:p+G|0:G=0}else G=0;while(!1);return G|0}function FB(p,y){p=p|0,y=y|0;var w=0;return w=O3(p|0)|0,(y|0?w:p)|0}function mie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=w+16|0,X=o[G>>2]|0,X?U=5:MWt(w)|0?G=0:(X=o[G>>2]|0,U=5);e:do if((U|0)==5){if(Ge=w+20|0,le=o[Ge>>2]|0,G=le,(X-le|0)>>>0>>0){G=t9[o[w+36>>2]&7](w,p,y)|0;break}t:do if((n[w+75>>0]|0)>-1){for(le=y;;){if(!le){U=0,X=p;break t}if(X=le+-1|0,(n[p+X>>0]|0)==10)break;le=X}if(G=t9[o[w+36>>2]&7](w,p,le)|0,G>>>0>>0)break e;U=le,X=p+le|0,y=y-le|0,G=o[Ge>>2]|0}else U=0,X=p;while(!1);Yd(G|0,X|0,y|0)|0,o[Ge>>2]=(o[Ge>>2]|0)+y,G=U+y|0}while(!1);return G|0}function MWt(p){p=p|0;var y=0,w=0;return y=p+74|0,w=n[y>>0]|0,n[y>>0]=w+255|w,y=o[p>>2]|0,y&8?(o[p>>2]=y|32,p=-1):(o[p+8>>2]=0,o[p+4>>2]=0,w=o[p+44>>2]|0,o[p+28>>2]=w,o[p+20>>2]=w,o[p+16>>2]=w+(o[p+48>>2]|0),p=0),p|0}function zs(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=_A(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=_A(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?y:p;break}else{p=p>2]=p,o[E>>2]|0|0}function TU(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=E$e(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=E$e(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?p:y;break}else{p=p>2]=p,o[E>>2]|0|0}function Bz(p,y){p=ke(p),y=ke(y);var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;U=(I[E>>2]=p,o[E>>2]|0),Ge=(I[E>>2]=y,o[E>>2]|0),w=U>>>23&255,le=Ge>>>23&255,Xe=U&-2147483648,X=Ge<<1;e:do if(X|0&&!((w|0)==255|((Ide(y)|0)&2147483647)>>>0>2139095040)){if(G=U<<1,G>>>0<=X>>>0)return y=ke(p*ke(0)),ke((G|0)==(X|0)?y:p);if(w)G=U&8388607|8388608;else{if(w=U<<9,(w|0)>-1){G=w,w=0;do w=w+-1|0,G=G<<1;while((G|0)>-1)}else w=0;G=U<<1-w}if(le)Ge=Ge&8388607|8388608;else{if(U=Ge<<9,(U|0)>-1){X=0;do X=X+-1|0,U=U<<1;while((U|0)>-1)}else X=0;le=X,Ge=Ge<<1-X}X=G-Ge|0,U=(X|0)>-1;t:do if((w|0)>(le|0)){for(;;){if(U)if(X)G=X;else break;if(G=G<<1,w=w+-1|0,X=G-Ge|0,U=(X|0)>-1,(w|0)<=(le|0))break t}y=ke(p*ke(0));break e}while(!1);if(U)if(X)G=X;else{y=ke(p*ke(0));break}if(G>>>0<8388608)do G=G<<1,w=w+-1|0;while(G>>>0<8388608);(w|0)>0?w=G+-8388608|w<<23:w=G>>>(1-w|0),y=(o[E>>2]=w|Xe,ke(I[E>>2]))}else St=3;while(!1);return(St|0)==3&&(y=ke(p*y),y=ke(y/y)),ke(y)}function Ide(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function HWt(p,y){return p=p|0,y=y|0,pde(o[582]|0,p,y)|0}function me(p){p=p|0,Ko()}function wz(p){p=p|0}function S$e(p,y){return p=p|0,y=y|0,0}function ua(p){return p=p|0,(v$e(p+4|0)|0)==-1?(LF[o[(o[p>>2]|0)+8>>2]&127](p),p=1):p=0,p|0}function v$e(p){p=p|0;var y=0;return y=o[p>>2]|0,o[p>>2]=y+-1,y+-1|0}function RU(p){p=p|0,ua(p)|0&&u_(p)}function u_(p){p=p|0;var y=0;y=p+8|0,o[y>>2]|0&&(v$e(y)|0)!=-1||LF[o[(o[p>>2]|0)+16>>2]&127](p)}function ju(p){p=p|0;var y=0;for(y=p|0?p:1;p=gie(y)|0,!(p|0);){if(p=Cie()|0,!p){p=0;break}vEe[p&0]()}return p|0}function Tz(p){return p=p|0,ju(p)|0}function ti(p){p=p|0,Aie(p)}function Ww(p){p=p|0,(n[p+11>>0]|0)<0&&ti(o[p>>2]|0)}function Cie(){var p=0;return p=o[2923]|0,o[2923]=p+0,p|0}function L3(){}function zT(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,G=y-G-(w>>>0>p>>>0|0)>>>0,ze=G,p-w>>>0|0|0}function Yg(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,w=p+w>>>0,ze=y+G+(w>>>0

>>0|0)>>>0,w|0|0}function Rz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;if(U=p+w|0,y=y&255,(w|0)>=67){for(;p&3;)n[p>>0]=y,p=p+1|0;for(G=U&-4|0,X=G-64|0,le=y|y<<8|y<<16|y<<24;(p|0)<=(X|0);)o[p>>2]=le,o[p+4>>2]=le,o[p+8>>2]=le,o[p+12>>2]=le,o[p+16>>2]=le,o[p+20>>2]=le,o[p+24>>2]=le,o[p+28>>2]=le,o[p+32>>2]=le,o[p+36>>2]=le,o[p+40>>2]=le,o[p+44>>2]=le,o[p+48>>2]=le,o[p+52>>2]=le,o[p+56>>2]=le,o[p+60>>2]=le,p=p+64|0;for(;(p|0)<(G|0);)o[p>>2]=le,p=p+4|0}for(;(p|0)<(U|0);)n[p>>0]=y,p=p+1|0;return U-w|0}function hEe(p,y,w){return p=p|0,y=y|0,w=w|0,(w|0)<32?(ze=y<>>32-w,p<>>w,p>>>w|(y&(1<>>w-32|0)}function Yd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;if((w|0)>=8192)return Hu(p|0,y|0,w|0)|0;if(U=p|0,X=p+w|0,(p&3)==(y&3)){for(;p&3;){if(!w)return U|0;n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0,w=w-1|0}for(w=X&-4|0,G=w-64|0;(p|0)<=(G|0);)o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2],o[p+16>>2]=o[y+16>>2],o[p+20>>2]=o[y+20>>2],o[p+24>>2]=o[y+24>>2],o[p+28>>2]=o[y+28>>2],o[p+32>>2]=o[y+32>>2],o[p+36>>2]=o[y+36>>2],o[p+40>>2]=o[y+40>>2],o[p+44>>2]=o[y+44>>2],o[p+48>>2]=o[y+48>>2],o[p+52>>2]=o[y+52>>2],o[p+56>>2]=o[y+56>>2],o[p+60>>2]=o[y+60>>2],p=p+64|0,y=y+64|0;for(;(p|0)<(w|0);)o[p>>2]=o[y>>2],p=p+4|0,y=y+4|0}else for(w=X-4|0;(p|0)<(w|0);)n[p>>0]=n[y>>0]|0,n[p+1>>0]=n[y+1>>0]|0,n[p+2>>0]=n[y+2>>0]|0,n[p+3>>0]=n[y+3>>0]|0,p=p+4|0,y=y+4|0;for(;(p|0)<(X|0);)n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0;return U|0}function ZB(p){p=p|0;var y=0;return y=n[Q+(p&255)>>0]|0,(y|0)<8?y|0:(y=n[Q+(p>>8&255)>>0]|0,(y|0)<8?y+8|0:(y=n[Q+(p>>16&255)>>0]|0,(y|0)<8?y+16|0:(n[Q+(p>>>24)>>0]|0)+24|0))}function yh(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0;if(ht=p,Xe=y,St=Xe,le=w,an=G,Ge=an,!St)return U=(X|0)!=0,Ge?U?(o[X>>2]=p|0,o[X+4>>2]=y&0,an=0,X=0,ze=an,X|0):(an=0,X=0,ze=an,X|0):(U&&(o[X>>2]=(ht>>>0)%(le>>>0),o[X+4>>2]=0),an=0,X=(ht>>>0)/(le>>>0)>>>0,ze=an,X|0);U=(Ge|0)==0;do if(le){if(!U){if(U=(yn(Ge|0)|0)-(yn(St|0)|0)|0,U>>>0<=31){rr=U+1|0,Ge=31-U|0,y=U-31>>31,le=rr,p=ht>>>(rr>>>0)&y|St<>>(rr>>>0)&y,U=0,Ge=ht<>2]=p|0,o[X+4>>2]=Xe|y&0,an=0,X=0,ze=an,X|0):(an=0,X=0,ze=an,X|0)}if(U=le-1|0,U&le|0){Ge=(yn(le|0)|0)+33-(yn(St|0)|0)|0,zi=64-Ge|0,rr=32-Ge|0,Xe=rr>>31,Ks=Ge-32|0,y=Ks>>31,le=Ge,p=rr-1>>31&St>>>(Ks>>>0)|(St<>>(Ge>>>0))&y,y=y&St>>>(Ge>>>0),U=ht<>>(Ks>>>0))&Xe|ht<>31;break}return X|0&&(o[X>>2]=U&ht,o[X+4>>2]=0),(le|0)==1?(Ks=Xe|y&0,zi=p|0|0,ze=Ks,zi|0):(zi=ZB(le|0)|0,Ks=St>>>(zi>>>0)|0,zi=St<<32-zi|ht>>>(zi>>>0)|0,ze=Ks,zi|0)}else{if(U)return X|0&&(o[X>>2]=(St>>>0)%(le>>>0),o[X+4>>2]=0),Ks=0,zi=(St>>>0)/(le>>>0)>>>0,ze=Ks,zi|0;if(!ht)return X|0&&(o[X>>2]=0,o[X+4>>2]=(St>>>0)%(Ge>>>0)),Ks=0,zi=(St>>>0)/(Ge>>>0)>>>0,ze=Ks,zi|0;if(U=Ge-1|0,!(U&Ge))return X|0&&(o[X>>2]=p|0,o[X+4>>2]=U&St|y&0),Ks=0,zi=St>>>((ZB(Ge|0)|0)>>>0),ze=Ks,zi|0;if(U=(yn(Ge|0)|0)-(yn(St|0)|0)|0,U>>>0<=30){y=U+1|0,Ge=31-U|0,le=y,p=St<>>(y>>>0),y=St>>>(y>>>0),U=0,Ge=ht<>2]=p|0,o[X+4>>2]=Xe|y&0,Ks=0,zi=0,ze=Ks,zi|0):(Ks=0,zi=0,ze=Ks,zi|0)}while(!1);if(!le)St=Ge,Xe=0,Ge=0;else{rr=w|0|0,ht=an|G&0,St=Yg(rr|0,ht|0,-1,-1)|0,w=ze,Xe=Ge,Ge=0;do G=Xe,Xe=U>>>31|Xe<<1,U=Ge|U<<1,G=p<<1|G>>>31|0,an=p>>>31|y<<1|0,zT(St|0,w|0,G|0,an|0)|0,zi=ze,Ks=zi>>31|((zi|0)<0?-1:0)<<1,Ge=Ks&1,p=zT(G|0,an|0,Ks&rr|0,(((zi|0)<0?-1:0)>>31|((zi|0)<0?-1:0)<<1)&ht|0)|0,y=ze,le=le-1|0;while(le|0);St=Xe,Xe=0}return le=0,X|0&&(o[X>>2]=p,o[X+4>>2]=y),Ks=(U|0)>>>31|(St|le)<<1|(le<<1|U>>>31)&0|Xe,zi=(U<<1|0)&-2|Ge,ze=Ks,zi|0}function W3(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,yh(p,y,w,G,0)|0}function LB(p){p=p|0;var y=0,w=0;return w=p+15&-16|0,y=o[b>>2]|0,p=y+w|0,(w|0)>0&(p|0)<(y|0)|(p|0)<0?(Ao()|0,Vs(12),-1):(o[b>>2]=p,(p|0)>(Hi()|0)&&!(Nn()|0)?(o[b>>2]=y,Vs(12),-1):y|0)}function qT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if((y|0)<(p|0)&(p|0)<(y+w|0)){for(G=p,y=y+w|0,p=p+w|0;(w|0)>0;)p=p-1|0,y=y-1|0,w=w-1|0,n[p>>0]=n[y>>0]|0;p=G}else Yd(p,y,w)|0;return p|0}function NU(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;return U=B,B=B+16|0,X=U|0,yh(p,y,w,G,X)|0,B=U,ze=o[X+4>>2]|0,o[X>>2]|0|0}function O3(p){return p=p|0,(p&255)<<24|(p>>8&255)<<16|(p>>16&255)<<8|p>>>24|0}function Nz(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,N$e[p&1](y|0,w|0,G|0,X|0,U|0)}function i9e(p,y,w){p=p|0,y=y|0,w=ke(w),D$e[p&1](y|0,ke(w))}function s9e(p,y,w){p=p|0,y=y|0,w=+w,k$e[p&31](y|0,+w)}function o9e(p,y,w,G){return p=p|0,y=y|0,w=ke(w),G=ke(G),ke(Eie[p&0](y|0,ke(w),ke(G)))}function uQ(p,y){p=p|0,y=y|0,LF[p&127](y|0)}function bN(p,y,w){p=p|0,y=y|0,w=w|0,nk[p&31](y|0,w|0)}function B$e(p,y){return p=p|0,y=y|0,yC[p&31](y|0)|0}function mEe(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0,gQ[p&1](y|0,+w,+G,X|0)}function a9e(p,y,w,G){p=p|0,y=y|0,w=+w,G=+G,Lg[p&1](y|0,+w,+G)}function CEe(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,t9[p&7](y|0,w|0,G|0)|0}function _Ee(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,+EEe[p&1](y|0,w|0,G|0)}function yEe(p,y){return p=p|0,y=y|0,+MW[p&15](y|0)}function c9e(p,y,w){return p=p|0,y=y|0,w=+w,AQ[p&1](y|0,+w)|0}function l9e(p,y,w){return p=p|0,y=y|0,w=w|0,Sie[p&15](y|0,w|0)|0}function Vx(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=+G,X=+X,U=U|0,Cde[p&1](y|0,w|0,+G,+X,U|0)}function P3(p,y,w,G,X,U,le){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0,_de[p&1](y|0,w|0,G|0,X|0,U|0,le|0)}function _ie(p,y,w){return p=p|0,y=y|0,w=w|0,+SEe[p&7](y|0,w|0)}function w$e(p){return p=p|0,kz[p&7]()|0}function u9e(p,y,w,G,X,U){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,yde[p&1](y|0,w|0,G|0,X|0,U|0)|0}function g9e(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=+X,vie[p&1](y|0,w|0,G|0,+X)}function A9e(p,y,w,G,X,U,le){p=p|0,y=y|0,w=w|0,G=ke(G),X=X|0,U=ke(U),le=le|0,xz[p&1](y|0,w|0,ke(G),X|0,ke(U),le|0)}function d9e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,$T[p&15](y|0,w|0,G|0)}function p9e(p){p=p|0,vEe[p&0]()}function T$e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,Bie[p&15](y|0,w|0,+G)}function YWt(p,y,w){return p=p|0,y=+y,w=+w,h9e[p&1](+y,+w)|0}function QWt(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,Ir[p&15](y|0,w|0,G|0,X|0)}function XWt(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,zt(0)}function JWt(p,y){p=p|0,y=ke(y),zt(1)}function Wx(p,y){p=p|0,y=+y,zt(2)}function UWt(p,y,w){return p=p|0,y=ke(y),w=ke(w),zt(3),As}function nd(p){p=p|0,zt(4)}function hde(p,y){p=p|0,y=y|0,zt(5)}function ZF(p){return p=p|0,zt(6),0}function KWt(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,zt(7)}function jWt(p,y,w){p=p|0,y=+y,w=+w,zt(8)}function zWt(p,y,w){return p=p|0,y=y|0,w=w|0,zt(9),0}function qWt(p,y,w){return p=p|0,y=y|0,w=w|0,zt(10),0}function Dz(p){return p=p|0,zt(11),0}function $Wt(p,y){return p=p|0,y=+y,zt(12),0}function mde(p,y){return p=p|0,y=y|0,zt(13),0}function eOt(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0,zt(14)}function tOt(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,zt(15)}function f9e(p,y){return p=p|0,y=y|0,zt(16),0}function rOt(){return zt(17),0}function I9e(p,y,w,G,X){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,zt(18),0}function nOt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,zt(19)}function R$e(p,y,w,G,X,U){p=p|0,y=y|0,w=ke(w),G=G|0,X=ke(X),U=U|0,zt(20)}function bEe(p,y,w){p=p|0,y=y|0,w=w|0,zt(21)}function iOt(){zt(22)}function yie(p,y,w){p=p|0,y=y|0,w=+w,zt(23)}function sOt(p,y){return p=+p,y=+y,zt(24),0}function bie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,zt(25)}var N$e=[XWt,VAe],D$e=[JWt,r2],k$e=[Wx,FC,t0,s1,IB,bw,WT,S0,n2,Ed,cg,vb,o1,q2,r0,s_,Up,gE,AE,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx],Eie=[UWt],LF=[nd,wz,hA,vI,$d,Gge,$re,bW,tWt,rLe,fU,Jne,Nbe,hv,PW,yN,cie,VA,iy,Sb,ia,SI,VD,yB,kr,We,cv,Aa,Sye,oN,mC,Bw,Bye,yE,I3,jre,y7,PL,nne,yZe,YY,Sl,Fye,tAe,ML,cAe,Z7,qR,Sne,Jye,P7,qye,Gne,obe,JVt,jVt,bAe,EAe,pbe,hbe,Ga,_be,$7,_t,o0,NLe,Xbe,DWt,Iz,$L,e9,XLe,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd],nk=[hde,pB,FD,LD,$R,lc,Ch,sf,EI,Jp,fB,_h,kp,i2,Ro,fE,hB,Xc,su,sy,o_,It,k7,oAe,zY,lS,iWt,Obe,hde,hde,hde,hde],yC=[ZF,BU,i1,cA,dE,nh,Mf,Mo,dp,fF,pE,OT,Cp,Im,Tb,LVt,_Ae,Hne,VW,Lb,ZF,ZF,ZF,ZF,ZF,ZF,ZF,ZF,ZF,ZF,ZF,ZF],gQ=[KWt,TL],Lg=[jWt,tLe],t9=[zWt,die,WWt,uEe,MD,JD,LZe,ZLe],EEe=[qWt,wB],MW=[Dz,Fm,xp,IE,hF,x,L,te,Re,Ve,Dz,Dz,Dz,Dz,Dz,Dz],AQ=[$Wt,XVt],Sie=[mde,S$e,$2,ja,mA,A3,NY,xge,Mge,Pye,r1,zAe,mde,mde,mde,mde],Cde=[eOt,c3],_de=[tOt,ug],SEe=[f9e,wL,dr,Ur,mi,Rge,f9e,f9e],kz=[rOt,Vi,k_,GD,dU,$Ze,mbe,_z],yde=[I9e,Xp],vie=[nOt,C3],xz=[R$e,PT],$T=[bEe,Iu,IF,eN,Pu,u3,Sge,Bd,GVt,pF,pWt,vWt,HLe,bEe,bEe,bEe],vEe=[iOt],Bie=[yie,ZD,e0,uE,rv,mp,jh,v0,qJ,QL,HVt,yie,yie,yie,yie,yie],h9e=[sOt,$Vt],Ir=[bie,Bge,y3,UT,ibe,T3,pN,c_,Sbe,eie,nEe,bie,bie,bie,bie,bie];return{_llvm_bswap_i32:O3,dynCall_idd:YWt,dynCall_i:w$e,_i64Subtract:zT,___udivdi3:W3,dynCall_vif:i9e,setThrew:ad,dynCall_viii:d9e,_bitshift64Lshr:V3,_bitshift64Shl:hEe,dynCall_vi:uQ,dynCall_viiddi:Vx,dynCall_diii:_Ee,dynCall_iii:l9e,_memset:Rz,_sbrk:LB,_memcpy:Yd,__GLOBAL__sub_I_Yoga_cpp:dB,dynCall_vii:bN,___uremdi3:NU,dynCall_vid:s9e,stackAlloc:Nf,_nbind_init:f2,getTempRet0:rl,dynCall_di:yEe,dynCall_iid:c9e,setTempRet0:Qm,_i64Add:Yg,dynCall_fiff:o9e,dynCall_iiii:CEe,_emscripten_get_global_libc:dde,dynCall_viid:T$e,dynCall_viiid:g9e,dynCall_viififi:A9e,dynCall_ii:B$e,__GLOBAL__sub_I_Binding_cc:CWt,dynCall_viiii:QWt,dynCall_iiiiii:u9e,stackSave:Am,dynCall_viiiii:Nz,__GLOBAL__sub_I_nbind_cc:Ta,dynCall_vidd:a9e,_free:Aie,runPostSets:L3,dynCall_viiiiii:P3,establishStackSpace:rc,_memmove:qT,stackRestore:Zl,_malloc:gie,__GLOBAL__sub_I_common_cc:zm,dynCall_viddi:mEe,dynCall_dii:_ie,dynCall_v:p9e}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(t){t=t||[],ensureInitRuntime();var r=t.length+1;function n(){for(var f=0;f<3;f++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];n();for(var o=0;o0||(preRun(),runDependencies>0)||Module.calledRun)return;function t(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()}Module.run=Module.run=run;function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){Module.onAbort&&Module.onAbort(e),e!==void 0?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var t=` -If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+e+") at "+stackTrace()+t;throw abortDecorators&&abortDecorators.forEach(function(n){r=n(r,e)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var JO=H((q$l,tHn)=>{"use strict";var YUo=$Mn(),QUo=eHn(),ahr=!1,chr=null;QUo({},function(e,t){if(!ahr){if(ahr=!0,e)throw e;chr=t}});if(!ahr)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");tHn.exports=YUo(chr.bind,chr.lib)});var uhr=H(($$l,lhr)=>{"use strict";var rHn=e=>Number.isNaN(e)?!1: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);lhr.exports=rHn;lhr.exports.default=rHn});var iHn=H((eeu,nHn)=>{"use strict";nHn.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var FBe=H((teu,ghr)=>{"use strict";var XUo=oM(),JUo=uhr(),UUo=iHn(),sHn=e=>{if(typeof e!="string"||e.length===0||(e=XUo(e),e.length===0))return 0;e=e.replace(UUo()," ");let t=0;for(let r=0;r=127&&n<=159||n>=768&&n<=879||(n>65535&&r++,t+=JUo(n)?2:1)}return t};ghr.exports=sHn;ghr.exports.default=sHn});var iHe=H((reu,Ahr)=>{"use strict";var KUo=FBe(),oHn=e=>{let t=0;for(let r of e.split(` -`))t=Math.max(t,KUo(r));return t};Ahr.exports=oHn;Ahr.exports.default=oHn});var aHn=H(sHe=>{"use strict";var jUo=sHe&&sHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sHe,"__esModule",{value:!0});var zUo=jUo(iHe()),dhr={};sHe.default=e=>{if(e.length===0)return{width:0,height:0};if(dhr[e])return dhr[e];let t=zUo.default(e),r=e.split(` -`).length;return dhr[e]={width:t,height:r},{width:t,height:r}}});var cHn=H(oHe=>{"use strict";var qUo=oHe&&oHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(oHe,"__esModule",{value:!0});var y_=qUo(JO()),$Uo=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?y_.default.POSITION_TYPE_ABSOLUTE:y_.default.POSITION_TYPE_RELATIVE)},eKo=(e,t)=>{"marginLeft"in t&&e.setMargin(y_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(y_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(y_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(y_.default.EDGE_BOTTOM,t.marginBottom||0)},tKo=(e,t)=>{"paddingLeft"in t&&e.setPadding(y_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(y_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(y_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(y_.default.EDGE_BOTTOM,t.paddingBottom||0)},rKo=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(y_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(y_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(y_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(y_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(y_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(y_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(y_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(y_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(y_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(y_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(y_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(y_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(y_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(y_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(y_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(y_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(y_.default.JUSTIFY_SPACE_AROUND))},nKo=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},iKo=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?y_.default.DISPLAY_FLEX:y_.default.DISPLAY_NONE)},sKo=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(y_.default.EDGE_TOP,r),e.setBorder(y_.default.EDGE_BOTTOM,r),e.setBorder(y_.default.EDGE_LEFT,r),e.setBorder(y_.default.EDGE_RIGHT,r)}};oHe.default=(e,t={})=>{$Uo(e,t),eKo(e,t),tKo(e,t),rKo(e,t),nKo(e,t),iKo(e,t),sKo(e,t)}});var Ihr=H((seu,uHn)=>{"use strict";var aHe=FBe(),oKo=oM(),aKo=klt(),fhr=new Set(["\x1B","\x9B"]),cKo=39,lHn=e=>`${fhr.values().next().value}[${e}m`,lKo=e=>e.split(" ").map(t=>aHe(t)),phr=(e,t,r)=>{let n=[...t],a=!1,o=aHe(oKo(e[e.length-1]));for(let[l,A]of n.entries()){let f=aHe(A);if(o+f<=r?e[e.length-1]+=A:(e.push(A),o=0),fhr.has(A))a=!0;else if(a&&A==="m"){a=!1;continue}a||(o+=f,o===r&&l0&&e.length>1&&(e[e.length-2]+=e.pop())},uKo=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(aHe(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},gKo=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a="",o,l=lKo(e),A=[""];for(let[f,I]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let C=aHe(A[A.length-1]);if(f!==0&&(C>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),C=0),(C>0||r.trim===!1)&&(A[A.length-1]+=" ",C++)),r.hard&&l[f]>t){let b=t-C,E=1+Math.floor((l[f]-b-1)/t);Math.floor((l[f]-1)/t)t&&C>0&&l[f]>0){if(r.wordWrap===!1&&Ct&&r.wordWrap===!1){phr(A,I,t);continue}A[A.length-1]+=I}r.trim!==!1&&(A=A.map(uKo)),n=A.join(` + `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Ot(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:RL,findFiberByHostInstance:x.findFiberByHostInstance||mF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Nf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=vb(x,L);var Ve=zr(x,te,Re).disconnect;return{disconnect:function(){Ve()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Zl;try{return Zl=x,L()}finally{Zl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(v0(),op())}},r.updateContainer=function(x,L,te,Re){var Ve=L.current,It=Iu(),dr=Kp(Ve);e:if(te){te=te._reactInternals;t:{if(tt(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=zf;return L.context===null?L.context=te:L.pendingContext=te,L=dm(It,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),qf(Ve,L),IC(Ve,dr,It),dr},r}});var $Mn=H((Leu,qMn)=>{"use strict";qMn.exports=zMn()});var tHn=H((Veu,eHn)=>{"use strict";var PUo={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};eHn.exports=PUo});var sHn=H((Weu,iHn)=>{"use strict";var MUo=Object.assign||function(e){for(var t=1;t"}}]),e}(),rHn=function(){Upt(e,null,[{key:"fromJS",value:function(r){var n=r.width,a=r.height;return new e(n,a)}}]);function e(t,r){ohr(this,e),this.width=t,this.height=r}return Upt(e,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),nHn=function(){function e(t,r){ohr(this,e),this.unit=t,this.value=r}return Upt(e,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case kX.UNIT_POINT:return String(this.value);case kX.UNIT_PERCENT:return this.value+"%";case kX.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();iHn.exports=function(e,t){function r(l,A,f){var I=l[A];l[A]=function(){for(var C=arguments.length,b=Array(C),E=0;E1?b-1:0),N=1;N1&&arguments[1]!==void 0?arguments[1]:NaN,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,I=arguments.length>3&&arguments[3]!==void 0?arguments[3]:kX.DIRECTION_LTR;return l.call(this,A,f,I)}),MUo({Config:t.Config,Node:t.Node,Layout:e("Layout",HUo),Size:e("Size",rHn),Value:e("Value",nHn),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},kX)}});var oHn=H((exports,module)=>{(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t}):typeof module=="object"&&module.exports?module.exports=t:(e.nbind=e.nbind||{}).init=t})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){t(r);return}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module<"u"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof Et=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(t,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),t=nodePath.normalize(t);var n=nodeFS.readFileSync(t);return r?n:n.toString()},Module.readBinary=function(t){var r=Module.read(t,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},Module.load=function(t){globalEval(read(t))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(t){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(t));var r=read(t,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(e,t){quit(e)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(t,r,n){var a=new XMLHttpRequest;a.open("GET",t,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):n()},a.onerror=n,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")Module.print||(Module.print=function(t){console.log(t)}),Module.printErr||(Module.printErr=function(t){console.warn(t)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump<"u"?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(e){document.title=e})}else throw"Unknown runtime environment. Where are we?";function globalEval(e){eval.call(null,e)}!Module.load&&Module.read&&(Module.load=function(t){globalEval(Module.read(t))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return Runtime.QUANTUM_SIZE;if(e[0]==="i"){var t=parseInt(e.substr(1));return assert(t%8===0),t/8}else return 0}}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return t==="double"||t==="i64"?e&7&&(assert((e&7)===4),e+=4):assert((e&3)===0),e},getAlignSize:function(e,t,r){return!r&&(e=="i64"||e=="double")?8:e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8)},dynCall:function(e,t,r){return r&&r.length?Module["dynCall_"+e].apply(null,[t].concat(r)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],r=(t+e+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var n=enlargeMemory();if(!n)return HEAP32[DYNAMICTOP_PTR>>2]=t,0}return t},alignMemory:function(e,t){var r=e=Math.ceil(e/(t||16))*(t||16);return r},makeBigInt:function(e,t,r){var n=r?+(e>>>0)+ +(t>>>0)*4294967296:+(e>>>0)+ +(t|0)*4294967296;return n},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(e!=null&&e!==0){var r=(e.length<<2)+1;t=Runtime.stackAlloc(r),stringToUTF8(e,t,r)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(t,r,n,a,o){var l=getCFunc(t),A=[],f=0;if(a)for(var I=0;I>0]=t;break;case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(e,t,r){switch(t=t||"i8",t.charAt(t.length-1)==="*"&&(t="i32"),t){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(e,t,r,n){var a,o;typeof e=="number"?(a=!0,o=e):(a=!1,o=e.length);var l=typeof t=="string"?t:null,A;if(r==ALLOC_NONE?A=n:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(o,l?1:t.length)),a){var n=A,f;for(assert((A&3)==0),f=A+(o&-4);n>2]=0;for(f=A+o;n>0]=0;return A}if(l==="i8")return e.subarray||e.slice?HEAPU8.set(e,A):HEAPU8.set(new Uint8Array(e),A),A;for(var I=0,C,b,E;I>0],r|=n,!(n==0&&!t||(a++,t&&a==t)););t||(t=a);var o="";if(r<128){for(var l=1024,A;t>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,l))),o=o?o+A:A,e+=l,t-=l;return o}return Module.UTF8ToString(e)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(e){for(var t="";;){var r=HEAP8[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var n,a,o,l,A,f,I="";;){if(n=e[t++],!n)return I;if(!(n&128)){I+=String.fromCharCode(n);continue}if(a=e[t++]&63,(n&224)==192){I+=String.fromCharCode((n&31)<<6|a);continue}if(o=e[t++]&63,(n&240)==224?n=(n&15)<<12|a<<6|o:(l=e[t++]&63,(n&248)==240?n=(n&7)<<18|a<<12|o<<6|l:(A=e[t++]&63,(n&252)==248?n=(n&3)<<24|a<<18|o<<12|l<<6|A:(f=e[t++]&63,n=(n&1)<<30|a<<24|o<<18|l<<12|A<<6|f))),n<65536)I+=String.fromCharCode(n);else{var C=n-65536;I+=String.fromCharCode(55296|C>>10,56320|C&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(e,t,r,n){if(!(n>0))return 0;for(var a=r,o=r+n-1,l=0;l=55296&&A<=57343&&(A=65536+((A&1023)<<10)|e.charCodeAt(++l)&1023),A<=127){if(r>=o)break;t[r++]=A}else if(A<=2047){if(r+1>=o)break;t[r++]=192|A>>6,t[r++]=128|A&63}else if(A<=65535){if(r+2>=o)break;t[r++]=224|A>>12,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=2097151){if(r+3>=o)break;t[r++]=240|A>>18,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=67108863){if(r+4>=o)break;t[r++]=248|A>>24,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else{if(r+5>=o)break;t[r++]=252|A>>30,t[r++]=128|A>>24&63,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}}return t[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(e,t,r){return stringToUTF8Array(e,HEAPU8,t,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(e){for(var t=0,r=0;r=55296&&n<=57343&&(n=65536+((n&1023)<<10)|e.charCodeAt(++r)&1023),n<=127?++t:n<=2047?t+=2:n<=65535?t+=3:n<=2097151?t+=4:n<=67108863?t+=5:t+=6}return t}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var r=e.substr(1),n=lengthBytesUTF8(r)+1,a=_malloc(n);stringToUTF8(r,a,n);var o=_malloc(4),l=t(a,0,0,o);if(getValue(o,"i32")===0&&l)return Pointer_stringify(l)}catch{}finally{a&&_free(a),o&&_free(o),l&&_free(l)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){var t=/__Z[\w\d_]+/g;return e.replace(t,function(r){var n=demangle(r);return r===n?r:r+" ["+n+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=` +`+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var t=e.shift();if(typeof t=="function"){t();continue}var r=t.func;typeof r=="number"?t.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(t.arg===void 0?null:t.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}Module.addOnPreRun=addOnPreRun;function addOnInit(e){__ATINIT__.unshift(e)}Module.addOnInit=addOnInit;function addOnPreMain(e){__ATMAIN__.unshift(e)}Module.addOnPreMain=addOnPreMain;function addOnExit(e){__ATEXIT__.unshift(e)}Module.addOnExit=addOnExit;function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(e,t,r){var n=r>0?r:lengthBytesUTF8(e)+1,a=new Array(n),o=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=o),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(e){for(var t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(e,t,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var n,a;r&&(a=t+lengthBytesUTF8(e),n=HEAP8[a]),stringToUTF8(e,t,1/0),r&&(HEAP8[a]=n)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(e,t){HEAP8.set(e,t)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(e,t,r){for(var n=0;n>0]=e.charCodeAt(n);r||(HEAP8[t>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function e(t,r){var n=t>>>16,a=t&65535,o=r>>>16,l=r&65535;return a*l+(n*l+a*o<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e=e>>>0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,r,n,a,o,l,A){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,r,n,a,o,l,A){return ASM_CONSTS[e](t,r,n,a,o,l,A)}function _emscripten_asm_const_iiiii(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiidddddd(e,t,r,n,a,o,l,A,f){return ASM_CONSTS[e](t,r,n,a,o,l,A,f)}function _emscripten_asm_const_iiididi(e,t,r,n,a,o,l){return ASM_CONSTS[e](t,r,n,a,o,l)}function _emscripten_asm_const_iiii(e,t,r,n){return ASM_CONSTS[e](t,r,n)}function _emscripten_asm_const_iiiid(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiiiii(e,t,r,n,a,o){return ASM_CONSTS[e](t,r,n,a,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,r,n){var a=arguments.length,o=a<3?t:n===null?n=Object.getOwnPropertyDescriptor(t,r):n,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(e,t,r,n);else for(var A=e.length-1;A>=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function _defineHidden(e){return function(t,r){Object.defineProperty(t,r,{configurable:!1,enumerable:!1,value:e,writable:!0})}}var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,r=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(r)}function __nbind_register_pool(e,t,r,n){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=n/4,HEAP32[t/4]=16909060,HEAP8[t]==1&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=(o={},o[1024]=_nbind.PrimitiveType,o[64]=_nbind.Int64Type,o[2048]=_nbind.BindClass,o[3072]=_nbind.BindClassPtr,o[4096]=_nbind.SharedClassPtr,o[5120]=_nbind.ArrayType,o[6144]=_nbind.ArrayType,o[7168]=_nbind.CStringType,o[9216]=_nbind.CallbackType,o[10240]=_nbind.BindType,o),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var o}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(e==0)Browser.mainLoop.scheduler=function(){var l=Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,l)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(!window.setImmediate){let o=function(l){l.source===window&&l.data===n&&(l.stopPropagation(),r.shift()())};var a=o,r=[],n="setimmediate";window.addEventListener("message",o,!0),window.setImmediate=function(A){r.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:n})):window.postMessage(n,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,r,n,a){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=n;var o;typeof n<"u"?o=function(){Module.dynCall_vi(e,n)}:o=function(){Module.dynCall_v(e)};var l=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var f=Date.now(),I=Browser.mainLoop.queue.shift();if(I.func(I.arg),Browser.mainLoop.remainingBlockers){var C=Browser.mainLoop.remainingBlockers,b=C%1==0?C-1:Math.floor(C);I.counted?Browser.mainLoop.remainingBlockers=b:(b=b+.5,Browser.mainLoop.remainingBlockers=(8*C+b)/9)}if(console.log('main loop blocker "'+I.name+'" took '+(Date.now()-f)+" ms"),Browser.mainLoop.updateStatus(),l1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),!(l0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;t?t"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(o)},e.handle=function(o,l,A,f){var I=null;if(Browser.hasBlobConstructor)try{I=new Blob([o],{type:Browser.getMimetype(l)}),I.size!==o.length&&(I=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(l)}))}catch(N){Runtime.warnOnce("Blob constructor present but fails: "+N+"; falling back to blob builder")}if(!I){var C=new Browser.BlobBuilder;C.append(new Uint8Array(o).buffer),I=C.getBlob()}var b=Browser.URLObject.createObjectURL(I),E=new Image;E.onload=function(){assert(E.complete,"Image "+l+" could not be decoded");var B=document.createElement("canvas");B.width=E.width,B.height=E.height;var F=B.getContext("2d");F.drawImage(E,0,0),Module.preloadedImages[l]=B,Browser.URLObject.revokeObjectURL(b),A&&A(o)},E.onerror=function(B){console.log("Image "+b+" could not be decoded"),f&&f()},E.src=b},Module.preloadPlugins.push(e);var t={};t.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(o,l,A,f){var I=!1;function C(F){I||(I=!0,Module.preloadedAudios[l]=F,A&&A(o))}function b(){I||(I=!0,Module.preloadedAudios[l]=new Audio,f&&f())}if(Browser.hasBlobConstructor){try{var E=new Blob([o],{type:Browser.getMimetype(l)})}catch{return b()}var N=Browser.URLObject.createObjectURL(E),B=new Audio;B.addEventListener("canplaythrough",function(){C(B)},!1),B.onerror=function(Q){if(I)return;console.log("warning: browser could not fully decode audio "+l+", trying slower base64 approach");function J(ae){for(var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ce="=",fe="",ue=0,de=0,be=0;be=6;){var Se=ue>>de-6&63;de-=6,fe+=ne[Se]}return de==2?(fe+=ne[(ue&3)<<4],fe+=ce+ce):de==4&&(fe+=ne[(ue&15)<<2],fe+=ce),fe}B.src="data:audio/x-"+l.substr(-3)+";base64,"+J(o),C(B)},B.src=N,Browser.safeSetTimeout(function(){C(B)},1e4)}else return b()},Module.preloadPlugins.push(t);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(e,t,r,n){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(t){var l={antialias:!1,alpha:!1};if(n)for(var A in n)l[A]=n[A];o=GL.createContext(e,l),o&&(a=GL.getContext(o).GLctx)}else a=e.getContext("2d");return a?(r&&(t||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(function(f){f()}),Browser.init()),a):null},destroyContext:function(e,t,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,r){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var n=Module.canvas;function a(){Browser.isFullscreen=!1;var l=n.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===l?(n.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},n.exitFullscreen=n.exitFullscreen.bind(document),Browser.lockPointer&&n.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(l.parentNode.insertBefore(n,l),l.parentNode.removeChild(l),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(n)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");n.parentNode.insertBefore(o,n),o.appendChild(n),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?o.requestFullscreen({vrDisplay:r}):o.requestFullscreen()},requestFullScreen:function(e,t,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(n,a,o){return Browser.requestFullscreen(n,a,o)},Browser.requestFullscreen(e,t,r)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame:function e(t){typeof window>"u"?Browser.fakeRequestAnimationFrame(t):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(t))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(t){t()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,n=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,o=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var l=e.touch;if(l===void 0)return;var A=l.pageX-(a+t.left),f=l.pageY-(o+t.top);A=A*(r/t.width),f=f*(n/t.height);var I={x:A,y:f};if(e.type==="touchstart")Browser.lastTouches[l.identifier]=I,Browser.touches[l.identifier]=I;else if(e.type==="touchend"||e.type==="touchmove"){var C=Browser.touches[l.identifier];C||(C=I),Browser.lastTouches[l.identifier]=C,Browser.touches[l.identifier]=I}return}var b=e.pageX-(a+t.left),E=e.pageY-(o+t.top);b=b*(r/t.width),E=E*(n/t.height),Browser.mouseMovementX=b-Browser.mouseX,Browser.mouseMovementY=E-Browser.mouseY,Browser.mouseX=b,Browser.mouseY=E}},asyncLoad:function(e,t,r,n){var a=n?"":"al "+e;Module.readAsync(e,function(o){assert(o,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(o)),a&&removeRunDependency(a)},function(o){if(r)r();else throw'Loading data file "'+e+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(t){t(e.width,e.height)})},setCanvasSize:function(e,t,r){var n=Module.canvas;Browser.updateCanvasDimensions(n,e,t),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(n/a>2];return t},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return e>=0?assert(t===0):assert(t===-1),e},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(n){return(typeof FS>"u"||!(n instanceof FS.ErrnoError))&&abort(n),-n.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function r(f,I,C,b,E,N){if(I==1){var B=b&896;(B==128||B==256||B==384)&&(f="X const")}var F;return N?F=C.replace("X",f).replace("Y",E):F=f.replace("X",C).replace("Y",E),F.replace(/([*&]) (?=[*&])/g,"$1")}function n(f,I,C,b,E){throw new Error(f+" type "+C.replace("X",I+"?")+(b?" with flag "+b:"")+" in "+E)}function a(f,I,C,b,E,N,B,F){N===void 0&&(N="X"),F===void 0&&(F=1);var Q=C(f);if(Q)return Q;var J=b(f),ae=J.placeholderFlag,ne=t[ae];B&&ne&&(N=r(B[2],B[0],N,ne[0],"?",!0));var ce;ae==0&&(ce="Unbound"),ae>=10&&(ce="Corrupt"),F>20&&(ce="Deeply nested"),ce&&n(ce,f,N,ae,E||"?");var fe=J.paramList[0],ue=a(fe,I,C,b,E,N,ne,F+1),de,be={flags:ne[0],id:f,name:"",paramList:[ue]},Se=[],De="?";switch(J.placeholderFlag){case 1:de=ue.spec;break;case 2:if((ue.flags&15360)==1024&&ue.spec.ptrSize==1){be.flags=7168;break}case 3:case 6:case 5:de=ue.spec,ue.flags&15360;break;case 8:De=""+J.paramList[1],be.paramList.push(J.paramList[1]);break;case 9:for(var k=0,tt=J.paramList[1];k>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),l=SYSCALLS.get(),A=a;return FS.llseek(r,A,l),HEAP32[o>>2]=r.position,r.getdents&&A===0&&l===0&&(r.getdents=null),0}catch(f){return(typeof FS>"u"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.get(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(C,b){var E=___syscall146.buffers[C];assert(E),b===0||b===10?((C===1?Module.print:Module.printErr)(UTF8ArrayToString(E,0)),E.length=0):E.push(b)});for(var l=0;l>2],f=HEAP32[n+(l*8+4)>>2],I=0;I"u"||!(C instanceof FS.ErrnoError))&&abort(C),-C.errno}}function __nbind_finish(){for(var e=0,t=_nbind.BindClass.list;ee.pageSize/2||t>e.pageSize-r){var n=_nbind.typeNameTbl.NBind.proto;return n.lalloc(t)}else return HEAPU32[e.usedPtr]=r+t,e.rootPtr+r},e.lreset=function(t,r){var n=HEAPU32[e.pagePtr];if(n){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(t,r)}else HEAPU32[e.usedPtr]=t},e}();_nbind.Pool=Pool;function constructType(e,t){var r=e==10240?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e],n=new r(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}_nbind.constructType=constructType;function getType(e){return typeIdTbl[e]}_nbind.getType=getType;function queryType(e){var t=HEAPU8[e],r=_nbind.structureList[t][1];e/=4,r<0&&(++e,r=HEAPU32[e]+1);var n=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+r));return t==9&&(n=[n[0],n.slice(1)]),{paramList:n,placeholderFlag:t}}_nbind.queryType=queryType;function getTypes(e,t){return e.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,t):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(e){var t={};if(e)for(;;){var r=HEAPU32[e/4];if(!r)break;t[readAsciiString(r)]=!0,e+=4}return t}_nbind.readPolicyList=readPolicyList;function getDynCall(e,t){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},n=e.map(function(o){return r[o.name]||"i"}).join(""),a=Module["dynCall_"+n];if(!a)throw new Error("dynCall_"+n+" not found for "+t+"("+e.map(function(o){return o.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(e,t,r,n){var a=e[t];e.hasOwnProperty(t)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),e[t]=a),a.addMethod(r,n)):(r.arity=n,e[t]=r)}_nbind.addMethod=addMethod;function throwError(e){throw new Error(e)}_nbind.throwError=throwError,_nbind.bigEndian=!1;var _a=_typeModule(_typeModule);_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return t.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){__extends(t,e);function t(r){var n=e.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=a[r.ptrSize*8],n.ptrSize=r.ptrSize,n}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},t}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(e,t){if(e==null){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if(typeof e!="string")throw new Error("Type mismatch")}else e=e.toString();var r=Module.lengthBytesUTF8(e)+1,n=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(e,HEAPU8,n,r),n}_nbind.pushCString=pushCString;function popCString(e){return e===0?null:Module.Pointer_stringify(e)}_nbind.popCString=popCString;var CStringType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return t.prototype.makeWireWrite=function(r,n){return function(a){return pushCString(a,n)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=function(n){return!!n},r}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireRead=function(r){return"!!("+r+")"},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();_nbind.Wrapper=Wrapper;function makeBound(e,t){var r=function(n){__extends(a,n);function a(o,l,A,f){var I=n.call(this)||this;if(!(I instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var C=l,b=A,E=f;if(o!==_nbind.ptrMarker){var N=I.__nbindConstructor.apply(I,arguments);C=4608,E=HEAPU32[N/4],b=HEAPU32[N/4+1]}var B={configurable:!0,enumerable:!1,value:null,writable:!1},F={__nbindFlags:C,__nbindPtr:b};E&&(F.__nbindShared=E,_nbind.mark(I));for(var Q=0,J=Object.keys(F);Q>=1;var r=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,r}else{if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(e){return typeof e=="number"?e:pushValue(e)*4096+valueBase}function pop64(e){return e=3?l=Buffer.from(o):l=new Buffer(o),l.copy(n)}else getBuffer(n).set(o)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(e,t,r,n,a,o){try{Module.dynCall_viiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_vif(e,t,r){try{Module.dynCall_vif(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_vid(e,t,r){try{Module.dynCall_vid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_fiff(e,t,r,n){try{return Module.dynCall_fiff(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(e,t){try{Module.dynCall_vi(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(e,t,r){try{Module.dynCall_vii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_ii(e,t){try{return Module.dynCall_ii(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(e,t,r,n,a){try{Module.dynCall_viddi(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vidd(e,t,r,n){try{Module.dynCall_vidd(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(e,t,r,n){try{return Module.dynCall_iiii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(e,t,r,n){try{return Module.dynCall_diii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(e,t){try{return Module.dynCall_di(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(e,t,r){try{return Module.dynCall_iid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_iii(e,t,r){try{return Module.dynCall_iii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiddi(e,t,r,n,a,o){try{Module.dynCall_viiddi(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiiiii(e,t,r,n,a,o,l){try{Module.dynCall_viiiiii(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(e,t,r){try{return Module.dynCall_dii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_iiiiii(e,t,r,n,a,o){try{return Module.dynCall_iiiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiid(e,t,r,n,a){try{Module.dynCall_viiid(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viififi(e,t,r,n,a,o,l){try{Module.dynCall_viififi(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(e,t,r,n){try{Module.dynCall_viii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viid(e,t,r,n){try{Module.dynCall_viid(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(e,t,r){try{return Module.dynCall_idd(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiii(e,t,r,n,a){try{Module.dynCall_viiii(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,r){var n=new e.Int8Array(r),a=new e.Int16Array(r),o=new e.Int32Array(r),l=new e.Uint8Array(r),A=new e.Uint16Array(r),f=new e.Uint32Array(r),I=new e.Float32Array(r),C=new e.Float64Array(r),b=t.DYNAMICTOP_PTR|0,E=t.tempDoublePtr|0,N=t.ABORT|0,B=t.STACKTOP|0,F=t.STACK_MAX|0,Q=t.cttz_i8|0,J=t.___dso_handle|0,ae=0,ne=0,ce=0,fe=0,ue=e.NaN,de=e.Infinity,be=0,Se=0,De=0,k=0,tt=0,ze=0,Le=e.Math.floor,Je=e.Math.abs,ft=e.Math.sqrt,lt=e.Math.pow,Ot=e.Math.cos,Er=e.Math.sin,Sr=e.Math.tan,jt=e.Math.acos,Bt=e.Math.asin,Nt=e.Math.atan,Fr=e.Math.atan2,$t=e.Math.exp,Xt=e.Math.log,lr=e.Math.ceil,cr=e.Math.imul,Ar=e.Math.min,qr=e.Math.max,_n=e.Math.clz32,ke=e.Math.fround,zt=t.abort,Fn=t.assert,Nn=t.enlargeMemory,Hi=t.getTotalMemory,Ao=t.abortOnCannotGrowMemory,Vr=t.invoke_viiiii,xi=t.invoke_vif,no=t.invoke_vid,ga=t.invoke_fiff,Ya=t.invoke_vi,Gc=t.invoke_vii,al=t.invoke_ii,Sc=t.invoke_viddi,Hr=t.invoke_vidd,Or=t.invoke_iiii,Ft=t.invoke_diii,zr=t.invoke_di,Rn=t.invoke_iid,Pr=t.invoke_iii,Qi=t.invoke_viiddi,ps=t.invoke_viiiiii,_o=t.invoke_dii,yo=t.invoke_i,Qa=t.invoke_iiiiii,gc=t.invoke_viiid,_g=t.invoke_viififi,Nc=t.invoke_viii,oA=t.invoke_v,ma=t.invoke_viid,vu=t.invoke_idd,li=t.invoke_viiii,Ei=t._emscripten_asm_const_iiiii,Ws=t._emscripten_asm_const_iiidddddd,Xa=t._emscripten_asm_const_iiiid,ac=t.__nbind_reference_external,Ql=t._emscripten_asm_const_iiiiiiii,Oc=t._removeAccessorPrefix,vg=t._typeModule,Kl=t.__nbind_register_pool,Ju=t.__decorate,Da=t._llvm_stackrestore,fu=t.___cxa_atexit,yg=t.__extends,_I=t.__nbind_get_value_object,Kh=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,Ri=t._emscripten_set_main_loop_timing,Do=t.__nbind_register_primitive,Pt=t.__nbind_register_type,Hu=t._emscripten_memcpy_big,Ru=t.__nbind_register_function,Vs=t.___setErrNo,Uu=t.__nbind_register_class,Yn=t.__nbind_finish,Ko=t._abort,Sg=t._nbind_value,HA=t._llvm_stacksave,ZA=t.___syscall54,$i=t._defineHidden,Al=t._emscripten_set_main_loop,zf=t._emscripten_get_now,zd=t.__nbind_register_callback_signature,cA=t._emscripten_asm_const_iiiiii,so=t.__nbind_free_external,Ki=t._emscripten_asm_const_iiii,cc=t._emscripten_asm_const_iiididi,Xs=t.___syscall6,ws=t._atexit,Gs=t.___syscall140,Ma=t.___syscall146,Dc=ke(0);let As=ke(0);function Nf(p){p=p|0;var y=0;return y=B,B=B+p|0,B=B+15&-16,y|0}function Am(){return B|0}function Zl(p){p=p|0,B=p}function rc(p,y){p=p|0,y=y|0,B=p,F=y}function ad(p,y){p=p|0,y=y|0,ae||(ae=p,ne=y)}function Qm(p){p=p|0,ze=p}function rl(){return ze|0}function LA(){var p=0,y=0;Yd(8104,8,400)|0,Yd(8504,408,540)|0,p=9044,y=p+44|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));n[9088]=0,n[9089]=1,o[2273]=0,o[2274]=948,o[2275]=948,fu(17,8104,J|0)|0}function VA(p){p=p|0,aa(p+948|0)}function bl(p){return p=ke(p),((VT(p)|0)&2147483647)>>>0>2139095040|0}function bg(p,y,w){p=p|0,y=y|0,w=w|0;e:do if(o[p+(y<<3)+4>>2]|0)p=p+(y<<3)|0;else{if((y|2|0)==3&&o[p+60>>2]|0){p=p+56|0;break}switch(y|0){case 0:case 2:case 4:case 5:{if(o[p+52>>2]|0){p=p+48|0;break e}break}default:}if(o[p+68>>2]|0){p=p+64|0;break}else{p=(y|1|0)==5?948:w;break}}while(!1);return p|0}function Yp(p){p=p|0;var y=0;return y=Aie(1e3)|0,YA(p,(y|0)!=0,2456),o[2276]=(o[2276]|0)+1,Yd(y|0,8104,1e3)|0,n[p+2>>0]|0&&(o[y+4>>2]=2,o[y+12>>2]=4),o[y+976>>2]=p,y|0}function YA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;X=B,B=B+16|0,G=X,y||(o[G>>2]=w,qS(p,5,3197,G)),B=X}function vr(){return Yp(956)|0}function Zt(p){p=p|0;var y=0;return y=ju(1e3)|0,yn(y,p),YA(o[p+976>>2]|0,1,2456),o[2276]=(o[2276]|0)+1,o[y+944>>2]=0,y|0}function yn(p,y){p=p|0,y=y|0;var w=0;Yd(p|0,y|0,948)|0,yw(p+948|0,y+948|0),w=p+960|0,p=y+960|0,y=w+40|0;do o[w>>2]=o[p>>2],w=w+4|0,p=p+4|0;while((w|0)<(y|0))}function ls(p){p=p|0;var y=0,w=0,G=0,X=0;if(y=p+944|0,w=o[y>>2]|0,w|0&&(oa(w+948|0,p)|0,o[y>>2]=0),w=Fs(p)|0,w|0){y=0;do o[(Oa(p,y)|0)+944>>2]=0,y=y+1|0;while((y|0)!=(w|0))}w=p+948|0,G=o[w>>2]|0,X=p+952|0,y=o[X>>2]|0,(y|0)!=(G|0)&&(o[X>>2]=y+(~((y+-4-G|0)>>>2)<<2)),Ca(w),die(p),o[2276]=(o[2276]|0)+-1}function oa(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0;G=o[p>>2]|0,Ge=p+4|0,w=o[Ge>>2]|0,U=w;e:do if((G|0)==(w|0))X=G,le=4;else for(p=G;;){if((o[p>>2]|0)==(y|0)){X=p,le=4;break e}if(p=p+4|0,(p|0)==(w|0)){p=0;break}}while(!1);return(le|0)==4&&((X|0)!=(w|0)?(G=X+4|0,p=U-G|0,y=p>>2,y&&($T(X|0,G|0,p|0)|0,w=o[Ge>>2]|0),p=X+(y<<2)|0,(w|0)==(p|0)||(o[Ge>>2]=w+(~((w+-4-p|0)>>>2)<<2)),p=1):p=0),p|0}function Fs(p){return p=p|0,(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2|0}function Oa(p,y){p=p|0,y=y|0;var w=0;return w=o[p+948>>2]|0,(o[p+952>>2]|0)-w>>2>>>0>y>>>0?p=o[w+(y<<2)>>2]|0:p=0,p|0}function Ca(p){p=p|0;var y=0,w=0,G=0,X=0;G=B,B=B+32|0,y=G,X=o[p>>2]|0,w=(o[p+4>>2]|0)-X|0,((o[p+8>>2]|0)-X|0)>>>0>w>>>0&&(X=w>>2,pn(y,X,X,p+8|0),r2(p,y),q2(y)),B=G}function gd(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;St=Fs(p)|0;do if(St|0){if((o[(Oa(p,0)|0)+944>>2]|0)==(p|0)){if(!(oa(p+948|0,y)|0))break;Yd(y+400|0,8504,540)|0,o[y+944>>2]=0,di(p);break}le=o[(o[p+976>>2]|0)+12>>2]|0,Ge=p+948|0,Xe=(le|0)==0,w=0,U=0;do G=o[(o[Ge>>2]|0)+(U<<2)>>2]|0,(G|0)==(y|0)?di(p):(X=Zt(G)|0,o[(o[Ge>>2]|0)+(w<<2)>>2]=X,o[X+944>>2]=p,Xe||Ir[le&15](G,X,p,w),w=w+1|0),U=U+1|0;while((U|0)!=(St|0));if(w>>>0>>0){Xe=p+948|0,Ge=p+952|0,le=w,w=o[Ge>>2]|0;do U=(o[Xe>>2]|0)+(le<<2)|0,G=U+4|0,X=w-G|0,y=X>>2,y&&($T(U|0,G|0,X|0)|0,w=o[Ge>>2]|0),X=w,G=U+(y<<2)|0,(X|0)!=(G|0)&&(w=X+(~((X+-4-G|0)>>>2)<<2)|0,o[Ge>>2]=w),le=le+1|0;while((le|0)!=(St|0))}}while(!1)}function Dp(p){p=p|0;var y=0,w=0,G=0,X=0;sp(p,(Fs(p)|0)==0,2491),sp(p,(o[p+944>>2]|0)==0,2545),y=p+948|0,w=o[y>>2]|0,G=p+952|0,X=o[G>>2]|0,(X|0)!=(w|0)&&(o[G>>2]=X+(~((X+-4-w|0)>>>2)<<2)),Ca(y),y=p+976|0,w=o[y>>2]|0,Yd(p|0,8104,1e3)|0,n[w+2>>0]|0&&(o[p+4>>2]=2,o[p+12>>2]=4),o[y>>2]=w}function sp(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;X=B,B=B+16|0,G=X,y||(o[G>>2]=w,hd(p,5,3197,G)),B=X}function QA(){return o[2276]|0}function ff(){var p=0;return p=Aie(20)|0,Zs((p|0)!=0,2592),o[2277]=(o[2277]|0)+1,o[p>>2]=o[239],o[p+4>>2]=o[240],o[p+8>>2]=o[241],o[p+12>>2]=o[242],o[p+16>>2]=o[243],p|0}function Zs(p,y){p=p|0,y=y|0;var w=0,G=0;G=B,B=B+16|0,w=G,p||(o[w>>2]=y,hd(0,5,3197,w)),B=G}function io(p){p=p|0,die(p),o[2277]=(o[2277]|0)+-1}function Ea(p,y){p=p|0,y=y|0;var w=0;y?(sp(p,(Fs(p)|0)==0,2629),w=1):(w=0,y=0),o[p+964>>2]=y,o[p+988>>2]=w}function Hl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,U=G+8|0,X=G+4|0,le=G,o[X>>2]=y,sp(p,(o[y+944>>2]|0)==0,2709),sp(p,(o[p+964>>2]|0)==0,2763),Dr(p),y=p+948|0,o[le>>2]=(o[y>>2]|0)+(w<<2),o[U>>2]=o[le>>2],On(y,U,X)|0,o[(o[X>>2]|0)+944>>2]=p,di(p),B=G}function Dr(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;if(w=Fs(p)|0,w|0&&(o[(Oa(p,0)|0)+944>>2]|0)!=(p|0)){G=o[(o[p+976>>2]|0)+12>>2]|0,X=p+948|0,U=(G|0)==0,y=0;do le=o[(o[X>>2]|0)+(y<<2)>>2]|0,Ge=Zt(le)|0,o[(o[X>>2]|0)+(y<<2)>>2]=Ge,o[Ge+944>>2]=p,U||Ir[G&15](le,Ge,p,y),y=y+1|0;while((y|0)!=(w|0))}}function On(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0;Ds=B,B=B+64|0,rr=Ds+52|0,Ge=Ds+48|0,an=Ds+28|0,Ks=Ds+24|0,zi=Ds+20|0,Un=Ds,G=o[p>>2]|0,U=G,y=G+((o[y>>2]|0)-U>>2<<2)|0,G=p+4|0,X=o[G>>2]|0,le=p+8|0;do if(X>>>0<(o[le>>2]|0)>>>0){if((y|0)==(X|0)){o[y>>2]=o[w>>2],o[G>>2]=(o[G>>2]|0)+4;break}ny(p,y,X,y+4|0),y>>>0<=w>>>0&&(w=(o[G>>2]|0)>>>0>w>>>0?w+4|0:w),o[y>>2]=o[w>>2]}else{G=(X-U>>2)+1|0,X=gt(p)|0,X>>>0>>0&&me(p),ht=o[p>>2]|0,St=(o[le>>2]|0)-ht|0,U=St>>1,pn(Un,St>>2>>>0>>1>>>0?U>>>0>>0?G:U:X,y-ht>>2,p+8|0),ht=Un+8|0,G=o[ht>>2]|0,U=Un+12|0,St=o[U>>2]|0,le=St,Xe=G;do if((G|0)==(St|0)){if(St=Un+4|0,G=o[St>>2]|0,Si=o[Un>>2]|0,X=Si,G>>>0<=Si>>>0){G=le-X>>1,G=G|0?G:1,pn(an,G,G>>>2,o[Un+16>>2]|0),o[Ks>>2]=o[St>>2],o[zi>>2]=o[ht>>2],o[Ge>>2]=o[Ks>>2],o[rr>>2]=o[zi>>2],bw(an,Ge,rr),G=o[Un>>2]|0,o[Un>>2]=o[an>>2],o[an>>2]=G,G=an+4|0,Si=o[St>>2]|0,o[St>>2]=o[G>>2],o[G>>2]=Si,G=an+8|0,Si=o[ht>>2]|0,o[ht>>2]=o[G>>2],o[G>>2]=Si,G=an+12|0,Si=o[U>>2]|0,o[U>>2]=o[G>>2],o[G>>2]=Si,q2(an),G=o[ht>>2]|0;break}U=G,le=((U-X>>2)+1|0)/-2|0,Ge=G+(le<<2)|0,X=Xe-U|0,U=X>>2,U&&($T(Ge|0,G|0,X|0)|0,G=o[St>>2]|0),Si=Ge+(U<<2)|0,o[ht>>2]=Si,o[St>>2]=G+(le<<2),G=Si}while(!1);o[G>>2]=o[w>>2],o[ht>>2]=(o[ht>>2]|0)+4,y=Ap(p,Un,y)|0,q2(Un)}while(!1);return B=Ds,y|0}function di(p){p=p|0;var y=0;do{if(y=p+984|0,n[y>>0]|0)break;n[y>>0]=1,I[p+504>>2]=ke(ue),p=o[p+944>>2]|0}while(p|0)}function aa(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function vo(p){return p=p|0,o[p+944>>2]|0}function us(p){p=p|0,sp(p,(o[p+964>>2]|0)!=0,2832),di(p)}function Xl(p){return p=p|0,(n[p+984>>0]|0)!=0|0}function WA(p,y){p=p|0,y=y|0,e9e(p,y,400)|0&&(Yd(p|0,y|0,400)|0,di(p))}function If(p){p=p|0;var y=As;return y=ke(I[p+44>>2]),p=bl(y)|0,ke(p?ke(0):y)}function rf(p){p=p|0;var y=As;return y=ke(I[p+48>>2]),bl(y)|0&&(y=n[(o[p+976>>2]|0)+2>>0]|0?ke(1):ke(0)),ke(y)}function op(p,y){p=p|0,y=y|0,o[p+980>>2]=y}function bd(p){return p=p|0,o[p+980>>2]|0}function e2(p,y){p=p|0,y=y|0;var w=0;w=p+4|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function _w(p){return p=p|0,o[p+4>>2]|0}function XA(p,y){p=p|0,y=y|0;var w=0;w=p+8|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Ac(p){return p=p|0,o[p+8>>2]|0}function Gm(p,y){p=p|0,y=y|0;var w=0;w=p+12|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function US(p){return p=p|0,o[p+12>>2]|0}function qd(p,y){p=p|0,y=y|0;var w=0;w=p+16|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function hh(p){return p=p|0,o[p+16>>2]|0}function Qp(p,y){p=p|0,y=y|0;var w=0;w=p+20|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function dC(p){return p=p|0,o[p+20>>2]|0}function aE(p,y){p=p|0,y=y|0;var w=0;w=p+24|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function j_(p){return p=p|0,o[p+24>>2]|0}function ty(p,y){p=p|0,y=y|0;var w=0;w=p+28|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function jE(p){return p=p|0,o[p+28>>2]|0}function DC(p,y){p=p|0,y=y|0;var w=0;w=p+32|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function i_(p){return p=p|0,o[p+32>>2]|0}function up(p,y){p=p|0,y=y|0;var w=0;w=p+36|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Xm(p){return p=p|0,o[p+36>>2]|0}function mb(p,y){p=p|0,y=ke(y);var w=0;w=p+40|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function pe(p,y){p=p|0,y=ke(y);var w=0;w=p+44|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function dm(p,y){p=p|0,y=ke(y);var w=0;w=p+48|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function qf(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+52|0,X=p+56|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function yI(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+52|0,w=p+56|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=bl(y)|0,o[w>>2]=G?3:2,di(p))}function bI(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+52|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function U2(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function cE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=U?0:2,X=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function se(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+132+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function P(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function K(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=U?0:2,X=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function we(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+60+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function At(p,y){p=p|0,y=y|0;var w=0;w=p+60+(y<<3)+4|0,(o[w>>2]|0)!=3&&(I[p+60+(y<<3)>>2]=ke(ue),o[w>>2]=3,di(p))}function sr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function Yr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=U?0:2,X=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function Lr(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+204+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function fi(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0,U=0;U=bl(w)|0,G=(U^1)&1,X=p+276+(y<<3)|0,y=p+276+(y<<3)+4|0,U|ke(I[X>>2])==w&&(o[y>>2]|0)==(G|0)||(I[X>>2]=w,o[y>>2]=G,di(p))}function $n(p,y){return p=p|0,y=y|0,ke(I[p+276+(y<<3)>>2])}function ra(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+348|0,X=p+352|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function kc(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+348|0,w=p+352|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=bl(y)|0,o[w>>2]=G?3:2,di(p))}function Dl(p){p=p|0;var y=0;y=p+352|0,(o[y>>2]|0)!=3&&(I[p+348>>2]=ke(ue),o[y>>2]=3,di(p))}function ca(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+348|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function wl(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+356|0,X=p+360|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function eA(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+356|0,w=p+360|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=bl(y)|0,o[w>>2]=G?3:2,di(p))}function BA(p){p=p|0;var y=0;y=p+360|0,(o[y>>2]|0)!=3&&(I[p+356>>2]=ke(ue),o[y>>2]=3,di(p))}function gI(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+356|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function gp(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+364|0,X=p+368|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function Cb(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+364|0,X=p+368|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function Na(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+364|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Rd(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+372|0,X=p+376|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function t2(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+372|0,X=p+376|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function D_(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+372|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function kC(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+380|0,X=p+384|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function Jm(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+380|0,X=p+384|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function KS(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+380|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Zg(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=(U^1)&1,G=p+388|0,X=p+392|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function _b(p,y){p=p|0,y=ke(y);var w=0,G=0,X=0,U=0;U=bl(y)|0,w=U?0:2,G=p+388|0,X=p+392|0,U|ke(I[G>>2])==y&&(o[X>>2]|0)==(w|0)||(I[G>>2]=y,o[X>>2]=w,di(p))}function pC(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+388|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function xC(p,y){p=p|0,y=ke(y);var w=0;w=p+396|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function K2(p){return p=p|0,ke(I[p+396>>2])}function z_(p){return p=p|0,ke(I[p+400>>2])}function GC(p){return p=p|0,ke(I[p+404>>2])}function FC(p){return p=p|0,ke(I[p+408>>2])}function th(p){return p=p|0,ke(I[p+412>>2])}function mh(p){return p=p|0,ke(I[p+416>>2])}function wA(p){return p=p|0,ke(I[p+420>>2])}function Nd(p,y){switch(p=p|0,y=y|0,sp(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+424+(y<<2)>>2])}function Mc(p,y){switch(p=p|0,y=y|0,sp(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+448+(y<<2)>>2])}function Pf(p,y){switch(p=p|0,y=y|0,sp(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+472+(y<<2)>>2])}function lE(p,y){p=p|0,y=y|0;var w=0,G=As;return w=o[p+4>>2]|0,(w|0)==(o[y+4>>2]|0)?w?(G=ke(I[p>>2]),p=ke(Je(ke(G-ke(I[y>>2]))))>2]=0,o[G+4>>2]=0,o[G+8>>2]=0,Kh(G|0,p|0,y|0,0),hd(p,3,(n[G+11>>0]|0)<0?o[G>>2]|0:G,w),Ow(G),B=w}function pm(p,y,w,G){p=ke(p),y=ke(y),w=w|0,G=G|0;var X=As;p=ke(p*y),X=ke(wz(p,ke(1)));do if(tA(X,ke(0))|0)p=ke(p-X);else{if(p=ke(p-X),tA(X,ke(1))|0){p=ke(p+ke(1));break}if(w){p=ke(p+ke(1));break}G||(X>ke(.5)?X=ke(1):(G=tA(X,ke(.5))|0,X=ke(G?1:0)),p=ke(p+X))}while(!1);return ke(p/y)}function fm(p,y,w,G,X,U,le,Ge,Xe,St,ht,rr,an){p=p|0,y=ke(y),w=w|0,G=ke(G),X=X|0,U=ke(U),le=le|0,Ge=ke(Ge),Xe=ke(Xe),St=ke(St),ht=ke(ht),rr=ke(rr),an=an|0;var Ks=0,zi=As,Un=As,Ds=As,Si=As,Eo=As,ss=As;return Xe>2]),zi!=ke(0))?(Ds=ke(pm(y,zi,0,0)),Si=ke(pm(G,zi,0,0)),Un=ke(pm(U,zi,0,0)),zi=ke(pm(Ge,zi,0,0))):(Un=U,Ds=y,zi=Ge,Si=G),(X|0)==(p|0)?Ks=tA(Un,Ds)|0:Ks=0,(le|0)==(w|0)?an=tA(zi,Si)|0:an=0,!Ks&&(Eo=ke(y-ht),!(cs(p,Eo,Xe)|0))&&!(na(p,Eo,X,Xe)|0)?Ks=ko(p,Eo,X,U,Xe)|0:Ks=1,!an&&(ss=ke(G-rr),!(cs(w,ss,St)|0))&&!(na(w,ss,le,St)|0)?an=ko(w,ss,le,Ge,St)|0:an=1,an=Ks&an),an|0}function cs(p,y,w){return p=p|0,y=ke(y),w=ke(w),(p|0)==1?p=tA(y,w)|0:p=0,p|0}function na(p,y,w,G){return p=p|0,y=ke(y),w=w|0,G=ke(G),(p|0)==2&(w|0)==0?y>=G?p=1:p=tA(y,G)|0:p=0,p|0}function ko(p,y,w,G,X){return p=p|0,y=ke(y),w=w|0,G=ke(G),X=ke(X),(p|0)==2&(w|0)==2&G>y?X<=y?p=1:p=tA(y,X)|0:p=0,p|0}function ki(p,y,w,G,X,U,le,Ge,Xe,St,ht){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,St=St|0,ht=ht|0;var rr=0,an=0,Ks=0,zi=0,Un=As,Ds=As,Si=0,Eo=0,ss=0,pi=0,Il=0,gu=0,dl=0,Tc=0,wg=0,kg=0,Tg=0,im=As,N0=As,BE=As,oh=0,Z_=0;Tg=B,B=B+160|0,Tc=Tg+152|0,dl=Tg+120|0,gu=Tg+104|0,ss=Tg+72|0,zi=Tg+56|0,Il=Tg+8|0,Eo=Tg,pi=(o[2279]|0)+1|0,o[2279]=pi,wg=p+984|0,n[wg>>0]|0&&(o[p+512>>2]|0)!=(o[2278]|0)?Si=4:(o[p+516>>2]|0)==(G|0)?kg=0:Si=4,(Si|0)==4&&(o[p+520>>2]=0,o[p+924>>2]=-1,o[p+928>>2]=-1,I[p+932>>2]=ke(-1),I[p+936>>2]=ke(-1),kg=1);e:do if(o[p+964>>2]|0)if(Un=ke(jl(p,2,le)),Ds=ke(jl(p,0,le)),rr=p+916|0,BE=ke(I[rr>>2]),N0=ke(I[p+920>>2]),im=ke(I[p+932>>2]),fm(X,y,U,w,o[p+924>>2]|0,BE,o[p+928>>2]|0,N0,im,ke(I[p+936>>2]),Un,Ds,ht)|0)Si=22;else if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,im=ke(I[rr>>2]),N0=ke(I[p+524+(an*24|0)+4>>2]),BE=ke(I[p+524+(an*24|0)+16>>2]),fm(X,y,U,w,o[p+524+(an*24|0)+8>>2]|0,im,o[p+524+(an*24|0)+12>>2]|0,N0,BE,ke(I[p+524+(an*24|0)+20>>2]),Un,Ds,ht)|0){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}else{if(Xe){if(rr=p+916|0,!(tA(ke(I[rr>>2]),y)|0)){Si=21;break}if(!(tA(ke(I[p+920>>2]),w)|0)){Si=21;break}if((o[p+924>>2]|0)!=(X|0)){Si=21;break}rr=(o[p+928>>2]|0)==(U|0)?rr:0,Si=22;break}if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,tA(ke(I[rr>>2]),y)|0&&tA(ke(I[p+524+(an*24|0)+4>>2]),w)|0&&(o[p+524+(an*24|0)+8>>2]|0)==(X|0)&&(o[p+524+(an*24|0)+12>>2]|0)==(U|0)){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}}while(!1);do if((Si|0)==21)n[11697]|0?(rr=0,Si=28):(rr=0,Si=31);else if((Si|0)==22){if(an=(n[11697]|0)!=0,!((rr|0)!=0&(kg^1)))if(an){Si=28;break}else{Si=31;break}zi=rr+16|0,o[p+908>>2]=o[zi>>2],Ks=rr+20|0,o[p+912>>2]=o[Ks>>2],(n[11698]|0)==0|an^1||(o[Eo>>2]=$f(pi)|0,o[Eo+4>>2]=pi,hd(p,4,2972,Eo),an=o[p+972>>2]|0,an|0&&VF[an&127](p),X=Wd(X,Xe)|0,U=Wd(U,Xe)|0,Z_=+ke(I[zi>>2]),oh=+ke(I[Ks>>2]),o[Il>>2]=X,o[Il+4>>2]=U,C[Il+8>>3]=+y,C[Il+16>>3]=+w,C[Il+24>>3]=Z_,C[Il+32>>3]=oh,o[Il+40>>2]=St,hd(p,4,2989,Il))}while(!1);return(Si|0)==28&&(an=$f(pi)|0,o[zi>>2]=an,o[zi+4>>2]=pi,o[zi+8>>2]=kg?3047:11699,hd(p,4,3038,zi),an=o[p+972>>2]|0,an|0&&VF[an&127](p),Il=Wd(X,Xe)|0,Si=Wd(U,Xe)|0,o[ss>>2]=Il,o[ss+4>>2]=Si,C[ss+8>>3]=+y,C[ss+16>>3]=+w,o[ss+24>>2]=St,hd(p,4,3049,ss),Si=31),(Si|0)==31&&(fC(p,y,w,G,X,U,le,Ge,Xe,ht),n[11697]|0&&(an=o[2279]|0,Il=$f(an)|0,o[gu>>2]=Il,o[gu+4>>2]=an,o[gu+8>>2]=kg?3047:11699,hd(p,4,3083,gu),an=o[p+972>>2]|0,an|0&&VF[an&127](p),Il=Wd(X,Xe)|0,gu=Wd(U,Xe)|0,oh=+ke(I[p+908>>2]),Z_=+ke(I[p+912>>2]),o[dl>>2]=Il,o[dl+4>>2]=gu,C[dl+8>>3]=oh,C[dl+16>>3]=Z_,o[dl+24>>2]=St,hd(p,4,3092,dl)),o[p+516>>2]=G,rr||(an=p+520|0,rr=o[an>>2]|0,(rr|0)==16&&(n[11697]|0&&hd(p,4,3124,Tc),o[an>>2]=0,rr=0),Xe?rr=p+916|0:(o[an>>2]=rr+1,rr=p+524+(rr*24|0)|0),I[rr>>2]=y,I[rr+4>>2]=w,o[rr+8>>2]=X,o[rr+12>>2]=U,o[rr+16>>2]=o[p+908>>2],o[rr+20>>2]=o[p+912>>2],rr=0)),Xe&&(o[p+416>>2]=o[p+908>>2],o[p+420>>2]=o[p+912>>2],n[p+985>>0]=1,n[wg>>0]=0),o[2279]=(o[2279]|0)+-1,o[p+512>>2]=o[2278],B=Tg,kg|(rr|0)==0|0}function jl(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(ar(p,y,w)),ke(G+ke(Jr(p,y,w)))}function hd(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=B,B=B+16|0,X=U,o[X>>2]=G,p?G=o[p+976>>2]|0:G=0,Ry(G,p,y,w,X),B=U}function $f(p){return p=p|0,(p>>>0>60?3201:3201+(60-p)|0)|0}function Wd(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;return X=B,B=B+32|0,w=X+12|0,G=X,o[w>>2]=o[254],o[w+4>>2]=o[255],o[w+8>>2]=o[256],o[G>>2]=o[257],o[G+4>>2]=o[258],o[G+8>>2]=o[259],(p|0)>2?p=11699:p=o[(y?G:w)+(p<<2)>>2]|0,B=X,p|0}function fC(p,y,w,G,X,U,le,Ge,Xe,St){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,St=St|0;var ht=0,rr=0,an=0,Ks=0,zi=As,Un=As,Ds=As,Si=As,Eo=As,ss=As,pi=As,Il=0,gu=0,dl=0,Tc=As,wg=As,kg=0,Tg=As,im=0,N0=0,BE=0,oh=0,Z_=0,sk=0,Pw=0,bh=0,WF=0,Mw=0,tR=0,n9=0,i9=0,AS=0,_f=0,h2=0,rR=0,_v=0,Px=As,WB=As,yv=As,OB=As,wE=As,qm=0,SN=0,nR=0,$m=0,m2=0,mg=As,YI=As,ag=As,jo=As,Qg=As,Ll=As,C2=0,QI=As,OF=As,dI=As,jA=As,gA=As,PF=As,vN=0,iR=0,_1=As,D0=As,ok=0,po=0,Hw=0,MF=0,Qd=As,cf=0,wd=0,Ep=0,A_=0,Xd=0,Xg=0,bv=0,Du=As,Y3=0,Ay=0;bv=B,B=B+16|0,qm=bv+12|0,SN=bv+8|0,nR=bv+4|0,$m=bv,sp(p,(X|0)==0|(bl(y)|0)^1,3326),sp(p,(U|0)==0|(bl(w)|0)^1,3406),wd=Qo(p,G)|0,o[p+496>>2]=wd,Xd=Bg(2,wd)|0,Xg=Bg(0,wd)|0,I[p+440>>2]=ke(ar(p,Xd,le)),I[p+444>>2]=ke(Jr(p,Xd,le)),I[p+428>>2]=ke(ar(p,Xg,le)),I[p+436>>2]=ke(Jr(p,Xg,le)),I[p+464>>2]=ke(Dg(p,Xd)),I[p+468>>2]=ke(Df(p,Xd)),I[p+452>>2]=ke(Dg(p,Xg)),I[p+460>>2]=ke(Df(p,Xg)),I[p+488>>2]=ke(AI(p,Xd,le)),I[p+492>>2]=ke(kh(p,Xd,le)),I[p+476>>2]=ke(AI(p,Xg,le)),I[p+484>>2]=ke(kh(p,Xg,le));do if(o[p+964>>2]|0)uE(p,y,w,X,U,le,Ge);else{if(Ep=p+948|0,A_=(o[p+952>>2]|0)-(o[Ep>>2]|0)>>2,!A_){GT(p,y,w,X,U,le,Ge);break}if(!Xe&&gB(p,y,w,X,U,le,Ge)|0)break;Dr(p),h2=p+508|0,n[h2>>0]=0,Xd=Bg(o[p+4>>2]|0,wd)|0,Xg=FT(Xd,wd)|0,cf=Gn(Xd)|0,rR=o[p+8>>2]|0,po=p+28|0,_v=(o[po>>2]|0)!=0,gA=cf?le:Ge,_1=cf?Ge:le,Px=ke(Ny(p,Xd,le)),WB=ke(e1(p,Xd,le)),zi=ke(Ny(p,Xg,le)),PF=ke($_(p,Xd,le)),D0=ke($_(p,Xg,le)),dl=cf?X:U,ok=cf?U:X,Qd=cf?PF:D0,Eo=cf?D0:PF,jA=ke(jl(p,2,le)),Si=ke(jl(p,0,le)),Un=ke(ke(cd(p+364|0,le))-Qd),Ds=ke(ke(cd(p+380|0,le))-Qd),ss=ke(ke(cd(p+372|0,Ge))-Eo),pi=ke(ke(cd(p+388|0,Ge))-Eo),yv=cf?Un:ss,OB=cf?Ds:pi,jA=ke(y-jA),y=ke(jA-Qd),bl(y)|0?Qd=y:Qd=ke(zs(ke(RU(y,Ds)),Un)),OF=ke(w-Si),y=ke(OF-Eo),bl(y)|0?dI=y:dI=ke(zs(ke(RU(y,pi)),ss)),Un=cf?Qd:dI,QI=cf?dI:Qd;e:do if((dl|0)==1)for(G=0,rr=0;;){if(ht=Oa(p,rr)|0,!G)ke(nf(ht))>ke(0)&&ke(Dy(ht))>ke(0)?G=ht:G=0;else if(ZT(ht)|0){Ks=0;break e}if(rr=rr+1|0,rr>>>0>=A_>>>0){Ks=G;break}}else Ks=0;while(!1);Il=Ks+500|0,gu=Ks+504|0,G=0,ht=0,y=ke(0),an=0;do{if(rr=o[(o[Ep>>2]|0)+(an<<2)>>2]|0,(o[rr+36>>2]|0)==1)$S(rr),n[rr+985>>0]=1,n[rr+984>>0]=0;else{Ty(rr),Xe&&qE(rr,Qo(rr,wd)|0,Un,QI,Qd);do if((o[rr+24>>2]|0)!=1)if((rr|0)==(Ks|0)){o[Il>>2]=o[2278],I[gu>>2]=ke(0);break}else{rh(p,rr,Qd,X,dI,Qd,dI,U,wd,St);break}else ht|0&&(o[ht+960>>2]=rr),o[rr+960>>2]=0,ht=rr,G=G|0?G:rr;while(!1);Ll=ke(I[rr+504>>2]),y=ke(y+ke(Ll+ke(jl(rr,Xd,Qd))))}an=an+1|0}while((an|0)!=(A_|0));for(BE=y>Un,C2=_v&((dl|0)==2&BE)?1:dl,im=(ok|0)==1,Z_=im&(Xe^1),sk=(C2|0)==1,Pw=(C2|0)==2,bh=976+(Xd<<2)|0,WF=(ok|2|0)==2,AS=im&(_v^1),Mw=1040+(Xg<<2)|0,tR=1040+(Xd<<2)|0,n9=976+(Xg<<2)|0,i9=(ok|0)!=1,BE=_v&((dl|0)!=0&BE),N0=p+976|0,im=im^1,y=Un,kg=0,oh=0,Ll=ke(0),wE=ke(0);;){e:do if(kg>>>0>>0)for(gu=o[Ep>>2]|0,an=0,pi=ke(0),ss=ke(0),Ds=ke(0),Un=ke(0),rr=0,ht=0,Ks=kg;;){if(Il=o[gu+(Ks<<2)>>2]|0,(o[Il+36>>2]|0)!=1&&(o[Il+940>>2]=oh,(o[Il+24>>2]|0)!=1)){if(Si=ke(jl(Il,Xd,Qd)),_f=o[bh>>2]|0,w=ke(cd(Il+380+(_f<<3)|0,gA)),Eo=ke(I[Il+504>>2]),w=ke(RU(w,Eo)),w=ke(zs(ke(cd(Il+364+(_f<<3)|0,gA)),w)),_v&(an|0)!=0&ke(Si+ke(ss+w))>y){U=an,Si=pi,dl=Ks;break e}Si=ke(Si+w),w=ke(ss+Si),Si=ke(pi+Si),ZT(Il)|0&&(Ds=ke(Ds+ke(nf(Il))),Un=ke(Un-ke(Eo*ke(Dy(Il))))),ht|0&&(o[ht+960>>2]=Il),o[Il+960>>2]=0,an=an+1|0,ht=Il,rr=rr|0?rr:Il}else Si=pi,w=ss;if(Ks=Ks+1|0,Ks>>>0>>0)pi=Si,ss=w;else{U=an,dl=Ks;break}}else U=0,Si=ke(0),Ds=ke(0),Un=ke(0),rr=0,dl=kg;while(!1);_f=Ds>ke(0)&Dske(0)&UnOB&((bl(OB)|0)^1))y=OB,_f=51;else if(n[(o[N0>>2]|0)+3>>0]|0)_f=51;else{if(Tc!=ke(0)&&ke(nf(p))!=ke(0)){_f=53;break}y=Si,_f=53}while(!1);if((_f|0)==51&&(_f=0,bl(y)|0?_f=53:(wg=ke(y-Si),Tg=y)),(_f|0)==53&&(_f=0,Si>2]|0,Ks=wgke(0),ss=ke(wg/Tc),Ds=ke(0),Si=ke(0),y=ke(0),ht=rr;do w=ke(cd(ht+380+(an<<3)|0,gA)),Un=ke(cd(ht+364+(an<<3)|0,gA)),Un=ke(RU(w,ke(zs(Un,ke(I[ht+504>>2]))))),Ks?(w=ke(Un*ke(Dy(ht))),w!=ke(-0)&&(Du=ke(Un-ke(Eo*w)),mg=ke(TA(ht,Xd,Du,Tg,Qd)),Du!=mg)&&(Ds=ke(Ds-ke(mg-Un)),y=ke(y+w))):Il&&(YI=ke(nf(ht)),YI!=ke(0))&&(Du=ke(Un+ke(ss*YI)),ag=ke(TA(ht,Xd,Du,Tg,Qd)),Du!=ag)&&(Ds=ke(Ds-ke(ag-Un)),Si=ke(Si-YI)),ht=o[ht+960>>2]|0;while(ht|0);if(y=ke(pi+y),Un=ke(wg+Ds),m2)y=ke(0);else{Eo=ke(Tc+Si),Ks=o[bh>>2]|0,Il=Unke(0),Eo=ke(Un/Eo),y=ke(0);do{Du=ke(cd(rr+380+(Ks<<3)|0,gA)),Ds=ke(cd(rr+364+(Ks<<3)|0,gA)),Ds=ke(RU(Du,ke(zs(Ds,ke(I[rr+504>>2]))))),Il?(Du=ke(Ds*ke(Dy(rr))),Un=ke(-Du),Du!=ke(-0)?(Du=ke(ss*Un),Un=ke(TA(rr,Xd,ke(Ds+(gu?Un:Du)),Tg,Qd))):Un=Ds):an&&(jo=ke(nf(rr)),jo!=ke(0))?Un=ke(TA(rr,Xd,ke(Ds+ke(Eo*jo)),Tg,Qd)):Un=Ds,y=ke(y-ke(Un-Ds)),Si=ke(jl(rr,Xd,Qd)),w=ke(jl(rr,Xg,Qd)),Un=ke(Un+Si),I[SN>>2]=Un,o[$m>>2]=1,Ds=ke(I[rr+396>>2]);e:do if(bl(Ds)|0){ht=bl(QI)|0;do if(!ht){if(BE|(q_(rr,Xg,QI)|0|im)||(td(p,rr)|0)!=4||(o[(Km(rr,Xg)|0)+4>>2]|0)==3||(o[(eI(rr,Xg)|0)+4>>2]|0)==3)break;I[qm>>2]=QI,o[nR>>2]=1;break e}while(!1);if(q_(rr,Xg,QI)|0){ht=o[rr+992+(o[n9>>2]<<2)>>2]|0,Du=ke(w+ke(cd(ht,QI))),I[qm>>2]=Du,ht=i9&(o[ht+4>>2]|0)==2,o[nR>>2]=((bl(Du)|0|ht)^1)&1;break}else{I[qm>>2]=QI,o[nR>>2]=ht?0:2;break}}else Du=ke(Un-Si),Tc=ke(Du/Ds),Du=ke(Ds*Du),o[nR>>2]=1,I[qm>>2]=ke(w+(cf?Tc:Du));while(!1);yb(rr,Xd,Tg,Qd,$m,SN),yb(rr,Xg,QI,Qd,nR,qm);do if(!(q_(rr,Xg,QI)|0)&&(td(p,rr)|0)==4){if((o[(Km(rr,Xg)|0)+4>>2]|0)==3){ht=0;break}ht=(o[(eI(rr,Xg)|0)+4>>2]|0)!=3}else ht=0;while(!1);Du=ke(I[SN>>2]),Tc=ke(I[qm>>2]),Y3=o[$m>>2]|0,Ay=o[nR>>2]|0,ki(rr,cf?Du:Tc,cf?Tc:Du,wd,cf?Y3:Ay,cf?Ay:Y3,Qd,dI,Xe&(ht^1),3488,St)|0,n[h2>>0]=n[h2>>0]|n[rr+508>>0],rr=o[rr+960>>2]|0}while(rr|0)}}else y=ke(0);if(y=ke(wg+y),Ay=y>0]=Ay|l[h2>>0],Pw&y>ke(0)?(ht=o[bh>>2]|0,o[p+364+(ht<<3)+4>>2]|0&&(Qg=ke(cd(p+364+(ht<<3)|0,gA)),Qg>=ke(0))?Un=ke(zs(ke(0),ke(Qg-ke(Tg-y)))):Un=ke(0)):Un=y,Il=kg>>>0

>>0,Il){Ks=o[Ep>>2]|0,an=kg,ht=0;do rr=o[Ks+(an<<2)>>2]|0,o[rr+24>>2]|0||(ht=((o[(Km(rr,Xd)|0)+4>>2]|0)==3&1)+ht|0,ht=ht+((o[(eI(rr,Xd)|0)+4>>2]|0)==3&1)|0),an=an+1|0;while((an|0)!=(dl|0));ht?(Si=ke(0),w=ke(0)):_f=101}else _f=101;e:do if((_f|0)==101)switch(_f=0,rR|0){case 1:{ht=0,Si=ke(Un*ke(.5)),w=ke(0);break e}case 2:{ht=0,Si=Un,w=ke(0);break e}case 3:{if(U>>>0<=1){ht=0,Si=ke(0),w=ke(0);break e}w=ke((U+-1|0)>>>0),ht=0,Si=ke(0),w=ke(ke(zs(Un,ke(0)))/w);break e}case 5:{w=ke(Un/ke((U+1|0)>>>0)),ht=0,Si=w;break e}case 4:{w=ke(Un/ke(U>>>0)),ht=0,Si=ke(w*ke(.5));break e}default:{ht=0,Si=ke(0),w=ke(0);break e}}while(!1);if(y=ke(Px+Si),Il){Ds=ke(Un/ke(ht|0)),an=o[Ep>>2]|0,rr=kg,Un=ke(0);do{ht=o[an+(rr<<2)>>2]|0;e:do if((o[ht+36>>2]|0)!=1){switch(o[ht+24>>2]|0){case 1:{if(k_(ht,Xd)|0){if(!Xe)break e;Du=ke(bb(ht,Xd,Tg)),Du=ke(Du+ke(Dg(p,Xd))),Du=ke(Du+ke(ar(ht,Xd,Qd))),I[ht+400+(o[tR>>2]<<2)>>2]=Du;break e}break}case 0:if(Ay=(o[(Km(ht,Xd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=Ay?Du:y,Xe&&(Ay=ht+400+(o[tR>>2]<<2)|0,I[Ay>>2]=ke(y+ke(I[Ay>>2]))),Ay=(o[(eI(ht,Xd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=Ay?Du:y,Z_){Du=ke(w+ke(jl(ht,Xd,Qd))),Un=QI,y=ke(y+ke(Du+ke(I[ht+504>>2])));break e}else{y=ke(y+ke(w+ke(ky(ht,Xd,Qd)))),Un=ke(zs(Un,ke(ky(ht,Xg,Qd))));break e}default:}Xe&&(Du=ke(Si+ke(Dg(p,Xd))),Ay=ht+400+(o[tR>>2]<<2)|0,I[Ay>>2]=ke(Du+ke(I[Ay>>2])))}while(!1);rr=rr+1|0}while((rr|0)!=(dl|0))}else Un=ke(0);if(w=ke(WB+y),WF?Si=ke(ke(TA(p,Xg,ke(D0+Un),_1,le))-D0):Si=QI,Ds=ke(ke(TA(p,Xg,ke(D0+(AS?QI:Un)),_1,le))-D0),Il&Xe){rr=kg;do{an=o[(o[Ep>>2]|0)+(rr<<2)>>2]|0;do if((o[an+36>>2]|0)!=1){if((o[an+24>>2]|0)==1){if(k_(an,Xg)|0){if(Du=ke(bb(an,Xg,QI)),Du=ke(Du+ke(Dg(p,Xg))),Du=ke(Du+ke(ar(an,Xg,Qd))),ht=o[Mw>>2]|0,I[an+400+(ht<<2)>>2]=Du,!(bl(Du)|0))break}else ht=o[Mw>>2]|0;Du=ke(Dg(p,Xg)),I[an+400+(ht<<2)>>2]=ke(Du+ke(ar(an,Xg,Qd)));break}ht=td(p,an)|0;do if((ht|0)==4){if((o[(Km(an,Xg)|0)+4>>2]|0)==3){_f=139;break}if((o[(eI(an,Xg)|0)+4>>2]|0)==3){_f=139;break}if(q_(an,Xg,QI)|0){y=zi;break}Y3=o[an+908+(o[bh>>2]<<2)>>2]|0,o[qm>>2]=Y3,y=ke(I[an+396>>2]),Ay=bl(y)|0,Un=(o[E>>2]=Y3,ke(I[E>>2])),Ay?y=Ds:(wg=ke(jl(an,Xg,Qd)),Du=ke(Un/y),y=ke(y*Un),y=ke(wg+(cf?Du:y))),I[SN>>2]=y,I[qm>>2]=ke(ke(jl(an,Xd,Qd))+Un),o[nR>>2]=1,o[$m>>2]=1,yb(an,Xd,Tg,Qd,nR,qm),yb(an,Xg,QI,Qd,$m,SN),y=ke(I[qm>>2]),wg=ke(I[SN>>2]),Du=cf?y:wg,y=cf?wg:y,Ay=((bl(Du)|0)^1)&1,ki(an,Du,y,wd,Ay,((bl(y)|0)^1)&1,Qd,dI,1,3493,St)|0,y=zi}else _f=139;while(!1);e:do if((_f|0)==139){_f=0,y=ke(Si-ke(ky(an,Xg,Qd)));do if((o[(Km(an,Xg)|0)+4>>2]|0)==3){if((o[(eI(an,Xg)|0)+4>>2]|0)!=3)break;y=ke(zi+ke(zs(ke(0),ke(y*ke(.5)))));break e}while(!1);if((o[(eI(an,Xg)|0)+4>>2]|0)==3){y=zi;break}if((o[(Km(an,Xg)|0)+4>>2]|0)==3){y=ke(zi+ke(zs(ke(0),y)));break}switch(ht|0){case 1:{y=zi;break e}case 2:{y=ke(zi+ke(y*ke(.5)));break e}default:{y=ke(zi+y);break e}}}while(!1);Du=ke(Ll+y),Ay=an+400+(o[Mw>>2]<<2)|0,I[Ay>>2]=ke(Du+ke(I[Ay>>2]))}while(!1);rr=rr+1|0}while((rr|0)!=(dl|0))}if(Ll=ke(Ll+Ds),wE=ke(zs(wE,w)),U=oh+1|0,dl>>>0>=A_>>>0)break;y=Tg,kg=dl,oh=U}do if(Xe){if(ht=U>>>0>1,!ht&&!(ev(p)|0))break;if(!(bl(QI)|0)){y=ke(QI-Ll);e:do switch(o[p+12>>2]|0){case 3:{zi=ke(zi+y),ss=ke(0);break}case 2:{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break}case 4:{QI>Ll?ss=ke(y/ke(U>>>0)):ss=ke(0);break}case 7:if(QI>Ll){zi=ke(zi+ke(y/ke(U<<1>>>0))),ss=ke(y/ke(U>>>0)),ss=ht?ss:ke(0);break e}else{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break e}case 6:{ss=ke(y/ke(oh>>>0)),ss=QI>Ll&ht?ss:ke(0);break}default:ss=ke(0)}while(!1);if(U|0)for(Il=1040+(Xg<<2)|0,gu=976+(Xg<<2)|0,Ks=0,rr=0;;){e:do if(rr>>>0>>0)for(Un=ke(0),Ds=ke(0),y=ke(0),an=rr;;){ht=o[(o[Ep>>2]|0)+(an<<2)>>2]|0;do if((o[ht+36>>2]|0)!=1&&!(o[ht+24>>2]|0)){if((o[ht+940>>2]|0)!=(Ks|0))break e;if(Eb(ht,Xg)|0&&(Du=ke(I[ht+908+(o[gu>>2]<<2)>>2]),y=ke(zs(y,ke(Du+ke(jl(ht,Xg,Qd)))))),(td(p,ht)|0)!=5)break;Qg=ke(e0(ht)),Qg=ke(Qg+ke(ar(ht,0,Qd))),Du=ke(I[ht+912>>2]),Du=ke(ke(Du+ke(jl(ht,0,Qd)))-Qg),Qg=ke(zs(Ds,Qg)),Du=ke(zs(Un,Du)),Un=Du,Ds=Qg,y=ke(zs(y,ke(Qg+Du)))}while(!1);if(ht=an+1|0,ht>>>0>>0)an=ht;else{an=ht;break}}else Ds=ke(0),y=ke(0),an=rr;while(!1);if(Eo=ke(ss+y),w=zi,zi=ke(zi+Eo),rr>>>0>>0){Si=ke(w+Ds),ht=rr;do{rr=o[(o[Ep>>2]|0)+(ht<<2)>>2]|0;e:do if((o[rr+36>>2]|0)!=1&&!(o[rr+24>>2]|0))switch(td(p,rr)|0){case 1:{Du=ke(w+ke(ar(rr,Xg,Qd))),I[rr+400+(o[Il>>2]<<2)>>2]=Du;break e}case 3:{Du=ke(ke(zi-ke(Jr(rr,Xg,Qd)))-ke(I[rr+908+(o[gu>>2]<<2)>>2])),I[rr+400+(o[Il>>2]<<2)>>2]=Du;break e}case 2:{Du=ke(w+ke(ke(Eo-ke(I[rr+908+(o[gu>>2]<<2)>>2]))*ke(.5))),I[rr+400+(o[Il>>2]<<2)>>2]=Du;break e}case 4:{if(Du=ke(w+ke(ar(rr,Xg,Qd))),I[rr+400+(o[Il>>2]<<2)>>2]=Du,q_(rr,Xg,QI)|0||(cf?(Un=ke(I[rr+908>>2]),y=ke(Un+ke(jl(rr,Xd,Qd))),Ds=Eo):(Ds=ke(I[rr+912>>2]),Ds=ke(Ds+ke(jl(rr,Xg,Qd))),y=Eo,Un=ke(I[rr+908>>2])),tA(y,Un)|0&&tA(Ds,ke(I[rr+912>>2]))|0))break e;ki(rr,y,Ds,wd,1,1,Qd,dI,1,3501,St)|0;break e}case 5:{I[rr+404>>2]=ke(ke(Si-ke(e0(rr)))+ke(bb(rr,0,QI)));break e}default:break e}while(!1);ht=ht+1|0}while((ht|0)!=(an|0))}if(Ks=Ks+1|0,(Ks|0)==(U|0))break;rr=an}}}while(!1);if(I[p+908>>2]=ke(TA(p,2,jA,le,le)),I[p+912>>2]=ke(TA(p,0,OF,Ge,le)),C2|0&&(vN=o[p+32>>2]|0,iR=(C2|0)==2,!(iR&(vN|0)!=2))?iR&(vN|0)==2&&(y=ke(PF+Tg),y=ke(zs(ke(RU(y,ke(t1(p,Xd,wE,gA)))),PF)),_f=198):(y=ke(TA(p,Xd,wE,gA,le)),_f=198),(_f|0)==198&&(I[p+908+(o[976+(Xd<<2)>>2]<<2)>>2]=y),ok|0&&(Hw=o[p+32>>2]|0,MF=(ok|0)==2,!(MF&(Hw|0)!=2))?MF&(Hw|0)==2&&(y=ke(D0+QI),y=ke(zs(ke(RU(y,ke(t1(p,Xg,ke(D0+Ll),_1)))),D0)),_f=204):(y=ke(TA(p,Xg,ke(D0+Ll),_1,le)),_f=204),(_f|0)==204&&(I[p+908+(o[976+(Xg<<2)>>2]<<2)>>2]=y),Xe){if((o[po>>2]|0)==2){rr=976+(Xg<<2)|0,an=1040+(Xg<<2)|0,ht=0;do Ks=Oa(p,ht)|0,o[Ks+24>>2]|0||(Y3=o[rr>>2]|0,Du=ke(I[p+908+(Y3<<2)>>2]),Ay=Ks+400+(o[an>>2]<<2)|0,Du=ke(Du-ke(I[Ay>>2])),I[Ay>>2]=ke(Du-ke(I[Ks+908+(Y3<<2)>>2]))),ht=ht+1|0;while((ht|0)!=(A_|0))}if(G|0){ht=cf?C2:X;do AB(p,G,Qd,ht,dI,wd,St),G=o[G+960>>2]|0;while(G|0)}if(ht=(Xd|2|0)==3,rr=(Xg|2|0)==3,ht|rr){G=0;do an=o[(o[Ep>>2]|0)+(G<<2)>>2]|0,(o[an+36>>2]|0)!=1&&(ht&<(p,an,Xd),rr&<(p,an,Xg)),G=G+1|0;while((G|0)!=(A_|0))}}}while(!1);B=bv}function zE(p,y){p=p|0,y=ke(y);var w=0;YA(p,y>=ke(0),3147),w=y==ke(0),I[p+4>>2]=w?ke(0):y}function Um(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=G|0;var X=As,U=As,le=0,Ge=0,Xe=0;o[2278]=(o[2278]|0)+1,Ty(p),q_(p,2,y)|0?(X=ke(cd(o[p+992>>2]|0,y)),Xe=1,X=ke(X+ke(jl(p,2,y)))):(X=ke(cd(p+380|0,y)),X>=ke(0)?Xe=2:(Xe=((bl(y)|0)^1)&1,X=y)),q_(p,0,w)|0?(U=ke(cd(o[p+996>>2]|0,w)),Ge=1,U=ke(U+ke(jl(p,0,y)))):(U=ke(cd(p+388|0,w)),U>=ke(0)?Ge=2:(Ge=((bl(w)|0)^1)&1,U=w)),le=p+976|0,ki(p,X,U,G,Xe,Ge,y,w,1,3189,o[le>>2]|0)|0&&(qE(p,o[p+496>>2]|0,y,w,y),$E(p,ke(I[(o[le>>2]|0)+4>>2]),ke(0),ke(0)),n[11696]|0)&&jS(p,7)}function Ty(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;Ge=B,B=B+32|0,le=Ge+24|0,U=Ge+16|0,G=Ge+8|0,X=Ge,w=0;do y=p+380+(w<<3)|0,o[p+380+(w<<3)+4>>2]|0&&(Xe=y,St=o[Xe+4>>2]|0,ht=G,o[ht>>2]=o[Xe>>2],o[ht+4>>2]=St,ht=p+364+(w<<3)|0,St=o[ht+4>>2]|0,Xe=X,o[Xe>>2]=o[ht>>2],o[Xe+4>>2]=St,o[U>>2]=o[G>>2],o[U+4>>2]=o[G+4>>2],o[le>>2]=o[X>>2],o[le+4>>2]=o[X+4>>2],lE(U,le)|0)||(y=p+348+(w<<3)|0),o[p+992+(w<<2)>>2]=y,w=w+1|0;while((w|0)!=2);B=Ge}function q_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0;switch(p=o[p+992+(o[976+(y<<2)>>2]<<2)>>2]|0,o[p+4>>2]|0){case 0:case 3:{p=0;break}case 1:{ke(I[p>>2])>2])>2]|0){case 2:{y=ke(ke(ke(I[p>>2])*y)/ke(100));break}case 1:{y=ke(I[p>>2]);break}default:y=ke(ue)}return ke(y)}function qE(p,y,w,G,X){p=p|0,y=y|0,w=ke(w),G=ke(G),X=ke(X);var U=0,le=As;y=o[p+944>>2]|0?y:1,U=Bg(o[p+4>>2]|0,y)|0,y=FT(U,y)|0,w=ke(z2(p,U,w)),G=ke(z2(p,y,G)),le=ke(w+ke(ar(p,U,X))),I[p+400+(o[1040+(U<<2)>>2]<<2)>>2]=le,w=ke(w+ke(Jr(p,U,X))),I[p+400+(o[1e3+(U<<2)>>2]<<2)>>2]=w,w=ke(G+ke(ar(p,y,X))),I[p+400+(o[1040+(y<<2)>>2]<<2)>>2]=w,X=ke(G+ke(Jr(p,y,X))),I[p+400+(o[1e3+(y<<2)>>2]<<2)>>2]=X}function $E(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=ke(G);var X=0,U=0,le=As,Ge=As,Xe=0,St=0,ht=As,rr=0,an=As,Ks=As,zi=As,Un=As;if(y!=ke(0)&&(X=p+400|0,Un=ke(I[X>>2]),U=p+404|0,zi=ke(I[U>>2]),rr=p+416|0,Ks=ke(I[rr>>2]),St=p+420|0,le=ke(I[St>>2]),an=ke(Un+w),ht=ke(zi+G),G=ke(an+Ks),Ge=ke(ht+le),Xe=(o[p+988>>2]|0)==1,I[X>>2]=ke(pm(Un,y,0,Xe)),I[U>>2]=ke(pm(zi,y,0,Xe)),w=ke(wz(ke(Ks*y),ke(1))),tA(w,ke(0))|0?U=0:U=(tA(w,ke(1))|0)^1,w=ke(wz(ke(le*y),ke(1))),tA(w,ke(0))|0?X=0:X=(tA(w,ke(1))|0)^1,Un=ke(pm(G,y,Xe&U,Xe&(U^1))),I[rr>>2]=ke(Un-ke(pm(an,y,0,Xe))),Un=ke(pm(Ge,y,Xe&X,Xe&(X^1))),I[St>>2]=ke(Un-ke(pm(ht,y,0,Xe))),U=(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2,U|0)){X=0;do $E(Oa(p,X)|0,y,an,ht),X=X+1|0;while((X|0)!=(U|0))}}function Xp(p,y,w,G,X){switch(p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,w|0){case 5:case 0:{p=fde(o[489]|0,G,X)|0;break}default:p=HWt(G,X)|0}return p|0}function qS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;X=B,B=B+16|0,U=X,o[U>>2]=G,Ry(p,0,y,w,U),B=X}function Ry(p,y,w,G,X){if(p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,p=p|0?p:956,bde[o[p+8>>2]&1](p,y,w,G,X)|0,(w|0)==5)Ko();else return}function ry(p,y,w){p=p|0,y=y|0,w=w|0,n[p+y>>0]=w&1}function yw(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(j2(p,G),xc(p,o[y>>2]|0,o[w>>2]|0,G))}function j2(p,y){p=p|0,y=y|0;var w=0;if((gt(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=ju(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function xc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Yd(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function gt(p){return p=p|0,1073741823}function ar(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+96>>2]|0?p=p+92|0:p=bg(p+60|0,o[1040+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Jr(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+104>>2]|0?p=p+100|0:p=bg(p+60|0,o[1e3+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Gn(p){return p=p|0,(p|1|0)==3|0}function Ts(p,y){return p=p|0,y=ke(y),(o[p+4>>2]|0)==3?y=ke(0):y=ke(cd(p,y)),ke(y)}function Qo(p,y){return p=p|0,y=y|0,p=o[p>>2]|0,(p|0?p:(y|0)>1?y:1)|0}function Bg(p,y){p=p|0,y=y|0;var w=0;e:do if((y|0)==2){switch(p|0){case 2:{p=3;break e}case 3:break;default:{w=4;break e}}p=2}else w=4;while(!1);return p|0}function Dg(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+312>>2]|0&&(w=ke(I[p+308>>2]),w>=ke(0))||(w=ke(zs(ke(I[(bg(p+276|0,o[1040+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function Df(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+320>>2]|0&&(w=ke(I[p+316>>2]),w>=ke(0))||(w=ke(zs(ke(I[(bg(p+276|0,o[1e3+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function AI(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+240>>2]|0&&(G=ke(cd(p+236|0,w)),G>=ke(0))||(G=ke(zs(ke(cd(bg(p+204|0,o[1040+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function kh(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+248>>2]|0&&(G=ke(cd(p+244|0,w)),G>=ke(0))||(G=ke(zs(ke(cd(bg(p+204|0,o[1e3+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function uE(p,y,w,G,X,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,St=As,ht=As,rr=As,an=As,Ks=0,zi=0,Un=0;Un=B,B=B+16|0,Ks=Un,zi=p+964|0,sp(p,(o[zi>>2]|0)!=0,3519),Ge=ke($_(p,2,y)),Xe=ke($_(p,0,y)),St=ke(jl(p,2,y)),ht=ke(jl(p,0,y)),bl(y)|0?rr=y:rr=ke(zs(ke(0),ke(ke(y-St)-Ge))),bl(w)|0?an=w:an=ke(zs(ke(0),ke(ke(w-ht)-Xe))),(G|0)==1&(X|0)==1?(I[p+908>>2]=ke(TA(p,2,ke(y-St),U,U)),y=ke(TA(p,0,ke(w-ht),le,U))):(Gz[o[zi>>2]&1](Ks,p,rr,G,an,X),rr=ke(Ge+ke(I[Ks>>2])),an=ke(y-St),I[p+908>>2]=ke(TA(p,2,(G|2|0)==2?rr:an,U,U)),an=ke(Xe+ke(I[Ks+4>>2])),y=ke(w-ht),y=ke(TA(p,0,(X|2|0)==2?an:y,le,U))),I[p+912>>2]=y,B=Un}function GT(p,y,w,G,X,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,St=As,ht=As;St=ke($_(p,2,U)),Ge=ke($_(p,0,U)),ht=ke(jl(p,2,U)),Xe=ke(jl(p,0,U)),y=ke(y-ht),I[p+908>>2]=ke(TA(p,2,(G|2|0)==2?St:y,U,U)),w=ke(w-Xe),I[p+912>>2]=ke(TA(p,0,(X|2|0)==2?Ge:w,le,U))}function gB(p,y,w,G,X,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,X=X|0,U=ke(U),le=ke(le);var Ge=0,Xe=As,St=As;return Ge=(G|0)==2,!(y<=ke(0)&Ge)&&!(w<=ke(0)&(X|0)==2)&&!((G|0)==1&(X|0)==1)?p=0:(Xe=ke(jl(p,0,U)),St=ke(jl(p,2,U)),Ge=y>2]=ke(TA(p,2,Ge?ke(0):y,U,U)),y=ke(w-Xe),Ge=w>2]=ke(TA(p,0,Ge?ke(0):y,le,U)),p=1),p|0}function FT(p,y){return p=p|0,y=y|0,dB(p)|0?p=Bg(2,y)|0:p=0,p|0}function Ny(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(AI(p,y,w)),ke(w+ke(Dg(p,y)))}function e1(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(kh(p,y,w)),ke(w+ke(Df(p,y)))}function $_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(Ny(p,y,w)),ke(G+ke(e1(p,y,w)))}function ZT(p){return p=p|0,o[p+24>>2]|0?p=0:ke(nf(p))!=ke(0)?p=1:p=ke(Dy(p))!=ke(0),p|0}function nf(p){p=p|0;var y=As;if(o[p+944>>2]|0){if(y=ke(I[p+44>>2]),bl(y)|0)return y=ke(I[p+40>>2]),p=y>ke(0)&((bl(y)|0)^1),ke(p?y:ke(0))}else y=ke(0);return ke(y)}function Dy(p){p=p|0;var y=As,w=0,G=As;do if(o[p+944>>2]|0){if(y=ke(I[p+48>>2]),bl(y)|0){if(w=n[(o[p+976>>2]|0)+2>>0]|0,!(w<<24>>24)&&(G=ke(I[p+40>>2]),G>24?ke(1):ke(0)}}else y=ke(0);while(!1);return ke(y)}function $S(p){p=p|0;var y=0,w=0;if(Nz(p+400|0,0,540)|0,n[p+985>>0]=1,Dr(p),w=Fs(p)|0,w|0){y=p+948|0,p=0;do $S(o[(o[y>>2]|0)+(p<<2)>>2]|0),p=p+1|0;while((p|0)!=(w|0))}}function rh(p,y,w,G,X,U,le,Ge,Xe,St){p=p|0,y=y|0,w=ke(w),G=G|0,X=ke(X),U=ke(U),le=ke(le),Ge=Ge|0,Xe=Xe|0,St=St|0;var ht=0,rr=As,an=0,Ks=0,zi=As,Un=As,Ds=0,Si=As,Eo=0,ss=As,pi=0,Il=0,gu=0,dl=0,Tc=0,wg=0,kg=0,Tg=0,im=0,N0=0;im=B,B=B+16|0,gu=im+12|0,dl=im+8|0,Tc=im+4|0,wg=im,Tg=Bg(o[p+4>>2]|0,Xe)|0,pi=Gn(Tg)|0,rr=ke(cd(tv(y)|0,pi?U:le)),Il=q_(y,2,U)|0,kg=q_(y,0,le)|0;do if(!(bl(rr)|0)&&!(bl(pi?w:X)|0)){if(ht=y+504|0,!(bl(ke(I[ht>>2]))|0)&&(!(qR(o[y+976>>2]|0,0)|0)||(o[y+500>>2]|0)==(o[2278]|0)))break;I[ht>>2]=ke(zs(rr,ke($_(y,Tg,U))))}else an=7;while(!1);do if((an|0)==7){if(Eo=pi^1,!(Eo|Il^1)){le=ke(cd(o[y+992>>2]|0,U)),I[y+504>>2]=ke(zs(le,ke($_(y,2,U))));break}if(!(pi|kg^1)){le=ke(cd(o[y+996>>2]|0,le)),I[y+504>>2]=ke(zs(le,ke($_(y,0,U))));break}I[gu>>2]=ke(ue),I[dl>>2]=ke(ue),o[Tc>>2]=0,o[wg>>2]=0,Si=ke(jl(y,2,U)),ss=ke(jl(y,0,U)),Il?(zi=ke(Si+ke(cd(o[y+992>>2]|0,U))),I[gu>>2]=zi,o[Tc>>2]=1,Ks=1):(Ks=0,zi=ke(ue)),kg?(rr=ke(ss+ke(cd(o[y+996>>2]|0,le))),I[dl>>2]=rr,o[wg>>2]=1,ht=1):(ht=0,rr=ke(ue)),an=o[p+32>>2]|0,pi&(an|0)==2?an=2:bl(zi)|0&&!(bl(w)|0)&&(I[gu>>2]=w,o[Tc>>2]=2,Ks=2,zi=w),!((an|0)==2&Eo)&&bl(rr)|0&&!(bl(X)|0)&&(I[dl>>2]=X,o[wg>>2]=2,ht=2,rr=X),Un=ke(I[y+396>>2]),Ds=bl(Un)|0;do if(Ds)an=Ks;else{if((Ks|0)==1&Eo){I[dl>>2]=ke(ke(zi-Si)/Un),o[wg>>2]=1,ht=1,an=1;break}pi&(ht|0)==1?(I[gu>>2]=ke(Un*ke(rr-ss)),o[Tc>>2]=1,ht=1,an=1):an=Ks}while(!1);N0=bl(w)|0,Ks=(td(p,y)|0)!=4,!(pi|Il|((G|0)!=1|N0)|(Ks|(an|0)==1))&&(I[gu>>2]=w,o[Tc>>2]=1,!Ds)&&(I[dl>>2]=ke(ke(w-Si)/Un),o[wg>>2]=1,ht=1),!(kg|Eo|((Ge|0)!=1|(bl(X)|0))|(Ks|(ht|0)==1))&&(I[dl>>2]=X,o[wg>>2]=1,!Ds)&&(I[gu>>2]=ke(Un*ke(X-ss)),o[Tc>>2]=1),yb(y,2,U,U,Tc,gu),yb(y,0,le,U,wg,dl),w=ke(I[gu>>2]),X=ke(I[dl>>2]),ki(y,w,X,Xe,o[Tc>>2]|0,o[wg>>2]|0,U,le,0,3565,St)|0,le=ke(I[y+908+(o[976+(Tg<<2)>>2]<<2)>>2]),I[y+504>>2]=ke(zs(le,ke($_(y,Tg,U))))}while(!1);o[y+500>>2]=o[2278],B=im}function TA(p,y,w,G,X){return p=p|0,y=y|0,w=ke(w),G=ke(G),X=ke(X),G=ke(t1(p,y,w,G)),ke(zs(G,ke($_(p,y,X))))}function td(p,y){return p=p|0,y=y|0,y=y+20|0,y=o[(o[y>>2]|0?y:p+16|0)>>2]|0,(y|0)==5&&dB(o[p+4>>2]|0)|0&&(y=1),y|0}function Km(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+96>>2]|0?y=4:y=o[1040+(y<<2)>>2]|0,p+60+(y<<3)|0}function eI(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+104>>2]|0?y=5:y=o[1e3+(y<<2)>>2]|0,p+60+(y<<3)|0}function yb(p,y,w,G,X,U){switch(p=p|0,y=y|0,w=ke(w),G=ke(G),X=X|0,U=U|0,w=ke(cd(p+380+(o[976+(y<<2)>>2]<<3)|0,w)),w=ke(w+ke(jl(p,y,G))),o[X>>2]|0){case 2:case 1:{X=bl(w)|0,G=ke(I[U>>2]),I[U>>2]=X|G>2]=2,I[U>>2]=w);break}default:}}function k_(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(bg(p,4,948)|0)+4>>2]|0?p=1:p=(o[(bg(p,o[1040+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function bb(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0;return p=p+132|0,Gn(y)|0&&(G=bg(p,4,948)|0,(o[G+4>>2]|0)!=0)?X=4:(G=bg(p,o[1040+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?X=4:w=ke(0)),(X|0)==4&&(w=ke(cd(G,w))),ke(w)}function ky(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),G=ke(G+ke(ar(p,y,w))),ke(G+ke(Jr(p,y,w)))}function ev(p){p=p|0;var y=0,w=0,G=0;e:do if(dB(o[p+4>>2]|0)|0)y=0;else if((o[p+16>>2]|0)!=5)if(w=Fs(p)|0,!w)y=0;else for(y=0;;){if(G=Oa(p,y)|0,!(o[G+24>>2]|0)&&(o[G+20>>2]|0)==5){y=1;break e}if(y=y+1|0,y>>>0>=w>>>0){y=0;break}}else y=1;while(!1);return y|0}function Eb(p,y){p=p|0,y=y|0;var w=As;return w=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),w>=ke(0)&((bl(w)|0)^1)|0}function e0(p){p=p|0;var y=As,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=As;if(w=o[p+968>>2]|0,w)Xe=ke(I[p+908>>2]),y=ke(I[p+912>>2]),y=ke(Sie[w&0](p,Xe,y)),sp(p,(bl(y)|0)^1,3573);else{U=Fs(p)|0;do if(U|0){for(w=0,X=0;;){if(G=Oa(p,X)|0,o[G+940>>2]|0){le=8;break}if((o[G+24>>2]|0)!=1)if(Ge=(td(p,G)|0)==5,Ge){w=G;break}else w=w|0?w:G;if(X=X+1|0,X>>>0>=U>>>0){le=8;break}}if((le|0)==8&&!w)break;return y=ke(e0(w)),ke(y+ke(I[w+404>>2]))}while(!1);y=ke(I[p+912>>2])}return ke(y)}function t1(p,y,w,G){p=p|0,y=y|0,w=ke(w),G=ke(G);var X=As,U=0;return dB(y)|0?(y=1,U=3):Gn(y)|0?(y=0,U=3):(G=ke(ue),X=ke(ue)),(U|0)==3&&(X=ke(cd(p+364+(y<<3)|0,G)),G=ke(cd(p+380+(y<<3)|0,G))),U=G=ke(0)&((bl(G)|0)^1)),w=U?G:w,U=X>=ke(0)&((bl(X)|0)^1)&w>2]|0,U)|0,zi=FT(Ds,U)|0,Un=Gn(Ds)|0,rr=ke(jl(y,2,w)),an=ke(jl(y,0,w)),q_(y,2,w)|0?Ge=ke(rr+ke(cd(o[y+992>>2]|0,w))):k_(y,2)|0&&rv(y,2)|0?(Ge=ke(I[p+908>>2]),Xe=ke(Dg(p,2)),Xe=ke(Ge-ke(Xe+ke(Df(p,2)))),Ge=ke(bb(y,2,w)),Ge=ke(TA(y,2,ke(Xe-ke(Ge+ke(r1(y,2,w)))),w,w))):Ge=ke(ue),q_(y,0,X)|0?Xe=ke(an+ke(cd(o[y+996>>2]|0,X))):k_(y,0)|0&&rv(y,0)|0?(Xe=ke(I[p+912>>2]),Eo=ke(Dg(p,0)),Eo=ke(Xe-ke(Eo+ke(Df(p,0)))),Xe=ke(bb(y,0,X)),Xe=ke(TA(y,0,ke(Eo-ke(Xe+ke(r1(y,0,X)))),X,w))):Xe=ke(ue),St=bl(Ge)|0,ht=bl(Xe)|0;do if(St^ht&&(Ks=ke(I[y+396>>2]),!(bl(Ks)|0)))if(St){Ge=ke(rr+ke(ke(Xe-an)*Ks));break}else{Eo=ke(an+ke(ke(Ge-rr)/Ks)),Xe=ht?Eo:Xe;break}while(!1);ht=bl(Ge)|0,St=bl(Xe)|0,ht|St&&(ss=(ht^1)&1,G=w>ke(0)&((G|0)!=0&ht),Ge=Un?Ge:G?w:Ge,ki(y,Ge,Xe,U,Un?ss:G?2:ss,ht&(St^1)&1,Ge,Xe,0,3623,le)|0,Ge=ke(I[y+908>>2]),Ge=ke(Ge+ke(jl(y,2,w))),Xe=ke(I[y+912>>2]),Xe=ke(Xe+ke(jl(y,0,w)))),ki(y,Ge,Xe,U,1,1,Ge,Xe,1,3635,le)|0,rv(y,Ds)|0&&!(k_(y,Ds)|0)?(ss=o[976+(Ds<<2)>>2]|0,Eo=ke(I[p+908+(ss<<2)>>2]),Eo=ke(Eo-ke(I[y+908+(ss<<2)>>2])),Eo=ke(Eo-ke(Df(p,Ds))),Eo=ke(Eo-ke(Jr(y,Ds,w))),Eo=ke(Eo-ke(r1(y,Ds,Un?w:X))),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=Eo):Si=21;do if((Si|0)==21){if(!(k_(y,Ds)|0)&&(o[p+8>>2]|0)==1){ss=o[976+(Ds<<2)>>2]|0,Eo=ke(I[p+908+(ss<<2)>>2]),Eo=ke(ke(Eo-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=Eo;break}!(k_(y,Ds)|0)&&(o[p+8>>2]|0)==2&&(ss=o[976+(Ds<<2)>>2]|0,Eo=ke(I[p+908+(ss<<2)>>2]),Eo=ke(Eo-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=Eo)}while(!1);rv(y,zi)|0&&!(k_(y,zi)|0)?(ss=o[976+(zi<<2)>>2]|0,Eo=ke(I[p+908+(ss<<2)>>2]),Eo=ke(Eo-ke(I[y+908+(ss<<2)>>2])),Eo=ke(Eo-ke(Df(p,zi))),Eo=ke(Eo-ke(Jr(y,zi,w))),Eo=ke(Eo-ke(r1(y,zi,Un?X:w))),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=Eo):Si=30;do if((Si|0)==30&&!(k_(y,zi)|0)){if((td(p,y)|0)==2){ss=o[976+(zi<<2)>>2]|0,Eo=ke(I[p+908+(ss<<2)>>2]),Eo=ke(ke(Eo-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=Eo;break}ss=(td(p,y)|0)==3,ss^(o[p+28>>2]|0)==2&&(ss=o[976+(zi<<2)>>2]|0,Eo=ke(I[p+908+(ss<<2)>>2]),Eo=ke(Eo-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=Eo)}while(!1)}function LT(p,y,w){p=p|0,y=y|0,w=w|0;var G=As,X=0;X=o[976+(w<<2)>>2]|0,G=ke(I[y+908+(X<<2)>>2]),G=ke(ke(I[p+908+(X<<2)>>2])-G),G=ke(G-ke(I[y+400+(o[1040+(w<<2)>>2]<<2)>>2])),I[y+400+(o[1e3+(w<<2)>>2]<<2)>>2]=G}function dB(p){return p=p|0,(p|1|0)==1|0}function tv(p){p=p|0;var y=As;switch(o[p+56>>2]|0){case 0:case 3:{y=ke(I[p+40>>2]),y>ke(0)&((bl(y)|0)^1)?p=n[(o[p+976>>2]|0)+2>>0]|0?1056:992:p=1056;break}default:p=p+52|0}return p|0}function qR(p,y){return p=p|0,y=y|0,(n[p+y>>0]|0)!=0|0}function rv(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(bg(p,5,948)|0)+4>>2]|0?p=1:p=(o[(bg(p,o[1e3+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function r1(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,X=0;return p=p+132|0,Gn(y)|0&&(G=bg(p,5,948)|0,(o[G+4>>2]|0)!=0)?X=4:(G=bg(p,o[1e3+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?X=4:w=ke(0)),(X|0)==4&&(w=ke(cd(G,w))),ke(w)}function z2(p,y,w){return p=p|0,y=y|0,w=ke(w),k_(p,y)|0?w=ke(bb(p,y,w)):w=ke(-ke(r1(p,y,w))),ke(w)}function VT(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function pn(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{X=ju(y<<2)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<2)}function r2(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>2)<<2)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function q2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function ny(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;if(le=p+4|0,Ge=o[le>>2]|0,X=Ge-G|0,U=X>>2,p=y+(U<<2)|0,p>>>0>>0){G=Ge;do o[G>>2]=o[p>>2],p=p+4|0,G=(o[le>>2]|0)+4|0,o[le>>2]=G;while(p>>>0>>0)}U|0&&$T(Ge+(0-U<<2)|0,y|0,X|0)|0}function Ap(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=y+4|0,Xe=o[Ge>>2]|0,X=o[p>>2]|0,le=w,U=le-X|0,G=Xe+(0-(U>>2)<<2)|0,o[Ge>>2]=G,(U|0)>0&&Yd(G|0,X|0,U|0)|0,X=p+4|0,U=y+8|0,G=(o[X>>2]|0)-le|0,(G|0)>0&&(Yd(o[U>>2]|0,w|0,G|0)|0,o[U>>2]=(o[U>>2]|0)+(G>>>2<<2)),le=o[p>>2]|0,o[p>>2]=o[Ge>>2],o[Ge>>2]=le,le=o[X>>2]|0,o[X>>2]=o[U>>2],o[U>>2]=le,le=p+8|0,w=y+12|0,p=o[le>>2]|0,o[le>>2]=o[w>>2],o[w>>2]=p,o[y>>2]=o[Ge>>2],Xe|0}function bw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;if(le=o[y>>2]|0,U=o[w>>2]|0,(le|0)!=(U|0)){X=p+8|0,w=((U+-4-le|0)>>>2)+1|0,p=le,G=o[X>>2]|0;do o[G>>2]=o[p>>2],G=(o[X>>2]|0)+4|0,o[X>>2]=G,p=p+4|0;while((p|0)!=(U|0));o[y>>2]=le+(w<<2)}}function pB(){LA()}function FD(){var p=0;return p=ju(4)|0,Dd(p),p|0}function Dd(p){p=p|0,o[p>>2]=ff()|0}function $R(p){p=p|0,p|0&&(iy(p),ti(p))}function iy(p){p=p|0,io(o[p>>2]|0)}function fF(p,y,w){p=p|0,y=y|0,w=w|0,ry(o[p>>2]|0,y,w)}function n2(p,y){p=p|0,y=ke(y),zE(o[p>>2]|0,y)}function n1(p,y){return p=p|0,y=y|0,qR(o[p>>2]|0,y)|0}function x_(){var p=0;return p=ju(8)|0,i1(p,0),p|0}function i1(p,y){p=p|0,y=y|0,y?y=Yp(o[y>>2]|0)|0:y=vr()|0,o[p>>2]=y,o[p+4>>2]=0,op(y,p)}function s1(p){p=p|0;var y=0;return y=ju(8)|0,i1(y,p),y|0}function sy(p){p=p|0,p|0&&(WT(p),ti(p))}function WT(p){p=p|0;var y=0;ls(o[p>>2]|0),y=p+4|0,p=o[y>>2]|0,o[y>>2]=0,p|0&&(Sb(p),ti(p))}function Sb(p){p=p|0,s_(p)}function s_(p){p=p|0,p=o[p>>2]|0,p|0&&so(p|0)}function xh(p){return p=p|0,bd(p)|0}function vb(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(Sb(y),ti(y)),Dp(o[p>>2]|0)}function fB(p,y){p=p|0,y=y|0,WA(o[p>>2]|0,o[y>>2]|0)}function ZD(p,y){p=p|0,y=y|0,aE(o[p>>2]|0,y)}function LD(p,y,w){p=p|0,y=y|0,w=+w,U2(o[p>>2]|0,y,ke(w))}function t0(p,y,w){p=p|0,y=y|0,w=+w,cE(o[p>>2]|0,y,ke(w))}function VD(p,y){p=p|0,y=y|0,Gm(o[p>>2]|0,y)}function eN(p,y){p=p|0,y=y|0,qd(o[p>>2]|0,y)}function lc(p,y){p=p|0,y=y|0,Qp(o[p>>2]|0,y)}function Ch(p,y){p=p|0,y=y|0,e2(o[p>>2]|0,y)}function sf(p,y){p=p|0,y=y|0,ty(o[p>>2]|0,y)}function EI(p,y){p=p|0,y=y|0,XA(o[p>>2]|0,y)}function gE(p,y,w){p=p|0,y=y|0,w=+w,P(o[p>>2]|0,y,ke(w))}function nv(p,y,w){p=p|0,y=y|0,w=+w,K(o[p>>2]|0,y,ke(w))}function Jp(p,y){p=p|0,y=y|0,At(o[p>>2]|0,y)}function IB(p,y){p=p|0,y=y|0,DC(o[p>>2]|0,y)}function _h(p,y){p=p|0,y=y|0,up(o[p>>2]|0,y)}function ZC(p,y){p=p|0,y=+y,mb(o[p>>2]|0,ke(y))}function r0(p,y){p=p|0,y=+y,qf(o[p>>2]|0,ke(y))}function o1(p,y){p=p|0,y=+y,yI(o[p>>2]|0,ke(y))}function hB(p,y){p=p|0,y=+y,pe(o[p>>2]|0,ke(y))}function Ew(p,y){p=p|0,y=+y,dm(o[p>>2]|0,ke(y))}function OT(p,y){p=p|0,y=+y,ra(o[p>>2]|0,ke(y))}function v0(p,y){p=p|0,y=+y,kc(o[p>>2]|0,ke(y))}function ia(p){p=p|0,Dl(o[p>>2]|0)}function i2(p,y){p=p|0,y=+y,wl(o[p>>2]|0,ke(y))}function Ed(p,y){p=p|0,y=+y,eA(o[p>>2]|0,ke(y))}function SI(p){p=p|0,BA(o[p>>2]|0)}function cg(p,y){p=p|0,y=+y,gp(o[p>>2]|0,ke(y))}function Bb(p,y){p=p|0,y=+y,Cb(o[p>>2]|0,ke(y))}function a1(p,y){p=p|0,y=+y,Rd(o[p>>2]|0,ke(y))}function $2(p,y){p=p|0,y=+y,t2(o[p>>2]|0,ke(y))}function n0(p,y){p=p|0,y=+y,kC(o[p>>2]|0,ke(y))}function o_(p,y){p=p|0,y=+y,Jm(o[p>>2]|0,ke(y))}function Up(p,y){p=p|0,y=+y,Zg(o[p>>2]|0,ke(y))}function AE(p,y){p=p|0,y=+y,_b(o[p>>2]|0,ke(y))}function dE(p,y){p=p|0,y=+y,xC(o[p>>2]|0,ke(y))}function mp(p,y,w){p=p|0,y=y|0,w=+w,fi(o[p>>2]|0,y,ke(w))}function jh(p,y,w){p=p|0,y=y|0,w=+w,sr(o[p>>2]|0,y,ke(w))}function B0(p,y,w){p=p|0,y=y|0,w=+w,Yr(o[p>>2]|0,y,ke(w))}function lA(p){return p=p|0,j_(o[p>>2]|0)|0}function Iu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,se(X,o[y>>2]|0,w),Kp(p,X),B=G}function Kp(p,y){p=p|0,y=y|0,IC(p,o[y+4>>2]|0,+ke(I[y>>2]))}function IC(p,y,w){p=p|0,y=y|0,w=+w,o[p>>2]=y,C[p+8>>3]=w}function pE(p){return p=p|0,US(o[p>>2]|0)|0}function nh(p){return p=p|0,hh(o[p>>2]|0)|0}function Mf(p){return p=p|0,dC(o[p>>2]|0)|0}function Mo(p){return p=p|0,_w(o[p>>2]|0)|0}function dp(p){return p=p|0,jE(o[p>>2]|0)|0}function IF(p){return p=p|0,Ac(o[p>>2]|0)|0}function hF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,we(X,o[y>>2]|0,w),Kp(p,X),B=G}function fE(p){return p=p|0,i_(o[p>>2]|0)|0}function PT(p){return p=p|0,Xm(o[p>>2]|0)|0}function kp(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,bI(G,o[y>>2]|0),Kp(p,G),B=w}function Fm(p){return p=p|0,+ +ke(If(o[p>>2]|0))}function xp(p){return p=p|0,+ +ke(rf(o[p>>2]|0))}function s2(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,ca(G,o[y>>2]|0),Kp(p,G),B=w}function To(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,gI(G,o[y>>2]|0),Kp(p,G),B=w}function IE(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Na(G,o[y>>2]|0),Kp(p,G),B=w}function mB(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,D_(G,o[y>>2]|0),Kp(p,G),B=w}function Xc(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,KS(G,o[y>>2]|0),Kp(p,G),B=w}function su(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,pC(G,o[y>>2]|0),Kp(p,G),B=w}function hE(p){return p=p|0,+ +ke(K2(o[p>>2]|0))}function TL(p,y){return p=p|0,y=y|0,+ +ke($n(o[p>>2]|0,y))}function tN(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,Lr(X,o[y>>2]|0,w),Kp(p,X),B=G}function Pu(p,y,w){p=p|0,y=y|0,w=w|0,Hl(o[p>>2]|0,o[y>>2]|0,w)}function oy(p,y){p=p|0,y=y|0,gd(o[p>>2]|0,o[y>>2]|0)}function Cp(p){return p=p|0,Fs(o[p>>2]|0)|0}function Im(p){return p=p|0,p=vo(o[p>>2]|0)|0,p?p=xh(p)|0:p=0,p|0}function eS(p,y){return p=p|0,y=y|0,p=Oa(o[p>>2]|0,y)|0,p?p=xh(p)|0:p=0,p|0}function a_(p,y){p=p|0,y=y|0;var w=0,G=0;G=ju(4)|0,CB(G,y),w=p+4|0,y=o[w>>2]|0,o[w>>2]=G,y|0&&(Sb(y),ti(y)),Ea(o[p>>2]|0,1)}function CB(p,y){p=p|0,y=y|0,Tb(p,y)}function MT(p,y,w,G,X,U){p=p|0,y=y|0,w=ke(w),G=G|0,X=ke(X),U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,vx(Ge,bd(y)|0,+w,G,+X,U),I[p>>2]=ke(+C[Ge>>3]),I[p+4>>2]=ke(+C[Ge+8>>3]),B=le}function vx(p,y,w,G,X,U){p=p|0,y=y|0,w=+w,G=G|0,X=+X,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0;le=B,B=B+32|0,ht=le+8|0,St=le+20|0,Xe=le,Ge=le+16|0,C[ht>>3]=w,o[St>>2]=G,C[Xe>>3]=X,o[Ge>>2]=U,_B(p,o[y+4>>2]|0,ht,St,Xe,Ge),B=le}function _B(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,Ww(Ge),y=tI(y)|0,zh(p,y,+C[w>>3],o[G>>2]|0,+C[X>>3],o[U>>2]|0),gS(Ge),B=le}function tI(p){return p=p|0,o[p>>2]|0}function zh(p,y,w,G,X,U){p=p|0,y=y|0,w=+w,G=G|0,X=+X,U=U|0;var le=0;le=wb(iv()|0)|0,w=+_p(w),G=o2(G)|0,X=+_p(X),c1(p,cc(0,le|0,y|0,+w,G|0,+X,o2(U)|0)|0)}function iv(){var p=0;return n[7608]|0||(yB(9120),p=7608,o[p>>2]=1,o[p+4>>2]=0),9120}function wb(p){return p=p|0,o[p+8>>2]|0}function _p(p){return p=+p,+ +md(p)}function o2(p){return p=p|0,Z(p)|0}function c1(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;X=B,B=B+32|0,w=X,G=y,G&1?(Hf(w,0),_I(G|0,w|0)|0,mE(p,w),Od(w)):(o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]),B=X}function Hf(p,y){p=p|0,y=y|0,j(p,y),o[p+8>>2]=0,n[p+24>>0]=0}function mE(p,y){p=p|0,y=y|0,y=y+8|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]}function Od(p){p=p|0,n[p+24>>0]=0}function j(p,y){p=p|0,y=y|0,o[p>>2]=y}function Z(p){return p=p|0,p|0}function md(p){return p=+p,+p}function yB(p){p=p|0,xy(p,sv()|0,4)}function sv(){return 1064}function xy(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=zd(y|0,w+1|0)|0}function Tb(p,y){p=p|0,y=y|0,y=o[y>>2]|0,o[p>>2]=y,ac(y|0)}function WD(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(Sb(y),ti(y)),Ea(o[p>>2]|0,0)}function bB(p){p=p|0,us(o[p>>2]|0)}function Rb(p){return p=p|0,Xl(o[p>>2]|0)|0}function RL(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,Um(o[p>>2]|0,ke(y),ke(w),G)}function mF(p){return p=p|0,+ +ke(z_(o[p>>2]|0))}function x(p){return p=p|0,+ +ke(FC(o[p>>2]|0))}function L(p){return p=p|0,+ +ke(GC(o[p>>2]|0))}function te(p){return p=p|0,+ +ke(th(o[p>>2]|0))}function Re(p){return p=p|0,+ +ke(mh(o[p>>2]|0))}function Ve(p){return p=p|0,+ +ke(wA(o[p>>2]|0))}function It(p,y){p=p|0,y=y|0,C[p>>3]=+ke(z_(o[y>>2]|0)),C[p+8>>3]=+ke(FC(o[y>>2]|0)),C[p+16>>3]=+ke(GC(o[y>>2]|0)),C[p+24>>3]=+ke(th(o[y>>2]|0)),C[p+32>>3]=+ke(mh(o[y>>2]|0)),C[p+40>>3]=+ke(wA(o[y>>2]|0))}function dr(p,y){return p=p|0,y=y|0,+ +ke(Nd(o[p>>2]|0,y))}function Ur(p,y){return p=p|0,y=y|0,+ +ke(Mc(o[p>>2]|0,y))}function mi(p,y){return p=p|0,y=y|0,+ +ke(Pf(o[p>>2]|0,y))}function Vi(){return QA()|0}function Ta(){El(),Ho(),Pg(),uA(),ih(),xn()}function El(){$qe(11713,4938,1)}function Ho(){eLe(10448)}function Pg(){jZe(10408)}function uA(){Xqe(10324)}function ih(){Hye(10096)}function xn(){rn(9132)}function rn(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,Eo=0,ss=0,pi=0,Il=0,gu=0,dl=0,Tc=0,wg=0,kg=0,Tg=0,im=0,N0=0,BE=0,oh=0,Z_=0,sk=0,Pw=0,bh=0,WF=0,Mw=0,tR=0,n9=0,i9=0,AS=0,_f=0,h2=0,rR=0,_v=0,Px=0,WB=0,yv=0,OB=0,wE=0,qm=0,SN=0,nR=0,$m=0,m2=0,mg=0,YI=0,ag=0,jo=0,Qg=0,Ll=0,C2=0,QI=0,OF=0,dI=0,jA=0,gA=0,PF=0,vN=0,iR=0,_1=0,D0=0,ok=0,po=0,Hw=0,MF=0,Qd=0,cf=0,wd=0,Ep=0,A_=0,Xd=0,Xg=0,bv=0;y=B,B=B+672|0,w=y+656|0,bv=y+648|0,Xg=y+640|0,Xd=y+632|0,A_=y+624|0,Ep=y+616|0,wd=y+608|0,cf=y+600|0,Qd=y+592|0,MF=y+584|0,Hw=y+576|0,po=y+568|0,ok=y+560|0,D0=y+552|0,_1=y+544|0,iR=y+536|0,vN=y+528|0,PF=y+520|0,gA=y+512|0,jA=y+504|0,dI=y+496|0,OF=y+488|0,QI=y+480|0,C2=y+472|0,Ll=y+464|0,Qg=y+456|0,jo=y+448|0,ag=y+440|0,YI=y+432|0,mg=y+424|0,m2=y+416|0,$m=y+408|0,nR=y+400|0,SN=y+392|0,qm=y+384|0,wE=y+376|0,OB=y+368|0,yv=y+360|0,WB=y+352|0,Px=y+344|0,_v=y+336|0,rR=y+328|0,h2=y+320|0,_f=y+312|0,AS=y+304|0,i9=y+296|0,n9=y+288|0,tR=y+280|0,Mw=y+272|0,WF=y+264|0,bh=y+256|0,Pw=y+248|0,sk=y+240|0,Z_=y+232|0,oh=y+224|0,BE=y+216|0,N0=y+208|0,im=y+200|0,Tg=y+192|0,kg=y+184|0,wg=y+176|0,Tc=y+168|0,dl=y+160|0,gu=y+152|0,Il=y+144|0,pi=y+136|0,ss=y+128|0,Eo=y+120|0,Si=y+112|0,Ds=y+104|0,Un=y+96|0,zi=y+88|0,Ks=y+80|0,an=y+72|0,rr=y+64|0,ht=y+56|0,St=y+48|0,Xe=y+40|0,Ge=y+32|0,le=y+24|0,U=y+16|0,X=y+8|0,G=y,Ci(p,3646),Wo(p,3651,2)|0,ec(p,3665,2)|0,Ra(p,3682,18)|0,o[bv>>2]=19,o[bv+4>>2]=0,o[w>>2]=o[bv>>2],o[w+4>>2]=o[bv+4>>2],dc(p,3690,w)|0,o[Xg>>2]=1,o[Xg+4>>2]=0,o[w>>2]=o[Xg>>2],o[w+4>>2]=o[Xg+4>>2],hu(p,3696,w)|0,o[Xd>>2]=2,o[Xd+4>>2]=0,o[w>>2]=o[Xd>>2],o[w+4>>2]=o[Xd+4>>2],ml(p,3706,w)|0,o[A_>>2]=1,o[A_+4>>2]=0,o[w>>2]=o[A_>>2],o[w+4>>2]=o[A_+4>>2],Tl(p,3722,w)|0,o[Ep>>2]=2,o[Ep+4>>2]=0,o[w>>2]=o[Ep>>2],o[w+4>>2]=o[Ep+4>>2],Tl(p,3734,w)|0,o[wd>>2]=3,o[wd+4>>2]=0,o[w>>2]=o[wd>>2],o[w+4>>2]=o[wd+4>>2],ml(p,3753,w)|0,o[cf>>2]=4,o[cf+4>>2]=0,o[w>>2]=o[cf>>2],o[w+4>>2]=o[cf+4>>2],ml(p,3769,w)|0,o[Qd>>2]=5,o[Qd+4>>2]=0,o[w>>2]=o[Qd>>2],o[w+4>>2]=o[Qd+4>>2],ml(p,3783,w)|0,o[MF>>2]=6,o[MF+4>>2]=0,o[w>>2]=o[MF>>2],o[w+4>>2]=o[MF+4>>2],ml(p,3796,w)|0,o[Hw>>2]=7,o[Hw+4>>2]=0,o[w>>2]=o[Hw>>2],o[w+4>>2]=o[Hw+4>>2],ml(p,3813,w)|0,o[po>>2]=8,o[po+4>>2]=0,o[w>>2]=o[po>>2],o[w+4>>2]=o[po+4>>2],ml(p,3825,w)|0,o[ok>>2]=3,o[ok+4>>2]=0,o[w>>2]=o[ok>>2],o[w+4>>2]=o[ok+4>>2],Tl(p,3843,w)|0,o[D0>>2]=4,o[D0+4>>2]=0,o[w>>2]=o[D0>>2],o[w+4>>2]=o[D0+4>>2],Tl(p,3853,w)|0,o[_1>>2]=9,o[_1+4>>2]=0,o[w>>2]=o[_1>>2],o[w+4>>2]=o[_1+4>>2],ml(p,3870,w)|0,o[iR>>2]=10,o[iR+4>>2]=0,o[w>>2]=o[iR>>2],o[w+4>>2]=o[iR+4>>2],ml(p,3884,w)|0,o[vN>>2]=11,o[vN+4>>2]=0,o[w>>2]=o[vN>>2],o[w+4>>2]=o[vN+4>>2],ml(p,3896,w)|0,o[PF>>2]=1,o[PF+4>>2]=0,o[w>>2]=o[PF>>2],o[w+4>>2]=o[PF+4>>2],rI(p,3907,w)|0,o[gA>>2]=2,o[gA+4>>2]=0,o[w>>2]=o[gA>>2],o[w+4>>2]=o[gA+4>>2],rI(p,3915,w)|0,o[jA>>2]=3,o[jA+4>>2]=0,o[w>>2]=o[jA>>2],o[w+4>>2]=o[jA+4>>2],rI(p,3928,w)|0,o[dI>>2]=4,o[dI+4>>2]=0,o[w>>2]=o[dI>>2],o[w+4>>2]=o[dI+4>>2],rI(p,3948,w)|0,o[OF>>2]=5,o[OF+4>>2]=0,o[w>>2]=o[OF>>2],o[w+4>>2]=o[OF+4>>2],rI(p,3960,w)|0,o[QI>>2]=6,o[QI+4>>2]=0,o[w>>2]=o[QI>>2],o[w+4>>2]=o[QI+4>>2],rI(p,3974,w)|0,o[C2>>2]=7,o[C2+4>>2]=0,o[w>>2]=o[C2>>2],o[w+4>>2]=o[C2+4>>2],rI(p,3983,w)|0,o[Ll>>2]=20,o[Ll+4>>2]=0,o[w>>2]=o[Ll>>2],o[w+4>>2]=o[Ll+4>>2],dc(p,3999,w)|0,o[Qg>>2]=8,o[Qg+4>>2]=0,o[w>>2]=o[Qg>>2],o[w+4>>2]=o[Qg+4>>2],rI(p,4012,w)|0,o[jo>>2]=9,o[jo+4>>2]=0,o[w>>2]=o[jo>>2],o[w+4>>2]=o[jo+4>>2],rI(p,4022,w)|0,o[ag>>2]=21,o[ag+4>>2]=0,o[w>>2]=o[ag>>2],o[w+4>>2]=o[ag+4>>2],dc(p,4039,w)|0,o[YI>>2]=10,o[YI+4>>2]=0,o[w>>2]=o[YI>>2],o[w+4>>2]=o[YI+4>>2],rI(p,4053,w)|0,o[mg>>2]=11,o[mg+4>>2]=0,o[w>>2]=o[mg>>2],o[w+4>>2]=o[mg+4>>2],rI(p,4065,w)|0,o[m2>>2]=12,o[m2+4>>2]=0,o[w>>2]=o[m2>>2],o[w+4>>2]=o[m2+4>>2],rI(p,4084,w)|0,o[$m>>2]=13,o[$m+4>>2]=0,o[w>>2]=o[$m>>2],o[w+4>>2]=o[$m+4>>2],rI(p,4097,w)|0,o[nR>>2]=14,o[nR+4>>2]=0,o[w>>2]=o[nR>>2],o[w+4>>2]=o[nR+4>>2],rI(p,4117,w)|0,o[SN>>2]=15,o[SN+4>>2]=0,o[w>>2]=o[SN>>2],o[w+4>>2]=o[SN+4>>2],rI(p,4129,w)|0,o[qm>>2]=16,o[qm+4>>2]=0,o[w>>2]=o[qm>>2],o[w+4>>2]=o[qm+4>>2],rI(p,4148,w)|0,o[wE>>2]=17,o[wE+4>>2]=0,o[w>>2]=o[wE>>2],o[w+4>>2]=o[wE+4>>2],rI(p,4161,w)|0,o[OB>>2]=18,o[OB+4>>2]=0,o[w>>2]=o[OB>>2],o[w+4>>2]=o[OB+4>>2],rI(p,4181,w)|0,o[yv>>2]=5,o[yv+4>>2]=0,o[w>>2]=o[yv>>2],o[w+4>>2]=o[yv+4>>2],Tl(p,4196,w)|0,o[WB>>2]=6,o[WB+4>>2]=0,o[w>>2]=o[WB>>2],o[w+4>>2]=o[WB+4>>2],Tl(p,4206,w)|0,o[Px>>2]=7,o[Px+4>>2]=0,o[w>>2]=o[Px>>2],o[w+4>>2]=o[Px+4>>2],Tl(p,4217,w)|0,o[_v>>2]=3,o[_v+4>>2]=0,o[w>>2]=o[_v>>2],o[w+4>>2]=o[_v+4>>2],tS(p,4235,w)|0,o[rR>>2]=1,o[rR+4>>2]=0,o[w>>2]=o[rR>>2],o[w+4>>2]=o[rR+4>>2],Bx(p,4251,w)|0,o[h2>>2]=4,o[h2+4>>2]=0,o[w>>2]=o[h2>>2],o[w+4>>2]=o[h2+4>>2],tS(p,4263,w)|0,o[_f>>2]=5,o[_f+4>>2]=0,o[w>>2]=o[_f>>2],o[w+4>>2]=o[_f+4>>2],tS(p,4279,w)|0,o[AS>>2]=6,o[AS+4>>2]=0,o[w>>2]=o[AS>>2],o[w+4>>2]=o[AS+4>>2],tS(p,4293,w)|0,o[i9>>2]=7,o[i9+4>>2]=0,o[w>>2]=o[i9>>2],o[w+4>>2]=o[i9+4>>2],tS(p,4306,w)|0,o[n9>>2]=8,o[n9+4>>2]=0,o[w>>2]=o[n9>>2],o[w+4>>2]=o[n9+4>>2],tS(p,4323,w)|0,o[tR>>2]=9,o[tR+4>>2]=0,o[w>>2]=o[tR>>2],o[w+4>>2]=o[tR+4>>2],tS(p,4335,w)|0,o[Mw>>2]=2,o[Mw+4>>2]=0,o[w>>2]=o[Mw>>2],o[w+4>>2]=o[Mw+4>>2],Bx(p,4353,w)|0,o[WF>>2]=12,o[WF+4>>2]=0,o[w>>2]=o[WF>>2],o[w+4>>2]=o[WF+4>>2],rS(p,4363,w)|0,o[bh>>2]=1,o[bh+4>>2]=0,o[w>>2]=o[bh>>2],o[w+4>>2]=o[bh+4>>2],ov(p,4376,w)|0,o[Pw>>2]=2,o[Pw+4>>2]=0,o[w>>2]=o[Pw>>2],o[w+4>>2]=o[Pw+4>>2],ov(p,4388,w)|0,o[sk>>2]=13,o[sk+4>>2]=0,o[w>>2]=o[sk>>2],o[w+4>>2]=o[sk+4>>2],rS(p,4402,w)|0,o[Z_>>2]=14,o[Z_+4>>2]=0,o[w>>2]=o[Z_>>2],o[w+4>>2]=o[Z_+4>>2],rS(p,4411,w)|0,o[oh>>2]=15,o[oh+4>>2]=0,o[w>>2]=o[oh>>2],o[w+4>>2]=o[oh+4>>2],rS(p,4421,w)|0,o[BE>>2]=16,o[BE+4>>2]=0,o[w>>2]=o[BE>>2],o[w+4>>2]=o[BE+4>>2],rS(p,4433,w)|0,o[N0>>2]=17,o[N0+4>>2]=0,o[w>>2]=o[N0>>2],o[w+4>>2]=o[N0+4>>2],rS(p,4446,w)|0,o[im>>2]=18,o[im+4>>2]=0,o[w>>2]=o[im>>2],o[w+4>>2]=o[im+4>>2],rS(p,4458,w)|0,o[Tg>>2]=3,o[Tg+4>>2]=0,o[w>>2]=o[Tg>>2],o[w+4>>2]=o[Tg+4>>2],ov(p,4471,w)|0,o[kg>>2]=1,o[kg+4>>2]=0,o[w>>2]=o[kg>>2],o[w+4>>2]=o[kg+4>>2],Yu(p,4486,w)|0,o[wg>>2]=10,o[wg+4>>2]=0,o[w>>2]=o[wg>>2],o[w+4>>2]=o[wg+4>>2],tS(p,4496,w)|0,o[Tc>>2]=11,o[Tc+4>>2]=0,o[w>>2]=o[Tc>>2],o[w+4>>2]=o[Tc+4>>2],tS(p,4508,w)|0,o[dl>>2]=3,o[dl+4>>2]=0,o[w>>2]=o[dl>>2],o[w+4>>2]=o[dl+4>>2],Bx(p,4519,w)|0,o[gu>>2]=4,o[gu+4>>2]=0,o[w>>2]=o[gu>>2],o[w+4>>2]=o[gu+4>>2],a3(p,4530,w)|0,o[Il>>2]=19,o[Il+4>>2]=0,o[w>>2]=o[Il>>2],o[w+4>>2]=o[Il+4>>2],EB(p,4542,w)|0,o[pi>>2]=12,o[pi+4>>2]=0,o[w>>2]=o[pi>>2],o[w+4>>2]=o[pi+4>>2],Sw(p,4554,w)|0,o[ss>>2]=13,o[ss+4>>2]=0,o[w>>2]=o[ss>>2],o[w+4>>2]=o[ss+4>>2],CF(p,4568,w)|0,o[Eo>>2]=2,o[Eo+4>>2]=0,o[w>>2]=o[Eo>>2],o[w+4>>2]=o[Eo+4>>2],c3(p,4578,w)|0,o[Si>>2]=20,o[Si+4>>2]=0,o[w>>2]=o[Si>>2],o[w+4>>2]=o[Si+4>>2],IY(p,4587,w)|0,o[Ds>>2]=22,o[Ds+4>>2]=0,o[w>>2]=o[Ds>>2],o[w+4>>2]=o[Ds+4>>2],dc(p,4602,w)|0,o[Un>>2]=23,o[Un+4>>2]=0,o[w>>2]=o[Un>>2],o[w+4>>2]=o[Un+4>>2],dc(p,4619,w)|0,o[zi>>2]=14,o[zi+4>>2]=0,o[w>>2]=o[zi>>2],o[w+4>>2]=o[zi+4>>2],HT(p,4629,w)|0,o[Ks>>2]=1,o[Ks+4>>2]=0,o[w>>2]=o[Ks>>2],o[w+4>>2]=o[Ks+4>>2],OD(p,4637,w)|0,o[an>>2]=4,o[an+4>>2]=0,o[w>>2]=o[an>>2],o[w+4>>2]=o[an+4>>2],ov(p,4653,w)|0,o[rr>>2]=5,o[rr+4>>2]=0,o[w>>2]=o[rr>>2],o[w+4>>2]=o[rr+4>>2],ov(p,4669,w)|0,o[ht>>2]=6,o[ht+4>>2]=0,o[w>>2]=o[ht>>2],o[w+4>>2]=o[ht+4>>2],ov(p,4686,w)|0,o[St>>2]=7,o[St+4>>2]=0,o[w>>2]=o[St>>2],o[w+4>>2]=o[St+4>>2],ov(p,4701,w)|0,o[Xe>>2]=8,o[Xe+4>>2]=0,o[w>>2]=o[Xe>>2],o[w+4>>2]=o[Xe+4>>2],ov(p,4719,w)|0,o[Ge>>2]=9,o[Ge+4>>2]=0,o[w>>2]=o[Ge>>2],o[w+4>>2]=o[Ge+4>>2],ov(p,4736,w)|0,o[le>>2]=21,o[le+4>>2]=0,o[w>>2]=o[le>>2],o[w+4>>2]=o[le+4>>2],_F(p,4754,w)|0,o[U>>2]=2,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],Yu(p,4772,w)|0,o[X>>2]=3,o[X+4>>2]=0,o[w>>2]=o[X>>2],o[w+4>>2]=o[X+4>>2],Yu(p,4790,w)|0,o[G>>2]=4,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],Yu(p,4808,w)|0,B=y}function Ci(p,y){p=p|0,y=y|0;var w=0;w=VVt()|0,o[p>>2]=w,xZe(w,y),xF(o[p>>2]|0)}function Wo(p,y,w){return p=p|0,y=y|0,w=w|0,gAe(p,hf(y)|0,w,0),p|0}function ec(p,y,w){return p=p|0,y=y|0,w=w|0,cAe(p,hf(y)|0,w,0),p|0}function Ra(p,y,w){return p=p|0,y=y|0,w=w|0,I1(p,hf(y)|0,w,0),p|0}function dc(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],bZe(p,y,X),B=G,p|0}function hu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],JT(p,y,X),B=G,p|0}function ml(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ie(p,y,X),B=G,p|0}function Tl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],vW(p,y,X),B=G,p|0}function rI(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],sne(p,y,X),B=G,p|0}function tS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],vF(p,y,X),B=G,p|0}function Bx(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],LY(p,y,X),B=G,p|0}function rS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],$u(p,y,X),B=G,p|0}function ov(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],XT(p,y,X),B=G,p|0}function Yu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],WJ(p,y,X),B=G,p|0}function a3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Gb(p,y,X),B=G,p|0}function EB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],FJ(p,y,X),B=G,p|0}function Sw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],vye(p,y,X),B=G,p|0}function CF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Ege(p,y,X),B=G,p|0}function c3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],EY(p,y,X),B=G,p|0}function IY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],g1(p,y,X),B=G,p|0}function HT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],kL(p,y,X),B=G,p|0}function OD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ld(p,y,X),B=G,p|0}function _F(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],NL(p,y,X),B=G,p|0}function NL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],PD(p,w,X,1),B=G}function hf(p){return p=p|0,p|0}function PD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=CE()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=a2(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,SB(U,G)|0,G),B=X}function CE(){var p=0,y=0;if(n[7616]|0||(Jt(9136),fu(24,9136,J|0)|0,y=7616,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9136)|0)){p=9136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Jt(9136)}return 9136}function a2(p){return p=p|0,0}function SB(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=CE()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],ay(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(hY(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Sd(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0;le=B,B=B+32|0,an=le+24|0,rr=le+20|0,Xe=le+16|0,ht=le+12|0,St=le+8|0,Ge=le+4|0,Ks=le,o[rr>>2]=y,o[Xe>>2]=w,o[ht>>2]=G,o[St>>2]=X,o[Ge>>2]=U,U=p+28|0,o[Ks>>2]=o[U>>2],o[an>>2]=o[Ks>>2],l1(p+24|0,an,rr,ht,St,Xe,Ge)|0,o[U>>2]=o[o[U>>2]>>2],B=le}function l1(p,y,w,G,X,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0,p=qh(y)|0,y=ju(24)|0,Nb(y+4|0,o[w>>2]|0,o[G>>2]|0,o[X>>2]|0,o[U>>2]|0,o[le>>2]|0),o[y>>2]=o[p>>2],o[p>>2]=y,y|0}function qh(p){return p=p|0,o[p>>2]|0}function Nb(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=X,o[p+16>>2]=U}function Ku(p,y){return p=p|0,y=y|0,y|p|0}function ay(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function hY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=mY(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,rN(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],ay(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,CY(p,Ge),rt(Ge),B=St;return}}function mY(p){return p=p|0,357913941}function rN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function CY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function rt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Jt(p){p=p|0,Is(p)}function kr(p){p=p|0,ui(p+24|0)}function Xr(p){return p=p|0,o[p>>2]|0}function ui(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Is(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,3,y,Rs()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hs(){return 9228}function Rs(){return 1140}function ja(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=nl(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=kd(y,G)|0,B=w,y|0}function Io(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=X,o[p+16>>2]=U}function nl(p){return p=p|0,(o[(CE()|0)+24>>2]|0)+(p*12|0)|0}function kd(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;return X=B,B=B+48|0,G=X,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),ik[w&31](G,p),G=rd(G)|0,B=X,G|0}function rd(p){p=p|0;var y=0,w=0,G=0,X=0;return X=B,B=B+32|0,y=X+12|0,w=X,G=Gh(Mg()|0)|0,G?(u1(y,G),Db(w,y),nS(p,w),p=_E(y)|0):p=nN(p)|0,B=X,p|0}function Mg(){var p=0;return n[7632]|0||(ye(9184),fu(25,9184,J|0)|0,p=7632,o[p>>2]=1,o[p+4>>2]=0),9184}function Gh(p){return p=p|0,o[p+36>>2]|0}function u1(p,y){p=p|0,y=y|0,o[p>>2]=y,o[p+4>>2]=p,o[p+8>>2]=0}function Db(p,y){p=p|0,y=y|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=0}function nS(p,y){p=p|0,y=y|0,RA(y,p,p+8|0,p+16|0,p+24|0,p+32|0,p+40|0)|0}function _E(p){return p=p|0,o[(o[p+4>>2]|0)+8>>2]|0}function nN(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;Xe=B,B=B+16|0,w=Xe+4|0,G=Xe,X=Vb(8)|0,U=X,le=ju(48)|0,Ge=le,y=Ge+48|0;do o[Ge>>2]=o[p>>2],Ge=Ge+4|0,p=p+4|0;while((Ge|0)<(y|0));return y=U+4|0,o[y>>2]=le,Ge=ju(8)|0,le=o[y>>2]|0,o[G>>2]=0,o[w>>2]=o[G>>2],l3(Ge,le,w),o[X>>2]=Ge,B=Xe,U|0}function l3(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1092,o[w+12>>2]=y,o[p+4>>2]=w}function mA(p){p=p|0,Tz(p),ti(p)}function vI(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function $d(p){p=p|0,ti(p)}function RA(p,y,w,G,X,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0,U=iN(o[p>>2]|0,y,w,G,X,U,le)|0,le=p+4|0,o[(o[le>>2]|0)+8>>2]=U,o[(o[le>>2]|0)+8>>2]|0}function iN(p,y,w,G,X,U,le){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0;var Ge=0,Xe=0;return Ge=B,B=B+16|0,Xe=Ge,Ww(Xe),p=tI(p)|0,le=cy(p,+C[y>>3],+C[w>>3],+C[G>>3],+C[X>>3],+C[U>>3],+C[le>>3])|0,gS(Xe),B=Ge,le|0}function cy(p,y,w,G,X,U,le){p=p|0,y=+y,w=+w,G=+G,X=+X,U=+U,le=+le;var Ge=0;return Ge=wb(iS()|0)|0,y=+_p(y),w=+_p(w),G=+_p(G),X=+_p(X),U=+_p(U),Ws(0,Ge|0,p|0,+y,+w,+G,+X,+U,+ +_p(le))|0}function iS(){var p=0;return n[7624]|0||(bo(9172),p=7624,o[p>>2]=1,o[p+4>>2]=0),9172}function bo(p){p=p|0,xy(p,z()|0,6)}function z(){return 1112}function ye(p){p=p|0,Hc(p)}function We(p){p=p|0,_t(p+24|0),Rr(p+16|0)}function _t(p){p=p|0,Lo(p)}function Rr(p){p=p|0,ai(p)}function ai(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Lo(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Hc(p){p=p|0;var y=0;o[p+16>>2]=0,o[p+20>>2]=0,y=p+24|0,o[y>>2]=0,o[p+28>>2]=y,o[p+36>>2]=0,n[p+40>>0]=0,n[p+41>>0]=0}function ld(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],hm(p,w,X,0),B=G}function hm(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=av()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=cv(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,wx(U,G)|0,G),B=X}function av(){var p=0,y=0;if(n[7640]|0||(Vo(9232),fu(26,9232,J|0)|0,y=7640,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9232)|0)){p=9232,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Vo(9232)}return 9232}function cv(p){return p=p|0,0}function wx(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=av()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],xd(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(ji(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function xd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function ji(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=DL(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,eu(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],xd(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,pp(p,Ge),Bc(Ge),B=St;return}}function DL(p){return p=p|0,357913941}function eu(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function pp(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bc(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Vo(p){p=p|0,c7(p)}function lv(p){p=p|0,of(p+24|0)}function of(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function c7(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,1,y,_Y()|0,3),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function _Y(){return 1144}function u3(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,le=U+8|0,Ge=U,Xe=yF(p)|0,p=o[Xe+4>>2]|0,o[Ge>>2]=o[Xe>>2],o[Ge+4>>2]=p,o[le>>2]=o[Ge>>2],o[le+4>>2]=o[Ge+4>>2],sh(y,le,w,G,X),B=U}function yF(p){return p=p|0,(o[(av()|0)+24>>2]|0)+(p*12|0)|0}function sh(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0;St=B,B=B+16|0,le=St+2|0,Ge=St+1|0,Xe=St,U=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(U=o[(o[p>>2]|0)+U>>2]|0),vw(le,w),w=+fl(le,w),vw(Ge,G),G=+fl(Ge,G),vB(Xe,X),Xe=kb(Xe,X)|0,AQ[U&1](p,w,G,Xe),B=St}function vw(p,y){p=p|0,y=+y}function fl(p,y){return p=p|0,y=+y,+ +Gre(y)}function vB(p,y){p=p|0,y=y|0}function kb(p,y){return p=p|0,y=y|0,sN(y)|0}function sN(p){return p=p|0,p|0}function Gre(p){return p=+p,+p}function kL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],SJ(p,w,X,1),B=G}function SJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=yY()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=g3(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,l7(U,G)|0,G),B=X}function yY(){var p=0,y=0;if(n[7648]|0||(Es(9268),fu(27,9268,J|0)|0,y=7648,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9268)|0)){p=9268,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Es(9268)}return 9268}function g3(p){return p=p|0,0}function l7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=yY()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],vJ(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(u7(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function vJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function u7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=bY(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Tx(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],vJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Fre(p,Ge),Rx(Ge),B=St;return}}function bY(p){return p=p|0,357913941}function Tx(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Fre(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Rx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Es(p){p=p|0,Ua(p)}function Aa(p){p=p|0,ha(p+24|0)}function ha(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Ua(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,4,y,wc()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function wc(){return 1160}function CA(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=Pd(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=$h(y,G)|0,B=w,y|0}function Pd(p){return p=p|0,(o[(yY()|0)+24>>2]|0)+(p*12|0)|0}function $h(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),c2(yC[w&31](p)|0)|0}function c2(p){return p=p|0,p&1|0}function g1(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],xb(p,w,X,0),B=G}function xb(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=uv()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=fW(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,bF(U,G)|0,G),B=X}function uv(){var p=0,y=0;if(n[7656]|0||(wJ(9304),fu(28,9304,J|0)|0,y=7656,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9304)|0)){p=9304,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));wJ(9304)}return 9304}function fW(p){return p=p|0,0}function bF(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=uv()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],gv(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(oN(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function gv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function oN(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=BJ(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,g7(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],gv(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Nx(p,Ge),A1(Ge),B=St;return}}function BJ(p){return p=p|0,357913941}function g7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Nx(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function A1(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function wJ(p){p=p|0,hZe(p)}function Sye(p){p=p|0,TJ(p+24|0)}function TJ(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function hZe(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,5,y,MD()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function MD(){return 1164}function A3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=Bw(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],RJ(y,X,w),B=G}function Bw(p){return p=p|0,(o[(uv()|0)+24>>2]|0)+(p*12|0)|0}function RJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Dx(X,w),w=EF(X,w)|0,ik[G&31](p,w),BB(X),B=U}function Dx(p,y){p=p|0,y=y|0,LC(p,y)}function EF(p,y){return p=p|0,y=y|0,p|0}function BB(p){p=p|0,Sb(p)}function LC(p,y){p=p|0,y=y|0,IW(p,y)}function IW(p,y){p=p|0,y=y|0,o[p>>2]=y}function EY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],d3(p,w,X,0),B=G}function d3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=NJ()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=l2(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,u2(U,G)|0,G),B=X}function NJ(){var p=0,y=0;if(n[7664]|0||(xL(9340),fu(29,9340,J|0)|0,y=7664,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9340)|0)){p=9340,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));xL(9340)}return 9340}function l2(p){return p=p|0,0}function u2(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=NJ()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],DJ(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(SY(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function DJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function SY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Zre(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,vY(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],DJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,A7(p,Ge),d7(Ge),B=St;return}}function Zre(p){return p=p|0,357913941}function vY(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function A7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function d7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function xL(p){p=p|0,FL(p)}function aN(p){p=p|0,BY(p+24|0)}function BY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function FL(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,4,y,Lre()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Lre(){return 1180}function HD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=bge(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=p7(y,X,w)|0,B=G,w|0}function bge(p){return p=p|0,(o[(NJ()|0)+24>>2]|0)+(p*12|0)|0}function p7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;return U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),sS(X,w),X=cN(X,w)|0,X=kJ(vie[G&15](p,X)|0)|0,B=U,X|0}function sS(p,y){p=p|0,y=y|0}function cN(p,y){return p=p|0,y=y|0,lN(y)|0}function kJ(p){return p=p|0,p|0}function lN(p){return p=p|0,p|0}function Ege(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Vre(p,w,X,0),B=G}function Vre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=f7()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Gp(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,ZL(U,G)|0,G),B=X}function f7(){var p=0,y=0;if(n[7672]|0||(hg(9376),fu(30,9376,J|0)|0,y=7672,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9376)|0)){p=9376,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));hg(9376)}return 9376}function Gp(p){return p=p|0,0}function ZL(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=f7()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],wY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(hC(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function wY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function hC(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=hW(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,YD(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],wY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,TY(p,Ge),Wre(Ge),B=St;return}}function hW(p){return p=p|0,357913941}function YD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function TY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Wre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function hg(p){p=p|0,LL(p)}function mC(p){p=p|0,PI(p+24|0)}function PI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function LL(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,5,y,Eu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Eu(){return 1196}function p3(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=Gd(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=RY(y,G)|0,B=w,y|0}function Gd(p){return p=p|0,(o[(f7()|0)+24>>2]|0)+(p*12|0)|0}function RY(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),kJ(yC[w&31](p)|0)|0}function vye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],mW(p,w,X,1),B=G}function mW(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=xJ()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=MI(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,xa(U,G)|0,G),B=X}function xJ(){var p=0,y=0;if(n[7680]|0||(NY(9412),fu(31,9412,J|0)|0,y=7680,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9412)|0)){p=9412,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));NY(9412)}return 9412}function MI(p){return p=p|0,0}function xa(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=xJ()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],wB(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(i0(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function wB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function i0(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Ore(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,VL(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],wB(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,fp(p,Ge),kx(Ge),B=St;return}}function Ore(p){return p=p|0,357913941}function VL(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function fp(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function NY(p){p=p|0,Sge(p)}function ww(p){p=p|0,uc(p+24|0)}function uc(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Sge(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,6,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Nu(){return 1200}function DY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=f3(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=CW(y,G)|0,B=w,y|0}function f3(p){return p=p|0,(o[(xJ()|0)+24>>2]|0)+(p*12|0)|0}function CW(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),GJ(yC[w&31](p)|0)|0}function GJ(p){return p=p|0,p|0}function FJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ZJ(p,w,X,0),B=G}function ZJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=_W()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Pre(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,LJ(U,G)|0,G),B=X}function _W(){var p=0,y=0;if(n[7688]|0||(G_(9448),fu(32,9448,J|0)|0,y=7688,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9448)|0)){p=9448,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));G_(9448)}return 9448}function Pre(p){return p=p|0,0}function LJ(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=_W()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Mre(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(VJ(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Mre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function VJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Hre(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,SF(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Mre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Av(p,Ge),yW(Ge),B=St;return}}function Hre(p){return p=p|0,357913941}function SF(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Av(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function yW(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function G_(p){p=p|0,wye(p)}function Bye(p){p=p|0,Yre(p+24|0)}function Yre(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function wye(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,6,y,uN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function uN(){return 1204}function vge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=un(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],kY(y,X,w),B=G}function un(p){return p=p|0,(o[(_W()|0)+24>>2]|0)+(p*12|0)|0}function kY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vd(X,w),X=YT(X,w)|0,ik[G&31](p,X),B=U}function vd(p,y){p=p|0,y=y|0}function YT(p,y){return p=p|0,y=y|0,gN(y)|0}function gN(p){return p=p|0,p|0}function Gb(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],I7(p,w,X,0),B=G}function I7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=QT()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=WL(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,h7(U,G)|0,G),B=X}function QT(){var p=0,y=0;if(n[7696]|0||(I3(9484),fu(33,9484,J|0)|0,y=7696,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9484)|0)){p=9484,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));I3(9484)}return 9484}function WL(p){return p=p|0,0}function h7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=QT()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],m7(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(yE(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function m7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function yE(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Bge(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Qre(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],m7(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Tye(p,Ge),xx(Ge),B=St;return}}function Bge(p){return p=p|0,357913941}function Qre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Tye(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function xx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function I3(p){p=p|0,EE(p)}function bE(p){p=p|0,HI(p+24|0)}function HI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function EE(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,1,y,Xre()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Xre(){return 1212}function wge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+8|0,le=X,Ge=em(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Tge(y,U,w,G),B=X}function em(p){return p=p|0,(o[(QT()|0)+24>>2]|0)+(p*12|0)|0}function Tge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,X=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(X=o[(o[p>>2]|0)+X>>2]|0),vd(U,w),U=YT(U,w)|0,sS(le,G),le=cN(le,G)|0,eR[X&15](p,U,le),B=Ge}function WJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Lc(p,w,X,1),B=G}function Lc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Rge()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Jre(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,xY(U,G)|0,G),B=X}function Rge(){var p=0,y=0;if(n[7704]|0||(HJ(9520),fu(34,9520,J|0)|0,y=7704,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9520)|0)){p=9520,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));HJ(9520)}return 9520}function Jre(p){return p=p|0,0}function xY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Rge()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],OL(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(OJ(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function OL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function OJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=PJ(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,MJ(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],OL(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,nI(p,Ge),h3(Ge),B=St;return}}function PJ(p){return p=p|0,357913941}function MJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function nI(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function h3(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function HJ(p){p=p|0,C3(p)}function m3(p){p=p|0,C7(p+24|0)}function C7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function C3(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,1,y,dv()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function dv(){return 1224}function TB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;return X=B,B=B+16|0,U=X+8|0,le=X,Ge=jm(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],G=+mf(y,U,w),B=X,+G}function jm(p){return p=p|0,(o[(Rge()|0)+24>>2]|0)+(p*12|0)|0}function mf(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vB(X,w),X=kb(X,w)|0,le=+md(+SEe[G&7](p,X)),B=U,+le}function XT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],d1(p,w,X,1),B=G}function d1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=GY()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=_7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,CC(U,G)|0,G),B=X}function GY(){var p=0,y=0;if(n[7712]|0||(jre(9556),fu(35,9556,J|0)|0,y=7712,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9556)|0)){p=9556,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));jre(9556)}return 9556}function _7(p){return p=p|0,0}function CC(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=GY()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Ure(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(_A(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Ure(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function _A(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Gx(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Kre(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Ure(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,RB(p,Ge),Rye(Ge),B=St;return}}function Gx(p){return p=p|0,357913941}function Kre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function RB(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Rye(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function jre(p){p=p|0,FY(p)}function zre(p){p=p|0,QD(p+24|0)}function QD(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function FY(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,5,y,qre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function qre(){return 1232}function Nge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=yp(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=+Dge(y,X),B=G,+w}function yp(p){return p=p|0,(o[(GY()|0)+24>>2]|0)+(p*12|0)|0}function Dge(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),+ +md(+HW[w&15](p))}function $u(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Tw(p,w,X,1),B=G}function Tw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=XD()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=y7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,kge(U,G)|0,G),B=X}function XD(){var p=0,y=0;if(n[7720]|0||(NB(9592),fu(36,9592,J|0)|0,y=7720,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9592)|0)){p=9592,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));NB(9592)}return 9592}function y7(p){return p=p|0,0}function kge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=XD()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],YJ(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(mZe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function YJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function mZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=xge(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,w0(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],YJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Rw(p,Ge),Fh(Ge),B=St;return}}function xge(p){return p=p|0,357913941}function w0(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Rw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Fh(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function NB(p){p=p|0,QJ(p)}function b7(p){p=p|0,bW(p+24|0)}function bW(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function QJ(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,7,y,$re()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function $re(){return 1276}function Gge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=PL(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=E7(y,G)|0,B=w,y|0}function PL(p){return p=p|0,(o[(XD()|0)+24>>2]|0)+(p*12|0)|0}function E7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;return X=B,B=B+16|0,G=X,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),ik[w&31](G,p),G=XJ(G)|0,B=X,G|0}function XJ(p){p=p|0;var y=0,w=0,G=0,X=0;return X=B,B=B+32|0,y=X+12|0,w=X,G=Gh(S7()|0)|0,G?(u1(y,G),Db(w,y),Nye(p,w),p=_E(y)|0):p=JJ(p)|0,B=X,p|0}function S7(){var p=0;return n[7736]|0||(Lge(9640),fu(25,9640,J|0)|0,p=7736,o[p>>2]=1,o[p+4>>2]=0),9640}function Nye(p,y){p=p|0,y=y|0,UJ(y,p,p+8|0)|0}function JJ(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,X=w+4|0,le=w,G=Vb(8)|0,y=G,Ge=ju(16)|0,o[Ge>>2]=o[p>>2],o[Ge+4>>2]=o[p+4>>2],o[Ge+8>>2]=o[p+8>>2],o[Ge+12>>2]=o[p+12>>2],U=y+4|0,o[U>>2]=Ge,p=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],AN(p,U,X),o[G>>2]=p,B=w,y|0}function AN(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1244,o[w+12>>2]=y,o[p+4>>2]=w}function Fge(p){p=p|0,Tz(p),ti(p)}function ene(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function EW(p){p=p|0,ti(p)}function UJ(p,y,w){return p=p|0,y=y|0,w=w|0,y=ms(o[p>>2]|0,y,w)|0,w=p+4|0,o[(o[w>>2]|0)+8>>2]=y,o[(o[w>>2]|0)+8>>2]|0}function ms(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;return G=B,B=B+16|0,X=G,Ww(X),p=tI(p)|0,w=KJ(p,o[y>>2]|0,+C[w>>3])|0,gS(X),B=G,w|0}function KJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0;return G=wb(ZY()|0)|0,y=o2(y)|0,Xa(0,G|0,p|0,y|0,+ +_p(w))|0}function ZY(){var p=0;return n[7728]|0||(Zge(9628),p=7728,o[p>>2]=1,o[p+4>>2]=0),9628}function Zge(p){p=p|0,xy(p,JD()|0,2)}function JD(){return 1264}function Lge(p){p=p|0,Hc(p)}function LY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],v7(p,w,X,1),B=G}function v7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=af()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=p1(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Vge(U,G)|0,G),B=X}function af(){var p=0,y=0;if(n[7744]|0||(Wge(9684),fu(37,9684,J|0)|0,y=7744,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9684)|0)){p=9684,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Wge(9684)}return 9684}function p1(p){return p=p|0,0}function Vge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=af()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],VY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Dye(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function VY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Dye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=kye(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,xye(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],VY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Nw(p,Ge),tne(Ge),B=St;return}}function kye(p){return p=p|0,357913941}function xye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Nw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tne(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Wge(p){p=p|0,B7(p)}function ML(p){p=p|0,rne(p+24|0)}function rne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function B7(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,5,y,Oge()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Oge(){return 1280}function UD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=nne(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=Pge(y,X,w)|0,B=G,w|0}function nne(p){return p=p|0,(o[(af()|0)+24>>2]|0)+(p*12|0)|0}function Pge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return le=B,B=B+32|0,X=le,U=le+16|0,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vB(U,w),U=kb(U,w)|0,eR[G&15](X,p,U),U=XJ(X)|0,B=le,U|0}function vF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],CZe(p,w,X,1),B=G}function CZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=WY()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=KD(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,BF(U,G)|0,G),B=X}function WY(){var p=0,y=0;if(n[7752]|0||(f1(9720),fu(38,9720,J|0)|0,y=7752,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9720)|0)){p=9720,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));f1(9720)}return 9720}function KD(p){return p=p|0,0}function BF(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=WY()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],pv(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(OY(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function pv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function OY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Fp(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Gye(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],pv(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,SW(p,Ge),rA(Ge),B=St;return}}function Fp(p){return p=p|0,357913941}function Gye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function SW(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function rA(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function f1(p){p=p|0,Mge(p)}function ine(p){p=p|0,w7(p+24|0)}function w7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Mge(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,8,y,_Ze()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function _Ze(){return 1288}function Hge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;return w=B,B=B+16|0,G=w+8|0,X=w,U=Dw(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],y=jJ(y,G)|0,B=w,y|0}function Dw(p){return p=p|0,(o[(WY()|0)+24>>2]|0)+(p*12|0)|0}function jJ(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),Z(yC[w&31](p)|0)|0}function sne(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],c_(p,w,X,0),B=G}function c_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=PY()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=one(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Yge(U,G)|0,G),B=X}function PY(){var p=0,y=0;if(n[7760]|0||(zJ(9756),fu(39,9756,J|0)|0,y=7760,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9756)|0)){p=9756,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));zJ(9756)}return 9756}function one(p){return p=p|0,0}function Yge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=PY()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],MY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Qge(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function MY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Qge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Xge(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,DB(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],MY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,wF(p,Ge),ane(Ge),B=St;return}}function Xge(p){return p=p|0,357913941}function DB(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function wF(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ane(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function zJ(p){p=p|0,cne(p)}function yZe(p){p=p|0,_3(p+24|0)}function _3(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function cne(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,8,y,qJ()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function qJ(){return 1292}function $J(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=lne(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],une(y,X,w),B=G}function lne(p){return p=p|0,(o[(PY()|0)+24>>2]|0)+(p*12|0)|0}function une(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vw(X,w),w=+fl(X,w),D$e[G&31](p,w),B=U}function vW(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Jge(p,w,X,0),B=G}function Jge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=T7()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=R7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Uge(U,G)|0,G),B=X}function T7(){var p=0,y=0;if(n[7768]|0||(YY(9792),fu(40,9792,J|0)|0,y=7768,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9792)|0)){p=9792,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));YY(9792)}return 9792}function R7(p){return p=p|0,0}function Uge(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=T7()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],HY(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(N7(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function HY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function N7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=oS(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Kge(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],HY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Md(p,Ge),jge(Ge),B=St;return}}function oS(p){return p=p|0,357913941}function Kge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Md(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function jge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function YY(p){p=p|0,ly(p)}function QY(p){p=p|0,BW(p+24|0)}function BW(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function ly(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,1,y,ho()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ho(){return 1300}function y3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+8|0,le=X,Ge=SE(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],kw(y,U,w,G),B=X}function SE(p){return p=p|0,(o[(T7()|0)+24>>2]|0)+(p*12|0)|0}function kw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var X=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,X=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(X=o[(o[p>>2]|0)+X>>2]|0),vB(U,w),U=kb(U,w)|0,vw(le,G),G=+fl(le,G),wie[X&15](p,U,G),B=Ge}function ie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],he(p,w,X,0),B=G}function he(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=qe()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Ut(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Qr(U,G)|0,G),B=X}function qe(){var p=0,y=0;if(n[7776]|0||(fc(9828),fu(41,9828,J|0)|0,y=7776,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9828)|0)){p=9828,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));fc(9828)}return 9828}function Ut(p){return p=p|0,0}function Qr(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=qe()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],kn(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Fi(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function kn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Fi(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=rs(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,qs(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kn(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,vc(p,Ge),qa(Ge),B=St;return}}function rs(p){return p=p|0,357913941}function qs(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function vc(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function qa(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function fc(p){p=p|0,OA(p)}function Sl(p){p=p|0,Zu(p+24|0)}function Zu(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function OA(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,7,y,Cf()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Cf(){return 1312}function Bd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=iI(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],sI(y,X,w),B=G}function iI(p){return p=p|0,(o[(qe()|0)+24>>2]|0)+(p*12|0)|0}function sI(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vB(X,w),X=kb(X,w)|0,ik[G&31](p,X),B=U}function JT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],aS(p,w,X,0),B=G}function aS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Gy()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=jp(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,fv(U,G)|0,G),B=X}function Gy(){var p=0,y=0;if(n[7784]|0||($ge(9864),fu(42,9864,J|0)|0,y=7784,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9864)|0)){p=9864,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));$ge(9864)}return 9864}function jp(p){return p=p|0,0}function fv(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Gy()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Fy(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(cS(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Fy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function cS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=gne(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,zge(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Fy(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,NVt(p,Ge),qge(Ge),B=St;return}}function gne(p){return p=p|0,357913941}function zge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function NVt(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function qge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function $ge(p){p=p|0,kVt(p)}function Fye(p){p=p|0,DVt(p+24|0)}function DVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function kVt(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,8,y,xVt()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function xVt(){return 1320}function GVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=FVt(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],ZVt(y,X,w),B=G}function FVt(p){return p=p|0,(o[(Gy()|0)+24>>2]|0)+(p*12|0)|0}function ZVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),xw(X,w),X=Lqe(X,w)|0,ik[G&31](p,X),B=U}function xw(p,y){p=p|0,y=y|0}function Lqe(p,y){return p=p|0,y=y|0,TF(y)|0}function TF(p){return p=p|0,p|0}function bZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Zye(p,w,X,0),B=G}function Zye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=eAe()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=D7(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,k7(U,G)|0,G),B=X}function eAe(){var p=0,y=0;if(n[7792]|0||(g2(9900),fu(43,9900,J|0)|0,y=7792,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9900)|0)){p=9900,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));g2(9900)}return 9900}function D7(p){return p=p|0,0}function k7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=eAe()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Lye(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(tAe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Lye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function tAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=EZe(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,SZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Lye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Vye(p,Ge),wW(Ge),B=St;return}}function EZe(p){return p=p|0,357913941}function SZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Vye(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function wW(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function g2(p){p=p|0,BZe(p)}function rAe(p){p=p|0,vZe(p+24|0)}function vZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function BZe(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,22,y,eU()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function eU(){return 1344}function x7(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0;w=B,B=B+16|0,G=w+8|0,X=w,U=nAe(p)|0,p=o[U+4>>2]|0,o[X>>2]=o[U>>2],o[X+4>>2]=p,o[G>>2]=o[X>>2],o[G+4>>2]=o[X+4>>2],Ane(y,G),B=w}function nAe(p){return p=p|0,(o[(eAe()|0)+24>>2]|0)+(p*12|0)|0}function Ane(p,y){p=p|0,y=y|0;var w=0;w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),VF[w&127](p)}function I1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=iAe()|0,p=_C(w)|0,Sd(U,y,X,p,wZe(w,G)|0,G)}function iAe(){var p=0,y=0;if(n[7800]|0||(G7(9936),fu(44,9936,J|0)|0,y=7800,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9936)|0)){p=9936,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));G7(9936)}return 9936}function _C(p){return p=p|0,p|0}function wZe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=iAe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(dne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(sAe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function dne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function sAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=s0(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,TZe(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,dne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,oAe(p,X),RZe(X),B=Ge;return}}function s0(p){return p=p|0,536870911}function TZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function oAe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function RZe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function G7(p){p=p|0,pne(p)}function HL(p){p=p|0,Zy(p+24|0)}function Zy(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function pne(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,23,y,uN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function aAe(p,y){p=p|0,y=y|0,fne(o[(NZe(p)|0)>>2]|0,y)}function NZe(p){return p=p|0,(o[(iAe()|0)+24>>2]|0)+(p<<3)|0}function fne(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,vd(G,y),y=YT(G,y)|0,VF[p&127](y),B=w}function cAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=tU()|0,p=rU(w)|0,Sd(U,y,X,p,Ine(w,G)|0,G)}function tU(){var p=0,y=0;if(n[7808]|0||(hne(9972),fu(45,9972,J|0)|0,y=7808,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9972)|0)){p=9972,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));hne(9972)}return 9972}function rU(p){return p=p|0,p|0}function Ine(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=tU()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(nU(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Fx(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function nU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Fx(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Wye(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,Oye(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,nU(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,iU(p,X),UT(X),B=Ge;return}}function Wye(p){return p=p|0,536870911}function Oye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function iU(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function UT(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function hne(p){p=p|0,YL(p)}function lAe(p){p=p|0,DZe(p+24|0)}function DZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function YL(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,9,y,F7()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function F7(){return 1348}function Pye(p,y){return p=p|0,y=y|0,dN(o[(b3(p)|0)>>2]|0,y)|0}function b3(p){return p=p|0,(o[(tU()|0)+24>>2]|0)+(p<<3)|0}function dN(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,o0(G,y),y=Bo(G,y)|0,y=kJ(yC[p&31](y)|0)|0,B=w,y|0}function o0(p,y){p=p|0,y=y|0}function Bo(p,y){return p=p|0,y=y|0,uAe(y)|0}function uAe(p){return p=p|0,p|0}function gAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=XY()|0,p=AAe(w)|0,Sd(U,y,X,p,uy(w,G)|0,G)}function XY(){var p=0,y=0;if(n[7816]|0||(_ne(10008),fu(46,10008,J|0)|0,y=7816,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10008)|0)){p=10008,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));_ne(10008)}return 10008}function AAe(p){return p=p|0,p|0}function uy(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=XY()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Z7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(TW(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Z7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function TW(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=kZe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,Vqe(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,Z7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,mne(p,X),Cne(X),B=Ge;return}}function kZe(p){return p=p|0,536870911}function Vqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function mne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Cne(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function _ne(p){p=p|0,V7(p)}function L7(p){p=p|0,yne(p+24|0)}function yne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function V7(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,15,y,Eu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function LVt(p){return p=p|0,QL(o[(JY(p)|0)>>2]|0)|0}function JY(p){return p=p|0,(o[(XY()|0)+24>>2]|0)+(p<<3)|0}function QL(p){return p=p|0,kJ(xz[p&7]()|0)|0}function VVt(){var p=0;return n[7832]|0||(GZe(10052),fu(25,10052,J|0)|0,p=7832,o[p>>2]=1,o[p+4>>2]=0),10052}function xZe(p,y){p=p|0,y=y|0,o[p>>2]=Mye()|0,o[p+4>>2]=sU()|0,o[p+12>>2]=y,o[p+8>>2]=bne()|0,o[p+32>>2]=2}function Mye(){return 11709}function sU(){return 1188}function bne(){return oI()|0}function E3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&(pN(w),ti(w)):y|0&&(WT(y),ti(y))}function RW(p,y){return p=p|0,y=y|0,y&p|0}function pN(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function oI(){var p=0;return n[7824]|0||(o[2511]=S3()|0,o[2512]=0,p=7824,o[p>>2]=1,o[p+4>>2]=0),10044}function S3(){return 0}function GZe(p){p=p|0,Hc(p)}function Hye(p){p=p|0;var y=0,w=0,G=0,X=0,U=0;y=B,B=B+32|0,w=y+24|0,U=y+16|0,X=y+8|0,G=y,NW(p,4827),dAe(p,4834,3)|0,v3(p,3682,47)|0,o[U>>2]=9,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],Ene(p,4841,w)|0,o[X>>2]=1,o[X+4>>2]=0,o[w>>2]=o[X>>2],o[w+4>>2]=o[X+4>>2],WVt(p,4871,w)|0,o[G>>2]=10,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],OVt(p,4891,w)|0,B=y}function NW(p,y){p=p|0,y=y|0;var w=0;w=jL()|0,o[p>>2]=w,Fw(w,y),xF(o[p>>2]|0)}function dAe(p,y,w){return p=p|0,y=y|0,w=w|0,QZe(p,hf(y)|0,w,0),p|0}function v3(p,y,w){return p=p|0,y=y|0,w=w|0,Dne(p,hf(y)|0,w,0),p|0}function Ene(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],OZe(p,y,X),B=G,p|0}function WVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],lS(p,y,X),B=G,p|0}function OVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],pAe(p,y,X),B=G,p|0}function pAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],jD(p,w,X,1),B=G}function jD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=oU()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Yye(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Sne(U,G)|0,G),B=X}function oU(){var p=0,y=0;if(n[7840]|0||(P7(10100),fu(48,10100,J|0)|0,y=7840,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10100)|0)){p=10100,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));P7(10100)}return 10100}function Yye(p){return p=p|0,0}function Sne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=oU()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],Qye(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(W7(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function Qye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function W7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=FZe(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,ZZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Qye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,UY(p,Ge),O7(Ge),B=St;return}}function FZe(p){return p=p|0,357913941}function ZZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function UY(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function O7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function P7(p){p=p|0,aU(p)}function vne(p){p=p|0,KY(p+24|0)}function KY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function aU(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,6,y,B3()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function B3(){return 1364}function LZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;return G=B,B=B+16|0,X=G+8|0,U=G,le=jY(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],w=zY(y,X,w)|0,B=G,w|0}function jY(p){return p=p|0,(o[(oU()|0)+24>>2]|0)+(p*12|0)|0}function zY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;return U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vB(X,w),X=kb(X,w)|0,X=c2(vie[G&15](p,X)|0)|0,B=U,X|0}function lS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],Bne(p,w,X,0),B=G}function Bne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=VZe()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=Wqe(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,Oqe(U,G)|0,G),B=X}function VZe(){var p=0,y=0;if(n[7848]|0||(Hqe(10136),fu(49,10136,J|0)|0,y=7848,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10136)|0)){p=10136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Hqe(10136)}return 10136}function Wqe(p){return p=p|0,0}function Oqe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=VZe()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],w3(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Pqe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function w3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Pqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=cU(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,wne(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],w3(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Xye(p,Ge),Mqe(Ge),B=St;return}}function cU(p){return p=p|0,357913941}function wne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Xye(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Mqe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Hqe(p){p=p|0,fAe(p)}function Jye(p){p=p|0,Tne(p+24|0)}function Tne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function fAe(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,9,y,Uye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Uye(){return 1372}function XL(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,X=G+8|0,U=G,le=JL(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],DW(y,X,w),B=G}function JL(p){return p=p|0,(o[(VZe()|0)+24>>2]|0)+(p*12|0)|0}function DW(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=As;U=B,B=B+16|0,X=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),lU(X,w),le=ke(WZe(X,w)),N$e[G&1](p,le),B=U}function lU(p,y){p=p|0,y=+y}function WZe(p,y){return p=p|0,y=+y,ke(Yqe(y))}function Yqe(p){return p=+p,ke(p)}function OZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,X=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=hf(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[X>>2]=o[U>>2],o[X+4>>2]=o[U+4>>2],PZe(p,w,X,0),B=G}function PZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;X=B,B=B+32|0,U=X+16|0,ht=X+8|0,Ge=X,St=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=zD()|0,o[ht>>2]=St,o[ht+4>>2]=Xe,o[U>>2]=o[ht>>2],o[U+4>>2]=o[ht+4>>2],w=RF(U)|0,o[Ge>>2]=St,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],Sd(le,y,p,w,PVt(U,G)|0,G),B=X}function zD(){var p=0,y=0;if(n[7856]|0||(Kye(10172),fu(50,10172,J|0)|0,y=7856,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10172)|0)){p=10172,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Kye(10172)}return 10172}function RF(p){return p=p|0,0}function PVt(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;return ht=B,B=B+32|0,X=ht+24|0,le=ht+16|0,Ge=ht,Xe=ht+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=zD()|0,St=rr+24|0,p=Ku(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[X>>2]=o[le>>2],o[X+4>>2]=o[le+4>>2],IAe(w,X,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(MZe(St,Ge,Xe),p=o[y>>2]|0),B=ht,((p-(o[St>>2]|0)|0)/12|0)+-1|0}function IAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function MZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;if(St=B,B=B+48|0,G=St+32|0,le=St+24|0,Ge=St,Xe=p+4|0,X=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=T3(p)|0,U>>>0>>0)me(p);else{ht=o[p>>2]|0,an=((o[p+8>>2]|0)-ht|0)/12|0,rr=an<<1,Qqe(Ge,an>>>0>>1>>>0?rr>>>0>>0?X:rr:U,((o[Xe>>2]|0)-ht|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,X=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=X,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],IAe(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Rne(p,Ge),Iv(Ge),B=St;return}}function T3(p){return p=p|0,357913941}function Qqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{X=ju(y*12|0)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y*12|0)}function Rne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((X|0)/-12|0)*12|0)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Iv(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Kye(p){p=p|0,jye(p)}function M7(p){p=p|0,JA(p+24|0)}function JA(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function jye(p){p=p|0;var y=0;y=Hs()|0,Io(p,2,3,y,kW()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function kW(){return 1380}function KT(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+8|0,le=X,Ge=H7(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Nne(y,U,w,G),B=X}function H7(p){return p=p|0,(o[(zD()|0)+24>>2]|0)+(p*12|0)|0}function Nne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,X=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(X=o[(o[p>>2]|0)+X>>2]|0),vB(U,w),U=kb(U,w)|0,HZe(le,G),le=zye(le,G)|0,eR[X&15](p,U,le),B=Ge}function HZe(p,y){p=p|0,y=y|0}function zye(p,y){return p=p|0,y=y|0,hAe(y)|0}function hAe(p){return p=p|0,(p|0)!=0|0}function Dne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=kne()|0,p=YZe(w)|0,Sd(U,y,X,p,kB(w,G)|0,G)}function kne(){var p=0,y=0;if(n[7864]|0||(T0(10208),fu(51,10208,J|0)|0,y=7864,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10208)|0)){p=10208,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));T0(10208)}return 10208}function YZe(p){return p=p|0,p|0}function kB(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=kne()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(UL(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(uU(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function UL(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function uU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Y7(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,Q7(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,UL(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,xne(p,X),KL(X),B=Ge;return}}function Y7(p){return p=p|0,536870911}function Q7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function xne(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function KL(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function T0(p){p=p|0,CAe(p)}function qye(p){p=p|0,mAe(p+24|0)}function mAe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function CAe(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,24,y,$ye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function $ye(){return 1392}function qY(p,y){p=p|0,y=y|0,gU(o[(ebe(p)|0)>>2]|0,y)}function ebe(p){return p=p|0,(o[(kne()|0)+24>>2]|0)+(p<<3)|0}function gU(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,o0(G,y),y=Bo(G,y)|0,VF[p&127](y),B=w}function QZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=BI()|0,p=X7(w)|0,Sd(U,y,X,p,h1(w,G)|0,G)}function BI(){var p=0,y=0;if(n[7872]|0||(AU(10244),fu(52,10244,J|0)|0,y=7872,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10244)|0)){p=10244,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));AU(10244)}return 10244}function X7(p){return p=p|0,p|0}function h1(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=BI()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Gne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(qD(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Gne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function qD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=_Ae(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,R3(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,Gne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Gw(p,X),A2(X),B=Ge;return}}function _Ae(p){return p=p|0,536870911}function R3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function Gw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function A2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function AU(p){p=p|0,XZe(p)}function Fne(p){p=p|0,J7(p+24|0)}function J7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function XZe(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,16,y,MVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function MVt(){return 1400}function yAe(p){return p=p|0,Fb(o[(tbe(p)|0)>>2]|0)|0}function tbe(p){return p=p|0,(o[(BI()|0)+24>>2]|0)+(p<<3)|0}function Fb(p){return p=p|0,rbe(xz[p&7]()|0)|0}function rbe(p){return p=p|0,p|0}function jL(){var p=0;return n[7880]|0||(U7(10280),fu(25,10280,J|0)|0,p=7880,o[p>>2]=1,o[p+4>>2]=0),10280}function Fw(p,y){p=p|0,y=y|0,o[p>>2]=nbe()|0,o[p+4>>2]=ap()|0,o[p+12>>2]=y,o[p+8>>2]=JZe()|0,o[p+32>>2]=4}function nbe(){return 11711}function ap(){return 1356}function JZe(){return oI()|0}function ibe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&(sbe(w),ti(w)):y|0&&(iy(y),ti(y))}function sbe(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function U7(p){p=p|0,Hc(p)}function Xqe(p){p=p|0,UZe(p,4920),Zne(p)|0,Lne(p)|0}function UZe(p,y){p=p|0,y=y|0;var w=0;w=S7()|0,o[p>>2]=w,bAe(w,y),xF(o[p>>2]|0)}function Zne(p){p=p|0;var y=0;return y=o[p>>2]|0,NF(y,Kqe()|0),p|0}function Lne(p){p=p|0;var y=0;return y=o[p>>2]|0,NF(y,dU()|0),p|0}function dU(){var p=0;return n[7888]|0||(Jqe(10328),fu(53,10328,J|0)|0,p=7888,o[p>>2]=1,o[p+4>>2]=0),Xr(10328)|0||Jqe(10328),10328}function NF(p,y){p=p|0,y=y|0,Sd(p,0,y,0,0,0)}function Jqe(p){p=p|0,abe(p),K7(p,10)}function obe(p){p=p|0,KZe(p+24|0)}function KZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function abe(p){p=p|0;var y=0;y=Hs()|0,Io(p,5,1,y,Uqe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function HVt(p,y,w){p=p|0,y=y|0,w=+w,YVt(p,y,w)}function K7(p,y){p=p|0,y=y|0,o[p+20>>2]=y}function YVt(p,y,w){p=p|0,y=y|0,w=+w;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+16|0,U=G+8|0,Ge=G+13|0,X=G,le=G+12|0,vB(Ge,y),o[U>>2]=kb(Ge,y)|0,vw(le,w),C[X>>3]=+fl(le,w),QVt(p,U,X),B=G}function QVt(p,y,w){p=p|0,y=y|0,w=w|0,IC(p+8|0,o[y>>2]|0,+C[w>>3]),n[p+24>>0]=1}function Uqe(){return 1404}function XVt(p,y){return p=p|0,y=+y,jT(p,y)|0}function jT(p,y){p=p|0,y=+y;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,U=G+4|0,le=G+8|0,Ge=G,X=Vb(8)|0,w=X,Xe=ju(16)|0,vB(U,p),p=kb(U,p)|0,vw(le,y),IC(Xe,p,+fl(le,y)),le=w+4|0,o[le>>2]=Xe,p=ju(8)|0,le=o[le>>2]|0,o[Ge>>2]=0,o[U>>2]=o[Ge>>2],AN(p,le,U),o[X>>2]=p,B=G,w|0}function Kqe(){var p=0;return n[7896]|0||(Vne(10364),fu(54,10364,J|0)|0,p=7896,o[p>>2]=1,o[p+4>>2]=0),Xr(10364)|0||Vne(10364),10364}function Vne(p){p=p|0,KVt(p),K7(p,55)}function JVt(p){p=p|0,UVt(p+24|0)}function UVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function KVt(p){p=p|0;var y=0;y=Hs()|0,Io(p,5,4,y,qVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function jVt(p){p=p|0,zVt(p)}function zVt(p){p=p|0,cbe(p)}function cbe(p){p=p|0,d2(p+8|0),n[p+24>>0]=1}function d2(p){p=p|0,o[p>>2]=0,C[p+8>>3]=0}function qVt(){return 1424}function pU(){return Wne()|0}function Wne(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0;return y=B,B=B+16|0,X=y+4|0,le=y,w=Vb(8)|0,p=w,G=ju(16)|0,d2(G),U=p+4|0,o[U>>2]=G,G=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],AN(G,U,X),o[w>>2]=G,B=y,p|0}function bAe(p,y){p=p|0,y=y|0,o[p>>2]=One()|0,o[p+4>>2]=Pne()|0,o[p+12>>2]=y,o[p+8>>2]=lbe()|0,o[p+32>>2]=5}function One(){return 11710}function Pne(){return 1416}function lbe(){return j7()|0}function N3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&($D(w),ti(w)):y|0&&ti(y)}function $D(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function j7(){var p=0;return n[7904]|0||(o[2600]=jqe()|0,o[2601]=0,p=7904,o[p>>2]=1,o[p+4>>2]=0),10400}function jqe(){return o[357]|0}function jZe(p){p=p|0,ube(p,4926),zZe(p)|0}function ube(p,y){p=p|0,y=y|0;var w=0;w=Mg()|0,o[p>>2]=w,zqe(w,y),xF(o[p>>2]|0)}function zZe(p){p=p|0;var y=0;return y=o[p>>2]|0,NF(y,qZe()|0),p|0}function qZe(){var p=0;return n[7912]|0||(Mne(10412),fu(56,10412,J|0)|0,p=7912,o[p>>2]=1,o[p+4>>2]=0),Xr(10412)|0||Mne(10412),10412}function Mne(p){p=p|0,Abe(p),K7(p,57)}function EAe(p){p=p|0,gbe(p+24|0)}function gbe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Abe(p){p=p|0;var y=0;y=Hs()|0,Io(p,5,5,y,BAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function SAe(p){p=p|0,vAe(p)}function vAe(p){p=p|0,xW(p)}function xW(p){p=p|0;var y=0,w=0;y=p+8|0,w=y+48|0;do o[y>>2]=0,y=y+4|0;while((y|0)<(w|0));n[p+56>>0]=1}function BAe(){return 1432}function $Ze(){return wAe()|0}function wAe(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;le=B,B=B+16|0,p=le+4|0,y=le,w=Vb(8)|0,G=w,X=ju(48)|0,U=X,Ge=U+48|0;do o[U>>2]=0,U=U+4|0;while((U|0)<(Ge|0));return U=G+4|0,o[U>>2]=X,Ge=ju(8)|0,U=o[U>>2]|0,o[y>>2]=0,o[p>>2]=o[y>>2],l3(Ge,U,p),o[w>>2]=Ge,B=le,G|0}function zqe(p,y){p=p|0,y=y|0,o[p>>2]=dbe()|0,o[p+4>>2]=z7()|0,o[p+12>>2]=y,o[p+8>>2]=fU()|0,o[p+32>>2]=6}function dbe(){return 11704}function z7(){return 1436}function fU(){return j7()|0}function fN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&(q7(w),ti(w)):y|0&&ti(y)}function q7(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function eLe(p){p=p|0,GW(p,4933),DF(p)|0,kF(p)|0}function GW(p,y){p=p|0,y=y|0;var w=0;w=D3()|0,o[p>>2]=w,m1(w,y),xF(o[p>>2]|0)}function DF(p){p=p|0;var y=0;return y=o[p>>2]|0,NF(y,rWt()|0),p|0}function kF(p){p=p|0;var y=0;return y=o[p>>2]|0,NF(y,$Y()|0),p|0}function $Y(){var p=0;return n[7920]|0||(zL(10452),fu(58,10452,J|0)|0,p=7920,o[p>>2]=1,o[p+4>>2]=0),Xr(10452)|0||zL(10452),10452}function zL(p){p=p|0,Zh(p),K7(p,1)}function pbe(p){p=p|0,FW(p+24|0)}function FW(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Zh(p){p=p|0;var y=0;y=Hs()|0,Io(p,5,1,y,fbe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function tLe(p,y,w){p=p|0,y=+y,w=+w,Zb(p,y,w)}function Zb(p,y,w){p=p|0,y=+y,w=+w;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+32|0,U=G+8|0,Ge=G+17|0,X=G,le=G+16|0,vw(Ge,y),C[U>>3]=+fl(Ge,y),vw(le,w),C[X>>3]=+fl(le,w),TAe(p,U,X),B=G}function TAe(p,y,w){p=p|0,y=y|0,w=w|0,qqe(p+8|0,+C[y>>3],+C[w>>3]),n[p+24>>0]=1}function qqe(p,y,w){p=p|0,y=+y,w=+w,C[p>>3]=y,C[p+8>>3]=w}function fbe(){return 1472}function $Vt(p,y){return p=+p,y=+y,eWt(p,y)|0}function eWt(p,y){p=+p,y=+y;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,le=G+4|0,Ge=G+8|0,Xe=G,X=Vb(8)|0,w=X,U=ju(16)|0,vw(le,p),p=+fl(le,p),vw(Ge,y),qqe(U,p,+fl(Ge,y)),Ge=w+4|0,o[Ge>>2]=U,U=ju(8)|0,Ge=o[Ge>>2]|0,o[Xe>>2]=0,o[le>>2]=o[Xe>>2],Ibe(U,Ge,le),o[X>>2]=U,B=G,w|0}function Ibe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1452,o[w+12>>2]=y,o[p+4>>2]=w}function tWt(p){p=p|0,Tz(p),ti(p)}function rLe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function IU(p){p=p|0,ti(p)}function rWt(){var p=0;return n[7928]|0||(nLe(10488),fu(59,10488,J|0)|0,p=7928,o[p>>2]=1,o[p+4>>2]=0),Xr(10488)|0||nLe(10488),10488}function nLe(p){p=p|0,Lb(p),K7(p,60)}function hbe(p){p=p|0,iLe(p+24|0)}function iLe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Lb(p){p=p|0;var y=0;y=Hs()|0,Io(p,5,6,y,ZW()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Ga(p){p=p|0,lg(p)}function lg(p){p=p|0,tm(p)}function tm(p){p=p|0,Hne(p+8|0),n[p+24>>0]=1}function Hne(p){p=p|0,o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,o[p+12>>2]=0}function ZW(){return 1492}function mbe(){return Zw()|0}function Zw(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0;return y=B,B=B+16|0,X=y+4|0,le=y,w=Vb(8)|0,p=w,G=ju(16)|0,Hne(G),U=p+4|0,o[U>>2]=G,G=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],Ibe(G,U,X),o[w>>2]=G,B=y,p|0}function D3(){var p=0;return n[7936]|0||(Zx(10524),fu(25,10524,J|0)|0,p=7936,o[p>>2]=1,o[p+4>>2]=0),10524}function m1(p,y){p=p|0,y=y|0,o[p>>2]=eQ()|0,o[p+4>>2]=sLe()|0,o[p+12>>2]=y,o[p+8>>2]=oLe()|0,o[p+32>>2]=7}function eQ(){return 11700}function sLe(){return 1484}function oLe(){return j7()|0}function l_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&(aLe(w),ti(w)):y|0&&ti(y)}function aLe(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function Zx(p){p=p|0,Hc(p)}function $qe(p,y,w){p=p|0,y=y|0,w=w|0,p=hf(y)|0,y=nWt(w)|0,w=e$e(w,0)|0,dLe(p,y,w,cLe()|0,0)}function nWt(p){return p=p|0,p|0}function e$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=cLe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(RAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(NAe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function cLe(){var p=0,y=0;if(n[7944]|0||(Cbe(10568),fu(61,10568,J|0)|0,y=7944,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10568)|0)){p=10568,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Cbe(10568)}return 10568}function Cbe(p){p=p|0,tQ(p)}function _be(p){p=p|0,Lw(p+24|0)}function Lw(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function tQ(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,17,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Yne(p){return p=p|0,$7(o[(lLe(p)|0)>>2]|0)|0}function lLe(p){return p=p|0,(o[(cLe()|0)+24>>2]|0)+(p<<3)|0}function $7(p){return p=p|0,GJ(xz[p&7]()|0)|0}function RAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function NAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Qne(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,ek(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,RAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,ybe(p,X),bbe(X),B=Ge;return}}function Qne(p){return p=p|0,536870911}function ek(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function ybe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function bbe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function zm(){Lx()}function Lx(){DAe(10604)}function DAe(p){p=p|0,Hd(p,4955)}function Hd(p,y){p=p|0,y=y|0;var w=0;w=R0()|0,o[p>>2]=w,Xne(w,y),xF(o[p>>2]|0)}function R0(){var p=0;return n[7952]|0||(tz(10612),fu(25,10612,J|0)|0,p=7952,o[p>>2]=1,o[p+4>>2]=0),10612}function Xne(p,y){p=p|0,y=y|0,o[p>>2]=uLe()|0,o[p+4>>2]=kAe()|0,o[p+12>>2]=y,o[p+8>>2]=gLe()|0,o[p+32>>2]=8}function xF(p){p=p|0;var y=0,w=0;y=B,B=B+16|0,w=y,LW()|0,o[w>>2]=p,GF(10608,w),B=y}function LW(){return n[11714]|0||(o[2652]=0,fu(62,10608,J|0)|0,n[11714]=1),10608}function GF(p,y){p=p|0,y=y|0;var w=0;w=ju(8)|0,o[w+4>>2]=o[y>>2],o[w>>2]=o[p>>2],o[p>>2]=w}function ez(p){p=p|0,Ebe(p)}function Ebe(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function uLe(){return 11715}function kAe(){return 1496}function gLe(){return oI()|0}function Sbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&(ALe(w),ti(w)):y|0&&ti(y)}function ALe(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function tz(p){p=p|0,Hc(p)}function iWt(p,y){p=p|0,y=y|0;var w=0,G=0;LW()|0,w=o[2652]|0;e:do if(w|0){for(;G=o[w+4>>2]|0,!(G|0&&!(h$e(rz(G)|0,p)|0));)if(w=o[w>>2]|0,!w)break e;sWt(G,y)}while(!1)}function rz(p){return p=p|0,o[p+12>>2]|0}function sWt(p,y){p=p|0,y=y|0;var w=0;p=p+36|0,w=o[p>>2]|0,w|0&&(Sb(w),ti(w)),w=ju(4)|0,CB(w,y),o[p>>2]=w}function VW(){return n[11716]|0||(o[2664]=0,fu(63,10656,J|0)|0,n[11716]=1),10656}function vbe(){var p=0;return n[11717]|0?p=o[2665]|0:(oWt(),o[2665]=1504,n[11717]=1,p=1504),p|0}function oWt(){n[11740]|0||(n[11718]=Ku(Ku(8,0)|0,0)|0,n[11719]=Ku(Ku(0,0)|0,0)|0,n[11720]=Ku(Ku(0,16)|0,0)|0,n[11721]=Ku(Ku(8,0)|0,0)|0,n[11722]=Ku(Ku(0,0)|0,0)|0,n[11723]=Ku(Ku(8,0)|0,0)|0,n[11724]=Ku(Ku(0,0)|0,0)|0,n[11725]=Ku(Ku(8,0)|0,0)|0,n[11726]=Ku(Ku(0,0)|0,0)|0,n[11727]=Ku(Ku(8,0)|0,0)|0,n[11728]=Ku(Ku(0,0)|0,0)|0,n[11729]=Ku(Ku(0,0)|0,32)|0,n[11730]=Ku(Ku(0,0)|0,32)|0,n[11740]=1)}function Bbe(){return 1572}function dLe(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0;U=B,B=B+32|0,ht=U+16|0,St=U+12|0,Xe=U+8|0,Ge=U+4|0,le=U,o[ht>>2]=p,o[St>>2]=y,o[Xe>>2]=w,o[Ge>>2]=G,o[le>>2]=X,VW()|0,wbe(10656,ht,St,Xe,Ge,le),B=U}function wbe(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0;le=ju(24)|0,Nb(le+4|0,o[y>>2]|0,o[w>>2]|0,o[G>>2]|0,o[X>>2]|0,o[U>>2]|0),o[le>>2]=o[p>>2],o[p>>2]=le}function k3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,Eo=0;if(Eo=B,B=B+32|0,zi=Eo+20|0,Un=Eo+8|0,Ds=Eo+4|0,Si=Eo,y=o[y>>2]|0,y|0){Ks=zi+4|0,Xe=zi+8|0,St=Un+4|0,ht=Un+8|0,rr=Un+8|0,an=zi+8|0;do{if(le=y+4|0,Ge=hU(le)|0,Ge|0){if(X=C1(Ge)|0,o[zi>>2]=0,o[Ks>>2]=0,o[Xe>>2]=0,G=(xAe(Ge)|0)+1|0,aWt(zi,G),G|0)for(;G=G+-1|0,FB(Un,o[X>>2]|0),U=o[Ks>>2]|0,U>>>0<(o[an>>2]|0)>>>0?(o[U>>2]=o[Un>>2],o[Ks>>2]=(o[Ks>>2]|0)+4):IN(zi,Un),G;)X=X+4|0;G=Ly(Ge)|0,o[Un>>2]=0,o[St>>2]=0,o[ht>>2]=0;e:do if(o[G>>2]|0)for(X=0,U=0;;){if((X|0)==(U|0)?GAe(Un,G):(o[X>>2]=o[G>>2],o[St>>2]=(o[St>>2]|0)+4),G=G+4|0,!(o[G>>2]|0))break e;X=o[St>>2]|0,U=o[rr>>2]|0}while(!1);o[Ds>>2]=tk(le)|0,o[Si>>2]=Xr(Ge)|0,rk(w,p,Ds,Si,zi,Un),hv(Un),qL(zi)}y=o[y>>2]|0}while(y|0)}B=Eo}function hU(p){return p=p|0,o[p+12>>2]|0}function C1(p){return p=p|0,o[p+12>>2]|0}function xAe(p){return p=p|0,o[p+16>>2]|0}function aWt(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;X=B,B=B+32|0,w=X,G=o[p>>2]|0,(o[p+8>>2]|0)-G>>2>>>0>>0&&(Dbe(w,y,(o[p+4>>2]|0)-G>>2,p+8|0),mN(p,w),la(w)),B=X}function IN(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;if(le=B,B=B+32|0,w=le,G=p+4|0,X=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=VAe(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,St=(o[p+8>>2]|0)-Ge|0,Xe=St>>1,Dbe(w,St>>2>>>0>>1>>>0?Xe>>>0>>0?X:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,mN(p,w),la(w),B=le;return}}function Ly(p){return p=p|0,o[p+8>>2]|0}function GAe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;if(le=B,B=B+32|0,w=le,G=p+4|0,X=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=F3(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,St=(o[p+8>>2]|0)-Ge|0,Xe=St>>1,Vy(w,St>>2>>>0>>1>>>0?Xe>>>0>>0?X:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,hN(p,w),oz(w),B=le;return}}function tk(p){return p=p|0,o[p>>2]|0}function rk(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,x3(p,y,w,G,X,U)}function hv(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function qL(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function x3(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;le=B,B=B+48|0,ht=le+40|0,Ge=le+32|0,rr=le+24|0,Xe=le+12|0,St=le,Ww(Ge),p=tI(p)|0,o[rr>>2]=o[y>>2],w=o[w>>2]|0,G=o[G>>2]|0,nz(Xe,X),pLe(St,U),o[ht>>2]=o[rr>>2],fLe(p,ht,w,G,Xe,St),hv(St),qL(Xe),gS(Ge),B=le}function nz(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(sz(p,G),cWt(p,o[y>>2]|0,o[w>>2]|0,G))}function pLe(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(CU(p,G),LAe(p,o[y>>2]|0,o[w>>2]|0,G))}function fLe(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;le=B,B=B+32|0,ht=le+28|0,rr=le+24|0,Ge=le+12|0,Xe=le,St=wb(Jne()|0)|0,o[rr>>2]=o[y>>2],o[ht>>2]=o[rr>>2],y=G3(ht)|0,w=ILe(w)|0,G=FAe(G)|0,o[Ge>>2]=o[X>>2],ht=X+4|0,o[Ge+4>>2]=o[ht>>2],rr=X+8|0,o[Ge+8>>2]=o[rr>>2],o[rr>>2]=0,o[ht>>2]=0,o[X>>2]=0,X=vE(Ge)|0,o[Xe>>2]=o[U>>2],ht=U+4|0,o[Xe+4>>2]=o[ht>>2],rr=U+8|0,o[Xe+8>>2]=o[rr>>2],o[rr>>2]=0,o[ht>>2]=0,o[U>>2]=0,Ql(0,St|0,p|0,y|0,w|0,G|0,X|0,iz(Xe)|0)|0,hv(Xe),qL(Ge),B=le}function Jne(){var p=0;return n[7968]|0||(p2(10708),p=7968,o[p>>2]=1,o[p+4>>2]=0),10708}function G3(p){return p=p|0,ZAe(p)|0}function ILe(p){return p=p|0,Tbe(p)|0}function FAe(p){return p=p|0,GJ(p)|0}function vE(p){return p=p|0,gy(p)|0}function iz(p){return p=p|0,hLe(p)|0}function hLe(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Vb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=Tbe(o[(o[p>>2]|0)+(y<<2)>>2]|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function Tbe(p){return p=p|0,p|0}function gy(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Vb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=ZAe((o[p>>2]|0)+(y<<2)|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function ZAe(p){p=p|0;var y=0,w=0,G=0,X=0;return X=B,B=B+32|0,y=X+12|0,w=X,G=Gh(t$e()|0)|0,G?(u1(y,G),Db(w,y),sEe(p,w),p=_E(y)|0):p=Rbe(p)|0,B=X,p|0}function t$e(){var p=0;return n[7960]|0||(aI(10664),fu(25,10664,J|0)|0,p=7960,o[p>>2]=1,o[p+4>>2]=0),10664}function Rbe(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,X=w+4|0,le=w,G=Vb(8)|0,y=G,Ge=ju(4)|0,o[Ge>>2]=o[p>>2],U=y+4|0,o[U>>2]=Ge,p=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],mU(p,U,X),o[G>>2]=p,B=w,y|0}function mU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1656,o[w+12>>2]=y,o[p+4>>2]=w}function Une(p){p=p|0,Tz(p),ti(p)}function Nbe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function mv(p){p=p|0,ti(p)}function aI(p){p=p|0,Hc(p)}function p2(p){p=p|0,xy(p,VC()|0,5)}function VC(){return 1676}function CU(p,y){p=p|0,y=y|0;var w=0;if((F3(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=ju(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function LAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Yd(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function F3(p){return p=p|0,1073741823}function sz(p,y){p=p|0,y=y|0;var w=0;if((VAe(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=ju(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function cWt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Yd(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function VAe(p){return p=p|0,1073741823}function Vy(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{X=ju(y<<2)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<2)}function hN(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>2)<<2)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function oz(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function Dbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{X=ju(y<<2)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<2)}function mN(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>2)<<2)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function la(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function WAe(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(Un=B,B=B+32|0,ht=Un+20|0,rr=Un+12|0,St=Un+16|0,an=Un+4|0,Ks=Un,zi=Un+8|0,Ge=vbe()|0,U=o[Ge>>2]|0,le=o[U>>2]|0,le|0)for(Xe=o[Ge+8>>2]|0,Ge=o[Ge+4>>2]|0;FB(ht,le),mLe(p,ht,Ge,Xe),U=U+4|0,le=o[U>>2]|0,le;)Xe=Xe+1|0,Ge=Ge+1|0;if(U=Bbe()|0,le=o[U>>2]|0,le|0)do FB(ht,le),o[rr>>2]=o[U+4>>2],kbe(y,ht,rr),U=U+8|0,le=o[U>>2]|0;while(le|0);if(U=o[(LW()|0)>>2]|0,U|0)do y=o[U+4>>2]|0,FB(ht,o[(Wy(y)|0)>>2]|0),o[rr>>2]=rz(y)|0,rQ(w,ht,rr),U=o[U>>2]|0;while(U|0);if(FB(St,0),U=VW()|0,o[ht>>2]=o[St>>2],k3(ht,U,X),U=o[(LW()|0)>>2]|0,U|0){p=ht+4|0,y=ht+8|0,w=ht+8|0;do{if(Xe=o[U+4>>2]|0,FB(rr,o[(Wy(Xe)|0)>>2]|0),bp(an,OAe(Xe)|0),le=o[an>>2]|0,le|0){o[ht>>2]=0,o[p>>2]=0,o[y>>2]=0;do FB(Ks,o[(Wy(o[le+4>>2]|0)|0)>>2]|0),Ge=o[p>>2]|0,Ge>>>0<(o[w>>2]|0)>>>0?(o[Ge>>2]=o[Ks>>2],o[p>>2]=(o[p>>2]|0)+4):IN(ht,Ks),le=o[le>>2]|0;while(le|0);xbe(G,rr,ht),qL(ht)}o[zi>>2]=o[rr>>2],St=Kne(Xe)|0,o[ht>>2]=o[zi>>2],k3(ht,St,X),Rr(an),U=o[U>>2]|0}while(U|0)}B=Un}function mLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,_Le(p,y,w,G)}function kbe(p,y,w){p=p|0,y=y|0,w=w|0,i$e(p,y,w)}function Wy(p){return p=p|0,p|0}function rQ(p,y,w){p=p|0,y=y|0,w=w|0,AWt(p,y,w)}function OAe(p){return p=p|0,p+16|0}function bp(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;if(U=B,B=B+16|0,X=U+8|0,w=U,o[p>>2]=0,G=o[y>>2]|0,o[X>>2]=G,o[w>>2]=p,w=gWt(w)|0,G|0){if(G=ju(12)|0,le=(Gbe(X)|0)+4|0,p=o[le+4>>2]|0,y=G+4|0,o[y>>2]=o[le>>2],o[y+4>>2]=p,y=o[o[X>>2]>>2]|0,o[X>>2]=y,!y)p=G;else for(y=G;p=ju(12)|0,Xe=(Gbe(X)|0)+4|0,Ge=o[Xe+4>>2]|0,le=p+4|0,o[le>>2]=o[Xe>>2],o[le+4>>2]=Ge,o[y>>2]=p,le=o[o[X>>2]>>2]|0,o[X>>2]=le,le;)y=p;o[p>>2]=o[w>>2],o[w>>2]=G}B=U}function xbe(p,y,w){p=p|0,y=y|0,w=w|0,_U(p,y,w)}function Kne(p){return p=p|0,p+24|0}function _U(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+24|0,X=G+16|0,Ge=G+12|0,U=G,Ww(X),p=tI(p)|0,o[Ge>>2]=o[y>>2],nz(U,w),o[le>>2]=o[Ge>>2],CLe(p,le,U),qL(U),gS(X),B=G}function CLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+16|0,Ge=G+12|0,X=G,U=wb(yU()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=G3(le)|0,o[X>>2]=o[w>>2],le=w+4|0,o[X+4>>2]=o[le>>2],Ge=w+8|0,o[X+8>>2]=o[Ge>>2],o[Ge>>2]=0,o[le>>2]=0,o[w>>2]=0,Ei(0,U|0,p|0,y|0,vE(X)|0)|0,qL(X),B=G}function yU(){var p=0;return n[7976]|0||(lWt(10720),p=7976,o[p>>2]=1,o[p+4>>2]=0),10720}function lWt(p){p=p|0,xy(p,uWt()|0,2)}function uWt(){return 1732}function gWt(p){return p=p|0,o[p>>2]|0}function Gbe(p){return p=p|0,o[p>>2]|0}function AWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,X=G+8|0,le=G,Ww(X),p=tI(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],r$e(p,U,w),gS(X),B=G}function r$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+16|0,U=G+4|0,le=G,X=wb(dWt()|0)|0,o[le>>2]=o[y>>2],o[U>>2]=o[le>>2],y=G3(U)|0,Ei(0,X|0,p|0,y|0,ILe(w)|0)|0,B=G}function dWt(){var p=0;return n[7984]|0||(WC(10732),p=7984,o[p>>2]=1,o[p+4>>2]=0),10732}function WC(p){p=p|0,xy(p,n$e()|0,2)}function n$e(){return 1744}function i$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,X=G+8|0,le=G,Ww(X),p=tI(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],r$e(p,U,w),gS(X),B=G}function _Le(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+32|0,le=X+16|0,U=X+8|0,Ge=X,Ww(U),p=tI(p)|0,o[Ge>>2]=o[y>>2],w=n[w>>0]|0,G=n[G>>0]|0,o[le>>2]=o[Ge>>2],CN(p,le,w,G),gS(U),B=X}function CN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,le=X+4|0,Ge=X,U=wb(PAe()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=G3(le)|0,w=bU(w)|0,cA(0,U|0,p|0,y|0,w|0,bU(G)|0)|0,B=X}function PAe(){var p=0;return n[7992]|0||(Bu(10744),p=7992,o[p>>2]=1,o[p+4>>2]=0),10744}function bU(p){return p=p|0,yLe(p)|0}function yLe(p){return p=p|0,p&255|0}function Bu(p){p=p|0,xy(p,nQ()|0,3)}function nQ(){return 1756}function pWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;switch(an=B,B=B+32|0,Ge=an+8|0,Xe=an+4|0,St=an+20|0,ht=an,IW(p,0),G=iEe(y)|0,o[Ge>>2]=0,rr=Ge+4|0,o[rr>>2]=0,o[Ge+8>>2]=0,G<<24>>24){case 0:{n[St>>0]=0,s$e(Xe,w,St),$L(p,Xe)|0,s_(Xe);break}case 8:{rr=cde(y)|0,n[St>>0]=8,FB(ht,o[rr+4>>2]|0),rm(Xe,w,St,ht,rr+8|0),$L(p,Xe)|0,s_(Xe);break}case 9:{if(U=cde(y)|0,y=o[U+4>>2]|0,y|0)for(le=Ge+8|0,X=U+12|0;y=y+-1|0,FB(Xe,o[X>>2]|0),G=o[rr>>2]|0,G>>>0<(o[le>>2]|0)>>>0?(o[G>>2]=o[Xe>>2],o[rr>>2]=(o[rr>>2]|0)+4):IN(Ge,Xe),y;)X=X+4|0;n[St>>0]=9,FB(ht,o[U+8>>2]|0),iQ(Xe,w,St,ht,Ge),$L(p,Xe)|0,s_(Xe);break}default:rr=cde(y)|0,n[St>>0]=G,FB(ht,o[rr+4>>2]|0),kf(Xe,w,St,ht),$L(p,Xe)|0,s_(Xe)}qL(Ge),B=an}function s$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;G=B,B=B+16|0,X=G,Ww(X),y=tI(y)|0,Lbe(p,y,n[w>>0]|0),gS(X),B=G}function $L(p,y){p=p|0,y=y|0;var w=0;return w=o[p>>2]|0,w|0&&so(w|0),o[p>>2]=o[y>>2],o[y>>2]=0,p|0}function rm(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+32|0,Ge=U+16|0,le=U+8|0,Xe=U,Ww(le),y=tI(y)|0,w=n[w>>0]|0,o[Xe>>2]=o[G>>2],X=o[X>>2]|0,o[Ge>>2]=o[Xe>>2],o$e(p,y,w,Ge,X),gS(le),B=U}function iQ(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0;U=B,B=B+32|0,Xe=U+24|0,le=U+16|0,St=U+12|0,Ge=U,Ww(le),y=tI(y)|0,w=n[w>>0]|0,o[St>>2]=o[G>>2],nz(Ge,X),o[Xe>>2]=o[St>>2],bLe(p,y,w,Xe,Ge),qL(Ge),gS(le),B=U}function kf(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+32|0,le=X+16|0,U=X+8|0,Ge=X,Ww(U),y=tI(y)|0,w=n[w>>0]|0,o[Ge>>2]=o[G>>2],o[le>>2]=o[Ge>>2],MAe(p,y,w,le),gS(U),B=X}function MAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0,le=0,Ge=0;X=B,B=B+16|0,U=X+4|0,Ge=X,le=wb(wu()|0)|0,w=bU(w)|0,o[Ge>>2]=o[G>>2],o[U>>2]=o[Ge>>2],jne(p,Ei(0,le|0,y|0,w|0,G3(U)|0)|0),B=X}function wu(){var p=0;return n[8e3]|0||(Fbe(10756),p=8e3,o[p>>2]=1,o[p+4>>2]=0),10756}function jne(p,y){p=p|0,y=y|0,IW(p,y)}function Fbe(p){p=p|0,xy(p,az()|0,2)}function az(){return 1772}function bLe(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0;U=B,B=B+32|0,Xe=U+16|0,St=U+12|0,le=U,Ge=wb(fWt()|0)|0,w=bU(w)|0,o[St>>2]=o[G>>2],o[Xe>>2]=o[St>>2],G=G3(Xe)|0,o[le>>2]=o[X>>2],Xe=X+4|0,o[le+4>>2]=o[Xe>>2],St=X+8|0,o[le+8>>2]=o[St>>2],o[St>>2]=0,o[Xe>>2]=0,o[X>>2]=0,jne(p,cA(0,Ge|0,y|0,w|0,G|0,vE(le)|0)|0),qL(le),B=U}function fWt(){var p=0;return n[8008]|0||(IWt(10768),p=8008,o[p>>2]=1,o[p+4>>2]=0),10768}function IWt(p){p=p|0,xy(p,hWt()|0,3)}function hWt(){return 1784}function o$e(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,Ge=U+4|0,Xe=U,le=wb(a$e()|0)|0,w=bU(w)|0,o[Xe>>2]=o[G>>2],o[Ge>>2]=o[Xe>>2],G=G3(Ge)|0,jne(p,cA(0,le|0,y|0,w|0,G|0,FAe(X)|0)|0),B=U}function a$e(){var p=0;return n[8016]|0||(HAe(10780),p=8016,o[p>>2]=1,o[p+4>>2]=0),10780}function HAe(p){p=p|0,xy(p,Zbe()|0,3)}function Zbe(){return 1800}function Lbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=wb(mWt()|0)|0,jne(p,Ki(0,G|0,y|0,bU(w)|0)|0)}function mWt(){var p=0;return n[8024]|0||(zne(10792),p=8024,o[p>>2]=1,o[p+4>>2]=0),10792}function zne(p){p=p|0,xy(p,c$e()|0,1)}function c$e(){return 1816}function CWt(){_Wt(),qne(),Vbe()}function _Wt(){o[2702]=Rz(65536)|0}function qne(){vLe(10856)}function Vbe(){_$r(10816)}function _$r(p){p=p|0,OC(p,5044),cz(p)|0}function OC(p,y){p=p|0,y=y|0;var w=0;w=t$e()|0,o[p>>2]=w,OW(w,y),xF(o[p>>2]|0)}function cz(p){p=p|0;var y=0;return y=o[p>>2]|0,NF(y,ELe()|0),p|0}function ELe(){var p=0;return n[8032]|0||(Hg(10820),fu(64,10820,J|0)|0,p=8032,o[p>>2]=1,o[p+4>>2]=0),Xr(10820)|0||Hg(10820),10820}function Hg(p){p=p|0,SLe(p),K7(p,25)}function a0(p){p=p|0,F_(p+24|0)}function F_(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function SLe(p){p=p|0;var y=0;y=Hs()|0,Io(p,5,18,y,$ne()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function uS(p,y){p=p|0,y=y|0,Vw(p,y)}function Vw(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;w=B,B=B+16|0,G=w,X=w+4|0,sS(X,y),o[G>>2]=cN(X,y)|0,sQ(p,G),B=w}function sQ(p,y){p=p|0,y=y|0,lz(p+4|0,o[y>>2]|0),n[p+8>>0]=1}function lz(p,y){p=p|0,y=y|0,o[p>>2]=y}function $ne(){return 1824}function WW(p){return p=p|0,Oy(p)|0}function Oy(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,X=w+4|0,le=w,G=Vb(8)|0,y=G,Ge=ju(4)|0,sS(X,p),lz(Ge,cN(X,p)|0),U=y+4|0,o[U>>2]=Ge,p=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],mU(p,U,X),o[G>>2]=p,B=w,y|0}function Vb(p){p=p|0;var y=0,w=0;return p=p+7&-8,p>>>0<=32768&&(y=o[2701]|0,p>>>0<=(65536-y|0)>>>0)?(w=(o[2702]|0)+y|0,o[2701]=y+p,p=w):(p=Rz(p+8|0)|0,o[p>>2]=o[2703],o[2703]=p,p=p+8|0),p|0}function OW(p,y){p=p|0,y=y|0,o[p>>2]=YAe()|0,o[p+4>>2]=FF()|0,o[p+12>>2]=y,o[p+8>>2]=eie()|0,o[p+32>>2]=9}function YAe(){return 11744}function FF(){return 1832}function eie(){return j7()|0}function tie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&(QAe(w),ti(w)):y|0&&ti(y)}function QAe(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function vLe(p){p=p|0,BLe(p,5052),EU(p)|0,wLe(p,5058,26)|0,u_(p,5069,1)|0,XAe(p,5077,10)|0,Wbe(p,5087,19)|0,TLe(p,5094,27)|0}function BLe(p,y){p=p|0,y=y|0;var w=0;w=bz()|0,o[p>>2]=w,ode(w,y),xF(o[p>>2]|0)}function EU(p){p=p|0;var y=0;return y=o[p>>2]|0,NF(y,QLe()|0),p|0}function wLe(p,y,w){return p=p|0,y=y|0,w=w|0,$be(p,hf(y)|0,w,0),p|0}function u_(p,y,w){return p=p|0,y=y|0,w=w|0,aie(p,hf(y)|0,w,0),p|0}function XAe(p,y,w){return p=p|0,y=y|0,w=w|0,TWt(p,hf(y)|0,w,0),p|0}function Wbe(p,y,w){return p=p|0,y=y|0,w=w|0,A$e(p,hf(y)|0,w,0),p|0}function Obe(p,y){p=p|0,y=y|0;var w=0,G=0;e:for(;;){for(w=o[2703]|0;;){if((w|0)==(y|0))break e;if(G=o[w>>2]|0,o[2703]=G,!w)w=G;else break}ti(w)}o[2701]=p}function TLe(p,y,w){return p=p|0,y=y|0,w=w|0,RLe(p,hf(y)|0,w,0),p|0}function RLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=uz()|0,p=JAe(w)|0,Sd(U,y,X,p,rie(w,G)|0,G)}function uz(){var p=0,y=0;if(n[8040]|0||(UAe(10860),fu(65,10860,J|0)|0,y=8040,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10860)|0)){p=10860,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));UAe(10860)}return 10860}function JAe(p){return p=p|0,p|0}function rie(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=uz()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(nie(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Pbe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function nie(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Pbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Mbe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,yWt(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,nie(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,l$e(p,X),bWt(X),B=Ge;return}}function Mbe(p){return p=p|0,536870911}function yWt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function l$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function bWt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function UAe(p){p=p|0,EWt(p)}function NLe(p){p=p|0,u$e(p+24|0)}function u$e(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function EWt(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,11,y,SWt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function SWt(){return 1840}function vWt(p,y,w){p=p|0,y=y|0,w=w|0,g$e(o[(DLe(p)|0)>>2]|0,y,w)}function DLe(p){return p=p|0,(o[(uz()|0)+24>>2]|0)+(p<<3)|0}function g$e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;G=B,B=B+16|0,U=G+1|0,X=G,sS(U,y),y=cN(U,y)|0,sS(X,w),w=cN(X,w)|0,ik[p&31](y,w),B=G}function A$e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=Hbe()|0,p=kLe(w)|0,Sd(U,y,X,p,gz(w,G)|0,G)}function Hbe(){var p=0,y=0;if(n[8048]|0||(nk(10896),fu(66,10896,J|0)|0,y=8048,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10896)|0)){p=10896,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));nk(10896)}return 10896}function kLe(p){return p=p|0,p|0}function gz(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=Hbe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(iie(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Ybe(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function iie(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Ybe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Qbe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,KAe(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,iie(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,xLe(p,X),jAe(X),B=Ge;return}}function Qbe(p){return p=p|0,536870911}function KAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function xLe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function jAe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function nk(p){p=p|0,wWt(p)}function Xbe(p){p=p|0,BWt(p+24|0)}function BWt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function wWt(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,11,y,zAe()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function zAe(){return 1852}function qAe(p,y){return p=p|0,y=y|0,Jbe(o[($Ae(p)|0)>>2]|0,y)|0}function $Ae(p){return p=p|0,(o[(Hbe()|0)+24>>2]|0)+(p<<3)|0}function Jbe(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,sS(G,y),y=cN(G,y)|0,y=GJ(yC[p&31](y)|0)|0,B=w,y|0}function TWt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=GLe()|0,p=RWt(w)|0,Sd(U,y,X,p,SU(w,G)|0,G)}function GLe(){var p=0,y=0;if(n[8056]|0||(dz(10932),fu(67,10932,J|0)|0,y=8056,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10932)|0)){p=10932,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));dz(10932)}return 10932}function RWt(p){return p=p|0,p|0}function SU(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=GLe()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(ede(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(NWt(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function ede(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function NWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=tde(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,sie(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,ede(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,rde(p,X),Az(X),B=Ge;return}}function tde(p){return p=p|0,536870911}function sie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function rde(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Az(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function dz(p){p=p|0,Z3(p)}function DWt(p){p=p|0,_N(p+24|0)}function _N(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Z3(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,7,y,FLe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function FLe(){return 1860}function ZLe(p,y,w){return p=p|0,y=y|0,w=w|0,LLe(o[(kWt(p)|0)>>2]|0,y,w)|0}function kWt(p){return p=p|0,(o[(GLe()|0)+24>>2]|0)+(p<<3)|0}function LLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+32|0,le=G+12|0,U=G+8|0,Ge=G,Xe=G+16|0,X=G+4|0,xWt(Xe,y),Ube(Ge,Xe,y),Dx(X,w),w=EF(X,w)|0,o[le>>2]=o[Ge>>2],eR[p&15](U,le,w),w=d$e(U)|0,s_(U),BB(X),B=G,w|0}function xWt(p,y){p=p|0,y=y|0}function Ube(p,y,w){p=p|0,y=y|0,w=w|0,oie(p,w)}function d$e(p){return p=p|0,tI(p)|0}function oie(p,y){p=p|0,y=y|0;var w=0,G=0,X=0;X=B,B=B+16|0,w=X,G=y,G&1?(VLe(w,0),_I(G|0,w|0)|0,c0(p,w),WLe(w)):o[p>>2]=o[y>>2],B=X}function VLe(p,y){p=p|0,y=y|0,j(p,y),o[p+4>>2]=0,n[p+8>>0]=0}function c0(p,y){p=p|0,y=y|0,o[p>>2]=o[y+4>>2]}function WLe(p){p=p|0,n[p+8>>0]=0}function aie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=yN()|0,p=oQ(w)|0,Sd(U,y,X,p,p$e(w,G)|0,G)}function yN(){var p=0,y=0;if(n[8064]|0||(zT(10968),fu(68,10968,J|0)|0,y=8064,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10968)|0)){p=10968,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));zT(10968)}return 10968}function oQ(p){return p=p|0,p|0}function p$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=yN()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(pz(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(xB(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function pz(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function xB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=nde(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,fz(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,pz(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Iz(p,X),f$e(X),B=Ge;return}}function nde(p){return p=p|0,536870911}function fz(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function Iz(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function f$e(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function zT(p){p=p|0,jbe(p)}function hz(p){p=p|0,Kbe(p+24|0)}function Kbe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function jbe(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,1,y,zbe()|0,5),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function zbe(){return 1872}function ug(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,qbe(o[(OLe(p)|0)>>2]|0,y,w,G,X,U)}function OLe(p){return p=p|0,(o[(yN()|0)+24>>2]|0)+(p<<3)|0}function qbe(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0;le=B,B=B+32|0,Ge=le+16|0,Xe=le+12|0,St=le+8|0,ht=le+4|0,rr=le,Dx(Ge,y),y=EF(Ge,y)|0,Dx(Xe,w),w=EF(Xe,w)|0,Dx(St,G),G=EF(St,G)|0,Dx(ht,X),X=EF(ht,X)|0,Dx(rr,U),U=EF(rr,U)|0,R$e[p&1](y,w,G,X,U),BB(rr),BB(ht),BB(St),BB(Xe),BB(Ge),B=le}function $be(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;U=o[p>>2]|0,X=L3()|0,p=PLe(w)|0,Sd(U,y,X,p,I$e(w,G)|0,G)}function L3(){var p=0,y=0;if(n[8072]|0||(cie(11004),fu(69,11004,J|0)|0,y=8072,o[y>>2]=1,o[y+4>>2]=0),!(Xr(11004)|0)){p=11004,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));cie(11004)}return 11004}function PLe(p){return p=p|0,p|0}function I$e(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,X=Ge,U=Ge+4|0,o[X>>2]=p,Xe=L3()|0,le=Xe+24|0,y=Ku(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(vU(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(ide(le,X,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function vU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function ide(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0;if(Ge=B,B=B+32|0,X=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=mz(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,ht=(o[p+8>>2]|0)-Xe|0,St=ht>>2,PW(X,ht>>3>>>0>>1>>>0?St>>>0>>0?le:St:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=X+8|0,vU(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,MLe(p,X),eEe(X),B=Ge;return}}function mz(p){return p=p|0,536870911}function PW(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{X=ju(y<<3)|0;break}else X=0;while(!1);o[p>>2]=X,G=X+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=X+(y<<3)}function MLe(p,y){p=p|0,y=y|0;var w=0,G=0,X=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,X=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(X>>3)<<3)|0,o[U>>2]=w,(X|0)>0?(Yd(w|0,G|0,X|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,X=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=X,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function eEe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function cie(p){p=p|0,FWt(p)}function e9(p){p=p|0,GWt(p+24|0)}function GWt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function FWt(p){p=p|0;var y=0;y=Hs()|0,Io(p,1,12,y,ZWt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ZWt(){return 1896}function HLe(p,y,w){p=p|0,y=y|0,w=w|0,Cz(o[(YLe(p)|0)>>2]|0,y,w)}function YLe(p){return p=p|0,(o[(L3()|0)+24>>2]|0)+(p<<3)|0}function Cz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;G=B,B=B+16|0,U=G+4|0,X=G,BU(U,y),y=GB(U,y)|0,Dx(X,w),w=EF(X,w)|0,ik[p&31](y,w),BB(X),B=G}function BU(p,y){p=p|0,y=y|0}function GB(p,y){return p=p|0,y=y|0,tEe(y)|0}function tEe(p){return p=p|0,p|0}function QLe(){var p=0;return n[8080]|0||(UA(11040),fu(70,11040,J|0)|0,p=8080,o[p>>2]=1,o[p+4>>2]=0),Xr(11040)|0||UA(11040),11040}function UA(p){p=p|0,rEe(p),K7(p,71)}function t9(p){p=p|0,LWt(p+24|0)}function LWt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function rEe(p){p=p|0;var y=0;y=Hs()|0,Io(p,5,7,y,sde()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function XLe(p){p=p|0,_z(p)}function _z(p){p=p|0,JLe(p)}function JLe(p){p=p|0,n[p+8>>0]=1}function sde(){return 1936}function yz(){return ULe()|0}function ULe(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0;return y=B,B=B+16|0,X=y+4|0,le=y,w=Vb(8)|0,p=w,U=p+4|0,o[U>>2]=ju(1)|0,G=ju(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[X>>2]=o[le>>2],ZF(G,U,X),o[w>>2]=G,B=y,p|0}function ZF(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=ju(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1916,o[w+12>>2]=y,o[p+4>>2]=w}function MW(p){p=p|0,Tz(p),ti(p)}function bN(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function lie(p){p=p|0,ti(p)}function bz(){var p=0;return n[8088]|0||(ade(11076),fu(25,11076,J|0)|0,p=8088,o[p>>2]=1,o[p+4>>2]=0),11076}function ode(p,y){p=p|0,y=y|0,o[p>>2]=aQ()|0,o[p+4>>2]=uie()|0,o[p+12>>2]=y,o[p+8>>2]=gie()|0,o[p+32>>2]=10}function aQ(){return 11745}function uie(){return 1940}function gie(){return oI()|0}function nEe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(RW(G,896)|0)==512?w|0&&(KLe(w),ti(w)):y|0&&ti(y)}function KLe(p){p=p|0,p=o[p+4>>2]|0,p|0&&NU(p)}function ade(p){p=p|0,Hc(p)}function FB(p,y){p=p|0,y=y|0,o[p>>2]=y}function cde(p){return p=p|0,o[p>>2]|0}function iEe(p){return p=p|0,n[o[p>>2]>>0]|0}function sEe(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,o[G>>2]=o[p>>2],lde(y,G)|0,B=w}function lde(p,y){p=p|0,y=y|0;var w=0;return w=Ez(o[p>>2]|0,y)|0,y=p+4|0,o[(o[y>>2]|0)+8>>2]=w,o[(o[y>>2]|0)+8>>2]|0}function Ez(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,Ww(G),p=tI(p)|0,y=jLe(p,o[y>>2]|0)|0,gS(G),B=w,y|0}function Ww(p){p=p|0,o[p>>2]=o[2701],o[p+4>>2]=o[2703]}function jLe(p,y){p=p|0,y=y|0;var w=0;return w=wb(Sz()|0)|0,Ki(0,w|0,p|0,FAe(y)|0)|0}function gS(p){p=p|0,Obe(o[p>>2]|0,o[p+4>>2]|0)}function Sz(){var p=0;return n[8096]|0||(oEe(11120),p=8096,o[p>>2]=1,o[p+4>>2]=0),11120}function oEe(p){p=p|0,xy(p,f2()|0,1)}function f2(){return 1948}function I2(){cQ()}function cQ(){var p=0,y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(zi=B,B=B+16|0,ht=zi+4|0,rr=zi,Kl(65536,10804,o[2702]|0,10812),w=vbe()|0,y=o[w>>2]|0,p=o[y>>2]|0,p|0)for(G=o[w+8>>2]|0,w=o[w+4>>2]|0;Do(p|0,l[w>>0]|0|0,n[G>>0]|0),y=y+4|0,p=o[y>>2]|0,p;)G=G+1|0,w=w+1|0;if(p=Bbe()|0,y=o[p>>2]|0,y|0)do Pt(y|0,o[p+4>>2]|0),p=p+8|0,y=o[p>>2]|0;while(y|0);Pt(zLe()|0,5167),St=LW()|0,p=o[St>>2]|0;e:do if(p|0){do VWt(o[p+4>>2]|0),p=o[p>>2]|0;while(p|0);if(p=o[St>>2]|0,p|0){Xe=St;do{for(;X=p,p=o[p>>2]|0,X=o[X+4>>2]|0,!!(V3(X)|0);)if(o[rr>>2]=Xe,o[ht>>2]=o[rr>>2],ude(St,ht)|0,!p)break e;if(qLe(X),Xe=o[Xe>>2]|0,y=nm(X)|0,U=HA()|0,le=B,B=B+((1*(y<<2)|0)+15&-16)|0,Ge=B,B=B+((1*(y<<2)|0)+15&-16)|0,y=o[(OAe(X)|0)>>2]|0,y|0)for(w=le,G=Ge;o[w>>2]=o[(Wy(o[y+4>>2]|0)|0)>>2],o[G>>2]=o[y+8>>2],y=o[y>>2]|0,y;)w=w+4|0,G=G+4|0;Un=Wy(X)|0,y=$Le(X)|0,w=nm(X)|0,G=aEe(X)|0,Uu(Un|0,y|0,le|0,Ge|0,w|0,G|0,rz(X)|0),Da(U|0)}while(p|0)}}while(!1);if(p=o[(VW()|0)>>2]|0,p|0)do Un=p+4|0,St=hU(Un)|0,X=Ly(St)|0,U=C1(St)|0,le=(xAe(St)|0)+1|0,Ge=lQ(St)|0,Xe=gde(Un)|0,St=Xr(St)|0,ht=tk(Un)|0,rr=vz(Un)|0,Ru(0,X|0,U|0,le|0,Ge|0,Xe|0,St|0,ht|0,rr|0,Ade(Un)|0),p=o[p>>2]|0;while(p|0);p=o[(LW()|0)>>2]|0;e:do if(p|0){t:for(;;){if(y=o[p+4>>2]|0,y|0&&(an=o[(Wy(y)|0)>>2]|0,Ks=o[(Kne(y)|0)>>2]|0,Ks|0)){w=Ks;do{y=w+4|0,G=hU(y)|0;r:do if(G|0)switch(Xr(G)|0){case 0:break t;case 4:case 3:case 2:{Ge=Ly(G)|0,Xe=C1(G)|0,St=(xAe(G)|0)+1|0,ht=lQ(G)|0,rr=Xr(G)|0,Un=tk(y)|0,Ru(an|0,Ge|0,Xe|0,St|0,ht|0,0,rr|0,Un|0,vz(y)|0,Ade(y)|0);break r}case 1:{le=Ly(G)|0,Ge=C1(G)|0,Xe=(xAe(G)|0)+1|0,St=lQ(G)|0,ht=gde(y)|0,rr=Xr(G)|0,Un=tk(y)|0,Ru(an|0,le|0,Ge|0,Xe|0,St|0,ht|0,rr|0,Un|0,vz(y)|0,Ade(y)|0);break r}case 5:{St=Ly(G)|0,ht=C1(G)|0,rr=(xAe(G)|0)+1|0,Un=lQ(G)|0,Ru(an|0,St|0,ht|0,rr|0,Un|0,dde(G)|0,Xr(G)|0,0,0,0);break r}default:break r}while(!1);w=o[w>>2]|0}while(w|0)}if(p=o[p>>2]|0,!p)break e}Ko()}while(!1);Yn(),B=zi}function zLe(){return 11703}function VWt(p){p=p|0,n[p+40>>0]=0}function V3(p){return p=p|0,(n[p+40>>0]|0)!=0|0}function ude(p,y){return p=p|0,y=y|0,y=cEe(y)|0,p=o[y>>2]|0,o[y>>2]=o[p>>2],ti(p),o[y>>2]|0}function qLe(p){p=p|0,n[p+40>>0]=1}function nm(p){return p=p|0,o[p+20>>2]|0}function $Le(p){return p=p|0,o[p+8>>2]|0}function aEe(p){return p=p|0,o[p+32>>2]|0}function lQ(p){return p=p|0,o[p+4>>2]|0}function gde(p){return p=p|0,o[p+4>>2]|0}function vz(p){return p=p|0,o[p+8>>2]|0}function Ade(p){return p=p|0,o[p+16>>2]|0}function dde(p){return p=p|0,o[p+20>>2]|0}function cEe(p){return p=p|0,o[p>>2]|0}function Aie(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,Eo=0,ss=0,pi=0,Il=0;Il=B,B=B+16|0,an=Il;do if(p>>>0<245){if(St=p>>>0<11?16:p+11&-8,p=St>>>3,rr=o[2783]|0,w=rr>>>p,w&3|0)return y=(w&1^1)+p|0,p=11172+(y<<1<<2)|0,w=p+8|0,G=o[w>>2]|0,X=G+8|0,U=o[X>>2]|0,(p|0)==(U|0)?o[2783]=rr&~(1<>2]=p,o[w>>2]=U),pi=y<<3,o[G+4>>2]=pi|3,pi=G+pi+4|0,o[pi>>2]=o[pi>>2]|1,pi=X,B=Il,pi|0;if(ht=o[2785]|0,St>>>0>ht>>>0){if(w|0)return y=2<>>12&16,y=y>>>le,w=y>>>5&8,y=y>>>w,X=y>>>2&4,y=y>>>X,p=y>>>1&2,y=y>>>p,G=y>>>1&1,G=(w|le|X|p|G)+(y>>>G)|0,y=11172+(G<<1<<2)|0,p=y+8|0,X=o[p>>2]|0,le=X+8|0,w=o[le>>2]|0,(y|0)==(w|0)?(p=rr&~(1<>2]=y,o[p>>2]=w,p=rr),U=(G<<3)-St|0,o[X+4>>2]=St|3,G=X+St|0,o[G+4>>2]=U|1,o[G+U>>2]=U,ht|0&&(X=o[2788]|0,y=ht>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=X,o[y+12>>2]=X,o[X+8>>2]=y,o[X+12>>2]=w),o[2785]=U,o[2788]=G,pi=le,B=Il,pi|0;if(Ge=o[2784]|0,Ge){if(w=(Ge&0-Ge)+-1|0,le=w>>>12&16,w=w>>>le,U=w>>>5&8,w=w>>>U,Xe=w>>>2&4,w=w>>>Xe,G=w>>>1&2,w=w>>>G,p=w>>>1&1,p=o[11436+((U|le|Xe|G|p)+(w>>>p)<<2)>>2]|0,w=(o[p+4>>2]&-8)-St|0,G=o[p+16+(((o[p+16>>2]|0)==0&1)<<2)>>2]|0,!G)Xe=p,U=w;else{do le=(o[G+4>>2]&-8)-St|0,Xe=le>>>0>>0,w=Xe?le:w,p=Xe?G:p,G=o[G+16+(((o[G+16>>2]|0)==0&1)<<2)>>2]|0;while(G|0);Xe=p,U=w}if(le=Xe+St|0,Xe>>>0>>0){X=o[Xe+24>>2]|0,y=o[Xe+12>>2]|0;do if((y|0)==(Xe|0)){if(p=Xe+20|0,y=o[p>>2]|0,!y&&(p=Xe+16|0,y=o[p>>2]|0,!y)){w=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0,w=y}else w=o[Xe+8>>2]|0,o[w+12>>2]=y,o[y+8>>2]=w,w=y;while(!1);do if(X|0){if(y=o[Xe+28>>2]|0,p=11436+(y<<2)|0,(Xe|0)==(o[p>>2]|0)){if(o[p>>2]=w,!w){o[2784]=Ge&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=X,y=o[Xe+16>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),y=o[Xe+20>>2]|0,y|0&&(o[w+20>>2]=y,o[y+24>>2]=w)}while(!1);return U>>>0<16?(pi=U+St|0,o[Xe+4>>2]=pi|3,pi=Xe+pi+4|0,o[pi>>2]=o[pi>>2]|1):(o[Xe+4>>2]=St|3,o[le+4>>2]=U|1,o[le+U>>2]=U,ht|0&&(G=o[2788]|0,y=ht>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=rr|y,y=w,p=w+8|0),o[p>>2]=G,o[y+12>>2]=G,o[G+8>>2]=y,o[G+12>>2]=w),o[2785]=U,o[2788]=le),pi=Xe+8|0,B=Il,pi|0}else rr=St}else rr=St}else rr=St}else if(p>>>0<=4294967231)if(p=p+11|0,St=p&-8,Xe=o[2784]|0,Xe){G=0-St|0,p=p>>>8,p?St>>>0>16777215?Ge=31:(rr=(p+1048320|0)>>>16&8,ss=p<>>16&4,ss=ss<>>16&2,Ge=14-(ht|rr|Ge)+(ss<>>15)|0,Ge=St>>>(Ge+7|0)&1|Ge<<1):Ge=0,w=o[11436+(Ge<<2)>>2]|0;e:do if(!w)w=0,p=0,ss=57;else for(p=0,le=St<<((Ge|0)==31?0:25-(Ge>>>1)|0),U=0;;){if(X=(o[w+4>>2]&-8)-St|0,X>>>0>>0)if(X)p=w,G=X;else{p=w,G=0,X=w,ss=61;break e}if(X=o[w+20>>2]|0,w=o[w+16+(le>>>31<<2)>>2]|0,U=(X|0)==0|(X|0)==(w|0)?U:X,X=(w|0)==0,X){w=U,ss=57;break}else le=le<<((X^1)&1)}while(!1);if((ss|0)==57){if((w|0)==0&(p|0)==0){if(p=2<>>12&16,rr=rr>>>le,U=rr>>>5&8,rr=rr>>>U,Ge=rr>>>2&4,rr=rr>>>Ge,ht=rr>>>1&2,rr=rr>>>ht,w=rr>>>1&1,p=0,w=o[11436+((U|le|Ge|ht|w)+(rr>>>w)<<2)>>2]|0}w?(X=w,ss=61):(Ge=p,le=G)}if((ss|0)==61)for(;;)if(ss=0,w=(o[X+4>>2]&-8)-St|0,rr=w>>>0>>0,w=rr?w:G,p=rr?X:p,X=o[X+16+(((o[X+16>>2]|0)==0&1)<<2)>>2]|0,X)G=w,ss=61;else{Ge=p,le=w;break}if(Ge|0&&le>>>0<((o[2785]|0)-St|0)>>>0){if(U=Ge+St|0,Ge>>>0>=U>>>0)return pi=0,B=Il,pi|0;X=o[Ge+24>>2]|0,y=o[Ge+12>>2]|0;do if((y|0)==(Ge|0)){if(p=Ge+20|0,y=o[p>>2]|0,!y&&(p=Ge+16|0,y=o[p>>2]|0,!y)){y=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0}else pi=o[Ge+8>>2]|0,o[pi+12>>2]=y,o[y+8>>2]=pi;while(!1);do if(X){if(p=o[Ge+28>>2]|0,w=11436+(p<<2)|0,(Ge|0)==(o[w>>2]|0)){if(o[w>>2]=y,!y){G=Xe&~(1<>2]|0)!=(Ge|0)&1)<<2)>>2]=y,!y){G=Xe;break}o[y+24>>2]=X,p=o[Ge+16>>2]|0,p|0&&(o[y+16>>2]=p,o[p+24>>2]=y),p=o[Ge+20>>2]|0,p&&(o[y+20>>2]=p,o[p+24>>2]=y),G=Xe}else G=Xe;while(!1);do if(le>>>0>=16){if(o[Ge+4>>2]=St|3,o[U+4>>2]=le|1,o[U+le>>2]=le,y=le>>>3,le>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=U,o[y+12>>2]=U,o[U+8>>2]=y,o[U+12>>2]=w;break}if(y=le>>>8,y?le>>>0>16777215?y=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(Eo|ss|y)+(pi<>>15)|0,y=le>>>(y+7|0)&1|y<<1):y=0,w=11436+(y<<2)|0,o[U+28>>2]=y,p=U+16|0,o[p+4>>2]=0,o[p>>2]=0,p=1<>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}for(p=le<<((y|0)==31?0:25-(y>>>1)|0),w=o[w>>2]|0;;){if((o[w+4>>2]&-8|0)==(le|0)){ss=97;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=96;break}}if((ss|0)==96){o[G>>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}else if((ss|0)==97){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=U,o[ss>>2]=U,o[U+8>>2]=pi,o[U+12>>2]=w,o[U+24>>2]=0;break}}else pi=le+St|0,o[Ge+4>>2]=pi|3,pi=Ge+pi+4|0,o[pi>>2]=o[pi>>2]|1;while(!1);return pi=Ge+8|0,B=Il,pi|0}else rr=St}else rr=St;else rr=-1;while(!1);if(w=o[2785]|0,w>>>0>=rr>>>0)return y=w-rr|0,p=o[2788]|0,y>>>0>15?(pi=p+rr|0,o[2788]=pi,o[2785]=y,o[pi+4>>2]=y|1,o[pi+y>>2]=y,o[p+4>>2]=rr|3):(o[2785]=0,o[2788]=0,o[p+4>>2]=w|3,pi=p+w+4|0,o[pi>>2]=o[pi>>2]|1),pi=p+8|0,B=Il,pi|0;if(le=o[2786]|0,le>>>0>rr>>>0)return Eo=le-rr|0,o[2786]=Eo,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=Eo|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=Il,pi|0;if(o[2901]|0?p=o[2903]|0:(o[2903]=4096,o[2902]=4096,o[2904]=-1,o[2905]=-1,o[2906]=0,o[2894]=0,p=an&-16^1431655768,o[an>>2]=p,o[2901]=p,p=4096),Ge=rr+48|0,Xe=rr+47|0,U=p+Xe|0,X=0-p|0,St=U&X,St>>>0<=rr>>>0||(p=o[2893]|0,p|0&&(ht=o[2891]|0,an=ht+St|0,an>>>0<=ht>>>0|an>>>0>p>>>0)))return pi=0,B=Il,pi|0;e:do if(o[2894]&4)y=0,ss=133;else{w=o[2789]|0;t:do if(w){for(G=11580;p=o[G>>2]|0,!(p>>>0<=w>>>0&&(Un=G+4|0,(p+(o[Un>>2]|0)|0)>>>0>w>>>0));)if(p=o[G+8>>2]|0,p)G=p;else{ss=118;break t}if(y=U-le&X,y>>>0<2147483647)if(p=VB(y|0)|0,(p|0)==((o[G>>2]|0)+(o[Un>>2]|0)|0)){if((p|0)!=-1){le=y,U=p,ss=135;break e}}else G=p,ss=126;else y=0}else ss=118;while(!1);do if((ss|0)==118)if(w=VB(0)|0,(w|0)!=-1&&(y=w,Ks=o[2902]|0,zi=Ks+-1|0,y=(zi&y|0?(zi+y&0-Ks)-y|0:0)+St|0,Ks=o[2891]|0,zi=y+Ks|0,y>>>0>rr>>>0&y>>>0<2147483647)){if(Un=o[2893]|0,Un|0&&zi>>>0<=Ks>>>0|zi>>>0>Un>>>0){y=0;break}if(p=VB(y|0)|0,(p|0)==(w|0)){le=y,U=w,ss=135;break e}else G=p,ss=126}else y=0;while(!1);do if((ss|0)==126){if(w=0-y|0,!(Ge>>>0>y>>>0&(y>>>0<2147483647&(G|0)!=-1)))if((G|0)==-1){y=0;break}else{le=y,U=G,ss=135;break e}if(p=o[2903]|0,p=Xe-y+p&0-p,p>>>0>=2147483647){le=y,U=G,ss=135;break e}if((VB(p|0)|0)==-1){VB(w|0)|0,y=0;break}else{le=p+y|0,U=G,ss=135;break e}}while(!1);o[2894]=o[2894]|4,ss=133}while(!1);if((ss|0)==133&&St>>>0<2147483647&&(Eo=VB(St|0)|0,Un=VB(0)|0,Ds=Un-Eo|0,Si=Ds>>>0>(rr+40|0)>>>0,!((Eo|0)==-1|Si^1|Eo>>>0>>0&((Eo|0)!=-1&(Un|0)!=-1)^1))&&(le=Si?Ds:y,U=Eo,ss=135),(ss|0)==135){y=(o[2891]|0)+le|0,o[2891]=y,y>>>0>(o[2892]|0)>>>0&&(o[2892]=y),Xe=o[2789]|0;do if(Xe){for(y=11580;;){if(p=o[y>>2]|0,w=y+4|0,G=o[w>>2]|0,(U|0)==(p+G|0)){ss=145;break}if(X=o[y+8>>2]|0,X)y=X;else break}if((ss|0)==145&&!(o[y+12>>2]&8|0)&&Xe>>>0>>0&Xe>>>0>=p>>>0){o[w>>2]=G+le,pi=Xe+8|0,pi=pi&7|0?0-pi&7:0,ss=Xe+pi|0,pi=(o[2786]|0)+(le-pi)|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905];break}for(U>>>0<(o[2787]|0)>>>0&&(o[2787]=U),w=U+le|0,y=11580;;){if((o[y>>2]|0)==(w|0)){ss=153;break}if(p=o[y+8>>2]|0,p)y=p;else break}if((ss|0)==153&&!(o[y+12>>2]&8|0)){o[y>>2]=U,ht=y+4|0,o[ht>>2]=(o[ht>>2]|0)+le,ht=U+8|0,ht=U+(ht&7|0?0-ht&7:0)|0,y=w+8|0,y=w+(y&7|0?0-y&7:0)|0,St=ht+rr|0,Ge=y-ht-rr|0,o[ht+4>>2]=rr|3;do if((y|0)!=(Xe|0)){if((y|0)==(o[2788]|0)){pi=(o[2785]|0)+Ge|0,o[2785]=pi,o[2788]=St,o[St+4>>2]=pi|1,o[St+pi>>2]=pi;break}if(p=o[y+4>>2]|0,(p&3|0)==1){le=p&-8,G=p>>>3;e:do if(p>>>0<256)if(p=o[y+8>>2]|0,w=o[y+12>>2]|0,(w|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=w,o[w+8>>2]=p;break}else{U=o[y+24>>2]|0,p=o[y+12>>2]|0;do if((p|0)==(y|0)){if(G=y+16|0,w=G+4|0,p=o[w>>2]|0,!p)if(p=o[G>>2]|0,p)w=G;else{p=0;break}for(;;){if(G=p+20|0,X=o[G>>2]|0,X|0){p=X,w=G;continue}if(G=p+16|0,X=o[G>>2]|0,X)p=X,w=G;else break}o[w>>2]=0}else pi=o[y+8>>2]|0,o[pi+12>>2]=p,o[p+8>>2]=pi;while(!1);if(!U)break;w=o[y+28>>2]|0,G=11436+(w<<2)|0;do if((y|0)!=(o[G>>2]|0)){if(o[U+16+(((o[U+16>>2]|0)!=(y|0)&1)<<2)>>2]=p,!p)break e}else{if(o[G>>2]=p,p|0)break;o[2784]=o[2784]&~(1<>2]=U,w=y+16|0,G=o[w>>2]|0,G|0&&(o[p+16>>2]=G,o[G+24>>2]=p),w=o[w+4>>2]|0,!w)break;o[p+20>>2]=w,o[w+24>>2]=p}while(!1);y=y+le|0,X=le+Ge|0}else X=Ge;if(y=y+4|0,o[y>>2]=o[y>>2]&-2,o[St+4>>2]=X|1,o[St+X>>2]=X,y=X>>>3,X>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=St,o[y+12>>2]=St,o[St+8>>2]=y,o[St+12>>2]=w;break}y=X>>>8;do if(!y)y=0;else{if(X>>>0>16777215){y=31;break}ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(Eo|ss|y)+(pi<>>15)|0,y=X>>>(y+7|0)&1|y<<1}while(!1);if(G=11436+(y<<2)|0,o[St+28>>2]=y,p=St+16|0,o[p+4>>2]=0,o[p>>2]=0,p=o[2784]|0,w=1<>2]=St,o[St+24>>2]=G,o[St+12>>2]=St,o[St+8>>2]=St;break}for(p=X<<((y|0)==31?0:25-(y>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(X|0)){ss=194;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=193;break}}if((ss|0)==193){o[G>>2]=St,o[St+24>>2]=w,o[St+12>>2]=St,o[St+8>>2]=St;break}else if((ss|0)==194){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=St,o[ss>>2]=St,o[St+8>>2]=pi,o[St+12>>2]=w,o[St+24>>2]=0;break}}else pi=(o[2786]|0)+Ge|0,o[2786]=pi,o[2789]=St,o[St+4>>2]=pi|1;while(!1);return pi=ht+8|0,B=Il,pi|0}for(y=11580;p=o[y>>2]|0,!(p>>>0<=Xe>>>0&&(pi=p+(o[y+4>>2]|0)|0,pi>>>0>Xe>>>0));)y=o[y+8>>2]|0;X=pi+-47|0,p=X+8|0,p=X+(p&7|0?0-p&7:0)|0,X=Xe+16|0,p=p>>>0>>0?Xe:p,y=p+8|0,w=U+8|0,w=w&7|0?0-w&7:0,ss=U+w|0,w=le+-40-w|0,o[2789]=ss,o[2786]=w,o[ss+4>>2]=w|1,o[ss+w+4>>2]=40,o[2790]=o[2905],w=p+4|0,o[w>>2]=27,o[y>>2]=o[2895],o[y+4>>2]=o[2896],o[y+8>>2]=o[2897],o[y+12>>2]=o[2898],o[2895]=U,o[2896]=le,o[2898]=0,o[2897]=y,y=p+24|0;do ss=y,y=y+4|0,o[y>>2]=7;while((ss+8|0)>>>0>>0);if((p|0)!=(Xe|0)){if(U=p-Xe|0,o[w>>2]=o[w>>2]&-2,o[Xe+4>>2]=U|1,o[p>>2]=U,y=U>>>3,U>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=Xe,o[y+12>>2]=Xe,o[Xe+8>>2]=y,o[Xe+12>>2]=w;break}if(y=U>>>8,y?U>>>0>16777215?w=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,w=14-(Eo|ss|w)+(pi<>>15)|0,w=U>>>(w+7|0)&1|w<<1):w=0,G=11436+(w<<2)|0,o[Xe+28>>2]=w,o[Xe+20>>2]=0,o[X>>2]=0,y=o[2784]|0,p=1<>2]=Xe,o[Xe+24>>2]=G,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}for(p=U<<((w|0)==31?0:25-(w>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(U|0)){ss=216;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=215;break}}if((ss|0)==215){o[G>>2]=Xe,o[Xe+24>>2]=w,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}else if((ss|0)==216){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=Xe,o[ss>>2]=Xe,o[Xe+8>>2]=pi,o[Xe+12>>2]=w,o[Xe+24>>2]=0;break}}}else{pi=o[2787]|0,(pi|0)==0|U>>>0>>0&&(o[2787]=U),o[2895]=U,o[2896]=le,o[2898]=0,o[2792]=o[2901],o[2791]=-1,y=0;do pi=11172+(y<<1<<2)|0,o[pi+12>>2]=pi,o[pi+8>>2]=pi,y=y+1|0;while((y|0)!=32);pi=U+8|0,pi=pi&7|0?0-pi&7:0,ss=U+pi|0,pi=le+-40-pi|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905]}while(!1);if(y=o[2786]|0,y>>>0>rr>>>0)return Eo=y-rr|0,o[2786]=Eo,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=Eo|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=Il,pi|0}return o[(uQ()|0)>>2]=12,pi=0,B=Il,pi|0}function die(p){p=p|0;var y=0,w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0;if(p){w=p+-8|0,X=o[2787]|0,p=o[p+-4>>2]|0,y=p&-8,Xe=w+y|0;do if(p&1)Ge=w,le=w;else{if(G=o[w>>2]|0,!(p&3)||(le=w+(0-G)|0,U=G+y|0,le>>>0>>0))return;if((le|0)==(o[2788]|0)){if(p=Xe+4|0,y=o[p>>2]|0,(y&3|0)!=3){Ge=le,y=U;break}o[2785]=U,o[p>>2]=y&-2,o[le+4>>2]=U|1,o[le+U>>2]=U;return}if(w=G>>>3,G>>>0<256)if(p=o[le+8>>2]|0,y=o[le+12>>2]|0,(y|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=y,o[y+8>>2]=p,Ge=le,y=U;break}X=o[le+24>>2]|0,p=o[le+12>>2]|0;do if((p|0)==(le|0)){if(w=le+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{p=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0}else Ge=o[le+8>>2]|0,o[Ge+12>>2]=p,o[p+8>>2]=Ge;while(!1);if(X){if(y=o[le+28>>2]|0,w=11436+(y<<2)|0,(le|0)==(o[w>>2]|0)){if(o[w>>2]=p,!p){o[2784]=o[2784]&~(1<>2]|0)!=(le|0)&1)<<2)>>2]=p,!p){Ge=le,y=U;break}o[p+24>>2]=X,y=le+16|0,w=o[y>>2]|0,w|0&&(o[p+16>>2]=w,o[w+24>>2]=p),y=o[y+4>>2]|0,y?(o[p+20>>2]=y,o[y+24>>2]=p,Ge=le,y=U):(Ge=le,y=U)}else Ge=le,y=U}while(!1);if(!(le>>>0>=Xe>>>0)&&(p=Xe+4|0,G=o[p>>2]|0,!!(G&1))){if(G&2)o[p>>2]=G&-2,o[Ge+4>>2]=y|1,o[le+y>>2]=y,X=y;else{if(p=o[2788]|0,(Xe|0)==(o[2789]|0)){if(Xe=(o[2786]|0)+y|0,o[2786]=Xe,o[2789]=Ge,o[Ge+4>>2]=Xe|1,(Ge|0)!=(p|0))return;o[2788]=0,o[2785]=0;return}if((Xe|0)==(p|0)){Xe=(o[2785]|0)+y|0,o[2785]=Xe,o[2788]=le,o[Ge+4>>2]=Xe|1,o[le+Xe>>2]=Xe;return}X=(G&-8)+y|0,w=G>>>3;do if(G>>>0<256)if(y=o[Xe+8>>2]|0,p=o[Xe+12>>2]|0,(p|0)==(y|0)){o[2783]=o[2783]&~(1<>2]=p,o[p+8>>2]=y;break}else{U=o[Xe+24>>2]|0,p=o[Xe+12>>2]|0;do if((p|0)==(Xe|0)){if(w=Xe+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{w=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0,w=p}else w=o[Xe+8>>2]|0,o[w+12>>2]=p,o[p+8>>2]=w,w=p;while(!1);if(U|0){if(p=o[Xe+28>>2]|0,y=11436+(p<<2)|0,(Xe|0)==(o[y>>2]|0)){if(o[y>>2]=w,!w){o[2784]=o[2784]&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=U,p=Xe+16|0,y=o[p>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),p=o[p+4>>2]|0,p|0&&(o[w+20>>2]=p,o[p+24>>2]=w)}}while(!1);if(o[Ge+4>>2]=X|1,o[le+X>>2]=X,(Ge|0)==(o[2788]|0)){o[2785]=X;return}}if(p=X>>>3,X>>>0<256){w=11172+(p<<1<<2)|0,y=o[2783]|0,p=1<>2]|0):(o[2783]=y|p,p=w,y=w+8|0),o[y>>2]=Ge,o[p+12>>2]=Ge,o[Ge+8>>2]=p,o[Ge+12>>2]=w;return}p=X>>>8,p?X>>>0>16777215?p=31:(le=(p+1048320|0)>>>16&8,Xe=p<>>16&4,Xe=Xe<>>16&2,p=14-(U|le|p)+(Xe<

>>15)|0,p=X>>>(p+7|0)&1|p<<1):p=0,G=11436+(p<<2)|0,o[Ge+28>>2]=p,o[Ge+20>>2]=0,o[Ge+16>>2]=0,y=o[2784]|0,w=1<>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(X|0)){p=73;break}if(G=w+16+(y>>>31<<2)|0,p=o[G>>2]|0,p)y=y<<1,w=p;else{p=72;break}}if((p|0)==72){o[G>>2]=Ge,o[Ge+24>>2]=w,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;break}else if((p|0)==73){le=w+8|0,Xe=o[le>>2]|0,o[Xe+12>>2]=Ge,o[le>>2]=Ge,o[Ge+8>>2]=Xe,o[Ge+12>>2]=w,o[Ge+24>>2]=0;break}}else o[2784]=y|w,o[G>>2]=Ge,o[Ge+24>>2]=G,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;while(!1);if(Xe=(o[2791]|0)+-1|0,o[2791]=Xe,!Xe)p=11588;else return;for(;p=o[p>>2]|0,p;)p=p+8|0;o[2791]=-1}}}function pde(){return 11628}function wU(p){p=p|0;var y=0,w=0;return y=B,B=B+16|0,w=y,o[w>>2]=Bz(o[p+60>>2]|0)|0,p=fie(Xs(6,w|0)|0)|0,B=y,p|0}function pie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0;rr=B,B=B+48|0,St=rr+16|0,U=rr,X=rr+32|0,Ge=p+28|0,G=o[Ge>>2]|0,o[X>>2]=G,Xe=p+20|0,G=(o[Xe>>2]|0)-G|0,o[X+4>>2]=G,o[X+8>>2]=y,o[X+12>>2]=w,G=G+w|0,le=p+60|0,o[U>>2]=o[le>>2],o[U+4>>2]=X,o[U+8>>2]=2,U=fie(Ma(146,U|0)|0)|0;e:do if((G|0)!=(U|0)){for(y=2;!((U|0)<0);)if(G=G-U|0,Ks=o[X+4>>2]|0,an=U>>>0>Ks>>>0,X=an?X+8|0:X,y=(an<<31>>31)+y|0,Ks=U-(an?Ks:0)|0,o[X>>2]=(o[X>>2]|0)+Ks,an=X+4|0,o[an>>2]=(o[an>>2]|0)-Ks,o[St>>2]=o[le>>2],o[St+4>>2]=X,o[St+8>>2]=y,U=fie(Ma(146,St|0)|0)|0,(G|0)==(U|0)){ht=3;break e}o[p+16>>2]=0,o[Ge>>2]=0,o[Xe>>2]=0,o[p>>2]=o[p>>2]|32,(y|0)==2?w=0:w=w-(o[X+4>>2]|0)|0}else ht=3;while(!1);return(ht|0)==3&&(Ks=o[p+44>>2]|0,o[p+16>>2]=Ks+(o[p+48>>2]|0),o[Ge>>2]=Ks,o[Xe>>2]=Ks),B=rr,w|0}function WWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;return X=B,B=B+32|0,U=X,G=X+20|0,o[U>>2]=o[p+60>>2],o[U+4>>2]=0,o[U+8>>2]=y,o[U+12>>2]=G,o[U+16>>2]=w,(fie(Gs(140,U|0)|0)|0)<0?(o[G>>2]=-1,p=-1):p=o[G>>2]|0,B=X,p|0}function fie(p){return p=p|0,p>>>0>4294963200&&(o[(uQ()|0)>>2]=0-p,p=-1),p|0}function uQ(){return(lEe()|0)+64|0}function lEe(){return Iie()|0}function Iie(){return 2084}function Bz(p){return p=p|0,p|0}function uEe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;return X=B,B=B+32|0,G=X,o[p+36>>2]=1,!(o[p>>2]&64|0)&&(o[G>>2]=o[p+60>>2],o[G+4>>2]=21523,o[G+8>>2]=X+16,ZA(54,G|0)|0)&&(n[p+75>>0]=-1),G=pie(p,y,w)|0,B=X,G|0}function h$e(p,y){p=p|0,y=y|0;var w=0,G=0;if(w=n[p>>0]|0,G=n[y>>0]|0,!(w<<24>>24)||w<<24>>24!=G<<24>>24)p=G;else{do p=p+1|0,y=y+1|0,w=n[p>>0]|0,G=n[y>>0]|0;while(!(!(w<<24>>24)||w<<24>>24!=G<<24>>24));p=G}return(w&255)-(p&255)|0}function e9e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0;e:do if(!w)p=0;else{for(;G=n[p>>0]|0,X=n[y>>0]|0,G<<24>>24==X<<24>>24;)if(w=w+-1|0,w)p=p+1|0,y=y+1|0;else{p=0;break e}p=(G&255)-(X&255)|0}while(!1);return p|0}function fde(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0;Un=B,B=B+224|0,ht=Un+120|0,rr=Un+80|0,Ks=Un,zi=Un+136|0,G=rr,X=G+40|0;do o[G>>2]=0,G=G+4|0;while((G|0)<(X|0));return o[ht>>2]=o[w>>2],(KA(0,y,ht,Ks,rr)|0)<0?w=-1:((o[p+76>>2]|0)>-1?an=hie(p)|0:an=0,w=o[p>>2]|0,St=w&32,(n[p+74>>0]|0)<1&&(o[p>>2]=w&-33),G=p+48|0,o[G>>2]|0?w=KA(p,y,ht,Ks,rr)|0:(X=p+44|0,U=o[X>>2]|0,o[X>>2]=zi,le=p+28|0,o[le>>2]=zi,Ge=p+20|0,o[Ge>>2]=zi,o[G>>2]=80,Xe=p+16|0,o[Xe>>2]=zi+80,w=KA(p,y,ht,Ks,rr)|0,U&&(r9[o[p+36>>2]&7](p,0,0)|0,w=o[Ge>>2]|0?w:-1,o[X>>2]=U,o[G>>2]=0,o[Xe>>2]=0,o[le>>2]=0,o[Ge>>2]=0)),G=o[p>>2]|0,o[p>>2]=G|St,an|0&&m$e(p),w=G&32|0?-1:w),B=Un,w|0}function KA(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,Eo=0,ss=0,pi=0,Il=0,gu=0,dl=0,Tc=0,wg=0,kg=0,Tg=0;Tg=B,B=B+64|0,dl=Tg+16|0,Tc=Tg,Il=Tg+24|0,wg=Tg+8|0,kg=Tg+20|0,o[dl>>2]=y,Eo=(p|0)!=0,ss=Il+40|0,pi=ss,Il=Il+39|0,gu=wg+4|0,le=0,U=0,ht=0;e:for(;;){do if((U|0)>-1)if((le|0)>(2147483647-U|0)){o[(uQ()|0)>>2]=75,U=-1;break}else{U=le+U|0;break}while(!1);if(le=n[y>>0]|0,le<<24>>24)Ge=y;else{Si=87;break}t:for(;;){switch(le<<24>>24){case 37:{le=Ge,Si=9;break t}case 0:{le=Ge;break t}default:}Ds=Ge+1|0,o[dl>>2]=Ds,le=n[Ds>>0]|0,Ge=Ds}t:do if((Si|0)==9)for(;;){if(Si=0,(n[Ge+1>>0]|0)!=37)break t;if(le=le+1|0,Ge=Ge+2|0,o[dl>>2]=Ge,(n[Ge>>0]|0)==37)Si=9;else break}while(!1);if(le=le-y|0,Eo&&l0(p,y,le),le|0){y=Ge;continue}Xe=Ge+1|0,le=(n[Xe>>0]|0)+-48|0,le>>>0<10?(Ds=(n[Ge+2>>0]|0)==36,Un=Ds?le:-1,ht=Ds?1:ht,Xe=Ds?Ge+3|0:Xe):Un=-1,o[dl>>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0;t:do if(Ge>>>0<32)for(St=0,rr=le;;){if(le=1<>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0,Ge>>>0>=32)break;rr=le}else St=0;while(!1);if(le<<24>>24==42){if(Ge=Xe+1|0,le=(n[Ge>>0]|0)+-48|0,le>>>0<10&&(n[Xe+2>>0]|0)==36)o[X+(le<<2)>>2]=10,le=o[G+((n[Ge>>0]|0)+-48<<3)>>2]|0,ht=1,Xe=Xe+3|0;else{if(ht|0){U=-1;break}Eo?(ht=(o[w>>2]|0)+3&-4,le=o[ht>>2]|0,o[w>>2]=ht+4,ht=0,Xe=Ge):(le=0,ht=0,Xe=Ge)}o[dl>>2]=Xe,Ds=(le|0)<0,le=Ds?0-le|0:le,St=Ds?St|8192:St}else{if(le=Ide(dl)|0,(le|0)<0){U=-1;break}Xe=o[dl>>2]|0}do if((n[Xe>>0]|0)==46){if((n[Xe+1>>0]|0)!=42){o[dl>>2]=Xe+1,Ge=Ide(dl)|0,Xe=o[dl>>2]|0;break}if(rr=Xe+2|0,Ge=(n[rr>>0]|0)+-48|0,Ge>>>0<10&&(n[Xe+3>>0]|0)==36){o[X+(Ge<<2)>>2]=10,Ge=o[G+((n[rr>>0]|0)+-48<<3)>>2]|0,Xe=Xe+4|0,o[dl>>2]=Xe;break}if(ht|0){U=-1;break e}Eo?(Ds=(o[w>>2]|0)+3&-4,Ge=o[Ds>>2]|0,o[w>>2]=Ds+4):Ge=0,o[dl>>2]=rr,Xe=rr}else Ge=-1;while(!1);for(zi=0;;){if(((n[Xe>>0]|0)+-65|0)>>>0>57){U=-1;break e}if(Ds=Xe+1|0,o[dl>>2]=Ds,rr=n[(n[Xe>>0]|0)+-65+(5178+(zi*58|0))>>0]|0,an=rr&255,(an+-1|0)>>>0<8)zi=an,Xe=Ds;else break}if(!(rr<<24>>24)){U=-1;break}Ks=(Un|0)>-1;do if(rr<<24>>24==19)if(Ks){U=-1;break e}else Si=49;else{if(Ks){o[X+(Un<<2)>>2]=an,Ks=G+(Un<<3)|0,Un=o[Ks+4>>2]|0,Si=Tc,o[Si>>2]=o[Ks>>2],o[Si+4>>2]=Un,Si=49;break}if(!Eo){U=0;break e}Py(Tc,an,w)}while(!1);if((Si|0)==49&&(Si=0,!Eo)){le=0,y=Ds;continue}Xe=n[Xe>>0]|0,Xe=(zi|0)!=0&(Xe&15|0)==3?Xe&-33:Xe,Ks=St&-65537,Un=St&8192|0?Ks:St;t:do switch(Xe|0){case 110:switch((zi&255)<<24>>24){case 0:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 1:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 2:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}case 3:{a[o[Tc>>2]>>1]=U,le=0,y=Ds;continue e}case 4:{n[o[Tc>>2]>>0]=U,le=0,y=Ds;continue e}case 6:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 7:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}default:{le=0,y=Ds;continue e}}case 112:{Xe=120,Ge=Ge>>>0>8?Ge:8,y=Un|8,Si=61;break}case 88:case 120:{y=Un,Si=61;break}case 111:{Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,an=t9e(y,Xe,ss)|0,Ks=pi-an|0,St=0,rr=5642,Ge=(Un&8|0)==0|(Ge|0)>(Ks|0)?Ge:Ks+1|0,Ks=Un,Si=67;break}case 105:case 100:if(Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,(Xe|0)<0){y=qT(0,0,y|0,Xe|0)|0,Xe=ze,St=Tc,o[St>>2]=y,o[St+4>>2]=Xe,St=1,rr=5642,Si=66;break t}else{St=(Un&2049|0)!=0&1,rr=Un&2048|0?5643:Un&1|0?5644:5642,Si=66;break t}case 117:{Xe=Tc,St=0,rr=5642,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,Si=66;break}case 99:{n[Il>>0]=o[Tc>>2],y=Il,St=0,rr=5642,an=ss,Xe=1,Ge=Ks;break}case 109:{Xe=OWt(o[(uQ()|0)>>2]|0)|0,Si=71;break}case 115:{Xe=o[Tc>>2]|0,Xe=Xe|0?Xe:5652,Si=71;break}case 67:{o[wg>>2]=o[Tc>>2],o[gu>>2]=0,o[Tc>>2]=wg,an=-1,Xe=wg,Si=75;break}case 83:{y=o[Tc>>2]|0,Ge?(an=Ge,Xe=y,Si=75):(Cv(p,32,le,0,Un),y=0,Si=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{le=n9e(p,+C[Tc>>3],le,Ge,Un,Xe)|0,y=Ds;continue e}default:St=0,rr=5642,an=ss,Xe=Ge,Ge=Un}while(!1);t:do if((Si|0)==61)Un=Tc,zi=o[Un>>2]|0,Un=o[Un+4>>2]|0,an=gEe(zi,Un,ss,Xe&32)|0,rr=(y&8|0)==0|(zi|0)==0&(Un|0)==0,St=rr?0:2,rr=rr?5642:5642+(Xe>>4)|0,Ks=y,y=zi,Xe=Un,Si=67;else if((Si|0)==66)an=TU(y,Xe,ss)|0,Ks=Un,Si=67;else if((Si|0)==71)Si=0,Un=r9e(Xe,0,Ge)|0,zi=(Un|0)==0,y=Xe,St=0,rr=5642,an=zi?Xe+Ge|0:Un,Xe=zi?Ge:Un-Xe|0,Ge=Ks;else if((Si|0)==75){for(Si=0,rr=Xe,y=0,Ge=0;St=o[rr>>2]|0,!(!St||(Ge=AEe(kg,St)|0,(Ge|0)<0|Ge>>>0>(an-y|0)>>>0));)if(y=Ge+y|0,an>>>0>y>>>0)rr=rr+4|0;else break;if((Ge|0)<0){U=-1;break e}if(Cv(p,32,le,y,Un),!y)y=0,Si=84;else for(St=0;;){if(Ge=o[Xe>>2]|0,!Ge){Si=84;break t}if(Ge=AEe(kg,Ge)|0,St=Ge+St|0,(St|0)>(y|0)){Si=84;break t}if(l0(p,kg,Ge),St>>>0>=y>>>0){Si=84;break}else Xe=Xe+4|0}}while(!1);if((Si|0)==67)Si=0,Xe=(y|0)!=0|(Xe|0)!=0,Un=(Ge|0)!=0|Xe,Xe=((Xe^1)&1)+(pi-an)|0,y=Un?an:ss,an=ss,Xe=Un?(Ge|0)>(Xe|0)?Ge:Xe:Ge,Ge=(Ge|0)>-1?Ks&-65537:Ks;else if((Si|0)==84){Si=0,Cv(p,32,le,y,Un^8192),le=(le|0)>(y|0)?le:y,y=Ds;continue}zi=an-y|0,Ks=(Xe|0)<(zi|0)?zi:Xe,Un=Ks+St|0,le=(le|0)<(Un|0)?Un:le,Cv(p,32,le,Un,Ge),l0(p,rr,St),Cv(p,48,le,Un,Ge^65536),Cv(p,48,Ks,zi,0),l0(p,y,zi),Cv(p,32,le,Un,Ge^8192),y=Ds}e:do if((Si|0)==87&&!p)if(!ht)U=0;else{for(U=1;y=o[X+(U<<2)>>2]|0,!!y;)if(Py(G+(U<<3)|0,y,w),U=U+1|0,(U|0)>=10){U=1;break e}for(;;){if(o[X+(U<<2)>>2]|0){U=-1;break e}if(U=U+1|0,(U|0)>=10){U=1;break}}}while(!1);return B=Tg,U|0}function hie(p){return p=p|0,0}function m$e(p){p=p|0}function l0(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]&32||Cie(y,w,p)|0}function Ide(p){p=p|0;var y=0,w=0,G=0;if(w=o[p>>2]|0,G=(n[w>>0]|0)+-48|0,G>>>0<10){y=0;do y=G+(y*10|0)|0,w=w+1|0,o[p>>2]=w,G=(n[w>>0]|0)+-48|0;while(G>>>0<10)}else y=0;return y|0}function Py(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;e:do if(y>>>0<=20)do switch(y|0){case 9:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,o[p>>2]=y;break e}case 10:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=((y|0)<0)<<31>>31;break e}case 11:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=0;break e}case 12:{G=(o[w>>2]|0)+7&-8,y=G,X=o[y>>2]|0,y=o[y+4>>2]|0,o[w>>2]=G+8,G=p,o[G>>2]=X,o[G+4>>2]=y;break e}case 13:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,G=(G&65535)<<16>>16,X=p,o[X>>2]=G,o[X+4>>2]=((G|0)<0)<<31>>31;break e}case 14:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,X=p,o[X>>2]=G&65535,o[X+4>>2]=0;break e}case 15:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,G=(G&255)<<24>>24,X=p,o[X>>2]=G,o[X+4>>2]=((G|0)<0)<<31>>31;break e}case 16:{X=(o[w>>2]|0)+3&-4,G=o[X>>2]|0,o[w>>2]=X+4,X=p,o[X>>2]=G&255,o[X+4>>2]=0;break e}case 17:{X=(o[w>>2]|0)+7&-8,U=+C[X>>3],o[w>>2]=X+8,C[p>>3]=U;break e}case 18:{X=(o[w>>2]|0)+7&-8,U=+C[X>>3],o[w>>2]=X+8,C[p>>3]=U;break e}default:break e}while(!1);while(!1)}function gEe(p,y,w,G){if(p=p|0,y=y|0,w=w|0,G=G|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=l[5694+(p&15)>>0]|0|G,p=O3(p|0,y|0,4)|0,y=ze;while(!((p|0)==0&(y|0)==0));return w|0}function t9e(p,y,w){if(p=p|0,y=y|0,w=w|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=p&7|48,p=O3(p|0,y|0,3)|0,y=ze;while(!((p|0)==0&(y|0)==0));return w|0}function TU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if(y>>>0>0|(y|0)==0&p>>>0>4294967295){for(;G=DU(p|0,y|0,10,0)|0,w=w+-1|0,n[w>>0]=G&255|48,G=p,p=P3(p|0,y|0,10,0)|0,y>>>0>9|(y|0)==9&G>>>0>4294967295;)y=ze;y=p}else y=p;if(y)for(;w=w+-1|0,n[w>>0]=(y>>>0)%10|0|48,!(y>>>0<10);)y=(y>>>0)/10|0;return w|0}function OWt(p){return p=p|0,IEe(p,o[(mie()|0)+188>>2]|0)|0}function r9e(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;U=y&255,G=(w|0)!=0;e:do if(G&(p&3|0)!=0)for(X=y&255;;){if((n[p>>0]|0)==X<<24>>24){le=6;break e}if(p=p+1|0,w=w+-1|0,G=(w|0)!=0,!(G&(p&3|0)!=0)){le=5;break}}else le=5;while(!1);(le|0)==5&&(G?le=6:w=0);e:do if((le|0)==6&&(X=y&255,(n[p>>0]|0)!=X<<24>>24)){G=cr(U,16843009)|0;t:do if(w>>>0>3){for(;U=o[p>>2]^G,!((U&-2139062144^-2139062144)&U+-16843009|0);)if(p=p+4|0,w=w+-4|0,w>>>0<=3){le=11;break t}}else le=11;while(!1);if((le|0)==11&&!w){w=0;break}for(;;){if((n[p>>0]|0)==X<<24>>24)break e;if(p=p+1|0,w=w+-1|0,!w){w=0;break}}}while(!1);return(w|0?p:0)|0}function Cv(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0;if(le=B,B=B+256|0,U=le,(w|0)>(G|0)&(X&73728|0)==0){if(X=w-G|0,Nz(U|0,y|0,(X>>>0<256?X:256)|0)|0,X>>>0>255){y=w-G|0;do l0(p,U,256),X=X+-256|0;while(X>>>0>255);X=y&255}l0(p,U,X)}B=le}function AEe(p,y){return p=p|0,y=y|0,p?p=C$e(p,y,0)|0:p=0,p|0}function n9e(p,y,w,G,X,U){p=p|0,y=+y,w=w|0,G=G|0,X=X|0,U=U|0;var le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,Eo=0,ss=0,pi=0,Il=0,gu=0,dl=0,Tc=0,wg=0,kg=0,Tg=0,im=0;im=B,B=B+560|0,Xe=im+8|0,Ds=im,Tg=im+524|0,kg=Tg,St=im+512|0,o[Ds>>2]=0,wg=St+12|0,dEe(y)|0,(ze|0)<0?(y=-y,dl=1,gu=5659):(dl=(X&2049|0)!=0&1,gu=X&2048|0?5662:X&1|0?5665:5660),dEe(y)|0,Tc=ze&2146435072;do if(Tc>>>0<2146435072|(Tc|0)==2146435072&!1){if(Ks=+pEe(y,Ds)*2,le=Ks!=0,le&&(o[Ds>>2]=(o[Ds>>2]|0)+-1),Eo=U|32,(Eo|0)==97){zi=U&32,an=zi|0?gu+9|0:gu,rr=dl|2,le=12-G|0;do if(G>>>0>11|(le|0)==0)y=Ks;else{y=8;do le=le+-1|0,y=y*16;while(le|0);if((n[an>>0]|0)==45){y=-(y+(-Ks-y));break}else{y=Ks+y-y;break}}while(!1);Ge=o[Ds>>2]|0,le=(Ge|0)<0?0-Ge|0:Ge,le=TU(le,((le|0)<0)<<31>>31,wg)|0,(le|0)==(wg|0)&&(le=St+11|0,n[le>>0]=48),n[le+-1>>0]=(Ge>>31&2)+43,ht=le+-2|0,n[ht>>0]=U+15,St=(G|0)<1,Xe=(X&8|0)==0,le=Tg;do Tc=~~y,Ge=le+1|0,n[le>>0]=l[5694+Tc>>0]|zi,y=(y-+(Tc|0))*16,(Ge-kg|0)==1&&!(Xe&(St&y==0))?(n[Ge>>0]=46,le=le+2|0):le=Ge;while(y!=0);Tc=le-kg|0,kg=wg-ht|0,wg=(G|0)!=0&(Tc+-2|0)<(G|0)?G+2|0:Tc,le=kg+rr+wg|0,Cv(p,32,w,le,X),l0(p,an,rr),Cv(p,48,w,le,X^65536),l0(p,Tg,Tc),Cv(p,48,wg-Tc|0,0,0),l0(p,ht,kg),Cv(p,32,w,le,X^8192);break}Ge=(G|0)<0?6:G,le?(le=(o[Ds>>2]|0)+-28|0,o[Ds>>2]=le,y=Ks*268435456):(y=Ks,le=o[Ds>>2]|0),Tc=(le|0)<0?Xe:Xe+288|0,Xe=Tc;do pi=~~y>>>0,o[Xe>>2]=pi,Xe=Xe+4|0,y=(y-+(pi>>>0))*1e9;while(y!=0);if((le|0)>0)for(St=Tc,rr=Xe;;){if(ht=(le|0)<29?le:29,le=rr+-4|0,le>>>0>=St>>>0){Xe=0;do ss=hEe(o[le>>2]|0,0,ht|0)|0,ss=Yg(ss|0,ze|0,Xe|0,0)|0,pi=ze,Si=DU(ss|0,pi|0,1e9,0)|0,o[le>>2]=Si,Xe=P3(ss|0,pi|0,1e9,0)|0,le=le+-4|0;while(le>>>0>=St>>>0);Xe&&(St=St+-4|0,o[St>>2]=Xe)}for(Xe=rr;!(Xe>>>0<=St>>>0);)if(le=Xe+-4|0,!(o[le>>2]|0))Xe=le;else break;if(le=(o[Ds>>2]|0)-ht|0,o[Ds>>2]=le,(le|0)>0)rr=Xe;else break}else St=Tc;if((le|0)<0){G=((Ge+25|0)/9|0)+1|0,Un=(Eo|0)==102;do{if(zi=0-le|0,zi=(zi|0)<9?zi:9,St>>>0>>0){ht=(1<>>zi,an=0,le=St;do pi=o[le>>2]|0,o[le>>2]=(pi>>>zi)+an,an=cr(pi&ht,rr)|0,le=le+4|0;while(le>>>0>>0);le=o[St>>2]|0?St:St+4|0,an?(o[Xe>>2]=an,St=le,le=Xe+4|0):(St=le,le=Xe)}else St=o[St>>2]|0?St:St+4|0,le=Xe;Xe=Un?Tc:St,Xe=(le-Xe>>2|0)>(G|0)?Xe+(G<<2)|0:le,le=(o[Ds>>2]|0)+zi|0,o[Ds>>2]=le}while((le|0)<0);le=St,G=Xe}else le=St,G=Xe;if(pi=Tc,le>>>0>>0){if(Xe=(pi-le>>2)*9|0,ht=o[le>>2]|0,ht>>>0>=10){St=10;do St=St*10|0,Xe=Xe+1|0;while(ht>>>0>=St>>>0)}}else Xe=0;if(Un=(Eo|0)==103,Si=(Ge|0)!=0,St=Ge-((Eo|0)!=102?Xe:0)+((Si&Un)<<31>>31)|0,(St|0)<(((G-pi>>2)*9|0)+-9|0)){if(St=St+9216|0,zi=Tc+4+(((St|0)/9|0)+-1024<<2)|0,St=((St|0)%9|0)+1|0,(St|0)<9){ht=10;do ht=ht*10|0,St=St+1|0;while((St|0)!=9)}else ht=10;if(rr=o[zi>>2]|0,an=(rr>>>0)%(ht>>>0)|0,St=(zi+4|0)==(G|0),St&(an|0)==0)St=zi;else if(Ks=((rr>>>0)/(ht>>>0)|0)&1|0?9007199254740994:9007199254740992,ss=(ht|0)/2|0,y=an>>>0>>0?.5:St&(an|0)==(ss|0)?1:1.5,dl&&(ss=(n[gu>>0]|0)==45,y=ss?-y:y,Ks=ss?-Ks:Ks),St=rr-an|0,o[zi>>2]=St,Ks+y!=Ks){if(ss=St+ht|0,o[zi>>2]=ss,ss>>>0>999999999)for(Xe=zi;St=Xe+-4|0,o[Xe>>2]=0,St>>>0>>0&&(le=le+-4|0,o[le>>2]=0),ss=(o[St>>2]|0)+1|0,o[St>>2]=ss,ss>>>0>999999999;)Xe=St;else St=zi;if(Xe=(pi-le>>2)*9|0,rr=o[le>>2]|0,rr>>>0>=10){ht=10;do ht=ht*10|0,Xe=Xe+1|0;while(rr>>>0>=ht>>>0)}}else St=zi;St=St+4|0,St=G>>>0>St>>>0?St:G,ss=le}else St=G,ss=le;for(Eo=St;;){if(Eo>>>0<=ss>>>0){Ds=0;break}if(le=Eo+-4|0,!(o[le>>2]|0))Eo=le;else{Ds=1;break}}G=0-Xe|0;do if(Un)if(le=((Si^1)&1)+Ge|0,(le|0)>(Xe|0)&(Xe|0)>-5?(ht=U+-1|0,Ge=le+-1-Xe|0):(ht=U+-2|0,Ge=le+-1|0),le=X&8,le)zi=le;else{if(Ds&&(Il=o[Eo+-4>>2]|0,(Il|0)!=0))if((Il>>>0)%10|0)St=0;else{St=0,le=10;do le=le*10|0,St=St+1|0;while(!((Il>>>0)%(le>>>0)|0|0))}else St=9;if(le=((Eo-pi>>2)*9|0)+-9|0,(ht|32|0)==102){zi=le-St|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}else{zi=le+Xe-St|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}}else ht=U,zi=X&8;while(!1);if(Un=Ge|zi,rr=(Un|0)!=0&1,an=(ht|32|0)==102,an)Si=0,le=(Xe|0)>0?Xe:0;else{if(le=(Xe|0)<0?G:Xe,le=TU(le,((le|0)<0)<<31>>31,wg)|0,St=wg,(St-le|0)<2)do le=le+-1|0,n[le>>0]=48;while((St-le|0)<2);n[le+-1>>0]=(Xe>>31&2)+43,le=le+-2|0,n[le>>0]=ht,Si=le,le=St-le|0}if(le=dl+1+Ge+rr+le|0,Cv(p,32,w,le,X),l0(p,gu,dl),Cv(p,48,w,le,X^65536),an){ht=ss>>>0>Tc>>>0?Tc:ss,zi=Tg+9|0,rr=zi,an=Tg+8|0,St=ht;do{if(Xe=TU(o[St>>2]|0,0,zi)|0,(St|0)==(ht|0))(Xe|0)==(zi|0)&&(n[an>>0]=48,Xe=an);else if(Xe>>>0>Tg>>>0){Nz(Tg|0,48,Xe-kg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>Tg>>>0)}l0(p,Xe,rr-Xe|0),St=St+4|0}while(St>>>0<=Tc>>>0);if(Un|0&&l0(p,5710,1),St>>>0>>0&(Ge|0)>0)for(;;){if(Xe=TU(o[St>>2]|0,0,zi)|0,Xe>>>0>Tg>>>0){Nz(Tg|0,48,Xe-kg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>Tg>>>0)}if(l0(p,Xe,(Ge|0)<9?Ge:9),St=St+4|0,Xe=Ge+-9|0,St>>>0>>0&(Ge|0)>9)Ge=Xe;else{Ge=Xe;break}}Cv(p,48,Ge+9|0,9,0)}else{if(Un=Ds?Eo:ss+4|0,(Ge|0)>-1){Ds=Tg+9|0,zi=(zi|0)==0,G=Ds,rr=0-kg|0,an=Tg+8|0,ht=ss;do{Xe=TU(o[ht>>2]|0,0,Ds)|0,(Xe|0)==(Ds|0)&&(n[an>>0]=48,Xe=an);do if((ht|0)==(ss|0)){if(St=Xe+1|0,l0(p,Xe,1),zi&(Ge|0)<1){Xe=St;break}l0(p,5710,1),Xe=St}else{if(Xe>>>0<=Tg>>>0)break;Nz(Tg|0,48,Xe+rr|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>Tg>>>0)}while(!1);kg=G-Xe|0,l0(p,Xe,(Ge|0)>(kg|0)?kg:Ge),Ge=Ge-kg|0,ht=ht+4|0}while(ht>>>0>>0&(Ge|0)>-1)}Cv(p,48,Ge+18|0,18,0),l0(p,Si,wg-Si|0)}Cv(p,32,w,le,X^8192)}else Tg=(U&32|0)!=0,le=dl+3|0,Cv(p,32,w,le,X&-65537),l0(p,gu,dl),l0(p,y!=y|!1?Tg?5686:5690:Tg?5678:5682,3),Cv(p,32,w,le,X^8192);while(!1);return B=im,((le|0)<(w|0)?w:le)|0}function dEe(p){p=+p;var y=0;return C[E>>3]=p,y=o[E>>2]|0,ze=o[E+4>>2]|0,y|0}function pEe(p,y){return p=+p,y=y|0,+ +fEe(p,y)}function fEe(p,y){p=+p,y=y|0;var w=0,G=0,X=0;switch(C[E>>3]=p,w=o[E>>2]|0,G=o[E+4>>2]|0,X=O3(w|0,G|0,52)|0,X&2047){case 0:{p!=0?(p=+fEe(p*18446744073709552e3,y),w=(o[y>>2]|0)+-64|0):w=0,o[y>>2]=w;break}case 2047:break;default:o[y>>2]=(X&2047)+-1022,o[E>>2]=w,o[E+4>>2]=G&-2146435073|1071644672,p=+C[E>>3]}return+p}function C$e(p,y,w){p=p|0,y=y|0,w=w|0;do if(p){if(y>>>0<128){n[p>>0]=y,p=1;break}if(!(o[o[(_$e()|0)+188>>2]>>2]|0))if((y&-128|0)==57216){n[p>>0]=y,p=1;break}else{o[(uQ()|0)>>2]=84,p=-1;break}if(y>>>0<2048){n[p>>0]=y>>>6|192,n[p+1>>0]=y&63|128,p=2;break}if(y>>>0<55296|(y&-8192|0)==57344){n[p>>0]=y>>>12|224,n[p+1>>0]=y>>>6&63|128,n[p+2>>0]=y&63|128,p=3;break}if((y+-65536|0)>>>0<1048576){n[p>>0]=y>>>18|240,n[p+1>>0]=y>>>12&63|128,n[p+2>>0]=y>>>6&63|128,n[p+3>>0]=y&63|128,p=4;break}else{o[(uQ()|0)>>2]=84,p=-1;break}}else p=1;while(!1);return p|0}function _$e(){return Iie()|0}function mie(){return Iie()|0}function IEe(p,y){p=p|0,y=y|0;var w=0,G=0;for(G=0;;){if((l[5712+G>>0]|0)==(p|0)){p=2;break}if(w=G+1|0,(w|0)==87){w=5800,G=87,p=5;break}else G=w}if((p|0)==2&&(G?(w=5800,p=5):w=5800),(p|0)==5)for(;;){do p=w,w=w+1|0;while(n[p>>0]|0);if(G=G+-1|0,G)p=5;else break}return Vx(w,o[y+20>>2]|0)|0}function Vx(p,y){return p=p|0,y=y|0,y$e(p,y)|0}function y$e(p,y){return p=p|0,y=y|0,y?y=PWt(o[y>>2]|0,o[y+4>>2]|0,p)|0:y=0,(y|0?y:p)|0}function PWt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0;an=(o[p>>2]|0)+1794895138|0,U=ZB(o[p+8>>2]|0,an)|0,G=ZB(o[p+12>>2]|0,an)|0,X=ZB(o[p+16>>2]|0,an)|0;e:do if(U>>>0>>2>>>0&&(rr=y-(U<<2)|0,G>>>0>>0&X>>>0>>0)&&!((X|G)&3|0)){for(rr=G>>>2,ht=X>>>2,St=0;;){if(Ge=U>>>1,Xe=St+Ge|0,le=Xe<<1,X=le+rr|0,G=ZB(o[p+(X<<2)>>2]|0,an)|0,X=ZB(o[p+(X+1<<2)>>2]|0,an)|0,!(X>>>0>>0&G>>>0<(y-X|0)>>>0)){G=0;break e}if(n[p+(X+G)>>0]|0){G=0;break e}if(G=h$e(w,p+X|0)|0,!G)break;if(G=(G|0)<0,(U|0)==1){G=0;break e}else St=G?St:Xe,U=G?Ge:U-Ge|0}G=le+ht|0,X=ZB(o[p+(G<<2)>>2]|0,an)|0,G=ZB(o[p+(G+1<<2)>>2]|0,an)|0,G>>>0>>0&X>>>0<(y-G|0)>>>0?G=n[p+(G+X)>>0]|0?0:p+G|0:G=0}else G=0;while(!1);return G|0}function ZB(p,y){p=p|0,y=y|0;var w=0;return w=M3(p|0)|0,(y|0?w:p)|0}function Cie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0,Ge=0;G=w+16|0,X=o[G>>2]|0,X?U=5:MWt(w)|0?G=0:(X=o[G>>2]|0,U=5);e:do if((U|0)==5){if(Ge=w+20|0,le=o[Ge>>2]|0,G=le,(X-le|0)>>>0>>0){G=r9[o[w+36>>2]&7](w,p,y)|0;break}t:do if((n[w+75>>0]|0)>-1){for(le=y;;){if(!le){U=0,X=p;break t}if(X=le+-1|0,(n[p+X>>0]|0)==10)break;le=X}if(G=r9[o[w+36>>2]&7](w,p,le)|0,G>>>0>>0)break e;U=le,X=p+le|0,y=y-le|0,G=o[Ge>>2]|0}else U=0,X=p;while(!1);Yd(G|0,X|0,y|0)|0,o[Ge>>2]=(o[Ge>>2]|0)+y,G=U+y|0}while(!1);return G|0}function MWt(p){p=p|0;var y=0,w=0;return y=p+74|0,w=n[y>>0]|0,n[y>>0]=w+255|w,y=o[p>>2]|0,y&8?(o[p>>2]=y|32,p=-1):(o[p+8>>2]=0,o[p+4>>2]=0,w=o[p+44>>2]|0,o[p+28>>2]=w,o[p+20>>2]=w,o[p+16>>2]=w+(o[p+48>>2]|0),p=0),p|0}function zs(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=yA(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=yA(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?y:p;break}else{p=p>2]=p,o[E>>2]|0|0}function RU(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=b$e(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=b$e(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?p:y;break}else{p=p>2]=p,o[E>>2]|0|0}function wz(p,y){p=ke(p),y=ke(y);var w=0,G=0,X=0,U=0,le=0,Ge=0,Xe=0,St=0;U=(I[E>>2]=p,o[E>>2]|0),Ge=(I[E>>2]=y,o[E>>2]|0),w=U>>>23&255,le=Ge>>>23&255,Xe=U&-2147483648,X=Ge<<1;e:do if(X|0&&!((w|0)==255|((hde(y)|0)&2147483647)>>>0>2139095040)){if(G=U<<1,G>>>0<=X>>>0)return y=ke(p*ke(0)),ke((G|0)==(X|0)?y:p);if(w)G=U&8388607|8388608;else{if(w=U<<9,(w|0)>-1){G=w,w=0;do w=w+-1|0,G=G<<1;while((G|0)>-1)}else w=0;G=U<<1-w}if(le)Ge=Ge&8388607|8388608;else{if(U=Ge<<9,(U|0)>-1){X=0;do X=X+-1|0,U=U<<1;while((U|0)>-1)}else X=0;le=X,Ge=Ge<<1-X}X=G-Ge|0,U=(X|0)>-1;t:do if((w|0)>(le|0)){for(;;){if(U)if(X)G=X;else break;if(G=G<<1,w=w+-1|0,X=G-Ge|0,U=(X|0)>-1,(w|0)<=(le|0))break t}y=ke(p*ke(0));break e}while(!1);if(U)if(X)G=X;else{y=ke(p*ke(0));break}if(G>>>0<8388608)do G=G<<1,w=w+-1|0;while(G>>>0<8388608);(w|0)>0?w=G+-8388608|w<<23:w=G>>>(1-w|0),y=(o[E>>2]=w|Xe,ke(I[E>>2]))}else St=3;while(!1);return(St|0)==3&&(y=ke(p*y),y=ke(y/y)),ke(y)}function hde(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function HWt(p,y){return p=p|0,y=y|0,fde(o[582]|0,p,y)|0}function me(p){p=p|0,Ko()}function Tz(p){p=p|0}function E$e(p,y){return p=p|0,y=y|0,0}function ua(p){return p=p|0,(S$e(p+4|0)|0)==-1?(VF[o[(o[p>>2]|0)+8>>2]&127](p),p=1):p=0,p|0}function S$e(p){p=p|0;var y=0;return y=o[p>>2]|0,o[p>>2]=y+-1,y+-1|0}function NU(p){p=p|0,ua(p)|0&&g_(p)}function g_(p){p=p|0;var y=0;y=p+8|0,o[y>>2]|0&&(S$e(y)|0)!=-1||VF[o[(o[p>>2]|0)+16>>2]&127](p)}function ju(p){p=p|0;var y=0;for(y=p|0?p:1;p=Aie(y)|0,!(p|0);){if(p=_ie()|0,!p){p=0;break}vEe[p&0]()}return p|0}function Rz(p){return p=p|0,ju(p)|0}function ti(p){p=p|0,die(p)}function Ow(p){p=p|0,(n[p+11>>0]|0)<0&&ti(o[p>>2]|0)}function _ie(){var p=0;return p=o[2923]|0,o[2923]=p+0,p|0}function W3(){}function qT(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,G=y-G-(w>>>0>p>>>0|0)>>>0,ze=G,p-w>>>0|0|0}function Yg(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,w=p+w>>>0,ze=y+G+(w>>>0

>>0|0)>>>0,w|0|0}function Nz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0,le=0;if(U=p+w|0,y=y&255,(w|0)>=67){for(;p&3;)n[p>>0]=y,p=p+1|0;for(G=U&-4|0,X=G-64|0,le=y|y<<8|y<<16|y<<24;(p|0)<=(X|0);)o[p>>2]=le,o[p+4>>2]=le,o[p+8>>2]=le,o[p+12>>2]=le,o[p+16>>2]=le,o[p+20>>2]=le,o[p+24>>2]=le,o[p+28>>2]=le,o[p+32>>2]=le,o[p+36>>2]=le,o[p+40>>2]=le,o[p+44>>2]=le,o[p+48>>2]=le,o[p+52>>2]=le,o[p+56>>2]=le,o[p+60>>2]=le,p=p+64|0;for(;(p|0)<(G|0);)o[p>>2]=le,p=p+4|0}for(;(p|0)<(U|0);)n[p>>0]=y,p=p+1|0;return U-w|0}function hEe(p,y,w){return p=p|0,y=y|0,w=w|0,(w|0)<32?(ze=y<>>32-w,p<>>w,p>>>w|(y&(1<>>w-32|0)}function Yd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,X=0,U=0;if((w|0)>=8192)return Hu(p|0,y|0,w|0)|0;if(U=p|0,X=p+w|0,(p&3)==(y&3)){for(;p&3;){if(!w)return U|0;n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0,w=w-1|0}for(w=X&-4|0,G=w-64|0;(p|0)<=(G|0);)o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2],o[p+16>>2]=o[y+16>>2],o[p+20>>2]=o[y+20>>2],o[p+24>>2]=o[y+24>>2],o[p+28>>2]=o[y+28>>2],o[p+32>>2]=o[y+32>>2],o[p+36>>2]=o[y+36>>2],o[p+40>>2]=o[y+40>>2],o[p+44>>2]=o[y+44>>2],o[p+48>>2]=o[y+48>>2],o[p+52>>2]=o[y+52>>2],o[p+56>>2]=o[y+56>>2],o[p+60>>2]=o[y+60>>2],p=p+64|0,y=y+64|0;for(;(p|0)<(w|0);)o[p>>2]=o[y>>2],p=p+4|0,y=y+4|0}else for(w=X-4|0;(p|0)<(w|0);)n[p>>0]=n[y>>0]|0,n[p+1>>0]=n[y+1>>0]|0,n[p+2>>0]=n[y+2>>0]|0,n[p+3>>0]=n[y+3>>0]|0,p=p+4|0,y=y+4|0;for(;(p|0)<(X|0);)n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0;return U|0}function LB(p){p=p|0;var y=0;return y=n[Q+(p&255)>>0]|0,(y|0)<8?y|0:(y=n[Q+(p>>8&255)>>0]|0,(y|0)<8?y+8|0:(y=n[Q+(p>>16&255)>>0]|0,(y|0)<8?y+16|0:(n[Q+(p>>>24)>>0]|0)+24|0))}function yh(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0;var U=0,le=0,Ge=0,Xe=0,St=0,ht=0,rr=0,an=0,Ks=0,zi=0;if(ht=p,Xe=y,St=Xe,le=w,an=G,Ge=an,!St)return U=(X|0)!=0,Ge?U?(o[X>>2]=p|0,o[X+4>>2]=y&0,an=0,X=0,ze=an,X|0):(an=0,X=0,ze=an,X|0):(U&&(o[X>>2]=(ht>>>0)%(le>>>0),o[X+4>>2]=0),an=0,X=(ht>>>0)/(le>>>0)>>>0,ze=an,X|0);U=(Ge|0)==0;do if(le){if(!U){if(U=(_n(Ge|0)|0)-(_n(St|0)|0)|0,U>>>0<=31){rr=U+1|0,Ge=31-U|0,y=U-31>>31,le=rr,p=ht>>>(rr>>>0)&y|St<>>(rr>>>0)&y,U=0,Ge=ht<>2]=p|0,o[X+4>>2]=Xe|y&0,an=0,X=0,ze=an,X|0):(an=0,X=0,ze=an,X|0)}if(U=le-1|0,U&le|0){Ge=(_n(le|0)|0)+33-(_n(St|0)|0)|0,zi=64-Ge|0,rr=32-Ge|0,Xe=rr>>31,Ks=Ge-32|0,y=Ks>>31,le=Ge,p=rr-1>>31&St>>>(Ks>>>0)|(St<>>(Ge>>>0))&y,y=y&St>>>(Ge>>>0),U=ht<>>(Ks>>>0))&Xe|ht<>31;break}return X|0&&(o[X>>2]=U&ht,o[X+4>>2]=0),(le|0)==1?(Ks=Xe|y&0,zi=p|0|0,ze=Ks,zi|0):(zi=LB(le|0)|0,Ks=St>>>(zi>>>0)|0,zi=St<<32-zi|ht>>>(zi>>>0)|0,ze=Ks,zi|0)}else{if(U)return X|0&&(o[X>>2]=(St>>>0)%(le>>>0),o[X+4>>2]=0),Ks=0,zi=(St>>>0)/(le>>>0)>>>0,ze=Ks,zi|0;if(!ht)return X|0&&(o[X>>2]=0,o[X+4>>2]=(St>>>0)%(Ge>>>0)),Ks=0,zi=(St>>>0)/(Ge>>>0)>>>0,ze=Ks,zi|0;if(U=Ge-1|0,!(U&Ge))return X|0&&(o[X>>2]=p|0,o[X+4>>2]=U&St|y&0),Ks=0,zi=St>>>((LB(Ge|0)|0)>>>0),ze=Ks,zi|0;if(U=(_n(Ge|0)|0)-(_n(St|0)|0)|0,U>>>0<=30){y=U+1|0,Ge=31-U|0,le=y,p=St<>>(y>>>0),y=St>>>(y>>>0),U=0,Ge=ht<>2]=p|0,o[X+4>>2]=Xe|y&0,Ks=0,zi=0,ze=Ks,zi|0):(Ks=0,zi=0,ze=Ks,zi|0)}while(!1);if(!le)St=Ge,Xe=0,Ge=0;else{rr=w|0|0,ht=an|G&0,St=Yg(rr|0,ht|0,-1,-1)|0,w=ze,Xe=Ge,Ge=0;do G=Xe,Xe=U>>>31|Xe<<1,U=Ge|U<<1,G=p<<1|G>>>31|0,an=p>>>31|y<<1|0,qT(St|0,w|0,G|0,an|0)|0,zi=ze,Ks=zi>>31|((zi|0)<0?-1:0)<<1,Ge=Ks&1,p=qT(G|0,an|0,Ks&rr|0,(((zi|0)<0?-1:0)>>31|((zi|0)<0?-1:0)<<1)&ht|0)|0,y=ze,le=le-1|0;while(le|0);St=Xe,Xe=0}return le=0,X|0&&(o[X>>2]=p,o[X+4>>2]=y),Ks=(U|0)>>>31|(St|le)<<1|(le<<1|U>>>31)&0|Xe,zi=(U<<1|0)&-2|Ge,ze=Ks,zi|0}function P3(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,yh(p,y,w,G,0)|0}function VB(p){p=p|0;var y=0,w=0;return w=p+15&-16|0,y=o[b>>2]|0,p=y+w|0,(w|0)>0&(p|0)<(y|0)|(p|0)<0?(Ao()|0,Vs(12),-1):(o[b>>2]=p,(p|0)>(Hi()|0)&&!(Nn()|0)?(o[b>>2]=y,Vs(12),-1):y|0)}function $T(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if((y|0)<(p|0)&(p|0)<(y+w|0)){for(G=p,y=y+w|0,p=p+w|0;(w|0)>0;)p=p-1|0,y=y-1|0,w=w-1|0,n[p>>0]=n[y>>0]|0;p=G}else Yd(p,y,w)|0;return p|0}function DU(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var X=0,U=0;return U=B,B=B+16|0,X=U|0,yh(p,y,w,G,X)|0,B=U,ze=o[X+4>>2]|0,o[X>>2]|0|0}function M3(p){return p=p|0,(p&255)<<24|(p>>8&255)<<16|(p>>16&255)<<8|p>>>24|0}function Dz(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,R$e[p&1](y|0,w|0,G|0,X|0,U|0)}function i9e(p,y,w){p=p|0,y=y|0,w=ke(w),N$e[p&1](y|0,ke(w))}function s9e(p,y,w){p=p|0,y=y|0,w=+w,D$e[p&31](y|0,+w)}function o9e(p,y,w,G){return p=p|0,y=y|0,w=ke(w),G=ke(G),ke(Sie[p&0](y|0,ke(w),ke(G)))}function gQ(p,y){p=p|0,y=y|0,VF[p&127](y|0)}function EN(p,y,w){p=p|0,y=y|0,w=w|0,ik[p&31](y|0,w|0)}function v$e(p,y){return p=p|0,y=y|0,yC[p&31](y|0)|0}function mEe(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0,AQ[p&1](y|0,+w,+G,X|0)}function a9e(p,y,w,G){p=p|0,y=y|0,w=+w,G=+G,Lg[p&1](y|0,+w,+G)}function CEe(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,r9[p&7](y|0,w|0,G|0)|0}function _Ee(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,+EEe[p&1](y|0,w|0,G|0)}function yEe(p,y){return p=p|0,y=y|0,+HW[p&15](y|0)}function c9e(p,y,w){return p=p|0,y=y|0,w=+w,dQ[p&1](y|0,+w)|0}function l9e(p,y,w){return p=p|0,y=y|0,w=w|0,vie[p&15](y|0,w|0)|0}function Wx(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=+G,X=+X,U=U|0,_de[p&1](y|0,w|0,+G,+X,U|0)}function H3(p,y,w,G,X,U,le){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,le=le|0,yde[p&1](y|0,w|0,G|0,X|0,U|0,le|0)}function yie(p,y,w){return p=p|0,y=y|0,w=w|0,+SEe[p&7](y|0,w|0)}function B$e(p){return p=p|0,xz[p&7]()|0}function u9e(p,y,w,G,X,U){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,bde[p&1](y|0,w|0,G|0,X|0,U|0)|0}function g9e(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=+X,Bie[p&1](y|0,w|0,G|0,+X)}function A9e(p,y,w,G,X,U,le){p=p|0,y=y|0,w=w|0,G=ke(G),X=X|0,U=ke(U),le=le|0,Gz[p&1](y|0,w|0,ke(G),X|0,ke(U),le|0)}function d9e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,eR[p&15](y|0,w|0,G|0)}function p9e(p){p=p|0,vEe[p&0]()}function w$e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,wie[p&15](y|0,w|0,+G)}function YWt(p,y,w){return p=p|0,y=+y,w=+w,h9e[p&1](+y,+w)|0}function QWt(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,Ir[p&15](y|0,w|0,G|0,X|0)}function XWt(p,y,w,G,X){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,zt(0)}function JWt(p,y){p=p|0,y=ke(y),zt(1)}function Ox(p,y){p=p|0,y=+y,zt(2)}function UWt(p,y,w){return p=p|0,y=ke(y),w=ke(w),zt(3),As}function nd(p){p=p|0,zt(4)}function mde(p,y){p=p|0,y=y|0,zt(5)}function LF(p){return p=p|0,zt(6),0}function KWt(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,zt(7)}function jWt(p,y,w){p=p|0,y=+y,w=+w,zt(8)}function zWt(p,y,w){return p=p|0,y=y|0,w=w|0,zt(9),0}function qWt(p,y,w){return p=p|0,y=y|0,w=w|0,zt(10),0}function kz(p){return p=p|0,zt(11),0}function $Wt(p,y){return p=p|0,y=+y,zt(12),0}function Cde(p,y){return p=p|0,y=y|0,zt(13),0}function eOt(p,y,w,G,X){p=p|0,y=y|0,w=+w,G=+G,X=X|0,zt(14)}function tOt(p,y,w,G,X,U){p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,U=U|0,zt(15)}function f9e(p,y){return p=p|0,y=y|0,zt(16),0}function rOt(){return zt(17),0}function I9e(p,y,w,G,X){return p=p|0,y=y|0,w=w|0,G=G|0,X=X|0,zt(18),0}function nOt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,zt(19)}function T$e(p,y,w,G,X,U){p=p|0,y=y|0,w=ke(w),G=G|0,X=ke(X),U=U|0,zt(20)}function bEe(p,y,w){p=p|0,y=y|0,w=w|0,zt(21)}function iOt(){zt(22)}function bie(p,y,w){p=p|0,y=y|0,w=+w,zt(23)}function sOt(p,y){return p=+p,y=+y,zt(24),0}function Eie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,zt(25)}var R$e=[XWt,WAe],N$e=[JWt,n2],D$e=[Ox,ZC,r0,o1,hB,Ew,OT,v0,i2,Ed,cg,Bb,a1,$2,n0,o_,Up,AE,dE,Ox,Ox,Ox,Ox,Ox,Ox,Ox,Ox,Ox,Ox,Ox,Ox,Ox],Sie=[UWt],VF=[nd,Tz,mA,vI,$d,Fge,ene,EW,tWt,rLe,IU,Une,Nbe,mv,MW,bN,lie,VA,sy,vb,ia,SI,WD,bB,kr,We,lv,Aa,Sye,aN,mC,ww,Bye,bE,m3,zre,b7,ML,ine,yZe,QY,Sl,Fye,rAe,HL,lAe,L7,$R,vne,Jye,M7,qye,Fne,obe,JVt,jVt,EAe,SAe,pbe,hbe,Ga,_be,ez,_t,a0,NLe,Xbe,DWt,hz,e9,t9,XLe,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd,nd],ik=[mde,fB,ZD,VD,eN,lc,Ch,sf,EI,Jp,IB,_h,kp,s2,To,IE,mB,Xc,su,oy,a_,It,x7,aAe,qY,uS,iWt,Obe,mde,mde,mde,mde],yC=[LF,wU,s1,lA,pE,nh,Mf,Mo,dp,IF,fE,PT,Cp,Im,Rb,LVt,yAe,Yne,WW,Vb,LF,LF,LF,LF,LF,LF,LF,LF,LF,LF,LF,LF],AQ=[KWt,RL],Lg=[jWt,tLe],r9=[zWt,pie,WWt,uEe,HD,UD,LZe,ZLe],EEe=[qWt,TB],HW=[kz,Fm,xp,hE,mF,x,L,te,Re,Ve,kz,kz,kz,kz,kz,kz],dQ=[$Wt,XVt],vie=[Cde,E$e,eS,ja,CA,p3,DY,Gge,Hge,Pye,n1,qAe,Cde,Cde,Cde,Cde],_de=[eOt,u3],yde=[tOt,ug],SEe=[f9e,TL,dr,Ur,mi,Nge,f9e,f9e],xz=[rOt,Vi,x_,FD,pU,$Ze,mbe,yz],bde=[I9e,Xp],Bie=[nOt,y3],Gz=[T$e,MT],eR=[bEe,Iu,hF,tN,Pu,A3,vge,Bd,GVt,fF,pWt,vWt,HLe,bEe,bEe,bEe],vEe=[iOt],wie=[bie,LD,t0,gE,nv,mp,jh,B0,$J,XL,HVt,bie,bie,bie,bie,bie],h9e=[sOt,$Vt],Ir=[Eie,wge,E3,KT,ibe,N3,fN,l_,Sbe,tie,nEe,Eie,Eie,Eie,Eie,Eie];return{_llvm_bswap_i32:M3,dynCall_idd:YWt,dynCall_i:B$e,_i64Subtract:qT,___udivdi3:P3,dynCall_vif:i9e,setThrew:ad,dynCall_viii:d9e,_bitshift64Lshr:O3,_bitshift64Shl:hEe,dynCall_vi:gQ,dynCall_viiddi:Wx,dynCall_diii:_Ee,dynCall_iii:l9e,_memset:Nz,_sbrk:VB,_memcpy:Yd,__GLOBAL__sub_I_Yoga_cpp:pB,dynCall_vii:EN,___uremdi3:DU,dynCall_vid:s9e,stackAlloc:Nf,_nbind_init:I2,getTempRet0:rl,dynCall_di:yEe,dynCall_iid:c9e,setTempRet0:Qm,_i64Add:Yg,dynCall_fiff:o9e,dynCall_iiii:CEe,_emscripten_get_global_libc:pde,dynCall_viid:w$e,dynCall_viiid:g9e,dynCall_viififi:A9e,dynCall_ii:v$e,__GLOBAL__sub_I_Binding_cc:CWt,dynCall_viiii:QWt,dynCall_iiiiii:u9e,stackSave:Am,dynCall_viiiii:Dz,__GLOBAL__sub_I_nbind_cc:Ta,dynCall_vidd:a9e,_free:die,runPostSets:W3,dynCall_viiiiii:H3,establishStackSpace:rc,_memmove:$T,stackRestore:Zl,_malloc:Aie,__GLOBAL__sub_I_common_cc:zm,dynCall_viddi:mEe,dynCall_dii:yie,dynCall_v:p9e}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(t){t=t||[],ensureInitRuntime();var r=t.length+1;function n(){for(var f=0;f<3;f++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];n();for(var o=0;o0||(preRun(),runDependencies>0)||Module.calledRun)return;function t(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()}Module.run=Module.run=run;function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){Module.onAbort&&Module.onAbort(e),e!==void 0?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var t=` +If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+e+") at "+stackTrace()+t;throw abortDecorators&&abortDecorators.forEach(function(n){r=n(r,e)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var KO=H((Peu,aHn)=>{"use strict";var YUo=sHn(),QUo=oHn(),ahr=!1,chr=null;QUo({},function(e,t){if(!ahr){if(ahr=!0,e)throw e;chr=t}});if(!ahr)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");aHn.exports=YUo(chr.bind,chr.lib)});var uhr=H((Meu,lhr)=>{"use strict";var cHn=e=>Number.isNaN(e)?!1: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);lhr.exports=cHn;lhr.exports.default=cHn});var uHn=H((Heu,lHn)=>{"use strict";lHn.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var FBe=H((Yeu,ghr)=>{"use strict";var XUo=aM(),JUo=uhr(),UUo=uHn(),gHn=e=>{if(typeof e!="string"||e.length===0||(e=XUo(e),e.length===0))return 0;e=e.replace(UUo()," ");let t=0;for(let r=0;r=127&&n<=159||n>=768&&n<=879||(n>65535&&r++,t+=JUo(n)?2:1)}return t};ghr.exports=gHn;ghr.exports.default=gHn});var nHe=H((Qeu,Ahr)=>{"use strict";var KUo=FBe(),AHn=e=>{let t=0;for(let r of e.split(` +`))t=Math.max(t,KUo(r));return t};Ahr.exports=AHn;Ahr.exports.default=AHn});var dHn=H(iHe=>{"use strict";var jUo=iHe&&iHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iHe,"__esModule",{value:!0});var zUo=jUo(nHe()),dhr={};iHe.default=e=>{if(e.length===0)return{width:0,height:0};if(dhr[e])return dhr[e];let t=zUo.default(e),r=e.split(` +`).length;return dhr[e]={width:t,height:r},{width:t,height:r}}});var pHn=H(sHe=>{"use strict";var qUo=sHe&&sHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sHe,"__esModule",{value:!0});var b_=qUo(KO()),$Uo=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?b_.default.POSITION_TYPE_ABSOLUTE:b_.default.POSITION_TYPE_RELATIVE)},eKo=(e,t)=>{"marginLeft"in t&&e.setMargin(b_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(b_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(b_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(b_.default.EDGE_BOTTOM,t.marginBottom||0)},tKo=(e,t)=>{"paddingLeft"in t&&e.setPadding(b_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(b_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(b_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(b_.default.EDGE_BOTTOM,t.paddingBottom||0)},rKo=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(b_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(b_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(b_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(b_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(b_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(b_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(b_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(b_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(b_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(b_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(b_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(b_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(b_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(b_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(b_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(b_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(b_.default.JUSTIFY_SPACE_AROUND))},nKo=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},iKo=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?b_.default.DISPLAY_FLEX:b_.default.DISPLAY_NONE)},sKo=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(b_.default.EDGE_TOP,r),e.setBorder(b_.default.EDGE_BOTTOM,r),e.setBorder(b_.default.EDGE_LEFT,r),e.setBorder(b_.default.EDGE_RIGHT,r)}};sHe.default=(e,t={})=>{$Uo(e,t),eKo(e,t),tKo(e,t),rKo(e,t),nKo(e,t),iKo(e,t),sKo(e,t)}});var Ihr=H((Ueu,IHn)=>{"use strict";var oHe=FBe(),oKo=aM(),aKo=Dlt(),fhr=new Set(["\x1B","\x9B"]),cKo=39,fHn=e=>`${fhr.values().next().value}[${e}m`,lKo=e=>e.split(" ").map(t=>oHe(t)),phr=(e,t,r)=>{let n=[...t],a=!1,o=oHe(oKo(e[e.length-1]));for(let[l,A]of n.entries()){let f=oHe(A);if(o+f<=r?e[e.length-1]+=A:(e.push(A),o=0),fhr.has(A))a=!0;else if(a&&A==="m"){a=!1;continue}a||(o+=f,o===r&&l0&&e.length>1&&(e[e.length-2]+=e.pop())},uKo=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(oHe(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},gKo=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a="",o,l=lKo(e),A=[""];for(let[f,I]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let C=oHe(A[A.length-1]);if(f!==0&&(C>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),C=0),(C>0||r.trim===!1)&&(A[A.length-1]+=" ",C++)),r.hard&&l[f]>t){let b=t-C,E=1+Math.floor((l[f]-b-1)/t);Math.floor((l[f]-1)/t)t&&C>0&&l[f]>0){if(r.wordWrap===!1&&Ct&&r.wordWrap===!1){phr(A,I,t);continue}A[A.length-1]+=I}r.trim!==!1&&(A=A.map(uKo)),n=A.join(` `);for(let[f,I]of[...n].entries()){if(a+=I,fhr.has(I)){let b=parseFloat(/\d[^m]*/.exec(n.slice(f,f+4)));o=b===cKo?null:b}let C=aKo.codes.get(Number(o));o&&C&&(n[f+1]===` -`?a+=lHn(C):I===` -`&&(a+=lHn(o)))}return a};uHn.exports=(e,t,r)=>String(e).normalize().replace(/\r\n/g,` +`?a+=fHn(C):I===` +`&&(a+=fHn(o)))}return a};IHn.exports=(e,t,r)=>String(e).normalize().replace(/\r\n/g,` `).split(` `).map(n=>gKo(n,t,r)).join(` -`)});var dHn=H((oeu,AHn)=>{"use strict";var gHn="[\uD800-\uDBFF][\uDC00-\uDFFF]",AKo=e=>e&&e.exact?new RegExp(`^${gHn}$`):new RegExp(gHn,"g");AHn.exports=AKo});var qpt=H((aeu,hHn)=>{"use strict";var dKo=uhr(),pKo=dHn(),pHn=klt(),IHn=["\x1B","\x9B"],zpt=e=>`${IHn[0]}[${e}m`,fHn=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let l=pHn.codes.get(parseInt(a,10));if(l){let A=e.indexOf(l.toString());A>=0?e.splice(A,1):n.push(zpt(t?l:o))}else if(t){n.push(zpt(0));break}else n.push(zpt(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=zpt(pHn.codes.get(parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")};hHn.exports=(e,t,r)=>{let n=[...e.normalize()],a=[];r=typeof r=="number"?r:n.length;let o=!1,l,A=0,f="";for(let[I,C]of n.entries()){let b=!1;if(IHn.includes(C)){let E=/\d[^m]*/.exec(e.slice(I,I+18));l=E&&E.length>0?E[0]:void 0,At&&A<=r)f+=C;else if(A===t&&!o&&l!==void 0)f=fHn(a);else if(A>=r){f+=fHn(a,!0,l);break}}return f}});var hhr=H((ceu,mHn)=>{"use strict";var tae=qpt(),fKo=FBe();function $pt(e,t,r){if(e.charAt(t)===" ")return t;for(let n=1;n<=3;n++)if(r){if(e.charAt(t+n)===" ")return t+n}else if(e.charAt(t-n)===" ")return t-n;return t}mHn.exports=(e,t,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:n,space:a,preferTruncationOnSpace:o}=r,l="\u2026",A=1;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let f=fKo(e);if(f<=t)return e;if(n==="start"){if(o){let I=$pt(e,f-t+1,!0);return l+tae(e,I,f).trim()}return a===!0&&(l+=" ",A=2),l+tae(e,f-t+A,f)}if(n==="middle"){a===!0&&(l=" "+l+" ",A=3);let I=Math.floor(t/2);if(o){let C=$pt(e,I),b=$pt(e,f-(t-I)+1,!0);return tae(e,0,C)+l+tae(e,b,f).trim()}return tae(e,0,I)+l+tae(e,f-(t-I)+A,f)}if(n==="end"){if(o){let I=$pt(e,t-1);return tae(e,0,I)+l}return a===!0&&(l=" "+l,A=2),tae(e,0,t-A)+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}});var Chr=H(cHe=>{"use strict";var CHn=cHe&&cHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cHe,"__esModule",{value:!0});var IKo=CHn(Ihr()),hKo=CHn(hhr()),mhr={};cHe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(mhr[n])return mhr[n];let a=e;if(r==="wrap"&&(a=IKo.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=hKo.default(e,t,{position:o})}return mhr[n]=a,a}});var yhr=H(_hr=>{"use strict";Object.defineProperty(_hr,"__esModule",{value:!0});var _Hn=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=_Hn(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};_hr.default=_Hn});var bhr=H(W1=>{"use strict";var lHe=W1&&W1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(W1,"__esModule",{value:!0});W1.setTextNodeValue=W1.createTextNode=W1.setStyle=W1.setAttribute=W1.removeChildNode=W1.insertBeforeNode=W1.appendChildNode=W1.createNode=W1.TEXT_NAME=void 0;var mKo=lHe(JO()),yHn=lHe(aHn()),CKo=lHe(cHn()),_Ko=lHe(Chr()),yKo=lHe(yhr());W1.TEXT_NAME="#text";W1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:mKo.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(bKo.bind(null,r))),r};W1.appendChildNode=(e,t)=>{var r;t.parentNode&&W1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&eft(e)};W1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&W1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&eft(e)};W1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&eft(e)};W1.setAttribute=(e,t,r)=>{e.attributes[t]=r};W1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&CKo.default(e.yogaNode,t)};W1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return W1.setTextNodeValue(t,e),t};var bKo=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:yKo.default(e),o=yHn.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=_Ko.default(a,t,l);return yHn.default(A)},bHn=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:bHn(e.parentNode)},eft=e=>{let t=bHn(e);t?.markDirty()};W1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,eft(e)}});var wHn=H(uHe=>{"use strict";var BHn=uHe&&uHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uHe,"__esModule",{value:!0});var EHn=rHe(),EKo=BHn(JMn()),SHn=BHn(JO()),EG=bhr(),vHn=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};uHe.default=EKo.default({schedulePassiveEffects:EHn.unstable_scheduleCallback,cancelPassiveEffects:EHn.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=EG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?EG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:EG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return EG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{EG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{EG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(SHn.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(SHn.default.DISPLAY_FLEX)},appendInitialChild:EG.appendChildNode,appendChild:EG.appendChildNode,insertBefore:EG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:EG.appendChildNode,insertInContainerBefore:EG.insertBeforeNode,removeChildFromContainer:(e,t)=>{EG.removeChildNode(e,t),vHn(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?EG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:EG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{EG.setTextNodeValue(e,r)},removeChild:(e,t)=>{EG.removeChildNode(e,t),vHn(t.yogaNode)}})});var Ehr=H((deu,THn)=>{"use strict";THn.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var RHn=H(gHe=>{"use strict";var SKo=gHe&&gHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(gHe,"__esModule",{value:!0});var tft=SKo(JO());gHe.default=e=>e.getComputedWidth()-e.getComputedPadding(tft.default.EDGE_LEFT)-e.getComputedPadding(tft.default.EDGE_RIGHT)-e.getComputedBorder(tft.default.EDGE_LEFT)-e.getComputedBorder(tft.default.EDGE_RIGHT)});var NHn=H((feu,vKo)=>{vKo.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var vhr=H((Ieu,Shr)=>{"use strict";var DHn=NHn();Shr.exports=DHn;Shr.exports.default=DHn});var Bhr=H(dHe=>{"use strict";var BKo=dHe&&dHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(dHe,"__esModule",{value:!0});var AHe=BKo(zK()),wKo=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,TKo=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,rft=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);dHe.default=(e,t,r)=>{if(!t)return e;if(t in AHe.default){let a=rft(t,r);return AHe.default[a](e)}if(t.startsWith("#")){let a=rft("hex",r);return AHe.default[a](t)(e)}if(t.startsWith("ansi")){let a=TKo.exec(t);if(!a)return e;let o=rft(a[1],r),l=Number(a[2]);return AHe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=wKo.exec(t);if(!a)return e;let o=rft(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return AHe.default[o](l,A,f)(e)}return e}});var xHn=H(pHe=>{"use strict";var kHn=pHe&&pHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pHe,"__esModule",{value:!0});var RKo=kHn(vhr()),whr=kHn(Bhr());pHe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=RKo.default[r.style.borderStyle],f=whr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(whr.default(A.vertical,l,"foreground")+` -`).repeat(o-2),C=whr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var FHn=H(fHe=>{"use strict";var QIe=fHe&&fHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(fHe,"__esModule",{value:!0});var NKo=QIe(JO()),DKo=QIe(iHe()),kKo=QIe(Ehr()),xKo=QIe(Chr()),GKo=QIe(RHn()),FKo=QIe(yhr()),ZKo=QIe(xHn()),LKo=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` -`.repeat(o)+kKo.default(t,a)}return t},GHn=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===NKo.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=FKo.default(e);if(E.length>0){let N=DKo.default(E),B=GKo.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=xKo.default(E,B,F)}E=LKo(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&ZKo.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)GHn(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};fHe.default=GHn});var VHn=H(IHe=>{"use strict";var LHn=IHe&&IHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(IHe,"__esModule",{value:!0});var ZHn=LHn(qpt()),VKo=LHn(FBe()),Thr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` -`),height:t.length}}};IHe.default=Thr});var PHn=H(hHe=>{"use strict";var Rhr=hHe&&hHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(hHe,"__esModule",{value:!0});var WKo=Rhr(JO()),WHn=Rhr(FHn()),OHn=Rhr(VHn());hHe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,WKo.default.DIRECTION_LTR);let n=new OHn.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});WHn.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new OHn.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),WHn.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var Dhr=H((beu,YHn)=>{"use strict";var MHn=Et("stream"),HHn=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],Nhr={},OKo=e=>{let t=new MHn.PassThrough,r=new MHn.PassThrough;t.write=a=>e("stdout",a),r.write=a=>e("stderr",a);let n=new console.Console(t,r);for(let a of HHn)Nhr[a]=console[a],console[a]=n[a];return()=>{for(let a of HHn)console[a]=Nhr[a];Nhr={}}};YHn.exports=OKo});var xhr=H(khr=>{"use strict";Object.defineProperty(khr,"__esModule",{value:!0});khr.default=new WeakMap});var Fhr=H(Ghr=>{"use strict";Object.defineProperty(Ghr,"__esModule",{value:!0});var PKo=Ec(),QHn=PKo.createContext({exit:()=>{}});QHn.displayName="InternalAppContext";Ghr.default=QHn});var Lhr=H(Zhr=>{"use strict";Object.defineProperty(Zhr,"__esModule",{value:!0});var MKo=Ec(),XHn=MKo.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});XHn.displayName="InternalStdinContext";Zhr.default=XHn});var Whr=H(Vhr=>{"use strict";Object.defineProperty(Vhr,"__esModule",{value:!0});var HKo=Ec(),JHn=HKo.createContext({stdout:void 0,write:()=>{}});JHn.displayName="InternalStdoutContext";Vhr.default=JHn});var Phr=H(Ohr=>{"use strict";Object.defineProperty(Ohr,"__esModule",{value:!0});var YKo=Ec(),UHn=YKo.createContext({stderr:void 0,write:()=>{}});UHn.displayName="InternalStderrContext";Ohr.default=UHn});var nft=H(Mhr=>{"use strict";Object.defineProperty(Mhr,"__esModule",{value:!0});var QKo=Ec(),KHn=QKo.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});KHn.displayName="InternalFocusContext";Mhr.default=KHn});var zHn=H((Reu,jHn)=>{"use strict";var XKo=/[|\\{}()[\]^$+*?.-]/g;jHn.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(XKo,"\\$&")}});var ift=H((Neu,eYn)=>{"use strict";var JKo=zHn(),UKo=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",$Hn=[].concat(Et("module").builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\((?:node:)?${e}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${e}(?:\\.js)?:\\d+:\\d+$)`));$Hn.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var Hhr=class e{constructor(t){t={ignoredPackages:[],...t},"internals"in t||(t.internals=e.nodeInternals()),"cwd"in t||(t.cwd=UKo),this._cwd=t.cwd.replace(/\\/g,"/"),this._internals=[].concat(t.internals,KKo(t.ignoredPackages)),this._wrapCallSite=t.wrapCallSite||!1}static nodeInternals(){return[...$Hn]}clean(t,r=0){r=" ".repeat(r),Array.isArray(t)||(t=t.split(` +`)});var CHn=H((Keu,mHn)=>{"use strict";var hHn="[\uD800-\uDBFF][\uDC00-\uDFFF]",AKo=e=>e&&e.exact?new RegExp(`^${hHn}$`):new RegExp(hHn,"g");mHn.exports=AKo});var jpt=H((jeu,EHn)=>{"use strict";var dKo=uhr(),pKo=CHn(),_Hn=Dlt(),bHn=["\x1B","\x9B"],Kpt=e=>`${bHn[0]}[${e}m`,yHn=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let l=_Hn.codes.get(parseInt(a,10));if(l){let A=e.indexOf(l.toString());A>=0?e.splice(A,1):n.push(Kpt(t?l:o))}else if(t){n.push(Kpt(0));break}else n.push(Kpt(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=Kpt(_Hn.codes.get(parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")};EHn.exports=(e,t,r)=>{let n=[...e.normalize()],a=[];r=typeof r=="number"?r:n.length;let o=!1,l,A=0,f="";for(let[I,C]of n.entries()){let b=!1;if(bHn.includes(C)){let E=/\d[^m]*/.exec(e.slice(I,I+18));l=E&&E.length>0?E[0]:void 0,At&&A<=r)f+=C;else if(A===t&&!o&&l!==void 0)f=yHn(a);else if(A>=r){f+=yHn(a,!0,l);break}}return f}});var hhr=H((zeu,SHn)=>{"use strict";var rae=jpt(),fKo=FBe();function zpt(e,t,r){if(e.charAt(t)===" ")return t;for(let n=1;n<=3;n++)if(r){if(e.charAt(t+n)===" ")return t+n}else if(e.charAt(t-n)===" ")return t-n;return t}SHn.exports=(e,t,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:n,space:a,preferTruncationOnSpace:o}=r,l="\u2026",A=1;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let f=fKo(e);if(f<=t)return e;if(n==="start"){if(o){let I=zpt(e,f-t+1,!0);return l+rae(e,I,f).trim()}return a===!0&&(l+=" ",A=2),l+rae(e,f-t+A,f)}if(n==="middle"){a===!0&&(l=" "+l+" ",A=3);let I=Math.floor(t/2);if(o){let C=zpt(e,I),b=zpt(e,f-(t-I)+1,!0);return rae(e,0,C)+l+rae(e,b,f).trim()}return rae(e,0,I)+l+rae(e,f-(t-I)+A,f)}if(n==="end"){if(o){let I=zpt(e,t-1);return rae(e,0,I)+l}return a===!0&&(l=" "+l,A=2),rae(e,0,t-A)+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}});var Chr=H(aHe=>{"use strict";var vHn=aHe&&aHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(aHe,"__esModule",{value:!0});var IKo=vHn(Ihr()),hKo=vHn(hhr()),mhr={};aHe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(mhr[n])return mhr[n];let a=e;if(r==="wrap"&&(a=IKo.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=hKo.default(e,t,{position:o})}return mhr[n]=a,a}});var yhr=H(_hr=>{"use strict";Object.defineProperty(_hr,"__esModule",{value:!0});var BHn=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=BHn(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};_hr.default=BHn});var bhr=H(O1=>{"use strict";var cHe=O1&&O1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(O1,"__esModule",{value:!0});O1.setTextNodeValue=O1.createTextNode=O1.setStyle=O1.setAttribute=O1.removeChildNode=O1.insertBeforeNode=O1.appendChildNode=O1.createNode=O1.TEXT_NAME=void 0;var mKo=cHe(KO()),wHn=cHe(dHn()),CKo=cHe(pHn()),_Ko=cHe(Chr()),yKo=cHe(yhr());O1.TEXT_NAME="#text";O1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:mKo.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(bKo.bind(null,r))),r};O1.appendChildNode=(e,t)=>{var r;t.parentNode&&O1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&qpt(e)};O1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&O1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&qpt(e)};O1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&qpt(e)};O1.setAttribute=(e,t,r)=>{e.attributes[t]=r};O1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&CKo.default(e.yogaNode,t)};O1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return O1.setTextNodeValue(t,e),t};var bKo=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:yKo.default(e),o=wHn.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=_Ko.default(a,t,l);return wHn.default(A)},THn=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:THn(e.parentNode)},qpt=e=>{let t=THn(e);t?.markDirty()};O1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,qpt(e)}});var xHn=H(lHe=>{"use strict";var kHn=lHe&&lHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(lHe,"__esModule",{value:!0});var RHn=tHe(),EKo=kHn($Mn()),NHn=kHn(KO()),SG=bhr(),DHn=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};lHe.default=EKo.default({schedulePassiveEffects:RHn.unstable_scheduleCallback,cancelPassiveEffects:RHn.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=SG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?SG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:SG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return SG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{SG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{SG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(NHn.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(NHn.default.DISPLAY_FLEX)},appendInitialChild:SG.appendChildNode,appendChild:SG.appendChildNode,insertBefore:SG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:SG.appendChildNode,insertInContainerBefore:SG.insertBeforeNode,removeChildFromContainer:(e,t)=>{SG.removeChildNode(e,t),DHn(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?SG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:SG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{SG.setTextNodeValue(e,r)},removeChild:(e,t)=>{SG.removeChildNode(e,t),DHn(t.yogaNode)}})});var Ehr=H((rtu,GHn)=>{"use strict";GHn.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var FHn=H(uHe=>{"use strict";var SKo=uHe&&uHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uHe,"__esModule",{value:!0});var $pt=SKo(KO());uHe.default=e=>e.getComputedWidth()-e.getComputedPadding($pt.default.EDGE_LEFT)-e.getComputedPadding($pt.default.EDGE_RIGHT)-e.getComputedBorder($pt.default.EDGE_LEFT)-e.getComputedBorder($pt.default.EDGE_RIGHT)});var ZHn=H((itu,vKo)=>{vKo.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var vhr=H((stu,Shr)=>{"use strict";var LHn=ZHn();Shr.exports=LHn;Shr.exports.default=LHn});var Bhr=H(AHe=>{"use strict";var BKo=AHe&&AHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AHe,"__esModule",{value:!0});var gHe=BKo(qK()),wKo=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,TKo=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,eft=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);AHe.default=(e,t,r)=>{if(!t)return e;if(t in gHe.default){let a=eft(t,r);return gHe.default[a](e)}if(t.startsWith("#")){let a=eft("hex",r);return gHe.default[a](t)(e)}if(t.startsWith("ansi")){let a=TKo.exec(t);if(!a)return e;let o=eft(a[1],r),l=Number(a[2]);return gHe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=wKo.exec(t);if(!a)return e;let o=eft(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return gHe.default[o](l,A,f)(e)}return e}});var WHn=H(dHe=>{"use strict";var VHn=dHe&&dHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(dHe,"__esModule",{value:!0});var RKo=VHn(vhr()),whr=VHn(Bhr());dHe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=RKo.default[r.style.borderStyle],f=whr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(whr.default(A.vertical,l,"foreground")+` +`).repeat(o-2),C=whr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var PHn=H(pHe=>{"use strict";var XIe=pHe&&pHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pHe,"__esModule",{value:!0});var NKo=XIe(KO()),DKo=XIe(nHe()),kKo=XIe(Ehr()),xKo=XIe(Chr()),GKo=XIe(FHn()),FKo=XIe(yhr()),ZKo=XIe(WHn()),LKo=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` +`.repeat(o)+kKo.default(t,a)}return t},OHn=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===NKo.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=FKo.default(e);if(E.length>0){let N=DKo.default(E),B=GKo.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=xKo.default(E,B,F)}E=LKo(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&ZKo.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)OHn(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};pHe.default=OHn});var YHn=H(fHe=>{"use strict";var HHn=fHe&&fHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(fHe,"__esModule",{value:!0});var MHn=HHn(jpt()),VKo=HHn(FBe()),Thr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` +`),height:t.length}}};fHe.default=Thr});var JHn=H(IHe=>{"use strict";var Rhr=IHe&&IHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(IHe,"__esModule",{value:!0});var WKo=Rhr(KO()),QHn=Rhr(PHn()),XHn=Rhr(YHn());IHe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,WKo.default.DIRECTION_LTR);let n=new XHn.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});QHn.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new XHn.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),QHn.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var Dhr=H((gtu,jHn)=>{"use strict";var UHn=Et("stream"),KHn=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],Nhr={},OKo=e=>{let t=new UHn.PassThrough,r=new UHn.PassThrough;t.write=a=>e("stdout",a),r.write=a=>e("stderr",a);let n=new console.Console(t,r);for(let a of KHn)Nhr[a]=console[a],console[a]=n[a];return()=>{for(let a of KHn)console[a]=Nhr[a];Nhr={}}};jHn.exports=OKo});var xhr=H(khr=>{"use strict";Object.defineProperty(khr,"__esModule",{value:!0});khr.default=new WeakMap});var Fhr=H(Ghr=>{"use strict";Object.defineProperty(Ghr,"__esModule",{value:!0});var PKo=Ec(),zHn=PKo.createContext({exit:()=>{}});zHn.displayName="InternalAppContext";Ghr.default=zHn});var Lhr=H(Zhr=>{"use strict";Object.defineProperty(Zhr,"__esModule",{value:!0});var MKo=Ec(),qHn=MKo.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});qHn.displayName="InternalStdinContext";Zhr.default=qHn});var Whr=H(Vhr=>{"use strict";Object.defineProperty(Vhr,"__esModule",{value:!0});var HKo=Ec(),$Hn=HKo.createContext({stdout:void 0,write:()=>{}});$Hn.displayName="InternalStdoutContext";Vhr.default=$Hn});var Phr=H(Ohr=>{"use strict";Object.defineProperty(Ohr,"__esModule",{value:!0});var YKo=Ec(),eYn=YKo.createContext({stderr:void 0,write:()=>{}});eYn.displayName="InternalStderrContext";Ohr.default=eYn});var tft=H(Mhr=>{"use strict";Object.defineProperty(Mhr,"__esModule",{value:!0});var QKo=Ec(),tYn=QKo.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});tYn.displayName="InternalFocusContext";Mhr.default=tYn});var nYn=H((mtu,rYn)=>{"use strict";var XKo=/[|\\{}()[\]^$+*?.-]/g;rYn.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(XKo,"\\$&")}});var rft=H((Ctu,oYn)=>{"use strict";var JKo=nYn(),UKo=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",sYn=[].concat(Et("module").builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\((?:node:)?${e}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${e}(?:\\.js)?:\\d+:\\d+$)`));sYn.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var Hhr=class e{constructor(t){t={ignoredPackages:[],...t},"internals"in t||(t.internals=e.nodeInternals()),"cwd"in t||(t.cwd=UKo),this._cwd=t.cwd.replace(/\\/g,"/"),this._internals=[].concat(t.internals,KKo(t.ignoredPackages)),this._wrapCallSite=t.wrapCallSite||!1}static nodeInternals(){return[...sYn]}clean(t,r=0){r=" ".repeat(r),Array.isArray(t)||(t=t.split(` `)),!/^\s*at /.test(t[0])&&/^\s*at /.test(t[1])&&(t=t.slice(1));let n=!1,a=null,o=[];return t.forEach(l=>{if(l=l.replace(/\\/g,"/"),this._internals.some(f=>f.test(l)))return;let A=/^\s*at /.test(l);n?l=l.trimEnd().replace(/^(\s+)at /,"$1"):(l=l.trim(),A&&(l=l.slice(3))),l=l.replace(`${this._cwd}/`,""),l&&(A?(a&&(o.push(a),a=null),o.push(l)):(n=!0,a=l))}),o.map(l=>`${r}${l} -`).join("")}captureString(t,r=this.captureString){typeof t=="function"&&(r=t,t=1/0);let{stackTraceLimit:n}=Error;t&&(Error.stackTraceLimit=t);let a={};Error.captureStackTrace(a,r);let{stack:o}=a;return Error.stackTraceLimit=n,this.clean(o)}capture(t,r=this.capture){typeof t=="function"&&(r=t,t=1/0);let{prepareStackTrace:n,stackTraceLimit:a}=Error;Error.prepareStackTrace=(A,f)=>this._wrapCallSite?f.map(this._wrapCallSite):f,t&&(Error.stackTraceLimit=t);let o={};Error.captureStackTrace(o,r);let{stack:l}=o;return Object.assign(Error,{prepareStackTrace:n,stackTraceLimit:a}),l}at(t=this.at){let[r]=this.capture(1,t);if(!r)return{};let n={line:r.getLineNumber(),column:r.getColumnNumber()};qHn(n,r.getFileName(),this._cwd),r.isConstructor()&&Object.defineProperty(n,"constructor",{value:!0,configurable:!0}),r.isEval()&&(n.evalOrigin=r.getEvalOrigin()),r.isNative()&&(n.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(n.type=a);let o=r.getFunctionName();o&&(n.function=o);let l=r.getMethodName();return l&&o!==l&&(n.method=l),n}parseLine(t){let r=t&&t.match(jKo);if(!r)return null;let n=r[1]==="new",a=r[2],o=r[3],l=r[4],A=Number(r[5]),f=Number(r[6]),I=r[7],C=r[8],b=r[9],E=r[10]==="native",N=r[11]===")",B,F={};if(C&&(F.line=Number(C)),b&&(F.column=Number(b)),N&&I){let Q=0;for(let J=I.length-1;J>0;J--)if(I.charAt(J)===")")Q++;else if(I.charAt(J)==="("&&I.charAt(J-1)===" "&&(Q--,Q===-1&&I.charAt(J-1)===" ")){let ae=I.slice(0,J-1);I=I.slice(J+1),a+=` (${ae}`;break}}if(a){let Q=a.match(zKo);Q&&(a=Q[1],B=Q[2])}return qHn(F,I,this._cwd),n&&Object.defineProperty(F,"constructor",{value:!0,configurable:!0}),o&&(F.evalOrigin=o,F.evalLine=A,F.evalColumn=f,F.evalFile=l&&l.replace(/\\/g,"/")),E&&(F.native=!0),a&&(F.function=a),B&&a!==B&&(F.method=B),F}};function qHn(e,t,r){t&&(t=t.replace(/\\/g,"/"),t.startsWith(`${r}/`)&&(t=t.slice(r.length+1)),e.file=t)}function KKo(e){if(e.length===0)return[];let t=e.map(r=>JKo(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var jKo=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),zKo=/^(.*?) \[as (.*?)\]$/;eYn.exports=Hhr});var rYn=H((Deu,tYn)=>{"use strict";tYn.exports=(e,t)=>e.replace(/^\t+/gm,r=>" ".repeat(r.length*(t||2)))});var Yhr=H((keu,nYn)=>{"use strict";var qKo=rYn(),$Ko=(e,t)=>{let r=[],n=e-t,a=e+t;for(let o=n;o<=a;o++)r.push(o);return r};nYn.exports=(e,t,r)=>{if(typeof e!="string")throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(e=qKo(e).split(/\r?\n/),!(t>e.length))return r={around:3,...r},$Ko(t,r.around).filter(n=>e[n-1]!==void 0).map(n=>({line:n,value:e[n-1]}))}});var sft=H(kX=>{"use strict";var e8o=kX&&kX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),t8o=kX&&kX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),r8o=kX&&kX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&e8o(t,e,r);return t8o(t,e),t},n8o=kX&&kX.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=n8o(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return iYn.default.createElement("ink-box",{ref:t,style:a},r)});Qhr.displayName="Box";Qhr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};kX.default=Qhr});var Uhr=H(mHe=>{"use strict";var Xhr=mHe&&mHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mHe,"__esModule",{value:!0});var i8o=Xhr(Ec()),ZBe=Xhr(zK()),sYn=Xhr(Bhr()),Jhr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=ZBe.default.dim(b)),e&&(b=sYn.default(b,e,"foreground")),t&&(b=sYn.default(b,t,"background")),n&&(b=ZBe.default.bold(b)),a&&(b=ZBe.default.italic(b)),o&&(b=ZBe.default.underline(b)),l&&(b=ZBe.default.strikethrough(b)),A&&(b=ZBe.default.inverse(b)),b);return i8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};Jhr.displayName="Text";Jhr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};mHe.default=Jhr});var lYn=H(xX=>{"use strict";var s8o=xX&&xX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),o8o=xX&&xX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a8o=xX&&xX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&s8o(t,e,r);return o8o(t,e),t},CHe=xX&&xX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xX,"__esModule",{value:!0});var oYn=a8o(Et("fs")),kR=CHe(Ec()),aYn=CHe(ift()),c8o=CHe(Yhr()),x$=CHe(sft()),S8=CHe(Uhr()),cYn=new aYn.default({cwd:process.cwd(),internals:aYn.default.nodeInternals()}),l8o=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?cYn.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&oYn.existsSync(r.file)){let o=oYn.readFileSync(r.file,"utf8");if(n=c8o.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return kR.default.createElement(x$.default,{flexDirection:"column",padding:1},kR.default.createElement(x$.default,null,kR.default.createElement(S8.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),kR.default.createElement(S8.default,null," ",e.message)),r&&kR.default.createElement(x$.default,{marginTop:1},kR.default.createElement(S8.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&kR.default.createElement(x$.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>kR.default.createElement(x$.default,{key:o},kR.default.createElement(x$.default,{width:a+1},kR.default.createElement(S8.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),kR.default.createElement(S8.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&kR.default.createElement(x$.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let l=cYn.parseLine(o);return l?kR.default.createElement(x$.default,{key:o},kR.default.createElement(S8.default,{dimColor:!0},"- "),kR.default.createElement(S8.default,{dimColor:!0,bold:!0},l.function),kR.default.createElement(S8.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):kR.default.createElement(x$.default,{key:o},kR.default.createElement(S8.default,{dimColor:!0},"- "),kR.default.createElement(S8.default,{dimColor:!0,bold:!0},o))})))};xX.default=l8o});var gYn=H(GX=>{"use strict";var u8o=GX&&GX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),g8o=GX&&GX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),A8o=GX&&GX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&u8o(t,e,r);return g8o(t,e),t},JIe=GX&&GX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(GX,"__esModule",{value:!0});var XIe=A8o(Ec()),uYn=JIe(kBe()),d8o=JIe(Fhr()),p8o=JIe(Lhr()),f8o=JIe(Whr()),I8o=JIe(Phr()),h8o=JIe(nft()),m8o=JIe(lYn()),C8o=" ",_8o="\x1B[Z",y8o="\x1B",oft=class extends XIe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. +`).join("")}captureString(t,r=this.captureString){typeof t=="function"&&(r=t,t=1/0);let{stackTraceLimit:n}=Error;t&&(Error.stackTraceLimit=t);let a={};Error.captureStackTrace(a,r);let{stack:o}=a;return Error.stackTraceLimit=n,this.clean(o)}capture(t,r=this.capture){typeof t=="function"&&(r=t,t=1/0);let{prepareStackTrace:n,stackTraceLimit:a}=Error;Error.prepareStackTrace=(A,f)=>this._wrapCallSite?f.map(this._wrapCallSite):f,t&&(Error.stackTraceLimit=t);let o={};Error.captureStackTrace(o,r);let{stack:l}=o;return Object.assign(Error,{prepareStackTrace:n,stackTraceLimit:a}),l}at(t=this.at){let[r]=this.capture(1,t);if(!r)return{};let n={line:r.getLineNumber(),column:r.getColumnNumber()};iYn(n,r.getFileName(),this._cwd),r.isConstructor()&&Object.defineProperty(n,"constructor",{value:!0,configurable:!0}),r.isEval()&&(n.evalOrigin=r.getEvalOrigin()),r.isNative()&&(n.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(n.type=a);let o=r.getFunctionName();o&&(n.function=o);let l=r.getMethodName();return l&&o!==l&&(n.method=l),n}parseLine(t){let r=t&&t.match(jKo);if(!r)return null;let n=r[1]==="new",a=r[2],o=r[3],l=r[4],A=Number(r[5]),f=Number(r[6]),I=r[7],C=r[8],b=r[9],E=r[10]==="native",N=r[11]===")",B,F={};if(C&&(F.line=Number(C)),b&&(F.column=Number(b)),N&&I){let Q=0;for(let J=I.length-1;J>0;J--)if(I.charAt(J)===")")Q++;else if(I.charAt(J)==="("&&I.charAt(J-1)===" "&&(Q--,Q===-1&&I.charAt(J-1)===" ")){let ae=I.slice(0,J-1);I=I.slice(J+1),a+=` (${ae}`;break}}if(a){let Q=a.match(zKo);Q&&(a=Q[1],B=Q[2])}return iYn(F,I,this._cwd),n&&Object.defineProperty(F,"constructor",{value:!0,configurable:!0}),o&&(F.evalOrigin=o,F.evalLine=A,F.evalColumn=f,F.evalFile=l&&l.replace(/\\/g,"/")),E&&(F.native=!0),a&&(F.function=a),B&&a!==B&&(F.method=B),F}};function iYn(e,t,r){t&&(t=t.replace(/\\/g,"/"),t.startsWith(`${r}/`)&&(t=t.slice(r.length+1)),e.file=t)}function KKo(e){if(e.length===0)return[];let t=e.map(r=>JKo(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var jKo=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),zKo=/^(.*?) \[as (.*?)\]$/;oYn.exports=Hhr});var cYn=H((_tu,aYn)=>{"use strict";aYn.exports=(e,t)=>e.replace(/^\t+/gm,r=>" ".repeat(r.length*(t||2)))});var Yhr=H((ytu,lYn)=>{"use strict";var qKo=cYn(),$Ko=(e,t)=>{let r=[],n=e-t,a=e+t;for(let o=n;o<=a;o++)r.push(o);return r};lYn.exports=(e,t,r)=>{if(typeof e!="string")throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(e=qKo(e).split(/\r?\n/),!(t>e.length))return r={around:3,...r},$Ko(t,r.around).filter(n=>e[n-1]!==void 0).map(n=>({line:n,value:e[n-1]}))}});var nft=H(xX=>{"use strict";var e8o=xX&&xX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),t8o=xX&&xX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),r8o=xX&&xX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&e8o(t,e,r);return t8o(t,e),t},n8o=xX&&xX.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=n8o(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return uYn.default.createElement("ink-box",{ref:t,style:a},r)});Qhr.displayName="Box";Qhr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};xX.default=Qhr});var Uhr=H(hHe=>{"use strict";var Xhr=hHe&&hHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(hHe,"__esModule",{value:!0});var i8o=Xhr(Ec()),ZBe=Xhr(qK()),gYn=Xhr(Bhr()),Jhr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=ZBe.default.dim(b)),e&&(b=gYn.default(b,e,"foreground")),t&&(b=gYn.default(b,t,"background")),n&&(b=ZBe.default.bold(b)),a&&(b=ZBe.default.italic(b)),o&&(b=ZBe.default.underline(b)),l&&(b=ZBe.default.strikethrough(b)),A&&(b=ZBe.default.inverse(b)),b);return i8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};Jhr.displayName="Text";Jhr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};hHe.default=Jhr});var fYn=H(GX=>{"use strict";var s8o=GX&&GX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),o8o=GX&&GX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a8o=GX&&GX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&s8o(t,e,r);return o8o(t,e),t},mHe=GX&&GX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(GX,"__esModule",{value:!0});var AYn=a8o(Et("fs")),xR=mHe(Ec()),dYn=mHe(rft()),c8o=mHe(Yhr()),G$=mHe(nft()),v8=mHe(Uhr()),pYn=new dYn.default({cwd:process.cwd(),internals:dYn.default.nodeInternals()}),l8o=({error:e})=>{let t=e.stack?e.stack.split(` +`).slice(1):void 0,r=t?pYn.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&AYn.existsSync(r.file)){let o=AYn.readFileSync(r.file,"utf8");if(n=c8o.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return xR.default.createElement(G$.default,{flexDirection:"column",padding:1},xR.default.createElement(G$.default,null,xR.default.createElement(v8.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),xR.default.createElement(v8.default,null," ",e.message)),r&&xR.default.createElement(G$.default,{marginTop:1},xR.default.createElement(v8.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&xR.default.createElement(G$.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>xR.default.createElement(G$.default,{key:o},xR.default.createElement(G$.default,{width:a+1},xR.default.createElement(v8.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),xR.default.createElement(v8.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&xR.default.createElement(G$.default,{marginTop:1,flexDirection:"column"},e.stack.split(` +`).slice(1).map(o=>{let l=pYn.parseLine(o);return l?xR.default.createElement(G$.default,{key:o},xR.default.createElement(v8.default,{dimColor:!0},"- "),xR.default.createElement(v8.default,{dimColor:!0,bold:!0},l.function),xR.default.createElement(v8.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):xR.default.createElement(G$.default,{key:o},xR.default.createElement(v8.default,{dimColor:!0},"- "),xR.default.createElement(v8.default,{dimColor:!0,bold:!0},o))})))};GX.default=l8o});var hYn=H(FX=>{"use strict";var u8o=FX&&FX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),g8o=FX&&FX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),A8o=FX&&FX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&u8o(t,e,r);return g8o(t,e),t},UIe=FX&&FX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FX,"__esModule",{value:!0});var JIe=A8o(Ec()),IYn=UIe(kBe()),d8o=UIe(Fhr()),p8o=UIe(Lhr()),f8o=UIe(Whr()),I8o=UIe(Phr()),h8o=UIe(tft()),m8o=UIe(fYn()),C8o=" ",_8o="\x1B[Z",y8o="\x1B",ift=class extends JIe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===y8o&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===C8o&&this.focusNext(),t===_8o&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return XIe.default.createElement(d8o.default.Provider,{value:{exit:this.handleExit}},XIe.default.createElement(p8o.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},XIe.default.createElement(f8o.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},XIe.default.createElement(I8o.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},XIe.default.createElement(h8o.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?XIe.default.createElement(m8o.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){uYn.default.hide(this.props.stdout)}componentWillUnmount(){uYn.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};GX.default=oft;oft.displayName="InternalApp"});var pYn=H(FX=>{"use strict";var b8o=FX&&FX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),E8o=FX&&FX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S8o=FX&&FX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&b8o(t,e,r);return E8o(t,e),t},ZX=FX&&FX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FX,"__esModule",{value:!0});var v8o=ZX(Ec()),AYn=PIr(),B8o=ZX(RMn()),w8o=ZX(KMe()),T8o=ZX(XIr()),R8o=ZX(JIr()),Khr=ZX(wHn()),N8o=ZX(PHn()),D8o=ZX(Ppt()),k8o=ZX(Dhr()),x8o=S8o(bhr()),G8o=ZX(xhr()),F8o=ZX(gYn()),LBe=process.env.CI==="false"?!1:T8o.default,dYn=()=>{},jhr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=N8o.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(LBe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(w8o.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},R8o.default(this),this.options=t,this.rootNode=x8o.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:AYn.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=B8o.default.create(t.stdout),this.throttledLog=t.debug?this.log:AYn.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=Khr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=D8o.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),LBe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=v8o.default.createElement(F8o.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);Khr.default.updateContainer(r,this.container,null,dYn)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(LBe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(LBe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),LBe?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,Khr.default.updateContainer(null,this.container,null,dYn),G8o.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!LBe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=k8o.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};FX.default=jhr});var IYn=H(_He=>{"use strict";var fYn=_He&&_He.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_He,"__esModule",{value:!0});var Z8o=fYn(pYn()),aft=fYn(xhr()),L8o=Et("stream"),V8o=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},W8o(t)),n=O8o(r.stdout,()=>new Z8o.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>aft.default.delete(r.stdout),clear:n.clear}};_He.default=V8o;var W8o=(e={})=>e instanceof L8o.Stream?{stdout:e,stdin:process.stdin}:e,O8o=(e,t)=>{let r;return aft.default.has(e)?r=aft.default.get(e):(r=t(),aft.default.set(e,r)),r}});var mYn=H(G$=>{"use strict";var P8o=G$&&G$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),M8o=G$&&G$.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),H8o=G$&&G$.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&P8o(t,e,r);return M8o(t,e),t};Object.defineProperty(G$,"__esModule",{value:!0});var yHe=H8o(Ec()),hYn=e=>{let{items:t,children:r,style:n}=e,[a,o]=yHe.useState(0),l=yHe.useMemo(()=>t.slice(a),[t,a]);yHe.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=yHe.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return yHe.default.createElement("ink-box",{internal_static:!0,style:f},A)};hYn.displayName="Static";G$.default=hYn});var _Yn=H(bHe=>{"use strict";var Y8o=bHe&&bHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bHe,"__esModule",{value:!0});var Q8o=Y8o(Ec()),CYn=({children:e,transform:t})=>e==null?null:Q8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);CYn.displayName="Transform";bHe.default=CYn});var bYn=H(EHe=>{"use strict";var X8o=EHe&&EHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EHe,"__esModule",{value:!0});var J8o=X8o(Ec()),yYn=({count:e=1})=>J8o.default.createElement("ink-text",null,` -`.repeat(e));yYn.displayName="Newline";EHe.default=yYn});var vYn=H(SHe=>{"use strict";var EYn=SHe&&SHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SHe,"__esModule",{value:!0});var U8o=EYn(Ec()),K8o=EYn(sft()),SYn=()=>U8o.default.createElement(K8o.default,{flexGrow:1});SYn.displayName="Spacer";SHe.default=SYn});var cft=H(vHe=>{"use strict";var j8o=vHe&&vHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vHe,"__esModule",{value:!0});var z8o=Ec(),q8o=j8o(Lhr()),$8o=()=>z8o.useContext(q8o.default);vHe.default=$8o});var wYn=H(BHe=>{"use strict";var e6o=BHe&&BHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BHe,"__esModule",{value:!0});var BYn=Ec(),t6o=e6o(cft()),r6o=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=t6o.default();BYn.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),BYn.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};BHe.default=r6o});var TYn=H(wHe=>{"use strict";var n6o=wHe&&wHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wHe,"__esModule",{value:!0});var i6o=Ec(),s6o=n6o(Fhr()),o6o=()=>i6o.useContext(s6o.default);wHe.default=o6o});var RYn=H(THe=>{"use strict";var a6o=THe&&THe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(THe,"__esModule",{value:!0});var c6o=Ec(),l6o=a6o(Whr()),u6o=()=>c6o.useContext(l6o.default);THe.default=u6o});var NYn=H(RHe=>{"use strict";var g6o=RHe&&RHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RHe,"__esModule",{value:!0});var A6o=Ec(),d6o=g6o(Phr()),p6o=()=>A6o.useContext(d6o.default);RHe.default=p6o});var kYn=H(DHe=>{"use strict";var DYn=DHe&&DHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DHe,"__esModule",{value:!0});var NHe=Ec(),f6o=DYn(nft()),I6o=DYn(cft()),h6o=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=I6o.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=NHe.useContext(f6o.default),b=NHe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return NHe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),NHe.useEffect(()=>{e?f(b):I(b)},[e,b]),NHe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};DHe.default=h6o});var xYn=H(kHe=>{"use strict";var m6o=kHe&&kHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kHe,"__esModule",{value:!0});var C6o=Ec(),_6o=m6o(nft()),y6o=()=>{let e=C6o.useContext(_6o.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};kHe.default=y6o});var GYn=H(zhr=>{"use strict";Object.defineProperty(zhr,"__esModule",{value:!0});zhr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var ul=H(kk=>{"use strict";Object.defineProperty(kk,"__esModule",{value:!0});var b6o=IYn();Object.defineProperty(kk,"render",{enumerable:!0,get:function(){return b6o.default}});var E6o=sft();Object.defineProperty(kk,"Box",{enumerable:!0,get:function(){return E6o.default}});var S6o=Uhr();Object.defineProperty(kk,"Text",{enumerable:!0,get:function(){return S6o.default}});var v6o=mYn();Object.defineProperty(kk,"Static",{enumerable:!0,get:function(){return v6o.default}});var B6o=_Yn();Object.defineProperty(kk,"Transform",{enumerable:!0,get:function(){return B6o.default}});var w6o=bYn();Object.defineProperty(kk,"Newline",{enumerable:!0,get:function(){return w6o.default}});var T6o=vYn();Object.defineProperty(kk,"Spacer",{enumerable:!0,get:function(){return T6o.default}});var R6o=wYn();Object.defineProperty(kk,"useInput",{enumerable:!0,get:function(){return R6o.default}});var N6o=TYn();Object.defineProperty(kk,"useApp",{enumerable:!0,get:function(){return N6o.default}});var D6o=cft();Object.defineProperty(kk,"useStdin",{enumerable:!0,get:function(){return D6o.default}});var k6o=RYn();Object.defineProperty(kk,"useStdout",{enumerable:!0,get:function(){return k6o.default}});var x6o=NYn();Object.defineProperty(kk,"useStderr",{enumerable:!0,get:function(){return x6o.default}});var G6o=kYn();Object.defineProperty(kk,"useFocus",{enumerable:!0,get:function(){return G6o.default}});var F6o=xYn();Object.defineProperty(kk,"useFocusManager",{enumerable:!0,get:function(){return F6o.default}});var Z6o=GYn();Object.defineProperty(kk,"measureElement",{enumerable:!0,get:function(){return Z6o.default}})});var ZYn=H(lft=>{"use strict";var L6o=Ec(),V6o=Symbol.for("react.element"),W6o=Symbol.for("react.fragment"),O6o=Object.prototype.hasOwnProperty,P6o=L6o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,M6o={key:!0,ref:!0,__self:!0,__source:!0};function FYn(e,t,r){var n,a={},o=null,l=null;r!==void 0&&(o=""+r),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(l=t.ref);for(n in t)O6o.call(t,n)&&!M6o.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)a[n]===void 0&&(a[n]=t[n]);return{$$typeof:V6o,type:e,key:o,ref:l,props:a,_owner:P6o.current}}lft.Fragment=W6o;lft.jsx=FYn;lft.jsxs=FYn});var Wc=H(($eu,LYn)=>{"use strict";LYn.exports=ZYn()});var qYn=H(KIe=>{"use strict";var{promisify:$6o}=Et("util"),zYn=Et("fs");async function nmr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await $6o(zYn[e])(r))[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function imr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return zYn[e](r)[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}KIe.isFile=nmr.bind(null,"stat","isFile");KIe.isDirectory=nmr.bind(null,"stat","isDirectory");KIe.isSymlink=nmr.bind(null,"lstat","isSymbolicLink");KIe.isFileSync=imr.bind(null,"statSync","isFile");KIe.isDirectorySync=imr.bind(null,"statSync","isDirectory");KIe.isSymlinkSync=imr.bind(null,"lstatSync","isSymbolicLink")});var nQn=H((ktu,smr)=>{"use strict";var jIe=Et("path"),$Yn=qYn(),eQn=e=>e.length>1?`{${e.join(",")}}`:e[0],tQn=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return jIe.isAbsolute(r)?r:jIe.join(t,r)},ejo=(e,t)=>jIe.extname(e)?`**/${e}`:`**/${e}.${eQn(t)}`,rQn=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>jIe.posix.join(e,ejo(r,t.extensions))):t.files?t.files.map(r=>jIe.posix.join(e,`**/${r}`)):t.extensions?[jIe.posix.join(e,`**/*.${eQn(t.extensions)}`)]:[jIe.posix.join(e,"**")]};smr.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async n=>await $Yn.isDirectory(tQn(n,t.cwd))?rQn(n,t):n));return[].concat.apply([],r)};smr.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(n=>$Yn.isDirectorySync(tQn(n,t.cwd))?rQn(n,t):n);return[].concat.apply([],r)}});var xHe=H((xtu,gQn)=>{function iQn(e){return Array.isArray(e)?e:[e]}var cmr="",sQn=" ",omr="\\",tjo=/^\s+$/,rjo=/(?:[^\\]|^)\\$/,njo=/^\\!/,ijo=/^\\#/,sjo=/\r?\n/g,ojo=/^\.*\/|^\.+$/,amr="/",cQn="node-ignore";typeof Symbol<"u"&&(cQn=Symbol.for("node-ignore"));var oQn=cQn,ajo=(e,t,r)=>Object.defineProperty(e,t,{value:r}),cjo=/([0-z])-([0-z])/g,lQn=()=>!1,ljo=e=>e.replace(cjo,(t,r,n)=>r.charCodeAt(0)<=n.charCodeAt(0)?t:cmr),ujo=e=>{let{length:t}=e;return e.slice(0,t-t%2)},gjo=[[/^\uFEFF/,()=>cmr],[/((?:\\\\)*?)(\\?\s+)$/,(e,t,r)=>t+(r.indexOf("\\")===0?sQn:cmr)],[/(\\+?)\s/g,(e,t)=>{let{length:r}=t;return t.slice(0,r-r%2)+sQn}],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6{let n=r.replace(/\\\*/g,"[^\\/]*");return t+n}],[/\\\\\\(?=[$.|*+(){^])/g,()=>omr],[/\\\\/g,()=>omr],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,n,a)=>t===omr?`\\[${r}${ujo(n)}${a}`:a==="]"&&n.length%2===0?`[${ljo(r)}${n}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],aQn=Object.create(null),Ajo=(e,t)=>{let r=aQn[e];return r||(r=gjo.reduce((n,[a,o])=>n.replace(a,o.bind(e)),e),aQn[e]=r),t?new RegExp(r,"i"):new RegExp(r)},gmr=e=>typeof e=="string",djo=e=>e&&gmr(e)&&!tjo.test(e)&&!rjo.test(e)&&e.indexOf("#")!==0,pjo=e=>e.split(sjo),lmr=class{constructor(t,r,n,a){this.origin=t,this.pattern=r,this.negative=n,this.regex=a}},fjo=(e,t)=>{let r=e,n=!1;e.indexOf("!")===0&&(n=!0,e=e.substr(1)),e=e.replace(njo,"!").replace(ijo,"#");let a=Ajo(e,t);return new lmr(r,e,n,a)},Ijo=(e,t)=>{throw new t(e)},F$=(e,t,r)=>gmr(e)?e?F$.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),uQn=e=>ojo.test(e);F$.isNotRelative=uQn;F$.convert=e=>e;var umr=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:n=!1}={}){ajo(this,oQn,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=n,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[oQn]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(djo(t)){let r=fjo(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,iQn(gmr(t)?pjo(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let n=!1,a=!1;return this._rules.forEach(o=>{let{negative:l}=o;if(a===l&&n!==a||l&&!n&&!a&&!r)return;o.regex.test(t)&&(n=!l,a=l)}),{ignored:n,unignored:a}}_test(t,r,n,a){let o=t&&F$.convert(t);return F$(o,t,this._allowRelativePaths?lQn:Ijo),this._t(o,r,n,a)}_t(t,r,n,a){if(t in r)return r[t];if(a||(a=t.split(amr)),a.pop(),!a.length)return r[t]=this._testOne(t,n);let o=this._t(a.join(amr)+amr,r,n,a);return r[t]=o.ignored?o:this._testOne(t,n)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return iQn(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},Aft=e=>new umr(e),hjo=e=>F$(e&&F$.convert(e),e,lQn);Aft.isPathValid=hjo;Aft.default=Aft;gQn.exports=Aft;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");F$.convert=e;let t=/^[a-z]:\//i;F$.isNotRelative=r=>t.test(r)||uQn(r)}});var hmr=H(hft=>{"use strict";Object.defineProperty(hft,"__esModule",{value:!0});hft.Context=void 0;var ZQn=Et("fs"),Wjo=Et("os"),Imr=class{constructor(){var t,r,n;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,ZQn.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,ZQn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let a=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${a} does not exist${Wjo.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(t=process.env.GITHUB_API_URL)!==null&&t!==void 0?t:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(n=process.env.GITHUB_GRAPHQL_URL)!==null&&n!==void 0?n:"https://api.github.com/graphql"}get issue(){let t=this.payload;return Object.assign(Object.assign({},this.repo),{number:(t.issue||t.pull_request||t).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[t,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:t,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};hft.Context=Imr});var VQn=H(MBe=>{"use strict";Object.defineProperty(MBe,"__esModule",{value:!0});MBe.checkBypass=MBe.getProxyUrl=void 0;function Ojo(e){let t=e.protocol==="https:";if(LQn(e))return;let r=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new mft(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new mft(`http://${r}`)}else return}MBe.getProxyUrl=Ojo;function LQn(e){if(!e.hostname)return!1;let t=e.hostname;if(Pjo(t))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;e.port?n=Number(e.port):e.protocol==="http:"?n=80:e.protocol==="https:"&&(n=443);let a=[e.hostname.toUpperCase()];typeof n=="number"&&a.push(`${a[0]}:${n}`);for(let o of r.split(",").map(l=>l.trim().toUpperCase()).filter(l=>l))if(o==="*"||a.some(l=>l===o||l.endsWith(`.${o}`)||o.startsWith(".")&&l.endsWith(`${o}`)))return!0;return!1}MBe.checkBypass=LQn;function Pjo(e){let t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}var mft=class extends URL{constructor(t,r){super(t,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var MQn=H(HBe=>{"use strict";var Sru=Et("net"),Mjo=Et("tls"),mmr=Et("http"),WQn=Et("https"),Hjo=Et("events"),vru=Et("assert"),Yjo=Et("util");HBe.httpOverHttp=Qjo;HBe.httpsOverHttp=Xjo;HBe.httpOverHttps=Jjo;HBe.httpsOverHttps=Ujo;function Qjo(e){var t=new L$(e);return t.request=mmr.request,t}function Xjo(e){var t=new L$(e);return t.request=mmr.request,t.createSocket=OQn,t.defaultPort=443,t}function Jjo(e){var t=new L$(e);return t.request=WQn.request,t}function Ujo(e){var t=new L$(e);return t.request=WQn.request,t.createSocket=OQn,t.defaultPort=443,t}function L$(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||mmr.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",function(n,a,o,l){for(var A=PQn(a,o,l),f=0,I=t.requests.length;f=this.maxSockets){o.requests.push(l);return}o.createSocket(l,function(A){A.on("free",f),A.on("close",I),A.on("agentRemove",I),t.onSocket(A);function f(){o.emit("free",A,l)}function I(C){o.removeSocket(A),A.removeListener("free",f),A.removeListener("close",I),A.removeListener("agentRemove",I)}})};L$.prototype.createSocket=function(t,r){var n=this,a={};n.sockets.push(a);var o=Cmr({},n.proxyOptions,{method:"CONNECT",path:t.host+":"+t.port,agent:!1,headers:{host:t.host+":"+t.port}});t.localAddress&&(o.localAddress=t.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),nae("making CONNECT request");var l=n.request(o);l.useChunkedEncodingByDefault=!1,l.once("response",A),l.once("upgrade",f),l.once("connect",I),l.once("error",C),l.end();function A(b){b.upgrade=!0}function f(b,E,N){process.nextTick(function(){I(b,E,N)})}function I(b,E,N){if(l.removeAllListeners(),E.removeAllListeners(),b.statusCode!==200){nae("tunneling socket could not be established, statusCode=%d",b.statusCode),E.destroy();var B=new Error("tunneling socket could not be established, statusCode="+b.statusCode);B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}if(N.length>0){nae("got illegal response body from proxy"),E.destroy();var B=new Error("got illegal response body from proxy");B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}return nae("tunneling connection has established"),n.sockets[n.sockets.indexOf(a)]=E,r(E)}function C(b){l.removeAllListeners(),nae(`tunneling socket could not be established, cause=%s -`,b.message,b.stack);var E=new Error("tunneling socket could not be established, cause="+b.message);E.code="ECONNRESET",t.request.emit("error",E),n.removeSocket(a)}};L$.prototype.removeSocket=function(t){var r=this.sockets.indexOf(t);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(a){n.request.onSocket(a)})}};function OQn(e,t){var r=this;L$.prototype.createSocket.call(r,e,function(n){var a=e.request.getHeader("host"),o=Cmr({},r.options,{socket:n,servername:a?a.replace(/:.*$/,""):e.host}),l=Mjo.connect(0,o);r.sockets[r.sockets.indexOf(n)]=l,t(l)})}function PQn(e,t,r){return typeof e=="string"?{host:e,port:t,localAddress:r}:e}function Cmr(e){for(var t=1,r=arguments.length;t{HQn.exports=MQn()});var LE=H((Tru,QQn)=>{QQn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}});var zb=H((Rru,XQn)=>{"use strict";var nw=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},_mr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},ymr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},bmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},Emr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},Smr=class e extends nw{constructor(t,r,n,a){super(t),Error.captureStackTrace(this,e),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},vmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},Bmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},wmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},Tmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},Rmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},Nmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},Dmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},kmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},xmr=class e extends nw{constructor(t,r){super(t),Error.captureStackTrace(this,e),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},Cft=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},Gmr=class extends nw{constructor(t){super(t),Error.captureStackTrace(this,Cft),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},Fmr=class e extends Error{constructor(t,r,n){super(t),Error.captureStackTrace(this,e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},Zmr=class e extends nw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},Lmr=class e extends nw{constructor(t,r,{headers:n,data:a}){super(t),Error.captureStackTrace(this,e),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}};XQn.exports={HTTPParserError:Fmr,UndiciError:nw,HeadersTimeoutError:ymr,HeadersOverflowError:bmr,BodyTimeoutError:Emr,RequestContentLengthMismatchError:Rmr,ConnectTimeoutError:_mr,ResponseStatusCodeError:Smr,InvalidArgumentError:vmr,InvalidReturnValueError:Bmr,RequestAbortedError:wmr,ClientDestroyedError:Dmr,ClientClosedError:kmr,InformationalError:Tmr,SocketError:xmr,NotSupportedError:Cft,ResponseContentLengthMismatchError:Nmr,BalancedPoolMissingUpstreamError:Gmr,ResponseExceededMaxSizeError:Zmr,RequestRetryError:Lmr}});var UQn=H((Nru,JQn)=>{"use strict";var _ft={},Vmr=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var qQn=Et("assert"),{kDestroyed:$Qn,kBodyUsed:KQn}=LE(),{IncomingMessage:Kjo}=Et("http"),YBe=Et("stream"),jjo=Et("net"),{InvalidArgumentError:xk}=zb(),{Blob:jQn}=Et("buffer"),yft=Et("util"),{stringify:zjo}=Et("querystring"),{headerNameLowerCasedRecord:qjo}=UQn(),[Wmr,zQn]=process.versions.node.split(".").map(e=>Number(e));function $jo(){}function Omr(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function eXn(e){return jQn&&e instanceof jQn||e&&typeof e=="object"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function e7o(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=zjo(t);return r&&(e+="?"+r),e}function tXn(e){if(typeof e=="string"){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new xk("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new xk("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new xk("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port)))throw new xk("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new xk("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new xk("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new xk("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new xk("Invalid URL origin: the origin must be a string or null/undefined.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;r.endsWith("/")&&(r=r.substring(0,r.length-1)),n&&!n.startsWith("/")&&(n=`/${n}`),e=new URL(r+n)}return e}function t7o(e){if(e=tXn(e),e.pathname!=="/"||e.search||e.hash)throw new xk("invalid url");return e}function r7o(e){if(e[0]==="["){let r=e.indexOf("]");return qQn(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function n7o(e){if(!e)return null;qQn.strictEqual(typeof e,"string");let t=r7o(e);return jjo.isIP(t)?"":t}function i7o(e){return JSON.parse(JSON.stringify(e))}function s7o(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function o7o(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function a7o(e){if(e==null)return 0;if(Omr(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(eXn(e))return e.size!=null?e.size:null;if(nXn(e))return e.byteLength}return null}function Pmr(e){return!e||!!(e.destroyed||e[$Qn])}function rXn(e){let t=e&&e._readableState;return Pmr(e)&&t&&!t.endEmitted}function c7o(e,t){e==null||!Omr(e)||Pmr(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===Kjo&&(e.socket=null),e.destroy(t)):t&&process.nextTick((r,n)=>{r.emit("error",n)},e,t),e.destroyed!==!0&&(e[$Qn]=!0))}var l7o=/timeout=(\d+)/;function u7o(e){let t=e.toString().match(l7o);return t?parseInt(t[1],10)*1e3:null}function g7o(e){return qjo[e]||e.toLowerCase()}function A7o(e,t={}){if(!Array.isArray(e))return e;for(let r=0;ro.toString("utf8")):t[n]=e[r+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function d7o(e){let t=[],r=!1,n=-1;for(let a=0;a{r.close()});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()}},0)}function y7o(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function b7o(e){if(e){if(typeof e.throwIfAborted=="function")e.throwIfAborted();else if(e.aborted){let t=new Error("The operation was aborted");throw t.name="AbortError",t}}}function E7o(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var S7o=!!String.prototype.toWellFormed;function v7o(e){return S7o?`${e}`.toWellFormed():yft.toUSVString?yft.toUSVString(e):`${e}`}function B7o(e){if(e==null||e==="")return{start:0,end:null,size:null};let t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}var iXn=Object.create(null);iXn.enumerable=!0;sXn.exports={kEnumerableProperty:iXn,nop:$jo,isDisturbed:f7o,isErrored:I7o,isReadable:h7o,toUSVString:v7o,isReadableAborted:rXn,isBlobLike:eXn,parseOrigin:t7o,parseURL:tXn,getServerName:n7o,isStream:Omr,isIterable:o7o,isAsyncIterable:s7o,isDestroyed:Pmr,headerNameToString:g7o,parseRawHeaders:d7o,parseHeaders:A7o,parseKeepAliveTimeout:u7o,destroy:c7o,bodyLength:a7o,deepClone:i7o,ReadableStreamFrom:_7o,isBuffer:nXn,validateHandler:p7o,getSocketInfo:m7o,isFormDataLike:y7o,buildURL:e7o,throwIfAborted:b7o,addAbortListener:E7o,parseRangeHeader:B7o,nodeMajor:Wmr,nodeMinor:zQn,nodeHasAutoSelectFamily:Wmr>18||Wmr===18&&zQn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}});var cXn=H((kru,aXn)=>{"use strict";var Mmr=Date.now(),iae,sae=[];function w7o(){Mmr=Date.now();let e=sae.length,t=0;for(;t0&&Mmr>=r.state&&(r.state=-1,r.callback(r.opaque)),r.state===-1?(r.state=-2,t!==e-1?sae[t]=sae.pop():sae.pop(),e-=1):t+=1}sae.length>0&&oXn()}function oXn(){iae&&iae.refresh?iae.refresh():(clearTimeout(iae),iae=setTimeout(w7o,1e3),iae.unref&&iae.unref())}var bft=class{constructor(t,r,n){this.callback=t,this.delay=r,this.opaque=n,this.state=-2,this.refresh()}refresh(){this.state===-2&&(sae.push(this),(!iae||sae.length===1)&&oXn()),this.state=0}clear(){this.state=-1}};aXn.exports={setTimeout(e,t,r){return t<1e3?setTimeout(e,t,r):new bft(e,t,r)},clearTimeout(e){e instanceof bft?e.clear():clearTimeout(e)}}});var Hmr=H((xru,lXn)=>{"use strict";var T7o=Et("node:events").EventEmitter,R7o=Et("node:util").inherits;function zIe(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var r=0;r=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let A=this._lookbehind_size+o;return A>0&&this.emit("info",!1,this._lookbehind,0,A),this._lookbehind.copy(this._lookbehind,0,A,this._lookbehind_size-A),this._lookbehind_size-=A,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(o+=(o>=0)*this._bufpos,e.indexOf(r,o)!==-1)return o=e.indexOf(r,o),++this.matches,o>0?this.emit("info",!0,e,this._bufpos,o):this.emit("info",!0),this._bufpos=o+n;for(o=t-n;o0&&this.emit("info",!1,e,this._bufpos,o{"use strict";var N7o=Et("node:util").inherits,uXn=Et("node:stream").Readable;function Ymr(e){uXn.call(this,e)}N7o(Ymr,uXn);Ymr.prototype._read=function(e){};gXn.exports=Ymr});var Eft=H((Fru,dXn)=>{"use strict";dXn.exports=function(t,r,n){if(!t||t[r]===void 0||t[r]===null)return n;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var hXn=H((Zru,IXn)=>{"use strict";var fXn=Et("node:events").EventEmitter,D7o=Et("node:util").inherits,pXn=Eft(),k7o=Hmr(),x7o=Buffer.from(`\r +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===y8o&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===C8o&&this.focusNext(),t===_8o&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return JIe.default.createElement(d8o.default.Provider,{value:{exit:this.handleExit}},JIe.default.createElement(p8o.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},JIe.default.createElement(f8o.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},JIe.default.createElement(I8o.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},JIe.default.createElement(h8o.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?JIe.default.createElement(m8o.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){IYn.default.hide(this.props.stdout)}componentWillUnmount(){IYn.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};FX.default=ift;ift.displayName="InternalApp"});var _Yn=H(ZX=>{"use strict";var b8o=ZX&&ZX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),E8o=ZX&&ZX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S8o=ZX&&ZX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&b8o(t,e,r);return E8o(t,e),t},LX=ZX&&ZX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZX,"__esModule",{value:!0});var v8o=LX(Ec()),mYn=PIr(),B8o=LX(FMn()),w8o=LX(UMe()),T8o=LX(XIr()),R8o=LX(JIr()),Khr=LX(xHn()),N8o=LX(JHn()),D8o=LX(Wpt()),k8o=LX(Dhr()),x8o=S8o(bhr()),G8o=LX(xhr()),F8o=LX(hYn()),LBe=process.env.CI==="false"?!1:T8o.default,CYn=()=>{},jhr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=N8o.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` +`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(LBe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(w8o.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},R8o.default(this),this.options=t,this.rootNode=x8o.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:mYn.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=B8o.default.create(t.stdout),this.throttledLog=t.debug?this.log:mYn.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=Khr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=D8o.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),LBe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=v8o.default.createElement(F8o.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);Khr.default.updateContainer(r,this.container,null,CYn)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(LBe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(LBe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),LBe?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,Khr.default.updateContainer(null,this.container,null,CYn),G8o.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!LBe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=k8o.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};ZX.default=jhr});var bYn=H(CHe=>{"use strict";var yYn=CHe&&CHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CHe,"__esModule",{value:!0});var Z8o=yYn(_Yn()),sft=yYn(xhr()),L8o=Et("stream"),V8o=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},W8o(t)),n=O8o(r.stdout,()=>new Z8o.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>sft.default.delete(r.stdout),clear:n.clear}};CHe.default=V8o;var W8o=(e={})=>e instanceof L8o.Stream?{stdout:e,stdin:process.stdin}:e,O8o=(e,t)=>{let r;return sft.default.has(e)?r=sft.default.get(e):(r=t(),sft.default.set(e,r)),r}});var SYn=H(F$=>{"use strict";var P8o=F$&&F$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),M8o=F$&&F$.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),H8o=F$&&F$.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&P8o(t,e,r);return M8o(t,e),t};Object.defineProperty(F$,"__esModule",{value:!0});var _He=H8o(Ec()),EYn=e=>{let{items:t,children:r,style:n}=e,[a,o]=_He.useState(0),l=_He.useMemo(()=>t.slice(a),[t,a]);_He.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=_He.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return _He.default.createElement("ink-box",{internal_static:!0,style:f},A)};EYn.displayName="Static";F$.default=EYn});var BYn=H(yHe=>{"use strict";var Y8o=yHe&&yHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(yHe,"__esModule",{value:!0});var Q8o=Y8o(Ec()),vYn=({children:e,transform:t})=>e==null?null:Q8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);vYn.displayName="Transform";yHe.default=vYn});var TYn=H(bHe=>{"use strict";var X8o=bHe&&bHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bHe,"__esModule",{value:!0});var J8o=X8o(Ec()),wYn=({count:e=1})=>J8o.default.createElement("ink-text",null,` +`.repeat(e));wYn.displayName="Newline";bHe.default=wYn});var DYn=H(EHe=>{"use strict";var RYn=EHe&&EHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EHe,"__esModule",{value:!0});var U8o=RYn(Ec()),K8o=RYn(nft()),NYn=()=>U8o.default.createElement(K8o.default,{flexGrow:1});NYn.displayName="Spacer";EHe.default=NYn});var oft=H(SHe=>{"use strict";var j8o=SHe&&SHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SHe,"__esModule",{value:!0});var z8o=Ec(),q8o=j8o(Lhr()),$8o=()=>z8o.useContext(q8o.default);SHe.default=$8o});var xYn=H(vHe=>{"use strict";var e6o=vHe&&vHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vHe,"__esModule",{value:!0});var kYn=Ec(),t6o=e6o(oft()),r6o=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=t6o.default();kYn.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),kYn.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};vHe.default=r6o});var GYn=H(BHe=>{"use strict";var n6o=BHe&&BHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BHe,"__esModule",{value:!0});var i6o=Ec(),s6o=n6o(Fhr()),o6o=()=>i6o.useContext(s6o.default);BHe.default=o6o});var FYn=H(wHe=>{"use strict";var a6o=wHe&&wHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wHe,"__esModule",{value:!0});var c6o=Ec(),l6o=a6o(Whr()),u6o=()=>c6o.useContext(l6o.default);wHe.default=u6o});var ZYn=H(THe=>{"use strict";var g6o=THe&&THe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(THe,"__esModule",{value:!0});var A6o=Ec(),d6o=g6o(Phr()),p6o=()=>A6o.useContext(d6o.default);THe.default=p6o});var VYn=H(NHe=>{"use strict";var LYn=NHe&&NHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NHe,"__esModule",{value:!0});var RHe=Ec(),f6o=LYn(tft()),I6o=LYn(oft()),h6o=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=I6o.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=RHe.useContext(f6o.default),b=RHe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return RHe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),RHe.useEffect(()=>{e?f(b):I(b)},[e,b]),RHe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};NHe.default=h6o});var WYn=H(DHe=>{"use strict";var m6o=DHe&&DHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DHe,"__esModule",{value:!0});var C6o=Ec(),_6o=m6o(tft()),y6o=()=>{let e=C6o.useContext(_6o.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};DHe.default=y6o});var OYn=H(zhr=>{"use strict";Object.defineProperty(zhr,"__esModule",{value:!0});zhr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var gl=H(xk=>{"use strict";Object.defineProperty(xk,"__esModule",{value:!0});var b6o=bYn();Object.defineProperty(xk,"render",{enumerable:!0,get:function(){return b6o.default}});var E6o=nft();Object.defineProperty(xk,"Box",{enumerable:!0,get:function(){return E6o.default}});var S6o=Uhr();Object.defineProperty(xk,"Text",{enumerable:!0,get:function(){return S6o.default}});var v6o=SYn();Object.defineProperty(xk,"Static",{enumerable:!0,get:function(){return v6o.default}});var B6o=BYn();Object.defineProperty(xk,"Transform",{enumerable:!0,get:function(){return B6o.default}});var w6o=TYn();Object.defineProperty(xk,"Newline",{enumerable:!0,get:function(){return w6o.default}});var T6o=DYn();Object.defineProperty(xk,"Spacer",{enumerable:!0,get:function(){return T6o.default}});var R6o=xYn();Object.defineProperty(xk,"useInput",{enumerable:!0,get:function(){return R6o.default}});var N6o=GYn();Object.defineProperty(xk,"useApp",{enumerable:!0,get:function(){return N6o.default}});var D6o=oft();Object.defineProperty(xk,"useStdin",{enumerable:!0,get:function(){return D6o.default}});var k6o=FYn();Object.defineProperty(xk,"useStdout",{enumerable:!0,get:function(){return k6o.default}});var x6o=ZYn();Object.defineProperty(xk,"useStderr",{enumerable:!0,get:function(){return x6o.default}});var G6o=VYn();Object.defineProperty(xk,"useFocus",{enumerable:!0,get:function(){return G6o.default}});var F6o=WYn();Object.defineProperty(xk,"useFocusManager",{enumerable:!0,get:function(){return F6o.default}});var Z6o=OYn();Object.defineProperty(xk,"measureElement",{enumerable:!0,get:function(){return Z6o.default}})});var MYn=H(aft=>{"use strict";var L6o=Ec(),V6o=Symbol.for("react.element"),W6o=Symbol.for("react.fragment"),O6o=Object.prototype.hasOwnProperty,P6o=L6o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,M6o={key:!0,ref:!0,__self:!0,__source:!0};function PYn(e,t,r){var n,a={},o=null,l=null;r!==void 0&&(o=""+r),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(l=t.ref);for(n in t)O6o.call(t,n)&&!M6o.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)a[n]===void 0&&(a[n]=t[n]);return{$$typeof:V6o,type:e,key:o,ref:l,props:a,_owner:P6o.current}}aft.Fragment=W6o;aft.jsx=PYn;aft.jsxs=PYn});var Wc=H((Mtu,HYn)=>{"use strict";HYn.exports=MYn()});var iQn=H(jIe=>{"use strict";var{promisify:$6o}=Et("util"),nQn=Et("fs");async function nmr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await $6o(nQn[e])(r))[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function imr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return nQn[e](r)[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}jIe.isFile=nmr.bind(null,"stat","isFile");jIe.isDirectory=nmr.bind(null,"stat","isDirectory");jIe.isSymlink=nmr.bind(null,"lstat","isSymbolicLink");jIe.isFileSync=imr.bind(null,"statSync","isFile");jIe.isDirectorySync=imr.bind(null,"statSync","isDirectory");jIe.isSymlinkSync=imr.bind(null,"lstatSync","isSymbolicLink")});var lQn=H((yru,smr)=>{"use strict";var zIe=Et("path"),sQn=iQn(),oQn=e=>e.length>1?`{${e.join(",")}}`:e[0],aQn=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return zIe.isAbsolute(r)?r:zIe.join(t,r)},ejo=(e,t)=>zIe.extname(e)?`**/${e}`:`**/${e}.${oQn(t)}`,cQn=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>zIe.posix.join(e,ejo(r,t.extensions))):t.files?t.files.map(r=>zIe.posix.join(e,`**/${r}`)):t.extensions?[zIe.posix.join(e,`**/*.${oQn(t.extensions)}`)]:[zIe.posix.join(e,"**")]};smr.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async n=>await sQn.isDirectory(aQn(n,t.cwd))?cQn(n,t):n));return[].concat.apply([],r)};smr.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(n=>sQn.isDirectorySync(aQn(n,t.cwd))?cQn(n,t):n);return[].concat.apply([],r)}});var kHe=H((bru,hQn)=>{function uQn(e){return Array.isArray(e)?e:[e]}var cmr="",gQn=" ",omr="\\",tjo=/^\s+$/,rjo=/(?:[^\\]|^)\\$/,njo=/^\\!/,ijo=/^\\#/,sjo=/\r?\n/g,ojo=/^\.*\/|^\.+$/,amr="/",pQn="node-ignore";typeof Symbol<"u"&&(pQn=Symbol.for("node-ignore"));var AQn=pQn,ajo=(e,t,r)=>Object.defineProperty(e,t,{value:r}),cjo=/([0-z])-([0-z])/g,fQn=()=>!1,ljo=e=>e.replace(cjo,(t,r,n)=>r.charCodeAt(0)<=n.charCodeAt(0)?t:cmr),ujo=e=>{let{length:t}=e;return e.slice(0,t-t%2)},gjo=[[/^\uFEFF/,()=>cmr],[/((?:\\\\)*?)(\\?\s+)$/,(e,t,r)=>t+(r.indexOf("\\")===0?gQn:cmr)],[/(\\+?)\s/g,(e,t)=>{let{length:r}=t;return t.slice(0,r-r%2)+gQn}],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6{let n=r.replace(/\\\*/g,"[^\\/]*");return t+n}],[/\\\\\\(?=[$.|*+(){^])/g,()=>omr],[/\\\\/g,()=>omr],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,n,a)=>t===omr?`\\[${r}${ujo(n)}${a}`:a==="]"&&n.length%2===0?`[${ljo(r)}${n}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],dQn=Object.create(null),Ajo=(e,t)=>{let r=dQn[e];return r||(r=gjo.reduce((n,[a,o])=>n.replace(a,o.bind(e)),e),dQn[e]=r),t?new RegExp(r,"i"):new RegExp(r)},gmr=e=>typeof e=="string",djo=e=>e&&gmr(e)&&!tjo.test(e)&&!rjo.test(e)&&e.indexOf("#")!==0,pjo=e=>e.split(sjo),lmr=class{constructor(t,r,n,a){this.origin=t,this.pattern=r,this.negative=n,this.regex=a}},fjo=(e,t)=>{let r=e,n=!1;e.indexOf("!")===0&&(n=!0,e=e.substr(1)),e=e.replace(njo,"!").replace(ijo,"#");let a=Ajo(e,t);return new lmr(r,e,n,a)},Ijo=(e,t)=>{throw new t(e)},Z$=(e,t,r)=>gmr(e)?e?Z$.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),IQn=e=>ojo.test(e);Z$.isNotRelative=IQn;Z$.convert=e=>e;var umr=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:n=!1}={}){ajo(this,AQn,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=n,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[AQn]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(djo(t)){let r=fjo(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,uQn(gmr(t)?pjo(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let n=!1,a=!1;return this._rules.forEach(o=>{let{negative:l}=o;if(a===l&&n!==a||l&&!n&&!a&&!r)return;o.regex.test(t)&&(n=!l,a=l)}),{ignored:n,unignored:a}}_test(t,r,n,a){let o=t&&Z$.convert(t);return Z$(o,t,this._allowRelativePaths?fQn:Ijo),this._t(o,r,n,a)}_t(t,r,n,a){if(t in r)return r[t];if(a||(a=t.split(amr)),a.pop(),!a.length)return r[t]=this._testOne(t,n);let o=this._t(a.join(amr)+amr,r,n,a);return r[t]=o.ignored?o:this._testOne(t,n)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return uQn(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},uft=e=>new umr(e),hjo=e=>Z$(e&&Z$.convert(e),e,fQn);uft.isPathValid=hjo;uft.default=uft;hQn.exports=uft;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");Z$.convert=e;let t=/^[a-z]:\//i;Z$.isNotRelative=r=>t.test(r)||IQn(r)}});var hmr=H(fft=>{"use strict";Object.defineProperty(fft,"__esModule",{value:!0});fft.Context=void 0;var MQn=Et("fs"),Wjo=Et("os"),Imr=class{constructor(){var t,r,n;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,MQn.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,MQn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let a=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${a} does not exist${Wjo.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(t=process.env.GITHUB_API_URL)!==null&&t!==void 0?t:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(n=process.env.GITHUB_GRAPHQL_URL)!==null&&n!==void 0?n:"https://api.github.com/graphql"}get issue(){let t=this.payload;return Object.assign(Object.assign({},this.repo),{number:(t.issue||t.pull_request||t).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[t,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:t,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};fft.Context=Imr});var YQn=H(MBe=>{"use strict";Object.defineProperty(MBe,"__esModule",{value:!0});MBe.checkBypass=MBe.getProxyUrl=void 0;function Ojo(e){let t=e.protocol==="https:";if(HQn(e))return;let r=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new Ift(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new Ift(`http://${r}`)}else return}MBe.getProxyUrl=Ojo;function HQn(e){if(!e.hostname)return!1;let t=e.hostname;if(Pjo(t))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;e.port?n=Number(e.port):e.protocol==="http:"?n=80:e.protocol==="https:"&&(n=443);let a=[e.hostname.toUpperCase()];typeof n=="number"&&a.push(`${a[0]}:${n}`);for(let o of r.split(",").map(l=>l.trim().toUpperCase()).filter(l=>l))if(o==="*"||a.some(l=>l===o||l.endsWith(`.${o}`)||o.startsWith(".")&&l.endsWith(`${o}`)))return!0;return!1}MBe.checkBypass=HQn;function Pjo(e){let t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}var Ift=class extends URL{constructor(t,r){super(t,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var UQn=H(HBe=>{"use strict";var dnu=Et("net"),Mjo=Et("tls"),mmr=Et("http"),QQn=Et("https"),Hjo=Et("events"),pnu=Et("assert"),Yjo=Et("util");HBe.httpOverHttp=Qjo;HBe.httpsOverHttp=Xjo;HBe.httpOverHttps=Jjo;HBe.httpsOverHttps=Ujo;function Qjo(e){var t=new V$(e);return t.request=mmr.request,t}function Xjo(e){var t=new V$(e);return t.request=mmr.request,t.createSocket=XQn,t.defaultPort=443,t}function Jjo(e){var t=new V$(e);return t.request=QQn.request,t}function Ujo(e){var t=new V$(e);return t.request=QQn.request,t.createSocket=XQn,t.defaultPort=443,t}function V$(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||mmr.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",function(n,a,o,l){for(var A=JQn(a,o,l),f=0,I=t.requests.length;f=this.maxSockets){o.requests.push(l);return}o.createSocket(l,function(A){A.on("free",f),A.on("close",I),A.on("agentRemove",I),t.onSocket(A);function f(){o.emit("free",A,l)}function I(C){o.removeSocket(A),A.removeListener("free",f),A.removeListener("close",I),A.removeListener("agentRemove",I)}})};V$.prototype.createSocket=function(t,r){var n=this,a={};n.sockets.push(a);var o=Cmr({},n.proxyOptions,{method:"CONNECT",path:t.host+":"+t.port,agent:!1,headers:{host:t.host+":"+t.port}});t.localAddress&&(o.localAddress=t.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),iae("making CONNECT request");var l=n.request(o);l.useChunkedEncodingByDefault=!1,l.once("response",A),l.once("upgrade",f),l.once("connect",I),l.once("error",C),l.end();function A(b){b.upgrade=!0}function f(b,E,N){process.nextTick(function(){I(b,E,N)})}function I(b,E,N){if(l.removeAllListeners(),E.removeAllListeners(),b.statusCode!==200){iae("tunneling socket could not be established, statusCode=%d",b.statusCode),E.destroy();var B=new Error("tunneling socket could not be established, statusCode="+b.statusCode);B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}if(N.length>0){iae("got illegal response body from proxy"),E.destroy();var B=new Error("got illegal response body from proxy");B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}return iae("tunneling connection has established"),n.sockets[n.sockets.indexOf(a)]=E,r(E)}function C(b){l.removeAllListeners(),iae(`tunneling socket could not be established, cause=%s +`,b.message,b.stack);var E=new Error("tunneling socket could not be established, cause="+b.message);E.code="ECONNRESET",t.request.emit("error",E),n.removeSocket(a)}};V$.prototype.removeSocket=function(t){var r=this.sockets.indexOf(t);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(a){n.request.onSocket(a)})}};function XQn(e,t){var r=this;V$.prototype.createSocket.call(r,e,function(n){var a=e.request.getHeader("host"),o=Cmr({},r.options,{socket:n,servername:a?a.replace(/:.*$/,""):e.host}),l=Mjo.connect(0,o);r.sockets[r.sockets.indexOf(n)]=l,t(l)})}function JQn(e,t,r){return typeof e=="string"?{host:e,port:t,localAddress:r}:e}function Cmr(e){for(var t=1,r=arguments.length;t{KQn.exports=UQn()});var VE=H((hnu,zQn)=>{zQn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}});var qb=H((mnu,qQn)=>{"use strict";var iw=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},_mr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},ymr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},bmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},Emr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},Smr=class e extends iw{constructor(t,r,n,a){super(t),Error.captureStackTrace(this,e),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},vmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},Bmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},wmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},Tmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},Rmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},Nmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},Dmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},kmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},xmr=class e extends iw{constructor(t,r){super(t),Error.captureStackTrace(this,e),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},hft=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},Gmr=class extends iw{constructor(t){super(t),Error.captureStackTrace(this,hft),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},Fmr=class e extends Error{constructor(t,r,n){super(t),Error.captureStackTrace(this,e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},Zmr=class e extends iw{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},Lmr=class e extends iw{constructor(t,r,{headers:n,data:a}){super(t),Error.captureStackTrace(this,e),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}};qQn.exports={HTTPParserError:Fmr,UndiciError:iw,HeadersTimeoutError:ymr,HeadersOverflowError:bmr,BodyTimeoutError:Emr,RequestContentLengthMismatchError:Rmr,ConnectTimeoutError:_mr,ResponseStatusCodeError:Smr,InvalidArgumentError:vmr,InvalidReturnValueError:Bmr,RequestAbortedError:wmr,ClientDestroyedError:Dmr,ClientClosedError:kmr,InformationalError:Tmr,SocketError:xmr,NotSupportedError:hft,ResponseContentLengthMismatchError:Nmr,BalancedPoolMissingUpstreamError:Gmr,ResponseExceededMaxSizeError:Zmr,RequestRetryError:Lmr}});var eXn=H((Cnu,$Qn)=>{"use strict";var mft={},Vmr=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var iXn=Et("assert"),{kDestroyed:sXn,kBodyUsed:tXn}=VE(),{IncomingMessage:Kjo}=Et("http"),YBe=Et("stream"),jjo=Et("net"),{InvalidArgumentError:Gk}=qb(),{Blob:rXn}=Et("buffer"),Cft=Et("util"),{stringify:zjo}=Et("querystring"),{headerNameLowerCasedRecord:qjo}=eXn(),[Wmr,nXn]=process.versions.node.split(".").map(e=>Number(e));function $jo(){}function Omr(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function oXn(e){return rXn&&e instanceof rXn||e&&typeof e=="object"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function e7o(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=zjo(t);return r&&(e+="?"+r),e}function aXn(e){if(typeof e=="string"){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new Gk("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new Gk("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new Gk("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port)))throw new Gk("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new Gk("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new Gk("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new Gk("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new Gk("Invalid URL origin: the origin must be a string or null/undefined.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;r.endsWith("/")&&(r=r.substring(0,r.length-1)),n&&!n.startsWith("/")&&(n=`/${n}`),e=new URL(r+n)}return e}function t7o(e){if(e=aXn(e),e.pathname!=="/"||e.search||e.hash)throw new Gk("invalid url");return e}function r7o(e){if(e[0]==="["){let r=e.indexOf("]");return iXn(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function n7o(e){if(!e)return null;iXn.strictEqual(typeof e,"string");let t=r7o(e);return jjo.isIP(t)?"":t}function i7o(e){return JSON.parse(JSON.stringify(e))}function s7o(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function o7o(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function a7o(e){if(e==null)return 0;if(Omr(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(oXn(e))return e.size!=null?e.size:null;if(lXn(e))return e.byteLength}return null}function Pmr(e){return!e||!!(e.destroyed||e[sXn])}function cXn(e){let t=e&&e._readableState;return Pmr(e)&&t&&!t.endEmitted}function c7o(e,t){e==null||!Omr(e)||Pmr(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===Kjo&&(e.socket=null),e.destroy(t)):t&&process.nextTick((r,n)=>{r.emit("error",n)},e,t),e.destroyed!==!0&&(e[sXn]=!0))}var l7o=/timeout=(\d+)/;function u7o(e){let t=e.toString().match(l7o);return t?parseInt(t[1],10)*1e3:null}function g7o(e){return qjo[e]||e.toLowerCase()}function A7o(e,t={}){if(!Array.isArray(e))return e;for(let r=0;ro.toString("utf8")):t[n]=e[r+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function d7o(e){let t=[],r=!1,n=-1;for(let a=0;a{r.close()});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()}},0)}function y7o(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function b7o(e){if(e){if(typeof e.throwIfAborted=="function")e.throwIfAborted();else if(e.aborted){let t=new Error("The operation was aborted");throw t.name="AbortError",t}}}function E7o(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var S7o=!!String.prototype.toWellFormed;function v7o(e){return S7o?`${e}`.toWellFormed():Cft.toUSVString?Cft.toUSVString(e):`${e}`}function B7o(e){if(e==null||e==="")return{start:0,end:null,size:null};let t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}var uXn=Object.create(null);uXn.enumerable=!0;gXn.exports={kEnumerableProperty:uXn,nop:$jo,isDisturbed:f7o,isErrored:I7o,isReadable:h7o,toUSVString:v7o,isReadableAborted:cXn,isBlobLike:oXn,parseOrigin:t7o,parseURL:aXn,getServerName:n7o,isStream:Omr,isIterable:o7o,isAsyncIterable:s7o,isDestroyed:Pmr,headerNameToString:g7o,parseRawHeaders:d7o,parseHeaders:A7o,parseKeepAliveTimeout:u7o,destroy:c7o,bodyLength:a7o,deepClone:i7o,ReadableStreamFrom:_7o,isBuffer:lXn,validateHandler:p7o,getSocketInfo:m7o,isFormDataLike:y7o,buildURL:e7o,throwIfAborted:b7o,addAbortListener:E7o,parseRangeHeader:B7o,nodeMajor:Wmr,nodeMinor:nXn,nodeHasAutoSelectFamily:Wmr>18||Wmr===18&&nXn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}});var pXn=H((ynu,dXn)=>{"use strict";var Mmr=Date.now(),sae,oae=[];function w7o(){Mmr=Date.now();let e=oae.length,t=0;for(;t0&&Mmr>=r.state&&(r.state=-1,r.callback(r.opaque)),r.state===-1?(r.state=-2,t!==e-1?oae[t]=oae.pop():oae.pop(),e-=1):t+=1}oae.length>0&&AXn()}function AXn(){sae&&sae.refresh?sae.refresh():(clearTimeout(sae),sae=setTimeout(w7o,1e3),sae.unref&&sae.unref())}var _ft=class{constructor(t,r,n){this.callback=t,this.delay=r,this.opaque=n,this.state=-2,this.refresh()}refresh(){this.state===-2&&(oae.push(this),(!sae||oae.length===1)&&AXn()),this.state=0}clear(){this.state=-1}};dXn.exports={setTimeout(e,t,r){return t<1e3?setTimeout(e,t,r):new _ft(e,t,r)},clearTimeout(e){e instanceof _ft?e.clear():clearTimeout(e)}}});var Hmr=H((bnu,fXn)=>{"use strict";var T7o=Et("node:events").EventEmitter,R7o=Et("node:util").inherits;function qIe(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var r=0;r=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let A=this._lookbehind_size+o;return A>0&&this.emit("info",!1,this._lookbehind,0,A),this._lookbehind.copy(this._lookbehind,0,A,this._lookbehind_size-A),this._lookbehind_size-=A,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(o+=(o>=0)*this._bufpos,e.indexOf(r,o)!==-1)return o=e.indexOf(r,o),++this.matches,o>0?this.emit("info",!0,e,this._bufpos,o):this.emit("info",!0),this._bufpos=o+n;for(o=t-n;o0&&this.emit("info",!1,e,this._bufpos,o{"use strict";var N7o=Et("node:util").inherits,IXn=Et("node:stream").Readable;function Ymr(e){IXn.call(this,e)}N7o(Ymr,IXn);Ymr.prototype._read=function(e){};hXn.exports=Ymr});var yft=H((Snu,CXn)=>{"use strict";CXn.exports=function(t,r,n){if(!t||t[r]===void 0||t[r]===null)return n;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var EXn=H((vnu,bXn)=>{"use strict";var yXn=Et("node:events").EventEmitter,D7o=Et("node:util").inherits,_Xn=yft(),k7o=Hmr(),x7o=Buffer.from(`\r \r -`),G7o=/\r\n/g,F7o=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function QBe(e){fXn.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=pXn(e,"maxHeaderPairs",2e3),this.maxHeaderSize=pXn(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new k7o(x7o),this.ss.on("info",function(r,n,a,o){n&&!t.maxed&&(t.nread+o-a>=t.maxHeaderSize?(o=t.maxHeaderSize-t.nread+a,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=o-a,t.buffer+=n.toString("binary",a,o)),r&&t._finish()})}D7o(QBe,fXn);QBe.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};QBe.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};QBe.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};QBe.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(G7o),t=e.length,r,n;for(var a=0;a{"use strict";var Qmr=Et("node:stream").Writable,Z7o=Et("node:util").inherits,L7o=Hmr(),mXn=AXn(),V7o=hXn(),W7o=45,O7o=Buffer.from("-"),P7o=Buffer.from(`\r -`),M7o=function(){};function LX(e){if(!(this instanceof LX))return new LX(e);if(Qmr.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new V7o(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}Z7o(LX,Qmr);LX.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else Qmr.prototype.emit.apply(this,arguments)};LX.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new mXn(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let n=this._hparser.push(e);if(!this._inHeader&&n!==void 0&&n{"use strict";var _Xn=new TextDecoder("utf-8"),yXn=new Map([["utf-8",_Xn],["utf8",_Xn]]);function H7o(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return VHe.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return VHe.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return VHe.utf16le;case"base64":return VHe.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return VHe.other.bind(e)}}var VHe={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),yXn.has(Jmr.toString()))try{return yXn.get(Jmr).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function Y7o(e,t,r){return e&&H7o(r)(e,t)}bXn.exports=Y7o});var Kmr=H((Vru,wXn)=>{"use strict";var vft=Sft(),EXn=/%[a-fA-F0-9][a-fA-F0-9]/g,Q7o={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` +`),G7o=/\r\n/g,F7o=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function QBe(e){yXn.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=_Xn(e,"maxHeaderPairs",2e3),this.maxHeaderSize=_Xn(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new k7o(x7o),this.ss.on("info",function(r,n,a,o){n&&!t.maxed&&(t.nread+o-a>=t.maxHeaderSize?(o=t.maxHeaderSize-t.nread+a,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=o-a,t.buffer+=n.toString("binary",a,o)),r&&t._finish()})}D7o(QBe,yXn);QBe.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};QBe.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};QBe.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};QBe.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(G7o),t=e.length,r,n;for(var a=0;a{"use strict";var Qmr=Et("node:stream").Writable,Z7o=Et("node:util").inherits,L7o=Hmr(),SXn=mXn(),V7o=EXn(),W7o=45,O7o=Buffer.from("-"),P7o=Buffer.from(`\r +`),M7o=function(){};function VX(e){if(!(this instanceof VX))return new VX(e);if(Qmr.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new V7o(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}Z7o(VX,Qmr);VX.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else Qmr.prototype.emit.apply(this,arguments)};VX.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new SXn(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let n=this._hparser.push(e);if(!this._inHeader&&n!==void 0&&n{"use strict";var BXn=new TextDecoder("utf-8"),wXn=new Map([["utf-8",BXn],["utf8",BXn]]);function H7o(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return LHe.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return LHe.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return LHe.utf16le;case"base64":return LHe.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return LHe.other.bind(e)}}var LHe={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),wXn.has(Jmr.toString()))try{return wXn.get(Jmr).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function Y7o(e,t,r){return e&&H7o(r)(e,t)}TXn.exports=Y7o});var Kmr=H((wnu,xXn)=>{"use strict";var Eft=bft(),RXn=/%[a-fA-F0-9][a-fA-F0-9]/g,Q7o={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` `,"%0A":` -`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function SXn(e){return Q7o[e]}var Bft=0,vXn=1,Umr=2,BXn=3;function X7o(e){let t=[],r=Bft,n="",a=!1,o=!1,l=0,A="",f=e.length;for(var I=0;I{"use strict";TXn.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var xXn=H((Oru,kXn)=>{"use strict";var{Readable:DXn}=Et("node:stream"),{inherits:J7o}=Et("node:util"),U7o=Xmr(),NXn=Kmr(),K7o=Sft(),j7o=RXn(),qIe=Eft(),z7o=/^boundary$/i,q7o=/^form-data$/i,$7o=/^charset$/i,ezo=/^filename$/i,tzo=/^name$/i;wft.detect=/^multipart\/form-data/i;function wft(e,t){let r,n,a=this,o,l=t.limits,A=t.isPartAFile||((k,tt,ze)=>tt==="application/octet-stream"||ze!==void 0),f=t.parsedConType||[],I=t.defCharset||"utf8",C=t.preservePath,b={highWaterMark:t.fileHwm};for(r=0,n=f.length;rJ)return a.parser.removeListener("part",k),a.parser.on("part",XBe),e.hitPartsLimit=!0,e.emit("partsLimit"),XBe(tt);if(be){let ze=be;ze.emit("end"),ze.removeAllListeners("end")}tt.on("header",function(ze){let Le,Je,ft,lt,Ot,Er,Sr=0;if(ze["content-type"]&&(ft=NXn(ze["content-type"][0]),ft[0])){for(Le=ft[0].toLowerCase(),r=0,n=ft.length;rB){let $t=B-Sr+Fr.length;$t>0&&Dt.push(Fr.slice(0,$t)),Dt.truncated=!0,Dt.bytesRead=B,tt.removeAllListeners("data"),Dt.emit("limit");return}else Dt.push(Fr)||(a._pause=!0);Dt.bytesRead=Sr},Bt=function(){de=void 0,Dt.push(null)}}else{if(fe===Q)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),XBe(tt);++fe,++ue;let Dt="",Fr=!1;be=tt,jt=function($t){if((Sr+=$t.length)>N){let Xt=N-(Sr-$t.length);Dt+=$t.toString("binary",0,Xt),Fr=!0,tt.removeAllListeners("data")}else Dt+=$t.toString("binary")},Bt=function(){be=void 0,Dt.length&&(Dt=K7o(Dt,"binary",lt)),e.emit("field",Je,Dt,!1,Fr,Ot,Le),--ue,E()}}tt._readableState.sync=!1,tt.on("data",jt),tt.on("end",Bt)}).on("error",function(ze){de&&de.emit("error",ze)})}).on("error",function(k){e.emit("error",k)}).on("finish",function(){Se=!0,E()})}wft.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};wft.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function XBe(e){e.resume()}function jmr(e){DXn.call(this,e),this.bytesRead=0,this.truncated=!1}J7o(jmr,DXn);jmr.prototype._read=function(e){};kXn.exports=wft});var FXn=H((Pru,GXn)=>{"use strict";var rzo=/\+/g,nzo=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,0,0,0,0,0,0,0,1,1,1,1,1,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,1,1,1,1,1,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];function zmr(){this.buffer=void 0}zmr.prototype.write=function(e){e=e.replace(rzo," ");let t="",r=0,n=0,a=e.length;for(;rn&&(t+=e.substring(n,r),n=r),this.buffer="",++n);return n{"use strict";var izo=FXn(),JBe=Sft(),qmr=Eft(),szo=/^charset$/i;Tft.detect=/^application\/x-www-form-urlencoded/i;function Tft(e,t){let r=t.limits,n=t.parsedConType;this.boy=e,this.fieldSizeLimit=qmr(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=qmr(r,"fieldNameSize",100),this.fieldsLimit=qmr(r,"fields",1/0);let a;for(var o=0,l=n.length;oo&&(this._key+=this.decoder.write(e.toString("binary",o,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),o=r+1;else if(n!==void 0){++this._fields;let A,f=this._keyTrunc;if(n>o?A=this._key+=this.decoder.write(e.toString("binary",o,n)):A=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),A.length&&this.boy.emit("field",JBe(A,"binary",this.charset),"",f,!1),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._key+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(oo&&(this._val+=this.decoder.write(e.toString("binary",o,n))),this.boy.emit("field",JBe(this._key,"binary",this.charset),JBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._val+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(o0?this.boy.emit("field",JBe(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",JBe(this._key,"binary",this.charset),JBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};ZXn.exports=Tft});var OXn=H((Hru,WHe)=>{"use strict";var $mr=Et("node:stream").Writable,{inherits:ozo}=Et("node:util"),azo=Xmr(),VXn=xXn(),WXn=LXn(),czo=Kmr();function V$(e){if(!(this instanceof V$))return new V$(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},$mr.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}ozo(V$,$mr);V$.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}$mr.prototype.emit.apply(this,arguments)};V$.prototype.getParserByHeaders=function(e){let t=czo(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(VXn.detect.test(t[0]))return new VXn(this,r);if(WXn.detect.test(t[0]))return new WXn(this,r);throw new Error("Unsupported Content-Type.")};V$.prototype._write=function(e,t,r){this._parser.write(e,r)};WHe.exports=V$;WHe.exports.default=V$;WHe.exports.Busboy=V$;WHe.exports.Dicer=azo});var oae=H((Yru,UXn)=>{"use strict";var{MessageChannel:lzo,receiveMessageOnPort:uzo}=Et("worker_threads"),PXn=["GET","HEAD","POST"],gzo=new Set(PXn),Azo=[101,204,205,304],MXn=[301,302,303,307,308],dzo=new Set(MXn),HXn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],pzo=new Set(HXn),YXn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],fzo=new Set(YXn),Izo=["follow","manual","error"],QXn=["GET","HEAD","OPTIONS","TRACE"],hzo=new Set(QXn),mzo=["navigate","same-origin","no-cors","cors"],Czo=["omit","same-origin","include"],_zo=["default","no-store","reload","no-cache","force-cache","only-if-cached"],yzo=["content-encoding","content-language","content-location","content-type","content-length"],bzo=["half"],XXn=["CONNECT","TRACE","TRACK"],Ezo=new Set(XXn),JXn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Szo=new Set(JXn),vzo=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})(),UBe,Bzo=globalThis.structuredClone??function(t,r=void 0){if(arguments.length===0)throw new TypeError("missing argument");return UBe||(UBe=new lzo),UBe.port1.unref(),UBe.port2.unref(),UBe.port1.postMessage(t,r?.transfer),uzo(UBe.port2).message};UXn.exports={DOMException:vzo,structuredClone:Bzo,subresource:JXn,forbiddenMethods:XXn,requestBodyHeader:yzo,referrerPolicy:YXn,requestRedirect:Izo,requestMode:mzo,requestCredentials:Czo,requestCache:_zo,redirectStatus:MXn,corsSafeListedMethods:PXn,nullBodyStatus:Azo,safeMethods:QXn,badPorts:HXn,requestDuplex:bzo,subresourceSet:Szo,badPortsSet:pzo,redirectStatusSet:dzo,corsSafeListedMethodsSet:gzo,safeMethodsSet:hzo,forbiddenMethodsSet:Ezo,referrerPolicySet:fzo}});var KBe=H((Qru,KXn)=>{"use strict";var eCr=Symbol.for("undici.globalOrigin.1");function wzo(){return globalThis[eCr]}function Tzo(e){if(e===void 0){Object.defineProperty(globalThis,eCr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,eCr,{value:t,writable:!0,enumerable:!1,configurable:!1})}KXn.exports={getGlobalOrigin:wzo,setGlobalOrigin:Tzo}});var DM=H((Xru,n4n)=>{"use strict";var{redirectStatusSet:Rzo,referrerPolicySet:Nzo,badPortsSet:Dzo}=oae(),{getGlobalOrigin:kzo}=KBe(),{performance:xzo}=Et("perf_hooks"),{isBlobLike:Gzo,toUSVString:Fzo,ReadableStreamFrom:Zzo}=$C(),jBe=Et("assert"),{isUint8Array:Lzo}=Et("util/types"),jXn=[],Rft;try{Rft=Et("crypto");let e=["sha256","sha384","sha512"];jXn=Rft.getHashes().filter(t=>e.includes(t))}catch{}function zXn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function Vzo(e,t){if(!Rzo.has(e.status))return null;let r=e.headersList.get("location");return r!==null&&$Xn(r)&&(r=new URL(r,zXn(e))),r&&!r.hash&&(r.hash=t),r}function PHe(e){return e.urlList[e.urlList.length-1]}function Wzo(e){let t=PHe(e);return r4n(t)&&Dzo.has(t.port)?"blocked":"allowed"}function Ozo(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function Pzo(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}function Mzo(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function qXn(e){if(e.length===0)return!1;for(let t=0;t0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(Nzo.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function Qzo(){return"allowed"}function Xzo(){return"success"}function Jzo(){return"success"}function Uzo(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)}function Kzo(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket")t&&e.headersList.append("origin",t);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&nCr(e.origin)&&!nCr(PHe(e))&&(t=null);break;case"same-origin":Nft(e,PHe(e))||(t=null);break;default:}t&&e.headersList.append("origin",t)}}function jzo(e){return xzo.now()}function zzo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function qzo(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function $zo(e){return{referrerPolicy:e.referrerPolicy}}function eqo(e){let t=e.referrerPolicy;jBe(t);let r=null;if(e.referrer==="client"){let A=kzo();if(!A||A.origin==="null")return"no-referrer";r=new URL(A)}else e.referrer instanceof URL&&(r=e.referrer);let n=tCr(r),a=tCr(r,!0);n.toString().length>4096&&(n=a);let o=Nft(e,n),l=OHe(n)&&!OHe(e.url);switch(t){case"origin":return a??tCr(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=PHe(e);return Nft(n,A)?n:OHe(n)&&!OHe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function tCr(e,t){return jBe(e instanceof URL),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function OHe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function tqo(e,t){if(Rft===void 0)return!0;let r=e4n(t);if(r==="no metadata"||r.length===0)return!0;let n=nqo(r),a=iqo(r,n);for(let o of a){let l=o.algo,A=o.hash,f=Rft.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),sqo(f,A))return!0}return!1}var rqo=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function e4n(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=rqo.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();jXn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function nqo(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function cqo(e){return e.controller.state==="aborted"}function lqo(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}var iCr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(iCr,null);function uqo(e){return iCr[e.toLowerCase()]??e}function gqo(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return jBe(typeof t=="string"),t}var Aqo=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function dqo(e,t,r){let n={index:0,kind:r,target:e},a={next(){if(Object.getPrototypeOf(this)!==a)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let{index:o,kind:l,target:A}=n,f=A(),I=f.length;if(o>=I)return{value:void 0,done:!0};let C=f[o];return n.index=o+1,pqo(C,l)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(a,Aqo),Object.setPrototypeOf({},a)}function pqo(e,t){let r;switch(t){case"key":{r=e[0];break}case"value":{r=e[1];break}case"key+value":{r=e;break}}return{value:r,done:!1}}async function fqo(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{let l=await t4n(o);n(l)}catch(l){a(l)}}var rCr=globalThis.ReadableStream;function Iqo(e){return rCr||(rCr=Et("stream/web").ReadableStream),e instanceof rCr||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}var hqo=65535;function mqo(e){return e.lengtht+String.fromCharCode(r),"")}function Cqo(e){try{e.close()}catch(t){if(!t.message.includes("Controller is already closed"))throw t}}function _qo(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));n4n.exports={isAborted:cqo,isCancelled:lqo,createDeferredPromise:aqo,ReadableStreamFrom:Zzo,toUSVString:Fzo,tryUpgradeRequestToAPotentiallyTrustworthyURL:oqo,coarsenedSharedCurrentTime:jzo,determineRequestsReferrer:eqo,makePolicyContainer:qzo,clonePolicyContainer:$zo,appendFetchMetadata:Uzo,appendRequestOriginHeader:Kzo,TAOCheck:Jzo,corsCheck:Xzo,crossOriginResourcePolicyCheck:Qzo,createOpaqueTimingInfo:zzo,setRequestReferrerPolicyOnRedirect:Yzo,isValidHTTPToken:qXn,requestBadPort:Wzo,requestCurrentURL:PHe,responseURL:zXn,responseLocationURL:Vzo,isBlobLike:Gzo,isURLPotentiallyTrustworthy:OHe,isValidReasonPhrase:Pzo,sameOrigin:Nft,normalizeMethod:uqo,serializeJavascriptValueToJSONString:gqo,makeIterator:dqo,isValidHeaderName:Hzo,isValidHeaderValue:$Xn,hasOwn:bqo,isErrorLike:Ozo,fullyReadBody:fqo,bytesMatch:tqo,isReadableStreamLike:Iqo,readableStreamClose:Cqo,isomorphicEncode:_qo,isomorphicDecode:mqo,urlIsLocal:yqo,urlHasHttpsScheme:nCr,urlIsHttpHttpsScheme:r4n,readAllBytes:t4n,normalizeMethodRecord:iCr,parseMetadata:e4n}});var W$=H((Jru,i4n)=>{"use strict";i4n.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}});var WZ=H((Uru,o4n)=>{"use strict";var{types:w8}=Et("util"),{hasOwn:s4n,toUSVString:Eqo}=DM(),fg={};fg.converters={};fg.util={};fg.errors={};fg.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};fg.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return fg.errors.exception({header:e.prefix,message:r})};fg.errors.invalidArgument=function(e){return fg.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};fg.brandCheck=function(e,t,r=void 0){if(r?.strict!==!1&&!(e instanceof t))throw new TypeError("Illegal invocation");return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]};fg.argumentLengthCheck=function({length:e},t,r){if(ea)throw fg.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=fg.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};fg.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};fg.sequenceConverter=function(e){return t=>{if(fg.util.Type(t)!=="Object")throw fg.errors.exception({header:"Sequence",message:`Value of type ${fg.util.Type(t)} is not an Object.`});let r=t?.[Symbol.iterator]?.(),n=[];if(r===void 0||typeof r.next!="function")throw fg.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){let{done:a,value:o}=r.next();if(a)break;n.push(e(o))}return n}};fg.recordConverter=function(e,t){return r=>{if(fg.util.Type(r)!=="Object")throw fg.errors.exception({header:"Record",message:`Value of type ${fg.util.Type(r)} is not an Object.`});let n={};if(!w8.isProxy(r)){let o=Object.keys(r);for(let l of o){let A=e(l),f=t(r[l]);n[A]=f}return n}let a=Reflect.ownKeys(r);for(let o of a)if(Reflect.getOwnPropertyDescriptor(r,o)?.enumerable){let A=e(o),f=t(r[o]);n[A]=f}return n}};fg.interfaceConverter=function(e){return(t,r={})=>{if(r.strict!==!1&&!(t instanceof e))throw fg.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}};fg.dictionaryConverter=function(e){return t=>{let r=fg.util.Type(t),n={};if(r==="Null"||r==="Undefined")return n;if(r!=="Object")throw fg.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:o,defaultValue:l,required:A,converter:f}=a;if(A===!0&&!s4n(t,o))throw fg.errors.exception({header:"Dictionary",message:`Missing required key "${o}".`});let I=t[o],C=s4n(a,"defaultValue");if(C&&I!==null&&(I=I??l),A||C||I!==void 0){if(I=f(I),a.allowedValues&&!a.allowedValues.includes(I))throw fg.errors.exception({header:"Dictionary",message:`${I} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});n[o]=I}}return n}};fg.nullableConverter=function(e){return t=>t===null?t:e(t)};fg.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw new TypeError("Could not convert argument of type symbol to string.");return String(e)};fg.converters.ByteString=function(e){let t=fg.converters.DOMString(e);for(let r=0;r255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${r} has a value of ${t.charCodeAt(r)} which is greater than 255.`);return t};fg.converters.USVString=Eqo;fg.converters.boolean=function(e){return!!e};fg.converters.any=function(e){return e};fg.converters["long long"]=function(e){return fg.util.ConvertToInt(e,64,"signed")};fg.converters["unsigned long long"]=function(e){return fg.util.ConvertToInt(e,64,"unsigned")};fg.converters["unsigned long"]=function(e){return fg.util.ConvertToInt(e,32,"unsigned")};fg.converters["unsigned short"]=function(e,t){return fg.util.ConvertToInt(e,16,"unsigned",t)};fg.converters.ArrayBuffer=function(e,t={}){if(fg.util.Type(e)!=="Object"||!w8.isAnyArrayBuffer(e))throw fg.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]});if(t.allowShared===!1&&w8.isSharedArrayBuffer(e))throw fg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};fg.converters.TypedArray=function(e,t,r={}){if(fg.util.Type(e)!=="Object"||!w8.isTypedArray(e)||e.constructor.name!==t.name)throw fg.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]});if(r.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw fg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};fg.converters.DataView=function(e,t={}){if(fg.util.Type(e)!=="Object"||!w8.isDataView(e))throw fg.errors.exception({header:"DataView",message:"Object is not a DataView."});if(t.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw fg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};fg.converters.BufferSource=function(e,t={}){if(w8.isAnyArrayBuffer(e))return fg.converters.ArrayBuffer(e,t);if(w8.isTypedArray(e))return fg.converters.TypedArray(e,e.constructor);if(w8.isDataView(e))return fg.converters.DataView(e,t);throw new TypeError(`Could not convert ${e} to a BufferSource.`)};fg.converters["sequence"]=fg.sequenceConverter(fg.converters.ByteString);fg.converters["sequence>"]=fg.sequenceConverter(fg.converters["sequence"]);fg.converters["record"]=fg.recordConverter(fg.converters.ByteString,fg.converters.ByteString);o4n.exports={webidl:fg}});var VX=H((Kru,A4n)=>{var kft=Et("assert"),{atob:Sqo}=Et("buffer"),{isomorphicDecode:vqo}=DM(),Bqo=new TextEncoder,Dft=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,wqo=/(\u000A|\u000D|\u0009|\u0020)/,Tqo=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function Rqo(e){kft(e.protocol==="data:");let t=l4n(e,!0);t=t.slice(5);let r={position:0},n=zBe(",",t,r),a=n.length;if(n=xqo(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=u4n(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=vqo(l);if(l=Dqo(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=oCr(n);return A==="failure"&&(A=oCr("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function l4n(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length;return n===0?r:r.substring(0,r.length-n)}function xft(e,t,r){let n="";for(;r.positione.length)return"failure";t.position++;let n=zBe(";",e,t);if(n=sCr(n,!1,!0),n.length===0||!Dft.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionwqo.test(I),e,t);let A=xft(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=g4n(e,t,!0),zBe(";",e,t);else if(f=zBe(";",e,t),f=sCr(f,!1,!0),f.length===0)continue;A.length!==0&&Dft.test(A)&&(f.length===0||Tqo.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function Dqo(e){if(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,""),e.length%4===0&&(e=e.replace(/=?=$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return"failure";let t=Sqo(e),r=new Uint8Array(t.length);for(let n=0;nl!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{kft(o==='"');break}}return r?a:e.slice(n,t.position)}function kqo(e){kft(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",Dft.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function a4n(e){return e==="\r"||e===` -`||e===" "||e===" "}function sCr(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&a4n(e[a]);a--);return e.slice(n,a+1)}function c4n(e){return e==="\r"||e===` -`||e===" "||e==="\f"||e===" "}function xqo(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&c4n(e[a]);a--);return e.slice(n,a+1)}A4n.exports={dataURLProcessor:Rqo,URLSerializer:l4n,collectASequenceOfCodePoints:xft,collectASequenceOfCodePointsFast:zBe,stringPercentDecode:u4n,parseMIMEType:oCr,collectAnHTTPQuotedString:g4n,serializeAMimeType:kqo}});var Gft=H((jru,h4n)=>{"use strict";var{Blob:f4n,File:d4n}=Et("buffer"),{types:aCr}=Et("util"),{kState:KO}=W$(),{isBlobLike:I4n}=DM(),{webidl:Q0}=WZ(),{parseMIMEType:Gqo,serializeAMimeType:Fqo}=VX(),{kEnumerableProperty:p4n}=$C(),Zqo=new TextEncoder,MHe=class e extends f4n{constructor(t,r,n={}){Q0.argumentLengthCheck(arguments,2,{header:"File constructor"}),t=Q0.converters["sequence"](t),r=Q0.converters.USVString(r),n=Q0.converters.FilePropertyBag(n);let a=r,o=n.type,l;e:{if(o){if(o=Gqo(o),o==="failure"){o="";break e}o=Fqo(o).toLowerCase()}l=n.lastModified}super(Lqo(t,n),{type:o}),this[KO]={name:a,lastModified:l,type:o}}get name(){return Q0.brandCheck(this,e),this[KO].name}get lastModified(){return Q0.brandCheck(this,e),this[KO].lastModified}get type(){return Q0.brandCheck(this,e),this[KO].type}},cCr=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[KO]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return Q0.brandCheck(this,e),this[KO].blobLike.stream(...t)}arrayBuffer(...t){return Q0.brandCheck(this,e),this[KO].blobLike.arrayBuffer(...t)}slice(...t){return Q0.brandCheck(this,e),this[KO].blobLike.slice(...t)}text(...t){return Q0.brandCheck(this,e),this[KO].blobLike.text(...t)}get size(){return Q0.brandCheck(this,e),this[KO].blobLike.size}get type(){return Q0.brandCheck(this,e),this[KO].blobLike.type}get name(){return Q0.brandCheck(this,e),this[KO].name}get lastModified(){return Q0.brandCheck(this,e),this[KO].lastModified}get[Symbol.toStringTag](){return"File"}};Object.defineProperties(MHe.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:p4n,lastModified:p4n});Q0.converters.Blob=Q0.interfaceConverter(f4n);Q0.converters.BlobPart=function(e,t){if(Q0.util.Type(e)==="Object"){if(I4n(e))return Q0.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||aCr.isAnyArrayBuffer(e))return Q0.converters.BufferSource(e,t)}return Q0.converters.USVString(e,t)};Q0.converters["sequence"]=Q0.sequenceConverter(Q0.converters.BlobPart);Q0.converters.FilePropertyBag=Q0.dictionaryConverter([{key:"lastModified",converter:Q0.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:Q0.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>(e=Q0.converters.DOMString(e),e=e.toLowerCase(),e!=="native"&&(e="transparent"),e),defaultValue:"transparent"}]);function Lqo(e,t){let r=[];for(let n of e)if(typeof n=="string"){let a=n;t.endings==="native"&&(a=Vqo(a)),r.push(Zqo.encode(a))}else aCr.isAnyArrayBuffer(n)||aCr.isTypedArray(n)?n.buffer?r.push(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)):r.push(new Uint8Array(n)):I4n(n)&&r.push(n);return r}function Vqo(e){let t=` +`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function NXn(e){return Q7o[e]}var Sft=0,DXn=1,Umr=2,kXn=3;function X7o(e){let t=[],r=Sft,n="",a=!1,o=!1,l=0,A="",f=e.length;for(var I=0;I{"use strict";GXn.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var WXn=H((Rnu,VXn)=>{"use strict";var{Readable:LXn}=Et("node:stream"),{inherits:J7o}=Et("node:util"),U7o=Xmr(),ZXn=Kmr(),K7o=bft(),j7o=FXn(),$Ie=yft(),z7o=/^boundary$/i,q7o=/^form-data$/i,$7o=/^charset$/i,ezo=/^filename$/i,tzo=/^name$/i;vft.detect=/^multipart\/form-data/i;function vft(e,t){let r,n,a=this,o,l=t.limits,A=t.isPartAFile||((k,tt,ze)=>tt==="application/octet-stream"||ze!==void 0),f=t.parsedConType||[],I=t.defCharset||"utf8",C=t.preservePath,b={highWaterMark:t.fileHwm};for(r=0,n=f.length;rJ)return a.parser.removeListener("part",k),a.parser.on("part",XBe),e.hitPartsLimit=!0,e.emit("partsLimit"),XBe(tt);if(be){let ze=be;ze.emit("end"),ze.removeAllListeners("end")}tt.on("header",function(ze){let Le,Je,ft,lt,Ot,Er,Sr=0;if(ze["content-type"]&&(ft=ZXn(ze["content-type"][0]),ft[0])){for(Le=ft[0].toLowerCase(),r=0,n=ft.length;rB){let $t=B-Sr+Fr.length;$t>0&&Nt.push(Fr.slice(0,$t)),Nt.truncated=!0,Nt.bytesRead=B,tt.removeAllListeners("data"),Nt.emit("limit");return}else Nt.push(Fr)||(a._pause=!0);Nt.bytesRead=Sr},Bt=function(){de=void 0,Nt.push(null)}}else{if(fe===Q)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),XBe(tt);++fe,++ue;let Nt="",Fr=!1;be=tt,jt=function($t){if((Sr+=$t.length)>N){let Xt=N-(Sr-$t.length);Nt+=$t.toString("binary",0,Xt),Fr=!0,tt.removeAllListeners("data")}else Nt+=$t.toString("binary")},Bt=function(){be=void 0,Nt.length&&(Nt=K7o(Nt,"binary",lt)),e.emit("field",Je,Nt,!1,Fr,Ot,Le),--ue,E()}}tt._readableState.sync=!1,tt.on("data",jt),tt.on("end",Bt)}).on("error",function(ze){de&&de.emit("error",ze)})}).on("error",function(k){e.emit("error",k)}).on("finish",function(){Se=!0,E()})}vft.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};vft.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function XBe(e){e.resume()}function jmr(e){LXn.call(this,e),this.bytesRead=0,this.truncated=!1}J7o(jmr,LXn);jmr.prototype._read=function(e){};VXn.exports=vft});var PXn=H((Nnu,OXn)=>{"use strict";var rzo=/\+/g,nzo=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,0,0,0,0,0,0,0,1,1,1,1,1,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,1,1,1,1,1,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];function zmr(){this.buffer=void 0}zmr.prototype.write=function(e){e=e.replace(rzo," ");let t="",r=0,n=0,a=e.length;for(;rn&&(t+=e.substring(n,r),n=r),this.buffer="",++n);return n{"use strict";var izo=PXn(),JBe=bft(),qmr=yft(),szo=/^charset$/i;Bft.detect=/^application\/x-www-form-urlencoded/i;function Bft(e,t){let r=t.limits,n=t.parsedConType;this.boy=e,this.fieldSizeLimit=qmr(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=qmr(r,"fieldNameSize",100),this.fieldsLimit=qmr(r,"fields",1/0);let a;for(var o=0,l=n.length;oo&&(this._key+=this.decoder.write(e.toString("binary",o,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),o=r+1;else if(n!==void 0){++this._fields;let A,f=this._keyTrunc;if(n>o?A=this._key+=this.decoder.write(e.toString("binary",o,n)):A=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),A.length&&this.boy.emit("field",JBe(A,"binary",this.charset),"",f,!1),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._key+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(oo&&(this._val+=this.decoder.write(e.toString("binary",o,n))),this.boy.emit("field",JBe(this._key,"binary",this.charset),JBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._val+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(o0?this.boy.emit("field",JBe(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",JBe(this._key,"binary",this.charset),JBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};MXn.exports=Bft});var XXn=H((knu,VHe)=>{"use strict";var $mr=Et("node:stream").Writable,{inherits:ozo}=Et("node:util"),azo=Xmr(),YXn=WXn(),QXn=HXn(),czo=Kmr();function W$(e){if(!(this instanceof W$))return new W$(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},$mr.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}ozo(W$,$mr);W$.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}$mr.prototype.emit.apply(this,arguments)};W$.prototype.getParserByHeaders=function(e){let t=czo(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(YXn.detect.test(t[0]))return new YXn(this,r);if(QXn.detect.test(t[0]))return new QXn(this,r);throw new Error("Unsupported Content-Type.")};W$.prototype._write=function(e,t,r){this._parser.write(e,r)};VHe.exports=W$;VHe.exports.default=W$;VHe.exports.Busboy=W$;VHe.exports.Dicer=azo});var aae=H((xnu,e4n)=>{"use strict";var{MessageChannel:lzo,receiveMessageOnPort:uzo}=Et("worker_threads"),JXn=["GET","HEAD","POST"],gzo=new Set(JXn),Azo=[101,204,205,304],UXn=[301,302,303,307,308],dzo=new Set(UXn),KXn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],pzo=new Set(KXn),jXn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],fzo=new Set(jXn),Izo=["follow","manual","error"],zXn=["GET","HEAD","OPTIONS","TRACE"],hzo=new Set(zXn),mzo=["navigate","same-origin","no-cors","cors"],Czo=["omit","same-origin","include"],_zo=["default","no-store","reload","no-cache","force-cache","only-if-cached"],yzo=["content-encoding","content-language","content-location","content-type","content-length"],bzo=["half"],qXn=["CONNECT","TRACE","TRACK"],Ezo=new Set(qXn),$Xn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Szo=new Set($Xn),vzo=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})(),UBe,Bzo=globalThis.structuredClone??function(t,r=void 0){if(arguments.length===0)throw new TypeError("missing argument");return UBe||(UBe=new lzo),UBe.port1.unref(),UBe.port2.unref(),UBe.port1.postMessage(t,r?.transfer),uzo(UBe.port2).message};e4n.exports={DOMException:vzo,structuredClone:Bzo,subresource:$Xn,forbiddenMethods:qXn,requestBodyHeader:yzo,referrerPolicy:jXn,requestRedirect:Izo,requestMode:mzo,requestCredentials:Czo,requestCache:_zo,redirectStatus:UXn,corsSafeListedMethods:JXn,nullBodyStatus:Azo,safeMethods:zXn,badPorts:KXn,requestDuplex:bzo,subresourceSet:Szo,badPortsSet:pzo,redirectStatusSet:dzo,corsSafeListedMethodsSet:gzo,safeMethodsSet:hzo,forbiddenMethodsSet:Ezo,referrerPolicySet:fzo}});var KBe=H((Gnu,t4n)=>{"use strict";var eCr=Symbol.for("undici.globalOrigin.1");function wzo(){return globalThis[eCr]}function Tzo(e){if(e===void 0){Object.defineProperty(globalThis,eCr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,eCr,{value:t,writable:!0,enumerable:!1,configurable:!1})}t4n.exports={getGlobalOrigin:wzo,setGlobalOrigin:Tzo}});var kM=H((Fnu,l4n)=>{"use strict";var{redirectStatusSet:Rzo,referrerPolicySet:Nzo,badPortsSet:Dzo}=aae(),{getGlobalOrigin:kzo}=KBe(),{performance:xzo}=Et("perf_hooks"),{isBlobLike:Gzo,toUSVString:Fzo,ReadableStreamFrom:Zzo}=e_(),jBe=Et("assert"),{isUint8Array:Lzo}=Et("util/types"),r4n=[],wft;try{wft=Et("crypto");let e=["sha256","sha384","sha512"];r4n=wft.getHashes().filter(t=>e.includes(t))}catch{}function n4n(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function Vzo(e,t){if(!Rzo.has(e.status))return null;let r=e.headersList.get("location");return r!==null&&s4n(r)&&(r=new URL(r,n4n(e))),r&&!r.hash&&(r.hash=t),r}function OHe(e){return e.urlList[e.urlList.length-1]}function Wzo(e){let t=OHe(e);return c4n(t)&&Dzo.has(t.port)?"blocked":"allowed"}function Ozo(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function Pzo(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}function Mzo(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function i4n(e){if(e.length===0)return!1;for(let t=0;t0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(Nzo.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function Qzo(){return"allowed"}function Xzo(){return"success"}function Jzo(){return"success"}function Uzo(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)}function Kzo(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket")t&&e.headersList.append("origin",t);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&nCr(e.origin)&&!nCr(OHe(e))&&(t=null);break;case"same-origin":Tft(e,OHe(e))||(t=null);break;default:}t&&e.headersList.append("origin",t)}}function jzo(e){return xzo.now()}function zzo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function qzo(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function $zo(e){return{referrerPolicy:e.referrerPolicy}}function eqo(e){let t=e.referrerPolicy;jBe(t);let r=null;if(e.referrer==="client"){let A=kzo();if(!A||A.origin==="null")return"no-referrer";r=new URL(A)}else e.referrer instanceof URL&&(r=e.referrer);let n=tCr(r),a=tCr(r,!0);n.toString().length>4096&&(n=a);let o=Tft(e,n),l=WHe(n)&&!WHe(e.url);switch(t){case"origin":return a??tCr(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=OHe(e);return Tft(n,A)?n:WHe(n)&&!WHe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function tCr(e,t){return jBe(e instanceof URL),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function WHe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function tqo(e,t){if(wft===void 0)return!0;let r=o4n(t);if(r==="no metadata"||r.length===0)return!0;let n=nqo(r),a=iqo(r,n);for(let o of a){let l=o.algo,A=o.hash,f=wft.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),sqo(f,A))return!0}return!1}var rqo=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function o4n(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=rqo.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();r4n.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function nqo(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function cqo(e){return e.controller.state==="aborted"}function lqo(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}var iCr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(iCr,null);function uqo(e){return iCr[e.toLowerCase()]??e}function gqo(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return jBe(typeof t=="string"),t}var Aqo=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function dqo(e,t,r){let n={index:0,kind:r,target:e},a={next(){if(Object.getPrototypeOf(this)!==a)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let{index:o,kind:l,target:A}=n,f=A(),I=f.length;if(o>=I)return{value:void 0,done:!0};let C=f[o];return n.index=o+1,pqo(C,l)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(a,Aqo),Object.setPrototypeOf({},a)}function pqo(e,t){let r;switch(t){case"key":{r=e[0];break}case"value":{r=e[1];break}case"key+value":{r=e;break}}return{value:r,done:!1}}async function fqo(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{let l=await a4n(o);n(l)}catch(l){a(l)}}var rCr=globalThis.ReadableStream;function Iqo(e){return rCr||(rCr=Et("stream/web").ReadableStream),e instanceof rCr||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}var hqo=65535;function mqo(e){return e.lengtht+String.fromCharCode(r),"")}function Cqo(e){try{e.close()}catch(t){if(!t.message.includes("Controller is already closed"))throw t}}function _qo(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));l4n.exports={isAborted:cqo,isCancelled:lqo,createDeferredPromise:aqo,ReadableStreamFrom:Zzo,toUSVString:Fzo,tryUpgradeRequestToAPotentiallyTrustworthyURL:oqo,coarsenedSharedCurrentTime:jzo,determineRequestsReferrer:eqo,makePolicyContainer:qzo,clonePolicyContainer:$zo,appendFetchMetadata:Uzo,appendRequestOriginHeader:Kzo,TAOCheck:Jzo,corsCheck:Xzo,crossOriginResourcePolicyCheck:Qzo,createOpaqueTimingInfo:zzo,setRequestReferrerPolicyOnRedirect:Yzo,isValidHTTPToken:i4n,requestBadPort:Wzo,requestCurrentURL:OHe,responseURL:n4n,responseLocationURL:Vzo,isBlobLike:Gzo,isURLPotentiallyTrustworthy:WHe,isValidReasonPhrase:Pzo,sameOrigin:Tft,normalizeMethod:uqo,serializeJavascriptValueToJSONString:gqo,makeIterator:dqo,isValidHeaderName:Hzo,isValidHeaderValue:s4n,hasOwn:bqo,isErrorLike:Ozo,fullyReadBody:fqo,bytesMatch:tqo,isReadableStreamLike:Iqo,readableStreamClose:Cqo,isomorphicEncode:_qo,isomorphicDecode:mqo,urlIsLocal:yqo,urlHasHttpsScheme:nCr,urlIsHttpHttpsScheme:c4n,readAllBytes:a4n,normalizeMethodRecord:iCr,parseMetadata:o4n}});var O$=H((Znu,u4n)=>{"use strict";u4n.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}});var OZ=H((Lnu,A4n)=>{"use strict";var{types:T8}=Et("util"),{hasOwn:g4n,toUSVString:Eqo}=kM(),fg={};fg.converters={};fg.util={};fg.errors={};fg.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};fg.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return fg.errors.exception({header:e.prefix,message:r})};fg.errors.invalidArgument=function(e){return fg.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};fg.brandCheck=function(e,t,r=void 0){if(r?.strict!==!1&&!(e instanceof t))throw new TypeError("Illegal invocation");return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]};fg.argumentLengthCheck=function({length:e},t,r){if(ea)throw fg.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=fg.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};fg.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};fg.sequenceConverter=function(e){return t=>{if(fg.util.Type(t)!=="Object")throw fg.errors.exception({header:"Sequence",message:`Value of type ${fg.util.Type(t)} is not an Object.`});let r=t?.[Symbol.iterator]?.(),n=[];if(r===void 0||typeof r.next!="function")throw fg.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){let{done:a,value:o}=r.next();if(a)break;n.push(e(o))}return n}};fg.recordConverter=function(e,t){return r=>{if(fg.util.Type(r)!=="Object")throw fg.errors.exception({header:"Record",message:`Value of type ${fg.util.Type(r)} is not an Object.`});let n={};if(!T8.isProxy(r)){let o=Object.keys(r);for(let l of o){let A=e(l),f=t(r[l]);n[A]=f}return n}let a=Reflect.ownKeys(r);for(let o of a)if(Reflect.getOwnPropertyDescriptor(r,o)?.enumerable){let A=e(o),f=t(r[o]);n[A]=f}return n}};fg.interfaceConverter=function(e){return(t,r={})=>{if(r.strict!==!1&&!(t instanceof e))throw fg.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}};fg.dictionaryConverter=function(e){return t=>{let r=fg.util.Type(t),n={};if(r==="Null"||r==="Undefined")return n;if(r!=="Object")throw fg.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:o,defaultValue:l,required:A,converter:f}=a;if(A===!0&&!g4n(t,o))throw fg.errors.exception({header:"Dictionary",message:`Missing required key "${o}".`});let I=t[o],C=g4n(a,"defaultValue");if(C&&I!==null&&(I=I??l),A||C||I!==void 0){if(I=f(I),a.allowedValues&&!a.allowedValues.includes(I))throw fg.errors.exception({header:"Dictionary",message:`${I} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});n[o]=I}}return n}};fg.nullableConverter=function(e){return t=>t===null?t:e(t)};fg.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw new TypeError("Could not convert argument of type symbol to string.");return String(e)};fg.converters.ByteString=function(e){let t=fg.converters.DOMString(e);for(let r=0;r255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${r} has a value of ${t.charCodeAt(r)} which is greater than 255.`);return t};fg.converters.USVString=Eqo;fg.converters.boolean=function(e){return!!e};fg.converters.any=function(e){return e};fg.converters["long long"]=function(e){return fg.util.ConvertToInt(e,64,"signed")};fg.converters["unsigned long long"]=function(e){return fg.util.ConvertToInt(e,64,"unsigned")};fg.converters["unsigned long"]=function(e){return fg.util.ConvertToInt(e,32,"unsigned")};fg.converters["unsigned short"]=function(e,t){return fg.util.ConvertToInt(e,16,"unsigned",t)};fg.converters.ArrayBuffer=function(e,t={}){if(fg.util.Type(e)!=="Object"||!T8.isAnyArrayBuffer(e))throw fg.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]});if(t.allowShared===!1&&T8.isSharedArrayBuffer(e))throw fg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};fg.converters.TypedArray=function(e,t,r={}){if(fg.util.Type(e)!=="Object"||!T8.isTypedArray(e)||e.constructor.name!==t.name)throw fg.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]});if(r.allowShared===!1&&T8.isSharedArrayBuffer(e.buffer))throw fg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};fg.converters.DataView=function(e,t={}){if(fg.util.Type(e)!=="Object"||!T8.isDataView(e))throw fg.errors.exception({header:"DataView",message:"Object is not a DataView."});if(t.allowShared===!1&&T8.isSharedArrayBuffer(e.buffer))throw fg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};fg.converters.BufferSource=function(e,t={}){if(T8.isAnyArrayBuffer(e))return fg.converters.ArrayBuffer(e,t);if(T8.isTypedArray(e))return fg.converters.TypedArray(e,e.constructor);if(T8.isDataView(e))return fg.converters.DataView(e,t);throw new TypeError(`Could not convert ${e} to a BufferSource.`)};fg.converters["sequence"]=fg.sequenceConverter(fg.converters.ByteString);fg.converters["sequence>"]=fg.sequenceConverter(fg.converters["sequence"]);fg.converters["record"]=fg.recordConverter(fg.converters.ByteString,fg.converters.ByteString);A4n.exports={webidl:fg}});var WX=H((Vnu,m4n)=>{var Nft=Et("assert"),{atob:Sqo}=Et("buffer"),{isomorphicDecode:vqo}=kM(),Bqo=new TextEncoder,Rft=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,wqo=/(\u000A|\u000D|\u0009|\u0020)/,Tqo=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function Rqo(e){Nft(e.protocol==="data:");let t=f4n(e,!0);t=t.slice(5);let r={position:0},n=zBe(",",t,r),a=n.length;if(n=xqo(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=I4n(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=vqo(l);if(l=Dqo(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=oCr(n);return A==="failure"&&(A=oCr("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function f4n(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length;return n===0?r:r.substring(0,r.length-n)}function Dft(e,t,r){let n="";for(;r.positione.length)return"failure";t.position++;let n=zBe(";",e,t);if(n=sCr(n,!1,!0),n.length===0||!Rft.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionwqo.test(I),e,t);let A=Dft(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=h4n(e,t,!0),zBe(";",e,t);else if(f=zBe(";",e,t),f=sCr(f,!1,!0),f.length===0)continue;A.length!==0&&Rft.test(A)&&(f.length===0||Tqo.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function Dqo(e){if(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,""),e.length%4===0&&(e=e.replace(/=?=$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return"failure";let t=Sqo(e),r=new Uint8Array(t.length);for(let n=0;nl!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{Nft(o==='"');break}}return r?a:e.slice(n,t.position)}function kqo(e){Nft(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",Rft.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function d4n(e){return e==="\r"||e===` +`||e===" "||e===" "}function sCr(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&d4n(e[a]);a--);return e.slice(n,a+1)}function p4n(e){return e==="\r"||e===` +`||e===" "||e==="\f"||e===" "}function xqo(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&p4n(e[a]);a--);return e.slice(n,a+1)}m4n.exports={dataURLProcessor:Rqo,URLSerializer:f4n,collectASequenceOfCodePoints:Dft,collectASequenceOfCodePointsFast:zBe,stringPercentDecode:I4n,parseMIMEType:oCr,collectAnHTTPQuotedString:h4n,serializeAMimeType:kqo}});var kft=H((Wnu,E4n)=>{"use strict";var{Blob:y4n,File:C4n}=Et("buffer"),{types:aCr}=Et("util"),{kState:zO}=O$(),{isBlobLike:b4n}=kM(),{webidl:X0}=OZ(),{parseMIMEType:Gqo,serializeAMimeType:Fqo}=WX(),{kEnumerableProperty:_4n}=e_(),Zqo=new TextEncoder,PHe=class e extends y4n{constructor(t,r,n={}){X0.argumentLengthCheck(arguments,2,{header:"File constructor"}),t=X0.converters["sequence"](t),r=X0.converters.USVString(r),n=X0.converters.FilePropertyBag(n);let a=r,o=n.type,l;e:{if(o){if(o=Gqo(o),o==="failure"){o="";break e}o=Fqo(o).toLowerCase()}l=n.lastModified}super(Lqo(t,n),{type:o}),this[zO]={name:a,lastModified:l,type:o}}get name(){return X0.brandCheck(this,e),this[zO].name}get lastModified(){return X0.brandCheck(this,e),this[zO].lastModified}get type(){return X0.brandCheck(this,e),this[zO].type}},cCr=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[zO]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return X0.brandCheck(this,e),this[zO].blobLike.stream(...t)}arrayBuffer(...t){return X0.brandCheck(this,e),this[zO].blobLike.arrayBuffer(...t)}slice(...t){return X0.brandCheck(this,e),this[zO].blobLike.slice(...t)}text(...t){return X0.brandCheck(this,e),this[zO].blobLike.text(...t)}get size(){return X0.brandCheck(this,e),this[zO].blobLike.size}get type(){return X0.brandCheck(this,e),this[zO].blobLike.type}get name(){return X0.brandCheck(this,e),this[zO].name}get lastModified(){return X0.brandCheck(this,e),this[zO].lastModified}get[Symbol.toStringTag](){return"File"}};Object.defineProperties(PHe.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:_4n,lastModified:_4n});X0.converters.Blob=X0.interfaceConverter(y4n);X0.converters.BlobPart=function(e,t){if(X0.util.Type(e)==="Object"){if(b4n(e))return X0.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||aCr.isAnyArrayBuffer(e))return X0.converters.BufferSource(e,t)}return X0.converters.USVString(e,t)};X0.converters["sequence"]=X0.sequenceConverter(X0.converters.BlobPart);X0.converters.FilePropertyBag=X0.dictionaryConverter([{key:"lastModified",converter:X0.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:X0.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>(e=X0.converters.DOMString(e),e=e.toLowerCase(),e!=="native"&&(e="transparent"),e),defaultValue:"transparent"}]);function Lqo(e,t){let r=[];for(let n of e)if(typeof n=="string"){let a=n;t.endings==="native"&&(a=Vqo(a)),r.push(Zqo.encode(a))}else aCr.isAnyArrayBuffer(n)||aCr.isTypedArray(n)?n.buffer?r.push(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)):r.push(new Uint8Array(n)):b4n(n)&&r.push(n);return r}function Vqo(e){let t=` `;return process.platform==="win32"&&(t=`\r -`),e.replace(/\r?\n/g,t)}function Wqo(e){return d4n&&e instanceof d4n||e instanceof MHe||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}h4n.exports={File:MHe,FileLike:cCr,isFileLike:Wqo}});var Zft=H((zru,b4n)=>{"use strict";var{isBlobLike:Fft,toUSVString:Oqo,makeIterator:lCr}=DM(),{kState:SG}=W$(),{File:y4n,FileLike:m4n,isFileLike:Pqo}=Gft(),{webidl:yy}=WZ(),{Blob:Mqo,File:uCr}=Et("buffer"),C4n=uCr??y4n,qBe=class e{constructor(t){if(t!==void 0)throw yy.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[SG]=[]}append(t,r,n=void 0){if(yy.brandCheck(this,e),yy.argumentLengthCheck(arguments,2,{header:"FormData.append"}),arguments.length===3&&!Fft(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=yy.converters.USVString(t),r=Fft(r)?yy.converters.Blob(r,{strict:!1}):yy.converters.USVString(r),n=arguments.length===3?yy.converters.USVString(n):void 0;let a=_4n(t,r,n);this[SG].push(a)}delete(t){yy.brandCheck(this,e),yy.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),t=yy.converters.USVString(t),this[SG]=this[SG].filter(r=>r.name!==t)}get(t){yy.brandCheck(this,e),yy.argumentLengthCheck(arguments,1,{header:"FormData.get"}),t=yy.converters.USVString(t);let r=this[SG].findIndex(n=>n.name===t);return r===-1?null:this[SG][r].value}getAll(t){return yy.brandCheck(this,e),yy.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),t=yy.converters.USVString(t),this[SG].filter(r=>r.name===t).map(r=>r.value)}has(t){return yy.brandCheck(this,e),yy.argumentLengthCheck(arguments,1,{header:"FormData.has"}),t=yy.converters.USVString(t),this[SG].findIndex(r=>r.name===t)!==-1}set(t,r,n=void 0){if(yy.brandCheck(this,e),yy.argumentLengthCheck(arguments,2,{header:"FormData.set"}),arguments.length===3&&!Fft(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=yy.converters.USVString(t),r=Fft(r)?yy.converters.Blob(r,{strict:!1}):yy.converters.USVString(r),n=arguments.length===3?Oqo(n):void 0;let a=_4n(t,r,n),o=this[SG].findIndex(l=>l.name===t);o!==-1?this[SG]=[...this[SG].slice(0,o),a,...this[SG].slice(o+1).filter(l=>l.name!==t)]:this[SG].push(a)}entries(){return yy.brandCheck(this,e),lCr(()=>this[SG].map(t=>[t.name,t.value]),"FormData","key+value")}keys(){return yy.brandCheck(this,e),lCr(()=>this[SG].map(t=>[t.name,t.value]),"FormData","key")}values(){return yy.brandCheck(this,e),lCr(()=>this[SG].map(t=>[t.name,t.value]),"FormData","value")}forEach(t,r=globalThis){if(yy.brandCheck(this,e),yy.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}};qBe.prototype[Symbol.iterator]=qBe.prototype.entries;Object.defineProperties(qBe.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function _4n(e,t,r){if(e=Buffer.from(e).toString("utf8"),typeof t=="string")t=Buffer.from(t).toString("utf8");else if(Pqo(t)||(t=t instanceof Mqo?new C4n([t],"blob",{type:t.type}):new m4n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=uCr&&t instanceof uCr||t instanceof y4n?new C4n([t],r,n):new m4n(t,r,n)}return{name:e,value:t}}b4n.exports={FormData:qBe}});var HHe=H((qru,D4n)=>{"use strict";var Hqo=OXn(),$Be=$C(),{ReadableStreamFrom:Yqo,isBlobLike:E4n,isReadableStreamLike:Qqo,readableStreamClose:Xqo,createDeferredPromise:Jqo,fullyReadBody:Uqo}=DM(),{FormData:S4n}=Zft(),{kState:P$}=W$(),{webidl:gCr}=WZ(),{DOMException:w4n,structuredClone:Kqo}=oae(),{Blob:jqo,File:zqo}=Et("buffer"),{kBodyUsed:qqo}=LE(),ACr=Et("assert"),{isErrored:$qo}=$C(),{isUint8Array:T4n,isArrayBuffer:e$o}=Et("util/types"),{File:t$o}=Gft(),{parseMIMEType:r$o,serializeAMimeType:n$o}=VX(),O$=globalThis.ReadableStream,v4n=zqo??t$o,Lft=new TextEncoder,i$o=new TextDecoder;function R4n(e,t=!1){O$||(O$=Et("stream/web").ReadableStream);let r=null;e instanceof O$?r=e:E4n(e)?r=e.stream():r=new O$({async pull(f){f.enqueue(typeof a=="string"?Lft.encode(a):a),queueMicrotask(()=>Xqo(f))},start(){},type:void 0}),ACr(Qqo(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(e$o(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if($Be.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r +`),e.replace(/\r?\n/g,t)}function Wqo(e){return C4n&&e instanceof C4n||e instanceof PHe||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}E4n.exports={File:PHe,FileLike:cCr,isFileLike:Wqo}});var Gft=H((Onu,T4n)=>{"use strict";var{isBlobLike:xft,toUSVString:Oqo,makeIterator:lCr}=kM(),{kState:vG}=O$(),{File:w4n,FileLike:S4n,isFileLike:Pqo}=kft(),{webidl:by}=OZ(),{Blob:Mqo,File:uCr}=Et("buffer"),v4n=uCr??w4n,qBe=class e{constructor(t){if(t!==void 0)throw by.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[vG]=[]}append(t,r,n=void 0){if(by.brandCheck(this,e),by.argumentLengthCheck(arguments,2,{header:"FormData.append"}),arguments.length===3&&!xft(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=by.converters.USVString(t),r=xft(r)?by.converters.Blob(r,{strict:!1}):by.converters.USVString(r),n=arguments.length===3?by.converters.USVString(n):void 0;let a=B4n(t,r,n);this[vG].push(a)}delete(t){by.brandCheck(this,e),by.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),t=by.converters.USVString(t),this[vG]=this[vG].filter(r=>r.name!==t)}get(t){by.brandCheck(this,e),by.argumentLengthCheck(arguments,1,{header:"FormData.get"}),t=by.converters.USVString(t);let r=this[vG].findIndex(n=>n.name===t);return r===-1?null:this[vG][r].value}getAll(t){return by.brandCheck(this,e),by.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),t=by.converters.USVString(t),this[vG].filter(r=>r.name===t).map(r=>r.value)}has(t){return by.brandCheck(this,e),by.argumentLengthCheck(arguments,1,{header:"FormData.has"}),t=by.converters.USVString(t),this[vG].findIndex(r=>r.name===t)!==-1}set(t,r,n=void 0){if(by.brandCheck(this,e),by.argumentLengthCheck(arguments,2,{header:"FormData.set"}),arguments.length===3&&!xft(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=by.converters.USVString(t),r=xft(r)?by.converters.Blob(r,{strict:!1}):by.converters.USVString(r),n=arguments.length===3?Oqo(n):void 0;let a=B4n(t,r,n),o=this[vG].findIndex(l=>l.name===t);o!==-1?this[vG]=[...this[vG].slice(0,o),a,...this[vG].slice(o+1).filter(l=>l.name!==t)]:this[vG].push(a)}entries(){return by.brandCheck(this,e),lCr(()=>this[vG].map(t=>[t.name,t.value]),"FormData","key+value")}keys(){return by.brandCheck(this,e),lCr(()=>this[vG].map(t=>[t.name,t.value]),"FormData","key")}values(){return by.brandCheck(this,e),lCr(()=>this[vG].map(t=>[t.name,t.value]),"FormData","value")}forEach(t,r=globalThis){if(by.brandCheck(this,e),by.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}};qBe.prototype[Symbol.iterator]=qBe.prototype.entries;Object.defineProperties(qBe.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function B4n(e,t,r){if(e=Buffer.from(e).toString("utf8"),typeof t=="string")t=Buffer.from(t).toString("utf8");else if(Pqo(t)||(t=t instanceof Mqo?new v4n([t],"blob",{type:t.type}):new S4n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=uCr&&t instanceof uCr||t instanceof w4n?new v4n([t],r,n):new S4n(t,r,n)}return{name:e,value:t}}T4n.exports={FormData:qBe}});var MHe=H((Pnu,L4n)=>{"use strict";var Hqo=XXn(),$Be=e_(),{ReadableStreamFrom:Yqo,isBlobLike:R4n,isReadableStreamLike:Qqo,readableStreamClose:Xqo,createDeferredPromise:Jqo,fullyReadBody:Uqo}=kM(),{FormData:N4n}=Gft(),{kState:M$}=O$(),{webidl:gCr}=OZ(),{DOMException:x4n,structuredClone:Kqo}=aae(),{Blob:jqo,File:zqo}=Et("buffer"),{kBodyUsed:qqo}=VE(),ACr=Et("assert"),{isErrored:$qo}=e_(),{isUint8Array:G4n,isArrayBuffer:e$o}=Et("util/types"),{File:t$o}=kft(),{parseMIMEType:r$o,serializeAMimeType:n$o}=WX(),P$=globalThis.ReadableStream,D4n=zqo??t$o,Fft=new TextEncoder,i$o=new TextDecoder;function F4n(e,t=!1){P$||(P$=Et("stream/web").ReadableStream);let r=null;e instanceof P$?r=e:R4n(e)?r=e.stream():r=new P$({async pull(f){f.enqueue(typeof a=="string"?Fft.encode(a):a),queueMicrotask(()=>Xqo(f))},start(){},type:void 0}),ACr(Qqo(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(e$o(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if($Be.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r Content-Disposition: form-data`;let C=Q=>Q.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),b=Q=>Q.replace(/\r?\n|\r/g,`\r -`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,J]of e)if(typeof J=="string"){let ae=Lft.encode(I+`; name="${C(b(Q))}"\r +`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,J]of e)if(typeof J=="string"){let ae=Fft.encode(I+`; name="${C(b(Q))}"\r \r ${b(J)}\r -`);E.push(ae),o+=ae.byteLength}else{let ae=Lft.encode(`${I}; name="${C(b(Q))}"`+(J.name?`; filename="${C(J.name)}"`:"")+`\r +`);E.push(ae),o+=ae.byteLength}else{let ae=Fft.encode(`${I}; name="${C(b(Q))}"`+(J.name?`; filename="${C(J.name)}"`:"")+`\r Content-Type: ${J.type||"application/octet-stream"}\r \r -`);E.push(ae,J,N),typeof J.size=="number"?o+=ae.byteLength+J.size+N.byteLength:B=!0}let F=Lft.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l="multipart/form-data; boundary="+f}else if(E4n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if($Be.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof O$?e:Yqo(e)}if((typeof a=="string"||$Be.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new O$({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();return b?queueMicrotask(()=>{I.close()}):$qo(r)||I.enqueue(new Uint8Array(C)),I.desiredSize>0},async cancel(I){await f.return()},type:void 0})}return[{stream:r,source:a,length:o},l]}function s$o(e,t=!1){return O$||(O$=Et("stream/web").ReadableStream),e instanceof O$&&(ACr(!$Be.isDisturbed(e),"The body has already been consumed."),ACr(!e.locked,"The stream is locked.")),R4n(e,t)}function o$o(e){let[t,r]=e.stream.tee(),n=Kqo(r,{transfer:[r]}),[,a]=n.tee();return e.stream=t,{stream:a,length:e.length,source:e.source}}async function*B4n(e){if(e)if(T4n(e))yield e;else{let t=e.stream;if($Be.isDisturbed(t))throw new TypeError("The body has already been consumed.");if(t.locked)throw new TypeError("The stream is locked.");t[qqo]=!0,yield*t}}function dCr(e){if(e.aborted)throw new w4n("The operation was aborted.","AbortError")}function a$o(e){return{blob(){return Vft(this,r=>{let n=g$o(this);return n==="failure"?n="":n&&(n=n$o(n)),new jqo([r],{type:n})},e)},arrayBuffer(){return Vft(this,r=>new Uint8Array(r).buffer,e)},text(){return Vft(this,N4n,e)},json(){return Vft(this,u$o,e)},async formData(){gCr.brandCheck(this,e),dCr(this[P$]);let r=this.headers.get("Content-Type");if(/multipart\/form-data/.test(r)){let n={};for(let[A,f]of this.headers)n[A.toLowerCase()]=f;let a=new S4n,o;try{o=new Hqo({headers:n,preservePath:!0})}catch(A){throw new w4n(`${A}`,"AbortError")}o.on("field",(A,f)=>{a.append(A,f)}),o.on("file",(A,f,I,C,b)=>{let E=[];if(C==="base64"||C.toLowerCase()==="base64"){let N="";f.on("data",B=>{N+=B.toString().replace(/[\r\n]/gm,"");let F=N.length-N.length%4;E.push(Buffer.from(N.slice(0,F),"base64")),N=N.slice(F)}),f.on("end",()=>{E.push(Buffer.from(N,"base64")),a.append(A,new v4n(E,I,{type:b}))})}else f.on("data",N=>{E.push(N)}),f.on("end",()=>{a.append(A,new v4n(E,I,{type:b}))})});let l=new Promise((A,f)=>{o.on("finish",A),o.on("error",I=>f(new TypeError(I)))});if(this.body!==null)for await(let A of B4n(this[P$].body))o.write(A);return o.end(),await l,a}else if(/application\/x-www-form-urlencoded/.test(r)){let n;try{let o="",l=new TextDecoder("utf-8",{ignoreBOM:!0});for await(let A of B4n(this[P$].body)){if(!T4n(A))throw new TypeError("Expected Uint8Array chunk");o+=l.decode(A,{stream:!0})}o+=l.decode(),n=new URLSearchParams(o)}catch(o){throw Object.assign(new TypeError,{cause:o})}let a=new S4n;for(let[o,l]of n)a.append(o,l);return a}else throw await Promise.resolve(),dCr(this[P$]),gCr.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}}function c$o(e){Object.assign(e.prototype,a$o(e))}async function Vft(e,t,r){if(gCr.brandCheck(e,r),dCr(e[P$]),l$o(e[P$].body))throw new TypeError("Body is unusable");let n=Jqo(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[P$].body==null?(o(new Uint8Array),n.promise):(await Uqo(e[P$].body,o,a),n.promise)}function l$o(e){return e!=null&&(e.stream.locked||$Be.isDisturbed(e.stream))}function N4n(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),i$o.decode(e))}function u$o(e){return JSON.parse(N4n(e))}function g$o(e){let{headersList:t}=e[P$],r=t.get("content-type");return r===null?"failure":r$o(r)}D4n.exports={extractBody:R4n,safelyExtractBody:s$o,cloneBody:o$o,mixinBody:c$o}});var F4n=H(($ru,G4n)=>{"use strict";var{InvalidArgumentError:VE,NotSupportedError:A$o}=zb(),M$=Et("assert"),{kHTTP2BuildRequest:d$o,kHTTP2CopyHeaders:p$o,kHTTP1BuildRequest:f$o}=LE(),eV=$C(),k4n=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,x4n=/[^\t\x20-\x7e\x80-\xff]/,I$o=/[^\u0021-\u00ff]/,WX=Symbol("handler"),uT={},pCr;try{let e=Et("diagnostics_channel");uT.create=e.channel("undici:request:create"),uT.bodySent=e.channel("undici:request:bodySent"),uT.headers=e.channel("undici:request:headers"),uT.trailers=e.channel("undici:request:trailers"),uT.error=e.channel("undici:request:error")}catch{uT.create={hasSubscribers:!1},uT.bodySent={hasSubscribers:!1},uT.headers={hasSubscribers:!1},uT.trailers={hasSubscribers:!1},uT.error={hasSubscribers:!1}}var fCr=class e{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B},F){if(typeof r!="string")throw new VE("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new VE("path must be an absolute URL or start with a slash");if(I$o.exec(r)!==null)throw new VE("invalid request path");if(typeof n!="string")throw new VE("method must be a string");if(k4n.exec(n)===null)throw new VE("invalid request method");if(I&&typeof I!="string")throw new VE("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new VE("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new VE("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new VE("invalid reset");if(B!=null&&typeof B!="boolean")throw new VE("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(eV.isStream(a)){this.body=a;let Q=this.body._readableState;(!Q||!Q.autoDestroy)&&(this.endHandler=function(){eV.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=J=>{this.abort?this.abort(J):this.error=J},this.body.on("error",this.errorHandler)}else if(eV.isBuffer(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(eV.isFormDataLike(a)||eV.isIterable(a)||eV.isBlobLike(a))this.body=a;else throw new VE("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?eV.buildURL(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new VE("headers array must be even");for(let Q=0;Q{"use strict";var h$o=Et("events"),ICr=class extends h$o{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}};Z4n.exports=ICr});var XHe=H((tnu,L4n)=>{"use strict";var m$o=Wft(),{ClientDestroyedError:hCr,ClientClosedError:C$o,InvalidArgumentError:ewe}=zb(),{kDestroy:_$o,kClose:y$o,kDispatch:mCr,kInterceptors:ehe}=LE(),twe=Symbol("destroyed"),QHe=Symbol("closed"),H$=Symbol("onDestroyed"),rwe=Symbol("onClosed"),Oft=Symbol("Intercepted Dispatch"),CCr=class extends m$o{constructor(){super(),this[twe]=!1,this[H$]=null,this[QHe]=!1,this[rwe]=[]}get destroyed(){return this[twe]}get closed(){return this[QHe]}get interceptors(){return this[ehe]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[ehe][r]!="function")throw new ewe("interceptor must be an function")}this[ehe]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new ewe("invalid callback");if(this[twe]){queueMicrotask(()=>t(new hCr,null));return}if(this[QHe]){this[rwe]?this[rwe].push(t):queueMicrotask(()=>t(null,null));return}this[QHe]=!0,this[rwe].push(t);let r=()=>{let n=this[rwe];this[rwe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new ewe("invalid callback");if(this[twe]){this[H$]?this[H$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new hCr),this[twe]=!0,this[H$]=this[H$]||[],this[H$].push(r);let n=()=>{let a=this[H$];this[H$]=null;for(let o=0;o{queueMicrotask(n)})}[Oft](t,r){if(!this[ehe]||this[ehe].length===0)return this[Oft]=this[mCr],this[mCr](t,r);let n=this[mCr].bind(this);for(let a=this[ehe].length-1;a>=0;a--)n=this[ehe][a](n);return this[Oft]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new ewe("handler must be an object");try{if(!t||typeof t!="object")throw new ewe("opts must be an object.");if(this[twe]||this[H$])throw new hCr;if(this[QHe])throw new C$o;return this[Oft](t,r)}catch(n){if(typeof r.onError!="function")throw new ewe("invalid onError method");return r.onError(n),!1}}};L4n.exports=CCr});var JHe=H((inu,O4n)=>{"use strict";var b$o=Et("net"),V4n=Et("assert"),W4n=$C(),{InvalidArgumentError:E$o,ConnectTimeoutError:S$o}=zb(),_Cr,yCr;global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?yCr=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function v$o({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,...a}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new E$o("maxCachedSessions must be a positive integer or zero");let o={path:r,...a},l=new yCr(t??100);return n=n??1e4,e=e??!1,function({hostname:f,host:I,protocol:C,port:b,servername:E,localAddress:N,httpSocket:B},F){let Q;if(C==="https:"){_Cr||(_Cr=Et("tls")),E=E||o.servername||W4n.getServerName(I)||null;let ae=E||f,ne=l.get(ae)||null;V4n(ae),Q=_Cr.connect({highWaterMark:16384,...o,servername:E,session:ne,localAddress:N,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:B,port:b||443,host:f}),Q.on("session",function(ce){l.set(ae,ce)})}else V4n(!B,"httpSocket can only be sent on TLS update"),Q=b$o.connect({highWaterMark:64*1024,...o,localAddress:N,port:b||80,host:f});if(o.keepAlive==null||o.keepAlive){let ae=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;Q.setKeepAlive(!0,ae)}let J=B$o(()=>w$o(Q),n);return Q.setNoDelay(!0).once(C==="https:"?"secureConnect":"connect",function(){if(J(),F){let ae=F;F=null,ae(null,this)}}).on("error",function(ae){if(J(),F){let ne=F;F=null,ne(ae)}}),Q}}function B$o(e,t){if(!t)return()=>{};let r=null,n=null,a=setTimeout(()=>{r=setImmediate(()=>{process.platform==="win32"?n=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(a),clearImmediate(r),clearImmediate(n)}}function w$o(e){W4n.destroy(e,new S$o)}O4n.exports=v$o});var P4n=H(Pft=>{"use strict";Object.defineProperty(Pft,"__esModule",{value:!0});Pft.enumToMap=void 0;function T$o(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}Pft.enumToMap=T$o});var M4n=H(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.SPECIAL_HEADERS=xu.HEADER_STATE=xu.MINOR=xu.MAJOR=xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS=xu.TOKEN=xu.STRICT_TOKEN=xu.HEX=xu.URL_CHAR=xu.STRICT_URL_CHAR=xu.USERINFO_CHARS=xu.MARK=xu.ALPHANUM=xu.NUM=xu.HEX_MAP=xu.NUM_MAP=xu.ALPHA=xu.FINISH=xu.H_METHOD_MAP=xu.METHOD_MAP=xu.METHODS_RTSP=xu.METHODS_ICE=xu.METHODS_HTTP=xu.METHODS=xu.LENIENT_FLAGS=xu.FLAGS=xu.TYPE=xu.ERROR=void 0;var R$o=P4n(),N$o;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(N$o=xu.ERROR||(xu.ERROR={}));var D$o;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(D$o=xu.TYPE||(xu.TYPE={}));var k$o;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(k$o=xu.FLAGS||(xu.FLAGS={}));var x$o;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(x$o=xu.LENIENT_FLAGS||(xu.LENIENT_FLAGS={}));var Vp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Vp=xu.METHODS||(xu.METHODS={}));xu.METHODS_HTTP=[Vp.DELETE,Vp.GET,Vp.HEAD,Vp.POST,Vp.PUT,Vp.CONNECT,Vp.OPTIONS,Vp.TRACE,Vp.COPY,Vp.LOCK,Vp.MKCOL,Vp.MOVE,Vp.PROPFIND,Vp.PROPPATCH,Vp.SEARCH,Vp.UNLOCK,Vp.BIND,Vp.REBIND,Vp.UNBIND,Vp.ACL,Vp.REPORT,Vp.MKACTIVITY,Vp.CHECKOUT,Vp.MERGE,Vp["M-SEARCH"],Vp.NOTIFY,Vp.SUBSCRIBE,Vp.UNSUBSCRIBE,Vp.PATCH,Vp.PURGE,Vp.MKCALENDAR,Vp.LINK,Vp.UNLINK,Vp.PRI,Vp.SOURCE];xu.METHODS_ICE=[Vp.SOURCE];xu.METHODS_RTSP=[Vp.OPTIONS,Vp.DESCRIBE,Vp.ANNOUNCE,Vp.SETUP,Vp.PLAY,Vp.PAUSE,Vp.TEARDOWN,Vp.GET_PARAMETER,Vp.SET_PARAMETER,Vp.REDIRECT,Vp.RECORD,Vp.FLUSH,Vp.GET,Vp.POST];xu.METHOD_MAP=R$o.enumToMap(Vp);xu.H_METHOD_MAP={};Object.keys(xu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(xu.H_METHOD_MAP[e]=xu.METHOD_MAP[e])});var G$o;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(G$o=xu.FINISH||(xu.FINISH={}));xu.ALPHA=[];for(let e=65;e<=90;e++)xu.ALPHA.push(String.fromCharCode(e)),xu.ALPHA.push(String.fromCharCode(e+32));xu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};xu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};xu.NUM=["0","1","2","3","4","5","6","7","8","9"];xu.ALPHANUM=xu.ALPHA.concat(xu.NUM);xu.MARK=["-","_",".","!","~","*","'","(",")"];xu.USERINFO_CHARS=xu.ALPHANUM.concat(xu.MARK).concat(["%",";",":","&","=","+","$",","]);xu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(xu.ALPHANUM);xu.URL_CHAR=xu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)xu.URL_CHAR.push(e);xu.HEX=xu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);xu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(xu.ALPHANUM);xu.TOKEN=xu.STRICT_TOKEN.concat([" "]);xu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&xu.HEADER_CHARS.push(e);xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS.filter(e=>e!==44);xu.MAJOR=xu.NUM_MAP;xu.MINOR=xu.MAJOR;var nwe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(nwe=xu.HEADER_STATE||(xu.HEADER_STATE={}));xu.SPECIAL_HEADERS={connection:nwe.CONNECTION,"content-length":nwe.CONTENT_LENGTH,"proxy-connection":nwe.CONNECTION,"transfer-encoding":nwe.TRANSFER_ENCODING,upgrade:nwe.UPGRADE}});var SCr=H((anu,Q4n)=>{"use strict";var Y$=$C(),{kBodyUsed:UHe}=LE(),ECr=Et("assert"),{InvalidArgumentError:F$o}=zb(),Z$o=Et("events"),L$o=[300,301,302,303,307,308],H4n=Symbol("body"),Mft=class{constructor(t){this[H4n]=t,this[UHe]=!1}async*[Symbol.asyncIterator](){ECr(!this[UHe],"disturbed"),this[UHe]=!0,yield*this[H4n]}},bCr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new F$o("maxRedirections must be a positive number");Y$.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],Y$.isStream(this.opts.body)?(Y$.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){ECr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[UHe]=!1,Z$o.prototype.on.call(this.opts.body,"data",function(){this[UHe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Mft(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&Y$.isIterable(this.opts.body)&&(this.opts.body=new Mft(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||Y$.isDisturbed(this.opts.body)?null:V$o(t,r),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=Y$.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=W$o(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function V$o(e,t){if(L$o.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var O$o=SCr();function P$o({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new O$o(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}X4n.exports=P$o});var vCr=H((lnu,J4n)=>{J4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="});var K4n=H((unu,U4n)=>{U4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="});var tYe=H((gnu,pJn)=>{"use strict";var GA=Et("assert"),q4n=Et("net"),M$o=Et("http"),{pipeline:H$o}=Et("stream"),wp=$C(),BCr=cXn(),TCr=F4n(),Y$o=XHe(),{RequestContentLengthMismatchError:Q$,ResponseContentLengthMismatchError:Q$o,InvalidArgumentError:iw,RequestAbortedError:ZCr,HeadersTimeoutError:X$o,HeadersOverflowError:J$o,SocketError:swe,InformationalError:D8,BodyTimeoutError:U$o,HTTPParserError:K$o,ResponseExceededMaxSizeError:j$o,ClientDestroyedError:z$o}=zb(),q$o=JHe(),{kUrl:Gk,kReset:OZ,kServerName:aae,kClient:k8,kBusy:RCr,kParser:Hv,kConnect:$$o,kBlocking:owe,kResuming:the,kRunning:kS,kPending:nhe,kSize:rhe,kWriting:X$,kQueue:O1,kConnected:eea,kConnecting:iwe,kNeedDrain:lae,kNoRef:KHe,kKeepAliveDefaultTimeout:NCr,kHostHeader:$4n,kPendingIdx:jO,kRunningIdx:P1,kError:Fk,kPipelining:uae,kSocket:Yv,kKeepAliveTimeoutValue:qHe,kMaxHeadersSize:Xft,kKeepAliveMaxTimeout:eJn,kKeepAliveTimeoutThreshold:tJn,kHeadersTimeout:rJn,kBodyTimeout:nJn,kStrictContentLength:$He,kConnector:jHe,kMaxRedirections:tea,kMaxRequests:eYe,kCounter:iJn,kClose:rea,kDestroy:nea,kDispatch:iea,kInterceptors:sea,kLocalAddress:zHe,kMaxResponseSize:sJn,kHTTPConnVersion:x8,kHost:oJn,kHTTP2Session:zO,kHTTP2SessionState:Uft,kHTTP2BuildRequest:oea,kHTTP2CopyHeaders:aea,kHTTP1BuildRequest:cea}=LE(),Kft;try{Kft=Et("http2")}catch{Kft={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:lea,HTTP2_HEADER_METHOD:uea,HTTP2_HEADER_PATH:gea,HTTP2_HEADER_SCHEME:Aea,HTTP2_HEADER_CONTENT_LENGTH:dea,HTTP2_HEADER_EXPECT:pea,HTTP2_HEADER_STATUS:fea}}=Kft,j4n=!1,Yft=Buffer[Symbol.species],cae=Symbol("kClosedResolve"),vG={};try{let e=Et("diagnostics_channel");vG.sendHeaders=e.channel("undici:client:sendHeaders"),vG.beforeConnect=e.channel("undici:client:beforeConnect"),vG.connectError=e.channel("undici:client:connectError"),vG.connected=e.channel("undici:client:connected")}catch{vG.sendHeaders={hasSubscribers:!1},vG.beforeConnect={hasSubscribers:!1},vG.connectError={hasSubscribers:!1},vG.connected={hasSubscribers:!1}}var DCr=class extends Y$o{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:J,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,allowH2:k,maxConcurrentStreams:tt}={}){if(super(),C!==void 0)throw new iw("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new iw("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new iw("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new iw("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new iw("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new iw("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new iw("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new iw("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new iw("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new iw("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new iw("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new iw("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new iw("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new iw("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new iw("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new iw("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||q4n.isIP(de)===0))throw new iw("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new iw("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new iw("autoSelectFamilyAttemptTimeout must be a positive number");if(k!=null&&typeof k!="boolean")throw new iw("allowH2 must be a valid boolean value");if(tt!=null&&(typeof tt!="number"||tt<1))throw new iw("maxConcurrentStreams must be a possitive integer, greater than 0");typeof fe!="function"&&(fe=q$o({...J,maxCachedSessions:ne,allowH2:k,socketPath:F,timeout:A,...wp.nodeHasAutoSelectFamily&&Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),this[sea]=r&&r.Client&&Array.isArray(r.Client)?r.Client:[_ea({maxRedirections:ce})],this[Gk]=wp.parseOrigin(t),this[jHe]=fe,this[Yv]=null,this[uae]=Q??1,this[Xft]=n||M$o.maxHeaderSize,this[NCr]=b??4e3,this[eJn]=N??6e5,this[tJn]=B??1e3,this[qHe]=this[NCr],this[aae]=null,this[zHe]=de??null,this[the]=0,this[lae]=0,this[$4n]=`host: ${this[Gk].hostname}${this[Gk].port?`:${this[Gk].port}`:""}\r -`,this[nJn]=f??3e5,this[rJn]=a??3e5,this[$He]=ae??!0,this[tea]=ce,this[eYe]=ue,this[cae]=null,this[sJn]=be>-1?be:-1,this[x8]="h1",this[zO]=null,this[Uft]=k?{openStreams:0,maxConcurrentStreams:tt??100}:null,this[oJn]=`${this[Gk].hostname}${this[Gk].port?`:${this[Gk].port}`:""}`,this[O1]=[],this[P1]=0,this[jO]=0}get pipelining(){return this[uae]}set pipelining(t){this[uae]=t,qO(this,!0)}get[nhe](){return this[O1].length-this[jO]}get[kS](){return this[jO]-this[P1]}get[rhe](){return this[O1].length-this[P1]}get[eea](){return!!this[Yv]&&!this[iwe]&&!this[Yv].destroyed}get[RCr](){let t=this[Yv];return t&&(t[OZ]||t[X$]||t[owe])||this[rhe]>=(this[uae]||1)||this[nhe]>0}[$$o](t){uJn(this),this.once("connect",t)}[iea](t,r){let n=t.origin||this[Gk].origin,a=this[x8]==="h2"?TCr[oea](n,t,r):TCr[cea](n,t,r);return this[O1].push(a),this[the]||(wp.bodyLength(a.body)==null&&wp.isIterable(a.body)?(this[the]=1,process.nextTick(qO,this)):qO(this,!0)),this[the]&&this[lae]!==2&&this[RCr]&&(this[lae]=2),this[lae]<2}async[rea](){return new Promise(t=>{this[rhe]?this[cae]=t:t(null)})}async[nea](t){return new Promise(r=>{let n=this[O1].splice(this[jO]);for(let o=0;o{this[cae]&&(this[cae](),this[cae]=null),r()};this[zO]!=null&&(wp.destroy(this[zO],t),this[zO]=null,this[Uft]=null),this[Yv]?wp.destroy(this[Yv].on("close",a),t):queueMicrotask(a),qO(this)})}};function Iea(e){GA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Yv][Fk]=e,qft(this[k8],e)}function hea(e,t,r){let n=new D8(`HTTP/2: "frameError" received - type ${e}, code ${t}`);r===0&&(this[Yv][Fk]=n,qft(this[k8],n))}function mea(){wp.destroy(this,new swe("other side closed")),wp.destroy(this[Yv],new swe("other side closed"))}function Cea(e){let t=this[k8],r=new D8(`HTTP/2: "GOAWAY" frame received with code ${e}`);if(t[Yv]=null,t[zO]=null,t.destroyed){GA(this[nhe]===0);let n=t[O1].splice(t[P1]);for(let a=0;a0){let n=t[O1][t[P1]];t[O1][t[P1]++]=null,PZ(t,n,r)}t[jO]=t[P1],GA(t[kS]===0),t.emit("disconnect",t[Gk],[t],r),qO(t)}var T8=M4n(),_ea=Hft(),yea=Buffer.alloc(0);async function bea(){let e=process.env.JEST_WORKER_ID?vCr():void 0,t;try{t=await WebAssembly.compile(Buffer.from(K4n(),"base64"))}catch{t=await WebAssembly.compile(Buffer.from(e||vCr(),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{GA.strictEqual(xR.ptr,r);let o=n-N8+R8.byteOffset;return xR.onStatus(new Yft(R8.buffer,o,a))||0},wasm_on_message_begin:r=>(GA.strictEqual(xR.ptr,r),xR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{GA.strictEqual(xR.ptr,r);let o=n-N8+R8.byteOffset;return xR.onHeaderField(new Yft(R8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{GA.strictEqual(xR.ptr,r);let o=n-N8+R8.byteOffset;return xR.onHeaderValue(new Yft(R8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(GA.strictEqual(xR.ptr,r),xR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{GA.strictEqual(xR.ptr,r);let o=n-N8+R8.byteOffset;return xR.onBody(new Yft(R8.buffer,o,a))||0},wasm_on_message_complete:r=>(GA.strictEqual(xR.ptr,r),xR.onMessageComplete()||0)}})}var wCr=null,kCr=bea();kCr.catch();var xR=null,R8=null,Qft=0,N8=null,awe=1,Jft=2,xCr=3,GCr=class{constructor(t,r,{exports:n}){GA(Number.isFinite(t[Xft])&&t[Xft]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(T8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[Xft],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[sJn]}setTimeout(t,r){this.timeoutType=r,t!==this.timeoutValue?(BCr.clearTimeout(this.timeout),t?(this.timeout=BCr.setTimeout(Eea,t,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){this.socket.destroyed||!this.paused||(GA(this.ptr!=null),GA(xR==null),this.llhttp.llhttp_resume(this.ptr),GA(this.timeoutType===Jft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||yea),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){GA(this.ptr!=null),GA(xR==null),GA(!this.paused);let{socket:r,llhttp:n}=this;t.length>Qft&&(N8&&n.free(N8),Qft=Math.ceil(t.length/4096)*4096,N8=n.malloc(Qft)),new Uint8Array(n.memory.buffer,N8,Qft).set(t);try{let a;try{R8=t,xR=this,a=n.llhttp_execute(this.ptr,N8,t.length)}catch(l){throw l}finally{xR=null,R8=null}let o=n.llhttp_get_error_pos(this.ptr)-N8;if(a===T8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===T8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==T8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new K$o(A,T8.ERROR[a],t.slice(o))}}catch(a){wp.destroy(r,a)}}destroy(){GA(this.ptr!=null),GA(xR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,BCr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed||!r[O1][r[P1]])return-1}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];n.length===10&&n.toString().toLowerCase()==="keep-alive"?this.keepAlive+=t.toString():n.length===10&&n.toString().toLowerCase()==="connection"?this.connection+=t.toString():n.length===14&&n.toString().toLowerCase()==="content-length"&&(this.contentLength+=t.toString()),this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&wp.destroy(this.socket,new J$o)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;GA(r);let A=n[O1][n[P1]];GA(A),GA(!a.destroyed),GA(a===n[Yv]),GA(!this.paused),GA(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,GA(this.headers.length%2===0),this.headers=[],this.headersSize=0,a.unshift(t),a[Hv].destroy(),a[Hv]=null,a[k8]=null,a[Fk]=null,a.removeListener("error",cJn).removeListener("readable",aJn).removeListener("end",lJn).removeListener("close",FCr),n[Yv]=null,n[O1][n[P1]++]=null,n.emit("disconnect",n[Gk],[n],new D8("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){wp.destroy(a,f)}qO(n)}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[O1][a[P1]];if(!f)return-1;if(GA(!this.upgrade),GA(this.statusCode<200),t===100)return wp.destroy(o,new swe("bad response",wp.getSocketInfo(o))),-1;if(r&&!f.upgrade)return wp.destroy(o,new swe("bad upgrade",wp.getSocketInfo(o))),-1;if(GA.strictEqual(this.timeoutType,awe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[OZ]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[nJn];this.setTimeout(C,Jft)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return GA(a[kS]===1),this.upgrade=!0,2;if(r)return GA(a[kS]===1),this.upgrade=!0,2;if(GA(this.headers.length%2===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[uae]){let C=this.keepAlive?wp.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[tJn],a[eJn]);b<=0?o[OZ]=!0:a[qHe]=b}else a[qHe]=a[NCr]}else o[OZ]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[owe]&&(o[owe]=!1,qO(a)),I?T8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[O1][r[P1]];if(GA(l),GA.strictEqual(this.timeoutType,Jft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),GA(a>=200),o>-1&&this.bytesRead+t.length>o)return wp.destroy(n,new j$o),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return T8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;let I=t[O1][t[P1]];if(GA(I),GA(n>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",GA(this.headers.length%2===0),this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return wp.destroy(r,new Q$o),-1;if(I.onComplete(o),t[O1][t[P1]++]=null,r[X$])return GA.strictEqual(t[kS],0),wp.destroy(r,new D8("reset")),T8.ERROR.PAUSED;if(f){if(r[OZ]&&t[kS]===0)return wp.destroy(r,new D8("reset")),T8.ERROR.PAUSED;t[uae]===1?setImmediate(qO,t):qO(t)}else return wp.destroy(r,new D8("reset")),T8.ERROR.PAUSED}}};function Eea(e){let{socket:t,timeoutType:r,client:n}=e;r===awe?(!t[X$]||t.writableNeedDrain||n[kS]>1)&&(GA(!e.paused,"cannot be paused while waiting for headers"),wp.destroy(t,new X$o)):r===Jft?e.paused||wp.destroy(t,new U$o):r===xCr&&(GA(n[kS]===0&&n[qHe]),wp.destroy(t,new D8("socket idle timeout")))}function aJn(){let{[Hv]:e}=this;e&&e.readMore()}function cJn(e){let{[k8]:t,[Hv]:r}=this;if(GA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),t[x8]!=="h2"&&e.code==="ECONNRESET"&&r.statusCode&&!r.shouldKeepAlive){r.onMessageComplete();return}this[Fk]=e,qft(this[k8],e)}function qft(e,t){if(e[kS]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){GA(e[jO]===e[P1]);let r=e[O1].splice(e[P1]);for(let n=0;n0&&r.code!=="UND_ERR_INFO"){let n=e[O1][e[P1]];e[O1][e[P1]++]=null,PZ(e,n,r)}e[jO]=e[P1],GA(e[kS]===0),e.emit("disconnect",e[Gk],[e],r),qO(e)}async function uJn(e){GA(!e[iwe]),GA(!e[Yv]);let{host:t,hostname:r,protocol:n,port:a}=e[Gk];if(r[0]==="["){let o=r.indexOf("]");GA(o!==-1);let l=r.substring(1,o);GA(q4n.isIP(l)),r=l}e[iwe]=!0,vG.beforeConnect.hasSubscribers&&vG.beforeConnect.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[aae],localAddress:e[zHe]},connector:e[jHe]});try{let o=await new Promise((A,f)=>{e[jHe]({host:t,hostname:r,protocol:n,port:a,servername:e[aae],localAddress:e[zHe]},(I,C)=>{I?f(I):A(C)})});if(e.destroyed){wp.destroy(o.on("error",()=>{}),new z$o);return}if(e[iwe]=!1,GA(o),o.alpnProtocol==="h2"){j4n||(j4n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let A=Kft.connect(e[Gk],{createConnection:()=>o,peerMaxConcurrentStreams:e[Uft].maxConcurrentStreams});e[x8]="h2",A[k8]=e,A[Yv]=o,A.on("error",Iea),A.on("frameError",hea),A.on("end",mea),A.on("goaway",Cea),A.on("close",FCr),A.unref(),e[zO]=A,o[zO]=A}else wCr||(wCr=await kCr,kCr=null),o[KHe]=!1,o[X$]=!1,o[OZ]=!1,o[owe]=!1,o[Hv]=new GCr(e,o,wCr);o[iJn]=0,o[eYe]=e[eYe],o[k8]=e,o[Fk]=null,o.on("error",cJn).on("readable",aJn).on("end",lJn).on("close",FCr),e[Yv]=o,vG.connected.hasSubscribers&&vG.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[aae],localAddress:e[zHe]},connector:e[jHe],socket:o}),e.emit("connect",e[Gk],[e])}catch(o){if(e.destroyed)return;if(e[iwe]=!1,vG.connectError.hasSubscribers&&vG.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[aae],localAddress:e[zHe]},connector:e[jHe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(GA(e[kS]===0);e[nhe]>0&&e[O1][e[jO]].servername===e[aae];){let l=e[O1][e[jO]++];PZ(e,l,o)}else qft(e,o);e.emit("connectionError",e[Gk],[e],o)}qO(e)}function z4n(e){e[lae]=0,e.emit("drain",e[Gk],[e])}function qO(e,t){e[the]!==2&&(e[the]=2,Sea(e,t),e[the]=0,e[P1]>256&&(e[O1].splice(0,e[P1]),e[jO]-=e[P1],e[P1]=0))}function Sea(e,t){for(;;){if(e.destroyed){GA(e[nhe]===0);return}if(e[cae]&&!e[rhe]){e[cae](),e[cae]=null;return}let r=e[Yv];if(r&&!r.destroyed&&r.alpnProtocol!=="h2"){if(e[rhe]===0?!r[KHe]&&r.unref&&(r.unref(),r[KHe]=!0):r[KHe]&&r.ref&&(r.ref(),r[KHe]=!1),e[rhe]===0)r[Hv].timeoutType!==xCr&&r[Hv].setTimeout(e[qHe],xCr);else if(e[kS]>0&&r[Hv].statusCode<200&&r[Hv].timeoutType!==awe){let a=e[O1][e[P1]],o=a.headersTimeout!=null?a.headersTimeout:e[rJn];r[Hv].setTimeout(o,awe)}}if(e[RCr])e[lae]=2;else if(e[lae]===2){t?(e[lae]=1,process.nextTick(z4n,e)):z4n(e);continue}if(e[nhe]===0||e[kS]>=(e[uae]||1))return;let n=e[O1][e[jO]];if(e[Gk].protocol==="https:"&&e[aae]!==n.servername){if(e[kS]>0)return;if(e[aae]=n.servername,r&&r.servername!==n.servername){wp.destroy(r,new D8("servername changed"));return}}if(e[iwe])return;if(!r&&!e[zO]){uJn(e);return}if(r.destroyed||r[X$]||r[OZ]||r[owe]||e[kS]>0&&!n.idempotent||e[kS]>0&&(n.upgrade||n.method==="CONNECT")||e[kS]>0&&wp.bodyLength(n.body)!==0&&(wp.isStream(n.body)||wp.isAsyncIterable(n.body)))return;!n.aborted&&vea(e,n)?e[jO]++:e[O1].splice(e[jO],1)}}function gJn(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function vea(e,t){if(e[x8]==="h2"){Bea(e,e[zO],t);return}let{body:r,method:n,path:a,host:o,upgrade:l,headers:A,blocking:f,reset:I}=t,C=n==="PUT"||n==="POST"||n==="PATCH";r&&typeof r.read=="function"&&r.read(0);let b=wp.bodyLength(r),E=b;if(E===null&&(E=t.contentLength),E===0&&!C&&(E=null),gJn(n)&&E>0&&t.contentLength!==null&&t.contentLength!==E){if(e[$He])return PZ(e,t,new Q$),!1;process.emitWarning(new Q$)}let N=e[Yv];try{t.onConnect(F=>{t.aborted||t.completed||(PZ(e,t,F||new ZCr),wp.destroy(N,new D8("aborted")))})}catch(F){PZ(e,t,F)}if(t.aborted)return!1;n==="HEAD"&&(N[OZ]=!0),(l||n==="CONNECT")&&(N[OZ]=!0),I!=null&&(N[OZ]=I),e[eYe]&&N[iJn]++>=e[eYe]&&(N[OZ]=!0),f&&(N[owe]=!0);let B=`${n} ${a} HTTP/1.1\r +`);E.push(ae,J,N),typeof J.size=="number"?o+=ae.byteLength+J.size+N.byteLength:B=!0}let F=Fft.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l="multipart/form-data; boundary="+f}else if(R4n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if($Be.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof P$?e:Yqo(e)}if((typeof a=="string"||$Be.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new P$({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();return b?queueMicrotask(()=>{I.close()}):$qo(r)||I.enqueue(new Uint8Array(C)),I.desiredSize>0},async cancel(I){await f.return()},type:void 0})}return[{stream:r,source:a,length:o},l]}function s$o(e,t=!1){return P$||(P$=Et("stream/web").ReadableStream),e instanceof P$&&(ACr(!$Be.isDisturbed(e),"The body has already been consumed."),ACr(!e.locked,"The stream is locked.")),F4n(e,t)}function o$o(e){let[t,r]=e.stream.tee(),n=Kqo(r,{transfer:[r]}),[,a]=n.tee();return e.stream=t,{stream:a,length:e.length,source:e.source}}async function*k4n(e){if(e)if(G4n(e))yield e;else{let t=e.stream;if($Be.isDisturbed(t))throw new TypeError("The body has already been consumed.");if(t.locked)throw new TypeError("The stream is locked.");t[qqo]=!0,yield*t}}function dCr(e){if(e.aborted)throw new x4n("The operation was aborted.","AbortError")}function a$o(e){return{blob(){return Zft(this,r=>{let n=g$o(this);return n==="failure"?n="":n&&(n=n$o(n)),new jqo([r],{type:n})},e)},arrayBuffer(){return Zft(this,r=>new Uint8Array(r).buffer,e)},text(){return Zft(this,Z4n,e)},json(){return Zft(this,u$o,e)},async formData(){gCr.brandCheck(this,e),dCr(this[M$]);let r=this.headers.get("Content-Type");if(/multipart\/form-data/.test(r)){let n={};for(let[A,f]of this.headers)n[A.toLowerCase()]=f;let a=new N4n,o;try{o=new Hqo({headers:n,preservePath:!0})}catch(A){throw new x4n(`${A}`,"AbortError")}o.on("field",(A,f)=>{a.append(A,f)}),o.on("file",(A,f,I,C,b)=>{let E=[];if(C==="base64"||C.toLowerCase()==="base64"){let N="";f.on("data",B=>{N+=B.toString().replace(/[\r\n]/gm,"");let F=N.length-N.length%4;E.push(Buffer.from(N.slice(0,F),"base64")),N=N.slice(F)}),f.on("end",()=>{E.push(Buffer.from(N,"base64")),a.append(A,new D4n(E,I,{type:b}))})}else f.on("data",N=>{E.push(N)}),f.on("end",()=>{a.append(A,new D4n(E,I,{type:b}))})});let l=new Promise((A,f)=>{o.on("finish",A),o.on("error",I=>f(new TypeError(I)))});if(this.body!==null)for await(let A of k4n(this[M$].body))o.write(A);return o.end(),await l,a}else if(/application\/x-www-form-urlencoded/.test(r)){let n;try{let o="",l=new TextDecoder("utf-8",{ignoreBOM:!0});for await(let A of k4n(this[M$].body)){if(!G4n(A))throw new TypeError("Expected Uint8Array chunk");o+=l.decode(A,{stream:!0})}o+=l.decode(),n=new URLSearchParams(o)}catch(o){throw Object.assign(new TypeError,{cause:o})}let a=new N4n;for(let[o,l]of n)a.append(o,l);return a}else throw await Promise.resolve(),dCr(this[M$]),gCr.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}}function c$o(e){Object.assign(e.prototype,a$o(e))}async function Zft(e,t,r){if(gCr.brandCheck(e,r),dCr(e[M$]),l$o(e[M$].body))throw new TypeError("Body is unusable");let n=Jqo(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[M$].body==null?(o(new Uint8Array),n.promise):(await Uqo(e[M$].body,o,a),n.promise)}function l$o(e){return e!=null&&(e.stream.locked||$Be.isDisturbed(e.stream))}function Z4n(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),i$o.decode(e))}function u$o(e){return JSON.parse(Z4n(e))}function g$o(e){let{headersList:t}=e[M$],r=t.get("content-type");return r===null?"failure":r$o(r)}L4n.exports={extractBody:F4n,safelyExtractBody:s$o,cloneBody:o$o,mixinBody:c$o}});var P4n=H((Mnu,O4n)=>{"use strict";var{InvalidArgumentError:WE,NotSupportedError:A$o}=qb(),H$=Et("assert"),{kHTTP2BuildRequest:d$o,kHTTP2CopyHeaders:p$o,kHTTP1BuildRequest:f$o}=VE(),tV=e_(),V4n=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,W4n=/[^\t\x20-\x7e\x80-\xff]/,I$o=/[^\u0021-\u00ff]/,OX=Symbol("handler"),gT={},pCr;try{let e=Et("diagnostics_channel");gT.create=e.channel("undici:request:create"),gT.bodySent=e.channel("undici:request:bodySent"),gT.headers=e.channel("undici:request:headers"),gT.trailers=e.channel("undici:request:trailers"),gT.error=e.channel("undici:request:error")}catch{gT.create={hasSubscribers:!1},gT.bodySent={hasSubscribers:!1},gT.headers={hasSubscribers:!1},gT.trailers={hasSubscribers:!1},gT.error={hasSubscribers:!1}}var fCr=class e{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B},F){if(typeof r!="string")throw new WE("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new WE("path must be an absolute URL or start with a slash");if(I$o.exec(r)!==null)throw new WE("invalid request path");if(typeof n!="string")throw new WE("method must be a string");if(V4n.exec(n)===null)throw new WE("invalid request method");if(I&&typeof I!="string")throw new WE("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new WE("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new WE("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new WE("invalid reset");if(B!=null&&typeof B!="boolean")throw new WE("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(tV.isStream(a)){this.body=a;let Q=this.body._readableState;(!Q||!Q.autoDestroy)&&(this.endHandler=function(){tV.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=J=>{this.abort?this.abort(J):this.error=J},this.body.on("error",this.errorHandler)}else if(tV.isBuffer(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(tV.isFormDataLike(a)||tV.isIterable(a)||tV.isBlobLike(a))this.body=a;else throw new WE("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?tV.buildURL(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new WE("headers array must be even");for(let Q=0;Q{"use strict";var h$o=Et("events"),ICr=class extends h$o{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}};M4n.exports=ICr});var QHe=H((Ynu,H4n)=>{"use strict";var m$o=Lft(),{ClientDestroyedError:hCr,ClientClosedError:C$o,InvalidArgumentError:ewe}=qb(),{kDestroy:_$o,kClose:y$o,kDispatch:mCr,kInterceptors:the}=VE(),twe=Symbol("destroyed"),YHe=Symbol("closed"),Y$=Symbol("onDestroyed"),rwe=Symbol("onClosed"),Vft=Symbol("Intercepted Dispatch"),CCr=class extends m$o{constructor(){super(),this[twe]=!1,this[Y$]=null,this[YHe]=!1,this[rwe]=[]}get destroyed(){return this[twe]}get closed(){return this[YHe]}get interceptors(){return this[the]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[the][r]!="function")throw new ewe("interceptor must be an function")}this[the]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new ewe("invalid callback");if(this[twe]){queueMicrotask(()=>t(new hCr,null));return}if(this[YHe]){this[rwe]?this[rwe].push(t):queueMicrotask(()=>t(null,null));return}this[YHe]=!0,this[rwe].push(t);let r=()=>{let n=this[rwe];this[rwe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new ewe("invalid callback");if(this[twe]){this[Y$]?this[Y$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new hCr),this[twe]=!0,this[Y$]=this[Y$]||[],this[Y$].push(r);let n=()=>{let a=this[Y$];this[Y$]=null;for(let o=0;o{queueMicrotask(n)})}[Vft](t,r){if(!this[the]||this[the].length===0)return this[Vft]=this[mCr],this[mCr](t,r);let n=this[mCr].bind(this);for(let a=this[the].length-1;a>=0;a--)n=this[the][a](n);return this[Vft]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new ewe("handler must be an object");try{if(!t||typeof t!="object")throw new ewe("opts must be an object.");if(this[twe]||this[Y$])throw new hCr;if(this[YHe])throw new C$o;return this[Vft](t,r)}catch(n){if(typeof r.onError!="function")throw new ewe("invalid onError method");return r.onError(n),!1}}};H4n.exports=CCr});var XHe=H((Jnu,X4n)=>{"use strict";var b$o=Et("net"),Y4n=Et("assert"),Q4n=e_(),{InvalidArgumentError:E$o,ConnectTimeoutError:S$o}=qb(),_Cr,yCr;global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?yCr=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function v$o({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,...a}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new E$o("maxCachedSessions must be a positive integer or zero");let o={path:r,...a},l=new yCr(t??100);return n=n??1e4,e=e??!1,function({hostname:f,host:I,protocol:C,port:b,servername:E,localAddress:N,httpSocket:B},F){let Q;if(C==="https:"){_Cr||(_Cr=Et("tls")),E=E||o.servername||Q4n.getServerName(I)||null;let ae=E||f,ne=l.get(ae)||null;Y4n(ae),Q=_Cr.connect({highWaterMark:16384,...o,servername:E,session:ne,localAddress:N,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:B,port:b||443,host:f}),Q.on("session",function(ce){l.set(ae,ce)})}else Y4n(!B,"httpSocket can only be sent on TLS update"),Q=b$o.connect({highWaterMark:64*1024,...o,localAddress:N,port:b||80,host:f});if(o.keepAlive==null||o.keepAlive){let ae=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;Q.setKeepAlive(!0,ae)}let J=B$o(()=>w$o(Q),n);return Q.setNoDelay(!0).once(C==="https:"?"secureConnect":"connect",function(){if(J(),F){let ae=F;F=null,ae(null,this)}}).on("error",function(ae){if(J(),F){let ne=F;F=null,ne(ae)}}),Q}}function B$o(e,t){if(!t)return()=>{};let r=null,n=null,a=setTimeout(()=>{r=setImmediate(()=>{process.platform==="win32"?n=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(a),clearImmediate(r),clearImmediate(n)}}function w$o(e){Q4n.destroy(e,new S$o)}X4n.exports=v$o});var J4n=H(Wft=>{"use strict";Object.defineProperty(Wft,"__esModule",{value:!0});Wft.enumToMap=void 0;function T$o(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}Wft.enumToMap=T$o});var U4n=H(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.SPECIAL_HEADERS=xu.HEADER_STATE=xu.MINOR=xu.MAJOR=xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS=xu.TOKEN=xu.STRICT_TOKEN=xu.HEX=xu.URL_CHAR=xu.STRICT_URL_CHAR=xu.USERINFO_CHARS=xu.MARK=xu.ALPHANUM=xu.NUM=xu.HEX_MAP=xu.NUM_MAP=xu.ALPHA=xu.FINISH=xu.H_METHOD_MAP=xu.METHOD_MAP=xu.METHODS_RTSP=xu.METHODS_ICE=xu.METHODS_HTTP=xu.METHODS=xu.LENIENT_FLAGS=xu.FLAGS=xu.TYPE=xu.ERROR=void 0;var R$o=J4n(),N$o;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(N$o=xu.ERROR||(xu.ERROR={}));var D$o;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(D$o=xu.TYPE||(xu.TYPE={}));var k$o;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(k$o=xu.FLAGS||(xu.FLAGS={}));var x$o;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(x$o=xu.LENIENT_FLAGS||(xu.LENIENT_FLAGS={}));var Vp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Vp=xu.METHODS||(xu.METHODS={}));xu.METHODS_HTTP=[Vp.DELETE,Vp.GET,Vp.HEAD,Vp.POST,Vp.PUT,Vp.CONNECT,Vp.OPTIONS,Vp.TRACE,Vp.COPY,Vp.LOCK,Vp.MKCOL,Vp.MOVE,Vp.PROPFIND,Vp.PROPPATCH,Vp.SEARCH,Vp.UNLOCK,Vp.BIND,Vp.REBIND,Vp.UNBIND,Vp.ACL,Vp.REPORT,Vp.MKACTIVITY,Vp.CHECKOUT,Vp.MERGE,Vp["M-SEARCH"],Vp.NOTIFY,Vp.SUBSCRIBE,Vp.UNSUBSCRIBE,Vp.PATCH,Vp.PURGE,Vp.MKCALENDAR,Vp.LINK,Vp.UNLINK,Vp.PRI,Vp.SOURCE];xu.METHODS_ICE=[Vp.SOURCE];xu.METHODS_RTSP=[Vp.OPTIONS,Vp.DESCRIBE,Vp.ANNOUNCE,Vp.SETUP,Vp.PLAY,Vp.PAUSE,Vp.TEARDOWN,Vp.GET_PARAMETER,Vp.SET_PARAMETER,Vp.REDIRECT,Vp.RECORD,Vp.FLUSH,Vp.GET,Vp.POST];xu.METHOD_MAP=R$o.enumToMap(Vp);xu.H_METHOD_MAP={};Object.keys(xu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(xu.H_METHOD_MAP[e]=xu.METHOD_MAP[e])});var G$o;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(G$o=xu.FINISH||(xu.FINISH={}));xu.ALPHA=[];for(let e=65;e<=90;e++)xu.ALPHA.push(String.fromCharCode(e)),xu.ALPHA.push(String.fromCharCode(e+32));xu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};xu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};xu.NUM=["0","1","2","3","4","5","6","7","8","9"];xu.ALPHANUM=xu.ALPHA.concat(xu.NUM);xu.MARK=["-","_",".","!","~","*","'","(",")"];xu.USERINFO_CHARS=xu.ALPHANUM.concat(xu.MARK).concat(["%",";",":","&","=","+","$",","]);xu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(xu.ALPHANUM);xu.URL_CHAR=xu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)xu.URL_CHAR.push(e);xu.HEX=xu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);xu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(xu.ALPHANUM);xu.TOKEN=xu.STRICT_TOKEN.concat([" "]);xu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&xu.HEADER_CHARS.push(e);xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS.filter(e=>e!==44);xu.MAJOR=xu.NUM_MAP;xu.MINOR=xu.MAJOR;var nwe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(nwe=xu.HEADER_STATE||(xu.HEADER_STATE={}));xu.SPECIAL_HEADERS={connection:nwe.CONNECTION,"content-length":nwe.CONTENT_LENGTH,"proxy-connection":nwe.CONNECTION,"transfer-encoding":nwe.TRANSFER_ENCODING,upgrade:nwe.UPGRADE}});var SCr=H((jnu,z4n)=>{"use strict";var Q$=e_(),{kBodyUsed:JHe}=VE(),ECr=Et("assert"),{InvalidArgumentError:F$o}=qb(),Z$o=Et("events"),L$o=[300,301,302,303,307,308],K4n=Symbol("body"),Oft=class{constructor(t){this[K4n]=t,this[JHe]=!1}async*[Symbol.asyncIterator](){ECr(!this[JHe],"disturbed"),this[JHe]=!0,yield*this[K4n]}},bCr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new F$o("maxRedirections must be a positive number");Q$.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],Q$.isStream(this.opts.body)?(Q$.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){ECr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[JHe]=!1,Z$o.prototype.on.call(this.opts.body,"data",function(){this[JHe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Oft(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&Q$.isIterable(this.opts.body)&&(this.opts.body=new Oft(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||Q$.isDisturbed(this.opts.body)?null:V$o(t,r),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=Q$.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=W$o(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function V$o(e,t){if(L$o.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var O$o=SCr();function P$o({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new O$o(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}q4n.exports=P$o});var vCr=H((qnu,$4n)=>{$4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="});var tJn=H(($nu,eJn)=>{eJn.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="});var eYe=H((eiu,_Jn)=>{"use strict";var GA=Et("assert"),iJn=Et("net"),M$o=Et("http"),{pipeline:H$o}=Et("stream"),wp=e_(),BCr=pXn(),TCr=P4n(),Y$o=QHe(),{RequestContentLengthMismatchError:X$,ResponseContentLengthMismatchError:Q$o,InvalidArgumentError:sw,RequestAbortedError:ZCr,HeadersTimeoutError:X$o,HeadersOverflowError:J$o,SocketError:swe,InformationalError:k8,BodyTimeoutError:U$o,HTTPParserError:K$o,ResponseExceededMaxSizeError:j$o,ClientDestroyedError:z$o}=qb(),q$o=XHe(),{kUrl:Fk,kReset:PZ,kServerName:cae,kClient:x8,kBusy:RCr,kParser:Yv,kConnect:$$o,kBlocking:owe,kResuming:rhe,kRunning:xS,kPending:ihe,kSize:nhe,kWriting:J$,kQueue:P1,kConnected:eea,kConnecting:iwe,kNeedDrain:uae,kNoRef:UHe,kKeepAliveDefaultTimeout:NCr,kHostHeader:sJn,kPendingIdx:qO,kRunningIdx:M1,kError:Zk,kPipelining:gae,kSocket:Qv,kKeepAliveTimeoutValue:zHe,kMaxHeadersSize:Yft,kKeepAliveMaxTimeout:oJn,kKeepAliveTimeoutThreshold:aJn,kHeadersTimeout:cJn,kBodyTimeout:lJn,kStrictContentLength:qHe,kConnector:KHe,kMaxRedirections:tea,kMaxRequests:$He,kCounter:uJn,kClose:rea,kDestroy:nea,kDispatch:iea,kInterceptors:sea,kLocalAddress:jHe,kMaxResponseSize:gJn,kHTTPConnVersion:G8,kHost:AJn,kHTTP2Session:$O,kHTTP2SessionState:Xft,kHTTP2BuildRequest:oea,kHTTP2CopyHeaders:aea,kHTTP1BuildRequest:cea}=VE(),Jft;try{Jft=Et("http2")}catch{Jft={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:lea,HTTP2_HEADER_METHOD:uea,HTTP2_HEADER_PATH:gea,HTTP2_HEADER_SCHEME:Aea,HTTP2_HEADER_CONTENT_LENGTH:dea,HTTP2_HEADER_EXPECT:pea,HTTP2_HEADER_STATUS:fea}}=Jft,rJn=!1,Mft=Buffer[Symbol.species],lae=Symbol("kClosedResolve"),BG={};try{let e=Et("diagnostics_channel");BG.sendHeaders=e.channel("undici:client:sendHeaders"),BG.beforeConnect=e.channel("undici:client:beforeConnect"),BG.connectError=e.channel("undici:client:connectError"),BG.connected=e.channel("undici:client:connected")}catch{BG.sendHeaders={hasSubscribers:!1},BG.beforeConnect={hasSubscribers:!1},BG.connectError={hasSubscribers:!1},BG.connected={hasSubscribers:!1}}var DCr=class extends Y$o{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:J,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,allowH2:k,maxConcurrentStreams:tt}={}){if(super(),C!==void 0)throw new sw("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new sw("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new sw("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new sw("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new sw("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new sw("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new sw("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new sw("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new sw("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new sw("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new sw("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new sw("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new sw("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new sw("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new sw("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new sw("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||iJn.isIP(de)===0))throw new sw("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new sw("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new sw("autoSelectFamilyAttemptTimeout must be a positive number");if(k!=null&&typeof k!="boolean")throw new sw("allowH2 must be a valid boolean value");if(tt!=null&&(typeof tt!="number"||tt<1))throw new sw("maxConcurrentStreams must be a possitive integer, greater than 0");typeof fe!="function"&&(fe=q$o({...J,maxCachedSessions:ne,allowH2:k,socketPath:F,timeout:A,...wp.nodeHasAutoSelectFamily&&Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),this[sea]=r&&r.Client&&Array.isArray(r.Client)?r.Client:[_ea({maxRedirections:ce})],this[Fk]=wp.parseOrigin(t),this[KHe]=fe,this[Qv]=null,this[gae]=Q??1,this[Yft]=n||M$o.maxHeaderSize,this[NCr]=b??4e3,this[oJn]=N??6e5,this[aJn]=B??1e3,this[zHe]=this[NCr],this[cae]=null,this[jHe]=de??null,this[rhe]=0,this[uae]=0,this[sJn]=`host: ${this[Fk].hostname}${this[Fk].port?`:${this[Fk].port}`:""}\r +`,this[lJn]=f??3e5,this[cJn]=a??3e5,this[qHe]=ae??!0,this[tea]=ce,this[$He]=ue,this[lae]=null,this[gJn]=be>-1?be:-1,this[G8]="h1",this[$O]=null,this[Xft]=k?{openStreams:0,maxConcurrentStreams:tt??100}:null,this[AJn]=`${this[Fk].hostname}${this[Fk].port?`:${this[Fk].port}`:""}`,this[P1]=[],this[M1]=0,this[qO]=0}get pipelining(){return this[gae]}set pipelining(t){this[gae]=t,eP(this,!0)}get[ihe](){return this[P1].length-this[qO]}get[xS](){return this[qO]-this[M1]}get[nhe](){return this[P1].length-this[M1]}get[eea](){return!!this[Qv]&&!this[iwe]&&!this[Qv].destroyed}get[RCr](){let t=this[Qv];return t&&(t[PZ]||t[J$]||t[owe])||this[nhe]>=(this[gae]||1)||this[ihe]>0}[$$o](t){IJn(this),this.once("connect",t)}[iea](t,r){let n=t.origin||this[Fk].origin,a=this[G8]==="h2"?TCr[oea](n,t,r):TCr[cea](n,t,r);return this[P1].push(a),this[rhe]||(wp.bodyLength(a.body)==null&&wp.isIterable(a.body)?(this[rhe]=1,process.nextTick(eP,this)):eP(this,!0)),this[rhe]&&this[uae]!==2&&this[RCr]&&(this[uae]=2),this[uae]<2}async[rea](){return new Promise(t=>{this[nhe]?this[lae]=t:t(null)})}async[nea](t){return new Promise(r=>{let n=this[P1].splice(this[qO]);for(let o=0;o{this[lae]&&(this[lae](),this[lae]=null),r()};this[$O]!=null&&(wp.destroy(this[$O],t),this[$O]=null,this[Xft]=null),this[Qv]?wp.destroy(this[Qv].on("close",a),t):queueMicrotask(a),eP(this)})}};function Iea(e){GA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Qv][Zk]=e,jft(this[x8],e)}function hea(e,t,r){let n=new k8(`HTTP/2: "frameError" received - type ${e}, code ${t}`);r===0&&(this[Qv][Zk]=n,jft(this[x8],n))}function mea(){wp.destroy(this,new swe("other side closed")),wp.destroy(this[Qv],new swe("other side closed"))}function Cea(e){let t=this[x8],r=new k8(`HTTP/2: "GOAWAY" frame received with code ${e}`);if(t[Qv]=null,t[$O]=null,t.destroyed){GA(this[ihe]===0);let n=t[P1].splice(t[M1]);for(let a=0;a0){let n=t[P1][t[M1]];t[P1][t[M1]++]=null,MZ(t,n,r)}t[qO]=t[M1],GA(t[xS]===0),t.emit("disconnect",t[Fk],[t],r),eP(t)}var R8=U4n(),_ea=Pft(),yea=Buffer.alloc(0);async function bea(){let e=process.env.JEST_WORKER_ID?vCr():void 0,t;try{t=await WebAssembly.compile(Buffer.from(tJn(),"base64"))}catch{t=await WebAssembly.compile(Buffer.from(e||vCr(),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{GA.strictEqual(GR.ptr,r);let o=n-D8+N8.byteOffset;return GR.onStatus(new Mft(N8.buffer,o,a))||0},wasm_on_message_begin:r=>(GA.strictEqual(GR.ptr,r),GR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{GA.strictEqual(GR.ptr,r);let o=n-D8+N8.byteOffset;return GR.onHeaderField(new Mft(N8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{GA.strictEqual(GR.ptr,r);let o=n-D8+N8.byteOffset;return GR.onHeaderValue(new Mft(N8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(GA.strictEqual(GR.ptr,r),GR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{GA.strictEqual(GR.ptr,r);let o=n-D8+N8.byteOffset;return GR.onBody(new Mft(N8.buffer,o,a))||0},wasm_on_message_complete:r=>(GA.strictEqual(GR.ptr,r),GR.onMessageComplete()||0)}})}var wCr=null,kCr=bea();kCr.catch();var GR=null,N8=null,Hft=0,D8=null,awe=1,Qft=2,xCr=3,GCr=class{constructor(t,r,{exports:n}){GA(Number.isFinite(t[Yft])&&t[Yft]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(R8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[Yft],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[gJn]}setTimeout(t,r){this.timeoutType=r,t!==this.timeoutValue?(BCr.clearTimeout(this.timeout),t?(this.timeout=BCr.setTimeout(Eea,t,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){this.socket.destroyed||!this.paused||(GA(this.ptr!=null),GA(GR==null),this.llhttp.llhttp_resume(this.ptr),GA(this.timeoutType===Qft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||yea),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){GA(this.ptr!=null),GA(GR==null),GA(!this.paused);let{socket:r,llhttp:n}=this;t.length>Hft&&(D8&&n.free(D8),Hft=Math.ceil(t.length/4096)*4096,D8=n.malloc(Hft)),new Uint8Array(n.memory.buffer,D8,Hft).set(t);try{let a;try{N8=t,GR=this,a=n.llhttp_execute(this.ptr,D8,t.length)}catch(l){throw l}finally{GR=null,N8=null}let o=n.llhttp_get_error_pos(this.ptr)-D8;if(a===R8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===R8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==R8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new K$o(A,R8.ERROR[a],t.slice(o))}}catch(a){wp.destroy(r,a)}}destroy(){GA(this.ptr!=null),GA(GR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,BCr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed||!r[P1][r[M1]])return-1}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];n.length===10&&n.toString().toLowerCase()==="keep-alive"?this.keepAlive+=t.toString():n.length===10&&n.toString().toLowerCase()==="connection"?this.connection+=t.toString():n.length===14&&n.toString().toLowerCase()==="content-length"&&(this.contentLength+=t.toString()),this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&wp.destroy(this.socket,new J$o)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;GA(r);let A=n[P1][n[M1]];GA(A),GA(!a.destroyed),GA(a===n[Qv]),GA(!this.paused),GA(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,GA(this.headers.length%2===0),this.headers=[],this.headersSize=0,a.unshift(t),a[Yv].destroy(),a[Yv]=null,a[x8]=null,a[Zk]=null,a.removeListener("error",pJn).removeListener("readable",dJn).removeListener("end",fJn).removeListener("close",FCr),n[Qv]=null,n[P1][n[M1]++]=null,n.emit("disconnect",n[Fk],[n],new k8("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){wp.destroy(a,f)}eP(n)}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[P1][a[M1]];if(!f)return-1;if(GA(!this.upgrade),GA(this.statusCode<200),t===100)return wp.destroy(o,new swe("bad response",wp.getSocketInfo(o))),-1;if(r&&!f.upgrade)return wp.destroy(o,new swe("bad upgrade",wp.getSocketInfo(o))),-1;if(GA.strictEqual(this.timeoutType,awe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[PZ]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[lJn];this.setTimeout(C,Qft)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return GA(a[xS]===1),this.upgrade=!0,2;if(r)return GA(a[xS]===1),this.upgrade=!0,2;if(GA(this.headers.length%2===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[gae]){let C=this.keepAlive?wp.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[aJn],a[oJn]);b<=0?o[PZ]=!0:a[zHe]=b}else a[zHe]=a[NCr]}else o[PZ]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[owe]&&(o[owe]=!1,eP(a)),I?R8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[P1][r[M1]];if(GA(l),GA.strictEqual(this.timeoutType,Qft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),GA(a>=200),o>-1&&this.bytesRead+t.length>o)return wp.destroy(n,new j$o),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return R8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;let I=t[P1][t[M1]];if(GA(I),GA(n>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",GA(this.headers.length%2===0),this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return wp.destroy(r,new Q$o),-1;if(I.onComplete(o),t[P1][t[M1]++]=null,r[J$])return GA.strictEqual(t[xS],0),wp.destroy(r,new k8("reset")),R8.ERROR.PAUSED;if(f){if(r[PZ]&&t[xS]===0)return wp.destroy(r,new k8("reset")),R8.ERROR.PAUSED;t[gae]===1?setImmediate(eP,t):eP(t)}else return wp.destroy(r,new k8("reset")),R8.ERROR.PAUSED}}};function Eea(e){let{socket:t,timeoutType:r,client:n}=e;r===awe?(!t[J$]||t.writableNeedDrain||n[xS]>1)&&(GA(!e.paused,"cannot be paused while waiting for headers"),wp.destroy(t,new X$o)):r===Qft?e.paused||wp.destroy(t,new U$o):r===xCr&&(GA(n[xS]===0&&n[zHe]),wp.destroy(t,new k8("socket idle timeout")))}function dJn(){let{[Yv]:e}=this;e&&e.readMore()}function pJn(e){let{[x8]:t,[Yv]:r}=this;if(GA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),t[G8]!=="h2"&&e.code==="ECONNRESET"&&r.statusCode&&!r.shouldKeepAlive){r.onMessageComplete();return}this[Zk]=e,jft(this[x8],e)}function jft(e,t){if(e[xS]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){GA(e[qO]===e[M1]);let r=e[P1].splice(e[M1]);for(let n=0;n0&&r.code!=="UND_ERR_INFO"){let n=e[P1][e[M1]];e[P1][e[M1]++]=null,MZ(e,n,r)}e[qO]=e[M1],GA(e[xS]===0),e.emit("disconnect",e[Fk],[e],r),eP(e)}async function IJn(e){GA(!e[iwe]),GA(!e[Qv]);let{host:t,hostname:r,protocol:n,port:a}=e[Fk];if(r[0]==="["){let o=r.indexOf("]");GA(o!==-1);let l=r.substring(1,o);GA(iJn.isIP(l)),r=l}e[iwe]=!0,BG.beforeConnect.hasSubscribers&&BG.beforeConnect.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[cae],localAddress:e[jHe]},connector:e[KHe]});try{let o=await new Promise((A,f)=>{e[KHe]({host:t,hostname:r,protocol:n,port:a,servername:e[cae],localAddress:e[jHe]},(I,C)=>{I?f(I):A(C)})});if(e.destroyed){wp.destroy(o.on("error",()=>{}),new z$o);return}if(e[iwe]=!1,GA(o),o.alpnProtocol==="h2"){rJn||(rJn=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let A=Jft.connect(e[Fk],{createConnection:()=>o,peerMaxConcurrentStreams:e[Xft].maxConcurrentStreams});e[G8]="h2",A[x8]=e,A[Qv]=o,A.on("error",Iea),A.on("frameError",hea),A.on("end",mea),A.on("goaway",Cea),A.on("close",FCr),A.unref(),e[$O]=A,o[$O]=A}else wCr||(wCr=await kCr,kCr=null),o[UHe]=!1,o[J$]=!1,o[PZ]=!1,o[owe]=!1,o[Yv]=new GCr(e,o,wCr);o[uJn]=0,o[$He]=e[$He],o[x8]=e,o[Zk]=null,o.on("error",pJn).on("readable",dJn).on("end",fJn).on("close",FCr),e[Qv]=o,BG.connected.hasSubscribers&&BG.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[cae],localAddress:e[jHe]},connector:e[KHe],socket:o}),e.emit("connect",e[Fk],[e])}catch(o){if(e.destroyed)return;if(e[iwe]=!1,BG.connectError.hasSubscribers&&BG.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[cae],localAddress:e[jHe]},connector:e[KHe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(GA(e[xS]===0);e[ihe]>0&&e[P1][e[qO]].servername===e[cae];){let l=e[P1][e[qO]++];MZ(e,l,o)}else jft(e,o);e.emit("connectionError",e[Fk],[e],o)}eP(e)}function nJn(e){e[uae]=0,e.emit("drain",e[Fk],[e])}function eP(e,t){e[rhe]!==2&&(e[rhe]=2,Sea(e,t),e[rhe]=0,e[M1]>256&&(e[P1].splice(0,e[M1]),e[qO]-=e[M1],e[M1]=0))}function Sea(e,t){for(;;){if(e.destroyed){GA(e[ihe]===0);return}if(e[lae]&&!e[nhe]){e[lae](),e[lae]=null;return}let r=e[Qv];if(r&&!r.destroyed&&r.alpnProtocol!=="h2"){if(e[nhe]===0?!r[UHe]&&r.unref&&(r.unref(),r[UHe]=!0):r[UHe]&&r.ref&&(r.ref(),r[UHe]=!1),e[nhe]===0)r[Yv].timeoutType!==xCr&&r[Yv].setTimeout(e[zHe],xCr);else if(e[xS]>0&&r[Yv].statusCode<200&&r[Yv].timeoutType!==awe){let a=e[P1][e[M1]],o=a.headersTimeout!=null?a.headersTimeout:e[cJn];r[Yv].setTimeout(o,awe)}}if(e[RCr])e[uae]=2;else if(e[uae]===2){t?(e[uae]=1,process.nextTick(nJn,e)):nJn(e);continue}if(e[ihe]===0||e[xS]>=(e[gae]||1))return;let n=e[P1][e[qO]];if(e[Fk].protocol==="https:"&&e[cae]!==n.servername){if(e[xS]>0)return;if(e[cae]=n.servername,r&&r.servername!==n.servername){wp.destroy(r,new k8("servername changed"));return}}if(e[iwe])return;if(!r&&!e[$O]){IJn(e);return}if(r.destroyed||r[J$]||r[PZ]||r[owe]||e[xS]>0&&!n.idempotent||e[xS]>0&&(n.upgrade||n.method==="CONNECT")||e[xS]>0&&wp.bodyLength(n.body)!==0&&(wp.isStream(n.body)||wp.isAsyncIterable(n.body)))return;!n.aborted&&vea(e,n)?e[qO]++:e[P1].splice(e[qO],1)}}function hJn(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function vea(e,t){if(e[G8]==="h2"){Bea(e,e[$O],t);return}let{body:r,method:n,path:a,host:o,upgrade:l,headers:A,blocking:f,reset:I}=t,C=n==="PUT"||n==="POST"||n==="PATCH";r&&typeof r.read=="function"&&r.read(0);let b=wp.bodyLength(r),E=b;if(E===null&&(E=t.contentLength),E===0&&!C&&(E=null),hJn(n)&&E>0&&t.contentLength!==null&&t.contentLength!==E){if(e[qHe])return MZ(e,t,new X$),!1;process.emitWarning(new X$)}let N=e[Qv];try{t.onConnect(F=>{t.aborted||t.completed||(MZ(e,t,F||new ZCr),wp.destroy(N,new k8("aborted")))})}catch(F){MZ(e,t,F)}if(t.aborted)return!1;n==="HEAD"&&(N[PZ]=!0),(l||n==="CONNECT")&&(N[PZ]=!0),I!=null&&(N[PZ]=I),e[$He]&&N[uJn]++>=e[$He]&&(N[PZ]=!0),f&&(N[owe]=!0);let B=`${n} ${a} HTTP/1.1\r `;return typeof o=="string"?B+=`host: ${o}\r -`:B+=e[$4n],l?B+=`connection: upgrade\r +`:B+=e[sJn],l?B+=`connection: upgrade\r upgrade: ${l}\r -`:e[uae]&&!N[OZ]?B+=`connection: keep-alive\r +`:e[gae]&&!N[PZ]?B+=`connection: keep-alive\r `:B+=`connection: close\r -`,A&&(B+=A),vG.sendHeaders.hasSubscribers&&vG.sendHeaders.publish({request:t,headers:B,socket:N}),!r||b===0?(E===0?N.write(`${B}content-length: 0\r +`,A&&(B+=A),BG.sendHeaders.hasSubscribers&&BG.sendHeaders.publish({request:t,headers:B,socket:N}),!r||b===0?(E===0?N.write(`${B}content-length: 0\r \r `,"latin1"):(GA(E===null,"no body must not have content length"),N.write(`${B}\r `,"latin1")),t.onRequestSent()):wp.isBuffer(r)?(GA(E===r.byteLength,"buffer body must have content length"),N.cork(),N.write(`${B}content-length: ${E}\r \r -`,"latin1"),N.write(r),N.uncork(),t.onBodySent(r),t.onRequestSent(),C||(N[OZ]=!0)):wp.isBlobLike(r)?typeof r.stream=="function"?jft({body:r.stream(),client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):dJn({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):wp.isStream(r)?AJn({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):wp.isIterable(r)?jft({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):GA(!1),!0}function Bea(e,t,r){let{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=r,b;if(typeof C=="string"?b=TCr[aea](C.trim()):b=C,A)return PZ(e,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(ae=>{r.aborted||r.completed||PZ(e,r,ae||new ZCr)})}catch(ae){PZ(e,r,ae)}if(r.aborted)return!1;let E,N=e[Uft];if(b[lea]=l||e[oJn],b[uea]=a,a==="CONNECT")return t.ref(),E=t.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(r.onUpgrade(null,null,E),++N.openStreams):E.once("ready",()=>{r.onUpgrade(null,null,E),++N.openStreams}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),!0;b[gea]=o,b[Aea]="https";let B=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let F=wp.bodyLength(n);if(F==null&&(F=r.contentLength),(F===0||!B)&&(F=null),gJn(a)&&F>0&&r.contentLength!=null&&r.contentLength!==F){if(e[$He])return PZ(e,r,new Q$),!1;process.emitWarning(new Q$)}F!=null&&(GA(n,"no body must not have content length"),b[dea]=`${F}`),t.ref();let Q=a==="GET"||a==="HEAD";return f?(b[pea]="100-continue",E=t.request(b,{endStream:Q,signal:I}),E.once("continue",J)):(E=t.request(b,{endStream:Q,signal:I}),J()),++N.openStreams,E.once("response",ae=>{let{[fea]:ne,...ce}=ae;r.onHeaders(Number(ne),ce,E.resume.bind(E),"")===!1&&E.pause()}),E.once("end",()=>{r.onComplete([])}),E.on("data",ae=>{r.onData(ae)===!1&&E.pause()}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),E.once("error",function(ae){e[zO]&&!e[zO].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,wp.destroy(E,ae))}),E.once("frameError",(ae,ne)=>{let ce=new D8(`HTTP/2: "frameError" received - type ${ae}, code ${ne}`);PZ(e,r,ce),e[zO]&&!e[zO].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,wp.destroy(E,ce))}),!0;function J(){n?wp.isBuffer(n)?(GA(F===n.byteLength,"buffer body must have content length"),E.cork(),E.write(n),E.uncork(),E.end(),r.onBodySent(n),r.onRequestSent()):wp.isBlobLike(n)?typeof n.stream=="function"?jft({client:e,request:r,contentLength:F,h2stream:E,expectsPayload:B,body:n.stream(),socket:e[Yv],header:""}):dJn({body:n,client:e,request:r,contentLength:F,expectsPayload:B,h2stream:E,header:"",socket:e[Yv]}):wp.isStream(n)?AJn({body:n,client:e,request:r,contentLength:F,expectsPayload:B,socket:e[Yv],h2stream:E,header:""}):wp.isIterable(n)?jft({body:n,client:e,request:r,contentLength:F,expectsPayload:B,header:"",h2stream:E,socket:e[Yv]}):GA(!1):r.onRequestSent()}}function AJn({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){if(GA(o!==0||r[kS]===0,"stream body cannot be pipelined"),r[x8]==="h2"){let F=function(Q){n.onBodySent(Q)},B=H$o(t,e,Q=>{Q?(wp.destroy(t,Q),wp.destroy(e,Q)):n.onRequestSent()});B.on("data",F),B.once("end",()=>{B.removeListener("data",F),wp.destroy(B)});return}let f=!1,I=new zft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l}),C=function(B){if(!f)try{!I.write(B)&&this.pause&&this.pause()}catch(F){wp.destroy(this,F)}},b=function(){f||t.resume&&t.resume()},E=function(){if(f)return;let B=new ZCr;queueMicrotask(()=>N(B))},N=function(B){if(!f){if(f=!0,GA(a.destroyed||a[X$]&&r[kS]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("error",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?wp.destroy(t,B):wp.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N)}async function dJn({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){GA(o===t.size,"blob body must have content length");let f=r[x8]==="h2";try{if(o!=null&&o!==t.size)throw new Q$;let I=Buffer.from(await t.arrayBuffer());f?(e.cork(),e.write(I),e.uncork()):(a.cork(),a.write(`${l}content-length: ${o}\r +`,"latin1"),N.write(r),N.uncork(),t.onBodySent(r),t.onRequestSent(),C||(N[PZ]=!0)):wp.isBlobLike(r)?typeof r.stream=="function"?Uft({body:r.stream(),client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):CJn({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):wp.isStream(r)?mJn({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):wp.isIterable(r)?Uft({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):GA(!1),!0}function Bea(e,t,r){let{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=r,b;if(typeof C=="string"?b=TCr[aea](C.trim()):b=C,A)return MZ(e,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(ae=>{r.aborted||r.completed||MZ(e,r,ae||new ZCr)})}catch(ae){MZ(e,r,ae)}if(r.aborted)return!1;let E,N=e[Xft];if(b[lea]=l||e[AJn],b[uea]=a,a==="CONNECT")return t.ref(),E=t.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(r.onUpgrade(null,null,E),++N.openStreams):E.once("ready",()=>{r.onUpgrade(null,null,E),++N.openStreams}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),!0;b[gea]=o,b[Aea]="https";let B=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let F=wp.bodyLength(n);if(F==null&&(F=r.contentLength),(F===0||!B)&&(F=null),hJn(a)&&F>0&&r.contentLength!=null&&r.contentLength!==F){if(e[qHe])return MZ(e,r,new X$),!1;process.emitWarning(new X$)}F!=null&&(GA(n,"no body must not have content length"),b[dea]=`${F}`),t.ref();let Q=a==="GET"||a==="HEAD";return f?(b[pea]="100-continue",E=t.request(b,{endStream:Q,signal:I}),E.once("continue",J)):(E=t.request(b,{endStream:Q,signal:I}),J()),++N.openStreams,E.once("response",ae=>{let{[fea]:ne,...ce}=ae;r.onHeaders(Number(ne),ce,E.resume.bind(E),"")===!1&&E.pause()}),E.once("end",()=>{r.onComplete([])}),E.on("data",ae=>{r.onData(ae)===!1&&E.pause()}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),E.once("error",function(ae){e[$O]&&!e[$O].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,wp.destroy(E,ae))}),E.once("frameError",(ae,ne)=>{let ce=new k8(`HTTP/2: "frameError" received - type ${ae}, code ${ne}`);MZ(e,r,ce),e[$O]&&!e[$O].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,wp.destroy(E,ce))}),!0;function J(){n?wp.isBuffer(n)?(GA(F===n.byteLength,"buffer body must have content length"),E.cork(),E.write(n),E.uncork(),E.end(),r.onBodySent(n),r.onRequestSent()):wp.isBlobLike(n)?typeof n.stream=="function"?Uft({client:e,request:r,contentLength:F,h2stream:E,expectsPayload:B,body:n.stream(),socket:e[Qv],header:""}):CJn({body:n,client:e,request:r,contentLength:F,expectsPayload:B,h2stream:E,header:"",socket:e[Qv]}):wp.isStream(n)?mJn({body:n,client:e,request:r,contentLength:F,expectsPayload:B,socket:e[Qv],h2stream:E,header:""}):wp.isIterable(n)?Uft({body:n,client:e,request:r,contentLength:F,expectsPayload:B,header:"",h2stream:E,socket:e[Qv]}):GA(!1):r.onRequestSent()}}function mJn({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){if(GA(o!==0||r[xS]===0,"stream body cannot be pipelined"),r[G8]==="h2"){let F=function(Q){n.onBodySent(Q)},B=H$o(t,e,Q=>{Q?(wp.destroy(t,Q),wp.destroy(e,Q)):n.onRequestSent()});B.on("data",F),B.once("end",()=>{B.removeListener("data",F),wp.destroy(B)});return}let f=!1,I=new Kft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l}),C=function(B){if(!f)try{!I.write(B)&&this.pause&&this.pause()}catch(F){wp.destroy(this,F)}},b=function(){f||t.resume&&t.resume()},E=function(){if(f)return;let B=new ZCr;queueMicrotask(()=>N(B))},N=function(B){if(!f){if(f=!0,GA(a.destroyed||a[J$]&&r[xS]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("error",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?wp.destroy(t,B):wp.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N)}async function CJn({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){GA(o===t.size,"blob body must have content length");let f=r[G8]==="h2";try{if(o!=null&&o!==t.size)throw new X$;let I=Buffer.from(await t.arrayBuffer());f?(e.cork(),e.write(I),e.uncork()):(a.cork(),a.write(`${l}content-length: ${o}\r \r -`,"latin1"),a.write(I),a.uncork()),n.onBodySent(I),n.onRequestSent(),A||(a[OZ]=!0),qO(r)}catch(I){wp.destroy(f?e:a,I)}}async function jft({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){GA(o!==0||r[kS]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{GA(f===null),a[Fk]?N(a[Fk]):f=E});if(r[x8]==="h2"){e.on("close",I).on("drain",I);try{for await(let E of t){if(a[Fk])throw a[Fk];let N=e.write(E);n.onBodySent(E),N||await C()}}catch(E){e.destroy(E)}finally{n.onRequestSent(),e.end(),e.off("close",I).off("drain",I)}return}a.on("close",I).on("drain",I);let b=new zft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[Fk])throw a[Fk];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var zft=class{constructor({socket:t,request:r,contentLength:n,client:a,expectsPayload:o,header:l}){this.socket=t,this.request=r,this.contentLength=n,this.client=a,this.bytesWritten=0,this.expectsPayload=o,this.header=l,t[X$]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[Fk])throw r[Fk];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[$He])throw new Q$;process.emitWarning(new Q$)}r.cork(),l===0&&(A||(r[OZ]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r +`,"latin1"),a.write(I),a.uncork()),n.onBodySent(I),n.onRequestSent(),A||(a[PZ]=!0),eP(r)}catch(I){wp.destroy(f?e:a,I)}}async function Uft({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){GA(o!==0||r[xS]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{GA(f===null),a[Zk]?N(a[Zk]):f=E});if(r[G8]==="h2"){e.on("close",I).on("drain",I);try{for await(let E of t){if(a[Zk])throw a[Zk];let N=e.write(E);n.onBodySent(E),N||await C()}}catch(E){e.destroy(E)}finally{n.onRequestSent(),e.end(),e.off("close",I).off("drain",I)}return}a.on("close",I).on("drain",I);let b=new Kft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[Zk])throw a[Zk];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var Kft=class{constructor({socket:t,request:r,contentLength:n,client:a,expectsPayload:o,header:l}){this.socket=t,this.request=r,this.contentLength=n,this.client=a,this.bytesWritten=0,this.expectsPayload=o,this.header=l,t[J$]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[Zk])throw r[Zk];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[qHe])throw new X$;process.emitWarning(new X$)}r.cork(),l===0&&(A||(r[PZ]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r `,"latin1"):r.write(`${f}content-length: ${a}\r \r `,"latin1")),a===null&&r.write(`\r ${I.toString(16)}\r -`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Hv].timeout&&r[Hv].timeoutType===awe&&r[Hv].timeout.refresh&&r[Hv].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[X$]=!1,t[Fk])throw t[Fk];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r +`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Yv].timeout&&r[Yv].timeoutType===awe&&r[Yv].timeout.refresh&&r[Yv].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[J$]=!1,t[Zk])throw t[Zk];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r \r `,"latin1"):t.write(`${l}\r `,"latin1"):r===null&&t.write(`\r 0\r \r -`,"latin1"),r!==null&&a!==r){if(n[$He])throw new Q$;process.emitWarning(new Q$)}t[Hv].timeout&&t[Hv].timeoutType===awe&&t[Hv].timeout.refresh&&t[Hv].timeout.refresh(),qO(n)}}destroy(t){let{socket:r,client:n}=this;r[X$]=!1,t&&(GA(n[kS]<=1,"pipeline should only contain this request"),wp.destroy(r,t))}};function PZ(e,t,r){try{t.onError(r),GA(t.aborted)}catch(n){e.emit("error",n)}}pJn.exports=DCr});var IJn=H((dnu,fJn)=>{"use strict";var $ft=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};fJn.exports=class{constructor(){this.head=this.tail=new $ft}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new $ft),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var mJn=H((pnu,hJn)=>{var{kFree:wea,kConnected:Tea,kPending:Rea,kQueued:Nea,kRunning:Dea,kSize:kea}=LE(),ihe=Symbol("pool"),LCr=class{constructor(t){this[ihe]=t}get connected(){return this[ihe][Tea]}get free(){return this[ihe][wea]}get pending(){return this[ihe][Rea]}get queued(){return this[ihe][Nea]}get running(){return this[ihe][Dea]}get size(){return this[ihe][kea]}};hJn.exports=LCr});var HCr=H((fnu,TJn)=>{"use strict";var xea=XHe(),Gea=IJn(),{kConnected:VCr,kSize:CJn,kRunning:_Jn,kPending:yJn,kQueued:rYe,kBusy:Fea,kFree:Zea,kUrl:Lea,kClose:Vea,kDestroy:Wea,kDispatch:Oea}=LE(),Pea=mJn(),tV=Symbol("clients"),MZ=Symbol("needDrain"),nYe=Symbol("queue"),WCr=Symbol("closed resolve"),OCr=Symbol("onDrain"),bJn=Symbol("onConnect"),EJn=Symbol("onDisconnect"),SJn=Symbol("onConnectionError"),PCr=Symbol("get dispatcher"),BJn=Symbol("add client"),wJn=Symbol("remove client"),vJn=Symbol("stats"),MCr=class extends xea{constructor(){super(),this[nYe]=new Gea,this[tV]=[],this[rYe]=0;let t=this;this[OCr]=function(n,a){let o=t[nYe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[rYe]--,l=!this.dispatch(A.opts,A.handler)}this[MZ]=l,!this[MZ]&&t[MZ]&&(t[MZ]=!1,t.emit("drain",n,[t,...a])),t[WCr]&&o.isEmpty()&&Promise.all(t[tV].map(A=>A.close())).then(t[WCr])},this[bJn]=(r,n)=>{t.emit("connect",r,[t,...n])},this[EJn]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[SJn]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[vJn]=new Pea(this)}get[Fea](){return this[MZ]}get[VCr](){return this[tV].filter(t=>t[VCr]).length}get[Zea](){return this[tV].filter(t=>t[VCr]&&!t[MZ]).length}get[yJn](){let t=this[rYe];for(let{[yJn]:r}of this[tV])t+=r;return t}get[_Jn](){let t=0;for(let{[_Jn]:r}of this[tV])t+=r;return t}get[CJn](){let t=this[rYe];for(let{[CJn]:r}of this[tV])t+=r;return t}get stats(){return this[vJn]}async[Vea](){return this[nYe].isEmpty()?Promise.all(this[tV].map(t=>t.close())):new Promise(t=>{this[WCr]=t})}async[Wea](t){for(;;){let r=this[nYe].shift();if(!r)break;r.handler.onError(t)}return Promise.all(this[tV].map(r=>r.destroy(t)))}[Oea](t,r){let n=this[PCr]();return n?n.dispatch(t,r)||(n[MZ]=!0,this[MZ]=!this[PCr]()):(this[MZ]=!0,this[nYe].push({opts:t,handler:r}),this[rYe]++),!this[MZ]}[BJn](t){return t.on("drain",this[OCr]).on("connect",this[bJn]).on("disconnect",this[EJn]).on("connectionError",this[SJn]),this[tV].push(t),this[MZ]&&process.nextTick(()=>{this[MZ]&&this[OCr](t[Lea],[this,t])}),this}[wJn](t){t.close(()=>{let r=this[tV].indexOf(t);r!==-1&&this[tV].splice(r,1)}),this[MZ]=this[tV].some(r=>!r[MZ]&&r.closed!==!0&&r.destroyed!==!0)}};TJn.exports={PoolBase:MCr,kClients:tV,kNeedDrain:MZ,kAddClient:BJn,kRemoveClient:wJn,kGetDispatcher:PCr}});var cwe=H((Inu,kJn)=>{"use strict";var{PoolBase:Mea,kClients:RJn,kNeedDrain:Hea,kAddClient:Yea,kGetDispatcher:Qea}=HCr(),Xea=tYe(),{InvalidArgumentError:YCr}=zb(),QCr=$C(),{kUrl:NJn,kInterceptors:Jea}=LE(),Uea=JHe(),XCr=Symbol("options"),JCr=Symbol("connections"),DJn=Symbol("factory");function Kea(e,t){return new Xea(e,t)}var UCr=class extends Mea{constructor(t,{connections:r,factory:n=Kea,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new YCr("invalid connections");if(typeof n!="function")throw new YCr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new YCr("connect must be a function or an object");typeof a!="function"&&(a=Uea({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...QCr.nodeHasAutoSelectFamily&&I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[Jea]=E.interceptors&&E.interceptors.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[JCr]=r||null,this[NJn]=QCr.parseOrigin(t),this[XCr]={...QCr.deepClone(E),connect:a,allowH2:b},this[XCr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[DJn]=n}[Qea](){let t=this[RJn].find(r=>!r[Hea]);return t||((!this[JCr]||this[RJn].length{"use strict";var{BalancedPoolMissingUpstreamError:jea,InvalidArgumentError:zea}=zb(),{PoolBase:qea,kClients:HZ,kNeedDrain:iYe,kAddClient:$ea,kRemoveClient:eta,kGetDispatcher:tta}=HCr(),rta=cwe(),{kUrl:KCr,kInterceptors:nta}=LE(),{parseOrigin:xJn}=$C(),GJn=Symbol("factory"),eIt=Symbol("options"),FJn=Symbol("kGreatestCommonDivisor"),she=Symbol("kCurrentWeight"),ohe=Symbol("kIndex"),kM=Symbol("kWeight"),tIt=Symbol("kMaxWeightPerServer"),rIt=Symbol("kErrorPenalty");function ZJn(e,t){return t===0?e:ZJn(t,e%t)}function ita(e,t){return new rta(e,t)}var jCr=class extends qea{constructor(t=[],{factory:r=ita,...n}={}){if(super(),this[eIt]=n,this[ohe]=-1,this[she]=0,this[tIt]=this[eIt].maxWeightPerServer||100,this[rIt]=this[eIt].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new zea("factory must be a function.");this[nta]=n.interceptors&&n.interceptors.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[GJn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=xJn(t).origin;if(this[HZ].find(a=>a[KCr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[GJn](r,Object.assign({},this[eIt]));this[$ea](n),n.on("connect",()=>{n[kM]=Math.min(this[tIt],n[kM]+this[rIt])}),n.on("connectionError",()=>{n[kM]=Math.max(1,n[kM]-this[rIt]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[kM]=Math.max(1,n[kM]-this[rIt]),this._updateBalancedPoolStats())});for(let a of this[HZ])a[kM]=this[tIt];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[FJn]=this[HZ].map(t=>t[kM]).reduce(ZJn,0)}removeUpstream(t){let r=xJn(t).origin,n=this[HZ].find(a=>a[KCr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[eta](n),this}get upstreams(){return this[HZ].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[KCr].origin)}[tta](){if(this[HZ].length===0)throw new jea;if(!this[HZ].find(o=>!o[iYe]&&o.closed!==!0&&o.destroyed!==!0)||this[HZ].map(o=>o[iYe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[HZ].findIndex(o=>!o[iYe]);for(;n++this[HZ][a][kM]&&!o[iYe]&&(a=this[ohe]),this[ohe]===0&&(this[she]=this[she]-this[FJn],this[she]<=0&&(this[she]=this[tIt])),o[kM]>=this[she]&&!o[iYe])return o}return this[she]=this[HZ][a][kM],this[ohe]=a,this[HZ][a]}};LJn.exports=jCr});var zCr=H((mnu,PJn)=>{"use strict";var{kConnected:WJn,kSize:OJn}=LE(),nIt=class{constructor(t){this.value=t}deref(){return this.value[WJn]===0&&this.value[OJn]===0?void 0:this.value}},iIt=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[WJn]===0&&t[OJn]===0&&this.finalizer(r)})}};PJn.exports=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:nIt,FinalizationRegistry:iIt}:{WeakRef:global.WeakRef||nIt,FinalizationRegistry:global.FinalizationRegistry||iIt}}});var sYe=H((Cnu,KJn)=>{"use strict";var{InvalidArgumentError:sIt}=zb(),{kClients:gae,kRunning:MJn,kClose:sta,kDestroy:ota,kDispatch:ata,kInterceptors:cta}=LE(),lta=XHe(),uta=cwe(),gta=tYe(),Ata=$C(),dta=Hft(),{WeakRef:pta,FinalizationRegistry:fta}=zCr()(),HJn=Symbol("onConnect"),YJn=Symbol("onDisconnect"),QJn=Symbol("onConnectionError"),Ita=Symbol("maxRedirections"),XJn=Symbol("onDrain"),JJn=Symbol("factory"),UJn=Symbol("finalizer"),qCr=Symbol("options");function hta(e,t){return t&&t.connections===1?new gta(e,t):new uta(e,t)}var $Cr=class extends lta{constructor({factory:t=hta,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new sIt("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new sIt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new sIt("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[cta]=a.interceptors&&a.interceptors.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[dta({maxRedirections:r})],this[qCr]={...Ata.deepClone(a),connect:n},this[qCr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[Ita]=r,this[JJn]=t,this[gae]=new Map,this[UJn]=new fta(l=>{let A=this[gae].get(l);A!==void 0&&A.deref()===void 0&&this[gae].delete(l)});let o=this;this[XJn]=(l,A)=>{o.emit("drain",l,[o,...A])},this[HJn]=(l,A)=>{o.emit("connect",l,[o,...A])},this[YJn]=(l,A,f)=>{o.emit("disconnect",l,[o,...A],f)},this[QJn]=(l,A,f)=>{o.emit("connectionError",l,[o,...A],f)}}get[MJn](){let t=0;for(let r of this[gae].values()){let n=r.deref();n&&(t+=n[MJn])}return t}[ata](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new sIt("opts.origin must be a non-empty string or URL.");let a=this[gae].get(n),o=a?a.deref():null;return o||(o=this[JJn](t.origin,this[qCr]).on("drain",this[XJn]).on("connect",this[HJn]).on("disconnect",this[YJn]).on("connectionError",this[QJn]),this[gae].set(n,new pta(o)),this[UJn].register(o,n)),o.dispatch(t,r)}async[sta](){let t=[];for(let r of this[gae].values()){let n=r.deref();n&&t.push(n.close())}await Promise.all(t)}async[ota](t){let r=[];for(let n of this[gae].values()){let a=n.deref();a&&r.push(a.destroy(t))}await Promise.all(r)}};KJn.exports=$Cr});var iUn=H((ynu,nUn)=>{"use strict";var $Jn=Et("assert"),{Readable:mta}=Et("stream"),{RequestAbortedError:eUn,NotSupportedError:Cta,InvalidArgumentError:_ta}=zb(),cIt=$C(),{ReadableStreamFrom:yta,toUSVString:bta}=$C(),e_r,$O=Symbol("kConsume"),oIt=Symbol("kReading"),Aae=Symbol("kBody"),jJn=Symbol("abort"),tUn=Symbol("kContentType"),zJn=()=>{};nUn.exports=class extends mta{constructor({resume:t,abort:r,contentType:n="",highWaterMark:a=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:a}),this._readableState.dataEmitted=!1,this[jJn]=r,this[$O]=null,this[Aae]=null,this[tUn]=n,this[oIt]=!1}destroy(t){return this.destroyed?this:(!t&&!this._readableState.endEmitted&&(t=new eUn),t&&this[jJn](),super.destroy(t))}emit(t,...r){return t==="data"?this._readableState.dataEmitted=!0:t==="error"&&(this._readableState.errorEmitted=!0),super.emit(t,...r)}on(t,...r){return(t==="data"||t==="readable")&&(this[oIt]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[oIt]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[$O]&&t!==null&&this.readableLength===0?(rUn(this[$O],t),this[oIt]?super.push(t):!0):super.push(t)}async text(){return aIt(this,"text")}async json(){return aIt(this,"json")}async blob(){return aIt(this,"blob")}async arrayBuffer(){return aIt(this,"arrayBuffer")}async formData(){throw new Cta}get bodyUsed(){return cIt.isDisturbed(this)}get body(){return this[Aae]||(this[Aae]=yta(this),this[$O]&&(this[Aae].getReader(),$Jn(this[Aae].locked))),this[Aae]}dump(t){let r=t&&Number.isFinite(t.limit)?t.limit:262144,n=t&&t.signal;if(n)try{if(typeof n!="object"||!("aborted"in n))throw new _ta("signal must be an AbortSignal");cIt.throwIfAborted(n)}catch(a){return Promise.reject(a)}return this.closed?Promise.resolve(null):new Promise((a,o)=>{let l=n?cIt.addAbortListener(n,()=>{this.destroy()}):zJn;this.on("close",function(){l(),n&&n.aborted?o(n.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):a(null)}).on("error",zJn).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Eta(e){return e[Aae]&&e[Aae].locked===!0||e[$O]}function Sta(e){return cIt.isDisturbed(e)||Eta(e)}async function aIt(e,t){if(Sta(e))throw new TypeError("unusable");return $Jn(!e[$O]),new Promise((r,n)=>{e[$O]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){t_r(this[$O],a)}).on("close",function(){this[$O].body!==null&&t_r(this[$O],new eUn)}),process.nextTick(vta,e[$O])})}function vta(e){if(e.body===null)return;let{_readableState:t}=e.stream;for(let r of t.buffer)rUn(e,r);for(t.endEmitted?qJn(this[$O]):e.stream.on("end",function(){qJn(this[$O])}),e.stream.resume();e.stream.read()!=null;);}function qJn(e){let{type:t,body:r,resolve:n,stream:a,length:o}=e;try{if(t==="text")n(bta(Buffer.concat(r)));else if(t==="json")n(JSON.parse(Buffer.concat(r)));else if(t==="arrayBuffer"){let l=new Uint8Array(o),A=0;for(let f of r)l.set(f,A),A+=f.byteLength;n(l.buffer)}else t==="blob"&&(e_r||(e_r=Et("buffer").Blob),n(new e_r(r,{type:a[tUn]})));t_r(e)}catch(l){a.destroy(l)}}function rUn(e,t){e.length+=t.length,e.body.push(t)}function t_r(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}});var r_r=H((bnu,oUn)=>{var Bta=Et("assert"),{ResponseStatusCodeError:lIt}=zb(),{toUSVString:sUn}=$C();async function wta({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){Bta(t);let l=[],A=0;for await(let f of t)if(l.push(f),A+=f.length,A>128*1024){l=null;break}if(n===204||!r||!l){process.nextTick(e,new lIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o));return}try{if(r.startsWith("application/json")){let f=JSON.parse(sUn(Buffer.concat(l)));process.nextTick(e,new lIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}if(r.startsWith("text/")){let f=sUn(Buffer.concat(l));process.nextTick(e,new lIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}}catch{}process.nextTick(e,new lIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o))}oUn.exports={getResolveErrorBodyCallback:wta}});var uwe=H((Enu,cUn)=>{var{addAbortListener:Tta}=$C(),{RequestAbortedError:Rta}=zb(),lwe=Symbol("kListener"),dae=Symbol("kSignal");function aUn(e){e.abort?e.abort():e.onError(new Rta)}function Nta(e,t){if(e[dae]=null,e[lwe]=null,!!t){if(t.aborted){aUn(e);return}e[dae]=t,e[lwe]=()=>{aUn(e)},Tta(e[dae],e[lwe])}}function Dta(e){e[dae]&&("removeEventListener"in e[dae]?e[dae].removeEventListener("abort",e[lwe]):e[dae].removeListener("abort",e[lwe]),e[dae]=null,e[lwe]=null)}cUn.exports={addSignal:Nta,removeSignal:Dta}});var gUn=H((Snu,n_r)=>{"use strict";var kta=iUn(),{InvalidArgumentError:gwe,RequestAbortedError:xta}=zb(),G8=$C(),{getResolveErrorBodyCallback:Gta}=r_r(),{AsyncResource:Fta}=Et("async_hooks"),{addSignal:Zta,removeSignal:lUn}=uwe(),uIt=class extends Fta{constructor(t,r){if(!t||typeof t!="object")throw new gwe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new gwe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new gwe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new gwe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new gwe("invalid method");if(A&&typeof A!="function")throw new gwe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw G8.isStream(l)&&G8.destroy(l.on("error",G8.nop),b),b}this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,G8.isStream(l)&&l.on("error",b=>{this.onError(b)}),Zta(this,n)}onConnect(t,r){if(!this.callback)throw new xta;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?G8.parseRawHeaders(r):G8.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let N=(I==="raw"?G8.parseHeaders(r):b)["content-type"],B=new kta({resume:n,abort:A,contentType:N,highWaterMark:C});this.callback=null,this.res=B,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(Gta,null,{callback:o,body:B,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:B,context:f}))}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;lUn(this),G8.parseHeaders(t,this.trailers),r.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;lUn(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{G8.destroy(r,t)})),a&&(this.body=null,G8.destroy(a,t))}};function uUn(e,t){if(t===void 0)return new Promise((r,n)=>{uUn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new uIt(e,t))}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}n_r.exports=uUn;n_r.exports.RequestHandler=uIt});var fUn=H((vnu,pUn)=>{"use strict";var{finished:Lta,PassThrough:Vta}=Et("stream"),{InvalidArgumentError:Awe,InvalidReturnValueError:Wta,RequestAbortedError:Ota}=zb(),OX=$C(),{getResolveErrorBodyCallback:Pta}=r_r(),{AsyncResource:Mta}=Et("async_hooks"),{addSignal:Hta,removeSignal:AUn}=uwe(),i_r=class extends Mta{constructor(t,r,n){if(!t||typeof t!="object")throw new Awe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new Awe("invalid callback");if(typeof r!="function")throw new Awe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new Awe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new Awe("invalid method");if(f&&typeof f!="function")throw new Awe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw OX.isStream(A)&&OX.destroy(A.on("error",OX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,OX.isStream(A)&&A.on("error",b=>{this.onError(b)}),Hta(this,a)}onConnect(t,r){if(!this.callback)throw new Ota;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?OX.parseRawHeaders(r):OX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?OX.parseHeaders(r):C)["content-type"];b=new Vta,this.callback=null,this.runInAsyncScope(Pta,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new Wta("expected Writable");Lta(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:J,abort:ae}=this;this.res=null,(N||!F.readable)&&OX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:J}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState&&b._writableState.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;AUn(this),r&&(this.trailers=OX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;AUn(this),this.factory=null,r?(this.res=null,OX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,OX.destroy(o,t))}};function dUn(e,t,r){if(r===void 0)return new Promise((n,a)=>{dUn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new i_r(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e&&e.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}pUn.exports=dUn});var mUn=H((Bnu,hUn)=>{"use strict";var{Readable:IUn,Duplex:Yta,PassThrough:Qta}=Et("stream"),{InvalidArgumentError:oYe,InvalidReturnValueError:Xta,RequestAbortedError:gIt}=zb(),xM=$C(),{AsyncResource:Jta}=Et("async_hooks"),{addSignal:Uta,removeSignal:Kta}=uwe(),jta=Et("assert"),dwe=Symbol("resume"),s_r=class extends IUn{constructor(){super({autoDestroy:!0}),this[dwe]=null}_read(){let{[dwe]:t}=this;t&&(this[dwe]=null,t())}_destroy(t,r){this._read(),r(t)}},o_r=class extends IUn{constructor(t){super({autoDestroy:!0}),this[dwe]=t}_read(){this[dwe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new gIt),r(t)}},a_r=class extends Jta{constructor(t,r){if(!t||typeof t!="object")throw new oYe("invalid opts");if(typeof r!="function")throw new oYe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new oYe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new oYe("invalid method");if(l&&typeof l!="function")throw new oYe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new s_r().on("error",xM.nop),this.ret=new Yta({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f&&f.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[dwe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new gIt),B&&f&&B(),xM.destroy(C,f),xM.destroy(b,f),xM.destroy(E,f),Kta(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,Uta(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(jta(!a,"pipeline cannot be retried"),n.destroyed)throw new gIt;this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?xM.parseRawHeaders(r):xM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new o_r(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?xM.parseRawHeaders(r):xM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",xM.nop),f}if(!A||typeof A.on!="function")throw new Xta("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;xM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||xM.destroy(f,new gIt)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,xM.destroy(r,t)}};function zta(e,t){try{let r=new a_r(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new Qta().destroy(r)}}hUn.exports=zta});var EUn=H((wnu,bUn)=>{"use strict";var{InvalidArgumentError:c_r,RequestAbortedError:qta,SocketError:$ta}=zb(),{AsyncResource:era}=Et("async_hooks"),CUn=$C(),{addSignal:tra,removeSignal:_Un}=uwe(),rra=Et("assert"),l_r=class extends era{constructor(t,r){if(!t||typeof t!="object")throw new c_r("invalid opts");if(typeof r!="function")throw new c_r("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new c_r("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,tra(this,n)}onConnect(t,r){if(!this.callback)throw new qta;this.abort=t,this.context=null}onHeaders(){throw new $ta("bad upgrade",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;rra.strictEqual(t,101),_Un(this),this.callback=null;let A=this.responseHeaders==="raw"?CUn.parseRawHeaders(r):CUn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;_Un(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function yUn(e,t){if(t===void 0)return new Promise((r,n)=>{yUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new l_r(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}bUn.exports=yUn});var TUn=H((Tnu,wUn)=>{"use strict";var{AsyncResource:nra}=Et("async_hooks"),{InvalidArgumentError:u_r,RequestAbortedError:ira,SocketError:sra}=zb(),SUn=$C(),{addSignal:ora,removeSignal:vUn}=uwe(),g_r=class extends nra{constructor(t,r){if(!t||typeof t!="object")throw new u_r("invalid opts");if(typeof r!="function")throw new u_r("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new u_r("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,ora(this,n)}onConnect(t,r){if(!this.callback)throw new ira;this.abort=t,this.context=r}onHeaders(){throw new sra("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;vUn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?SUn.parseRawHeaders(r):SUn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;vUn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function BUn(e,t){if(t===void 0)return new Promise((r,n)=>{BUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new g_r(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}wUn.exports=BUn});var RUn=H((Rnu,pwe)=>{"use strict";pwe.exports.request=gUn();pwe.exports.stream=fUn();pwe.exports.pipeline=mUn();pwe.exports.upgrade=EUn();pwe.exports.connect=TUn()});var d_r=H((Nnu,NUn)=>{"use strict";var{UndiciError:ara}=zb(),A_r=class e extends ara{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};NUn.exports={MockNotMatchedError:A_r}});var fwe=H((Dnu,DUn)=>{"use strict";DUn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var aYe=H((knu,HUn)=>{"use strict";var{MockNotMatchedError:ahe}=d_r(),{kDispatches:AIt,kMockAgent:cra,kOriginalDispatch:lra,kOrigin:ura,kGetNetConnect:gra}=fwe(),{buildURL:Ara,nop:dra}=$C(),{STATUS_CODES:pra}=Et("http"),{types:{isPromise:fra}}=Et("util");function J$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function xUn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function GUn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=GUn(t,r);if(!J$(n,a))return!1}return!0}function kUn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function Ira(e,{path:t,method:r,body:n,headers:a}){let o=J$(e.path,t),l=J$(e.method,r),A=typeof e.body<"u"?J$(e.body,n):!0,f=ZUn(e,a);return o&&l&&A&&f}function LUn(e){return Buffer.isBuffer(e)?e:typeof e=="object"?JSON.stringify(e):e.toString()}function VUn(e,t){let r=t.query?Ara(t.path,t.query):t.path,n=typeof r=="string"?kUn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>J$(kUn(o),n));if(a.length===0)throw new ahe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>J$(o,t.method)),a.length===0)throw new ahe(`Mock dispatch not matched for method '${t.method}'`);if(a=a.filter(({body:o})=>typeof o<"u"?J$(o,t.body):!0),a.length===0)throw new ahe(`Mock dispatch not matched for body '${t.body}'`);if(a=a.filter(o=>ZUn(o,t.headers)),a.length===0)throw new ahe(`Mock dispatch not matched for headers '${typeof t.headers=="object"?JSON.stringify(t.headers):t.headers}'`);return a[0]}function hra(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function p_r(e,t){let r=e.findIndex(n=>n.consumed?Ira(n,t):!1);r!==-1&&e.splice(r,1)}function WUn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function f_r(e){return Object.entries(e).reduce((t,[r,n])=>[...t,Buffer.from(`${r}`),Array.isArray(n)?n.map(a=>Buffer.from(`${a}`)):Buffer.from(`${n}`)],[])}function OUn(e){return pra[e]||"unknown"}async function mra(e){let t=[];for await(let r of e)t.push(r);return Buffer.concat(t).toString("utf8")}function PUn(e,t){let r=WUn(e),n=VUn(this[AIt],r);n.timesInvoked++,n.data.callback&&(n.data={...n.data,...n.data.callback(e)});let{data:{statusCode:a,data:o,headers:l,trailers:A,error:f},delay:I,persist:C}=n,{timesInvoked:b,times:E}=n;if(n.consumed=!C&&b>=E,n.pending=b0?setTimeout(()=>{N(this[AIt])},I):N(this[AIt]);function N(F,Q=o){let J=Array.isArray(e.headers)?FUn(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:J}):Q;if(fra(ae)){ae.then(ue=>N(F,ue));return}let ne=LUn(ae),ce=f_r(l),fe=f_r(A);t.abort=dra,t.onHeaders(a,ce,B,OUn(a)),t.onData(Buffer.from(ne)),t.onComplete(fe),p_r(F,r)}function B(){}return!0}function Cra(){let e=this[cra],t=this[ura],r=this[lra];return function(a,o){if(e.isMockActive)try{PUn.call(this,a,o)}catch(l){if(l instanceof ahe){let A=e[gra]();if(A===!1)throw new ahe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(MUn(A,t))r.call(this,a,o);else throw new ahe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function MUn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>J$(n,r.host)))}function _ra(e){if(e){let{agent:t,...r}=e;return r}}HUn.exports={getResponseData:LUn,getMockDispatch:VUn,addMockDispatch:hra,deleteMockDispatch:p_r,buildKey:WUn,generateKeyValues:f_r,matchValue:J$,getResponse:mra,getStatusText:OUn,mockDispatch:PUn,buildMockDispatch:Cra,checkNetConnect:MUn,buildMockOptions:_ra,getHeaderByName:GUn}});var b_r=H((xnu,y_r)=>{"use strict";var{getResponseData:yra,buildKey:bra,addMockDispatch:I_r}=aYe(),{kDispatches:dIt,kDispatchKey:pIt,kDefaultHeaders:h_r,kDefaultTrailers:m_r,kContentLength:C_r,kMockDispatch:fIt}=fwe(),{InvalidArgumentError:PX}=zb(),{buildURL:Era}=$C(),Iwe=class{constructor(t){this[fIt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new PX("waitInMs must be a valid integer > 0");return this[fIt].delay=t,this}persist(){return this[fIt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new PX("repeatTimes must be a valid integer > 0");return this[fIt].times=t,this}},__r=class{constructor(t,r){if(typeof t!="object")throw new PX("opts must be an object");if(typeof t.path>"u")throw new PX("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Era(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[pIt]=bra(t),this[dIt]=r,this[h_r]={},this[m_r]={},this[C_r]=!1}createMockScopeDispatchData(t,r,n={}){let a=yra(r),o=this[C_r]?{"content-length":a.length}:{},l={...this[h_r],...o,...n.headers},A={...this[m_r],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t,r,n){if(typeof t>"u")throw new PX("statusCode must be defined");if(typeof r>"u")throw new PX("data must be defined");if(typeof n!="object")throw new PX("responseOptions must be an object")}reply(t){if(typeof t=="function"){let A=I=>{let C=t(I);if(typeof C!="object")throw new PX("reply options callback must return an object");let{statusCode:b,data:E="",responseOptions:N={}}=C;return this.validateReplyParameters(b,E,N),{...this.createMockScopeDispatchData(b,E,N)}},f=I_r(this[dIt],this[pIt],A);return new Iwe(f)}let[r,n="",a={}]=[...arguments];this.validateReplyParameters(r,n,a);let o=this.createMockScopeDispatchData(r,n,a),l=I_r(this[dIt],this[pIt],o);return new Iwe(l)}replyWithError(t){if(typeof t>"u")throw new PX("error must be defined");let r=I_r(this[dIt],this[pIt],{error:t});return new Iwe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new PX("headers must be defined");return this[h_r]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new PX("trailers must be defined");return this[m_r]=t,this}replyContentLength(){return this[C_r]=!0,this}};y_r.exports.MockInterceptor=__r;y_r.exports.MockScope=Iwe});var v_r=H((Gnu,jUn)=>{"use strict";var{promisify:Sra}=Et("util"),vra=tYe(),{buildMockDispatch:Bra}=aYe(),{kDispatches:YUn,kMockAgent:QUn,kClose:XUn,kOriginalClose:JUn,kOrigin:UUn,kOriginalDispatch:wra,kConnected:E_r}=fwe(),{MockInterceptor:Tra}=b_r(),KUn=LE(),{InvalidArgumentError:Rra}=zb(),S_r=class extends vra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Rra("Argument opts.agent must implement Agent");this[QUn]=r.agent,this[UUn]=t,this[YUn]=[],this[E_r]=1,this[wra]=this.dispatch,this[JUn]=this.close.bind(this),this.dispatch=Bra.call(this),this.close=this[XUn]}get[KUn.kConnected](){return this[E_r]}intercept(t){return new Tra(t,this[YUn])}async[XUn](){await Sra(this[JUn])(),this[E_r]=0,this[QUn][KUn.kClients].delete(this[UUn])}};jUn.exports=S_r});var T_r=H((Fnu,nKn)=>{"use strict";var{promisify:Nra}=Et("util"),Dra=cwe(),{buildMockDispatch:kra}=aYe(),{kDispatches:zUn,kMockAgent:qUn,kClose:$Un,kOriginalClose:eKn,kOrigin:tKn,kOriginalDispatch:xra,kConnected:B_r}=fwe(),{MockInterceptor:Gra}=b_r(),rKn=LE(),{InvalidArgumentError:Fra}=zb(),w_r=class extends Dra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Fra("Argument opts.agent must implement Agent");this[qUn]=r.agent,this[tKn]=t,this[zUn]=[],this[B_r]=1,this[xra]=this.dispatch,this[eKn]=this.close.bind(this),this.dispatch=kra.call(this),this.close=this[$Un]}get[rKn.kConnected](){return this[B_r]}intercept(t){return new Gra(t,this[zUn])}async[$Un](){await Nra(this[eKn])(),this[B_r]=0,this[qUn][rKn.kClients].delete(this[tKn])}};nKn.exports=w_r});var sKn=H((Lnu,iKn)=>{"use strict";var Zra={pronoun:"it",is:"is",was:"was",this:"this"},Lra={pronoun:"they",is:"are",was:"were",this:"these"};iKn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?Zra:Lra,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var aKn=H((Wnu,oKn)=>{"use strict";var{Transform:Vra}=Et("stream"),{Console:Wra}=Et("console");oKn.exports=class{constructor({disableColors:t}={}){this.transform=new Vra({transform(r,n,a){a(null,r)}}),this.logger=new Wra({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?"\u2705":"\u274C",Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var gKn=H((Onu,uKn)=>{"use strict";var{kClients:che}=LE(),Ora=sYe(),{kAgent:R_r,kMockAgentSet:IIt,kMockAgentGet:cKn,kDispatches:N_r,kIsMockActive:hIt,kNetConnect:lhe,kGetNetConnect:Pra,kOptions:mIt,kFactory:CIt}=fwe(),Mra=v_r(),Hra=T_r(),{matchValue:Yra,buildMockOptions:Qra}=aYe(),{InvalidArgumentError:lKn,UndiciError:Xra}=zb(),Jra=Wft(),Ura=sKn(),Kra=aKn(),D_r=class{constructor(t){this.value=t}deref(){return this.value}},k_r=class extends Jra{constructor(t){if(super(t),this[lhe]=!0,this[hIt]=!0,t&&t.agent&&typeof t.agent.dispatch!="function")throw new lKn("Argument opts.agent must implement Agent");let r=t&&t.agent?t.agent:new Ora(t);this[R_r]=r,this[che]=r[che],this[mIt]=Qra(t)}get(t){let r=this[cKn](t);return r||(r=this[CIt](t),this[IIt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[R_r].dispatch(t,r)}async close(){await this[R_r].close(),this[che].clear()}deactivate(){this[hIt]=!1}activate(){this[hIt]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[lhe])?this[lhe].push(t):this[lhe]=[t];else if(typeof t>"u")this[lhe]=!0;else throw new lKn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[lhe]=!1}get isMockActive(){return this[hIt]}[IIt](t,r){this[che].set(t,new D_r(r))}[CIt](t){let r=Object.assign({agent:this},this[mIt]);return this[mIt]&&this[mIt].connections===1?new Mra(t,r):new Hra(t,r)}[cKn](t){let r=this[che].get(t);if(r)return r.deref();if(typeof t!="string"){let n=this[CIt]("http://localhost:9999");return this[IIt](t,n),n}for(let[n,a]of Array.from(this[che])){let o=a.deref();if(o&&typeof n!="string"&&Yra(n,t)){let l=this[CIt](t);return this[IIt](t,l),l[N_r]=o[N_r],l}}}[Pra](){return this[lhe]}pendingInterceptors(){let t=this[che];return Array.from(t.entries()).flatMap(([r,n])=>n.deref()[N_r].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new Kra}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new Ura("interceptor","interceptors").pluralize(r.length);throw new Xra(` +`,"latin1"),r!==null&&a!==r){if(n[qHe])throw new X$;process.emitWarning(new X$)}t[Yv].timeout&&t[Yv].timeoutType===awe&&t[Yv].timeout.refresh&&t[Yv].timeout.refresh(),eP(n)}}destroy(t){let{socket:r,client:n}=this;r[J$]=!1,t&&(GA(n[xS]<=1,"pipeline should only contain this request"),wp.destroy(r,t))}};function MZ(e,t,r){try{t.onError(r),GA(t.aborted)}catch(n){e.emit("error",n)}}_Jn.exports=DCr});var bJn=H((riu,yJn)=>{"use strict";var zft=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};yJn.exports=class{constructor(){this.head=this.tail=new zft}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new zft),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var SJn=H((niu,EJn)=>{var{kFree:wea,kConnected:Tea,kPending:Rea,kQueued:Nea,kRunning:Dea,kSize:kea}=VE(),she=Symbol("pool"),LCr=class{constructor(t){this[she]=t}get connected(){return this[she][Tea]}get free(){return this[she][wea]}get pending(){return this[she][Rea]}get queued(){return this[she][Nea]}get running(){return this[she][Dea]}get size(){return this[she][kea]}};EJn.exports=LCr});var HCr=H((iiu,GJn)=>{"use strict";var xea=QHe(),Gea=bJn(),{kConnected:VCr,kSize:vJn,kRunning:BJn,kPending:wJn,kQueued:tYe,kBusy:Fea,kFree:Zea,kUrl:Lea,kClose:Vea,kDestroy:Wea,kDispatch:Oea}=VE(),Pea=SJn(),rV=Symbol("clients"),HZ=Symbol("needDrain"),rYe=Symbol("queue"),WCr=Symbol("closed resolve"),OCr=Symbol("onDrain"),TJn=Symbol("onConnect"),RJn=Symbol("onDisconnect"),NJn=Symbol("onConnectionError"),PCr=Symbol("get dispatcher"),kJn=Symbol("add client"),xJn=Symbol("remove client"),DJn=Symbol("stats"),MCr=class extends xea{constructor(){super(),this[rYe]=new Gea,this[rV]=[],this[tYe]=0;let t=this;this[OCr]=function(n,a){let o=t[rYe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[tYe]--,l=!this.dispatch(A.opts,A.handler)}this[HZ]=l,!this[HZ]&&t[HZ]&&(t[HZ]=!1,t.emit("drain",n,[t,...a])),t[WCr]&&o.isEmpty()&&Promise.all(t[rV].map(A=>A.close())).then(t[WCr])},this[TJn]=(r,n)=>{t.emit("connect",r,[t,...n])},this[RJn]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[NJn]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[DJn]=new Pea(this)}get[Fea](){return this[HZ]}get[VCr](){return this[rV].filter(t=>t[VCr]).length}get[Zea](){return this[rV].filter(t=>t[VCr]&&!t[HZ]).length}get[wJn](){let t=this[tYe];for(let{[wJn]:r}of this[rV])t+=r;return t}get[BJn](){let t=0;for(let{[BJn]:r}of this[rV])t+=r;return t}get[vJn](){let t=this[tYe];for(let{[vJn]:r}of this[rV])t+=r;return t}get stats(){return this[DJn]}async[Vea](){return this[rYe].isEmpty()?Promise.all(this[rV].map(t=>t.close())):new Promise(t=>{this[WCr]=t})}async[Wea](t){for(;;){let r=this[rYe].shift();if(!r)break;r.handler.onError(t)}return Promise.all(this[rV].map(r=>r.destroy(t)))}[Oea](t,r){let n=this[PCr]();return n?n.dispatch(t,r)||(n[HZ]=!0,this[HZ]=!this[PCr]()):(this[HZ]=!0,this[rYe].push({opts:t,handler:r}),this[tYe]++),!this[HZ]}[kJn](t){return t.on("drain",this[OCr]).on("connect",this[TJn]).on("disconnect",this[RJn]).on("connectionError",this[NJn]),this[rV].push(t),this[HZ]&&process.nextTick(()=>{this[HZ]&&this[OCr](t[Lea],[this,t])}),this}[xJn](t){t.close(()=>{let r=this[rV].indexOf(t);r!==-1&&this[rV].splice(r,1)}),this[HZ]=this[rV].some(r=>!r[HZ]&&r.closed!==!0&&r.destroyed!==!0)}};GJn.exports={PoolBase:MCr,kClients:rV,kNeedDrain:HZ,kAddClient:kJn,kRemoveClient:xJn,kGetDispatcher:PCr}});var cwe=H((siu,VJn)=>{"use strict";var{PoolBase:Mea,kClients:FJn,kNeedDrain:Hea,kAddClient:Yea,kGetDispatcher:Qea}=HCr(),Xea=eYe(),{InvalidArgumentError:YCr}=qb(),QCr=e_(),{kUrl:ZJn,kInterceptors:Jea}=VE(),Uea=XHe(),XCr=Symbol("options"),JCr=Symbol("connections"),LJn=Symbol("factory");function Kea(e,t){return new Xea(e,t)}var UCr=class extends Mea{constructor(t,{connections:r,factory:n=Kea,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new YCr("invalid connections");if(typeof n!="function")throw new YCr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new YCr("connect must be a function or an object");typeof a!="function"&&(a=Uea({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...QCr.nodeHasAutoSelectFamily&&I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[Jea]=E.interceptors&&E.interceptors.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[JCr]=r||null,this[ZJn]=QCr.parseOrigin(t),this[XCr]={...QCr.deepClone(E),connect:a,allowH2:b},this[XCr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[LJn]=n}[Qea](){let t=this[FJn].find(r=>!r[Hea]);return t||((!this[JCr]||this[FJn].length{"use strict";var{BalancedPoolMissingUpstreamError:jea,InvalidArgumentError:zea}=qb(),{PoolBase:qea,kClients:YZ,kNeedDrain:nYe,kAddClient:$ea,kRemoveClient:eta,kGetDispatcher:tta}=HCr(),rta=cwe(),{kUrl:KCr,kInterceptors:nta}=VE(),{parseOrigin:WJn}=e_(),OJn=Symbol("factory"),qft=Symbol("options"),PJn=Symbol("kGreatestCommonDivisor"),ohe=Symbol("kCurrentWeight"),ahe=Symbol("kIndex"),xM=Symbol("kWeight"),$ft=Symbol("kMaxWeightPerServer"),eIt=Symbol("kErrorPenalty");function MJn(e,t){return t===0?e:MJn(t,e%t)}function ita(e,t){return new rta(e,t)}var jCr=class extends qea{constructor(t=[],{factory:r=ita,...n}={}){if(super(),this[qft]=n,this[ahe]=-1,this[ohe]=0,this[$ft]=this[qft].maxWeightPerServer||100,this[eIt]=this[qft].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new zea("factory must be a function.");this[nta]=n.interceptors&&n.interceptors.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[OJn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=WJn(t).origin;if(this[YZ].find(a=>a[KCr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[OJn](r,Object.assign({},this[qft]));this[$ea](n),n.on("connect",()=>{n[xM]=Math.min(this[$ft],n[xM]+this[eIt])}),n.on("connectionError",()=>{n[xM]=Math.max(1,n[xM]-this[eIt]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[xM]=Math.max(1,n[xM]-this[eIt]),this._updateBalancedPoolStats())});for(let a of this[YZ])a[xM]=this[$ft];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[PJn]=this[YZ].map(t=>t[xM]).reduce(MJn,0)}removeUpstream(t){let r=WJn(t).origin,n=this[YZ].find(a=>a[KCr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[eta](n),this}get upstreams(){return this[YZ].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[KCr].origin)}[tta](){if(this[YZ].length===0)throw new jea;if(!this[YZ].find(o=>!o[nYe]&&o.closed!==!0&&o.destroyed!==!0)||this[YZ].map(o=>o[nYe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[YZ].findIndex(o=>!o[nYe]);for(;n++this[YZ][a][xM]&&!o[nYe]&&(a=this[ahe]),this[ahe]===0&&(this[ohe]=this[ohe]-this[PJn],this[ohe]<=0&&(this[ohe]=this[$ft])),o[xM]>=this[ohe]&&!o[nYe])return o}return this[ohe]=this[YZ][a][xM],this[ahe]=a,this[YZ][a]}};HJn.exports=jCr});var zCr=H((aiu,JJn)=>{"use strict";var{kConnected:QJn,kSize:XJn}=VE(),tIt=class{constructor(t){this.value=t}deref(){return this.value[QJn]===0&&this.value[XJn]===0?void 0:this.value}},rIt=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[QJn]===0&&t[XJn]===0&&this.finalizer(r)})}};JJn.exports=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:tIt,FinalizationRegistry:rIt}:{WeakRef:global.WeakRef||tIt,FinalizationRegistry:global.FinalizationRegistry||rIt}}});var iYe=H((ciu,tUn)=>{"use strict";var{InvalidArgumentError:nIt}=qb(),{kClients:Aae,kRunning:UJn,kClose:sta,kDestroy:ota,kDispatch:ata,kInterceptors:cta}=VE(),lta=QHe(),uta=cwe(),gta=eYe(),Ata=e_(),dta=Pft(),{WeakRef:pta,FinalizationRegistry:fta}=zCr()(),KJn=Symbol("onConnect"),jJn=Symbol("onDisconnect"),zJn=Symbol("onConnectionError"),Ita=Symbol("maxRedirections"),qJn=Symbol("onDrain"),$Jn=Symbol("factory"),eUn=Symbol("finalizer"),qCr=Symbol("options");function hta(e,t){return t&&t.connections===1?new gta(e,t):new uta(e,t)}var $Cr=class extends lta{constructor({factory:t=hta,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new nIt("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new nIt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new nIt("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[cta]=a.interceptors&&a.interceptors.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[dta({maxRedirections:r})],this[qCr]={...Ata.deepClone(a),connect:n},this[qCr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[Ita]=r,this[$Jn]=t,this[Aae]=new Map,this[eUn]=new fta(l=>{let A=this[Aae].get(l);A!==void 0&&A.deref()===void 0&&this[Aae].delete(l)});let o=this;this[qJn]=(l,A)=>{o.emit("drain",l,[o,...A])},this[KJn]=(l,A)=>{o.emit("connect",l,[o,...A])},this[jJn]=(l,A,f)=>{o.emit("disconnect",l,[o,...A],f)},this[zJn]=(l,A,f)=>{o.emit("connectionError",l,[o,...A],f)}}get[UJn](){let t=0;for(let r of this[Aae].values()){let n=r.deref();n&&(t+=n[UJn])}return t}[ata](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new nIt("opts.origin must be a non-empty string or URL.");let a=this[Aae].get(n),o=a?a.deref():null;return o||(o=this[$Jn](t.origin,this[qCr]).on("drain",this[qJn]).on("connect",this[KJn]).on("disconnect",this[jJn]).on("connectionError",this[zJn]),this[Aae].set(n,new pta(o)),this[eUn].register(o,n)),o.dispatch(t,r)}async[sta](){let t=[];for(let r of this[Aae].values()){let n=r.deref();n&&t.push(n.close())}await Promise.all(t)}async[ota](t){let r=[];for(let n of this[Aae].values()){let a=n.deref();a&&r.push(a.destroy(t))}await Promise.all(r)}};tUn.exports=$Cr});var uUn=H((uiu,lUn)=>{"use strict";var sUn=Et("assert"),{Readable:mta}=Et("stream"),{RequestAbortedError:oUn,NotSupportedError:Cta,InvalidArgumentError:_ta}=qb(),oIt=e_(),{ReadableStreamFrom:yta,toUSVString:bta}=e_(),e_r,tP=Symbol("kConsume"),iIt=Symbol("kReading"),dae=Symbol("kBody"),rUn=Symbol("abort"),aUn=Symbol("kContentType"),nUn=()=>{};lUn.exports=class extends mta{constructor({resume:t,abort:r,contentType:n="",highWaterMark:a=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:a}),this._readableState.dataEmitted=!1,this[rUn]=r,this[tP]=null,this[dae]=null,this[aUn]=n,this[iIt]=!1}destroy(t){return this.destroyed?this:(!t&&!this._readableState.endEmitted&&(t=new oUn),t&&this[rUn](),super.destroy(t))}emit(t,...r){return t==="data"?this._readableState.dataEmitted=!0:t==="error"&&(this._readableState.errorEmitted=!0),super.emit(t,...r)}on(t,...r){return(t==="data"||t==="readable")&&(this[iIt]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[iIt]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[tP]&&t!==null&&this.readableLength===0?(cUn(this[tP],t),this[iIt]?super.push(t):!0):super.push(t)}async text(){return sIt(this,"text")}async json(){return sIt(this,"json")}async blob(){return sIt(this,"blob")}async arrayBuffer(){return sIt(this,"arrayBuffer")}async formData(){throw new Cta}get bodyUsed(){return oIt.isDisturbed(this)}get body(){return this[dae]||(this[dae]=yta(this),this[tP]&&(this[dae].getReader(),sUn(this[dae].locked))),this[dae]}dump(t){let r=t&&Number.isFinite(t.limit)?t.limit:262144,n=t&&t.signal;if(n)try{if(typeof n!="object"||!("aborted"in n))throw new _ta("signal must be an AbortSignal");oIt.throwIfAborted(n)}catch(a){return Promise.reject(a)}return this.closed?Promise.resolve(null):new Promise((a,o)=>{let l=n?oIt.addAbortListener(n,()=>{this.destroy()}):nUn;this.on("close",function(){l(),n&&n.aborted?o(n.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):a(null)}).on("error",nUn).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Eta(e){return e[dae]&&e[dae].locked===!0||e[tP]}function Sta(e){return oIt.isDisturbed(e)||Eta(e)}async function sIt(e,t){if(Sta(e))throw new TypeError("unusable");return sUn(!e[tP]),new Promise((r,n)=>{e[tP]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){t_r(this[tP],a)}).on("close",function(){this[tP].body!==null&&t_r(this[tP],new oUn)}),process.nextTick(vta,e[tP])})}function vta(e){if(e.body===null)return;let{_readableState:t}=e.stream;for(let r of t.buffer)cUn(e,r);for(t.endEmitted?iUn(this[tP]):e.stream.on("end",function(){iUn(this[tP])}),e.stream.resume();e.stream.read()!=null;);}function iUn(e){let{type:t,body:r,resolve:n,stream:a,length:o}=e;try{if(t==="text")n(bta(Buffer.concat(r)));else if(t==="json")n(JSON.parse(Buffer.concat(r)));else if(t==="arrayBuffer"){let l=new Uint8Array(o),A=0;for(let f of r)l.set(f,A),A+=f.byteLength;n(l.buffer)}else t==="blob"&&(e_r||(e_r=Et("buffer").Blob),n(new e_r(r,{type:a[aUn]})));t_r(e)}catch(l){a.destroy(l)}}function cUn(e,t){e.length+=t.length,e.body.push(t)}function t_r(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}});var r_r=H((giu,AUn)=>{var Bta=Et("assert"),{ResponseStatusCodeError:aIt}=qb(),{toUSVString:gUn}=e_();async function wta({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){Bta(t);let l=[],A=0;for await(let f of t)if(l.push(f),A+=f.length,A>128*1024){l=null;break}if(n===204||!r||!l){process.nextTick(e,new aIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o));return}try{if(r.startsWith("application/json")){let f=JSON.parse(gUn(Buffer.concat(l)));process.nextTick(e,new aIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}if(r.startsWith("text/")){let f=gUn(Buffer.concat(l));process.nextTick(e,new aIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}}catch{}process.nextTick(e,new aIt(`Response status code ${n}${a?`: ${a}`:""}`,n,o))}AUn.exports={getResolveErrorBodyCallback:wta}});var uwe=H((Aiu,pUn)=>{var{addAbortListener:Tta}=e_(),{RequestAbortedError:Rta}=qb(),lwe=Symbol("kListener"),pae=Symbol("kSignal");function dUn(e){e.abort?e.abort():e.onError(new Rta)}function Nta(e,t){if(e[pae]=null,e[lwe]=null,!!t){if(t.aborted){dUn(e);return}e[pae]=t,e[lwe]=()=>{dUn(e)},Tta(e[pae],e[lwe])}}function Dta(e){e[pae]&&("removeEventListener"in e[pae]?e[pae].removeEventListener("abort",e[lwe]):e[pae].removeListener("abort",e[lwe]),e[pae]=null,e[lwe]=null)}pUn.exports={addSignal:Nta,removeSignal:Dta}});var hUn=H((diu,n_r)=>{"use strict";var kta=uUn(),{InvalidArgumentError:gwe,RequestAbortedError:xta}=qb(),F8=e_(),{getResolveErrorBodyCallback:Gta}=r_r(),{AsyncResource:Fta}=Et("async_hooks"),{addSignal:Zta,removeSignal:fUn}=uwe(),cIt=class extends Fta{constructor(t,r){if(!t||typeof t!="object")throw new gwe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new gwe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new gwe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new gwe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new gwe("invalid method");if(A&&typeof A!="function")throw new gwe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw F8.isStream(l)&&F8.destroy(l.on("error",F8.nop),b),b}this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,F8.isStream(l)&&l.on("error",b=>{this.onError(b)}),Zta(this,n)}onConnect(t,r){if(!this.callback)throw new xta;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?F8.parseRawHeaders(r):F8.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let N=(I==="raw"?F8.parseHeaders(r):b)["content-type"],B=new kta({resume:n,abort:A,contentType:N,highWaterMark:C});this.callback=null,this.res=B,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(Gta,null,{callback:o,body:B,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:B,context:f}))}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;fUn(this),F8.parseHeaders(t,this.trailers),r.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;fUn(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{F8.destroy(r,t)})),a&&(this.body=null,F8.destroy(a,t))}};function IUn(e,t){if(t===void 0)return new Promise((r,n)=>{IUn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new cIt(e,t))}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}n_r.exports=IUn;n_r.exports.RequestHandler=cIt});var yUn=H((piu,_Un)=>{"use strict";var{finished:Lta,PassThrough:Vta}=Et("stream"),{InvalidArgumentError:Awe,InvalidReturnValueError:Wta,RequestAbortedError:Ota}=qb(),PX=e_(),{getResolveErrorBodyCallback:Pta}=r_r(),{AsyncResource:Mta}=Et("async_hooks"),{addSignal:Hta,removeSignal:mUn}=uwe(),i_r=class extends Mta{constructor(t,r,n){if(!t||typeof t!="object")throw new Awe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new Awe("invalid callback");if(typeof r!="function")throw new Awe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new Awe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new Awe("invalid method");if(f&&typeof f!="function")throw new Awe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw PX.isStream(A)&&PX.destroy(A.on("error",PX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,PX.isStream(A)&&A.on("error",b=>{this.onError(b)}),Hta(this,a)}onConnect(t,r){if(!this.callback)throw new Ota;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?PX.parseRawHeaders(r):PX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?PX.parseHeaders(r):C)["content-type"];b=new Vta,this.callback=null,this.runInAsyncScope(Pta,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new Wta("expected Writable");Lta(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:J,abort:ae}=this;this.res=null,(N||!F.readable)&&PX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:J}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState&&b._writableState.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;mUn(this),r&&(this.trailers=PX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;mUn(this),this.factory=null,r?(this.res=null,PX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,PX.destroy(o,t))}};function CUn(e,t,r){if(r===void 0)return new Promise((n,a)=>{CUn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new i_r(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e&&e.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}_Un.exports=CUn});var SUn=H((fiu,EUn)=>{"use strict";var{Readable:bUn,Duplex:Yta,PassThrough:Qta}=Et("stream"),{InvalidArgumentError:sYe,InvalidReturnValueError:Xta,RequestAbortedError:lIt}=qb(),GM=e_(),{AsyncResource:Jta}=Et("async_hooks"),{addSignal:Uta,removeSignal:Kta}=uwe(),jta=Et("assert"),dwe=Symbol("resume"),s_r=class extends bUn{constructor(){super({autoDestroy:!0}),this[dwe]=null}_read(){let{[dwe]:t}=this;t&&(this[dwe]=null,t())}_destroy(t,r){this._read(),r(t)}},o_r=class extends bUn{constructor(t){super({autoDestroy:!0}),this[dwe]=t}_read(){this[dwe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new lIt),r(t)}},a_r=class extends Jta{constructor(t,r){if(!t||typeof t!="object")throw new sYe("invalid opts");if(typeof r!="function")throw new sYe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new sYe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new sYe("invalid method");if(l&&typeof l!="function")throw new sYe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new s_r().on("error",GM.nop),this.ret=new Yta({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f&&f.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[dwe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new lIt),B&&f&&B(),GM.destroy(C,f),GM.destroy(b,f),GM.destroy(E,f),Kta(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,Uta(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(jta(!a,"pipeline cannot be retried"),n.destroyed)throw new lIt;this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?GM.parseRawHeaders(r):GM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new o_r(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?GM.parseRawHeaders(r):GM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",GM.nop),f}if(!A||typeof A.on!="function")throw new Xta("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;GM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||GM.destroy(f,new lIt)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,GM.destroy(r,t)}};function zta(e,t){try{let r=new a_r(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new Qta().destroy(r)}}EUn.exports=zta});var RUn=H((Iiu,TUn)=>{"use strict";var{InvalidArgumentError:c_r,RequestAbortedError:qta,SocketError:$ta}=qb(),{AsyncResource:era}=Et("async_hooks"),vUn=e_(),{addSignal:tra,removeSignal:BUn}=uwe(),rra=Et("assert"),l_r=class extends era{constructor(t,r){if(!t||typeof t!="object")throw new c_r("invalid opts");if(typeof r!="function")throw new c_r("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new c_r("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,tra(this,n)}onConnect(t,r){if(!this.callback)throw new qta;this.abort=t,this.context=null}onHeaders(){throw new $ta("bad upgrade",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;rra.strictEqual(t,101),BUn(this),this.callback=null;let A=this.responseHeaders==="raw"?vUn.parseRawHeaders(r):vUn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;BUn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function wUn(e,t){if(t===void 0)return new Promise((r,n)=>{wUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new l_r(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}TUn.exports=wUn});var GUn=H((hiu,xUn)=>{"use strict";var{AsyncResource:nra}=Et("async_hooks"),{InvalidArgumentError:u_r,RequestAbortedError:ira,SocketError:sra}=qb(),NUn=e_(),{addSignal:ora,removeSignal:DUn}=uwe(),g_r=class extends nra{constructor(t,r){if(!t||typeof t!="object")throw new u_r("invalid opts");if(typeof r!="function")throw new u_r("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new u_r("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,ora(this,n)}onConnect(t,r){if(!this.callback)throw new ira;this.abort=t,this.context=r}onHeaders(){throw new sra("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;DUn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?NUn.parseRawHeaders(r):NUn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;DUn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function kUn(e,t){if(t===void 0)return new Promise((r,n)=>{kUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new g_r(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}xUn.exports=kUn});var FUn=H((miu,pwe)=>{"use strict";pwe.exports.request=hUn();pwe.exports.stream=yUn();pwe.exports.pipeline=SUn();pwe.exports.upgrade=RUn();pwe.exports.connect=GUn()});var d_r=H((Ciu,ZUn)=>{"use strict";var{UndiciError:ara}=qb(),A_r=class e extends ara{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};ZUn.exports={MockNotMatchedError:A_r}});var fwe=H((_iu,LUn)=>{"use strict";LUn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var oYe=H((yiu,KUn)=>{"use strict";var{MockNotMatchedError:che}=d_r(),{kDispatches:uIt,kMockAgent:cra,kOriginalDispatch:lra,kOrigin:ura,kGetNetConnect:gra}=fwe(),{buildURL:Ara,nop:dra}=e_(),{STATUS_CODES:pra}=Et("http"),{types:{isPromise:fra}}=Et("util");function U$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function WUn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function OUn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=OUn(t,r);if(!U$(n,a))return!1}return!0}function VUn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function Ira(e,{path:t,method:r,body:n,headers:a}){let o=U$(e.path,t),l=U$(e.method,r),A=typeof e.body<"u"?U$(e.body,n):!0,f=MUn(e,a);return o&&l&&A&&f}function HUn(e){return Buffer.isBuffer(e)?e:typeof e=="object"?JSON.stringify(e):e.toString()}function YUn(e,t){let r=t.query?Ara(t.path,t.query):t.path,n=typeof r=="string"?VUn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>U$(VUn(o),n));if(a.length===0)throw new che(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>U$(o,t.method)),a.length===0)throw new che(`Mock dispatch not matched for method '${t.method}'`);if(a=a.filter(({body:o})=>typeof o<"u"?U$(o,t.body):!0),a.length===0)throw new che(`Mock dispatch not matched for body '${t.body}'`);if(a=a.filter(o=>MUn(o,t.headers)),a.length===0)throw new che(`Mock dispatch not matched for headers '${typeof t.headers=="object"?JSON.stringify(t.headers):t.headers}'`);return a[0]}function hra(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function p_r(e,t){let r=e.findIndex(n=>n.consumed?Ira(n,t):!1);r!==-1&&e.splice(r,1)}function QUn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function f_r(e){return Object.entries(e).reduce((t,[r,n])=>[...t,Buffer.from(`${r}`),Array.isArray(n)?n.map(a=>Buffer.from(`${a}`)):Buffer.from(`${n}`)],[])}function XUn(e){return pra[e]||"unknown"}async function mra(e){let t=[];for await(let r of e)t.push(r);return Buffer.concat(t).toString("utf8")}function JUn(e,t){let r=QUn(e),n=YUn(this[uIt],r);n.timesInvoked++,n.data.callback&&(n.data={...n.data,...n.data.callback(e)});let{data:{statusCode:a,data:o,headers:l,trailers:A,error:f},delay:I,persist:C}=n,{timesInvoked:b,times:E}=n;if(n.consumed=!C&&b>=E,n.pending=b0?setTimeout(()=>{N(this[uIt])},I):N(this[uIt]);function N(F,Q=o){let J=Array.isArray(e.headers)?PUn(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:J}):Q;if(fra(ae)){ae.then(ue=>N(F,ue));return}let ne=HUn(ae),ce=f_r(l),fe=f_r(A);t.abort=dra,t.onHeaders(a,ce,B,XUn(a)),t.onData(Buffer.from(ne)),t.onComplete(fe),p_r(F,r)}function B(){}return!0}function Cra(){let e=this[cra],t=this[ura],r=this[lra];return function(a,o){if(e.isMockActive)try{JUn.call(this,a,o)}catch(l){if(l instanceof che){let A=e[gra]();if(A===!1)throw new che(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(UUn(A,t))r.call(this,a,o);else throw new che(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function UUn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>U$(n,r.host)))}function _ra(e){if(e){let{agent:t,...r}=e;return r}}KUn.exports={getResponseData:HUn,getMockDispatch:YUn,addMockDispatch:hra,deleteMockDispatch:p_r,buildKey:QUn,generateKeyValues:f_r,matchValue:U$,getResponse:mra,getStatusText:XUn,mockDispatch:JUn,buildMockDispatch:Cra,checkNetConnect:UUn,buildMockOptions:_ra,getHeaderByName:OUn}});var b_r=H((biu,y_r)=>{"use strict";var{getResponseData:yra,buildKey:bra,addMockDispatch:I_r}=oYe(),{kDispatches:gIt,kDispatchKey:AIt,kDefaultHeaders:h_r,kDefaultTrailers:m_r,kContentLength:C_r,kMockDispatch:dIt}=fwe(),{InvalidArgumentError:MX}=qb(),{buildURL:Era}=e_(),Iwe=class{constructor(t){this[dIt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new MX("waitInMs must be a valid integer > 0");return this[dIt].delay=t,this}persist(){return this[dIt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new MX("repeatTimes must be a valid integer > 0");return this[dIt].times=t,this}},__r=class{constructor(t,r){if(typeof t!="object")throw new MX("opts must be an object");if(typeof t.path>"u")throw new MX("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Era(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[AIt]=bra(t),this[gIt]=r,this[h_r]={},this[m_r]={},this[C_r]=!1}createMockScopeDispatchData(t,r,n={}){let a=yra(r),o=this[C_r]?{"content-length":a.length}:{},l={...this[h_r],...o,...n.headers},A={...this[m_r],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t,r,n){if(typeof t>"u")throw new MX("statusCode must be defined");if(typeof r>"u")throw new MX("data must be defined");if(typeof n!="object")throw new MX("responseOptions must be an object")}reply(t){if(typeof t=="function"){let A=I=>{let C=t(I);if(typeof C!="object")throw new MX("reply options callback must return an object");let{statusCode:b,data:E="",responseOptions:N={}}=C;return this.validateReplyParameters(b,E,N),{...this.createMockScopeDispatchData(b,E,N)}},f=I_r(this[gIt],this[AIt],A);return new Iwe(f)}let[r,n="",a={}]=[...arguments];this.validateReplyParameters(r,n,a);let o=this.createMockScopeDispatchData(r,n,a),l=I_r(this[gIt],this[AIt],o);return new Iwe(l)}replyWithError(t){if(typeof t>"u")throw new MX("error must be defined");let r=I_r(this[gIt],this[AIt],{error:t});return new Iwe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new MX("headers must be defined");return this[h_r]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new MX("trailers must be defined");return this[m_r]=t,this}replyContentLength(){return this[C_r]=!0,this}};y_r.exports.MockInterceptor=__r;y_r.exports.MockScope=Iwe});var v_r=H((Eiu,rKn)=>{"use strict";var{promisify:Sra}=Et("util"),vra=eYe(),{buildMockDispatch:Bra}=oYe(),{kDispatches:jUn,kMockAgent:zUn,kClose:qUn,kOriginalClose:$Un,kOrigin:eKn,kOriginalDispatch:wra,kConnected:E_r}=fwe(),{MockInterceptor:Tra}=b_r(),tKn=VE(),{InvalidArgumentError:Rra}=qb(),S_r=class extends vra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Rra("Argument opts.agent must implement Agent");this[zUn]=r.agent,this[eKn]=t,this[jUn]=[],this[E_r]=1,this[wra]=this.dispatch,this[$Un]=this.close.bind(this),this.dispatch=Bra.call(this),this.close=this[qUn]}get[tKn.kConnected](){return this[E_r]}intercept(t){return new Tra(t,this[jUn])}async[qUn](){await Sra(this[$Un])(),this[E_r]=0,this[zUn][tKn.kClients].delete(this[eKn])}};rKn.exports=S_r});var T_r=H((Siu,lKn)=>{"use strict";var{promisify:Nra}=Et("util"),Dra=cwe(),{buildMockDispatch:kra}=oYe(),{kDispatches:nKn,kMockAgent:iKn,kClose:sKn,kOriginalClose:oKn,kOrigin:aKn,kOriginalDispatch:xra,kConnected:B_r}=fwe(),{MockInterceptor:Gra}=b_r(),cKn=VE(),{InvalidArgumentError:Fra}=qb(),w_r=class extends Dra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Fra("Argument opts.agent must implement Agent");this[iKn]=r.agent,this[aKn]=t,this[nKn]=[],this[B_r]=1,this[xra]=this.dispatch,this[oKn]=this.close.bind(this),this.dispatch=kra.call(this),this.close=this[sKn]}get[cKn.kConnected](){return this[B_r]}intercept(t){return new Gra(t,this[nKn])}async[sKn](){await Nra(this[oKn])(),this[B_r]=0,this[iKn][cKn.kClients].delete(this[aKn])}};lKn.exports=w_r});var gKn=H((Biu,uKn)=>{"use strict";var Zra={pronoun:"it",is:"is",was:"was",this:"this"},Lra={pronoun:"they",is:"are",was:"were",this:"these"};uKn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?Zra:Lra,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var dKn=H((Tiu,AKn)=>{"use strict";var{Transform:Vra}=Et("stream"),{Console:Wra}=Et("console");AKn.exports=class{constructor({disableColors:t}={}){this.transform=new Vra({transform(r,n,a){a(null,r)}}),this.logger=new Wra({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?"\u2705":"\u274C",Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var hKn=H((Riu,IKn)=>{"use strict";var{kClients:lhe}=VE(),Ora=iYe(),{kAgent:R_r,kMockAgentSet:pIt,kMockAgentGet:pKn,kDispatches:N_r,kIsMockActive:fIt,kNetConnect:uhe,kGetNetConnect:Pra,kOptions:IIt,kFactory:hIt}=fwe(),Mra=v_r(),Hra=T_r(),{matchValue:Yra,buildMockOptions:Qra}=oYe(),{InvalidArgumentError:fKn,UndiciError:Xra}=qb(),Jra=Lft(),Ura=gKn(),Kra=dKn(),D_r=class{constructor(t){this.value=t}deref(){return this.value}},k_r=class extends Jra{constructor(t){if(super(t),this[uhe]=!0,this[fIt]=!0,t&&t.agent&&typeof t.agent.dispatch!="function")throw new fKn("Argument opts.agent must implement Agent");let r=t&&t.agent?t.agent:new Ora(t);this[R_r]=r,this[lhe]=r[lhe],this[IIt]=Qra(t)}get(t){let r=this[pKn](t);return r||(r=this[hIt](t),this[pIt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[R_r].dispatch(t,r)}async close(){await this[R_r].close(),this[lhe].clear()}deactivate(){this[fIt]=!1}activate(){this[fIt]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[uhe])?this[uhe].push(t):this[uhe]=[t];else if(typeof t>"u")this[uhe]=!0;else throw new fKn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[uhe]=!1}get isMockActive(){return this[fIt]}[pIt](t,r){this[lhe].set(t,new D_r(r))}[hIt](t){let r=Object.assign({agent:this},this[IIt]);return this[IIt]&&this[IIt].connections===1?new Mra(t,r):new Hra(t,r)}[pKn](t){let r=this[lhe].get(t);if(r)return r.deref();if(typeof t!="string"){let n=this[hIt]("http://localhost:9999");return this[pIt](t,n),n}for(let[n,a]of Array.from(this[lhe])){let o=a.deref();if(o&&typeof n!="string"&&Yra(n,t)){let l=this[hIt](t);return this[pIt](t,l),l[N_r]=o[N_r],l}}}[Pra](){return this[uhe]}pendingInterceptors(){let t=this[lhe];return Array.from(t.entries()).flatMap(([r,n])=>n.deref()[N_r].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new Kra}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new Ura("interceptor","interceptors").pluralize(r.length);throw new Xra(` ${n.count} ${n.noun} ${n.is} pending: ${t.format(r)} -`.trim())}};uKn.exports=k_r});var hKn=H((Pnu,IKn)=>{"use strict";var{kProxy:jra,kClose:zra,kDestroy:qra,kInterceptors:$ra}=LE(),{URL:AKn}=Et("url"),dKn=sYe(),ena=cwe(),tna=XHe(),{InvalidArgumentError:uYe,RequestAbortedError:rna}=zb(),pKn=JHe(),cYe=Symbol("proxy agent"),_It=Symbol("proxy client"),lYe=Symbol("proxy headers"),x_r=Symbol("request tls settings"),nna=Symbol("proxy tls settings"),fKn=Symbol("connect endpoint function");function ina(e){return e==="https:"?443:80}function sna(e){if(typeof e=="string"&&(e={uri:e}),!e||!e.uri)throw new uYe("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}function ona(e,t){return new ena(e,t)}var G_r=class extends tna{constructor(t){if(super(t),this[jra]=sna(t),this[cYe]=new dKn(t),this[$ra]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],typeof t=="string"&&(t={uri:t}),!t||!t.uri)throw new uYe("Proxy opts.uri is mandatory");let{clientFactory:r=ona}=t;if(typeof r!="function")throw new uYe("Proxy opts.clientFactory must be a function.");this[x_r]=t.requestTls,this[nna]=t.proxyTls,this[lYe]=t.headers||{};let n=new AKn(t.uri),{origin:a,port:o,host:l,username:A,password:f}=n;if(t.auth&&t.token)throw new uYe("opts.auth cannot be used in combination with opts.token");t.auth?this[lYe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[lYe]["proxy-authorization"]=t.token:A&&f&&(this[lYe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(A)}:${decodeURIComponent(f)}`).toString("base64")}`);let I=pKn({...t.proxyTls});this[fKn]=pKn({...t.requestTls}),this[_It]=r(n,{connect:I}),this[cYe]=new dKn({...t,connect:async(C,b)=>{let E=C.host;C.port||(E+=`:${ina(C.protocol)}`);try{let{socket:N,statusCode:B}=await this[_It].connect({origin:a,port:o,path:E,signal:C.signal,headers:{...this[lYe],host:l}});if(B!==200&&(N.on("error",()=>{}).destroy(),b(new rna(`Proxy response (${B}) !== 200 when HTTP Tunneling`))),C.protocol!=="https:"){b(null,N);return}let F;this[x_r]?F=this[x_r].servername:F=C.servername,this[fKn]({...C,servername:F,httpSocket:N},b)}catch(N){b(N)}}})}dispatch(t,r){let{host:n}=new AKn(t.origin),a=ana(t.headers);return cna(a),this[cYe].dispatch({...t,headers:{...a,host:n}},r)}async[zra](){await this[cYe].close(),await this[_It].close()}async[qra](){await this[cYe].destroy(),await this[_It].destroy()}};function ana(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new uYe("Proxy-Authorization should be sent in ProxyAgent constructor")}IKn.exports=G_r});var bKn=H((Mnu,yKn)=>{var uhe=Et("assert"),{kRetryHandlerDefaultRetry:mKn}=LE(),{RequestRetryError:yIt}=zb(),{isDisturbed:CKn,parseHeaders:lna,parseRangeHeader:_Kn}=$C();function una(e){let t=Date.now();return new Date(e).getTime()-t}var F_r=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts=a,this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[mKn],retryAfter:E??!0,maxTimeout:A??30*1e3,timeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[mKn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,timeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:J,currentTimeout:ae}=r;if(ae=ae!=null&&ae>0?ae:b,l&&l!=="UND_ERR_REQ_RETRY"&&l!=="UND_ERR_SOCKET"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(J>C){a(t);return}let ne=A!=null&&A["retry-after"];ne&&(ne=Number(ne),ne=isNaN(ne)?una(ne):ne*1e3);let ce=ne>0?Math.min(ne,E):Math.min(ae*N**J,E);r.currentTimeout=ce,setTimeout(()=>a(null),ce)}onHeaders(t,r,n,a){let o=lna(r);if(this.retryCount+=1,t>=300)return this.abort(new yIt("Request failed",t,{headers:o,count:this.retryCount})),!1;if(this.resume!=null){if(this.resume=null,t!==206)return!0;let A=_Kn(o["content-range"]);if(!A)return this.abort(new yIt("Content-Range mismatch",t,{headers:o,count:this.retryCount})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new yIt("ETag mismatch",t,{headers:o,count:this.retryCount})),!1;let{start:f,size:I,end:C=I}=A;return uhe(this.start===f,"content-range mismatch"),uhe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=_Kn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;uhe(f!=null&&Number.isFinite(f)&&this.start!==f,"content-range mismatch"),uhe(Number.isFinite(f)),uhe(C!=null&&Number.isFinite(C)&&this.end!==C,"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return uhe(Number.isFinite(this.start)),uhe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.handler.onHeaders(t,r,n,a)}let l=new yIt("Request failed",t,{headers:o,count:this.retryCount});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||CKn(this.opts.body))return this.handler.onError(t);this.retryOpts.retry(t,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||CKn(this.opts.body))return this.handler.onError(n);this.start!==0&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};yKn.exports=F_r});var hwe=H((Hnu,BKn)=>{"use strict";var EKn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:gna}=zb(),Ana=sYe();vKn()===void 0&&SKn(new Ana);function SKn(e){if(!e||typeof e.dispatch!="function")throw new gna("Argument agent must implement Agent");Object.defineProperty(globalThis,EKn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function vKn(){return globalThis[EKn]}BKn.exports={setGlobalDispatcher:SKn,getGlobalDispatcher:vKn}});var TKn=H((Qnu,wKn)=>{"use strict";wKn.exports=class{constructor(t){this.handler=t}onConnect(...t){return this.handler.onConnect(...t)}onError(...t){return this.handler.onError(...t)}onUpgrade(...t){return this.handler.onUpgrade(...t)}onHeaders(...t){return this.handler.onHeaders(...t)}onData(...t){return this.handler.onData(...t)}onComplete(...t){return this.handler.onComplete(...t)}onBodySent(...t){return this.handler.onBodySent(...t)}}});var ghe=H((Xnu,xKn)=>{"use strict";var{kHeadersList:nV,kConstruct:dna}=LE(),{kGuard:Z8}=W$(),{kEnumerableProperty:F8}=$C(),{makeIterator:mwe,isValidHeaderName:gYe,isValidHeaderValue:NKn}=DM(),{webidl:lm}=WZ(),pna=Et("assert"),rV=Symbol("headers map"),Zk=Symbol("headers map sorted");function RKn(e){return e===10||e===13||e===9||e===32}function DKn(e){let t=0,r=e.length;for(;r>t&&RKn(e.charCodeAt(r-1));)--r;for(;r>t&&RKn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function kKn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function Z_r(e,t,r){if(r=DKn(r),gYe(t)){if(!NKn(r))throw lm.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw lm.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(e[Z8]==="immutable")throw new TypeError("immutable");return e[Z8],e[nV].append(t,r)}var bIt=class e{cookies=null;constructor(t){t instanceof e?(this[rV]=new Map(t[rV]),this[Zk]=t[Zk],this.cookies=t.cookies===null?null:[...t.cookies]):(this[rV]=new Map(t),this[Zk]=null)}contains(t){return t=t.toLowerCase(),this[rV].has(t)}clear(){this[rV].clear(),this[Zk]=null,this.cookies=null}append(t,r){this[Zk]=null;let n=t.toLowerCase(),a=this[rV].get(n);if(a){let o=n==="cookie"?"; ":", ";this[rV].set(n,{name:a.name,value:`${a.value}${o}${r}`})}else this[rV].set(n,{name:t,value:r});n==="set-cookie"&&(this.cookies??=[],this.cookies.push(r))}set(t,r){this[Zk]=null;let n=t.toLowerCase();n==="set-cookie"&&(this.cookies=[r]),this[rV].set(n,{name:t,value:r})}delete(t){this[Zk]=null,t=t.toLowerCase(),t==="set-cookie"&&(this.cookies=null),this[rV].delete(t)}get(t){let r=this[rV].get(t.toLowerCase());return r===void 0?null:r.value}*[Symbol.iterator](){for(let[t,{value:r}]of this[rV])yield[t,r]}get entries(){let t={};if(this[rV].size)for(let{name:r,value:n}of this[rV].values())t[r]=n;return t}},Cwe=class e{constructor(t=void 0){t!==dna&&(this[nV]=new bIt,this[Z8]="none",t!==void 0&&(t=lm.converters.HeadersInit(t),kKn(this,t)))}append(t,r){return lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,2,{header:"Headers.append"}),t=lm.converters.ByteString(t),r=lm.converters.ByteString(r),Z_r(this,t,r)}delete(t){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=lm.converters.ByteString(t),!gYe(t))throw lm.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this[Z8]==="immutable")throw new TypeError("immutable");this[Z8],this[nV].contains(t)&&this[nV].delete(t)}get(t){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=lm.converters.ByteString(t),!gYe(t))throw lm.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[nV].get(t)}has(t){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=lm.converters.ByteString(t),!gYe(t))throw lm.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[nV].contains(t)}set(t,r){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=lm.converters.ByteString(t),r=lm.converters.ByteString(r),r=DKn(r),gYe(t)){if(!NKn(r))throw lm.errors.invalidArgument({prefix:"Headers.set",value:r,type:"header value"})}else throw lm.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(this[Z8]==="immutable")throw new TypeError("immutable");this[Z8],this[nV].set(t,r)}getSetCookie(){lm.brandCheck(this,e);let t=this[nV].cookies;return t?[...t]:[]}get[Zk](){if(this[nV][Zk])return this[nV][Zk];let t=[],r=[...this[nV]].sort((a,o)=>a[0]t,"Headers","key")}return mwe(()=>[...this[Zk].values()],"Headers","key")}values(){if(lm.brandCheck(this,e),this[Z8]==="immutable"){let t=this[Zk];return mwe(()=>t,"Headers","value")}return mwe(()=>[...this[Zk].values()],"Headers","value")}entries(){if(lm.brandCheck(this,e),this[Z8]==="immutable"){let t=this[Zk];return mwe(()=>t,"Headers","key+value")}return mwe(()=>[...this[Zk].values()],"Headers","key+value")}forEach(t,r=globalThis){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}[Symbol.for("nodejs.util.inspect.custom")](){return lm.brandCheck(this,e),this[nV]}};Cwe.prototype[Symbol.iterator]=Cwe.prototype.entries;Object.defineProperties(Cwe.prototype,{append:F8,delete:F8,get:F8,has:F8,set:F8,getSetCookie:F8,keys:F8,values:F8,entries:F8,forEach:F8,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0}});lm.converters.HeadersInit=function(e){if(lm.util.Type(e)==="Object")return e[Symbol.iterator]?lm.converters["sequence>"](e):lm.converters["record"](e);throw lm.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};xKn.exports={fill:kKn,Headers:Cwe,HeadersList:bIt}});var BIt=H((Jnu,PKn)=>{"use strict";var{Headers:fna,HeadersList:GKn,fill:Ina}=ghe(),{extractBody:FKn,cloneBody:hna,mixinBody:mna}=HHe(),W_r=$C(),{kEnumerableProperty:tP}=W_r,{isValidReasonPhrase:Cna,isCancelled:_na,isAborted:yna,isBlobLike:bna,serializeJavascriptValueToJSONString:Ena,isErrorLike:Sna,isomorphicEncode:vna}=DM(),{redirectStatusSet:Bna,nullBodyStatus:wna,DOMException:ZKn}=oae(),{kState:T2,kHeaders:iD,kGuard:_we,kRealm:eP}=W$(),{webidl:Yh}=WZ(),{FormData:Tna}=Zft(),{getGlobalOrigin:Rna}=KBe(),{URLSerializer:LKn}=VX(),{kHeadersList:L_r,kConstruct:Nna}=LE(),O_r=Et("assert"),{types:V_r}=Et("util"),WKn=globalThis.ReadableStream||Et("stream/web").ReadableStream,Dna=new TextEncoder("utf-8"),ywe=class e{static error(){let t={settingsObject:{}},r=new e;return r[T2]=SIt(),r[eP]=t,r[iD][L_r]=r[T2].headersList,r[iD][_we]="immutable",r[iD][eP]=t,r}static json(t,r={}){Yh.argumentLengthCheck(arguments,1,{header:"Response.json"}),r!==null&&(r=Yh.converters.ResponseInit(r));let n=Dna.encode(Ena(t)),a=FKn(n),o={settingsObject:{}},l=new e;return l[eP]=o,l[iD][_we]="response",l[iD][eP]=o,VKn(l,r,{body:a[0],type:"application/json"}),l}static redirect(t,r=302){let n={settingsObject:{}};Yh.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),t=Yh.converters.USVString(t),r=Yh.converters["unsigned short"](r);let a;try{a=new URL(t,Rna())}catch(A){throw Object.assign(new TypeError("Failed to parse URL from "+t),{cause:A})}if(!Bna.has(r))throw new RangeError("Invalid status code "+r);let o=new e;o[eP]=n,o[iD][_we]="immutable",o[iD][eP]=n,o[T2].status=r;let l=vna(LKn(a));return o[T2].headersList.append("location",l),o}constructor(t=null,r={}){t!==null&&(t=Yh.converters.BodyInit(t)),r=Yh.converters.ResponseInit(r),this[eP]={settingsObject:{}},this[T2]=vIt({}),this[iD]=new fna(Nna),this[iD][_we]="response",this[iD][L_r]=this[T2].headersList,this[iD][eP]=this[eP];let n=null;if(t!=null){let[a,o]=FKn(t);n={body:a,type:o}}VKn(this,r,n)}get type(){return Yh.brandCheck(this,e),this[T2].type}get url(){Yh.brandCheck(this,e);let t=this[T2].urlList,r=t[t.length-1]??null;return r===null?"":LKn(r,!0)}get redirected(){return Yh.brandCheck(this,e),this[T2].urlList.length>1}get status(){return Yh.brandCheck(this,e),this[T2].status}get ok(){return Yh.brandCheck(this,e),this[T2].status>=200&&this[T2].status<=299}get statusText(){return Yh.brandCheck(this,e),this[T2].statusText}get headers(){return Yh.brandCheck(this,e),this[iD]}get body(){return Yh.brandCheck(this,e),this[T2].body?this[T2].body.stream:null}get bodyUsed(){return Yh.brandCheck(this,e),!!this[T2].body&&W_r.isDisturbed(this[T2].body.stream)}clone(){if(Yh.brandCheck(this,e),this.bodyUsed||this.body&&this.body.locked)throw Yh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=P_r(this[T2]),r=new e;return r[T2]=t,r[eP]=this[eP],r[iD][L_r]=t.headersList,r[iD][_we]=this[iD][_we],r[iD][eP]=this[iD][eP],r}};mna(ywe);Object.defineProperties(ywe.prototype,{type:tP,url:tP,status:tP,ok:tP,redirected:tP,statusText:tP,headers:tP,clone:tP,body:tP,bodyUsed:tP,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(ywe,{json:tP,redirect:tP,error:tP});function P_r(e){if(e.internalResponse)return OKn(P_r(e.internalResponse),e.type);let t=vIt({...e,body:null});return e.body!=null&&(t.body=hna(e.body)),t}function vIt(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new GKn(e.headersList):new GKn,urlList:e.urlList?[...e.urlList]:[]}}function SIt(e){let t=Sna(e);return vIt({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function EIt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return O_r(!(n in t)),r[n]=a,!0}})}function OKn(e,t){if(t==="basic")return EIt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return EIt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return EIt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return EIt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});O_r(!1)}function kna(e,t=null){return O_r(_na(e)),yna(e)?SIt(Object.assign(new ZKn("The operation was aborted.","AbortError"),{cause:t})):SIt(Object.assign(new ZKn("Request was cancelled."),{cause:t}))}function VKn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!Cna(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[T2].status=t.status),"statusText"in t&&t.statusText!=null&&(e[T2].statusText=t.statusText),"headers"in t&&t.headers!=null&&Ina(e[iD],t.headers),r){if(wna.includes(e.status))throw Yh.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[T2].body=r.body,r.type!=null&&!e[T2].headersList.contains("Content-Type")&&e[T2].headersList.append("content-type",r.type)}}Yh.converters.ReadableStream=Yh.interfaceConverter(WKn);Yh.converters.FormData=Yh.interfaceConverter(Tna);Yh.converters.URLSearchParams=Yh.interfaceConverter(URLSearchParams);Yh.converters.XMLHttpRequestBodyInit=function(e){return typeof e=="string"?Yh.converters.USVString(e):bna(e)?Yh.converters.Blob(e,{strict:!1}):V_r.isArrayBuffer(e)||V_r.isTypedArray(e)||V_r.isDataView(e)?Yh.converters.BufferSource(e):W_r.isFormDataLike(e)?Yh.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?Yh.converters.URLSearchParams(e):Yh.converters.DOMString(e)};Yh.converters.BodyInit=function(e){return e instanceof WKn?Yh.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:Yh.converters.XMLHttpRequestBodyInit(e)};Yh.converters.ResponseInit=Yh.dictionaryConverter([{key:"status",converter:Yh.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:Yh.converters.ByteString,defaultValue:""},{key:"headers",converter:Yh.converters.HeadersInit}]);PKn.exports={makeNetworkError:SIt,makeResponse:vIt,makeAppropriateNetworkError:kna,filterResponse:OKn,Response:ywe,cloneResponse:P_r}});var pYe=H((Unu,JKn)=>{"use strict";var{extractBody:xna,mixinBody:Gna,cloneBody:Fna}=HHe(),{Headers:MKn,fill:Zna,HeadersList:NIt}=ghe(),{FinalizationRegistry:Lna}=zCr()(),dYe=$C(),{isValidHTTPToken:Vna,sameOrigin:HKn,normalizeMethod:Wna,makePolicyContainer:Ona,normalizeMethodRecord:Pna}=DM(),{forbiddenMethodsSet:Mna,corsSafeListedMethodsSet:Hna,referrerPolicy:Yna,requestRedirect:Qna,requestMode:Xna,requestCredentials:Jna,requestCache:Una,requestDuplex:Kna}=oae(),{kEnumerableProperty:gT}=dYe,{kHeaders:BG,kSignal:AYe,kState:M1,kGuard:wIt,kRealm:rP}=W$(),{webidl:Lf}=WZ(),{getGlobalOrigin:jna}=KBe(),{URLSerializer:zna}=VX(),{kHeadersList:TIt,kConstruct:RIt}=LE(),qna=Et("assert"),{getMaxListeners:YKn,setMaxListeners:QKn,getEventListeners:$na,defaultMaxListeners:XKn}=Et("events"),M_r=globalThis.TransformStream,eia=Symbol("abortController"),tia=new Lna(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),Ahe=class e{constructor(t,r={}){if(t===RIt)return;Lf.argumentLengthCheck(arguments,1,{header:"Request constructor"}),t=Lf.converters.RequestInfo(t),r=Lf.converters.RequestInit(r),this[rP]={settingsObject:{baseUrl:jna(),get origin(){return this.baseUrl?.origin},policyContainer:Ona()}};let n=null,a=null,o=this[rP].settingsObject.baseUrl,l=null;if(typeof t=="string"){let Q;try{Q=new URL(t,o)}catch(J){throw new TypeError("Failed to parse URL from "+t,{cause:J})}if(Q.username||Q.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);n=DIt({urlList:[Q]}),a="cors"}else qna(t instanceof e),n=t[M1],l=t[AYe];let A=this[rP].settingsObject.origin,f="client";if(n.window?.constructor?.name==="EnvironmentSettingsObject"&&HKn(n.window,A)&&(f=n.window),r.window!=null)throw new TypeError(`'window' option '${f}' must be null`);"window"in r&&(f="no-window"),n=DIt({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:this[rP].settingsObject,window:f,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let I=Object.keys(r).length!==0;if(I&&(n.mode==="navigate"&&(n.mode="same-origin"),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin="client",n.referrer="client",n.referrerPolicy="",n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),r.referrer!==void 0){let Q=r.referrer;if(Q==="")n.referrer="no-referrer";else{let J;try{J=new URL(Q,o)}catch(ae){throw new TypeError(`Referrer "${Q}" is not a valid URL.`,{cause:ae})}J.protocol==="about:"&&J.hostname==="client"||A&&!HKn(J,this[rP].settingsObject.baseUrl)?n.referrer="client":n.referrer=J}}r.referrerPolicy!==void 0&&(n.referrerPolicy=r.referrerPolicy);let C;if(r.mode!==void 0?C=r.mode:C=a,C==="navigate")throw Lf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(C!=null&&(n.mode=C),r.credentials!==void 0&&(n.credentials=r.credentials),r.cache!==void 0&&(n.cache=r.cache),n.cache==="only-if-cached"&&n.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(n.redirect=r.redirect),r.integrity!=null&&(n.integrity=String(r.integrity)),r.keepalive!==void 0&&(n.keepalive=!!r.keepalive),r.method!==void 0){let Q=r.method;if(!Vna(Q))throw new TypeError(`'${Q}' is not a valid HTTP method.`);if(Mna.has(Q.toUpperCase()))throw new TypeError(`'${Q}' HTTP method is unsupported.`);Q=Pna[Q]??Wna(Q),n.method=Q}r.signal!==void 0&&(l=r.signal),this[M1]=n;let b=new AbortController;if(this[AYe]=b.signal,this[AYe][rP]=this[rP],l!=null){if(!l||typeof l.aborted!="boolean"||typeof l.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(l.aborted)b.abort(l.reason);else{this[eia]=b;let Q=new WeakRef(b),J=function(){let ae=Q.deref();ae!==void 0&&ae.abort(this.reason)};try{(typeof YKn=="function"&&YKn(l)===XKn||$na(l,"abort").length>=XKn)&&QKn(100,l)}catch{}dYe.addAbortListener(l,J),tia.register(b,{signal:l,abort:J})}}if(this[BG]=new MKn(RIt),this[BG][TIt]=n.headersList,this[BG][wIt]="request",this[BG][rP]=this[rP],C==="no-cors"){if(!Hna.has(n.method))throw new TypeError(`'${n.method} is unsupported in no-cors mode.`);this[BG][wIt]="request-no-cors"}if(I){let Q=this[BG][TIt],J=r.headers!==void 0?r.headers:new NIt(Q);if(Q.clear(),J instanceof NIt){for(let[ae,ne]of J)Q.append(ae,ne);Q.cookies=J.cookies}else Zna(this[BG],J)}let E=t instanceof e?t[M1].body:null;if((r.body!=null||E!=null)&&(n.method==="GET"||n.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let N=null;if(r.body!=null){let[Q,J]=xna(r.body,n.keepalive);N=Q,J&&!this[BG][TIt].contains("content-type")&&this[BG].append("content-type",J)}let B=N??E;if(B!=null&&B.source==null){if(N!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(n.mode!=="same-origin"&&n.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');n.useCORSPreflightFlag=!0}let F=B;if(N==null&&E!=null){if(dYe.isDisturbed(E.stream)||E.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");M_r||(M_r=Et("stream/web").TransformStream);let Q=new M_r;E.stream.pipeThrough(Q),F={source:E.source,length:E.length,stream:Q.readable}}this[M1].body=F}get method(){return Lf.brandCheck(this,e),this[M1].method}get url(){return Lf.brandCheck(this,e),zna(this[M1].url)}get headers(){return Lf.brandCheck(this,e),this[BG]}get destination(){return Lf.brandCheck(this,e),this[M1].destination}get referrer(){return Lf.brandCheck(this,e),this[M1].referrer==="no-referrer"?"":this[M1].referrer==="client"?"about:client":this[M1].referrer.toString()}get referrerPolicy(){return Lf.brandCheck(this,e),this[M1].referrerPolicy}get mode(){return Lf.brandCheck(this,e),this[M1].mode}get credentials(){return this[M1].credentials}get cache(){return Lf.brandCheck(this,e),this[M1].cache}get redirect(){return Lf.brandCheck(this,e),this[M1].redirect}get integrity(){return Lf.brandCheck(this,e),this[M1].integrity}get keepalive(){return Lf.brandCheck(this,e),this[M1].keepalive}get isReloadNavigation(){return Lf.brandCheck(this,e),this[M1].reloadNavigation}get isHistoryNavigation(){return Lf.brandCheck(this,e),this[M1].historyNavigation}get signal(){return Lf.brandCheck(this,e),this[AYe]}get body(){return Lf.brandCheck(this,e),this[M1].body?this[M1].body.stream:null}get bodyUsed(){return Lf.brandCheck(this,e),!!this[M1].body&&dYe.isDisturbed(this[M1].body.stream)}get duplex(){return Lf.brandCheck(this,e),"half"}clone(){if(Lf.brandCheck(this,e),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");let t=ria(this[M1]),r=new e(RIt);r[M1]=t,r[rP]=this[rP],r[BG]=new MKn(RIt),r[BG][TIt]=t.headersList,r[BG][wIt]=this[BG][wIt],r[BG][rP]=this[BG][rP];let n=new AbortController;return this.signal.aborted?n.abort(this.signal.reason):dYe.addAbortListener(this.signal,()=>{n.abort(this.signal.reason)}),r[AYe]=n.signal,r}};Gna(Ahe);function DIt(e){let t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new NIt(e.headersList):new NIt};return t.url=t.urlList[0],t}function ria(e){let t=DIt({...e,body:null});return e.body!=null&&(t.body=Fna(e.body)),t}Object.defineProperties(Ahe.prototype,{method:gT,url:gT,headers:gT,redirect:gT,clone:gT,signal:gT,duplex:gT,destination:gT,body:gT,bodyUsed:gT,isHistoryNavigation:gT,isReloadNavigation:gT,keepalive:gT,integrity:gT,cache:gT,credentials:gT,attribute:gT,referrerPolicy:gT,referrer:gT,mode:gT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Lf.converters.Request=Lf.interfaceConverter(Ahe);Lf.converters.RequestInfo=function(e){return typeof e=="string"?Lf.converters.USVString(e):e instanceof Ahe?Lf.converters.Request(e):Lf.converters.USVString(e)};Lf.converters.AbortSignal=Lf.interfaceConverter(AbortSignal);Lf.converters.RequestInit=Lf.dictionaryConverter([{key:"method",converter:Lf.converters.ByteString},{key:"headers",converter:Lf.converters.HeadersInit},{key:"body",converter:Lf.nullableConverter(Lf.converters.BodyInit)},{key:"referrer",converter:Lf.converters.USVString},{key:"referrerPolicy",converter:Lf.converters.DOMString,allowedValues:Yna},{key:"mode",converter:Lf.converters.DOMString,allowedValues:Xna},{key:"credentials",converter:Lf.converters.DOMString,allowedValues:Jna},{key:"cache",converter:Lf.converters.DOMString,allowedValues:Una},{key:"redirect",converter:Lf.converters.DOMString,allowedValues:Qna},{key:"integrity",converter:Lf.converters.DOMString},{key:"keepalive",converter:Lf.converters.boolean},{key:"signal",converter:Lf.nullableConverter(e=>Lf.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:Lf.converters.any},{key:"duplex",converter:Lf.converters.DOMString,allowedValues:Kna}]);JKn.exports={Request:Ahe,makeRequest:DIt}});var VIt=H((Knu,a8n)=>{"use strict";var{Response:nia,makeNetworkError:qb,makeAppropriateNetworkError:kIt,filterResponse:H_r,makeResponse:xIt}=BIt(),{Headers:UKn}=ghe(),{Request:iia,makeRequest:sia}=pYe(),fYe=Et("zlib"),{bytesMatch:oia,makePolicyContainer:aia,clonePolicyContainer:cia,requestBadPort:lia,TAOCheck:uia,appendRequestOriginHeader:gia,responseLocationURL:Aia,requestCurrentURL:L8,setRequestReferrerPolicyOnRedirect:dia,tryUpgradeRequestToAPotentiallyTrustworthyURL:pia,createOpaqueTimingInfo:q_r,appendFetchMetadata:fia,corsCheck:Iia,crossOriginResourcePolicyCheck:hia,determineRequestsReferrer:mia,coarsenedSharedCurrentTime:$_r,createDeferredPromise:Cia,isBlobLike:_ia,sameOrigin:K_r,isCancelled:Ewe,isAborted:KKn,isErrorLike:yia,fullyReadBody:$Kn,readableStreamClose:bia,isomorphicEncode:j_r,urlIsLocal:Eia,urlIsHttpHttpsScheme:e0r,urlHasHttpsScheme:Sia}=DM(),{kState:z_r,kHeaders:Y_r,kGuard:via,kRealm:jKn}=W$(),Swe=Et("assert"),{safelyExtractBody:GIt}=HHe(),{redirectStatusSet:e8n,nullBodyStatus:t8n,safeMethodsSet:Bia,requestBodyHeader:wia,subresourceSet:Tia,DOMException:FIt}=oae(),{kHeadersList:bwe}=LE(),Ria=Et("events"),{Readable:Nia,pipeline:Dia}=Et("stream"),{addAbortListener:kia,isErrored:xia,isReadable:ZIt,nodeMajor:zKn,nodeMinor:Gia}=$C(),{dataURLProcessor:Fia,serializeAMimeType:Zia}=VX(),{TransformStream:Lia}=Et("stream/web"),{getGlobalDispatcher:Via}=hwe(),{webidl:Wia}=WZ(),{STATUS_CODES:Oia}=Et("http"),Pia=["GET","HEAD"],Q_r,X_r=globalThis.ReadableStream,LIt=class extends Ria{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new FIt("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function Mia(e,t={}){Wia.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});let r=Cia(),n;try{n=new iia(e,t)}catch(E){return r.reject(E),r.promise}let a=n[z_r];if(n.signal.aborted)return J_r(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=null,f=!1,I=null;return kia(n.signal,()=>{f=!0,Swe(I!=null),I.abort(n.signal.reason),J_r(r,a,l,n.signal.reason)}),I=n8n({request:a,processResponseEndOfBody:E=>r8n(E,"fetch"),processResponse:E=>{if(f)return Promise.resolve();if(E.aborted)return J_r(r,a,l,I.serializedAbortReason),Promise.resolve();if(E.type==="error")return r.reject(Object.assign(new TypeError("fetch failed"),{cause:E.error})),Promise.resolve();l=new nia,l[z_r]=E,l[jKn]=A,l[Y_r][bwe]=E.headersList,l[Y_r][via]="immutable",l[Y_r][jKn]=A,r.resolve(l)},dispatcher:t.dispatcher??Via()}),r.promise}function r8n(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;e0r(r)&&n!==null&&(e.timingAllowPassed||(n=q_r({startTime:n.startTime}),a=""),n.endTime=$_r(),e.timingInfo=n,Hia(n,r,t,globalThis,a))}function Hia(e,t,r,n,a){(zKn>18||zKn===18&&Gia>=2)&&performance.markResourceTiming(e,t.href,r,n,a)}function J_r(e,t,r,n){if(n||(n=new FIt("The operation was aborted.","AbortError")),e.reject(n),t.body!=null&&ZIt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[z_r];a.body!=null&&ZIt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function n8n({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A}){let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=$_r(I),b=q_r({startTime:C}),E={controller:new LIt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return Swe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client?.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=cia(e.client.policyContainer):e.policyContainer=aia()),e.headersList.contains("accept")||e.headersList.append("accept","*/*"),e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,Tia.has(e.destination),i8n(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function i8n(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!Eia(L8(r))&&(n=qb("local URLs only")),pia(r),lia(r)==="blocked"&&(n=qb("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=mia(r)),n===null&&(n=await(async()=>{let o=L8(r);return K_r(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await qKn(e)):r.mode==="same-origin"?qb('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?qb('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await qKn(e)):e0r(L8(r))?(r.responseTainting="cors",await s8n(e)):qb("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=H_r(n,"basic"):r.responseTainting==="cors"?n=H_r(n,"cors"):r.responseTainting==="opaque"?n=H_r(n,"opaque"):Swe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range")&&(n=a=qb()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||t8n.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>U_r(e,qb(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!oia(A,r.integrity)){o("integrity mismatch");return}n.body=GIt(A)[0],U_r(e,n)};await $Kn(n.body,l,o)}else U_r(e,n)}function qKn(e){if(Ewe(e)&&e.request.redirectCount===0)return Promise.resolve(kIt(e));let{request:t}=e,{protocol:r}=L8(t);switch(r){case"about:":return Promise.resolve(qb("about scheme is not supported"));case"blob:":{Q_r||(Q_r=Et("buffer").resolveObjectURL);let n=L8(t);if(n.search.length!==0)return Promise.resolve(qb("NetworkError when attempting to fetch resource."));let a=Q_r(n.toString());if(t.method!=="GET"||!_ia(a))return Promise.resolve(qb("invalid method"));let o=GIt(a),l=o[0],A=j_r(`${l.length}`),f=o[1]??"",I=xIt({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:A}],["content-type",{name:"Content-Type",value:f}]]});return I.body=l,Promise.resolve(I)}case"data:":{let n=L8(t),a=Fia(n);if(a==="failure")return Promise.resolve(qb("failed to fetch the data URL"));let o=Zia(a.mimeType);return Promise.resolve(xIt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:GIt(a.body)[0]}))}case"file:":return Promise.resolve(qb("not implemented... yet..."));case"http:":case"https:":return s8n(e).catch(n=>qb(n));default:return Promise.resolve(qb("unknown scheme"))}}function Yia(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function U_r(e,t){t.type==="error"&&(t.urlList=[e.request.urlList[0]],t.timingInfo=q_r({startTime:e.timingInfo.startTime}));let r=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(e.processResponse!=null&&queueMicrotask(()=>e.processResponse(t)),t.body==null)r();else{let n=(o,l)=>{l.enqueue(o)},a=new Lia({start(){},transform:n,flush:r},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(a)}}if(e.processResponseConsumeBody!=null){let n=o=>e.processResponseConsumeBody(t,o),a=o=>e.processResponseConsumeBody(t,o);if(t.body==null)queueMicrotask(()=>n(null));else return $Kn(t.body,n,a);return Promise.resolve()}}async function s8n(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await o8n(e),t.responseTainting==="cors"&&Iia(t,r)==="failure")return qb("cors failure");uia(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&hia(t.origin,t.client,t.destination,n)==="blocked"?qb("blocked"):(e8n.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(),t.redirect==="error"?r=qb("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await Qia(e,r):Swe(!1)),r.timingInfo=a,r)}function Qia(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=Aia(n,L8(r).hash),a==null)return t}catch(l){return Promise.resolve(qb(l))}if(!e0r(a))return Promise.resolve(qb("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(qb("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!K_r(r,a))return Promise.resolve(qb('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(qb('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(qb());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!Pia.includes(r.method)){r.method="GET",r.body=null;for(let l of wia)r.headersList.delete(l)}K_r(L8(r),a)||(r.headersList.delete("authorization"),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie"),r.headersList.delete("host")),r.body!=null&&(Swe(r.body.source!=null),r.body=GIt(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=$_r(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),dia(r,n),i8n(e,!0)}async function o8n(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=sia(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=j_r(`${C}`)),b!=null&&o.headersList.append("content-length",b),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",j_r(o.referrer.href)),gia(o),fia(o),o.headersList.contains("user-agent")||o.headersList.append("user-agent",typeof esbuildDetection>"u"?"undici":"node"),o.cache==="default"&&(o.headersList.contains("if-modified-since")||o.headersList.contains("if-none-match")||o.headersList.contains("if-unmodified-since")||o.headersList.contains("if-match")||o.headersList.contains("if-range"))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control")&&o.headersList.append("cache-control","max-age=0"),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma")||o.headersList.append("pragma","no-cache"),o.headersList.contains("cache-control")||o.headersList.append("cache-control","no-cache")),o.headersList.contains("range")&&o.headersList.append("accept-encoding","identity"),o.headersList.contains("accept-encoding")||(Sia(L8(o))?o.headersList.append("accept-encoding","br, gzip, deflate"):o.headersList.append("accept-encoding","gzip, deflate")),o.headersList.delete("host"),A==null&&(o.cache="no-store"),o.mode!=="no-store"&&o.mode,l==null){if(o.mode==="only-if-cached")return qb("only if cached");let E=await Xia(a,I,r);!Bia.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range")&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?qb():Ewe(e)?kIt(e):qb("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(Ewe(e))return kIt(e);e.controller.connection.destroy(),l=await o8n(e,t,!0)}return l}async function Xia(e,t=!1,r=!1){Swe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B){this.destroyed||(this.destroyed=!0,this.abort?.(B??new FIt("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(J){Ewe(e)||(yield J,e.processRequestBodyChunkLength?.(J.byteLength))},F=()=>{Ewe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=J=>{Ewe(e)||(J.name==="AbortError"?e.controller.abort():e.controller.terminate(J))};f=async function*(){try{for await(let J of n.body.stream)yield*B(J);F()}catch(J){Q(J)}}()}try{let{body:B,status:F,statusText:Q,headersList:J,socket:ae}=await N({body:f});if(ae)a=xIt({status:F,statusText:Q,headersList:J,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=xIt({status:F,statusText:Q,headersList:J})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),kIt(e,B)):qb(B)}let I=()=>{e.controller.resume()},C=B=>{e.controller.abort(B)};X_r||(X_r=Et("stream/web").ReadableStream);let b=new X_r({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)}},{highWaterMark:0,size(){return 1}});a.body={stream:b},e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:Q,value:J}=await e.controller.next();if(KKn(e))break;B=Q?void 0:J}catch(Q){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=Q,F=!0)}if(B===void 0){bia(e.controller.controller),Yia(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}if(e.controller.controller.enqueue(new Uint8Array(B)),xia(b)){e.controller.terminate();return}if(!e.controller.controller.desiredSize)return}};function E(B){KKn(e)?(a.aborted=!0,ZIt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):ZIt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:yia(B)?B:void 0})),e.controller.connection.destroy()}return a;async function N({body:B}){let F=L8(n),Q=e.controller.dispatcher;return new Promise((J,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:e.controller.dispatcher.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;ce.destroyed?ne(new FIt("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new UKn;if(Array.isArray(ce))for(let tt=0;ttJe.trim()):ze.toLowerCase()==="location"&&(be=Le),Se[bwe].append(ze,Le)}else{let tt=Object.keys(ce);for(let ze of tt){let Le=ce[ze];ze.toLowerCase()==="content-encoding"?de=Le.toLowerCase().split(",").map(Je=>Je.trim()).reverse():ze.toLowerCase()==="location"&&(be=Le),Se[bwe].append(ze,Le)}}this.body=new Nia({read:fe});let De=[],k=n.redirect==="follow"&&be&&e8n.has(ne);if(n.method!=="HEAD"&&n.method!=="CONNECT"&&!t8n.includes(ne)&&!k)for(let tt of de)if(tt==="x-gzip"||tt==="gzip")De.push(fYe.createGunzip({flush:fYe.constants.Z_SYNC_FLUSH,finishFlush:fYe.constants.Z_SYNC_FLUSH}));else if(tt==="deflate")De.push(fYe.createInflate());else if(tt==="br")De.push(fYe.createBrotliDecompress());else{De.length=0;break}return J({status:ne,statusText:ue,headersList:Se[bwe],body:De.length?Dia(this.body,...De,()=>{}):this.body.on("error",()=>{})}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new UKn;for(let de=0;de{"use strict";c8n.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var u8n=H((znu,l8n)=>{"use strict";var{webidl:nP}=WZ(),WIt=Symbol("ProgressEvent state"),r0r=class e extends Event{constructor(t,r={}){t=nP.converters.DOMString(t),r=nP.converters.ProgressEventInit(r??{}),super(t,r),this[WIt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return nP.brandCheck(this,e),this[WIt].lengthComputable}get loaded(){return nP.brandCheck(this,e),this[WIt].loaded}get total(){return nP.brandCheck(this,e),this[WIt].total}};nP.converters.ProgressEventInit=nP.dictionaryConverter([{key:"lengthComputable",converter:nP.converters.boolean,defaultValue:!1},{key:"loaded",converter:nP.converters["unsigned long long"],defaultValue:0},{key:"total",converter:nP.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:nP.converters.boolean,defaultValue:!1},{key:"cancelable",converter:nP.converters.boolean,defaultValue:!1},{key:"composed",converter:nP.converters.boolean,defaultValue:!1}]);l8n.exports={ProgressEvent:r0r}});var A8n=H((qnu,g8n)=>{"use strict";function Jia(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}g8n.exports={getEncoding:Jia}});var _8n=H(($nu,C8n)=>{"use strict";var{kState:vwe,kError:n0r,kResult:d8n,kAborted:IYe,kLastProgressEventFired:i0r}=t0r(),{ProgressEvent:Uia}=u8n(),{getEncoding:p8n}=A8n(),{DOMException:Kia}=oae(),{serializeAMimeType:jia,parseMIMEType:f8n}=VX(),{types:zia}=Et("util"),{StringDecoder:I8n}=Et("string_decoder"),{btoa:h8n}=Et("buffer"),qia={enumerable:!0,writable:!1,configurable:!1};function $ia(e,t,r,n){if(e[vwe]==="loading")throw new Kia("Invalid state","InvalidStateError");e[vwe]="loading",e[d8n]=null,e[n0r]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[IYe];)try{let{done:I,value:C}=await A;if(f&&!e[IYe]&&queueMicrotask(()=>{pae("loadstart",e)}),f=!1,!I&&zia.isUint8Array(C))l.push(C),(e[i0r]===void 0||Date.now()-e[i0r]>=50)&&!e[IYe]&&(e[i0r]=Date.now(),queueMicrotask(()=>{pae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[vwe]="done";try{let b=esa(l,r,t.type,n);if(e[IYe])return;e[d8n]=b,pae("load",e)}catch(b){e[n0r]=b,pae("error",e)}e[vwe]!=="loading"&&pae("loadend",e)});break}}catch(I){if(e[IYe])return;queueMicrotask(()=>{e[vwe]="done",e[n0r]=I,pae("error",e),e[vwe]!=="loading"&&pae("loadend",e)});break}})()}function pae(e,t){let r=new Uia(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function esa(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=f8n(r||"application/octet-stream");o!=="failure"&&(a+=jia(o)),a+=";base64,";let l=new I8n("latin1");for(let A of e)a+=h8n(l.write(A));return a+=h8n(l.end()),a}case"Text":{let a="failure";if(n&&(a=p8n(n)),a==="failure"&&r){let o=f8n(r);o!=="failure"&&(a=p8n(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),tsa(e,a)}case"ArrayBuffer":return m8n(e).buffer;case"BinaryString":{let a="",o=new I8n("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function tsa(e,t){let r=m8n(e),n=rsa(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function rsa(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function m8n(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}C8n.exports={staticPropertyDescriptors:qia,readOperation:$ia,fireAProgressEvent:pae}});var S8n=H((eiu,E8n)=>{"use strict";var{staticPropertyDescriptors:Bwe,readOperation:OIt,fireAProgressEvent:y8n}=_8n(),{kState:dhe,kError:b8n,kResult:PIt,kEvents:m0,kAborted:nsa}=t0r(),{webidl:sb}=WZ(),{kEnumerableProperty:iV}=$C(),MX=class e extends EventTarget{constructor(){super(),this[dhe]="empty",this[PIt]=null,this[b8n]=null,this[m0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){sb.brandCheck(this,e),sb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),t=sb.converters.Blob(t,{strict:!1}),OIt(this,t,"ArrayBuffer")}readAsBinaryString(t){sb.brandCheck(this,e),sb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),t=sb.converters.Blob(t,{strict:!1}),OIt(this,t,"BinaryString")}readAsText(t,r=void 0){sb.brandCheck(this,e),sb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),t=sb.converters.Blob(t,{strict:!1}),r!==void 0&&(r=sb.converters.DOMString(r)),OIt(this,t,"Text",r)}readAsDataURL(t){sb.brandCheck(this,e),sb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),t=sb.converters.Blob(t,{strict:!1}),OIt(this,t,"DataURL")}abort(){if(this[dhe]==="empty"||this[dhe]==="done"){this[PIt]=null;return}this[dhe]==="loading"&&(this[dhe]="done",this[PIt]=null),this[nsa]=!0,y8n("abort",this),this[dhe]!=="loading"&&y8n("loadend",this)}get readyState(){switch(sb.brandCheck(this,e),this[dhe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return sb.brandCheck(this,e),this[PIt]}get error(){return sb.brandCheck(this,e),this[b8n]}get onloadend(){return sb.brandCheck(this,e),this[m0].loadend}set onloadend(t){sb.brandCheck(this,e),this[m0].loadend&&this.removeEventListener("loadend",this[m0].loadend),typeof t=="function"?(this[m0].loadend=t,this.addEventListener("loadend",t)):this[m0].loadend=null}get onerror(){return sb.brandCheck(this,e),this[m0].error}set onerror(t){sb.brandCheck(this,e),this[m0].error&&this.removeEventListener("error",this[m0].error),typeof t=="function"?(this[m0].error=t,this.addEventListener("error",t)):this[m0].error=null}get onloadstart(){return sb.brandCheck(this,e),this[m0].loadstart}set onloadstart(t){sb.brandCheck(this,e),this[m0].loadstart&&this.removeEventListener("loadstart",this[m0].loadstart),typeof t=="function"?(this[m0].loadstart=t,this.addEventListener("loadstart",t)):this[m0].loadstart=null}get onprogress(){return sb.brandCheck(this,e),this[m0].progress}set onprogress(t){sb.brandCheck(this,e),this[m0].progress&&this.removeEventListener("progress",this[m0].progress),typeof t=="function"?(this[m0].progress=t,this.addEventListener("progress",t)):this[m0].progress=null}get onload(){return sb.brandCheck(this,e),this[m0].load}set onload(t){sb.brandCheck(this,e),this[m0].load&&this.removeEventListener("load",this[m0].load),typeof t=="function"?(this[m0].load=t,this.addEventListener("load",t)):this[m0].load=null}get onabort(){return sb.brandCheck(this,e),this[m0].abort}set onabort(t){sb.brandCheck(this,e),this[m0].abort&&this.removeEventListener("abort",this[m0].abort),typeof t=="function"?(this[m0].abort=t,this.addEventListener("abort",t)):this[m0].abort=null}};MX.EMPTY=MX.prototype.EMPTY=0;MX.LOADING=MX.prototype.LOADING=1;MX.DONE=MX.prototype.DONE=2;Object.defineProperties(MX.prototype,{EMPTY:Bwe,LOADING:Bwe,DONE:Bwe,readAsArrayBuffer:iV,readAsBinaryString:iV,readAsText:iV,readAsDataURL:iV,abort:iV,readyState:iV,result:iV,error:iV,onloadstart:iV,onprogress:iV,onload:iV,onabort:iV,onerror:iV,onloadend:iV,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(MX,{EMPTY:Bwe,LOADING:Bwe,DONE:Bwe});E8n.exports={FileReader:MX}});var MIt=H((tiu,v8n)=>{"use strict";v8n.exports={kConstruct:LE().kConstruct}});var T8n=H((riu,w8n)=>{"use strict";var isa=Et("assert"),{URLSerializer:B8n}=VX(),{isValidHeaderName:ssa}=DM();function osa(e,t,r=!1){let n=B8n(e,r),a=B8n(t,r);return n===a}function asa(e){isa(e!==null);let t=[];for(let r of e.split(",")){if(r=r.trim(),r.length){if(!ssa(r))continue}else continue;t.push(r)}return t}w8n.exports={urlEquals:osa,fieldValues:asa}});var G8n=H((niu,x8n)=>{"use strict";var{kConstruct:csa}=MIt(),{urlEquals:lsa,fieldValues:s0r}=T8n(),{kEnumerableProperty:phe,isDisturbed:usa}=$C(),{kHeadersList:R8n}=LE(),{webidl:Wp}=WZ(),{Response:D8n,cloneResponse:gsa}=BIt(),{Request:V8}=pYe(),{kState:YZ,kHeaders:HIt,kGuard:N8n,kRealm:Asa}=W$(),{fetching:dsa}=VIt(),{urlIsHttpHttpsScheme:YIt,createDeferredPromise:wwe,readAllBytes:psa}=DM(),o0r=Et("assert"),{getGlobalDispatcher:fsa}=hwe(),QIt=class e{#e;constructor(){arguments[0]!==csa&&Wp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.match"}),t=Wp.converters.RequestInfo(t),r=Wp.converters.CacheQueryOptions(r);let n=await this.matchAll(t,r);if(n.length!==0)return n[0]}async matchAll(t=void 0,r={}){Wp.brandCheck(this,e),t!==void 0&&(t=Wp.converters.RequestInfo(t)),r=Wp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof V8){if(n=t[YZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new V8(t)[YZ]);let a=[];if(t===void 0)for(let l of this.#e)a.push(l[1]);else{let l=this.#n(n,r);for(let A of l)a.push(A[1])}let o=[];for(let l of a){let A=new D8n(l.body?.source??null),f=A[YZ].body;A[YZ]=l,A[YZ].body=f,A[HIt][R8n]=l.headersList,A[HIt][N8n]="immutable",o.push(A)}return Object.freeze(o)}async add(t){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.add"}),t=Wp.converters.RequestInfo(t);let r=[t];return await this.addAll(r)}async addAll(t){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),t=Wp.converters["sequence"](t);let r=[],n=[];for(let b of t){if(typeof b=="string")continue;let E=b[YZ];if(!YIt(E.url)||E.method!=="GET")throw Wp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}let a=[];for(let b of t){let E=new V8(b)[YZ];if(!YIt(E.url))throw Wp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});E.initiator="fetch",E.destination="subresource",n.push(E);let N=wwe();a.push(dsa({request:E,dispatcher:fsa(),processResponse(B){if(B.type==="error"||B.status===206||B.status<200||B.status>299)N.reject(Wp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(B.headersList.contains("vary")){let F=s0r(B.headersList.get("vary"));for(let Q of F)if(Q==="*"){N.reject(Wp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let J of a)J.abort();return}}},processResponseEndOfBody(B){if(B.aborted){N.reject(new DOMException("aborted","AbortError"));return}N.resolve(B)}})),r.push(N.promise)}let l=await Promise.all(r),A=[],f=0;for(let b of l){let E={type:"put",request:n[f],response:b};A.push(E),f++}let I=wwe(),C=null;try{this.#t(A)}catch(b){C=b}return queueMicrotask(()=>{C===null?I.resolve(void 0):I.reject(C)}),I.promise}async put(t,r){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,2,{header:"Cache.put"}),t=Wp.converters.RequestInfo(t),r=Wp.converters.Response(r);let n=null;if(t instanceof V8?n=t[YZ]:n=new V8(t)[YZ],!YIt(n.url)||n.method!=="GET")throw Wp.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});let a=r[YZ];if(a.status===206)throw Wp.errors.exception({header:"Cache.put",message:"Got 206 status"});if(a.headersList.contains("vary")){let E=s0r(a.headersList.get("vary"));for(let N of E)if(N==="*")throw Wp.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(a.body&&(usa(a.body.stream)||a.body.stream.locked))throw Wp.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});let o=gsa(a),l=wwe();if(a.body!=null){let N=a.body.stream.getReader();psa(N).then(l.resolve,l.reject)}else l.resolve(void 0);let A=[],f={type:"put",request:n,response:o};A.push(f);let I=await l.promise;o.body!=null&&(o.body.source=I);let C=wwe(),b=null;try{this.#t(A)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve():C.reject(b)}),C.promise}async delete(t,r={}){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),t=Wp.converters.RequestInfo(t),r=Wp.converters.CacheQueryOptions(r);let n=null;if(t instanceof V8){if(n=t[YZ],n.method!=="GET"&&!r.ignoreMethod)return!1}else o0r(typeof t=="string"),n=new V8(t)[YZ];let a=[],o={type:"delete",request:n,options:r};a.push(o);let l=wwe(),A=null,f;try{f=this.#t(a)}catch(I){A=I}return queueMicrotask(()=>{A===null?l.resolve(!!f?.length):l.reject(A)}),l.promise}async keys(t=void 0,r={}){Wp.brandCheck(this,e),t!==void 0&&(t=Wp.converters.RequestInfo(t)),r=Wp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof V8){if(n=t[YZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new V8(t)[YZ]);let a=wwe(),o=[];if(t===void 0)for(let l of this.#e)o.push(l[0]);else{let l=this.#n(n,r);for(let A of l)o.push(A[0])}return queueMicrotask(()=>{let l=[];for(let A of o){let f=new V8("https://a");f[YZ]=A,f[HIt][R8n]=A.headersList,f[HIt][N8n]="immutable",f[Asa]=A.client,l.push(f)}a.resolve(Object.freeze(l))}),a.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);o0r(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!YIt(f.url))throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);o0r(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!lsa(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=s0r(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}};Object.defineProperties(QIt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:phe,matchAll:phe,add:phe,addAll:phe,put:phe,delete:phe,keys:phe});var k8n=[{key:"ignoreSearch",converter:Wp.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:Wp.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:Wp.converters.boolean,defaultValue:!1}];Wp.converters.CacheQueryOptions=Wp.dictionaryConverter(k8n);Wp.converters.MultiCacheQueryOptions=Wp.dictionaryConverter([...k8n,{key:"cacheName",converter:Wp.converters.DOMString}]);Wp.converters.Response=Wp.interfaceConverter(D8n);Wp.converters["sequence"]=Wp.sequenceConverter(Wp.converters.RequestInfo);x8n.exports={Cache:QIt}});var Z8n=H((iiu,F8n)=>{"use strict";var{kConstruct:hYe}=MIt(),{Cache:XIt}=G8n(),{webidl:QZ}=WZ(),{kEnumerableProperty:mYe}=$C(),JIt=class e{#e=new Map;constructor(){arguments[0]!==hYe&&QZ.illegalConstructor()}async match(t,r={}){if(QZ.brandCheck(this,e),QZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),t=QZ.converters.RequestInfo(t),r=QZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new XIt(hYe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new XIt(hYe,n).match(t,r);if(o!==void 0)return o}}async has(t){return QZ.brandCheck(this,e),QZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),t=QZ.converters.DOMString(t),this.#e.has(t)}async open(t){if(QZ.brandCheck(this,e),QZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),t=QZ.converters.DOMString(t),this.#e.has(t)){let n=this.#e.get(t);return new XIt(hYe,n)}let r=[];return this.#e.set(t,r),new XIt(hYe,r)}async delete(t){return QZ.brandCheck(this,e),QZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),t=QZ.converters.DOMString(t),this.#e.delete(t)}async keys(){return QZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(JIt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:mYe,has:mYe,open:mYe,delete:mYe,keys:mYe});F8n.exports={CacheStorage:JIt}});var V8n=H((siu,L8n)=>{"use strict";L8n.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var a0r=H((oiu,P8n)=>{"use strict";var W8n=Et("assert"),{kHeadersList:O8n}=LE();function Isa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r>=0||r<=8||r>=10||r<=31||r===127)return!1}}function hsa(e){for(let t of e){let r=t.charCodeAt(0);if(r<=32||r>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}")throw new Error("Invalid cookie name")}}function msa(e){for(let t of e){let r=t.charCodeAt(0);if(r<33||r===34||r===44||r===59||r===92||r>126)throw new Error("Invalid header value")}}function Csa(e){for(let t of e)if(t.charCodeAt(0)<33||t===";")throw new Error("Invalid cookie path")}function _sa(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}function ysa(e){typeof e=="number"&&(e=new Date(e));let t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],n=t[e.getUTCDay()],a=e.getUTCDate().toString().padStart(2,"0"),o=r[e.getUTCMonth()],l=e.getUTCFullYear(),A=e.getUTCHours().toString().padStart(2,"0"),f=e.getUTCMinutes().toString().padStart(2,"0"),I=e.getUTCSeconds().toString().padStart(2,"0");return`${n}, ${a} ${o} ${l} ${A}:${f}:${I} GMT`}function bsa(e){if(e<0)throw new Error("Invalid cookie max-age")}function Esa(e){if(e.name.length===0)return null;hsa(e.name),msa(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(bsa(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(_sa(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(Csa(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${ysa(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}var UIt;function Ssa(e){if(e[O8n])return e[O8n];UIt||(UIt=Object.getOwnPropertySymbols(e).find(r=>r.description==="headers list"),W8n(UIt,"Headers cannot be parsed"));let t=e[UIt];return W8n(t),t}P8n.exports={isCTLExcludingHtab:Isa,stringify:Esa,getHeadersList:Ssa}});var H8n=H((aiu,M8n)=>{"use strict";var{maxNameValuePairSize:vsa,maxAttributeValueSize:Bsa}=V8n(),{isCTLExcludingHtab:wsa}=a0r(),{collectASequenceOfCodePointsFast:KIt}=VX(),Tsa=Et("assert");function Rsa(e){if(wsa(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=KIt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=KIt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>vsa?null:{name:n,value:a,...Twe(r)}}function Twe(e,t={}){if(e.length===0)return t;Tsa(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=KIt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=KIt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>Bsa)return Twe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return Twe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return Twe(e,t)}M8n.exports={parseSetCookie:Rsa,parseUnparsedAttributes:Twe}});var J8n=H((ciu,X8n)=>{"use strict";var{parseSetCookie:Nsa}=H8n(),{stringify:Y8n,getHeadersList:Dsa}=a0r(),{webidl:oC}=WZ(),{Headers:jIt}=ghe();function ksa(e){oC.argumentLengthCheck(arguments,1,{header:"getCookies"}),oC.brandCheck(e,jIt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function xsa(e,t,r){oC.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),oC.brandCheck(e,jIt,{strict:!1}),t=oC.converters.DOMString(t),r=oC.converters.DeleteCookieAttributes(r),Q8n(e,{name:t,value:"",expires:new Date(0),...r})}function Gsa(e){oC.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),oC.brandCheck(e,jIt,{strict:!1});let t=Dsa(e).cookies;return t?t.map(r=>Nsa(Array.isArray(r)?r[1]:r)):[]}function Q8n(e,t){oC.argumentLengthCheck(arguments,2,{header:"setCookie"}),oC.brandCheck(e,jIt,{strict:!1}),t=oC.converters.Cookie(t),Y8n(t)&&e.append("Set-Cookie",Y8n(t))}oC.converters.DeleteCookieAttributes=oC.dictionaryConverter([{converter:oC.nullableConverter(oC.converters.DOMString),key:"path",defaultValue:null},{converter:oC.nullableConverter(oC.converters.DOMString),key:"domain",defaultValue:null}]);oC.converters.Cookie=oC.dictionaryConverter([{converter:oC.converters.DOMString,key:"name"},{converter:oC.converters.DOMString,key:"value"},{converter:oC.nullableConverter(e=>typeof e=="number"?oC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:oC.nullableConverter(oC.converters["long long"]),key:"maxAge",defaultValue:null},{converter:oC.nullableConverter(oC.converters.DOMString),key:"domain",defaultValue:null},{converter:oC.nullableConverter(oC.converters.DOMString),key:"path",defaultValue:null},{converter:oC.nullableConverter(oC.converters.boolean),key:"secure",defaultValue:null},{converter:oC.nullableConverter(oC.converters.boolean),key:"httpOnly",defaultValue:null},{converter:oC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:oC.sequenceConverter(oC.converters.DOMString),key:"unparsed",defaultValue:[]}]);X8n.exports={getCookies:ksa,deleteCookie:xsa,getSetCookies:Gsa,setCookie:Q8n}});var Rwe=H((liu,U8n)=>{"use strict";var Fsa="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",Zsa={enumerable:!0,writable:!1,configurable:!1},Lsa={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},Vsa={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},Wsa=2**16-1,Osa={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},Psa=Buffer.allocUnsafe(0);U8n.exports={uid:Fsa,staticPropertyDescriptors:Zsa,states:Lsa,opcodes:Vsa,maxUnsigned16Bit:Wsa,parserStates:Osa,emptyBuffer:Psa}});var CYe=H((uiu,K8n)=>{"use strict";K8n.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var l0r=H((giu,j8n)=>{"use strict";var{webidl:Op}=WZ(),{kEnumerableProperty:sV}=$C(),{MessagePort:Msa}=Et("worker_threads"),zIt=class e extends Event{#e;constructor(t,r={}){Op.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),t=Op.converters.DOMString(t),r=Op.converters.MessageEventInit(r),super(t,r),this.#e=r}get data(){return Op.brandCheck(this,e),this.#e.data}get origin(){return Op.brandCheck(this,e),this.#e.origin}get lastEventId(){return Op.brandCheck(this,e),this.#e.lastEventId}get source(){return Op.brandCheck(this,e),this.#e.source}get ports(){return Op.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Op.brandCheck(this,e),Op.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}},qIt=class e extends Event{#e;constructor(t,r={}){Op.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),t=Op.converters.DOMString(t),r=Op.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Op.brandCheck(this,e),this.#e.wasClean}get code(){return Op.brandCheck(this,e),this.#e.code}get reason(){return Op.brandCheck(this,e),this.#e.reason}},$It=class e extends Event{#e;constructor(t,r){Op.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,r),t=Op.converters.DOMString(t),r=Op.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Op.brandCheck(this,e),this.#e.message}get filename(){return Op.brandCheck(this,e),this.#e.filename}get lineno(){return Op.brandCheck(this,e),this.#e.lineno}get colno(){return Op.brandCheck(this,e),this.#e.colno}get error(){return Op.brandCheck(this,e),this.#e.error}};Object.defineProperties(zIt.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:sV,origin:sV,lastEventId:sV,source:sV,ports:sV,initMessageEvent:sV});Object.defineProperties(qIt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:sV,code:sV,wasClean:sV});Object.defineProperties($It.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:sV,filename:sV,lineno:sV,colno:sV,error:sV});Op.converters.MessagePort=Op.interfaceConverter(Msa);Op.converters["sequence"]=Op.sequenceConverter(Op.converters.MessagePort);var c0r=[{key:"bubbles",converter:Op.converters.boolean,defaultValue:!1},{key:"cancelable",converter:Op.converters.boolean,defaultValue:!1},{key:"composed",converter:Op.converters.boolean,defaultValue:!1}];Op.converters.MessageEventInit=Op.dictionaryConverter([...c0r,{key:"data",converter:Op.converters.any,defaultValue:null},{key:"origin",converter:Op.converters.USVString,defaultValue:""},{key:"lastEventId",converter:Op.converters.DOMString,defaultValue:""},{key:"source",converter:Op.nullableConverter(Op.converters.MessagePort),defaultValue:null},{key:"ports",converter:Op.converters["sequence"],get defaultValue(){return[]}}]);Op.converters.CloseEventInit=Op.dictionaryConverter([...c0r,{key:"wasClean",converter:Op.converters.boolean,defaultValue:!1},{key:"code",converter:Op.converters["unsigned short"],defaultValue:0},{key:"reason",converter:Op.converters.USVString,defaultValue:""}]);Op.converters.ErrorEventInit=Op.dictionaryConverter([...c0r,{key:"message",converter:Op.converters.DOMString,defaultValue:""},{key:"filename",converter:Op.converters.USVString,defaultValue:""},{key:"lineno",converter:Op.converters["unsigned long"],defaultValue:0},{key:"colno",converter:Op.converters["unsigned long"],defaultValue:0},{key:"error",converter:Op.converters.any}]);j8n.exports={MessageEvent:zIt,CloseEvent:qIt,ErrorEvent:$It}});var rht=H((Aiu,$8n)=>{"use strict";var{kReadyState:eht,kController:Hsa,kResponse:Ysa,kBinaryType:Qsa,kWebSocketURL:Xsa}=CYe(),{states:tht,opcodes:z8n}=Rwe(),{MessageEvent:Jsa,ErrorEvent:Usa}=l0r();function Ksa(e){return e[eht]===tht.OPEN}function jsa(e){return e[eht]===tht.CLOSING}function zsa(e){return e[eht]===tht.CLOSED}function u0r(e,t,r=Event,n){let a=new r(e,n);t.dispatchEvent(a)}function qsa(e,t,r){if(e[eht]!==tht.OPEN)return;let n;if(t===z8n.TEXT)try{n=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{q8n(e,"Received invalid UTF-8 in text frame.");return}else t===z8n.BINARY&&(e[Qsa]==="blob"?n=new Blob([r]):n=new Uint8Array(r).buffer);u0r("message",e,Jsa,{origin:e[Xsa].origin,data:n})}function $sa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r<33||r>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||r===32||r===9)return!1}return!0}function eoa(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function q8n(e,t){let{[Hsa]:r,[Ysa]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&u0r("error",e,Usa,{error:new Error(t)})}$8n.exports={isEstablished:Ksa,isClosing:jsa,isClosed:zsa,fireEvent:u0r,isValidSubprotocol:$sa,isValidStatusCode:eoa,failWebsocketConnection:q8n,websocketMessageReceived:qsa}});var s6n=H((diu,i6n)=>{"use strict";var A0r=Et("diagnostics_channel"),{uid:toa,states:t6n}=Rwe(),{kReadyState:r6n,kSentClose:e6n,kByteParser:n6n,kReceivedClose:roa}=CYe(),{fireEvent:noa,failWebsocketConnection:fhe}=rht(),{CloseEvent:ioa}=l0r(),{makeRequest:soa}=pYe(),{fetching:ooa}=VIt(),{Headers:aoa}=ghe(),{getGlobalDispatcher:coa}=hwe(),{kHeadersList:loa}=LE(),U$={};U$.open=A0r.channel("undici:websocket:open");U$.close=A0r.channel("undici:websocket:close");U$.socketError=A0r.channel("undici:websocket:socket_error");var g0r;try{g0r=Et("crypto")}catch{}function uoa(e,t,r,n,a){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let l=soa({urlList:[o],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(a.headers){let C=new aoa(a.headers)[loa];l.headersList=C}let A=g0r.randomBytes(16).toString("base64");l.headersList.append("sec-websocket-key",A),l.headersList.append("sec-websocket-version","13");for(let C of t)l.headersList.append("sec-websocket-protocol",C);let f="";return ooa({request:l,useParallelQueue:!0,dispatcher:a.dispatcher??coa(),processResponse(C){if(C.type==="error"||C.status!==101){fhe(r,"Received network error or non-101 status code.");return}if(t.length!==0&&!C.headersList.get("Sec-WebSocket-Protocol")){fhe(r,"Server did not respond with sent protocols.");return}if(C.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){fhe(r,'Server did not set Upgrade header to "websocket".');return}if(C.headersList.get("Connection")?.toLowerCase()!=="upgrade"){fhe(r,'Server did not set Connection header to "upgrade".');return}let b=C.headersList.get("Sec-WebSocket-Accept"),E=g0r.createHash("sha1").update(A+toa).digest("base64");if(b!==E){fhe(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let N=C.headersList.get("Sec-WebSocket-Extensions");if(N!==null&&N!==f){fhe(r,"Received different permessage-deflate than the one set.");return}let B=C.headersList.get("Sec-WebSocket-Protocol");if(B!==null&&B!==l.headersList.get("Sec-WebSocket-Protocol")){fhe(r,"Protocol was not set in the opening handshake.");return}C.socket.on("data",goa),C.socket.on("close",Aoa),C.socket.on("error",doa),U$.open.hasSubscribers&&U$.open.publish({address:C.socket.address(),protocol:B,extensions:N}),n(C)}})}function goa(e){this.ws[n6n].write(e)||this.pause()}function Aoa(){let{ws:e}=this,t=e[e6n]&&e[roa],r=1005,n="",a=e[n6n].closingInfo;a?(r=a.code??1005,n=a.reason):e[e6n]||(r=1006),e[r6n]=t6n.CLOSED,noa("close",e,ioa,{wasClean:t,code:r,reason:n}),U$.close.hasSubscribers&&U$.close.publish({websocket:e,code:r,reason:n})}function doa(e){let{ws:t}=this;t[r6n]=t6n.CLOSING,U$.socketError.hasSubscribers&&U$.socketError.publish(e),this.destroy()}i6n.exports={establishWebSocketConnection:uoa}});var p0r=H((piu,a6n)=>{"use strict";var{maxUnsigned16Bit:poa}=Rwe(),o6n;try{o6n=Et("crypto")}catch{}var d0r=class{constructor(t){this.frameData=t,this.maskKey=o6n.randomBytes(4)}createFrame(t){let r=this.frameData?.byteLength??0,n=r,a=6;r>poa?(a+=8,n=127):r>125&&(a+=2,n=126);let o=Buffer.allocUnsafe(r+a);o[0]=o[1]=0,o[0]|=128,o[0]=(o[0]&240)+t;o[a-4]=this.maskKey[0],o[a-3]=this.maskKey[1],o[a-2]=this.maskKey[2],o[a-1]=this.maskKey[3],o[1]=n,n===126?o.writeUInt16BE(r,2):n===127&&(o[2]=o[3]=0,o.writeUIntBE(r,4,6)),o[1]|=128;for(let l=0;l{"use strict";var{Writable:foa}=Et("stream"),d6n=Et("diagnostics_channel"),{parserStates:GM,opcodes:FM,states:Ioa,emptyBuffer:hoa}=Rwe(),{kReadyState:moa,kSentClose:c6n,kResponse:l6n,kReceivedClose:u6n}=CYe(),{isValidStatusCode:g6n,failWebsocketConnection:_Ye,websocketMessageReceived:Coa}=rht(),{WebsocketFrameSend:A6n}=p0r(),Nwe={};Nwe.ping=d6n.channel("undici:websocket:ping");Nwe.pong=d6n.channel("undici:websocket:pong");var f0r=class extends foa{#e=[];#t=0;#n=GM.INFO;#r={};#i=[];constructor(t){super(),this.ws=t}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.run(n)}run(t){for(;;){if(this.#n===GM.INFO){if(this.#t<2)return t();let r=this.consume(2);if(this.#r.fin=(r[0]&128)!==0,this.#r.opcode=r[0]&15,this.#r.originalOpcode??=this.#r.opcode,this.#r.fragmented=!this.#r.fin&&this.#r.opcode!==FM.CONTINUATION,this.#r.fragmented&&this.#r.opcode!==FM.BINARY&&this.#r.opcode!==FM.TEXT){_Ye(this.ws,"Invalid frame type was fragmented.");return}let n=r[1]&127;if(n<=125?(this.#r.payloadLength=n,this.#n=GM.READ_DATA):n===126?this.#n=GM.PAYLOADLENGTH_16:n===127&&(this.#n=GM.PAYLOADLENGTH_64),this.#r.fragmented&&n>125){_Ye(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#r.opcode===FM.PING||this.#r.opcode===FM.PONG||this.#r.opcode===FM.CLOSE)&&n>125){_Ye(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#r.opcode===FM.CLOSE){if(n===1){_Ye(this.ws,"Received close frame with a 1-byte body.");return}let a=this.consume(n);if(this.#r.closeInfo=this.parseCloseBody(!1,a),!this.ws[c6n]){let o=Buffer.allocUnsafe(2);o.writeUInt16BE(this.#r.closeInfo.code,0);let l=new A6n(o);this.ws[l6n].socket.write(l.createFrame(FM.CLOSE),A=>{A||(this.ws[c6n]=!0)})}this.ws[moa]=Ioa.CLOSING,this.ws[u6n]=!0,this.end();return}else if(this.#r.opcode===FM.PING){let a=this.consume(n);if(!this.ws[u6n]){let o=new A6n(a);this.ws[l6n].socket.write(o.createFrame(FM.PONG)),Nwe.ping.hasSubscribers&&Nwe.ping.publish({payload:a})}if(this.#n=GM.INFO,this.#t>0)continue;t();return}else if(this.#r.opcode===FM.PONG){let a=this.consume(n);if(Nwe.pong.hasSubscribers&&Nwe.pong.publish({payload:a}),this.#t>0)continue;t();return}}else if(this.#n===GM.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#r.payloadLength=r.readUInt16BE(0),this.#n=GM.READ_DATA}else if(this.#n===GM.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){_Ye(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#r.payloadLength=(n<<8)+a,this.#n=GM.READ_DATA}else if(this.#n===GM.READ_DATA){if(this.#t=this.#r.payloadLength){let r=this.consume(this.#r.payloadLength);if(this.#i.push(r),!this.#r.fragmented||this.#r.fin&&this.#r.opcode===FM.CONTINUATION){let n=Buffer.concat(this.#i);Coa(this.ws,this.#r.originalOpcode,n),this.#r={},this.#i.length=0}this.#n=GM.INFO}}if(!(this.#t>0)){t();break}}}consume(t){if(t>this.#t)return null;if(t===0)return hoa;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t,r){let n;if(r.length>=2&&(n=r.readUInt16BE(0)),t)return g6n(n)?{code:n}:null;let a=r.subarray(2);if(a[0]===239&&a[1]===187&&a[2]===191&&(a=a.subarray(3)),n!==void 0&&!g6n(n))return null;try{a=new TextDecoder("utf-8",{fatal:!0}).decode(a)}catch{return null}return{code:n,reason:a}}get closingInfo(){return this.#r.closeInfo}};p6n.exports={ByteParser:f0r}});var E6n=H((Iiu,b6n)=>{"use strict";var{webidl:hI}=WZ(),{DOMException:fae}=oae(),{URLSerializer:_oa}=VX(),{getGlobalOrigin:yoa}=KBe(),{staticPropertyDescriptors:Iae,states:Dwe,opcodes:yYe,emptyBuffer:boa}=Rwe(),{kWebSocketURL:I6n,kReadyState:K$,kController:Eoa,kBinaryType:nht,kResponse:iht,kSentClose:Soa,kByteParser:voa}=CYe(),{isEstablished:h6n,isClosing:m6n,isValidSubprotocol:Boa,failWebsocketConnection:woa,fireEvent:Toa}=rht(),{establishWebSocketConnection:Roa}=s6n(),{WebsocketFrameSend:bYe}=p0r(),{ByteParser:Noa}=f6n(),{kEnumerableProperty:ZM,isBlobLike:_6n}=$C(),{getGlobalDispatcher:Doa}=hwe(),{types:y6n}=Et("util"),C6n=!1,iP=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";constructor(t,r=[]){super(),hI.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),C6n||(C6n=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));let n=hI.converters["DOMString or sequence or WebSocketInit"](r);t=hI.converters.USVString(t),r=n.protocols;let a=yoa(),o;try{o=new URL(t,a)}catch(l){throw new fae(l,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new fae(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new fae("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(l=>l.toLowerCase())).size)throw new fae("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(l=>Boa(l)))throw new fae("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[I6n]=new URL(o.href),this[Eoa]=Roa(o,r,this,l=>this.#i(l),n),this[K$]=e.CONNECTING,this[nht]="blob"}close(t=void 0,r=void 0){if(hI.brandCheck(this,e),t!==void 0&&(t=hI.converters["unsigned short"](t,{clamp:!0})),r!==void 0&&(r=hI.converters.USVString(r)),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new fae("invalid code","InvalidAccessError");let n=0;if(r!==void 0&&(n=Buffer.byteLength(r),n>123))throw new fae(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError");if(!(this[K$]===e.CLOSING||this[K$]===e.CLOSED))if(!h6n(this))woa(this,"Connection was closed before it was established."),this[K$]=e.CLOSING;else if(m6n(this))this[K$]=e.CLOSING;else{let a=new bYe;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=boa,this[iht].socket.write(a.createFrame(yYe.CLOSE),l=>{l||(this[Soa]=!0)}),this[K$]=Dwe.CLOSING}}send(t){if(hI.brandCheck(this,e),hI.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),t=hI.converters.WebSocketSendData(t),this[K$]===e.CONNECTING)throw new fae("Sent before connected.","InvalidStateError");if(!h6n(this)||m6n(this))return;let r=this[iht].socket;if(typeof t=="string"){let n=Buffer.from(t),o=new bYe(n).createFrame(yYe.TEXT);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(y6n.isArrayBuffer(t)){let n=Buffer.from(t),o=new bYe(n).createFrame(yYe.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ArrayBuffer.isView(t)){let n=Buffer.from(t,t.byteOffset,t.byteLength),o=new bYe(n).createFrame(yYe.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(_6n(t)){let n=new bYe;t.arrayBuffer().then(a=>{let o=Buffer.from(a);n.frameData=o;let l=n.createFrame(yYe.BINARY);this.#t+=o.byteLength,r.write(l,()=>{this.#t-=o.byteLength})})}}get readyState(){return hI.brandCheck(this,e),this[K$]}get bufferedAmount(){return hI.brandCheck(this,e),this.#t}get url(){return hI.brandCheck(this,e),_oa(this[I6n])}get extensions(){return hI.brandCheck(this,e),this.#r}get protocol(){return hI.brandCheck(this,e),this.#n}get onopen(){return hI.brandCheck(this,e),this.#e.open}set onopen(t){hI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return hI.brandCheck(this,e),this.#e.error}set onerror(t){hI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return hI.brandCheck(this,e),this.#e.close}set onclose(t){hI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return hI.brandCheck(this,e),this.#e.message}set onmessage(t){hI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return hI.brandCheck(this,e),this[nht]}set binaryType(t){hI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[nht]="blob":this[nht]=t}#i(t){this[iht]=t;let r=new Noa(this);r.on("drain",function(){this.ws[iht].socket.resume()}),t.socket.ws=this,this[voa]=r,this[K$]=Dwe.OPEN;let n=t.headersList.get("sec-websocket-extensions");n!==null&&(this.#r=n);let a=t.headersList.get("sec-websocket-protocol");a!==null&&(this.#n=a),Toa("open",this)}};iP.CONNECTING=iP.prototype.CONNECTING=Dwe.CONNECTING;iP.OPEN=iP.prototype.OPEN=Dwe.OPEN;iP.CLOSING=iP.prototype.CLOSING=Dwe.CLOSING;iP.CLOSED=iP.prototype.CLOSED=Dwe.CLOSED;Object.defineProperties(iP.prototype,{CONNECTING:Iae,OPEN:Iae,CLOSING:Iae,CLOSED:Iae,url:ZM,readyState:ZM,bufferedAmount:ZM,onopen:ZM,onerror:ZM,onclose:ZM,close:ZM,onmessage:ZM,binaryType:ZM,send:ZM,extensions:ZM,protocol:ZM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(iP,{CONNECTING:Iae,OPEN:Iae,CLOSING:Iae,CLOSED:Iae});hI.converters["sequence"]=hI.sequenceConverter(hI.converters.DOMString);hI.converters["DOMString or sequence"]=function(e){return hI.util.Type(e)==="Object"&&Symbol.iterator in e?hI.converters["sequence"](e):hI.converters.DOMString(e)};hI.converters.WebSocketInit=hI.dictionaryConverter([{key:"protocols",converter:hI.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return Doa()}},{key:"headers",converter:hI.nullableConverter(hI.converters.HeadersInit)}]);hI.converters["DOMString or sequence or WebSocketInit"]=function(e){return hI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?hI.converters.WebSocketInit(e):{protocols:hI.converters["DOMString or sequence"](e)}};hI.converters.WebSocketSendData=function(e){if(hI.util.Type(e)==="Object"){if(_6n(e))return hI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||y6n.isAnyArrayBuffer(e))return hI.converters.BufferSource(e)}return hI.converters.USVString(e)};b6n.exports={WebSocket:iP}});var w6n=H((hiu,wh)=>{"use strict";var koa=tYe(),S6n=Wft(),v6n=zb(),xoa=cwe(),Goa=VJn(),Foa=sYe(),Ihe=$C(),{InvalidArgumentError:sht}=v6n,kwe=RUn(),Zoa=JHe(),Loa=v_r(),Voa=gKn(),Woa=T_r(),Ooa=d_r(),Poa=hKn(),Moa=bKn(),{getGlobalDispatcher:B6n,setGlobalDispatcher:Hoa}=hwe(),Yoa=TKn(),Qoa=SCr(),Xoa=Hft(),I0r;try{Et("crypto"),I0r=!0}catch{I0r=!1}Object.assign(S6n.prototype,kwe);wh.exports.Dispatcher=S6n;wh.exports.Client=koa;wh.exports.Pool=xoa;wh.exports.BalancedPool=Goa;wh.exports.Agent=Foa;wh.exports.ProxyAgent=Poa;wh.exports.RetryHandler=Moa;wh.exports.DecoratorHandler=Yoa;wh.exports.RedirectHandler=Qoa;wh.exports.createRedirectInterceptor=Xoa;wh.exports.buildConnector=Zoa;wh.exports.errors=v6n;function EYe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new sht("invalid url");if(r!=null&&typeof r!="object")throw new sht("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new sht("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(Ihe.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=Ihe.parseURL(t);let{agent:a,dispatcher:o=B6n()}=r;if(a)throw new sht("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}wh.exports.setGlobalDispatcher=Hoa;wh.exports.getGlobalDispatcher=B6n;if(Ihe.nodeMajor>16||Ihe.nodeMajor===16&&Ihe.nodeMinor>=8){let e=null;wh.exports.fetch=async function(l){e||(e=VIt().fetch);try{return await e(...arguments)}catch(A){throw typeof A=="object"&&Error.captureStackTrace(A,this),A}},wh.exports.Headers=ghe().Headers,wh.exports.Response=BIt().Response,wh.exports.Request=pYe().Request,wh.exports.FormData=Zft().FormData,wh.exports.File=Gft().File,wh.exports.FileReader=S8n().FileReader;let{setGlobalOrigin:t,getGlobalOrigin:r}=KBe();wh.exports.setGlobalOrigin=t,wh.exports.getGlobalOrigin=r;let{CacheStorage:n}=Z8n(),{kConstruct:a}=MIt();wh.exports.caches=new n(a)}if(Ihe.nodeMajor>=16){let{deleteCookie:e,getCookies:t,getSetCookies:r,setCookie:n}=J8n();wh.exports.deleteCookie=e,wh.exports.getCookies=t,wh.exports.getSetCookies=r,wh.exports.setCookie=n;let{parseMIMEType:a,serializeAMimeType:o}=VX();wh.exports.parseMIMEType=a,wh.exports.serializeAMimeType=o}if(Ihe.nodeMajor>=18&&I0r){let{WebSocket:e}=E6n();wh.exports.WebSocket=e}wh.exports.request=EYe(kwe.request);wh.exports.stream=EYe(kwe.stream);wh.exports.pipeline=EYe(kwe.pipeline);wh.exports.connect=EYe(kwe.connect);wh.exports.upgrade=EYe(kwe.upgrade);wh.exports.MockClient=Loa;wh.exports.MockPool=Woa;wh.exports.MockAgent=Voa;wh.exports.mockErrors=Ooa});var R6n=H(WE=>{"use strict";var Joa=WE&&WE.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Uoa=WE&&WE.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),uht=WE&&WE.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Joa(t,e,r);return Uoa(t,e),t},sw=WE&&WE.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(WE,"__esModule",{value:!0});WE.HttpClient=WE.isHttps=WE.HttpClientResponse=WE.HttpClientError=WE.getProxyUrl=WE.MediaTypes=WE.Headers=WE.HttpCodes=void 0;var h0r=uht(Et("http")),T6n=uht(Et("https")),m0r=uht(VQn()),oht=uht(YQn()),Koa=w6n(),LM;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(LM||(WE.HttpCodes=LM={}));var wG;(function(e){e.Accept="accept",e.ContentType="content-type"})(wG||(WE.Headers=wG={}));var j$;(function(e){e.ApplicationJson="application/json"})(j$||(WE.MediaTypes=j$={}));function joa(e){let t=m0r.getProxyUrl(new URL(e));return t?t.href:""}WE.getProxyUrl=joa;var zoa=[LM.MovedPermanently,LM.ResourceMoved,LM.SeeOther,LM.TemporaryRedirect,LM.PermanentRedirect],qoa=[LM.BadGateway,LM.ServiceUnavailable,LM.GatewayTimeout],$oa=["OPTIONS","GET","DELETE","HEAD"],eaa=10,taa=5,cht=class e extends Error{constructor(t,r){super(t),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,e.prototype)}};WE.HttpClientError=cht;var lht=class{constructor(t){this.message=t}readBody(){return sw(this,void 0,void 0,function*(){return new Promise(t=>sw(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{t(r.toString())})}))})}readBodyBuffer(){return sw(this,void 0,void 0,function*(){return new Promise(t=>sw(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{t(Buffer.concat(r))})}))})}};WE.HttpClientResponse=lht;function raa(e){return new URL(e).protocol==="https:"}WE.isHttps=raa;var C0r=class{constructor(t,r,n){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=t,this.handlers=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(t,r){return sw(this,void 0,void 0,function*(){return this.request("OPTIONS",t,null,r||{})})}get(t,r){return sw(this,void 0,void 0,function*(){return this.request("GET",t,null,r||{})})}del(t,r){return sw(this,void 0,void 0,function*(){return this.request("DELETE",t,null,r||{})})}post(t,r,n){return sw(this,void 0,void 0,function*(){return this.request("POST",t,r,n||{})})}patch(t,r,n){return sw(this,void 0,void 0,function*(){return this.request("PATCH",t,r,n||{})})}put(t,r,n){return sw(this,void 0,void 0,function*(){return this.request("PUT",t,r,n||{})})}head(t,r){return sw(this,void 0,void 0,function*(){return this.request("HEAD",t,null,r||{})})}sendStream(t,r,n,a){return sw(this,void 0,void 0,function*(){return this.request(t,r,n,a)})}getJson(t,r={}){return sw(this,void 0,void 0,function*(){r[wG.Accept]=this._getExistingOrDefaultHeader(r,wG.Accept,j$.ApplicationJson);let n=yield this.get(t,r);return this._processResponse(n,this.requestOptions)})}postJson(t,r,n={}){return sw(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[wG.Accept]=this._getExistingOrDefaultHeader(n,wG.Accept,j$.ApplicationJson),n[wG.ContentType]=this._getExistingOrDefaultHeader(n,wG.ContentType,j$.ApplicationJson);let o=yield this.post(t,a,n);return this._processResponse(o,this.requestOptions)})}putJson(t,r,n={}){return sw(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[wG.Accept]=this._getExistingOrDefaultHeader(n,wG.Accept,j$.ApplicationJson),n[wG.ContentType]=this._getExistingOrDefaultHeader(n,wG.ContentType,j$.ApplicationJson);let o=yield this.put(t,a,n);return this._processResponse(o,this.requestOptions)})}patchJson(t,r,n={}){return sw(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[wG.Accept]=this._getExistingOrDefaultHeader(n,wG.Accept,j$.ApplicationJson),n[wG.ContentType]=this._getExistingOrDefaultHeader(n,wG.ContentType,j$.ApplicationJson);let o=yield this.patch(t,a,n);return this._processResponse(o,this.requestOptions)})}request(t,r,n,a){return sw(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),l=this._prepareRequest(t,o,a),A=this._allowRetries&&$oa.includes(t)?this._maxRetries+1:1,f=0,I;do{if(I=yield this.requestRaw(l,n),I&&I.message&&I.message.statusCode===LM.Unauthorized){let b;for(let E of this.handlers)if(E.canHandleAuthentication(I)){b=E;break}return b?b.handleAuthentication(this,l,n):I}let C=this._maxRedirects;for(;I.message.statusCode&&zoa.includes(I.message.statusCode)&&this._allowRedirects&&C>0;){let b=I.message.headers.location;if(!b)break;let E=new URL(b);if(o.protocol==="https:"&&o.protocol!==E.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield I.readBody(),E.hostname!==o.hostname)for(let N in a)N.toLowerCase()==="authorization"&&delete a[N];l=this._prepareRequest(t,E,a),I=yield this.requestRaw(l,n),C--}if(!I.message.statusCode||!qoa.includes(I.message.statusCode))return I;f+=1,f{function o(l,A){l?a(l):A?n(A):a(new Error("Unknown error"))}this.requestRawWithCallback(t,r,o)})})}requestRawWithCallback(t,r,n){typeof r=="string"&&(t.options.headers||(t.options.headers={}),t.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let a=!1;function o(f,I){a||(a=!0,n(f,I))}let l=t.httpModule.request(t.options,f=>{let I=new lht(f);o(void 0,I)}),A;l.on("socket",f=>{A=f}),l.setTimeout(this._socketTimeout||3*6e4,()=>{A&&A.end(),o(new Error(`Request timeout: ${t.options.path}`))}),l.on("error",function(f){o(f)}),r&&typeof r=="string"&&l.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){l.end()}),r.pipe(l)):l.end()}getAgent(t){let r=new URL(t);return this._getAgent(r)}getAgentDispatcher(t){let r=new URL(t),n=m0r.getProxyUrl(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(t,r,n){let a={};a.parsedUrl=r;let o=a.parsedUrl.protocol==="https:";a.httpModule=o?T6n:h0r;let l=o?443:80;if(a.options={},a.options.host=a.parsedUrl.hostname,a.options.port=a.parsedUrl.port?parseInt(a.parsedUrl.port):l,a.options.path=(a.parsedUrl.pathname||"")+(a.parsedUrl.search||""),a.options.method=t,a.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(a.options.headers["user-agent"]=this.userAgent),a.options.agent=this._getAgent(a.parsedUrl),this.handlers)for(let A of this.handlers)A.prepareRequest(a.options);return a}_mergeHeaders(t){return this.requestOptions&&this.requestOptions.headers?Object.assign({},aht(this.requestOptions.headers),aht(t||{})):aht(t||{})}_getExistingOrDefaultHeader(t,r,n){let a;return this.requestOptions&&this.requestOptions.headers&&(a=aht(this.requestOptions.headers)[r]),t[r]||a||n}_getAgent(t){let r,n=m0r.getProxyUrl(t),a=n&&n.hostname;if(this._keepAlive&&a&&(r=this._proxyAgent),a||(r=this._agent),r)return r;let o=t.protocol==="https:",l=100;if(this.requestOptions&&(l=this.requestOptions.maxSockets||h0r.globalAgent.maxSockets),n&&n.hostname){let A={maxSockets:l,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},f,I=n.protocol==="https:";o?f=I?oht.httpsOverHttps:oht.httpsOverHttp:f=I?oht.httpOverHttps:oht.httpOverHttp,r=f(A),this._proxyAgent=r}if(!r){let A={keepAlive:this._keepAlive,maxSockets:l};r=o?new T6n.Agent(A):new h0r.Agent(A),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(t,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let a=t.protocol==="https:";return n=new Koa.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,a&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_performExponentialBackoff(t){return sw(this,void 0,void 0,function*(){t=Math.min(eaa,t);let r=taa*Math.pow(2,t);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(t,r){return sw(this,void 0,void 0,function*(){return new Promise((n,a)=>sw(this,void 0,void 0,function*(){let o=t.message.statusCode||0,l={statusCode:o,result:null,headers:{}};o===LM.NotFound&&n(l);function A(C,b){if(typeof b=="string"){let E=new Date(b);if(!isNaN(E.valueOf()))return E}return b}let f,I;try{I=yield t.readBody(),I&&I.length>0&&(r&&r.deserializeDates?f=JSON.parse(I,A):f=JSON.parse(I),l.result=f),l.headers=t.message.headers}catch{}if(o>299){let C;f&&f.message?C=f.message:I&&I.length>0?C=I:C=`Failed request: (${o})`;let b=new cht(C,o);b.result=l.result,a(b)}else n(l)}))})}};WE.HttpClient=C0r;var aht=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{})});var R2=H((Ciu,N6n)=>{N6n.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var X0=H((_iu,D6n)=>{"use strict";var xS=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},_0r=class extends xS{constructor(t){super(t),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},y0r=class extends xS{constructor(t){super(t),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},b0r=class extends xS{constructor(t){super(t),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},E0r=class extends xS{constructor(t){super(t),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},S0r=class extends xS{constructor(t,r,n,a){super(t),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},v0r=class extends xS{constructor(t){super(t),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},B0r=class extends xS{constructor(t){super(t),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},ght=class extends xS{constructor(t){super(t),this.name="AbortError",this.message=t||"The operation was aborted"}},w0r=class extends ght{constructor(t){super(t),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},T0r=class extends xS{constructor(t){super(t),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},R0r=class extends xS{constructor(t){super(t),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},N0r=class extends xS{constructor(t){super(t),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},D0r=class extends xS{constructor(t){super(t),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},k0r=class extends xS{constructor(t){super(t),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},x0r=class extends xS{constructor(t,r){super(t),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},G0r=class extends xS{constructor(t){super(t),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},F0r=class extends xS{constructor(t){super(t),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},Z0r=class extends Error{constructor(t,r,n){super(t),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},L0r=class extends xS{constructor(t){super(t),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},V0r=class extends xS{constructor(t,r,{headers:n,data:a}){super(t),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}},W0r=class extends xS{constructor(t,r,{headers:n,data:a}){super(t),this.name="ResponseError",this.message=t||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=a,this.headers=n}},O0r=class extends xS{constructor(t,r,n){super(r,{cause:t,...n??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=t}};D6n.exports={AbortError:ght,HTTPParserError:Z0r,UndiciError:xS,HeadersTimeoutError:y0r,HeadersOverflowError:b0r,BodyTimeoutError:E0r,RequestContentLengthMismatchError:R0r,ConnectTimeoutError:_0r,ResponseStatusCodeError:S0r,InvalidArgumentError:v0r,InvalidReturnValueError:B0r,RequestAbortedError:w0r,ClientDestroyedError:D0r,ClientClosedError:k0r,InformationalError:T0r,SocketError:x0r,NotSupportedError:G0r,ResponseContentLengthMismatchError:N0r,BalancedPoolMissingUpstreamError:F0r,ResponseExceededMaxSizeError:L0r,RequestRetryError:V0r,ResponseError:W0r,SecureProxyConnectionError:O0r}});var dht=H((yiu,k6n)=>{"use strict";var Aht={},P0r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var{wellknownHeaderNames:x6n,headerNameLowerCasedRecord:naa}=dht(),M0r=class e{value=null;left=null;middle=null;right=null;code;constructor(t,r,n){if(n===void 0||n>=t.length)throw new TypeError("Unreachable");if((this.code=t.charCodeAt(n))>127)throw new TypeError("key must be ascii string");t.length!==++n?this.middle=new e(t,r,n):this.value=r}add(t,r){let n=t.length;if(n===0)throw new TypeError("Unreachable");let a=0,o=this;for(;;){let l=t.charCodeAt(a);if(l>127)throw new TypeError("key must be ascii string");if(o.code===l)if(n===++a){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new e(t,r,a);break}else if(o.code=65&&(o|=32);a!==null;){if(o===a.code){if(r===++n)return a;a=a.middle;break}a=a.code{"use strict";var SYe=Et("node:assert"),{kDestroyed:V6n,kBodyUsed:xwe,kListeners:H0r,kBody:L6n}=R2(),{IncomingMessage:iaa}=Et("node:http"),hht=Et("node:stream"),saa=Et("node:net"),{Blob:oaa}=Et("node:buffer"),aaa=Et("node:util"),{stringify:caa}=Et("node:querystring"),{EventEmitter:laa}=Et("node:events"),{InvalidArgumentError:sD}=X0(),{headerNameLowerCasedRecord:uaa}=dht(),{tree:W6n}=Z6n(),[gaa,Aaa]=process.versions.node.split(".").map(e=>Number(e)),Iht=class{constructor(t){this[L6n]=t,this[xwe]=!1}async*[Symbol.asyncIterator](){SYe(!this[xwe],"disturbed"),this[xwe]=!0,yield*this[L6n]}};function daa(e){return mht(e)?(Y6n(e)===0&&e.on("data",function(){SYe(!1)}),typeof e.readableDidRead!="boolean"&&(e[xwe]=!1,laa.prototype.on.call(e,"data",function(){this[xwe]=!0})),e):e&&typeof e.pipeTo=="function"?new Iht(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&H6n(e)?new Iht(e):e}function paa(){}function mht(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function O6n(e){if(e===null)return!1;if(e instanceof oaa)return!0;if(typeof e!="object")return!1;{let t=e[Symbol.toStringTag];return(t==="Blob"||t==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function faa(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=caa(t);return r&&(e+="?"+r),e}function P6n(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function fht(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function M6n(e){if(typeof e=="string"){if(e=new URL(e),!fht(e.origin||e.protocol))throw new sD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new sD("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&P6n(e.port)===!1)throw new sD("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new sD("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new sD("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new sD("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new sD("Invalid URL origin: the origin must be a string or null/undefined.");if(!fht(e.origin||e.protocol))throw new sD("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),n&&n[0]!=="/"&&(n=`/${n}`),new URL(`${r}${n}`)}if(!fht(e.origin||e.protocol))throw new sD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function Iaa(e){if(e=M6n(e),e.pathname!=="/"||e.search||e.hash)throw new sD("invalid url");return e}function haa(e){if(e[0]==="["){let r=e.indexOf("]");return SYe(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function maa(e){if(!e)return null;SYe(typeof e=="string");let t=haa(e);return saa.isIP(t)?"":t}function Caa(e){return JSON.parse(JSON.stringify(e))}function _aa(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function H6n(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function Y6n(e){if(e==null)return 0;if(mht(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(O6n(e))return e.size!=null?e.size:null;if(J6n(e))return e.byteLength}return null}function Q6n(e){return e&&!!(e.destroyed||e[V6n]||hht.isDestroyed?.(e))}function yaa(e,t){e==null||!mht(e)||Q6n(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===iaa&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit("error",t)}),e.destroyed!==!0&&(e[V6n]=!0))}var baa=/timeout=(\d+)/;function Eaa(e){let t=e.toString().match(baa);return t?parseInt(t[1],10)*1e3:null}function X6n(e){return typeof e=="string"?uaa[e]??e.toLowerCase():W6n.lookup(e)??e.toString("latin1").toLowerCase()}function Saa(e){return W6n.lookup(e)??e.toString("latin1").toLowerCase()}function vaa(e,t){t===void 0&&(t={});for(let r=0;rl.toString("utf8")):o.toString("utf8")}}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function Baa(e){let t=e.length,r=new Array(t),n=!1,a=-1,o,l,A=0;for(let f=0;f{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()},type:"bytes"})}function xaa(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Gaa(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var Faa=typeof String.prototype.toWellFormed=="function",Zaa=typeof String.prototype.isWellFormed=="function";function U6n(e){return Faa?`${e}`.toWellFormed():aaa.toUSVString(e)}function Laa(e){return Zaa?`${e}`.isWellFormed():U6n(e)===`${e}`}function K6n(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function Vaa(e){if(e.length===0)return!1;for(let t=0;t{"use strict";var J0=Et("node:diagnostics_channel"),X0r=Et("node:util"),Cht=X0r.debuglog("undici"),Q0r=X0r.debuglog("fetch"),hhe=X0r.debuglog("websocket"),$6n=!1,Qaa={beforeConnect:J0.channel("undici:client:beforeConnect"),connected:J0.channel("undici:client:connected"),connectError:J0.channel("undici:client:connectError"),sendHeaders:J0.channel("undici:client:sendHeaders"),create:J0.channel("undici:request:create"),bodySent:J0.channel("undici:request:bodySent"),headers:J0.channel("undici:request:headers"),trailers:J0.channel("undici:request:trailers"),error:J0.channel("undici:request:error"),open:J0.channel("undici:websocket:open"),close:J0.channel("undici:websocket:close"),socketError:J0.channel("undici:websocket:socket_error"),ping:J0.channel("undici:websocket:ping"),pong:J0.channel("undici:websocket:pong")};if(Cht.enabled||Q0r.enabled){let e=Q0r.enabled?Q0r:Cht;J0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),J0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),J0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s using %s%s errored - %s",`${o}${a?`:${a}`:""}`,n,r,l.message)}),J0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)}),J0.channel("undici:request:headers").subscribe(t=>{let{request:{method:r,path:n,origin:a},response:{statusCode:o}}=t;e("received response to %s %s/%s - HTTP %d",r,a,n,o)}),J0.channel("undici:request:trailers").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("trailers received from %s %s/%s",r,a,n)}),J0.channel("undici:request:error").subscribe(t=>{let{request:{method:r,path:n,origin:a},error:o}=t;e("request to %s %s/%s errored - %s",r,a,n,o.message)}),$6n=!0}if(hhe.enabled){if(!$6n){let e=Cht.enabled?Cht:hhe;J0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),J0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),J0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s%s using %s%s errored - %s",o,a?`:${a}`:"",n,r,l.message)}),J0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)})}J0.channel("undici:websocket:open").subscribe(e=>{let{address:{address:t,port:r}}=e;hhe("connection opened %s%s",t,r?`:${r}`:"")}),J0.channel("undici:websocket:close").subscribe(e=>{let{websocket:t,code:r,reason:n}=e;hhe("closed connection to %s - %s %s",t.url,r,n)}),J0.channel("undici:websocket:socket_error").subscribe(e=>{hhe("connection errored - %s",e.message)}),J0.channel("undici:websocket:ping").subscribe(e=>{hhe("ping received")}),J0.channel("undici:websocket:pong").subscribe(e=>{hhe("pong received")})}ejn.exports={channels:Qaa}});var sjn=H((viu,ijn)=>{"use strict";var{InvalidArgumentError:GS,NotSupportedError:Xaa}=X0(),z$=Et("node:assert"),{isValidHTTPToken:njn,isValidHeaderValue:tjn,isStream:Jaa,destroy:Uaa,isBuffer:Kaa,isFormDataLike:jaa,isIterable:zaa,isBlobLike:qaa,buildURL:$aa,validateHandler:eca,getServerName:tca,normalizedMethodRecords:rca}=wm(),{channels:W8}=Gwe(),{headerNameLowerCasedRecord:rjn}=dht(),nca=/[^\u0021-\u00ff]/,VM=Symbol("handler"),J0r=class{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B,servername:F},Q){if(typeof r!="string")throw new GS("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new GS("path must be an absolute URL or start with a slash");if(nca.test(r))throw new GS("invalid request path");if(typeof n!="string")throw new GS("method must be a string");if(rca[n]===void 0&&!njn(n))throw new GS("invalid request method");if(I&&typeof I!="string")throw new GS("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new GS("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new GS("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new GS("invalid reset");if(B!=null&&typeof B!="boolean")throw new GS("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(Jaa(a)){this.body=a;let J=this.body._readableState;(!J||!J.autoDestroy)&&(this.endHandler=function(){Uaa(this)},this.body.on("end",this.endHandler)),this.errorHandler=ae=>{this.abort?this.abort(ae):this.error=ae},this.body.on("error",this.errorHandler)}else if(Kaa(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(jaa(a)||zaa(a)||qaa(a))this.body=a;else throw new GS("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?$aa(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new GS("headers array must be even");for(let J=0;J{"use strict";var ica=Et("node:events"),yht=class extends ica{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...t){let r=Array.isArray(t[0])?t[0]:t,n=this.dispatch.bind(this);for(let a of r)if(a!=null){if(typeof a!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof a}`);if(n=a(n),n==null||typeof n!="function"||n.length!==2)throw new TypeError("invalid interceptor")}return new U0r(this,n)}},U0r=class extends yht{#e=null;#t=null;constructor(t,r){super(),this.#e=t,this.#t=r}dispatch(...t){this.#t(...t)}close(...t){return this.#e.close(...t)}destroy(...t){return this.#e.destroy(...t)}};ojn.exports=yht});var Vwe=H((wiu,ajn)=>{"use strict";var sca=vYe(),{ClientDestroyedError:K0r,ClientClosedError:oca,InvalidArgumentError:Fwe}=X0(),{kDestroy:aca,kClose:cca,kClosed:BYe,kDestroyed:Zwe,kDispatch:j0r,kInterceptors:mhe}=R2(),q$=Symbol("onDestroyed"),Lwe=Symbol("onClosed"),bht=Symbol("Intercepted Dispatch"),z0r=class extends sca{constructor(){super(),this[Zwe]=!1,this[q$]=null,this[BYe]=!1,this[Lwe]=[]}get destroyed(){return this[Zwe]}get closed(){return this[BYe]}get interceptors(){return this[mhe]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[mhe][r]!="function")throw new Fwe("interceptor must be an function")}this[mhe]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new Fwe("invalid callback");if(this[Zwe]){queueMicrotask(()=>t(new K0r,null));return}if(this[BYe]){this[Lwe]?this[Lwe].push(t):queueMicrotask(()=>t(null,null));return}this[BYe]=!0,this[Lwe].push(t);let r=()=>{let n=this[Lwe];this[Lwe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new Fwe("invalid callback");if(this[Zwe]){this[q$]?this[q$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new K0r),this[Zwe]=!0,this[q$]=this[q$]||[],this[q$].push(r);let n=()=>{let a=this[q$];this[q$]=null;for(let o=0;o{queueMicrotask(n)})}[bht](t,r){if(!this[mhe]||this[mhe].length===0)return this[bht]=this[j0r],this[j0r](t,r);let n=this[j0r].bind(this);for(let a=this[mhe].length-1;a>=0;a--)n=this[mhe][a](n);return this[bht]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new Fwe("handler must be an object");try{if(!t||typeof t!="object")throw new Fwe("opts must be an object.");if(this[Zwe]||this[q$])throw new K0r;if(this[BYe])throw new oca;return this[bht](t,r)}catch(n){if(typeof r.onError!="function")throw new Fwe("invalid onError method");return r.onError(n),!1}}};ajn.exports=z0r});var iyr=H((Tiu,gjn)=>{"use strict";var Wwe=0,q0r=1e3,$0r=(q0r>>1)-1,$$,eyr=Symbol("kFastTimer"),eee=[],tyr=-2,ryr=-1,ljn=0,cjn=1;function nyr(){Wwe+=$0r;let e=0,t=eee.length;for(;e=r._idleStart+r._idleTimeout&&(r._state=ryr,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===ryr?(r._state=tyr,--t!==0&&(eee[e]=eee[t])):++e}eee.length=t,eee.length!==0&&ujn()}function ujn(){$$?$$.refresh():(clearTimeout($$),$$=setTimeout(nyr,$0r),$$.unref&&$$.unref())}var Eht=class{[eyr]=!0;_state=tyr;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(t,r,n){this._onTimeout=t,this._idleTimeout=r,this._timerArg=n,this.refresh()}refresh(){this._state===tyr&&eee.push(this),(!$$||eee.length===1)&&ujn(),this._state=ljn}clear(){this._state=ryr,this._idleStart=-1}};gjn.exports={setTimeout(e,t,r){return t<=q0r?setTimeout(e,t,r):new Eht(e,t,r)},clearTimeout(e){e[eyr]?e.clear():clearTimeout(e)},setFastTimeout(e,t,r){return new Eht(e,t,r)},clearFastTimeout(e){e.clear()},now(){return Wwe},tick(e=0){Wwe+=e-q0r+1,nyr(),nyr()},reset(){Wwe=0,eee.length=0,clearTimeout($$),$$=null},kFastTimer:eyr}});var wYe=H((Diu,Ijn)=>{"use strict";var lca=Et("node:net"),Ajn=Et("node:assert"),fjn=wm(),{InvalidArgumentError:uca,ConnectTimeoutError:gca}=X0(),Sht=iyr();function djn(){}var syr,oyr;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?oyr=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function Aca({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,session:a,...o}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new uca("maxCachedSessions must be a positive integer or zero");let l={path:r,...o},A=new oyr(t??100);return n=n??1e4,e=e??!1,function({hostname:I,host:C,protocol:b,port:E,servername:N,localAddress:B,httpSocket:F},Q){let J;if(b==="https:"){syr||(syr=Et("node:tls")),N=N||l.servername||fjn.getServerName(C)||null;let ne=N||I;Ajn(ne);let ce=a||A.get(ne)||null;E=E||443,J=syr.connect({highWaterMark:16384,...l,servername:N,session:ce,localAddress:B,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:F,port:E,host:I}),J.on("session",function(fe){A.set(ne,fe)})}else Ajn(!F,"httpSocket can only be sent on TLS update"),E=E||80,J=lca.connect({highWaterMark:64*1024,...l,localAddress:B,port:E,host:I});if(l.keepAlive==null||l.keepAlive){let ne=l.keepAliveInitialDelay===void 0?6e4:l.keepAliveInitialDelay;J.setKeepAlive(!0,ne)}let ae=dca(new WeakRef(J),{timeout:n,hostname:I,port:E});return J.setNoDelay(!0).once(b==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(ae),Q){let ne=Q;Q=null,ne(null,this)}}).on("error",function(ne){if(queueMicrotask(ae),Q){let ce=Q;Q=null,ce(ne)}}),J}}var dca=process.platform==="win32"?(e,t)=>{if(!t.timeout)return djn;let r=null,n=null,a=Sht.setFastTimeout(()=>{r=setImmediate(()=>{n=setImmediate(()=>pjn(e.deref(),t))})},t.timeout);return()=>{Sht.clearFastTimeout(a),clearImmediate(r),clearImmediate(n)}}:(e,t)=>{if(!t.timeout)return djn;let r=null,n=Sht.setFastTimeout(()=>{r=setImmediate(()=>{pjn(e.deref(),t)})},t.timeout);return()=>{Sht.clearFastTimeout(n),clearImmediate(r)}};function pjn(e,t){let r="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${t.hostname}:${t.port},`,r+=` timeout: ${t.timeout}ms)`,fjn.destroy(e,new gca(r))}Ijn.exports=Aca});var hjn=H(vht=>{"use strict";Object.defineProperty(vht,"__esModule",{value:!0});vht.enumToMap=void 0;function pca(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}vht.enumToMap=pca});var mjn=H(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.SPECIAL_HEADERS=Gu.HEADER_STATE=Gu.MINOR=Gu.MAJOR=Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS=Gu.TOKEN=Gu.STRICT_TOKEN=Gu.HEX=Gu.URL_CHAR=Gu.STRICT_URL_CHAR=Gu.USERINFO_CHARS=Gu.MARK=Gu.ALPHANUM=Gu.NUM=Gu.HEX_MAP=Gu.NUM_MAP=Gu.ALPHA=Gu.FINISH=Gu.H_METHOD_MAP=Gu.METHOD_MAP=Gu.METHODS_RTSP=Gu.METHODS_ICE=Gu.METHODS_HTTP=Gu.METHODS=Gu.LENIENT_FLAGS=Gu.FLAGS=Gu.TYPE=Gu.ERROR=void 0;var fca=hjn(),Ica;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(Ica=Gu.ERROR||(Gu.ERROR={}));var hca;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(hca=Gu.TYPE||(Gu.TYPE={}));var mca;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(mca=Gu.FLAGS||(Gu.FLAGS={}));var Cca;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(Cca=Gu.LENIENT_FLAGS||(Gu.LENIENT_FLAGS={}));var Pp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Pp=Gu.METHODS||(Gu.METHODS={}));Gu.METHODS_HTTP=[Pp.DELETE,Pp.GET,Pp.HEAD,Pp.POST,Pp.PUT,Pp.CONNECT,Pp.OPTIONS,Pp.TRACE,Pp.COPY,Pp.LOCK,Pp.MKCOL,Pp.MOVE,Pp.PROPFIND,Pp.PROPPATCH,Pp.SEARCH,Pp.UNLOCK,Pp.BIND,Pp.REBIND,Pp.UNBIND,Pp.ACL,Pp.REPORT,Pp.MKACTIVITY,Pp.CHECKOUT,Pp.MERGE,Pp["M-SEARCH"],Pp.NOTIFY,Pp.SUBSCRIBE,Pp.UNSUBSCRIBE,Pp.PATCH,Pp.PURGE,Pp.MKCALENDAR,Pp.LINK,Pp.UNLINK,Pp.PRI,Pp.SOURCE];Gu.METHODS_ICE=[Pp.SOURCE];Gu.METHODS_RTSP=[Pp.OPTIONS,Pp.DESCRIBE,Pp.ANNOUNCE,Pp.SETUP,Pp.PLAY,Pp.PAUSE,Pp.TEARDOWN,Pp.GET_PARAMETER,Pp.SET_PARAMETER,Pp.REDIRECT,Pp.RECORD,Pp.FLUSH,Pp.GET,Pp.POST];Gu.METHOD_MAP=fca.enumToMap(Pp);Gu.H_METHOD_MAP={};Object.keys(Gu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(Gu.H_METHOD_MAP[e]=Gu.METHOD_MAP[e])});var _ca;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(_ca=Gu.FINISH||(Gu.FINISH={}));Gu.ALPHA=[];for(let e=65;e<=90;e++)Gu.ALPHA.push(String.fromCharCode(e)),Gu.ALPHA.push(String.fromCharCode(e+32));Gu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Gu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Gu.NUM=["0","1","2","3","4","5","6","7","8","9"];Gu.ALPHANUM=Gu.ALPHA.concat(Gu.NUM);Gu.MARK=["-","_",".","!","~","*","'","(",")"];Gu.USERINFO_CHARS=Gu.ALPHANUM.concat(Gu.MARK).concat(["%",";",":","&","=","+","$",","]);Gu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Gu.ALPHANUM);Gu.URL_CHAR=Gu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)Gu.URL_CHAR.push(e);Gu.HEX=Gu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Gu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Gu.ALPHANUM);Gu.TOKEN=Gu.STRICT_TOKEN.concat([" "]);Gu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&Gu.HEADER_CHARS.push(e);Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS.filter(e=>e!==44);Gu.MAJOR=Gu.NUM_MAP;Gu.MINOR=Gu.MAJOR;var Owe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(Owe=Gu.HEADER_STATE||(Gu.HEADER_STATE={}));Gu.SPECIAL_HEADERS={connection:Owe.CONNECTION,"content-length":Owe.CONTENT_LENGTH,"proxy-connection":Owe.CONNECTION,"transfer-encoding":Owe.TRANSFER_ENCODING,upgrade:Owe.UPGRADE}});var ayr=H((Giu,Cjn)=>{"use strict";var{Buffer:yca}=Et("node:buffer");Cjn.exports=yca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var yjn=H((Fiu,_jn)=>{"use strict";var{Buffer:bca}=Et("node:buffer");_jn.exports=bca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEVDF8LQZIBIQMgASAERg2aAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGhzwBqLQAARw1dIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAybAgsgAkEANgIAIAZBAWohAUEeDF4LIAEgBEYEQEGTASEDDJoCCyABLQAAQcwARw1bIAFBAWohAUEKDF0LIAEgBEYEQEGUASEDDJkCCwJAAkAgAS0AAEHBAGsODwBcXFxcXFxcXFxcXFxcAVwLIAFBAWohAUH+ACEDDIACCyABQQFqIQFB/wAhAwz/AQsgASAERgRAQZUBIQMMmAILAkACQCABLQAAQcEAaw4DAFsBWwsgAUEBaiEBQf0AIQMM/wELIAFBAWohAUGAASEDDP4BC0GWASEDIAEgBEYNlgIgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBp88Aai0AAEcNWSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMlwILIAJBADYCACAGQQFqIQFBCwxaCyABIARGBEBBlwEhAwyWAgsCQAJAAkACQCABLQAAQS1rDiMAW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1sBW1tbW1sCW1tbA1sLIAFBAWohAUH7ACEDDP8BCyABQQFqIQFB/AAhAwz+AQsgAUEBaiEBQYEBIQMM/QELIAFBAWohAUGCASEDDPwBC0GYASEDIAEgBEYNlAIgAigCACIAIAQgAWtqIQUgASAAa0EEaiEGAkADQCABLQAAIABBqc8Aai0AAEcNVyAAQQRGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMlQILIAJBADYCACAGQQFqIQFBGQxYC0GZASEDIAEgBEYNkwIgAigCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBrs8Aai0AAEcNViAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMlAILIAJBADYCACAGQQFqIQFBBgxXC0GaASEDIAEgBEYNkgIgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBtM8Aai0AAEcNVSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMkwILIAJBADYCACAGQQFqIQFBHAxWC0GbASEDIAEgBEYNkQIgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBts8Aai0AAEcNVCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMkgILIAJBADYCACAGQQFqIQFBJwxVCyABIARGBEBBnAEhAwyRAgsCQAJAIAEtAABB1ABrDgIAAVQLIAFBAWohAUGGASEDDPgBCyABQQFqIQFBhwEhAwz3AQtBnQEhAyABIARGDY8CIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjPAGotAABHDVIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADJACCyACQQA2AgAgBkEBaiEBQSYMUwtBngEhAyABIARGDY4CIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbrPAGotAABHDVEgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADI8CCyACQQA2AgAgBkEBaiEBQQMMUgtBnwEhAyABIARGDY0CIAIoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQe3PAGotAABHDVAgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADI4CCyACQQA2AgAgBkEBaiEBQQwMUQtBoAEhAyABIARGDYwCIAIoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQbzPAGotAABHDU8gAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADI0CCyACQQA2AgAgBkEBaiEBQQ0MUAsgASAERgRAQaEBIQMMjAILAkACQCABLQAAQcYAaw4LAE9PT09PT09PTwFPCyABQQFqIQFBiwEhAwzzAQsgAUEBaiEBQYwBIQMM8gELIAEgBEYEQEGiASEDDIsCCyABLQAAQdAARw1MIAFBAWohAQxGCyABIARGBEBBowEhAwyKAgsCQAJAIAEtAABByQBrDgcBTU1NTU0ATQsgAUEBaiEBQY4BIQMM8QELIAFBAWohAUEiDE0LQaQBIQMgASAERg2IAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHAzwBqLQAARw1LIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyJAgsgAkEANgIAIAZBAWohAUEdDEwLIAEgBEYEQEGlASEDDIgCCwJAAkAgAS0AAEHSAGsOAwBLAUsLIAFBAWohAUGQASEDDO8BCyABQQFqIQFBBAxLCyABIARGBEBBpgEhAwyHAgsCQAJAAkACQAJAIAEtAABBwQBrDhUATU1NTU1NTU1NTQFNTQJNTQNNTQRNCyABQQFqIQFBiAEhAwzxAQsgAUEBaiEBQYkBIQMM8AELIAFBAWohAUGKASEDDO8BCyABQQFqIQFBjwEhAwzuAQsgAUEBaiEBQZEBIQMM7QELQacBIQMgASAERg2FAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHtzwBqLQAARw1IIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyGAgsgAkEANgIAIAZBAWohAUERDEkLQagBIQMgASAERg2EAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHCzwBqLQAARw1HIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyFAgsgAkEANgIAIAZBAWohAUEsDEgLQakBIQMgASAERg2DAiACKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHFzwBqLQAARw1GIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyEAgsgAkEANgIAIAZBAWohAUErDEcLQaoBIQMgASAERg2CAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHKzwBqLQAARw1FIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyDAgsgAkEANgIAIAZBAWohAUEUDEYLIAEgBEYEQEGrASEDDIICCwJAAkACQAJAIAEtAABBwgBrDg8AAQJHR0dHR0dHR0dHRwNHCyABQQFqIQFBkwEhAwzrAQsgAUEBaiEBQZQBIQMM6gELIAFBAWohAUGVASEDDOkBCyABQQFqIQFBlgEhAwzoAQsgASAERgRAQawBIQMMgQILIAEtAABBxQBHDUIgAUEBaiEBDD0LQa0BIQMgASAERg3/ASACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHNzwBqLQAARw1CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyAAgsgAkEANgIAIAZBAWohAUEODEMLIAEgBEYEQEGuASEDDP8BCyABLQAAQdAARw1AIAFBAWohAUElDEILQa8BIQMgASAERg39ASACKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEHQzwBqLQAARw1AIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAz+AQsgAkEANgIAIAZBAWohAUEqDEELIAEgBEYEQEGwASEDDP0BCwJAAkAgAS0AAEHVAGsOCwBAQEBAQEBAQEABQAsgAUEBaiEBQZoBIQMM5AELIAFBAWohAUGbASEDDOMBCyABIARGBEBBsQEhAwz8AQsCQAJAIAEtAABBwQBrDhQAPz8/Pz8/Pz8/Pz8/Pz8/Pz8/AT8LIAFBAWohAUGZASEDDOMBCyABQQFqIQFBnAEhAwziAQtBsgEhAyABIARGDfoBIAIoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQdnPAGotAABHDT0gAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADPsBCyACQQA2AgAgBkEBaiEBQSEMPgtBswEhAyABIARGDfkBIAIoAgAiACAEIAFraiEFIAEgAGtBBmohBgJAA0AgAS0AACAAQd3PAGotAABHDTwgAEEGRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADPoBCyACQQA2AgAgBkEBaiEBQRoMPQsgASAERgRAQbQBIQMM+QELAkACQAJAIAEtAABBxQBrDhEAPT09PT09PT09AT09PT09Aj0LIAFBAWohAUGdASEDDOEBCyABQQFqIQFBngEhAwzgAQsgAUEBaiEBQZ8BIQMM3wELQbUBIQMgASAERg33ASACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHkzwBqLQAARw06IABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAz4AQsgAkEANgIAIAZBAWohAUEoDDsLQbYBIQMgASAERg32ASACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHqzwBqLQAARw05IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAz3AQsgAkEANgIAIAZBAWohAUEHDDoLIAEgBEYEQEG3ASEDDPYBCwJAAkAgAS0AAEHFAGsODgA5OTk5OTk5OTk5OTkBOQsgAUEBaiEBQaEBIQMM3QELIAFBAWohAUGiASEDDNwBC0G4ASEDIAEgBEYN9AEgAigCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABB7c8Aai0AAEcNNyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM9QELIAJBADYCACAGQQFqIQFBEgw4C0G5ASEDIAEgBEYN8wEgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABB8M8Aai0AAEcNNiAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM9AELIAJBADYCACAGQQFqIQFBIAw3C0G6ASEDIAEgBEYN8gEgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABB8s8Aai0AAEcNNSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM8wELIAJBADYCACAGQQFqIQFBDww2CyABIARGBEBBuwEhAwzyAQsCQAJAIAEtAABByQBrDgcANTU1NTUBNQsgAUEBaiEBQaUBIQMM2QELIAFBAWohAUGmASEDDNgBC0G8ASEDIAEgBEYN8AEgAigCACIAIAQgAWtqIQUgASAAa0EHaiEGAkADQCABLQAAIABB9M8Aai0AAEcNMyAAQQdGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM8QELIAJBADYCACAGQQFqIQFBGww0CyABIARGBEBBvQEhAwzwAQsCQAJAAkAgAS0AAEHCAGsOEgA0NDQ0NDQ0NDQBNDQ0NDQ0AjQLIAFBAWohAUGkASEDDNgBCyABQQFqIQFBpwEhAwzXAQsgAUEBaiEBQagBIQMM1gELIAEgBEYEQEG+ASEDDO8BCyABLQAAQc4ARw0wIAFBAWohAQwsCyABIARGBEBBvwEhAwzuAQsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABLQAAQcEAaw4VAAECAz8EBQY/Pz8HCAkKCz8MDQ4PPwsgAUEBaiEBQegAIQMM4wELIAFBAWohAUHpACEDDOIBCyABQQFqIQFB7gAhAwzhAQsgAUEBaiEBQfIAIQMM4AELIAFBAWohAUHzACEDDN8BCyABQQFqIQFB9gAhAwzeAQsgAUEBaiEBQfcAIQMM3QELIAFBAWohAUH6ACEDDNwBCyABQQFqIQFBgwEhAwzbAQsgAUEBaiEBQYQBIQMM2gELIAFBAWohAUGFASEDDNkBCyABQQFqIQFBkgEhAwzYAQsgAUEBaiEBQZgBIQMM1wELIAFBAWohAUGgASEDDNYBCyABQQFqIQFBowEhAwzVAQsgAUEBaiEBQaoBIQMM1AELIAEgBEcEQCACQRA2AgggAiABNgIEQasBIQMM1AELQcABIQMM7AELQQAhAAJAIAIoAjgiA0UNACADKAI0IgNFDQAgAiADEQAAIQALIABFDV4gAEEVRw0HIAJB0QA2AhwgAiABNgIUIAJBsBc2AhAgAkEVNgIMQQAhAwzrAQsgAUEBaiABIARHDQgaQcIBIQMM6gELA0ACQCABLQAAQQprDgQIAAALAAsgBCABQQFqIgFHDQALQcMBIQMM6QELIAEgBEcEQCACQRE2AgggAiABNgIEQQEhAwzQAQtBxAEhAwzoAQsgASAERgRAQcUBIQMM6AELAkACQCABLQAAQQprDgQBKCgAKAsgAUEBagwJCyABQQFqDAULIAEgBEYEQEHGASEDDOcBCwJAAkAgAS0AAEEKaw4XAQsLAQsLCwsLCwsLCwsLCwsLCwsLCwALCyABQQFqIQELQbABIQMMzQELIAEgBEYEQEHIASEDDOYBCyABLQAAQSBHDQkgAkEAOwEyIAFBAWohAUGzASEDDMwBCwNAIAEhAAJAIAEgBEcEQCABLQAAQTBrQf8BcSIDQQpJDQEMJwtBxwEhAwzmAQsCQCACLwEyIgFBmTNLDQAgAiABQQpsIgU7ATIgBUH+/wNxIANB//8Dc0sNACAAQQFqIQEgAiADIAVqIgM7ATIgA0H//wNxQegHSQ0BCwtBACEDIAJBADYCHCACQcEJNgIQIAJBDTYCDCACIABBAWo2AhQM5AELIAJBADYCHCACIAE2AhQgAkHwDDYCECACQRs2AgxBACEDDOMBCyACKAIEIQAgAkEANgIEIAIgACABECYiAA0BIAFBAWoLIQFBrQEhAwzIAQsgAkHBATYCHCACIAA2AgwgAiABQQFqNgIUQQAhAwzgAQsgAigCBCEAIAJBADYCBCACIAAgARAmIgANASABQQFqCyEBQa4BIQMMxQELIAJBwgE2AhwgAiAANgIMIAIgAUEBajYCFEEAIQMM3QELIAJBADYCHCACIAE2AhQgAkGXCzYCECACQQ02AgxBACEDDNwBCyACQQA2AhwgAiABNgIUIAJB4xA2AhAgAkEJNgIMQQAhAwzbAQsgAkECOgAoDKwBC0EAIQMgAkEANgIcIAJBrws2AhAgAkECNgIMIAIgAUEBajYCFAzZAQtBAiEDDL8BC0ENIQMMvgELQSYhAwy9AQtBFSEDDLwBC0EWIQMMuwELQRghAwy6AQtBHCEDDLkBC0EdIQMMuAELQSAhAwy3AQtBISEDDLYBC0EjIQMMtQELQcYAIQMMtAELQS4hAwyzAQtBPSEDDLIBC0HLACEDDLEBC0HOACEDDLABC0HYACEDDK8BC0HZACEDDK4BC0HbACEDDK0BC0HxACEDDKwBC0H0ACEDDKsBC0GNASEDDKoBC0GXASEDDKkBC0GpASEDDKgBC0GvASEDDKcBC0GxASEDDKYBCyACQQA2AgALQQAhAyACQQA2AhwgAiABNgIUIAJB8Rs2AhAgAkEGNgIMDL0BCyACQQA2AgAgBkEBaiEBQSQLOgApIAIoAgQhACACQQA2AgQgAiAAIAEQJyIARQRAQeUAIQMMowELIAJB+QA2AhwgAiABNgIUIAIgADYCDEEAIQMMuwELIABBFUcEQCACQQA2AhwgAiABNgIUIAJBzA42AhAgAkEgNgIMQQAhAwy7AQsgAkH4ADYCHCACIAE2AhQgAkHKGDYCECACQRU2AgxBACEDDLoBCyACQQA2AhwgAiABNgIUIAJBjhs2AhAgAkEGNgIMQQAhAwy5AQsgAkEANgIcIAIgATYCFCACQf4RNgIQIAJBBzYCDEEAIQMMuAELIAJBADYCHCACIAE2AhQgAkGMHDYCECACQQc2AgxBACEDDLcBCyACQQA2AhwgAiABNgIUIAJBww82AhAgAkEHNgIMQQAhAwy2AQsgAkEANgIcIAIgATYCFCACQcMPNgIQIAJBBzYCDEEAIQMMtQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var TYe=H((Ziu,Rjn)=>{"use strict";var bjn=["GET","HEAD","POST"],Eca=new Set(bjn),Sca=[101,204,205,304],Ejn=[301,302,303,307,308],vca=new Set(Ejn),Sjn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],Bca=new Set(Sjn),vjn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],wca=new Set(vjn),Tca=["follow","manual","error"],Bjn=["GET","HEAD","OPTIONS","TRACE"],Rca=new Set(Bjn),Nca=["navigate","same-origin","no-cors","cors"],Dca=["omit","same-origin","include"],kca=["default","no-store","reload","no-cache","force-cache","only-if-cached"],xca=["content-encoding","content-language","content-location","content-type","content-length"],Gca=["half"],wjn=["CONNECT","TRACE","TRACK"],Fca=new Set(wjn),Tjn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Zca=new Set(Tjn);Rjn.exports={subresource:Tjn,forbiddenMethods:wjn,requestBodyHeader:xca,referrerPolicy:vjn,requestRedirect:Tca,requestMode:Nca,requestCredentials:Dca,requestCache:kca,redirectStatus:Ejn,corsSafeListedMethods:bjn,nullBodyStatus:Sca,safeMethods:Bjn,badPorts:Sjn,requestDuplex:Gca,subresourceSet:Zca,badPortsSet:Bca,redirectStatusSet:vca,corsSafeListedMethodsSet:Eca,safeMethodsSet:Rca,forbiddenMethodsSet:Fca,referrerPolicySet:wca}});var lyr=H((Liu,Njn)=>{"use strict";var cyr=Symbol.for("undici.globalOrigin.1");function Lca(){return globalThis[cyr]}function Vca(e){if(e===void 0){Object.defineProperty(globalThis,cyr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,cyr,{value:t,writable:!0,enumerable:!1,configurable:!1})}Njn.exports={getGlobalOrigin:Lca,setGlobalOrigin:Vca}});var oV=H((Viu,Ljn)=>{"use strict";var wht=Et("node:assert"),Wca=new TextEncoder,RYe=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Oca=/[\u000A\u000D\u0009\u0020]/,Pca=/[\u0009\u000A\u000C\u000D\u0020]/g,Mca=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Hca(e){wht(e.protocol==="data:");let t=xjn(e,!0);t=t.slice(5);let r={position:0},n=Pwe(",",t,r),a=n.length;if(n=Kca(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=Gjn(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=Zjn(l);if(l=Qca(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=uyr(n);return A==="failure"&&(A=uyr("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function xjn(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length,a=n===0?r:r.substring(0,r.length-n);return!n&&r.endsWith("#")?a.slice(0,-1):a}function Tht(e,t,r){let n="";for(;r.position=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function kjn(e){return e>=48&&e<=57?e-48:(e&223)-55}function Yca(e){let t=e.length,r=new Uint8Array(t),n=0;for(let a=0;ae.length)return"failure";t.position++;let n=Pwe(";",e,t);if(n=Bht(n,!1,!0),n.length===0||!RYe.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionOca.test(I),e,t);let A=Tht(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=Fjn(e,t,!0),Pwe(";",e,t);else if(f=Pwe(";",e,t),f=Bht(f,!1,!0),f.length===0)continue;A.length!==0&&RYe.test(A)&&(f.length===0||Mca.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function Qca(e){e=e.replace(Pca,"");let t=e.length;if(t%4===0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4===1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return"failure";let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function Fjn(e,t,r){let n=t.position,a="";for(wht(e[t.position]==='"'),t.position++;a+=Tht(l=>l!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{wht(o==='"');break}}return r?a:e.slice(n,t.position)}function Xca(e){wht(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",RYe.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function Jca(e){return e===13||e===10||e===9||e===32}function Bht(e,t=!0,r=!0){return gyr(e,t,r,Jca)}function Uca(e){return e===13||e===10||e===9||e===12||e===32}function Kca(e,t=!0,r=!0){return gyr(e,t,r,Uca)}function gyr(e,t,r,n){let a=0,o=e.length-1;if(t)for(;a0&&n(e.charCodeAt(o));)o--;return a===0&&o===e.length-1?e:e.slice(a,o+1)}function Zjn(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let r="",n=0,a=65535;for(;nt&&(a=t-n),r+=String.fromCharCode.apply(null,e.subarray(n,n+=a));return r}function jca(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}Ljn.exports={dataURLProcessor:Hca,URLSerializer:xjn,collectASequenceOfCodePoints:Tht,collectASequenceOfCodePointsFast:Pwe,stringPercentDecode:Gjn,parseMIMEType:uyr,collectAnHTTPQuotedString:Fjn,serializeAMimeType:Xca,removeChars:gyr,removeHTTPWhitespace:Bht,minimizeSupportedMimeType:jca,HTTP_TOKEN_CODEPOINTS:RYe,isomorphicDecode:Zjn}});var Lk=H((Wiu,Vjn)=>{"use strict";var{types:O8,inspect:zca}=Et("node:util"),{toUSVString:qca}=wm(),_u={};_u.converters={};_u.util={};_u.errors={};_u.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};_u.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return _u.errors.exception({header:e.prefix,message:r})};_u.errors.invalidArgument=function(e){return _u.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};_u.brandCheck=function(e,t,r){if(r?.strict!==!1){if(!(e instanceof t)){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}}else if(e?.[Symbol.toStringTag]!==t.prototype[Symbol.toStringTag]){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}};_u.argumentLengthCheck=function({length:e},t,r){if(ea)throw _u.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n?.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=_u.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};_u.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};_u.util.Stringify=function(e){switch(_u.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return zca(e);case"String":return`"${e}"`;default:return`${e}`}};_u.sequenceConverter=function(e){return(t,r,n,a)=>{if(_u.util.Type(t)!=="Object")throw _u.errors.exception({header:r,message:`${n} (${_u.util.Stringify(t)}) is not iterable.`});let o=typeof a=="function"?a():t?.[Symbol.iterator]?.(),l=[],A=0;if(o===void 0||typeof o.next!="function")throw _u.errors.exception({header:r,message:`${n} is not iterable.`});for(;;){let{done:f,value:I}=o.next();if(f)break;l.push(e(I,r,`${n}[${A++}]`))}return l}};_u.recordConverter=function(e,t){return(r,n,a)=>{if(_u.util.Type(r)!=="Object")throw _u.errors.exception({header:n,message:`${a} ("${_u.util.Type(r)}") is not an Object.`});let o={};if(!O8.isProxy(r)){let A=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let f of A){let I=e(f,n,a),C=t(r[f],n,a);o[I]=C}return o}let l=Reflect.ownKeys(r);for(let A of l)if(Reflect.getOwnPropertyDescriptor(r,A)?.enumerable){let I=e(A,n,a),C=t(r[A],n,a);o[I]=C}return o}};_u.interfaceConverter=function(e){return(t,r,n,a)=>{if(a?.strict!==!1&&!(t instanceof e))throw _u.errors.exception({header:r,message:`Expected ${n} ("${_u.util.Stringify(t)}") to be an instance of ${e.name}.`});return t}};_u.dictionaryConverter=function(e){return(t,r,n)=>{let a=_u.util.Type(t),o={};if(a==="Null"||a==="Undefined")return o;if(a!=="Object")throw _u.errors.exception({header:r,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let l of e){let{key:A,defaultValue:f,required:I,converter:C}=l;if(I===!0&&!Object.hasOwn(t,A))throw _u.errors.exception({header:r,message:`Missing required key "${A}".`});let b=t[A],E=Object.hasOwn(l,"defaultValue");if(E&&b!==null&&(b??=f()),I||E||b!==void 0){if(b=C(b,r,`${n}.${A}`),l.allowedValues&&!l.allowedValues.includes(b))throw _u.errors.exception({header:r,message:`${b} is not an accepted type. Expected one of ${l.allowedValues.join(", ")}.`});o[A]=b}}return o}};_u.nullableConverter=function(e){return(t,r,n)=>t===null?t:e(t,r,n)};_u.converters.DOMString=function(e,t,r,n){if(e===null&&n?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw _u.errors.exception({header:t,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(e)};_u.converters.ByteString=function(e,t,r){let n=_u.converters.DOMString(e,t,r);for(let a=0;a255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${n.charCodeAt(a)} which is greater than 255.`);return n};_u.converters.USVString=qca;_u.converters.boolean=function(e){return!!e};_u.converters.any=function(e){return e};_u.converters["long long"]=function(e,t,r){return _u.util.ConvertToInt(e,64,"signed",void 0,t,r)};_u.converters["unsigned long long"]=function(e,t,r){return _u.util.ConvertToInt(e,64,"unsigned",void 0,t,r)};_u.converters["unsigned long"]=function(e,t,r){return _u.util.ConvertToInt(e,32,"unsigned",void 0,t,r)};_u.converters["unsigned short"]=function(e,t,r,n){return _u.util.ConvertToInt(e,16,"unsigned",n,t,r)};_u.converters.ArrayBuffer=function(e,t,r,n){if(_u.util.Type(e)!=="Object"||!O8.isAnyArrayBuffer(e))throw _u.errors.conversionFailed({prefix:t,argument:`${r} ("${_u.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(n?.allowShared===!1&&O8.isSharedArrayBuffer(e))throw _u.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw _u.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};_u.converters.TypedArray=function(e,t,r,n,a){if(_u.util.Type(e)!=="Object"||!O8.isTypedArray(e)||e.constructor.name!==t.name)throw _u.errors.conversionFailed({prefix:r,argument:`${n} ("${_u.util.Stringify(e)}")`,types:[t.name]});if(a?.allowShared===!1&&O8.isSharedArrayBuffer(e.buffer))throw _u.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw _u.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};_u.converters.DataView=function(e,t,r,n){if(_u.util.Type(e)!=="Object"||!O8.isDataView(e))throw _u.errors.exception({header:t,message:`${r} is not a DataView.`});if(n?.allowShared===!1&&O8.isSharedArrayBuffer(e.buffer))throw _u.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw _u.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};_u.converters.BufferSource=function(e,t,r,n){if(O8.isAnyArrayBuffer(e))return _u.converters.ArrayBuffer(e,t,r,{...n,allowShared:!1});if(O8.isTypedArray(e))return _u.converters.TypedArray(e,e.constructor,t,r,{...n,allowShared:!1});if(O8.isDataView(e))return _u.converters.DataView(e,t,r,{...n,allowShared:!1});throw _u.errors.conversionFailed({prefix:t,argument:`${r} ("${_u.util.Stringify(e)}")`,types:["BufferSource"]})};_u.converters["sequence"]=_u.sequenceConverter(_u.converters.ByteString);_u.converters["sequence>"]=_u.sequenceConverter(_u.converters["sequence"]);_u.converters["record"]=_u.recordConverter(_u.converters.ByteString,_u.converters.ByteString);Vjn.exports={webidl:_u}});var sP=H((Oiu,qjn)=>{"use strict";var{Transform:$ca}=Et("node:stream"),Wjn=Et("node:zlib"),{redirectStatusSet:ela,referrerPolicySet:tla,badPortsSet:rla}=TYe(),{getGlobalOrigin:Ojn}=lyr(),{collectASequenceOfCodePoints:Che,collectAnHTTPQuotedString:nla,removeChars:ila,parseMIMEType:sla}=oV(),{performance:ola}=Et("node:perf_hooks"),{isBlobLike:ala,ReadableStreamFrom:cla,isValidHTTPToken:Pjn,normalizedMethodRecordsBase:lla}=wm(),_he=Et("node:assert"),{isUint8Array:ula}=Et("node:util/types"),{webidl:NYe}=Lk(),Mjn=[],Nht;try{Nht=Et("node:crypto");let e=["sha256","sha384","sha512"];Mjn=Nht.getHashes().filter(t=>e.includes(t))}catch{}function Hjn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function gla(e,t){if(!ela.has(e.status))return null;let r=e.headersList.get("location",!0);return r!==null&&Qjn(r)&&(Yjn(r)||(r=Ala(r)),r=new URL(r,Hjn(e))),r&&!r.hash&&(r.hash=t),r}function Yjn(e){for(let t=0;t126||r<32)return!1}return!0}function Ala(e){return Buffer.from(e,"binary").toString("utf8")}function kYe(e){return e.urlList[e.urlList.length-1]}function dla(e){let t=kYe(e);return jjn(t)&&rla.has(t.port)?"blocked":"allowed"}function pla(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function fla(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}var Ila=Pjn;function Qjn(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(` -`)||e.includes("\r")||e.includes("\0"))===!1}function hla(e,t){let{headersList:r}=t,n=(r.get("referrer-policy",!0)??"").split(","),a="";if(n.length>0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(tla.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function mla(){return"allowed"}function Cla(){return"success"}function _la(){return"success"}function yla(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t,!0)}function bla(e){let t=e.origin;if(!(t==="client"||t===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",t,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&dyr(e.origin)&&!dyr(kYe(e))&&(t=null);break;case"same-origin":Dht(e,kYe(e))||(t=null);break;default:}e.headersList.append("origin",t,!0)}}}function Mwe(e,t){return e}function Ela(e,t,r){return!e?.startTime||e.startTime4096&&(n=a);let o=Dht(e,n),l=DYe(n)&&!DYe(e.url);switch(t){case"origin":return a??Ayr(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=kYe(e);return Dht(n,A)?n:DYe(n)&&!DYe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function Ayr(e,t){return _he(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function DYe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function Tla(e,t){if(Nht===void 0)return!0;let r=Jjn(t);if(r==="no metadata"||r.length===0)return!0;let n=Nla(r),a=Dla(r,n);for(let o of a){let l=o.algo,A=o.hash,f=Nht.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),kla(f,A))return!0}return!1}var Rla=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function Jjn(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=Rla.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();Mjn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function Nla(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function Fla(e){return e.controller.state==="aborted"}function Zla(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function Lla(e){return lla[e.toLowerCase()]??e}function Vla(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return _he(typeof t=="string"),t}var Wla=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function Ujn(e,t,r=0,n=1){class a{#e;#t;#n;constructor(l,A){this.#e=l,this.#t=A,this.#n=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let l=this.#n,A=this.#e[t],f=A.length;if(l>=f)return{value:void 0,done:!0};let{[r]:I,[n]:C}=A[l];this.#n=l+1;let b;switch(this.#t){case"key":b=I;break;case"value":b=C;break;case"key+value":b=[I,C];break}return{value:b,done:!1}}}return delete a.prototype.constructor,Object.setPrototypeOf(a.prototype,Wla),Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,l){return new a(o,l)}}function Ola(e,t,r,n=0,a=1){let o=Ujn(e,r,n,a),l={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return NYe.brandCheck(this,t),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return NYe.brandCheck(this,t),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return NYe.brandCheck(this,t),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(f,I=globalThis){if(NYe.brandCheck(this,t),NYe.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof f!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:C,1:b}of o(this,"key+value"))f.call(I,b,C,this)}}};return Object.defineProperties(t.prototype,{...l,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:l.entries.value}})}async function Pla(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{n(await Kjn(o))}catch(l){a(l)}}function Mla(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function Hla(e){try{e.close(),e.byobRequest?.respond(0)}catch(t){if(!t.message.includes("Controller is already closed")&&!t.message.includes("ReadableStream is already closed"))throw t}}var Yla=/[^\x00-\xFF]/;function Rht(e){return _he(!Yla.test(e)),e}async function Kjn(e){let t=[],r=0;for(;;){let{done:n,value:a}=await e.read();if(n)return Buffer.concat(t,r);if(!ula(a))throw new TypeError("Received non-Uint8Array chunk");t.push(a),r+=a.length}}function Qla(e){_he("protocol"in e);let t=e.protocol;return t==="about:"||t==="blob:"||t==="data:"}function dyr(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function jjn(e){_he("protocol"in e);let t=e.protocol;return t==="http:"||t==="https:"}function Xla(e,t){let r=e;if(!r.startsWith("bytes"))return"failure";let n={position:5};if(t&&Che(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==61)return"failure";n.position++,t&&Che(f=>f===" "||f===" ",r,n);let a=Che(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),o=a.length?Number(a):null;if(t&&Che(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==45)return"failure";n.position++,t&&Che(f=>f===" "||f===" ",r,n);let l=Che(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),A=l.length?Number(l):null;return n.positionA?"failure":{rangeStartValue:o,rangeEndValue:A}}function Jla(e,t,r){let n="bytes ";return n+=Rht(`${e}`),n+="-",n+=Rht(`${t}`),n+="/",n+=Rht(`${r}`),n}var pyr=class extends $ca{#e;constructor(t){super(),this.#e=t}_transform(t,r,n){if(!this._inflateStream){if(t.length===0){n();return}this._inflateStream=(t[0]&15)===8?Wjn.createInflate(this.#e):Wjn.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(t,r,n)}_final(t){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),t()}};function Ula(e){return new pyr(e)}function Kla(e){let t=null,r=null,n=null,a=zjn("content-type",e);if(a===null)return"failure";for(let o of a){let l=sla(o);l==="failure"||l.essence==="*/*"||(n=l,n.essence!==r?(t=null,n.parameters.has("charset")&&(t=n.parameters.get("charset")),r=n.essence):!n.parameters.has("charset")&&t!==null&&n.parameters.set("charset",t))}return n??"failure"}function jla(e){let t=e,r={position:0},n=[],a="";for(;r.positiono!=='"'&&o!==",",t,r),r.positiono===9||o===32),n.push(a),a=""}return n}function zjn(e,t){let r=t.get(e,!0);return r===null?null:jla(r)}var zla=new TextDecoder;function qla(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),zla.decode(e))}var fyr=class{get baseUrl(){return Ojn()}get origin(){return this.baseUrl?.origin}policyContainer=Xjn()},Iyr=class{settingsObject=new fyr},$la=new Iyr;qjn.exports={isAborted:Fla,isCancelled:Zla,isValidEncodedURL:Yjn,createDeferredPromise:Gla,ReadableStreamFrom:cla,tryUpgradeRequestToAPotentiallyTrustworthyURL:xla,clampAndCoarsenConnectionTimingInfo:Ela,coarsenedSharedCurrentTime:Sla,determineRequestsReferrer:wla,makePolicyContainer:Xjn,clonePolicyContainer:Bla,appendFetchMetadata:yla,appendRequestOriginHeader:bla,TAOCheck:_la,corsCheck:Cla,crossOriginResourcePolicyCheck:mla,createOpaqueTimingInfo:vla,setRequestReferrerPolicyOnRedirect:hla,isValidHTTPToken:Pjn,requestBadPort:dla,requestCurrentURL:kYe,responseURL:Hjn,responseLocationURL:gla,isBlobLike:ala,isURLPotentiallyTrustworthy:DYe,isValidReasonPhrase:fla,sameOrigin:Dht,normalizeMethod:Lla,serializeJavascriptValueToJSONString:Vla,iteratorMixin:Ola,createIterator:Ujn,isValidHeaderName:Ila,isValidHeaderValue:Qjn,isErrorLike:pla,fullyReadBody:Pla,bytesMatch:Tla,isReadableStreamLike:Mla,readableStreamClose:Hla,isomorphicEncode:Rht,urlIsLocal:Qla,urlHasHttpsScheme:dyr,urlIsHttpHttpsScheme:jjn,readAllBytes:Kjn,simpleRangeHeaderValue:Xla,buildContentRange:Jla,parseMetadata:Jjn,createInflate:Ula,extractMimeType:Kla,getDecodeSplit:zjn,utf8DecodeBytes:qla,environmentSettingsObject:$la}});var hae=H((Piu,$jn)=>{"use strict";$jn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var myr=H((Miu,e7n)=>{"use strict";var{Blob:eua,File:tua}=Et("node:buffer"),{kState:tee}=hae(),{webidl:P8}=Lk(),hyr=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[tee]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return P8.brandCheck(this,e),this[tee].blobLike.stream(...t)}arrayBuffer(...t){return P8.brandCheck(this,e),this[tee].blobLike.arrayBuffer(...t)}slice(...t){return P8.brandCheck(this,e),this[tee].blobLike.slice(...t)}text(...t){return P8.brandCheck(this,e),this[tee].blobLike.text(...t)}get size(){return P8.brandCheck(this,e),this[tee].blobLike.size}get type(){return P8.brandCheck(this,e),this[tee].blobLike.type}get name(){return P8.brandCheck(this,e),this[tee].name}get lastModified(){return P8.brandCheck(this,e),this[tee].lastModified}get[Symbol.toStringTag](){return"File"}};P8.converters.Blob=P8.interfaceConverter(eua);function rua(e){return e instanceof tua||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}e7n.exports={FileLike:hyr,isFileLike:rua}});var GYe=H((Hiu,s7n)=>{"use strict";var{isBlobLike:kht,iteratorMixin:nua}=sP(),{kState:XZ}=hae(),{kEnumerableProperty:Hwe}=wm(),{FileLike:t7n,isFileLike:iua}=myr(),{webidl:H1}=Lk(),{File:i7n}=Et("node:buffer"),r7n=Et("node:util"),n7n=globalThis.File??i7n,xYe=class e{constructor(t){if(t!==void 0)throw H1.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[XZ]=[]}append(t,r,n=void 0){H1.brandCheck(this,e);let a="FormData.append";if(H1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!kht(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=H1.converters.USVString(t,a,"name"),r=kht(r)?H1.converters.Blob(r,a,"value",{strict:!1}):H1.converters.USVString(r,a,"value"),n=arguments.length===3?H1.converters.USVString(n,a,"filename"):void 0;let o=Cyr(t,r,n);this[XZ].push(o)}delete(t){H1.brandCheck(this,e);let r="FormData.delete";H1.argumentLengthCheck(arguments,1,r),t=H1.converters.USVString(t,r,"name"),this[XZ]=this[XZ].filter(n=>n.name!==t)}get(t){H1.brandCheck(this,e);let r="FormData.get";H1.argumentLengthCheck(arguments,1,r),t=H1.converters.USVString(t,r,"name");let n=this[XZ].findIndex(a=>a.name===t);return n===-1?null:this[XZ][n].value}getAll(t){H1.brandCheck(this,e);let r="FormData.getAll";return H1.argumentLengthCheck(arguments,1,r),t=H1.converters.USVString(t,r,"name"),this[XZ].filter(n=>n.name===t).map(n=>n.value)}has(t){H1.brandCheck(this,e);let r="FormData.has";return H1.argumentLengthCheck(arguments,1,r),t=H1.converters.USVString(t,r,"name"),this[XZ].findIndex(n=>n.name===t)!==-1}set(t,r,n=void 0){H1.brandCheck(this,e);let a="FormData.set";if(H1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!kht(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=H1.converters.USVString(t,a,"name"),r=kht(r)?H1.converters.Blob(r,a,"name",{strict:!1}):H1.converters.USVString(r,a,"name"),n=arguments.length===3?H1.converters.USVString(n,a,"name"):void 0;let o=Cyr(t,r,n),l=this[XZ].findIndex(A=>A.name===t);l!==-1?this[XZ]=[...this[XZ].slice(0,l),o,...this[XZ].slice(l+1).filter(A=>A.name!==t)]:this[XZ].push(o)}[r7n.inspect.custom](t,r){let n=this[XZ].reduce((o,l)=>(o[l.name]?Array.isArray(o[l.name])?o[l.name].push(l.value):o[l.name]=[o[l.name],l.value]:o[l.name]=l.value,o),{__proto__:null});r.depth??=t,r.colors??=!0;let a=r7n.formatWithOptions(r,n);return`FormData ${a.slice(a.indexOf("]")+2)}`}};nua("FormData",xYe,XZ,"name","value");Object.defineProperties(xYe.prototype,{append:Hwe,delete:Hwe,get:Hwe,getAll:Hwe,has:Hwe,set:Hwe,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Cyr(e,t,r){if(typeof t!="string"){if(iua(t)||(t=t instanceof Blob?new n7n([t],"blob",{type:t.type}):new t7n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=t instanceof i7n?new n7n([t],r,n):new t7n(t,r,n)}}return{name:e,value:t}}s7n.exports={FormData:xYe,makeEntry:Cyr}});var g7n=H((Yiu,u7n)=>{"use strict";var{isUSVString:o7n,bufferToLowerCasedHeaderName:sua}=wm(),{utf8DecodeBytes:oua}=sP(),{HTTP_TOKEN_CODEPOINTS:aua,isomorphicDecode:a7n}=oV(),{isFileLike:cua}=myr(),{makeEntry:lua}=GYe(),xht=Et("node:assert"),{File:uua}=Et("node:buffer"),gua=globalThis.File??uua,Aua=Buffer.from('form-data; name="'),c7n=Buffer.from("; filename"),dua=Buffer.from("--"),pua=Buffer.from(`--\r -`);function fua(e){for(let t=0;t70)return!1;for(let r=0;r=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}function hua(e,t){xht(t!=="failure"&&t.essence==="multipart/form-data");let r=t.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),a=[],o={position:0};for(;e[o.position]===13&&e[o.position+1]===10;)o.position+=2;let l=e.length;for(;e[l-1]===10&&e[l-2]===13;)l-=2;for(l!==e.length&&(e=e.subarray(0,l));;){if(e.subarray(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===e.length-2&&Ght(e,dua,o)||o.position===e.length-4&&Ght(e,pua,o))return a;if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let A=mua(e,o);if(A==="failure")return"failure";let{name:f,filename:I,contentType:C,encoding:b}=A;o.position+=2;let E;{let B=e.indexOf(n.subarray(2),o.position);if(B===-1)return"failure";E=e.subarray(o.position,B-4),o.position+=E.length,b==="base64"&&(E=Buffer.from(E.toString(),"base64"))}if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let N;I!==null?(C??="text/plain",fua(C)||(C=""),N=new gua([E],I,{type:C})):N=oua(Buffer.from(E)),xht(o7n(f)),xht(typeof N=="string"&&o7n(N)||cua(N)),a.push(lua(f,N,I))}}function mua(e,t){let r=null,n=null,a=null,o=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:a,encoding:o};let l=Ywe(A=>A!==10&&A!==13&&A!==58,e,t);if(l=_yr(l,!0,!0,A=>A===9||A===32),!aua.test(l.toString())||e[t.position]!==58)return"failure";switch(t.position++,Ywe(A=>A===32||A===9,e,t),sua(l)){case"content-disposition":{if(r=n=null,!Ght(e,Aua,t)||(t.position+=17,r=l7n(e,t),r===null))return"failure";if(Ght(e,c7n,t)){let A=t.position+c7n.length;if(e[A]===42&&(t.position+=1,A+=1),e[A]!==61||e[A+1]!==34||(t.position+=12,n=l7n(e,t),n===null))return"failure"}break}case"content-type":{let A=Ywe(f=>f!==10&&f!==13,e,t);A=_yr(A,!1,!0,f=>f===9||f===32),a=a7n(A);break}case"content-transfer-encoding":{let A=Ywe(f=>f!==10&&f!==13,e,t);A=_yr(A,!1,!0,f=>f===9||f===32),o=a7n(A);break}default:Ywe(A=>A!==10&&A!==13,e,t)}if(e[t.position]!==13&&e[t.position+1]!==10)return"failure";t.position+=2}}function l7n(e,t){xht(e[t.position-1]===34);let r=Ywe(n=>n!==10&&n!==13&&n!==34,e,t);return e[t.position]!==34?null:(t.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` -`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function Ywe(e,t,r){let n=r.position;for(;n0&&n(e[o]);)o--;return a===0&&o===e.length-1?e:e.subarray(a,o+1)}function Ght(e,t,r){if(e.length{"use strict";var FYe=wm(),{ReadableStreamFrom:Cua,isBlobLike:A7n,isReadableStreamLike:_ua,readableStreamClose:yua,createDeferredPromise:bua,fullyReadBody:Eua,extractMimeType:Sua,utf8DecodeBytes:f7n}=sP(),{FormData:d7n}=GYe(),{kState:Xwe}=hae(),{webidl:vua}=Lk(),{Blob:Bua}=Et("node:buffer"),yyr=Et("node:assert"),{isErrored:I7n,isDisturbed:wua}=Et("node:stream"),{isArrayBuffer:Tua}=Et("node:util/types"),{serializeAMimeType:Rua}=oV(),{multipartFormDataParser:Nua}=g7n(),Fht=new TextEncoder;function Dua(){}var byr=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,Eyr;byr&&(Eyr=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!wua(t)&&!I7n(t)&&t.cancel("Response object has been garbage collected").catch(Dua)}));function h7n(e,t=!1){let r=null;e instanceof ReadableStream?r=e:A7n(e)?r=e.stream():r=new ReadableStream({async pull(f){let I=typeof a=="string"?Fht.encode(a):a;I.byteLength&&f.enqueue(I),queueMicrotask(()=>yua(f))},start(){},type:"bytes"}),yyr(_ua(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(Tua(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(FYe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r +`.trim())}};IKn.exports=k_r});var EKn=H((Niu,bKn)=>{"use strict";var{kProxy:jra,kClose:zra,kDestroy:qra,kInterceptors:$ra}=VE(),{URL:mKn}=Et("url"),CKn=iYe(),ena=cwe(),tna=QHe(),{InvalidArgumentError:lYe,RequestAbortedError:rna}=qb(),_Kn=XHe(),aYe=Symbol("proxy agent"),mIt=Symbol("proxy client"),cYe=Symbol("proxy headers"),x_r=Symbol("request tls settings"),nna=Symbol("proxy tls settings"),yKn=Symbol("connect endpoint function");function ina(e){return e==="https:"?443:80}function sna(e){if(typeof e=="string"&&(e={uri:e}),!e||!e.uri)throw new lYe("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}function ona(e,t){return new ena(e,t)}var G_r=class extends tna{constructor(t){if(super(t),this[jra]=sna(t),this[aYe]=new CKn(t),this[$ra]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],typeof t=="string"&&(t={uri:t}),!t||!t.uri)throw new lYe("Proxy opts.uri is mandatory");let{clientFactory:r=ona}=t;if(typeof r!="function")throw new lYe("Proxy opts.clientFactory must be a function.");this[x_r]=t.requestTls,this[nna]=t.proxyTls,this[cYe]=t.headers||{};let n=new mKn(t.uri),{origin:a,port:o,host:l,username:A,password:f}=n;if(t.auth&&t.token)throw new lYe("opts.auth cannot be used in combination with opts.token");t.auth?this[cYe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[cYe]["proxy-authorization"]=t.token:A&&f&&(this[cYe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(A)}:${decodeURIComponent(f)}`).toString("base64")}`);let I=_Kn({...t.proxyTls});this[yKn]=_Kn({...t.requestTls}),this[mIt]=r(n,{connect:I}),this[aYe]=new CKn({...t,connect:async(C,b)=>{let E=C.host;C.port||(E+=`:${ina(C.protocol)}`);try{let{socket:N,statusCode:B}=await this[mIt].connect({origin:a,port:o,path:E,signal:C.signal,headers:{...this[cYe],host:l}});if(B!==200&&(N.on("error",()=>{}).destroy(),b(new rna(`Proxy response (${B}) !== 200 when HTTP Tunneling`))),C.protocol!=="https:"){b(null,N);return}let F;this[x_r]?F=this[x_r].servername:F=C.servername,this[yKn]({...C,servername:F,httpSocket:N},b)}catch(N){b(N)}}})}dispatch(t,r){let{host:n}=new mKn(t.origin),a=ana(t.headers);return cna(a),this[aYe].dispatch({...t,headers:{...a,host:n}},r)}async[zra](){await this[aYe].close(),await this[mIt].close()}async[qra](){await this[aYe].destroy(),await this[mIt].destroy()}};function ana(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new lYe("Proxy-Authorization should be sent in ProxyAgent constructor")}bKn.exports=G_r});var TKn=H((Diu,wKn)=>{var ghe=Et("assert"),{kRetryHandlerDefaultRetry:SKn}=VE(),{RequestRetryError:CIt}=qb(),{isDisturbed:vKn,parseHeaders:lna,parseRangeHeader:BKn}=e_();function una(e){let t=Date.now();return new Date(e).getTime()-t}var F_r=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts=a,this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[SKn],retryAfter:E??!0,maxTimeout:A??30*1e3,timeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[SKn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,timeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:J,currentTimeout:ae}=r;if(ae=ae!=null&&ae>0?ae:b,l&&l!=="UND_ERR_REQ_RETRY"&&l!=="UND_ERR_SOCKET"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(J>C){a(t);return}let ne=A!=null&&A["retry-after"];ne&&(ne=Number(ne),ne=isNaN(ne)?una(ne):ne*1e3);let ce=ne>0?Math.min(ne,E):Math.min(ae*N**J,E);r.currentTimeout=ce,setTimeout(()=>a(null),ce)}onHeaders(t,r,n,a){let o=lna(r);if(this.retryCount+=1,t>=300)return this.abort(new CIt("Request failed",t,{headers:o,count:this.retryCount})),!1;if(this.resume!=null){if(this.resume=null,t!==206)return!0;let A=BKn(o["content-range"]);if(!A)return this.abort(new CIt("Content-Range mismatch",t,{headers:o,count:this.retryCount})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new CIt("ETag mismatch",t,{headers:o,count:this.retryCount})),!1;let{start:f,size:I,end:C=I}=A;return ghe(this.start===f,"content-range mismatch"),ghe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=BKn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;ghe(f!=null&&Number.isFinite(f)&&this.start!==f,"content-range mismatch"),ghe(Number.isFinite(f)),ghe(C!=null&&Number.isFinite(C)&&this.end!==C,"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return ghe(Number.isFinite(this.start)),ghe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.handler.onHeaders(t,r,n,a)}let l=new CIt("Request failed",t,{headers:o,count:this.retryCount});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||vKn(this.opts.body))return this.handler.onError(t);this.retryOpts.retry(t,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||vKn(this.opts.body))return this.handler.onError(n);this.start!==0&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};wKn.exports=F_r});var hwe=H((kiu,kKn)=>{"use strict";var RKn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:gna}=qb(),Ana=iYe();DKn()===void 0&&NKn(new Ana);function NKn(e){if(!e||typeof e.dispatch!="function")throw new gna("Argument agent must implement Agent");Object.defineProperty(globalThis,RKn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function DKn(){return globalThis[RKn]}kKn.exports={setGlobalDispatcher:NKn,getGlobalDispatcher:DKn}});var GKn=H((Giu,xKn)=>{"use strict";xKn.exports=class{constructor(t){this.handler=t}onConnect(...t){return this.handler.onConnect(...t)}onError(...t){return this.handler.onError(...t)}onUpgrade(...t){return this.handler.onUpgrade(...t)}onHeaders(...t){return this.handler.onHeaders(...t)}onData(...t){return this.handler.onData(...t)}onComplete(...t){return this.handler.onComplete(...t)}onBodySent(...t){return this.handler.onBodySent(...t)}}});var Ahe=H((Fiu,WKn)=>{"use strict";var{kHeadersList:iV,kConstruct:dna}=VE(),{kGuard:L8}=O$(),{kEnumerableProperty:Z8}=e_(),{makeIterator:mwe,isValidHeaderName:uYe,isValidHeaderValue:ZKn}=kM(),{webidl:lm}=OZ(),pna=Et("assert"),nV=Symbol("headers map"),Lk=Symbol("headers map sorted");function FKn(e){return e===10||e===13||e===9||e===32}function LKn(e){let t=0,r=e.length;for(;r>t&&FKn(e.charCodeAt(r-1));)--r;for(;r>t&&FKn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function VKn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function Z_r(e,t,r){if(r=LKn(r),uYe(t)){if(!ZKn(r))throw lm.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw lm.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(e[L8]==="immutable")throw new TypeError("immutable");return e[L8],e[iV].append(t,r)}var _It=class e{cookies=null;constructor(t){t instanceof e?(this[nV]=new Map(t[nV]),this[Lk]=t[Lk],this.cookies=t.cookies===null?null:[...t.cookies]):(this[nV]=new Map(t),this[Lk]=null)}contains(t){return t=t.toLowerCase(),this[nV].has(t)}clear(){this[nV].clear(),this[Lk]=null,this.cookies=null}append(t,r){this[Lk]=null;let n=t.toLowerCase(),a=this[nV].get(n);if(a){let o=n==="cookie"?"; ":", ";this[nV].set(n,{name:a.name,value:`${a.value}${o}${r}`})}else this[nV].set(n,{name:t,value:r});n==="set-cookie"&&(this.cookies??=[],this.cookies.push(r))}set(t,r){this[Lk]=null;let n=t.toLowerCase();n==="set-cookie"&&(this.cookies=[r]),this[nV].set(n,{name:t,value:r})}delete(t){this[Lk]=null,t=t.toLowerCase(),t==="set-cookie"&&(this.cookies=null),this[nV].delete(t)}get(t){let r=this[nV].get(t.toLowerCase());return r===void 0?null:r.value}*[Symbol.iterator](){for(let[t,{value:r}]of this[nV])yield[t,r]}get entries(){let t={};if(this[nV].size)for(let{name:r,value:n}of this[nV].values())t[r]=n;return t}},Cwe=class e{constructor(t=void 0){t!==dna&&(this[iV]=new _It,this[L8]="none",t!==void 0&&(t=lm.converters.HeadersInit(t),VKn(this,t)))}append(t,r){return lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,2,{header:"Headers.append"}),t=lm.converters.ByteString(t),r=lm.converters.ByteString(r),Z_r(this,t,r)}delete(t){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=lm.converters.ByteString(t),!uYe(t))throw lm.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this[L8]==="immutable")throw new TypeError("immutable");this[L8],this[iV].contains(t)&&this[iV].delete(t)}get(t){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=lm.converters.ByteString(t),!uYe(t))throw lm.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[iV].get(t)}has(t){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=lm.converters.ByteString(t),!uYe(t))throw lm.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[iV].contains(t)}set(t,r){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=lm.converters.ByteString(t),r=lm.converters.ByteString(r),r=LKn(r),uYe(t)){if(!ZKn(r))throw lm.errors.invalidArgument({prefix:"Headers.set",value:r,type:"header value"})}else throw lm.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(this[L8]==="immutable")throw new TypeError("immutable");this[L8],this[iV].set(t,r)}getSetCookie(){lm.brandCheck(this,e);let t=this[iV].cookies;return t?[...t]:[]}get[Lk](){if(this[iV][Lk])return this[iV][Lk];let t=[],r=[...this[iV]].sort((a,o)=>a[0]t,"Headers","key")}return mwe(()=>[...this[Lk].values()],"Headers","key")}values(){if(lm.brandCheck(this,e),this[L8]==="immutable"){let t=this[Lk];return mwe(()=>t,"Headers","value")}return mwe(()=>[...this[Lk].values()],"Headers","value")}entries(){if(lm.brandCheck(this,e),this[L8]==="immutable"){let t=this[Lk];return mwe(()=>t,"Headers","key+value")}return mwe(()=>[...this[Lk].values()],"Headers","key+value")}forEach(t,r=globalThis){if(lm.brandCheck(this,e),lm.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}[Symbol.for("nodejs.util.inspect.custom")](){return lm.brandCheck(this,e),this[iV]}};Cwe.prototype[Symbol.iterator]=Cwe.prototype.entries;Object.defineProperties(Cwe.prototype,{append:Z8,delete:Z8,get:Z8,has:Z8,set:Z8,getSetCookie:Z8,keys:Z8,values:Z8,entries:Z8,forEach:Z8,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0}});lm.converters.HeadersInit=function(e){if(lm.util.Type(e)==="Object")return e[Symbol.iterator]?lm.converters["sequence>"](e):lm.converters["record"](e);throw lm.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};WKn.exports={fill:VKn,Headers:Cwe,HeadersList:_It}});var SIt=H((Ziu,JKn)=>{"use strict";var{Headers:fna,HeadersList:OKn,fill:Ina}=Ahe(),{extractBody:PKn,cloneBody:hna,mixinBody:mna}=MHe(),W_r=e_(),{kEnumerableProperty:nP}=W_r,{isValidReasonPhrase:Cna,isCancelled:_na,isAborted:yna,isBlobLike:bna,serializeJavascriptValueToJSONString:Ena,isErrorLike:Sna,isomorphicEncode:vna}=kM(),{redirectStatusSet:Bna,nullBodyStatus:wna,DOMException:MKn}=aae(),{kState:R2,kHeaders:sD,kGuard:_we,kRealm:rP}=O$(),{webidl:Yh}=OZ(),{FormData:Tna}=Gft(),{getGlobalOrigin:Rna}=KBe(),{URLSerializer:HKn}=WX(),{kHeadersList:L_r,kConstruct:Nna}=VE(),O_r=Et("assert"),{types:V_r}=Et("util"),QKn=globalThis.ReadableStream||Et("stream/web").ReadableStream,Dna=new TextEncoder("utf-8"),ywe=class e{static error(){let t={settingsObject:{}},r=new e;return r[R2]=bIt(),r[rP]=t,r[sD][L_r]=r[R2].headersList,r[sD][_we]="immutable",r[sD][rP]=t,r}static json(t,r={}){Yh.argumentLengthCheck(arguments,1,{header:"Response.json"}),r!==null&&(r=Yh.converters.ResponseInit(r));let n=Dna.encode(Ena(t)),a=PKn(n),o={settingsObject:{}},l=new e;return l[rP]=o,l[sD][_we]="response",l[sD][rP]=o,YKn(l,r,{body:a[0],type:"application/json"}),l}static redirect(t,r=302){let n={settingsObject:{}};Yh.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),t=Yh.converters.USVString(t),r=Yh.converters["unsigned short"](r);let a;try{a=new URL(t,Rna())}catch(A){throw Object.assign(new TypeError("Failed to parse URL from "+t),{cause:A})}if(!Bna.has(r))throw new RangeError("Invalid status code "+r);let o=new e;o[rP]=n,o[sD][_we]="immutable",o[sD][rP]=n,o[R2].status=r;let l=vna(HKn(a));return o[R2].headersList.append("location",l),o}constructor(t=null,r={}){t!==null&&(t=Yh.converters.BodyInit(t)),r=Yh.converters.ResponseInit(r),this[rP]={settingsObject:{}},this[R2]=EIt({}),this[sD]=new fna(Nna),this[sD][_we]="response",this[sD][L_r]=this[R2].headersList,this[sD][rP]=this[rP];let n=null;if(t!=null){let[a,o]=PKn(t);n={body:a,type:o}}YKn(this,r,n)}get type(){return Yh.brandCheck(this,e),this[R2].type}get url(){Yh.brandCheck(this,e);let t=this[R2].urlList,r=t[t.length-1]??null;return r===null?"":HKn(r,!0)}get redirected(){return Yh.brandCheck(this,e),this[R2].urlList.length>1}get status(){return Yh.brandCheck(this,e),this[R2].status}get ok(){return Yh.brandCheck(this,e),this[R2].status>=200&&this[R2].status<=299}get statusText(){return Yh.brandCheck(this,e),this[R2].statusText}get headers(){return Yh.brandCheck(this,e),this[sD]}get body(){return Yh.brandCheck(this,e),this[R2].body?this[R2].body.stream:null}get bodyUsed(){return Yh.brandCheck(this,e),!!this[R2].body&&W_r.isDisturbed(this[R2].body.stream)}clone(){if(Yh.brandCheck(this,e),this.bodyUsed||this.body&&this.body.locked)throw Yh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=P_r(this[R2]),r=new e;return r[R2]=t,r[rP]=this[rP],r[sD][L_r]=t.headersList,r[sD][_we]=this[sD][_we],r[sD][rP]=this[sD][rP],r}};mna(ywe);Object.defineProperties(ywe.prototype,{type:nP,url:nP,status:nP,ok:nP,redirected:nP,statusText:nP,headers:nP,clone:nP,body:nP,bodyUsed:nP,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(ywe,{json:nP,redirect:nP,error:nP});function P_r(e){if(e.internalResponse)return XKn(P_r(e.internalResponse),e.type);let t=EIt({...e,body:null});return e.body!=null&&(t.body=hna(e.body)),t}function EIt(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new OKn(e.headersList):new OKn,urlList:e.urlList?[...e.urlList]:[]}}function bIt(e){let t=Sna(e);return EIt({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function yIt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return O_r(!(n in t)),r[n]=a,!0}})}function XKn(e,t){if(t==="basic")return yIt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return yIt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return yIt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return yIt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});O_r(!1)}function kna(e,t=null){return O_r(_na(e)),yna(e)?bIt(Object.assign(new MKn("The operation was aborted.","AbortError"),{cause:t})):bIt(Object.assign(new MKn("Request was cancelled."),{cause:t}))}function YKn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!Cna(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[R2].status=t.status),"statusText"in t&&t.statusText!=null&&(e[R2].statusText=t.statusText),"headers"in t&&t.headers!=null&&Ina(e[sD],t.headers),r){if(wna.includes(e.status))throw Yh.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[R2].body=r.body,r.type!=null&&!e[R2].headersList.contains("Content-Type")&&e[R2].headersList.append("content-type",r.type)}}Yh.converters.ReadableStream=Yh.interfaceConverter(QKn);Yh.converters.FormData=Yh.interfaceConverter(Tna);Yh.converters.URLSearchParams=Yh.interfaceConverter(URLSearchParams);Yh.converters.XMLHttpRequestBodyInit=function(e){return typeof e=="string"?Yh.converters.USVString(e):bna(e)?Yh.converters.Blob(e,{strict:!1}):V_r.isArrayBuffer(e)||V_r.isTypedArray(e)||V_r.isDataView(e)?Yh.converters.BufferSource(e):W_r.isFormDataLike(e)?Yh.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?Yh.converters.URLSearchParams(e):Yh.converters.DOMString(e)};Yh.converters.BodyInit=function(e){return e instanceof QKn?Yh.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:Yh.converters.XMLHttpRequestBodyInit(e)};Yh.converters.ResponseInit=Yh.dictionaryConverter([{key:"status",converter:Yh.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:Yh.converters.ByteString,defaultValue:""},{key:"headers",converter:Yh.converters.HeadersInit}]);JKn.exports={makeNetworkError:bIt,makeResponse:EIt,makeAppropriateNetworkError:kna,filterResponse:XKn,Response:ywe,cloneResponse:P_r}});var dYe=H((Liu,$Kn)=>{"use strict";var{extractBody:xna,mixinBody:Gna,cloneBody:Fna}=MHe(),{Headers:UKn,fill:Zna,HeadersList:TIt}=Ahe(),{FinalizationRegistry:Lna}=zCr()(),AYe=e_(),{isValidHTTPToken:Vna,sameOrigin:KKn,normalizeMethod:Wna,makePolicyContainer:Ona,normalizeMethodRecord:Pna}=kM(),{forbiddenMethodsSet:Mna,corsSafeListedMethodsSet:Hna,referrerPolicy:Yna,requestRedirect:Qna,requestMode:Xna,requestCredentials:Jna,requestCache:Una,requestDuplex:Kna}=aae(),{kEnumerableProperty:AT}=AYe,{kHeaders:wG,kSignal:gYe,kState:H1,kGuard:vIt,kRealm:iP}=O$(),{webidl:Lf}=OZ(),{getGlobalOrigin:jna}=KBe(),{URLSerializer:zna}=WX(),{kHeadersList:BIt,kConstruct:wIt}=VE(),qna=Et("assert"),{getMaxListeners:jKn,setMaxListeners:zKn,getEventListeners:$na,defaultMaxListeners:qKn}=Et("events"),M_r=globalThis.TransformStream,eia=Symbol("abortController"),tia=new Lna(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),dhe=class e{constructor(t,r={}){if(t===wIt)return;Lf.argumentLengthCheck(arguments,1,{header:"Request constructor"}),t=Lf.converters.RequestInfo(t),r=Lf.converters.RequestInit(r),this[iP]={settingsObject:{baseUrl:jna(),get origin(){return this.baseUrl?.origin},policyContainer:Ona()}};let n=null,a=null,o=this[iP].settingsObject.baseUrl,l=null;if(typeof t=="string"){let Q;try{Q=new URL(t,o)}catch(J){throw new TypeError("Failed to parse URL from "+t,{cause:J})}if(Q.username||Q.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);n=RIt({urlList:[Q]}),a="cors"}else qna(t instanceof e),n=t[H1],l=t[gYe];let A=this[iP].settingsObject.origin,f="client";if(n.window?.constructor?.name==="EnvironmentSettingsObject"&&KKn(n.window,A)&&(f=n.window),r.window!=null)throw new TypeError(`'window' option '${f}' must be null`);"window"in r&&(f="no-window"),n=RIt({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:this[iP].settingsObject,window:f,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let I=Object.keys(r).length!==0;if(I&&(n.mode==="navigate"&&(n.mode="same-origin"),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin="client",n.referrer="client",n.referrerPolicy="",n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),r.referrer!==void 0){let Q=r.referrer;if(Q==="")n.referrer="no-referrer";else{let J;try{J=new URL(Q,o)}catch(ae){throw new TypeError(`Referrer "${Q}" is not a valid URL.`,{cause:ae})}J.protocol==="about:"&&J.hostname==="client"||A&&!KKn(J,this[iP].settingsObject.baseUrl)?n.referrer="client":n.referrer=J}}r.referrerPolicy!==void 0&&(n.referrerPolicy=r.referrerPolicy);let C;if(r.mode!==void 0?C=r.mode:C=a,C==="navigate")throw Lf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(C!=null&&(n.mode=C),r.credentials!==void 0&&(n.credentials=r.credentials),r.cache!==void 0&&(n.cache=r.cache),n.cache==="only-if-cached"&&n.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(n.redirect=r.redirect),r.integrity!=null&&(n.integrity=String(r.integrity)),r.keepalive!==void 0&&(n.keepalive=!!r.keepalive),r.method!==void 0){let Q=r.method;if(!Vna(Q))throw new TypeError(`'${Q}' is not a valid HTTP method.`);if(Mna.has(Q.toUpperCase()))throw new TypeError(`'${Q}' HTTP method is unsupported.`);Q=Pna[Q]??Wna(Q),n.method=Q}r.signal!==void 0&&(l=r.signal),this[H1]=n;let b=new AbortController;if(this[gYe]=b.signal,this[gYe][iP]=this[iP],l!=null){if(!l||typeof l.aborted!="boolean"||typeof l.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(l.aborted)b.abort(l.reason);else{this[eia]=b;let Q=new WeakRef(b),J=function(){let ae=Q.deref();ae!==void 0&&ae.abort(this.reason)};try{(typeof jKn=="function"&&jKn(l)===qKn||$na(l,"abort").length>=qKn)&&zKn(100,l)}catch{}AYe.addAbortListener(l,J),tia.register(b,{signal:l,abort:J})}}if(this[wG]=new UKn(wIt),this[wG][BIt]=n.headersList,this[wG][vIt]="request",this[wG][iP]=this[iP],C==="no-cors"){if(!Hna.has(n.method))throw new TypeError(`'${n.method} is unsupported in no-cors mode.`);this[wG][vIt]="request-no-cors"}if(I){let Q=this[wG][BIt],J=r.headers!==void 0?r.headers:new TIt(Q);if(Q.clear(),J instanceof TIt){for(let[ae,ne]of J)Q.append(ae,ne);Q.cookies=J.cookies}else Zna(this[wG],J)}let E=t instanceof e?t[H1].body:null;if((r.body!=null||E!=null)&&(n.method==="GET"||n.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let N=null;if(r.body!=null){let[Q,J]=xna(r.body,n.keepalive);N=Q,J&&!this[wG][BIt].contains("content-type")&&this[wG].append("content-type",J)}let B=N??E;if(B!=null&&B.source==null){if(N!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(n.mode!=="same-origin"&&n.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');n.useCORSPreflightFlag=!0}let F=B;if(N==null&&E!=null){if(AYe.isDisturbed(E.stream)||E.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");M_r||(M_r=Et("stream/web").TransformStream);let Q=new M_r;E.stream.pipeThrough(Q),F={source:E.source,length:E.length,stream:Q.readable}}this[H1].body=F}get method(){return Lf.brandCheck(this,e),this[H1].method}get url(){return Lf.brandCheck(this,e),zna(this[H1].url)}get headers(){return Lf.brandCheck(this,e),this[wG]}get destination(){return Lf.brandCheck(this,e),this[H1].destination}get referrer(){return Lf.brandCheck(this,e),this[H1].referrer==="no-referrer"?"":this[H1].referrer==="client"?"about:client":this[H1].referrer.toString()}get referrerPolicy(){return Lf.brandCheck(this,e),this[H1].referrerPolicy}get mode(){return Lf.brandCheck(this,e),this[H1].mode}get credentials(){return this[H1].credentials}get cache(){return Lf.brandCheck(this,e),this[H1].cache}get redirect(){return Lf.brandCheck(this,e),this[H1].redirect}get integrity(){return Lf.brandCheck(this,e),this[H1].integrity}get keepalive(){return Lf.brandCheck(this,e),this[H1].keepalive}get isReloadNavigation(){return Lf.brandCheck(this,e),this[H1].reloadNavigation}get isHistoryNavigation(){return Lf.brandCheck(this,e),this[H1].historyNavigation}get signal(){return Lf.brandCheck(this,e),this[gYe]}get body(){return Lf.brandCheck(this,e),this[H1].body?this[H1].body.stream:null}get bodyUsed(){return Lf.brandCheck(this,e),!!this[H1].body&&AYe.isDisturbed(this[H1].body.stream)}get duplex(){return Lf.brandCheck(this,e),"half"}clone(){if(Lf.brandCheck(this,e),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");let t=ria(this[H1]),r=new e(wIt);r[H1]=t,r[iP]=this[iP],r[wG]=new UKn(wIt),r[wG][BIt]=t.headersList,r[wG][vIt]=this[wG][vIt],r[wG][iP]=this[wG][iP];let n=new AbortController;return this.signal.aborted?n.abort(this.signal.reason):AYe.addAbortListener(this.signal,()=>{n.abort(this.signal.reason)}),r[gYe]=n.signal,r}};Gna(dhe);function RIt(e){let t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new TIt(e.headersList):new TIt};return t.url=t.urlList[0],t}function ria(e){let t=RIt({...e,body:null});return e.body!=null&&(t.body=Fna(e.body)),t}Object.defineProperties(dhe.prototype,{method:AT,url:AT,headers:AT,redirect:AT,clone:AT,signal:AT,duplex:AT,destination:AT,body:AT,bodyUsed:AT,isHistoryNavigation:AT,isReloadNavigation:AT,keepalive:AT,integrity:AT,cache:AT,credentials:AT,attribute:AT,referrerPolicy:AT,referrer:AT,mode:AT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Lf.converters.Request=Lf.interfaceConverter(dhe);Lf.converters.RequestInfo=function(e){return typeof e=="string"?Lf.converters.USVString(e):e instanceof dhe?Lf.converters.Request(e):Lf.converters.USVString(e)};Lf.converters.AbortSignal=Lf.interfaceConverter(AbortSignal);Lf.converters.RequestInit=Lf.dictionaryConverter([{key:"method",converter:Lf.converters.ByteString},{key:"headers",converter:Lf.converters.HeadersInit},{key:"body",converter:Lf.nullableConverter(Lf.converters.BodyInit)},{key:"referrer",converter:Lf.converters.USVString},{key:"referrerPolicy",converter:Lf.converters.DOMString,allowedValues:Yna},{key:"mode",converter:Lf.converters.DOMString,allowedValues:Xna},{key:"credentials",converter:Lf.converters.DOMString,allowedValues:Jna},{key:"cache",converter:Lf.converters.DOMString,allowedValues:Una},{key:"redirect",converter:Lf.converters.DOMString,allowedValues:Qna},{key:"integrity",converter:Lf.converters.DOMString},{key:"keepalive",converter:Lf.converters.boolean},{key:"signal",converter:Lf.nullableConverter(e=>Lf.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:Lf.converters.any},{key:"duplex",converter:Lf.converters.DOMString,allowedValues:Kna}]);$Kn.exports={Request:dhe,makeRequest:RIt}});var ZIt=H((Viu,d8n)=>{"use strict";var{Response:nia,makeNetworkError:$b,makeAppropriateNetworkError:NIt,filterResponse:H_r,makeResponse:DIt}=SIt(),{Headers:e8n}=Ahe(),{Request:iia,makeRequest:sia}=dYe(),pYe=Et("zlib"),{bytesMatch:oia,makePolicyContainer:aia,clonePolicyContainer:cia,requestBadPort:lia,TAOCheck:uia,appendRequestOriginHeader:gia,responseLocationURL:Aia,requestCurrentURL:V8,setRequestReferrerPolicyOnRedirect:dia,tryUpgradeRequestToAPotentiallyTrustworthyURL:pia,createOpaqueTimingInfo:q_r,appendFetchMetadata:fia,corsCheck:Iia,crossOriginResourcePolicyCheck:hia,determineRequestsReferrer:mia,coarsenedSharedCurrentTime:$_r,createDeferredPromise:Cia,isBlobLike:_ia,sameOrigin:K_r,isCancelled:Ewe,isAborted:t8n,isErrorLike:yia,fullyReadBody:s8n,readableStreamClose:bia,isomorphicEncode:j_r,urlIsLocal:Eia,urlIsHttpHttpsScheme:e0r,urlHasHttpsScheme:Sia}=kM(),{kState:z_r,kHeaders:Y_r,kGuard:via,kRealm:r8n}=O$(),Swe=Et("assert"),{safelyExtractBody:kIt}=MHe(),{redirectStatusSet:o8n,nullBodyStatus:a8n,safeMethodsSet:Bia,requestBodyHeader:wia,subresourceSet:Tia,DOMException:xIt}=aae(),{kHeadersList:bwe}=VE(),Ria=Et("events"),{Readable:Nia,pipeline:Dia}=Et("stream"),{addAbortListener:kia,isErrored:xia,isReadable:GIt,nodeMajor:n8n,nodeMinor:Gia}=e_(),{dataURLProcessor:Fia,serializeAMimeType:Zia}=WX(),{TransformStream:Lia}=Et("stream/web"),{getGlobalDispatcher:Via}=hwe(),{webidl:Wia}=OZ(),{STATUS_CODES:Oia}=Et("http"),Pia=["GET","HEAD"],Q_r,X_r=globalThis.ReadableStream,FIt=class extends Ria{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new xIt("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function Mia(e,t={}){Wia.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});let r=Cia(),n;try{n=new iia(e,t)}catch(E){return r.reject(E),r.promise}let a=n[z_r];if(n.signal.aborted)return J_r(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=null,f=!1,I=null;return kia(n.signal,()=>{f=!0,Swe(I!=null),I.abort(n.signal.reason),J_r(r,a,l,n.signal.reason)}),I=l8n({request:a,processResponseEndOfBody:E=>c8n(E,"fetch"),processResponse:E=>{if(f)return Promise.resolve();if(E.aborted)return J_r(r,a,l,I.serializedAbortReason),Promise.resolve();if(E.type==="error")return r.reject(Object.assign(new TypeError("fetch failed"),{cause:E.error})),Promise.resolve();l=new nia,l[z_r]=E,l[r8n]=A,l[Y_r][bwe]=E.headersList,l[Y_r][via]="immutable",l[Y_r][r8n]=A,r.resolve(l)},dispatcher:t.dispatcher??Via()}),r.promise}function c8n(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;e0r(r)&&n!==null&&(e.timingAllowPassed||(n=q_r({startTime:n.startTime}),a=""),n.endTime=$_r(),e.timingInfo=n,Hia(n,r,t,globalThis,a))}function Hia(e,t,r,n,a){(n8n>18||n8n===18&&Gia>=2)&&performance.markResourceTiming(e,t.href,r,n,a)}function J_r(e,t,r,n){if(n||(n=new xIt("The operation was aborted.","AbortError")),e.reject(n),t.body!=null&&GIt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[z_r];a.body!=null&&GIt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function l8n({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A}){let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=$_r(I),b=q_r({startTime:C}),E={controller:new FIt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return Swe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client?.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=cia(e.client.policyContainer):e.policyContainer=aia()),e.headersList.contains("accept")||e.headersList.append("accept","*/*"),e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,Tia.has(e.destination),u8n(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function u8n(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!Eia(V8(r))&&(n=$b("local URLs only")),pia(r),lia(r)==="blocked"&&(n=$b("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=mia(r)),n===null&&(n=await(async()=>{let o=V8(r);return K_r(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await i8n(e)):r.mode==="same-origin"?$b('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?$b('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await i8n(e)):e0r(V8(r))?(r.responseTainting="cors",await g8n(e)):$b("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=H_r(n,"basic"):r.responseTainting==="cors"?n=H_r(n,"cors"):r.responseTainting==="opaque"?n=H_r(n,"opaque"):Swe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range")&&(n=a=$b()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||a8n.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>U_r(e,$b(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!oia(A,r.integrity)){o("integrity mismatch");return}n.body=kIt(A)[0],U_r(e,n)};await s8n(n.body,l,o)}else U_r(e,n)}function i8n(e){if(Ewe(e)&&e.request.redirectCount===0)return Promise.resolve(NIt(e));let{request:t}=e,{protocol:r}=V8(t);switch(r){case"about:":return Promise.resolve($b("about scheme is not supported"));case"blob:":{Q_r||(Q_r=Et("buffer").resolveObjectURL);let n=V8(t);if(n.search.length!==0)return Promise.resolve($b("NetworkError when attempting to fetch resource."));let a=Q_r(n.toString());if(t.method!=="GET"||!_ia(a))return Promise.resolve($b("invalid method"));let o=kIt(a),l=o[0],A=j_r(`${l.length}`),f=o[1]??"",I=DIt({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:A}],["content-type",{name:"Content-Type",value:f}]]});return I.body=l,Promise.resolve(I)}case"data:":{let n=V8(t),a=Fia(n);if(a==="failure")return Promise.resolve($b("failed to fetch the data URL"));let o=Zia(a.mimeType);return Promise.resolve(DIt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:kIt(a.body)[0]}))}case"file:":return Promise.resolve($b("not implemented... yet..."));case"http:":case"https:":return g8n(e).catch(n=>$b(n));default:return Promise.resolve($b("unknown scheme"))}}function Yia(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function U_r(e,t){t.type==="error"&&(t.urlList=[e.request.urlList[0]],t.timingInfo=q_r({startTime:e.timingInfo.startTime}));let r=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(e.processResponse!=null&&queueMicrotask(()=>e.processResponse(t)),t.body==null)r();else{let n=(o,l)=>{l.enqueue(o)},a=new Lia({start(){},transform:n,flush:r},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(a)}}if(e.processResponseConsumeBody!=null){let n=o=>e.processResponseConsumeBody(t,o),a=o=>e.processResponseConsumeBody(t,o);if(t.body==null)queueMicrotask(()=>n(null));else return s8n(t.body,n,a);return Promise.resolve()}}async function g8n(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await A8n(e),t.responseTainting==="cors"&&Iia(t,r)==="failure")return $b("cors failure");uia(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&hia(t.origin,t.client,t.destination,n)==="blocked"?$b("blocked"):(o8n.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(),t.redirect==="error"?r=$b("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await Qia(e,r):Swe(!1)),r.timingInfo=a,r)}function Qia(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=Aia(n,V8(r).hash),a==null)return t}catch(l){return Promise.resolve($b(l))}if(!e0r(a))return Promise.resolve($b("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve($b("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!K_r(r,a))return Promise.resolve($b('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve($b('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve($b());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!Pia.includes(r.method)){r.method="GET",r.body=null;for(let l of wia)r.headersList.delete(l)}K_r(V8(r),a)||(r.headersList.delete("authorization"),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie"),r.headersList.delete("host")),r.body!=null&&(Swe(r.body.source!=null),r.body=kIt(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=$_r(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),dia(r,n),u8n(e,!0)}async function A8n(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=sia(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=j_r(`${C}`)),b!=null&&o.headersList.append("content-length",b),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",j_r(o.referrer.href)),gia(o),fia(o),o.headersList.contains("user-agent")||o.headersList.append("user-agent",typeof esbuildDetection>"u"?"undici":"node"),o.cache==="default"&&(o.headersList.contains("if-modified-since")||o.headersList.contains("if-none-match")||o.headersList.contains("if-unmodified-since")||o.headersList.contains("if-match")||o.headersList.contains("if-range"))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control")&&o.headersList.append("cache-control","max-age=0"),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma")||o.headersList.append("pragma","no-cache"),o.headersList.contains("cache-control")||o.headersList.append("cache-control","no-cache")),o.headersList.contains("range")&&o.headersList.append("accept-encoding","identity"),o.headersList.contains("accept-encoding")||(Sia(V8(o))?o.headersList.append("accept-encoding","br, gzip, deflate"):o.headersList.append("accept-encoding","gzip, deflate")),o.headersList.delete("host"),A==null&&(o.cache="no-store"),o.mode!=="no-store"&&o.mode,l==null){if(o.mode==="only-if-cached")return $b("only if cached");let E=await Xia(a,I,r);!Bia.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range")&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?$b():Ewe(e)?NIt(e):$b("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(Ewe(e))return NIt(e);e.controller.connection.destroy(),l=await A8n(e,t,!0)}return l}async function Xia(e,t=!1,r=!1){Swe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B){this.destroyed||(this.destroyed=!0,this.abort?.(B??new xIt("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(J){Ewe(e)||(yield J,e.processRequestBodyChunkLength?.(J.byteLength))},F=()=>{Ewe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=J=>{Ewe(e)||(J.name==="AbortError"?e.controller.abort():e.controller.terminate(J))};f=async function*(){try{for await(let J of n.body.stream)yield*B(J);F()}catch(J){Q(J)}}()}try{let{body:B,status:F,statusText:Q,headersList:J,socket:ae}=await N({body:f});if(ae)a=DIt({status:F,statusText:Q,headersList:J,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=DIt({status:F,statusText:Q,headersList:J})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),NIt(e,B)):$b(B)}let I=()=>{e.controller.resume()},C=B=>{e.controller.abort(B)};X_r||(X_r=Et("stream/web").ReadableStream);let b=new X_r({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)}},{highWaterMark:0,size(){return 1}});a.body={stream:b},e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:Q,value:J}=await e.controller.next();if(t8n(e))break;B=Q?void 0:J}catch(Q){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=Q,F=!0)}if(B===void 0){bia(e.controller.controller),Yia(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}if(e.controller.controller.enqueue(new Uint8Array(B)),xia(b)){e.controller.terminate();return}if(!e.controller.controller.desiredSize)return}};function E(B){t8n(e)?(a.aborted=!0,GIt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):GIt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:yia(B)?B:void 0})),e.controller.connection.destroy()}return a;async function N({body:B}){let F=V8(n),Q=e.controller.dispatcher;return new Promise((J,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:e.controller.dispatcher.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;ce.destroyed?ne(new xIt("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new e8n;if(Array.isArray(ce))for(let tt=0;ttJe.trim()):ze.toLowerCase()==="location"&&(be=Le),Se[bwe].append(ze,Le)}else{let tt=Object.keys(ce);for(let ze of tt){let Le=ce[ze];ze.toLowerCase()==="content-encoding"?de=Le.toLowerCase().split(",").map(Je=>Je.trim()).reverse():ze.toLowerCase()==="location"&&(be=Le),Se[bwe].append(ze,Le)}}this.body=new Nia({read:fe});let De=[],k=n.redirect==="follow"&&be&&o8n.has(ne);if(n.method!=="HEAD"&&n.method!=="CONNECT"&&!a8n.includes(ne)&&!k)for(let tt of de)if(tt==="x-gzip"||tt==="gzip")De.push(pYe.createGunzip({flush:pYe.constants.Z_SYNC_FLUSH,finishFlush:pYe.constants.Z_SYNC_FLUSH}));else if(tt==="deflate")De.push(pYe.createInflate());else if(tt==="br")De.push(pYe.createBrotliDecompress());else{De.length=0;break}return J({status:ne,statusText:ue,headersList:Se[bwe],body:De.length?Dia(this.body,...De,()=>{}):this.body.on("error",()=>{})}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new e8n;for(let de=0;de{"use strict";p8n.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var I8n=H((Oiu,f8n)=>{"use strict";var{webidl:sP}=OZ(),LIt=Symbol("ProgressEvent state"),r0r=class e extends Event{constructor(t,r={}){t=sP.converters.DOMString(t),r=sP.converters.ProgressEventInit(r??{}),super(t,r),this[LIt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return sP.brandCheck(this,e),this[LIt].lengthComputable}get loaded(){return sP.brandCheck(this,e),this[LIt].loaded}get total(){return sP.brandCheck(this,e),this[LIt].total}};sP.converters.ProgressEventInit=sP.dictionaryConverter([{key:"lengthComputable",converter:sP.converters.boolean,defaultValue:!1},{key:"loaded",converter:sP.converters["unsigned long long"],defaultValue:0},{key:"total",converter:sP.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:sP.converters.boolean,defaultValue:!1},{key:"cancelable",converter:sP.converters.boolean,defaultValue:!1},{key:"composed",converter:sP.converters.boolean,defaultValue:!1}]);f8n.exports={ProgressEvent:r0r}});var m8n=H((Piu,h8n)=>{"use strict";function Jia(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}h8n.exports={getEncoding:Jia}});var B8n=H((Miu,v8n)=>{"use strict";var{kState:vwe,kError:n0r,kResult:C8n,kAborted:fYe,kLastProgressEventFired:i0r}=t0r(),{ProgressEvent:Uia}=I8n(),{getEncoding:_8n}=m8n(),{DOMException:Kia}=aae(),{serializeAMimeType:jia,parseMIMEType:y8n}=WX(),{types:zia}=Et("util"),{StringDecoder:b8n}=Et("string_decoder"),{btoa:E8n}=Et("buffer"),qia={enumerable:!0,writable:!1,configurable:!1};function $ia(e,t,r,n){if(e[vwe]==="loading")throw new Kia("Invalid state","InvalidStateError");e[vwe]="loading",e[C8n]=null,e[n0r]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[fYe];)try{let{done:I,value:C}=await A;if(f&&!e[fYe]&&queueMicrotask(()=>{fae("loadstart",e)}),f=!1,!I&&zia.isUint8Array(C))l.push(C),(e[i0r]===void 0||Date.now()-e[i0r]>=50)&&!e[fYe]&&(e[i0r]=Date.now(),queueMicrotask(()=>{fae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[vwe]="done";try{let b=esa(l,r,t.type,n);if(e[fYe])return;e[C8n]=b,fae("load",e)}catch(b){e[n0r]=b,fae("error",e)}e[vwe]!=="loading"&&fae("loadend",e)});break}}catch(I){if(e[fYe])return;queueMicrotask(()=>{e[vwe]="done",e[n0r]=I,fae("error",e),e[vwe]!=="loading"&&fae("loadend",e)});break}})()}function fae(e,t){let r=new Uia(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function esa(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=y8n(r||"application/octet-stream");o!=="failure"&&(a+=jia(o)),a+=";base64,";let l=new b8n("latin1");for(let A of e)a+=E8n(l.write(A));return a+=E8n(l.end()),a}case"Text":{let a="failure";if(n&&(a=_8n(n)),a==="failure"&&r){let o=y8n(r);o!=="failure"&&(a=_8n(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),tsa(e,a)}case"ArrayBuffer":return S8n(e).buffer;case"BinaryString":{let a="",o=new b8n("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function tsa(e,t){let r=S8n(e),n=rsa(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function rsa(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function S8n(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}v8n.exports={staticPropertyDescriptors:qia,readOperation:$ia,fireAProgressEvent:fae}});var N8n=H((Hiu,R8n)=>{"use strict";var{staticPropertyDescriptors:Bwe,readOperation:VIt,fireAProgressEvent:w8n}=B8n(),{kState:phe,kError:T8n,kResult:WIt,kEvents:C0,kAborted:nsa}=t0r(),{webidl:ob}=OZ(),{kEnumerableProperty:sV}=e_(),HX=class e extends EventTarget{constructor(){super(),this[phe]="empty",this[WIt]=null,this[T8n]=null,this[C0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),t=ob.converters.Blob(t,{strict:!1}),VIt(this,t,"ArrayBuffer")}readAsBinaryString(t){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),t=ob.converters.Blob(t,{strict:!1}),VIt(this,t,"BinaryString")}readAsText(t,r=void 0){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),t=ob.converters.Blob(t,{strict:!1}),r!==void 0&&(r=ob.converters.DOMString(r)),VIt(this,t,"Text",r)}readAsDataURL(t){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),t=ob.converters.Blob(t,{strict:!1}),VIt(this,t,"DataURL")}abort(){if(this[phe]==="empty"||this[phe]==="done"){this[WIt]=null;return}this[phe]==="loading"&&(this[phe]="done",this[WIt]=null),this[nsa]=!0,w8n("abort",this),this[phe]!=="loading"&&w8n("loadend",this)}get readyState(){switch(ob.brandCheck(this,e),this[phe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return ob.brandCheck(this,e),this[WIt]}get error(){return ob.brandCheck(this,e),this[T8n]}get onloadend(){return ob.brandCheck(this,e),this[C0].loadend}set onloadend(t){ob.brandCheck(this,e),this[C0].loadend&&this.removeEventListener("loadend",this[C0].loadend),typeof t=="function"?(this[C0].loadend=t,this.addEventListener("loadend",t)):this[C0].loadend=null}get onerror(){return ob.brandCheck(this,e),this[C0].error}set onerror(t){ob.brandCheck(this,e),this[C0].error&&this.removeEventListener("error",this[C0].error),typeof t=="function"?(this[C0].error=t,this.addEventListener("error",t)):this[C0].error=null}get onloadstart(){return ob.brandCheck(this,e),this[C0].loadstart}set onloadstart(t){ob.brandCheck(this,e),this[C0].loadstart&&this.removeEventListener("loadstart",this[C0].loadstart),typeof t=="function"?(this[C0].loadstart=t,this.addEventListener("loadstart",t)):this[C0].loadstart=null}get onprogress(){return ob.brandCheck(this,e),this[C0].progress}set onprogress(t){ob.brandCheck(this,e),this[C0].progress&&this.removeEventListener("progress",this[C0].progress),typeof t=="function"?(this[C0].progress=t,this.addEventListener("progress",t)):this[C0].progress=null}get onload(){return ob.brandCheck(this,e),this[C0].load}set onload(t){ob.brandCheck(this,e),this[C0].load&&this.removeEventListener("load",this[C0].load),typeof t=="function"?(this[C0].load=t,this.addEventListener("load",t)):this[C0].load=null}get onabort(){return ob.brandCheck(this,e),this[C0].abort}set onabort(t){ob.brandCheck(this,e),this[C0].abort&&this.removeEventListener("abort",this[C0].abort),typeof t=="function"?(this[C0].abort=t,this.addEventListener("abort",t)):this[C0].abort=null}};HX.EMPTY=HX.prototype.EMPTY=0;HX.LOADING=HX.prototype.LOADING=1;HX.DONE=HX.prototype.DONE=2;Object.defineProperties(HX.prototype,{EMPTY:Bwe,LOADING:Bwe,DONE:Bwe,readAsArrayBuffer:sV,readAsBinaryString:sV,readAsText:sV,readAsDataURL:sV,abort:sV,readyState:sV,result:sV,error:sV,onloadstart:sV,onprogress:sV,onload:sV,onabort:sV,onerror:sV,onloadend:sV,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(HX,{EMPTY:Bwe,LOADING:Bwe,DONE:Bwe});R8n.exports={FileReader:HX}});var OIt=H((Yiu,D8n)=>{"use strict";D8n.exports={kConstruct:VE().kConstruct}});var G8n=H((Qiu,x8n)=>{"use strict";var isa=Et("assert"),{URLSerializer:k8n}=WX(),{isValidHeaderName:ssa}=kM();function osa(e,t,r=!1){let n=k8n(e,r),a=k8n(t,r);return n===a}function asa(e){isa(e!==null);let t=[];for(let r of e.split(",")){if(r=r.trim(),r.length){if(!ssa(r))continue}else continue;t.push(r)}return t}x8n.exports={urlEquals:osa,fieldValues:asa}});var O8n=H((Xiu,W8n)=>{"use strict";var{kConstruct:csa}=OIt(),{urlEquals:lsa,fieldValues:s0r}=G8n(),{kEnumerableProperty:fhe,isDisturbed:usa}=e_(),{kHeadersList:F8n}=VE(),{webidl:Wp}=OZ(),{Response:L8n,cloneResponse:gsa}=SIt(),{Request:W8}=dYe(),{kState:QZ,kHeaders:PIt,kGuard:Z8n,kRealm:Asa}=O$(),{fetching:dsa}=ZIt(),{urlIsHttpHttpsScheme:MIt,createDeferredPromise:wwe,readAllBytes:psa}=kM(),o0r=Et("assert"),{getGlobalDispatcher:fsa}=hwe(),HIt=class e{#e;constructor(){arguments[0]!==csa&&Wp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.match"}),t=Wp.converters.RequestInfo(t),r=Wp.converters.CacheQueryOptions(r);let n=await this.matchAll(t,r);if(n.length!==0)return n[0]}async matchAll(t=void 0,r={}){Wp.brandCheck(this,e),t!==void 0&&(t=Wp.converters.RequestInfo(t)),r=Wp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof W8){if(n=t[QZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new W8(t)[QZ]);let a=[];if(t===void 0)for(let l of this.#e)a.push(l[1]);else{let l=this.#n(n,r);for(let A of l)a.push(A[1])}let o=[];for(let l of a){let A=new L8n(l.body?.source??null),f=A[QZ].body;A[QZ]=l,A[QZ].body=f,A[PIt][F8n]=l.headersList,A[PIt][Z8n]="immutable",o.push(A)}return Object.freeze(o)}async add(t){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.add"}),t=Wp.converters.RequestInfo(t);let r=[t];return await this.addAll(r)}async addAll(t){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),t=Wp.converters["sequence"](t);let r=[],n=[];for(let b of t){if(typeof b=="string")continue;let E=b[QZ];if(!MIt(E.url)||E.method!=="GET")throw Wp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}let a=[];for(let b of t){let E=new W8(b)[QZ];if(!MIt(E.url))throw Wp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});E.initiator="fetch",E.destination="subresource",n.push(E);let N=wwe();a.push(dsa({request:E,dispatcher:fsa(),processResponse(B){if(B.type==="error"||B.status===206||B.status<200||B.status>299)N.reject(Wp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(B.headersList.contains("vary")){let F=s0r(B.headersList.get("vary"));for(let Q of F)if(Q==="*"){N.reject(Wp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let J of a)J.abort();return}}},processResponseEndOfBody(B){if(B.aborted){N.reject(new DOMException("aborted","AbortError"));return}N.resolve(B)}})),r.push(N.promise)}let l=await Promise.all(r),A=[],f=0;for(let b of l){let E={type:"put",request:n[f],response:b};A.push(E),f++}let I=wwe(),C=null;try{this.#t(A)}catch(b){C=b}return queueMicrotask(()=>{C===null?I.resolve(void 0):I.reject(C)}),I.promise}async put(t,r){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,2,{header:"Cache.put"}),t=Wp.converters.RequestInfo(t),r=Wp.converters.Response(r);let n=null;if(t instanceof W8?n=t[QZ]:n=new W8(t)[QZ],!MIt(n.url)||n.method!=="GET")throw Wp.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});let a=r[QZ];if(a.status===206)throw Wp.errors.exception({header:"Cache.put",message:"Got 206 status"});if(a.headersList.contains("vary")){let E=s0r(a.headersList.get("vary"));for(let N of E)if(N==="*")throw Wp.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(a.body&&(usa(a.body.stream)||a.body.stream.locked))throw Wp.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});let o=gsa(a),l=wwe();if(a.body!=null){let N=a.body.stream.getReader();psa(N).then(l.resolve,l.reject)}else l.resolve(void 0);let A=[],f={type:"put",request:n,response:o};A.push(f);let I=await l.promise;o.body!=null&&(o.body.source=I);let C=wwe(),b=null;try{this.#t(A)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve():C.reject(b)}),C.promise}async delete(t,r={}){Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),t=Wp.converters.RequestInfo(t),r=Wp.converters.CacheQueryOptions(r);let n=null;if(t instanceof W8){if(n=t[QZ],n.method!=="GET"&&!r.ignoreMethod)return!1}else o0r(typeof t=="string"),n=new W8(t)[QZ];let a=[],o={type:"delete",request:n,options:r};a.push(o);let l=wwe(),A=null,f;try{f=this.#t(a)}catch(I){A=I}return queueMicrotask(()=>{A===null?l.resolve(!!f?.length):l.reject(A)}),l.promise}async keys(t=void 0,r={}){Wp.brandCheck(this,e),t!==void 0&&(t=Wp.converters.RequestInfo(t)),r=Wp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof W8){if(n=t[QZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new W8(t)[QZ]);let a=wwe(),o=[];if(t===void 0)for(let l of this.#e)o.push(l[0]);else{let l=this.#n(n,r);for(let A of l)o.push(A[0])}return queueMicrotask(()=>{let l=[];for(let A of o){let f=new W8("https://a");f[QZ]=A,f[PIt][F8n]=A.headersList,f[PIt][Z8n]="immutable",f[Asa]=A.client,l.push(f)}a.resolve(Object.freeze(l))}),a.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);o0r(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!MIt(f.url))throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Wp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);o0r(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!lsa(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=s0r(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}};Object.defineProperties(HIt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:fhe,matchAll:fhe,add:fhe,addAll:fhe,put:fhe,delete:fhe,keys:fhe});var V8n=[{key:"ignoreSearch",converter:Wp.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:Wp.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:Wp.converters.boolean,defaultValue:!1}];Wp.converters.CacheQueryOptions=Wp.dictionaryConverter(V8n);Wp.converters.MultiCacheQueryOptions=Wp.dictionaryConverter([...V8n,{key:"cacheName",converter:Wp.converters.DOMString}]);Wp.converters.Response=Wp.interfaceConverter(L8n);Wp.converters["sequence"]=Wp.sequenceConverter(Wp.converters.RequestInfo);W8n.exports={Cache:HIt}});var M8n=H((Jiu,P8n)=>{"use strict";var{kConstruct:IYe}=OIt(),{Cache:YIt}=O8n(),{webidl:XZ}=OZ(),{kEnumerableProperty:hYe}=e_(),QIt=class e{#e=new Map;constructor(){arguments[0]!==IYe&&XZ.illegalConstructor()}async match(t,r={}){if(XZ.brandCheck(this,e),XZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),t=XZ.converters.RequestInfo(t),r=XZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new YIt(IYe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new YIt(IYe,n).match(t,r);if(o!==void 0)return o}}async has(t){return XZ.brandCheck(this,e),XZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),t=XZ.converters.DOMString(t),this.#e.has(t)}async open(t){if(XZ.brandCheck(this,e),XZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),t=XZ.converters.DOMString(t),this.#e.has(t)){let n=this.#e.get(t);return new YIt(IYe,n)}let r=[];return this.#e.set(t,r),new YIt(IYe,r)}async delete(t){return XZ.brandCheck(this,e),XZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),t=XZ.converters.DOMString(t),this.#e.delete(t)}async keys(){return XZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(QIt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:hYe,has:hYe,open:hYe,delete:hYe,keys:hYe});P8n.exports={CacheStorage:QIt}});var Y8n=H((Uiu,H8n)=>{"use strict";H8n.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var a0r=H((Kiu,J8n)=>{"use strict";var Q8n=Et("assert"),{kHeadersList:X8n}=VE();function Isa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r>=0||r<=8||r>=10||r<=31||r===127)return!1}}function hsa(e){for(let t of e){let r=t.charCodeAt(0);if(r<=32||r>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}")throw new Error("Invalid cookie name")}}function msa(e){for(let t of e){let r=t.charCodeAt(0);if(r<33||r===34||r===44||r===59||r===92||r>126)throw new Error("Invalid header value")}}function Csa(e){for(let t of e)if(t.charCodeAt(0)<33||t===";")throw new Error("Invalid cookie path")}function _sa(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}function ysa(e){typeof e=="number"&&(e=new Date(e));let t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],n=t[e.getUTCDay()],a=e.getUTCDate().toString().padStart(2,"0"),o=r[e.getUTCMonth()],l=e.getUTCFullYear(),A=e.getUTCHours().toString().padStart(2,"0"),f=e.getUTCMinutes().toString().padStart(2,"0"),I=e.getUTCSeconds().toString().padStart(2,"0");return`${n}, ${a} ${o} ${l} ${A}:${f}:${I} GMT`}function bsa(e){if(e<0)throw new Error("Invalid cookie max-age")}function Esa(e){if(e.name.length===0)return null;hsa(e.name),msa(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(bsa(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(_sa(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(Csa(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${ysa(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}var XIt;function Ssa(e){if(e[X8n])return e[X8n];XIt||(XIt=Object.getOwnPropertySymbols(e).find(r=>r.description==="headers list"),Q8n(XIt,"Headers cannot be parsed"));let t=e[XIt];return Q8n(t),t}J8n.exports={isCTLExcludingHtab:Isa,stringify:Esa,getHeadersList:Ssa}});var K8n=H((jiu,U8n)=>{"use strict";var{maxNameValuePairSize:vsa,maxAttributeValueSize:Bsa}=Y8n(),{isCTLExcludingHtab:wsa}=a0r(),{collectASequenceOfCodePointsFast:JIt}=WX(),Tsa=Et("assert");function Rsa(e){if(wsa(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=JIt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=JIt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>vsa?null:{name:n,value:a,...Twe(r)}}function Twe(e,t={}){if(e.length===0)return t;Tsa(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=JIt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=JIt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>Bsa)return Twe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return Twe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return Twe(e,t)}U8n.exports={parseSetCookie:Rsa,parseUnparsedAttributes:Twe}});var $8n=H((ziu,q8n)=>{"use strict";var{parseSetCookie:Nsa}=K8n(),{stringify:j8n,getHeadersList:Dsa}=a0r(),{webidl:oC}=OZ(),{Headers:UIt}=Ahe();function ksa(e){oC.argumentLengthCheck(arguments,1,{header:"getCookies"}),oC.brandCheck(e,UIt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function xsa(e,t,r){oC.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),oC.brandCheck(e,UIt,{strict:!1}),t=oC.converters.DOMString(t),r=oC.converters.DeleteCookieAttributes(r),z8n(e,{name:t,value:"",expires:new Date(0),...r})}function Gsa(e){oC.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),oC.brandCheck(e,UIt,{strict:!1});let t=Dsa(e).cookies;return t?t.map(r=>Nsa(Array.isArray(r)?r[1]:r)):[]}function z8n(e,t){oC.argumentLengthCheck(arguments,2,{header:"setCookie"}),oC.brandCheck(e,UIt,{strict:!1}),t=oC.converters.Cookie(t),j8n(t)&&e.append("Set-Cookie",j8n(t))}oC.converters.DeleteCookieAttributes=oC.dictionaryConverter([{converter:oC.nullableConverter(oC.converters.DOMString),key:"path",defaultValue:null},{converter:oC.nullableConverter(oC.converters.DOMString),key:"domain",defaultValue:null}]);oC.converters.Cookie=oC.dictionaryConverter([{converter:oC.converters.DOMString,key:"name"},{converter:oC.converters.DOMString,key:"value"},{converter:oC.nullableConverter(e=>typeof e=="number"?oC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:oC.nullableConverter(oC.converters["long long"]),key:"maxAge",defaultValue:null},{converter:oC.nullableConverter(oC.converters.DOMString),key:"domain",defaultValue:null},{converter:oC.nullableConverter(oC.converters.DOMString),key:"path",defaultValue:null},{converter:oC.nullableConverter(oC.converters.boolean),key:"secure",defaultValue:null},{converter:oC.nullableConverter(oC.converters.boolean),key:"httpOnly",defaultValue:null},{converter:oC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:oC.sequenceConverter(oC.converters.DOMString),key:"unparsed",defaultValue:[]}]);q8n.exports={getCookies:ksa,deleteCookie:xsa,getSetCookies:Gsa,setCookie:z8n}});var Rwe=H((qiu,e6n)=>{"use strict";var Fsa="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",Zsa={enumerable:!0,writable:!1,configurable:!1},Lsa={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},Vsa={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},Wsa=2**16-1,Osa={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},Psa=Buffer.allocUnsafe(0);e6n.exports={uid:Fsa,staticPropertyDescriptors:Zsa,states:Lsa,opcodes:Vsa,maxUnsigned16Bit:Wsa,parserStates:Osa,emptyBuffer:Psa}});var mYe=H(($iu,t6n)=>{"use strict";t6n.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var l0r=H((esu,r6n)=>{"use strict";var{webidl:Op}=OZ(),{kEnumerableProperty:oV}=e_(),{MessagePort:Msa}=Et("worker_threads"),KIt=class e extends Event{#e;constructor(t,r={}){Op.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),t=Op.converters.DOMString(t),r=Op.converters.MessageEventInit(r),super(t,r),this.#e=r}get data(){return Op.brandCheck(this,e),this.#e.data}get origin(){return Op.brandCheck(this,e),this.#e.origin}get lastEventId(){return Op.brandCheck(this,e),this.#e.lastEventId}get source(){return Op.brandCheck(this,e),this.#e.source}get ports(){return Op.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Op.brandCheck(this,e),Op.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}},jIt=class e extends Event{#e;constructor(t,r={}){Op.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),t=Op.converters.DOMString(t),r=Op.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Op.brandCheck(this,e),this.#e.wasClean}get code(){return Op.brandCheck(this,e),this.#e.code}get reason(){return Op.brandCheck(this,e),this.#e.reason}},zIt=class e extends Event{#e;constructor(t,r){Op.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,r),t=Op.converters.DOMString(t),r=Op.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Op.brandCheck(this,e),this.#e.message}get filename(){return Op.brandCheck(this,e),this.#e.filename}get lineno(){return Op.brandCheck(this,e),this.#e.lineno}get colno(){return Op.brandCheck(this,e),this.#e.colno}get error(){return Op.brandCheck(this,e),this.#e.error}};Object.defineProperties(KIt.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:oV,origin:oV,lastEventId:oV,source:oV,ports:oV,initMessageEvent:oV});Object.defineProperties(jIt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:oV,code:oV,wasClean:oV});Object.defineProperties(zIt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:oV,filename:oV,lineno:oV,colno:oV,error:oV});Op.converters.MessagePort=Op.interfaceConverter(Msa);Op.converters["sequence"]=Op.sequenceConverter(Op.converters.MessagePort);var c0r=[{key:"bubbles",converter:Op.converters.boolean,defaultValue:!1},{key:"cancelable",converter:Op.converters.boolean,defaultValue:!1},{key:"composed",converter:Op.converters.boolean,defaultValue:!1}];Op.converters.MessageEventInit=Op.dictionaryConverter([...c0r,{key:"data",converter:Op.converters.any,defaultValue:null},{key:"origin",converter:Op.converters.USVString,defaultValue:""},{key:"lastEventId",converter:Op.converters.DOMString,defaultValue:""},{key:"source",converter:Op.nullableConverter(Op.converters.MessagePort),defaultValue:null},{key:"ports",converter:Op.converters["sequence"],get defaultValue(){return[]}}]);Op.converters.CloseEventInit=Op.dictionaryConverter([...c0r,{key:"wasClean",converter:Op.converters.boolean,defaultValue:!1},{key:"code",converter:Op.converters["unsigned short"],defaultValue:0},{key:"reason",converter:Op.converters.USVString,defaultValue:""}]);Op.converters.ErrorEventInit=Op.dictionaryConverter([...c0r,{key:"message",converter:Op.converters.DOMString,defaultValue:""},{key:"filename",converter:Op.converters.USVString,defaultValue:""},{key:"lineno",converter:Op.converters["unsigned long"],defaultValue:0},{key:"colno",converter:Op.converters["unsigned long"],defaultValue:0},{key:"error",converter:Op.converters.any}]);r6n.exports={MessageEvent:KIt,CloseEvent:jIt,ErrorEvent:zIt}});var eht=H((tsu,s6n)=>{"use strict";var{kReadyState:qIt,kController:Hsa,kResponse:Ysa,kBinaryType:Qsa,kWebSocketURL:Xsa}=mYe(),{states:$It,opcodes:n6n}=Rwe(),{MessageEvent:Jsa,ErrorEvent:Usa}=l0r();function Ksa(e){return e[qIt]===$It.OPEN}function jsa(e){return e[qIt]===$It.CLOSING}function zsa(e){return e[qIt]===$It.CLOSED}function u0r(e,t,r=Event,n){let a=new r(e,n);t.dispatchEvent(a)}function qsa(e,t,r){if(e[qIt]!==$It.OPEN)return;let n;if(t===n6n.TEXT)try{n=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{i6n(e,"Received invalid UTF-8 in text frame.");return}else t===n6n.BINARY&&(e[Qsa]==="blob"?n=new Blob([r]):n=new Uint8Array(r).buffer);u0r("message",e,Jsa,{origin:e[Xsa].origin,data:n})}function $sa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r<33||r>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||r===32||r===9)return!1}return!0}function eoa(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function i6n(e,t){let{[Hsa]:r,[Ysa]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&u0r("error",e,Usa,{error:new Error(t)})}s6n.exports={isEstablished:Ksa,isClosing:jsa,isClosed:zsa,fireEvent:u0r,isValidSubprotocol:$sa,isValidStatusCode:eoa,failWebsocketConnection:i6n,websocketMessageReceived:qsa}});var g6n=H((rsu,u6n)=>{"use strict";var A0r=Et("diagnostics_channel"),{uid:toa,states:a6n}=Rwe(),{kReadyState:c6n,kSentClose:o6n,kByteParser:l6n,kReceivedClose:roa}=mYe(),{fireEvent:noa,failWebsocketConnection:Ihe}=eht(),{CloseEvent:ioa}=l0r(),{makeRequest:soa}=dYe(),{fetching:ooa}=ZIt(),{Headers:aoa}=Ahe(),{getGlobalDispatcher:coa}=hwe(),{kHeadersList:loa}=VE(),K$={};K$.open=A0r.channel("undici:websocket:open");K$.close=A0r.channel("undici:websocket:close");K$.socketError=A0r.channel("undici:websocket:socket_error");var g0r;try{g0r=Et("crypto")}catch{}function uoa(e,t,r,n,a){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let l=soa({urlList:[o],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(a.headers){let C=new aoa(a.headers)[loa];l.headersList=C}let A=g0r.randomBytes(16).toString("base64");l.headersList.append("sec-websocket-key",A),l.headersList.append("sec-websocket-version","13");for(let C of t)l.headersList.append("sec-websocket-protocol",C);let f="";return ooa({request:l,useParallelQueue:!0,dispatcher:a.dispatcher??coa(),processResponse(C){if(C.type==="error"||C.status!==101){Ihe(r,"Received network error or non-101 status code.");return}if(t.length!==0&&!C.headersList.get("Sec-WebSocket-Protocol")){Ihe(r,"Server did not respond with sent protocols.");return}if(C.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){Ihe(r,'Server did not set Upgrade header to "websocket".');return}if(C.headersList.get("Connection")?.toLowerCase()!=="upgrade"){Ihe(r,'Server did not set Connection header to "upgrade".');return}let b=C.headersList.get("Sec-WebSocket-Accept"),E=g0r.createHash("sha1").update(A+toa).digest("base64");if(b!==E){Ihe(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let N=C.headersList.get("Sec-WebSocket-Extensions");if(N!==null&&N!==f){Ihe(r,"Received different permessage-deflate than the one set.");return}let B=C.headersList.get("Sec-WebSocket-Protocol");if(B!==null&&B!==l.headersList.get("Sec-WebSocket-Protocol")){Ihe(r,"Protocol was not set in the opening handshake.");return}C.socket.on("data",goa),C.socket.on("close",Aoa),C.socket.on("error",doa),K$.open.hasSubscribers&&K$.open.publish({address:C.socket.address(),protocol:B,extensions:N}),n(C)}})}function goa(e){this.ws[l6n].write(e)||this.pause()}function Aoa(){let{ws:e}=this,t=e[o6n]&&e[roa],r=1005,n="",a=e[l6n].closingInfo;a?(r=a.code??1005,n=a.reason):e[o6n]||(r=1006),e[c6n]=a6n.CLOSED,noa("close",e,ioa,{wasClean:t,code:r,reason:n}),K$.close.hasSubscribers&&K$.close.publish({websocket:e,code:r,reason:n})}function doa(e){let{ws:t}=this;t[c6n]=a6n.CLOSING,K$.socketError.hasSubscribers&&K$.socketError.publish(e),this.destroy()}u6n.exports={establishWebSocketConnection:uoa}});var p0r=H((nsu,d6n)=>{"use strict";var{maxUnsigned16Bit:poa}=Rwe(),A6n;try{A6n=Et("crypto")}catch{}var d0r=class{constructor(t){this.frameData=t,this.maskKey=A6n.randomBytes(4)}createFrame(t){let r=this.frameData?.byteLength??0,n=r,a=6;r>poa?(a+=8,n=127):r>125&&(a+=2,n=126);let o=Buffer.allocUnsafe(r+a);o[0]=o[1]=0,o[0]|=128,o[0]=(o[0]&240)+t;o[a-4]=this.maskKey[0],o[a-3]=this.maskKey[1],o[a-2]=this.maskKey[2],o[a-1]=this.maskKey[3],o[1]=n,n===126?o.writeUInt16BE(r,2):n===127&&(o[2]=o[3]=0,o.writeUIntBE(r,4,6)),o[1]|=128;for(let l=0;l{"use strict";var{Writable:foa}=Et("stream"),C6n=Et("diagnostics_channel"),{parserStates:FM,opcodes:ZM,states:Ioa,emptyBuffer:hoa}=Rwe(),{kReadyState:moa,kSentClose:p6n,kResponse:f6n,kReceivedClose:I6n}=mYe(),{isValidStatusCode:h6n,failWebsocketConnection:CYe,websocketMessageReceived:Coa}=eht(),{WebsocketFrameSend:m6n}=p0r(),Nwe={};Nwe.ping=C6n.channel("undici:websocket:ping");Nwe.pong=C6n.channel("undici:websocket:pong");var f0r=class extends foa{#e=[];#t=0;#n=FM.INFO;#r={};#i=[];constructor(t){super(),this.ws=t}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.run(n)}run(t){for(;;){if(this.#n===FM.INFO){if(this.#t<2)return t();let r=this.consume(2);if(this.#r.fin=(r[0]&128)!==0,this.#r.opcode=r[0]&15,this.#r.originalOpcode??=this.#r.opcode,this.#r.fragmented=!this.#r.fin&&this.#r.opcode!==ZM.CONTINUATION,this.#r.fragmented&&this.#r.opcode!==ZM.BINARY&&this.#r.opcode!==ZM.TEXT){CYe(this.ws,"Invalid frame type was fragmented.");return}let n=r[1]&127;if(n<=125?(this.#r.payloadLength=n,this.#n=FM.READ_DATA):n===126?this.#n=FM.PAYLOADLENGTH_16:n===127&&(this.#n=FM.PAYLOADLENGTH_64),this.#r.fragmented&&n>125){CYe(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#r.opcode===ZM.PING||this.#r.opcode===ZM.PONG||this.#r.opcode===ZM.CLOSE)&&n>125){CYe(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#r.opcode===ZM.CLOSE){if(n===1){CYe(this.ws,"Received close frame with a 1-byte body.");return}let a=this.consume(n);if(this.#r.closeInfo=this.parseCloseBody(!1,a),!this.ws[p6n]){let o=Buffer.allocUnsafe(2);o.writeUInt16BE(this.#r.closeInfo.code,0);let l=new m6n(o);this.ws[f6n].socket.write(l.createFrame(ZM.CLOSE),A=>{A||(this.ws[p6n]=!0)})}this.ws[moa]=Ioa.CLOSING,this.ws[I6n]=!0,this.end();return}else if(this.#r.opcode===ZM.PING){let a=this.consume(n);if(!this.ws[I6n]){let o=new m6n(a);this.ws[f6n].socket.write(o.createFrame(ZM.PONG)),Nwe.ping.hasSubscribers&&Nwe.ping.publish({payload:a})}if(this.#n=FM.INFO,this.#t>0)continue;t();return}else if(this.#r.opcode===ZM.PONG){let a=this.consume(n);if(Nwe.pong.hasSubscribers&&Nwe.pong.publish({payload:a}),this.#t>0)continue;t();return}}else if(this.#n===FM.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#r.payloadLength=r.readUInt16BE(0),this.#n=FM.READ_DATA}else if(this.#n===FM.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){CYe(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#r.payloadLength=(n<<8)+a,this.#n=FM.READ_DATA}else if(this.#n===FM.READ_DATA){if(this.#t=this.#r.payloadLength){let r=this.consume(this.#r.payloadLength);if(this.#i.push(r),!this.#r.fragmented||this.#r.fin&&this.#r.opcode===ZM.CONTINUATION){let n=Buffer.concat(this.#i);Coa(this.ws,this.#r.originalOpcode,n),this.#r={},this.#i.length=0}this.#n=FM.INFO}}if(!(this.#t>0)){t();break}}}consume(t){if(t>this.#t)return null;if(t===0)return hoa;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t,r){let n;if(r.length>=2&&(n=r.readUInt16BE(0)),t)return h6n(n)?{code:n}:null;let a=r.subarray(2);if(a[0]===239&&a[1]===187&&a[2]===191&&(a=a.subarray(3)),n!==void 0&&!h6n(n))return null;try{a=new TextDecoder("utf-8",{fatal:!0}).decode(a)}catch{return null}return{code:n,reason:a}}get closingInfo(){return this.#r.closeInfo}};_6n.exports={ByteParser:f0r}});var R6n=H((ssu,T6n)=>{"use strict";var{webidl:hI}=OZ(),{DOMException:Iae}=aae(),{URLSerializer:_oa}=WX(),{getGlobalOrigin:yoa}=KBe(),{staticPropertyDescriptors:hae,states:Dwe,opcodes:_Ye,emptyBuffer:boa}=Rwe(),{kWebSocketURL:b6n,kReadyState:j$,kController:Eoa,kBinaryType:tht,kResponse:rht,kSentClose:Soa,kByteParser:voa}=mYe(),{isEstablished:E6n,isClosing:S6n,isValidSubprotocol:Boa,failWebsocketConnection:woa,fireEvent:Toa}=eht(),{establishWebSocketConnection:Roa}=g6n(),{WebsocketFrameSend:yYe}=p0r(),{ByteParser:Noa}=y6n(),{kEnumerableProperty:LM,isBlobLike:B6n}=e_(),{getGlobalDispatcher:Doa}=hwe(),{types:w6n}=Et("util"),v6n=!1,oP=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";constructor(t,r=[]){super(),hI.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),v6n||(v6n=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));let n=hI.converters["DOMString or sequence or WebSocketInit"](r);t=hI.converters.USVString(t),r=n.protocols;let a=yoa(),o;try{o=new URL(t,a)}catch(l){throw new Iae(l,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new Iae(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new Iae("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(l=>l.toLowerCase())).size)throw new Iae("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(l=>Boa(l)))throw new Iae("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[b6n]=new URL(o.href),this[Eoa]=Roa(o,r,this,l=>this.#i(l),n),this[j$]=e.CONNECTING,this[tht]="blob"}close(t=void 0,r=void 0){if(hI.brandCheck(this,e),t!==void 0&&(t=hI.converters["unsigned short"](t,{clamp:!0})),r!==void 0&&(r=hI.converters.USVString(r)),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new Iae("invalid code","InvalidAccessError");let n=0;if(r!==void 0&&(n=Buffer.byteLength(r),n>123))throw new Iae(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError");if(!(this[j$]===e.CLOSING||this[j$]===e.CLOSED))if(!E6n(this))woa(this,"Connection was closed before it was established."),this[j$]=e.CLOSING;else if(S6n(this))this[j$]=e.CLOSING;else{let a=new yYe;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=boa,this[rht].socket.write(a.createFrame(_Ye.CLOSE),l=>{l||(this[Soa]=!0)}),this[j$]=Dwe.CLOSING}}send(t){if(hI.brandCheck(this,e),hI.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),t=hI.converters.WebSocketSendData(t),this[j$]===e.CONNECTING)throw new Iae("Sent before connected.","InvalidStateError");if(!E6n(this)||S6n(this))return;let r=this[rht].socket;if(typeof t=="string"){let n=Buffer.from(t),o=new yYe(n).createFrame(_Ye.TEXT);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(w6n.isArrayBuffer(t)){let n=Buffer.from(t),o=new yYe(n).createFrame(_Ye.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ArrayBuffer.isView(t)){let n=Buffer.from(t,t.byteOffset,t.byteLength),o=new yYe(n).createFrame(_Ye.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(B6n(t)){let n=new yYe;t.arrayBuffer().then(a=>{let o=Buffer.from(a);n.frameData=o;let l=n.createFrame(_Ye.BINARY);this.#t+=o.byteLength,r.write(l,()=>{this.#t-=o.byteLength})})}}get readyState(){return hI.brandCheck(this,e),this[j$]}get bufferedAmount(){return hI.brandCheck(this,e),this.#t}get url(){return hI.brandCheck(this,e),_oa(this[b6n])}get extensions(){return hI.brandCheck(this,e),this.#r}get protocol(){return hI.brandCheck(this,e),this.#n}get onopen(){return hI.brandCheck(this,e),this.#e.open}set onopen(t){hI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return hI.brandCheck(this,e),this.#e.error}set onerror(t){hI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return hI.brandCheck(this,e),this.#e.close}set onclose(t){hI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return hI.brandCheck(this,e),this.#e.message}set onmessage(t){hI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return hI.brandCheck(this,e),this[tht]}set binaryType(t){hI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[tht]="blob":this[tht]=t}#i(t){this[rht]=t;let r=new Noa(this);r.on("drain",function(){this.ws[rht].socket.resume()}),t.socket.ws=this,this[voa]=r,this[j$]=Dwe.OPEN;let n=t.headersList.get("sec-websocket-extensions");n!==null&&(this.#r=n);let a=t.headersList.get("sec-websocket-protocol");a!==null&&(this.#n=a),Toa("open",this)}};oP.CONNECTING=oP.prototype.CONNECTING=Dwe.CONNECTING;oP.OPEN=oP.prototype.OPEN=Dwe.OPEN;oP.CLOSING=oP.prototype.CLOSING=Dwe.CLOSING;oP.CLOSED=oP.prototype.CLOSED=Dwe.CLOSED;Object.defineProperties(oP.prototype,{CONNECTING:hae,OPEN:hae,CLOSING:hae,CLOSED:hae,url:LM,readyState:LM,bufferedAmount:LM,onopen:LM,onerror:LM,onclose:LM,close:LM,onmessage:LM,binaryType:LM,send:LM,extensions:LM,protocol:LM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(oP,{CONNECTING:hae,OPEN:hae,CLOSING:hae,CLOSED:hae});hI.converters["sequence"]=hI.sequenceConverter(hI.converters.DOMString);hI.converters["DOMString or sequence"]=function(e){return hI.util.Type(e)==="Object"&&Symbol.iterator in e?hI.converters["sequence"](e):hI.converters.DOMString(e)};hI.converters.WebSocketInit=hI.dictionaryConverter([{key:"protocols",converter:hI.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return Doa()}},{key:"headers",converter:hI.nullableConverter(hI.converters.HeadersInit)}]);hI.converters["DOMString or sequence or WebSocketInit"]=function(e){return hI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?hI.converters.WebSocketInit(e):{protocols:hI.converters["DOMString or sequence"](e)}};hI.converters.WebSocketSendData=function(e){if(hI.util.Type(e)==="Object"){if(B6n(e))return hI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||w6n.isAnyArrayBuffer(e))return hI.converters.BufferSource(e)}return hI.converters.USVString(e)};T6n.exports={WebSocket:oP}});var x6n=H((osu,wh)=>{"use strict";var koa=eYe(),N6n=Lft(),D6n=qb(),xoa=cwe(),Goa=YJn(),Foa=iYe(),hhe=e_(),{InvalidArgumentError:nht}=D6n,kwe=FUn(),Zoa=XHe(),Loa=v_r(),Voa=hKn(),Woa=T_r(),Ooa=d_r(),Poa=EKn(),Moa=TKn(),{getGlobalDispatcher:k6n,setGlobalDispatcher:Hoa}=hwe(),Yoa=GKn(),Qoa=SCr(),Xoa=Pft(),I0r;try{Et("crypto"),I0r=!0}catch{I0r=!1}Object.assign(N6n.prototype,kwe);wh.exports.Dispatcher=N6n;wh.exports.Client=koa;wh.exports.Pool=xoa;wh.exports.BalancedPool=Goa;wh.exports.Agent=Foa;wh.exports.ProxyAgent=Poa;wh.exports.RetryHandler=Moa;wh.exports.DecoratorHandler=Yoa;wh.exports.RedirectHandler=Qoa;wh.exports.createRedirectInterceptor=Xoa;wh.exports.buildConnector=Zoa;wh.exports.errors=D6n;function bYe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new nht("invalid url");if(r!=null&&typeof r!="object")throw new nht("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new nht("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(hhe.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=hhe.parseURL(t);let{agent:a,dispatcher:o=k6n()}=r;if(a)throw new nht("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}wh.exports.setGlobalDispatcher=Hoa;wh.exports.getGlobalDispatcher=k6n;if(hhe.nodeMajor>16||hhe.nodeMajor===16&&hhe.nodeMinor>=8){let e=null;wh.exports.fetch=async function(l){e||(e=ZIt().fetch);try{return await e(...arguments)}catch(A){throw typeof A=="object"&&Error.captureStackTrace(A,this),A}},wh.exports.Headers=Ahe().Headers,wh.exports.Response=SIt().Response,wh.exports.Request=dYe().Request,wh.exports.FormData=Gft().FormData,wh.exports.File=kft().File,wh.exports.FileReader=N8n().FileReader;let{setGlobalOrigin:t,getGlobalOrigin:r}=KBe();wh.exports.setGlobalOrigin=t,wh.exports.getGlobalOrigin=r;let{CacheStorage:n}=M8n(),{kConstruct:a}=OIt();wh.exports.caches=new n(a)}if(hhe.nodeMajor>=16){let{deleteCookie:e,getCookies:t,getSetCookies:r,setCookie:n}=$8n();wh.exports.deleteCookie=e,wh.exports.getCookies=t,wh.exports.getSetCookies=r,wh.exports.setCookie=n;let{parseMIMEType:a,serializeAMimeType:o}=WX();wh.exports.parseMIMEType=a,wh.exports.serializeAMimeType=o}if(hhe.nodeMajor>=18&&I0r){let{WebSocket:e}=R6n();wh.exports.WebSocket=e}wh.exports.request=bYe(kwe.request);wh.exports.stream=bYe(kwe.stream);wh.exports.pipeline=bYe(kwe.pipeline);wh.exports.connect=bYe(kwe.connect);wh.exports.upgrade=bYe(kwe.upgrade);wh.exports.MockClient=Loa;wh.exports.MockPool=Woa;wh.exports.MockAgent=Voa;wh.exports.mockErrors=Ooa});var F6n=H(OE=>{"use strict";var Joa=OE&&OE.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Uoa=OE&&OE.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),cht=OE&&OE.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Joa(t,e,r);return Uoa(t,e),t},ow=OE&&OE.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(OE,"__esModule",{value:!0});OE.HttpClient=OE.isHttps=OE.HttpClientResponse=OE.HttpClientError=OE.getProxyUrl=OE.MediaTypes=OE.Headers=OE.HttpCodes=void 0;var h0r=cht(Et("http")),G6n=cht(Et("https")),m0r=cht(YQn()),iht=cht(jQn()),Koa=x6n(),VM;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(VM||(OE.HttpCodes=VM={}));var TG;(function(e){e.Accept="accept",e.ContentType="content-type"})(TG||(OE.Headers=TG={}));var z$;(function(e){e.ApplicationJson="application/json"})(z$||(OE.MediaTypes=z$={}));function joa(e){let t=m0r.getProxyUrl(new URL(e));return t?t.href:""}OE.getProxyUrl=joa;var zoa=[VM.MovedPermanently,VM.ResourceMoved,VM.SeeOther,VM.TemporaryRedirect,VM.PermanentRedirect],qoa=[VM.BadGateway,VM.ServiceUnavailable,VM.GatewayTimeout],$oa=["OPTIONS","GET","DELETE","HEAD"],eaa=10,taa=5,oht=class e extends Error{constructor(t,r){super(t),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,e.prototype)}};OE.HttpClientError=oht;var aht=class{constructor(t){this.message=t}readBody(){return ow(this,void 0,void 0,function*(){return new Promise(t=>ow(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{t(r.toString())})}))})}readBodyBuffer(){return ow(this,void 0,void 0,function*(){return new Promise(t=>ow(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{t(Buffer.concat(r))})}))})}};OE.HttpClientResponse=aht;function raa(e){return new URL(e).protocol==="https:"}OE.isHttps=raa;var C0r=class{constructor(t,r,n){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=t,this.handlers=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(t,r){return ow(this,void 0,void 0,function*(){return this.request("OPTIONS",t,null,r||{})})}get(t,r){return ow(this,void 0,void 0,function*(){return this.request("GET",t,null,r||{})})}del(t,r){return ow(this,void 0,void 0,function*(){return this.request("DELETE",t,null,r||{})})}post(t,r,n){return ow(this,void 0,void 0,function*(){return this.request("POST",t,r,n||{})})}patch(t,r,n){return ow(this,void 0,void 0,function*(){return this.request("PATCH",t,r,n||{})})}put(t,r,n){return ow(this,void 0,void 0,function*(){return this.request("PUT",t,r,n||{})})}head(t,r){return ow(this,void 0,void 0,function*(){return this.request("HEAD",t,null,r||{})})}sendStream(t,r,n,a){return ow(this,void 0,void 0,function*(){return this.request(t,r,n,a)})}getJson(t,r={}){return ow(this,void 0,void 0,function*(){r[TG.Accept]=this._getExistingOrDefaultHeader(r,TG.Accept,z$.ApplicationJson);let n=yield this.get(t,r);return this._processResponse(n,this.requestOptions)})}postJson(t,r,n={}){return ow(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[TG.Accept]=this._getExistingOrDefaultHeader(n,TG.Accept,z$.ApplicationJson),n[TG.ContentType]=this._getExistingOrDefaultHeader(n,TG.ContentType,z$.ApplicationJson);let o=yield this.post(t,a,n);return this._processResponse(o,this.requestOptions)})}putJson(t,r,n={}){return ow(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[TG.Accept]=this._getExistingOrDefaultHeader(n,TG.Accept,z$.ApplicationJson),n[TG.ContentType]=this._getExistingOrDefaultHeader(n,TG.ContentType,z$.ApplicationJson);let o=yield this.put(t,a,n);return this._processResponse(o,this.requestOptions)})}patchJson(t,r,n={}){return ow(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[TG.Accept]=this._getExistingOrDefaultHeader(n,TG.Accept,z$.ApplicationJson),n[TG.ContentType]=this._getExistingOrDefaultHeader(n,TG.ContentType,z$.ApplicationJson);let o=yield this.patch(t,a,n);return this._processResponse(o,this.requestOptions)})}request(t,r,n,a){return ow(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),l=this._prepareRequest(t,o,a),A=this._allowRetries&&$oa.includes(t)?this._maxRetries+1:1,f=0,I;do{if(I=yield this.requestRaw(l,n),I&&I.message&&I.message.statusCode===VM.Unauthorized){let b;for(let E of this.handlers)if(E.canHandleAuthentication(I)){b=E;break}return b?b.handleAuthentication(this,l,n):I}let C=this._maxRedirects;for(;I.message.statusCode&&zoa.includes(I.message.statusCode)&&this._allowRedirects&&C>0;){let b=I.message.headers.location;if(!b)break;let E=new URL(b);if(o.protocol==="https:"&&o.protocol!==E.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield I.readBody(),E.hostname!==o.hostname)for(let N in a)N.toLowerCase()==="authorization"&&delete a[N];l=this._prepareRequest(t,E,a),I=yield this.requestRaw(l,n),C--}if(!I.message.statusCode||!qoa.includes(I.message.statusCode))return I;f+=1,f{function o(l,A){l?a(l):A?n(A):a(new Error("Unknown error"))}this.requestRawWithCallback(t,r,o)})})}requestRawWithCallback(t,r,n){typeof r=="string"&&(t.options.headers||(t.options.headers={}),t.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let a=!1;function o(f,I){a||(a=!0,n(f,I))}let l=t.httpModule.request(t.options,f=>{let I=new aht(f);o(void 0,I)}),A;l.on("socket",f=>{A=f}),l.setTimeout(this._socketTimeout||3*6e4,()=>{A&&A.end(),o(new Error(`Request timeout: ${t.options.path}`))}),l.on("error",function(f){o(f)}),r&&typeof r=="string"&&l.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){l.end()}),r.pipe(l)):l.end()}getAgent(t){let r=new URL(t);return this._getAgent(r)}getAgentDispatcher(t){let r=new URL(t),n=m0r.getProxyUrl(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(t,r,n){let a={};a.parsedUrl=r;let o=a.parsedUrl.protocol==="https:";a.httpModule=o?G6n:h0r;let l=o?443:80;if(a.options={},a.options.host=a.parsedUrl.hostname,a.options.port=a.parsedUrl.port?parseInt(a.parsedUrl.port):l,a.options.path=(a.parsedUrl.pathname||"")+(a.parsedUrl.search||""),a.options.method=t,a.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(a.options.headers["user-agent"]=this.userAgent),a.options.agent=this._getAgent(a.parsedUrl),this.handlers)for(let A of this.handlers)A.prepareRequest(a.options);return a}_mergeHeaders(t){return this.requestOptions&&this.requestOptions.headers?Object.assign({},sht(this.requestOptions.headers),sht(t||{})):sht(t||{})}_getExistingOrDefaultHeader(t,r,n){let a;return this.requestOptions&&this.requestOptions.headers&&(a=sht(this.requestOptions.headers)[r]),t[r]||a||n}_getAgent(t){let r,n=m0r.getProxyUrl(t),a=n&&n.hostname;if(this._keepAlive&&a&&(r=this._proxyAgent),a||(r=this._agent),r)return r;let o=t.protocol==="https:",l=100;if(this.requestOptions&&(l=this.requestOptions.maxSockets||h0r.globalAgent.maxSockets),n&&n.hostname){let A={maxSockets:l,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},f,I=n.protocol==="https:";o?f=I?iht.httpsOverHttps:iht.httpsOverHttp:f=I?iht.httpOverHttps:iht.httpOverHttp,r=f(A),this._proxyAgent=r}if(!r){let A={keepAlive:this._keepAlive,maxSockets:l};r=o?new G6n.Agent(A):new h0r.Agent(A),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(t,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let a=t.protocol==="https:";return n=new Koa.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,a&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_performExponentialBackoff(t){return ow(this,void 0,void 0,function*(){t=Math.min(eaa,t);let r=taa*Math.pow(2,t);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(t,r){return ow(this,void 0,void 0,function*(){return new Promise((n,a)=>ow(this,void 0,void 0,function*(){let o=t.message.statusCode||0,l={statusCode:o,result:null,headers:{}};o===VM.NotFound&&n(l);function A(C,b){if(typeof b=="string"){let E=new Date(b);if(!isNaN(E.valueOf()))return E}return b}let f,I;try{I=yield t.readBody(),I&&I.length>0&&(r&&r.deserializeDates?f=JSON.parse(I,A):f=JSON.parse(I),l.result=f),l.headers=t.message.headers}catch{}if(o>299){let C;f&&f.message?C=f.message:I&&I.length>0?C=I:C=`Failed request: (${o})`;let b=new oht(C,o);b.result=l.result,a(b)}else n(l)}))})}};OE.HttpClient=C0r;var sht=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{})});var N2=H((csu,Z6n)=>{Z6n.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var J0=H((lsu,L6n)=>{"use strict";var GS=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},_0r=class extends GS{constructor(t){super(t),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},y0r=class extends GS{constructor(t){super(t),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},b0r=class extends GS{constructor(t){super(t),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},E0r=class extends GS{constructor(t){super(t),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},S0r=class extends GS{constructor(t,r,n,a){super(t),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},v0r=class extends GS{constructor(t){super(t),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},B0r=class extends GS{constructor(t){super(t),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},lht=class extends GS{constructor(t){super(t),this.name="AbortError",this.message=t||"The operation was aborted"}},w0r=class extends lht{constructor(t){super(t),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},T0r=class extends GS{constructor(t){super(t),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},R0r=class extends GS{constructor(t){super(t),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},N0r=class extends GS{constructor(t){super(t),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},D0r=class extends GS{constructor(t){super(t),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},k0r=class extends GS{constructor(t){super(t),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},x0r=class extends GS{constructor(t,r){super(t),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},G0r=class extends GS{constructor(t){super(t),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},F0r=class extends GS{constructor(t){super(t),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},Z0r=class extends Error{constructor(t,r,n){super(t),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},L0r=class extends GS{constructor(t){super(t),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},V0r=class extends GS{constructor(t,r,{headers:n,data:a}){super(t),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}},W0r=class extends GS{constructor(t,r,{headers:n,data:a}){super(t),this.name="ResponseError",this.message=t||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=a,this.headers=n}},O0r=class extends GS{constructor(t,r,n){super(r,{cause:t,...n??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=t}};L6n.exports={AbortError:lht,HTTPParserError:Z0r,UndiciError:GS,HeadersTimeoutError:y0r,HeadersOverflowError:b0r,BodyTimeoutError:E0r,RequestContentLengthMismatchError:R0r,ConnectTimeoutError:_0r,ResponseStatusCodeError:S0r,InvalidArgumentError:v0r,InvalidReturnValueError:B0r,RequestAbortedError:w0r,ClientDestroyedError:D0r,ClientClosedError:k0r,InformationalError:T0r,SocketError:x0r,NotSupportedError:G0r,ResponseContentLengthMismatchError:N0r,BalancedPoolMissingUpstreamError:F0r,ResponseExceededMaxSizeError:L0r,RequestRetryError:V0r,ResponseError:W0r,SecureProxyConnectionError:O0r}});var ght=H((usu,V6n)=>{"use strict";var uht={},P0r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var{wellknownHeaderNames:W6n,headerNameLowerCasedRecord:naa}=ght(),M0r=class e{value=null;left=null;middle=null;right=null;code;constructor(t,r,n){if(n===void 0||n>=t.length)throw new TypeError("Unreachable");if((this.code=t.charCodeAt(n))>127)throw new TypeError("key must be ascii string");t.length!==++n?this.middle=new e(t,r,n):this.value=r}add(t,r){let n=t.length;if(n===0)throw new TypeError("Unreachable");let a=0,o=this;for(;;){let l=t.charCodeAt(a);if(l>127)throw new TypeError("key must be ascii string");if(o.code===l)if(n===++a){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new e(t,r,a);break}else if(o.code=65&&(o|=32);a!==null;){if(o===a.code){if(r===++n)return a;a=a.middle;break}a=a.code{"use strict";var EYe=Et("node:assert"),{kDestroyed:Y6n,kBodyUsed:xwe,kListeners:H0r,kBody:H6n}=N2(),{IncomingMessage:iaa}=Et("node:http"),fht=Et("node:stream"),saa=Et("node:net"),{Blob:oaa}=Et("node:buffer"),aaa=Et("node:util"),{stringify:caa}=Et("node:querystring"),{EventEmitter:laa}=Et("node:events"),{InvalidArgumentError:oD}=J0(),{headerNameLowerCasedRecord:uaa}=ght(),{tree:Q6n}=M6n(),[gaa,Aaa]=process.versions.node.split(".").map(e=>Number(e)),pht=class{constructor(t){this[H6n]=t,this[xwe]=!1}async*[Symbol.asyncIterator](){EYe(!this[xwe],"disturbed"),this[xwe]=!0,yield*this[H6n]}};function daa(e){return Iht(e)?(j6n(e)===0&&e.on("data",function(){EYe(!1)}),typeof e.readableDidRead!="boolean"&&(e[xwe]=!1,laa.prototype.on.call(e,"data",function(){this[xwe]=!0})),e):e&&typeof e.pipeTo=="function"?new pht(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&K6n(e)?new pht(e):e}function paa(){}function Iht(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function X6n(e){if(e===null)return!1;if(e instanceof oaa)return!0;if(typeof e!="object")return!1;{let t=e[Symbol.toStringTag];return(t==="Blob"||t==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function faa(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=caa(t);return r&&(e+="?"+r),e}function J6n(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function dht(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function U6n(e){if(typeof e=="string"){if(e=new URL(e),!dht(e.origin||e.protocol))throw new oD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new oD("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&J6n(e.port)===!1)throw new oD("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new oD("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new oD("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new oD("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new oD("Invalid URL origin: the origin must be a string or null/undefined.");if(!dht(e.origin||e.protocol))throw new oD("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),n&&n[0]!=="/"&&(n=`/${n}`),new URL(`${r}${n}`)}if(!dht(e.origin||e.protocol))throw new oD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function Iaa(e){if(e=U6n(e),e.pathname!=="/"||e.search||e.hash)throw new oD("invalid url");return e}function haa(e){if(e[0]==="["){let r=e.indexOf("]");return EYe(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function maa(e){if(!e)return null;EYe(typeof e=="string");let t=haa(e);return saa.isIP(t)?"":t}function Caa(e){return JSON.parse(JSON.stringify(e))}function _aa(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function K6n(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function j6n(e){if(e==null)return 0;if(Iht(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(X6n(e))return e.size!=null?e.size:null;if($6n(e))return e.byteLength}return null}function z6n(e){return e&&!!(e.destroyed||e[Y6n]||fht.isDestroyed?.(e))}function yaa(e,t){e==null||!Iht(e)||z6n(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===iaa&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit("error",t)}),e.destroyed!==!0&&(e[Y6n]=!0))}var baa=/timeout=(\d+)/;function Eaa(e){let t=e.toString().match(baa);return t?parseInt(t[1],10)*1e3:null}function q6n(e){return typeof e=="string"?uaa[e]??e.toLowerCase():Q6n.lookup(e)??e.toString("latin1").toLowerCase()}function Saa(e){return Q6n.lookup(e)??e.toString("latin1").toLowerCase()}function vaa(e,t){t===void 0&&(t={});for(let r=0;rl.toString("utf8")):o.toString("utf8")}}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function Baa(e){let t=e.length,r=new Array(t),n=!1,a=-1,o,l,A=0;for(let f=0;f{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()},type:"bytes"})}function xaa(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Gaa(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var Faa=typeof String.prototype.toWellFormed=="function",Zaa=typeof String.prototype.isWellFormed=="function";function ejn(e){return Faa?`${e}`.toWellFormed():aaa.toUSVString(e)}function Laa(e){return Zaa?`${e}`.isWellFormed():ejn(e)===`${e}`}function tjn(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function Vaa(e){if(e.length===0)return!1;for(let t=0;t{"use strict";var U0=Et("node:diagnostics_channel"),X0r=Et("node:util"),hht=X0r.debuglog("undici"),Q0r=X0r.debuglog("fetch"),mhe=X0r.debuglog("websocket"),sjn=!1,Qaa={beforeConnect:U0.channel("undici:client:beforeConnect"),connected:U0.channel("undici:client:connected"),connectError:U0.channel("undici:client:connectError"),sendHeaders:U0.channel("undici:client:sendHeaders"),create:U0.channel("undici:request:create"),bodySent:U0.channel("undici:request:bodySent"),headers:U0.channel("undici:request:headers"),trailers:U0.channel("undici:request:trailers"),error:U0.channel("undici:request:error"),open:U0.channel("undici:websocket:open"),close:U0.channel("undici:websocket:close"),socketError:U0.channel("undici:websocket:socket_error"),ping:U0.channel("undici:websocket:ping"),pong:U0.channel("undici:websocket:pong")};if(hht.enabled||Q0r.enabled){let e=Q0r.enabled?Q0r:hht;U0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),U0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),U0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s using %s%s errored - %s",`${o}${a?`:${a}`:""}`,n,r,l.message)}),U0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)}),U0.channel("undici:request:headers").subscribe(t=>{let{request:{method:r,path:n,origin:a},response:{statusCode:o}}=t;e("received response to %s %s/%s - HTTP %d",r,a,n,o)}),U0.channel("undici:request:trailers").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("trailers received from %s %s/%s",r,a,n)}),U0.channel("undici:request:error").subscribe(t=>{let{request:{method:r,path:n,origin:a},error:o}=t;e("request to %s %s/%s errored - %s",r,a,n,o.message)}),sjn=!0}if(mhe.enabled){if(!sjn){let e=hht.enabled?hht:mhe;U0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),U0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),U0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s%s using %s%s errored - %s",o,a?`:${a}`:"",n,r,l.message)}),U0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)})}U0.channel("undici:websocket:open").subscribe(e=>{let{address:{address:t,port:r}}=e;mhe("connection opened %s%s",t,r?`:${r}`:"")}),U0.channel("undici:websocket:close").subscribe(e=>{let{websocket:t,code:r,reason:n}=e;mhe("closed connection to %s - %s %s",t.url,r,n)}),U0.channel("undici:websocket:socket_error").subscribe(e=>{mhe("connection errored - %s",e.message)}),U0.channel("undici:websocket:ping").subscribe(e=>{mhe("ping received")}),U0.channel("undici:websocket:pong").subscribe(e=>{mhe("pong received")})}ojn.exports={channels:Qaa}});var gjn=H((psu,ujn)=>{"use strict";var{InvalidArgumentError:ZS,NotSupportedError:Xaa}=J0(),q$=Et("node:assert"),{isValidHTTPToken:ljn,isValidHeaderValue:ajn,isStream:Jaa,destroy:Uaa,isBuffer:Kaa,isFormDataLike:jaa,isIterable:zaa,isBlobLike:qaa,buildURL:$aa,validateHandler:eca,getServerName:tca,normalizedMethodRecords:rca}=wm(),{channels:O8}=Gwe(),{headerNameLowerCasedRecord:cjn}=ght(),nca=/[^\u0021-\u00ff]/,WM=Symbol("handler"),J0r=class{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B,servername:F},Q){if(typeof r!="string")throw new ZS("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new ZS("path must be an absolute URL or start with a slash");if(nca.test(r))throw new ZS("invalid request path");if(typeof n!="string")throw new ZS("method must be a string");if(rca[n]===void 0&&!ljn(n))throw new ZS("invalid request method");if(I&&typeof I!="string")throw new ZS("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new ZS("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new ZS("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new ZS("invalid reset");if(B!=null&&typeof B!="boolean")throw new ZS("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(Jaa(a)){this.body=a;let J=this.body._readableState;(!J||!J.autoDestroy)&&(this.endHandler=function(){Uaa(this)},this.body.on("end",this.endHandler)),this.errorHandler=ae=>{this.abort?this.abort(ae):this.error=ae},this.body.on("error",this.errorHandler)}else if(Kaa(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(jaa(a)||zaa(a)||qaa(a))this.body=a;else throw new ZS("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?$aa(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new ZS("headers array must be even");for(let J=0;J{"use strict";var ica=Et("node:events"),Cht=class extends ica{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...t){let r=Array.isArray(t[0])?t[0]:t,n=this.dispatch.bind(this);for(let a of r)if(a!=null){if(typeof a!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof a}`);if(n=a(n),n==null||typeof n!="function"||n.length!==2)throw new TypeError("invalid interceptor")}return new U0r(this,n)}},U0r=class extends Cht{#e=null;#t=null;constructor(t,r){super(),this.#e=t,this.#t=r}dispatch(...t){this.#t(...t)}close(...t){return this.#e.close(...t)}destroy(...t){return this.#e.destroy(...t)}};Ajn.exports=Cht});var Vwe=H((Isu,djn)=>{"use strict";var sca=SYe(),{ClientDestroyedError:K0r,ClientClosedError:oca,InvalidArgumentError:Fwe}=J0(),{kDestroy:aca,kClose:cca,kClosed:vYe,kDestroyed:Zwe,kDispatch:j0r,kInterceptors:Che}=N2(),$$=Symbol("onDestroyed"),Lwe=Symbol("onClosed"),_ht=Symbol("Intercepted Dispatch"),z0r=class extends sca{constructor(){super(),this[Zwe]=!1,this[$$]=null,this[vYe]=!1,this[Lwe]=[]}get destroyed(){return this[Zwe]}get closed(){return this[vYe]}get interceptors(){return this[Che]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[Che][r]!="function")throw new Fwe("interceptor must be an function")}this[Che]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new Fwe("invalid callback");if(this[Zwe]){queueMicrotask(()=>t(new K0r,null));return}if(this[vYe]){this[Lwe]?this[Lwe].push(t):queueMicrotask(()=>t(null,null));return}this[vYe]=!0,this[Lwe].push(t);let r=()=>{let n=this[Lwe];this[Lwe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new Fwe("invalid callback");if(this[Zwe]){this[$$]?this[$$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new K0r),this[Zwe]=!0,this[$$]=this[$$]||[],this[$$].push(r);let n=()=>{let a=this[$$];this[$$]=null;for(let o=0;o{queueMicrotask(n)})}[_ht](t,r){if(!this[Che]||this[Che].length===0)return this[_ht]=this[j0r],this[j0r](t,r);let n=this[j0r].bind(this);for(let a=this[Che].length-1;a>=0;a--)n=this[Che][a](n);return this[_ht]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new Fwe("handler must be an object");try{if(!t||typeof t!="object")throw new Fwe("opts must be an object.");if(this[Zwe]||this[$$])throw new K0r;if(this[vYe])throw new oca;return this[_ht](t,r)}catch(n){if(typeof r.onError!="function")throw new Fwe("invalid onError method");return r.onError(n),!1}}};djn.exports=z0r});var iyr=H((hsu,hjn)=>{"use strict";var Wwe=0,q0r=1e3,$0r=(q0r>>1)-1,eee,eyr=Symbol("kFastTimer"),tee=[],tyr=-2,ryr=-1,fjn=0,pjn=1;function nyr(){Wwe+=$0r;let e=0,t=tee.length;for(;e=r._idleStart+r._idleTimeout&&(r._state=ryr,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===ryr?(r._state=tyr,--t!==0&&(tee[e]=tee[t])):++e}tee.length=t,tee.length!==0&&Ijn()}function Ijn(){eee?eee.refresh():(clearTimeout(eee),eee=setTimeout(nyr,$0r),eee.unref&&eee.unref())}var yht=class{[eyr]=!0;_state=tyr;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(t,r,n){this._onTimeout=t,this._idleTimeout=r,this._timerArg=n,this.refresh()}refresh(){this._state===tyr&&tee.push(this),(!eee||tee.length===1)&&Ijn(),this._state=fjn}clear(){this._state=ryr,this._idleStart=-1}};hjn.exports={setTimeout(e,t,r){return t<=q0r?setTimeout(e,t,r):new yht(e,t,r)},clearTimeout(e){e[eyr]?e.clear():clearTimeout(e)},setFastTimeout(e,t,r){return new yht(e,t,r)},clearFastTimeout(e){e.clear()},now(){return Wwe},tick(e=0){Wwe+=e-q0r+1,nyr(),nyr()},reset(){Wwe=0,tee.length=0,clearTimeout(eee),eee=null},kFastTimer:eyr}});var BYe=H((_su,bjn)=>{"use strict";var lca=Et("node:net"),mjn=Et("node:assert"),yjn=wm(),{InvalidArgumentError:uca,ConnectTimeoutError:gca}=J0(),bht=iyr();function Cjn(){}var syr,oyr;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?oyr=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function Aca({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,session:a,...o}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new uca("maxCachedSessions must be a positive integer or zero");let l={path:r,...o},A=new oyr(t??100);return n=n??1e4,e=e??!1,function({hostname:I,host:C,protocol:b,port:E,servername:N,localAddress:B,httpSocket:F},Q){let J;if(b==="https:"){syr||(syr=Et("node:tls")),N=N||l.servername||yjn.getServerName(C)||null;let ne=N||I;mjn(ne);let ce=a||A.get(ne)||null;E=E||443,J=syr.connect({highWaterMark:16384,...l,servername:N,session:ce,localAddress:B,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:F,port:E,host:I}),J.on("session",function(fe){A.set(ne,fe)})}else mjn(!F,"httpSocket can only be sent on TLS update"),E=E||80,J=lca.connect({highWaterMark:64*1024,...l,localAddress:B,port:E,host:I});if(l.keepAlive==null||l.keepAlive){let ne=l.keepAliveInitialDelay===void 0?6e4:l.keepAliveInitialDelay;J.setKeepAlive(!0,ne)}let ae=dca(new WeakRef(J),{timeout:n,hostname:I,port:E});return J.setNoDelay(!0).once(b==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(ae),Q){let ne=Q;Q=null,ne(null,this)}}).on("error",function(ne){if(queueMicrotask(ae),Q){let ce=Q;Q=null,ce(ne)}}),J}}var dca=process.platform==="win32"?(e,t)=>{if(!t.timeout)return Cjn;let r=null,n=null,a=bht.setFastTimeout(()=>{r=setImmediate(()=>{n=setImmediate(()=>_jn(e.deref(),t))})},t.timeout);return()=>{bht.clearFastTimeout(a),clearImmediate(r),clearImmediate(n)}}:(e,t)=>{if(!t.timeout)return Cjn;let r=null,n=bht.setFastTimeout(()=>{r=setImmediate(()=>{_jn(e.deref(),t)})},t.timeout);return()=>{bht.clearFastTimeout(n),clearImmediate(r)}};function _jn(e,t){let r="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${t.hostname}:${t.port},`,r+=` timeout: ${t.timeout}ms)`,yjn.destroy(e,new gca(r))}bjn.exports=Aca});var Ejn=H(Eht=>{"use strict";Object.defineProperty(Eht,"__esModule",{value:!0});Eht.enumToMap=void 0;function pca(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}Eht.enumToMap=pca});var Sjn=H(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.SPECIAL_HEADERS=Gu.HEADER_STATE=Gu.MINOR=Gu.MAJOR=Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS=Gu.TOKEN=Gu.STRICT_TOKEN=Gu.HEX=Gu.URL_CHAR=Gu.STRICT_URL_CHAR=Gu.USERINFO_CHARS=Gu.MARK=Gu.ALPHANUM=Gu.NUM=Gu.HEX_MAP=Gu.NUM_MAP=Gu.ALPHA=Gu.FINISH=Gu.H_METHOD_MAP=Gu.METHOD_MAP=Gu.METHODS_RTSP=Gu.METHODS_ICE=Gu.METHODS_HTTP=Gu.METHODS=Gu.LENIENT_FLAGS=Gu.FLAGS=Gu.TYPE=Gu.ERROR=void 0;var fca=Ejn(),Ica;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(Ica=Gu.ERROR||(Gu.ERROR={}));var hca;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(hca=Gu.TYPE||(Gu.TYPE={}));var mca;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(mca=Gu.FLAGS||(Gu.FLAGS={}));var Cca;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(Cca=Gu.LENIENT_FLAGS||(Gu.LENIENT_FLAGS={}));var Pp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Pp=Gu.METHODS||(Gu.METHODS={}));Gu.METHODS_HTTP=[Pp.DELETE,Pp.GET,Pp.HEAD,Pp.POST,Pp.PUT,Pp.CONNECT,Pp.OPTIONS,Pp.TRACE,Pp.COPY,Pp.LOCK,Pp.MKCOL,Pp.MOVE,Pp.PROPFIND,Pp.PROPPATCH,Pp.SEARCH,Pp.UNLOCK,Pp.BIND,Pp.REBIND,Pp.UNBIND,Pp.ACL,Pp.REPORT,Pp.MKACTIVITY,Pp.CHECKOUT,Pp.MERGE,Pp["M-SEARCH"],Pp.NOTIFY,Pp.SUBSCRIBE,Pp.UNSUBSCRIBE,Pp.PATCH,Pp.PURGE,Pp.MKCALENDAR,Pp.LINK,Pp.UNLINK,Pp.PRI,Pp.SOURCE];Gu.METHODS_ICE=[Pp.SOURCE];Gu.METHODS_RTSP=[Pp.OPTIONS,Pp.DESCRIBE,Pp.ANNOUNCE,Pp.SETUP,Pp.PLAY,Pp.PAUSE,Pp.TEARDOWN,Pp.GET_PARAMETER,Pp.SET_PARAMETER,Pp.REDIRECT,Pp.RECORD,Pp.FLUSH,Pp.GET,Pp.POST];Gu.METHOD_MAP=fca.enumToMap(Pp);Gu.H_METHOD_MAP={};Object.keys(Gu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(Gu.H_METHOD_MAP[e]=Gu.METHOD_MAP[e])});var _ca;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(_ca=Gu.FINISH||(Gu.FINISH={}));Gu.ALPHA=[];for(let e=65;e<=90;e++)Gu.ALPHA.push(String.fromCharCode(e)),Gu.ALPHA.push(String.fromCharCode(e+32));Gu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Gu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Gu.NUM=["0","1","2","3","4","5","6","7","8","9"];Gu.ALPHANUM=Gu.ALPHA.concat(Gu.NUM);Gu.MARK=["-","_",".","!","~","*","'","(",")"];Gu.USERINFO_CHARS=Gu.ALPHANUM.concat(Gu.MARK).concat(["%",";",":","&","=","+","$",","]);Gu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Gu.ALPHANUM);Gu.URL_CHAR=Gu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)Gu.URL_CHAR.push(e);Gu.HEX=Gu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Gu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Gu.ALPHANUM);Gu.TOKEN=Gu.STRICT_TOKEN.concat([" "]);Gu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&Gu.HEADER_CHARS.push(e);Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS.filter(e=>e!==44);Gu.MAJOR=Gu.NUM_MAP;Gu.MINOR=Gu.MAJOR;var Owe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(Owe=Gu.HEADER_STATE||(Gu.HEADER_STATE={}));Gu.SPECIAL_HEADERS={connection:Owe.CONNECTION,"content-length":Owe.CONTENT_LENGTH,"proxy-connection":Owe.CONNECTION,"transfer-encoding":Owe.TRANSFER_ENCODING,upgrade:Owe.UPGRADE}});var ayr=H((Esu,vjn)=>{"use strict";var{Buffer:yca}=Et("node:buffer");vjn.exports=yca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var wjn=H((Ssu,Bjn)=>{"use strict";var{Buffer:bca}=Et("node:buffer");Bjn.exports=bca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var wYe=H((vsu,Fjn)=>{"use strict";var Tjn=["GET","HEAD","POST"],Eca=new Set(Tjn),Sca=[101,204,205,304],Rjn=[301,302,303,307,308],vca=new Set(Rjn),Njn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],Bca=new Set(Njn),Djn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],wca=new Set(Djn),Tca=["follow","manual","error"],kjn=["GET","HEAD","OPTIONS","TRACE"],Rca=new Set(kjn),Nca=["navigate","same-origin","no-cors","cors"],Dca=["omit","same-origin","include"],kca=["default","no-store","reload","no-cache","force-cache","only-if-cached"],xca=["content-encoding","content-language","content-location","content-type","content-length"],Gca=["half"],xjn=["CONNECT","TRACE","TRACK"],Fca=new Set(xjn),Gjn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Zca=new Set(Gjn);Fjn.exports={subresource:Gjn,forbiddenMethods:xjn,requestBodyHeader:xca,referrerPolicy:Djn,requestRedirect:Tca,requestMode:Nca,requestCredentials:Dca,requestCache:kca,redirectStatus:Rjn,corsSafeListedMethods:Tjn,nullBodyStatus:Sca,safeMethods:kjn,badPorts:Njn,requestDuplex:Gca,subresourceSet:Zca,badPortsSet:Bca,redirectStatusSet:vca,corsSafeListedMethodsSet:Eca,safeMethodsSet:Rca,forbiddenMethodsSet:Fca,referrerPolicySet:wca}});var lyr=H((Bsu,Zjn)=>{"use strict";var cyr=Symbol.for("undici.globalOrigin.1");function Lca(){return globalThis[cyr]}function Vca(e){if(e===void 0){Object.defineProperty(globalThis,cyr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,cyr,{value:t,writable:!0,enumerable:!1,configurable:!1})}Zjn.exports={getGlobalOrigin:Lca,setGlobalOrigin:Vca}});var aV=H((wsu,Hjn)=>{"use strict";var vht=Et("node:assert"),Wca=new TextEncoder,TYe=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Oca=/[\u000A\u000D\u0009\u0020]/,Pca=/[\u0009\u000A\u000C\u000D\u0020]/g,Mca=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Hca(e){vht(e.protocol==="data:");let t=Wjn(e,!0);t=t.slice(5);let r={position:0},n=Pwe(",",t,r),a=n.length;if(n=Kca(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=Ojn(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=Mjn(l);if(l=Qca(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=uyr(n);return A==="failure"&&(A=uyr("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function Wjn(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length,a=n===0?r:r.substring(0,r.length-n);return!n&&r.endsWith("#")?a.slice(0,-1):a}function Bht(e,t,r){let n="";for(;r.position=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function Vjn(e){return e>=48&&e<=57?e-48:(e&223)-55}function Yca(e){let t=e.length,r=new Uint8Array(t),n=0;for(let a=0;ae.length)return"failure";t.position++;let n=Pwe(";",e,t);if(n=Sht(n,!1,!0),n.length===0||!TYe.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionOca.test(I),e,t);let A=Bht(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=Pjn(e,t,!0),Pwe(";",e,t);else if(f=Pwe(";",e,t),f=Sht(f,!1,!0),f.length===0)continue;A.length!==0&&TYe.test(A)&&(f.length===0||Mca.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function Qca(e){e=e.replace(Pca,"");let t=e.length;if(t%4===0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4===1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return"failure";let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function Pjn(e,t,r){let n=t.position,a="";for(vht(e[t.position]==='"'),t.position++;a+=Bht(l=>l!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{vht(o==='"');break}}return r?a:e.slice(n,t.position)}function Xca(e){vht(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",TYe.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function Jca(e){return e===13||e===10||e===9||e===32}function Sht(e,t=!0,r=!0){return gyr(e,t,r,Jca)}function Uca(e){return e===13||e===10||e===9||e===12||e===32}function Kca(e,t=!0,r=!0){return gyr(e,t,r,Uca)}function gyr(e,t,r,n){let a=0,o=e.length-1;if(t)for(;a0&&n(e.charCodeAt(o));)o--;return a===0&&o===e.length-1?e:e.slice(a,o+1)}function Mjn(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let r="",n=0,a=65535;for(;nt&&(a=t-n),r+=String.fromCharCode.apply(null,e.subarray(n,n+=a));return r}function jca(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}Hjn.exports={dataURLProcessor:Hca,URLSerializer:Wjn,collectASequenceOfCodePoints:Bht,collectASequenceOfCodePointsFast:Pwe,stringPercentDecode:Ojn,parseMIMEType:uyr,collectAnHTTPQuotedString:Pjn,serializeAMimeType:Xca,removeChars:gyr,removeHTTPWhitespace:Sht,minimizeSupportedMimeType:jca,HTTP_TOKEN_CODEPOINTS:TYe,isomorphicDecode:Mjn}});var Vk=H((Tsu,Yjn)=>{"use strict";var{types:P8,inspect:zca}=Et("node:util"),{toUSVString:qca}=wm(),_u={};_u.converters={};_u.util={};_u.errors={};_u.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};_u.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return _u.errors.exception({header:e.prefix,message:r})};_u.errors.invalidArgument=function(e){return _u.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};_u.brandCheck=function(e,t,r){if(r?.strict!==!1){if(!(e instanceof t)){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}}else if(e?.[Symbol.toStringTag]!==t.prototype[Symbol.toStringTag]){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}};_u.argumentLengthCheck=function({length:e},t,r){if(ea)throw _u.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n?.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=_u.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};_u.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};_u.util.Stringify=function(e){switch(_u.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return zca(e);case"String":return`"${e}"`;default:return`${e}`}};_u.sequenceConverter=function(e){return(t,r,n,a)=>{if(_u.util.Type(t)!=="Object")throw _u.errors.exception({header:r,message:`${n} (${_u.util.Stringify(t)}) is not iterable.`});let o=typeof a=="function"?a():t?.[Symbol.iterator]?.(),l=[],A=0;if(o===void 0||typeof o.next!="function")throw _u.errors.exception({header:r,message:`${n} is not iterable.`});for(;;){let{done:f,value:I}=o.next();if(f)break;l.push(e(I,r,`${n}[${A++}]`))}return l}};_u.recordConverter=function(e,t){return(r,n,a)=>{if(_u.util.Type(r)!=="Object")throw _u.errors.exception({header:n,message:`${a} ("${_u.util.Type(r)}") is not an Object.`});let o={};if(!P8.isProxy(r)){let A=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let f of A){let I=e(f,n,a),C=t(r[f],n,a);o[I]=C}return o}let l=Reflect.ownKeys(r);for(let A of l)if(Reflect.getOwnPropertyDescriptor(r,A)?.enumerable){let I=e(A,n,a),C=t(r[A],n,a);o[I]=C}return o}};_u.interfaceConverter=function(e){return(t,r,n,a)=>{if(a?.strict!==!1&&!(t instanceof e))throw _u.errors.exception({header:r,message:`Expected ${n} ("${_u.util.Stringify(t)}") to be an instance of ${e.name}.`});return t}};_u.dictionaryConverter=function(e){return(t,r,n)=>{let a=_u.util.Type(t),o={};if(a==="Null"||a==="Undefined")return o;if(a!=="Object")throw _u.errors.exception({header:r,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let l of e){let{key:A,defaultValue:f,required:I,converter:C}=l;if(I===!0&&!Object.hasOwn(t,A))throw _u.errors.exception({header:r,message:`Missing required key "${A}".`});let b=t[A],E=Object.hasOwn(l,"defaultValue");if(E&&b!==null&&(b??=f()),I||E||b!==void 0){if(b=C(b,r,`${n}.${A}`),l.allowedValues&&!l.allowedValues.includes(b))throw _u.errors.exception({header:r,message:`${b} is not an accepted type. Expected one of ${l.allowedValues.join(", ")}.`});o[A]=b}}return o}};_u.nullableConverter=function(e){return(t,r,n)=>t===null?t:e(t,r,n)};_u.converters.DOMString=function(e,t,r,n){if(e===null&&n?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw _u.errors.exception({header:t,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(e)};_u.converters.ByteString=function(e,t,r){let n=_u.converters.DOMString(e,t,r);for(let a=0;a255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${n.charCodeAt(a)} which is greater than 255.`);return n};_u.converters.USVString=qca;_u.converters.boolean=function(e){return!!e};_u.converters.any=function(e){return e};_u.converters["long long"]=function(e,t,r){return _u.util.ConvertToInt(e,64,"signed",void 0,t,r)};_u.converters["unsigned long long"]=function(e,t,r){return _u.util.ConvertToInt(e,64,"unsigned",void 0,t,r)};_u.converters["unsigned long"]=function(e,t,r){return _u.util.ConvertToInt(e,32,"unsigned",void 0,t,r)};_u.converters["unsigned short"]=function(e,t,r,n){return _u.util.ConvertToInt(e,16,"unsigned",n,t,r)};_u.converters.ArrayBuffer=function(e,t,r,n){if(_u.util.Type(e)!=="Object"||!P8.isAnyArrayBuffer(e))throw _u.errors.conversionFailed({prefix:t,argument:`${r} ("${_u.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(n?.allowShared===!1&&P8.isSharedArrayBuffer(e))throw _u.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw _u.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};_u.converters.TypedArray=function(e,t,r,n,a){if(_u.util.Type(e)!=="Object"||!P8.isTypedArray(e)||e.constructor.name!==t.name)throw _u.errors.conversionFailed({prefix:r,argument:`${n} ("${_u.util.Stringify(e)}")`,types:[t.name]});if(a?.allowShared===!1&&P8.isSharedArrayBuffer(e.buffer))throw _u.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw _u.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};_u.converters.DataView=function(e,t,r,n){if(_u.util.Type(e)!=="Object"||!P8.isDataView(e))throw _u.errors.exception({header:t,message:`${r} is not a DataView.`});if(n?.allowShared===!1&&P8.isSharedArrayBuffer(e.buffer))throw _u.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw _u.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};_u.converters.BufferSource=function(e,t,r,n){if(P8.isAnyArrayBuffer(e))return _u.converters.ArrayBuffer(e,t,r,{...n,allowShared:!1});if(P8.isTypedArray(e))return _u.converters.TypedArray(e,e.constructor,t,r,{...n,allowShared:!1});if(P8.isDataView(e))return _u.converters.DataView(e,t,r,{...n,allowShared:!1});throw _u.errors.conversionFailed({prefix:t,argument:`${r} ("${_u.util.Stringify(e)}")`,types:["BufferSource"]})};_u.converters["sequence"]=_u.sequenceConverter(_u.converters.ByteString);_u.converters["sequence>"]=_u.sequenceConverter(_u.converters["sequence"]);_u.converters["record"]=_u.recordConverter(_u.converters.ByteString,_u.converters.ByteString);Yjn.exports={webidl:_u}});var aP=H((Rsu,i7n)=>{"use strict";var{Transform:$ca}=Et("node:stream"),Qjn=Et("node:zlib"),{redirectStatusSet:ela,referrerPolicySet:tla,badPortsSet:rla}=wYe(),{getGlobalOrigin:Xjn}=lyr(),{collectASequenceOfCodePoints:_he,collectAnHTTPQuotedString:nla,removeChars:ila,parseMIMEType:sla}=aV(),{performance:ola}=Et("node:perf_hooks"),{isBlobLike:ala,ReadableStreamFrom:cla,isValidHTTPToken:Jjn,normalizedMethodRecordsBase:lla}=wm(),yhe=Et("node:assert"),{isUint8Array:ula}=Et("node:util/types"),{webidl:RYe}=Vk(),Ujn=[],Tht;try{Tht=Et("node:crypto");let e=["sha256","sha384","sha512"];Ujn=Tht.getHashes().filter(t=>e.includes(t))}catch{}function Kjn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function gla(e,t){if(!ela.has(e.status))return null;let r=e.headersList.get("location",!0);return r!==null&&zjn(r)&&(jjn(r)||(r=Ala(r)),r=new URL(r,Kjn(e))),r&&!r.hash&&(r.hash=t),r}function jjn(e){for(let t=0;t126||r<32)return!1}return!0}function Ala(e){return Buffer.from(e,"binary").toString("utf8")}function DYe(e){return e.urlList[e.urlList.length-1]}function dla(e){let t=DYe(e);return r7n(t)&&rla.has(t.port)?"blocked":"allowed"}function pla(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function fla(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}var Ila=Jjn;function zjn(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(` +`)||e.includes("\r")||e.includes("\0"))===!1}function hla(e,t){let{headersList:r}=t,n=(r.get("referrer-policy",!0)??"").split(","),a="";if(n.length>0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(tla.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function mla(){return"allowed"}function Cla(){return"success"}function _la(){return"success"}function yla(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t,!0)}function bla(e){let t=e.origin;if(!(t==="client"||t===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",t,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&dyr(e.origin)&&!dyr(DYe(e))&&(t=null);break;case"same-origin":Rht(e,DYe(e))||(t=null);break;default:}e.headersList.append("origin",t,!0)}}}function Mwe(e,t){return e}function Ela(e,t,r){return!e?.startTime||e.startTime4096&&(n=a);let o=Rht(e,n),l=NYe(n)&&!NYe(e.url);switch(t){case"origin":return a??Ayr(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=DYe(e);return Rht(n,A)?n:NYe(n)&&!NYe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function Ayr(e,t){return yhe(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function NYe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function Tla(e,t){if(Tht===void 0)return!0;let r=$jn(t);if(r==="no metadata"||r.length===0)return!0;let n=Nla(r),a=Dla(r,n);for(let o of a){let l=o.algo,A=o.hash,f=Tht.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),kla(f,A))return!0}return!1}var Rla=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function $jn(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=Rla.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();Ujn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function Nla(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function Fla(e){return e.controller.state==="aborted"}function Zla(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function Lla(e){return lla[e.toLowerCase()]??e}function Vla(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return yhe(typeof t=="string"),t}var Wla=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function e7n(e,t,r=0,n=1){class a{#e;#t;#n;constructor(l,A){this.#e=l,this.#t=A,this.#n=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let l=this.#n,A=this.#e[t],f=A.length;if(l>=f)return{value:void 0,done:!0};let{[r]:I,[n]:C}=A[l];this.#n=l+1;let b;switch(this.#t){case"key":b=I;break;case"value":b=C;break;case"key+value":b=[I,C];break}return{value:b,done:!1}}}return delete a.prototype.constructor,Object.setPrototypeOf(a.prototype,Wla),Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,l){return new a(o,l)}}function Ola(e,t,r,n=0,a=1){let o=e7n(e,r,n,a),l={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return RYe.brandCheck(this,t),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return RYe.brandCheck(this,t),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return RYe.brandCheck(this,t),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(f,I=globalThis){if(RYe.brandCheck(this,t),RYe.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof f!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:C,1:b}of o(this,"key+value"))f.call(I,b,C,this)}}};return Object.defineProperties(t.prototype,{...l,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:l.entries.value}})}async function Pla(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{n(await t7n(o))}catch(l){a(l)}}function Mla(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function Hla(e){try{e.close(),e.byobRequest?.respond(0)}catch(t){if(!t.message.includes("Controller is already closed")&&!t.message.includes("ReadableStream is already closed"))throw t}}var Yla=/[^\x00-\xFF]/;function wht(e){return yhe(!Yla.test(e)),e}async function t7n(e){let t=[],r=0;for(;;){let{done:n,value:a}=await e.read();if(n)return Buffer.concat(t,r);if(!ula(a))throw new TypeError("Received non-Uint8Array chunk");t.push(a),r+=a.length}}function Qla(e){yhe("protocol"in e);let t=e.protocol;return t==="about:"||t==="blob:"||t==="data:"}function dyr(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function r7n(e){yhe("protocol"in e);let t=e.protocol;return t==="http:"||t==="https:"}function Xla(e,t){let r=e;if(!r.startsWith("bytes"))return"failure";let n={position:5};if(t&&_he(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==61)return"failure";n.position++,t&&_he(f=>f===" "||f===" ",r,n);let a=_he(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),o=a.length?Number(a):null;if(t&&_he(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==45)return"failure";n.position++,t&&_he(f=>f===" "||f===" ",r,n);let l=_he(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),A=l.length?Number(l):null;return n.positionA?"failure":{rangeStartValue:o,rangeEndValue:A}}function Jla(e,t,r){let n="bytes ";return n+=wht(`${e}`),n+="-",n+=wht(`${t}`),n+="/",n+=wht(`${r}`),n}var pyr=class extends $ca{#e;constructor(t){super(),this.#e=t}_transform(t,r,n){if(!this._inflateStream){if(t.length===0){n();return}this._inflateStream=(t[0]&15)===8?Qjn.createInflate(this.#e):Qjn.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(t,r,n)}_final(t){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),t()}};function Ula(e){return new pyr(e)}function Kla(e){let t=null,r=null,n=null,a=n7n("content-type",e);if(a===null)return"failure";for(let o of a){let l=sla(o);l==="failure"||l.essence==="*/*"||(n=l,n.essence!==r?(t=null,n.parameters.has("charset")&&(t=n.parameters.get("charset")),r=n.essence):!n.parameters.has("charset")&&t!==null&&n.parameters.set("charset",t))}return n??"failure"}function jla(e){let t=e,r={position:0},n=[],a="";for(;r.positiono!=='"'&&o!==",",t,r),r.positiono===9||o===32),n.push(a),a=""}return n}function n7n(e,t){let r=t.get(e,!0);return r===null?null:jla(r)}var zla=new TextDecoder;function qla(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),zla.decode(e))}var fyr=class{get baseUrl(){return Xjn()}get origin(){return this.baseUrl?.origin}policyContainer=qjn()},Iyr=class{settingsObject=new fyr},$la=new Iyr;i7n.exports={isAborted:Fla,isCancelled:Zla,isValidEncodedURL:jjn,createDeferredPromise:Gla,ReadableStreamFrom:cla,tryUpgradeRequestToAPotentiallyTrustworthyURL:xla,clampAndCoarsenConnectionTimingInfo:Ela,coarsenedSharedCurrentTime:Sla,determineRequestsReferrer:wla,makePolicyContainer:qjn,clonePolicyContainer:Bla,appendFetchMetadata:yla,appendRequestOriginHeader:bla,TAOCheck:_la,corsCheck:Cla,crossOriginResourcePolicyCheck:mla,createOpaqueTimingInfo:vla,setRequestReferrerPolicyOnRedirect:hla,isValidHTTPToken:Jjn,requestBadPort:dla,requestCurrentURL:DYe,responseURL:Kjn,responseLocationURL:gla,isBlobLike:ala,isURLPotentiallyTrustworthy:NYe,isValidReasonPhrase:fla,sameOrigin:Rht,normalizeMethod:Lla,serializeJavascriptValueToJSONString:Vla,iteratorMixin:Ola,createIterator:e7n,isValidHeaderName:Ila,isValidHeaderValue:zjn,isErrorLike:pla,fullyReadBody:Pla,bytesMatch:Tla,isReadableStreamLike:Mla,readableStreamClose:Hla,isomorphicEncode:wht,urlIsLocal:Qla,urlHasHttpsScheme:dyr,urlIsHttpHttpsScheme:r7n,readAllBytes:t7n,simpleRangeHeaderValue:Xla,buildContentRange:Jla,parseMetadata:$jn,createInflate:Ula,extractMimeType:Kla,getDecodeSplit:n7n,utf8DecodeBytes:qla,environmentSettingsObject:$la}});var mae=H((Nsu,s7n)=>{"use strict";s7n.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var myr=H((Dsu,o7n)=>{"use strict";var{Blob:eua,File:tua}=Et("node:buffer"),{kState:ree}=mae(),{webidl:M8}=Vk(),hyr=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[ree]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return M8.brandCheck(this,e),this[ree].blobLike.stream(...t)}arrayBuffer(...t){return M8.brandCheck(this,e),this[ree].blobLike.arrayBuffer(...t)}slice(...t){return M8.brandCheck(this,e),this[ree].blobLike.slice(...t)}text(...t){return M8.brandCheck(this,e),this[ree].blobLike.text(...t)}get size(){return M8.brandCheck(this,e),this[ree].blobLike.size}get type(){return M8.brandCheck(this,e),this[ree].blobLike.type}get name(){return M8.brandCheck(this,e),this[ree].name}get lastModified(){return M8.brandCheck(this,e),this[ree].lastModified}get[Symbol.toStringTag](){return"File"}};M8.converters.Blob=M8.interfaceConverter(eua);function rua(e){return e instanceof tua||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}o7n.exports={FileLike:hyr,isFileLike:rua}});var xYe=H((ksu,g7n)=>{"use strict";var{isBlobLike:Nht,iteratorMixin:nua}=aP(),{kState:JZ}=mae(),{kEnumerableProperty:Hwe}=wm(),{FileLike:a7n,isFileLike:iua}=myr(),{webidl:Y1}=Vk(),{File:u7n}=Et("node:buffer"),c7n=Et("node:util"),l7n=globalThis.File??u7n,kYe=class e{constructor(t){if(t!==void 0)throw Y1.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[JZ]=[]}append(t,r,n=void 0){Y1.brandCheck(this,e);let a="FormData.append";if(Y1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!Nht(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=Y1.converters.USVString(t,a,"name"),r=Nht(r)?Y1.converters.Blob(r,a,"value",{strict:!1}):Y1.converters.USVString(r,a,"value"),n=arguments.length===3?Y1.converters.USVString(n,a,"filename"):void 0;let o=Cyr(t,r,n);this[JZ].push(o)}delete(t){Y1.brandCheck(this,e);let r="FormData.delete";Y1.argumentLengthCheck(arguments,1,r),t=Y1.converters.USVString(t,r,"name"),this[JZ]=this[JZ].filter(n=>n.name!==t)}get(t){Y1.brandCheck(this,e);let r="FormData.get";Y1.argumentLengthCheck(arguments,1,r),t=Y1.converters.USVString(t,r,"name");let n=this[JZ].findIndex(a=>a.name===t);return n===-1?null:this[JZ][n].value}getAll(t){Y1.brandCheck(this,e);let r="FormData.getAll";return Y1.argumentLengthCheck(arguments,1,r),t=Y1.converters.USVString(t,r,"name"),this[JZ].filter(n=>n.name===t).map(n=>n.value)}has(t){Y1.brandCheck(this,e);let r="FormData.has";return Y1.argumentLengthCheck(arguments,1,r),t=Y1.converters.USVString(t,r,"name"),this[JZ].findIndex(n=>n.name===t)!==-1}set(t,r,n=void 0){Y1.brandCheck(this,e);let a="FormData.set";if(Y1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!Nht(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=Y1.converters.USVString(t,a,"name"),r=Nht(r)?Y1.converters.Blob(r,a,"name",{strict:!1}):Y1.converters.USVString(r,a,"name"),n=arguments.length===3?Y1.converters.USVString(n,a,"name"):void 0;let o=Cyr(t,r,n),l=this[JZ].findIndex(A=>A.name===t);l!==-1?this[JZ]=[...this[JZ].slice(0,l),o,...this[JZ].slice(l+1).filter(A=>A.name!==t)]:this[JZ].push(o)}[c7n.inspect.custom](t,r){let n=this[JZ].reduce((o,l)=>(o[l.name]?Array.isArray(o[l.name])?o[l.name].push(l.value):o[l.name]=[o[l.name],l.value]:o[l.name]=l.value,o),{__proto__:null});r.depth??=t,r.colors??=!0;let a=c7n.formatWithOptions(r,n);return`FormData ${a.slice(a.indexOf("]")+2)}`}};nua("FormData",kYe,JZ,"name","value");Object.defineProperties(kYe.prototype,{append:Hwe,delete:Hwe,get:Hwe,getAll:Hwe,has:Hwe,set:Hwe,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Cyr(e,t,r){if(typeof t!="string"){if(iua(t)||(t=t instanceof Blob?new l7n([t],"blob",{type:t.type}):new a7n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=t instanceof u7n?new l7n([t],r,n):new a7n(t,r,n)}}return{name:e,value:t}}g7n.exports={FormData:kYe,makeEntry:Cyr}});var h7n=H((xsu,I7n)=>{"use strict";var{isUSVString:A7n,bufferToLowerCasedHeaderName:sua}=wm(),{utf8DecodeBytes:oua}=aP(),{HTTP_TOKEN_CODEPOINTS:aua,isomorphicDecode:d7n}=aV(),{isFileLike:cua}=myr(),{makeEntry:lua}=xYe(),Dht=Et("node:assert"),{File:uua}=Et("node:buffer"),gua=globalThis.File??uua,Aua=Buffer.from('form-data; name="'),p7n=Buffer.from("; filename"),dua=Buffer.from("--"),pua=Buffer.from(`--\r +`);function fua(e){for(let t=0;t70)return!1;for(let r=0;r=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}function hua(e,t){Dht(t!=="failure"&&t.essence==="multipart/form-data");let r=t.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),a=[],o={position:0};for(;e[o.position]===13&&e[o.position+1]===10;)o.position+=2;let l=e.length;for(;e[l-1]===10&&e[l-2]===13;)l-=2;for(l!==e.length&&(e=e.subarray(0,l));;){if(e.subarray(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===e.length-2&&kht(e,dua,o)||o.position===e.length-4&&kht(e,pua,o))return a;if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let A=mua(e,o);if(A==="failure")return"failure";let{name:f,filename:I,contentType:C,encoding:b}=A;o.position+=2;let E;{let B=e.indexOf(n.subarray(2),o.position);if(B===-1)return"failure";E=e.subarray(o.position,B-4),o.position+=E.length,b==="base64"&&(E=Buffer.from(E.toString(),"base64"))}if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let N;I!==null?(C??="text/plain",fua(C)||(C=""),N=new gua([E],I,{type:C})):N=oua(Buffer.from(E)),Dht(A7n(f)),Dht(typeof N=="string"&&A7n(N)||cua(N)),a.push(lua(f,N,I))}}function mua(e,t){let r=null,n=null,a=null,o=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:a,encoding:o};let l=Ywe(A=>A!==10&&A!==13&&A!==58,e,t);if(l=_yr(l,!0,!0,A=>A===9||A===32),!aua.test(l.toString())||e[t.position]!==58)return"failure";switch(t.position++,Ywe(A=>A===32||A===9,e,t),sua(l)){case"content-disposition":{if(r=n=null,!kht(e,Aua,t)||(t.position+=17,r=f7n(e,t),r===null))return"failure";if(kht(e,p7n,t)){let A=t.position+p7n.length;if(e[A]===42&&(t.position+=1,A+=1),e[A]!==61||e[A+1]!==34||(t.position+=12,n=f7n(e,t),n===null))return"failure"}break}case"content-type":{let A=Ywe(f=>f!==10&&f!==13,e,t);A=_yr(A,!1,!0,f=>f===9||f===32),a=d7n(A);break}case"content-transfer-encoding":{let A=Ywe(f=>f!==10&&f!==13,e,t);A=_yr(A,!1,!0,f=>f===9||f===32),o=d7n(A);break}default:Ywe(A=>A!==10&&A!==13,e,t)}if(e[t.position]!==13&&e[t.position+1]!==10)return"failure";t.position+=2}}function f7n(e,t){Dht(e[t.position-1]===34);let r=Ywe(n=>n!==10&&n!==13&&n!==34,e,t);return e[t.position]!==34?null:(t.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` +`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function Ywe(e,t,r){let n=r.position;for(;n0&&n(e[o]);)o--;return a===0&&o===e.length-1?e:e.subarray(a,o+1)}function kht(e,t,r){if(e.length{"use strict";var GYe=wm(),{ReadableStreamFrom:Cua,isBlobLike:m7n,isReadableStreamLike:_ua,readableStreamClose:yua,createDeferredPromise:bua,fullyReadBody:Eua,extractMimeType:Sua,utf8DecodeBytes:y7n}=aP(),{FormData:C7n}=xYe(),{kState:Xwe}=mae(),{webidl:vua}=Vk(),{Blob:Bua}=Et("node:buffer"),yyr=Et("node:assert"),{isErrored:b7n,isDisturbed:wua}=Et("node:stream"),{isArrayBuffer:Tua}=Et("node:util/types"),{serializeAMimeType:Rua}=aV(),{multipartFormDataParser:Nua}=h7n(),xht=new TextEncoder;function Dua(){}var byr=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,Eyr;byr&&(Eyr=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!wua(t)&&!b7n(t)&&t.cancel("Response object has been garbage collected").catch(Dua)}));function E7n(e,t=!1){let r=null;e instanceof ReadableStream?r=e:m7n(e)?r=e.stream():r=new ReadableStream({async pull(f){let I=typeof a=="string"?xht.encode(a):a;I.byteLength&&f.enqueue(I),queueMicrotask(()=>yua(f))},start(){},type:"bytes"}),yyr(_ua(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(Tua(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(GYe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r Content-Disposition: form-data`;let C=Q=>Q.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),b=Q=>Q.replace(/\r?\n|\r/g,`\r -`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,J]of e)if(typeof J=="string"){let ae=Fht.encode(I+`; name="${C(b(Q))}"\r +`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,J]of e)if(typeof J=="string"){let ae=xht.encode(I+`; name="${C(b(Q))}"\r \r ${b(J)}\r -`);E.push(ae),o+=ae.byteLength}else{let ae=Fht.encode(`${I}; name="${C(b(Q))}"`+(J.name?`; filename="${C(J.name)}"`:"")+`\r +`);E.push(ae),o+=ae.byteLength}else{let ae=xht.encode(`${I}; name="${C(b(Q))}"`+(J.name?`; filename="${C(J.name)}"`:"")+`\r Content-Type: ${J.type||"application/octet-stream"}\r \r -`);E.push(ae,J,N),typeof J.size=="number"?o+=ae.byteLength+J.size+N.byteLength:B=!0}let F=Fht.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l=`multipart/form-data; boundary=${f}`}else if(A7n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(FYe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof ReadableStream?e:Cua(e)}if((typeof a=="string"||FYe.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new ReadableStream({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();if(b)queueMicrotask(()=>{I.close(),I.byobRequest?.respond(0)});else if(!I7n(r)){let E=new Uint8Array(C);E.byteLength&&I.enqueue(E)}return I.desiredSize>0},async cancel(I){await f.return()},type:"bytes"})}return[{stream:r,source:a,length:o},l]}function kua(e,t=!1){return e instanceof ReadableStream&&(yyr(!FYe.isDisturbed(e),"The body has already been consumed."),yyr(!e.locked,"The stream is locked.")),h7n(e,t)}function xua(e,t){let[r,n]=t.stream.tee();return byr&&Eyr.register(e,new WeakRef(r)),t.stream=r,{stream:n,length:t.length,source:t.source}}function Gua(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function Fua(e){return{blob(){return Qwe(this,r=>{let n=p7n(this);return n===null?n="":n&&(n=Rua(n)),new Bua([r],{type:n})},e)},arrayBuffer(){return Qwe(this,r=>new Uint8Array(r).buffer,e)},text(){return Qwe(this,f7n,e)},json(){return Qwe(this,Lua,e)},formData(){return Qwe(this,r=>{let n=p7n(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let a=Nua(r,n);if(a==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new d7n;return o[Xwe]=a,o}case"application/x-www-form-urlencoded":{let a=new URLSearchParams(r.toString()),o=new d7n;for(let[l,A]of a)o.append(l,A);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return Qwe(this,r=>new Uint8Array(r),e)}}}function Zua(e){Object.assign(e.prototype,Fua(e))}async function Qwe(e,t,r){if(vua.brandCheck(e,r),m7n(e))throw new TypeError("Body is unusable: Body has already been read");Gua(e[Xwe]);let n=bua(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[Xwe].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await Eua(e[Xwe].body,o,a),n.promise)}function m7n(e){let t=e[Xwe].body;return t!=null&&(t.stream.locked||FYe.isDisturbed(t.stream))}function Lua(e){return JSON.parse(f7n(e))}function p7n(e){let t=e[Xwe].headersList,r=Sua(t);return r==="failure"?null:r}C7n.exports={extractBody:h7n,safelyExtractBody:kua,cloneBody:xua,mixinBody:Zua,streamRegistry:Eyr,hasFinalizationRegistry:byr,bodyUnusable:m7n}});var N7n=H((Xiu,R7n)=>{"use strict";var pf=Et("node:assert"),mI=wm(),{channels:_7n}=Gwe(),Syr=iyr(),{RequestContentLengthMismatchError:yhe,ResponseContentLengthMismatchError:Vua,RequestAbortedError:B7n,HeadersTimeoutError:Wua,HeadersOverflowError:Oua,SocketError:Pht,InformationalError:Jwe,BodyTimeoutError:Pua,HTTPParserError:Mua,ResponseExceededMaxSizeError:Hua}=X0(),{kUrl:w7n,kReset:aV,kClient:Tyr,kParser:Qv,kBlocking:WYe,kRunning:TG,kPending:Yua,kSize:y7n,kWriting:Cae,kQueue:HX,kNoRef:LYe,kKeepAliveDefaultTimeout:Qua,kHostHeader:Xua,kPendingIdx:Jua,kRunningIdx:WM,kError:OM,kPipelining:Wht,kSocket:Uwe,kKeepAliveTimeoutValue:Mht,kMaxHeadersSize:vyr,kKeepAliveMaxTimeout:Uua,kKeepAliveTimeoutThreshold:Kua,kHeadersTimeout:jua,kBodyTimeout:zua,kStrictContentLength:Ryr,kMaxRequests:b7n,kCounter:qua,kMaxResponseSize:$ua,kOnError:ega,kResume:mae,kHTTPContext:T7n}=R2(),M8=mjn(),tga=Buffer.alloc(0),Zht=Buffer[Symbol.species],Lht=mI.addListener,rga=mI.removeAllListeners,Byr;async function nga(){let e=process.env.JEST_WORKER_ID?ayr():void 0,t;try{t=await WebAssembly.compile(yjn())}catch{t=await WebAssembly.compile(e||ayr())}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{pf(GR.ptr===r);let o=n-Y8+H8.byteOffset;return GR.onStatus(new Zht(H8.buffer,o,a))||0},wasm_on_message_begin:r=>(pf(GR.ptr===r),GR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{pf(GR.ptr===r);let o=n-Y8+H8.byteOffset;return GR.onHeaderField(new Zht(H8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{pf(GR.ptr===r);let o=n-Y8+H8.byteOffset;return GR.onHeaderValue(new Zht(H8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(pf(GR.ptr===r),GR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{pf(GR.ptr===r);let o=n-Y8+H8.byteOffset;return GR.onBody(new Zht(H8.buffer,o,a))||0},wasm_on_message_complete:r=>(pf(GR.ptr===r),GR.onMessageComplete()||0)}})}var wyr=null,Nyr=nga();Nyr.catch();var GR=null,H8=null,Vht=0,Y8=null,iga=0,VYe=1,Kwe=2|VYe,Oht=4|VYe,Dyr=8|iga,kyr=class{constructor(t,r,{exports:n}){pf(Number.isFinite(t[vyr])&&t[vyr]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(M8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[vyr],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[$ua]}setTimeout(t,r){t!==this.timeoutValue||r&VYe^this.timeoutType&VYe?(this.timeout&&(Syr.clearTimeout(this.timeout),this.timeout=null),t&&(r&VYe?this.timeout=Syr.setFastTimeout(E7n,t,new WeakRef(this)):(this.timeout=setTimeout(E7n,t,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(pf(this.ptr!=null),pf(GR==null),this.llhttp.llhttp_resume(this.ptr),pf(this.timeoutType===Oht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||tga),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){pf(this.ptr!=null),pf(GR==null),pf(!this.paused);let{socket:r,llhttp:n}=this;t.length>Vht&&(Y8&&n.free(Y8),Vht=Math.ceil(t.length/4096)*4096,Y8=n.malloc(Vht)),new Uint8Array(n.memory.buffer,Y8,Vht).set(t);try{let a;try{H8=t,GR=this,a=n.llhttp_execute(this.ptr,Y8,t.length)}catch(l){throw l}finally{GR=null,H8=null}let o=n.llhttp_get_error_pos(this.ptr)-Y8;if(a===M8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===M8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==M8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new Mua(A,M8.ERROR[a],t.slice(o))}}catch(a){mI.destroy(r,a)}}destroy(){pf(this.ptr!=null),pf(GR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&Syr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed)return-1;let n=r[HX][r[WM]];if(!n)return-1;n.onResponseStarted()}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];if(n.length===10){let a=mI.bufferToLowerCasedHeaderName(n);a==="keep-alive"?this.keepAlive+=t.toString():a==="connection"&&(this.connection+=t.toString())}else n.length===14&&mI.bufferToLowerCasedHeaderName(n)==="content-length"&&(this.contentLength+=t.toString());this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&mI.destroy(this.socket,new Oua)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;pf(r),pf(n[Uwe]===a),pf(!a.destroyed),pf(!this.paused),pf((o.length&1)===0);let A=n[HX][n[WM]];pf(A),pf(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,a.unshift(t),a[Qv].destroy(),a[Qv]=null,a[Tyr]=null,a[OM]=null,rga(a),n[Uwe]=null,n[T7n]=null,n[HX][n[WM]++]=null,n.emit("disconnect",n[w7n],[n],new Jwe("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){mI.destroy(a,f)}n[mae]()}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[HX][a[WM]];if(!f)return-1;if(pf(!this.upgrade),pf(this.statusCode<200),t===100)return mI.destroy(o,new Pht("bad response",mI.getSocketInfo(o))),-1;if(r&&!f.upgrade)return mI.destroy(o,new Pht("bad upgrade",mI.getSocketInfo(o))),-1;if(pf(this.timeoutType===Kwe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[aV]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[zua];this.setTimeout(C,Oht)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return pf(a[TG]===1),this.upgrade=!0,2;if(r)return pf(a[TG]===1),this.upgrade=!0,2;if(pf((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[Wht]){let C=this.keepAlive?mI.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[Kua],a[Uua]);b<=0?o[aV]=!0:a[Mht]=b}else a[Mht]=a[Qua]}else o[aV]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[WYe]&&(o[WYe]=!1,a[mae]()),I?M8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[HX][r[WM]];if(pf(l),pf(this.timeoutType===Oht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),pf(a>=200),o>-1&&this.bytesRead+t.length>o)return mI.destroy(n,new Hua),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return M8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;pf(n>=100),pf((this.headers.length&1)===0);let I=t[HX][t[WM]];if(pf(I),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return mI.destroy(r,new Vua),-1;if(I.onComplete(o),t[HX][t[WM]++]=null,r[Cae])return pf(t[TG]===0),mI.destroy(r,new Jwe("reset")),M8.ERROR.PAUSED;if(f){if(r[aV]&&t[TG]===0)return mI.destroy(r,new Jwe("reset")),M8.ERROR.PAUSED;t[Wht]==null||t[Wht]===1?setImmediate(()=>t[mae]()):t[mae]()}else return mI.destroy(r,new Jwe("reset")),M8.ERROR.PAUSED}}};function E7n(e){let{socket:t,timeoutType:r,client:n,paused:a}=e.deref();r===Kwe?(!t[Cae]||t.writableNeedDrain||n[TG]>1)&&(pf(!a,"cannot be paused while waiting for headers"),mI.destroy(t,new Wua)):r===Oht?a||mI.destroy(t,new Pua):r===Dyr&&(pf(n[TG]===0&&n[Mht]),mI.destroy(t,new Jwe("socket idle timeout")))}async function sga(e,t){e[Uwe]=t,wyr||(wyr=await Nyr,Nyr=null),t[LYe]=!1,t[Cae]=!1,t[aV]=!1,t[WYe]=!1,t[Qv]=new kyr(e,t,wyr),Lht(t,"error",function(n){pf(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let a=this[Qv];if(n.code==="ECONNRESET"&&a.statusCode&&!a.shouldKeepAlive){a.onMessageComplete();return}this[OM]=n,this[Tyr][ega](n)}),Lht(t,"readable",function(){let n=this[Qv];n&&n.readMore()}),Lht(t,"end",function(){let n=this[Qv];if(n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}mI.destroy(this,new Pht("other side closed",mI.getSocketInfo(this)))}),Lht(t,"close",function(){let n=this[Tyr],a=this[Qv];a&&(!this[OM]&&a.statusCode&&!a.shouldKeepAlive&&a.onMessageComplete(),this[Qv].destroy(),this[Qv]=null);let o=this[OM]||new Pht("closed",mI.getSocketInfo(this));if(n[Uwe]=null,n[T7n]=null,n.destroyed){pf(n[Yua]===0);let l=n[HX].splice(n[WM]);for(let A=0;A0&&o.code!=="UND_ERR_INFO"){let l=n[HX][n[WM]];n[HX][n[WM]++]=null,mI.errorRequest(n,l,o)}n[Jua]=n[WM],pf(n[TG]===0),n.emit("disconnect",n[w7n],[n],o),n[mae]()});let r=!1;return t.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...n){return cga(e,...n)},resume(){oga(e)},destroy(n,a){r?queueMicrotask(a):t.destroy(n).on("close",a)},get destroyed(){return t.destroyed},busy(n){return!!(t[Cae]||t[aV]||t[WYe]||n&&(e[TG]>0&&!n.idempotent||e[TG]>0&&(n.upgrade||n.method==="CONNECT")||e[TG]>0&&mI.bodyLength(n.body)!==0&&(mI.isStream(n.body)||mI.isAsyncIterable(n.body)||mI.isFormDataLike(n.body))))}}}function oga(e){let t=e[Uwe];if(t&&!t.destroyed){if(e[y7n]===0?!t[LYe]&&t.unref&&(t.unref(),t[LYe]=!0):t[LYe]&&t.ref&&(t.ref(),t[LYe]=!1),e[y7n]===0)t[Qv].timeoutType!==Dyr&&t[Qv].setTimeout(e[Mht],Dyr);else if(e[TG]>0&&t[Qv].statusCode<200&&t[Qv].timeoutType!==Kwe){let r=e[HX][e[WM]],n=r.headersTimeout!=null?r.headersTimeout:e[jua];t[Qv].setTimeout(n,Kwe)}}}function aga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function cga(e,t){let{method:r,path:n,host:a,upgrade:o,blocking:l,reset:A}=t,{body:f,headers:I,contentLength:C}=t,b=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(mI.isFormDataLike(f)){Byr||(Byr=ZYe().extractBody);let[Q,J]=Byr(f);t.contentType==null&&I.push("content-type",J),f=Q.stream,C=Q.length}else mI.isBlobLike(f)&&t.contentType==null&&f.type&&I.push("content-type",f.type);f&&typeof f.read=="function"&&f.read(0);let E=mI.bodyLength(f);if(C=E??C,C===null&&(C=t.contentLength),C===0&&!b&&(C=null),aga(r)&&C>0&&t.contentLength!==null&&t.contentLength!==C){if(e[Ryr])return mI.errorRequest(e,t,new yhe),!1;process.emitWarning(new yhe)}let N=e[Uwe],B=Q=>{t.aborted||t.completed||(mI.errorRequest(e,t,Q||new B7n),mI.destroy(f),mI.destroy(N,new Jwe("aborted")))};try{t.onConnect(B)}catch(Q){mI.errorRequest(e,t,Q)}if(t.aborted)return!1;r==="HEAD"&&(N[aV]=!0),(o||r==="CONNECT")&&(N[aV]=!0),A!=null&&(N[aV]=A),e[b7n]&&N[qua]++>=e[b7n]&&(N[aV]=!0),l&&(N[WYe]=!0);let F=`${r} ${n} HTTP/1.1\r +`);E.push(ae,J,N),typeof J.size=="number"?o+=ae.byteLength+J.size+N.byteLength:B=!0}let F=xht.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l=`multipart/form-data; boundary=${f}`}else if(m7n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(GYe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof ReadableStream?e:Cua(e)}if((typeof a=="string"||GYe.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new ReadableStream({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();if(b)queueMicrotask(()=>{I.close(),I.byobRequest?.respond(0)});else if(!b7n(r)){let E=new Uint8Array(C);E.byteLength&&I.enqueue(E)}return I.desiredSize>0},async cancel(I){await f.return()},type:"bytes"})}return[{stream:r,source:a,length:o},l]}function kua(e,t=!1){return e instanceof ReadableStream&&(yyr(!GYe.isDisturbed(e),"The body has already been consumed."),yyr(!e.locked,"The stream is locked.")),E7n(e,t)}function xua(e,t){let[r,n]=t.stream.tee();return byr&&Eyr.register(e,new WeakRef(r)),t.stream=r,{stream:n,length:t.length,source:t.source}}function Gua(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function Fua(e){return{blob(){return Qwe(this,r=>{let n=_7n(this);return n===null?n="":n&&(n=Rua(n)),new Bua([r],{type:n})},e)},arrayBuffer(){return Qwe(this,r=>new Uint8Array(r).buffer,e)},text(){return Qwe(this,y7n,e)},json(){return Qwe(this,Lua,e)},formData(){return Qwe(this,r=>{let n=_7n(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let a=Nua(r,n);if(a==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new C7n;return o[Xwe]=a,o}case"application/x-www-form-urlencoded":{let a=new URLSearchParams(r.toString()),o=new C7n;for(let[l,A]of a)o.append(l,A);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return Qwe(this,r=>new Uint8Array(r),e)}}}function Zua(e){Object.assign(e.prototype,Fua(e))}async function Qwe(e,t,r){if(vua.brandCheck(e,r),S7n(e))throw new TypeError("Body is unusable: Body has already been read");Gua(e[Xwe]);let n=bua(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[Xwe].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await Eua(e[Xwe].body,o,a),n.promise)}function S7n(e){let t=e[Xwe].body;return t!=null&&(t.stream.locked||GYe.isDisturbed(t.stream))}function Lua(e){return JSON.parse(y7n(e))}function _7n(e){let t=e[Xwe].headersList,r=Sua(t);return r==="failure"?null:r}v7n.exports={extractBody:E7n,safelyExtractBody:kua,cloneBody:xua,mixinBody:Zua,streamRegistry:Eyr,hasFinalizationRegistry:byr,bodyUnusable:S7n}});var Z7n=H((Fsu,F7n)=>{"use strict";var pf=Et("node:assert"),mI=wm(),{channels:B7n}=Gwe(),Syr=iyr(),{RequestContentLengthMismatchError:bhe,ResponseContentLengthMismatchError:Vua,RequestAbortedError:k7n,HeadersTimeoutError:Wua,HeadersOverflowError:Oua,SocketError:Wht,InformationalError:Jwe,BodyTimeoutError:Pua,HTTPParserError:Mua,ResponseExceededMaxSizeError:Hua}=J0(),{kUrl:x7n,kReset:cV,kClient:Tyr,kParser:Xv,kBlocking:VYe,kRunning:RG,kPending:Yua,kSize:w7n,kWriting:_ae,kQueue:YX,kNoRef:ZYe,kKeepAliveDefaultTimeout:Qua,kHostHeader:Xua,kPendingIdx:Jua,kRunningIdx:OM,kError:PM,kPipelining:Lht,kSocket:Uwe,kKeepAliveTimeoutValue:Oht,kMaxHeadersSize:vyr,kKeepAliveMaxTimeout:Uua,kKeepAliveTimeoutThreshold:Kua,kHeadersTimeout:jua,kBodyTimeout:zua,kStrictContentLength:Ryr,kMaxRequests:T7n,kCounter:qua,kMaxResponseSize:$ua,kOnError:ega,kResume:Cae,kHTTPContext:G7n}=N2(),H8=Sjn(),tga=Buffer.alloc(0),Ght=Buffer[Symbol.species],Fht=mI.addListener,rga=mI.removeAllListeners,Byr;async function nga(){let e=process.env.JEST_WORKER_ID?ayr():void 0,t;try{t=await WebAssembly.compile(wjn())}catch{t=await WebAssembly.compile(e||ayr())}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{pf(FR.ptr===r);let o=n-Q8+Y8.byteOffset;return FR.onStatus(new Ght(Y8.buffer,o,a))||0},wasm_on_message_begin:r=>(pf(FR.ptr===r),FR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{pf(FR.ptr===r);let o=n-Q8+Y8.byteOffset;return FR.onHeaderField(new Ght(Y8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{pf(FR.ptr===r);let o=n-Q8+Y8.byteOffset;return FR.onHeaderValue(new Ght(Y8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(pf(FR.ptr===r),FR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{pf(FR.ptr===r);let o=n-Q8+Y8.byteOffset;return FR.onBody(new Ght(Y8.buffer,o,a))||0},wasm_on_message_complete:r=>(pf(FR.ptr===r),FR.onMessageComplete()||0)}})}var wyr=null,Nyr=nga();Nyr.catch();var FR=null,Y8=null,Zht=0,Q8=null,iga=0,LYe=1,Kwe=2|LYe,Vht=4|LYe,Dyr=8|iga,kyr=class{constructor(t,r,{exports:n}){pf(Number.isFinite(t[vyr])&&t[vyr]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(H8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[vyr],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[$ua]}setTimeout(t,r){t!==this.timeoutValue||r&LYe^this.timeoutType&LYe?(this.timeout&&(Syr.clearTimeout(this.timeout),this.timeout=null),t&&(r&LYe?this.timeout=Syr.setFastTimeout(R7n,t,new WeakRef(this)):(this.timeout=setTimeout(R7n,t,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(pf(this.ptr!=null),pf(FR==null),this.llhttp.llhttp_resume(this.ptr),pf(this.timeoutType===Vht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||tga),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){pf(this.ptr!=null),pf(FR==null),pf(!this.paused);let{socket:r,llhttp:n}=this;t.length>Zht&&(Q8&&n.free(Q8),Zht=Math.ceil(t.length/4096)*4096,Q8=n.malloc(Zht)),new Uint8Array(n.memory.buffer,Q8,Zht).set(t);try{let a;try{Y8=t,FR=this,a=n.llhttp_execute(this.ptr,Q8,t.length)}catch(l){throw l}finally{FR=null,Y8=null}let o=n.llhttp_get_error_pos(this.ptr)-Q8;if(a===H8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===H8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==H8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new Mua(A,H8.ERROR[a],t.slice(o))}}catch(a){mI.destroy(r,a)}}destroy(){pf(this.ptr!=null),pf(FR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&Syr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed)return-1;let n=r[YX][r[OM]];if(!n)return-1;n.onResponseStarted()}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];if(n.length===10){let a=mI.bufferToLowerCasedHeaderName(n);a==="keep-alive"?this.keepAlive+=t.toString():a==="connection"&&(this.connection+=t.toString())}else n.length===14&&mI.bufferToLowerCasedHeaderName(n)==="content-length"&&(this.contentLength+=t.toString());this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&mI.destroy(this.socket,new Oua)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;pf(r),pf(n[Uwe]===a),pf(!a.destroyed),pf(!this.paused),pf((o.length&1)===0);let A=n[YX][n[OM]];pf(A),pf(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,a.unshift(t),a[Xv].destroy(),a[Xv]=null,a[Tyr]=null,a[PM]=null,rga(a),n[Uwe]=null,n[G7n]=null,n[YX][n[OM]++]=null,n.emit("disconnect",n[x7n],[n],new Jwe("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){mI.destroy(a,f)}n[Cae]()}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[YX][a[OM]];if(!f)return-1;if(pf(!this.upgrade),pf(this.statusCode<200),t===100)return mI.destroy(o,new Wht("bad response",mI.getSocketInfo(o))),-1;if(r&&!f.upgrade)return mI.destroy(o,new Wht("bad upgrade",mI.getSocketInfo(o))),-1;if(pf(this.timeoutType===Kwe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[cV]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[zua];this.setTimeout(C,Vht)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return pf(a[RG]===1),this.upgrade=!0,2;if(r)return pf(a[RG]===1),this.upgrade=!0,2;if(pf((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[Lht]){let C=this.keepAlive?mI.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[Kua],a[Uua]);b<=0?o[cV]=!0:a[Oht]=b}else a[Oht]=a[Qua]}else o[cV]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[VYe]&&(o[VYe]=!1,a[Cae]()),I?H8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[YX][r[OM]];if(pf(l),pf(this.timeoutType===Vht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),pf(a>=200),o>-1&&this.bytesRead+t.length>o)return mI.destroy(n,new Hua),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return H8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;pf(n>=100),pf((this.headers.length&1)===0);let I=t[YX][t[OM]];if(pf(I),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return mI.destroy(r,new Vua),-1;if(I.onComplete(o),t[YX][t[OM]++]=null,r[_ae])return pf(t[RG]===0),mI.destroy(r,new Jwe("reset")),H8.ERROR.PAUSED;if(f){if(r[cV]&&t[RG]===0)return mI.destroy(r,new Jwe("reset")),H8.ERROR.PAUSED;t[Lht]==null||t[Lht]===1?setImmediate(()=>t[Cae]()):t[Cae]()}else return mI.destroy(r,new Jwe("reset")),H8.ERROR.PAUSED}}};function R7n(e){let{socket:t,timeoutType:r,client:n,paused:a}=e.deref();r===Kwe?(!t[_ae]||t.writableNeedDrain||n[RG]>1)&&(pf(!a,"cannot be paused while waiting for headers"),mI.destroy(t,new Wua)):r===Vht?a||mI.destroy(t,new Pua):r===Dyr&&(pf(n[RG]===0&&n[Oht]),mI.destroy(t,new Jwe("socket idle timeout")))}async function sga(e,t){e[Uwe]=t,wyr||(wyr=await Nyr,Nyr=null),t[ZYe]=!1,t[_ae]=!1,t[cV]=!1,t[VYe]=!1,t[Xv]=new kyr(e,t,wyr),Fht(t,"error",function(n){pf(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let a=this[Xv];if(n.code==="ECONNRESET"&&a.statusCode&&!a.shouldKeepAlive){a.onMessageComplete();return}this[PM]=n,this[Tyr][ega](n)}),Fht(t,"readable",function(){let n=this[Xv];n&&n.readMore()}),Fht(t,"end",function(){let n=this[Xv];if(n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}mI.destroy(this,new Wht("other side closed",mI.getSocketInfo(this)))}),Fht(t,"close",function(){let n=this[Tyr],a=this[Xv];a&&(!this[PM]&&a.statusCode&&!a.shouldKeepAlive&&a.onMessageComplete(),this[Xv].destroy(),this[Xv]=null);let o=this[PM]||new Wht("closed",mI.getSocketInfo(this));if(n[Uwe]=null,n[G7n]=null,n.destroyed){pf(n[Yua]===0);let l=n[YX].splice(n[OM]);for(let A=0;A0&&o.code!=="UND_ERR_INFO"){let l=n[YX][n[OM]];n[YX][n[OM]++]=null,mI.errorRequest(n,l,o)}n[Jua]=n[OM],pf(n[RG]===0),n.emit("disconnect",n[x7n],[n],o),n[Cae]()});let r=!1;return t.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...n){return cga(e,...n)},resume(){oga(e)},destroy(n,a){r?queueMicrotask(a):t.destroy(n).on("close",a)},get destroyed(){return t.destroyed},busy(n){return!!(t[_ae]||t[cV]||t[VYe]||n&&(e[RG]>0&&!n.idempotent||e[RG]>0&&(n.upgrade||n.method==="CONNECT")||e[RG]>0&&mI.bodyLength(n.body)!==0&&(mI.isStream(n.body)||mI.isAsyncIterable(n.body)||mI.isFormDataLike(n.body))))}}}function oga(e){let t=e[Uwe];if(t&&!t.destroyed){if(e[w7n]===0?!t[ZYe]&&t.unref&&(t.unref(),t[ZYe]=!0):t[ZYe]&&t.ref&&(t.ref(),t[ZYe]=!1),e[w7n]===0)t[Xv].timeoutType!==Dyr&&t[Xv].setTimeout(e[Oht],Dyr);else if(e[RG]>0&&t[Xv].statusCode<200&&t[Xv].timeoutType!==Kwe){let r=e[YX][e[OM]],n=r.headersTimeout!=null?r.headersTimeout:e[jua];t[Xv].setTimeout(n,Kwe)}}}function aga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function cga(e,t){let{method:r,path:n,host:a,upgrade:o,blocking:l,reset:A}=t,{body:f,headers:I,contentLength:C}=t,b=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(mI.isFormDataLike(f)){Byr||(Byr=FYe().extractBody);let[Q,J]=Byr(f);t.contentType==null&&I.push("content-type",J),f=Q.stream,C=Q.length}else mI.isBlobLike(f)&&t.contentType==null&&f.type&&I.push("content-type",f.type);f&&typeof f.read=="function"&&f.read(0);let E=mI.bodyLength(f);if(C=E??C,C===null&&(C=t.contentLength),C===0&&!b&&(C=null),aga(r)&&C>0&&t.contentLength!==null&&t.contentLength!==C){if(e[Ryr])return mI.errorRequest(e,t,new bhe),!1;process.emitWarning(new bhe)}let N=e[Uwe],B=Q=>{t.aborted||t.completed||(mI.errorRequest(e,t,Q||new k7n),mI.destroy(f),mI.destroy(N,new Jwe("aborted")))};try{t.onConnect(B)}catch(Q){mI.errorRequest(e,t,Q)}if(t.aborted)return!1;r==="HEAD"&&(N[cV]=!0),(o||r==="CONNECT")&&(N[cV]=!0),A!=null&&(N[cV]=A),e[T7n]&&N[qua]++>=e[T7n]&&(N[cV]=!0),l&&(N[VYe]=!0);let F=`${r} ${n} HTTP/1.1\r `;if(typeof a=="string"?F+=`host: ${a}\r `:F+=e[Xua],o?F+=`connection: upgrade\r upgrade: ${o}\r -`:e[Wht]&&!N[aV]?F+=`connection: keep-alive\r +`:e[Lht]&&!N[cV]?F+=`connection: keep-alive\r `:F+=`connection: close\r `,Array.isArray(I))for(let Q=0;Q{t.removeListener("error",N)}),!f){let B=new B7n;queueMicrotask(()=>N(B))}},N=function(B){if(!f){if(f=!0,pf(a.destroyed||a[Cae]&&r[TG]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?mI.destroy(t,B):mI.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N),t.errorEmitted??t.errored?setImmediate(()=>N(t.errored)):(t.endEmitted??t.readableEnded)&&setImmediate(()=>N(null)),(t.closeEmitted??t.closed)&&setImmediate(E)}function S7n(e,t,r,n,a,o,l,A){try{t?mI.isBuffer(t)&&(pf(o===t.byteLength,"buffer body must have content length"),a.cork(),a.write(`${l}content-length: ${o}\r +`}return B7n.sendHeaders.hasSubscribers&&B7n.sendHeaders.publish({request:t,headers:F,socket:N}),!f||E===0?N7n(B,null,e,t,N,C,F,b):mI.isBuffer(f)?N7n(B,f,e,t,N,C,F,b):mI.isBlobLike(f)?typeof f.stream=="function"?D7n(B,f.stream(),e,t,N,C,F,b):uga(B,f,e,t,N,C,F,b):mI.isStream(f)?lga(B,f,e,t,N,C,F,b):mI.isIterable(f)?D7n(B,f,e,t,N,C,F,b):pf(!1),!0}function lga(e,t,r,n,a,o,l,A){pf(o!==0||r[RG]===0,"stream body cannot be pipelined");let f=!1,I=new Pht({abort:e,socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l}),C=function(B){if(!f)try{!I.write(B)&&this.pause&&this.pause()}catch(F){mI.destroy(this,F)}},b=function(){f||t.resume&&t.resume()},E=function(){if(queueMicrotask(()=>{t.removeListener("error",N)}),!f){let B=new k7n;queueMicrotask(()=>N(B))}},N=function(B){if(!f){if(f=!0,pf(a.destroyed||a[_ae]&&r[RG]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?mI.destroy(t,B):mI.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N),t.errorEmitted??t.errored?setImmediate(()=>N(t.errored)):(t.endEmitted??t.readableEnded)&&setImmediate(()=>N(null)),(t.closeEmitted??t.closed)&&setImmediate(E)}function N7n(e,t,r,n,a,o,l,A){try{t?mI.isBuffer(t)&&(pf(o===t.byteLength,"buffer body must have content length"),a.cork(),a.write(`${l}content-length: ${o}\r \r -`,"latin1"),a.write(t),a.uncork(),n.onBodySent(t),!A&&n.reset!==!1&&(a[aV]=!0)):o===0?a.write(`${l}content-length: 0\r +`,"latin1"),a.write(t),a.uncork(),n.onBodySent(t),!A&&n.reset!==!1&&(a[cV]=!0)):o===0?a.write(`${l}content-length: 0\r \r `,"latin1"):(pf(o===null,"no body must not have content length"),a.write(`${l}\r -`,"latin1")),n.onRequestSent(),r[mae]()}catch(f){e(f)}}async function uga(e,t,r,n,a,o,l,A){pf(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new yhe;let f=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${l}content-length: ${o}\r +`,"latin1")),n.onRequestSent(),r[Cae]()}catch(f){e(f)}}async function uga(e,t,r,n,a,o,l,A){pf(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new bhe;let f=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${l}content-length: ${o}\r \r -`,"latin1"),a.write(f),a.uncork(),n.onBodySent(f),n.onRequestSent(),!A&&n.reset!==!1&&(a[aV]=!0),r[mae]()}catch(f){e(f)}}async function v7n(e,t,r,n,a,o,l,A){pf(o!==0||r[TG]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{pf(f===null),a[OM]?N(a[OM]):f=E});a.on("close",I).on("drain",I);let b=new Hht({abort:e,socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[OM])throw a[OM];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var Hht=class{constructor({abort:t,socket:r,request:n,contentLength:a,client:o,expectsPayload:l,header:A}){this.socket=r,this.request=n,this.contentLength=a,this.client=o,this.bytesWritten=0,this.expectsPayload=l,this.header=A,this.abort=t,r[Cae]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[OM])throw r[OM];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[Ryr])throw new yhe;process.emitWarning(new yhe)}r.cork(),l===0&&(!A&&n.reset!==!1&&(r[aV]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r +`,"latin1"),a.write(f),a.uncork(),n.onBodySent(f),n.onRequestSent(),!A&&n.reset!==!1&&(a[cV]=!0),r[Cae]()}catch(f){e(f)}}async function D7n(e,t,r,n,a,o,l,A){pf(o!==0||r[RG]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{pf(f===null),a[PM]?N(a[PM]):f=E});a.on("close",I).on("drain",I);let b=new Pht({abort:e,socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[PM])throw a[PM];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var Pht=class{constructor({abort:t,socket:r,request:n,contentLength:a,client:o,expectsPayload:l,header:A}){this.socket=r,this.request=n,this.contentLength=a,this.client=o,this.bytesWritten=0,this.expectsPayload=l,this.header=A,this.abort=t,r[_ae]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[PM])throw r[PM];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[Ryr])throw new bhe;process.emitWarning(new bhe)}r.cork(),l===0&&(!A&&n.reset!==!1&&(r[cV]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r `,"latin1"):r.write(`${f}content-length: ${a}\r \r `,"latin1")),a===null&&r.write(`\r ${I.toString(16)}\r -`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Qv].timeout&&r[Qv].timeoutType===Kwe&&r[Qv].timeout.refresh&&r[Qv].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[Cae]=!1,t[OM])throw t[OM];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r +`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Xv].timeout&&r[Xv].timeoutType===Kwe&&r[Xv].timeout.refresh&&r[Xv].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[_ae]=!1,t[PM])throw t[PM];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r \r `,"latin1"):t.write(`${l}\r `,"latin1"):r===null&&t.write(`\r 0\r \r -`,"latin1"),r!==null&&a!==r){if(n[Ryr])throw new yhe;process.emitWarning(new yhe)}t[Qv].timeout&&t[Qv].timeoutType===Kwe&&t[Qv].timeout.refresh&&t[Qv].timeout.refresh(),n[mae]()}}destroy(t){let{socket:r,client:n,abort:a}=this;r[Cae]=!1,t&&(pf(n[TG]<=1,"pipeline should only contain this request"),a(t))}};R7n.exports=sga});var L7n=H((Jiu,Z7n)=>{"use strict";var PM=Et("node:assert"),{pipeline:gga}=Et("node:stream"),vC=wm(),{RequestContentLengthMismatchError:xyr,RequestAbortedError:D7n,SocketError:OYe,InformationalError:Gyr}=X0(),{kUrl:Yht,kReset:Xht,kClient:jwe,kRunning:Jht,kPending:Aga,kQueue:bhe,kPendingIdx:Fyr,kRunningIdx:Q8,kError:QX,kSocket:oD,kStrictContentLength:dga,kOnError:Zyr,kMaxConcurrentStreams:F7n,kHTTP2Session:YX,kResume:_ae,kSize:pga,kHTTPContext:fga}=R2(),ree=Symbol("open streams"),k7n=!1,Qht;try{Qht=Et("node:http2")}catch{Qht={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Iga,HTTP2_HEADER_METHOD:hga,HTTP2_HEADER_PATH:mga,HTTP2_HEADER_SCHEME:Cga,HTTP2_HEADER_CONTENT_LENGTH:_ga,HTTP2_HEADER_EXPECT:yga,HTTP2_HEADER_STATUS:bga}}=Qht;function Ega(e){let t=[];for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let a of n)t.push(Buffer.from(r),Buffer.from(a));else t.push(Buffer.from(r),Buffer.from(n));return t}async function Sga(e,t){e[oD]=t,k7n||(k7n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=Qht.connect(e[Yht],{createConnection:()=>t,peerMaxConcurrentStreams:e[F7n]});r[ree]=0,r[jwe]=e,r[oD]=t,vC.addListener(r,"error",Bga),vC.addListener(r,"frameError",wga),vC.addListener(r,"end",Tga),vC.addListener(r,"goaway",Rga),vC.addListener(r,"close",function(){let{[jwe]:a}=this,{[oD]:o}=a,l=this[oD][QX]||this[QX]||new OYe("closed",vC.getSocketInfo(o));if(a[YX]=null,a.destroyed){PM(a[Aga]===0);let A=a[bhe].splice(a[Q8]);for(let f=0;f{n=!0}),{version:"h2",defaultPipelining:1/0,write(...a){return Dga(e,...a)},resume(){vga(e)},destroy(a,o){n?queueMicrotask(o):t.destroy(a).on("close",o)},get destroyed(){return t.destroyed},busy(){return!1}}}function vga(e){let t=e[oD];t?.destroyed===!1&&(e[pga]===0&&e[F7n]===0?(t.unref(),e[YX].unref()):(t.ref(),e[YX].ref()))}function Bga(e){PM(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[oD][QX]=e,this[jwe][Zyr](e)}function wga(e,t,r){if(r===0){let n=new Gyr(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[oD][QX]=n,this[jwe][Zyr](n)}}function Tga(){let e=new OYe("other side closed",vC.getSocketInfo(this[oD]));this.destroy(e),vC.destroy(this[oD],e)}function Rga(e){let t=this[QX]||new OYe(`HTTP/2: "GOAWAY" frame received with code ${e}`,vC.getSocketInfo(this)),r=this[jwe];r[oD]=null,r[fga]=null,this[YX]!=null&&(this[YX].destroy(t),this[YX]=null),vC.destroy(this[oD],t);let n=r[bhe][r[Q8]];r[bhe][r[Q8]++]=null,vC.errorRequest(r,n,t),r[Fyr]=r[Q8],PM(r[Jht]===0),r.emit("disconnect",r[Yht],[r],t),r[_ae]()}function Nga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Dga(e,t){let r=e[YX],{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=t;if(A)return vC.errorRequest(e,t,new Error("Upgrade not supported for H2")),!1;let b={};for(let ce=0;ce{t.aborted||t.completed||(ce=ce||new D7n,vC.errorRequest(e,t,ce),E!=null&&vC.destroy(E,ce),vC.destroy(n,ce),e[bhe][e[Q8]++]=null,e[_ae]())};try{t.onConnect(F)}catch(ce){vC.errorRequest(e,t,ce)}if(t.aborted)return!1;if(a==="CONNECT")return r.ref(),E=r.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(t.onUpgrade(null,null,E),++r[ree],e[bhe][e[Q8]++]=null):E.once("ready",()=>{t.onUpgrade(null,null,E),++r[ree],e[bhe][e[Q8]++]=null}),E.once("close",()=>{r[ree]-=1,r[ree]===0&&r.unref()}),!0;b[mga]=o,b[Cga]="https";let Q=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let J=vC.bodyLength(n);if(J==null&&(J=t.contentLength),(J===0||!Q)&&(J=null),Nga(a)&&J>0&&t.contentLength!=null&&t.contentLength!==J){if(e[dga])return vC.errorRequest(e,t,new xyr),!1;process.emitWarning(new xyr)}J!=null&&(PM(n,"no body must not have content length"),b[_ga]=`${J}`),r.ref();let ae=a==="GET"||a==="HEAD"||n===null;return f?(b[yga]="100-continue",E=r.request(b,{endStream:ae,signal:I}),E.once("continue",ne)):(E=r.request(b,{endStream:ae,signal:I}),ne()),++r[ree],E.once("response",ce=>{let{[bga]:fe,...ue}=ce;if(t.onResponseStarted(),t.aborted){let de=new D7n;vC.errorRequest(e,t,de),vC.destroy(E,de);return}t.onHeaders(Number(fe),Ega(ue),E.resume.bind(E),"")===!1&&E.pause(),E.on("data",de=>{t.onData(de)===!1&&E.pause()})}),E.once("end",()=>{(E.state?.state==null||E.state.state<6)&&t.onComplete([]),r[ree]===0&&r.unref(),F(new Gyr("HTTP/2: stream half-closed (remote)")),e[bhe][e[Q8]++]=null,e[Fyr]=e[Q8],e[_ae]()}),E.once("close",()=>{r[ree]-=1,r[ree]===0&&r.unref()}),E.once("error",function(ce){F(ce)}),E.once("frameError",(ce,fe)=>{F(new Gyr(`HTTP/2: "frameError" received - type ${ce}, code ${fe}`))}),!0;function ne(){!n||J===0?x7n(F,E,null,e,t,e[oD],J,Q):vC.isBuffer(n)?x7n(F,E,n,e,t,e[oD],J,Q):vC.isBlobLike(n)?typeof n.stream=="function"?G7n(F,E,n.stream(),e,t,e[oD],J,Q):xga(F,E,n,e,t,e[oD],J,Q):vC.isStream(n)?kga(F,e[oD],Q,E,n,e,t,J):vC.isIterable(n)?G7n(F,E,n,e,t,e[oD],J,Q):PM(!1)}}function x7n(e,t,r,n,a,o,l,A){try{r!=null&&vC.isBuffer(r)&&(PM(l===r.byteLength,"buffer body must have content length"),t.cork(),t.write(r),t.uncork(),t.end(),a.onBodySent(r)),A||(o[Xht]=!0),a.onRequestSent(),n[_ae]()}catch(f){e(f)}}function kga(e,t,r,n,a,o,l,A){PM(A!==0||o[Jht]===0,"stream body cannot be pipelined");let f=gga(a,n,C=>{C?(vC.destroy(f,C),e(C)):(vC.removeAllListeners(f),l.onRequestSent(),r||(t[Xht]=!0),o[_ae]())});vC.addListener(f,"data",I);function I(C){l.onBodySent(C)}}async function xga(e,t,r,n,a,o,l,A){PM(l===r.size,"blob body must have content length");try{if(l!=null&&l!==r.size)throw new xyr;let f=Buffer.from(await r.arrayBuffer());t.cork(),t.write(f),t.uncork(),t.end(),a.onBodySent(f),a.onRequestSent(),A||(o[Xht]=!0),n[_ae]()}catch(f){e(f)}}async function G7n(e,t,r,n,a,o,l,A){PM(l!==0||n[Jht]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let b=f;f=null,b()}}let C=()=>new Promise((b,E)=>{PM(f===null),o[QX]?E(o[QX]):f=b});t.on("close",I).on("drain",I);try{for await(let b of r){if(o[QX])throw o[QX];let E=t.write(b);a.onBodySent(b),E||await C()}t.end(),a.onRequestSent(),A||(o[Xht]=!0),n[_ae]()}catch(b){e(b)}finally{t.off("close",I).off("drain",I)}}Z7n.exports=Sga});var Kht=H((Uiu,O7n)=>{"use strict";var X8=wm(),{kBodyUsed:PYe}=R2(),Vyr=Et("node:assert"),{InvalidArgumentError:Gga}=X0(),Fga=Et("node:events"),Zga=[300,301,302,303,307,308],V7n=Symbol("body"),Uht=class{constructor(t){this[V7n]=t,this[PYe]=!1}async*[Symbol.asyncIterator](){Vyr(!this[PYe],"disturbed"),this[PYe]=!0,yield*this[V7n]}},Lyr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new Gga("maxRedirections must be a positive number");X8.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],this.redirectionLimitReached=!1,X8.isStream(this.opts.body)?(X8.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){Vyr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[PYe]=!1,Fga.prototype.on.call(this.opts.body,"data",function(){this[PYe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Uht(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&X8.isIterable(this.opts.body)&&(this.opts.body=new Uht(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||X8.isDisturbed(this.opts.body)?null:Lga(t,r),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=X8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=Vga(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Lga(e,t){if(Zga.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var Wga=Kht();function Oga({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new Wga(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}P7n.exports=Oga});var UYe=H((jiu,z7n)=>{"use strict";var nee=Et("node:assert"),J7n=Et("node:net"),Pga=Et("node:http"),Ehe=wm(),{channels:zwe}=Gwe(),Mga=sjn(),Hga=Vwe(),{InvalidArgumentError:ow,InformationalError:Yga,ClientDestroyedError:Qga}=X0(),Xga=wYe(),{kUrl:J8,kServerName:yae,kClient:Jga,kBusy:Wyr,kConnect:Uga,kResuming:She,kRunning:XYe,kPending:JYe,kSize:QYe,kQueue:XX,kConnected:Kga,kConnecting:qwe,kNeedDrain:Eae,kKeepAliveDefaultTimeout:M7n,kHostHeader:jga,kPendingIdx:JX,kRunningIdx:iee,kError:zga,kPipelining:zht,kKeepAliveTimeoutValue:qga,kMaxHeadersSize:$ga,kKeepAliveMaxTimeout:eAa,kKeepAliveTimeoutThreshold:tAa,kHeadersTimeout:rAa,kBodyTimeout:nAa,kStrictContentLength:iAa,kConnector:MYe,kMaxRedirections:sAa,kMaxRequests:Oyr,kCounter:oAa,kClose:aAa,kDestroy:cAa,kDispatch:lAa,kInterceptors:H7n,kLocalAddress:HYe,kMaxResponseSize:uAa,kOnError:gAa,kHTTPContext:aw,kMaxConcurrentStreams:AAa,kResume:YYe}=R2(),dAa=N7n(),pAa=L7n(),Y7n=!1,bae=Symbol("kClosedResolve"),Q7n=()=>{};function U7n(e){return e[zht]??e[aw]?.defaultPipelining??1}var Pyr=class extends Hga{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:J,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,maxConcurrentStreams:k,allowH2:tt}={}){if(super(),C!==void 0)throw new ow("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new ow("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new ow("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new ow("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new ow("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new ow("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new ow("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new ow("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new ow("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new ow("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new ow("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new ow("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new ow("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new ow("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new ow("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new ow("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||J7n.isIP(de)===0))throw new ow("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new ow("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new ow("autoSelectFamilyAttemptTimeout must be a positive number");if(tt!=null&&typeof tt!="boolean")throw new ow("allowH2 must be a valid boolean value");if(k!=null&&(typeof k!="number"||k<1))throw new ow("maxConcurrentStreams must be a positive integer, greater than 0");typeof fe!="function"&&(fe=Xga({...J,maxCachedSessions:ne,allowH2:tt,socketPath:F,timeout:A,...Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),r?.Client&&Array.isArray(r.Client)?(this[H7n]=r.Client,Y7n||(Y7n=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[H7n]=[fAa({maxRedirections:ce})],this[J8]=Ehe.parseOrigin(t),this[MYe]=fe,this[zht]=Q??1,this[$ga]=n||Pga.maxHeaderSize,this[M7n]=b??4e3,this[eAa]=N??6e5,this[tAa]=B??2e3,this[qga]=this[M7n],this[yae]=null,this[HYe]=de??null,this[She]=0,this[Eae]=0,this[jga]=`host: ${this[J8].hostname}${this[J8].port?`:${this[J8].port}`:""}\r -`,this[nAa]=f??3e5,this[rAa]=a??3e5,this[iAa]=ae??!0,this[sAa]=ce,this[Oyr]=ue,this[bae]=null,this[uAa]=be>-1?be:-1,this[AAa]=k??100,this[aw]=null,this[XX]=[],this[iee]=0,this[JX]=0,this[YYe]=ze=>Myr(this,ze),this[gAa]=ze=>K7n(this,ze)}get pipelining(){return this[zht]}set pipelining(t){this[zht]=t,this[YYe](!0)}get[JYe](){return this[XX].length-this[JX]}get[XYe](){return this[JX]-this[iee]}get[QYe](){return this[XX].length-this[iee]}get[Kga](){return!!this[aw]&&!this[qwe]&&!this[aw].destroyed}get[Wyr](){return!!(this[aw]?.busy(null)||this[QYe]>=(U7n(this)||1)||this[JYe]>0)}[Uga](t){j7n(this),this.once("connect",t)}[lAa](t,r){let n=t.origin||this[J8].origin,a=new Mga(n,t,r);return this[XX].push(a),this[She]||(Ehe.bodyLength(a.body)==null&&Ehe.isIterable(a.body)?(this[She]=1,queueMicrotask(()=>Myr(this))):this[YYe](!0)),this[She]&&this[Eae]!==2&&this[Wyr]&&(this[Eae]=2),this[Eae]<2}async[aAa](){return new Promise(t=>{this[QYe]?this[bae]=t:t(null)})}async[cAa](t){return new Promise(r=>{let n=this[XX].splice(this[JX]);for(let o=0;o{this[bae]&&(this[bae](),this[bae]=null),r(null)};this[aw]?(this[aw].destroy(t,a),this[aw]=null):queueMicrotask(a),this[YYe]()})}},fAa=jht();function K7n(e,t){if(e[XYe]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){nee(e[JX]===e[iee]);let r=e[XX].splice(e[iee]);for(let n=0;n{e[MYe]({host:t,hostname:r,protocol:n,port:a,servername:e[yae],localAddress:e[HYe]},(f,I)=>{f?A(f):l(I)})});if(e.destroyed){Ehe.destroy(o.on("error",Q7n),new Qga);return}nee(o);try{e[aw]=o.alpnProtocol==="h2"?await pAa(e,o):await dAa(e,o)}catch(l){throw o.destroy().on("error",Q7n),l}e[qwe]=!1,o[oAa]=0,o[Oyr]=e[Oyr],o[Jga]=e,o[zga]=null,zwe.connected.hasSubscribers&&zwe.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[aw]?.version,servername:e[yae],localAddress:e[HYe]},connector:e[MYe],socket:o}),e.emit("connect",e[J8],[e])}catch(o){if(e.destroyed)return;if(e[qwe]=!1,zwe.connectError.hasSubscribers&&zwe.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[aw]?.version,servername:e[yae],localAddress:e[HYe]},connector:e[MYe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(nee(e[XYe]===0);e[JYe]>0&&e[XX][e[JX]].servername===e[yae];){let l=e[XX][e[JX]++];Ehe.errorRequest(e,l,o)}else K7n(e,o);e.emit("connectionError",e[J8],[e],o)}e[YYe]()}function X7n(e){e[Eae]=0,e.emit("drain",e[J8],[e])}function Myr(e,t){e[She]!==2&&(e[She]=2,IAa(e,t),e[She]=0,e[iee]>256&&(e[XX].splice(0,e[iee]),e[JX]-=e[iee],e[iee]=0))}function IAa(e,t){for(;;){if(e.destroyed){nee(e[JYe]===0);return}if(e[bae]&&!e[QYe]){e[bae](),e[bae]=null;return}if(e[aw]&&e[aw].resume(),e[Wyr])e[Eae]=2;else if(e[Eae]===2){t?(e[Eae]=1,queueMicrotask(()=>X7n(e))):X7n(e);continue}if(e[JYe]===0||e[XYe]>=(U7n(e)||1))return;let r=e[XX][e[JX]];if(e[J8].protocol==="https:"&&e[yae]!==r.servername){if(e[XYe]>0)return;e[yae]=r.servername,e[aw]?.destroy(new Yga("servername changed"),()=>{e[aw]=null,Myr(e)})}if(e[qwe])return;if(!e[aw]){j7n(e);return}if(e[aw].destroyed||e[aw].busy(r))return;!r.aborted&&e[aw].write(r)?e[JX]++:e[XX].splice(e[JX],1)}}z7n.exports=Pyr});var Hyr=H((qiu,q7n)=>{"use strict";var qht=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};q7n.exports=class{constructor(){this.head=this.tail=new qht}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new qht),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var ezn=H(($iu,$7n)=>{var{kFree:hAa,kConnected:mAa,kPending:CAa,kQueued:_Aa,kRunning:yAa,kSize:bAa}=R2(),vhe=Symbol("pool"),Yyr=class{constructor(t){this[vhe]=t}get connected(){return this[vhe][mAa]}get free(){return this[vhe][hAa]}get pending(){return this[vhe][CAa]}get queued(){return this[vhe][_Aa]}get running(){return this[vhe][yAa]}get size(){return this[vhe][bAa]}};$7n.exports=Yyr});var jyr=H((esu,uzn)=>{"use strict";var EAa=Vwe(),SAa=Hyr(),{kConnected:Qyr,kSize:tzn,kRunning:rzn,kPending:nzn,kQueued:KYe,kBusy:vAa,kFree:BAa,kUrl:wAa,kClose:TAa,kDestroy:RAa,kDispatch:NAa}=R2(),DAa=ezn(),cV=Symbol("clients"),JZ=Symbol("needDrain"),jYe=Symbol("queue"),Xyr=Symbol("closed resolve"),Jyr=Symbol("onDrain"),izn=Symbol("onConnect"),szn=Symbol("onDisconnect"),ozn=Symbol("onConnectionError"),Uyr=Symbol("get dispatcher"),czn=Symbol("add client"),lzn=Symbol("remove client"),azn=Symbol("stats"),Kyr=class extends EAa{constructor(){super(),this[jYe]=new SAa,this[cV]=[],this[KYe]=0;let t=this;this[Jyr]=function(n,a){let o=t[jYe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[KYe]--,l=!this.dispatch(A.opts,A.handler)}this[JZ]=l,!this[JZ]&&t[JZ]&&(t[JZ]=!1,t.emit("drain",n,[t,...a])),t[Xyr]&&o.isEmpty()&&Promise.all(t[cV].map(A=>A.close())).then(t[Xyr])},this[izn]=(r,n)=>{t.emit("connect",r,[t,...n])},this[szn]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[ozn]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[azn]=new DAa(this)}get[vAa](){return this[JZ]}get[Qyr](){return this[cV].filter(t=>t[Qyr]).length}get[BAa](){return this[cV].filter(t=>t[Qyr]&&!t[JZ]).length}get[nzn](){let t=this[KYe];for(let{[nzn]:r}of this[cV])t+=r;return t}get[rzn](){let t=0;for(let{[rzn]:r}of this[cV])t+=r;return t}get[tzn](){let t=this[KYe];for(let{[tzn]:r}of this[cV])t+=r;return t}get stats(){return this[azn]}async[TAa](){this[jYe].isEmpty()?await Promise.all(this[cV].map(t=>t.close())):await new Promise(t=>{this[Xyr]=t})}async[RAa](t){for(;;){let r=this[jYe].shift();if(!r)break;r.handler.onError(t)}await Promise.all(this[cV].map(r=>r.destroy(t)))}[NAa](t,r){let n=this[Uyr]();return n?n.dispatch(t,r)||(n[JZ]=!0,this[JZ]=!this[Uyr]()):(this[JZ]=!0,this[jYe].push({opts:t,handler:r}),this[KYe]++),!this[JZ]}[czn](t){return t.on("drain",this[Jyr]).on("connect",this[izn]).on("disconnect",this[szn]).on("connectionError",this[ozn]),this[cV].push(t),this[JZ]&&queueMicrotask(()=>{this[JZ]&&this[Jyr](t[wAa],[this,t])}),this}[lzn](t){t.close(()=>{let r=this[cV].indexOf(t);r!==-1&&this[cV].splice(r,1)}),this[JZ]=this[cV].some(r=>!r[JZ]&&r.closed!==!0&&r.destroyed!==!0)}};uzn.exports={PoolBase:Kyr,kClients:cV,kNeedDrain:JZ,kAddClient:czn,kRemoveClient:lzn,kGetDispatcher:Uyr}});var $we=H((tsu,fzn)=>{"use strict";var{PoolBase:kAa,kClients:gzn,kNeedDrain:xAa,kAddClient:GAa,kGetDispatcher:FAa}=jyr(),ZAa=UYe(),{InvalidArgumentError:zyr}=X0(),Azn=wm(),{kUrl:dzn,kInterceptors:LAa}=R2(),VAa=wYe(),qyr=Symbol("options"),$yr=Symbol("connections"),pzn=Symbol("factory");function WAa(e,t){return new ZAa(e,t)}var ebr=class extends kAa{constructor(t,{connections:r,factory:n=WAa,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new zyr("invalid connections");if(typeof n!="function")throw new zyr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new zyr("connect must be a function or an object");typeof a!="function"&&(a=VAa({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[LAa]=E.interceptors?.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[$yr]=r||null,this[dzn]=Azn.parseOrigin(t),this[qyr]={...Azn.deepClone(E),connect:a,allowH2:b},this[qyr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[pzn]=n}[FAa](){for(let t of this[gzn])if(!t[xAa])return t;if(!this[$yr]||this[gzn].length{"use strict";var{BalancedPoolMissingUpstreamError:OAa,InvalidArgumentError:PAa}=X0(),{PoolBase:MAa,kClients:RG,kNeedDrain:zYe,kAddClient:HAa,kRemoveClient:YAa,kGetDispatcher:QAa}=jyr(),XAa=$we(),{kUrl:tbr,kInterceptors:JAa}=R2(),{parseOrigin:Izn}=wm(),hzn=Symbol("factory"),$ht=Symbol("options"),mzn=Symbol("kGreatestCommonDivisor"),Bhe=Symbol("kCurrentWeight"),whe=Symbol("kIndex"),MM=Symbol("kWeight"),emt=Symbol("kMaxWeightPerServer"),tmt=Symbol("kErrorPenalty");function UAa(e,t){if(e===0)return t;for(;t!==0;){let r=t;t=e%t,e=r}return e}function KAa(e,t){return new XAa(e,t)}var rbr=class extends MAa{constructor(t=[],{factory:r=KAa,...n}={}){if(super(),this[$ht]=n,this[whe]=-1,this[Bhe]=0,this[emt]=this[$ht].maxWeightPerServer||100,this[tmt]=this[$ht].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new PAa("factory must be a function.");this[JAa]=n.interceptors?.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[hzn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=Izn(t).origin;if(this[RG].find(a=>a[tbr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[hzn](r,Object.assign({},this[$ht]));this[HAa](n),n.on("connect",()=>{n[MM]=Math.min(this[emt],n[MM]+this[tmt])}),n.on("connectionError",()=>{n[MM]=Math.max(1,n[MM]-this[tmt]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[MM]=Math.max(1,n[MM]-this[tmt]),this._updateBalancedPoolStats())});for(let a of this[RG])a[MM]=this[emt];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let t=0;for(let r=0;ra[tbr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[YAa](n),this}get upstreams(){return this[RG].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[tbr].origin)}[QAa](){if(this[RG].length===0)throw new OAa;if(!this[RG].find(o=>!o[zYe]&&o.closed!==!0&&o.destroyed!==!0)||this[RG].map(o=>o[zYe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[RG].findIndex(o=>!o[zYe]);for(;n++this[RG][a][MM]&&!o[zYe]&&(a=this[whe]),this[whe]===0&&(this[Bhe]=this[Bhe]-this[mzn],this[Bhe]<=0&&(this[Bhe]=this[emt])),o[MM]>=this[Bhe]&&!o[zYe])return o}return this[Bhe]=this[RG][a][MM],this[whe]=a,this[RG][a]}};Czn.exports=rbr});var eTe=H((nsu,wzn)=>{"use strict";var{InvalidArgumentError:rmt}=X0(),{kClients:Sae,kRunning:yzn,kClose:jAa,kDestroy:zAa,kDispatch:qAa,kInterceptors:$Aa}=R2(),eda=Vwe(),tda=$we(),rda=UYe(),nda=wm(),ida=jht(),bzn=Symbol("onConnect"),Ezn=Symbol("onDisconnect"),Szn=Symbol("onConnectionError"),sda=Symbol("maxRedirections"),vzn=Symbol("onDrain"),Bzn=Symbol("factory"),nbr=Symbol("options");function oda(e,t){return t&&t.connections===1?new rda(e,t):new tda(e,t)}var ibr=class extends eda{constructor({factory:t=oda,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new rmt("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new rmt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new rmt("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[$Aa]=a.interceptors?.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[ida({maxRedirections:r})],this[nbr]={...nda.deepClone(a),connect:n},this[nbr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[sda]=r,this[Bzn]=t,this[Sae]=new Map,this[vzn]=(o,l)=>{this.emit("drain",o,[this,...l])},this[bzn]=(o,l)=>{this.emit("connect",o,[this,...l])},this[Ezn]=(o,l,A)=>{this.emit("disconnect",o,[this,...l],A)},this[Szn]=(o,l,A)=>{this.emit("connectionError",o,[this,...l],A)}}get[yzn](){let t=0;for(let r of this[Sae].values())t+=r[yzn];return t}[qAa](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new rmt("opts.origin must be a non-empty string or URL.");let a=this[Sae].get(n);return a||(a=this[Bzn](t.origin,this[nbr]).on("drain",this[vzn]).on("connect",this[bzn]).on("disconnect",this[Ezn]).on("connectionError",this[Szn]),this[Sae].set(n,a)),a.dispatch(t,r)}async[jAa](){let t=[];for(let r of this[Sae].values())t.push(r.close());this[Sae].clear(),await Promise.all(t)}async[zAa](t){let r=[];for(let n of this[Sae].values())r.push(n.destroy(t));this[Sae].clear(),await Promise.all(r)}};wzn.exports=ibr});var abr=H((isu,Dzn)=>{"use strict";var{kProxy:ada,kClose:cda,kDestroy:lda,kInterceptors:uda}=R2(),{URL:qYe}=Et("node:url"),gda=eTe(),Ada=$we(),dda=Vwe(),{InvalidArgumentError:smt,RequestAbortedError:pda,SecureProxyConnectionError:fda}=X0(),Tzn=wYe(),nmt=Symbol("proxy agent"),imt=Symbol("proxy client"),$Ye=Symbol("proxy headers"),sbr=Symbol("request tls settings"),Rzn=Symbol("proxy tls settings"),Nzn=Symbol("connect endpoint function");function Ida(e){return e==="https:"?443:80}function hda(e,t){return new Ada(e,t)}var mda=()=>{},obr=class extends dda{constructor(t){if(super(),!t||typeof t=="object"&&!(t instanceof qYe)&&!t.uri)throw new smt("Proxy uri is mandatory");let{clientFactory:r=hda}=t;if(typeof r!="function")throw new smt("Proxy opts.clientFactory must be a function.");let n=this.#e(t),{href:a,origin:o,port:l,protocol:A,username:f,password:I,hostname:C}=n;if(this[ada]={uri:a,protocol:A},this[uda]=t.interceptors?.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],this[sbr]=t.requestTls,this[Rzn]=t.proxyTls,this[$Ye]=t.headers||{},t.auth&&t.token)throw new smt("opts.auth cannot be used in combination with opts.token");t.auth?this[$Ye]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[$Ye]["proxy-authorization"]=t.token:f&&I&&(this[$Ye]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(f)}:${decodeURIComponent(I)}`).toString("base64")}`);let b=Tzn({...t.proxyTls});this[Nzn]=Tzn({...t.requestTls}),this[imt]=r(n,{connect:b}),this[nmt]=new gda({...t,connect:async(E,N)=>{let B=E.host;E.port||(B+=`:${Ida(E.protocol)}`);try{let{socket:F,statusCode:Q}=await this[imt].connect({origin:o,port:l,path:B,signal:E.signal,headers:{...this[$Ye],host:E.host},servername:this[Rzn]?.servername||C});if(Q!==200&&(F.on("error",mda).destroy(),N(new pda(`Proxy response (${Q}) !== 200 when HTTP Tunneling`))),E.protocol!=="https:"){N(null,F);return}let J;this[sbr]?J=this[sbr].servername:J=E.servername,this[Nzn]({...E,servername:J,httpSocket:F},N)}catch(F){F.code==="ERR_TLS_CERT_ALTNAME_INVALID"?N(new fda(F)):N(F)}}})}dispatch(t,r){let n=Cda(t.headers);if(_da(n),n&&!("host"in n)&&!("Host"in n)){let{host:a}=new qYe(t.origin);n.host=a}return this[nmt].dispatch({...t,headers:n},r)}#e(t){return typeof t=="string"?new qYe(t):t instanceof qYe?t:new qYe(t.uri)}async[cda](){await this[nmt].close(),await this[imt].close()}async[lda](){await this[nmt].destroy(),await this[imt].destroy()}};function Cda(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new smt("Proxy-Authorization should be sent in ProxyAgent constructor")}Dzn.exports=obr});var Lzn=H((ssu,Zzn)=>{"use strict";var yda=Vwe(),{kClose:bda,kDestroy:Eda,kClosed:kzn,kDestroyed:xzn,kDispatch:Sda,kNoProxyAgent:eQe,kHttpProxyAgent:vae,kHttpsProxyAgent:The}=R2(),Gzn=abr(),vda=eTe(),Bda={"http:":80,"https:":443},Fzn=!1,cbr=class extends yda{#e=null;#t=null;#n=null;constructor(t={}){super(),this.#n=t,Fzn||(Fzn=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:n,noProxy:a,...o}=t;this[eQe]=new vda(o);let l=r??process.env.http_proxy??process.env.HTTP_PROXY;l?this[vae]=new Gzn({...o,uri:l}):this[vae]=this[eQe];let A=n??process.env.https_proxy??process.env.HTTPS_PROXY;A?this[The]=new Gzn({...o,uri:A}):this[The]=this[vae],this.#s()}[Sda](t,r){let n=new URL(t.origin);return this.#r(n).dispatch(t,r)}async[bda](){await this[eQe].close(),this[vae][kzn]||await this[vae].close(),this[The][kzn]||await this[The].close()}async[Eda](t){await this[eQe].destroy(t),this[vae][xzn]||await this[vae].destroy(t),this[The][xzn]||await this[The].destroy(t)}#r(t){let{protocol:r,host:n,port:a}=t;return n=n.replace(/:\d*$/,"").toLowerCase(),a=Number.parseInt(a,10)||Bda[r]||0,this.#i(n,a)?r==="https:"?this[The]:this[vae]:this[eQe]}#i(t,r){if(this.#o&&this.#s(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let n=0;n{"use strict";var tTe=Et("node:assert"),{kRetryHandlerDefaultRetry:Vzn}=R2(),{RequestRetryError:tQe}=X0(),{isDisturbed:Wzn,parseHeaders:wda,parseRangeHeader:Ozn,wrapRequestBody:Tda}=wm();function Rda(e){let t=Date.now();return new Date(e).getTime()-t}var lbr=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...a,body:Tda(t.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[Vzn],retryAfter:E??!0,maxTimeout:A??30*1e3,minTimeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[Vzn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,minTimeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:J}=r;if(l&&l!=="UND_ERR_REQ_RETRY"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(J>C){a(t);return}let ae=A?.["retry-after"];ae&&(ae=Number(ae),ae=Number.isNaN(ae)?Rda(ae):ae*1e3);let ne=ae>0?Math.min(ae,E):Math.min(b*N**(J-1),E);setTimeout(()=>a(null),ne)}onHeaders(t,r,n,a){let o=wda(r);if(this.retryCount+=1,t>=300)return this.retryOpts.statusCodes.includes(t)===!1?this.handler.onHeaders(t,r,n,a):(this.abort(new tQe("Request failed",t,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,t!==206&&(this.start>0||t!==200))return this.abort(new tQe("server does not support the range header and the payload was partially consumed",t,{headers:o,data:{count:this.retryCount}})),!1;let A=Ozn(o["content-range"]);if(!A)return this.abort(new tQe("Content-Range mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new tQe("ETag mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;let{start:f,size:I,end:C=I}=A;return tTe(this.start===f,"content-range mismatch"),tTe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=Ozn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;tTe(f!=null&&Number.isFinite(f),"content-range mismatch"),tTe(C!=null&&Number.isFinite(C),"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return tTe(Number.isFinite(this.start)),tTe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(t,r,n,a)}let l=new tQe("Request failed",t,{headers:o,data:{count:this.retryCount}});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||Wzn(this.opts.body))return this.handler.onError(t);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||Wzn(this.opts.body))return this.handler.onError(n);if(this.start!==0){let a={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};Pzn.exports=lbr});var Hzn=H((asu,Mzn)=>{"use strict";var Nda=vYe(),Dda=omt(),ubr=class extends Nda{#e=null;#t=null;constructor(t,r={}){super(r),this.#e=t,this.#t=r}dispatch(t,r){let n=new Dda({...t,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(t,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};Mzn.exports=ubr});var Ibr=H((csu,qzn)=>{"use strict";var Uzn=Et("node:assert"),{Readable:kda}=Et("node:stream"),{RequestAbortedError:Kzn,NotSupportedError:xda,InvalidArgumentError:Gda,AbortError:gbr}=X0(),jzn=wm(),{ReadableStreamFrom:Fda}=wm(),oP=Symbol("kConsume"),rQe=Symbol("kReading"),Bae=Symbol("kBody"),Yzn=Symbol("kAbort"),zzn=Symbol("kContentType"),Qzn=Symbol("kContentLength"),Zda=()=>{},Abr=class extends kda{constructor({resume:t,abort:r,contentType:n="",contentLength:a,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:o}),this._readableState.dataEmitted=!1,this[Yzn]=r,this[oP]=null,this[Bae]=null,this[zzn]=n,this[Qzn]=a,this[rQe]=!1}destroy(t){return!t&&!this._readableState.endEmitted&&(t=new Kzn),t&&this[Yzn](),super.destroy(t)}_destroy(t,r){this[rQe]?r(t):setImmediate(()=>{r(t)})}on(t,...r){return(t==="data"||t==="readable")&&(this[rQe]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[rQe]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[oP]&&t!==null?(pbr(this[oP],t),this[rQe]?super.push(t):!0):super.push(t)}async text(){return nQe(this,"text")}async json(){return nQe(this,"json")}async blob(){return nQe(this,"blob")}async bytes(){return nQe(this,"bytes")}async arrayBuffer(){return nQe(this,"arrayBuffer")}async formData(){throw new xda}get bodyUsed(){return jzn.isDisturbed(this)}get body(){return this[Bae]||(this[Bae]=Fda(this),this[oP]&&(this[Bae].getReader(),Uzn(this[Bae].locked))),this[Bae]}async dump(t){let r=Number.isFinite(t?.limit)?t.limit:131072,n=t?.signal;if(n!=null&&(typeof n!="object"||!("aborted"in n)))throw new Gda("signal must be an AbortSignal");return n?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((a,o)=>{this[Qzn]>r&&this.destroy(new gbr);let l=()=>{this.destroy(n.reason??new gbr)};n?.addEventListener("abort",l),this.on("close",function(){n?.removeEventListener("abort",l),n?.aborted?o(n.reason??new gbr):a(null)}).on("error",Zda).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Lda(e){return e[Bae]&&e[Bae].locked===!0||e[oP]}function Vda(e){return jzn.isDisturbed(e)||Lda(e)}async function nQe(e,t){return Uzn(!e[oP]),new Promise((r,n)=>{if(Vda(e)){let a=e._readableState;a.destroyed&&a.closeEmitted===!1?e.on("error",o=>{n(o)}).on("close",()=>{n(new TypeError("unusable"))}):n(a.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[oP]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){fbr(this[oP],a)}).on("close",function(){this[oP].body!==null&&fbr(this[oP],new Kzn)}),Wda(e[oP])})})}function Wda(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let r=t.bufferIndex,n=t.buffer.length;for(let a=r;a2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(a,n)}function Xzn(e,t){if(e.length===0||t===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),n=0;for(let a=0;a{var Oda=Et("node:assert"),{ResponseStatusCodeError:$zn}=X0(),{chunksDecode:eqn}=Ibr(),Pda=128*1024;async function Mda({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){Oda(t);let l=[],A=0;try{for await(let b of t)if(l.push(b),A+=b.length,A>Pda){l=[],A=0;break}}catch{l=[],A=0}let f=`Response status code ${n}${a?`: ${a}`:""}`;if(n===204||!r||!A){queueMicrotask(()=>e(new $zn(f,n,o)));return}let I=Error.stackTraceLimit;Error.stackTraceLimit=0;let C;try{tqn(r)?C=JSON.parse(eqn(l,A)):rqn(r)&&(C=eqn(l,A))}catch{}finally{Error.stackTraceLimit=I}queueMicrotask(()=>e(new $zn(f,n,o,C)))}var tqn=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",rqn=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";nqn.exports={getResolveErrorBodyCallback:Mda,isContentTypeApplicationJson:tqn,isContentTypeText:rqn}});var oqn=H((usu,mbr)=>{"use strict";var Hda=Et("node:assert"),{Readable:Yda}=Ibr(),{InvalidArgumentError:rTe,RequestAbortedError:iqn}=X0(),HM=wm(),{getResolveErrorBodyCallback:Qda}=hbr(),{AsyncResource:Xda}=Et("node:async_hooks"),amt=class extends Xda{constructor(t,r){if(!t||typeof t!="object")throw new rTe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new rTe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new rTe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new rTe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new rTe("invalid method");if(A&&typeof A!="function")throw new rTe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw HM.isStream(l)&&HM.destroy(l.on("error",HM.nop),b),b}this.method=a,this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,this.signal=n,this.reason=null,this.removeAbortListener=null,HM.isStream(l)&&l.on("error",b=>{this.onError(b)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new iqn:this.removeAbortListener=HM.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new iqn,this.res?HM.destroy(this.res,this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(t,r){if(this.reason){t(this.reason);return}Hda(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?HM.parseRawHeaders(r):HM.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let E=I==="raw"?HM.parseHeaders(r):b,N=E["content-type"],B=E["content-length"],F=new Yda({resume:n,abort:A,contentType:N,contentLength:this.method!=="HEAD"&&B?Number(B):null,highWaterMark:C});this.removeAbortListener&&F.on("close",this.removeAbortListener),this.callback=null,this.res=F,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(Qda,null,{callback:o,body:F,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:F,context:f}))}onData(t){return this.res.push(t)}onComplete(t){HM.parseHeaders(t,this.trailers),this.res.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{HM.destroy(r,t)})),a&&(this.body=null,HM.destroy(a,t)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function sqn(e,t){if(t===void 0)return new Promise((r,n)=>{sqn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new amt(e,t))}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}mbr.exports=sqn;mbr.exports.RequestHandler=amt});var iQe=H((gsu,lqn)=>{var{addAbortListener:Jda}=wm(),{RequestAbortedError:Uda}=X0(),nTe=Symbol("kListener"),U8=Symbol("kSignal");function aqn(e){e.abort?e.abort(e[U8]?.reason):e.reason=e[U8]?.reason??new Uda,cqn(e)}function Kda(e,t){if(e.reason=null,e[U8]=null,e[nTe]=null,!!t){if(t.aborted){aqn(e);return}e[U8]=t,e[nTe]=()=>{aqn(e)},Jda(e[U8],e[nTe])}}function cqn(e){e[U8]&&("removeEventListener"in e[U8]?e[U8].removeEventListener("abort",e[nTe]):e[U8].removeListener("abort",e[nTe]),e[U8]=null,e[nTe]=null)}lqn.exports={addSignal:Kda,removeSignal:cqn}});var dqn=H((Asu,Aqn)=>{"use strict";var jda=Et("node:assert"),{finished:zda,PassThrough:qda}=Et("node:stream"),{InvalidArgumentError:iTe,InvalidReturnValueError:$da}=X0(),UX=wm(),{getResolveErrorBodyCallback:epa}=hbr(),{AsyncResource:tpa}=Et("node:async_hooks"),{addSignal:rpa,removeSignal:uqn}=iQe(),Cbr=class extends tpa{constructor(t,r,n){if(!t||typeof t!="object")throw new iTe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new iTe("invalid callback");if(typeof r!="function")throw new iTe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new iTe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new iTe("invalid method");if(f&&typeof f!="function")throw new iTe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw UX.isStream(A)&&UX.destroy(A.on("error",UX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,UX.isStream(A)&&A.on("error",b=>{this.onError(b)}),rpa(this,a)}onConnect(t,r){if(this.reason){t(this.reason);return}jda(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?UX.parseRawHeaders(r):UX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?UX.parseHeaders(r):C)["content-type"];b=new qda,this.callback=null,this.runInAsyncScope(epa,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new $da("expected Writable");zda(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:J,abort:ae}=this;this.res=null,(N||!F.readable)&&UX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:J}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState?.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;uqn(this),r&&(this.trailers=UX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;uqn(this),this.factory=null,r?(this.res=null,UX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,UX.destroy(o,t))}};function gqn(e,t,r){if(r===void 0)return new Promise((n,a)=>{gqn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new Cbr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e?.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}Aqn.exports=gqn});var hqn=H((dsu,Iqn)=>{"use strict";var{Readable:fqn,Duplex:npa,PassThrough:ipa}=Et("node:stream"),{InvalidArgumentError:sQe,InvalidReturnValueError:spa,RequestAbortedError:_br}=X0(),YM=wm(),{AsyncResource:opa}=Et("node:async_hooks"),{addSignal:apa,removeSignal:cpa}=iQe(),pqn=Et("node:assert"),sTe=Symbol("resume"),ybr=class extends fqn{constructor(){super({autoDestroy:!0}),this[sTe]=null}_read(){let{[sTe]:t}=this;t&&(this[sTe]=null,t())}_destroy(t,r){this._read(),r(t)}},bbr=class extends fqn{constructor(t){super({autoDestroy:!0}),this[sTe]=t}_read(){this[sTe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new _br),r(t)}},Ebr=class extends opa{constructor(t,r){if(!t||typeof t!="object")throw new sQe("invalid opts");if(typeof r!="function")throw new sQe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new sQe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new sQe("invalid method");if(l&&typeof l!="function")throw new sQe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new ybr().on("error",YM.nop),this.ret=new npa({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f?.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[sTe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new _br),B&&f&&B(),YM.destroy(C,f),YM.destroy(b,f),YM.destroy(E,f),cpa(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,apa(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(this.reason){t(this.reason);return}pqn(!a,"pipeline cannot be retried"),pqn(!n.destroyed),this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?YM.parseRawHeaders(r):YM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new bbr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?YM.parseRawHeaders(r):YM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",YM.nop),f}if(!A||typeof A.on!="function")throw new spa("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;YM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||YM.destroy(f,new _br)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,YM.destroy(r,t)}};function lpa(e,t){try{let r=new Ebr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new ipa().destroy(r)}}Iqn.exports=lpa});var Eqn=H((psu,bqn)=>{"use strict";var{InvalidArgumentError:Sbr,SocketError:upa}=X0(),{AsyncResource:gpa}=Et("node:async_hooks"),mqn=wm(),{addSignal:Apa,removeSignal:Cqn}=iQe(),_qn=Et("node:assert"),vbr=class extends gpa{constructor(t,r){if(!t||typeof t!="object")throw new Sbr("invalid opts");if(typeof r!="function")throw new Sbr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new Sbr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,Apa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}_qn(this.callback),this.abort=t,this.context=null}onHeaders(){throw new upa("bad upgrade",null)}onUpgrade(t,r,n){_qn(t===101);let{callback:a,opaque:o,context:l}=this;Cqn(this),this.callback=null;let A=this.responseHeaders==="raw"?mqn.parseRawHeaders(r):mqn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;Cqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function yqn(e,t){if(t===void 0)return new Promise((r,n)=>{yqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new vbr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}bqn.exports=yqn});var Tqn=H((fsu,wqn)=>{"use strict";var dpa=Et("node:assert"),{AsyncResource:ppa}=Et("node:async_hooks"),{InvalidArgumentError:Bbr,SocketError:fpa}=X0(),Sqn=wm(),{addSignal:Ipa,removeSignal:vqn}=iQe(),wbr=class extends ppa{constructor(t,r){if(!t||typeof t!="object")throw new Bbr("invalid opts");if(typeof r!="function")throw new Bbr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new Bbr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,Ipa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}dpa(this.callback),this.abort=t,this.context=r}onHeaders(){throw new fpa("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;vqn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?Sqn.parseRawHeaders(r):Sqn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;vqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function Bqn(e,t){if(t===void 0)return new Promise((r,n)=>{Bqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new wbr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}wqn.exports=Bqn});var Rqn=H((Isu,oTe)=>{"use strict";oTe.exports.request=oqn();oTe.exports.stream=dqn();oTe.exports.pipeline=hqn();oTe.exports.upgrade=Eqn();oTe.exports.connect=Tqn()});var Rbr=H((hsu,Nqn)=>{"use strict";var{UndiciError:hpa}=X0(),Tbr=class e extends hpa{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};Nqn.exports={MockNotMatchedError:Tbr}});var aTe=H((msu,Dqn)=>{"use strict";Dqn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var oQe=H((Csu,Mqn)=>{"use strict";var{MockNotMatchedError:Rhe}=Rbr(),{kDispatches:cmt,kMockAgent:mpa,kOriginalDispatch:Cpa,kOrigin:_pa,kGetNetConnect:ypa}=aTe(),{buildURL:bpa}=wm(),{STATUS_CODES:Epa}=Et("node:http"),{types:{isPromise:Spa}}=Et("node:util");function see(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function xqn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function Gqn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=Gqn(t,r);if(!see(n,a))return!1}return!0}function kqn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function vpa(e,{path:t,method:r,body:n,headers:a}){let o=see(e.path,t),l=see(e.method,r),A=typeof e.body<"u"?see(e.body,n):!0,f=Fqn(e,a);return o&&l&&A&&f}function Zqn(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function Lqn(e,t){let r=t.query?bpa(t.path,t.query):t.path,n=typeof r=="string"?kqn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>see(kqn(o),n));if(a.length===0)throw new Rhe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>see(o,t.method)),a.length===0)throw new Rhe(`Mock dispatch not matched for method '${t.method}' on path '${n}'`);if(a=a.filter(({body:o})=>typeof o<"u"?see(o,t.body):!0),a.length===0)throw new Rhe(`Mock dispatch not matched for body '${t.body}' on path '${n}'`);if(a=a.filter(o=>Fqn(o,t.headers)),a.length===0){let o=typeof t.headers=="object"?JSON.stringify(t.headers):t.headers;throw new Rhe(`Mock dispatch not matched for headers '${o}' on path '${n}'`)}return a[0]}function Bpa(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function Nbr(e,t){let r=e.findIndex(n=>n.consumed?vpa(n,t):!1);r!==-1&&e.splice(r,1)}function Vqn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function Dbr(e){let t=Object.keys(e),r=[];for(let n=0;n=E,n.pending=b0?setTimeout(()=>{N(this[cmt])},I):N(this[cmt]);function N(F,Q=o){let J=Array.isArray(e.headers)?kbr(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:J}):Q;if(Spa(ae)){ae.then(ue=>N(F,ue));return}let ne=Zqn(ae),ce=Dbr(l),fe=Dbr(A);t.onConnect?.(ue=>t.onError(ue),null),t.onHeaders?.(a,ce,B,Wqn(a)),t.onData?.(Buffer.from(ne)),t.onComplete?.(fe),Nbr(F,r)}function B(){}return!0}function Tpa(){let e=this[mpa],t=this[_pa],r=this[Cpa];return function(a,o){if(e.isMockActive)try{Oqn.call(this,a,o)}catch(l){if(l instanceof Rhe){let A=e[ypa]();if(A===!1)throw new Rhe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(Pqn(A,t))r.call(this,a,o);else throw new Rhe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function Pqn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>see(n,r.host)))}function Rpa(e){if(e){let{agent:t,...r}=e;return r}}Mqn.exports={getResponseData:Zqn,getMockDispatch:Lqn,addMockDispatch:Bpa,deleteMockDispatch:Nbr,buildKey:Vqn,generateKeyValues:Dbr,matchValue:see,getResponse:wpa,getStatusText:Wqn,mockDispatch:Oqn,buildMockDispatch:Tpa,checkNetConnect:Pqn,buildMockOptions:Rpa,getHeaderByName:Gqn,buildHeadersFromArray:kbr}});var Wbr=H((_su,Vbr)=>{"use strict";var{getResponseData:Npa,buildKey:Dpa,addMockDispatch:xbr}=oQe(),{kDispatches:lmt,kDispatchKey:umt,kDefaultHeaders:Gbr,kDefaultTrailers:Fbr,kContentLength:Zbr,kMockDispatch:gmt}=aTe(),{InvalidArgumentError:K8}=X0(),{buildURL:kpa}=wm(),cTe=class{constructor(t){this[gmt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new K8("waitInMs must be a valid integer > 0");return this[gmt].delay=t,this}persist(){return this[gmt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new K8("repeatTimes must be a valid integer > 0");return this[gmt].times=t,this}},Lbr=class{constructor(t,r){if(typeof t!="object")throw new K8("opts must be an object");if(typeof t.path>"u")throw new K8("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=kpa(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[umt]=Dpa(t),this[lmt]=r,this[Gbr]={},this[Fbr]={},this[Zbr]=!1}createMockScopeDispatchData({statusCode:t,data:r,responseOptions:n}){let a=Npa(r),o=this[Zbr]?{"content-length":a.length}:{},l={...this[Gbr],...o,...n.headers},A={...this[Fbr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t){if(typeof t.statusCode>"u")throw new K8("statusCode must be defined");if(typeof t.responseOptions!="object"||t.responseOptions===null)throw new K8("responseOptions must be an object")}reply(t){if(typeof t=="function"){let o=A=>{let f=t(A);if(typeof f!="object"||f===null)throw new K8("reply options callback must return an object");let I={data:"",responseOptions:{},...f};return this.validateReplyParameters(I),{...this.createMockScopeDispatchData(I)}},l=xbr(this[lmt],this[umt],o);return new cTe(l)}let r={statusCode:t,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let n=this.createMockScopeDispatchData(r),a=xbr(this[lmt],this[umt],n);return new cTe(a)}replyWithError(t){if(typeof t>"u")throw new K8("error must be defined");let r=xbr(this[lmt],this[umt],{error:t});return new cTe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new K8("headers must be defined");return this[Gbr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new K8("trailers must be defined");return this[Fbr]=t,this}replyContentLength(){return this[Zbr]=!0,this}};Vbr.exports.MockInterceptor=Lbr;Vbr.exports.MockScope=cTe});var Mbr=H((ysu,Kqn)=>{"use strict";var{promisify:xpa}=Et("node:util"),Gpa=UYe(),{buildMockDispatch:Fpa}=oQe(),{kDispatches:Hqn,kMockAgent:Yqn,kClose:Qqn,kOriginalClose:Xqn,kOrigin:Jqn,kOriginalDispatch:Zpa,kConnected:Obr}=aTe(),{MockInterceptor:Lpa}=Wbr(),Uqn=R2(),{InvalidArgumentError:Vpa}=X0(),Pbr=class extends Gpa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Vpa("Argument opts.agent must implement Agent");this[Yqn]=r.agent,this[Jqn]=t,this[Hqn]=[],this[Obr]=1,this[Zpa]=this.dispatch,this[Xqn]=this.close.bind(this),this.dispatch=Fpa.call(this),this.close=this[Qqn]}get[Uqn.kConnected](){return this[Obr]}intercept(t){return new Lpa(t,this[Hqn])}async[Qqn](){await xpa(this[Xqn])(),this[Obr]=0,this[Yqn][Uqn.kClients].delete(this[Jqn])}};Kqn.exports=Pbr});var Qbr=H((bsu,r$n)=>{"use strict";var{promisify:Wpa}=Et("node:util"),Opa=$we(),{buildMockDispatch:Ppa}=oQe(),{kDispatches:jqn,kMockAgent:zqn,kClose:qqn,kOriginalClose:$qn,kOrigin:e$n,kOriginalDispatch:Mpa,kConnected:Hbr}=aTe(),{MockInterceptor:Hpa}=Wbr(),t$n=R2(),{InvalidArgumentError:Ypa}=X0(),Ybr=class extends Opa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Ypa("Argument opts.agent must implement Agent");this[zqn]=r.agent,this[e$n]=t,this[jqn]=[],this[Hbr]=1,this[Mpa]=this.dispatch,this[$qn]=this.close.bind(this),this.dispatch=Ppa.call(this),this.close=this[qqn]}get[t$n.kConnected](){return this[Hbr]}intercept(t){return new Hpa(t,this[jqn])}async[qqn](){await Wpa(this[$qn])(),this[Hbr]=0,this[zqn][t$n.kClients].delete(this[e$n])}};r$n.exports=Ybr});var i$n=H((Ssu,n$n)=>{"use strict";var Qpa={pronoun:"it",is:"is",was:"was",this:"this"},Xpa={pronoun:"they",is:"are",was:"were",this:"these"};n$n.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?Qpa:Xpa,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var o$n=H((Bsu,s$n)=>{"use strict";var{Transform:Jpa}=Et("node:stream"),{Console:Upa}=Et("node:console"),Kpa=process.versions.icu?"\u2705":"Y ",jpa=process.versions.icu?"\u274C":"N ";s$n.exports=class{constructor({disableColors:t}={}){this.transform=new Jpa({transform(r,n,a){a(null,r)}}),this.logger=new Upa({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?Kpa:jpa,Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var u$n=H((wsu,l$n)=>{"use strict";var{kClients:Nhe}=R2(),zpa=eTe(),{kAgent:Xbr,kMockAgentSet:Amt,kMockAgentGet:a$n,kDispatches:Jbr,kIsMockActive:dmt,kNetConnect:Dhe,kGetNetConnect:qpa,kOptions:pmt,kFactory:fmt}=aTe(),$pa=Mbr(),efa=Qbr(),{matchValue:tfa,buildMockOptions:rfa}=oQe(),{InvalidArgumentError:c$n,UndiciError:nfa}=X0(),ifa=vYe(),sfa=i$n(),ofa=o$n(),Ubr=class extends ifa{constructor(t){if(super(t),this[Dhe]=!0,this[dmt]=!0,t?.agent&&typeof t.agent.dispatch!="function")throw new c$n("Argument opts.agent must implement Agent");let r=t?.agent?t.agent:new zpa(t);this[Xbr]=r,this[Nhe]=r[Nhe],this[pmt]=rfa(t)}get(t){let r=this[a$n](t);return r||(r=this[fmt](t),this[Amt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[Xbr].dispatch(t,r)}async close(){await this[Xbr].close(),this[Nhe].clear()}deactivate(){this[dmt]=!1}activate(){this[dmt]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[Dhe])?this[Dhe].push(t):this[Dhe]=[t];else if(typeof t>"u")this[Dhe]=!0;else throw new c$n("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[Dhe]=!1}get isMockActive(){return this[dmt]}[Amt](t,r){this[Nhe].set(t,r)}[fmt](t){let r=Object.assign({agent:this},this[pmt]);return this[pmt]&&this[pmt].connections===1?new $pa(t,r):new efa(t,r)}[a$n](t){let r=this[Nhe].get(t);if(r)return r;if(typeof t!="string"){let n=this[fmt]("http://localhost:9999");return this[Amt](t,n),n}for(let[n,a]of Array.from(this[Nhe]))if(a&&typeof n!="string"&&tfa(n,t)){let o=this[fmt](t);return this[Amt](t,o),o[Jbr]=a[Jbr],o}}[qpa](){return this[Dhe]}pendingInterceptors(){let t=this[Nhe];return Array.from(t.entries()).flatMap(([r,n])=>n[Jbr].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new ofa}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new sfa("interceptor","interceptors").pluralize(r.length);throw new nfa(` +`,"latin1"),r!==null&&a!==r){if(n[Ryr])throw new bhe;process.emitWarning(new bhe)}t[Xv].timeout&&t[Xv].timeoutType===Kwe&&t[Xv].timeout.refresh&&t[Xv].timeout.refresh(),n[Cae]()}}destroy(t){let{socket:r,client:n,abort:a}=this;r[_ae]=!1,t&&(pf(n[RG]<=1,"pipeline should only contain this request"),a(t))}};F7n.exports=sga});var H7n=H((Zsu,M7n)=>{"use strict";var MM=Et("node:assert"),{pipeline:gga}=Et("node:stream"),vC=wm(),{RequestContentLengthMismatchError:xyr,RequestAbortedError:L7n,SocketError:WYe,InformationalError:Gyr}=J0(),{kUrl:Mht,kReset:Yht,kClient:jwe,kRunning:Qht,kPending:Aga,kQueue:Ehe,kPendingIdx:Fyr,kRunningIdx:X8,kError:XX,kSocket:aD,kStrictContentLength:dga,kOnError:Zyr,kMaxConcurrentStreams:P7n,kHTTP2Session:QX,kResume:yae,kSize:pga,kHTTPContext:fga}=N2(),nee=Symbol("open streams"),V7n=!1,Hht;try{Hht=Et("node:http2")}catch{Hht={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Iga,HTTP2_HEADER_METHOD:hga,HTTP2_HEADER_PATH:mga,HTTP2_HEADER_SCHEME:Cga,HTTP2_HEADER_CONTENT_LENGTH:_ga,HTTP2_HEADER_EXPECT:yga,HTTP2_HEADER_STATUS:bga}}=Hht;function Ega(e){let t=[];for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let a of n)t.push(Buffer.from(r),Buffer.from(a));else t.push(Buffer.from(r),Buffer.from(n));return t}async function Sga(e,t){e[aD]=t,V7n||(V7n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=Hht.connect(e[Mht],{createConnection:()=>t,peerMaxConcurrentStreams:e[P7n]});r[nee]=0,r[jwe]=e,r[aD]=t,vC.addListener(r,"error",Bga),vC.addListener(r,"frameError",wga),vC.addListener(r,"end",Tga),vC.addListener(r,"goaway",Rga),vC.addListener(r,"close",function(){let{[jwe]:a}=this,{[aD]:o}=a,l=this[aD][XX]||this[XX]||new WYe("closed",vC.getSocketInfo(o));if(a[QX]=null,a.destroyed){MM(a[Aga]===0);let A=a[Ehe].splice(a[X8]);for(let f=0;f{n=!0}),{version:"h2",defaultPipelining:1/0,write(...a){return Dga(e,...a)},resume(){vga(e)},destroy(a,o){n?queueMicrotask(o):t.destroy(a).on("close",o)},get destroyed(){return t.destroyed},busy(){return!1}}}function vga(e){let t=e[aD];t?.destroyed===!1&&(e[pga]===0&&e[P7n]===0?(t.unref(),e[QX].unref()):(t.ref(),e[QX].ref()))}function Bga(e){MM(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[aD][XX]=e,this[jwe][Zyr](e)}function wga(e,t,r){if(r===0){let n=new Gyr(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[aD][XX]=n,this[jwe][Zyr](n)}}function Tga(){let e=new WYe("other side closed",vC.getSocketInfo(this[aD]));this.destroy(e),vC.destroy(this[aD],e)}function Rga(e){let t=this[XX]||new WYe(`HTTP/2: "GOAWAY" frame received with code ${e}`,vC.getSocketInfo(this)),r=this[jwe];r[aD]=null,r[fga]=null,this[QX]!=null&&(this[QX].destroy(t),this[QX]=null),vC.destroy(this[aD],t);let n=r[Ehe][r[X8]];r[Ehe][r[X8]++]=null,vC.errorRequest(r,n,t),r[Fyr]=r[X8],MM(r[Qht]===0),r.emit("disconnect",r[Mht],[r],t),r[yae]()}function Nga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Dga(e,t){let r=e[QX],{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=t;if(A)return vC.errorRequest(e,t,new Error("Upgrade not supported for H2")),!1;let b={};for(let ce=0;ce{t.aborted||t.completed||(ce=ce||new L7n,vC.errorRequest(e,t,ce),E!=null&&vC.destroy(E,ce),vC.destroy(n,ce),e[Ehe][e[X8]++]=null,e[yae]())};try{t.onConnect(F)}catch(ce){vC.errorRequest(e,t,ce)}if(t.aborted)return!1;if(a==="CONNECT")return r.ref(),E=r.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(t.onUpgrade(null,null,E),++r[nee],e[Ehe][e[X8]++]=null):E.once("ready",()=>{t.onUpgrade(null,null,E),++r[nee],e[Ehe][e[X8]++]=null}),E.once("close",()=>{r[nee]-=1,r[nee]===0&&r.unref()}),!0;b[mga]=o,b[Cga]="https";let Q=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let J=vC.bodyLength(n);if(J==null&&(J=t.contentLength),(J===0||!Q)&&(J=null),Nga(a)&&J>0&&t.contentLength!=null&&t.contentLength!==J){if(e[dga])return vC.errorRequest(e,t,new xyr),!1;process.emitWarning(new xyr)}J!=null&&(MM(n,"no body must not have content length"),b[_ga]=`${J}`),r.ref();let ae=a==="GET"||a==="HEAD"||n===null;return f?(b[yga]="100-continue",E=r.request(b,{endStream:ae,signal:I}),E.once("continue",ne)):(E=r.request(b,{endStream:ae,signal:I}),ne()),++r[nee],E.once("response",ce=>{let{[bga]:fe,...ue}=ce;if(t.onResponseStarted(),t.aborted){let de=new L7n;vC.errorRequest(e,t,de),vC.destroy(E,de);return}t.onHeaders(Number(fe),Ega(ue),E.resume.bind(E),"")===!1&&E.pause(),E.on("data",de=>{t.onData(de)===!1&&E.pause()})}),E.once("end",()=>{(E.state?.state==null||E.state.state<6)&&t.onComplete([]),r[nee]===0&&r.unref(),F(new Gyr("HTTP/2: stream half-closed (remote)")),e[Ehe][e[X8]++]=null,e[Fyr]=e[X8],e[yae]()}),E.once("close",()=>{r[nee]-=1,r[nee]===0&&r.unref()}),E.once("error",function(ce){F(ce)}),E.once("frameError",(ce,fe)=>{F(new Gyr(`HTTP/2: "frameError" received - type ${ce}, code ${fe}`))}),!0;function ne(){!n||J===0?W7n(F,E,null,e,t,e[aD],J,Q):vC.isBuffer(n)?W7n(F,E,n,e,t,e[aD],J,Q):vC.isBlobLike(n)?typeof n.stream=="function"?O7n(F,E,n.stream(),e,t,e[aD],J,Q):xga(F,E,n,e,t,e[aD],J,Q):vC.isStream(n)?kga(F,e[aD],Q,E,n,e,t,J):vC.isIterable(n)?O7n(F,E,n,e,t,e[aD],J,Q):MM(!1)}}function W7n(e,t,r,n,a,o,l,A){try{r!=null&&vC.isBuffer(r)&&(MM(l===r.byteLength,"buffer body must have content length"),t.cork(),t.write(r),t.uncork(),t.end(),a.onBodySent(r)),A||(o[Yht]=!0),a.onRequestSent(),n[yae]()}catch(f){e(f)}}function kga(e,t,r,n,a,o,l,A){MM(A!==0||o[Qht]===0,"stream body cannot be pipelined");let f=gga(a,n,C=>{C?(vC.destroy(f,C),e(C)):(vC.removeAllListeners(f),l.onRequestSent(),r||(t[Yht]=!0),o[yae]())});vC.addListener(f,"data",I);function I(C){l.onBodySent(C)}}async function xga(e,t,r,n,a,o,l,A){MM(l===r.size,"blob body must have content length");try{if(l!=null&&l!==r.size)throw new xyr;let f=Buffer.from(await r.arrayBuffer());t.cork(),t.write(f),t.uncork(),t.end(),a.onBodySent(f),a.onRequestSent(),A||(o[Yht]=!0),n[yae]()}catch(f){e(f)}}async function O7n(e,t,r,n,a,o,l,A){MM(l!==0||n[Qht]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let b=f;f=null,b()}}let C=()=>new Promise((b,E)=>{MM(f===null),o[XX]?E(o[XX]):f=b});t.on("close",I).on("drain",I);try{for await(let b of r){if(o[XX])throw o[XX];let E=t.write(b);a.onBodySent(b),E||await C()}t.end(),a.onRequestSent(),A||(o[Yht]=!0),n[yae]()}catch(b){e(b)}finally{t.off("close",I).off("drain",I)}}M7n.exports=Sga});var Jht=H((Lsu,X7n)=>{"use strict";var J8=wm(),{kBodyUsed:OYe}=N2(),Vyr=Et("node:assert"),{InvalidArgumentError:Gga}=J0(),Fga=Et("node:events"),Zga=[300,301,302,303,307,308],Y7n=Symbol("body"),Xht=class{constructor(t){this[Y7n]=t,this[OYe]=!1}async*[Symbol.asyncIterator](){Vyr(!this[OYe],"disturbed"),this[OYe]=!0,yield*this[Y7n]}},Lyr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new Gga("maxRedirections must be a positive number");J8.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],this.redirectionLimitReached=!1,J8.isStream(this.opts.body)?(J8.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){Vyr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[OYe]=!1,Fga.prototype.on.call(this.opts.body,"data",function(){this[OYe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Xht(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&J8.isIterable(this.opts.body)&&(this.opts.body=new Xht(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||J8.isDisturbed(this.opts.body)?null:Lga(t,r),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=J8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=Vga(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Lga(e,t){if(Zga.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var Wga=Jht();function Oga({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new Wga(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}J7n.exports=Oga});var JYe=H((Wsu,nzn)=>{"use strict";var iee=Et("node:assert"),$7n=Et("node:net"),Pga=Et("node:http"),She=wm(),{channels:zwe}=Gwe(),Mga=gjn(),Hga=Vwe(),{InvalidArgumentError:aw,InformationalError:Yga,ClientDestroyedError:Qga}=J0(),Xga=BYe(),{kUrl:U8,kServerName:bae,kClient:Jga,kBusy:Wyr,kConnect:Uga,kResuming:vhe,kRunning:QYe,kPending:XYe,kSize:YYe,kQueue:JX,kConnected:Kga,kConnecting:qwe,kNeedDrain:Sae,kKeepAliveDefaultTimeout:U7n,kHostHeader:jga,kPendingIdx:UX,kRunningIdx:see,kError:zga,kPipelining:Kht,kKeepAliveTimeoutValue:qga,kMaxHeadersSize:$ga,kKeepAliveMaxTimeout:eAa,kKeepAliveTimeoutThreshold:tAa,kHeadersTimeout:rAa,kBodyTimeout:nAa,kStrictContentLength:iAa,kConnector:PYe,kMaxRedirections:sAa,kMaxRequests:Oyr,kCounter:oAa,kClose:aAa,kDestroy:cAa,kDispatch:lAa,kInterceptors:K7n,kLocalAddress:MYe,kMaxResponseSize:uAa,kOnError:gAa,kHTTPContext:cw,kMaxConcurrentStreams:AAa,kResume:HYe}=N2(),dAa=Z7n(),pAa=H7n(),j7n=!1,Eae=Symbol("kClosedResolve"),z7n=()=>{};function ezn(e){return e[Kht]??e[cw]?.defaultPipelining??1}var Pyr=class extends Hga{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:J,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,maxConcurrentStreams:k,allowH2:tt}={}){if(super(),C!==void 0)throw new aw("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new aw("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new aw("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new aw("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new aw("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new aw("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new aw("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new aw("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new aw("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new aw("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new aw("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new aw("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new aw("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new aw("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new aw("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new aw("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||$7n.isIP(de)===0))throw new aw("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new aw("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new aw("autoSelectFamilyAttemptTimeout must be a positive number");if(tt!=null&&typeof tt!="boolean")throw new aw("allowH2 must be a valid boolean value");if(k!=null&&(typeof k!="number"||k<1))throw new aw("maxConcurrentStreams must be a positive integer, greater than 0");typeof fe!="function"&&(fe=Xga({...J,maxCachedSessions:ne,allowH2:tt,socketPath:F,timeout:A,...Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),r?.Client&&Array.isArray(r.Client)?(this[K7n]=r.Client,j7n||(j7n=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[K7n]=[fAa({maxRedirections:ce})],this[U8]=She.parseOrigin(t),this[PYe]=fe,this[Kht]=Q??1,this[$ga]=n||Pga.maxHeaderSize,this[U7n]=b??4e3,this[eAa]=N??6e5,this[tAa]=B??2e3,this[qga]=this[U7n],this[bae]=null,this[MYe]=de??null,this[vhe]=0,this[Sae]=0,this[jga]=`host: ${this[U8].hostname}${this[U8].port?`:${this[U8].port}`:""}\r +`,this[nAa]=f??3e5,this[rAa]=a??3e5,this[iAa]=ae??!0,this[sAa]=ce,this[Oyr]=ue,this[Eae]=null,this[uAa]=be>-1?be:-1,this[AAa]=k??100,this[cw]=null,this[JX]=[],this[see]=0,this[UX]=0,this[HYe]=ze=>Myr(this,ze),this[gAa]=ze=>tzn(this,ze)}get pipelining(){return this[Kht]}set pipelining(t){this[Kht]=t,this[HYe](!0)}get[XYe](){return this[JX].length-this[UX]}get[QYe](){return this[UX]-this[see]}get[YYe](){return this[JX].length-this[see]}get[Kga](){return!!this[cw]&&!this[qwe]&&!this[cw].destroyed}get[Wyr](){return!!(this[cw]?.busy(null)||this[YYe]>=(ezn(this)||1)||this[XYe]>0)}[Uga](t){rzn(this),this.once("connect",t)}[lAa](t,r){let n=t.origin||this[U8].origin,a=new Mga(n,t,r);return this[JX].push(a),this[vhe]||(She.bodyLength(a.body)==null&&She.isIterable(a.body)?(this[vhe]=1,queueMicrotask(()=>Myr(this))):this[HYe](!0)),this[vhe]&&this[Sae]!==2&&this[Wyr]&&(this[Sae]=2),this[Sae]<2}async[aAa](){return new Promise(t=>{this[YYe]?this[Eae]=t:t(null)})}async[cAa](t){return new Promise(r=>{let n=this[JX].splice(this[UX]);for(let o=0;o{this[Eae]&&(this[Eae](),this[Eae]=null),r(null)};this[cw]?(this[cw].destroy(t,a),this[cw]=null):queueMicrotask(a),this[HYe]()})}},fAa=Uht();function tzn(e,t){if(e[QYe]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){iee(e[UX]===e[see]);let r=e[JX].splice(e[see]);for(let n=0;n{e[PYe]({host:t,hostname:r,protocol:n,port:a,servername:e[bae],localAddress:e[MYe]},(f,I)=>{f?A(f):l(I)})});if(e.destroyed){She.destroy(o.on("error",z7n),new Qga);return}iee(o);try{e[cw]=o.alpnProtocol==="h2"?await pAa(e,o):await dAa(e,o)}catch(l){throw o.destroy().on("error",z7n),l}e[qwe]=!1,o[oAa]=0,o[Oyr]=e[Oyr],o[Jga]=e,o[zga]=null,zwe.connected.hasSubscribers&&zwe.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[cw]?.version,servername:e[bae],localAddress:e[MYe]},connector:e[PYe],socket:o}),e.emit("connect",e[U8],[e])}catch(o){if(e.destroyed)return;if(e[qwe]=!1,zwe.connectError.hasSubscribers&&zwe.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[cw]?.version,servername:e[bae],localAddress:e[MYe]},connector:e[PYe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(iee(e[QYe]===0);e[XYe]>0&&e[JX][e[UX]].servername===e[bae];){let l=e[JX][e[UX]++];She.errorRequest(e,l,o)}else tzn(e,o);e.emit("connectionError",e[U8],[e],o)}e[HYe]()}function q7n(e){e[Sae]=0,e.emit("drain",e[U8],[e])}function Myr(e,t){e[vhe]!==2&&(e[vhe]=2,IAa(e,t),e[vhe]=0,e[see]>256&&(e[JX].splice(0,e[see]),e[UX]-=e[see],e[see]=0))}function IAa(e,t){for(;;){if(e.destroyed){iee(e[XYe]===0);return}if(e[Eae]&&!e[YYe]){e[Eae](),e[Eae]=null;return}if(e[cw]&&e[cw].resume(),e[Wyr])e[Sae]=2;else if(e[Sae]===2){t?(e[Sae]=1,queueMicrotask(()=>q7n(e))):q7n(e);continue}if(e[XYe]===0||e[QYe]>=(ezn(e)||1))return;let r=e[JX][e[UX]];if(e[U8].protocol==="https:"&&e[bae]!==r.servername){if(e[QYe]>0)return;e[bae]=r.servername,e[cw]?.destroy(new Yga("servername changed"),()=>{e[cw]=null,Myr(e)})}if(e[qwe])return;if(!e[cw]){rzn(e);return}if(e[cw].destroyed||e[cw].busy(r))return;!r.aborted&&e[cw].write(r)?e[UX]++:e[JX].splice(e[UX],1)}}nzn.exports=Pyr});var Hyr=H((Psu,izn)=>{"use strict";var jht=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};izn.exports=class{constructor(){this.head=this.tail=new jht}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new jht),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var ozn=H((Msu,szn)=>{var{kFree:hAa,kConnected:mAa,kPending:CAa,kQueued:_Aa,kRunning:yAa,kSize:bAa}=N2(),Bhe=Symbol("pool"),Yyr=class{constructor(t){this[Bhe]=t}get connected(){return this[Bhe][mAa]}get free(){return this[Bhe][hAa]}get pending(){return this[Bhe][CAa]}get queued(){return this[Bhe][_Aa]}get running(){return this[Bhe][yAa]}get size(){return this[Bhe][bAa]}};szn.exports=Yyr});var jyr=H((Hsu,Izn)=>{"use strict";var EAa=Vwe(),SAa=Hyr(),{kConnected:Qyr,kSize:azn,kRunning:czn,kPending:lzn,kQueued:UYe,kBusy:vAa,kFree:BAa,kUrl:wAa,kClose:TAa,kDestroy:RAa,kDispatch:NAa}=N2(),DAa=ozn(),lV=Symbol("clients"),UZ=Symbol("needDrain"),KYe=Symbol("queue"),Xyr=Symbol("closed resolve"),Jyr=Symbol("onDrain"),uzn=Symbol("onConnect"),gzn=Symbol("onDisconnect"),Azn=Symbol("onConnectionError"),Uyr=Symbol("get dispatcher"),pzn=Symbol("add client"),fzn=Symbol("remove client"),dzn=Symbol("stats"),Kyr=class extends EAa{constructor(){super(),this[KYe]=new SAa,this[lV]=[],this[UYe]=0;let t=this;this[Jyr]=function(n,a){let o=t[KYe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[UYe]--,l=!this.dispatch(A.opts,A.handler)}this[UZ]=l,!this[UZ]&&t[UZ]&&(t[UZ]=!1,t.emit("drain",n,[t,...a])),t[Xyr]&&o.isEmpty()&&Promise.all(t[lV].map(A=>A.close())).then(t[Xyr])},this[uzn]=(r,n)=>{t.emit("connect",r,[t,...n])},this[gzn]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[Azn]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[dzn]=new DAa(this)}get[vAa](){return this[UZ]}get[Qyr](){return this[lV].filter(t=>t[Qyr]).length}get[BAa](){return this[lV].filter(t=>t[Qyr]&&!t[UZ]).length}get[lzn](){let t=this[UYe];for(let{[lzn]:r}of this[lV])t+=r;return t}get[czn](){let t=0;for(let{[czn]:r}of this[lV])t+=r;return t}get[azn](){let t=this[UYe];for(let{[azn]:r}of this[lV])t+=r;return t}get stats(){return this[dzn]}async[TAa](){this[KYe].isEmpty()?await Promise.all(this[lV].map(t=>t.close())):await new Promise(t=>{this[Xyr]=t})}async[RAa](t){for(;;){let r=this[KYe].shift();if(!r)break;r.handler.onError(t)}await Promise.all(this[lV].map(r=>r.destroy(t)))}[NAa](t,r){let n=this[Uyr]();return n?n.dispatch(t,r)||(n[UZ]=!0,this[UZ]=!this[Uyr]()):(this[UZ]=!0,this[KYe].push({opts:t,handler:r}),this[UYe]++),!this[UZ]}[pzn](t){return t.on("drain",this[Jyr]).on("connect",this[uzn]).on("disconnect",this[gzn]).on("connectionError",this[Azn]),this[lV].push(t),this[UZ]&&queueMicrotask(()=>{this[UZ]&&this[Jyr](t[wAa],[this,t])}),this}[fzn](t){t.close(()=>{let r=this[lV].indexOf(t);r!==-1&&this[lV].splice(r,1)}),this[UZ]=this[lV].some(r=>!r[UZ]&&r.closed!==!0&&r.destroyed!==!0)}};Izn.exports={PoolBase:Kyr,kClients:lV,kNeedDrain:UZ,kAddClient:pzn,kRemoveClient:fzn,kGetDispatcher:Uyr}});var $we=H((Ysu,yzn)=>{"use strict";var{PoolBase:kAa,kClients:hzn,kNeedDrain:xAa,kAddClient:GAa,kGetDispatcher:FAa}=jyr(),ZAa=JYe(),{InvalidArgumentError:zyr}=J0(),mzn=wm(),{kUrl:Czn,kInterceptors:LAa}=N2(),VAa=BYe(),qyr=Symbol("options"),$yr=Symbol("connections"),_zn=Symbol("factory");function WAa(e,t){return new ZAa(e,t)}var ebr=class extends kAa{constructor(t,{connections:r,factory:n=WAa,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new zyr("invalid connections");if(typeof n!="function")throw new zyr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new zyr("connect must be a function or an object");typeof a!="function"&&(a=VAa({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[LAa]=E.interceptors?.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[$yr]=r||null,this[Czn]=mzn.parseOrigin(t),this[qyr]={...mzn.deepClone(E),connect:a,allowH2:b},this[qyr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[_zn]=n}[FAa](){for(let t of this[hzn])if(!t[xAa])return t;if(!this[$yr]||this[hzn].length{"use strict";var{BalancedPoolMissingUpstreamError:OAa,InvalidArgumentError:PAa}=J0(),{PoolBase:MAa,kClients:NG,kNeedDrain:jYe,kAddClient:HAa,kRemoveClient:YAa,kGetDispatcher:QAa}=jyr(),XAa=$we(),{kUrl:tbr,kInterceptors:JAa}=N2(),{parseOrigin:bzn}=wm(),Ezn=Symbol("factory"),zht=Symbol("options"),Szn=Symbol("kGreatestCommonDivisor"),whe=Symbol("kCurrentWeight"),The=Symbol("kIndex"),HM=Symbol("kWeight"),qht=Symbol("kMaxWeightPerServer"),$ht=Symbol("kErrorPenalty");function UAa(e,t){if(e===0)return t;for(;t!==0;){let r=t;t=e%t,e=r}return e}function KAa(e,t){return new XAa(e,t)}var rbr=class extends MAa{constructor(t=[],{factory:r=KAa,...n}={}){if(super(),this[zht]=n,this[The]=-1,this[whe]=0,this[qht]=this[zht].maxWeightPerServer||100,this[$ht]=this[zht].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new PAa("factory must be a function.");this[JAa]=n.interceptors?.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[Ezn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=bzn(t).origin;if(this[NG].find(a=>a[tbr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[Ezn](r,Object.assign({},this[zht]));this[HAa](n),n.on("connect",()=>{n[HM]=Math.min(this[qht],n[HM]+this[$ht])}),n.on("connectionError",()=>{n[HM]=Math.max(1,n[HM]-this[$ht]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[HM]=Math.max(1,n[HM]-this[$ht]),this._updateBalancedPoolStats())});for(let a of this[NG])a[HM]=this[qht];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let t=0;for(let r=0;ra[tbr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[YAa](n),this}get upstreams(){return this[NG].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[tbr].origin)}[QAa](){if(this[NG].length===0)throw new OAa;if(!this[NG].find(o=>!o[jYe]&&o.closed!==!0&&o.destroyed!==!0)||this[NG].map(o=>o[jYe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[NG].findIndex(o=>!o[jYe]);for(;n++this[NG][a][HM]&&!o[jYe]&&(a=this[The]),this[The]===0&&(this[whe]=this[whe]-this[Szn],this[whe]<=0&&(this[whe]=this[qht])),o[HM]>=this[whe]&&!o[jYe])return o}return this[whe]=this[NG][a][HM],this[The]=a,this[NG][a]}};vzn.exports=rbr});var eTe=H((Xsu,xzn)=>{"use strict";var{InvalidArgumentError:emt}=J0(),{kClients:vae,kRunning:wzn,kClose:jAa,kDestroy:zAa,kDispatch:qAa,kInterceptors:$Aa}=N2(),eda=Vwe(),tda=$we(),rda=JYe(),nda=wm(),ida=Uht(),Tzn=Symbol("onConnect"),Rzn=Symbol("onDisconnect"),Nzn=Symbol("onConnectionError"),sda=Symbol("maxRedirections"),Dzn=Symbol("onDrain"),kzn=Symbol("factory"),nbr=Symbol("options");function oda(e,t){return t&&t.connections===1?new rda(e,t):new tda(e,t)}var ibr=class extends eda{constructor({factory:t=oda,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new emt("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new emt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new emt("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[$Aa]=a.interceptors?.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[ida({maxRedirections:r})],this[nbr]={...nda.deepClone(a),connect:n},this[nbr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[sda]=r,this[kzn]=t,this[vae]=new Map,this[Dzn]=(o,l)=>{this.emit("drain",o,[this,...l])},this[Tzn]=(o,l)=>{this.emit("connect",o,[this,...l])},this[Rzn]=(o,l,A)=>{this.emit("disconnect",o,[this,...l],A)},this[Nzn]=(o,l,A)=>{this.emit("connectionError",o,[this,...l],A)}}get[wzn](){let t=0;for(let r of this[vae].values())t+=r[wzn];return t}[qAa](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new emt("opts.origin must be a non-empty string or URL.");let a=this[vae].get(n);return a||(a=this[kzn](t.origin,this[nbr]).on("drain",this[Dzn]).on("connect",this[Tzn]).on("disconnect",this[Rzn]).on("connectionError",this[Nzn]),this[vae].set(n,a)),a.dispatch(t,r)}async[jAa](){let t=[];for(let r of this[vae].values())t.push(r.close());this[vae].clear(),await Promise.all(t)}async[zAa](t){let r=[];for(let n of this[vae].values())r.push(n.destroy(t));this[vae].clear(),await Promise.all(r)}};xzn.exports=ibr});var abr=H((Jsu,Lzn)=>{"use strict";var{kProxy:ada,kClose:cda,kDestroy:lda,kInterceptors:uda}=N2(),{URL:zYe}=Et("node:url"),gda=eTe(),Ada=$we(),dda=Vwe(),{InvalidArgumentError:nmt,RequestAbortedError:pda,SecureProxyConnectionError:fda}=J0(),Gzn=BYe(),tmt=Symbol("proxy agent"),rmt=Symbol("proxy client"),qYe=Symbol("proxy headers"),sbr=Symbol("request tls settings"),Fzn=Symbol("proxy tls settings"),Zzn=Symbol("connect endpoint function");function Ida(e){return e==="https:"?443:80}function hda(e,t){return new Ada(e,t)}var mda=()=>{},obr=class extends dda{constructor(t){if(super(),!t||typeof t=="object"&&!(t instanceof zYe)&&!t.uri)throw new nmt("Proxy uri is mandatory");let{clientFactory:r=hda}=t;if(typeof r!="function")throw new nmt("Proxy opts.clientFactory must be a function.");let n=this.#e(t),{href:a,origin:o,port:l,protocol:A,username:f,password:I,hostname:C}=n;if(this[ada]={uri:a,protocol:A},this[uda]=t.interceptors?.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],this[sbr]=t.requestTls,this[Fzn]=t.proxyTls,this[qYe]=t.headers||{},t.auth&&t.token)throw new nmt("opts.auth cannot be used in combination with opts.token");t.auth?this[qYe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[qYe]["proxy-authorization"]=t.token:f&&I&&(this[qYe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(f)}:${decodeURIComponent(I)}`).toString("base64")}`);let b=Gzn({...t.proxyTls});this[Zzn]=Gzn({...t.requestTls}),this[rmt]=r(n,{connect:b}),this[tmt]=new gda({...t,connect:async(E,N)=>{let B=E.host;E.port||(B+=`:${Ida(E.protocol)}`);try{let{socket:F,statusCode:Q}=await this[rmt].connect({origin:o,port:l,path:B,signal:E.signal,headers:{...this[qYe],host:E.host},servername:this[Fzn]?.servername||C});if(Q!==200&&(F.on("error",mda).destroy(),N(new pda(`Proxy response (${Q}) !== 200 when HTTP Tunneling`))),E.protocol!=="https:"){N(null,F);return}let J;this[sbr]?J=this[sbr].servername:J=E.servername,this[Zzn]({...E,servername:J,httpSocket:F},N)}catch(F){F.code==="ERR_TLS_CERT_ALTNAME_INVALID"?N(new fda(F)):N(F)}}})}dispatch(t,r){let n=Cda(t.headers);if(_da(n),n&&!("host"in n)&&!("Host"in n)){let{host:a}=new zYe(t.origin);n.host=a}return this[tmt].dispatch({...t,headers:n},r)}#e(t){return typeof t=="string"?new zYe(t):t instanceof zYe?t:new zYe(t.uri)}async[cda](){await this[tmt].close(),await this[rmt].close()}async[lda](){await this[tmt].destroy(),await this[rmt].destroy()}};function Cda(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new nmt("Proxy-Authorization should be sent in ProxyAgent constructor")}Lzn.exports=obr});var Hzn=H((Usu,Mzn)=>{"use strict";var yda=Vwe(),{kClose:bda,kDestroy:Eda,kClosed:Vzn,kDestroyed:Wzn,kDispatch:Sda,kNoProxyAgent:$Ye,kHttpProxyAgent:Bae,kHttpsProxyAgent:Rhe}=N2(),Ozn=abr(),vda=eTe(),Bda={"http:":80,"https:":443},Pzn=!1,cbr=class extends yda{#e=null;#t=null;#n=null;constructor(t={}){super(),this.#n=t,Pzn||(Pzn=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:n,noProxy:a,...o}=t;this[$Ye]=new vda(o);let l=r??process.env.http_proxy??process.env.HTTP_PROXY;l?this[Bae]=new Ozn({...o,uri:l}):this[Bae]=this[$Ye];let A=n??process.env.https_proxy??process.env.HTTPS_PROXY;A?this[Rhe]=new Ozn({...o,uri:A}):this[Rhe]=this[Bae],this.#s()}[Sda](t,r){let n=new URL(t.origin);return this.#r(n).dispatch(t,r)}async[bda](){await this[$Ye].close(),this[Bae][Vzn]||await this[Bae].close(),this[Rhe][Vzn]||await this[Rhe].close()}async[Eda](t){await this[$Ye].destroy(t),this[Bae][Wzn]||await this[Bae].destroy(t),this[Rhe][Wzn]||await this[Rhe].destroy(t)}#r(t){let{protocol:r,host:n,port:a}=t;return n=n.replace(/:\d*$/,"").toLowerCase(),a=Number.parseInt(a,10)||Bda[r]||0,this.#i(n,a)?r==="https:"?this[Rhe]:this[Bae]:this[$Ye]}#i(t,r){if(this.#o&&this.#s(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let n=0;n{"use strict";var tTe=Et("node:assert"),{kRetryHandlerDefaultRetry:Yzn}=N2(),{RequestRetryError:eQe}=J0(),{isDisturbed:Qzn,parseHeaders:wda,parseRangeHeader:Xzn,wrapRequestBody:Tda}=wm();function Rda(e){let t=Date.now();return new Date(e).getTime()-t}var lbr=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...a,body:Tda(t.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[Yzn],retryAfter:E??!0,maxTimeout:A??30*1e3,minTimeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[Yzn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,minTimeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:J}=r;if(l&&l!=="UND_ERR_REQ_RETRY"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(J>C){a(t);return}let ae=A?.["retry-after"];ae&&(ae=Number(ae),ae=Number.isNaN(ae)?Rda(ae):ae*1e3);let ne=ae>0?Math.min(ae,E):Math.min(b*N**(J-1),E);setTimeout(()=>a(null),ne)}onHeaders(t,r,n,a){let o=wda(r);if(this.retryCount+=1,t>=300)return this.retryOpts.statusCodes.includes(t)===!1?this.handler.onHeaders(t,r,n,a):(this.abort(new eQe("Request failed",t,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,t!==206&&(this.start>0||t!==200))return this.abort(new eQe("server does not support the range header and the payload was partially consumed",t,{headers:o,data:{count:this.retryCount}})),!1;let A=Xzn(o["content-range"]);if(!A)return this.abort(new eQe("Content-Range mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new eQe("ETag mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;let{start:f,size:I,end:C=I}=A;return tTe(this.start===f,"content-range mismatch"),tTe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=Xzn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;tTe(f!=null&&Number.isFinite(f),"content-range mismatch"),tTe(C!=null&&Number.isFinite(C),"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return tTe(Number.isFinite(this.start)),tTe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(t,r,n,a)}let l=new eQe("Request failed",t,{headers:o,data:{count:this.retryCount}});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||Qzn(this.opts.body))return this.handler.onError(t);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||Qzn(this.opts.body))return this.handler.onError(n);if(this.start!==0){let a={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};Jzn.exports=lbr});var Kzn=H((jsu,Uzn)=>{"use strict";var Nda=SYe(),Dda=imt(),ubr=class extends Nda{#e=null;#t=null;constructor(t,r={}){super(r),this.#e=t,this.#t=r}dispatch(t,r){let n=new Dda({...t,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(t,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};Uzn.exports=ubr});var Ibr=H((zsu,iqn)=>{"use strict";var eqn=Et("node:assert"),{Readable:kda}=Et("node:stream"),{RequestAbortedError:tqn,NotSupportedError:xda,InvalidArgumentError:Gda,AbortError:gbr}=J0(),rqn=wm(),{ReadableStreamFrom:Fda}=wm(),cP=Symbol("kConsume"),tQe=Symbol("kReading"),wae=Symbol("kBody"),jzn=Symbol("kAbort"),nqn=Symbol("kContentType"),zzn=Symbol("kContentLength"),Zda=()=>{},Abr=class extends kda{constructor({resume:t,abort:r,contentType:n="",contentLength:a,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:o}),this._readableState.dataEmitted=!1,this[jzn]=r,this[cP]=null,this[wae]=null,this[nqn]=n,this[zzn]=a,this[tQe]=!1}destroy(t){return!t&&!this._readableState.endEmitted&&(t=new tqn),t&&this[jzn](),super.destroy(t)}_destroy(t,r){this[tQe]?r(t):setImmediate(()=>{r(t)})}on(t,...r){return(t==="data"||t==="readable")&&(this[tQe]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[tQe]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[cP]&&t!==null?(pbr(this[cP],t),this[tQe]?super.push(t):!0):super.push(t)}async text(){return rQe(this,"text")}async json(){return rQe(this,"json")}async blob(){return rQe(this,"blob")}async bytes(){return rQe(this,"bytes")}async arrayBuffer(){return rQe(this,"arrayBuffer")}async formData(){throw new xda}get bodyUsed(){return rqn.isDisturbed(this)}get body(){return this[wae]||(this[wae]=Fda(this),this[cP]&&(this[wae].getReader(),eqn(this[wae].locked))),this[wae]}async dump(t){let r=Number.isFinite(t?.limit)?t.limit:131072,n=t?.signal;if(n!=null&&(typeof n!="object"||!("aborted"in n)))throw new Gda("signal must be an AbortSignal");return n?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((a,o)=>{this[zzn]>r&&this.destroy(new gbr);let l=()=>{this.destroy(n.reason??new gbr)};n?.addEventListener("abort",l),this.on("close",function(){n?.removeEventListener("abort",l),n?.aborted?o(n.reason??new gbr):a(null)}).on("error",Zda).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Lda(e){return e[wae]&&e[wae].locked===!0||e[cP]}function Vda(e){return rqn.isDisturbed(e)||Lda(e)}async function rQe(e,t){return eqn(!e[cP]),new Promise((r,n)=>{if(Vda(e)){let a=e._readableState;a.destroyed&&a.closeEmitted===!1?e.on("error",o=>{n(o)}).on("close",()=>{n(new TypeError("unusable"))}):n(a.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[cP]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){fbr(this[cP],a)}).on("close",function(){this[cP].body!==null&&fbr(this[cP],new tqn)}),Wda(e[cP])})})}function Wda(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let r=t.bufferIndex,n=t.buffer.length;for(let a=r;a2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(a,n)}function qzn(e,t){if(e.length===0||t===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),n=0;for(let a=0;a{var Oda=Et("node:assert"),{ResponseStatusCodeError:sqn}=J0(),{chunksDecode:oqn}=Ibr(),Pda=128*1024;async function Mda({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){Oda(t);let l=[],A=0;try{for await(let b of t)if(l.push(b),A+=b.length,A>Pda){l=[],A=0;break}}catch{l=[],A=0}let f=`Response status code ${n}${a?`: ${a}`:""}`;if(n===204||!r||!A){queueMicrotask(()=>e(new sqn(f,n,o)));return}let I=Error.stackTraceLimit;Error.stackTraceLimit=0;let C;try{aqn(r)?C=JSON.parse(oqn(l,A)):cqn(r)&&(C=oqn(l,A))}catch{}finally{Error.stackTraceLimit=I}queueMicrotask(()=>e(new sqn(f,n,o,C)))}var aqn=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",cqn=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";lqn.exports={getResolveErrorBodyCallback:Mda,isContentTypeApplicationJson:aqn,isContentTypeText:cqn}});var Aqn=H(($su,mbr)=>{"use strict";var Hda=Et("node:assert"),{Readable:Yda}=Ibr(),{InvalidArgumentError:rTe,RequestAbortedError:uqn}=J0(),YM=wm(),{getResolveErrorBodyCallback:Qda}=hbr(),{AsyncResource:Xda}=Et("node:async_hooks"),smt=class extends Xda{constructor(t,r){if(!t||typeof t!="object")throw new rTe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new rTe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new rTe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new rTe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new rTe("invalid method");if(A&&typeof A!="function")throw new rTe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw YM.isStream(l)&&YM.destroy(l.on("error",YM.nop),b),b}this.method=a,this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,this.signal=n,this.reason=null,this.removeAbortListener=null,YM.isStream(l)&&l.on("error",b=>{this.onError(b)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new uqn:this.removeAbortListener=YM.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new uqn,this.res?YM.destroy(this.res,this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(t,r){if(this.reason){t(this.reason);return}Hda(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?YM.parseRawHeaders(r):YM.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let E=I==="raw"?YM.parseHeaders(r):b,N=E["content-type"],B=E["content-length"],F=new Yda({resume:n,abort:A,contentType:N,contentLength:this.method!=="HEAD"&&B?Number(B):null,highWaterMark:C});this.removeAbortListener&&F.on("close",this.removeAbortListener),this.callback=null,this.res=F,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(Qda,null,{callback:o,body:F,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:F,context:f}))}onData(t){return this.res.push(t)}onComplete(t){YM.parseHeaders(t,this.trailers),this.res.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{YM.destroy(r,t)})),a&&(this.body=null,YM.destroy(a,t)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function gqn(e,t){if(t===void 0)return new Promise((r,n)=>{gqn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new smt(e,t))}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}mbr.exports=gqn;mbr.exports.RequestHandler=smt});var nQe=H((eou,fqn)=>{var{addAbortListener:Jda}=wm(),{RequestAbortedError:Uda}=J0(),nTe=Symbol("kListener"),K8=Symbol("kSignal");function dqn(e){e.abort?e.abort(e[K8]?.reason):e.reason=e[K8]?.reason??new Uda,pqn(e)}function Kda(e,t){if(e.reason=null,e[K8]=null,e[nTe]=null,!!t){if(t.aborted){dqn(e);return}e[K8]=t,e[nTe]=()=>{dqn(e)},Jda(e[K8],e[nTe])}}function pqn(e){e[K8]&&("removeEventListener"in e[K8]?e[K8].removeEventListener("abort",e[nTe]):e[K8].removeListener("abort",e[nTe]),e[K8]=null,e[nTe]=null)}fqn.exports={addSignal:Kda,removeSignal:pqn}});var Cqn=H((tou,mqn)=>{"use strict";var jda=Et("node:assert"),{finished:zda,PassThrough:qda}=Et("node:stream"),{InvalidArgumentError:iTe,InvalidReturnValueError:$da}=J0(),KX=wm(),{getResolveErrorBodyCallback:epa}=hbr(),{AsyncResource:tpa}=Et("node:async_hooks"),{addSignal:rpa,removeSignal:Iqn}=nQe(),Cbr=class extends tpa{constructor(t,r,n){if(!t||typeof t!="object")throw new iTe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new iTe("invalid callback");if(typeof r!="function")throw new iTe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new iTe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new iTe("invalid method");if(f&&typeof f!="function")throw new iTe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw KX.isStream(A)&&KX.destroy(A.on("error",KX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,KX.isStream(A)&&A.on("error",b=>{this.onError(b)}),rpa(this,a)}onConnect(t,r){if(this.reason){t(this.reason);return}jda(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?KX.parseRawHeaders(r):KX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?KX.parseHeaders(r):C)["content-type"];b=new qda,this.callback=null,this.runInAsyncScope(epa,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new $da("expected Writable");zda(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:J,abort:ae}=this;this.res=null,(N||!F.readable)&&KX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:J}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState?.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;Iqn(this),r&&(this.trailers=KX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;Iqn(this),this.factory=null,r?(this.res=null,KX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,KX.destroy(o,t))}};function hqn(e,t,r){if(r===void 0)return new Promise((n,a)=>{hqn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new Cbr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e?.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}mqn.exports=hqn});var Eqn=H((rou,bqn)=>{"use strict";var{Readable:yqn,Duplex:npa,PassThrough:ipa}=Et("node:stream"),{InvalidArgumentError:iQe,InvalidReturnValueError:spa,RequestAbortedError:_br}=J0(),QM=wm(),{AsyncResource:opa}=Et("node:async_hooks"),{addSignal:apa,removeSignal:cpa}=nQe(),_qn=Et("node:assert"),sTe=Symbol("resume"),ybr=class extends yqn{constructor(){super({autoDestroy:!0}),this[sTe]=null}_read(){let{[sTe]:t}=this;t&&(this[sTe]=null,t())}_destroy(t,r){this._read(),r(t)}},bbr=class extends yqn{constructor(t){super({autoDestroy:!0}),this[sTe]=t}_read(){this[sTe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new _br),r(t)}},Ebr=class extends opa{constructor(t,r){if(!t||typeof t!="object")throw new iQe("invalid opts");if(typeof r!="function")throw new iQe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new iQe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new iQe("invalid method");if(l&&typeof l!="function")throw new iQe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new ybr().on("error",QM.nop),this.ret=new npa({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f?.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[sTe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new _br),B&&f&&B(),QM.destroy(C,f),QM.destroy(b,f),QM.destroy(E,f),cpa(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,apa(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(this.reason){t(this.reason);return}_qn(!a,"pipeline cannot be retried"),_qn(!n.destroyed),this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?QM.parseRawHeaders(r):QM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new bbr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?QM.parseRawHeaders(r):QM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",QM.nop),f}if(!A||typeof A.on!="function")throw new spa("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;QM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||QM.destroy(f,new _br)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,QM.destroy(r,t)}};function lpa(e,t){try{let r=new Ebr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new ipa().destroy(r)}}bqn.exports=lpa});var Rqn=H((nou,Tqn)=>{"use strict";var{InvalidArgumentError:Sbr,SocketError:upa}=J0(),{AsyncResource:gpa}=Et("node:async_hooks"),Sqn=wm(),{addSignal:Apa,removeSignal:vqn}=nQe(),Bqn=Et("node:assert"),vbr=class extends gpa{constructor(t,r){if(!t||typeof t!="object")throw new Sbr("invalid opts");if(typeof r!="function")throw new Sbr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new Sbr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,Apa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}Bqn(this.callback),this.abort=t,this.context=null}onHeaders(){throw new upa("bad upgrade",null)}onUpgrade(t,r,n){Bqn(t===101);let{callback:a,opaque:o,context:l}=this;vqn(this),this.callback=null;let A=this.responseHeaders==="raw"?Sqn.parseRawHeaders(r):Sqn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;vqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function wqn(e,t){if(t===void 0)return new Promise((r,n)=>{wqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new vbr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}Tqn.exports=wqn});var Gqn=H((iou,xqn)=>{"use strict";var dpa=Et("node:assert"),{AsyncResource:ppa}=Et("node:async_hooks"),{InvalidArgumentError:Bbr,SocketError:fpa}=J0(),Nqn=wm(),{addSignal:Ipa,removeSignal:Dqn}=nQe(),wbr=class extends ppa{constructor(t,r){if(!t||typeof t!="object")throw new Bbr("invalid opts");if(typeof r!="function")throw new Bbr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new Bbr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,Ipa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}dpa(this.callback),this.abort=t,this.context=r}onHeaders(){throw new fpa("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;Dqn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?Nqn.parseRawHeaders(r):Nqn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;Dqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function kqn(e,t){if(t===void 0)return new Promise((r,n)=>{kqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new wbr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}xqn.exports=kqn});var Fqn=H((sou,oTe)=>{"use strict";oTe.exports.request=Aqn();oTe.exports.stream=Cqn();oTe.exports.pipeline=Eqn();oTe.exports.upgrade=Rqn();oTe.exports.connect=Gqn()});var Rbr=H((oou,Zqn)=>{"use strict";var{UndiciError:hpa}=J0(),Tbr=class e extends hpa{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};Zqn.exports={MockNotMatchedError:Tbr}});var aTe=H((aou,Lqn)=>{"use strict";Lqn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var sQe=H((cou,Uqn)=>{"use strict";var{MockNotMatchedError:Nhe}=Rbr(),{kDispatches:omt,kMockAgent:mpa,kOriginalDispatch:Cpa,kOrigin:_pa,kGetNetConnect:ypa}=aTe(),{buildURL:bpa}=wm(),{STATUS_CODES:Epa}=Et("node:http"),{types:{isPromise:Spa}}=Et("node:util");function oee(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function Wqn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function Oqn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=Oqn(t,r);if(!oee(n,a))return!1}return!0}function Vqn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function vpa(e,{path:t,method:r,body:n,headers:a}){let o=oee(e.path,t),l=oee(e.method,r),A=typeof e.body<"u"?oee(e.body,n):!0,f=Pqn(e,a);return o&&l&&A&&f}function Mqn(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function Hqn(e,t){let r=t.query?bpa(t.path,t.query):t.path,n=typeof r=="string"?Vqn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>oee(Vqn(o),n));if(a.length===0)throw new Nhe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>oee(o,t.method)),a.length===0)throw new Nhe(`Mock dispatch not matched for method '${t.method}' on path '${n}'`);if(a=a.filter(({body:o})=>typeof o<"u"?oee(o,t.body):!0),a.length===0)throw new Nhe(`Mock dispatch not matched for body '${t.body}' on path '${n}'`);if(a=a.filter(o=>Pqn(o,t.headers)),a.length===0){let o=typeof t.headers=="object"?JSON.stringify(t.headers):t.headers;throw new Nhe(`Mock dispatch not matched for headers '${o}' on path '${n}'`)}return a[0]}function Bpa(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function Nbr(e,t){let r=e.findIndex(n=>n.consumed?vpa(n,t):!1);r!==-1&&e.splice(r,1)}function Yqn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function Dbr(e){let t=Object.keys(e),r=[];for(let n=0;n=E,n.pending=b0?setTimeout(()=>{N(this[omt])},I):N(this[omt]);function N(F,Q=o){let J=Array.isArray(e.headers)?kbr(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:J}):Q;if(Spa(ae)){ae.then(ue=>N(F,ue));return}let ne=Mqn(ae),ce=Dbr(l),fe=Dbr(A);t.onConnect?.(ue=>t.onError(ue),null),t.onHeaders?.(a,ce,B,Qqn(a)),t.onData?.(Buffer.from(ne)),t.onComplete?.(fe),Nbr(F,r)}function B(){}return!0}function Tpa(){let e=this[mpa],t=this[_pa],r=this[Cpa];return function(a,o){if(e.isMockActive)try{Xqn.call(this,a,o)}catch(l){if(l instanceof Nhe){let A=e[ypa]();if(A===!1)throw new Nhe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(Jqn(A,t))r.call(this,a,o);else throw new Nhe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function Jqn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>oee(n,r.host)))}function Rpa(e){if(e){let{agent:t,...r}=e;return r}}Uqn.exports={getResponseData:Mqn,getMockDispatch:Hqn,addMockDispatch:Bpa,deleteMockDispatch:Nbr,buildKey:Yqn,generateKeyValues:Dbr,matchValue:oee,getResponse:wpa,getStatusText:Qqn,mockDispatch:Xqn,buildMockDispatch:Tpa,checkNetConnect:Jqn,buildMockOptions:Rpa,getHeaderByName:Oqn,buildHeadersFromArray:kbr}});var Wbr=H((lou,Vbr)=>{"use strict";var{getResponseData:Npa,buildKey:Dpa,addMockDispatch:xbr}=sQe(),{kDispatches:amt,kDispatchKey:cmt,kDefaultHeaders:Gbr,kDefaultTrailers:Fbr,kContentLength:Zbr,kMockDispatch:lmt}=aTe(),{InvalidArgumentError:j8}=J0(),{buildURL:kpa}=wm(),cTe=class{constructor(t){this[lmt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new j8("waitInMs must be a valid integer > 0");return this[lmt].delay=t,this}persist(){return this[lmt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new j8("repeatTimes must be a valid integer > 0");return this[lmt].times=t,this}},Lbr=class{constructor(t,r){if(typeof t!="object")throw new j8("opts must be an object");if(typeof t.path>"u")throw new j8("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=kpa(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[cmt]=Dpa(t),this[amt]=r,this[Gbr]={},this[Fbr]={},this[Zbr]=!1}createMockScopeDispatchData({statusCode:t,data:r,responseOptions:n}){let a=Npa(r),o=this[Zbr]?{"content-length":a.length}:{},l={...this[Gbr],...o,...n.headers},A={...this[Fbr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t){if(typeof t.statusCode>"u")throw new j8("statusCode must be defined");if(typeof t.responseOptions!="object"||t.responseOptions===null)throw new j8("responseOptions must be an object")}reply(t){if(typeof t=="function"){let o=A=>{let f=t(A);if(typeof f!="object"||f===null)throw new j8("reply options callback must return an object");let I={data:"",responseOptions:{},...f};return this.validateReplyParameters(I),{...this.createMockScopeDispatchData(I)}},l=xbr(this[amt],this[cmt],o);return new cTe(l)}let r={statusCode:t,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let n=this.createMockScopeDispatchData(r),a=xbr(this[amt],this[cmt],n);return new cTe(a)}replyWithError(t){if(typeof t>"u")throw new j8("error must be defined");let r=xbr(this[amt],this[cmt],{error:t});return new cTe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new j8("headers must be defined");return this[Gbr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new j8("trailers must be defined");return this[Fbr]=t,this}replyContentLength(){return this[Zbr]=!0,this}};Vbr.exports.MockInterceptor=Lbr;Vbr.exports.MockScope=cTe});var Mbr=H((uou,t$n)=>{"use strict";var{promisify:xpa}=Et("node:util"),Gpa=JYe(),{buildMockDispatch:Fpa}=sQe(),{kDispatches:Kqn,kMockAgent:jqn,kClose:zqn,kOriginalClose:qqn,kOrigin:$qn,kOriginalDispatch:Zpa,kConnected:Obr}=aTe(),{MockInterceptor:Lpa}=Wbr(),e$n=N2(),{InvalidArgumentError:Vpa}=J0(),Pbr=class extends Gpa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Vpa("Argument opts.agent must implement Agent");this[jqn]=r.agent,this[$qn]=t,this[Kqn]=[],this[Obr]=1,this[Zpa]=this.dispatch,this[qqn]=this.close.bind(this),this.dispatch=Fpa.call(this),this.close=this[zqn]}get[e$n.kConnected](){return this[Obr]}intercept(t){return new Lpa(t,this[Kqn])}async[zqn](){await xpa(this[qqn])(),this[Obr]=0,this[jqn][e$n.kClients].delete(this[$qn])}};t$n.exports=Pbr});var Qbr=H((gou,c$n)=>{"use strict";var{promisify:Wpa}=Et("node:util"),Opa=$we(),{buildMockDispatch:Ppa}=sQe(),{kDispatches:r$n,kMockAgent:n$n,kClose:i$n,kOriginalClose:s$n,kOrigin:o$n,kOriginalDispatch:Mpa,kConnected:Hbr}=aTe(),{MockInterceptor:Hpa}=Wbr(),a$n=N2(),{InvalidArgumentError:Ypa}=J0(),Ybr=class extends Opa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Ypa("Argument opts.agent must implement Agent");this[n$n]=r.agent,this[o$n]=t,this[r$n]=[],this[Hbr]=1,this[Mpa]=this.dispatch,this[s$n]=this.close.bind(this),this.dispatch=Ppa.call(this),this.close=this[i$n]}get[a$n.kConnected](){return this[Hbr]}intercept(t){return new Hpa(t,this[r$n])}async[i$n](){await Wpa(this[s$n])(),this[Hbr]=0,this[n$n][a$n.kClients].delete(this[o$n])}};c$n.exports=Ybr});var u$n=H((dou,l$n)=>{"use strict";var Qpa={pronoun:"it",is:"is",was:"was",this:"this"},Xpa={pronoun:"they",is:"are",was:"were",this:"these"};l$n.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?Qpa:Xpa,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var A$n=H((fou,g$n)=>{"use strict";var{Transform:Jpa}=Et("node:stream"),{Console:Upa}=Et("node:console"),Kpa=process.versions.icu?"\u2705":"Y ",jpa=process.versions.icu?"\u274C":"N ";g$n.exports=class{constructor({disableColors:t}={}){this.transform=new Jpa({transform(r,n,a){a(null,r)}}),this.logger=new Upa({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?Kpa:jpa,Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var I$n=H((Iou,f$n)=>{"use strict";var{kClients:Dhe}=N2(),zpa=eTe(),{kAgent:Xbr,kMockAgentSet:umt,kMockAgentGet:d$n,kDispatches:Jbr,kIsMockActive:gmt,kNetConnect:khe,kGetNetConnect:qpa,kOptions:Amt,kFactory:dmt}=aTe(),$pa=Mbr(),efa=Qbr(),{matchValue:tfa,buildMockOptions:rfa}=sQe(),{InvalidArgumentError:p$n,UndiciError:nfa}=J0(),ifa=SYe(),sfa=u$n(),ofa=A$n(),Ubr=class extends ifa{constructor(t){if(super(t),this[khe]=!0,this[gmt]=!0,t?.agent&&typeof t.agent.dispatch!="function")throw new p$n("Argument opts.agent must implement Agent");let r=t?.agent?t.agent:new zpa(t);this[Xbr]=r,this[Dhe]=r[Dhe],this[Amt]=rfa(t)}get(t){let r=this[d$n](t);return r||(r=this[dmt](t),this[umt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[Xbr].dispatch(t,r)}async close(){await this[Xbr].close(),this[Dhe].clear()}deactivate(){this[gmt]=!1}activate(){this[gmt]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[khe])?this[khe].push(t):this[khe]=[t];else if(typeof t>"u")this[khe]=!0;else throw new p$n("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[khe]=!1}get isMockActive(){return this[gmt]}[umt](t,r){this[Dhe].set(t,r)}[dmt](t){let r=Object.assign({agent:this},this[Amt]);return this[Amt]&&this[Amt].connections===1?new $pa(t,r):new efa(t,r)}[d$n](t){let r=this[Dhe].get(t);if(r)return r;if(typeof t!="string"){let n=this[dmt]("http://localhost:9999");return this[umt](t,n),n}for(let[n,a]of Array.from(this[Dhe]))if(a&&typeof n!="string"&&tfa(n,t)){let o=this[dmt](t);return this[umt](t,o),o[Jbr]=a[Jbr],o}}[qpa](){return this[khe]}pendingInterceptors(){let t=this[Dhe];return Array.from(t.entries()).flatMap(([r,n])=>n[Jbr].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new ofa}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new sfa("interceptor","interceptors").pluralize(r.length);throw new nfa(` ${n.count} ${n.noun} ${n.is} pending: ${t.format(r)} -`.trim())}};l$n.exports=Ubr});var Imt=H((Tsu,p$n)=>{"use strict";var g$n=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:afa}=X0(),cfa=eTe();d$n()===void 0&&A$n(new cfa);function A$n(e){if(!e||typeof e.dispatch!="function")throw new afa("Argument agent must implement Agent");Object.defineProperty(globalThis,g$n,{value:e,writable:!0,enumerable:!1,configurable:!1})}function d$n(){return globalThis[g$n]}p$n.exports={setGlobalDispatcher:A$n,getGlobalDispatcher:d$n}});var Kbr=H((Nsu,f$n)=>{"use strict";f$n.exports=class{#e;constructor(t){if(typeof t!="object"||t===null)throw new TypeError("handler must be an object");this.#e=t}onConnect(...t){return this.#e.onConnect?.(...t)}onError(...t){return this.#e.onError?.(...t)}onUpgrade(...t){return this.#e.onUpgrade?.(...t)}onResponseStarted(...t){return this.#e.onResponseStarted?.(...t)}onHeaders(...t){return this.#e.onHeaders?.(...t)}onData(...t){return this.#e.onData?.(...t)}onComplete(...t){return this.#e.onComplete?.(...t)}onBodySent(...t){return this.#e.onBodySent?.(...t)}}});var h$n=H((Dsu,I$n)=>{"use strict";var lfa=Kht();I$n.exports=e=>{let t=e?.maxRedirections;return r=>function(a,o){let{maxRedirections:l=t,...A}=a;if(!l)return r(a,o);let f=new lfa(r,l,a,o);return r(A,f)}}});var C$n=H((ksu,m$n)=>{"use strict";var ufa=omt();m$n.exports=e=>t=>function(n,a){return t(n,new ufa({...n,retryOptions:{...e,...n.retryOptions}},{handler:a,dispatch:t}))}});var y$n=H((xsu,_$n)=>{"use strict";var gfa=wm(),{InvalidArgumentError:Afa,RequestAbortedError:dfa}=X0(),pfa=Kbr(),jbr=class extends pfa{#e=1024*1024;#t=null;#n=!1;#r=!1;#i=0;#s=null;#o=null;constructor({maxSize:t},r){if(super(r),t!=null&&(!Number.isFinite(t)||t<1))throw new Afa("maxSize must be a number greater than 0");this.#e=t??this.#e,this.#o=r}onConnect(t){this.#t=t,this.#o.onConnect(this.#g.bind(this))}#g(t){this.#r=!0,this.#s=t}onHeaders(t,r,n,a){let l=gfa.parseHeaders(r)["content-length"];if(l!=null&&l>this.#e)throw new dfa(`Response size (${l}) larger than maxSize (${this.#e})`);return this.#r?!0:this.#o.onHeaders(t,r,n,a)}onError(t){this.#n||(t=this.#s??t,this.#o.onError(t))}onData(t){return this.#i=this.#i+t.length,this.#i>=this.#e&&(this.#n=!0,this.#r?this.#o.onError(this.#s):this.#o.onComplete([])),!0}onComplete(t){if(!this.#n){if(this.#r){this.#o.onError(this.reason);return}this.#o.onComplete(t)}}};function ffa({maxSize:e}={maxSize:1024*1024}){return t=>function(n,a){let{dumpMaxSize:o=e}=n,l=new jbr({maxSize:o},a);return t(n,l)}}_$n.exports=ffa});var khe=H((Gsu,T$n)=>{"use strict";var{kConstruct:Ifa}=R2(),{kEnumerableProperty:lTe}=wm(),{iteratorMixin:hfa,isValidHeaderName:aQe,isValidHeaderValue:E$n}=sP(),{webidl:b_}=Lk(),zbr=Et("node:assert"),hmt=Et("node:util"),AT=Symbol("headers map"),aP=Symbol("headers map sorted");function b$n(e){return e===10||e===13||e===9||e===32}function S$n(e){let t=0,r=e.length;for(;r>t&&b$n(e.charCodeAt(r-1));)--r;for(;r>t&&b$n(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function v$n(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function qbr(e,t,r){if(r=S$n(r),aQe(t)){if(!E$n(r))throw b_.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw b_.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(w$n(e)==="immutable")throw new TypeError("immutable");return $br(e).append(t,r,!1)}function B$n(e,t){return e[0]>1),r[I][0]<=C[0]?f=I+1:A=I;if(o!==I){for(l=o;l>f;)r[l]=r[--l];r[f]=C}}if(!n.next().done)throw new TypeError("Unreachable");return r}else{let n=0;for(let{0:a,1:{value:o}}of this[AT])r[n++]=[a,o],zbr(o!==null);return r.sort(B$n)}}},KX=class e{#e;#t;constructor(t=void 0){t!==Ifa&&(this.#t=new mmt,this.#e="none",t!==void 0&&(t=b_.converters.HeadersInit(t,"Headers contructor","init"),v$n(this,t)))}append(t,r){b_.brandCheck(this,e),b_.argumentLengthCheck(arguments,2,"Headers.append");let n="Headers.append";return t=b_.converters.ByteString(t,n,"name"),r=b_.converters.ByteString(r,n,"value"),qbr(this,t,r)}delete(t){if(b_.brandCheck(this,e),b_.argumentLengthCheck(arguments,1,"Headers.delete"),t=b_.converters.ByteString(t,"Headers.delete","name"),!aQe(t))throw b_.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){b_.brandCheck(this,e),b_.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(t=b_.converters.ByteString(t,r,"name"),!aQe(t))throw b_.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.get(t,!1)}has(t){b_.brandCheck(this,e),b_.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(t=b_.converters.ByteString(t,r,"name"),!aQe(t))throw b_.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.contains(t,!1)}set(t,r){b_.brandCheck(this,e),b_.argumentLengthCheck(arguments,2,"Headers.set");let n="Headers.set";if(t=b_.converters.ByteString(t,n,"name"),r=b_.converters.ByteString(r,n,"value"),r=S$n(r),aQe(t)){if(!E$n(r))throw b_.errors.invalidArgument({prefix:n,value:r,type:"header value"})}else throw b_.errors.invalidArgument({prefix:n,value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(t,r,!1)}getSetCookie(){b_.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}get[aP](){if(this.#t[aP])return this.#t[aP];let t=[],r=this.#t.toSortedArray(),n=this.#t.cookies;if(n===null||n.length===1)return this.#t[aP]=r;for(let a=0;a>"](e,t,r,n.bind(e)):b_.converters["record"](e,t,r)}throw b_.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};T$n.exports={fill:v$n,compareHeaderName:B$n,Headers:KX,HeadersList:mmt,getHeadersGuard:w$n,setHeadersGuard:mfa,setHeadersList:Cfa,getHeadersList:$br}});var lQe=H((Fsu,V$n)=>{"use strict";var{Headers:G$n,HeadersList:R$n,fill:_fa,getHeadersGuard:yfa,setHeadersGuard:F$n,setHeadersList:Z$n}=khe(),{extractBody:N$n,cloneBody:bfa,mixinBody:Efa,hasFinalizationRegistry:Sfa,streamRegistry:vfa,bodyUnusable:Bfa}=ZYe(),eEr=wm(),D$n=Et("node:util"),{kEnumerableProperty:cP}=eEr,{isValidReasonPhrase:wfa,isCancelled:Tfa,isAborted:Rfa,isBlobLike:Nfa,serializeJavascriptValueToJSONString:Dfa,isErrorLike:kfa,isomorphicEncode:xfa,environmentSettingsObject:Gfa}=sP(),{redirectStatusSet:Ffa,nullBodyStatus:Zfa}=TYe(),{kState:Xv,kHeaders:oee}=hae(),{webidl:Qh}=Lk(),{FormData:Lfa}=GYe(),{URLSerializer:k$n}=oV(),{kConstruct:_mt}=R2(),tEr=Et("node:assert"),{types:Vfa}=Et("node:util"),Wfa=new TextEncoder("utf-8"),xhe=class e{static error(){return cQe(ymt(),"immutable")}static json(t,r={}){Qh.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=Qh.converters.ResponseInit(r));let n=Wfa.encode(Dfa(t)),a=N$n(n),o=cQe(uTe({}),"response");return x$n(o,r,{body:a[0],type:"application/json"}),o}static redirect(t,r=302){Qh.argumentLengthCheck(arguments,1,"Response.redirect"),t=Qh.converters.USVString(t),r=Qh.converters["unsigned short"](r);let n;try{n=new URL(t,Gfa.settingsObject.baseUrl)}catch(l){throw new TypeError(`Failed to parse URL from ${t}`,{cause:l})}if(!Ffa.has(r))throw new RangeError(`Invalid status code ${r}`);let a=cQe(uTe({}),"immutable");a[Xv].status=r;let o=xfa(k$n(n));return a[Xv].headersList.append("location",o,!0),a}constructor(t=null,r={}){if(t===_mt)return;t!==null&&(t=Qh.converters.BodyInit(t)),r=Qh.converters.ResponseInit(r),this[Xv]=uTe({}),this[oee]=new G$n(_mt),F$n(this[oee],"response"),Z$n(this[oee],this[Xv].headersList);let n=null;if(t!=null){let[a,o]=N$n(t);n={body:a,type:o}}x$n(this,r,n)}get type(){return Qh.brandCheck(this,e),this[Xv].type}get url(){Qh.brandCheck(this,e);let t=this[Xv].urlList,r=t[t.length-1]??null;return r===null?"":k$n(r,!0)}get redirected(){return Qh.brandCheck(this,e),this[Xv].urlList.length>1}get status(){return Qh.brandCheck(this,e),this[Xv].status}get ok(){return Qh.brandCheck(this,e),this[Xv].status>=200&&this[Xv].status<=299}get statusText(){return Qh.brandCheck(this,e),this[Xv].statusText}get headers(){return Qh.brandCheck(this,e),this[oee]}get body(){return Qh.brandCheck(this,e),this[Xv].body?this[Xv].body.stream:null}get bodyUsed(){return Qh.brandCheck(this,e),!!this[Xv].body&&eEr.isDisturbed(this[Xv].body.stream)}clone(){if(Qh.brandCheck(this,e),Bfa(this))throw Qh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=rEr(this[Xv]);return cQe(t,yfa(this[oee]))}[D$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${D$n.formatWithOptions(r,n)}`}};Efa(xhe);Object.defineProperties(xhe.prototype,{type:cP,url:cP,status:cP,ok:cP,redirected:cP,statusText:cP,headers:cP,clone:cP,body:cP,bodyUsed:cP,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(xhe,{json:cP,redirect:cP,error:cP});function rEr(e){if(e.internalResponse)return L$n(rEr(e.internalResponse),e.type);let t=uTe({...e,body:null});return e.body!=null&&(t.body=bfa(t,e.body)),t}function uTe(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new R$n(e?.headersList):new R$n,urlList:e?.urlList?[...e.urlList]:[]}}function ymt(e){let t=kfa(e);return uTe({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function Ofa(e){return e.type==="error"&&e.status===0}function Cmt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return tEr(!(n in t)),r[n]=a,!0}})}function L$n(e,t){if(t==="basic")return Cmt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return Cmt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return Cmt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return Cmt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});tEr(!1)}function Pfa(e,t=null){return tEr(Tfa(e)),Rfa(e)?ymt(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:t})):ymt(Object.assign(new DOMException("Request was cancelled."),{cause:t}))}function x$n(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!wfa(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[Xv].status=t.status),"statusText"in t&&t.statusText!=null&&(e[Xv].statusText=t.statusText),"headers"in t&&t.headers!=null&&_fa(e[oee],t.headers),r){if(Zfa.includes(e.status))throw Qh.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[Xv].body=r.body,r.type!=null&&!e[Xv].headersList.contains("content-type",!0)&&e[Xv].headersList.append("content-type",r.type,!0)}}function cQe(e,t){let r=new xhe(_mt);return r[Xv]=e,r[oee]=new G$n(_mt),Z$n(r[oee],e.headersList),F$n(r[oee],t),Sfa&&e.body?.stream&&vfa.register(r,new WeakRef(e.body.stream)),r}Qh.converters.ReadableStream=Qh.interfaceConverter(ReadableStream);Qh.converters.FormData=Qh.interfaceConverter(Lfa);Qh.converters.URLSearchParams=Qh.interfaceConverter(URLSearchParams);Qh.converters.XMLHttpRequestBodyInit=function(e,t,r){return typeof e=="string"?Qh.converters.USVString(e,t,r):Nfa(e)?Qh.converters.Blob(e,t,r,{strict:!1}):ArrayBuffer.isView(e)||Vfa.isArrayBuffer(e)?Qh.converters.BufferSource(e,t,r):eEr.isFormDataLike(e)?Qh.converters.FormData(e,t,r,{strict:!1}):e instanceof URLSearchParams?Qh.converters.URLSearchParams(e,t,r):Qh.converters.DOMString(e,t,r)};Qh.converters.BodyInit=function(e,t,r){return e instanceof ReadableStream?Qh.converters.ReadableStream(e,t,r):e?.[Symbol.asyncIterator]?e:Qh.converters.XMLHttpRequestBodyInit(e,t,r)};Qh.converters.ResponseInit=Qh.dictionaryConverter([{key:"status",converter:Qh.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:Qh.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:Qh.converters.HeadersInit}]);V$n.exports={isNetworkError:Ofa,makeNetworkError:ymt,makeResponse:uTe,makeAppropriateNetworkError:Pfa,filterResponse:L$n,Response:xhe,cloneResponse:rEr,fromInnerResponse:cQe}});var M$n=H((Zsu,P$n)=>{"use strict";var{kConnected:W$n,kSize:O$n}=R2(),nEr=class{constructor(t){this.value=t}deref(){return this.value[W$n]===0&&this.value[O$n]===0?void 0:this.value}},iEr=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[W$n]===0&&t[O$n]===0&&this.finalizer(r)})}unregister(t){}};P$n.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:nEr,FinalizationRegistry:iEr}):{WeakRef,FinalizationRegistry}}});var gTe=H((Lsu,nei)=>{"use strict";var{extractBody:Mfa,mixinBody:Hfa,cloneBody:Yfa,bodyUnusable:H$n}=ZYe(),{Headers:q$n,fill:Qfa,HeadersList:vmt,setHeadersGuard:oEr,getHeadersGuard:Xfa,setHeadersList:$$n,getHeadersList:Y$n}=khe(),{FinalizationRegistry:Jfa}=M$n()(),Emt=wm(),Q$n=Et("node:util"),{isValidHTTPToken:Ufa,sameOrigin:X$n,environmentSettingsObject:bmt}=sP(),{forbiddenMethodsSet:Kfa,corsSafeListedMethodsSet:jfa,referrerPolicy:zfa,requestRedirect:qfa,requestMode:$fa,requestCredentials:eIa,requestCache:tIa,requestDuplex:rIa}=TYe(),{kEnumerableProperty:dT,normalizedMethodRecordsBase:nIa,normalizedMethodRecords:iIa}=Emt,{kHeaders:lP,kSignal:Smt,kState:Y1,kDispatcher:sEr}=hae(),{webidl:wf}=Lk(),{URLSerializer:sIa}=oV(),{kConstruct:Bmt}=R2(),oIa=Et("node:assert"),{getMaxListeners:J$n,setMaxListeners:U$n,getEventListeners:aIa,defaultMaxListeners:K$n}=Et("node:events"),cIa=Symbol("abortController"),eei=new Jfa(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),wmt=new WeakMap;function j$n(e){return t;function t(){let r=e.deref();if(r!==void 0){eei.unregister(t),this.removeEventListener("abort",t),r.abort(this.reason);let n=wmt.get(r.signal);if(n!==void 0){if(n.size!==0){for(let a of n){let o=a.deref();o!==void 0&&o.abort(this.reason)}n.clear()}wmt.delete(r.signal)}}}}var z$n=!1,wae=class e{constructor(t,r={}){if(t===Bmt)return;let n="Request constructor";wf.argumentLengthCheck(arguments,1,n),t=wf.converters.RequestInfo(t,n,"input"),r=wf.converters.RequestInit(r,n,"init");let a=null,o=null,l=bmt.settingsObject.baseUrl,A=null;if(typeof t=="string"){this[sEr]=r.dispatcher;let J;try{J=new URL(t,l)}catch(ae){throw new TypeError("Failed to parse URL from "+t,{cause:ae})}if(J.username||J.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);a=Tmt({urlList:[J]}),o="cors"}else this[sEr]=r.dispatcher||t[sEr],oIa(t instanceof e),a=t[Y1],A=t[Smt];let f=bmt.settingsObject.origin,I="client";if(a.window?.constructor?.name==="EnvironmentSettingsObject"&&X$n(a.window,f)&&(I=a.window),r.window!=null)throw new TypeError(`'window' option '${I}' must be null`);"window"in r&&(I="no-window"),a=Tmt({method:a.method,headersList:a.headersList,unsafeRequest:a.unsafeRequest,client:bmt.settingsObject,window:I,priority:a.priority,origin:a.origin,referrer:a.referrer,referrerPolicy:a.referrerPolicy,mode:a.mode,credentials:a.credentials,cache:a.cache,redirect:a.redirect,integrity:a.integrity,keepalive:a.keepalive,reloadNavigation:a.reloadNavigation,historyNavigation:a.historyNavigation,urlList:[...a.urlList]});let C=Object.keys(r).length!==0;if(C&&(a.mode==="navigate"&&(a.mode="same-origin"),a.reloadNavigation=!1,a.historyNavigation=!1,a.origin="client",a.referrer="client",a.referrerPolicy="",a.url=a.urlList[a.urlList.length-1],a.urlList=[a.url]),r.referrer!==void 0){let J=r.referrer;if(J==="")a.referrer="no-referrer";else{let ae;try{ae=new URL(J,l)}catch(ne){throw new TypeError(`Referrer "${J}" is not a valid URL.`,{cause:ne})}ae.protocol==="about:"&&ae.hostname==="client"||f&&!X$n(ae,bmt.settingsObject.baseUrl)?a.referrer="client":a.referrer=ae}}r.referrerPolicy!==void 0&&(a.referrerPolicy=r.referrerPolicy);let b;if(r.mode!==void 0?b=r.mode:b=o,b==="navigate")throw wf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(b!=null&&(a.mode=b),r.credentials!==void 0&&(a.credentials=r.credentials),r.cache!==void 0&&(a.cache=r.cache),a.cache==="only-if-cached"&&a.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(a.redirect=r.redirect),r.integrity!=null&&(a.integrity=String(r.integrity)),r.keepalive!==void 0&&(a.keepalive=!!r.keepalive),r.method!==void 0){let J=r.method,ae=iIa[J];if(ae!==void 0)a.method=ae;else{if(!Ufa(J))throw new TypeError(`'${J}' is not a valid HTTP method.`);let ne=J.toUpperCase();if(Kfa.has(ne))throw new TypeError(`'${J}' HTTP method is unsupported.`);J=nIa[ne]??J,a.method=J}!z$n&&a.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),z$n=!0)}r.signal!==void 0&&(A=r.signal),this[Y1]=a;let E=new AbortController;if(this[Smt]=E.signal,A!=null){if(!A||typeof A.aborted!="boolean"||typeof A.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(A.aborted)E.abort(A.reason);else{this[cIa]=E;let J=new WeakRef(E),ae=j$n(J);try{(typeof J$n=="function"&&J$n(A)===K$n||aIa(A,"abort").length>=K$n)&&U$n(1500,A)}catch{}Emt.addAbortListener(A,ae),eei.register(E,{signal:A,abort:ae},ae)}}if(this[lP]=new q$n(Bmt),$$n(this[lP],a.headersList),oEr(this[lP],"request"),b==="no-cors"){if(!jfa.has(a.method))throw new TypeError(`'${a.method} is unsupported in no-cors mode.`);oEr(this[lP],"request-no-cors")}if(C){let J=Y$n(this[lP]),ae=r.headers!==void 0?r.headers:new vmt(J);if(J.clear(),ae instanceof vmt){for(let{name:ne,value:ce}of ae.rawValues())J.append(ne,ce,!1);J.cookies=ae.cookies}else Qfa(this[lP],ae)}let N=t instanceof e?t[Y1].body:null;if((r.body!=null||N!=null)&&(a.method==="GET"||a.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let B=null;if(r.body!=null){let[J,ae]=Mfa(r.body,a.keepalive);B=J,ae&&!Y$n(this[lP]).contains("content-type",!0)&&this[lP].append("content-type",ae)}let F=B??N;if(F!=null&&F.source==null){if(B!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(a.mode!=="same-origin"&&a.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');a.useCORSPreflightFlag=!0}let Q=F;if(B==null&&N!=null){if(H$n(t))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let J=new TransformStream;N.stream.pipeThrough(J),Q={source:N.source,length:N.length,stream:J.readable}}this[Y1].body=Q}get method(){return wf.brandCheck(this,e),this[Y1].method}get url(){return wf.brandCheck(this,e),sIa(this[Y1].url)}get headers(){return wf.brandCheck(this,e),this[lP]}get destination(){return wf.brandCheck(this,e),this[Y1].destination}get referrer(){return wf.brandCheck(this,e),this[Y1].referrer==="no-referrer"?"":this[Y1].referrer==="client"?"about:client":this[Y1].referrer.toString()}get referrerPolicy(){return wf.brandCheck(this,e),this[Y1].referrerPolicy}get mode(){return wf.brandCheck(this,e),this[Y1].mode}get credentials(){return this[Y1].credentials}get cache(){return wf.brandCheck(this,e),this[Y1].cache}get redirect(){return wf.brandCheck(this,e),this[Y1].redirect}get integrity(){return wf.brandCheck(this,e),this[Y1].integrity}get keepalive(){return wf.brandCheck(this,e),this[Y1].keepalive}get isReloadNavigation(){return wf.brandCheck(this,e),this[Y1].reloadNavigation}get isHistoryNavigation(){return wf.brandCheck(this,e),this[Y1].historyNavigation}get signal(){return wf.brandCheck(this,e),this[Smt]}get body(){return wf.brandCheck(this,e),this[Y1].body?this[Y1].body.stream:null}get bodyUsed(){return wf.brandCheck(this,e),!!this[Y1].body&&Emt.isDisturbed(this[Y1].body.stream)}get duplex(){return wf.brandCheck(this,e),"half"}clone(){if(wf.brandCheck(this,e),H$n(this))throw new TypeError("unusable");let t=tei(this[Y1]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let n=wmt.get(this.signal);n===void 0&&(n=new Set,wmt.set(this.signal,n));let a=new WeakRef(r);n.add(a),Emt.addAbortListener(r.signal,j$n(a))}return rei(t,r.signal,Xfa(this[lP]))}[Q$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${Q$n.formatWithOptions(r,n)}`}};Hfa(wae);function Tmt(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new vmt(e.headersList):new vmt}}function tei(e){let t=Tmt({...e,body:null});return e.body!=null&&(t.body=Yfa(t,e.body)),t}function rei(e,t,r){let n=new wae(Bmt);return n[Y1]=e,n[Smt]=t,n[lP]=new q$n(Bmt),$$n(n[lP],e.headersList),oEr(n[lP],r),n}Object.defineProperties(wae.prototype,{method:dT,url:dT,headers:dT,redirect:dT,clone:dT,signal:dT,duplex:dT,destination:dT,body:dT,bodyUsed:dT,isHistoryNavigation:dT,isReloadNavigation:dT,keepalive:dT,integrity:dT,cache:dT,credentials:dT,attribute:dT,referrerPolicy:dT,referrer:dT,mode:dT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});wf.converters.Request=wf.interfaceConverter(wae);wf.converters.RequestInfo=function(e,t,r){return typeof e=="string"?wf.converters.USVString(e,t,r):e instanceof wae?wf.converters.Request(e,t,r):wf.converters.USVString(e,t,r)};wf.converters.AbortSignal=wf.interfaceConverter(AbortSignal);wf.converters.RequestInit=wf.dictionaryConverter([{key:"method",converter:wf.converters.ByteString},{key:"headers",converter:wf.converters.HeadersInit},{key:"body",converter:wf.nullableConverter(wf.converters.BodyInit)},{key:"referrer",converter:wf.converters.USVString},{key:"referrerPolicy",converter:wf.converters.DOMString,allowedValues:zfa},{key:"mode",converter:wf.converters.DOMString,allowedValues:$fa},{key:"credentials",converter:wf.converters.DOMString,allowedValues:eIa},{key:"cache",converter:wf.converters.DOMString,allowedValues:tIa},{key:"redirect",converter:wf.converters.DOMString,allowedValues:qfa},{key:"integrity",converter:wf.converters.DOMString},{key:"keepalive",converter:wf.converters.boolean},{key:"signal",converter:wf.nullableConverter(e=>wf.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:wf.converters.any},{key:"duplex",converter:wf.converters.DOMString,allowedValues:rIa},{key:"dispatcher",converter:wf.converters.any}]);nei.exports={Request:wae,makeRequest:Tmt,fromInnerRequest:rei,cloneRequest:tei}});var gQe=H((Vsu,mei)=>{"use strict";var{makeNetworkError:by,makeAppropriateNetworkError:Rmt,filterResponse:aEr,makeResponse:Nmt,fromInnerResponse:lIa}=lQe(),{HeadersList:iei}=khe(),{Request:uIa,cloneRequest:gIa}=gTe(),Tae=Et("node:zlib"),{bytesMatch:AIa,makePolicyContainer:dIa,clonePolicyContainer:pIa,requestBadPort:fIa,TAOCheck:IIa,appendRequestOriginHeader:hIa,responseLocationURL:mIa,requestCurrentURL:j8,setRequestReferrerPolicyOnRedirect:CIa,tryUpgradeRequestToAPotentiallyTrustworthyURL:_Ia,createOpaqueTimingInfo:AEr,appendFetchMetadata:yIa,corsCheck:bIa,crossOriginResourcePolicyCheck:EIa,determineRequestsReferrer:SIa,coarsenedSharedCurrentTime:uQe,createDeferredPromise:vIa,isBlobLike:BIa,sameOrigin:gEr,isCancelled:Ghe,isAborted:sei,isErrorLike:wIa,fullyReadBody:TIa,readableStreamClose:RIa,isomorphicEncode:Dmt,urlIsLocal:NIa,urlIsHttpHttpsScheme:dEr,urlHasHttpsScheme:DIa,clampAndCoarsenConnectionTimingInfo:kIa,simpleRangeHeaderValue:xIa,buildContentRange:GIa,createInflate:FIa,extractMimeType:ZIa}=sP(),{kState:lei,kDispatcher:LIa}=hae(),Fhe=Et("node:assert"),{safelyExtractBody:pEr,extractBody:oei}=ZYe(),{redirectStatusSet:uei,nullBodyStatus:gei,safeMethodsSet:VIa,requestBodyHeader:WIa,subresourceSet:OIa}=TYe(),PIa=Et("node:events"),{Readable:MIa,pipeline:HIa,finished:YIa}=Et("node:stream"),{addAbortListener:QIa,isErrored:XIa,isReadable:kmt,bufferToLowerCasedHeaderName:aei}=wm(),{dataURLProcessor:JIa,serializeAMimeType:UIa,minimizeSupportedMimeType:KIa}=oV(),{getGlobalDispatcher:jIa}=Imt(),{webidl:zIa}=Lk(),{STATUS_CODES:qIa}=Et("node:http"),$Ia=["GET","HEAD"],eha=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",cEr,xmt=class extends PIa{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function tha(e){Aei(e,"fetch")}function rha(e,t=void 0){zIa.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=vIa(),n;try{n=new uIa(e,t)}catch(C){return r.reject(C),r.promise}let a=n[lei];if(n.signal.aborted)return lEr(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=!1,f=null;return QIa(n.signal,()=>{A=!0,Fhe(f!=null),f.abort(n.signal.reason);let C=l?.deref();lEr(r,a,C,n.signal.reason)}),f=pei({request:a,processResponseEndOfBody:tha,processResponse:C=>{if(!A){if(C.aborted){lEr(r,a,l,f.serializedAbortReason);return}if(C.type==="error"){r.reject(new TypeError("fetch failed",{cause:C.error}));return}l=new WeakRef(lIa(C,"immutable")),r.resolve(l.deref()),r=null}},dispatcher:n[LIa]}),r.promise}function Aei(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;dEr(r)&&n!==null&&(e.timingAllowPassed||(n=AEr({startTime:n.startTime}),a=""),n.endTime=uQe(),e.timingInfo=n,dei(n,r.href,t,globalThis,a))}var dei=performance.markResourceTiming;function lEr(e,t,r,n){if(e&&e.reject(n),t.body!=null&&kmt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[lei];a.body!=null&&kmt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function pei({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A=jIa()}){Fhe(A);let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=uQe(I),b=AEr({startTime:C}),E={controller:new xmt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return Fhe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=pIa(e.client.policyContainer):e.policyContainer=dIa()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,OIa.has(e.destination),fei(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function fei(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!NIa(j8(r))&&(n=by("local URLs only")),_Ia(r),fIa(r)==="blocked"&&(n=by("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=SIa(r)),n===null&&(n=await(async()=>{let o=j8(r);return gEr(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await cei(e)):r.mode==="same-origin"?by('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?by('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await cei(e)):dEr(j8(r))?(r.responseTainting="cors",await Iei(e)):by("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=aEr(n,"basic"):r.responseTainting==="cors"?n=aEr(n,"cors"):r.responseTainting==="opaque"?n=aEr(n,"opaque"):Fhe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range",!0)&&(n=a=by()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||gei.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>uEr(e,by(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!AIa(A,r.integrity)){o("integrity mismatch");return}n.body=pEr(A)[0],uEr(e,n)};await TIa(n.body,l,o)}else uEr(e,n)}function cei(e){if(Ghe(e)&&e.request.redirectCount===0)return Promise.resolve(Rmt(e));let{request:t}=e,{protocol:r}=j8(t);switch(r){case"about:":return Promise.resolve(by("about scheme is not supported"));case"blob:":{cEr||(cEr=Et("node:buffer").resolveObjectURL);let n=j8(t);if(n.search.length!==0)return Promise.resolve(by("NetworkError when attempting to fetch resource."));let a=cEr(n.toString());if(t.method!=="GET"||!BIa(a))return Promise.resolve(by("invalid method"));let o=Nmt(),l=a.size,A=Dmt(`${l}`),f=a.type;if(t.headersList.contains("range",!0)){o.rangeRequested=!0;let I=t.headersList.get("range",!0),C=xIa(I,!0);if(C==="failure")return Promise.resolve(by("failed to fetch the data URL"));let{rangeStartValue:b,rangeEndValue:E}=C;if(b===null)b=l-E,E=b+E-1;else{if(b>=l)return Promise.resolve(by("Range start is greater than the blob's size."));(E===null||E>=l)&&(E=l-1)}let N=a.slice(b,E,f),B=oei(N);o.body=B[0];let F=Dmt(`${N.size}`),Q=GIa(b,E,l);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",F,!0),o.headersList.set("content-type",f,!0),o.headersList.set("content-range",Q,!0)}else{let I=oei(a);o.statusText="OK",o.body=I[0],o.headersList.set("content-length",A,!0),o.headersList.set("content-type",f,!0)}return Promise.resolve(o)}case"data:":{let n=j8(t),a=JIa(n);if(a==="failure")return Promise.resolve(by("failed to fetch the data URL"));let o=UIa(a.mimeType);return Promise.resolve(Nmt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:pEr(a.body)[0]}))}case"file:":return Promise.resolve(by("not implemented... yet..."));case"http:":case"https:":return Iei(e).catch(n=>by(n));default:return Promise.resolve(by("unknown scheme"))}}function nha(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function uEr(e,t){let r=e.timingInfo,n=()=>{let o=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=r),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;r.endTime=o;let A=t.cacheState,f=t.bodyInfo;t.timingAllowPassed||(r=AEr(r),A="");let I=0;if(e.request.mode!=="navigator"||!t.hasCrossOriginRedirects){I=t.status;let C=ZIa(t.headersList);C!=="failure"&&(f.contentType=KIa(C))}e.request.initiatorType!=null&&dei(r,e.request.url.href,e.request.initiatorType,globalThis,A,f,I)};let l=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>l())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let a=t.type==="error"?t:t.internalResponse??t;a.body==null?n():YIa(a.body.stream,()=>{n()})}async function Iei(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await hei(e),t.responseTainting==="cors"&&bIa(t,r)==="failure")return by("cors failure");IIa(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&EIa(t.origin,t.client,t.destination,n)==="blocked"?by("blocked"):(uei.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),t.redirect==="error"?r=by("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await iha(e,r):Fhe(!1)),r.timingInfo=a,r)}function iha(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=mIa(n,j8(r).hash),a==null)return t}catch(l){return Promise.resolve(by(l))}if(!dEr(a))return Promise.resolve(by("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(by("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!gEr(r,a))return Promise.resolve(by('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(by('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(by());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!$Ia.includes(r.method)){r.method="GET",r.body=null;for(let l of WIa)r.headersList.delete(l)}gEr(j8(r),a)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(Fhe(r.body.source!=null),r.body=pEr(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=uQe(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),CIa(r,n),fei(e,!0)}async function hei(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=gIa(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=Dmt(`${C}`)),b!=null&&o.headersList.append("content-length",b,!0),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",Dmt(o.referrer.href),!0),hIa(o),yIa(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",eha),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||(DIa(j8(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),A==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,l==null){if(o.cache==="only-if-cached")return by("only if cached");let E=await sha(a,I,r);!VIa.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?by():Ghe(e)?Rmt(e):by("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(Ghe(e))return Rmt(e);e.controller.connection.destroy(),l=await hei(e,t,!0)}return l}async function sha(e,t=!1,r=!1){Fhe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B,F=!0){this.destroyed||(this.destroyed=!0,F&&this.abort?.(B??new DOMException("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(J){Ghe(e)||(yield J,e.processRequestBodyChunkLength?.(J.byteLength))},F=()=>{Ghe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=J=>{Ghe(e)||(J.name==="AbortError"?e.controller.abort():e.controller.terminate(J))};f=async function*(){try{for await(let J of n.body.stream)yield*B(J);F()}catch(J){Q(J)}}()}try{let{body:B,status:F,statusText:Q,headersList:J,socket:ae}=await N({body:f});if(ae)a=Nmt({status:F,statusText:Q,headersList:J,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=Nmt({status:F,statusText:Q,headersList:J})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),Rmt(e,B)):by(B)}let I=async()=>{await e.controller.resume()},C=B=>{Ghe(e)||e.controller.abort(B)},b=new ReadableStream({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)},type:"bytes"});a.body={stream:b,source:null,length:null},e.controller.onAborted=E,e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:J,value:ae}=await e.controller.next();if(sei(e))break;B=J?void 0:ae}catch(J){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=J,F=!0)}if(B===void 0){RIa(e.controller.controller),nha(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}let Q=new Uint8Array(B);if(Q.byteLength&&e.controller.controller.enqueue(Q),XIa(b)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function E(B){sei(e)?(a.aborted=!0,kmt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):kmt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:wIa(B)?B:void 0})),e.controller.connection.destroy()}return a;function N({body:B}){let F=j8(n),Q=e.controller.dispatcher;return new Promise((J,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:Q.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;o.finalConnectionTimingInfo=kIa(void 0,o.postRedirectStartTime,e.crossOriginIsolatedCapability),ce.destroyed?ne(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne),o.finalNetworkRequestStartTime=uQe(e.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=uQe(e.crossOriginIsolatedCapability)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new iei;for(let Le=0;LeLe.trim())),be=Se.get("location",!0),this.body=new MIa({read:fe});let k=[],tt=be&&n.redirect==="follow"&&uei.has(ne);if(de.length!==0&&n.method!=="HEAD"&&n.method!=="CONNECT"&&!gei.includes(ne)&&!tt)for(let Le=0;Le{Le&&this.onError(Le)}).on("error",ze):this.body.on("error",ze)}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new iei;for(let de=0;de{"use strict";Cei.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var yei=H((Osu,_ei)=>{"use strict";var{webidl:uP}=Lk(),Gmt=Symbol("ProgressEvent state"),IEr=class e extends Event{constructor(t,r={}){t=uP.converters.DOMString(t,"ProgressEvent constructor","type"),r=uP.converters.ProgressEventInit(r??{}),super(t,r),this[Gmt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return uP.brandCheck(this,e),this[Gmt].lengthComputable}get loaded(){return uP.brandCheck(this,e),this[Gmt].loaded}get total(){return uP.brandCheck(this,e),this[Gmt].total}};uP.converters.ProgressEventInit=uP.dictionaryConverter([{key:"lengthComputable",converter:uP.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:uP.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:uP.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:uP.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:uP.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:uP.converters.boolean,defaultValue:()=>!1}]);_ei.exports={ProgressEvent:IEr}});var Eei=H((Psu,bei)=>{"use strict";function oha(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}bei.exports={getEncoding:oha}});var Dei=H((Msu,Nei)=>{"use strict";var{kState:ATe,kError:hEr,kResult:Sei,kAborted:AQe,kLastProgressEventFired:mEr}=fEr(),{ProgressEvent:aha}=yei(),{getEncoding:vei}=Eei(),{serializeAMimeType:cha,parseMIMEType:Bei}=oV(),{types:lha}=Et("node:util"),{StringDecoder:wei}=Et("string_decoder"),{btoa:Tei}=Et("node:buffer"),uha={enumerable:!0,writable:!1,configurable:!1};function gha(e,t,r,n){if(e[ATe]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[ATe]="loading",e[Sei]=null,e[hEr]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[AQe];)try{let{done:I,value:C}=await A;if(f&&!e[AQe]&&queueMicrotask(()=>{Rae("loadstart",e)}),f=!1,!I&&lha.isUint8Array(C))l.push(C),(e[mEr]===void 0||Date.now()-e[mEr]>=50)&&!e[AQe]&&(e[mEr]=Date.now(),queueMicrotask(()=>{Rae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[ATe]="done";try{let b=Aha(l,r,t.type,n);if(e[AQe])return;e[Sei]=b,Rae("load",e)}catch(b){e[hEr]=b,Rae("error",e)}e[ATe]!=="loading"&&Rae("loadend",e)});break}}catch(I){if(e[AQe])return;queueMicrotask(()=>{e[ATe]="done",e[hEr]=I,Rae("error",e),e[ATe]!=="loading"&&Rae("loadend",e)});break}})()}function Rae(e,t){let r=new aha(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function Aha(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=Bei(r||"application/octet-stream");o!=="failure"&&(a+=cha(o)),a+=";base64,";let l=new wei("latin1");for(let A of e)a+=Tei(l.write(A));return a+=Tei(l.end()),a}case"Text":{let a="failure";if(n&&(a=vei(n)),a==="failure"&&r){let o=Bei(r);o!=="failure"&&(a=vei(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),dha(e,a)}case"ArrayBuffer":return Rei(e).buffer;case"BinaryString":{let a="",o=new wei("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function dha(e,t){let r=Rei(e),n=pha(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function pha(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function Rei(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}Nei.exports={staticPropertyDescriptors:uha,readOperation:gha,fireAProgressEvent:Rae}});var Fei=H((Hsu,Gei)=>{"use strict";var{staticPropertyDescriptors:dTe,readOperation:Fmt,fireAProgressEvent:kei}=Dei(),{kState:Zhe,kError:xei,kResult:Zmt,kEvents:C0,kAborted:fha}=fEr(),{webidl:ob}=Lk(),{kEnumerableProperty:lV}=wm(),jX=class e extends EventTarget{constructor(){super(),this[Zhe]="empty",this[Zmt]=null,this[xei]=null,this[C0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),t=ob.converters.Blob(t,{strict:!1}),Fmt(this,t,"ArrayBuffer")}readAsBinaryString(t){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),t=ob.converters.Blob(t,{strict:!1}),Fmt(this,t,"BinaryString")}readAsText(t,r=void 0){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,"FileReader.readAsText"),t=ob.converters.Blob(t,{strict:!1}),r!==void 0&&(r=ob.converters.DOMString(r,"FileReader.readAsText","encoding")),Fmt(this,t,"Text",r)}readAsDataURL(t){ob.brandCheck(this,e),ob.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),t=ob.converters.Blob(t,{strict:!1}),Fmt(this,t,"DataURL")}abort(){if(this[Zhe]==="empty"||this[Zhe]==="done"){this[Zmt]=null;return}this[Zhe]==="loading"&&(this[Zhe]="done",this[Zmt]=null),this[fha]=!0,kei("abort",this),this[Zhe]!=="loading"&&kei("loadend",this)}get readyState(){switch(ob.brandCheck(this,e),this[Zhe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return ob.brandCheck(this,e),this[Zmt]}get error(){return ob.brandCheck(this,e),this[xei]}get onloadend(){return ob.brandCheck(this,e),this[C0].loadend}set onloadend(t){ob.brandCheck(this,e),this[C0].loadend&&this.removeEventListener("loadend",this[C0].loadend),typeof t=="function"?(this[C0].loadend=t,this.addEventListener("loadend",t)):this[C0].loadend=null}get onerror(){return ob.brandCheck(this,e),this[C0].error}set onerror(t){ob.brandCheck(this,e),this[C0].error&&this.removeEventListener("error",this[C0].error),typeof t=="function"?(this[C0].error=t,this.addEventListener("error",t)):this[C0].error=null}get onloadstart(){return ob.brandCheck(this,e),this[C0].loadstart}set onloadstart(t){ob.brandCheck(this,e),this[C0].loadstart&&this.removeEventListener("loadstart",this[C0].loadstart),typeof t=="function"?(this[C0].loadstart=t,this.addEventListener("loadstart",t)):this[C0].loadstart=null}get onprogress(){return ob.brandCheck(this,e),this[C0].progress}set onprogress(t){ob.brandCheck(this,e),this[C0].progress&&this.removeEventListener("progress",this[C0].progress),typeof t=="function"?(this[C0].progress=t,this.addEventListener("progress",t)):this[C0].progress=null}get onload(){return ob.brandCheck(this,e),this[C0].load}set onload(t){ob.brandCheck(this,e),this[C0].load&&this.removeEventListener("load",this[C0].load),typeof t=="function"?(this[C0].load=t,this.addEventListener("load",t)):this[C0].load=null}get onabort(){return ob.brandCheck(this,e),this[C0].abort}set onabort(t){ob.brandCheck(this,e),this[C0].abort&&this.removeEventListener("abort",this[C0].abort),typeof t=="function"?(this[C0].abort=t,this.addEventListener("abort",t)):this[C0].abort=null}};jX.EMPTY=jX.prototype.EMPTY=0;jX.LOADING=jX.prototype.LOADING=1;jX.DONE=jX.prototype.DONE=2;Object.defineProperties(jX.prototype,{EMPTY:dTe,LOADING:dTe,DONE:dTe,readAsArrayBuffer:lV,readAsBinaryString:lV,readAsText:lV,readAsDataURL:lV,abort:lV,readyState:lV,result:lV,error:lV,onloadstart:lV,onprogress:lV,onload:lV,onabort:lV,onerror:lV,onloadend:lV,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(jX,{EMPTY:dTe,LOADING:dTe,DONE:dTe});Gei.exports={FileReader:jX}});var Lmt=H((Ysu,Zei)=>{"use strict";Zei.exports={kConstruct:R2().kConstruct}});var Wei=H((Qsu,Vei)=>{"use strict";var Iha=Et("node:assert"),{URLSerializer:Lei}=oV(),{isValidHeaderName:hha}=sP();function mha(e,t,r=!1){let n=Lei(e,r),a=Lei(t,r);return n===a}function Cha(e){Iha(e!==null);let t=[];for(let r of e.split(","))r=r.trim(),hha(r)&&t.push(r);return t}Vei.exports={urlEquals:mha,getFieldValues:Cha}});var Mei=H((Xsu,Pei)=>{"use strict";var{kConstruct:_ha}=Lmt(),{urlEquals:yha,getFieldValues:CEr}=Wei(),{kEnumerableProperty:Lhe,isDisturbed:bha}=wm(),{webidl:Tp}=Lk(),{Response:Eha,cloneResponse:Sha,fromInnerResponse:vha}=lQe(),{Request:aee,fromInnerRequest:Bha}=gTe(),{kState:zX}=hae(),{fetching:wha}=gQe(),{urlIsHttpHttpsScheme:Vmt,createDeferredPromise:pTe,readAllBytes:Tha}=sP(),_Er=Et("node:assert"),Wmt=class e{#e;constructor(){arguments[0]!==_ha&&Tp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Tp.brandCheck(this,e);let n="Cache.match";Tp.argumentLengthCheck(arguments,1,n),t=Tp.converters.RequestInfo(t,n,"request"),r=Tp.converters.CacheQueryOptions(r,n,"options");let a=this.#i(t,r,1);if(a.length!==0)return a[0]}async matchAll(t=void 0,r={}){Tp.brandCheck(this,e);let n="Cache.matchAll";return t!==void 0&&(t=Tp.converters.RequestInfo(t,n,"request")),r=Tp.converters.CacheQueryOptions(r,n,"options"),this.#i(t,r)}async add(t){Tp.brandCheck(this,e);let r="Cache.add";Tp.argumentLengthCheck(arguments,1,r),t=Tp.converters.RequestInfo(t,r,"request");let n=[t];return await this.addAll(n)}async addAll(t){Tp.brandCheck(this,e);let r="Cache.addAll";Tp.argumentLengthCheck(arguments,1,r);let n=[],a=[];for(let E of t){if(E===void 0)throw Tp.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(E=Tp.converters.RequestInfo(E),typeof E=="string")continue;let N=E[zX];if(!Vmt(N.url)||N.method!=="GET")throw Tp.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let E of t){let N=new aee(E)[zX];if(!Vmt(N.url))throw Tp.errors.exception({header:r,message:"Expected http/s scheme."});N.initiator="fetch",N.destination="subresource",a.push(N);let B=pTe();o.push(wha({request:N,processResponse(F){if(F.type==="error"||F.status===206||F.status<200||F.status>299)B.reject(Tp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(F.headersList.contains("vary")){let Q=CEr(F.headersList.get("vary"));for(let J of Q)if(J==="*"){B.reject(Tp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let ae of o)ae.abort();return}}},processResponseEndOfBody(F){if(F.aborted){B.reject(new DOMException("aborted","AbortError"));return}B.resolve(F)}})),n.push(B.promise)}let A=await Promise.all(n),f=[],I=0;for(let E of A){let N={type:"put",request:a[I],response:E};f.push(N),I++}let C=pTe(),b=null;try{this.#t(f)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve(void 0):C.reject(b)}),C.promise}async put(t,r){Tp.brandCheck(this,e);let n="Cache.put";Tp.argumentLengthCheck(arguments,2,n),t=Tp.converters.RequestInfo(t,n,"request"),r=Tp.converters.Response(r,n,"response");let a=null;if(t instanceof aee?a=t[zX]:a=new aee(t)[zX],!Vmt(a.url)||a.method!=="GET")throw Tp.errors.exception({header:n,message:"Expected an http/s scheme when method is not GET"});let o=r[zX];if(o.status===206)throw Tp.errors.exception({header:n,message:"Got 206 status"});if(o.headersList.contains("vary")){let N=CEr(o.headersList.get("vary"));for(let B of N)if(B==="*")throw Tp.errors.exception({header:n,message:"Got * vary field value"})}if(o.body&&(bha(o.body.stream)||o.body.stream.locked))throw Tp.errors.exception({header:n,message:"Response body is locked or disturbed"});let l=Sha(o),A=pTe();if(o.body!=null){let B=o.body.stream.getReader();Tha(B).then(A.resolve,A.reject)}else A.resolve(void 0);let f=[],I={type:"put",request:a,response:l};f.push(I);let C=await A.promise;l.body!=null&&(l.body.source=C);let b=pTe(),E=null;try{this.#t(f)}catch(N){E=N}return queueMicrotask(()=>{E===null?b.resolve():b.reject(E)}),b.promise}async delete(t,r={}){Tp.brandCheck(this,e);let n="Cache.delete";Tp.argumentLengthCheck(arguments,1,n),t=Tp.converters.RequestInfo(t,n,"request"),r=Tp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t instanceof aee){if(a=t[zX],a.method!=="GET"&&!r.ignoreMethod)return!1}else _Er(typeof t=="string"),a=new aee(t)[zX];let o=[],l={type:"delete",request:a,options:r};o.push(l);let A=pTe(),f=null,I;try{I=this.#t(o)}catch(C){f=C}return queueMicrotask(()=>{f===null?A.resolve(!!I?.length):A.reject(f)}),A.promise}async keys(t=void 0,r={}){Tp.brandCheck(this,e);let n="Cache.keys";t!==void 0&&(t=Tp.converters.RequestInfo(t,n,"request")),r=Tp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t!==void 0)if(t instanceof aee){if(a=t[zX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new aee(t)[zX]);let o=pTe(),l=[];if(t===void 0)for(let A of this.#e)l.push(A[0]);else{let A=this.#n(a,r);for(let f of A)l.push(f[0])}return queueMicrotask(()=>{let A=[];for(let f of l){let I=Bha(f,new AbortController().signal,"immutable");A.push(I)}o.resolve(Object.freeze(A))}),o.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);_Er(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!Vmt(f.url))throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);_Er(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!yha(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=CEr(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}#i(t,r,n=1/0){let a=null;if(t!==void 0)if(t instanceof aee){if(a=t[zX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new aee(t)[zX]);let o=[];if(t===void 0)for(let A of this.#e)o.push(A[1]);else{let A=this.#n(a,r);for(let f of A)o.push(f[1])}let l=[];for(let A of o){let f=vha(A,"immutable");if(l.push(f.clone()),l.length>=n)break}return Object.freeze(l)}};Object.defineProperties(Wmt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:Lhe,matchAll:Lhe,add:Lhe,addAll:Lhe,put:Lhe,delete:Lhe,keys:Lhe});var Oei=[{key:"ignoreSearch",converter:Tp.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:Tp.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:Tp.converters.boolean,defaultValue:()=>!1}];Tp.converters.CacheQueryOptions=Tp.dictionaryConverter(Oei);Tp.converters.MultiCacheQueryOptions=Tp.dictionaryConverter([...Oei,{key:"cacheName",converter:Tp.converters.DOMString}]);Tp.converters.Response=Tp.interfaceConverter(Eha);Tp.converters["sequence"]=Tp.sequenceConverter(Tp.converters.RequestInfo);Pei.exports={Cache:Wmt}});var Yei=H((Jsu,Hei)=>{"use strict";var{kConstruct:dQe}=Lmt(),{Cache:Omt}=Mei(),{webidl:UZ}=Lk(),{kEnumerableProperty:pQe}=wm(),Pmt=class e{#e=new Map;constructor(){arguments[0]!==dQe&&UZ.illegalConstructor()}async match(t,r={}){if(UZ.brandCheck(this,e),UZ.argumentLengthCheck(arguments,1,"CacheStorage.match"),t=UZ.converters.RequestInfo(t),r=UZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new Omt(dQe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new Omt(dQe,n).match(t,r);if(o!==void 0)return o}}async has(t){UZ.brandCheck(this,e);let r="CacheStorage.has";return UZ.argumentLengthCheck(arguments,1,r),t=UZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)}async open(t){UZ.brandCheck(this,e);let r="CacheStorage.open";if(UZ.argumentLengthCheck(arguments,1,r),t=UZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)){let a=this.#e.get(t);return new Omt(dQe,a)}let n=[];return this.#e.set(t,n),new Omt(dQe,n)}async delete(t){UZ.brandCheck(this,e);let r="CacheStorage.delete";return UZ.argumentLengthCheck(arguments,1,r),t=UZ.converters.DOMString(t,r,"cacheName"),this.#e.delete(t)}async keys(){return UZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(Pmt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:pQe,has:pQe,open:pQe,delete:pQe,keys:pQe});Hei.exports={CacheStorage:Pmt}});var Xei=H((Usu,Qei)=>{"use strict";Qei.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var yEr=H((Ksu,zei)=>{"use strict";function Rha(e){for(let t=0;t=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function Jei(e){for(let t=0;t126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function Uei(e){let t=e.length,r=0;if(e[0]==='"'){if(t===1||e[t-1]!=='"')throw new Error("Invalid cookie value");--t,++r}for(;r126||n===34||n===44||n===59||n===92)throw new Error("Invalid cookie value")}}function Kei(e){for(let t=0;tt.toString().padStart(2,"0"));function jei(e){return typeof e=="number"&&(e=new Date(e)),`${Dha[e.getUTCDay()]}, ${Mmt[e.getUTCDate()]} ${kha[e.getUTCMonth()]} ${e.getUTCFullYear()} ${Mmt[e.getUTCHours()]}:${Mmt[e.getUTCMinutes()]}:${Mmt[e.getUTCSeconds()]} GMT`}function xha(e){if(e<0)throw new Error("Invalid cookie max-age")}function Gha(e){if(e.name.length===0)return null;Jei(e.name),Uei(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(xha(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Nha(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(Kei(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${jei(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}zei.exports={isCTLExcludingHtab:Rha,validateCookieName:Jei,validateCookiePath:Kei,validateCookieValue:Uei,toIMFDate:jei,stringify:Gha}});var $ei=H((jsu,qei)=>{"use strict";var{maxNameValuePairSize:Fha,maxAttributeValueSize:Zha}=Xei(),{isCTLExcludingHtab:Lha}=yEr(),{collectASequenceOfCodePointsFast:Hmt}=oV(),Vha=Et("node:assert");function Wha(e){if(Lha(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=Hmt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=Hmt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>Fha?null:{name:n,value:a,...fTe(r)}}function fTe(e,t={}){if(e.length===0)return t;Vha(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=Hmt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=Hmt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>Zha)return fTe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return fTe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return fTe(e,t)}qei.exports={parseSetCookie:Wha,parseUnparsedAttributes:fTe}});var rti=H((zsu,tti)=>{"use strict";var{parseSetCookie:Oha}=$ei(),{stringify:Pha}=yEr(),{webidl:aC}=Lk(),{Headers:Ymt}=khe();function Mha(e){aC.argumentLengthCheck(arguments,1,"getCookies"),aC.brandCheck(e,Ymt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function Hha(e,t,r){aC.brandCheck(e,Ymt,{strict:!1});let n="deleteCookie";aC.argumentLengthCheck(arguments,2,n),t=aC.converters.DOMString(t,n,"name"),r=aC.converters.DeleteCookieAttributes(r),eti(e,{name:t,value:"",expires:new Date(0),...r})}function Yha(e){aC.argumentLengthCheck(arguments,1,"getSetCookies"),aC.brandCheck(e,Ymt,{strict:!1});let t=e.getSetCookie();return t?t.map(r=>Oha(r)):[]}function eti(e,t){aC.argumentLengthCheck(arguments,2,"setCookie"),aC.brandCheck(e,Ymt,{strict:!1}),t=aC.converters.Cookie(t);let r=Pha(t);r&&e.append("Set-Cookie",r)}aC.converters.DeleteCookieAttributes=aC.dictionaryConverter([{converter:aC.nullableConverter(aC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.DOMString),key:"domain",defaultValue:()=>null}]);aC.converters.Cookie=aC.dictionaryConverter([{converter:aC.converters.DOMString,key:"name"},{converter:aC.converters.DOMString,key:"value"},{converter:aC.nullableConverter(e=>typeof e=="number"?aC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.boolean),key:"secure",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:aC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:aC.sequenceConverter(aC.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);tti.exports={getCookies:Mha,deleteCookie:Hha,getSetCookies:Yha,setCookie:eti}});var hTe=H((qsu,iti)=>{"use strict";var{webidl:Mp}=Lk(),{kEnumerableProperty:uV}=wm(),{kConstruct:nti}=R2(),{MessagePort:Qha}=Et("node:worker_threads"),ITe=class e extends Event{#e;constructor(t,r={}){if(t===nti){super(arguments[1],arguments[2]);return}let n="MessageEvent constructor";Mp.argumentLengthCheck(arguments,1,n),t=Mp.converters.DOMString(t,n,"type"),r=Mp.converters.MessageEventInit(r,n,"eventInitDict"),super(t,r),this.#e=r}get data(){return Mp.brandCheck(this,e),this.#e.data}get origin(){return Mp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Mp.brandCheck(this,e),this.#e.lastEventId}get source(){return Mp.brandCheck(this,e),this.#e.source}get ports(){return Mp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Mp.brandCheck(this,e),Mp.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}static createFastMessageEvent(t,r){let n=new e(nti,t,r);return n.#e=r,n.#e.data??=null,n.#e.origin??="",n.#e.lastEventId??="",n.#e.source??=null,n.#e.ports??=[],n}},{createFastMessageEvent:Xha}=ITe;delete ITe.createFastMessageEvent;var Qmt=class e extends Event{#e;constructor(t,r={}){let n="CloseEvent constructor";Mp.argumentLengthCheck(arguments,1,n),t=Mp.converters.DOMString(t,n,"type"),r=Mp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Mp.brandCheck(this,e),this.#e.wasClean}get code(){return Mp.brandCheck(this,e),this.#e.code}get reason(){return Mp.brandCheck(this,e),this.#e.reason}},Xmt=class e extends Event{#e;constructor(t,r){let n="ErrorEvent constructor";Mp.argumentLengthCheck(arguments,1,n),super(t,r),t=Mp.converters.DOMString(t,n,"type"),r=Mp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Mp.brandCheck(this,e),this.#e.message}get filename(){return Mp.brandCheck(this,e),this.#e.filename}get lineno(){return Mp.brandCheck(this,e),this.#e.lineno}get colno(){return Mp.brandCheck(this,e),this.#e.colno}get error(){return Mp.brandCheck(this,e),this.#e.error}};Object.defineProperties(ITe.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:uV,origin:uV,lastEventId:uV,source:uV,ports:uV,initMessageEvent:uV});Object.defineProperties(Qmt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:uV,code:uV,wasClean:uV});Object.defineProperties(Xmt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:uV,filename:uV,lineno:uV,colno:uV,error:uV});Mp.converters.MessagePort=Mp.interfaceConverter(Qha);Mp.converters["sequence"]=Mp.sequenceConverter(Mp.converters.MessagePort);var bEr=[{key:"bubbles",converter:Mp.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Mp.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Mp.converters.boolean,defaultValue:()=>!1}];Mp.converters.MessageEventInit=Mp.dictionaryConverter([...bEr,{key:"data",converter:Mp.converters.any,defaultValue:()=>null},{key:"origin",converter:Mp.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:Mp.converters.DOMString,defaultValue:()=>""},{key:"source",converter:Mp.nullableConverter(Mp.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:Mp.converters["sequence"],defaultValue:()=>new Array(0)}]);Mp.converters.CloseEventInit=Mp.dictionaryConverter([...bEr,{key:"wasClean",converter:Mp.converters.boolean,defaultValue:()=>!1},{key:"code",converter:Mp.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:Mp.converters.USVString,defaultValue:()=>""}]);Mp.converters.ErrorEventInit=Mp.dictionaryConverter([...bEr,{key:"message",converter:Mp.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:Mp.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:Mp.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:Mp.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:Mp.converters.any}]);iti.exports={MessageEvent:ITe,CloseEvent:Qmt,ErrorEvent:Xmt,createFastMessageEvent:Xha}});var Vhe=H(($su,sti)=>{"use strict";var Jha="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",Uha={enumerable:!0,writable:!1,configurable:!1},Kha={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},jha={NOT_SENT:0,PROCESSING:1,SENT:2},zha={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},qha=2**16-1,$ha={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},ema=Buffer.allocUnsafe(0),tma={string:1,typedArray:2,arrayBuffer:3,blob:4};sti.exports={uid:Jha,sentCloseFrameState:jha,staticPropertyDescriptors:Uha,states:Kha,opcodes:zha,maxUnsigned16Bit:qha,parserStates:$ha,emptyBuffer:ema,sendHints:tma}});var fQe=H((eou,oti)=>{"use strict";oti.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var mQe=H((tou,fti)=>{"use strict";var{kReadyState:IQe,kController:rma,kResponse:nma,kBinaryType:ima,kWebSocketURL:sma}=fQe(),{states:hQe,opcodes:Nae}=Vhe(),{ErrorEvent:oma,createFastMessageEvent:ama}=hTe(),{isUtf8:cma}=Et("node:buffer"),{collectASequenceOfCodePointsFast:lma,removeHTTPWhitespace:ati}=oV();function uma(e){return e[IQe]===hQe.CONNECTING}function gma(e){return e[IQe]===hQe.OPEN}function Ama(e){return e[IQe]===hQe.CLOSING}function dma(e){return e[IQe]===hQe.CLOSED}function EEr(e,t,r=(a,o)=>new Event(a,o),n={}){let a=r(e,n);t.dispatchEvent(a)}function pma(e,t,r){if(e[IQe]!==hQe.OPEN)return;let n;if(t===Nae.TEXT)try{n=pti(r)}catch{lti(e,"Received invalid UTF-8 in text frame.");return}else t===Nae.BINARY&&(e[ima]==="blob"?n=new Blob([r]):n=fma(r));EEr("message",e,ama,{origin:e[sma].origin,data:n})}function fma(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function Ima(e){if(e.length===0)return!1;for(let t=0;t126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function hma(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function lti(e,t){let{[rma]:r,[nma]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&EEr("error",e,(a,o)=>new oma(a,o),{error:new Error(t),message:t})}function uti(e){return e===Nae.CLOSE||e===Nae.PING||e===Nae.PONG}function gti(e){return e===Nae.CONTINUATION}function Ati(e){return e===Nae.TEXT||e===Nae.BINARY}function mma(e){return Ati(e)||gti(e)||uti(e)}function Cma(e){let t={position:0},r=new Map;for(;t.position57)return!1}return!0}var dti=typeof process.versions.icu=="string",cti=dti?new TextDecoder("utf-8",{fatal:!0}):void 0,pti=dti?cti.decode.bind(cti):function(e){if(cma(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};fti.exports={isConnecting:uma,isEstablished:gma,isClosing:Ama,isClosed:dma,fireEvent:EEr,isValidSubprotocol:Ima,isValidStatusCode:hma,failWebsocketConnection:lti,websocketMessageReceived:pma,utf8Decode:pti,isControlFrame:uti,isContinuationFrame:gti,isTextBinaryFrame:Ati,isValidOpcode:mma,parseExtensions:Cma,isValidClientWindowBits:_ma}});var Umt=H((rou,Iti)=>{"use strict";var{maxUnsigned16Bit:yma}=Vhe(),Jmt=16386,SEr,CQe=null,mTe=Jmt;try{SEr=Et("node:crypto")}catch{SEr={randomFillSync:function(t,r,n){for(let a=0;ayma?(l+=8,o=127):a>125&&(l+=2,o=126);let A=Buffer.allocUnsafe(a+l);A[0]=A[1]=0,A[0]|=128,A[0]=(A[0]&240)+t;A[l-4]=n[0],A[l-3]=n[1],A[l-2]=n[2],A[l-1]=n[3],A[1]=o,o===126?A.writeUInt16BE(a,2):o===127&&(A[2]=A[3]=0,A.writeUIntBE(a,4,6)),A[1]|=128;for(let f=0;f{"use strict";var{uid:Ema,states:_Qe,sentCloseFrameState:Kmt,emptyBuffer:Sma,opcodes:vma}=Vhe(),{kReadyState:yQe,kSentClose:jmt,kByteParser:mti,kReceivedClose:hti,kResponse:Cti}=fQe(),{fireEvent:Bma,failWebsocketConnection:Dae,isClosing:wma,isClosed:Tma,isEstablished:Rma,parseExtensions:Nma}=mQe(),{channels:CTe}=Gwe(),{CloseEvent:Dma}=hTe(),{makeRequest:kma}=gTe(),{fetching:xma}=gQe(),{Headers:Gma,getHeadersList:Fma}=khe(),{getDecodeSplit:Zma}=sP(),{WebsocketFrameSend:Lma}=Umt(),BEr;try{BEr=Et("node:crypto")}catch{}function Vma(e,t,r,n,a,o){let l=e;l.protocol=e.protocol==="ws:"?"http:":"https:";let A=kma({urlList:[l],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let b=Fma(new Gma(o.headers));A.headersList=b}let f=BEr.randomBytes(16).toString("base64");A.headersList.append("sec-websocket-key",f),A.headersList.append("sec-websocket-version","13");for(let b of t)A.headersList.append("sec-websocket-protocol",b);return A.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),xma({request:A,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(b){if(b.type==="error"||b.status!==101){Dae(n,"Received network error or non-101 status code.");return}if(t.length!==0&&!b.headersList.get("Sec-WebSocket-Protocol")){Dae(n,"Server did not respond with sent protocols.");return}if(b.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){Dae(n,'Server did not set Upgrade header to "websocket".');return}if(b.headersList.get("Connection")?.toLowerCase()!=="upgrade"){Dae(n,'Server did not set Connection header to "upgrade".');return}let E=b.headersList.get("Sec-WebSocket-Accept"),N=BEr.createHash("sha1").update(f+Ema).digest("base64");if(E!==N){Dae(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let B=b.headersList.get("Sec-WebSocket-Extensions"),F;if(B!==null&&(F=Nma(B),!F.has("permessage-deflate"))){Dae(n,"Sec-WebSocket-Extensions header does not match.");return}let Q=b.headersList.get("Sec-WebSocket-Protocol");if(Q!==null&&!Zma("sec-websocket-protocol",A.headersList).includes(Q)){Dae(n,"Protocol was not set in the opening handshake.");return}b.socket.on("data",_ti),b.socket.on("close",yti),b.socket.on("error",bti),CTe.open.hasSubscribers&&CTe.open.publish({address:b.socket.address(),protocol:Q,extensions:B}),a(b,F)}})}function Wma(e,t,r,n){if(!(wma(e)||Tma(e)))if(!Rma(e))Dae(e,"Connection was closed before it was established."),e[yQe]=_Qe.CLOSING;else if(e[jmt]===Kmt.NOT_SENT){e[jmt]=Kmt.PROCESSING;let a=new Lma;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Sma,e[Cti].socket.write(a.createFrame(vma.CLOSE)),e[jmt]=Kmt.SENT,e[yQe]=_Qe.CLOSING}else e[yQe]=_Qe.CLOSING}function _ti(e){this.ws[mti].write(e)||this.pause()}function yti(){let{ws:e}=this,{[Cti]:t}=e;t.socket.off("data",_ti),t.socket.off("close",yti),t.socket.off("error",bti);let r=e[jmt]===Kmt.SENT&&e[hti],n=1005,a="",o=e[mti].closingInfo;o&&!o.error?(n=o.code??1005,a=o.reason):e[hti]||(n=1006),e[yQe]=_Qe.CLOSED,Bma("close",e,(l,A)=>new Dma(l,A),{wasClean:r,code:n,reason:a}),CTe.close.hasSubscribers&&CTe.close.publish({websocket:e,code:n,reason:a})}function bti(e){let{ws:t}=this;t[yQe]=_Qe.CLOSING,CTe.socketError.hasSubscribers&&CTe.socketError.publish(e),this.destroy()}Eti.exports={establishWebSocketConnection:Vma,closeWebSocketConnection:Wma}});var vti=H((iou,Sti)=>{"use strict";var{createInflateRaw:Oma,Z_DEFAULT_WINDOWBITS:Pma}=Et("node:zlib"),{isValidClientWindowBits:Mma}=mQe(),Hma=Buffer.from([0,0,255,255]),zmt=Symbol("kBuffer"),qmt=Symbol("kLength"),TEr=class{#e;#t={};constructor(t){this.#t.serverNoContextTakeover=t.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=t.get("server_max_window_bits")}decompress(t,r,n){if(!this.#e){let a=Pma;if(this.#t.serverMaxWindowBits){if(!Mma(this.#t.serverMaxWindowBits)){n(new Error("Invalid server_max_window_bits"));return}a=Number.parseInt(this.#t.serverMaxWindowBits)}this.#e=Oma({windowBits:a}),this.#e[zmt]=[],this.#e[qmt]=0,this.#e.on("data",o=>{this.#e[zmt].push(o),this.#e[qmt]+=o.length}),this.#e.on("error",o=>{this.#e=null,n(o)})}this.#e.write(t),r&&this.#e.write(Hma),this.#e.flush(()=>{let a=Buffer.concat(this.#e[zmt],this.#e[qmt]);this.#e[zmt].length=0,this.#e[qmt]=0,n(null,a)})}};Sti.exports={PerMessageDeflate:TEr}});var Zti=H((sou,Fti)=>{"use strict";var{Writable:Yma}=Et("node:stream"),Qma=Et("node:assert"),{parserStates:gV,opcodes:_Te,states:Xma,emptyBuffer:Bti,sentCloseFrameState:wti}=Vhe(),{kReadyState:Jma,kSentClose:Tti,kResponse:Rti,kReceivedClose:Nti}=fQe(),{channels:$mt}=Gwe(),{isValidStatusCode:Uma,isValidOpcode:Kma,failWebsocketConnection:QM,websocketMessageReceived:Dti,utf8Decode:jma,isControlFrame:kti,isTextBinaryFrame:REr,isContinuationFrame:zma}=mQe(),{WebsocketFrameSend:xti}=Umt(),{closeWebSocketConnection:Gti}=wEr(),{PerMessageDeflate:qma}=vti(),NEr=class extends Yma{#e=[];#t=0;#n=!1;#r=gV.INFO;#i={};#s=[];#o;constructor(t,r){super(),this.ws=t,this.#o=r??new Map,this.#o.has("permessage-deflate")&&this.#o.set("permessage-deflate",new qma(r))}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.#n=!0,this.run(n)}run(t){for(;this.#n;)if(this.#r===gV.INFO){if(this.#t<2)return t();let r=this.consume(2),n=(r[0]&128)!==0,a=r[0]&15,o=(r[1]&128)===128,l=!n&&a!==_Te.CONTINUATION,A=r[1]&127,f=r[0]&64,I=r[0]&32,C=r[0]&16;if(!Kma(a))return QM(this.ws,"Invalid opcode received"),t();if(o)return QM(this.ws,"Frame cannot be masked"),t();if(f!==0&&!this.#o.has("permessage-deflate")){QM(this.ws,"Expected RSV1 to be clear.");return}if(I!==0||C!==0){QM(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(l&&!REr(a)){QM(this.ws,"Invalid frame type was fragmented.");return}if(REr(a)&&this.#s.length>0){QM(this.ws,"Expected continuation frame");return}if(this.#i.fragmented&&l){QM(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((A>125||l)&&kti(a)){QM(this.ws,"Control frame either too large or fragmented");return}if(zma(a)&&this.#s.length===0&&!this.#i.compressed){QM(this.ws,"Unexpected continuation frame");return}A<=125?(this.#i.payloadLength=A,this.#r=gV.READ_DATA):A===126?this.#r=gV.PAYLOADLENGTH_16:A===127&&(this.#r=gV.PAYLOADLENGTH_64),REr(a)&&(this.#i.binaryType=a,this.#i.compressed=f!==0),this.#i.opcode=a,this.#i.masked=o,this.#i.fin=n,this.#i.fragmented=l}else if(this.#r===gV.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#i.payloadLength=r.readUInt16BE(0),this.#r=gV.READ_DATA}else if(this.#r===gV.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){QM(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#i.payloadLength=(n<<8)+a,this.#r=gV.READ_DATA}else if(this.#r===gV.READ_DATA){if(this.#t{if(n){Gti(this.ws,1007,n.message,n.message.length);return}if(this.#s.push(a),!this.#i.fin){this.#r=gV.INFO,this.#n=!0,this.run(t);return}Dti(this.ws,this.#i.binaryType,Buffer.concat(this.#s)),this.#n=!0,this.#r=gV.INFO,this.#s.length=0,this.run(t)}),this.#n=!1;break}else{if(this.#s.push(r),!this.#i.fragmented&&this.#i.fin){let n=Buffer.concat(this.#s);Dti(this.ws,this.#i.binaryType,n),this.#s.length=0}this.#r=gV.INFO}}}consume(t){if(t>this.#t)throw new Error("Called consume() before buffers satiated.");if(t===0)return Bti;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t){Qma(t.length!==1);let r;if(t.length>=2&&(r=t.readUInt16BE(0)),r!==void 0&&!Uma(r))return{code:1002,reason:"Invalid status code",error:!0};let n=t.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=jma(n)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:n,error:!1}}parseControlFrame(t){let{opcode:r,payloadLength:n}=this.#i;if(r===_Te.CLOSE){if(n===1)return QM(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#i.closeInfo=this.parseCloseBody(t),this.#i.closeInfo.error){let{code:a,reason:o}=this.#i.closeInfo;return Gti(this.ws,a,o,o.length),QM(this.ws,o),!1}if(this.ws[Tti]!==wti.SENT){let a=Bti;this.#i.closeInfo.code&&(a=Buffer.allocUnsafe(2),a.writeUInt16BE(this.#i.closeInfo.code,0));let o=new xti(a);this.ws[Rti].socket.write(o.createFrame(_Te.CLOSE),l=>{l||(this.ws[Tti]=wti.SENT)})}return this.ws[Jma]=Xma.CLOSING,this.ws[Nti]=!0,!1}else if(r===_Te.PING){if(!this.ws[Nti]){let a=new xti(t);this.ws[Rti].socket.write(a.createFrame(_Te.PONG)),$mt.ping.hasSubscribers&&$mt.ping.publish({payload:t})}}else r===_Te.PONG&&$mt.pong.hasSubscribers&&$mt.pong.publish({payload:t});return!0}get closingInfo(){return this.#i.closeInfo}};Fti.exports={ByteParser:NEr}});var Pti=H((oou,Oti)=>{"use strict";var{WebsocketFrameSend:$ma}=Umt(),{opcodes:Lti,sendHints:yTe}=Vhe(),eCa=Hyr(),Vti=Buffer[Symbol.species],DEr=class{#e=new eCa;#t=!1;#n;constructor(t){this.#n=t}add(t,r,n){if(n!==yTe.blob){let o=Wti(t,n);if(!this.#t)this.#n.write(o,r);else{let l={promise:null,callback:r,frame:o};this.#e.push(l)}return}let a={promise:t.arrayBuffer().then(o=>{a.promise=null,a.frame=Wti(o,n)}),callback:r,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let t=this.#e;for(;!t.isEmpty();){let r=t.shift();r.promise!==null&&await r.promise,this.#n.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function Wti(e,t){return new $ma(tCa(e,t)).createFrame(t===yTe.string?Lti.TEXT:Lti.BINARY)}function tCa(e,t){switch(t){case yTe.string:return Buffer.from(e);case yTe.arrayBuffer:case yTe.blob:return new Vti(e);case yTe.typedArray:return new Vti(e.buffer,e.byteOffset,e.byteLength)}}Oti.exports={SendQueue:DEr}});var jti=H((aou,Kti)=>{"use strict";var{webidl:lI}=Lk(),{URLSerializer:rCa}=oV(),{environmentSettingsObject:Mti}=sP(),{staticPropertyDescriptors:kae,states:bQe,sentCloseFrameState:nCa,sendHints:eCt}=Vhe(),{kWebSocketURL:Hti,kReadyState:kEr,kController:iCa,kBinaryType:tCt,kResponse:Yti,kSentClose:sCa,kByteParser:oCa}=fQe(),{isConnecting:aCa,isEstablished:cCa,isClosing:lCa,isValidSubprotocol:uCa,fireEvent:Qti}=mQe(),{establishWebSocketConnection:gCa,closeWebSocketConnection:Xti}=wEr(),{ByteParser:ACa}=Zti(),{kEnumerableProperty:XM,isBlobLike:Jti}=wm(),{getGlobalDispatcher:dCa}=Imt(),{types:Uti}=Et("node:util"),{ErrorEvent:pCa,CloseEvent:fCa}=hTe(),{SendQueue:ICa}=Pti(),gP=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";#i;constructor(t,r=[]){super();let n="WebSocket constructor";lI.argumentLengthCheck(arguments,1,n);let a=lI.converters["DOMString or sequence or WebSocketInit"](r,n,"options");t=lI.converters.USVString(t,n,"url"),r=a.protocols;let o=Mti.settingsObject.baseUrl,l;try{l=new URL(t,o)}catch(f){throw new DOMException(f,"SyntaxError")}if(l.protocol==="http:"?l.protocol="ws:":l.protocol==="https:"&&(l.protocol="wss:"),l.protocol!=="ws:"&&l.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${l.protocol}`,"SyntaxError");if(l.hash||l.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(f=>f.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(f=>uCa(f)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[Hti]=new URL(l.href);let A=Mti.settingsObject;this[iCa]=gCa(l,r,A,this,(f,I)=>this.#s(f,I),a),this[kEr]=e.CONNECTING,this[sCa]=nCa.NOT_SENT,this[tCt]="blob"}close(t=void 0,r=void 0){lI.brandCheck(this,e);let n="WebSocket.close";if(t!==void 0&&(t=lI.converters["unsigned short"](t,n,"code",{clamp:!0})),r!==void 0&&(r=lI.converters.USVString(r,n,"reason")),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new DOMException("invalid code","InvalidAccessError");let a=0;if(r!==void 0&&(a=Buffer.byteLength(r),a>123))throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError");Xti(this,t,r,a)}send(t){lI.brandCheck(this,e);let r="WebSocket.send";if(lI.argumentLengthCheck(arguments,1,r),t=lI.converters.WebSocketSendData(t,r,"data"),aCa(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!cCa(this)||lCa(this)))if(typeof t=="string"){let n=Buffer.byteLength(t);this.#t+=n,this.#i.add(t,()=>{this.#t-=n},eCt.string)}else Uti.isArrayBuffer(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},eCt.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},eCt.typedArray)):Jti(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},eCt.blob))}get readyState(){return lI.brandCheck(this,e),this[kEr]}get bufferedAmount(){return lI.brandCheck(this,e),this.#t}get url(){return lI.brandCheck(this,e),rCa(this[Hti])}get extensions(){return lI.brandCheck(this,e),this.#r}get protocol(){return lI.brandCheck(this,e),this.#n}get onopen(){return lI.brandCheck(this,e),this.#e.open}set onopen(t){lI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return lI.brandCheck(this,e),this.#e.error}set onerror(t){lI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return lI.brandCheck(this,e),this.#e.close}set onclose(t){lI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return lI.brandCheck(this,e),this.#e.message}set onmessage(t){lI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return lI.brandCheck(this,e),this[tCt]}set binaryType(t){lI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[tCt]="blob":this[tCt]=t}#s(t,r){this[Yti]=t;let n=new ACa(this,r);n.on("drain",hCa),n.on("error",mCa.bind(this)),t.socket.ws=this,this[oCa]=n,this.#i=new ICa(t.socket),this[kEr]=bQe.OPEN;let a=t.headersList.get("sec-websocket-extensions");a!==null&&(this.#r=a);let o=t.headersList.get("sec-websocket-protocol");o!==null&&(this.#n=o),Qti("open",this)}};gP.CONNECTING=gP.prototype.CONNECTING=bQe.CONNECTING;gP.OPEN=gP.prototype.OPEN=bQe.OPEN;gP.CLOSING=gP.prototype.CLOSING=bQe.CLOSING;gP.CLOSED=gP.prototype.CLOSED=bQe.CLOSED;Object.defineProperties(gP.prototype,{CONNECTING:kae,OPEN:kae,CLOSING:kae,CLOSED:kae,url:XM,readyState:XM,bufferedAmount:XM,onopen:XM,onerror:XM,onclose:XM,close:XM,onmessage:XM,binaryType:XM,send:XM,extensions:XM,protocol:XM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(gP,{CONNECTING:kae,OPEN:kae,CLOSING:kae,CLOSED:kae});lI.converters["sequence"]=lI.sequenceConverter(lI.converters.DOMString);lI.converters["DOMString or sequence"]=function(e,t,r){return lI.util.Type(e)==="Object"&&Symbol.iterator in e?lI.converters["sequence"](e):lI.converters.DOMString(e,t,r)};lI.converters.WebSocketInit=lI.dictionaryConverter([{key:"protocols",converter:lI.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:lI.converters.any,defaultValue:()=>dCa()},{key:"headers",converter:lI.nullableConverter(lI.converters.HeadersInit)}]);lI.converters["DOMString or sequence or WebSocketInit"]=function(e){return lI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?lI.converters.WebSocketInit(e):{protocols:lI.converters["DOMString or sequence"](e)}};lI.converters.WebSocketSendData=function(e){if(lI.util.Type(e)==="Object"){if(Jti(e))return lI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||Uti.isArrayBuffer(e))return lI.converters.BufferSource(e)}return lI.converters.USVString(e)};function hCa(){this.ws[Yti].socket.resume()}function mCa(e){let t,r;e instanceof fCa?(t=e.reason,r=e.code):t=e.message,Qti("error",this,()=>new pCa("error",{error:e,message:t})),Xti(this,r)}Kti.exports={WebSocket:gP}});var xEr=H((cou,zti)=>{"use strict";function CCa(e){return e.indexOf("\0")===-1}function _Ca(e){if(e.length===0)return!1;for(let t=0;t57)return!1;return!0}function yCa(e){return new Promise(t=>{setTimeout(t,e).unref()})}zti.exports={isValidLastEventId:CCa,isASCIINumber:_Ca,delay:yCa}});var tri=H((lou,eri)=>{"use strict";var{Transform:bCa}=Et("node:stream"),{isASCIINumber:qti,isValidLastEventId:$ti}=xEr(),cee=[239,187,191],GEr=10,rCt=13,ECa=58,SCa=32,FEr=class extends bCa{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(t={}){t.readableObjectMode=!0,super(t),this.state=t.eventSourceSettings||{},t.push&&(this.push=t.push)}_transform(t,r,n){if(t.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,t]):this.buffer=t,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===cee[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===cee[0]&&this.buffer[1]===cee[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===cee[0]&&this.buffer[1]===cee[1]&&this.buffer[2]===cee[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===cee[0]&&this.buffer[1]===cee[1]&&this.buffer[2]===cee[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[a]=o);break}}processEvent(t){t.retry&&qti(t.retry)&&(this.state.reconnectionTime=parseInt(t.retry,10)),t.id&&$ti(t.id)&&(this.state.lastEventId=t.id),t.data!==void 0&&this.push({type:t.event||"message",options:{data:t.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};eri.exports={EventSourceStream:FEr}});var lri=H((uou,cri)=>{"use strict";var{pipeline:vCa}=Et("node:stream"),{fetching:BCa}=gQe(),{makeRequest:wCa}=gTe(),{webidl:xae}=Lk(),{EventSourceStream:TCa}=tri(),{parseMIMEType:RCa}=oV(),{createFastMessageEvent:NCa}=hTe(),{isNetworkError:rri}=lQe(),{delay:DCa}=xEr(),{kEnumerableProperty:Whe}=wm(),{environmentSettingsObject:nri}=sP(),iri=!1,sri=3e3,EQe=0,ori=1,SQe=2,kCa="anonymous",xCa="use-credentials",bTe=class e extends EventTarget{#e={open:null,error:null,message:null};#t=null;#n=!1;#r=EQe;#i=null;#s=null;#o;#g;constructor(t,r={}){super();let n="EventSource constructor";xae.argumentLengthCheck(arguments,1,n),iri||(iri=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),t=xae.converters.USVString(t,n,"url"),r=xae.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#o=r.dispatcher,this.#g={lastEventId:"",reconnectionTime:sri};let a=nri,o;try{o=new URL(t,a.settingsObject.baseUrl),this.#g.origin=o.origin}catch(f){throw new DOMException(f,"SyntaxError")}this.#t=o.href;let l=kCa;r.withCredentials&&(l=xCa,this.#n=!0);let A={redirect:"follow",keepalive:!0,mode:"cors",credentials:l==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};A.client=nri.settingsObject,A.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],A.cache="no-store",A.initiator="other",A.urlList=[new URL(this.#t)],this.#i=wCa(A),this.#l()}get readyState(){return this.#r}get url(){return this.#t}get withCredentials(){return this.#n}#l(){if(this.#r===SQe)return;this.#r=EQe;let t={request:this.#i,dispatcher:this.#o},r=n=>{rri(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#u()};t.processResponseEndOfBody=r,t.processResponse=n=>{if(rri(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#u();return}let a=n.headersList.get("content-type",!0),o=a!==null?RCa(a):"failure",l=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||l===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#r=ori,this.dispatchEvent(new Event("open")),this.#g.origin=n.urlList[n.urlList.length-1].origin;let A=new TCa({eventSourceSettings:this.#g,push:f=>{this.dispatchEvent(NCa(f.type,f.options))}});vCa(n.body.stream,A,f=>{f?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#s=BCa(t)}async#u(){this.#r!==SQe&&(this.#r=EQe,this.dispatchEvent(new Event("error")),await DCa(this.#g.reconnectionTime),this.#r===EQe&&(this.#g.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#g.lastEventId,!0),this.#l()))}close(){xae.brandCheck(this,e),this.#r!==SQe&&(this.#r=SQe,this.#s.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(t){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(t){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(t){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}},ari={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:EQe,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:ori,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:SQe,writable:!1}};Object.defineProperties(bTe,ari);Object.defineProperties(bTe.prototype,ari);Object.defineProperties(bTe.prototype,{close:Whe,onerror:Whe,onmessage:Whe,onopen:Whe,readyState:Whe,url:Whe,withCredentials:Whe});xae.converters.EventSourceInitDict=xae.dictionaryConverter([{key:"withCredentials",converter:xae.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:xae.converters.any}]);cri.exports={EventSource:bTe,defaultReconnectionTime:sri}});var dri=H((gou,Tf)=>{"use strict";var GCa=UYe(),uri=vYe(),FCa=$we(),ZCa=_zn(),LCa=eTe(),VCa=abr(),WCa=Lzn(),OCa=Hzn(),gri=X0(),iCt=wm(),{InvalidArgumentError:nCt}=gri,ETe=Rqn(),PCa=wYe(),MCa=Mbr(),HCa=u$n(),YCa=Qbr(),QCa=Rbr(),XCa=omt(),{getGlobalDispatcher:Ari,setGlobalDispatcher:JCa}=Imt(),UCa=Kbr(),KCa=Kht(),jCa=jht();Object.assign(uri.prototype,ETe);Tf.exports.Dispatcher=uri;Tf.exports.Client=GCa;Tf.exports.Pool=FCa;Tf.exports.BalancedPool=ZCa;Tf.exports.Agent=LCa;Tf.exports.ProxyAgent=VCa;Tf.exports.EnvHttpProxyAgent=WCa;Tf.exports.RetryAgent=OCa;Tf.exports.RetryHandler=XCa;Tf.exports.DecoratorHandler=UCa;Tf.exports.RedirectHandler=KCa;Tf.exports.createRedirectInterceptor=jCa;Tf.exports.interceptors={redirect:h$n(),retry:C$n(),dump:y$n()};Tf.exports.buildConnector=PCa;Tf.exports.errors=gri;Tf.exports.util={parseHeaders:iCt.parseHeaders,headerNameToString:iCt.headerNameToString};function vQe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new nCt("invalid url");if(r!=null&&typeof r!="object")throw new nCt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new nCt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(iCt.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=iCt.parseURL(t);let{agent:a,dispatcher:o=Ari()}=r;if(a)throw new nCt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Tf.exports.setGlobalDispatcher=JCa;Tf.exports.getGlobalDispatcher=Ari;var zCa=gQe().fetch;Tf.exports.fetch=async function(t,r=void 0){try{return await zCa(t,r)}catch(n){throw n&&typeof n=="object"&&Error.captureStackTrace(n),n}};Tf.exports.Headers=khe().Headers;Tf.exports.Response=lQe().Response;Tf.exports.Request=gTe().Request;Tf.exports.FormData=GYe().FormData;Tf.exports.File=globalThis.File??Et("node:buffer").File;Tf.exports.FileReader=Fei().FileReader;var{setGlobalOrigin:qCa,getGlobalOrigin:$Ca}=lyr();Tf.exports.setGlobalOrigin=qCa;Tf.exports.getGlobalOrigin=$Ca;var{CacheStorage:e_a}=Yei(),{kConstruct:t_a}=Lmt();Tf.exports.caches=new e_a(t_a);var{deleteCookie:r_a,getCookies:n_a,getSetCookies:i_a,setCookie:s_a}=rti();Tf.exports.deleteCookie=r_a;Tf.exports.getCookies=n_a;Tf.exports.getSetCookies=i_a;Tf.exports.setCookie=s_a;var{parseMIMEType:o_a,serializeAMimeType:a_a}=oV();Tf.exports.parseMIMEType=o_a;Tf.exports.serializeAMimeType=a_a;var{CloseEvent:c_a,ErrorEvent:l_a,MessageEvent:u_a}=hTe();Tf.exports.WebSocket=jti().WebSocket;Tf.exports.CloseEvent=c_a;Tf.exports.ErrorEvent=l_a;Tf.exports.MessageEvent=u_a;Tf.exports.request=vQe(ETe.request);Tf.exports.stream=vQe(ETe.stream);Tf.exports.pipeline=vQe(ETe.pipeline);Tf.exports.connect=vQe(ETe.connect);Tf.exports.upgrade=vQe(ETe.upgrade);Tf.exports.MockClient=MCa;Tf.exports.MockPool=YCa;Tf.exports.MockAgent=HCa;Tf.exports.mockErrors=QCa;var{EventSource:g_a}=lri();Tf.exports.EventSource=g_a});var Iri=H(pT=>{"use strict";var A_a=pT&&pT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),d_a=pT&&pT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),p_a=pT&&pT.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&A_a(t,e,r);return d_a(t,e),t},f_a=pT&&pT.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(pT,"__esModule",{value:!0});pT.getApiBaseUrl=pT.getProxyFetch=pT.getProxyAgentDispatcher=pT.getProxyAgent=pT.getAuthString=void 0;var pri=p_a(R6n()),I_a=dri();function h_a(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof t.auth=="string"?t.auth:`token ${e}`}pT.getAuthString=h_a;function m_a(e){return new pri.HttpClient().getAgent(e)}pT.getProxyAgent=m_a;function fri(e){return new pri.HttpClient().getAgentDispatcher(e)}pT.getProxyAgentDispatcher=fri;function C_a(e){let t=fri(e);return(n,a)=>f_a(this,void 0,void 0,function*(){return(0,I_a.fetch)(n,Object.assign(Object.assign({},a),{dispatcher:t}))})}pT.getProxyFetch=C_a;function __a(){return process.env.GITHUB_API_URL||"https://api.github.com"}pT.getApiBaseUrl=__a});var BQe=H(ZEr=>{"use strict";Object.defineProperty(ZEr,"__esModule",{value:!0});function y_a(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}ZEr.getUserAgent=y_a});var Cri=H((pou,mri)=>{mri.exports=hri;function hri(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce(function(a,o){return hri.bind(null,e,o,a,n)},r)():Promise.resolve().then(function(){return e.registry[t]?e.registry[t].reduce(function(a,o){return o.hook.bind(null,a,n)},r)():r(n)})}});var yri=H((fou,_ri)=>{_ri.exports=b_a;function b_a(e,t,r,n){var a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=function(o,l){return Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))}),t==="after"&&(n=function(o,l){var A;return Promise.resolve().then(o.bind(null,l)).then(function(f){return A=f,a(A,l)}).then(function(){return A})}),t==="error"&&(n=function(o,l){return Promise.resolve().then(o.bind(null,l)).catch(function(A){return a(A,l)})}),e.registry[r].push({hook:n,orig:a})}});var Eri=H((Iou,bri)=>{bri.exports=E_a;function E_a(e,t,r){if(e.registry[t]){var n=e.registry[t].map(function(a){return a.orig}).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}}});var Nri=H((hou,wQe)=>{var wri=Cri(),S_a=yri(),v_a=Eri(),Sri=Function.bind,vri=Sri.bind(Sri);function Tri(e,t,r){var n=vri(v_a,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(function(a){var o=r?[t,a,r]:[t,a];e[a]=e.api[a]=vri(S_a,null).apply(null,o)})}function B_a(){var e="h",t={registry:{}},r=wri.bind(null,t,e);return Tri(r,t,e),r}function Rri(){var e={registry:{}},t=wri.bind(null,e);return Tri(t,e),t}var Bri=!1;function STe(){return Bri||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),Bri=!0),Rri()}STe.Singular=B_a.bind();STe.Collection=Rri.bind();wQe.exports=STe;wQe.exports.Hook=STe;wQe.exports.Singular=STe.Singular;wQe.exports.Collection=STe.Collection});var Wri=H((mou,Vri)=>{"use strict";var WEr=Object.defineProperty,w_a=Object.getOwnPropertyDescriptor,T_a=Object.getOwnPropertyNames,R_a=Object.prototype.hasOwnProperty,N_a=(e,t)=>{for(var r in t)WEr(e,r,{get:t[r],enumerable:!0})},D_a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of T_a(t))!R_a.call(e,a)&&a!==r&&WEr(e,a,{get:()=>t[a],enumerable:!(n=w_a(t,a))||n.enumerable});return e},k_a=e=>D_a(WEr({},"__esModule",{value:!0}),e),xri={};N_a(xri,{endpoint:()=>J_a});Vri.exports=k_a(xri);var x_a=BQe(),G_a="9.0.5",F_a=`octokit-endpoint.js/${G_a} ${(0,x_a.getUserAgent)()}`,Z_a={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":F_a},mediaType:{format:""}};function L_a(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function V_a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function Gri(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{V_a(t[n])?n in e?r[n]=Gri(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function Dri(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function VEr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=L_a(r.headers),Dri(r),Dri(r.headers);let n=Gri(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function W_a(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var O_a=/\{[^}]+\}/g;function P_a(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function M_a(e){let t=e.match(O_a);return t?t.map(P_a).reduce((r,n)=>r.concat(n),[]):[]}function kri(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function Fri(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function BTe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function TQe(e,t,r){return t=e==="+"||e==="#"?Fri(t):BTe(t),r?BTe(r)+"="+t:t}function vTe(e){return e!=null}function LEr(e){return e===";"||e==="&"||e==="?"}function H_a(e,t,r,n){var a=e[r],o=[];if(vTe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(TQe(t,a,LEr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(vTe).forEach(function(l){o.push(TQe(t,l,LEr(t)?r:""))}):Object.keys(a).forEach(function(l){vTe(a[l])&&o.push(TQe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(vTe).forEach(function(A){l.push(TQe(t,A))}):Object.keys(a).forEach(function(A){vTe(a[A])&&(l.push(BTe(A)),l.push(TQe(t,a[A].toString())))}),LEr(t)?o.push(BTe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?vTe(a)&&o.push(BTe(r)):a===""&&(t==="&"||t==="?")?o.push(BTe(r)+"="):a===""&&o.push("");return o}function Y_a(e){return{expand:Q_a.bind(null,e)}}function Q_a(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(H_a(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return Fri(o)}),e==="/"?e:e.replace(/\/$/,"")}function Zri(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=kri(e,["method","baseUrl","url","headers","request","mediaType"]),l=M_a(r);r=Y_a(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=kri(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=W_a(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function X_a(e,t,r){return Zri(VEr(e,t,r))}function Lri(e,t){let r=VEr(e,t),n=X_a.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:Lri.bind(null,r),merge:VEr.bind(null,r),parse:Zri})}var J_a=Lri(null,Z_a)});var Ori=H(PEr=>{"use strict";Object.defineProperty(PEr,"__esModule",{value:!0});var OEr=class extends Error{constructor(t){super(t),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}};PEr.Deprecation=OEr});var Xri=H((_ou,Qri)=>{"use strict";var U_a=Object.create,sCt=Object.defineProperty,K_a=Object.getOwnPropertyDescriptor,j_a=Object.getOwnPropertyNames,z_a=Object.getPrototypeOf,q_a=Object.prototype.hasOwnProperty,$_a=(e,t)=>{for(var r in t)sCt(e,r,{get:t[r],enumerable:!0})},Mri=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of j_a(t))!q_a.call(e,a)&&a!==r&&sCt(e,a,{get:()=>t[a],enumerable:!(n=K_a(t,a))||n.enumerable});return e},e0a=(e,t,r)=>(r=e!=null?U_a(z_a(e)):{},Mri(t||!e||!e.__esModule?sCt(r,"default",{value:e,enumerable:!0}):r,e)),t0a=e=>Mri(sCt({},"__esModule",{value:!0}),e),Hri={};$_a(Hri,{RequestError:()=>i0a});Qri.exports=t0a(Hri);var Pri=Ori(),Yri=e0a(Ogt()),r0a=(0,Yri.default)(e=>console.warn(e)),n0a=(0,Yri.default)(e=>console.warn(e)),i0a=class extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t;let n;"headers"in r&&typeof r.headers<"u"&&(n=r.headers),"response"in r&&(this.response=r.response,n=r.response.headers);let a=Object.assign({},r.request);r.request.headers.authorization&&(a.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a,Object.defineProperty(this,"code",{get(){return r0a(new Pri.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),Object.defineProperty(this,"headers",{get(){return n0a(new Pri.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),n||{}}})}}});var NQe=H((bou,Kri)=>{"use strict";var YEr=Object.defineProperty,s0a=Object.getOwnPropertyDescriptor,o0a=Object.getOwnPropertyNames,a0a=Object.prototype.hasOwnProperty,c0a=(e,t)=>{for(var r in t)YEr(e,r,{get:t[r],enumerable:!0})},l0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of o0a(t))!a0a.call(e,a)&&a!==r&&YEr(e,a,{get:()=>t[a],enumerable:!(n=s0a(t,a))||n.enumerable});return e},u0a=e=>l0a(YEr({},"__esModule",{value:!0}),e),Uri={};c0a(Uri,{request:()=>h0a});Kri.exports=u0a(Uri);var g0a=Wri(),A0a=BQe(),d0a="8.4.0";function p0a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var RQe=Xri();function f0a(e){return e.arrayBuffer()}function Jri(e){var t,r,n,a;let o=e.request&&e.request.log?e.request.log:console,l=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==!1;(p0a(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let A={},f,I,{fetch:C}=globalThis;if((r=e.request)!=null&&r.fetch&&(C=e.request.fetch),!C)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");return C(e.url,{method:e.method,body:e.body,redirect:(n=e.request)==null?void 0:n.redirect,headers:e.headers,signal:(a=e.request)==null?void 0:a.signal,...e.body&&{duplex:"half"}}).then(async b=>{I=b.url,f=b.status;for(let E of b.headers)A[E[0]]=E[1];if("deprecation"in A){let E=A.link&&A.link.match(/<([^>]+)>; rel="deprecation"/),N=E&&E.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${A.sunset}${N?`. See ${N}`:""}`)}if(!(f===204||f===205)){if(e.method==="HEAD"){if(f<400)return;throw new RQe.RequestError(b.statusText,f,{response:{url:I,status:f,headers:A,data:void 0},request:e})}if(f===304)throw new RQe.RequestError("Not modified",f,{response:{url:I,status:f,headers:A,data:await MEr(b)},request:e});if(f>=400){let E=await MEr(b);throw new RQe.RequestError(I0a(E),f,{response:{url:I,status:f,headers:A,data:E},request:e})}return l?await MEr(b):b.body}}).then(b=>({status:f,url:I,headers:A,data:b})).catch(b=>{if(b instanceof RQe.RequestError)throw b;if(b.name==="AbortError")throw b;let E=b.message;throw b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause)),new RQe.RequestError(E,500,{request:e})})}async function MEr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():f0a(e)}function I0a(e){if(typeof e=="string")return e;let t;return"documentation_url"in e?t=` - ${e.documentation_url}`:t="","message"in e?Array.isArray(e.errors)?`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`:`${e.message}${t}`:`Unknown error: ${JSON.stringify(e)}`}function HEr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return Jri(r.parse(l));let A=(f,I)=>Jri(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:HEr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:HEr.bind(null,r)})}var h0a=HEr(g0a.endpoint,{headers:{"user-agent":`octokit-request.js/${d0a} ${(0,A0a.getUserAgent)()}`}})});var eni=H((vou,$ri)=>{"use strict";var QEr=Object.defineProperty,m0a=Object.getOwnPropertyDescriptor,C0a=Object.getOwnPropertyNames,_0a=Object.prototype.hasOwnProperty,y0a=(e,t)=>{for(var r in t)QEr(e,r,{get:t[r],enumerable:!0})},b0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of C0a(t))!_0a.call(e,a)&&a!==r&&QEr(e,a,{get:()=>t[a],enumerable:!(n=m0a(t,a))||n.enumerable});return e},E0a=e=>b0a(QEr({},"__esModule",{value:!0}),e),zri={};y0a(zri,{GraphqlResponseError:()=>qri,graphql:()=>D0a,withCustomRequest:()=>k0a});$ri.exports=E0a(zri);var S0a=NQe(),v0a=BQe(),B0a="7.1.0",Eou=NQe(),Sou=NQe();function w0a(e){return`Request failed due to following response errors: +`.trim())}};f$n.exports=Ubr});var pmt=H((hou,_$n)=>{"use strict";var h$n=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:afa}=J0(),cfa=eTe();C$n()===void 0&&m$n(new cfa);function m$n(e){if(!e||typeof e.dispatch!="function")throw new afa("Argument agent must implement Agent");Object.defineProperty(globalThis,h$n,{value:e,writable:!0,enumerable:!1,configurable:!1})}function C$n(){return globalThis[h$n]}_$n.exports={setGlobalDispatcher:m$n,getGlobalDispatcher:C$n}});var Kbr=H((Cou,y$n)=>{"use strict";y$n.exports=class{#e;constructor(t){if(typeof t!="object"||t===null)throw new TypeError("handler must be an object");this.#e=t}onConnect(...t){return this.#e.onConnect?.(...t)}onError(...t){return this.#e.onError?.(...t)}onUpgrade(...t){return this.#e.onUpgrade?.(...t)}onResponseStarted(...t){return this.#e.onResponseStarted?.(...t)}onHeaders(...t){return this.#e.onHeaders?.(...t)}onData(...t){return this.#e.onData?.(...t)}onComplete(...t){return this.#e.onComplete?.(...t)}onBodySent(...t){return this.#e.onBodySent?.(...t)}}});var E$n=H((_ou,b$n)=>{"use strict";var lfa=Jht();b$n.exports=e=>{let t=e?.maxRedirections;return r=>function(a,o){let{maxRedirections:l=t,...A}=a;if(!l)return r(a,o);let f=new lfa(r,l,a,o);return r(A,f)}}});var v$n=H((you,S$n)=>{"use strict";var ufa=imt();S$n.exports=e=>t=>function(n,a){return t(n,new ufa({...n,retryOptions:{...e,...n.retryOptions}},{handler:a,dispatch:t}))}});var w$n=H((bou,B$n)=>{"use strict";var gfa=wm(),{InvalidArgumentError:Afa,RequestAbortedError:dfa}=J0(),pfa=Kbr(),jbr=class extends pfa{#e=1024*1024;#t=null;#n=!1;#r=!1;#i=0;#s=null;#o=null;constructor({maxSize:t},r){if(super(r),t!=null&&(!Number.isFinite(t)||t<1))throw new Afa("maxSize must be a number greater than 0");this.#e=t??this.#e,this.#o=r}onConnect(t){this.#t=t,this.#o.onConnect(this.#g.bind(this))}#g(t){this.#r=!0,this.#s=t}onHeaders(t,r,n,a){let l=gfa.parseHeaders(r)["content-length"];if(l!=null&&l>this.#e)throw new dfa(`Response size (${l}) larger than maxSize (${this.#e})`);return this.#r?!0:this.#o.onHeaders(t,r,n,a)}onError(t){this.#n||(t=this.#s??t,this.#o.onError(t))}onData(t){return this.#i=this.#i+t.length,this.#i>=this.#e&&(this.#n=!0,this.#r?this.#o.onError(this.#s):this.#o.onComplete([])),!0}onComplete(t){if(!this.#n){if(this.#r){this.#o.onError(this.reason);return}this.#o.onComplete(t)}}};function ffa({maxSize:e}={maxSize:1024*1024}){return t=>function(n,a){let{dumpMaxSize:o=e}=n,l=new jbr({maxSize:o},a);return t(n,l)}}B$n.exports=ffa});var xhe=H((Eou,G$n)=>{"use strict";var{kConstruct:Ifa}=N2(),{kEnumerableProperty:lTe}=wm(),{iteratorMixin:hfa,isValidHeaderName:oQe,isValidHeaderValue:R$n}=aP(),{webidl:E_}=Vk(),zbr=Et("node:assert"),fmt=Et("node:util"),dT=Symbol("headers map"),lP=Symbol("headers map sorted");function T$n(e){return e===10||e===13||e===9||e===32}function N$n(e){let t=0,r=e.length;for(;r>t&&T$n(e.charCodeAt(r-1));)--r;for(;r>t&&T$n(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function D$n(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function qbr(e,t,r){if(r=N$n(r),oQe(t)){if(!R$n(r))throw E_.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw E_.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(x$n(e)==="immutable")throw new TypeError("immutable");return $br(e).append(t,r,!1)}function k$n(e,t){return e[0]>1),r[I][0]<=C[0]?f=I+1:A=I;if(o!==I){for(l=o;l>f;)r[l]=r[--l];r[f]=C}}if(!n.next().done)throw new TypeError("Unreachable");return r}else{let n=0;for(let{0:a,1:{value:o}}of this[dT])r[n++]=[a,o],zbr(o!==null);return r.sort(k$n)}}},jX=class e{#e;#t;constructor(t=void 0){t!==Ifa&&(this.#t=new Imt,this.#e="none",t!==void 0&&(t=E_.converters.HeadersInit(t,"Headers contructor","init"),D$n(this,t)))}append(t,r){E_.brandCheck(this,e),E_.argumentLengthCheck(arguments,2,"Headers.append");let n="Headers.append";return t=E_.converters.ByteString(t,n,"name"),r=E_.converters.ByteString(r,n,"value"),qbr(this,t,r)}delete(t){if(E_.brandCheck(this,e),E_.argumentLengthCheck(arguments,1,"Headers.delete"),t=E_.converters.ByteString(t,"Headers.delete","name"),!oQe(t))throw E_.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){E_.brandCheck(this,e),E_.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(t=E_.converters.ByteString(t,r,"name"),!oQe(t))throw E_.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.get(t,!1)}has(t){E_.brandCheck(this,e),E_.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(t=E_.converters.ByteString(t,r,"name"),!oQe(t))throw E_.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.contains(t,!1)}set(t,r){E_.brandCheck(this,e),E_.argumentLengthCheck(arguments,2,"Headers.set");let n="Headers.set";if(t=E_.converters.ByteString(t,n,"name"),r=E_.converters.ByteString(r,n,"value"),r=N$n(r),oQe(t)){if(!R$n(r))throw E_.errors.invalidArgument({prefix:n,value:r,type:"header value"})}else throw E_.errors.invalidArgument({prefix:n,value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(t,r,!1)}getSetCookie(){E_.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}get[lP](){if(this.#t[lP])return this.#t[lP];let t=[],r=this.#t.toSortedArray(),n=this.#t.cookies;if(n===null||n.length===1)return this.#t[lP]=r;for(let a=0;a>"](e,t,r,n.bind(e)):E_.converters["record"](e,t,r)}throw E_.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};G$n.exports={fill:D$n,compareHeaderName:k$n,Headers:jX,HeadersList:Imt,getHeadersGuard:x$n,setHeadersGuard:mfa,setHeadersList:Cfa,getHeadersList:$br}});var cQe=H((Sou,Y$n)=>{"use strict";var{Headers:O$n,HeadersList:F$n,fill:_fa,getHeadersGuard:yfa,setHeadersGuard:P$n,setHeadersList:M$n}=xhe(),{extractBody:Z$n,cloneBody:bfa,mixinBody:Efa,hasFinalizationRegistry:Sfa,streamRegistry:vfa,bodyUnusable:Bfa}=FYe(),eEr=wm(),L$n=Et("node:util"),{kEnumerableProperty:uP}=eEr,{isValidReasonPhrase:wfa,isCancelled:Tfa,isAborted:Rfa,isBlobLike:Nfa,serializeJavascriptValueToJSONString:Dfa,isErrorLike:kfa,isomorphicEncode:xfa,environmentSettingsObject:Gfa}=aP(),{redirectStatusSet:Ffa,nullBodyStatus:Zfa}=wYe(),{kState:Jv,kHeaders:aee}=mae(),{webidl:Qh}=Vk(),{FormData:Lfa}=xYe(),{URLSerializer:V$n}=aV(),{kConstruct:mmt}=N2(),tEr=Et("node:assert"),{types:Vfa}=Et("node:util"),Wfa=new TextEncoder("utf-8"),Ghe=class e{static error(){return aQe(Cmt(),"immutable")}static json(t,r={}){Qh.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=Qh.converters.ResponseInit(r));let n=Wfa.encode(Dfa(t)),a=Z$n(n),o=aQe(uTe({}),"response");return W$n(o,r,{body:a[0],type:"application/json"}),o}static redirect(t,r=302){Qh.argumentLengthCheck(arguments,1,"Response.redirect"),t=Qh.converters.USVString(t),r=Qh.converters["unsigned short"](r);let n;try{n=new URL(t,Gfa.settingsObject.baseUrl)}catch(l){throw new TypeError(`Failed to parse URL from ${t}`,{cause:l})}if(!Ffa.has(r))throw new RangeError(`Invalid status code ${r}`);let a=aQe(uTe({}),"immutable");a[Jv].status=r;let o=xfa(V$n(n));return a[Jv].headersList.append("location",o,!0),a}constructor(t=null,r={}){if(t===mmt)return;t!==null&&(t=Qh.converters.BodyInit(t)),r=Qh.converters.ResponseInit(r),this[Jv]=uTe({}),this[aee]=new O$n(mmt),P$n(this[aee],"response"),M$n(this[aee],this[Jv].headersList);let n=null;if(t!=null){let[a,o]=Z$n(t);n={body:a,type:o}}W$n(this,r,n)}get type(){return Qh.brandCheck(this,e),this[Jv].type}get url(){Qh.brandCheck(this,e);let t=this[Jv].urlList,r=t[t.length-1]??null;return r===null?"":V$n(r,!0)}get redirected(){return Qh.brandCheck(this,e),this[Jv].urlList.length>1}get status(){return Qh.brandCheck(this,e),this[Jv].status}get ok(){return Qh.brandCheck(this,e),this[Jv].status>=200&&this[Jv].status<=299}get statusText(){return Qh.brandCheck(this,e),this[Jv].statusText}get headers(){return Qh.brandCheck(this,e),this[aee]}get body(){return Qh.brandCheck(this,e),this[Jv].body?this[Jv].body.stream:null}get bodyUsed(){return Qh.brandCheck(this,e),!!this[Jv].body&&eEr.isDisturbed(this[Jv].body.stream)}clone(){if(Qh.brandCheck(this,e),Bfa(this))throw Qh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=rEr(this[Jv]);return aQe(t,yfa(this[aee]))}[L$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${L$n.formatWithOptions(r,n)}`}};Efa(Ghe);Object.defineProperties(Ghe.prototype,{type:uP,url:uP,status:uP,ok:uP,redirected:uP,statusText:uP,headers:uP,clone:uP,body:uP,bodyUsed:uP,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(Ghe,{json:uP,redirect:uP,error:uP});function rEr(e){if(e.internalResponse)return H$n(rEr(e.internalResponse),e.type);let t=uTe({...e,body:null});return e.body!=null&&(t.body=bfa(t,e.body)),t}function uTe(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new F$n(e?.headersList):new F$n,urlList:e?.urlList?[...e.urlList]:[]}}function Cmt(e){let t=kfa(e);return uTe({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function Ofa(e){return e.type==="error"&&e.status===0}function hmt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return tEr(!(n in t)),r[n]=a,!0}})}function H$n(e,t){if(t==="basic")return hmt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return hmt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return hmt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return hmt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});tEr(!1)}function Pfa(e,t=null){return tEr(Tfa(e)),Rfa(e)?Cmt(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:t})):Cmt(Object.assign(new DOMException("Request was cancelled."),{cause:t}))}function W$n(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!wfa(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[Jv].status=t.status),"statusText"in t&&t.statusText!=null&&(e[Jv].statusText=t.statusText),"headers"in t&&t.headers!=null&&_fa(e[aee],t.headers),r){if(Zfa.includes(e.status))throw Qh.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[Jv].body=r.body,r.type!=null&&!e[Jv].headersList.contains("content-type",!0)&&e[Jv].headersList.append("content-type",r.type,!0)}}function aQe(e,t){let r=new Ghe(mmt);return r[Jv]=e,r[aee]=new O$n(mmt),M$n(r[aee],e.headersList),P$n(r[aee],t),Sfa&&e.body?.stream&&vfa.register(r,new WeakRef(e.body.stream)),r}Qh.converters.ReadableStream=Qh.interfaceConverter(ReadableStream);Qh.converters.FormData=Qh.interfaceConverter(Lfa);Qh.converters.URLSearchParams=Qh.interfaceConverter(URLSearchParams);Qh.converters.XMLHttpRequestBodyInit=function(e,t,r){return typeof e=="string"?Qh.converters.USVString(e,t,r):Nfa(e)?Qh.converters.Blob(e,t,r,{strict:!1}):ArrayBuffer.isView(e)||Vfa.isArrayBuffer(e)?Qh.converters.BufferSource(e,t,r):eEr.isFormDataLike(e)?Qh.converters.FormData(e,t,r,{strict:!1}):e instanceof URLSearchParams?Qh.converters.URLSearchParams(e,t,r):Qh.converters.DOMString(e,t,r)};Qh.converters.BodyInit=function(e,t,r){return e instanceof ReadableStream?Qh.converters.ReadableStream(e,t,r):e?.[Symbol.asyncIterator]?e:Qh.converters.XMLHttpRequestBodyInit(e,t,r)};Qh.converters.ResponseInit=Qh.dictionaryConverter([{key:"status",converter:Qh.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:Qh.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:Qh.converters.HeadersInit}]);Y$n.exports={isNetworkError:Ofa,makeNetworkError:Cmt,makeResponse:uTe,makeAppropriateNetworkError:Pfa,filterResponse:H$n,Response:Ghe,cloneResponse:rEr,fromInnerResponse:aQe}});var U$n=H((vou,J$n)=>{"use strict";var{kConnected:Q$n,kSize:X$n}=N2(),nEr=class{constructor(t){this.value=t}deref(){return this.value[Q$n]===0&&this.value[X$n]===0?void 0:this.value}},iEr=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[Q$n]===0&&t[X$n]===0&&this.finalizer(r)})}unregister(t){}};J$n.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:nEr,FinalizationRegistry:iEr}):{WeakRef,FinalizationRegistry}}});var gTe=H((Bou,lei)=>{"use strict";var{extractBody:Mfa,mixinBody:Hfa,cloneBody:Yfa,bodyUnusable:K$n}=FYe(),{Headers:iei,fill:Qfa,HeadersList:Emt,setHeadersGuard:oEr,getHeadersGuard:Xfa,setHeadersList:sei,getHeadersList:j$n}=xhe(),{FinalizationRegistry:Jfa}=U$n()(),ymt=wm(),z$n=Et("node:util"),{isValidHTTPToken:Ufa,sameOrigin:q$n,environmentSettingsObject:_mt}=aP(),{forbiddenMethodsSet:Kfa,corsSafeListedMethodsSet:jfa,referrerPolicy:zfa,requestRedirect:qfa,requestMode:$fa,requestCredentials:eIa,requestCache:tIa,requestDuplex:rIa}=wYe(),{kEnumerableProperty:pT,normalizedMethodRecordsBase:nIa,normalizedMethodRecords:iIa}=ymt,{kHeaders:gP,kSignal:bmt,kState:Q1,kDispatcher:sEr}=mae(),{webidl:wf}=Vk(),{URLSerializer:sIa}=aV(),{kConstruct:Smt}=N2(),oIa=Et("node:assert"),{getMaxListeners:$$n,setMaxListeners:eei,getEventListeners:aIa,defaultMaxListeners:tei}=Et("node:events"),cIa=Symbol("abortController"),oei=new Jfa(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),vmt=new WeakMap;function rei(e){return t;function t(){let r=e.deref();if(r!==void 0){oei.unregister(t),this.removeEventListener("abort",t),r.abort(this.reason);let n=vmt.get(r.signal);if(n!==void 0){if(n.size!==0){for(let a of n){let o=a.deref();o!==void 0&&o.abort(this.reason)}n.clear()}vmt.delete(r.signal)}}}}var nei=!1,Tae=class e{constructor(t,r={}){if(t===Smt)return;let n="Request constructor";wf.argumentLengthCheck(arguments,1,n),t=wf.converters.RequestInfo(t,n,"input"),r=wf.converters.RequestInit(r,n,"init");let a=null,o=null,l=_mt.settingsObject.baseUrl,A=null;if(typeof t=="string"){this[sEr]=r.dispatcher;let J;try{J=new URL(t,l)}catch(ae){throw new TypeError("Failed to parse URL from "+t,{cause:ae})}if(J.username||J.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);a=Bmt({urlList:[J]}),o="cors"}else this[sEr]=r.dispatcher||t[sEr],oIa(t instanceof e),a=t[Q1],A=t[bmt];let f=_mt.settingsObject.origin,I="client";if(a.window?.constructor?.name==="EnvironmentSettingsObject"&&q$n(a.window,f)&&(I=a.window),r.window!=null)throw new TypeError(`'window' option '${I}' must be null`);"window"in r&&(I="no-window"),a=Bmt({method:a.method,headersList:a.headersList,unsafeRequest:a.unsafeRequest,client:_mt.settingsObject,window:I,priority:a.priority,origin:a.origin,referrer:a.referrer,referrerPolicy:a.referrerPolicy,mode:a.mode,credentials:a.credentials,cache:a.cache,redirect:a.redirect,integrity:a.integrity,keepalive:a.keepalive,reloadNavigation:a.reloadNavigation,historyNavigation:a.historyNavigation,urlList:[...a.urlList]});let C=Object.keys(r).length!==0;if(C&&(a.mode==="navigate"&&(a.mode="same-origin"),a.reloadNavigation=!1,a.historyNavigation=!1,a.origin="client",a.referrer="client",a.referrerPolicy="",a.url=a.urlList[a.urlList.length-1],a.urlList=[a.url]),r.referrer!==void 0){let J=r.referrer;if(J==="")a.referrer="no-referrer";else{let ae;try{ae=new URL(J,l)}catch(ne){throw new TypeError(`Referrer "${J}" is not a valid URL.`,{cause:ne})}ae.protocol==="about:"&&ae.hostname==="client"||f&&!q$n(ae,_mt.settingsObject.baseUrl)?a.referrer="client":a.referrer=ae}}r.referrerPolicy!==void 0&&(a.referrerPolicy=r.referrerPolicy);let b;if(r.mode!==void 0?b=r.mode:b=o,b==="navigate")throw wf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(b!=null&&(a.mode=b),r.credentials!==void 0&&(a.credentials=r.credentials),r.cache!==void 0&&(a.cache=r.cache),a.cache==="only-if-cached"&&a.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(a.redirect=r.redirect),r.integrity!=null&&(a.integrity=String(r.integrity)),r.keepalive!==void 0&&(a.keepalive=!!r.keepalive),r.method!==void 0){let J=r.method,ae=iIa[J];if(ae!==void 0)a.method=ae;else{if(!Ufa(J))throw new TypeError(`'${J}' is not a valid HTTP method.`);let ne=J.toUpperCase();if(Kfa.has(ne))throw new TypeError(`'${J}' HTTP method is unsupported.`);J=nIa[ne]??J,a.method=J}!nei&&a.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),nei=!0)}r.signal!==void 0&&(A=r.signal),this[Q1]=a;let E=new AbortController;if(this[bmt]=E.signal,A!=null){if(!A||typeof A.aborted!="boolean"||typeof A.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(A.aborted)E.abort(A.reason);else{this[cIa]=E;let J=new WeakRef(E),ae=rei(J);try{(typeof $$n=="function"&&$$n(A)===tei||aIa(A,"abort").length>=tei)&&eei(1500,A)}catch{}ymt.addAbortListener(A,ae),oei.register(E,{signal:A,abort:ae},ae)}}if(this[gP]=new iei(Smt),sei(this[gP],a.headersList),oEr(this[gP],"request"),b==="no-cors"){if(!jfa.has(a.method))throw new TypeError(`'${a.method} is unsupported in no-cors mode.`);oEr(this[gP],"request-no-cors")}if(C){let J=j$n(this[gP]),ae=r.headers!==void 0?r.headers:new Emt(J);if(J.clear(),ae instanceof Emt){for(let{name:ne,value:ce}of ae.rawValues())J.append(ne,ce,!1);J.cookies=ae.cookies}else Qfa(this[gP],ae)}let N=t instanceof e?t[Q1].body:null;if((r.body!=null||N!=null)&&(a.method==="GET"||a.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let B=null;if(r.body!=null){let[J,ae]=Mfa(r.body,a.keepalive);B=J,ae&&!j$n(this[gP]).contains("content-type",!0)&&this[gP].append("content-type",ae)}let F=B??N;if(F!=null&&F.source==null){if(B!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(a.mode!=="same-origin"&&a.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');a.useCORSPreflightFlag=!0}let Q=F;if(B==null&&N!=null){if(K$n(t))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let J=new TransformStream;N.stream.pipeThrough(J),Q={source:N.source,length:N.length,stream:J.readable}}this[Q1].body=Q}get method(){return wf.brandCheck(this,e),this[Q1].method}get url(){return wf.brandCheck(this,e),sIa(this[Q1].url)}get headers(){return wf.brandCheck(this,e),this[gP]}get destination(){return wf.brandCheck(this,e),this[Q1].destination}get referrer(){return wf.brandCheck(this,e),this[Q1].referrer==="no-referrer"?"":this[Q1].referrer==="client"?"about:client":this[Q1].referrer.toString()}get referrerPolicy(){return wf.brandCheck(this,e),this[Q1].referrerPolicy}get mode(){return wf.brandCheck(this,e),this[Q1].mode}get credentials(){return this[Q1].credentials}get cache(){return wf.brandCheck(this,e),this[Q1].cache}get redirect(){return wf.brandCheck(this,e),this[Q1].redirect}get integrity(){return wf.brandCheck(this,e),this[Q1].integrity}get keepalive(){return wf.brandCheck(this,e),this[Q1].keepalive}get isReloadNavigation(){return wf.brandCheck(this,e),this[Q1].reloadNavigation}get isHistoryNavigation(){return wf.brandCheck(this,e),this[Q1].historyNavigation}get signal(){return wf.brandCheck(this,e),this[bmt]}get body(){return wf.brandCheck(this,e),this[Q1].body?this[Q1].body.stream:null}get bodyUsed(){return wf.brandCheck(this,e),!!this[Q1].body&&ymt.isDisturbed(this[Q1].body.stream)}get duplex(){return wf.brandCheck(this,e),"half"}clone(){if(wf.brandCheck(this,e),K$n(this))throw new TypeError("unusable");let t=aei(this[Q1]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let n=vmt.get(this.signal);n===void 0&&(n=new Set,vmt.set(this.signal,n));let a=new WeakRef(r);n.add(a),ymt.addAbortListener(r.signal,rei(a))}return cei(t,r.signal,Xfa(this[gP]))}[z$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${z$n.formatWithOptions(r,n)}`}};Hfa(Tae);function Bmt(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new Emt(e.headersList):new Emt}}function aei(e){let t=Bmt({...e,body:null});return e.body!=null&&(t.body=Yfa(t,e.body)),t}function cei(e,t,r){let n=new Tae(Smt);return n[Q1]=e,n[bmt]=t,n[gP]=new iei(Smt),sei(n[gP],e.headersList),oEr(n[gP],r),n}Object.defineProperties(Tae.prototype,{method:pT,url:pT,headers:pT,redirect:pT,clone:pT,signal:pT,duplex:pT,destination:pT,body:pT,bodyUsed:pT,isHistoryNavigation:pT,isReloadNavigation:pT,keepalive:pT,integrity:pT,cache:pT,credentials:pT,attribute:pT,referrerPolicy:pT,referrer:pT,mode:pT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});wf.converters.Request=wf.interfaceConverter(Tae);wf.converters.RequestInfo=function(e,t,r){return typeof e=="string"?wf.converters.USVString(e,t,r):e instanceof Tae?wf.converters.Request(e,t,r):wf.converters.USVString(e,t,r)};wf.converters.AbortSignal=wf.interfaceConverter(AbortSignal);wf.converters.RequestInit=wf.dictionaryConverter([{key:"method",converter:wf.converters.ByteString},{key:"headers",converter:wf.converters.HeadersInit},{key:"body",converter:wf.nullableConverter(wf.converters.BodyInit)},{key:"referrer",converter:wf.converters.USVString},{key:"referrerPolicy",converter:wf.converters.DOMString,allowedValues:zfa},{key:"mode",converter:wf.converters.DOMString,allowedValues:$fa},{key:"credentials",converter:wf.converters.DOMString,allowedValues:eIa},{key:"cache",converter:wf.converters.DOMString,allowedValues:tIa},{key:"redirect",converter:wf.converters.DOMString,allowedValues:qfa},{key:"integrity",converter:wf.converters.DOMString},{key:"keepalive",converter:wf.converters.boolean},{key:"signal",converter:wf.nullableConverter(e=>wf.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:wf.converters.any},{key:"duplex",converter:wf.converters.DOMString,allowedValues:rIa},{key:"dispatcher",converter:wf.converters.any}]);lei.exports={Request:Tae,makeRequest:Bmt,fromInnerRequest:cei,cloneRequest:aei}});var uQe=H((wou,Sei)=>{"use strict";var{makeNetworkError:Ey,makeAppropriateNetworkError:wmt,filterResponse:aEr,makeResponse:Tmt,fromInnerResponse:lIa}=cQe(),{HeadersList:uei}=xhe(),{Request:uIa,cloneRequest:gIa}=gTe(),Rae=Et("node:zlib"),{bytesMatch:AIa,makePolicyContainer:dIa,clonePolicyContainer:pIa,requestBadPort:fIa,TAOCheck:IIa,appendRequestOriginHeader:hIa,responseLocationURL:mIa,requestCurrentURL:z8,setRequestReferrerPolicyOnRedirect:CIa,tryUpgradeRequestToAPotentiallyTrustworthyURL:_Ia,createOpaqueTimingInfo:AEr,appendFetchMetadata:yIa,corsCheck:bIa,crossOriginResourcePolicyCheck:EIa,determineRequestsReferrer:SIa,coarsenedSharedCurrentTime:lQe,createDeferredPromise:vIa,isBlobLike:BIa,sameOrigin:gEr,isCancelled:Fhe,isAborted:gei,isErrorLike:wIa,fullyReadBody:TIa,readableStreamClose:RIa,isomorphicEncode:Rmt,urlIsLocal:NIa,urlIsHttpHttpsScheme:dEr,urlHasHttpsScheme:DIa,clampAndCoarsenConnectionTimingInfo:kIa,simpleRangeHeaderValue:xIa,buildContentRange:GIa,createInflate:FIa,extractMimeType:ZIa}=aP(),{kState:fei,kDispatcher:LIa}=mae(),Zhe=Et("node:assert"),{safelyExtractBody:pEr,extractBody:Aei}=FYe(),{redirectStatusSet:Iei,nullBodyStatus:hei,safeMethodsSet:VIa,requestBodyHeader:WIa,subresourceSet:OIa}=wYe(),PIa=Et("node:events"),{Readable:MIa,pipeline:HIa,finished:YIa}=Et("node:stream"),{addAbortListener:QIa,isErrored:XIa,isReadable:Nmt,bufferToLowerCasedHeaderName:dei}=wm(),{dataURLProcessor:JIa,serializeAMimeType:UIa,minimizeSupportedMimeType:KIa}=aV(),{getGlobalDispatcher:jIa}=pmt(),{webidl:zIa}=Vk(),{STATUS_CODES:qIa}=Et("node:http"),$Ia=["GET","HEAD"],eha=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",cEr,Dmt=class extends PIa{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function tha(e){mei(e,"fetch")}function rha(e,t=void 0){zIa.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=vIa(),n;try{n=new uIa(e,t)}catch(C){return r.reject(C),r.promise}let a=n[fei];if(n.signal.aborted)return lEr(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=!1,f=null;return QIa(n.signal,()=>{A=!0,Zhe(f!=null),f.abort(n.signal.reason);let C=l?.deref();lEr(r,a,C,n.signal.reason)}),f=_ei({request:a,processResponseEndOfBody:tha,processResponse:C=>{if(!A){if(C.aborted){lEr(r,a,l,f.serializedAbortReason);return}if(C.type==="error"){r.reject(new TypeError("fetch failed",{cause:C.error}));return}l=new WeakRef(lIa(C,"immutable")),r.resolve(l.deref()),r=null}},dispatcher:n[LIa]}),r.promise}function mei(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;dEr(r)&&n!==null&&(e.timingAllowPassed||(n=AEr({startTime:n.startTime}),a=""),n.endTime=lQe(),e.timingInfo=n,Cei(n,r.href,t,globalThis,a))}var Cei=performance.markResourceTiming;function lEr(e,t,r,n){if(e&&e.reject(n),t.body!=null&&Nmt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[fei];a.body!=null&&Nmt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function _ei({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A=jIa()}){Zhe(A);let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=lQe(I),b=AEr({startTime:C}),E={controller:new Dmt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return Zhe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=pIa(e.client.policyContainer):e.policyContainer=dIa()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,OIa.has(e.destination),yei(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function yei(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!NIa(z8(r))&&(n=Ey("local URLs only")),_Ia(r),fIa(r)==="blocked"&&(n=Ey("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=SIa(r)),n===null&&(n=await(async()=>{let o=z8(r);return gEr(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await pei(e)):r.mode==="same-origin"?Ey('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?Ey('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await pei(e)):dEr(z8(r))?(r.responseTainting="cors",await bei(e)):Ey("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=aEr(n,"basic"):r.responseTainting==="cors"?n=aEr(n,"cors"):r.responseTainting==="opaque"?n=aEr(n,"opaque"):Zhe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range",!0)&&(n=a=Ey()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||hei.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>uEr(e,Ey(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!AIa(A,r.integrity)){o("integrity mismatch");return}n.body=pEr(A)[0],uEr(e,n)};await TIa(n.body,l,o)}else uEr(e,n)}function pei(e){if(Fhe(e)&&e.request.redirectCount===0)return Promise.resolve(wmt(e));let{request:t}=e,{protocol:r}=z8(t);switch(r){case"about:":return Promise.resolve(Ey("about scheme is not supported"));case"blob:":{cEr||(cEr=Et("node:buffer").resolveObjectURL);let n=z8(t);if(n.search.length!==0)return Promise.resolve(Ey("NetworkError when attempting to fetch resource."));let a=cEr(n.toString());if(t.method!=="GET"||!BIa(a))return Promise.resolve(Ey("invalid method"));let o=Tmt(),l=a.size,A=Rmt(`${l}`),f=a.type;if(t.headersList.contains("range",!0)){o.rangeRequested=!0;let I=t.headersList.get("range",!0),C=xIa(I,!0);if(C==="failure")return Promise.resolve(Ey("failed to fetch the data URL"));let{rangeStartValue:b,rangeEndValue:E}=C;if(b===null)b=l-E,E=b+E-1;else{if(b>=l)return Promise.resolve(Ey("Range start is greater than the blob's size."));(E===null||E>=l)&&(E=l-1)}let N=a.slice(b,E,f),B=Aei(N);o.body=B[0];let F=Rmt(`${N.size}`),Q=GIa(b,E,l);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",F,!0),o.headersList.set("content-type",f,!0),o.headersList.set("content-range",Q,!0)}else{let I=Aei(a);o.statusText="OK",o.body=I[0],o.headersList.set("content-length",A,!0),o.headersList.set("content-type",f,!0)}return Promise.resolve(o)}case"data:":{let n=z8(t),a=JIa(n);if(a==="failure")return Promise.resolve(Ey("failed to fetch the data URL"));let o=UIa(a.mimeType);return Promise.resolve(Tmt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:pEr(a.body)[0]}))}case"file:":return Promise.resolve(Ey("not implemented... yet..."));case"http:":case"https:":return bei(e).catch(n=>Ey(n));default:return Promise.resolve(Ey("unknown scheme"))}}function nha(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function uEr(e,t){let r=e.timingInfo,n=()=>{let o=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=r),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;r.endTime=o;let A=t.cacheState,f=t.bodyInfo;t.timingAllowPassed||(r=AEr(r),A="");let I=0;if(e.request.mode!=="navigator"||!t.hasCrossOriginRedirects){I=t.status;let C=ZIa(t.headersList);C!=="failure"&&(f.contentType=KIa(C))}e.request.initiatorType!=null&&Cei(r,e.request.url.href,e.request.initiatorType,globalThis,A,f,I)};let l=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>l())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let a=t.type==="error"?t:t.internalResponse??t;a.body==null?n():YIa(a.body.stream,()=>{n()})}async function bei(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await Eei(e),t.responseTainting==="cors"&&bIa(t,r)==="failure")return Ey("cors failure");IIa(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&EIa(t.origin,t.client,t.destination,n)==="blocked"?Ey("blocked"):(Iei.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),t.redirect==="error"?r=Ey("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await iha(e,r):Zhe(!1)),r.timingInfo=a,r)}function iha(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=mIa(n,z8(r).hash),a==null)return t}catch(l){return Promise.resolve(Ey(l))}if(!dEr(a))return Promise.resolve(Ey("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(Ey("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!gEr(r,a))return Promise.resolve(Ey('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(Ey('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(Ey());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!$Ia.includes(r.method)){r.method="GET",r.body=null;for(let l of WIa)r.headersList.delete(l)}gEr(z8(r),a)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(Zhe(r.body.source!=null),r.body=pEr(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=lQe(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),CIa(r,n),yei(e,!0)}async function Eei(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=gIa(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=Rmt(`${C}`)),b!=null&&o.headersList.append("content-length",b,!0),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",Rmt(o.referrer.href),!0),hIa(o),yIa(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",eha),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||(DIa(z8(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),A==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,l==null){if(o.cache==="only-if-cached")return Ey("only if cached");let E=await sha(a,I,r);!VIa.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?Ey():Fhe(e)?wmt(e):Ey("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(Fhe(e))return wmt(e);e.controller.connection.destroy(),l=await Eei(e,t,!0)}return l}async function sha(e,t=!1,r=!1){Zhe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B,F=!0){this.destroyed||(this.destroyed=!0,F&&this.abort?.(B??new DOMException("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(J){Fhe(e)||(yield J,e.processRequestBodyChunkLength?.(J.byteLength))},F=()=>{Fhe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=J=>{Fhe(e)||(J.name==="AbortError"?e.controller.abort():e.controller.terminate(J))};f=async function*(){try{for await(let J of n.body.stream)yield*B(J);F()}catch(J){Q(J)}}()}try{let{body:B,status:F,statusText:Q,headersList:J,socket:ae}=await N({body:f});if(ae)a=Tmt({status:F,statusText:Q,headersList:J,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=Tmt({status:F,statusText:Q,headersList:J})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),wmt(e,B)):Ey(B)}let I=async()=>{await e.controller.resume()},C=B=>{Fhe(e)||e.controller.abort(B)},b=new ReadableStream({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)},type:"bytes"});a.body={stream:b,source:null,length:null},e.controller.onAborted=E,e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:J,value:ae}=await e.controller.next();if(gei(e))break;B=J?void 0:ae}catch(J){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=J,F=!0)}if(B===void 0){RIa(e.controller.controller),nha(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}let Q=new Uint8Array(B);if(Q.byteLength&&e.controller.controller.enqueue(Q),XIa(b)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function E(B){gei(e)?(a.aborted=!0,Nmt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):Nmt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:wIa(B)?B:void 0})),e.controller.connection.destroy()}return a;function N({body:B}){let F=z8(n),Q=e.controller.dispatcher;return new Promise((J,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:Q.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;o.finalConnectionTimingInfo=kIa(void 0,o.postRedirectStartTime,e.crossOriginIsolatedCapability),ce.destroyed?ne(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne),o.finalNetworkRequestStartTime=lQe(e.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=lQe(e.crossOriginIsolatedCapability)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new uei;for(let Le=0;LeLe.trim())),be=Se.get("location",!0),this.body=new MIa({read:fe});let k=[],tt=be&&n.redirect==="follow"&&Iei.has(ne);if(de.length!==0&&n.method!=="HEAD"&&n.method!=="CONNECT"&&!hei.includes(ne)&&!tt)for(let Le=0;Le{Le&&this.onError(Le)}).on("error",ze):this.body.on("error",ze)}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new uei;for(let de=0;de{"use strict";vei.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var wei=H((Rou,Bei)=>{"use strict";var{webidl:AP}=Vk(),kmt=Symbol("ProgressEvent state"),IEr=class e extends Event{constructor(t,r={}){t=AP.converters.DOMString(t,"ProgressEvent constructor","type"),r=AP.converters.ProgressEventInit(r??{}),super(t,r),this[kmt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return AP.brandCheck(this,e),this[kmt].lengthComputable}get loaded(){return AP.brandCheck(this,e),this[kmt].loaded}get total(){return AP.brandCheck(this,e),this[kmt].total}};AP.converters.ProgressEventInit=AP.dictionaryConverter([{key:"lengthComputable",converter:AP.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:AP.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:AP.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:AP.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:AP.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:AP.converters.boolean,defaultValue:()=>!1}]);Bei.exports={ProgressEvent:IEr}});var Rei=H((Nou,Tei)=>{"use strict";function oha(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}Tei.exports={getEncoding:oha}});var Lei=H((Dou,Zei)=>{"use strict";var{kState:ATe,kError:hEr,kResult:Nei,kAborted:gQe,kLastProgressEventFired:mEr}=fEr(),{ProgressEvent:aha}=wei(),{getEncoding:Dei}=Rei(),{serializeAMimeType:cha,parseMIMEType:kei}=aV(),{types:lha}=Et("node:util"),{StringDecoder:xei}=Et("string_decoder"),{btoa:Gei}=Et("node:buffer"),uha={enumerable:!0,writable:!1,configurable:!1};function gha(e,t,r,n){if(e[ATe]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[ATe]="loading",e[Nei]=null,e[hEr]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[gQe];)try{let{done:I,value:C}=await A;if(f&&!e[gQe]&&queueMicrotask(()=>{Nae("loadstart",e)}),f=!1,!I&&lha.isUint8Array(C))l.push(C),(e[mEr]===void 0||Date.now()-e[mEr]>=50)&&!e[gQe]&&(e[mEr]=Date.now(),queueMicrotask(()=>{Nae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[ATe]="done";try{let b=Aha(l,r,t.type,n);if(e[gQe])return;e[Nei]=b,Nae("load",e)}catch(b){e[hEr]=b,Nae("error",e)}e[ATe]!=="loading"&&Nae("loadend",e)});break}}catch(I){if(e[gQe])return;queueMicrotask(()=>{e[ATe]="done",e[hEr]=I,Nae("error",e),e[ATe]!=="loading"&&Nae("loadend",e)});break}})()}function Nae(e,t){let r=new aha(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function Aha(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=kei(r||"application/octet-stream");o!=="failure"&&(a+=cha(o)),a+=";base64,";let l=new xei("latin1");for(let A of e)a+=Gei(l.write(A));return a+=Gei(l.end()),a}case"Text":{let a="failure";if(n&&(a=Dei(n)),a==="failure"&&r){let o=kei(r);o!=="failure"&&(a=Dei(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),dha(e,a)}case"ArrayBuffer":return Fei(e).buffer;case"BinaryString":{let a="",o=new xei("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function dha(e,t){let r=Fei(e),n=pha(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function pha(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function Fei(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}Zei.exports={staticPropertyDescriptors:uha,readOperation:gha,fireAProgressEvent:Nae}});var Pei=H((kou,Oei)=>{"use strict";var{staticPropertyDescriptors:dTe,readOperation:xmt,fireAProgressEvent:Vei}=Lei(),{kState:Lhe,kError:Wei,kResult:Gmt,kEvents:_0,kAborted:fha}=fEr(),{webidl:ab}=Vk(),{kEnumerableProperty:uV}=wm(),zX=class e extends EventTarget{constructor(){super(),this[Lhe]="empty",this[Gmt]=null,this[Wei]=null,this[_0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){ab.brandCheck(this,e),ab.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),t=ab.converters.Blob(t,{strict:!1}),xmt(this,t,"ArrayBuffer")}readAsBinaryString(t){ab.brandCheck(this,e),ab.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),t=ab.converters.Blob(t,{strict:!1}),xmt(this,t,"BinaryString")}readAsText(t,r=void 0){ab.brandCheck(this,e),ab.argumentLengthCheck(arguments,1,"FileReader.readAsText"),t=ab.converters.Blob(t,{strict:!1}),r!==void 0&&(r=ab.converters.DOMString(r,"FileReader.readAsText","encoding")),xmt(this,t,"Text",r)}readAsDataURL(t){ab.brandCheck(this,e),ab.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),t=ab.converters.Blob(t,{strict:!1}),xmt(this,t,"DataURL")}abort(){if(this[Lhe]==="empty"||this[Lhe]==="done"){this[Gmt]=null;return}this[Lhe]==="loading"&&(this[Lhe]="done",this[Gmt]=null),this[fha]=!0,Vei("abort",this),this[Lhe]!=="loading"&&Vei("loadend",this)}get readyState(){switch(ab.brandCheck(this,e),this[Lhe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return ab.brandCheck(this,e),this[Gmt]}get error(){return ab.brandCheck(this,e),this[Wei]}get onloadend(){return ab.brandCheck(this,e),this[_0].loadend}set onloadend(t){ab.brandCheck(this,e),this[_0].loadend&&this.removeEventListener("loadend",this[_0].loadend),typeof t=="function"?(this[_0].loadend=t,this.addEventListener("loadend",t)):this[_0].loadend=null}get onerror(){return ab.brandCheck(this,e),this[_0].error}set onerror(t){ab.brandCheck(this,e),this[_0].error&&this.removeEventListener("error",this[_0].error),typeof t=="function"?(this[_0].error=t,this.addEventListener("error",t)):this[_0].error=null}get onloadstart(){return ab.brandCheck(this,e),this[_0].loadstart}set onloadstart(t){ab.brandCheck(this,e),this[_0].loadstart&&this.removeEventListener("loadstart",this[_0].loadstart),typeof t=="function"?(this[_0].loadstart=t,this.addEventListener("loadstart",t)):this[_0].loadstart=null}get onprogress(){return ab.brandCheck(this,e),this[_0].progress}set onprogress(t){ab.brandCheck(this,e),this[_0].progress&&this.removeEventListener("progress",this[_0].progress),typeof t=="function"?(this[_0].progress=t,this.addEventListener("progress",t)):this[_0].progress=null}get onload(){return ab.brandCheck(this,e),this[_0].load}set onload(t){ab.brandCheck(this,e),this[_0].load&&this.removeEventListener("load",this[_0].load),typeof t=="function"?(this[_0].load=t,this.addEventListener("load",t)):this[_0].load=null}get onabort(){return ab.brandCheck(this,e),this[_0].abort}set onabort(t){ab.brandCheck(this,e),this[_0].abort&&this.removeEventListener("abort",this[_0].abort),typeof t=="function"?(this[_0].abort=t,this.addEventListener("abort",t)):this[_0].abort=null}};zX.EMPTY=zX.prototype.EMPTY=0;zX.LOADING=zX.prototype.LOADING=1;zX.DONE=zX.prototype.DONE=2;Object.defineProperties(zX.prototype,{EMPTY:dTe,LOADING:dTe,DONE:dTe,readAsArrayBuffer:uV,readAsBinaryString:uV,readAsText:uV,readAsDataURL:uV,abort:uV,readyState:uV,result:uV,error:uV,onloadstart:uV,onprogress:uV,onload:uV,onabort:uV,onerror:uV,onloadend:uV,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(zX,{EMPTY:dTe,LOADING:dTe,DONE:dTe});Oei.exports={FileReader:zX}});var Fmt=H((xou,Mei)=>{"use strict";Mei.exports={kConstruct:N2().kConstruct}});var Qei=H((Gou,Yei)=>{"use strict";var Iha=Et("node:assert"),{URLSerializer:Hei}=aV(),{isValidHeaderName:hha}=aP();function mha(e,t,r=!1){let n=Hei(e,r),a=Hei(t,r);return n===a}function Cha(e){Iha(e!==null);let t=[];for(let r of e.split(","))r=r.trim(),hha(r)&&t.push(r);return t}Yei.exports={urlEquals:mha,getFieldValues:Cha}});var Uei=H((Fou,Jei)=>{"use strict";var{kConstruct:_ha}=Fmt(),{urlEquals:yha,getFieldValues:CEr}=Qei(),{kEnumerableProperty:Vhe,isDisturbed:bha}=wm(),{webidl:Tp}=Vk(),{Response:Eha,cloneResponse:Sha,fromInnerResponse:vha}=cQe(),{Request:cee,fromInnerRequest:Bha}=gTe(),{kState:qX}=mae(),{fetching:wha}=uQe(),{urlIsHttpHttpsScheme:Zmt,createDeferredPromise:pTe,readAllBytes:Tha}=aP(),_Er=Et("node:assert"),Lmt=class e{#e;constructor(){arguments[0]!==_ha&&Tp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Tp.brandCheck(this,e);let n="Cache.match";Tp.argumentLengthCheck(arguments,1,n),t=Tp.converters.RequestInfo(t,n,"request"),r=Tp.converters.CacheQueryOptions(r,n,"options");let a=this.#i(t,r,1);if(a.length!==0)return a[0]}async matchAll(t=void 0,r={}){Tp.brandCheck(this,e);let n="Cache.matchAll";return t!==void 0&&(t=Tp.converters.RequestInfo(t,n,"request")),r=Tp.converters.CacheQueryOptions(r,n,"options"),this.#i(t,r)}async add(t){Tp.brandCheck(this,e);let r="Cache.add";Tp.argumentLengthCheck(arguments,1,r),t=Tp.converters.RequestInfo(t,r,"request");let n=[t];return await this.addAll(n)}async addAll(t){Tp.brandCheck(this,e);let r="Cache.addAll";Tp.argumentLengthCheck(arguments,1,r);let n=[],a=[];for(let E of t){if(E===void 0)throw Tp.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(E=Tp.converters.RequestInfo(E),typeof E=="string")continue;let N=E[qX];if(!Zmt(N.url)||N.method!=="GET")throw Tp.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let E of t){let N=new cee(E)[qX];if(!Zmt(N.url))throw Tp.errors.exception({header:r,message:"Expected http/s scheme."});N.initiator="fetch",N.destination="subresource",a.push(N);let B=pTe();o.push(wha({request:N,processResponse(F){if(F.type==="error"||F.status===206||F.status<200||F.status>299)B.reject(Tp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(F.headersList.contains("vary")){let Q=CEr(F.headersList.get("vary"));for(let J of Q)if(J==="*"){B.reject(Tp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let ae of o)ae.abort();return}}},processResponseEndOfBody(F){if(F.aborted){B.reject(new DOMException("aborted","AbortError"));return}B.resolve(F)}})),n.push(B.promise)}let A=await Promise.all(n),f=[],I=0;for(let E of A){let N={type:"put",request:a[I],response:E};f.push(N),I++}let C=pTe(),b=null;try{this.#t(f)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve(void 0):C.reject(b)}),C.promise}async put(t,r){Tp.brandCheck(this,e);let n="Cache.put";Tp.argumentLengthCheck(arguments,2,n),t=Tp.converters.RequestInfo(t,n,"request"),r=Tp.converters.Response(r,n,"response");let a=null;if(t instanceof cee?a=t[qX]:a=new cee(t)[qX],!Zmt(a.url)||a.method!=="GET")throw Tp.errors.exception({header:n,message:"Expected an http/s scheme when method is not GET"});let o=r[qX];if(o.status===206)throw Tp.errors.exception({header:n,message:"Got 206 status"});if(o.headersList.contains("vary")){let N=CEr(o.headersList.get("vary"));for(let B of N)if(B==="*")throw Tp.errors.exception({header:n,message:"Got * vary field value"})}if(o.body&&(bha(o.body.stream)||o.body.stream.locked))throw Tp.errors.exception({header:n,message:"Response body is locked or disturbed"});let l=Sha(o),A=pTe();if(o.body!=null){let B=o.body.stream.getReader();Tha(B).then(A.resolve,A.reject)}else A.resolve(void 0);let f=[],I={type:"put",request:a,response:l};f.push(I);let C=await A.promise;l.body!=null&&(l.body.source=C);let b=pTe(),E=null;try{this.#t(f)}catch(N){E=N}return queueMicrotask(()=>{E===null?b.resolve():b.reject(E)}),b.promise}async delete(t,r={}){Tp.brandCheck(this,e);let n="Cache.delete";Tp.argumentLengthCheck(arguments,1,n),t=Tp.converters.RequestInfo(t,n,"request"),r=Tp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t instanceof cee){if(a=t[qX],a.method!=="GET"&&!r.ignoreMethod)return!1}else _Er(typeof t=="string"),a=new cee(t)[qX];let o=[],l={type:"delete",request:a,options:r};o.push(l);let A=pTe(),f=null,I;try{I=this.#t(o)}catch(C){f=C}return queueMicrotask(()=>{f===null?A.resolve(!!I?.length):A.reject(f)}),A.promise}async keys(t=void 0,r={}){Tp.brandCheck(this,e);let n="Cache.keys";t!==void 0&&(t=Tp.converters.RequestInfo(t,n,"request")),r=Tp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t!==void 0)if(t instanceof cee){if(a=t[qX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new cee(t)[qX]);let o=pTe(),l=[];if(t===void 0)for(let A of this.#e)l.push(A[0]);else{let A=this.#n(a,r);for(let f of A)l.push(f[0])}return queueMicrotask(()=>{let A=[];for(let f of l){let I=Bha(f,new AbortController().signal,"immutable");A.push(I)}o.resolve(Object.freeze(A))}),o.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);_Er(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!Zmt(f.url))throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Tp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);_Er(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!yha(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=CEr(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}#i(t,r,n=1/0){let a=null;if(t!==void 0)if(t instanceof cee){if(a=t[qX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new cee(t)[qX]);let o=[];if(t===void 0)for(let A of this.#e)o.push(A[1]);else{let A=this.#n(a,r);for(let f of A)o.push(f[1])}let l=[];for(let A of o){let f=vha(A,"immutable");if(l.push(f.clone()),l.length>=n)break}return Object.freeze(l)}};Object.defineProperties(Lmt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:Vhe,matchAll:Vhe,add:Vhe,addAll:Vhe,put:Vhe,delete:Vhe,keys:Vhe});var Xei=[{key:"ignoreSearch",converter:Tp.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:Tp.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:Tp.converters.boolean,defaultValue:()=>!1}];Tp.converters.CacheQueryOptions=Tp.dictionaryConverter(Xei);Tp.converters.MultiCacheQueryOptions=Tp.dictionaryConverter([...Xei,{key:"cacheName",converter:Tp.converters.DOMString}]);Tp.converters.Response=Tp.interfaceConverter(Eha);Tp.converters["sequence"]=Tp.sequenceConverter(Tp.converters.RequestInfo);Jei.exports={Cache:Lmt}});var jei=H((Zou,Kei)=>{"use strict";var{kConstruct:AQe}=Fmt(),{Cache:Vmt}=Uei(),{webidl:KZ}=Vk(),{kEnumerableProperty:dQe}=wm(),Wmt=class e{#e=new Map;constructor(){arguments[0]!==AQe&&KZ.illegalConstructor()}async match(t,r={}){if(KZ.brandCheck(this,e),KZ.argumentLengthCheck(arguments,1,"CacheStorage.match"),t=KZ.converters.RequestInfo(t),r=KZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new Vmt(AQe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new Vmt(AQe,n).match(t,r);if(o!==void 0)return o}}async has(t){KZ.brandCheck(this,e);let r="CacheStorage.has";return KZ.argumentLengthCheck(arguments,1,r),t=KZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)}async open(t){KZ.brandCheck(this,e);let r="CacheStorage.open";if(KZ.argumentLengthCheck(arguments,1,r),t=KZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)){let a=this.#e.get(t);return new Vmt(AQe,a)}let n=[];return this.#e.set(t,n),new Vmt(AQe,n)}async delete(t){KZ.brandCheck(this,e);let r="CacheStorage.delete";return KZ.argumentLengthCheck(arguments,1,r),t=KZ.converters.DOMString(t,r,"cacheName"),this.#e.delete(t)}async keys(){return KZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(Wmt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:dQe,has:dQe,open:dQe,delete:dQe,keys:dQe});Kei.exports={CacheStorage:Wmt}});var qei=H((Lou,zei)=>{"use strict";zei.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var yEr=H((Vou,nti)=>{"use strict";function Rha(e){for(let t=0;t=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function $ei(e){for(let t=0;t126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function eti(e){let t=e.length,r=0;if(e[0]==='"'){if(t===1||e[t-1]!=='"')throw new Error("Invalid cookie value");--t,++r}for(;r126||n===34||n===44||n===59||n===92)throw new Error("Invalid cookie value")}}function tti(e){for(let t=0;tt.toString().padStart(2,"0"));function rti(e){return typeof e=="number"&&(e=new Date(e)),`${Dha[e.getUTCDay()]}, ${Omt[e.getUTCDate()]} ${kha[e.getUTCMonth()]} ${e.getUTCFullYear()} ${Omt[e.getUTCHours()]}:${Omt[e.getUTCMinutes()]}:${Omt[e.getUTCSeconds()]} GMT`}function xha(e){if(e<0)throw new Error("Invalid cookie max-age")}function Gha(e){if(e.name.length===0)return null;$ei(e.name),eti(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(xha(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Nha(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(tti(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${rti(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}nti.exports={isCTLExcludingHtab:Rha,validateCookieName:$ei,validateCookiePath:tti,validateCookieValue:eti,toIMFDate:rti,stringify:Gha}});var sti=H((Wou,iti)=>{"use strict";var{maxNameValuePairSize:Fha,maxAttributeValueSize:Zha}=qei(),{isCTLExcludingHtab:Lha}=yEr(),{collectASequenceOfCodePointsFast:Pmt}=aV(),Vha=Et("node:assert");function Wha(e){if(Lha(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=Pmt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=Pmt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>Fha?null:{name:n,value:a,...fTe(r)}}function fTe(e,t={}){if(e.length===0)return t;Vha(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=Pmt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=Pmt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>Zha)return fTe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return fTe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return fTe(e,t)}iti.exports={parseSetCookie:Wha,parseUnparsedAttributes:fTe}});var cti=H((Oou,ati)=>{"use strict";var{parseSetCookie:Oha}=sti(),{stringify:Pha}=yEr(),{webidl:aC}=Vk(),{Headers:Mmt}=xhe();function Mha(e){aC.argumentLengthCheck(arguments,1,"getCookies"),aC.brandCheck(e,Mmt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function Hha(e,t,r){aC.brandCheck(e,Mmt,{strict:!1});let n="deleteCookie";aC.argumentLengthCheck(arguments,2,n),t=aC.converters.DOMString(t,n,"name"),r=aC.converters.DeleteCookieAttributes(r),oti(e,{name:t,value:"",expires:new Date(0),...r})}function Yha(e){aC.argumentLengthCheck(arguments,1,"getSetCookies"),aC.brandCheck(e,Mmt,{strict:!1});let t=e.getSetCookie();return t?t.map(r=>Oha(r)):[]}function oti(e,t){aC.argumentLengthCheck(arguments,2,"setCookie"),aC.brandCheck(e,Mmt,{strict:!1}),t=aC.converters.Cookie(t);let r=Pha(t);r&&e.append("Set-Cookie",r)}aC.converters.DeleteCookieAttributes=aC.dictionaryConverter([{converter:aC.nullableConverter(aC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.DOMString),key:"domain",defaultValue:()=>null}]);aC.converters.Cookie=aC.dictionaryConverter([{converter:aC.converters.DOMString,key:"name"},{converter:aC.converters.DOMString,key:"value"},{converter:aC.nullableConverter(e=>typeof e=="number"?aC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.boolean),key:"secure",defaultValue:()=>null},{converter:aC.nullableConverter(aC.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:aC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:aC.sequenceConverter(aC.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);ati.exports={getCookies:Mha,deleteCookie:Hha,getSetCookies:Yha,setCookie:oti}});var hTe=H((Pou,uti)=>{"use strict";var{webidl:Mp}=Vk(),{kEnumerableProperty:gV}=wm(),{kConstruct:lti}=N2(),{MessagePort:Qha}=Et("node:worker_threads"),ITe=class e extends Event{#e;constructor(t,r={}){if(t===lti){super(arguments[1],arguments[2]);return}let n="MessageEvent constructor";Mp.argumentLengthCheck(arguments,1,n),t=Mp.converters.DOMString(t,n,"type"),r=Mp.converters.MessageEventInit(r,n,"eventInitDict"),super(t,r),this.#e=r}get data(){return Mp.brandCheck(this,e),this.#e.data}get origin(){return Mp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Mp.brandCheck(this,e),this.#e.lastEventId}get source(){return Mp.brandCheck(this,e),this.#e.source}get ports(){return Mp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Mp.brandCheck(this,e),Mp.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}static createFastMessageEvent(t,r){let n=new e(lti,t,r);return n.#e=r,n.#e.data??=null,n.#e.origin??="",n.#e.lastEventId??="",n.#e.source??=null,n.#e.ports??=[],n}},{createFastMessageEvent:Xha}=ITe;delete ITe.createFastMessageEvent;var Hmt=class e extends Event{#e;constructor(t,r={}){let n="CloseEvent constructor";Mp.argumentLengthCheck(arguments,1,n),t=Mp.converters.DOMString(t,n,"type"),r=Mp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Mp.brandCheck(this,e),this.#e.wasClean}get code(){return Mp.brandCheck(this,e),this.#e.code}get reason(){return Mp.brandCheck(this,e),this.#e.reason}},Ymt=class e extends Event{#e;constructor(t,r){let n="ErrorEvent constructor";Mp.argumentLengthCheck(arguments,1,n),super(t,r),t=Mp.converters.DOMString(t,n,"type"),r=Mp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Mp.brandCheck(this,e),this.#e.message}get filename(){return Mp.brandCheck(this,e),this.#e.filename}get lineno(){return Mp.brandCheck(this,e),this.#e.lineno}get colno(){return Mp.brandCheck(this,e),this.#e.colno}get error(){return Mp.brandCheck(this,e),this.#e.error}};Object.defineProperties(ITe.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:gV,origin:gV,lastEventId:gV,source:gV,ports:gV,initMessageEvent:gV});Object.defineProperties(Hmt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:gV,code:gV,wasClean:gV});Object.defineProperties(Ymt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:gV,filename:gV,lineno:gV,colno:gV,error:gV});Mp.converters.MessagePort=Mp.interfaceConverter(Qha);Mp.converters["sequence"]=Mp.sequenceConverter(Mp.converters.MessagePort);var bEr=[{key:"bubbles",converter:Mp.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Mp.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Mp.converters.boolean,defaultValue:()=>!1}];Mp.converters.MessageEventInit=Mp.dictionaryConverter([...bEr,{key:"data",converter:Mp.converters.any,defaultValue:()=>null},{key:"origin",converter:Mp.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:Mp.converters.DOMString,defaultValue:()=>""},{key:"source",converter:Mp.nullableConverter(Mp.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:Mp.converters["sequence"],defaultValue:()=>new Array(0)}]);Mp.converters.CloseEventInit=Mp.dictionaryConverter([...bEr,{key:"wasClean",converter:Mp.converters.boolean,defaultValue:()=>!1},{key:"code",converter:Mp.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:Mp.converters.USVString,defaultValue:()=>""}]);Mp.converters.ErrorEventInit=Mp.dictionaryConverter([...bEr,{key:"message",converter:Mp.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:Mp.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:Mp.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:Mp.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:Mp.converters.any}]);uti.exports={MessageEvent:ITe,CloseEvent:Hmt,ErrorEvent:Ymt,createFastMessageEvent:Xha}});var Whe=H((Mou,gti)=>{"use strict";var Jha="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",Uha={enumerable:!0,writable:!1,configurable:!1},Kha={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},jha={NOT_SENT:0,PROCESSING:1,SENT:2},zha={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},qha=2**16-1,$ha={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},ema=Buffer.allocUnsafe(0),tma={string:1,typedArray:2,arrayBuffer:3,blob:4};gti.exports={uid:Jha,sentCloseFrameState:jha,staticPropertyDescriptors:Uha,states:Kha,opcodes:zha,maxUnsigned16Bit:qha,parserStates:$ha,emptyBuffer:ema,sendHints:tma}});var pQe=H((Hou,Ati)=>{"use strict";Ati.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var hQe=H((You,yti)=>{"use strict";var{kReadyState:fQe,kController:rma,kResponse:nma,kBinaryType:ima,kWebSocketURL:sma}=pQe(),{states:IQe,opcodes:Dae}=Whe(),{ErrorEvent:oma,createFastMessageEvent:ama}=hTe(),{isUtf8:cma}=Et("node:buffer"),{collectASequenceOfCodePointsFast:lma,removeHTTPWhitespace:dti}=aV();function uma(e){return e[fQe]===IQe.CONNECTING}function gma(e){return e[fQe]===IQe.OPEN}function Ama(e){return e[fQe]===IQe.CLOSING}function dma(e){return e[fQe]===IQe.CLOSED}function EEr(e,t,r=(a,o)=>new Event(a,o),n={}){let a=r(e,n);t.dispatchEvent(a)}function pma(e,t,r){if(e[fQe]!==IQe.OPEN)return;let n;if(t===Dae.TEXT)try{n=_ti(r)}catch{fti(e,"Received invalid UTF-8 in text frame.");return}else t===Dae.BINARY&&(e[ima]==="blob"?n=new Blob([r]):n=fma(r));EEr("message",e,ama,{origin:e[sma].origin,data:n})}function fma(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function Ima(e){if(e.length===0)return!1;for(let t=0;t126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function hma(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function fti(e,t){let{[rma]:r,[nma]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&EEr("error",e,(a,o)=>new oma(a,o),{error:new Error(t),message:t})}function Iti(e){return e===Dae.CLOSE||e===Dae.PING||e===Dae.PONG}function hti(e){return e===Dae.CONTINUATION}function mti(e){return e===Dae.TEXT||e===Dae.BINARY}function mma(e){return mti(e)||hti(e)||Iti(e)}function Cma(e){let t={position:0},r=new Map;for(;t.position57)return!1}return!0}var Cti=typeof process.versions.icu=="string",pti=Cti?new TextDecoder("utf-8",{fatal:!0}):void 0,_ti=Cti?pti.decode.bind(pti):function(e){if(cma(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};yti.exports={isConnecting:uma,isEstablished:gma,isClosing:Ama,isClosed:dma,fireEvent:EEr,isValidSubprotocol:Ima,isValidStatusCode:hma,failWebsocketConnection:fti,websocketMessageReceived:pma,utf8Decode:_ti,isControlFrame:Iti,isContinuationFrame:hti,isTextBinaryFrame:mti,isValidOpcode:mma,parseExtensions:Cma,isValidClientWindowBits:_ma}});var Xmt=H((Qou,bti)=>{"use strict";var{maxUnsigned16Bit:yma}=Whe(),Qmt=16386,SEr,mQe=null,mTe=Qmt;try{SEr=Et("node:crypto")}catch{SEr={randomFillSync:function(t,r,n){for(let a=0;ayma?(l+=8,o=127):a>125&&(l+=2,o=126);let A=Buffer.allocUnsafe(a+l);A[0]=A[1]=0,A[0]|=128,A[0]=(A[0]&240)+t;A[l-4]=n[0],A[l-3]=n[1],A[l-2]=n[2],A[l-1]=n[3],A[1]=o,o===126?A.writeUInt16BE(a,2):o===127&&(A[2]=A[3]=0,A.writeUIntBE(a,4,6)),A[1]|=128;for(let f=0;f{"use strict";var{uid:Ema,states:CQe,sentCloseFrameState:Jmt,emptyBuffer:Sma,opcodes:vma}=Whe(),{kReadyState:_Qe,kSentClose:Umt,kByteParser:Sti,kReceivedClose:Eti,kResponse:vti}=pQe(),{fireEvent:Bma,failWebsocketConnection:kae,isClosing:wma,isClosed:Tma,isEstablished:Rma,parseExtensions:Nma}=hQe(),{channels:CTe}=Gwe(),{CloseEvent:Dma}=hTe(),{makeRequest:kma}=gTe(),{fetching:xma}=uQe(),{Headers:Gma,getHeadersList:Fma}=xhe(),{getDecodeSplit:Zma}=aP(),{WebsocketFrameSend:Lma}=Xmt(),BEr;try{BEr=Et("node:crypto")}catch{}function Vma(e,t,r,n,a,o){let l=e;l.protocol=e.protocol==="ws:"?"http:":"https:";let A=kma({urlList:[l],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let b=Fma(new Gma(o.headers));A.headersList=b}let f=BEr.randomBytes(16).toString("base64");A.headersList.append("sec-websocket-key",f),A.headersList.append("sec-websocket-version","13");for(let b of t)A.headersList.append("sec-websocket-protocol",b);return A.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),xma({request:A,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(b){if(b.type==="error"||b.status!==101){kae(n,"Received network error or non-101 status code.");return}if(t.length!==0&&!b.headersList.get("Sec-WebSocket-Protocol")){kae(n,"Server did not respond with sent protocols.");return}if(b.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){kae(n,'Server did not set Upgrade header to "websocket".');return}if(b.headersList.get("Connection")?.toLowerCase()!=="upgrade"){kae(n,'Server did not set Connection header to "upgrade".');return}let E=b.headersList.get("Sec-WebSocket-Accept"),N=BEr.createHash("sha1").update(f+Ema).digest("base64");if(E!==N){kae(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let B=b.headersList.get("Sec-WebSocket-Extensions"),F;if(B!==null&&(F=Nma(B),!F.has("permessage-deflate"))){kae(n,"Sec-WebSocket-Extensions header does not match.");return}let Q=b.headersList.get("Sec-WebSocket-Protocol");if(Q!==null&&!Zma("sec-websocket-protocol",A.headersList).includes(Q)){kae(n,"Protocol was not set in the opening handshake.");return}b.socket.on("data",Bti),b.socket.on("close",wti),b.socket.on("error",Tti),CTe.open.hasSubscribers&&CTe.open.publish({address:b.socket.address(),protocol:Q,extensions:B}),a(b,F)}})}function Wma(e,t,r,n){if(!(wma(e)||Tma(e)))if(!Rma(e))kae(e,"Connection was closed before it was established."),e[_Qe]=CQe.CLOSING;else if(e[Umt]===Jmt.NOT_SENT){e[Umt]=Jmt.PROCESSING;let a=new Lma;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Sma,e[vti].socket.write(a.createFrame(vma.CLOSE)),e[Umt]=Jmt.SENT,e[_Qe]=CQe.CLOSING}else e[_Qe]=CQe.CLOSING}function Bti(e){this.ws[Sti].write(e)||this.pause()}function wti(){let{ws:e}=this,{[vti]:t}=e;t.socket.off("data",Bti),t.socket.off("close",wti),t.socket.off("error",Tti);let r=e[Umt]===Jmt.SENT&&e[Eti],n=1005,a="",o=e[Sti].closingInfo;o&&!o.error?(n=o.code??1005,a=o.reason):e[Eti]||(n=1006),e[_Qe]=CQe.CLOSED,Bma("close",e,(l,A)=>new Dma(l,A),{wasClean:r,code:n,reason:a}),CTe.close.hasSubscribers&&CTe.close.publish({websocket:e,code:n,reason:a})}function Tti(e){let{ws:t}=this;t[_Qe]=CQe.CLOSING,CTe.socketError.hasSubscribers&&CTe.socketError.publish(e),this.destroy()}Rti.exports={establishWebSocketConnection:Vma,closeWebSocketConnection:Wma}});var Dti=H((Jou,Nti)=>{"use strict";var{createInflateRaw:Oma,Z_DEFAULT_WINDOWBITS:Pma}=Et("node:zlib"),{isValidClientWindowBits:Mma}=hQe(),Hma=Buffer.from([0,0,255,255]),Kmt=Symbol("kBuffer"),jmt=Symbol("kLength"),TEr=class{#e;#t={};constructor(t){this.#t.serverNoContextTakeover=t.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=t.get("server_max_window_bits")}decompress(t,r,n){if(!this.#e){let a=Pma;if(this.#t.serverMaxWindowBits){if(!Mma(this.#t.serverMaxWindowBits)){n(new Error("Invalid server_max_window_bits"));return}a=Number.parseInt(this.#t.serverMaxWindowBits)}this.#e=Oma({windowBits:a}),this.#e[Kmt]=[],this.#e[jmt]=0,this.#e.on("data",o=>{this.#e[Kmt].push(o),this.#e[jmt]+=o.length}),this.#e.on("error",o=>{this.#e=null,n(o)})}this.#e.write(t),r&&this.#e.write(Hma),this.#e.flush(()=>{let a=Buffer.concat(this.#e[Kmt],this.#e[jmt]);this.#e[Kmt].length=0,this.#e[jmt]=0,n(null,a)})}};Nti.exports={PerMessageDeflate:TEr}});var Mti=H((Uou,Pti)=>{"use strict";var{Writable:Yma}=Et("node:stream"),Qma=Et("node:assert"),{parserStates:AV,opcodes:_Te,states:Xma,emptyBuffer:kti,sentCloseFrameState:xti}=Whe(),{kReadyState:Jma,kSentClose:Gti,kResponse:Fti,kReceivedClose:Zti}=pQe(),{channels:zmt}=Gwe(),{isValidStatusCode:Uma,isValidOpcode:Kma,failWebsocketConnection:XM,websocketMessageReceived:Lti,utf8Decode:jma,isControlFrame:Vti,isTextBinaryFrame:REr,isContinuationFrame:zma}=hQe(),{WebsocketFrameSend:Wti}=Xmt(),{closeWebSocketConnection:Oti}=wEr(),{PerMessageDeflate:qma}=Dti(),NEr=class extends Yma{#e=[];#t=0;#n=!1;#r=AV.INFO;#i={};#s=[];#o;constructor(t,r){super(),this.ws=t,this.#o=r??new Map,this.#o.has("permessage-deflate")&&this.#o.set("permessage-deflate",new qma(r))}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.#n=!0,this.run(n)}run(t){for(;this.#n;)if(this.#r===AV.INFO){if(this.#t<2)return t();let r=this.consume(2),n=(r[0]&128)!==0,a=r[0]&15,o=(r[1]&128)===128,l=!n&&a!==_Te.CONTINUATION,A=r[1]&127,f=r[0]&64,I=r[0]&32,C=r[0]&16;if(!Kma(a))return XM(this.ws,"Invalid opcode received"),t();if(o)return XM(this.ws,"Frame cannot be masked"),t();if(f!==0&&!this.#o.has("permessage-deflate")){XM(this.ws,"Expected RSV1 to be clear.");return}if(I!==0||C!==0){XM(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(l&&!REr(a)){XM(this.ws,"Invalid frame type was fragmented.");return}if(REr(a)&&this.#s.length>0){XM(this.ws,"Expected continuation frame");return}if(this.#i.fragmented&&l){XM(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((A>125||l)&&Vti(a)){XM(this.ws,"Control frame either too large or fragmented");return}if(zma(a)&&this.#s.length===0&&!this.#i.compressed){XM(this.ws,"Unexpected continuation frame");return}A<=125?(this.#i.payloadLength=A,this.#r=AV.READ_DATA):A===126?this.#r=AV.PAYLOADLENGTH_16:A===127&&(this.#r=AV.PAYLOADLENGTH_64),REr(a)&&(this.#i.binaryType=a,this.#i.compressed=f!==0),this.#i.opcode=a,this.#i.masked=o,this.#i.fin=n,this.#i.fragmented=l}else if(this.#r===AV.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#i.payloadLength=r.readUInt16BE(0),this.#r=AV.READ_DATA}else if(this.#r===AV.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){XM(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#i.payloadLength=(n<<8)+a,this.#r=AV.READ_DATA}else if(this.#r===AV.READ_DATA){if(this.#t{if(n){Oti(this.ws,1007,n.message,n.message.length);return}if(this.#s.push(a),!this.#i.fin){this.#r=AV.INFO,this.#n=!0,this.run(t);return}Lti(this.ws,this.#i.binaryType,Buffer.concat(this.#s)),this.#n=!0,this.#r=AV.INFO,this.#s.length=0,this.run(t)}),this.#n=!1;break}else{if(this.#s.push(r),!this.#i.fragmented&&this.#i.fin){let n=Buffer.concat(this.#s);Lti(this.ws,this.#i.binaryType,n),this.#s.length=0}this.#r=AV.INFO}}}consume(t){if(t>this.#t)throw new Error("Called consume() before buffers satiated.");if(t===0)return kti;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t){Qma(t.length!==1);let r;if(t.length>=2&&(r=t.readUInt16BE(0)),r!==void 0&&!Uma(r))return{code:1002,reason:"Invalid status code",error:!0};let n=t.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=jma(n)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:n,error:!1}}parseControlFrame(t){let{opcode:r,payloadLength:n}=this.#i;if(r===_Te.CLOSE){if(n===1)return XM(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#i.closeInfo=this.parseCloseBody(t),this.#i.closeInfo.error){let{code:a,reason:o}=this.#i.closeInfo;return Oti(this.ws,a,o,o.length),XM(this.ws,o),!1}if(this.ws[Gti]!==xti.SENT){let a=kti;this.#i.closeInfo.code&&(a=Buffer.allocUnsafe(2),a.writeUInt16BE(this.#i.closeInfo.code,0));let o=new Wti(a);this.ws[Fti].socket.write(o.createFrame(_Te.CLOSE),l=>{l||(this.ws[Gti]=xti.SENT)})}return this.ws[Jma]=Xma.CLOSING,this.ws[Zti]=!0,!1}else if(r===_Te.PING){if(!this.ws[Zti]){let a=new Wti(t);this.ws[Fti].socket.write(a.createFrame(_Te.PONG)),zmt.ping.hasSubscribers&&zmt.ping.publish({payload:t})}}else r===_Te.PONG&&zmt.pong.hasSubscribers&&zmt.pong.publish({payload:t});return!0}get closingInfo(){return this.#i.closeInfo}};Pti.exports={ByteParser:NEr}});var Jti=H((Kou,Xti)=>{"use strict";var{WebsocketFrameSend:$ma}=Xmt(),{opcodes:Hti,sendHints:yTe}=Whe(),eCa=Hyr(),Yti=Buffer[Symbol.species],DEr=class{#e=new eCa;#t=!1;#n;constructor(t){this.#n=t}add(t,r,n){if(n!==yTe.blob){let o=Qti(t,n);if(!this.#t)this.#n.write(o,r);else{let l={promise:null,callback:r,frame:o};this.#e.push(l)}return}let a={promise:t.arrayBuffer().then(o=>{a.promise=null,a.frame=Qti(o,n)}),callback:r,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let t=this.#e;for(;!t.isEmpty();){let r=t.shift();r.promise!==null&&await r.promise,this.#n.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function Qti(e,t){return new $ma(tCa(e,t)).createFrame(t===yTe.string?Hti.TEXT:Hti.BINARY)}function tCa(e,t){switch(t){case yTe.string:return Buffer.from(e);case yTe.arrayBuffer:case yTe.blob:return new Yti(e);case yTe.typedArray:return new Yti(e.buffer,e.byteOffset,e.byteLength)}}Xti.exports={SendQueue:DEr}});var rri=H((jou,tri)=>{"use strict";var{webidl:lI}=Vk(),{URLSerializer:rCa}=aV(),{environmentSettingsObject:Uti}=aP(),{staticPropertyDescriptors:xae,states:yQe,sentCloseFrameState:nCa,sendHints:qmt}=Whe(),{kWebSocketURL:Kti,kReadyState:kEr,kController:iCa,kBinaryType:$mt,kResponse:jti,kSentClose:sCa,kByteParser:oCa}=pQe(),{isConnecting:aCa,isEstablished:cCa,isClosing:lCa,isValidSubprotocol:uCa,fireEvent:zti}=hQe(),{establishWebSocketConnection:gCa,closeWebSocketConnection:qti}=wEr(),{ByteParser:ACa}=Mti(),{kEnumerableProperty:JM,isBlobLike:$ti}=wm(),{getGlobalDispatcher:dCa}=pmt(),{types:eri}=Et("node:util"),{ErrorEvent:pCa,CloseEvent:fCa}=hTe(),{SendQueue:ICa}=Jti(),dP=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";#i;constructor(t,r=[]){super();let n="WebSocket constructor";lI.argumentLengthCheck(arguments,1,n);let a=lI.converters["DOMString or sequence or WebSocketInit"](r,n,"options");t=lI.converters.USVString(t,n,"url"),r=a.protocols;let o=Uti.settingsObject.baseUrl,l;try{l=new URL(t,o)}catch(f){throw new DOMException(f,"SyntaxError")}if(l.protocol==="http:"?l.protocol="ws:":l.protocol==="https:"&&(l.protocol="wss:"),l.protocol!=="ws:"&&l.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${l.protocol}`,"SyntaxError");if(l.hash||l.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(f=>f.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(f=>uCa(f)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[Kti]=new URL(l.href);let A=Uti.settingsObject;this[iCa]=gCa(l,r,A,this,(f,I)=>this.#s(f,I),a),this[kEr]=e.CONNECTING,this[sCa]=nCa.NOT_SENT,this[$mt]="blob"}close(t=void 0,r=void 0){lI.brandCheck(this,e);let n="WebSocket.close";if(t!==void 0&&(t=lI.converters["unsigned short"](t,n,"code",{clamp:!0})),r!==void 0&&(r=lI.converters.USVString(r,n,"reason")),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new DOMException("invalid code","InvalidAccessError");let a=0;if(r!==void 0&&(a=Buffer.byteLength(r),a>123))throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError");qti(this,t,r,a)}send(t){lI.brandCheck(this,e);let r="WebSocket.send";if(lI.argumentLengthCheck(arguments,1,r),t=lI.converters.WebSocketSendData(t,r,"data"),aCa(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!cCa(this)||lCa(this)))if(typeof t=="string"){let n=Buffer.byteLength(t);this.#t+=n,this.#i.add(t,()=>{this.#t-=n},qmt.string)}else eri.isArrayBuffer(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},qmt.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},qmt.typedArray)):$ti(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},qmt.blob))}get readyState(){return lI.brandCheck(this,e),this[kEr]}get bufferedAmount(){return lI.brandCheck(this,e),this.#t}get url(){return lI.brandCheck(this,e),rCa(this[Kti])}get extensions(){return lI.brandCheck(this,e),this.#r}get protocol(){return lI.brandCheck(this,e),this.#n}get onopen(){return lI.brandCheck(this,e),this.#e.open}set onopen(t){lI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return lI.brandCheck(this,e),this.#e.error}set onerror(t){lI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return lI.brandCheck(this,e),this.#e.close}set onclose(t){lI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return lI.brandCheck(this,e),this.#e.message}set onmessage(t){lI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return lI.brandCheck(this,e),this[$mt]}set binaryType(t){lI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[$mt]="blob":this[$mt]=t}#s(t,r){this[jti]=t;let n=new ACa(this,r);n.on("drain",hCa),n.on("error",mCa.bind(this)),t.socket.ws=this,this[oCa]=n,this.#i=new ICa(t.socket),this[kEr]=yQe.OPEN;let a=t.headersList.get("sec-websocket-extensions");a!==null&&(this.#r=a);let o=t.headersList.get("sec-websocket-protocol");o!==null&&(this.#n=o),zti("open",this)}};dP.CONNECTING=dP.prototype.CONNECTING=yQe.CONNECTING;dP.OPEN=dP.prototype.OPEN=yQe.OPEN;dP.CLOSING=dP.prototype.CLOSING=yQe.CLOSING;dP.CLOSED=dP.prototype.CLOSED=yQe.CLOSED;Object.defineProperties(dP.prototype,{CONNECTING:xae,OPEN:xae,CLOSING:xae,CLOSED:xae,url:JM,readyState:JM,bufferedAmount:JM,onopen:JM,onerror:JM,onclose:JM,close:JM,onmessage:JM,binaryType:JM,send:JM,extensions:JM,protocol:JM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(dP,{CONNECTING:xae,OPEN:xae,CLOSING:xae,CLOSED:xae});lI.converters["sequence"]=lI.sequenceConverter(lI.converters.DOMString);lI.converters["DOMString or sequence"]=function(e,t,r){return lI.util.Type(e)==="Object"&&Symbol.iterator in e?lI.converters["sequence"](e):lI.converters.DOMString(e,t,r)};lI.converters.WebSocketInit=lI.dictionaryConverter([{key:"protocols",converter:lI.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:lI.converters.any,defaultValue:()=>dCa()},{key:"headers",converter:lI.nullableConverter(lI.converters.HeadersInit)}]);lI.converters["DOMString or sequence or WebSocketInit"]=function(e){return lI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?lI.converters.WebSocketInit(e):{protocols:lI.converters["DOMString or sequence"](e)}};lI.converters.WebSocketSendData=function(e){if(lI.util.Type(e)==="Object"){if($ti(e))return lI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||eri.isArrayBuffer(e))return lI.converters.BufferSource(e)}return lI.converters.USVString(e)};function hCa(){this.ws[jti].socket.resume()}function mCa(e){let t,r;e instanceof fCa?(t=e.reason,r=e.code):t=e.message,zti("error",this,()=>new pCa("error",{error:e,message:t})),qti(this,r)}tri.exports={WebSocket:dP}});var xEr=H((zou,nri)=>{"use strict";function CCa(e){return e.indexOf("\0")===-1}function _Ca(e){if(e.length===0)return!1;for(let t=0;t57)return!1;return!0}function yCa(e){return new Promise(t=>{setTimeout(t,e).unref()})}nri.exports={isValidLastEventId:CCa,isASCIINumber:_Ca,delay:yCa}});var ari=H((qou,ori)=>{"use strict";var{Transform:bCa}=Et("node:stream"),{isASCIINumber:iri,isValidLastEventId:sri}=xEr(),lee=[239,187,191],GEr=10,eCt=13,ECa=58,SCa=32,FEr=class extends bCa{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(t={}){t.readableObjectMode=!0,super(t),this.state=t.eventSourceSettings||{},t.push&&(this.push=t.push)}_transform(t,r,n){if(t.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,t]):this.buffer=t,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===lee[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===lee[0]&&this.buffer[1]===lee[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===lee[0]&&this.buffer[1]===lee[1]&&this.buffer[2]===lee[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===lee[0]&&this.buffer[1]===lee[1]&&this.buffer[2]===lee[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[a]=o);break}}processEvent(t){t.retry&&iri(t.retry)&&(this.state.reconnectionTime=parseInt(t.retry,10)),t.id&&sri(t.id)&&(this.state.lastEventId=t.id),t.data!==void 0&&this.push({type:t.event||"message",options:{data:t.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};ori.exports={EventSourceStream:FEr}});var fri=H(($ou,pri)=>{"use strict";var{pipeline:vCa}=Et("node:stream"),{fetching:BCa}=uQe(),{makeRequest:wCa}=gTe(),{webidl:Gae}=Vk(),{EventSourceStream:TCa}=ari(),{parseMIMEType:RCa}=aV(),{createFastMessageEvent:NCa}=hTe(),{isNetworkError:cri}=cQe(),{delay:DCa}=xEr(),{kEnumerableProperty:Ohe}=wm(),{environmentSettingsObject:lri}=aP(),uri=!1,gri=3e3,bQe=0,Ari=1,EQe=2,kCa="anonymous",xCa="use-credentials",bTe=class e extends EventTarget{#e={open:null,error:null,message:null};#t=null;#n=!1;#r=bQe;#i=null;#s=null;#o;#g;constructor(t,r={}){super();let n="EventSource constructor";Gae.argumentLengthCheck(arguments,1,n),uri||(uri=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),t=Gae.converters.USVString(t,n,"url"),r=Gae.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#o=r.dispatcher,this.#g={lastEventId:"",reconnectionTime:gri};let a=lri,o;try{o=new URL(t,a.settingsObject.baseUrl),this.#g.origin=o.origin}catch(f){throw new DOMException(f,"SyntaxError")}this.#t=o.href;let l=kCa;r.withCredentials&&(l=xCa,this.#n=!0);let A={redirect:"follow",keepalive:!0,mode:"cors",credentials:l==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};A.client=lri.settingsObject,A.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],A.cache="no-store",A.initiator="other",A.urlList=[new URL(this.#t)],this.#i=wCa(A),this.#l()}get readyState(){return this.#r}get url(){return this.#t}get withCredentials(){return this.#n}#l(){if(this.#r===EQe)return;this.#r=bQe;let t={request:this.#i,dispatcher:this.#o},r=n=>{cri(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#u()};t.processResponseEndOfBody=r,t.processResponse=n=>{if(cri(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#u();return}let a=n.headersList.get("content-type",!0),o=a!==null?RCa(a):"failure",l=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||l===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#r=Ari,this.dispatchEvent(new Event("open")),this.#g.origin=n.urlList[n.urlList.length-1].origin;let A=new TCa({eventSourceSettings:this.#g,push:f=>{this.dispatchEvent(NCa(f.type,f.options))}});vCa(n.body.stream,A,f=>{f?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#s=BCa(t)}async#u(){this.#r!==EQe&&(this.#r=bQe,this.dispatchEvent(new Event("error")),await DCa(this.#g.reconnectionTime),this.#r===bQe&&(this.#g.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#g.lastEventId,!0),this.#l()))}close(){Gae.brandCheck(this,e),this.#r!==EQe&&(this.#r=EQe,this.#s.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(t){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(t){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(t){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}},dri={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:bQe,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:Ari,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:EQe,writable:!1}};Object.defineProperties(bTe,dri);Object.defineProperties(bTe.prototype,dri);Object.defineProperties(bTe.prototype,{close:Ohe,onerror:Ohe,onmessage:Ohe,onopen:Ohe,readyState:Ohe,url:Ohe,withCredentials:Ohe});Gae.converters.EventSourceInitDict=Gae.dictionaryConverter([{key:"withCredentials",converter:Gae.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:Gae.converters.any}]);pri.exports={EventSource:bTe,defaultReconnectionTime:gri}});var Cri=H((eau,Tf)=>{"use strict";var GCa=JYe(),Iri=SYe(),FCa=$we(),ZCa=Bzn(),LCa=eTe(),VCa=abr(),WCa=Hzn(),OCa=Kzn(),hri=J0(),rCt=wm(),{InvalidArgumentError:tCt}=hri,ETe=Fqn(),PCa=BYe(),MCa=Mbr(),HCa=I$n(),YCa=Qbr(),QCa=Rbr(),XCa=imt(),{getGlobalDispatcher:mri,setGlobalDispatcher:JCa}=pmt(),UCa=Kbr(),KCa=Jht(),jCa=Uht();Object.assign(Iri.prototype,ETe);Tf.exports.Dispatcher=Iri;Tf.exports.Client=GCa;Tf.exports.Pool=FCa;Tf.exports.BalancedPool=ZCa;Tf.exports.Agent=LCa;Tf.exports.ProxyAgent=VCa;Tf.exports.EnvHttpProxyAgent=WCa;Tf.exports.RetryAgent=OCa;Tf.exports.RetryHandler=XCa;Tf.exports.DecoratorHandler=UCa;Tf.exports.RedirectHandler=KCa;Tf.exports.createRedirectInterceptor=jCa;Tf.exports.interceptors={redirect:E$n(),retry:v$n(),dump:w$n()};Tf.exports.buildConnector=PCa;Tf.exports.errors=hri;Tf.exports.util={parseHeaders:rCt.parseHeaders,headerNameToString:rCt.headerNameToString};function SQe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new tCt("invalid url");if(r!=null&&typeof r!="object")throw new tCt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new tCt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(rCt.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=rCt.parseURL(t);let{agent:a,dispatcher:o=mri()}=r;if(a)throw new tCt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Tf.exports.setGlobalDispatcher=JCa;Tf.exports.getGlobalDispatcher=mri;var zCa=uQe().fetch;Tf.exports.fetch=async function(t,r=void 0){try{return await zCa(t,r)}catch(n){throw n&&typeof n=="object"&&Error.captureStackTrace(n),n}};Tf.exports.Headers=xhe().Headers;Tf.exports.Response=cQe().Response;Tf.exports.Request=gTe().Request;Tf.exports.FormData=xYe().FormData;Tf.exports.File=globalThis.File??Et("node:buffer").File;Tf.exports.FileReader=Pei().FileReader;var{setGlobalOrigin:qCa,getGlobalOrigin:$Ca}=lyr();Tf.exports.setGlobalOrigin=qCa;Tf.exports.getGlobalOrigin=$Ca;var{CacheStorage:e_a}=jei(),{kConstruct:t_a}=Fmt();Tf.exports.caches=new e_a(t_a);var{deleteCookie:r_a,getCookies:n_a,getSetCookies:i_a,setCookie:s_a}=cti();Tf.exports.deleteCookie=r_a;Tf.exports.getCookies=n_a;Tf.exports.getSetCookies=i_a;Tf.exports.setCookie=s_a;var{parseMIMEType:o_a,serializeAMimeType:a_a}=aV();Tf.exports.parseMIMEType=o_a;Tf.exports.serializeAMimeType=a_a;var{CloseEvent:c_a,ErrorEvent:l_a,MessageEvent:u_a}=hTe();Tf.exports.WebSocket=rri().WebSocket;Tf.exports.CloseEvent=c_a;Tf.exports.ErrorEvent=l_a;Tf.exports.MessageEvent=u_a;Tf.exports.request=SQe(ETe.request);Tf.exports.stream=SQe(ETe.stream);Tf.exports.pipeline=SQe(ETe.pipeline);Tf.exports.connect=SQe(ETe.connect);Tf.exports.upgrade=SQe(ETe.upgrade);Tf.exports.MockClient=MCa;Tf.exports.MockPool=YCa;Tf.exports.MockAgent=HCa;Tf.exports.mockErrors=QCa;var{EventSource:g_a}=fri();Tf.exports.EventSource=g_a});var bri=H(fT=>{"use strict";var A_a=fT&&fT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),d_a=fT&&fT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),p_a=fT&&fT.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&A_a(t,e,r);return d_a(t,e),t},f_a=fT&&fT.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(fT,"__esModule",{value:!0});fT.getApiBaseUrl=fT.getProxyFetch=fT.getProxyAgentDispatcher=fT.getProxyAgent=fT.getAuthString=void 0;var _ri=p_a(F6n()),I_a=Cri();function h_a(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof t.auth=="string"?t.auth:`token ${e}`}fT.getAuthString=h_a;function m_a(e){return new _ri.HttpClient().getAgent(e)}fT.getProxyAgent=m_a;function yri(e){return new _ri.HttpClient().getAgentDispatcher(e)}fT.getProxyAgentDispatcher=yri;function C_a(e){let t=yri(e);return(n,a)=>f_a(this,void 0,void 0,function*(){return(0,I_a.fetch)(n,Object.assign(Object.assign({},a),{dispatcher:t}))})}fT.getProxyFetch=C_a;function __a(){return process.env.GITHUB_API_URL||"https://api.github.com"}fT.getApiBaseUrl=__a});var vQe=H(ZEr=>{"use strict";Object.defineProperty(ZEr,"__esModule",{value:!0});function y_a(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}ZEr.getUserAgent=y_a});var vri=H((nau,Sri)=>{Sri.exports=Eri;function Eri(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce(function(a,o){return Eri.bind(null,e,o,a,n)},r)():Promise.resolve().then(function(){return e.registry[t]?e.registry[t].reduce(function(a,o){return o.hook.bind(null,a,n)},r)():r(n)})}});var wri=H((iau,Bri)=>{Bri.exports=b_a;function b_a(e,t,r,n){var a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=function(o,l){return Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))}),t==="after"&&(n=function(o,l){var A;return Promise.resolve().then(o.bind(null,l)).then(function(f){return A=f,a(A,l)}).then(function(){return A})}),t==="error"&&(n=function(o,l){return Promise.resolve().then(o.bind(null,l)).catch(function(A){return a(A,l)})}),e.registry[r].push({hook:n,orig:a})}});var Rri=H((sau,Tri)=>{Tri.exports=E_a;function E_a(e,t,r){if(e.registry[t]){var n=e.registry[t].map(function(a){return a.orig}).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}}});var Zri=H((oau,BQe)=>{var xri=vri(),S_a=wri(),v_a=Rri(),Nri=Function.bind,Dri=Nri.bind(Nri);function Gri(e,t,r){var n=Dri(v_a,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(function(a){var o=r?[t,a,r]:[t,a];e[a]=e.api[a]=Dri(S_a,null).apply(null,o)})}function B_a(){var e="h",t={registry:{}},r=xri.bind(null,t,e);return Gri(r,t,e),r}function Fri(){var e={registry:{}},t=xri.bind(null,e);return Gri(t,e),t}var kri=!1;function STe(){return kri||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),kri=!0),Fri()}STe.Singular=B_a.bind();STe.Collection=Fri.bind();BQe.exports=STe;BQe.exports.Hook=STe;BQe.exports.Singular=STe.Singular;BQe.exports.Collection=STe.Collection});var Qri=H((aau,Yri)=>{"use strict";var WEr=Object.defineProperty,w_a=Object.getOwnPropertyDescriptor,T_a=Object.getOwnPropertyNames,R_a=Object.prototype.hasOwnProperty,N_a=(e,t)=>{for(var r in t)WEr(e,r,{get:t[r],enumerable:!0})},D_a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of T_a(t))!R_a.call(e,a)&&a!==r&&WEr(e,a,{get:()=>t[a],enumerable:!(n=w_a(t,a))||n.enumerable});return e},k_a=e=>D_a(WEr({},"__esModule",{value:!0}),e),Wri={};N_a(Wri,{endpoint:()=>J_a});Yri.exports=k_a(Wri);var x_a=vQe(),G_a="9.0.5",F_a=`octokit-endpoint.js/${G_a} ${(0,x_a.getUserAgent)()}`,Z_a={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":F_a},mediaType:{format:""}};function L_a(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function V_a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function Ori(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{V_a(t[n])?n in e?r[n]=Ori(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function Lri(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function VEr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=L_a(r.headers),Lri(r),Lri(r.headers);let n=Ori(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function W_a(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var O_a=/\{[^}]+\}/g;function P_a(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function M_a(e){let t=e.match(O_a);return t?t.map(P_a).reduce((r,n)=>r.concat(n),[]):[]}function Vri(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function Pri(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function BTe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function wQe(e,t,r){return t=e==="+"||e==="#"?Pri(t):BTe(t),r?BTe(r)+"="+t:t}function vTe(e){return e!=null}function LEr(e){return e===";"||e==="&"||e==="?"}function H_a(e,t,r,n){var a=e[r],o=[];if(vTe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(wQe(t,a,LEr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(vTe).forEach(function(l){o.push(wQe(t,l,LEr(t)?r:""))}):Object.keys(a).forEach(function(l){vTe(a[l])&&o.push(wQe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(vTe).forEach(function(A){l.push(wQe(t,A))}):Object.keys(a).forEach(function(A){vTe(a[A])&&(l.push(BTe(A)),l.push(wQe(t,a[A].toString())))}),LEr(t)?o.push(BTe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?vTe(a)&&o.push(BTe(r)):a===""&&(t==="&"||t==="?")?o.push(BTe(r)+"="):a===""&&o.push("");return o}function Y_a(e){return{expand:Q_a.bind(null,e)}}function Q_a(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(H_a(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return Pri(o)}),e==="/"?e:e.replace(/\/$/,"")}function Mri(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=Vri(e,["method","baseUrl","url","headers","request","mediaType"]),l=M_a(r);r=Y_a(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=Vri(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=W_a(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function X_a(e,t,r){return Mri(VEr(e,t,r))}function Hri(e,t){let r=VEr(e,t),n=X_a.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:Hri.bind(null,r),merge:VEr.bind(null,r),parse:Mri})}var J_a=Hri(null,Z_a)});var Xri=H(PEr=>{"use strict";Object.defineProperty(PEr,"__esModule",{value:!0});var OEr=class extends Error{constructor(t){super(t),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}};PEr.Deprecation=OEr});var qri=H((lau,zri)=>{"use strict";var U_a=Object.create,nCt=Object.defineProperty,K_a=Object.getOwnPropertyDescriptor,j_a=Object.getOwnPropertyNames,z_a=Object.getPrototypeOf,q_a=Object.prototype.hasOwnProperty,$_a=(e,t)=>{for(var r in t)nCt(e,r,{get:t[r],enumerable:!0})},Uri=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of j_a(t))!q_a.call(e,a)&&a!==r&&nCt(e,a,{get:()=>t[a],enumerable:!(n=K_a(t,a))||n.enumerable});return e},e0a=(e,t,r)=>(r=e!=null?U_a(z_a(e)):{},Uri(t||!e||!e.__esModule?nCt(r,"default",{value:e,enumerable:!0}):r,e)),t0a=e=>Uri(nCt({},"__esModule",{value:!0}),e),Kri={};$_a(Kri,{RequestError:()=>i0a});zri.exports=t0a(Kri);var Jri=Xri(),jri=e0a(Wgt()),r0a=(0,jri.default)(e=>console.warn(e)),n0a=(0,jri.default)(e=>console.warn(e)),i0a=class extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t;let n;"headers"in r&&typeof r.headers<"u"&&(n=r.headers),"response"in r&&(this.response=r.response,n=r.response.headers);let a=Object.assign({},r.request);r.request.headers.authorization&&(a.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a,Object.defineProperty(this,"code",{get(){return r0a(new Jri.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),Object.defineProperty(this,"headers",{get(){return n0a(new Jri.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),n||{}}})}}});var RQe=H((gau,tni)=>{"use strict";var YEr=Object.defineProperty,s0a=Object.getOwnPropertyDescriptor,o0a=Object.getOwnPropertyNames,a0a=Object.prototype.hasOwnProperty,c0a=(e,t)=>{for(var r in t)YEr(e,r,{get:t[r],enumerable:!0})},l0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of o0a(t))!a0a.call(e,a)&&a!==r&&YEr(e,a,{get:()=>t[a],enumerable:!(n=s0a(t,a))||n.enumerable});return e},u0a=e=>l0a(YEr({},"__esModule",{value:!0}),e),eni={};c0a(eni,{request:()=>h0a});tni.exports=u0a(eni);var g0a=Qri(),A0a=vQe(),d0a="8.4.0";function p0a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var TQe=qri();function f0a(e){return e.arrayBuffer()}function $ri(e){var t,r,n,a;let o=e.request&&e.request.log?e.request.log:console,l=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==!1;(p0a(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let A={},f,I,{fetch:C}=globalThis;if((r=e.request)!=null&&r.fetch&&(C=e.request.fetch),!C)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");return C(e.url,{method:e.method,body:e.body,redirect:(n=e.request)==null?void 0:n.redirect,headers:e.headers,signal:(a=e.request)==null?void 0:a.signal,...e.body&&{duplex:"half"}}).then(async b=>{I=b.url,f=b.status;for(let E of b.headers)A[E[0]]=E[1];if("deprecation"in A){let E=A.link&&A.link.match(/<([^>]+)>; rel="deprecation"/),N=E&&E.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${A.sunset}${N?`. See ${N}`:""}`)}if(!(f===204||f===205)){if(e.method==="HEAD"){if(f<400)return;throw new TQe.RequestError(b.statusText,f,{response:{url:I,status:f,headers:A,data:void 0},request:e})}if(f===304)throw new TQe.RequestError("Not modified",f,{response:{url:I,status:f,headers:A,data:await MEr(b)},request:e});if(f>=400){let E=await MEr(b);throw new TQe.RequestError(I0a(E),f,{response:{url:I,status:f,headers:A,data:E},request:e})}return l?await MEr(b):b.body}}).then(b=>({status:f,url:I,headers:A,data:b})).catch(b=>{if(b instanceof TQe.RequestError)throw b;if(b.name==="AbortError")throw b;let E=b.message;throw b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause)),new TQe.RequestError(E,500,{request:e})})}async function MEr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():f0a(e)}function I0a(e){if(typeof e=="string")return e;let t;return"documentation_url"in e?t=` - ${e.documentation_url}`:t="","message"in e?Array.isArray(e.errors)?`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`:`${e.message}${t}`:`Unknown error: ${JSON.stringify(e)}`}function HEr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return $ri(r.parse(l));let A=(f,I)=>$ri(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:HEr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:HEr.bind(null,r)})}var h0a=HEr(g0a.endpoint,{headers:{"user-agent":`octokit-request.js/${d0a} ${(0,A0a.getUserAgent)()}`}})});var oni=H((pau,sni)=>{"use strict";var QEr=Object.defineProperty,m0a=Object.getOwnPropertyDescriptor,C0a=Object.getOwnPropertyNames,_0a=Object.prototype.hasOwnProperty,y0a=(e,t)=>{for(var r in t)QEr(e,r,{get:t[r],enumerable:!0})},b0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of C0a(t))!_0a.call(e,a)&&a!==r&&QEr(e,a,{get:()=>t[a],enumerable:!(n=m0a(t,a))||n.enumerable});return e},E0a=e=>b0a(QEr({},"__esModule",{value:!0}),e),nni={};y0a(nni,{GraphqlResponseError:()=>ini,graphql:()=>D0a,withCustomRequest:()=>k0a});sni.exports=E0a(nni);var S0a=RQe(),v0a=vQe(),B0a="7.1.0",Aau=RQe(),dau=RQe();function w0a(e){return`Request failed due to following response errors: `+e.errors.map(t=>` - ${t.message}`).join(` -`)}var qri=class extends Error{constructor(e,t,r){super(w0a(r)),this.request=e,this.headers=t,this.response=r,this.name="GraphqlResponseError",this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},T0a=["method","baseUrl","url","headers","request","query","mediaType"],R0a=["query","method","url"],jri=/\/api\/v3\/?$/;function N0a(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(R0a.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>T0a.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return jri.test(o)&&(a.url=o.replace(jri,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new qri(a,A,l.data)}return l.data.data})}function XEr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>N0a(r,a,o),{defaults:XEr.bind(null,r),endpoint:r.endpoint})}var D0a=XEr(S0a.request,{headers:{"user-agent":`octokit-graphql.js/${B0a} ${(0,v0a.getUserAgent)()}`},method:"POST",url:"/graphql"});function k0a(e){return XEr(e,{method:"POST",url:"/graphql"})}});var nni=H((wou,rni)=>{"use strict";var JEr=Object.defineProperty,x0a=Object.getOwnPropertyDescriptor,G0a=Object.getOwnPropertyNames,F0a=Object.prototype.hasOwnProperty,Z0a=(e,t)=>{for(var r in t)JEr(e,r,{get:t[r],enumerable:!0})},L0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of G0a(t))!F0a.call(e,a)&&a!==r&&JEr(e,a,{get:()=>t[a],enumerable:!(n=x0a(t,a))||n.enumerable});return e},V0a=e=>L0a(JEr({},"__esModule",{value:!0}),e),tni={};Z0a(tni,{createTokenAuth:()=>Q0a});rni.exports=V0a(tni);var W0a=/^v1\./,O0a=/^ghs_/,P0a=/^ghu_/;async function M0a(e){let t=e.split(/\./).length===3,r=W0a.test(e)||O0a.test(e),n=P0a.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function H0a(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function Y0a(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=H0a(e),t(a)}var Q0a=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(M0a.bind(null,t),{hook:Y0a.bind(null,t)})}});var uni=H((Tou,lni)=>{"use strict";var UEr=Object.defineProperty,X0a=Object.getOwnPropertyDescriptor,J0a=Object.getOwnPropertyNames,U0a=Object.prototype.hasOwnProperty,K0a=(e,t)=>{for(var r in t)UEr(e,r,{get:t[r],enumerable:!0})},j0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of J0a(t))!U0a.call(e,a)&&a!==r&&UEr(e,a,{get:()=>t[a],enumerable:!(n=X0a(t,a))||n.enumerable});return e},z0a=e=>j0a(UEr({},"__esModule",{value:!0}),e),ani={};K0a(ani,{Octokit:()=>iya});lni.exports=z0a(ani);var q0a=BQe(),$0a=Nri(),ini=NQe(),eya=eni(),tya=nni(),cni="5.2.0",sni=()=>{},rya=console.warn.bind(console),nya=console.error.bind(console),oni=`octokit-core.js/${cni} ${(0,q0a.getUserAgent)()}`,iya=class{static{this.VERSION=cni}static defaults(e){return class extends this{constructor(...r){let n=r[0]||{};if(typeof e=="function"){super(e(n));return}super(Object.assign({},e,n,n.userAgent&&e.userAgent?{userAgent:`${n.userAgent} ${e.userAgent}`}:null))}}}static{this.plugins=[]}static plugin(...e){let t=this.plugins;return class extends this{static{this.plugins=t.concat(e.filter(n=>!t.includes(n)))}}}constructor(e={}){let t=new $0a.Collection,r={baseUrl:ini.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};if(r.headers["user-agent"]=e.userAgent?`${e.userAgent} ${oni}`:oni,e.baseUrl&&(r.baseUrl=e.baseUrl),e.previews&&(r.mediaType.previews=e.previews),e.timeZone&&(r.headers["time-zone"]=e.timeZone),this.request=ini.request.defaults(r),this.graphql=(0,eya.withCustomRequest)(this.request).defaults(r),this.log=Object.assign({debug:sni,info:sni,warn:rya,error:nya},e.log),this.hook=t,e.authStrategy){let{authStrategy:a,...o}=e,l=a(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));t.wrap("request",l.hook),this.auth=l}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let a=(0,tya.createTokenAuth)(e.auth);t.wrap("request",a.hook),this.auth=a}let n=this.constructor;for(let a=0;a{"use strict";var KEr=Object.defineProperty,sya=Object.getOwnPropertyDescriptor,oya=Object.getOwnPropertyNames,aya=Object.prototype.hasOwnProperty,cya=(e,t)=>{for(var r in t)KEr(e,r,{get:t[r],enumerable:!0})},lya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of oya(t))!aya.call(e,a)&&a!==r&&KEr(e,a,{get:()=>t[a],enumerable:!(n=sya(t,a))||n.enumerable});return e},uya=e=>lya(KEr({},"__esModule",{value:!0}),e),gni={};cya(gni,{legacyRestEndpointMethods:()=>fni,restEndpointMethods:()=>pni});Ini.exports=uya(gni);var Ani="10.4.1",gya={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Aya=gya,Ohe=new Map;for(let[e,t]of Object.entries(Aya))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);Ohe.has(e)||Ohe.set(e,new Map),Ohe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var dya={has({scope:e},t){return Ohe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Ohe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=Ohe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=pya(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function dni(e){let t={};for(let r of Ohe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},dya);return t}function pya(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function pni(e){return{rest:dni(e)}}pni.VERSION=Ani;function fni(e){let t=dni(e);return{...t,rest:t}}fni.VERSION=Ani});var Sni=H((xou,Eni)=>{"use strict";var jEr=Object.defineProperty,fya=Object.getOwnPropertyDescriptor,Iya=Object.getOwnPropertyNames,hya=Object.prototype.hasOwnProperty,mya=(e,t)=>{for(var r in t)jEr(e,r,{get:t[r],enumerable:!0})},Cya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Iya(t))!hya.call(e,a)&&a!==r&&jEr(e,a,{get:()=>t[a],enumerable:!(n=fya(t,a))||n.enumerable});return e},_ya=e=>Cya(jEr({},"__esModule",{value:!0}),e),mni={};mya(mni,{composePaginateRest:()=>Eya,isPaginatingEndpoint:()=>Sya,paginateRest:()=>bni,paginatingEndpoints:()=>yni});Eni.exports=_ya(mni);var yya="9.2.1";function bya(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function zEr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=bya(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function Cni(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),_ni(e,[],zEr(e,t,r)[Symbol.asyncIterator](),n)}function _ni(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:_ni(e,t,r,n)})}var Eya=Object.assign(Cni,{iterator:zEr}),yni=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function Sya(e){return typeof e=="string"?yni.includes(e):!1}function bni(e){return{paginate:Object.assign(Cni.bind(null,e),{iterator:zEr.bind(null,e)})}}bni.VERSION=yya});var Bni=H(Vk=>{"use strict";var vya=Vk&&Vk.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Bya=Vk&&Vk.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),vni=Vk&&Vk.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&vya(t,e,r);return Bya(t,e),t};Object.defineProperty(Vk,"__esModule",{value:!0});Vk.getOctokitOptions=Vk.GitHub=Vk.defaults=Vk.context=void 0;var wya=vni(hmr()),oCt=vni(Iri()),Tya=uni(),Rya=hni(),Nya=Sni();Vk.context=new wya.Context;var qEr=oCt.getApiBaseUrl();Vk.defaults={baseUrl:qEr,request:{agent:oCt.getProxyAgent(qEr),fetch:oCt.getProxyFetch(qEr)}};Vk.GitHub=Tya.Octokit.plugin(Rya.restEndpointMethods,Nya.paginateRest).defaults(Vk.defaults);function Dya(e,t){let r=Object.assign({},t||{}),n=oCt.getAuthString(e,r);return n&&(r.auth=n),r}Vk.getOctokitOptions=Dya});var wTe=H(JM=>{"use strict";var kya=JM&&JM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xya=JM&&JM.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Gya=JM&&JM.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&kya(t,e,r);return xya(t,e),t};Object.defineProperty(JM,"__esModule",{value:!0});JM.getOctokit=JM.context=void 0;var Fya=Gya(hmr()),wni=Bni();JM.context=new Fya.Context;function Zya(e,t,...r){let n=wni.GitHub.plugin(...r);return new n((0,wni.getOctokitOptions)(e,t))}JM.getOctokit=Zya});function i1r({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Uni=bc(()=>{});function lee(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Oya,"")}var Oya,xQe=bc(()=>{Uni();Oya=i1r()});var Lii=H((Tcu,Zii)=>{"use strict";function sba(e,t){var r=e;t.slice(0,-1).forEach(function(a){r=r[a]||{}});var n=t[t.length-1];return n in r}function Gii(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function Fii(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}Zii.exports=function(e,t){t||(t={});var r={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(r.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?r.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(ce){r.bools[ce]=!0});var n={};function a(ce){return n[ce].some(function(fe){return r.bools[fe]})}Object.keys(t.alias||{}).forEach(function(ce){n[ce]=[].concat(t.alias[ce]),n[ce].forEach(function(fe){n[fe]=[ce].concat(n[ce].filter(function(ue){return fe!==ue}))})}),[].concat(t.string).filter(Boolean).forEach(function(ce){r.strings[ce]=!0,n[ce]&&[].concat(n[ce]).forEach(function(fe){r.strings[fe]=!0})});var o=t.default||{},l={_:[]};function A(ce,fe){return r.allBools&&/^--[^=]+$/.test(fe)||r.strings[ce]||r.bools[ce]||n[ce]}function f(ce,fe,ue){for(var de=ce,be=0;be{"use strict";var{Transform:oba}=Et("stream"),{StringDecoder:aba}=Et("string_decoder"),Gae=Symbol("last"),fCt=Symbol("decoder");function cba(e,t,r){let n;if(this.overflow){if(n=this[fCt].write(e).split(this.matcher),n.length===1)return r();n.shift(),this.overflow=!1}else this[Gae]+=this[fCt].write(e),n=this[Gae].split(this.matcher);this[Gae]=n.pop();for(let a=0;athis.maxLength,this.overflow&&!this.skipOverflow){r(new Error("maximum buffer reached"));return}r()}function lba(e){if(this[Gae]+=this[fCt].end(),this[Gae])try{Wii(this,this.mapper(this[Gae]))}catch(t){return e(t)}e()}function Wii(e,t){t!==void 0&&e.push(t)}function Vii(e){return e}function uba(e,t,r){switch(e=e||/\r?\n/,t=t||Vii,r=r||{},arguments.length){case 1:typeof e=="function"?(t=e,e=/\r?\n/):typeof e=="object"&&!(e instanceof RegExp)&&!e[Symbol.split]&&(r=e,e=/\r?\n/);break;case 2:typeof e=="function"?(r=t,t=e,e=/\r?\n/):typeof t=="object"&&(r=t,t=Vii)}r=Object.assign({},r),r.autoDestroy=!0,r.transform=cba,r.flush=lba,r.readableObjectMode=!0;let n=new oba(r);return n[Gae]="",n[fCt]=new aba("utf8"),n.matcher=e,n.mapper=t,n.maxLength=r.maxLength,n.skipOverflow=r.skipOverflow||!1,n.overflow=!1,n._destroy=function(a,o){this._writableState.errorEmitted=!1,o(a)},n}Oii.exports=uba});var Yii={};Uf(Yii,{default:()=>Hii});function Hii(e,t){let r=[],n=[],a=[];t={useEquals:!0,shortFlag:!0,...t};let o=(A,f)=>{let I=t.shortFlag&&A.length===1?"-":"--",C=t.allowCamelCase?A:A.replace(/[A-Z]/g,"-$&").toLowerCase();A=I+C,t.useEquals?r.push(A+(f?`=${f}`:"")):(r.push(A),f&&r.push(f))},l=(A,f)=>{r.push(`-${A}`),f&&r.push(f)};for(let[A,f]of Object.entries(e)){let I=o;if(!(Array.isArray(t.excludes)&&Mii(t.excludes,A))&&!(Array.isArray(t.includes)&&!Mii(t.includes,A))){if(typeof t.aliases=="object"&&t.aliases[A]&&(A=t.aliases[A],I=l),A==="--"){if(!Array.isArray(f))throw new TypeError(`Expected key \`--\` to be Array, got ${typeof f}`);a=f;continue}if(A==="_"){if(!Array.isArray(f))throw new TypeError(`Expected key \`_\` to be Array, got ${typeof f}`);n=f;continue}if(f===!0&&!t.ignoreTrue&&I(A,""),f===!1&&!t.ignoreFalse&&I(`no-${A}`),typeof f=="string"&&I(A,f),typeof f=="number"&&!Number.isNaN(f)&&I(A,String(f)),Array.isArray(f))for(let C of f)I(A,C)}}for(let A of n)r.push(String(A));a.length>0&&r.push("--");for(let A of a)r.push(String(A));return r}var Mii,Qii=bc(()=>{Mii=(e,t)=>e.some(r=>r instanceof RegExp?r.test(t):r===t)});var Kii=H((Ncu,Uii)=>{var{Readable:gba,Transform:Xii}=Et("stream"),{execFile:Aba}=Et("child_process"),dba=Pii(),Jii="------------------------ >8 ------------------------";function pba(e){return e=e||{},e.cwd=e.cwd||process.cwd(),e}function fba(e){return e=e||{},e.format=e.format||"%B",e.from=e.from||"",e.to=e.to||"HEAD",e}async function Iba(e){let{default:t}=await Promise.resolve().then(()=>(Qii(),Yii)),r=`--format=${e.format||""}%n${Jii}`,n=[e.from,e.to].filter(Boolean).join(".."),a=["log",r,n].concat(t(e,{excludes:["debug","from","to","format","path","ignore"]}));return e.path&&a.push("--",...Array.isArray(e.path)?e.path:[e.path]),a}function hba(e,t){let r=new gba;r._read=()=>{};let n=fba(e),a=pba(t),o=!1;return Iba(n).then(l=>{n.debug&&n.debug(`Your git-log command is: -git `+l.join(" "));let A=typeof n.ignore=="string"?new RegExp(n.ignore):n.ignore,f=A?C=>!A.test(C.toString()):()=>!0,I=Aba("git",l,{cwd:a.cwd,maxBuffer:1/0});I.stdout.pipe(dba(Jii+` -`)).pipe(new Xii({transform(C,b,E){o=!1,setImmediate(()=>{f(C)&&r.push(C),E()})},flush(C){setImmediate(()=>{o||(r.push(null),r.emit("close")),C()})}})),I.stderr.pipe(new Xii({objectMode:!0,highWaterMark:16,transform(C){o=!0,r.emit("error",new Error(C)),r.emit("close")}}))}),r}Uii.exports=hba});var Hhe,fsi=bc(()=>{Hhe=[];Hhe.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Hhe.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Hhe.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")});var ECt,Z1r,L1r,eEa,V1r,SCt,tEa,W1r,O1r,P1r,vCt,Llu,Vlu,M1r=bc(()=>{fsi();ECt=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",Z1r=Symbol.for("signal-exit emitter"),L1r=globalThis,eEa=Object.defineProperty.bind(Object),V1r=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(L1r[Z1r])return L1r[Z1r];eEa(L1r,Z1r,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(t,r){this.listeners[t].push(r)}removeListener(t,r){let n=this.listeners[t],a=n.indexOf(r);a!==-1&&(a===0&&n.length===1?n.length=0:n.splice(a,1))}emit(t,r,n){if(this.emitted[t])return!1;this.emitted[t]=!0;let a=!1;for(let o of this.listeners[t])a=o(r,n)===!0||a;return t==="exit"&&(a=this.emit("afterExit",r,n)||a),a}},SCt=class{},tEa=e=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}}),W1r=class extends SCt{onExit(){return()=>{}}load(){}unload(){}},O1r=class extends SCt{#e=P1r.platform==="win32"?"SIGINT":"SIGHUP";#t=new V1r;#n;#r;#i;#s={};#o=!1;constructor(t){super(),this.#n=t,this.#s={};for(let r of Hhe)this.#s[r]=()=>{let n=this.#n.listeners(r),{count:a}=this.#t,o=t;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(a+=o.__signal_exit_emitter__.count),n.length===a){this.unload();let l=this.#t.emit("exit",null,r),A=r==="SIGHUP"?this.#e:r;l||t.kill(t.pid,A)}};this.#i=t.reallyExit,this.#r=t.emit}onExit(t,r){if(!ECt(this.#n))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#t.on(n,t),()=>{this.#t.removeListener(n,t),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#t.count+=1;for(let t of Hhe)try{let r=this.#s[t];r&&this.#n.on(t,r)}catch{}this.#n.emit=(t,...r)=>this.#l(t,...r),this.#n.reallyExit=t=>this.#g(t)}}unload(){this.#o&&(this.#o=!1,Hhe.forEach(t=>{let r=this.#s[t];if(!r)throw new Error("Listener not defined for signal: "+t);try{this.#n.removeListener(t,r)}catch{}}),this.#n.emit=this.#r,this.#n.reallyExit=this.#i,this.#t.count-=1)}#g(t){return ECt(this.#n)?(this.#n.exitCode=t||0,this.#t.emit("exit",this.#n.exitCode,null),this.#i.call(this.#n,this.#n.exitCode)):0}#l(t,...r){let n=this.#r;if(t==="exit"&&ECt(this.#n)){typeof r[0]=="number"&&(this.#n.exitCode=r[0]);let a=n.call(this.#n,t,...r);return this.#t.emit("exit",this.#n.exitCode,null),a}else return n.call(this.#n,t,...r)}},P1r=globalThis.process,{onExit:vCt,load:Llu,unload:Vlu}=tEa(ECt(P1r)?new O1r(P1r):new W1r)});var ksi=H((puu,Dsi)=>{"use strict";var{PassThrough:REa}=Et("stream");Dsi.exports=function(){var e=[],t=new REa({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=n,t.on("unpipe",a),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",a.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function n(){return e.length==0}function a(o){e=e.filter(function(l){return l!==o}),!e.length&&t.readable&&t.end()}}});var foi=H((Bgu,poi)=>{"use strict";var _1a=/()(.+)/gi,y1a="# ------------------------ >8 ------------------------";function WCt(e){let t=e.match(/[^\r\n]/);if(!t)return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` -`;)n--;return e.substring(r,n+1)}function Yhe(e,t){return e?e+=` -`+t:e=t,e}function b1a(e){return function(t){return t.charAt(0)!==e}}function E1a(e){let t=e.indexOf(y1a);return t===-1?e:e.slice(0,t)}function doi(e,t){let r=[],n,a,o=e.match(t.references)!==null?t.references:_1a;for(;n=o.exec(e);){let l=n[1]||null,A=n[2];for(;a=t.referenceParts.exec(A);){let f=null,I=a[1]||"",C=I.split("/");C.length>1&&(f=C.shift(),I=C.join("/"));let b={action:l,owner:f,repository:I||null,issue:a[3],raw:a[0],prefix:a[2]};r.push(b)}}return r}function S1a(){return!0}function v1a(e,t,r){if(!e||!e.trim())throw new TypeError("Expected a raw commit");if(!t||typeof t=="object"&&!Object.keys(t).length)throw new TypeError("Expected options");if(!r)throw new TypeError("Expected regex");let n,a,o={},l=typeof t.commentChar=="string"?b1a(t.commentChar):S1a,A=ze=>!ze.match(/^\s*gpg:/),f=WCt(e).split(/\r?\n/),I=E1a(f).filter(l).filter(A),C=!1,b=!0,E=t.headerCorrespondence?.map(function(ze){return ze.trim()})||[],N=t.revertCorrespondence?.map(function(ze){return ze.trim()})||[],B=t.mergeCorrespondence?.map(function(ze){return ze.trim()})||[],F=null,Q=null,J=null,ae=[],ne=null,ce=[],fe=[],ue=null;if(I.length===0)return{body:F,footer:Q,header:J,mentions:ae,merge:ne,notes:ce,references:fe,revert:ue,scope:null,subject:null,type:null};ne=I.shift();let de={},be={};F="",Q="";let Se=ne.match(t.mergePattern);if(Se&&t.mergePattern){for(ne=Se[0],J=I.shift();J!==void 0&&!J.trim();)J=I.shift();J||(J=""),B.forEach(function(ze,Le){let Je=Se[Le+1]||null;de[ze]=Je})}else J=ne,ne=null,B.forEach(function(ze){de[ze]=null});let De=J.match(t.headerPattern);if(De?E.forEach(function(ze,Le){let Je=De[Le+1]||null;be[ze]=Je}):E.forEach(function(ze){be[ze]=null}),fe.push(...doi(J,{references:r.references,referenceParts:r.referenceParts})),I.forEach(function(ze){if(t.fieldPattern){let lt=t.fieldPattern.exec(ze);if(lt){n=lt[1];return}if(n){o[n]=Yhe(o[n],ze);return}}let Le,Je=ze.match(r.notes);if(Je){C=!0,b=!1,Q=Yhe(Q,ze);let lt={title:Je[1],text:Je[2]};ce.push(lt);return}let ft=doi(ze,{references:r.references,referenceParts:r.referenceParts});if(ft.length>0&&(b=!1,Le=!0,C=!1),Array.prototype.push.apply(fe,ft),Le){Q=Yhe(Q,ze);return}if(C){ce[ce.length-1].text=Yhe(ce[ce.length-1].text,ze),Q=Yhe(Q,ze);return}b?F=Yhe(F,ze):Q=Yhe(Q,ze)}),t.breakingHeaderPattern&&ce.length===0){let ze=J.match(t.breakingHeaderPattern);if(ze){let Le=ze[3];ce.push({title:"BREAKING CHANGE",text:Le})}}for(;a=r.mentions.exec(e);)ae.push(a[1]);let k=e.match(t.revertPattern);return k?(ue={},N.forEach(function(ze,Le){let Je=k[Le+1]||null;ue[ze]=Je})):ue=null,ce.forEach(function(ze){ze.text=WCt(ze.text)}),{...be,...de,merge:ne,header:J,body:F?WCt(F):null,footer:Q?WCt(Q):null,notes:ce,references:fe,mentions:ae,revert:ue,...o}}poi.exports=v1a});var moi=H((wgu,hoi)=>{"use strict";var Ioi=/(?!.*)/;function c2r(e,t){return e.map(function(r){return r.trim()}).filter(function(r){return r.length}).join(t)}function B1a(e,t){if(!e)return Ioi;let r=c2r(e,"|");return t?t(r):new RegExp("^[\\s|*]*("+r+")[:\\s]+(.*)","i")}function w1a(e,t){if(!e)return Ioi;let r=t?"g":"gi";return new RegExp("(?:.*?)??\\s*([\\w-\\.\\/]*?)??("+c2r(e,"|")+")([\\w-]*\\d+)",r)}function T1a(e){if(!e)return/()(.+)/gi;let t=c2r(e,"|");return new RegExp("("+t+")(?:\\s+(.*?))(?=(?:"+t+")|$)","gi")}hoi.exports=function(e){e=e||{};let t=B1a(e.noteKeywords,e.notesPattern),r=w1a(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=T1a(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}});var boi=H((Tgu,l2r)=>{"use strict";var{Transform:R1a}=Et("stream"),Coi=foi(),_oi=moi();function yoi(e){return e={headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#"],noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],fieldPattern:/^-(.*?)-$/,revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],warn:function(){},mergePattern:null,mergeCorrespondence:null,...e},typeof e.headerPattern=="string"&&(e.headerPattern=new RegExp(e.headerPattern)),typeof e.headerCorrespondence=="string"&&(e.headerCorrespondence=e.headerCorrespondence.split(",")),typeof e.referenceActions=="string"&&(e.referenceActions=e.referenceActions.split(",")),typeof e.issuePrefixes=="string"&&(e.issuePrefixes=e.issuePrefixes.split(",")),typeof e.noteKeywords=="string"&&(e.noteKeywords=e.noteKeywords.split(",")),typeof e.fieldPattern=="string"&&(e.fieldPattern=new RegExp(e.fieldPattern)),typeof e.revertPattern=="string"&&(e.revertPattern=new RegExp(e.revertPattern)),typeof e.revertCorrespondence=="string"&&(e.revertCorrespondence=e.revertCorrespondence.split(",")),typeof e.mergePattern=="string"&&(e.mergePattern=new RegExp(e.mergePattern)),e}function N1a(e){e=yoi(e);let t=_oi(e);return new R1a({objectMode:!0,highWaterMark:16,transform(r,n,a){let o;try{o=Coi(r.toString(),e,t),a(null,o)}catch(l){e.warn===!0?a(l):(e.warn(l.toString()),a(null,""))}}})}function D1a(e,t){t=yoi(t);let r=_oi(t);return Coi(e,t,r)}l2r.exports=N1a;l2r.exports.sync=D1a});var Soi=H((Rgu,Eoi)=>{"use strict";function k1a(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w*)\./i,revertCorrespondence:["header","hash"]}}Eoi.exports.createParserOpts=k1a});var Boi=H((Ngu,voi)=>{"use strict";var x1a=yIr();async function G1a(){let e=F1a();return e.mainTemplate="",e.headerPartial="",e.commitPartial="",e.footerPartial="",e}voi.exports.createWriterOpts=G1a;function F1a(){return{transform:(e,t)=>{let r=!0,n=[];if(e.notes.forEach(a=>{a.title="BREAKING CHANGES",r=!1}),e.type==="feat")e.type="Features";else if(e.type==="fix")e.type="Bug Fixes";else if(e.type==="perf")e.type="Performance Improvements";else if(e.type==="revert"||e.revert)e.type="Reverts";else{if(r)return;e.type==="docs"?e.type="Documentation":e.type==="style"?e.type="Styles":e.type==="refactor"?e.type="Code Refactoring":e.type==="test"?e.type="Tests":e.type==="build"?e.type="Build System":e.type==="ci"&&(e.type="Continuous Integration")}if(e.scope==="*"&&(e.scope=""),typeof e.hash=="string"&&(e.shortHash=e.hash.substring(0,7)),typeof e.subject=="string"){let a=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;a&&(a=`${a}/issues/`,e.subject=e.subject.replace(/#([0-9]+)/g,(o,l)=>(n.push(l),`[#${l}](${a}${l})`))),t.host&&(e.subject=e.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(o,l)=>l.includes("/")?`@${l}`:`[@${l}](${t.host}/${l})`))}return e.references=e.references.filter(a=>n.indexOf(a.issue)===-1),e},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:x1a}}});var Toi=H((Dgu,woi)=>{"use strict";function Z1a(e,t){return{parserOpts:e,writerOpts:t}}woi.exports.createConventionalChangelogOpts=Z1a});var Noi=H((kgu,Roi)=>{"use strict";function L1a(e){return{parserOpts:e,whatBump(t){let r=2,n=0,a=0;return t.forEach(o=>{o.notes.length>0?(n+=o.notes.length,r=0):o.type==="feat"&&(a+=1,r===2&&(r=1))}),{level:r,reason:n===1?`There is ${n} BREAKING CHANGE and ${a} features`:`There are ${n} BREAKING CHANGES and ${a} features`}}}}Roi.exports.createConventionalRecommendedBumpOpts=L1a});var koi=H((xgu,Doi)=>{"use strict";var{createParserOpts:V1a}=Soi(),{createWriterOpts:W1a}=Boi(),{createConventionalChangelogOpts:O1a}=Toi(),{createConventionalRecommendedBumpOpts:P1a}=Noi();async function M1a(){let e=V1a(),t=await W1a(),r=P1a(e),n=O1a(e,t);return{parserOpts:e,writerOpts:t,recommendedBumpOpts:r,conventionalChangelog:n}}Doi.exports=M1a});var oai=H((Fgu,sai)=>{var Y1a=1/0,Q1a="[object Symbol]",X1a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,J1a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,PCt="\\ud800-\\udfff",Hoi="\\u0300-\\u036f\\ufe20-\\ufe23",Yoi="\\u20d0-\\u20f0",Qoi="\\u2700-\\u27bf",Xoi="a-z\\xdf-\\xf6\\xf8-\\xff",U1a="\\xac\\xb1\\xd7\\xf7",K1a="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",j1a="\\u2000-\\u206f",z1a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Joi="A-Z\\xc0-\\xd6\\xd8-\\xde",Uoi="\\ufe0e\\ufe0f",Koi=U1a+K1a+j1a+z1a,g2r="['\u2019]",q1a="["+PCt+"]",Zoi="["+Koi+"]",OCt="["+Hoi+Yoi+"]",joi="\\d+",$1a="["+Qoi+"]",zoi="["+Xoi+"]",qoi="[^"+PCt+Koi+joi+Qoi+Xoi+Joi+"]",u2r="\\ud83c[\\udffb-\\udfff]",e2a="(?:"+OCt+"|"+u2r+")",$oi="[^"+PCt+"]",A2r="(?:\\ud83c[\\udde6-\\uddff]){2}",d2r="[\\ud800-\\udbff][\\udc00-\\udfff]",FTe="["+Joi+"]",eai="\\u200d",Loi="(?:"+zoi+"|"+qoi+")",t2a="(?:"+FTe+"|"+qoi+")",Voi="(?:"+g2r+"(?:d|ll|m|re|s|t|ve))?",Woi="(?:"+g2r+"(?:D|LL|M|RE|S|T|VE))?",tai=e2a+"?",rai="["+Uoi+"]?",r2a="(?:"+eai+"(?:"+[$oi,A2r,d2r].join("|")+")"+rai+tai+")*",nai=rai+tai+r2a,n2a="(?:"+[$1a,A2r,d2r].join("|")+")"+nai,i2a="(?:"+[$oi+OCt+"?",OCt,A2r,d2r,q1a].join("|")+")",s2a=RegExp(g2r,"g"),o2a=RegExp(OCt,"g"),a2a=RegExp(u2r+"(?="+u2r+")|"+i2a+nai,"g"),c2a=RegExp([FTe+"?"+zoi+"+"+Voi+"(?="+[Zoi,FTe,"$"].join("|")+")",t2a+"+"+Woi+"(?="+[Zoi,FTe+Loi,"$"].join("|")+")",FTe+"?"+Loi+"+"+Voi,FTe+"+"+Woi,joi,n2a].join("|"),"g"),l2a=RegExp("["+eai+PCt+Hoi+Yoi+Uoi+"]"),u2a=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,g2a={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},A2a=typeof global=="object"&&global&&global.Object===Object&&global,d2a=typeof self=="object"&&self&&self.Object===Object&&self,p2a=A2a||d2a||Function("return this")();function f2a(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:B2a(e,t,r)}function R2a(e){return function(t){t=MCt(t);var r=iai(t)?y2a(t):void 0,n=r?r[0]:t.charAt(0),a=r?T2a(r,1).join(""):t.slice(1);return n[e]()+a}}function N2a(e){return function(t){return f2a(L2a(F2a(t).replace(s2a,"")),e,"")}}function D2a(e){return!!e&&typeof e=="object"}function k2a(e){return typeof e=="symbol"||D2a(e)&&v2a.call(e)==Q1a}function MCt(e){return e==null?"":w2a(e)}var x2a=N2a(function(e,t,r){return t=t.toLowerCase(),e+(r?G2a(t):t)});function G2a(e){return Z2a(MCt(e).toLowerCase())}function F2a(e){return e=MCt(e),e&&e.replace(J1a,C2a).replace(o2a,"")}var Z2a=R2a("toUpperCase");function L2a(e,t,r){return e=MCt(e),t=r?void 0:t,t===void 0?_2a(e)?E2a(e):h2a(e):e.match(t)||[]}sai.exports=x2a});var Rai=H((Zgu,Tai)=>{var V2a=1/0,W2a="[object Symbol]",O2a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,P2a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,pai="\\ud800-\\udfff",M2a="\\u0300-\\u036f\\ufe20-\\ufe23",H2a="\\u20d0-\\u20f0",fai="\\u2700-\\u27bf",Iai="a-z\\xdf-\\xf6\\xf8-\\xff",Y2a="\\xac\\xb1\\xd7\\xf7",Q2a="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",X2a="\\u2000-\\u206f",J2a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",hai="A-Z\\xc0-\\xd6\\xd8-\\xde",U2a="\\ufe0e\\ufe0f",mai=Y2a+Q2a+X2a+J2a,p2r="['\u2019]",aai="["+mai+"]",Cai="["+M2a+H2a+"]",_ai="\\d+",K2a="["+fai+"]",yai="["+Iai+"]",bai="[^"+pai+mai+_ai+fai+Iai+hai+"]",j2a="\\ud83c[\\udffb-\\udfff]",z2a="(?:"+Cai+"|"+j2a+")",q2a="[^"+pai+"]",Eai="(?:\\ud83c[\\udde6-\\uddff]){2}",Sai="[\\ud800-\\udbff][\\udc00-\\udfff]",ZTe="["+hai+"]",$2a="\\u200d",cai="(?:"+yai+"|"+bai+")",eSa="(?:"+ZTe+"|"+bai+")",lai="(?:"+p2r+"(?:d|ll|m|re|s|t|ve))?",uai="(?:"+p2r+"(?:D|LL|M|RE|S|T|VE))?",vai=z2a+"?",Bai="["+U2a+"]?",tSa="(?:"+$2a+"(?:"+[q2a,Eai,Sai].join("|")+")"+Bai+vai+")*",rSa=Bai+vai+tSa,nSa="(?:"+[K2a,Eai,Sai].join("|")+")"+rSa,iSa=RegExp(p2r,"g"),sSa=RegExp(Cai,"g"),oSa=RegExp([ZTe+"?"+yai+"+"+lai+"(?="+[aai,ZTe,"$"].join("|")+")",eSa+"+"+uai+"(?="+[aai,ZTe+cai,"$"].join("|")+")",ZTe+"?"+cai+"+"+lai,ZTe+"+"+uai,_ai,nSa].join("|"),"g"),aSa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,cSa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},lSa=typeof global=="object"&&global&&global.Object===Object&&global,uSa=typeof self=="object"&&self&&self.Object===Object&&self,gSa=lSa||uSa||Function("return this")();function ASa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var wSa=1/0,TSa="[object Symbol]",RSa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,NSa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Lai="\\ud800-\\udfff",DSa="\\u0300-\\u036f\\ufe20-\\ufe23",kSa="\\u20d0-\\u20f0",Vai="\\u2700-\\u27bf",Wai="a-z\\xdf-\\xf6\\xf8-\\xff",xSa="\\xac\\xb1\\xd7\\xf7",GSa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",FSa="\\u2000-\\u206f",ZSa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Oai="A-Z\\xc0-\\xd6\\xd8-\\xde",LSa="\\ufe0e\\ufe0f",Pai=xSa+GSa+FSa+ZSa,f2r="['\u2019]",Nai="["+Pai+"]",Mai="["+DSa+kSa+"]",Hai="\\d+",VSa="["+Vai+"]",Yai="["+Wai+"]",Qai="[^"+Lai+Pai+Hai+Vai+Wai+Oai+"]",WSa="\\ud83c[\\udffb-\\udfff]",OSa="(?:"+Mai+"|"+WSa+")",PSa="[^"+Lai+"]",Xai="(?:\\ud83c[\\udde6-\\uddff]){2}",Jai="[\\ud800-\\udbff][\\udc00-\\udfff]",LTe="["+Oai+"]",MSa="\\u200d",Dai="(?:"+Yai+"|"+Qai+")",HSa="(?:"+LTe+"|"+Qai+")",kai="(?:"+f2r+"(?:d|ll|m|re|s|t|ve))?",xai="(?:"+f2r+"(?:D|LL|M|RE|S|T|VE))?",Uai=OSa+"?",Kai="["+LSa+"]?",YSa="(?:"+MSa+"(?:"+[PSa,Xai,Jai].join("|")+")"+Kai+Uai+")*",QSa=Kai+Uai+YSa,XSa="(?:"+[VSa,Xai,Jai].join("|")+")"+QSa,JSa=RegExp(f2r,"g"),USa=RegExp(Mai,"g"),KSa=RegExp([LTe+"?"+Yai+"+"+kai+"(?="+[Nai,LTe,"$"].join("|")+")",HSa+"+"+xai+"(?="+[Nai,LTe+Dai,"$"].join("|")+")",LTe+"?"+Dai+"+"+kai,LTe+"+"+xai,Hai,XSa].join("|"),"g"),jSa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,zSa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},qSa=typeof global=="object"&&global&&global.Object===Object&&global,$Sa=typeof self=="object"&&self&&self.Object===Object&&self,eva=qSa||$Sa||Function("return this")();function tva(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var Iva=1/0,hva="[object Symbol]",m2r="\\ud800-\\udfff",rci="\\u0300-\\u036f\\ufe20-\\ufe23",nci="\\u20d0-\\u20f0",ici="\\ufe0e\\ufe0f",mva="["+m2r+"]",I2r="["+rci+nci+"]",h2r="\\ud83c[\\udffb-\\udfff]",Cva="(?:"+I2r+"|"+h2r+")",sci="[^"+m2r+"]",oci="(?:\\ud83c[\\udde6-\\uddff]){2}",aci="[\\ud800-\\udbff][\\udc00-\\udfff]",cci="\\u200d",lci=Cva+"?",uci="["+ici+"]?",_va="(?:"+cci+"(?:"+[sci,oci,aci].join("|")+")"+uci+lci+")*",yva=uci+lci+_va,bva="(?:"+[sci+I2r+"?",I2r,oci,aci,mva].join("|")+")",Eva=RegExp(h2r+"(?="+h2r+")|"+bva+yva,"g"),Sva=RegExp("["+cci+m2r+rci+nci+ici+"]"),vva=typeof global=="object"&&global&&global.Object===Object&&global,Bva=typeof self=="object"&&self&&self.Object===Object&&self,wva=vva||Bva||Function("return this")();function Tva(e){return e.split("")}function gci(e){return Sva.test(e)}function Rva(e){return gci(e)?Nva(e):Tva(e)}function Nva(e){return e.match(Eva)||[]}var Dva=Object.prototype,kva=Dva.toString,$ai=wva.Symbol,eci=$ai?$ai.prototype:void 0,tci=eci?eci.toString:void 0;function xva(e,t,r){var n=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:xva(e,t,r)}function Zva(e){return function(t){t=Wva(t);var r=gci(t)?Rva(t):void 0,n=r?r[0]:t.charAt(0),a=r?Fva(r,1).join(""):t.slice(1);return n[e]()+a}}function Lva(e){return!!e&&typeof e=="object"}function Vva(e){return typeof e=="symbol"||Lva(e)&&kva.call(e)==hva}function Wva(e){return e==null?"":Gva(e)}var Ova=Zva("toUpperCase");Aci.exports=Ova});var Vci=H((Wgu,Lci)=>{var Pva=1/0,Mva="[object Symbol]",Hva=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Yva=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,YCt="\\ud800-\\udfff",yci="\\u0300-\\u036f\\ufe20-\\ufe23",bci="\\u20d0-\\u20f0",Eci="\\u2700-\\u27bf",Sci="a-z\\xdf-\\xf6\\xf8-\\xff",Qva="\\xac\\xb1\\xd7\\xf7",Xva="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Jva="\\u2000-\\u206f",Uva=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",vci="A-Z\\xc0-\\xd6\\xd8-\\xde",Bci="\\ufe0e\\ufe0f",wci=Qva+Xva+Jva+Uva,_2r="['\u2019]",Kva="["+YCt+"]",pci="["+wci+"]",HCt="["+yci+bci+"]",Tci="\\d+",jva="["+Eci+"]",Rci="["+Sci+"]",Nci="[^"+YCt+wci+Tci+Eci+Sci+vci+"]",C2r="\\ud83c[\\udffb-\\udfff]",zva="(?:"+HCt+"|"+C2r+")",Dci="[^"+YCt+"]",y2r="(?:\\ud83c[\\udde6-\\uddff]){2}",b2r="[\\ud800-\\udbff][\\udc00-\\udfff]",VTe="["+vci+"]",kci="\\u200d",fci="(?:"+Rci+"|"+Nci+")",qva="(?:"+VTe+"|"+Nci+")",Ici="(?:"+_2r+"(?:d|ll|m|re|s|t|ve))?",hci="(?:"+_2r+"(?:D|LL|M|RE|S|T|VE))?",xci=zva+"?",Gci="["+Bci+"]?",$va="(?:"+kci+"(?:"+[Dci,y2r,b2r].join("|")+")"+Gci+xci+")*",Fci=Gci+xci+$va,eBa="(?:"+[jva,y2r,b2r].join("|")+")"+Fci,tBa="(?:"+[Dci+HCt+"?",HCt,y2r,b2r,Kva].join("|")+")",rBa=RegExp(_2r,"g"),nBa=RegExp(HCt,"g"),iBa=RegExp(C2r+"(?="+C2r+")|"+tBa+Fci,"g"),sBa=RegExp([VTe+"?"+Rci+"+"+Ici+"(?="+[pci,VTe,"$"].join("|")+")",qva+"+"+hci+"(?="+[pci,VTe+fci,"$"].join("|")+")",VTe+"?"+fci+"+"+Ici,VTe+"+"+hci,Tci,eBa].join("|"),"g"),oBa=RegExp("["+kci+YCt+yci+bci+Bci+"]"),aBa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,cBa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},lBa=typeof global=="object"&&global&&global.Object===Object&&global,uBa=typeof self=="object"&&self&&self.Object===Object&&self,gBa=lBa||uBa||Function("return this")();function ABa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:EBa(e,t,r)}function BBa(e){return function(t){t=E2r(t);var r=Zci(t)?mBa(t):void 0,n=r?r[0]:t.charAt(0),a=r?vBa(r,1).join(""):t.slice(1);return n[e]()+a}}function wBa(e){return function(t){return ABa(xBa(NBa(t).replace(rBa,"")),e,"")}}function TBa(e){return!!e&&typeof e=="object"}function RBa(e){return typeof e=="symbol"||TBa(e)&&bBa.call(e)==Mva}function E2r(e){return e==null?"":SBa(e)}function NBa(e){return e=E2r(e),e&&e.replace(Yva,IBa).replace(nBa,"")}var DBa=wBa(function(e,t,r){return e+(r?" ":"")+kBa(t)}),kBa=BBa("toUpperCase");function xBa(e,t,r){return e=E2r(e),t=r?void 0:t,t===void 0?hBa(e)?_Ba(e):pBa(e):e.match(t)||[]}Lci.exports=DBa});var Dli=H(Xhe=>{"use strict";Object.defineProperty(Xhe,"__esModule",{value:!0});Xhe.Application=Xhe.MinistoreContext=void 0;var WBa=(Wa(),vi(Va)),OBa=ul(),UQe=WBa.__importStar(Ec()),PBa=Et("readline");Xhe.MinistoreContext=UQe.default.createContext(null);var MBa=({children:e})=>{let{stdin:t,setRawMode:r}=(0,OBa.useStdin)();(0,UQe.useEffect)(()=>{r&&r(!0),t&&(0,PBa.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,UQe.useState)(new Map),o=(0,UQe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(new Map([...n,[l,A]]))}),[n,a]);return UQe.default.createElement(Xhe.MinistoreContext.Provider,{value:o,children:e})};Xhe.Application=MBa});var xli=H(x2r=>{"use strict";Object.defineProperty(x2r,"__esModule",{value:!0});x2r.useKeypress=YBa;var HBa=ul(),kli=Ec();function YBa({active:e},t,r){let{stdin:n}=(0,HBa.useStdin)(),a=(0,kli.useCallback)((o,l)=>t(o,l),r);(0,kli.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var Zli=H(G2r=>{"use strict";Object.defineProperty(G2r,"__esModule",{value:!0});G2r.renderForm=UBa;var QBa=(Wa(),vi(Va)),Gli=ul(),Fli=QBa.__importDefault(Ec()),XBa=Dli(),JBa=xli();async function UBa(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,Gli.useApp)();(0,JBa.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,Gli.render)(Fli.default.createElement(XBa.Application,null,Fli.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var Wli=H(UCt=>{"use strict";Object.defineProperty(UCt,"__esModule",{value:!0});UCt.forceStdinTty=void 0;var Lli=Vli(Et("fs")),KBa=Vli(Et("tty"));function Vli(e){return e&&e.__esModule?e:{default:e}}var jBa=function(){if(process.stdin.isTTY)return!1;var t=Lli.default.constants,r=t.O_RDONLY,n=t.O_NOCTTY,a=Lli.default.openSync("/dev/tty",r+n),o=new KBa.default.ReadStream(a);return Object.defineProperty(process,"stdin",{configurable:!0,enumerable:!0,get:function(){return o}}),!0};UCt.forceStdinTty=jBa});var Pli=H((efu,Oli)=>{function zBa(e){let t=e.length-1,r=e[t];for(;r===" "||r===" ";)r=e[--t];return e.substring(0,t+1)}function qBa(e){return e.split(` -`).map(n=>zBa(n)).join(` -`)}Oli.exports=function(e,t){if(t=t||{},e==null)return e;var r=t.width||50,n=typeof t.indent=="string"?t.indent:" ",a=t.newline||` -`+n,o=typeof t.escape=="function"?t.escape:$Ba,l=".{1,"+r+"}";t.cut!==!0&&(l+="([\\s\u200B]+|$)|[^\\s\u200B]+?([\\s\u200B]+|$)");var A=new RegExp(l,"g"),f=e.match(A)||[],I=n+f.map(function(C){return C.slice(-1)===` -`&&(C=C.slice(0,C.length-1)),o(C)}).join(a);return t.trim===!0&&(I=qBa(I)),I};function $Ba(e){return e}});var Hli=H((tfu,Mli)=>{"use strict";var ewa="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";Mli.exports=ewa});var Jli=H((rfu,Xli)=>{"use strict";var twa=Hli();function Yli(){}function Qli(){}Qli.resetWarningCache=Yli;Xli.exports=function(){function e(n,a,o,l,A,f){if(f!==twa){var I=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw I.name="Invariant Violation",I}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:Qli,resetWarningCache:Yli};return r.PropTypes=r,r}});var PTe=H((sfu,Uli)=>{Uli.exports=Jli()();var nfu,ifu});var X2r=H((KQe,HTe)=>{var rwa=200,Q2r="__lodash_hash_undefined__",r_t=1,oui=2,aui=9007199254740991,KCt="[object Arguments]",V2r="[object Array]",nwa="[object AsyncFunction]",cui="[object Boolean]",lui="[object Date]",uui="[object Error]",gui="[object Function]",iwa="[object GeneratorFunction]",jCt="[object Map]",Aui="[object Number]",swa="[object Null]",MTe="[object Object]",Kli="[object Promise]",owa="[object Proxy]",dui="[object RegExp]",zCt="[object Set]",pui="[object String]",awa="[object Symbol]",cwa="[object Undefined]",W2r="[object WeakMap]",fui="[object ArrayBuffer]",qCt="[object DataView]",lwa="[object Float32Array]",uwa="[object Float64Array]",gwa="[object Int8Array]",Awa="[object Int16Array]",dwa="[object Int32Array]",pwa="[object Uint8Array]",fwa="[object Uint8ClampedArray]",Iwa="[object Uint16Array]",hwa="[object Uint32Array]",mwa=/[\\^$.*+?()[\]{}|]/g,Cwa=/^\[object .+?Constructor\]$/,_wa=/^(?:0|[1-9]\d*)$/,Q1={};Q1[lwa]=Q1[uwa]=Q1[gwa]=Q1[Awa]=Q1[dwa]=Q1[pwa]=Q1[fwa]=Q1[Iwa]=Q1[hwa]=!0;Q1[KCt]=Q1[V2r]=Q1[fui]=Q1[cui]=Q1[qCt]=Q1[lui]=Q1[uui]=Q1[gui]=Q1[jCt]=Q1[Aui]=Q1[MTe]=Q1[dui]=Q1[zCt]=Q1[pui]=Q1[W2r]=!1;var Iui=typeof global=="object"&&global&&global.Object===Object&&global,ywa=typeof self=="object"&&self&&self.Object===Object&&self,gee=Iui||ywa||Function("return this")(),hui=typeof KQe=="object"&&KQe&&!KQe.nodeType&&KQe,jli=hui&&typeof HTe=="object"&&HTe&&!HTe.nodeType&&HTe,mui=jli&&jli.exports===hui,F2r=mui&&Iui.process,zli=function(){try{return F2r&&F2r.binding&&F2r.binding("util")}catch{}}(),qli=zli&&zli.isTypedArray;function bwa(e,t){for(var r=-1,n=e==null?0:e.length,a=0,o=[];++r-1}function qwa(e,t){var r=this.__data__,n=i_t(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}Aee.prototype.clear=Uwa;Aee.prototype.delete=Kwa;Aee.prototype.get=jwa;Aee.prototype.has=zwa;Aee.prototype.set=qwa;function Khe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++tA))return!1;var I=o.get(e);if(I&&o.get(t))return I==t;var C=-1,b=!0,E=r&oui?new e_t:void 0;for(o.set(e,t),o.set(t,e);++C-1&&e%1==0&&e-1&&e%1==0&&e<=aui}function wui(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function qQe(e){return e!=null&&typeof e=="object"}var Tui=qli?Bwa(qli):fTa;function RTa(e){return wTa(e)?gTa(e):ITa(e)}function NTa(){return[]}function DTa(){return!1}HTe.exports=TTa});var Nui=H((ofu,Rui)=>{"use strict";Rui.exports=(e,t)=>{if(!Array.isArray(e))throw new TypeError(`Expected an array, got ${typeof e}`);let r=e.slice(),n=typeof t=="number"?t:0;return r.splice(-n%r.length).concat(r)}});var J2r=H((afu,kui)=>{"use strict";var kTa=vIr(),Dui=process.platform,t4={tick:"\u2714",cross:"\u2716",star:"\u2605",square:"\u2587",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",play:"\u25B6",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",circleQuestionMark:"?\u20DD",bullet:"\u25CF",dot:"\u2024",line:"\u2500",ellipsis:"\u2026",pointer:"\u276F",pointerSmall:"\u203A",info:"\u2139",warning:"\u26A0",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",heart:"\u2665",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",questionMarkPrefix:"?\u20DD",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneSeventh:"\u2150",oneEighth:"\u215B",oneNinth:"\u2151",oneTenth:"\u2152",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E"},xTa={tick:"\u221A",cross:"\xD7",star:"*",square:"\u2588",squareSmall:"[ ]",squareSmallFilled:"[\u2588]",play:"\u25BA",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",circleQuestionMark:"(?)",bullet:"*",dot:".",line:"\u2500",ellipsis:"...",pointer:">",pointerSmall:"\xBB",info:"i",warning:"\u203C",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",heart:t4.heart,arrowUp:t4.arrowUp,arrowDown:t4.arrowDown,arrowLeft:t4.arrowLeft,arrowRight:t4.arrowRight,radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",questionMarkPrefix:"\uFF1F",oneHalf:"1/2",oneThird:"1/3",oneQuarter:"1/4",oneFifth:"1/5",oneSixth:"1/6",oneSeventh:"1/7",oneEighth:"1/8",oneNinth:"1/9",oneTenth:"1/10",twoThirds:"2/3",twoFifths:"2/5",threeQuarters:"3/4",threeFifths:"3/5",threeEighths:"3/8",fourFifths:"4/5",fiveSixths:"5/6",fiveEighths:"5/8",sevenEighths:"7/8"};Dui==="linux"&&(t4.questionMarkPrefix="?");var o_t=Dui==="win32"?xTa:t4,GTa=e=>(o_t===t4||Object.keys(t4).forEach(t=>{t4[t]!==o_t[t]&&(e=e.replace(new RegExp(kTa(t4[t]),"g"),o_t[t]))}),e);kui.exports=Object.assign(GTa,o_t)});var Fui=H(a_t=>{"use strict";Object.defineProperty(a_t,"__esModule",{value:!0});a_t.default=void 0;var xui=U2r(Ec()),FTa=U2r(PTe()),Gui=ul(),ZTa=U2r(J2r());function U2r(e){return e&&e.__esModule?e:{default:e}}var K2r=({isHighlighted:e})=>xui.default.createElement(Gui.Box,{marginRight:1},xui.default.createElement(Gui.Text,{color:e?"blue":void 0},e?ZTa.default.pointer:" "));K2r.propTypes={isHighlighted:FTa.default.bool};K2r.defaultProps={isHighlighted:!1};var LTa=K2r;a_t.default=LTa});var Vui=H(c_t=>{"use strict";Object.defineProperty(c_t,"__esModule",{value:!0});c_t.default=void 0;var VTa=Lui(Ec()),Zui=Lui(PTe()),WTa=ul();function Lui(e){return e&&e.__esModule?e:{default:e}}var j2r=({isHighlighted:e,label:t})=>VTa.default.createElement(WTa.Text,{color:e?"blue":void 0},t);j2r.propTypes={isHighlighted:Zui.default.bool,label:Zui.default.string.isRequired};j2r.defaultProps={isHighlighted:!1};var OTa=j2r;c_t.default=OTa});var Mui=H(l_t=>{"use strict";Object.defineProperty(l_t,"__esModule",{value:!0});l_t.default=void 0;var Wui=z2r(Ec()),PTa=z2r(PTe()),Oui=ul(),Pui=z2r(J2r());function z2r(e){return e&&e.__esModule?e:{default:e}}var q2r=({isSelected:e})=>Wui.default.createElement(Oui.Box,{marginRight:1},Wui.default.createElement(Oui.Text,{color:"green"},e?Pui.default.circleFilled:Pui.default.circle));q2r.propTypes={isSelected:PTa.default.bool};q2r.defaultProps={isSelected:!1};var MTa=q2r;l_t.default=MTa});var Jui=H(qhe=>{"use strict";Object.defineProperty(qhe,"__esModule",{value:!0});Object.defineProperty(qhe,"Indicator",{enumerable:!0,get:function(){return Hui.default}});Object.defineProperty(qhe,"Item",{enumerable:!0,get:function(){return Yui.default}});Object.defineProperty(qhe,"CheckBox",{enumerable:!0,get:function(){return Qui.default}});qhe.default=void 0;var zhe=YTa(Ec()),jZ=QTe(PTe()),HTa=QTe(X2r()),u_t=QTe(Nui()),$2r=ul(),Hui=QTe(Fui()),Yui=QTe(Vui()),Qui=QTe(Mui());function QTe(e){return e&&e.__esModule?e:{default:e}}function Xui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Xui=function(){return e},e}function YTa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Xui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}function eSr(){return eSr=Object.assign||function(e){for(var t=1;t{let{items:n,focus:a,onHighlight:o,onSubmit:l}=this.props,{rotateIndex:A,highlightedIndex:f}=this.state,I=this.props.selected||this.state.selected,{limit:C,hasLimit:b}=this;if(a===!1)return;let E=String(r);if(E===QTa||E==="k"){let N=(b?C:n.length)-1,B=f===0,F=b?f:N,Q=B?A+1:A,J=B?F:f-1;this.setState({rotateIndex:Q,highlightedIndex:J});let ae=b?(0,u_t.default)(n,Q).slice(0,C):n;o(ae[J])}if(E===XTa||E==="j"){let N=f===(b?C:n.length)-1,B=b?f:0,F=N?A-1:A,Q=N?B:f+1;this.setState({rotateIndex:F,highlightedIndex:Q});let J=b?(0,u_t.default)(n,F).slice(0,C):n;o(J[Q])}if(E===UTa){let B=(b?(0,u_t.default)(n,A).slice(0,C):n)[f];this.setSelectedState(this.selectItem(B))}E===JTa&&l(I)})}render(){let{items:t,indicatorComponent:r,itemComponent:n,checkboxComponent:a}=this.props,{rotateIndex:o,highlightedIndex:l}=this.state,{limit:A,hasLimit:f}=this,I=f?(0,u_t.default)(t,o).slice(0,A):t;return zhe.default.createElement($2r.Box,{flexDirection:"column"},I.map((C,b)=>{let E=C.key||C.value,N=b===l,B=this.isSelected(C.value);return zhe.default.createElement($2r.Box,{key:E},zhe.default.createElement(r,{isHighlighted:N}),zhe.default.createElement(a,{isSelected:B}),zhe.default.createElement(n,{...C,isHighlighted:N}))}))}componentDidMount(){let{stdin:t,setRawMode:r}=this.props;r(!0),t.on("data",this.handleInput)}componentWillUnmount(){let{stdin:t,setRawMode:r}=this.props;t.removeListener("data",this.handleInput),r(!1)}componentDidUpdate(t){(0,HTa.default)(t.items,this.props.items)||this.setState({rotateIndex:0,highlightedIndex:0})}isSelected(t){return(this.props.selected||this.state.selected).map(({value:n})=>n).includes(t)}selectItem(t){let{onSelect:r,onUnselect:n}=this.props,a=this.props.selected||this.state.selected;return this.isSelected(t.value)?(n(t),a.filter(({value:o})=>o!==t.value)):(r(t),[...a,t])}setSelectedState(t){this.setState({selected:t})}get hasLimit(){let{limit:t,items:r}=this.props;return typeof t=="number"&&r.length>t}get limit(){let{limit:t,items:r}=this.props;return this.hasLimit?Math.min(t,r.length):r.length}};g_t(eXe,"propTypes",{items:jZ.default.array,selected:jZ.default.array,defaultSelected:jZ.default.array,focus:jZ.default.bool,initialIndex:jZ.default.number,indicatorComponent:jZ.default.func,checkboxComponent:jZ.default.func,itemComponent:jZ.default.func,limit:jZ.default.number,onSelect:jZ.default.func,onUnselect:jZ.default.func,onSubmit:jZ.default.func,onHighlight:jZ.default.func,stdin:jZ.default.any.isRequired,setRawMode:jZ.default.func.isRequired});g_t(eXe,"defaultProps",{items:[],selected:void 0,defaultSelected:[],focus:!0,initialIndex:0,indicatorComponent:Hui.default,checkboxComponent:Qui.default,itemComponent:Yui.default,limit:null,onSelect(){},onUnselect(){},onSubmit(){},onHighlight(){}});var KTa=e=>{let{stdin:t,setRawMode:r}=(0,$2r.useStdin)();return zhe.default.createElement(eXe,eSr({},e,{stdin:t,setRawMode:r}))};qhe.default=KTa});var Kui=H(XTe=>{"use strict";Object.defineProperty(XTe,"__esModule",{value:!0});Object.defineProperty(XTe,"default",{enumerable:!0,get:function(){return A_t.default}});Object.defineProperty(XTe,"Item",{enumerable:!0,get:function(){return A_t.Item}});Object.defineProperty(XTe,"Indicator",{enumerable:!0,get:function(){return A_t.Indicator}});Object.defineProperty(XTe,"CheckBox",{enumerable:!0,get:function(){return A_t.CheckBox}});var A_t=jTa(Jui());function Uui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Uui=function(){return e},e}function jTa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Uui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}});var ISr=H((yIu,Bgi)=>{var rRe=1e3,nRe=rRe*60,iRe=nRe*60,$he=iRe*24,ARa=$he*7,dRa=$he*365.25;Bgi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return pRa(e);if(r==="number"&&isFinite(e))return t.long?IRa(e):fRa(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function pRa(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*dRa;case"weeks":case"week":case"w":return r*ARa;case"days":case"day":case"d":return r*$he;case"hours":case"hour":case"hrs":case"hr":case"h":return r*iRe;case"minutes":case"minute":case"mins":case"min":case"m":return r*nRe;case"seconds":case"second":case"secs":case"sec":case"s":return r*rRe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function fRa(e){var t=Math.abs(e);return t>=$he?Math.round(e/$he)+"d":t>=iRe?Math.round(e/iRe)+"h":t>=nRe?Math.round(e/nRe)+"m":t>=rRe?Math.round(e/rRe)+"s":e+"ms"}function IRa(e){var t=Math.abs(e);return t>=$he?b_t(e,t,$he,"day"):t>=iRe?b_t(e,t,iRe,"hour"):t>=nRe?b_t(e,t,nRe,"minute"):t>=rRe?b_t(e,t,rRe,"second"):e+" ms"}function b_t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var hSr=H((bIu,wgi)=>{function hRa(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=ISr(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(J,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(J,Q),(J.log||r.log).apply(J,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{IP.formatArgs=CRa;IP.save=_Ra;IP.load=yRa;IP.useColors=mRa;IP.storage=bRa();IP.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();IP.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function mRa(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function CRa(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+E_t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}IP.log=console.debug||console.log||(()=>{});function _Ra(e){try{e?IP.storage.setItem("debug",e):IP.storage.removeItem("debug")}catch{}}function yRa(){let e;try{e=IP.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function bRa(){try{return localStorage}catch{}}E_t.exports=hSr()(IP);var{formatters:ERa}=E_t.exports;ERa.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Ngi=H((aD,v_t)=>{var SRa=Et("tty"),S_t=Et("util");aD.init=DRa;aD.log=TRa;aD.formatArgs=BRa;aD.save=RRa;aD.load=NRa;aD.useColors=vRa;aD.destroy=S_t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");aD.colors=[6,2,3,4,5,1];try{let e=Et("supports-color");e&&(e.stderr||e).level>=2&&(aD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}aD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function vRa(){return"colors"in aD.inspectOpts?!!aD.inspectOpts.colors:SRa.isatty(process.stderr.fd)}function BRa(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +`)}var ini=class extends Error{constructor(e,t,r){super(w0a(r)),this.request=e,this.headers=t,this.response=r,this.name="GraphqlResponseError",this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},T0a=["method","baseUrl","url","headers","request","query","mediaType"],R0a=["query","method","url"],rni=/\/api\/v3\/?$/;function N0a(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(R0a.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>T0a.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return rni.test(o)&&(a.url=o.replace(rni,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new ini(a,A,l.data)}return l.data.data})}function XEr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>N0a(r,a,o),{defaults:XEr.bind(null,r),endpoint:r.endpoint})}var D0a=XEr(S0a.request,{headers:{"user-agent":`octokit-graphql.js/${B0a} ${(0,v0a.getUserAgent)()}`},method:"POST",url:"/graphql"});function k0a(e){return XEr(e,{method:"POST",url:"/graphql"})}});var lni=H((Iau,cni)=>{"use strict";var JEr=Object.defineProperty,x0a=Object.getOwnPropertyDescriptor,G0a=Object.getOwnPropertyNames,F0a=Object.prototype.hasOwnProperty,Z0a=(e,t)=>{for(var r in t)JEr(e,r,{get:t[r],enumerable:!0})},L0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of G0a(t))!F0a.call(e,a)&&a!==r&&JEr(e,a,{get:()=>t[a],enumerable:!(n=x0a(t,a))||n.enumerable});return e},V0a=e=>L0a(JEr({},"__esModule",{value:!0}),e),ani={};Z0a(ani,{createTokenAuth:()=>Q0a});cni.exports=V0a(ani);var W0a=/^v1\./,O0a=/^ghs_/,P0a=/^ghu_/;async function M0a(e){let t=e.split(/\./).length===3,r=W0a.test(e)||O0a.test(e),n=P0a.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function H0a(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function Y0a(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=H0a(e),t(a)}var Q0a=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(M0a.bind(null,t),{hook:Y0a.bind(null,t)})}});var Ini=H((hau,fni)=>{"use strict";var UEr=Object.defineProperty,X0a=Object.getOwnPropertyDescriptor,J0a=Object.getOwnPropertyNames,U0a=Object.prototype.hasOwnProperty,K0a=(e,t)=>{for(var r in t)UEr(e,r,{get:t[r],enumerable:!0})},j0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of J0a(t))!U0a.call(e,a)&&a!==r&&UEr(e,a,{get:()=>t[a],enumerable:!(n=X0a(t,a))||n.enumerable});return e},z0a=e=>j0a(UEr({},"__esModule",{value:!0}),e),dni={};K0a(dni,{Octokit:()=>iya});fni.exports=z0a(dni);var q0a=vQe(),$0a=Zri(),uni=RQe(),eya=oni(),tya=lni(),pni="5.2.0",gni=()=>{},rya=console.warn.bind(console),nya=console.error.bind(console),Ani=`octokit-core.js/${pni} ${(0,q0a.getUserAgent)()}`,iya=class{static{this.VERSION=pni}static defaults(e){return class extends this{constructor(...r){let n=r[0]||{};if(typeof e=="function"){super(e(n));return}super(Object.assign({},e,n,n.userAgent&&e.userAgent?{userAgent:`${n.userAgent} ${e.userAgent}`}:null))}}}static{this.plugins=[]}static plugin(...e){let t=this.plugins;return class extends this{static{this.plugins=t.concat(e.filter(n=>!t.includes(n)))}}}constructor(e={}){let t=new $0a.Collection,r={baseUrl:uni.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};if(r.headers["user-agent"]=e.userAgent?`${e.userAgent} ${Ani}`:Ani,e.baseUrl&&(r.baseUrl=e.baseUrl),e.previews&&(r.mediaType.previews=e.previews),e.timeZone&&(r.headers["time-zone"]=e.timeZone),this.request=uni.request.defaults(r),this.graphql=(0,eya.withCustomRequest)(this.request).defaults(r),this.log=Object.assign({debug:gni,info:gni,warn:rya,error:nya},e.log),this.hook=t,e.authStrategy){let{authStrategy:a,...o}=e,l=a(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));t.wrap("request",l.hook),this.auth=l}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let a=(0,tya.createTokenAuth)(e.auth);t.wrap("request",a.hook),this.auth=a}let n=this.constructor;for(let a=0;a{"use strict";var KEr=Object.defineProperty,sya=Object.getOwnPropertyDescriptor,oya=Object.getOwnPropertyNames,aya=Object.prototype.hasOwnProperty,cya=(e,t)=>{for(var r in t)KEr(e,r,{get:t[r],enumerable:!0})},lya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of oya(t))!aya.call(e,a)&&a!==r&&KEr(e,a,{get:()=>t[a],enumerable:!(n=sya(t,a))||n.enumerable});return e},uya=e=>lya(KEr({},"__esModule",{value:!0}),e),hni={};cya(hni,{legacyRestEndpointMethods:()=>yni,restEndpointMethods:()=>_ni});bni.exports=uya(hni);var mni="10.4.1",gya={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Aya=gya,Phe=new Map;for(let[e,t]of Object.entries(Aya))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);Phe.has(e)||Phe.set(e,new Map),Phe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var dya={has({scope:e},t){return Phe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Phe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=Phe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=pya(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function Cni(e){let t={};for(let r of Phe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},dya);return t}function pya(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function _ni(e){return{rest:Cni(e)}}_ni.VERSION=mni;function yni(e){let t=Cni(e);return{...t,rest:t}}yni.VERSION=mni});var Nni=H((bau,Rni)=>{"use strict";var jEr=Object.defineProperty,fya=Object.getOwnPropertyDescriptor,Iya=Object.getOwnPropertyNames,hya=Object.prototype.hasOwnProperty,mya=(e,t)=>{for(var r in t)jEr(e,r,{get:t[r],enumerable:!0})},Cya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Iya(t))!hya.call(e,a)&&a!==r&&jEr(e,a,{get:()=>t[a],enumerable:!(n=fya(t,a))||n.enumerable});return e},_ya=e=>Cya(jEr({},"__esModule",{value:!0}),e),Sni={};mya(Sni,{composePaginateRest:()=>Eya,isPaginatingEndpoint:()=>Sya,paginateRest:()=>Tni,paginatingEndpoints:()=>wni});Rni.exports=_ya(Sni);var yya="9.2.1";function bya(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function zEr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=bya(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function vni(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),Bni(e,[],zEr(e,t,r)[Symbol.asyncIterator](),n)}function Bni(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:Bni(e,t,r,n)})}var Eya=Object.assign(vni,{iterator:zEr}),wni=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function Sya(e){return typeof e=="string"?wni.includes(e):!1}function Tni(e){return{paginate:Object.assign(vni.bind(null,e),{iterator:zEr.bind(null,e)})}}Tni.VERSION=yya});var kni=H(Wk=>{"use strict";var vya=Wk&&Wk.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Bya=Wk&&Wk.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Dni=Wk&&Wk.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&vya(t,e,r);return Bya(t,e),t};Object.defineProperty(Wk,"__esModule",{value:!0});Wk.getOctokitOptions=Wk.GitHub=Wk.defaults=Wk.context=void 0;var wya=Dni(hmr()),iCt=Dni(bri()),Tya=Ini(),Rya=Eni(),Nya=Nni();Wk.context=new wya.Context;var qEr=iCt.getApiBaseUrl();Wk.defaults={baseUrl:qEr,request:{agent:iCt.getProxyAgent(qEr),fetch:iCt.getProxyFetch(qEr)}};Wk.GitHub=Tya.Octokit.plugin(Rya.restEndpointMethods,Nya.paginateRest).defaults(Wk.defaults);function Dya(e,t){let r=Object.assign({},t||{}),n=iCt.getAuthString(e,r);return n&&(r.auth=n),r}Wk.getOctokitOptions=Dya});var wTe=H(UM=>{"use strict";var kya=UM&&UM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xya=UM&&UM.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Gya=UM&&UM.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&kya(t,e,r);return xya(t,e),t};Object.defineProperty(UM,"__esModule",{value:!0});UM.getOctokit=UM.context=void 0;var Fya=Gya(hmr()),xni=kni();UM.context=new Fya.Context;function Zya(e,t,...r){let n=xni.GitHub.plugin(...r);return new n((0,xni.getOctokitOptions)(e,t))}UM.getOctokit=Zya});function i1r({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var $ni=bc(()=>{});function uee(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Hya,"")}var Hya,kQe=bc(()=>{$ni();Hya=i1r()});var Uii=H((Llu,Jii)=>{"use strict";function uba(e,t){var r=e;t.slice(0,-1).forEach(function(a){r=r[a]||{}});var n=t[t.length-1];return n in r}function Qii(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function Xii(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}Jii.exports=function(e,t){t||(t={});var r={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(r.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?r.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(ce){r.bools[ce]=!0});var n={};function a(ce){return n[ce].some(function(fe){return r.bools[fe]})}Object.keys(t.alias||{}).forEach(function(ce){n[ce]=[].concat(t.alias[ce]),n[ce].forEach(function(fe){n[fe]=[ce].concat(n[ce].filter(function(ue){return fe!==ue}))})}),[].concat(t.string).filter(Boolean).forEach(function(ce){r.strings[ce]=!0,n[ce]&&[].concat(n[ce]).forEach(function(fe){r.strings[fe]=!0})});var o=t.default||{},l={_:[]};function A(ce,fe){return r.allBools&&/^--[^=]+$/.test(fe)||r.strings[ce]||r.bools[ce]||n[ce]}function f(ce,fe,ue){for(var de=ce,be=0;be{"use strict";var{Transform:gba}=Et("stream"),{StringDecoder:Aba}=Et("string_decoder"),Fae=Symbol("last"),dCt=Symbol("decoder");function dba(e,t,r){let n;if(this.overflow){if(n=this[dCt].write(e).split(this.matcher),n.length===1)return r();n.shift(),this.overflow=!1}else this[Fae]+=this[dCt].write(e),n=this[Fae].split(this.matcher);this[Fae]=n.pop();for(let a=0;athis.maxLength,this.overflow&&!this.skipOverflow){r(new Error("maximum buffer reached"));return}r()}function pba(e){if(this[Fae]+=this[dCt].end(),this[Fae])try{jii(this,this.mapper(this[Fae]))}catch(t){return e(t)}e()}function jii(e,t){t!==void 0&&e.push(t)}function Kii(e){return e}function fba(e,t,r){switch(e=e||/\r?\n/,t=t||Kii,r=r||{},arguments.length){case 1:typeof e=="function"?(t=e,e=/\r?\n/):typeof e=="object"&&!(e instanceof RegExp)&&!e[Symbol.split]&&(r=e,e=/\r?\n/);break;case 2:typeof e=="function"?(r=t,t=e,e=/\r?\n/):typeof t=="object"&&(r=t,t=Kii)}r=Object.assign({},r),r.autoDestroy=!0,r.transform=dba,r.flush=pba,r.readableObjectMode=!0;let n=new gba(r);return n[Fae]="",n[dCt]=new Aba("utf8"),n.matcher=e,n.mapper=t,n.maxLength=r.maxLength,n.skipOverflow=r.skipOverflow||!1,n.overflow=!1,n._destroy=function(a,o){this._writableState.errorEmitted=!1,o(a)},n}zii.exports=fba});var tsi={};Uf(tsi,{default:()=>esi});function esi(e,t){let r=[],n=[],a=[];t={useEquals:!0,shortFlag:!0,...t};let o=(A,f)=>{let I=t.shortFlag&&A.length===1?"-":"--",C=t.allowCamelCase?A:A.replace(/[A-Z]/g,"-$&").toLowerCase();A=I+C,t.useEquals?r.push(A+(f?`=${f}`:"")):(r.push(A),f&&r.push(f))},l=(A,f)=>{r.push(`-${A}`),f&&r.push(f)};for(let[A,f]of Object.entries(e)){let I=o;if(!(Array.isArray(t.excludes)&&$ii(t.excludes,A))&&!(Array.isArray(t.includes)&&!$ii(t.includes,A))){if(typeof t.aliases=="object"&&t.aliases[A]&&(A=t.aliases[A],I=l),A==="--"){if(!Array.isArray(f))throw new TypeError(`Expected key \`--\` to be Array, got ${typeof f}`);a=f;continue}if(A==="_"){if(!Array.isArray(f))throw new TypeError(`Expected key \`_\` to be Array, got ${typeof f}`);n=f;continue}if(f===!0&&!t.ignoreTrue&&I(A,""),f===!1&&!t.ignoreFalse&&I(`no-${A}`),typeof f=="string"&&I(A,f),typeof f=="number"&&!Number.isNaN(f)&&I(A,String(f)),Array.isArray(f))for(let C of f)I(A,C)}}for(let A of n)r.push(String(A));a.length>0&&r.push("--");for(let A of a)r.push(String(A));return r}var $ii,rsi=bc(()=>{$ii=(e,t)=>e.some(r=>r instanceof RegExp?r.test(t):r===t)});var osi=H((Wlu,ssi)=>{var{Readable:Iba,Transform:nsi}=Et("stream"),{execFile:hba}=Et("child_process"),mba=qii(),isi="------------------------ >8 ------------------------";function Cba(e){return e=e||{},e.cwd=e.cwd||process.cwd(),e}function _ba(e){return e=e||{},e.format=e.format||"%B",e.from=e.from||"",e.to=e.to||"HEAD",e}async function yba(e){let{default:t}=await Promise.resolve().then(()=>(rsi(),tsi)),r=`--format=${e.format||""}%n${isi}`,n=[e.from,e.to].filter(Boolean).join(".."),a=["log",r,n].concat(t(e,{excludes:["debug","from","to","format","path","ignore"]}));return e.path&&a.push("--",...Array.isArray(e.path)?e.path:[e.path]),a}function bba(e,t){let r=new Iba;r._read=()=>{};let n=_ba(e),a=Cba(t),o=!1;return yba(n).then(l=>{n.debug&&n.debug(`Your git-log command is: +git `+l.join(" "));let A=typeof n.ignore=="string"?new RegExp(n.ignore):n.ignore,f=A?C=>!A.test(C.toString()):()=>!0,I=hba("git",l,{cwd:a.cwd,maxBuffer:1/0});I.stdout.pipe(mba(isi+` +`)).pipe(new nsi({transform(C,b,E){o=!1,setImmediate(()=>{f(C)&&r.push(C),E()})},flush(C){setImmediate(()=>{o||(r.push(null),r.emit("close")),C()})}})),I.stderr.pipe(new nsi({objectMode:!0,highWaterMark:16,transform(C){o=!0,r.emit("error",new Error(C)),r.emit("close")}}))}),r}ssi.exports=bba});var Yhe,Bsi=bc(()=>{Yhe=[];Yhe.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Yhe.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Yhe.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")});var yCt,V1r,W1r,sEa,O1r,bCt,oEa,P1r,M1r,H1r,ECt,Xuu,Juu,Y1r=bc(()=>{Bsi();yCt=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",V1r=Symbol.for("signal-exit emitter"),W1r=globalThis,sEa=Object.defineProperty.bind(Object),O1r=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(W1r[V1r])return W1r[V1r];sEa(W1r,V1r,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(t,r){this.listeners[t].push(r)}removeListener(t,r){let n=this.listeners[t],a=n.indexOf(r);a!==-1&&(a===0&&n.length===1?n.length=0:n.splice(a,1))}emit(t,r,n){if(this.emitted[t])return!1;this.emitted[t]=!0;let a=!1;for(let o of this.listeners[t])a=o(r,n)===!0||a;return t==="exit"&&(a=this.emit("afterExit",r,n)||a),a}},bCt=class{},oEa=e=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}}),P1r=class extends bCt{onExit(){return()=>{}}load(){}unload(){}},M1r=class extends bCt{#e=H1r.platform==="win32"?"SIGINT":"SIGHUP";#t=new O1r;#n;#r;#i;#s={};#o=!1;constructor(t){super(),this.#n=t,this.#s={};for(let r of Yhe)this.#s[r]=()=>{let n=this.#n.listeners(r),{count:a}=this.#t,o=t;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(a+=o.__signal_exit_emitter__.count),n.length===a){this.unload();let l=this.#t.emit("exit",null,r),A=r==="SIGHUP"?this.#e:r;l||t.kill(t.pid,A)}};this.#i=t.reallyExit,this.#r=t.emit}onExit(t,r){if(!yCt(this.#n))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#t.on(n,t),()=>{this.#t.removeListener(n,t),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#t.count+=1;for(let t of Yhe)try{let r=this.#s[t];r&&this.#n.on(t,r)}catch{}this.#n.emit=(t,...r)=>this.#l(t,...r),this.#n.reallyExit=t=>this.#g(t)}}unload(){this.#o&&(this.#o=!1,Yhe.forEach(t=>{let r=this.#s[t];if(!r)throw new Error("Listener not defined for signal: "+t);try{this.#n.removeListener(t,r)}catch{}}),this.#n.emit=this.#r,this.#n.reallyExit=this.#i,this.#t.count-=1)}#g(t){return yCt(this.#n)?(this.#n.exitCode=t||0,this.#t.emit("exit",this.#n.exitCode,null),this.#i.call(this.#n,this.#n.exitCode)):0}#l(t,...r){let n=this.#r;if(t==="exit"&&yCt(this.#n)){typeof r[0]=="number"&&(this.#n.exitCode=r[0]);let a=n.call(this.#n,t,...r);return this.#t.emit("exit",this.#n.exitCode,null),a}else return n.call(this.#n,t,...r)}},H1r=globalThis.process,{onExit:ECt,load:Xuu,unload:Juu}=oEa(yCt(H1r)?new M1r(H1r):new P1r)});var Hsi=H((Egu,Msi)=>{"use strict";var{PassThrough:GEa}=Et("stream");Msi.exports=function(){var e=[],t=new GEa({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=n,t.on("unpipe",a),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",a.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function n(){return e.length==0}function a(o){e=e.filter(function(l){return l!==o}),!e.length&&t.readable&&t.end()}}});var Boi=H((FAu,voi)=>{"use strict";var v1a=/()(.+)/gi,B1a="# ------------------------ >8 ------------------------";function LCt(e){let t=e.match(/[^\r\n]/);if(!t)return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` +`;)n--;return e.substring(r,n+1)}function Qhe(e,t){return e?e+=` +`+t:e=t,e}function w1a(e){return function(t){return t.charAt(0)!==e}}function T1a(e){let t=e.indexOf(B1a);return t===-1?e:e.slice(0,t)}function Soi(e,t){let r=[],n,a,o=e.match(t.references)!==null?t.references:v1a;for(;n=o.exec(e);){let l=n[1]||null,A=n[2];for(;a=t.referenceParts.exec(A);){let f=null,I=a[1]||"",C=I.split("/");C.length>1&&(f=C.shift(),I=C.join("/"));let b={action:l,owner:f,repository:I||null,issue:a[3],raw:a[0],prefix:a[2]};r.push(b)}}return r}function R1a(){return!0}function N1a(e,t,r){if(!e||!e.trim())throw new TypeError("Expected a raw commit");if(!t||typeof t=="object"&&!Object.keys(t).length)throw new TypeError("Expected options");if(!r)throw new TypeError("Expected regex");let n,a,o={},l=typeof t.commentChar=="string"?w1a(t.commentChar):R1a,A=ze=>!ze.match(/^\s*gpg:/),f=LCt(e).split(/\r?\n/),I=T1a(f).filter(l).filter(A),C=!1,b=!0,E=t.headerCorrespondence?.map(function(ze){return ze.trim()})||[],N=t.revertCorrespondence?.map(function(ze){return ze.trim()})||[],B=t.mergeCorrespondence?.map(function(ze){return ze.trim()})||[],F=null,Q=null,J=null,ae=[],ne=null,ce=[],fe=[],ue=null;if(I.length===0)return{body:F,footer:Q,header:J,mentions:ae,merge:ne,notes:ce,references:fe,revert:ue,scope:null,subject:null,type:null};ne=I.shift();let de={},be={};F="",Q="";let Se=ne.match(t.mergePattern);if(Se&&t.mergePattern){for(ne=Se[0],J=I.shift();J!==void 0&&!J.trim();)J=I.shift();J||(J=""),B.forEach(function(ze,Le){let Je=Se[Le+1]||null;de[ze]=Je})}else J=ne,ne=null,B.forEach(function(ze){de[ze]=null});let De=J.match(t.headerPattern);if(De?E.forEach(function(ze,Le){let Je=De[Le+1]||null;be[ze]=Je}):E.forEach(function(ze){be[ze]=null}),fe.push(...Soi(J,{references:r.references,referenceParts:r.referenceParts})),I.forEach(function(ze){if(t.fieldPattern){let lt=t.fieldPattern.exec(ze);if(lt){n=lt[1];return}if(n){o[n]=Qhe(o[n],ze);return}}let Le,Je=ze.match(r.notes);if(Je){C=!0,b=!1,Q=Qhe(Q,ze);let lt={title:Je[1],text:Je[2]};ce.push(lt);return}let ft=Soi(ze,{references:r.references,referenceParts:r.referenceParts});if(ft.length>0&&(b=!1,Le=!0,C=!1),Array.prototype.push.apply(fe,ft),Le){Q=Qhe(Q,ze);return}if(C){ce[ce.length-1].text=Qhe(ce[ce.length-1].text,ze),Q=Qhe(Q,ze);return}b?F=Qhe(F,ze):Q=Qhe(Q,ze)}),t.breakingHeaderPattern&&ce.length===0){let ze=J.match(t.breakingHeaderPattern);if(ze){let Le=ze[3];ce.push({title:"BREAKING CHANGE",text:Le})}}for(;a=r.mentions.exec(e);)ae.push(a[1]);let k=e.match(t.revertPattern);return k?(ue={},N.forEach(function(ze,Le){let Je=k[Le+1]||null;ue[ze]=Je})):ue=null,ce.forEach(function(ze){ze.text=LCt(ze.text)}),{...be,...de,merge:ne,header:J,body:F?LCt(F):null,footer:Q?LCt(Q):null,notes:ce,references:fe,mentions:ae,revert:ue,...o}}voi.exports=N1a});var Roi=H((ZAu,Toi)=>{"use strict";var woi=/(?!.*)/;function u2r(e,t){return e.map(function(r){return r.trim()}).filter(function(r){return r.length}).join(t)}function D1a(e,t){if(!e)return woi;let r=u2r(e,"|");return t?t(r):new RegExp("^[\\s|*]*("+r+")[:\\s]+(.*)","i")}function k1a(e,t){if(!e)return woi;let r=t?"g":"gi";return new RegExp("(?:.*?)??\\s*([\\w-\\.\\/]*?)??("+u2r(e,"|")+")([\\w-]*\\d+)",r)}function x1a(e){if(!e)return/()(.+)/gi;let t=u2r(e,"|");return new RegExp("("+t+")(?:\\s+(.*?))(?=(?:"+t+")|$)","gi")}Toi.exports=function(e){e=e||{};let t=D1a(e.noteKeywords,e.notesPattern),r=k1a(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=x1a(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}});var xoi=H((LAu,g2r)=>{"use strict";var{Transform:G1a}=Et("stream"),Noi=Boi(),Doi=Roi();function koi(e){return e={headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#"],noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],fieldPattern:/^-(.*?)-$/,revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],warn:function(){},mergePattern:null,mergeCorrespondence:null,...e},typeof e.headerPattern=="string"&&(e.headerPattern=new RegExp(e.headerPattern)),typeof e.headerCorrespondence=="string"&&(e.headerCorrespondence=e.headerCorrespondence.split(",")),typeof e.referenceActions=="string"&&(e.referenceActions=e.referenceActions.split(",")),typeof e.issuePrefixes=="string"&&(e.issuePrefixes=e.issuePrefixes.split(",")),typeof e.noteKeywords=="string"&&(e.noteKeywords=e.noteKeywords.split(",")),typeof e.fieldPattern=="string"&&(e.fieldPattern=new RegExp(e.fieldPattern)),typeof e.revertPattern=="string"&&(e.revertPattern=new RegExp(e.revertPattern)),typeof e.revertCorrespondence=="string"&&(e.revertCorrespondence=e.revertCorrespondence.split(",")),typeof e.mergePattern=="string"&&(e.mergePattern=new RegExp(e.mergePattern)),e}function F1a(e){e=koi(e);let t=Doi(e);return new G1a({objectMode:!0,highWaterMark:16,transform(r,n,a){let o;try{o=Noi(r.toString(),e,t),a(null,o)}catch(l){e.warn===!0?a(l):(e.warn(l.toString()),a(null,""))}}})}function Z1a(e,t){t=koi(t);let r=Doi(t);return Noi(e,t,r)}g2r.exports=F1a;g2r.exports.sync=Z1a});var Foi=H((VAu,Goi)=>{"use strict";function L1a(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w*)\./i,revertCorrespondence:["header","hash"]}}Goi.exports.createParserOpts=L1a});var Loi=H((WAu,Zoi)=>{"use strict";var V1a=yIr();async function W1a(){let e=O1a();return e.mainTemplate="",e.headerPartial="",e.commitPartial="",e.footerPartial="",e}Zoi.exports.createWriterOpts=W1a;function O1a(){return{transform:(e,t)=>{let r=!0,n=[];if(e.notes.forEach(a=>{a.title="BREAKING CHANGES",r=!1}),e.type==="feat")e.type="Features";else if(e.type==="fix")e.type="Bug Fixes";else if(e.type==="perf")e.type="Performance Improvements";else if(e.type==="revert"||e.revert)e.type="Reverts";else{if(r)return;e.type==="docs"?e.type="Documentation":e.type==="style"?e.type="Styles":e.type==="refactor"?e.type="Code Refactoring":e.type==="test"?e.type="Tests":e.type==="build"?e.type="Build System":e.type==="ci"&&(e.type="Continuous Integration")}if(e.scope==="*"&&(e.scope=""),typeof e.hash=="string"&&(e.shortHash=e.hash.substring(0,7)),typeof e.subject=="string"){let a=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;a&&(a=`${a}/issues/`,e.subject=e.subject.replace(/#([0-9]+)/g,(o,l)=>(n.push(l),`[#${l}](${a}${l})`))),t.host&&(e.subject=e.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(o,l)=>l.includes("/")?`@${l}`:`[@${l}](${t.host}/${l})`))}return e.references=e.references.filter(a=>n.indexOf(a.issue)===-1),e},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:V1a}}});var Woi=H((OAu,Voi)=>{"use strict";function P1a(e,t){return{parserOpts:e,writerOpts:t}}Voi.exports.createConventionalChangelogOpts=P1a});var Poi=H((PAu,Ooi)=>{"use strict";function M1a(e){return{parserOpts:e,whatBump(t){let r=2,n=0,a=0;return t.forEach(o=>{o.notes.length>0?(n+=o.notes.length,r=0):o.type==="feat"&&(a+=1,r===2&&(r=1))}),{level:r,reason:n===1?`There is ${n} BREAKING CHANGE and ${a} features`:`There are ${n} BREAKING CHANGES and ${a} features`}}}}Ooi.exports.createConventionalRecommendedBumpOpts=M1a});var Hoi=H((MAu,Moi)=>{"use strict";var{createParserOpts:H1a}=Foi(),{createWriterOpts:Y1a}=Loi(),{createConventionalChangelogOpts:Q1a}=Woi(),{createConventionalRecommendedBumpOpts:X1a}=Poi();async function J1a(){let e=H1a(),t=await Y1a(),r=X1a(e),n=Q1a(e,t);return{parserOpts:e,writerOpts:t,recommendedBumpOpts:r,conventionalChangelog:n}}Moi.exports=J1a});var hai=H((YAu,Iai)=>{var K1a=1/0,j1a="[object Symbol]",z1a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,q1a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,WCt="\\ud800-\\udfff",eai="\\u0300-\\u036f\\ufe20-\\ufe23",tai="\\u20d0-\\u20f0",rai="\\u2700-\\u27bf",nai="a-z\\xdf-\\xf6\\xf8-\\xff",$1a="\\xac\\xb1\\xd7\\xf7",e2a="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",t2a="\\u2000-\\u206f",r2a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",iai="A-Z\\xc0-\\xd6\\xd8-\\xde",sai="\\ufe0e\\ufe0f",oai=$1a+e2a+t2a+r2a,d2r="['\u2019]",n2a="["+WCt+"]",Joi="["+oai+"]",VCt="["+eai+tai+"]",aai="\\d+",i2a="["+rai+"]",cai="["+nai+"]",lai="[^"+WCt+oai+aai+rai+nai+iai+"]",A2r="\\ud83c[\\udffb-\\udfff]",s2a="(?:"+VCt+"|"+A2r+")",uai="[^"+WCt+"]",p2r="(?:\\ud83c[\\udde6-\\uddff]){2}",f2r="[\\ud800-\\udbff][\\udc00-\\udfff]",xTe="["+iai+"]",gai="\\u200d",Uoi="(?:"+cai+"|"+lai+")",o2a="(?:"+xTe+"|"+lai+")",Koi="(?:"+d2r+"(?:d|ll|m|re|s|t|ve))?",joi="(?:"+d2r+"(?:D|LL|M|RE|S|T|VE))?",Aai=s2a+"?",dai="["+sai+"]?",a2a="(?:"+gai+"(?:"+[uai,p2r,f2r].join("|")+")"+dai+Aai+")*",pai=dai+Aai+a2a,c2a="(?:"+[i2a,p2r,f2r].join("|")+")"+pai,l2a="(?:"+[uai+VCt+"?",VCt,p2r,f2r,n2a].join("|")+")",u2a=RegExp(d2r,"g"),g2a=RegExp(VCt,"g"),A2a=RegExp(A2r+"(?="+A2r+")|"+l2a+pai,"g"),d2a=RegExp([xTe+"?"+cai+"+"+Koi+"(?="+[Joi,xTe,"$"].join("|")+")",o2a+"+"+joi+"(?="+[Joi,xTe+Uoi,"$"].join("|")+")",xTe+"?"+Uoi+"+"+Koi,xTe+"+"+joi,aai,c2a].join("|"),"g"),p2a=RegExp("["+gai+WCt+eai+tai+sai+"]"),f2a=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,I2a={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},h2a=typeof global=="object"&&global&&global.Object===Object&&global,m2a=typeof self=="object"&&self&&self.Object===Object&&self,C2a=h2a||m2a||Function("return this")();function _2a(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:D2a(e,t,r)}function G2a(e){return function(t){t=OCt(t);var r=fai(t)?B2a(t):void 0,n=r?r[0]:t.charAt(0),a=r?x2a(r,1).join(""):t.slice(1);return n[e]()+a}}function F2a(e){return function(t){return _2a(M2a(O2a(t).replace(u2a,"")),e,"")}}function Z2a(e){return!!e&&typeof e=="object"}function L2a(e){return typeof e=="symbol"||Z2a(e)&&N2a.call(e)==j1a}function OCt(e){return e==null?"":k2a(e)}var V2a=F2a(function(e,t,r){return t=t.toLowerCase(),e+(r?W2a(t):t)});function W2a(e){return P2a(OCt(e).toLowerCase())}function O2a(e){return e=OCt(e),e&&e.replace(q1a,S2a).replace(g2a,"")}var P2a=G2a("toUpperCase");function M2a(e,t,r){return e=OCt(e),t=r?void 0:t,t===void 0?v2a(e)?T2a(e):b2a(e):e.match(t)||[]}Iai.exports=V2a});var Oai=H((QAu,Wai)=>{var H2a=1/0,Y2a="[object Symbol]",Q2a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,X2a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,vai="\\ud800-\\udfff",J2a="\\u0300-\\u036f\\ufe20-\\ufe23",U2a="\\u20d0-\\u20f0",Bai="\\u2700-\\u27bf",wai="a-z\\xdf-\\xf6\\xf8-\\xff",K2a="\\xac\\xb1\\xd7\\xf7",j2a="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",z2a="\\u2000-\\u206f",q2a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Tai="A-Z\\xc0-\\xd6\\xd8-\\xde",$2a="\\ufe0e\\ufe0f",Rai=K2a+j2a+z2a+q2a,I2r="['\u2019]",mai="["+Rai+"]",Nai="["+J2a+U2a+"]",Dai="\\d+",eSa="["+Bai+"]",kai="["+wai+"]",xai="[^"+vai+Rai+Dai+Bai+wai+Tai+"]",tSa="\\ud83c[\\udffb-\\udfff]",rSa="(?:"+Nai+"|"+tSa+")",nSa="[^"+vai+"]",Gai="(?:\\ud83c[\\udde6-\\uddff]){2}",Fai="[\\ud800-\\udbff][\\udc00-\\udfff]",GTe="["+Tai+"]",iSa="\\u200d",Cai="(?:"+kai+"|"+xai+")",sSa="(?:"+GTe+"|"+xai+")",_ai="(?:"+I2r+"(?:d|ll|m|re|s|t|ve))?",yai="(?:"+I2r+"(?:D|LL|M|RE|S|T|VE))?",Zai=rSa+"?",Lai="["+$2a+"]?",oSa="(?:"+iSa+"(?:"+[nSa,Gai,Fai].join("|")+")"+Lai+Zai+")*",aSa=Lai+Zai+oSa,cSa="(?:"+[eSa,Gai,Fai].join("|")+")"+aSa,lSa=RegExp(I2r,"g"),uSa=RegExp(Nai,"g"),gSa=RegExp([GTe+"?"+kai+"+"+_ai+"(?="+[mai,GTe,"$"].join("|")+")",sSa+"+"+yai+"(?="+[mai,GTe+Cai,"$"].join("|")+")",GTe+"?"+Cai+"+"+_ai,GTe+"+"+yai,Dai,cSa].join("|"),"g"),ASa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,dSa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},pSa=typeof global=="object"&&global&&global.Object===Object&&global,fSa=typeof self=="object"&&self&&self.Object===Object&&self,ISa=pSa||fSa||Function("return this")();function hSa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var kSa=1/0,xSa="[object Symbol]",GSa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,FSa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Uai="\\ud800-\\udfff",ZSa="\\u0300-\\u036f\\ufe20-\\ufe23",LSa="\\u20d0-\\u20f0",Kai="\\u2700-\\u27bf",jai="a-z\\xdf-\\xf6\\xf8-\\xff",VSa="\\xac\\xb1\\xd7\\xf7",WSa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",OSa="\\u2000-\\u206f",PSa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",zai="A-Z\\xc0-\\xd6\\xd8-\\xde",MSa="\\ufe0e\\ufe0f",qai=VSa+WSa+OSa+PSa,h2r="['\u2019]",Pai="["+qai+"]",$ai="["+ZSa+LSa+"]",eci="\\d+",HSa="["+Kai+"]",tci="["+jai+"]",rci="[^"+Uai+qai+eci+Kai+jai+zai+"]",YSa="\\ud83c[\\udffb-\\udfff]",QSa="(?:"+$ai+"|"+YSa+")",XSa="[^"+Uai+"]",nci="(?:\\ud83c[\\udde6-\\uddff]){2}",ici="[\\ud800-\\udbff][\\udc00-\\udfff]",FTe="["+zai+"]",JSa="\\u200d",Mai="(?:"+tci+"|"+rci+")",USa="(?:"+FTe+"|"+rci+")",Hai="(?:"+h2r+"(?:d|ll|m|re|s|t|ve))?",Yai="(?:"+h2r+"(?:D|LL|M|RE|S|T|VE))?",sci=QSa+"?",oci="["+MSa+"]?",KSa="(?:"+JSa+"(?:"+[XSa,nci,ici].join("|")+")"+oci+sci+")*",jSa=oci+sci+KSa,zSa="(?:"+[HSa,nci,ici].join("|")+")"+jSa,qSa=RegExp(h2r,"g"),$Sa=RegExp($ai,"g"),eva=RegExp([FTe+"?"+tci+"+"+Hai+"(?="+[Pai,FTe,"$"].join("|")+")",USa+"+"+Yai+"(?="+[Pai,FTe+Mai,"$"].join("|")+")",FTe+"?"+Mai+"+"+Hai,FTe+"+"+Yai,eci,zSa].join("|"),"g"),tva=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,rva={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},nva=typeof global=="object"&&global&&global.Object===Object&&global,iva=typeof self=="object"&&self&&self.Object===Object&&self,sva=nva||iva||Function("return this")();function ova(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var yva=1/0,bva="[object Symbol]",_2r="\\ud800-\\udfff",dci="\\u0300-\\u036f\\ufe20-\\ufe23",pci="\\u20d0-\\u20f0",fci="\\ufe0e\\ufe0f",Eva="["+_2r+"]",m2r="["+dci+pci+"]",C2r="\\ud83c[\\udffb-\\udfff]",Sva="(?:"+m2r+"|"+C2r+")",Ici="[^"+_2r+"]",hci="(?:\\ud83c[\\udde6-\\uddff]){2}",mci="[\\ud800-\\udbff][\\udc00-\\udfff]",Cci="\\u200d",_ci=Sva+"?",yci="["+fci+"]?",vva="(?:"+Cci+"(?:"+[Ici,hci,mci].join("|")+")"+yci+_ci+")*",Bva=yci+_ci+vva,wva="(?:"+[Ici+m2r+"?",m2r,hci,mci,Eva].join("|")+")",Tva=RegExp(C2r+"(?="+C2r+")|"+wva+Bva,"g"),Rva=RegExp("["+Cci+_2r+dci+pci+fci+"]"),Nva=typeof global=="object"&&global&&global.Object===Object&&global,Dva=typeof self=="object"&&self&&self.Object===Object&&self,kva=Nva||Dva||Function("return this")();function xva(e){return e.split("")}function bci(e){return Rva.test(e)}function Gva(e){return bci(e)?Fva(e):xva(e)}function Fva(e){return e.match(Tva)||[]}var Zva=Object.prototype,Lva=Zva.toString,uci=kva.Symbol,gci=uci?uci.prototype:void 0,Aci=gci?gci.toString:void 0;function Vva(e,t,r){var n=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:Vva(e,t,r)}function Pva(e){return function(t){t=Yva(t);var r=bci(t)?Gva(t):void 0,n=r?r[0]:t.charAt(0),a=r?Ova(r,1).join(""):t.slice(1);return n[e]()+a}}function Mva(e){return!!e&&typeof e=="object"}function Hva(e){return typeof e=="symbol"||Mva(e)&&Lva.call(e)==bva}function Yva(e){return e==null?"":Wva(e)}var Qva=Pva("toUpperCase");Eci.exports=Qva});var Kci=H((UAu,Uci)=>{var Xva=1/0,Jva="[object Symbol]",Uva=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Kva=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,MCt="\\ud800-\\udfff",kci="\\u0300-\\u036f\\ufe20-\\ufe23",xci="\\u20d0-\\u20f0",Gci="\\u2700-\\u27bf",Fci="a-z\\xdf-\\xf6\\xf8-\\xff",jva="\\xac\\xb1\\xd7\\xf7",zva="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",qva="\\u2000-\\u206f",$va=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Zci="A-Z\\xc0-\\xd6\\xd8-\\xde",Lci="\\ufe0e\\ufe0f",Vci=jva+zva+qva+$va,b2r="['\u2019]",eBa="["+MCt+"]",vci="["+Vci+"]",PCt="["+kci+xci+"]",Wci="\\d+",tBa="["+Gci+"]",Oci="["+Fci+"]",Pci="[^"+MCt+Vci+Wci+Gci+Fci+Zci+"]",y2r="\\ud83c[\\udffb-\\udfff]",rBa="(?:"+PCt+"|"+y2r+")",Mci="[^"+MCt+"]",E2r="(?:\\ud83c[\\udde6-\\uddff]){2}",S2r="[\\ud800-\\udbff][\\udc00-\\udfff]",ZTe="["+Zci+"]",Hci="\\u200d",Bci="(?:"+Oci+"|"+Pci+")",nBa="(?:"+ZTe+"|"+Pci+")",wci="(?:"+b2r+"(?:d|ll|m|re|s|t|ve))?",Tci="(?:"+b2r+"(?:D|LL|M|RE|S|T|VE))?",Yci=rBa+"?",Qci="["+Lci+"]?",iBa="(?:"+Hci+"(?:"+[Mci,E2r,S2r].join("|")+")"+Qci+Yci+")*",Xci=Qci+Yci+iBa,sBa="(?:"+[tBa,E2r,S2r].join("|")+")"+Xci,oBa="(?:"+[Mci+PCt+"?",PCt,E2r,S2r,eBa].join("|")+")",aBa=RegExp(b2r,"g"),cBa=RegExp(PCt,"g"),lBa=RegExp(y2r+"(?="+y2r+")|"+oBa+Xci,"g"),uBa=RegExp([ZTe+"?"+Oci+"+"+wci+"(?="+[vci,ZTe,"$"].join("|")+")",nBa+"+"+Tci+"(?="+[vci,ZTe+Bci,"$"].join("|")+")",ZTe+"?"+Bci+"+"+wci,ZTe+"+"+Tci,Wci,sBa].join("|"),"g"),gBa=RegExp("["+Hci+MCt+kci+xci+Lci+"]"),ABa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,dBa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},pBa=typeof global=="object"&&global&&global.Object===Object&&global,fBa=typeof self=="object"&&self&&self.Object===Object&&self,IBa=pBa||fBa||Function("return this")();function hBa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:TBa(e,t,r)}function DBa(e){return function(t){t=v2r(t);var r=Jci(t)?EBa(t):void 0,n=r?r[0]:t.charAt(0),a=r?NBa(r,1).join(""):t.slice(1);return n[e]()+a}}function kBa(e){return function(t){return hBa(VBa(FBa(t).replace(aBa,"")),e,"")}}function xBa(e){return!!e&&typeof e=="object"}function GBa(e){return typeof e=="symbol"||xBa(e)&&wBa.call(e)==Jva}function v2r(e){return e==null?"":RBa(e)}function FBa(e){return e=v2r(e),e&&e.replace(Kva,yBa).replace(cBa,"")}var ZBa=kBa(function(e,t,r){return e+(r?" ":"")+LBa(t)}),LBa=DBa("toUpperCase");function VBa(e,t,r){return e=v2r(e),t=r?void 0:t,t===void 0?bBa(e)?vBa(e):CBa(e):e.match(t)||[]}Uci.exports=ZBa});var Mli=H(Jhe=>{"use strict";Object.defineProperty(Jhe,"__esModule",{value:!0});Jhe.Application=Jhe.MinistoreContext=void 0;var YBa=(Wa(),vi(Va)),QBa=gl(),jQe=YBa.__importStar(Ec()),XBa=Et("readline");Jhe.MinistoreContext=jQe.default.createContext(null);var JBa=({children:e})=>{let{stdin:t,setRawMode:r}=(0,QBa.useStdin)();(0,jQe.useEffect)(()=>{r&&r(!0),t&&(0,XBa.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,jQe.useState)(new Map),o=(0,jQe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(new Map([...n,[l,A]]))}),[n,a]);return jQe.default.createElement(Jhe.MinistoreContext.Provider,{value:o,children:e})};Jhe.Application=JBa});var Yli=H(F2r=>{"use strict";Object.defineProperty(F2r,"__esModule",{value:!0});F2r.useKeypress=KBa;var UBa=gl(),Hli=Ec();function KBa({active:e},t,r){let{stdin:n}=(0,UBa.useStdin)(),a=(0,Hli.useCallback)((o,l)=>t(o,l),r);(0,Hli.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var Jli=H(Z2r=>{"use strict";Object.defineProperty(Z2r,"__esModule",{value:!0});Z2r.renderForm=$Ba;var jBa=(Wa(),vi(Va)),Qli=gl(),Xli=jBa.__importDefault(Ec()),zBa=Mli(),qBa=Yli();async function $Ba(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,Qli.useApp)();(0,qBa.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,Qli.render)(Xli.default.createElement(zBa.Application,null,Xli.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var jli=H(XCt=>{"use strict";Object.defineProperty(XCt,"__esModule",{value:!0});XCt.forceStdinTty=void 0;var Uli=Kli(Et("fs")),ewa=Kli(Et("tty"));function Kli(e){return e&&e.__esModule?e:{default:e}}var twa=function(){if(process.stdin.isTTY)return!1;var t=Uli.default.constants,r=t.O_RDONLY,n=t.O_NOCTTY,a=Uli.default.openSync("/dev/tty",r+n),o=new ewa.default.ReadStream(a);return Object.defineProperty(process,"stdin",{configurable:!0,enumerable:!0,get:function(){return o}}),!0};XCt.forceStdinTty=twa});var qli=H((lIu,zli)=>{function rwa(e){let t=e.length-1,r=e[t];for(;r===" "||r===" ";)r=e[--t];return e.substring(0,t+1)}function nwa(e){return e.split(` +`).map(n=>rwa(n)).join(` +`)}zli.exports=function(e,t){if(t=t||{},e==null)return e;var r=t.width||50,n=typeof t.indent=="string"?t.indent:" ",a=t.newline||` +`+n,o=typeof t.escape=="function"?t.escape:iwa,l=".{1,"+r+"}";t.cut!==!0&&(l+="([\\s\u200B]+|$)|[^\\s\u200B]+?([\\s\u200B]+|$)");var A=new RegExp(l,"g"),f=e.match(A)||[],I=n+f.map(function(C){return C.slice(-1)===` +`&&(C=C.slice(0,C.length-1)),o(C)}).join(a);return t.trim===!0&&(I=nwa(I)),I};function iwa(e){return e}});var eui=H((uIu,$li)=>{"use strict";var swa="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";$li.exports=swa});var iui=H((gIu,nui)=>{"use strict";var owa=eui();function tui(){}function rui(){}rui.resetWarningCache=tui;nui.exports=function(){function e(n,a,o,l,A,f){if(f!==owa){var I=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw I.name="Invariant Violation",I}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:rui,resetWarningCache:tui};return r.PropTypes=r,r}});var WTe=H((pIu,sui)=>{sui.exports=iui()();var AIu,dIu});var U2r=H((zQe,PTe)=>{var awa=200,J2r="__lodash_hash_undefined__",e_t=1,hui=2,mui=9007199254740991,JCt="[object Arguments]",O2r="[object Array]",cwa="[object AsyncFunction]",Cui="[object Boolean]",_ui="[object Date]",yui="[object Error]",bui="[object Function]",lwa="[object GeneratorFunction]",UCt="[object Map]",Eui="[object Number]",uwa="[object Null]",OTe="[object Object]",oui="[object Promise]",gwa="[object Proxy]",Sui="[object RegExp]",KCt="[object Set]",vui="[object String]",Awa="[object Symbol]",dwa="[object Undefined]",P2r="[object WeakMap]",Bui="[object ArrayBuffer]",jCt="[object DataView]",pwa="[object Float32Array]",fwa="[object Float64Array]",Iwa="[object Int8Array]",hwa="[object Int16Array]",mwa="[object Int32Array]",Cwa="[object Uint8Array]",_wa="[object Uint8ClampedArray]",ywa="[object Uint16Array]",bwa="[object Uint32Array]",Ewa=/[\\^$.*+?()[\]{}|]/g,Swa=/^\[object .+?Constructor\]$/,vwa=/^(?:0|[1-9]\d*)$/,X1={};X1[pwa]=X1[fwa]=X1[Iwa]=X1[hwa]=X1[mwa]=X1[Cwa]=X1[_wa]=X1[ywa]=X1[bwa]=!0;X1[JCt]=X1[O2r]=X1[Bui]=X1[Cui]=X1[jCt]=X1[_ui]=X1[yui]=X1[bui]=X1[UCt]=X1[Eui]=X1[OTe]=X1[Sui]=X1[KCt]=X1[vui]=X1[P2r]=!1;var wui=typeof global=="object"&&global&&global.Object===Object&&global,Bwa=typeof self=="object"&&self&&self.Object===Object&&self,Aee=wui||Bwa||Function("return this")(),Tui=typeof zQe=="object"&&zQe&&!zQe.nodeType&&zQe,aui=Tui&&typeof PTe=="object"&&PTe&&!PTe.nodeType&&PTe,Rui=aui&&aui.exports===Tui,L2r=Rui&&wui.process,cui=function(){try{return L2r&&L2r.binding&&L2r.binding("util")}catch{}}(),lui=cui&&cui.isTypedArray;function wwa(e,t){for(var r=-1,n=e==null?0:e.length,a=0,o=[];++r-1}function nTa(e,t){var r=this.__data__,n=r_t(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}dee.prototype.clear=$wa;dee.prototype.delete=eTa;dee.prototype.get=tTa;dee.prototype.has=rTa;dee.prototype.set=nTa;function jhe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++tA))return!1;var I=o.get(e);if(I&&o.get(t))return I==t;var C=-1,b=!0,E=r&hui?new qCt:void 0;for(o.set(e,t),o.set(t,e);++C-1&&e%1==0&&e-1&&e%1==0&&e<=mui}function Vui(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function eXe(e){return e!=null&&typeof e=="object"}var Wui=lui?Dwa(lui):_Ta;function GTa(e){return kTa(e)?ITa(e):yTa(e)}function FTa(){return[]}function ZTa(){return!1}PTe.exports=xTa});var Pui=H((fIu,Oui)=>{"use strict";Oui.exports=(e,t)=>{if(!Array.isArray(e))throw new TypeError(`Expected an array, got ${typeof e}`);let r=e.slice(),n=typeof t=="number"?t:0;return r.splice(-n%r.length).concat(r)}});var K2r=H((IIu,Hui)=>{"use strict";var LTa=vIr(),Mui=process.platform,r4={tick:"\u2714",cross:"\u2716",star:"\u2605",square:"\u2587",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",play:"\u25B6",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",circleQuestionMark:"?\u20DD",bullet:"\u25CF",dot:"\u2024",line:"\u2500",ellipsis:"\u2026",pointer:"\u276F",pointerSmall:"\u203A",info:"\u2139",warning:"\u26A0",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",heart:"\u2665",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",questionMarkPrefix:"?\u20DD",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneSeventh:"\u2150",oneEighth:"\u215B",oneNinth:"\u2151",oneTenth:"\u2152",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E"},VTa={tick:"\u221A",cross:"\xD7",star:"*",square:"\u2588",squareSmall:"[ ]",squareSmallFilled:"[\u2588]",play:"\u25BA",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",circleQuestionMark:"(?)",bullet:"*",dot:".",line:"\u2500",ellipsis:"...",pointer:">",pointerSmall:"\xBB",info:"i",warning:"\u203C",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",heart:r4.heart,arrowUp:r4.arrowUp,arrowDown:r4.arrowDown,arrowLeft:r4.arrowLeft,arrowRight:r4.arrowRight,radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",questionMarkPrefix:"\uFF1F",oneHalf:"1/2",oneThird:"1/3",oneQuarter:"1/4",oneFifth:"1/5",oneSixth:"1/6",oneSeventh:"1/7",oneEighth:"1/8",oneNinth:"1/9",oneTenth:"1/10",twoThirds:"2/3",twoFifths:"2/5",threeQuarters:"3/4",threeFifths:"3/5",threeEighths:"3/8",fourFifths:"4/5",fiveSixths:"5/6",fiveEighths:"5/8",sevenEighths:"7/8"};Mui==="linux"&&(r4.questionMarkPrefix="?");var i_t=Mui==="win32"?VTa:r4,WTa=e=>(i_t===r4||Object.keys(r4).forEach(t=>{r4[t]!==i_t[t]&&(e=e.replace(new RegExp(LTa(r4[t]),"g"),i_t[t]))}),e);Hui.exports=Object.assign(WTa,i_t)});var Xui=H(s_t=>{"use strict";Object.defineProperty(s_t,"__esModule",{value:!0});s_t.default=void 0;var Yui=j2r(Ec()),OTa=j2r(WTe()),Qui=gl(),PTa=j2r(K2r());function j2r(e){return e&&e.__esModule?e:{default:e}}var z2r=({isHighlighted:e})=>Yui.default.createElement(Qui.Box,{marginRight:1},Yui.default.createElement(Qui.Text,{color:e?"blue":void 0},e?PTa.default.pointer:" "));z2r.propTypes={isHighlighted:OTa.default.bool};z2r.defaultProps={isHighlighted:!1};var MTa=z2r;s_t.default=MTa});var Kui=H(o_t=>{"use strict";Object.defineProperty(o_t,"__esModule",{value:!0});o_t.default=void 0;var HTa=Uui(Ec()),Jui=Uui(WTe()),YTa=gl();function Uui(e){return e&&e.__esModule?e:{default:e}}var q2r=({isHighlighted:e,label:t})=>HTa.default.createElement(YTa.Text,{color:e?"blue":void 0},t);q2r.propTypes={isHighlighted:Jui.default.bool,label:Jui.default.string.isRequired};q2r.defaultProps={isHighlighted:!1};var QTa=q2r;o_t.default=QTa});var $ui=H(a_t=>{"use strict";Object.defineProperty(a_t,"__esModule",{value:!0});a_t.default=void 0;var jui=$2r(Ec()),XTa=$2r(WTe()),zui=gl(),qui=$2r(K2r());function $2r(e){return e&&e.__esModule?e:{default:e}}var eSr=({isSelected:e})=>jui.default.createElement(zui.Box,{marginRight:1},jui.default.createElement(zui.Text,{color:"green"},e?qui.default.circleFilled:qui.default.circle));eSr.propTypes={isSelected:XTa.default.bool};eSr.defaultProps={isSelected:!1};var JTa=eSr;a_t.default=JTa});var igi=H($he=>{"use strict";Object.defineProperty($he,"__esModule",{value:!0});Object.defineProperty($he,"Indicator",{enumerable:!0,get:function(){return egi.default}});Object.defineProperty($he,"Item",{enumerable:!0,get:function(){return tgi.default}});Object.defineProperty($he,"CheckBox",{enumerable:!0,get:function(){return rgi.default}});$he.default=void 0;var qhe=KTa(Ec()),zZ=HTe(WTe()),UTa=HTe(U2r()),c_t=HTe(Pui()),tSr=gl(),egi=HTe(Xui()),tgi=HTe(Kui()),rgi=HTe($ui());function HTe(e){return e&&e.__esModule?e:{default:e}}function ngi(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return ngi=function(){return e},e}function KTa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=ngi();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}function rSr(){return rSr=Object.assign||function(e){for(var t=1;t{let{items:n,focus:a,onHighlight:o,onSubmit:l}=this.props,{rotateIndex:A,highlightedIndex:f}=this.state,I=this.props.selected||this.state.selected,{limit:C,hasLimit:b}=this;if(a===!1)return;let E=String(r);if(E===jTa||E==="k"){let N=(b?C:n.length)-1,B=f===0,F=b?f:N,Q=B?A+1:A,J=B?F:f-1;this.setState({rotateIndex:Q,highlightedIndex:J});let ae=b?(0,c_t.default)(n,Q).slice(0,C):n;o(ae[J])}if(E===zTa||E==="j"){let N=f===(b?C:n.length)-1,B=b?f:0,F=N?A-1:A,Q=N?B:f+1;this.setState({rotateIndex:F,highlightedIndex:Q});let J=b?(0,c_t.default)(n,F).slice(0,C):n;o(J[Q])}if(E===$Ta){let B=(b?(0,c_t.default)(n,A).slice(0,C):n)[f];this.setSelectedState(this.selectItem(B))}E===qTa&&l(I)})}render(){let{items:t,indicatorComponent:r,itemComponent:n,checkboxComponent:a}=this.props,{rotateIndex:o,highlightedIndex:l}=this.state,{limit:A,hasLimit:f}=this,I=f?(0,c_t.default)(t,o).slice(0,A):t;return qhe.default.createElement(tSr.Box,{flexDirection:"column"},I.map((C,b)=>{let E=C.key||C.value,N=b===l,B=this.isSelected(C.value);return qhe.default.createElement(tSr.Box,{key:E},qhe.default.createElement(r,{isHighlighted:N}),qhe.default.createElement(a,{isSelected:B}),qhe.default.createElement(n,{...C,isHighlighted:N}))}))}componentDidMount(){let{stdin:t,setRawMode:r}=this.props;r(!0),t.on("data",this.handleInput)}componentWillUnmount(){let{stdin:t,setRawMode:r}=this.props;t.removeListener("data",this.handleInput),r(!1)}componentDidUpdate(t){(0,UTa.default)(t.items,this.props.items)||this.setState({rotateIndex:0,highlightedIndex:0})}isSelected(t){return(this.props.selected||this.state.selected).map(({value:n})=>n).includes(t)}selectItem(t){let{onSelect:r,onUnselect:n}=this.props,a=this.props.selected||this.state.selected;return this.isSelected(t.value)?(n(t),a.filter(({value:o})=>o!==t.value)):(r(t),[...a,t])}setSelectedState(t){this.setState({selected:t})}get hasLimit(){let{limit:t,items:r}=this.props;return typeof t=="number"&&r.length>t}get limit(){let{limit:t,items:r}=this.props;return this.hasLimit?Math.min(t,r.length):r.length}};l_t(rXe,"propTypes",{items:zZ.default.array,selected:zZ.default.array,defaultSelected:zZ.default.array,focus:zZ.default.bool,initialIndex:zZ.default.number,indicatorComponent:zZ.default.func,checkboxComponent:zZ.default.func,itemComponent:zZ.default.func,limit:zZ.default.number,onSelect:zZ.default.func,onUnselect:zZ.default.func,onSubmit:zZ.default.func,onHighlight:zZ.default.func,stdin:zZ.default.any.isRequired,setRawMode:zZ.default.func.isRequired});l_t(rXe,"defaultProps",{items:[],selected:void 0,defaultSelected:[],focus:!0,initialIndex:0,indicatorComponent:egi.default,checkboxComponent:rgi.default,itemComponent:tgi.default,limit:null,onSelect(){},onUnselect(){},onSubmit(){},onHighlight(){}});var eRa=e=>{let{stdin:t,setRawMode:r}=(0,tSr.useStdin)();return qhe.default.createElement(rXe,rSr({},e,{stdin:t,setRawMode:r}))};$he.default=eRa});var ogi=H(YTe=>{"use strict";Object.defineProperty(YTe,"__esModule",{value:!0});Object.defineProperty(YTe,"default",{enumerable:!0,get:function(){return u_t.default}});Object.defineProperty(YTe,"Item",{enumerable:!0,get:function(){return u_t.Item}});Object.defineProperty(YTe,"Indicator",{enumerable:!0,get:function(){return u_t.Indicator}});Object.defineProperty(YTe,"CheckBox",{enumerable:!0,get:function(){return u_t.CheckBox}});var u_t=tRa(igi());function sgi(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return sgi=function(){return e},e}function tRa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=sgi();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}});var mSr=H((Nhu,Lgi)=>{var eRe=1e3,tRe=eRe*60,rRe=tRe*60,eme=rRe*24,hRa=eme*7,mRa=eme*365.25;Lgi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return CRa(e);if(r==="number"&&isFinite(e))return t.long?yRa(e):_Ra(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function CRa(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*mRa;case"weeks":case"week":case"w":return r*hRa;case"days":case"day":case"d":return r*eme;case"hours":case"hour":case"hrs":case"hr":case"h":return r*rRe;case"minutes":case"minute":case"mins":case"min":case"m":return r*tRe;case"seconds":case"second":case"secs":case"sec":case"s":return r*eRe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function _Ra(e){var t=Math.abs(e);return t>=eme?Math.round(e/eme)+"d":t>=rRe?Math.round(e/rRe)+"h":t>=tRe?Math.round(e/tRe)+"m":t>=eRe?Math.round(e/eRe)+"s":e+"ms"}function yRa(e){var t=Math.abs(e);return t>=eme?__t(e,t,eme,"day"):t>=rRe?__t(e,t,rRe,"hour"):t>=tRe?__t(e,t,tRe,"minute"):t>=eRe?__t(e,t,eRe,"second"):e+" ms"}function __t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var CSr=H((Dhu,Vgi)=>{function bRa(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=mSr(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(J,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(J,Q),(J.log||r.log).apply(J,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{mP.formatArgs=SRa;mP.save=vRa;mP.load=BRa;mP.useColors=ERa;mP.storage=wRa();mP.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();mP.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function ERa(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function SRa(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+y_t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}mP.log=console.debug||console.log||(()=>{});function vRa(e){try{e?mP.storage.setItem("debug",e):mP.storage.removeItem("debug")}catch{}}function BRa(){let e;try{e=mP.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function wRa(){try{return localStorage}catch{}}y_t.exports=CSr()(mP);var{formatters:TRa}=y_t.exports;TRa.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Pgi=H((cD,E_t)=>{var RRa=Et("tty"),b_t=Et("util");cD.init=ZRa;cD.log=xRa;cD.formatArgs=DRa;cD.save=GRa;cD.load=FRa;cD.useColors=NRa;cD.destroy=b_t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");cD.colors=[6,2,3,4,5,1];try{let e=Et("supports-color");e&&(e.stderr||e).level>=2&&(cD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}cD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function NRa(){return"colors"in cD.inspectOpts?!!cD.inspectOpts.colors:RRa.isatty(process.stderr.fd)}function DRa(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+v_t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=wRa()+t+" "+e[0]}function wRa(){return aD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function TRa(...e){return process.stderr.write(S_t.formatWithOptions(aD.inspectOpts,...e)+` -`)}function RRa(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function NRa(){return process.env.DEBUG}function DRa(e){e.inspectOpts={};let t=Object.keys(aD.inspectOpts);for(let r=0;rt.trim()).join(" ")};Rgi.O=function(e){return this.inspectOpts.colors=this.useColors,S_t.inspect(e,this.inspectOpts)}});var fT=H((EIu,mSr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?mSr.exports=Tgi():mSr.exports=Ngi()});var xgi=H((BIu,CSr)=>{"use strict";var FRa=Object.prototype.hasOwnProperty,qZ="~";function iXe(){}Object.create&&(iXe.prototype=Object.create(null),new iXe().__proto__||(qZ=!1));function ZRa(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function kgi(e,t,r,n,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var o=new ZRa(r,n||e,a),l=qZ?qZ+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function B_t(e,t){--e._eventsCount===0?e._events=new iXe:delete e._events[t]}function DG(){this._events=new iXe,this._eventsCount=0}DG.prototype.eventNames=function(){var t=[],r,n;if(this._eventsCount===0)return t;for(n in r=this._events)FRa.call(r,n)&&t.push(qZ?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};DG.prototype.listeners=function(t){var r=qZ?qZ+t:t,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,o=n.length,l=new Array(o);a{"use strict";Ogi.exports=XRa;function sRe(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function XRa(e){if(e=e||{},e.circles)return JRa(e);let t=new Map;if(t.set(Date,l=>new Date(l)),t.set(Map,(l,A)=>new Map(n(Array.from(l),A))),t.set(Set,(l,A)=>new Set(n(Array.from(l),A))),e.constructorHandlers)for(let l of e.constructorHandlers)t.set(l[0],l[1]);let r=null;return e.proto?o:a;function n(l,A){let f=Object.keys(l),I=new Array(f.length);for(let C=0;Cnew Date(f)),n.set(Map,(f,I)=>new Map(o(Array.from(f),I))),n.set(Set,(f,I)=>new Set(o(Array.from(f),I))),e.constructorHandlers)for(let f of e.constructorHandlers)n.set(f[0],f[1]);let a=null;return e.proto?A:l;function o(f,I){let C=Object.keys(f),b=new Array(C.length);for(let E=0;E{T_t=globalThis.window?.document!==void 0,hhu=globalThis.process?.versions?.node!==void 0,mhu=globalThis.process?.versions?.bun!==void 0,Chu=globalThis.Deno?.version?.deno!==void 0,_hu=globalThis.process?.versions?.electron!==void 0,yhu=globalThis.navigator?.userAgent?.includes("jsdom")===!0,bhu=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,Ehu=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,Shu=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,vhu=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,sXe=globalThis.navigator?.userAgentData?.platform,Bhu=sXe==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",whu=sXe==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",Thu=sXe==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",Rhu=sXe==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),Nhu=sXe==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var cXe={};Uf(cXe,{beep:()=>CNa,clearScreen:()=>fNa,clearTerminal:()=>INa,cursorBackward:()=>eNa,cursorDown:()=>qRa,cursorForward:()=>$Ra,cursorGetPosition:()=>nNa,cursorHide:()=>oNa,cursorLeft:()=>Qgi,cursorMove:()=>zRa,cursorNextLine:()=>iNa,cursorPrevLine:()=>sNa,cursorRestorePosition:()=>rNa,cursorSavePosition:()=>tNa,cursorShow:()=>aNa,cursorTo:()=>jRa,cursorUp:()=>Ygi,enterAlternativeScreen:()=>hNa,eraseDown:()=>gNa,eraseEndLine:()=>lNa,eraseLine:()=>Xgi,eraseLines:()=>cNa,eraseScreen:()=>ySr,eraseStartLine:()=>uNa,eraseUp:()=>ANa,exitAlternativeScreen:()=>mNa,iTerm:()=>bNa,image:()=>yNa,link:()=>_Na,scrollDown:()=>pNa,scrollUp:()=>dNa});import bSr from"node:process";var _0,aXe,oRe,oXe,Hgi,URa,KRa,jRa,zRa,Ygi,qRa,$Ra,eNa,Qgi,tNa,rNa,nNa,iNa,sNa,oNa,aNa,cNa,lNa,uNa,Xgi,gNa,ANa,ySr,dNa,pNa,fNa,INa,hNa,mNa,CNa,_Na,yNa,bNa,ESr=bc(()=>{Mgi();_0="\x1B[",aXe="\x1B]",oRe="\x07",oXe=";",Hgi=!T_t&&bSr.env.TERM_PROGRAM==="Apple_Terminal",URa=!T_t&&bSr.platform==="win32",KRa=T_t?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:bSr.cwd,jRa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?_0+(e+1)+"G":_0+(t+1)+oXe+(e+1)+"H"},zRa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=_0+-e+"D":e>0&&(r+=_0+e+"C"),t<0?r+=_0+-t+"A":t>0&&(r+=_0+t+"B"),r},Ygi=(e=1)=>_0+e+"A",qRa=(e=1)=>_0+e+"B",$Ra=(e=1)=>_0+e+"C",eNa=(e=1)=>_0+e+"D",Qgi=_0+"G",tNa=Hgi?"\x1B7":_0+"s",rNa=Hgi?"\x1B8":_0+"u",nNa=_0+"6n",iNa=_0+"E",sNa=_0+"F",oNa=_0+"?25l",aNa=_0+"?25h",cNa=e=>{let t="";for(let r=0;r[aXe,"8",oXe,oXe,t,oRe,e,aXe,"8",oXe,oXe,oRe].join(""),yNa=(e,t={})=>{let r=`${aXe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(e).toString("base64")+oRe},bNa={setCwd:(e=KRa())=>`${aXe}50;CurrentDir=${e}${oRe}`,annotation(e,t={}){let r=`${aXe}1337;`,n=t.x!==void 0,a=t.y!==void 0;if((n||a)&&!(n&&a&&t.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+oRe}}});var Jgi=bc(()=>{ESr();ESr()});function SSr(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))ENa(e,t,a,r);return vNa(e,t),RNa(e,t,n),e}var ENa,SNa,vNa,BNa,wNa,TNa,RNa,Ugi=bc(()=>{ENa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!SNa(a,o)&&n||Object.defineProperty(e,r,o)},SNa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},vNa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},BNa=(e,t)=>`/* Wrapped ${e}*/ -${t}`,wNa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),TNa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),RNa=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=BNa.bind(null,n,t.toString());Object.defineProperty(a,"name",TNa);let{writable:o,enumerable:l,configurable:A}=wNa;Object.defineProperty(e,"toString",{value:a,writable:o,enumerable:l,configurable:A})}});var R_t,Kgi,jgi,zgi=bc(()=>{Ugi();R_t=new WeakMap,Kgi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(R_t.set(o,++n),n===1)r=e.apply(this,l),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return SSr(o,e),R_t.set(o,n),o};Kgi.callCount=e=>{if(!R_t.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return R_t.get(e)};jgi=Kgi});import N_t from"node:process";var qgi,NNa,$gi,eAi=bc(()=>{zgi();M1r();qgi=N_t.stderr.isTTY?N_t.stderr:N_t.stdout.isTTY?N_t.stdout:void 0,NNa=qgi?jgi(()=>{vCt(()=>{qgi.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},$gi=NNa});import tAi from"node:process";var D_t,aRe,vSr,rAi=bc(()=>{eAi();D_t=!1,aRe={};aRe.show=(e=tAi.stderr)=>{e.isTTY&&(D_t=!1,e.write("\x1B[?25h"))};aRe.hide=(e=tAi.stderr)=>{e.isTTY&&($gi(),D_t=!0,e.write("\x1B[?25l"))};aRe.toggle=(e,t)=>{e!==void 0&&(D_t=e),D_t?aRe.show(t):aRe.hide(t)};vSr=aRe});function nAi(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function iAi(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function sAi(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var oAi=bc(()=>{});function DNa(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function k_t(e,{ambiguousAsWide:t=!1}={}){return DNa(e),iAi(e)||sAi(e)||t&&nAi(e)?2:1}var BSr=bc(()=>{oAi()});var cAi=H((jhu,aAi)=>{aAi.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});function jM(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:n=!1}=t;if(n||(e=lee(e)),e.length===0)return 0;let a=0,o={ambiguousAsWide:!r};for(let{segment:l}of kNa.segment(e)){let A=l.codePointAt(0);if(!(A<=31||A>=127&&A<=159)&&!(A>=8203&&A<=8207||A===65279)&&!(A>=768&&A<=879||A>=6832&&A<=6911||A>=7616&&A<=7679||A>=8400&&A<=8447||A>=65056&&A<=65071)&&!(A>=55296&&A<=57343)&&!(A>=65024&&A<=65039)&&!xNa.test(l)){if((0,lAi.default)().test(l)){a+=2;continue}a+=k_t(A,o)}}return a}var lAi,kNa,xNa,wSr=bc(()=>{xQe();BSr();lAi=Nt(cAi(),1),kNa=new Intl.Segmenter,xNa=/^\p{Default_Ignorable_Code_Point}$/u});function ZNa(){let e=new Map;for(let[t,r]of Object.entries(D2)){for(let[n,a]of Object.entries(r))D2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=D2[n],e.set(a[0],a[1]);Object.defineProperty(D2,t,{value:r,enumerable:!1})}return Object.defineProperty(D2,"codes",{value:e,enumerable:!1}),D2.color.close="\x1B[39m",D2.bgColor.close="\x1B[49m",D2.color.ansi=uAi(),D2.color.ansi256=gAi(),D2.color.ansi16m=AAi(),D2.bgColor.ansi=uAi(10),D2.bgColor.ansi256=gAi(10),D2.bgColor.ansi16m=AAi(10),Object.defineProperties(D2,{rgbToAnsi256:{value:(t,r,n)=>t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>D2.rgbToAnsi256(...D2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>D2.ansi256ToAnsi(D2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>D2.ansi256ToAnsi(D2.hexToAnsi256(t)),enumerable:!1}}),D2}var uAi,gAi,AAi,D2,emu,GNa,FNa,tmu,LNa,dV,x_t=bc(()=>{uAi=(e=0)=>t=>`\x1B[${t+e}m`,gAi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,AAi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,D2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[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],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},emu=Object.keys(D2.modifier),GNa=Object.keys(D2.color),FNa=Object.keys(D2.bgColor),tmu=[...GNa,...FNa];LNa=ZNa(),dV=LNa});var hAi={};Uf(hAi,{default:()=>Z_t});function Z_t(e,t,r){return String(e).normalize().replaceAll(`\r +`+o),e.push(a+"m+"+E_t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=kRa()+t+" "+e[0]}function kRa(){return cD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function xRa(...e){return process.stderr.write(b_t.formatWithOptions(cD.inspectOpts,...e)+` +`)}function GRa(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function FRa(){return process.env.DEBUG}function ZRa(e){e.inspectOpts={};let t=Object.keys(cD.inspectOpts);for(let r=0;rt.trim()).join(" ")};Ogi.O=function(e){return this.inspectOpts.colors=this.useColors,b_t.inspect(e,this.inspectOpts)}});var IT=H((khu,_Sr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?_Sr.exports=Wgi():_Sr.exports=Pgi()});var Ygi=H((Fhu,ySr)=>{"use strict";var ORa=Object.prototype.hasOwnProperty,$Z="~";function oXe(){}Object.create&&(oXe.prototype=Object.create(null),new oXe().__proto__||($Z=!1));function PRa(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function Hgi(e,t,r,n,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var o=new PRa(r,n||e,a),l=$Z?$Z+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function S_t(e,t){--e._eventsCount===0?e._events=new oXe:delete e._events[t]}function kG(){this._events=new oXe,this._eventsCount=0}kG.prototype.eventNames=function(){var t=[],r,n;if(this._eventsCount===0)return t;for(n in r=this._events)ORa.call(r,n)&&t.push($Z?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};kG.prototype.listeners=function(t){var r=$Z?$Z+t:t,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,o=n.length,l=new Array(o);a{"use strict";zgi.exports=zRa;function nRe(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function zRa(e){if(e=e||{},e.circles)return qRa(e);let t=new Map;if(t.set(Date,l=>new Date(l)),t.set(Map,(l,A)=>new Map(n(Array.from(l),A))),t.set(Set,(l,A)=>new Set(n(Array.from(l),A))),e.constructorHandlers)for(let l of e.constructorHandlers)t.set(l[0],l[1]);let r=null;return e.proto?o:a;function n(l,A){let f=Object.keys(l),I=new Array(f.length);for(let C=0;Cnew Date(f)),n.set(Map,(f,I)=>new Map(o(Array.from(f),I))),n.set(Set,(f,I)=>new Set(o(Array.from(f),I))),e.constructorHandlers)for(let f of e.constructorHandlers)n.set(f[0],f[1]);let a=null;return e.proto?A:l;function o(f,I){let C=Object.keys(f),b=new Array(C.length);for(let E=0;E{B_t=globalThis.window?.document!==void 0,Bmu=globalThis.process?.versions?.node!==void 0,wmu=globalThis.process?.versions?.bun!==void 0,Tmu=globalThis.Deno?.version?.deno!==void 0,Rmu=globalThis.process?.versions?.electron!==void 0,Nmu=globalThis.navigator?.userAgent?.includes("jsdom")===!0,Dmu=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,kmu=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,xmu=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,Gmu=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,aXe=globalThis.navigator?.userAgentData?.platform,Fmu=aXe==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",Zmu=aXe==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",Lmu=aXe==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",Vmu=aXe==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),Wmu=aXe==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var uXe={};Uf(uXe,{beep:()=>SNa,clearScreen:()=>_Na,clearTerminal:()=>yNa,cursorBackward:()=>sNa,cursorDown:()=>nNa,cursorForward:()=>iNa,cursorGetPosition:()=>cNa,cursorHide:()=>gNa,cursorLeft:()=>rAi,cursorMove:()=>rNa,cursorNextLine:()=>lNa,cursorPrevLine:()=>uNa,cursorRestorePosition:()=>aNa,cursorSavePosition:()=>oNa,cursorShow:()=>ANa,cursorTo:()=>tNa,cursorUp:()=>tAi,enterAlternativeScreen:()=>bNa,eraseDown:()=>INa,eraseEndLine:()=>pNa,eraseLine:()=>nAi,eraseLines:()=>dNa,eraseScreen:()=>ESr,eraseStartLine:()=>fNa,eraseUp:()=>hNa,exitAlternativeScreen:()=>ENa,iTerm:()=>wNa,image:()=>BNa,link:()=>vNa,scrollDown:()=>CNa,scrollUp:()=>mNa});import SSr from"node:process";var y0,lXe,iRe,cXe,eAi,$Ra,eNa,tNa,rNa,tAi,nNa,iNa,sNa,rAi,oNa,aNa,cNa,lNa,uNa,gNa,ANa,dNa,pNa,fNa,nAi,INa,hNa,ESr,mNa,CNa,_Na,yNa,bNa,ENa,SNa,vNa,BNa,wNa,vSr=bc(()=>{$gi();y0="\x1B[",lXe="\x1B]",iRe="\x07",cXe=";",eAi=!B_t&&SSr.env.TERM_PROGRAM==="Apple_Terminal",$Ra=!B_t&&SSr.platform==="win32",eNa=B_t?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:SSr.cwd,tNa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?y0+(e+1)+"G":y0+(t+1)+cXe+(e+1)+"H"},rNa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=y0+-e+"D":e>0&&(r+=y0+e+"C"),t<0?r+=y0+-t+"A":t>0&&(r+=y0+t+"B"),r},tAi=(e=1)=>y0+e+"A",nNa=(e=1)=>y0+e+"B",iNa=(e=1)=>y0+e+"C",sNa=(e=1)=>y0+e+"D",rAi=y0+"G",oNa=eAi?"\x1B7":y0+"s",aNa=eAi?"\x1B8":y0+"u",cNa=y0+"6n",lNa=y0+"E",uNa=y0+"F",gNa=y0+"?25l",ANa=y0+"?25h",dNa=e=>{let t="";for(let r=0;r[lXe,"8",cXe,cXe,t,iRe,e,lXe,"8",cXe,cXe,iRe].join(""),BNa=(e,t={})=>{let r=`${lXe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(e).toString("base64")+iRe},wNa={setCwd:(e=eNa())=>`${lXe}50;CurrentDir=${e}${iRe}`,annotation(e,t={}){let r=`${lXe}1337;`,n=t.x!==void 0,a=t.y!==void 0;if((n||a)&&!(n&&a&&t.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+iRe}}});var iAi=bc(()=>{vSr();vSr()});function BSr(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))TNa(e,t,a,r);return NNa(e,t),GNa(e,t,n),e}var TNa,RNa,NNa,DNa,kNa,xNa,GNa,sAi=bc(()=>{TNa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!RNa(a,o)&&n||Object.defineProperty(e,r,o)},RNa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},NNa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},DNa=(e,t)=>`/* Wrapped ${e}*/ +${t}`,kNa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),xNa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),GNa=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=DNa.bind(null,n,t.toString());Object.defineProperty(a,"name",xNa);let{writable:o,enumerable:l,configurable:A}=kNa;Object.defineProperty(e,"toString",{value:a,writable:o,enumerable:l,configurable:A})}});var w_t,oAi,aAi,cAi=bc(()=>{sAi();w_t=new WeakMap,oAi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(w_t.set(o,++n),n===1)r=e.apply(this,l),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return BSr(o,e),w_t.set(o,n),o};oAi.callCount=e=>{if(!w_t.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return w_t.get(e)};aAi=oAi});import T_t from"node:process";var lAi,FNa,uAi,gAi=bc(()=>{cAi();Y1r();lAi=T_t.stderr.isTTY?T_t.stderr:T_t.stdout.isTTY?T_t.stdout:void 0,FNa=lAi?aAi(()=>{ECt(()=>{lAi.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},uAi=FNa});import AAi from"node:process";var R_t,sRe,wSr,dAi=bc(()=>{gAi();R_t=!1,sRe={};sRe.show=(e=AAi.stderr)=>{e.isTTY&&(R_t=!1,e.write("\x1B[?25h"))};sRe.hide=(e=AAi.stderr)=>{e.isTTY&&(uAi(),R_t=!0,e.write("\x1B[?25l"))};sRe.toggle=(e,t)=>{e!==void 0&&(R_t=e),R_t?sRe.show(t):sRe.hide(t)};wSr=sRe});function pAi(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function fAi(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function IAi(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var hAi=bc(()=>{});function ZNa(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function N_t(e,{ambiguousAsWide:t=!1}={}){return ZNa(e),fAi(e)||IAi(e)||t&&pAi(e)?2:1}var TSr=bc(()=>{hAi()});var CAi=H((sCu,mAi)=>{mAi.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});function zM(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:n=!1}=t;if(n||(e=uee(e)),e.length===0)return 0;let a=0,o={ambiguousAsWide:!r};for(let{segment:l}of LNa.segment(e)){let A=l.codePointAt(0);if(!(A<=31||A>=127&&A<=159)&&!(A>=8203&&A<=8207||A===65279)&&!(A>=768&&A<=879||A>=6832&&A<=6911||A>=7616&&A<=7679||A>=8400&&A<=8447||A>=65056&&A<=65071)&&!(A>=55296&&A<=57343)&&!(A>=65024&&A<=65039)&&!VNa.test(l)){if((0,_Ai.default)().test(l)){a+=2;continue}a+=N_t(A,o)}}return a}var _Ai,LNa,VNa,RSr=bc(()=>{kQe();TSr();_Ai=xt(CAi(),1),LNa=new Intl.Segmenter,VNa=/^\p{Default_Ignorable_Code_Point}$/u});function PNa(){let e=new Map;for(let[t,r]of Object.entries(k2)){for(let[n,a]of Object.entries(r))k2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=k2[n],e.set(a[0],a[1]);Object.defineProperty(k2,t,{value:r,enumerable:!1})}return Object.defineProperty(k2,"codes",{value:e,enumerable:!1}),k2.color.close="\x1B[39m",k2.bgColor.close="\x1B[49m",k2.color.ansi=yAi(),k2.color.ansi256=bAi(),k2.color.ansi16m=EAi(),k2.bgColor.ansi=yAi(10),k2.bgColor.ansi256=bAi(10),k2.bgColor.ansi16m=EAi(10),Object.defineProperties(k2,{rgbToAnsi256:{value:(t,r,n)=>t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>k2.rgbToAnsi256(...k2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>k2.ansi256ToAnsi(k2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>k2.ansi256ToAnsi(k2.hexToAnsi256(t)),enumerable:!1}}),k2}var yAi,bAi,EAi,k2,lCu,WNa,ONa,uCu,MNa,pV,D_t=bc(()=>{yAi=(e=0)=>t=>`\x1B[${t+e}m`,bAi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,EAi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,k2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[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],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},lCu=Object.keys(k2.modifier),WNa=Object.keys(k2.color),ONa=Object.keys(k2.bgColor),uCu=[...WNa,...ONa];MNa=PNa(),pV=MNa});var TAi={};Uf(TAi,{default:()=>G_t});function G_t(e,t,r){return String(e).normalize().replaceAll(`\r `,` `).split(` -`).map(n=>MNa(n,t,r)).join(` -`)}var F_t,VNa,RSr,fAi,WNa,IAi,G_t,dAi,pAi,ONa,TSr,PNa,MNa,NSr=bc(()=>{wSr();xQe();x_t();F_t=new Set(["\x1B","\x9B"]),VNa=39,RSr="\x07",fAi="[",WNa="]",IAi="m",G_t=`${WNa}8;;`,dAi=e=>`${F_t.values().next().value}${fAi}${e}${IAi}`,pAi=e=>`${F_t.values().next().value}${G_t}${e}${RSr}`,ONa=e=>e.split(" ").map(t=>jM(t)),TSr=(e,t,r)=>{let n=[...t],a=!1,o=!1,l=jM(lee(e.at(-1)));for(let[A,f]of n.entries()){let I=jM(f);if(l+I<=r?e[e.length-1]+=f:(e.push(f),l=0),F_t.has(f)&&(a=!0,o=n.slice(A+1,A+1+G_t.length).join("")===G_t),a){o?f===RSr&&(a=!1,o=!1):f===IAi&&(a=!1);continue}l+=I,l===r&&A0&&e.length>1&&(e[e.length-2]+=e.pop())},PNa=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(jM(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},MNa=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a,o,l=ONa(e),A=[""];for(let[b,E]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A.at(-1).trimStart());let N=jM(A.at(-1));if(b!==0&&(N>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),N=0),(N>0||r.trim===!1)&&(A[A.length-1]+=" ",N++)),r.hard&&l[b]>t){let B=t-N,F=1+Math.floor((l[b]-B-1)/t);Math.floor((l[b]-1)/t)t&&N>0&&l[b]>0){if(r.wordWrap===!1&&Nt&&r.wordWrap===!1){TSr(A,E,t);continue}A[A.length-1]+=E}r.trim!==!1&&(A=A.map(b=>PNa(b)));let f=A.join(` -`),I=[...f],C=0;for(let[b,E]of I.entries()){if(n+=E,F_t.has(E)){let{groups:B}=new RegExp(`(?:\\${fAi}(?\\d+)m|\\${G_t}(?.*)${RSr})`).exec(f.slice(C))||{groups:{}};if(B.code!==void 0){let F=Number.parseFloat(B.code);a=F===VNa?void 0:F}else B.uri!==void 0&&(o=B.uri.length===0?void 0:B.uri)}let N=dV.codes.get(Number(a));I[b+1]===` -`?(o&&(n+=pAi("")),a&&N&&(n+=dAi(N))):E===` -`&&(a&&N&&(n+=dAi(a)),o&&(n+=pAi(o))),C+=E.length}return n}});function DSr(e){return Number.isInteger(e)?k_t(e)===2:!1}var mAi=bc(()=>{BSr()});function XNa(e){if(xSr.has(e))return e;if(kSr.has(e))return kSr.get(e);e=e.slice(2),e.includes(";")&&(e=e[0]+"0");let t=dV.codes.get(Number.parseInt(e,10));return t?dV.color.ansi(t):dV.reset.open}function JNa(e){for(let t=0;t=YNa&&r<=QNa)return t}return-1}function UNa(e,t){e=e.slice(t,t+19);let r=JNa(e);if(r!==-1){let n=e.indexOf("m",r);return n===-1&&(n=e.length),e.slice(0,n+1)}}function KNa(e,t=Number.POSITIVE_INFINITY){let r=[],n=0,a=0;for(;n=t)break}return r}function CAi(e){let t=[];for(let r of e)r.code===dV.reset.open?t=[]:xSr.has(r.code)?t=t.filter(n=>n.endCode!==r.code):(t=t.filter(n=>n.endCode!==r.endCode),t.push(r));return t}function jNa(e){return CAi(e).map(({endCode:n})=>n).reverse().join("")}function GSr(e,t,r){let n=KNa(e,r),a=[],o=0,l="",A=!1;for(let f of n){if(r!==void 0&&o>=r)break;f.type==="ansi"?(a.push(f),A&&(l+=f.code)):(!A&&o>=t&&(A=!0,a=CAi(a),l=a.map(({code:I})=>I).join("")),A&&(l+=f.value),o+=f.isFullWidth?2:f.value.length)}return l+=jNa(a),l}var HNa,YNa,QNa,xSr,kSr,_Ai=bc(()=>{x_t();mAi();HNa=new Set([27,155]),YNa="0".codePointAt(0),QNa="9".codePointAt(0),xSr=new Set,kSr=new Map;for(let[e,t]of dV.codes)xSr.add(dV.color.ansi(t)),kSr.set(dV.color.ansi(e),dV.color.ansi(t))});var bAi={};Uf(bAi,{createLogUpdate:()=>ZSr,default:()=>eDa,logUpdateStderr:()=>tDa});import yAi from"node:process";function ZSr(e,{showCursor:t=!1}={}){let r=0,n=FSr(e),a="",o=()=>{a="",n=FSr(e),r=0},l=(...A)=>{t||vSr.hide();let f=qNa(e,A.join(" ")+` -`),I=FSr(e);f===a&&n===I||(a=f,n=I,f=Z_t(f,I,{trim:!1,hard:!0,wordWrap:!1}),e.write(cXe.eraseLines(r)+f),r=f.split(` -`).length)};return l.clear=()=>{e.write(cXe.eraseLines(r)),o()},l.done=()=>{o(),t||vSr.show()},l}var zNa,FSr,qNa,$Na,eDa,tDa,EAi=bc(()=>{Jgi();rAi();NSr();_Ai();xQe();zNa=24,FSr=({columns:e=80})=>e,qNa=(e,t)=>{let r=e.rows??zNa,n=t.split(` -`),a=Math.max(0,n.length-r);return a?GSr(t,lee(n.slice(0,a).join(` -`)).length+1):t};$Na=ZSr(yAi.stdout),eDa=$Na,tDa=ZSr(yAi.stderr)});function LSr(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 SAi=bc(()=>{});function s6(e,t,r){let n=[...e],a=[],o=typeof r=="number"?r:n.length,l=!1,A,f=0,I="";for(let[C,b]of n.entries()){let E=!1;if(BAi.includes(b)){let N=/\d[^m]*/.exec(e.slice(C,C+18));A=N&&N.length>0?N[0]:void 0,ft&&f<=o)I+=b;else if(f===t&&!l&&A!==void 0)I=vAi(a);else if(f>=o){I+=vAi(a,!0,A);break}}return I}var rDa,BAi,L_t,vAi,wAi=bc(()=>{SAi();x_t();rDa=/^[\uD800-\uDBFF][\uDC00-\uDFFF]$/,BAi=["\x1B","\x9B"],L_t=e=>`${BAi[0]}[${e}m`,vAi=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.includes(";")&&(a=a.split(";")[0][0]+"0");let l=dV.codes.get(Number.parseInt(a,10));if(l){let A=e.indexOf(l.toString());A===-1?n.push(L_t(t?l:o)):e.splice(A,1)}else if(t){n.push(L_t(0));break}else n.push(L_t(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=L_t(dV.codes.get(Number.parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")}});var RAi={};Uf(RAi,{default:()=>TAi});function V_t(e,t,r){if(e.charAt(t)===" ")return t;let n=r?1:-1;for(let a=0;a<=3;a++){let o=t+a*n;if(e.charAt(o)===" ")return o}return t}function TAi(e,t,r={}){let{position:n="end",space:a=!1,preferTruncationOnSpace:o=!1}=r,{truncationCharacter:l="\u2026"}=r;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let A=jM(e);if(A<=t)return e;if(n==="start"){if(o){let f=V_t(e,A-t+1,!0);return l+s6(e,f,A).trim()}return a===!0&&(l+=" "),l+s6(e,A-t+jM(l),A)}if(n==="middle"){a===!0&&(l=` ${l} `);let f=Math.floor(t/2);if(o){let I=V_t(e,f),C=V_t(e,A-(t-f)+1,!0);return s6(e,0,I)+l+s6(e,C,A).trim()}return s6(e,0,f)+l+s6(e,A-(t-f)+jM(l),A)}if(n==="end"){if(o){let f=V_t(e,t-1);return s6(e,0,f)+l}return a===!0&&(l=` ${l}`),s6(e,0,t-jM(l))+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}var NAi=bc(()=>{wAi();wSr()});var avr=H((PCu,kdi)=>{"use strict";var MDa=Et("child_process").spawn;function HDa(e){if(e){e=e.trim();var t=/your \d+x\d+ screen size is bogus\. expect trouble/gi;return e=e.replace(t,""),e.trim()}}function YDa(e,t,r,n){typeof r=="function"&&(n=r,r=void 0);var a=!1,o=MDa(e,t,r),l="",A="";o.stdout.on("data",function(f){l+=f.toString()}),o.stderr.on("data",function(f){A+=f.toString()}),o.on("error",function(f){a||(a=!0,n(new Error(f)))}),o.on("close",function(f){if(!a){if(a=!0,A=HDa(A),A)return n(new Error(A));n(null,l,f)}})}kdi.exports=YDa});var Gdi=H((MCu,xdi)=>{"use strict";var QDa=Et("os"),XDa=avr();function JDa(e){var t=["-A","-o","ppid,pid"];XDa("ps",t,function(r,n,a){if(r)return e(r);if(a!==0)return e(new Error("pidtree ps command exited with code "+a));try{n=n.split(QDa.EOL);for(var o=[],l=1;l{"use strict";var UDa=Et("os"),KDa=avr();function jDa(e){var t=["PROCESS","get","ParentProcessId,ProcessId"],r={windowsHide:!0,windowsVerbatimArguments:!0};KDa("wmic",t,r,function(n,a,o){if(n){e(n);return}if(o!==0){e(new Error("pidtree wmic command exited with code "+o));return}try{a=a.split(UDa.EOL);for(var l=[],A=1;A{"use strict";var Vdi=Et("os"),zDa={darwin:"ps",sunos:"ps",freebsd:"ps",netbsd:"ps",win:"wmic",linux:"ps",aix:"ps"},qDa={ps:()=>Gdi(),wmic:()=>Zdi()},cvr=Vdi.platform();cvr.startsWith("win")&&(cvr="win");var Ldi=zDa[cvr];function $Da(e){Ldi===void 0&&e(new Error(Vdi.platform()+" is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"));var t=qDa[Ldi]();t(e)}Wdi.exports=$Da});var Mdi=H((QCu,Pdi)=>{"use strict";var eka=Odi();function tka(e,t,r){if(typeof t=="function"&&(r=t,t={}),typeof t!="object"&&(t={}),e=parseInt(e,10),isNaN(e)||e<-1){r(new TypeError("The pid provided is invalid"));return}eka(function(n,a){if(n){r(n);return}if(e===-1){for(var o=0;o0;){var I=a.pop();f[I[0]]?f[I[0]].push(I[1]):f[I[0]]=[I[1]]}for(var C=0,b=[l];C{"use strict";function rka(e,t,r){return new Promise(function(n,a){e(t,r,function(o,l){if(o)return a(o);n(l)})})}String.prototype.startsWith||(String.prototype.startsWith=function(e){return this.substring(0,e.length)===e});var Hdi=Mdi();function nka(e,t,r){if(typeof t=="function"&&(r=t,t=void 0),typeof r=="function"){Hdi(e,t,r);return}return rka(Hdi,e,t)}Ydi.exports=nka});var y0=H(Wk=>{"use strict";var Avr=Symbol.for("yaml.alias"),api=Symbol.for("yaml.document"),z_t=Symbol.for("yaml.map"),cpi=Symbol.for("yaml.pair"),dvr=Symbol.for("yaml.scalar"),q_t=Symbol.for("yaml.seq"),fee=Symbol.for("yaml.node.type"),uka=e=>!!e&&typeof e=="object"&&e[fee]===Avr,gka=e=>!!e&&typeof e=="object"&&e[fee]===api,Aka=e=>!!e&&typeof e=="object"&&e[fee]===z_t,dka=e=>!!e&&typeof e=="object"&&e[fee]===cpi,lpi=e=>!!e&&typeof e=="object"&&e[fee]===dvr,pka=e=>!!e&&typeof e=="object"&&e[fee]===q_t;function upi(e){if(e&&typeof e=="object")switch(e[fee]){case z_t:case q_t:return!0}return!1}function fka(e){if(e&&typeof e=="object")switch(e[fee]){case Avr:case z_t:case dvr:case q_t:return!0}return!1}var Ika=e=>(lpi(e)||upi(e))&&!!e.anchor;Wk.ALIAS=Avr;Wk.DOC=api;Wk.MAP=z_t;Wk.NODE_TYPE=fee;Wk.PAIR=cpi;Wk.SCALAR=dvr;Wk.SEQ=q_t;Wk.hasAnchor=Ika;Wk.isAlias=uka;Wk.isCollection=upi;Wk.isDocument=gka;Wk.isMap=Aka;Wk.isNode=fka;Wk.isPair=dka;Wk.isScalar=lpi;Wk.isSeq=pka});var mXe=H(pvr=>{"use strict";var FR=y0(),pV=Symbol("break visit"),gpi=Symbol("skip children"),o6=Symbol("remove node");function $_t(e,t){let r=Api(t);FR.isDocument(e)?pRe(null,e.contents,r,Object.freeze([e]))===o6&&(e.contents=null):pRe(null,e,r,Object.freeze([]))}$_t.BREAK=pV;$_t.SKIP=gpi;$_t.REMOVE=o6;function pRe(e,t,r,n){let a=dpi(e,t,r,n);if(FR.isNode(a)||FR.isPair(a))return ppi(e,n,a),pRe(e,a,r,n);if(typeof a!="symbol"){if(FR.isCollection(t)){n=Object.freeze(n.concat(t));for(let o=0;o{"use strict";var fpi=y0(),hka=mXe(),mka={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Cka=e=>e.replace(/[!,[\]{}]/g,t=>mka[t]),CXe=class e{constructor(t,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,r)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,r){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let n=t.trim().split(/[ \t]+/),a=n.shift();switch(a){case"%TAG":{if(n.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[o,l]=n;return this.tags[o]=l,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[o]=n;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let l=/^\d+\.\d+$/.test(o);return r(6,`Unsupported YAML version ${o}`,l),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(t,r){if(t==="!")return"!";if(t[0]!=="!")return r(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let l=t.slice(2,-1);return l==="!"||l==="!!"?(r(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&r("Verbatim tags must end with a >"),l)}let[,n,a]=t.match(/^(.*!)([^!]*)$/s);a||r(`The ${t} tag has no suffix`);let o=this.tags[n];if(o)try{return o+decodeURIComponent(a)}catch(l){return r(String(l)),null}return n==="!"?t:(r(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[r,n]of Object.entries(this.tags))if(t.startsWith(n))return r+Cka(t.substring(n.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),a;if(t&&n.length>0&&fpi.isNode(t.contents)){let o={};hka.visit(t.contents,(l,A)=>{fpi.isNode(A)&&A.tag&&(o[A.tag]=!0)}),a=Object.keys(o)}else a=[];for(let[o,l]of n)o==="!!"&&l==="tag:yaml.org,2002:"||(!t||a.some(A=>A.startsWith(l)))&&r.push(`%TAG ${o} ${l}`);return r.join(` -`)}};CXe.defaultYaml={explicit:!1,version:"1.2"};CXe.defaultTags={"!!":"tag:yaml.org,2002:"};Ipi.Directives=CXe});var t0t=H(_Xe=>{"use strict";var hpi=y0(),_ka=mXe();function yka(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(r)}return!0}function mpi(e){let t=new Set;return _ka.visit(e,{Value(r,n){n.anchor&&t.add(n.anchor)}}),t}function Cpi(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function bka(e,t){let r=[],n=new Map,a=null;return{onAnchor:o=>{r.push(o),a||(a=mpi(e));let l=Cpi(t,a);return a.add(l),l},setAnchors:()=>{for(let o of r){let l=n.get(o);if(typeof l=="object"&&l.anchor&&(hpi.isScalar(l.node)||hpi.isCollection(l.node)))l.node.anchor=l.anchor;else{let A=new Error("Failed to resolve repeated object (this should not happen)");throw A.source=o,A}}},sourceObjects:n}}_Xe.anchorIsValid=yka;_Xe.anchorNames=mpi;_Xe.createNodeAnchors=bka;_Xe.findNewAnchor=Cpi});var Ivr=H(_pi=>{"use strict";function yXe(e,t,r,n){if(n&&typeof n=="object")if(Array.isArray(n))for(let a=0,o=n.length;a{"use strict";var Eka=y0();function ypi(e,t,r){if(Array.isArray(e))return e.map((n,a)=>ypi(n,String(a),r));if(e&&typeof e.toJSON=="function"){if(!r||!Eka.hasAnchor(e))return e.toJSON(t,r);let n={aliasCount:0,count:1,res:void 0};r.anchors.set(e,n),r.onCreate=o=>{n.res=o,delete r.onCreate};let a=e.toJSON(t,r);return r.onCreate&&r.onCreate(a),a}return typeof e=="bigint"&&!r?.keep?Number(e):e}bpi.toJS=ypi});var r0t=H(Spi=>{"use strict";var Ska=Ivr(),Epi=y0(),vka=Yae(),hvr=class{constructor(t){Object.defineProperty(this,Epi.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:r,maxAliasCount:n,onAnchor:a,reviver:o}={}){if(!Epi.isDocument(t))throw new TypeError("A document argument is required");let l={anchors:new Map,doc:t,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},A=vka.toJS(this,"",l);if(typeof a=="function")for(let{count:f,res:I}of l.anchors.values())a(I,f);return typeof o=="function"?Ska.applyReviver(o,{"":A},"",A):A}};Spi.NodeBase=hvr});var bXe=H(Bpi=>{"use strict";var Bka=t0t(),vpi=mXe(),n0t=y0(),wka=r0t(),Tka=Yae(),mvr=class extends wka.NodeBase{constructor(t){super(n0t.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let r;return vpi.visit(t,{Node:(n,a)=>{if(a===this)return vpi.visit.BREAK;a.anchor===this.source&&(r=a)}}),r}toJSON(t,r){if(!r)return{source:this.source};let{anchors:n,doc:a,maxAliasCount:o}=r,l=this.resolve(a);if(!l){let f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let A=n.get(l);if(A||(Tka.toJS(l,null,r),A=n.get(l)),!A||A.res===void 0){let f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(A.count+=1,A.aliasCount===0&&(A.aliasCount=i0t(a,l,n)),A.count*A.aliasCount>o)){let f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return A.res}toString(t,r,n){let a=`*${this.source}`;if(t){if(Bka.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}};function i0t(e,t,r){if(n0t.isAlias(t)){let n=t.resolve(e),a=r&&n&&r.get(n);return a?a.count*a.aliasCount:0}else if(n0t.isCollection(t)){let n=0;for(let a of t.items){let o=i0t(e,a,r);o>n&&(n=o)}return n}else if(n0t.isPair(t)){let n=i0t(e,t.key,r),a=i0t(e,t.value,r);return Math.max(n,a)}return 1}Bpi.Alias=mvr});var IT=H(Cvr=>{"use strict";var Rka=y0(),Nka=r0t(),Dka=Yae(),kka=e=>!e||typeof e!="function"&&typeof e!="object",Qae=class extends Nka.NodeBase{constructor(t){super(Rka.SCALAR),this.value=t}toJSON(t,r){return r?.keep?this.value:Dka.toJS(this.value,t,r)}toString(){return String(this.value)}};Qae.BLOCK_FOLDED="BLOCK_FOLDED";Qae.BLOCK_LITERAL="BLOCK_LITERAL";Qae.PLAIN="PLAIN";Qae.QUOTE_DOUBLE="QUOTE_DOUBLE";Qae.QUOTE_SINGLE="QUOTE_SINGLE";Cvr.Scalar=Qae;Cvr.isScalarValue=kka});var EXe=H(Tpi=>{"use strict";var xka=bXe(),nme=y0(),wpi=IT(),Gka="tag:yaml.org,2002:";function Fka(e,t,r){if(t){let n=r.filter(o=>o.tag===t),a=n.find(o=>!o.format)??n[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return r.find(n=>n.identify?.(e)&&!n.format)}function Zka(e,t,r){if(nme.isDocument(e)&&(e=e.contents),nme.isNode(e))return e;if(nme.isPair(e)){let b=r.schema[nme.MAP].createNode?.(r.schema,null,r);return b.items.push(e),b}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:n,onAnchor:a,onTagObj:o,schema:l,sourceObjects:A}=r,f;if(n&&e&&typeof e=="object"){if(f=A.get(e),f)return f.anchor||(f.anchor=a(e)),new xka.Alias(f.anchor);f={anchor:null,node:null},A.set(e,f)}t?.startsWith("!!")&&(t=Gka+t.slice(2));let I=Fka(e,t,l.tags);if(!I){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let b=new wpi.Scalar(e);return f&&(f.node=b),b}I=e instanceof Map?l[nme.MAP]:Symbol.iterator in Object(e)?l[nme.SEQ]:l[nme.MAP]}o&&(o(I),delete r.onTagObj);let C=I?.createNode?I.createNode(r.schema,e,r):typeof I?.nodeClass?.from=="function"?I.nodeClass.from(r.schema,e,r):new wpi.Scalar(e);return t?C.tag=t:I.default||(C.tag=I.tag),f&&(f.node=C),C}Tpi.createNode=Zka});var o0t=H(s0t=>{"use strict";var Lka=EXe(),a6=y0(),Vka=r0t();function _vr(e,t,r){let n=r;for(let a=t.length-1;a>=0;--a){let o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let l=[];l[o]=n,n=l}else n=new Map([[o,n]])}return Lka.createNode(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var Rpi=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,yvr=class extends Vka.NodeBase{constructor(t,r){super(t),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(t){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(r.schema=t),r.items=r.items.map(n=>a6.isNode(n)||a6.isPair(n)?n.clone(t):n),this.range&&(r.range=this.range.slice()),r}addIn(t,r){if(Rpi(t))this.add(r);else{let[n,...a]=t,o=this.get(n,!0);if(a6.isCollection(o))o.addIn(a,r);else if(o===void 0&&this.schema)this.set(n,_vr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}deleteIn(t){let[r,...n]=t;if(n.length===0)return this.delete(r);let a=this.get(r,!0);if(a6.isCollection(a))return a.deleteIn(n);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}getIn(t,r){let[n,...a]=t,o=this.get(n,!0);return a.length===0?!r&&a6.isScalar(o)?o.value:o:a6.isCollection(o)?o.getIn(a,r):void 0}hasAllNullValues(t){return this.items.every(r=>{if(!a6.isPair(r))return!1;let n=r.value;return n==null||t&&a6.isScalar(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(t){let[r,...n]=t;if(n.length===0)return this.has(r);let a=this.get(r,!0);return a6.isCollection(a)?a.hasIn(n):!1}setIn(t,r){let[n,...a]=t;if(a.length===0)this.set(n,r);else{let o=this.get(n,!0);if(a6.isCollection(o))o.setIn(a,r);else if(o===void 0&&this.schema)this.set(n,_vr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}};s0t.Collection=yvr;s0t.collectionFromPath=_vr;s0t.isEmptyPath=Rpi});var SXe=H(a0t=>{"use strict";var Wka=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function bvr(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var Oka=(e,t,r)=>e.endsWith(` -`)?bvr(r,t):r.includes(` +`).map(n=>JNa(n,t,r)).join(` +`)}var x_t,HNa,DSr,BAi,YNa,wAi,k_t,SAi,vAi,QNa,NSr,XNa,JNa,kSr=bc(()=>{RSr();kQe();D_t();x_t=new Set(["\x1B","\x9B"]),HNa=39,DSr="\x07",BAi="[",YNa="]",wAi="m",k_t=`${YNa}8;;`,SAi=e=>`${x_t.values().next().value}${BAi}${e}${wAi}`,vAi=e=>`${x_t.values().next().value}${k_t}${e}${DSr}`,QNa=e=>e.split(" ").map(t=>zM(t)),NSr=(e,t,r)=>{let n=[...t],a=!1,o=!1,l=zM(uee(e.at(-1)));for(let[A,f]of n.entries()){let I=zM(f);if(l+I<=r?e[e.length-1]+=f:(e.push(f),l=0),x_t.has(f)&&(a=!0,o=n.slice(A+1,A+1+k_t.length).join("")===k_t),a){o?f===DSr&&(a=!1,o=!1):f===wAi&&(a=!1);continue}l+=I,l===r&&A0&&e.length>1&&(e[e.length-2]+=e.pop())},XNa=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(zM(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},JNa=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a,o,l=QNa(e),A=[""];for(let[b,E]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A.at(-1).trimStart());let N=zM(A.at(-1));if(b!==0&&(N>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),N=0),(N>0||r.trim===!1)&&(A[A.length-1]+=" ",N++)),r.hard&&l[b]>t){let B=t-N,F=1+Math.floor((l[b]-B-1)/t);Math.floor((l[b]-1)/t)t&&N>0&&l[b]>0){if(r.wordWrap===!1&&Nt&&r.wordWrap===!1){NSr(A,E,t);continue}A[A.length-1]+=E}r.trim!==!1&&(A=A.map(b=>XNa(b)));let f=A.join(` +`),I=[...f],C=0;for(let[b,E]of I.entries()){if(n+=E,x_t.has(E)){let{groups:B}=new RegExp(`(?:\\${BAi}(?\\d+)m|\\${k_t}(?.*)${DSr})`).exec(f.slice(C))||{groups:{}};if(B.code!==void 0){let F=Number.parseFloat(B.code);a=F===HNa?void 0:F}else B.uri!==void 0&&(o=B.uri.length===0?void 0:B.uri)}let N=pV.codes.get(Number(a));I[b+1]===` +`?(o&&(n+=vAi("")),a&&N&&(n+=SAi(N))):E===` +`&&(a&&N&&(n+=SAi(a)),o&&(n+=vAi(o))),C+=E.length}return n}});function xSr(e){return Number.isInteger(e)?N_t(e)===2:!1}var RAi=bc(()=>{TSr()});function zNa(e){if(FSr.has(e))return e;if(GSr.has(e))return GSr.get(e);e=e.slice(2),e.includes(";")&&(e=e[0]+"0");let t=pV.codes.get(Number.parseInt(e,10));return t?pV.color.ansi(t):pV.reset.open}function qNa(e){for(let t=0;t=KNa&&r<=jNa)return t}return-1}function $Na(e,t){e=e.slice(t,t+19);let r=qNa(e);if(r!==-1){let n=e.indexOf("m",r);return n===-1&&(n=e.length),e.slice(0,n+1)}}function eDa(e,t=Number.POSITIVE_INFINITY){let r=[],n=0,a=0;for(;n=t)break}return r}function NAi(e){let t=[];for(let r of e)r.code===pV.reset.open?t=[]:FSr.has(r.code)?t=t.filter(n=>n.endCode!==r.code):(t=t.filter(n=>n.endCode!==r.endCode),t.push(r));return t}function tDa(e){return NAi(e).map(({endCode:n})=>n).reverse().join("")}function ZSr(e,t,r){let n=eDa(e,r),a=[],o=0,l="",A=!1;for(let f of n){if(r!==void 0&&o>=r)break;f.type==="ansi"?(a.push(f),A&&(l+=f.code)):(!A&&o>=t&&(A=!0,a=NAi(a),l=a.map(({code:I})=>I).join("")),A&&(l+=f.value),o+=f.isFullWidth?2:f.value.length)}return l+=tDa(a),l}var UNa,KNa,jNa,FSr,GSr,DAi=bc(()=>{D_t();RAi();UNa=new Set([27,155]),KNa="0".codePointAt(0),jNa="9".codePointAt(0),FSr=new Set,GSr=new Map;for(let[e,t]of pV.codes)FSr.add(pV.color.ansi(t)),GSr.set(pV.color.ansi(e),pV.color.ansi(t))});var xAi={};Uf(xAi,{createLogUpdate:()=>VSr,default:()=>sDa,logUpdateStderr:()=>oDa});import kAi from"node:process";function VSr(e,{showCursor:t=!1}={}){let r=0,n=LSr(e),a="",o=()=>{a="",n=LSr(e),r=0},l=(...A)=>{t||wSr.hide();let f=nDa(e,A.join(" ")+` +`),I=LSr(e);f===a&&n===I||(a=f,n=I,f=G_t(f,I,{trim:!1,hard:!0,wordWrap:!1}),e.write(uXe.eraseLines(r)+f),r=f.split(` +`).length)};return l.clear=()=>{e.write(uXe.eraseLines(r)),o()},l.done=()=>{o(),t||wSr.show()},l}var rDa,LSr,nDa,iDa,sDa,oDa,GAi=bc(()=>{iAi();dAi();kSr();DAi();kQe();rDa=24,LSr=({columns:e=80})=>e,nDa=(e,t)=>{let r=e.rows??rDa,n=t.split(` +`),a=Math.max(0,n.length-r);return a?ZSr(t,uee(n.slice(0,a).join(` +`)).length+1):t};iDa=VSr(kAi.stdout),sDa=iDa,oDa=VSr(kAi.stderr)});function WSr(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 FAi=bc(()=>{});function o6(e,t,r){let n=[...e],a=[],o=typeof r=="number"?r:n.length,l=!1,A,f=0,I="";for(let[C,b]of n.entries()){let E=!1;if(LAi.includes(b)){let N=/\d[^m]*/.exec(e.slice(C,C+18));A=N&&N.length>0?N[0]:void 0,ft&&f<=o)I+=b;else if(f===t&&!l&&A!==void 0)I=ZAi(a);else if(f>=o){I+=ZAi(a,!0,A);break}}return I}var aDa,LAi,F_t,ZAi,VAi=bc(()=>{FAi();D_t();aDa=/^[\uD800-\uDBFF][\uDC00-\uDFFF]$/,LAi=["\x1B","\x9B"],F_t=e=>`${LAi[0]}[${e}m`,ZAi=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.includes(";")&&(a=a.split(";")[0][0]+"0");let l=pV.codes.get(Number.parseInt(a,10));if(l){let A=e.indexOf(l.toString());A===-1?n.push(F_t(t?l:o)):e.splice(A,1)}else if(t){n.push(F_t(0));break}else n.push(F_t(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=F_t(pV.codes.get(Number.parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")}});var OAi={};Uf(OAi,{default:()=>WAi});function Z_t(e,t,r){if(e.charAt(t)===" ")return t;let n=r?1:-1;for(let a=0;a<=3;a++){let o=t+a*n;if(e.charAt(o)===" ")return o}return t}function WAi(e,t,r={}){let{position:n="end",space:a=!1,preferTruncationOnSpace:o=!1}=r,{truncationCharacter:l="\u2026"}=r;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let A=zM(e);if(A<=t)return e;if(n==="start"){if(o){let f=Z_t(e,A-t+1,!0);return l+o6(e,f,A).trim()}return a===!0&&(l+=" "),l+o6(e,A-t+zM(l),A)}if(n==="middle"){a===!0&&(l=` ${l} `);let f=Math.floor(t/2);if(o){let I=Z_t(e,f),C=Z_t(e,A-(t-f)+1,!0);return o6(e,0,I)+l+o6(e,C,A).trim()}return o6(e,0,f)+l+o6(e,A-(t-f)+zM(l),A)}if(n==="end"){if(o){let f=Z_t(e,t-1);return o6(e,0,f)+l}return a===!0&&(l=` ${l}`),o6(e,0,t-zM(l))+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}var PAi=bc(()=>{VAi();RSr()});var lvr=H((j_u,Hdi)=>{"use strict";var JDa=Et("child_process").spawn;function UDa(e){if(e){e=e.trim();var t=/your \d+x\d+ screen size is bogus\. expect trouble/gi;return e=e.replace(t,""),e.trim()}}function KDa(e,t,r,n){typeof r=="function"&&(n=r,r=void 0);var a=!1,o=JDa(e,t,r),l="",A="";o.stdout.on("data",function(f){l+=f.toString()}),o.stderr.on("data",function(f){A+=f.toString()}),o.on("error",function(f){a||(a=!0,n(new Error(f)))}),o.on("close",function(f){if(!a){if(a=!0,A=UDa(A),A)return n(new Error(A));n(null,l,f)}})}Hdi.exports=KDa});var Qdi=H((z_u,Ydi)=>{"use strict";var jDa=Et("os"),zDa=lvr();function qDa(e){var t=["-A","-o","ppid,pid"];zDa("ps",t,function(r,n,a){if(r)return e(r);if(a!==0)return e(new Error("pidtree ps command exited with code "+a));try{n=n.split(jDa.EOL);for(var o=[],l=1;l{"use strict";var $Da=Et("os"),eka=lvr();function tka(e){var t=["PROCESS","get","ParentProcessId,ProcessId"],r={windowsHide:!0,windowsVerbatimArguments:!0};eka("wmic",t,r,function(n,a,o){if(n){e(n);return}if(o!==0){e(new Error("pidtree wmic command exited with code "+o));return}try{a=a.split($Da.EOL);for(var l=[],A=1;A{"use strict";var Kdi=Et("os"),rka={darwin:"ps",sunos:"ps",freebsd:"ps",netbsd:"ps",win:"wmic",linux:"ps",aix:"ps"},nka={ps:()=>Qdi(),wmic:()=>Jdi()},uvr=Kdi.platform();uvr.startsWith("win")&&(uvr="win");var Udi=rka[uvr];function ika(e){Udi===void 0&&e(new Error(Kdi.platform()+" is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"));var t=nka[Udi]();t(e)}jdi.exports=ika});var $di=H((e0u,qdi)=>{"use strict";var ska=zdi();function oka(e,t,r){if(typeof t=="function"&&(r=t,t={}),typeof t!="object"&&(t={}),e=parseInt(e,10),isNaN(e)||e<-1){r(new TypeError("The pid provided is invalid"));return}ska(function(n,a){if(n){r(n);return}if(e===-1){for(var o=0;o0;){var I=a.pop();f[I[0]]?f[I[0]].push(I[1]):f[I[0]]=[I[1]]}for(var C=0,b=[l];C{"use strict";function aka(e,t,r){return new Promise(function(n,a){e(t,r,function(o,l){if(o)return a(o);n(l)})})}String.prototype.startsWith||(String.prototype.startsWith=function(e){return this.substring(0,e.length)===e});var epi=$di();function cka(e,t,r){if(typeof t=="function"&&(r=t,t=void 0),typeof r=="function"){epi(e,t,r);return}return aka(epi,e,t)}tpi.exports=cka});var b0=H(Ok=>{"use strict";var pvr=Symbol.for("yaml.alias"),mpi=Symbol.for("yaml.document"),K_t=Symbol.for("yaml.map"),Cpi=Symbol.for("yaml.pair"),fvr=Symbol.for("yaml.scalar"),j_t=Symbol.for("yaml.seq"),Iee=Symbol.for("yaml.node.type"),fka=e=>!!e&&typeof e=="object"&&e[Iee]===pvr,Ika=e=>!!e&&typeof e=="object"&&e[Iee]===mpi,hka=e=>!!e&&typeof e=="object"&&e[Iee]===K_t,mka=e=>!!e&&typeof e=="object"&&e[Iee]===Cpi,_pi=e=>!!e&&typeof e=="object"&&e[Iee]===fvr,Cka=e=>!!e&&typeof e=="object"&&e[Iee]===j_t;function ypi(e){if(e&&typeof e=="object")switch(e[Iee]){case K_t:case j_t:return!0}return!1}function _ka(e){if(e&&typeof e=="object")switch(e[Iee]){case pvr:case K_t:case fvr:case j_t:return!0}return!1}var yka=e=>(_pi(e)||ypi(e))&&!!e.anchor;Ok.ALIAS=pvr;Ok.DOC=mpi;Ok.MAP=K_t;Ok.NODE_TYPE=Iee;Ok.PAIR=Cpi;Ok.SCALAR=fvr;Ok.SEQ=j_t;Ok.hasAnchor=yka;Ok.isAlias=fka;Ok.isCollection=ypi;Ok.isDocument=Ika;Ok.isMap=hka;Ok.isNode=_ka;Ok.isPair=mka;Ok.isScalar=_pi;Ok.isSeq=Cka});var _Xe=H(Ivr=>{"use strict";var ZR=b0(),fV=Symbol("break visit"),bpi=Symbol("skip children"),a6=Symbol("remove node");function z_t(e,t){let r=Epi(t);ZR.isDocument(e)?ARe(null,e.contents,r,Object.freeze([e]))===a6&&(e.contents=null):ARe(null,e,r,Object.freeze([]))}z_t.BREAK=fV;z_t.SKIP=bpi;z_t.REMOVE=a6;function ARe(e,t,r,n){let a=Spi(e,t,r,n);if(ZR.isNode(a)||ZR.isPair(a))return vpi(e,n,a),ARe(e,a,r,n);if(typeof a!="symbol"){if(ZR.isCollection(t)){n=Object.freeze(n.concat(t));for(let o=0;o{"use strict";var Bpi=b0(),bka=_Xe(),Eka={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Ska=e=>e.replace(/[!,[\]{}]/g,t=>Eka[t]),yXe=class e{constructor(t,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,r)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,r){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let n=t.trim().split(/[ \t]+/),a=n.shift();switch(a){case"%TAG":{if(n.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[o,l]=n;return this.tags[o]=l,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[o]=n;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let l=/^\d+\.\d+$/.test(o);return r(6,`Unsupported YAML version ${o}`,l),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(t,r){if(t==="!")return"!";if(t[0]!=="!")return r(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let l=t.slice(2,-1);return l==="!"||l==="!!"?(r(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&r("Verbatim tags must end with a >"),l)}let[,n,a]=t.match(/^(.*!)([^!]*)$/s);a||r(`The ${t} tag has no suffix`);let o=this.tags[n];if(o)try{return o+decodeURIComponent(a)}catch(l){return r(String(l)),null}return n==="!"?t:(r(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[r,n]of Object.entries(this.tags))if(t.startsWith(n))return r+Ska(t.substring(n.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),a;if(t&&n.length>0&&Bpi.isNode(t.contents)){let o={};bka.visit(t.contents,(l,A)=>{Bpi.isNode(A)&&A.tag&&(o[A.tag]=!0)}),a=Object.keys(o)}else a=[];for(let[o,l]of n)o==="!!"&&l==="tag:yaml.org,2002:"||(!t||a.some(A=>A.startsWith(l)))&&r.push(`%TAG ${o} ${l}`);return r.join(` +`)}};yXe.defaultYaml={explicit:!1,version:"1.2"};yXe.defaultTags={"!!":"tag:yaml.org,2002:"};wpi.Directives=yXe});var $_t=H(bXe=>{"use strict";var Tpi=b0(),vka=_Xe();function Bka(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(r)}return!0}function Rpi(e){let t=new Set;return vka.visit(e,{Value(r,n){n.anchor&&t.add(n.anchor)}}),t}function Npi(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function wka(e,t){let r=[],n=new Map,a=null;return{onAnchor:o=>{r.push(o),a||(a=Rpi(e));let l=Npi(t,a);return a.add(l),l},setAnchors:()=>{for(let o of r){let l=n.get(o);if(typeof l=="object"&&l.anchor&&(Tpi.isScalar(l.node)||Tpi.isCollection(l.node)))l.node.anchor=l.anchor;else{let A=new Error("Failed to resolve repeated object (this should not happen)");throw A.source=o,A}}},sourceObjects:n}}bXe.anchorIsValid=Bka;bXe.anchorNames=Rpi;bXe.createNodeAnchors=wka;bXe.findNewAnchor=Npi});var mvr=H(Dpi=>{"use strict";function EXe(e,t,r,n){if(n&&typeof n=="object")if(Array.isArray(n))for(let a=0,o=n.length;a{"use strict";var Tka=b0();function kpi(e,t,r){if(Array.isArray(e))return e.map((n,a)=>kpi(n,String(a),r));if(e&&typeof e.toJSON=="function"){if(!r||!Tka.hasAnchor(e))return e.toJSON(t,r);let n={aliasCount:0,count:1,res:void 0};r.anchors.set(e,n),r.onCreate=o=>{n.res=o,delete r.onCreate};let a=e.toJSON(t,r);return r.onCreate&&r.onCreate(a),a}return typeof e=="bigint"&&!r?.keep?Number(e):e}xpi.toJS=kpi});var e0t=H(Fpi=>{"use strict";var Rka=mvr(),Gpi=b0(),Nka=Qae(),Cvr=class{constructor(t){Object.defineProperty(this,Gpi.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:r,maxAliasCount:n,onAnchor:a,reviver:o}={}){if(!Gpi.isDocument(t))throw new TypeError("A document argument is required");let l={anchors:new Map,doc:t,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},A=Nka.toJS(this,"",l);if(typeof a=="function")for(let{count:f,res:I}of l.anchors.values())a(I,f);return typeof o=="function"?Rka.applyReviver(o,{"":A},"",A):A}};Fpi.NodeBase=Cvr});var SXe=H(Lpi=>{"use strict";var Dka=$_t(),Zpi=_Xe(),t0t=b0(),kka=e0t(),xka=Qae(),_vr=class extends kka.NodeBase{constructor(t){super(t0t.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let r;return Zpi.visit(t,{Node:(n,a)=>{if(a===this)return Zpi.visit.BREAK;a.anchor===this.source&&(r=a)}}),r}toJSON(t,r){if(!r)return{source:this.source};let{anchors:n,doc:a,maxAliasCount:o}=r,l=this.resolve(a);if(!l){let f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let A=n.get(l);if(A||(xka.toJS(l,null,r),A=n.get(l)),!A||A.res===void 0){let f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(A.count+=1,A.aliasCount===0&&(A.aliasCount=r0t(a,l,n)),A.count*A.aliasCount>o)){let f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return A.res}toString(t,r,n){let a=`*${this.source}`;if(t){if(Dka.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}};function r0t(e,t,r){if(t0t.isAlias(t)){let n=t.resolve(e),a=r&&n&&r.get(n);return a?a.count*a.aliasCount:0}else if(t0t.isCollection(t)){let n=0;for(let a of t.items){let o=r0t(e,a,r);o>n&&(n=o)}return n}else if(t0t.isPair(t)){let n=r0t(e,t.key,r),a=r0t(e,t.value,r);return Math.max(n,a)}return 1}Lpi.Alias=_vr});var hT=H(yvr=>{"use strict";var Gka=b0(),Fka=e0t(),Zka=Qae(),Lka=e=>!e||typeof e!="function"&&typeof e!="object",Xae=class extends Fka.NodeBase{constructor(t){super(Gka.SCALAR),this.value=t}toJSON(t,r){return r?.keep?this.value:Zka.toJS(this.value,t,r)}toString(){return String(this.value)}};Xae.BLOCK_FOLDED="BLOCK_FOLDED";Xae.BLOCK_LITERAL="BLOCK_LITERAL";Xae.PLAIN="PLAIN";Xae.QUOTE_DOUBLE="QUOTE_DOUBLE";Xae.QUOTE_SINGLE="QUOTE_SINGLE";yvr.Scalar=Xae;yvr.isScalarValue=Lka});var vXe=H(Wpi=>{"use strict";var Vka=SXe(),ime=b0(),Vpi=hT(),Wka="tag:yaml.org,2002:";function Oka(e,t,r){if(t){let n=r.filter(o=>o.tag===t),a=n.find(o=>!o.format)??n[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return r.find(n=>n.identify?.(e)&&!n.format)}function Pka(e,t,r){if(ime.isDocument(e)&&(e=e.contents),ime.isNode(e))return e;if(ime.isPair(e)){let b=r.schema[ime.MAP].createNode?.(r.schema,null,r);return b.items.push(e),b}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:n,onAnchor:a,onTagObj:o,schema:l,sourceObjects:A}=r,f;if(n&&e&&typeof e=="object"){if(f=A.get(e),f)return f.anchor||(f.anchor=a(e)),new Vka.Alias(f.anchor);f={anchor:null,node:null},A.set(e,f)}t?.startsWith("!!")&&(t=Wka+t.slice(2));let I=Oka(e,t,l.tags);if(!I){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let b=new Vpi.Scalar(e);return f&&(f.node=b),b}I=e instanceof Map?l[ime.MAP]:Symbol.iterator in Object(e)?l[ime.SEQ]:l[ime.MAP]}o&&(o(I),delete r.onTagObj);let C=I?.createNode?I.createNode(r.schema,e,r):typeof I?.nodeClass?.from=="function"?I.nodeClass.from(r.schema,e,r):new Vpi.Scalar(e);return t?C.tag=t:I.default||(C.tag=I.tag),f&&(f.node=C),C}Wpi.createNode=Pka});var i0t=H(n0t=>{"use strict";var Mka=vXe(),c6=b0(),Hka=e0t();function bvr(e,t,r){let n=r;for(let a=t.length-1;a>=0;--a){let o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let l=[];l[o]=n,n=l}else n=new Map([[o,n]])}return Mka.createNode(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var Opi=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,Evr=class extends Hka.NodeBase{constructor(t,r){super(t),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(t){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(r.schema=t),r.items=r.items.map(n=>c6.isNode(n)||c6.isPair(n)?n.clone(t):n),this.range&&(r.range=this.range.slice()),r}addIn(t,r){if(Opi(t))this.add(r);else{let[n,...a]=t,o=this.get(n,!0);if(c6.isCollection(o))o.addIn(a,r);else if(o===void 0&&this.schema)this.set(n,bvr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}deleteIn(t){let[r,...n]=t;if(n.length===0)return this.delete(r);let a=this.get(r,!0);if(c6.isCollection(a))return a.deleteIn(n);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}getIn(t,r){let[n,...a]=t,o=this.get(n,!0);return a.length===0?!r&&c6.isScalar(o)?o.value:o:c6.isCollection(o)?o.getIn(a,r):void 0}hasAllNullValues(t){return this.items.every(r=>{if(!c6.isPair(r))return!1;let n=r.value;return n==null||t&&c6.isScalar(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(t){let[r,...n]=t;if(n.length===0)return this.has(r);let a=this.get(r,!0);return c6.isCollection(a)?a.hasIn(n):!1}setIn(t,r){let[n,...a]=t;if(a.length===0)this.set(n,r);else{let o=this.get(n,!0);if(c6.isCollection(o))o.setIn(a,r);else if(o===void 0&&this.schema)this.set(n,bvr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}};n0t.Collection=Evr;n0t.collectionFromPath=bvr;n0t.isEmptyPath=Opi});var BXe=H(s0t=>{"use strict";var Yka=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function Svr(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var Qka=(e,t,r)=>e.endsWith(` +`)?Svr(r,t):r.includes(` `)?` -`+bvr(r,t):(e.endsWith(" ")?"":" ")+r;a0t.indentComment=bvr;a0t.lineComment=Oka;a0t.stringifyComment=Wka});var Dpi=H(vXe=>{"use strict";var Pka="flow",Evr="block",c0t="quoted";function Mka(e,t,r="flow",{indentAtStart:n,lineWidth:a=80,minContentWidth:o=20,onFold:l,onOverflow:A}={}){if(!a||a<0)return e;aa-Math.max(2,o)?I.push(0):b=a-n);let E,N,B=!1,F=-1,Q=-1,J=-1;r===Evr&&(F=Npi(e,F,t.length),F!==-1&&(b=F+f));for(let ne;ne=e[F+=1];){if(r===c0t&&ne==="\\"){switch(Q=F,e[F+1]){case"x":F+=3;break;case"u":F+=5;break;case"U":F+=9;break;default:F+=1}J=F}if(ne===` -`)r===Evr&&(F=Npi(e,F,t.length)),b=F+t.length+f,E=void 0;else{if(ne===" "&&N&&N!==" "&&N!==` +`+Svr(r,t):(e.endsWith(" ")?"":" ")+r;s0t.indentComment=Svr;s0t.lineComment=Qka;s0t.stringifyComment=Yka});var Mpi=H(wXe=>{"use strict";var Xka="flow",vvr="block",o0t="quoted";function Jka(e,t,r="flow",{indentAtStart:n,lineWidth:a=80,minContentWidth:o=20,onFold:l,onOverflow:A}={}){if(!a||a<0)return e;aa-Math.max(2,o)?I.push(0):b=a-n);let E,N,B=!1,F=-1,Q=-1,J=-1;r===vvr&&(F=Ppi(e,F,t.length),F!==-1&&(b=F+f));for(let ne;ne=e[F+=1];){if(r===o0t&&ne==="\\"){switch(Q=F,e[F+1]){case"x":F+=3;break;case"u":F+=5;break;case"U":F+=9;break;default:F+=1}J=F}if(ne===` +`)r===vvr&&(F=Ppi(e,F,t.length)),b=F+t.length+f,E=void 0;else{if(ne===" "&&N&&N!==" "&&N!==` `&&N!==" "){let ce=e[F+1];ce&&ce!==" "&&ce!==` -`&&ce!==" "&&(E=F)}if(F>=b)if(E)I.push(E),b=E+f,E=void 0;else if(r===c0t){for(;N===" "||N===" ";)N=ne,ne=e[F+=1],B=!0;let ce=F>J+1?F-2:Q-1;if(C[ce])return e;I.push(ce),C[ce]=!0,b=ce+f,E=void 0}else B=!0}N=ne}if(B&&A&&A(),I.length===0)return e;l&&l();let ae=e.slice(0,I[0]);for(let ne=0;ne{"use strict";var c6=IT(),Xae=Dpi(),u0t=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),g0t=e=>/^(%|---|\.\.\.)/m.test(e);function Hka(e,t,r){if(!t||t<0)return!1;let n=t-r,a=e.length;if(a<=n)return!1;for(let o=0,l=0;on)return!0;if(l=o+1,a-l<=n)return!1}return!0}function BXe(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:n}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(g0t(e)?" ":""),l="",A=0;for(let f=0,I=r[f];I;I=r[++f])if(I===" "&&r[f+1]==="\\"&&r[f+2]==="n"&&(l+=r.slice(A,f)+"\\ ",f+=1,A=f,I="\\"),I==="\\")switch(r[f+1]){case"u":{l+=r.slice(A,f);let C=r.substr(f+2,4);switch(C){case"0000":l+="\\0";break;case"0007":l+="\\a";break;case"000b":l+="\\v";break;case"001b":l+="\\e";break;case"0085":l+="\\N";break;case"00a0":l+="\\_";break;case"2028":l+="\\L";break;case"2029":l+="\\P";break;default:C.substr(0,2)==="00"?l+="\\x"+C.substr(2):l+=r.substr(f,6)}f+=5,A=f+1}break;case"n":if(n||r[f+2]==='"'||r.length=b)if(E)I.push(E),b=E+f,E=void 0;else if(r===o0t){for(;N===" "||N===" ";)N=ne,ne=e[F+=1],B=!0;let ce=F>J+1?F-2:Q-1;if(C[ce])return e;I.push(ce),C[ce]=!0,b=ce+f,E=void 0}else B=!0}N=ne}if(B&&A&&A(),I.length===0)return e;l&&l();let ae=e.slice(0,I[0]);for(let ne=0;ne{"use strict";var l6=hT(),Jae=Mpi(),c0t=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),l0t=e=>/^(%|---|\.\.\.)/m.test(e);function Uka(e,t,r){if(!t||t<0)return!1;let n=t-r,a=e.length;if(a<=n)return!1;for(let o=0,l=0;on)return!0;if(l=o+1,a-l<=n)return!1}return!0}function TXe(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:n}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(l0t(e)?" ":""),l="",A=0;for(let f=0,I=r[f];I;I=r[++f])if(I===" "&&r[f+1]==="\\"&&r[f+2]==="n"&&(l+=r.slice(A,f)+"\\ ",f+=1,A=f,I="\\"),I==="\\")switch(r[f+1]){case"u":{l+=r.slice(A,f);let C=r.substr(f+2,4);switch(C){case"0000":l+="\\0";break;case"0007":l+="\\a";break;case"000b":l+="\\v";break;case"001b":l+="\\e";break;case"0085":l+="\\N";break;case"00a0":l+="\\_";break;case"2028":l+="\\L";break;case"2029":l+="\\P";break;default:C.substr(0,2)==="00"?l+="\\x"+C.substr(2):l+=r.substr(f,6)}f+=5,A=f+1}break;case"n":if(n||r[f+2]==='"'||r.length `;let b,E;for(E=r.length;E>0;--E){let ue=r[E-1];if(ue!==` `&&ue!==" "&&ue!==" ")break}let N=r.substring(E),B=N.indexOf(` `);B===-1?b="-":r===N||B!==N.length-1?(b="+",o&&o()):b="",N&&(r=r.slice(0,-N.length),N[N.length-1]===` -`&&(N=N.slice(0,-1)),N=N.replace(vvr,`$&${I}`));let F=!1,Q,J=-1;for(Q=0;Q")+(F?I?"2":"1":"")+b;if(e&&(ce+=" "+A(e.replace(/ ?[\r\n]+/g," ")),a&&a()),C)return r=r.replace(/\n+/g,`$&${I}`),`${ce} ${I}${ae}${r}${N}`;r=r.replace(/\n+/g,` -$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${I}`);let fe=Xae.foldFlowLines(`${ae}${r}${N}`,I,Xae.FOLD_BLOCK,u0t(n,!0));return`${ce} -${I}${fe}`}function Yka(e,t,r,n){let{type:a,value:o}=e,{actualString:l,implicitKey:A,indent:f,indentStep:I,inFlow:C}=t;if(A&&o.includes(` -`)||C&&/[[\]{},]/.test(o))return IRe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return A||C||!o.includes(` -`)?IRe(o,t):l0t(e,t,r,n);if(!A&&!C&&a!==c6.Scalar.PLAIN&&o.includes(` -`))return l0t(e,t,r,n);if(g0t(o)){if(f==="")return t.forceBlockIndent=!0,l0t(e,t,r,n);if(A&&f===I)return IRe(o,t)}let b=o.replace(/\n+/g,`$& -${f}`);if(l){let E=F=>F.default&&F.tag!=="tag:yaml.org,2002:str"&&F.test?.test(b),{compat:N,tags:B}=t.doc.schema;if(B.some(E)||N?.some(E))return IRe(o,t)}return A?b:Xae.foldFlowLines(b,f,Xae.FOLD_FLOW,u0t(t,!1))}function Qka(e,t,r,n){let{implicitKey:a,inFlow:o}=t,l=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)}),{type:A}=e;A!==c6.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(l.value)&&(A=c6.Scalar.QUOTE_DOUBLE);let f=C=>{switch(C){case c6.Scalar.BLOCK_FOLDED:case c6.Scalar.BLOCK_LITERAL:return a||o?IRe(l.value,t):l0t(l,t,r,n);case c6.Scalar.QUOTE_DOUBLE:return BXe(l.value,t);case c6.Scalar.QUOTE_SINGLE:return Svr(l.value,t);case c6.Scalar.PLAIN:return Yka(l,t,r,n);default:return null}},I=f(A);if(I===null){let{defaultKeyType:C,defaultStringType:b}=t.options,E=a&&C||b;if(I=f(E),I===null)throw new Error(`Unsupported default string type ${E}`)}return I}kpi.stringifyString=Qka});var TXe=H(Bvr=>{"use strict";var Xka=t0t(),Jae=y0(),Jka=SXe(),Uka=wXe();function Kka(e,t){let r=Object.assign({blockQuote:!0,commentString:Jka.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),n;switch(r.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:n,options:r}}function jka(e,t){if(t.tag){let a=e.filter(o=>o.tag===t.tag);if(a.length>0)return a.find(o=>o.format===t.format)??a[0]}let r,n;if(Jae.isScalar(t)){n=t.value;let a=e.filter(o=>o.identify?.(n));r=a.find(o=>o.format===t.format)??a.find(o=>!o.format)}else n=t,r=e.find(a=>a.nodeClass&&n instanceof a.nodeClass);if(!r){let a=n?.constructor?.name??typeof n;throw new Error(`Tag not resolved for ${a} value`)}return r}function zka(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let a=[],o=(Jae.isScalar(e)||Jae.isCollection(e))&&e.anchor;o&&Xka.anchorIsValid(o)&&(r.add(o),a.push(`&${o}`));let l=e.tag?e.tag:t.default?null:t.tag;return l&&a.push(n.directives.tagString(l)),a.join(" ")}function qka(e,t,r,n){if(Jae.isPair(e))return e.toString(t,r,n);if(Jae.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a,o=Jae.isNode(e)?e:t.doc.createNode(e,{onTagObj:f=>a=f});a||(a=jka(t.doc.schema.tags,o));let l=zka(o,a,t);l.length>0&&(t.indentAtStart=(t.indentAtStart??0)+l.length+1);let A=typeof a.stringify=="function"?a.stringify(o,t,r,n):Jae.isScalar(o)?Uka.stringifyString(o,t,r,n):o.toString(t,r,n);return l?Jae.isScalar(o)||A[0]==="{"||A[0]==="["?`${l} ${A}`:`${l} -${t.indent}${A}`:A}Bvr.createStringifyContext=Kka;Bvr.stringify=qka});var Zpi=H(Fpi=>{"use strict";var Iee=y0(),xpi=IT(),Gpi=TXe(),RXe=SXe();function $ka({key:e,value:t},r,n,a){let{allNullValues:o,doc:l,indent:A,indentStep:f,options:{commentString:I,indentSeq:C,simpleKeys:b}}=r,E=Iee.isNode(e)&&e.comment||null;if(b){if(E)throw new Error("With simple keys, key nodes cannot have comments");if(Iee.isCollection(e)||!Iee.isNode(e)&&typeof e=="object"){let de="With simple keys, collection cannot be used as a key value";throw new Error(de)}}let N=!b&&(!e||E&&t==null&&!r.inFlow||Iee.isCollection(e)||(Iee.isScalar(e)?e.type===xpi.Scalar.BLOCK_FOLDED||e.type===xpi.Scalar.BLOCK_LITERAL:typeof e=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!N&&(b||!o),indent:A+f});let B=!1,F=!1,Q=Gpi.stringify(e,r,()=>B=!0,()=>F=!0);if(!N&&!r.inFlow&&Q.length>1024){if(b)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");N=!0}if(r.inFlow){if(o||t==null)return B&&n&&n(),Q===""?"?":N?`? ${Q}`:Q}else if(o&&!b||t==null&&N)return Q=`? ${Q}`,E&&!B?Q+=RXe.lineComment(Q,r.indent,I(E)):F&&a&&a(),Q;B&&(E=null),N?(E&&(Q+=RXe.lineComment(Q,r.indent,I(E))),Q=`? ${Q} -${A}:`):(Q=`${Q}:`,E&&(Q+=RXe.lineComment(Q,r.indent,I(E))));let J,ae,ne;Iee.isNode(t)?(J=!!t.spaceBefore,ae=t.commentBefore,ne=t.comment):(J=!1,ae=null,ne=null,t&&typeof t=="object"&&(t=l.createNode(t))),r.implicitKey=!1,!N&&!E&&Iee.isScalar(t)&&(r.indentAtStart=Q.length+1),F=!1,!C&&f.length>=2&&!r.inFlow&&!N&&Iee.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor&&(r.indent=r.indent.substring(2));let ce=!1,fe=Gpi.stringify(t,r,()=>ce=!0,()=>F=!0),ue=" ";if(E||J||ae){if(ue=J?` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${I}`);let fe=Jae.foldFlowLines(`${ae}${r}${N}`,I,Jae.FOLD_BLOCK,c0t(n,!0));return`${ce} +${I}${fe}`}function Kka(e,t,r,n){let{type:a,value:o}=e,{actualString:l,implicitKey:A,indent:f,indentStep:I,inFlow:C}=t;if(A&&o.includes(` +`)||C&&/[[\]{},]/.test(o))return pRe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return A||C||!o.includes(` +`)?pRe(o,t):a0t(e,t,r,n);if(!A&&!C&&a!==l6.Scalar.PLAIN&&o.includes(` +`))return a0t(e,t,r,n);if(l0t(o)){if(f==="")return t.forceBlockIndent=!0,a0t(e,t,r,n);if(A&&f===I)return pRe(o,t)}let b=o.replace(/\n+/g,`$& +${f}`);if(l){let E=F=>F.default&&F.tag!=="tag:yaml.org,2002:str"&&F.test?.test(b),{compat:N,tags:B}=t.doc.schema;if(B.some(E)||N?.some(E))return pRe(o,t)}return A?b:Jae.foldFlowLines(b,f,Jae.FOLD_FLOW,c0t(t,!1))}function jka(e,t,r,n){let{implicitKey:a,inFlow:o}=t,l=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)}),{type:A}=e;A!==l6.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(l.value)&&(A=l6.Scalar.QUOTE_DOUBLE);let f=C=>{switch(C){case l6.Scalar.BLOCK_FOLDED:case l6.Scalar.BLOCK_LITERAL:return a||o?pRe(l.value,t):a0t(l,t,r,n);case l6.Scalar.QUOTE_DOUBLE:return TXe(l.value,t);case l6.Scalar.QUOTE_SINGLE:return Bvr(l.value,t);case l6.Scalar.PLAIN:return Kka(l,t,r,n);default:return null}},I=f(A);if(I===null){let{defaultKeyType:C,defaultStringType:b}=t.options,E=a&&C||b;if(I=f(E),I===null)throw new Error(`Unsupported default string type ${E}`)}return I}Hpi.stringifyString=jka});var NXe=H(Tvr=>{"use strict";var zka=$_t(),Uae=b0(),qka=BXe(),$ka=RXe();function exa(e,t){let r=Object.assign({blockQuote:!0,commentString:qka.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),n;switch(r.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:n,options:r}}function txa(e,t){if(t.tag){let a=e.filter(o=>o.tag===t.tag);if(a.length>0)return a.find(o=>o.format===t.format)??a[0]}let r,n;if(Uae.isScalar(t)){n=t.value;let a=e.filter(o=>o.identify?.(n));r=a.find(o=>o.format===t.format)??a.find(o=>!o.format)}else n=t,r=e.find(a=>a.nodeClass&&n instanceof a.nodeClass);if(!r){let a=n?.constructor?.name??typeof n;throw new Error(`Tag not resolved for ${a} value`)}return r}function rxa(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let a=[],o=(Uae.isScalar(e)||Uae.isCollection(e))&&e.anchor;o&&zka.anchorIsValid(o)&&(r.add(o),a.push(`&${o}`));let l=e.tag?e.tag:t.default?null:t.tag;return l&&a.push(n.directives.tagString(l)),a.join(" ")}function nxa(e,t,r,n){if(Uae.isPair(e))return e.toString(t,r,n);if(Uae.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a,o=Uae.isNode(e)?e:t.doc.createNode(e,{onTagObj:f=>a=f});a||(a=txa(t.doc.schema.tags,o));let l=rxa(o,a,t);l.length>0&&(t.indentAtStart=(t.indentAtStart??0)+l.length+1);let A=typeof a.stringify=="function"?a.stringify(o,t,r,n):Uae.isScalar(o)?$ka.stringifyString(o,t,r,n):o.toString(t,r,n);return l?Uae.isScalar(o)||A[0]==="{"||A[0]==="["?`${l} ${A}`:`${l} +${t.indent}${A}`:A}Tvr.createStringifyContext=exa;Tvr.stringify=nxa});var Jpi=H(Xpi=>{"use strict";var hee=b0(),Ypi=hT(),Qpi=NXe(),DXe=BXe();function ixa({key:e,value:t},r,n,a){let{allNullValues:o,doc:l,indent:A,indentStep:f,options:{commentString:I,indentSeq:C,simpleKeys:b}}=r,E=hee.isNode(e)&&e.comment||null;if(b){if(E)throw new Error("With simple keys, key nodes cannot have comments");if(hee.isCollection(e)||!hee.isNode(e)&&typeof e=="object"){let de="With simple keys, collection cannot be used as a key value";throw new Error(de)}}let N=!b&&(!e||E&&t==null&&!r.inFlow||hee.isCollection(e)||(hee.isScalar(e)?e.type===Ypi.Scalar.BLOCK_FOLDED||e.type===Ypi.Scalar.BLOCK_LITERAL:typeof e=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!N&&(b||!o),indent:A+f});let B=!1,F=!1,Q=Qpi.stringify(e,r,()=>B=!0,()=>F=!0);if(!N&&!r.inFlow&&Q.length>1024){if(b)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");N=!0}if(r.inFlow){if(o||t==null)return B&&n&&n(),Q===""?"?":N?`? ${Q}`:Q}else if(o&&!b||t==null&&N)return Q=`? ${Q}`,E&&!B?Q+=DXe.lineComment(Q,r.indent,I(E)):F&&a&&a(),Q;B&&(E=null),N?(E&&(Q+=DXe.lineComment(Q,r.indent,I(E))),Q=`? ${Q} +${A}:`):(Q=`${Q}:`,E&&(Q+=DXe.lineComment(Q,r.indent,I(E))));let J,ae,ne;hee.isNode(t)?(J=!!t.spaceBefore,ae=t.commentBefore,ne=t.comment):(J=!1,ae=null,ne=null,t&&typeof t=="object"&&(t=l.createNode(t))),r.implicitKey=!1,!N&&!E&&hee.isScalar(t)&&(r.indentAtStart=Q.length+1),F=!1,!C&&f.length>=2&&!r.inFlow&&!N&&hee.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor&&(r.indent=r.indent.substring(2));let ce=!1,fe=Qpi.stringify(t,r,()=>ce=!0,()=>F=!0),ue=" ";if(E||J||ae){if(ue=J?` `:"",ae){let de=I(ae);ue+=` -${RXe.indentComment(de,r.indent)}`}fe===""&&!r.inFlow?ue===` +${DXe.indentComment(de,r.indent)}`}fe===""&&!r.inFlow?ue===` `&&(ue=` `):ue+=` -${r.indent}`}else if(!N&&Iee.isCollection(t)){let de=fe[0],be=fe.indexOf(` +${r.indent}`}else if(!N&&hee.isCollection(t)){let de=fe[0],be=fe.indexOf(` `),Se=be!==-1,De=r.inFlow??t.flow??t.items.length===0;if(Se||!De){let k=!1;if(Se&&(de==="&"||de==="!")){let tt=fe.indexOf(" ");de==="&"&&tt!==-1&&tt{"use strict";function exa(e,...t){e==="debug"&&console.log(...t)}function txa(e,t){(e==="debug"||e==="warn")&&(typeof process<"u"&&process.emitWarning?process.emitWarning(t):console.warn(t))}wvr.debug=exa;wvr.warn=txa});var Dvr=H(Vpi=>{"use strict";var rxa=Tvr(),nxa=TXe(),hRe=y0(),ixa=IT(),Rvr=Yae(),Lpi="<<";function sxa(e,t,{key:r,value:n}){if(e?.doc.schema.merge&&oxa(r))if(n=hRe.isAlias(n)?n.resolve(e.doc):n,hRe.isSeq(n))for(let a of n.items)Nvr(e,t,a);else if(Array.isArray(n))for(let a of n)Nvr(e,t,a);else Nvr(e,t,n);else{let a=Rvr.toJS(r,"",e);if(t instanceof Map)t.set(a,Rvr.toJS(n,a,e));else if(t instanceof Set)t.add(a);else{let o=axa(r,a,e),l=Rvr.toJS(n,o,e);o in t?Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0}):t[o]=l}}return t}var oxa=e=>e===Lpi||hRe.isScalar(e)&&e.value===Lpi&&(!e.type||e.type===ixa.Scalar.PLAIN);function Nvr(e,t,r){let n=e&&hRe.isAlias(r)?r.resolve(e.doc):r;if(!hRe.isMap(n))throw new Error("Merge sources must be maps or map aliases");let a=n.toJSON(null,e,Map);for(let[o,l]of a)t instanceof Map?t.has(o)||t.set(o,l):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0});return t}function axa(e,t,r){if(t===null)return"";if(typeof t!="object")return String(t);if(hRe.isNode(e)&&r?.doc){let n=nxa.createStringifyContext(r.doc,{});n.anchors=new Set;for(let o of r.anchors.keys())n.anchors.add(o.anchor);n.inFlow=!0,n.inStringifyKey=!0;let a=e.toString(n);if(!r.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),rxa.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return a}return JSON.stringify(t)}Vpi.addPairToJSMap=sxa});var Uae=H(kvr=>{"use strict";var Wpi=EXe(),cxa=Zpi(),lxa=Dvr(),A0t=y0();function uxa(e,t,r){let n=Wpi.createNode(e,void 0,r),a=Wpi.createNode(t,void 0,r);return new d0t(n,a)}var d0t=class e{constructor(t,r=null){Object.defineProperty(this,A0t.NODE_TYPE,{value:A0t.PAIR}),this.key=t,this.value=r}clone(t){let{key:r,value:n}=this;return A0t.isNode(r)&&(r=r.clone(t)),A0t.isNode(n)&&(n=n.clone(t)),new e(r,n)}toJSON(t,r){let n=r?.mapAsMap?new Map:{};return lxa.addPairToJSMap(r,n,this)}toString(t,r,n){return t?.doc?cxa.stringifyPair(this,t,r,n):JSON.stringify(this)}};kvr.Pair=d0t;kvr.createPair=uxa});var xvr=H(Ppi=>{"use strict";var ime=y0(),Opi=TXe(),p0t=SXe();function gxa(e,t,r){return(t.inFlow??e.flow?dxa:Axa)(e,t,r)}function Axa({comment:e,items:t},r,{blockItemPrefix:n,flowChars:a,itemIndent:o,onChompKeep:l,onComment:A}){let{indent:f,options:{commentString:I}}=r,C=Object.assign({},r,{indent:o,type:null}),b=!1,E=[];for(let B=0;BQ=null,()=>b=!0);Q&&(J+=p0t.lineComment(J,o,I(Q))),b&&Q&&(b=!1),E.push(n+J)}let N;if(E.length===0)N=a.start+a.end;else{N=E[0];for(let B=1;B{"use strict";function sxa(e,...t){e==="debug"&&console.log(...t)}function oxa(e,t){(e==="debug"||e==="warn")&&(typeof process<"u"&&process.emitWarning?process.emitWarning(t):console.warn(t))}Rvr.debug=sxa;Rvr.warn=oxa});var xvr=H(Kpi=>{"use strict";var axa=Nvr(),cxa=NXe(),fRe=b0(),lxa=hT(),Dvr=Qae(),Upi="<<";function uxa(e,t,{key:r,value:n}){if(e?.doc.schema.merge&&gxa(r))if(n=fRe.isAlias(n)?n.resolve(e.doc):n,fRe.isSeq(n))for(let a of n.items)kvr(e,t,a);else if(Array.isArray(n))for(let a of n)kvr(e,t,a);else kvr(e,t,n);else{let a=Dvr.toJS(r,"",e);if(t instanceof Map)t.set(a,Dvr.toJS(n,a,e));else if(t instanceof Set)t.add(a);else{let o=Axa(r,a,e),l=Dvr.toJS(n,o,e);o in t?Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0}):t[o]=l}}return t}var gxa=e=>e===Upi||fRe.isScalar(e)&&e.value===Upi&&(!e.type||e.type===lxa.Scalar.PLAIN);function kvr(e,t,r){let n=e&&fRe.isAlias(r)?r.resolve(e.doc):r;if(!fRe.isMap(n))throw new Error("Merge sources must be maps or map aliases");let a=n.toJSON(null,e,Map);for(let[o,l]of a)t instanceof Map?t.has(o)||t.set(o,l):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0});return t}function Axa(e,t,r){if(t===null)return"";if(typeof t!="object")return String(t);if(fRe.isNode(e)&&r?.doc){let n=cxa.createStringifyContext(r.doc,{});n.anchors=new Set;for(let o of r.anchors.keys())n.anchors.add(o.anchor);n.inFlow=!0,n.inStringifyKey=!0;let a=e.toString(n);if(!r.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),axa.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return a}return JSON.stringify(t)}Kpi.addPairToJSMap=uxa});var Kae=H(Gvr=>{"use strict";var jpi=vXe(),dxa=Jpi(),pxa=xvr(),u0t=b0();function fxa(e,t,r){let n=jpi.createNode(e,void 0,r),a=jpi.createNode(t,void 0,r);return new g0t(n,a)}var g0t=class e{constructor(t,r=null){Object.defineProperty(this,u0t.NODE_TYPE,{value:u0t.PAIR}),this.key=t,this.value=r}clone(t){let{key:r,value:n}=this;return u0t.isNode(r)&&(r=r.clone(t)),u0t.isNode(n)&&(n=n.clone(t)),new e(r,n)}toJSON(t,r){let n=r?.mapAsMap?new Map:{};return pxa.addPairToJSMap(r,n,this)}toString(t,r,n){return t?.doc?dxa.stringifyPair(this,t,r,n):JSON.stringify(this)}};Gvr.Pair=g0t;Gvr.createPair=fxa});var Fvr=H(qpi=>{"use strict";var sme=b0(),zpi=NXe(),A0t=BXe();function Ixa(e,t,r){return(t.inFlow??e.flow?mxa:hxa)(e,t,r)}function hxa({comment:e,items:t},r,{blockItemPrefix:n,flowChars:a,itemIndent:o,onChompKeep:l,onComment:A}){let{indent:f,options:{commentString:I}}=r,C=Object.assign({},r,{indent:o,type:null}),b=!1,E=[];for(let B=0;BQ=null,()=>b=!0);Q&&(J+=A0t.lineComment(J,o,I(Q))),b&&Q&&(b=!1),E.push(n+J)}let N;if(E.length===0)N=a.start+a.end;else{N=E[0];for(let B=1;BQ=null);BC||J.includes(` +`+A0t.indentComment(I(e),f),A&&A()):b&&l&&l(),N}function mxa({items:e},t,{flowChars:r,itemIndent:n}){let{indent:a,indentStep:o,flowCollectionPadding:l,options:{commentString:A}}=t;n+=o;let f=Object.assign({},t,{indent:n,inFlow:!0,type:null}),I=!1,C=0,b=[];for(let B=0;BQ=null);BC||J.includes(` `))&&(I=!0),b.push(J),C=b.length}let{start:E,end:N}=r;if(b.length===0)return E+N;if(!I){let B=b.reduce((F,Q)=>F+Q.length+2,2);I=t.options.lineWidth>0&&B>t.options.lineWidth}if(I){let B=E;for(let F of b)B+=F?` ${o}${a}${F}`:` `;return`${B} -${a}${N}`}else return`${E}${l}${b.join(" ")}${l}${N}`}function f0t({indent:e,options:{commentString:t}},r,n,a){if(n&&a&&(n=n.replace(/^\n+/,"")),n){let o=p0t.indentComment(t(n),e);r.push(o.trimStart())}}Ppi.stringifyCollection=gxa});var jae=H(Fvr=>{"use strict";var pxa=xvr(),fxa=Dvr(),Ixa=o0t(),Kae=y0(),I0t=Uae(),hxa=IT();function NXe(e,t){let r=Kae.isScalar(t)?t.value:t;for(let n of e)if(Kae.isPair(n)&&(n.key===t||n.key===r||Kae.isScalar(n.key)&&n.key.value===r))return n}var Gvr=class extends Ixa.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(Kae.MAP,t),this.items=[]}static from(t,r,n){let{keepUndefined:a,replacer:o}=n,l=new this(t),A=(f,I)=>{if(typeof o=="function")I=o.call(r,f,I);else if(Array.isArray(o)&&!o.includes(f))return;(I!==void 0||a)&&l.items.push(I0t.createPair(f,I,n))};if(r instanceof Map)for(let[f,I]of r)A(f,I);else if(r&&typeof r=="object")for(let f of Object.keys(r))A(f,r[f]);return typeof t.sortMapEntries=="function"&&l.items.sort(t.sortMapEntries),l}add(t,r){let n;Kae.isPair(t)?n=t:!t||typeof t!="object"||!("key"in t)?n=new I0t.Pair(t,t?.value):n=new I0t.Pair(t.key,t.value);let a=NXe(this.items,n.key),o=this.schema?.sortMapEntries;if(a){if(!r)throw new Error(`Key ${n.key} already set`);Kae.isScalar(a.value)&&hxa.isScalarValue(n.value)?a.value.value=n.value:a.value=n.value}else if(o){let l=this.items.findIndex(A=>o(n,A)<0);l===-1?this.items.push(n):this.items.splice(l,0,n)}else this.items.push(n)}delete(t){let r=NXe(this.items,t);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(t,r){let a=NXe(this.items,t)?.value;return(!r&&Kae.isScalar(a)?a.value:a)??void 0}has(t){return!!NXe(this.items,t)}set(t,r){this.add(new I0t.Pair(t,r),!0)}toJSON(t,r,n){let a=n?new n:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(a);for(let o of this.items)fxa.addPairToJSMap(r,a,o);return a}toString(t,r,n){if(!t)return JSON.stringify(this);for(let a of this.items)if(!Kae.isPair(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),pxa.stringifyCollection(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:n,onComment:r})}};Fvr.YAMLMap=Gvr;Fvr.findPair=NXe});var mRe=H(Hpi=>{"use strict";var mxa=y0(),Mpi=jae(),Cxa={collection:"map",default:!0,nodeClass:Mpi.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){return mxa.isMap(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,r)=>Mpi.YAMLMap.from(e,t,r)};Hpi.map=Cxa});var zae=H(Ypi=>{"use strict";var _xa=EXe(),yxa=xvr(),bxa=o0t(),m0t=y0(),Exa=IT(),Sxa=Yae(),Zvr=class extends bxa.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(m0t.SEQ,t),this.items=[]}add(t){this.items.push(t)}delete(t){let r=h0t(t);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(t,r){let n=h0t(t);if(typeof n!="number")return;let a=this.items[n];return!r&&m0t.isScalar(a)?a.value:a}has(t){let r=h0t(t);return typeof r=="number"&&r=0?t:null}Ypi.YAMLSeq=Zvr});var CRe=H(Xpi=>{"use strict";var vxa=y0(),Qpi=zae(),Bxa={collection:"seq",default:!0,nodeClass:Qpi.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){return vxa.isSeq(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,r)=>Qpi.YAMLSeq.from(e,t,r)};Xpi.seq=Bxa});var DXe=H(Jpi=>{"use strict";var wxa=wXe(),Txa={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,r,n){return t=Object.assign({actualString:!0},t),wxa.stringifyString(e,t,r,n)}};Jpi.string=Txa});var C0t=H(jpi=>{"use strict";var Upi=IT(),Kpi={identify:e=>e==null,createNode:()=>new Upi.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new Upi.Scalar(null),stringify:({source:e},t)=>typeof e=="string"&&Kpi.test.test(e)?e:t.options.nullStr};jpi.nullTag=Kpi});var Lvr=H(qpi=>{"use strict";var Rxa=IT(),zpi={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new Rxa.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&zpi.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};qpi.boolTag=zpi});var _Re=H($pi=>{"use strict";function Nxa({format:e,minFractionDigits:t,tag:r,value:n}){if(typeof n=="bigint")return String(n);let a=typeof n=="number"?n:Number(n);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=JSON.stringify(n);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let l=o.indexOf(".");l<0&&(l=o.length,o+=".");let A=t-(o.length-l-1);for(;A-- >0;)o+="0"}return o}$pi.stringifyNumber=Nxa});var Wvr=H(_0t=>{"use strict";var Dxa=IT(),Vvr=_Re(),kxa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Vvr.stringifyNumber},xxa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():Vvr.stringifyNumber(e)}},Gxa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new Dxa.Scalar(parseFloat(e)),r=e.indexOf(".");return r!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-r-1),t},stringify:Vvr.stringifyNumber};_0t.float=Gxa;_0t.floatExp=xxa;_0t.floatNaN=kxa});var Pvr=H(b0t=>{"use strict";var efi=_Re(),y0t=e=>typeof e=="bigint"||Number.isInteger(e),Ovr=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function tfi(e,t,r){let{value:n}=e;return y0t(n)&&n>=0?r+n.toString(t):efi.stringifyNumber(e)}var Fxa={identify:e=>y0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>Ovr(e,2,8,r),stringify:e=>tfi(e,8,"0o")},Zxa={identify:y0t,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>Ovr(e,0,10,r),stringify:efi.stringifyNumber},Lxa={identify:e=>y0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>Ovr(e,2,16,r),stringify:e=>tfi(e,16,"0x")};b0t.int=Zxa;b0t.intHex=Lxa;b0t.intOct=Fxa});var nfi=H(rfi=>{"use strict";var Vxa=mRe(),Wxa=C0t(),Oxa=CRe(),Pxa=DXe(),Mxa=Lvr(),Mvr=Wvr(),Hvr=Pvr(),Hxa=[Vxa.map,Oxa.seq,Pxa.string,Wxa.nullTag,Mxa.boolTag,Hvr.intOct,Hvr.int,Hvr.intHex,Mvr.floatNaN,Mvr.floatExp,Mvr.float];rfi.schema=Hxa});var ofi=H(sfi=>{"use strict";var Yxa=IT(),Qxa=mRe(),Xxa=CRe();function ifi(e){return typeof e=="bigint"||Number.isInteger(e)}var E0t=({value:e})=>JSON.stringify(e),Jxa=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:E0t},{identify:e=>e==null,createNode:()=>new Yxa.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:E0t},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:e=>e==="true",stringify:E0t},{identify:ifi,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>ifi(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:E0t}],Uxa={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},Kxa=[Qxa.map,Xxa.seq].concat(Jxa,Uxa);sfi.schema=Kxa});var Qvr=H(afi=>{"use strict";var Yvr=IT(),jxa=wXe(),zxa={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Buffer=="function")return Buffer.from(e,"base64");if(typeof atob=="function"){let r=atob(e.replace(/[\n\r]/g,"")),n=new Uint8Array(r.length);for(let a=0;a{"use strict";var S0t=y0(),Xvr=Uae(),qxa=IT(),$xa=zae();function cfi(e,t){if(S0t.isSeq(e))for(let r=0;r1&&t("Each pair must have its own sequence indicator");let a=n.items[0]||new Xvr.Pair(new qxa.Scalar(null));if(n.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${n.commentBefore} +${a}${N}`}else return`${E}${l}${b.join(" ")}${l}${N}`}function d0t({indent:e,options:{commentString:t}},r,n,a){if(n&&a&&(n=n.replace(/^\n+/,"")),n){let o=A0t.indentComment(t(n),e);r.push(o.trimStart())}}qpi.stringifyCollection=Ixa});var zae=H(Lvr=>{"use strict";var Cxa=Fvr(),_xa=xvr(),yxa=i0t(),jae=b0(),p0t=Kae(),bxa=hT();function kXe(e,t){let r=jae.isScalar(t)?t.value:t;for(let n of e)if(jae.isPair(n)&&(n.key===t||n.key===r||jae.isScalar(n.key)&&n.key.value===r))return n}var Zvr=class extends yxa.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(jae.MAP,t),this.items=[]}static from(t,r,n){let{keepUndefined:a,replacer:o}=n,l=new this(t),A=(f,I)=>{if(typeof o=="function")I=o.call(r,f,I);else if(Array.isArray(o)&&!o.includes(f))return;(I!==void 0||a)&&l.items.push(p0t.createPair(f,I,n))};if(r instanceof Map)for(let[f,I]of r)A(f,I);else if(r&&typeof r=="object")for(let f of Object.keys(r))A(f,r[f]);return typeof t.sortMapEntries=="function"&&l.items.sort(t.sortMapEntries),l}add(t,r){let n;jae.isPair(t)?n=t:!t||typeof t!="object"||!("key"in t)?n=new p0t.Pair(t,t?.value):n=new p0t.Pair(t.key,t.value);let a=kXe(this.items,n.key),o=this.schema?.sortMapEntries;if(a){if(!r)throw new Error(`Key ${n.key} already set`);jae.isScalar(a.value)&&bxa.isScalarValue(n.value)?a.value.value=n.value:a.value=n.value}else if(o){let l=this.items.findIndex(A=>o(n,A)<0);l===-1?this.items.push(n):this.items.splice(l,0,n)}else this.items.push(n)}delete(t){let r=kXe(this.items,t);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(t,r){let a=kXe(this.items,t)?.value;return(!r&&jae.isScalar(a)?a.value:a)??void 0}has(t){return!!kXe(this.items,t)}set(t,r){this.add(new p0t.Pair(t,r),!0)}toJSON(t,r,n){let a=n?new n:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(a);for(let o of this.items)_xa.addPairToJSMap(r,a,o);return a}toString(t,r,n){if(!t)return JSON.stringify(this);for(let a of this.items)if(!jae.isPair(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),Cxa.stringifyCollection(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:n,onComment:r})}};Lvr.YAMLMap=Zvr;Lvr.findPair=kXe});var IRe=H(efi=>{"use strict";var Exa=b0(),$pi=zae(),Sxa={collection:"map",default:!0,nodeClass:$pi.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){return Exa.isMap(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,r)=>$pi.YAMLMap.from(e,t,r)};efi.map=Sxa});var qae=H(tfi=>{"use strict";var vxa=vXe(),Bxa=Fvr(),wxa=i0t(),I0t=b0(),Txa=hT(),Rxa=Qae(),Vvr=class extends wxa.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(I0t.SEQ,t),this.items=[]}add(t){this.items.push(t)}delete(t){let r=f0t(t);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(t,r){let n=f0t(t);if(typeof n!="number")return;let a=this.items[n];return!r&&I0t.isScalar(a)?a.value:a}has(t){let r=f0t(t);return typeof r=="number"&&r=0?t:null}tfi.YAMLSeq=Vvr});var hRe=H(nfi=>{"use strict";var Nxa=b0(),rfi=qae(),Dxa={collection:"seq",default:!0,nodeClass:rfi.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){return Nxa.isSeq(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,r)=>rfi.YAMLSeq.from(e,t,r)};nfi.seq=Dxa});var xXe=H(ifi=>{"use strict";var kxa=RXe(),xxa={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,r,n){return t=Object.assign({actualString:!0},t),kxa.stringifyString(e,t,r,n)}};ifi.string=xxa});var h0t=H(afi=>{"use strict";var sfi=hT(),ofi={identify:e=>e==null,createNode:()=>new sfi.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new sfi.Scalar(null),stringify:({source:e},t)=>typeof e=="string"&&ofi.test.test(e)?e:t.options.nullStr};afi.nullTag=ofi});var Wvr=H(lfi=>{"use strict";var Gxa=hT(),cfi={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new Gxa.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&cfi.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};lfi.boolTag=cfi});var mRe=H(ufi=>{"use strict";function Fxa({format:e,minFractionDigits:t,tag:r,value:n}){if(typeof n=="bigint")return String(n);let a=typeof n=="number"?n:Number(n);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=JSON.stringify(n);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let l=o.indexOf(".");l<0&&(l=o.length,o+=".");let A=t-(o.length-l-1);for(;A-- >0;)o+="0"}return o}ufi.stringifyNumber=Fxa});var Pvr=H(m0t=>{"use strict";var Zxa=hT(),Ovr=mRe(),Lxa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Ovr.stringifyNumber},Vxa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():Ovr.stringifyNumber(e)}},Wxa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new Zxa.Scalar(parseFloat(e)),r=e.indexOf(".");return r!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-r-1),t},stringify:Ovr.stringifyNumber};m0t.float=Wxa;m0t.floatExp=Vxa;m0t.floatNaN=Lxa});var Hvr=H(_0t=>{"use strict";var gfi=mRe(),C0t=e=>typeof e=="bigint"||Number.isInteger(e),Mvr=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function Afi(e,t,r){let{value:n}=e;return C0t(n)&&n>=0?r+n.toString(t):gfi.stringifyNumber(e)}var Oxa={identify:e=>C0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>Mvr(e,2,8,r),stringify:e=>Afi(e,8,"0o")},Pxa={identify:C0t,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>Mvr(e,0,10,r),stringify:gfi.stringifyNumber},Mxa={identify:e=>C0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>Mvr(e,2,16,r),stringify:e=>Afi(e,16,"0x")};_0t.int=Pxa;_0t.intHex=Mxa;_0t.intOct=Oxa});var pfi=H(dfi=>{"use strict";var Hxa=IRe(),Yxa=h0t(),Qxa=hRe(),Xxa=xXe(),Jxa=Wvr(),Yvr=Pvr(),Qvr=Hvr(),Uxa=[Hxa.map,Qxa.seq,Xxa.string,Yxa.nullTag,Jxa.boolTag,Qvr.intOct,Qvr.int,Qvr.intHex,Yvr.floatNaN,Yvr.floatExp,Yvr.float];dfi.schema=Uxa});var hfi=H(Ifi=>{"use strict";var Kxa=hT(),jxa=IRe(),zxa=hRe();function ffi(e){return typeof e=="bigint"||Number.isInteger(e)}var y0t=({value:e})=>JSON.stringify(e),qxa=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:y0t},{identify:e=>e==null,createNode:()=>new Kxa.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:y0t},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:e=>e==="true",stringify:y0t},{identify:ffi,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>ffi(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:y0t}],$xa={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},eGa=[jxa.map,zxa.seq].concat(qxa,$xa);Ifi.schema=eGa});var Jvr=H(mfi=>{"use strict";var Xvr=hT(),tGa=RXe(),rGa={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Buffer=="function")return Buffer.from(e,"base64");if(typeof atob=="function"){let r=atob(e.replace(/[\n\r]/g,"")),n=new Uint8Array(r.length);for(let a=0;a{"use strict";var b0t=b0(),Uvr=Kae(),nGa=hT(),iGa=qae();function Cfi(e,t){if(b0t.isSeq(e))for(let r=0;r1&&t("Each pair must have its own sequence indicator");let a=n.items[0]||new Uvr.Pair(new nGa.Scalar(null));if(n.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${n.commentBefore} ${a.key.commentBefore}`:n.commentBefore),n.comment){let o=a.value??a.key;o.comment=o.comment?`${n.comment} -${o.comment}`:n.comment}n=a}e.items[r]=S0t.isPair(n)?n:new Xvr.Pair(n)}}else t("Expected a sequence for this tag");return e}function lfi(e,t,r){let{replacer:n}=r,a=new $xa.YAMLSeq(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let l of t){typeof n=="function"&&(l=n.call(t,String(o++),l));let A,f;if(Array.isArray(l))if(l.length===2)A=l[0],f=l[1];else throw new TypeError(`Expected [key, value] tuple: ${l}`);else if(l&&l instanceof Object){let I=Object.keys(l);if(I.length===1)A=I[0],f=l[A];else throw new TypeError(`Expected tuple with one key, not ${I.length} keys`)}else A=l;a.items.push(Xvr.createPair(A,f,r))}return a}var eGa={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:cfi,createNode:lfi};v0t.createPairs=lfi;v0t.pairs=eGa;v0t.resolvePairs=cfi});var Kvr=H(Uvr=>{"use strict";var ufi=y0(),Jvr=Yae(),kXe=jae(),tGa=zae(),gfi=B0t(),sme=class e extends tGa.YAMLSeq{constructor(){super(),this.add=kXe.YAMLMap.prototype.add.bind(this),this.delete=kXe.YAMLMap.prototype.delete.bind(this),this.get=kXe.YAMLMap.prototype.get.bind(this),this.has=kXe.YAMLMap.prototype.has.bind(this),this.set=kXe.YAMLMap.prototype.set.bind(this),this.tag=e.tag}toJSON(t,r){if(!r)return super.toJSON(t);let n=new Map;r?.onCreate&&r.onCreate(n);for(let a of this.items){let o,l;if(ufi.isPair(a)?(o=Jvr.toJS(a.key,"",r),l=Jvr.toJS(a.value,o,r)):o=Jvr.toJS(a,"",r),n.has(o))throw new Error("Ordered maps must not include duplicate keys");n.set(o,l)}return n}static from(t,r,n){let a=gfi.createPairs(t,r,n),o=new this;return o.items=a.items,o}};sme.tag="tag:yaml.org,2002:omap";var rGa={collection:"seq",identify:e=>e instanceof Map,nodeClass:sme,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=gfi.resolvePairs(e,t),n=[];for(let{key:a}of r.items)ufi.isScalar(a)&&(n.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):n.push(a.value));return Object.assign(new sme,r)},createNode:(e,t,r)=>sme.from(e,t,r)};Uvr.YAMLOMap=sme;Uvr.omap=rGa});var Ifi=H(jvr=>{"use strict";var Afi=IT();function dfi({value:e,source:t},r){return t&&(e?pfi:ffi).test.test(t)?t:e?r.options.trueStr:r.options.falseStr}var pfi={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new Afi.Scalar(!0),stringify:dfi},ffi={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new Afi.Scalar(!1),stringify:dfi};jvr.falseTag=ffi;jvr.trueTag=pfi});var hfi=H(w0t=>{"use strict";var nGa=IT(),zvr=_Re(),iGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:zvr.stringifyNumber},sGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():zvr.stringifyNumber(e)}},oGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new nGa.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");n[n.length-1]==="0"&&(t.minFractionDigits=n.length)}return t},stringify:zvr.stringifyNumber};w0t.float=oGa;w0t.floatExp=sGa;w0t.floatNaN=iGa});var Cfi=H(GXe=>{"use strict";var mfi=_Re(),xXe=e=>typeof e=="bigint"||Number.isInteger(e);function T0t(e,t,r,{intAsBigInt:n}){let a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let l=BigInt(e);return a==="-"?BigInt(-1)*l:l}let o=parseInt(e,r);return a==="-"?-1*o:o}function qvr(e,t,r){let{value:n}=e;if(xXe(n)){let a=n.toString(t);return n<0?"-"+r+a.substr(1):r+a}return mfi.stringifyNumber(e)}var aGa={identify:xXe,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>T0t(e,2,2,r),stringify:e=>qvr(e,2,"0b")},cGa={identify:xXe,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>T0t(e,1,8,r),stringify:e=>qvr(e,8,"0")},lGa={identify:xXe,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>T0t(e,0,10,r),stringify:mfi.stringifyNumber},uGa={identify:xXe,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>T0t(e,2,16,r),stringify:e=>qvr(e,16,"0x")};GXe.int=lGa;GXe.intBin=aGa;GXe.intHex=uGa;GXe.intOct=cGa});var eBr=H($vr=>{"use strict";var D0t=y0(),R0t=Uae(),N0t=jae(),ome=class e extends N0t.YAMLMap{constructor(t){super(t),this.tag=e.tag}add(t){let r;D0t.isPair(t)?r=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?r=new R0t.Pair(t.key,null):r=new R0t.Pair(t,null),N0t.findPair(this.items,r.key)||this.items.push(r)}get(t,r){let n=N0t.findPair(this.items,t);return!r&&D0t.isPair(n)?D0t.isScalar(n.key)?n.key.value:n.key:n}set(t,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let n=N0t.findPair(this.items,t);n&&!r?this.items.splice(this.items.indexOf(n),1):!n&&r&&this.items.push(new R0t.Pair(t))}toJSON(t,r){return super.toJSON(t,r,Set)}toString(t,r,n){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),r,n);throw new Error("Set items must all have null values")}static from(t,r,n){let{replacer:a}=n,o=new this(t);if(r&&Symbol.iterator in Object(r))for(let l of r)typeof a=="function"&&(l=a.call(r,l,l)),o.items.push(R0t.createPair(l,null,n));return o}};ome.tag="tag:yaml.org,2002:set";var gGa={collection:"map",identify:e=>e instanceof Set,nodeClass:ome,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>ome.from(e,t,r),resolve(e,t){if(D0t.isMap(e)){if(e.hasAllNullValues(!0))return Object.assign(new ome,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};$vr.YAMLSet=ome;$vr.set=gGa});var rBr=H(k0t=>{"use strict";var AGa=_Re();function tBr(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,a=l=>t?BigInt(l):Number(l),o=n.replace(/_/g,"").split(":").reduce((l,A)=>l*a(60)+a(A),a(0));return r==="-"?a(-1)*o:o}function _fi(e){let{value:t}=e,r=l=>l;if(typeof t=="bigint")r=l=>BigInt(l);else if(isNaN(t)||!isFinite(t))return AGa.stringifyNumber(e);let n="";t<0&&(n="-",t*=r(-1));let a=r(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),n+o.map(l=>String(l).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var dGa={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>tBr(e,r),stringify:_fi},pGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>tBr(e,!1),stringify:_fi},yfi={identify:e=>e 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(e){let t=e.match(yfi.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,a,o,l,A]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0,I=Date.UTC(r,n-1,a,o||0,l||0,A||0,f),C=t[8];if(C&&C!=="Z"){let b=tBr(C,!1);Math.abs(b)<30&&(b*=60),I-=6e4*b}return new Date(I)},stringify:({value:e})=>e.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};k0t.floatTime=pGa;k0t.intTime=dGa;k0t.timestamp=yfi});var Sfi=H(Efi=>{"use strict";var fGa=mRe(),IGa=C0t(),hGa=CRe(),mGa=DXe(),CGa=Qvr(),bfi=Ifi(),nBr=hfi(),x0t=Cfi(),_Ga=Kvr(),yGa=B0t(),bGa=eBr(),iBr=rBr(),EGa=[fGa.map,hGa.seq,mGa.string,IGa.nullTag,bfi.trueTag,bfi.falseTag,x0t.intBin,x0t.intOct,x0t.int,x0t.intHex,nBr.floatNaN,nBr.floatExp,nBr.float,CGa.binary,_Ga.omap,yGa.pairs,bGa.set,iBr.intTime,iBr.floatTime,iBr.timestamp];Efi.schema=EGa});var Gfi=H(aBr=>{"use strict";var Tfi=mRe(),SGa=C0t(),Rfi=CRe(),vGa=DXe(),BGa=Lvr(),sBr=Wvr(),oBr=Pvr(),wGa=nfi(),TGa=ofi(),Nfi=Qvr(),Dfi=Kvr(),kfi=B0t(),vfi=Sfi(),xfi=eBr(),G0t=rBr(),Bfi=new Map([["core",wGa.schema],["failsafe",[Tfi.map,Rfi.seq,vGa.string]],["json",TGa.schema],["yaml11",vfi.schema],["yaml-1.1",vfi.schema]]),wfi={binary:Nfi.binary,bool:BGa.boolTag,float:sBr.float,floatExp:sBr.floatExp,floatNaN:sBr.floatNaN,floatTime:G0t.floatTime,int:oBr.int,intHex:oBr.intHex,intOct:oBr.intOct,intTime:G0t.intTime,map:Tfi.map,null:SGa.nullTag,omap:Dfi.omap,pairs:kfi.pairs,seq:Rfi.seq,set:xfi.set,timestamp:G0t.timestamp},RGa={"tag:yaml.org,2002:binary":Nfi.binary,"tag:yaml.org,2002:omap":Dfi.omap,"tag:yaml.org,2002:pairs":kfi.pairs,"tag:yaml.org,2002:set":xfi.set,"tag:yaml.org,2002:timestamp":G0t.timestamp};function NGa(e,t){let r=Bfi.get(t);if(!r)if(Array.isArray(e))r=[];else{let n=Array.from(Bfi.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${n} or define customTags array`)}if(Array.isArray(e))for(let n of e)r=r.concat(n);else typeof e=="function"&&(r=e(r.slice()));return r.map(n=>{if(typeof n!="string")return n;let a=wfi[n];if(a)return a;let o=Object.keys(wfi).map(l=>JSON.stringify(l)).join(", ");throw new Error(`Unknown custom tag "${n}"; use one of ${o}`)})}aBr.coreKnownTags=RGa;aBr.getTags=NGa});var uBr=H(Ffi=>{"use strict";var cBr=y0(),DGa=mRe(),kGa=CRe(),xGa=DXe(),F0t=Gfi(),GGa=(e,t)=>e.keyt.key?1:0,lBr=class e{constructor({compat:t,customTags:r,merge:n,resolveKnownTags:a,schema:o,sortMapEntries:l,toStringDefaults:A}){this.compat=Array.isArray(t)?F0t.getTags(t,"compat"):t?F0t.getTags(null,t):null,this.merge=!!n,this.name=typeof o=="string"&&o||"core",this.knownTags=a?F0t.coreKnownTags:{},this.tags=F0t.getTags(r,this.name),this.toStringOptions=A??null,Object.defineProperty(this,cBr.MAP,{value:DGa.map}),Object.defineProperty(this,cBr.SCALAR,{value:xGa.string}),Object.defineProperty(this,cBr.SEQ,{value:kGa.seq}),this.sortMapEntries=typeof l=="function"?l:l===!0?GGa:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};Ffi.Schema=lBr});var Lfi=H(Zfi=>{"use strict";var FGa=y0(),gBr=TXe(),FXe=SXe();function ZGa(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let f=e.directives.toString(e);f?(r.push(f),n=!0):e.directives.docStart&&(n=!0)}n&&r.push("---");let a=gBr.createStringifyContext(e,t),{commentString:o}=a.options;if(e.commentBefore){r.length!==1&&r.unshift("");let f=o(e.commentBefore);r.unshift(FXe.indentComment(f,""))}let l=!1,A=null;if(e.contents){if(FGa.isNode(e.contents)){if(e.contents.spaceBefore&&n&&r.push(""),e.contents.commentBefore){let C=o(e.contents.commentBefore);r.push(FXe.indentComment(C,""))}a.forceBlockIndent=!!e.comment,A=e.contents.comment}let f=A?void 0:()=>l=!0,I=gBr.stringify(e.contents,a,()=>A=null,f);A&&(I+=FXe.lineComment(I,"",o(A))),(I[0]==="|"||I[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${I}`:r.push(I)}else r.push(gBr.stringify(e.contents,a));if(e.directives?.docEnd)if(e.comment){let f=o(e.comment);f.includes(` -`)?(r.push("..."),r.push(FXe.indentComment(f,""))):r.push(`... ${f}`)}else r.push("...");else{let f=e.comment;f&&l&&(f=f.replace(/^\n+/,"")),f&&((!l||A)&&r[r.length-1]!==""&&r.push(""),r.push(FXe.indentComment(o(f),"")))}return r.join(` +${o.comment}`:n.comment}n=a}e.items[r]=b0t.isPair(n)?n:new Uvr.Pair(n)}}else t("Expected a sequence for this tag");return e}function _fi(e,t,r){let{replacer:n}=r,a=new iGa.YAMLSeq(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let l of t){typeof n=="function"&&(l=n.call(t,String(o++),l));let A,f;if(Array.isArray(l))if(l.length===2)A=l[0],f=l[1];else throw new TypeError(`Expected [key, value] tuple: ${l}`);else if(l&&l instanceof Object){let I=Object.keys(l);if(I.length===1)A=I[0],f=l[A];else throw new TypeError(`Expected tuple with one key, not ${I.length} keys`)}else A=l;a.items.push(Uvr.createPair(A,f,r))}return a}var sGa={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:Cfi,createNode:_fi};E0t.createPairs=_fi;E0t.pairs=sGa;E0t.resolvePairs=Cfi});var zvr=H(jvr=>{"use strict";var yfi=b0(),Kvr=Qae(),GXe=zae(),oGa=qae(),bfi=S0t(),ome=class e extends oGa.YAMLSeq{constructor(){super(),this.add=GXe.YAMLMap.prototype.add.bind(this),this.delete=GXe.YAMLMap.prototype.delete.bind(this),this.get=GXe.YAMLMap.prototype.get.bind(this),this.has=GXe.YAMLMap.prototype.has.bind(this),this.set=GXe.YAMLMap.prototype.set.bind(this),this.tag=e.tag}toJSON(t,r){if(!r)return super.toJSON(t);let n=new Map;r?.onCreate&&r.onCreate(n);for(let a of this.items){let o,l;if(yfi.isPair(a)?(o=Kvr.toJS(a.key,"",r),l=Kvr.toJS(a.value,o,r)):o=Kvr.toJS(a,"",r),n.has(o))throw new Error("Ordered maps must not include duplicate keys");n.set(o,l)}return n}static from(t,r,n){let a=bfi.createPairs(t,r,n),o=new this;return o.items=a.items,o}};ome.tag="tag:yaml.org,2002:omap";var aGa={collection:"seq",identify:e=>e instanceof Map,nodeClass:ome,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=bfi.resolvePairs(e,t),n=[];for(let{key:a}of r.items)yfi.isScalar(a)&&(n.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):n.push(a.value));return Object.assign(new ome,r)},createNode:(e,t,r)=>ome.from(e,t,r)};jvr.YAMLOMap=ome;jvr.omap=aGa});var wfi=H(qvr=>{"use strict";var Efi=hT();function Sfi({value:e,source:t},r){return t&&(e?vfi:Bfi).test.test(t)?t:e?r.options.trueStr:r.options.falseStr}var vfi={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new Efi.Scalar(!0),stringify:Sfi},Bfi={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new Efi.Scalar(!1),stringify:Sfi};qvr.falseTag=Bfi;qvr.trueTag=vfi});var Tfi=H(v0t=>{"use strict";var cGa=hT(),$vr=mRe(),lGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:$vr.stringifyNumber},uGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():$vr.stringifyNumber(e)}},gGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new cGa.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");n[n.length-1]==="0"&&(t.minFractionDigits=n.length)}return t},stringify:$vr.stringifyNumber};v0t.float=gGa;v0t.floatExp=uGa;v0t.floatNaN=lGa});var Nfi=H(ZXe=>{"use strict";var Rfi=mRe(),FXe=e=>typeof e=="bigint"||Number.isInteger(e);function B0t(e,t,r,{intAsBigInt:n}){let a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let l=BigInt(e);return a==="-"?BigInt(-1)*l:l}let o=parseInt(e,r);return a==="-"?-1*o:o}function eBr(e,t,r){let{value:n}=e;if(FXe(n)){let a=n.toString(t);return n<0?"-"+r+a.substr(1):r+a}return Rfi.stringifyNumber(e)}var AGa={identify:FXe,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>B0t(e,2,2,r),stringify:e=>eBr(e,2,"0b")},dGa={identify:FXe,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>B0t(e,1,8,r),stringify:e=>eBr(e,8,"0")},pGa={identify:FXe,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>B0t(e,0,10,r),stringify:Rfi.stringifyNumber},fGa={identify:FXe,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>B0t(e,2,16,r),stringify:e=>eBr(e,16,"0x")};ZXe.int=pGa;ZXe.intBin=AGa;ZXe.intHex=fGa;ZXe.intOct=dGa});var rBr=H(tBr=>{"use strict";var R0t=b0(),w0t=Kae(),T0t=zae(),ame=class e extends T0t.YAMLMap{constructor(t){super(t),this.tag=e.tag}add(t){let r;R0t.isPair(t)?r=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?r=new w0t.Pair(t.key,null):r=new w0t.Pair(t,null),T0t.findPair(this.items,r.key)||this.items.push(r)}get(t,r){let n=T0t.findPair(this.items,t);return!r&&R0t.isPair(n)?R0t.isScalar(n.key)?n.key.value:n.key:n}set(t,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let n=T0t.findPair(this.items,t);n&&!r?this.items.splice(this.items.indexOf(n),1):!n&&r&&this.items.push(new w0t.Pair(t))}toJSON(t,r){return super.toJSON(t,r,Set)}toString(t,r,n){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),r,n);throw new Error("Set items must all have null values")}static from(t,r,n){let{replacer:a}=n,o=new this(t);if(r&&Symbol.iterator in Object(r))for(let l of r)typeof a=="function"&&(l=a.call(r,l,l)),o.items.push(w0t.createPair(l,null,n));return o}};ame.tag="tag:yaml.org,2002:set";var IGa={collection:"map",identify:e=>e instanceof Set,nodeClass:ame,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>ame.from(e,t,r),resolve(e,t){if(R0t.isMap(e)){if(e.hasAllNullValues(!0))return Object.assign(new ame,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};tBr.YAMLSet=ame;tBr.set=IGa});var iBr=H(N0t=>{"use strict";var hGa=mRe();function nBr(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,a=l=>t?BigInt(l):Number(l),o=n.replace(/_/g,"").split(":").reduce((l,A)=>l*a(60)+a(A),a(0));return r==="-"?a(-1)*o:o}function Dfi(e){let{value:t}=e,r=l=>l;if(typeof t=="bigint")r=l=>BigInt(l);else if(isNaN(t)||!isFinite(t))return hGa.stringifyNumber(e);let n="";t<0&&(n="-",t*=r(-1));let a=r(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),n+o.map(l=>String(l).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var mGa={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>nBr(e,r),stringify:Dfi},CGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>nBr(e,!1),stringify:Dfi},kfi={identify:e=>e 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(e){let t=e.match(kfi.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,a,o,l,A]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0,I=Date.UTC(r,n-1,a,o||0,l||0,A||0,f),C=t[8];if(C&&C!=="Z"){let b=nBr(C,!1);Math.abs(b)<30&&(b*=60),I-=6e4*b}return new Date(I)},stringify:({value:e})=>e.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};N0t.floatTime=CGa;N0t.intTime=mGa;N0t.timestamp=kfi});var Ffi=H(Gfi=>{"use strict";var _Ga=IRe(),yGa=h0t(),bGa=hRe(),EGa=xXe(),SGa=Jvr(),xfi=wfi(),sBr=Tfi(),D0t=Nfi(),vGa=zvr(),BGa=S0t(),wGa=rBr(),oBr=iBr(),TGa=[_Ga.map,bGa.seq,EGa.string,yGa.nullTag,xfi.trueTag,xfi.falseTag,D0t.intBin,D0t.intOct,D0t.int,D0t.intHex,sBr.floatNaN,sBr.floatExp,sBr.float,SGa.binary,vGa.omap,BGa.pairs,wGa.set,oBr.intTime,oBr.floatTime,oBr.timestamp];Gfi.schema=TGa});var Qfi=H(lBr=>{"use strict";var Wfi=IRe(),RGa=h0t(),Ofi=hRe(),NGa=xXe(),DGa=Wvr(),aBr=Pvr(),cBr=Hvr(),kGa=pfi(),xGa=hfi(),Pfi=Jvr(),Mfi=zvr(),Hfi=S0t(),Zfi=Ffi(),Yfi=rBr(),k0t=iBr(),Lfi=new Map([["core",kGa.schema],["failsafe",[Wfi.map,Ofi.seq,NGa.string]],["json",xGa.schema],["yaml11",Zfi.schema],["yaml-1.1",Zfi.schema]]),Vfi={binary:Pfi.binary,bool:DGa.boolTag,float:aBr.float,floatExp:aBr.floatExp,floatNaN:aBr.floatNaN,floatTime:k0t.floatTime,int:cBr.int,intHex:cBr.intHex,intOct:cBr.intOct,intTime:k0t.intTime,map:Wfi.map,null:RGa.nullTag,omap:Mfi.omap,pairs:Hfi.pairs,seq:Ofi.seq,set:Yfi.set,timestamp:k0t.timestamp},GGa={"tag:yaml.org,2002:binary":Pfi.binary,"tag:yaml.org,2002:omap":Mfi.omap,"tag:yaml.org,2002:pairs":Hfi.pairs,"tag:yaml.org,2002:set":Yfi.set,"tag:yaml.org,2002:timestamp":k0t.timestamp};function FGa(e,t){let r=Lfi.get(t);if(!r)if(Array.isArray(e))r=[];else{let n=Array.from(Lfi.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${n} or define customTags array`)}if(Array.isArray(e))for(let n of e)r=r.concat(n);else typeof e=="function"&&(r=e(r.slice()));return r.map(n=>{if(typeof n!="string")return n;let a=Vfi[n];if(a)return a;let o=Object.keys(Vfi).map(l=>JSON.stringify(l)).join(", ");throw new Error(`Unknown custom tag "${n}"; use one of ${o}`)})}lBr.coreKnownTags=GGa;lBr.getTags=FGa});var ABr=H(Xfi=>{"use strict";var uBr=b0(),ZGa=IRe(),LGa=hRe(),VGa=xXe(),x0t=Qfi(),WGa=(e,t)=>e.keyt.key?1:0,gBr=class e{constructor({compat:t,customTags:r,merge:n,resolveKnownTags:a,schema:o,sortMapEntries:l,toStringDefaults:A}){this.compat=Array.isArray(t)?x0t.getTags(t,"compat"):t?x0t.getTags(null,t):null,this.merge=!!n,this.name=typeof o=="string"&&o||"core",this.knownTags=a?x0t.coreKnownTags:{},this.tags=x0t.getTags(r,this.name),this.toStringOptions=A??null,Object.defineProperty(this,uBr.MAP,{value:ZGa.map}),Object.defineProperty(this,uBr.SCALAR,{value:VGa.string}),Object.defineProperty(this,uBr.SEQ,{value:LGa.seq}),this.sortMapEntries=typeof l=="function"?l:l===!0?WGa:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};Xfi.Schema=gBr});var Ufi=H(Jfi=>{"use strict";var OGa=b0(),dBr=NXe(),LXe=BXe();function PGa(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let f=e.directives.toString(e);f?(r.push(f),n=!0):e.directives.docStart&&(n=!0)}n&&r.push("---");let a=dBr.createStringifyContext(e,t),{commentString:o}=a.options;if(e.commentBefore){r.length!==1&&r.unshift("");let f=o(e.commentBefore);r.unshift(LXe.indentComment(f,""))}let l=!1,A=null;if(e.contents){if(OGa.isNode(e.contents)){if(e.contents.spaceBefore&&n&&r.push(""),e.contents.commentBefore){let C=o(e.contents.commentBefore);r.push(LXe.indentComment(C,""))}a.forceBlockIndent=!!e.comment,A=e.contents.comment}let f=A?void 0:()=>l=!0,I=dBr.stringify(e.contents,a,()=>A=null,f);A&&(I+=LXe.lineComment(I,"",o(A))),(I[0]==="|"||I[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${I}`:r.push(I)}else r.push(dBr.stringify(e.contents,a));if(e.directives?.docEnd)if(e.comment){let f=o(e.comment);f.includes(` +`)?(r.push("..."),r.push(LXe.indentComment(f,""))):r.push(`... ${f}`)}else r.push("...");else{let f=e.comment;f&&l&&(f=f.replace(/^\n+/,"")),f&&((!l||A)&&r[r.length-1]!==""&&r.push(""),r.push(LXe.indentComment(o(f),"")))}return r.join(` `)+` -`}Zfi.stringifyDocument=ZGa});var ZXe=H(Vfi=>{"use strict";var LGa=bXe(),yRe=o0t(),qM=y0(),VGa=Uae(),WGa=Yae(),OGa=uBr(),PGa=Lfi(),ABr=t0t(),MGa=Ivr(),HGa=EXe(),dBr=fvr(),pBr=class e{constructor(t,r,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,qM.NODE_TYPE,{value:qM.DOC});let a=null;typeof r=="function"||Array.isArray(r)?a=r:n===void 0&&r&&(n=r,r=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},n);this.options=o;let{version:l}=o;n?._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(l=this.directives.yaml.version)):this.directives=new dBr.Directives({version:l}),this.setSchema(l,n),this.contents=t===void 0?null:this.createNode(t,a,n)}clone(){let t=Object.create(e.prototype,{[qM.NODE_TYPE]:{value:qM.DOC}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=qM.isNode(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){bRe(this.contents)&&this.contents.add(t)}addIn(t,r){bRe(this.contents)&&this.contents.addIn(t,r)}createAlias(t,r){if(!t.anchor){let n=ABr.anchorNames(this);t.anchor=!r||n.has(r)?ABr.findNewAnchor(r||"a",n):r}return new LGa.Alias(t.anchor)}createNode(t,r,n){let a;if(typeof r=="function")t=r.call({"":t},"",t),a=r;else if(Array.isArray(r)){let Q=ae=>typeof ae=="number"||ae instanceof String||ae instanceof Number,J=r.filter(Q).map(String);J.length>0&&(r=r.concat(J)),a=r}else n===void 0&&r&&(n=r,r=void 0);let{aliasDuplicateObjects:o,anchorPrefix:l,flow:A,keepUndefined:f,onTagObj:I,tag:C}=n??{},{onAnchor:b,setAnchors:E,sourceObjects:N}=ABr.createNodeAnchors(this,l||"a"),B={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:b,onTagObj:I,replacer:a,schema:this.schema,sourceObjects:N},F=HGa.createNode(t,C,B);return A&&qM.isCollection(F)&&(F.flow=!0),E(),F}createPair(t,r,n={}){let a=this.createNode(t,null,n),o=this.createNode(r,null,n);return new VGa.Pair(a,o)}delete(t){return bRe(this.contents)?this.contents.delete(t):!1}deleteIn(t){return yRe.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):bRe(this.contents)?this.contents.deleteIn(t):!1}get(t,r){return qM.isCollection(this.contents)?this.contents.get(t,r):void 0}getIn(t,r){return yRe.isEmptyPath(t)?!r&&qM.isScalar(this.contents)?this.contents.value:this.contents:qM.isCollection(this.contents)?this.contents.getIn(t,r):void 0}has(t){return qM.isCollection(this.contents)?this.contents.has(t):!1}hasIn(t){return yRe.isEmptyPath(t)?this.contents!==void 0:qM.isCollection(this.contents)?this.contents.hasIn(t):!1}set(t,r){this.contents==null?this.contents=yRe.collectionFromPath(this.schema,[t],r):bRe(this.contents)&&this.contents.set(t,r)}setIn(t,r){yRe.isEmptyPath(t)?this.contents=r:this.contents==null?this.contents=yRe.collectionFromPath(this.schema,Array.from(t),r):bRe(this.contents)&&this.contents.setIn(t,r)}setSchema(t,r={}){typeof t=="number"&&(t=String(t));let n;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new dBr.Directives({version:"1.1"}),n={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new dBr.Directives({version:t}),n={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,n=null;break;default:{let a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(n)this.schema=new OGa.Schema(Object.assign(n,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:r,mapAsMap:n,maxAliasCount:a,onAnchor:o,reviver:l}={}){let A={anchors:new Map,doc:this,keep:!t,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=WGa.toJS(this.contents,r??"",A);if(typeof o=="function")for(let{count:I,res:C}of A.anchors.values())o(C,I);return typeof l=="function"?MGa.applyReviver(l,{"":f},"",f):f}toJSON(t,r){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:r})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){let r=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return PGa.stringifyDocument(this,t)}};function bRe(e){if(qM.isCollection(e))return!0;throw new Error("Expected a YAML collection as document contents")}Vfi.Document=pBr});var WXe=H(VXe=>{"use strict";var LXe=class extends Error{constructor(t,r,n,a){super(),this.name=t,this.code=n,this.message=a,this.pos=r}},fBr=class extends LXe{constructor(t,r,n){super("YAMLParseError",t,r,n)}},IBr=class extends LXe{constructor(t,r,n){super("YAMLWarning",t,r,n)}},YGa=(e,t)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(A=>t.linePos(A));let{line:n,col:a}=r.linePos[0];r.message+=` at line ${n}, column ${a}`;let o=a-1,l=e.substring(t.lineStarts[n-1],t.lineStarts[n]).replace(/[\n\r]+$/,"");if(o>=60&&l.length>80){let A=Math.min(o-39,l.length-79);l="\u2026"+l.substring(A),o-=A-1}if(l.length>80&&(l=l.substring(0,79)+"\u2026"),n>1&&/^ *$/.test(l.substring(0,o))){let A=e.substring(t.lineStarts[n-2],t.lineStarts[n-1]);A.length>80&&(A=A.substring(0,79)+`\u2026 +`}Jfi.stringifyDocument=PGa});var VXe=H(Kfi=>{"use strict";var MGa=SXe(),CRe=i0t(),$M=b0(),HGa=Kae(),YGa=Qae(),QGa=ABr(),XGa=Ufi(),pBr=$_t(),JGa=mvr(),UGa=vXe(),fBr=hvr(),IBr=class e{constructor(t,r,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,$M.NODE_TYPE,{value:$M.DOC});let a=null;typeof r=="function"||Array.isArray(r)?a=r:n===void 0&&r&&(n=r,r=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},n);this.options=o;let{version:l}=o;n?._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(l=this.directives.yaml.version)):this.directives=new fBr.Directives({version:l}),this.setSchema(l,n),this.contents=t===void 0?null:this.createNode(t,a,n)}clone(){let t=Object.create(e.prototype,{[$M.NODE_TYPE]:{value:$M.DOC}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=$M.isNode(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){_Re(this.contents)&&this.contents.add(t)}addIn(t,r){_Re(this.contents)&&this.contents.addIn(t,r)}createAlias(t,r){if(!t.anchor){let n=pBr.anchorNames(this);t.anchor=!r||n.has(r)?pBr.findNewAnchor(r||"a",n):r}return new MGa.Alias(t.anchor)}createNode(t,r,n){let a;if(typeof r=="function")t=r.call({"":t},"",t),a=r;else if(Array.isArray(r)){let Q=ae=>typeof ae=="number"||ae instanceof String||ae instanceof Number,J=r.filter(Q).map(String);J.length>0&&(r=r.concat(J)),a=r}else n===void 0&&r&&(n=r,r=void 0);let{aliasDuplicateObjects:o,anchorPrefix:l,flow:A,keepUndefined:f,onTagObj:I,tag:C}=n??{},{onAnchor:b,setAnchors:E,sourceObjects:N}=pBr.createNodeAnchors(this,l||"a"),B={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:b,onTagObj:I,replacer:a,schema:this.schema,sourceObjects:N},F=UGa.createNode(t,C,B);return A&&$M.isCollection(F)&&(F.flow=!0),E(),F}createPair(t,r,n={}){let a=this.createNode(t,null,n),o=this.createNode(r,null,n);return new HGa.Pair(a,o)}delete(t){return _Re(this.contents)?this.contents.delete(t):!1}deleteIn(t){return CRe.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):_Re(this.contents)?this.contents.deleteIn(t):!1}get(t,r){return $M.isCollection(this.contents)?this.contents.get(t,r):void 0}getIn(t,r){return CRe.isEmptyPath(t)?!r&&$M.isScalar(this.contents)?this.contents.value:this.contents:$M.isCollection(this.contents)?this.contents.getIn(t,r):void 0}has(t){return $M.isCollection(this.contents)?this.contents.has(t):!1}hasIn(t){return CRe.isEmptyPath(t)?this.contents!==void 0:$M.isCollection(this.contents)?this.contents.hasIn(t):!1}set(t,r){this.contents==null?this.contents=CRe.collectionFromPath(this.schema,[t],r):_Re(this.contents)&&this.contents.set(t,r)}setIn(t,r){CRe.isEmptyPath(t)?this.contents=r:this.contents==null?this.contents=CRe.collectionFromPath(this.schema,Array.from(t),r):_Re(this.contents)&&this.contents.setIn(t,r)}setSchema(t,r={}){typeof t=="number"&&(t=String(t));let n;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new fBr.Directives({version:"1.1"}),n={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new fBr.Directives({version:t}),n={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,n=null;break;default:{let a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(n)this.schema=new QGa.Schema(Object.assign(n,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:r,mapAsMap:n,maxAliasCount:a,onAnchor:o,reviver:l}={}){let A={anchors:new Map,doc:this,keep:!t,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=YGa.toJS(this.contents,r??"",A);if(typeof o=="function")for(let{count:I,res:C}of A.anchors.values())o(C,I);return typeof l=="function"?JGa.applyReviver(l,{"":f},"",f):f}toJSON(t,r){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:r})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){let r=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return XGa.stringifyDocument(this,t)}};function _Re(e){if($M.isCollection(e))return!0;throw new Error("Expected a YAML collection as document contents")}Kfi.Document=IBr});var PXe=H(OXe=>{"use strict";var WXe=class extends Error{constructor(t,r,n,a){super(),this.name=t,this.code=n,this.message=a,this.pos=r}},hBr=class extends WXe{constructor(t,r,n){super("YAMLParseError",t,r,n)}},mBr=class extends WXe{constructor(t,r,n){super("YAMLWarning",t,r,n)}},KGa=(e,t)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(A=>t.linePos(A));let{line:n,col:a}=r.linePos[0];r.message+=` at line ${n}, column ${a}`;let o=a-1,l=e.substring(t.lineStarts[n-1],t.lineStarts[n]).replace(/[\n\r]+$/,"");if(o>=60&&l.length>80){let A=Math.min(o-39,l.length-79);l="\u2026"+l.substring(A),o-=A-1}if(l.length>80&&(l=l.substring(0,79)+"\u2026"),n>1&&/^ *$/.test(l.substring(0,o))){let A=e.substring(t.lineStarts[n-2],t.lineStarts[n-1]);A.length>80&&(A=A.substring(0,79)+`\u2026 `),l=A+l}if(/[^ ]/.test(l)){let A=1,f=r.linePos[1];f&&f.line===n&&f.col>a&&(A=Math.max(1,Math.min(f.col-a,80-o)));let I=" ".repeat(o)+"^".repeat(A);r.message+=`: ${l} ${I} -`}};VXe.YAMLError=LXe;VXe.YAMLParseError=fBr;VXe.YAMLWarning=IBr;VXe.prettifyError=YGa});var OXe=H(Wfi=>{"use strict";function QGa(e,{flow:t,indicator:r,next:n,offset:a,onError:o,parentIndent:l,startOnNewline:A}){let f=!1,I=A,C=A,b="",E="",N=!1,B=!1,F=null,Q=null,J=null,ae=null,ne=null,ce=null,fe=null;for(let be of e)switch(B&&(be.type!=="space"&&be.type!=="newline"&&be.type!=="comma"&&o(be.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),B=!1),F&&(I&&be.type!=="comment"&&be.type!=="newline"&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),F=null),be.type){case"space":!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&be.source.includes(" ")&&(F=be),C=!0;break;case"comment":{C||o(be,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Se=be.source.substring(1)||" ";b?b+=E+Se:b=Se,E="",I=!1;break}case"newline":I?b?b+=be.source:f=!0:E+=be.source,I=!0,N=!0,(Q||J)&&(ae=be),C=!0;break;case"anchor":Q&&o(be,"MULTIPLE_ANCHORS","A node can have at most one anchor"),be.source.endsWith(":")&&o(be.offset+be.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),Q=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break;case"tag":{J&&o(be,"MULTIPLE_TAGS","A node can have at most one tag"),J=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break}case r:(Q||J)&&o(be,"BAD_PROP_ORDER",`Anchors and tags must be after the ${be.source} indicator`),ce&&o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.source} in ${t??"collection"}`),ce=be,I=r==="seq-item-ind"||r==="explicit-key-ind",C=!1;break;case"comma":if(t){ne&&o(be,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),ne=be,I=!1,C=!1;break}default:o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.type} token`),I=!1,C=!1}let ue=e[e.length-1],de=ue?ue.offset+ue.source.length:a;return B&&n&&n.type!=="space"&&n.type!=="newline"&&n.type!=="comma"&&(n.type!=="scalar"||n.source!=="")&&o(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),F&&(I&&F.indent<=l||n?.type==="block-map"||n?.type==="block-seq")&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:ne,found:ce,spaceBefore:f,comment:b,hasNewline:N,anchor:Q,tag:J,newlineAfterProp:ae,end:de,start:fe??de}}Wfi.resolveProps=QGa});var Z0t=H(Ofi=>{"use strict";function hBr(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` -`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(hBr(t.key)||hBr(t.value))return!0}return!1;default:return!0}}Ofi.containsNewline=hBr});var mBr=H(Pfi=>{"use strict";var XGa=Z0t();function JGa(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];n.indent===e&&(n.source==="]"||n.source==="}")&&XGa.containsNewline(t)&&r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}Pfi.flowIndentCheck=JGa});var CBr=H(Hfi=>{"use strict";var Mfi=y0();function UGa(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let a=typeof n=="function"?n:(o,l)=>o===l||Mfi.isScalar(o)&&Mfi.isScalar(l)&&o.value===l.value&&!(o.value==="<<"&&e.schema.merge);return t.some(o=>a(o.key,r))}Hfi.mapIncludes=UGa});var Kfi=H(Ufi=>{"use strict";var Yfi=Uae(),KGa=jae(),Qfi=OXe(),jGa=Z0t(),Xfi=mBr(),zGa=CBr(),Jfi="All mapping items must start at the same column";function qGa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??KGa.YAMLMap,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let C of n.items){let{start:b,key:E,sep:N,value:B}=C,F=Qfi.resolveProps(b,{indicator:"explicit-key-ind",next:E??N?.[0],offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0}),Q=!F.found;if(Q){if(E&&(E.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in E&&E.indent!==n.indent&&a(f,"BAD_INDENT",Jfi)),!F.anchor&&!F.tag&&!N){I=F.end,F.comment&&(A.comment?A.comment+=` -`+F.comment:A.comment=F.comment);continue}(F.newlineAfterProp||jGa.containsNewline(E))&&a(E??b[b.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else F.found?.indent!==n.indent&&a(f,"BAD_INDENT",Jfi);let J=F.end,ae=E?e(r,E,F,a):t(r,J,b,null,F,a);r.schema.compat&&Xfi.flowIndentCheck(n.indent,E,a),zGa.mapIncludes(r,A.items,ae)&&a(J,"DUPLICATE_KEY","Map keys must be unique");let ne=Qfi.resolveProps(N??[],{indicator:"map-value-ind",next:B,offset:ae.range[2],onError:a,parentIndent:n.indent,startOnNewline:!E||E.type==="block-scalar"});if(f=ne.end,ne.found){Q&&(B?.type==="block-map"&&!ne.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&F.start{"use strict";var $Ga=zae(),eFa=OXe(),tFa=mBr();function rFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??$Ga.YAMLSeq,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let{start:C,value:b}of n.items){let E=eFa.resolveProps(C,{indicator:"seq-item-ind",next:b,offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0});if(!E.found)if(E.anchor||E.tag||b)b&&b.type==="block-seq"?a(E.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{I=E.end,E.comment&&(A.comment=E.comment);continue}let N=b?e(r,b,E,a):t(r,E.end,C,null,E,a);r.schema.compat&&tFa.flowIndentCheck(n.indent,b,a),f=N.range[2],A.items.push(N)}return A.range=[n.offset,f,I??f],A}jfi.resolveBlockSeq=rFa});var ERe=H(qfi=>{"use strict";function nFa(e,t,r,n){let a="";if(e){let o=!1,l="";for(let A of e){let{source:f,type:I}=A;switch(I){case"space":o=!0;break;case"comment":{r&&!o&&n(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let C=f.substring(1)||" ";a?a+=l+C:a=C,l="";break}case"newline":a&&(l+=f),o=!0;break;default:n(A,"UNEXPECTED_TOKEN",`Unexpected ${I} at node end`)}t+=f.length}}return{comment:a,offset:t}}qfi.resolveEnd=nFa});var rIi=H(tIi=>{"use strict";var iFa=y0(),sFa=Uae(),$fi=jae(),oFa=zae(),aFa=ERe(),eIi=OXe(),cFa=Z0t(),lFa=CBr(),_Br="Block collections are not allowed within flow collections",yBr=e=>e&&(e.type==="block-map"||e.type==="block-seq");function uFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=n.start.source==="{",A=l?"flow map":"flow sequence",f=o?.nodeClass??(l?$fi.YAMLMap:oFa.YAMLSeq),I=new f(r.schema);I.flow=!0;let C=r.atRoot;C&&(r.atRoot=!1);let b=n.offset+n.start.source.length;for(let Q=0;Q0){let Q=aFa.resolveEnd(B,F,r.options.strict,a);Q.comment&&(I.comment?I.comment+=` -`+Q.comment:I.comment=Q.comment),I.range=[n.offset,F,Q.offset]}else I.range=[n.offset,F,F];return I}tIi.resolveFlowCollection=uFa});var iIi=H(nIi=>{"use strict";var gFa=y0(),AFa=IT(),dFa=jae(),pFa=zae(),fFa=Kfi(),IFa=zfi(),hFa=rIi();function bBr(e,t,r,n,a,o){let l=r.type==="block-map"?fFa.resolveBlockMap(e,t,r,n,o):r.type==="block-seq"?IFa.resolveBlockSeq(e,t,r,n,o):hFa.resolveFlowCollection(e,t,r,n,o),A=l.constructor;return a==="!"||a===A.tagName?(l.tag=A.tagName,l):(a&&(l.tag=a),l)}function mFa(e,t,r,n,a){let o=n.tag,l=o?t.directives.tagName(o.source,E=>a(o,"TAG_RESOLVE_FAILED",E)):null;if(r.type==="block-seq"){let{anchor:E,newlineAfterProp:N}=n,B=E&&o?E.offset>o.offset?E:o:E??o;B&&(!N||N.offsetE.tag===l&&E.collection===A);if(!f){let E=t.schema.knownTags[l];if(E&&E.collection===A)t.schema.tags.push(Object.assign({},E,{default:!1})),f=E;else return E?.collection?a(o,"BAD_COLLECTION_TYPE",`${E.tag} used for ${A} collection, but expects ${E.collection}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${l}`,!0),bBr(e,t,r,a,l)}let I=bBr(e,t,r,a,l,f),C=f.resolve?.(I,E=>a(o,"TAG_RESOLVE_FAILED",E),t.options)??I,b=gFa.isNode(C)?C:new AFa.Scalar(C);return b.range=I.range,b.tag=l,f?.format&&(b.format=f.format),b}nIi.composeCollection=mFa});var SBr=H(sIi=>{"use strict";var EBr=IT();function CFa(e,t,r){let n=t.offset,a=_Fa(t,e.options.strict,r);if(!a)return{value:"",type:null,comment:"",range:[n,n,n]};let o=a.mode===">"?EBr.Scalar.BLOCK_FOLDED:EBr.Scalar.BLOCK_LITERAL,l=t.source?yFa(t.source):[],A=l.length;for(let F=l.length-1;F>=0;--F){let Q=l[F][1];if(Q===""||Q==="\r")A=F;else break}if(A===0){let F=a.chomp==="+"&&l.length>0?` +`}};OXe.YAMLError=WXe;OXe.YAMLParseError=hBr;OXe.YAMLWarning=mBr;OXe.prettifyError=KGa});var MXe=H(jfi=>{"use strict";function jGa(e,{flow:t,indicator:r,next:n,offset:a,onError:o,parentIndent:l,startOnNewline:A}){let f=!1,I=A,C=A,b="",E="",N=!1,B=!1,F=null,Q=null,J=null,ae=null,ne=null,ce=null,fe=null;for(let be of e)switch(B&&(be.type!=="space"&&be.type!=="newline"&&be.type!=="comma"&&o(be.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),B=!1),F&&(I&&be.type!=="comment"&&be.type!=="newline"&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),F=null),be.type){case"space":!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&be.source.includes(" ")&&(F=be),C=!0;break;case"comment":{C||o(be,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Se=be.source.substring(1)||" ";b?b+=E+Se:b=Se,E="",I=!1;break}case"newline":I?b?b+=be.source:f=!0:E+=be.source,I=!0,N=!0,(Q||J)&&(ae=be),C=!0;break;case"anchor":Q&&o(be,"MULTIPLE_ANCHORS","A node can have at most one anchor"),be.source.endsWith(":")&&o(be.offset+be.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),Q=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break;case"tag":{J&&o(be,"MULTIPLE_TAGS","A node can have at most one tag"),J=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break}case r:(Q||J)&&o(be,"BAD_PROP_ORDER",`Anchors and tags must be after the ${be.source} indicator`),ce&&o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.source} in ${t??"collection"}`),ce=be,I=r==="seq-item-ind"||r==="explicit-key-ind",C=!1;break;case"comma":if(t){ne&&o(be,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),ne=be,I=!1,C=!1;break}default:o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.type} token`),I=!1,C=!1}let ue=e[e.length-1],de=ue?ue.offset+ue.source.length:a;return B&&n&&n.type!=="space"&&n.type!=="newline"&&n.type!=="comma"&&(n.type!=="scalar"||n.source!=="")&&o(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),F&&(I&&F.indent<=l||n?.type==="block-map"||n?.type==="block-seq")&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:ne,found:ce,spaceBefore:f,comment:b,hasNewline:N,anchor:Q,tag:J,newlineAfterProp:ae,end:de,start:fe??de}}jfi.resolveProps=jGa});var G0t=H(zfi=>{"use strict";function CBr(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` +`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(CBr(t.key)||CBr(t.value))return!0}return!1;default:return!0}}zfi.containsNewline=CBr});var _Br=H(qfi=>{"use strict";var zGa=G0t();function qGa(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];n.indent===e&&(n.source==="]"||n.source==="}")&&zGa.containsNewline(t)&&r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}qfi.flowIndentCheck=qGa});var yBr=H(eIi=>{"use strict";var $fi=b0();function $Ga(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let a=typeof n=="function"?n:(o,l)=>o===l||$fi.isScalar(o)&&$fi.isScalar(l)&&o.value===l.value&&!(o.value==="<<"&&e.schema.merge);return t.some(o=>a(o.key,r))}eIi.mapIncludes=$Ga});var oIi=H(sIi=>{"use strict";var tIi=Kae(),eFa=zae(),rIi=MXe(),tFa=G0t(),nIi=_Br(),rFa=yBr(),iIi="All mapping items must start at the same column";function nFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??eFa.YAMLMap,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let C of n.items){let{start:b,key:E,sep:N,value:B}=C,F=rIi.resolveProps(b,{indicator:"explicit-key-ind",next:E??N?.[0],offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0}),Q=!F.found;if(Q){if(E&&(E.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in E&&E.indent!==n.indent&&a(f,"BAD_INDENT",iIi)),!F.anchor&&!F.tag&&!N){I=F.end,F.comment&&(A.comment?A.comment+=` +`+F.comment:A.comment=F.comment);continue}(F.newlineAfterProp||tFa.containsNewline(E))&&a(E??b[b.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else F.found?.indent!==n.indent&&a(f,"BAD_INDENT",iIi);let J=F.end,ae=E?e(r,E,F,a):t(r,J,b,null,F,a);r.schema.compat&&nIi.flowIndentCheck(n.indent,E,a),rFa.mapIncludes(r,A.items,ae)&&a(J,"DUPLICATE_KEY","Map keys must be unique");let ne=rIi.resolveProps(N??[],{indicator:"map-value-ind",next:B,offset:ae.range[2],onError:a,parentIndent:n.indent,startOnNewline:!E||E.type==="block-scalar"});if(f=ne.end,ne.found){Q&&(B?.type==="block-map"&&!ne.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&F.start{"use strict";var iFa=qae(),sFa=MXe(),oFa=_Br();function aFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??iFa.YAMLSeq,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let{start:C,value:b}of n.items){let E=sFa.resolveProps(C,{indicator:"seq-item-ind",next:b,offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0});if(!E.found)if(E.anchor||E.tag||b)b&&b.type==="block-seq"?a(E.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{I=E.end,E.comment&&(A.comment=E.comment);continue}let N=b?e(r,b,E,a):t(r,E.end,C,null,E,a);r.schema.compat&&oFa.flowIndentCheck(n.indent,b,a),f=N.range[2],A.items.push(N)}return A.range=[n.offset,f,I??f],A}aIi.resolveBlockSeq=aFa});var yRe=H(lIi=>{"use strict";function cFa(e,t,r,n){let a="";if(e){let o=!1,l="";for(let A of e){let{source:f,type:I}=A;switch(I){case"space":o=!0;break;case"comment":{r&&!o&&n(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let C=f.substring(1)||" ";a?a+=l+C:a=C,l="";break}case"newline":a&&(l+=f),o=!0;break;default:n(A,"UNEXPECTED_TOKEN",`Unexpected ${I} at node end`)}t+=f.length}}return{comment:a,offset:t}}lIi.resolveEnd=cFa});var dIi=H(AIi=>{"use strict";var lFa=b0(),uFa=Kae(),uIi=zae(),gFa=qae(),AFa=yRe(),gIi=MXe(),dFa=G0t(),pFa=yBr(),bBr="Block collections are not allowed within flow collections",EBr=e=>e&&(e.type==="block-map"||e.type==="block-seq");function fFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=n.start.source==="{",A=l?"flow map":"flow sequence",f=o?.nodeClass??(l?uIi.YAMLMap:gFa.YAMLSeq),I=new f(r.schema);I.flow=!0;let C=r.atRoot;C&&(r.atRoot=!1);let b=n.offset+n.start.source.length;for(let Q=0;Q0){let Q=AFa.resolveEnd(B,F,r.options.strict,a);Q.comment&&(I.comment?I.comment+=` +`+Q.comment:I.comment=Q.comment),I.range=[n.offset,F,Q.offset]}else I.range=[n.offset,F,F];return I}AIi.resolveFlowCollection=fFa});var fIi=H(pIi=>{"use strict";var IFa=b0(),hFa=hT(),mFa=zae(),CFa=qae(),_Fa=oIi(),yFa=cIi(),bFa=dIi();function SBr(e,t,r,n,a,o){let l=r.type==="block-map"?_Fa.resolveBlockMap(e,t,r,n,o):r.type==="block-seq"?yFa.resolveBlockSeq(e,t,r,n,o):bFa.resolveFlowCollection(e,t,r,n,o),A=l.constructor;return a==="!"||a===A.tagName?(l.tag=A.tagName,l):(a&&(l.tag=a),l)}function EFa(e,t,r,n,a){let o=n.tag,l=o?t.directives.tagName(o.source,E=>a(o,"TAG_RESOLVE_FAILED",E)):null;if(r.type==="block-seq"){let{anchor:E,newlineAfterProp:N}=n,B=E&&o?E.offset>o.offset?E:o:E??o;B&&(!N||N.offsetE.tag===l&&E.collection===A);if(!f){let E=t.schema.knownTags[l];if(E&&E.collection===A)t.schema.tags.push(Object.assign({},E,{default:!1})),f=E;else return E?.collection?a(o,"BAD_COLLECTION_TYPE",`${E.tag} used for ${A} collection, but expects ${E.collection}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${l}`,!0),SBr(e,t,r,a,l)}let I=SBr(e,t,r,a,l,f),C=f.resolve?.(I,E=>a(o,"TAG_RESOLVE_FAILED",E),t.options)??I,b=IFa.isNode(C)?C:new hFa.Scalar(C);return b.range=I.range,b.tag=l,f?.format&&(b.format=f.format),b}pIi.composeCollection=EFa});var BBr=H(IIi=>{"use strict";var vBr=hT();function SFa(e,t,r){let n=t.offset,a=vFa(t,e.options.strict,r);if(!a)return{value:"",type:null,comment:"",range:[n,n,n]};let o=a.mode===">"?vBr.Scalar.BLOCK_FOLDED:vBr.Scalar.BLOCK_LITERAL,l=t.source?BFa(t.source):[],A=l.length;for(let F=l.length-1;F>=0;--F){let Q=l[F][1];if(Q===""||Q==="\r")A=F;else break}if(A===0){let F=a.chomp==="+"&&l.length>0?` `.repeat(Math.max(1,l.length-1)):"",Q=n+a.length;return t.source&&(Q+=t.source.length),{value:F,type:o,comment:a.comment,range:[n,Q,Q]}}let f=t.indent+a.indent,I=t.offset+a.length,C=0;for(let F=0;Ff&&(f=Q.length);else{Q.length=A;--F)l[F][0].length>f&&(A=F+1);let b="",E="",N=!1;for(let F=0;Ff||J[0]===" "?(E===" "?E=` `:!N&&E===` `&&(E=` @@ -557,120 +557,120 @@ ${I} `+l[F][0].slice(f);b[b.length-1]!==` `&&(b+=` `);break;default:b+=` -`}let B=n+a.length+t.source.length;return{value:b,type:o,comment:a.comment,range:[n,B,B]}}function _Fa({offset:e,props:t},r,n){if(t[0].type!=="block-scalar-header")return n(t[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:a}=t[0],o=a[0],l=0,A="",f=-1;for(let E=1;E{"use strict";var vBr=IT(),bFa=ERe();function EFa(e,t,r){let{offset:n,type:a,source:o,end:l}=e,A,f,I=(E,N,B)=>r(n+E,N,B);switch(a){case"scalar":A=vBr.Scalar.PLAIN,f=SFa(o,I);break;case"single-quoted-scalar":A=vBr.Scalar.QUOTE_SINGLE,f=vFa(o,I);break;case"double-quoted-scalar":A=vBr.Scalar.QUOTE_DOUBLE,f=BFa(o,I);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[n,n+o.length,n+o.length]}}let C=n+o.length,b=bFa.resolveEnd(l,C,t,r);return{value:f,type:A,comment:b.comment,range:[n,C,b.offset]}}function SFa(e,t){let r="";switch(e[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}return r&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),oIi(e)}function vFa(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),oIi(e.slice(1,-1)).replace(/''/g,"'")}function oIi(e){let t,r;try{t=new RegExp(`(.*?)(?{"use strict";var wBr=hT(),wFa=yRe();function TFa(e,t,r){let{offset:n,type:a,source:o,end:l}=e,A,f,I=(E,N,B)=>r(n+E,N,B);switch(a){case"scalar":A=wBr.Scalar.PLAIN,f=RFa(o,I);break;case"single-quoted-scalar":A=wBr.Scalar.QUOTE_SINGLE,f=NFa(o,I);break;case"double-quoted-scalar":A=wBr.Scalar.QUOTE_DOUBLE,f=DFa(o,I);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[n,n+o.length,n+o.length]}}let C=n+o.length,b=wFa.resolveEnd(l,C,t,r);return{value:f,type:A,comment:b.comment,range:[n,C,b.offset]}}function RFa(e,t){let r="";switch(e[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}return r&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),hIi(e)}function NFa(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),hIi(e.slice(1,-1)).replace(/''/g,"'")}function hIi(e){let t,r;try{t=new RegExp(`(.*?)(?o?e.slice(o,n+1):a)}else r+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),r}function wFa(e,t){let r="",n=e[t+1];for(;(n===" "||n===" "||n===` +`)&&(r+=n>o?e.slice(o,n+1):a)}else r+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),r}function kFa(e,t){let r="",n=e[t+1];for(;(n===" "||n===" "||n===` `||n==="\r")&&!(n==="\r"&&e[t+2]!==` `);)n===` `&&(r+=` -`),t+=1,n=e[t+1];return r||(r=" "),{fold:r,offset:t}}var TFa={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` -`,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function RFa(e,t,r,n){let a=e.substr(t,r),l=a.length===r&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;if(isNaN(l)){let A=e.substr(t-2,r+2);return n(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${A}`),A}return String.fromCodePoint(l)}aIi.resolveFlowScalar=EFa});var uIi=H(lIi=>{"use strict";var SRe=y0(),cIi=IT(),NFa=SBr(),DFa=BBr();function kFa(e,t,r,n){let{value:a,type:o,comment:l,range:A}=t.type==="block-scalar"?NFa.resolveBlockScalar(e,t,n):DFa.resolveFlowScalar(t,e.options.strict,n),f=r?e.directives.tagName(r.source,b=>n(r,"TAG_RESOLVE_FAILED",b)):null,I=r&&f?xFa(e.schema,a,f,r,n):t.type==="scalar"?GFa(e,a,t,n):e.schema[SRe.SCALAR],C;try{let b=I.resolve(a,E=>n(r??t,"TAG_RESOLVE_FAILED",E),e.options);C=SRe.isScalar(b)?b:new cIi.Scalar(b)}catch(b){let E=b instanceof Error?b.message:String(b);n(r??t,"TAG_RESOLVE_FAILED",E),C=new cIi.Scalar(a)}return C.range=A,C.source=a,o&&(C.type=o),f&&(C.tag=f),I.format&&(C.format=I.format),l&&(C.comment=l),C}function xFa(e,t,r,n,a){if(r==="!")return e[SRe.SCALAR];let o=[];for(let A of e.tags)if(!A.collection&&A.tag===r)if(A.default&&A.test)o.push(A);else return A;for(let A of o)if(A.test?.test(t))return A;let l=e.knownTags[r];return l&&!l.collection?(e.tags.push(Object.assign({},l,{default:!1,test:void 0})),l):(a(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[SRe.SCALAR])}function GFa({directives:e,schema:t},r,n,a){let o=t.tags.find(l=>l.default&&l.test?.test(r))||t[SRe.SCALAR];if(t.compat){let l=t.compat.find(A=>A.default&&A.test?.test(r))??t[SRe.SCALAR];if(o.tag!==l.tag){let A=e.tagString(o.tag),f=e.tagString(l.tag),I=`Value may be parsed as either ${A} or ${f}`;a(n,"TAG_RESOLVE_FAILED",I,!0)}}return o}lIi.composeScalar=kFa});var AIi=H(gIi=>{"use strict";function FFa(e,t,r){if(t){r===null&&(r=t.length);for(let n=r-1;n>=0;--n){let a=t[n];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++n];a?.type==="space";)e+=a.source.length,a=t[++n];break}}return e}gIi.emptyScalarPosition=FFa});var fIi=H(TBr=>{"use strict";var ZFa=bXe(),LFa=iIi(),dIi=uIi(),VFa=ERe(),WFa=AIi(),OFa={composeNode:pIi,composeEmptyNode:wBr};function pIi(e,t,r,n){let{spaceBefore:a,comment:o,anchor:l,tag:A}=r,f,I=!0;switch(t.type){case"alias":f=PFa(e,t,n),(l||A)&&n(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":f=dIi.composeScalar(e,t,A,n),l&&(f.anchor=l.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":f=LFa.composeCollection(OFa,e,t,r,n),l&&(f.anchor=l.source.substring(1));break;default:{let C=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;n(t,"UNEXPECTED_TOKEN",C),f=wBr(e,t.offset,void 0,null,r,n),I=!1}}return l&&f.anchor===""&&n(l,"BAD_ALIAS","Anchor cannot be an empty string"),a&&(f.spaceBefore=!0),o&&(t.type==="scalar"&&t.source===""?f.comment=o:f.commentBefore=o),e.options.keepSourceTokens&&I&&(f.srcToken=t),f}function wBr(e,t,r,n,{spaceBefore:a,comment:o,anchor:l,tag:A,end:f},I){let C={type:"scalar",offset:WFa.emptyScalarPosition(t,r,n),indent:-1,source:""},b=dIi.composeScalar(e,C,A,I);return l&&(b.anchor=l.source.substring(1),b.anchor===""&&I(l,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(b.spaceBefore=!0),o&&(b.comment=o,b.range[2]=f),b}function PFa({options:e},{offset:t,source:r,end:n},a){let o=new ZFa.Alias(r.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let l=t+r.length,A=VFa.resolveEnd(n,l,e.strict,a);return o.range=[t,l,A.offset],A.comment&&(o.comment=A.comment),o}TBr.composeEmptyNode=wBr;TBr.composeNode=pIi});var mIi=H(hIi=>{"use strict";var MFa=ZXe(),IIi=fIi(),HFa=ERe(),YFa=OXe();function QFa(e,t,{offset:r,start:n,value:a,end:o},l){let A=Object.assign({_directives:t},e),f=new MFa.Document(void 0,A),I={atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},C=YFa.resolveProps(n,{indicator:"doc-start",next:a??o?.[0],offset:r,onError:l,parentIndent:0,startOnNewline:!0});C.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!C.hasNewline&&l(C.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?IIi.composeNode(I,a,C,l):IIi.composeEmptyNode(I,C.end,n,null,C,l);let b=f.contents.range[2],E=HFa.resolveEnd(o,b,!1,l);return E.comment&&(f.comment=E.comment),f.range=[r,b,E.offset],f}hIi.composeDoc=QFa});var NBr=H(yIi=>{"use strict";var XFa=fvr(),JFa=ZXe(),PXe=WXe(),CIi=y0(),UFa=mIi(),KFa=ERe();function MXe(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r=="string"?r.length:1)]}function _Ii(e){let t="",r=!1,n=!1;for(let a=0;a{"use strict";var bRe=b0(),CIi=hT(),FFa=BBr(),ZFa=TBr();function LFa(e,t,r,n){let{value:a,type:o,comment:l,range:A}=t.type==="block-scalar"?FFa.resolveBlockScalar(e,t,n):ZFa.resolveFlowScalar(t,e.options.strict,n),f=r?e.directives.tagName(r.source,b=>n(r,"TAG_RESOLVE_FAILED",b)):null,I=r&&f?VFa(e.schema,a,f,r,n):t.type==="scalar"?WFa(e,a,t,n):e.schema[bRe.SCALAR],C;try{let b=I.resolve(a,E=>n(r??t,"TAG_RESOLVE_FAILED",E),e.options);C=bRe.isScalar(b)?b:new CIi.Scalar(b)}catch(b){let E=b instanceof Error?b.message:String(b);n(r??t,"TAG_RESOLVE_FAILED",E),C=new CIi.Scalar(a)}return C.range=A,C.source=a,o&&(C.type=o),f&&(C.tag=f),I.format&&(C.format=I.format),l&&(C.comment=l),C}function VFa(e,t,r,n,a){if(r==="!")return e[bRe.SCALAR];let o=[];for(let A of e.tags)if(!A.collection&&A.tag===r)if(A.default&&A.test)o.push(A);else return A;for(let A of o)if(A.test?.test(t))return A;let l=e.knownTags[r];return l&&!l.collection?(e.tags.push(Object.assign({},l,{default:!1,test:void 0})),l):(a(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[bRe.SCALAR])}function WFa({directives:e,schema:t},r,n,a){let o=t.tags.find(l=>l.default&&l.test?.test(r))||t[bRe.SCALAR];if(t.compat){let l=t.compat.find(A=>A.default&&A.test?.test(r))??t[bRe.SCALAR];if(o.tag!==l.tag){let A=e.tagString(o.tag),f=e.tagString(l.tag),I=`Value may be parsed as either ${A} or ${f}`;a(n,"TAG_RESOLVE_FAILED",I,!0)}}return o}_Ii.composeScalar=LFa});var EIi=H(bIi=>{"use strict";function OFa(e,t,r){if(t){r===null&&(r=t.length);for(let n=r-1;n>=0;--n){let a=t[n];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++n];a?.type==="space";)e+=a.source.length,a=t[++n];break}}return e}bIi.emptyScalarPosition=OFa});var BIi=H(NBr=>{"use strict";var PFa=SXe(),MFa=fIi(),SIi=yIi(),HFa=yRe(),YFa=EIi(),QFa={composeNode:vIi,composeEmptyNode:RBr};function vIi(e,t,r,n){let{spaceBefore:a,comment:o,anchor:l,tag:A}=r,f,I=!0;switch(t.type){case"alias":f=XFa(e,t,n),(l||A)&&n(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":f=SIi.composeScalar(e,t,A,n),l&&(f.anchor=l.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":f=MFa.composeCollection(QFa,e,t,r,n),l&&(f.anchor=l.source.substring(1));break;default:{let C=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;n(t,"UNEXPECTED_TOKEN",C),f=RBr(e,t.offset,void 0,null,r,n),I=!1}}return l&&f.anchor===""&&n(l,"BAD_ALIAS","Anchor cannot be an empty string"),a&&(f.spaceBefore=!0),o&&(t.type==="scalar"&&t.source===""?f.comment=o:f.commentBefore=o),e.options.keepSourceTokens&&I&&(f.srcToken=t),f}function RBr(e,t,r,n,{spaceBefore:a,comment:o,anchor:l,tag:A,end:f},I){let C={type:"scalar",offset:YFa.emptyScalarPosition(t,r,n),indent:-1,source:""},b=SIi.composeScalar(e,C,A,I);return l&&(b.anchor=l.source.substring(1),b.anchor===""&&I(l,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(b.spaceBefore=!0),o&&(b.comment=o,b.range[2]=f),b}function XFa({options:e},{offset:t,source:r,end:n},a){let o=new PFa.Alias(r.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let l=t+r.length,A=HFa.resolveEnd(n,l,e.strict,a);return o.range=[t,l,A.offset],A.comment&&(o.comment=A.comment),o}NBr.composeEmptyNode=RBr;NBr.composeNode=vIi});var RIi=H(TIi=>{"use strict";var JFa=VXe(),wIi=BIi(),UFa=yRe(),KFa=MXe();function jFa(e,t,{offset:r,start:n,value:a,end:o},l){let A=Object.assign({_directives:t},e),f=new JFa.Document(void 0,A),I={atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},C=KFa.resolveProps(n,{indicator:"doc-start",next:a??o?.[0],offset:r,onError:l,parentIndent:0,startOnNewline:!0});C.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!C.hasNewline&&l(C.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?wIi.composeNode(I,a,C,l):wIi.composeEmptyNode(I,C.end,n,null,C,l);let b=f.contents.range[2],E=UFa.resolveEnd(o,b,!1,l);return E.comment&&(f.comment=E.comment),f.range=[r,b,E.offset],f}TIi.composeDoc=jFa});var kBr=H(kIi=>{"use strict";var zFa=hvr(),qFa=VXe(),HXe=PXe(),NIi=b0(),$Fa=RIi(),eZa=yRe();function YXe(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r=="string"?r.length:1)]}function DIi(e){let t="",r=!1,n=!1;for(let a=0;a{let l=MXe(r);o?this.warnings.push(new PXe.YAMLWarning(l,n,a)):this.errors.push(new PXe.YAMLParseError(l,n,a))},this.directives=new XFa.Directives({version:t.version||"1.2"}),this.options=t}decorate(t,r){let{comment:n,afterEmptyLine:a}=_Ii(this.prelude);if(n){let o=t.contents;if(r)t.comment=t.comment?`${t.comment} -${n}`:n;else if(a||t.directives.docStart||!o)t.commentBefore=n;else if(CIi.isCollection(o)&&!o.flow&&o.items.length>0){let l=o.items[0];CIi.isPair(l)&&(l=l.key);let A=l.commentBefore;l.commentBefore=A?`${n} +`)+(o.substring(1)||" "),r=!0,n=!1;break;case"%":e[a+1]?.[0]!=="#"&&(a+=1),r=!1;break;default:r||(n=!0),r=!1}}return{comment:t,afterEmptyLine:n}}var DBr=class{constructor(t={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(r,n,a,o)=>{let l=YXe(r);o?this.warnings.push(new HXe.YAMLWarning(l,n,a)):this.errors.push(new HXe.YAMLParseError(l,n,a))},this.directives=new zFa.Directives({version:t.version||"1.2"}),this.options=t}decorate(t,r){let{comment:n,afterEmptyLine:a}=DIi(this.prelude);if(n){let o=t.contents;if(r)t.comment=t.comment?`${t.comment} +${n}`:n;else if(a||t.directives.docStart||!o)t.commentBefore=n;else if(NIi.isCollection(o)&&!o.flow&&o.items.length>0){let l=o.items[0];NIi.isPair(l)&&(l=l.key);let A=l.commentBefore;l.commentBefore=A?`${n} ${A}`:n}else{let l=o.commentBefore;o.commentBefore=l?`${n} -${l}`:n}}r?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:_Ii(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,r=!1,n=-1){for(let a of t)yield*this.next(a);yield*this.end(r,n)}*next(t){switch(process.env.LOG_STREAM&&console.dir(t,{depth:null}),t.type){case"directive":this.directives.add(t.source,(r,n,a)=>{let o=MXe(t);o[0]+=r,this.onError(o,"BAD_DIRECTIVE",n,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{let r=UFa.composeDoc(this.options,this.directives,t,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{let r=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,n=new PXe.YAMLParseError(MXe(t),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(n):this.doc.errors.push(n);break}case"doc-end":{if(!this.doc){let n="Unexpected doc-end without preceding document";this.errors.push(new PXe.YAMLParseError(MXe(t),"UNEXPECTED_TOKEN",n));break}this.doc.directives.docEnd=!0;let r=KFa.resolveEnd(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let n=this.doc.comment;this.doc.comment=n?`${n} -${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new PXe.YAMLParseError(MXe(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){let n=Object.assign({_directives:this.directives},this.options),a=new JFa.Document(void 0,n);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,r,r],this.decorate(a,!1),yield a}}};yIi.Composer=RBr});var SIi=H(L0t=>{"use strict";var jFa=SBr(),zFa=BBr(),qFa=WXe(),bIi=wXe();function $Fa(e,t=!0,r){if(e){let n=(a,o,l)=>{let A=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(r)r(A,o,l);else throw new qFa.YAMLParseError([A,A+1],o,l)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return zFa.resolveFlowScalar(e,t,n);case"block-scalar":return jFa.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function eZa(e,t){let{implicitKey:r=!1,indent:n,inFlow:a=!1,offset:o=-1,type:l="PLAIN"}=t,A=bIi.stringifyString({type:l,value:e},{implicitKey:r,indent:n>0?" ".repeat(n):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:n,source:` +${l}`:n}}r?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:DIi(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,r=!1,n=-1){for(let a of t)yield*this.next(a);yield*this.end(r,n)}*next(t){switch(process.env.LOG_STREAM&&console.dir(t,{depth:null}),t.type){case"directive":this.directives.add(t.source,(r,n,a)=>{let o=YXe(t);o[0]+=r,this.onError(o,"BAD_DIRECTIVE",n,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{let r=$Fa.composeDoc(this.options,this.directives,t,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{let r=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,n=new HXe.YAMLParseError(YXe(t),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(n):this.doc.errors.push(n);break}case"doc-end":{if(!this.doc){let n="Unexpected doc-end without preceding document";this.errors.push(new HXe.YAMLParseError(YXe(t),"UNEXPECTED_TOKEN",n));break}this.doc.directives.docEnd=!0;let r=eZa.resolveEnd(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let n=this.doc.comment;this.doc.comment=n?`${n} +${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new HXe.YAMLParseError(YXe(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){let n=Object.assign({_directives:this.directives},this.options),a=new qFa.Document(void 0,n);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,r,r],this.decorate(a,!1),yield a}}};kIi.Composer=DBr});var FIi=H(F0t=>{"use strict";var tZa=BBr(),rZa=TBr(),nZa=PXe(),xIi=RXe();function iZa(e,t=!0,r){if(e){let n=(a,o,l)=>{let A=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(r)r(A,o,l);else throw new nZa.YAMLParseError([A,A+1],o,l)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return rZa.resolveFlowScalar(e,t,n);case"block-scalar":return tZa.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function sZa(e,t){let{implicitKey:r=!1,indent:n,inFlow:a=!1,offset:o=-1,type:l="PLAIN"}=t,A=xIi.stringifyString({type:l,value:e},{implicitKey:r,indent:n>0?" ".repeat(n):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:n,source:` `}];switch(A[0]){case"|":case">":{let I=A.indexOf(` `),C=A.substring(0,I),b=A.substring(I+1)+` -`,E=[{type:"block-scalar-header",offset:o,indent:n,source:C}];return EIi(E,f)||E.push({type:"newline",offset:-1,indent:n,source:` -`}),{type:"block-scalar",offset:o,indent:n,props:E,source:b}}case'"':return{type:"double-quoted-scalar",offset:o,indent:n,source:A,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:n,source:A,end:f};default:return{type:"scalar",offset:o,indent:n,source:A,end:f}}}function tZa(e,t,r={}){let{afterKey:n=!1,implicitKey:a=!1,inFlow:o=!1,type:l}=r,A="indent"in e?e.indent:null;if(n&&typeof A=="number"&&(A+=2),!l)switch(e.type){case"single-quoted-scalar":l="QUOTE_SINGLE";break;case"double-quoted-scalar":l="QUOTE_DOUBLE";break;case"block-scalar":{let I=e.props[0];if(I.type!=="block-scalar-header")throw new Error("Invalid block scalar header");l=I.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:l="PLAIN"}let f=bIi.stringifyString({type:l,value:t},{implicitKey:a||A===null,indent:A!==null&&A>0?" ".repeat(A):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":rZa(e,f);break;case'"':DBr(e,f,"double-quoted-scalar");break;case"'":DBr(e,f,"single-quoted-scalar");break;default:DBr(e,f,"scalar")}}function rZa(e,t){let r=t.indexOf(` +`,E=[{type:"block-scalar-header",offset:o,indent:n,source:C}];return GIi(E,f)||E.push({type:"newline",offset:-1,indent:n,source:` +`}),{type:"block-scalar",offset:o,indent:n,props:E,source:b}}case'"':return{type:"double-quoted-scalar",offset:o,indent:n,source:A,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:n,source:A,end:f};default:return{type:"scalar",offset:o,indent:n,source:A,end:f}}}function oZa(e,t,r={}){let{afterKey:n=!1,implicitKey:a=!1,inFlow:o=!1,type:l}=r,A="indent"in e?e.indent:null;if(n&&typeof A=="number"&&(A+=2),!l)switch(e.type){case"single-quoted-scalar":l="QUOTE_SINGLE";break;case"double-quoted-scalar":l="QUOTE_DOUBLE";break;case"block-scalar":{let I=e.props[0];if(I.type!=="block-scalar-header")throw new Error("Invalid block scalar header");l=I.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:l="PLAIN"}let f=xIi.stringifyString({type:l,value:t},{implicitKey:a||A===null,indent:A!==null&&A>0?" ".repeat(A):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":aZa(e,f);break;case'"':xBr(e,f,"double-quoted-scalar");break;case"'":xBr(e,f,"single-quoted-scalar");break;default:xBr(e,f,"scalar")}}function aZa(e,t){let r=t.indexOf(` `),n=t.substring(0,r),a=t.substring(r+1)+` -`;if(e.type==="block-scalar"){let o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=n,e.source=a}else{let{offset:o}=e,l="indent"in e?e.indent:-1,A=[{type:"block-scalar-header",offset:o,indent:l,source:n}];EIi(A,"end"in e?e.end:void 0)||A.push({type:"newline",offset:-1,indent:l,source:` -`});for(let f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:l,props:A,source:a})}}function EIi(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function DBr(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let n=e.props.slice(1),a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(let o of n)o.offset+=a;delete e.props,Object.assign(e,{type:r,source:t,end:n});break}case"block-map":case"block-seq":{let a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` -`};delete e.items,Object.assign(e,{type:r,source:t,end:[a]});break}default:{let n="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(let o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:r,indent:n,source:t,end:a})}}}L0t.createScalarToken=eZa;L0t.resolveAsScalar=$Fa;L0t.setScalarValue=tZa});var BIi=H(vIi=>{"use strict";var nZa=e=>"type"in e?W0t(e):V0t(e);function W0t(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=W0t(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=V0t(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=V0t(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=V0t(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function V0t({start:e,key:t,sep:r,value:n}){let a="";for(let o of e)a+=o.source;if(t&&(a+=W0t(t)),r)for(let o of r)a+=o.source;return n&&(a+=W0t(n)),a}vIi.stringify=nZa});var NIi=H(RIi=>{"use strict";var kBr=Symbol("break visit"),iZa=Symbol("skip children"),wIi=Symbol("remove item");function ame(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),TIi(Object.freeze([]),e,t)}ame.BREAK=kBr;ame.SKIP=iZa;ame.REMOVE=wIi;ame.itemAtPath=(e,t)=>{let r=e;for(let[n,a]of t){let o=r?.[n];if(o&&"items"in o)r=o.items[a];else return}return r};ame.parentCollection=(e,t)=>{let r=ame.itemAtPath(e,t.slice(0,-1)),n=t[t.length-1][0],a=r?.[n];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function TIi(e,t,r){let n=r(t,e);if(typeof n=="symbol")return n;for(let a of["key","value"]){let o=t[a];if(o&&"items"in o){for(let l=0;l{"use strict";var xBr=SIi(),sZa=BIi(),oZa=NIi(),GBr="\uFEFF",FBr="",ZBr="",LBr="",aZa=e=>!!e&&"items"in e,cZa=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function lZa(e){switch(e){case GBr:return"";case FBr:return"";case ZBr:return"";case LBr:return"";default:return JSON.stringify(e)}}function uZa(e){switch(e){case GBr:return"byte-order-mark";case FBr:return"doc-mode";case ZBr:return"flow-error-end";case LBr:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` +`;if(e.type==="block-scalar"){let o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=n,e.source=a}else{let{offset:o}=e,l="indent"in e?e.indent:-1,A=[{type:"block-scalar-header",offset:o,indent:l,source:n}];GIi(A,"end"in e?e.end:void 0)||A.push({type:"newline",offset:-1,indent:l,source:` +`});for(let f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:l,props:A,source:a})}}function GIi(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function xBr(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let n=e.props.slice(1),a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(let o of n)o.offset+=a;delete e.props,Object.assign(e,{type:r,source:t,end:n});break}case"block-map":case"block-seq":{let a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` +`};delete e.items,Object.assign(e,{type:r,source:t,end:[a]});break}default:{let n="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(let o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:r,indent:n,source:t,end:a})}}}F0t.createScalarToken=sZa;F0t.resolveAsScalar=iZa;F0t.setScalarValue=oZa});var LIi=H(ZIi=>{"use strict";var cZa=e=>"type"in e?L0t(e):Z0t(e);function L0t(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=L0t(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=Z0t(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=Z0t(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=Z0t(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function Z0t({start:e,key:t,sep:r,value:n}){let a="";for(let o of e)a+=o.source;if(t&&(a+=L0t(t)),r)for(let o of r)a+=o.source;return n&&(a+=L0t(n)),a}ZIi.stringify=cZa});var PIi=H(OIi=>{"use strict";var GBr=Symbol("break visit"),lZa=Symbol("skip children"),VIi=Symbol("remove item");function cme(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),WIi(Object.freeze([]),e,t)}cme.BREAK=GBr;cme.SKIP=lZa;cme.REMOVE=VIi;cme.itemAtPath=(e,t)=>{let r=e;for(let[n,a]of t){let o=r?.[n];if(o&&"items"in o)r=o.items[a];else return}return r};cme.parentCollection=(e,t)=>{let r=cme.itemAtPath(e,t.slice(0,-1)),n=t[t.length-1][0],a=r?.[n];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function WIi(e,t,r){let n=r(t,e);if(typeof n=="symbol")return n;for(let a of["key","value"]){let o=t[a];if(o&&"items"in o){for(let l=0;l{"use strict";var FBr=FIi(),uZa=LIi(),gZa=PIi(),ZBr="\uFEFF",LBr="",VBr="",WBr="",AZa=e=>!!e&&"items"in e,dZa=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function pZa(e){switch(e){case ZBr:return"";case LBr:return"";case VBr:return"";case WBr:return"";default:return JSON.stringify(e)}}function fZa(e){switch(e){case ZBr:return"byte-order-mark";case LBr:return"doc-mode";case VBr:return"flow-error-end";case WBr:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` `:case`\r -`: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(e[0]){case" ":case" ":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}fV.createScalarToken=xBr.createScalarToken;fV.resolveAsScalar=xBr.resolveAsScalar;fV.setScalarValue=xBr.setScalarValue;fV.stringify=sZa.stringify;fV.visit=oZa.visit;fV.BOM=GBr;fV.DOCUMENT=FBr;fV.FLOW_END=ZBr;fV.SCALAR=LBr;fV.isCollection=aZa;fV.isScalar=cZa;fV.prettyToken=lZa;fV.tokenType=uZa});var OBr=H(kIi=>{"use strict";var HXe=O0t();function n4(e){switch(e){case void 0:case" ":case` -`:case"\r":case" ":return!0;default:return!1}}var DIi=new Set("0123456789ABCDEFabcdef"),gZa=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),P0t=new Set(",[]{}"),AZa=new Set(` ,[]{} -\r `),VBr=e=>!e||AZa.has(e),WBr=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,r=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!r;let n=this.next??"stream";for(;n&&(r||this.hasChars(1));)n=yield*this.parseNext(n)}atLineEnd(){let t=this.pos,r=this.buffer[t];for(;r===" "||r===" ";)r=this.buffer[++t];return!r||r==="#"||r===` +`: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(e[0]){case" ":case" ":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}IV.createScalarToken=FBr.createScalarToken;IV.resolveAsScalar=FBr.resolveAsScalar;IV.setScalarValue=FBr.setScalarValue;IV.stringify=uZa.stringify;IV.visit=gZa.visit;IV.BOM=ZBr;IV.DOCUMENT=LBr;IV.FLOW_END=VBr;IV.SCALAR=WBr;IV.isCollection=AZa;IV.isScalar=dZa;IV.prettyToken=pZa;IV.tokenType=fZa});var MBr=H(HIi=>{"use strict";var QXe=V0t();function i4(e){switch(e){case void 0:case" ":case` +`:case"\r":case" ":return!0;default:return!1}}var MIi=new Set("0123456789ABCDEFabcdef"),IZa=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),W0t=new Set(",[]{}"),hZa=new Set(` ,[]{} +\r `),OBr=e=>!e||hZa.has(e),PBr=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,r=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!r;let n=this.next??"stream";for(;n&&(r||this.hasChars(1));)n=yield*this.parseNext(n)}atLineEnd(){let t=this.pos,r=this.buffer[t];for(;r===" "||r===" ";)r=this.buffer[++t];return!r||r==="#"||r===` `?!0:r==="\r"?this.buffer[t+1]===` `:!1}charAt(t){return this.buffer[this.pos+t]}continueScalar(t){let r=this.buffer[t];if(this.indentNext>0){let n=0;for(;r===" ";)r=this.buffer[++n+t];if(r==="\r"){let a=this.buffer[n+t+1];if(a===` `||!a&&!this.atEnd)return t+n+1}return r===` -`||n>=this.indentNext||!r&&!this.atEnd?t+n:-1}if(r==="-"||r==="."){let n=this.buffer.substr(t,3);if((n==="---"||n==="...")&&n4(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&tthis.indentValue&&!n4(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[t,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&n4(r)){let n=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=n,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let t=this.getLine();if(t===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(t[r]){case"#":yield*this.pushCount(t.length-r);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(VBr),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,r,n=-1;do t=yield*this.pushNewline(),t>0?(r=yield*this.pushSpaces(!1),this.indentValue=n=r):r=0,r+=yield*this.pushSpaces(!0);while(t+r>0);let a=this.getLine();if(a===null)return this.setNext("flow");if((n!==-1&&n=this.indentNext||!r&&!this.atEnd?t+n:-1}if(r==="-"||r==="."){let n=this.buffer.substr(t,3);if((n==="---"||n==="...")&&i4(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&tthis.indentValue&&!i4(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[t,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&i4(r)){let n=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=n,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let t=this.getLine();if(t===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(t[r]){case"#":yield*this.pushCount(t.length-r);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(OBr),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,r,n=-1;do t=yield*this.pushNewline(),t>0?(r=yield*this.pushSpaces(!1),this.indentValue=n=r):r=0,r+=yield*this.pushSpaces(!0);while(t+r>0);let a=this.getLine();if(a===null)return this.setNext("flow");if((n!==-1&&n"0"&&r<="9")this.blockScalarIndent=Number(r)-1;else if(r!=="-")break}return yield*this.pushUntil(r=>n4(r)||r==="#")}*parseBlockScalar(){let t=this.pos-1,r=0,n;e:for(let o=this.pos;n=this.buffer[o];++o)switch(n){case" ":r+=1;break;case` +`,o)}a!==-1&&(r=a-(n[a-1]==="\r"?2:1))}if(r===-1){if(!this.atEnd)return this.setNext("quoted-scalar");r=this.buffer.length}return yield*this.pushToIndex(r+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let t=this.pos;for(;;){let r=this.buffer[++t];if(r==="+")this.blockScalarKeep=!0;else if(r>"0"&&r<="9")this.blockScalarIndent=Number(r)-1;else if(r!=="-")break}return yield*this.pushUntil(r=>i4(r)||r==="#")}*parseBlockScalar(){let t=this.pos-1,r=0,n;e:for(let o=this.pos;n=this.buffer[o];++o)switch(n){case" ":r+=1;break;case` `:t=o,r=0;break;case"\r":{let l=this.buffer[o+1];if(!l&&!this.atEnd)return this.setNext("block-scalar");if(l===` `)break}default:break e}if(!n&&!this.atEnd)return this.setNext("block-scalar");if(r>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=r:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let o=this.continueScalar(t+1);if(o===-1)break;t=this.buffer.indexOf(` `,o)}while(t!==-1);if(t===-1){if(!this.atEnd)return this.setNext("block-scalar");t=this.buffer.length}}let a=t+1;for(n=this.buffer[a];n===" ";)n=this.buffer[++a];if(n===" "){for(;n===" "||n===" "||n==="\r"||n===` `;)n=this.buffer[++a];t=a-1}else if(!this.blockScalarKeep)do{let o=t-1,l=this.buffer[o];l==="\r"&&(l=this.buffer[--o]);let A=o;for(;l===" ";)l=this.buffer[--o];if(l===` -`&&o>=this.pos&&o+1+r>A)t=o;else break}while(!0);return yield HXe.SCALAR,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let t=this.flowLevel>0,r=this.pos-1,n=this.pos-1,a;for(;a=this.buffer[++n];)if(a===":"){let o=this.buffer[n+1];if(n4(o)||t&&P0t.has(o))break;r=n}else if(n4(a)){let o=this.buffer[n+1];if(a==="\r"&&(o===` +`&&o>=this.pos&&o+1+r>A)t=o;else break}while(!0);return yield QXe.SCALAR,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let t=this.flowLevel>0,r=this.pos-1,n=this.pos-1,a;for(;a=this.buffer[++n];)if(a===":"){let o=this.buffer[n+1];if(i4(o)||t&&W0t.has(o))break;r=n}else if(i4(a)){let o=this.buffer[n+1];if(a==="\r"&&(o===` `?(n+=1,a=` -`,o=this.buffer[n+1]):r=n),o==="#"||t&&P0t.has(o))break;if(a===` -`){let l=this.continueScalar(n+1);if(l===-1)break;n=Math.max(n,l-2)}}else{if(t&&P0t.has(a))break;r=n}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield HXe.SCALAR,yield*this.pushToIndex(r+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,r){let n=this.buffer.slice(this.pos,t);return n?(yield n,this.pos+=n.length,n.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(VBr))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(n4(r)||t&&P0t.has(r))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,r=this.buffer[t];for(;!n4(r)&&r!==">";)r=this.buffer[++t];return yield*this.pushToIndex(r===">"?t+1:t,!1)}else{let t=this.pos+1,r=this.buffer[t];for(;r;)if(gZa.has(r))r=this.buffer[++t];else if(r==="%"&&DIi.has(this.buffer[t+1])&&DIi.has(this.buffer[t+2]))r=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){let t=this.buffer[this.pos];return t===` +`,o=this.buffer[n+1]):r=n),o==="#"||t&&W0t.has(o))break;if(a===` +`){let l=this.continueScalar(n+1);if(l===-1)break;n=Math.max(n,l-2)}}else{if(t&&W0t.has(a))break;r=n}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield QXe.SCALAR,yield*this.pushToIndex(r+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,r){let n=this.buffer.slice(this.pos,t);return n?(yield n,this.pos+=n.length,n.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(OBr))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(i4(r)||t&&W0t.has(r))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,r=this.buffer[t];for(;!i4(r)&&r!==">";)r=this.buffer[++t];return yield*this.pushToIndex(r===">"?t+1:t,!1)}else{let t=this.pos+1,r=this.buffer[t];for(;r;)if(IZa.has(r))r=this.buffer[++t];else if(r==="%"&&MIi.has(this.buffer[t+1])&&MIi.has(this.buffer[t+2]))r=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){let t=this.buffer[this.pos];return t===` `?yield*this.pushCount(1):t==="\r"&&this.charAt(1)===` -`?yield*this.pushCount(2):0}*pushSpaces(t){let r=this.pos-1,n;do n=this.buffer[++r];while(n===" "||t&&n===" ");let a=r-this.pos;return a>0&&(yield this.buffer.substr(this.pos,a),this.pos=r),a}*pushUntil(t){let r=this.pos,n=this.buffer[r];for(;!t(n);)n=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};kIi.Lexer=WBr});var MBr=H(xIi=>{"use strict";var PBr=class{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let r=0,n=this.lineStarts.length;for(;r>1;this.lineStarts[o]{"use strict";var GIi=O0t(),dZa=OBr();function cme(e,t){for(let r=0;r=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function ZIi(e){if(e.start.type==="flow-seq-start")for(let t of e.items)t.sep&&!t.value&&!cme(t.start,"explicit-key-ind")&&!cme(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,LIi(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var HBr=class{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new dZa.Lexer,this.onNewLine=t}*parse(t,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let n of this.lexer.lex(t,r))yield*this.next(n);r||(yield*this.end())}*next(t){if(this.source=t,process.env.LOG_TOKENS&&console.log("|",GIi.prettyToken(t)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}let r=GIi.tokenType(t);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{let n=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:n,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){let r=t??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let n=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in n?n.indent:0:r.type==="flow-collection"&&n.type==="document"&&(r.indent=0),r.type==="flow-collection"&&ZIi(r),n.type){case"document":n.value=r;break;case"block-scalar":n.props.push(r);break;case"block-map":{let a=n.items[n.items.length-1];if(a.value){n.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=r;else{Object.assign(a,{key:r,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{let a=n.items[n.items.length-1];a.value?n.items.push({start:[],value:r}):a.value=r;break}case"flow-collection":{let a=n.items[n.items.length-1];!a||a.value?n.items.push({start:[],key:r,sep:[]}):a.sep?a.value=r:Object.assign(a,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((n.type==="document"||n.type==="block-map"||n.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let a=r.items[r.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&FIi(a.start)===-1&&(r.indent===0||a.start.every(o=>o.type!=="comment"||o.indent0&&(yield this.buffer.substr(this.pos,a),this.pos=r),a}*pushUntil(t){let r=this.pos,n=this.buffer[r];for(;!t(n);)n=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};HIi.Lexer=PBr});var YBr=H(YIi=>{"use strict";var HBr=class{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let r=0,n=this.lineStarts.length;for(;r>1;this.lineStarts[o]{"use strict";var QIi=V0t(),mZa=MBr();function lme(e,t){for(let r=0;r=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function JIi(e){if(e.start.type==="flow-seq-start")for(let t of e.items)t.sep&&!t.value&&!lme(t.start,"explicit-key-ind")&&!lme(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,UIi(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var QBr=class{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new mZa.Lexer,this.onNewLine=t}*parse(t,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let n of this.lexer.lex(t,r))yield*this.next(n);r||(yield*this.end())}*next(t){if(this.source=t,process.env.LOG_TOKENS&&console.log("|",QIi.prettyToken(t)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}let r=QIi.tokenType(t);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{let n=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:n,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){let r=t??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let n=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in n?n.indent:0:r.type==="flow-collection"&&n.type==="document"&&(r.indent=0),r.type==="flow-collection"&&JIi(r),n.type){case"document":n.value=r;break;case"block-scalar":n.props.push(r);break;case"block-map":{let a=n.items[n.items.length-1];if(a.value){n.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=r;else{Object.assign(a,{key:r,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{let a=n.items[n.items.length-1];a.value?n.items.push({start:[],value:r}):a.value=r;break}case"flow-collection":{let a=n.items[n.items.length-1];!a||a.value?n.items.push({start:[],key:r,sep:[]}):a.sep?a.value=r:Object.assign(a,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((n.type==="document"||n.type==="block-map"||n.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let a=r.items[r.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&XIi(a.start)===-1&&(r.indent===0||a.start.every(o=>o.type!=="comment"||o.indent=t.indent){let n=!this.onKeyLine&&this.indent===t.indent,a=n&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",o=[];if(a&&r.sep&&!r.value){let l=[];for(let A=0;At.indent&&(l.length=0);break;default:l.length=0}}l.length>=2&&(o=r.sep.splice(l[1]))}switch(this.type){case"anchor":case"tag":a||r.value?(o.push(this.sourceToken),t.items.push({start:o}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):a||r.value?(o.push(this.sourceToken),t.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(cme(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(LIi(r.key)&&!cme(r.sep,"newline")){let l=vRe(r.start),A=r.key,f=r.sep;f.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:A,sep:f}]})}else o.length>0?r.sep=r.sep.concat(o,this.sourceToken):r.sep.push(this.sourceToken);else if(cme(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let l=vRe(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||a?t.items.push({start:o,key:null,sep:[this.sourceToken]}):cme(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let l=this.flowScalar(this.type);a||r.value?(t.items.push({start:o,key:l,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(l):(Object.assign(r,{key:l,sep:[]}),this.onKeyLine=!0);return}default:{let l=this.startBlockValue(t);if(l){n&&l.type!=="block-seq"&&t.items.push({start:o}),this.stack.push(l);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=t.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;r.value||cme(r.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>t.indent){let n=this.startBlockValue(t);if(n){this.stack.push(n);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){let r=t.items[t.items.length-1];if(this.type==="flow-error-end"){let n;do yield*this.pop(),n=this.peek(1);while(n&&n.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?t.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);!r||r.value?t.items.push({start:[],key:a,sep:[]}):r.sep?this.stack.push(a):Object.assign(r,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}let n=this.startBlockValue(t);n?this.stack.push(n):(yield*this.pop(),yield*this.step())}else{let n=this.peek(2);if(n.type==="block-map"&&(this.type==="map-value-ind"&&n.indent===t.indent||this.type==="newline"&&!n.items[n.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&n.type!=="flow-collection"){let a=M0t(n),o=vRe(a);ZIi(t);let l=t.end.splice(1,t.end.length);l.push(this.sourceToken);let A={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=A}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let r=this.source.indexOf(` +`,r)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else if(r.sep)r.sep.push(this.sourceToken);else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return}if(this.indent>=t.indent){let n=!this.onKeyLine&&this.indent===t.indent,a=n&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",o=[];if(a&&r.sep&&!r.value){let l=[];for(let A=0;At.indent&&(l.length=0);break;default:l.length=0}}l.length>=2&&(o=r.sep.splice(l[1]))}switch(this.type){case"anchor":case"tag":a||r.value?(o.push(this.sourceToken),t.items.push({start:o}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):a||r.value?(o.push(this.sourceToken),t.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(lme(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(UIi(r.key)&&!lme(r.sep,"newline")){let l=ERe(r.start),A=r.key,f=r.sep;f.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:A,sep:f}]})}else o.length>0?r.sep=r.sep.concat(o,this.sourceToken):r.sep.push(this.sourceToken);else if(lme(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let l=ERe(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||a?t.items.push({start:o,key:null,sep:[this.sourceToken]}):lme(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let l=this.flowScalar(this.type);a||r.value?(t.items.push({start:o,key:l,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(l):(Object.assign(r,{key:l,sep:[]}),this.onKeyLine=!0);return}default:{let l=this.startBlockValue(t);if(l){n&&l.type!=="block-seq"&&t.items.push({start:o}),this.stack.push(l);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=t.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;r.value||lme(r.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>t.indent){let n=this.startBlockValue(t);if(n){this.stack.push(n);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){let r=t.items[t.items.length-1];if(this.type==="flow-error-end"){let n;do yield*this.pop(),n=this.peek(1);while(n&&n.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?t.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);!r||r.value?t.items.push({start:[],key:a,sep:[]}):r.sep?this.stack.push(a):Object.assign(r,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}let n=this.startBlockValue(t);n?this.stack.push(n):(yield*this.pop(),yield*this.step())}else{let n=this.peek(2);if(n.type==="block-map"&&(this.type==="map-value-ind"&&n.indent===t.indent||this.type==="newline"&&!n.items[n.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&n.type!=="flow-collection"){let a=O0t(n),o=ERe(a);JIi(t);let l=t.end.splice(1,t.end.length);l.push(this.sourceToken);let A={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=A}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let r=this.source.indexOf(` `)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(` -`,r)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){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=!0;let r=M0t(t),n=vRe(r);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=M0t(t),n=vRe(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,r){return this.type!=="comment"||this.indent<=r?!1:t.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){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=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};VIi.Parser=HBr});var HIi=H(QXe=>{"use strict";var WIi=NBr(),pZa=ZXe(),YXe=WXe(),fZa=Tvr(),IZa=MBr(),OIi=YBr();function PIi(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new IZa.LineCounter||null,prettyErrors:t}}function hZa(e,t={}){let{lineCounter:r,prettyErrors:n}=PIi(t),a=new OIi.Parser(r?.addNewLine),o=new WIi.Composer(t),l=Array.from(o.compose(a.parse(e)));if(n&&r)for(let A of l)A.errors.forEach(YXe.prettifyError(e,r)),A.warnings.forEach(YXe.prettifyError(e,r));return l.length>0?l:Object.assign([],{empty:!0},o.streamInfo())}function MIi(e,t={}){let{lineCounter:r,prettyErrors:n}=PIi(t),a=new OIi.Parser(r?.addNewLine),o=new WIi.Composer(t),l=null;for(let A of o.compose(a.parse(e),!0,e.length))if(!l)l=A;else if(l.options.logLevel!=="silent"){l.errors.push(new YXe.YAMLParseError(A.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&r&&(l.errors.forEach(YXe.prettifyError(e,r)),l.warnings.forEach(YXe.prettifyError(e,r))),l}function mZa(e,t,r){let n;typeof t=="function"?n=t:r===void 0&&t&&typeof t=="object"&&(r=t);let a=MIi(e,r);if(!a)return null;if(a.warnings.forEach(o=>fZa.warn(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:n},r))}function CZa(e,t,r){let n=null;if(typeof t=="function"||Array.isArray(t)?n=t:r===void 0&&t&&(r=t),typeof r=="string"&&(r=r.length),typeof r=="number"){let a=Math.round(r);r=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){let{keepUndefined:a}=r??t??{};if(!a)return}return new pZa.Document(e,n,r).toString(r)}QXe.parse=mZa;QXe.parseAllDocuments=hZa;QXe.parseDocument=MIi;QXe.stringify=CZa});var QIi=H(K0=>{"use strict";var _Za=NBr(),yZa=ZXe(),bZa=uBr(),QBr=WXe(),EZa=bXe(),qae=y0(),SZa=Uae(),vZa=IT(),BZa=jae(),wZa=zae(),TZa=O0t(),RZa=OBr(),NZa=MBr(),DZa=YBr(),H0t=HIi(),YIi=mXe();K0.Composer=_Za.Composer;K0.Document=yZa.Document;K0.Schema=bZa.Schema;K0.YAMLError=QBr.YAMLError;K0.YAMLParseError=QBr.YAMLParseError;K0.YAMLWarning=QBr.YAMLWarning;K0.Alias=EZa.Alias;K0.isAlias=qae.isAlias;K0.isCollection=qae.isCollection;K0.isDocument=qae.isDocument;K0.isMap=qae.isMap;K0.isNode=qae.isNode;K0.isPair=qae.isPair;K0.isScalar=qae.isScalar;K0.isSeq=qae.isSeq;K0.Pair=SZa.Pair;K0.Scalar=vZa.Scalar;K0.YAMLMap=BZa.YAMLMap;K0.YAMLSeq=wZa.YAMLSeq;K0.CST=TZa;K0.Lexer=RZa.Lexer;K0.LineCounter=NZa.LineCounter;K0.Parser=DZa.Parser;K0.parse=H0t.parse;K0.parseAllDocuments=H0t.parseAllDocuments;K0.parseDocument=H0t.parseDocument;K0.stringify=H0t.stringify;K0.visit=YIi.visit;K0.visitAsync=YIi.visitAsync});var $Ii=H((x0u,JXe)=>{var i4=Et("path"),XXe=Et("fs"),GZa=Et("os"),JIi=XXe.promises.readFile;function FZa(e,t){return["package.json",`.${e}rc.json`,`.${e}rc.js`,`.${e}rc.cjs`,...t?[]:[`.${e}rc.mjs`],`.config/${e}rc`,`.config/${e}rc.json`,`.config/${e}rc.js`,`.config/${e}rc.cjs`,...t?[]:[`.config/${e}rc.mjs`],`${e}.config.js`,`${e}.config.cjs`,...t?[]:[`${e}.config.mjs`]]}function K0t(e){return i4.dirname(e)||i4.sep}var UBr=(e,t)=>JSON.parse(t),U0t=typeof __webpack_require__=="function"?__non_webpack_require__:Et,UIi=Object.freeze({".js":U0t,".json":U0t,".cjs":U0t,noExt:UBr});JXe.exports.defaultLoadersSync=UIi;var JBr=async e=>{try{return(await import(e)).default}catch(t){try{return U0t(e)}catch(r){throw r.code==="ERR_REQUIRE_ESM"||r instanceof SyntaxError&&r.toString().includes("Cannot use import statement outside a module")?t:r}}},KIi=Object.freeze({".js":JBr,".mjs":JBr,".cjs":JBr,".json":UBr,noExt:UBr});JXe.exports.defaultLoaders=KIi;function jIi(e,t,r){let n={stopDir:GZa.homedir(),searchPlaces:FZa(e,r),ignoreEmptySearchPlaces:!0,cache:!0,transform:a=>a,packageProp:[e],...t,loaders:{...r?UIi:KIi,...t.loaders}};return n.searchPlaces.forEach(a=>{let o=i4.extname(a)||"noExt",l=n.loaders[o];if(!l)throw new Error(`Missing loader for extension "${a}"`);if(typeof l!="function")throw new Error(`Loader for extension "${a}" is not a function: Received ${typeof l}.`)}),n}function j0t(e,t){return typeof e=="string"&&e in t?t[e]:(Array.isArray(e)?e:e.split(".")).reduce((r,n)=>r===void 0?r:r[n],t)||null}function zIi(e){if(!e)throw new Error("load must pass a non-empty string")}function z0t(e,t){if(!e)throw new Error(`No loader specified for extension "${t}"`);if(typeof e!="function")throw new Error("loader is not a function")}var qIi=e=>(t,r,n)=>(e&&t.set(r,n),n);JXe.exports.lilconfig=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=jIi(t,r??{},!1),C=new Map,b=new Map,E=qIi(I);return{async search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=i4.join(Q,ae);try{await XXe.promises.access(ne)}catch{continue}let ce=String(await JIi(ne)),fe=i4.extname(ae)||"noExt",ue=a[fe];if(ae==="package.json"){let be=await ue(ne,ce),Se=j0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ce.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(z0t(ue,fe),B.config=await ue(ne,ce)),B.filepath=ne;break e}}if(Q===A||Q===K0t(Q))break e;Q=K0t(Q)}let J=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,J);return J},async load(N){zIi(N);let B=i4.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=i4.parse(B),J=Q||"noExt",ae=a[J];z0t(ae,J);let ne=String(await JIi(B));if(F==="package.json"){let ue=await ae(B,ne);return E(b,B,f({config:j0t(o,ue),filepath:B}))}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({config:void 0,filepath:B,isEmpty:!0})):(ce.config=fe?void 0:await ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}};JXe.exports.lilconfigSync=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=jIi(t,r??{},!0),C=new Map,b=new Map,E=qIi(I);return{search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=i4.join(Q,ae);try{XXe.accessSync(ne)}catch{continue}let ce=i4.extname(ae)||"noExt",fe=a[ce],ue=String(XXe.readFileSync(ne));if(ae==="package.json"){let be=fe(ne,ue),Se=j0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ue.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(z0t(fe,ce),B.config=fe(ne,ue)),B.filepath=ne;break e}}if(Q===A||Q===K0t(Q))break e;Q=K0t(Q)}let J=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,J);return J},load(N){zIi(N);let B=i4.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=i4.parse(B),J=Q||"noExt",ae=a[J];z0t(ae,J);let ne=String(XXe.readFileSync(B));if(F==="package.json"){let ue=ae(B,ne);return f({config:j0t(o,ue),filepath:B})}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({filepath:B,config:void 0,isEmpty:!0})):(ce.config=fe?void 0:ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}}});var nwr=H((sbu,khi)=>{khi.exports=Et("stream")});var Vhi=H((obu,Lhi)=>{"use strict";function xhi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ghi(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,a=""+n.data;n=n.next;)a+=r+n.data;return a}},{key:"concat",value:function(r){if(this.length===0)return nyt.alloc(0);for(var n=nyt.allocUnsafe(r>>>0),a=this.head,o=0;a;)yLa(a.data,n,o),o+=a.data.length,a=a.next;return n}},{key:"consume",value:function(r,n){var a;return rl.length?l.length:r;if(A===l.length?o+=l:o+=l.slice(0,r),r-=A,r===0){A===l.length?(++a,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=l.slice(A));break}++a}return this.length-=a,o}},{key:"_getBuffer",value:function(r){var n=nyt.allocUnsafe(r),a=this.head,o=1;for(a.data.copy(n),r-=a.data.length;a=a.next;){var l=a.data,A=r>l.length?l.length:r;if(l.copy(n,n.length-r,0,A),r-=A,r===0){A===l.length?(++o,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=l.slice(A));break}++o}return this.length-=o,n}},{key:_La,value:function(r,n){return iwr(this,Ghi(Ghi({},n),{},{depth:0,customInspect:!1}))}}]),e}()});var owr=H((abu,Ohi)=>{"use strict";function bLa(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return n||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(swr,this,e)):process.nextTick(swr,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?process.nextTick(iyt,r):(r._writableState.errorEmitted=!0,process.nextTick(Whi,r,o)):process.nextTick(Whi,r,o):t?(process.nextTick(iyt,r),t(o)):process.nextTick(iyt,r)}),this)}function Whi(e,t){swr(e,t),iyt(e)}function iyt(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function ELa(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function swr(e,t){e.emit("error",t)}function SLa(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}Ohi.exports={destroy:bLa,undestroy:ELa,errorOrDestroy:SLa}});var $ae=H((cbu,Hhi)=>{"use strict";var Mhi={};function $M(e,t,r){r||(r=Error);function n(o,l,A){return typeof t=="string"?t:t(o,l,A)}class a extends r{constructor(l,A,f){super(n(l,A,f))}}a.prototype.name=r.name,a.prototype.code=e,Mhi[e]=a}function Phi(e,t){if(Array.isArray(e)){let r=e.length;return e=e.map(n=>String(n)),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:r===2?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}else return`of ${t} ${String(e)}`}function vLa(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function BLa(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function wLa(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}$M("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);$M("ERR_INVALID_ARG_TYPE",function(e,t,r){let n;typeof t=="string"&&vLa(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";let a;if(BLa(e," argument"))a=`The ${e} ${n} ${Phi(t,"type")}`;else{let o=wLa(e,".")?"property":"argument";a=`The "${e}" ${o} ${n} ${Phi(t,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);$M("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");$M("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});$M("ERR_STREAM_PREMATURE_CLOSE","Premature close");$M("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});$M("ERR_MULTIPLE_CALLBACK","Callback called multiple times");$M("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");$M("ERR_STREAM_WRITE_AFTER_END","write after end");$M("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);$M("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);$M("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Hhi.exports.codes=Mhi});var awr=H((lbu,Yhi)=>{"use strict";var TLa=$ae().codes.ERR_INVALID_OPT_VALUE;function RLa(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function NLa(e,t,r,n){var a=RLa(t,n,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var o=n?r:"highWaterMark";throw new TLa(o,a)}return Math.floor(a)}return e.objectMode?16:16*1024}Yhi.exports={getHighWaterMark:NLa}});var Qhi=H((ubu,cwr)=>{typeof Object.create=="function"?cwr.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:cwr.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var ece=H((gbu,uwr)=>{try{if(lwr=Et("util"),typeof lwr.inherits!="function")throw"";uwr.exports=lwr.inherits}catch{uwr.exports=Qhi()}var lwr});var Jhi=H((Abu,Xhi)=>{Xhi.exports=Et("util").deprecate});var dwr=H((dbu,$hi)=>{"use strict";$hi.exports=Jv;function Khi(e){var t=this;this.next=null,this.entry=null,this.finish=function(){n9a(t,e)}}var TRe;Jv.WritableState=$Xe;var DLa={deprecate:Jhi()},jhi=nwr(),oyt=Et("buffer").Buffer,kLa=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function xLa(e){return oyt.from(e)}function GLa(e){return oyt.isBuffer(e)||e instanceof kLa}var Awr=owr(),FLa=awr(),ZLa=FLa.getHighWaterMark,tce=$ae().codes,LLa=tce.ERR_INVALID_ARG_TYPE,VLa=tce.ERR_METHOD_NOT_IMPLEMENTED,WLa=tce.ERR_MULTIPLE_CALLBACK,OLa=tce.ERR_STREAM_CANNOT_PIPE,PLa=tce.ERR_STREAM_DESTROYED,MLa=tce.ERR_STREAM_NULL_VALUES,HLa=tce.ERR_STREAM_WRITE_AFTER_END,YLa=tce.ERR_UNKNOWN_ENCODING,RRe=Awr.errorOrDestroy;ece()(Jv,jhi);function QLa(){}function $Xe(e,t,r){TRe=TRe||lme(),e=e||{},typeof r!="boolean"&&(r=t instanceof TRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=ZLa(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){qLa(t,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Khi(this)}$Xe.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty($Xe.prototype,"buffer",{get:DLa.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var syt;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(syt=Function.prototype[Symbol.hasInstance],Object.defineProperty(Jv,Symbol.hasInstance,{value:function(t){return syt.call(this,t)?!0:this!==Jv?!1:t&&t._writableState instanceof $Xe}})):syt=function(t){return t instanceof this};function Jv(e){TRe=TRe||lme();var t=this instanceof TRe;if(!t&&!syt.call(Jv,this))return new Jv(e);this._writableState=new $Xe(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),jhi.call(this)}Jv.prototype.pipe=function(){RRe(this,new OLa)};function XLa(e,t){var r=new HLa;RRe(e,r),process.nextTick(t,r)}function JLa(e,t,r,n){var a;return r===null?a=new MLa:typeof r!="string"&&!t.objectMode&&(a=new LLa("chunk",["string","Buffer"],r)),a?(RRe(e,a),process.nextTick(n,a),!1):!0}Jv.prototype.write=function(e,t,r){var n=this._writableState,a=!1,o=!n.objectMode&&GLa(e);return o&&!oyt.isBuffer(e)&&(e=xLa(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=QLa),n.ending?XLa(this,r):(o||JLa(this,n,e,r))&&(n.pendingcb++,a=KLa(this,n,o,e,t,r)),a};Jv.prototype.cork=function(){this._writableState.corked++};Jv.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&zhi(this,e))};Jv.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new YLa(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Jv.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function ULa(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=oyt.from(t,r)),t}Object.defineProperty(Jv.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function KLa(e,t,r,n,a,o){if(!r){var l=ULa(t,n,a);n!==l&&(r=!0,a="buffer",n=l)}var A=t.objectMode?1:n.length;t.length+=A;var f=t.length{"use strict";var i9a=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};tmi.exports=l6;var emi=Iwr(),fwr=dwr();ece()(l6,emi);for(pwr=i9a(fwr.prototype),ayt=0;ayt{var lyt=Et("buffer"),u6=lyt.Buffer;function rmi(e,t){for(var r in e)t[r]=e[r]}u6.from&&u6.alloc&&u6.allocUnsafe&&u6.allocUnsafeSlow?nmi.exports=lyt:(rmi(lyt,hwr),hwr.Buffer=ume);function ume(e,t,r){return u6(e,t,r)}ume.prototype=Object.create(u6.prototype);rmi(u6,ume);ume.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return u6(e,t,r)};ume.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=u6(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};ume.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return u6(e)};ume.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return lyt.SlowBuffer(e)}});var _wr=H(omi=>{"use strict";var Cwr=imi().Buffer,smi=Cwr.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a9a(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function c9a(e){var t=a9a(e);if(typeof t!="string"&&(Cwr.isEncoding===smi||!smi(e)))throw new Error("Unknown encoding: "+e);return t||e}omi.StringDecoder=e4e;function e4e(e){this.encoding=c9a(e);var t;switch(this.encoding){case"utf16le":this.text=p9a,this.end=f9a,t=4;break;case"utf8":this.fillLast=g9a,t=4;break;case"base64":this.text=I9a,this.end=h9a,t=3;break;default:this.write=m9a,this.end=C9a;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=Cwr.allocUnsafe(t)}e4e.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function l9a(e,t,r){var n=t.length-1;if(n=0?(a>0&&(e.lastNeed=a-1),a):--n=0?(a>0&&(e.lastNeed=a-2),a):--n=0?(a>0&&(a===2?a=0:e.lastNeed=a-3),a):0))}function u9a(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function g9a(e){var t=this.lastTotal-this.lastNeed,r=u9a(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function A9a(e,t){var r=l9a(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function d9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function p9a(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f9a(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function I9a(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function h9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function m9a(e){return e.toString(this.encoding)}function C9a(e){return e&&e.length?this.write(e):""}});var uyt=H((Ibu,lmi)=>{"use strict";var ami=$ae().codes.ERR_STREAM_PREMATURE_CLOSE;function _9a(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),a=0;a{"use strict";var gyt;function rce(e,t,r){return t=E9a(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function E9a(e){var t=S9a(e,"string");return typeof t=="symbol"?t:String(t)}function S9a(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var v9a=uyt(),nce=Symbol("lastResolve"),gme=Symbol("lastReject"),t4e=Symbol("error"),Ayt=Symbol("ended"),Ame=Symbol("lastPromise"),ywr=Symbol("handlePromise"),dme=Symbol("stream");function ice(e,t){return{value:e,done:t}}function B9a(e){var t=e[nce];if(t!==null){var r=e[dme].read();r!==null&&(e[Ame]=null,e[nce]=null,e[gme]=null,t(ice(r,!1)))}}function w9a(e){process.nextTick(B9a,e)}function T9a(e,t){return function(r,n){e.then(function(){if(t[Ayt]){r(ice(void 0,!0));return}t[ywr](r,n)},n)}}var R9a=Object.getPrototypeOf(function(){}),N9a=Object.setPrototypeOf((gyt={get stream(){return this[dme]},next:function(){var t=this,r=this[t4e];if(r!==null)return Promise.reject(r);if(this[Ayt])return Promise.resolve(ice(void 0,!0));if(this[dme].destroyed)return new Promise(function(l,A){process.nextTick(function(){t[t4e]?A(t[t4e]):l(ice(void 0,!0))})});var n=this[Ame],a;if(n)a=new Promise(T9a(n,this));else{var o=this[dme].read();if(o!==null)return Promise.resolve(ice(o,!1));a=new Promise(this[ywr])}return this[Ame]=a,a}},rce(gyt,Symbol.asyncIterator,function(){return this}),rce(gyt,"return",function(){var t=this;return new Promise(function(r,n){t[dme].destroy(null,function(a){if(a){n(a);return}r(ice(void 0,!0))})})}),gyt),R9a),D9a=function(t){var r,n=Object.create(N9a,(r={},rce(r,dme,{value:t,writable:!0}),rce(r,nce,{value:null,writable:!0}),rce(r,gme,{value:null,writable:!0}),rce(r,t4e,{value:null,writable:!0}),rce(r,Ayt,{value:t._readableState.endEmitted,writable:!0}),rce(r,ywr,{value:function(o,l){var A=n[dme].read();A?(n[Ame]=null,n[nce]=null,n[gme]=null,o(ice(A,!1))):(n[nce]=o,n[gme]=l)},writable:!0}),r));return n[Ame]=null,v9a(t,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=n[gme];o!==null&&(n[Ame]=null,n[nce]=null,n[gme]=null,o(a)),n[t4e]=a;return}var l=n[nce];l!==null&&(n[Ame]=null,n[nce]=null,n[gme]=null,l(ice(void 0,!0))),n[Ayt]=!0}),t.on("readable",w9a.bind(null,n)),n};umi.exports=D9a});var fmi=H((mbu,pmi)=>{"use strict";function Ami(e,t,r,n,a,o,l){try{var A=e[o](l),f=A.value}catch(I){r(I);return}A.done?t(f):Promise.resolve(f).then(n,a)}function k9a(e){return function(){var t=this,r=arguments;return new Promise(function(n,a){var o=e.apply(t,r);function l(f){Ami(o,n,a,l,A,"next",f)}function A(f){Ami(o,n,a,l,A,"throw",f)}l(void 0)})}}function dmi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function x9a(e){for(var t=1;t{"use strict";vmi.exports=E_;var NRe;E_.ReadableState=Cmi;var Cbu=Et("events").EventEmitter,mmi=function(t,r){return t.listeners(r).length},n4e=nwr(),dyt=Et("buffer").Buffer,W9a=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function O9a(e){return dyt.from(e)}function P9a(e){return dyt.isBuffer(e)||e instanceof W9a}var bwr=Et("util"),Tm;bwr&&bwr.debuglog?Tm=bwr.debuglog("stream"):Tm=function(){};var M9a=Vhi(),Rwr=owr(),H9a=awr(),Y9a=H9a.getHighWaterMark,pyt=$ae().codes,Q9a=pyt.ERR_INVALID_ARG_TYPE,X9a=pyt.ERR_STREAM_PUSH_AFTER_EOF,J9a=pyt.ERR_METHOD_NOT_IMPLEMENTED,U9a=pyt.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,DRe,Ewr,Swr;ece()(E_,n4e);var r4e=Rwr.errorOrDestroy,vwr=["error","close","destroy","pause","resume"];function K9a(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function Cmi(e,t,r){NRe=NRe||lme(),e=e||{},typeof r!="boolean"&&(r=t instanceof NRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=Y9a(this,e,"readableHighWaterMark",r),this.buffer=new M9a,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(DRe||(DRe=_wr().StringDecoder),this.decoder=new DRe(e.encoding),this.encoding=e.encoding)}function E_(e){if(NRe=NRe||lme(),!(this instanceof E_))return new E_(e);var t=this instanceof NRe;this._readableState=new Cmi(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),n4e.call(this)}Object.defineProperty(E_.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});E_.prototype.destroy=Rwr.destroy;E_.prototype._undestroy=Rwr.undestroy;E_.prototype._destroy=function(e,t){t(e)};E_.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=dyt.from(e,t),t=""),n=!0),_mi(this,e,t,!1,n)};E_.prototype.unshift=function(e){return _mi(this,e,null,!0,!1)};function _mi(e,t,r,n,a){Tm("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,q9a(e,o);else{var l;if(a||(l=j9a(o,t)),l)r4e(e,l);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==dyt.prototype&&(t=O9a(t)),n)o.endEmitted?r4e(e,new U9a):Bwr(e,o,t,!0);else if(o.ended)r4e(e,new X9a);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?Bwr(e,o,t,!1):Twr(e,o)):Bwr(e,o,t,!1)}else n||(o.reading=!1,Twr(e,o))}return!o.ended&&(o.length=Imi?e=Imi:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function hmi(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=z9a(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}E_.prototype.read=function(e){Tm("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Tm("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?wwr(this):fyt(this),null;if(e=hmi(e,t),e===0&&t.ended)return t.length===0&&wwr(this),null;var n=t.needReadable;Tm("need readable",n),(t.length===0||t.length-e0?a=Emi(e,t):a=null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&wwr(this)),a!==null&&this.emit("data",a),a};function q9a(e,t){if(Tm("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?fyt(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,ymi(e)))}}function fyt(e){var t=e._readableState;Tm("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Tm("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(ymi,e))}function ymi(e){var t=e._readableState;Tm("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,Nwr(e)}function Twr(e,t){t.readingMore||(t.readingMore=!0,process.nextTick($9a,e,t))}function $9a(e,t){for(;!t.reading&&!t.ended&&(t.length1&&Smi(n.pipes,e)!==-1)&&!I&&(Tm("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function E(Q){Tm("onerror",Q),F(),e.removeListener("error",E),mmi(e,"error")===0&&r4e(e,Q)}K9a(e,"error",E);function N(){e.removeListener("finish",B),F()}e.once("close",N);function B(){Tm("onfinish"),e.removeListener("close",N),F()}e.once("finish",B);function F(){Tm("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Tm("pipe resume"),r.resume()),e};function eVa(e){return function(){var r=e._readableState;Tm("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&mmi(e,"data")&&(r.flowing=!0,Nwr(e))}}E_.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Tm("on readable",n.length,n.reading),n.length?fyt(this):n.reading||process.nextTick(tVa,this)),r};E_.prototype.addListener=E_.prototype.on;E_.prototype.removeListener=function(e,t){var r=n4e.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(bmi,this),r};E_.prototype.removeAllListeners=function(e){var t=n4e.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(bmi,this),t};function bmi(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function tVa(e){Tm("readable nexttick read 0"),e.read(0)}E_.prototype.resume=function(){var e=this._readableState;return e.flowing||(Tm("resume"),e.flowing=!e.readableListening,rVa(this,e)),e.paused=!1,this};function rVa(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(nVa,e,t))}function nVa(e,t){Tm("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),Nwr(e),t.flowing&&!t.reading&&e.read(0)}E_.prototype.pause=function(){return Tm("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Tm("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function Nwr(e){var t=e._readableState;for(Tm("flow",t.flowing);t.flowing&&e.read()!==null;);}E_.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Tm("wrapped end"),r.decoder&&!r.ended){var l=r.decoder.end();l&&l.length&&t.push(l)}t.push(null)}),e.on("data",function(l){if(Tm("wrapped data"),r.decoder&&(l=r.decoder.write(l)),!(r.objectMode&&l==null)&&!(!r.objectMode&&(!l||!l.length))){var A=t.push(l);A||(n=!0,e.pause())}});for(var a in e)this[a]===void 0&&typeof e[a]=="function"&&(this[a]=function(A){return function(){return e[A].apply(e,arguments)}}(a));for(var o=0;o=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function wwr(e){var t=e._readableState;Tm("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(iVa,t,e))}function iVa(e,t){if(Tm("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(E_.from=function(e,t){return Swr===void 0&&(Swr=fmi()),Swr(E_,e,t)});function Smi(e,t){for(var r=0,n=e.length;r{"use strict";wmi.exports=mee;var Iyt=$ae().codes,sVa=Iyt.ERR_METHOD_NOT_IMPLEMENTED,oVa=Iyt.ERR_MULTIPLE_CALLBACK,aVa=Iyt.ERR_TRANSFORM_ALREADY_TRANSFORMING,cVa=Iyt.ERR_TRANSFORM_WITH_LENGTH_0,hyt=lme();ece()(mee,hyt);function lVa(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new oVa);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";Rmi.exports=i4e;var Tmi=Dwr();ece()(i4e,Tmi);function i4e(e){if(!(this instanceof i4e))return new i4e(e);Tmi.call(this,e)}i4e.prototype._transform=function(e,t,r){r(null,e)}});var Fmi=H((Ebu,Gmi)=>{"use strict";var kwr;function gVa(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var xmi=$ae().codes,AVa=xmi.ERR_MISSING_ARGS,dVa=xmi.ERR_STREAM_DESTROYED;function Dmi(e){if(e)throw e}function pVa(e){return e.setHeader&&typeof e.abort=="function"}function fVa(e,t,r,n){n=gVa(n);var a=!1;e.on("close",function(){a=!0}),kwr===void 0&&(kwr=uyt()),kwr(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,pVa(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(l||new dVa("pipe"))}}}function kmi(e){e()}function IVa(e,t){return e.pipe(t)}function hVa(e){return!e.length||typeof e[e.length-1]!="function"?Dmi:e.pop()}function mVa(){for(var e=arguments.length,t=new Array(e),r=0;r0;return fVa(l,f,I,function(C){a||(a=C),C&&o.forEach(kmi),!f&&(o.forEach(kmi),n(a))})});return t.reduce(IVa)}Gmi.exports=mVa});var kRe=H((eH,o4e)=>{var s4e=Et("stream");process.env.READABLE_STREAM==="disable"&&s4e?(o4e.exports=s4e.Readable,Object.assign(o4e.exports,s4e),o4e.exports.Stream=s4e):(eH=o4e.exports=Iwr(),eH.Stream=s4e||eH,eH.Readable=eH,eH.Writable=dwr(),eH.Duplex=lme(),eH.Transform=Dwr(),eH.PassThrough=Nmi(),eH.finished=uyt(),eH.pipeline=Fmi())});var Vmi=H((Sbu,Lmi)=>{"use strict";var{Buffer:s4}=Et("buffer"),Zmi=Symbol.for("BufferList");function OE(e){if(!(this instanceof OE))return new OE(e);OE._init.call(this,e)}OE._init=function(t){Object.defineProperty(this,Zmi,{value:!0}),this._bufs=[],this.length=0,t&&this.append(t)};OE.prototype._new=function(t){return new OE(t)};OE.prototype._offset=function(t){if(t===0)return[0,0];let r=0;for(let n=0;nthis.length||t<0)return;let r=this._offset(t);return this._bufs[r[0]][r[1]]};OE.prototype.slice=function(t,r){return typeof t=="number"&&t<0&&(t+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,t,r)};OE.prototype.copy=function(t,r,n,a){if((typeof n!="number"||n<0)&&(n=0),(typeof a!="number"||a>this.length)&&(a=this.length),n>=this.length||a<=0)return t||s4.alloc(0);let o=!!t,l=this._offset(n),A=a-n,f=A,I=o&&r||0,C=l[1];if(n===0&&a===this.length){if(!o)return this._bufs.length===1?this._bufs[0]:s4.concat(this._bufs,this.length);for(let b=0;bE)this._bufs[b].copy(t,I,C),I+=E;else{this._bufs[b].copy(t,I,C,C+f),I+=E;break}f-=E,C&&(C=0)}return t.length>I?t.slice(0,I):t};OE.prototype.shallowSlice=function(t,r){if(t=t||0,r=typeof r!="number"?this.length:r,t<0&&(t+=this.length),r<0&&(r+=this.length),t===r)return this._new();let n=this._offset(t),a=this._offset(r),o=this._bufs.slice(n[0],a[0]+1);return a[1]===0?o.pop():o[o.length-1]=o[o.length-1].slice(0,a[1]),n[1]!==0&&(o[0]=o[0].slice(n[1])),this._new(o)};OE.prototype.toString=function(t,r,n){return this.slice(r,n).toString(t)};OE.prototype.consume=function(t){if(t=Math.trunc(t),Number.isNaN(t)||t<=0)return this;for(;this._bufs.length;)if(t>=this._bufs[0].length)t-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(t),this.length-=t;break}return this};OE.prototype.duplicate=function(){let t=this._new();for(let r=0;rthis.length?this.length:t;let n=this._offset(t),a=n[0],o=n[1];for(;a=e.length){let f=l.indexOf(e,o);if(f!==-1)return this._reverseOffset([a,f]);o=l.length-e.length+1}else{let f=this._reverseOffset([a,o]);if(this._match(f,e))return f;o++}o=0}return-1};OE.prototype._match=function(e,t){if(this.length-e{"use strict";var xwr=kRe().Duplex,CVa=ece(),a4e=Vmi();function xG(e){if(!(this instanceof xG))return new xG(e);if(typeof e=="function"){this._callback=e;let t=function(n){this._callback&&(this._callback(n),this._callback=null)}.bind(this);this.on("pipe",function(n){n.on("error",t)}),this.on("unpipe",function(n){n.removeListener("error",t)}),e=null}a4e._init.call(this,e),xwr.call(this)}CVa(xG,xwr);Object.assign(xG.prototype,a4e.prototype);xG.prototype._new=function(t){return new xG(t)};xG.prototype._write=function(t,r,n){this._appendBuffer(t),typeof n=="function"&&n()};xG.prototype._read=function(t){if(!this.length)return this.push(null);t=Math.min(t,this.length),this.push(this.slice(0,t)),this.consume(t)};xG.prototype.end=function(t){xwr.prototype.end.call(this,t),this._callback&&(this._callback(null,this.slice()),this._callback=null)};xG.prototype._destroy=function(t,r){this._bufs.length=0,this.length=0,r(t)};xG.prototype._isBufferList=function(t){return t instanceof xG||t instanceof a4e||xG.isBufferList(t)};xG.isBufferList=a4e.isBufferList;myt.exports=xG;myt.exports.BufferListStream=xG;myt.exports.BufferList=a4e});var Lwr=H(GRe=>{var _Va=Buffer.alloc,yVa="0000000000000000000",bVa="7777777777777777777",Wmi=48,Omi=Buffer.from("ustar\0","binary"),EVa=Buffer.from("00","binary"),SVa=Buffer.from("ustar ","binary"),vVa=Buffer.from(" \0","binary"),BVa=parseInt("7777",8),c4e=257,Zwr=263,wVa=function(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)},TVa=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},RVa=function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},Pmi=function(e,t,r,n){for(;rt?bVa.slice(0,t)+" ":yVa.slice(0,t-e.length)+e+" "};function NVa(e){var t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;for(var r=[],n=e.length-1;n>0;n--){var a=e[n];t?r.push(a):r.push(255-a)}var o=0,l=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e};GRe.decodeLongPath=function(e,t){return xRe(e,0,e.length,t)};GRe.encodePax=function(e){var t="";e.name&&(t+=Fwr(" path="+e.name+` -`)),e.linkname&&(t+=Fwr(" linkpath="+e.linkname+` -`));var r=e.pax;if(r)for(var n in r)t+=Fwr(" "+n+"="+r[n]+` -`);return Buffer.from(t)};GRe.decodePax=function(e){for(var t={};e.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;n+=n?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(n)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(r),t.write(sce(e.mode&BVa,6),100),t.write(sce(e.uid,6),108),t.write(sce(e.gid,6),116),t.write(sce(e.size,11),124),t.write(sce(e.mtime.getTime()/1e3|0,11),136),t[156]=Wmi+RVa(e.type),e.linkname&&t.write(e.linkname,157),Omi.copy(t,c4e),EVa.copy(t,Zwr),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(sce(e.devmajor||0,6),329),t.write(sce(e.devminor||0,6),337),n&&t.write(n,345),t.write(sce(Mmi(t),6),148),t)};GRe.decode=function(e,t,r){var n=e[156]===0?0:e[156]-Wmi,a=xRe(e,0,100,t),o=oce(e,100,8),l=oce(e,108,8),A=oce(e,116,8),f=oce(e,124,12),I=oce(e,136,12),C=TVa(n),b=e[157]===0?null:xRe(e,157,100,t),E=xRe(e,265,32),N=xRe(e,297,32),B=oce(e,329,8),F=oce(e,337,8),Q=Mmi(e);if(Q===8*32)return null;if(Q!==oce(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(Omi.compare(e,c4e,c4e+6)===0)e[345]&&(a=xRe(e,345,155,t)+"/"+a);else if(!(SVa.compare(e,c4e,c4e+6)===0&&vVa.compare(e,Zwr,Zwr+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return n===0&&a&&a[a.length-1]==="/"&&(n=5),{name:a,mode:o,uid:l,gid:A,size:f,mtime:new Date(1e3*I),type:C,linkname:b,uname:E,gname:N,devmajor:B,devminor:F}}});var Kmi=H((wbu,Umi)=>{var Ymi=Et("util"),DVa=Gwr(),l4e=Lwr(),Qmi=kRe().Writable,Xmi=kRe().PassThrough,Jmi=function(){},Hmi=function(e){return e&=511,e&&512-e},kVa=function(e,t){var r=new Cyt(e,t);return r.end(),r},xVa=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e},Cyt=function(e,t){this._parent=e,this.offset=t,Xmi.call(this,{autoDestroy:!1})};Ymi.inherits(Cyt,Xmi);Cyt.prototype.destroy=function(e){this._parent.destroy(e)};var Cee=function(e){if(!(this instanceof Cee))return new Cee(e);Qmi.call(this,e),e=e||{},this._offset=0,this._buffer=DVa(),this._missing=0,this._partial=!1,this._onparse=Jmi,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},a=function(E){if(t._locked=!1,E)return t.destroy(E);t._stream||n()},o=function(){t._stream=null;var E=Hmi(t._header.size);E?t._parse(E,l):t._parse(512,b),t._locked||n()},l=function(){t._buffer.consume(Hmi(t._header.size)),t._parse(512,b),n()},A=function(){var E=t._header.size;t._paxGlobal=l4e.decodePax(r.slice(0,E)),r.consume(E),o()},f=function(){var E=t._header.size;t._pax=l4e.decodePax(r.slice(0,E)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(E),o()},I=function(){var E=t._header.size;this._gnuLongPath=l4e.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},C=function(){var E=t._header.size;this._gnuLongLinkPath=l4e.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},b=function(){var E=t._offset,N;try{N=t._header=l4e.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(B){t.emit("error",B)}if(r.consume(512),!N){t._parse(512,b),n();return}if(N.type==="gnu-long-path"){t._parse(N.size,I),n();return}if(N.type==="gnu-long-link-path"){t._parse(N.size,C),n();return}if(N.type==="pax-global-header"){t._parse(N.size,A),n();return}if(N.type==="pax-header"){t._parse(N.size,f),n();return}if(t._gnuLongPath&&(N.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(N.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=N=xVa(N,t._pax),t._pax=null),t._locked=!0,!N.size||N.type==="directory"){t._parse(512,b),t.emit("entry",N,kVa(t,E),a);return}t._stream=new Cyt(t,E),t.emit("entry",N,t._stream,a),t._parse(N.size,o),n()};this._onheader=b,this._parse(512,b)};Ymi.inherits(Cee,Qmi);Cee.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))};Cee.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)};Cee.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=Jmi,this._overflow?this._write(this._overflow,void 0,e):e()}};Cee.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,a=this._buffer,o=this._missing;if(e.length&&(this._partial=!0),e.lengtho&&(l=e.slice(o),e=e.slice(0,o)),n?n.end(e):a.append(e),this._overflow=l,this._onparse()}};Cee.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()};Umi.exports=Cee});var zmi=H((Tbu,jmi)=>{jmi.exports=Et("fs").constants||Et("constants")});var rCi=H((Rbu,tCi)=>{var FRe=zmi(),qmi=Egr(),yyt=ece(),GVa=Buffer.alloc,$mi=kRe().Readable,ZRe=kRe().Writable,FVa=Et("string_decoder").StringDecoder,_yt=Lwr(),ZVa=parseInt("755",8),LVa=parseInt("644",8),eCi=GVa(1024),Wwr=function(){},Vwr=function(e,t){t&=511,t&&e.push(eCi.slice(0,512-t))};function VVa(e){switch(e&FRe.S_IFMT){case FRe.S_IFBLK:return"block-device";case FRe.S_IFCHR:return"character-device";case FRe.S_IFDIR:return"directory";case FRe.S_IFIFO:return"fifo";case FRe.S_IFLNK:return"symlink"}return"file"}var byt=function(e){ZRe.call(this),this.written=0,this._to=e,this._destroyed=!1};yyt(byt,ZRe);byt.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r};byt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var Eyt=function(){ZRe.call(this),this.linkname="",this._decoder=new FVa("utf-8"),this._destroyed=!1};yyt(Eyt,ZRe);Eyt.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()};Eyt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var u4e=function(){ZRe.call(this),this._destroyed=!1};yyt(u4e,ZRe);u4e.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))};u4e.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var g6=function(e){if(!(this instanceof g6))return new g6(e);$mi.call(this,e),this._drain=Wwr,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};yyt(g6,$mi);g6.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof t=="function"&&(r=t,t=null),r||(r=Wwr);var n=this;if((!e.size||e.type==="symlink")&&(e.size=0),e.type||(e.type=VVa(e.mode)),e.mode||(e.mode=e.type==="directory"?ZVa:LVa),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),typeof t=="string"&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var a=this.push(t);return Vwr(n,e.size),a?process.nextTick(r):this._drain=r,new u4e}if(e.type==="symlink"&&!e.linkname){var o=new Eyt;return qmi(o,function(A){if(A)return n.destroy(),r(A);e.linkname=o.linkname,n._encode(e),r()}),o}if(this._encode(e),e.type!=="file"&&e.type!=="contiguous-file")return process.nextTick(r),new u4e;var l=new byt(this);return this._stream=l,qmi(l,function(A){if(n._stream=null,A)return n.destroy(),r(A);if(l.written!==e.size)return n.destroy(),r(new Error("size mismatch"));Vwr(n,e.size),n._finalizing&&n.finalize(),r()}),l}};g6.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(eCi),this.push(null))};g6.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};g6.prototype._encode=function(e){if(!e.pax){var t=_yt.encode(e);if(t){this.push(t);return}}this._encodePax(e)};g6.prototype._encodePax=function(e){var t=_yt.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(_yt.encode(r)),this.push(t),Vwr(this,t.length),r.size=e.size,r.type=e.type,this.push(_yt.encode(r))};g6.prototype._read=function(e){var t=this._drain;this._drain=Wwr,t()};tCi.exports=g6});var nCi=H(Owr=>{Owr.extract=Kmi();Owr.pack=rCi()});var Pwr=H(pme=>{"use strict";Object.defineProperty(pme,"__esModule",{value:!0});pme.hasPackScripts=HVa;pme.prepareForPack=YVa;pme.genPackStream=QVa;pme.genPackageManifest=lCi;pme.genPackList=uCi;var cCi=(Wa(),vi(Va)),g4e=mn(),Xh=Io(),iCi=cCi.__importDefault(Tk()),WVa=cCi.__importDefault(nCi()),OVa=Et("zlib"),PVa=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],MVa=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function HVa(e){return!!(g4e.scriptUtils.hasWorkspaceScript(e,"prepack")||g4e.scriptUtils.hasWorkspaceScript(e,"postpack"))}async function YVa(e,{report:t},r){await g4e.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"prepack",{report:t});try{let n=Xh.ppath.join(e.cwd,g4e.Manifest.fileName);await Xh.xfs.existsPromise(n)&&await e.manifest.loadFile(n,{baseFs:Xh.xfs}),await r()}finally{await g4e.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"postpack",{report:t})}}async function QVa(e,t){typeof t>"u"&&(t=await uCi(e));let r=new Set;for(let o of e.manifest.publishConfig?.executableFiles??new Set)r.add(Xh.ppath.normalize(o));for(let o of e.manifest.bin.values())r.add(Xh.ppath.normalize(o));let n=WVa.default.pack();process.nextTick(async()=>{for(let o of t){let l=Xh.ppath.normalize(o),A=Xh.ppath.resolve(e.cwd,l),f=Xh.ppath.join("package",l),I=await Xh.xfs.lstatPromise(A),C={name:f,mtime:new Date(Xh.constants.SAFE_TIME*1e3)},b=r.has(l)?493:420,E,N,B=new Promise((Q,J)=>{E=Q,N=J}),F=Q=>{Q?N(Q):E()};if(I.isFile()){let Q;l==="package.json"?Q=Buffer.from(JSON.stringify(await lCi(e),null,2)):Q=await Xh.xfs.readFilePromise(A),n.entry({...C,mode:b,type:"file"},Q,F)}else I.isSymbolicLink()?n.entry({...C,mode:b,type:"symlink",linkname:await Xh.xfs.readlinkPromise(A)},F):F(new Error(`Unsupported file type ${I.mode} for ${Xh.npath.fromPortablePath(l)}`));await B}n.finalize()});let a=(0,OVa.createGzip)();return n.pipe(a),a}async function lCi(e){let t=JSON.parse(JSON.stringify(e.manifest.raw));return await e.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,e,t),t}async function uCi(e){let t=e.project,r=t.configuration,n={accept:[],reject:[]};for(let b of MVa)n.reject.push(b);for(let b of PVa)n.accept.push(b);n.reject.push(r.get("rcFilename"));let a=b=>{if(b===null||!b.startsWith(`${e.cwd}/`))return;let E=Xh.ppath.relative(e.cwd,b),N=Xh.ppath.resolve(Xh.PortablePath.root,E);n.reject.push(N)};a(Xh.ppath.resolve(t.cwd,Xh.Filename.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(b=>b.populateYarnPaths,t,b=>{a(b)});for(let b of t.workspaces){let E=Xh.ppath.relative(e.cwd,b.cwd);E!==""&&!E.match(/^(\.\.)?\//)&&n.reject.push(`/${E}`)}let o={accept:[],reject:[]},l=e.manifest.publishConfig?.main??e.manifest.main,A=e.manifest.publishConfig?.module??e.manifest.module,f=e.manifest.publishConfig?.browser??e.manifest.browser,I=e.manifest.publishConfig?.bin??e.manifest.bin;l!=null&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,l)),A!=null&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,A)),typeof f=="string"&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,f));for(let b of I.values())o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,b));if(f instanceof Map)for(let[b,E]of f.entries())o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,b)),typeof E=="string"&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,E));let C=e.manifest.files!==null;if(C){o.reject.push("/*");for(let b of e.manifest.files)gCi(o.accept,b,{cwd:Xh.PortablePath.root})}return await XVa(e.cwd,{hasExplicitFileList:C,globalList:n,ignoreList:o})}async function XVa(e,{hasExplicitFileList:t,globalList:r,ignoreList:n}){let a=[],o=new Xh.JailFS(e),l=[[Xh.PortablePath.root,[n]]];for(;l.length>0;){let[A,f]=l.pop(),I=await o.lstatPromise(A);if(!oCi(A,{globalList:r,ignoreLists:I.isDirectory()?null:f}))if(I.isDirectory()){let C=await o.readdirPromise(A),b=!1,E=!1;if(!t||A!==Xh.PortablePath.root)for(let F of C)b=b||F===".gitignore",E=E||F===".npmignore";let N=E?await sCi(o,A,".npmignore"):b?await sCi(o,A,".gitignore"):null,B=N!==null?[N].concat(f):f;oCi(A,{globalList:r,ignoreLists:f})&&(B=[...f,{accept:[],reject:["**/*"]}]);for(let F of C)l.push([Xh.ppath.resolve(A,F),B])}else(I.isFile()||I.isSymbolicLink())&&a.push(Xh.ppath.relative(Xh.PortablePath.root,A))}return a.sort()}async function sCi(e,t,r){let n={accept:[],reject:[]},a=await e.readFilePromise(Xh.ppath.join(t,r),"utf8");for(let o of a.split(/\n/g))gCi(n.reject,o,{cwd:t});return n}function JVa(e,{cwd:t}){let r=e[0]==="!";return r&&(e=e.slice(1)),e.match(/\.{0,1}\//)&&(e=Xh.ppath.resolve(t,e)),r&&(e=`!${e}`),e}function gCi(e,t,{cwd:r}){let n=t.trim();n===""||n[0]==="#"||e.push(JVa(n,{cwd:r}))}var hP;(function(e){e[e.None=0]="None",e[e.Match=1]="Match",e[e.NegatedMatch=2]="NegatedMatch"})(hP||(hP={}));function oCi(e,{globalList:t,ignoreLists:r}){let n=Syt(e,t.accept);if(n!==hP.None)return n===hP.NegatedMatch;let a=Syt(e,t.reject);if(a!==hP.None)return a===hP.Match;if(r!==null)for(let o of r){let l=Syt(e,o.accept);if(l!==hP.None)return l===hP.NegatedMatch;let A=Syt(e,o.reject);if(A!==hP.None)return A===hP.Match}return!1}function Syt(e,t){let r=t,n=[];for(let a=0;a{"use strict";Object.defineProperty(Mwr,"__esModule",{value:!0});var UVa=(Wa(),vi(Va)),ACi=dl(),_ee=mn(),A6=Io(),LRe=(Rl(),vi(ng)),vyt=UVa.__importStar(Pwr()),A4e=class extends ACi.BaseCommand{constructor(){super(...arguments),this.installIfNeeded=LRe.Option.Boolean("--install-if-needed",!1,{description:"Run a preliminary `yarn install` if the package contains build scripts"}),this.dryRun=LRe.Option.Boolean("-n,--dry-run",!1,{description:"Print the file paths without actually generating the package archive"}),this.json=LRe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.out=LRe.Option.String("-o,--out",{description:"Create the archive at the specified path"}),this.filename=LRe.Option.String("--filename",{hidden:!0})}async execute(){let t=await _ee.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await _ee.Project.find(t,this.context.cwd);if(!n)throw new ACi.WorkspaceRequiredError(r.cwd,this.context.cwd);await vyt.hasPackScripts(n)&&(this.installIfNeeded?await r.install({cache:await _ee.Cache.find(t),report:new _ee.ThrowReport}):await r.restoreInstallState());let a=this.out??this.filename,o=typeof a<"u"?A6.ppath.resolve(this.context.cwd,KVa(a,{workspace:n})):A6.ppath.resolve(n.cwd,"package.tgz");return(await _ee.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async A=>{await vyt.prepareForPack(n,{report:A},async()=>{A.reportJson({base:A6.npath.fromPortablePath(n.cwd)});let f=await vyt.genPackList(n);for(let I of f)A.reportInfo(null,A6.npath.fromPortablePath(I)),A.reportJson({location:A6.npath.fromPortablePath(I)});if(!this.dryRun){let I=await vyt.genPackStream(n,f);await A6.xfs.mkdirPromise(A6.ppath.dirname(o),{recursive:!0});let C=A6.xfs.createWriteStream(o);I.pipe(C),await new Promise(b=>{C.on("finish",b)})}}),this.dryRun||(A.reportInfo(_ee.MessageName.UNNAMED,`Package archive generated in ${_ee.formatUtils.pretty(t,o,_ee.formatUtils.Type.PATH)}`),A.reportJson({output:A6.npath.fromPortablePath(o)}))})).exitCode()}};A4e.paths=[["pack"]];A4e.usage=LRe.Command.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,--out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});Mwr.default=A4e;function KVa(e,{workspace:t}){let r=e.replace("%s",jVa(t)).replace("%v",zVa(t));return A6.npath.toPortablePath(r)}function jVa(e){return e.manifest.name!==null?_ee.structUtils.slugifyIdent(e.manifest.name):"package"}function zVa(e){return e.manifest.version!==null?e.manifest.version:"unknown"}});var Ime=H(fme=>{"use strict";Object.defineProperty(fme,"__esModule",{value:!0});fme.packUtils=fme.PackCommand=void 0;var fCi=(Wa(),vi(Va)),d4e=mn(),pCi=mn(),ICi=fCi.__importDefault(dCi());fme.PackCommand=ICi.default;var qVa=fCi.__importStar(Pwr());fme.packUtils=qVa;var $Va=["dependencies","devDependencies","peerDependencies"],eWa="workspace:",tWa=(e,t)=>{t.publishConfig&&(t.publishConfig.type&&(t.type=t.publishConfig.type),t.publishConfig.main&&(t.main=t.publishConfig.main),t.publishConfig.browser&&(t.browser=t.publishConfig.browser),t.publishConfig.module&&(t.module=t.publishConfig.module),t.publishConfig.exports&&(t.exports=t.publishConfig.exports),t.publishConfig.imports&&(t.imports=t.publishConfig.imports),t.publishConfig.bin&&(t.bin=t.publishConfig.bin));let r=e.project;for(let n of $Va)for(let a of e.manifest.getForScope(n).values()){let o=r.tryWorkspaceByDescriptor(a),l=d4e.structUtils.parseRange(a.range);if(l.protocol===eWa)if(o===null){if(r.tryWorkspaceByIdent(a)===null)throw new pCi.ReportError(pCi.MessageName.WORKSPACE_NOT_FOUND,`${d4e.structUtils.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let A;d4e.structUtils.areDescriptorsEqual(a,o.anchoredDescriptor)||l.selector==="*"?A=o.manifest.version??"0.0.0":l.selector==="~"||l.selector==="^"?A=`${l.selector}${o.manifest.version??"0.0.0"}`:A=l.selector;let f=n==="dependencies"?d4e.structUtils.makeDescriptor(a,"unknown"):null,I=f!==null&&e.manifest.ensureDependencyMeta(f).optional?"optionalDependencies":n;t[I][d4e.structUtils.stringifyIdent(a)]=A}}},rWa={hooks:{beforeWorkspacePacking:tWa},commands:[ICi.default]};fme.default=rWa});var SCi=H((Fbu,ECi)=>{ECi.exports=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e)});var BCi=H((Zbu,vCi)=>{vCi.exports=typeof process<"u"&&typeof process.nextTick=="function"?process.nextTick.bind(process):SCi()});var TCi=H((Vbu,wCi)=>{wCi.exports=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}clear(){this.top=this.btm=0,this.next=null,this.buffer.fill(void 0)}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}peek(){return this.buffer[this.btm]}isEmpty(){return this.buffer[this.btm]===void 0}}});var Qwr=H((Obu,NCi)=>{var RCi=TCi();NCi.exports=class{constructor(t){this.hwm=t||16,this.head=new RCi(this.hwm),this.tail=this.head,this.length=0}clear(){this.head=this.tail,this.head.clear(),this.length=0}push(t){if(this.length++,!this.head.push(t)){let r=this.head;this.head=r.next=new RCi(2*this.head.buffer.length),this.head.push(t)}}shift(){this.length!==0&&this.length--;let t=this.tail.shift();if(t===void 0&&this.tail.next){let r=this.tail.next;return this.tail.next=null,this.tail=r,this.tail.shift()}return t}peek(){let t=this.tail.peek();return t===void 0&&this.tail.next?this.tail.next.peek():t}isEmpty(){return this.length===0}}});var kCi=H((Mbu,DCi)=>{DCi.exports=class{constructor(t){this.encoding=t}get remaining(){return 0}decode(t){return t.toString(this.encoding)}flush(){return""}}});var GCi=H((Ybu,xCi)=>{xCi.exports=class{constructor(){this.codePoint=0,this.bytesSeen=0,this.bytesNeeded=0,this.lowerBoundary=128,this.upperBoundary=191}get remaining(){return this.bytesSeen}decode(t){if(this.bytesNeeded===0){let n=!0;for(let a=Math.max(0,t.byteLength-4),o=t.byteLength;a=194&&o<=223?(this.bytesNeeded=2,this.codePoint=o&31):o>=224&&o<=239?(o===224?this.lowerBoundary=160:o===237&&(this.upperBoundary=159),this.bytesNeeded=3,this.codePoint=o&15):o>=240&&o<=244?(o===240&&(this.lowerBoundary=144),o===244&&(this.upperBoundary=143),this.bytesNeeded=4,this.codePoint=o&7):r+="\uFFFD");continue}if(othis.upperBoundary){this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,r+="\uFFFD";continue}this.lowerBoundary=128,this.upperBoundary=191,this.codePoint=this.codePoint<<6|o&63,this.bytesSeen++,this.bytesSeen===this.bytesNeeded&&(r+=String.fromCodePoint(this.codePoint),this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0)}return r}flush(){let t=this.bytesNeeded>0?"\uFFFD":"";return this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,t}}});var ZCi=H((Xbu,FCi)=>{var nWa=kCi(),iWa=GCi();FCi.exports=class{constructor(t="utf8"){switch(this.encoding=sWa(t),this.encoding){case"utf8":this.decoder=new iWa;break;case"utf16le":case"base64":throw new Error("Unsupported encoding: "+this.encoding);default:this.decoder=new nWa(this.encoding)}}get remaining(){return this.decoder.remaining}push(t){return typeof t=="string"?t:this.decoder.decode(t)}write(t){return this.push(t)}end(t){let r="";return t&&(r=this.push(t)),r+=this.decoder.flush(),r}};function sWa(e){switch(e=e.toLowerCase(),e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:throw new Error("Unknown encoding: "+e)}}});var aTr=H((Jbu,a_i)=>{var{EventEmitter:oWa}=Et("events"),kyt=new Error("Stream was destroyed"),Xwr=new Error("Premature close"),MCi=BCi(),HCi=Qwr(),aWa=ZCi(),LS=(1<<29)-1,yme=1,$wr=2,hme=4,p4e=8,YCi=LS^yme,cWa=LS^$wr,_4e=16,f4e=32,MRe=64,ace=128,y4e=256,eTr=512,mme=1024,Jwr=2048,tTr=4096,rTr=8192,o4=16384,VRe=32768,xyt=65536,Cme=131072,QCi=y4e|eTr,lWa=_4e|xyt,uWa=MRe|_4e,gWa=tTr|ace,nTr=y4e|Cme,AWa=LS^_4e,dWa=LS^MRe,pWa=LS^(MRe|xyt),LCi=LS^xyt,fWa=LS^y4e,IWa=LS^(ace|rTr),hWa=LS^mme,VCi=LS^QCi,XCi=LS^VRe,mWa=LS^f4e,JCi=LS^Cme,CWa=LS^nTr,cce=1<<18,ORe=2<<18,b4e=4<<18,_me=8<<18,E4e=16<<18,bme=32<<18,Uwr=64<<18,WRe=128<<18,iTr=256<<18,PRe=512<<18,Gyt=1024<<18,UCi=LS^(cce|iTr),KCi=LS^b4e,_Wa=LS^PRe,yWa=LS^E4e,bWa=LS^_me,jCi=LS^WRe,EWa=LS^ORe,zCi=LS^Gyt,I4e=_4e|cce,qCi=LS^I4e,sTr=o4|bme,yee=hme|p4e|$wr,mP=yee|yme,$Ci=yee|sTr,SWa=KCi&dWa,oTr=WRe|VRe,vWa=oTr&qCi,e_i=mP|vWa,BWa=mP|mme|o4,WCi=mP|o4|ace,wWa=mP|mme|ace,TWa=mP|tTr|ace|rTr,RWa=mP|_4e|mme|o4|xyt|Cme,NWa=yee|mme|o4,DWa=f4e|mP|VRe|MRe,kWa=mP|PRe|bme,xWa=_me|E4e,t_i=_me|cce,GWa=_me|E4e|mP|cce,OCi=mP|cce|_me|Gyt,FWa=b4e|cce,ZWa=cce|iTr,LWa=mP|PRe|t_i|bme,VWa=E4e|yee|PRe|bme,WWa=ORe|mP|WRe|b4e,wyt=Symbol.asyncIterator||Symbol("asyncIterator"),Tyt=class{constructor(t,{highWaterMark:r=16384,map:n=null,mapWritable:a,byteLength:o,byteLengthWritable:l}={}){this.stream=t,this.queue=new HCi,this.highWaterMark=r,this.buffered=0,this.error=null,this.pipeline=null,this.drains=null,this.byteLength=l||o||o_i,this.map=a||n,this.afterWrite=MWa.bind(this),this.afterUpdateNextTick=QWa.bind(this)}get ended(){return(this.stream._duplexState&bme)!==0}push(t){return this.map!==null&&(t=this.map(t)),this.buffered+=this.byteLength(t),this.queue.push(t),this.buffered0,this.error=null,this.pipeline=null,this.byteLength=l||o||o_i,this.map=a||n,this.pipeTo=null,this.afterRead=HWa.bind(this),this.afterUpdateNextTick=YWa.bind(this)}get ended(){return(this.stream._duplexState&o4)!==0}pipe(t,r){if(this.pipeTo!==null)throw new Error("Can only pipe to one destination");if(typeof r!="function"&&(r=null),this.stream._duplexState|=eTr,this.pipeTo=t,this.pipeline=new zwr(this.stream,t,r),r&&this.stream.on("error",PCi),C4e(t))t._writableState.pipeline=this.pipeline,r&&t.on("error",PCi),t.on("finish",this.pipeline.finished.bind(this.pipeline));else{let n=this.pipeline.done.bind(this.pipeline,t),a=this.pipeline.done.bind(this.pipeline,t,null);t.on("error",n),t.on("close",a),t.on("finish",this.pipeline.finished.bind(this.pipeline))}t.on("drain",OWa.bind(this)),this.stream.emit("piping",t),t.emit("pipe",this.stream)}push(t){let r=this.stream;return t===null?(this.highWaterMark=0,r._duplexState=(r._duplexState|mme)&pWa,!1):this.map!==null&&(t=this.map(t),t===null)?(r._duplexState&=LCi,this.buffered0;)r.push(this.shift());for(let n=0;n0;)n.drains.shift().resolve(!1);n.pipeline!==null&&n.pipeline.done(t,e)}}function MWa(e){let t=this.stream;e&&t.destroy(e),t._duplexState&=UCi,this.drains!==null&&XWa(this.drains),(t._duplexState&GWa)===E4e&&(t._duplexState&=yWa,(t._duplexState&Uwr)===Uwr&&t.emit("drain")),this.updateCallback()}function HWa(e){e&&this.stream.destroy(e),this.stream._duplexState&=AWa,this.readAhead===!1&&!(this.stream._duplexState&y4e)&&(this.stream._duplexState&=JCi),this.updateCallback()}function YWa(){this.stream._duplexState&f4e||(this.stream._duplexState&=XCi,this.update())}function QWa(){this.stream._duplexState&ORe||(this.stream._duplexState&=jCi,this.update())}function XWa(e){for(let t=0;t0)?null:n(l)}}_read(t){t(null)}pipe(t,r){return this._readableState.updateNextTick(),this._readableState.pipe(t,r),t}read(){return this._readableState.updateNextTick(),this._readableState.read()}push(t){return this._readableState.updateNextTick(),this._readableState.push(t)}unshift(t){return this._readableState.updateNextTick(),this._readableState.unshift(t)}resume(){return this._duplexState|=nTr,this._readableState.updateNextTick(),this}pause(){return this._duplexState&=this._readableState.readAhead===!1?CWa:fWa,this}static _fromAsyncIterator(t,r){let n,a=new e({...r,read(l){t.next().then(o).then(l.bind(null,null)).catch(l)},predestroy(){n=t.return()},destroy(l){if(!n)return l(null);n.then(l.bind(null,null)).catch(l)}});return a;function o(l){l.done?a.push(null):a.push(l.value)}}static from(t,r){if(tOa(t))return t;if(t[wyt])return this._fromAsyncIterator(t[wyt](),r);Array.isArray(t)||(t=t===void 0?[]:[t]);let n=0;return new e({...r,read(a){this.push(n===t.length?null:t[n++]),a(null)}})}static isBackpressured(t){return(t._duplexState&NWa)!==0||t._readableState.buffered>=t._readableState.highWaterMark}static isPaused(t){return(t._duplexState&y4e)===0}[wyt](){let t=this,r=null,n=null,a=null;return this.on("error",I=>{r=I}),this.on("readable",o),this.on("close",l),{[wyt](){return this},next(){return new Promise(function(I,C){n=I,a=C;let b=t.read();b!==null?A(b):t._duplexState&p4e&&A(null)})},return(){return f(null)},throw(I){return f(I)}};function o(){n!==null&&A(t.read())}function l(){n!==null&&A(null)}function A(I){a!==null&&(r?a(r):I===null&&!(t._duplexState&o4)?a(kyt):n({value:I,done:I===null}),a=n=null)}function f(I){return t.destroy(I),new Promise((C,b)=>{if(t._duplexState&p4e)return C({value:void 0,done:!0});t.once("close",function(){I?b(I):C({value:void 0,done:!0})})})}}},Nyt=class extends h4e{constructor(t){super(t),this._duplexState|=yme|o4,this._writableState=new Tyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final),t.eagerOpen&&this._writableState.updateNextTick())}cork(){this._duplexState|=Gyt}uncork(){this._duplexState&=zCi,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}static isBackpressured(t){return(t._duplexState&VWa)!==0}static drained(t){if(t.destroyed)return Promise.resolve(!1);let r=t._writableState,a=(iOa(t)?Math.min(1,r.queue.length):r.queue.length)+(t._duplexState&iTr?1:0);return a===0?Promise.resolve(!0):(r.drains===null&&(r.drains=[]),new Promise(o=>{r.drains.push({writes:a,resolve:o})}))}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},m4e=class extends Ryt{constructor(t){super(t),this._duplexState=yme|this._duplexState&Cme,this._writableState=new Tyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final))}cork(){this._duplexState|=Gyt}uncork(){this._duplexState&=zCi,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},Dyt=class extends m4e{constructor(t){super(t),this._transformState=new jwr(this),t&&(t.transform&&(this._transform=t.transform),t.flush&&(this._flush=t.flush))}_write(t,r){this._readableState.buffered>=this._readableState.highWaterMark?this._transformState.data=t:this._transform(t,this._transformState.afterTransform)}_read(t){if(this._transformState.data!==null){let r=this._transformState.data;this._transformState.data=null,t(null),this._transform(r,this._transformState.afterTransform)}else t(null)}destroy(t){super.destroy(t),this._transformState.data!==null&&(this._transformState.data=null,this._transformState.afterTransform())}_transform(t,r){r(null,t)}_flush(t){t(null)}_final(t){this._transformState.afterFinal=t,this._flush(KWa.bind(this))}},qwr=class extends Dyt{};function KWa(e,t){let r=this._transformState.afterFinal;if(e)return r(e);t!=null&&this.push(t),this.push(null),r(null)}function jWa(...e){return new Promise((t,r)=>i_i(...e,n=>{if(n)return r(n);t()}))}function i_i(e,...t){let r=Array.isArray(e)?[...e,...t]:[e,...t],n=r.length&&typeof r[r.length-1]=="function"?r.pop():null;if(r.length<2)throw new Error("Pipeline requires at least 2 streams");let a=r[0],o=null,l=null;for(let I=1;I1,f),a.pipe(o)),a=o;if(n){let I=!1,C=C4e(o)||!!(o._writableState&&o._writableState.autoDestroy);o.on("error",b=>{l===null&&(l=b)}),o.on("finish",()=>{I=!0,C||n(l)}),C&&o.on("close",()=>n(l||(I?null:Xwr)))}return o;function A(I,C,b,E){I.on("error",E),I.on("close",N);function N(){if(C&&I._readableState&&!I._readableState.ended||b&&I._writableState&&!I._writableState.ended)return E(Xwr)}}function f(I){if(!(!I||l)){l=I;for(let C of r)C.destroy(I)}}}function zWa(e){return e}function s_i(e){return!!e._readableState||!!e._writableState}function C4e(e){return typeof e._duplexState=="number"&&s_i(e)}function qWa(e){return!!e._readableState&&e._readableState.ended}function $Wa(e){return!!e._writableState&&e._writableState.ended}function eOa(e,t={}){let r=e._readableState&&e._readableState.error||e._writableState&&e._writableState.error;return!t.all&&r===kyt?null:r}function tOa(e){return C4e(e)&&e.readable}function rOa(e){return typeof e=="object"&&e!==null&&typeof e.byteLength=="number"}function o_i(e){return rOa(e)?e.byteLength:1024}function PCi(){}function nOa(){this.destroy(new Error("Stream aborted."))}function iOa(e){return e._writev!==Nyt.prototype._writev&&e._writev!==m4e.prototype._writev}a_i.exports={pipeline:i_i,pipelinePromise:jWa,isStream:s_i,isStreamx:C4e,isEnded:qWa,isFinished:$Wa,getStreamError:eOa,Stream:h4e,Writable:Nyt,Readable:Ryt,Duplex:m4e,Transform:Dyt,PassThrough:qwr}});var Fyt=H((Ubu,c_i)=>{function sOa(e){return Buffer.isBuffer(e)||e instanceof Uint8Array}function oOa(e){return Buffer.isEncoding(e)}function aOa(e,t,r){return Buffer.alloc(e,t,r)}function cOa(e){return Buffer.allocUnsafe(e)}function lOa(e){return Buffer.allocUnsafeSlow(e)}function uOa(e,t){return Buffer.byteLength(e,t)}function gOa(e,t){return Buffer.compare(e,t)}function AOa(e,t){return Buffer.concat(e,t)}function dOa(e,t,r,n,a){return lb(e).copy(t,r,n,a)}function pOa(e,t){return lb(e).equals(t)}function fOa(e,t,r,n,a){return lb(e).fill(t,r,n,a)}function IOa(e,t,r){return Buffer.from(e,t,r)}function hOa(e,t,r,n){return lb(e).includes(t,r,n)}function mOa(e,t,r,n){return lb(e).indexOf(t,r,n)}function COa(e,t,r,n){return lb(e).lastIndexOf(t,r,n)}function _Oa(e){return lb(e).swap16()}function yOa(e){return lb(e).swap32()}function bOa(e){return lb(e).swap64()}function lb(e){return Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function EOa(e,t,r,n){return lb(e).toString(t,r,n)}function SOa(e,t,r,n,a){return lb(e).write(t,r,n,a)}function vOa(e,t,r){return lb(e).writeDoubleLE(t,r)}function BOa(e,t,r){return lb(e).writeFloatLE(t,r)}function wOa(e,t,r){return lb(e).writeUInt32LE(t,r)}function TOa(e,t,r){return lb(e).writeInt32LE(t,r)}function ROa(e,t){return lb(e).readDoubleLE(t)}function NOa(e,t){return lb(e).readFloatLE(t)}function DOa(e,t){return lb(e).readUInt32LE(t)}function kOa(e,t){return lb(e).readInt32LE(t)}function xOa(e,t,r){return lb(e).writeDoubleBE(t,r)}function GOa(e,t,r){return lb(e).writeFloatBE(t,r)}function FOa(e,t,r){return lb(e).writeUInt32BE(t,r)}function ZOa(e,t,r){return lb(e).writeInt32BE(t,r)}function LOa(e,t){return lb(e).readDoubleBE(t)}function VOa(e,t){return lb(e).readFloatBE(t)}function WOa(e,t){return lb(e).readUInt32BE(t)}function OOa(e,t){return lb(e).readInt32BE(t)}c_i.exports={isBuffer:sOa,isEncoding:oOa,alloc:aOa,allocUnsafe:cOa,allocUnsafeSlow:lOa,byteLength:uOa,compare:gOa,concat:AOa,copy:dOa,equals:pOa,fill:fOa,from:IOa,includes:hOa,indexOf:mOa,lastIndexOf:COa,swap16:_Oa,swap32:yOa,swap64:bOa,toBuffer:lb,toString:EOa,write:SOa,writeDoubleLE:vOa,writeFloatLE:BOa,writeUInt32LE:wOa,writeInt32LE:TOa,readDoubleLE:ROa,readFloatLE:NOa,readUInt32LE:DOa,readInt32LE:kOa,writeDoubleBE:xOa,writeFloatBE:GOa,writeUInt32BE:FOa,writeInt32BE:ZOa,readDoubleBE:LOa,readFloatBE:VOa,readUInt32BE:WOa,readInt32BE:OOa}});var uTr=H(YRe=>{var e_=Fyt(),POa="0000000000000000000",MOa="7777777777777777777",Zyt=48,l_i=e_.from([117,115,116,97,114,0]),HOa=e_.from([Zyt,Zyt]),YOa=e_.from([117,115,116,97,114,32]),QOa=e_.from([32,0]),XOa=4095,S4e=257,lTr=263;YRe.decodeLongPath=function(t,r){return HRe(t,0,t.length,r)};YRe.encodePax=function(t){let r="";t.name&&(r+=cTr(" path="+t.name+` -`)),t.linkname&&(r+=cTr(" linkpath="+t.linkname+` -`));let n=t.pax;if(n)for(let a in n)r+=cTr(" "+a+"="+n[a]+` -`);return e_.from(r)};YRe.decodePax=function(t){let r={};for(;t.length;){let n=0;for(;n100;){let o=n.indexOf("/");if(o===-1)return null;a+=a?"/"+n.slice(0,o):n.slice(0,o),n=n.slice(o+1)}return e_.byteLength(n)>100||e_.byteLength(a)>155||t.linkname&&e_.byteLength(t.linkname)>100?null:(e_.write(r,n),e_.write(r,uce(t.mode&XOa,6),100),e_.write(r,uce(t.uid,6),108),e_.write(r,uce(t.gid,6),116),$Oa(t.size,r,124),e_.write(r,uce(t.mtime.getTime()/1e3|0,11),136),r[156]=Zyt+zOa(t.type),t.linkname&&e_.write(r,t.linkname,157),e_.copy(l_i,r,S4e),e_.copy(HOa,r,lTr),t.uname&&e_.write(r,t.uname,265),t.gname&&e_.write(r,t.gname,297),e_.write(r,uce(t.devmajor||0,6),329),e_.write(r,uce(t.devminor||0,6),337),a&&e_.write(r,a,345),e_.write(r,uce(g_i(r),6),148),r)};YRe.decode=function(t,r,n){let a=t[156]===0?0:t[156]-Zyt,o=HRe(t,0,100,r),l=lce(t,100,8),A=lce(t,108,8),f=lce(t,116,8),I=lce(t,124,12),C=lce(t,136,12),b=jOa(a),E=t[157]===0?null:HRe(t,157,100,r),N=HRe(t,265,32),B=HRe(t,297,32),F=lce(t,329,8),Q=lce(t,337,8),J=g_i(t);if(J===8*32)return null;if(J!==lce(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(JOa(t))t[345]&&(o=HRe(t,345,155,r)+"/"+o);else if(!UOa(t)){if(!n)throw new Error("Invalid tar header: unknown format.")}return a===0&&o&&o[o.length-1]==="/"&&(a=5),{name:o,mode:l,uid:A,gid:f,size:I,mtime:new Date(1e3*C),type:b,linkname:E,uname:N,gname:B,devmajor:F,devminor:Q,pax:null}};function JOa(e){return e_.equals(l_i,e.subarray(S4e,S4e+6))}function UOa(e){return e_.equals(YOa,e.subarray(S4e,S4e+6))&&e_.equals(QOa,e.subarray(lTr,lTr+2))}function KOa(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)}function jOa(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function zOa(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function u_i(e,t,r,n){for(;rt?MOa.slice(0,t)+" ":POa.slice(0,t-e.length)+e+" "}function qOa(e,t,r){t[r]=128;for(let n=11;n>0;n--)t[r+n]=e&255,e=Math.floor(e/256)}function $Oa(e,t,r){e.toString(8).length>11?qOa(e,t,r):e_.write(t,uce(e,11),r)}function ePa(e){let t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;let r=[],n;for(n=e.length-1;n>0;n--){let l=e[n];t?r.push(l):r.push(255-l)}let a=0,o=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e}});var I_i=H((jbu,f_i)=>{var{Writable:tPa,Readable:rPa,getStreamError:A_i}=aTr(),nPa=Qwr(),d_i=Fyt(),QRe=uTr(),iPa=d_i.alloc(0),ATr=class{constructor(){this.buffered=0,this.shifted=0,this.queue=new nPa,this._offset=0}push(t){this.buffered+=t.byteLength,this.queue.push(t)}shiftFirst(t){return this._buffered===0?null:this._next(t)}shift(t){if(t>this.buffered)return null;if(t===0)return iPa;let r=this._next(t);if(t===r.byteLength)return r;let n=[r];for(;(t-=r.byteLength)>0;)r=this._next(t),n.push(r);return d_i.concat(n)}_next(t){let r=this.queue.peek(),n=r.byteLength-this._offset;if(t>=n){let a=this._offset?r.subarray(this._offset,r.byteLength):r;return this.queue.shift(),this._offset=0,this.buffered-=n,this.shifted+=n,a}return this.buffered-=t,this.shifted+=t,r.subarray(this._offset,this._offset+=t)}},dTr=class extends rPa{constructor(t,r,n){super(),this.header=r,this.offset=n,this._parent=t}_read(t){this.header.size===0&&this.push(null),this._parent._stream===this&&this._parent._update(),t(null)}_predestroy(){this._parent.destroy(A_i(this))}_detach(){this._parent._stream===this&&(this._parent._stream=null,this._parent._missing=p_i(this.header.size),this._parent._update())}_destroy(t){this._detach(),t(null)}},pTr=class extends tPa{constructor(t){super(t),t||(t={}),this._buffer=new ATr,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=gTr,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=t.filenameEncoding||"utf-8",this._allowUnknownFormat=!!t.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(t){if(this._locked=!1,t){this.destroy(t),this._continueWrite(t);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=QRe.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(t){return this._continueWrite(t),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}return this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory"?(this.emit("entry",this._header,this._createStream(),this._unlockBound),!0):(this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0)}_applyLongHeaders(){this._gnuLongPath&&(this._header.name=this._gnuLongPath,this._gnuLongPath=null),this._gnuLongLinkPath&&(this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null),this._pax&&(this._pax.path&&(this._header.name=this._pax.path),this._pax.linkpath&&(this._header.linkname=this._pax.linkpath),this._pax.size&&(this._header.size=parseInt(this._pax.size,10)),this._header.pax=this._pax,this._pax=null)}_decodeLongHeader(t){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=QRe.decodeLongPath(t,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=QRe.decodeLongPath(t,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=QRe.decodePax(t);break;case"pax-header":this._pax=this._paxGlobal===null?QRe.decodePax(t):Object.assign({},this._paxGlobal,QRe.decodePax(t));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=p_i(this._header.size);let t=this._buffer.shift(this._header.size);try{this._decodeLongHeader(t)}catch(r){return this._continueWrite(r),!1}return!0}_consumeStream(){let t=this._buffer.shiftFirst(this._missing);if(t===null)return!1;this._missing-=t.byteLength;let r=this._stream.push(t);return this._missing===0?(this._stream.push(null),r&&this._stream._detach(),r&&this._locked===!1):r}_createStream(){return new dTr(this,this._header,this._offset)}_update(){for(;this._buffer.buffered>0&&!this.destroying;){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let t=this._buffer.shiftFirst(this._missing);t!==null&&(this._missing-=t.byteLength);continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(t){let r=this._callback;this._callback=gTr,r(t)}_write(t,r){this._callback=r,this._buffer.push(t),this._update()}_final(t){this._finished=this._missing===0&&this._buffer.buffered===0,t(this._finished?null:new Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(t){this._stream&&this._stream.destroy(A_i(this)),t(null)}[Symbol.asyncIterator](){let t=null,r=null,n=null,a=null,o=null,l=this;return this.on("entry",I),this.on("error",E=>{t=E}),this.on("close",C),{[Symbol.asyncIterator](){return this},next(){return new Promise(f)},return(){return b(null)},throw(E){return b(E)}};function A(E){if(!o)return;let N=o;o=null,N(E)}function f(E,N){if(t)return N(t);if(a){E({value:a,done:!1}),a=null;return}r=E,n=N,A(null),l._finished&&r&&(r({value:void 0,done:!0}),r=n=null)}function I(E,N,B){o=B,N.on("error",gTr),r?(r({value:N,done:!1}),r=n=null):a=N}function C(){A(t),r&&(t?n(t):r({value:void 0,done:!0}),r=n=null)}function b(E){return l.destroy(E),A(E),new Promise((N,B)=>{if(l.destroyed)return N({value:void 0,done:!0});l.once("close",function(){E?B(E):N({value:void 0,done:!0})})})}}};f_i.exports=function(t){return new pTr(t)};function gTr(){}function p_i(e){return e&=511,e&&512-e}});var m_i=H((zbu,fTr)=>{var h_i={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{fTr.exports=Et("fs").constants||h_i}catch{fTr.exports=h_i}});var E_i=H((qbu,b_i)=>{var{Readable:sPa,Writable:oPa,getStreamError:C_i}=aTr(),Eme=Fyt(),XRe=m_i(),Lyt=uTr(),aPa=493,cPa=420,__i=Eme.alloc(1024),hTr=class extends oPa{constructor(t,r,n){super({mapWritable:uPa,eagerOpen:!0}),this.written=0,this.header=r,this._callback=n,this._linkname=null,this._isLinkname=r.type==="symlink"&&!r.linkname,this._isVoid=r.type!=="file"&&r.type!=="contiguous-file",this._finished=!1,this._pack=t,this._openCallback=null,this._pack._stream===null?this._pack._stream=this:this._pack._pending.push(this)}_open(t){this._openCallback=t,this._pack._stream===this&&this._continueOpen()}_continuePack(t){if(this._callback===null)return;let r=this._callback;this._callback=null,r(t)}_continueOpen(){this._pack._stream===null&&(this._pack._stream=this);let t=this._openCallback;if(this._openCallback=null,t!==null){if(this._pack.destroying)return t(new Error("pack stream destroyed"));if(this._pack._finalized)return t(new Error("pack stream is already finalized"));this._pack._stream=this,this._isLinkname||this._pack._encode(this.header),this._isVoid&&(this._finish(),this._continuePack(null)),t(null)}}_write(t,r){if(this._isLinkname)return this._linkname=this._linkname?Eme.concat([this._linkname,t]):t,r(null);if(this._isVoid)return t.byteLength>0?r(new Error("No body allowed for this entry")):r();if(this.written+=t.byteLength,this._pack.push(t))return r();this._pack._drain=r}_finish(){this._finished||(this._finished=!0,this._isLinkname&&(this.header.linkname=this._linkname?Eme.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header)),y_i(this._pack,this.header.size),this._pack._done(this))}_final(t){if(this.written!==this.header.size)return t(new Error("Size mismatch"));this._finish(),t(null)}_getError(){return C_i(this)||new Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(t){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),t()}},mTr=class extends sPa{constructor(t){super(t),this._drain=ITr,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(t,r,n){if(this._finalized||this.destroying)throw new Error("already finalized or destroyed");typeof r=="function"&&(n=r,r=null),n||(n=ITr),(!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=lPa(t.mode)),t.mode||(t.mode=t.type==="directory"?aPa:cPa),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof r=="string"&&(r=Eme.from(r));let a=new hTr(this,t,n);return Eme.isBuffer(r)?(t.size=r.byteLength,a.write(r),a.end(),a):(a._isVoid,a)}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(__i),this.push(null))}_done(t){t===this._stream&&(this._stream=null,this._finalizing&&this.finalize(),this._pending.length&&this._pending.shift()._continueOpen())}_encode(t){if(!t.pax){let r=Lyt.encode(t);if(r){this.push(r);return}}this._encodePax(t)}_encodePax(t){let r=Lyt.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),n={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:r.byteLength,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(Lyt.encode(n)),this.push(r),y_i(this,r.byteLength),n.size=t.size,n.type=t.type,this.push(Lyt.encode(n))}_doDrain(){let t=this._drain;this._drain=ITr,t()}_predestroy(){let t=C_i(this);for(this._stream&&this._stream.destroy(t);this._pending.length;){let r=this._pending.shift();r.destroy(t),r._continueOpen()}this._doDrain()}_read(t){this._doDrain(),t()}};b_i.exports=function(t){return new mTr(t)};function lPa(e){switch(e&XRe.S_IFMT){case XRe.S_IFBLK:return"block-device";case XRe.S_IFCHR:return"character-device";case XRe.S_IFDIR:return"directory";case XRe.S_IFIFO:return"fifo";case XRe.S_IFLNK:return"symlink"}return"file"}function ITr(){}function y_i(e,t){t&=511,t&&e.push(__i.subarray(0,512-t))}function uPa(e){return Eme.isBuffer(e)?e:Eme.from(e)}});var S_i=H(CTr=>{CTr.extract=I_i();CTr.pack=E_i()});var n0i=H((ZEu,r0i)=>{"use strict";var fPa=R7t(),KRe=B7t();function t0i(e){if(/^\d{3,4}$/.test(e)){let r=/(\d{1,2})(\d{2})/.exec(e);return{major:0,minor:parseInt(r[1],10),patch:parseInt(r[2],10)}}let t=(e||"").split(".").map(r=>parseInt(r,10));return{major:t[0],minor:t[1],patch:t[2]}}function RTr(e){let{env:t}=process;if("FORCE_HYPERLINK"in t)return!(t.FORCE_HYPERLINK.length>0&&parseInt(t.FORCE_HYPERLINK,10)===0);if(KRe("no-hyperlink")||KRe("no-hyperlinks")||KRe("hyperlink=false")||KRe("hyperlink=never"))return!1;if(KRe("hyperlink=true")||KRe("hyperlink=always")||"NETLIFY"in t)return!0;if(!fPa.supportsColor(e)||e&&!e.isTTY||process.platform==="win32"||"CI"in t||"TEAMCITY_VERSION"in t)return!1;if("TERM_PROGRAM"in t){let r=t0i(t.TERM_PROGRAM_VERSION);switch(t.TERM_PROGRAM){case"iTerm.app":return r.major===3?r.minor>=1:r.major>3;case"WezTerm":return r.major>=20200620;case"vscode":return r.major>1||r.major===1&&r.minor>=72}}if("VTE_VERSION"in t){if(t.VTE_VERSION==="0.50.0")return!1;let r=t0i(t.VTE_VERSION);return r.major>0||r.minor>=50}return!1}r0i.exports={supportsHyperlink:RTr,stdout:RTr(process.stdout),stderr:RTr(process.stderr)}});var DTr=H((l1u,d0i)=>{"use strict";var bPa=function(t){return EPa(t)&&!SPa(t)};function EPa(e){return!!e&&typeof e=="object"}function SPa(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||wPa(e)}var vPa=typeof Symbol=="function"&&Symbol.for,BPa=vPa?Symbol.for("react.element"):60103;function wPa(e){return e.$$typeof===BPa}function TPa(e){return Array.isArray(e)?[]:{}}function w4e(e,t){return t.clone!==!1&&t.isMergeableObject(e)?zRe(TPa(e),e,t):e}function RPa(e,t,r){return e.concat(t).map(function(n){return w4e(n,r)})}function NPa(e,t){if(!t.customMerge)return zRe;var r=t.customMerge(e);return typeof r=="function"?r:zRe}function DPa(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function g0i(e){return Object.keys(e).concat(DPa(e))}function A0i(e,t){try{return t in e}catch{return!1}}function kPa(e,t){return A0i(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function xPa(e,t,r){var n={};return r.isMergeableObject(e)&&g0i(e).forEach(function(a){n[a]=w4e(e[a],r)}),g0i(t).forEach(function(a){kPa(e,a)||(A0i(e,a)&&r.isMergeableObject(t[a])?n[a]=NPa(a,r)(e[a],t[a],r):n[a]=w4e(t[a],r))}),n}function zRe(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||RPa,r.isMergeableObject=r.isMergeableObject||bPa,r.cloneUnlessOtherwiseSpecified=w4e;var n=Array.isArray(t),a=Array.isArray(e),o=n===a;return o?n?r.arrayMerge(e,t,r):xPa(e,t,r):w4e(t,r)}zRe.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,a){return zRe(n,a,r)},{})};var GPa=zRe;d0i.exports=GPa});var SRi=H((CTu,ERi)=>{ERi.exports=function(t,r){var n,a;typeof r=="function"?a=r:n=r;var o=Object.keys(t);return(n||[]).concat(o.sort(a)).reduce(function(l,A){return o.indexOf(A)!==-1&&(l[A]=t[A]),l},Object.create(null))}});var GRi=H((TTu,t1t)=>{"use strict";t1t.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");var t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return null;var r=t.filter(function(a){return a===`\r +`,r)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){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=!0;let r=O0t(t),n=ERe(r);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=O0t(t),n=ERe(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,r){return this.type!=="comment"||this.indent<=r?!1:t.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){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=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};KIi.Parser=QBr});var ehi=H(JXe=>{"use strict";var jIi=kBr(),CZa=VXe(),XXe=PXe(),_Za=Nvr(),yZa=YBr(),zIi=XBr();function qIi(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new yZa.LineCounter||null,prettyErrors:t}}function bZa(e,t={}){let{lineCounter:r,prettyErrors:n}=qIi(t),a=new zIi.Parser(r?.addNewLine),o=new jIi.Composer(t),l=Array.from(o.compose(a.parse(e)));if(n&&r)for(let A of l)A.errors.forEach(XXe.prettifyError(e,r)),A.warnings.forEach(XXe.prettifyError(e,r));return l.length>0?l:Object.assign([],{empty:!0},o.streamInfo())}function $Ii(e,t={}){let{lineCounter:r,prettyErrors:n}=qIi(t),a=new zIi.Parser(r?.addNewLine),o=new jIi.Composer(t),l=null;for(let A of o.compose(a.parse(e),!0,e.length))if(!l)l=A;else if(l.options.logLevel!=="silent"){l.errors.push(new XXe.YAMLParseError(A.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&r&&(l.errors.forEach(XXe.prettifyError(e,r)),l.warnings.forEach(XXe.prettifyError(e,r))),l}function EZa(e,t,r){let n;typeof t=="function"?n=t:r===void 0&&t&&typeof t=="object"&&(r=t);let a=$Ii(e,r);if(!a)return null;if(a.warnings.forEach(o=>_Za.warn(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:n},r))}function SZa(e,t,r){let n=null;if(typeof t=="function"||Array.isArray(t)?n=t:r===void 0&&t&&(r=t),typeof r=="string"&&(r=r.length),typeof r=="number"){let a=Math.round(r);r=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){let{keepUndefined:a}=r??t??{};if(!a)return}return new CZa.Document(e,n,r).toString(r)}JXe.parse=EZa;JXe.parseAllDocuments=bZa;JXe.parseDocument=$Ii;JXe.stringify=SZa});var rhi=H(j0=>{"use strict";var vZa=kBr(),BZa=VXe(),wZa=ABr(),JBr=PXe(),TZa=SXe(),$ae=b0(),RZa=Kae(),NZa=hT(),DZa=zae(),kZa=qae(),xZa=V0t(),GZa=MBr(),FZa=YBr(),ZZa=XBr(),P0t=ehi(),thi=_Xe();j0.Composer=vZa.Composer;j0.Document=BZa.Document;j0.Schema=wZa.Schema;j0.YAMLError=JBr.YAMLError;j0.YAMLParseError=JBr.YAMLParseError;j0.YAMLWarning=JBr.YAMLWarning;j0.Alias=TZa.Alias;j0.isAlias=$ae.isAlias;j0.isCollection=$ae.isCollection;j0.isDocument=$ae.isDocument;j0.isMap=$ae.isMap;j0.isNode=$ae.isNode;j0.isPair=$ae.isPair;j0.isScalar=$ae.isScalar;j0.isSeq=$ae.isSeq;j0.Pair=RZa.Pair;j0.Scalar=NZa.Scalar;j0.YAMLMap=DZa.YAMLMap;j0.YAMLSeq=kZa.YAMLSeq;j0.CST=xZa;j0.Lexer=GZa.Lexer;j0.LineCounter=FZa.LineCounter;j0.Parser=ZZa.Parser;j0.parse=P0t.parse;j0.parseAllDocuments=P0t.parseAllDocuments;j0.parseDocument=P0t.parseDocument;j0.stringify=P0t.stringify;j0.visit=thi.visit;j0.visitAsync=thi.visitAsync});var uhi=H((Myu,KXe)=>{var s4=Et("path"),UXe=Et("fs"),WZa=Et("os"),ihi=UXe.promises.readFile;function OZa(e,t){return["package.json",`.${e}rc.json`,`.${e}rc.js`,`.${e}rc.cjs`,...t?[]:[`.${e}rc.mjs`],`.config/${e}rc`,`.config/${e}rc.json`,`.config/${e}rc.js`,`.config/${e}rc.cjs`,...t?[]:[`.config/${e}rc.mjs`],`${e}.config.js`,`${e}.config.cjs`,...t?[]:[`${e}.config.mjs`]]}function J0t(e){return s4.dirname(e)||s4.sep}var jBr=(e,t)=>JSON.parse(t),X0t=typeof __webpack_require__=="function"?__non_webpack_require__:Et,shi=Object.freeze({".js":X0t,".json":X0t,".cjs":X0t,noExt:jBr});KXe.exports.defaultLoadersSync=shi;var KBr=async e=>{try{return(await import(e)).default}catch(t){try{return X0t(e)}catch(r){throw r.code==="ERR_REQUIRE_ESM"||r instanceof SyntaxError&&r.toString().includes("Cannot use import statement outside a module")?t:r}}},ohi=Object.freeze({".js":KBr,".mjs":KBr,".cjs":KBr,".json":jBr,noExt:jBr});KXe.exports.defaultLoaders=ohi;function ahi(e,t,r){let n={stopDir:WZa.homedir(),searchPlaces:OZa(e,r),ignoreEmptySearchPlaces:!0,cache:!0,transform:a=>a,packageProp:[e],...t,loaders:{...r?shi:ohi,...t.loaders}};return n.searchPlaces.forEach(a=>{let o=s4.extname(a)||"noExt",l=n.loaders[o];if(!l)throw new Error(`Missing loader for extension "${a}"`);if(typeof l!="function")throw new Error(`Loader for extension "${a}" is not a function: Received ${typeof l}.`)}),n}function U0t(e,t){return typeof e=="string"&&e in t?t[e]:(Array.isArray(e)?e:e.split(".")).reduce((r,n)=>r===void 0?r:r[n],t)||null}function chi(e){if(!e)throw new Error("load must pass a non-empty string")}function K0t(e,t){if(!e)throw new Error(`No loader specified for extension "${t}"`);if(typeof e!="function")throw new Error("loader is not a function")}var lhi=e=>(t,r,n)=>(e&&t.set(r,n),n);KXe.exports.lilconfig=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=ahi(t,r??{},!1),C=new Map,b=new Map,E=lhi(I);return{async search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=s4.join(Q,ae);try{await UXe.promises.access(ne)}catch{continue}let ce=String(await ihi(ne)),fe=s4.extname(ae)||"noExt",ue=a[fe];if(ae==="package.json"){let be=await ue(ne,ce),Se=U0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ce.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(K0t(ue,fe),B.config=await ue(ne,ce)),B.filepath=ne;break e}}if(Q===A||Q===J0t(Q))break e;Q=J0t(Q)}let J=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,J);return J},async load(N){chi(N);let B=s4.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=s4.parse(B),J=Q||"noExt",ae=a[J];K0t(ae,J);let ne=String(await ihi(B));if(F==="package.json"){let ue=await ae(B,ne);return E(b,B,f({config:U0t(o,ue),filepath:B}))}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({config:void 0,filepath:B,isEmpty:!0})):(ce.config=fe?void 0:await ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}};KXe.exports.lilconfigSync=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=ahi(t,r??{},!0),C=new Map,b=new Map,E=lhi(I);return{search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=s4.join(Q,ae);try{UXe.accessSync(ne)}catch{continue}let ce=s4.extname(ae)||"noExt",fe=a[ce],ue=String(UXe.readFileSync(ne));if(ae==="package.json"){let be=fe(ne,ue),Se=U0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ue.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(K0t(fe,ce),B.config=fe(ne,ue)),B.filepath=ne;break e}}if(Q===A||Q===J0t(Q))break e;Q=J0t(Q)}let J=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,J);return J},load(N){chi(N);let B=s4.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=s4.parse(B),J=Q||"noExt",ae=a[J];K0t(ae,J);let ne=String(UXe.readFileSync(B));if(F==="package.json"){let ue=ae(B,ne);return f({config:U0t(o,ue),filepath:B})}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({filepath:B,config:void 0,isEmpty:!0})):(ce.config=fe?void 0:ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}}});var swr=H((pEu,Hhi)=>{Hhi.exports=Et("stream")});var Khi=H((fEu,Uhi)=>{"use strict";function Yhi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Qhi(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,a=""+n.data;n=n.next;)a+=r+n.data;return a}},{key:"concat",value:function(r){if(this.length===0)return tyt.alloc(0);for(var n=tyt.allocUnsafe(r>>>0),a=this.head,o=0;a;)BLa(a.data,n,o),o+=a.data.length,a=a.next;return n}},{key:"consume",value:function(r,n){var a;return rl.length?l.length:r;if(A===l.length?o+=l:o+=l.slice(0,r),r-=A,r===0){A===l.length?(++a,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=l.slice(A));break}++a}return this.length-=a,o}},{key:"_getBuffer",value:function(r){var n=tyt.allocUnsafe(r),a=this.head,o=1;for(a.data.copy(n),r-=a.data.length;a=a.next;){var l=a.data,A=r>l.length?l.length:r;if(l.copy(n,n.length-r,0,A),r-=A,r===0){A===l.length?(++o,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=l.slice(A));break}++o}return this.length-=o,n}},{key:vLa,value:function(r,n){return owr(this,Qhi(Qhi({},n),{},{depth:0,customInspect:!1}))}}]),e}()});var cwr=H((IEu,zhi)=>{"use strict";function wLa(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return n||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(awr,this,e)):process.nextTick(awr,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?process.nextTick(ryt,r):(r._writableState.errorEmitted=!0,process.nextTick(jhi,r,o)):process.nextTick(jhi,r,o):t?(process.nextTick(ryt,r),t(o)):process.nextTick(ryt,r)}),this)}function jhi(e,t){awr(e,t),ryt(e)}function ryt(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function TLa(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function awr(e,t){e.emit("error",t)}function RLa(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}zhi.exports={destroy:wLa,undestroy:TLa,errorOrDestroy:RLa}});var ece=H((hEu,emi)=>{"use strict";var $hi={};function eH(e,t,r){r||(r=Error);function n(o,l,A){return typeof t=="string"?t:t(o,l,A)}class a extends r{constructor(l,A,f){super(n(l,A,f))}}a.prototype.name=r.name,a.prototype.code=e,$hi[e]=a}function qhi(e,t){if(Array.isArray(e)){let r=e.length;return e=e.map(n=>String(n)),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:r===2?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}else return`of ${t} ${String(e)}`}function NLa(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function DLa(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function kLa(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}eH("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);eH("ERR_INVALID_ARG_TYPE",function(e,t,r){let n;typeof t=="string"&&NLa(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";let a;if(DLa(e," argument"))a=`The ${e} ${n} ${qhi(t,"type")}`;else{let o=kLa(e,".")?"property":"argument";a=`The "${e}" ${o} ${n} ${qhi(t,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);eH("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");eH("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});eH("ERR_STREAM_PREMATURE_CLOSE","Premature close");eH("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});eH("ERR_MULTIPLE_CALLBACK","Callback called multiple times");eH("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");eH("ERR_STREAM_WRITE_AFTER_END","write after end");eH("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);eH("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);eH("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");emi.exports.codes=$hi});var lwr=H((mEu,tmi)=>{"use strict";var xLa=ece().codes.ERR_INVALID_OPT_VALUE;function GLa(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function FLa(e,t,r,n){var a=GLa(t,n,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var o=n?r:"highWaterMark";throw new xLa(o,a)}return Math.floor(a)}return e.objectMode?16:16*1024}tmi.exports={getHighWaterMark:FLa}});var rmi=H((CEu,uwr)=>{typeof Object.create=="function"?uwr.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:uwr.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var tce=H((_Eu,Awr)=>{try{if(gwr=Et("util"),typeof gwr.inherits!="function")throw"";Awr.exports=gwr.inherits}catch{Awr.exports=rmi()}var gwr});var imi=H((yEu,nmi)=>{nmi.exports=Et("util").deprecate});var fwr=H((bEu,umi)=>{"use strict";umi.exports=Uv;function omi(e){var t=this;this.next=null,this.entry=null,this.finish=function(){c9a(t,e)}}var BRe;Uv.WritableState=t4e;var ZLa={deprecate:imi()},ami=swr(),iyt=Et("buffer").Buffer,LLa=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function VLa(e){return iyt.from(e)}function WLa(e){return iyt.isBuffer(e)||e instanceof LLa}var pwr=cwr(),OLa=lwr(),PLa=OLa.getHighWaterMark,rce=ece().codes,MLa=rce.ERR_INVALID_ARG_TYPE,HLa=rce.ERR_METHOD_NOT_IMPLEMENTED,YLa=rce.ERR_MULTIPLE_CALLBACK,QLa=rce.ERR_STREAM_CANNOT_PIPE,XLa=rce.ERR_STREAM_DESTROYED,JLa=rce.ERR_STREAM_NULL_VALUES,ULa=rce.ERR_STREAM_WRITE_AFTER_END,KLa=rce.ERR_UNKNOWN_ENCODING,wRe=pwr.errorOrDestroy;tce()(Uv,ami);function jLa(){}function t4e(e,t,r){BRe=BRe||ume(),e=e||{},typeof r!="boolean"&&(r=t instanceof BRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=PLa(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){n9a(t,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new omi(this)}t4e.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(t4e.prototype,"buffer",{get:ZLa.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var nyt;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(nyt=Function.prototype[Symbol.hasInstance],Object.defineProperty(Uv,Symbol.hasInstance,{value:function(t){return nyt.call(this,t)?!0:this!==Uv?!1:t&&t._writableState instanceof t4e}})):nyt=function(t){return t instanceof this};function Uv(e){BRe=BRe||ume();var t=this instanceof BRe;if(!t&&!nyt.call(Uv,this))return new Uv(e);this._writableState=new t4e(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),ami.call(this)}Uv.prototype.pipe=function(){wRe(this,new QLa)};function zLa(e,t){var r=new ULa;wRe(e,r),process.nextTick(t,r)}function qLa(e,t,r,n){var a;return r===null?a=new JLa:typeof r!="string"&&!t.objectMode&&(a=new MLa("chunk",["string","Buffer"],r)),a?(wRe(e,a),process.nextTick(n,a),!1):!0}Uv.prototype.write=function(e,t,r){var n=this._writableState,a=!1,o=!n.objectMode&&WLa(e);return o&&!iyt.isBuffer(e)&&(e=VLa(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=jLa),n.ending?zLa(this,r):(o||qLa(this,n,e,r))&&(n.pendingcb++,a=e9a(this,n,o,e,t,r)),a};Uv.prototype.cork=function(){this._writableState.corked++};Uv.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&cmi(this,e))};Uv.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new KLa(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Uv.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function $La(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=iyt.from(t,r)),t}Object.defineProperty(Uv.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function e9a(e,t,r,n,a,o){if(!r){var l=$La(t,n,a);n!==l&&(r=!0,a="buffer",n=l)}var A=t.objectMode?1:n.length;t.length+=A;var f=t.length{"use strict";var l9a=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};Ami.exports=u6;var gmi=mwr(),hwr=fwr();tce()(u6,gmi);for(Iwr=l9a(hwr.prototype),syt=0;syt{var ayt=Et("buffer"),g6=ayt.Buffer;function dmi(e,t){for(var r in e)t[r]=e[r]}g6.from&&g6.alloc&&g6.allocUnsafe&&g6.allocUnsafeSlow?pmi.exports=ayt:(dmi(ayt,Cwr),Cwr.Buffer=gme);function gme(e,t,r){return g6(e,t,r)}gme.prototype=Object.create(g6.prototype);dmi(g6,gme);gme.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return g6(e,t,r)};gme.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=g6(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};gme.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return g6(e)};gme.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return ayt.SlowBuffer(e)}});var bwr=H(hmi=>{"use strict";var ywr=fmi().Buffer,Imi=ywr.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function A9a(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function d9a(e){var t=A9a(e);if(typeof t!="string"&&(ywr.isEncoding===Imi||!Imi(e)))throw new Error("Unknown encoding: "+e);return t||e}hmi.StringDecoder=r4e;function r4e(e){this.encoding=d9a(e);var t;switch(this.encoding){case"utf16le":this.text=C9a,this.end=_9a,t=4;break;case"utf8":this.fillLast=I9a,t=4;break;case"base64":this.text=y9a,this.end=b9a,t=3;break;default:this.write=E9a,this.end=S9a;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=ywr.allocUnsafe(t)}r4e.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function p9a(e,t,r){var n=t.length-1;if(n=0?(a>0&&(e.lastNeed=a-1),a):--n=0?(a>0&&(e.lastNeed=a-2),a):--n=0?(a>0&&(a===2?a=0:e.lastNeed=a-3),a):0))}function f9a(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function I9a(e){var t=this.lastTotal-this.lastNeed,r=f9a(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function h9a(e,t){var r=p9a(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function m9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function C9a(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function _9a(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function y9a(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function b9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function E9a(e){return e.toString(this.encoding)}function S9a(e){return e&&e.length?this.write(e):""}});var cyt=H((vEu,_mi)=>{"use strict";var mmi=ece().codes.ERR_STREAM_PREMATURE_CLOSE;function v9a(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),a=0;a{"use strict";var lyt;function nce(e,t,r){return t=T9a(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function T9a(e){var t=R9a(e,"string");return typeof t=="symbol"?t:String(t)}function R9a(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var N9a=cyt(),ice=Symbol("lastResolve"),Ame=Symbol("lastReject"),n4e=Symbol("error"),uyt=Symbol("ended"),dme=Symbol("lastPromise"),Ewr=Symbol("handlePromise"),pme=Symbol("stream");function sce(e,t){return{value:e,done:t}}function D9a(e){var t=e[ice];if(t!==null){var r=e[pme].read();r!==null&&(e[dme]=null,e[ice]=null,e[Ame]=null,t(sce(r,!1)))}}function k9a(e){process.nextTick(D9a,e)}function x9a(e,t){return function(r,n){e.then(function(){if(t[uyt]){r(sce(void 0,!0));return}t[Ewr](r,n)},n)}}var G9a=Object.getPrototypeOf(function(){}),F9a=Object.setPrototypeOf((lyt={get stream(){return this[pme]},next:function(){var t=this,r=this[n4e];if(r!==null)return Promise.reject(r);if(this[uyt])return Promise.resolve(sce(void 0,!0));if(this[pme].destroyed)return new Promise(function(l,A){process.nextTick(function(){t[n4e]?A(t[n4e]):l(sce(void 0,!0))})});var n=this[dme],a;if(n)a=new Promise(x9a(n,this));else{var o=this[pme].read();if(o!==null)return Promise.resolve(sce(o,!1));a=new Promise(this[Ewr])}return this[dme]=a,a}},nce(lyt,Symbol.asyncIterator,function(){return this}),nce(lyt,"return",function(){var t=this;return new Promise(function(r,n){t[pme].destroy(null,function(a){if(a){n(a);return}r(sce(void 0,!0))})})}),lyt),G9a),Z9a=function(t){var r,n=Object.create(F9a,(r={},nce(r,pme,{value:t,writable:!0}),nce(r,ice,{value:null,writable:!0}),nce(r,Ame,{value:null,writable:!0}),nce(r,n4e,{value:null,writable:!0}),nce(r,uyt,{value:t._readableState.endEmitted,writable:!0}),nce(r,Ewr,{value:function(o,l){var A=n[pme].read();A?(n[dme]=null,n[ice]=null,n[Ame]=null,o(sce(A,!1))):(n[ice]=o,n[Ame]=l)},writable:!0}),r));return n[dme]=null,N9a(t,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=n[Ame];o!==null&&(n[dme]=null,n[ice]=null,n[Ame]=null,o(a)),n[n4e]=a;return}var l=n[ice];l!==null&&(n[dme]=null,n[ice]=null,n[Ame]=null,l(sce(void 0,!0))),n[uyt]=!0}),t.on("readable",k9a.bind(null,n)),n};ymi.exports=Z9a});var Bmi=H((wEu,vmi)=>{"use strict";function Emi(e,t,r,n,a,o,l){try{var A=e[o](l),f=A.value}catch(I){r(I);return}A.done?t(f):Promise.resolve(f).then(n,a)}function L9a(e){return function(){var t=this,r=arguments;return new Promise(function(n,a){var o=e.apply(t,r);function l(f){Emi(o,n,a,l,A,"next",f)}function A(f){Emi(o,n,a,l,A,"throw",f)}l(void 0)})}}function Smi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function V9a(e){for(var t=1;t{"use strict";Zmi.exports=S_;var TRe;S_.ReadableState=Nmi;var TEu=Et("events").EventEmitter,Rmi=function(t,r){return t.listeners(r).length},s4e=swr(),gyt=Et("buffer").Buffer,Y9a=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function Q9a(e){return gyt.from(e)}function X9a(e){return gyt.isBuffer(e)||e instanceof Y9a}var Swr=Et("util"),Tm;Swr&&Swr.debuglog?Tm=Swr.debuglog("stream"):Tm=function(){};var J9a=Khi(),Dwr=cwr(),U9a=lwr(),K9a=U9a.getHighWaterMark,Ayt=ece().codes,j9a=Ayt.ERR_INVALID_ARG_TYPE,z9a=Ayt.ERR_STREAM_PUSH_AFTER_EOF,q9a=Ayt.ERR_METHOD_NOT_IMPLEMENTED,$9a=Ayt.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,RRe,vwr,Bwr;tce()(S_,s4e);var i4e=Dwr.errorOrDestroy,wwr=["error","close","destroy","pause","resume"];function eVa(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function Nmi(e,t,r){TRe=TRe||ume(),e=e||{},typeof r!="boolean"&&(r=t instanceof TRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=K9a(this,e,"readableHighWaterMark",r),this.buffer=new J9a,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(RRe||(RRe=bwr().StringDecoder),this.decoder=new RRe(e.encoding),this.encoding=e.encoding)}function S_(e){if(TRe=TRe||ume(),!(this instanceof S_))return new S_(e);var t=this instanceof TRe;this._readableState=new Nmi(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),s4e.call(this)}Object.defineProperty(S_.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});S_.prototype.destroy=Dwr.destroy;S_.prototype._undestroy=Dwr.undestroy;S_.prototype._destroy=function(e,t){t(e)};S_.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=gyt.from(e,t),t=""),n=!0),Dmi(this,e,t,!1,n)};S_.prototype.unshift=function(e){return Dmi(this,e,null,!0,!1)};function Dmi(e,t,r,n,a){Tm("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,nVa(e,o);else{var l;if(a||(l=tVa(o,t)),l)i4e(e,l);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==gyt.prototype&&(t=Q9a(t)),n)o.endEmitted?i4e(e,new $9a):Twr(e,o,t,!0);else if(o.ended)i4e(e,new z9a);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?Twr(e,o,t,!1):Nwr(e,o)):Twr(e,o,t,!1)}else n||(o.reading=!1,Nwr(e,o))}return!o.ended&&(o.length=wmi?e=wmi:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function Tmi(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=rVa(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}S_.prototype.read=function(e){Tm("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Tm("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?Rwr(this):dyt(this),null;if(e=Tmi(e,t),e===0&&t.ended)return t.length===0&&Rwr(this),null;var n=t.needReadable;Tm("need readable",n),(t.length===0||t.length-e0?a=Gmi(e,t):a=null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&Rwr(this)),a!==null&&this.emit("data",a),a};function nVa(e,t){if(Tm("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?dyt(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,kmi(e)))}}function dyt(e){var t=e._readableState;Tm("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Tm("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(kmi,e))}function kmi(e){var t=e._readableState;Tm("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,kwr(e)}function Nwr(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(iVa,e,t))}function iVa(e,t){for(;!t.reading&&!t.ended&&(t.length1&&Fmi(n.pipes,e)!==-1)&&!I&&(Tm("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function E(Q){Tm("onerror",Q),F(),e.removeListener("error",E),Rmi(e,"error")===0&&i4e(e,Q)}eVa(e,"error",E);function N(){e.removeListener("finish",B),F()}e.once("close",N);function B(){Tm("onfinish"),e.removeListener("close",N),F()}e.once("finish",B);function F(){Tm("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Tm("pipe resume"),r.resume()),e};function sVa(e){return function(){var r=e._readableState;Tm("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&Rmi(e,"data")&&(r.flowing=!0,kwr(e))}}S_.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Tm("on readable",n.length,n.reading),n.length?dyt(this):n.reading||process.nextTick(oVa,this)),r};S_.prototype.addListener=S_.prototype.on;S_.prototype.removeListener=function(e,t){var r=s4e.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(xmi,this),r};S_.prototype.removeAllListeners=function(e){var t=s4e.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(xmi,this),t};function xmi(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function oVa(e){Tm("readable nexttick read 0"),e.read(0)}S_.prototype.resume=function(){var e=this._readableState;return e.flowing||(Tm("resume"),e.flowing=!e.readableListening,aVa(this,e)),e.paused=!1,this};function aVa(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(cVa,e,t))}function cVa(e,t){Tm("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),kwr(e),t.flowing&&!t.reading&&e.read(0)}S_.prototype.pause=function(){return Tm("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Tm("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function kwr(e){var t=e._readableState;for(Tm("flow",t.flowing);t.flowing&&e.read()!==null;);}S_.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Tm("wrapped end"),r.decoder&&!r.ended){var l=r.decoder.end();l&&l.length&&t.push(l)}t.push(null)}),e.on("data",function(l){if(Tm("wrapped data"),r.decoder&&(l=r.decoder.write(l)),!(r.objectMode&&l==null)&&!(!r.objectMode&&(!l||!l.length))){var A=t.push(l);A||(n=!0,e.pause())}});for(var a in e)this[a]===void 0&&typeof e[a]=="function"&&(this[a]=function(A){return function(){return e[A].apply(e,arguments)}}(a));for(var o=0;o=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function Rwr(e){var t=e._readableState;Tm("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(lVa,t,e))}function lVa(e,t){if(Tm("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(S_.from=function(e,t){return Bwr===void 0&&(Bwr=Bmi()),Bwr(S_,e,t)});function Fmi(e,t){for(var r=0,n=e.length;r{"use strict";Vmi.exports=Cee;var pyt=ece().codes,uVa=pyt.ERR_METHOD_NOT_IMPLEMENTED,gVa=pyt.ERR_MULTIPLE_CALLBACK,AVa=pyt.ERR_TRANSFORM_ALREADY_TRANSFORMING,dVa=pyt.ERR_TRANSFORM_WITH_LENGTH_0,fyt=ume();tce()(Cee,fyt);function pVa(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new gVa);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";Omi.exports=o4e;var Wmi=xwr();tce()(o4e,Wmi);function o4e(e){if(!(this instanceof o4e))return new o4e(e);Wmi.call(this,e)}o4e.prototype._transform=function(e,t,r){r(null,e)}});var Xmi=H((kEu,Qmi)=>{"use strict";var Gwr;function IVa(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var Ymi=ece().codes,hVa=Ymi.ERR_MISSING_ARGS,mVa=Ymi.ERR_STREAM_DESTROYED;function Mmi(e){if(e)throw e}function CVa(e){return e.setHeader&&typeof e.abort=="function"}function _Va(e,t,r,n){n=IVa(n);var a=!1;e.on("close",function(){a=!0}),Gwr===void 0&&(Gwr=cyt()),Gwr(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,CVa(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(l||new mVa("pipe"))}}}function Hmi(e){e()}function yVa(e,t){return e.pipe(t)}function bVa(e){return!e.length||typeof e[e.length-1]!="function"?Mmi:e.pop()}function EVa(){for(var e=arguments.length,t=new Array(e),r=0;r0;return _Va(l,f,I,function(C){a||(a=C),C&&o.forEach(Hmi),!f&&(o.forEach(Hmi),n(a))})});return t.reduce(yVa)}Qmi.exports=EVa});var NRe=H((tH,c4e)=>{var a4e=Et("stream");process.env.READABLE_STREAM==="disable"&&a4e?(c4e.exports=a4e.Readable,Object.assign(c4e.exports,a4e),c4e.exports.Stream=a4e):(tH=c4e.exports=mwr(),tH.Stream=a4e||tH,tH.Readable=tH,tH.Writable=fwr(),tH.Duplex=ume(),tH.Transform=xwr(),tH.PassThrough=Pmi(),tH.finished=cyt(),tH.pipeline=Xmi())});var Kmi=H((xEu,Umi)=>{"use strict";var{Buffer:o4}=Et("buffer"),Jmi=Symbol.for("BufferList");function PE(e){if(!(this instanceof PE))return new PE(e);PE._init.call(this,e)}PE._init=function(t){Object.defineProperty(this,Jmi,{value:!0}),this._bufs=[],this.length=0,t&&this.append(t)};PE.prototype._new=function(t){return new PE(t)};PE.prototype._offset=function(t){if(t===0)return[0,0];let r=0;for(let n=0;nthis.length||t<0)return;let r=this._offset(t);return this._bufs[r[0]][r[1]]};PE.prototype.slice=function(t,r){return typeof t=="number"&&t<0&&(t+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,t,r)};PE.prototype.copy=function(t,r,n,a){if((typeof n!="number"||n<0)&&(n=0),(typeof a!="number"||a>this.length)&&(a=this.length),n>=this.length||a<=0)return t||o4.alloc(0);let o=!!t,l=this._offset(n),A=a-n,f=A,I=o&&r||0,C=l[1];if(n===0&&a===this.length){if(!o)return this._bufs.length===1?this._bufs[0]:o4.concat(this._bufs,this.length);for(let b=0;bE)this._bufs[b].copy(t,I,C),I+=E;else{this._bufs[b].copy(t,I,C,C+f),I+=E;break}f-=E,C&&(C=0)}return t.length>I?t.slice(0,I):t};PE.prototype.shallowSlice=function(t,r){if(t=t||0,r=typeof r!="number"?this.length:r,t<0&&(t+=this.length),r<0&&(r+=this.length),t===r)return this._new();let n=this._offset(t),a=this._offset(r),o=this._bufs.slice(n[0],a[0]+1);return a[1]===0?o.pop():o[o.length-1]=o[o.length-1].slice(0,a[1]),n[1]!==0&&(o[0]=o[0].slice(n[1])),this._new(o)};PE.prototype.toString=function(t,r,n){return this.slice(r,n).toString(t)};PE.prototype.consume=function(t){if(t=Math.trunc(t),Number.isNaN(t)||t<=0)return this;for(;this._bufs.length;)if(t>=this._bufs[0].length)t-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(t),this.length-=t;break}return this};PE.prototype.duplicate=function(){let t=this._new();for(let r=0;rthis.length?this.length:t;let n=this._offset(t),a=n[0],o=n[1];for(;a=e.length){let f=l.indexOf(e,o);if(f!==-1)return this._reverseOffset([a,f]);o=l.length-e.length+1}else{let f=this._reverseOffset([a,o]);if(this._match(f,e))return f;o++}o=0}return-1};PE.prototype._match=function(e,t){if(this.length-e{"use strict";var Fwr=NRe().Duplex,SVa=tce(),l4e=Kmi();function GG(e){if(!(this instanceof GG))return new GG(e);if(typeof e=="function"){this._callback=e;let t=function(n){this._callback&&(this._callback(n),this._callback=null)}.bind(this);this.on("pipe",function(n){n.on("error",t)}),this.on("unpipe",function(n){n.removeListener("error",t)}),e=null}l4e._init.call(this,e),Fwr.call(this)}SVa(GG,Fwr);Object.assign(GG.prototype,l4e.prototype);GG.prototype._new=function(t){return new GG(t)};GG.prototype._write=function(t,r,n){this._appendBuffer(t),typeof n=="function"&&n()};GG.prototype._read=function(t){if(!this.length)return this.push(null);t=Math.min(t,this.length),this.push(this.slice(0,t)),this.consume(t)};GG.prototype.end=function(t){Fwr.prototype.end.call(this,t),this._callback&&(this._callback(null,this.slice()),this._callback=null)};GG.prototype._destroy=function(t,r){this._bufs.length=0,this.length=0,r(t)};GG.prototype._isBufferList=function(t){return t instanceof GG||t instanceof l4e||GG.isBufferList(t)};GG.isBufferList=l4e.isBufferList;Iyt.exports=GG;Iyt.exports.BufferListStream=GG;Iyt.exports.BufferList=l4e});var Wwr=H(kRe=>{var vVa=Buffer.alloc,BVa="0000000000000000000",wVa="7777777777777777777",jmi=48,zmi=Buffer.from("ustar\0","binary"),TVa=Buffer.from("00","binary"),RVa=Buffer.from("ustar ","binary"),NVa=Buffer.from(" \0","binary"),DVa=parseInt("7777",8),u4e=257,Vwr=263,kVa=function(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)},xVa=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},GVa=function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},qmi=function(e,t,r,n){for(;rt?wVa.slice(0,t)+" ":BVa.slice(0,t-e.length)+e+" "};function FVa(e){var t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;for(var r=[],n=e.length-1;n>0;n--){var a=e[n];t?r.push(a):r.push(255-a)}var o=0,l=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e};kRe.decodeLongPath=function(e,t){return DRe(e,0,e.length,t)};kRe.encodePax=function(e){var t="";e.name&&(t+=Lwr(" path="+e.name+` +`)),e.linkname&&(t+=Lwr(" linkpath="+e.linkname+` +`));var r=e.pax;if(r)for(var n in r)t+=Lwr(" "+n+"="+r[n]+` +`);return Buffer.from(t)};kRe.decodePax=function(e){for(var t={};e.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;n+=n?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(n)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(r),t.write(oce(e.mode&DVa,6),100),t.write(oce(e.uid,6),108),t.write(oce(e.gid,6),116),t.write(oce(e.size,11),124),t.write(oce(e.mtime.getTime()/1e3|0,11),136),t[156]=jmi+GVa(e.type),e.linkname&&t.write(e.linkname,157),zmi.copy(t,u4e),TVa.copy(t,Vwr),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(oce(e.devmajor||0,6),329),t.write(oce(e.devminor||0,6),337),n&&t.write(n,345),t.write(oce($mi(t),6),148),t)};kRe.decode=function(e,t,r){var n=e[156]===0?0:e[156]-jmi,a=DRe(e,0,100,t),o=ace(e,100,8),l=ace(e,108,8),A=ace(e,116,8),f=ace(e,124,12),I=ace(e,136,12),C=xVa(n),b=e[157]===0?null:DRe(e,157,100,t),E=DRe(e,265,32),N=DRe(e,297,32),B=ace(e,329,8),F=ace(e,337,8),Q=$mi(e);if(Q===8*32)return null;if(Q!==ace(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(zmi.compare(e,u4e,u4e+6)===0)e[345]&&(a=DRe(e,345,155,t)+"/"+a);else if(!(RVa.compare(e,u4e,u4e+6)===0&&NVa.compare(e,Vwr,Vwr+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return n===0&&a&&a[a.length-1]==="/"&&(n=5),{name:a,mode:o,uid:l,gid:A,size:f,mtime:new Date(1e3*I),type:C,linkname:b,uname:E,gname:N,devmajor:B,devminor:F}}});var oCi=H((ZEu,sCi)=>{var tCi=Et("util"),ZVa=Zwr(),g4e=Wwr(),rCi=NRe().Writable,nCi=NRe().PassThrough,iCi=function(){},eCi=function(e){return e&=511,e&&512-e},LVa=function(e,t){var r=new hyt(e,t);return r.end(),r},VVa=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e},hyt=function(e,t){this._parent=e,this.offset=t,nCi.call(this,{autoDestroy:!1})};tCi.inherits(hyt,nCi);hyt.prototype.destroy=function(e){this._parent.destroy(e)};var _ee=function(e){if(!(this instanceof _ee))return new _ee(e);rCi.call(this,e),e=e||{},this._offset=0,this._buffer=ZVa(),this._missing=0,this._partial=!1,this._onparse=iCi,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},a=function(E){if(t._locked=!1,E)return t.destroy(E);t._stream||n()},o=function(){t._stream=null;var E=eCi(t._header.size);E?t._parse(E,l):t._parse(512,b),t._locked||n()},l=function(){t._buffer.consume(eCi(t._header.size)),t._parse(512,b),n()},A=function(){var E=t._header.size;t._paxGlobal=g4e.decodePax(r.slice(0,E)),r.consume(E),o()},f=function(){var E=t._header.size;t._pax=g4e.decodePax(r.slice(0,E)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(E),o()},I=function(){var E=t._header.size;this._gnuLongPath=g4e.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},C=function(){var E=t._header.size;this._gnuLongLinkPath=g4e.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},b=function(){var E=t._offset,N;try{N=t._header=g4e.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(B){t.emit("error",B)}if(r.consume(512),!N){t._parse(512,b),n();return}if(N.type==="gnu-long-path"){t._parse(N.size,I),n();return}if(N.type==="gnu-long-link-path"){t._parse(N.size,C),n();return}if(N.type==="pax-global-header"){t._parse(N.size,A),n();return}if(N.type==="pax-header"){t._parse(N.size,f),n();return}if(t._gnuLongPath&&(N.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(N.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=N=VVa(N,t._pax),t._pax=null),t._locked=!0,!N.size||N.type==="directory"){t._parse(512,b),t.emit("entry",N,LVa(t,E),a);return}t._stream=new hyt(t,E),t.emit("entry",N,t._stream,a),t._parse(N.size,o),n()};this._onheader=b,this._parse(512,b)};tCi.inherits(_ee,rCi);_ee.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))};_ee.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)};_ee.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=iCi,this._overflow?this._write(this._overflow,void 0,e):e()}};_ee.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,a=this._buffer,o=this._missing;if(e.length&&(this._partial=!0),e.lengtho&&(l=e.slice(o),e=e.slice(0,o)),n?n.end(e):a.append(e),this._overflow=l,this._onparse()}};_ee.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()};sCi.exports=_ee});var cCi=H((LEu,aCi)=>{aCi.exports=Et("fs").constants||Et("constants")});var dCi=H((VEu,ACi)=>{var xRe=cCi(),lCi=Egr(),Cyt=tce(),WVa=Buffer.alloc,uCi=NRe().Readable,GRe=NRe().Writable,OVa=Et("string_decoder").StringDecoder,myt=Wwr(),PVa=parseInt("755",8),MVa=parseInt("644",8),gCi=WVa(1024),Pwr=function(){},Owr=function(e,t){t&=511,t&&e.push(gCi.slice(0,512-t))};function HVa(e){switch(e&xRe.S_IFMT){case xRe.S_IFBLK:return"block-device";case xRe.S_IFCHR:return"character-device";case xRe.S_IFDIR:return"directory";case xRe.S_IFIFO:return"fifo";case xRe.S_IFLNK:return"symlink"}return"file"}var _yt=function(e){GRe.call(this),this.written=0,this._to=e,this._destroyed=!1};Cyt(_yt,GRe);_yt.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r};_yt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var yyt=function(){GRe.call(this),this.linkname="",this._decoder=new OVa("utf-8"),this._destroyed=!1};Cyt(yyt,GRe);yyt.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()};yyt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var A4e=function(){GRe.call(this),this._destroyed=!1};Cyt(A4e,GRe);A4e.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))};A4e.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var A6=function(e){if(!(this instanceof A6))return new A6(e);uCi.call(this,e),this._drain=Pwr,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};Cyt(A6,uCi);A6.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof t=="function"&&(r=t,t=null),r||(r=Pwr);var n=this;if((!e.size||e.type==="symlink")&&(e.size=0),e.type||(e.type=HVa(e.mode)),e.mode||(e.mode=e.type==="directory"?PVa:MVa),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),typeof t=="string"&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var a=this.push(t);return Owr(n,e.size),a?process.nextTick(r):this._drain=r,new A4e}if(e.type==="symlink"&&!e.linkname){var o=new yyt;return lCi(o,function(A){if(A)return n.destroy(),r(A);e.linkname=o.linkname,n._encode(e),r()}),o}if(this._encode(e),e.type!=="file"&&e.type!=="contiguous-file")return process.nextTick(r),new A4e;var l=new _yt(this);return this._stream=l,lCi(l,function(A){if(n._stream=null,A)return n.destroy(),r(A);if(l.written!==e.size)return n.destroy(),r(new Error("size mismatch"));Owr(n,e.size),n._finalizing&&n.finalize(),r()}),l}};A6.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(gCi),this.push(null))};A6.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};A6.prototype._encode=function(e){if(!e.pax){var t=myt.encode(e);if(t){this.push(t);return}}this._encodePax(e)};A6.prototype._encodePax=function(e){var t=myt.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(myt.encode(r)),this.push(t),Owr(this,t.length),r.size=e.size,r.type=e.type,this.push(myt.encode(r))};A6.prototype._read=function(e){var t=this._drain;this._drain=Pwr,t()};ACi.exports=A6});var pCi=H(Mwr=>{Mwr.extract=oCi();Mwr.pack=dCi()});var Hwr=H(fme=>{"use strict";Object.defineProperty(fme,"__esModule",{value:!0});fme.hasPackScripts=UVa;fme.prepareForPack=KVa;fme.genPackStream=jVa;fme.genPackageManifest=_Ci;fme.genPackList=yCi;var CCi=(Wa(),vi(Va)),d4e=wn(),Xh=No(),fCi=CCi.__importDefault(Rk()),YVa=CCi.__importDefault(pCi()),QVa=Et("zlib"),XVa=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],JVa=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function UVa(e){return!!(d4e.scriptUtils.hasWorkspaceScript(e,"prepack")||d4e.scriptUtils.hasWorkspaceScript(e,"postpack"))}async function KVa(e,{report:t},r){await d4e.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"prepack",{report:t});try{let n=Xh.ppath.join(e.cwd,d4e.Manifest.fileName);await Xh.xfs.existsPromise(n)&&await e.manifest.loadFile(n,{baseFs:Xh.xfs}),await r()}finally{await d4e.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"postpack",{report:t})}}async function jVa(e,t){typeof t>"u"&&(t=await yCi(e));let r=new Set;for(let o of e.manifest.publishConfig?.executableFiles??new Set)r.add(Xh.ppath.normalize(o));for(let o of e.manifest.bin.values())r.add(Xh.ppath.normalize(o));let n=YVa.default.pack();process.nextTick(async()=>{for(let o of t){let l=Xh.ppath.normalize(o),A=Xh.ppath.resolve(e.cwd,l),f=Xh.ppath.join("package",l),I=await Xh.xfs.lstatPromise(A),C={name:f,mtime:new Date(Xh.constants.SAFE_TIME*1e3)},b=r.has(l)?493:420,E,N,B=new Promise((Q,J)=>{E=Q,N=J}),F=Q=>{Q?N(Q):E()};if(I.isFile()){let Q;l==="package.json"?Q=Buffer.from(JSON.stringify(await _Ci(e),null,2)):Q=await Xh.xfs.readFilePromise(A),n.entry({...C,mode:b,type:"file"},Q,F)}else I.isSymbolicLink()?n.entry({...C,mode:b,type:"symlink",linkname:await Xh.xfs.readlinkPromise(A)},F):F(new Error(`Unsupported file type ${I.mode} for ${Xh.npath.fromPortablePath(l)}`));await B}n.finalize()});let a=(0,QVa.createGzip)();return n.pipe(a),a}async function _Ci(e){let t=JSON.parse(JSON.stringify(e.manifest.raw));return await e.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,e,t),t}async function yCi(e){let t=e.project,r=t.configuration,n={accept:[],reject:[]};for(let b of JVa)n.reject.push(b);for(let b of XVa)n.accept.push(b);n.reject.push(r.get("rcFilename"));let a=b=>{if(b===null||!b.startsWith(`${e.cwd}/`))return;let E=Xh.ppath.relative(e.cwd,b),N=Xh.ppath.resolve(Xh.PortablePath.root,E);n.reject.push(N)};a(Xh.ppath.resolve(t.cwd,Xh.Filename.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(b=>b.populateYarnPaths,t,b=>{a(b)});for(let b of t.workspaces){let E=Xh.ppath.relative(e.cwd,b.cwd);E!==""&&!E.match(/^(\.\.)?\//)&&n.reject.push(`/${E}`)}let o={accept:[],reject:[]},l=e.manifest.publishConfig?.main??e.manifest.main,A=e.manifest.publishConfig?.module??e.manifest.module,f=e.manifest.publishConfig?.browser??e.manifest.browser,I=e.manifest.publishConfig?.bin??e.manifest.bin;l!=null&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,l)),A!=null&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,A)),typeof f=="string"&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,f));for(let b of I.values())o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,b));if(f instanceof Map)for(let[b,E]of f.entries())o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,b)),typeof E=="string"&&o.accept.push(Xh.ppath.resolve(Xh.PortablePath.root,E));let C=e.manifest.files!==null;if(C){o.reject.push("/*");for(let b of e.manifest.files)bCi(o.accept,b,{cwd:Xh.PortablePath.root})}return await zVa(e.cwd,{hasExplicitFileList:C,globalList:n,ignoreList:o})}async function zVa(e,{hasExplicitFileList:t,globalList:r,ignoreList:n}){let a=[],o=new Xh.JailFS(e),l=[[Xh.PortablePath.root,[n]]];for(;l.length>0;){let[A,f]=l.pop(),I=await o.lstatPromise(A);if(!hCi(A,{globalList:r,ignoreLists:I.isDirectory()?null:f}))if(I.isDirectory()){let C=await o.readdirPromise(A),b=!1,E=!1;if(!t||A!==Xh.PortablePath.root)for(let F of C)b=b||F===".gitignore",E=E||F===".npmignore";let N=E?await ICi(o,A,".npmignore"):b?await ICi(o,A,".gitignore"):null,B=N!==null?[N].concat(f):f;hCi(A,{globalList:r,ignoreLists:f})&&(B=[...f,{accept:[],reject:["**/*"]}]);for(let F of C)l.push([Xh.ppath.resolve(A,F),B])}else(I.isFile()||I.isSymbolicLink())&&a.push(Xh.ppath.relative(Xh.PortablePath.root,A))}return a.sort()}async function ICi(e,t,r){let n={accept:[],reject:[]},a=await e.readFilePromise(Xh.ppath.join(t,r),"utf8");for(let o of a.split(/\n/g))bCi(n.reject,o,{cwd:t});return n}function qVa(e,{cwd:t}){let r=e[0]==="!";return r&&(e=e.slice(1)),e.match(/\.{0,1}\//)&&(e=Xh.ppath.resolve(t,e)),r&&(e=`!${e}`),e}function bCi(e,t,{cwd:r}){let n=t.trim();n===""||n[0]==="#"||e.push(qVa(n,{cwd:r}))}var CP;(function(e){e[e.None=0]="None",e[e.Match=1]="Match",e[e.NegatedMatch=2]="NegatedMatch"})(CP||(CP={}));function hCi(e,{globalList:t,ignoreLists:r}){let n=byt(e,t.accept);if(n!==CP.None)return n===CP.NegatedMatch;let a=byt(e,t.reject);if(a!==CP.None)return a===CP.Match;if(r!==null)for(let o of r){let l=byt(e,o.accept);if(l!==CP.None)return l===CP.NegatedMatch;let A=byt(e,o.reject);if(A!==CP.None)return A===CP.Match}return!1}function byt(e,t){let r=t,n=[];for(let a=0;a{"use strict";Object.defineProperty(Ywr,"__esModule",{value:!0});var $Va=(Wa(),vi(Va)),ECi=sl(),yee=wn(),d6=No(),FRe=(vl(),vi(ng)),Eyt=$Va.__importStar(Hwr()),p4e=class extends ECi.BaseCommand{constructor(){super(...arguments),this.installIfNeeded=FRe.Option.Boolean("--install-if-needed",!1,{description:"Run a preliminary `yarn install` if the package contains build scripts"}),this.dryRun=FRe.Option.Boolean("-n,--dry-run",!1,{description:"Print the file paths without actually generating the package archive"}),this.json=FRe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.out=FRe.Option.String("-o,--out",{description:"Create the archive at the specified path"}),this.filename=FRe.Option.String("--filename",{hidden:!0})}async execute(){let t=await yee.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await yee.Project.find(t,this.context.cwd);if(!n)throw new ECi.WorkspaceRequiredError(r.cwd,this.context.cwd);await Eyt.hasPackScripts(n)&&(this.installIfNeeded?await r.install({cache:await yee.Cache.find(t),report:new yee.ThrowReport}):await r.restoreInstallState());let a=this.out??this.filename,o=typeof a<"u"?d6.ppath.resolve(this.context.cwd,eWa(a,{workspace:n})):d6.ppath.resolve(n.cwd,"package.tgz");return(await yee.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async A=>{await Eyt.prepareForPack(n,{report:A},async()=>{A.reportJson({base:d6.npath.fromPortablePath(n.cwd)});let f=await Eyt.genPackList(n);for(let I of f)A.reportInfo(null,d6.npath.fromPortablePath(I)),A.reportJson({location:d6.npath.fromPortablePath(I)});if(!this.dryRun){let I=await Eyt.genPackStream(n,f);await d6.xfs.mkdirPromise(d6.ppath.dirname(o),{recursive:!0});let C=d6.xfs.createWriteStream(o);I.pipe(C),await new Promise(b=>{C.on("finish",b)})}}),this.dryRun||(A.reportInfo(yee.MessageName.UNNAMED,`Package archive generated in ${yee.formatUtils.pretty(t,o,yee.formatUtils.Type.PATH)}`),A.reportJson({output:d6.npath.fromPortablePath(o)}))})).exitCode()}};p4e.paths=[["pack"]];p4e.usage=FRe.Command.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,--out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});Ywr.default=p4e;function eWa(e,{workspace:t}){let r=e.replace("%s",tWa(t)).replace("%v",rWa(t));return d6.npath.toPortablePath(r)}function tWa(e){return e.manifest.name!==null?yee.structUtils.slugifyIdent(e.manifest.name):"package"}function rWa(e){return e.manifest.version!==null?e.manifest.version:"unknown"}});var hme=H(Ime=>{"use strict";Object.defineProperty(Ime,"__esModule",{value:!0});Ime.packUtils=Ime.PackCommand=void 0;var BCi=(Wa(),vi(Va)),f4e=wn(),vCi=wn(),wCi=BCi.__importDefault(SCi());Ime.PackCommand=wCi.default;var nWa=BCi.__importStar(Hwr());Ime.packUtils=nWa;var iWa=["dependencies","devDependencies","peerDependencies"],sWa="workspace:",oWa=(e,t)=>{t.publishConfig&&(t.publishConfig.type&&(t.type=t.publishConfig.type),t.publishConfig.main&&(t.main=t.publishConfig.main),t.publishConfig.browser&&(t.browser=t.publishConfig.browser),t.publishConfig.module&&(t.module=t.publishConfig.module),t.publishConfig.exports&&(t.exports=t.publishConfig.exports),t.publishConfig.imports&&(t.imports=t.publishConfig.imports),t.publishConfig.bin&&(t.bin=t.publishConfig.bin));let r=e.project;for(let n of iWa)for(let a of e.manifest.getForScope(n).values()){let o=r.tryWorkspaceByDescriptor(a),l=f4e.structUtils.parseRange(a.range);if(l.protocol===sWa)if(o===null){if(r.tryWorkspaceByIdent(a)===null)throw new vCi.ReportError(vCi.MessageName.WORKSPACE_NOT_FOUND,`${f4e.structUtils.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let A;f4e.structUtils.areDescriptorsEqual(a,o.anchoredDescriptor)||l.selector==="*"?A=o.manifest.version??"0.0.0":l.selector==="~"||l.selector==="^"?A=`${l.selector}${o.manifest.version??"0.0.0"}`:A=l.selector;let f=n==="dependencies"?f4e.structUtils.makeDescriptor(a,"unknown"):null,I=f!==null&&e.manifest.ensureDependencyMeta(f).optional?"optionalDependencies":n;t[I][f4e.structUtils.stringifyIdent(a)]=A}}},aWa={hooks:{beforeWorkspacePacking:oWa},commands:[wCi.default]};Ime.default=aWa});var FCi=H((YEu,GCi)=>{GCi.exports=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e)});var LCi=H((QEu,ZCi)=>{ZCi.exports=typeof process<"u"&&typeof process.nextTick=="function"?process.nextTick.bind(process):FCi()});var WCi=H((JEu,VCi)=>{VCi.exports=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}clear(){this.top=this.btm=0,this.next=null,this.buffer.fill(void 0)}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}peek(){return this.buffer[this.btm]}isEmpty(){return this.buffer[this.btm]===void 0}}});var Jwr=H((KEu,PCi)=>{var OCi=WCi();PCi.exports=class{constructor(t){this.hwm=t||16,this.head=new OCi(this.hwm),this.tail=this.head,this.length=0}clear(){this.head=this.tail,this.head.clear(),this.length=0}push(t){if(this.length++,!this.head.push(t)){let r=this.head;this.head=r.next=new OCi(2*this.head.buffer.length),this.head.push(t)}}shift(){this.length!==0&&this.length--;let t=this.tail.shift();if(t===void 0&&this.tail.next){let r=this.tail.next;return this.tail.next=null,this.tail=r,this.tail.shift()}return t}peek(){let t=this.tail.peek();return t===void 0&&this.tail.next?this.tail.next.peek():t}isEmpty(){return this.length===0}}});var HCi=H((zEu,MCi)=>{MCi.exports=class{constructor(t){this.encoding=t}get remaining(){return 0}decode(t){return t.toString(this.encoding)}flush(){return""}}});var QCi=H(($Eu,YCi)=>{YCi.exports=class{constructor(){this.codePoint=0,this.bytesSeen=0,this.bytesNeeded=0,this.lowerBoundary=128,this.upperBoundary=191}get remaining(){return this.bytesSeen}decode(t){if(this.bytesNeeded===0){let n=!0;for(let a=Math.max(0,t.byteLength-4),o=t.byteLength;a=194&&o<=223?(this.bytesNeeded=2,this.codePoint=o&31):o>=224&&o<=239?(o===224?this.lowerBoundary=160:o===237&&(this.upperBoundary=159),this.bytesNeeded=3,this.codePoint=o&15):o>=240&&o<=244?(o===240&&(this.lowerBoundary=144),o===244&&(this.upperBoundary=143),this.bytesNeeded=4,this.codePoint=o&7):r+="\uFFFD");continue}if(othis.upperBoundary){this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,r+="\uFFFD";continue}this.lowerBoundary=128,this.upperBoundary=191,this.codePoint=this.codePoint<<6|o&63,this.bytesSeen++,this.bytesSeen===this.bytesNeeded&&(r+=String.fromCodePoint(this.codePoint),this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0)}return r}flush(){let t=this.bytesNeeded>0?"\uFFFD":"";return this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,t}}});var JCi=H((t1u,XCi)=>{var cWa=HCi(),lWa=QCi();XCi.exports=class{constructor(t="utf8"){switch(this.encoding=uWa(t),this.encoding){case"utf8":this.decoder=new lWa;break;case"utf16le":case"base64":throw new Error("Unsupported encoding: "+this.encoding);default:this.decoder=new cWa(this.encoding)}}get remaining(){return this.decoder.remaining}push(t){return typeof t=="string"?t:this.decoder.decode(t)}write(t){return this.push(t)}end(t){let r="";return t&&(r=this.push(t)),r+=this.decoder.flush(),r}};function uWa(e){switch(e=e.toLowerCase(),e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:throw new Error("Unknown encoding: "+e)}}});var lTr=H((r1u,m_i)=>{var{EventEmitter:gWa}=Et("events"),Nyt=new Error("Stream was destroyed"),Uwr=new Error("Premature close"),$Ci=LCi(),e_i=Jwr(),AWa=JCi(),VS=(1<<29)-1,bme=1,tTr=2,mme=4,I4e=8,t_i=VS^bme,dWa=VS^tTr,b4e=16,h4e=32,ORe=64,cce=128,E4e=256,rTr=512,Cme=1024,Kwr=2048,nTr=4096,iTr=8192,a4=16384,ZRe=32768,Dyt=65536,_me=131072,r_i=E4e|rTr,pWa=b4e|Dyt,fWa=ORe|b4e,IWa=nTr|cce,sTr=E4e|_me,hWa=VS^b4e,mWa=VS^ORe,CWa=VS^(ORe|Dyt),UCi=VS^Dyt,_Wa=VS^E4e,yWa=VS^(cce|iTr),bWa=VS^Cme,KCi=VS^r_i,n_i=VS^ZRe,EWa=VS^h4e,i_i=VS^_me,SWa=VS^sTr,lce=1<<18,VRe=2<<18,S4e=4<<18,yme=8<<18,v4e=16<<18,Eme=32<<18,jwr=64<<18,LRe=128<<18,oTr=256<<18,WRe=512<<18,kyt=1024<<18,s_i=VS^(lce|oTr),o_i=VS^S4e,vWa=VS^WRe,BWa=VS^v4e,wWa=VS^yme,a_i=VS^LRe,TWa=VS^VRe,c_i=VS^kyt,m4e=b4e|lce,l_i=VS^m4e,aTr=a4|Eme,bee=mme|I4e|tTr,_P=bee|bme,u_i=bee|aTr,RWa=o_i&mWa,cTr=LRe|ZRe,NWa=cTr&l_i,g_i=_P|NWa,DWa=_P|Cme|a4,jCi=_P|a4|cce,kWa=_P|Cme|cce,xWa=_P|nTr|cce|iTr,GWa=_P|b4e|Cme|a4|Dyt|_me,FWa=bee|Cme|a4,ZWa=h4e|_P|ZRe|ORe,LWa=_P|WRe|Eme,VWa=yme|v4e,A_i=yme|lce,WWa=yme|v4e|_P|lce,zCi=_P|lce|yme|kyt,OWa=S4e|lce,PWa=lce|oTr,MWa=_P|WRe|A_i|Eme,HWa=v4e|bee|WRe|Eme,YWa=VRe|_P|LRe|S4e,vyt=Symbol.asyncIterator||Symbol("asyncIterator"),Byt=class{constructor(t,{highWaterMark:r=16384,map:n=null,mapWritable:a,byteLength:o,byteLengthWritable:l}={}){this.stream=t,this.queue=new e_i,this.highWaterMark=r,this.buffered=0,this.error=null,this.pipeline=null,this.drains=null,this.byteLength=l||o||h_i,this.map=a||n,this.afterWrite=JWa.bind(this),this.afterUpdateNextTick=jWa.bind(this)}get ended(){return(this.stream._duplexState&Eme)!==0}push(t){return this.map!==null&&(t=this.map(t)),this.buffered+=this.byteLength(t),this.queue.push(t),this.buffered0,this.error=null,this.pipeline=null,this.byteLength=l||o||h_i,this.map=a||n,this.pipeTo=null,this.afterRead=UWa.bind(this),this.afterUpdateNextTick=KWa.bind(this)}get ended(){return(this.stream._duplexState&a4)!==0}pipe(t,r){if(this.pipeTo!==null)throw new Error("Can only pipe to one destination");if(typeof r!="function"&&(r=null),this.stream._duplexState|=rTr,this.pipeTo=t,this.pipeline=new $wr(this.stream,t,r),r&&this.stream.on("error",qCi),y4e(t))t._writableState.pipeline=this.pipeline,r&&t.on("error",qCi),t.on("finish",this.pipeline.finished.bind(this.pipeline));else{let n=this.pipeline.done.bind(this.pipeline,t),a=this.pipeline.done.bind(this.pipeline,t,null);t.on("error",n),t.on("close",a),t.on("finish",this.pipeline.finished.bind(this.pipeline))}t.on("drain",QWa.bind(this)),this.stream.emit("piping",t),t.emit("pipe",this.stream)}push(t){let r=this.stream;return t===null?(this.highWaterMark=0,r._duplexState=(r._duplexState|Cme)&CWa,!1):this.map!==null&&(t=this.map(t),t===null)?(r._duplexState&=UCi,this.buffered0;)r.push(this.shift());for(let n=0;n0;)n.drains.shift().resolve(!1);n.pipeline!==null&&n.pipeline.done(t,e)}}function JWa(e){let t=this.stream;e&&t.destroy(e),t._duplexState&=s_i,this.drains!==null&&zWa(this.drains),(t._duplexState&WWa)===v4e&&(t._duplexState&=BWa,(t._duplexState&jwr)===jwr&&t.emit("drain")),this.updateCallback()}function UWa(e){e&&this.stream.destroy(e),this.stream._duplexState&=hWa,this.readAhead===!1&&!(this.stream._duplexState&E4e)&&(this.stream._duplexState&=i_i),this.updateCallback()}function KWa(){this.stream._duplexState&h4e||(this.stream._duplexState&=n_i,this.update())}function jWa(){this.stream._duplexState&VRe||(this.stream._duplexState&=a_i,this.update())}function zWa(e){for(let t=0;t0)?null:n(l)}}_read(t){t(null)}pipe(t,r){return this._readableState.updateNextTick(),this._readableState.pipe(t,r),t}read(){return this._readableState.updateNextTick(),this._readableState.read()}push(t){return this._readableState.updateNextTick(),this._readableState.push(t)}unshift(t){return this._readableState.updateNextTick(),this._readableState.unshift(t)}resume(){return this._duplexState|=sTr,this._readableState.updateNextTick(),this}pause(){return this._duplexState&=this._readableState.readAhead===!1?SWa:_Wa,this}static _fromAsyncIterator(t,r){let n,a=new e({...r,read(l){t.next().then(o).then(l.bind(null,null)).catch(l)},predestroy(){n=t.return()},destroy(l){if(!n)return l(null);n.then(l.bind(null,null)).catch(l)}});return a;function o(l){l.done?a.push(null):a.push(l.value)}}static from(t,r){if(oOa(t))return t;if(t[vyt])return this._fromAsyncIterator(t[vyt](),r);Array.isArray(t)||(t=t===void 0?[]:[t]);let n=0;return new e({...r,read(a){this.push(n===t.length?null:t[n++]),a(null)}})}static isBackpressured(t){return(t._duplexState&FWa)!==0||t._readableState.buffered>=t._readableState.highWaterMark}static isPaused(t){return(t._duplexState&E4e)===0}[vyt](){let t=this,r=null,n=null,a=null;return this.on("error",I=>{r=I}),this.on("readable",o),this.on("close",l),{[vyt](){return this},next(){return new Promise(function(I,C){n=I,a=C;let b=t.read();b!==null?A(b):t._duplexState&I4e&&A(null)})},return(){return f(null)},throw(I){return f(I)}};function o(){n!==null&&A(t.read())}function l(){n!==null&&A(null)}function A(I){a!==null&&(r?a(r):I===null&&!(t._duplexState&a4)?a(Nyt):n({value:I,done:I===null}),a=n=null)}function f(I){return t.destroy(I),new Promise((C,b)=>{if(t._duplexState&I4e)return C({value:void 0,done:!0});t.once("close",function(){I?b(I):C({value:void 0,done:!0})})})}}},Tyt=class extends C4e{constructor(t){super(t),this._duplexState|=bme|a4,this._writableState=new Byt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final),t.eagerOpen&&this._writableState.updateNextTick())}cork(){this._duplexState|=kyt}uncork(){this._duplexState&=c_i,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}static isBackpressured(t){return(t._duplexState&HWa)!==0}static drained(t){if(t.destroyed)return Promise.resolve(!1);let r=t._writableState,a=(lOa(t)?Math.min(1,r.queue.length):r.queue.length)+(t._duplexState&oTr?1:0);return a===0?Promise.resolve(!0):(r.drains===null&&(r.drains=[]),new Promise(o=>{r.drains.push({writes:a,resolve:o})}))}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},_4e=class extends wyt{constructor(t){super(t),this._duplexState=bme|this._duplexState&_me,this._writableState=new Byt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final))}cork(){this._duplexState|=kyt}uncork(){this._duplexState&=c_i,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},Ryt=class extends _4e{constructor(t){super(t),this._transformState=new qwr(this),t&&(t.transform&&(this._transform=t.transform),t.flush&&(this._flush=t.flush))}_write(t,r){this._readableState.buffered>=this._readableState.highWaterMark?this._transformState.data=t:this._transform(t,this._transformState.afterTransform)}_read(t){if(this._transformState.data!==null){let r=this._transformState.data;this._transformState.data=null,t(null),this._transform(r,this._transformState.afterTransform)}else t(null)}destroy(t){super.destroy(t),this._transformState.data!==null&&(this._transformState.data=null,this._transformState.afterTransform())}_transform(t,r){r(null,t)}_flush(t){t(null)}_final(t){this._transformState.afterFinal=t,this._flush(eOa.bind(this))}},eTr=class extends Ryt{};function eOa(e,t){let r=this._transformState.afterFinal;if(e)return r(e);t!=null&&this.push(t),this.push(null),r(null)}function tOa(...e){return new Promise((t,r)=>f_i(...e,n=>{if(n)return r(n);t()}))}function f_i(e,...t){let r=Array.isArray(e)?[...e,...t]:[e,...t],n=r.length&&typeof r[r.length-1]=="function"?r.pop():null;if(r.length<2)throw new Error("Pipeline requires at least 2 streams");let a=r[0],o=null,l=null;for(let I=1;I1,f),a.pipe(o)),a=o;if(n){let I=!1,C=y4e(o)||!!(o._writableState&&o._writableState.autoDestroy);o.on("error",b=>{l===null&&(l=b)}),o.on("finish",()=>{I=!0,C||n(l)}),C&&o.on("close",()=>n(l||(I?null:Uwr)))}return o;function A(I,C,b,E){I.on("error",E),I.on("close",N);function N(){if(C&&I._readableState&&!I._readableState.ended||b&&I._writableState&&!I._writableState.ended)return E(Uwr)}}function f(I){if(!(!I||l)){l=I;for(let C of r)C.destroy(I)}}}function rOa(e){return e}function I_i(e){return!!e._readableState||!!e._writableState}function y4e(e){return typeof e._duplexState=="number"&&I_i(e)}function nOa(e){return!!e._readableState&&e._readableState.ended}function iOa(e){return!!e._writableState&&e._writableState.ended}function sOa(e,t={}){let r=e._readableState&&e._readableState.error||e._writableState&&e._writableState.error;return!t.all&&r===Nyt?null:r}function oOa(e){return y4e(e)&&e.readable}function aOa(e){return typeof e=="object"&&e!==null&&typeof e.byteLength=="number"}function h_i(e){return aOa(e)?e.byteLength:1024}function qCi(){}function cOa(){this.destroy(new Error("Stream aborted."))}function lOa(e){return e._writev!==Tyt.prototype._writev&&e._writev!==_4e.prototype._writev}m_i.exports={pipeline:f_i,pipelinePromise:tOa,isStream:I_i,isStreamx:y4e,isEnded:nOa,isFinished:iOa,getStreamError:sOa,Stream:C4e,Writable:Tyt,Readable:wyt,Duplex:_4e,Transform:Ryt,PassThrough:eTr}});var xyt=H((n1u,C_i)=>{function uOa(e){return Buffer.isBuffer(e)||e instanceof Uint8Array}function gOa(e){return Buffer.isEncoding(e)}function AOa(e,t,r){return Buffer.alloc(e,t,r)}function dOa(e){return Buffer.allocUnsafe(e)}function pOa(e){return Buffer.allocUnsafeSlow(e)}function fOa(e,t){return Buffer.byteLength(e,t)}function IOa(e,t){return Buffer.compare(e,t)}function hOa(e,t){return Buffer.concat(e,t)}function mOa(e,t,r,n,a){return ub(e).copy(t,r,n,a)}function COa(e,t){return ub(e).equals(t)}function _Oa(e,t,r,n,a){return ub(e).fill(t,r,n,a)}function yOa(e,t,r){return Buffer.from(e,t,r)}function bOa(e,t,r,n){return ub(e).includes(t,r,n)}function EOa(e,t,r,n){return ub(e).indexOf(t,r,n)}function SOa(e,t,r,n){return ub(e).lastIndexOf(t,r,n)}function vOa(e){return ub(e).swap16()}function BOa(e){return ub(e).swap32()}function wOa(e){return ub(e).swap64()}function ub(e){return Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function TOa(e,t,r,n){return ub(e).toString(t,r,n)}function ROa(e,t,r,n,a){return ub(e).write(t,r,n,a)}function NOa(e,t,r){return ub(e).writeDoubleLE(t,r)}function DOa(e,t,r){return ub(e).writeFloatLE(t,r)}function kOa(e,t,r){return ub(e).writeUInt32LE(t,r)}function xOa(e,t,r){return ub(e).writeInt32LE(t,r)}function GOa(e,t){return ub(e).readDoubleLE(t)}function FOa(e,t){return ub(e).readFloatLE(t)}function ZOa(e,t){return ub(e).readUInt32LE(t)}function LOa(e,t){return ub(e).readInt32LE(t)}function VOa(e,t,r){return ub(e).writeDoubleBE(t,r)}function WOa(e,t,r){return ub(e).writeFloatBE(t,r)}function OOa(e,t,r){return ub(e).writeUInt32BE(t,r)}function POa(e,t,r){return ub(e).writeInt32BE(t,r)}function MOa(e,t){return ub(e).readDoubleBE(t)}function HOa(e,t){return ub(e).readFloatBE(t)}function YOa(e,t){return ub(e).readUInt32BE(t)}function QOa(e,t){return ub(e).readInt32BE(t)}C_i.exports={isBuffer:uOa,isEncoding:gOa,alloc:AOa,allocUnsafe:dOa,allocUnsafeSlow:pOa,byteLength:fOa,compare:IOa,concat:hOa,copy:mOa,equals:COa,fill:_Oa,from:yOa,includes:bOa,indexOf:EOa,lastIndexOf:SOa,swap16:vOa,swap32:BOa,swap64:wOa,toBuffer:ub,toString:TOa,write:ROa,writeDoubleLE:NOa,writeFloatLE:DOa,writeUInt32LE:kOa,writeInt32LE:xOa,readDoubleLE:GOa,readFloatLE:FOa,readUInt32LE:ZOa,readInt32LE:LOa,writeDoubleBE:VOa,writeFloatBE:WOa,writeUInt32BE:OOa,writeInt32BE:POa,readDoubleBE:MOa,readFloatBE:HOa,readUInt32BE:YOa,readInt32BE:QOa}});var ATr=H(MRe=>{var t_=xyt(),XOa="0000000000000000000",JOa="7777777777777777777",Gyt=48,__i=t_.from([117,115,116,97,114,0]),UOa=t_.from([Gyt,Gyt]),KOa=t_.from([117,115,116,97,114,32]),jOa=t_.from([32,0]),zOa=4095,B4e=257,gTr=263;MRe.decodeLongPath=function(t,r){return PRe(t,0,t.length,r)};MRe.encodePax=function(t){let r="";t.name&&(r+=uTr(" path="+t.name+` +`)),t.linkname&&(r+=uTr(" linkpath="+t.linkname+` +`));let n=t.pax;if(n)for(let a in n)r+=uTr(" "+a+"="+n[a]+` +`);return t_.from(r)};MRe.decodePax=function(t){let r={};for(;t.length;){let n=0;for(;n100;){let o=n.indexOf("/");if(o===-1)return null;a+=a?"/"+n.slice(0,o):n.slice(0,o),n=n.slice(o+1)}return t_.byteLength(n)>100||t_.byteLength(a)>155||t.linkname&&t_.byteLength(t.linkname)>100?null:(t_.write(r,n),t_.write(r,gce(t.mode&zOa,6),100),t_.write(r,gce(t.uid,6),108),t_.write(r,gce(t.gid,6),116),iPa(t.size,r,124),t_.write(r,gce(t.mtime.getTime()/1e3|0,11),136),r[156]=Gyt+rPa(t.type),t.linkname&&t_.write(r,t.linkname,157),t_.copy(__i,r,B4e),t_.copy(UOa,r,gTr),t.uname&&t_.write(r,t.uname,265),t.gname&&t_.write(r,t.gname,297),t_.write(r,gce(t.devmajor||0,6),329),t_.write(r,gce(t.devminor||0,6),337),a&&t_.write(r,a,345),t_.write(r,gce(b_i(r),6),148),r)};MRe.decode=function(t,r,n){let a=t[156]===0?0:t[156]-Gyt,o=PRe(t,0,100,r),l=uce(t,100,8),A=uce(t,108,8),f=uce(t,116,8),I=uce(t,124,12),C=uce(t,136,12),b=tPa(a),E=t[157]===0?null:PRe(t,157,100,r),N=PRe(t,265,32),B=PRe(t,297,32),F=uce(t,329,8),Q=uce(t,337,8),J=b_i(t);if(J===8*32)return null;if(J!==uce(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(qOa(t))t[345]&&(o=PRe(t,345,155,r)+"/"+o);else if(!$Oa(t)){if(!n)throw new Error("Invalid tar header: unknown format.")}return a===0&&o&&o[o.length-1]==="/"&&(a=5),{name:o,mode:l,uid:A,gid:f,size:I,mtime:new Date(1e3*C),type:b,linkname:E,uname:N,gname:B,devmajor:F,devminor:Q,pax:null}};function qOa(e){return t_.equals(__i,e.subarray(B4e,B4e+6))}function $Oa(e){return t_.equals(KOa,e.subarray(B4e,B4e+6))&&t_.equals(jOa,e.subarray(gTr,gTr+2))}function ePa(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)}function tPa(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function rPa(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function y_i(e,t,r,n){for(;rt?JOa.slice(0,t)+" ":XOa.slice(0,t-e.length)+e+" "}function nPa(e,t,r){t[r]=128;for(let n=11;n>0;n--)t[r+n]=e&255,e=Math.floor(e/256)}function iPa(e,t,r){e.toString(8).length>11?nPa(e,t,r):t_.write(t,gce(e,11),r)}function sPa(e){let t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;let r=[],n;for(n=e.length-1;n>0;n--){let l=e[n];t?r.push(l):r.push(255-l)}let a=0,o=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e}});var w_i=H((s1u,B_i)=>{var{Writable:oPa,Readable:aPa,getStreamError:E_i}=lTr(),cPa=Jwr(),S_i=xyt(),HRe=ATr(),lPa=S_i.alloc(0),pTr=class{constructor(){this.buffered=0,this.shifted=0,this.queue=new cPa,this._offset=0}push(t){this.buffered+=t.byteLength,this.queue.push(t)}shiftFirst(t){return this._buffered===0?null:this._next(t)}shift(t){if(t>this.buffered)return null;if(t===0)return lPa;let r=this._next(t);if(t===r.byteLength)return r;let n=[r];for(;(t-=r.byteLength)>0;)r=this._next(t),n.push(r);return S_i.concat(n)}_next(t){let r=this.queue.peek(),n=r.byteLength-this._offset;if(t>=n){let a=this._offset?r.subarray(this._offset,r.byteLength):r;return this.queue.shift(),this._offset=0,this.buffered-=n,this.shifted+=n,a}return this.buffered-=t,this.shifted+=t,r.subarray(this._offset,this._offset+=t)}},fTr=class extends aPa{constructor(t,r,n){super(),this.header=r,this.offset=n,this._parent=t}_read(t){this.header.size===0&&this.push(null),this._parent._stream===this&&this._parent._update(),t(null)}_predestroy(){this._parent.destroy(E_i(this))}_detach(){this._parent._stream===this&&(this._parent._stream=null,this._parent._missing=v_i(this.header.size),this._parent._update())}_destroy(t){this._detach(),t(null)}},ITr=class extends oPa{constructor(t){super(t),t||(t={}),this._buffer=new pTr,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=dTr,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=t.filenameEncoding||"utf-8",this._allowUnknownFormat=!!t.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(t){if(this._locked=!1,t){this.destroy(t),this._continueWrite(t);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=HRe.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(t){return this._continueWrite(t),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}return this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory"?(this.emit("entry",this._header,this._createStream(),this._unlockBound),!0):(this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0)}_applyLongHeaders(){this._gnuLongPath&&(this._header.name=this._gnuLongPath,this._gnuLongPath=null),this._gnuLongLinkPath&&(this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null),this._pax&&(this._pax.path&&(this._header.name=this._pax.path),this._pax.linkpath&&(this._header.linkname=this._pax.linkpath),this._pax.size&&(this._header.size=parseInt(this._pax.size,10)),this._header.pax=this._pax,this._pax=null)}_decodeLongHeader(t){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=HRe.decodeLongPath(t,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=HRe.decodeLongPath(t,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=HRe.decodePax(t);break;case"pax-header":this._pax=this._paxGlobal===null?HRe.decodePax(t):Object.assign({},this._paxGlobal,HRe.decodePax(t));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=v_i(this._header.size);let t=this._buffer.shift(this._header.size);try{this._decodeLongHeader(t)}catch(r){return this._continueWrite(r),!1}return!0}_consumeStream(){let t=this._buffer.shiftFirst(this._missing);if(t===null)return!1;this._missing-=t.byteLength;let r=this._stream.push(t);return this._missing===0?(this._stream.push(null),r&&this._stream._detach(),r&&this._locked===!1):r}_createStream(){return new fTr(this,this._header,this._offset)}_update(){for(;this._buffer.buffered>0&&!this.destroying;){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let t=this._buffer.shiftFirst(this._missing);t!==null&&(this._missing-=t.byteLength);continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(t){let r=this._callback;this._callback=dTr,r(t)}_write(t,r){this._callback=r,this._buffer.push(t),this._update()}_final(t){this._finished=this._missing===0&&this._buffer.buffered===0,t(this._finished?null:new Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(t){this._stream&&this._stream.destroy(E_i(this)),t(null)}[Symbol.asyncIterator](){let t=null,r=null,n=null,a=null,o=null,l=this;return this.on("entry",I),this.on("error",E=>{t=E}),this.on("close",C),{[Symbol.asyncIterator](){return this},next(){return new Promise(f)},return(){return b(null)},throw(E){return b(E)}};function A(E){if(!o)return;let N=o;o=null,N(E)}function f(E,N){if(t)return N(t);if(a){E({value:a,done:!1}),a=null;return}r=E,n=N,A(null),l._finished&&r&&(r({value:void 0,done:!0}),r=n=null)}function I(E,N,B){o=B,N.on("error",dTr),r?(r({value:N,done:!1}),r=n=null):a=N}function C(){A(t),r&&(t?n(t):r({value:void 0,done:!0}),r=n=null)}function b(E){return l.destroy(E),A(E),new Promise((N,B)=>{if(l.destroyed)return N({value:void 0,done:!0});l.once("close",function(){E?B(E):N({value:void 0,done:!0})})})}}};B_i.exports=function(t){return new ITr(t)};function dTr(){}function v_i(e){return e&=511,e&&512-e}});var R_i=H((o1u,hTr)=>{var T_i={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{hTr.exports=Et("fs").constants||T_i}catch{hTr.exports=T_i}});var G_i=H((a1u,x_i)=>{var{Readable:uPa,Writable:gPa,getStreamError:N_i}=lTr(),Sme=xyt(),YRe=R_i(),Fyt=ATr(),APa=493,dPa=420,D_i=Sme.alloc(1024),CTr=class extends gPa{constructor(t,r,n){super({mapWritable:fPa,eagerOpen:!0}),this.written=0,this.header=r,this._callback=n,this._linkname=null,this._isLinkname=r.type==="symlink"&&!r.linkname,this._isVoid=r.type!=="file"&&r.type!=="contiguous-file",this._finished=!1,this._pack=t,this._openCallback=null,this._pack._stream===null?this._pack._stream=this:this._pack._pending.push(this)}_open(t){this._openCallback=t,this._pack._stream===this&&this._continueOpen()}_continuePack(t){if(this._callback===null)return;let r=this._callback;this._callback=null,r(t)}_continueOpen(){this._pack._stream===null&&(this._pack._stream=this);let t=this._openCallback;if(this._openCallback=null,t!==null){if(this._pack.destroying)return t(new Error("pack stream destroyed"));if(this._pack._finalized)return t(new Error("pack stream is already finalized"));this._pack._stream=this,this._isLinkname||this._pack._encode(this.header),this._isVoid&&(this._finish(),this._continuePack(null)),t(null)}}_write(t,r){if(this._isLinkname)return this._linkname=this._linkname?Sme.concat([this._linkname,t]):t,r(null);if(this._isVoid)return t.byteLength>0?r(new Error("No body allowed for this entry")):r();if(this.written+=t.byteLength,this._pack.push(t))return r();this._pack._drain=r}_finish(){this._finished||(this._finished=!0,this._isLinkname&&(this.header.linkname=this._linkname?Sme.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header)),k_i(this._pack,this.header.size),this._pack._done(this))}_final(t){if(this.written!==this.header.size)return t(new Error("Size mismatch"));this._finish(),t(null)}_getError(){return N_i(this)||new Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(t){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),t()}},_Tr=class extends uPa{constructor(t){super(t),this._drain=mTr,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(t,r,n){if(this._finalized||this.destroying)throw new Error("already finalized or destroyed");typeof r=="function"&&(n=r,r=null),n||(n=mTr),(!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=pPa(t.mode)),t.mode||(t.mode=t.type==="directory"?APa:dPa),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof r=="string"&&(r=Sme.from(r));let a=new CTr(this,t,n);return Sme.isBuffer(r)?(t.size=r.byteLength,a.write(r),a.end(),a):(a._isVoid,a)}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(D_i),this.push(null))}_done(t){t===this._stream&&(this._stream=null,this._finalizing&&this.finalize(),this._pending.length&&this._pending.shift()._continueOpen())}_encode(t){if(!t.pax){let r=Fyt.encode(t);if(r){this.push(r);return}}this._encodePax(t)}_encodePax(t){let r=Fyt.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),n={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:r.byteLength,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(Fyt.encode(n)),this.push(r),k_i(this,r.byteLength),n.size=t.size,n.type=t.type,this.push(Fyt.encode(n))}_doDrain(){let t=this._drain;this._drain=mTr,t()}_predestroy(){let t=N_i(this);for(this._stream&&this._stream.destroy(t);this._pending.length;){let r=this._pending.shift();r.destroy(t),r._continueOpen()}this._doDrain()}_read(t){this._doDrain(),t()}};x_i.exports=function(t){return new _Tr(t)};function pPa(e){switch(e&YRe.S_IFMT){case YRe.S_IFBLK:return"block-device";case YRe.S_IFCHR:return"character-device";case YRe.S_IFDIR:return"directory";case YRe.S_IFIFO:return"fifo";case YRe.S_IFLNK:return"symlink"}return"file"}function mTr(){}function k_i(e,t){t&=511,t&&e.push(D_i.subarray(0,512-t))}function fPa(e){return Sme.isBuffer(e)?e:Sme.from(e)}});var F_i=H(yTr=>{yTr.extract=w_i();yTr.pack=G_i()});var p0i=H((Q1u,d0i)=>{"use strict";var _Pa=R7t(),JRe=B7t();function A0i(e){if(/^\d{3,4}$/.test(e)){let r=/(\d{1,2})(\d{2})/.exec(e);return{major:0,minor:parseInt(r[1],10),patch:parseInt(r[2],10)}}let t=(e||"").split(".").map(r=>parseInt(r,10));return{major:t[0],minor:t[1],patch:t[2]}}function DTr(e){let{env:t}=process;if("FORCE_HYPERLINK"in t)return!(t.FORCE_HYPERLINK.length>0&&parseInt(t.FORCE_HYPERLINK,10)===0);if(JRe("no-hyperlink")||JRe("no-hyperlinks")||JRe("hyperlink=false")||JRe("hyperlink=never"))return!1;if(JRe("hyperlink=true")||JRe("hyperlink=always")||"NETLIFY"in t)return!0;if(!_Pa.supportsColor(e)||e&&!e.isTTY||process.platform==="win32"||"CI"in t||"TEAMCITY_VERSION"in t)return!1;if("TERM_PROGRAM"in t){let r=A0i(t.TERM_PROGRAM_VERSION);switch(t.TERM_PROGRAM){case"iTerm.app":return r.major===3?r.minor>=1:r.major>3;case"WezTerm":return r.major>=20200620;case"vscode":return r.major>1||r.major===1&&r.minor>=72}}if("VTE_VERSION"in t){if(t.VTE_VERSION==="0.50.0")return!1;let r=A0i(t.VTE_VERSION);return r.major>0||r.minor>=50}return!1}d0i.exports={supportsHyperlink:DTr,stdout:DTr(process.stdout),stderr:DTr(process.stderr)}});var xTr=H((m2u,S0i)=>{"use strict";var wPa=function(t){return TPa(t)&&!RPa(t)};function TPa(e){return!!e&&typeof e=="object"}function RPa(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||kPa(e)}var NPa=typeof Symbol=="function"&&Symbol.for,DPa=NPa?Symbol.for("react.element"):60103;function kPa(e){return e.$$typeof===DPa}function xPa(e){return Array.isArray(e)?[]:{}}function R4e(e,t){return t.clone!==!1&&t.isMergeableObject(e)?KRe(xPa(e),e,t):e}function GPa(e,t,r){return e.concat(t).map(function(n){return R4e(n,r)})}function FPa(e,t){if(!t.customMerge)return KRe;var r=t.customMerge(e);return typeof r=="function"?r:KRe}function ZPa(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function b0i(e){return Object.keys(e).concat(ZPa(e))}function E0i(e,t){try{return t in e}catch{return!1}}function LPa(e,t){return E0i(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function VPa(e,t,r){var n={};return r.isMergeableObject(e)&&b0i(e).forEach(function(a){n[a]=R4e(e[a],r)}),b0i(t).forEach(function(a){LPa(e,a)||(E0i(e,a)&&r.isMergeableObject(t[a])?n[a]=FPa(a,r)(e[a],t[a],r):n[a]=R4e(t[a],r))}),n}function KRe(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||GPa,r.isMergeableObject=r.isMergeableObject||wPa,r.cloneUnlessOtherwiseSpecified=R4e;var n=Array.isArray(t),a=Array.isArray(e),o=n===a;return o?n?r.arrayMerge(e,t,r):VPa(e,t,r):R4e(t,r)}KRe.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,a){return KRe(n,a,r)},{})};var WPa=KRe;S0i.exports=WPa});var FRi=H((TRu,GRi)=>{GRi.exports=function(t,r){var n,a;typeof r=="function"?a=r:n=r;var o=Object.keys(t);return(n||[]).concat(o.sort(a)).reduce(function(l,A){return o.indexOf(A)!==-1&&(l[A]=t[A]),l},Object.create(null))}});var QRi=H((LRu,$Et)=>{"use strict";$Et.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");var t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return null;var r=t.filter(function(a){return a===`\r `}).length,n=t.length-r;return r>n?`\r `:` -`};t1t.exports.graceful=function(e){return t1t.exports(e)||` -`}});var Kkr=H((RTu,FRi)=>{"use strict";var Elc=Et("os");FRi.exports=Elc.homedir||function(){var t=process.env.HOME,r=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;return process.platform==="win32"?process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||t||null:process.platform==="darwin"?t||(r?"/Users/"+r:null):process.platform==="linux"?t||(process.getuid()===0?"/root":r?"/home/"+r:null):t||null}});var jkr=H((NTu,ZRi)=>{ZRi.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(r,n){return n};var t=new Error().stack;return Error.prepareStackTrace=e,t[2].getFileName()}});var LRi=H((DTu,lUe)=>{"use strict";var Slc=process.platform==="win32",vlc=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,zkr={};function Blc(e){return vlc.exec(e).slice(1)}zkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=Blc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0]===t[1]?t[0]:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};var wlc=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,qkr={};function Tlc(e){return wlc.exec(e).slice(1)}qkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=Tlc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};Slc?lUe.exports=zkr.parse:lUe.exports=qkr.parse;lUe.exports.posix=qkr.parse;lUe.exports.win32=zkr.parse});var $kr=H((kTu,PRi)=>{var ORi=Et("path"),VRi=ORi.parse||LRi(),WRi=function(t,r){var n="/";/^([A-Za-z]:)/.test(t)?n="":/^\\\\/.test(t)&&(n="\\\\");for(var a=[t],o=VRi(t);o.dir!==a[a.length-1];)a.push(o.dir),o=VRi(o.dir);return a.reduce(function(l,A){return l.concat(r.map(function(f){return ORi.resolve(n,A,f)}))},[])};PRi.exports=function(t,r,n){var a=r&&r.moduleDirectory?[].concat(r.moduleDirectory):["node_modules"];if(r&&typeof r.paths=="function")return r.paths(n,t,function(){return WRi(t,a)},r);var o=WRi(t,a);return r&&r.paths?o.concat(r.paths):o}});var exr=H((xTu,MRi)=>{var uUe=Et("path");MRi.exports=function(e,t){if(t=t||{},t.forceNodeResolution||!process.versions.pnp)return t;let{findPnpApi:r}=Et("module"),n=(I,C)=>{let b=I.match(/^((?:@[^/]+\/)?[^/]+)(\/.*)?/);if(!b)throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${I}")`);C.charAt(C.length-1)!=="/"&&(C=uUe.join(C,"/"));let E=r(C);if(E===null)return;let N;try{N=E.resolveToUnqualified(`${b[1]}/package.json`,C,{considerBuiltins:!1})}catch{return null}if(N===null)throw new Error(`Assertion failed: The resolution thinks that "${b[1]}" is a Node builtin`);let B=uUe.dirname(N),F=typeof b[2]<"u"?uUe.join(B,b[2]):B;return{packagePath:B,unqualifiedPath:F}},a=(I,C)=>{for(let b=0;b{let N=[C].concat(o),B=a(I,N);return B==null?b():[B.unqualifiedPath]},A=(I,C,b,E)=>{let N=[C].concat(o),B=a(I,N);if(B==null)return b().concat(o);let F=uUe.dirname(B.packagePath);return I.match(/^@[^/]+\//)&&(F=uUe.dirname(F)),[F]},f=!1;return t.__skipPackageIterator||(t.packageIterator=function(I,C,b,E){f=!0;try{return l(I,C,b,E)}finally{f=!1}}),t.paths=function(I,C,b,E){return f?b().concat(o):A(I,C,b,E)},t}});var QRi=H((GTu,YRi)=>{"use strict";var Rlc="Function.prototype.bind called on incompatible ",Nlc=Object.prototype.toString,Dlc=Math.max,klc="[object Function]",HRi=function(t,r){for(var n=[],a=0;a{"use strict";var Flc=QRi();XRi.exports=Function.prototype.bind||Flc});var KRi=H((ZTu,URi)=>{"use strict";var Zlc=Function.prototype.call,Llc=Object.prototype.hasOwnProperty,Vlc=JRi();URi.exports=Vlc.call(Zlc,Llc)});var jRi=H((LTu,Wlc)=>{Wlc.exports={assert:!0,"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:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"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:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"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:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"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:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],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:!0,"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:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"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:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"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:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var gUe=H((VTu,$Ri)=>{"use strict";var Olc=KRi();function Plc(e,t){for(var r=e.split("."),n=t.split(" "),a=n.length>1?n[0]:"=",o=(n.length>1?n[1]:n[0]).split("."),l=0;l<3;++l){var A=parseInt(r[l]||0,10),f=parseInt(o[l]||0,10);if(A!==f)return a==="<"?A="?A>=f:!1}return a===">="}function zRi(e,t){var r=t.split(/ ?&& ?/);if(r.length===0)return!1;for(var n=0;n"u"?process.versions&&process.versions.node:e;if(typeof r!="string")throw new TypeError(typeof e>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(t&&typeof t=="object"){for(var n=0;n{var SCe=Et("fs"),Hlc=Kkr(),CT=Et("path"),Ylc=jkr(),Qlc=$kr(),Xlc=exr(),Jlc=gUe(),Ulc=process.platform!=="win32"&&SCe.realpath&&typeof SCe.realpath.native=="function"?SCe.realpath.native:SCe.realpath,eNi=Hlc(),Klc=function(){return[CT.join(eNi,".node_modules"),CT.join(eNi,".node_libraries")]},jlc=function(t,r){SCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isFile()||a.isFIFO())})},zlc=function(t,r){SCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isDirectory())})},qlc=function(t,r){Ulc(t,function(n,a){n&&n.code!=="ENOENT"?r(n):r(null,n?t:a)})},AUe=function(t,r,n,a){n&&n.preserveSymlinks===!1?t(r,a):a(null,r)},$lc=function(t,r,n){t(r,function(a,o){if(a)n(a);else try{var l=JSON.parse(o);n(null,l)}catch{n(null)}})},euc=function(t,r,n){for(var a=Qlc(r,n,t),o=0;o{tuc.exports={assert:!0,"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:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"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:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"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:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"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:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"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:!0,"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:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"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:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"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:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var aNi=H((PTu,oNi)=>{"use strict";var ruc=gUe(),iNi=nNi(),sNi={};for(r1t in iNi)Object.prototype.hasOwnProperty.call(iNi,r1t)&&(sNi[r1t]=ruc(r1t));var r1t;oNi.exports=sNi});var lNi=H((MTu,cNi)=>{var nuc=gUe();cNi.exports=function(t){return nuc(t)}});var ANi=H((HTu,gNi)=>{var iuc=gUe(),vCe=Et("fs"),VG=Et("path"),suc=Kkr(),ouc=jkr(),auc=$kr(),cuc=exr(),luc=process.platform!=="win32"&&vCe.realpathSync&&typeof vCe.realpathSync.native=="function"?vCe.realpathSync.native:vCe.realpathSync,uNi=suc(),uuc=function(){return[VG.join(uNi,".node_modules"),VG.join(uNi,".node_libraries")]},guc=function(t){try{var r=vCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&(r.isFile()||r.isFIFO())},Auc=function(t){try{var r=vCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&r.isDirectory()},duc=function(t){try{return luc(t)}catch(r){if(r.code!=="ENOENT")throw r}return t},dUe=function(t,r,n){return n&&n.preserveSymlinks===!1?t(r):r},puc=function(t,r){var n=t(r);try{var a=JSON.parse(n);return a}catch{}},fuc=function(t,r,n){for(var a=auc(r,n,t),o=0;o{var n1t=rNi();n1t.core=aNi();n1t.isCore=lNi();n1t.sync=ANi();dNi.exports=n1t});var INi=H((QTu,fNi)=>{"use strict";var{builtinModules:Iuc}=Et("module"),huc=["sys"];fNi.exports=(Iuc||(process.binding?Object.keys(process.binding("natives")):[])||[]).filter(e=>!/^_|^(internal|v8|node-inspect)\/|\//.test(e)&&!huc.includes(e)).sort()});var CNi=H((XTu,mNi)=>{"use strict";var muc=INi(),Cuc=new Set(muc),hNi="node:";mNi.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");e.startsWith(hNi)&&(e=e.slice(hNi.length));let t=e.indexOf("/");return t!==-1&&t!==e.length-1&&(e=e.slice(0,t)),Cuc.has(e)}});var bNi=H(txr=>{"use strict";Object.defineProperty(txr,"__esModule",{value:!0});var _uc=Et("path"),yuc=pNi(),buc=CNi();function Euc(e){if(e.length===1){let r=e;return n=>{let a=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return r(a)}}let t=e;return(r,n)=>{let a=r.defaultMember||r.namespaceMember||r.namedMembers[0].alias,o=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return t(a,o)}}function Suc(e){if(e.length===1){let r=e;return n=>{let a=n.moduleName;return r(a)}}let t=e;return(r,n)=>{let a=r.moduleName,o=n.moduleName;return t(a,o)}}function vuc(e){return(t,r)=>e(t.name,r.name)}function Buc(e){return(t,r)=>e(t.alias,r.alias)}function wuc(){return!0}function Tuc(e){return t=>!e(t)}function Ruc(...e){return t=>e.every(r=>r(t))}function Nuc(...e){return t=>e.some(r=>r(t))}function pUe(e){return!!e.defaultMember}function fDe(e){return!!e.namespaceMember}function fUe(e){return e.namedMembers.length>0}function _Ni(e){return pUe(e)||fDe(e)||fUe(e)}function Duc(e){return!_Ni(e)}function kuc(e){return pUe(e)&&!fDe(e)&&!fUe(e)}function xuc(e){return!pUe(e)&&fDe(e)&&!fUe(e)}function Guc(e){return!pUe(e)&&!fDe(e)&&fUe(e)}function Fuc(e){return e.namedMembers.length+(e.defaultMember?1:0)+(e.namespaceMember?1:0)>1}function Zuc(e){return e.namedMembers.length+(e.defaultMember?1:0)===1&&!fDe(e)}function Luc(e){return buc(e.moduleName)}function yNi(e){return e.moduleName.indexOf(".")===0}function Vuc(e){return!yNi(e)}function Wuc(e){return t=>{try{return yuc.sync(t.moduleName,{basedir:_uc.dirname(e)}).includes("node_modules")}catch{return!1}}}function Ouc(e){return e.moduleName.startsWith("@")}function Puc(e){let t=e.charAt(0);return e.charAt(0)===t.toUpperCase()}function Muc(e){let t=e.charAt(0);return e.charAt(0)===t.toLowerCase()}function Huc(e){return!!e.match(/^[A-Za-z0-9]/)}function Yuc(...e){return t=>e.some(r=>t.startsWith(r))}function Quc(e,t){return e.localeCompare(t,"en")}function Xuc(e,t){return et?1:0}function Juc(e,t){let r=/\.+(?=\/)/g,n=(e.moduleName.match(r)||[]).join("").length,a=(t.moduleName.match(r)||[]).join("").length;return n>a?-1:n{"use strict";Object.defineProperty(IUe,"__esModule",{value:!0});var Kuc=GRi(),juc=bNi();function zuc(e,t,r,n,a){let o,l=typeof t=="string"?Et(t):t;return typeof r=="string"?(o=Et(r),o.default&&(o=o.default)):o=r,ENi(e,l,o,n,a)}IUe.default=zuc;function ENi(e,t,r,n,a){let o=egc(r,n,a||{})(juc.default),l=o.map(()=>[]),A=t.parseImports(e,{file:n});if(A.length===0)return{code:e,changes:[]};let f=Kuc.graceful(e),I=[];for(let fe of A){let ue=fe,de=o.findIndex(be=>(ue=quc(fe,be.sortNamedMembers),!!be.match&&be.match(ue)));de!==-1&&l[de].push(ue)}l.forEach((fe,ue)=>{let{sort:de}=o[ue];if(!de)return;if(!Array.isArray(de)){fe.sort(de);return}let be=de;if(be.length===0)return;let Se=(De,k)=>{let tt=0,ze=0;for(;ze===0&&be[tt];)ze=be[tt](De,k),tt+=1;return ze};fe.sort(Se)});let C="",b=!1;l.forEach((fe,ue)=>{fe.length>0&&b&&(C+=f,b=!1),fe.forEach(de=>{let be=t.formatImport(e,de,f);C+=be+f}),o[ue].separator&&C!==""&&(b=!0)});let E=e;A.slice().reverse().forEach(fe=>{let ue=fe.end;E.charAt(fe.end).match(/\s/)&&(ue+=1),I.push({start:fe.start,end:ue,code:"",note:"import-remove"}),E=E.slice(0,fe.start)+E.slice(ue,e.length)});let{start:N}=A[0],B=e.substring(0,N),F=E.substring(N,E.length),Q=B.length,J=F.length,ae,ne;B=B.replace(/\s+$/,fe=>(ae={start:N-fe.length,end:N,code:f+f,note:"before-collapse"},f+f)),F=F.replace(/^\s+/,fe=>(ne={start:N,end:N+fe.length,code:f,note:"after-collapse"},f)),B.match(/^\s+$/)&&(ae={start:N-Q,end:N,code:"",note:"before-trim"},B=""),F.match(/^\s+$/)&&(ne={start:N,end:N+J,code:"",note:"after-trim"},F=""),ne&&I.push(ne),ae&&I.push(ae);let ce={start:B.length,end:B.length,code:C,note:"imports"};return I.push(ce),e===B+C+F?{code:e,changes:[]}:{code:B+C+F,changes:I}}IUe.sortImports=ENi;function quc(e,t){let r=t;if(!r)return e;if(!Array.isArray(r)){let l=Object.assign({},e);return l.namedMembers=[...e.namedMembers].sort(r),l}let n=r;if(n.length===0)return e;let a=(l,A)=>{let f=0,I=0;for(;I===0&&n[f];)I=n[f](l,A),f+=1;return I},o=Object.assign({},e);return o.namedMembers=[...e.namedMembers].sort(a),o}function $uc(e,t){let r=e;for(let n of t)r=r.slice(0,n.start)+n.code+r.slice(n.end,r.length);return r}IUe.applyChanges=$uc;function egc(e,t,r){return n=>{let a=[{separator:!0},{match:n.always}];return e(n,t,r).concat(a)}}});var qNi=H((tNu,zNi)=>{"use strict";var BCe=class e extends Error{constructor(t,r,n){super("[ParserError] "+t,r,n),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},o1t=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},mUe=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 o1t(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let r;for(;r===!1||this.nextChar();)r=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii{"use strict";$Ni.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var a1t=H((nNu,tDi)=>{"use strict";tDi.exports=(e,t)=>{for(t=String(t);t.length{"use strict";var IDe=a1t(),sxr=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${IDe(2,this.getUTCMonth()+1)}-${IDe(2,this.getUTCDate())}`,r=`${IDe(2,this.getUTCHours())}:${IDe(2,this.getUTCMinutes())}:${IDe(2,this.getUTCSeconds())}.${IDe(3,this.getUTCMilliseconds())}`;return`${t}T${r}`}};rDi.exports=e=>{let t=new sxr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var oDi=H((sNu,sDi)=>{"use strict";var iDi=a1t(),Egc=global.Date,oxr=class extends Egc{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${iDi(2,this.getUTCMonth()+1)}-${iDi(2,this.getUTCDate())}`}};sDi.exports=e=>{let t=new oxr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var cDi=H((oNu,aDi)=>{"use strict";var c1t=a1t(),axr=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${c1t(2,this.getUTCHours())}:${c1t(2,this.getUTCMinutes())}:${c1t(2,this.getUTCSeconds())}.${c1t(3,this.getUTCMilliseconds())}`}};aDi.exports=e=>{let t=new axr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var l1t=H((exports,module)=>{"use strict";module.exports=makeParserClass(qNi());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=eDi(),createDateTimeFloat=nDi(),createDate=oDi(),createTime=cDi(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:` -`,[CHAR_f]:"\f",[CHAR_r]:"\r",[CHAR_QUOT]:'"',[CHAR_BSOL]:"\\"};function isDigit(e){return e>=CHAR_0&&e<=CHAR_9}function isHexit(e){return e>=CHAR_A&&e<=CHAR_F||e>=CHAR_a&&e<=CHAR_f||e>=CHAR_0&&e<=CHAR_9}function isBit(e){return e===CHAR_1||e===CHAR_0}function isOctit(e){return e>=CHAR_0&&e<=CHAR_7}function isAlphaNumQuoteHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_APOS||e===CHAR_QUOT||e===CHAR_LOWBAR||e===CHAR_HYPHEN}function isAlphaNumHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_LOWBAR||e===CHAR_HYPHEN}var _type=Symbol("type"),_declared=Symbol("declared"),hasOwnProperty=Object.prototype.hasOwnProperty,defineProperty=Object.defineProperty,descriptor={configurable:!0,enumerable:!0,writable:!0,value:void 0};function hasKey(e,t){return hasOwnProperty.call(e,t)?!0:(t==="__proto__"&&defineProperty(e,"__proto__",descriptor),!1)}var INLINE_TABLE=Symbol("inline-table");function InlineTable(){return Object.defineProperties({},{[_type]:{value:INLINE_TABLE}})}function isInlineTable(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_TABLE}var TABLE=Symbol("table");function Table(){return Object.defineProperties({},{[_type]:{value:TABLE},[_declared]:{value:!1,writable:!0}})}function isTable(e){return e===null||typeof e!="object"?!1:e[_type]===TABLE}var _contentType=Symbol("content-type"),INLINE_LIST=Symbol("inline-list");function InlineList(e){return Object.defineProperties([],{[_type]:{value:INLINE_LIST},[_contentType]:{value:e}})}function isInlineList(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_LIST}var LIST=Symbol("list");function List(){return Object.defineProperties([],{[_type]:{value:LIST}})}function isList(e){return e===null||typeof e!="object"?!1:e[_type]===LIST}var _custom;try{let utilInspect=eval("require('util').inspect");_custom=utilInspect.custom}catch(e){}var _inspect=_custom||"inspect",BoxedBigInt=class{constructor(t){try{this.value=global.BigInt.asIntN(64,t)}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}},INTEGER=Symbol("integer");function Integer(e){let t=Number(e);return Object.is(t,-0)&&(t=0),global.BigInt&&!Number.isSafeInteger(t)?new BoxedBigInt(e):Object.defineProperties(new Number(t),{isNaN:{value:function(){return isNaN(this)}},[_type]:{value:INTEGER},[_inspect]:{value:()=>`[Integer: ${e}]`}})}function isInteger(e){return e===null||typeof e!="object"?!1:e[_type]===INTEGER}var FLOAT=Symbol("float");function Float(e){return Object.defineProperties(new Number(e),{[_type]:{value:FLOAT},[_inspect]:{value:()=>`[Float: ${e}]`}})}function isFloat(e){return e===null||typeof e!="object"?!1:e[_type]===FLOAT}function tomlType(e){let t=typeof e;if(t==="object"){if(e===null)return"null";if(e instanceof Date)return"datetime";if(_type in e)switch(e[_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 t}function makeParserClass(e){class t extends e{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===e.END||this.char===CTRL_J||this.char===CTRL_M}parseStart(){if(this.char===e.END)return null;if(this.char===CHAR_LSQB)return this.call(this.parseTableOrList);if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(isAlphaNumQuoteHyphen(this.char))return this.callNow(this.parseAssignStatement);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;if(this.char===CHAR_NUM)return this.goto(this.parseComment);if(this.char===e.END||this.char===CTRL_J)return this.return();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(n){let a=this.ctx,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseWhitespaceToEOL)}parseAssign(){return this.callNow(this.parseKeyword,this.recordAssignKeyword)}recordAssignKeyword(n){return this.state.resultTable?this.state.resultTable.push(n):this.state.resultTable=[n],this.goto(this.parseAssignKeywordPreDot)}parseAssignKeywordPreDot(){if(this.char===CHAR_PERIOD)return this.next(this.parseAssignKeywordPostDot);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);throw this.error(new TomlError('Invalid character, expected "="'))}parseAssignPreValue(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseValue,this.recordAssignValue)}recordAssignValue(n){return this.returnNow({key:this.state.resultTable,value:n})}parseComment(){do if(this.char===e.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(){return this.ctx=this.obj,this.goto(this.parseTableNext)}parseTableNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseTableMore)}parseTableMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)&&(!isTable(this.ctx[n])||this.ctx[n][_declared]))throw this.error(new TomlError("Can't redefine existing key"));return this.ctx=this.ctx[n]=this.ctx[n]||Table(),this.ctx[_declared]=!0,this.next(this.parseWhitespaceToEOL)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].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(){return this.ctx=this.obj,this.goto(this.parseListNext)}parseListNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseListMore)}parseListMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)||(this.ctx[n]=List()),isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isList(this.ctx[n])){let a=Table();this.ctx[n].push(a),this.ctx=a}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,n))this.ctx=this.ctx[n]=Table();else{if(isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isInlineTable(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline table"));if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];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(n){if(this.char===CHAR_RSQB)return this.next(this.parseWhitespaceToEOL);throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseValue(){if(this.char===e.END)throw this.error(new TomlError("Key without value"));if(this.char===CHAR_QUOT)return this.next(this.parseDoubleString);if(this.char===CHAR_APOS)return this.next(this.parseSingleString);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)return this.goto(this.parseNumberSign);if(this.char===CHAR_i)return this.next(this.parseInf);if(this.char===CHAR_n)return this.next(this.parseNan);if(isDigit(this.char))return this.goto(this.parseNumberOrDateTime);if(this.char===CHAR_t||this.char===CHAR_f)return this.goto(this.parseBoolean);if(this.char===CHAR_LSQB)return this.call(this.parseInlineList,this.recordValue);if(this.char===CHAR_LCUB)return this.call(this.parseInlineTable,this.recordValue);throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table"))}recordValue(n){return this.returnNow(n)}parseInf(){if(this.char===CHAR_n)return this.next(this.parseInf2);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseInf2(){if(this.char===CHAR_f)return this.state.buf==="-"?this.return(-1/0):this.return(1/0);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseNan(){if(this.char===CHAR_a)return this.next(this.parseNan2);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseNan2(){if(this.char===CHAR_n)return this.return(NaN);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseKeyword(){return this.char===CHAR_QUOT?this.next(this.parseBasicString):this.char===CHAR_APOS?this.next(this.parseLiteralString):this.goto(this.parseBareKey)}parseBareKey(){do{if(this.char===e.END)throw this.error(new TomlError("Key ended without value"));if(isAlphaNumHyphen(this.char))this.consume();else{if(this.state.buf.length===0)throw this.error(new TomlError("Empty bare keys are not allowed"));return this.returnNow()}}while(this.nextChar())}parseSingleString(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiStringMaybe):this.goto(this.parseLiteralString)}parseLiteralString(){do{if(this.char===CHAR_APOS)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiStringMaybe(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiString):this.returnNow()}parseLiteralMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseLiteralMultiStringContent):this.goto(this.parseLiteralMultiStringContent)}parseLiteralMultiStringContent(){do{if(this.char===CHAR_APOS)return this.next(this.parseLiteralMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));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();this.consume()}while(this.nextChar())}parseLiteralMultiEnd(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiEnd2):(this.state.buf+="'",this.goto(this.parseLiteralMultiStringContent))}parseLiteralMultiEnd2(){return this.char===CHAR_APOS?this.return():(this.state.buf+="''",this.goto(this.parseLiteralMultiStringContent))}parseDoubleString(){return this.char===CHAR_QUOT?this.next(this.parseMultiStringMaybe):this.goto(this.parseBasicString)}parseBasicString(){do{if(this.char===CHAR_BSOL)return this.call(this.parseEscape,this.recordEscapeReplacement);if(this.char===CHAR_QUOT)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}recordEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseBasicString)}parseMultiStringMaybe(){return this.char===CHAR_QUOT?this.next(this.parseMultiString):this.returnNow()}parseMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseMultiStringContent):this.goto(this.parseMultiStringContent)}parseMultiStringContent(){do{if(this.char===CHAR_BSOL)return this.call(this.parseMultiEscape,this.recordMultiEscapeReplacement);if(this.char===CHAR_QUOT)return this.next(this.parseMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));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();this.consume()}while(this.nextChar())}errorControlCharInString(){let n="\\u00";return this.char<16&&(n+="0"),n+=this.char.toString(16),this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${n} instead`))}recordMultiEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseMultiStringContent)}parseMultiEnd(){return this.char===CHAR_QUOT?this.next(this.parseMultiEnd2):(this.state.buf+='"',this.goto(this.parseMultiStringContent))}parseMultiEnd2(){return this.char===CHAR_QUOT?this.return():(this.state.buf+='""',this.goto(this.parseMultiStringContent))}parseMultiEscape(){return this.char===CTRL_M||this.char===CTRL_J?this.next(this.parseMultiTrim):this.char===CHAR_SP||this.char===CTRL_I?this.next(this.parsePreMultiTrim):this.goto(this.parseEscape)}parsePreMultiTrim(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CTRL_M||this.char===CTRL_J)return this.next(this.parseMultiTrim);throw this.error(new TomlError("Can't escape whitespace"))}parseMultiTrim(){return this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M?null:this.returnNow()}parseEscape(){if(this.char in escapes)return this.return(escapes[this.char]);if(this.char===CHAR_u)return this.call(this.parseSmallUnicode,this.parseUnicodeReturn);if(this.char===CHAR_U)return this.call(this.parseLargeUnicode,this.parseUnicodeReturn);throw this.error(new TomlError("Unknown escape character: "+this.char))}parseUnicodeReturn(n){try{let a=parseInt(n,16);if(a>=SURROGATE_FIRST&&a<=SURROGATE_LAST)throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved"));return this.returnNow(String.fromCodePoint(a))}catch(a){throw this.error(TomlError.wrap(a))}}parseSmallUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=4)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseLargeUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=8)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseNumberSign(){return this.consume(),this.next(this.parseMaybeSignedInfOrNan)}parseMaybeSignedInfOrNan(){return this.char===CHAR_i?this.next(this.parseInf):this.char===CHAR_n?this.next(this.parseNan):this.callNow(this.parseNoUnder,this.parseNumberIntegerStart)}parseNumberIntegerStart(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberIntegerExponentOrDecimal)):this.goto(this.parseNumberInteger)}parseNumberIntegerExponentOrDecimal(){return this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Integer(this.state.buf))}parseNumberInteger(){if(isDigit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder);if(this.char===CHAR_E||this.char===CHAR_e)return this.consume(),this.next(this.parseNumberExponentSign);if(this.char===CHAR_PERIOD)return this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}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"));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"));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);if(isDigit(this.char))this.consume();else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Float(this.state.buf))}parseNumberExponentSign(){if(isDigit(this.char))return this.goto(this.parseNumberExponent);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 return this.char===CHAR_LOWBAR?this.call(this.parseNoUnder):this.returnNow(Float(this.state.buf))}parseNumberOrDateTime(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberBaseOrDateTime)):this.goto(this.parseNumberOrDateTimeOnly)}parseNumberOrDateTimeOnly(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberInteger);if(isDigit(this.char))this.consume(),this.state.buf.length>4&&this.next(this.parseNumberInteger);else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_HYPHEN?this.goto(this.parseDateTime):this.char===CHAR_COLON?this.goto(this.parseOnlyTimeHour):this.returnNow(Integer(this.state.buf))}parseDateTimeOnly(){if(this.state.buf.length<4){if(isDigit(this.char))return this.consume();if(this.char===CHAR_COLON)return this.goto(this.parseOnlyTimeHour);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);throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date"))}}parseNumberBaseOrDateTime(){return this.char===CHAR_b?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerBin)):this.char===CHAR_o?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerOct)):this.char===CHAR_x?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerHex)):this.char===CHAR_PERIOD?this.goto(this.parseNumberInteger):isDigit(this.char)?this.goto(this.parseDateTimeOnly):this.returnNow(Integer(this.state.buf))}parseIntegerHex(){if(isHexit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerOct(){if(isOctit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerBin(){if(isBit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseDateTime(){if(this.state.buf.length<4)throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters"));return this.state.result=this.state.buf,this.state.buf="",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"));return this.state.result+="-"+this.state.buf,this.state.buf="",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"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseStartTimeHour)}else{if(this.atEndOfWord())return this.returnNow(createDate(this.state.result+"-"+this.state.buf));if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}}parseStartTimeHour(){return this.atEndOfWord()?this.returnNow(createDate(this.state.result)):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"));return this.state.result+="T"+this.state.buf,this.state.buf="",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)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeSec);throw this.error(new TomlError("Incomplete datetime"))}}parseTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.state.result+=":"+this.state.buf,this.state.buf="",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"));return this.state.result=this.state.buf,this.state.buf="",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)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeSec);throw this.error(new TomlError("Incomplete time"))}}parseOnlyTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.next(this.parseOnlyTimeFractionMaybe)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeFractionMaybe(){if(this.state.result+=":"+this.state.buf,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)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));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"));if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}}parseTimeZoneHour(){if(isDigit(this.char)){if(this.consume(),/\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)){if(this.consume(),/\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)return this.consume(),this.next(this.parseTrue_r);if(this.char===CHAR_f)return this.consume(),this.next(this.parseFalse_a)}parseTrue_r(){if(this.char===CHAR_r)return this.consume(),this.next(this.parseTrue_u);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_u(){if(this.char===CHAR_u)return this.consume(),this.next(this.parseTrue_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_e(){if(this.char===CHAR_e)return this.return(!0);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_a(){if(this.char===CHAR_a)return this.consume(),this.next(this.parseFalse_l);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_l(){if(this.char===CHAR_l)return this.consume(),this.next(this.parseFalse_s);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_s(){if(this.char===CHAR_s)return this.consume(),this.next(this.parseFalse_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_e(){if(this.char===CHAR_e)return this.return(!1);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;if(this.char===e.END)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_NUM?this.call(this.parseComment):this.char===CHAR_RSQB?this.return(this.state.resultArr||InlineList()):this.callNow(this.parseValue,this.recordInlineListValue)}recordInlineListValue(n){if(this.state.resultArr){let a=this.state.resultArr[_contentType],o=tomlType(n);if(a!==o)throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${a} and ${o}`))}else this.state.resultArr=InlineList(tomlType(n));return isFloat(n)||isInteger(n)?this.state.resultArr.push(n.valueOf()):this.state.resultArr.push(n),this.goto(this.parseInlineListNext)}parseInlineListNext(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CHAR_COMMA)return this.next(this.parseInlineList);if(this.char===CHAR_RSQB)return this.goto(this.parseInlineList);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;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_RCUB?this.return(this.state.resultTable||InlineTable()):(this.state.resultTable||(this.state.resultTable=InlineTable()),this.callNow(this.parseAssign,this.recordInlineTableValue))}recordInlineTableValue(n){let a=this.state.resultTable,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseInlineTableNext)}parseInlineTableNext(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));if(this.char===CHAR_COMMA)return this.next(this.parseInlineTable);if(this.char===CHAR_RCUB)return this.goto(this.parseInlineTable);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}}return t}});var u1t=H((aNu,lDi)=>{"use strict";lDi.exports=Sgc;function Sgc(e,t){if(e.pos==null||e.line==null)return e;let r=e.message;if(r+=` at row ${e.line+1}, col ${e.col+1}, pos ${e.pos}: +`};$Et.exports.graceful=function(e){return $Et.exports(e)||` +`}});var zkr=H((VRu,XRi)=>{"use strict";var Tlc=Et("os");XRi.exports=Tlc.homedir||function(){var t=process.env.HOME,r=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;return process.platform==="win32"?process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||t||null:process.platform==="darwin"?t||(r?"/Users/"+r:null):process.platform==="linux"?t||(process.getuid()===0?"/root":r?"/home/"+r:null):t||null}});var qkr=H((WRu,JRi)=>{JRi.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(r,n){return n};var t=new Error().stack;return Error.prepareStackTrace=e,t[2].getFileName()}});var URi=H((ORu,gUe)=>{"use strict";var Rlc=process.platform==="win32",Nlc=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,$kr={};function Dlc(e){return Nlc.exec(e).slice(1)}$kr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=Dlc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0]===t[1]?t[0]:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};var klc=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,exr={};function xlc(e){return klc.exec(e).slice(1)}exr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=xlc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};Rlc?gUe.exports=$kr.parse:gUe.exports=exr.parse;gUe.exports.posix=exr.parse;gUe.exports.win32=$kr.parse});var txr=H((PRu,qRi)=>{var zRi=Et("path"),KRi=zRi.parse||URi(),jRi=function(t,r){var n="/";/^([A-Za-z]:)/.test(t)?n="":/^\\\\/.test(t)&&(n="\\\\");for(var a=[t],o=KRi(t);o.dir!==a[a.length-1];)a.push(o.dir),o=KRi(o.dir);return a.reduce(function(l,A){return l.concat(r.map(function(f){return zRi.resolve(n,A,f)}))},[])};qRi.exports=function(t,r,n){var a=r&&r.moduleDirectory?[].concat(r.moduleDirectory):["node_modules"];if(r&&typeof r.paths=="function")return r.paths(n,t,function(){return jRi(t,a)},r);var o=jRi(t,a);return r&&r.paths?o.concat(r.paths):o}});var rxr=H((MRu,$Ri)=>{var AUe=Et("path");$Ri.exports=function(e,t){if(t=t||{},t.forceNodeResolution||!process.versions.pnp)return t;let{findPnpApi:r}=Et("module"),n=(I,C)=>{let b=I.match(/^((?:@[^/]+\/)?[^/]+)(\/.*)?/);if(!b)throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${I}")`);C.charAt(C.length-1)!=="/"&&(C=AUe.join(C,"/"));let E=r(C);if(E===null)return;let N;try{N=E.resolveToUnqualified(`${b[1]}/package.json`,C,{considerBuiltins:!1})}catch{return null}if(N===null)throw new Error(`Assertion failed: The resolution thinks that "${b[1]}" is a Node builtin`);let B=AUe.dirname(N),F=typeof b[2]<"u"?AUe.join(B,b[2]):B;return{packagePath:B,unqualifiedPath:F}},a=(I,C)=>{for(let b=0;b{let N=[C].concat(o),B=a(I,N);return B==null?b():[B.unqualifiedPath]},A=(I,C,b,E)=>{let N=[C].concat(o),B=a(I,N);if(B==null)return b().concat(o);let F=AUe.dirname(B.packagePath);return I.match(/^@[^/]+\//)&&(F=AUe.dirname(F)),[F]},f=!1;return t.__skipPackageIterator||(t.packageIterator=function(I,C,b,E){f=!0;try{return l(I,C,b,E)}finally{f=!1}}),t.paths=function(I,C,b,E){return f?b().concat(o):A(I,C,b,E)},t}});var rNi=H((HRu,tNi)=>{"use strict";var Glc="Function.prototype.bind called on incompatible ",Flc=Object.prototype.toString,Zlc=Math.max,Llc="[object Function]",eNi=function(t,r){for(var n=[],a=0;a{"use strict";var Olc=rNi();nNi.exports=Function.prototype.bind||Olc});var oNi=H((QRu,sNi)=>{"use strict";var Plc=Function.prototype.call,Mlc=Object.prototype.hasOwnProperty,Hlc=iNi();sNi.exports=Hlc.call(Plc,Mlc)});var aNi=H((XRu,Ylc)=>{Ylc.exports={assert:!0,"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:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"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:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"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:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"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:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],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:!0,"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:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"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:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"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:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var dUe=H((JRu,uNi)=>{"use strict";var Qlc=oNi();function Xlc(e,t){for(var r=e.split("."),n=t.split(" "),a=n.length>1?n[0]:"=",o=(n.length>1?n[1]:n[0]).split("."),l=0;l<3;++l){var A=parseInt(r[l]||0,10),f=parseInt(o[l]||0,10);if(A!==f)return a==="<"?A="?A>=f:!1}return a===">="}function cNi(e,t){var r=t.split(/ ?&& ?/);if(r.length===0)return!1;for(var n=0;n"u"?process.versions&&process.versions.node:e;if(typeof r!="string")throw new TypeError(typeof e>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(t&&typeof t=="object"){for(var n=0;n{var vCe=Et("fs"),Ulc=zkr(),_T=Et("path"),Klc=qkr(),jlc=txr(),zlc=rxr(),qlc=dUe(),$lc=process.platform!=="win32"&&vCe.realpath&&typeof vCe.realpath.native=="function"?vCe.realpath.native:vCe.realpath,gNi=Ulc(),euc=function(){return[_T.join(gNi,".node_modules"),_T.join(gNi,".node_libraries")]},tuc=function(t,r){vCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isFile()||a.isFIFO())})},ruc=function(t,r){vCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isDirectory())})},nuc=function(t,r){$lc(t,function(n,a){n&&n.code!=="ENOENT"?r(n):r(null,n?t:a)})},pUe=function(t,r,n,a){n&&n.preserveSymlinks===!1?t(r,a):a(null,r)},iuc=function(t,r,n){t(r,function(a,o){if(a)n(a);else try{var l=JSON.parse(o);n(null,l)}catch{n(null)}})},suc=function(t,r,n){for(var a=jlc(r,n,t),o=0;o{ouc.exports={assert:!0,"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:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"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:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"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:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"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:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"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:!0,"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:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"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:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"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:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var mNi=H((jRu,hNi)=>{"use strict";var auc=dUe(),fNi=pNi(),INi={};for(e1t in fNi)Object.prototype.hasOwnProperty.call(fNi,e1t)&&(INi[e1t]=auc(e1t));var e1t;hNi.exports=INi});var _Ni=H((zRu,CNi)=>{var cuc=dUe();CNi.exports=function(t){return cuc(t)}});var ENi=H((qRu,bNi)=>{var luc=dUe(),BCe=Et("fs"),WG=Et("path"),uuc=zkr(),guc=qkr(),Auc=txr(),duc=rxr(),puc=process.platform!=="win32"&&BCe.realpathSync&&typeof BCe.realpathSync.native=="function"?BCe.realpathSync.native:BCe.realpathSync,yNi=uuc(),fuc=function(){return[WG.join(yNi,".node_modules"),WG.join(yNi,".node_libraries")]},Iuc=function(t){try{var r=BCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&(r.isFile()||r.isFIFO())},huc=function(t){try{var r=BCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&r.isDirectory()},muc=function(t){try{return puc(t)}catch(r){if(r.code!=="ENOENT")throw r}return t},fUe=function(t,r,n){return n&&n.preserveSymlinks===!1?t(r):r},Cuc=function(t,r){var n=t(r);try{var a=JSON.parse(n);return a}catch{}},_uc=function(t,r,n){for(var a=Auc(r,n,t),o=0;o{var t1t=dNi();t1t.core=mNi();t1t.isCore=_Ni();t1t.sync=ENi();SNi.exports=t1t});var wNi=H((eNu,BNi)=>{"use strict";var{builtinModules:yuc}=Et("module"),buc=["sys"];BNi.exports=(yuc||(process.binding?Object.keys(process.binding("natives")):[])||[]).filter(e=>!/^_|^(internal|v8|node-inspect)\/|\//.test(e)&&!buc.includes(e)).sort()});var NNi=H((tNu,RNi)=>{"use strict";var Euc=wNi(),Suc=new Set(Euc),TNi="node:";RNi.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");e.startsWith(TNi)&&(e=e.slice(TNi.length));let t=e.indexOf("/");return t!==-1&&t!==e.length-1&&(e=e.slice(0,t)),Suc.has(e)}});var xNi=H(nxr=>{"use strict";Object.defineProperty(nxr,"__esModule",{value:!0});var vuc=Et("path"),Buc=vNi(),wuc=NNi();function Tuc(e){if(e.length===1){let r=e;return n=>{let a=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return r(a)}}let t=e;return(r,n)=>{let a=r.defaultMember||r.namespaceMember||r.namedMembers[0].alias,o=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return t(a,o)}}function Ruc(e){if(e.length===1){let r=e;return n=>{let a=n.moduleName;return r(a)}}let t=e;return(r,n)=>{let a=r.moduleName,o=n.moduleName;return t(a,o)}}function Nuc(e){return(t,r)=>e(t.name,r.name)}function Duc(e){return(t,r)=>e(t.alias,r.alias)}function kuc(){return!0}function xuc(e){return t=>!e(t)}function Guc(...e){return t=>e.every(r=>r(t))}function Fuc(...e){return t=>e.some(r=>r(t))}function IUe(e){return!!e.defaultMember}function dDe(e){return!!e.namespaceMember}function hUe(e){return e.namedMembers.length>0}function DNi(e){return IUe(e)||dDe(e)||hUe(e)}function Zuc(e){return!DNi(e)}function Luc(e){return IUe(e)&&!dDe(e)&&!hUe(e)}function Vuc(e){return!IUe(e)&&dDe(e)&&!hUe(e)}function Wuc(e){return!IUe(e)&&!dDe(e)&&hUe(e)}function Ouc(e){return e.namedMembers.length+(e.defaultMember?1:0)+(e.namespaceMember?1:0)>1}function Puc(e){return e.namedMembers.length+(e.defaultMember?1:0)===1&&!dDe(e)}function Muc(e){return wuc(e.moduleName)}function kNi(e){return e.moduleName.indexOf(".")===0}function Huc(e){return!kNi(e)}function Yuc(e){return t=>{try{return Buc.sync(t.moduleName,{basedir:vuc.dirname(e)}).includes("node_modules")}catch{return!1}}}function Quc(e){return e.moduleName.startsWith("@")}function Xuc(e){let t=e.charAt(0);return e.charAt(0)===t.toUpperCase()}function Juc(e){let t=e.charAt(0);return e.charAt(0)===t.toLowerCase()}function Uuc(e){return!!e.match(/^[A-Za-z0-9]/)}function Kuc(...e){return t=>e.some(r=>t.startsWith(r))}function juc(e,t){return e.localeCompare(t,"en")}function zuc(e,t){return et?1:0}function quc(e,t){let r=/\.+(?=\/)/g,n=(e.moduleName.match(r)||[]).join("").length,a=(t.moduleName.match(r)||[]).join("").length;return n>a?-1:n{"use strict";Object.defineProperty(mUe,"__esModule",{value:!0});var egc=QRi(),tgc=xNi();function rgc(e,t,r,n,a){let o,l=typeof t=="string"?Et(t):t;return typeof r=="string"?(o=Et(r),o.default&&(o=o.default)):o=r,GNi(e,l,o,n,a)}mUe.default=rgc;function GNi(e,t,r,n,a){let o=sgc(r,n,a||{})(tgc.default),l=o.map(()=>[]),A=t.parseImports(e,{file:n});if(A.length===0)return{code:e,changes:[]};let f=egc.graceful(e),I=[];for(let fe of A){let ue=fe,de=o.findIndex(be=>(ue=ngc(fe,be.sortNamedMembers),!!be.match&&be.match(ue)));de!==-1&&l[de].push(ue)}l.forEach((fe,ue)=>{let{sort:de}=o[ue];if(!de)return;if(!Array.isArray(de)){fe.sort(de);return}let be=de;if(be.length===0)return;let Se=(De,k)=>{let tt=0,ze=0;for(;ze===0&&be[tt];)ze=be[tt](De,k),tt+=1;return ze};fe.sort(Se)});let C="",b=!1;l.forEach((fe,ue)=>{fe.length>0&&b&&(C+=f,b=!1),fe.forEach(de=>{let be=t.formatImport(e,de,f);C+=be+f}),o[ue].separator&&C!==""&&(b=!0)});let E=e;A.slice().reverse().forEach(fe=>{let ue=fe.end;E.charAt(fe.end).match(/\s/)&&(ue+=1),I.push({start:fe.start,end:ue,code:"",note:"import-remove"}),E=E.slice(0,fe.start)+E.slice(ue,e.length)});let{start:N}=A[0],B=e.substring(0,N),F=E.substring(N,E.length),Q=B.length,J=F.length,ae,ne;B=B.replace(/\s+$/,fe=>(ae={start:N-fe.length,end:N,code:f+f,note:"before-collapse"},f+f)),F=F.replace(/^\s+/,fe=>(ne={start:N,end:N+fe.length,code:f,note:"after-collapse"},f)),B.match(/^\s+$/)&&(ae={start:N-Q,end:N,code:"",note:"before-trim"},B=""),F.match(/^\s+$/)&&(ne={start:N,end:N+J,code:"",note:"after-trim"},F=""),ne&&I.push(ne),ae&&I.push(ae);let ce={start:B.length,end:B.length,code:C,note:"imports"};return I.push(ce),e===B+C+F?{code:e,changes:[]}:{code:B+C+F,changes:I}}mUe.sortImports=GNi;function ngc(e,t){let r=t;if(!r)return e;if(!Array.isArray(r)){let l=Object.assign({},e);return l.namedMembers=[...e.namedMembers].sort(r),l}let n=r;if(n.length===0)return e;let a=(l,A)=>{let f=0,I=0;for(;I===0&&n[f];)I=n[f](l,A),f+=1;return I},o=Object.assign({},e);return o.namedMembers=[...e.namedMembers].sort(a),o}function igc(e,t){let r=e;for(let n of t)r=r.slice(0,n.start)+n.code+r.slice(n.end,r.length);return r}mUe.applyChanges=igc;function sgc(e,t,r){return n=>{let a=[{separator:!0},{match:n.always}];return e(n,t,r).concat(a)}}});var lDi=H((uDu,cDi)=>{"use strict";var wCe=class e extends Error{constructor(t,r,n){super("[ParserError] "+t,r,n),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},i1t=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},_Ue=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 i1t(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let r;for(;r===!1||this.nextChar();)r=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii{"use strict";uDi.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var s1t=H((ADu,ADi)=>{"use strict";ADi.exports=(e,t)=>{for(t=String(t);t.length{"use strict";var pDe=s1t(),axr=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${pDe(2,this.getUTCMonth()+1)}-${pDe(2,this.getUTCDate())}`,r=`${pDe(2,this.getUTCHours())}:${pDe(2,this.getUTCMinutes())}:${pDe(2,this.getUTCSeconds())}.${pDe(3,this.getUTCMilliseconds())}`;return`${t}T${r}`}};dDi.exports=e=>{let t=new axr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var hDi=H((pDu,IDi)=>{"use strict";var fDi=s1t(),Tgc=global.Date,cxr=class extends Tgc{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${fDi(2,this.getUTCMonth()+1)}-${fDi(2,this.getUTCDate())}`}};IDi.exports=e=>{let t=new cxr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var CDi=H((fDu,mDi)=>{"use strict";var o1t=s1t(),lxr=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${o1t(2,this.getUTCHours())}:${o1t(2,this.getUTCMinutes())}:${o1t(2,this.getUTCSeconds())}.${o1t(3,this.getUTCMilliseconds())}`}};mDi.exports=e=>{let t=new lxr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var a1t=H((exports,module)=>{"use strict";module.exports=makeParserClass(lDi());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=gDi(),createDateTimeFloat=pDi(),createDate=hDi(),createTime=CDi(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:` +`,[CHAR_f]:"\f",[CHAR_r]:"\r",[CHAR_QUOT]:'"',[CHAR_BSOL]:"\\"};function isDigit(e){return e>=CHAR_0&&e<=CHAR_9}function isHexit(e){return e>=CHAR_A&&e<=CHAR_F||e>=CHAR_a&&e<=CHAR_f||e>=CHAR_0&&e<=CHAR_9}function isBit(e){return e===CHAR_1||e===CHAR_0}function isOctit(e){return e>=CHAR_0&&e<=CHAR_7}function isAlphaNumQuoteHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_APOS||e===CHAR_QUOT||e===CHAR_LOWBAR||e===CHAR_HYPHEN}function isAlphaNumHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_LOWBAR||e===CHAR_HYPHEN}var _type=Symbol("type"),_declared=Symbol("declared"),hasOwnProperty=Object.prototype.hasOwnProperty,defineProperty=Object.defineProperty,descriptor={configurable:!0,enumerable:!0,writable:!0,value:void 0};function hasKey(e,t){return hasOwnProperty.call(e,t)?!0:(t==="__proto__"&&defineProperty(e,"__proto__",descriptor),!1)}var INLINE_TABLE=Symbol("inline-table");function InlineTable(){return Object.defineProperties({},{[_type]:{value:INLINE_TABLE}})}function isInlineTable(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_TABLE}var TABLE=Symbol("table");function Table(){return Object.defineProperties({},{[_type]:{value:TABLE},[_declared]:{value:!1,writable:!0}})}function isTable(e){return e===null||typeof e!="object"?!1:e[_type]===TABLE}var _contentType=Symbol("content-type"),INLINE_LIST=Symbol("inline-list");function InlineList(e){return Object.defineProperties([],{[_type]:{value:INLINE_LIST},[_contentType]:{value:e}})}function isInlineList(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_LIST}var LIST=Symbol("list");function List(){return Object.defineProperties([],{[_type]:{value:LIST}})}function isList(e){return e===null||typeof e!="object"?!1:e[_type]===LIST}var _custom;try{let utilInspect=eval("require('util').inspect");_custom=utilInspect.custom}catch(e){}var _inspect=_custom||"inspect",BoxedBigInt=class{constructor(t){try{this.value=global.BigInt.asIntN(64,t)}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}},INTEGER=Symbol("integer");function Integer(e){let t=Number(e);return Object.is(t,-0)&&(t=0),global.BigInt&&!Number.isSafeInteger(t)?new BoxedBigInt(e):Object.defineProperties(new Number(t),{isNaN:{value:function(){return isNaN(this)}},[_type]:{value:INTEGER},[_inspect]:{value:()=>`[Integer: ${e}]`}})}function isInteger(e){return e===null||typeof e!="object"?!1:e[_type]===INTEGER}var FLOAT=Symbol("float");function Float(e){return Object.defineProperties(new Number(e),{[_type]:{value:FLOAT},[_inspect]:{value:()=>`[Float: ${e}]`}})}function isFloat(e){return e===null||typeof e!="object"?!1:e[_type]===FLOAT}function tomlType(e){let t=typeof e;if(t==="object"){if(e===null)return"null";if(e instanceof Date)return"datetime";if(_type in e)switch(e[_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 t}function makeParserClass(e){class t extends e{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===e.END||this.char===CTRL_J||this.char===CTRL_M}parseStart(){if(this.char===e.END)return null;if(this.char===CHAR_LSQB)return this.call(this.parseTableOrList);if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(isAlphaNumQuoteHyphen(this.char))return this.callNow(this.parseAssignStatement);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;if(this.char===CHAR_NUM)return this.goto(this.parseComment);if(this.char===e.END||this.char===CTRL_J)return this.return();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(n){let a=this.ctx,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseWhitespaceToEOL)}parseAssign(){return this.callNow(this.parseKeyword,this.recordAssignKeyword)}recordAssignKeyword(n){return this.state.resultTable?this.state.resultTable.push(n):this.state.resultTable=[n],this.goto(this.parseAssignKeywordPreDot)}parseAssignKeywordPreDot(){if(this.char===CHAR_PERIOD)return this.next(this.parseAssignKeywordPostDot);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);throw this.error(new TomlError('Invalid character, expected "="'))}parseAssignPreValue(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseValue,this.recordAssignValue)}recordAssignValue(n){return this.returnNow({key:this.state.resultTable,value:n})}parseComment(){do if(this.char===e.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(){return this.ctx=this.obj,this.goto(this.parseTableNext)}parseTableNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseTableMore)}parseTableMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)&&(!isTable(this.ctx[n])||this.ctx[n][_declared]))throw this.error(new TomlError("Can't redefine existing key"));return this.ctx=this.ctx[n]=this.ctx[n]||Table(),this.ctx[_declared]=!0,this.next(this.parseWhitespaceToEOL)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].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(){return this.ctx=this.obj,this.goto(this.parseListNext)}parseListNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseListMore)}parseListMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)||(this.ctx[n]=List()),isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isList(this.ctx[n])){let a=Table();this.ctx[n].push(a),this.ctx=a}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,n))this.ctx=this.ctx[n]=Table();else{if(isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isInlineTable(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline table"));if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];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(n){if(this.char===CHAR_RSQB)return this.next(this.parseWhitespaceToEOL);throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseValue(){if(this.char===e.END)throw this.error(new TomlError("Key without value"));if(this.char===CHAR_QUOT)return this.next(this.parseDoubleString);if(this.char===CHAR_APOS)return this.next(this.parseSingleString);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)return this.goto(this.parseNumberSign);if(this.char===CHAR_i)return this.next(this.parseInf);if(this.char===CHAR_n)return this.next(this.parseNan);if(isDigit(this.char))return this.goto(this.parseNumberOrDateTime);if(this.char===CHAR_t||this.char===CHAR_f)return this.goto(this.parseBoolean);if(this.char===CHAR_LSQB)return this.call(this.parseInlineList,this.recordValue);if(this.char===CHAR_LCUB)return this.call(this.parseInlineTable,this.recordValue);throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table"))}recordValue(n){return this.returnNow(n)}parseInf(){if(this.char===CHAR_n)return this.next(this.parseInf2);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseInf2(){if(this.char===CHAR_f)return this.state.buf==="-"?this.return(-1/0):this.return(1/0);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseNan(){if(this.char===CHAR_a)return this.next(this.parseNan2);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseNan2(){if(this.char===CHAR_n)return this.return(NaN);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseKeyword(){return this.char===CHAR_QUOT?this.next(this.parseBasicString):this.char===CHAR_APOS?this.next(this.parseLiteralString):this.goto(this.parseBareKey)}parseBareKey(){do{if(this.char===e.END)throw this.error(new TomlError("Key ended without value"));if(isAlphaNumHyphen(this.char))this.consume();else{if(this.state.buf.length===0)throw this.error(new TomlError("Empty bare keys are not allowed"));return this.returnNow()}}while(this.nextChar())}parseSingleString(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiStringMaybe):this.goto(this.parseLiteralString)}parseLiteralString(){do{if(this.char===CHAR_APOS)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiStringMaybe(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiString):this.returnNow()}parseLiteralMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseLiteralMultiStringContent):this.goto(this.parseLiteralMultiStringContent)}parseLiteralMultiStringContent(){do{if(this.char===CHAR_APOS)return this.next(this.parseLiteralMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));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();this.consume()}while(this.nextChar())}parseLiteralMultiEnd(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiEnd2):(this.state.buf+="'",this.goto(this.parseLiteralMultiStringContent))}parseLiteralMultiEnd2(){return this.char===CHAR_APOS?this.return():(this.state.buf+="''",this.goto(this.parseLiteralMultiStringContent))}parseDoubleString(){return this.char===CHAR_QUOT?this.next(this.parseMultiStringMaybe):this.goto(this.parseBasicString)}parseBasicString(){do{if(this.char===CHAR_BSOL)return this.call(this.parseEscape,this.recordEscapeReplacement);if(this.char===CHAR_QUOT)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}recordEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseBasicString)}parseMultiStringMaybe(){return this.char===CHAR_QUOT?this.next(this.parseMultiString):this.returnNow()}parseMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseMultiStringContent):this.goto(this.parseMultiStringContent)}parseMultiStringContent(){do{if(this.char===CHAR_BSOL)return this.call(this.parseMultiEscape,this.recordMultiEscapeReplacement);if(this.char===CHAR_QUOT)return this.next(this.parseMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));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();this.consume()}while(this.nextChar())}errorControlCharInString(){let n="\\u00";return this.char<16&&(n+="0"),n+=this.char.toString(16),this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${n} instead`))}recordMultiEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseMultiStringContent)}parseMultiEnd(){return this.char===CHAR_QUOT?this.next(this.parseMultiEnd2):(this.state.buf+='"',this.goto(this.parseMultiStringContent))}parseMultiEnd2(){return this.char===CHAR_QUOT?this.return():(this.state.buf+='""',this.goto(this.parseMultiStringContent))}parseMultiEscape(){return this.char===CTRL_M||this.char===CTRL_J?this.next(this.parseMultiTrim):this.char===CHAR_SP||this.char===CTRL_I?this.next(this.parsePreMultiTrim):this.goto(this.parseEscape)}parsePreMultiTrim(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CTRL_M||this.char===CTRL_J)return this.next(this.parseMultiTrim);throw this.error(new TomlError("Can't escape whitespace"))}parseMultiTrim(){return this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M?null:this.returnNow()}parseEscape(){if(this.char in escapes)return this.return(escapes[this.char]);if(this.char===CHAR_u)return this.call(this.parseSmallUnicode,this.parseUnicodeReturn);if(this.char===CHAR_U)return this.call(this.parseLargeUnicode,this.parseUnicodeReturn);throw this.error(new TomlError("Unknown escape character: "+this.char))}parseUnicodeReturn(n){try{let a=parseInt(n,16);if(a>=SURROGATE_FIRST&&a<=SURROGATE_LAST)throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved"));return this.returnNow(String.fromCodePoint(a))}catch(a){throw this.error(TomlError.wrap(a))}}parseSmallUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=4)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseLargeUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=8)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseNumberSign(){return this.consume(),this.next(this.parseMaybeSignedInfOrNan)}parseMaybeSignedInfOrNan(){return this.char===CHAR_i?this.next(this.parseInf):this.char===CHAR_n?this.next(this.parseNan):this.callNow(this.parseNoUnder,this.parseNumberIntegerStart)}parseNumberIntegerStart(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberIntegerExponentOrDecimal)):this.goto(this.parseNumberInteger)}parseNumberIntegerExponentOrDecimal(){return this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Integer(this.state.buf))}parseNumberInteger(){if(isDigit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder);if(this.char===CHAR_E||this.char===CHAR_e)return this.consume(),this.next(this.parseNumberExponentSign);if(this.char===CHAR_PERIOD)return this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}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"));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"));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);if(isDigit(this.char))this.consume();else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Float(this.state.buf))}parseNumberExponentSign(){if(isDigit(this.char))return this.goto(this.parseNumberExponent);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 return this.char===CHAR_LOWBAR?this.call(this.parseNoUnder):this.returnNow(Float(this.state.buf))}parseNumberOrDateTime(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberBaseOrDateTime)):this.goto(this.parseNumberOrDateTimeOnly)}parseNumberOrDateTimeOnly(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberInteger);if(isDigit(this.char))this.consume(),this.state.buf.length>4&&this.next(this.parseNumberInteger);else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_HYPHEN?this.goto(this.parseDateTime):this.char===CHAR_COLON?this.goto(this.parseOnlyTimeHour):this.returnNow(Integer(this.state.buf))}parseDateTimeOnly(){if(this.state.buf.length<4){if(isDigit(this.char))return this.consume();if(this.char===CHAR_COLON)return this.goto(this.parseOnlyTimeHour);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);throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date"))}}parseNumberBaseOrDateTime(){return this.char===CHAR_b?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerBin)):this.char===CHAR_o?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerOct)):this.char===CHAR_x?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerHex)):this.char===CHAR_PERIOD?this.goto(this.parseNumberInteger):isDigit(this.char)?this.goto(this.parseDateTimeOnly):this.returnNow(Integer(this.state.buf))}parseIntegerHex(){if(isHexit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerOct(){if(isOctit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerBin(){if(isBit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseDateTime(){if(this.state.buf.length<4)throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters"));return this.state.result=this.state.buf,this.state.buf="",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"));return this.state.result+="-"+this.state.buf,this.state.buf="",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"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseStartTimeHour)}else{if(this.atEndOfWord())return this.returnNow(createDate(this.state.result+"-"+this.state.buf));if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}}parseStartTimeHour(){return this.atEndOfWord()?this.returnNow(createDate(this.state.result)):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"));return this.state.result+="T"+this.state.buf,this.state.buf="",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)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeSec);throw this.error(new TomlError("Incomplete datetime"))}}parseTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.state.result+=":"+this.state.buf,this.state.buf="",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"));return this.state.result=this.state.buf,this.state.buf="",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)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeSec);throw this.error(new TomlError("Incomplete time"))}}parseOnlyTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.next(this.parseOnlyTimeFractionMaybe)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeFractionMaybe(){if(this.state.result+=":"+this.state.buf,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)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));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"));if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}}parseTimeZoneHour(){if(isDigit(this.char)){if(this.consume(),/\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)){if(this.consume(),/\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)return this.consume(),this.next(this.parseTrue_r);if(this.char===CHAR_f)return this.consume(),this.next(this.parseFalse_a)}parseTrue_r(){if(this.char===CHAR_r)return this.consume(),this.next(this.parseTrue_u);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_u(){if(this.char===CHAR_u)return this.consume(),this.next(this.parseTrue_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_e(){if(this.char===CHAR_e)return this.return(!0);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_a(){if(this.char===CHAR_a)return this.consume(),this.next(this.parseFalse_l);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_l(){if(this.char===CHAR_l)return this.consume(),this.next(this.parseFalse_s);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_s(){if(this.char===CHAR_s)return this.consume(),this.next(this.parseFalse_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_e(){if(this.char===CHAR_e)return this.return(!1);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;if(this.char===e.END)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_NUM?this.call(this.parseComment):this.char===CHAR_RSQB?this.return(this.state.resultArr||InlineList()):this.callNow(this.parseValue,this.recordInlineListValue)}recordInlineListValue(n){if(this.state.resultArr){let a=this.state.resultArr[_contentType],o=tomlType(n);if(a!==o)throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${a} and ${o}`))}else this.state.resultArr=InlineList(tomlType(n));return isFloat(n)||isInteger(n)?this.state.resultArr.push(n.valueOf()):this.state.resultArr.push(n),this.goto(this.parseInlineListNext)}parseInlineListNext(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CHAR_COMMA)return this.next(this.parseInlineList);if(this.char===CHAR_RSQB)return this.goto(this.parseInlineList);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;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_RCUB?this.return(this.state.resultTable||InlineTable()):(this.state.resultTable||(this.state.resultTable=InlineTable()),this.callNow(this.parseAssign,this.recordInlineTableValue))}recordInlineTableValue(n){let a=this.state.resultTable,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseInlineTableNext)}parseInlineTableNext(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));if(this.char===CHAR_COMMA)return this.next(this.parseInlineTable);if(this.char===CHAR_RCUB)return this.goto(this.parseInlineTable);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}}return t}});var c1t=H((IDu,_Di)=>{"use strict";_Di.exports=Rgc;function Rgc(e,t){if(e.pos==null||e.line==null)return e;let r=e.message;if(r+=` at row ${e.line+1}, col ${e.col+1}, pos ${e.pos}: `,t&&t.split){let n=t.split(/\n/),a=String(Math.min(n.length,e.line+3)).length,o=" ";for(;o.length "+n[l]+` `,r+=o+" ";for(let f=0;f{"use strict";uDi.exports=wgc;var vgc=l1t(),Bgc=u1t();function wgc(e){global.Buffer&&global.Buffer.isBuffer(e)&&(e=e.toString("utf8"));let t=new vgc;try{return t.parse(e),t.finish()}catch(r){throw Bgc(r,e)}}});var pDi=H((lNu,dDi)=>{"use strict";dDi.exports=Rgc;var Tgc=l1t(),ADi=u1t();function Rgc(e,t){t||(t={});let r=0,n=t.blocksize||40960,a=new Tgc;return new Promise((l,A)=>{setImmediate(o,r,n,l,A)});function o(l,A,f,I){if(l>=e.length)try{return f(a.finish())}catch(C){return I(ADi(C,e))}try{a.parse(e.slice(l,l+A)),setImmediate(o,l+A,A,f,I)}catch(C){I(ADi(C,e))}}}});var hDi=H((uNu,IDi)=>{"use strict";IDi.exports=Dgc;var Ngc=Et("stream"),fDi=l1t();function Dgc(e){return e?kgc(e):xgc(e)}function kgc(e){let t=new fDi;return e.setEncoding("utf8"),new Promise((r,n)=>{let a,o=!1,l=!1;function A(){if(o=!0,!a)try{r(t.finish())}catch(C){n(C)}}function f(C){l=!0,n(C)}e.once("end",A),e.once("error",f),I();function I(){a=!0;let C;for(;(C=e.read())!==null;)try{t.parse(C)}catch(b){return f(b)}if(a=!1,o)return A();l||e.once("readable",I)}})}function xgc(){let e=new fDi;return new Ngc.Transform({objectMode:!0,transform(t,r,n){try{e.parse(t.toString(r))}catch(a){this.emit("error",a)}n()},flush(t){try{this.push(e.finish())}catch(r){this.emit("error",r)}t()}})}});var mDi=H((gNu,CUe)=>{"use strict";CUe.exports=gDi();CUe.exports.async=pDi();CUe.exports.stream=hDi();CUe.exports.prettyError=u1t()});var BDi=H((ANu,uxr)=>{"use strict";uxr.exports=Ggc;uxr.exports.value=lxr;function Ggc(e){if(e===null)throw wCe("null");if(e===void 0)throw wCe("undefined");if(typeof e!="object")throw wCe(typeof e);if(typeof e.toJSON=="function"&&(e=e.toJSON()),e==null)return null;let t=DV(e);if(t!=="table")throw wCe(t);return cxr("","",e)}function wCe(e){return new Error("Can only stringify objects, not "+e)}function Fgc(){return new Error("Array values can't have mixed types")}function CDi(e){return Object.keys(e).filter(t=>_Di(e[t]))}function Zgc(e){return Object.keys(e).filter(t=>!_Di(e[t]))}function g1t(e){let t=Array.isArray(e)?[]:Object.prototype.hasOwnProperty.call(e,"__proto__")?{["__proto__"]:void 0}:{};for(let r of Object.keys(e))e[r]&&typeof e[r].toJSON=="function"&&!("toISOString"in e[r])?t[r]=e[r].toJSON():t[r]=e[r];return t}function cxr(e,t,r){r=g1t(r);var n,a;n=CDi(r),a=Zgc(r);var o=[],l=t||"";n.forEach(f=>{var I=DV(r[f]);I!=="undefined"&&I!=="null"&&o.push(l+A1t(f)+" = "+EDi(r[f],!0))}),o.length>0&&o.push("");var A=e&&n.length>0?t+" ":"";return a.forEach(f=>{o.push(Jgc(e,A,f,r[f]))}),o.join(` -`)}function _Di(e){switch(DV(e)){case"undefined":case"null":case"integer":case"nan":case"float":case"boolean":case"string":case"datetime":return!0;case"array":return e.length===0||DV(e[0])!=="table";case"table":return Object.keys(e).length===0;default:return!1}}function DV(e){return e===void 0?"undefined":e===null?"null":typeof e=="bigint"||Number.isInteger(e)&&!Object.is(e,-0)?"integer":typeof e=="number"?"float":typeof e=="boolean"?"boolean":typeof e=="string"?"string":"toISOString"in e?isNaN(e)?"undefined":"datetime":Array.isArray(e)?"array":"table"}function A1t(e){var t=String(e);return/^[-A-Za-z0-9_]+$/.test(t)?t:yDi(t)}function yDi(e){return'"'+bDi(e).replace(/"/g,'\\"')+'"'}function Lgc(e){return"'"+e+"'"}function Vgc(e,t){for(;t.length"\\u"+Vgc(4,t.codePointAt(0).toString(16)))}function Wgc(e){let t=e.split(/\n/).map(r=>bDi(r).replace(/"(?="")/g,'\\"')).join(` +`,e}});var bDi=H((hDu,yDi)=>{"use strict";yDi.exports=kgc;var Ngc=a1t(),Dgc=c1t();function kgc(e){global.Buffer&&global.Buffer.isBuffer(e)&&(e=e.toString("utf8"));let t=new Ngc;try{return t.parse(e),t.finish()}catch(r){throw Dgc(r,e)}}});var vDi=H((mDu,SDi)=>{"use strict";SDi.exports=Ggc;var xgc=a1t(),EDi=c1t();function Ggc(e,t){t||(t={});let r=0,n=t.blocksize||40960,a=new xgc;return new Promise((l,A)=>{setImmediate(o,r,n,l,A)});function o(l,A,f,I){if(l>=e.length)try{return f(a.finish())}catch(C){return I(EDi(C,e))}try{a.parse(e.slice(l,l+A)),setImmediate(o,l+A,A,f,I)}catch(C){I(EDi(C,e))}}}});var TDi=H((CDu,wDi)=>{"use strict";wDi.exports=Zgc;var Fgc=Et("stream"),BDi=a1t();function Zgc(e){return e?Lgc(e):Vgc(e)}function Lgc(e){let t=new BDi;return e.setEncoding("utf8"),new Promise((r,n)=>{let a,o=!1,l=!1;function A(){if(o=!0,!a)try{r(t.finish())}catch(C){n(C)}}function f(C){l=!0,n(C)}e.once("end",A),e.once("error",f),I();function I(){a=!0;let C;for(;(C=e.read())!==null;)try{t.parse(C)}catch(b){return f(b)}if(a=!1,o)return A();l||e.once("readable",I)}})}function Vgc(){let e=new BDi;return new Fgc.Transform({objectMode:!0,transform(t,r,n){try{e.parse(t.toString(r))}catch(a){this.emit("error",a)}n()},flush(t){try{this.push(e.finish())}catch(r){this.emit("error",r)}t()}})}});var RDi=H((_Du,yUe)=>{"use strict";yUe.exports=bDi();yUe.exports.async=vDi();yUe.exports.stream=TDi();yUe.exports.prettyError=c1t()});var LDi=H((yDu,Axr)=>{"use strict";Axr.exports=Wgc;Axr.exports.value=gxr;function Wgc(e){if(e===null)throw TCe("null");if(e===void 0)throw TCe("undefined");if(typeof e!="object")throw TCe(typeof e);if(typeof e.toJSON=="function"&&(e=e.toJSON()),e==null)return null;let t=kV(e);if(t!=="table")throw TCe(t);return uxr("","",e)}function TCe(e){return new Error("Can only stringify objects, not "+e)}function Ogc(){return new Error("Array values can't have mixed types")}function NDi(e){return Object.keys(e).filter(t=>DDi(e[t]))}function Pgc(e){return Object.keys(e).filter(t=>!DDi(e[t]))}function l1t(e){let t=Array.isArray(e)?[]:Object.prototype.hasOwnProperty.call(e,"__proto__")?{["__proto__"]:void 0}:{};for(let r of Object.keys(e))e[r]&&typeof e[r].toJSON=="function"&&!("toISOString"in e[r])?t[r]=e[r].toJSON():t[r]=e[r];return t}function uxr(e,t,r){r=l1t(r);var n,a;n=NDi(r),a=Pgc(r);var o=[],l=t||"";n.forEach(f=>{var I=kV(r[f]);I!=="undefined"&&I!=="null"&&o.push(l+u1t(f)+" = "+GDi(r[f],!0))}),o.length>0&&o.push("");var A=e&&n.length>0?t+" ":"";return a.forEach(f=>{o.push(qgc(e,A,f,r[f]))}),o.join(` +`)}function DDi(e){switch(kV(e)){case"undefined":case"null":case"integer":case"nan":case"float":case"boolean":case"string":case"datetime":return!0;case"array":return e.length===0||kV(e[0])!=="table";case"table":return Object.keys(e).length===0;default:return!1}}function kV(e){return e===void 0?"undefined":e===null?"null":typeof e=="bigint"||Number.isInteger(e)&&!Object.is(e,-0)?"integer":typeof e=="number"?"float":typeof e=="boolean"?"boolean":typeof e=="string"?"string":"toISOString"in e?isNaN(e)?"undefined":"datetime":Array.isArray(e)?"array":"table"}function u1t(e){var t=String(e);return/^[-A-Za-z0-9_]+$/.test(t)?t:kDi(t)}function kDi(e){return'"'+xDi(e).replace(/"/g,'\\"')+'"'}function Mgc(e){return"'"+e+"'"}function Hgc(e,t){for(;t.length"\\u"+Hgc(4,t.codePointAt(0).toString(16)))}function Ygc(e){let t=e.split(/\n/).map(r=>xDi(r).replace(/"(?="")/g,'\\"')).join(` `);return t.slice(-1)==='"'&&(t+=`\\ `),`""" -`+t+'"""'}function EDi(e,t){let r=DV(e);return r==="string"&&(t&&/\n/.test(e)?r="string-multiline":!/[\b\t\n\f\r']/.test(e)&&/"/.test(e)&&(r="string-literal")),lxr(e,r)}function lxr(e,t){switch(t||(t=DV(e)),t){case"string-multiline":return Wgc(e);case"string":return yDi(e);case"string-literal":return Lgc(e);case"integer":return SDi(e);case"float":return Ogc(e);case"boolean":return Pgc(e);case"datetime":return Mgc(e);case"array":return Qgc(e.filter(r=>DV(r)!=="null"&&DV(r)!=="undefined"&&DV(r)!=="nan"));case"table":return Xgc(e);default:throw wCe(t)}}function SDi(e){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,"_")}function Ogc(e){if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Object.is(e,NaN))return"nan";if(Object.is(e,-0))return"-0.0";var t=String(e).split("."),r=t[0],n=t[1]||0;return SDi(r)+"."+n}function Pgc(e){return String(e)}function Mgc(e){return e.toISOString()}function Hgc(e){return e==="float"||e==="integer"}function Ygc(e){var t=DV(e[0]);return e.every(r=>DV(r)===t)?t:e.every(r=>Hgc(DV(r)))?"float":"mixed"}function vDi(e){let t=Ygc(e);if(t==="mixed")throw Fgc();return t}function Qgc(e){e=g1t(e);let t=vDi(e);var r="[",n=e.map(a=>lxr(a,t));return n.join(", ").length>60||/\n/.test(n)?r+=` +`+t+'"""'}function GDi(e,t){let r=kV(e);return r==="string"&&(t&&/\n/.test(e)?r="string-multiline":!/[\b\t\n\f\r']/.test(e)&&/"/.test(e)&&(r="string-literal")),gxr(e,r)}function gxr(e,t){switch(t||(t=kV(e)),t){case"string-multiline":return Ygc(e);case"string":return kDi(e);case"string-literal":return Mgc(e);case"integer":return FDi(e);case"float":return Qgc(e);case"boolean":return Xgc(e);case"datetime":return Jgc(e);case"array":return jgc(e.filter(r=>kV(r)!=="null"&&kV(r)!=="undefined"&&kV(r)!=="nan"));case"table":return zgc(e);default:throw TCe(t)}}function FDi(e){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,"_")}function Qgc(e){if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Object.is(e,NaN))return"nan";if(Object.is(e,-0))return"-0.0";var t=String(e).split("."),r=t[0],n=t[1]||0;return FDi(r)+"."+n}function Xgc(e){return String(e)}function Jgc(e){return e.toISOString()}function Ugc(e){return e==="float"||e==="integer"}function Kgc(e){var t=kV(e[0]);return e.every(r=>kV(r)===t)?t:e.every(r=>Ugc(kV(r)))?"float":"mixed"}function ZDi(e){let t=Kgc(e);if(t==="mixed")throw Ogc();return t}function jgc(e){e=l1t(e);let t=ZDi(e);var r="[",n=e.map(a=>gxr(a,t));return n.join(", ").length>60||/\n/.test(n)?r+=` `+n.join(`, `)+` -`:r+=" "+n.join(", ")+(n.length>0?" ":""),r+"]"}function Xgc(e){e=g1t(e);var t=[];return Object.keys(e).forEach(r=>{t.push(A1t(r)+" = "+EDi(e[r],!1))}),"{ "+t.join(", ")+(t.length>0?" ":"")+"}"}function Jgc(e,t,r,n){var a=DV(n);if(a==="array")return Ugc(e,t,r,n);if(a==="table")return Kgc(e,t,r,n);throw wCe(a)}function Ugc(e,t,r,n){n=g1t(n),vDi(n);var a=DV(n[0]);if(a!=="table")throw wCe(a);var o=e+A1t(r),l="";return n.forEach(A=>{l.length>0&&(l+=` +`:r+=" "+n.join(", ")+(n.length>0?" ":""),r+"]"}function zgc(e){e=l1t(e);var t=[];return Object.keys(e).forEach(r=>{t.push(u1t(r)+" = "+GDi(e[r],!1))}),"{ "+t.join(", ")+(t.length>0?" ":"")+"}"}function qgc(e,t,r,n){var a=kV(n);if(a==="array")return $gc(e,t,r,n);if(a==="table")return eAc(e,t,r,n);throw TCe(a)}function $gc(e,t,r,n){n=l1t(n),ZDi(n);var a=kV(n[0]);if(a!=="table")throw TCe(a);var o=e+u1t(r),l="";return n.forEach(A=>{l.length>0&&(l+=` `),l+=t+"[["+o+`]] -`,l+=cxr(o+".",t,A)}),l}function Kgc(e,t,r,n){var a=e+A1t(r),o="";return CDi(n).length>0&&(o+=t+"["+a+`] -`),o+cxr(a+".",t,n)}});var wDi=H(gxr=>{"use strict";gxr.parse=mDi();gxr.stringify=BDi()});var p1t=H(vl=>{"use strict";Object.defineProperty(vl,"__esModule",{value:!0});vl.link=vl.trueColorBg=vl.trueColor=vl.ansi256Bg=vl.ansi256=vl.bgLightGray=vl.bgLightCyan=vl.bgLightMagenta=vl.bgLightBlue=vl.bgLightYellow=vl.bgLightGreen=vl.bgLightRed=vl.bgGray=vl.bgWhite=vl.bgCyan=vl.bgMagenta=vl.bgBlue=vl.bgYellow=vl.bgGreen=vl.bgRed=vl.bgBlack=vl.lightCyan=vl.lightMagenta=vl.lightBlue=vl.lightYellow=vl.lightGreen=vl.lightRed=vl.lightGray=vl.gray=vl.white=vl.cyan=vl.magenta=vl.blue=vl.yellow=vl.green=vl.red=vl.black=vl.strikethrough=vl.hidden=vl.inverse=vl.underline=vl.italic=vl.dim=vl.bold=vl.reset=vl.stripColors=vl.options=void 0;var RCe=!0,hDe=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{},bUe=0;if(hDe.process&&hDe.process.env&&hDe.process.stdout){let{FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:r,TERM:n,COLORTERM:a}=hDe.process.env;t||r||e==="0"?RCe=!1:e==="1"||e==="2"||e==="3"?RCe=!0:n==="dumb"?RCe=!1:"CI"in hDe.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(o=>o in hDe.process.env)?RCe=!0:RCe=process.stdout.isTTY,RCe&&(process.platform==="win32"||a&&(a==="truecolor"||a==="24bit")?bUe=3:n&&(n.endsWith("-256color")||n.endsWith("256"))?bUe=2:bUe=1)}vl.options={enabled:RCe,supportLevel:bUe};function FI(e,t,r=1){let n=`\x1B[${e}m`,a=`\x1B[${t}m`,o=new RegExp(`\\x1b\\[${t}m`,"g");return l=>vl.options.enabled&&vl.options.supportLevel>=r?n+(""+l).replace(o,n)+a:""+l}function PDi(e,t,r){return e>>4===t>>4&&t>>4===r>>4?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(r/255*5)}function rAc(e){return(""+e).replace(/\x1b\[[0-9;]+m/g,"").replace(/\x1b\]8;;.*?\x07(.*?)\x1b\]8;;\x07/g,(t,r)=>r)}vl.stripColors=rAc;vl.reset=FI(0,0);vl.bold=FI(1,22);vl.dim=FI(2,22);vl.italic=FI(3,23);vl.underline=FI(4,24);vl.inverse=FI(7,27);vl.hidden=FI(8,28);vl.strikethrough=FI(9,29);vl.black=FI(30,39);vl.red=FI(31,39);vl.green=FI(32,39);vl.yellow=FI(33,39);vl.blue=FI(34,39);vl.magenta=FI(35,39);vl.cyan=FI(36,39);vl.white=FI(97,39);vl.gray=FI(90,39);vl.lightGray=FI(37,39);vl.lightRed=FI(91,39);vl.lightGreen=FI(92,39);vl.lightYellow=FI(93,39);vl.lightBlue=FI(94,39);vl.lightMagenta=FI(95,39);vl.lightCyan=FI(96,39);vl.bgBlack=FI(40,49);vl.bgRed=FI(41,49);vl.bgGreen=FI(42,49);vl.bgYellow=FI(43,49);vl.bgBlue=FI(44,49);vl.bgMagenta=FI(45,49);vl.bgCyan=FI(46,49);vl.bgWhite=FI(107,49);vl.bgGray=FI(100,49);vl.bgLightRed=FI(101,49);vl.bgLightGreen=FI(102,49);vl.bgLightYellow=FI(103,49);vl.bgLightBlue=FI(104,49);vl.bgLightMagenta=FI(105,49);vl.bgLightCyan=FI(106,49);vl.bgLightGray=FI(47,49);var nAc=e=>FI("38;5;"+e,0,2);vl.ansi256=nAc;var iAc=e=>FI("48;5;"+e,0,2);vl.ansi256Bg=iAc;var sAc=(e,t,r)=>vl.options.supportLevel===2?vl.ansi256(PDi(e,t,r)):FI(`38;2;${e};${t};${r}`,0,3);vl.trueColor=sAc;var oAc=(e,t,r)=>vl.options.supportLevel===2?vl.ansi256Bg(PDi(e,t,r)):FI(`48;2;${e};${t};${r}`,0,3);vl.trueColorBg=oAc;var WDi="\x1B]",ODi="\x07",d1t=";";function aAc(e,t){return vl.options.enabled?WDi+"8"+d1t+d1t+t+ODi+e+WDi+"8"+d1t+d1t+ODi:`${e} (\u200B${t}\u200B)`}vl.link=aAc});var h1t=H(dh=>{"use strict";var cAc=dh&&dh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lAc=dh&&dh.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),MDi=dh&&dh.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&cAc(t,e,r);return lAc(t,e),t};Object.defineProperty(dh,"__esModule",{value:!0});dh.writeTextFile=dh.readTextFile=dh.writeJson=dh.readJson=dh.getNewLineChars=dh.exec=dh.ExecError=dh.timeAgo=dh.prettyTime=dh.findProjectDir=dh.fileExists=dh.JsrPackage=dh.JsrPackageNameError=dh.logDebug=dh.setDebug=dh.DEBUG=void 0;var _4=MDi(Et("node:path")),NCe=MDi(Et("node:fs")),uAc=Et("node:child_process");dh.DEBUG=!1;function gAc(e){dh.DEBUG=e}dh.setDebug=gAc;function Xce(e){dh.DEBUG&&console.log(e)}dh.logDebug=Xce;var AAc=/^@([a-z0-9-]+)\/([a-z0-9-]+)(@(.+))?$/,dAc=/^@jsr\/([a-z0-9-]+)__([a-z0-9-]+)(@(.+))?$/,f1t=class extends Error{};dh.JsrPackageNameError=f1t;var fxr=class e{scope;name;version;static from(t){let r=t.match(AAc);if(r!==null){let a=r[1],o=r[2],l=r[4]??null;return new e(a,o,l)}let n=t.match(dAc);if(n!==null){let a=n[1],o=n[2],l=n[4]??null;return new e(a,o,l)}throw new f1t(`Invalid jsr package name: A jsr package name must have the format @/, but got "${t}"`)}constructor(t,r,n){this.scope=t,this.name=r,this.version=n}toNpmPackage(){let t=this.version!==null?`@${this.version}`:"";return`@jsr/${this.scope}__${this.name}${t}`}toString(){let t=this.version!==null?`@${this.version}`:"";return`@${this.scope}/${this.name}${t}`}};dh.JsrPackage=fxr;async function tte(e){try{return(await NCe.promises.stat(e)).isFile()}catch{return!1}}dh.fileExists=tte;async function HDi(e,t=e,r={projectDir:e,pkgManagerName:null,pkgJsonPath:null,root:null}){if(r.pkgJsonPath===null){let I=_4.join(t,"package.json");await tte(I)&&(Xce(`Found package.json at ${I}`),Xce(`Setting project directory to ${t}`),r.projectDir=t,r.pkgJsonPath=I)}else{let I=_4.join(t,"package.json");if(await tte(I)){let C=await YDi(I);(Array.isArray(C.workspaces)||await tte(_4.join(t,"pnpm-workspace.yaml")))&&(r.root=t)}}let n=_4.join(t,"package-lock.json");if(await tte(n))return Xce(`Detected npm from lockfile ${n}`),r.pkgManagerName="npm",r;let a=_4.join(t,"bun.lockb");if(await tte(a))return Xce(`Detected bun from lockfile ${a}`),r.pkgManagerName="bun",r;let o=_4.join(t,"bun.lock");if(await tte(o))return Xce(`Detected bun from lockfile ${o}`),r.pkgManagerName="bun",r;let l=_4.join(t,"yarn.lock");if(await tte(l))return Xce(`Detected yarn from lockfile ${l}`),r.pkgManagerName="yarn",r;let A=_4.join(t,"pnpm-lock.yaml");if(await tte(A))return Xce(`Detected pnpm from lockfile ${A}`),r.pkgManagerName="pnpm",r;let f=t;return t=_4.dirname(t),t===f?r:HDi(e,t,r)}dh.findProjectDir=HDi;var jv={year:365*24*60*60*1e3,month:30*24*60*60*1e3,week:7*24*60*60*1e3,day:24*60*60*1e3,hour:60*60*1e3,minute:60*1e3,seconds:1e3};function pAc(e){return e>jv.day?Math.floor(e/jv.day)+"d":e>jv.hour?Math.floor(e/jv.hour)+"h":e>jv.minute?Math.floor(e/jv.minute)+"m":e>jv.seconds?Math.floor(e/jv.seconds)+"s":e+"ms"}dh.prettyTime=pAc;function fAc(e){if(e>jv.year){let t=Math.floor(e/jv.year);return`${t} year${t>1?"s":""} ago`}else if(e>jv.month){let t=Math.floor(e/jv.month);return`${t} month${t>1?"s":""} ago`}else if(e>jv.week){let t=Math.floor(e/jv.week);return`${t} week${t>1?"s":""} ago`}else if(e>jv.day){let t=Math.floor(e/jv.day);return`${t} day${t>1?"s":""} ago`}else if(e>jv.hour){let t=Math.floor(e/jv.hour);return`${t} hour${t>1?"s":""} ago`}else if(e>jv.minute){let t=Math.floor(e/jv.minute);return`${t} minute${t>1?"s":""} ago`}else if(e>jv.seconds){let t=Math.floor(e/jv.seconds);return`${t} second${t>1?"s":""} ago`}return"just now"}dh.timeAgo=fAc;var I1t=class extends Error{code;constructor(t){super(`Child process exited with: ${t}`),this.code=t}};dh.ExecError=I1t;async function IAc(e,t,r,n,a){let o=(0,uAc.spawn)(e,t.map(I=>process.platform==="win32"?`"${I}"`:`'${I}'`),{stdio:a?"pipe":"inherit",cwd:r,shell:!0,env:n}),l="",A="",f="";return a&&(o.stdout?.on("data",I=>{l+=I,A+=I}),o.stderr?.on("data",I=>{l+=I,f+=I})),new Promise((I,C)=>{o.on("exit",b=>{b===0?I({combined:l,stdout:A,stderr:f}):C(new I1t(b??1))})})}dh.exec=IAc;function hAc(e){var t=e.indexOf(` +`,l+=uxr(o+".",t,A)}),l}function eAc(e,t,r,n){var a=e+u1t(r),o="";return NDi(n).length>0&&(o+=t+"["+a+`] +`),o+uxr(a+".",t,n)}});var VDi=H(dxr=>{"use strict";dxr.parse=RDi();dxr.stringify=LDi()});var A1t=H(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});Bl.link=Bl.trueColorBg=Bl.trueColor=Bl.ansi256Bg=Bl.ansi256=Bl.bgLightGray=Bl.bgLightCyan=Bl.bgLightMagenta=Bl.bgLightBlue=Bl.bgLightYellow=Bl.bgLightGreen=Bl.bgLightRed=Bl.bgGray=Bl.bgWhite=Bl.bgCyan=Bl.bgMagenta=Bl.bgBlue=Bl.bgYellow=Bl.bgGreen=Bl.bgRed=Bl.bgBlack=Bl.lightCyan=Bl.lightMagenta=Bl.lightBlue=Bl.lightYellow=Bl.lightGreen=Bl.lightRed=Bl.lightGray=Bl.gray=Bl.white=Bl.cyan=Bl.magenta=Bl.blue=Bl.yellow=Bl.green=Bl.red=Bl.black=Bl.strikethrough=Bl.hidden=Bl.inverse=Bl.underline=Bl.italic=Bl.dim=Bl.bold=Bl.reset=Bl.stripColors=Bl.options=void 0;var RCe=!0,IDe=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{},EUe=0;if(IDe.process&&IDe.process.env&&IDe.process.stdout){let{FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:r,TERM:n,COLORTERM:a}=IDe.process.env;t||r||e==="0"?RCe=!1:e==="1"||e==="2"||e==="3"?RCe=!0:n==="dumb"?RCe=!1:"CI"in IDe.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(o=>o in IDe.process.env)?RCe=!0:RCe=process.stdout.isTTY,RCe&&(process.platform==="win32"||a&&(a==="truecolor"||a==="24bit")?EUe=3:n&&(n.endsWith("-256color")||n.endsWith("256"))?EUe=2:EUe=1)}Bl.options={enabled:RCe,supportLevel:EUe};function FI(e,t,r=1){let n=`\x1B[${e}m`,a=`\x1B[${t}m`,o=new RegExp(`\\x1b\\[${t}m`,"g");return l=>Bl.options.enabled&&Bl.options.supportLevel>=r?n+(""+l).replace(o,n)+a:""+l}function qDi(e,t,r){return e>>4===t>>4&&t>>4===r>>4?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(r/255*5)}function aAc(e){return(""+e).replace(/\x1b\[[0-9;]+m/g,"").replace(/\x1b\]8;;.*?\x07(.*?)\x1b\]8;;\x07/g,(t,r)=>r)}Bl.stripColors=aAc;Bl.reset=FI(0,0);Bl.bold=FI(1,22);Bl.dim=FI(2,22);Bl.italic=FI(3,23);Bl.underline=FI(4,24);Bl.inverse=FI(7,27);Bl.hidden=FI(8,28);Bl.strikethrough=FI(9,29);Bl.black=FI(30,39);Bl.red=FI(31,39);Bl.green=FI(32,39);Bl.yellow=FI(33,39);Bl.blue=FI(34,39);Bl.magenta=FI(35,39);Bl.cyan=FI(36,39);Bl.white=FI(97,39);Bl.gray=FI(90,39);Bl.lightGray=FI(37,39);Bl.lightRed=FI(91,39);Bl.lightGreen=FI(92,39);Bl.lightYellow=FI(93,39);Bl.lightBlue=FI(94,39);Bl.lightMagenta=FI(95,39);Bl.lightCyan=FI(96,39);Bl.bgBlack=FI(40,49);Bl.bgRed=FI(41,49);Bl.bgGreen=FI(42,49);Bl.bgYellow=FI(43,49);Bl.bgBlue=FI(44,49);Bl.bgMagenta=FI(45,49);Bl.bgCyan=FI(46,49);Bl.bgWhite=FI(107,49);Bl.bgGray=FI(100,49);Bl.bgLightRed=FI(101,49);Bl.bgLightGreen=FI(102,49);Bl.bgLightYellow=FI(103,49);Bl.bgLightBlue=FI(104,49);Bl.bgLightMagenta=FI(105,49);Bl.bgLightCyan=FI(106,49);Bl.bgLightGray=FI(47,49);var cAc=e=>FI("38;5;"+e,0,2);Bl.ansi256=cAc;var lAc=e=>FI("48;5;"+e,0,2);Bl.ansi256Bg=lAc;var uAc=(e,t,r)=>Bl.options.supportLevel===2?Bl.ansi256(qDi(e,t,r)):FI(`38;2;${e};${t};${r}`,0,3);Bl.trueColor=uAc;var gAc=(e,t,r)=>Bl.options.supportLevel===2?Bl.ansi256Bg(qDi(e,t,r)):FI(`48;2;${e};${t};${r}`,0,3);Bl.trueColorBg=gAc;var jDi="\x1B]",zDi="\x07",g1t=";";function AAc(e,t){return Bl.options.enabled?jDi+"8"+g1t+g1t+t+zDi+e+jDi+"8"+g1t+g1t+zDi:`${e} (\u200B${t}\u200B)`}Bl.link=AAc});var f1t=H(dh=>{"use strict";var dAc=dh&&dh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),pAc=dh&&dh.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),$Di=dh&&dh.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&dAc(t,e,r);return pAc(t,e),t};Object.defineProperty(dh,"__esModule",{value:!0});dh.writeTextFile=dh.readTextFile=dh.writeJson=dh.readJson=dh.getNewLineChars=dh.exec=dh.ExecError=dh.timeAgo=dh.prettyTime=dh.findProjectDir=dh.fileExists=dh.JsrPackage=dh.JsrPackageNameError=dh.logDebug=dh.setDebug=dh.DEBUG=void 0;var y4=$Di(Et("node:path")),NCe=$Di(Et("node:fs")),fAc=Et("node:child_process");dh.DEBUG=!1;function IAc(e){dh.DEBUG=e}dh.setDebug=IAc;function Jce(e){dh.DEBUG&&console.log(e)}dh.logDebug=Jce;var hAc=/^@([a-z0-9-]+)\/([a-z0-9-]+)(@(.+))?$/,mAc=/^@jsr\/([a-z0-9-]+)__([a-z0-9-]+)(@(.+))?$/,d1t=class extends Error{};dh.JsrPackageNameError=d1t;var mxr=class e{scope;name;version;static from(t){let r=t.match(hAc);if(r!==null){let a=r[1],o=r[2],l=r[4]??null;return new e(a,o,l)}let n=t.match(mAc);if(n!==null){let a=n[1],o=n[2],l=n[4]??null;return new e(a,o,l)}throw new d1t(`Invalid jsr package name: A jsr package name must have the format @/, but got "${t}"`)}constructor(t,r,n){this.scope=t,this.name=r,this.version=n}toNpmPackage(){let t=this.version!==null?`@${this.version}`:"";return`@jsr/${this.scope}__${this.name}${t}`}toString(){let t=this.version!==null?`@${this.version}`:"";return`@${this.scope}/${this.name}${t}`}};dh.JsrPackage=mxr;async function rte(e){try{return(await NCe.promises.stat(e)).isFile()}catch{return!1}}dh.fileExists=rte;async function eki(e,t=e,r={projectDir:e,pkgManagerName:null,pkgJsonPath:null,root:null}){if(r.pkgJsonPath===null){let I=y4.join(t,"package.json");await rte(I)&&(Jce(`Found package.json at ${I}`),Jce(`Setting project directory to ${t}`),r.projectDir=t,r.pkgJsonPath=I)}else{let I=y4.join(t,"package.json");if(await rte(I)){let C=await tki(I);(Array.isArray(C.workspaces)||await rte(y4.join(t,"pnpm-workspace.yaml")))&&(r.root=t)}}let n=y4.join(t,"package-lock.json");if(await rte(n))return Jce(`Detected npm from lockfile ${n}`),r.pkgManagerName="npm",r;let a=y4.join(t,"bun.lockb");if(await rte(a))return Jce(`Detected bun from lockfile ${a}`),r.pkgManagerName="bun",r;let o=y4.join(t,"bun.lock");if(await rte(o))return Jce(`Detected bun from lockfile ${o}`),r.pkgManagerName="bun",r;let l=y4.join(t,"yarn.lock");if(await rte(l))return Jce(`Detected yarn from lockfile ${l}`),r.pkgManagerName="yarn",r;let A=y4.join(t,"pnpm-lock.yaml");if(await rte(A))return Jce(`Detected pnpm from lockfile ${A}`),r.pkgManagerName="pnpm",r;let f=t;return t=y4.dirname(t),t===f?r:eki(e,t,r)}dh.findProjectDir=eki;var zv={year:365*24*60*60*1e3,month:30*24*60*60*1e3,week:7*24*60*60*1e3,day:24*60*60*1e3,hour:60*60*1e3,minute:60*1e3,seconds:1e3};function CAc(e){return e>zv.day?Math.floor(e/zv.day)+"d":e>zv.hour?Math.floor(e/zv.hour)+"h":e>zv.minute?Math.floor(e/zv.minute)+"m":e>zv.seconds?Math.floor(e/zv.seconds)+"s":e+"ms"}dh.prettyTime=CAc;function _Ac(e){if(e>zv.year){let t=Math.floor(e/zv.year);return`${t} year${t>1?"s":""} ago`}else if(e>zv.month){let t=Math.floor(e/zv.month);return`${t} month${t>1?"s":""} ago`}else if(e>zv.week){let t=Math.floor(e/zv.week);return`${t} week${t>1?"s":""} ago`}else if(e>zv.day){let t=Math.floor(e/zv.day);return`${t} day${t>1?"s":""} ago`}else if(e>zv.hour){let t=Math.floor(e/zv.hour);return`${t} hour${t>1?"s":""} ago`}else if(e>zv.minute){let t=Math.floor(e/zv.minute);return`${t} minute${t>1?"s":""} ago`}else if(e>zv.seconds){let t=Math.floor(e/zv.seconds);return`${t} second${t>1?"s":""} ago`}return"just now"}dh.timeAgo=_Ac;var p1t=class extends Error{code;constructor(t){super(`Child process exited with: ${t}`),this.code=t}};dh.ExecError=p1t;async function yAc(e,t,r,n,a){let o=(0,fAc.spawn)(e,t.map(I=>process.platform==="win32"?`"${I}"`:`'${I}'`),{stdio:a?"pipe":"inherit",cwd:r,shell:!0,env:n}),l="",A="",f="";return a&&(o.stdout?.on("data",I=>{l+=I,A+=I}),o.stderr?.on("data",I=>{l+=I,f+=I})),new Promise((I,C)=>{o.on("exit",b=>{b===0?I({combined:l,stdout:A,stderr:f}):C(new p1t(b??1))})})}dh.exec=yAc;function bAc(e){var t=e.indexOf(` `);return e[t-1]==="\r"?`\r `:` -`}dh.getNewLineChars=hAc;async function YDi(e){let t=await NCe.promises.readFile(e,"utf-8");return JSON.parse(t)}dh.readJson=YDi;async function mAc(e,t){try{await NCe.promises.mkdir(_4.dirname(e),{recursive:!0})}catch{}await NCe.promises.writeFile(e,JSON.stringify(t,null,2),"utf-8")}dh.writeJson=mAc;async function CAc(e){return NCe.promises.readFile(e,"utf-8")}dh.readTextFile=CAc;async function _Ac(e,t){try{await NCe.promises.mkdir(_4.dirname(e),{recursive:!0})}catch{}await NCe.promises.writeFile(e,t,"utf-8")}dh.writeTextFile=_Ac});var Ixr=H(fH=>{"use strict";Object.defineProperty(fH,"__esModule",{value:!0});fH.getNpmPackageInfo=fH.getLatestPackageVersion=fH.getPackageMeta=fH.JSR_URL=void 0;fH.JSR_URL=process.env.JSR_URL??"https://jsr.io";async function QDi(e){let t=`${fH.JSR_URL}/@${e.scope}/${e.name}/meta.json`,r=await fetch(t);if(!r.ok)throw await r.body?.cancel(),new Error(`Received ${r.status} from ${t}`);return await r.json()}fH.getPackageMeta=QDi;async function yAc(e){let t=await QDi(e),{latest:r}=t;if(r===void 0)throw new Error(`Unable to find latest version of ${e}`);return r}fH.getLatestPackageVersion=yAc;async function bAc(e){let t=new URL(`${fH.JSR_URL}/@jsr/${e.scope}__${e.name}`),r=`${t.protocol}//npm.${t.host}${t.pathname}`,n=await fetch(r);if(!n.ok)throw await n.body?.cancel(),new Error(`Received ${n.status} from ${t}`);return await n.json()}fH.getNpmPackageInfo=bAc});var mxr=H((LNu,XDi)=>{var hxr=new Intl.Collator(0,{numeric:1}).compare;XDi.exports=function(e,t,r){return e=e.split("."),t=t.split("."),hxr(e[0],t[0])||hxr(e[1],t[1])||(t[2]=t.slice(2).join("."),r=/[.-]/.test(e[2]=e.slice(2).join(".")),r==/[.-]/.test(t[2])?hxr(e[2],t[2]):r?-1:1)}});var UDi=H(WG=>{"use strict";var EAc=WG&&WG.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),SAc=WG&&WG.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),vAc=WG&&WG.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&EAc(t,e,r);return SAc(t,e),t},BAc=WG&&WG.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WG,"__esModule",{value:!0});WG.getPkgManager=WG.Bun=WG.YarnBerry=void 0;var wAc=Ixr(),DCe=h1t(),TAc=vAc(p1t()),RAc=BAc(mxr());async function kV(e,t,r){return console.log(TAc.dim(`$ ${e} ${t.join(" ")}`)),(0,DCe.exec)(e,t,r)}function JDi(e){return e==="dev"?"--save-dev":e==="optional"?"--save-optional":""}function yxr(e){return e==="dev"?"--dev":e==="optional"?"--optional":""}function EUe(e){return e.map(t=>`@${t.scope}/${t.name}@npm:${t.toNpmPackage()}`)}async function NAc(e){let r=(await(0,DCe.exec)("yarn",["--version"],e,void 0,!0)).stdout;return r?r.startsWith("1.")?((0,DCe.logDebug)("Detected yarn classic from version"),!1):((0,DCe.logDebug)("Detected yarn berry from version"),!0):((0,DCe.logDebug)("Unable to detect yarn version, assuming classic"),!1)}var Cxr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["install"],a=JDi(r.mode);a!==""&&n.push(a),n.push(...EUe(t)),await kV("npm",n,this.cwd)}async remove(t){await kV("npm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await kV("npm",["run",t],this.cwd)}},m1t=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["add"],a=yxr(r.mode);a!==""&&n.push(a),n.push(...EUe(t)),await kV("yarn",n,this.cwd)}async remove(t){await kV("yarn",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await kV("yarn",[t],this.cwd)}},C1t=class extends m1t{async install(t,r){let n=["add"],a=yxr(r.mode);a!==""&&n.push(a),n.push(...await this.toPackageArgs(t)),await kV("yarn",n,this.cwd)}async setConfigValue(t,r){await kV("yarn",["config","set",t,r],this.cwd)}async toPackageArgs(t){return await Promise.all(t.map(async r=>{r.version??=`^${await(0,wAc.getLatestPackageVersion)(r)}`})),EUe(t)}};WG.YarnBerry=C1t;var _xr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["add"],a=JDi(r.mode);a!==""&&n.push(a),n.push(...EUe(t)),await kV("pnpm",n,this.cwd)}async remove(t){await kV("pnpm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await kV("pnpm",[t],this.cwd)}},_1t=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["add"],a=yxr(r.mode);a!==""&&n.push(a),n.push(...EUe(t)),await kV("bun",n,this.cwd)}async remove(t){await kV("bun",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await kV("bun",["run",t],this.cwd)}async isNpmrcSupported(){let r=(await(0,DCe.exec)("bun",["--version"],this.cwd,void 0,!0)).stdout;return r!=null&&(0,RAc.default)(r,"1.1.18")>=0}};WG.Bun=_1t;function DAc(e){return e.startsWith("pnpm/")?"pnpm":e.startsWith("yarn/")?"yarn":e.startsWith("npm/")?"npm":e.startsWith("bun/")?"bun":null}async function kAc(e,t){let r=process.env.npm_config_user_agent,n=r!==void 0?DAc(r):null,{projectDir:a,pkgManagerName:o,root:l}=await(0,DCe.findProjectDir)(e),A=l||a,f=t||o||n||"npm",I;return f==="yarn"?I=await NAc(a)?new C1t(a):new m1t(a):f==="pnpm"?I=new _xr(a):f==="bun"?I=new _1t(a):I=new Cxr(a),{root:A,pkgManager:I}}WG.getPkgManager=kAc});var eki=H((ONu,$Di)=>{var IH=Et("fs"),xAc=Et("util"),mDe=Et("path"),Txr=Et("events"),KDi=Et("zlib"),qDi=Et("stream"),Xu={LOCHDR:30,LOCSIG:67324752,LOCVER:4,LOCFLG:6,LOCHOW:8,LOCTIM:10,LOCCRC:14,LOCSIZ:18,LOCLEN:22,LOCNAM:26,LOCEXT:28,EXTSIG:134695760,EXTHDR:16,EXTCRC:4,EXTSIZ:8,EXTLEN:12,CENHDR:46,CENSIG:33639248,CENVEM:4,CENVER:6,CENFLG:8,CENHOW:10,CENTIM:12,CENCRC:16,CENSIZ:20,CENLEN:24,CENNAM:28,CENEXT:30,CENCOM:32,CENDSK:34,CENATT:36,CENATX:38,CENOFF:42,ENDHDR:22,ENDSIG:101010256,ENDSIGFIRST:80,ENDSUB:8,ENDTOT:10,ENDSIZ:12,ENDOFF:16,ENDCOM:20,MAXFILECOMMENT:65535,ENDL64HDR:20,ENDL64SIG:117853008,ENDL64SIGFIRST:80,ENDL64OFS:8,END64HDR:56,END64SIG:101075792,END64SIGFIRST:80,END64SUB:24,END64TOT:32,END64SIZ:40,END64OFF:48,STORED:0,SHRUNK:1,REDUCED1:2,REDUCED2:3,REDUCED3:4,REDUCED4:5,IMPLODED:6,DEFLATED:8,ENHANCED_DEFLATED:9,PKWARE:10,BZIP2:12,LZMA:14,IBM_TERSE:18,IBM_LZ77:19,FLG_ENC:0,FLG_COMP1:1,FLG_COMP2:2,FLG_DESC:4,FLG_ENH:8,FLG_STR:16,FLG_LNG:1024,FLG_MSK:4096,FLG_ENTRY_ENC:1,EF_ID:0,EF_SIZE:2,ID_ZIP64:1,ID_AVINFO:7,ID_PFS:8,ID_OS2:9,ID_NTFS:10,ID_OPENVMS:12,ID_UNIX:13,ID_FORK:14,ID_PATCH:15,ID_X509_PKCS7:20,ID_X509_CERTID_F:21,ID_X509_CERTID_C:22,ID_STRONGENC:23,ID_RECORD_MGT:24,ID_X509_PKCS7_RL:25,ID_IBM1:101,ID_IBM2:102,ID_POSZIP:18064,EF_ZIP64_OR_32:4294967295,EF_ZIP64_OR_16:65535},jce=function(e){let t,r,n,a,o,l,f=this,I=e.storeEntries!==!1?{}:null,C=e.file,b=e.nameEncoding?new TextDecoder(e.nameEncoding):null;E();function E(){e.fd?(t=e.fd,N()):IH.open(C,"r",(ze,Le)=>{if(ze)return f.emit("error",ze);t=Le,N()})}function N(){IH.fstat(t,(ze,Le)=>{if(ze)return f.emit("error",ze);r=Le.size,n=e.chunkSize||Math.round(r/1e3),n=Math.max(Math.min(n,Math.min(128*1024,r)),Math.min(1024,r)),F()})}function B(ze,Le){if(ze||!Le)return f.emit("error",ze||new Error("Archive read error"));let Je=a.lastPos,ft=Je-a.win.position,lt=a.win.buffer,Ot=a.minPos;for(;--Je>=Ot&&--ft>=0;)if(lt.length-ft>=4&<[ft]===a.firstByte&<.readUInt32LE(ft)===a.sig){a.lastBufferPosition=ft,a.lastBytesRead=Le,a.complete();return}if(Je===Ot)return f.emit("error",new Error("Bad archive"));if(a.lastPos=Je+1,a.chunkSize*=2,Je<=Ot)return f.emit("error",new Error("Bad archive"));let Er=Math.min(a.chunkSize,Je-Ot);a.win.expandLeft(Er,B)}function F(){let ze=Math.min(Xu.ENDHDR+Xu.MAXFILECOMMENT,r);a={win:new y1t(t),totalReadLength:ze,minPos:r-ze,lastPos:r,chunkSize:Math.min(1024,n),firstByte:Xu.ENDSIGFIRST,sig:Xu.ENDSIG,complete:Q},a.win.read(r-a.chunkSize,a.chunkSize,B)}function Q(){let ze=a.win.buffer,Le=a.lastBufferPosition;try{o=new bxr,o.read(ze.slice(Le,Le+Xu.ENDHDR)),o.headerOffset=a.win.position+Le,o.commentLength?f.comment=ze.slice(Le+Xu.ENDHDR,Le+Xu.ENDHDR+o.commentLength).toString():f.comment=null,f.entriesCount=o.volumeEntries,f.centralDirectory=o,o.volumeEntries===Xu.EF_ZIP64_OR_16&&o.totalEntries===Xu.EF_ZIP64_OR_16||o.size===Xu.EF_ZIP64_OR_32||o.offset===Xu.EF_ZIP64_OR_32?J():(a={},ce())}catch(Je){f.emit("error",Je)}}function J(){let ze=Xu.ENDL64HDR;a.lastBufferPosition>ze?(a.lastBufferPosition-=ze,ae()):(a={win:a.win,totalReadLength:ze,minPos:a.win.position-ze,lastPos:a.win.position,chunkSize:a.chunkSize,firstByte:Xu.ENDL64SIGFIRST,sig:Xu.ENDL64SIG,complete:ae},a.win.read(a.lastPos-a.chunkSize,a.chunkSize,B))}function ae(){let ze=a.win.buffer,Le=new Exr;Le.read(ze.slice(a.lastBufferPosition,a.lastBufferPosition+Xu.ENDL64HDR));let Je=r-Le.headerOffset;a={win:a.win,totalReadLength:Je,minPos:Le.headerOffset,lastPos:a.lastPos,chunkSize:a.chunkSize,firstByte:Xu.END64SIGFIRST,sig:Xu.END64SIG,complete:ne},a.win.read(r-a.chunkSize,a.chunkSize,B)}function ne(){let ze=a.win.buffer,Le=new Sxr;Le.read(ze.slice(a.lastBufferPosition,a.lastBufferPosition+Xu.END64HDR)),f.centralDirectory.volumeEntries=Le.volumeEntries,f.centralDirectory.totalEntries=Le.totalEntries,f.centralDirectory.size=Le.size,f.centralDirectory.offset=Le.offset,f.entriesCount=Le.volumeEntries,a={},ce()}function ce(){a={win:new y1t(t),pos:o.offset,chunkSize:n,entriesLeft:o.volumeEntries},a.win.read(a.pos,Math.min(n,r-a.pos),fe)}function fe(ze,Le){if(ze||!Le)return f.emit("error",ze||new Error("Entries read error"));let Je=a.pos-a.win.position,ft=a.entry,lt=a.win.buffer,Ot=lt.length;try{for(;a.entriesLeft>0;){ft||(ft=new vxr,ft.readHeader(lt,Je),ft.headerOffset=a.win.position+Je,a.entry=ft,a.pos+=Xu.CENHDR,Je+=Xu.CENHDR);let Er=ft.fnameLen+ft.extraLen+ft.comLen,Sr=Er+(a.entriesLeft>1?Xu.CENHDR:0);if(Ot-Je{if(Je)return Le(Je);let lt=de(ft),Ot=new Bxr(t,lt,ft.compressedSize);if(ft.method!==Xu.STORED)if(ft.method===Xu.DEFLATED)Ot=Ot.pipe(KDi.createInflateRaw());else return Le(new Error("Unknown compression method: "+ft.method));be(ft)&&(Ot=Ot.pipe(new wxr(Ot,ft.crc,ft.size))),Le(null,Ot)},!1)},this.entryDataSync=function(ze){let Le=null;if(this.openEntry(ze,(ft,lt)=>{Le=ft,ze=lt},!0),Le)throw Le;let Je=Buffer.alloc(ze.compressedSize);if(new Uce(t,Je,0,ze.compressedSize,de(ze),ft=>{Le=ft}).read(!0),Le)throw Le;if(ze.method!==Xu.STORED)if(ze.method===Xu.DEFLATED||ze.method===Xu.ENHANCED_DEFLATED)Je=KDi.inflateRawSync(Je);else throw new Error("Unknown compression method: "+ze.method);if(Je.length!==ze.size)throw new Error("Invalid size");return be(ze)&&new b1t(ze.crc,ze.size).data(Je),Je},this.openEntry=function(ze,Le,Je){if(typeof ze=="string"&&(ue(),ze=I[ze],!ze))return Le(new Error("Entry not found"));if(!ze.isFile)return Le(new Error("Entry is not file"));if(!t)return Le(new Error("Archive closed"));let ft=Buffer.alloc(Xu.LOCHDR);new Uce(t,ft,0,ft.length,ze.offset,lt=>{if(lt)return Le(lt);let Ot;try{ze.readDataHeader(ft),ze.encrypted&&(Ot=new Error("Entry encrypted"))}catch(Er){Ot=Er}Le(Ot,ze)}).read(Je)};function de(ze){return ze.offset+Xu.LOCHDR+ze.fnameLen+ze.extraLen}function be(ze){return(ze.flags&8)!==8}function Se(ze,Le,Je){f.stream(ze,(ft,lt)=>{if(ft)Je(ft);else{let Ot,Er;lt.on("error",Sr=>{Er=Sr,Ot&&(lt.unpipe(Ot),Ot.close(()=>{Je(Sr)}))}),IH.open(Le,"w",(Sr,jt)=>{if(Sr)return Je(Sr);if(Er){IH.close(t,()=>{Je(Er)});return}Ot=IH.createWriteStream(Le,{fd:jt}),Ot.on("finish",()=>{f.emit("extract",ze,Le),Er||Je()}),lt.pipe(Ot)})}})}function De(ze,Le,Je){if(!Le.length)return Je();let ft=Le.shift();ft=mDe.join(ze,mDe.join(...ft)),IH.mkdir(ft,{recursive:!0},lt=>{if(lt&<.code!=="EEXIST")return Je(lt);De(ze,Le,Je)})}function k(ze,Le,Je,ft,lt){if(!Je.length)return ft(null,lt);let Ot=Je.shift(),Er=mDe.join(ze,Ot.name.replace(Le,""));Se(Ot,Er,Sr=>{if(Sr)return ft(Sr,lt);k(ze,Le,Je,ft,lt+1)})}this.extract=function(ze,Le,Je){let ft=ze||"";if(typeof ze=="string"&&(ze=this.entry(ze),ze?ft=ze.name:ft.length&&ft[ft.length-1]!=="/"&&(ft+="/")),!ze||ze.isDirectory){let lt=[],Ot=[],Er={};for(let Sr in I)if(Object.prototype.hasOwnProperty.call(I,Sr)&&Sr.lastIndexOf(ft,0)===0){let jt=Sr.replace(ft,""),Bt=I[Sr];if(Bt.isFile&&(lt.push(Bt),jt=mDe.dirname(jt)),jt&&!Er[jt]&&jt!=="."){Er[jt]=!0;let Dt=jt.split("/").filter(Fr=>Fr);for(Dt.length&&Ot.push(Dt);Dt.length>1;){Dt=Dt.slice(0,Dt.length-1);let Fr=Dt.join("/");if(Er[Fr]||Fr===".")break;Er[Fr]=!0,Ot.push(Dt)}}}Ot.sort((Sr,jt)=>Sr.length-jt.length),Ot.length?De(Le,Ot,Sr=>{Sr?Je(Sr):k(Le,ft,lt,Je,0)}):k(Le,ft,lt,Je,0)}else IH.stat(Le,(lt,Ot)=>{Ot&&Ot.isDirectory()?Se(ze,mDe.join(Le,mDe.basename(ze.name)),Je):Se(ze,Le,Je)})},this.close=function(ze){l||!t?(l=!0,ze&&ze()):(l=!0,IH.close(t,Le=>{t=null,ze&&ze(Le)}))};let tt=Txr.EventEmitter.prototype.emit;this.emit=function(...ze){if(!l)return tt.call(this,...ze)}};jce.setFs=function(e){IH=e};jce.debugLog=(...e)=>{jce.debug&&console.log(...e)};xAc.inherits(jce,Txr.EventEmitter);var Jce=Symbol("zip");jce.async=class extends Txr.EventEmitter{constructor(t){super();let r=new jce(t);r.on("entry",n=>this.emit("entry",n)),r.on("extract",(n,a)=>this.emit("extract",n,a)),this[Jce]=new Promise((n,a)=>{r.on("ready",()=>{r.removeListener("error",a),n(r)}),r.on("error",a)})}get entriesCount(){return this[Jce].then(t=>t.entriesCount)}get comment(){return this[Jce].then(t=>t.comment)}async entry(t){return(await this[Jce]).entry(t)}async entries(){return(await this[Jce]).entries()}async stream(t){let r=await this[Jce];return new Promise((n,a)=>{r.stream(t,(o,l)=>{o?a(o):n(l)})})}async entryData(t){let r=await this.stream(t);return new Promise((n,a)=>{let o=[];r.on("data",l=>o.push(l)),r.on("end",()=>{n(Buffer.concat(o))}),r.on("error",l=>{r.removeAllListeners("end"),a(l)})})}async extract(t,r){let n=await this[Jce];return new Promise((a,o)=>{n.extract(t,r,(l,A)=>{l?o(l):a(A)})})}async close(){let t=await this[Jce];return new Promise((r,n)=>{t.close(a=>{a?n(a):r()})})}};var bxr=class{read(t){if(t.length!==Xu.ENDHDR||t.readUInt32LE(0)!==Xu.ENDSIG)throw new Error("Invalid central directory");this.volumeEntries=t.readUInt16LE(Xu.ENDSUB),this.totalEntries=t.readUInt16LE(Xu.ENDTOT),this.size=t.readUInt32LE(Xu.ENDSIZ),this.offset=t.readUInt32LE(Xu.ENDOFF),this.commentLength=t.readUInt16LE(Xu.ENDCOM)}},Exr=class{read(t){if(t.length!==Xu.ENDL64HDR||t.readUInt32LE(0)!==Xu.ENDL64SIG)throw new Error("Invalid zip64 central directory locator");this.headerOffset=Kce(t,Xu.ENDSUB)}},Sxr=class{read(t){if(t.length!==Xu.END64HDR||t.readUInt32LE(0)!==Xu.END64SIG)throw new Error("Invalid central directory");this.volumeEntries=Kce(t,Xu.END64SUB),this.totalEntries=Kce(t,Xu.END64TOT),this.size=Kce(t,Xu.END64SIZ),this.offset=Kce(t,Xu.END64OFF)}},vxr=class{readHeader(t,r){if(t.length=8&&this.size===Xu.EF_ZIP64_OR_32&&(this.size=Kce(t,r),r+=8,n-=8),n>=8&&this.compressedSize===Xu.EF_ZIP64_OR_32&&(this.compressedSize=Kce(t,r),r+=8,n-=8),n>=8&&this.offset===Xu.EF_ZIP64_OR_32&&(this.offset=Kce(t,r),r+=8,n-=8),n>=4&&this.diskStart===Xu.EF_ZIP64_OR_16&&(this.diskStart=t.readUInt32LE(r))}get encrypted(){return(this.flags&Xu.FLG_ENTRY_ENC)===Xu.FLG_ENTRY_ENC}get isFile(){return!this.isDirectory}},Uce=class{constructor(t,r,n,a,o,l){this.fd=t,this.buffer=r,this.offset=n,this.length=a,this.position=o,this.callback=l,this.bytesRead=0,this.waiting=!1}read(t){jce.debugLog("read",this.position,this.bytesRead,this.length,this.offset),this.waiting=!0;let r;if(t){let n=0;try{n=IH.readSync(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead)}catch(a){r=a}this.readCallback(t,r,r?n:null)}else IH.read(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead,this.readCallback.bind(this,t))}readCallback(t,r,n){if(typeof n=="number"&&(this.bytesRead+=n),r||!n||this.bytesRead===this.length)return this.waiting=!1,this.callback(r,this.bytesRead);this.read(t)}},y1t=class{constructor(t){this.position=0,this.buffer=Buffer.alloc(0),this.fd=t,this.fsOp=null}checkOp(){if(this.fsOp&&this.fsOp.waiting)throw new Error("Operation in progress")}read(t,r,n){this.checkOp(),this.buffer.length{this.emit("error",a)})}_transform(t,r,n){let a;try{this.verify.data(t)}catch(o){a=o}n(a,t)}},b1t=class e{constructor(t,r){this.crc=t,this.size=r,this.state={crc:-1,size:0}}data(t){let r=e.getCrcTable(),n=this.state.crc,a=0,o=t.length;for(;--o>=0;)n=r[(n^t[a++])&255]^n>>>8;if(this.state.crc=n,this.state.size+=t.length,this.state.size>=this.size){let l=Buffer.alloc(4);if(l.writeInt32LE(~this.state.crc&4294967295,0),n=l.readUInt32LE(0),n!==this.crc)throw new Error("Invalid CRC");if(this.state.size!==this.size)throw new Error("Invalid size")}}static getCrcTable(){let t=e.crcTable;if(!t){e.crcTable=t=[];let r=Buffer.alloc(4);for(let n=0;n<256;n++){let a=n;for(let o=8;--o>=0;)a&1?a=3988292384^a>>>1:a=a>>>1;a<0&&(r.writeInt32LE(a,0),a=r.readUInt32LE(0)),t[n]=a}}return t}};function jDi(e,t){let r=zDi(e,16),n=zDi(t,16),a={h:parseInt(r.slice(0,5).join(""),2),m:parseInt(r.slice(5,11).join(""),2),s:parseInt(r.slice(11,16).join(""),2)*2,Y:parseInt(n.slice(0,7).join(""),2)+1980,M:parseInt(n.slice(7,11).join(""),2),D:parseInt(n.slice(11,16).join(""),2)},o=[a.Y,a.M,a.D].join("-")+" "+[a.h,a.m,a.s].join(":")+" GMT+0";return new Date(o).getTime()}function zDi(e,t){let r=(e>>>0).toString(2);for(;r.length{"use strict";var GAc=hH&&hH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),FAc=hH&&hH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),kCe=hH&&hH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&GAc(t,e,r);return FAc(t,e),t};Object.defineProperty(hH,"__esModule",{value:!0});hH.downloadDeno=hH.getDenoDownloadUrl=void 0;var ZAc=kCe(Et("node:os")),SUe=kCe(Et("node:fs")),Rxr=kCe(Et("node:path")),LAc=kCe(Et("node:util")),VAc=kCe(Et("node:stream")),Nxr=kCe(p1t()),WAc=kCe(eki()),OAc=LAc.promisify(VAc.finished),PAc="https://dl.deno.land/canary-latest.txt",MAc="https://dl.deno.land/release-latest.txt",tki={"darwin arm64":"deno-aarch64-apple-darwin","darwin x64":"deno-x86_64-apple-darwin","linux arm64":"deno-aarch64-unknown-linux-gnu","linux x64":"deno-x86_64-unknown-linux-gnu","win32 x64":"deno-x86_64-pc-windows-msvc"};async function HAc(e){let t=`${process.platform} ${ZAc.arch()}`;if(!(t in tki))throw new Error(`Unsupported platform: ${t}`);let n=tki[t]+".zip",a=e?PAc:MAc,o=await fetch(a);if(!o.ok)throw await o.body?.cancel(),new Error(`${o.status}: Unable to retrieve ${e?"canary":"release"} version information from ${a}.`);let l=(await o.text()).trim();return{canary:e,url:e?`https://dl.deno.land/canary/${decodeURI(l)}/${n}`:`https://dl.deno.land/release/${decodeURI(l)}/${n}`,filename:n,version:l}}hH.getDenoDownloadUrl=HAc;async function YAc(e,t){let r=Rxr.dirname(e);await SUe.promises.mkdir(r,{recursive:!0});let n=await fetch(t.url),a=Number(n.headers.get("content-length")??1/0);if(n.body==null)throw new Error("Unexpected empty body");console.log(`Downloading JSR ${t.canary?"canary":"release"} binary...`),await QAc(async o=>{let l=Rxr.join(r,t.filename+".part"),A=SUe.createWriteStream(l,"utf-8");for await(let C of XAc(n.body))o(C.length),A.write(C);A.end(),await OAc(A);let f=Rxr.join(r,t.filename);await SUe.promises.rename(l,f);let I=new WAc.async({file:f});await I.extract(null,r),await I.close(),await SUe.promises.chmod(e,493),await SUe.promises.rm(f)},{max:a})}hH.downloadDeno=YAc;async function QAc(e,t){let r=0,n=Date.now(),a=0,o=!1,l=JAc(()=>{a=Date.now()-n;let I=String(Math.floor(a/1e3/60)).padStart(2,"0"),C=String(Math.floor(a/1e3)%60).padStart(2,"0"),b=`[${I}:${C}]`,E=`${rki(r)}/${rki(t.max)}`,N=process.stdout.columns,B=b;if(N-b.length-E.length+4>10){let F=Math.min(N,50),Q=Math.floor(100/t.max*r),J="#".repeat(F/100*Q)+">",ae=Nxr.blue("-".repeat(Math.max(F-J.length,0)));B+=` [${Nxr.cyan(J)}${ae}] `}B+=Nxr.dim(E),process.stdout.isTTY&&(o&&process.stdout.write("\r\x1B[K"),o=!0,process.stdout.write(B))},16),f=await e(I=>{r+=I,l()});return process.stdout.isTTY?process.stdout.write(` -`):console.log("Download completed"),f}async function*XAc(e){let t=e.getReader();try{for(;;){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}}function rki(e,t=1){if(Math.abs(e)<1024)return e+" B";let n=["KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],a=-1,o=10**t;do e/=1024,++a;while(Math.round(Math.abs(e)*o)/o>=1024&&a{r===null&&(e(),r=setTimeout(()=>{r=null},t))}}});var Aki=H(L2=>{"use strict";var UAc=L2&&L2.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),KAc=L2&&L2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Dxr=L2&&L2.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&UAc(t,e,r);return KAc(t,e),t},jAc=L2&&L2.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(L2,"__esModule",{value:!0});L2.showPackageInfo=L2.runScript=L2.publish=L2.remove=L2.install=L2.setupBunfigToml=L2.setupNpmRc=void 0;var kxr=Dxr(Et("node:path")),xCe=Dxr(Et("node:fs")),G6=Dxr(p1t()),BUe=h1t(),vUe=UDi(),iki=nki(),ski=Ixr(),zAc=jAc(mxr()),oki=".npmrc",aki="bunfig.toml",xxr="https://npm.jsr.io",cki=`@jsr:registry=${xxr} -`,lki=`[install.scopes] -"@jsr" = "${xxr}" -`,qAc="npmScopes.jsr.npmRegistryServer";async function E1t(e,t){process.stdout.write(e+"...");try{await t(),process.stdout.write(G6.green("ok")+` -`)}catch(r){throw process.stdout.write(G6.red("error")+` -`),r}}async function uki(e){let t=kxr.join(e,oki),r=`Setting up ${oki}`;try{let n=await xCe.promises.readFile(t,"utf-8");if(!n.includes("@jsr:registry=")){let a=(0,BUe.getNewLineChars)(n),o=n.endsWith(a)?"":a;n+=o+cki,await E1t(r,async()=>{await xCe.promises.writeFile(t,n)})}}catch(n){if(n instanceof Error&&n.code==="ENOENT")await E1t(r,async()=>{await xCe.promises.writeFile(t,cki)});else throw n}}L2.setupNpmRc=uki;async function gki(e){let t=kxr.join(e,aki),r=`Setting up ${aki}`;try{let n=await xCe.promises.readFile(t,"utf-8");/^"@jsr"\s+=/gm.test(n)||(n+=lki,await E1t(r,async()=>{await xCe.promises.writeFile(t,n)}))}catch(n){if(n instanceof Error&&n.code==="ENOENT")await E1t(r,async()=>{await xCe.promises.writeFile(t,lki)});else throw n}}L2.setupBunfigToml=gki;async function $Ac(e,t){let{pkgManager:r,root:n}=await(0,vUe.getPkgManager)(process.cwd(),t.pkgManagerName);e.length>0&&(r instanceof vUe.Bun&&!await r.isNpmrcSupported()?await gki(n):r instanceof vUe.YarnBerry?await r.setConfigValue(qAc,xxr):await uki(n),console.log(`Installing ${G6.cyan(e.join(", "))}...`)),await r.install(e,t)}L2.install=$Ac;async function edc(e,t){let{pkgManager:r}=await(0,vUe.getPkgManager)(process.cwd(),t.pkgManagerName);console.log(`Removing ${G6.cyan(e.join(", "))}...`),await r.remove(e)}L2.remove=edc;async function tdc(e,t){let r=await(0,iki.getDenoDownloadUrl)(t),n=kxr.join(e,r.version,process.platform,process.platform==="win32"?"deno.exe":"deno");if(!await(0,BUe.fileExists)(n)){try{await xCe.promises.rm(e,{recursive:!0})}catch(a){if(!(a instanceof Error)||a.code!=="ENOENT")throw a}await(0,iki.downloadDeno)(n,r)}return n}async function rdc(e,t){let r=process.env.DENO_BIN_PATH??await tdc(t.binFolder,t.canary),n=["publish"],a={...process.env};t.pkgJsonPath!==null&&(n.push("--unstable-bare-node-builtins","--unstable-sloppy-imports","--unstable-byonm","--no-check"),a.DENO_DISABLE_PEDANTIC_NODE_WARNINGS="true"),n.push(...t.publishArgs.filter(o=>o!=="--verbose")),await(0,BUe.exec)(r,n,e,a)}L2.publish=rdc;async function ndc(e,t,r){let{pkgManager:n}=await(0,vUe.getPkgManager)(e,r.pkgManagerName);await n.runScript(t)}L2.runScript=ndc;async function idc(e){let t=BUe.JsrPackage.from(e),r=await(0,ski.getPackageMeta)(t);if(t.version===null){let f=r.latest;if(f===void 0)throw new Error(`Missing latest version for ${t}`);if(f===null){let I=Object.keys(r.versions);if(I.length===0)throw new Error(`Could not find published version for ${t}`);I.sort(zAc.default),t.version=I[0]}else t.version=f}let n=Object.keys(r.versions).length,a=await(0,ski.getNpmPackageInfo)(t),o=a.versions[t.version],l=a.time[t.version],A=new Date(l).getTime();console.log(),console.log(G6.cyan(`@${t.scope}/${t.name}@${t.version}`)+` | latest: ${G6.magenta(r.latest??"-")} | versions: ${G6.magenta(n)}`),console.log(a.description),console.log(),console.log(`npm tarball: ${G6.cyan(o.dist.tarball)}`),console.log(`npm integrity: ${G6.cyan(o.dist.integrity)}`),console.log(),console.log(`published: ${G6.magenta((0,BUe.timeAgo)(Date.now()-A))}`)}L2.showPackageInfo=idc});var pki=H(mH=>{"use strict";Object.defineProperty(mH,"__esModule",{value:!0});mH.JsrPackageNameError=mH.JsrPackage=mH.remove=mH.publish=mH.install=void 0;var Gxr=Aki();Object.defineProperty(mH,"install",{enumerable:!0,get:function(){return Gxr.install}});Object.defineProperty(mH,"publish",{enumerable:!0,get:function(){return Gxr.publish}});Object.defineProperty(mH,"remove",{enumerable:!0,get:function(){return Gxr.remove}});var dki=h1t();Object.defineProperty(mH,"JsrPackage",{enumerable:!0,get:function(){return dki.JsrPackage}});Object.defineProperty(mH,"JsrPackageNameError",{enumerable:!0,get:function(){return dki.JsrPackageNameError}})});var Dki=H((eDu,w1t)=>{var Eki={};(e=>{"use strict";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(s,c)=>{for(var g in c)t(s,g,{get:c[g],enumerable:!0})},l=(s,c,g,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let h of n(c))!a.call(s,h)&&h!==g&&t(s,h,{get:()=>c[h],enumerable:!(d=r(c,h))||d.enumerable});return s},A=s=>s,f={};o(f,{ANONYMOUS:()=>Snt,AccessFlags:()=>Ny,AssertionLevel:()=>bl,AssignmentDeclarationKind:()=>Dy,AssignmentKind:()=>OZe,Associativity:()=>JZe,BreakpointResolver:()=>bit,BuilderFileEmit:()=>s5t,BuilderProgramKind:()=>d5t,BuilderState:()=>cR,CallHierarchy:()=>rq,CharacterCodes:()=>z2,CheckFlags:()=>uB,CheckMode:()=>Jet,ClassificationType:()=>Frt,ClassificationTypeNames:()=>fMt,CommentDirectiveType:()=>zS,Comparison:()=>b,CompletionInfoFlags:()=>cMt,CompletionTriggerKind:()=>xrt,Completions:()=>aq,ContainerFlags:()=>WPt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>$S,Diagnostics:()=>Z,DocumentHighlights:()=>WWe,ElementFlags:()=>nf,EmitFlags:()=>dB,EmitHint:()=>ny,EmitOnly:()=>K2,EndOfLineState:()=>gMt,ExitStatus:()=>gt,ExportKind:()=>sHt,Extension:()=>ry,ExternalEmitHelpers:()=>qR,FileIncludeKind:()=>ty,FilePreprocessingDiagnosticsKind:()=>_w,FileSystemEntryKind:()=>s1,FileWatcherEventKind:()=>Eb,FindAllReferences:()=>zp,FlattenLevel:()=>a3t,FlowFlags:()=>Xp,ForegroundColorEscapeSequences:()=>K3t,FunctionFlags:()=>QZe,GeneratedIdentifierFlags:()=>cd,GetLiteralTextFlags:()=>B7,GoToDefinition:()=>hse,HighlightSpanKind:()=>oMt,IdentifierNameMap:()=>Xie,ImportKind:()=>iHt,ImportsNotUsedAsValues:()=>tv,IndentStyle:()=>aMt,IndexFlags:()=>qS,IndexKind:()=>Km,InferenceFlags:()=>D_,InferencePriority:()=>_b,InlayHintKind:()=>sMt,InlayHints:()=>dst,InternalEmitFlags:()=>GD,InternalNodeBuilderFlags:()=>Bg,InternalSymbolName:()=>GT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>Z5t,JSDocParsingMode:()=>i1,JsDoc:()=>u5,JsTyping:()=>qW,JsxEmit:()=>zR,JsxFlags:()=>Um,JsxReferenceKind:()=>rh,LanguageFeatureMinimumTarget:()=>Dd,LanguageServiceMode:()=>nMt,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>r2,ListFormat:()=>r1,LogLevel:()=>hb,MapCode:()=>pst,MemberOverrideStatus:()=>ar,ModifierFlags:()=>jE,ModuleDetectionKind:()=>e1,ModuleInstanceState:()=>LPt,ModuleKind:()=>ev,ModuleResolutionKind:()=>$_,ModuleSpecifierEnding:()=>ZLe,NavigateTo:()=>RHt,NavigationBar:()=>DHt,NewLineKind:()=>t1,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>Ry,NodeFactoryFlags:()=>fEe,NodeFlags:()=>fC,NodeResolutionFeatures:()=>vPt,ObjectFlags:()=>q_,OperationCanceledException:()=>Ty,OperatorPrecedence:()=>UZe,OrganizeImports:()=>g5,OrganizeImportsMode:()=>krt,OuterExpressionKinds:()=>pF,OutliningElementsCollector:()=>Ist,OutliningSpanKind:()=>lMt,OutputFileType:()=>uMt,PackageJsonAutoImportPreference:()=>rMt,PackageJsonDependencyGroup:()=>tMt,PatternMatchKind:()=>Hnt,PollingInterval:()=>i_,PollingWatchKind:()=>AB,PragmaKindFlags:()=>k_,PredicateSemantics:()=>z_,PreparePasteEdits:()=>Dst,PrivateIdentifierKind:()=>A9e,ProcessLevel:()=>g3t,ProgramUpdateLevel:()=>Y3t,QuotePreference:()=>LMt,RegularExpressionFlags:()=>zE,RelationComparisonResult:()=>wy,Rename:()=>bOe,ScriptElementKind:()=>dMt,ScriptElementKindModifier:()=>pMt,ScriptKind:()=>j2,ScriptSnapshot:()=>zVe,ScriptTarget:()=>LT,SemanticClassificationFormat:()=>iMt,SemanticMeaning:()=>IMt,SemicolonPreference:()=>Grt,SignatureCheckMode:()=>Uet,SignatureFlags:()=>td,SignatureHelp:()=>p2e,SignatureInfo:()=>i5t,SignatureKind:()=>TA,SmartSelectionRange:()=>Cst,SnippetKind:()=>yw,StatisticType:()=>Q5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>AI,SymbolDisplay:()=>u9,SymbolDisplayPartKind:()=>$Ve,SymbolFlags:()=>xT,SymbolFormatFlags:()=>Df,SyntaxKind:()=>Wd,Ternary:()=>yb,ThrottledCancellationToken:()=>WYt,TokenClass:()=>AMt,TokenFlags:()=>qE,TransformFlags:()=>Ap,TypeFacts:()=>Xet,TypeFlags:()=>$E,TypeFormatFlags:()=>Dg,TypeMapKind:()=>eI,TypePredicateKind:()=>kh,TypeReferenceSerializationKind:()=>lE,UnionReduction:()=>Jr,UpToDateStatusType:()=>R5t,VarianceFlags:()=>FT,Version:()=>P,VersionRange:()=>At,WatchDirectoryFlags:()=>t2,WatchDirectoryKind:()=>ZT,WatchFileKind:()=>gB,WatchLogLevel:()=>X3t,WatchType:()=>eC,accessPrivateIdentifier:()=>o3t,addEmitFlags:()=>Ww,addEmitHelper:()=>uQ,addEmitHelpers:()=>bN,addInternalEmitFlags:()=>L3,addNodeFactoryPatcher:()=>y$e,addObjectAllocatorPatcher:()=>s$e,addRange:()=>Pr,addRelatedInfo:()=>ug,addSyntheticLeadingComment:()=>qT,addSyntheticTrailingComment:()=>Nz,addToSeen:()=>Vy,advancedAsyncSuperHelper:()=>LF,affectsDeclarationPathOptionDeclarations:()=>jOt,affectsEmitOptionDeclarations:()=>KOt,allKeysStartWithDot:()=>rVe,altDirectorySeparator:()=>vb,and:()=>hh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>YLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Uu,arrayToNumericMap:()=>Vs,assertType:()=>oE,assign:()=>Pt,asyncSuperHelper:()=>Eie,attachFileToDiagnostics:()=>qL,base64decode:()=>dLe,base64encode:()=>Bbe,binarySearch:()=>Oc,binarySearchKey:()=>vg,bindSourceFile:()=>OPt,breakIntoCharacterSpans:()=>yHt,breakIntoWordSpans:()=>bHt,buildLinkParts:()=>QMt,buildOpts:()=>PEe,buildOverload:()=>Jpn,bundlerModuleNameResolver:()=>BPt,canBeConvertedToAsync:()=>Knt,canHaveDecorators:()=>hQ,canHaveExportModifier:()=>lie,canHaveFlowNode:()=>aU,canHaveIllegalDecorators:()=>eet,canHaveIllegalModifiers:()=>NOt,canHaveIllegalType:()=>N$r,canHaveIllegalTypeParameters:()=>ROt,canHaveJSDoc:()=>Bne,canHaveLocals:()=>HI,canHaveModifiers:()=>MB,canHaveModuleSpecifier:()=>ZZe,canHaveSymbol:()=>yE,canIncludeBindAndCheckDiagnostics:()=>SU,canJsonReportNoInputFiles:()=>JEe,canProduceDiagnostics:()=>i1e,canUsePropertyAccess:()=>nEe,canWatchAffectingLocation:()=>y5t,canWatchAtTypes:()=>_5t,canWatchDirectoryOrFile:()=>Ktt,canWatchDirectoryOrFilePath:()=>C1e,cartesianProduct:()=>KE,cast:()=>Ma,chainBundle:()=>aR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>$2,changeCompilerHostLikeToUseCache:()=>zde,changeExtension:()=>_N,changeFullExtension:()=>o_,changesAffectModuleResolution:()=>HJ,changesAffectingProgramStructure:()=>kge,characterCodeToRegularExpressionFlag:()=>Pg,childIsDecorated:()=>rU,classElementOrClassElementParameterIsDecorated:()=>Wye,classHasClassThisAssignment:()=>ltt,classHasDeclaredOrExplicitlyAssignedName:()=>utt,classHasExplicitlyAssignedName:()=>fVe,classOrConstructorParameterIsDecorated:()=>Gx,classicNameResolver:()=>FPt,classifier:()=>HYt,cleanExtendedConfigCache:()=>yVe,clear:()=>ft,clearMap:()=>Ly,clearSharedExtendedConfigFileWatcher:()=>Stt,climbPastPropertyAccess:()=>rWe,clone:()=>Sg,cloneCompilerOptions:()=>ent,closeFileWatcher:()=>hv,closeFileWatcherOf:()=>Ev,codefix:()=>F0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>stt,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>$Ot,commentPragmas:()=>n1,commonOptionsWithBuild:()=>Z9e,compact:()=>Hr,compareBooleans:()=>Hl,compareDataObjects:()=>LAe,compareDiagnostics:()=>oz,compareEmitHelpers:()=>p9e,compareNumberOfDirectorySeparators:()=>sie,comparePaths:()=>tI,comparePathsCaseInsensitive:()=>CB,comparePathsCaseSensitive:()=>Sx,comparePatternKeys:()=>Wet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Oa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>io,compareTextSpans:()=>bn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>RLe,compilerOptionsAffectEmit:()=>TLe,compilerOptionsAffectSemanticDiagnostics:()=>Obe,compilerOptionsDidYouMeanDiagnostics:()=>O9e,compilerOptionsIndicateEsModules:()=>ont,computeCommonSourceDirectoryOfFilenames:()=>J3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Wo,computeLineStarts:()=>lA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>Htt,computeSuggestionDiagnostics:()=>Xnt,computedOptions:()=>az,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Kne,consumesNodeCoreModules:()=>NWe,contains:()=>k,containsIgnoredPath:()=>Cz,containsObjectRestOrSpread:()=>LEe,containsParseError:()=>bW,containsPath:()=>zh,convertCompilerOptionsForTelemetry:()=>pPt,convertCompilerOptionsFromJson:()=>Wen,convertJsonOption:()=>VU,convertToBase64:()=>vbe,convertToJson:()=>YEe,convertToObject:()=>cPt,convertToOptionsWithAbsolutePaths:()=>Y9e,convertToRelativePath:()=>s2,convertToTSConfig:()=>yet,convertTypeAcquisitionFromJson:()=>Oen,copyComments:()=>XU,copyEntries:()=>y7,copyLeadingComments:()=>cse,copyProperties:()=>ZA,copyTrailingAsLeadingComments:()=>O1e,copyTrailingComments:()=>dpe,couldStartTrivia:()=>sv,countWhere:()=>ze,createAbstractBuilder:()=>Urn,createAccessorPropertyBackingField:()=>net,createAccessorPropertyGetRedirector:()=>VOt,createAccessorPropertySetRedirector:()=>WOt,createBaseNodeFactory:()=>r9e,createBinaryExpressionTrampoline:()=>D9e,createBuilderProgram:()=>Ytt,createBuilderProgramUsingIncrementalBuildInfo:()=>h5t,createBuilderStatusReporter:()=>HVe,createCacheableExportInfoMap:()=>Fnt,createCachedDirectoryStructureHost:()=>CVe,createClassifier:()=>Sin,createCommentDirectivesMap:()=>Wge,createCompilerDiagnostic:()=>kf,createCompilerDiagnosticForInvalidCustomType:()=>ePt,createCompilerDiagnosticFromMessageChain:()=>PAe,createCompilerHost:()=>U3t,createCompilerHostFromProgramHost:()=>urt,createCompilerHostWorker:()=>bVe,createDetachedDiagnostic:()=>rQ,createDiagnosticCollection:()=>RF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>C3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Dw,createDiagnosticForNodeInSourceFile:()=>EE,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Uz,createDocumentPositionMapper:()=>t3t,createDocumentRegistry:()=>uHt,createDocumentRegistryInternal:()=>Ont,createEmitAndSemanticDiagnosticsBuilderProgram:()=>Utt,createEmitHelperFactory:()=>d9e,createEmptyExports:()=>REe,createEvaluator:()=>$Le,createExpressionForJsxElement:()=>EOt,createExpressionForJsxFragment:()=>SOt,createExpressionForObjectLiteralElementLike:()=>vOt,createExpressionForPropertyName:()=>U$e,createExpressionFromEntityName:()=>NEe,createExternalHelpersImportDeclarationIfNeeded:()=>z$e,createFileDiagnostic:()=>rm,createFileDiagnosticFromMessageChain:()=>qe,createFlowNode:()=>ak,createForOfBindingStatement:()=>J$e,createFutureSourceFile:()=>ZWe,createGetCanonicalFileName:()=>bd,createGetIsolatedDeclarationErrors:()=>G3t,createGetSourceFile:()=>Rtt,createGetSymbolAccessibilityDiagnosticForNode:()=>e5,createGetSymbolAccessibilityDiagnosticForNodeName:()=>x3t,createGetSymbolWalker:()=>PPt,createIncrementalCompilerHost:()=>MVe,createIncrementalProgram:()=>T5t,createJsxFactoryExpression:()=>X$e,createLanguageService:()=>OYt,createLanguageServiceSourceFile:()=>tOe,createMemberAccessForPropertyName:()=>ZU,createModeAwareCache:()=>Pie,createModeAwareCacheKey:()=>Zde,createModeMismatchDetails:()=>E7,createModuleNotFoundChain:()=>QJ,createModuleResolutionCache:()=>Mie,createModuleResolutionLoader:()=>Ftt,createModuleResolutionLoaderUsingGlobalCache:()=>v5t,createModuleSpecifierResolutionHost:()=>i5,createMultiMap:()=>gl,createNameResolver:()=>ude,createNodeConverters:()=>n9e,createNodeFactory:()=>hie,createOptionNameMap:()=>V9e,createOverload:()=>xst,createPackageJsonImportFilter:()=>use,createPackageJsonInfo:()=>wnt,createParenthesizerRules:()=>mv,createPatternMatcher:()=>fHt,createPrinter:()=>jW,createPrinterWithDefaults:()=>M3t,createPrinterWithRemoveComments:()=>bQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>H3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Ett,createProgram:()=>I1e,createProgramDiagnostics:()=>r5t,createProgramHost:()=>grt,createPropertyNameNodeForIdentifierOrLiteral:()=>cie,createQueue:()=>aA,createRange:()=>Zy,createRedirectedBuilderProgram:()=>Jtt,createResolutionCache:()=>ztt,createRuntimeTypeSerializer:()=>I3t,createScanner:()=>Rb,createSemanticDiagnosticsBuilderProgram:()=>Jrn,createSet:()=>so,createSolutionBuilder:()=>x5t,createSolutionBuilderHost:()=>D5t,createSolutionBuilderWithWatch:()=>G5t,createSolutionBuilderWithWatchHost:()=>k5t,createSortedArray:()=>Ya,createSourceFile:()=>Wz,createSourceMapGenerator:()=>jPt,createSourceMapSource:()=>S$e,createSuperAccessVariableStatement:()=>hVe,createSymbolTable:()=>$u,createSymlinkCache:()=>Mbe,createSyntacticTypeNodeBuilder:()=>q5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>x1e,createTextChangeFromStartLength:()=>fWe,createTextChangeRange:()=>nS,createTextRangeFromNode:()=>nnt,createTextRangeFromSpan:()=>pWe,createTextSpan:()=>$d,createTextSpanFromBounds:()=>RA,createTextSpanFromNode:()=>Hy,createTextSpanFromRange:()=>a9,createTextSpanFromStringLiteralLikeContent:()=>rnt,createTextWriter:()=>One,createTokenRange:()=>zL,createTypeChecker:()=>UPt,createTypeReferenceDirectiveResolutionCache:()=>eVe,createTypeReferenceResolutionLoader:()=>vVe,createWatchCompilerHost:()=>inn,createWatchCompilerHostOfConfigFile:()=>Art,createWatchCompilerHostOfFilesAndCompilerOptions:()=>drt,createWatchFactory:()=>lrt,createWatchHost:()=>crt,createWatchProgram:()=>prt,createWatchStatusReporter:()=>qtt,createWriteFileMeasuringIO:()=>Ntt,declarationNameToString:()=>Md,decodeMappings:()=>rtt,decodedTextSpanIntersectsWith:()=>CE,deduplicate:()=>no,defaultHoverMaximumTruncationLength:()=>Rge,defaultInitCompilerOptions:()=>sen,defaultMaximumTruncationLength:()=>GY,diagnosticCategoryName:()=>bb,diagnosticToString:()=>wQ,diagnosticsEqualityComparer:()=>MAe,directoryProbablyExists:()=>m1,directorySeparator:()=>cg,displayPart:()=>wE,displayPartsToString:()=>$1e,disposeEmitNodes:()=>ju,documentSpansEqual:()=>dnt,dumpTracingLegend:()=>$f,elementAt:()=>_g,elideNodes:()=>LOt,emitDetachedComments:()=>rLe,emitFiles:()=>ytt,emitFilesAndReportErrors:()=>VVe,emitFilesAndReportErrorsAndGetExitStatus:()=>art,emitModuleKindIsNonNodeESM:()=>eie,emitNewLineBeforeLeadingCommentOfPosition:()=>Ibe,emitResolverSkipsTypeChecking:()=>_tt,emitSkippedWithNoDiagnostics:()=>Vtt,emptyArray:()=>E,emptyFileSystemEntries:()=>Kbe,emptyMap:()=>N,emptyOptions:()=>HB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Im,ensureScriptKind:()=>jAe,ensureTrailingDirectorySeparator:()=>Cp,entityNameToString:()=>cy,enumerateInsertsAndDeletes:()=>ey,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Yp,equateStringsCaseSensitive:()=>YA,equateValues:()=>bg,escapeJsxAttributeString:()=>cbe,escapeLeadingUnderscores:()=>pp,escapeNonAsciiString:()=>Lne,escapeSnippetText:()=>PW,escapeString:()=>KT,escapeTemplateSubstitution:()=>obe,evaluatorResult:()=>nm,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>dde,executeCommandLine:()=>Lnn,expandPreOrPostfixIncrementOrDecrementExpression:()=>B9e,explainFiles:()=>rrt,explainIfFileIsRedirectAndImpliedFormat:()=>nrt,exportAssignmentIsAlias:()=>Nne,expressionResultIsUnused:()=>XLe,extend:()=>HA,extensionFromPath:()=>fz,extensionIsTS:()=>rde,extensionsNotSupportingExtensionlessResolution:()=>tde,externalHelpersModuleNameText:()=>YD,factory:()=>me,fileExtensionIs:()=>cA,fileExtensionIsOneOf:()=>Iu,fileIncludeReasonToDiagnostics:()=>ort,fileShouldUseJavaScriptRequire:()=>Gnt,filter:()=>Le,filterMutate:()=>Je,filterSemanticDiagnostics:()=>RVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>XA,findChildOfKind:()=>ep,findComputedPropertyNameCacheAssignment:()=>k9e,findConfigFile:()=>wtt,findConstructorDeclaration:()=>cQ,findContainingList:()=>aWe,findDiagnosticForNode:()=>tHt,findFirstNonJsxWhitespaceToken:()=>SMt,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>EMt,findModifier:()=>sse,findNextToken:()=>BQ,findPackageJson:()=>eHt,findPackageJsons:()=>Bnt,findPrecedingMatchingToken:()=>AWe,findPrecedingToken:()=>Vm,findSuperStatementIndexPath:()=>gVe,findTokenOnLeftOfPosition:()=>ope,findUseStrictPrologue:()=>j$e,first:()=>ma,firstDefined:()=>J,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>Nnt,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>sA,fixupCompilerOptions:()=>jnt,flatMap:()=>jt,flatMapIterator:()=>Dt,flatMapToMutable:()=>Bt,flatten:()=>Sr,flattenCommaList:()=>OOt,flattenDestructuringAssignment:()=>PU,flattenDestructuringBinding:()=>yQ,flattenDiagnosticMessageText:()=>kN,forEach:()=>F,forEachAncestor:()=>Tw,forEachAncestorDirectory:()=>hE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>NN,forEachChild:()=>Lu,forEachChildRecursively:()=>Vz,forEachDynamicImportOrRequireCall:()=>die,forEachEmittedFile:()=>Itt,forEachEnclosingBlockScopeContainer:()=>Uge,forEachEntry:()=>Fh,forEachExternalModuleToImportFrom:()=>Lnt,forEachImportClauseDeclaration:()=>LZe,forEachKey:()=>RB,forEachLeadingCommentRange:()=>WD,forEachNameInAccessChainWalkingLeft:()=>CLe,forEachNameOfDefaultExport:()=>VWe,forEachOptionsSyntaxByName:()=>pde,forEachProjectReference:()=>vz,forEachPropertyAssignment:()=>$J,forEachResolvedProjectReference:()=>fie,forEachReturnStatement:()=>wF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>CF,forEachTsConfigPropArray:()=>gne,forEachUnique:()=>fnt,forEachYieldExpression:()=>bZe,formatColorAndReset:()=>EQ,formatDiagnostic:()=>Dtt,formatDiagnostics:()=>yrn,formatDiagnosticsWithColorAndContext:()=>q3t,formatGeneratedName:()=>K3,formatGeneratedNamePart:()=>Lie,formatLocation:()=>ktt,formatMessage:()=>nQ,formatStringFromArgs:()=>mN,formatting:()=>_m,generateDjb2Hash:()=>iy,generateTSConfig:()=>lPt,getAdjustedReferenceLocation:()=>Urt,getAdjustedRenameLocation:()=>lWe,getAliasDeclarationFromName:()=>zye,getAllAccessorDeclarations:()=>GW,getAllDecoratorsOfClass:()=>att,getAllDecoratorsOfClassElement:()=>dVe,getAllJSDocTags:()=>BJ,getAllJSDocTagsOfKind:()=>Sye,getAllKeys:()=>_I,getAllProjectOutputs:()=>mVe,getAllSuperTypeNodes:()=>H7,getAllowImportingTsExtensions:()=>ELe,getAllowJSCompilerOption:()=>GF,getAllowSyntheticDefaultImports:()=>iQ,getAncestor:()=>UL,getAnyExtensionFromPath:()=>pE,getAreDeclarationMapsEnabled:()=>HAe,getAssignedExpandoInitializer:()=>XY,getAssignedName:()=>SB,getAssignmentDeclarationKind:()=>oI,getAssignmentDeclarationPropertyAccessKind:()=>sU,getAssignmentTargetKind:()=>jD,getAutomaticTypeDirectiveNames:()=>q9e,getBaseFileName:()=>dp,getBinaryOperatorPrecedence:()=>Zne,getBuildInfo:()=>btt,getBuildInfoFileVersionMap:()=>Xtt,getBuildInfoText:()=>O3t,getBuildOrderFromAnyBuildOrder:()=>y1e,getBuilderCreationParameters:()=>xVe,getBuilderFileEmit:()=>zW,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>aI,getClassExtendsHeritageElement:()=>JL,getClassLikeDeclarationOfSymbol:()=>hN,getCombinedLocalAndExportSymbolFlags:()=>mU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>hm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ld,getCommentRange:()=>ZB,getCommonSourceDirectory:()=>jde,getCommonSourceDirectoryOfConfig:()=>MU,getCompilerOptionValue:()=>lz,getConditions:()=>JW,getConfigFileParsingDiagnostics:()=>SQ,getConstantValue:()=>s9e,getContainerFlags:()=>Pet,getContainerNode:()=>QU,getContainingClass:()=>_C,getContainingClassExcludingClassDecorators:()=>iAe,getContainingClassStaticBlock:()=>wZe,getContainingFunction:()=>f1,getContainingFunctionDeclaration:()=>nAe,getContainingFunctionOrClassStaticBlock:()=>Ane,getContainingNodeArray:()=>JLe,getContainingObjectLiteralElement:()=>e2e,getContextualTypeFromParent:()=>SWe,getContextualTypeFromParentOrAncestorTypeNode:()=>cWe,getDeclarationDiagnostics:()=>F3t,getDeclarationEmitExtensionForPath:()=>bAe,getDeclarationEmitOutputFilePath:()=>qZe,getDeclarationEmitOutputFilePathWorker:()=>Pne,getDeclarationFileExtension:()=>G9e,getDeclarationFromName:()=>M7,getDeclarationModifierFlagsFromSymbol:()=>d2,getDeclarationOfKind:()=>yp,getDeclarationsOfKind:()=>Nge,getDeclaredExpandoInitializer:()=>L7,getDecorators:()=>Db,getDefaultCompilerOptions:()=>eOe,getDefaultFormatCodeSettings:()=>qVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>PYt,getDefaultLikeExportInfo:()=>LWe,getDefaultLikeExportNameFromDeclaration:()=>Dnt,getDefaultResolutionModeForFileWorker:()=>TVe,getDiagnosticText:()=>Vb,getDiagnosticsWithinSpan:()=>rHt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>jtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>E5t,getDocumentPositionMapper:()=>Qnt,getDocumentSpansEqualityComparer:()=>pnt,getESModuleInterop:()=>Lw,getEditsForFileRename:()=>AHt,getEffectiveBaseTypeNode:()=>DB,getEffectiveConstraintOfTypeParameter:()=>u3,getEffectiveContainerForJSDocTemplateTag:()=>pAe,getEffectiveImplementsTypeNodes:()=>lU,getEffectiveInitializer:()=>_ne,getEffectiveJSDocHost:()=>XL,getEffectiveModifierFlags:()=>c_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>aLe,getEffectiveModifierFlagsNoCache:()=>Cbe,getEffectiveReturnTypeNode:()=>Fb,getEffectiveSetAccessorTypeAnnotationNode:()=>fbe,getEffectiveTypeAnnotationNode:()=>Zh,getEffectiveTypeParameterDeclarations:()=>PD,getEffectiveTypeRoots:()=>Fde,getElementOrPropertyAccessArgumentExpressionOrName:()=>dAe,getElementOrPropertyAccessName:()=>KD,getElementsOfBindingOrAssignmentPattern:()=>Zie,getEmitDeclarations:()=>Wy,getEmitFlags:()=>rA,getEmitHelpers:()=>mEe,getEmitModuleDetectionKind:()=>SLe,getEmitModuleFormatOfFileWorker:()=>epe,getEmitModuleKind:()=>o0,getEmitModuleResolutionKind:()=>G_,getEmitScriptTarget:()=>Hg,getEmitStandardClassFields:()=>Wbe,getEnclosingBlockScopeContainer:()=>sS,getEnclosingContainer:()=>R7,getEncodedSemanticClassifications:()=>Vnt,getEncodedSyntacticClassifications:()=>Wnt,getEndLinePosition:()=>ZY,getEntityNameFromTypeNode:()=>pne,getEntrypointsFromPackageJsonInfo:()=>Zet,getErrorCountForSummary:()=>ZVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>ert,getEscapedTextOfIdentifierOrLiteral:()=>gU,getEscapedTextOfJsxAttributeName:()=>bz,getEscapedTextOfJsxNamespacedName:()=>uS,getExpandoInitializer:()=>YL,getExportAssignmentExpression:()=>Dne,getExportInfoMap:()=>X1e,getExportNeedsImportStarHelper:()=>r3t,getExpressionAssociativity:()=>ibe,getExpressionPrecedence:()=>J7,getExternalHelpersModuleName:()=>kEe,getExternalModuleImportEqualsDeclarationExpression:()=>G7,getExternalModuleName:()=>UY,getExternalModuleNameFromDeclaration:()=>jZe,getExternalModuleNameFromPath:()=>ube,getExternalModuleNameLiteral:()=>Lz,getExternalModuleRequireArgument:()=>Pye,getFallbackOptions:()=>d1e,getFileEmitOutput:()=>n5t,getFileMatcherPatterns:()=>KAe,getFileNamesFromConfigSpecs:()=>xde,getFileWatcherEventKind:()=>rv,getFilesInErrorForSummary:()=>LVe,getFirstConstructorWithBody:()=>pN,getFirstIdentifier:()=>T0,getFirstNonSpaceCharacterPosition:()=>UMt,getFirstProjectOutput:()=>Ctt,getFixableErrorSpanExpression:()=>Tnt,getFormatCodeSettingsForWriting:()=>GWe,getFullWidth:()=>YJ,getFunctionFlags:()=>BI,getHeritageClause:()=>kne,getHostSignatureFromJSDoc:()=>QL,getIdentifierAutoGenerate:()=>w$e,getIdentifierGeneratedImportReference:()=>g9e,getIdentifierTypeArguments:()=>P3,getImmediatelyInvokedFunctionExpression:()=>ML,getImpliedNodeFormatForEmitWorker:()=>HU,getImpliedNodeFormatForFile:()=>f1e,getImpliedNodeFormatForFileWorker:()=>wVe,getImportNeedsImportDefaultHelper:()=>itt,getImportNeedsImportStarHelper:()=>lVe,getIndentString:()=>yAe,getInferredLibraryNameResolveFrom:()=>BVe,getInitializedVariables:()=>hU,getInitializerOfBinaryExpression:()=>Yye,getInitializerOfBindingOrAssignmentElement:()=>GEe,getInterfaceBaseTypeNodes:()=>Y7,getInternalEmitFlags:()=>p1,getInvokedExpression:()=>aAe,getIsFileExcluded:()=>aHt,getIsolatedModules:()=>lS,getJSDocAugmentsTag:()=>l7,getJSDocClassTag:()=>wx,getJSDocCommentRanges:()=>Fye,getJSDocCommentsAndTags:()=>Xye,getJSDocDeprecatedTag:()=>$h,getJSDocDeprecatedTagNoCache:()=>a2,getJSDocEnumTag:()=>u1,getJSDocHost:()=>NW,getJSDocImplementsTags:()=>yY,getJSDocOverloadTags:()=>Uye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>DL,getJSDocParameterTagsNoCache:()=>EJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>Gre,getJSDocPublicTagNoCache:()=>Tx,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>mA,getJSDocReturnTag:()=>lv,getJSDocReturnType:()=>vJ,getJSDocRoot:()=>cU,getJSDocSatisfiesExpressionType:()=>sEe,getJSDocSatisfiesTag:()=>yF,getJSDocTags:()=>Rx,getJSDocTemplateTag:()=>pW,getJSDocThisTag:()=>kb,getJSDocType:()=>sN,getJSDocTypeAliasName:()=>$$e,getJSDocTypeAssertionType:()=>Gie,getJSDocTypeParameterDeclarations:()=>wAe,getJSDocTypeParameterTags:()=>l3,getJSDocTypeParameterTagsNoCache:()=>c7,getJSDocTypeTag:()=>uv,getJSXImplicitImportBase:()=>tie,getJSXRuntimeImport:()=>rie,getJSXTransformEnabled:()=>XAe,getKeyForCompilerOptions:()=>Det,getLanguageVariant:()=>jne,getLastChild:()=>kbe,getLeadingCommentRanges:()=>mE,getLeadingCommentRangesOfNode:()=>qge,getLeftmostAccessExpression:()=>CU,getLeftmostExpression:()=>_U,getLibFileNameFromLibReference:()=>lEe,getLibNameFromLibReference:()=>lQ,getLibraryNameFromLibFileName:()=>Ztt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ttt,getLineOfLocalPosition:()=>j7,getLineStartPositionForPosition:()=>YB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>Tbe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>hLe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>k3,getLinesBetweenRangeEndPositions:()=>ILe,getLiteralText:()=>Pge,getLocalNameForExternalImport:()=>Fie,getLocalSymbolForExportDefault:()=>ez,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>_1e,getMappedContextSpan:()=>Int,getMappedDocumentSpan:()=>yWe,getMappedLocation:()=>upe,getMatchedFileSpec:()=>irt,getMatchedIncludeSpec:()=>srt,getMeaningFromDeclaration:()=>eWe,getMeaningFromLocation:()=>YU,getMembersOfDeclaration:()=>$ge,getModeForFileReference:()=>$3t,getModeForResolutionAtIndex:()=>wrn,getModeForUsageLocation:()=>Gtt,getModifiedTime:()=>Sb,getModifiers:()=>iN,getModuleInstanceState:()=>QF,getModuleNameStringLiteralAt:()=>h1e,getModuleSpecifierEndingPreference:()=>LLe,getModuleSpecifierResolverHost:()=>ant,getNameForExportedSymbol:()=>DWe,getNameFromImportAttribute:()=>lde,getNameFromIndexInfo:()=>Kge,getNameFromPropertyName:()=>F1e,getNameOfAccessExpression:()=>xbe,getNameOfCompilerOptionValue:()=>H9e,getNameOfDeclaration:()=>fl,getNameOfExpando:()=>Mye,getNameOfJSDocTypedef:()=>_F,getNameOfScriptTarget:()=>QAe,getNameOrArgument:()=>bne,getNameTable:()=>yit,getNamespaceDeclarationNode:()=>oU,getNewLineCharacter:()=>fN,getNewLineKind:()=>Q1e,getNewLineOrDefaultFromHost:()=>JF,getNewTargetContainer:()=>RZe,getNextJSDocCommentLocation:()=>Jye,getNodeChildren:()=>Y$e,getNodeForGeneratedName:()=>ZEe,getNodeId:()=>id,getNodeKind:()=>vQ,getNodeModifiers:()=>ape,getNodeModulePathParts:()=>sde,getNonAssignedNameOfDeclaration:()=>Sw,getNonAssignmentOperatorForCompoundAssignment:()=>Hde,getNonAugmentationDeclaration:()=>jJ,getNonDecoratorTokenPosOfNode:()=>rne,getNonIncrementalBuildInfoRoots:()=>m5t,getNonModifierTokenPosOfNode:()=>Oge,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>eN,getNormalizedPathComponents:()=>hB,getObjectFlags:()=>la,getOperatorAssociativity:()=>sbe,getOperatorPrecedence:()=>Fne,getOptionFromName:()=>Iet,getOptionsForLibraryResolution:()=>ket,getOptionsNameMap:()=>Wie,getOptionsSyntaxByArrayElementValue:()=>uEe,getOptionsSyntaxByValue:()=>e9e,getOrCreateEmitNode:()=>u_,getOrUpdate:()=>cr,getOriginalNode:()=>xd,getOriginalNodeId:()=>My,getOutputDeclarationFileName:()=>Kde,getOutputDeclarationFileNameWorker:()=>htt,getOutputExtension:()=>u1e,getOutputFileNames:()=>Crn,getOutputJSFileNameWorker:()=>mtt,getOutputPathsFor:()=>Ude,getOwnEmitOutputFilePath:()=>zZe,getOwnKeys:()=>yg,getOwnValues:()=>Kh,getPackageJsonTypesVersionsPaths:()=>z9e,getPackageNameFromTypesPackageName:()=>Wde,getPackageScopeForPath:()=>Vde,getParameterSymbolFromJSDoc:()=>wne,getParentNodeInSpan:()=>L1e,getParseTreeNode:()=>eu,getParsedCommandLineOfConfigFile:()=>MEe,getPathComponents:()=>kp,getPathFromPathComponents:()=>Fm,getPathUpdater:()=>Mnt,getPathsBasePath:()=>EAe,getPatternFromSpec:()=>Qbe,getPendingEmitKindWithSeen:()=>kVe,getPositionOfLineAndCharacter:()=>ih,getPossibleGenericSignatures:()=>jrt,getPossibleOriginalInputExtensionForExtension:()=>gbe,getPossibleOriginalInputPathWithoutChangingExt:()=>Abe,getPossibleTypeArgumentsInfo:()=>zrt,getPreEmitDiagnostics:()=>_rn,getPrecedingNonSpaceCharacterPosition:()=>bWe,getPrivateIdentifier:()=>ctt,getProperties:()=>ott,getProperty:()=>fu,getPropertyAssignmentAliasLikeExpression:()=>YZe,getPropertyNameForPropertyNameNode:()=>w3,getPropertyNameFromType:()=>f2,getPropertyNameOfBindingOrAssignmentElement:()=>q$e,getPropertySymbolFromBindingElement:()=>_We,getPropertySymbolsFromContextualType:()=>rOe,getQuoteFromPreference:()=>lnt,getQuotePreference:()=>E1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>qz,getReferencedFileLocation:()=>$de,getRegexFromPattern:()=>rk,getRegularExpressionForWildcard:()=>uz,getRegularExpressionsForWildcards:()=>nie,getRelativePathFromDirectory:()=>_p,getRelativePathFromFile:()=>a1,getRelativePathToDirectoryOrUrl:()=>Hf,getRenameLocation:()=>W1e,getReplacementSpanForContextToken:()=>tnt,getResolutionDiagnostic:()=>Ott,getResolutionModeOverride:()=>Uie,getResolveJsonModule:()=>VW,getResolvePackageJsonExports:()=>cz,getResolvePackageJsonImports:()=>qne,getResolvedExternalModuleName:()=>K7,getResolvedModuleFromResolution:()=>OL,getResolvedTypeReferenceDirectiveFromResolution:()=>b7,getRestIndicatorOfBindingOrAssignmentElement:()=>R9e,getRestParameterElementType:()=>Zye,getRightMostAssignedExpression:()=>yne,getRootDeclaration:()=>Gw,getRootDirectoryOfResolutionCache:()=>S5t,getRootLength:()=>Mf,getScriptKind:()=>_nt,getScriptKindFromFileName:()=>zAe,getScriptTargetFeatures:()=>nne,getSelectedEffectiveModifierFlags:()=>$Y,getSelectedSyntacticModifierFlags:()=>sLe,getSemanticClassifications:()=>cHt,getSemanticJsxChildren:()=>AU,getSetAccessorTypeAnnotationNode:()=>eLe,getSetAccessorValueParameter:()=>z7,getSetExternalModuleIndicator:()=>zne,getShebang:()=>EB,getSingleVariableOfVariableStatement:()=>v3,getSnapshotText:()=>zz,getSnippetElement:()=>CEe,getSourceFileOfModule:()=>UJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>vAe,getSourceFileVersionAsHashFromText:()=>WVe,getSourceFilesToEmit:()=>SAe,getSourceMapRange:()=>zT,getSourceMapper:()=>SHt,getSourceTextOfNodeFromSourceFile:()=>SF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>XD,getStartPositionOfRange:()=>nz,getStartsOnNewLine:()=>V3,getStaticPropertiesAndClassStaticBlock:()=>AVe,getStrictOptionValue:()=>l_,getStringComparer:()=>gd,getSubPatternFromSpec:()=>UAe,getSuperCallFromStatement:()=>uVe,getSuperContainer:()=>x7,getSupportedCodeFixes:()=>Cit,getSupportedExtensions:()=>gz,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Az,getSwitchedType:()=>Ent,getSymbolId:()=>xg,getSymbolNameForPrivateIdentifier:()=>Gne,getSymbolTarget:()=>ynt,getSyntacticClassifications:()=>lHt,getSyntacticModifierFlags:()=>Fx,getSyntacticModifierFlagsNoCache:()=>_be,getSynthesizedDeepClone:()=>KA,getSynthesizedDeepCloneWithReplacements:()=>Iie,getSynthesizedDeepClones:()=>c0,getSynthesizedDeepClonesWithReplacements:()=>fde,getSyntheticLeadingComments:()=>W3,getSyntheticTrailingComments:()=>NU,getTargetLabel:()=>nWe,getTargetOfBindingOrAssignmentElement:()=>YW,getTemporaryModuleResolutionState:()=>Lde,getTextOfConstantValue:()=>Mge,getTextOfIdentifierOrLiteral:()=>g2,getTextOfJSDocComment:()=>wJ,getTextOfJsxAttributeName:()=>Vw,getTextOfJsxNamespacedName:()=>Ez,getTextOfNode:()=>Fp,getTextOfNodeFromSourceText:()=>WY,getTextOfPropertyName:()=>vW,getThisContainer:()=>i0,getThisParameter:()=>xW,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>JD,getTokenSourceMapRange:()=>Rz,getTouchingPropertyName:()=>Wb,getTouchingToken:()=>nse,getTrailingCommentRanges:()=>o2,getTrailingSemicolonDeferringWriter:()=>lbe,getTransformers:()=>L3t,getTsBuildInfoEmitOutputFilePath:()=>t5,getTsConfigObjectLiteralExpression:()=>k7,getTsConfigPropArrayElementValue:()=>rAe,getTypeAnnotationNode:()=>tLe,getTypeArgumentOrTypeParameterList:()=>DMt,getTypeKeywordOfTypeOnlyImport:()=>Ant,getTypeNode:()=>l9e,getTypeNodeIfAccessible:()=>fpe,getTypeParameterFromJsDoc:()=>WZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>nVe,getUILocale:()=>ff,getUniqueName:()=>JU,getUniqueSymbolId:()=>JMt,getUseDefineForClassFields:()=>$ne,getWatchErrorSummaryDiagnosticMessage:()=>$tt,getWatchFactory:()=>Btt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>Jre,handleNoEmitOptions:()=>Wtt,handleWatchOptionsConfigDirTemplateSubstitution:()=>Q9e,hasAbstractModifier:()=>FW,hasAccessorModifier:()=>Fw,hasAmbientModifier:()=>mbe,hasChangesInResolutions:()=>$re,hasContextSensitiveParameters:()=>ide,hasDecorators:()=>h1,hasDocComment:()=>RMt,hasDynamicName:()=>zD,hasEffectiveModifier:()=>Zb,hasEffectiveModifiers:()=>hbe,hasEffectiveReadonlyModifier:()=>R3,hasExtension:()=>v0,hasImplementationTSFileExtension:()=>FLe,hasIndexSignature:()=>bnt,hasInferredType:()=>Ade,hasInitializer:()=>QT,hasInvalidEscape:()=>abe,hasJSDocNodes:()=>jm,hasJSDocParameterTags:()=>SJ,hasJSFileExtension:()=>CN,hasJsonModuleEmitEnabled:()=>YAe,hasOnlyExpressionInitializer:()=>A1,hasOverrideModifier:()=>Mne,hasPossibleExternalModuleReference:()=>Jge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>w1e,hasQuestionToken:()=>KY,hasRecordedExternalHelpers:()=>TOt,hasResolutionModeOverride:()=>zLe,hasRestParameter:()=>Ure,hasScopeMarker:()=>xb,hasStaticModifier:()=>tm,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>iLe,hasTSFileExtension:()=>G3,hasTabstop:()=>KLe,hasTrailingDirectorySeparator:()=>Kp,hasType:()=>mf,hasTypeArguments:()=>Qqe,hasZeroOrOneAsteriskCharacter:()=>Pbe,hostGetCanonicalFileName:()=>qD,hostUsesCaseSensitiveFileNames:()=>T3,idText:()=>Vo,identifierIsThisKeyword:()=>pbe,identifierToKeywordKind:()=>cv,identity:()=>Zl,identitySourceMapConsumer:()=>ntt,ignoreSourceNewlines:()=>yEe,ignoredPaths:()=>Jp,importFromModuleSpecifier:()=>W7,importSyntaxAffectsModuleResolution:()=>Vbe,indexOfAnyCharCode:()=>tt,indexOfNode:()=>EW,indicesOf:()=>Ao,inferredTypesContainingFile:()=>qde,injectClassNamedEvaluationHelperBlockIfMissing:()=>IVe,injectClassThisAssignmentIfMissing:()=>u3t,insertImports:()=>gnt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>PL,insertStatementAfterStandardPrologue:()=>Vge,insertStatementsAfterCustomPrologue:()=>ene,insertStatementsAfterStandardPrologue:()=>Rw,intersperse:()=>fe,intrinsicTagNameToString:()=>oEe,introducesArgumentsExoticObject:()=>SZe,inverseJsxOptionMap:()=>OEe,isAbstractConstructorSymbol:()=>Dbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>bp,isAccessibilityModifier:()=>$rt,isAccessor:()=>BB,isAccessorModifier:()=>ht,isAliasableExpression:()=>IAe,isAmbientModule:()=>a_,isAmbientPropertyDeclaration:()=>zJ,isAnyDirectorySeparator:()=>r0,isAnyImportOrBareOrAccessedRequire:()=>Xge,isAnyImportOrReExport:()=>MY,isAnyImportOrRequireStatement:()=>w7,isAnyImportSyntax:()=>SW,isAnySupportedFileExtension:()=>I$e,isApplicableVersionedTypesKey:()=>zEe,isArgumentExpressionOfElementAccess:()=>Mrt,isArray:()=>Ki,isArrayBindingElement:()=>d3,isArrayBindingOrAssignmentElement:()=>ZJ,isArrayBindingOrAssignmentPattern:()=>Ore,isArrayBindingPattern:()=>h2,isArrayLiteralExpression:()=>YI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>o9,isArrayTypeNode:()=>VF,isArrowFunction:()=>uA,isAsExpression:()=>Xd,isAssertClause:()=>cOt,isAssertEntry:()=>_$r,isAssertionExpression:()=>vd,isAssertsKeyword:()=>X,isAssignmentDeclaration:()=>Z7,isAssignmentExpression:()=>zm,isAssignmentOperator:()=>$D,isAssignmentPattern:()=>NY,isAssignmentTarget:()=>TF,isAsteriskToken:()=>vie,isAsyncFunction:()=>Q7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>n0,isAwaitExpression:()=>C1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>gQ,isBinaryExpression:()=>po,isBinaryLogicalOperator:()=>Hne,isBinaryOperatorToken:()=>ZOt,isBindableObjectDefinePropertyCall:()=>b3,isBindableStaticAccessExpression:()=>RW,isBindableStaticElementAccessExpression:()=>AAe,isBindableStaticNameExpression:()=>E3,isBindingElement:()=>mg,isBindingElementOfBareOrAccessedRequire:()=>kZe,isBindingName:()=>ZL,isBindingOrAssignmentElement:()=>xJ,isBindingOrAssignmentPattern:()=>GJ,isBindingPattern:()=>Nu,isBlock:()=>eg,isBlockLike:()=>$z,isBlockOrCatchScoped:()=>KJ,isBlockScope:()=>qJ,isBlockScopedContainerTopLevel:()=>Qge,isBooleanLiteral:()=>TY,isBreakOrContinueStatement:()=>EY,isBreakStatement:()=>h$r,isBuildCommand:()=>X5t,isBuildInfoFile:()=>V3t,isBuilderProgram:()=>trt,isBundle:()=>AOt,isCallChain:()=>vB,isCallExpression:()=>Ll,isCallExpressionTarget:()=>Zrt,isCallLikeExpression:()=>EF,isCallLikeOrFunctionLikeExpression:()=>Mre,isCallOrNewExpression:()=>gv,isCallOrNewExpressionTarget:()=>Lrt,isCallSignatureDeclaration:()=>Tg,isCallToHelper:()=>nk,isCaseBlock:()=>Sde,isCaseClause:()=>Rie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>MJ,isCatchClause:()=>fQ,isCatchClauseVariableDeclaration:()=>ULe,isCatchClauseVariableDeclarationOrBindingElement:()=>ine,isCheckJsEnabledForFile:()=>Iz,isCircularBuildOrder:()=>Kz,isClassDeclaration:()=>mm,isClassElement:()=>MI,isClassExpression:()=>wd,isClassInstanceProperty:()=>Wre,isClassLike:()=>xa,isClassMemberModifier:()=>Vre,isClassNamedEvaluationHelperBlock:()=>Xz,isClassOrTypeElement:()=>RY,isClassStaticBlockDeclaration:()=>Al,isClassThisAssignmentBlock:()=>Qde,isColonToken:()=>vEe,isCommaExpression:()=>DEe,isCommaListExpression:()=>bde,isCommaSequence:()=>Rde,isCommaToken:()=>SEe,isComment:()=>dWe,isCommonJsExportPropertyAssignment:()=>eAe,isCommonJsExportedExpression:()=>Lye,isCompoundAssignment:()=>Mde,isComputedNonLiteralName:()=>HY,isComputedPropertyName:()=>Un,isConciseBody:()=>I7,isConditionalExpression:()=>Mw,isConditionalTypeNode:()=>I2,isConstAssertion:()=>aEe,isConstTypeReference:()=>c2,isConstructSignatureDeclaration:()=>im,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>ik,isContextualKeyword:()=>mAe,isContinueStatement:()=>I$r,isCustomPrologue:()=>une,isDebuggerStatement:()=>m$r,isDeclaration:()=>em,isDeclarationBindingElement:()=>mW,isDeclarationFileName:()=>PC,isDeclarationName:()=>UT,isDeclarationNameOfEnumOrNamespace:()=>Rbe,isDeclarationReadonly:()=>Cf,isDeclarationStatement:()=>wge,isDeclarationWithTypeParameterChildren:()=>lne,isDeclarationWithTypeParameters:()=>cne,isDecorator:()=>So,isDecoratorTarget:()=>mMt,isDefaultClause:()=>vde,isDefaultImport:()=>S3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>xZe,isDeleteExpression:()=>OF,isDeleteTarget:()=>jye,isDeprecatedDeclaration:()=>kWe,isDestructuringAssignment:()=>Zx,isDiskPathRoot:()=>gE,isDoStatement:()=>f$r,isDocumentRegistryEntry:()=>J1e,isDotDotDotToken:()=>_de,isDottedName:()=>Qne,isDynamicName:()=>CAe,isEffectiveExternalModule:()=>m3,isEffectiveStrictModeSourceFile:()=>ane,isElementAccessChain:()=>bF,isElementAccessExpression:()=>Qg,isEmittedFileOfProgram:()=>Q3t,isEmptyArrayLiteral:()=>ALe,isEmptyBindingElement:()=>Rr,isEmptyBindingPattern:()=>_t,isEmptyObjectLiteral:()=>Sbe,isEmptyStatement:()=>x$e,isEmptyStringLiteral:()=>Oye,isEntityName:()=>mC,isEntityNameExpression:()=>Hd,isEnumConst:()=>OA,isEnumDeclaration:()=>Q3,isEnumMember:()=>HF,isEqualityOperatorKind:()=>vWe,isEqualsGreaterThanToken:()=>h9e,isExclamationToken:()=>xz,isExcludedFile:()=>gPt,isExclusivelyTypeOnlyImportOrExport:()=>xtt,isExpandoPropertyDeclaration:()=>aQ,isExportAssignment:()=>yf,isExportDeclaration:()=>Vh,isExportModifier:()=>y,isExportName:()=>w9e,isExportNamespaceAsDefaultDeclaration:()=>VY,isExportOrDefaultModifier:()=>FEe,isExportSpecifier:()=>D0,isExportsIdentifier:()=>y3,isExportsOrModuleExportsOrAlias:()=>CQ,isExpression:()=>un,isExpressionNode:()=>JT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>yMt,isExpressionOfOptionalChainRoot:()=>bY,isExpressionStatement:()=>OC,isExpressionWithTypeArguments:()=>g_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>NAe,isExternalModule:()=>Lm,isExternalModuleAugmentation:()=>BF,isExternalModuleImportEqualsDeclaration:()=>HL,isExternalModuleIndicator:()=>YT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>MF,isExternalModuleSymbol:()=>QD,isExternalOrCommonJsModule:()=>Sl,isFileLevelReservedGeneratedIdentifier:()=>BY,isFileLevelUniqueName:()=>S7,isFileProbablyExternalModule:()=>VEe,isFirstDeclarationOfSymbolParameter:()=>hnt,isFixablePromiseHandler:()=>Unt,isForInOrOfStatement:()=>VL,isForInStatement:()=>m9e,isForInitializer:()=>_E,isForOfStatement:()=>BEe,isForStatement:()=>Y3,isFullSourceFile:()=>AN,isFunctionBlock:()=>BW,isFunctionBody:()=>h7,isFunctionDeclaration:()=>ah,isFunctionExpression:()=>jA,isFunctionExpressionOrArrowFunction:()=>FF,isFunctionLike:()=>Eu,isFunctionLikeDeclaration:()=>Gd,isFunctionLikeKind:()=>hW,isFunctionLikeOrClassStaticBlockDeclaration:()=>A3,isFunctionOrConstructorTypeNode:()=>Ege,isFunctionOrModuleBlock:()=>kJ,isFunctionSymbol:()=>FZe,isFunctionTypeNode:()=>F_,isGeneratedIdentifier:()=>Gp,isGeneratedPrivateIdentifier:()=>FL,isGetAccessor:()=>wB,isGetAccessorDeclaration:()=>wg,isGetOrSetAccessorDeclaration:()=>TJ,isGlobalScopeAugmentation:()=>NB,isGlobalSourceFile:()=>fc,isGrammarError:()=>Lge,isHeritageClause:()=>_1,isHoistedFunction:()=>jge,isHoistedVariableStatement:()=>zge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>ebe,isIdentifierName:()=>HZe,isIdentifierOrThisTypeNode:()=>kOt,isIdentifierPart:()=>c1,isIdentifierStart:()=>Sd,isIdentifierText:()=>qh,isIdentifierTypePredicate:()=>vZe,isIdentifierTypeReference:()=>HLe,isIfStatement:()=>H3,isIgnoredFileFromWildCardWatching:()=>A1e,isImplicitGlob:()=>Ybe,isImportAttribute:()=>lOt,isImportAttributeName:()=>p7,isImportAttributes:()=>kU,isImportCall:()=>jp,isImportClause:()=>Hw,isImportDeclaration:()=>Yf,isImportEqualsDeclaration:()=>Zm,isImportKeyword:()=>an,isImportMeta:()=>pv,isImportOrExportSpecifier:()=>iS,isImportOrExportSpecifierName:()=>XMt,isImportSpecifier:()=>Ay,isImportTypeAssertionContainer:()=>C$r,isImportTypeNode:()=>qm,isImportable:()=>Znt,isInComment:()=>s9,isInCompoundLikeAssignment:()=>fAe,isInExpressionContext:()=>Ine,isInJSDoc:()=>QY,isInJSFile:()=>wo,isInJSXText:()=>TMt,isInJsonFile:()=>lAe,isInNonReferenceComment:()=>GMt,isInReferenceComment:()=>xMt,isInRightSideOfInternalImportEqualsDeclaration:()=>tWe,isInString:()=>jz,isInTemplateString:()=>Krt,isInTopLevelContext:()=>sAe,isInTypeQuery:()=>qY,isIncrementalBuildInfo:()=>m1e,isIncrementalBundleEmitBuildInfo:()=>A5t,isIncrementalCompilation:()=>WW,isIndexSignatureDeclaration:()=>R0,isIndexedAccessTypeNode:()=>_v,isInferTypeNode:()=>tR,isInfinityOrNaNString:()=>_z,isInitializedProperty:()=>r1e,isInitializedVariable:()=>Jne,isInsideJsxElement:()=>gWe,isInsideJsxElementOrAttribute:()=>wMt,isInsideNodeModules:()=>M1e,isInsideTemplateLiteral:()=>k1e,isInstanceOfExpression:()=>DAe,isInstantiatedModule:()=>jet,isInterfaceDeclaration:()=>d_,isInternalDeclaration:()=>Kre,isInternalModuleImportEqualsDeclaration:()=>_3,isInternalName:()=>K$e,isIntersectionTypeNode:()=>_f,isIntrinsicJsxName:()=>dU,isIterationStatement:()=>HT,isJSDoc:()=>oR,isJSDocAllType:()=>fOt,isJSDocAugmentsTag:()=>Zz,isJSDocAuthorTag:()=>S$r,isJSDocCallbackTag:()=>L$e,isJSDocClassTag:()=>hOt,isJSDocCommentContainingNode:()=>m7,isJSDocConstructSignature:()=>jY,isJSDocDeprecatedTag:()=>M$e,isJSDocEnumTag:()=>TEe,isJSDocFunctionType:()=>Die,isJSDocImplementsTag:()=>S9e,isJSDocImportTag:()=>RN,isJSDocIndexSignature:()=>gAe,isJSDocLikeText:()=>iet,isJSDocLink:()=>dOt,isJSDocLinkCode:()=>pOt,isJSDocLinkLike:()=>xx,isJSDocLinkPlain:()=>b$r,isJSDocMemberName:()=>U3,isJSDocNameReference:()=>Bde,isJSDocNamepathType:()=>E$r,isJSDocNamespaceBody:()=>Tye,isJSDocNode:()=>I3,isJSDocNonNullableType:()=>_9e,isJSDocNullableType:()=>Nie,isJSDocOptionalParameter:()=>ode,isJSDocOptionalType:()=>Z$e,isJSDocOverloadTag:()=>kie,isJSDocOverrideTag:()=>b9e,isJSDocParameterTag:()=>AS,isJSDocPrivateTag:()=>W$e,isJSDocPropertyLikeTag:()=>SY,isJSDocPropertyTag:()=>mOt,isJSDocProtectedTag:()=>O$e,isJSDocPublicTag:()=>V$e,isJSDocReadonlyTag:()=>P$e,isJSDocReturnTag:()=>E9e,isJSDocSatisfiesExpression:()=>iEe,isJSDocSatisfiesTag:()=>v9e,isJSDocSeeTag:()=>v$r,isJSDocSignature:()=>i9,isJSDocTag:()=>h3,isJSDocTemplateTag:()=>PB,isJSDocThisTag:()=>H$e,isJSDocThrowsTag:()=>w$r,isJSDocTypeAlias:()=>cS,isJSDocTypeAssertion:()=>IQ,isJSDocTypeExpression:()=>J3,isJSDocTypeLiteral:()=>GU,isJSDocTypeTag:()=>wde,isJSDocTypedefTag:()=>FU,isJSDocUnknownTag:()=>B$r,isJSDocUnknownType:()=>IOt,isJSDocVariadicType:()=>y9e,isJSXTagName:()=>nU,isJsonEqual:()=>nde,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>TN,isJsxAttributeLike:()=>OJ,isJsxAttributeName:()=>jLe,isJsxAttributes:()=>pQ,isJsxCallLike:()=>f3,isJsxChild:()=>WJ,isJsxClosingElement:()=>dQ,isJsxClosingFragment:()=>gOt,isJsxElement:()=>wN,isJsxExpression:()=>Tie,isJsxFragment:()=>X3,isJsxNamespacedName:()=>sR,isJsxOpeningElement:()=>iR,isJsxOpeningFragment:()=>Yw,isJsxOpeningLikeElement:()=>nI,isJsxOpeningLikeElementTagName:()=>CMt,isJsxSelfClosingElement:()=>xU,isJsxSpreadAttribute:()=>Fz,isJsxTagNameExpression:()=>WL,isJsxText:()=>t9,isJumpStatementTarget:()=>T1e,isKeyword:()=>w0,isKeywordOrPunctuation:()=>hAe,isKnownSymbol:()=>X7,isLabelName:()=>Ort,isLabelOfLabeledStatement:()=>Wrt,isLabeledStatement:()=>HW,isLateVisibilityPaintedStatement:()=>T7,isLeftHandSideExpression:()=>x_,isLet:()=>oS,isLineBreak:()=>ml,isLiteralComputedPropertyDeclarationName:()=>Rne,isLiteralExpression:()=>xL,isLiteralExpressionOfObject:()=>Zre,isLiteralImportTypeNode:()=>Gy,isLiteralKind:()=>vY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>iWe,isLiteralTypeLiteral:()=>Sge,isLiteralTypeNode:()=>BE,isLocalName:()=>YF,isLogicalOperator:()=>lLe,isLogicalOrCoalescingAssignmentExpression:()=>TAe,isLogicalOrCoalescingAssignmentOperator:()=>q7,isLogicalOrCoalescingBinaryExpression:()=>Yne,isLogicalOrCoalescingBinaryOperator:()=>RAe,isMappedTypeNode:()=>WB,isMemberName:()=>vw,isMetaProperty:()=>Du,isMethodDeclaration:()=>gu,isMethodOrAccessor:()=>LL,isMethodSignature:()=>Il,isMinusToken:()=>yde,isMissingDeclaration:()=>y$r,isMissingPackageJsonInfo:()=>bPt,isModifier:()=>hg,isModifierKind:()=>HD,isModifierLike:()=>fp,isModuleAugmentationExternal:()=>one,isModuleBlock:()=>vN,isModuleBody:()=>vge,isModuleDeclaration:()=>Lh,isModuleExportName:()=>C9e,isModuleExportsAccessExpression:()=>dN,isModuleIdentifier:()=>TW,isModuleName:()=>FOt,isModuleOrEnumDeclaration:()=>p3,isModuleReference:()=>kY,isModuleSpecifierLike:()=>CWe,isModuleWithStringLiteralName:()=>OY,isNameOfFunctionDeclaration:()=>Yrt,isNameOfModuleDeclaration:()=>Hrt,isNamedDeclaration:()=>sh,isNamedEvaluation:()=>Gb,isNamedEvaluationSource:()=>tbe,isNamedExportBindings:()=>Fre,isNamedExports:()=>bv,isNamedImportBindings:()=>kx,isNamedImports:()=>BN,isNamedImportsOrExports:()=>Une,isNamedTupleMember:()=>eR,isNamespaceBody:()=>Yre,isNamespaceExport:()=>ok,isNamespaceExportDeclaration:()=>wEe,isNamespaceImport:()=>Px,isNamespaceReexportDeclaration:()=>DZe,isNewExpression:()=>m2,isNewExpressionTarget:()=>ipe,isNewScopeNode:()=>pie,isNoSubstitutionTemplateLiteral:()=>MW,isNodeArray:()=>oN,isNodeArrayMultiLine:()=>GAe,isNodeDescendantOf:()=>DW,isNodeKind:()=>g7,isNodeLikeSystem:()=>Xm,isNodeModulesDirectory:()=>Od,isNodeWithPossibleHoistedDeclaration:()=>MZe,isNonContextualKeyword:()=>$ye,isNonGlobalAmbientModule:()=>sne,isNonNullAccess:()=>ade,isNonNullChain:()=>NJ,isNonNullExpression:()=>yv,isNonStaticMethodOrAccessorWithPrivateName:()=>n3t,isNotEmittedStatement:()=>uOt,isNullishCoalesce:()=>RJ,isNumber:()=>ws,isNumericLiteral:()=>yC,isNumericLiteralName:()=>yN,isObjectBindingElementWithoutPropertyName:()=>Z1e,isObjectBindingOrAssignmentElement:()=>CW,isObjectBindingOrAssignmentPattern:()=>FJ,isObjectBindingPattern:()=>$m,isObjectLiteralElement:()=>xY,isObjectLiteralElementLike:()=>Bw,isObjectLiteralExpression:()=>ag,isObjectLiteralMethod:()=>u2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>tAe,isObjectTypeDeclaration:()=>tQ,isOmittedExpression:()=>Ep,isOptionalChain:()=>ZC,isOptionalChainRoot:()=>fW,isOptionalDeclaration:()=>GB,isOptionalJSDocPropertyLikeTag:()=>uie,isOptionalTypeNode:()=>r9,isOuterExpression:()=>T9e,isOutermostOptionalChain:()=>g3,isOverrideModifier:()=>St,isPackageJsonInfo:()=>$9e,isPackedArrayLiteral:()=>rEe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>We,isParameterPropertyModifier:()=>wY,isParenthesizedExpression:()=>dI,isParenthesizedTypeNode:()=>Cv,isParseTreeNode:()=>NL,isPartOfParameterDeclaration:()=>KL,isPartOfTypeNode:()=>kw,isPartOfTypeOnlyImportOrExportDeclaration:()=>bge,isPartOfTypeQuery:()=>cAe,isPartiallyEmittedExpression:()=>gy,isPatternMatch:()=>qd,isPinnedComment:()=>v7,isPlainJsFile:()=>FY,isPlusToken:()=>kz,isPossiblyTypeArgumentPosition:()=>D1e,isPostfixUnaryExpression:()=>sk,isPrefixUnaryExpression:()=>N0,isPrimitiveLiteralValue:()=>Sz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>hC,isPrivateIdentifierPropertyAccessExpression:()=>IW,isPrivateIdentifierSymbol:()=>XZe,isProgramUptoDate:()=>Ltt,isPrologueDirective:()=>aS,isPropertyAccessChain:()=>Nx,isPropertyAccessEntityNameExpression:()=>kF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>LJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Pre,isPropertyAssignment:()=>Cm,isPropertyDeclaration:()=>pi,isPropertyName:()=>PI,isPropertyNameLiteral:()=>xw,isPropertySignature:()=>ss,isPrototypeAccess:()=>xF,isPrototypePropertyAssignment:()=>Ene,isPunctuation:()=>qye,isPushOrUnshiftIdentifier:()=>rbe,isQualifiedName:()=>zi,isQuestionDotToken:()=>Bie,isQuestionOrExclamationToken:()=>DOt,isQuestionOrPlusOrMinusToken:()=>GOt,isQuestionToken:()=>$T,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>xOt,isRecognizedTripleSlashComment:()=>tne,isReferenceFileLocation:()=>Kie,isReferencedFile:()=>r5,isRegularExpressionLiteral:()=>EEe,isRequireCall:()=>ly,isRequireVariableStatement:()=>hne,isRestParameter:()=>TB,isRestTypeNode:()=>n9,isReturnStatement:()=>C2,isReturnStatementWithFixablePromiseHandler:()=>OWe,isRightSideOfAccessExpression:()=>Ebe,isRightSideOfInstanceofExpression:()=>gLe,isRightSideOfPropertyAccess:()=>ese,isRightSideOfQualifiedName:()=>_Mt,isRightSideOfQualifiedNameOrPropertyAccess:()=>$7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>uLe,isRootedDiskPath:()=>Up,isSameEntityName:()=>iU,isSatisfiesExpression:()=>Xg,isSemicolonClassElement:()=>oOt,isSetAccessor:()=>Av,isSetAccessorDeclaration:()=>kg,isShiftOperatorOrHigher:()=>tet,isShorthandAmbientModuleSymbol:()=>PY,isShorthandPropertyAssignment:()=>l0,isSideEffectImport:()=>cEe,isSignedNumericLiteral:()=>xne,isSimpleCopiableExpression:()=>_Q,isSimpleInlineableExpression:()=>DN,isSimpleParameterList:()=>n1e,isSingleOrDoubleQuote:()=>mne,isSolutionConfig:()=>Bet,isSourceElement:()=>qLe,isSourceFile:()=>al,isSourceFileFromLibrary:()=>gse,isSourceFileJS:()=>s0,isSourceFileNotJson:()=>uAe,isSourceMapping:()=>e3t,isSpecialPropertyDeclaration:()=>Qye,isSpreadAssignment:()=>Mx,isSpreadElement:()=>cf,isStatement:()=>Lc,isStatementButNotDeclaration:()=>VJ,isStatementOrBlock:()=>Xre,isStatementWithLocals:()=>Fge,isStatic:()=>lg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>zY,isStringAndEmptyAnonymousObjectIntersection:()=>kMt,isStringDoubleQuoted:()=>Cne,isStringLiteral:()=>Lg,isStringLiteralLike:()=>CA,isStringLiteralOrJsxExpression:()=>PJ,isStringLiteralOrTemplate:()=>jMt,isStringOrNumericLiteralLike:()=>I1,isStringOrRegularExpressionOrTemplateLiteral:()=>qrt,isStringTextContainingNode:()=>Lre,isSuperCall:()=>xy,isSuperKeyword:()=>rr,isSuperProperty:()=>Fy,isSupportedSourceFileName:()=>Ube,isSwitchStatement:()=>Ede,isSyntaxList:()=>xie,isSyntheticExpression:()=>M3,isSyntheticReference:()=>Gz,isTagName:()=>Prt,isTaggedTemplateExpression:()=>QI,isTaggedTemplateTag:()=>hMt,isTemplateExpression:()=>PF,isTemplateHead:()=>AQ,isTemplateLiteral:()=>_W,isTemplateLiteralKind:()=>MD,isTemplateLiteralToken:()=>yge,isTemplateLiteralTypeNode:()=>rR,isTemplateLiteralTypeSpan:()=>EN,isTemplateMiddle:()=>Sie,isTemplateMiddleOrTemplateTail:()=>d7,isTemplateSpan:()=>wie,isTemplateTail:()=>Cde,isTextWhiteSpaceLike:()=>VMt,isThis:()=>tse,isThisContainerOrFunctionBlock:()=>TZe,isThisIdentifier:()=>DF,isThisInTypeQuery:()=>jL,isThisInitializedDeclaration:()=>oAe,isThisInitializedObjectBindingExpression:()=>NZe,isThisProperty:()=>dne,isThisTypeNode:()=>Ox,isThisTypeParameter:()=>yz,isThisTypePredicate:()=>BZe,isThrowStatement:()=>F$e,isToken:()=>kL,isTokenKind:()=>A7,isTraceEnabled:()=>XW,isTransientSymbol:()=>ww,isTrivia:()=>uU,isTryStatement:()=>DU,isTupleTypeNode:()=>Pw,isTypeAlias:()=>vne,isTypeAliasDeclaration:()=>OB,isTypeAssertionExpression:()=>WF,isTypeDeclaration:()=>oQ,isTypeElement:()=>Dx,isTypeKeyword:()=>cpe,isTypeKeywordTokenOrIdentifier:()=>IWe,isTypeLiteralNode:()=>bh,isTypeNode:()=>uc,isTypeNodeKind:()=>WAe,isTypeOfExpression:()=>SN,isTypeOnlyExportDeclaration:()=>DJ,isTypeOnlyImportDeclaration:()=>aN,isTypeOnlyImportOrExportDeclaration:()=>cN,isTypeOperatorNode:()=>VB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>vE,isTypeQueryNode:()=>Ow,isTypeReferenceNode:()=>oh,isTypeReferenceType:()=>C7,isTypeUsableAsPropertyName:()=>p2,isUMDExportSymbol:()=>VAe,isUnaryExpression:()=>Hre,isUnaryExpressionWithWrite:()=>lN,isUnicodeIdentifierStart:()=>It,isUnionTypeNode:()=>gS,isUrl:()=>s_,isValidBigIntString:()=>aie,isValidESSymbolDeclaration:()=>EZe,isValidTypeOnlyAliasUseSite:()=>$L,isValueSignatureDeclaration:()=>B3,isVarAwaitUsing:()=>Bd,isVarConst:()=>sI,isVarConstLike:()=>XT,isVarUsing:()=>iI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>D7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>wW,isVariableDeclarationInitializedToRequire:()=>F7,isVariableDeclarationList:()=>A_,isVariableLike:()=>N7,isVariableStatement:()=>Eh,isVoidExpression:()=>nR,isWatchSet:()=>Nbe,isWhileStatement:()=>G$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>hu,isWithStatement:()=>aOt,isWriteAccess:()=>x3,isWriteOnlyAccess:()=>ZAe,isYieldExpression:()=>Qd,jsxModeNeedsExplicitImport:()=>xnt,keywordPart:()=>S1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>uet,libs:()=>F9e,lineBreakPart:()=>ase,loadModuleFromGlobalCache:()=>ZPt,loadWithModeAwareCache:()=>p1e,makeIdentifierFromModuleName:()=>Nw,makeImport:()=>$W,makeStringLiteral:()=>lpe,mangleScopedPackageName:()=>Yie,map:()=>lt,mapAllOrFail:()=>$t,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Ot,mapOneOrMany:()=>Rnt,mapToDisplayParts:()=>eO,matchFiles:()=>Xbe,matchPatternOrExact:()=>jbe,matchedText:()=>Cw,matchesExclude:()=>U9e,matchesExcludeWorker:()=>K9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>yLe,memoize:()=>LA,memoizeOne:()=>VA,min:()=>oa,minAndMax:()=>OLe,missingFileModifiedTime:()=>xh,modifierToFlag:()=>eQ,modifiersToFlags:()=>Zw,moduleExportNameIsDefault:()=>dv,moduleExportNameTextEscaped:()=>vF,moduleExportNameTextUnescaped:()=>UD,moduleOptionDeclaration:()=>JOt,moduleResolutionIsEqualTo:()=>xge,moduleResolutionNameAndModeGetter:()=>SVe,moduleResolutionOptionDeclarations:()=>Aet,moduleResolutionSupportsPackageJsonExportsAndImports:()=>bU,moduleResolutionUsesNodeModules:()=>hWe,moduleSpecifierToValidIdentifier:()=>Y1e,moduleSpecifiers:()=>XF,moduleSupportsImportAttributes:()=>wLe,moduleSymbolToValidIdentifier:()=>H1e,moveEmitHelpers:()=>a9e,moveRangeEnd:()=>xAe,moveRangePastDecorators:()=>tk,moveRangePastModifiers:()=>Iv,moveRangePos:()=>ek,moveSyntheticComments:()=>i9e,mutateMap:()=>sz,mutateMapSkippingNewValues:()=>IN,needsParentheses:()=>EWe,needsScopeMarker:()=>f7,newCaseClauseTracker:()=>FWe,newPrivateEnvironment:()=>s3t,noEmitNotification:()=>a1e,noEmitSubstitution:()=>Jde,noTransformers:()=>Z3t,noTruncationMaximumTruncationLength:()=>zre,nodeCanBeDecorated:()=>eU,nodeCoreModules:()=>BU,nodeHasName:()=>c3,nodeIsDecorated:()=>tU,nodeIsMissing:()=>af,nodeIsPresent:()=>d1,nodeIsSynthesized:()=>ap,nodeModuleNameResolver:()=>wPt,nodeModulesPathPart:()=>Hx,nodeNextJsonConfigResolver:()=>TPt,nodeOrChildIsDecorated:()=>fne,nodeOverlapsWithStartEnd:()=>sWe,nodePosToString:()=>Zge,nodeSeenTracker:()=>ise,nodeStartsNewLexicalEnvironment:()=>nbe,noop:()=>Dc,noopFileWatcher:()=>qie,normalizePath:()=>su,normalizeSlashes:()=>xp,normalizeSpans:()=>vI,not:()=>dC,notImplemented:()=>rl,notImplementedResolver:()=>P3t,nullNodeConverters:()=>dEe,nullParenthesizerRules:()=>AEe,nullTransformationContext:()=>l1e,objectAllocator:()=>VC,operatorPart:()=>gpe,optionDeclarations:()=>Qw,optionMapToObject:()=>M9e,optionsAffectingProgramStructure:()=>zOt,optionsForBuild:()=>pet,optionsForWatch:()=>Pz,optionsHaveChanges:()=>B0,or:()=>Qp,orderedRemoveItem:()=>Xl,orderedRemoveItemAt:()=>WA,packageIdToPackageName:()=>XJ,packageIdToString:()=>gN,parameterIsThisKeyword:()=>NF,parameterNamePart:()=>OMt,parseBaseNodeFactory:()=>POt,parseBigInt:()=>MLe,parseBuildCommand:()=>sPt,parseCommandLine:()=>nPt,parseCommandLineWorker:()=>fet,parseConfigFileTextToJson:()=>het,parseConfigFileWithSystem:()=>B5t,parseConfigHostFromCompilerHostLike:()=>NVe,parseCustomTypeOption:()=>W9e,parseIsolatedEntityName:()=>Oz,parseIsolatedJSDocComment:()=>HOt,parseJSDocTypeExpressionForTests:()=>z$r,parseJsonConfigFileContent:()=>wen,parseJsonSourceFileConfigFileContent:()=>QEe,parseJsonText:()=>WEe,parseListTypeOption:()=>tPt,parseNodeFactory:()=>j3,parseNodeModuleFromPath:()=>KEe,parsePackageName:()=>jEe,parsePseudoBigInt:()=>hz,parseValidBigInt:()=>eEe,pasteEdits:()=>kst,patchWriteFileEnsuringDirectory:()=>n2,pathContainsNodeModules:()=>UW,pathIsAbsolute:()=>AE,pathIsBareSpecifier:()=>jh,pathIsRelative:()=>mp,patternText:()=>$1,performIncrementalCompilation:()=>w5t,performance:()=>Cb,positionBelongsToNode:()=>Qrt,positionIsASICandidate:()=>BWe,positionIsSynthesized:()=>kB,positionsAreOnSameLine:()=>SE,preProcessFile:()=>Vin,probablyUsesSemicolons:()=>P1e,processCommentPragmas:()=>aet,processPragmasIntoFields:()=>cet,processTaggedTemplateExpression:()=>gtt,programContainsEsModules:()=>ZMt,programContainsModules:()=>FMt,projectReferenceIsEqualTo:()=>qre,propertyNamePart:()=>PMt,pseudoBigIntToString:()=>OW,punctuationPart:()=>G0,pushIfUnique:()=>Qi,quote:()=>ppe,quotePreferenceFromString:()=>cnt,rangeContainsPosition:()=>rse,rangeContainsPositionExclusive:()=>R1e,rangeContainsRange:()=>uy,rangeContainsRangeExclusive:()=>bMt,rangeContainsStartEnd:()=>N1e,rangeEndIsOnSameLineAsRangeStart:()=>Xne,rangeEndPositionsAreOnSameLine:()=>pLe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>D3,rangeOfNode:()=>qbe,rangeOfTypeParameters:()=>$be,rangeOverlapsWithStartEnd:()=>spe,rangeStartIsOnSameLineAsRangeEnd:()=>fLe,rangeStartPositionsAreOnSameLine:()=>rz,readBuilderProgram:()=>PVe,readConfigFile:()=>HEe,readJson:()=>N3,readJsonConfigFile:()=>oPt,readJsonOrUndefined:()=>wbe,reduceEachLeadingCommentRange:()=>RL,reduceEachTrailingCommentRange:()=>hf,reduceLeft:()=>Kl,reduceLeftIterator:()=>ne,reducePathComponents:()=>i2,refactor:()=>tq,regExpEscape:()=>g$e,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Or,removeAllComments:()=>Tz,removeEmitHelper:()=>B$e,removeExtension:()=>oie,removeFileExtension:()=>a0,removeIgnoredPath:()=>GVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Gm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>sy,repeatString:()=>G1e,replaceElement:()=>Ql,replaceFirstStar:()=>Z3,resolutionExtensionIsTSOrJson:()=>pz,resolveConfigFileProjectName:()=>frt,resolveJSModule:()=>SPt,resolveLibrary:()=>tVe,resolveModuleName:()=>WU,resolveModuleNameFromCache:()=>stn,resolvePackageNameToPackageJson:()=>Net,resolvePath:()=>fE,resolveProjectReferencePath:()=>Jz,resolveTripleslashReference:()=>Ttt,resolveTypeReferenceDirective:()=>_Pt,resolvingEmptyArray:()=>jre,returnFalse:()=>As,returnNoopFileWatcher:()=>tpe,returnTrue:()=>Nf,returnUndefined:()=>Am,returnsPromise:()=>Jnt,rewriteModuleSpecifier:()=>Yz,sameFlatMap:()=>Fr,sameMap:()=>Er,sameMapping:()=>Ktn,scanTokenAtPosition:()=>qs,scanner:()=>p_,semanticDiagnosticsOptionDeclarations:()=>UOt,serializeCompilerOptions:()=>bet,server:()=>Pfn,servicesVersion:()=>won,setCommentRange:()=>yh,setConfigFileInOptions:()=>Eet,setConstantValue:()=>o9e,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>OVe,setIdentifierAutoGenerate:()=>_ie,setIdentifierGeneratedImportReference:()=>u9e,setIdentifierTypeArguments:()=>Vx,setInternalEmitFlags:()=>Cie,setLocalizedDiagnosticMessages:()=>yU,setNodeChildren:()=>COt,setNodeFlags:()=>QLe,setObjectAllocator:()=>_Le,setOriginalNode:()=>ua,setParent:()=>UA,setParentRecursive:()=>e9,setPrivateIdentifier:()=>OU,setSnippetElement:()=>_Ee,setSourceMapRange:()=>Yg,setStackTraceLimit:()=>VT,setStartsOnNewLine:()=>Yd,setSyntheticLeadingComments:()=>LB,setSyntheticTrailingComments:()=>O3,setSys:()=>SI,setSysLog:()=>FC,setTextRange:()=>gn,setTextRangeEnd:()=>vU,setTextRangePos:()=>mz,setTextRangePosEnd:()=>xB,setTextRangePosWidth:()=>tEe,setTokenSourceMapRange:()=>hEe,setTypeNode:()=>c9e,setUILocale:()=>Zs,setValueDeclaration:()=>V7,shouldAllowImportingTsExtension:()=>Qie,shouldPreserveConstEnums:()=>Lb,shouldRewriteModuleSpecifier:()=>Sne,shouldUseUriStyleNodeCoreModules:()=>xWe,showModuleSpecifier:()=>mLe,signatureHasRestParameter:()=>x0,signatureToDisplayParts:()=>Cnt,single:()=>Xa,singleElementArray:()=>K_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ws,skipAlias:()=>LC,skipConstraint:()=>snt,skipOuterExpressions:()=>XI,skipParentheses:()=>JA,skipPartiallyEmittedExpressions:()=>l2,skipTrivia:()=>Yu,skipTypeChecking:()=>F3,skipTypeCheckingIgnoringNoCheck:()=>PLe,skipTypeParentheses:()=>P7,skipWhile:()=>up,sliceAfter:()=>zbe,some:()=>zt,sortAndDeduplicate:()=>ol,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>det,sourceFileMayBeEmitted:()=>kW,sourceMapCommentRegExp:()=>$et,sourceMapCommentRegExpDontCareLineStart:()=>zPt,spacePart:()=>TI,spanMap:()=>yn,startEndContainsRange:()=>FAe,startEndOverlapsWithStartEnd:()=>oWe,startOnNewLine:()=>k0,startTracing:()=>hd,startsWith:()=>Ac,startsWithDirectory:()=>nv,startsWithUnderscore:()=>knt,startsWithUseStrict:()=>BOt,stringContainsAt:()=>nHt,stringToToken:()=>Ta,stripQuotes:()=>A2,supportedDeclarationExtensions:()=>ede,supportedJSExtensionsFlat:()=>EU,supportedLocaleDirectories:()=>av,supportedTSExtensionsFlat:()=>Jbe,supportedTSImplementationExtensions:()=>iie,suppressLeadingAndTrailingTrivia:()=>Oy,suppressLeadingTrivia:()=>gEe,suppressTrailingTrivia:()=>t9e,symbolEscapedNameNoDefault:()=>mWe,symbolName:()=>of,symbolNameNoDefault:()=>unt,symbolToDisplayParts:()=>Ape,sys:()=>Ed,sysLog:()=>_h,tagNamesAreEquivalent:()=>q3,takeWhile:()=>n_,targetOptionDeclaration:()=>get,targetToLibMap:()=>Is,testFormatSettings:()=>oin,textChangeRangeIsUnchanged:()=>ay,textChangeRangeNewSpan:()=>nN,textChanges:()=>xo,textOrKeywordPart:()=>mnt,textPart:()=>fS,textRangeContainsPositionInclusive:()=>nl,textRangeContainsTextSpan:()=>Mg,textRangeIntersectsWithTextSpan:()=>a3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>rd,textSpanContainsTextSpan:()=>kd,textSpanEnd:()=>Rs,textSpanIntersection:()=>hA,textSpanIntersectsWith:()=>rS,textSpanIntersectsWithPosition:()=>rN,textSpanIntersectsWithTextSpan:()=>Nb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>l1,textSpanOverlapsWith:()=>Gh,textSpansEqual:()=>ose,textToKeywordObj:()=>iv,timestamp:()=>Zg,toArray:()=>cc,toBuilderFileEmit:()=>f5t,toBuilderStateFileInfoForMultiEmit:()=>p5t,toEditorSettings:()=>q1e,toFileNameLowerCase:()=>Qm,toPath:()=>Pu,toProgramEmitPending:()=>I5t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>md,tokenIsIdentifierOrKeywordOrGreaterThan:()=>_B,tokenToString:()=>Vi,trace:()=>tu,tracing:()=>ki,tracingEnabled:()=>jl,transferSourceFileChildren:()=>_Ot,transform:()=>Lon,transformClassFields:()=>f3t,transformDeclarations:()=>ftt,transformECMAScriptModule:()=>ptt,transformES2015:()=>R3t,transformES2016:()=>T3t,transformES2017:()=>C3t,transformES2018:()=>_3t,transformES2019:()=>y3t,transformES2020:()=>b3t,transformES2021:()=>E3t,transformESDecorators:()=>m3t,transformESNext:()=>S3t,transformGenerators:()=>N3t,transformImpliedNodeFormatDependentModule:()=>k3t,transformJsx:()=>w3t,transformLegacyDecorators:()=>h3t,transformModule:()=>dtt,transformNamedEvaluation:()=>y1,transformNodes:()=>c1e,transformSystemModule:()=>D3t,transformTypeScript:()=>p3t,transpile:()=>Jin,transpileDeclaration:()=>Qin,transpileModule:()=>BHt,transpileOptionValueCompilerOptions:()=>qOt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>RWe,tryCast:()=>Gs,tryDirectoryExists:()=>TWe,tryExtractTSExtension:()=>tz,tryFileExists:()=>lse,tryGetClassExtendingExpressionWithTypeArguments:()=>ybe,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>bbe,tryGetDirectories:()=>wWe,tryGetExtensionFromPath:()=>jT,tryGetImportFromModuleSpecifier:()=>O7,tryGetJSDocSatisfiesTypeNode:()=>cde,tryGetModuleNameFromFile:()=>xEe,tryGetModuleSpecifierFromDeclaration:()=>JY,tryGetNativePerformanceHooks:()=>US,tryGetPropertyAccessOrIdentifierToString:()=>ZW,tryGetPropertyNameOfBindingOrAssignmentElement:()=>N9e,tryGetSourceMappingURL:()=>qPt,tryGetTextOfPropertyName:()=>YY,tryParseJson:()=>IU,tryParsePattern:()=>sQ,tryParsePatterns:()=>dz,tryParseRawSourceMap:()=>$Pt,tryReadDirectory:()=>vnt,tryReadFile:()=>kde,tryRemoveDirectoryPrefix:()=>JAe,tryRemoveExtension:()=>WLe,tryRemovePrefix:()=>JS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>LU,typeAcquisitionDeclarations:()=>L9e,typeAliasNamePart:()=>MMt,typeDirectiveIsEqualTo:()=>Gge,typeKeywords:()=>int,typeParameterNamePart:()=>HMt,typeToDisplayParts:()=>V1e,unchangedPollThresholds:()=>e0,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>qEe,unorderedRemoveItem:()=>rf,unprefixedNodeCoreModules:()=>Aie,unreachableCodeIsError:()=>vLe,unsetNodeChildren:()=>Q$e,unusedLabelIsError:()=>BLe,unwrapInnermostStatementOfLabel:()=>Vye,unwrapParenthesizedExpression:()=>gde,updateErrorForNoInputFiles:()=>J9e,updateLanguageServiceSourceFile:()=>_it,updateMissingFilePathsWatch:()=>vtt,updateResolutionField:()=>Oie,updateSharedExtendedConfigFileWatcher:()=>_Ve,updateSourceFile:()=>set,updateWatchingWildcardDirectories:()=>g1e,usingSingleLineStringWriter:()=>yW,utf16EncodeAsString:()=>tN,validateLocaleAndSetLanguage:()=>Bx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Ode,visitCommaListElements:()=>t1e,visitEachChild:()=>_s,visitFunctionBody:()=>pS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>qet,visitNode:()=>Mr,visitNodes:()=>Os,visitParameterList:()=>wI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>wOt,walkUpParenthesizedExpressions:()=>fv,walkUpParenthesizedTypes:()=>Tne,walkUpParenthesizedTypesAndGetParentAndChild:()=>Kye,whitespaceOrMapCommentRegExp:()=>ett,writeCommentRange:()=>fU,writeFile:()=>BAe,writeFileEnsuringDirectories:()=>dbe,zipWith:()=>ce}),e.exports=A(f);var I="5.9",C="5.9.3",b=(s=>(s[s.LessThan=-1]="LessThan",s[s.EqualTo=0]="EqualTo",s[s.GreaterThan=1]="GreaterThan",s))(b||{}),E=[],N=new Map;function B(s){return s!==void 0?s.length:0}function F(s,c){if(s!==void 0)for(let g=0;g=0;g--){let d=c(s[g],g);if(d)return d}}function J(s,c){if(s!==void 0)for(let g=0;g=0;d--){let h=s[d];if(c(h,d))return h}}function Se(s,c,g){if(s===void 0)return-1;for(let d=g??0;d=0;d--)if(c(s[d],d))return d;return-1}function k(s,c,g=bg){if(s!==void 0){for(let d=0;d{let[_,S]=c(h,d);g.set(_,S)}),g}function zt(s,c){if(s!==void 0)if(c!==void 0){for(let g=0;g0;return!1}function Fn(s,c,g){let d;for(let h=0;hs[S])}function xi(s,c){let g=[];for(let d=0;d0&&d(c,s[S-1]))return!1;if(S0&&pe.assertGreaterThanOrEqual(g(c[_],c[_-1]),0);t:for(let S=h;hS&&pe.assertGreaterThanOrEqual(g(s[h],s[h-1]),0),g(c[_],s[h])){case-1:d.push(c[_]);continue e;case 0:continue e;case 1:continue t}}return d}function Ft(s,c){return c===void 0?s:s===void 0?[c]:(s.push(c),s)}function zr(s,c){return s===void 0?c:c===void 0?s:Ki(s)?Ki(c)?Nn(s,c):Ft(s,c):Ki(c)?Ft(c,s):[s,c]}function Rn(s,c){return c<0?s.length+c:c}function Pr(s,c,g,d){if(c===void 0||c.length===0)return s;if(s===void 0)return c.slice(g,d);g=g===void 0?0:Rn(c,g),d=d===void 0?c.length:Rn(c,d);for(let h=g;hg(s[d],s[h])||Zt(d,h))}function bo(s,c){return s.length===0?E:s.slice().sort(c)}function*Qa(s){for(let c=s.length-1;c>=0;c--)yield s[c]}function gc(s,c,g,d){for(;gs?.at(c):(s,c)=>{if(s!==void 0&&(c=Rn(s,c),c>1),T=g(s[R],R);switch(d(T,c)){case-1:_=R+1;break;case 0:return R;case 1:S=R-1;break}}return~_}function Kl(s,c,g,d,h){if(s&&s.length>0){let _=s.length;if(_>0){let S=d===void 0||d<0?0:d,R=h===void 0||S+h>_-1?_-1:S+h,T;for(arguments.length<=2?(T=s[S],S++):T=g;S<=R;)T=c(T,s[S],S),S++;return T}}return g}var Ju=Object.prototype.hasOwnProperty;function Da(s,c){return Ju.call(s,c)}function fu(s,c){return Ju.call(s,c)?s[c]:void 0}function yg(s){let c=[];for(let g in s)Ju.call(s,g)&&c.push(g);return c}function _I(s){let c=[];do{let g=Object.getOwnPropertyNames(s);for(let d of g)Qi(c,d)}while(s=Object.getPrototypeOf(s));return c}function Kh(s){let c=[];for(let g in s)Ju.call(s,g)&&c.push(s[g]);return c}function Ri(s,c){let g=new Array(s);for(let d=0;d100&&g>c.length>>1){let R=c.length-g;c.copyWithin(0,g),c.length=R,g=0}return S}return{enqueue:h,dequeue:_,isEmpty:d}}function so(s,c){let g=new Map,d=0;function*h(){for(let S of g.values())Ki(S)?yield*S:yield S}let _={has(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);return Ki(T)?k(T,S,c):c(T,S)},add(S){let R=s(S);if(g.has(R)){let T=g.get(R);if(Ki(T))k(T,S,c)||(T.push(S),d++);else{let O=T;c(O,S)||(g.set(R,[O,S]),d++)}}else g.set(R,S),d++;return this},delete(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);if(Ki(T)){for(let O=0;Oh(),[Symbol.toStringTag]:g[Symbol.toStringTag]};return _}function Ki(s){return Array.isArray(s)}function cc(s){return Ki(s)?s:[s]}function Xs(s){return typeof s=="string"}function ws(s){return typeof s=="number"}function Gs(s,c){return s!==void 0&&c(s)?s:void 0}function Ma(s,c){return s!==void 0&&c(s)?s:pe.fail(`Invalid cast. The supplied value ${s} did not pass the test '${pe.getFunctionName(c)}'.`)}function Dc(s){}function As(){return!1}function Nf(){return!0}function Am(){}function Zl(s){return s}function rc(s){return s.toLowerCase()}var ad=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function Qm(s){return ad.test(s)?s.replace(ad,rc):s}function rl(){throw new Error("Not implemented")}function LA(s){let c;return()=>(s&&(c=s(),s=void 0),c)}function VA(s){let c=new Map;return g=>{let d=`${typeof g}:${g}`,h=c.get(d);return h===void 0&&!c.has(d)&&(h=s(g),c.set(d,h)),h}}var bl=(s=>(s[s.None=0]="None",s[s.Normal=1]="Normal",s[s.Aggressive=2]="Aggressive",s[s.VeryAggressive=3]="VeryAggressive",s))(bl||{});function bg(s,c){return s===c}function Yp(s,c){return s===c||s!==void 0&&c!==void 0&&s.toUpperCase()===c.toUpperCase()}function YA(s,c){return bg(s,c)}function vr(s,c){return s===c?0:s===void 0?-1:c===void 0?1:sc(g,d)===-1?g:d)}function Fs(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toUpperCase(),c=c.toUpperCase(),sc?1:0)}function Oa(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toLowerCase(),c=c.toLowerCase(),sc?1:0)}function Ca(s,c){return vr(s,c)}function gd(s){return s?Fs:Ca}var Dp=(()=>{return c;function s(g,d,h){if(g===d)return 0;if(g===void 0)return-1;if(d===void 0)return 1;let _=h(g,d);return _<0?-1:_>0?1:0}function c(g){let d=new Intl.Collator(g,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(h,_)=>s(h,_,d)}})(),sp,QA;function ff(){return QA}function Zs(s){QA!==s&&(QA=s,sp=void 0)}function io(s,c){return sp??(sp=Dp(QA)),sp(s,c)}function Ea(s,c,g,d){return s===c?0:s===void 0?-1:c===void 0?1:d(s[g],c[g])}function Hl(s,c){return Zt(s?1:0,c?1:0)}function Dr(s,c,g){let d=Math.max(2,Math.floor(s.length*.34)),h=Math.floor(s.length*.4)+1,_;for(let S of c){let R=g(S);if(R!==void 0&&Math.abs(R.length-s.length)<=d){if(R===s||R.length<3&&R.toLowerCase()!==s.toLowerCase())continue;let T=On(s,R,h-.1);if(T===void 0)continue;pe.assert(Tg?R-g:1),V=Math.floor(c.length>g+R?g+R:c.length);h[0]=R;let M=R;for(let re=1;reg)return;let ee=d;d=h,h=ee}let S=d[c.length];return S>g?void 0:S}function di(s,c,g){let d=s.length-c.length;return d>=0&&(g?Yp(s.slice(d),c):s.indexOf(c,d)===d)}function aa(s,c){return di(s,c)?s.slice(0,s.length-c.length):s}function Bo(s,c){return di(s,c)?s.slice(0,s.length-c.length):void 0}function us(s){let c=s.length;for(let g=c-1;g>0;g--){let d=s.charCodeAt(g);if(d>=48&&d<=57)do--g,d=s.charCodeAt(g);while(g>0&&d>=48&&d<=57);else if(g>4&&(d===110||d===78)){if(--g,d=s.charCodeAt(g),d!==105&&d!==73||(--g,d=s.charCodeAt(g),d!==109&&d!==77))break;--g,d=s.charCodeAt(g)}else break;if(d!==45&&d!==46)break;c=g}return c===s.length?s:s.slice(0,c)}function Xl(s,c){for(let g=0;gg===c)}function op(s,c){for(let g=0;gh&&qd(R,g)&&(h=R.prefix.length,d=S)}return d}function Ac(s,c,g){return g?Yp(s.slice(0,c.length),c):s.lastIndexOf(c,0)===0}function Gm(s,c){return Ac(s,c)?s.substr(c.length):s}function JS(s,c,g=Zl){return Ac(g(s),g(c))?s.substring(c.length):void 0}function qd({prefix:s,suffix:c},g){return g.length>=s.length+c.length&&Ac(g,s)&&di(g,c)}function hh(s,c){return g=>s(g)&&c(g)}function Qp(...s){return(...c)=>{let g;for(let d of s)if(g=d(...c),g)return g;return g}}function dC(s){return(...c)=>!s(...c)}function oE(s){}function K_(s){return s===void 0?void 0:[s]}function ey(s,c,g,d,h,_){_??(_=Dc);let S=0,R=0,T=s.length,O=c.length,V=!1;for(;S(s[s.Off=0]="Off",s[s.Error=1]="Error",s[s.Warning=2]="Warning",s[s.Info=3]="Info",s[s.Verbose=4]="Verbose",s))(hb||{}),pe;(s=>{let c=0;s.currentLogLevel=2,s.isDebugging=!1;function g(yr){return s.currentLogLevel<=yr}s.shouldLog=g;function d(yr,hn){s.loggingHost&&g(yr)&&s.loggingHost.log(yr,hn)}function h(yr){d(3,yr)}s.log=h,(yr=>{function hn(Pa){d(1,Pa)}yr.error=hn;function Pi(Pa){d(2,Pa)}yr.warn=Pi;function co(Pa){d(3,Pa)}yr.log=co;function pa(Pa){d(4,Pa)}yr.trace=pa})(h=s.log||(s.log={}));let _={};function S(){return c}s.getAssertionLevel=S;function R(yr){let hn=c;if(c=yr,yr>hn)for(let Pi of yg(_)){let co=_[Pi];co!==void 0&&s[Pi]!==co.assertion&&yr>=co.level&&(s[Pi]=co,_[Pi]=void 0)}}s.setAssertionLevel=R;function T(yr){return c>=yr}s.shouldAssert=T;function O(yr,hn){return T(yr)?!0:(_[hn]={level:yr,assertion:s[hn]},s[hn]=Dc,!1)}function V(yr,hn){debugger;let Pi=new Error(yr?`Debug Failure. ${yr}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Pi,hn||V),Pi}s.fail=V;function M(yr,hn,Pi){return V(`${hn||"Unexpected node."}\r +`}dh.getNewLineChars=bAc;async function tki(e){let t=await NCe.promises.readFile(e,"utf-8");return JSON.parse(t)}dh.readJson=tki;async function EAc(e,t){try{await NCe.promises.mkdir(y4.dirname(e),{recursive:!0})}catch{}await NCe.promises.writeFile(e,JSON.stringify(t,null,2),"utf-8")}dh.writeJson=EAc;async function SAc(e){return NCe.promises.readFile(e,"utf-8")}dh.readTextFile=SAc;async function vAc(e,t){try{await NCe.promises.mkdir(y4.dirname(e),{recursive:!0})}catch{}await NCe.promises.writeFile(e,t,"utf-8")}dh.writeTextFile=vAc});var Cxr=H(IH=>{"use strict";Object.defineProperty(IH,"__esModule",{value:!0});IH.getNpmPackageInfo=IH.getLatestPackageVersion=IH.getPackageMeta=IH.JSR_URL=void 0;IH.JSR_URL=process.env.JSR_URL??"https://jsr.io";async function rki(e){let t=`${IH.JSR_URL}/@${e.scope}/${e.name}/meta.json`,r=await fetch(t);if(!r.ok)throw await r.body?.cancel(),new Error(`Received ${r.status} from ${t}`);return await r.json()}IH.getPackageMeta=rki;async function BAc(e){let t=await rki(e),{latest:r}=t;if(r===void 0)throw new Error(`Unable to find latest version of ${e}`);return r}IH.getLatestPackageVersion=BAc;async function wAc(e){let t=new URL(`${IH.JSR_URL}/@jsr/${e.scope}__${e.name}`),r=`${t.protocol}//npm.${t.host}${t.pathname}`,n=await fetch(r);if(!n.ok)throw await n.body?.cancel(),new Error(`Received ${n.status} from ${t}`);return await n.json()}IH.getNpmPackageInfo=wAc});var yxr=H((JDu,nki)=>{var _xr=new Intl.Collator(0,{numeric:1}).compare;nki.exports=function(e,t,r){return e=e.split("."),t=t.split("."),_xr(e[0],t[0])||_xr(e[1],t[1])||(t[2]=t.slice(2).join("."),r=/[.-]/.test(e[2]=e.slice(2).join(".")),r==/[.-]/.test(t[2])?_xr(e[2],t[2]):r?-1:1)}});var ski=H(OG=>{"use strict";var TAc=OG&&OG.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),RAc=OG&&OG.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),NAc=OG&&OG.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&TAc(t,e,r);return RAc(t,e),t},DAc=OG&&OG.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OG,"__esModule",{value:!0});OG.getPkgManager=OG.Bun=OG.YarnBerry=void 0;var kAc=Cxr(),DCe=f1t(),xAc=NAc(A1t()),GAc=DAc(yxr());async function xV(e,t,r){return console.log(xAc.dim(`$ ${e} ${t.join(" ")}`)),(0,DCe.exec)(e,t,r)}function iki(e){return e==="dev"?"--save-dev":e==="optional"?"--save-optional":""}function Sxr(e){return e==="dev"?"--dev":e==="optional"?"--optional":""}function SUe(e){return e.map(t=>`@${t.scope}/${t.name}@npm:${t.toNpmPackage()}`)}async function FAc(e){let r=(await(0,DCe.exec)("yarn",["--version"],e,void 0,!0)).stdout;return r?r.startsWith("1.")?((0,DCe.logDebug)("Detected yarn classic from version"),!1):((0,DCe.logDebug)("Detected yarn berry from version"),!0):((0,DCe.logDebug)("Unable to detect yarn version, assuming classic"),!1)}var bxr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["install"],a=iki(r.mode);a!==""&&n.push(a),n.push(...SUe(t)),await xV("npm",n,this.cwd)}async remove(t){await xV("npm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await xV("npm",["run",t],this.cwd)}},I1t=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["add"],a=Sxr(r.mode);a!==""&&n.push(a),n.push(...SUe(t)),await xV("yarn",n,this.cwd)}async remove(t){await xV("yarn",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await xV("yarn",[t],this.cwd)}},h1t=class extends I1t{async install(t,r){let n=["add"],a=Sxr(r.mode);a!==""&&n.push(a),n.push(...await this.toPackageArgs(t)),await xV("yarn",n,this.cwd)}async setConfigValue(t,r){await xV("yarn",["config","set",t,r],this.cwd)}async toPackageArgs(t){return await Promise.all(t.map(async r=>{r.version??=`^${await(0,kAc.getLatestPackageVersion)(r)}`})),SUe(t)}};OG.YarnBerry=h1t;var Exr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["add"],a=iki(r.mode);a!==""&&n.push(a),n.push(...SUe(t)),await xV("pnpm",n,this.cwd)}async remove(t){await xV("pnpm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await xV("pnpm",[t],this.cwd)}},m1t=class{cwd;constructor(t){this.cwd=t}async install(t,r){let n=["add"],a=Sxr(r.mode);a!==""&&n.push(a),n.push(...SUe(t)),await xV("bun",n,this.cwd)}async remove(t){await xV("bun",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await xV("bun",["run",t],this.cwd)}async isNpmrcSupported(){let r=(await(0,DCe.exec)("bun",["--version"],this.cwd,void 0,!0)).stdout;return r!=null&&(0,GAc.default)(r,"1.1.18")>=0}};OG.Bun=m1t;function ZAc(e){return e.startsWith("pnpm/")?"pnpm":e.startsWith("yarn/")?"yarn":e.startsWith("npm/")?"npm":e.startsWith("bun/")?"bun":null}async function LAc(e,t){let r=process.env.npm_config_user_agent,n=r!==void 0?ZAc(r):null,{projectDir:a,pkgManagerName:o,root:l}=await(0,DCe.findProjectDir)(e),A=l||a,f=t||o||n||"npm",I;return f==="yarn"?I=await FAc(a)?new h1t(a):new I1t(a):f==="pnpm"?I=new Exr(a):f==="bun"?I=new m1t(a):I=new bxr(a),{root:A,pkgManager:I}}OG.getPkgManager=LAc});var gki=H((jDu,uki)=>{var hH=Et("fs"),VAc=Et("util"),hDe=Et("path"),Dxr=Et("events"),oki=Et("zlib"),lki=Et("stream"),Xu={LOCHDR:30,LOCSIG:67324752,LOCVER:4,LOCFLG:6,LOCHOW:8,LOCTIM:10,LOCCRC:14,LOCSIZ:18,LOCLEN:22,LOCNAM:26,LOCEXT:28,EXTSIG:134695760,EXTHDR:16,EXTCRC:4,EXTSIZ:8,EXTLEN:12,CENHDR:46,CENSIG:33639248,CENVEM:4,CENVER:6,CENFLG:8,CENHOW:10,CENTIM:12,CENCRC:16,CENSIZ:20,CENLEN:24,CENNAM:28,CENEXT:30,CENCOM:32,CENDSK:34,CENATT:36,CENATX:38,CENOFF:42,ENDHDR:22,ENDSIG:101010256,ENDSIGFIRST:80,ENDSUB:8,ENDTOT:10,ENDSIZ:12,ENDOFF:16,ENDCOM:20,MAXFILECOMMENT:65535,ENDL64HDR:20,ENDL64SIG:117853008,ENDL64SIGFIRST:80,ENDL64OFS:8,END64HDR:56,END64SIG:101075792,END64SIGFIRST:80,END64SUB:24,END64TOT:32,END64SIZ:40,END64OFF:48,STORED:0,SHRUNK:1,REDUCED1:2,REDUCED2:3,REDUCED3:4,REDUCED4:5,IMPLODED:6,DEFLATED:8,ENHANCED_DEFLATED:9,PKWARE:10,BZIP2:12,LZMA:14,IBM_TERSE:18,IBM_LZ77:19,FLG_ENC:0,FLG_COMP1:1,FLG_COMP2:2,FLG_DESC:4,FLG_ENH:8,FLG_STR:16,FLG_LNG:1024,FLG_MSK:4096,FLG_ENTRY_ENC:1,EF_ID:0,EF_SIZE:2,ID_ZIP64:1,ID_AVINFO:7,ID_PFS:8,ID_OS2:9,ID_NTFS:10,ID_OPENVMS:12,ID_UNIX:13,ID_FORK:14,ID_PATCH:15,ID_X509_PKCS7:20,ID_X509_CERTID_F:21,ID_X509_CERTID_C:22,ID_STRONGENC:23,ID_RECORD_MGT:24,ID_X509_PKCS7_RL:25,ID_IBM1:101,ID_IBM2:102,ID_POSZIP:18064,EF_ZIP64_OR_32:4294967295,EF_ZIP64_OR_16:65535},zce=function(e){let t,r,n,a,o,l,f=this,I=e.storeEntries!==!1?{}:null,C=e.file,b=e.nameEncoding?new TextDecoder(e.nameEncoding):null;E();function E(){e.fd?(t=e.fd,N()):hH.open(C,"r",(ze,Le)=>{if(ze)return f.emit("error",ze);t=Le,N()})}function N(){hH.fstat(t,(ze,Le)=>{if(ze)return f.emit("error",ze);r=Le.size,n=e.chunkSize||Math.round(r/1e3),n=Math.max(Math.min(n,Math.min(128*1024,r)),Math.min(1024,r)),F()})}function B(ze,Le){if(ze||!Le)return f.emit("error",ze||new Error("Archive read error"));let Je=a.lastPos,ft=Je-a.win.position,lt=a.win.buffer,Ot=a.minPos;for(;--Je>=Ot&&--ft>=0;)if(lt.length-ft>=4&<[ft]===a.firstByte&<.readUInt32LE(ft)===a.sig){a.lastBufferPosition=ft,a.lastBytesRead=Le,a.complete();return}if(Je===Ot)return f.emit("error",new Error("Bad archive"));if(a.lastPos=Je+1,a.chunkSize*=2,Je<=Ot)return f.emit("error",new Error("Bad archive"));let Er=Math.min(a.chunkSize,Je-Ot);a.win.expandLeft(Er,B)}function F(){let ze=Math.min(Xu.ENDHDR+Xu.MAXFILECOMMENT,r);a={win:new C1t(t),totalReadLength:ze,minPos:r-ze,lastPos:r,chunkSize:Math.min(1024,n),firstByte:Xu.ENDSIGFIRST,sig:Xu.ENDSIG,complete:Q},a.win.read(r-a.chunkSize,a.chunkSize,B)}function Q(){let ze=a.win.buffer,Le=a.lastBufferPosition;try{o=new vxr,o.read(ze.slice(Le,Le+Xu.ENDHDR)),o.headerOffset=a.win.position+Le,o.commentLength?f.comment=ze.slice(Le+Xu.ENDHDR,Le+Xu.ENDHDR+o.commentLength).toString():f.comment=null,f.entriesCount=o.volumeEntries,f.centralDirectory=o,o.volumeEntries===Xu.EF_ZIP64_OR_16&&o.totalEntries===Xu.EF_ZIP64_OR_16||o.size===Xu.EF_ZIP64_OR_32||o.offset===Xu.EF_ZIP64_OR_32?J():(a={},ce())}catch(Je){f.emit("error",Je)}}function J(){let ze=Xu.ENDL64HDR;a.lastBufferPosition>ze?(a.lastBufferPosition-=ze,ae()):(a={win:a.win,totalReadLength:ze,minPos:a.win.position-ze,lastPos:a.win.position,chunkSize:a.chunkSize,firstByte:Xu.ENDL64SIGFIRST,sig:Xu.ENDL64SIG,complete:ae},a.win.read(a.lastPos-a.chunkSize,a.chunkSize,B))}function ae(){let ze=a.win.buffer,Le=new Bxr;Le.read(ze.slice(a.lastBufferPosition,a.lastBufferPosition+Xu.ENDL64HDR));let Je=r-Le.headerOffset;a={win:a.win,totalReadLength:Je,minPos:Le.headerOffset,lastPos:a.lastPos,chunkSize:a.chunkSize,firstByte:Xu.END64SIGFIRST,sig:Xu.END64SIG,complete:ne},a.win.read(r-a.chunkSize,a.chunkSize,B)}function ne(){let ze=a.win.buffer,Le=new wxr;Le.read(ze.slice(a.lastBufferPosition,a.lastBufferPosition+Xu.END64HDR)),f.centralDirectory.volumeEntries=Le.volumeEntries,f.centralDirectory.totalEntries=Le.totalEntries,f.centralDirectory.size=Le.size,f.centralDirectory.offset=Le.offset,f.entriesCount=Le.volumeEntries,a={},ce()}function ce(){a={win:new C1t(t),pos:o.offset,chunkSize:n,entriesLeft:o.volumeEntries},a.win.read(a.pos,Math.min(n,r-a.pos),fe)}function fe(ze,Le){if(ze||!Le)return f.emit("error",ze||new Error("Entries read error"));let Je=a.pos-a.win.position,ft=a.entry,lt=a.win.buffer,Ot=lt.length;try{for(;a.entriesLeft>0;){ft||(ft=new Txr,ft.readHeader(lt,Je),ft.headerOffset=a.win.position+Je,a.entry=ft,a.pos+=Xu.CENHDR,Je+=Xu.CENHDR);let Er=ft.fnameLen+ft.extraLen+ft.comLen,Sr=Er+(a.entriesLeft>1?Xu.CENHDR:0);if(Ot-Je{if(Je)return Le(Je);let lt=de(ft),Ot=new Rxr(t,lt,ft.compressedSize);if(ft.method!==Xu.STORED)if(ft.method===Xu.DEFLATED)Ot=Ot.pipe(oki.createInflateRaw());else return Le(new Error("Unknown compression method: "+ft.method));be(ft)&&(Ot=Ot.pipe(new Nxr(Ot,ft.crc,ft.size))),Le(null,Ot)},!1)},this.entryDataSync=function(ze){let Le=null;if(this.openEntry(ze,(ft,lt)=>{Le=ft,ze=lt},!0),Le)throw Le;let Je=Buffer.alloc(ze.compressedSize);if(new Kce(t,Je,0,ze.compressedSize,de(ze),ft=>{Le=ft}).read(!0),Le)throw Le;if(ze.method!==Xu.STORED)if(ze.method===Xu.DEFLATED||ze.method===Xu.ENHANCED_DEFLATED)Je=oki.inflateRawSync(Je);else throw new Error("Unknown compression method: "+ze.method);if(Je.length!==ze.size)throw new Error("Invalid size");return be(ze)&&new _1t(ze.crc,ze.size).data(Je),Je},this.openEntry=function(ze,Le,Je){if(typeof ze=="string"&&(ue(),ze=I[ze],!ze))return Le(new Error("Entry not found"));if(!ze.isFile)return Le(new Error("Entry is not file"));if(!t)return Le(new Error("Archive closed"));let ft=Buffer.alloc(Xu.LOCHDR);new Kce(t,ft,0,ft.length,ze.offset,lt=>{if(lt)return Le(lt);let Ot;try{ze.readDataHeader(ft),ze.encrypted&&(Ot=new Error("Entry encrypted"))}catch(Er){Ot=Er}Le(Ot,ze)}).read(Je)};function de(ze){return ze.offset+Xu.LOCHDR+ze.fnameLen+ze.extraLen}function be(ze){return(ze.flags&8)!==8}function Se(ze,Le,Je){f.stream(ze,(ft,lt)=>{if(ft)Je(ft);else{let Ot,Er;lt.on("error",Sr=>{Er=Sr,Ot&&(lt.unpipe(Ot),Ot.close(()=>{Je(Sr)}))}),hH.open(Le,"w",(Sr,jt)=>{if(Sr)return Je(Sr);if(Er){hH.close(t,()=>{Je(Er)});return}Ot=hH.createWriteStream(Le,{fd:jt}),Ot.on("finish",()=>{f.emit("extract",ze,Le),Er||Je()}),lt.pipe(Ot)})}})}function De(ze,Le,Je){if(!Le.length)return Je();let ft=Le.shift();ft=hDe.join(ze,hDe.join(...ft)),hH.mkdir(ft,{recursive:!0},lt=>{if(lt&<.code!=="EEXIST")return Je(lt);De(ze,Le,Je)})}function k(ze,Le,Je,ft,lt){if(!Je.length)return ft(null,lt);let Ot=Je.shift(),Er=hDe.join(ze,Ot.name.replace(Le,""));Se(Ot,Er,Sr=>{if(Sr)return ft(Sr,lt);k(ze,Le,Je,ft,lt+1)})}this.extract=function(ze,Le,Je){let ft=ze||"";if(typeof ze=="string"&&(ze=this.entry(ze),ze?ft=ze.name:ft.length&&ft[ft.length-1]!=="/"&&(ft+="/")),!ze||ze.isDirectory){let lt=[],Ot=[],Er={};for(let Sr in I)if(Object.prototype.hasOwnProperty.call(I,Sr)&&Sr.lastIndexOf(ft,0)===0){let jt=Sr.replace(ft,""),Bt=I[Sr];if(Bt.isFile&&(lt.push(Bt),jt=hDe.dirname(jt)),jt&&!Er[jt]&&jt!=="."){Er[jt]=!0;let Nt=jt.split("/").filter(Fr=>Fr);for(Nt.length&&Ot.push(Nt);Nt.length>1;){Nt=Nt.slice(0,Nt.length-1);let Fr=Nt.join("/");if(Er[Fr]||Fr===".")break;Er[Fr]=!0,Ot.push(Nt)}}}Ot.sort((Sr,jt)=>Sr.length-jt.length),Ot.length?De(Le,Ot,Sr=>{Sr?Je(Sr):k(Le,ft,lt,Je,0)}):k(Le,ft,lt,Je,0)}else hH.stat(Le,(lt,Ot)=>{Ot&&Ot.isDirectory()?Se(ze,hDe.join(Le,hDe.basename(ze.name)),Je):Se(ze,Le,Je)})},this.close=function(ze){l||!t?(l=!0,ze&&ze()):(l=!0,hH.close(t,Le=>{t=null,ze&&ze(Le)}))};let tt=Dxr.EventEmitter.prototype.emit;this.emit=function(...ze){if(!l)return tt.call(this,...ze)}};zce.setFs=function(e){hH=e};zce.debugLog=(...e)=>{zce.debug&&console.log(...e)};VAc.inherits(zce,Dxr.EventEmitter);var Uce=Symbol("zip");zce.async=class extends Dxr.EventEmitter{constructor(t){super();let r=new zce(t);r.on("entry",n=>this.emit("entry",n)),r.on("extract",(n,a)=>this.emit("extract",n,a)),this[Uce]=new Promise((n,a)=>{r.on("ready",()=>{r.removeListener("error",a),n(r)}),r.on("error",a)})}get entriesCount(){return this[Uce].then(t=>t.entriesCount)}get comment(){return this[Uce].then(t=>t.comment)}async entry(t){return(await this[Uce]).entry(t)}async entries(){return(await this[Uce]).entries()}async stream(t){let r=await this[Uce];return new Promise((n,a)=>{r.stream(t,(o,l)=>{o?a(o):n(l)})})}async entryData(t){let r=await this.stream(t);return new Promise((n,a)=>{let o=[];r.on("data",l=>o.push(l)),r.on("end",()=>{n(Buffer.concat(o))}),r.on("error",l=>{r.removeAllListeners("end"),a(l)})})}async extract(t,r){let n=await this[Uce];return new Promise((a,o)=>{n.extract(t,r,(l,A)=>{l?o(l):a(A)})})}async close(){let t=await this[Uce];return new Promise((r,n)=>{t.close(a=>{a?n(a):r()})})}};var vxr=class{read(t){if(t.length!==Xu.ENDHDR||t.readUInt32LE(0)!==Xu.ENDSIG)throw new Error("Invalid central directory");this.volumeEntries=t.readUInt16LE(Xu.ENDSUB),this.totalEntries=t.readUInt16LE(Xu.ENDTOT),this.size=t.readUInt32LE(Xu.ENDSIZ),this.offset=t.readUInt32LE(Xu.ENDOFF),this.commentLength=t.readUInt16LE(Xu.ENDCOM)}},Bxr=class{read(t){if(t.length!==Xu.ENDL64HDR||t.readUInt32LE(0)!==Xu.ENDL64SIG)throw new Error("Invalid zip64 central directory locator");this.headerOffset=jce(t,Xu.ENDSUB)}},wxr=class{read(t){if(t.length!==Xu.END64HDR||t.readUInt32LE(0)!==Xu.END64SIG)throw new Error("Invalid central directory");this.volumeEntries=jce(t,Xu.END64SUB),this.totalEntries=jce(t,Xu.END64TOT),this.size=jce(t,Xu.END64SIZ),this.offset=jce(t,Xu.END64OFF)}},Txr=class{readHeader(t,r){if(t.length=8&&this.size===Xu.EF_ZIP64_OR_32&&(this.size=jce(t,r),r+=8,n-=8),n>=8&&this.compressedSize===Xu.EF_ZIP64_OR_32&&(this.compressedSize=jce(t,r),r+=8,n-=8),n>=8&&this.offset===Xu.EF_ZIP64_OR_32&&(this.offset=jce(t,r),r+=8,n-=8),n>=4&&this.diskStart===Xu.EF_ZIP64_OR_16&&(this.diskStart=t.readUInt32LE(r))}get encrypted(){return(this.flags&Xu.FLG_ENTRY_ENC)===Xu.FLG_ENTRY_ENC}get isFile(){return!this.isDirectory}},Kce=class{constructor(t,r,n,a,o,l){this.fd=t,this.buffer=r,this.offset=n,this.length=a,this.position=o,this.callback=l,this.bytesRead=0,this.waiting=!1}read(t){zce.debugLog("read",this.position,this.bytesRead,this.length,this.offset),this.waiting=!0;let r;if(t){let n=0;try{n=hH.readSync(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead)}catch(a){r=a}this.readCallback(t,r,r?n:null)}else hH.read(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead,this.readCallback.bind(this,t))}readCallback(t,r,n){if(typeof n=="number"&&(this.bytesRead+=n),r||!n||this.bytesRead===this.length)return this.waiting=!1,this.callback(r,this.bytesRead);this.read(t)}},C1t=class{constructor(t){this.position=0,this.buffer=Buffer.alloc(0),this.fd=t,this.fsOp=null}checkOp(){if(this.fsOp&&this.fsOp.waiting)throw new Error("Operation in progress")}read(t,r,n){this.checkOp(),this.buffer.length{this.emit("error",a)})}_transform(t,r,n){let a;try{this.verify.data(t)}catch(o){a=o}n(a,t)}},_1t=class e{constructor(t,r){this.crc=t,this.size=r,this.state={crc:-1,size:0}}data(t){let r=e.getCrcTable(),n=this.state.crc,a=0,o=t.length;for(;--o>=0;)n=r[(n^t[a++])&255]^n>>>8;if(this.state.crc=n,this.state.size+=t.length,this.state.size>=this.size){let l=Buffer.alloc(4);if(l.writeInt32LE(~this.state.crc&4294967295,0),n=l.readUInt32LE(0),n!==this.crc)throw new Error("Invalid CRC");if(this.state.size!==this.size)throw new Error("Invalid size")}}static getCrcTable(){let t=e.crcTable;if(!t){e.crcTable=t=[];let r=Buffer.alloc(4);for(let n=0;n<256;n++){let a=n;for(let o=8;--o>=0;)a&1?a=3988292384^a>>>1:a=a>>>1;a<0&&(r.writeInt32LE(a,0),a=r.readUInt32LE(0)),t[n]=a}}return t}};function aki(e,t){let r=cki(e,16),n=cki(t,16),a={h:parseInt(r.slice(0,5).join(""),2),m:parseInt(r.slice(5,11).join(""),2),s:parseInt(r.slice(11,16).join(""),2)*2,Y:parseInt(n.slice(0,7).join(""),2)+1980,M:parseInt(n.slice(7,11).join(""),2),D:parseInt(n.slice(11,16).join(""),2)},o=[a.Y,a.M,a.D].join("-")+" "+[a.h,a.m,a.s].join(":")+" GMT+0";return new Date(o).getTime()}function cki(e,t){let r=(e>>>0).toString(2);for(;r.length{"use strict";var WAc=mH&&mH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OAc=mH&&mH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),kCe=mH&&mH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&WAc(t,e,r);return OAc(t,e),t};Object.defineProperty(mH,"__esModule",{value:!0});mH.downloadDeno=mH.getDenoDownloadUrl=void 0;var PAc=kCe(Et("node:os")),vUe=kCe(Et("node:fs")),kxr=kCe(Et("node:path")),MAc=kCe(Et("node:util")),HAc=kCe(Et("node:stream")),xxr=kCe(A1t()),YAc=kCe(gki()),QAc=MAc.promisify(HAc.finished),XAc="https://dl.deno.land/canary-latest.txt",JAc="https://dl.deno.land/release-latest.txt",Aki={"darwin arm64":"deno-aarch64-apple-darwin","darwin x64":"deno-x86_64-apple-darwin","linux arm64":"deno-aarch64-unknown-linux-gnu","linux x64":"deno-x86_64-unknown-linux-gnu","win32 x64":"deno-x86_64-pc-windows-msvc"};async function UAc(e){let t=`${process.platform} ${PAc.arch()}`;if(!(t in Aki))throw new Error(`Unsupported platform: ${t}`);let n=Aki[t]+".zip",a=e?XAc:JAc,o=await fetch(a);if(!o.ok)throw await o.body?.cancel(),new Error(`${o.status}: Unable to retrieve ${e?"canary":"release"} version information from ${a}.`);let l=(await o.text()).trim();return{canary:e,url:e?`https://dl.deno.land/canary/${decodeURI(l)}/${n}`:`https://dl.deno.land/release/${decodeURI(l)}/${n}`,filename:n,version:l}}mH.getDenoDownloadUrl=UAc;async function KAc(e,t){let r=kxr.dirname(e);await vUe.promises.mkdir(r,{recursive:!0});let n=await fetch(t.url),a=Number(n.headers.get("content-length")??1/0);if(n.body==null)throw new Error("Unexpected empty body");console.log(`Downloading JSR ${t.canary?"canary":"release"} binary...`),await jAc(async o=>{let l=kxr.join(r,t.filename+".part"),A=vUe.createWriteStream(l,"utf-8");for await(let C of zAc(n.body))o(C.length),A.write(C);A.end(),await QAc(A);let f=kxr.join(r,t.filename);await vUe.promises.rename(l,f);let I=new YAc.async({file:f});await I.extract(null,r),await I.close(),await vUe.promises.chmod(e,493),await vUe.promises.rm(f)},{max:a})}mH.downloadDeno=KAc;async function jAc(e,t){let r=0,n=Date.now(),a=0,o=!1,l=qAc(()=>{a=Date.now()-n;let I=String(Math.floor(a/1e3/60)).padStart(2,"0"),C=String(Math.floor(a/1e3)%60).padStart(2,"0"),b=`[${I}:${C}]`,E=`${dki(r)}/${dki(t.max)}`,N=process.stdout.columns,B=b;if(N-b.length-E.length+4>10){let F=Math.min(N,50),Q=Math.floor(100/t.max*r),J="#".repeat(F/100*Q)+">",ae=xxr.blue("-".repeat(Math.max(F-J.length,0)));B+=` [${xxr.cyan(J)}${ae}] `}B+=xxr.dim(E),process.stdout.isTTY&&(o&&process.stdout.write("\r\x1B[K"),o=!0,process.stdout.write(B))},16),f=await e(I=>{r+=I,l()});return process.stdout.isTTY?process.stdout.write(` +`):console.log("Download completed"),f}async function*zAc(e){let t=e.getReader();try{for(;;){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}}function dki(e,t=1){if(Math.abs(e)<1024)return e+" B";let n=["KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],a=-1,o=10**t;do e/=1024,++a;while(Math.round(Math.abs(e)*o)/o>=1024&&a{r===null&&(e(),r=setTimeout(()=>{r=null},t))}}});var Eki=H(V2=>{"use strict";var $Ac=V2&&V2.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),edc=V2&&V2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Gxr=V2&&V2.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&$Ac(t,e,r);return edc(t,e),t},tdc=V2&&V2.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(V2,"__esModule",{value:!0});V2.showPackageInfo=V2.runScript=V2.publish=V2.remove=V2.install=V2.setupBunfigToml=V2.setupNpmRc=void 0;var Fxr=Gxr(Et("node:path")),xCe=Gxr(Et("node:fs")),F6=Gxr(A1t()),wUe=f1t(),BUe=ski(),fki=pki(),Iki=Cxr(),rdc=tdc(yxr()),hki=".npmrc",mki="bunfig.toml",Zxr="https://npm.jsr.io",Cki=`@jsr:registry=${Zxr} +`,_ki=`[install.scopes] +"@jsr" = "${Zxr}" +`,ndc="npmScopes.jsr.npmRegistryServer";async function y1t(e,t){process.stdout.write(e+"...");try{await t(),process.stdout.write(F6.green("ok")+` +`)}catch(r){throw process.stdout.write(F6.red("error")+` +`),r}}async function yki(e){let t=Fxr.join(e,hki),r=`Setting up ${hki}`;try{let n=await xCe.promises.readFile(t,"utf-8");if(!n.includes("@jsr:registry=")){let a=(0,wUe.getNewLineChars)(n),o=n.endsWith(a)?"":a;n+=o+Cki,await y1t(r,async()=>{await xCe.promises.writeFile(t,n)})}}catch(n){if(n instanceof Error&&n.code==="ENOENT")await y1t(r,async()=>{await xCe.promises.writeFile(t,Cki)});else throw n}}V2.setupNpmRc=yki;async function bki(e){let t=Fxr.join(e,mki),r=`Setting up ${mki}`;try{let n=await xCe.promises.readFile(t,"utf-8");/^"@jsr"\s+=/gm.test(n)||(n+=_ki,await y1t(r,async()=>{await xCe.promises.writeFile(t,n)}))}catch(n){if(n instanceof Error&&n.code==="ENOENT")await y1t(r,async()=>{await xCe.promises.writeFile(t,_ki)});else throw n}}V2.setupBunfigToml=bki;async function idc(e,t){let{pkgManager:r,root:n}=await(0,BUe.getPkgManager)(process.cwd(),t.pkgManagerName);e.length>0&&(r instanceof BUe.Bun&&!await r.isNpmrcSupported()?await bki(n):r instanceof BUe.YarnBerry?await r.setConfigValue(ndc,Zxr):await yki(n),console.log(`Installing ${F6.cyan(e.join(", "))}...`)),await r.install(e,t)}V2.install=idc;async function sdc(e,t){let{pkgManager:r}=await(0,BUe.getPkgManager)(process.cwd(),t.pkgManagerName);console.log(`Removing ${F6.cyan(e.join(", "))}...`),await r.remove(e)}V2.remove=sdc;async function odc(e,t){let r=await(0,fki.getDenoDownloadUrl)(t),n=Fxr.join(e,r.version,process.platform,process.platform==="win32"?"deno.exe":"deno");if(!await(0,wUe.fileExists)(n)){try{await xCe.promises.rm(e,{recursive:!0})}catch(a){if(!(a instanceof Error)||a.code!=="ENOENT")throw a}await(0,fki.downloadDeno)(n,r)}return n}async function adc(e,t){let r=process.env.DENO_BIN_PATH??await odc(t.binFolder,t.canary),n=["publish"],a={...process.env};t.pkgJsonPath!==null&&(n.push("--unstable-bare-node-builtins","--unstable-sloppy-imports","--unstable-byonm","--no-check"),a.DENO_DISABLE_PEDANTIC_NODE_WARNINGS="true"),n.push(...t.publishArgs.filter(o=>o!=="--verbose")),await(0,wUe.exec)(r,n,e,a)}V2.publish=adc;async function cdc(e,t,r){let{pkgManager:n}=await(0,BUe.getPkgManager)(e,r.pkgManagerName);await n.runScript(t)}V2.runScript=cdc;async function ldc(e){let t=wUe.JsrPackage.from(e),r=await(0,Iki.getPackageMeta)(t);if(t.version===null){let f=r.latest;if(f===void 0)throw new Error(`Missing latest version for ${t}`);if(f===null){let I=Object.keys(r.versions);if(I.length===0)throw new Error(`Could not find published version for ${t}`);I.sort(rdc.default),t.version=I[0]}else t.version=f}let n=Object.keys(r.versions).length,a=await(0,Iki.getNpmPackageInfo)(t),o=a.versions[t.version],l=a.time[t.version],A=new Date(l).getTime();console.log(),console.log(F6.cyan(`@${t.scope}/${t.name}@${t.version}`)+` | latest: ${F6.magenta(r.latest??"-")} | versions: ${F6.magenta(n)}`),console.log(a.description),console.log(),console.log(`npm tarball: ${F6.cyan(o.dist.tarball)}`),console.log(`npm integrity: ${F6.cyan(o.dist.integrity)}`),console.log(),console.log(`published: ${F6.magenta((0,wUe.timeAgo)(Date.now()-A))}`)}V2.showPackageInfo=ldc});var vki=H(CH=>{"use strict";Object.defineProperty(CH,"__esModule",{value:!0});CH.JsrPackageNameError=CH.JsrPackage=CH.remove=CH.publish=CH.install=void 0;var Lxr=Eki();Object.defineProperty(CH,"install",{enumerable:!0,get:function(){return Lxr.install}});Object.defineProperty(CH,"publish",{enumerable:!0,get:function(){return Lxr.publish}});Object.defineProperty(CH,"remove",{enumerable:!0,get:function(){return Lxr.remove}});var Ski=f1t();Object.defineProperty(CH,"JsrPackage",{enumerable:!0,get:function(){return Ski.JsrPackage}});Object.defineProperty(CH,"JsrPackageNameError",{enumerable:!0,get:function(){return Ski.JsrPackageNameError}})});var Mki=H((uku,v1t)=>{var Gki={};(e=>{"use strict";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(s,c)=>{for(var g in c)t(s,g,{get:c[g],enumerable:!0})},l=(s,c,g,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let h of n(c))!a.call(s,h)&&h!==g&&t(s,h,{get:()=>c[h],enumerable:!(d=r(c,h))||d.enumerable});return s},A=s=>s,f={};o(f,{ANONYMOUS:()=>Ent,AccessFlags:()=>Dy,AssertionLevel:()=>bl,AssignmentDeclarationKind:()=>ky,AssignmentKind:()=>OZe,Associativity:()=>JZe,BreakpointResolver:()=>yit,BuilderFileEmit:()=>s5t,BuilderProgramKind:()=>d5t,BuilderState:()=>lR,CallHierarchy:()=>nq,CharacterCodes:()=>q2,CheckFlags:()=>gB,CheckMode:()=>Xet,ClassificationType:()=>Grt,ClassificationTypeNames:()=>fMt,CommentDirectiveType:()=>qS,Comparison:()=>b,CompletionInfoFlags:()=>cMt,CompletionTriggerKind:()=>krt,Completions:()=>cq,ContainerFlags:()=>WPt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>ev,Diagnostics:()=>Z,DocumentHighlights:()=>WWe,ElementFlags:()=>nf,EmitFlags:()=>pB,EmitHint:()=>iy,EmitOnly:()=>j2,EndOfLineState:()=>gMt,ExitStatus:()=>gt,ExportKind:()=>sHt,Extension:()=>ny,ExternalEmitHelpers:()=>$R,FileIncludeKind:()=>ry,FilePreprocessingDiagnosticsKind:()=>yw,FileSystemEntryKind:()=>o1,FileWatcherEventKind:()=>Sb,FindAllReferences:()=>zp,FlattenLevel:()=>a3t,FlowFlags:()=>Xp,ForegroundColorEscapeSequences:()=>K3t,FunctionFlags:()=>QZe,GeneratedIdentifierFlags:()=>cd,GetLiteralTextFlags:()=>w7,GoToDefinition:()=>mse,HighlightSpanKind:()=>oMt,IdentifierNameMap:()=>Jie,ImportKind:()=>iHt,ImportsNotUsedAsValues:()=>rv,IndentStyle:()=>aMt,IndexFlags:()=>$S,IndexKind:()=>Km,InferenceFlags:()=>k_,InferencePriority:()=>yb,InlayHintKind:()=>sMt,InlayHints:()=>Ast,InternalEmitFlags:()=>FD,InternalNodeBuilderFlags:()=>Bg,InternalSymbolName:()=>FT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>Z5t,JSDocParsingMode:()=>s1,JsDoc:()=>A5,JsTyping:()=>$W,JsxEmit:()=>qR,JsxFlags:()=>Um,JsxReferenceKind:()=>rh,LanguageFeatureMinimumTarget:()=>Dd,LanguageServiceMode:()=>nMt,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>n2,ListFormat:()=>n1,LogLevel:()=>mb,MapCode:()=>dst,MemberOverrideStatus:()=>ar,ModifierFlags:()=>zE,ModuleDetectionKind:()=>t1,ModuleInstanceState:()=>LPt,ModuleKind:()=>tv,ModuleResolutionKind:()=>e0,ModuleSpecifierEnding:()=>ZLe,NavigateTo:()=>RHt,NavigationBar:()=>DHt,NewLineKind:()=>r1,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>Ny,NodeFactoryFlags:()=>fEe,NodeFlags:()=>fC,NodeResolutionFeatures:()=>vPt,ObjectFlags:()=>$_,OperationCanceledException:()=>Ry,OperatorPrecedence:()=>UZe,OrganizeImports:()=>d5,OrganizeImportsMode:()=>Drt,OuterExpressionKinds:()=>fF,OutliningElementsCollector:()=>fst,OutliningSpanKind:()=>lMt,OutputFileType:()=>uMt,PackageJsonAutoImportPreference:()=>rMt,PackageJsonDependencyGroup:()=>tMt,PatternMatchKind:()=>Mnt,PollingInterval:()=>s_,PollingWatchKind:()=>dB,PragmaKindFlags:()=>x_,PredicateSemantics:()=>q_,PreparePasteEdits:()=>Nst,PrivateIdentifierKind:()=>A9e,ProcessLevel:()=>g3t,ProgramUpdateLevel:()=>Y3t,QuotePreference:()=>LMt,RegularExpressionFlags:()=>qE,RelationComparisonResult:()=>Ty,Rename:()=>bOe,ScriptElementKind:()=>dMt,ScriptElementKindModifier:()=>pMt,ScriptKind:()=>z2,ScriptSnapshot:()=>zVe,ScriptTarget:()=>VT,SemanticClassificationFormat:()=>iMt,SemanticMeaning:()=>IMt,SemicolonPreference:()=>xrt,SignatureCheckMode:()=>Jet,SignatureFlags:()=>td,SignatureHelp:()=>p2e,SignatureInfo:()=>i5t,SignatureKind:()=>TA,SmartSelectionRange:()=>mst,SnippetKind:()=>bw,StatisticType:()=>Q5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>AI,SymbolDisplay:()=>g9,SymbolDisplayPartKind:()=>$Ve,SymbolFlags:()=>GT,SymbolFormatFlags:()=>Df,SyntaxKind:()=>Wd,Ternary:()=>bb,ThrottledCancellationToken:()=>WYt,TokenClass:()=>AMt,TokenFlags:()=>$E,TransformFlags:()=>Ap,TypeFacts:()=>Qet,TypeFlags:()=>e1,TypeFormatFlags:()=>Dg,TypeMapKind:()=>eI,TypePredicateKind:()=>kh,TypeReferenceSerializationKind:()=>uE,UnionReduction:()=>Jr,UpToDateStatusType:()=>R5t,VarianceFlags:()=>ZT,Version:()=>P,VersionRange:()=>At,WatchDirectoryFlags:()=>r2,WatchDirectoryKind:()=>LT,WatchFileKind:()=>AB,WatchLogLevel:()=>X3t,WatchType:()=>eC,accessPrivateIdentifier:()=>o3t,addEmitFlags:()=>Ow,addEmitHelper:()=>gQ,addEmitHelpers:()=>EN,addInternalEmitFlags:()=>W3,addNodeFactoryPatcher:()=>_$e,addObjectAllocatorPatcher:()=>i$e,addRange:()=>Pr,addRelatedInfo:()=>ug,addSyntheticLeadingComment:()=>$T,addSyntheticTrailingComment:()=>Dz,addToSeen:()=>Wy,advancedAsyncSuperHelper:()=>VF,affectsDeclarationPathOptionDeclarations:()=>jOt,affectsEmitOptionDeclarations:()=>KOt,allKeysStartWithDot:()=>rVe,altDirectorySeparator:()=>Bb,and:()=>hh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>YLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Uu,arrayToNumericMap:()=>Vs,assertType:()=>aE,assign:()=>Pt,asyncSuperHelper:()=>Sie,attachFileToDiagnostics:()=>$L,base64decode:()=>dLe,base64encode:()=>Bbe,binarySearch:()=>Oc,binarySearchKey:()=>vg,bindSourceFile:()=>OPt,breakIntoCharacterSpans:()=>yHt,breakIntoWordSpans:()=>bHt,buildLinkParts:()=>QMt,buildOpts:()=>PEe,buildOverload:()=>$pn,bundlerModuleNameResolver:()=>BPt,canBeConvertedToAsync:()=>Unt,canHaveDecorators:()=>mQ,canHaveExportModifier:()=>uie,canHaveFlowNode:()=>cU,canHaveIllegalDecorators:()=>$$e,canHaveIllegalModifiers:()=>NOt,canHaveIllegalType:()=>Z$r,canHaveIllegalTypeParameters:()=>ROt,canHaveJSDoc:()=>wne,canHaveLocals:()=>HI,canHaveModifiers:()=>HB,canHaveModuleSpecifier:()=>ZZe,canHaveSymbol:()=>bE,canIncludeBindAndCheckDiagnostics:()=>vU,canJsonReportNoInputFiles:()=>JEe,canProduceDiagnostics:()=>i1e,canUsePropertyAccess:()=>nEe,canWatchAffectingLocation:()=>y5t,canWatchAtTypes:()=>_5t,canWatchDirectoryOrFile:()=>Utt,canWatchDirectoryOrFilePath:()=>C1e,cartesianProduct:()=>jE,cast:()=>Ma,chainBundle:()=>cR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>eS,changeCompilerHostLikeToUseCache:()=>qde,changeExtension:()=>yN,changeFullExtension:()=>a_,changesAffectModuleResolution:()=>YJ,changesAffectingProgramStructure:()=>xge,characterCodeToRegularExpressionFlag:()=>Pg,childIsDecorated:()=>nU,classElementOrClassElementParameterIsDecorated:()=>Wye,classHasClassThisAssignment:()=>ctt,classHasDeclaredOrExplicitlyAssignedName:()=>ltt,classHasExplicitlyAssignedName:()=>fVe,classOrConstructorParameterIsDecorated:()=>Fx,classicNameResolver:()=>FPt,classifier:()=>HYt,cleanExtendedConfigCache:()=>yVe,clear:()=>ft,clearMap:()=>Vy,clearSharedExtendedConfigFileWatcher:()=>Ett,climbPastPropertyAccess:()=>rWe,clone:()=>Sg,cloneCompilerOptions:()=>$rt,closeFileWatcher:()=>mv,closeFileWatcherOf:()=>Sv,codefix:()=>Z0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>itt,combine:()=>zr,combinePaths:()=>To,commandLineOptionOfCustomType:()=>$Ot,commentPragmas:()=>i1,commonOptionsWithBuild:()=>Z9e,compact:()=>Hr,compareBooleans:()=>Hl,compareDataObjects:()=>VAe,compareDiagnostics:()=>az,compareEmitHelpers:()=>p9e,compareNumberOfDirectorySeparators:()=>oie,comparePaths:()=>tI,comparePathsCaseInsensitive:()=>_B,comparePathsCaseSensitive:()=>vx,comparePatternKeys:()=>Vet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Oa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>io,compareTextSpans:()=>yn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>RLe,compilerOptionsAffectEmit:()=>TLe,compilerOptionsAffectSemanticDiagnostics:()=>Obe,compilerOptionsDidYouMeanDiagnostics:()=>O9e,compilerOptionsIndicateEsModules:()=>snt,computeCommonSourceDirectoryOfFilenames:()=>J3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Wo,computeLineStarts:()=>uA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>Mtt,computeSuggestionDiagnostics:()=>Qnt,computedOptions:()=>cz,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>jne,consumesNodeCoreModules:()=>NWe,contains:()=>k,containsIgnoredPath:()=>_z,containsObjectRestOrSpread:()=>LEe,containsParseError:()=>EW,containsPath:()=>zh,convertCompilerOptionsForTelemetry:()=>pPt,convertCompilerOptionsFromJson:()=>Qen,convertJsonOption:()=>WU,convertToBase64:()=>vbe,convertToJson:()=>YEe,convertToObject:()=>cPt,convertToOptionsWithAbsolutePaths:()=>Y9e,convertToRelativePath:()=>o2,convertToTSConfig:()=>_et,convertTypeAcquisitionFromJson:()=>Xen,copyComments:()=>JU,copyEntries:()=>b7,copyLeadingComments:()=>lse,copyProperties:()=>ZA,copyTrailingAsLeadingComments:()=>O1e,copyTrailingComments:()=>ppe,couldStartTrivia:()=>ov,countWhere:()=>ze,createAbstractBuilder:()=>enn,createAccessorPropertyBackingField:()=>ret,createAccessorPropertyGetRedirector:()=>VOt,createAccessorPropertySetRedirector:()=>WOt,createBaseNodeFactory:()=>r9e,createBinaryExpressionTrampoline:()=>D9e,createBuilderProgram:()=>Htt,createBuilderProgramUsingIncrementalBuildInfo:()=>h5t,createBuilderStatusReporter:()=>HVe,createCacheableExportInfoMap:()=>Gnt,createCachedDirectoryStructureHost:()=>CVe,createClassifier:()=>Nin,createCommentDirectivesMap:()=>Oge,createCompilerDiagnostic:()=>kf,createCompilerDiagnosticForInvalidCustomType:()=>ePt,createCompilerDiagnosticFromMessageChain:()=>MAe,createCompilerHost:()=>U3t,createCompilerHostFromProgramHost:()=>lrt,createCompilerHostWorker:()=>bVe,createDetachedDiagnostic:()=>nQ,createDiagnosticCollection:()=>NF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>ho,createDiagnosticForNodeArray:()=>y3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>kw,createDiagnosticForNodeInSourceFile:()=>SE,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Kz,createDocumentPositionMapper:()=>t3t,createDocumentRegistry:()=>uHt,createDocumentRegistryInternal:()=>Wnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>Jtt,createEmitHelperFactory:()=>d9e,createEmptyExports:()=>REe,createEvaluator:()=>$Le,createExpressionForJsxElement:()=>EOt,createExpressionForJsxFragment:()=>SOt,createExpressionForObjectLiteralElementLike:()=>vOt,createExpressionForPropertyName:()=>J$e,createExpressionFromEntityName:()=>NEe,createExternalHelpersImportDeclarationIfNeeded:()=>j$e,createFileDiagnostic:()=>rm,createFileDiagnosticFromMessageChain:()=>qe,createFlowNode:()=>ck,createForOfBindingStatement:()=>X$e,createFutureSourceFile:()=>ZWe,createGetCanonicalFileName:()=>bd,createGetIsolatedDeclarationErrors:()=>G3t,createGetSourceFile:()=>Ttt,createGetSymbolAccessibilityDiagnosticForNode:()=>r5,createGetSymbolAccessibilityDiagnosticForNodeName:()=>x3t,createGetSymbolWalker:()=>PPt,createIncrementalCompilerHost:()=>MVe,createIncrementalProgram:()=>T5t,createJsxFactoryExpression:()=>Q$e,createLanguageService:()=>OYt,createLanguageServiceSourceFile:()=>tOe,createMemberAccessForPropertyName:()=>LU,createModeAwareCache:()=>Mie,createModeAwareCacheKey:()=>Lde,createModeMismatchDetails:()=>S7,createModuleNotFoundChain:()=>XJ,createModuleResolutionCache:()=>Hie,createModuleResolutionLoader:()=>Gtt,createModuleResolutionLoaderUsingGlobalCache:()=>v5t,createModuleSpecifierResolutionHost:()=>o5,createMultiMap:()=>Al,createNameResolver:()=>gde,createNodeConverters:()=>n9e,createNodeFactory:()=>mie,createOptionNameMap:()=>V9e,createOverload:()=>kst,createPackageJsonImportFilter:()=>gse,createPackageJsonInfo:()=>Bnt,createParenthesizerRules:()=>Cv,createPatternMatcher:()=>fHt,createPrinter:()=>zW,createPrinterWithDefaults:()=>M3t,createPrinterWithRemoveComments:()=>EQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>H3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>btt,createProgram:()=>I1e,createProgramDiagnostics:()=>r5t,createProgramHost:()=>urt,createPropertyNameNodeForIdentifierOrLiteral:()=>lie,createQueue:()=>cA,createRange:()=>Ly,createRedirectedBuilderProgram:()=>Xtt,createResolutionCache:()=>jtt,createRuntimeTypeSerializer:()=>I3t,createScanner:()=>Nb,createSemanticDiagnosticsBuilderProgram:()=>$rn,createSet:()=>so,createSolutionBuilder:()=>x5t,createSolutionBuilderHost:()=>D5t,createSolutionBuilderWithWatch:()=>G5t,createSolutionBuilderWithWatchHost:()=>k5t,createSortedArray:()=>Ya,createSourceFile:()=>Oz,createSourceMapGenerator:()=>jPt,createSourceMapSource:()=>E$e,createSuperAccessVariableStatement:()=>hVe,createSymbolTable:()=>$u,createSymlinkCache:()=>Mbe,createSyntacticTypeNodeBuilder:()=>q5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>x1e,createTextChangeFromStartLength:()=>fWe,createTextChangeRange:()=>iS,createTextRangeFromNode:()=>rnt,createTextRangeFromSpan:()=>pWe,createTextSpan:()=>$d,createTextSpanFromBounds:()=>RA,createTextSpanFromNode:()=>Yy,createTextSpanFromRange:()=>c9,createTextSpanFromStringLiteralLikeContent:()=>tnt,createTextWriter:()=>Pne,createTokenRange:()=>qL,createTypeChecker:()=>UPt,createTypeReferenceDirectiveResolutionCache:()=>eVe,createTypeReferenceResolutionLoader:()=>vVe,createWatchCompilerHost:()=>unn,createWatchCompilerHostOfConfigFile:()=>grt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Art,createWatchFactory:()=>crt,createWatchHost:()=>art,createWatchProgram:()=>drt,createWatchStatusReporter:()=>ztt,createWriteFileMeasuringIO:()=>Rtt,declarationNameToString:()=>Md,decodeMappings:()=>ttt,decodedTextSpanIntersectsWith:()=>_E,deduplicate:()=>no,defaultHoverMaximumTruncationLength:()=>Nge,defaultInitCompilerOptions:()=>gen,defaultMaximumTruncationLength:()=>FY,diagnosticCategoryName:()=>Eb,diagnosticToString:()=>TQ,diagnosticsEqualityComparer:()=>HAe,directoryProbablyExists:()=>C1,directorySeparator:()=>cg,displayPart:()=>TE,displayPartsToString:()=>$1e,disposeEmitNodes:()=>ju,documentSpansEqual:()=>Ant,dumpTracingLegend:()=>$f,elementAt:()=>_g,elideNodes:()=>LOt,emitDetachedComments:()=>rLe,emitFiles:()=>_tt,emitFilesAndReportErrors:()=>VVe,emitFilesAndReportErrorsAndGetExitStatus:()=>ort,emitModuleKindIsNonNodeESM:()=>tie,emitNewLineBeforeLeadingCommentOfPosition:()=>Ibe,emitResolverSkipsTypeChecking:()=>Ctt,emitSkippedWithNoDiagnostics:()=>Ltt,emptyArray:()=>E,emptyFileSystemEntries:()=>Kbe,emptyMap:()=>N,emptyOptions:()=>YB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Im,ensureScriptKind:()=>zAe,ensureTrailingDirectorySeparator:()=>Cp,entityNameToString:()=>ly,enumerateInsertsAndDeletes:()=>ty,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Yp,equateStringsCaseSensitive:()=>YA,equateValues:()=>bg,escapeJsxAttributeString:()=>cbe,escapeLeadingUnderscores:()=>pp,escapeNonAsciiString:()=>Vne,escapeSnippetText:()=>MW,escapeString:()=>jT,escapeTemplateSubstitution:()=>obe,evaluatorResult:()=>nm,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>pde,executeCommandLine:()=>Hnn,expandPreOrPostfixIncrementOrDecrementExpression:()=>B9e,explainFiles:()=>trt,explainIfFileIsRedirectAndImpliedFormat:()=>rrt,exportAssignmentIsAlias:()=>Dne,expressionResultIsUnused:()=>XLe,extend:()=>HA,extensionFromPath:()=>Iz,extensionIsTS:()=>nde,extensionsNotSupportingExtensionlessResolution:()=>rde,externalHelpersModuleNameText:()=>QD,factory:()=>me,fileExtensionIs:()=>lA,fileExtensionIsOneOf:()=>Iu,fileIncludeReasonToDiagnostics:()=>srt,fileShouldUseJavaScriptRequire:()=>xnt,filter:()=>Le,filterMutate:()=>Je,filterSemanticDiagnostics:()=>RVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>XA,findChildOfKind:()=>ep,findComputedPropertyNameCacheAssignment:()=>k9e,findConfigFile:()=>Btt,findConstructorDeclaration:()=>lQ,findContainingList:()=>aWe,findDiagnosticForNode:()=>tHt,findFirstNonJsxWhitespaceToken:()=>SMt,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>EMt,findModifier:()=>ose,findNextToken:()=>wQ,findPackageJson:()=>eHt,findPackageJsons:()=>vnt,findPrecedingMatchingToken:()=>AWe,findPrecedingToken:()=>Vm,findSuperStatementIndexPath:()=>gVe,findTokenOnLeftOfPosition:()=>ape,findUseStrictPrologue:()=>K$e,first:()=>ma,firstDefined:()=>J,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>Rnt,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>oA,fixupCompilerOptions:()=>Knt,flatMap:()=>jt,flatMapIterator:()=>Nt,flatMapToMutable:()=>Bt,flatten:()=>Sr,flattenCommaList:()=>OOt,flattenDestructuringAssignment:()=>MU,flattenDestructuringBinding:()=>bQ,flattenDiagnosticMessageText:()=>xN,forEach:()=>F,forEachAncestor:()=>Rw,forEachAncestorDirectory:()=>mE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>DN,forEachChild:()=>Lu,forEachChildRecursively:()=>Wz,forEachDynamicImportOrRequireCall:()=>pie,forEachEmittedFile:()=>ftt,forEachEnclosingBlockScopeContainer:()=>Kge,forEachEntry:()=>Fh,forEachExternalModuleToImportFrom:()=>Znt,forEachImportClauseDeclaration:()=>LZe,forEachKey:()=>NB,forEachLeadingCommentRange:()=>OD,forEachNameInAccessChainWalkingLeft:()=>CLe,forEachNameOfDefaultExport:()=>VWe,forEachOptionsSyntaxByName:()=>fde,forEachProjectReference:()=>Bz,forEachPropertyAssignment:()=>eU,forEachResolvedProjectReference:()=>Iie,forEachReturnStatement:()=>TF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>_F,forEachTsConfigPropArray:()=>Ane,forEachUnique:()=>pnt,forEachYieldExpression:()=>bZe,formatColorAndReset:()=>SQ,formatDiagnostic:()=>Ntt,formatDiagnostics:()=>wrn,formatDiagnosticsWithColorAndContext:()=>q3t,formatGeneratedName:()=>z3,formatGeneratedNamePart:()=>Vie,formatLocation:()=>Dtt,formatMessage:()=>iQ,formatStringFromArgs:()=>CN,formatting:()=>_m,generateDjb2Hash:()=>sy,generateTSConfig:()=>lPt,getAdjustedReferenceLocation:()=>Jrt,getAdjustedRenameLocation:()=>lWe,getAliasDeclarationFromName:()=>zye,getAllAccessorDeclarations:()=>FW,getAllDecoratorsOfClass:()=>ott,getAllDecoratorsOfClassElement:()=>dVe,getAllJSDocTags:()=>wJ,getAllJSDocTagsOfKind:()=>Sye,getAllKeys:()=>_I,getAllProjectOutputs:()=>mVe,getAllSuperTypeNodes:()=>Y7,getAllowImportingTsExtensions:()=>ELe,getAllowJSCompilerOption:()=>FF,getAllowSyntheticDefaultImports:()=>sQ,getAncestor:()=>KL,getAnyExtensionFromPath:()=>fE,getAreDeclarationMapsEnabled:()=>YAe,getAssignedExpandoInitializer:()=>JY,getAssignedName:()=>vB,getAssignmentDeclarationKind:()=>oI,getAssignmentDeclarationPropertyAccessKind:()=>oU,getAssignmentTargetKind:()=>zD,getAutomaticTypeDirectiveNames:()=>q9e,getBaseFileName:()=>dp,getBinaryOperatorPrecedence:()=>Lne,getBuildInfo:()=>ytt,getBuildInfoFileVersionMap:()=>Qtt,getBuildInfoText:()=>O3t,getBuildOrderFromAnyBuildOrder:()=>y1e,getBuilderCreationParameters:()=>xVe,getBuilderFileEmit:()=>qW,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>aI,getClassExtendsHeritageElement:()=>UL,getClassLikeDeclarationOfSymbol:()=>mN,getCombinedLocalAndExportSymbolFlags:()=>CU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>hm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ld,getCommentRange:()=>LB,getCommonSourceDirectory:()=>zde,getCommonSourceDirectoryOfConfig:()=>HU,getCompilerOptionValue:()=>uz,getConditions:()=>UW,getConfigFileParsingDiagnostics:()=>vQ,getConstantValue:()=>s9e,getContainerFlags:()=>Oet,getContainerNode:()=>XU,getContainingClass:()=>_C,getContainingClassExcludingClassDecorators:()=>sAe,getContainingClassStaticBlock:()=>wZe,getContainingFunction:()=>I1,getContainingFunctionDeclaration:()=>iAe,getContainingFunctionOrClassStaticBlock:()=>dne,getContainingNodeArray:()=>JLe,getContainingObjectLiteralElement:()=>e2e,getContextualTypeFromParent:()=>SWe,getContextualTypeFromParentOrAncestorTypeNode:()=>cWe,getDeclarationDiagnostics:()=>F3t,getDeclarationEmitExtensionForPath:()=>EAe,getDeclarationEmitOutputFilePath:()=>qZe,getDeclarationEmitOutputFilePathWorker:()=>Mne,getDeclarationFileExtension:()=>G9e,getDeclarationFromName:()=>H7,getDeclarationModifierFlagsFromSymbol:()=>p2,getDeclarationOfKind:()=>yp,getDeclarationsOfKind:()=>Dge,getDeclaredExpandoInitializer:()=>V7,getDecorators:()=>kb,getDefaultCompilerOptions:()=>eOe,getDefaultFormatCodeSettings:()=>qVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>PYt,getDefaultLikeExportInfo:()=>LWe,getDefaultLikeExportNameFromDeclaration:()=>Nnt,getDefaultResolutionModeForFileWorker:()=>TVe,getDiagnosticText:()=>Wb,getDiagnosticsWithinSpan:()=>rHt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>Ktt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>E5t,getDocumentPositionMapper:()=>Ynt,getDocumentSpansEqualityComparer:()=>dnt,getESModuleInterop:()=>Vw,getEditsForFileRename:()=>AHt,getEffectiveBaseTypeNode:()=>kB,getEffectiveConstraintOfTypeParameter:()=>A3,getEffectiveContainerForJSDocTemplateTag:()=>fAe,getEffectiveImplementsTypeNodes:()=>uU,getEffectiveInitializer:()=>yne,getEffectiveJSDocHost:()=>JL,getEffectiveModifierFlags:()=>l_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>aLe,getEffectiveModifierFlagsNoCache:()=>Cbe,getEffectiveReturnTypeNode:()=>Zb,getEffectiveSetAccessorTypeAnnotationNode:()=>fbe,getEffectiveTypeAnnotationNode:()=>Zh,getEffectiveTypeParameterDeclarations:()=>MD,getEffectiveTypeRoots:()=>Zde,getElementOrPropertyAccessArgumentExpressionOrName:()=>pAe,getElementOrPropertyAccessName:()=>jD,getElementsOfBindingOrAssignmentPattern:()=>Lie,getEmitDeclarations:()=>Oy,getEmitFlags:()=>rA,getEmitHelpers:()=>mEe,getEmitModuleDetectionKind:()=>SLe,getEmitModuleFormatOfFileWorker:()=>tpe,getEmitModuleKind:()=>a0,getEmitModuleResolutionKind:()=>F_,getEmitScriptTarget:()=>Hg,getEmitStandardClassFields:()=>Wbe,getEnclosingBlockScopeContainer:()=>oS,getEnclosingContainer:()=>N7,getEncodedSemanticClassifications:()=>Lnt,getEncodedSyntacticClassifications:()=>Vnt,getEndLinePosition:()=>LY,getEntityNameFromTypeNode:()=>fne,getEntrypointsFromPackageJsonInfo:()=>Fet,getErrorCountForSummary:()=>ZVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>$tt,getEscapedTextOfIdentifierOrLiteral:()=>AU,getEscapedTextOfJsxAttributeName:()=>Ez,getEscapedTextOfJsxNamespacedName:()=>gS,getExpandoInitializer:()=>QL,getExportAssignmentExpression:()=>kne,getExportInfoMap:()=>X1e,getExportNeedsImportStarHelper:()=>r3t,getExpressionAssociativity:()=>ibe,getExpressionPrecedence:()=>U7,getExternalHelpersModuleName:()=>kEe,getExternalModuleImportEqualsDeclarationExpression:()=>F7,getExternalModuleName:()=>KY,getExternalModuleNameFromDeclaration:()=>jZe,getExternalModuleNameFromPath:()=>ube,getExternalModuleNameLiteral:()=>Vz,getExternalModuleRequireArgument:()=>Pye,getFallbackOptions:()=>d1e,getFileEmitOutput:()=>n5t,getFileMatcherPatterns:()=>jAe,getFileNamesFromConfigSpecs:()=>Gde,getFileWatcherEventKind:()=>nv,getFilesInErrorForSummary:()=>LVe,getFirstConstructorWithBody:()=>fN,getFirstIdentifier:()=>R0,getFirstNonSpaceCharacterPosition:()=>UMt,getFirstProjectOutput:()=>mtt,getFixableErrorSpanExpression:()=>wnt,getFormatCodeSettingsForWriting:()=>GWe,getFullWidth:()=>QJ,getFunctionFlags:()=>BI,getHeritageClause:()=>xne,getHostSignatureFromJSDoc:()=>XL,getIdentifierAutoGenerate:()=>B$e,getIdentifierGeneratedImportReference:()=>g9e,getIdentifierTypeArguments:()=>H3,getImmediatelyInvokedFunctionExpression:()=>HL,getImpliedNodeFormatForEmitWorker:()=>YU,getImpliedNodeFormatForFile:()=>f1e,getImpliedNodeFormatForFileWorker:()=>wVe,getImportNeedsImportDefaultHelper:()=>ntt,getImportNeedsImportStarHelper:()=>lVe,getIndentString:()=>bAe,getInferredLibraryNameResolveFrom:()=>BVe,getInitializedVariables:()=>mU,getInitializerOfBinaryExpression:()=>Yye,getInitializerOfBindingOrAssignmentElement:()=>GEe,getInterfaceBaseTypeNodes:()=>Q7,getInternalEmitFlags:()=>f1,getInvokedExpression:()=>cAe,getIsFileExcluded:()=>aHt,getIsolatedModules:()=>uS,getJSDocAugmentsTag:()=>u7,getJSDocClassTag:()=>Tx,getJSDocCommentRanges:()=>Fye,getJSDocCommentsAndTags:()=>Xye,getJSDocDeprecatedTag:()=>$h,getJSDocDeprecatedTagNoCache:()=>c2,getJSDocEnumTag:()=>g1,getJSDocHost:()=>DW,getJSDocImplementsTags:()=>bY,getJSDocOverloadTags:()=>Uye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>kL,getJSDocParameterTagsNoCache:()=>SJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>Fre,getJSDocPublicTagNoCache:()=>Rx,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>CA,getJSDocReturnTag:()=>uv,getJSDocReturnType:()=>BJ,getJSDocRoot:()=>lU,getJSDocSatisfiesExpressionType:()=>sEe,getJSDocSatisfiesTag:()=>bF,getJSDocTags:()=>Nx,getJSDocTemplateTag:()=>fW,getJSDocThisTag:()=>xb,getJSDocType:()=>oN,getJSDocTypeAliasName:()=>q$e,getJSDocTypeAssertionType:()=>Fie,getJSDocTypeParameterDeclarations:()=>TAe,getJSDocTypeParameterTags:()=>g3,getJSDocTypeParameterTagsNoCache:()=>l7,getJSDocTypeTag:()=>gv,getJSXImplicitImportBase:()=>rie,getJSXRuntimeImport:()=>nie,getJSXTransformEnabled:()=>JAe,getKeyForCompilerOptions:()=>Net,getLanguageVariant:()=>zne,getLastChild:()=>kbe,getLeadingCommentRanges:()=>CE,getLeadingCommentRangesOfNode:()=>$ge,getLeftmostAccessExpression:()=>_U,getLeftmostExpression:()=>yU,getLibFileNameFromLibReference:()=>lEe,getLibNameFromLibReference:()=>uQ,getLibraryNameFromLibFileName:()=>Ftt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ett,getLineOfLocalPosition:()=>z7,getLineStartPositionForPosition:()=>QB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>Tbe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>hLe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>G3,getLinesBetweenRangeEndPositions:()=>ILe,getLiteralText:()=>Mge,getLocalNameForExternalImport:()=>Zie,getLocalSymbolForExportDefault:()=>tz,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>_1e,getMappedContextSpan:()=>fnt,getMappedDocumentSpan:()=>yWe,getMappedLocation:()=>gpe,getMatchedFileSpec:()=>nrt,getMatchedIncludeSpec:()=>irt,getMeaningFromDeclaration:()=>eWe,getMeaningFromLocation:()=>QU,getMembersOfDeclaration:()=>eAe,getModeForFileReference:()=>$3t,getModeForResolutionAtIndex:()=>xrn,getModeForUsageLocation:()=>xtt,getModifiedTime:()=>vb,getModifiers:()=>sN,getModuleInstanceState:()=>XF,getModuleNameStringLiteralAt:()=>h1e,getModuleSpecifierEndingPreference:()=>LLe,getModuleSpecifierResolverHost:()=>ont,getNameForExportedSymbol:()=>DWe,getNameFromImportAttribute:()=>ude,getNameFromIndexInfo:()=>jge,getNameFromPropertyName:()=>F1e,getNameOfAccessExpression:()=>xbe,getNameOfCompilerOptionValue:()=>H9e,getNameOfDeclaration:()=>fl,getNameOfExpando:()=>Mye,getNameOfJSDocTypedef:()=>yF,getNameOfScriptTarget:()=>XAe,getNameOrArgument:()=>Ene,getNameTable:()=>_it,getNamespaceDeclarationNode:()=>aU,getNewLineCharacter:()=>IN,getNewLineKind:()=>Q1e,getNewLineOrDefaultFromHost:()=>UF,getNewTargetContainer:()=>RZe,getNextJSDocCommentLocation:()=>Jye,getNodeChildren:()=>H$e,getNodeForGeneratedName:()=>ZEe,getNodeId:()=>id,getNodeKind:()=>BQ,getNodeModifiers:()=>cpe,getNodeModulePathParts:()=>ode,getNonAssignedNameOfDeclaration:()=>vw,getNonAssignmentOperatorForCompoundAssignment:()=>Yde,getNonAugmentationDeclaration:()=>zJ,getNonDecoratorTokenPosOfNode:()=>nne,getNonIncrementalBuildInfoRoots:()=>m5t,getNonModifierTokenPosOfNode:()=>Pge,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>tN,getNormalizedPathComponents:()=>mB,getObjectFlags:()=>la,getOperatorAssociativity:()=>sbe,getOperatorPrecedence:()=>Zne,getOptionFromName:()=>fet,getOptionsForLibraryResolution:()=>Det,getOptionsNameMap:()=>Oie,getOptionsSyntaxByArrayElementValue:()=>uEe,getOptionsSyntaxByValue:()=>e9e,getOrCreateEmitNode:()=>g_,getOrUpdate:()=>cr,getOriginalNode:()=>xd,getOriginalNodeId:()=>Hy,getOutputDeclarationFileName:()=>jde,getOutputDeclarationFileNameWorker:()=>Itt,getOutputExtension:()=>u1e,getOutputFileNames:()=>vrn,getOutputJSFileNameWorker:()=>htt,getOutputPathsFor:()=>Kde,getOwnEmitOutputFilePath:()=>zZe,getOwnKeys:()=>yg,getOwnValues:()=>Kh,getPackageJsonTypesVersionsPaths:()=>z9e,getPackageNameFromTypesPackageName:()=>Ode,getPackageScopeForPath:()=>Wde,getParameterSymbolFromJSDoc:()=>Tne,getParentNodeInSpan:()=>L1e,getParseTreeNode:()=>eu,getParsedCommandLineOfConfigFile:()=>MEe,getPathComponents:()=>kp,getPathFromPathComponents:()=>Fm,getPathUpdater:()=>Pnt,getPathsBasePath:()=>SAe,getPatternFromSpec:()=>Qbe,getPendingEmitKindWithSeen:()=>kVe,getPositionOfLineAndCharacter:()=>ih,getPossibleGenericSignatures:()=>Krt,getPossibleOriginalInputExtensionForExtension:()=>gbe,getPossibleOriginalInputPathWithoutChangingExt:()=>Abe,getPossibleTypeArgumentsInfo:()=>jrt,getPreEmitDiagnostics:()=>Brn,getPrecedingNonSpaceCharacterPosition:()=>bWe,getPrivateIdentifier:()=>att,getProperties:()=>stt,getProperty:()=>fu,getPropertyAssignmentAliasLikeExpression:()=>YZe,getPropertyNameForPropertyNameNode:()=>R3,getPropertyNameFromType:()=>I2,getPropertyNameOfBindingOrAssignmentElement:()=>z$e,getPropertySymbolFromBindingElement:()=>_We,getPropertySymbolsFromContextualType:()=>rOe,getQuoteFromPreference:()=>cnt,getQuotePreference:()=>S1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>$z,getReferencedFileLocation:()=>epe,getRegexFromPattern:()=>nk,getRegularExpressionForWildcard:()=>gz,getRegularExpressionsForWildcards:()=>iie,getRelativePathFromDirectory:()=>_p,getRelativePathFromFile:()=>c1,getRelativePathToDirectoryOrUrl:()=>Hf,getRenameLocation:()=>W1e,getReplacementSpanForContextToken:()=>ent,getResolutionDiagnostic:()=>Wtt,getResolutionModeOverride:()=>Kie,getResolveJsonModule:()=>WW,getResolvePackageJsonExports:()=>lz,getResolvePackageJsonImports:()=>$ne,getResolvedExternalModuleName:()=>j7,getResolvedModuleFromResolution:()=>PL,getResolvedTypeReferenceDirectiveFromResolution:()=>E7,getRestIndicatorOfBindingOrAssignmentElement:()=>R9e,getRestParameterElementType:()=>Zye,getRightMostAssignedExpression:()=>bne,getRootDeclaration:()=>Fw,getRootDirectoryOfResolutionCache:()=>S5t,getRootLength:()=>Mf,getScriptKind:()=>Cnt,getScriptKindFromFileName:()=>qAe,getScriptTargetFeatures:()=>ine,getSelectedEffectiveModifierFlags:()=>eQ,getSelectedSyntacticModifierFlags:()=>sLe,getSemanticClassifications:()=>cHt,getSemanticJsxChildren:()=>dU,getSetAccessorTypeAnnotationNode:()=>eLe,getSetAccessorValueParameter:()=>q7,getSetExternalModuleIndicator:()=>qne,getShebang:()=>SB,getSingleVariableOfVariableStatement:()=>w3,getSnapshotText:()=>qz,getSnippetElement:()=>CEe,getSourceFileOfModule:()=>KJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>BAe,getSourceFileVersionAsHashFromText:()=>WVe,getSourceFilesToEmit:()=>vAe,getSourceMapRange:()=>qT,getSourceMapper:()=>SHt,getSourceTextOfNodeFromSourceFile:()=>vF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>JD,getStartPositionOfRange:()=>iz,getStartsOnNewLine:()=>O3,getStaticPropertiesAndClassStaticBlock:()=>AVe,getStrictOptionValue:()=>u_,getStringComparer:()=>gd,getSubPatternFromSpec:()=>KAe,getSuperCallFromStatement:()=>uVe,getSuperContainer:()=>G7,getSupportedCodeFixes:()=>mit,getSupportedExtensions:()=>Az,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>dz,getSwitchedType:()=>bnt,getSymbolId:()=>xg,getSymbolNameForPrivateIdentifier:()=>Fne,getSymbolTarget:()=>_nt,getSyntacticClassifications:()=>lHt,getSyntacticModifierFlags:()=>Zx,getSyntacticModifierFlagsNoCache:()=>_be,getSynthesizedDeepClone:()=>KA,getSynthesizedDeepCloneWithReplacements:()=>hie,getSynthesizedDeepClones:()=>l0,getSynthesizedDeepClonesWithReplacements:()=>Ide,getSyntheticLeadingComments:()=>P3,getSyntheticTrailingComments:()=>DU,getTargetLabel:()=>nWe,getTargetOfBindingOrAssignmentElement:()=>QW,getTemporaryModuleResolutionState:()=>Vde,getTextOfConstantValue:()=>Hge,getTextOfIdentifierOrLiteral:()=>A2,getTextOfJSDocComment:()=>TJ,getTextOfJsxAttributeName:()=>Ww,getTextOfJsxNamespacedName:()=>Sz,getTextOfNode:()=>Fp,getTextOfNodeFromSourceText:()=>OY,getTextOfPropertyName:()=>BW,getThisContainer:()=>s0,getThisParameter:()=>GW,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>UD,getTokenSourceMapRange:()=>Nz,getTouchingPropertyName:()=>Ob,getTouchingToken:()=>ise,getTrailingCommentRanges:()=>a2,getTrailingSemicolonDeferringWriter:()=>lbe,getTransformers:()=>L3t,getTsBuildInfoEmitOutputFilePath:()=>n5,getTsConfigObjectLiteralExpression:()=>x7,getTsConfigPropArrayElementValue:()=>nAe,getTypeAnnotationNode:()=>tLe,getTypeArgumentOrTypeParameterList:()=>DMt,getTypeKeywordOfTypeOnlyImport:()=>gnt,getTypeNode:()=>l9e,getTypeNodeIfAccessible:()=>Ipe,getTypeParameterFromJsDoc:()=>WZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>nVe,getUILocale:()=>ff,getUniqueName:()=>UU,getUniqueSymbolId:()=>JMt,getUseDefineForClassFields:()=>eie,getWatchErrorSummaryDiagnosticMessage:()=>qtt,getWatchFactory:()=>vtt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>Ure,handleNoEmitOptions:()=>Vtt,handleWatchOptionsConfigDirTemplateSubstitution:()=>Q9e,hasAbstractModifier:()=>ZW,hasAccessorModifier:()=>Zw,hasAmbientModifier:()=>mbe,hasChangesInResolutions:()=>ene,hasContextSensitiveParameters:()=>sde,hasDecorators:()=>m1,hasDocComment:()=>RMt,hasDynamicName:()=>qD,hasEffectiveModifier:()=>Lb,hasEffectiveModifiers:()=>hbe,hasEffectiveReadonlyModifier:()=>D3,hasExtension:()=>B0,hasImplementationTSFileExtension:()=>FLe,hasIndexSignature:()=>ynt,hasInferredType:()=>dde,hasInitializer:()=>XT,hasInvalidEscape:()=>abe,hasJSDocNodes:()=>jm,hasJSDocParameterTags:()=>vJ,hasJSFileExtension:()=>_N,hasJsonModuleEmitEnabled:()=>QAe,hasOnlyExpressionInitializer:()=>d1,hasOverrideModifier:()=>Hne,hasPossibleExternalModuleReference:()=>Uge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>w1e,hasQuestionToken:()=>jY,hasRecordedExternalHelpers:()=>TOt,hasResolutionModeOverride:()=>zLe,hasRestParameter:()=>Kre,hasScopeMarker:()=>Gb,hasStaticModifier:()=>tm,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>iLe,hasTSFileExtension:()=>Z3,hasTabstop:()=>KLe,hasTrailingDirectorySeparator:()=>Kp,hasType:()=>mf,hasTypeArguments:()=>Yqe,hasZeroOrOneAsteriskCharacter:()=>Pbe,hostGetCanonicalFileName:()=>$D,hostUsesCaseSensitiveFileNames:()=>N3,idText:()=>Vo,identifierIsThisKeyword:()=>pbe,identifierToKeywordKind:()=>lv,identity:()=>Zl,identitySourceMapConsumer:()=>rtt,ignoreSourceNewlines:()=>yEe,ignoredPaths:()=>Jp,importFromModuleSpecifier:()=>O7,importSyntaxAffectsModuleResolution:()=>Vbe,indexOfAnyCharCode:()=>tt,indexOfNode:()=>SW,indicesOf:()=>Ao,inferredTypesContainingFile:()=>$de,injectClassNamedEvaluationHelperBlockIfMissing:()=>IVe,injectClassThisAssignmentIfMissing:()=>u3t,insertImports:()=>unt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>ML,insertStatementAfterStandardPrologue:()=>Wge,insertStatementsAfterCustomPrologue:()=>tne,insertStatementsAfterStandardPrologue:()=>Nw,intersperse:()=>fe,intrinsicTagNameToString:()=>oEe,introducesArgumentsExoticObject:()=>SZe,inverseJsxOptionMap:()=>OEe,isAbstractConstructorSymbol:()=>Dbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>bp,isAccessibilityModifier:()=>qrt,isAccessor:()=>wB,isAccessorModifier:()=>ht,isAliasableExpression:()=>hAe,isAmbientModule:()=>c_,isAmbientPropertyDeclaration:()=>qJ,isAnyDirectorySeparator:()=>n0,isAnyImportOrBareOrAccessedRequire:()=>Jge,isAnyImportOrReExport:()=>HY,isAnyImportOrRequireStatement:()=>T7,isAnyImportSyntax:()=>vW,isAnySupportedFileExtension:()=>f$e,isApplicableVersionedTypesKey:()=>zEe,isArgumentExpressionOfElementAccess:()=>Prt,isArray:()=>Ki,isArrayBindingElement:()=>f3,isArrayBindingOrAssignmentElement:()=>LJ,isArrayBindingOrAssignmentPattern:()=>Pre,isArrayBindingPattern:()=>m2,isArrayLiteralExpression:()=>YI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>a9,isArrayTypeNode:()=>WF,isArrowFunction:()=>gA,isAsExpression:()=>Xd,isAssertClause:()=>cOt,isAssertEntry:()=>B$r,isAssertionExpression:()=>vd,isAssertsKeyword:()=>X,isAssignmentDeclaration:()=>L7,isAssignmentExpression:()=>zm,isAssignmentOperator:()=>ek,isAssignmentPattern:()=>DY,isAssignmentTarget:()=>RF,isAsteriskToken:()=>Bie,isAsyncFunction:()=>X7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>i0,isAwaitExpression:()=>_1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>AQ,isBinaryExpression:()=>po,isBinaryLogicalOperator:()=>Yne,isBinaryOperatorToken:()=>ZOt,isBindableObjectDefinePropertyCall:()=>S3,isBindableStaticAccessExpression:()=>NW,isBindableStaticElementAccessExpression:()=>dAe,isBindableStaticNameExpression:()=>v3,isBindingElement:()=>mg,isBindingElementOfBareOrAccessedRequire:()=>kZe,isBindingName:()=>LL,isBindingOrAssignmentElement:()=>GJ,isBindingOrAssignmentPattern:()=>FJ,isBindingPattern:()=>Nu,isBlock:()=>eg,isBlockLike:()=>eq,isBlockOrCatchScoped:()=>jJ,isBlockScope:()=>$J,isBlockScopedContainerTopLevel:()=>Xge,isBooleanLiteral:()=>RY,isBreakOrContinueStatement:()=>SY,isBreakStatement:()=>E$r,isBuildCommand:()=>X5t,isBuildInfoFile:()=>V3t,isBuilderProgram:()=>ert,isBundle:()=>AOt,isCallChain:()=>BB,isCallExpression:()=>Ll,isCallExpressionTarget:()=>Frt,isCallLikeExpression:()=>SF,isCallLikeOrFunctionLikeExpression:()=>Hre,isCallOrNewExpression:()=>Av,isCallOrNewExpressionTarget:()=>Zrt,isCallSignatureDeclaration:()=>Tg,isCallToHelper:()=>ik,isCaseBlock:()=>vde,isCaseClause:()=>Nie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>HJ,isCatchClause:()=>IQ,isCatchClauseVariableDeclaration:()=>ULe,isCatchClauseVariableDeclarationOrBindingElement:()=>sne,isCheckJsEnabledForFile:()=>hz,isCircularBuildOrder:()=>jz,isClassDeclaration:()=>mm,isClassElement:()=>MI,isClassExpression:()=>wd,isClassInstanceProperty:()=>Ore,isClassLike:()=>xa,isClassMemberModifier:()=>Wre,isClassNamedEvaluationHelperBlock:()=>Jz,isClassOrTypeElement:()=>NY,isClassStaticBlockDeclaration:()=>dl,isClassThisAssignmentBlock:()=>Xde,isColonToken:()=>vEe,isCommaExpression:()=>DEe,isCommaListExpression:()=>Ede,isCommaSequence:()=>Nde,isCommaToken:()=>SEe,isComment:()=>dWe,isCommonJsExportPropertyAssignment:()=>tAe,isCommonJsExportedExpression:()=>Lye,isCompoundAssignment:()=>Hde,isComputedNonLiteralName:()=>YY,isComputedPropertyName:()=>Un,isConciseBody:()=>h7,isConditionalExpression:()=>Hw,isConditionalTypeNode:()=>h2,isConstAssertion:()=>aEe,isConstTypeReference:()=>l2,isConstructSignatureDeclaration:()=>im,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>sk,isContextualKeyword:()=>CAe,isContinueStatement:()=>b$r,isCustomPrologue:()=>gne,isDebuggerStatement:()=>S$r,isDeclaration:()=>em,isDeclarationBindingElement:()=>CW,isDeclarationFileName:()=>MC,isDeclarationName:()=>KT,isDeclarationNameOfEnumOrNamespace:()=>Rbe,isDeclarationReadonly:()=>Cf,isDeclarationStatement:()=>Tge,isDeclarationWithTypeParameterChildren:()=>une,isDeclarationWithTypeParameters:()=>lne,isDecorator:()=>Eo,isDecoratorTarget:()=>mMt,isDefaultClause:()=>Bde,isDefaultImport:()=>B3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>xZe,isDeleteExpression:()=>PF,isDeleteTarget:()=>jye,isDeprecatedDeclaration:()=>kWe,isDestructuringAssignment:()=>Lx,isDiskPathRoot:()=>AE,isDoStatement:()=>y$r,isDocumentRegistryEntry:()=>J1e,isDotDotDotToken:()=>yde,isDottedName:()=>Xne,isDynamicName:()=>_Ae,isEffectiveExternalModule:()=>_3,isEffectiveStrictModeSourceFile:()=>cne,isElementAccessChain:()=>EF,isElementAccessExpression:()=>Qg,isEmittedFileOfProgram:()=>Q3t,isEmptyArrayLiteral:()=>ALe,isEmptyBindingElement:()=>Rr,isEmptyBindingPattern:()=>_t,isEmptyObjectLiteral:()=>Sbe,isEmptyStatement:()=>k$e,isEmptyStringLiteral:()=>Oye,isEntityName:()=>mC,isEntityNameExpression:()=>Hd,isEnumConst:()=>OA,isEnumDeclaration:()=>J3,isEnumMember:()=>YF,isEqualityOperatorKind:()=>vWe,isEqualsGreaterThanToken:()=>h9e,isExclamationToken:()=>Gz,isExcludedFile:()=>gPt,isExclusivelyTypeOnlyImportOrExport:()=>ktt,isExpandoPropertyDeclaration:()=>cQ,isExportAssignment:()=>yf,isExportDeclaration:()=>Vh,isExportModifier:()=>y,isExportName:()=>w9e,isExportNamespaceAsDefaultDeclaration:()=>WY,isExportOrDefaultModifier:()=>FEe,isExportSpecifier:()=>k0,isExportsIdentifier:()=>E3,isExportsOrModuleExportsOrAlias:()=>_Q,isExpression:()=>un,isExpressionNode:()=>UT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>yMt,isExpressionOfOptionalChainRoot:()=>EY,isExpressionStatement:()=>PC,isExpressionWithTypeArguments:()=>A_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>DAe,isExternalModule:()=>Lm,isExternalModuleAugmentation:()=>wF,isExternalModuleImportEqualsDeclaration:()=>YL,isExternalModuleIndicator:()=>QT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>HF,isExternalModuleSymbol:()=>XD,isExternalOrCommonJsModule:()=>Sl,isFileLevelReservedGeneratedIdentifier:()=>wY,isFileLevelUniqueName:()=>v7,isFileProbablyExternalModule:()=>VEe,isFirstDeclarationOfSymbolParameter:()=>Int,isFixablePromiseHandler:()=>Jnt,isForInOrOfStatement:()=>WL,isForInStatement:()=>m9e,isForInitializer:()=>yE,isForOfStatement:()=>BEe,isForStatement:()=>X3,isFullSourceFile:()=>dN,isFunctionBlock:()=>wW,isFunctionBody:()=>m7,isFunctionDeclaration:()=>ah,isFunctionExpression:()=>jA,isFunctionExpressionOrArrowFunction:()=>ZF,isFunctionLike:()=>Eu,isFunctionLikeDeclaration:()=>Gd,isFunctionLikeKind:()=>mW,isFunctionLikeOrClassStaticBlockDeclaration:()=>p3,isFunctionOrConstructorTypeNode:()=>Sge,isFunctionOrModuleBlock:()=>xJ,isFunctionSymbol:()=>FZe,isFunctionTypeNode:()=>Z_,isGeneratedIdentifier:()=>Gp,isGeneratedPrivateIdentifier:()=>ZL,isGetAccessor:()=>TB,isGetAccessorDeclaration:()=>wg,isGetOrSetAccessorDeclaration:()=>RJ,isGlobalScopeAugmentation:()=>DB,isGlobalSourceFile:()=>fc,isGrammarError:()=>Vge,isHeritageClause:()=>y1,isHoistedFunction:()=>zge,isHoistedVariableStatement:()=>qge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>ebe,isIdentifierName:()=>HZe,isIdentifierOrThisTypeNode:()=>kOt,isIdentifierPart:()=>l1,isIdentifierStart:()=>Sd,isIdentifierText:()=>qh,isIdentifierTypePredicate:()=>vZe,isIdentifierTypeReference:()=>HLe,isIfStatement:()=>Q3,isIgnoredFileFromWildCardWatching:()=>A1e,isImplicitGlob:()=>Ybe,isImportAttribute:()=>lOt,isImportAttributeName:()=>f7,isImportAttributes:()=>xU,isImportCall:()=>jp,isImportClause:()=>Yw,isImportDeclaration:()=>Yf,isImportEqualsDeclaration:()=>Zm,isImportKeyword:()=>an,isImportMeta:()=>fv,isImportOrExportSpecifier:()=>sS,isImportOrExportSpecifierName:()=>XMt,isImportSpecifier:()=>dy,isImportTypeAssertionContainer:()=>v$r,isImportTypeNode:()=>qm,isImportable:()=>Fnt,isInComment:()=>o9,isInCompoundLikeAssignment:()=>IAe,isInExpressionContext:()=>hne,isInJSDoc:()=>XY,isInJSFile:()=>Bo,isInJSXText:()=>TMt,isInJsonFile:()=>uAe,isInNonReferenceComment:()=>GMt,isInReferenceComment:()=>xMt,isInRightSideOfInternalImportEqualsDeclaration:()=>tWe,isInString:()=>zz,isInTemplateString:()=>Urt,isInTopLevelContext:()=>oAe,isInTypeQuery:()=>$Y,isIncrementalBuildInfo:()=>m1e,isIncrementalBundleEmitBuildInfo:()=>A5t,isIncrementalCompilation:()=>OW,isIndexSignatureDeclaration:()=>N0,isIndexedAccessTypeNode:()=>yv,isInferTypeNode:()=>rR,isInfinityOrNaNString:()=>yz,isInitializedProperty:()=>r1e,isInitializedVariable:()=>Une,isInsideJsxElement:()=>gWe,isInsideJsxElementOrAttribute:()=>wMt,isInsideNodeModules:()=>M1e,isInsideTemplateLiteral:()=>k1e,isInstanceOfExpression:()=>kAe,isInstantiatedModule:()=>Ket,isInterfaceDeclaration:()=>p_,isInternalDeclaration:()=>jre,isInternalModuleImportEqualsDeclaration:()=>b3,isInternalName:()=>U$e,isIntersectionTypeNode:()=>_f,isIntrinsicJsxName:()=>pU,isIterationStatement:()=>YT,isJSDoc:()=>aR,isJSDocAllType:()=>fOt,isJSDocAugmentsTag:()=>Lz,isJSDocAuthorTag:()=>N$r,isJSDocCallbackTag:()=>Z$e,isJSDocClassTag:()=>hOt,isJSDocCommentContainingNode:()=>C7,isJSDocConstructSignature:()=>zY,isJSDocDeprecatedTag:()=>P$e,isJSDocEnumTag:()=>TEe,isJSDocFunctionType:()=>kie,isJSDocImplementsTag:()=>S9e,isJSDocImportTag:()=>NN,isJSDocIndexSignature:()=>AAe,isJSDocLikeText:()=>net,isJSDocLink:()=>dOt,isJSDocLinkCode:()=>pOt,isJSDocLinkLike:()=>Gx,isJSDocLinkPlain:()=>T$r,isJSDocMemberName:()=>j3,isJSDocNameReference:()=>wde,isJSDocNamepathType:()=>R$r,isJSDocNamespaceBody:()=>Tye,isJSDocNode:()=>m3,isJSDocNonNullableType:()=>_9e,isJSDocNullableType:()=>Die,isJSDocOptionalParameter:()=>ade,isJSDocOptionalType:()=>F$e,isJSDocOverloadTag:()=>xie,isJSDocOverrideTag:()=>b9e,isJSDocParameterTag:()=>dS,isJSDocPrivateTag:()=>V$e,isJSDocPropertyLikeTag:()=>vY,isJSDocPropertyTag:()=>mOt,isJSDocProtectedTag:()=>W$e,isJSDocPublicTag:()=>L$e,isJSDocReadonlyTag:()=>O$e,isJSDocReturnTag:()=>E9e,isJSDocSatisfiesExpression:()=>iEe,isJSDocSatisfiesTag:()=>v9e,isJSDocSeeTag:()=>D$r,isJSDocSignature:()=>s9,isJSDocTag:()=>C3,isJSDocTemplateTag:()=>MB,isJSDocThisTag:()=>M$e,isJSDocThrowsTag:()=>x$r,isJSDocTypeAlias:()=>lS,isJSDocTypeAssertion:()=>hQ,isJSDocTypeExpression:()=>K3,isJSDocTypeLiteral:()=>FU,isJSDocTypeTag:()=>Tde,isJSDocTypedefTag:()=>ZU,isJSDocUnknownTag:()=>k$r,isJSDocUnknownType:()=>IOt,isJSDocVariadicType:()=>y9e,isJSXTagName:()=>iU,isJsonEqual:()=>ide,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>RN,isJsxAttributeLike:()=>PJ,isJsxAttributeName:()=>jLe,isJsxAttributes:()=>fQ,isJsxCallLike:()=>h3,isJsxChild:()=>OJ,isJsxClosingElement:()=>pQ,isJsxClosingFragment:()=>gOt,isJsxElement:()=>TN,isJsxExpression:()=>Rie,isJsxFragment:()=>U3,isJsxNamespacedName:()=>oR,isJsxOpeningElement:()=>sR,isJsxOpeningFragment:()=>Qw,isJsxOpeningLikeElement:()=>nI,isJsxOpeningLikeElementTagName:()=>CMt,isJsxSelfClosingElement:()=>GU,isJsxSpreadAttribute:()=>Zz,isJsxTagNameExpression:()=>OL,isJsxText:()=>r9,isJumpStatementTarget:()=>T1e,isKeyword:()=>T0,isKeywordOrPunctuation:()=>mAe,isKnownSymbol:()=>J7,isLabelName:()=>Wrt,isLabelOfLabeledStatement:()=>Vrt,isLabeledStatement:()=>YW,isLateVisibilityPaintedStatement:()=>R7,isLeftHandSideExpression:()=>G_,isLet:()=>aS,isLineBreak:()=>ml,isLiteralComputedPropertyDeclarationName:()=>Nne,isLiteralExpression:()=>FL,isLiteralExpressionOfObject:()=>Lre,isLiteralImportTypeNode:()=>Fy,isLiteralKind:()=>BY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>iWe,isLiteralTypeLiteral:()=>vge,isLiteralTypeNode:()=>wE,isLocalName:()=>QF,isLogicalOperator:()=>lLe,isLogicalOrCoalescingAssignmentExpression:()=>RAe,isLogicalOrCoalescingAssignmentOperator:()=>$7,isLogicalOrCoalescingBinaryExpression:()=>Qne,isLogicalOrCoalescingBinaryOperator:()=>NAe,isMappedTypeNode:()=>OB,isMemberName:()=>Bw,isMetaProperty:()=>Du,isMethodDeclaration:()=>gu,isMethodOrAccessor:()=>VL,isMethodSignature:()=>Il,isMinusToken:()=>bde,isMissingDeclaration:()=>w$r,isMissingPackageJsonInfo:()=>bPt,isModifier:()=>hg,isModifierKind:()=>YD,isModifierLike:()=>fp,isModuleAugmentationExternal:()=>ane,isModuleBlock:()=>BN,isModuleBody:()=>Bge,isModuleDeclaration:()=>Lh,isModuleExportName:()=>C9e,isModuleExportsAccessExpression:()=>pN,isModuleIdentifier:()=>RW,isModuleName:()=>FOt,isModuleOrEnumDeclaration:()=>I3,isModuleReference:()=>xY,isModuleSpecifierLike:()=>CWe,isModuleWithStringLiteralName:()=>PY,isNameOfFunctionDeclaration:()=>Hrt,isNameOfModuleDeclaration:()=>Mrt,isNamedDeclaration:()=>sh,isNamedEvaluation:()=>Fb,isNamedEvaluationSource:()=>tbe,isNamedExportBindings:()=>Zre,isNamedExports:()=>Ev,isNamedImportBindings:()=>xx,isNamedImports:()=>wN,isNamedImportsOrExports:()=>Kne,isNamedTupleMember:()=>tR,isNamespaceBody:()=>Qre,isNamespaceExport:()=>ak,isNamespaceExportDeclaration:()=>wEe,isNamespaceImport:()=>Mx,isNamespaceReexportDeclaration:()=>DZe,isNewExpression:()=>C2,isNewExpressionTarget:()=>spe,isNewScopeNode:()=>fie,isNoSubstitutionTemplateLiteral:()=>HW,isNodeArray:()=>aN,isNodeArrayMultiLine:()=>FAe,isNodeDescendantOf:()=>kW,isNodeKind:()=>A7,isNodeLikeSystem:()=>Xm,isNodeModulesDirectory:()=>Od,isNodeWithPossibleHoistedDeclaration:()=>MZe,isNonContextualKeyword:()=>$ye,isNonGlobalAmbientModule:()=>one,isNonNullAccess:()=>cde,isNonNullChain:()=>DJ,isNonNullExpression:()=>bv,isNonStaticMethodOrAccessorWithPrivateName:()=>n3t,isNotEmittedStatement:()=>uOt,isNullishCoalesce:()=>NJ,isNumber:()=>ws,isNumericLiteral:()=>yC,isNumericLiteralName:()=>bN,isObjectBindingElementWithoutPropertyName:()=>Z1e,isObjectBindingOrAssignmentElement:()=>_W,isObjectBindingOrAssignmentPattern:()=>ZJ,isObjectBindingPattern:()=>$m,isObjectLiteralElement:()=>GY,isObjectLiteralElementLike:()=>ww,isObjectLiteralExpression:()=>ag,isObjectLiteralMethod:()=>g2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>rAe,isObjectTypeDeclaration:()=>rQ,isOmittedExpression:()=>Ep,isOptionalChain:()=>LC,isOptionalChainRoot:()=>IW,isOptionalDeclaration:()=>FB,isOptionalJSDocPropertyLikeTag:()=>gie,isOptionalTypeNode:()=>n9,isOuterExpression:()=>T9e,isOutermostOptionalChain:()=>d3,isOverrideModifier:()=>St,isPackageJsonInfo:()=>$9e,isPackedArrayLiteral:()=>rEe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>We,isParameterPropertyModifier:()=>TY,isParenthesizedExpression:()=>dI,isParenthesizedTypeNode:()=>_v,isParseTreeNode:()=>DL,isPartOfParameterDeclaration:()=>jL,isPartOfTypeNode:()=>xw,isPartOfTypeOnlyImportOrExportDeclaration:()=>Ege,isPartOfTypeQuery:()=>lAe,isPartiallyEmittedExpression:()=>Ay,isPatternMatch:()=>qd,isPinnedComment:()=>B7,isPlainJsFile:()=>ZY,isPlusToken:()=>xz,isPossiblyTypeArgumentPosition:()=>D1e,isPostfixUnaryExpression:()=>ok,isPrefixUnaryExpression:()=>D0,isPrimitiveLiteralValue:()=>vz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>hC,isPrivateIdentifierPropertyAccessExpression:()=>hW,isPrivateIdentifierSymbol:()=>XZe,isProgramUptoDate:()=>Ztt,isPrologueDirective:()=>cS,isPropertyAccessChain:()=>Dx,isPropertyAccessEntityNameExpression:()=>xF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>VJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Mre,isPropertyAssignment:()=>Cm,isPropertyDeclaration:()=>pi,isPropertyName:()=>PI,isPropertyNameLiteral:()=>Gw,isPropertySignature:()=>ss,isPrototypeAccess:()=>GF,isPrototypePropertyAssignment:()=>Sne,isPunctuation:()=>qye,isPushOrUnshiftIdentifier:()=>rbe,isQualifiedName:()=>zi,isQuestionDotToken:()=>wie,isQuestionOrExclamationToken:()=>DOt,isQuestionOrPlusOrMinusToken:()=>GOt,isQuestionToken:()=>eR,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>xOt,isRecognizedTripleSlashComment:()=>rne,isReferenceFileLocation:()=>jie,isReferencedFile:()=>i5,isRegularExpressionLiteral:()=>EEe,isRequireCall:()=>uy,isRequireVariableStatement:()=>mne,isRestParameter:()=>RB,isRestTypeNode:()=>i9,isReturnStatement:()=>_2,isReturnStatementWithFixablePromiseHandler:()=>OWe,isRightSideOfAccessExpression:()=>Ebe,isRightSideOfInstanceofExpression:()=>gLe,isRightSideOfPropertyAccess:()=>tse,isRightSideOfQualifiedName:()=>_Mt,isRightSideOfQualifiedNameOrPropertyAccess:()=>ez,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>uLe,isRootedDiskPath:()=>Up,isSameEntityName:()=>sU,isSatisfiesExpression:()=>Xg,isSemicolonClassElement:()=>oOt,isSetAccessor:()=>dv,isSetAccessorDeclaration:()=>kg,isShiftOperatorOrHigher:()=>eet,isShorthandAmbientModuleSymbol:()=>MY,isShorthandPropertyAssignment:()=>u0,isSideEffectImport:()=>cEe,isSignedNumericLiteral:()=>Gne,isSimpleCopiableExpression:()=>yQ,isSimpleInlineableExpression:()=>kN,isSimpleParameterList:()=>n1e,isSingleOrDoubleQuote:()=>Cne,isSolutionConfig:()=>vet,isSourceElement:()=>qLe,isSourceFile:()=>cl,isSourceFileFromLibrary:()=>Ase,isSourceFileJS:()=>o0,isSourceFileNotJson:()=>gAe,isSourceMapping:()=>e3t,isSpecialPropertyDeclaration:()=>Qye,isSpreadAssignment:()=>Hx,isSpreadElement:()=>cf,isStatement:()=>Lc,isStatementButNotDeclaration:()=>WJ,isStatementOrBlock:()=>Jre,isStatementWithLocals:()=>Zge,isStatic:()=>lg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>qY,isStringAndEmptyAnonymousObjectIntersection:()=>kMt,isStringDoubleQuoted:()=>_ne,isStringLiteral:()=>Lg,isStringLiteralLike:()=>_A,isStringLiteralOrJsxExpression:()=>MJ,isStringLiteralOrTemplate:()=>jMt,isStringOrNumericLiteralLike:()=>h1,isStringOrRegularExpressionOrTemplateLiteral:()=>zrt,isStringTextContainingNode:()=>Vre,isSuperCall:()=>Gy,isSuperKeyword:()=>rr,isSuperProperty:()=>Zy,isSupportedSourceFileName:()=>Ube,isSwitchStatement:()=>Sde,isSyntaxList:()=>Gie,isSyntheticExpression:()=>Y3,isSyntheticReference:()=>Fz,isTagName:()=>Ort,isTaggedTemplateExpression:()=>QI,isTaggedTemplateTag:()=>hMt,isTemplateExpression:()=>MF,isTemplateHead:()=>dQ,isTemplateLiteral:()=>yW,isTemplateLiteralKind:()=>HD,isTemplateLiteralToken:()=>bge,isTemplateLiteralTypeNode:()=>nR,isTemplateLiteralTypeSpan:()=>SN,isTemplateMiddle:()=>vie,isTemplateMiddleOrTemplateTail:()=>p7,isTemplateSpan:()=>Tie,isTemplateTail:()=>_de,isTextWhiteSpaceLike:()=>VMt,isThis:()=>rse,isThisContainerOrFunctionBlock:()=>TZe,isThisIdentifier:()=>kF,isThisInTypeQuery:()=>zL,isThisInitializedDeclaration:()=>aAe,isThisInitializedObjectBindingExpression:()=>NZe,isThisProperty:()=>pne,isThisTypeNode:()=>Px,isThisTypeParameter:()=>bz,isThisTypePredicate:()=>BZe,isThrowStatement:()=>G$e,isToken:()=>xL,isTokenKind:()=>d7,isTraceEnabled:()=>JW,isTransientSymbol:()=>Tw,isTrivia:()=>gU,isTryStatement:()=>kU,isTupleTypeNode:()=>Mw,isTypeAlias:()=>Bne,isTypeAliasDeclaration:()=>PB,isTypeAssertionExpression:()=>OF,isTypeDeclaration:()=>aQ,isTypeElement:()=>kx,isTypeKeyword:()=>lpe,isTypeKeywordTokenOrIdentifier:()=>IWe,isTypeLiteralNode:()=>bh,isTypeNode:()=>uc,isTypeNodeKind:()=>OAe,isTypeOfExpression:()=>vN,isTypeOnlyExportDeclaration:()=>kJ,isTypeOnlyImportDeclaration:()=>cN,isTypeOnlyImportOrExportDeclaration:()=>lN,isTypeOperatorNode:()=>WB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>BE,isTypeQueryNode:()=>Pw,isTypeReferenceNode:()=>oh,isTypeReferenceType:()=>_7,isTypeUsableAsPropertyName:()=>f2,isUMDExportSymbol:()=>WAe,isUnaryExpression:()=>Yre,isUnaryExpressionWithWrite:()=>uN,isUnicodeIdentifierStart:()=>It,isUnionTypeNode:()=>AS,isUrl:()=>o_,isValidBigIntString:()=>cie,isValidESSymbolDeclaration:()=>EZe,isValidTypeOnlyAliasUseSite:()=>e9,isValueSignatureDeclaration:()=>T3,isVarAwaitUsing:()=>Bd,isVarConst:()=>sI,isVarConstLike:()=>JT,isVarUsing:()=>iI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>k7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>TW,isVariableDeclarationInitializedToRequire:()=>Z7,isVariableDeclarationList:()=>d_,isVariableLike:()=>D7,isVariableStatement:()=>Eh,isVoidExpression:()=>iR,isWatchSet:()=>Nbe,isWhileStatement:()=>x$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>hu,isWithStatement:()=>aOt,isWriteAccess:()=>F3,isWriteOnlyAccess:()=>LAe,isYieldExpression:()=>Qd,jsxModeNeedsExplicitImport:()=>knt,keywordPart:()=>v1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>cet,libs:()=>F9e,lineBreakPart:()=>cse,loadModuleFromGlobalCache:()=>ZPt,loadWithModeAwareCache:()=>p1e,makeIdentifierFromModuleName:()=>Dw,makeImport:()=>eO,makeStringLiteral:()=>upe,mangleScopedPackageName:()=>Qie,map:()=>lt,mapAllOrFail:()=>$t,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Ot,mapOneOrMany:()=>Tnt,mapToDisplayParts:()=>tO,matchFiles:()=>Xbe,matchPatternOrExact:()=>jbe,matchedText:()=>_w,matchesExclude:()=>U9e,matchesExcludeWorker:()=>K9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>yLe,memoize:()=>LA,memoizeOne:()=>VA,min:()=>oa,minAndMax:()=>OLe,missingFileModifiedTime:()=>xh,modifierToFlag:()=>tQ,modifiersToFlags:()=>Lw,moduleExportNameIsDefault:()=>pv,moduleExportNameTextEscaped:()=>BF,moduleExportNameTextUnescaped:()=>KD,moduleOptionDeclaration:()=>JOt,moduleResolutionIsEqualTo:()=>Gge,moduleResolutionNameAndModeGetter:()=>SVe,moduleResolutionOptionDeclarations:()=>get,moduleResolutionSupportsPackageJsonExportsAndImports:()=>EU,moduleResolutionUsesNodeModules:()=>hWe,moduleSpecifierToValidIdentifier:()=>Y1e,moduleSpecifiers:()=>JF,moduleSupportsImportAttributes:()=>wLe,moduleSymbolToValidIdentifier:()=>H1e,moveEmitHelpers:()=>a9e,moveRangeEnd:()=>GAe,moveRangePastDecorators:()=>rk,moveRangePastModifiers:()=>hv,moveRangePos:()=>tk,moveSyntheticComments:()=>i9e,mutateMap:()=>oz,mutateMapSkippingNewValues:()=>hN,needsParentheses:()=>EWe,needsScopeMarker:()=>I7,newCaseClauseTracker:()=>FWe,newPrivateEnvironment:()=>s3t,noEmitNotification:()=>a1e,noEmitSubstitution:()=>Ude,noTransformers:()=>Z3t,noTruncationMaximumTruncationLength:()=>qre,nodeCanBeDecorated:()=>tU,nodeCoreModules:()=>wU,nodeHasName:()=>u3,nodeIsDecorated:()=>rU,nodeIsMissing:()=>af,nodeIsPresent:()=>p1,nodeIsSynthesized:()=>ap,nodeModuleNameResolver:()=>wPt,nodeModulesPathPart:()=>Yx,nodeNextJsonConfigResolver:()=>TPt,nodeOrChildIsDecorated:()=>Ine,nodeOverlapsWithStartEnd:()=>sWe,nodePosToString:()=>Lge,nodeSeenTracker:()=>sse,nodeStartsNewLexicalEnvironment:()=>nbe,noop:()=>Dc,noopFileWatcher:()=>$ie,normalizePath:()=>su,normalizeSlashes:()=>xp,normalizeSpans:()=>vI,not:()=>dC,notImplemented:()=>rl,notImplementedResolver:()=>P3t,nullNodeConverters:()=>dEe,nullParenthesizerRules:()=>AEe,nullTransformationContext:()=>l1e,objectAllocator:()=>WC,operatorPart:()=>Ape,optionDeclarations:()=>Xw,optionMapToObject:()=>M9e,optionsAffectingProgramStructure:()=>zOt,optionsForBuild:()=>det,optionsForWatch:()=>Mz,optionsHaveChanges:()=>w0,or:()=>Qp,orderedRemoveItem:()=>Xl,orderedRemoveItemAt:()=>WA,packageIdToPackageName:()=>JJ,packageIdToString:()=>AN,parameterIsThisKeyword:()=>DF,parameterNamePart:()=>OMt,parseBaseNodeFactory:()=>POt,parseBigInt:()=>MLe,parseBuildCommand:()=>sPt,parseCommandLine:()=>nPt,parseCommandLineWorker:()=>pet,parseConfigFileTextToJson:()=>Iet,parseConfigFileWithSystem:()=>B5t,parseConfigHostFromCompilerHostLike:()=>NVe,parseCustomTypeOption:()=>W9e,parseIsolatedEntityName:()=>Pz,parseIsolatedJSDocComment:()=>HOt,parseJSDocTypeExpressionForTests:()=>nen,parseJsonConfigFileContent:()=>xen,parseJsonSourceFileConfigFileContent:()=>QEe,parseJsonText:()=>WEe,parseListTypeOption:()=>tPt,parseNodeFactory:()=>q3,parseNodeModuleFromPath:()=>KEe,parsePackageName:()=>jEe,parsePseudoBigInt:()=>mz,parseValidBigInt:()=>eEe,pasteEdits:()=>Dst,patchWriteFileEnsuringDirectory:()=>i2,pathContainsNodeModules:()=>KW,pathIsAbsolute:()=>dE,pathIsBareSpecifier:()=>jh,pathIsRelative:()=>mp,patternText:()=>e2,performIncrementalCompilation:()=>w5t,performance:()=>_b,positionBelongsToNode:()=>Yrt,positionIsASICandidate:()=>BWe,positionIsSynthesized:()=>xB,positionsAreOnSameLine:()=>vE,preProcessFile:()=>Yin,probablyUsesSemicolons:()=>P1e,processCommentPragmas:()=>oet,processPragmasIntoFields:()=>aet,processTaggedTemplateExpression:()=>utt,programContainsEsModules:()=>ZMt,programContainsModules:()=>FMt,projectReferenceIsEqualTo:()=>$re,propertyNamePart:()=>PMt,pseudoBigIntToString:()=>PW,punctuationPart:()=>F0,pushIfUnique:()=>Qi,quote:()=>fpe,quotePreferenceFromString:()=>ant,rangeContainsPosition:()=>nse,rangeContainsPositionExclusive:()=>R1e,rangeContainsRange:()=>gy,rangeContainsRangeExclusive:()=>bMt,rangeContainsStartEnd:()=>N1e,rangeEndIsOnSameLineAsRangeStart:()=>Jne,rangeEndPositionsAreOnSameLine:()=>pLe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>x3,rangeOfNode:()=>qbe,rangeOfTypeParameters:()=>$be,rangeOverlapsWithStartEnd:()=>ope,rangeStartIsOnSameLineAsRangeEnd:()=>fLe,rangeStartPositionsAreOnSameLine:()=>nz,readBuilderProgram:()=>PVe,readConfigFile:()=>HEe,readJson:()=>k3,readJsonConfigFile:()=>oPt,readJsonOrUndefined:()=>wbe,reduceEachLeadingCommentRange:()=>NL,reduceEachTrailingCommentRange:()=>hf,reduceLeft:()=>Kl,reduceLeftIterator:()=>ne,reducePathComponents:()=>s2,refactor:()=>rq,regExpEscape:()=>u$e,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Or,removeAllComments:()=>Rz,removeEmitHelper:()=>v$e,removeExtension:()=>aie,removeFileExtension:()=>c0,removeIgnoredPath:()=>GVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Gm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>oy,repeatString:()=>G1e,replaceElement:()=>Ql,replaceFirstStar:()=>V3,resolutionExtensionIsTSOrJson:()=>fz,resolveConfigFileProjectName:()=>prt,resolveJSModule:()=>SPt,resolveLibrary:()=>tVe,resolveModuleName:()=>OU,resolveModuleNameFromCache:()=>gtn,resolvePackageNameToPackageJson:()=>Ret,resolvePath:()=>IE,resolveProjectReferencePath:()=>Uz,resolveTripleslashReference:()=>wtt,resolveTypeReferenceDirective:()=>_Pt,resolvingEmptyArray:()=>zre,returnFalse:()=>As,returnNoopFileWatcher:()=>rpe,returnTrue:()=>Nf,returnUndefined:()=>Am,returnsPromise:()=>Xnt,rewriteModuleSpecifier:()=>Qz,sameFlatMap:()=>Fr,sameMap:()=>Er,sameMapping:()=>trn,scanTokenAtPosition:()=>qs,scanner:()=>f_,semanticDiagnosticsOptionDeclarations:()=>UOt,serializeCompilerOptions:()=>yet,server:()=>Jfn,servicesVersion:()=>xon,setCommentRange:()=>yh,setConfigFileInOptions:()=>bet,setConstantValue:()=>o9e,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>OVe,setIdentifierAutoGenerate:()=>yie,setIdentifierGeneratedImportReference:()=>u9e,setIdentifierTypeArguments:()=>Wx,setInternalEmitFlags:()=>_ie,setLocalizedDiagnosticMessages:()=>bU,setNodeChildren:()=>COt,setNodeFlags:()=>QLe,setObjectAllocator:()=>_Le,setOriginalNode:()=>ua,setParent:()=>UA,setParentRecursive:()=>t9,setPrivateIdentifier:()=>PU,setSnippetElement:()=>_Ee,setSourceMapRange:()=>Yg,setStackTraceLimit:()=>WT,setStartsOnNewLine:()=>Yd,setSyntheticLeadingComments:()=>VB,setSyntheticTrailingComments:()=>M3,setSys:()=>SI,setSysLog:()=>ZC,setTextRange:()=>gn,setTextRangeEnd:()=>BU,setTextRangePos:()=>Cz,setTextRangePosEnd:()=>GB,setTextRangePosWidth:()=>tEe,setTokenSourceMapRange:()=>hEe,setTypeNode:()=>c9e,setUILocale:()=>Zs,setValueDeclaration:()=>W7,shouldAllowImportingTsExtension:()=>Xie,shouldPreserveConstEnums:()=>Vb,shouldRewriteModuleSpecifier:()=>vne,shouldUseUriStyleNodeCoreModules:()=>xWe,showModuleSpecifier:()=>mLe,signatureHasRestParameter:()=>G0,signatureToDisplayParts:()=>mnt,single:()=>Xa,singleElementArray:()=>j_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ws,skipAlias:()=>VC,skipConstraint:()=>int,skipOuterExpressions:()=>XI,skipParentheses:()=>JA,skipPartiallyEmittedExpressions:()=>u2,skipTrivia:()=>Yu,skipTypeChecking:()=>L3,skipTypeCheckingIgnoringNoCheck:()=>PLe,skipTypeParentheses:()=>M7,skipWhile:()=>up,sliceAfter:()=>zbe,some:()=>zt,sortAndDeduplicate:()=>al,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>Aet,sourceFileMayBeEmitted:()=>xW,sourceMapCommentRegExp:()=>qet,sourceMapCommentRegExpDontCareLineStart:()=>zPt,spacePart:()=>TI,spanMap:()=>_n,startEndContainsRange:()=>ZAe,startEndOverlapsWithStartEnd:()=>oWe,startOnNewLine:()=>x0,startTracing:()=>hd,startsWith:()=>Ac,startsWithDirectory:()=>iv,startsWithUnderscore:()=>Dnt,startsWithUseStrict:()=>BOt,stringContainsAt:()=>nHt,stringToToken:()=>Ta,stripQuotes:()=>d2,supportedDeclarationExtensions:()=>tde,supportedJSExtensionsFlat:()=>SU,supportedLocaleDirectories:()=>cv,supportedTSExtensionsFlat:()=>Jbe,supportedTSImplementationExtensions:()=>sie,suppressLeadingAndTrailingTrivia:()=>Py,suppressLeadingTrivia:()=>gEe,suppressTrailingTrivia:()=>t9e,symbolEscapedNameNoDefault:()=>mWe,symbolName:()=>of,symbolNameNoDefault:()=>lnt,symbolToDisplayParts:()=>dpe,sys:()=>Ed,sysLog:()=>_h,tagNamesAreEquivalent:()=>e5,takeWhile:()=>i_,targetOptionDeclaration:()=>uet,targetToLibMap:()=>Is,testFormatSettings:()=>Ain,textChangeRangeIsUnchanged:()=>cy,textChangeRangeNewSpan:()=>iN,textChanges:()=>xo,textOrKeywordPart:()=>hnt,textPart:()=>IS,textRangeContainsPositionInclusive:()=>nl,textRangeContainsTextSpan:()=>Mg,textRangeIntersectsWithTextSpan:()=>l3,textSpanContainsPosition:()=>Io,textSpanContainsTextRange:()=>rd,textSpanContainsTextSpan:()=>kd,textSpanEnd:()=>Rs,textSpanIntersection:()=>mA,textSpanIntersectsWith:()=>nS,textSpanIntersectsWithPosition:()=>nN,textSpanIntersectsWithTextSpan:()=>Db,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>u1,textSpanOverlapsWith:()=>Gh,textSpansEqual:()=>ase,textToKeywordObj:()=>sv,timestamp:()=>Zg,toArray:()=>cc,toBuilderFileEmit:()=>f5t,toBuilderStateFileInfoForMultiEmit:()=>p5t,toEditorSettings:()=>q1e,toFileNameLowerCase:()=>Qm,toPath:()=>Pu,toProgramEmitPending:()=>I5t,toSorted:()=>yo,tokenIsIdentifierOrKeyword:()=>md,tokenIsIdentifierOrKeywordOrGreaterThan:()=>yB,tokenToString:()=>Vi,trace:()=>tu,tracing:()=>ki,tracingEnabled:()=>jl,transferSourceFileChildren:()=>_Ot,transform:()=>Hon,transformClassFields:()=>f3t,transformDeclarations:()=>ptt,transformECMAScriptModule:()=>dtt,transformES2015:()=>R3t,transformES2016:()=>T3t,transformES2017:()=>C3t,transformES2018:()=>_3t,transformES2019:()=>y3t,transformES2020:()=>b3t,transformES2021:()=>E3t,transformESDecorators:()=>m3t,transformESNext:()=>S3t,transformGenerators:()=>N3t,transformImpliedNodeFormatDependentModule:()=>k3t,transformJsx:()=>w3t,transformLegacyDecorators:()=>h3t,transformModule:()=>Att,transformNamedEvaluation:()=>b1,transformNodes:()=>c1e,transformSystemModule:()=>D3t,transformTypeScript:()=>p3t,transpile:()=>$in,transpileDeclaration:()=>zin,transpileModule:()=>BHt,transpileOptionValueCompilerOptions:()=>qOt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>RWe,tryCast:()=>Gs,tryDirectoryExists:()=>TWe,tryExtractTSExtension:()=>rz,tryFileExists:()=>use,tryGetClassExtendingExpressionWithTypeArguments:()=>ybe,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>bbe,tryGetDirectories:()=>wWe,tryGetExtensionFromPath:()=>zT,tryGetImportFromModuleSpecifier:()=>P7,tryGetJSDocSatisfiesTypeNode:()=>lde,tryGetModuleNameFromFile:()=>xEe,tryGetModuleSpecifierFromDeclaration:()=>UY,tryGetNativePerformanceHooks:()=>KS,tryGetPropertyAccessOrIdentifierToString:()=>LW,tryGetPropertyNameOfBindingOrAssignmentElement:()=>N9e,tryGetSourceMappingURL:()=>qPt,tryGetTextOfPropertyName:()=>QY,tryParseJson:()=>hU,tryParsePattern:()=>oQ,tryParsePatterns:()=>pz,tryParseRawSourceMap:()=>$Pt,tryReadDirectory:()=>Snt,tryReadFile:()=>xde,tryRemoveDirectoryPrefix:()=>UAe,tryRemoveExtension:()=>WLe,tryRemovePrefix:()=>US,tryRemoveSuffix:()=>vo,tscBuildOption:()=>VU,typeAcquisitionDeclarations:()=>L9e,typeAliasNamePart:()=>MMt,typeDirectiveIsEqualTo:()=>Fge,typeKeywords:()=>nnt,typeParameterNamePart:()=>HMt,typeToDisplayParts:()=>V1e,unchangedPollThresholds:()=>t0,unchangedTextChangeRange:()=>bo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>qEe,unorderedRemoveItem:()=>rf,unprefixedNodeCoreModules:()=>die,unreachableCodeIsError:()=>vLe,unsetNodeChildren:()=>Y$e,unusedLabelIsError:()=>BLe,unwrapInnermostStatementOfLabel:()=>Vye,unwrapParenthesizedExpression:()=>Ade,updateErrorForNoInputFiles:()=>J9e,updateLanguageServiceSourceFile:()=>Cit,updateMissingFilePathsWatch:()=>Stt,updateResolutionField:()=>Pie,updateSharedExtendedConfigFileWatcher:()=>_Ve,updateSourceFile:()=>iet,updateWatchingWildcardDirectories:()=>g1e,usingSingleLineStringWriter:()=>bW,utf16EncodeAsString:()=>rN,validateLocaleAndSetLanguage:()=>wx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Pde,visitCommaListElements:()=>t1e,visitEachChild:()=>_s,visitFunctionBody:()=>fS,visitIterationBody:()=>My,visitLexicalEnvironment:()=>zet,visitNode:()=>Mr,visitNodes:()=>Os,visitParameterList:()=>wI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>wOt,walkUpParenthesizedExpressions:()=>Iv,walkUpParenthesizedTypes:()=>Rne,walkUpParenthesizedTypesAndGetParentAndChild:()=>Kye,whitespaceOrMapCommentRegExp:()=>$et,writeCommentRange:()=>IU,writeFile:()=>wAe,writeFileEnsuringDirectories:()=>dbe,zipWith:()=>ce}),e.exports=A(f);var I="5.9",C="5.9.3",b=(s=>(s[s.LessThan=-1]="LessThan",s[s.EqualTo=0]="EqualTo",s[s.GreaterThan=1]="GreaterThan",s))(b||{}),E=[],N=new Map;function B(s){return s!==void 0?s.length:0}function F(s,c){if(s!==void 0)for(let g=0;g=0;g--){let d=c(s[g],g);if(d)return d}}function J(s,c){if(s!==void 0)for(let g=0;g=0;d--){let h=s[d];if(c(h,d))return h}}function Se(s,c,g){if(s===void 0)return-1;for(let d=g??0;d=0;d--)if(c(s[d],d))return d;return-1}function k(s,c,g=bg){if(s!==void 0){for(let d=0;d{let[_,S]=c(h,d);g.set(_,S)}),g}function zt(s,c){if(s!==void 0)if(c!==void 0){for(let g=0;g0;return!1}function Fn(s,c,g){let d;for(let h=0;hs[S])}function xi(s,c){let g=[];for(let d=0;d0&&d(c,s[S-1]))return!1;if(S0&&pe.assertGreaterThanOrEqual(g(c[_],c[_-1]),0);t:for(let S=h;hS&&pe.assertGreaterThanOrEqual(g(s[h],s[h-1]),0),g(c[_],s[h])){case-1:d.push(c[_]);continue e;case 0:continue e;case 1:continue t}}return d}function Ft(s,c){return c===void 0?s:s===void 0?[c]:(s.push(c),s)}function zr(s,c){return s===void 0?c:c===void 0?s:Ki(s)?Ki(c)?Nn(s,c):Ft(s,c):Ki(c)?Ft(c,s):[s,c]}function Rn(s,c){return c<0?s.length+c:c}function Pr(s,c,g,d){if(c===void 0||c.length===0)return s;if(s===void 0)return c.slice(g,d);g=g===void 0?0:Rn(c,g),d=d===void 0?c.length:Rn(c,d);for(let h=g;hg(s[d],s[h])||Zt(d,h))}function yo(s,c){return s.length===0?E:s.slice().sort(c)}function*Qa(s){for(let c=s.length-1;c>=0;c--)yield s[c]}function gc(s,c,g,d){for(;gs?.at(c):(s,c)=>{if(s!==void 0&&(c=Rn(s,c),c>1),T=g(s[R],R);switch(d(T,c)){case-1:_=R+1;break;case 0:return R;case 1:S=R-1;break}}return~_}function Kl(s,c,g,d,h){if(s&&s.length>0){let _=s.length;if(_>0){let S=d===void 0||d<0?0:d,R=h===void 0||S+h>_-1?_-1:S+h,T;for(arguments.length<=2?(T=s[S],S++):T=g;S<=R;)T=c(T,s[S],S),S++;return T}}return g}var Ju=Object.prototype.hasOwnProperty;function Da(s,c){return Ju.call(s,c)}function fu(s,c){return Ju.call(s,c)?s[c]:void 0}function yg(s){let c=[];for(let g in s)Ju.call(s,g)&&c.push(g);return c}function _I(s){let c=[];do{let g=Object.getOwnPropertyNames(s);for(let d of g)Qi(c,d)}while(s=Object.getPrototypeOf(s));return c}function Kh(s){let c=[];for(let g in s)Ju.call(s,g)&&c.push(s[g]);return c}function Ri(s,c){let g=new Array(s);for(let d=0;d100&&g>c.length>>1){let R=c.length-g;c.copyWithin(0,g),c.length=R,g=0}return S}return{enqueue:h,dequeue:_,isEmpty:d}}function so(s,c){let g=new Map,d=0;function*h(){for(let S of g.values())Ki(S)?yield*S:yield S}let _={has(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);return Ki(T)?k(T,S,c):c(T,S)},add(S){let R=s(S);if(g.has(R)){let T=g.get(R);if(Ki(T))k(T,S,c)||(T.push(S),d++);else{let O=T;c(O,S)||(g.set(R,[O,S]),d++)}}else g.set(R,S),d++;return this},delete(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);if(Ki(T)){for(let O=0;Oh(),[Symbol.toStringTag]:g[Symbol.toStringTag]};return _}function Ki(s){return Array.isArray(s)}function cc(s){return Ki(s)?s:[s]}function Xs(s){return typeof s=="string"}function ws(s){return typeof s=="number"}function Gs(s,c){return s!==void 0&&c(s)?s:void 0}function Ma(s,c){return s!==void 0&&c(s)?s:pe.fail(`Invalid cast. The supplied value ${s} did not pass the test '${pe.getFunctionName(c)}'.`)}function Dc(s){}function As(){return!1}function Nf(){return!0}function Am(){}function Zl(s){return s}function rc(s){return s.toLowerCase()}var ad=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function Qm(s){return ad.test(s)?s.replace(ad,rc):s}function rl(){throw new Error("Not implemented")}function LA(s){let c;return()=>(s&&(c=s(),s=void 0),c)}function VA(s){let c=new Map;return g=>{let d=`${typeof g}:${g}`,h=c.get(d);return h===void 0&&!c.has(d)&&(h=s(g),c.set(d,h)),h}}var bl=(s=>(s[s.None=0]="None",s[s.Normal=1]="Normal",s[s.Aggressive=2]="Aggressive",s[s.VeryAggressive=3]="VeryAggressive",s))(bl||{});function bg(s,c){return s===c}function Yp(s,c){return s===c||s!==void 0&&c!==void 0&&s.toUpperCase()===c.toUpperCase()}function YA(s,c){return bg(s,c)}function vr(s,c){return s===c?0:s===void 0?-1:c===void 0?1:sc(g,d)===-1?g:d)}function Fs(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toUpperCase(),c=c.toUpperCase(),sc?1:0)}function Oa(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toLowerCase(),c=c.toLowerCase(),sc?1:0)}function Ca(s,c){return vr(s,c)}function gd(s){return s?Fs:Ca}var Dp=(()=>{return c;function s(g,d,h){if(g===d)return 0;if(g===void 0)return-1;if(d===void 0)return 1;let _=h(g,d);return _<0?-1:_>0?1:0}function c(g){let d=new Intl.Collator(g,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(h,_)=>s(h,_,d)}})(),sp,QA;function ff(){return QA}function Zs(s){QA!==s&&(QA=s,sp=void 0)}function io(s,c){return sp??(sp=Dp(QA)),sp(s,c)}function Ea(s,c,g,d){return s===c?0:s===void 0?-1:c===void 0?1:d(s[g],c[g])}function Hl(s,c){return Zt(s?1:0,c?1:0)}function Dr(s,c,g){let d=Math.max(2,Math.floor(s.length*.34)),h=Math.floor(s.length*.4)+1,_;for(let S of c){let R=g(S);if(R!==void 0&&Math.abs(R.length-s.length)<=d){if(R===s||R.length<3&&R.toLowerCase()!==s.toLowerCase())continue;let T=On(s,R,h-.1);if(T===void 0)continue;pe.assert(Tg?R-g:1),V=Math.floor(c.length>g+R?g+R:c.length);h[0]=R;let M=R;for(let re=1;reg)return;let ee=d;d=h,h=ee}let S=d[c.length];return S>g?void 0:S}function di(s,c,g){let d=s.length-c.length;return d>=0&&(g?Yp(s.slice(d),c):s.indexOf(c,d)===d)}function aa(s,c){return di(s,c)?s.slice(0,s.length-c.length):s}function vo(s,c){return di(s,c)?s.slice(0,s.length-c.length):void 0}function us(s){let c=s.length;for(let g=c-1;g>0;g--){let d=s.charCodeAt(g);if(d>=48&&d<=57)do--g,d=s.charCodeAt(g);while(g>0&&d>=48&&d<=57);else if(g>4&&(d===110||d===78)){if(--g,d=s.charCodeAt(g),d!==105&&d!==73||(--g,d=s.charCodeAt(g),d!==109&&d!==77))break;--g,d=s.charCodeAt(g)}else break;if(d!==45&&d!==46)break;c=g}return c===s.length?s:s.slice(0,c)}function Xl(s,c){for(let g=0;gg===c)}function op(s,c){for(let g=0;gh&&qd(R,g)&&(h=R.prefix.length,d=S)}return d}function Ac(s,c,g){return g?Yp(s.slice(0,c.length),c):s.lastIndexOf(c,0)===0}function Gm(s,c){return Ac(s,c)?s.substr(c.length):s}function US(s,c,g=Zl){return Ac(g(s),g(c))?s.substring(c.length):void 0}function qd({prefix:s,suffix:c},g){return g.length>=s.length+c.length&&Ac(g,s)&&di(g,c)}function hh(s,c){return g=>s(g)&&c(g)}function Qp(...s){return(...c)=>{let g;for(let d of s)if(g=d(...c),g)return g;return g}}function dC(s){return(...c)=>!s(...c)}function aE(s){}function j_(s){return s===void 0?void 0:[s]}function ty(s,c,g,d,h,_){_??(_=Dc);let S=0,R=0,T=s.length,O=c.length,V=!1;for(;S(s[s.Off=0]="Off",s[s.Error=1]="Error",s[s.Warning=2]="Warning",s[s.Info=3]="Info",s[s.Verbose=4]="Verbose",s))(mb||{}),pe;(s=>{let c=0;s.currentLogLevel=2,s.isDebugging=!1;function g(yr){return s.currentLogLevel<=yr}s.shouldLog=g;function d(yr,hn){s.loggingHost&&g(yr)&&s.loggingHost.log(yr,hn)}function h(yr){d(3,yr)}s.log=h,(yr=>{function hn(Pa){d(1,Pa)}yr.error=hn;function Pi(Pa){d(2,Pa)}yr.warn=Pi;function co(Pa){d(3,Pa)}yr.log=co;function pa(Pa){d(4,Pa)}yr.trace=pa})(h=s.log||(s.log={}));let _={};function S(){return c}s.getAssertionLevel=S;function R(yr){let hn=c;if(c=yr,yr>hn)for(let Pi of yg(_)){let co=_[Pi];co!==void 0&&s[Pi]!==co.assertion&&yr>=co.level&&(s[Pi]=co,_[Pi]=void 0)}}s.setAssertionLevel=R;function T(yr){return c>=yr}s.shouldAssert=T;function O(yr,hn){return T(yr)?!0:(_[hn]={level:yr,assertion:s[hn]},s[hn]=Dc,!1)}function V(yr,hn){debugger;let Pi=new Error(yr?`Debug Failure. ${yr}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Pi,hn||V),Pi}s.fail=V;function M(yr,hn,Pi){return V(`${hn||"Unexpected node."}\r Node ${Wt(yr.kind)} was unexpected.`,Pi||M)}s.failBadSyntaxKind=M;function ee(yr,hn,Pi,co){yr||(hn=hn?`False expression: ${hn}`:"False expression.",Pi&&(hn+=`\r -Verbose Debug Information: `+(typeof Pi=="string"?Pi:Pi())),V(hn,co||ee))}s.assert=ee;function re(yr,hn,Pi,co,pa){if(yr!==hn){let Pa=Pi?co?`${Pi} ${co}`:Pi:"";V(`Expected ${yr} === ${hn}. ${Pa}`,pa||re)}}s.assertEqual=re;function ge(yr,hn,Pi,co){yr>=hn&&V(`Expected ${yr} < ${hn}. ${Pi||""}`,co||ge)}s.assertLessThan=ge;function Ie(yr,hn,Pi){yr>hn&&V(`Expected ${yr} <= ${hn}`,Pi||Ie)}s.assertLessThanOrEqual=Ie;function _e(yr,hn,Pi){yr= ${hn}`,Pi||_e)}s.assertGreaterThanOrEqual=_e;function Ee(yr,hn,Pi){yr==null&&V(hn,Pi||Ee)}s.assertIsDefined=Ee;function Ne(yr,hn,Pi){return Ee(yr,hn,Pi||Ne),yr}s.checkDefined=Ne;function Te(yr,hn,Pi){for(let co of yr)Ee(co,hn,Pi||Te)}s.assertEachIsDefined=Te;function Ze(yr,hn,Pi){return Te(yr,hn,Pi||Ze),yr}s.checkEachDefined=Ze;function Pe(yr,hn="Illegal value:",Pi){let co=typeof yr=="object"&&Da(yr,"kind")&&Da(yr,"pos")?"SyntaxKind: "+Wt(yr.kind):JSON.stringify(yr);return V(`${hn} ${co}`,Pi||Pe)}s.assertNever=Pe;function Ke(yr,hn,Pi,co){O(1,"assertEachNode")&&ee(hn===void 0||ue(yr,hn),Pi||"Unexpected node.",()=>`Node array did not pass test '${mt(hn)}'.`,co||Ke)}s.assertEachNode=Ke;function et(yr,hn,Pi,co){O(1,"assertNode")&&ee(yr!==void 0&&(hn===void 0||hn(yr)),Pi||"Unexpected node.",()=>`Node ${Wt(yr?.kind)} did not pass test '${mt(hn)}'.`,co||et)}s.assertNode=et;function Ye(yr,hn,Pi,co){O(1,"assertNotNode")&&ee(yr===void 0||hn===void 0||!hn(yr),Pi||"Unexpected node.",()=>`Node ${Wt(yr.kind)} should not have passed test '${mt(hn)}'.`,co||Ye)}s.assertNotNode=Ye;function Tt(yr,hn,Pi,co){O(1,"assertOptionalNode")&&ee(hn===void 0||yr===void 0||hn(yr),Pi||"Unexpected node.",()=>`Node ${Wt(yr?.kind)} did not pass test '${mt(hn)}'.`,co||Tt)}s.assertOptionalNode=Tt;function at(yr,hn,Pi,co){O(1,"assertOptionalToken")&&ee(hn===void 0||yr===void 0||yr.kind===hn,Pi||"Unexpected node.",()=>`Node ${Wt(yr?.kind)} was not a '${Wt(hn)}' token.`,co||at)}s.assertOptionalToken=at;function Qe(yr,hn,Pi){O(1,"assertMissingNode")&&ee(yr===void 0,hn||"Unexpected node.",()=>`Node ${Wt(yr.kind)} was unexpected'.`,Pi||Qe)}s.assertMissingNode=Qe;function Ct(yr){}s.type=Ct;function mt(yr){if(typeof yr!="function")return"";if(Da(yr,"name"))return yr.name;{let hn=Function.prototype.toString.call(yr),Pi=/^function\s+([\w$]+)\s*\(/.exec(hn);return Pi?Pi[1]:""}}s.getFunctionName=mt;function yt(yr){return`{ name: ${Bc(yr.escapedName)}; flags: ${dt(yr.flags)}; declarations: ${lt(yr.declarations,hn=>Wt(hn.kind))} }`}s.formatSymbol=yt;function Rt(yr=0,hn,Pi){let co=je(hn);if(yr===0)return co.length>0&&co[0][0]===0?co[0][1]:"0";if(Pi){let pa=[],Pa=yr;for(let[$c,Qu]of co){if($c>yr)break;$c!==0&&$c&yr&&(pa.push(Qu),Pa&=~$c)}if(Pa===0)return pa.join("|")}else for(let[pa,Pa]of co)if(pa===yr)return Pa;return yr.toString()}s.formatEnum=Rt;let Lt=new Map;function je(yr){let hn=Lt.get(yr);if(hn)return hn;let Pi=[];for(let pa in yr){let Pa=yr[pa];typeof Pa=="number"&&Pi.push([Pa,pa])}let co=bo(Pi,(pa,Pa)=>Zt(pa[0],Pa[0]));return Lt.set(yr,co),co}function Wt(yr){return Rt(yr,Wd,!1)}s.formatSyntaxKind=Wt;function _r(yr){return Rt(yr,yw,!1)}s.formatSnippetKind=_r;function Gt(yr){return Rt(yr,j2,!1)}s.formatScriptKind=Gt;function it(yr){return Rt(yr,fC,!0)}s.formatNodeFlags=it;function kt(yr){return Rt(yr,Ry,!0)}s.formatNodeCheckFlags=kt;function tr(yr){return Rt(yr,jE,!0)}s.formatModifierFlags=tr;function ur(yr){return Rt(yr,Ap,!0)}s.formatTransformFlags=ur;function Gr(yr){return Rt(yr,dB,!0)}s.formatEmitFlags=Gr;function dt(yr){return Rt(yr,xT,!0)}s.formatSymbolFlags=dt;function pr(yr){return Rt(yr,$E,!0)}s.formatTypeFlags=pr;function ot(yr){return Rt(yr,td,!0)}s.formatSignatureFlags=ot;function ir(yr){return Rt(yr,q_,!0)}s.formatObjectFlags=ir;function qt(yr){return Rt(yr,Xp,!0)}s.formatFlowFlags=qt;function Yt(yr){return Rt(yr,wy,!0)}s.formatRelationComparisonResult=Yt;function Tr(yr){return Rt(yr,Jet,!0)}s.formatCheckMode=Tr;function Cn(yr){return Rt(yr,Uet,!0)}s.formatSignatureCheckMode=Cn;function jn(yr){return Rt(yr,Xet,!0)}s.formatTypeFacts=jn;let Zi=!1,Ns;function An(yr){"__debugFlowFlags"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(){let hn=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",Pi=this.flags&-2048;return`${hn}${Pi?` (${qt(Pi)})`:""}`}},__debugFlowFlags:{get(){return Rt(this.flags,Xp,!0)}},__debugToString:{value(){return hc(this)}}})}function si(yr){return Zi&&(typeof Object.setPrototypeOf=="function"?(Ns||(Ns=Object.create(Object.prototype),An(Ns)),Object.setPrototypeOf(yr,Ns)):An(yr)),yr}s.attachFlowNodeDebugInfo=si;let ks;function Ic(yr){"__tsDebuggerDisplay"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(hn){return hn=String(hn).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${hn}`}}})}function ou(yr){Zi&&(typeof Object.setPrototypeOf=="function"?(ks||(ks=Object.create(Array.prototype),Ic(ks)),Object.setPrototypeOf(yr,ks)):Ic(yr))}s.attachNodeArrayDebugInfo=ou;function Zn(){if(Zi)return;let yr=new WeakMap,hn=new WeakMap;Object.defineProperties(VC.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let co=this.flags&33554432?"TransientSymbol":"Symbol",pa=this.flags&-33554433;return`${co} '${of(this)}'${pa?` (${dt(pa)})`:""}`}},__debugFlags:{get(){return dt(this.flags)}}}),Object.defineProperties(VC.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let co=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`: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&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",pa=this.flags&524288?this.objectFlags&-1344:0;return`${co}${this.symbol?` '${of(this.symbol)}'`:""}${pa?` (${ir(pa)})`:""}`}},__debugFlags:{get(){return pr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?ir(this.objectFlags):""}},__debugTypeToString:{value(){let co=yr.get(this);return co===void 0&&(co=this.checker.typeToString(this),yr.set(this,co)),co}}}),Object.defineProperties(VC.getSignatureConstructor().prototype,{__debugFlags:{get(){return ot(this.flags)}},__debugSignatureToString:{value(){var co;return(co=this.checker)==null?void 0:co.signatureToString(this)}}});let Pi=[VC.getNodeConstructor(),VC.getIdentifierConstructor(),VC.getTokenConstructor(),VC.getSourceFileConstructor()];for(let co of Pi)Da(co.prototype,"__debugKind")||Object.defineProperties(co.prototype,{__tsDebuggerDisplay:{value(){return`${Gp(this)?"GeneratedIdentifier":Ir(this)?`Identifier '${Vo(this)}'`:p(this)?`PrivateIdentifier '${Vo(this)}'`:Lg(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:yC(this)?`NumericLiteral ${this.text}`:gQ(this)?`BigIntLiteral ${this.text}n`:Ds(this)?"TypeParameterDeclaration":Si(this)?"ParameterDeclaration":Tc(this)?"ConstructorDeclaration":wg(this)?"GetAccessorDeclaration":kg(this)?"SetAccessorDeclaration":Tg(this)?"CallSignatureDeclaration":im(this)?"ConstructSignatureDeclaration":R0(this)?"IndexSignatureDeclaration":vE(this)?"TypePredicateNode":oh(this)?"TypeReferenceNode":F_(this)?"FunctionTypeNode":ik(this)?"ConstructorTypeNode":Ow(this)?"TypeQueryNode":bh(this)?"TypeLiteralNode":VF(this)?"ArrayTypeNode":Pw(this)?"TupleTypeNode":r9(this)?"OptionalTypeNode":n9(this)?"RestTypeNode":gS(this)?"UnionTypeNode":_f(this)?"IntersectionTypeNode":I2(this)?"ConditionalTypeNode":tR(this)?"InferTypeNode":Cv(this)?"ParenthesizedTypeNode":Ox(this)?"ThisTypeNode":VB(this)?"TypeOperatorNode":_v(this)?"IndexedAccessTypeNode":WB(this)?"MappedTypeNode":BE(this)?"LiteralTypeNode":eR(this)?"NamedTupleMember":qm(this)?"ImportTypeNode":Wt(this.kind)}${this.flags?` (${it(this.flags)})`:""}`}},__debugKind:{get(){return Wt(this.kind)}},__debugNodeFlags:{get(){return it(this.flags)}},__debugModifierFlags:{get(){return tr(Cbe(this))}},__debugTransformFlags:{get(){return ur(this.transformFlags)}},__debugIsParseTreeNode:{get(){return NL(this)}},__debugEmitFlags:{get(){return Gr(rA(this))}},__debugGetText:{value(pa){if(ap(this))return"";let Pa=hn.get(this);if(Pa===void 0){let $c=eu(this),Qu=$c&&ms($c);Pa=Qu?SF(Qu,$c,pa):"",hn.set(this,Pa)}return Pa}}});Zi=!0}s.enableDebugInfo=Zn;function ya(yr){let hn=yr&7,Pi=hn===0?"in out":hn===3?"[bivariant]":hn===2?"in":hn===1?"out":hn===4?"[independent]":"";return yr&8?Pi+=" (unmeasurable)":yr&16&&(Pi+=" (unreliable)"),Pi}s.formatVariance=ya;class Fl{__debugToString(){var hn;switch(this.kind){case 3:return((hn=this.debugInfo)==null?void 0:hn.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return ce(this.sources,this.targets||lt(this.sources,()=>"any"),(Pi,co)=>`${Pi.__debugTypeToString()} -> ${typeof co=="string"?co:co.__debugTypeToString()}`).join(", ");case 2:return ce(this.sources,this.targets,(Pi,co)=>`${Pi.__debugTypeToString()} -> ${co().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +Verbose Debug Information: `+(typeof Pi=="string"?Pi:Pi())),V(hn,co||ee))}s.assert=ee;function re(yr,hn,Pi,co,pa){if(yr!==hn){let Pa=Pi?co?`${Pi} ${co}`:Pi:"";V(`Expected ${yr} === ${hn}. ${Pa}`,pa||re)}}s.assertEqual=re;function ge(yr,hn,Pi,co){yr>=hn&&V(`Expected ${yr} < ${hn}. ${Pi||""}`,co||ge)}s.assertLessThan=ge;function Ie(yr,hn,Pi){yr>hn&&V(`Expected ${yr} <= ${hn}`,Pi||Ie)}s.assertLessThanOrEqual=Ie;function _e(yr,hn,Pi){yr= ${hn}`,Pi||_e)}s.assertGreaterThanOrEqual=_e;function Ee(yr,hn,Pi){yr==null&&V(hn,Pi||Ee)}s.assertIsDefined=Ee;function Ne(yr,hn,Pi){return Ee(yr,hn,Pi||Ne),yr}s.checkDefined=Ne;function Te(yr,hn,Pi){for(let co of yr)Ee(co,hn,Pi||Te)}s.assertEachIsDefined=Te;function Ze(yr,hn,Pi){return Te(yr,hn,Pi||Ze),yr}s.checkEachDefined=Ze;function Pe(yr,hn="Illegal value:",Pi){let co=typeof yr=="object"&&Da(yr,"kind")&&Da(yr,"pos")?"SyntaxKind: "+Wt(yr.kind):JSON.stringify(yr);return V(`${hn} ${co}`,Pi||Pe)}s.assertNever=Pe;function Ke(yr,hn,Pi,co){O(1,"assertEachNode")&&ee(hn===void 0||ue(yr,hn),Pi||"Unexpected node.",()=>`Node array did not pass test '${mt(hn)}'.`,co||Ke)}s.assertEachNode=Ke;function et(yr,hn,Pi,co){O(1,"assertNode")&&ee(yr!==void 0&&(hn===void 0||hn(yr)),Pi||"Unexpected node.",()=>`Node ${Wt(yr?.kind)} did not pass test '${mt(hn)}'.`,co||et)}s.assertNode=et;function Ye(yr,hn,Pi,co){O(1,"assertNotNode")&&ee(yr===void 0||hn===void 0||!hn(yr),Pi||"Unexpected node.",()=>`Node ${Wt(yr.kind)} should not have passed test '${mt(hn)}'.`,co||Ye)}s.assertNotNode=Ye;function Tt(yr,hn,Pi,co){O(1,"assertOptionalNode")&&ee(hn===void 0||yr===void 0||hn(yr),Pi||"Unexpected node.",()=>`Node ${Wt(yr?.kind)} did not pass test '${mt(hn)}'.`,co||Tt)}s.assertOptionalNode=Tt;function at(yr,hn,Pi,co){O(1,"assertOptionalToken")&&ee(hn===void 0||yr===void 0||yr.kind===hn,Pi||"Unexpected node.",()=>`Node ${Wt(yr?.kind)} was not a '${Wt(hn)}' token.`,co||at)}s.assertOptionalToken=at;function Qe(yr,hn,Pi){O(1,"assertMissingNode")&&ee(yr===void 0,hn||"Unexpected node.",()=>`Node ${Wt(yr.kind)} was unexpected'.`,Pi||Qe)}s.assertMissingNode=Qe;function Ct(yr){}s.type=Ct;function mt(yr){if(typeof yr!="function")return"";if(Da(yr,"name"))return yr.name;{let hn=Function.prototype.toString.call(yr),Pi=/^function\s+([\w$]+)\s*\(/.exec(hn);return Pi?Pi[1]:""}}s.getFunctionName=mt;function yt(yr){return`{ name: ${Bc(yr.escapedName)}; flags: ${dt(yr.flags)}; declarations: ${lt(yr.declarations,hn=>Wt(hn.kind))} }`}s.formatSymbol=yt;function Rt(yr=0,hn,Pi){let co=je(hn);if(yr===0)return co.length>0&&co[0][0]===0?co[0][1]:"0";if(Pi){let pa=[],Pa=yr;for(let[$c,Qu]of co){if($c>yr)break;$c!==0&&$c&yr&&(pa.push(Qu),Pa&=~$c)}if(Pa===0)return pa.join("|")}else for(let[pa,Pa]of co)if(pa===yr)return Pa;return yr.toString()}s.formatEnum=Rt;let Lt=new Map;function je(yr){let hn=Lt.get(yr);if(hn)return hn;let Pi=[];for(let pa in yr){let Pa=yr[pa];typeof Pa=="number"&&Pi.push([Pa,pa])}let co=yo(Pi,(pa,Pa)=>Zt(pa[0],Pa[0]));return Lt.set(yr,co),co}function Wt(yr){return Rt(yr,Wd,!1)}s.formatSyntaxKind=Wt;function _r(yr){return Rt(yr,bw,!1)}s.formatSnippetKind=_r;function Gt(yr){return Rt(yr,z2,!1)}s.formatScriptKind=Gt;function it(yr){return Rt(yr,fC,!0)}s.formatNodeFlags=it;function Dt(yr){return Rt(yr,Ny,!0)}s.formatNodeCheckFlags=Dt;function tr(yr){return Rt(yr,zE,!0)}s.formatModifierFlags=tr;function ur(yr){return Rt(yr,Ap,!0)}s.formatTransformFlags=ur;function Gr(yr){return Rt(yr,pB,!0)}s.formatEmitFlags=Gr;function dt(yr){return Rt(yr,GT,!0)}s.formatSymbolFlags=dt;function pr(yr){return Rt(yr,e1,!0)}s.formatTypeFlags=pr;function ot(yr){return Rt(yr,td,!0)}s.formatSignatureFlags=ot;function ir(yr){return Rt(yr,$_,!0)}s.formatObjectFlags=ir;function qt(yr){return Rt(yr,Xp,!0)}s.formatFlowFlags=qt;function Yt(yr){return Rt(yr,Ty,!0)}s.formatRelationComparisonResult=Yt;function Tr(yr){return Rt(yr,Xet,!0)}s.formatCheckMode=Tr;function mn(yr){return Rt(yr,Jet,!0)}s.formatSignatureCheckMode=mn;function jn(yr){return Rt(yr,Qet,!0)}s.formatTypeFacts=jn;let Zi=!1,Ns;function An(yr){"__debugFlowFlags"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(){let hn=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",Pi=this.flags&-2048;return`${hn}${Pi?` (${qt(Pi)})`:""}`}},__debugFlowFlags:{get(){return Rt(this.flags,Xp,!0)}},__debugToString:{value(){return hc(this)}}})}function si(yr){return Zi&&(typeof Object.setPrototypeOf=="function"?(Ns||(Ns=Object.create(Object.prototype),An(Ns)),Object.setPrototypeOf(yr,Ns)):An(yr)),yr}s.attachFlowNodeDebugInfo=si;let ks;function Ic(yr){"__tsDebuggerDisplay"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(hn){return hn=String(hn).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${hn}`}}})}function ou(yr){Zi&&(typeof Object.setPrototypeOf=="function"?(ks||(ks=Object.create(Array.prototype),Ic(ks)),Object.setPrototypeOf(yr,ks)):Ic(yr))}s.attachNodeArrayDebugInfo=ou;function Zn(){if(Zi)return;let yr=new WeakMap,hn=new WeakMap;Object.defineProperties(WC.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let co=this.flags&33554432?"TransientSymbol":"Symbol",pa=this.flags&-33554433;return`${co} '${of(this)}'${pa?` (${dt(pa)})`:""}`}},__debugFlags:{get(){return dt(this.flags)}}}),Object.defineProperties(WC.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let co=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`: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&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",pa=this.flags&524288?this.objectFlags&-1344:0;return`${co}${this.symbol?` '${of(this.symbol)}'`:""}${pa?` (${ir(pa)})`:""}`}},__debugFlags:{get(){return pr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?ir(this.objectFlags):""}},__debugTypeToString:{value(){let co=yr.get(this);return co===void 0&&(co=this.checker.typeToString(this),yr.set(this,co)),co}}}),Object.defineProperties(WC.getSignatureConstructor().prototype,{__debugFlags:{get(){return ot(this.flags)}},__debugSignatureToString:{value(){var co;return(co=this.checker)==null?void 0:co.signatureToString(this)}}});let Pi=[WC.getNodeConstructor(),WC.getIdentifierConstructor(),WC.getTokenConstructor(),WC.getSourceFileConstructor()];for(let co of Pi)Da(co.prototype,"__debugKind")||Object.defineProperties(co.prototype,{__tsDebuggerDisplay:{value(){return`${Gp(this)?"GeneratedIdentifier":Ir(this)?`Identifier '${Vo(this)}'`:p(this)?`PrivateIdentifier '${Vo(this)}'`:Lg(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:yC(this)?`NumericLiteral ${this.text}`:AQ(this)?`BigIntLiteral ${this.text}n`:Ds(this)?"TypeParameterDeclaration":Si(this)?"ParameterDeclaration":Tc(this)?"ConstructorDeclaration":wg(this)?"GetAccessorDeclaration":kg(this)?"SetAccessorDeclaration":Tg(this)?"CallSignatureDeclaration":im(this)?"ConstructSignatureDeclaration":N0(this)?"IndexSignatureDeclaration":BE(this)?"TypePredicateNode":oh(this)?"TypeReferenceNode":Z_(this)?"FunctionTypeNode":sk(this)?"ConstructorTypeNode":Pw(this)?"TypeQueryNode":bh(this)?"TypeLiteralNode":WF(this)?"ArrayTypeNode":Mw(this)?"TupleTypeNode":n9(this)?"OptionalTypeNode":i9(this)?"RestTypeNode":AS(this)?"UnionTypeNode":_f(this)?"IntersectionTypeNode":h2(this)?"ConditionalTypeNode":rR(this)?"InferTypeNode":_v(this)?"ParenthesizedTypeNode":Px(this)?"ThisTypeNode":WB(this)?"TypeOperatorNode":yv(this)?"IndexedAccessTypeNode":OB(this)?"MappedTypeNode":wE(this)?"LiteralTypeNode":tR(this)?"NamedTupleMember":qm(this)?"ImportTypeNode":Wt(this.kind)}${this.flags?` (${it(this.flags)})`:""}`}},__debugKind:{get(){return Wt(this.kind)}},__debugNodeFlags:{get(){return it(this.flags)}},__debugModifierFlags:{get(){return tr(Cbe(this))}},__debugTransformFlags:{get(){return ur(this.transformFlags)}},__debugIsParseTreeNode:{get(){return DL(this)}},__debugEmitFlags:{get(){return Gr(rA(this))}},__debugGetText:{value(pa){if(ap(this))return"";let Pa=hn.get(this);if(Pa===void 0){let $c=eu(this),Qu=$c&&ms($c);Pa=Qu?vF(Qu,$c,pa):"",hn.set(this,Pa)}return Pa}}});Zi=!0}s.enableDebugInfo=Zn;function ya(yr){let hn=yr&7,Pi=hn===0?"in out":hn===3?"[bivariant]":hn===2?"in":hn===1?"out":hn===4?"[independent]":"";return yr&8?Pi+=" (unmeasurable)":yr&16&&(Pi+=" (unreliable)"),Pi}s.formatVariance=ya;class Fl{__debugToString(){var hn;switch(this.kind){case 3:return((hn=this.debugInfo)==null?void 0:hn.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return ce(this.sources,this.targets||lt(this.sources,()=>"any"),(Pi,co)=>`${Pi.__debugTypeToString()} -> ${typeof co=="string"?co:co.__debugTypeToString()}`).join(", ");case 2:return ce(this.sources,this.targets,(Pi,co)=>`${Pi.__debugTypeToString()} -> ${co().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` `).join(` `)} m2: ${this.mapper2.__debugToString().split(` `).join(` - `)}`;default:return Pe(this)}}}s.DebugTypeMapper=Fl;function ba(yr){return s.isDebugging?Object.setPrototypeOf(yr,Fl.prototype):yr}s.attachDebugPrototypeIfDebug=ba;function Oo(yr){return console.log(hc(yr))}s.printControlFlowGraph=Oo;function hc(yr){let hn=-1;function Pi(Ue){return Ue.id||(Ue.id=hn,hn--),Ue.id}let co;(Ue=>{Ue.lr="\u2500",Ue.ud="\u2502",Ue.dr="\u256D",Ue.dl="\u256E",Ue.ul="\u256F",Ue.ur="\u2570",Ue.udr="\u251C",Ue.udl="\u2524",Ue.dlr="\u252C",Ue.ulr="\u2534",Ue.udlr="\u256B"})(co||(co={}));let pa;(Ue=>{Ue[Ue.None=0]="None",Ue[Ue.Up=1]="Up",Ue[Ue.Down=2]="Down",Ue[Ue.Left=4]="Left",Ue[Ue.Right=8]="Right",Ue[Ue.UpDown=3]="UpDown",Ue[Ue.LeftRight=12]="LeftRight",Ue[Ue.UpLeft=5]="UpLeft",Ue[Ue.UpRight=9]="UpRight",Ue[Ue.DownLeft=6]="DownLeft",Ue[Ue.DownRight=10]="DownRight",Ue[Ue.UpDownLeft=7]="UpDownLeft",Ue[Ue.UpDownRight=11]="UpDownRight",Ue[Ue.UpLeftRight=13]="UpLeftRight",Ue[Ue.DownLeftRight=14]="DownLeftRight",Ue[Ue.UpDownLeftRight=15]="UpDownLeftRight",Ue[Ue.NoChildren=16]="NoChildren"})(pa||(pa={}));let Pa=2032,$c=882,Qu=Object.create(null),Rg=[],Cs=[],Tu=Dn(yr,new Set);for(let Ue of Rg)Ue.text=Ht(Ue.flowNode,Ue.circular),Sn(Ue);let Wr=Ni(Tu),Wn=Gi(Wr);return nn(Tu,0),cn();function pt(Ue){return!!(Ue.flags&128)}function on(Ue){return!!(Ue.flags&12)&&!!Ue.antecedent}function st(Ue){return!!(Ue.flags&Pa)}function nr(Ue){return!!(Ue.flags&$c)}function Zr(Ue){let In=[];for(let Hn of Ue.edges)Hn.source===Ue&&In.push(Hn.target);return In}function Kr(Ue){let In=[];for(let Hn of Ue.edges)Hn.target===Ue&&In.push(Hn.source);return In}function Dn(Ue,In){let Hn=Pi(Ue),Mt=Qu[Hn];if(Mt&&In.has(Ue))return Mt.circular=!0,Mt={id:-1,flowNode:Ue,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Rg.push(Mt),Mt;if(In.add(Ue),!Mt)if(Qu[Hn]=Mt={id:Hn,flowNode:Ue,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Rg.push(Mt),on(Ue))for(let $r of Ue.antecedent)hr(Mt,$r,In);else st(Ue)&&hr(Mt,Ue.antecedent,In);return In.delete(Ue),Mt}function hr(Ue,In,Hn){let Mt=Dn(In,Hn),$r={source:Ue,target:Mt};Cs.push($r),Ue.edges.push($r),Mt.edges.push($r)}function Sn(Ue){if(Ue.level!==-1)return Ue.level;let In=0;for(let Hn of Kr(Ue))In=Math.max(In,Sn(Hn)+1);return Ue.level=In}function Ni(Ue){let In=0;for(let Hn of Zr(Ue))In=Math.max(In,Ni(Hn));return In+1}function Gi(Ue){let In=xe(Array(Ue),0);for(let Hn of Rg)In[Hn.level]=Math.max(In[Hn.level],Hn.text.length);return In}function nn(Ue,In){if(Ue.lane===-1){Ue.lane=In,Ue.endLane=In;let Hn=Zr(Ue);for(let Mt=0;Mt0&&In++;let $r=Hn[Mt];nn($r,In),$r.endLane>Ue.endLane&&(In=$r.endLane)}Ue.endLane=In}}function En(Ue){if(Ue&2)return"Start";if(Ue&4)return"Branch";if(Ue&8)return"Loop";if(Ue&16)return"Assignment";if(Ue&32)return"True";if(Ue&64)return"False";if(Ue&128)return"SwitchClause";if(Ue&256)return"ArrayMutation";if(Ue&512)return"Call";if(Ue&1024)return"ReduceLabel";if(Ue&1)return"Unreachable";throw new Error}function ds(Ue){let In=ms(Ue);return SF(In,Ue,!1)}function Ht(Ue,In){let Hn=En(Ue.flags);if(In&&(Hn=`${Hn}#${Pi(Ue)}`),pt(Ue)){let Mt=[],{switchStatement:$r,clauseStart:ri,clauseEnd:oo}=Ue.node;for(let Bs=ri;Bsoo.lane)+1,Hn=xe(Array(In),""),Mt=Wn.map(()=>Array(In)),$r=Wn.map(()=>xe(Array(In),0));for(let oo of Rg){Mt[oo.level][oo.lane]=oo;let Bs=Zr(oo);for(let tn=0;tn0&&(Mn|=1),tn0&&(Mn|=1),tn0?$r[oo-1][Bs]:0,tn=Bs>0?$r[oo][Bs-1]:0,wn=$r[oo][Bs];wn||(Ys&8&&(wn|=12),tn&2&&(wn|=3),$r[oo][Bs]=wn)}for(let oo=0;oo{Ue.lr="\u2500",Ue.ud="\u2502",Ue.dr="\u256D",Ue.dl="\u256E",Ue.ul="\u256F",Ue.ur="\u2570",Ue.udr="\u251C",Ue.udl="\u2524",Ue.dlr="\u252C",Ue.ulr="\u2534",Ue.udlr="\u256B"})(co||(co={}));let pa;(Ue=>{Ue[Ue.None=0]="None",Ue[Ue.Up=1]="Up",Ue[Ue.Down=2]="Down",Ue[Ue.Left=4]="Left",Ue[Ue.Right=8]="Right",Ue[Ue.UpDown=3]="UpDown",Ue[Ue.LeftRight=12]="LeftRight",Ue[Ue.UpLeft=5]="UpLeft",Ue[Ue.UpRight=9]="UpRight",Ue[Ue.DownLeft=6]="DownLeft",Ue[Ue.DownRight=10]="DownRight",Ue[Ue.UpDownLeft=7]="UpDownLeft",Ue[Ue.UpDownRight=11]="UpDownRight",Ue[Ue.UpLeftRight=13]="UpLeftRight",Ue[Ue.DownLeftRight=14]="DownLeftRight",Ue[Ue.UpDownLeftRight=15]="UpDownLeftRight",Ue[Ue.NoChildren=16]="NoChildren"})(pa||(pa={}));let Pa=2032,$c=882,Qu=Object.create(null),Rg=[],Cs=[],Tu=Dn(yr,new Set);for(let Ue of Rg)Ue.text=Ht(Ue.flowNode,Ue.circular),En(Ue);let Wr=Ni(Tu),Wn=Gi(Wr);return nn(Tu,0),cn();function pt(Ue){return!!(Ue.flags&128)}function on(Ue){return!!(Ue.flags&12)&&!!Ue.antecedent}function st(Ue){return!!(Ue.flags&Pa)}function nr(Ue){return!!(Ue.flags&$c)}function Zr(Ue){let In=[];for(let Hn of Ue.edges)Hn.source===Ue&&In.push(Hn.target);return In}function Kr(Ue){let In=[];for(let Hn of Ue.edges)Hn.target===Ue&&In.push(Hn.source);return In}function Dn(Ue,In){let Hn=Pi(Ue),Mt=Qu[Hn];if(Mt&&In.has(Ue))return Mt.circular=!0,Mt={id:-1,flowNode:Ue,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Rg.push(Mt),Mt;if(In.add(Ue),!Mt)if(Qu[Hn]=Mt={id:Hn,flowNode:Ue,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Rg.push(Mt),on(Ue))for(let $r of Ue.antecedent)hr(Mt,$r,In);else st(Ue)&&hr(Mt,Ue.antecedent,In);return In.delete(Ue),Mt}function hr(Ue,In,Hn){let Mt=Dn(In,Hn),$r={source:Ue,target:Mt};Cs.push($r),Ue.edges.push($r),Mt.edges.push($r)}function En(Ue){if(Ue.level!==-1)return Ue.level;let In=0;for(let Hn of Kr(Ue))In=Math.max(In,En(Hn)+1);return Ue.level=In}function Ni(Ue){let In=0;for(let Hn of Zr(Ue))In=Math.max(In,Ni(Hn));return In+1}function Gi(Ue){let In=xe(Array(Ue),0);for(let Hn of Rg)In[Hn.level]=Math.max(In[Hn.level],Hn.text.length);return In}function nn(Ue,In){if(Ue.lane===-1){Ue.lane=In,Ue.endLane=In;let Hn=Zr(Ue);for(let Mt=0;Mt0&&In++;let $r=Hn[Mt];nn($r,In),$r.endLane>Ue.endLane&&(In=$r.endLane)}Ue.endLane=In}}function bn(Ue){if(Ue&2)return"Start";if(Ue&4)return"Branch";if(Ue&8)return"Loop";if(Ue&16)return"Assignment";if(Ue&32)return"True";if(Ue&64)return"False";if(Ue&128)return"SwitchClause";if(Ue&256)return"ArrayMutation";if(Ue&512)return"Call";if(Ue&1024)return"ReduceLabel";if(Ue&1)return"Unreachable";throw new Error}function ds(Ue){let In=ms(Ue);return vF(In,Ue,!1)}function Ht(Ue,In){let Hn=bn(Ue.flags);if(In&&(Hn=`${Hn}#${Pi(Ue)}`),pt(Ue)){let Mt=[],{switchStatement:$r,clauseStart:ri,clauseEnd:oo}=Ue.node;for(let Bs=ri;Bsoo.lane)+1,Hn=xe(Array(In),""),Mt=Wn.map(()=>Array(In)),$r=Wn.map(()=>xe(Array(In),0));for(let oo of Rg){Mt[oo.level][oo.lane]=oo;let Bs=Zr(oo);for(let tn=0;tn0&&(Mn|=1),tn0&&(Mn|=1),tn0?$r[oo-1][Bs]:0,tn=Bs>0?$r[oo][Bs-1]:0,Bn=$r[oo][Bs];Bn||(Ys&8&&(Bn|=12),tn&2&&(Bn|=3),$r[oo][Bs]=Bn)}for(let oo=0;oo0?Ue.repeat(In):"";let Hn="";for(;Hn.length=0,"Invalid argument: major"),pe.assert(g>=0,"Invalid argument: minor"),pe.assert(d>=0,"Invalid argument: patch");let S=h?Ki(h)?h:h.split("."):E,R=_?Ki(_)?_:_.split("."):E;pe.assert(ue(S,T=>yI.test(T)),"Invalid argument: prerelease"),pe.assert(ue(R,T=>J2.test(T)),"Invalid argument: build"),this.major=c,this.minor=g,this.patch=d,this.prerelease=S,this.build=R}static tryParse(c){let g=K(c);if(!g)return;let{major:d,minor:h,patch:_,prerelease:S,build:R}=g;return new CDe(d,h,_,S,R)}compareTo(c){return this===c?0:c===void 0?1:Zt(this.major,c.major)||Zt(this.minor,c.minor)||Zt(this.patch,c.patch)||we(this.prerelease,c.prerelease)}increment(c){switch(c){case"major":return new CDe(this.major+1,0,0);case"minor":return new CDe(this.major,this.minor+1,0);case"patch":return new CDe(this.major,this.minor,this.patch+1);default:return pe.assertNever(c)}}with(c){let{major:g=this.major,minor:d=this.minor,patch:h=this.patch,prerelease:_=this.prerelease,build:S=this.build}=c;return new CDe(g,d,h,_,S)}toString(){let c=`${this.major}.${this.minor}.${this.patch}`;return zt(this.prerelease)&&(c+=`-${this.prerelease.join(".")}`),zt(this.build)&&(c+=`+${this.build.join(".")}`),c}};se.zero=new se(0,0,0,["0"]);var P=se;function K(s){let c=dm.exec(s);if(!c)return;let[,g,d="0",h="0",_="",S=""]=c;if(!(_&&!qf.test(_))&&!(S&&!bI.test(S)))return{major:parseInt(g,10),minor:parseInt(d,10),patch:parseInt(h,10),prerelease:_,build:S}}function we(s,c){if(s===c)return 0;if(s.length===0)return c.length===0?0:1;if(c.length===0)return-1;let g=Math.min(s.length,c.length);for(let d=0;d=]|<=|>=)?\s*([a-z0-9-+.*]+)$/i;function ra(s){let c=[];for(let g of s.trim().split(sr)){if(!g)continue;let d=[];g=g.trim();let h=fi.exec(g);if(h){if(!Dl(h[1],h[2],d))return}else for(let _ of g.split(Yr)){let S=$n.exec(_.trim());if(!S||!ca(S[1],S[2],d))return}c.push(d)}return c}function kc(s){let c=Lr.exec(s);if(!c)return;let[,g,d="*",h="*",_,S]=c;return{version:new P(Bl(g)?0:parseInt(g,10),Bl(g)||Bl(d)?0:parseInt(d,10),Bl(g)||Bl(d)||Bl(h)?0:parseInt(h,10),_,S),major:g,minor:d,patch:h}}function Dl(s,c,g){let d=kc(s);if(!d)return!1;let h=kc(c);return h?(Bl(d.major)||g.push(eA(">=",d.version)),Bl(h.major)||g.push(Bl(h.minor)?eA("<",h.version.increment("major")):Bl(h.patch)?eA("<",h.version.increment("minor")):eA("<=",h.version)),!0):!1}function ca(s,c,g){let d=kc(c);if(!d)return!1;let{version:h,major:_,minor:S,patch:R}=d;if(Bl(_))(s==="<"||s===">")&&g.push(eA("<",P.zero));else switch(s){case"~":g.push(eA(">=",h)),g.push(eA("<",h.increment(Bl(S)?"major":"minor")));break;case"^":g.push(eA(">=",h)),g.push(eA("<",h.increment(h.major>0||Bl(S)?"major":h.minor>0||Bl(R)?"minor":"patch")));break;case"<":case">=":g.push(Bl(S)||Bl(R)?eA(s,h.with({prerelease:"0"})):eA(s,h));break;case"<=":case">":g.push(Bl(S)?eA(s==="<="?"<":">=",h.increment("major").with({prerelease:"0"})):Bl(R)?eA(s==="<="?"<":">=",h.increment("minor").with({prerelease:"0"})):eA(s,h));break;case"=":case void 0:Bl(S)||Bl(R)?(g.push(eA(">=",h.with({prerelease:"0"}))),g.push(eA("<",h.increment(Bl(S)?"major":"minor").with({prerelease:"0"})))):g.push(eA("=",h));break;default:return!1}return!0}function Bl(s){return s==="*"||s==="x"||s==="X"}function eA(s,c){return{operator:s,operand:c}}function BA(s,c){if(c.length===0)return!0;for(let g of c)if(gI(s,g))return!0;return!1}function gI(s,c){for(let g of c)if(!gp(s,g.operator,g.operand))return!1;return!0}function gp(s,c,g){let d=s.compareTo(g);switch(c){case"<":return d<0;case"<=":return d<=0;case">":return d>0;case">=":return d>=0;case"=":return d===0;default:return pe.assertNever(c)}}function mb(s){return lt(s,Na).join(" || ")||"*"}function Na(s){return lt(s,Rd).join(" ")}function Rd(s){return`${s.operator}${s.operand}`}function e2(){if(Xm())try{let{performance:s}=Et("perf_hooks");if(s)return{shouldWriteNativeEvents:!1,performance:s}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function N_(){let s=e2();if(!s)return;let{shouldWriteNativeEvents:c,performance:g}=s,d={shouldWriteNativeEvents:c,performance:void 0,performanceTime:void 0};return typeof g.timeOrigin=="number"&&typeof g.now=="function"&&(d.performanceTime=g),d.performanceTime&&typeof g.mark=="function"&&typeof g.measure=="function"&&typeof g.clearMarks=="function"&&typeof g.clearMeasures=="function"&&(d.performance=g),d}var DC=N_(),Jm=DC?.performanceTime;function US(){return DC}var Zg=Jm?()=>Jm.now():Date.now,Cb={};o(Cb,{clearMarks:()=>fm,clearMeasures:()=>pm,createTimer:()=>j_,createTimerIf:()=>U2,disable:()=>ko,enable:()=>na,forEachMark:()=>jS,forEachMeasure:()=>KS,getCount:()=>cE,getDuration:()=>tA,isEnabled:()=>cs,mark:()=>Mc,measure:()=>Pf,nullTimer:()=>xC});var pC,kC;function U2(s,c,g,d){return s?j_(c,g,d):xC}function j_(s,c,g){let d=0;return{enter:h,exit:_};function h(){++d===1&&Mc(c)}function _(){--d===0?(Mc(g),Pf(s,c,g)):d<0&&pe.fail("enter/exit count does not match.")}}var xC={enter:Dc,exit:Dc},GC=!1,th=Zg(),mh=new Map,wA=new Map,Nd=new Map;function Mc(s){if(GC){let c=wA.get(s)??0;wA.set(s,c+1),mh.set(s,Zg()),kC?.mark(s),typeof onProfilerEvent=="function"&&onProfilerEvent(s)}}function Pf(s,c,g){if(GC){let d=(g!==void 0?mh.get(g):void 0)??Zg(),h=(c!==void 0?mh.get(c):void 0)??th,_=Nd.get(s)||0;Nd.set(s,_+(d-h)),kC?.measure(s,c,g)}}function cE(s){return wA.get(s)||0}function tA(s){return Nd.get(s)||0}function KS(s){Nd.forEach((c,g)=>s(g,c))}function jS(s){mh.forEach((c,g)=>s(g))}function pm(s){s!==void 0?Nd.delete(s):Nd.clear(),kC?.clearMeasures(s)}function fm(s){s!==void 0?(wA.delete(s),mh.delete(s)):(wA.clear(),mh.clear()),kC?.clearMarks(s)}function cs(){return GC}function na(s=Ed){var c;return GC||(GC=!0,pC||(pC=US()),pC?.performance&&(th=pC.performance.timeOrigin,(pC.shouldWriteNativeEvents||(c=s?.cpuProfilingEnabled)!=null&&c.call(s)||s?.debugMode)&&(kC=pC.performance))),!0}function ko(){GC&&(mh.clear(),wA.clear(),Nd.clear(),kC=void 0,GC=!1)}var ki,jl;(s=>{let c,g=0,d=0,h,_=[],S,R=[];function T(et,Ye,Tt){if(pe.assert(!ki,"Tracing already started"),c===void 0)try{c=Et("fs")}catch(yt){throw new Error(`tracing requires having fs -(original error: ${yt.message||yt})`)}h=et,_.length=0,S===void 0&&(S=Ro(Ye,"legend.json")),c.existsSync(Ye)||c.mkdirSync(Ye,{recursive:!0});let at=h==="build"?`.${process.pid}-${++g}`:h==="server"?`.${process.pid}`:"",Qe=Ro(Ye,`trace${at}.json`),Ct=Ro(Ye,`types${at}.json`);R.push({configFilePath:Tt,tracePath:Qe,typesPath:Ct}),d=c.openSync(Qe,"w"),ki=s;let mt={cat:"__metadata",ph:"M",ts:1e3*Zg(),pid:1,tid:1};c.writeSync(d,`[ +`;function ri(oo,Bs){Hn[oo]+=Bs}}function wt(Ue){switch(Ue){case 3:return"\u2502";case 12:return"\u2500";case 5:return"\u256F";case 9:return"\u2570";case 6:return"\u256E";case 10:return"\u256D";case 7:return"\u2524";case 11:return"\u251C";case 13:return"\u2534";case 14:return"\u252C";case 15:return"\u256B"}return" "}function xe(Ue,In){if(Ue.fill)Ue.fill(In);else for(let Hn=0;Hn0?Ue.repeat(In):"";let Hn="";for(;Hn.length=0,"Invalid argument: major"),pe.assert(g>=0,"Invalid argument: minor"),pe.assert(d>=0,"Invalid argument: patch");let S=h?Ki(h)?h:h.split("."):E,R=_?Ki(_)?_:_.split("."):E;pe.assert(ue(S,T=>yI.test(T)),"Invalid argument: prerelease"),pe.assert(ue(R,T=>U2.test(T)),"Invalid argument: build"),this.major=c,this.minor=g,this.patch=d,this.prerelease=S,this.build=R}static tryParse(c){let g=K(c);if(!g)return;let{major:d,minor:h,patch:_,prerelease:S,build:R}=g;return new mDe(d,h,_,S,R)}compareTo(c){return this===c?0:c===void 0?1:Zt(this.major,c.major)||Zt(this.minor,c.minor)||Zt(this.patch,c.patch)||we(this.prerelease,c.prerelease)}increment(c){switch(c){case"major":return new mDe(this.major+1,0,0);case"minor":return new mDe(this.major,this.minor+1,0);case"patch":return new mDe(this.major,this.minor,this.patch+1);default:return pe.assertNever(c)}}with(c){let{major:g=this.major,minor:d=this.minor,patch:h=this.patch,prerelease:_=this.prerelease,build:S=this.build}=c;return new mDe(g,d,h,_,S)}toString(){let c=`${this.major}.${this.minor}.${this.patch}`;return zt(this.prerelease)&&(c+=`-${this.prerelease.join(".")}`),zt(this.build)&&(c+=`+${this.build.join(".")}`),c}};se.zero=new se(0,0,0,["0"]);var P=se;function K(s){let c=dm.exec(s);if(!c)return;let[,g,d="0",h="0",_="",S=""]=c;if(!(_&&!qf.test(_))&&!(S&&!bI.test(S)))return{major:parseInt(g,10),minor:parseInt(d,10),patch:parseInt(h,10),prerelease:_,build:S}}function we(s,c){if(s===c)return 0;if(s.length===0)return c.length===0?0:1;if(c.length===0)return-1;let g=Math.min(s.length,c.length);for(let d=0;d=]|<=|>=)?\s*([a-z0-9-+.*]+)$/i;function ra(s){let c=[];for(let g of s.trim().split(sr)){if(!g)continue;let d=[];g=g.trim();let h=fi.exec(g);if(h){if(!Dl(h[1],h[2],d))return}else for(let _ of g.split(Yr)){let S=$n.exec(_.trim());if(!S||!ca(S[1],S[2],d))return}c.push(d)}return c}function kc(s){let c=Lr.exec(s);if(!c)return;let[,g,d="*",h="*",_,S]=c;return{version:new P(wl(g)?0:parseInt(g,10),wl(g)||wl(d)?0:parseInt(d,10),wl(g)||wl(d)||wl(h)?0:parseInt(h,10),_,S),major:g,minor:d,patch:h}}function Dl(s,c,g){let d=kc(s);if(!d)return!1;let h=kc(c);return h?(wl(d.major)||g.push(eA(">=",d.version)),wl(h.major)||g.push(wl(h.minor)?eA("<",h.version.increment("major")):wl(h.patch)?eA("<",h.version.increment("minor")):eA("<=",h.version)),!0):!1}function ca(s,c,g){let d=kc(c);if(!d)return!1;let{version:h,major:_,minor:S,patch:R}=d;if(wl(_))(s==="<"||s===">")&&g.push(eA("<",P.zero));else switch(s){case"~":g.push(eA(">=",h)),g.push(eA("<",h.increment(wl(S)?"major":"minor")));break;case"^":g.push(eA(">=",h)),g.push(eA("<",h.increment(h.major>0||wl(S)?"major":h.minor>0||wl(R)?"minor":"patch")));break;case"<":case">=":g.push(wl(S)||wl(R)?eA(s,h.with({prerelease:"0"})):eA(s,h));break;case"<=":case">":g.push(wl(S)?eA(s==="<="?"<":">=",h.increment("major").with({prerelease:"0"})):wl(R)?eA(s==="<="?"<":">=",h.increment("minor").with({prerelease:"0"})):eA(s,h));break;case"=":case void 0:wl(S)||wl(R)?(g.push(eA(">=",h.with({prerelease:"0"}))),g.push(eA("<",h.increment(wl(S)?"major":"minor").with({prerelease:"0"})))):g.push(eA("=",h));break;default:return!1}return!0}function wl(s){return s==="*"||s==="x"||s==="X"}function eA(s,c){return{operator:s,operand:c}}function BA(s,c){if(c.length===0)return!0;for(let g of c)if(gI(s,g))return!0;return!1}function gI(s,c){for(let g of c)if(!gp(s,g.operator,g.operand))return!1;return!0}function gp(s,c,g){let d=s.compareTo(g);switch(c){case"<":return d<0;case"<=":return d<=0;case">":return d>0;case">=":return d>=0;case"=":return d===0;default:return pe.assertNever(c)}}function Cb(s){return lt(s,Na).join(" || ")||"*"}function Na(s){return lt(s,Rd).join(" ")}function Rd(s){return`${s.operator}${s.operand}`}function t2(){if(Xm())try{let{performance:s}=Et("perf_hooks");if(s)return{shouldWriteNativeEvents:!1,performance:s}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function D_(){let s=t2();if(!s)return;let{shouldWriteNativeEvents:c,performance:g}=s,d={shouldWriteNativeEvents:c,performance:void 0,performanceTime:void 0};return typeof g.timeOrigin=="number"&&typeof g.now=="function"&&(d.performanceTime=g),d.performanceTime&&typeof g.mark=="function"&&typeof g.measure=="function"&&typeof g.clearMarks=="function"&&typeof g.clearMeasures=="function"&&(d.performance=g),d}var kC=D_(),Jm=kC?.performanceTime;function KS(){return kC}var Zg=Jm?()=>Jm.now():Date.now,_b={};o(_b,{clearMarks:()=>fm,clearMeasures:()=>pm,createTimer:()=>z_,createTimerIf:()=>K2,disable:()=>ko,enable:()=>na,forEachMark:()=>zS,forEachMeasure:()=>jS,getCount:()=>lE,getDuration:()=>tA,isEnabled:()=>cs,mark:()=>Mc,measure:()=>Pf,nullTimer:()=>GC});var pC,xC;function K2(s,c,g,d){return s?z_(c,g,d):GC}function z_(s,c,g){let d=0;return{enter:h,exit:_};function h(){++d===1&&Mc(c)}function _(){--d===0?(Mc(g),Pf(s,c,g)):d<0&&pe.fail("enter/exit count does not match.")}}var GC={enter:Dc,exit:Dc},FC=!1,th=Zg(),mh=new Map,wA=new Map,Nd=new Map;function Mc(s){if(FC){let c=wA.get(s)??0;wA.set(s,c+1),mh.set(s,Zg()),xC?.mark(s),typeof onProfilerEvent=="function"&&onProfilerEvent(s)}}function Pf(s,c,g){if(FC){let d=(g!==void 0?mh.get(g):void 0)??Zg(),h=(c!==void 0?mh.get(c):void 0)??th,_=Nd.get(s)||0;Nd.set(s,_+(d-h)),xC?.measure(s,c,g)}}function lE(s){return wA.get(s)||0}function tA(s){return Nd.get(s)||0}function jS(s){Nd.forEach((c,g)=>s(g,c))}function zS(s){mh.forEach((c,g)=>s(g))}function pm(s){s!==void 0?Nd.delete(s):Nd.clear(),xC?.clearMeasures(s)}function fm(s){s!==void 0?(wA.delete(s),mh.delete(s)):(wA.clear(),mh.clear()),xC?.clearMarks(s)}function cs(){return FC}function na(s=Ed){var c;return FC||(FC=!0,pC||(pC=KS()),pC?.performance&&(th=pC.performance.timeOrigin,(pC.shouldWriteNativeEvents||(c=s?.cpuProfilingEnabled)!=null&&c.call(s)||s?.debugMode)&&(xC=pC.performance))),!0}function ko(){FC&&(mh.clear(),wA.clear(),Nd.clear(),xC=void 0,FC=!1)}var ki,jl;(s=>{let c,g=0,d=0,h,_=[],S,R=[];function T(et,Ye,Tt){if(pe.assert(!ki,"Tracing already started"),c===void 0)try{c=Et("fs")}catch(yt){throw new Error(`tracing requires having fs +(original error: ${yt.message||yt})`)}h=et,_.length=0,S===void 0&&(S=To(Ye,"legend.json")),c.existsSync(Ye)||c.mkdirSync(Ye,{recursive:!0});let at=h==="build"?`.${process.pid}-${++g}`:h==="server"?`.${process.pid}`:"",Qe=To(Ye,`trace${at}.json`),Ct=To(Ye,`types${at}.json`);R.push({configFilePath:Tt,tracePath:Qe,typesPath:Ct}),d=c.openSync(Qe,"w"),ki=s;let mt={cat:"__metadata",ph:"M",ts:1e3*Zg(),pid:1,tid:1};c.writeSync(d,`[ `+[{name:"process_name",args:{name:"tsc"},...mt},{name:"thread_name",args:{name:"Main"},...mt},{name:"TracingStartedInBrowser",...mt,cat:"disabled-by-default-devtools.timeline"}].map(yt=>JSON.stringify(yt)).join(`, `))}s.startTracing=T;function O(){pe.assert(ki,"Tracing is not in progress"),pe.assert(!!_.length==(h!=="server")),c.writeSync(d,` ] `),c.closeSync(d),ki=void 0,_.length?Pe(_):R[R.length-1].typesPath=void 0}s.stopTracing=O;function V(et){h!=="server"&&_.push(et)}s.recordType=V;let M;(et=>{et.Parse="parse",et.Program="program",et.Bind="bind",et.Check="check",et.CheckTypes="checkTypes",et.Emit="emit",et.Session="session"})(M=s.Phase||(s.Phase={}));function ee(et,Ye,Tt){Te("I",et,Ye,Tt,'"s":"g"')}s.instant=ee;let re=[];function ge(et,Ye,Tt,at=!1){at&&Te("B",et,Ye,Tt),re.push({phase:et,name:Ye,args:Tt,time:1e3*Zg(),separateBeginAndEnd:at})}s.push=ge;function Ie(et){pe.assert(re.length>0),Ne(re.length-1,1e3*Zg(),et),re.length--}s.pop=Ie;function _e(){let et=1e3*Zg();for(let Ye=re.length-1;Ye>=0;Ye--)Ne(Ye,et);re.length=0}s.popAll=_e;let Ee=1e3*10;function Ne(et,Ye,Tt){let{phase:at,name:Qe,args:Ct,time:mt,separateBeginAndEnd:yt}=re[et];yt?(pe.assert(!Tt,"`results` are not supported for events with `separateBeginAndEnd`"),Te("E",at,Qe,Ct,void 0,Ye)):Ee-mt%Ee<=Ye-mt&&Te("X",at,Qe,{...Ct,results:Tt},`"dur":${Ye-mt}`,mt)}function Te(et,Ye,Tt,at,Qe,Ct=1e3*Zg()){h==="server"&&Ye==="checkTypes"||(Mc("beginTracing"),c.writeSync(d,`, -{"pid":1,"tid":1,"ph":"${et}","cat":"${Ye}","ts":${Ct},"name":"${Tt}"`),Qe&&c.writeSync(d,`,${Qe}`),at&&c.writeSync(d,`,"args":${JSON.stringify(at)}`),c.writeSync(d,"}"),Mc("endTracing"),Pf("Tracing","beginTracing","endTracing"))}function Ze(et){let Ye=ms(et);return Ye?{path:Ye.path,start:Tt(Ra(Ye,et.pos)),end:Tt(Ra(Ye,et.end))}:void 0;function Tt(at){return{line:at.line+1,character:at.character+1}}}function Pe(et){var Ye,Tt,at,Qe,Ct,mt,yt,Rt,Lt,je,Wt,_r,Gt,it,kt,tr,ur,Gr,dt;Mc("beginDumpTypes");let pr=R[R.length-1].typesPath,ot=c.openSync(pr,"w"),ir=new Map;c.writeSync(ot,"[");let qt=et.length;for(let Yt=0;YtOo.id),referenceLocation:Ze(ba.node)}}let si={};if(Tr.flags&16777216){let ba=Tr;si={conditionalCheckType:(mt=ba.checkType)==null?void 0:mt.id,conditionalExtendsType:(yt=ba.extendsType)==null?void 0:yt.id,conditionalTrueType:((Rt=ba.resolvedTrueType)==null?void 0:Rt.id)??-1,conditionalFalseType:((Lt=ba.resolvedFalseType)==null?void 0:Lt.id)??-1}}let ks={};if(Tr.flags&33554432){let ba=Tr;ks={substitutionBaseType:(je=ba.baseType)==null?void 0:je.id,constraintType:(Wt=ba.constraint)==null?void 0:Wt.id}}let Ic={};if(Cn&1024){let ba=Tr;Ic={reverseMappedSourceType:(_r=ba.source)==null?void 0:_r.id,reverseMappedMappedType:(Gt=ba.mappedType)==null?void 0:Gt.id,reverseMappedConstraintType:(it=ba.constraintType)==null?void 0:it.id}}let ou={};if(Cn&256){let ba=Tr;ou={evolvingArrayElementType:ba.elementType.id,evolvingArrayFinalType:(kt=ba.finalArrayType)==null?void 0:kt.id}}let Zn,ya=Tr.checker.getRecursionIdentity(Tr);ya&&(Zn=ir.get(ya),Zn||(Zn=ir.size,ir.set(ya,Zn)));let Fl={id:Tr.id,intrinsicName:Tr.intrinsicName,symbolName:jn?.escapedName&&Bc(jn.escapedName),recursionId:Zn,isTuple:Cn&8?!0:void 0,unionTypes:Tr.flags&1048576?(tr=Tr.types)==null?void 0:tr.map(ba=>ba.id):void 0,intersectionTypes:Tr.flags&2097152?Tr.types.map(ba=>ba.id):void 0,aliasTypeArguments:(ur=Tr.aliasTypeArguments)==null?void 0:ur.map(ba=>ba.id),keyofType:Tr.flags&4194304?(Gr=Tr.type)==null?void 0:Gr.id:void 0,...Ns,...An,...si,...ks,...Ic,...ou,destructuringPattern:Ze(Tr.pattern),firstDeclaration:Ze((dt=jn?.declarations)==null?void 0:dt[0]),flags:pe.formatTypeFlags(Tr.flags).split("|"),display:Zi};c.writeSync(ot,JSON.stringify(Fl)),YtOo.id),referenceLocation:Ze(ba.node)}}let si={};if(Tr.flags&16777216){let ba=Tr;si={conditionalCheckType:(mt=ba.checkType)==null?void 0:mt.id,conditionalExtendsType:(yt=ba.extendsType)==null?void 0:yt.id,conditionalTrueType:((Rt=ba.resolvedTrueType)==null?void 0:Rt.id)??-1,conditionalFalseType:((Lt=ba.resolvedFalseType)==null?void 0:Lt.id)??-1}}let ks={};if(Tr.flags&33554432){let ba=Tr;ks={substitutionBaseType:(je=ba.baseType)==null?void 0:je.id,constraintType:(Wt=ba.constraint)==null?void 0:Wt.id}}let Ic={};if(mn&1024){let ba=Tr;Ic={reverseMappedSourceType:(_r=ba.source)==null?void 0:_r.id,reverseMappedMappedType:(Gt=ba.mappedType)==null?void 0:Gt.id,reverseMappedConstraintType:(it=ba.constraintType)==null?void 0:it.id}}let ou={};if(mn&256){let ba=Tr;ou={evolvingArrayElementType:ba.elementType.id,evolvingArrayFinalType:(Dt=ba.finalArrayType)==null?void 0:Dt.id}}let Zn,ya=Tr.checker.getRecursionIdentity(Tr);ya&&(Zn=ir.get(ya),Zn||(Zn=ir.size,ir.set(ya,Zn)));let Fl={id:Tr.id,intrinsicName:Tr.intrinsicName,symbolName:jn?.escapedName&&Bc(jn.escapedName),recursionId:Zn,isTuple:mn&8?!0:void 0,unionTypes:Tr.flags&1048576?(tr=Tr.types)==null?void 0:tr.map(ba=>ba.id):void 0,intersectionTypes:Tr.flags&2097152?Tr.types.map(ba=>ba.id):void 0,aliasTypeArguments:(ur=Tr.aliasTypeArguments)==null?void 0:ur.map(ba=>ba.id),keyofType:Tr.flags&4194304?(Gr=Tr.type)==null?void 0:Gr.id:void 0,...Ns,...An,...si,...ks,...Ic,...ou,destructuringPattern:Ze(Tr.pattern),firstDeclaration:Ze((dt=jn?.declarations)==null?void 0:dt[0]),flags:pe.formatTypeFlags(Tr.flags).split("|"),display:Zi};c.writeSync(ot,JSON.stringify(Fl)),Yt(s[s.Unknown=0]="Unknown",s[s.EndOfFileToken=1]="EndOfFileToken",s[s.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",s[s.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",s[s.NewLineTrivia=4]="NewLineTrivia",s[s.WhitespaceTrivia=5]="WhitespaceTrivia",s[s.ShebangTrivia=6]="ShebangTrivia",s[s.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",s[s.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",s[s.NumericLiteral=9]="NumericLiteral",s[s.BigIntLiteral=10]="BigIntLiteral",s[s.StringLiteral=11]="StringLiteral",s[s.JsxText=12]="JsxText",s[s.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",s[s.RegularExpressionLiteral=14]="RegularExpressionLiteral",s[s.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",s[s.TemplateHead=16]="TemplateHead",s[s.TemplateMiddle=17]="TemplateMiddle",s[s.TemplateTail=18]="TemplateTail",s[s.OpenBraceToken=19]="OpenBraceToken",s[s.CloseBraceToken=20]="CloseBraceToken",s[s.OpenParenToken=21]="OpenParenToken",s[s.CloseParenToken=22]="CloseParenToken",s[s.OpenBracketToken=23]="OpenBracketToken",s[s.CloseBracketToken=24]="CloseBracketToken",s[s.DotToken=25]="DotToken",s[s.DotDotDotToken=26]="DotDotDotToken",s[s.SemicolonToken=27]="SemicolonToken",s[s.CommaToken=28]="CommaToken",s[s.QuestionDotToken=29]="QuestionDotToken",s[s.LessThanToken=30]="LessThanToken",s[s.LessThanSlashToken=31]="LessThanSlashToken",s[s.GreaterThanToken=32]="GreaterThanToken",s[s.LessThanEqualsToken=33]="LessThanEqualsToken",s[s.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",s[s.EqualsEqualsToken=35]="EqualsEqualsToken",s[s.ExclamationEqualsToken=36]="ExclamationEqualsToken",s[s.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",s[s.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",s[s.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",s[s.PlusToken=40]="PlusToken",s[s.MinusToken=41]="MinusToken",s[s.AsteriskToken=42]="AsteriskToken",s[s.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",s[s.SlashToken=44]="SlashToken",s[s.PercentToken=45]="PercentToken",s[s.PlusPlusToken=46]="PlusPlusToken",s[s.MinusMinusToken=47]="MinusMinusToken",s[s.LessThanLessThanToken=48]="LessThanLessThanToken",s[s.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",s[s.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",s[s.AmpersandToken=51]="AmpersandToken",s[s.BarToken=52]="BarToken",s[s.CaretToken=53]="CaretToken",s[s.ExclamationToken=54]="ExclamationToken",s[s.TildeToken=55]="TildeToken",s[s.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",s[s.BarBarToken=57]="BarBarToken",s[s.QuestionToken=58]="QuestionToken",s[s.ColonToken=59]="ColonToken",s[s.AtToken=60]="AtToken",s[s.QuestionQuestionToken=61]="QuestionQuestionToken",s[s.BacktickToken=62]="BacktickToken",s[s.HashToken=63]="HashToken",s[s.EqualsToken=64]="EqualsToken",s[s.PlusEqualsToken=65]="PlusEqualsToken",s[s.MinusEqualsToken=66]="MinusEqualsToken",s[s.AsteriskEqualsToken=67]="AsteriskEqualsToken",s[s.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",s[s.SlashEqualsToken=69]="SlashEqualsToken",s[s.PercentEqualsToken=70]="PercentEqualsToken",s[s.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",s[s.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",s[s.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",s[s.AmpersandEqualsToken=74]="AmpersandEqualsToken",s[s.BarEqualsToken=75]="BarEqualsToken",s[s.BarBarEqualsToken=76]="BarBarEqualsToken",s[s.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",s[s.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",s[s.CaretEqualsToken=79]="CaretEqualsToken",s[s.Identifier=80]="Identifier",s[s.PrivateIdentifier=81]="PrivateIdentifier",s[s.JSDocCommentTextToken=82]="JSDocCommentTextToken",s[s.BreakKeyword=83]="BreakKeyword",s[s.CaseKeyword=84]="CaseKeyword",s[s.CatchKeyword=85]="CatchKeyword",s[s.ClassKeyword=86]="ClassKeyword",s[s.ConstKeyword=87]="ConstKeyword",s[s.ContinueKeyword=88]="ContinueKeyword",s[s.DebuggerKeyword=89]="DebuggerKeyword",s[s.DefaultKeyword=90]="DefaultKeyword",s[s.DeleteKeyword=91]="DeleteKeyword",s[s.DoKeyword=92]="DoKeyword",s[s.ElseKeyword=93]="ElseKeyword",s[s.EnumKeyword=94]="EnumKeyword",s[s.ExportKeyword=95]="ExportKeyword",s[s.ExtendsKeyword=96]="ExtendsKeyword",s[s.FalseKeyword=97]="FalseKeyword",s[s.FinallyKeyword=98]="FinallyKeyword",s[s.ForKeyword=99]="ForKeyword",s[s.FunctionKeyword=100]="FunctionKeyword",s[s.IfKeyword=101]="IfKeyword",s[s.ImportKeyword=102]="ImportKeyword",s[s.InKeyword=103]="InKeyword",s[s.InstanceOfKeyword=104]="InstanceOfKeyword",s[s.NewKeyword=105]="NewKeyword",s[s.NullKeyword=106]="NullKeyword",s[s.ReturnKeyword=107]="ReturnKeyword",s[s.SuperKeyword=108]="SuperKeyword",s[s.SwitchKeyword=109]="SwitchKeyword",s[s.ThisKeyword=110]="ThisKeyword",s[s.ThrowKeyword=111]="ThrowKeyword",s[s.TrueKeyword=112]="TrueKeyword",s[s.TryKeyword=113]="TryKeyword",s[s.TypeOfKeyword=114]="TypeOfKeyword",s[s.VarKeyword=115]="VarKeyword",s[s.VoidKeyword=116]="VoidKeyword",s[s.WhileKeyword=117]="WhileKeyword",s[s.WithKeyword=118]="WithKeyword",s[s.ImplementsKeyword=119]="ImplementsKeyword",s[s.InterfaceKeyword=120]="InterfaceKeyword",s[s.LetKeyword=121]="LetKeyword",s[s.PackageKeyword=122]="PackageKeyword",s[s.PrivateKeyword=123]="PrivateKeyword",s[s.ProtectedKeyword=124]="ProtectedKeyword",s[s.PublicKeyword=125]="PublicKeyword",s[s.StaticKeyword=126]="StaticKeyword",s[s.YieldKeyword=127]="YieldKeyword",s[s.AbstractKeyword=128]="AbstractKeyword",s[s.AccessorKeyword=129]="AccessorKeyword",s[s.AsKeyword=130]="AsKeyword",s[s.AssertsKeyword=131]="AssertsKeyword",s[s.AssertKeyword=132]="AssertKeyword",s[s.AnyKeyword=133]="AnyKeyword",s[s.AsyncKeyword=134]="AsyncKeyword",s[s.AwaitKeyword=135]="AwaitKeyword",s[s.BooleanKeyword=136]="BooleanKeyword",s[s.ConstructorKeyword=137]="ConstructorKeyword",s[s.DeclareKeyword=138]="DeclareKeyword",s[s.GetKeyword=139]="GetKeyword",s[s.InferKeyword=140]="InferKeyword",s[s.IntrinsicKeyword=141]="IntrinsicKeyword",s[s.IsKeyword=142]="IsKeyword",s[s.KeyOfKeyword=143]="KeyOfKeyword",s[s.ModuleKeyword=144]="ModuleKeyword",s[s.NamespaceKeyword=145]="NamespaceKeyword",s[s.NeverKeyword=146]="NeverKeyword",s[s.OutKeyword=147]="OutKeyword",s[s.ReadonlyKeyword=148]="ReadonlyKeyword",s[s.RequireKeyword=149]="RequireKeyword",s[s.NumberKeyword=150]="NumberKeyword",s[s.ObjectKeyword=151]="ObjectKeyword",s[s.SatisfiesKeyword=152]="SatisfiesKeyword",s[s.SetKeyword=153]="SetKeyword",s[s.StringKeyword=154]="StringKeyword",s[s.SymbolKeyword=155]="SymbolKeyword",s[s.TypeKeyword=156]="TypeKeyword",s[s.UndefinedKeyword=157]="UndefinedKeyword",s[s.UniqueKeyword=158]="UniqueKeyword",s[s.UnknownKeyword=159]="UnknownKeyword",s[s.UsingKeyword=160]="UsingKeyword",s[s.FromKeyword=161]="FromKeyword",s[s.GlobalKeyword=162]="GlobalKeyword",s[s.BigIntKeyword=163]="BigIntKeyword",s[s.OverrideKeyword=164]="OverrideKeyword",s[s.OfKeyword=165]="OfKeyword",s[s.DeferKeyword=166]="DeferKeyword",s[s.QualifiedName=167]="QualifiedName",s[s.ComputedPropertyName=168]="ComputedPropertyName",s[s.TypeParameter=169]="TypeParameter",s[s.Parameter=170]="Parameter",s[s.Decorator=171]="Decorator",s[s.PropertySignature=172]="PropertySignature",s[s.PropertyDeclaration=173]="PropertyDeclaration",s[s.MethodSignature=174]="MethodSignature",s[s.MethodDeclaration=175]="MethodDeclaration",s[s.ClassStaticBlockDeclaration=176]="ClassStaticBlockDeclaration",s[s.Constructor=177]="Constructor",s[s.GetAccessor=178]="GetAccessor",s[s.SetAccessor=179]="SetAccessor",s[s.CallSignature=180]="CallSignature",s[s.ConstructSignature=181]="ConstructSignature",s[s.IndexSignature=182]="IndexSignature",s[s.TypePredicate=183]="TypePredicate",s[s.TypeReference=184]="TypeReference",s[s.FunctionType=185]="FunctionType",s[s.ConstructorType=186]="ConstructorType",s[s.TypeQuery=187]="TypeQuery",s[s.TypeLiteral=188]="TypeLiteral",s[s.ArrayType=189]="ArrayType",s[s.TupleType=190]="TupleType",s[s.OptionalType=191]="OptionalType",s[s.RestType=192]="RestType",s[s.UnionType=193]="UnionType",s[s.IntersectionType=194]="IntersectionType",s[s.ConditionalType=195]="ConditionalType",s[s.InferType=196]="InferType",s[s.ParenthesizedType=197]="ParenthesizedType",s[s.ThisType=198]="ThisType",s[s.TypeOperator=199]="TypeOperator",s[s.IndexedAccessType=200]="IndexedAccessType",s[s.MappedType=201]="MappedType",s[s.LiteralType=202]="LiteralType",s[s.NamedTupleMember=203]="NamedTupleMember",s[s.TemplateLiteralType=204]="TemplateLiteralType",s[s.TemplateLiteralTypeSpan=205]="TemplateLiteralTypeSpan",s[s.ImportType=206]="ImportType",s[s.ObjectBindingPattern=207]="ObjectBindingPattern",s[s.ArrayBindingPattern=208]="ArrayBindingPattern",s[s.BindingElement=209]="BindingElement",s[s.ArrayLiteralExpression=210]="ArrayLiteralExpression",s[s.ObjectLiteralExpression=211]="ObjectLiteralExpression",s[s.PropertyAccessExpression=212]="PropertyAccessExpression",s[s.ElementAccessExpression=213]="ElementAccessExpression",s[s.CallExpression=214]="CallExpression",s[s.NewExpression=215]="NewExpression",s[s.TaggedTemplateExpression=216]="TaggedTemplateExpression",s[s.TypeAssertionExpression=217]="TypeAssertionExpression",s[s.ParenthesizedExpression=218]="ParenthesizedExpression",s[s.FunctionExpression=219]="FunctionExpression",s[s.ArrowFunction=220]="ArrowFunction",s[s.DeleteExpression=221]="DeleteExpression",s[s.TypeOfExpression=222]="TypeOfExpression",s[s.VoidExpression=223]="VoidExpression",s[s.AwaitExpression=224]="AwaitExpression",s[s.PrefixUnaryExpression=225]="PrefixUnaryExpression",s[s.PostfixUnaryExpression=226]="PostfixUnaryExpression",s[s.BinaryExpression=227]="BinaryExpression",s[s.ConditionalExpression=228]="ConditionalExpression",s[s.TemplateExpression=229]="TemplateExpression",s[s.YieldExpression=230]="YieldExpression",s[s.SpreadElement=231]="SpreadElement",s[s.ClassExpression=232]="ClassExpression",s[s.OmittedExpression=233]="OmittedExpression",s[s.ExpressionWithTypeArguments=234]="ExpressionWithTypeArguments",s[s.AsExpression=235]="AsExpression",s[s.NonNullExpression=236]="NonNullExpression",s[s.MetaProperty=237]="MetaProperty",s[s.SyntheticExpression=238]="SyntheticExpression",s[s.SatisfiesExpression=239]="SatisfiesExpression",s[s.TemplateSpan=240]="TemplateSpan",s[s.SemicolonClassElement=241]="SemicolonClassElement",s[s.Block=242]="Block",s[s.EmptyStatement=243]="EmptyStatement",s[s.VariableStatement=244]="VariableStatement",s[s.ExpressionStatement=245]="ExpressionStatement",s[s.IfStatement=246]="IfStatement",s[s.DoStatement=247]="DoStatement",s[s.WhileStatement=248]="WhileStatement",s[s.ForStatement=249]="ForStatement",s[s.ForInStatement=250]="ForInStatement",s[s.ForOfStatement=251]="ForOfStatement",s[s.ContinueStatement=252]="ContinueStatement",s[s.BreakStatement=253]="BreakStatement",s[s.ReturnStatement=254]="ReturnStatement",s[s.WithStatement=255]="WithStatement",s[s.SwitchStatement=256]="SwitchStatement",s[s.LabeledStatement=257]="LabeledStatement",s[s.ThrowStatement=258]="ThrowStatement",s[s.TryStatement=259]="TryStatement",s[s.DebuggerStatement=260]="DebuggerStatement",s[s.VariableDeclaration=261]="VariableDeclaration",s[s.VariableDeclarationList=262]="VariableDeclarationList",s[s.FunctionDeclaration=263]="FunctionDeclaration",s[s.ClassDeclaration=264]="ClassDeclaration",s[s.InterfaceDeclaration=265]="InterfaceDeclaration",s[s.TypeAliasDeclaration=266]="TypeAliasDeclaration",s[s.EnumDeclaration=267]="EnumDeclaration",s[s.ModuleDeclaration=268]="ModuleDeclaration",s[s.ModuleBlock=269]="ModuleBlock",s[s.CaseBlock=270]="CaseBlock",s[s.NamespaceExportDeclaration=271]="NamespaceExportDeclaration",s[s.ImportEqualsDeclaration=272]="ImportEqualsDeclaration",s[s.ImportDeclaration=273]="ImportDeclaration",s[s.ImportClause=274]="ImportClause",s[s.NamespaceImport=275]="NamespaceImport",s[s.NamedImports=276]="NamedImports",s[s.ImportSpecifier=277]="ImportSpecifier",s[s.ExportAssignment=278]="ExportAssignment",s[s.ExportDeclaration=279]="ExportDeclaration",s[s.NamedExports=280]="NamedExports",s[s.NamespaceExport=281]="NamespaceExport",s[s.ExportSpecifier=282]="ExportSpecifier",s[s.MissingDeclaration=283]="MissingDeclaration",s[s.ExternalModuleReference=284]="ExternalModuleReference",s[s.JsxElement=285]="JsxElement",s[s.JsxSelfClosingElement=286]="JsxSelfClosingElement",s[s.JsxOpeningElement=287]="JsxOpeningElement",s[s.JsxClosingElement=288]="JsxClosingElement",s[s.JsxFragment=289]="JsxFragment",s[s.JsxOpeningFragment=290]="JsxOpeningFragment",s[s.JsxClosingFragment=291]="JsxClosingFragment",s[s.JsxAttribute=292]="JsxAttribute",s[s.JsxAttributes=293]="JsxAttributes",s[s.JsxSpreadAttribute=294]="JsxSpreadAttribute",s[s.JsxExpression=295]="JsxExpression",s[s.JsxNamespacedName=296]="JsxNamespacedName",s[s.CaseClause=297]="CaseClause",s[s.DefaultClause=298]="DefaultClause",s[s.HeritageClause=299]="HeritageClause",s[s.CatchClause=300]="CatchClause",s[s.ImportAttributes=301]="ImportAttributes",s[s.ImportAttribute=302]="ImportAttribute",s[s.AssertClause=301]="AssertClause",s[s.AssertEntry=302]="AssertEntry",s[s.ImportTypeAssertionContainer=303]="ImportTypeAssertionContainer",s[s.PropertyAssignment=304]="PropertyAssignment",s[s.ShorthandPropertyAssignment=305]="ShorthandPropertyAssignment",s[s.SpreadAssignment=306]="SpreadAssignment",s[s.EnumMember=307]="EnumMember",s[s.SourceFile=308]="SourceFile",s[s.Bundle=309]="Bundle",s[s.JSDocTypeExpression=310]="JSDocTypeExpression",s[s.JSDocNameReference=311]="JSDocNameReference",s[s.JSDocMemberName=312]="JSDocMemberName",s[s.JSDocAllType=313]="JSDocAllType",s[s.JSDocUnknownType=314]="JSDocUnknownType",s[s.JSDocNullableType=315]="JSDocNullableType",s[s.JSDocNonNullableType=316]="JSDocNonNullableType",s[s.JSDocOptionalType=317]="JSDocOptionalType",s[s.JSDocFunctionType=318]="JSDocFunctionType",s[s.JSDocVariadicType=319]="JSDocVariadicType",s[s.JSDocNamepathType=320]="JSDocNamepathType",s[s.JSDoc=321]="JSDoc",s[s.JSDocComment=321]="JSDocComment",s[s.JSDocText=322]="JSDocText",s[s.JSDocTypeLiteral=323]="JSDocTypeLiteral",s[s.JSDocSignature=324]="JSDocSignature",s[s.JSDocLink=325]="JSDocLink",s[s.JSDocLinkCode=326]="JSDocLinkCode",s[s.JSDocLinkPlain=327]="JSDocLinkPlain",s[s.JSDocTag=328]="JSDocTag",s[s.JSDocAugmentsTag=329]="JSDocAugmentsTag",s[s.JSDocImplementsTag=330]="JSDocImplementsTag",s[s.JSDocAuthorTag=331]="JSDocAuthorTag",s[s.JSDocDeprecatedTag=332]="JSDocDeprecatedTag",s[s.JSDocClassTag=333]="JSDocClassTag",s[s.JSDocPublicTag=334]="JSDocPublicTag",s[s.JSDocPrivateTag=335]="JSDocPrivateTag",s[s.JSDocProtectedTag=336]="JSDocProtectedTag",s[s.JSDocReadonlyTag=337]="JSDocReadonlyTag",s[s.JSDocOverrideTag=338]="JSDocOverrideTag",s[s.JSDocCallbackTag=339]="JSDocCallbackTag",s[s.JSDocOverloadTag=340]="JSDocOverloadTag",s[s.JSDocEnumTag=341]="JSDocEnumTag",s[s.JSDocParameterTag=342]="JSDocParameterTag",s[s.JSDocReturnTag=343]="JSDocReturnTag",s[s.JSDocThisTag=344]="JSDocThisTag",s[s.JSDocTypeTag=345]="JSDocTypeTag",s[s.JSDocTemplateTag=346]="JSDocTemplateTag",s[s.JSDocTypedefTag=347]="JSDocTypedefTag",s[s.JSDocSeeTag=348]="JSDocSeeTag",s[s.JSDocPropertyTag=349]="JSDocPropertyTag",s[s.JSDocThrowsTag=350]="JSDocThrowsTag",s[s.JSDocSatisfiesTag=351]="JSDocSatisfiesTag",s[s.JSDocImportTag=352]="JSDocImportTag",s[s.SyntaxList=353]="SyntaxList",s[s.NotEmittedStatement=354]="NotEmittedStatement",s[s.NotEmittedTypeElement=355]="NotEmittedTypeElement",s[s.PartiallyEmittedExpression=356]="PartiallyEmittedExpression",s[s.CommaListExpression=357]="CommaListExpression",s[s.SyntheticReferenceExpression=358]="SyntheticReferenceExpression",s[s.Count=359]="Count",s[s.FirstAssignment=64]="FirstAssignment",s[s.LastAssignment=79]="LastAssignment",s[s.FirstCompoundAssignment=65]="FirstCompoundAssignment",s[s.LastCompoundAssignment=79]="LastCompoundAssignment",s[s.FirstReservedWord=83]="FirstReservedWord",s[s.LastReservedWord=118]="LastReservedWord",s[s.FirstKeyword=83]="FirstKeyword",s[s.LastKeyword=166]="LastKeyword",s[s.FirstFutureReservedWord=119]="FirstFutureReservedWord",s[s.LastFutureReservedWord=127]="LastFutureReservedWord",s[s.FirstTypeNode=183]="FirstTypeNode",s[s.LastTypeNode=206]="LastTypeNode",s[s.FirstPunctuation=19]="FirstPunctuation",s[s.LastPunctuation=79]="LastPunctuation",s[s.FirstToken=0]="FirstToken",s[s.LastToken=166]="LastToken",s[s.FirstTriviaToken=2]="FirstTriviaToken",s[s.LastTriviaToken=7]="LastTriviaToken",s[s.FirstLiteralToken=9]="FirstLiteralToken",s[s.LastLiteralToken=15]="LastLiteralToken",s[s.FirstTemplateToken=15]="FirstTemplateToken",s[s.LastTemplateToken=18]="LastTemplateToken",s[s.FirstBinaryOperator=30]="FirstBinaryOperator",s[s.LastBinaryOperator=79]="LastBinaryOperator",s[s.FirstStatement=244]="FirstStatement",s[s.LastStatement=260]="LastStatement",s[s.FirstNode=167]="FirstNode",s[s.FirstJSDocNode=310]="FirstJSDocNode",s[s.LastJSDocNode=352]="LastJSDocNode",s[s.FirstJSDocTagNode=328]="FirstJSDocTagNode",s[s.LastJSDocTagNode=352]="LastJSDocTagNode",s[s.FirstContextualKeyword=128]="FirstContextualKeyword",s[s.LastContextualKeyword=166]="LastContextualKeyword",s))(Wd||{}),fC=(s=>(s[s.None=0]="None",s[s.Let=1]="Let",s[s.Const=2]="Const",s[s.Using=4]="Using",s[s.AwaitUsing=6]="AwaitUsing",s[s.NestedNamespace=8]="NestedNamespace",s[s.Synthesized=16]="Synthesized",s[s.Namespace=32]="Namespace",s[s.OptionalChain=64]="OptionalChain",s[s.ExportContext=128]="ExportContext",s[s.ContainsThis=256]="ContainsThis",s[s.HasImplicitReturn=512]="HasImplicitReturn",s[s.HasExplicitReturn=1024]="HasExplicitReturn",s[s.GlobalAugmentation=2048]="GlobalAugmentation",s[s.HasAsyncFunctions=4096]="HasAsyncFunctions",s[s.DisallowInContext=8192]="DisallowInContext",s[s.YieldContext=16384]="YieldContext",s[s.DecoratorContext=32768]="DecoratorContext",s[s.AwaitContext=65536]="AwaitContext",s[s.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",s[s.ThisNodeHasError=262144]="ThisNodeHasError",s[s.JavaScriptFile=524288]="JavaScriptFile",s[s.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",s[s.HasAggregatedChildData=2097152]="HasAggregatedChildData",s[s.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",s[s.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",s[s.JSDoc=16777216]="JSDoc",s[s.Ambient=33554432]="Ambient",s[s.InWithStatement=67108864]="InWithStatement",s[s.JsonFile=134217728]="JsonFile",s[s.TypeCached=268435456]="TypeCached",s[s.Deprecated=536870912]="Deprecated",s[s.BlockScoped=7]="BlockScoped",s[s.Constant=6]="Constant",s[s.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",s[s.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",s[s.ContextFlags=101441536]="ContextFlags",s[s.TypeExcludesFlags=81920]="TypeExcludesFlags",s[s.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",s[s.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",s[s.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",s))(fC||{}),jE=(s=>(s[s.None=0]="None",s[s.Public=1]="Public",s[s.Private=2]="Private",s[s.Protected=4]="Protected",s[s.Readonly=8]="Readonly",s[s.Override=16]="Override",s[s.Export=32]="Export",s[s.Abstract=64]="Abstract",s[s.Ambient=128]="Ambient",s[s.Static=256]="Static",s[s.Accessor=512]="Accessor",s[s.Async=1024]="Async",s[s.Default=2048]="Default",s[s.Const=4096]="Const",s[s.In=8192]="In",s[s.Out=16384]="Out",s[s.Decorator=32768]="Decorator",s[s.Deprecated=65536]="Deprecated",s[s.JSDocPublic=8388608]="JSDocPublic",s[s.JSDocPrivate=16777216]="JSDocPrivate",s[s.JSDocProtected=33554432]="JSDocProtected",s[s.JSDocReadonly=67108864]="JSDocReadonly",s[s.JSDocOverride=134217728]="JSDocOverride",s[s.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",s[s.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",s[s.SyntacticModifiers=65535]="SyntacticModifiers",s[s.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",s[s.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",s[s.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",s[s.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",s[s.HasComputedFlags=536870912]="HasComputedFlags",s[s.AccessibilityModifier=7]="AccessibilityModifier",s[s.ParameterPropertyModifier=31]="ParameterPropertyModifier",s[s.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",s[s.TypeScriptModifier=28895]="TypeScriptModifier",s[s.ExportDefault=2080]="ExportDefault",s[s.All=131071]="All",s[s.Modifier=98303]="Modifier",s))(jE||{}),Um=(s=>(s[s.None=0]="None",s[s.IntrinsicNamedElement=1]="IntrinsicNamedElement",s[s.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",s[s.IntrinsicElement=3]="IntrinsicElement",s))(Um||{}),wy=(s=>(s[s.None=0]="None",s[s.Succeeded=1]="Succeeded",s[s.Failed=2]="Failed",s[s.ReportsUnmeasurable=8]="ReportsUnmeasurable",s[s.ReportsUnreliable=16]="ReportsUnreliable",s[s.ReportsMask=24]="ReportsMask",s[s.ComplexityOverflow=32]="ComplexityOverflow",s[s.StackDepthOverflow=64]="StackDepthOverflow",s[s.Overflow=96]="Overflow",s))(wy||{}),z_=(s=>(s[s.None=0]="None",s[s.Always=1]="Always",s[s.Never=2]="Never",s[s.Sometimes=3]="Sometimes",s))(z_||{}),cd=(s=>(s[s.None=0]="None",s[s.Auto=1]="Auto",s[s.Loop=2]="Loop",s[s.Unique=3]="Unique",s[s.Node=4]="Node",s[s.KindMask=7]="KindMask",s[s.ReservedInNestedScopes=8]="ReservedInNestedScopes",s[s.Optimistic=16]="Optimistic",s[s.FileLevel=32]="FileLevel",s[s.AllowNameSubstitution=64]="AllowNameSubstitution",s))(cd||{}),zE=(s=>(s[s.None=0]="None",s[s.HasIndices=1]="HasIndices",s[s.Global=2]="Global",s[s.IgnoreCase=4]="IgnoreCase",s[s.Multiline=8]="Multiline",s[s.DotAll=16]="DotAll",s[s.Unicode=32]="Unicode",s[s.UnicodeSets=64]="UnicodeSets",s[s.Sticky=128]="Sticky",s[s.AnyUnicodeMode=96]="AnyUnicodeMode",s[s.Modifiers=28]="Modifiers",s))(zE||{}),qE=(s=>(s[s.None=0]="None",s[s.PrecedingLineBreak=1]="PrecedingLineBreak",s[s.PrecedingJSDocComment=2]="PrecedingJSDocComment",s[s.Unterminated=4]="Unterminated",s[s.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",s[s.Scientific=16]="Scientific",s[s.Octal=32]="Octal",s[s.HexSpecifier=64]="HexSpecifier",s[s.BinarySpecifier=128]="BinarySpecifier",s[s.OctalSpecifier=256]="OctalSpecifier",s[s.ContainsSeparator=512]="ContainsSeparator",s[s.UnicodeEscape=1024]="UnicodeEscape",s[s.ContainsInvalidEscape=2048]="ContainsInvalidEscape",s[s.HexEscape=4096]="HexEscape",s[s.ContainsLeadingZero=8192]="ContainsLeadingZero",s[s.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",s[s.PrecedingJSDocLeadingAsterisks=32768]="PrecedingJSDocLeadingAsterisks",s[s.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",s[s.WithSpecifier=448]="WithSpecifier",s[s.StringLiteralFlags=7176]="StringLiteralFlags",s[s.NumericLiteralFlags=25584]="NumericLiteralFlags",s[s.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",s[s.IsInvalid=26656]="IsInvalid",s))(qE||{}),Xp=(s=>(s[s.Unreachable=1]="Unreachable",s[s.Start=2]="Start",s[s.BranchLabel=4]="BranchLabel",s[s.LoopLabel=8]="LoopLabel",s[s.Assignment=16]="Assignment",s[s.TrueCondition=32]="TrueCondition",s[s.FalseCondition=64]="FalseCondition",s[s.SwitchClause=128]="SwitchClause",s[s.ArrayMutation=256]="ArrayMutation",s[s.Call=512]="Call",s[s.ReduceLabel=1024]="ReduceLabel",s[s.Referenced=2048]="Referenced",s[s.Shared=4096]="Shared",s[s.Label=12]="Label",s[s.Condition=96]="Condition",s))(Xp||{}),zS=(s=>(s[s.ExpectError=0]="ExpectError",s[s.Ignore=1]="Ignore",s))(zS||{}),Ty=class{},ty=(s=>(s[s.RootFile=0]="RootFile",s[s.SourceFromProjectReference=1]="SourceFromProjectReference",s[s.OutputFromProjectReference=2]="OutputFromProjectReference",s[s.Import=3]="Import",s[s.ReferenceFile=4]="ReferenceFile",s[s.TypeReferenceDirective=5]="TypeReferenceDirective",s[s.LibFile=6]="LibFile",s[s.LibReferenceDirective=7]="LibReferenceDirective",s[s.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",s))(ty||{}),_w=(s=>(s[s.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",s[s.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",s[s.ResolutionDiagnostics=2]="ResolutionDiagnostics",s))(_w||{}),K2=(s=>(s[s.Js=0]="Js",s[s.Dts=1]="Dts",s[s.BuilderSignature=2]="BuilderSignature",s))(K2||{}),xc=(s=>(s[s.Not=0]="Not",s[s.SafeModules=1]="SafeModules",s[s.Completely=2]="Completely",s))(xc||{}),gt=(s=>(s[s.Success=0]="Success",s[s.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",s[s.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",s[s.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",s[s.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",s))(gt||{}),ar=(s=>(s[s.Ok=0]="Ok",s[s.NeedsOverride=1]="NeedsOverride",s[s.HasInvalidOverride=2]="HasInvalidOverride",s))(ar||{}),Jr=(s=>(s[s.None=0]="None",s[s.Literal=1]="Literal",s[s.Subtype=2]="Subtype",s))(Jr||{}),Gn=(s=>(s[s.None=0]="None",s[s.NoSupertypeReduction=1]="NoSupertypeReduction",s[s.NoConstraintReduction=2]="NoConstraintReduction",s))(Gn||{}),Ts=(s=>(s[s.None=0]="None",s[s.Signature=1]="Signature",s[s.NoConstraints=2]="NoConstraints",s[s.Completions=4]="Completions",s[s.SkipBindingPatterns=8]="SkipBindingPatterns",s))(Ts||{}),Qo=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",s[s.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",s[s.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",s[s.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",s[s.AllowEmptyTuple=524288]="AllowEmptyTuple",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",s[s.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",s[s.IgnoreErrors=70221824]="IgnoreErrors",s[s.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.InInitialEntityName=16777216]="InInitialEntityName",s))(Qo||{}),Bg=(s=>(s[s.None=0]="None",s[s.WriteComputedProps=1]="WriteComputedProps",s[s.NoSyntacticPrinter=2]="NoSyntacticPrinter",s[s.DoNotIncludeSymbolChain=4]="DoNotIncludeSymbolChain",s[s.AllowUnresolvedNames=8]="AllowUnresolvedNames",s))(Bg||{}),Dg=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AddUndefined=131072]="AddUndefined",s[s.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",s[s.InArrayType=524288]="InArrayType",s[s.InElementType=2097152]="InElementType",s[s.InFirstTypeArgument=4194304]="InFirstTypeArgument",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",s))(Dg||{}),Df=(s=>(s[s.None=0]="None",s[s.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",s[s.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",s[s.AllowAnyNodeKind=4]="AllowAnyNodeKind",s[s.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",s[s.WriteComputedProps=16]="WriteComputedProps",s[s.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",s))(Df||{}),AI=(s=>(s[s.Accessible=0]="Accessible",s[s.NotAccessible=1]="NotAccessible",s[s.CannotBeNamed=2]="CannotBeNamed",s[s.NotResolved=3]="NotResolved",s))(AI||{}),kh=(s=>(s[s.This=0]="This",s[s.Identifier=1]="Identifier",s[s.AssertsThis=2]="AssertsThis",s[s.AssertsIdentifier=3]="AssertsIdentifier",s))(kh||{}),lE=(s=>(s[s.Unknown=0]="Unknown",s[s.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",s[s.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",s[s.NumberLikeType=3]="NumberLikeType",s[s.BigIntLikeType=4]="BigIntLikeType",s[s.StringLikeType=5]="StringLikeType",s[s.BooleanType=6]="BooleanType",s[s.ArrayLikeType=7]="ArrayLikeType",s[s.ESSymbolType=8]="ESSymbolType",s[s.Promise=9]="Promise",s[s.TypeWithCallSignature=10]="TypeWithCallSignature",s[s.ObjectType=11]="ObjectType",s))(lE||{}),xT=(s=>(s[s.None=0]="None",s[s.FunctionScopedVariable=1]="FunctionScopedVariable",s[s.BlockScopedVariable=2]="BlockScopedVariable",s[s.Property=4]="Property",s[s.EnumMember=8]="EnumMember",s[s.Function=16]="Function",s[s.Class=32]="Class",s[s.Interface=64]="Interface",s[s.ConstEnum=128]="ConstEnum",s[s.RegularEnum=256]="RegularEnum",s[s.ValueModule=512]="ValueModule",s[s.NamespaceModule=1024]="NamespaceModule",s[s.TypeLiteral=2048]="TypeLiteral",s[s.ObjectLiteral=4096]="ObjectLiteral",s[s.Method=8192]="Method",s[s.Constructor=16384]="Constructor",s[s.GetAccessor=32768]="GetAccessor",s[s.SetAccessor=65536]="SetAccessor",s[s.Signature=131072]="Signature",s[s.TypeParameter=262144]="TypeParameter",s[s.TypeAlias=524288]="TypeAlias",s[s.ExportValue=1048576]="ExportValue",s[s.Alias=2097152]="Alias",s[s.Prototype=4194304]="Prototype",s[s.ExportStar=8388608]="ExportStar",s[s.Optional=16777216]="Optional",s[s.Transient=33554432]="Transient",s[s.Assignment=67108864]="Assignment",s[s.ModuleExports=134217728]="ModuleExports",s[s.All=-1]="All",s[s.Enum=384]="Enum",s[s.Variable=3]="Variable",s[s.Value=111551]="Value",s[s.Type=788968]="Type",s[s.Namespace=1920]="Namespace",s[s.Module=1536]="Module",s[s.Accessor=98304]="Accessor",s[s.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",s[s.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",s[s.ParameterExcludes=111551]="ParameterExcludes",s[s.PropertyExcludes=0]="PropertyExcludes",s[s.EnumMemberExcludes=900095]="EnumMemberExcludes",s[s.FunctionExcludes=110991]="FunctionExcludes",s[s.ClassExcludes=899503]="ClassExcludes",s[s.InterfaceExcludes=788872]="InterfaceExcludes",s[s.RegularEnumExcludes=899327]="RegularEnumExcludes",s[s.ConstEnumExcludes=899967]="ConstEnumExcludes",s[s.ValueModuleExcludes=110735]="ValueModuleExcludes",s[s.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",s[s.MethodExcludes=103359]="MethodExcludes",s[s.GetAccessorExcludes=46015]="GetAccessorExcludes",s[s.SetAccessorExcludes=78783]="SetAccessorExcludes",s[s.AccessorExcludes=13247]="AccessorExcludes",s[s.TypeParameterExcludes=526824]="TypeParameterExcludes",s[s.TypeAliasExcludes=788968]="TypeAliasExcludes",s[s.AliasExcludes=2097152]="AliasExcludes",s[s.ModuleMember=2623475]="ModuleMember",s[s.ExportHasLocal=944]="ExportHasLocal",s[s.BlockScoped=418]="BlockScoped",s[s.PropertyOrAccessor=98308]="PropertyOrAccessor",s[s.ClassMember=106500]="ClassMember",s[s.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",s[s.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",s[s.Classifiable=2885600]="Classifiable",s[s.LateBindingContainer=6256]="LateBindingContainer",s))(xT||{}),uB=(s=>(s[s.None=0]="None",s[s.Instantiated=1]="Instantiated",s[s.SyntheticProperty=2]="SyntheticProperty",s[s.SyntheticMethod=4]="SyntheticMethod",s[s.Readonly=8]="Readonly",s[s.ReadPartial=16]="ReadPartial",s[s.WritePartial=32]="WritePartial",s[s.HasNonUniformType=64]="HasNonUniformType",s[s.HasLiteralType=128]="HasLiteralType",s[s.ContainsPublic=256]="ContainsPublic",s[s.ContainsProtected=512]="ContainsProtected",s[s.ContainsPrivate=1024]="ContainsPrivate",s[s.ContainsStatic=2048]="ContainsStatic",s[s.Late=4096]="Late",s[s.ReverseMapped=8192]="ReverseMapped",s[s.OptionalParameter=16384]="OptionalParameter",s[s.RestParameter=32768]="RestParameter",s[s.DeferredType=65536]="DeferredType",s[s.HasNeverType=131072]="HasNeverType",s[s.Mapped=262144]="Mapped",s[s.StripOptional=524288]="StripOptional",s[s.Unresolved=1048576]="Unresolved",s[s.Synthetic=6]="Synthetic",s[s.Discriminant=192]="Discriminant",s[s.Partial=48]="Partial",s))(uB||{}),GT=(s=>(s.Call="__call",s.Constructor="__constructor",s.New="__new",s.Index="__index",s.ExportStar="__export",s.Global="__global",s.Missing="__missing",s.Type="__type",s.Object="__object",s.JSXAttributes="__jsxAttributes",s.Class="__class",s.Function="__function",s.Computed="__computed",s.Resolving="__resolving__",s.ExportEquals="export=",s.Default="default",s.This="this",s.InstantiationExpression="__instantiationExpression",s.ImportAttributes="__importAttributes",s))(GT||{}),Ry=(s=>(s[s.None=0]="None",s[s.TypeChecked=1]="TypeChecked",s[s.LexicalThis=2]="LexicalThis",s[s.CaptureThis=4]="CaptureThis",s[s.CaptureNewTarget=8]="CaptureNewTarget",s[s.SuperInstance=16]="SuperInstance",s[s.SuperStatic=32]="SuperStatic",s[s.ContextChecked=64]="ContextChecked",s[s.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",s[s.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",s[s.CaptureArguments=512]="CaptureArguments",s[s.EnumValuesComputed=1024]="EnumValuesComputed",s[s.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",s[s.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",s[s.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",s[s.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",s[s.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",s[s.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",s[s.AssignmentsMarked=131072]="AssignmentsMarked",s[s.ContainsConstructorReference=262144]="ContainsConstructorReference",s[s.ConstructorReference=536870912]="ConstructorReference",s[s.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",s[s.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",s[s.InCheckIdentifier=4194304]="InCheckIdentifier",s[s.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",s[s.LazyFlags=539358128]="LazyFlags",s))(Ry||{}),$E=(s=>(s[s.Any=1]="Any",s[s.Unknown=2]="Unknown",s[s.String=4]="String",s[s.Number=8]="Number",s[s.Boolean=16]="Boolean",s[s.Enum=32]="Enum",s[s.BigInt=64]="BigInt",s[s.StringLiteral=128]="StringLiteral",s[s.NumberLiteral=256]="NumberLiteral",s[s.BooleanLiteral=512]="BooleanLiteral",s[s.EnumLiteral=1024]="EnumLiteral",s[s.BigIntLiteral=2048]="BigIntLiteral",s[s.ESSymbol=4096]="ESSymbol",s[s.UniqueESSymbol=8192]="UniqueESSymbol",s[s.Void=16384]="Void",s[s.Undefined=32768]="Undefined",s[s.Null=65536]="Null",s[s.Never=131072]="Never",s[s.TypeParameter=262144]="TypeParameter",s[s.Object=524288]="Object",s[s.Union=1048576]="Union",s[s.Intersection=2097152]="Intersection",s[s.Index=4194304]="Index",s[s.IndexedAccess=8388608]="IndexedAccess",s[s.Conditional=16777216]="Conditional",s[s.Substitution=33554432]="Substitution",s[s.NonPrimitive=67108864]="NonPrimitive",s[s.TemplateLiteral=134217728]="TemplateLiteral",s[s.StringMapping=268435456]="StringMapping",s[s.Reserved1=536870912]="Reserved1",s[s.Reserved2=1073741824]="Reserved2",s[s.AnyOrUnknown=3]="AnyOrUnknown",s[s.Nullable=98304]="Nullable",s[s.Literal=2944]="Literal",s[s.Unit=109472]="Unit",s[s.Freshable=2976]="Freshable",s[s.StringOrNumberLiteral=384]="StringOrNumberLiteral",s[s.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",s[s.DefinitelyFalsy=117632]="DefinitelyFalsy",s[s.PossiblyFalsy=117724]="PossiblyFalsy",s[s.Intrinsic=67359327]="Intrinsic",s[s.StringLike=402653316]="StringLike",s[s.NumberLike=296]="NumberLike",s[s.BigIntLike=2112]="BigIntLike",s[s.BooleanLike=528]="BooleanLike",s[s.EnumLike=1056]="EnumLike",s[s.ESSymbolLike=12288]="ESSymbolLike",s[s.VoidLike=49152]="VoidLike",s[s.Primitive=402784252]="Primitive",s[s.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",s[s.DisjointDomains=469892092]="DisjointDomains",s[s.UnionOrIntersection=3145728]="UnionOrIntersection",s[s.StructuredType=3670016]="StructuredType",s[s.TypeVariable=8650752]="TypeVariable",s[s.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",s[s.InstantiablePrimitive=406847488]="InstantiablePrimitive",s[s.Instantiable=465829888]="Instantiable",s[s.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",s[s.ObjectFlagsType=3899393]="ObjectFlagsType",s[s.Simplifiable=25165824]="Simplifiable",s[s.Singleton=67358815]="Singleton",s[s.Narrowable=536624127]="Narrowable",s[s.IncludesMask=473694207]="IncludesMask",s[s.IncludesMissingType=262144]="IncludesMissingType",s[s.IncludesNonWideningType=4194304]="IncludesNonWideningType",s[s.IncludesWildcard=8388608]="IncludesWildcard",s[s.IncludesEmptyObject=16777216]="IncludesEmptyObject",s[s.IncludesInstantiable=33554432]="IncludesInstantiable",s[s.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",s[s.IncludesError=1073741824]="IncludesError",s[s.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",s))($E||{}),q_=(s=>(s[s.None=0]="None",s[s.Class=1]="Class",s[s.Interface=2]="Interface",s[s.Reference=4]="Reference",s[s.Tuple=8]="Tuple",s[s.Anonymous=16]="Anonymous",s[s.Mapped=32]="Mapped",s[s.Instantiated=64]="Instantiated",s[s.ObjectLiteral=128]="ObjectLiteral",s[s.EvolvingArray=256]="EvolvingArray",s[s.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",s[s.ReverseMapped=1024]="ReverseMapped",s[s.JsxAttributes=2048]="JsxAttributes",s[s.JSLiteral=4096]="JSLiteral",s[s.FreshLiteral=8192]="FreshLiteral",s[s.ArrayLiteral=16384]="ArrayLiteral",s[s.PrimitiveUnion=32768]="PrimitiveUnion",s[s.ContainsWideningType=65536]="ContainsWideningType",s[s.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",s[s.NonInferrableType=262144]="NonInferrableType",s[s.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",s[s.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",s[s.SingleSignatureType=134217728]="SingleSignatureType",s[s.ClassOrInterface=3]="ClassOrInterface",s[s.RequiresWidening=196608]="RequiresWidening",s[s.PropagatingFlags=458752]="PropagatingFlags",s[s.InstantiatedMapped=96]="InstantiatedMapped",s[s.ObjectTypeKindMask=1343]="ObjectTypeKindMask",s[s.ContainsSpread=2097152]="ContainsSpread",s[s.ObjectRestType=4194304]="ObjectRestType",s[s.InstantiationExpressionType=8388608]="InstantiationExpressionType",s[s.IsClassInstanceClone=16777216]="IsClassInstanceClone",s[s.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",s[s.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",s[s.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",s[s.IsGenericObjectType=4194304]="IsGenericObjectType",s[s.IsGenericIndexType=8388608]="IsGenericIndexType",s[s.IsGenericType=12582912]="IsGenericType",s[s.ContainsIntersections=16777216]="ContainsIntersections",s[s.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",s[s.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",s[s.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",s[s.IsNeverIntersection=33554432]="IsNeverIntersection",s[s.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",s))(q_||{}),FT=(s=>(s[s.Invariant=0]="Invariant",s[s.Covariant=1]="Covariant",s[s.Contravariant=2]="Contravariant",s[s.Bivariant=3]="Bivariant",s[s.Independent=4]="Independent",s[s.VarianceMask=7]="VarianceMask",s[s.Unmeasurable=8]="Unmeasurable",s[s.Unreliable=16]="Unreliable",s[s.AllowsStructuralFallback=24]="AllowsStructuralFallback",s))(FT||{}),nf=(s=>(s[s.Required=1]="Required",s[s.Optional=2]="Optional",s[s.Rest=4]="Rest",s[s.Variadic=8]="Variadic",s[s.Fixed=3]="Fixed",s[s.Variable=12]="Variable",s[s.NonRequired=14]="NonRequired",s[s.NonRest=11]="NonRest",s))(nf||{}),Ny=(s=>(s[s.None=0]="None",s[s.IncludeUndefined=1]="IncludeUndefined",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.Writing=4]="Writing",s[s.CacheSymbol=8]="CacheSymbol",s[s.AllowMissing=16]="AllowMissing",s[s.ExpressionPosition=32]="ExpressionPosition",s[s.ReportDeprecated=64]="ReportDeprecated",s[s.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",s[s.Contextual=256]="Contextual",s[s.Persistent=1]="Persistent",s))(Ny||{}),qS=(s=>(s[s.None=0]="None",s[s.StringsOnly=1]="StringsOnly",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.NoReducibleCheck=4]="NoReducibleCheck",s))(qS||{}),rh=(s=>(s[s.Component=0]="Component",s[s.Function=1]="Function",s[s.Mixed=2]="Mixed",s))(rh||{}),TA=(s=>(s[s.Call=0]="Call",s[s.Construct=1]="Construct",s))(TA||{}),td=(s=>(s[s.None=0]="None",s[s.HasRestParameter=1]="HasRestParameter",s[s.HasLiteralTypes=2]="HasLiteralTypes",s[s.Abstract=4]="Abstract",s[s.IsInnerCallChain=8]="IsInnerCallChain",s[s.IsOuterCallChain=16]="IsOuterCallChain",s[s.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",s[s.IsNonInferrable=64]="IsNonInferrable",s[s.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",s[s.PropagatingFlags=167]="PropagatingFlags",s[s.CallChainFlags=24]="CallChainFlags",s))(td||{}),Km=(s=>(s[s.String=0]="String",s[s.Number=1]="Number",s))(Km||{}),eI=(s=>(s[s.Simple=0]="Simple",s[s.Array=1]="Array",s[s.Deferred=2]="Deferred",s[s.Function=3]="Function",s[s.Composite=4]="Composite",s[s.Merged=5]="Merged",s))(eI||{}),_b=(s=>(s[s.None=0]="None",s[s.NakedTypeVariable=1]="NakedTypeVariable",s[s.SpeculativeTuple=2]="SpeculativeTuple",s[s.SubstituteSource=4]="SubstituteSource",s[s.HomomorphicMappedType=8]="HomomorphicMappedType",s[s.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",s[s.MappedTypeConstraint=32]="MappedTypeConstraint",s[s.ContravariantConditional=64]="ContravariantConditional",s[s.ReturnType=128]="ReturnType",s[s.LiteralKeyof=256]="LiteralKeyof",s[s.NoConstraints=512]="NoConstraints",s[s.AlwaysStrict=1024]="AlwaysStrict",s[s.MaxValue=2048]="MaxValue",s[s.PriorityImpliesCombination=416]="PriorityImpliesCombination",s[s.Circularity=-1]="Circularity",s))(_b||{}),D_=(s=>(s[s.None=0]="None",s[s.NoDefault=1]="NoDefault",s[s.AnyDefault=2]="AnyDefault",s[s.SkippedGenericFunction=4]="SkippedGenericFunction",s))(D_||{}),yb=(s=>(s[s.False=0]="False",s[s.Unknown=1]="Unknown",s[s.Maybe=3]="Maybe",s[s.True=-1]="True",s))(yb||{}),Dy=(s=>(s[s.None=0]="None",s[s.ExportsProperty=1]="ExportsProperty",s[s.ModuleExports=2]="ModuleExports",s[s.PrototypeProperty=3]="PrototypeProperty",s[s.ThisProperty=4]="ThisProperty",s[s.Property=5]="Property",s[s.Prototype=6]="Prototype",s[s.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",s[s.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",s[s.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",s))(Dy||{}),$S=(s=>(s[s.Warning=0]="Warning",s[s.Error=1]="Error",s[s.Suggestion=2]="Suggestion",s[s.Message=3]="Message",s))($S||{});function bb(s,c=!0){let g=$S[s.category];return c?g.toLowerCase():g}var $_=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s[s.Node10=2]="Node10",s[s.Node16=3]="Node16",s[s.NodeNext=99]="NodeNext",s[s.Bundler=100]="Bundler",s))($_||{}),e1=(s=>(s[s.Legacy=1]="Legacy",s[s.Auto=2]="Auto",s[s.Force=3]="Force",s))(e1||{}),gB=(s=>(s[s.FixedPollingInterval=0]="FixedPollingInterval",s[s.PriorityPollingInterval=1]="PriorityPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s[s.UseFsEvents=4]="UseFsEvents",s[s.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",s))(gB||{}),ZT=(s=>(s[s.UseFsEvents=0]="UseFsEvents",s[s.FixedPollingInterval=1]="FixedPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s))(ZT||{}),AB=(s=>(s[s.FixedInterval=0]="FixedInterval",s[s.PriorityInterval=1]="PriorityInterval",s[s.DynamicPriority=2]="DynamicPriority",s[s.FixedChunkSize=3]="FixedChunkSize",s))(AB||{}),ev=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ES2020=6]="ES2020",s[s.ES2022=7]="ES2022",s[s.ESNext=99]="ESNext",s[s.Node16=100]="Node16",s[s.Node18=101]="Node18",s[s.Node20=102]="Node20",s[s.NodeNext=199]="NodeNext",s[s.Preserve=200]="Preserve",s))(ev||{}),zR=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(zR||{}),tv=(s=>(s[s.Remove=0]="Remove",s[s.Preserve=1]="Preserve",s[s.Error=2]="Error",s))(tv||{}),t1=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(t1||{}),j2=(s=>(s[s.Unknown=0]="Unknown",s[s.JS=1]="JS",s[s.JSX=2]="JSX",s[s.TS=3]="TS",s[s.TSX=4]="TSX",s[s.External=5]="External",s[s.JSON=6]="JSON",s[s.Deferred=7]="Deferred",s))(j2||{}),LT=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ES2021=8]="ES2021",s[s.ES2022=9]="ES2022",s[s.ES2023=10]="ES2023",s[s.ES2024=11]="ES2024",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(LT||{}),pn=(s=>(s[s.Standard=0]="Standard",s[s.JSX=1]="JSX",s))(pn||{}),t2=(s=>(s[s.None=0]="None",s[s.Recursive=1]="Recursive",s))(t2||{}),z2=(s=>(s[s.EOF=-1]="EOF",s[s.nullCharacter=0]="nullCharacter",s[s.maxAsciiCharacter=127]="maxAsciiCharacter",s[s.lineFeed=10]="lineFeed",s[s.carriageReturn=13]="carriageReturn",s[s.lineSeparator=8232]="lineSeparator",s[s.paragraphSeparator=8233]="paragraphSeparator",s[s.nextLine=133]="nextLine",s[s.space=32]="space",s[s.nonBreakingSpace=160]="nonBreakingSpace",s[s.enQuad=8192]="enQuad",s[s.emQuad=8193]="emQuad",s[s.enSpace=8194]="enSpace",s[s.emSpace=8195]="emSpace",s[s.threePerEmSpace=8196]="threePerEmSpace",s[s.fourPerEmSpace=8197]="fourPerEmSpace",s[s.sixPerEmSpace=8198]="sixPerEmSpace",s[s.figureSpace=8199]="figureSpace",s[s.punctuationSpace=8200]="punctuationSpace",s[s.thinSpace=8201]="thinSpace",s[s.hairSpace=8202]="hairSpace",s[s.zeroWidthSpace=8203]="zeroWidthSpace",s[s.narrowNoBreakSpace=8239]="narrowNoBreakSpace",s[s.ideographicSpace=12288]="ideographicSpace",s[s.mathematicalSpace=8287]="mathematicalSpace",s[s.ogham=5760]="ogham",s[s.replacementCharacter=65533]="replacementCharacter",s[s._=95]="_",s[s.$=36]="$",s[s._0=48]="_0",s[s._1=49]="_1",s[s._2=50]="_2",s[s._3=51]="_3",s[s._4=52]="_4",s[s._5=53]="_5",s[s._6=54]="_6",s[s._7=55]="_7",s[s._8=56]="_8",s[s._9=57]="_9",s[s.a=97]="a",s[s.b=98]="b",s[s.c=99]="c",s[s.d=100]="d",s[s.e=101]="e",s[s.f=102]="f",s[s.g=103]="g",s[s.h=104]="h",s[s.i=105]="i",s[s.j=106]="j",s[s.k=107]="k",s[s.l=108]="l",s[s.m=109]="m",s[s.n=110]="n",s[s.o=111]="o",s[s.p=112]="p",s[s.q=113]="q",s[s.r=114]="r",s[s.s=115]="s",s[s.t=116]="t",s[s.u=117]="u",s[s.v=118]="v",s[s.w=119]="w",s[s.x=120]="x",s[s.y=121]="y",s[s.z=122]="z",s[s.A=65]="A",s[s.B=66]="B",s[s.C=67]="C",s[s.D=68]="D",s[s.E=69]="E",s[s.F=70]="F",s[s.G=71]="G",s[s.H=72]="H",s[s.I=73]="I",s[s.J=74]="J",s[s.K=75]="K",s[s.L=76]="L",s[s.M=77]="M",s[s.N=78]="N",s[s.O=79]="O",s[s.P=80]="P",s[s.Q=81]="Q",s[s.R=82]="R",s[s.S=83]="S",s[s.T=84]="T",s[s.U=85]="U",s[s.V=86]="V",s[s.W=87]="W",s[s.X=88]="X",s[s.Y=89]="Y",s[s.Z=90]="Z",s[s.ampersand=38]="ampersand",s[s.asterisk=42]="asterisk",s[s.at=64]="at",s[s.backslash=92]="backslash",s[s.backtick=96]="backtick",s[s.bar=124]="bar",s[s.caret=94]="caret",s[s.closeBrace=125]="closeBrace",s[s.closeBracket=93]="closeBracket",s[s.closeParen=41]="closeParen",s[s.colon=58]="colon",s[s.comma=44]="comma",s[s.dot=46]="dot",s[s.doubleQuote=34]="doubleQuote",s[s.equals=61]="equals",s[s.exclamation=33]="exclamation",s[s.greaterThan=62]="greaterThan",s[s.hash=35]="hash",s[s.lessThan=60]="lessThan",s[s.minus=45]="minus",s[s.openBrace=123]="openBrace",s[s.openBracket=91]="openBracket",s[s.openParen=40]="openParen",s[s.percent=37]="percent",s[s.plus=43]="plus",s[s.question=63]="question",s[s.semicolon=59]="semicolon",s[s.singleQuote=39]="singleQuote",s[s.slash=47]="slash",s[s.tilde=126]="tilde",s[s.backspace=8]="backspace",s[s.formFeed=12]="formFeed",s[s.byteOrderMark=65279]="byteOrderMark",s[s.tab=9]="tab",s[s.verticalTab=11]="verticalTab",s))(z2||{}),ry=(s=>(s.Ts=".ts",s.Tsx=".tsx",s.Dts=".d.ts",s.Js=".js",s.Jsx=".jsx",s.Json=".json",s.TsBuildInfo=".tsbuildinfo",s.Mjs=".mjs",s.Mts=".mts",s.Dmts=".d.mts",s.Cjs=".cjs",s.Cts=".cts",s.Dcts=".d.cts",s))(ry||{}),Ap=(s=>(s[s.None=0]="None",s[s.ContainsTypeScript=1]="ContainsTypeScript",s[s.ContainsJsx=2]="ContainsJsx",s[s.ContainsESNext=4]="ContainsESNext",s[s.ContainsES2022=8]="ContainsES2022",s[s.ContainsES2021=16]="ContainsES2021",s[s.ContainsES2020=32]="ContainsES2020",s[s.ContainsES2019=64]="ContainsES2019",s[s.ContainsES2018=128]="ContainsES2018",s[s.ContainsES2017=256]="ContainsES2017",s[s.ContainsES2016=512]="ContainsES2016",s[s.ContainsES2015=1024]="ContainsES2015",s[s.ContainsGenerator=2048]="ContainsGenerator",s[s.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",s[s.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",s[s.ContainsLexicalThis=16384]="ContainsLexicalThis",s[s.ContainsRestOrSpread=32768]="ContainsRestOrSpread",s[s.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",s[s.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",s[s.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",s[s.ContainsBindingPattern=524288]="ContainsBindingPattern",s[s.ContainsYield=1048576]="ContainsYield",s[s.ContainsAwait=2097152]="ContainsAwait",s[s.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",s[s.ContainsDynamicImport=8388608]="ContainsDynamicImport",s[s.ContainsClassFields=16777216]="ContainsClassFields",s[s.ContainsDecorators=33554432]="ContainsDecorators",s[s.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",s[s.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",s[s.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",s[s.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",s[s.HasComputedFlags=-2147483648]="HasComputedFlags",s[s.AssertTypeScript=1]="AssertTypeScript",s[s.AssertJsx=2]="AssertJsx",s[s.AssertESNext=4]="AssertESNext",s[s.AssertES2022=8]="AssertES2022",s[s.AssertES2021=16]="AssertES2021",s[s.AssertES2020=32]="AssertES2020",s[s.AssertES2019=64]="AssertES2019",s[s.AssertES2018=128]="AssertES2018",s[s.AssertES2017=256]="AssertES2017",s[s.AssertES2016=512]="AssertES2016",s[s.AssertES2015=1024]="AssertES2015",s[s.AssertGenerator=2048]="AssertGenerator",s[s.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",s[s.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",s[s.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",s[s.NodeExcludes=-2147483648]="NodeExcludes",s[s.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",s[s.FunctionExcludes=-1937940480]="FunctionExcludes",s[s.ConstructorExcludes=-1937948672]="ConstructorExcludes",s[s.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",s[s.PropertyExcludes=-2013249536]="PropertyExcludes",s[s.ClassExcludes=-2147344384]="ClassExcludes",s[s.ModuleExcludes=-1941676032]="ModuleExcludes",s[s.TypeExcludes=-2]="TypeExcludes",s[s.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",s[s.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",s[s.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",s[s.ParameterExcludes=-2147483648]="ParameterExcludes",s[s.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",s[s.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",s[s.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",s[s.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",s))(Ap||{}),yw=(s=>(s[s.TabStop=0]="TabStop",s[s.Placeholder=1]="Placeholder",s[s.Choice=2]="Choice",s[s.Variable=3]="Variable",s))(yw||{}),dB=(s=>(s[s.None=0]="None",s[s.SingleLine=1]="SingleLine",s[s.MultiLine=2]="MultiLine",s[s.AdviseOnEmitNode=4]="AdviseOnEmitNode",s[s.NoSubstitution=8]="NoSubstitution",s[s.CapturesThis=16]="CapturesThis",s[s.NoLeadingSourceMap=32]="NoLeadingSourceMap",s[s.NoTrailingSourceMap=64]="NoTrailingSourceMap",s[s.NoSourceMap=96]="NoSourceMap",s[s.NoNestedSourceMaps=128]="NoNestedSourceMaps",s[s.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",s[s.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",s[s.NoTokenSourceMaps=768]="NoTokenSourceMaps",s[s.NoLeadingComments=1024]="NoLeadingComments",s[s.NoTrailingComments=2048]="NoTrailingComments",s[s.NoComments=3072]="NoComments",s[s.NoNestedComments=4096]="NoNestedComments",s[s.HelperName=8192]="HelperName",s[s.ExportName=16384]="ExportName",s[s.LocalName=32768]="LocalName",s[s.InternalName=65536]="InternalName",s[s.Indented=131072]="Indented",s[s.NoIndentation=262144]="NoIndentation",s[s.AsyncFunctionBody=524288]="AsyncFunctionBody",s[s.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",s[s.CustomPrologue=2097152]="CustomPrologue",s[s.NoHoisting=4194304]="NoHoisting",s[s.Iterator=8388608]="Iterator",s[s.NoAsciiEscaping=16777216]="NoAsciiEscaping",s))(dB||{}),GD=(s=>(s[s.None=0]="None",s[s.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",s[s.NeverApplyImportHelper=2]="NeverApplyImportHelper",s[s.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",s[s.Immutable=8]="Immutable",s[s.IndirectCall=16]="IndirectCall",s[s.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",s))(GD||{}),Dd={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},qR=(s=>(s[s.Extends=1]="Extends",s[s.Assign=2]="Assign",s[s.Rest=4]="Rest",s[s.Decorate=8]="Decorate",s[s.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",s[s.Metadata=16]="Metadata",s[s.Param=32]="Param",s[s.Awaiter=64]="Awaiter",s[s.Generator=128]="Generator",s[s.Values=256]="Values",s[s.Read=512]="Read",s[s.SpreadArray=1024]="SpreadArray",s[s.Await=2048]="Await",s[s.AsyncGenerator=4096]="AsyncGenerator",s[s.AsyncDelegator=8192]="AsyncDelegator",s[s.AsyncValues=16384]="AsyncValues",s[s.ExportStar=32768]="ExportStar",s[s.ImportStar=65536]="ImportStar",s[s.ImportDefault=131072]="ImportDefault",s[s.MakeTemplateObject=262144]="MakeTemplateObject",s[s.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",s[s.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",s[s.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",s[s.SetFunctionName=4194304]="SetFunctionName",s[s.PropKey=8388608]="PropKey",s[s.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",s[s.RewriteRelativeImportExtension=33554432]="RewriteRelativeImportExtension",s[s.FirstEmitHelper=1]="FirstEmitHelper",s[s.LastEmitHelper=16777216]="LastEmitHelper",s[s.ForOfIncludes=256]="ForOfIncludes",s[s.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",s[s.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",s[s.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",s[s.SpreadIncludes=1536]="SpreadIncludes",s))(qR||{}),ny=(s=>(s[s.SourceFile=0]="SourceFile",s[s.Expression=1]="Expression",s[s.IdentifierName=2]="IdentifierName",s[s.MappedTypeParameter=3]="MappedTypeParameter",s[s.Unspecified=4]="Unspecified",s[s.EmbeddedStatement=5]="EmbeddedStatement",s[s.JsxAttributeValue=6]="JsxAttributeValue",s[s.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",s))(ny||{}),pF=(s=>(s[s.Parentheses=1]="Parentheses",s[s.TypeAssertions=2]="TypeAssertions",s[s.NonNullAssertions=4]="NonNullAssertions",s[s.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",s[s.ExpressionsWithTypeArguments=16]="ExpressionsWithTypeArguments",s[s.Satisfies=32]="Satisfies",s[s.Assertions=38]="Assertions",s[s.All=63]="All",s[s.ExcludeJSDocTypeAssertion=-2147483648]="ExcludeJSDocTypeAssertion",s))(pF||{}),r2=(s=>(s[s.None=0]="None",s[s.InParameters=1]="InParameters",s[s.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",s))(r2||{}),r1=(s=>(s[s.None=0]="None",s[s.SingleLine=0]="SingleLine",s[s.MultiLine=1]="MultiLine",s[s.PreserveLines=2]="PreserveLines",s[s.LinesMask=3]="LinesMask",s[s.NotDelimited=0]="NotDelimited",s[s.BarDelimited=4]="BarDelimited",s[s.AmpersandDelimited=8]="AmpersandDelimited",s[s.CommaDelimited=16]="CommaDelimited",s[s.AsteriskDelimited=32]="AsteriskDelimited",s[s.DelimitersMask=60]="DelimitersMask",s[s.AllowTrailingComma=64]="AllowTrailingComma",s[s.Indented=128]="Indented",s[s.SpaceBetweenBraces=256]="SpaceBetweenBraces",s[s.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",s[s.Braces=1024]="Braces",s[s.Parenthesis=2048]="Parenthesis",s[s.AngleBrackets=4096]="AngleBrackets",s[s.SquareBrackets=8192]="SquareBrackets",s[s.BracketsMask=15360]="BracketsMask",s[s.OptionalIfUndefined=16384]="OptionalIfUndefined",s[s.OptionalIfEmpty=32768]="OptionalIfEmpty",s[s.Optional=49152]="Optional",s[s.PreferNewLine=65536]="PreferNewLine",s[s.NoTrailingNewLine=131072]="NoTrailingNewLine",s[s.NoInterveningComments=262144]="NoInterveningComments",s[s.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",s[s.SingleElement=1048576]="SingleElement",s[s.SpaceAfterList=2097152]="SpaceAfterList",s[s.Modifiers=2359808]="Modifiers",s[s.HeritageClauses=512]="HeritageClauses",s[s.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",s[s.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",s[s.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",s[s.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",s[s.UnionTypeConstituents=516]="UnionTypeConstituents",s[s.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",s[s.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",s[s.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",s[s.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",s[s.ImportAttributes=526226]="ImportAttributes",s[s.ImportClauseEntries=526226]="ImportClauseEntries",s[s.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",s[s.CommaListElements=528]="CommaListElements",s[s.CallExpressionArguments=2576]="CallExpressionArguments",s[s.NewExpressionArguments=18960]="NewExpressionArguments",s[s.TemplateExpressionSpans=262144]="TemplateExpressionSpans",s[s.SingleLineBlockStatements=768]="SingleLineBlockStatements",s[s.MultiLineBlockStatements=129]="MultiLineBlockStatements",s[s.VariableDeclarationList=528]="VariableDeclarationList",s[s.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",s[s.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",s[s.ClassHeritageClauses=0]="ClassHeritageClauses",s[s.ClassMembers=129]="ClassMembers",s[s.InterfaceMembers=129]="InterfaceMembers",s[s.EnumMembers=145]="EnumMembers",s[s.CaseBlockClauses=129]="CaseBlockClauses",s[s.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",s[s.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",s[s.JsxElementAttributes=262656]="JsxElementAttributes",s[s.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",s[s.HeritageClauseTypes=528]="HeritageClauseTypes",s[s.SourceFileStatements=131073]="SourceFileStatements",s[s.Decorators=2146305]="Decorators",s[s.TypeArguments=53776]="TypeArguments",s[s.TypeParameters=53776]="TypeParameters",s[s.Parameters=2576]="Parameters",s[s.IndexSignatureParameters=8848]="IndexSignatureParameters",s[s.JSDocComment=33]="JSDocComment",s))(r1||{}),k_=(s=>(s[s.None=0]="None",s[s.TripleSlashXML=1]="TripleSlashXML",s[s.SingleLine=2]="SingleLine",s[s.MultiLine=4]="MultiLine",s[s.All=7]="All",s[s.Default=7]="Default",s))(k_||{}),n1={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},{name:"preserve",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}},i1=(s=>(s[s.ParseAll=0]="ParseAll",s[s.ParseNone=1]="ParseNone",s[s.ParseForTypeErrors=2]="ParseForTypeErrors",s[s.ParseForTypeInfo=3]="ParseForTypeInfo",s))(i1||{});function iy(s){let c=5381;for(let g=0;g(s[s.Created=0]="Created",s[s.Changed=1]="Changed",s[s.Deleted=2]="Deleted",s))(Eb||{}),i_=(s=>(s[s.High=2e3]="High",s[s.Medium=500]="Medium",s[s.Low=250]="Low",s))(i_||{}),xh=new Date(0);function Sb(s,c){return s.getModifiedTime(c)||xh}function pB(s){return{250:s.Low,500:s.Medium,2e3:s.High}}var FD={Low:32,Medium:64,High:256},ZD=pB(FD),e0=pB(FD);function LD(s){if(!s.getEnvironmentVariable)return;let c=h("TSC_WATCH_POLLINGINTERVAL",i_);ZD=_("TSC_WATCH_POLLINGCHUNKSIZE",FD)||ZD,e0=_("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",FD)||e0;function g(S,R){return s.getEnvironmentVariable(`${S}_${R.toUpperCase()}`)}function d(S){let R;return T("Low"),T("Medium"),T("High"),R;function T(O){let V=g(S,O);V&&((R||(R={}))[O]=Number(V))}}function h(S,R){let T=d(S);if(T)return O("Low"),O("Medium"),O("High"),!0;return!1;function O(V){R[V]=T[V]||R[V]}}function _(S,R){let T=d(S);return(c||T)&&pB(T?{...R,...T}:R)}}function $R(s,c,g,d,h){let _=g;for(let R=c.length;d&&R;S(),R--){let T=c[g];if(T){if(T.isClosed){c[g]=void 0;continue}}else continue;d--;let O=uE(T,Sb(s,T.fileName));if(T.isClosed){c[g]=void 0;continue}h?.(T,g,O),c[g]&&(_{Te.isClosed=!0,rf(c,Te)}}}function R(_e){let Ee=[];return Ee.pollingInterval=_e,Ee.pollIndex=0,Ee.pollScheduled=!1,Ee}function T(_e,Ee){Ee.pollIndex=V(Ee,Ee.pollingInterval,Ee.pollIndex,ZD[Ee.pollingInterval]),Ee.length?Ie(Ee.pollingInterval):(pe.assert(Ee.pollIndex===0),Ee.pollScheduled=!1)}function O(_e,Ee){V(g,250,0,g.length),T(_e,Ee),!Ee.pollScheduled&&g.length&&Ie(250)}function V(_e,Ee,Ne,Te){return $R(s,_e,Ne,Te,Ze);function Ze(Pe,Ke,et){et?(Pe.unchangedPolls=0,_e!==g&&(_e[Ke]=void 0,re(Pe))):Pe.unchangedPolls!==e0[Ee]?Pe.unchangedPolls++:_e===g?(Pe.unchangedPolls=1,_e[Ke]=void 0,ee(Pe,250)):Ee!==2e3&&(Pe.unchangedPolls++,_e[Ke]=void 0,ee(Pe,Ee===250?500:2e3))}}function M(_e){switch(_e){case 250:return d;case 500:return h;case 2e3:return _}}function ee(_e,Ee){M(Ee).push(_e),ge(Ee)}function re(_e){g.push(_e),ge(250)}function ge(_e){M(_e).pollScheduled||Ie(_e)}function Ie(_e){M(_e).pollScheduled=s.setTimeout(_e===250?O:T,_e,_e===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",M(_e))}}function Ch(s,c,g,d){let h=gl(),_=d?new Map:void 0,S=new Map,R=bd(c);return T;function T(V,M,ee,re){let ge=R(V);h.add(ge,M).length===1&&_&&_.set(ge,g(V)||xh);let Ie=Mo(ge)||".",_e=S.get(Ie)||O(Mo(V)||".",Ie,re);return _e.referenceCount++,{close:()=>{_e.referenceCount===1?(_e.close(),S.delete(Ie)):_e.referenceCount--,h.remove(ge,M)}}}function O(V,M,ee){let re=s(V,1,(ge,Ie)=>{if(!Xs(Ie))return;let _e=Xc(Ie,V),Ee=R(_e),Ne=_e&&h.get(Ee);if(Ne){let Te,Ze=1;if(_){let Pe=_.get(Ee);if(ge==="change"&&(Te=g(_e)||xh,Te.getTime()===Pe.getTime()))return;Te||(Te=g(_e)||xh),_.set(Ee,Te),Pe===xh?Ze=0:Te===xh&&(Ze=2)}for(let Pe of Ne)Pe(_e,Ze,Te)}},!1,500,ee);return re.referenceCount=0,S.set(M,re),re}}function sf(s){let c=[],g=0,d;return h;function h(R,T){let O={fileName:R,callback:T,mtime:Sb(s,R)};return c.push(O),S(),{close:()=>{O.isClosed=!0,rf(c,O)}}}function _(){d=void 0,g=$R(s,c,g,ZD[250]),S()}function S(){!c.length||d||(d=s.setTimeout(_,2e3,"pollQueue"))}}function EI(s,c,g,d,h){let S=bd(c)(g),R=s.get(S);return R?R.callbacks.push(d):s.set(S,{watcher:h((T,O,V)=>{var M;return(M=s.get(S))==null?void 0:M.callbacks.slice().forEach(ee=>ee(T,O,V))}),callbacks:[d]}),{close:()=>{let T=s.get(S);T&&(!Xl(T.callbacks,d)||T.callbacks.length||(s.delete(S),Ev(T)))}}}function uE(s,c){let g=s.mtime.getTime(),d=c.getTime();return g!==d?(s.mtime=c,s.callback(s.fileName,rv(g,d),c),!0):!1}function rv(s,c){return s===0?0:c===0?2:1}var Jp=["/node_modules/.","/.git","/.#"],fB=Dc;function _h(s){return fB(s)}function FC(s){fB=s}function t0({watchDirectory:s,useCaseSensitiveFileNames:c,getCurrentDirectory:g,getAccessibleSortedChildDirectories:d,fileSystemEntryExists:h,realpath:_,setTimeout:S,clearTimeout:R}){let T=new Map,O=gl(),V=new Map,M,ee=gd(!c),re=bd(c);return(Ye,Tt,at,Qe)=>at?ge(Ye,Qe,Tt):s(Ye,Tt,at,Qe);function ge(Ye,Tt,at,Qe){let Ct=re(Ye),mt=T.get(Ct);mt?mt.refCount++:(mt={watcher:s(Ye,Rt=>{var Lt;Ke(Rt,Tt)||(Tt?.synchronousWatchDirectory?((Lt=T.get(Ct))!=null&&Lt.targetWatcher||Ie(Ye,Ct,Rt),Pe(Ye,Ct,Tt)):_e(Ye,Ct,Rt,Tt))},!1,Tt),refCount:1,childWatches:E,targetWatcher:void 0,links:void 0},T.set(Ct,mt),Pe(Ye,Ct,Tt)),Qe&&(mt.links??(mt.links=new Set)).add(Qe);let yt=at&&{dirName:Ye,callback:at};return yt&&O.add(Ct,yt),{dirName:Ye,close:()=>{var Rt;let Lt=pe.checkDefined(T.get(Ct));yt&&O.remove(Ct,yt),Qe&&((Rt=Lt.links)==null||Rt.delete(Qe)),Lt.refCount--,!Lt.refCount&&(T.delete(Ct),Lt.links=void 0,Ev(Lt),Ze(Lt),Lt.childWatches.forEach(hv))}}}function Ie(Ye,Tt,at,Qe){var Ct,mt;let yt,Rt;Xs(at)?yt=at:Rt=at,O.forEach((Lt,je)=>{if(!(Rt&&Rt.get(je)===!0)&&(je===Tt||Ac(Tt,je)&&Tt[je.length]===cg))if(Rt)if(Qe){let Wt=Rt.get(je);Wt?Wt.push(...Qe):Rt.set(je,Qe.slice())}else Rt.set(je,!0);else Lt.forEach(({callback:Wt})=>Wt(yt))}),(mt=(Ct=T.get(Tt))==null?void 0:Ct.links)==null||mt.forEach(Lt=>{let je=Wt=>Ro(Lt,_p(Ye,Wt,re));Rt?Ie(Lt,re(Lt),Rt,Qe?.map(je)):Ie(Lt,re(Lt),je(yt))})}function _e(Ye,Tt,at,Qe){let Ct=T.get(Tt);if(Ct&&h(Ye,1)){Ee(Ye,Tt,at,Qe);return}Ie(Ye,Tt,at),Ze(Ct),Te(Ct)}function Ee(Ye,Tt,at,Qe){let Ct=V.get(Tt);Ct?Ct.fileNames.push(at):V.set(Tt,{dirName:Ye,options:Qe,fileNames:[at]}),M&&(R(M),M=void 0),M=S(Ne,1e3,"timerToUpdateChildWatches")}function Ne(){var Ye;M=void 0,_h(`sysLog:: onTimerToUpdateChildWatches:: ${V.size}`);let Tt=Zg(),at=new Map;for(;!M&&V.size;){let Ct=V.entries().next();pe.assert(!Ct.done);let{value:[mt,{dirName:yt,options:Rt,fileNames:Lt}]}=Ct;V.delete(mt);let je=Pe(yt,mt,Rt);(Ye=T.get(mt))!=null&&Ye.targetWatcher||Ie(yt,mt,at,je?void 0:Lt)}_h(`sysLog:: invokingWatchers:: Elapsed:: ${Zg()-Tt}ms:: ${V.size}`),O.forEach((Ct,mt)=>{let yt=at.get(mt);yt&&Ct.forEach(({callback:Rt,dirName:Lt})=>{Ki(yt)?yt.forEach(Rt):Rt(Lt)})});let Qe=Zg()-Tt;_h(`sysLog:: Elapsed:: ${Qe}ms:: onTimerToUpdateChildWatches:: ${V.size} ${M}`)}function Te(Ye){if(!Ye)return;let Tt=Ye.childWatches;Ye.childWatches=E;for(let at of Tt)at.close(),Te(T.get(re(at.dirName)))}function Ze(Ye){Ye?.targetWatcher&&(Ye.targetWatcher.close(),Ye.targetWatcher=void 0)}function Pe(Ye,Tt,at){let Qe=T.get(Tt);if(!Qe)return!1;let Ct=su(_(Ye)),mt,yt;return ee(Ct,Ye)===0?mt=ey(h(Ye,1)?Xt(d(Ye),je=>{let Wt=Xc(je,Ye);return!Ke(Wt,at)&&ee(Wt,su(_(Wt)))===0?Wt:void 0}):E,Qe.childWatches,(je,Wt)=>ee(je,Wt.dirName),Rt,hv,Lt):Qe.targetWatcher&&ee(Ct,Qe.targetWatcher.dirName)===0?(mt=!1,pe.assert(Qe.childWatches===E)):(Ze(Qe),Qe.targetWatcher=ge(Ct,at,void 0,Ye),Qe.childWatches.forEach(hv),mt=!0),Qe.childWatches=yt||E,mt;function Rt(je){let Wt=ge(je,at);Lt(Wt)}function Lt(je){(yt||(yt=[])).push(je)}}function Ke(Ye,Tt){return zt(Jp,at=>et(Ye,at))||WT(Ye,Tt,c,g)}function et(Ye,Tt){return Ye.includes(Tt)?!0:c?!1:re(Ye).includes(Tt)}}var s1=(s=>(s[s.File=0]="File",s[s.Directory=1]="Directory",s))(s1||{});function IB(s){return(c,g,d)=>s(g===1?"change":"rename","",d)}function bw(s,c,g){return(d,h,_)=>{d==="rename"?(_||(_=g(s)||xh),c(s,_!==xh?0:2,_)):c(s,1,_)}}function WT(s,c,g,d){return(c?.excludeDirectories||c?.excludeFiles)&&(U9e(s,c?.excludeFiles,g,d())||U9e(s,c?.excludeDirectories,g,d()))}function S0(s,c,g,d,h){return(_,S)=>{if(_==="rename"){let R=S?su(Ro(s,S)):s;(!S||!WT(R,g,d,h))&&c(R)}}}function ia({pollingWatchFileWorker:s,getModifiedTime:c,setTimeout:g,clearTimeout:d,fsWatchWorker:h,fileSystemEntryExists:_,useCaseSensitiveFileNames:S,getCurrentDirectory:R,fsSupportsRecursiveFsWatch:T,getAccessibleSortedChildDirectories:O,realpath:V,tscWatchFile:M,useNonPollingWatchers:ee,tscWatchDirectory:re,inodeWatching:ge,fsWatchWithTimestamp:Ie,sysLog:_e}){let Ee=new Map,Ne=new Map,Te=new Map,Ze,Pe,Ke,et,Ye=!1;return{watchFile:Tt,watchDirectory:yt};function Tt(it,kt,tr,ur){ur=Ct(ur,ee);let Gr=pe.checkDefined(ur.watchFile);switch(Gr){case 0:return je(it,kt,250,void 0);case 1:return je(it,kt,tr,void 0);case 2:return at()(it,kt,tr,void 0);case 3:return Qe()(it,kt,void 0,void 0);case 4:return Wt(it,0,bw(it,kt,c),!1,tr,d1e(ur));case 5:return Ke||(Ke=Ch(Wt,S,c,Ie)),Ke(it,kt,tr,d1e(ur));default:pe.assertNever(Gr)}}function at(){return Ze||(Ze=lc({getModifiedTime:c,setTimeout:g}))}function Qe(){return Pe||(Pe=sf({getModifiedTime:c,setTimeout:g}))}function Ct(it,kt){if(it&&it.watchFile!==void 0)return it;switch(M){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return mt(4,1,it);case"UseFsEventsWithFallbackDynamicPolling":return mt(4,2,it);case"UseFsEventsOnParentDirectory":kt=!0;default:return kt?mt(5,1,it):{watchFile:4}}}function mt(it,kt,tr){let ur=tr?.fallbackPolling;return{watchFile:it,fallbackPolling:ur===void 0?kt:ur}}function yt(it,kt,tr,ur){return T?Wt(it,1,S0(it,kt,ur,S,R),tr,500,d1e(ur)):(et||(et=t0({useCaseSensitiveFileNames:S,getCurrentDirectory:R,fileSystemEntryExists:_,getAccessibleSortedChildDirectories:O,watchDirectory:Rt,realpath:V,setTimeout:g,clearTimeout:d})),et(it,kt,tr,ur))}function Rt(it,kt,tr,ur){pe.assert(!tr);let Gr=Lt(ur),dt=pe.checkDefined(Gr.watchDirectory);switch(dt){case 1:return je(it,()=>kt(it),500,void 0);case 2:return at()(it,()=>kt(it),500,void 0);case 3:return Qe()(it,()=>kt(it),void 0,void 0);case 0:return Wt(it,1,S0(it,kt,ur,S,R),tr,500,d1e(Gr));default:pe.assertNever(dt)}}function Lt(it){if(it&&it.watchDirectory!==void 0)return it;switch(re){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let kt=it?.fallbackPolling;return{watchDirectory:0,fallbackPolling:kt!==void 0?kt:void 0}}}function je(it,kt,tr,ur){return EI(Ee,S,it,kt,Gr=>s(it,Gr,tr,ur))}function Wt(it,kt,tr,ur,Gr,dt){return EI(ur?Te:Ne,S,it,tr,pr=>_r(it,kt,pr,ur,Gr,dt))}function _r(it,kt,tr,ur,Gr,dt){let pr,ot;ge&&(pr=it.substring(it.lastIndexOf(cg)),ot=pr.slice(cg.length));let ir=_(it,kt)?Yt():jn();return{close:()=>{ir&&(ir.close(),ir=void 0)}};function qt(Zi){ir&&(_e(`sysLog:: ${it}:: Changing watcher to ${Zi===Yt?"Present":"Missing"}FileSystemEntryWatcher`),ir.close(),ir=Zi())}function Yt(){if(Ye)return _e(`sysLog:: ${it}:: Defaulting to watchFile`),Cn();try{let Zi=(kt===1||!Ie?h:Gt)(it,ur,ge?Tr:tr);return Zi.on("error",()=>{tr("rename",""),qt(jn)}),Zi}catch(Zi){return Ye||(Ye=Zi.code==="ENOSPC"),_e(`sysLog:: ${it}:: Changing to watchFile`),Cn()}}function Tr(Zi,Ns){let An;if(Ns&&di(Ns,"~")&&(An=Ns,Ns=Ns.slice(0,Ns.length-1)),Zi==="rename"&&(!Ns||Ns===ot||di(Ns,pr))){let si=c(it)||xh;An&&tr(Zi,An,si),tr(Zi,Ns,si),ge?qt(si===xh?jn:Yt):si===xh&&qt(jn)}else An&&tr(Zi,An),tr(Zi,Ns)}function Cn(){return Tt(it,IB(tr),Gr,dt)}function jn(){return Tt(it,(Zi,Ns,An)=>{Ns===0&&(An||(An=c(it)||xh),An!==xh&&(tr("rename","",An),qt(Yt)))},Gr,dt)}}function Gt(it,kt,tr){let ur=c(it)||xh;return h(it,kt,(Gr,dt,pr)=>{Gr==="change"&&(pr||(pr=c(it)||xh),pr.getTime()===ur.getTime())||(ur=pr||c(it)||xh,tr(Gr,dt,ur))})}}function n2(s){let c=s.writeFile;s.writeFile=(g,d,h)=>dbe(g,d,!!h,(_,S,R)=>c.call(s,_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_))}var Ed=(()=>{let s="\uFEFF";function c(){let d=/^native |^\([^)]+\)$|^(?:internal[\\/]|[\w\s]+(?:\.js)?$)/,h=Et("fs"),_=Et("path"),S=Et("os"),R;try{R=Et("crypto")}catch{R=void 0}let T,O="./profile.cpuprofile",V=process.platform==="darwin",M=process.platform==="linux"||V,ee={throwIfNoEntry:!1},re=S.platform(),ge=at(),Ie=h.realpathSync.native?process.platform==="win32"?kt:h.realpathSync.native:h.realpathSync,_e=__filename.endsWith("sys.js")?_.join(_.dirname(__dirname),"__fake__.js"):__filename,Ee=process.platform==="win32"||V,Ne=LA(()=>process.cwd()),{watchFile:Te,watchDirectory:Ze}=ia({pollingWatchFileWorker:Ct,getModifiedTime:ur,setTimeout,clearTimeout,fsWatchWorker:mt,useCaseSensitiveFileNames:ge,getCurrentDirectory:Ne,fileSystemEntryExists:Wt,fsSupportsRecursiveFsWatch:Ee,getAccessibleSortedChildDirectories:ot=>Lt(ot).directories,realpath:tr,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:M,fsWatchWithTimestamp:V,sysLog:_h}),Pe={args:process.argv.slice(2),newLine:S.EOL,useCaseSensitiveFileNames:ge,write(ot){process.stdout.write(ot)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:yt,writeFile:Rt,watchFile:Te,watchDirectory:Ze,preferNonRecursiveWatch:!Ee,resolvePath:ot=>_.resolve(ot),fileExists:_r,directoryExists:Gt,getAccessibleFileSystemEntries:Lt,createDirectory(ot){if(!Pe.directoryExists(ot))try{h.mkdirSync(ot)}catch(ir){if(ir.code!=="EEXIST")throw ir}},getExecutingFilePath(){return _e},getCurrentDirectory:Ne,getDirectories:it,getEnvironmentVariable(ot){return process.env[ot]||""},readDirectory:je,getModifiedTime:ur,setModifiedTime:Gr,deleteFile:dt,createHash:R?pr:iy,createSHA256Hash:R?pr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(ot){let ir=Ke(ot);return ir?.isFile()?ir.size:0},exit(ot){Tt(()=>process.exit(ot))},enableCPUProfiler:et,disableCPUProfiler:Tt,cpuProfilingEnabled:()=>!!T||k(process.execArgv,"--cpu-prof")||k(process.execArgv,"--prof"),realpath:tr,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||zt(process.execArgv,ot=>/^--(?:inspect|debug)(?:-brk)?(?:=\d+)?$/i.test(ot))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{Et("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H")},setBlocking:()=>{var ot;let ir=(ot=process.stdout)==null?void 0:ot._handle;ir&&ir.setBlocking&&ir.setBlocking(!0)},base64decode:ot=>Buffer.from(ot,"base64").toString("utf8"),base64encode:ot=>Buffer.from(ot).toString("base64"),require:(ot,ir)=>{try{let qt=SPt(ir,ot,Pe);return{module:Et(qt),modulePath:qt,error:void 0}}catch(qt){return{module:void 0,modulePath:void 0,error:qt}}}};return Pe;function Ke(ot){try{return h.statSync(ot,ee)}catch{return}}function et(ot,ir){if(T)return ir(),!1;let qt=Et("inspector");if(!qt||!qt.Session)return ir(),!1;let Yt=new qt.Session;return Yt.connect(),Yt.post("Profiler.enable",()=>{Yt.post("Profiler.start",()=>{T=Yt,O=ot,ir()})}),!0}function Ye(ot){let ir=0,qt=new Map,Yt=xp(_.dirname(_e)),Tr=`file://${Mf(Yt)===1?"":"/"}${Yt}`;for(let Cn of ot.nodes)if(Cn.callFrame.url){let jn=xp(Cn.callFrame.url);zh(Tr,jn,ge)?Cn.callFrame.url=Hf(Tr,jn,Tr,bd(ge),!0):d.test(jn)||(Cn.callFrame.url=(qt.has(jn)?qt:qt.set(jn,`external${ir}.js`)).get(jn),ir++)}return ot}function Tt(ot){if(T&&T!=="stopping"){let ir=T;return T.post("Profiler.stop",(qt,{profile:Yt})=>{var Tr;if(!qt){(Tr=Ke(O))!=null&&Tr.isDirectory()&&(O=_.join(O,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`));try{h.mkdirSync(_.dirname(O),{recursive:!0})}catch{}h.writeFileSync(O,JSON.stringify(Ye(Yt)))}T=void 0,ir.disconnect(),ot()}),T="stopping",!0}else return ot(),!1}function at(){return typeof process.versions.pnp<"u"?!0:re==="win32"||re==="win64"?!1:!_r(Qe(__filename))}function Qe(ot){return ot.replace(/\w/g,ir=>{let qt=ir.toUpperCase();return ir===qt?ir.toLowerCase():qt})}function Ct(ot,ir,qt){h.watchFile(ot,{persistent:!0,interval:qt},Tr);let Yt;return{close:()=>h.unwatchFile(ot,Tr)};function Tr(Cn,jn){let Zi=+jn.mtime==0||Yt===2;if(+Cn.mtime==0){if(Zi)return;Yt=2}else if(Zi)Yt=0;else{if(+Cn.mtime==+jn.mtime)return;Yt=1}ir(ot,Yt,Cn.mtime)}}function mt(ot,ir,qt){return h.watch(ot,Ee?{persistent:!0,recursive:!!ir}:{persistent:!0},qt)}function yt(ot,ir){let qt;try{qt=h.readFileSync(ot)}catch{return}let Yt=qt.length;if(Yt>=2&&qt[0]===254&&qt[1]===255){Yt&=-2;for(let Tr=0;Tr=2&&qt[0]===255&&qt[1]===254?qt.toString("utf16le",2):Yt>=3&&qt[0]===239&&qt[1]===187&&qt[2]===191?qt.toString("utf8",3):qt.toString("utf8")}function Rt(ot,ir,qt){qt&&(ir=s+ir);let Yt;try{Yt=h.openSync(ot,"w"),h.writeSync(Yt,ir,void 0,"utf8")}finally{Yt!==void 0&&h.closeSync(Yt)}}function Lt(ot){try{let ir=h.readdirSync(ot||".",{withFileTypes:!0}),qt=[],Yt=[];for(let Tr of ir){let Cn=typeof Tr=="string"?Tr:Tr.name;if(Cn==="."||Cn==="..")continue;let jn;if(typeof Tr=="string"||Tr.isSymbolicLink()){let Zi=Ro(ot,Cn);if(jn=Ke(Zi),!jn)continue}else jn=Tr;jn.isFile()?qt.push(Cn):jn.isDirectory()&&Yt.push(Cn)}return qt.sort(),Yt.sort(),{files:qt,directories:Yt}}catch{return Kbe}}function je(ot,ir,qt,Yt,Tr){return Xbe(ot,ir,qt,Yt,ge,process.cwd(),Tr,Lt,tr)}function Wt(ot,ir){let qt=Ke(ot);if(!qt)return!1;switch(ir){case 0:return qt.isFile();case 1:return qt.isDirectory();default:return!1}}function _r(ot){return Wt(ot,0)}function Gt(ot){return Wt(ot,1)}function it(ot){return Lt(ot).directories.slice()}function kt(ot){return ot.length<260?h.realpathSync.native(ot):h.realpathSync(ot)}function tr(ot){try{return Ie(ot)}catch{return ot}}function ur(ot){var ir;return(ir=Ke(ot))==null?void 0:ir.mtime}function Gr(ot,ir){try{h.utimesSync(ot,ir,ir)}catch{return}}function dt(ot){try{return h.unlinkSync(ot)}catch{return}}function pr(ot){let ir=R.createHash("sha256");return ir.update(ot),ir.digest("hex")}}let g;return Xm()&&(g=c()),g&&n2(g),g})();function SI(s){Ed=s}Ed&&Ed.getEnvironmentVariable&&(LD(Ed),pe.setAssertionLevel(/^development$/i.test(Ed.getEnvironmentVariable("NODE_ENV"))?1:0)),Ed&&Ed.debugMode&&(pe.isDebugging=!0);var cg="/",vb="\\",o1="://",q2=/\\/g;function r0(s){return s===47||s===92}function s_(s){return nh(s)<0}function Up(s){return nh(s)>0}function gE(s){let c=nh(s);return c>0&&c===s.length}function AE(s){return nh(s)!==0}function mp(s){return/^\.\.?(?:$|[\\/])/.test(s)}function jh(s){return!AE(s)&&!mp(s)}function v0(s){return dp(s).includes(".")}function cA(s,c){return s.length>c.length&&di(s,c)}function Iu(s,c){for(let g of c)if(cA(s,g))return!0;return!1}function Kp(s){return s.length>0&&r0(s.charCodeAt(s.length-1))}function IC(s){return s>=97&&s<=122||s>=65&&s<=90}function dE(s,c){let g=s.charCodeAt(c);if(g===58)return c+1;if(g===37&&s.charCodeAt(c+1)===51){let d=s.charCodeAt(c+2);if(d===97||d===65)return c+3}return-1}function nh(s){if(!s)return 0;let c=s.charCodeAt(0);if(c===47||c===92){if(s.charCodeAt(1)!==c)return 1;let d=s.indexOf(c===47?cg:vb,2);return d<0?s.length:d+1}if(IC(c)&&s.charCodeAt(1)===58){let d=s.charCodeAt(2);if(d===47||d===92)return 3;if(s.length===2)return 2}let g=s.indexOf(o1);if(g!==-1){let d=g+o1.length,h=s.indexOf(cg,d);if(h!==-1){let _=s.slice(0,g),S=s.slice(d,h);if(_==="file"&&(S===""||S==="localhost")&&IC(s.charCodeAt(h+1))){let R=dE(s,h+2);if(R!==-1){if(s.charCodeAt(R)===47)return~(R+1);if(R===s.length)return~R}}return~(h+1)}return~s.length}return 0}function Mf(s){let c=nh(s);return c<0?~c:c}function Mo(s){s=xp(s);let c=Mf(s);return c===s.length?s:(s=sy(s),s.slice(0,Math.max(c,s.lastIndexOf(cg))))}function dp(s,c,g){if(s=xp(s),Mf(s)===s.length)return"";s=sy(s);let h=s.slice(Math.max(Mf(s),s.lastIndexOf(cg)+1)),_=c!==void 0&&g!==void 0?pE(h,c,g):void 0;return _?h.slice(0,h.length-_.length):h}function fF(s,c,g){if(Ac(c,".")||(c="."+c),s.length>=c.length&&s.charCodeAt(s.length-c.length)===46){let d=s.slice(s.length-c.length);if(g(d,c))return d}}function IF(s,c,g){if(typeof c=="string")return fF(s,c,g)||"";for(let d of c){let h=fF(s,d,g);if(h)return h}return""}function pE(s,c,g){if(c)return IF(sy(s),c,g?Yp:YA);let d=dp(s),h=d.lastIndexOf(".");return h>=0?d.substring(h):""}function OT(s,c){let g=s.substring(0,c),d=s.substring(c).split(cg);return d.length&&!li(d)&&d.pop(),[g,...d]}function kp(s,c=""){return s=Ro(c,s),OT(s,Mf(s))}function Fm(s,c){return s.length===0?"":(s[0]&&Cp(s[0]))+s.slice(1,c).join(cg)}function xp(s){return s.includes("\\")?s.replace(q2,cg):s}function i2(s){if(!zt(s))return[];let c=[s[0]];for(let g=1;g1){if(c[c.length-1]!==".."){c.pop();continue}}else if(c[0])continue}c.push(d)}}return c}function Ro(s,...c){s&&(s=xp(s));for(let g of c)g&&(g=xp(g),!s||Mf(g)!==0?s=g:s=Cp(s)+g);return s}function fE(s,...c){return su(zt(c)?Ro(s,...c):xp(s))}function hB(s,c){return i2(kp(s,c))}function Xc(s,c){let g=Mf(s);g===0&&c?(s=Ro(c,s),g=Mf(s)):s=xp(s);let d=IE(s);if(d!==void 0)return d.length>g?sy(d):d;let h=s.length,_=s.substring(0,g),S,R=g,T=R,O=R,V=g!==0;for(;RT&&(S??(S=s.substring(0,T-1)),T=R);let ee=s.indexOf(cg,R+1);ee===-1&&(ee=h);let re=ee-T;if(re===1&&s.charCodeAt(R)===46)S??(S=s.substring(0,O));else if(re===2&&s.charCodeAt(R)===46&&s.charCodeAt(R+1)===46)if(!V)S!==void 0?S+=S.length===g?"..":"/..":O=R+2;else if(S===void 0)O-2>=0?S=s.substring(0,Math.max(g,s.lastIndexOf(cg,O-2))):S=s.substring(0,O);else{let ge=S.lastIndexOf(cg);ge!==-1?S=S.substring(0,Math.max(g,ge)):S=_,S.length===g&&(V=g!==0)}else S!==void 0?(S.length!==g&&(S+=cg),V=!0,S+=s.substring(T,ee)):(V=!0,O=ee);R=ee+1}return S??(h>g?sy(s):s)}function su(s){s=xp(s);let c=IE(s);return c!==void 0?c:(c=Xc(s,""),c&&Kp(s)?Cp(c):c)}function IE(s){if(!mB.test(s))return s;let c=s.replace(/\/\.\//g,"/");if(c.startsWith("./")&&(c=c.slice(2)),c!==s&&(s=c,!mB.test(s)))return s}function wL(s){return s.length===0?"":s.slice(1).join(cg)}function eN(s,c){return wL(hB(s,c))}function Pu(s,c,g){let d=Up(s)?su(s):Xc(s,c);return g(d)}function sy(s){return Kp(s)?s.substr(0,s.length-1):s}function Cp(s){return Kp(s)?s:s+cg}function Im(s){return!AE(s)&&!mp(s)?"./"+s:s}function $2(s,c,g,d){let h=g!==void 0&&d!==void 0?pE(s,g,d):pE(s);return h?s.slice(0,s.length-h.length)+(Ac(c,".")?c:"."+c):s}function o_(s,c){let g=G9e(s);return g?s.slice(0,s.length-g.length)+(Ac(c,".")?c:"."+c):$2(s,c)}var mB=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function PT(s,c,g){if(s===c)return 0;if(s===void 0)return-1;if(c===void 0)return 1;let d=s.substring(0,Mf(s)),h=c.substring(0,Mf(c)),_=Fs(d,h);if(_!==0)return _;let S=s.substring(d.length),R=c.substring(h.length);if(!mB.test(S)&&!mB.test(R))return g(S,R);let T=i2(kp(s)),O=i2(kp(c)),V=Math.min(T.length,O.length);for(let M=1;M0==Mf(c)>0,"Paths must either both be absolute or both be relative");let _=Bb(s,c,(typeof g=="boolean"?g:!1)?Yp:YA,typeof g=="function"?g:Zl);return Fm(_)}function s2(s,c,g){return Up(s)?Hf(c,s,c,g,!1):s}function a1(s,c,g){return Im(_p(Mo(s),c,g))}function Hf(s,c,g,d,h){let _=Bb(fE(g,s),fE(g,c),YA,d),S=_[0];if(h&&Up(S)){let R=S.charAt(0)===cg?"file://":"file:///";_[0]=R+S}return Fm(_)}function hE(s,c){for(;;){let g=c(s);if(g!==void 0)return g;let d=Mo(s);if(d===s)return;s=d}}function Od(s){return di(s,"/node_modules")}function j(s,c,g,d,h,_,S){return{code:s,category:c,key:g,message:d,reportsUnnecessary:h,elidedInCompatabilityPyramid:_,reportsDeprecated:S}}var Z={Unterminated_string_literal:j(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:j(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:j(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:j(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:j(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:j(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:j(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:j(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:j(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:j(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:j(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:j(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:j(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:j(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:j(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:j(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:j(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:j(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:j(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:j(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:j(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_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:j(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:j(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:j(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:j(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:j(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:j(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:j(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:j(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:j(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:j(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:j(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:j(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:j(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:j(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:j(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:j(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:j(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:j(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:j(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:j(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:j(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:j(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:j(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:j(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:j(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:j(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:j(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:j(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:j(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:j(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:j(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:j(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:j(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:j(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:j(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:j(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:j(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:j(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:j(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:j(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:j(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:j(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:j(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:j(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:j(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:j(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:j(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:j(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:j(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:j(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:j(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:j(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:j(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:j(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:j(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:j(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."),_0_declarations_must_be_initialized:j(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:j(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:j(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:j(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:j(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:j(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:j(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:j(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:j(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:j(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:j(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:j(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:j(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:j(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:j(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:j(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:j(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:j(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:j(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:j(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:j(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:j(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:j(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:j(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:j(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:j(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:j(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:j(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:j(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:j(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:j(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:j(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:j(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_ES5:j(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:j(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:j(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:j(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:j(1286,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_1286","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:j(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:j(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."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:j(1293,1,"ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ECMAScript module syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled:j(1294,1,"This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled_1294","This syntax is not allowed when 'erasableSyntaxOnly' is enabled."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript:j(1295,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjus_1295","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'. Adjust the 'type' field in the nearest 'package.json' to make this file an ECMAScript module, or adjust your 'verbatimModuleSyntax', 'module', and 'moduleResolution' settings in TypeScript."),with_statements_are_not_allowed_in_an_async_function_block:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_node18_node20_or_nodenext:j(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', 'node18', 'node20', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve:j(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'node18', 'node20', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_node18_node20_or_nodenext:j(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', 'node18', 'node20', or 'nodenext'."),A_label_is_not_allowed_here:j(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:j(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:j(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:j(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:j(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:j(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:j(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:j(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:j(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:j(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:j(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:j(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:j(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:j(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),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:j(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:j(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:j(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_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(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', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:j(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:j(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:j(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:j(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:j(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:j(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:j(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:j(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:j(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:j(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:j(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:j(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:j(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:j(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:j(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:j(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:j(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:j(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:j(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:j(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:j(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:j(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:j(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:j(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:j(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:j(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_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(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', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:j(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:j(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:j(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:j(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:j(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:j(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:j(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:j(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:j(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:j(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:j(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:j(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:j(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_set_of_attributes_as_arguments:j(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes 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:j(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_should_be_either_require_or_import:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:j(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:j(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:j(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:j(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:j(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:j(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:j(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:j(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:j(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:j(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:j(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:j(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:j(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:j(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:j(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:j(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:j(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:j(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:j(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:j(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:j(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:j(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:j(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:j(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:j(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:j(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:j(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:j(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:j(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:j(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:j(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:j(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:j(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:j(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:j(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:j(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:j(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:j(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:j(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:j(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:j(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:j(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:j(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:j(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:j(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:j(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:j(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:j(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:j(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:j(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:j(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:j(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:j(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:j(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:j(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),using_declarations_are_not_allowed_in_ambient_contexts:j(1545,1,"using_declarations_are_not_allowed_in_ambient_contexts_1545","'using' declarations are not allowed in ambient contexts."),await_using_declarations_are_not_allowed_in_ambient_contexts:j(1546,1,"await_using_declarations_are_not_allowed_in_ambient_contexts_1546","'await using' declarations are not allowed in ambient contexts."),The_types_of_0_are_incompatible_between_these_types:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:j(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:j(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(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:j(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:j(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:j(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:j(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:j(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:j(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:j(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:j(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:j(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:j(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:j(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:j(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:j(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:j(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:j(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:j(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:j(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:j(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:j(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_undefined_void_nor_any_must_return_a_value:j(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:j(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:j(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:j(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_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:j(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),Overload_signatures_must_all_be_exported_or_non_exported:j(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:j(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:j(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:j(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:j(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:j(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:j(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:j(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:j(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:j(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:j(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:j(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:j(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:j(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:j(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:j(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:j(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:j(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:j(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:j(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:j(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:j(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:j(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:j(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:j(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:j(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:j(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:j(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:j(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:j(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_ES5_Consider_using_a_standard_function_expression:j(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in 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:j(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:j(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:j(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:j(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:j(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:j(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:j(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_ES5_Consider_using_a_standard_function_or_method:j(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:j(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:j(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:j(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:j(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:j(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:j(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:j(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:j(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:j(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:j(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:j(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:j(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:j(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),React_components_cannot_include_JSX_namespace_names:j(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:j(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."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:j(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:j(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:j(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:j(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}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:j(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:j(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:j(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 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:j(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:j(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:j(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:j(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:j(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:j(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_and_above_with_module_0:j(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 and above with module {0}."),Cannot_find_lib_definition_for_0:j(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:j(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:j(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:j(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:j(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:j(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:j(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:j(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:j(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:j(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:j(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:j(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:j(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:j(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_or_class_static_initialization_blocks:j(2815,1,"arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks_2815","'arguments' cannot be referenced in property initializers or class static initialization blocks."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:j(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:j(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:j(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:j(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:j(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_node18_node20_nodenext_or_preserve:j(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:j(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."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:j(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:j(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:j(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_compile_to_CommonJS_require_calls:j(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:j(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:j(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:j(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_It_can_only_extend_other_named_object_types:j(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:j(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:j(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:j(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:j(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:j(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?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:j(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:j(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:j(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:j(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_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:j(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements 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_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:j(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:j(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:j(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:j(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:j(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:j(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:j(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:j(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:j(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:j(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:j(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:j(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:j(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:j(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:j(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:j(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:j(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:j(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:j(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:j(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:j(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:j(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert:j(2880,1,"Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert_2880","Import assertions have been replaced by import attributes. Use 'with' instead of 'assert'."),This_expression_is_never_nullish:j(2881,1,"This_expression_is_never_nullish_2881","This expression is never nullish."),Import_declaration_0_is_using_private_name_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(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:j(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_anonymous_class_type_may_not_be_private_or_protected:j(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type 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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:j(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:j(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic:j(4127,1,"This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic_4127","This member cannot have an 'override' modifier because its name is dynamic."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:j(4128,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic_4128","This member cannot have a JSDoc comment with an '@override' tag because its name is dynamic."),The_current_host_does_not_support_the_0_option:j(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:j(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:j(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:j(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:j(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:j(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:j(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:j(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:j(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:j(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_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_cannot_be_specified_when_module_is_set_to_none_system_or_umd:j(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:j(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:j(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:j(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:j(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:j(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:j(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:j(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:j(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:j(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:j(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:j(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:j(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_preserve_or_to_es2015_or_later:j(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:j(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:j(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:j(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:j(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:j(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:j(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:j(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:j(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:j(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:j(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:j(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."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:j(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:j(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:j(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:j(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:j(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:j(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:j(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:j(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:j(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:j(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:j(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:j(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:j(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:j(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:j(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:j(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:j(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:j(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:j(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:j(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:j(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:j(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:j(6024,3,"options_6024","options"),file:j(6025,3,"file_6025","file"),Examples_Colon_0:j(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:j(6027,3,"Options_Colon_6027","Options:"),Version_0:j(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:j(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:j(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:j(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:j(6034,3,"KIND_6034","KIND"),FILE:j(6035,3,"FILE_6035","FILE"),VERSION:j(6036,3,"VERSION_6036","VERSION"),LOCATION:j(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:j(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:j(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:j(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:j(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:j(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:j(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:j(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:j(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:j(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:j(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:j(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:j(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:j(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:j(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:j(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:j(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:j(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:j(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:j(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:j(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:j(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:j(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:j(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:j(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:j(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:j(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:j(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:j(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:j(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:j(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:j(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:j(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:j(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:j(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:j(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:j(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:j(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:j(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:j(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:j(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:j(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:j(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:j(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:j(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:j(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:j(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:j(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:j(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:j(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:j(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:j(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:j(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:j(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:j(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:j(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:j(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:j(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:j(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:j(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:j(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:j(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:j(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:j(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:j(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:j(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:j(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:j(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:j(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:j(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:j(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:j(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:j(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:j(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:j(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:j(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:j(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:j(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:j(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:j(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:j(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:j(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:j(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:j(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:j(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:j(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:j(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:j(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:j(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:j(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:j(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:j(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:j(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:j(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:j(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:j(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:j(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:j(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:j(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:j(6244,3,"Modules_6244","Modules"),File_Management:j(6245,3,"File_Management_6245","File Management"),Emit:j(6246,3,"Emit_6246","Emit"),JavaScript_Support:j(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:j(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:j(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:j(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:j(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:j(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:j(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:j(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:j(6255,3,"Projects_6255","Projects"),Output_Formatting:j(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:j(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:j(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_0:j(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:j(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:j(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:j(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:j(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:j(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."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:j(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:j(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:j(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:j(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:j(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:j(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:j(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),File_Layout:j(6284,3,"File_Layout_6284","File Layout"),Environment_Settings:j(6285,3,"Environment_Settings_6285","Environment Settings"),See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule:j(6286,3,"See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule_6286","See also https://aka.ms/tsconfig/module"),For_nodejs_Colon:j(6287,3,"For_nodejs_Colon_6287","For nodejs:"),and_npm_install_D_types_Slashnode:j(6290,3,"and_npm_install_D_types_Slashnode_6290","and npm install -D @types/node"),Other_Outputs:j(6291,3,"Other_Outputs_6291","Other Outputs"),Stricter_Typechecking_Options:j(6292,3,"Stricter_Typechecking_Options_6292","Stricter Typechecking Options"),Style_Options:j(6293,3,"Style_Options_6293","Style Options"),Recommended_Options:j(6294,3,"Recommended_Options_6294","Recommended Options"),Enable_project_compilation:j(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:j(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:j(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:j(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:j(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."),Referenced_project_0_may_not_disable_emit:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:j(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:j(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:j(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:j(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}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:j(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:j(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:j(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:j(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:j(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:j(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:j(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:j(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:j(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:j(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:j(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:j(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:j(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:j(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),Skip_building_downstream_projects_on_error_in_upstream_project:j(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:j(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:j(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:j(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:j(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:j(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:j(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:j(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:j(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:j(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:j(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."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:j(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:j(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript:j(6721,3,"Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript_6721","Do not allow runtime constructs that are not part of ECMAScript."),Default_catch_clause_variables_as_unknown_instead_of_any:j(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:j(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."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:j(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:j(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:j(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),Enable_lib_replacement:j(6808,3,"Enable_lib_replacement_6808","Enable lib replacement."),one_of_Colon:j(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:j(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:j(6902,3,"type_Colon_6902","type:"),default_Colon:j(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:j(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:j(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:j(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:j(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:j(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:j(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:j(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:j(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:j(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:j(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:j(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:j(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:j(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:j(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:j(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:j(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:j(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:j(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:j(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:j(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:j(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:j(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:j(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:j(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:j(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:j(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:j(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:j(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:j(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:j(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_Consider_supplying_a_return_type_annotation:j(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:j(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:j(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:j(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:j(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:j(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:j(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:j(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:j(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:j(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."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:j(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:j(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:j(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:j(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:j(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:j(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:j(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:j(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:j(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:j(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:j(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:j(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:j(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:j(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:j(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:j(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:j(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:j(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:j(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:j(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:j(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:j(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:j(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:j(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:j(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:j(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:j(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:j(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:j(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:j(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:j(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:j(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}'?"),Unicode_escape_sequence_cannot_appear_here:j(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),JSDoc_typedef_may_be_converted_to_TypeScript_type:j(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:j(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:j(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:j(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:j(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:j(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:j(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:j(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:j(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:j(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:j(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:j(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:j(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:j(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:j(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:j(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:j(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:j(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:j(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:j(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:j(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:j(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:j(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:j(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:j(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:j(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:j(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:j(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:j(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:j(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:j(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:j(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:j(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:j(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:j(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:j(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:j(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:j(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:j(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:j(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:j(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:j(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:j(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:j(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:j(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:j(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:j(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:j(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:j(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:j(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:j(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:j(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:j(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:j(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:j(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:j(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:j(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:j(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:j(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:j(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:j(95005,3,"Extract_function_95005","Extract function"),Extract_constant:j(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:j(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:j(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:j(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:j(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:j(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:j(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:j(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:j(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:j(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:j(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:j(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:j(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:j(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:j(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:j(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:j(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:j(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:j(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:j(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:j(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:j(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:j(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:j(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:j(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:j(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:j(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:j(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:j(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:j(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:j(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:j(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:j(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:j(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:j(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:j(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:j(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:j(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:j(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:j(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:j(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:j(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:j(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:j(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:j(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:j(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:j(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:j(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:j(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:j(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:j(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:j(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:j(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:j(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:j(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:j(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:j(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:j(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:j(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:j(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:j(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:j(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:j(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:j(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:j(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:j(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:j(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:j(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:j(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:j(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:j(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:j(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:j(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:j(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:j(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:j(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:j(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:j(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:j(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:j(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:j(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:j(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:j(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:j(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:j(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:j(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:j(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:j(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:j(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:j(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:j(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:j(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:j(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:j(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:j(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:j(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:j(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:j(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:j(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:j(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:j(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:j(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:j(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:j(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:j(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:j(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:j(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:j(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:j(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:j(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:j(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:j(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:j(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:j(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:j(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:j(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:j(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:j(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:j(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:j(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:j(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:j(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:j(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:j(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:j(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:j(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:j(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:j(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:j(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:j(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:j(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:j(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:j(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:j(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:j(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:j(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:j(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:j(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:j(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:j(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:j(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:j(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:j(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:j(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:j(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:j(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:j(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:j(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:j(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:j(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:j(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:j(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:j(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:j(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:j(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:j(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:j(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:j(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:j(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:j(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:j(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:j(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:j(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:j(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:j(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:j(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:j(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:j(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:j(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:j(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:j(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:j(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:j(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:j(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:j(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:j(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:j(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:j(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:j(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:j(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:j(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:j(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:j(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:j(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:j(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:j(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:j(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:j(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:j(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:j(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:j(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:j(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:j(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:j(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:j(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:j(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:j(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:j(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'."),Default_imports_are_not_allowed_in_a_deferred_import:j(18058,1,"Default_imports_are_not_allowed_in_a_deferred_import_18058","Default imports are not allowed in a deferred import."),Named_imports_are_not_allowed_in_a_deferred_import:j(18059,1,"Named_imports_are_not_allowed_in_a_deferred_import_18059","Named imports are not allowed in a deferred import."),Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve:j(18060,1,"Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve_18060","Deferred imports are only supported when the '--module' flag is set to 'esnext' or 'preserve'."),_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer:j(18061,1,"_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer_18061","'{0}' is not a valid meta-property for keyword 'import'. Did you mean 'meta' or 'defer'?")};function md(s){return s>=80}function _B(s){return s===32||md(s)}var iv={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,defer:166,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},ky=new Map(Object.entries(iv)),wb=new Map(Object.entries({...iv,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),VD=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),yB=new Map([[1,Dd.RegularExpressionFlagsHasIndices],[16,Dd.RegularExpressionFlagsDotAll],[32,Dd.RegularExpressionFlagsUnicode],[64,Dd.RegularExpressionFlagsUnicodeSets],[128,Dd.RegularExpressionFlagsSticky]]),Tb=[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],TL=[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],hF=[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,2160,2183,2185,2190,2208,2249,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,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,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,5905,5919,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,6988,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,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,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,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,43881,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,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,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,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,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,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,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,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,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,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,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],x=[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,2160,2183,2185,2190,2200,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,2901,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,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,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,3790,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,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,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,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,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,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,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,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,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,43881,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,65381,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,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,70753,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,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,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,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,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,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,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,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,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,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],L=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,te=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,Re=/@(?:see|link)/i;function Ve(s,c){if(s=2?Ve(s,hF):Ve(s,Tb)}function dr(s,c){return c>=2?Ve(s,x):Ve(s,TL)}function Ur(s){let c=[];return s.forEach((g,d)=>{c[g]=d}),c}var mi=Ur(wb);function Vi(s){return mi[s]}function Ta(s){return wb.get(s)}var El=Ur(VD);function Ho(s){return El[s]}function Pg(s){return VD.get(s)}function lA(s){let c=[],g=0,d=0;for(;g127&&ml(h)&&(c.push(d),d=g);break}}return c.push(d),c}function ih(s,c,g,d){return s.getPositionOfLineAndCharacter?s.getPositionOfLineAndCharacter(c,g,d):xn(rn(s),c,g,s.text,d)}function xn(s,c,g,d,h){(c<0||c>=s.length)&&(h?c=c<0?0:c>=s.length?s.length-1:c:pe.fail(`Bad line number. Line: ${c}, lineStarts.length: ${s.length} , line map is correct? ${d!==void 0?Sc(s,lA(d)):"unknown"}`));let _=s[c]+g;return h?_>s[c+1]?s[c+1]:typeof d=="string"&&_>d.length?d.length:_:(c=8192&&s<=8203||s===8239||s===8287||s===12288||s===65279}function ml(s){return s===10||s===13||s===8232||s===8233}function wl(s){return s>=48&&s<=57}function rI(s){return wl(s)||s>=65&&s<=70||s>=97&&s<=102}function eS(s){return s>=65&&s<=90||s>=97&&s<=122}function vx(s){return eS(s)||wl(s)||s===95}function tS(s){return s>=48&&s<=55}function sv(s,c){let g=s.charCodeAt(c);switch(g){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 c===0;default:return g>127}}function Yu(s,c,g,d,h){if(kB(c))return c;let _=!1;for(;;){let S=s.charCodeAt(c);switch(S){case 13:s.charCodeAt(c+1)===10&&c++;case 10:if(c++,g)return c;_=!!h;continue;case 9:case 11:case 12:case 32:c++;continue;case 47:if(d)break;if(s.charCodeAt(c+1)===47){for(c+=2;c127&&dc(S)){c++;continue}break}return c}}var s3=7;function bB(s,c){if(pe.assert(c>=0),c===0||ml(s.charCodeAt(c-1))){let g=s.charCodeAt(c);if(c+s3=0&&g127&&dc(ge)){M&&ml(ge)&&(V=!0),g++;continue}break e}}return M&&(re=h(R,T,O,V,_,re)),re}function WD(s,c,g,d){return MT(!1,s,c,!1,g,d)}function CF(s,c,g,d){return MT(!1,s,c,!0,g,d)}function RL(s,c,g,d,h){return MT(!0,s,c,!1,g,d,h)}function hf(s,c,g,d,h){return MT(!0,s,c,!0,g,d,h)}function OD(s,c,g,d,h,_=[]){return _.push({kind:g,pos:s,end:c,hasTrailingNewLine:d}),_}function mE(s,c){return RL(s,c,OD,void 0,void 0)}function o2(s,c){return hf(s,c,OD,void 0,void 0)}function EB(s){let c=mF.exec(s);if(c)return c[0]}function Sd(s,c){return eS(s)||s===36||s===95||s>127&&It(s,c)}function c1(s,c,g){return vx(s)||s===36||(g===1?s===45||s===58:!1)||s>127&&dr(s,c)}function qh(s,c,g){let d=Ku(s,0);if(!Sd(d,c))return!1;for(let h=oy(d);hV,getStartPos:()=>V,getTokenEnd:()=>T,getTextPos:()=>T,getToken:()=>ee,getTokenStart:()=>M,getTokenPos:()=>M,getTokenText:()=>R.substring(M,T),getTokenValue:()=>re,hasUnicodeEscape:()=>(ge&1024)!==0,hasExtendedUnicodeEscape:()=>(ge&8)!==0,hasPrecedingLineBreak:()=>(ge&1)!==0,hasPrecedingJSDocComment:()=>(ge&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(ge&32768)!==0,isIdentifier:()=>ee===80||ee>118,isReservedWord:()=>ee>=83&&ee<=118,isUnterminated:()=>(ge&4)!==0,getCommentDirectives:()=>Ie,getNumericLiteralFlags:()=>ge&25584,getTokenFlags:()=>ge,reScanGreaterToken:qt,reScanAsteriskEqualsToken:Yt,reScanSlashToken:Tr,reScanTemplateToken:An,reScanTemplateHeadOrNoSubstitutionTemplate:si,scanJsxIdentifier:Fl,scanJsxAttributeValue:ba,reScanJsxAttributeValue:Oo,reScanJsxToken:ks,reScanLessThanToken:Ic,reScanHashToken:ou,reScanQuestionToken:Zn,reScanInvalidIdentifier:ot,scanJsxToken:ya,scanJsDocToken:yr,scanJSDocCommentTextToken:hc,scan:dt,getText:Pa,clearCommentDirectives:$c,setText:Qu,setScriptTarget:Cs,setLanguageVariant:Tu,setScriptKind:Wr,setJSDocParsingMode:Wn,setOnError:Rg,resetTokenState:pt,setTextPos:pt,setSkipJsDocLeadingAsterisks:on,tryScan:pa,lookAhead:co,scanRange:Pi};return pe.isDebugging&&Object.defineProperty(Te,"__debugShowCurrentPositionInText",{get:()=>{let st=Te.getText();return st.slice(0,Te.getTokenFullStart())+"\u2551"+st.slice(Te.getTokenFullStart())}}),Te;function Ze(st){return Ku(R,st)}function Pe(st){return st>=0&&st=0&&st=65&&Sn<=70)Sn+=32;else if(!(Sn>=48&&Sn<=57||Sn>=97&&Sn<=102))break;Kr.push(Sn),T++,hr=!1}return Kr.length=O){Zr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}let Dn=Ke(T);if(Dn===nr){Zr+=R.substring(Kr,T),T++;break}if(Dn===92&&!st){Zr+=R.substring(Kr,T),Zr+=Wt(3),Kr=T;continue}if((Dn===10||Dn===13)&&!st){Zr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}T++}return Zr}function je(st){let nr=Ke(T)===96;T++;let Zr=T,Kr="",Dn;for(;;){if(T>=O){Kr+=R.substring(Zr,T),ge|=4,Ye(Z.Unterminated_template_literal),Dn=nr?15:18;break}let hr=Ke(T);if(hr===96){Kr+=R.substring(Zr,T),T++,Dn=nr?15:18;break}if(hr===36&&T+1=O)return Ye(Z.Unexpected_end_of_text),"";let Zr=Ke(T);switch(T++,Zr){case 48:if(T>=O||!wl(Ke(T)))return"\0";case 49:case 50:case 51:T=55296&&Kr<=56319&&T+6=56320&&Ni<=57343)return T=Sn,Dn+String.fromCharCode(Ni)}return Dn;case 120:for(;T1114111&&(st&&Ye(Z.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Zr,T-Zr),hr=!0),T>=O?(st&&Ye(Z.Unexpected_end_of_text),hr=!0):Ke(T)===125?T++:(st&&Ye(Z.Unterminated_Unicode_escape_sequence),hr=!0),hr?(ge|=2048,R.substring(nr,T)):(ge|=8,tN(Dn))}function Gt(){if(T+5=0&&c1(Zr,s)){st+=_r(!0),nr=T;continue}if(Zr=Gt(),!(Zr>=0&&c1(Zr,s)))break;ge|=1024,st+=R.substring(nr,T),st+=tN(Zr),T+=6,nr=T}else break}return st+=R.substring(nr,T),st}function tr(){let st=re.length;if(st>=2&&st<=12){let nr=re.charCodeAt(0);if(nr>=97&&nr<=122){let Zr=ky.get(re);if(Zr!==void 0)return ee=Zr}}return ee=80}function ur(st){let nr="",Zr=!1,Kr=!1;for(;;){let Dn=Ke(T);if(Dn===95){ge|=512,Zr?(Zr=!1,Kr=!0):Ye(Kr?Z.Multiple_consecutive_numeric_separators_are_not_permitted:Z.Numeric_separators_are_not_allowed_here,T,1),T++;continue}if(Zr=!0,!wl(Dn)||Dn-48>=st)break;nr+=R[T],T++,Kr=!1}return Ke(T-1)===95&&Ye(Z.Numeric_separators_are_not_allowed_here,T-1,1),nr}function Gr(){return Ke(T)===110?(re+="n",ge&384&&(re=hz(re)+"n"),T++,10):(re=""+(ge&128?parseInt(re.slice(2),2):ge&256?parseInt(re.slice(2),8):+re),9)}function dt(){for(V=T,ge=0;;){if(M=T,T>=O)return ee=1;let st=Ze(T);if(T===0&&st===35&&o3(R,T)){if(T=fY(R,T),c)continue;return ee=6}switch(st){case 10:case 13:if(ge|=1,c){T++;continue}else return st===13&&T+1=0&&Sd(nr,s))return re=_r(!0)+kt(),ee=tr();let Zr=Gt();return Zr>=0&&Sd(Zr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Zr)+kt(),ee=tr()):(Ye(Z.Invalid_character),T++,ee=0);case 35:if(T!==0&&R[T+1]==="!")return Ye(Z.can_only_be_used_at_the_start_of_a_file,T,2),T++,ee=0;let Kr=Ze(T+1);if(Kr===92){T++;let Sn=it();if(Sn>=0&&Sd(Sn,s))return re="#"+_r(!0)+kt(),ee=81;let Ni=Gt();if(Ni>=0&&Sd(Ni,s))return T+=6,ge|=1024,re="#"+String.fromCharCode(Ni)+kt(),ee=81;T--}return Sd(Kr,s)?(T++,ir(Kr,s)):(re="#",Ye(Z.Invalid_character,T++,oy(st))),ee=81;case 65533:return Ye(Z.File_appears_to_be_binary,0,0),T=O,ee=8;default:let Dn=ir(st,s);if(Dn)return ee=Dn;if(hu(st)){T+=oy(st);continue}else if(ml(st)){ge|=1,T+=oy(st);continue}let hr=oy(st);return Ye(Z.Invalid_character,T,hr),T+=hr,ee=0}}}function pr(){switch(Ne){case 0:return!0;case 1:return!1}return Ee!==3&&Ee!==4?!0:Ne===3?!1:Re.test(R.slice(V,T))}function ot(){pe.assert(ee===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),T=M=V,ge=0;let st=Ze(T),nr=ir(st,99);return nr?ee=nr:(T+=oy(st),ee)}function ir(st,nr){let Zr=st;if(Sd(Zr,nr)){for(T+=oy(Zr);T=O)return ee=1;let nr=Ke(T);if(nr===60)return Ke(T+1)===47?(T+=2,ee=31):(T++,ee=30);if(nr===123)return T++,ee=19;let Zr=0;for(;T0)break;dc(nr)||(Zr=T)}T++}return re=R.substring(V,T),Zr===-1?13:12}function Fl(){if(md(ee)){for(;T=O)return ee=1;for(let nr=Ke(T);T=0&&hu(Ke(T-1))&&!(T+1=O)return ee=1;let st=Ze(T);switch(T+=oy(st),st){case 9:case 11:case 12:case 32:for(;T=0&&Sd(nr,s))return re=_r(!0)+kt(),ee=tr();let Zr=Gt();return Zr>=0&&Sd(Zr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Zr)+kt(),ee=tr()):(T++,ee=0)}if(Sd(st,s)){let nr=st;for(;T=0),T=st,V=st,M=st,ee=0,re=void 0,ge=0}function on(st){_e+=st?1:-1}}function Ku(s,c){return s.codePointAt(c)}function oy(s){return s>=65536?2:s===-1?0:1}function IY(s){if(pe.assert(0<=s&&s<=1114111),s<=65535)return String.fromCharCode(s);let c=Math.floor((s-65536)/1024)+55296,g=(s-65536)%1024+56320;return String.fromCharCode(c,g)}var hY=String.fromCodePoint?s=>String.fromCodePoint(s):IY;function tN(s){return hY(s)}var mY=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),rt=new Set(["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","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","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"]),Jt=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),kr={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};kr.Script_Extensions=kr.Script;function Xr(s){return mp(s)||Up(s)}function ui(s){return ol(s,oz,MAe)}var Is=new Map([[99,"lib.esnext.full.d.ts"],[11,"lib.es2024.full.d.ts"],[10,"lib.es2023.full.d.ts"],[9,"lib.es2022.full.d.ts"],[8,"lib.es2021.full.d.ts"],[7,"lib.es2020.full.d.ts"],[6,"lib.es2019.full.d.ts"],[5,"lib.es2018.full.d.ts"],[4,"lib.es2017.full.d.ts"],[3,"lib.es2016.full.d.ts"],[2,"lib.es6.d.ts"]]);function Hs(s){let c=Hg(s);switch(c){case 99:case 11:case 10:case 9:case 8:case 7:case 6:case 5:case 4:case 3:case 2:return Is.get(c);default:return"lib.d.ts"}}function Rs(s){return s.start+s.length}function ja(s){return s.length===0}function ho(s,c){return c>=s.start&&c=s.pos&&c<=s.end}function kd(s,c){return c.start>=s.start&&Rs(c)<=Rs(s)}function rd(s,c){return c.pos>=s.start&&c.end<=Rs(s)}function Mg(s,c){return c.start>=s.pos&&Rs(c)<=s.end}function Gh(s,c){return l1(s,c)!==void 0}function l1(s,c){let g=hA(s,c);return g&&g.length===0?void 0:g}function Nb(s,c){return CE(s.start,s.length,c.start,c.length)}function rS(s,c,g){return CE(s.start,s.length,c,g)}function CE(s,c,g,d){let h=s+c,_=g+d;return g<=h&&_>=s}function rN(s,c){return c<=Rs(s)&&c>=s.start}function a3(s,c){return rS(c,s.pos,s.end-s.pos)}function hA(s,c){let g=Math.max(s.start,c.start),d=Math.min(Rs(s),Rs(c));return g<=d?RA(g,d):void 0}function vI(s){s=s.filter(d=>d.length>0).sort((d,h)=>d.start!==h.start?d.start-h.start:d.length-h.length);let c=[],g=0;for(;g=2&&s.charCodeAt(0)===95&&s.charCodeAt(1)===95?"_"+s:s}function Bc(s){let c=s;return c.length>=3&&c.charCodeAt(0)===95&&c.charCodeAt(1)===95&&c.charCodeAt(2)===95?c.substr(1):c}function Vo(s){return Bc(s.escapedText)}function cv(s){let c=Ta(s.escapedText);return c?Gs(c,w0):void 0}function of(s){return s.valueDeclaration&&hC(s.valueDeclaration)?Vo(s.valueDeclaration.name):Bc(s.escapedName)}function a7(s){let c=s.parent.parent;if(c){if(em(c))return CY(c);switch(c.kind){case 244:if(c.declarationList&&c.declarationList.declarations[0])return CY(c.declarationList.declarations[0]);break;case 245:let g=c.expression;switch(g.kind===227&&g.operatorToken.kind===64&&(g=g.left),g.kind){case 212:return g.name;case 213:let d=g.argumentExpression;if(Ir(d))return d}break;case 218:return CY(c.expression);case 257:{if(em(c.statement)||un(c.statement))return CY(c.statement);break}}}}function CY(s){let c=fl(s);return c&&Ir(c)?c:void 0}function c3(s,c){return!!(sh(s)&&Ir(s.name)&&Vo(s.name)===Vo(c)||Eh(s)&&zt(s.declarationList.declarations,g=>c3(g,c)))}function _F(s){return s.name||a7(s)}function sh(s){return!!s.name}function Sw(s){switch(s.kind){case 80:return s;case 349:case 342:{let{name:g}=s;if(g.kind===167)return g.right;break}case 214:case 227:{let g=s;switch(oI(g)){case 1:case 4:case 5:case 3:return dAe(g.left);case 7:case 8:case 9:return g.arguments[1];default:return}}case 347:return _F(s);case 341:return a7(s);case 278:{let{expression:g}=s;return Ir(g)?g:void 0}case 213:let c=s;if(AAe(c))return c.argumentExpression}return s.name}function fl(s){if(s!==void 0)return Sw(s)||(jA(s)||uA(s)||wd(s)?SB(s):void 0)}function SB(s){if(s.parent){if(Cm(s.parent)||mg(s.parent))return s.parent.name;if(po(s.parent)&&s===s.parent.right){if(Ir(s.parent.left))return s.parent.left;if(bp(s.parent.left))return dAe(s.parent.left)}else if(nc(s.parent)&&Ir(s.parent.name))return s.parent.name}else return}function Db(s){if(h1(s))return Le(s.modifiers,So)}function iN(s){if(Ga(s,98303))return Le(s.modifiers,hg)}function xre(s,c){if(s.name)if(Ir(s.name)){let g=s.name.escapedText;return u7(s.parent,c).filter(d=>AS(d)&&Ir(d.name)&&d.name.escapedText===g)}else{let g=s.parent.parameters.indexOf(s);pe.assert(g>-1,"Parameters should always be in their parents' parameter list");let d=u7(s.parent,c).filter(AS);if(gPB(d)&&d.typeParameters.some(h=>h.name.escapedText===g))}function l3(s){return _Y(s,!1)}function c7(s){return _Y(s,!0)}function SJ(s){return!!g1(s,AS)}function l7(s){return g1(s,Zz)}function yY(s){return BJ(s,S9e)}function wx(s){return g1(s,hOt)}function Gre(s){return g1(s,V$e)}function Tx(s){return g1(s,V$e,!0)}function Es(s){return g1(s,W$e)}function Aa(s){return g1(s,W$e,!0)}function ha(s){return g1(s,O$e)}function Ua(s){return g1(s,O$e,!0)}function wc(s){return g1(s,P$e)}function mA(s){return g1(s,P$e,!0)}function Pd(s){return g1(s,b9e,!0)}function $h(s){return g1(s,M$e)}function a2(s){return g1(s,M$e,!0)}function u1(s){return g1(s,TEe)}function kb(s){return g1(s,H$e)}function lv(s){return g1(s,E9e)}function pW(s){return g1(s,PB)}function yF(s){return g1(s,v9e)}function uv(s){let c=g1(s,wde);if(c&&c.typeExpression&&c.typeExpression.type)return c}function sN(s){let c=g1(s,wde);return!c&&Si(s)&&(c=de(DL(s),g=>!!g.typeExpression)),c&&c.typeExpression&&c.typeExpression.type}function vJ(s){let c=lv(s);if(c&&c.typeExpression)return c.typeExpression.type;let g=uv(s);if(g&&g.typeExpression){let d=g.typeExpression.type;if(bh(d)){let h=de(d.members,Tg);return h&&h.type}if(F_(d)||Die(d))return d.type}}function u7(s,c){var g;if(!Bne(s))return E;let d=(g=s.jsDoc)==null?void 0:g.jsDocCache;if(d===void 0||c){let h=Xye(s,c);pe.assert(h.length<2||h[0]!==h[1]),d=jt(h,_=>oR(_)?_.tags:_),c||(s.jsDoc??(s.jsDoc=[]),s.jsDoc.jsDocCache=d)}return d}function Rx(s){return u7(s,!1)}function g1(s,c,g){return de(u7(s,g),c)}function BJ(s,c){return Rx(s).filter(c)}function Sye(s,c){return Rx(s).filter(g=>g.kind===c)}function wJ(s){return typeof s=="string"?s:s?.map(c=>c.kind===322?c.text:hZe(c)).join("")}function hZe(s){let c=s.kind===325?"link":s.kind===326?"linkcode":"linkplain",g=s.name?cy(s.name):"",d=s.name&&(s.text===""||s.text.startsWith("://"))?"":" ";return`{@${c} ${g}${d}${s.text}}`}function PD(s){if(i9(s)){if(kie(s.parent)){let c=cU(s.parent);if(c&&B(c.tags))return jt(c.tags,g=>PB(g)?g.typeParameters:void 0)}return E}if(cS(s))return pe.assert(s.parent.kind===321),jt(s.parent.tags,c=>PB(c)?c.typeParameters:void 0);if(s.typeParameters||ROt(s)&&s.typeParameters)return s.typeParameters;if(wo(s)){let c=wAe(s);if(c.length)return c;let g=sN(s);if(g&&F_(g)&&g.typeParameters)return g.typeParameters}return E}function u3(s){return s.constraint?s.constraint:PB(s.parent)&&s===s.parent.typeParameters[0]?s.parent.constraint:void 0}function vw(s){return s.kind===80||s.kind===81}function TJ(s){return s.kind===179||s.kind===178}function Nx(s){return jo(s)&&!!(s.flags&64)}function bF(s){return Qg(s)&&!!(s.flags&64)}function vB(s){return Ll(s)&&!!(s.flags&64)}function ZC(s){let c=s.kind;return!!(s.flags&64)&&(c===212||c===213||c===214||c===236)}function fW(s){return ZC(s)&&!yv(s)&&!!s.questionDotToken}function bY(s){return fW(s.parent)&&s.parent.expression===s}function g3(s){return!ZC(s.parent)||fW(s.parent)||s!==s.parent.expression}function RJ(s){return s.kind===227&&s.operatorToken.kind===61}function c2(s){return oh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="const"&&!s.typeArguments}function l2(s){return XI(s,8)}function NJ(s){return yv(s)&&!!(s.flags&64)}function EY(s){return s.kind===253||s.kind===252}function Fre(s){return s.kind===281||s.kind===280}function SY(s){return s.kind===349||s.kind===342}function g7(s){return s>=167}function A7(s){return s>=0&&s<=166}function kL(s){return A7(s.kind)}function oN(s){return Da(s,"pos")&&Da(s,"end")}function vY(s){return 9<=s&&s<=15}function xL(s){return vY(s.kind)}function Zre(s){switch(s.kind){case 211:case 210:case 14:case 219:case 232:return!0}return!1}function MD(s){return 15<=s&&s<=18}function yge(s){return MD(s.kind)}function d7(s){let c=s.kind;return c===17||c===18}function iS(s){return Ay(s)||D0(s)}function aN(s){switch(s.kind){case 277:return s.isTypeOnly||s.parent.parent.phaseModifier===156;case 275:return s.parent.phaseModifier===156;case 274:return s.phaseModifier===156;case 272:return s.isTypeOnly}return!1}function DJ(s){switch(s.kind){case 282:return s.isTypeOnly||s.parent.parent.isTypeOnly;case 279:return s.isTypeOnly&&!!s.moduleSpecifier&&!s.exportClause;case 281:return s.parent.isTypeOnly}return!1}function cN(s){return aN(s)||DJ(s)}function bge(s){return ji(s,cN)!==void 0}function Lre(s){return s.kind===11||MD(s.kind)}function p7(s){return Lg(s)||Ir(s)}function Gp(s){var c;return Ir(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function FL(s){var c;return p(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function BY(s){let c=s.emitNode.autoGenerate.flags;return!!(c&32)&&!!(c&16)&&!!(c&8)}function hC(s){return(pi(s)||LL(s))&&p(s.name)}function IW(s){return jo(s)&&p(s.name)}function HD(s){switch(s){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function wY(s){return!!(eQ(s)&31)}function Vre(s){return wY(s)||s===126||s===164||s===129}function hg(s){return HD(s.kind)}function mC(s){let c=s.kind;return c===167||c===80}function PI(s){let c=s.kind;return c===80||c===81||c===11||c===9||c===168}function ZL(s){let c=s.kind;return c===80||c===207||c===208}function Eu(s){return!!s&&hW(s.kind)}function A3(s){return!!s&&(hW(s.kind)||Al(s))}function Gd(s){return s&&vye(s.kind)}function TY(s){return s.kind===112||s.kind===97}function vye(s){switch(s){case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function hW(s){switch(s){case 174:case 180:case 324:case 181:case 182:case 185:case 318:case 186:return!0;default:return vye(s)}}function kJ(s){return al(s)||vN(s)||eg(s)&&Eu(s.parent)}function MI(s){let c=s.kind;return c===177||c===173||c===175||c===178||c===179||c===182||c===176||c===241}function xa(s){return s&&(s.kind===264||s.kind===232)}function BB(s){return s&&(s.kind===178||s.kind===179)}function n0(s){return pi(s)&&Fw(s)}function Wre(s){return wo(s)&&aQ(s)?(!RW(s)||!xF(s.expression))&&!E3(s,!0):s.parent&&xa(s.parent)&&pi(s)&&!Fw(s)}function LL(s){switch(s.kind){case 175:case 178:case 179:return!0;default:return!1}}function fp(s){return hg(s)||So(s)}function Dx(s){let c=s.kind;return c===181||c===180||c===172||c===174||c===182||c===178||c===179||c===355}function RY(s){return Dx(s)||MI(s)}function Bw(s){let c=s.kind;return c===304||c===305||c===306||c===175||c===178||c===179}function uc(s){return WAe(s.kind)}function Ege(s){switch(s.kind){case 185:case 186:return!0}return!1}function Nu(s){if(s){let c=s.kind;return c===208||c===207}return!1}function NY(s){let c=s.kind;return c===210||c===211}function d3(s){let c=s.kind;return c===209||c===233}function mW(s){switch(s.kind){case 261:case 170:case 209:return!0}return!1}function xJ(s){return nc(s)||Si(s)||CW(s)||ZJ(s)}function GJ(s){return FJ(s)||Ore(s)}function FJ(s){switch(s.kind){case 207:case 211:return!0}return!1}function CW(s){switch(s.kind){case 209:case 304:case 305:case 306:return!0}return!1}function Ore(s){switch(s.kind){case 208:case 210:return!0}return!1}function ZJ(s){switch(s.kind){case 209:case 233:case 231:case 210:case 211:case 80:case 212:case 213:return!0}return zm(s,!0)}function Pre(s){let c=s.kind;return c===212||c===167||c===206}function LJ(s){let c=s.kind;return c===212||c===167}function Mre(s){return EF(s)||FF(s)}function EF(s){switch(s.kind){case 214:case 215:case 216:case 171:case 287:case 286:case 290:return!0;case 227:return s.operatorToken.kind===104;default:return!1}}function gv(s){return s.kind===214||s.kind===215}function _W(s){let c=s.kind;return c===229||c===15}function x_(s){return Bye(l2(s).kind)}function Bye(s){switch(s){case 212:case 213:case 215:case 214:case 285:case 286:case 289:case 216:case 210:case 218:case 211:case 232:case 219:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 229:case 97:case 106:case 110:case 112:case 108:case 236:case 234:case 237:case 102:case 283:return!0;default:return!1}}function Hre(s){return wye(l2(s).kind)}function wye(s){switch(s){case 225:case 226:case 221:case 222:case 223:case 224:case 217:return!0;default:return Bye(s)}}function lN(s){switch(s.kind){case 226:return!0;case 225:return s.operator===46||s.operator===47;default:return!1}}function Sge(s){switch(s.kind){case 106:case 112:case 97:case 225:return!0;default:return xL(s)}}function un(s){return DY(l2(s).kind)}function DY(s){switch(s){case 228:case 230:case 220:case 227:case 231:case 235:case 233:case 357:case 356:case 239:return!0;default:return wye(s)}}function vd(s){let c=s.kind;return c===217||c===235}function HT(s,c){switch(s.kind){case 249:case 250:case 251:case 247:case 248:return!0;case 257:return c&&HT(s.statement,c)}return!1}function uN(s){return yf(s)||Vh(s)}function xb(s){return zt(s,uN)}function f7(s){return!MY(s)&&!yf(s)&&!Ga(s,32)&&!a_(s)}function YT(s){return MY(s)||yf(s)||Ga(s,32)}function VL(s){return s.kind===250||s.kind===251}function I7(s){return eg(s)||un(s)}function h7(s){return eg(s)}function _E(s){return A_(s)||un(s)}function vge(s){let c=s.kind;return c===269||c===268||c===80}function Yre(s){let c=s.kind;return c===269||c===268}function Tye(s){let c=s.kind;return c===80||c===268}function kx(s){let c=s.kind;return c===276||c===275}function p3(s){return s.kind===268||s.kind===267}function yE(s){switch(s.kind){case 220:case 227:case 209:case 214:case 180:case 264:case 232:case 176:case 177:case 186:case 181:case 213:case 267:case 307:case 278:case 279:case 282:case 263:case 219:case 185:case 178:case 80:case 274:case 272:case 277:case 182:case 265:case 339:case 341:case 318:case 342:case 349:case 324:case 347:case 323:case 292:case 293:case 294:case 201:case 175:case 174:case 268:case 203:case 281:case 271:case 275:case 215:case 15:case 9:case 211:case 170:case 212:case 304:case 173:case 172:case 179:case 305:case 308:case 306:case 11:case 266:case 188:case 169:case 261:return!0;default:return!1}}function HI(s){switch(s.kind){case 220:case 242:case 180:case 270:case 300:case 176:case 195:case 177:case 186:case 181:case 249:case 250:case 251:case 263:case 219:case 185:case 178:case 182:case 339:case 341:case 318:case 324:case 347:case 201:case 175:case 174:case 268:case 179:case 308:case 266:return!0;default:return!1}}function bE(s){return s===220||s===209||s===264||s===232||s===176||s===177||s===267||s===307||s===282||s===263||s===219||s===178||s===274||s===272||s===277||s===265||s===292||s===175||s===174||s===268||s===271||s===275||s===281||s===170||s===304||s===173||s===172||s===179||s===305||s===266||s===169||s===261||s===347||s===339||s===349||s===203}function Qre(s){return s===263||s===283||s===264||s===265||s===266||s===267||s===268||s===273||s===272||s===279||s===278||s===271}function Bge(s){return s===253||s===252||s===260||s===247||s===245||s===243||s===250||s===251||s===249||s===246||s===257||s===254||s===256||s===258||s===259||s===244||s===248||s===255||s===354}function em(s){return s.kind===169?s.parent&&s.parent.kind!==346||wo(s):bE(s.kind)}function wge(s){return Qre(s.kind)}function VJ(s){return Bge(s.kind)}function Lc(s){let c=s.kind;return Bge(c)||Qre(c)||Tge(s)}function Tge(s){return s.kind!==242||s.parent!==void 0&&(s.parent.kind===259||s.parent.kind===300)?!1:!BW(s)}function Xre(s){let c=s.kind;return Bge(c)||Qre(c)||c===242}function kY(s){let c=s.kind;return c===284||c===167||c===80}function WL(s){let c=s.kind;return c===110||c===80||c===212||c===296}function WJ(s){let c=s.kind;return c===285||c===295||c===286||c===12||c===289}function OJ(s){let c=s.kind;return c===292||c===294}function PJ(s){let c=s.kind;return c===11||c===295}function nI(s){let c=s.kind;return c===287||c===286}function f3(s){let c=s.kind;return c===287||c===286||c===290}function MJ(s){let c=s.kind;return c===297||c===298}function I3(s){return s.kind>=310&&s.kind<=352}function m7(s){return s.kind===321||s.kind===320||s.kind===322||xx(s)||h3(s)||GU(s)||i9(s)}function h3(s){return s.kind>=328&&s.kind<=352}function Av(s){return s.kind===179}function wB(s){return s.kind===178}function jm(s){if(!Bne(s))return!1;let{jsDoc:c}=s;return!!c&&c.length>0}function mf(s){return!!s.type}function QT(s){return!!s.initializer}function A1(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:case 307:return!0;default:return!1}}function xY(s){return s.kind===292||s.kind===294||Bw(s)}function C7(s){return s.kind===184||s.kind===234}var CC=1073741823;function Jre(s){let c=CC;for(let g of s){if(!g.length)continue;let d=0;for(;d0?g.parent.parameters[h-1]:void 0,S=c.text,R=_?Nn(o2(S,Yu(S,_.end+1,!1,!0)),mE(S,s.pos)):o2(S,Yu(S,s.pos,!1,!0));return zt(R)&&Rye(Ei(R),c)}let d=g&&qge(g,c);return!!F(d,h=>Rye(h,c))}var jre=[],YD="tslib",GY=160,zre=1e6,Rge=500;function yp(s,c){let g=s.declarations;if(g){for(let d of g)if(d.kind===c)return d}}function Nge(s,c){return Le(s.declarations||E,g=>g.kind===c)}function $u(s){let c=new Map;if(s)for(let g of s)c.set(g.escapedName,g);return c}function ww(s){return(s.flags&33554432)!==0}function QD(s){return!!(s.flags&1536)&&s.escapedName.charCodeAt(0)===34}var _7=Dge();function Dge(){var s="";let c=g=>s+=g;return{getText:()=>s,write:c,rawWrite:c,writeKeyword:c,writeOperator:c,writePunctuation:c,writeSpace:c,writeStringLiteral:c,writeLiteral:c,writeParameter:c,writeProperty:c,writeSymbol:(g,d)=>c(g),writeTrailingSemicolon:c,writeComment:c,getTextPos:()=>s.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!s.length&&dc(s.charCodeAt(s.length-1)),writeLine:()=>s+=" ",increaseIndent:Dc,decreaseIndent:Dc,clear:()=>s=""}}function HJ(s,c){return s.configFilePath!==c.configFilePath||mZe(s,c)}function mZe(s,c){return B0(s,c,Aet)}function kge(s,c){return B0(s,c,zOt)}function B0(s,c,g){return s!==c&&g.some(d=>!nde(lz(s,d),lz(c,d)))}function Tw(s,c){for(;;){let g=c(s);if(g==="quit")return;if(g!==void 0)return g;if(al(s))return;s=s.parent}}function Fh(s,c){let g=s.entries();for(let[d,h]of g){let _=c(h,d);if(_)return _}}function RB(s,c){let g=s.keys();for(let d of g){let h=c(d);if(h)return h}}function y7(s,c){s.forEach((g,d)=>{c.set(d,g)})}function yW(s){let c=_7.getText();try{return s(_7),_7.getText()}finally{_7.clear(),_7.writeKeyword(c)}}function YJ(s){return s.end-s.pos}function qre(s,c){return s.path===c.path&&!s.prepend==!c.prepend&&!s.circular==!c.circular}function xge(s,c){return s===c||s.resolvedModule===c.resolvedModule||!!s.resolvedModule&&!!c.resolvedModule&&s.resolvedModule.isExternalLibraryImport===c.resolvedModule.isExternalLibraryImport&&s.resolvedModule.extension===c.resolvedModule.extension&&s.resolvedModule.resolvedFileName===c.resolvedModule.resolvedFileName&&s.resolvedModule.originalPath===c.resolvedModule.originalPath&&Nye(s.resolvedModule.packageId,c.resolvedModule.packageId)&&s.alternateResult===c.alternateResult}function OL(s){return s.resolvedModule}function b7(s){return s.resolvedTypeReferenceDirective}function QJ(s,c,g,d,h){var _;let S=(_=c.getResolvedModule(s,g,d))==null?void 0:_.alternateResult,R=S&&(G_(c.getCompilerOptions())===2?[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[S]]:[Z.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,[S,S.includes(Hx+"@types/")?`@types/${Yie(h)}`:h]]),T=R?wu(void 0,R[0],...R[1]):c.typesPackageExists(h)?wu(void 0,Z.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,h,Yie(h)):c.packageBundlesTypes(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,h,g):wu(void 0,Z.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,g,Yie(h));return T&&(T.repopulateInfo=()=>({moduleReference:g,mode:d,packageName:h===g?void 0:h})),T}function E7(s){let c=jT(s.fileName),g=s.packageJsonScope,d=c===".ts"?".mts":c===".js"?".mjs":void 0,h=g&&!g.contents.packageJsonContent.type?d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,d,Ro(g.packageDirectory,"package.json")):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,Ro(g.packageDirectory,"package.json")):d?wu(void 0,Z.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,d):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module);return h.repopulateInfo=()=>!0,h}function Nye(s,c){return s===c||!!s&&!!c&&s.name===c.name&&s.subModuleName===c.subModuleName&&s.version===c.version&&s.peerDependencies===c.peerDependencies}function XJ({name:s,subModuleName:c}){return c?`${s}/${c}`:s}function gN(s){return`${XJ(s)}@${s.version}${s.peerDependencies??""}`}function Gge(s,c){return s===c||s.resolvedTypeReferenceDirective===c.resolvedTypeReferenceDirective||!!s.resolvedTypeReferenceDirective&&!!c.resolvedTypeReferenceDirective&&s.resolvedTypeReferenceDirective.resolvedFileName===c.resolvedTypeReferenceDirective.resolvedFileName&&!!s.resolvedTypeReferenceDirective.primary==!!c.resolvedTypeReferenceDirective.primary&&s.resolvedTypeReferenceDirective.originalPath===c.resolvedTypeReferenceDirective.originalPath}function $re(s,c,g,d){pe.assert(s.length===c.length);for(let h=0;h=0),rn(c)[s]}function Zge(s){let c=ms(s),g=Ra(c,s.pos);return`${c.fileName}(${g.line+1},${g.character+1})`}function ZY(s,c){pe.assert(s>=0);let g=rn(c),d=s,h=c.text;if(d+1===g.length)return h.length-1;{let _=g[d],S=g[d+1]-1;for(pe.assert(ml(h.charCodeAt(S)));_<=S&&ml(h.charCodeAt(S));)S--;return S}}function S7(s,c,g){return!(g&&g(c))&&!s.identifiers.has(c)}function af(s){return s===void 0?!0:s.pos===s.end&&s.pos>=0&&s.kind!==1}function d1(s){return!af(s)}function Lge(s,c){return Ds(s)?c===s.expression:Al(s)?c===s.modifiers:ss(s)?c===s.initializer:pi(s)?c===s.questionToken&&n0(s):Cm(s)?c===s.modifiers||c===s.questionToken||c===s.exclamationToken||LY(s.modifiers,c,fp):l0(s)?c===s.equalsToken||c===s.modifiers||c===s.questionToken||c===s.exclamationToken||LY(s.modifiers,c,fp):gu(s)?c===s.exclamationToken:Tc(s)?c===s.typeParameters||c===s.type||LY(s.typeParameters,c,Ds):wg(s)?c===s.typeParameters||LY(s.typeParameters,c,Ds):kg(s)?c===s.typeParameters||c===s.type||LY(s.typeParameters,c,Ds):wEe(s)?c===s.modifiers||LY(s.modifiers,c,fp):!1}function LY(s,c,g){return!s||Ki(c)||!g(c)?!1:k(s,c)}function Dye(s,c,g){if(c===void 0||c.length===0)return s;let d=0;for(;d[`${Ra(s,S.range.end).line}`,S])),d=new Map;return{getUnusedExpectations:h,markUsed:_};function h(){return Do(g.entries()).filter(([S,R])=>R.type===0&&!d.get(S)).map(([S,R])=>R)}function _(S){return g.has(`${S}`)?(d.set(`${S}`,!0),!0):!1}}function JD(s,c,g){if(af(s))return s.pos;if(I3(s)||s.kind===12)return Yu((c??ms(s)).text,s.pos,!1,!0);if(g&&jm(s))return JD(s.jsDoc[0],c);if(s.kind===353){c??(c=ms(s));let d=Nc(Y$e(s,c));if(d)return JD(d,c,g)}return Yu((c??ms(s)).text,s.pos,!1,!1,QY(s))}function rne(s,c){let g=!af(s)&&MB(s)?be(s.modifiers,So):void 0;return g?Yu((c||ms(s)).text,g.end):JD(s,c)}function Oge(s,c){let g=!af(s)&&MB(s)&&s.modifiers?Ei(s.modifiers):void 0;return g?Yu((c||ms(s)).text,g.end):JD(s,c)}function SF(s,c,g=!1){return WY(s.text,c,g)}function CZe(s){return!!ji(s,J3)}function VY(s){return!!(Vh(s)&&s.exportClause&&ok(s.exportClause)&&dv(s.exportClause.name))}function UD(s){return s.kind===11?s.text:Bc(s.escapedText)}function vF(s){return s.kind===11?pp(s.text):s.escapedText}function dv(s){return(s.kind===11?s.text:s.escapedText)==="default"}function WY(s,c,g=!1){if(af(c))return"";let d=s.substring(g?c.pos:Yu(s,c.pos),c.end);return CZe(c)&&(d=d.split(/\r\n|\n|\r/).map(h=>h.replace(/^\s*\*/,"").trimStart()).join(` -`)),d}function Fp(s,c=!1){return SF(ms(s),s,c)}function Gye(s){return s.pos}function EW(s,c){return Oc(s,c,Gye,Zt)}function rA(s){let c=s.emitNode;return c&&c.flags||0}function p1(s){let c=s.emitNode;return c&&c.internalFlags||0}var nne=LA(()=>new Map(Object.entries({Array:new Map(Object.entries({es2015:["find","findIndex","fill","copyWithin","entries","keys","values"],es2016:["includes"],es2019:["flat","flatMap"],es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Iterator:new Map(Object.entries({es2015:E})),AsyncIterator:new Map(Object.entries({es2015:E})),ArrayBuffer:new Map(Object.entries({es2024:["maxByteLength","resizable","resize","detached","transfer","transferToFixedLength"]})),Atomics:new Map(Object.entries({es2017:["add","and","compareExchange","exchange","isLockFree","load","or","store","sub","wait","notify","xor"],es2024:["waitAsync"],esnext:["pause"]})),SharedArrayBuffer:new Map(Object.entries({es2017:["byteLength","slice"],es2024:["growable","maxByteLength","grow"]})),AsyncIterable:new Map(Object.entries({es2018:E})),AsyncIterableIterator:new Map(Object.entries({es2018:E})),AsyncGenerator:new Map(Object.entries({es2018:E})),AsyncGeneratorFunction:new Map(Object.entries({es2018:E})),RegExp:new Map(Object.entries({es2015:["flags","sticky","unicode"],es2018:["dotAll"],es2024:["unicodeSets"]})),Reflect:new Map(Object.entries({es2015:["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"]})),ArrayConstructor:new Map(Object.entries({es2015:["from","of"],esnext:["fromAsync"]})),ObjectConstructor:new Map(Object.entries({es2015:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],es2017:["values","entries","getOwnPropertyDescriptors"],es2019:["fromEntries"],es2022:["hasOwn"],es2024:["groupBy"]})),NumberConstructor:new Map(Object.entries({es2015:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"]})),Math:new Map(Object.entries({es2015:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],esnext:["f16round"]})),Map:new Map(Object.entries({es2015:["entries","keys","values"]})),MapConstructor:new Map(Object.entries({es2024:["groupBy"]})),Set:new Map(Object.entries({es2015:["entries","keys","values"],esnext:["union","intersection","difference","symmetricDifference","isSubsetOf","isSupersetOf","isDisjointFrom"]})),PromiseConstructor:new Map(Object.entries({es2015:["all","race","reject","resolve"],es2020:["allSettled"],es2021:["any"],es2024:["withResolvers"]})),Symbol:new Map(Object.entries({es2015:["for","keyFor"],es2019:["description"]})),WeakMap:new Map(Object.entries({es2015:["entries","keys","values"]})),WeakSet:new Map(Object.entries({es2015:["entries","keys","values"]})),String:new Map(Object.entries({es2015:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],es2017:["padStart","padEnd"],es2019:["trimStart","trimEnd","trimLeft","trimRight"],es2020:["matchAll"],es2021:["replaceAll"],es2022:["at"],es2024:["isWellFormed","toWellFormed"]})),StringConstructor:new Map(Object.entries({es2015:["fromCodePoint","raw"]})),DateTimeFormat:new Map(Object.entries({es2017:["formatToParts"]})),Promise:new Map(Object.entries({es2015:E,es2018:["finally"]})),RegExpMatchArray:new Map(Object.entries({es2018:["groups"]})),RegExpExecArray:new Map(Object.entries({es2018:["groups"]})),Intl:new Map(Object.entries({es2018:["PluralRules"]})),NumberFormat:new Map(Object.entries({es2018:["formatToParts"]})),SymbolConstructor:new Map(Object.entries({es2020:["matchAll"],esnext:["metadata","dispose","asyncDispose"]})),DataView:new Map(Object.entries({es2020:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],esnext:["setFloat16","getFloat16"]})),BigInt:new Map(Object.entries({es2020:E})),RelativeTimeFormat:new Map(Object.entries({es2020:["format","formatToParts","resolvedOptions"]})),Int8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8ClampedArray:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float16Array:new Map(Object.entries({esnext:E})),Float32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float64Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigInt64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigUint64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),B7=(s=>(s[s.None=0]="None",s[s.NeverAsciiEscape=1]="NeverAsciiEscape",s[s.JsxAttributeEscape=2]="JsxAttributeEscape",s[s.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",s[s.AllowNumericSeparator=8]="AllowNumericSeparator",s))(B7||{});function Pge(s,c,g){if(c&&_Ze(s,g))return SF(c,s);switch(s.kind){case 11:{let d=g&2?cbe:g&1||rA(s)&16777216?KT:Lne;return s.singleQuote?"'"+d(s.text,39)+"'":'"'+d(s.text,34)+'"'}case 15:case 16:case 17:case 18:{let d=g&1||rA(s)&16777216?KT:Lne,h=s.rawText??obe(d(s.text,96));switch(s.kind){case 15:return"`"+h+"`";case 16:return"`"+h+"${";case 17:return"}"+h+"${";case 18:return"}"+h+"`"}break}case 9:case 10:return s.text;case 14:return g&4&&s.isUnterminated?s.text+(s.text.charCodeAt(s.text.length-1)===92?" /":"/"):s.text}return pe.fail(`Literal kind '${s.kind}' not accounted for.`)}function _Ze(s,c){if(ap(s)||!s.parent||c&4&&s.isUnterminated)return!1;if(yC(s)){if(s.numericLiteralFlags&26656)return!1;if(s.numericLiteralFlags&512)return!!(c&8)}return!gQ(s)}function Mge(s){return Xs(s)?`"${KT(s)}"`:""+s}function Nw(s){return dp(s).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function KJ(s){return(hm(s)&7)!==0||ine(s)}function ine(s){let c=Gw(s);return c.kind===261&&c.parent.kind===300}function a_(s){return Lh(s)&&(s.name.kind===11||NB(s))}function OY(s){return Lh(s)&&s.name.kind===11}function sne(s){return Lh(s)&&Lg(s.name)}function Hge(s){return Lh(s)||Ir(s)}function PY(s){return Yge(s.valueDeclaration)}function Yge(s){return!!s&&s.kind===268&&!s.body}function Qge(s){return s.kind===308||s.kind===268||A3(s)}function NB(s){return!!(s.flags&2048)}function BF(s){return a_(s)&&one(s)}function one(s){switch(s.parent.kind){case 308:return Lm(s.parent);case 269:return a_(s.parent.parent)&&al(s.parent.parent.parent)&&!Lm(s.parent.parent.parent)}return!1}function jJ(s){var c;return(c=s.declarations)==null?void 0:c.find(g=>!BF(g)&&!(Lh(g)&&NB(g)))}function yZe(s){return s===1||100<=s&&s<=199}function m3(s,c){return Lm(s)||yZe(o0(c))&&!!s.commonJsModuleIndicator}function ane(s,c){switch(s.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return s.isDeclarationFile?!1:!!(l_(c,"alwaysStrict")||BOt(s.statements)||Lm(s)||lS(c))}function zJ(s){return!!(s.flags&33554432)||Ga(s,128)}function qJ(s,c){switch(s.kind){case 308:case 270:case 300:case 268:case 249:case 250:case 251:case 177:case 175:case 178:case 179:case 263:case 219:case 220:case 173:case 176:return!0;case 242:return!A3(c)}return!1}function cne(s){switch(pe.type(s),s.kind){case 339:case 347:case 324:return!0;default:return lne(s)}}function lne(s){switch(pe.type(s),s.kind){case 180:case 181:case 174:case 182:case 185:case 186:case 318:case 264:case 232:case 265:case 266:case 346:case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function SW(s){switch(s.kind){case 273:case 272:return!0;default:return!1}}function Xge(s){return SW(s)||wW(s)}function w7(s){return SW(s)||hne(s)}function T7(s){switch(s.kind){case 273:case 272:case 244:case 264:case 263:case 268:case 266:case 265:case 267:return!0;default:return!1}}function Jge(s){return MY(s)||Lh(s)||qm(s)||jp(s)}function MY(s){return SW(s)||Vh(s)}function R7(s){return ji(s.parent,c=>!!(Pet(c)&1))}function sS(s){return ji(s.parent,c=>qJ(c,c.parent))}function Uge(s,c){let g=sS(s);for(;g;)c(g),g=sS(g)}function Md(s){return!s||YJ(s)===0?"(Missing)":Fp(s)}function Kge(s){return s.declaration?Md(s.declaration.parameters[0].name):void 0}function HY(s){return s.kind===168&&!I1(s.expression)}function YY(s){var c;switch(s.kind){case 80:case 81:return(c=s.emitNode)!=null&&c.autoGenerate?void 0:s.escapedText;case 11:case 9:case 10:case 15:return pp(s.text);case 168:return I1(s.expression)?pp(s.expression.text):void 0;case 296:return uS(s);default:return pe.assertNever(s)}}function vW(s){return pe.checkDefined(YY(s))}function cy(s){switch(s.kind){case 110:return"this";case 81:case 80:return YJ(s)===0?Vo(s):Fp(s);case 167:return cy(s.left)+"."+cy(s.right);case 212:return Ir(s.name)||p(s.name)?cy(s.expression)+"."+cy(s.name):pe.assertNever(s.name);case 312:return cy(s.left)+"#"+cy(s.right);case 296:return cy(s.namespace)+":"+cy(s.name);default:return pe.assertNever(s)}}function mo(s,c,...g){let d=ms(s);return EE(d,s,c,...g)}function C3(s,c,g,...d){let h=Yu(s.text,c.pos);return rm(s,h,c.end-h,g,...d)}function EE(s,c,g,...d){let h=qa(s,c);return rm(s,h.start,h.length,g,...d)}function Dw(s,c,g,d){let h=qa(s,c);return qe(s,h.start,h.length,g,d)}function ie(s,c,g,d){let h=Yu(s.text,c.pos);return qe(s,h,c.end-h,g,d)}function he(s,c,g){pe.assertGreaterThanOrEqual(c,0),pe.assertGreaterThanOrEqual(g,0),pe.assertLessThanOrEqual(c,s.length),pe.assertLessThanOrEqual(c+g,s.length)}function qe(s,c,g,d,h){return he(s.text,c,g),{file:s,start:c,length:g,code:d.code,category:d.category,messageText:d.next?d:d.messageText,relatedInformation:h,canonicalHead:d.canonicalHead}}function Ut(s,c,g){return{file:s,start:0,length:0,code:c.code,category:c.category,messageText:c.next?c:c.messageText,relatedInformation:g}}function Qr(s){return typeof s.messageText=="string"?{code:s.code,category:s.category,messageText:s.messageText,next:s.next}:s.messageText}function kn(s,c,g){return{file:s,start:c.pos,length:c.end-c.pos,code:g.code,category:g.category,messageText:g.message}}function Fi(s,...c){return{code:s.code,messageText:nQ(s,...c)}}function rs(s,c){let g=Rb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);g.scan();let d=g.getTokenStart();return RA(d,g.getTokenEnd())}function qs(s,c){let g=Rb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);return g.scan(),g.getToken()}function vc(s,c){let g=Yu(s.text,c.pos);if(c.body&&c.body.kind===242){let{line:d}=Ra(s,c.body.pos),{line:h}=Ra(s,c.body.end);if(d0?c.statements[0].pos:c.end;return RA(_,S)}case 254:case 230:{let _=Yu(s.text,c.pos);return rs(s,_)}case 239:{let _=Yu(s.text,c.expression.end);return rs(s,_)}case 351:{let _=Yu(s.text,c.tagName.pos);return rs(s,_)}case 177:{let _=c,S=Yu(s.text,_.pos),R=Rb(s.languageVersion,!0,s.languageVariant,s.text,void 0,S),T=R.scan();for(;T!==137&&T!==1;)T=R.scan();let O=R.getTokenEnd();return RA(S,O)}}if(g===void 0)return rs(s,c.pos);pe.assert(!oR(g));let d=af(g),h=d||t9(c)?g.pos:Yu(s.text,g.pos);return d?(pe.assert(h===g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h===g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(pe.assert(h>=g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h<=g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),RA(h,g.end)}function fc(s){return s.kind===308&&!Sl(s)}function Sl(s){return(s.externalModuleIndicator||s.commonJsModuleIndicator)!==void 0}function Zu(s){return s.scriptKind===6}function OA(s){return!!(Hc(s)&4096)}function Cf(s){return!!(Hc(s)&8&&!We(s,s.parent))}function Bd(s){return(hm(s)&7)===6}function iI(s){return(hm(s)&7)===4}function sI(s){return(hm(s)&7)===2}function XT(s){let c=hm(s)&7;return c===2||c===4||c===6}function oS(s){return(hm(s)&7)===1}function xy(s){return s.kind===214&&s.expression.kind===108}function jp(s){if(s.kind!==214)return!1;let c=s.expression;return c.kind===102||Du(c)&&c.keywordToken===102&&c.name.escapedText==="defer"}function pv(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}function Gy(s){return qm(s)&&BE(s.argument)&&Lg(s.argument.literal)}function aS(s){return s.kind===245&&s.expression.kind===11}function une(s){return!!(rA(s)&2097152)}function jge(s){return une(s)&&ah(s)}function NVt(s){return Ir(s.name)&&!s.initializer}function zge(s){return une(s)&&Eh(s)&&ue(s.declarationList.declarations,NVt)}function qge(s,c){return s.kind!==12?mE(c.text,s.pos):void 0}function Fye(s,c){let g=s.kind===170||s.kind===169||s.kind===219||s.kind===220||s.kind===218||s.kind===261||s.kind===282?Nn(o2(c,s.pos),mE(c,s.pos)):mE(c,s.pos);return Le(g,d=>d.end<=s.end&&c.charCodeAt(d.pos+1)===42&&c.charCodeAt(d.pos+2)===42&&c.charCodeAt(d.pos+3)!==47)}var DVt=/^\/\/\/\s*/,kVt=/^\/\/\/\s*/,xVt=/^\/\/\/\s*/,GVt=/^\/\/\/\s*/,FVt=/^\/\/\/\s*/,ZVt=/^\/\/\/\s*/;function kw(s){if(183<=s.kind&&s.kind<=206)return!0;switch(s.kind){case 133:case 159:case 150:case 163:case 154:case 136:case 155:case 151:case 157:case 106:case 146:return!0;case 116:return s.parent.kind!==223;case 234:return Vqe(s);case 169:return s.parent.kind===201||s.parent.kind===196;case 80:(s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s)&&(s=s.parent),pe.assert(s.kind===80||s.kind===167||s.kind===212,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 167:case 212:case 110:{let{parent:c}=s;if(c.kind===187)return!1;if(c.kind===206)return!c.isTypeOf;if(183<=c.kind&&c.kind<=206)return!0;switch(c.kind){case 234:return Vqe(c);case 169:return s===c.constraint;case 346:return s===c.constraint;case 173:case 172:case 170:case 261:return s===c.type;case 263:case 219:case 220:case 177:case 175:case 174:case 178:case 179:return s===c.type;case 180:case 181:case 182:return s===c.type;case 217:return s===c.type;case 214:case 215:case 216:return k(c.typeArguments,s)}}}return!1}function Vqe(s){return S9e(s.parent)||Zz(s.parent)||_1(s.parent)&&!NAe(s)}function wF(s,c){return g(s);function g(d){switch(d.kind){case 254:return c(d);case 270:case 242:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 297:case 298:case 257:case 259:case 300:return Lu(d,g)}}}function bZe(s,c){return g(s);function g(d){switch(d.kind){case 230:c(d);let h=d.expression;h&&g(h);return;case 267:case 265:case 268:case 266:return;default:if(Eu(d)){if(d.name&&d.name.kind===168){g(d.name.expression);return}}else kw(d)||Lu(d,g)}}}function Zye(s){return s&&s.kind===189?s.elementType:s&&s.kind===184?Ws(s.typeArguments):void 0}function $ge(s){switch(s.kind){case 265:case 264:case 232:case 188:return s.members;case 211:return s.properties}}function N7(s){if(s)switch(s.kind){case 209:case 307:case 170:case 304:case 173:case 172:case 305:case 261:return!0}return!1}function D7(s){return s.parent.kind===262&&s.parent.parent.kind===244}function Lye(s){return wo(s)?ag(s.parent)&&po(s.parent.parent)&&oI(s.parent.parent)===2||eAe(s.parent):!1}function eAe(s){return wo(s)?po(s)&&oI(s)===1:!1}function EZe(s){return(nc(s)?sI(s)&&Ir(s.name)&&D7(s):pi(s)?R3(s)&&tm(s):ss(s)&&R3(s))||eAe(s)}function SZe(s){switch(s.kind){case 175:case 174:case 177:case 178:case 179:case 263:case 219:return!0}return!1}function Vye(s,c){for(;;){if(c&&c(s),s.statement.kind!==257)return s.statement;s=s.statement}}function BW(s){return s&&s.kind===242&&Eu(s.parent)}function u2(s){return s&&s.kind===175&&s.parent.kind===211}function tAe(s){return(s.kind===175||s.kind===178||s.kind===179)&&(s.parent.kind===211||s.parent.kind===232)}function vZe(s){return s&&s.kind===1}function BZe(s){return s&&s.kind===0}function $J(s,c,g,d){return F(s?.properties,h=>{if(!Cm(h))return;let _=YY(h.name);return c===_||d&&d===_?g(h):void 0})}function k7(s){if(s&&s.statements.length){let c=s.statements[0].expression;return Gs(c,ag)}}function rAe(s,c,g){return gne(s,c,d=>YI(d.initializer)?de(d.initializer.elements,h=>Lg(h)&&h.text===g):void 0)}function gne(s,c,g){return $J(k7(s),c,g)}function f1(s){return ji(s.parent,Eu)}function nAe(s){return ji(s.parent,Gd)}function _C(s){return ji(s.parent,xa)}function wZe(s){return ji(s.parent,c=>xa(c)||Eu(c)?"quit":Al(c))}function Ane(s){return ji(s.parent,A3)}function iAe(s){let c=ji(s.parent,g=>xa(g)?"quit":So(g));return c&&xa(c.parent)?_C(c.parent):_C(c??s)}function i0(s,c,g){for(pe.assert(s.kind!==308);;){if(s=s.parent,!s)return pe.fail();switch(s.kind){case 168:if(g&&xa(s.parent.parent))return s;s=s.parent.parent;break;case 171:s.parent.kind===170&&MI(s.parent.parent)?s=s.parent.parent:MI(s.parent)&&(s=s.parent);break;case 220:if(!c)continue;case 263:case 219:case 268:case 176:case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 180:case 181:case 182:case 267:case 308:return s}}}function TZe(s){switch(s.kind){case 220:case 263:case 219:case 173:return!0;case 242:switch(s.parent.kind){case 177:case 175:case 178:case 179:return!0;default:return!1}default:return!1}}function sAe(s){Ir(s)&&(mm(s.parent)||ah(s.parent))&&s.parent.name===s&&(s=s.parent);let c=i0(s,!0,!1);return al(c)}function RZe(s){let c=i0(s,!1,!1);if(c)switch(c.kind){case 177:case 263:case 219:return c}}function x7(s,c){for(;;){if(s=s.parent,!s)return;switch(s.kind){case 168:s=s.parent;break;case 263:case 219:case 220:if(!c)continue;case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 176:return s;case 171:s.parent.kind===170&&MI(s.parent.parent)?s=s.parent.parent:MI(s.parent)&&(s=s.parent);break}}}function ML(s){if(s.kind===219||s.kind===220){let c=s,g=s.parent;for(;g.kind===218;)c=g,g=g.parent;if(g.kind===214&&g.expression===c)return g}}function Fy(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===108}function dne(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===110}function oAe(s){var c;return!!s&&nc(s)&&((c=s.initializer)==null?void 0:c.kind)===110}function NZe(s){return!!s&&(l0(s)||Cm(s))&&po(s.parent.parent)&&s.parent.parent.operatorToken.kind===64&&s.parent.parent.right.kind===110}function pne(s){switch(s.kind){case 184:return s.typeName;case 234:return Hd(s.expression)?s.expression:void 0;case 80:case 167:return s}}function aAe(s){switch(s.kind){case 216:return s.tag;case 287:case 286:return s.tagName;case 227:return s.right;case 290:return s;default:return s.expression}}function eU(s,c,g,d){if(s&&sh(c)&&p(c.name))return!1;switch(c.kind){case 264:return!0;case 232:return!s;case 173:return g!==void 0&&(s?mm(g):xa(g)&&!FW(c)&&!mbe(c));case 178:case 179:case 175:return c.body!==void 0&&g!==void 0&&(s?mm(g):xa(g));case 170:return s?g!==void 0&&g.body!==void 0&&(g.kind===177||g.kind===175||g.kind===179)&&xW(g)!==c&&d!==void 0&&d.kind===264:!1}return!1}function tU(s,c,g,d){return h1(c)&&eU(s,c,g,d)}function fne(s,c,g,d){return tU(s,c,g,d)||rU(s,c,g)}function rU(s,c,g){switch(c.kind){case 264:return zt(c.members,d=>fne(s,d,c,g));case 232:return!s&&zt(c.members,d=>fne(s,d,c,g));case 175:case 179:case 177:return zt(c.parameters,d=>tU(s,d,c,g));default:return!1}}function Gx(s,c){if(tU(s,c))return!0;let g=pN(c);return!!g&&rU(s,g,c)}function Wye(s,c,g){let d;if(BB(c)){let{firstAccessor:h,secondAccessor:_,setAccessor:S}=GW(g.members,c),R=h1(h)?h:_&&h1(_)?_:void 0;if(!R||c!==R)return!1;d=S?.parameters}else gu(c)&&(d=c.parameters);if(tU(s,c,g))return!0;if(d){for(let h of d)if(!NF(h)&&tU(s,h,c,g))return!0}return!1}function Oye(s){if(s.textSourceNode){switch(s.textSourceNode.kind){case 11:return Oye(s.textSourceNode);case 15:return s.text===""}return!1}return s.text===""}function nU(s){let{parent:c}=s;return c.kind===287||c.kind===286||c.kind===288?c.tagName===s:!1}function JT(s){switch(s.kind){case 108:case 106:case 112:case 97:case 14:case 210:case 211:case 212:case 213:case 214:case 215:case 216:case 235:case 217:case 239:case 236:case 218:case 219:case 232:case 220:case 223:case 221:case 222:case 225:case 226:case 227:case 228:case 231:case 229:case 233:case 285:case 286:case 289:case 230:case 224:return!0;case 237:return!jp(s.parent)||s.parent.expression!==s;case 234:return!_1(s.parent)&&!Zz(s.parent);case 167:for(;s.parent.kind===167;)s=s.parent;return s.parent.kind===187||xx(s.parent)||Bde(s.parent)||U3(s.parent)||nU(s);case 312:for(;U3(s.parent);)s=s.parent;return s.parent.kind===187||xx(s.parent)||Bde(s.parent)||U3(s.parent)||nU(s);case 81:return po(s.parent)&&s.parent.left===s&&s.parent.operatorToken.kind===103;case 80:if(s.parent.kind===187||xx(s.parent)||Bde(s.parent)||U3(s.parent)||nU(s))return!0;case 9:case 10:case 11:case 15:case 110:return Ine(s);default:return!1}}function Ine(s){let{parent:c}=s;switch(c.kind){case 261:case 170:case 173:case 172:case 307:case 304:case 209:return c.initializer===s;case 245:case 246:case 247:case 248:case 254:case 255:case 256:case 297:case 258:return c.expression===s;case 249:let g=c;return g.initializer===s&&g.initializer.kind!==262||g.condition===s||g.incrementor===s;case 250:case 251:let d=c;return d.initializer===s&&d.initializer.kind!==262||d.expression===s;case 217:case 235:return s===c.expression;case 240:return s===c.expression;case 168:return s===c.expression;case 171:case 295:case 294:case 306:return!0;case 234:return c.expression===s&&!kw(c);case 305:return c.objectAssignmentInitializer===s;case 239:return s===c.expression;default:return JT(c)}}function cAe(s){for(;s.kind===167||s.kind===80;)s=s.parent;return s.kind===187}function DZe(s){return ok(s)&&!!s.parent.moduleSpecifier}function HL(s){return s.kind===272&&s.moduleReference.kind===284}function G7(s){return pe.assert(HL(s)),s.moduleReference.expression}function Pye(s){return wW(s)&&CU(s.initializer).arguments[0]}function _3(s){return s.kind===272&&s.moduleReference.kind!==284}function AN(s){return s?.kind===308}function s0(s){return wo(s)}function wo(s){return!!s&&!!(s.flags&524288)}function lAe(s){return!!s&&!!(s.flags&134217728)}function uAe(s){return!Zu(s)}function QY(s){return!!s&&!!(s.flags&16777216)}function gAe(s){return oh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="Object"&&s.typeArguments&&s.typeArguments.length===2&&(s.typeArguments[0].kind===154||s.typeArguments[0].kind===150)}function ly(s,c){if(s.kind!==214)return!1;let{expression:g,arguments:d}=s;if(g.kind!==80||g.escapedText!=="require"||d.length!==1)return!1;let h=d[0];return!c||CA(h)}function F7(s){return Wqe(s,!1)}function wW(s){return Wqe(s,!0)}function kZe(s){return mg(s)&&wW(s.parent.parent)}function Wqe(s,c){return nc(s)&&!!s.initializer&&ly(c?CU(s.initializer):s.initializer,!0)}function hne(s){return Eh(s)&&s.declarationList.declarations.length>0&&ue(s.declarationList.declarations,c=>F7(c))}function mne(s){return s===39||s===34}function Cne(s,c){return SF(c,s).charCodeAt(0)===34}function Z7(s){return po(s)||bp(s)||Ir(s)||Ll(s)}function _ne(s){return wo(s)&&s.initializer&&po(s.initializer)&&(s.initializer.operatorToken.kind===57||s.initializer.operatorToken.kind===61)&&s.name&&Hd(s.name)&&iU(s.name,s.initializer.left)?s.initializer.right:s.initializer}function L7(s){let c=_ne(s);return c&&YL(c,xF(s.name))}function LVt(s,c){return F(s.properties,g=>Cm(g)&&Ir(g.name)&&g.name.escapedText==="value"&&g.initializer&&YL(g.initializer,c))}function XY(s){if(s&&s.parent&&po(s.parent)&&s.parent.operatorToken.kind===64){let c=xF(s.parent.left);return YL(s.parent.right,c)||VVt(s.parent.left,s.parent.right,c)}if(s&&Ll(s)&&b3(s)){let c=LVt(s.arguments[2],s.arguments[1].text==="prototype");if(c)return c}}function YL(s,c){if(Ll(s)){let g=JA(s.expression);return g.kind===219||g.kind===220?s:void 0}if(s.kind===219||s.kind===232||s.kind===220||ag(s)&&(s.properties.length===0||c))return s}function VVt(s,c,g){let d=po(c)&&(c.operatorToken.kind===57||c.operatorToken.kind===61)&&YL(c.right,g);if(d&&iU(s,c.left))return d}function xZe(s){let c=nc(s.parent)?s.parent.name:po(s.parent)&&s.parent.operatorToken.kind===64?s.parent.left:void 0;return c&&YL(s.right,xF(c))&&Hd(c)&&iU(c,s.left)}function Mye(s){if(po(s.parent)){let c=(s.parent.operatorToken.kind===57||s.parent.operatorToken.kind===61)&&po(s.parent.parent)?s.parent.parent:s.parent;if(c.operatorToken.kind===64&&Ir(c.left))return c.left}else if(nc(s.parent))return s.parent.name}function iU(s,c){return xw(s)&&xw(c)?g2(s)===g2(c):vw(s)&&GZe(c)&&(c.expression.kind===110||Ir(c.expression)&&(c.expression.escapedText==="window"||c.expression.escapedText==="self"||c.expression.escapedText==="global"))?iU(s,bne(c)):GZe(s)&&GZe(c)?KD(s)===KD(c)&&iU(s.expression,c.expression):!1}function yne(s){for(;zm(s,!0);)s=s.right;return s}function y3(s){return Ir(s)&&s.escapedText==="exports"}function TW(s){return Ir(s)&&s.escapedText==="module"}function dN(s){return(jo(s)||Hye(s))&&TW(s.expression)&&KD(s)==="exports"}function oI(s){let c=WVt(s);return c===5||wo(s)?c:0}function b3(s){return B(s.arguments)===3&&jo(s.expression)&&Ir(s.expression.expression)&&Vo(s.expression.expression)==="Object"&&Vo(s.expression.name)==="defineProperty"&&I1(s.arguments[1])&&E3(s.arguments[0],!0)}function GZe(s){return jo(s)||Hye(s)}function Hye(s){return Qg(s)&&I1(s.argumentExpression)}function RW(s,c){return jo(s)&&(!c&&s.expression.kind===110||Ir(s.name)&&E3(s.expression,!0))||AAe(s,c)}function AAe(s,c){return Hye(s)&&(!c&&s.expression.kind===110||Hd(s.expression)||RW(s.expression,!0))}function E3(s,c){return Hd(s)||RW(s,c)}function bne(s){return jo(s)?s.name:s.argumentExpression}function WVt(s){if(Ll(s)){if(!b3(s))return 0;let c=s.arguments[0];return y3(c)||dN(c)?8:RW(c)&&KD(c)==="prototype"?9:7}return s.operatorToken.kind!==64||!bp(s.left)||OVt(yne(s))?0:E3(s.left.expression,!0)&&KD(s.left)==="prototype"&&ag(Yye(s))?6:sU(s.left)}function OVt(s){return nR(s)&&yC(s.expression)&&s.expression.text==="0"}function dAe(s){if(jo(s))return s.name;let c=JA(s.argumentExpression);return yC(c)||CA(c)?c:s}function KD(s){let c=dAe(s);if(c){if(Ir(c))return c.escapedText;if(CA(c)||yC(c))return pp(c.text)}}function sU(s){if(s.expression.kind===110)return 4;if(dN(s))return 2;if(E3(s.expression,!0)){if(xF(s.expression))return 3;let c=s;for(;!Ir(c.expression);)c=c.expression;let g=c.expression;if((g.escapedText==="exports"||g.escapedText==="module"&&KD(c)==="exports")&&RW(s))return 1;if(E3(s,!0)||Qg(s)&&CAe(s))return 5}return 0}function Yye(s){for(;po(s.right);)s=s.right;return s.right}function Ene(s){return po(s)&&oI(s)===3}function Qye(s){return wo(s)&&s.parent&&s.parent.kind===245&&(!Qg(s)||Hye(s))&&!!uv(s.parent)}function V7(s,c){let{valueDeclaration:g}=s;(!g||!(c.flags&33554432&&!wo(c)&&!(g.flags&33554432))&&Z7(g)&&!Z7(c)||g.kind!==c.kind&&Hge(g))&&(s.valueDeclaration=c)}function FZe(s){if(!s||!s.valueDeclaration)return!1;let c=s.valueDeclaration;return c.kind===263||nc(c)&&c.initializer&&Eu(c.initializer)}function ZZe(s){switch(s?.kind){case 261:case 209:case 273:case 279:case 272:case 274:case 281:case 275:case 282:case 277:case 206:return!0}return!1}function JY(s){var c,g;switch(s.kind){case 261:case 209:return(c=ji(s.initializer,d=>ly(d,!0)))==null?void 0:c.arguments[0];case 273:case 279:case 352:return Gs(s.moduleSpecifier,CA);case 272:return Gs((g=Gs(s.moduleReference,MF))==null?void 0:g.expression,CA);case 274:case 281:return Gs(s.parent.moduleSpecifier,CA);case 275:case 282:return Gs(s.parent.parent.moduleSpecifier,CA);case 277:return Gs(s.parent.parent.parent.moduleSpecifier,CA);case 206:return Gy(s)?s.argument.literal:void 0;default:pe.assertNever(s)}}function W7(s){return O7(s)||pe.failBadSyntaxKind(s.parent)}function O7(s){switch(s.parent.kind){case 273:case 279:case 352:return s.parent;case 284:return s.parent.parent;case 214:return jp(s.parent)||ly(s.parent,!1)?s.parent:void 0;case 202:if(!Lg(s))break;return Gs(s.parent.parent,qm);default:return}}function Sne(s,c){return!!c.rewriteRelativeImportExtensions&&mp(s)&&!PC(s)&&G3(s)}function UY(s){switch(s.kind){case 273:case 279:case 352:return s.moduleSpecifier;case 272:return s.moduleReference.kind===284?s.moduleReference.expression:void 0;case 206:return Gy(s)?s.argument.literal:void 0;case 214:return s.arguments[0];case 268:return s.name.kind===11?s.name:void 0;default:return pe.assertNever(s)}}function oU(s){switch(s.kind){case 273:return s.importClause&&Gs(s.importClause.namedBindings,Px);case 272:return s;case 279:return s.exportClause&&Gs(s.exportClause,ok);default:return pe.assertNever(s)}}function S3(s){return(s.kind===273||s.kind===352)&&!!s.importClause&&!!s.importClause.name}function LZe(s,c){if(s.name){let g=c(s);if(g)return g}if(s.namedBindings){let g=Px(s.namedBindings)?c(s.namedBindings):F(s.namedBindings.elements,c);if(g)return g}}function KY(s){switch(s.kind){case 170:case 175:case 174:case 305:case 304:case 173:case 172:return s.questionToken!==void 0}return!1}function jY(s){let c=Die(s)?Nc(s.parameters):void 0,g=Gs(c&&c.name,Ir);return!!g&&g.escapedText==="new"}function cS(s){return s.kind===347||s.kind===339||s.kind===341}function vne(s){return cS(s)||OB(s)}function VZe(s){return OC(s)&&po(s.expression)&&s.expression.operatorToken.kind===64?yne(s.expression):void 0}function Oqe(s){return OC(s)&&po(s.expression)&&oI(s.expression)!==0&&po(s.expression.right)&&(s.expression.right.operatorToken.kind===57||s.expression.right.operatorToken.kind===61)?s.expression.right.right:void 0}function Pqe(s){switch(s.kind){case 244:let c=v3(s);return c&&c.initializer;case 173:return s.initializer;case 304:return s.initializer}}function v3(s){return Eh(s)?Nc(s.declarationList.declarations):void 0}function Mqe(s){return Lh(s)&&s.body&&s.body.kind===268?s.body:void 0}function aU(s){if(s.kind>=244&&s.kind<=260)return!0;switch(s.kind){case 80:case 110:case 108:case 167:case 237:case 213:case 212:case 209:case 219:case 220:case 175:case 178:case 179:return!0;default:return!1}}function Bne(s){switch(s.kind){case 220:case 227:case 242:case 253:case 180:case 297:case 264:case 232:case 176:case 177:case 186:case 181:case 252:case 260:case 247:case 213:case 243:case 1:case 267:case 307:case 278:case 279:case 282:case 245:case 250:case 251:case 249:case 263:case 219:case 185:case 178:case 80:case 246:case 273:case 272:case 182:case 265:case 318:case 324:case 257:case 175:case 174:case 268:case 203:case 271:case 211:case 170:case 218:case 212:case 304:case 173:case 172:case 254:case 241:case 179:case 305:case 306:case 256:case 258:case 259:case 266:case 169:case 261:case 244:case 248:case 255:return!0;default:return!1}}function Xye(s,c){let g;N7(s)&&QT(s)&&jm(s.initializer)&&(g=Pr(g,Hqe(s,s.initializer.jsDoc)));let d=s;for(;d&&d.parent;){if(jm(d)&&(g=Pr(g,Hqe(s,d.jsDoc))),d.kind===170){g=Pr(g,(c?EJ:DL)(d));break}if(d.kind===169){g=Pr(g,(c?c7:l3)(d));break}d=Jye(d)}return g||E}function Hqe(s,c){let g=Ei(c);return jt(c,d=>{if(d===g){let h=Le(d.tags,_=>Yqe(s,_));return d.tags===h?[d]:h}else return Le(d.tags,kie)})}function Yqe(s,c){return!(wde(c)||v9e(c))||!c.parent||!oR(c.parent)||!dI(c.parent.parent)||c.parent.parent===s}function Jye(s){let c=s.parent;if(c.kind===304||c.kind===278||c.kind===173||c.kind===245&&s.kind===212||c.kind===254||Mqe(c)||zm(s))return c;if(c.parent&&(v3(c.parent)===s||zm(c)))return c.parent;if(c.parent&&c.parent.parent&&(v3(c.parent.parent)||Pqe(c.parent.parent)===s||Oqe(c.parent.parent)))return c.parent.parent}function wne(s){if(s.symbol)return s.symbol;if(!Ir(s.name))return;let c=s.name.escapedText,g=QL(s);if(!g)return;let d=de(g.parameters,h=>h.name.kind===80&&h.name.escapedText===c);return d&&d.symbol}function pAe(s){if(oR(s.parent)&&s.parent.tags){let c=de(s.parent.tags,cS);if(c)return c}return QL(s)}function Uye(s){return BJ(s,kie)}function QL(s){let c=XL(s);if(c)return ss(c)&&c.type&&Eu(c.type)?c.type:Eu(c)?c:void 0}function XL(s){let c=NW(s);if(c)return Oqe(c)||VZe(c)||Pqe(c)||v3(c)||Mqe(c)||c}function NW(s){let c=cU(s);if(!c)return;let g=c.parent;if(g&&g.jsDoc&&c===li(g.jsDoc))return g}function cU(s){return ji(s.parent,oR)}function WZe(s){let c=s.name.escapedText,{typeParameters:g}=s.parent.parent.parent;return g&&de(g,d=>d.name.escapedText===c)}function Qqe(s){return!!s.typeArguments}var OZe=(s=>(s[s.None=0]="None",s[s.Definite=1]="Definite",s[s.Compound=2]="Compound",s))(OZe||{});function PZe(s){let c=s.parent;for(;;){switch(c.kind){case 227:let g=c,d=g.operatorToken.kind;return $D(d)&&g.left===s?g:void 0;case 225:case 226:let h=c,_=h.operator;return _===46||_===47?h:void 0;case 250:case 251:let S=c;return S.initializer===s?S:void 0;case 218:case 210:case 231:case 236:s=c;break;case 306:s=c.parent;break;case 305:if(c.name!==s)return;s=c.parent;break;case 304:if(c.name===s)return;s=c.parent;break;default:return}c=s.parent}}function jD(s){let c=PZe(s);if(!c)return 0;switch(c.kind){case 227:let g=c.operatorToken.kind;return g===64||q7(g)?1:2;case 225:case 226:return 2;case 250:case 251:return 1}}function TF(s){return!!PZe(s)}function PVt(s){let c=JA(s.right);return c.kind===227&&tet(c.operatorToken.kind)}function fAe(s){let c=PZe(s);return!!c&&zm(c,!0)&&PVt(c)}function MZe(s){switch(s.kind){case 242:case 244:case 255:case 246:case 256:case 270:case 297:case 298:case 257:case 249:case 250:case 251:case 247:case 248:case 259:case 300:return!0}return!1}function B3(s){return jA(s)||uA(s)||LL(s)||ah(s)||Tc(s)}function Xqe(s,c){for(;s&&s.kind===c;)s=s.parent;return s}function Tne(s){return Xqe(s,197)}function fv(s){return Xqe(s,218)}function Kye(s){let c;for(;s&&s.kind===197;)c=s,s=s.parent;return[c,s]}function P7(s){for(;Cv(s);)s=s.type;return s}function JA(s,c){return XI(s,c?-2147483647:1)}function jye(s){return s.kind!==212&&s.kind!==213?!1:(s=fv(s.parent),s&&s.kind===221)}function DW(s,c){for(;s;){if(s===c)return!0;s=s.parent}return!1}function UT(s){return!al(s)&&!Nu(s)&&em(s.parent)&&s.parent.name===s}function M7(s){let c=s.parent;switch(s.kind){case 11:case 15:case 9:if(Un(c))return c.parent;case 80:if(em(c))return c.name===s?c:void 0;if(zi(c)){let g=c.parent;return AS(g)&&g.name===c?g:void 0}else{let g=c.parent;return po(g)&&oI(g)!==0&&(g.left.symbol||g.symbol)&&fl(g)===s?g:void 0}case 81:return em(c)&&c.name===s?c:void 0;default:return}}function Rne(s){return I1(s)&&s.parent.kind===168&&em(s.parent.parent)}function HZe(s){let c=s.parent;switch(c.kind){case 173:case 172:case 175:case 174:case 178:case 179:case 307:case 304:case 212:return c.name===s;case 167:return c.right===s;case 209:case 277:return c.propertyName===s;case 282:case 292:case 286:case 287:case 288:return!0}return!1}function zye(s){switch(s.parent.kind){case 274:case 277:case 275:case 282:case 278:case 272:case 281:return s.parent;case 167:do s=s.parent;while(s.parent.kind===167);return zye(s)}}function IAe(s){return Hd(s)||wd(s)}function Nne(s){let c=Dne(s);return IAe(c)}function Dne(s){return yf(s)?s.expression:s.right}function YZe(s){return s.kind===305?s.name:s.kind===304?s.initializer:s.parent.right}function DB(s){let c=JL(s);if(c&&wo(s)){let g=l7(s);if(g)return g.class}return c}function JL(s){let c=kne(s.heritageClauses,96);return c&&c.types.length>0?c.types[0]:void 0}function lU(s){if(wo(s))return yY(s).map(c=>c.class);{let c=kne(s.heritageClauses,119);return c?.types}}function H7(s){return d_(s)?Y7(s)||E:xa(s)&&Nn(K_(DB(s)),lU(s))||E}function Y7(s){let c=kne(s.heritageClauses,96);return c?c.types:void 0}function kne(s,c){if(s){for(let g of s)if(g.token===c)return g}}function UL(s,c){for(;s;){if(s.kind===c)return s;s=s.parent}}function w0(s){return 83<=s&&s<=166}function qye(s){return 19<=s&&s<=79}function hAe(s){return w0(s)||qye(s)}function mAe(s){return 128<=s&&s<=166}function $ye(s){return w0(s)&&!mAe(s)}function zY(s){let c=Ta(s);return c!==void 0&&$ye(c)}function ebe(s){let c=cv(s);return!!c&&!mAe(c)}function uU(s){return 2<=s&&s<=7}var QZe=(s=>(s[s.Normal=0]="Normal",s[s.Generator=1]="Generator",s[s.Async=2]="Async",s[s.Invalid=4]="Invalid",s[s.AsyncGenerator=3]="AsyncGenerator",s))(QZe||{});function BI(s){if(!s)return 4;let c=0;switch(s.kind){case 263:case 219:case 175:s.asteriskToken&&(c|=1);case 220:Ga(s,1024)&&(c|=2);break}return s.body||(c|=4),c}function Q7(s){switch(s.kind){case 263:case 219:case 220:case 175:return s.body!==void 0&&s.asteriskToken===void 0&&Ga(s,1024)}return!1}function I1(s){return CA(s)||yC(s)}function xne(s){return N0(s)&&(s.operator===40||s.operator===41)&&yC(s.operand)}function zD(s){let c=fl(s);return!!c&&CAe(c)}function CAe(s){if(!(s.kind===168||s.kind===213))return!1;let c=Qg(s)?JA(s.argumentExpression):s.expression;return!I1(c)&&!xne(c)}function w3(s){switch(s.kind){case 80:case 81:return s.escapedText;case 11:case 15:case 9:case 10:return pp(s.text);case 168:let c=s.expression;return I1(c)?pp(c.text):xne(c)?c.operator===41?Vi(c.operator)+c.operand.text:c.operand.text:void 0;case 296:return uS(s);default:return pe.assertNever(s)}}function xw(s){switch(s.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function g2(s){return vw(s)?Vo(s):sR(s)?Ez(s):s.text}function gU(s){return vw(s)?s.escapedText:sR(s)?uS(s):pp(s.text)}function Gne(s,c){return`__#${xg(s)}@${c}`}function X7(s){return Ac(s.escapedName,"__@")}function XZe(s){return Ac(s.escapedName,"__#")}function MVt(s){return Ir(s)?Vo(s)==="__proto__":Lg(s)&&s.text==="__proto__"}function _Ae(s,c){switch(s=XI(s),s.kind){case 232:if(utt(s))return!1;break;case 219:if(s.name)return!1;break;case 220:break;default:return!1}return typeof c=="function"?c(s):!0}function tbe(s){switch(s.kind){case 304:return!MVt(s.name);case 305:return!!s.objectAssignmentInitializer;case 261:return Ir(s.name)&&!!s.initializer;case 170:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 209:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 173:return!!s.initializer;case 227:switch(s.operatorToken.kind){case 64:case 77:case 76:case 78:return Ir(s.left)}break;case 278:return!0}return!1}function Gb(s,c){if(!tbe(s))return!1;switch(s.kind){case 304:return _Ae(s.initializer,c);case 305:return _Ae(s.objectAssignmentInitializer,c);case 261:case 170:case 209:case 173:return _Ae(s.initializer,c);case 227:return _Ae(s.right,c);case 278:return _Ae(s.expression,c)}}function rbe(s){return s.escapedText==="push"||s.escapedText==="unshift"}function KL(s){return Gw(s).kind===170}function Gw(s){for(;s.kind===209;)s=s.parent.parent;return s}function nbe(s){let c=s.kind;return c===177||c===219||c===263||c===220||c===175||c===178||c===179||c===268||c===308}function ap(s){return kB(s.pos)||kB(s.end)}var JZe=(s=>(s[s.Left=0]="Left",s[s.Right=1]="Right",s))(JZe||{});function ibe(s){let c=Jqe(s),g=s.kind===215&&s.arguments!==void 0;return sbe(s.kind,c,g)}function sbe(s,c,g){switch(s){case 215:return g?0:1;case 225:case 222:case 223:case 221:case 224:case 228:case 230:return 1;case 227:switch(c){case 43:case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 1}}return 0}function J7(s){let c=Jqe(s),g=s.kind===215&&s.arguments!==void 0;return Fne(s.kind,c,g)}function Jqe(s){return s.kind===227?s.operatorToken.kind:s.kind===225||s.kind===226?s.operator:s.kind}var UZe=(s=>(s[s.Comma=0]="Comma",s[s.Spread=1]="Spread",s[s.Yield=2]="Yield",s[s.Assignment=3]="Assignment",s[s.Conditional=4]="Conditional",s[s.LogicalOR=5]="LogicalOR",s[s.Coalesce=5]="Coalesce",s[s.LogicalAND=6]="LogicalAND",s[s.BitwiseOR=7]="BitwiseOR",s[s.BitwiseXOR=8]="BitwiseXOR",s[s.BitwiseAND=9]="BitwiseAND",s[s.Equality=10]="Equality",s[s.Relational=11]="Relational",s[s.Shift=12]="Shift",s[s.Additive=13]="Additive",s[s.Multiplicative=14]="Multiplicative",s[s.Exponentiation=15]="Exponentiation",s[s.Unary=16]="Unary",s[s.Update=17]="Update",s[s.LeftHandSide=18]="LeftHandSide",s[s.Member=19]="Member",s[s.Primary=20]="Primary",s[s.Highest=20]="Highest",s[s.Lowest=0]="Lowest",s[s.Invalid=-1]="Invalid",s))(UZe||{});function Fne(s,c,g){switch(s){case 357:return 0;case 231:return 1;case 230:return 2;case 228:return 4;case 227:switch(c){case 28:return 0;case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 3;default:return Zne(c)}case 217:case 236:case 225:case 222:case 223:case 221:case 224:return 16;case 226:return 17;case 214:return 18;case 215:return g?19:18;case 216:case 212:case 213:case 237:return 19;case 235:case 239:return 11;case 110:case 108:case 80:case 81:case 106:case 112:case 97:case 9:case 10:case 11:case 210:case 211:case 219:case 220:case 232:case 14:case 15:case 229:case 218:case 233:case 285:case 286:case 289:return 20;default:return-1}}function Zne(s){switch(s){case 61:return 5;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function AU(s){return Le(s,c=>{switch(c.kind){case 295:return!!c.expression;case 12:return!c.containsOnlyTriviaWhiteSpaces;default:return!0}})}function RF(){let s=[],c=[],g=new Map,d=!1;return{add:_,lookup:h,getGlobalDiagnostics:S,getDiagnostics:R};function h(T){let O;if(T.file?O=g.get(T.file.fileName):O=s,!O)return;let V=Oc(O,T,Zl,bLe);if(V>=0)return O[V];if(~V>0&&MAe(T,O[~V-1]))return O[~V-1]}function _(T){let O;T.file?(O=g.get(T.file.fileName),O||(O=[],g.set(T.file.fileName,O),Gc(c,T.file.fileName,Ca))):(d&&(d=!1,s=s.slice()),O=s),Gc(O,T,bLe,MAe)}function S(){return d=!0,s}function R(T){if(T)return g.get(T)||[];let O=Bt(c,V=>g.get(V));return s.length&&O.unshift(...s),O}}var Uqe=/\$\{/g;function obe(s){return s.replace(Uqe,"\\${")}function KZe(s){return!!((s.templateFlags||0)&2048)}function abe(s){return s&&!!(MW(s)?KZe(s):KZe(s.head)||zt(s.templateSpans,c=>KZe(c.literal)))}var HVt=/[\\"\u0000-\u001f\u2028\u2029\u0085]/g,U7=/[\\'\u0000-\u001f\u2028\u2029\u0085]/g,YVt=/\r\n|[\\`\u0000-\u0009\u000b-\u001f\u2028\u2029\u0085]/g,QVt=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"}));function Kqe(s){return"\\u"+("0000"+s.toString(16).toUpperCase()).slice(-4)}function XVt(s,c,g){if(s.charCodeAt(0)===0){let d=g.charCodeAt(c+s.length);return d>=48&&d<=57?"\\x00":"\\0"}return QVt.get(s)||Kqe(s.charCodeAt(0))}function KT(s,c){let g=c===96?YVt:c===39?U7:HVt;return s.replace(g,XVt)}var jqe=/[^\u0000-\u007F]/g;function Lne(s,c){return s=KT(s,c),jqe.test(s)?s.replace(jqe,g=>Kqe(g.charCodeAt(0))):s}var JVt=/["\u0000-\u001f\u2028\u2029\u0085]/g,UVt=/['\u0000-\u001f\u2028\u2029\u0085]/g,KVt=new Map(Object.entries({'"':""","'":"'"}));function jVt(s){return"&#x"+s.toString(16).toUpperCase()+";"}function zVt(s){return s.charCodeAt(0)===0?"�":KVt.get(s)||jVt(s.charCodeAt(0))}function cbe(s,c){let g=c===39?UVt:JVt;return s.replace(g,zVt)}function A2(s){let c=s.length;return c>=2&&s.charCodeAt(0)===s.charCodeAt(c-1)&&qVt(s.charCodeAt(0))?s.substring(1,c-1):s}function qVt(s){return s===39||s===34||s===96}function dU(s){let c=s.charCodeAt(0);return c>=97&&c<=122||s.includes("-")}var Vne=[""," "];function yAe(s){let c=Vne[1];for(let g=Vne.length;g<=s;g++)Vne.push(Vne[g-1]+c);return Vne[s]}function Wne(){return Vne[1].length}function One(s){var c,g,d,h,_,S=!1;function R(Ie){let _e=lA(Ie);_e.length>1?(h=h+_e.length-1,_=c.length-Ie.length+Ei(_e),d=_-c.length===0):d=!1}function T(Ie){Ie&&Ie.length&&(d&&(Ie=yAe(g)+Ie,d=!1),c+=Ie,R(Ie))}function O(Ie){Ie&&(S=!1),T(Ie)}function V(Ie){Ie&&(S=!0),T(Ie)}function M(){c="",g=0,d=!0,h=0,_=0,S=!1}function ee(Ie){Ie!==void 0&&(c+=Ie,R(Ie),S=!1)}function re(Ie){Ie&&Ie.length&&O(Ie)}function ge(Ie){(!d||Ie)&&(c+=s,h++,_=c.length,d=!0,S=!1)}return M(),{write:O,rawWrite:ee,writeLiteral:re,writeLine:ge,increaseIndent:()=>{g++},decreaseIndent:()=>{g--},getIndent:()=>g,getTextPos:()=>c.length,getLine:()=>h,getColumn:()=>d?g*Wne():c.length-_,getText:()=>c,isAtStartOfLine:()=>d,hasTrailingComment:()=>S,hasTrailingWhitespace:()=>!!c.length&&dc(c.charCodeAt(c.length-1)),clear:M,writeKeyword:O,writeOperator:O,writeParameter:O,writeProperty:O,writePunctuation:O,writeSpace:O,writeStringLiteral:O,writeSymbol:(Ie,_e)=>O(Ie),writeTrailingSemicolon:O,writeComment:V}}function lbe(s){let c=!1;function g(){c&&(s.writeTrailingSemicolon(";"),c=!1)}return{...s,writeTrailingSemicolon(){c=!0},writeLiteral(d){g(),s.writeLiteral(d)},writeStringLiteral(d){g(),s.writeStringLiteral(d)},writeSymbol(d,h){g(),s.writeSymbol(d,h)},writePunctuation(d){g(),s.writePunctuation(d)},writeKeyword(d){g(),s.writeKeyword(d)},writeOperator(d){g(),s.writeOperator(d)},writeParameter(d){g(),s.writeParameter(d)},writeSpace(d){g(),s.writeSpace(d)},writeProperty(d){g(),s.writeProperty(d)},writeComment(d){g(),s.writeComment(d)},writeLine(){g(),s.writeLine()},increaseIndent(){g(),s.increaseIndent()},decreaseIndent(){g(),s.decreaseIndent()}}}function T3(s){return s.useCaseSensitiveFileNames?s.useCaseSensitiveFileNames():!1}function qD(s){return bd(T3(s))}function K7(s,c,g){return c.moduleName||ube(s,c.fileName,g&&g.fileName)}function zqe(s,c){return s.getCanonicalFileName(Xc(c,s.getCurrentDirectory()))}function jZe(s,c,g){let d=c.getExternalModuleFileFromDeclaration(g);if(!d||d.isDeclarationFile)return;let h=UY(g);if(!(h&&CA(h)&&!mp(h.text)&&!zqe(s,d.path).includes(zqe(s,Cp(s.getCommonSourceDirectory())))))return K7(s,d)}function ube(s,c,g){let d=T=>s.getCanonicalFileName(T),h=Pu(g?Mo(g):s.getCommonSourceDirectory(),s.getCurrentDirectory(),d),_=Xc(c,s.getCurrentDirectory()),S=Hf(h,_,h,d,!1),R=a0(S);return g?Im(R):R}function zZe(s,c,g){let d=c.getCompilerOptions(),h;return d.outDir?h=a0(vAe(s,c,d.outDir)):h=a0(s),h+g}function qZe(s,c){return Pne(s,c.getCompilerOptions(),c)}function Pne(s,c,g){let d=c.declarationDir||c.outDir,h=d?$Ze(s,d,g.getCurrentDirectory(),g.getCommonSourceDirectory(),S=>g.getCanonicalFileName(S)):s,_=bAe(h);return a0(h)+_}function bAe(s){return Iu(s,[".mjs",".mts"])?".d.mts":Iu(s,[".cjs",".cts"])?".d.cts":Iu(s,[".json"])?".d.json.ts":".d.ts"}function gbe(s){return Iu(s,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:Iu(s,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:Iu(s,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function Abe(s,c,g,d){return g?fE(d(),_p(g,s,c)):s}function EAe(s,c){var g;if(s.paths)return s.baseUrl??pe.checkDefined(s.pathsBasePath||((g=c.getCurrentDirectory)==null?void 0:g.call(c)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function SAe(s,c,g){let d=s.getCompilerOptions();if(d.outFile){let h=o0(d),_=d.emitDeclarationOnly||h===2||h===4;return Le(s.getSourceFiles(),S=>(_||!Lm(S))&&kW(S,s,g))}else{let h=c===void 0?s.getSourceFiles():[c];return Le(h,_=>kW(_,s,g))}}function kW(s,c,g){let d=c.getCompilerOptions();if(d.noEmitForJsFiles&&s0(s)||s.isDeclarationFile||c.isSourceFileFromExternalLibrary(s))return!1;if(g)return!0;if(c.isSourceOfProjectReferenceRedirect(s.fileName))return!1;if(!Zu(s))return!0;if(c.getRedirectFromSourceFile(s.fileName))return!1;if(d.outFile)return!0;if(!d.outDir)return!1;if(d.rootDir||d.composite&&d.configFilePath){let h=Xc(jde(d,()=>[],c.getCurrentDirectory(),c.getCanonicalFileName),c.getCurrentDirectory()),_=$Ze(s.fileName,d.outDir,c.getCurrentDirectory(),h,c.getCanonicalFileName);if(tI(s.fileName,_,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0)return!1}return!0}function vAe(s,c,g){return $Ze(s,g,c.getCurrentDirectory(),c.getCommonSourceDirectory(),d=>c.getCanonicalFileName(d))}function $Ze(s,c,g,d,h){let _=Xc(s,g);return _=h(_).indexOf(h(d))===0?_.substring(d.length):_,Ro(c,_)}function BAe(s,c,g,d,h,_,S){s.writeFile(g,d,h,R=>{c.add(kf(Z.Could_not_write_file_0_Colon_1,g,R))},_,S)}function qqe(s,c,g){if(s.length>Mf(s)&&!g(s)){let d=Mo(s);qqe(d,c,g),c(s)}}function dbe(s,c,g,d,h,_){try{d(s,c,g)}catch{qqe(Mo(su(s)),h,_),d(s,c,g)}}function j7(s,c){let g=rn(s);return Wo(g,c)}function pU(s,c){return Wo(s,c)}function pN(s){return de(s.members,c=>Tc(c)&&d1(c.body))}function z7(s){if(s&&s.parameters.length>0){let c=s.parameters.length===2&&NF(s.parameters[0]);return s.parameters[c?1:0]}}function eLe(s){let c=z7(s);return c&&c.type}function xW(s){if(s.parameters.length&&!i9(s)){let c=s.parameters[0];if(NF(c))return c}}function NF(s){return DF(s.name)}function DF(s){return!!s&&s.kind===80&&pbe(s)}function qY(s){return!!ji(s,c=>c.kind===187?!0:c.kind===80||c.kind===167?!1:"quit")}function jL(s){if(!DF(s))return!1;for(;zi(s.parent)&&s.parent.left===s;)s=s.parent;return s.parent.kind===187}function pbe(s){return s.escapedText==="this"}function GW(s,c){let g,d,h,_;return zD(c)?(g=c,c.kind===178?h=c:c.kind===179?_=c:pe.fail("Accessor has wrong kind")):F(s,S=>{if(BB(S)&&lg(S)===lg(c)){let R=w3(S.name),T=w3(c.name);R===T&&(g?d||(d=S):g=S,S.kind===178&&!h&&(h=S),S.kind===179&&!_&&(_=S))}}),{firstAccessor:g,secondAccessor:d,getAccessor:h,setAccessor:_}}function Zh(s){if(!wo(s)&&ah(s)||OB(s))return;let c=s.type;return c||!wo(s)?c:SY(s)?s.typeExpression&&s.typeExpression.type:sN(s)}function tLe(s){return s.type}function Fb(s){return i9(s)?s.type&&s.type.typeExpression&&s.type.typeExpression.type:s.type||(wo(s)?vJ(s):void 0)}function wAe(s){return jt(Rx(s),c=>$qe(c)?c.typeParameters:void 0)}function $qe(s){return PB(s)&&!(s.parent.kind===321&&(s.parent.tags.some(cS)||s.parent.tags.some(kie)))}function fbe(s){let c=z7(s);return c&&Zh(c)}function $Vt(s,c,g,d){eWt(s,c,g.pos,d)}function eWt(s,c,g,d){d&&d.length&&g!==d[0].pos&&pU(s,g)!==pU(s,d[0].pos)&&c.writeLine()}function Ibe(s,c,g,d){g!==d&&pU(s,g)!==pU(s,d)&&c.writeLine()}function tWt(s,c,g,d,h,_,S,R){if(d&&d.length>0){h&&g.writeSpace(" ");let T=!1;for(let O of d)T&&(g.writeSpace(" "),T=!1),R(s,c,g,O.pos,O.end,S),O.hasTrailingNewLine?g.writeLine():T=!0;T&&_&&g.writeSpace(" ")}}function rLe(s,c,g,d,h,_,S){let R,T;if(S?h.pos===0&&(R=Le(mE(s,h.pos),O)):R=mE(s,h.pos),R){let V=[],M;for(let ee of R){if(M){let re=pU(c,M.end);if(pU(c,ee.pos)>=re+2)break}V.push(ee),M=ee}if(V.length){let ee=pU(c,Ei(V).end);pU(c,Yu(s,h.pos))>=ee+2&&($Vt(c,g,h,R),tWt(s,c,g,V,!1,!0,_,d),T={nodePos:h.pos,detachedCommentEndPos:Ei(V).end})}}return T;function O(V){return v7(s,V.pos)}}function fU(s,c,g,d,h,_){if(s.charCodeAt(d+1)===42){let S=Ci(c,d),R=c.length,T;for(let O=d,V=S.line;O0){let ge=re%Wne(),Ie=yAe((re-ge)/Wne());for(g.rawWrite(Ie);ge;)g.rawWrite(" "),ge--}else g.rawWrite("")}rWt(s,h,g,_,O,M),O=M}}else g.writeComment(s.substring(d,h))}function rWt(s,c,g,d,h,_){let S=Math.min(c,_-1),R=s.substring(h,S).trim();R?(g.writeComment(R),S!==c&&g.writeLine()):g.rawWrite(d)}function nLe(s,c,g){let d=0;for(;c=0&&s.kind<=166?0:(s.modifierFlagsCache&536870912||(s.modifierFlagsCache=_be(s)|536870912),g||c&&wo(s)?(!(s.modifierFlagsCache&268435456)&&s.parent&&(s.modifierFlagsCache|=e$e(s)|268435456),t$e(s.modifierFlagsCache)):nWt(s.modifierFlagsCache))}function c_(s){return oLe(s,!0)}function aLe(s){return oLe(s,!0,!0)}function Fx(s){return oLe(s,!1)}function e$e(s){let c=0;return s.parent&&!Si(s)&&(wo(s)&&(Tx(s)&&(c|=8388608),Aa(s)&&(c|=16777216),Ua(s)&&(c|=33554432),mA(s)&&(c|=67108864),Pd(s)&&(c|=134217728)),a2(s)&&(c|=65536)),c}function nWt(s){return s&65535}function t$e(s){return s&131071|(s&260046848)>>>23}function cLe(s){return t$e(e$e(s))}function Cbe(s){return _be(s)|cLe(s)}function _be(s){let c=MB(s)?Zw(s.modifiers):0;return(s.flags&8||s.kind===80&&s.flags&4096)&&(c|=32),c}function Zw(s){let c=0;if(s)for(let g of s)c|=eQ(g.kind);return c}function eQ(s){switch(s){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 171:return 32768}return 0}function Hne(s){return s===57||s===56}function lLe(s){return Hne(s)||s===54}function q7(s){return s===76||s===77||s===78}function TAe(s){return po(s)&&q7(s.operatorToken.kind)}function RAe(s){return Hne(s)||s===61}function Yne(s){return po(s)&&RAe(s.operatorToken.kind)}function $D(s){return s>=64&&s<=79}function ybe(s){let c=bbe(s);return c&&!c.isImplements?c.class:void 0}function bbe(s){if(g_(s)){if(_1(s.parent)&&xa(s.parent.parent))return{class:s.parent.parent,isImplements:s.parent.token===119};if(Zz(s.parent)){let c=XL(s.parent);if(c&&xa(c))return{class:c,isImplements:!1}}}}function zm(s,c){return po(s)&&(c?s.operatorToken.kind===64:$D(s.operatorToken.kind))&&x_(s.left)}function Zx(s){if(zm(s,!0)){let c=s.left.kind;return c===211||c===210}return!1}function NAe(s){return ybe(s)!==void 0}function Hd(s){return s.kind===80||kF(s)}function T0(s){switch(s.kind){case 80:return s;case 167:do s=s.left;while(s.kind!==80);return s;case 212:do s=s.expression;while(s.kind!==80);return s}}function Qne(s){return s.kind===80||s.kind===110||s.kind===108||s.kind===237||s.kind===212&&Qne(s.expression)||s.kind===218&&Qne(s.expression)}function kF(s){return jo(s)&&Ir(s.name)&&Hd(s.expression)}function ZW(s){if(jo(s)){let c=ZW(s.expression);if(c!==void 0)return c+"."+cy(s.name)}else if(Qg(s)){let c=ZW(s.expression);if(c!==void 0&&PI(s.argumentExpression))return c+"."+w3(s.argumentExpression)}else{if(Ir(s))return Bc(s.escapedText);if(sR(s))return Ez(s)}}function xF(s){return RW(s)&&KD(s)==="prototype"}function $7(s){return s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s||s.parent.kind===237&&s.parent.name===s}function Ebe(s){return!!s.parent&&(jo(s.parent)&&s.parent.name===s||Qg(s.parent)&&s.parent.argumentExpression===s)}function uLe(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s||U3(s.parent)&&s.parent.right===s}function DAe(s){return po(s)&&s.operatorToken.kind===104}function gLe(s){return DAe(s.parent)&&s===s.parent.right}function Sbe(s){return s.kind===211&&s.properties.length===0}function ALe(s){return s.kind===210&&s.elements.length===0}function ez(s){if(!(!iWt(s)||!s.declarations)){for(let c of s.declarations)if(c.localSymbol)return c.localSymbol}}function iWt(s){return s&&B(s.declarations)>0&&Ga(s.declarations[0],2048)}function tz(s){return de(GLe,c=>cA(s,c))}function sWt(s){let c=[],g=s.length;for(let d=0;d>6|192),c.push(h&63|128)):h<65536?(c.push(h>>12|224),c.push(h>>6&63|128),c.push(h&63|128)):h<131072?(c.push(h>>18|240),c.push(h>>12&63|128),c.push(h>>6&63|128),c.push(h&63|128)):pe.assert(!1,"Unexpected code point")}return c}var LW="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function vbe(s){let c="",g=sWt(s),d=0,h=g.length,_,S,R,T;for(;d>2,S=(g[d]&3)<<4|g[d+1]>>4,R=(g[d+1]&15)<<2|g[d+2]>>6,T=g[d+2]&63,d+1>=h?R=T=64:d+2>=h&&(T=64),c+=LW.charAt(_)+LW.charAt(S)+LW.charAt(R)+LW.charAt(T),d+=3;return c}function oWt(s){let c="",g=0,d=s.length;for(;g>4&3,V=(S&15)<<4|R>>2&15,M=(R&3)<<6|T&63;V===0&&R!==0?d.push(O):M===0&&T!==0?d.push(O,V):d.push(O,V,M),h+=4}return oWt(d)}function wbe(s,c){let g=Xs(c)?c:c.readFile(s);if(!g)return;let d=IU(g);if(d===void 0){let h=het(s,g);h.error||(d=h.config)}return d}function N3(s,c){return wbe(s,c)||{}}function IU(s){try{return JSON.parse(s)}catch{return}}function m1(s,c){return!c.directoryExists||c.directoryExists(s)}var kAe=`\r +`),c.closeSync(ot),Mc("endDumpTypes"),Pf("Dump types","beginDumpTypes","endDumpTypes")}function Ke(){S&&c.writeFileSync(S,JSON.stringify(R))}s.dumpLegend=Ke})(jl||(jl={}));var hd=jl.startTracing,$f=jl.dumpLegend,Wd=(s=>(s[s.Unknown=0]="Unknown",s[s.EndOfFileToken=1]="EndOfFileToken",s[s.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",s[s.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",s[s.NewLineTrivia=4]="NewLineTrivia",s[s.WhitespaceTrivia=5]="WhitespaceTrivia",s[s.ShebangTrivia=6]="ShebangTrivia",s[s.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",s[s.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",s[s.NumericLiteral=9]="NumericLiteral",s[s.BigIntLiteral=10]="BigIntLiteral",s[s.StringLiteral=11]="StringLiteral",s[s.JsxText=12]="JsxText",s[s.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",s[s.RegularExpressionLiteral=14]="RegularExpressionLiteral",s[s.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",s[s.TemplateHead=16]="TemplateHead",s[s.TemplateMiddle=17]="TemplateMiddle",s[s.TemplateTail=18]="TemplateTail",s[s.OpenBraceToken=19]="OpenBraceToken",s[s.CloseBraceToken=20]="CloseBraceToken",s[s.OpenParenToken=21]="OpenParenToken",s[s.CloseParenToken=22]="CloseParenToken",s[s.OpenBracketToken=23]="OpenBracketToken",s[s.CloseBracketToken=24]="CloseBracketToken",s[s.DotToken=25]="DotToken",s[s.DotDotDotToken=26]="DotDotDotToken",s[s.SemicolonToken=27]="SemicolonToken",s[s.CommaToken=28]="CommaToken",s[s.QuestionDotToken=29]="QuestionDotToken",s[s.LessThanToken=30]="LessThanToken",s[s.LessThanSlashToken=31]="LessThanSlashToken",s[s.GreaterThanToken=32]="GreaterThanToken",s[s.LessThanEqualsToken=33]="LessThanEqualsToken",s[s.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",s[s.EqualsEqualsToken=35]="EqualsEqualsToken",s[s.ExclamationEqualsToken=36]="ExclamationEqualsToken",s[s.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",s[s.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",s[s.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",s[s.PlusToken=40]="PlusToken",s[s.MinusToken=41]="MinusToken",s[s.AsteriskToken=42]="AsteriskToken",s[s.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",s[s.SlashToken=44]="SlashToken",s[s.PercentToken=45]="PercentToken",s[s.PlusPlusToken=46]="PlusPlusToken",s[s.MinusMinusToken=47]="MinusMinusToken",s[s.LessThanLessThanToken=48]="LessThanLessThanToken",s[s.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",s[s.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",s[s.AmpersandToken=51]="AmpersandToken",s[s.BarToken=52]="BarToken",s[s.CaretToken=53]="CaretToken",s[s.ExclamationToken=54]="ExclamationToken",s[s.TildeToken=55]="TildeToken",s[s.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",s[s.BarBarToken=57]="BarBarToken",s[s.QuestionToken=58]="QuestionToken",s[s.ColonToken=59]="ColonToken",s[s.AtToken=60]="AtToken",s[s.QuestionQuestionToken=61]="QuestionQuestionToken",s[s.BacktickToken=62]="BacktickToken",s[s.HashToken=63]="HashToken",s[s.EqualsToken=64]="EqualsToken",s[s.PlusEqualsToken=65]="PlusEqualsToken",s[s.MinusEqualsToken=66]="MinusEqualsToken",s[s.AsteriskEqualsToken=67]="AsteriskEqualsToken",s[s.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",s[s.SlashEqualsToken=69]="SlashEqualsToken",s[s.PercentEqualsToken=70]="PercentEqualsToken",s[s.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",s[s.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",s[s.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",s[s.AmpersandEqualsToken=74]="AmpersandEqualsToken",s[s.BarEqualsToken=75]="BarEqualsToken",s[s.BarBarEqualsToken=76]="BarBarEqualsToken",s[s.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",s[s.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",s[s.CaretEqualsToken=79]="CaretEqualsToken",s[s.Identifier=80]="Identifier",s[s.PrivateIdentifier=81]="PrivateIdentifier",s[s.JSDocCommentTextToken=82]="JSDocCommentTextToken",s[s.BreakKeyword=83]="BreakKeyword",s[s.CaseKeyword=84]="CaseKeyword",s[s.CatchKeyword=85]="CatchKeyword",s[s.ClassKeyword=86]="ClassKeyword",s[s.ConstKeyword=87]="ConstKeyword",s[s.ContinueKeyword=88]="ContinueKeyword",s[s.DebuggerKeyword=89]="DebuggerKeyword",s[s.DefaultKeyword=90]="DefaultKeyword",s[s.DeleteKeyword=91]="DeleteKeyword",s[s.DoKeyword=92]="DoKeyword",s[s.ElseKeyword=93]="ElseKeyword",s[s.EnumKeyword=94]="EnumKeyword",s[s.ExportKeyword=95]="ExportKeyword",s[s.ExtendsKeyword=96]="ExtendsKeyword",s[s.FalseKeyword=97]="FalseKeyword",s[s.FinallyKeyword=98]="FinallyKeyword",s[s.ForKeyword=99]="ForKeyword",s[s.FunctionKeyword=100]="FunctionKeyword",s[s.IfKeyword=101]="IfKeyword",s[s.ImportKeyword=102]="ImportKeyword",s[s.InKeyword=103]="InKeyword",s[s.InstanceOfKeyword=104]="InstanceOfKeyword",s[s.NewKeyword=105]="NewKeyword",s[s.NullKeyword=106]="NullKeyword",s[s.ReturnKeyword=107]="ReturnKeyword",s[s.SuperKeyword=108]="SuperKeyword",s[s.SwitchKeyword=109]="SwitchKeyword",s[s.ThisKeyword=110]="ThisKeyword",s[s.ThrowKeyword=111]="ThrowKeyword",s[s.TrueKeyword=112]="TrueKeyword",s[s.TryKeyword=113]="TryKeyword",s[s.TypeOfKeyword=114]="TypeOfKeyword",s[s.VarKeyword=115]="VarKeyword",s[s.VoidKeyword=116]="VoidKeyword",s[s.WhileKeyword=117]="WhileKeyword",s[s.WithKeyword=118]="WithKeyword",s[s.ImplementsKeyword=119]="ImplementsKeyword",s[s.InterfaceKeyword=120]="InterfaceKeyword",s[s.LetKeyword=121]="LetKeyword",s[s.PackageKeyword=122]="PackageKeyword",s[s.PrivateKeyword=123]="PrivateKeyword",s[s.ProtectedKeyword=124]="ProtectedKeyword",s[s.PublicKeyword=125]="PublicKeyword",s[s.StaticKeyword=126]="StaticKeyword",s[s.YieldKeyword=127]="YieldKeyword",s[s.AbstractKeyword=128]="AbstractKeyword",s[s.AccessorKeyword=129]="AccessorKeyword",s[s.AsKeyword=130]="AsKeyword",s[s.AssertsKeyword=131]="AssertsKeyword",s[s.AssertKeyword=132]="AssertKeyword",s[s.AnyKeyword=133]="AnyKeyword",s[s.AsyncKeyword=134]="AsyncKeyword",s[s.AwaitKeyword=135]="AwaitKeyword",s[s.BooleanKeyword=136]="BooleanKeyword",s[s.ConstructorKeyword=137]="ConstructorKeyword",s[s.DeclareKeyword=138]="DeclareKeyword",s[s.GetKeyword=139]="GetKeyword",s[s.InferKeyword=140]="InferKeyword",s[s.IntrinsicKeyword=141]="IntrinsicKeyword",s[s.IsKeyword=142]="IsKeyword",s[s.KeyOfKeyword=143]="KeyOfKeyword",s[s.ModuleKeyword=144]="ModuleKeyword",s[s.NamespaceKeyword=145]="NamespaceKeyword",s[s.NeverKeyword=146]="NeverKeyword",s[s.OutKeyword=147]="OutKeyword",s[s.ReadonlyKeyword=148]="ReadonlyKeyword",s[s.RequireKeyword=149]="RequireKeyword",s[s.NumberKeyword=150]="NumberKeyword",s[s.ObjectKeyword=151]="ObjectKeyword",s[s.SatisfiesKeyword=152]="SatisfiesKeyword",s[s.SetKeyword=153]="SetKeyword",s[s.StringKeyword=154]="StringKeyword",s[s.SymbolKeyword=155]="SymbolKeyword",s[s.TypeKeyword=156]="TypeKeyword",s[s.UndefinedKeyword=157]="UndefinedKeyword",s[s.UniqueKeyword=158]="UniqueKeyword",s[s.UnknownKeyword=159]="UnknownKeyword",s[s.UsingKeyword=160]="UsingKeyword",s[s.FromKeyword=161]="FromKeyword",s[s.GlobalKeyword=162]="GlobalKeyword",s[s.BigIntKeyword=163]="BigIntKeyword",s[s.OverrideKeyword=164]="OverrideKeyword",s[s.OfKeyword=165]="OfKeyword",s[s.DeferKeyword=166]="DeferKeyword",s[s.QualifiedName=167]="QualifiedName",s[s.ComputedPropertyName=168]="ComputedPropertyName",s[s.TypeParameter=169]="TypeParameter",s[s.Parameter=170]="Parameter",s[s.Decorator=171]="Decorator",s[s.PropertySignature=172]="PropertySignature",s[s.PropertyDeclaration=173]="PropertyDeclaration",s[s.MethodSignature=174]="MethodSignature",s[s.MethodDeclaration=175]="MethodDeclaration",s[s.ClassStaticBlockDeclaration=176]="ClassStaticBlockDeclaration",s[s.Constructor=177]="Constructor",s[s.GetAccessor=178]="GetAccessor",s[s.SetAccessor=179]="SetAccessor",s[s.CallSignature=180]="CallSignature",s[s.ConstructSignature=181]="ConstructSignature",s[s.IndexSignature=182]="IndexSignature",s[s.TypePredicate=183]="TypePredicate",s[s.TypeReference=184]="TypeReference",s[s.FunctionType=185]="FunctionType",s[s.ConstructorType=186]="ConstructorType",s[s.TypeQuery=187]="TypeQuery",s[s.TypeLiteral=188]="TypeLiteral",s[s.ArrayType=189]="ArrayType",s[s.TupleType=190]="TupleType",s[s.OptionalType=191]="OptionalType",s[s.RestType=192]="RestType",s[s.UnionType=193]="UnionType",s[s.IntersectionType=194]="IntersectionType",s[s.ConditionalType=195]="ConditionalType",s[s.InferType=196]="InferType",s[s.ParenthesizedType=197]="ParenthesizedType",s[s.ThisType=198]="ThisType",s[s.TypeOperator=199]="TypeOperator",s[s.IndexedAccessType=200]="IndexedAccessType",s[s.MappedType=201]="MappedType",s[s.LiteralType=202]="LiteralType",s[s.NamedTupleMember=203]="NamedTupleMember",s[s.TemplateLiteralType=204]="TemplateLiteralType",s[s.TemplateLiteralTypeSpan=205]="TemplateLiteralTypeSpan",s[s.ImportType=206]="ImportType",s[s.ObjectBindingPattern=207]="ObjectBindingPattern",s[s.ArrayBindingPattern=208]="ArrayBindingPattern",s[s.BindingElement=209]="BindingElement",s[s.ArrayLiteralExpression=210]="ArrayLiteralExpression",s[s.ObjectLiteralExpression=211]="ObjectLiteralExpression",s[s.PropertyAccessExpression=212]="PropertyAccessExpression",s[s.ElementAccessExpression=213]="ElementAccessExpression",s[s.CallExpression=214]="CallExpression",s[s.NewExpression=215]="NewExpression",s[s.TaggedTemplateExpression=216]="TaggedTemplateExpression",s[s.TypeAssertionExpression=217]="TypeAssertionExpression",s[s.ParenthesizedExpression=218]="ParenthesizedExpression",s[s.FunctionExpression=219]="FunctionExpression",s[s.ArrowFunction=220]="ArrowFunction",s[s.DeleteExpression=221]="DeleteExpression",s[s.TypeOfExpression=222]="TypeOfExpression",s[s.VoidExpression=223]="VoidExpression",s[s.AwaitExpression=224]="AwaitExpression",s[s.PrefixUnaryExpression=225]="PrefixUnaryExpression",s[s.PostfixUnaryExpression=226]="PostfixUnaryExpression",s[s.BinaryExpression=227]="BinaryExpression",s[s.ConditionalExpression=228]="ConditionalExpression",s[s.TemplateExpression=229]="TemplateExpression",s[s.YieldExpression=230]="YieldExpression",s[s.SpreadElement=231]="SpreadElement",s[s.ClassExpression=232]="ClassExpression",s[s.OmittedExpression=233]="OmittedExpression",s[s.ExpressionWithTypeArguments=234]="ExpressionWithTypeArguments",s[s.AsExpression=235]="AsExpression",s[s.NonNullExpression=236]="NonNullExpression",s[s.MetaProperty=237]="MetaProperty",s[s.SyntheticExpression=238]="SyntheticExpression",s[s.SatisfiesExpression=239]="SatisfiesExpression",s[s.TemplateSpan=240]="TemplateSpan",s[s.SemicolonClassElement=241]="SemicolonClassElement",s[s.Block=242]="Block",s[s.EmptyStatement=243]="EmptyStatement",s[s.VariableStatement=244]="VariableStatement",s[s.ExpressionStatement=245]="ExpressionStatement",s[s.IfStatement=246]="IfStatement",s[s.DoStatement=247]="DoStatement",s[s.WhileStatement=248]="WhileStatement",s[s.ForStatement=249]="ForStatement",s[s.ForInStatement=250]="ForInStatement",s[s.ForOfStatement=251]="ForOfStatement",s[s.ContinueStatement=252]="ContinueStatement",s[s.BreakStatement=253]="BreakStatement",s[s.ReturnStatement=254]="ReturnStatement",s[s.WithStatement=255]="WithStatement",s[s.SwitchStatement=256]="SwitchStatement",s[s.LabeledStatement=257]="LabeledStatement",s[s.ThrowStatement=258]="ThrowStatement",s[s.TryStatement=259]="TryStatement",s[s.DebuggerStatement=260]="DebuggerStatement",s[s.VariableDeclaration=261]="VariableDeclaration",s[s.VariableDeclarationList=262]="VariableDeclarationList",s[s.FunctionDeclaration=263]="FunctionDeclaration",s[s.ClassDeclaration=264]="ClassDeclaration",s[s.InterfaceDeclaration=265]="InterfaceDeclaration",s[s.TypeAliasDeclaration=266]="TypeAliasDeclaration",s[s.EnumDeclaration=267]="EnumDeclaration",s[s.ModuleDeclaration=268]="ModuleDeclaration",s[s.ModuleBlock=269]="ModuleBlock",s[s.CaseBlock=270]="CaseBlock",s[s.NamespaceExportDeclaration=271]="NamespaceExportDeclaration",s[s.ImportEqualsDeclaration=272]="ImportEqualsDeclaration",s[s.ImportDeclaration=273]="ImportDeclaration",s[s.ImportClause=274]="ImportClause",s[s.NamespaceImport=275]="NamespaceImport",s[s.NamedImports=276]="NamedImports",s[s.ImportSpecifier=277]="ImportSpecifier",s[s.ExportAssignment=278]="ExportAssignment",s[s.ExportDeclaration=279]="ExportDeclaration",s[s.NamedExports=280]="NamedExports",s[s.NamespaceExport=281]="NamespaceExport",s[s.ExportSpecifier=282]="ExportSpecifier",s[s.MissingDeclaration=283]="MissingDeclaration",s[s.ExternalModuleReference=284]="ExternalModuleReference",s[s.JsxElement=285]="JsxElement",s[s.JsxSelfClosingElement=286]="JsxSelfClosingElement",s[s.JsxOpeningElement=287]="JsxOpeningElement",s[s.JsxClosingElement=288]="JsxClosingElement",s[s.JsxFragment=289]="JsxFragment",s[s.JsxOpeningFragment=290]="JsxOpeningFragment",s[s.JsxClosingFragment=291]="JsxClosingFragment",s[s.JsxAttribute=292]="JsxAttribute",s[s.JsxAttributes=293]="JsxAttributes",s[s.JsxSpreadAttribute=294]="JsxSpreadAttribute",s[s.JsxExpression=295]="JsxExpression",s[s.JsxNamespacedName=296]="JsxNamespacedName",s[s.CaseClause=297]="CaseClause",s[s.DefaultClause=298]="DefaultClause",s[s.HeritageClause=299]="HeritageClause",s[s.CatchClause=300]="CatchClause",s[s.ImportAttributes=301]="ImportAttributes",s[s.ImportAttribute=302]="ImportAttribute",s[s.AssertClause=301]="AssertClause",s[s.AssertEntry=302]="AssertEntry",s[s.ImportTypeAssertionContainer=303]="ImportTypeAssertionContainer",s[s.PropertyAssignment=304]="PropertyAssignment",s[s.ShorthandPropertyAssignment=305]="ShorthandPropertyAssignment",s[s.SpreadAssignment=306]="SpreadAssignment",s[s.EnumMember=307]="EnumMember",s[s.SourceFile=308]="SourceFile",s[s.Bundle=309]="Bundle",s[s.JSDocTypeExpression=310]="JSDocTypeExpression",s[s.JSDocNameReference=311]="JSDocNameReference",s[s.JSDocMemberName=312]="JSDocMemberName",s[s.JSDocAllType=313]="JSDocAllType",s[s.JSDocUnknownType=314]="JSDocUnknownType",s[s.JSDocNullableType=315]="JSDocNullableType",s[s.JSDocNonNullableType=316]="JSDocNonNullableType",s[s.JSDocOptionalType=317]="JSDocOptionalType",s[s.JSDocFunctionType=318]="JSDocFunctionType",s[s.JSDocVariadicType=319]="JSDocVariadicType",s[s.JSDocNamepathType=320]="JSDocNamepathType",s[s.JSDoc=321]="JSDoc",s[s.JSDocComment=321]="JSDocComment",s[s.JSDocText=322]="JSDocText",s[s.JSDocTypeLiteral=323]="JSDocTypeLiteral",s[s.JSDocSignature=324]="JSDocSignature",s[s.JSDocLink=325]="JSDocLink",s[s.JSDocLinkCode=326]="JSDocLinkCode",s[s.JSDocLinkPlain=327]="JSDocLinkPlain",s[s.JSDocTag=328]="JSDocTag",s[s.JSDocAugmentsTag=329]="JSDocAugmentsTag",s[s.JSDocImplementsTag=330]="JSDocImplementsTag",s[s.JSDocAuthorTag=331]="JSDocAuthorTag",s[s.JSDocDeprecatedTag=332]="JSDocDeprecatedTag",s[s.JSDocClassTag=333]="JSDocClassTag",s[s.JSDocPublicTag=334]="JSDocPublicTag",s[s.JSDocPrivateTag=335]="JSDocPrivateTag",s[s.JSDocProtectedTag=336]="JSDocProtectedTag",s[s.JSDocReadonlyTag=337]="JSDocReadonlyTag",s[s.JSDocOverrideTag=338]="JSDocOverrideTag",s[s.JSDocCallbackTag=339]="JSDocCallbackTag",s[s.JSDocOverloadTag=340]="JSDocOverloadTag",s[s.JSDocEnumTag=341]="JSDocEnumTag",s[s.JSDocParameterTag=342]="JSDocParameterTag",s[s.JSDocReturnTag=343]="JSDocReturnTag",s[s.JSDocThisTag=344]="JSDocThisTag",s[s.JSDocTypeTag=345]="JSDocTypeTag",s[s.JSDocTemplateTag=346]="JSDocTemplateTag",s[s.JSDocTypedefTag=347]="JSDocTypedefTag",s[s.JSDocSeeTag=348]="JSDocSeeTag",s[s.JSDocPropertyTag=349]="JSDocPropertyTag",s[s.JSDocThrowsTag=350]="JSDocThrowsTag",s[s.JSDocSatisfiesTag=351]="JSDocSatisfiesTag",s[s.JSDocImportTag=352]="JSDocImportTag",s[s.SyntaxList=353]="SyntaxList",s[s.NotEmittedStatement=354]="NotEmittedStatement",s[s.NotEmittedTypeElement=355]="NotEmittedTypeElement",s[s.PartiallyEmittedExpression=356]="PartiallyEmittedExpression",s[s.CommaListExpression=357]="CommaListExpression",s[s.SyntheticReferenceExpression=358]="SyntheticReferenceExpression",s[s.Count=359]="Count",s[s.FirstAssignment=64]="FirstAssignment",s[s.LastAssignment=79]="LastAssignment",s[s.FirstCompoundAssignment=65]="FirstCompoundAssignment",s[s.LastCompoundAssignment=79]="LastCompoundAssignment",s[s.FirstReservedWord=83]="FirstReservedWord",s[s.LastReservedWord=118]="LastReservedWord",s[s.FirstKeyword=83]="FirstKeyword",s[s.LastKeyword=166]="LastKeyword",s[s.FirstFutureReservedWord=119]="FirstFutureReservedWord",s[s.LastFutureReservedWord=127]="LastFutureReservedWord",s[s.FirstTypeNode=183]="FirstTypeNode",s[s.LastTypeNode=206]="LastTypeNode",s[s.FirstPunctuation=19]="FirstPunctuation",s[s.LastPunctuation=79]="LastPunctuation",s[s.FirstToken=0]="FirstToken",s[s.LastToken=166]="LastToken",s[s.FirstTriviaToken=2]="FirstTriviaToken",s[s.LastTriviaToken=7]="LastTriviaToken",s[s.FirstLiteralToken=9]="FirstLiteralToken",s[s.LastLiteralToken=15]="LastLiteralToken",s[s.FirstTemplateToken=15]="FirstTemplateToken",s[s.LastTemplateToken=18]="LastTemplateToken",s[s.FirstBinaryOperator=30]="FirstBinaryOperator",s[s.LastBinaryOperator=79]="LastBinaryOperator",s[s.FirstStatement=244]="FirstStatement",s[s.LastStatement=260]="LastStatement",s[s.FirstNode=167]="FirstNode",s[s.FirstJSDocNode=310]="FirstJSDocNode",s[s.LastJSDocNode=352]="LastJSDocNode",s[s.FirstJSDocTagNode=328]="FirstJSDocTagNode",s[s.LastJSDocTagNode=352]="LastJSDocTagNode",s[s.FirstContextualKeyword=128]="FirstContextualKeyword",s[s.LastContextualKeyword=166]="LastContextualKeyword",s))(Wd||{}),fC=(s=>(s[s.None=0]="None",s[s.Let=1]="Let",s[s.Const=2]="Const",s[s.Using=4]="Using",s[s.AwaitUsing=6]="AwaitUsing",s[s.NestedNamespace=8]="NestedNamespace",s[s.Synthesized=16]="Synthesized",s[s.Namespace=32]="Namespace",s[s.OptionalChain=64]="OptionalChain",s[s.ExportContext=128]="ExportContext",s[s.ContainsThis=256]="ContainsThis",s[s.HasImplicitReturn=512]="HasImplicitReturn",s[s.HasExplicitReturn=1024]="HasExplicitReturn",s[s.GlobalAugmentation=2048]="GlobalAugmentation",s[s.HasAsyncFunctions=4096]="HasAsyncFunctions",s[s.DisallowInContext=8192]="DisallowInContext",s[s.YieldContext=16384]="YieldContext",s[s.DecoratorContext=32768]="DecoratorContext",s[s.AwaitContext=65536]="AwaitContext",s[s.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",s[s.ThisNodeHasError=262144]="ThisNodeHasError",s[s.JavaScriptFile=524288]="JavaScriptFile",s[s.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",s[s.HasAggregatedChildData=2097152]="HasAggregatedChildData",s[s.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",s[s.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",s[s.JSDoc=16777216]="JSDoc",s[s.Ambient=33554432]="Ambient",s[s.InWithStatement=67108864]="InWithStatement",s[s.JsonFile=134217728]="JsonFile",s[s.TypeCached=268435456]="TypeCached",s[s.Deprecated=536870912]="Deprecated",s[s.BlockScoped=7]="BlockScoped",s[s.Constant=6]="Constant",s[s.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",s[s.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",s[s.ContextFlags=101441536]="ContextFlags",s[s.TypeExcludesFlags=81920]="TypeExcludesFlags",s[s.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",s[s.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",s[s.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",s))(fC||{}),zE=(s=>(s[s.None=0]="None",s[s.Public=1]="Public",s[s.Private=2]="Private",s[s.Protected=4]="Protected",s[s.Readonly=8]="Readonly",s[s.Override=16]="Override",s[s.Export=32]="Export",s[s.Abstract=64]="Abstract",s[s.Ambient=128]="Ambient",s[s.Static=256]="Static",s[s.Accessor=512]="Accessor",s[s.Async=1024]="Async",s[s.Default=2048]="Default",s[s.Const=4096]="Const",s[s.In=8192]="In",s[s.Out=16384]="Out",s[s.Decorator=32768]="Decorator",s[s.Deprecated=65536]="Deprecated",s[s.JSDocPublic=8388608]="JSDocPublic",s[s.JSDocPrivate=16777216]="JSDocPrivate",s[s.JSDocProtected=33554432]="JSDocProtected",s[s.JSDocReadonly=67108864]="JSDocReadonly",s[s.JSDocOverride=134217728]="JSDocOverride",s[s.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",s[s.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",s[s.SyntacticModifiers=65535]="SyntacticModifiers",s[s.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",s[s.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",s[s.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",s[s.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",s[s.HasComputedFlags=536870912]="HasComputedFlags",s[s.AccessibilityModifier=7]="AccessibilityModifier",s[s.ParameterPropertyModifier=31]="ParameterPropertyModifier",s[s.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",s[s.TypeScriptModifier=28895]="TypeScriptModifier",s[s.ExportDefault=2080]="ExportDefault",s[s.All=131071]="All",s[s.Modifier=98303]="Modifier",s))(zE||{}),Um=(s=>(s[s.None=0]="None",s[s.IntrinsicNamedElement=1]="IntrinsicNamedElement",s[s.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",s[s.IntrinsicElement=3]="IntrinsicElement",s))(Um||{}),Ty=(s=>(s[s.None=0]="None",s[s.Succeeded=1]="Succeeded",s[s.Failed=2]="Failed",s[s.ReportsUnmeasurable=8]="ReportsUnmeasurable",s[s.ReportsUnreliable=16]="ReportsUnreliable",s[s.ReportsMask=24]="ReportsMask",s[s.ComplexityOverflow=32]="ComplexityOverflow",s[s.StackDepthOverflow=64]="StackDepthOverflow",s[s.Overflow=96]="Overflow",s))(Ty||{}),q_=(s=>(s[s.None=0]="None",s[s.Always=1]="Always",s[s.Never=2]="Never",s[s.Sometimes=3]="Sometimes",s))(q_||{}),cd=(s=>(s[s.None=0]="None",s[s.Auto=1]="Auto",s[s.Loop=2]="Loop",s[s.Unique=3]="Unique",s[s.Node=4]="Node",s[s.KindMask=7]="KindMask",s[s.ReservedInNestedScopes=8]="ReservedInNestedScopes",s[s.Optimistic=16]="Optimistic",s[s.FileLevel=32]="FileLevel",s[s.AllowNameSubstitution=64]="AllowNameSubstitution",s))(cd||{}),qE=(s=>(s[s.None=0]="None",s[s.HasIndices=1]="HasIndices",s[s.Global=2]="Global",s[s.IgnoreCase=4]="IgnoreCase",s[s.Multiline=8]="Multiline",s[s.DotAll=16]="DotAll",s[s.Unicode=32]="Unicode",s[s.UnicodeSets=64]="UnicodeSets",s[s.Sticky=128]="Sticky",s[s.AnyUnicodeMode=96]="AnyUnicodeMode",s[s.Modifiers=28]="Modifiers",s))(qE||{}),$E=(s=>(s[s.None=0]="None",s[s.PrecedingLineBreak=1]="PrecedingLineBreak",s[s.PrecedingJSDocComment=2]="PrecedingJSDocComment",s[s.Unterminated=4]="Unterminated",s[s.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",s[s.Scientific=16]="Scientific",s[s.Octal=32]="Octal",s[s.HexSpecifier=64]="HexSpecifier",s[s.BinarySpecifier=128]="BinarySpecifier",s[s.OctalSpecifier=256]="OctalSpecifier",s[s.ContainsSeparator=512]="ContainsSeparator",s[s.UnicodeEscape=1024]="UnicodeEscape",s[s.ContainsInvalidEscape=2048]="ContainsInvalidEscape",s[s.HexEscape=4096]="HexEscape",s[s.ContainsLeadingZero=8192]="ContainsLeadingZero",s[s.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",s[s.PrecedingJSDocLeadingAsterisks=32768]="PrecedingJSDocLeadingAsterisks",s[s.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",s[s.WithSpecifier=448]="WithSpecifier",s[s.StringLiteralFlags=7176]="StringLiteralFlags",s[s.NumericLiteralFlags=25584]="NumericLiteralFlags",s[s.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",s[s.IsInvalid=26656]="IsInvalid",s))($E||{}),Xp=(s=>(s[s.Unreachable=1]="Unreachable",s[s.Start=2]="Start",s[s.BranchLabel=4]="BranchLabel",s[s.LoopLabel=8]="LoopLabel",s[s.Assignment=16]="Assignment",s[s.TrueCondition=32]="TrueCondition",s[s.FalseCondition=64]="FalseCondition",s[s.SwitchClause=128]="SwitchClause",s[s.ArrayMutation=256]="ArrayMutation",s[s.Call=512]="Call",s[s.ReduceLabel=1024]="ReduceLabel",s[s.Referenced=2048]="Referenced",s[s.Shared=4096]="Shared",s[s.Label=12]="Label",s[s.Condition=96]="Condition",s))(Xp||{}),qS=(s=>(s[s.ExpectError=0]="ExpectError",s[s.Ignore=1]="Ignore",s))(qS||{}),Ry=class{},ry=(s=>(s[s.RootFile=0]="RootFile",s[s.SourceFromProjectReference=1]="SourceFromProjectReference",s[s.OutputFromProjectReference=2]="OutputFromProjectReference",s[s.Import=3]="Import",s[s.ReferenceFile=4]="ReferenceFile",s[s.TypeReferenceDirective=5]="TypeReferenceDirective",s[s.LibFile=6]="LibFile",s[s.LibReferenceDirective=7]="LibReferenceDirective",s[s.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",s))(ry||{}),yw=(s=>(s[s.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",s[s.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",s[s.ResolutionDiagnostics=2]="ResolutionDiagnostics",s))(yw||{}),j2=(s=>(s[s.Js=0]="Js",s[s.Dts=1]="Dts",s[s.BuilderSignature=2]="BuilderSignature",s))(j2||{}),xc=(s=>(s[s.Not=0]="Not",s[s.SafeModules=1]="SafeModules",s[s.Completely=2]="Completely",s))(xc||{}),gt=(s=>(s[s.Success=0]="Success",s[s.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",s[s.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",s[s.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",s[s.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",s))(gt||{}),ar=(s=>(s[s.Ok=0]="Ok",s[s.NeedsOverride=1]="NeedsOverride",s[s.HasInvalidOverride=2]="HasInvalidOverride",s))(ar||{}),Jr=(s=>(s[s.None=0]="None",s[s.Literal=1]="Literal",s[s.Subtype=2]="Subtype",s))(Jr||{}),Gn=(s=>(s[s.None=0]="None",s[s.NoSupertypeReduction=1]="NoSupertypeReduction",s[s.NoConstraintReduction=2]="NoConstraintReduction",s))(Gn||{}),Ts=(s=>(s[s.None=0]="None",s[s.Signature=1]="Signature",s[s.NoConstraints=2]="NoConstraints",s[s.Completions=4]="Completions",s[s.SkipBindingPatterns=8]="SkipBindingPatterns",s))(Ts||{}),Qo=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",s[s.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",s[s.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",s[s.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",s[s.AllowEmptyTuple=524288]="AllowEmptyTuple",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",s[s.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",s[s.IgnoreErrors=70221824]="IgnoreErrors",s[s.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.InInitialEntityName=16777216]="InInitialEntityName",s))(Qo||{}),Bg=(s=>(s[s.None=0]="None",s[s.WriteComputedProps=1]="WriteComputedProps",s[s.NoSyntacticPrinter=2]="NoSyntacticPrinter",s[s.DoNotIncludeSymbolChain=4]="DoNotIncludeSymbolChain",s[s.AllowUnresolvedNames=8]="AllowUnresolvedNames",s))(Bg||{}),Dg=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AddUndefined=131072]="AddUndefined",s[s.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",s[s.InArrayType=524288]="InArrayType",s[s.InElementType=2097152]="InElementType",s[s.InFirstTypeArgument=4194304]="InFirstTypeArgument",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",s))(Dg||{}),Df=(s=>(s[s.None=0]="None",s[s.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",s[s.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",s[s.AllowAnyNodeKind=4]="AllowAnyNodeKind",s[s.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",s[s.WriteComputedProps=16]="WriteComputedProps",s[s.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",s))(Df||{}),AI=(s=>(s[s.Accessible=0]="Accessible",s[s.NotAccessible=1]="NotAccessible",s[s.CannotBeNamed=2]="CannotBeNamed",s[s.NotResolved=3]="NotResolved",s))(AI||{}),kh=(s=>(s[s.This=0]="This",s[s.Identifier=1]="Identifier",s[s.AssertsThis=2]="AssertsThis",s[s.AssertsIdentifier=3]="AssertsIdentifier",s))(kh||{}),uE=(s=>(s[s.Unknown=0]="Unknown",s[s.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",s[s.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",s[s.NumberLikeType=3]="NumberLikeType",s[s.BigIntLikeType=4]="BigIntLikeType",s[s.StringLikeType=5]="StringLikeType",s[s.BooleanType=6]="BooleanType",s[s.ArrayLikeType=7]="ArrayLikeType",s[s.ESSymbolType=8]="ESSymbolType",s[s.Promise=9]="Promise",s[s.TypeWithCallSignature=10]="TypeWithCallSignature",s[s.ObjectType=11]="ObjectType",s))(uE||{}),GT=(s=>(s[s.None=0]="None",s[s.FunctionScopedVariable=1]="FunctionScopedVariable",s[s.BlockScopedVariable=2]="BlockScopedVariable",s[s.Property=4]="Property",s[s.EnumMember=8]="EnumMember",s[s.Function=16]="Function",s[s.Class=32]="Class",s[s.Interface=64]="Interface",s[s.ConstEnum=128]="ConstEnum",s[s.RegularEnum=256]="RegularEnum",s[s.ValueModule=512]="ValueModule",s[s.NamespaceModule=1024]="NamespaceModule",s[s.TypeLiteral=2048]="TypeLiteral",s[s.ObjectLiteral=4096]="ObjectLiteral",s[s.Method=8192]="Method",s[s.Constructor=16384]="Constructor",s[s.GetAccessor=32768]="GetAccessor",s[s.SetAccessor=65536]="SetAccessor",s[s.Signature=131072]="Signature",s[s.TypeParameter=262144]="TypeParameter",s[s.TypeAlias=524288]="TypeAlias",s[s.ExportValue=1048576]="ExportValue",s[s.Alias=2097152]="Alias",s[s.Prototype=4194304]="Prototype",s[s.ExportStar=8388608]="ExportStar",s[s.Optional=16777216]="Optional",s[s.Transient=33554432]="Transient",s[s.Assignment=67108864]="Assignment",s[s.ModuleExports=134217728]="ModuleExports",s[s.All=-1]="All",s[s.Enum=384]="Enum",s[s.Variable=3]="Variable",s[s.Value=111551]="Value",s[s.Type=788968]="Type",s[s.Namespace=1920]="Namespace",s[s.Module=1536]="Module",s[s.Accessor=98304]="Accessor",s[s.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",s[s.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",s[s.ParameterExcludes=111551]="ParameterExcludes",s[s.PropertyExcludes=0]="PropertyExcludes",s[s.EnumMemberExcludes=900095]="EnumMemberExcludes",s[s.FunctionExcludes=110991]="FunctionExcludes",s[s.ClassExcludes=899503]="ClassExcludes",s[s.InterfaceExcludes=788872]="InterfaceExcludes",s[s.RegularEnumExcludes=899327]="RegularEnumExcludes",s[s.ConstEnumExcludes=899967]="ConstEnumExcludes",s[s.ValueModuleExcludes=110735]="ValueModuleExcludes",s[s.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",s[s.MethodExcludes=103359]="MethodExcludes",s[s.GetAccessorExcludes=46015]="GetAccessorExcludes",s[s.SetAccessorExcludes=78783]="SetAccessorExcludes",s[s.AccessorExcludes=13247]="AccessorExcludes",s[s.TypeParameterExcludes=526824]="TypeParameterExcludes",s[s.TypeAliasExcludes=788968]="TypeAliasExcludes",s[s.AliasExcludes=2097152]="AliasExcludes",s[s.ModuleMember=2623475]="ModuleMember",s[s.ExportHasLocal=944]="ExportHasLocal",s[s.BlockScoped=418]="BlockScoped",s[s.PropertyOrAccessor=98308]="PropertyOrAccessor",s[s.ClassMember=106500]="ClassMember",s[s.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",s[s.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",s[s.Classifiable=2885600]="Classifiable",s[s.LateBindingContainer=6256]="LateBindingContainer",s))(GT||{}),gB=(s=>(s[s.None=0]="None",s[s.Instantiated=1]="Instantiated",s[s.SyntheticProperty=2]="SyntheticProperty",s[s.SyntheticMethod=4]="SyntheticMethod",s[s.Readonly=8]="Readonly",s[s.ReadPartial=16]="ReadPartial",s[s.WritePartial=32]="WritePartial",s[s.HasNonUniformType=64]="HasNonUniformType",s[s.HasLiteralType=128]="HasLiteralType",s[s.ContainsPublic=256]="ContainsPublic",s[s.ContainsProtected=512]="ContainsProtected",s[s.ContainsPrivate=1024]="ContainsPrivate",s[s.ContainsStatic=2048]="ContainsStatic",s[s.Late=4096]="Late",s[s.ReverseMapped=8192]="ReverseMapped",s[s.OptionalParameter=16384]="OptionalParameter",s[s.RestParameter=32768]="RestParameter",s[s.DeferredType=65536]="DeferredType",s[s.HasNeverType=131072]="HasNeverType",s[s.Mapped=262144]="Mapped",s[s.StripOptional=524288]="StripOptional",s[s.Unresolved=1048576]="Unresolved",s[s.Synthetic=6]="Synthetic",s[s.Discriminant=192]="Discriminant",s[s.Partial=48]="Partial",s))(gB||{}),FT=(s=>(s.Call="__call",s.Constructor="__constructor",s.New="__new",s.Index="__index",s.ExportStar="__export",s.Global="__global",s.Missing="__missing",s.Type="__type",s.Object="__object",s.JSXAttributes="__jsxAttributes",s.Class="__class",s.Function="__function",s.Computed="__computed",s.Resolving="__resolving__",s.ExportEquals="export=",s.Default="default",s.This="this",s.InstantiationExpression="__instantiationExpression",s.ImportAttributes="__importAttributes",s))(FT||{}),Ny=(s=>(s[s.None=0]="None",s[s.TypeChecked=1]="TypeChecked",s[s.LexicalThis=2]="LexicalThis",s[s.CaptureThis=4]="CaptureThis",s[s.CaptureNewTarget=8]="CaptureNewTarget",s[s.SuperInstance=16]="SuperInstance",s[s.SuperStatic=32]="SuperStatic",s[s.ContextChecked=64]="ContextChecked",s[s.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",s[s.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",s[s.CaptureArguments=512]="CaptureArguments",s[s.EnumValuesComputed=1024]="EnumValuesComputed",s[s.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",s[s.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",s[s.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",s[s.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",s[s.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",s[s.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",s[s.AssignmentsMarked=131072]="AssignmentsMarked",s[s.ContainsConstructorReference=262144]="ContainsConstructorReference",s[s.ConstructorReference=536870912]="ConstructorReference",s[s.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",s[s.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",s[s.InCheckIdentifier=4194304]="InCheckIdentifier",s[s.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",s[s.LazyFlags=539358128]="LazyFlags",s))(Ny||{}),e1=(s=>(s[s.Any=1]="Any",s[s.Unknown=2]="Unknown",s[s.String=4]="String",s[s.Number=8]="Number",s[s.Boolean=16]="Boolean",s[s.Enum=32]="Enum",s[s.BigInt=64]="BigInt",s[s.StringLiteral=128]="StringLiteral",s[s.NumberLiteral=256]="NumberLiteral",s[s.BooleanLiteral=512]="BooleanLiteral",s[s.EnumLiteral=1024]="EnumLiteral",s[s.BigIntLiteral=2048]="BigIntLiteral",s[s.ESSymbol=4096]="ESSymbol",s[s.UniqueESSymbol=8192]="UniqueESSymbol",s[s.Void=16384]="Void",s[s.Undefined=32768]="Undefined",s[s.Null=65536]="Null",s[s.Never=131072]="Never",s[s.TypeParameter=262144]="TypeParameter",s[s.Object=524288]="Object",s[s.Union=1048576]="Union",s[s.Intersection=2097152]="Intersection",s[s.Index=4194304]="Index",s[s.IndexedAccess=8388608]="IndexedAccess",s[s.Conditional=16777216]="Conditional",s[s.Substitution=33554432]="Substitution",s[s.NonPrimitive=67108864]="NonPrimitive",s[s.TemplateLiteral=134217728]="TemplateLiteral",s[s.StringMapping=268435456]="StringMapping",s[s.Reserved1=536870912]="Reserved1",s[s.Reserved2=1073741824]="Reserved2",s[s.AnyOrUnknown=3]="AnyOrUnknown",s[s.Nullable=98304]="Nullable",s[s.Literal=2944]="Literal",s[s.Unit=109472]="Unit",s[s.Freshable=2976]="Freshable",s[s.StringOrNumberLiteral=384]="StringOrNumberLiteral",s[s.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",s[s.DefinitelyFalsy=117632]="DefinitelyFalsy",s[s.PossiblyFalsy=117724]="PossiblyFalsy",s[s.Intrinsic=67359327]="Intrinsic",s[s.StringLike=402653316]="StringLike",s[s.NumberLike=296]="NumberLike",s[s.BigIntLike=2112]="BigIntLike",s[s.BooleanLike=528]="BooleanLike",s[s.EnumLike=1056]="EnumLike",s[s.ESSymbolLike=12288]="ESSymbolLike",s[s.VoidLike=49152]="VoidLike",s[s.Primitive=402784252]="Primitive",s[s.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",s[s.DisjointDomains=469892092]="DisjointDomains",s[s.UnionOrIntersection=3145728]="UnionOrIntersection",s[s.StructuredType=3670016]="StructuredType",s[s.TypeVariable=8650752]="TypeVariable",s[s.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",s[s.InstantiablePrimitive=406847488]="InstantiablePrimitive",s[s.Instantiable=465829888]="Instantiable",s[s.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",s[s.ObjectFlagsType=3899393]="ObjectFlagsType",s[s.Simplifiable=25165824]="Simplifiable",s[s.Singleton=67358815]="Singleton",s[s.Narrowable=536624127]="Narrowable",s[s.IncludesMask=473694207]="IncludesMask",s[s.IncludesMissingType=262144]="IncludesMissingType",s[s.IncludesNonWideningType=4194304]="IncludesNonWideningType",s[s.IncludesWildcard=8388608]="IncludesWildcard",s[s.IncludesEmptyObject=16777216]="IncludesEmptyObject",s[s.IncludesInstantiable=33554432]="IncludesInstantiable",s[s.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",s[s.IncludesError=1073741824]="IncludesError",s[s.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",s))(e1||{}),$_=(s=>(s[s.None=0]="None",s[s.Class=1]="Class",s[s.Interface=2]="Interface",s[s.Reference=4]="Reference",s[s.Tuple=8]="Tuple",s[s.Anonymous=16]="Anonymous",s[s.Mapped=32]="Mapped",s[s.Instantiated=64]="Instantiated",s[s.ObjectLiteral=128]="ObjectLiteral",s[s.EvolvingArray=256]="EvolvingArray",s[s.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",s[s.ReverseMapped=1024]="ReverseMapped",s[s.JsxAttributes=2048]="JsxAttributes",s[s.JSLiteral=4096]="JSLiteral",s[s.FreshLiteral=8192]="FreshLiteral",s[s.ArrayLiteral=16384]="ArrayLiteral",s[s.PrimitiveUnion=32768]="PrimitiveUnion",s[s.ContainsWideningType=65536]="ContainsWideningType",s[s.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",s[s.NonInferrableType=262144]="NonInferrableType",s[s.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",s[s.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",s[s.SingleSignatureType=134217728]="SingleSignatureType",s[s.ClassOrInterface=3]="ClassOrInterface",s[s.RequiresWidening=196608]="RequiresWidening",s[s.PropagatingFlags=458752]="PropagatingFlags",s[s.InstantiatedMapped=96]="InstantiatedMapped",s[s.ObjectTypeKindMask=1343]="ObjectTypeKindMask",s[s.ContainsSpread=2097152]="ContainsSpread",s[s.ObjectRestType=4194304]="ObjectRestType",s[s.InstantiationExpressionType=8388608]="InstantiationExpressionType",s[s.IsClassInstanceClone=16777216]="IsClassInstanceClone",s[s.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",s[s.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",s[s.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",s[s.IsGenericObjectType=4194304]="IsGenericObjectType",s[s.IsGenericIndexType=8388608]="IsGenericIndexType",s[s.IsGenericType=12582912]="IsGenericType",s[s.ContainsIntersections=16777216]="ContainsIntersections",s[s.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",s[s.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",s[s.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",s[s.IsNeverIntersection=33554432]="IsNeverIntersection",s[s.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",s))($_||{}),ZT=(s=>(s[s.Invariant=0]="Invariant",s[s.Covariant=1]="Covariant",s[s.Contravariant=2]="Contravariant",s[s.Bivariant=3]="Bivariant",s[s.Independent=4]="Independent",s[s.VarianceMask=7]="VarianceMask",s[s.Unmeasurable=8]="Unmeasurable",s[s.Unreliable=16]="Unreliable",s[s.AllowsStructuralFallback=24]="AllowsStructuralFallback",s))(ZT||{}),nf=(s=>(s[s.Required=1]="Required",s[s.Optional=2]="Optional",s[s.Rest=4]="Rest",s[s.Variadic=8]="Variadic",s[s.Fixed=3]="Fixed",s[s.Variable=12]="Variable",s[s.NonRequired=14]="NonRequired",s[s.NonRest=11]="NonRest",s))(nf||{}),Dy=(s=>(s[s.None=0]="None",s[s.IncludeUndefined=1]="IncludeUndefined",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.Writing=4]="Writing",s[s.CacheSymbol=8]="CacheSymbol",s[s.AllowMissing=16]="AllowMissing",s[s.ExpressionPosition=32]="ExpressionPosition",s[s.ReportDeprecated=64]="ReportDeprecated",s[s.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",s[s.Contextual=256]="Contextual",s[s.Persistent=1]="Persistent",s))(Dy||{}),$S=(s=>(s[s.None=0]="None",s[s.StringsOnly=1]="StringsOnly",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.NoReducibleCheck=4]="NoReducibleCheck",s))($S||{}),rh=(s=>(s[s.Component=0]="Component",s[s.Function=1]="Function",s[s.Mixed=2]="Mixed",s))(rh||{}),TA=(s=>(s[s.Call=0]="Call",s[s.Construct=1]="Construct",s))(TA||{}),td=(s=>(s[s.None=0]="None",s[s.HasRestParameter=1]="HasRestParameter",s[s.HasLiteralTypes=2]="HasLiteralTypes",s[s.Abstract=4]="Abstract",s[s.IsInnerCallChain=8]="IsInnerCallChain",s[s.IsOuterCallChain=16]="IsOuterCallChain",s[s.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",s[s.IsNonInferrable=64]="IsNonInferrable",s[s.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",s[s.PropagatingFlags=167]="PropagatingFlags",s[s.CallChainFlags=24]="CallChainFlags",s))(td||{}),Km=(s=>(s[s.String=0]="String",s[s.Number=1]="Number",s))(Km||{}),eI=(s=>(s[s.Simple=0]="Simple",s[s.Array=1]="Array",s[s.Deferred=2]="Deferred",s[s.Function=3]="Function",s[s.Composite=4]="Composite",s[s.Merged=5]="Merged",s))(eI||{}),yb=(s=>(s[s.None=0]="None",s[s.NakedTypeVariable=1]="NakedTypeVariable",s[s.SpeculativeTuple=2]="SpeculativeTuple",s[s.SubstituteSource=4]="SubstituteSource",s[s.HomomorphicMappedType=8]="HomomorphicMappedType",s[s.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",s[s.MappedTypeConstraint=32]="MappedTypeConstraint",s[s.ContravariantConditional=64]="ContravariantConditional",s[s.ReturnType=128]="ReturnType",s[s.LiteralKeyof=256]="LiteralKeyof",s[s.NoConstraints=512]="NoConstraints",s[s.AlwaysStrict=1024]="AlwaysStrict",s[s.MaxValue=2048]="MaxValue",s[s.PriorityImpliesCombination=416]="PriorityImpliesCombination",s[s.Circularity=-1]="Circularity",s))(yb||{}),k_=(s=>(s[s.None=0]="None",s[s.NoDefault=1]="NoDefault",s[s.AnyDefault=2]="AnyDefault",s[s.SkippedGenericFunction=4]="SkippedGenericFunction",s))(k_||{}),bb=(s=>(s[s.False=0]="False",s[s.Unknown=1]="Unknown",s[s.Maybe=3]="Maybe",s[s.True=-1]="True",s))(bb||{}),ky=(s=>(s[s.None=0]="None",s[s.ExportsProperty=1]="ExportsProperty",s[s.ModuleExports=2]="ModuleExports",s[s.PrototypeProperty=3]="PrototypeProperty",s[s.ThisProperty=4]="ThisProperty",s[s.Property=5]="Property",s[s.Prototype=6]="Prototype",s[s.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",s[s.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",s[s.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",s))(ky||{}),ev=(s=>(s[s.Warning=0]="Warning",s[s.Error=1]="Error",s[s.Suggestion=2]="Suggestion",s[s.Message=3]="Message",s))(ev||{});function Eb(s,c=!0){let g=ev[s.category];return c?g.toLowerCase():g}var e0=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s[s.Node10=2]="Node10",s[s.Node16=3]="Node16",s[s.NodeNext=99]="NodeNext",s[s.Bundler=100]="Bundler",s))(e0||{}),t1=(s=>(s[s.Legacy=1]="Legacy",s[s.Auto=2]="Auto",s[s.Force=3]="Force",s))(t1||{}),AB=(s=>(s[s.FixedPollingInterval=0]="FixedPollingInterval",s[s.PriorityPollingInterval=1]="PriorityPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s[s.UseFsEvents=4]="UseFsEvents",s[s.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",s))(AB||{}),LT=(s=>(s[s.UseFsEvents=0]="UseFsEvents",s[s.FixedPollingInterval=1]="FixedPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s))(LT||{}),dB=(s=>(s[s.FixedInterval=0]="FixedInterval",s[s.PriorityInterval=1]="PriorityInterval",s[s.DynamicPriority=2]="DynamicPriority",s[s.FixedChunkSize=3]="FixedChunkSize",s))(dB||{}),tv=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ES2020=6]="ES2020",s[s.ES2022=7]="ES2022",s[s.ESNext=99]="ESNext",s[s.Node16=100]="Node16",s[s.Node18=101]="Node18",s[s.Node20=102]="Node20",s[s.NodeNext=199]="NodeNext",s[s.Preserve=200]="Preserve",s))(tv||{}),qR=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(qR||{}),rv=(s=>(s[s.Remove=0]="Remove",s[s.Preserve=1]="Preserve",s[s.Error=2]="Error",s))(rv||{}),r1=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(r1||{}),z2=(s=>(s[s.Unknown=0]="Unknown",s[s.JS=1]="JS",s[s.JSX=2]="JSX",s[s.TS=3]="TS",s[s.TSX=4]="TSX",s[s.External=5]="External",s[s.JSON=6]="JSON",s[s.Deferred=7]="Deferred",s))(z2||{}),VT=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ES2021=8]="ES2021",s[s.ES2022=9]="ES2022",s[s.ES2023=10]="ES2023",s[s.ES2024=11]="ES2024",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(VT||{}),pn=(s=>(s[s.Standard=0]="Standard",s[s.JSX=1]="JSX",s))(pn||{}),r2=(s=>(s[s.None=0]="None",s[s.Recursive=1]="Recursive",s))(r2||{}),q2=(s=>(s[s.EOF=-1]="EOF",s[s.nullCharacter=0]="nullCharacter",s[s.maxAsciiCharacter=127]="maxAsciiCharacter",s[s.lineFeed=10]="lineFeed",s[s.carriageReturn=13]="carriageReturn",s[s.lineSeparator=8232]="lineSeparator",s[s.paragraphSeparator=8233]="paragraphSeparator",s[s.nextLine=133]="nextLine",s[s.space=32]="space",s[s.nonBreakingSpace=160]="nonBreakingSpace",s[s.enQuad=8192]="enQuad",s[s.emQuad=8193]="emQuad",s[s.enSpace=8194]="enSpace",s[s.emSpace=8195]="emSpace",s[s.threePerEmSpace=8196]="threePerEmSpace",s[s.fourPerEmSpace=8197]="fourPerEmSpace",s[s.sixPerEmSpace=8198]="sixPerEmSpace",s[s.figureSpace=8199]="figureSpace",s[s.punctuationSpace=8200]="punctuationSpace",s[s.thinSpace=8201]="thinSpace",s[s.hairSpace=8202]="hairSpace",s[s.zeroWidthSpace=8203]="zeroWidthSpace",s[s.narrowNoBreakSpace=8239]="narrowNoBreakSpace",s[s.ideographicSpace=12288]="ideographicSpace",s[s.mathematicalSpace=8287]="mathematicalSpace",s[s.ogham=5760]="ogham",s[s.replacementCharacter=65533]="replacementCharacter",s[s._=95]="_",s[s.$=36]="$",s[s._0=48]="_0",s[s._1=49]="_1",s[s._2=50]="_2",s[s._3=51]="_3",s[s._4=52]="_4",s[s._5=53]="_5",s[s._6=54]="_6",s[s._7=55]="_7",s[s._8=56]="_8",s[s._9=57]="_9",s[s.a=97]="a",s[s.b=98]="b",s[s.c=99]="c",s[s.d=100]="d",s[s.e=101]="e",s[s.f=102]="f",s[s.g=103]="g",s[s.h=104]="h",s[s.i=105]="i",s[s.j=106]="j",s[s.k=107]="k",s[s.l=108]="l",s[s.m=109]="m",s[s.n=110]="n",s[s.o=111]="o",s[s.p=112]="p",s[s.q=113]="q",s[s.r=114]="r",s[s.s=115]="s",s[s.t=116]="t",s[s.u=117]="u",s[s.v=118]="v",s[s.w=119]="w",s[s.x=120]="x",s[s.y=121]="y",s[s.z=122]="z",s[s.A=65]="A",s[s.B=66]="B",s[s.C=67]="C",s[s.D=68]="D",s[s.E=69]="E",s[s.F=70]="F",s[s.G=71]="G",s[s.H=72]="H",s[s.I=73]="I",s[s.J=74]="J",s[s.K=75]="K",s[s.L=76]="L",s[s.M=77]="M",s[s.N=78]="N",s[s.O=79]="O",s[s.P=80]="P",s[s.Q=81]="Q",s[s.R=82]="R",s[s.S=83]="S",s[s.T=84]="T",s[s.U=85]="U",s[s.V=86]="V",s[s.W=87]="W",s[s.X=88]="X",s[s.Y=89]="Y",s[s.Z=90]="Z",s[s.ampersand=38]="ampersand",s[s.asterisk=42]="asterisk",s[s.at=64]="at",s[s.backslash=92]="backslash",s[s.backtick=96]="backtick",s[s.bar=124]="bar",s[s.caret=94]="caret",s[s.closeBrace=125]="closeBrace",s[s.closeBracket=93]="closeBracket",s[s.closeParen=41]="closeParen",s[s.colon=58]="colon",s[s.comma=44]="comma",s[s.dot=46]="dot",s[s.doubleQuote=34]="doubleQuote",s[s.equals=61]="equals",s[s.exclamation=33]="exclamation",s[s.greaterThan=62]="greaterThan",s[s.hash=35]="hash",s[s.lessThan=60]="lessThan",s[s.minus=45]="minus",s[s.openBrace=123]="openBrace",s[s.openBracket=91]="openBracket",s[s.openParen=40]="openParen",s[s.percent=37]="percent",s[s.plus=43]="plus",s[s.question=63]="question",s[s.semicolon=59]="semicolon",s[s.singleQuote=39]="singleQuote",s[s.slash=47]="slash",s[s.tilde=126]="tilde",s[s.backspace=8]="backspace",s[s.formFeed=12]="formFeed",s[s.byteOrderMark=65279]="byteOrderMark",s[s.tab=9]="tab",s[s.verticalTab=11]="verticalTab",s))(q2||{}),ny=(s=>(s.Ts=".ts",s.Tsx=".tsx",s.Dts=".d.ts",s.Js=".js",s.Jsx=".jsx",s.Json=".json",s.TsBuildInfo=".tsbuildinfo",s.Mjs=".mjs",s.Mts=".mts",s.Dmts=".d.mts",s.Cjs=".cjs",s.Cts=".cts",s.Dcts=".d.cts",s))(ny||{}),Ap=(s=>(s[s.None=0]="None",s[s.ContainsTypeScript=1]="ContainsTypeScript",s[s.ContainsJsx=2]="ContainsJsx",s[s.ContainsESNext=4]="ContainsESNext",s[s.ContainsES2022=8]="ContainsES2022",s[s.ContainsES2021=16]="ContainsES2021",s[s.ContainsES2020=32]="ContainsES2020",s[s.ContainsES2019=64]="ContainsES2019",s[s.ContainsES2018=128]="ContainsES2018",s[s.ContainsES2017=256]="ContainsES2017",s[s.ContainsES2016=512]="ContainsES2016",s[s.ContainsES2015=1024]="ContainsES2015",s[s.ContainsGenerator=2048]="ContainsGenerator",s[s.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",s[s.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",s[s.ContainsLexicalThis=16384]="ContainsLexicalThis",s[s.ContainsRestOrSpread=32768]="ContainsRestOrSpread",s[s.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",s[s.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",s[s.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",s[s.ContainsBindingPattern=524288]="ContainsBindingPattern",s[s.ContainsYield=1048576]="ContainsYield",s[s.ContainsAwait=2097152]="ContainsAwait",s[s.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",s[s.ContainsDynamicImport=8388608]="ContainsDynamicImport",s[s.ContainsClassFields=16777216]="ContainsClassFields",s[s.ContainsDecorators=33554432]="ContainsDecorators",s[s.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",s[s.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",s[s.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",s[s.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",s[s.HasComputedFlags=-2147483648]="HasComputedFlags",s[s.AssertTypeScript=1]="AssertTypeScript",s[s.AssertJsx=2]="AssertJsx",s[s.AssertESNext=4]="AssertESNext",s[s.AssertES2022=8]="AssertES2022",s[s.AssertES2021=16]="AssertES2021",s[s.AssertES2020=32]="AssertES2020",s[s.AssertES2019=64]="AssertES2019",s[s.AssertES2018=128]="AssertES2018",s[s.AssertES2017=256]="AssertES2017",s[s.AssertES2016=512]="AssertES2016",s[s.AssertES2015=1024]="AssertES2015",s[s.AssertGenerator=2048]="AssertGenerator",s[s.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",s[s.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",s[s.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",s[s.NodeExcludes=-2147483648]="NodeExcludes",s[s.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",s[s.FunctionExcludes=-1937940480]="FunctionExcludes",s[s.ConstructorExcludes=-1937948672]="ConstructorExcludes",s[s.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",s[s.PropertyExcludes=-2013249536]="PropertyExcludes",s[s.ClassExcludes=-2147344384]="ClassExcludes",s[s.ModuleExcludes=-1941676032]="ModuleExcludes",s[s.TypeExcludes=-2]="TypeExcludes",s[s.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",s[s.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",s[s.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",s[s.ParameterExcludes=-2147483648]="ParameterExcludes",s[s.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",s[s.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",s[s.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",s[s.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",s))(Ap||{}),bw=(s=>(s[s.TabStop=0]="TabStop",s[s.Placeholder=1]="Placeholder",s[s.Choice=2]="Choice",s[s.Variable=3]="Variable",s))(bw||{}),pB=(s=>(s[s.None=0]="None",s[s.SingleLine=1]="SingleLine",s[s.MultiLine=2]="MultiLine",s[s.AdviseOnEmitNode=4]="AdviseOnEmitNode",s[s.NoSubstitution=8]="NoSubstitution",s[s.CapturesThis=16]="CapturesThis",s[s.NoLeadingSourceMap=32]="NoLeadingSourceMap",s[s.NoTrailingSourceMap=64]="NoTrailingSourceMap",s[s.NoSourceMap=96]="NoSourceMap",s[s.NoNestedSourceMaps=128]="NoNestedSourceMaps",s[s.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",s[s.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",s[s.NoTokenSourceMaps=768]="NoTokenSourceMaps",s[s.NoLeadingComments=1024]="NoLeadingComments",s[s.NoTrailingComments=2048]="NoTrailingComments",s[s.NoComments=3072]="NoComments",s[s.NoNestedComments=4096]="NoNestedComments",s[s.HelperName=8192]="HelperName",s[s.ExportName=16384]="ExportName",s[s.LocalName=32768]="LocalName",s[s.InternalName=65536]="InternalName",s[s.Indented=131072]="Indented",s[s.NoIndentation=262144]="NoIndentation",s[s.AsyncFunctionBody=524288]="AsyncFunctionBody",s[s.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",s[s.CustomPrologue=2097152]="CustomPrologue",s[s.NoHoisting=4194304]="NoHoisting",s[s.Iterator=8388608]="Iterator",s[s.NoAsciiEscaping=16777216]="NoAsciiEscaping",s))(pB||{}),FD=(s=>(s[s.None=0]="None",s[s.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",s[s.NeverApplyImportHelper=2]="NeverApplyImportHelper",s[s.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",s[s.Immutable=8]="Immutable",s[s.IndirectCall=16]="IndirectCall",s[s.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",s))(FD||{}),Dd={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},$R=(s=>(s[s.Extends=1]="Extends",s[s.Assign=2]="Assign",s[s.Rest=4]="Rest",s[s.Decorate=8]="Decorate",s[s.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",s[s.Metadata=16]="Metadata",s[s.Param=32]="Param",s[s.Awaiter=64]="Awaiter",s[s.Generator=128]="Generator",s[s.Values=256]="Values",s[s.Read=512]="Read",s[s.SpreadArray=1024]="SpreadArray",s[s.Await=2048]="Await",s[s.AsyncGenerator=4096]="AsyncGenerator",s[s.AsyncDelegator=8192]="AsyncDelegator",s[s.AsyncValues=16384]="AsyncValues",s[s.ExportStar=32768]="ExportStar",s[s.ImportStar=65536]="ImportStar",s[s.ImportDefault=131072]="ImportDefault",s[s.MakeTemplateObject=262144]="MakeTemplateObject",s[s.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",s[s.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",s[s.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",s[s.SetFunctionName=4194304]="SetFunctionName",s[s.PropKey=8388608]="PropKey",s[s.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",s[s.RewriteRelativeImportExtension=33554432]="RewriteRelativeImportExtension",s[s.FirstEmitHelper=1]="FirstEmitHelper",s[s.LastEmitHelper=16777216]="LastEmitHelper",s[s.ForOfIncludes=256]="ForOfIncludes",s[s.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",s[s.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",s[s.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",s[s.SpreadIncludes=1536]="SpreadIncludes",s))($R||{}),iy=(s=>(s[s.SourceFile=0]="SourceFile",s[s.Expression=1]="Expression",s[s.IdentifierName=2]="IdentifierName",s[s.MappedTypeParameter=3]="MappedTypeParameter",s[s.Unspecified=4]="Unspecified",s[s.EmbeddedStatement=5]="EmbeddedStatement",s[s.JsxAttributeValue=6]="JsxAttributeValue",s[s.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",s))(iy||{}),fF=(s=>(s[s.Parentheses=1]="Parentheses",s[s.TypeAssertions=2]="TypeAssertions",s[s.NonNullAssertions=4]="NonNullAssertions",s[s.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",s[s.ExpressionsWithTypeArguments=16]="ExpressionsWithTypeArguments",s[s.Satisfies=32]="Satisfies",s[s.Assertions=38]="Assertions",s[s.All=63]="All",s[s.ExcludeJSDocTypeAssertion=-2147483648]="ExcludeJSDocTypeAssertion",s))(fF||{}),n2=(s=>(s[s.None=0]="None",s[s.InParameters=1]="InParameters",s[s.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",s))(n2||{}),n1=(s=>(s[s.None=0]="None",s[s.SingleLine=0]="SingleLine",s[s.MultiLine=1]="MultiLine",s[s.PreserveLines=2]="PreserveLines",s[s.LinesMask=3]="LinesMask",s[s.NotDelimited=0]="NotDelimited",s[s.BarDelimited=4]="BarDelimited",s[s.AmpersandDelimited=8]="AmpersandDelimited",s[s.CommaDelimited=16]="CommaDelimited",s[s.AsteriskDelimited=32]="AsteriskDelimited",s[s.DelimitersMask=60]="DelimitersMask",s[s.AllowTrailingComma=64]="AllowTrailingComma",s[s.Indented=128]="Indented",s[s.SpaceBetweenBraces=256]="SpaceBetweenBraces",s[s.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",s[s.Braces=1024]="Braces",s[s.Parenthesis=2048]="Parenthesis",s[s.AngleBrackets=4096]="AngleBrackets",s[s.SquareBrackets=8192]="SquareBrackets",s[s.BracketsMask=15360]="BracketsMask",s[s.OptionalIfUndefined=16384]="OptionalIfUndefined",s[s.OptionalIfEmpty=32768]="OptionalIfEmpty",s[s.Optional=49152]="Optional",s[s.PreferNewLine=65536]="PreferNewLine",s[s.NoTrailingNewLine=131072]="NoTrailingNewLine",s[s.NoInterveningComments=262144]="NoInterveningComments",s[s.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",s[s.SingleElement=1048576]="SingleElement",s[s.SpaceAfterList=2097152]="SpaceAfterList",s[s.Modifiers=2359808]="Modifiers",s[s.HeritageClauses=512]="HeritageClauses",s[s.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",s[s.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",s[s.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",s[s.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",s[s.UnionTypeConstituents=516]="UnionTypeConstituents",s[s.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",s[s.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",s[s.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",s[s.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",s[s.ImportAttributes=526226]="ImportAttributes",s[s.ImportClauseEntries=526226]="ImportClauseEntries",s[s.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",s[s.CommaListElements=528]="CommaListElements",s[s.CallExpressionArguments=2576]="CallExpressionArguments",s[s.NewExpressionArguments=18960]="NewExpressionArguments",s[s.TemplateExpressionSpans=262144]="TemplateExpressionSpans",s[s.SingleLineBlockStatements=768]="SingleLineBlockStatements",s[s.MultiLineBlockStatements=129]="MultiLineBlockStatements",s[s.VariableDeclarationList=528]="VariableDeclarationList",s[s.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",s[s.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",s[s.ClassHeritageClauses=0]="ClassHeritageClauses",s[s.ClassMembers=129]="ClassMembers",s[s.InterfaceMembers=129]="InterfaceMembers",s[s.EnumMembers=145]="EnumMembers",s[s.CaseBlockClauses=129]="CaseBlockClauses",s[s.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",s[s.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",s[s.JsxElementAttributes=262656]="JsxElementAttributes",s[s.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",s[s.HeritageClauseTypes=528]="HeritageClauseTypes",s[s.SourceFileStatements=131073]="SourceFileStatements",s[s.Decorators=2146305]="Decorators",s[s.TypeArguments=53776]="TypeArguments",s[s.TypeParameters=53776]="TypeParameters",s[s.Parameters=2576]="Parameters",s[s.IndexSignatureParameters=8848]="IndexSignatureParameters",s[s.JSDocComment=33]="JSDocComment",s))(n1||{}),x_=(s=>(s[s.None=0]="None",s[s.TripleSlashXML=1]="TripleSlashXML",s[s.SingleLine=2]="SingleLine",s[s.MultiLine=4]="MultiLine",s[s.All=7]="All",s[s.Default=7]="Default",s))(x_||{}),i1={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},{name:"preserve",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}},s1=(s=>(s[s.ParseAll=0]="ParseAll",s[s.ParseNone=1]="ParseNone",s[s.ParseForTypeErrors=2]="ParseForTypeErrors",s[s.ParseForTypeInfo=3]="ParseForTypeInfo",s))(s1||{});function sy(s){let c=5381;for(let g=0;g(s[s.Created=0]="Created",s[s.Changed=1]="Changed",s[s.Deleted=2]="Deleted",s))(Sb||{}),s_=(s=>(s[s.High=2e3]="High",s[s.Medium=500]="Medium",s[s.Low=250]="Low",s))(s_||{}),xh=new Date(0);function vb(s,c){return s.getModifiedTime(c)||xh}function fB(s){return{250:s.Low,500:s.Medium,2e3:s.High}}var ZD={Low:32,Medium:64,High:256},LD=fB(ZD),t0=fB(ZD);function VD(s){if(!s.getEnvironmentVariable)return;let c=h("TSC_WATCH_POLLINGINTERVAL",s_);LD=_("TSC_WATCH_POLLINGCHUNKSIZE",ZD)||LD,t0=_("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",ZD)||t0;function g(S,R){return s.getEnvironmentVariable(`${S}_${R.toUpperCase()}`)}function d(S){let R;return T("Low"),T("Medium"),T("High"),R;function T(O){let V=g(S,O);V&&((R||(R={}))[O]=Number(V))}}function h(S,R){let T=d(S);if(T)return O("Low"),O("Medium"),O("High"),!0;return!1;function O(V){R[V]=T[V]||R[V]}}function _(S,R){let T=d(S);return(c||T)&&fB(T?{...R,...T}:R)}}function eN(s,c,g,d,h){let _=g;for(let R=c.length;d&&R;S(),R--){let T=c[g];if(T){if(T.isClosed){c[g]=void 0;continue}}else continue;d--;let O=gE(T,vb(s,T.fileName));if(T.isClosed){c[g]=void 0;continue}h?.(T,g,O),c[g]&&(_{Te.isClosed=!0,rf(c,Te)}}}function R(_e){let Ee=[];return Ee.pollingInterval=_e,Ee.pollIndex=0,Ee.pollScheduled=!1,Ee}function T(_e,Ee){Ee.pollIndex=V(Ee,Ee.pollingInterval,Ee.pollIndex,LD[Ee.pollingInterval]),Ee.length?Ie(Ee.pollingInterval):(pe.assert(Ee.pollIndex===0),Ee.pollScheduled=!1)}function O(_e,Ee){V(g,250,0,g.length),T(_e,Ee),!Ee.pollScheduled&&g.length&&Ie(250)}function V(_e,Ee,Ne,Te){return eN(s,_e,Ne,Te,Ze);function Ze(Pe,Ke,et){et?(Pe.unchangedPolls=0,_e!==g&&(_e[Ke]=void 0,re(Pe))):Pe.unchangedPolls!==t0[Ee]?Pe.unchangedPolls++:_e===g?(Pe.unchangedPolls=1,_e[Ke]=void 0,ee(Pe,250)):Ee!==2e3&&(Pe.unchangedPolls++,_e[Ke]=void 0,ee(Pe,Ee===250?500:2e3))}}function M(_e){switch(_e){case 250:return d;case 500:return h;case 2e3:return _}}function ee(_e,Ee){M(Ee).push(_e),ge(Ee)}function re(_e){g.push(_e),ge(250)}function ge(_e){M(_e).pollScheduled||Ie(_e)}function Ie(_e){M(_e).pollScheduled=s.setTimeout(_e===250?O:T,_e,_e===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",M(_e))}}function Ch(s,c,g,d){let h=Al(),_=d?new Map:void 0,S=new Map,R=bd(c);return T;function T(V,M,ee,re){let ge=R(V);h.add(ge,M).length===1&&_&&_.set(ge,g(V)||xh);let Ie=Mo(ge)||".",_e=S.get(Ie)||O(Mo(V)||".",Ie,re);return _e.referenceCount++,{close:()=>{_e.referenceCount===1?(_e.close(),S.delete(Ie)):_e.referenceCount--,h.remove(ge,M)}}}function O(V,M,ee){let re=s(V,1,(ge,Ie)=>{if(!Xs(Ie))return;let _e=Xc(Ie,V),Ee=R(_e),Ne=_e&&h.get(Ee);if(Ne){let Te,Ze=1;if(_){let Pe=_.get(Ee);if(ge==="change"&&(Te=g(_e)||xh,Te.getTime()===Pe.getTime()))return;Te||(Te=g(_e)||xh),_.set(Ee,Te),Pe===xh?Ze=0:Te===xh&&(Ze=2)}for(let Pe of Ne)Pe(_e,Ze,Te)}},!1,500,ee);return re.referenceCount=0,S.set(M,re),re}}function sf(s){let c=[],g=0,d;return h;function h(R,T){let O={fileName:R,callback:T,mtime:vb(s,R)};return c.push(O),S(),{close:()=>{O.isClosed=!0,rf(c,O)}}}function _(){d=void 0,g=eN(s,c,g,LD[250]),S()}function S(){!c.length||d||(d=s.setTimeout(_,2e3,"pollQueue"))}}function EI(s,c,g,d,h){let S=bd(c)(g),R=s.get(S);return R?R.callbacks.push(d):s.set(S,{watcher:h((T,O,V)=>{var M;return(M=s.get(S))==null?void 0:M.callbacks.slice().forEach(ee=>ee(T,O,V))}),callbacks:[d]}),{close:()=>{let T=s.get(S);T&&(!Xl(T.callbacks,d)||T.callbacks.length||(s.delete(S),Sv(T)))}}}function gE(s,c){let g=s.mtime.getTime(),d=c.getTime();return g!==d?(s.mtime=c,s.callback(s.fileName,nv(g,d),c),!0):!1}function nv(s,c){return s===0?0:c===0?2:1}var Jp=["/node_modules/.","/.git","/.#"],IB=Dc;function _h(s){return IB(s)}function ZC(s){IB=s}function r0({watchDirectory:s,useCaseSensitiveFileNames:c,getCurrentDirectory:g,getAccessibleSortedChildDirectories:d,fileSystemEntryExists:h,realpath:_,setTimeout:S,clearTimeout:R}){let T=new Map,O=Al(),V=new Map,M,ee=gd(!c),re=bd(c);return(Ye,Tt,at,Qe)=>at?ge(Ye,Qe,Tt):s(Ye,Tt,at,Qe);function ge(Ye,Tt,at,Qe){let Ct=re(Ye),mt=T.get(Ct);mt?mt.refCount++:(mt={watcher:s(Ye,Rt=>{var Lt;Ke(Rt,Tt)||(Tt?.synchronousWatchDirectory?((Lt=T.get(Ct))!=null&&Lt.targetWatcher||Ie(Ye,Ct,Rt),Pe(Ye,Ct,Tt)):_e(Ye,Ct,Rt,Tt))},!1,Tt),refCount:1,childWatches:E,targetWatcher:void 0,links:void 0},T.set(Ct,mt),Pe(Ye,Ct,Tt)),Qe&&(mt.links??(mt.links=new Set)).add(Qe);let yt=at&&{dirName:Ye,callback:at};return yt&&O.add(Ct,yt),{dirName:Ye,close:()=>{var Rt;let Lt=pe.checkDefined(T.get(Ct));yt&&O.remove(Ct,yt),Qe&&((Rt=Lt.links)==null||Rt.delete(Qe)),Lt.refCount--,!Lt.refCount&&(T.delete(Ct),Lt.links=void 0,Sv(Lt),Ze(Lt),Lt.childWatches.forEach(mv))}}}function Ie(Ye,Tt,at,Qe){var Ct,mt;let yt,Rt;Xs(at)?yt=at:Rt=at,O.forEach((Lt,je)=>{if(!(Rt&&Rt.get(je)===!0)&&(je===Tt||Ac(Tt,je)&&Tt[je.length]===cg))if(Rt)if(Qe){let Wt=Rt.get(je);Wt?Wt.push(...Qe):Rt.set(je,Qe.slice())}else Rt.set(je,!0);else Lt.forEach(({callback:Wt})=>Wt(yt))}),(mt=(Ct=T.get(Tt))==null?void 0:Ct.links)==null||mt.forEach(Lt=>{let je=Wt=>To(Lt,_p(Ye,Wt,re));Rt?Ie(Lt,re(Lt),Rt,Qe?.map(je)):Ie(Lt,re(Lt),je(yt))})}function _e(Ye,Tt,at,Qe){let Ct=T.get(Tt);if(Ct&&h(Ye,1)){Ee(Ye,Tt,at,Qe);return}Ie(Ye,Tt,at),Ze(Ct),Te(Ct)}function Ee(Ye,Tt,at,Qe){let Ct=V.get(Tt);Ct?Ct.fileNames.push(at):V.set(Tt,{dirName:Ye,options:Qe,fileNames:[at]}),M&&(R(M),M=void 0),M=S(Ne,1e3,"timerToUpdateChildWatches")}function Ne(){var Ye;M=void 0,_h(`sysLog:: onTimerToUpdateChildWatches:: ${V.size}`);let Tt=Zg(),at=new Map;for(;!M&&V.size;){let Ct=V.entries().next();pe.assert(!Ct.done);let{value:[mt,{dirName:yt,options:Rt,fileNames:Lt}]}=Ct;V.delete(mt);let je=Pe(yt,mt,Rt);(Ye=T.get(mt))!=null&&Ye.targetWatcher||Ie(yt,mt,at,je?void 0:Lt)}_h(`sysLog:: invokingWatchers:: Elapsed:: ${Zg()-Tt}ms:: ${V.size}`),O.forEach((Ct,mt)=>{let yt=at.get(mt);yt&&Ct.forEach(({callback:Rt,dirName:Lt})=>{Ki(yt)?yt.forEach(Rt):Rt(Lt)})});let Qe=Zg()-Tt;_h(`sysLog:: Elapsed:: ${Qe}ms:: onTimerToUpdateChildWatches:: ${V.size} ${M}`)}function Te(Ye){if(!Ye)return;let Tt=Ye.childWatches;Ye.childWatches=E;for(let at of Tt)at.close(),Te(T.get(re(at.dirName)))}function Ze(Ye){Ye?.targetWatcher&&(Ye.targetWatcher.close(),Ye.targetWatcher=void 0)}function Pe(Ye,Tt,at){let Qe=T.get(Tt);if(!Qe)return!1;let Ct=su(_(Ye)),mt,yt;return ee(Ct,Ye)===0?mt=ty(h(Ye,1)?Xt(d(Ye),je=>{let Wt=Xc(je,Ye);return!Ke(Wt,at)&&ee(Wt,su(_(Wt)))===0?Wt:void 0}):E,Qe.childWatches,(je,Wt)=>ee(je,Wt.dirName),Rt,mv,Lt):Qe.targetWatcher&&ee(Ct,Qe.targetWatcher.dirName)===0?(mt=!1,pe.assert(Qe.childWatches===E)):(Ze(Qe),Qe.targetWatcher=ge(Ct,at,void 0,Ye),Qe.childWatches.forEach(mv),mt=!0),Qe.childWatches=yt||E,mt;function Rt(je){let Wt=ge(je,at);Lt(Wt)}function Lt(je){(yt||(yt=[])).push(je)}}function Ke(Ye,Tt){return zt(Jp,at=>et(Ye,at))||OT(Ye,Tt,c,g)}function et(Ye,Tt){return Ye.includes(Tt)?!0:c?!1:re(Ye).includes(Tt)}}var o1=(s=>(s[s.File=0]="File",s[s.Directory=1]="Directory",s))(o1||{});function hB(s){return(c,g,d)=>s(g===1?"change":"rename","",d)}function Ew(s,c,g){return(d,h,_)=>{d==="rename"?(_||(_=g(s)||xh),c(s,_!==xh?0:2,_)):c(s,1,_)}}function OT(s,c,g,d){return(c?.excludeDirectories||c?.excludeFiles)&&(U9e(s,c?.excludeFiles,g,d())||U9e(s,c?.excludeDirectories,g,d()))}function v0(s,c,g,d,h){return(_,S)=>{if(_==="rename"){let R=S?su(To(s,S)):s;(!S||!OT(R,g,d,h))&&c(R)}}}function ia({pollingWatchFileWorker:s,getModifiedTime:c,setTimeout:g,clearTimeout:d,fsWatchWorker:h,fileSystemEntryExists:_,useCaseSensitiveFileNames:S,getCurrentDirectory:R,fsSupportsRecursiveFsWatch:T,getAccessibleSortedChildDirectories:O,realpath:V,tscWatchFile:M,useNonPollingWatchers:ee,tscWatchDirectory:re,inodeWatching:ge,fsWatchWithTimestamp:Ie,sysLog:_e}){let Ee=new Map,Ne=new Map,Te=new Map,Ze,Pe,Ke,et,Ye=!1;return{watchFile:Tt,watchDirectory:yt};function Tt(it,Dt,tr,ur){ur=Ct(ur,ee);let Gr=pe.checkDefined(ur.watchFile);switch(Gr){case 0:return je(it,Dt,250,void 0);case 1:return je(it,Dt,tr,void 0);case 2:return at()(it,Dt,tr,void 0);case 3:return Qe()(it,Dt,void 0,void 0);case 4:return Wt(it,0,Ew(it,Dt,c),!1,tr,d1e(ur));case 5:return Ke||(Ke=Ch(Wt,S,c,Ie)),Ke(it,Dt,tr,d1e(ur));default:pe.assertNever(Gr)}}function at(){return Ze||(Ze=lc({getModifiedTime:c,setTimeout:g}))}function Qe(){return Pe||(Pe=sf({getModifiedTime:c,setTimeout:g}))}function Ct(it,Dt){if(it&&it.watchFile!==void 0)return it;switch(M){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return mt(4,1,it);case"UseFsEventsWithFallbackDynamicPolling":return mt(4,2,it);case"UseFsEventsOnParentDirectory":Dt=!0;default:return Dt?mt(5,1,it):{watchFile:4}}}function mt(it,Dt,tr){let ur=tr?.fallbackPolling;return{watchFile:it,fallbackPolling:ur===void 0?Dt:ur}}function yt(it,Dt,tr,ur){return T?Wt(it,1,v0(it,Dt,ur,S,R),tr,500,d1e(ur)):(et||(et=r0({useCaseSensitiveFileNames:S,getCurrentDirectory:R,fileSystemEntryExists:_,getAccessibleSortedChildDirectories:O,watchDirectory:Rt,realpath:V,setTimeout:g,clearTimeout:d})),et(it,Dt,tr,ur))}function Rt(it,Dt,tr,ur){pe.assert(!tr);let Gr=Lt(ur),dt=pe.checkDefined(Gr.watchDirectory);switch(dt){case 1:return je(it,()=>Dt(it),500,void 0);case 2:return at()(it,()=>Dt(it),500,void 0);case 3:return Qe()(it,()=>Dt(it),void 0,void 0);case 0:return Wt(it,1,v0(it,Dt,ur,S,R),tr,500,d1e(Gr));default:pe.assertNever(dt)}}function Lt(it){if(it&&it.watchDirectory!==void 0)return it;switch(re){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let Dt=it?.fallbackPolling;return{watchDirectory:0,fallbackPolling:Dt!==void 0?Dt:void 0}}}function je(it,Dt,tr,ur){return EI(Ee,S,it,Dt,Gr=>s(it,Gr,tr,ur))}function Wt(it,Dt,tr,ur,Gr,dt){return EI(ur?Te:Ne,S,it,tr,pr=>_r(it,Dt,pr,ur,Gr,dt))}function _r(it,Dt,tr,ur,Gr,dt){let pr,ot;ge&&(pr=it.substring(it.lastIndexOf(cg)),ot=pr.slice(cg.length));let ir=_(it,Dt)?Yt():jn();return{close:()=>{ir&&(ir.close(),ir=void 0)}};function qt(Zi){ir&&(_e(`sysLog:: ${it}:: Changing watcher to ${Zi===Yt?"Present":"Missing"}FileSystemEntryWatcher`),ir.close(),ir=Zi())}function Yt(){if(Ye)return _e(`sysLog:: ${it}:: Defaulting to watchFile`),mn();try{let Zi=(Dt===1||!Ie?h:Gt)(it,ur,ge?Tr:tr);return Zi.on("error",()=>{tr("rename",""),qt(jn)}),Zi}catch(Zi){return Ye||(Ye=Zi.code==="ENOSPC"),_e(`sysLog:: ${it}:: Changing to watchFile`),mn()}}function Tr(Zi,Ns){let An;if(Ns&&di(Ns,"~")&&(An=Ns,Ns=Ns.slice(0,Ns.length-1)),Zi==="rename"&&(!Ns||Ns===ot||di(Ns,pr))){let si=c(it)||xh;An&&tr(Zi,An,si),tr(Zi,Ns,si),ge?qt(si===xh?jn:Yt):si===xh&&qt(jn)}else An&&tr(Zi,An),tr(Zi,Ns)}function mn(){return Tt(it,hB(tr),Gr,dt)}function jn(){return Tt(it,(Zi,Ns,An)=>{Ns===0&&(An||(An=c(it)||xh),An!==xh&&(tr("rename","",An),qt(Yt)))},Gr,dt)}}function Gt(it,Dt,tr){let ur=c(it)||xh;return h(it,Dt,(Gr,dt,pr)=>{Gr==="change"&&(pr||(pr=c(it)||xh),pr.getTime()===ur.getTime())||(ur=pr||c(it)||xh,tr(Gr,dt,ur))})}}function i2(s){let c=s.writeFile;s.writeFile=(g,d,h)=>dbe(g,d,!!h,(_,S,R)=>c.call(s,_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_))}var Ed=(()=>{let s="\uFEFF";function c(){let d=/^native |^\([^)]+\)$|^(?:internal[\\/]|[\w\s]+(?:\.js)?$)/,h=Et("fs"),_=Et("path"),S=Et("os"),R;try{R=Et("crypto")}catch{R=void 0}let T,O="./profile.cpuprofile",V=process.platform==="darwin",M=process.platform==="linux"||V,ee={throwIfNoEntry:!1},re=S.platform(),ge=at(),Ie=h.realpathSync.native?process.platform==="win32"?Dt:h.realpathSync.native:h.realpathSync,_e=__filename.endsWith("sys.js")?_.join(_.dirname(__dirname),"__fake__.js"):__filename,Ee=process.platform==="win32"||V,Ne=LA(()=>process.cwd()),{watchFile:Te,watchDirectory:Ze}=ia({pollingWatchFileWorker:Ct,getModifiedTime:ur,setTimeout,clearTimeout,fsWatchWorker:mt,useCaseSensitiveFileNames:ge,getCurrentDirectory:Ne,fileSystemEntryExists:Wt,fsSupportsRecursiveFsWatch:Ee,getAccessibleSortedChildDirectories:ot=>Lt(ot).directories,realpath:tr,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:M,fsWatchWithTimestamp:V,sysLog:_h}),Pe={args:process.argv.slice(2),newLine:S.EOL,useCaseSensitiveFileNames:ge,write(ot){process.stdout.write(ot)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:yt,writeFile:Rt,watchFile:Te,watchDirectory:Ze,preferNonRecursiveWatch:!Ee,resolvePath:ot=>_.resolve(ot),fileExists:_r,directoryExists:Gt,getAccessibleFileSystemEntries:Lt,createDirectory(ot){if(!Pe.directoryExists(ot))try{h.mkdirSync(ot)}catch(ir){if(ir.code!=="EEXIST")throw ir}},getExecutingFilePath(){return _e},getCurrentDirectory:Ne,getDirectories:it,getEnvironmentVariable(ot){return process.env[ot]||""},readDirectory:je,getModifiedTime:ur,setModifiedTime:Gr,deleteFile:dt,createHash:R?pr:sy,createSHA256Hash:R?pr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(ot){let ir=Ke(ot);return ir?.isFile()?ir.size:0},exit(ot){Tt(()=>process.exit(ot))},enableCPUProfiler:et,disableCPUProfiler:Tt,cpuProfilingEnabled:()=>!!T||k(process.execArgv,"--cpu-prof")||k(process.execArgv,"--prof"),realpath:tr,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||zt(process.execArgv,ot=>/^--(?:inspect|debug)(?:-brk)?(?:=\d+)?$/i.test(ot))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{Et("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H")},setBlocking:()=>{var ot;let ir=(ot=process.stdout)==null?void 0:ot._handle;ir&&ir.setBlocking&&ir.setBlocking(!0)},base64decode:ot=>Buffer.from(ot,"base64").toString("utf8"),base64encode:ot=>Buffer.from(ot).toString("base64"),require:(ot,ir)=>{try{let qt=SPt(ir,ot,Pe);return{module:Et(qt),modulePath:qt,error:void 0}}catch(qt){return{module:void 0,modulePath:void 0,error:qt}}}};return Pe;function Ke(ot){try{return h.statSync(ot,ee)}catch{return}}function et(ot,ir){if(T)return ir(),!1;let qt=Et("inspector");if(!qt||!qt.Session)return ir(),!1;let Yt=new qt.Session;return Yt.connect(),Yt.post("Profiler.enable",()=>{Yt.post("Profiler.start",()=>{T=Yt,O=ot,ir()})}),!0}function Ye(ot){let ir=0,qt=new Map,Yt=xp(_.dirname(_e)),Tr=`file://${Mf(Yt)===1?"":"/"}${Yt}`;for(let mn of ot.nodes)if(mn.callFrame.url){let jn=xp(mn.callFrame.url);zh(Tr,jn,ge)?mn.callFrame.url=Hf(Tr,jn,Tr,bd(ge),!0):d.test(jn)||(mn.callFrame.url=(qt.has(jn)?qt:qt.set(jn,`external${ir}.js`)).get(jn),ir++)}return ot}function Tt(ot){if(T&&T!=="stopping"){let ir=T;return T.post("Profiler.stop",(qt,{profile:Yt})=>{var Tr;if(!qt){(Tr=Ke(O))!=null&&Tr.isDirectory()&&(O=_.join(O,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`));try{h.mkdirSync(_.dirname(O),{recursive:!0})}catch{}h.writeFileSync(O,JSON.stringify(Ye(Yt)))}T=void 0,ir.disconnect(),ot()}),T="stopping",!0}else return ot(),!1}function at(){return typeof process.versions.pnp<"u"?!0:re==="win32"||re==="win64"?!1:!_r(Qe(__filename))}function Qe(ot){return ot.replace(/\w/g,ir=>{let qt=ir.toUpperCase();return ir===qt?ir.toLowerCase():qt})}function Ct(ot,ir,qt){h.watchFile(ot,{persistent:!0,interval:qt},Tr);let Yt;return{close:()=>h.unwatchFile(ot,Tr)};function Tr(mn,jn){let Zi=+jn.mtime==0||Yt===2;if(+mn.mtime==0){if(Zi)return;Yt=2}else if(Zi)Yt=0;else{if(+mn.mtime==+jn.mtime)return;Yt=1}ir(ot,Yt,mn.mtime)}}function mt(ot,ir,qt){return h.watch(ot,Ee?{persistent:!0,recursive:!!ir}:{persistent:!0},qt)}function yt(ot,ir){let qt;try{qt=h.readFileSync(ot)}catch{return}let Yt=qt.length;if(Yt>=2&&qt[0]===254&&qt[1]===255){Yt&=-2;for(let Tr=0;Tr=2&&qt[0]===255&&qt[1]===254?qt.toString("utf16le",2):Yt>=3&&qt[0]===239&&qt[1]===187&&qt[2]===191?qt.toString("utf8",3):qt.toString("utf8")}function Rt(ot,ir,qt){qt&&(ir=s+ir);let Yt;try{Yt=h.openSync(ot,"w"),h.writeSync(Yt,ir,void 0,"utf8")}finally{Yt!==void 0&&h.closeSync(Yt)}}function Lt(ot){try{let ir=h.readdirSync(ot||".",{withFileTypes:!0}),qt=[],Yt=[];for(let Tr of ir){let mn=typeof Tr=="string"?Tr:Tr.name;if(mn==="."||mn==="..")continue;let jn;if(typeof Tr=="string"||Tr.isSymbolicLink()){let Zi=To(ot,mn);if(jn=Ke(Zi),!jn)continue}else jn=Tr;jn.isFile()?qt.push(mn):jn.isDirectory()&&Yt.push(mn)}return qt.sort(),Yt.sort(),{files:qt,directories:Yt}}catch{return Kbe}}function je(ot,ir,qt,Yt,Tr){return Xbe(ot,ir,qt,Yt,ge,process.cwd(),Tr,Lt,tr)}function Wt(ot,ir){let qt=Ke(ot);if(!qt)return!1;switch(ir){case 0:return qt.isFile();case 1:return qt.isDirectory();default:return!1}}function _r(ot){return Wt(ot,0)}function Gt(ot){return Wt(ot,1)}function it(ot){return Lt(ot).directories.slice()}function Dt(ot){return ot.length<260?h.realpathSync.native(ot):h.realpathSync(ot)}function tr(ot){try{return Ie(ot)}catch{return ot}}function ur(ot){var ir;return(ir=Ke(ot))==null?void 0:ir.mtime}function Gr(ot,ir){try{h.utimesSync(ot,ir,ir)}catch{return}}function dt(ot){try{return h.unlinkSync(ot)}catch{return}}function pr(ot){let ir=R.createHash("sha256");return ir.update(ot),ir.digest("hex")}}let g;return Xm()&&(g=c()),g&&i2(g),g})();function SI(s){Ed=s}Ed&&Ed.getEnvironmentVariable&&(VD(Ed),pe.setAssertionLevel(/^development$/i.test(Ed.getEnvironmentVariable("NODE_ENV"))?1:0)),Ed&&Ed.debugMode&&(pe.isDebugging=!0);var cg="/",Bb="\\",a1="://",$2=/\\/g;function n0(s){return s===47||s===92}function o_(s){return nh(s)<0}function Up(s){return nh(s)>0}function AE(s){let c=nh(s);return c>0&&c===s.length}function dE(s){return nh(s)!==0}function mp(s){return/^\.\.?(?:$|[\\/])/.test(s)}function jh(s){return!dE(s)&&!mp(s)}function B0(s){return dp(s).includes(".")}function lA(s,c){return s.length>c.length&&di(s,c)}function Iu(s,c){for(let g of c)if(lA(s,g))return!0;return!1}function Kp(s){return s.length>0&&n0(s.charCodeAt(s.length-1))}function IC(s){return s>=97&&s<=122||s>=65&&s<=90}function pE(s,c){let g=s.charCodeAt(c);if(g===58)return c+1;if(g===37&&s.charCodeAt(c+1)===51){let d=s.charCodeAt(c+2);if(d===97||d===65)return c+3}return-1}function nh(s){if(!s)return 0;let c=s.charCodeAt(0);if(c===47||c===92){if(s.charCodeAt(1)!==c)return 1;let d=s.indexOf(c===47?cg:Bb,2);return d<0?s.length:d+1}if(IC(c)&&s.charCodeAt(1)===58){let d=s.charCodeAt(2);if(d===47||d===92)return 3;if(s.length===2)return 2}let g=s.indexOf(a1);if(g!==-1){let d=g+a1.length,h=s.indexOf(cg,d);if(h!==-1){let _=s.slice(0,g),S=s.slice(d,h);if(_==="file"&&(S===""||S==="localhost")&&IC(s.charCodeAt(h+1))){let R=pE(s,h+2);if(R!==-1){if(s.charCodeAt(R)===47)return~(R+1);if(R===s.length)return~R}}return~(h+1)}return~s.length}return 0}function Mf(s){let c=nh(s);return c<0?~c:c}function Mo(s){s=xp(s);let c=Mf(s);return c===s.length?s:(s=oy(s),s.slice(0,Math.max(c,s.lastIndexOf(cg))))}function dp(s,c,g){if(s=xp(s),Mf(s)===s.length)return"";s=oy(s);let h=s.slice(Math.max(Mf(s),s.lastIndexOf(cg)+1)),_=c!==void 0&&g!==void 0?fE(h,c,g):void 0;return _?h.slice(0,h.length-_.length):h}function IF(s,c,g){if(Ac(c,".")||(c="."+c),s.length>=c.length&&s.charCodeAt(s.length-c.length)===46){let d=s.slice(s.length-c.length);if(g(d,c))return d}}function hF(s,c,g){if(typeof c=="string")return IF(s,c,g)||"";for(let d of c){let h=IF(s,d,g);if(h)return h}return""}function fE(s,c,g){if(c)return hF(oy(s),c,g?Yp:YA);let d=dp(s),h=d.lastIndexOf(".");return h>=0?d.substring(h):""}function PT(s,c){let g=s.substring(0,c),d=s.substring(c).split(cg);return d.length&&!li(d)&&d.pop(),[g,...d]}function kp(s,c=""){return s=To(c,s),PT(s,Mf(s))}function Fm(s,c){return s.length===0?"":(s[0]&&Cp(s[0]))+s.slice(1,c).join(cg)}function xp(s){return s.includes("\\")?s.replace($2,cg):s}function s2(s){if(!zt(s))return[];let c=[s[0]];for(let g=1;g1){if(c[c.length-1]!==".."){c.pop();continue}}else if(c[0])continue}c.push(d)}}return c}function To(s,...c){s&&(s=xp(s));for(let g of c)g&&(g=xp(g),!s||Mf(g)!==0?s=g:s=Cp(s)+g);return s}function IE(s,...c){return su(zt(c)?To(s,...c):xp(s))}function mB(s,c){return s2(kp(s,c))}function Xc(s,c){let g=Mf(s);g===0&&c?(s=To(c,s),g=Mf(s)):s=xp(s);let d=hE(s);if(d!==void 0)return d.length>g?oy(d):d;let h=s.length,_=s.substring(0,g),S,R=g,T=R,O=R,V=g!==0;for(;RT&&(S??(S=s.substring(0,T-1)),T=R);let ee=s.indexOf(cg,R+1);ee===-1&&(ee=h);let re=ee-T;if(re===1&&s.charCodeAt(R)===46)S??(S=s.substring(0,O));else if(re===2&&s.charCodeAt(R)===46&&s.charCodeAt(R+1)===46)if(!V)S!==void 0?S+=S.length===g?"..":"/..":O=R+2;else if(S===void 0)O-2>=0?S=s.substring(0,Math.max(g,s.lastIndexOf(cg,O-2))):S=s.substring(0,O);else{let ge=S.lastIndexOf(cg);ge!==-1?S=S.substring(0,Math.max(g,ge)):S=_,S.length===g&&(V=g!==0)}else S!==void 0?(S.length!==g&&(S+=cg),V=!0,S+=s.substring(T,ee)):(V=!0,O=ee);R=ee+1}return S??(h>g?oy(s):s)}function su(s){s=xp(s);let c=hE(s);return c!==void 0?c:(c=Xc(s,""),c&&Kp(s)?Cp(c):c)}function hE(s){if(!CB.test(s))return s;let c=s.replace(/\/\.\//g,"/");if(c.startsWith("./")&&(c=c.slice(2)),c!==s&&(s=c,!CB.test(s)))return s}function TL(s){return s.length===0?"":s.slice(1).join(cg)}function tN(s,c){return TL(mB(s,c))}function Pu(s,c,g){let d=Up(s)?su(s):Xc(s,c);return g(d)}function oy(s){return Kp(s)?s.substr(0,s.length-1):s}function Cp(s){return Kp(s)?s:s+cg}function Im(s){return!dE(s)&&!mp(s)?"./"+s:s}function eS(s,c,g,d){let h=g!==void 0&&d!==void 0?fE(s,g,d):fE(s);return h?s.slice(0,s.length-h.length)+(Ac(c,".")?c:"."+c):s}function a_(s,c){let g=G9e(s);return g?s.slice(0,s.length-g.length)+(Ac(c,".")?c:"."+c):eS(s,c)}var CB=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function MT(s,c,g){if(s===c)return 0;if(s===void 0)return-1;if(c===void 0)return 1;let d=s.substring(0,Mf(s)),h=c.substring(0,Mf(c)),_=Fs(d,h);if(_!==0)return _;let S=s.substring(d.length),R=c.substring(h.length);if(!CB.test(S)&&!CB.test(R))return g(S,R);let T=s2(kp(s)),O=s2(kp(c)),V=Math.min(T.length,O.length);for(let M=1;M0==Mf(c)>0,"Paths must either both be absolute or both be relative");let _=wb(s,c,(typeof g=="boolean"?g:!1)?Yp:YA,typeof g=="function"?g:Zl);return Fm(_)}function o2(s,c,g){return Up(s)?Hf(c,s,c,g,!1):s}function c1(s,c,g){return Im(_p(Mo(s),c,g))}function Hf(s,c,g,d,h){let _=wb(IE(g,s),IE(g,c),YA,d),S=_[0];if(h&&Up(S)){let R=S.charAt(0)===cg?"file://":"file:///";_[0]=R+S}return Fm(_)}function mE(s,c){for(;;){let g=c(s);if(g!==void 0)return g;let d=Mo(s);if(d===s)return;s=d}}function Od(s){return di(s,"/node_modules")}function j(s,c,g,d,h,_,S){return{code:s,category:c,key:g,message:d,reportsUnnecessary:h,elidedInCompatabilityPyramid:_,reportsDeprecated:S}}var Z={Unterminated_string_literal:j(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:j(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:j(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:j(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:j(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:j(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:j(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:j(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:j(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:j(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:j(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:j(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:j(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:j(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:j(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:j(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:j(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:j(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:j(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:j(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:j(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_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:j(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:j(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:j(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:j(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:j(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:j(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:j(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:j(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:j(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:j(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:j(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:j(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:j(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:j(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:j(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:j(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:j(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:j(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:j(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:j(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:j(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:j(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:j(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:j(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:j(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:j(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:j(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:j(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:j(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:j(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:j(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:j(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:j(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:j(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:j(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:j(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:j(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:j(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:j(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:j(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:j(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:j(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:j(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:j(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:j(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:j(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:j(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:j(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:j(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:j(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:j(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:j(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:j(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:j(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:j(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:j(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."),_0_declarations_must_be_initialized:j(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:j(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:j(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:j(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:j(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:j(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:j(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:j(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:j(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:j(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:j(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:j(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:j(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:j(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:j(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:j(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:j(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:j(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:j(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:j(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:j(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:j(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:j(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:j(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:j(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:j(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:j(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:j(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:j(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:j(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:j(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:j(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:j(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_ES5:j(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:j(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:j(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:j(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:j(1286,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_1286","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:j(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:j(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."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:j(1293,1,"ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ECMAScript module syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled:j(1294,1,"This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled_1294","This syntax is not allowed when 'erasableSyntaxOnly' is enabled."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript:j(1295,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjus_1295","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'. Adjust the 'type' field in the nearest 'package.json' to make this file an ECMAScript module, or adjust your 'verbatimModuleSyntax', 'module', and 'moduleResolution' settings in TypeScript."),with_statements_are_not_allowed_in_an_async_function_block:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_node18_node20_or_nodenext:j(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', 'node18', 'node20', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve:j(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'node18', 'node20', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_node18_node20_or_nodenext:j(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', 'node18', 'node20', or 'nodenext'."),A_label_is_not_allowed_here:j(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:j(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:j(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:j(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:j(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:j(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:j(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:j(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:j(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:j(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:j(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:j(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:j(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:j(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),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:j(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:j(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:j(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_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(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', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:j(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:j(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:j(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:j(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:j(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:j(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:j(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:j(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:j(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:j(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:j(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:j(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:j(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:j(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:j(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:j(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:j(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:j(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:j(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:j(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:j(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:j(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:j(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:j(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:j(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:j(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_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(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', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:j(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:j(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:j(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:j(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:j(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:j(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:j(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:j(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:j(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:j(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:j(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:j(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:j(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_set_of_attributes_as_arguments:j(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes 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:j(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_should_be_either_require_or_import:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:j(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:j(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:j(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:j(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:j(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:j(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:j(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:j(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:j(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:j(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:j(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:j(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:j(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:j(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:j(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:j(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:j(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:j(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:j(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:j(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:j(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:j(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:j(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:j(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:j(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:j(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:j(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:j(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:j(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:j(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:j(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:j(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:j(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:j(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:j(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:j(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:j(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:j(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:j(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:j(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:j(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:j(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:j(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:j(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:j(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:j(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:j(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:j(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:j(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:j(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:j(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:j(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:j(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:j(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:j(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),using_declarations_are_not_allowed_in_ambient_contexts:j(1545,1,"using_declarations_are_not_allowed_in_ambient_contexts_1545","'using' declarations are not allowed in ambient contexts."),await_using_declarations_are_not_allowed_in_ambient_contexts:j(1546,1,"await_using_declarations_are_not_allowed_in_ambient_contexts_1546","'await using' declarations are not allowed in ambient contexts."),The_types_of_0_are_incompatible_between_these_types:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:j(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:j(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(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:j(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:j(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:j(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:j(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:j(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:j(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:j(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:j(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:j(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:j(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:j(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:j(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:j(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:j(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:j(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:j(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:j(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:j(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:j(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_undefined_void_nor_any_must_return_a_value:j(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:j(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:j(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:j(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_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:j(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),Overload_signatures_must_all_be_exported_or_non_exported:j(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:j(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:j(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:j(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:j(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:j(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:j(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:j(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:j(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:j(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:j(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:j(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:j(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:j(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:j(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:j(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:j(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:j(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:j(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:j(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:j(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:j(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:j(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:j(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:j(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:j(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:j(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:j(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:j(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:j(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_ES5_Consider_using_a_standard_function_expression:j(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in 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:j(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:j(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:j(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:j(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:j(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:j(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:j(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_ES5_Consider_using_a_standard_function_or_method:j(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:j(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:j(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:j(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:j(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:j(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:j(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:j(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:j(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:j(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:j(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:j(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:j(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:j(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),React_components_cannot_include_JSX_namespace_names:j(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:j(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."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:j(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:j(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:j(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:j(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}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:j(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:j(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:j(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 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:j(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:j(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:j(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:j(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:j(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:j(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_and_above_with_module_0:j(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 and above with module {0}."),Cannot_find_lib_definition_for_0:j(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:j(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:j(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:j(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:j(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:j(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:j(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:j(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:j(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:j(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:j(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:j(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:j(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:j(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_or_class_static_initialization_blocks:j(2815,1,"arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks_2815","'arguments' cannot be referenced in property initializers or class static initialization blocks."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:j(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:j(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:j(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:j(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:j(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_node18_node20_nodenext_or_preserve:j(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:j(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."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:j(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:j(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:j(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_compile_to_CommonJS_require_calls:j(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:j(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:j(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:j(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_It_can_only_extend_other_named_object_types:j(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:j(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:j(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:j(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:j(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:j(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?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:j(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:j(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:j(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:j(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_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:j(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements 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_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:j(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:j(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:j(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:j(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:j(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:j(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:j(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:j(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:j(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:j(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:j(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:j(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:j(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:j(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:j(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:j(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:j(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:j(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:j(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:j(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:j(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:j(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert:j(2880,1,"Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert_2880","Import assertions have been replaced by import attributes. Use 'with' instead of 'assert'."),This_expression_is_never_nullish:j(2881,1,"This_expression_is_never_nullish_2881","This expression is never nullish."),Import_declaration_0_is_using_private_name_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(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:j(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_anonymous_class_type_may_not_be_private_or_protected:j(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type 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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:j(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:j(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic:j(4127,1,"This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic_4127","This member cannot have an 'override' modifier because its name is dynamic."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:j(4128,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic_4128","This member cannot have a JSDoc comment with an '@override' tag because its name is dynamic."),The_current_host_does_not_support_the_0_option:j(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:j(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:j(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:j(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:j(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:j(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:j(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:j(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:j(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:j(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_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_cannot_be_specified_when_module_is_set_to_none_system_or_umd:j(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:j(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:j(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:j(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:j(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:j(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:j(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:j(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:j(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:j(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:j(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:j(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:j(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_preserve_or_to_es2015_or_later:j(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:j(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:j(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:j(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:j(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:j(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:j(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:j(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:j(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:j(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:j(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:j(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."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:j(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:j(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:j(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:j(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:j(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:j(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:j(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:j(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:j(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:j(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:j(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:j(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:j(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:j(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:j(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:j(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:j(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:j(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:j(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:j(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:j(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:j(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:j(6024,3,"options_6024","options"),file:j(6025,3,"file_6025","file"),Examples_Colon_0:j(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:j(6027,3,"Options_Colon_6027","Options:"),Version_0:j(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:j(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:j(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:j(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:j(6034,3,"KIND_6034","KIND"),FILE:j(6035,3,"FILE_6035","FILE"),VERSION:j(6036,3,"VERSION_6036","VERSION"),LOCATION:j(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:j(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:j(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:j(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:j(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:j(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:j(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:j(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:j(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:j(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:j(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:j(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:j(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:j(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:j(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:j(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:j(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:j(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:j(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:j(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:j(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:j(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:j(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:j(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:j(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:j(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:j(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:j(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:j(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:j(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:j(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:j(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:j(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:j(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:j(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:j(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:j(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:j(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:j(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:j(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:j(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:j(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:j(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:j(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:j(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:j(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:j(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:j(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:j(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:j(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:j(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:j(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:j(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:j(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:j(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:j(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:j(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:j(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:j(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:j(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:j(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:j(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:j(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:j(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:j(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:j(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:j(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:j(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:j(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:j(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:j(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:j(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:j(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:j(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:j(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:j(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:j(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:j(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:j(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:j(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:j(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:j(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:j(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:j(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:j(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:j(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:j(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:j(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:j(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:j(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:j(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:j(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:j(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:j(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:j(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:j(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:j(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:j(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:j(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:j(6244,3,"Modules_6244","Modules"),File_Management:j(6245,3,"File_Management_6245","File Management"),Emit:j(6246,3,"Emit_6246","Emit"),JavaScript_Support:j(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:j(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:j(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:j(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:j(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:j(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:j(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:j(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:j(6255,3,"Projects_6255","Projects"),Output_Formatting:j(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:j(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:j(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_0:j(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:j(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:j(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:j(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:j(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:j(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."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:j(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:j(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:j(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:j(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:j(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:j(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:j(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),File_Layout:j(6284,3,"File_Layout_6284","File Layout"),Environment_Settings:j(6285,3,"Environment_Settings_6285","Environment Settings"),See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule:j(6286,3,"See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule_6286","See also https://aka.ms/tsconfig/module"),For_nodejs_Colon:j(6287,3,"For_nodejs_Colon_6287","For nodejs:"),and_npm_install_D_types_Slashnode:j(6290,3,"and_npm_install_D_types_Slashnode_6290","and npm install -D @types/node"),Other_Outputs:j(6291,3,"Other_Outputs_6291","Other Outputs"),Stricter_Typechecking_Options:j(6292,3,"Stricter_Typechecking_Options_6292","Stricter Typechecking Options"),Style_Options:j(6293,3,"Style_Options_6293","Style Options"),Recommended_Options:j(6294,3,"Recommended_Options_6294","Recommended Options"),Enable_project_compilation:j(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:j(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:j(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:j(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:j(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."),Referenced_project_0_may_not_disable_emit:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:j(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:j(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:j(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:j(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}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:j(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:j(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:j(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:j(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:j(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:j(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:j(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:j(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:j(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:j(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:j(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:j(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:j(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:j(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),Skip_building_downstream_projects_on_error_in_upstream_project:j(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:j(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:j(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:j(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:j(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:j(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:j(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:j(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:j(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:j(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:j(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."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:j(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:j(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript:j(6721,3,"Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript_6721","Do not allow runtime constructs that are not part of ECMAScript."),Default_catch_clause_variables_as_unknown_instead_of_any:j(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:j(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."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:j(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:j(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:j(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),Enable_lib_replacement:j(6808,3,"Enable_lib_replacement_6808","Enable lib replacement."),one_of_Colon:j(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:j(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:j(6902,3,"type_Colon_6902","type:"),default_Colon:j(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:j(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:j(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:j(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:j(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:j(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:j(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:j(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:j(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:j(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:j(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:j(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:j(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:j(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:j(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:j(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:j(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:j(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:j(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:j(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:j(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:j(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:j(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:j(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:j(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:j(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:j(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:j(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:j(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:j(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:j(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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_Consider_supplying_a_return_type_annotation:j(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:j(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:j(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:j(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:j(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:j(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:j(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:j(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:j(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:j(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."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:j(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:j(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:j(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:j(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:j(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:j(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:j(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:j(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:j(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:j(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:j(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:j(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:j(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:j(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:j(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:j(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:j(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:j(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:j(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:j(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:j(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:j(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:j(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:j(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:j(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:j(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:j(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:j(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:j(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:j(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:j(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:j(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}'?"),Unicode_escape_sequence_cannot_appear_here:j(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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."),JSDoc_typedef_may_be_converted_to_TypeScript_type:j(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:j(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:j(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:j(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:j(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:j(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:j(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:j(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:j(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:j(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:j(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:j(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:j(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:j(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:j(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:j(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:j(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:j(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:j(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:j(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:j(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:j(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:j(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:j(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:j(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:j(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:j(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:j(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:j(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:j(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:j(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:j(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:j(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:j(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:j(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:j(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:j(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:j(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:j(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:j(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:j(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:j(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:j(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:j(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:j(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:j(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:j(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:j(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:j(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:j(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:j(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:j(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:j(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:j(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:j(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:j(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:j(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:j(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:j(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:j(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:j(95005,3,"Extract_function_95005","Extract function"),Extract_constant:j(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:j(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:j(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:j(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:j(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:j(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:j(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:j(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:j(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:j(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:j(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:j(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:j(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:j(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:j(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:j(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:j(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:j(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:j(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:j(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:j(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:j(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:j(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:j(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:j(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:j(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:j(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:j(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:j(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:j(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:j(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:j(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:j(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:j(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:j(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:j(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:j(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:j(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:j(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:j(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:j(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:j(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:j(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:j(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:j(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:j(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:j(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:j(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:j(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:j(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:j(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:j(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:j(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:j(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:j(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:j(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:j(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:j(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:j(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:j(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:j(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:j(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:j(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:j(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:j(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:j(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:j(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:j(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:j(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:j(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:j(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:j(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:j(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:j(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:j(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:j(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:j(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:j(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:j(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:j(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:j(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:j(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:j(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:j(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:j(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:j(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:j(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:j(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:j(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:j(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:j(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:j(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:j(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:j(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:j(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:j(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:j(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:j(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:j(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:j(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:j(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:j(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:j(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:j(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:j(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:j(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:j(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:j(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:j(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:j(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:j(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:j(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:j(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:j(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:j(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:j(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:j(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:j(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:j(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:j(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:j(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:j(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:j(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:j(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:j(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:j(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:j(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:j(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:j(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:j(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:j(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:j(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:j(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:j(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:j(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:j(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:j(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:j(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:j(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:j(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:j(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:j(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:j(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:j(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:j(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:j(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:j(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:j(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:j(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:j(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:j(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:j(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:j(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:j(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:j(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:j(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:j(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:j(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:j(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:j(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:j(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:j(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:j(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:j(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:j(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:j(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:j(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:j(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:j(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:j(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:j(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:j(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:j(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:j(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:j(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:j(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:j(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:j(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:j(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:j(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:j(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:j(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:j(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:j(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:j(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:j(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:j(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:j(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(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:j(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:j(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:j(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:j(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:j(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:j(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:j(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:j(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:j(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:j(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:j(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'."),Default_imports_are_not_allowed_in_a_deferred_import:j(18058,1,"Default_imports_are_not_allowed_in_a_deferred_import_18058","Default imports are not allowed in a deferred import."),Named_imports_are_not_allowed_in_a_deferred_import:j(18059,1,"Named_imports_are_not_allowed_in_a_deferred_import_18059","Named imports are not allowed in a deferred import."),Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve:j(18060,1,"Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve_18060","Deferred imports are only supported when the '--module' flag is set to 'esnext' or 'preserve'."),_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer:j(18061,1,"_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer_18061","'{0}' is not a valid meta-property for keyword 'import'. Did you mean 'meta' or 'defer'?")};function md(s){return s>=80}function yB(s){return s===32||md(s)}var sv={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,defer:166,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},xy=new Map(Object.entries(sv)),Tb=new Map(Object.entries({...sv,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),WD=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),bB=new Map([[1,Dd.RegularExpressionFlagsHasIndices],[16,Dd.RegularExpressionFlagsDotAll],[32,Dd.RegularExpressionFlagsUnicode],[64,Dd.RegularExpressionFlagsUnicodeSets],[128,Dd.RegularExpressionFlagsSticky]]),Rb=[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],RL=[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],mF=[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,2160,2183,2185,2190,2208,2249,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,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,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,5905,5919,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,6988,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,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,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,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,43881,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,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,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,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,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,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,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,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,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,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,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],x=[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,2160,2183,2185,2190,2200,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,2901,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,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,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,3790,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,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,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,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,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,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,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,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,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,43881,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,65381,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,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,70753,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,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,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,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,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,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,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,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,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,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],L=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,te=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,Re=/@(?:see|link)/i;function Ve(s,c){if(s=2?Ve(s,mF):Ve(s,Rb)}function dr(s,c){return c>=2?Ve(s,x):Ve(s,RL)}function Ur(s){let c=[];return s.forEach((g,d)=>{c[g]=d}),c}var mi=Ur(Tb);function Vi(s){return mi[s]}function Ta(s){return Tb.get(s)}var El=Ur(WD);function Ho(s){return El[s]}function Pg(s){return WD.get(s)}function uA(s){let c=[],g=0,d=0;for(;g127&&ml(h)&&(c.push(d),d=g);break}}return c.push(d),c}function ih(s,c,g,d){return s.getPositionOfLineAndCharacter?s.getPositionOfLineAndCharacter(c,g,d):xn(rn(s),c,g,s.text,d)}function xn(s,c,g,d,h){(c<0||c>=s.length)&&(h?c=c<0?0:c>=s.length?s.length-1:c:pe.fail(`Bad line number. Line: ${c}, lineStarts.length: ${s.length} , line map is correct? ${d!==void 0?Sc(s,uA(d)):"unknown"}`));let _=s[c]+g;return h?_>s[c+1]?s[c+1]:typeof d=="string"&&_>d.length?d.length:_:(c=8192&&s<=8203||s===8239||s===8287||s===12288||s===65279}function ml(s){return s===10||s===13||s===8232||s===8233}function Tl(s){return s>=48&&s<=57}function rI(s){return Tl(s)||s>=65&&s<=70||s>=97&&s<=102}function tS(s){return s>=65&&s<=90||s>=97&&s<=122}function Bx(s){return tS(s)||Tl(s)||s===95}function rS(s){return s>=48&&s<=55}function ov(s,c){let g=s.charCodeAt(c);switch(g){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 c===0;default:return g>127}}function Yu(s,c,g,d,h){if(xB(c))return c;let _=!1;for(;;){let S=s.charCodeAt(c);switch(S){case 13:s.charCodeAt(c+1)===10&&c++;case 10:if(c++,g)return c;_=!!h;continue;case 9:case 11:case 12:case 32:c++;continue;case 47:if(d)break;if(s.charCodeAt(c+1)===47){for(c+=2;c127&&dc(S)){c++;continue}break}return c}}var a3=7;function EB(s,c){if(pe.assert(c>=0),c===0||ml(s.charCodeAt(c-1))){let g=s.charCodeAt(c);if(c+a3=0&&g127&&dc(ge)){M&&ml(ge)&&(V=!0),g++;continue}break e}}return M&&(re=h(R,T,O,V,_,re)),re}function OD(s,c,g,d){return HT(!1,s,c,!1,g,d)}function _F(s,c,g,d){return HT(!1,s,c,!0,g,d)}function NL(s,c,g,d,h){return HT(!0,s,c,!1,g,d,h)}function hf(s,c,g,d,h){return HT(!0,s,c,!0,g,d,h)}function PD(s,c,g,d,h,_=[]){return _.push({kind:g,pos:s,end:c,hasTrailingNewLine:d}),_}function CE(s,c){return NL(s,c,PD,void 0,void 0)}function a2(s,c){return hf(s,c,PD,void 0,void 0)}function SB(s){let c=CF.exec(s);if(c)return c[0]}function Sd(s,c){return tS(s)||s===36||s===95||s>127&&It(s,c)}function l1(s,c,g){return Bx(s)||s===36||(g===1?s===45||s===58:!1)||s>127&&dr(s,c)}function qh(s,c,g){let d=Ku(s,0);if(!Sd(d,c))return!1;for(let h=ay(d);hV,getStartPos:()=>V,getTokenEnd:()=>T,getTextPos:()=>T,getToken:()=>ee,getTokenStart:()=>M,getTokenPos:()=>M,getTokenText:()=>R.substring(M,T),getTokenValue:()=>re,hasUnicodeEscape:()=>(ge&1024)!==0,hasExtendedUnicodeEscape:()=>(ge&8)!==0,hasPrecedingLineBreak:()=>(ge&1)!==0,hasPrecedingJSDocComment:()=>(ge&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(ge&32768)!==0,isIdentifier:()=>ee===80||ee>118,isReservedWord:()=>ee>=83&&ee<=118,isUnterminated:()=>(ge&4)!==0,getCommentDirectives:()=>Ie,getNumericLiteralFlags:()=>ge&25584,getTokenFlags:()=>ge,reScanGreaterToken:qt,reScanAsteriskEqualsToken:Yt,reScanSlashToken:Tr,reScanTemplateToken:An,reScanTemplateHeadOrNoSubstitutionTemplate:si,scanJsxIdentifier:Fl,scanJsxAttributeValue:ba,reScanJsxAttributeValue:Oo,reScanJsxToken:ks,reScanLessThanToken:Ic,reScanHashToken:ou,reScanQuestionToken:Zn,reScanInvalidIdentifier:ot,scanJsxToken:ya,scanJsDocToken:yr,scanJSDocCommentTextToken:hc,scan:dt,getText:Pa,clearCommentDirectives:$c,setText:Qu,setScriptTarget:Cs,setLanguageVariant:Tu,setScriptKind:Wr,setJSDocParsingMode:Wn,setOnError:Rg,resetTokenState:pt,setTextPos:pt,setSkipJsDocLeadingAsterisks:on,tryScan:pa,lookAhead:co,scanRange:Pi};return pe.isDebugging&&Object.defineProperty(Te,"__debugShowCurrentPositionInText",{get:()=>{let st=Te.getText();return st.slice(0,Te.getTokenFullStart())+"\u2551"+st.slice(Te.getTokenFullStart())}}),Te;function Ze(st){return Ku(R,st)}function Pe(st){return st>=0&&st=0&&st=65&&En<=70)En+=32;else if(!(En>=48&&En<=57||En>=97&&En<=102))break;Kr.push(En),T++,hr=!1}return Kr.length=O){Zr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}let Dn=Ke(T);if(Dn===nr){Zr+=R.substring(Kr,T),T++;break}if(Dn===92&&!st){Zr+=R.substring(Kr,T),Zr+=Wt(3),Kr=T;continue}if((Dn===10||Dn===13)&&!st){Zr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}T++}return Zr}function je(st){let nr=Ke(T)===96;T++;let Zr=T,Kr="",Dn;for(;;){if(T>=O){Kr+=R.substring(Zr,T),ge|=4,Ye(Z.Unterminated_template_literal),Dn=nr?15:18;break}let hr=Ke(T);if(hr===96){Kr+=R.substring(Zr,T),T++,Dn=nr?15:18;break}if(hr===36&&T+1=O)return Ye(Z.Unexpected_end_of_text),"";let Zr=Ke(T);switch(T++,Zr){case 48:if(T>=O||!Tl(Ke(T)))return"\0";case 49:case 50:case 51:T=55296&&Kr<=56319&&T+6=56320&&Ni<=57343)return T=En,Dn+String.fromCharCode(Ni)}return Dn;case 120:for(;T1114111&&(st&&Ye(Z.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Zr,T-Zr),hr=!0),T>=O?(st&&Ye(Z.Unexpected_end_of_text),hr=!0):Ke(T)===125?T++:(st&&Ye(Z.Unterminated_Unicode_escape_sequence),hr=!0),hr?(ge|=2048,R.substring(nr,T)):(ge|=8,rN(Dn))}function Gt(){if(T+5=0&&l1(Zr,s)){st+=_r(!0),nr=T;continue}if(Zr=Gt(),!(Zr>=0&&l1(Zr,s)))break;ge|=1024,st+=R.substring(nr,T),st+=rN(Zr),T+=6,nr=T}else break}return st+=R.substring(nr,T),st}function tr(){let st=re.length;if(st>=2&&st<=12){let nr=re.charCodeAt(0);if(nr>=97&&nr<=122){let Zr=xy.get(re);if(Zr!==void 0)return ee=Zr}}return ee=80}function ur(st){let nr="",Zr=!1,Kr=!1;for(;;){let Dn=Ke(T);if(Dn===95){ge|=512,Zr?(Zr=!1,Kr=!0):Ye(Kr?Z.Multiple_consecutive_numeric_separators_are_not_permitted:Z.Numeric_separators_are_not_allowed_here,T,1),T++;continue}if(Zr=!0,!Tl(Dn)||Dn-48>=st)break;nr+=R[T],T++,Kr=!1}return Ke(T-1)===95&&Ye(Z.Numeric_separators_are_not_allowed_here,T-1,1),nr}function Gr(){return Ke(T)===110?(re+="n",ge&384&&(re=mz(re)+"n"),T++,10):(re=""+(ge&128?parseInt(re.slice(2),2):ge&256?parseInt(re.slice(2),8):+re),9)}function dt(){for(V=T,ge=0;;){if(M=T,T>=O)return ee=1;let st=Ze(T);if(T===0&&st===35&&c3(R,T)){if(T=IY(R,T),c)continue;return ee=6}switch(st){case 10:case 13:if(ge|=1,c){T++;continue}else return st===13&&T+1=0&&Sd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Zr=Gt();return Zr>=0&&Sd(Zr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Zr)+Dt(),ee=tr()):(Ye(Z.Invalid_character),T++,ee=0);case 35:if(T!==0&&R[T+1]==="!")return Ye(Z.can_only_be_used_at_the_start_of_a_file,T,2),T++,ee=0;let Kr=Ze(T+1);if(Kr===92){T++;let En=it();if(En>=0&&Sd(En,s))return re="#"+_r(!0)+Dt(),ee=81;let Ni=Gt();if(Ni>=0&&Sd(Ni,s))return T+=6,ge|=1024,re="#"+String.fromCharCode(Ni)+Dt(),ee=81;T--}return Sd(Kr,s)?(T++,ir(Kr,s)):(re="#",Ye(Z.Invalid_character,T++,ay(st))),ee=81;case 65533:return Ye(Z.File_appears_to_be_binary,0,0),T=O,ee=8;default:let Dn=ir(st,s);if(Dn)return ee=Dn;if(hu(st)){T+=ay(st);continue}else if(ml(st)){ge|=1,T+=ay(st);continue}let hr=ay(st);return Ye(Z.Invalid_character,T,hr),T+=hr,ee=0}}}function pr(){switch(Ne){case 0:return!0;case 1:return!1}return Ee!==3&&Ee!==4?!0:Ne===3?!1:Re.test(R.slice(V,T))}function ot(){pe.assert(ee===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),T=M=V,ge=0;let st=Ze(T),nr=ir(st,99);return nr?ee=nr:(T+=ay(st),ee)}function ir(st,nr){let Zr=st;if(Sd(Zr,nr)){for(T+=ay(Zr);T=O)return ee=1;let nr=Ke(T);if(nr===60)return Ke(T+1)===47?(T+=2,ee=31):(T++,ee=30);if(nr===123)return T++,ee=19;let Zr=0;for(;T0)break;dc(nr)||(Zr=T)}T++}return re=R.substring(V,T),Zr===-1?13:12}function Fl(){if(md(ee)){for(;T=O)return ee=1;for(let nr=Ke(T);T=0&&hu(Ke(T-1))&&!(T+1=O)return ee=1;let st=Ze(T);switch(T+=ay(st),st){case 9:case 11:case 12:case 32:for(;T=0&&Sd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Zr=Gt();return Zr>=0&&Sd(Zr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Zr)+Dt(),ee=tr()):(T++,ee=0)}if(Sd(st,s)){let nr=st;for(;T=0),T=st,V=st,M=st,ee=0,re=void 0,ge=0}function on(st){_e+=st?1:-1}}function Ku(s,c){return s.codePointAt(c)}function ay(s){return s>=65536?2:s===-1?0:1}function hY(s){if(pe.assert(0<=s&&s<=1114111),s<=65535)return String.fromCharCode(s);let c=Math.floor((s-65536)/1024)+55296,g=(s-65536)%1024+56320;return String.fromCharCode(c,g)}var mY=String.fromCodePoint?s=>String.fromCodePoint(s):hY;function rN(s){return mY(s)}var CY=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),rt=new Set(["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","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","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"]),Jt=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),kr={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};kr.Script_Extensions=kr.Script;function Xr(s){return mp(s)||Up(s)}function ui(s){return al(s,az,HAe)}var Is=new Map([[99,"lib.esnext.full.d.ts"],[11,"lib.es2024.full.d.ts"],[10,"lib.es2023.full.d.ts"],[9,"lib.es2022.full.d.ts"],[8,"lib.es2021.full.d.ts"],[7,"lib.es2020.full.d.ts"],[6,"lib.es2019.full.d.ts"],[5,"lib.es2018.full.d.ts"],[4,"lib.es2017.full.d.ts"],[3,"lib.es2016.full.d.ts"],[2,"lib.es6.d.ts"]]);function Hs(s){let c=Hg(s);switch(c){case 99:case 11:case 10:case 9:case 8:case 7:case 6:case 5:case 4:case 3:case 2:return Is.get(c);default:return"lib.d.ts"}}function Rs(s){return s.start+s.length}function ja(s){return s.length===0}function Io(s,c){return c>=s.start&&c=s.pos&&c<=s.end}function kd(s,c){return c.start>=s.start&&Rs(c)<=Rs(s)}function rd(s,c){return c.pos>=s.start&&c.end<=Rs(s)}function Mg(s,c){return c.start>=s.pos&&Rs(c)<=s.end}function Gh(s,c){return u1(s,c)!==void 0}function u1(s,c){let g=mA(s,c);return g&&g.length===0?void 0:g}function Db(s,c){return _E(s.start,s.length,c.start,c.length)}function nS(s,c,g){return _E(s.start,s.length,c,g)}function _E(s,c,g,d){let h=s+c,_=g+d;return g<=h&&_>=s}function nN(s,c){return c<=Rs(s)&&c>=s.start}function l3(s,c){return nS(c,s.pos,s.end-s.pos)}function mA(s,c){let g=Math.max(s.start,c.start),d=Math.min(Rs(s),Rs(c));return g<=d?RA(g,d):void 0}function vI(s){s=s.filter(d=>d.length>0).sort((d,h)=>d.start!==h.start?d.start-h.start:d.length-h.length);let c=[],g=0;for(;g=2&&s.charCodeAt(0)===95&&s.charCodeAt(1)===95?"_"+s:s}function Bc(s){let c=s;return c.length>=3&&c.charCodeAt(0)===95&&c.charCodeAt(1)===95&&c.charCodeAt(2)===95?c.substr(1):c}function Vo(s){return Bc(s.escapedText)}function lv(s){let c=Ta(s.escapedText);return c?Gs(c,T0):void 0}function of(s){return s.valueDeclaration&&hC(s.valueDeclaration)?Vo(s.valueDeclaration.name):Bc(s.escapedName)}function c7(s){let c=s.parent.parent;if(c){if(em(c))return _Y(c);switch(c.kind){case 244:if(c.declarationList&&c.declarationList.declarations[0])return _Y(c.declarationList.declarations[0]);break;case 245:let g=c.expression;switch(g.kind===227&&g.operatorToken.kind===64&&(g=g.left),g.kind){case 212:return g.name;case 213:let d=g.argumentExpression;if(Ir(d))return d}break;case 218:return _Y(c.expression);case 257:{if(em(c.statement)||un(c.statement))return _Y(c.statement);break}}}}function _Y(s){let c=fl(s);return c&&Ir(c)?c:void 0}function u3(s,c){return!!(sh(s)&&Ir(s.name)&&Vo(s.name)===Vo(c)||Eh(s)&&zt(s.declarationList.declarations,g=>u3(g,c)))}function yF(s){return s.name||c7(s)}function sh(s){return!!s.name}function vw(s){switch(s.kind){case 80:return s;case 349:case 342:{let{name:g}=s;if(g.kind===167)return g.right;break}case 214:case 227:{let g=s;switch(oI(g)){case 1:case 4:case 5:case 3:return pAe(g.left);case 7:case 8:case 9:return g.arguments[1];default:return}}case 347:return yF(s);case 341:return c7(s);case 278:{let{expression:g}=s;return Ir(g)?g:void 0}case 213:let c=s;if(dAe(c))return c.argumentExpression}return s.name}function fl(s){if(s!==void 0)return vw(s)||(jA(s)||gA(s)||wd(s)?vB(s):void 0)}function vB(s){if(s.parent){if(Cm(s.parent)||mg(s.parent))return s.parent.name;if(po(s.parent)&&s===s.parent.right){if(Ir(s.parent.left))return s.parent.left;if(bp(s.parent.left))return pAe(s.parent.left)}else if(nc(s.parent)&&Ir(s.parent.name))return s.parent.name}else return}function kb(s){if(m1(s))return Le(s.modifiers,Eo)}function sN(s){if(Ga(s,98303))return Le(s.modifiers,hg)}function Gre(s,c){if(s.name)if(Ir(s.name)){let g=s.name.escapedText;return g7(s.parent,c).filter(d=>dS(d)&&Ir(d.name)&&d.name.escapedText===g)}else{let g=s.parent.parameters.indexOf(s);pe.assert(g>-1,"Parameters should always be in their parents' parameter list");let d=g7(s.parent,c).filter(dS);if(gMB(d)&&d.typeParameters.some(h=>h.name.escapedText===g))}function g3(s){return yY(s,!1)}function l7(s){return yY(s,!0)}function vJ(s){return!!A1(s,dS)}function u7(s){return A1(s,Lz)}function bY(s){return wJ(s,S9e)}function Tx(s){return A1(s,hOt)}function Fre(s){return A1(s,L$e)}function Rx(s){return A1(s,L$e,!0)}function Es(s){return A1(s,V$e)}function Aa(s){return A1(s,V$e,!0)}function ha(s){return A1(s,W$e)}function Ua(s){return A1(s,W$e,!0)}function wc(s){return A1(s,O$e)}function CA(s){return A1(s,O$e,!0)}function Pd(s){return A1(s,b9e,!0)}function $h(s){return A1(s,P$e)}function c2(s){return A1(s,P$e,!0)}function g1(s){return A1(s,TEe)}function xb(s){return A1(s,M$e)}function uv(s){return A1(s,E9e)}function fW(s){return A1(s,MB)}function bF(s){return A1(s,v9e)}function gv(s){let c=A1(s,Tde);if(c&&c.typeExpression&&c.typeExpression.type)return c}function oN(s){let c=A1(s,Tde);return!c&&Si(s)&&(c=de(kL(s),g=>!!g.typeExpression)),c&&c.typeExpression&&c.typeExpression.type}function BJ(s){let c=uv(s);if(c&&c.typeExpression)return c.typeExpression.type;let g=gv(s);if(g&&g.typeExpression){let d=g.typeExpression.type;if(bh(d)){let h=de(d.members,Tg);return h&&h.type}if(Z_(d)||kie(d))return d.type}}function g7(s,c){var g;if(!wne(s))return E;let d=(g=s.jsDoc)==null?void 0:g.jsDocCache;if(d===void 0||c){let h=Xye(s,c);pe.assert(h.length<2||h[0]!==h[1]),d=jt(h,_=>aR(_)?_.tags:_),c||(s.jsDoc??(s.jsDoc=[]),s.jsDoc.jsDocCache=d)}return d}function Nx(s){return g7(s,!1)}function A1(s,c,g){return de(g7(s,g),c)}function wJ(s,c){return Nx(s).filter(c)}function Sye(s,c){return Nx(s).filter(g=>g.kind===c)}function TJ(s){return typeof s=="string"?s:s?.map(c=>c.kind===322?c.text:hZe(c)).join("")}function hZe(s){let c=s.kind===325?"link":s.kind===326?"linkcode":"linkplain",g=s.name?ly(s.name):"",d=s.name&&(s.text===""||s.text.startsWith("://"))?"":" ";return`{@${c} ${g}${d}${s.text}}`}function MD(s){if(s9(s)){if(xie(s.parent)){let c=lU(s.parent);if(c&&B(c.tags))return jt(c.tags,g=>MB(g)?g.typeParameters:void 0)}return E}if(lS(s))return pe.assert(s.parent.kind===321),jt(s.parent.tags,c=>MB(c)?c.typeParameters:void 0);if(s.typeParameters||ROt(s)&&s.typeParameters)return s.typeParameters;if(Bo(s)){let c=TAe(s);if(c.length)return c;let g=oN(s);if(g&&Z_(g)&&g.typeParameters)return g.typeParameters}return E}function A3(s){return s.constraint?s.constraint:MB(s.parent)&&s===s.parent.typeParameters[0]?s.parent.constraint:void 0}function Bw(s){return s.kind===80||s.kind===81}function RJ(s){return s.kind===179||s.kind===178}function Dx(s){return jo(s)&&!!(s.flags&64)}function EF(s){return Qg(s)&&!!(s.flags&64)}function BB(s){return Ll(s)&&!!(s.flags&64)}function LC(s){let c=s.kind;return!!(s.flags&64)&&(c===212||c===213||c===214||c===236)}function IW(s){return LC(s)&&!bv(s)&&!!s.questionDotToken}function EY(s){return IW(s.parent)&&s.parent.expression===s}function d3(s){return!LC(s.parent)||IW(s.parent)||s!==s.parent.expression}function NJ(s){return s.kind===227&&s.operatorToken.kind===61}function l2(s){return oh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="const"&&!s.typeArguments}function u2(s){return XI(s,8)}function DJ(s){return bv(s)&&!!(s.flags&64)}function SY(s){return s.kind===253||s.kind===252}function Zre(s){return s.kind===281||s.kind===280}function vY(s){return s.kind===349||s.kind===342}function A7(s){return s>=167}function d7(s){return s>=0&&s<=166}function xL(s){return d7(s.kind)}function aN(s){return Da(s,"pos")&&Da(s,"end")}function BY(s){return 9<=s&&s<=15}function FL(s){return BY(s.kind)}function Lre(s){switch(s.kind){case 211:case 210:case 14:case 219:case 232:return!0}return!1}function HD(s){return 15<=s&&s<=18}function bge(s){return HD(s.kind)}function p7(s){let c=s.kind;return c===17||c===18}function sS(s){return dy(s)||k0(s)}function cN(s){switch(s.kind){case 277:return s.isTypeOnly||s.parent.parent.phaseModifier===156;case 275:return s.parent.phaseModifier===156;case 274:return s.phaseModifier===156;case 272:return s.isTypeOnly}return!1}function kJ(s){switch(s.kind){case 282:return s.isTypeOnly||s.parent.parent.isTypeOnly;case 279:return s.isTypeOnly&&!!s.moduleSpecifier&&!s.exportClause;case 281:return s.parent.isTypeOnly}return!1}function lN(s){return cN(s)||kJ(s)}function Ege(s){return ji(s,lN)!==void 0}function Vre(s){return s.kind===11||HD(s.kind)}function f7(s){return Lg(s)||Ir(s)}function Gp(s){var c;return Ir(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function ZL(s){var c;return p(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function wY(s){let c=s.emitNode.autoGenerate.flags;return!!(c&32)&&!!(c&16)&&!!(c&8)}function hC(s){return(pi(s)||VL(s))&&p(s.name)}function hW(s){return jo(s)&&p(s.name)}function YD(s){switch(s){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function TY(s){return!!(tQ(s)&31)}function Wre(s){return TY(s)||s===126||s===164||s===129}function hg(s){return YD(s.kind)}function mC(s){let c=s.kind;return c===167||c===80}function PI(s){let c=s.kind;return c===80||c===81||c===11||c===9||c===168}function LL(s){let c=s.kind;return c===80||c===207||c===208}function Eu(s){return!!s&&mW(s.kind)}function p3(s){return!!s&&(mW(s.kind)||dl(s))}function Gd(s){return s&&vye(s.kind)}function RY(s){return s.kind===112||s.kind===97}function vye(s){switch(s){case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function mW(s){switch(s){case 174:case 180:case 324:case 181:case 182:case 185:case 318:case 186:return!0;default:return vye(s)}}function xJ(s){return cl(s)||BN(s)||eg(s)&&Eu(s.parent)}function MI(s){let c=s.kind;return c===177||c===173||c===175||c===178||c===179||c===182||c===176||c===241}function xa(s){return s&&(s.kind===264||s.kind===232)}function wB(s){return s&&(s.kind===178||s.kind===179)}function i0(s){return pi(s)&&Zw(s)}function Ore(s){return Bo(s)&&cQ(s)?(!NW(s)||!GF(s.expression))&&!v3(s,!0):s.parent&&xa(s.parent)&&pi(s)&&!Zw(s)}function VL(s){switch(s.kind){case 175:case 178:case 179:return!0;default:return!1}}function fp(s){return hg(s)||Eo(s)}function kx(s){let c=s.kind;return c===181||c===180||c===172||c===174||c===182||c===178||c===179||c===355}function NY(s){return kx(s)||MI(s)}function ww(s){let c=s.kind;return c===304||c===305||c===306||c===175||c===178||c===179}function uc(s){return OAe(s.kind)}function Sge(s){switch(s.kind){case 185:case 186:return!0}return!1}function Nu(s){if(s){let c=s.kind;return c===208||c===207}return!1}function DY(s){let c=s.kind;return c===210||c===211}function f3(s){let c=s.kind;return c===209||c===233}function CW(s){switch(s.kind){case 261:case 170:case 209:return!0}return!1}function GJ(s){return nc(s)||Si(s)||_W(s)||LJ(s)}function FJ(s){return ZJ(s)||Pre(s)}function ZJ(s){switch(s.kind){case 207:case 211:return!0}return!1}function _W(s){switch(s.kind){case 209:case 304:case 305:case 306:return!0}return!1}function Pre(s){switch(s.kind){case 208:case 210:return!0}return!1}function LJ(s){switch(s.kind){case 209:case 233:case 231:case 210:case 211:case 80:case 212:case 213:return!0}return zm(s,!0)}function Mre(s){let c=s.kind;return c===212||c===167||c===206}function VJ(s){let c=s.kind;return c===212||c===167}function Hre(s){return SF(s)||ZF(s)}function SF(s){switch(s.kind){case 214:case 215:case 216:case 171:case 287:case 286:case 290:return!0;case 227:return s.operatorToken.kind===104;default:return!1}}function Av(s){return s.kind===214||s.kind===215}function yW(s){let c=s.kind;return c===229||c===15}function G_(s){return Bye(u2(s).kind)}function Bye(s){switch(s){case 212:case 213:case 215:case 214:case 285:case 286:case 289:case 216:case 210:case 218:case 211:case 232:case 219:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 229:case 97:case 106:case 110:case 112:case 108:case 236:case 234:case 237:case 102:case 283:return!0;default:return!1}}function Yre(s){return wye(u2(s).kind)}function wye(s){switch(s){case 225:case 226:case 221:case 222:case 223:case 224:case 217:return!0;default:return Bye(s)}}function uN(s){switch(s.kind){case 226:return!0;case 225:return s.operator===46||s.operator===47;default:return!1}}function vge(s){switch(s.kind){case 106:case 112:case 97:case 225:return!0;default:return FL(s)}}function un(s){return kY(u2(s).kind)}function kY(s){switch(s){case 228:case 230:case 220:case 227:case 231:case 235:case 233:case 357:case 356:case 239:return!0;default:return wye(s)}}function vd(s){let c=s.kind;return c===217||c===235}function YT(s,c){switch(s.kind){case 249:case 250:case 251:case 247:case 248:return!0;case 257:return c&&YT(s.statement,c)}return!1}function gN(s){return yf(s)||Vh(s)}function Gb(s){return zt(s,gN)}function I7(s){return!HY(s)&&!yf(s)&&!Ga(s,32)&&!c_(s)}function QT(s){return HY(s)||yf(s)||Ga(s,32)}function WL(s){return s.kind===250||s.kind===251}function h7(s){return eg(s)||un(s)}function m7(s){return eg(s)}function yE(s){return d_(s)||un(s)}function Bge(s){let c=s.kind;return c===269||c===268||c===80}function Qre(s){let c=s.kind;return c===269||c===268}function Tye(s){let c=s.kind;return c===80||c===268}function xx(s){let c=s.kind;return c===276||c===275}function I3(s){return s.kind===268||s.kind===267}function bE(s){switch(s.kind){case 220:case 227:case 209:case 214:case 180:case 264:case 232:case 176:case 177:case 186:case 181:case 213:case 267:case 307:case 278:case 279:case 282:case 263:case 219:case 185:case 178:case 80:case 274:case 272:case 277:case 182:case 265:case 339:case 341:case 318:case 342:case 349:case 324:case 347:case 323:case 292:case 293:case 294:case 201:case 175:case 174:case 268:case 203:case 281:case 271:case 275:case 215:case 15:case 9:case 211:case 170:case 212:case 304:case 173:case 172:case 179:case 305:case 308:case 306:case 11:case 266:case 188:case 169:case 261:return!0;default:return!1}}function HI(s){switch(s.kind){case 220:case 242:case 180:case 270:case 300:case 176:case 195:case 177:case 186:case 181:case 249:case 250:case 251:case 263:case 219:case 185:case 178:case 182:case 339:case 341:case 318:case 324:case 347:case 201:case 175:case 174:case 268:case 179:case 308:case 266:return!0;default:return!1}}function EE(s){return s===220||s===209||s===264||s===232||s===176||s===177||s===267||s===307||s===282||s===263||s===219||s===178||s===274||s===272||s===277||s===265||s===292||s===175||s===174||s===268||s===271||s===275||s===281||s===170||s===304||s===173||s===172||s===179||s===305||s===266||s===169||s===261||s===347||s===339||s===349||s===203}function Xre(s){return s===263||s===283||s===264||s===265||s===266||s===267||s===268||s===273||s===272||s===279||s===278||s===271}function wge(s){return s===253||s===252||s===260||s===247||s===245||s===243||s===250||s===251||s===249||s===246||s===257||s===254||s===256||s===258||s===259||s===244||s===248||s===255||s===354}function em(s){return s.kind===169?s.parent&&s.parent.kind!==346||Bo(s):EE(s.kind)}function Tge(s){return Xre(s.kind)}function WJ(s){return wge(s.kind)}function Lc(s){let c=s.kind;return wge(c)||Xre(c)||Rge(s)}function Rge(s){return s.kind!==242||s.parent!==void 0&&(s.parent.kind===259||s.parent.kind===300)?!1:!wW(s)}function Jre(s){let c=s.kind;return wge(c)||Xre(c)||c===242}function xY(s){let c=s.kind;return c===284||c===167||c===80}function OL(s){let c=s.kind;return c===110||c===80||c===212||c===296}function OJ(s){let c=s.kind;return c===285||c===295||c===286||c===12||c===289}function PJ(s){let c=s.kind;return c===292||c===294}function MJ(s){let c=s.kind;return c===11||c===295}function nI(s){let c=s.kind;return c===287||c===286}function h3(s){let c=s.kind;return c===287||c===286||c===290}function HJ(s){let c=s.kind;return c===297||c===298}function m3(s){return s.kind>=310&&s.kind<=352}function C7(s){return s.kind===321||s.kind===320||s.kind===322||Gx(s)||C3(s)||FU(s)||s9(s)}function C3(s){return s.kind>=328&&s.kind<=352}function dv(s){return s.kind===179}function TB(s){return s.kind===178}function jm(s){if(!wne(s))return!1;let{jsDoc:c}=s;return!!c&&c.length>0}function mf(s){return!!s.type}function XT(s){return!!s.initializer}function d1(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:case 307:return!0;default:return!1}}function GY(s){return s.kind===292||s.kind===294||ww(s)}function _7(s){return s.kind===184||s.kind===234}var CC=1073741823;function Ure(s){let c=CC;for(let g of s){if(!g.length)continue;let d=0;for(;d0?g.parent.parameters[h-1]:void 0,S=c.text,R=_?Nn(a2(S,Yu(S,_.end+1,!1,!0)),CE(S,s.pos)):a2(S,Yu(S,s.pos,!1,!0));return zt(R)&&Rye(Ei(R),c)}let d=g&&$ge(g,c);return!!F(d,h=>Rye(h,c))}var zre=[],QD="tslib",FY=160,qre=1e6,Nge=500;function yp(s,c){let g=s.declarations;if(g){for(let d of g)if(d.kind===c)return d}}function Dge(s,c){return Le(s.declarations||E,g=>g.kind===c)}function $u(s){let c=new Map;if(s)for(let g of s)c.set(g.escapedName,g);return c}function Tw(s){return(s.flags&33554432)!==0}function XD(s){return!!(s.flags&1536)&&s.escapedName.charCodeAt(0)===34}var y7=kge();function kge(){var s="";let c=g=>s+=g;return{getText:()=>s,write:c,rawWrite:c,writeKeyword:c,writeOperator:c,writePunctuation:c,writeSpace:c,writeStringLiteral:c,writeLiteral:c,writeParameter:c,writeProperty:c,writeSymbol:(g,d)=>c(g),writeTrailingSemicolon:c,writeComment:c,getTextPos:()=>s.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!s.length&&dc(s.charCodeAt(s.length-1)),writeLine:()=>s+=" ",increaseIndent:Dc,decreaseIndent:Dc,clear:()=>s=""}}function YJ(s,c){return s.configFilePath!==c.configFilePath||mZe(s,c)}function mZe(s,c){return w0(s,c,get)}function xge(s,c){return w0(s,c,zOt)}function w0(s,c,g){return s!==c&&g.some(d=>!ide(uz(s,d),uz(c,d)))}function Rw(s,c){for(;;){let g=c(s);if(g==="quit")return;if(g!==void 0)return g;if(cl(s))return;s=s.parent}}function Fh(s,c){let g=s.entries();for(let[d,h]of g){let _=c(h,d);if(_)return _}}function NB(s,c){let g=s.keys();for(let d of g){let h=c(d);if(h)return h}}function b7(s,c){s.forEach((g,d)=>{c.set(d,g)})}function bW(s){let c=y7.getText();try{return s(y7),y7.getText()}finally{y7.clear(),y7.writeKeyword(c)}}function QJ(s){return s.end-s.pos}function $re(s,c){return s.path===c.path&&!s.prepend==!c.prepend&&!s.circular==!c.circular}function Gge(s,c){return s===c||s.resolvedModule===c.resolvedModule||!!s.resolvedModule&&!!c.resolvedModule&&s.resolvedModule.isExternalLibraryImport===c.resolvedModule.isExternalLibraryImport&&s.resolvedModule.extension===c.resolvedModule.extension&&s.resolvedModule.resolvedFileName===c.resolvedModule.resolvedFileName&&s.resolvedModule.originalPath===c.resolvedModule.originalPath&&Nye(s.resolvedModule.packageId,c.resolvedModule.packageId)&&s.alternateResult===c.alternateResult}function PL(s){return s.resolvedModule}function E7(s){return s.resolvedTypeReferenceDirective}function XJ(s,c,g,d,h){var _;let S=(_=c.getResolvedModule(s,g,d))==null?void 0:_.alternateResult,R=S&&(F_(c.getCompilerOptions())===2?[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[S]]:[Z.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,[S,S.includes(Yx+"@types/")?`@types/${Qie(h)}`:h]]),T=R?wu(void 0,R[0],...R[1]):c.typesPackageExists(h)?wu(void 0,Z.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,h,Qie(h)):c.packageBundlesTypes(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,h,g):wu(void 0,Z.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,g,Qie(h));return T&&(T.repopulateInfo=()=>({moduleReference:g,mode:d,packageName:h===g?void 0:h})),T}function S7(s){let c=zT(s.fileName),g=s.packageJsonScope,d=c===".ts"?".mts":c===".js"?".mjs":void 0,h=g&&!g.contents.packageJsonContent.type?d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,d,To(g.packageDirectory,"package.json")):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,To(g.packageDirectory,"package.json")):d?wu(void 0,Z.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,d):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module);return h.repopulateInfo=()=>!0,h}function Nye(s,c){return s===c||!!s&&!!c&&s.name===c.name&&s.subModuleName===c.subModuleName&&s.version===c.version&&s.peerDependencies===c.peerDependencies}function JJ({name:s,subModuleName:c}){return c?`${s}/${c}`:s}function AN(s){return`${JJ(s)}@${s.version}${s.peerDependencies??""}`}function Fge(s,c){return s===c||s.resolvedTypeReferenceDirective===c.resolvedTypeReferenceDirective||!!s.resolvedTypeReferenceDirective&&!!c.resolvedTypeReferenceDirective&&s.resolvedTypeReferenceDirective.resolvedFileName===c.resolvedTypeReferenceDirective.resolvedFileName&&!!s.resolvedTypeReferenceDirective.primary==!!c.resolvedTypeReferenceDirective.primary&&s.resolvedTypeReferenceDirective.originalPath===c.resolvedTypeReferenceDirective.originalPath}function ene(s,c,g,d){pe.assert(s.length===c.length);for(let h=0;h=0),rn(c)[s]}function Lge(s){let c=ms(s),g=Ra(c,s.pos);return`${c.fileName}(${g.line+1},${g.character+1})`}function LY(s,c){pe.assert(s>=0);let g=rn(c),d=s,h=c.text;if(d+1===g.length)return h.length-1;{let _=g[d],S=g[d+1]-1;for(pe.assert(ml(h.charCodeAt(S)));_<=S&&ml(h.charCodeAt(S));)S--;return S}}function v7(s,c,g){return!(g&&g(c))&&!s.identifiers.has(c)}function af(s){return s===void 0?!0:s.pos===s.end&&s.pos>=0&&s.kind!==1}function p1(s){return!af(s)}function Vge(s,c){return Ds(s)?c===s.expression:dl(s)?c===s.modifiers:ss(s)?c===s.initializer:pi(s)?c===s.questionToken&&i0(s):Cm(s)?c===s.modifiers||c===s.questionToken||c===s.exclamationToken||VY(s.modifiers,c,fp):u0(s)?c===s.equalsToken||c===s.modifiers||c===s.questionToken||c===s.exclamationToken||VY(s.modifiers,c,fp):gu(s)?c===s.exclamationToken:Tc(s)?c===s.typeParameters||c===s.type||VY(s.typeParameters,c,Ds):wg(s)?c===s.typeParameters||VY(s.typeParameters,c,Ds):kg(s)?c===s.typeParameters||c===s.type||VY(s.typeParameters,c,Ds):wEe(s)?c===s.modifiers||VY(s.modifiers,c,fp):!1}function VY(s,c,g){return!s||Ki(c)||!g(c)?!1:k(s,c)}function Dye(s,c,g){if(c===void 0||c.length===0)return s;let d=0;for(;d[`${Ra(s,S.range.end).line}`,S])),d=new Map;return{getUnusedExpectations:h,markUsed:_};function h(){return Do(g.entries()).filter(([S,R])=>R.type===0&&!d.get(S)).map(([S,R])=>R)}function _(S){return g.has(`${S}`)?(d.set(`${S}`,!0),!0):!1}}function UD(s,c,g){if(af(s))return s.pos;if(m3(s)||s.kind===12)return Yu((c??ms(s)).text,s.pos,!1,!0);if(g&&jm(s))return UD(s.jsDoc[0],c);if(s.kind===353){c??(c=ms(s));let d=Nc(H$e(s,c));if(d)return UD(d,c,g)}return Yu((c??ms(s)).text,s.pos,!1,!1,XY(s))}function nne(s,c){let g=!af(s)&&HB(s)?be(s.modifiers,Eo):void 0;return g?Yu((c||ms(s)).text,g.end):UD(s,c)}function Pge(s,c){let g=!af(s)&&HB(s)&&s.modifiers?Ei(s.modifiers):void 0;return g?Yu((c||ms(s)).text,g.end):UD(s,c)}function vF(s,c,g=!1){return OY(s.text,c,g)}function CZe(s){return!!ji(s,K3)}function WY(s){return!!(Vh(s)&&s.exportClause&&ak(s.exportClause)&&pv(s.exportClause.name))}function KD(s){return s.kind===11?s.text:Bc(s.escapedText)}function BF(s){return s.kind===11?pp(s.text):s.escapedText}function pv(s){return(s.kind===11?s.text:s.escapedText)==="default"}function OY(s,c,g=!1){if(af(c))return"";let d=s.substring(g?c.pos:Yu(s,c.pos),c.end);return CZe(c)&&(d=d.split(/\r\n|\n|\r/).map(h=>h.replace(/^\s*\*/,"").trimStart()).join(` +`)),d}function Fp(s,c=!1){return vF(ms(s),s,c)}function Gye(s){return s.pos}function SW(s,c){return Oc(s,c,Gye,Zt)}function rA(s){let c=s.emitNode;return c&&c.flags||0}function f1(s){let c=s.emitNode;return c&&c.internalFlags||0}var ine=LA(()=>new Map(Object.entries({Array:new Map(Object.entries({es2015:["find","findIndex","fill","copyWithin","entries","keys","values"],es2016:["includes"],es2019:["flat","flatMap"],es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Iterator:new Map(Object.entries({es2015:E})),AsyncIterator:new Map(Object.entries({es2015:E})),ArrayBuffer:new Map(Object.entries({es2024:["maxByteLength","resizable","resize","detached","transfer","transferToFixedLength"]})),Atomics:new Map(Object.entries({es2017:["add","and","compareExchange","exchange","isLockFree","load","or","store","sub","wait","notify","xor"],es2024:["waitAsync"],esnext:["pause"]})),SharedArrayBuffer:new Map(Object.entries({es2017:["byteLength","slice"],es2024:["growable","maxByteLength","grow"]})),AsyncIterable:new Map(Object.entries({es2018:E})),AsyncIterableIterator:new Map(Object.entries({es2018:E})),AsyncGenerator:new Map(Object.entries({es2018:E})),AsyncGeneratorFunction:new Map(Object.entries({es2018:E})),RegExp:new Map(Object.entries({es2015:["flags","sticky","unicode"],es2018:["dotAll"],es2024:["unicodeSets"]})),Reflect:new Map(Object.entries({es2015:["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"]})),ArrayConstructor:new Map(Object.entries({es2015:["from","of"],esnext:["fromAsync"]})),ObjectConstructor:new Map(Object.entries({es2015:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],es2017:["values","entries","getOwnPropertyDescriptors"],es2019:["fromEntries"],es2022:["hasOwn"],es2024:["groupBy"]})),NumberConstructor:new Map(Object.entries({es2015:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"]})),Math:new Map(Object.entries({es2015:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],esnext:["f16round"]})),Map:new Map(Object.entries({es2015:["entries","keys","values"]})),MapConstructor:new Map(Object.entries({es2024:["groupBy"]})),Set:new Map(Object.entries({es2015:["entries","keys","values"],esnext:["union","intersection","difference","symmetricDifference","isSubsetOf","isSupersetOf","isDisjointFrom"]})),PromiseConstructor:new Map(Object.entries({es2015:["all","race","reject","resolve"],es2020:["allSettled"],es2021:["any"],es2024:["withResolvers"]})),Symbol:new Map(Object.entries({es2015:["for","keyFor"],es2019:["description"]})),WeakMap:new Map(Object.entries({es2015:["entries","keys","values"]})),WeakSet:new Map(Object.entries({es2015:["entries","keys","values"]})),String:new Map(Object.entries({es2015:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],es2017:["padStart","padEnd"],es2019:["trimStart","trimEnd","trimLeft","trimRight"],es2020:["matchAll"],es2021:["replaceAll"],es2022:["at"],es2024:["isWellFormed","toWellFormed"]})),StringConstructor:new Map(Object.entries({es2015:["fromCodePoint","raw"]})),DateTimeFormat:new Map(Object.entries({es2017:["formatToParts"]})),Promise:new Map(Object.entries({es2015:E,es2018:["finally"]})),RegExpMatchArray:new Map(Object.entries({es2018:["groups"]})),RegExpExecArray:new Map(Object.entries({es2018:["groups"]})),Intl:new Map(Object.entries({es2018:["PluralRules"]})),NumberFormat:new Map(Object.entries({es2018:["formatToParts"]})),SymbolConstructor:new Map(Object.entries({es2020:["matchAll"],esnext:["metadata","dispose","asyncDispose"]})),DataView:new Map(Object.entries({es2020:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],esnext:["setFloat16","getFloat16"]})),BigInt:new Map(Object.entries({es2020:E})),RelativeTimeFormat:new Map(Object.entries({es2020:["format","formatToParts","resolvedOptions"]})),Int8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8ClampedArray:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float16Array:new Map(Object.entries({esnext:E})),Float32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float64Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigInt64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigUint64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),w7=(s=>(s[s.None=0]="None",s[s.NeverAsciiEscape=1]="NeverAsciiEscape",s[s.JsxAttributeEscape=2]="JsxAttributeEscape",s[s.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",s[s.AllowNumericSeparator=8]="AllowNumericSeparator",s))(w7||{});function Mge(s,c,g){if(c&&_Ze(s,g))return vF(c,s);switch(s.kind){case 11:{let d=g&2?cbe:g&1||rA(s)&16777216?jT:Vne;return s.singleQuote?"'"+d(s.text,39)+"'":'"'+d(s.text,34)+'"'}case 15:case 16:case 17:case 18:{let d=g&1||rA(s)&16777216?jT:Vne,h=s.rawText??obe(d(s.text,96));switch(s.kind){case 15:return"`"+h+"`";case 16:return"`"+h+"${";case 17:return"}"+h+"${";case 18:return"}"+h+"`"}break}case 9:case 10:return s.text;case 14:return g&4&&s.isUnterminated?s.text+(s.text.charCodeAt(s.text.length-1)===92?" /":"/"):s.text}return pe.fail(`Literal kind '${s.kind}' not accounted for.`)}function _Ze(s,c){if(ap(s)||!s.parent||c&4&&s.isUnterminated)return!1;if(yC(s)){if(s.numericLiteralFlags&26656)return!1;if(s.numericLiteralFlags&512)return!!(c&8)}return!AQ(s)}function Hge(s){return Xs(s)?`"${jT(s)}"`:""+s}function Dw(s){return dp(s).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function jJ(s){return(hm(s)&7)!==0||sne(s)}function sne(s){let c=Fw(s);return c.kind===261&&c.parent.kind===300}function c_(s){return Lh(s)&&(s.name.kind===11||DB(s))}function PY(s){return Lh(s)&&s.name.kind===11}function one(s){return Lh(s)&&Lg(s.name)}function Yge(s){return Lh(s)||Ir(s)}function MY(s){return Qge(s.valueDeclaration)}function Qge(s){return!!s&&s.kind===268&&!s.body}function Xge(s){return s.kind===308||s.kind===268||p3(s)}function DB(s){return!!(s.flags&2048)}function wF(s){return c_(s)&&ane(s)}function ane(s){switch(s.parent.kind){case 308:return Lm(s.parent);case 269:return c_(s.parent.parent)&&cl(s.parent.parent.parent)&&!Lm(s.parent.parent.parent)}return!1}function zJ(s){var c;return(c=s.declarations)==null?void 0:c.find(g=>!wF(g)&&!(Lh(g)&&DB(g)))}function yZe(s){return s===1||100<=s&&s<=199}function _3(s,c){return Lm(s)||yZe(a0(c))&&!!s.commonJsModuleIndicator}function cne(s,c){switch(s.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return s.isDeclarationFile?!1:!!(u_(c,"alwaysStrict")||BOt(s.statements)||Lm(s)||uS(c))}function qJ(s){return!!(s.flags&33554432)||Ga(s,128)}function $J(s,c){switch(s.kind){case 308:case 270:case 300:case 268:case 249:case 250:case 251:case 177:case 175:case 178:case 179:case 263:case 219:case 220:case 173:case 176:return!0;case 242:return!p3(c)}return!1}function lne(s){switch(pe.type(s),s.kind){case 339:case 347:case 324:return!0;default:return une(s)}}function une(s){switch(pe.type(s),s.kind){case 180:case 181:case 174:case 182:case 185:case 186:case 318:case 264:case 232:case 265:case 266:case 346:case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function vW(s){switch(s.kind){case 273:case 272:return!0;default:return!1}}function Jge(s){return vW(s)||TW(s)}function T7(s){return vW(s)||mne(s)}function R7(s){switch(s.kind){case 273:case 272:case 244:case 264:case 263:case 268:case 266:case 265:case 267:return!0;default:return!1}}function Uge(s){return HY(s)||Lh(s)||qm(s)||jp(s)}function HY(s){return vW(s)||Vh(s)}function N7(s){return ji(s.parent,c=>!!(Oet(c)&1))}function oS(s){return ji(s.parent,c=>$J(c,c.parent))}function Kge(s,c){let g=oS(s);for(;g;)c(g),g=oS(g)}function Md(s){return!s||QJ(s)===0?"(Missing)":Fp(s)}function jge(s){return s.declaration?Md(s.declaration.parameters[0].name):void 0}function YY(s){return s.kind===168&&!h1(s.expression)}function QY(s){var c;switch(s.kind){case 80:case 81:return(c=s.emitNode)!=null&&c.autoGenerate?void 0:s.escapedText;case 11:case 9:case 10:case 15:return pp(s.text);case 168:return h1(s.expression)?pp(s.expression.text):void 0;case 296:return gS(s);default:return pe.assertNever(s)}}function BW(s){return pe.checkDefined(QY(s))}function ly(s){switch(s.kind){case 110:return"this";case 81:case 80:return QJ(s)===0?Vo(s):Fp(s);case 167:return ly(s.left)+"."+ly(s.right);case 212:return Ir(s.name)||p(s.name)?ly(s.expression)+"."+ly(s.name):pe.assertNever(s.name);case 312:return ly(s.left)+"#"+ly(s.right);case 296:return ly(s.namespace)+":"+ly(s.name);default:return pe.assertNever(s)}}function ho(s,c,...g){let d=ms(s);return SE(d,s,c,...g)}function y3(s,c,g,...d){let h=Yu(s.text,c.pos);return rm(s,h,c.end-h,g,...d)}function SE(s,c,g,...d){let h=qa(s,c);return rm(s,h.start,h.length,g,...d)}function kw(s,c,g,d){let h=qa(s,c);return qe(s,h.start,h.length,g,d)}function ie(s,c,g,d){let h=Yu(s.text,c.pos);return qe(s,h,c.end-h,g,d)}function he(s,c,g){pe.assertGreaterThanOrEqual(c,0),pe.assertGreaterThanOrEqual(g,0),pe.assertLessThanOrEqual(c,s.length),pe.assertLessThanOrEqual(c+g,s.length)}function qe(s,c,g,d,h){return he(s.text,c,g),{file:s,start:c,length:g,code:d.code,category:d.category,messageText:d.next?d:d.messageText,relatedInformation:h,canonicalHead:d.canonicalHead}}function Ut(s,c,g){return{file:s,start:0,length:0,code:c.code,category:c.category,messageText:c.next?c:c.messageText,relatedInformation:g}}function Qr(s){return typeof s.messageText=="string"?{code:s.code,category:s.category,messageText:s.messageText,next:s.next}:s.messageText}function kn(s,c,g){return{file:s,start:c.pos,length:c.end-c.pos,code:g.code,category:g.category,messageText:g.message}}function Fi(s,...c){return{code:s.code,messageText:iQ(s,...c)}}function rs(s,c){let g=Nb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);g.scan();let d=g.getTokenStart();return RA(d,g.getTokenEnd())}function qs(s,c){let g=Nb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);return g.scan(),g.getToken()}function vc(s,c){let g=Yu(s.text,c.pos);if(c.body&&c.body.kind===242){let{line:d}=Ra(s,c.body.pos),{line:h}=Ra(s,c.body.end);if(d0?c.statements[0].pos:c.end;return RA(_,S)}case 254:case 230:{let _=Yu(s.text,c.pos);return rs(s,_)}case 239:{let _=Yu(s.text,c.expression.end);return rs(s,_)}case 351:{let _=Yu(s.text,c.tagName.pos);return rs(s,_)}case 177:{let _=c,S=Yu(s.text,_.pos),R=Nb(s.languageVersion,!0,s.languageVariant,s.text,void 0,S),T=R.scan();for(;T!==137&&T!==1;)T=R.scan();let O=R.getTokenEnd();return RA(S,O)}}if(g===void 0)return rs(s,c.pos);pe.assert(!aR(g));let d=af(g),h=d||r9(c)?g.pos:Yu(s.text,g.pos);return d?(pe.assert(h===g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h===g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(pe.assert(h>=g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h<=g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),RA(h,g.end)}function fc(s){return s.kind===308&&!Sl(s)}function Sl(s){return(s.externalModuleIndicator||s.commonJsModuleIndicator)!==void 0}function Zu(s){return s.scriptKind===6}function OA(s){return!!(Hc(s)&4096)}function Cf(s){return!!(Hc(s)&8&&!We(s,s.parent))}function Bd(s){return(hm(s)&7)===6}function iI(s){return(hm(s)&7)===4}function sI(s){return(hm(s)&7)===2}function JT(s){let c=hm(s)&7;return c===2||c===4||c===6}function aS(s){return(hm(s)&7)===1}function Gy(s){return s.kind===214&&s.expression.kind===108}function jp(s){if(s.kind!==214)return!1;let c=s.expression;return c.kind===102||Du(c)&&c.keywordToken===102&&c.name.escapedText==="defer"}function fv(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}function Fy(s){return qm(s)&&wE(s.argument)&&Lg(s.argument.literal)}function cS(s){return s.kind===245&&s.expression.kind===11}function gne(s){return!!(rA(s)&2097152)}function zge(s){return gne(s)&&ah(s)}function NVt(s){return Ir(s.name)&&!s.initializer}function qge(s){return gne(s)&&Eh(s)&&ue(s.declarationList.declarations,NVt)}function $ge(s,c){return s.kind!==12?CE(c.text,s.pos):void 0}function Fye(s,c){let g=s.kind===170||s.kind===169||s.kind===219||s.kind===220||s.kind===218||s.kind===261||s.kind===282?Nn(a2(c,s.pos),CE(c,s.pos)):CE(c,s.pos);return Le(g,d=>d.end<=s.end&&c.charCodeAt(d.pos+1)===42&&c.charCodeAt(d.pos+2)===42&&c.charCodeAt(d.pos+3)!==47)}var DVt=/^\/\/\/\s*/,kVt=/^\/\/\/\s*/,xVt=/^\/\/\/\s*/,GVt=/^\/\/\/\s*/,FVt=/^\/\/\/\s*/,ZVt=/^\/\/\/\s*/;function xw(s){if(183<=s.kind&&s.kind<=206)return!0;switch(s.kind){case 133:case 159:case 150:case 163:case 154:case 136:case 155:case 151:case 157:case 106:case 146:return!0;case 116:return s.parent.kind!==223;case 234:return Lqe(s);case 169:return s.parent.kind===201||s.parent.kind===196;case 80:(s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s)&&(s=s.parent),pe.assert(s.kind===80||s.kind===167||s.kind===212,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 167:case 212:case 110:{let{parent:c}=s;if(c.kind===187)return!1;if(c.kind===206)return!c.isTypeOf;if(183<=c.kind&&c.kind<=206)return!0;switch(c.kind){case 234:return Lqe(c);case 169:return s===c.constraint;case 346:return s===c.constraint;case 173:case 172:case 170:case 261:return s===c.type;case 263:case 219:case 220:case 177:case 175:case 174:case 178:case 179:return s===c.type;case 180:case 181:case 182:return s===c.type;case 217:return s===c.type;case 214:case 215:case 216:return k(c.typeArguments,s)}}}return!1}function Lqe(s){return S9e(s.parent)||Lz(s.parent)||y1(s.parent)&&!DAe(s)}function TF(s,c){return g(s);function g(d){switch(d.kind){case 254:return c(d);case 270:case 242:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 297:case 298:case 257:case 259:case 300:return Lu(d,g)}}}function bZe(s,c){return g(s);function g(d){switch(d.kind){case 230:c(d);let h=d.expression;h&&g(h);return;case 267:case 265:case 268:case 266:return;default:if(Eu(d)){if(d.name&&d.name.kind===168){g(d.name.expression);return}}else xw(d)||Lu(d,g)}}}function Zye(s){return s&&s.kind===189?s.elementType:s&&s.kind===184?Ws(s.typeArguments):void 0}function eAe(s){switch(s.kind){case 265:case 264:case 232:case 188:return s.members;case 211:return s.properties}}function D7(s){if(s)switch(s.kind){case 209:case 307:case 170:case 304:case 173:case 172:case 305:case 261:return!0}return!1}function k7(s){return s.parent.kind===262&&s.parent.parent.kind===244}function Lye(s){return Bo(s)?ag(s.parent)&&po(s.parent.parent)&&oI(s.parent.parent)===2||tAe(s.parent):!1}function tAe(s){return Bo(s)?po(s)&&oI(s)===1:!1}function EZe(s){return(nc(s)?sI(s)&&Ir(s.name)&&k7(s):pi(s)?D3(s)&&tm(s):ss(s)&&D3(s))||tAe(s)}function SZe(s){switch(s.kind){case 175:case 174:case 177:case 178:case 179:case 263:case 219:return!0}return!1}function Vye(s,c){for(;;){if(c&&c(s),s.statement.kind!==257)return s.statement;s=s.statement}}function wW(s){return s&&s.kind===242&&Eu(s.parent)}function g2(s){return s&&s.kind===175&&s.parent.kind===211}function rAe(s){return(s.kind===175||s.kind===178||s.kind===179)&&(s.parent.kind===211||s.parent.kind===232)}function vZe(s){return s&&s.kind===1}function BZe(s){return s&&s.kind===0}function eU(s,c,g,d){return F(s?.properties,h=>{if(!Cm(h))return;let _=QY(h.name);return c===_||d&&d===_?g(h):void 0})}function x7(s){if(s&&s.statements.length){let c=s.statements[0].expression;return Gs(c,ag)}}function nAe(s,c,g){return Ane(s,c,d=>YI(d.initializer)?de(d.initializer.elements,h=>Lg(h)&&h.text===g):void 0)}function Ane(s,c,g){return eU(x7(s),c,g)}function I1(s){return ji(s.parent,Eu)}function iAe(s){return ji(s.parent,Gd)}function _C(s){return ji(s.parent,xa)}function wZe(s){return ji(s.parent,c=>xa(c)||Eu(c)?"quit":dl(c))}function dne(s){return ji(s.parent,p3)}function sAe(s){let c=ji(s.parent,g=>xa(g)?"quit":Eo(g));return c&&xa(c.parent)?_C(c.parent):_C(c??s)}function s0(s,c,g){for(pe.assert(s.kind!==308);;){if(s=s.parent,!s)return pe.fail();switch(s.kind){case 168:if(g&&xa(s.parent.parent))return s;s=s.parent.parent;break;case 171:s.parent.kind===170&&MI(s.parent.parent)?s=s.parent.parent:MI(s.parent)&&(s=s.parent);break;case 220:if(!c)continue;case 263:case 219:case 268:case 176:case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 180:case 181:case 182:case 267:case 308:return s}}}function TZe(s){switch(s.kind){case 220:case 263:case 219:case 173:return!0;case 242:switch(s.parent.kind){case 177:case 175:case 178:case 179:return!0;default:return!1}default:return!1}}function oAe(s){Ir(s)&&(mm(s.parent)||ah(s.parent))&&s.parent.name===s&&(s=s.parent);let c=s0(s,!0,!1);return cl(c)}function RZe(s){let c=s0(s,!1,!1);if(c)switch(c.kind){case 177:case 263:case 219:return c}}function G7(s,c){for(;;){if(s=s.parent,!s)return;switch(s.kind){case 168:s=s.parent;break;case 263:case 219:case 220:if(!c)continue;case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 176:return s;case 171:s.parent.kind===170&&MI(s.parent.parent)?s=s.parent.parent:MI(s.parent)&&(s=s.parent);break}}}function HL(s){if(s.kind===219||s.kind===220){let c=s,g=s.parent;for(;g.kind===218;)c=g,g=g.parent;if(g.kind===214&&g.expression===c)return g}}function Zy(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===108}function pne(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===110}function aAe(s){var c;return!!s&&nc(s)&&((c=s.initializer)==null?void 0:c.kind)===110}function NZe(s){return!!s&&(u0(s)||Cm(s))&&po(s.parent.parent)&&s.parent.parent.operatorToken.kind===64&&s.parent.parent.right.kind===110}function fne(s){switch(s.kind){case 184:return s.typeName;case 234:return Hd(s.expression)?s.expression:void 0;case 80:case 167:return s}}function cAe(s){switch(s.kind){case 216:return s.tag;case 287:case 286:return s.tagName;case 227:return s.right;case 290:return s;default:return s.expression}}function tU(s,c,g,d){if(s&&sh(c)&&p(c.name))return!1;switch(c.kind){case 264:return!0;case 232:return!s;case 173:return g!==void 0&&(s?mm(g):xa(g)&&!ZW(c)&&!mbe(c));case 178:case 179:case 175:return c.body!==void 0&&g!==void 0&&(s?mm(g):xa(g));case 170:return s?g!==void 0&&g.body!==void 0&&(g.kind===177||g.kind===175||g.kind===179)&&GW(g)!==c&&d!==void 0&&d.kind===264:!1}return!1}function rU(s,c,g,d){return m1(c)&&tU(s,c,g,d)}function Ine(s,c,g,d){return rU(s,c,g,d)||nU(s,c,g)}function nU(s,c,g){switch(c.kind){case 264:return zt(c.members,d=>Ine(s,d,c,g));case 232:return!s&&zt(c.members,d=>Ine(s,d,c,g));case 175:case 179:case 177:return zt(c.parameters,d=>rU(s,d,c,g));default:return!1}}function Fx(s,c){if(rU(s,c))return!0;let g=fN(c);return!!g&&nU(s,g,c)}function Wye(s,c,g){let d;if(wB(c)){let{firstAccessor:h,secondAccessor:_,setAccessor:S}=FW(g.members,c),R=m1(h)?h:_&&m1(_)?_:void 0;if(!R||c!==R)return!1;d=S?.parameters}else gu(c)&&(d=c.parameters);if(rU(s,c,g))return!0;if(d){for(let h of d)if(!DF(h)&&rU(s,h,c,g))return!0}return!1}function Oye(s){if(s.textSourceNode){switch(s.textSourceNode.kind){case 11:return Oye(s.textSourceNode);case 15:return s.text===""}return!1}return s.text===""}function iU(s){let{parent:c}=s;return c.kind===287||c.kind===286||c.kind===288?c.tagName===s:!1}function UT(s){switch(s.kind){case 108:case 106:case 112:case 97:case 14:case 210:case 211:case 212:case 213:case 214:case 215:case 216:case 235:case 217:case 239:case 236:case 218:case 219:case 232:case 220:case 223:case 221:case 222:case 225:case 226:case 227:case 228:case 231:case 229:case 233:case 285:case 286:case 289:case 230:case 224:return!0;case 237:return!jp(s.parent)||s.parent.expression!==s;case 234:return!y1(s.parent)&&!Lz(s.parent);case 167:for(;s.parent.kind===167;)s=s.parent;return s.parent.kind===187||Gx(s.parent)||wde(s.parent)||j3(s.parent)||iU(s);case 312:for(;j3(s.parent);)s=s.parent;return s.parent.kind===187||Gx(s.parent)||wde(s.parent)||j3(s.parent)||iU(s);case 81:return po(s.parent)&&s.parent.left===s&&s.parent.operatorToken.kind===103;case 80:if(s.parent.kind===187||Gx(s.parent)||wde(s.parent)||j3(s.parent)||iU(s))return!0;case 9:case 10:case 11:case 15:case 110:return hne(s);default:return!1}}function hne(s){let{parent:c}=s;switch(c.kind){case 261:case 170:case 173:case 172:case 307:case 304:case 209:return c.initializer===s;case 245:case 246:case 247:case 248:case 254:case 255:case 256:case 297:case 258:return c.expression===s;case 249:let g=c;return g.initializer===s&&g.initializer.kind!==262||g.condition===s||g.incrementor===s;case 250:case 251:let d=c;return d.initializer===s&&d.initializer.kind!==262||d.expression===s;case 217:case 235:return s===c.expression;case 240:return s===c.expression;case 168:return s===c.expression;case 171:case 295:case 294:case 306:return!0;case 234:return c.expression===s&&!xw(c);case 305:return c.objectAssignmentInitializer===s;case 239:return s===c.expression;default:return UT(c)}}function lAe(s){for(;s.kind===167||s.kind===80;)s=s.parent;return s.kind===187}function DZe(s){return ak(s)&&!!s.parent.moduleSpecifier}function YL(s){return s.kind===272&&s.moduleReference.kind===284}function F7(s){return pe.assert(YL(s)),s.moduleReference.expression}function Pye(s){return TW(s)&&_U(s.initializer).arguments[0]}function b3(s){return s.kind===272&&s.moduleReference.kind!==284}function dN(s){return s?.kind===308}function o0(s){return Bo(s)}function Bo(s){return!!s&&!!(s.flags&524288)}function uAe(s){return!!s&&!!(s.flags&134217728)}function gAe(s){return!Zu(s)}function XY(s){return!!s&&!!(s.flags&16777216)}function AAe(s){return oh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="Object"&&s.typeArguments&&s.typeArguments.length===2&&(s.typeArguments[0].kind===154||s.typeArguments[0].kind===150)}function uy(s,c){if(s.kind!==214)return!1;let{expression:g,arguments:d}=s;if(g.kind!==80||g.escapedText!=="require"||d.length!==1)return!1;let h=d[0];return!c||_A(h)}function Z7(s){return Vqe(s,!1)}function TW(s){return Vqe(s,!0)}function kZe(s){return mg(s)&&TW(s.parent.parent)}function Vqe(s,c){return nc(s)&&!!s.initializer&&uy(c?_U(s.initializer):s.initializer,!0)}function mne(s){return Eh(s)&&s.declarationList.declarations.length>0&&ue(s.declarationList.declarations,c=>Z7(c))}function Cne(s){return s===39||s===34}function _ne(s,c){return vF(c,s).charCodeAt(0)===34}function L7(s){return po(s)||bp(s)||Ir(s)||Ll(s)}function yne(s){return Bo(s)&&s.initializer&&po(s.initializer)&&(s.initializer.operatorToken.kind===57||s.initializer.operatorToken.kind===61)&&s.name&&Hd(s.name)&&sU(s.name,s.initializer.left)?s.initializer.right:s.initializer}function V7(s){let c=yne(s);return c&&QL(c,GF(s.name))}function LVt(s,c){return F(s.properties,g=>Cm(g)&&Ir(g.name)&&g.name.escapedText==="value"&&g.initializer&&QL(g.initializer,c))}function JY(s){if(s&&s.parent&&po(s.parent)&&s.parent.operatorToken.kind===64){let c=GF(s.parent.left);return QL(s.parent.right,c)||VVt(s.parent.left,s.parent.right,c)}if(s&&Ll(s)&&S3(s)){let c=LVt(s.arguments[2],s.arguments[1].text==="prototype");if(c)return c}}function QL(s,c){if(Ll(s)){let g=JA(s.expression);return g.kind===219||g.kind===220?s:void 0}if(s.kind===219||s.kind===232||s.kind===220||ag(s)&&(s.properties.length===0||c))return s}function VVt(s,c,g){let d=po(c)&&(c.operatorToken.kind===57||c.operatorToken.kind===61)&&QL(c.right,g);if(d&&sU(s,c.left))return d}function xZe(s){let c=nc(s.parent)?s.parent.name:po(s.parent)&&s.parent.operatorToken.kind===64?s.parent.left:void 0;return c&&QL(s.right,GF(c))&&Hd(c)&&sU(c,s.left)}function Mye(s){if(po(s.parent)){let c=(s.parent.operatorToken.kind===57||s.parent.operatorToken.kind===61)&&po(s.parent.parent)?s.parent.parent:s.parent;if(c.operatorToken.kind===64&&Ir(c.left))return c.left}else if(nc(s.parent))return s.parent.name}function sU(s,c){return Gw(s)&&Gw(c)?A2(s)===A2(c):Bw(s)&&GZe(c)&&(c.expression.kind===110||Ir(c.expression)&&(c.expression.escapedText==="window"||c.expression.escapedText==="self"||c.expression.escapedText==="global"))?sU(s,Ene(c)):GZe(s)&&GZe(c)?jD(s)===jD(c)&&sU(s.expression,c.expression):!1}function bne(s){for(;zm(s,!0);)s=s.right;return s}function E3(s){return Ir(s)&&s.escapedText==="exports"}function RW(s){return Ir(s)&&s.escapedText==="module"}function pN(s){return(jo(s)||Hye(s))&&RW(s.expression)&&jD(s)==="exports"}function oI(s){let c=WVt(s);return c===5||Bo(s)?c:0}function S3(s){return B(s.arguments)===3&&jo(s.expression)&&Ir(s.expression.expression)&&Vo(s.expression.expression)==="Object"&&Vo(s.expression.name)==="defineProperty"&&h1(s.arguments[1])&&v3(s.arguments[0],!0)}function GZe(s){return jo(s)||Hye(s)}function Hye(s){return Qg(s)&&h1(s.argumentExpression)}function NW(s,c){return jo(s)&&(!c&&s.expression.kind===110||Ir(s.name)&&v3(s.expression,!0))||dAe(s,c)}function dAe(s,c){return Hye(s)&&(!c&&s.expression.kind===110||Hd(s.expression)||NW(s.expression,!0))}function v3(s,c){return Hd(s)||NW(s,c)}function Ene(s){return jo(s)?s.name:s.argumentExpression}function WVt(s){if(Ll(s)){if(!S3(s))return 0;let c=s.arguments[0];return E3(c)||pN(c)?8:NW(c)&&jD(c)==="prototype"?9:7}return s.operatorToken.kind!==64||!bp(s.left)||OVt(bne(s))?0:v3(s.left.expression,!0)&&jD(s.left)==="prototype"&&ag(Yye(s))?6:oU(s.left)}function OVt(s){return iR(s)&&yC(s.expression)&&s.expression.text==="0"}function pAe(s){if(jo(s))return s.name;let c=JA(s.argumentExpression);return yC(c)||_A(c)?c:s}function jD(s){let c=pAe(s);if(c){if(Ir(c))return c.escapedText;if(_A(c)||yC(c))return pp(c.text)}}function oU(s){if(s.expression.kind===110)return 4;if(pN(s))return 2;if(v3(s.expression,!0)){if(GF(s.expression))return 3;let c=s;for(;!Ir(c.expression);)c=c.expression;let g=c.expression;if((g.escapedText==="exports"||g.escapedText==="module"&&jD(c)==="exports")&&NW(s))return 1;if(v3(s,!0)||Qg(s)&&_Ae(s))return 5}return 0}function Yye(s){for(;po(s.right);)s=s.right;return s.right}function Sne(s){return po(s)&&oI(s)===3}function Qye(s){return Bo(s)&&s.parent&&s.parent.kind===245&&(!Qg(s)||Hye(s))&&!!gv(s.parent)}function W7(s,c){let{valueDeclaration:g}=s;(!g||!(c.flags&33554432&&!Bo(c)&&!(g.flags&33554432))&&L7(g)&&!L7(c)||g.kind!==c.kind&&Yge(g))&&(s.valueDeclaration=c)}function FZe(s){if(!s||!s.valueDeclaration)return!1;let c=s.valueDeclaration;return c.kind===263||nc(c)&&c.initializer&&Eu(c.initializer)}function ZZe(s){switch(s?.kind){case 261:case 209:case 273:case 279:case 272:case 274:case 281:case 275:case 282:case 277:case 206:return!0}return!1}function UY(s){var c,g;switch(s.kind){case 261:case 209:return(c=ji(s.initializer,d=>uy(d,!0)))==null?void 0:c.arguments[0];case 273:case 279:case 352:return Gs(s.moduleSpecifier,_A);case 272:return Gs((g=Gs(s.moduleReference,HF))==null?void 0:g.expression,_A);case 274:case 281:return Gs(s.parent.moduleSpecifier,_A);case 275:case 282:return Gs(s.parent.parent.moduleSpecifier,_A);case 277:return Gs(s.parent.parent.parent.moduleSpecifier,_A);case 206:return Fy(s)?s.argument.literal:void 0;default:pe.assertNever(s)}}function O7(s){return P7(s)||pe.failBadSyntaxKind(s.parent)}function P7(s){switch(s.parent.kind){case 273:case 279:case 352:return s.parent;case 284:return s.parent.parent;case 214:return jp(s.parent)||uy(s.parent,!1)?s.parent:void 0;case 202:if(!Lg(s))break;return Gs(s.parent.parent,qm);default:return}}function vne(s,c){return!!c.rewriteRelativeImportExtensions&&mp(s)&&!MC(s)&&Z3(s)}function KY(s){switch(s.kind){case 273:case 279:case 352:return s.moduleSpecifier;case 272:return s.moduleReference.kind===284?s.moduleReference.expression:void 0;case 206:return Fy(s)?s.argument.literal:void 0;case 214:return s.arguments[0];case 268:return s.name.kind===11?s.name:void 0;default:return pe.assertNever(s)}}function aU(s){switch(s.kind){case 273:return s.importClause&&Gs(s.importClause.namedBindings,Mx);case 272:return s;case 279:return s.exportClause&&Gs(s.exportClause,ak);default:return pe.assertNever(s)}}function B3(s){return(s.kind===273||s.kind===352)&&!!s.importClause&&!!s.importClause.name}function LZe(s,c){if(s.name){let g=c(s);if(g)return g}if(s.namedBindings){let g=Mx(s.namedBindings)?c(s.namedBindings):F(s.namedBindings.elements,c);if(g)return g}}function jY(s){switch(s.kind){case 170:case 175:case 174:case 305:case 304:case 173:case 172:return s.questionToken!==void 0}return!1}function zY(s){let c=kie(s)?Nc(s.parameters):void 0,g=Gs(c&&c.name,Ir);return!!g&&g.escapedText==="new"}function lS(s){return s.kind===347||s.kind===339||s.kind===341}function Bne(s){return lS(s)||PB(s)}function VZe(s){return PC(s)&&po(s.expression)&&s.expression.operatorToken.kind===64?bne(s.expression):void 0}function Wqe(s){return PC(s)&&po(s.expression)&&oI(s.expression)!==0&&po(s.expression.right)&&(s.expression.right.operatorToken.kind===57||s.expression.right.operatorToken.kind===61)?s.expression.right.right:void 0}function Oqe(s){switch(s.kind){case 244:let c=w3(s);return c&&c.initializer;case 173:return s.initializer;case 304:return s.initializer}}function w3(s){return Eh(s)?Nc(s.declarationList.declarations):void 0}function Pqe(s){return Lh(s)&&s.body&&s.body.kind===268?s.body:void 0}function cU(s){if(s.kind>=244&&s.kind<=260)return!0;switch(s.kind){case 80:case 110:case 108:case 167:case 237:case 213:case 212:case 209:case 219:case 220:case 175:case 178:case 179:return!0;default:return!1}}function wne(s){switch(s.kind){case 220:case 227:case 242:case 253:case 180:case 297:case 264:case 232:case 176:case 177:case 186:case 181:case 252:case 260:case 247:case 213:case 243:case 1:case 267:case 307:case 278:case 279:case 282:case 245:case 250:case 251:case 249:case 263:case 219:case 185:case 178:case 80:case 246:case 273:case 272:case 182:case 265:case 318:case 324:case 257:case 175:case 174:case 268:case 203:case 271:case 211:case 170:case 218:case 212:case 304:case 173:case 172:case 254:case 241:case 179:case 305:case 306:case 256:case 258:case 259:case 266:case 169:case 261:case 244:case 248:case 255:return!0;default:return!1}}function Xye(s,c){let g;D7(s)&&XT(s)&&jm(s.initializer)&&(g=Pr(g,Mqe(s,s.initializer.jsDoc)));let d=s;for(;d&&d.parent;){if(jm(d)&&(g=Pr(g,Mqe(s,d.jsDoc))),d.kind===170){g=Pr(g,(c?SJ:kL)(d));break}if(d.kind===169){g=Pr(g,(c?l7:g3)(d));break}d=Jye(d)}return g||E}function Mqe(s,c){let g=Ei(c);return jt(c,d=>{if(d===g){let h=Le(d.tags,_=>Hqe(s,_));return d.tags===h?[d]:h}else return Le(d.tags,xie)})}function Hqe(s,c){return!(Tde(c)||v9e(c))||!c.parent||!aR(c.parent)||!dI(c.parent.parent)||c.parent.parent===s}function Jye(s){let c=s.parent;if(c.kind===304||c.kind===278||c.kind===173||c.kind===245&&s.kind===212||c.kind===254||Pqe(c)||zm(s))return c;if(c.parent&&(w3(c.parent)===s||zm(c)))return c.parent;if(c.parent&&c.parent.parent&&(w3(c.parent.parent)||Oqe(c.parent.parent)===s||Wqe(c.parent.parent)))return c.parent.parent}function Tne(s){if(s.symbol)return s.symbol;if(!Ir(s.name))return;let c=s.name.escapedText,g=XL(s);if(!g)return;let d=de(g.parameters,h=>h.name.kind===80&&h.name.escapedText===c);return d&&d.symbol}function fAe(s){if(aR(s.parent)&&s.parent.tags){let c=de(s.parent.tags,lS);if(c)return c}return XL(s)}function Uye(s){return wJ(s,xie)}function XL(s){let c=JL(s);if(c)return ss(c)&&c.type&&Eu(c.type)?c.type:Eu(c)?c:void 0}function JL(s){let c=DW(s);if(c)return Wqe(c)||VZe(c)||Oqe(c)||w3(c)||Pqe(c)||c}function DW(s){let c=lU(s);if(!c)return;let g=c.parent;if(g&&g.jsDoc&&c===li(g.jsDoc))return g}function lU(s){return ji(s.parent,aR)}function WZe(s){let c=s.name.escapedText,{typeParameters:g}=s.parent.parent.parent;return g&&de(g,d=>d.name.escapedText===c)}function Yqe(s){return!!s.typeArguments}var OZe=(s=>(s[s.None=0]="None",s[s.Definite=1]="Definite",s[s.Compound=2]="Compound",s))(OZe||{});function PZe(s){let c=s.parent;for(;;){switch(c.kind){case 227:let g=c,d=g.operatorToken.kind;return ek(d)&&g.left===s?g:void 0;case 225:case 226:let h=c,_=h.operator;return _===46||_===47?h:void 0;case 250:case 251:let S=c;return S.initializer===s?S:void 0;case 218:case 210:case 231:case 236:s=c;break;case 306:s=c.parent;break;case 305:if(c.name!==s)return;s=c.parent;break;case 304:if(c.name===s)return;s=c.parent;break;default:return}c=s.parent}}function zD(s){let c=PZe(s);if(!c)return 0;switch(c.kind){case 227:let g=c.operatorToken.kind;return g===64||$7(g)?1:2;case 225:case 226:return 2;case 250:case 251:return 1}}function RF(s){return!!PZe(s)}function PVt(s){let c=JA(s.right);return c.kind===227&&eet(c.operatorToken.kind)}function IAe(s){let c=PZe(s);return!!c&&zm(c,!0)&&PVt(c)}function MZe(s){switch(s.kind){case 242:case 244:case 255:case 246:case 256:case 270:case 297:case 298:case 257:case 249:case 250:case 251:case 247:case 248:case 259:case 300:return!0}return!1}function T3(s){return jA(s)||gA(s)||VL(s)||ah(s)||Tc(s)}function Qqe(s,c){for(;s&&s.kind===c;)s=s.parent;return s}function Rne(s){return Qqe(s,197)}function Iv(s){return Qqe(s,218)}function Kye(s){let c;for(;s&&s.kind===197;)c=s,s=s.parent;return[c,s]}function M7(s){for(;_v(s);)s=s.type;return s}function JA(s,c){return XI(s,c?-2147483647:1)}function jye(s){return s.kind!==212&&s.kind!==213?!1:(s=Iv(s.parent),s&&s.kind===221)}function kW(s,c){for(;s;){if(s===c)return!0;s=s.parent}return!1}function KT(s){return!cl(s)&&!Nu(s)&&em(s.parent)&&s.parent.name===s}function H7(s){let c=s.parent;switch(s.kind){case 11:case 15:case 9:if(Un(c))return c.parent;case 80:if(em(c))return c.name===s?c:void 0;if(zi(c)){let g=c.parent;return dS(g)&&g.name===c?g:void 0}else{let g=c.parent;return po(g)&&oI(g)!==0&&(g.left.symbol||g.symbol)&&fl(g)===s?g:void 0}case 81:return em(c)&&c.name===s?c:void 0;default:return}}function Nne(s){return h1(s)&&s.parent.kind===168&&em(s.parent.parent)}function HZe(s){let c=s.parent;switch(c.kind){case 173:case 172:case 175:case 174:case 178:case 179:case 307:case 304:case 212:return c.name===s;case 167:return c.right===s;case 209:case 277:return c.propertyName===s;case 282:case 292:case 286:case 287:case 288:return!0}return!1}function zye(s){switch(s.parent.kind){case 274:case 277:case 275:case 282:case 278:case 272:case 281:return s.parent;case 167:do s=s.parent;while(s.parent.kind===167);return zye(s)}}function hAe(s){return Hd(s)||wd(s)}function Dne(s){let c=kne(s);return hAe(c)}function kne(s){return yf(s)?s.expression:s.right}function YZe(s){return s.kind===305?s.name:s.kind===304?s.initializer:s.parent.right}function kB(s){let c=UL(s);if(c&&Bo(s)){let g=u7(s);if(g)return g.class}return c}function UL(s){let c=xne(s.heritageClauses,96);return c&&c.types.length>0?c.types[0]:void 0}function uU(s){if(Bo(s))return bY(s).map(c=>c.class);{let c=xne(s.heritageClauses,119);return c?.types}}function Y7(s){return p_(s)?Q7(s)||E:xa(s)&&Nn(j_(kB(s)),uU(s))||E}function Q7(s){let c=xne(s.heritageClauses,96);return c?c.types:void 0}function xne(s,c){if(s){for(let g of s)if(g.token===c)return g}}function KL(s,c){for(;s;){if(s.kind===c)return s;s=s.parent}}function T0(s){return 83<=s&&s<=166}function qye(s){return 19<=s&&s<=79}function mAe(s){return T0(s)||qye(s)}function CAe(s){return 128<=s&&s<=166}function $ye(s){return T0(s)&&!CAe(s)}function qY(s){let c=Ta(s);return c!==void 0&&$ye(c)}function ebe(s){let c=lv(s);return!!c&&!CAe(c)}function gU(s){return 2<=s&&s<=7}var QZe=(s=>(s[s.Normal=0]="Normal",s[s.Generator=1]="Generator",s[s.Async=2]="Async",s[s.Invalid=4]="Invalid",s[s.AsyncGenerator=3]="AsyncGenerator",s))(QZe||{});function BI(s){if(!s)return 4;let c=0;switch(s.kind){case 263:case 219:case 175:s.asteriskToken&&(c|=1);case 220:Ga(s,1024)&&(c|=2);break}return s.body||(c|=4),c}function X7(s){switch(s.kind){case 263:case 219:case 220:case 175:return s.body!==void 0&&s.asteriskToken===void 0&&Ga(s,1024)}return!1}function h1(s){return _A(s)||yC(s)}function Gne(s){return D0(s)&&(s.operator===40||s.operator===41)&&yC(s.operand)}function qD(s){let c=fl(s);return!!c&&_Ae(c)}function _Ae(s){if(!(s.kind===168||s.kind===213))return!1;let c=Qg(s)?JA(s.argumentExpression):s.expression;return!h1(c)&&!Gne(c)}function R3(s){switch(s.kind){case 80:case 81:return s.escapedText;case 11:case 15:case 9:case 10:return pp(s.text);case 168:let c=s.expression;return h1(c)?pp(c.text):Gne(c)?c.operator===41?Vi(c.operator)+c.operand.text:c.operand.text:void 0;case 296:return gS(s);default:return pe.assertNever(s)}}function Gw(s){switch(s.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function A2(s){return Bw(s)?Vo(s):oR(s)?Sz(s):s.text}function AU(s){return Bw(s)?s.escapedText:oR(s)?gS(s):pp(s.text)}function Fne(s,c){return`__#${xg(s)}@${c}`}function J7(s){return Ac(s.escapedName,"__@")}function XZe(s){return Ac(s.escapedName,"__#")}function MVt(s){return Ir(s)?Vo(s)==="__proto__":Lg(s)&&s.text==="__proto__"}function yAe(s,c){switch(s=XI(s),s.kind){case 232:if(ltt(s))return!1;break;case 219:if(s.name)return!1;break;case 220:break;default:return!1}return typeof c=="function"?c(s):!0}function tbe(s){switch(s.kind){case 304:return!MVt(s.name);case 305:return!!s.objectAssignmentInitializer;case 261:return Ir(s.name)&&!!s.initializer;case 170:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 209:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 173:return!!s.initializer;case 227:switch(s.operatorToken.kind){case 64:case 77:case 76:case 78:return Ir(s.left)}break;case 278:return!0}return!1}function Fb(s,c){if(!tbe(s))return!1;switch(s.kind){case 304:return yAe(s.initializer,c);case 305:return yAe(s.objectAssignmentInitializer,c);case 261:case 170:case 209:case 173:return yAe(s.initializer,c);case 227:return yAe(s.right,c);case 278:return yAe(s.expression,c)}}function rbe(s){return s.escapedText==="push"||s.escapedText==="unshift"}function jL(s){return Fw(s).kind===170}function Fw(s){for(;s.kind===209;)s=s.parent.parent;return s}function nbe(s){let c=s.kind;return c===177||c===219||c===263||c===220||c===175||c===178||c===179||c===268||c===308}function ap(s){return xB(s.pos)||xB(s.end)}var JZe=(s=>(s[s.Left=0]="Left",s[s.Right=1]="Right",s))(JZe||{});function ibe(s){let c=Xqe(s),g=s.kind===215&&s.arguments!==void 0;return sbe(s.kind,c,g)}function sbe(s,c,g){switch(s){case 215:return g?0:1;case 225:case 222:case 223:case 221:case 224:case 228:case 230:return 1;case 227:switch(c){case 43:case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 1}}return 0}function U7(s){let c=Xqe(s),g=s.kind===215&&s.arguments!==void 0;return Zne(s.kind,c,g)}function Xqe(s){return s.kind===227?s.operatorToken.kind:s.kind===225||s.kind===226?s.operator:s.kind}var UZe=(s=>(s[s.Comma=0]="Comma",s[s.Spread=1]="Spread",s[s.Yield=2]="Yield",s[s.Assignment=3]="Assignment",s[s.Conditional=4]="Conditional",s[s.LogicalOR=5]="LogicalOR",s[s.Coalesce=5]="Coalesce",s[s.LogicalAND=6]="LogicalAND",s[s.BitwiseOR=7]="BitwiseOR",s[s.BitwiseXOR=8]="BitwiseXOR",s[s.BitwiseAND=9]="BitwiseAND",s[s.Equality=10]="Equality",s[s.Relational=11]="Relational",s[s.Shift=12]="Shift",s[s.Additive=13]="Additive",s[s.Multiplicative=14]="Multiplicative",s[s.Exponentiation=15]="Exponentiation",s[s.Unary=16]="Unary",s[s.Update=17]="Update",s[s.LeftHandSide=18]="LeftHandSide",s[s.Member=19]="Member",s[s.Primary=20]="Primary",s[s.Highest=20]="Highest",s[s.Lowest=0]="Lowest",s[s.Invalid=-1]="Invalid",s))(UZe||{});function Zne(s,c,g){switch(s){case 357:return 0;case 231:return 1;case 230:return 2;case 228:return 4;case 227:switch(c){case 28:return 0;case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 3;default:return Lne(c)}case 217:case 236:case 225:case 222:case 223:case 221:case 224:return 16;case 226:return 17;case 214:return 18;case 215:return g?19:18;case 216:case 212:case 213:case 237:return 19;case 235:case 239:return 11;case 110:case 108:case 80:case 81:case 106:case 112:case 97:case 9:case 10:case 11:case 210:case 211:case 219:case 220:case 232:case 14:case 15:case 229:case 218:case 233:case 285:case 286:case 289:return 20;default:return-1}}function Lne(s){switch(s){case 61:return 5;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function dU(s){return Le(s,c=>{switch(c.kind){case 295:return!!c.expression;case 12:return!c.containsOnlyTriviaWhiteSpaces;default:return!0}})}function NF(){let s=[],c=[],g=new Map,d=!1;return{add:_,lookup:h,getGlobalDiagnostics:S,getDiagnostics:R};function h(T){let O;if(T.file?O=g.get(T.file.fileName):O=s,!O)return;let V=Oc(O,T,Zl,bLe);if(V>=0)return O[V];if(~V>0&&HAe(T,O[~V-1]))return O[~V-1]}function _(T){let O;T.file?(O=g.get(T.file.fileName),O||(O=[],g.set(T.file.fileName,O),Gc(c,T.file.fileName,Ca))):(d&&(d=!1,s=s.slice()),O=s),Gc(O,T,bLe,HAe)}function S(){return d=!0,s}function R(T){if(T)return g.get(T)||[];let O=Bt(c,V=>g.get(V));return s.length&&O.unshift(...s),O}}var Jqe=/\$\{/g;function obe(s){return s.replace(Jqe,"\\${")}function KZe(s){return!!((s.templateFlags||0)&2048)}function abe(s){return s&&!!(HW(s)?KZe(s):KZe(s.head)||zt(s.templateSpans,c=>KZe(c.literal)))}var HVt=/[\\"\u0000-\u001f\u2028\u2029\u0085]/g,K7=/[\\'\u0000-\u001f\u2028\u2029\u0085]/g,YVt=/\r\n|[\\`\u0000-\u0009\u000b-\u001f\u2028\u2029\u0085]/g,QVt=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"}));function Uqe(s){return"\\u"+("0000"+s.toString(16).toUpperCase()).slice(-4)}function XVt(s,c,g){if(s.charCodeAt(0)===0){let d=g.charCodeAt(c+s.length);return d>=48&&d<=57?"\\x00":"\\0"}return QVt.get(s)||Uqe(s.charCodeAt(0))}function jT(s,c){let g=c===96?YVt:c===39?K7:HVt;return s.replace(g,XVt)}var Kqe=/[^\u0000-\u007F]/g;function Vne(s,c){return s=jT(s,c),Kqe.test(s)?s.replace(Kqe,g=>Uqe(g.charCodeAt(0))):s}var JVt=/["\u0000-\u001f\u2028\u2029\u0085]/g,UVt=/['\u0000-\u001f\u2028\u2029\u0085]/g,KVt=new Map(Object.entries({'"':""","'":"'"}));function jVt(s){return"&#x"+s.toString(16).toUpperCase()+";"}function zVt(s){return s.charCodeAt(0)===0?"�":KVt.get(s)||jVt(s.charCodeAt(0))}function cbe(s,c){let g=c===39?UVt:JVt;return s.replace(g,zVt)}function d2(s){let c=s.length;return c>=2&&s.charCodeAt(0)===s.charCodeAt(c-1)&&qVt(s.charCodeAt(0))?s.substring(1,c-1):s}function qVt(s){return s===39||s===34||s===96}function pU(s){let c=s.charCodeAt(0);return c>=97&&c<=122||s.includes("-")}var Wne=[""," "];function bAe(s){let c=Wne[1];for(let g=Wne.length;g<=s;g++)Wne.push(Wne[g-1]+c);return Wne[s]}function One(){return Wne[1].length}function Pne(s){var c,g,d,h,_,S=!1;function R(Ie){let _e=uA(Ie);_e.length>1?(h=h+_e.length-1,_=c.length-Ie.length+Ei(_e),d=_-c.length===0):d=!1}function T(Ie){Ie&&Ie.length&&(d&&(Ie=bAe(g)+Ie,d=!1),c+=Ie,R(Ie))}function O(Ie){Ie&&(S=!1),T(Ie)}function V(Ie){Ie&&(S=!0),T(Ie)}function M(){c="",g=0,d=!0,h=0,_=0,S=!1}function ee(Ie){Ie!==void 0&&(c+=Ie,R(Ie),S=!1)}function re(Ie){Ie&&Ie.length&&O(Ie)}function ge(Ie){(!d||Ie)&&(c+=s,h++,_=c.length,d=!0,S=!1)}return M(),{write:O,rawWrite:ee,writeLiteral:re,writeLine:ge,increaseIndent:()=>{g++},decreaseIndent:()=>{g--},getIndent:()=>g,getTextPos:()=>c.length,getLine:()=>h,getColumn:()=>d?g*One():c.length-_,getText:()=>c,isAtStartOfLine:()=>d,hasTrailingComment:()=>S,hasTrailingWhitespace:()=>!!c.length&&dc(c.charCodeAt(c.length-1)),clear:M,writeKeyword:O,writeOperator:O,writeParameter:O,writeProperty:O,writePunctuation:O,writeSpace:O,writeStringLiteral:O,writeSymbol:(Ie,_e)=>O(Ie),writeTrailingSemicolon:O,writeComment:V}}function lbe(s){let c=!1;function g(){c&&(s.writeTrailingSemicolon(";"),c=!1)}return{...s,writeTrailingSemicolon(){c=!0},writeLiteral(d){g(),s.writeLiteral(d)},writeStringLiteral(d){g(),s.writeStringLiteral(d)},writeSymbol(d,h){g(),s.writeSymbol(d,h)},writePunctuation(d){g(),s.writePunctuation(d)},writeKeyword(d){g(),s.writeKeyword(d)},writeOperator(d){g(),s.writeOperator(d)},writeParameter(d){g(),s.writeParameter(d)},writeSpace(d){g(),s.writeSpace(d)},writeProperty(d){g(),s.writeProperty(d)},writeComment(d){g(),s.writeComment(d)},writeLine(){g(),s.writeLine()},increaseIndent(){g(),s.increaseIndent()},decreaseIndent(){g(),s.decreaseIndent()}}}function N3(s){return s.useCaseSensitiveFileNames?s.useCaseSensitiveFileNames():!1}function $D(s){return bd(N3(s))}function j7(s,c,g){return c.moduleName||ube(s,c.fileName,g&&g.fileName)}function jqe(s,c){return s.getCanonicalFileName(Xc(c,s.getCurrentDirectory()))}function jZe(s,c,g){let d=c.getExternalModuleFileFromDeclaration(g);if(!d||d.isDeclarationFile)return;let h=KY(g);if(!(h&&_A(h)&&!mp(h.text)&&!jqe(s,d.path).includes(jqe(s,Cp(s.getCommonSourceDirectory())))))return j7(s,d)}function ube(s,c,g){let d=T=>s.getCanonicalFileName(T),h=Pu(g?Mo(g):s.getCommonSourceDirectory(),s.getCurrentDirectory(),d),_=Xc(c,s.getCurrentDirectory()),S=Hf(h,_,h,d,!1),R=c0(S);return g?Im(R):R}function zZe(s,c,g){let d=c.getCompilerOptions(),h;return d.outDir?h=c0(BAe(s,c,d.outDir)):h=c0(s),h+g}function qZe(s,c){return Mne(s,c.getCompilerOptions(),c)}function Mne(s,c,g){let d=c.declarationDir||c.outDir,h=d?$Ze(s,d,g.getCurrentDirectory(),g.getCommonSourceDirectory(),S=>g.getCanonicalFileName(S)):s,_=EAe(h);return c0(h)+_}function EAe(s){return Iu(s,[".mjs",".mts"])?".d.mts":Iu(s,[".cjs",".cts"])?".d.cts":Iu(s,[".json"])?".d.json.ts":".d.ts"}function gbe(s){return Iu(s,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:Iu(s,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:Iu(s,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function Abe(s,c,g,d){return g?IE(d(),_p(g,s,c)):s}function SAe(s,c){var g;if(s.paths)return s.baseUrl??pe.checkDefined(s.pathsBasePath||((g=c.getCurrentDirectory)==null?void 0:g.call(c)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function vAe(s,c,g){let d=s.getCompilerOptions();if(d.outFile){let h=a0(d),_=d.emitDeclarationOnly||h===2||h===4;return Le(s.getSourceFiles(),S=>(_||!Lm(S))&&xW(S,s,g))}else{let h=c===void 0?s.getSourceFiles():[c];return Le(h,_=>xW(_,s,g))}}function xW(s,c,g){let d=c.getCompilerOptions();if(d.noEmitForJsFiles&&o0(s)||s.isDeclarationFile||c.isSourceFileFromExternalLibrary(s))return!1;if(g)return!0;if(c.isSourceOfProjectReferenceRedirect(s.fileName))return!1;if(!Zu(s))return!0;if(c.getRedirectFromSourceFile(s.fileName))return!1;if(d.outFile)return!0;if(!d.outDir)return!1;if(d.rootDir||d.composite&&d.configFilePath){let h=Xc(zde(d,()=>[],c.getCurrentDirectory(),c.getCanonicalFileName),c.getCurrentDirectory()),_=$Ze(s.fileName,d.outDir,c.getCurrentDirectory(),h,c.getCanonicalFileName);if(tI(s.fileName,_,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0)return!1}return!0}function BAe(s,c,g){return $Ze(s,g,c.getCurrentDirectory(),c.getCommonSourceDirectory(),d=>c.getCanonicalFileName(d))}function $Ze(s,c,g,d,h){let _=Xc(s,g);return _=h(_).indexOf(h(d))===0?_.substring(d.length):_,To(c,_)}function wAe(s,c,g,d,h,_,S){s.writeFile(g,d,h,R=>{c.add(kf(Z.Could_not_write_file_0_Colon_1,g,R))},_,S)}function zqe(s,c,g){if(s.length>Mf(s)&&!g(s)){let d=Mo(s);zqe(d,c,g),c(s)}}function dbe(s,c,g,d,h,_){try{d(s,c,g)}catch{zqe(Mo(su(s)),h,_),d(s,c,g)}}function z7(s,c){let g=rn(s);return Wo(g,c)}function fU(s,c){return Wo(s,c)}function fN(s){return de(s.members,c=>Tc(c)&&p1(c.body))}function q7(s){if(s&&s.parameters.length>0){let c=s.parameters.length===2&&DF(s.parameters[0]);return s.parameters[c?1:0]}}function eLe(s){let c=q7(s);return c&&c.type}function GW(s){if(s.parameters.length&&!s9(s)){let c=s.parameters[0];if(DF(c))return c}}function DF(s){return kF(s.name)}function kF(s){return!!s&&s.kind===80&&pbe(s)}function $Y(s){return!!ji(s,c=>c.kind===187?!0:c.kind===80||c.kind===167?!1:"quit")}function zL(s){if(!kF(s))return!1;for(;zi(s.parent)&&s.parent.left===s;)s=s.parent;return s.parent.kind===187}function pbe(s){return s.escapedText==="this"}function FW(s,c){let g,d,h,_;return qD(c)?(g=c,c.kind===178?h=c:c.kind===179?_=c:pe.fail("Accessor has wrong kind")):F(s,S=>{if(wB(S)&&lg(S)===lg(c)){let R=R3(S.name),T=R3(c.name);R===T&&(g?d||(d=S):g=S,S.kind===178&&!h&&(h=S),S.kind===179&&!_&&(_=S))}}),{firstAccessor:g,secondAccessor:d,getAccessor:h,setAccessor:_}}function Zh(s){if(!Bo(s)&&ah(s)||PB(s))return;let c=s.type;return c||!Bo(s)?c:vY(s)?s.typeExpression&&s.typeExpression.type:oN(s)}function tLe(s){return s.type}function Zb(s){return s9(s)?s.type&&s.type.typeExpression&&s.type.typeExpression.type:s.type||(Bo(s)?BJ(s):void 0)}function TAe(s){return jt(Nx(s),c=>qqe(c)?c.typeParameters:void 0)}function qqe(s){return MB(s)&&!(s.parent.kind===321&&(s.parent.tags.some(lS)||s.parent.tags.some(xie)))}function fbe(s){let c=q7(s);return c&&Zh(c)}function $Vt(s,c,g,d){eWt(s,c,g.pos,d)}function eWt(s,c,g,d){d&&d.length&&g!==d[0].pos&&fU(s,g)!==fU(s,d[0].pos)&&c.writeLine()}function Ibe(s,c,g,d){g!==d&&fU(s,g)!==fU(s,d)&&c.writeLine()}function tWt(s,c,g,d,h,_,S,R){if(d&&d.length>0){h&&g.writeSpace(" ");let T=!1;for(let O of d)T&&(g.writeSpace(" "),T=!1),R(s,c,g,O.pos,O.end,S),O.hasTrailingNewLine?g.writeLine():T=!0;T&&_&&g.writeSpace(" ")}}function rLe(s,c,g,d,h,_,S){let R,T;if(S?h.pos===0&&(R=Le(CE(s,h.pos),O)):R=CE(s,h.pos),R){let V=[],M;for(let ee of R){if(M){let re=fU(c,M.end);if(fU(c,ee.pos)>=re+2)break}V.push(ee),M=ee}if(V.length){let ee=fU(c,Ei(V).end);fU(c,Yu(s,h.pos))>=ee+2&&($Vt(c,g,h,R),tWt(s,c,g,V,!1,!0,_,d),T={nodePos:h.pos,detachedCommentEndPos:Ei(V).end})}}return T;function O(V){return B7(s,V.pos)}}function IU(s,c,g,d,h,_){if(s.charCodeAt(d+1)===42){let S=Ci(c,d),R=c.length,T;for(let O=d,V=S.line;O0){let ge=re%One(),Ie=bAe((re-ge)/One());for(g.rawWrite(Ie);ge;)g.rawWrite(" "),ge--}else g.rawWrite("")}rWt(s,h,g,_,O,M),O=M}}else g.writeComment(s.substring(d,h))}function rWt(s,c,g,d,h,_){let S=Math.min(c,_-1),R=s.substring(h,S).trim();R?(g.writeComment(R),S!==c&&g.writeLine()):g.rawWrite(d)}function nLe(s,c,g){let d=0;for(;c=0&&s.kind<=166?0:(s.modifierFlagsCache&536870912||(s.modifierFlagsCache=_be(s)|536870912),g||c&&Bo(s)?(!(s.modifierFlagsCache&268435456)&&s.parent&&(s.modifierFlagsCache|=$qe(s)|268435456),e$e(s.modifierFlagsCache)):nWt(s.modifierFlagsCache))}function l_(s){return oLe(s,!0)}function aLe(s){return oLe(s,!0,!0)}function Zx(s){return oLe(s,!1)}function $qe(s){let c=0;return s.parent&&!Si(s)&&(Bo(s)&&(Rx(s)&&(c|=8388608),Aa(s)&&(c|=16777216),Ua(s)&&(c|=33554432),CA(s)&&(c|=67108864),Pd(s)&&(c|=134217728)),c2(s)&&(c|=65536)),c}function nWt(s){return s&65535}function e$e(s){return s&131071|(s&260046848)>>>23}function cLe(s){return e$e($qe(s))}function Cbe(s){return _be(s)|cLe(s)}function _be(s){let c=HB(s)?Lw(s.modifiers):0;return(s.flags&8||s.kind===80&&s.flags&4096)&&(c|=32),c}function Lw(s){let c=0;if(s)for(let g of s)c|=tQ(g.kind);return c}function tQ(s){switch(s){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 171:return 32768}return 0}function Yne(s){return s===57||s===56}function lLe(s){return Yne(s)||s===54}function $7(s){return s===76||s===77||s===78}function RAe(s){return po(s)&&$7(s.operatorToken.kind)}function NAe(s){return Yne(s)||s===61}function Qne(s){return po(s)&&NAe(s.operatorToken.kind)}function ek(s){return s>=64&&s<=79}function ybe(s){let c=bbe(s);return c&&!c.isImplements?c.class:void 0}function bbe(s){if(A_(s)){if(y1(s.parent)&&xa(s.parent.parent))return{class:s.parent.parent,isImplements:s.parent.token===119};if(Lz(s.parent)){let c=JL(s.parent);if(c&&xa(c))return{class:c,isImplements:!1}}}}function zm(s,c){return po(s)&&(c?s.operatorToken.kind===64:ek(s.operatorToken.kind))&&G_(s.left)}function Lx(s){if(zm(s,!0)){let c=s.left.kind;return c===211||c===210}return!1}function DAe(s){return ybe(s)!==void 0}function Hd(s){return s.kind===80||xF(s)}function R0(s){switch(s.kind){case 80:return s;case 167:do s=s.left;while(s.kind!==80);return s;case 212:do s=s.expression;while(s.kind!==80);return s}}function Xne(s){return s.kind===80||s.kind===110||s.kind===108||s.kind===237||s.kind===212&&Xne(s.expression)||s.kind===218&&Xne(s.expression)}function xF(s){return jo(s)&&Ir(s.name)&&Hd(s.expression)}function LW(s){if(jo(s)){let c=LW(s.expression);if(c!==void 0)return c+"."+ly(s.name)}else if(Qg(s)){let c=LW(s.expression);if(c!==void 0&&PI(s.argumentExpression))return c+"."+R3(s.argumentExpression)}else{if(Ir(s))return Bc(s.escapedText);if(oR(s))return Sz(s)}}function GF(s){return NW(s)&&jD(s)==="prototype"}function ez(s){return s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s||s.parent.kind===237&&s.parent.name===s}function Ebe(s){return!!s.parent&&(jo(s.parent)&&s.parent.name===s||Qg(s.parent)&&s.parent.argumentExpression===s)}function uLe(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s||j3(s.parent)&&s.parent.right===s}function kAe(s){return po(s)&&s.operatorToken.kind===104}function gLe(s){return kAe(s.parent)&&s===s.parent.right}function Sbe(s){return s.kind===211&&s.properties.length===0}function ALe(s){return s.kind===210&&s.elements.length===0}function tz(s){if(!(!iWt(s)||!s.declarations)){for(let c of s.declarations)if(c.localSymbol)return c.localSymbol}}function iWt(s){return s&&B(s.declarations)>0&&Ga(s.declarations[0],2048)}function rz(s){return de(GLe,c=>lA(s,c))}function sWt(s){let c=[],g=s.length;for(let d=0;d>6|192),c.push(h&63|128)):h<65536?(c.push(h>>12|224),c.push(h>>6&63|128),c.push(h&63|128)):h<131072?(c.push(h>>18|240),c.push(h>>12&63|128),c.push(h>>6&63|128),c.push(h&63|128)):pe.assert(!1,"Unexpected code point")}return c}var VW="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function vbe(s){let c="",g=sWt(s),d=0,h=g.length,_,S,R,T;for(;d>2,S=(g[d]&3)<<4|g[d+1]>>4,R=(g[d+1]&15)<<2|g[d+2]>>6,T=g[d+2]&63,d+1>=h?R=T=64:d+2>=h&&(T=64),c+=VW.charAt(_)+VW.charAt(S)+VW.charAt(R)+VW.charAt(T),d+=3;return c}function oWt(s){let c="",g=0,d=s.length;for(;g>4&3,V=(S&15)<<4|R>>2&15,M=(R&3)<<6|T&63;V===0&&R!==0?d.push(O):M===0&&T!==0?d.push(O,V):d.push(O,V,M),h+=4}return oWt(d)}function wbe(s,c){let g=Xs(c)?c:c.readFile(s);if(!g)return;let d=hU(g);if(d===void 0){let h=Iet(s,g);h.error||(d=h.config)}return d}function k3(s,c){return wbe(s,c)||{}}function hU(s){try{return JSON.parse(s)}catch{return}}function C1(s,c){return!c.directoryExists||c.directoryExists(s)}var xAe=`\r `,aWt=` -`;function fN(s){switch(s.newLine){case 0:return kAe;case 1:case void 0:return aWt}}function Zy(s,c=s){return pe.assert(c>=s||c===-1),{pos:s,end:c}}function xAe(s,c){return Zy(s.pos,c)}function ek(s,c){return Zy(c,s.end)}function tk(s){let c=MB(s)?be(s.modifiers,So):void 0;return c&&!kB(c.end)?ek(s,c.end):s}function Iv(s){if(pi(s)||gu(s))return ek(s,s.name.pos);let c=MB(s)?li(s.modifiers):void 0;return c&&!kB(c.end)?ek(s,c.end):tk(s)}function zL(s,c){return Zy(s,s+Vi(c).length)}function D3(s,c){return fLe(s,s,c)}function rz(s,c,g){return SE(nz(s,g,!1),nz(c,g,!1),g)}function pLe(s,c,g){return SE(s.end,c.end,g)}function fLe(s,c,g){return SE(nz(s,g,!1),c.end,g)}function Xne(s,c,g){return SE(s.end,nz(c,g,!1),g)}function k3(s,c,g,d){let h=nz(c,g,d);return ec(g,s.end,h)}function ILe(s,c,g){return ec(g,s.end,c.end)}function GAe(s,c){return!SE(s.pos,s.end,c)}function SE(s,c,g){return ec(g,s,c)===0}function nz(s,c,g){return kB(s.pos)?-1:Yu(c.text,s.pos,!1,g)}function hLe(s,c,g,d){let h=Yu(g.text,s,!1,d),_=r$e(h,c,g);return ec(g,_??c,h)}function Tbe(s,c,g,d){let h=Yu(g.text,s,!1,d);return ec(g,s,Math.min(c,h))}function uy(s,c){return FAe(s.pos,s.end,c)}function FAe(s,c,g){return s<=g.pos&&c>=g.end}function r$e(s,c=0,g){for(;s-- >c;)if(!dc(g.text.charCodeAt(s)))return s}function Rbe(s){let c=eu(s);if(c)switch(c.parent.kind){case 267:case 268:return c===c.parent.name}return!1}function hU(s){return Le(s.declarations,Jne)}function Jne(s){return nc(s)&&s.initializer!==void 0}function Nbe(s){return s.watch&&Da(s,"watch")}function hv(s){s.close()}function aI(s){return s.flags&33554432?s.links.checkFlags:0}function d2(s,c=!1){if(s.valueDeclaration){let g=c&&s.declarations&&de(s.declarations,kg)||s.flags&32768&&de(s.declarations,wg)||s.valueDeclaration,d=Hc(g);return s.parent&&s.parent.flags&32?d:d&-8}if(aI(s)&6){let g=s.links.checkFlags,d=g&1024?2:g&256?1:4,h=g&2048?256:0;return d|h}return s.flags&4194304?257:0}function LC(s,c){return s.flags&2097152?c.getAliasedSymbol(s):s}function mU(s){return s.exportSymbol?s.exportSymbol.flags|s.flags:s.flags}function ZAe(s){return iz(s)===1}function x3(s){return iz(s)!==0}function iz(s){let{parent:c}=s;switch(c?.kind){case 218:return iz(c);case 226:case 225:let{operator:g}=c;return g===46||g===47?2:0;case 227:let{left:d,operatorToken:h}=c;return d===s&&$D(h.kind)?h.kind===64?1:2:0;case 212:return c.name!==s?0:iz(c);case 304:{let _=iz(c.parent);return s===c.name?cWt(_):_}case 305:return s===c.objectAssignmentInitializer?0:iz(c.parent);case 210:return iz(c);case 250:case 251:return s===c.initializer?1:0;default:return 0}}function cWt(s){switch(s){case 0:return 1;case 1:return 0;case 2:return 2;default:return pe.assertNever(s)}}function LAe(s,c){if(!s||!c||Object.keys(s).length!==Object.keys(c).length)return!1;for(let g in s)if(typeof s[g]=="object"){if(!LAe(s[g],c[g]))return!1}else if(typeof s[g]!="function"&&s[g]!==c[g])return!1;return!0}function Ly(s,c){s.forEach(c),s.clear()}function IN(s,c,g){let{onDeleteValue:d,onExistingValue:h}=g;s.forEach((_,S)=>{var R;c?.has(S)?h&&h(_,(R=c.get)==null?void 0:R.call(c,S),S):(s.delete(S),d(_,S))})}function sz(s,c,g){IN(s,c,g);let{createNewValue:d}=g;c?.forEach((h,_)=>{s.has(_)||s.set(_,d(_,h))})}function Dbe(s){if(s.flags&32){let c=hN(s);return!!c&&Ga(c,64)}return!1}function hN(s){var c;return(c=s.declarations)==null?void 0:c.find(xa)}function la(s){return s.flags&3899393?s.objectFlags:0}function VAe(s){return!!s&&!!s.declarations&&!!s.declarations[0]&&wEe(s.declarations[0])}function mLe({moduleSpecifier:s}){return Lg(s)?s.text:Fp(s)}function kbe(s){let c;return Lu(s,g=>{d1(g)&&(c=g)},g=>{for(let d=g.length-1;d>=0;d--)if(d1(g[d])){c=g[d];break}}),c}function Vy(s,c){return s.has(c)?!1:(s.add(c),!0)}function tQ(s){return xa(s)||d_(s)||bh(s)}function WAe(s){return s>=183&&s<=206||s===133||s===159||s===150||s===163||s===151||s===136||s===154||s===155||s===116||s===157||s===146||s===141||s===234||s===313||s===314||s===315||s===316||s===317||s===318||s===319}function bp(s){return s.kind===212||s.kind===213}function xbe(s){return s.kind===212?s.name:(pe.assert(s.kind===213),s.argumentExpression)}function Une(s){return s.kind===276||s.kind===280}function CU(s){for(;bp(s);)s=s.expression;return s}function CLe(s,c){if(bp(s.parent)&&Ebe(s))return g(s.parent);function g(d){if(d.kind===212){let h=c(d.name);if(h!==void 0)return h}else if(d.kind===213)if(Ir(d.argumentExpression)||CA(d.argumentExpression)){let h=c(d.argumentExpression);if(h!==void 0)return h}else return;if(bp(d.expression))return g(d.expression);if(Ir(d.expression))return c(d.expression)}}function _U(s,c){for(;;){switch(s.kind){case 226:s=s.operand;continue;case 227:s=s.left;continue;case 228:s=s.condition;continue;case 216:s=s.tag;continue;case 214:if(c)return s;case 235:case 213:case 212:case 236:case 356:case 239:s=s.expression;continue}return s}}function lWt(s,c){this.flags=s,this.escapedName=c,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.lastAssignmentPos=void 0,this.links=void 0}function uWt(s,c){this.flags=c,(pe.isDebugging||ki)&&(this.checker=s)}function gWt(s,c){this.flags=c,pe.isDebugging&&(this.checker=s)}function Gbe(s,c,g){this.pos=c,this.end=g,this.kind=s,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 AWt(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function n$e(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function dWt(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}var VC={getNodeConstructor:()=>Gbe,getTokenConstructor:()=>AWt,getIdentifierConstructor:()=>n$e,getPrivateIdentifierConstructor:()=>Gbe,getSourceFileConstructor:()=>Gbe,getSymbolConstructor:()=>lWt,getTypeConstructor:()=>uWt,getSignatureConstructor:()=>gWt,getSourceMapSourceConstructor:()=>dWt},i$e=[];function s$e(s){i$e.push(s),s(VC)}function _Le(s){Object.assign(VC,s),F(i$e,c=>c(VC))}function mN(s,c){return s.replace(/\{(\d+)\}/g,(g,d)=>""+pe.checkDefined(c[+d]))}var OAe;function yU(s){OAe=s}function yLe(s){!OAe&&s&&(OAe=s())}function Bu(s){return OAe&&OAe[s.key]||s.message}function rQ(s,c,g,d,h,..._){g+d>c.length&&(d=c.length-g),he(c,g,d);let S=Bu(h);return zt(_)&&(S=mN(S,_)),{file:void 0,start:g,length:d,messageText:S,category:h.category,code:h.code,reportsUnnecessary:h.reportsUnnecessary,fileName:s}}function pWt(s){return s.file===void 0&&s.start!==void 0&&s.length!==void 0&&typeof s.fileName=="string"}function o$e(s,c){let g=c.fileName||"",d=c.text.length;pe.assertEqual(s.fileName,g),pe.assertLessThanOrEqual(s.start,d),pe.assertLessThanOrEqual(s.start+s.length,d);let h={file:c,start:s.start,length:s.length,messageText:s.messageText,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary};if(s.relatedInformation){h.relatedInformation=[];for(let _ of s.relatedInformation)pWt(_)&&_.fileName===g?(pe.assertLessThanOrEqual(_.start,d),pe.assertLessThanOrEqual(_.start+_.length,d),h.relatedInformation.push(o$e(_,c))):h.relatedInformation.push(_)}return h}function qL(s,c){let g=[];for(let d of s)g.push(o$e(d,c));return g}function rm(s,c,g,d,...h){he(s.text,c,g);let _=Bu(d);return zt(h)&&(_=mN(_,h)),{file:s,start:c,length:g,messageText:_,category:d.category,code:d.code,reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated}}function nQ(s,...c){let g=Bu(s);return zt(c)&&(g=mN(g,c)),g}function kf(s,...c){let g=Bu(s);return zt(c)&&(g=mN(g,c)),{file:void 0,start:void 0,length:void 0,messageText:g,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated}}function PAe(s,c){return{file:void 0,start:void 0,length:void 0,code:s.code,category:s.category,messageText:s.next?s:s.messageText,relatedInformation:c}}function wu(s,c,...g){let d=Bu(c);return zt(g)&&(d=mN(d,g)),{messageText:d,category:c.category,code:c.code,next:s===void 0||Array.isArray(s)?s:[s]}}function Kne(s,c){let g=s;for(;g.next;)g=g.next[0];g.next=[c]}function Fbe(s){return s.file?s.file.path:void 0}function oz(s,c){return bLe(s,c)||fWt(s,c)||0}function bLe(s,c){let g=Zbe(s),d=Zbe(c);return Ca(Fbe(s),Fbe(c))||Zt(s.start,c.start)||Zt(s.length,c.length)||Zt(g,d)||IWt(s,c)||0}function fWt(s,c){return!s.relatedInformation&&!c.relatedInformation?0:s.relatedInformation&&c.relatedInformation?Zt(c.relatedInformation.length,s.relatedInformation.length)||F(s.relatedInformation,(g,d)=>{let h=c.relatedInformation[d];return oz(g,h)})||0:s.relatedInformation?-1:1}function IWt(s,c){let g=Lbe(s),d=Lbe(c);typeof g!="string"&&(g=g.messageText),typeof d!="string"&&(d=d.messageText);let h=typeof s.messageText!="string"?s.messageText.next:void 0,_=typeof c.messageText!="string"?c.messageText.next:void 0,S=Ca(g,d);return S||(S=hWt(h,_),S)?S:s.canonicalHead&&!c.canonicalHead?-1:c.canonicalHead&&!s.canonicalHead?1:0}function hWt(s,c){return s===void 0&&c===void 0?0:s===void 0?1:c===void 0?-1:a$e(s,c)||c$e(s,c)}function a$e(s,c){if(s===void 0&&c===void 0)return 0;if(s===void 0)return 1;if(c===void 0)return-1;let g=Zt(c.length,s.length);if(g)return g;for(let d=0;d{h.externalModuleIndicator=VEe(h)||!h.isDeclarationFile||void 0};case 1:return h=>{h.externalModuleIndicator=VEe(h)};case 2:let c=[VEe];(s.jsx===4||s.jsx===5)&&c.push(CWt),c.push(_Wt);let g=Qp(...c);return h=>void(h.externalModuleIndicator=g(h,s))}}function Vbe(s){let c=G_(s);return 3<=c&&c<=99||cz(s)||qne(s)}function p$r(s){return s}var WC={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:s=>!!(s.allowImportingTsExtensions||s.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:s=>(s.target===0?void 0:s.target)??(s.module===100&&9||s.module===101&&9||s.module===102&&10||s.module===199&&99||1)},module:{dependencies:["target"],computeValue:s=>typeof s.module=="number"?s.module:WC.target.computeValue(s)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:s=>{let c=s.moduleResolution;if(c===void 0)switch(WC.module.computeValue(s)){case 1:c=2;break;case 100:case 101:case 102:c=3;break;case 199:c=99;break;case 200:c=100;break;default:c=1;break}return c}},moduleDetection:{dependencies:["module","target"],computeValue:s=>{if(s.moduleDetection!==void 0)return s.moduleDetection;let c=WC.module.computeValue(s);return 100<=c&&c<=199?3:2}},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:s=>!!(s.isolatedModules||s.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:s=>{if(s.esModuleInterop!==void 0)return s.esModuleInterop;switch(WC.module.computeValue(s)){case 100:case 101:case 102:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:s=>s.allowSyntheticDefaultImports!==void 0?s.allowSyntheticDefaultImports:WC.esModuleInterop.computeValue(s)||WC.module.computeValue(s)===4||WC.moduleResolution.computeValue(s)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:s=>{let c=WC.moduleResolution.computeValue(s);if(!bU(c))return!1;if(s.resolvePackageJsonExports!==void 0)return s.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:s=>{let c=WC.moduleResolution.computeValue(s);if(!bU(c))return!1;if(s.resolvePackageJsonImports!==void 0)return s.resolvePackageJsonImports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:s=>{if(s.resolveJsonModule!==void 0)return s.resolveJsonModule;switch(WC.module.computeValue(s)){case 102:case 199:return!0}return WC.moduleResolution.computeValue(s)===100}},declaration:{dependencies:["composite"],computeValue:s=>!!(s.declaration||s.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:s=>!!(s.preserveConstEnums||WC.isolatedModules.computeValue(s))},incremental:{dependencies:["composite"],computeValue:s=>!!(s.incremental||s.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:s=>!!(s.declarationMap&&WC.declaration.computeValue(s))},allowJs:{dependencies:["checkJs"],computeValue:s=>s.allowJs===void 0?!!s.checkJs:s.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:s=>s.useDefineForClassFields===void 0?WC.target.computeValue(s)>=9:s.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:s=>l_(s,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:s=>l_(s,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:s=>l_(s,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:s=>l_(s,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:s=>l_(s,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:s=>l_(s,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:s=>l_(s,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:s=>l_(s,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:s=>l_(s,"useUnknownInCatchVariables")}},az=WC,ELe=WC.allowImportingTsExtensions.computeValue,Hg=WC.target.computeValue,o0=WC.module.computeValue,G_=WC.moduleResolution.computeValue,SLe=WC.moduleDetection.computeValue,lS=WC.isolatedModules.computeValue,Lw=WC.esModuleInterop.computeValue,iQ=WC.allowSyntheticDefaultImports.computeValue,cz=WC.resolvePackageJsonExports.computeValue,qne=WC.resolvePackageJsonImports.computeValue,VW=WC.resolveJsonModule.computeValue,Wy=WC.declaration.computeValue,Lb=WC.preserveConstEnums.computeValue,WW=WC.incremental.computeValue,HAe=WC.declarationMap.computeValue,GF=WC.allowJs.computeValue,$ne=WC.useDefineForClassFields.computeValue;function eie(s){return s>=5&&s<=99}function YAe(s){switch(o0(s)){case 0:case 4:case 3:return!1}return!0}function vLe(s){return s.allowUnreachableCode===!1}function BLe(s){return s.allowUnusedLabels===!1}function bU(s){return s>=3&&s<=99||s===100}function wLe(s){return 101<=s&&s<=199||s===200||s===99}function l_(s,c){return s[c]===void 0?!!s.strict:!!s[c]}function QAe(s){return Fh(get.type,(c,g)=>c===s?g:void 0)}function Wbe(s){return s.useDefineForClassFields!==!1&&Hg(s)>=9}function Obe(s,c){return B0(c,s,UOt)}function TLe(s,c){return B0(c,s,KOt)}function RLe(s,c){return B0(c,s,jOt)}function lz(s,c){return c.strictFlag?l_(s,c.name):c.allowJsFlag?GF(s):s[c.name]}function XAe(s){let c=s.jsx;return c===2||c===4||c===5}function tie(s,c){let g=c?.pragmas.get("jsximportsource"),d=Ki(g)?g[g.length-1]:g,h=c?.pragmas.get("jsxruntime"),_=Ki(h)?h[h.length-1]:h;if(_?.arguments.factory!=="classic")return s.jsx===4||s.jsx===5||s.jsxImportSource||d||_?.arguments.factory==="automatic"?d?.arguments.factory||s.jsxImportSource||"react":void 0}function rie(s,c){return s?`${s}/${c.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function Pbe(s){let c=!1;for(let g=0;gh,getSymlinkedDirectories:()=>g,getSymlinkedDirectoriesByRealpath:()=>d,setSymlinkedFile:(T,O)=>(h||(h=new Map)).set(T,O),setSymlinkedDirectory:(T,O)=>{let V=Pu(T,s,c);Cz(V)||(V=Cp(V),O!==!1&&!g?.has(V)&&(d||(d=gl())).add(O.realPath,T),(g||(g=new Map)).set(V,O))},setSymlinksFromResolutions(T,O,V){pe.assert(!_),_=!0,T(M=>R(this,M.resolvedModule)),O(M=>R(this,M.resolvedTypeReferenceDirective)),V.forEach(M=>R(this,M.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>_,setSymlinksFromResolution(T){R(this,T)},hasAnySymlinks:S};function S(){return!!h?.size||!!g&&!!Fh(g,T=>!!T)}function R(T,O){if(!O||!O.originalPath||!O.resolvedFileName)return;let{resolvedFileName:V,originalPath:M}=O;T.setSymlinkedFile(Pu(M,s,c),V);let[ee,re]=yWt(V,M,s,c)||E;ee&&re&&T.setSymlinkedDirectory(re,{real:Cp(ee),realPath:Cp(Pu(ee,s,c))})}}function yWt(s,c,g,d){let h=kp(Xc(s,g)),_=kp(Xc(c,g)),S=!1;for(;h.length>=2&&_.length>=2&&!u$e(h[h.length-2],d)&&!u$e(_[_.length-2],d)&&d(h[h.length-1])===d(_[_.length-1]);)h.pop(),_.pop(),S=!0;return S?[Fm(h),Fm(_)]:void 0}function u$e(s,c){return s!==void 0&&(c(s)==="node_modules"||Ac(s,"@"))}function bWt(s){return r0(s.charCodeAt(0))?s.slice(1):void 0}function JAe(s,c,g){let d=JS(s,c,g);return d===void 0?void 0:bWt(d)}var NLe=/[^\w\s/]/g;function g$e(s){return s.replace(NLe,EWt)}function EWt(s){return"\\"+s}var SWt=[42,63],vWt=["node_modules","bower_components","jspm_packages"],DLe=`(?!(?:${vWt.join("|")})(?:/|$))`,A$e={singleAsteriskRegexFragment:"(?:[^./]|(?:\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(?:/${DLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>xLe(s,A$e.singleAsteriskRegexFragment)},d$e={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(?:/${DLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>xLe(s,d$e.singleAsteriskRegexFragment)},Hbe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(?:/.+?)?",replaceWildcardCharacter:s=>xLe(s,Hbe.singleAsteriskRegexFragment)},kLe={files:A$e,directories:d$e,exclude:Hbe};function uz(s,c,g){let d=nie(s,c,g);return!d||!d.length?void 0:`^(?:${d.map(S=>`(?:${S})`).join("|")})${g==="exclude"?"(?:$|/)":"$"}`}function nie(s,c,g){if(!(s===void 0||s.length===0))return jt(s,d=>d&&UAe(d,c,g,kLe[g]))}function Ybe(s){return!/[.*?]/.test(s)}function Qbe(s,c,g){let d=s&&UAe(s,c,g,kLe[g]);return d&&`^(?:${d})${g==="exclude"?"(?:$|/)":"$"}`}function UAe(s,c,g,{singleAsteriskRegexFragment:d,doubleAsteriskRegexFragment:h,replaceWildcardCharacter:_}=kLe[g]){let S="",R=!1,T=hB(s,c),O=Ei(T);if(g!=="exclude"&&O==="**")return;T[0]=sy(T[0]),Ybe(O)&&T.push("**","*");let V=0;for(let M of T){if(M==="**")S+=h;else if(g==="directories"&&(S+="(?:",V++),R&&(S+=cg),g!=="exclude"){let ee="";M.charCodeAt(0)===42?(ee+="(?:[^./]"+d+")?",M=M.substr(1)):M.charCodeAt(0)===63&&(ee+="[^./]",M=M.substr(1)),ee+=M.replace(NLe,_),ee!==M&&(S+=DLe),S+=ee}else S+=M.replace(NLe,_);R=!0}for(;V>0;)S+=")?",V--;return S}function xLe(s,c){return s==="*"?c:s==="?"?"[^/]":"\\"+s}function KAe(s,c,g,d,h){s=su(s),h=su(h);let _=Ro(h,s);return{includeFilePatterns:lt(nie(g,_,"files"),S=>`^${S}$`),includeFilePattern:uz(g,_,"files"),includeDirectoryPattern:uz(g,_,"directories"),excludePattern:uz(c,_,"exclude"),basePaths:BWt(s,g,d)}}function rk(s,c){return new RegExp(s,c?"":"i")}function Xbe(s,c,g,d,h,_,S,R,T){s=su(s),_=su(_);let O=KAe(s,g,d,h,_),V=O.includeFilePatterns&&O.includeFilePatterns.map(Ee=>rk(Ee,h)),M=O.includeDirectoryPattern&&rk(O.includeDirectoryPattern,h),ee=O.excludePattern&&rk(O.excludePattern,h),re=V?V.map(()=>[]):[[]],ge=new Map,Ie=bd(h);for(let Ee of O.basePaths)_e(Ee,Ro(_,Ee),S);return Sr(re);function _e(Ee,Ne,Te){let Ze=Ie(T(Ne));if(ge.has(Ze))return;ge.set(Ze,!0);let{files:Pe,directories:Ke}=R(Ee);for(let et of bo(Pe,Ca)){let Ye=Ro(Ee,et),Tt=Ro(Ne,et);if(!(c&&!Iu(Ye,c))&&!(ee&&ee.test(Tt)))if(!V)re[0].push(Ye);else{let at=Se(V,Qe=>Qe.test(Tt));at!==-1&&re[at].push(Ye)}}if(!(Te!==void 0&&(Te--,Te===0)))for(let et of bo(Ke,Ca)){let Ye=Ro(Ee,et),Tt=Ro(Ne,et);(!M||M.test(Tt))&&(!ee||!ee.test(Tt))&&_e(Ye,Tt,Te)}}}function BWt(s,c,g){let d=[s];if(c){let h=[];for(let _ of c){let S=Up(_)?_:su(Ro(s,_));h.push(wWt(S))}h.sort(gd(!g));for(let _ of h)ue(d,S=>!zh(S,_,s,!g))&&d.push(_)}return d}function wWt(s){let c=tt(s,SWt);return c<0?v0(s)?sy(Mo(s)):s:s.substring(0,s.lastIndexOf(cg,c))}function jAe(s,c){return c||zAe(s)||3}function zAe(s){switch(s.substr(s.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}}var qAe=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],Jbe=Sr(qAe),TWt=[...qAe,[".json"]],GLe=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],RWt=[[".js",".jsx"],[".mjs"],[".cjs"]],EU=Sr(RWt),$Ae=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],NWt=[...$Ae,[".json"]],ede=[".d.ts",".d.cts",".d.mts"],iie=[".ts",".cts",".mts",".tsx"],tde=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function gz(s,c){let g=s&&GF(s);if(!c||c.length===0)return g?$Ae:qAe;let d=g?$Ae:qAe,h=Sr(d);return[...d,...Xt(c,S=>S.scriptKind===7||g&&DWt(S.scriptKind)&&!h.includes(S.extension)?[S.extension]:void 0)]}function Az(s,c){return!s||!VW(s)?c:c===$Ae?NWt:c===qAe?TWt:[...c,[".json"]]}function DWt(s){return s===1||s===2}function CN(s){return zt(EU,c=>cA(s,c))}function G3(s){return zt(Jbe,c=>cA(s,c))}function FLe(s){return zt(iie,c=>cA(s,c))&&!PC(s)}var ZLe=(s=>(s[s.Minimal=0]="Minimal",s[s.Index=1]="Index",s[s.JsExtension=2]="JsExtension",s[s.TsExtension=3]="TsExtension",s))(ZLe||{});function kWt({imports:s},c=Qp(CN,G3)){return J(s,({text:g})=>mp(g)&&!Iu(g,tde)?c(g):void 0)||!1}function LLe(s,c,g,d){let h=G_(g),_=3<=h&&h<=99;if(s==="js"||c===99&&_)return Qie(g)&&S()!==2?3:2;if(s==="minimal")return 0;if(s==="index")return 1;if(!Qie(g))return d&&kWt(d)?2:0;return S();function S(){let R=!1,T=d?.imports.length?d.imports:d&&s0(d)?xWt(d).map(O=>O.arguments[0]):E;for(let O of T)if(mp(O.text)){if(_&&c===1&&Gtt(d,O,g)===99||Iu(O.text,tde))continue;if(G3(O.text))return 3;CN(O.text)&&(R=!0)}return R?2:0}}function xWt(s){let c=0,g;for(let d of s.statements){if(c>3)break;hne(d)?g=Nn(g,d.declarationList.declarations.map(h=>h.initializer)):OC(d)&&ly(d.expression,!0)?g=Ft(g,d.expression):c++}return g||E}function Ube(s,c,g){if(!s)return!1;let d=gz(c,g);for(let h of Sr(Az(c,d)))if(cA(s,h))return!0;return!1}function p$e(s){let c=s.match(/\//g);return c?c.length:0}function sie(s,c){return Zt(p$e(s),p$e(c))}var VLe=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function a0(s){for(let c of VLe){let g=WLe(s,c);if(g!==void 0)return g}return s}function WLe(s,c){return cA(s,c)?oie(s,c):void 0}function oie(s,c){return s.substring(0,s.length-c.length)}function _N(s,c){return $2(s,c,VLe,!1)}function sQ(s){let c=s.indexOf("*");return c===-1?s:s.indexOf("*",c+1)!==-1?void 0:{prefix:s.substr(0,c),suffix:s.substr(c+1)}}var f$e=new WeakMap;function dz(s){let c=f$e.get(s);if(c!==void 0)return c;let g,d,h=yg(s);for(let _ of h){let S=sQ(_);S!==void 0&&(typeof S=="string"?(g??(g=new Set)).add(S):(d??(d=[])).push(S))}return f$e.set(s,c={matchableStringSet:g,patterns:d}),c}function kB(s){return!(s>=0)}function rde(s){return s===".ts"||s===".tsx"||s===".d.ts"||s===".cts"||s===".mts"||s===".d.mts"||s===".d.cts"||Ac(s,".d.")&&di(s,".ts")}function pz(s){return rde(s)||s===".json"}function fz(s){let c=jT(s);return c!==void 0?c:pe.fail(`File ${s} has unknown extension.`)}function I$e(s){return jT(s)!==void 0}function jT(s){return de(VLe,c=>cA(s,c))}function Iz(s,c){return s.checkJsDirective?s.checkJsDirective.enabled:c.checkJs}var Kbe={files:E,directories:E};function jbe(s,c){let{matchableStringSet:g,patterns:d}=s;if(g?.has(c))return c;if(!(d===void 0||d.length===0))return XA(d,h=>h,c)}function zbe(s,c){let g=s.indexOf(c);return pe.assert(g!==-1),s.slice(g)}function ug(s,...c){return c.length&&(s.relatedInformation||(s.relatedInformation=[]),pe.assert(s.relatedInformation!==E,"Diagnostic had empty array singleton for related info, but is still being constructed!"),s.relatedInformation.push(...c)),s}function OLe(s,c){pe.assert(s.length!==0);let g=c(s[0]),d=g;for(let h=1;hd&&(d=_)}return{min:g,max:d}}function qbe(s){return{pos:JD(s),end:s.end}}function $be(s,c){let g=c.pos-1,d=Math.min(s.text.length,Yu(s.text,c.end)+1);return{pos:g,end:d}}function F3(s,c,g){return h$e(s,c,g,!1)}function PLe(s,c,g){return h$e(s,c,g,!0)}function h$e(s,c,g,d){return c.skipLibCheck&&s.isDeclarationFile||c.skipDefaultLibCheck&&s.hasNoDefaultLib||!d&&c.noCheck||g.isSourceOfProjectReferenceRedirect(s.fileName)||!SU(s,c)}function SU(s,c){if(s.checkJsDirective&&s.checkJsDirective.enabled===!1)return!1;if(s.scriptKind===3||s.scriptKind===4||s.scriptKind===5)return!0;let d=(s.scriptKind===1||s.scriptKind===2)&&Iz(s,c);return FY(s,c.checkJs)||d||s.scriptKind===7}function nde(s,c){return s===c||typeof s=="object"&&s!==null&&typeof c=="object"&&c!==null&&Hu(s,c,nde)}function hz(s){let c;switch(s.charCodeAt(1)){case 98:case 66:c=1;break;case 111:case 79:c=3;break;case 120:case 88:c=4;break;default:let O=s.length-1,V=0;for(;s.charCodeAt(V)===48;)V++;return s.slice(V,O)||"0"}let g=2,d=s.length-1,h=(d-g)*c,_=new Uint16Array((h>>>4)+(h&15?1:0));for(let O=d-1,V=0;O>=g;O--,V+=c){let M=V>>>4,ee=s.charCodeAt(O),ge=(ee<=57?ee-48:10+ee-(ee<=70?65:97))<<(V&15);_[M]|=ge;let Ie=ge>>>16;Ie&&(_[M+1]|=Ie)}let S="",R=_.length-1,T=!0;for(;T;){let O=0;T=!1;for(let V=R;V>=0;V--){let M=O<<16|_[V],ee=M/10|0;_[V]=ee,O=M-ee*10,ee&&!T&&(R=V,T=!0)}S=O+S}return S}function OW({negative:s,base10Value:c}){return(s&&c!=="0"?"-":"")+c}function MLe(s){if(aie(s,!1))return eEe(s)}function eEe(s){let c=s.startsWith("-"),g=hz(`${c?s.slice(1):s}n`);return{negative:c,base10Value:g}}function aie(s,c){if(s==="")return!1;let g=Rb(99,!1),d=!0;g.setOnError(()=>d=!1),g.setText(s+"n");let h=g.scan(),_=h===41;_&&(h=g.scan());let S=g.getTokenFlags();return d&&h===10&&g.getTokenEnd()===s.length+1&&!(S&512)&&(!c||s===OW({negative:_,base10Value:hz(g.getTokenValue())}))}function $L(s){return!!(s.flags&33554432)||QY(s)||cAe(s)||ZWt(s)||FWt(s)||!(JT(s)||GWt(s))}function GWt(s){return Ir(s)&&l0(s.parent)&&s.parent.name===s}function FWt(s){for(;s.kind===80||s.kind===212;)s=s.parent;if(s.kind!==168)return!1;if(Ga(s.parent,64))return!0;let c=s.parent.parent.kind;return c===265||c===188}function ZWt(s){if(s.kind!==80)return!1;let c=ji(s.parent,g=>{switch(g.kind){case 299:return!0;case 212:case 234:return!1;default:return"quit"}});return c?.token===119||c?.parent.kind===265}function HLe(s){return oh(s)&&Ir(s.typeName)}function YLe(s,c=bg){if(s.length<2)return!0;let g=s[0];for(let d=1,h=s.length;ds.includes(c))}function JLe(s){if(!s.parent)return;switch(s.kind){case 169:let{parent:g}=s;return g.kind===196?void 0:g.typeParameters;case 170:return s.parent.parameters;case 205:return s.parent.templateSpans;case 240:return s.parent.templateSpans;case 171:{let{parent:d}=s;return hQ(d)?d.modifiers:void 0}case 299:return s.parent.heritageClauses}let{parent:c}=s;if(h3(s))return GU(s.parent)?void 0:s.parent.tags;switch(c.kind){case 188:case 265:return Dx(s)?c.members:void 0;case 193:case 194:return c.types;case 190:case 210:case 357:case 276:case 280:return c.elements;case 211:case 293:return c.properties;case 214:case 215:return uc(s)?c.typeArguments:c.expression===s?void 0:c.arguments;case 285:case 289:return WJ(s)?c.children:void 0;case 287:case 286:return uc(s)?c.typeArguments:void 0;case 242:case 297:case 298:case 269:return c.statements;case 270:return c.clauses;case 264:case 232:return MI(s)?c.members:void 0;case 267:return HF(s)?c.members:void 0;case 308:return c.statements}}function ide(s){if(!s.typeParameters){if(zt(s.parameters,c=>!Zh(c)))return!0;if(s.kind!==220){let c=Nc(s.parameters);if(!(c&&NF(c)))return!0}}return!1}function _z(s){return s==="Infinity"||s==="-Infinity"||s==="NaN"}function ULe(s){return s.kind===261&&s.parent.kind===300}function FF(s){return s.kind===219||s.kind===220}function PW(s){return s.replace(/\$/g,()=>"\\$")}function yN(s){return(+s).toString()===s}function cie(s,c,g,d,h){let _=h&&s==="new";return!_&&qh(s,c)?me.createIdentifier(s):!d&&!_&&yN(s)&&+s>=0?me.createNumericLiteral(+s):me.createStringLiteral(s,!!g)}function yz(s){return!!(s.flags&262144&&s.isThisType)}function sde(s){let c=0,g=0,d=0,h=0,_;(O=>{O[O.BeforeNodeModules=0]="BeforeNodeModules",O[O.NodeModules=1]="NodeModules",O[O.Scope=2]="Scope",O[O.PackageContent=3]="PackageContent"})(_||(_={}));let S=0,R=0,T=0;for(;R>=0;)switch(S=R,R=s.indexOf("/",S+1),T){case 0:s.indexOf(Hx,S)===S&&(c=S,g=R,T=1);break;case 1:case 2:T===1&&s.charAt(S+1)==="@"?T=2:(d=R,T=3);break;case 3:s.indexOf(Hx,S)===S?T=1:T=3;break}return h=S,T>1?{topLevelNodeModulesIndex:c,topLevelPackageNameIndex:g,packageRootIndex:d,fileNameIndex:h}:void 0}function oQ(s){switch(s.kind){case 169:case 264:case 265:case 266:case 267:case 347:case 339:case 341:return!0;case 274:return s.phaseModifier===156;case 277:return s.parent.parent.phaseModifier===156;case 282:return s.parent.parent.isTypeOnly;default:return!1}}function lie(s){return Q3(s)||Eh(s)||ah(s)||mm(s)||d_(s)||oQ(s)||Lh(s)&&!BF(s)&&!NB(s)}function uie(s){if(!SY(s))return!1;let{isBracketed:c,typeExpression:g}=s;return c||!!g&&g.type.kind===317}function nEe(s,c){if(s.length===0)return!1;let g=s.charCodeAt(0);return g===35?s.length>1&&Sd(s.charCodeAt(1),c):Sd(g,c)}function KLe(s){var c;return((c=CEe(s))==null?void 0:c.kind)===0}function ode(s){return wo(s)&&(s.type&&s.type.kind===317||DL(s).some(uie))}function GB(s){switch(s.kind){case 173:case 172:return!!s.questionToken;case 170:return!!s.questionToken||ode(s);case 349:case 342:return uie(s);default:return!1}}function ade(s){let c=s.kind;return(c===212||c===213)&&yv(s.expression)}function iEe(s){return wo(s)&&dI(s)&&jm(s)&&!!yF(s)}function sEe(s){return pe.checkDefined(cde(s))}function cde(s){let c=yF(s);return c&&c.typeExpression&&c.typeExpression.type}function bz(s){return Ir(s)?s.escapedText:uS(s)}function Vw(s){return Ir(s)?Vo(s):Ez(s)}function jLe(s){let c=s.kind;return c===80||c===296}function uS(s){return`${s.namespace.escapedText}:${Vo(s.name)}`}function Ez(s){return`${Vo(s.namespace)}:${Vo(s.name)}`}function oEe(s){return Ir(s)?Vo(s):Ez(s)}function p2(s){return!!(s.flags&8576)}function f2(s){return s.flags&8192?s.escapedName:s.flags&384?pp(""+s.value):pe.fail()}function aQ(s){return!!s&&(jo(s)||Qg(s)||po(s))}function zLe(s){return s===void 0?!1:!!Uie(s.attributes)}var VWt=String.prototype.replace;function Z3(s,c){return VWt.call(s,"*",c)}function lde(s){return Ir(s.name)?s.name.escapedText:pp(s.name.text)}function qLe(s){switch(s.kind){case 169:case 170:case 173:case 172:case 186:case 185:case 180:case 181:case 182:case 175:case 174:case 176:case 177:case 178:case 179:case 184:case 183:case 187:case 188:case 189:case 190:case 193:case 194:case 197:case 191:case 192:case 198:case 199:case 195:case 196:case 204:case 206:case 203:case 329:case 330:case 347:case 339:case 341:case 346:case 345:case 325:case 326:case 327:case 342:case 349:case 318:case 316:case 315:case 313:case 314:case 323:case 319:case 310:case 334:case 336:case 335:case 351:case 344:case 200:case 201:case 263:case 242:case 269:case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 252:case 253:case 254:case 255:case 256:case 257:case 258:case 259:case 261:case 209:case 264:case 265:case 266:case 267:case 268:case 273:case 272:case 279:case 278:case 243:case 260:case 283:return!0}return!1}function nm(s,c=!1,g=!1,d=!1){return{value:s,isSyntacticallyString:c,resolvedOtherFiles:g,hasExternalReferences:d}}function $Le({evaluateElementAccessExpression:s,evaluateEntityNameExpression:c}){function g(h,_){let S=!1,R=!1,T=!1;switch(h=JA(h),h.kind){case 225:let O=g(h.operand,_);if(R=O.resolvedOtherFiles,T=O.hasExternalReferences,typeof O.value=="number")switch(h.operator){case 40:return nm(O.value,S,R,T);case 41:return nm(-O.value,S,R,T);case 55:return nm(~O.value,S,R,T)}break;case 227:{let V=g(h.left,_),M=g(h.right,_);if(S=(V.isSyntacticallyString||M.isSyntacticallyString)&&h.operatorToken.kind===40,R=V.resolvedOtherFiles||M.resolvedOtherFiles,T=V.hasExternalReferences||M.hasExternalReferences,typeof V.value=="number"&&typeof M.value=="number")switch(h.operatorToken.kind){case 52:return nm(V.value|M.value,S,R,T);case 51:return nm(V.value&M.value,S,R,T);case 49:return nm(V.value>>M.value,S,R,T);case 50:return nm(V.value>>>M.value,S,R,T);case 48:return nm(V.value<=2)break;case 175:case 177:case 178:case 179:case 263:if(Ke&3&&it==="arguments"){yt=g;break e}break;case 219:if(Ke&3&&it==="arguments"){yt=g;break e}if(Ke&16){let ur=Ze.name;if(ur&&it===ur.escapedText){yt=Ze.symbol;break e}}break;case 171:Ze.parent&&Ze.parent.kind===170&&(Ze=Ze.parent),Ze.parent&&(MI(Ze.parent)||Ze.parent.kind===264)&&(Ze=Ze.parent);break;case 347:case 339:case 341:case 352:let tr=cU(Ze);tr&&(Ze=tr.parent);break;case 170:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&(Wt||(Wt=Ze));break;case 209:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&KL(Ze)&&!Wt&&(Wt=Ze);break;case 196:if(Ke&262144){let ur=Ze.typeParameter.name;if(ur&&it===ur.escapedText){yt=Ze.typeParameter.symbol;break e}}break;case 282:Rt&&Rt===Ze.propertyName&&Ze.parent.parent.moduleSpecifier&&(Ze=Ze.parent.parent.parent);break}Ne(Ze,Rt)&&(Lt=Ze),Rt=Ze,Ze=PB(Ze)?pAe(Ze)||Ze.parent:(AS(Ze)||E9e(Ze))&&QL(Ze)||Ze.parent}if(Ye&&yt&&(!Lt||yt!==Lt.symbol)&&(yt.isReferenced|=Ke),!yt){if(Rt&&(pe.assertNode(Rt,al),Rt.commonJsModuleIndicator&&it==="exports"&&Ke&Rt.symbol.flags))return Rt.symbol;Tt||(yt=S(_,it,Ke))}if(!yt&&mt&&wo(mt)&&mt.parent&&ly(mt.parent,!1))return c;if(et){if(je&&O(mt,it,je,yt))return;yt?M(mt,yt,Ke,Rt,Wt,_r):V(mt,Pe,Ke,et)}return yt}function _e(Ze,Pe,Ke){let et=Hg(s),Ye=Pe;if(Si(Ke)&&Ye.body&&Ze.valueDeclaration&&Ze.valueDeclaration.pos>=Ye.body.pos&&Ze.valueDeclaration.end<=Ye.body.end&&et>=2){let Qe=T(Ye);return Qe===void 0&&(Qe=F(Ye.parameters,Tt)||!1,R(Ye,Qe)),!Qe}return!1;function Tt(Qe){return at(Qe.name)||!!Qe.initializer&&at(Qe.initializer)}function at(Qe){switch(Qe.kind){case 220:case 219:case 263:case 177:return!1;case 175:case 178:case 179:case 304:return at(Qe.name);case 173:return tm(Qe)?!re:at(Qe.name);default:return RJ(Qe)||ZC(Qe)?et<7:mg(Qe)&&Qe.dotDotDotToken&&$m(Qe.parent)?et<4:uc(Qe)?!1:Lu(Qe,at)||!1}}}function Ee(Ze,Pe){return Ze.kind!==220&&Ze.kind!==219?Ow(Ze)||(Gd(Ze)||Ze.kind===173&&!lg(Ze))&&(!Pe||Pe!==Ze.name):Pe&&Pe===Ze.name?!1:Ze.asteriskToken||Ga(Ze,1024)?!0:!ML(Ze)}function Ne(Ze,Pe){switch(Ze.kind){case 170:return!!Pe&&Pe===Ze.name;case 263:case 264:case 265:case 267:case 266:case 268:return!0;default:return!1}}function Te(Ze,Pe){if(Ze.declarations){for(let Ke of Ze.declarations)if(Ke.kind===169&&(PB(Ke.parent)?NW(Ke.parent):Ke.parent)===Pe)return!(PB(Ke.parent)&&de(Ke.parent.parent.tags,cS))}return!1}}function Sz(s,c=!0){switch(pe.type(s),s.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return c;case 225:return s.operator===41?yC(s.operand)||c&&gQ(s.operand):s.operator===40?yC(s.operand):!1;default:return!1}}function gde(s){for(;s.kind===218;)s=s.expression;return s}function Ade(s){switch(pe.type(s),s.kind){case 170:case 172:case 173:case 209:case 212:case 213:case 227:case 261:case 278:case 304:case 305:case 342:case 349:return!0;default:return!1}}function cEe(s){let c=ji(s,Yf);return!!c&&!c.importClause}var gie=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],Aie=new Set(gie),dde=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),BU=new Set([...gie,...gie.map(s=>`node:${s}`),...dde]);function die(s,c,g,d){let h=wo(s),_=/import|require/g;for(;_.exec(s.text)!==null;){let S=WWt(s,_.lastIndex,c);if(h&&ly(S,g))d(S,S.arguments[0]);else if(jp(S)&&S.arguments.length>=1&&(!g||CA(S.arguments[0])))d(S,S.arguments[0]);else if(c&&Gy(S))d(S,S.argument.literal);else if(c&&RN(S)){let R=UY(S);R&&Lg(R)&&R.text&&d(S,R)}}}function WWt(s,c,g){let d=wo(s),h=s,_=S=>{if(S.pos<=c&&(cg&&c(g))}function vz(s,c,g,d){let h;return _(s,c,void 0);function _(S,R,T){if(d){let V=d(S,T);if(V)return V}let O;return F(R,(V,M)=>{if(V&&h?.has(V.sourceFile.path)){(O??(O=new Set)).add(V);return}let ee=g(V,T,M);if(ee||!V)return ee;(h||(h=new Set)).add(V.sourceFile.path)})||F(R,V=>V&&!O?.has(V)?_(V.commandLine.projectReferences,V.references,V):void 0)}}function uEe(s,c,g){return s&&m$e(s,c,g)}function m$e(s,c,g){return $J(s,c,d=>YI(d.initializer)?de(d.initializer.elements,h=>Lg(h)&&h.text===g):void 0)}function e9e(s,c,g){return pde(s,c,d=>Lg(d.initializer)&&d.initializer.text===g?d.initializer:void 0)}function pde(s,c,g){return $J(s,c,g)}function KA(s,c=!0){let g=s&&C$e(s);return g&&!c&&Oy(g),e9(g,!1)}function Iie(s,c,g){let d=g(s);return d?ua(d,s):d=C$e(s,g),d&&!c&&Oy(d),d}function C$e(s,c){let g=c?_=>Iie(_,!0,c):KA,h=_s(s,g,void 0,c?_=>_&&fde(_,!0,c):_=>_&&c0(_),g);if(h===s){let _=Lg(s)?ua(me.createStringLiteralFromNode(s),s):yC(s)?ua(me.createNumericLiteral(s.text,s.numericLiteralFlags),s):me.cloneNode(s);return gn(_,s)}return h.parent=void 0,h}function c0(s,c=!0){if(s){let g=me.createNodeArray(s.map(d=>KA(d,c)),s.hasTrailingComma);return gn(g,s),g}return s}function fde(s,c,g){return me.createNodeArray(s.map(d=>Iie(d,c,g)),s.hasTrailingComma)}function Oy(s){gEe(s),t9e(s)}function gEe(s){wU(s,1024,OWt)}function t9e(s){wU(s,2048,kbe)}function wU(s,c,g){Ww(s,c);let d=g(s);d&&wU(d,c,g)}function OWt(s){return Lu(s,c=>c)}function r9e(){let s,c,g,d,h;return{createBaseSourceFileNode:_,createBaseIdentifierNode:S,createBasePrivateIdentifierNode:R,createBaseTokenNode:T,createBaseNode:O};function _(V){return new(h||(h=VC.getSourceFileConstructor()))(V,-1,-1)}function S(V){return new(g||(g=VC.getIdentifierConstructor()))(V,-1,-1)}function R(V){return new(d||(d=VC.getPrivateIdentifierConstructor()))(V,-1,-1)}function T(V){return new(c||(c=VC.getTokenConstructor()))(V,-1,-1)}function O(V){return new(s||(s=VC.getNodeConstructor()))(V,-1,-1)}}function mv(s){let c,g;return{getParenthesizeLeftSideOfBinaryForOperator:d,getParenthesizeRightSideOfBinaryForOperator:h,parenthesizeLeftSideOfBinary:V,parenthesizeRightSideOfBinary:M,parenthesizeExpressionOfComputedPropertyName:ee,parenthesizeConditionOfConditionalExpression:re,parenthesizeBranchOfConditionalExpression:ge,parenthesizeExpressionOfExportDefault:Ie,parenthesizeExpressionOfNew:_e,parenthesizeLeftSideOfAccess:Ee,parenthesizeOperandOfPostfixUnary:Ne,parenthesizeOperandOfPrefixUnary:Te,parenthesizeExpressionsOfCommaDelimitedList:Ze,parenthesizeExpressionForDisallowedComma:Pe,parenthesizeExpressionOfExpressionStatement:Ke,parenthesizeConciseBodyOfArrowFunction:et,parenthesizeCheckTypeOfConditionalType:Ye,parenthesizeExtendsTypeOfConditionalType:Tt,parenthesizeConstituentTypesOfUnionType:Qe,parenthesizeConstituentTypeOfUnionType:at,parenthesizeConstituentTypesOfIntersectionType:mt,parenthesizeConstituentTypeOfIntersectionType:Ct,parenthesizeOperandOfTypeOperator:yt,parenthesizeOperandOfReadonlyTypeOperator:Rt,parenthesizeNonArrayTypeOfPostfixType:Lt,parenthesizeElementTypesOfTupleType:je,parenthesizeElementTypeOfTupleType:Wt,parenthesizeTypeOfOptionalType:Gt,parenthesizeTypeArguments:tr,parenthesizeLeadingTypeArgument:it};function d(ur){c||(c=new Map);let Gr=c.get(ur);return Gr||(Gr=dt=>V(ur,dt),c.set(ur,Gr)),Gr}function h(ur){g||(g=new Map);let Gr=g.get(ur);return Gr||(Gr=dt=>M(ur,void 0,dt),g.set(ur,Gr)),Gr}function _(ur,Gr){return ur===61?Gr===56||Gr===57:Gr===61?ur===56||ur===57:!1}function S(ur,Gr,dt,pr){let ot=l2(Gr);if(po(ot)&&_(ur,ot.operatorToken.kind))return!0;let ir=Fne(227,ur),qt=sbe(227,ur);if(!dt&&Gr.kind===220&&ir>3)return!0;let Yt=J7(ot);switch(Zt(Yt,ir)){case-1:return!(!dt&&qt===1&&Gr.kind===230);case 1:return!1;case 0:if(dt)return qt===1;if(po(ot)&&ot.operatorToken.kind===ur){if(R(ur))return!1;if(ur===40){let Cn=pr?T(pr):0;if(vY(Cn)&&Cn===T(ot))return!1}}return ibe(ot)===0}}function R(ur){return ur===42||ur===52||ur===51||ur===53||ur===28}function T(ur){if(ur=l2(ur),vY(ur.kind))return ur.kind;if(ur.kind===227&&ur.operatorToken.kind===40){if(ur.cachedLiteralKind!==void 0)return ur.cachedLiteralKind;let Gr=T(ur.left),dt=vY(Gr)&&Gr===T(ur.right)?Gr:0;return ur.cachedLiteralKind=dt,dt}return 0}function O(ur,Gr,dt,pr){return l2(Gr).kind===218?Gr:S(ur,Gr,dt,pr)?s.createParenthesizedExpression(Gr):Gr}function V(ur,Gr){return O(ur,Gr,!0)}function M(ur,Gr,dt){return O(ur,dt,!1,Gr)}function ee(ur){return Rde(ur)?s.createParenthesizedExpression(ur):ur}function re(ur){let Gr=Fne(228,58),dt=l2(ur),pr=J7(dt);return Zt(pr,Gr)!==1?s.createParenthesizedExpression(ur):ur}function ge(ur){let Gr=l2(ur);return Rde(Gr)?s.createParenthesizedExpression(ur):ur}function Ie(ur){let Gr=l2(ur),dt=Rde(Gr);if(!dt)switch(_U(Gr,!1).kind){case 232:case 219:dt=!0}return dt?s.createParenthesizedExpression(ur):ur}function _e(ur){let Gr=_U(ur,!0);switch(Gr.kind){case 214:return s.createParenthesizedExpression(ur);case 215:return Gr.arguments?ur:s.createParenthesizedExpression(ur)}return Ee(ur)}function Ee(ur,Gr){let dt=l2(ur);return x_(dt)&&(dt.kind!==215||dt.arguments)&&(Gr||!ZC(dt))?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ne(ur){return x_(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Te(ur){return Hre(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ze(ur){let Gr=Er(ur,Pe);return gn(s.createNodeArray(Gr,ur.hasTrailingComma),ur)}function Pe(ur){let Gr=l2(ur),dt=J7(Gr),pr=Fne(227,28);return dt>pr?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ke(ur){let Gr=l2(ur);if(Ll(Gr)){let pr=Gr.expression,ot=l2(pr).kind;if(ot===219||ot===220){let ir=s.updateCallExpression(Gr,gn(s.createParenthesizedExpression(pr),pr),Gr.typeArguments,Gr.arguments);return s.restoreOuterExpressions(ur,ir,8)}}let dt=_U(Gr,!1).kind;return dt===211||dt===219?gn(s.createParenthesizedExpression(ur),ur):ur}function et(ur){return!eg(ur)&&(Rde(ur)||_U(ur,!1).kind===211)?gn(s.createParenthesizedExpression(ur),ur):ur}function Ye(ur){switch(ur.kind){case 185:case 186:case 195:return s.createParenthesizedType(ur)}return ur}function Tt(ur){switch(ur.kind){case 195:return s.createParenthesizedType(ur)}return ur}function at(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return Ye(ur)}function Qe(ur){return s.createNodeArray(Er(ur,at))}function Ct(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return at(ur)}function mt(ur){return s.createNodeArray(Er(ur,Ct))}function yt(ur){switch(ur.kind){case 194:return s.createParenthesizedType(ur)}return Ct(ur)}function Rt(ur){switch(ur.kind){case 199:return s.createParenthesizedType(ur)}return yt(ur)}function Lt(ur){switch(ur.kind){case 196:case 199:case 187:return s.createParenthesizedType(ur)}return yt(ur)}function je(ur){return s.createNodeArray(Er(ur,Wt))}function Wt(ur){return _r(ur)?s.createParenthesizedType(ur):ur}function _r(ur){return Nie(ur)?ur.postfix:eR(ur)||F_(ur)||ik(ur)||VB(ur)?_r(ur.type):I2(ur)?_r(ur.falseType):gS(ur)||_f(ur)?_r(Ei(ur.types)):tR(ur)?!!ur.typeParameter.constraint&&_r(ur.typeParameter.constraint):!1}function Gt(ur){return _r(ur)?s.createParenthesizedType(ur):Lt(ur)}function it(ur){return Ege(ur)&&ur.typeParameters?s.createParenthesizedType(ur):ur}function kt(ur,Gr){return Gr===0?it(ur):ur}function tr(ur){if(zt(ur))return s.createNodeArray(Er(ur,kt))}}var AEe={getParenthesizeLeftSideOfBinaryForOperator:s=>Zl,getParenthesizeRightSideOfBinaryForOperator:s=>Zl,parenthesizeLeftSideOfBinary:(s,c)=>c,parenthesizeRightSideOfBinary:(s,c,g)=>g,parenthesizeExpressionOfComputedPropertyName:Zl,parenthesizeConditionOfConditionalExpression:Zl,parenthesizeBranchOfConditionalExpression:Zl,parenthesizeExpressionOfExportDefault:Zl,parenthesizeExpressionOfNew:s=>Ma(s,x_),parenthesizeLeftSideOfAccess:s=>Ma(s,x_),parenthesizeOperandOfPostfixUnary:s=>Ma(s,x_),parenthesizeOperandOfPrefixUnary:s=>Ma(s,Hre),parenthesizeExpressionsOfCommaDelimitedList:s=>Ma(s,oN),parenthesizeExpressionForDisallowedComma:Zl,parenthesizeExpressionOfExpressionStatement:Zl,parenthesizeConciseBodyOfArrowFunction:Zl,parenthesizeCheckTypeOfConditionalType:Zl,parenthesizeExtendsTypeOfConditionalType:Zl,parenthesizeConstituentTypesOfUnionType:s=>Ma(s,oN),parenthesizeConstituentTypeOfUnionType:Zl,parenthesizeConstituentTypesOfIntersectionType:s=>Ma(s,oN),parenthesizeConstituentTypeOfIntersectionType:Zl,parenthesizeOperandOfTypeOperator:Zl,parenthesizeOperandOfReadonlyTypeOperator:Zl,parenthesizeNonArrayTypeOfPostfixType:Zl,parenthesizeElementTypesOfTupleType:s=>Ma(s,oN),parenthesizeElementTypeOfTupleType:Zl,parenthesizeTypeOfOptionalType:Zl,parenthesizeTypeArguments:s=>s&&Ma(s,oN),parenthesizeLeadingTypeArgument:Zl};function n9e(s){return{convertToFunctionBlock:c,convertToFunctionExpression:g,convertToClassExpression:d,convertToArrayAssignmentElement:h,convertToObjectAssignmentElement:_,convertToAssignmentPattern:S,convertToObjectAssignmentPattern:R,convertToArrayAssignmentPattern:T,convertToAssignmentElementTarget:O};function c(V,M){if(eg(V))return V;let ee=s.createReturnStatement(V);gn(ee,V);let re=s.createBlock([ee],M);return gn(re,V),re}function g(V){var M;if(!V.body)return pe.fail("Cannot convert a FunctionDeclaration without a body");let ee=s.createFunctionExpression((M=iN(V))==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.asteriskToken,V.name,V.typeParameters,V.parameters,V.type,V.body);return ua(ee,V),gn(ee,V),V3(V)&&Yd(ee,!0),ee}function d(V){var M;let ee=s.createClassExpression((M=V.modifiers)==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.name,V.typeParameters,V.heritageClauses,V.members);return ua(ee,V),gn(ee,V),V3(V)&&Yd(ee,!0),ee}function h(V){if(mg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadElement(V.name),V),V);let M=O(V.name);return V.initializer?ua(gn(s.createAssignment(M,V.initializer),V),V):M}return Ma(V,un)}function _(V){if(mg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadAssignment(V.name),V),V);if(V.propertyName){let M=O(V.name);return ua(gn(s.createPropertyAssignment(V.propertyName,V.initializer?s.createAssignment(M,V.initializer):M),V),V)}return pe.assertNode(V.name,Ir),ua(gn(s.createShorthandPropertyAssignment(V.name,V.initializer),V),V)}return Ma(V,Bw)}function S(V){switch(V.kind){case 208:case 210:return T(V);case 207:case 211:return R(V)}}function R(V){return $m(V)?ua(gn(s.createObjectLiteralExpression(lt(V.elements,_)),V),V):Ma(V,ag)}function T(V){return h2(V)?ua(gn(s.createArrayLiteralExpression(lt(V.elements,h)),V),V):Ma(V,YI)}function O(V){return Nu(V)?S(V):Ma(V,un)}}var dEe={convertToFunctionBlock:rl,convertToFunctionExpression:rl,convertToClassExpression:rl,convertToArrayAssignmentElement:rl,convertToObjectAssignmentElement:rl,convertToAssignmentPattern:rl,convertToObjectAssignmentPattern:rl,convertToArrayAssignmentPattern:rl,convertToAssignmentElementTarget:rl},pEe=0,fEe=(s=>(s[s.None=0]="None",s[s.NoParenthesizerRules=1]="NoParenthesizerRules",s[s.NoNodeConverters=2]="NoNodeConverters",s[s.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",s[s.NoOriginalNode=8]="NoOriginalNode",s))(fEe||{}),_$e=[];function y$e(s){_$e.push(s)}function hie(s,c){let g=s&8?Zl:ua,d=LA(()=>s&1?AEe:mv(Ee)),h=LA(()=>s&2?dEe:n9e(Ee)),_=VA(q=>(Ce,Oe)=>$s(Ce,q,Oe)),S=VA(q=>Ce=>en(q,Ce)),R=VA(q=>Ce=>_i(Ce,q)),T=VA(q=>()=>mu(q)),O=VA(q=>Ce=>cK(q,Ce)),V=VA(q=>(Ce,Oe)=>Fo(q,Ce,Oe)),M=VA(q=>(Ce,Oe)=>TE(q,Ce,Oe)),ee=VA(q=>(Ce,Oe)=>aO(q,Ce,Oe)),re=VA(q=>(Ce,Oe)=>T5(q,Ce,Oe)),ge=VA(q=>(Ce,Oe,bt)=>cZ(q,Ce,Oe,bt)),Ie=VA(q=>(Ce,Oe,bt)=>xse(q,Ce,Oe,bt)),_e=VA(q=>(Ce,Oe,bt,Nr)=>R5(q,Ce,Oe,bt,Nr)),Ee={get parenthesizer(){return d()},get converters(){return h()},baseFactory:c,flags:s,createNodeArray:Ne,createNumericLiteral:Ke,createBigIntLiteral:et,createStringLiteral:Tt,createStringLiteralFromNode:at,createRegularExpressionLiteral:Qe,createLiteralLikeNode:Ct,createIdentifier:Rt,createTempVariable:Lt,createLoopVariable:je,createUniqueName:Wt,getGeneratedNameForNode:_r,createPrivateIdentifier:it,createUniquePrivateName:tr,getGeneratedPrivateNameForNode:ur,createToken:dt,createSuper:pr,createThis:ot,createNull:ir,createTrue:qt,createFalse:Yt,createModifier:Tr,createModifiersFromModifierFlags:Cn,createQualifiedName:jn,updateQualifiedName:Zi,createComputedPropertyName:Ns,updateComputedPropertyName:An,createTypeParameterDeclaration:si,updateTypeParameterDeclaration:ks,createParameterDeclaration:Ic,updateParameterDeclaration:ou,createDecorator:Zn,updateDecorator:ya,createPropertySignature:Fl,updatePropertySignature:ba,createPropertyDeclaration:hc,updatePropertyDeclaration:yr,createMethodSignature:hn,updateMethodSignature:Pi,createMethodDeclaration:co,updateMethodDeclaration:pa,createConstructorDeclaration:Cs,updateConstructorDeclaration:Tu,createGetAccessorDeclaration:Wn,updateGetAccessorDeclaration:pt,createSetAccessorDeclaration:st,updateSetAccessorDeclaration:nr,createCallSignature:Kr,updateCallSignature:Dn,createConstructSignature:hr,updateConstructSignature:Sn,createIndexSignature:Ni,updateIndexSignature:Gi,createClassStaticBlockDeclaration:$c,updateClassStaticBlockDeclaration:Qu,createTemplateLiteralTypeSpan:nn,updateTemplateLiteralTypeSpan:En,createKeywordTypeNode:ds,createTypePredicateNode:Ht,updateTypePredicateNode:cn,createTypeReferenceNode:wt,updateTypeReferenceNode:xe,createFunctionTypeNode:fr,updateFunctionTypeNode:Ue,createConstructorTypeNode:Hn,updateConstructorTypeNode:ri,createTypeQueryNode:Ys,updateTypeQueryNode:tn,createTypeLiteralNode:wn,updateTypeLiteralNode:Mn,createArrayTypeNode:ci,updateArrayTypeNode:es,createTupleTypeNode:Oi,updateTupleTypeNode:Vn,createNamedTupleMember:Ui,updateNamedTupleMember:gs,createOptionalTypeNode:fs,updateOptionalTypeNode:bi,createRestTypeNode:mc,updateRestTypeNode:Ag,createUnionTypeNode:RI,updateUnionTypeNode:pI,createIntersectionTypeNode:Ip,updateIntersectionTypeNode:kl,createConditionalTypeNode:bu,updateConditionalTypeNode:sm,createInferTypeNode:qp,updateInferTypeNode:Jg,createImportTypeNode:Au,updateImportTypeNode:Eg,createParenthesizedType:zA,updateParenthesizedType:NA,createThisTypeNode:oi,createTypeOperatorNode:tp,updateTypeOperatorNode:JI,createIndexedAccessTypeNode:Wh,updateIndexedAccessTypeNode:MC,createMappedTypeNode:bf,updateMappedTypeNode:UI,createLiteralTypeNode:ve,updateLiteralTypeNode:mr,createTemplateLiteralType:ch,updateTemplateLiteralType:hS,createObjectBindingPattern:ln,updateObjectBindingPattern:ni,createArrayBindingPattern:Ls,updateArrayBindingPattern:Za,createBindingElement:Go,updateBindingElement:Ss,createArrayLiteralExpression:Uc,updateArrayLiteralExpression:el,createObjectLiteralExpression:Fd,updateObjectLiteralExpression:Vg,createPropertyAccessExpression:s&4?(q,Ce)=>ti(om(q,Ce),262144):om,updatePropertyAccessExpression:Sh,createPropertyAccessChain:s&4?(q,Ce,Oe)=>ti(Zp(q,Ce,Oe),262144):Zp,updatePropertyAccessChain:lh,createElementAccessExpression:V_,updateElementAccessExpression:y2,createElementAccessChain:Ob,updateElementAccessChain:or,createCallExpression:Js,updateCallExpression:Yl,createCallChain:DA,updateCallChain:kA,createNewExpression:gA,updateNewExpression:ym,createTaggedTemplateExpression:lf,updateTaggedTemplateExpression:fI,createTypeAssertion:KI,updateTypeAssertion:b2,createParenthesizedExpression:f_,updateParenthesizedExpression:HC,createFunctionExpression:B1,updateFunctionExpression:dy,createArrowFunction:vv,updateArrowFunction:lk,createDeleteExpression:Qx,updateDeleteExpression:Xx,createTypeOfExpression:Pb,updateTypeOfExpression:rC,createVoidExpression:gR,updateVoidExpression:mS,createAwaitExpression:VN,updateAwaitExpression:ct,createPrefixUnaryExpression:en,updatePrefixUnaryExpression:gi,createPostfixUnaryExpression:_i,updatePostfixUnaryExpression:ys,createBinaryExpression:$s,updateBinaryExpression:pc,createConditionalExpression:cl,updateConditionalExpression:Fe,createTemplateExpression:gr,updateTemplateExpression:Ln,createTemplateHead:xf,createTemplateMiddle:Ug,createTemplateTail:YC,createNoSubstitutionTemplateLiteral:w1,createTemplateLiteralLikeNode:Su,createYieldExpression:CS,updateYieldExpression:Bv,createSpreadElement:qF,updateSpreadElement:A9,createClassExpression:Yy,updateClassExpression:uk,createOmittedExpression:AR,createExpressionWithTypeArguments:QB,updateExpressionWithTypeArguments:rO,createAsExpression:br,updateAsExpression:sn,createNonNullExpression:ei,updateNonNullExpression:is,createSatisfiesExpression:Qs,updateSatisfiesExpression:Po,createNonNullChain:Ps,updateNonNullChain:ao,createMetaProperty:Yc,updateMetaProperty:ru,createTemplateSpan:$a,updateTemplateSpan:nu,createSemicolonClassElement:ll,createBlock:Gf,updateBlock:Mb,createVariableStatement:XB,updateVariableStatement:I_,createEmptyStatement:JB,createExpressionStatement:T1,updateExpressionStatement:A5,createIfStatement:WN,updateIfStatement:gk,createDoStatement:d5,updateDoStatement:Ak,createWhileStatement:vse,updateWhileStatement:Gpe,createForStatement:Bse,updateForStatement:Jx,createForInStatement:p5,updateForInStatement:$U,createForOfStatement:d9,updateForOfStatement:eK,createContinueStatement:Aq,updateContinueStatement:Fpe,createBreakStatement:tK,updateBreakStatement:dq,createReturnStatement:f5,updateReturnStatement:wse,createWithStatement:rK,updateWithStatement:pq,createSwitchStatement:GQ,updateSwitchStatement:nO,createLabeledStatement:fq,updateLabeledStatement:Iq,createThrowStatement:FQ,updateThrowStatement:iO,createTryStatement:p9,updateTryStatement:$F,createDebuggerStatement:eZ,createVariableDeclaration:tZ,updateVariableDeclaration:sO,createVariableDeclarationList:I5,updateVariableDeclarationList:nK,createFunctionDeclaration:h5,updateFunctionDeclaration:PA,createClassDeclaration:Tse,updateClassDeclaration:rZ,createInterfaceDeclaration:nZ,updateInterfaceDeclaration:dk,createTypeAliasDeclaration:Sf,updateTypeAliasDeclaration:g0,createEnumDeclaration:Hb,updateEnumDeclaration:A0,createModuleDeclaration:m5,updateModuleDeclaration:py,createModuleBlock:pk,updateModuleBlock:Qy,createCaseBlock:UB,updateCaseBlock:Jw,createNamespaceExportDeclaration:C5,updateNamespaceExportDeclaration:_5,createImportEqualsDeclaration:Rse,updateImportEqualsDeclaration:f9,createImportDeclaration:ZQ,updateImportDeclaration:Br,createImportClause:sK,updateImportClause:Ux,createAssertClause:Uw,updateAssertClause:I9,createAssertEntry:oO,updateAssertEntry:fy,createImportTypeAssertionContainer:dR,updateImportTypeAssertionContainer:KB,createImportAttributes:y5,updateImportAttributes:AA,createImportAttribute:_S,updateImportAttribute:h9,createNamespaceImport:oK,updateNamespaceImport:iZ,createNamespaceExport:LQ,updateNamespaceExport:wv,createNamedImports:Kx,updateNamedImports:b5,createImportSpecifier:m9,updateImportSpecifier:ON,createExportAssignment:VQ,updateExportAssignment:E5,createExportDeclaration:fa,updateExportDeclaration:sa,createNamedExports:aK,updateNamedExports:sZ,createExportSpecifier:WQ,updateExportSpecifier:Nse,createMissingDeclaration:Lpe,createExternalModuleReference:qo,updateExternalModuleReference:Iy,get createJSDocAllType(){return T(313)},get createJSDocUnknownType(){return T(314)},get createJSDocNonNullableType(){return M(316)},get updateJSDocNonNullableType(){return ee(316)},get createJSDocNullableType(){return M(315)},get updateJSDocNullableType(){return ee(315)},get createJSDocOptionalType(){return O(317)},get updateJSDocOptionalType(){return V(317)},get createJSDocVariadicType(){return O(319)},get updateJSDocVariadicType(){return V(319)},get createJSDocNamepathType(){return O(320)},get updateJSDocNamepathType(){return V(320)},createJSDocFunctionType:Dse,updateJSDocFunctionType:hq,createJSDocTypeLiteral:Z0,updateJSDocTypeLiteral:fk,createJSDocTypeExpression:pR,updateJSDocTypeExpression:cO,createJSDocSignature:lK,updateJSDocSignature:lO,createJSDocTemplateTag:Yb,updateJSDocTemplateTag:C9,createJSDocTypedefTag:S5,updateJSDocTypedefTag:mq,createJSDocParameterTag:v5,updateJSDocParameterTag:uO,createJSDocPropertyTag:Cq,updateJSDocPropertyTag:oZ,createJSDocCallbackTag:PN,updateJSDocCallbackTag:gO,createJSDocOverloadTag:B5,updateJSDocOverloadTag:_9,createJSDocAugmentsTag:AO,updateJSDocAugmentsTag:jw,createJSDocImplementsTag:aZ,updateJSDocImplementsTag:bq,createJSDocSeeTag:jx,updateJSDocSeeTag:dO,createJSDocImportTag:Qb,updateJSDocImportTag:Rv,createJSDocNameReference:QC,updateJSDocNameReference:OQ,createJSDocMemberName:zx,updateJSDocMemberName:w5,createJSDocLink:uK,updateJSDocLink:qx,createJSDocLinkCode:kse,updateJSDocLinkCode:_q,createJSDocLinkPlain:yq,updateJSDocLinkPlain:Vpe,get createJSDocTypeTag(){return Ie(345)},get updateJSDocTypeTag(){return _e(345)},get createJSDocReturnTag(){return Ie(343)},get updateJSDocReturnTag(){return _e(343)},get createJSDocThisTag(){return Ie(344)},get updateJSDocThisTag(){return _e(344)},get createJSDocAuthorTag(){return re(331)},get updateJSDocAuthorTag(){return ge(331)},get createJSDocClassTag(){return re(333)},get updateJSDocClassTag(){return ge(333)},get createJSDocPublicTag(){return re(334)},get updateJSDocPublicTag(){return ge(334)},get createJSDocPrivateTag(){return re(335)},get updateJSDocPrivateTag(){return ge(335)},get createJSDocProtectedTag(){return re(336)},get updateJSDocProtectedTag(){return ge(336)},get createJSDocReadonlyTag(){return re(337)},get updateJSDocReadonlyTag(){return ge(337)},get createJSDocOverrideTag(){return re(338)},get updateJSDocOverrideTag(){return ge(338)},get createJSDocDeprecatedTag(){return re(332)},get updateJSDocDeprecatedTag(){return ge(332)},get createJSDocThrowsTag(){return Ie(350)},get updateJSDocThrowsTag(){return _e(350)},get createJSDocSatisfiesTag(){return Ie(351)},get updateJSDocSatisfiesTag(){return _e(351)},createJSDocEnumTag:XC,updateJSDocEnumTag:Eq,createJSDocUnknownTag:gK,updateJSDocUnknownTag:Oh,createJSDocText:PQ,updateJSDocText:fR,createJSDocComment:pO,updateJSDocComment:y9,createJsxElement:Sq,updateJsxElement:Wpe,createJsxSelfClosingElement:NI,updateJsxSelfClosingElement:Gse,createJsxOpeningElement:AK,updateJsxOpeningElement:MQ,createJsxClosingElement:vq,updateJsxClosingElement:L0,createJsxFragment:RE,createJsxText:N5,updateJsxText:NE,createJsxOpeningFragment:pK,createJsxJsxClosingFragment:$x,updateJsxFragment:dK,createJsxAttribute:Bq,updateJsxAttribute:fK,createJsxAttributes:zw,updateJsxAttributes:wq,createJsxSpreadAttribute:Fse,updateJsxSpreadAttribute:Tq,createJsxExpression:IK,updateJsxExpression:Rq,createJsxNamespacedName:b9,updateJsxNamespacedName:R1,createCaseClause:MN,updateCaseClause:hK,createDefaultClause:mK,updateDefaultClause:qA,createHeritageClause:Uo,updateHeritageClause:bS,createCatchClause:nC,updateCatchClause:D5,createPropertyAssignment:CK,updatePropertyAssignment:HQ,createShorthandPropertyAssignment:_K,updateShorthandPropertyAssignment:Ae,createSpreadAssignment:fn,updateSpreadAssignment:qi,createEnumMember:ic,updateEnumMember:Pc,createSourceFile:ql,updateSourceFile:x5,createRedirectedSourceFile:Vc,createBundle:Jy,updateBundle:fO,createSyntheticExpression:Nq,createSyntaxList:jB,createNotEmittedStatement:Qf,createNotEmittedTypeElement:qw,createPartiallyEmittedExpression:yK,updatePartiallyEmittedExpression:E9,createCommaListExpression:YQ,updateCommaListExpression:kOe,createSyntheticReferenceExpression:Ope,updateSyntheticReferenceExpression:Dq,cloneNode:bK,get createComma(){return _(28)},get createAssignment(){return _(64)},get createLogicalOr(){return _(57)},get createLogicalAnd(){return _(56)},get createBitwiseOr(){return _(52)},get createBitwiseXor(){return _(53)},get createBitwiseAnd(){return _(51)},get createStrictEquality(){return _(37)},get createStrictInequality(){return _(38)},get createEquality(){return _(35)},get createInequality(){return _(36)},get createLessThan(){return _(30)},get createLessThanEquals(){return _(33)},get createGreaterThan(){return _(32)},get createGreaterThanEquals(){return _(34)},get createLeftShift(){return _(48)},get createRightShift(){return _(49)},get createUnsignedRightShift(){return _(50)},get createAdd(){return _(40)},get createSubtract(){return _(41)},get createMultiply(){return _(42)},get createDivide(){return _(44)},get createModulo(){return _(45)},get createExponent(){return _(43)},get createPrefixPlus(){return S(40)},get createPrefixMinus(){return S(41)},get createPrefixIncrement(){return S(46)},get createPrefixDecrement(){return S(47)},get createBitwiseNot(){return S(55)},get createLogicalNot(){return S(54)},get createPostfixIncrement(){return R(46)},get createPostfixDecrement(){return R(47)},createImmediatelyInvokedFunctionExpression:xOe,createImmediatelyInvokedArrowFunction:QQ,createVoidZero:EK,createExportDefault:Mpe,createExternalModuleExport:xq,createTypeCheck:xl,createIsNotTypeCheck:hO,createMethodCall:ro,createGlobalMethodCall:XQ,createFunctionBindCall:Hpe,createFunctionCallCall:Zse,createFunctionApplyCall:Lse,createArraySliceCall:D2e,createArrayConcatCall:SK,createObjectDefinePropertyCall:GOe,createObjectGetOwnPropertyDescriptorCall:Vse,createReflectGetCall:Ik,createReflectSetCall:k2e,createPropertyDescriptor:FOe,createCallBinding:Wse,createAssignmentTargetWrapper:HN,inlineExpressions:nt,getInternalName:xr,getLocalName:Tn,getExportName:Ai,getDeclarationName:Wi,getNamespaceMemberName:Ba,getExternalModuleOrNamespaceExportName:Xo,restoreOuterExpressions:Qpe,restoreEnclosingLabel:F5,createUseStrictPrologue:Tl,copyPrologue:lo,copyStandardPrologue:Sp,copyCustomPrologue:rp,ensureUseStrict:$A,liftToBlock:Nv,mergeLexicalEnvironment:v9,replaceModifiers:B9,replaceDecoratorsAndModifiers:eG,replacePropertyName:mO};return F(_$e,q=>q(Ee)),Ee;function Ne(q,Ce){if(q===void 0||q===E)q=[];else if(oN(q)){if(Ce===void 0||q.hasTrailingComma===Ce)return q.transformFlags===void 0&&TU(q),pe.attachNodeArrayDebugInfo(q),q;let Nr=q.slice();return Nr.pos=q.pos,Nr.end=q.end,Nr.hasTrailingComma=Ce,Nr.transformFlags=q.transformFlags,pe.attachNodeArrayDebugInfo(Nr),Nr}let Oe=q.length,bt=Oe>=1&&Oe<=4?q.slice():q;return bt.pos=-1,bt.end=-1,bt.hasTrailingComma=!!Ce,bt.transformFlags=0,TU(bt),pe.attachNodeArrayDebugInfo(bt),bt}function Te(q){return c.createBaseNode(q)}function Ze(q){let Ce=Te(q);return Ce.symbol=void 0,Ce.localSymbol=void 0,Ce}function Pe(q,Ce){return q!==Ce&&(q.typeArguments=Ce.typeArguments),vo(q,Ce)}function Ke(q,Ce=0){let Oe=typeof q=="number"?q+"":q;pe.assert(Oe.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let bt=Ze(9);return bt.text=Oe,bt.numericLiteralFlags=Ce,Ce&384&&(bt.transformFlags|=1024),bt}function et(q){let Ce=Gr(10);return Ce.text=typeof q=="string"?q:OW(q)+"n",Ce.transformFlags|=32,Ce}function Ye(q,Ce){let Oe=Ze(11);return Oe.text=q,Oe.singleQuote=Ce,Oe}function Tt(q,Ce,Oe){let bt=Ye(q,Ce);return bt.hasExtendedUnicodeEscape=Oe,Oe&&(bt.transformFlags|=1024),bt}function at(q){let Ce=Ye(g2(q),void 0);return Ce.textSourceNode=q,Ce}function Qe(q){let Ce=Gr(14);return Ce.text=q,Ce}function Ct(q,Ce){switch(q){case 9:return Ke(Ce,0);case 10:return et(Ce);case 11:return Tt(Ce,void 0);case 12:return N5(Ce,!1);case 13:return N5(Ce,!0);case 14:return Qe(Ce);case 15:return Su(q,Ce,void 0,0)}}function mt(q){let Ce=c.createBaseIdentifierNode(80);return Ce.escapedText=q,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce.symbol=void 0,Ce}function yt(q,Ce,Oe,bt){let Nr=mt(pp(q));return _ie(Nr,{flags:Ce,id:pEe,prefix:Oe,suffix:bt}),pEe++,Nr}function Rt(q,Ce,Oe){Ce===void 0&&q&&(Ce=Ta(q)),Ce===80&&(Ce=void 0);let bt=mt(pp(q));return Oe&&(bt.flags|=256),bt.escapedText==="await"&&(bt.transformFlags|=67108864),bt.flags&256&&(bt.transformFlags|=1024),bt}function Lt(q,Ce,Oe,bt){let Nr=1;Ce&&(Nr|=8);let Ii=yt("",Nr,Oe,bt);return q&&q(Ii),Ii}function je(q){let Ce=2;return q&&(Ce|=8),yt("",Ce,void 0,void 0)}function Wt(q,Ce=0,Oe,bt){return pe.assert(!(Ce&7),"Argument out of range: flags"),pe.assert((Ce&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),yt(q,3|Ce,Oe,bt)}function _r(q,Ce=0,Oe,bt){pe.assert(!(Ce&7),"Argument out of range: flags");let Nr=q?vw(q)?K3(!1,Oe,q,bt,Vo):`generated@${id(q)}`:"";(Oe||bt)&&(Ce|=16);let Ii=yt(Nr,4|Ce,Oe,bt);return Ii.original=q,Ii}function Gt(q){let Ce=c.createBasePrivateIdentifierNode(81);return Ce.escapedText=q,Ce.transformFlags|=16777216,Ce}function it(q){return Ac(q,"#")||pe.fail("First character of private identifier must be #: "+q),Gt(pp(q))}function kt(q,Ce,Oe,bt){let Nr=Gt(pp(q));return _ie(Nr,{flags:Ce,id:pEe,prefix:Oe,suffix:bt}),pEe++,Nr}function tr(q,Ce,Oe){q&&!Ac(q,"#")&&pe.fail("First character of private identifier must be #: "+q);let bt=8|(q?3:1);return kt(q??"",bt,Ce,Oe)}function ur(q,Ce,Oe){let bt=vw(q)?K3(!0,Ce,q,Oe,Vo):`#generated@${id(q)}`,Ii=kt(bt,4|(Ce||Oe?16:0),Ce,Oe);return Ii.original=q,Ii}function Gr(q){return c.createBaseTokenNode(q)}function dt(q){pe.assert(q>=0&&q<=166,"Invalid token"),pe.assert(q<=15||q>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),pe.assert(q<=9||q>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),pe.assert(q!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let Ce=Gr(q),Oe=0;switch(q){case 134:Oe=384;break;case 160:Oe=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Oe=1;break;case 108:Oe=134218752,Ce.flowNode=void 0;break;case 126:Oe=1024;break;case 129:Oe=16777216;break;case 110:Oe=16384,Ce.flowNode=void 0;break}return Oe&&(Ce.transformFlags|=Oe),Ce}function pr(){return dt(108)}function ot(){return dt(110)}function ir(){return dt(106)}function qt(){return dt(112)}function Yt(){return dt(97)}function Tr(q){return dt(q)}function Cn(q){let Ce=[];return q&32&&Ce.push(Tr(95)),q&128&&Ce.push(Tr(138)),q&2048&&Ce.push(Tr(90)),q&4096&&Ce.push(Tr(87)),q&1&&Ce.push(Tr(125)),q&2&&Ce.push(Tr(123)),q&4&&Ce.push(Tr(124)),q&64&&Ce.push(Tr(128)),q&256&&Ce.push(Tr(126)),q&16&&Ce.push(Tr(164)),q&8&&Ce.push(Tr(148)),q&512&&Ce.push(Tr(129)),q&1024&&Ce.push(Tr(134)),q&8192&&Ce.push(Tr(103)),q&16384&&Ce.push(Tr(147)),Ce.length?Ce:void 0}function jn(q,Ce){let Oe=Te(167);return Oe.left=q,Oe.right=Wm(Ce),Oe.transformFlags|=zs(Oe.left)|mie(Oe.right),Oe.flowNode=void 0,Oe}function Zi(q,Ce,Oe){return q.left!==Ce||q.right!==Oe?vo(jn(Ce,Oe),q):q}function Ns(q){let Ce=Te(168);return Ce.expression=d().parenthesizeExpressionOfComputedPropertyName(q),Ce.transformFlags|=zs(Ce.expression)|1024|131072,Ce}function An(q,Ce){return q.expression!==Ce?vo(Ns(Ce),q):q}function si(q,Ce,Oe,bt){let Nr=Ze(169);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.constraint=Oe,Nr.default=bt,Nr.transformFlags=1,Nr.expression=void 0,Nr.jsDoc=void 0,Nr}function ks(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.constraint!==bt||q.default!==Nr?vo(si(Ce,Oe,bt,Nr),q):q}function Ic(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(170);return Jo.modifiers=sd(q),Jo.dotDotDotToken=Ce,Jo.name=Wm(Oe),Jo.questionToken=bt,Jo.type=Nr,Jo.initializer=V0(Ii),DF(Jo.name)?Jo.transformFlags=1:Jo.transformFlags=_A(Jo.modifiers)|zs(Jo.dotDotDotToken)|FB(Jo.name)|zs(Jo.questionToken)|zs(Jo.initializer)|(Jo.questionToken??Jo.type?1:0)|(Jo.dotDotDotToken??Jo.initializer?1024:0)|(Zw(Jo.modifiers)&31?8192:0),Jo.jsDoc=void 0,Jo}function ou(q,Ce,Oe,bt,Nr,Ii,Jo){return q.modifiers!==Ce||q.dotDotDotToken!==Oe||q.name!==bt||q.questionToken!==Nr||q.type!==Ii||q.initializer!==Jo?vo(Ic(Ce,Oe,bt,Nr,Ii,Jo),q):q}function Zn(q){let Ce=Te(171);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1|8192|33554432,Ce}function ya(q,Ce){return q.expression!==Ce?vo(Zn(Ce),q):q}function Fl(q,Ce,Oe,bt){let Nr=Ze(172);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.type=bt,Nr.questionToken=Oe,Nr.transformFlags=1,Nr.initializer=void 0,Nr.jsDoc=void 0,Nr}function ba(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.questionToken!==bt||q.type!==Nr?Oo(Fl(Ce,Oe,bt,Nr),q):q}function Oo(q,Ce){return q!==Ce&&(q.initializer=Ce.initializer),vo(q,Ce)}function hc(q,Ce,Oe,bt,Nr){let Ii=Ze(173);Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.questionToken=Oe&&$T(Oe)?Oe:void 0,Ii.exclamationToken=Oe&&xz(Oe)?Oe:void 0,Ii.type=bt,Ii.initializer=V0(Nr);let Jo=Ii.flags&33554432||Zw(Ii.modifiers)&128;return Ii.transformFlags=_A(Ii.modifiers)|FB(Ii.name)|zs(Ii.initializer)|(Jo||Ii.questionToken||Ii.exclamationToken||Ii.type?1:0)|(Un(Ii.name)||Zw(Ii.modifiers)&256&&Ii.initializer?8192:0)|16777216,Ii.jsDoc=void 0,Ii}function yr(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.questionToken!==(bt!==void 0&&$T(bt)?bt:void 0)||q.exclamationToken!==(bt!==void 0&&xz(bt)?bt:void 0)||q.type!==Nr||q.initializer!==Ii?vo(hc(Ce,Oe,bt,Nr,Ii),q):q}function hn(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(174);return Jo.modifiers=sd(q),Jo.name=Wm(Ce),Jo.questionToken=Oe,Jo.typeParameters=sd(bt),Jo.parameters=sd(Nr),Jo.type=Ii,Jo.transformFlags=1,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.typeArguments=void 0,Jo}function Pi(q,Ce,Oe,bt,Nr,Ii,Jo){return q.modifiers!==Ce||q.name!==Oe||q.questionToken!==bt||q.typeParameters!==Nr||q.parameters!==Ii||q.type!==Jo?Pe(hn(Ce,Oe,bt,Nr,Ii,Jo),q):q}function co(q,Ce,Oe,bt,Nr,Ii,Jo,du){let uf=Ze(175);if(uf.modifiers=sd(q),uf.asteriskToken=Ce,uf.name=Wm(Oe),uf.questionToken=bt,uf.exclamationToken=void 0,uf.typeParameters=sd(Nr),uf.parameters=Ne(Ii),uf.type=Jo,uf.body=du,!uf.body)uf.transformFlags=1;else{let E2=Zw(uf.modifiers)&1024,CO=!!uf.asteriskToken,IR=E2&&CO;uf.transformFlags=_A(uf.modifiers)|zs(uf.asteriskToken)|FB(uf.name)|zs(uf.questionToken)|_A(uf.typeParameters)|_A(uf.parameters)|zs(uf.type)|zs(uf.body)&-67108865|(IR?128:E2?256:CO?2048:0)|(uf.questionToken||uf.typeParameters||uf.type?1:0)|1024}return uf.typeArguments=void 0,uf.jsDoc=void 0,uf.locals=void 0,uf.nextContainer=void 0,uf.flowNode=void 0,uf.endFlowNode=void 0,uf.returnFlowNode=void 0,uf}function pa(q,Ce,Oe,bt,Nr,Ii,Jo,du,uf){return q.modifiers!==Ce||q.asteriskToken!==Oe||q.name!==bt||q.questionToken!==Nr||q.typeParameters!==Ii||q.parameters!==Jo||q.type!==du||q.body!==uf?Pa(co(Ce,Oe,bt,Nr,Ii,Jo,du,uf),q):q}function Pa(q,Ce){return q!==Ce&&(q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function $c(q){let Ce=Ze(176);return Ce.body=q,Ce.transformFlags=zs(q)|16777216,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce.locals=void 0,Ce.nextContainer=void 0,Ce.endFlowNode=void 0,Ce.returnFlowNode=void 0,Ce}function Qu(q,Ce){return q.body!==Ce?Rg($c(Ce),q):q}function Rg(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function Cs(q,Ce,Oe){let bt=Ze(177);return bt.modifiers=sd(q),bt.parameters=Ne(Ce),bt.body=Oe,bt.body?bt.transformFlags=_A(bt.modifiers)|_A(bt.parameters)|zs(bt.body)&-67108865|1024:bt.transformFlags=1,bt.typeParameters=void 0,bt.type=void 0,bt.typeArguments=void 0,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.endFlowNode=void 0,bt.returnFlowNode=void 0,bt}function Tu(q,Ce,Oe,bt){return q.modifiers!==Ce||q.parameters!==Oe||q.body!==bt?Wr(Cs(Ce,Oe,bt),q):q}function Wr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),Pe(q,Ce)}function Wn(q,Ce,Oe,bt,Nr){let Ii=Ze(178);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.parameters=Ne(Oe),Ii.type=bt,Ii.body=Nr,Ii.body?Ii.transformFlags=_A(Ii.modifiers)|FB(Ii.name)|_A(Ii.parameters)|zs(Ii.type)|zs(Ii.body)&-67108865|(Ii.type?1:0):Ii.transformFlags=1,Ii.typeArguments=void 0,Ii.typeParameters=void 0,Ii.jsDoc=void 0,Ii.locals=void 0,Ii.nextContainer=void 0,Ii.flowNode=void 0,Ii.endFlowNode=void 0,Ii.returnFlowNode=void 0,Ii}function pt(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.parameters!==bt||q.type!==Nr||q.body!==Ii?on(Wn(Ce,Oe,bt,Nr,Ii),q):q}function on(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters),Pe(q,Ce)}function st(q,Ce,Oe,bt){let Nr=Ze(179);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.parameters=Ne(Oe),Nr.body=bt,Nr.body?Nr.transformFlags=_A(Nr.modifiers)|FB(Nr.name)|_A(Nr.parameters)|zs(Nr.body)&-67108865|(Nr.type?1:0):Nr.transformFlags=1,Nr.typeArguments=void 0,Nr.typeParameters=void 0,Nr.type=void 0,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.flowNode=void 0,Nr.endFlowNode=void 0,Nr.returnFlowNode=void 0,Nr}function nr(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.parameters!==bt||q.body!==Nr?Zr(st(Ce,Oe,bt,Nr),q):q}function Zr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),Pe(q,Ce)}function Kr(q,Ce,Oe){let bt=Ze(180);return bt.typeParameters=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function Dn(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?Pe(Kr(Ce,Oe,bt),q):q}function hr(q,Ce,Oe){let bt=Ze(181);return bt.typeParameters=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function Sn(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?Pe(hr(Ce,Oe,bt),q):q}function Ni(q,Ce,Oe){let bt=Ze(182);return bt.modifiers=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function Gi(q,Ce,Oe,bt){return q.parameters!==Oe||q.type!==bt||q.modifiers!==Ce?Pe(Ni(Ce,Oe,bt),q):q}function nn(q,Ce){let Oe=Te(205);return Oe.type=q,Oe.literal=Ce,Oe.transformFlags=1,Oe}function En(q,Ce,Oe){return q.type!==Ce||q.literal!==Oe?vo(nn(Ce,Oe),q):q}function ds(q){return dt(q)}function Ht(q,Ce,Oe){let bt=Te(183);return bt.assertsModifier=q,bt.parameterName=Wm(Ce),bt.type=Oe,bt.transformFlags=1,bt}function cn(q,Ce,Oe,bt){return q.assertsModifier!==Ce||q.parameterName!==Oe||q.type!==bt?vo(Ht(Ce,Oe,bt),q):q}function wt(q,Ce){let Oe=Te(184);return Oe.typeName=Wm(q),Oe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ne(Ce)),Oe.transformFlags=1,Oe}function xe(q,Ce,Oe){return q.typeName!==Ce||q.typeArguments!==Oe?vo(wt(Ce,Oe),q):q}function fr(q,Ce,Oe){let bt=Ze(185);return bt.typeParameters=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.modifiers=void 0,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function Ue(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?In(fr(Ce,Oe,bt),q):q}function In(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),Pe(q,Ce)}function Hn(...q){return q.length===4?Mt(...q):q.length===3?$r(...q):pe.fail("Incorrect number of arguments specified.")}function Mt(q,Ce,Oe,bt){let Nr=Ze(186);return Nr.modifiers=sd(q),Nr.typeParameters=sd(Ce),Nr.parameters=sd(Oe),Nr.type=bt,Nr.transformFlags=1,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.typeArguments=void 0,Nr}function $r(q,Ce,Oe){return Mt(void 0,q,Ce,Oe)}function ri(...q){return q.length===5?oo(...q):q.length===4?Bs(...q):pe.fail("Incorrect number of arguments specified.")}function oo(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.typeParameters!==Oe||q.parameters!==bt||q.type!==Nr?Pe(Hn(Ce,Oe,bt,Nr),q):q}function Bs(q,Ce,Oe,bt){return oo(q,q.modifiers,Ce,Oe,bt)}function Ys(q,Ce){let Oe=Te(187);return Oe.exprName=q,Oe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Oe.transformFlags=1,Oe}function tn(q,Ce,Oe){return q.exprName!==Ce||q.typeArguments!==Oe?vo(Ys(Ce,Oe),q):q}function wn(q){let Ce=Ze(188);return Ce.members=Ne(q),Ce.transformFlags=1,Ce}function Mn(q,Ce){return q.members!==Ce?vo(wn(Ce),q):q}function ci(q){let Ce=Te(189);return Ce.elementType=d().parenthesizeNonArrayTypeOfPostfixType(q),Ce.transformFlags=1,Ce}function es(q,Ce){return q.elementType!==Ce?vo(ci(Ce),q):q}function Oi(q){let Ce=Te(190);return Ce.elements=Ne(d().parenthesizeElementTypesOfTupleType(q)),Ce.transformFlags=1,Ce}function Vn(q,Ce){return q.elements!==Ce?vo(Oi(Ce),q):q}function Ui(q,Ce,Oe,bt){let Nr=Ze(203);return Nr.dotDotDotToken=q,Nr.name=Ce,Nr.questionToken=Oe,Nr.type=bt,Nr.transformFlags=1,Nr.jsDoc=void 0,Nr}function gs(q,Ce,Oe,bt,Nr){return q.dotDotDotToken!==Ce||q.name!==Oe||q.questionToken!==bt||q.type!==Nr?vo(Ui(Ce,Oe,bt,Nr),q):q}function fs(q){let Ce=Te(191);return Ce.type=d().parenthesizeTypeOfOptionalType(q),Ce.transformFlags=1,Ce}function bi(q,Ce){return q.type!==Ce?vo(fs(Ce),q):q}function mc(q){let Ce=Te(192);return Ce.type=q,Ce.transformFlags=1,Ce}function Ag(q,Ce){return q.type!==Ce?vo(mc(Ce),q):q}function dg(q,Ce,Oe){let bt=Te(q);return bt.types=Ee.createNodeArray(Oe(Ce)),bt.transformFlags=1,bt}function yu(q,Ce,Oe){return q.types!==Ce?vo(dg(q.kind,Ce,Oe),q):q}function RI(q){return dg(193,q,d().parenthesizeConstituentTypesOfUnionType)}function pI(q,Ce){return yu(q,Ce,d().parenthesizeConstituentTypesOfUnionType)}function Ip(q){return dg(194,q,d().parenthesizeConstituentTypesOfIntersectionType)}function kl(q,Ce){return yu(q,Ce,d().parenthesizeConstituentTypesOfIntersectionType)}function bu(q,Ce,Oe,bt){let Nr=Te(195);return Nr.checkType=d().parenthesizeCheckTypeOfConditionalType(q),Nr.extendsType=d().parenthesizeExtendsTypeOfConditionalType(Ce),Nr.trueType=Oe,Nr.falseType=bt,Nr.transformFlags=1,Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function sm(q,Ce,Oe,bt,Nr){return q.checkType!==Ce||q.extendsType!==Oe||q.trueType!==bt||q.falseType!==Nr?vo(bu(Ce,Oe,bt,Nr),q):q}function qp(q){let Ce=Te(196);return Ce.typeParameter=q,Ce.transformFlags=1,Ce}function Jg(q,Ce){return q.typeParameter!==Ce?vo(qp(Ce),q):q}function ch(q,Ce){let Oe=Te(204);return Oe.head=q,Oe.templateSpans=Ne(Ce),Oe.transformFlags=1,Oe}function hS(q,Ce,Oe){return q.head!==Ce||q.templateSpans!==Oe?vo(ch(Ce,Oe),q):q}function Au(q,Ce,Oe,bt,Nr=!1){let Ii=Te(206);return Ii.argument=q,Ii.attributes=Ce,Ii.assertions&&Ii.assertions.assertClause&&Ii.attributes&&(Ii.assertions.assertClause=Ii.attributes),Ii.qualifier=Oe,Ii.typeArguments=bt&&d().parenthesizeTypeArguments(bt),Ii.isTypeOf=Nr,Ii.transformFlags=1,Ii}function Eg(q,Ce,Oe,bt,Nr,Ii=q.isTypeOf){return q.argument!==Ce||q.attributes!==Oe||q.qualifier!==bt||q.typeArguments!==Nr||q.isTypeOf!==Ii?vo(Au(Ce,Oe,bt,Nr,Ii),q):q}function zA(q){let Ce=Te(197);return Ce.type=q,Ce.transformFlags=1,Ce}function NA(q,Ce){return q.type!==Ce?vo(zA(Ce),q):q}function oi(){let q=Te(198);return q.transformFlags=1,q}function tp(q,Ce){let Oe=Te(199);return Oe.operator=q,Oe.type=q===148?d().parenthesizeOperandOfReadonlyTypeOperator(Ce):d().parenthesizeOperandOfTypeOperator(Ce),Oe.transformFlags=1,Oe}function JI(q,Ce){return q.type!==Ce?vo(tp(q.operator,Ce),q):q}function Wh(q,Ce){let Oe=Te(200);return Oe.objectType=d().parenthesizeNonArrayTypeOfPostfixType(q),Oe.indexType=Ce,Oe.transformFlags=1,Oe}function MC(q,Ce,Oe){return q.objectType!==Ce||q.indexType!==Oe?vo(Wh(Ce,Oe),q):q}function bf(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(201);return Jo.readonlyToken=q,Jo.typeParameter=Ce,Jo.nameType=Oe,Jo.questionToken=bt,Jo.type=Nr,Jo.members=Ii&&Ne(Ii),Jo.transformFlags=1,Jo.locals=void 0,Jo.nextContainer=void 0,Jo}function UI(q,Ce,Oe,bt,Nr,Ii,Jo){return q.readonlyToken!==Ce||q.typeParameter!==Oe||q.nameType!==bt||q.questionToken!==Nr||q.type!==Ii||q.members!==Jo?vo(bf(Ce,Oe,bt,Nr,Ii,Jo),q):q}function ve(q){let Ce=Te(202);return Ce.literal=q,Ce.transformFlags=1,Ce}function mr(q,Ce){return q.literal!==Ce?vo(ve(Ce),q):q}function ln(q){let Ce=Te(207);return Ce.elements=Ne(q),Ce.transformFlags|=_A(Ce.elements)|1024|524288,Ce.transformFlags&32768&&(Ce.transformFlags|=65664),Ce}function ni(q,Ce){return q.elements!==Ce?vo(ln(Ce),q):q}function Ls(q){let Ce=Te(208);return Ce.elements=Ne(q),Ce.transformFlags|=_A(Ce.elements)|1024|524288,Ce}function Za(q,Ce){return q.elements!==Ce?vo(Ls(Ce),q):q}function Go(q,Ce,Oe,bt){let Nr=Ze(209);return Nr.dotDotDotToken=q,Nr.propertyName=Wm(Ce),Nr.name=Wm(Oe),Nr.initializer=V0(bt),Nr.transformFlags|=zs(Nr.dotDotDotToken)|FB(Nr.propertyName)|FB(Nr.name)|zs(Nr.initializer)|(Nr.dotDotDotToken?32768:0)|1024,Nr.flowNode=void 0,Nr}function Ss(q,Ce,Oe,bt,Nr){return q.propertyName!==Oe||q.dotDotDotToken!==Ce||q.name!==bt||q.initializer!==Nr?vo(Go(Ce,Oe,bt,Nr),q):q}function Uc(q,Ce){let Oe=Te(210),bt=q&&li(q),Nr=Ne(q,bt&&Ep(bt)?!0:void 0);return Oe.elements=d().parenthesizeExpressionsOfCommaDelimitedList(Nr),Oe.multiLine=Ce,Oe.transformFlags|=_A(Oe.elements),Oe}function el(q,Ce){return q.elements!==Ce?vo(Uc(Ce,q.multiLine),q):q}function Fd(q,Ce){let Oe=Ze(211);return Oe.properties=Ne(q),Oe.multiLine=Ce,Oe.transformFlags|=_A(Oe.properties),Oe.jsDoc=void 0,Oe}function Vg(q,Ce){return q.properties!==Ce?vo(Fd(Ce,q.multiLine),q):q}function Ef(q,Ce,Oe){let bt=Ze(212);return bt.expression=q,bt.questionDotToken=Ce,bt.name=Oe,bt.transformFlags=zs(bt.expression)|zs(bt.questionDotToken)|(Ir(bt.name)?mie(bt.name):zs(bt.name)|536870912),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function om(q,Ce){let Oe=Ef(d().parenthesizeLeftSideOfAccess(q,!1),void 0,Wm(Ce));return rr(q)&&(Oe.transformFlags|=384),Oe}function Sh(q,Ce,Oe){return Nx(q)?lh(q,Ce,q.questionDotToken,Ma(Oe,Ir)):q.expression!==Ce||q.name!==Oe?vo(om(Ce,Oe),q):q}function Zp(q,Ce,Oe){let bt=Ef(d().parenthesizeLeftSideOfAccess(q,!0),Ce,Wm(Oe));return bt.flags|=64,bt.transformFlags|=32,bt}function lh(q,Ce,Oe,bt){return pe.assert(!!(q.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),q.expression!==Ce||q.questionDotToken!==Oe||q.name!==bt?vo(Zp(Ce,Oe,bt),q):q}function v1(q,Ce,Oe){let bt=Ze(213);return bt.expression=q,bt.questionDotToken=Ce,bt.argumentExpression=Oe,bt.transformFlags|=zs(bt.expression)|zs(bt.questionDotToken)|zs(bt.argumentExpression),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function V_(q,Ce){let Oe=v1(d().parenthesizeLeftSideOfAccess(q,!1),void 0,w9(Ce));return rr(q)&&(Oe.transformFlags|=384),Oe}function y2(q,Ce,Oe){return bF(q)?or(q,Ce,q.questionDotToken,Oe):q.expression!==Ce||q.argumentExpression!==Oe?vo(V_(Ce,Oe),q):q}function Ob(q,Ce,Oe){let bt=v1(d().parenthesizeLeftSideOfAccess(q,!0),Ce,w9(Oe));return bt.flags|=64,bt.transformFlags|=32,bt}function or(q,Ce,Oe,bt){return pe.assert(!!(q.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),q.expression!==Ce||q.questionDotToken!==Oe||q.argumentExpression!==bt?vo(Ob(Ce,Oe,bt),q):q}function qn(q,Ce,Oe,bt){let Nr=Ze(214);return Nr.expression=q,Nr.questionDotToken=Ce,Nr.typeArguments=Oe,Nr.arguments=bt,Nr.transformFlags|=zs(Nr.expression)|zs(Nr.questionDotToken)|_A(Nr.typeArguments)|_A(Nr.arguments),Nr.typeArguments&&(Nr.transformFlags|=1),Fy(Nr.expression)&&(Nr.transformFlags|=16384),Nr}function Js(q,Ce,Oe){let bt=qn(d().parenthesizeLeftSideOfAccess(q,!1),void 0,sd(Ce),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(Oe)));return an(bt.expression)&&(bt.transformFlags|=8388608),bt}function Yl(q,Ce,Oe,bt){return vB(q)?kA(q,Ce,q.questionDotToken,Oe,bt):q.expression!==Ce||q.typeArguments!==Oe||q.arguments!==bt?vo(Js(Ce,Oe,bt),q):q}function DA(q,Ce,Oe,bt){let Nr=qn(d().parenthesizeLeftSideOfAccess(q,!0),Ce,sd(Oe),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(bt)));return Nr.flags|=64,Nr.transformFlags|=32,Nr}function kA(q,Ce,Oe,bt,Nr){return pe.assert(!!(q.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),q.expression!==Ce||q.questionDotToken!==Oe||q.typeArguments!==bt||q.arguments!==Nr?vo(DA(Ce,Oe,bt,Nr),q):q}function gA(q,Ce,Oe){let bt=Ze(215);return bt.expression=d().parenthesizeExpressionOfNew(q),bt.typeArguments=sd(Ce),bt.arguments=Oe?d().parenthesizeExpressionsOfCommaDelimitedList(Oe):void 0,bt.transformFlags|=zs(bt.expression)|_A(bt.typeArguments)|_A(bt.arguments)|32,bt.typeArguments&&(bt.transformFlags|=1),bt}function ym(q,Ce,Oe,bt){return q.expression!==Ce||q.typeArguments!==Oe||q.arguments!==bt?vo(gA(Ce,Oe,bt),q):q}function lf(q,Ce,Oe){let bt=Te(216);return bt.tag=d().parenthesizeLeftSideOfAccess(q,!1),bt.typeArguments=sd(Ce),bt.template=Oe,bt.transformFlags|=zs(bt.tag)|_A(bt.typeArguments)|zs(bt.template)|1024,bt.typeArguments&&(bt.transformFlags|=1),abe(bt.template)&&(bt.transformFlags|=128),bt}function fI(q,Ce,Oe,bt){return q.tag!==Ce||q.typeArguments!==Oe||q.template!==bt?vo(lf(Ce,Oe,bt),q):q}function KI(q,Ce){let Oe=Te(217);return Oe.expression=d().parenthesizeOperandOfPrefixUnary(Ce),Oe.type=q,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.type)|1,Oe}function b2(q,Ce,Oe){return q.type!==Ce||q.expression!==Oe?vo(KI(Ce,Oe),q):q}function f_(q){let Ce=Te(218);return Ce.expression=q,Ce.transformFlags=zs(Ce.expression),Ce.jsDoc=void 0,Ce}function HC(q,Ce){return q.expression!==Ce?vo(f_(Ce),q):q}function B1(q,Ce,Oe,bt,Nr,Ii,Jo){let du=Ze(219);du.modifiers=sd(q),du.asteriskToken=Ce,du.name=Wm(Oe),du.typeParameters=sd(bt),du.parameters=Ne(Nr),du.type=Ii,du.body=Jo;let uf=Zw(du.modifiers)&1024,E2=!!du.asteriskToken,CO=uf&&E2;return du.transformFlags=_A(du.modifiers)|zs(du.asteriskToken)|FB(du.name)|_A(du.typeParameters)|_A(du.parameters)|zs(du.type)|zs(du.body)&-67108865|(CO?128:uf?256:E2?2048:0)|(du.typeParameters||du.type?1:0)|4194304,du.typeArguments=void 0,du.jsDoc=void 0,du.locals=void 0,du.nextContainer=void 0,du.flowNode=void 0,du.endFlowNode=void 0,du.returnFlowNode=void 0,du}function dy(q,Ce,Oe,bt,Nr,Ii,Jo,du){return q.name!==bt||q.modifiers!==Ce||q.asteriskToken!==Oe||q.typeParameters!==Nr||q.parameters!==Ii||q.type!==Jo||q.body!==du?Pe(B1(Ce,Oe,bt,Nr,Ii,Jo,du),q):q}function vv(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(220);Jo.modifiers=sd(q),Jo.typeParameters=sd(Ce),Jo.parameters=Ne(Oe),Jo.type=bt,Jo.equalsGreaterThanToken=Nr??dt(39),Jo.body=d().parenthesizeConciseBodyOfArrowFunction(Ii);let du=Zw(Jo.modifiers)&1024;return Jo.transformFlags=_A(Jo.modifiers)|_A(Jo.typeParameters)|_A(Jo.parameters)|zs(Jo.type)|zs(Jo.equalsGreaterThanToken)|zs(Jo.body)&-67108865|(Jo.typeParameters||Jo.type?1:0)|(du?16640:0)|1024,Jo.typeArguments=void 0,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.flowNode=void 0,Jo.endFlowNode=void 0,Jo.returnFlowNode=void 0,Jo}function lk(q,Ce,Oe,bt,Nr,Ii,Jo){return q.modifiers!==Ce||q.typeParameters!==Oe||q.parameters!==bt||q.type!==Nr||q.equalsGreaterThanToken!==Ii||q.body!==Jo?Pe(vv(Ce,Oe,bt,Nr,Ii,Jo),q):q}function Qx(q){let Ce=Te(221);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function Xx(q,Ce){return q.expression!==Ce?vo(Qx(Ce),q):q}function Pb(q){let Ce=Te(222);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function rC(q,Ce){return q.expression!==Ce?vo(Pb(Ce),q):q}function gR(q){let Ce=Te(223);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function mS(q,Ce){return q.expression!==Ce?vo(gR(Ce),q):q}function VN(q){let Ce=Te(224);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression)|256|128|2097152,Ce}function ct(q,Ce){return q.expression!==Ce?vo(VN(Ce),q):q}function en(q,Ce){let Oe=Te(225);return Oe.operator=q,Oe.operand=d().parenthesizeOperandOfPrefixUnary(Ce),Oe.transformFlags|=zs(Oe.operand),(q===46||q===47)&&Ir(Oe.operand)&&!Gp(Oe.operand)&&!YF(Oe.operand)&&(Oe.transformFlags|=268435456),Oe}function gi(q,Ce){return q.operand!==Ce?vo(en(q.operator,Ce),q):q}function _i(q,Ce){let Oe=Te(226);return Oe.operator=Ce,Oe.operand=d().parenthesizeOperandOfPostfixUnary(q),Oe.transformFlags|=zs(Oe.operand),Ir(Oe.operand)&&!Gp(Oe.operand)&&!YF(Oe.operand)&&(Oe.transformFlags|=268435456),Oe}function ys(q,Ce){return q.operand!==Ce?vo(_i(Ce,q.operator),q):q}function $s(q,Ce,Oe){let bt=Ze(227),Nr=Gq(Ce),Ii=Nr.kind;return bt.left=d().parenthesizeLeftSideOfBinary(Ii,q),bt.operatorToken=Nr,bt.right=d().parenthesizeRightSideOfBinary(Ii,bt.left,Oe),bt.transformFlags|=zs(bt.left)|zs(bt.operatorToken)|zs(bt.right),Ii===61?bt.transformFlags|=32:Ii===64?ag(bt.left)?bt.transformFlags|=5248|wa(bt.left):YI(bt.left)&&(bt.transformFlags|=5120|wa(bt.left)):Ii===43||Ii===68?bt.transformFlags|=512:q7(Ii)&&(bt.transformFlags|=16),Ii===103&&p(bt.left)&&(bt.transformFlags|=536870912),bt.jsDoc=void 0,bt}function wa(q){return LEe(q)?65536:0}function pc(q,Ce,Oe,bt){return q.left!==Ce||q.operatorToken!==Oe||q.right!==bt?vo($s(Ce,Oe,bt),q):q}function cl(q,Ce,Oe,bt,Nr){let Ii=Te(228);return Ii.condition=d().parenthesizeConditionOfConditionalExpression(q),Ii.questionToken=Ce??dt(58),Ii.whenTrue=d().parenthesizeBranchOfConditionalExpression(Oe),Ii.colonToken=bt??dt(59),Ii.whenFalse=d().parenthesizeBranchOfConditionalExpression(Nr),Ii.transformFlags|=zs(Ii.condition)|zs(Ii.questionToken)|zs(Ii.whenTrue)|zs(Ii.colonToken)|zs(Ii.whenFalse),Ii.flowNodeWhenFalse=void 0,Ii.flowNodeWhenTrue=void 0,Ii}function Fe(q,Ce,Oe,bt,Nr,Ii){return q.condition!==Ce||q.questionToken!==Oe||q.whenTrue!==bt||q.colonToken!==Nr||q.whenFalse!==Ii?vo(cl(Ce,Oe,bt,Nr,Ii),q):q}function gr(q,Ce){let Oe=Te(229);return Oe.head=q,Oe.templateSpans=Ne(Ce),Oe.transformFlags|=zs(Oe.head)|_A(Oe.templateSpans)|1024,Oe}function Ln(q,Ce,Oe){return q.head!==Ce||q.templateSpans!==Oe?vo(gr(Ce,Oe),q):q}function bs(q,Ce,Oe,bt=0){pe.assert(!(bt&-7177),"Unsupported template flags.");let Nr;if(Oe!==void 0&&Oe!==Ce&&(Nr=PWt(q,Oe),typeof Nr=="object"))return pe.fail("Invalid raw text");if(Ce===void 0){if(Nr===void 0)return pe.fail("Arguments 'text' and 'rawText' may not both be undefined.");Ce=Nr}else Nr!==void 0&&pe.assert(Ce===Nr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return Ce}function Jl(q){let Ce=1024;return q&&(Ce|=128),Ce}function tg(q,Ce,Oe,bt){let Nr=Gr(q);return Nr.text=Ce,Nr.rawText=Oe,Nr.templateFlags=bt&7176,Nr.transformFlags=Jl(Nr.templateFlags),Nr}function zl(q,Ce,Oe,bt){let Nr=Ze(q);return Nr.text=Ce,Nr.rawText=Oe,Nr.templateFlags=bt&7176,Nr.transformFlags=Jl(Nr.templateFlags),Nr}function Su(q,Ce,Oe,bt){return q===15?zl(q,Ce,Oe,bt):tg(q,Ce,Oe,bt)}function xf(q,Ce,Oe){return q=bs(16,q,Ce,Oe),Su(16,q,Ce,Oe)}function Ug(q,Ce,Oe){return q=bs(16,q,Ce,Oe),Su(17,q,Ce,Oe)}function YC(q,Ce,Oe){return q=bs(16,q,Ce,Oe),Su(18,q,Ce,Oe)}function w1(q,Ce,Oe){return q=bs(16,q,Ce,Oe),zl(15,q,Ce,Oe)}function CS(q,Ce){pe.assert(!q||!!Ce,"A `YieldExpression` with an asteriskToken must have an expression.");let Oe=Te(230);return Oe.expression=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Oe.asteriskToken=q,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.asteriskToken)|1024|128|1048576,Oe}function Bv(q,Ce,Oe){return q.expression!==Oe||q.asteriskToken!==Ce?vo(CS(Ce,Oe),q):q}function qF(q){let Ce=Te(231);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|1024|32768,Ce}function A9(q,Ce){return q.expression!==Ce?vo(qF(Ce),q):q}function Yy(q,Ce,Oe,bt,Nr){let Ii=Ze(232);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.typeParameters=sd(Oe),Ii.heritageClauses=sd(bt),Ii.members=Ne(Nr),Ii.transformFlags|=_A(Ii.modifiers)|FB(Ii.name)|_A(Ii.typeParameters)|_A(Ii.heritageClauses)|_A(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.jsDoc=void 0,Ii}function uk(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.heritageClauses!==Nr||q.members!==Ii?vo(Yy(Ce,Oe,bt,Nr,Ii),q):q}function AR(){return Te(233)}function QB(q,Ce){let Oe=Te(234);return Oe.expression=d().parenthesizeLeftSideOfAccess(q,!1),Oe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Oe.transformFlags|=zs(Oe.expression)|_A(Oe.typeArguments)|1024,Oe}function rO(q,Ce,Oe){return q.expression!==Ce||q.typeArguments!==Oe?vo(QB(Ce,Oe),q):q}function br(q,Ce){let Oe=Te(235);return Oe.expression=q,Oe.type=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.type)|1,Oe}function sn(q,Ce,Oe){return q.expression!==Ce||q.type!==Oe?vo(br(Ce,Oe),q):q}function ei(q){let Ce=Te(236);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function is(q,Ce){return NJ(q)?ao(q,Ce):q.expression!==Ce?vo(ei(Ce),q):q}function Qs(q,Ce){let Oe=Te(239);return Oe.expression=q,Oe.type=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.type)|1,Oe}function Po(q,Ce,Oe){return q.expression!==Ce||q.type!==Oe?vo(Qs(Ce,Oe),q):q}function Ps(q){let Ce=Te(236);return Ce.flags|=64,Ce.expression=d().parenthesizeLeftSideOfAccess(q,!0),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function ao(q,Ce){return pe.assert(!!(q.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),q.expression!==Ce?vo(Ps(Ce),q):q}function Yc(q,Ce){let Oe=Te(237);switch(Oe.keywordToken=q,Oe.name=Ce,Oe.transformFlags|=zs(Oe.name),q){case 105:Oe.transformFlags|=1024;break;case 102:Oe.transformFlags|=32;break;default:return pe.assertNever(q)}return Oe.flowNode=void 0,Oe}function ru(q,Ce){return q.name!==Ce?vo(Yc(q.keywordToken,Ce),q):q}function $a(q,Ce){let Oe=Te(240);return Oe.expression=q,Oe.literal=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.literal)|1024,Oe}function nu(q,Ce,Oe){return q.expression!==Ce||q.literal!==Oe?vo($a(Ce,Oe),q):q}function ll(){let q=Te(241);return q.transformFlags|=1024,q}function Gf(q,Ce){let Oe=Te(242);return Oe.statements=Ne(q),Oe.multiLine=Ce,Oe.transformFlags|=_A(Oe.statements),Oe.jsDoc=void 0,Oe.locals=void 0,Oe.nextContainer=void 0,Oe}function Mb(q,Ce){return q.statements!==Ce?vo(Gf(Ce,q.multiLine),q):q}function XB(q,Ce){let Oe=Te(244);return Oe.modifiers=sd(q),Oe.declarationList=Ki(Ce)?I5(Ce):Ce,Oe.transformFlags|=_A(Oe.modifiers)|zs(Oe.declarationList),Zw(Oe.modifiers)&128&&(Oe.transformFlags=1),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function I_(q,Ce,Oe){return q.modifiers!==Ce||q.declarationList!==Oe?vo(XB(Ce,Oe),q):q}function JB(){let q=Te(243);return q.jsDoc=void 0,q}function T1(q){let Ce=Te(245);return Ce.expression=d().parenthesizeExpressionOfExpressionStatement(q),Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function A5(q,Ce){return q.expression!==Ce?vo(T1(Ce),q):q}function WN(q,Ce,Oe){let bt=Te(246);return bt.expression=q,bt.thenStatement=tG(Ce),bt.elseStatement=tG(Oe),bt.transformFlags|=zs(bt.expression)|zs(bt.thenStatement)|zs(bt.elseStatement),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function gk(q,Ce,Oe,bt){return q.expression!==Ce||q.thenStatement!==Oe||q.elseStatement!==bt?vo(WN(Ce,Oe,bt),q):q}function d5(q,Ce){let Oe=Te(247);return Oe.statement=tG(q),Oe.expression=Ce,Oe.transformFlags|=zs(Oe.statement)|zs(Oe.expression),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function Ak(q,Ce,Oe){return q.statement!==Ce||q.expression!==Oe?vo(d5(Ce,Oe),q):q}function vse(q,Ce){let Oe=Te(248);return Oe.expression=q,Oe.statement=tG(Ce),Oe.transformFlags|=zs(Oe.expression)|zs(Oe.statement),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function Gpe(q,Ce,Oe){return q.expression!==Ce||q.statement!==Oe?vo(vse(Ce,Oe),q):q}function Bse(q,Ce,Oe,bt){let Nr=Te(249);return Nr.initializer=q,Nr.condition=Ce,Nr.incrementor=Oe,Nr.statement=tG(bt),Nr.transformFlags|=zs(Nr.initializer)|zs(Nr.condition)|zs(Nr.incrementor)|zs(Nr.statement),Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.flowNode=void 0,Nr}function Jx(q,Ce,Oe,bt,Nr){return q.initializer!==Ce||q.condition!==Oe||q.incrementor!==bt||q.statement!==Nr?vo(Bse(Ce,Oe,bt,Nr),q):q}function p5(q,Ce,Oe){let bt=Te(250);return bt.initializer=q,bt.expression=Ce,bt.statement=tG(Oe),bt.transformFlags|=zs(bt.initializer)|zs(bt.expression)|zs(bt.statement),bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.flowNode=void 0,bt}function $U(q,Ce,Oe,bt){return q.initializer!==Ce||q.expression!==Oe||q.statement!==bt?vo(p5(Ce,Oe,bt),q):q}function d9(q,Ce,Oe,bt){let Nr=Te(251);return Nr.awaitModifier=q,Nr.initializer=Ce,Nr.expression=d().parenthesizeExpressionForDisallowedComma(Oe),Nr.statement=tG(bt),Nr.transformFlags|=zs(Nr.awaitModifier)|zs(Nr.initializer)|zs(Nr.expression)|zs(Nr.statement)|1024,q&&(Nr.transformFlags|=128),Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.flowNode=void 0,Nr}function eK(q,Ce,Oe,bt,Nr){return q.awaitModifier!==Ce||q.initializer!==Oe||q.expression!==bt||q.statement!==Nr?vo(d9(Ce,Oe,bt,Nr),q):q}function Aq(q){let Ce=Te(252);return Ce.label=Wm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function Fpe(q,Ce){return q.label!==Ce?vo(Aq(Ce),q):q}function tK(q){let Ce=Te(253);return Ce.label=Wm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function dq(q,Ce){return q.label!==Ce?vo(tK(Ce),q):q}function f5(q){let Ce=Te(254);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|128|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function wse(q,Ce){return q.expression!==Ce?vo(f5(Ce),q):q}function rK(q,Ce){let Oe=Te(255);return Oe.expression=q,Oe.statement=tG(Ce),Oe.transformFlags|=zs(Oe.expression)|zs(Oe.statement),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function pq(q,Ce,Oe){return q.expression!==Ce||q.statement!==Oe?vo(rK(Ce,Oe),q):q}function GQ(q,Ce){let Oe=Te(256);return Oe.expression=d().parenthesizeExpressionForDisallowedComma(q),Oe.caseBlock=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.caseBlock),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe.possiblyExhaustive=!1,Oe}function nO(q,Ce,Oe){return q.expression!==Ce||q.caseBlock!==Oe?vo(GQ(Ce,Oe),q):q}function fq(q,Ce){let Oe=Te(257);return Oe.label=Wm(q),Oe.statement=tG(Ce),Oe.transformFlags|=zs(Oe.label)|zs(Oe.statement),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function Iq(q,Ce,Oe){return q.label!==Ce||q.statement!==Oe?vo(fq(Ce,Oe),q):q}function FQ(q){let Ce=Te(258);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function iO(q,Ce){return q.expression!==Ce?vo(FQ(Ce),q):q}function p9(q,Ce,Oe){let bt=Te(259);return bt.tryBlock=q,bt.catchClause=Ce,bt.finallyBlock=Oe,bt.transformFlags|=zs(bt.tryBlock)|zs(bt.catchClause)|zs(bt.finallyBlock),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function $F(q,Ce,Oe,bt){return q.tryBlock!==Ce||q.catchClause!==Oe||q.finallyBlock!==bt?vo(p9(Ce,Oe,bt),q):q}function eZ(){let q=Te(260);return q.jsDoc=void 0,q.flowNode=void 0,q}function tZ(q,Ce,Oe,bt){let Nr=Ze(261);return Nr.name=Wm(q),Nr.exclamationToken=Ce,Nr.type=Oe,Nr.initializer=V0(bt),Nr.transformFlags|=FB(Nr.name)|zs(Nr.initializer)|(Nr.exclamationToken??Nr.type?1:0),Nr.jsDoc=void 0,Nr}function sO(q,Ce,Oe,bt,Nr){return q.name!==Ce||q.type!==bt||q.exclamationToken!==Oe||q.initializer!==Nr?vo(tZ(Ce,Oe,bt,Nr),q):q}function I5(q,Ce=0){let Oe=Te(262);return Oe.flags|=Ce&7,Oe.declarations=Ne(q),Oe.transformFlags|=_A(Oe.declarations)|4194304,Ce&7&&(Oe.transformFlags|=263168),Ce&4&&(Oe.transformFlags|=4),Oe}function nK(q,Ce){return q.declarations!==Ce?vo(I5(Ce,q.flags),q):q}function h5(q,Ce,Oe,bt,Nr,Ii,Jo){let du=Ze(263);if(du.modifiers=sd(q),du.asteriskToken=Ce,du.name=Wm(Oe),du.typeParameters=sd(bt),du.parameters=Ne(Nr),du.type=Ii,du.body=Jo,!du.body||Zw(du.modifiers)&128)du.transformFlags=1;else{let uf=Zw(du.modifiers)&1024,E2=!!du.asteriskToken,CO=uf&&E2;du.transformFlags=_A(du.modifiers)|zs(du.asteriskToken)|FB(du.name)|_A(du.typeParameters)|_A(du.parameters)|zs(du.type)|zs(du.body)&-67108865|(CO?128:uf?256:E2?2048:0)|(du.typeParameters||du.type?1:0)|4194304}return du.typeArguments=void 0,du.jsDoc=void 0,du.locals=void 0,du.nextContainer=void 0,du.endFlowNode=void 0,du.returnFlowNode=void 0,du}function PA(q,Ce,Oe,bt,Nr,Ii,Jo,du){return q.modifiers!==Ce||q.asteriskToken!==Oe||q.name!==bt||q.typeParameters!==Nr||q.parameters!==Ii||q.type!==Jo||q.body!==du?iK(h5(Ce,Oe,bt,Nr,Ii,Jo,du),q):q}function iK(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),Pe(q,Ce)}function Tse(q,Ce,Oe,bt,Nr){let Ii=Ze(264);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.typeParameters=sd(Oe),Ii.heritageClauses=sd(bt),Ii.members=Ne(Nr),Zw(Ii.modifiers)&128?Ii.transformFlags=1:(Ii.transformFlags|=_A(Ii.modifiers)|FB(Ii.name)|_A(Ii.typeParameters)|_A(Ii.heritageClauses)|_A(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.transformFlags&8192&&(Ii.transformFlags|=1)),Ii.jsDoc=void 0,Ii}function rZ(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.heritageClauses!==Nr||q.members!==Ii?vo(Tse(Ce,Oe,bt,Nr,Ii),q):q}function nZ(q,Ce,Oe,bt,Nr){let Ii=Ze(265);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.typeParameters=sd(Oe),Ii.heritageClauses=sd(bt),Ii.members=Ne(Nr),Ii.transformFlags=1,Ii.jsDoc=void 0,Ii}function dk(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.heritageClauses!==Nr||q.members!==Ii?vo(nZ(Ce,Oe,bt,Nr,Ii),q):q}function Sf(q,Ce,Oe,bt){let Nr=Ze(266);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.typeParameters=sd(Oe),Nr.type=bt,Nr.transformFlags=1,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function g0(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.type!==Nr?vo(Sf(Ce,Oe,bt,Nr),q):q}function Hb(q,Ce,Oe){let bt=Ze(267);return bt.modifiers=sd(q),bt.name=Wm(Ce),bt.members=Ne(Oe),bt.transformFlags|=_A(bt.modifiers)|zs(bt.name)|_A(bt.members)|1,bt.transformFlags&=-67108865,bt.jsDoc=void 0,bt}function A0(q,Ce,Oe,bt){return q.modifiers!==Ce||q.name!==Oe||q.members!==bt?vo(Hb(Ce,Oe,bt),q):q}function m5(q,Ce,Oe,bt=0){let Nr=Ze(268);return Nr.modifiers=sd(q),Nr.flags|=bt&2088,Nr.name=Ce,Nr.body=Oe,Zw(Nr.modifiers)&128?Nr.transformFlags=1:Nr.transformFlags|=_A(Nr.modifiers)|zs(Nr.name)|zs(Nr.body)|1,Nr.transformFlags&=-67108865,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function py(q,Ce,Oe,bt){return q.modifiers!==Ce||q.name!==Oe||q.body!==bt?vo(m5(Ce,Oe,bt,q.flags),q):q}function pk(q){let Ce=Te(269);return Ce.statements=Ne(q),Ce.transformFlags|=_A(Ce.statements),Ce.jsDoc=void 0,Ce}function Qy(q,Ce){return q.statements!==Ce?vo(pk(Ce),q):q}function UB(q){let Ce=Te(270);return Ce.clauses=Ne(q),Ce.transformFlags|=_A(Ce.clauses),Ce.locals=void 0,Ce.nextContainer=void 0,Ce}function Jw(q,Ce){return q.clauses!==Ce?vo(UB(Ce),q):q}function C5(q){let Ce=Ze(271);return Ce.name=Wm(q),Ce.transformFlags|=mie(Ce.name)|1,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce}function _5(q,Ce){return q.name!==Ce?Zpe(C5(Ce),q):q}function Zpe(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function Rse(q,Ce,Oe,bt){let Nr=Ze(272);return Nr.modifiers=sd(q),Nr.name=Wm(Oe),Nr.isTypeOnly=Ce,Nr.moduleReference=bt,Nr.transformFlags|=_A(Nr.modifiers)|mie(Nr.name)|zs(Nr.moduleReference),MF(Nr.moduleReference)||(Nr.transformFlags|=1),Nr.transformFlags&=-67108865,Nr.jsDoc=void 0,Nr}function f9(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.isTypeOnly!==Oe||q.name!==bt||q.moduleReference!==Nr?vo(Rse(Ce,Oe,bt,Nr),q):q}function ZQ(q,Ce,Oe,bt){let Nr=Te(273);return Nr.modifiers=sd(q),Nr.importClause=Ce,Nr.moduleSpecifier=Oe,Nr.attributes=Nr.assertClause=bt,Nr.transformFlags|=zs(Nr.importClause)|zs(Nr.moduleSpecifier),Nr.transformFlags&=-67108865,Nr.jsDoc=void 0,Nr}function Br(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.importClause!==Oe||q.moduleSpecifier!==bt||q.attributes!==Nr?vo(ZQ(Ce,Oe,bt,Nr),q):q}function sK(q,Ce,Oe){let bt=Ze(274);return typeof q=="boolean"&&(q=q?156:void 0),bt.isTypeOnly=q===156,bt.phaseModifier=q,bt.name=Ce,bt.namedBindings=Oe,bt.transformFlags|=zs(bt.name)|zs(bt.namedBindings),q===156&&(bt.transformFlags|=1),bt.transformFlags&=-67108865,bt}function Ux(q,Ce,Oe,bt){return typeof Ce=="boolean"&&(Ce=Ce?156:void 0),q.phaseModifier!==Ce||q.name!==Oe||q.namedBindings!==bt?vo(sK(Ce,Oe,bt),q):q}function Uw(q,Ce){let Oe=Te(301);return Oe.elements=Ne(q),Oe.multiLine=Ce,Oe.token=132,Oe.transformFlags|=4,Oe}function I9(q,Ce,Oe){return q.elements!==Ce||q.multiLine!==Oe?vo(Uw(Ce,Oe),q):q}function oO(q,Ce){let Oe=Te(302);return Oe.name=q,Oe.value=Ce,Oe.transformFlags|=4,Oe}function fy(q,Ce,Oe){return q.name!==Ce||q.value!==Oe?vo(oO(Ce,Oe),q):q}function dR(q,Ce){let Oe=Te(303);return Oe.assertClause=q,Oe.multiLine=Ce,Oe}function KB(q,Ce,Oe){return q.assertClause!==Ce||q.multiLine!==Oe?vo(dR(Ce,Oe),q):q}function y5(q,Ce,Oe){let bt=Te(301);return bt.token=Oe??118,bt.elements=Ne(q),bt.multiLine=Ce,bt.transformFlags|=4,bt}function AA(q,Ce,Oe){return q.elements!==Ce||q.multiLine!==Oe?vo(y5(Ce,Oe,q.token),q):q}function _S(q,Ce){let Oe=Te(302);return Oe.name=q,Oe.value=Ce,Oe.transformFlags|=4,Oe}function h9(q,Ce,Oe){return q.name!==Ce||q.value!==Oe?vo(_S(Ce,Oe),q):q}function oK(q){let Ce=Ze(275);return Ce.name=q,Ce.transformFlags|=zs(Ce.name),Ce.transformFlags&=-67108865,Ce}function iZ(q,Ce){return q.name!==Ce?vo(oK(Ce),q):q}function LQ(q){let Ce=Ze(281);return Ce.name=q,Ce.transformFlags|=zs(Ce.name)|32,Ce.transformFlags&=-67108865,Ce}function wv(q,Ce){return q.name!==Ce?vo(LQ(Ce),q):q}function Kx(q){let Ce=Te(276);return Ce.elements=Ne(q),Ce.transformFlags|=_A(Ce.elements),Ce.transformFlags&=-67108865,Ce}function b5(q,Ce){return q.elements!==Ce?vo(Kx(Ce),q):q}function m9(q,Ce,Oe){let bt=Ze(277);return bt.isTypeOnly=q,bt.propertyName=Ce,bt.name=Oe,bt.transformFlags|=zs(bt.propertyName)|zs(bt.name),bt.transformFlags&=-67108865,bt}function ON(q,Ce,Oe,bt){return q.isTypeOnly!==Ce||q.propertyName!==Oe||q.name!==bt?vo(m9(Ce,Oe,bt),q):q}function VQ(q,Ce,Oe){let bt=Ze(278);return bt.modifiers=sd(q),bt.isExportEquals=Ce,bt.expression=Ce?d().parenthesizeRightSideOfBinary(64,void 0,Oe):d().parenthesizeExpressionOfExportDefault(Oe),bt.transformFlags|=_A(bt.modifiers)|zs(bt.expression),bt.transformFlags&=-67108865,bt.jsDoc=void 0,bt}function E5(q,Ce,Oe){return q.modifiers!==Ce||q.expression!==Oe?vo(VQ(Ce,q.isExportEquals,Oe),q):q}function fa(q,Ce,Oe,bt,Nr){let Ii=Ze(279);return Ii.modifiers=sd(q),Ii.isTypeOnly=Ce,Ii.exportClause=Oe,Ii.moduleSpecifier=bt,Ii.attributes=Ii.assertClause=Nr,Ii.transformFlags|=_A(Ii.modifiers)|zs(Ii.exportClause)|zs(Ii.moduleSpecifier),Ii.transformFlags&=-67108865,Ii.jsDoc=void 0,Ii}function sa(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.isTypeOnly!==Oe||q.exportClause!==bt||q.moduleSpecifier!==Nr||q.attributes!==Ii?h_(fa(Ce,Oe,bt,Nr,Ii),q):q}function h_(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function aK(q){let Ce=Te(280);return Ce.elements=Ne(q),Ce.transformFlags|=_A(Ce.elements),Ce.transformFlags&=-67108865,Ce}function sZ(q,Ce){return q.elements!==Ce?vo(aK(Ce),q):q}function WQ(q,Ce,Oe){let bt=Te(282);return bt.isTypeOnly=q,bt.propertyName=Wm(Ce),bt.name=Wm(Oe),bt.transformFlags|=zs(bt.propertyName)|zs(bt.name),bt.transformFlags&=-67108865,bt.jsDoc=void 0,bt}function Nse(q,Ce,Oe,bt){return q.isTypeOnly!==Ce||q.propertyName!==Oe||q.name!==bt?vo(WQ(Ce,Oe,bt),q):q}function Lpe(){let q=Ze(283);return q.jsDoc=void 0,q}function qo(q){let Ce=Te(284);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.transformFlags&=-67108865,Ce}function Iy(q,Ce){return q.expression!==Ce?vo(qo(Ce),q):q}function mu(q){return Te(q)}function TE(q,Ce,Oe=!1){let bt=cK(q,Oe?Ce&&d().parenthesizeNonArrayTypeOfPostfixType(Ce):Ce);return bt.postfix=Oe,bt}function cK(q,Ce){let Oe=Te(q);return Oe.type=Ce,Oe}function aO(q,Ce,Oe){return Ce.type!==Oe?vo(TE(q,Oe,Ce.postfix),Ce):Ce}function Fo(q,Ce,Oe){return Ce.type!==Oe?vo(cK(q,Oe),Ce):Ce}function Dse(q,Ce){let Oe=Ze(318);return Oe.parameters=sd(q),Oe.type=Ce,Oe.transformFlags=_A(Oe.parameters)|(Oe.type?1:0),Oe.jsDoc=void 0,Oe.locals=void 0,Oe.nextContainer=void 0,Oe.typeArguments=void 0,Oe}function hq(q,Ce,Oe){return q.parameters!==Ce||q.type!==Oe?vo(Dse(Ce,Oe),q):q}function Z0(q,Ce=!1){let Oe=Ze(323);return Oe.jsDocPropertyTags=sd(q),Oe.isArrayType=Ce,Oe}function fk(q,Ce,Oe){return q.jsDocPropertyTags!==Ce||q.isArrayType!==Oe?vo(Z0(Ce,Oe),q):q}function pR(q){let Ce=Te(310);return Ce.type=q,Ce}function cO(q,Ce){return q.type!==Ce?vo(pR(Ce),q):q}function lK(q,Ce,Oe){let bt=Ze(324);return bt.typeParameters=sd(q),bt.parameters=Ne(Ce),bt.type=Oe,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt}function lO(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?vo(lK(Ce,Oe,bt),q):q}function yS(q){let Ce=IEe(q.kind);return q.tagName.escapedText===pp(Ce)?q.tagName:Rt(Ce)}function Kw(q,Ce,Oe){let bt=Te(q);return bt.tagName=Ce,bt.comment=Oe,bt}function Tv(q,Ce,Oe){let bt=Ze(q);return bt.tagName=Ce,bt.comment=Oe,bt}function Yb(q,Ce,Oe,bt){let Nr=Kw(346,q??Rt("template"),bt);return Nr.constraint=Ce,Nr.typeParameters=Ne(Oe),Nr}function C9(q,Ce=yS(q),Oe,bt,Nr){return q.tagName!==Ce||q.constraint!==Oe||q.typeParameters!==bt||q.comment!==Nr?vo(Yb(Ce,Oe,bt,Nr),q):q}function S5(q,Ce,Oe,bt){let Nr=Tv(347,q??Rt("typedef"),bt);return Nr.typeExpression=Ce,Nr.fullName=Oe,Nr.name=$$e(Oe),Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function mq(q,Ce=yS(q),Oe,bt,Nr){return q.tagName!==Ce||q.typeExpression!==Oe||q.fullName!==bt||q.comment!==Nr?vo(S5(Ce,Oe,bt,Nr),q):q}function v5(q,Ce,Oe,bt,Nr,Ii){let Jo=Tv(342,q??Rt("param"),Ii);return Jo.typeExpression=bt,Jo.name=Ce,Jo.isNameFirst=!!Nr,Jo.isBracketed=Oe,Jo}function uO(q,Ce=yS(q),Oe,bt,Nr,Ii,Jo){return q.tagName!==Ce||q.name!==Oe||q.isBracketed!==bt||q.typeExpression!==Nr||q.isNameFirst!==Ii||q.comment!==Jo?vo(v5(Ce,Oe,bt,Nr,Ii,Jo),q):q}function Cq(q,Ce,Oe,bt,Nr,Ii){let Jo=Tv(349,q??Rt("prop"),Ii);return Jo.typeExpression=bt,Jo.name=Ce,Jo.isNameFirst=!!Nr,Jo.isBracketed=Oe,Jo}function oZ(q,Ce=yS(q),Oe,bt,Nr,Ii,Jo){return q.tagName!==Ce||q.name!==Oe||q.isBracketed!==bt||q.typeExpression!==Nr||q.isNameFirst!==Ii||q.comment!==Jo?vo(Cq(Ce,Oe,bt,Nr,Ii,Jo),q):q}function PN(q,Ce,Oe,bt){let Nr=Tv(339,q??Rt("callback"),bt);return Nr.typeExpression=Ce,Nr.fullName=Oe,Nr.name=$$e(Oe),Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function gO(q,Ce=yS(q),Oe,bt,Nr){return q.tagName!==Ce||q.typeExpression!==Oe||q.fullName!==bt||q.comment!==Nr?vo(PN(Ce,Oe,bt,Nr),q):q}function B5(q,Ce,Oe){let bt=Kw(340,q??Rt("overload"),Oe);return bt.typeExpression=Ce,bt}function _9(q,Ce=yS(q),Oe,bt){return q.tagName!==Ce||q.typeExpression!==Oe||q.comment!==bt?vo(B5(Ce,Oe,bt),q):q}function AO(q,Ce,Oe){let bt=Kw(329,q??Rt("augments"),Oe);return bt.class=Ce,bt}function jw(q,Ce=yS(q),Oe,bt){return q.tagName!==Ce||q.class!==Oe||q.comment!==bt?vo(AO(Ce,Oe,bt),q):q}function aZ(q,Ce,Oe){let bt=Kw(330,q??Rt("implements"),Oe);return bt.class=Ce,bt}function jx(q,Ce,Oe){let bt=Kw(348,q??Rt("see"),Oe);return bt.name=Ce,bt}function dO(q,Ce,Oe,bt){return q.tagName!==Ce||q.name!==Oe||q.comment!==bt?vo(jx(Ce,Oe,bt),q):q}function QC(q){let Ce=Te(311);return Ce.name=q,Ce}function OQ(q,Ce){return q.name!==Ce?vo(QC(Ce),q):q}function zx(q,Ce){let Oe=Te(312);return Oe.left=q,Oe.right=Ce,Oe.transformFlags|=zs(Oe.left)|zs(Oe.right),Oe}function w5(q,Ce,Oe){return q.left!==Ce||q.right!==Oe?vo(zx(Ce,Oe),q):q}function uK(q,Ce){let Oe=Te(325);return Oe.name=q,Oe.text=Ce,Oe}function qx(q,Ce,Oe){return q.name!==Ce?vo(uK(Ce,Oe),q):q}function kse(q,Ce){let Oe=Te(326);return Oe.name=q,Oe.text=Ce,Oe}function _q(q,Ce,Oe){return q.name!==Ce?vo(kse(Ce,Oe),q):q}function yq(q,Ce){let Oe=Te(327);return Oe.name=q,Oe.text=Ce,Oe}function Vpe(q,Ce,Oe){return q.name!==Ce?vo(yq(Ce,Oe),q):q}function bq(q,Ce=yS(q),Oe,bt){return q.tagName!==Ce||q.class!==Oe||q.comment!==bt?vo(aZ(Ce,Oe,bt),q):q}function T5(q,Ce,Oe){return Kw(q,Ce??Rt(IEe(q)),Oe)}function cZ(q,Ce,Oe=yS(Ce),bt){return Ce.tagName!==Oe||Ce.comment!==bt?vo(T5(q,Oe,bt),Ce):Ce}function xse(q,Ce,Oe,bt){let Nr=Kw(q,Ce??Rt(IEe(q)),bt);return Nr.typeExpression=Oe,Nr}function R5(q,Ce,Oe=yS(Ce),bt,Nr){return Ce.tagName!==Oe||Ce.typeExpression!==bt||Ce.comment!==Nr?vo(xse(q,Oe,bt,Nr),Ce):Ce}function gK(q,Ce){return Kw(328,q,Ce)}function Oh(q,Ce,Oe){return q.tagName!==Ce||q.comment!==Oe?vo(gK(Ce,Oe),q):q}function XC(q,Ce,Oe){let bt=Tv(341,q??Rt(IEe(341)),Oe);return bt.typeExpression=Ce,bt.locals=void 0,bt.nextContainer=void 0,bt}function Eq(q,Ce=yS(q),Oe,bt){return q.tagName!==Ce||q.typeExpression!==Oe||q.comment!==bt?vo(XC(Ce,Oe,bt),q):q}function Qb(q,Ce,Oe,bt,Nr){let Ii=Kw(352,q??Rt("import"),Nr);return Ii.importClause=Ce,Ii.moduleSpecifier=Oe,Ii.attributes=bt,Ii.comment=Nr,Ii}function Rv(q,Ce,Oe,bt,Nr,Ii){return q.tagName!==Ce||q.comment!==Ii||q.importClause!==Oe||q.moduleSpecifier!==bt||q.attributes!==Nr?vo(Qb(Ce,Oe,bt,Nr,Ii),q):q}function PQ(q){let Ce=Te(322);return Ce.text=q,Ce}function fR(q,Ce){return q.text!==Ce?vo(PQ(Ce),q):q}function pO(q,Ce){let Oe=Te(321);return Oe.comment=q,Oe.tags=sd(Ce),Oe}function y9(q,Ce,Oe){return q.comment!==Ce||q.tags!==Oe?vo(pO(Ce,Oe),q):q}function Sq(q,Ce,Oe){let bt=Te(285);return bt.openingElement=q,bt.children=Ne(Ce),bt.closingElement=Oe,bt.transformFlags|=zs(bt.openingElement)|_A(bt.children)|zs(bt.closingElement)|2,bt}function Wpe(q,Ce,Oe,bt){return q.openingElement!==Ce||q.children!==Oe||q.closingElement!==bt?vo(Sq(Ce,Oe,bt),q):q}function NI(q,Ce,Oe){let bt=Te(286);return bt.tagName=q,bt.typeArguments=sd(Ce),bt.attributes=Oe,bt.transformFlags|=zs(bt.tagName)|_A(bt.typeArguments)|zs(bt.attributes)|2,bt.typeArguments&&(bt.transformFlags|=1),bt}function Gse(q,Ce,Oe,bt){return q.tagName!==Ce||q.typeArguments!==Oe||q.attributes!==bt?vo(NI(Ce,Oe,bt),q):q}function AK(q,Ce,Oe){let bt=Te(287);return bt.tagName=q,bt.typeArguments=sd(Ce),bt.attributes=Oe,bt.transformFlags|=zs(bt.tagName)|_A(bt.typeArguments)|zs(bt.attributes)|2,Ce&&(bt.transformFlags|=1),bt}function MQ(q,Ce,Oe,bt){return q.tagName!==Ce||q.typeArguments!==Oe||q.attributes!==bt?vo(AK(Ce,Oe,bt),q):q}function vq(q){let Ce=Te(288);return Ce.tagName=q,Ce.transformFlags|=zs(Ce.tagName)|2,Ce}function L0(q,Ce){return q.tagName!==Ce?vo(vq(Ce),q):q}function RE(q,Ce,Oe){let bt=Te(289);return bt.openingFragment=q,bt.children=Ne(Ce),bt.closingFragment=Oe,bt.transformFlags|=zs(bt.openingFragment)|_A(bt.children)|zs(bt.closingFragment)|2,bt}function dK(q,Ce,Oe,bt){return q.openingFragment!==Ce||q.children!==Oe||q.closingFragment!==bt?vo(RE(Ce,Oe,bt),q):q}function N5(q,Ce){let Oe=Te(12);return Oe.text=q,Oe.containsOnlyTriviaWhiteSpaces=!!Ce,Oe.transformFlags|=2,Oe}function NE(q,Ce,Oe){return q.text!==Ce||q.containsOnlyTriviaWhiteSpaces!==Oe?vo(N5(Ce,Oe),q):q}function pK(){let q=Te(290);return q.transformFlags|=2,q}function $x(){let q=Te(291);return q.transformFlags|=2,q}function Bq(q,Ce){let Oe=Ze(292);return Oe.name=q,Oe.initializer=Ce,Oe.transformFlags|=zs(Oe.name)|zs(Oe.initializer)|2,Oe}function fK(q,Ce,Oe){return q.name!==Ce||q.initializer!==Oe?vo(Bq(Ce,Oe),q):q}function zw(q){let Ce=Ze(293);return Ce.properties=Ne(q),Ce.transformFlags|=_A(Ce.properties)|2,Ce}function wq(q,Ce){return q.properties!==Ce?vo(zw(Ce),q):q}function Fse(q){let Ce=Te(294);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|2,Ce}function Tq(q,Ce){return q.expression!==Ce?vo(Fse(Ce),q):q}function IK(q,Ce){let Oe=Te(295);return Oe.dotDotDotToken=q,Oe.expression=Ce,Oe.transformFlags|=zs(Oe.dotDotDotToken)|zs(Oe.expression)|2,Oe}function Rq(q,Ce){return q.expression!==Ce?vo(IK(q.dotDotDotToken,Ce),q):q}function b9(q,Ce){let Oe=Te(296);return Oe.namespace=q,Oe.name=Ce,Oe.transformFlags|=zs(Oe.namespace)|zs(Oe.name)|2,Oe}function R1(q,Ce,Oe){return q.namespace!==Ce||q.name!==Oe?vo(b9(Ce,Oe),q):q}function MN(q,Ce){let Oe=Te(297);return Oe.expression=d().parenthesizeExpressionForDisallowedComma(q),Oe.statements=Ne(Ce),Oe.transformFlags|=zs(Oe.expression)|_A(Oe.statements),Oe.jsDoc=void 0,Oe}function hK(q,Ce,Oe){return q.expression!==Ce||q.statements!==Oe?vo(MN(Ce,Oe),q):q}function mK(q){let Ce=Te(298);return Ce.statements=Ne(q),Ce.transformFlags=_A(Ce.statements),Ce}function qA(q,Ce){return q.statements!==Ce?vo(mK(Ce),q):q}function Uo(q,Ce){let Oe=Te(299);switch(Oe.token=q,Oe.types=Ne(Ce),Oe.transformFlags|=_A(Oe.types),q){case 96:Oe.transformFlags|=1024;break;case 119:Oe.transformFlags|=1;break;default:return pe.assertNever(q)}return Oe}function bS(q,Ce){return q.types!==Ce?vo(Uo(q.token,Ce),q):q}function nC(q,Ce){let Oe=Te(300);return Oe.variableDeclaration=mk(q),Oe.block=Ce,Oe.transformFlags|=zs(Oe.variableDeclaration)|zs(Oe.block)|(q?0:64),Oe.locals=void 0,Oe.nextContainer=void 0,Oe}function D5(q,Ce,Oe){return q.variableDeclaration!==Ce||q.block!==Oe?vo(nC(Ce,Oe),q):q}function CK(q,Ce){let Oe=Ze(304);return Oe.name=Wm(q),Oe.initializer=d().parenthesizeExpressionForDisallowedComma(Ce),Oe.transformFlags|=FB(Oe.name)|zs(Oe.initializer),Oe.modifiers=void 0,Oe.questionToken=void 0,Oe.exclamationToken=void 0,Oe.jsDoc=void 0,Oe}function HQ(q,Ce,Oe){return q.name!==Ce||q.initializer!==Oe?k5(CK(Ce,Oe),q):q}function k5(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function _K(q,Ce){let Oe=Ze(305);return Oe.name=Wm(q),Oe.objectAssignmentInitializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Oe.transformFlags|=mie(Oe.name)|zs(Oe.objectAssignmentInitializer)|1024,Oe.equalsToken=void 0,Oe.modifiers=void 0,Oe.questionToken=void 0,Oe.exclamationToken=void 0,Oe.jsDoc=void 0,Oe}function Ae(q,Ce,Oe){return q.name!==Ce||q.objectAssignmentInitializer!==Oe?vt(_K(Ce,Oe),q):q}function vt(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken,q.equalsToken=Ce.equalsToken),vo(q,Ce)}function fn(q){let Ce=Ze(306);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|128|65536,Ce.jsDoc=void 0,Ce}function qi(q,Ce){return q.expression!==Ce?vo(fn(Ce),q):q}function ic(q,Ce){let Oe=Ze(307);return Oe.name=Wm(q),Oe.initializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Oe.transformFlags|=zs(Oe.name)|zs(Oe.initializer)|1,Oe.jsDoc=void 0,Oe}function Pc(q,Ce,Oe){return q.name!==Ce||q.initializer!==Oe?vo(ic(Ce,Oe),q):q}function ql(q,Ce,Oe){let bt=c.createBaseSourceFileNode(308);return bt.statements=Ne(q),bt.endOfFileToken=Ce,bt.flags|=Oe,bt.text="",bt.fileName="",bt.path="",bt.resolvedPath="",bt.originalFileName="",bt.languageVersion=1,bt.languageVariant=0,bt.scriptKind=0,bt.isDeclarationFile=!1,bt.hasNoDefaultLib=!1,bt.transformFlags|=_A(bt.statements)|zs(bt.endOfFileToken),bt.locals=void 0,bt.nextContainer=void 0,bt.endFlowNode=void 0,bt.nodeCount=0,bt.identifierCount=0,bt.symbolCount=0,bt.parseDiagnostics=void 0,bt.bindDiagnostics=void 0,bt.bindSuggestionDiagnostics=void 0,bt.lineMap=void 0,bt.externalModuleIndicator=void 0,bt.setExternalModuleIndicator=void 0,bt.pragmas=void 0,bt.checkJsDirective=void 0,bt.referencedFiles=void 0,bt.typeReferenceDirectives=void 0,bt.libReferenceDirectives=void 0,bt.amdDependencies=void 0,bt.commentDirectives=void 0,bt.identifiers=void 0,bt.packageJsonLocations=void 0,bt.packageJsonScope=void 0,bt.imports=void 0,bt.moduleAugmentations=void 0,bt.ambientModuleNames=void 0,bt.classifiableNames=void 0,bt.impliedNodeFormat=void 0,bt}function Vc(q){let Ce=Object.create(q.redirectTarget);return Object.defineProperties(Ce,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Oe){this.redirectInfo.redirectTarget.id=Oe}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Oe){this.redirectInfo.redirectTarget.symbol=Oe}}}),Ce.redirectInfo=q,Ce}function yA(q){let Ce=Vc(q.redirectInfo);return Ce.flags|=q.flags&-17,Ce.fileName=q.fileName,Ce.path=q.path,Ce.resolvedPath=q.resolvedPath,Ce.originalFileName=q.originalFileName,Ce.packageJsonLocations=q.packageJsonLocations,Ce.packageJsonScope=q.packageJsonScope,Ce.emitNode=void 0,Ce}function Ph(q){let Ce=c.createBaseSourceFileNode(308);Ce.flags|=q.flags&-17;for(let Oe in q)if(!(Da(Ce,Oe)||!Da(q,Oe))){if(Oe==="emitNode"){Ce.emitNode=void 0;continue}Ce[Oe]=q[Oe]}return Ce}function d0(q){let Ce=q.redirectInfo?yA(q):Ph(q);return g(Ce,q),Ce}function Xy(q,Ce,Oe,bt,Nr,Ii,Jo){let du=d0(q);return du.statements=Ne(Ce),du.isDeclarationFile=Oe,du.referencedFiles=bt,du.typeReferenceDirectives=Nr,du.hasNoDefaultLib=Ii,du.libReferenceDirectives=Jo,du.transformFlags=_A(du.statements)|zs(du.endOfFileToken),du}function x5(q,Ce,Oe=q.isDeclarationFile,bt=q.referencedFiles,Nr=q.typeReferenceDirectives,Ii=q.hasNoDefaultLib,Jo=q.libReferenceDirectives){return q.statements!==Ce||q.isDeclarationFile!==Oe||q.referencedFiles!==bt||q.typeReferenceDirectives!==Nr||q.hasNoDefaultLib!==Ii||q.libReferenceDirectives!==Jo?vo(Xy(q,Ce,Oe,bt,Nr,Ii,Jo),q):q}function Jy(q){let Ce=Te(309);return Ce.sourceFiles=q,Ce.syntheticFileReferences=void 0,Ce.syntheticTypeReferences=void 0,Ce.syntheticLibReferences=void 0,Ce.hasNoDefaultLib=void 0,Ce}function fO(q,Ce){return q.sourceFiles!==Ce?vo(Jy(Ce),q):q}function Nq(q,Ce=!1,Oe){let bt=Te(238);return bt.type=q,bt.isSpread=Ce,bt.tupleNameSource=Oe,bt}function jB(q){let Ce=Te(353);return Ce._children=q,Ce}function Qf(q){let Ce=Te(354);return Ce.original=q,gn(Ce,q),Ce}function yK(q,Ce){let Oe=Te(356);return Oe.expression=q,Oe.original=Ce,Oe.transformFlags|=zs(Oe.expression)|1,gn(Oe,Ce),Oe}function E9(q,Ce){return q.expression!==Ce?vo(yK(Ce,q.original),q):q}function qw(){return Te(355)}function S9(q){if(ap(q)&&!NL(q)&&!q.original&&!q.emitNode&&!q.id){if(bde(q))return q.elements;if(po(q)&&SEe(q.operatorToken))return[q.left,q.right]}return q}function YQ(q){let Ce=Te(357);return Ce.elements=Ne(Fr(q,S9)),Ce.transformFlags|=_A(Ce.elements),Ce}function kOe(q,Ce){return q.elements!==Ce?vo(YQ(Ce),q):q}function Ope(q,Ce){let Oe=Te(358);return Oe.expression=q,Oe.thisArg=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.thisArg),Oe}function Dq(q,Ce,Oe){return q.expression!==Ce||q.thisArg!==Oe?vo(Ope(Ce,Oe),q):q}function Ppe(q){let Ce=mt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),_ie(Ce,{...q.emitNode.autoGenerate}),Ce}function N2e(q){let Ce=mt(q.escapedText);Ce.flags|=q.flags&-17,Ce.jsDoc=q.jsDoc,Ce.flowNode=q.flowNode,Ce.symbol=q.symbol,Ce.transformFlags=q.transformFlags,g(Ce,q);let Oe=P3(q);return Oe&&Vx(Ce,Oe),Ce}function IO(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),_ie(Ce,{...q.emitNode.autoGenerate}),Ce}function kq(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),Ce}function bK(q){if(q===void 0)return q;if(al(q))return d0(q);if(Gp(q))return Ppe(q);if(Ir(q))return N2e(q);if(FL(q))return IO(q);if(p(q))return kq(q);let Ce=g7(q.kind)?c.createBaseNode(q.kind):c.createBaseTokenNode(q.kind);Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q);for(let Oe in q)Da(Ce,Oe)||!Da(q,Oe)||(Ce[Oe]=q[Oe]);return Ce}function xOe(q,Ce,Oe){return Js(B1(void 0,void 0,void 0,void 0,Ce?[Ce]:[],void 0,Gf(q,!0)),void 0,Oe?[Oe]:[])}function QQ(q,Ce,Oe){return Js(vv(void 0,void 0,Ce?[Ce]:[],void 0,void 0,Gf(q,!0)),void 0,Oe?[Oe]:[])}function EK(){return gR(Ke("0"))}function Mpe(q){return VQ(void 0,!1,q)}function xq(q){return fa(void 0,!1,aK([WQ(!1,void 0,q)]))}function xl(q,Ce){return Ce==="null"?Ee.createStrictEquality(q,ir()):Ce==="undefined"?Ee.createStrictEquality(q,EK()):Ee.createStrictEquality(Pb(q),Tt(Ce))}function hO(q,Ce){return Ce==="null"?Ee.createStrictInequality(q,ir()):Ce==="undefined"?Ee.createStrictInequality(q,EK()):Ee.createStrictInequality(Pb(q),Tt(Ce))}function ro(q,Ce,Oe){return vB(q)?DA(Zp(q,void 0,Ce),void 0,void 0,Oe):Js(om(q,Ce),void 0,Oe)}function Hpe(q,Ce,Oe){return ro(q,"bind",[Ce,...Oe])}function Zse(q,Ce,Oe){return ro(q,"call",[Ce,...Oe])}function Lse(q,Ce,Oe){return ro(q,"apply",[Ce,Oe])}function XQ(q,Ce,Oe){return ro(Rt(q),Ce,Oe)}function D2e(q,Ce){return ro(q,"slice",Ce===void 0?[]:[w9(Ce)])}function SK(q,Ce){return ro(q,"concat",Ce)}function GOe(q,Ce,Oe){return XQ("Object","defineProperty",[q,w9(Ce),Oe])}function Vse(q,Ce){return XQ("Object","getOwnPropertyDescriptor",[q,w9(Ce)])}function Ik(q,Ce,Oe){return XQ("Reflect","get",Oe?[q,Ce,Oe]:[q,Ce])}function k2e(q,Ce,Oe,bt){return XQ("Reflect","set",bt?[q,Ce,Oe,bt]:[q,Ce,Oe])}function G5(q,Ce,Oe){return Oe?(q.push(CK(Ce,Oe)),!0):!1}function FOe(q,Ce){let Oe=[];G5(Oe,"enumerable",w9(q.enumerable)),G5(Oe,"configurable",w9(q.configurable));let bt=G5(Oe,"writable",w9(q.writable));bt=G5(Oe,"value",q.value)||bt;let Nr=G5(Oe,"get",q.get);return Nr=G5(Oe,"set",q.set)||Nr,pe.assert(!(bt&&Nr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Fd(Oe,!Ce)}function Ype(q,Ce){switch(q.kind){case 218:return HC(q,Ce);case 217:return b2(q,q.type,Ce);case 235:return sn(q,Ce,q.type);case 239:return Po(q,Ce,q.type);case 236:return is(q,Ce);case 234:return rO(q,Ce,q.typeArguments);case 356:return E9(q,Ce)}}function x2e(q){return dI(q)&&ap(q)&&ap(zT(q))&&ap(ZB(q))&&!zt(W3(q))&&!zt(NU(q))}function Qpe(q,Ce,Oe=63){return q&&T9e(q,Oe)&&!x2e(q)?Ype(q,Qpe(q.expression,Ce)):Ce}function F5(q,Ce,Oe){if(!Ce)return q;let bt=Iq(Ce,Ce.label,HW(Ce.statement)?F5(q,Ce.statement):q);return Oe&&Oe(Ce),bt}function hk(q,Ce){let Oe=JA(q);switch(Oe.kind){case 80:return Ce;case 110:case 9:case 10:case 11:return!1;case 210:return Oe.elements.length!==0;case 211:return Oe.properties.length>0;default:return!0}}function Wse(q,Ce,Oe,bt=!1){let Nr=XI(q,63),Ii,Jo;return Fy(Nr)?(Ii=ot(),Jo=Nr):rr(Nr)?(Ii=ot(),Jo=Oe!==void 0&&Oe<2?gn(Rt("_super"),Nr):Nr):rA(Nr)&8192?(Ii=EK(),Jo=d().parenthesizeLeftSideOfAccess(Nr,!1)):jo(Nr)?hk(Nr.expression,bt)?(Ii=Lt(Ce),Jo=om(gn(Ee.createAssignment(Ii,Nr.expression),Nr.expression),Nr.name),gn(Jo,Nr)):(Ii=Nr.expression,Jo=Nr):Qg(Nr)?hk(Nr.expression,bt)?(Ii=Lt(Ce),Jo=V_(gn(Ee.createAssignment(Ii,Nr.expression),Nr.expression),Nr.argumentExpression),gn(Jo,Nr)):(Ii=Nr.expression,Jo=Nr):(Ii=EK(),Jo=d().parenthesizeLeftSideOfAccess(q,!1)),{target:Jo,thisArg:Ii}}function HN(q,Ce){return om(f_(Fd([st(void 0,"value",[Ic(void 0,void 0,q,void 0,void 0,void 0)],Gf([T1(Ce)]))])),"value")}function nt(q){return q.length>10?YQ(q):Kl(q,Ee.createComma)}function Kt(q,Ce,Oe,bt=0,Nr){let Ii=Nr?q&&Sw(q):fl(q);if(Ii&&Ir(Ii)&&!Gp(Ii)){let Jo=UA(gn(bK(Ii),Ii),Ii.parent);return bt|=rA(Ii),Oe||(bt|=96),Ce||(bt|=3072),bt&&ti(Jo,bt),Jo}return _r(q)}function xr(q,Ce,Oe){return Kt(q,Ce,Oe,98304)}function Tn(q,Ce,Oe,bt){return Kt(q,Ce,Oe,32768,bt)}function Ai(q,Ce,Oe){return Kt(q,Ce,Oe,16384)}function Wi(q,Ce,Oe){return Kt(q,Ce,Oe)}function Ba(q,Ce,Oe,bt){let Nr=om(q,ap(Ce)?Ce:bK(Ce));gn(Nr,Ce);let Ii=0;return bt||(Ii|=96),Oe||(Ii|=3072),Ii&&ti(Nr,Ii),Nr}function Xo(q,Ce,Oe,bt){return q&&Ga(Ce,32)?Ba(q,Kt(Ce),Oe,bt):Ai(Ce,Oe,bt)}function lo(q,Ce,Oe,bt){let Nr=Sp(q,Ce,0,Oe);return rp(q,Ce,Nr,bt)}function Cc(q){return Lg(q.expression)&&q.expression.text==="use strict"}function Tl(){return k0(T1(Tt("use strict")))}function Sp(q,Ce,Oe=0,bt){pe.assert(Ce.length===0,"Prologue directives should be at the first statement in the target statements array");let Nr=!1,Ii=q.length;for(;Oedu&&E2.splice(Nr,0,...Ce.slice(du,uf)),du>Jo&&E2.splice(bt,0,...Ce.slice(Jo,du)),Jo>Ii&&E2.splice(Oe,0,...Ce.slice(Ii,Jo)),Ii>0)if(Oe===0)E2.splice(0,0,...Ce.slice(0,Ii));else{let CO=new Map;for(let IR=0;IR=0;IR--){let Fq=Ce[IR];CO.has(Fq.expression.text)||E2.unshift(Fq)}}return oN(q)?gn(Ne(E2,q.hasTrailingComma),q):q}function B9(q,Ce){let Oe;return typeof Ce=="number"?Oe=Cn(Ce):Oe=Ce,Ds(q)?ks(q,Oe,q.name,q.constraint,q.default):Si(q)?ou(q,Oe,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):ik(q)?oo(q,Oe,q.typeParameters,q.parameters,q.type):ss(q)?ba(q,Oe,q.name,q.questionToken,q.type):pi(q)?yr(q,Oe,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):Il(q)?Pi(q,Oe,q.name,q.questionToken,q.typeParameters,q.parameters,q.type):gu(q)?pa(q,Oe,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Tc(q)?Tu(q,Oe,q.parameters,q.body):wg(q)?pt(q,Oe,q.name,q.parameters,q.type,q.body):kg(q)?nr(q,Oe,q.name,q.parameters,q.body):R0(q)?Gi(q,Oe,q.parameters,q.type):jA(q)?dy(q,Oe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):uA(q)?lk(q,Oe,q.typeParameters,q.parameters,q.type,q.equalsGreaterThanToken,q.body):wd(q)?uk(q,Oe,q.name,q.typeParameters,q.heritageClauses,q.members):Eh(q)?I_(q,Oe,q.declarationList):ah(q)?PA(q,Oe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):mm(q)?rZ(q,Oe,q.name,q.typeParameters,q.heritageClauses,q.members):d_(q)?dk(q,Oe,q.name,q.typeParameters,q.heritageClauses,q.members):OB(q)?g0(q,Oe,q.name,q.typeParameters,q.type):Q3(q)?A0(q,Oe,q.name,q.members):Lh(q)?py(q,Oe,q.name,q.body):Zm(q)?f9(q,Oe,q.isTypeOnly,q.name,q.moduleReference):Yf(q)?Br(q,Oe,q.importClause,q.moduleSpecifier,q.attributes):yf(q)?E5(q,Oe,q.expression):Vh(q)?sa(q,Oe,q.isTypeOnly,q.exportClause,q.moduleSpecifier,q.attributes):pe.assertNever(q)}function eG(q,Ce){return Si(q)?ou(q,Ce,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):pi(q)?yr(q,Ce,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):gu(q)?pa(q,Ce,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):wg(q)?pt(q,Ce,q.name,q.parameters,q.type,q.body):kg(q)?nr(q,Ce,q.name,q.parameters,q.body):wd(q)?uk(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):mm(q)?rZ(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pe.assertNever(q)}function mO(q,Ce){switch(q.kind){case 178:return pt(q,q.modifiers,Ce,q.parameters,q.type,q.body);case 179:return nr(q,q.modifiers,Ce,q.parameters,q.body);case 175:return pa(q,q.modifiers,q.asteriskToken,Ce,q.questionToken,q.typeParameters,q.parameters,q.type,q.body);case 174:return Pi(q,q.modifiers,Ce,q.questionToken,q.typeParameters,q.parameters,q.type);case 173:return yr(q,q.modifiers,Ce,q.questionToken??q.exclamationToken,q.type,q.initializer);case 172:return ba(q,q.modifiers,Ce,q.questionToken,q.type);case 304:return HQ(q,Ce,q.initializer)}}function sd(q){return q?Ne(q):void 0}function Wm(q){return typeof q=="string"?Rt(q):q}function w9(q){return typeof q=="string"?Tt(q):typeof q=="number"?Ke(q):typeof q=="boolean"?q?qt():Yt():q}function V0(q){return q&&d().parenthesizeExpressionForDisallowedComma(q)}function Gq(q){return typeof q=="number"?dt(q):q}function tG(q){return q&&uOt(q)?gn(g(JB(),q),q):q}function mk(q){return typeof q=="string"||q&&!nc(q)?tZ(q,void 0,void 0,void 0):q}function vo(q,Ce){return q!==Ce&&(g(q,Ce),gn(q,Ce)),q}}function IEe(s){switch(s){case 345:return"type";case 343:return"returns";case 344:return"this";case 341:return"enum";case 331:return"author";case 333:return"class";case 334:return"public";case 335:return"private";case 336:return"protected";case 337:return"readonly";case 338:return"override";case 346:return"template";case 347:return"typedef";case 342:return"param";case 349:return"prop";case 339:return"callback";case 340:return"overload";case 329:return"augments";case 330:return"implements";case 352:return"import";default:return pe.fail(`Unsupported kind: ${pe.formatSyntaxKind(s)}`)}}var Lx,b$e={};function PWt(s,c){switch(Lx||(Lx=Rb(99,!1,0)),s){case 15:Lx.setText("`"+c+"`");break;case 16:Lx.setText("`"+c+"${");break;case 17:Lx.setText("}"+c+"${");break;case 18:Lx.setText("}"+c+"`");break}let g=Lx.scan();if(g===20&&(g=Lx.reScanTemplateToken(!1)),Lx.isUnterminated())return Lx.setText(void 0),b$e;let d;switch(g){case 15:case 16:case 17:case 18:d=Lx.getTokenValue();break}return d===void 0||Lx.scan()!==1?(Lx.setText(void 0),b$e):(Lx.setText(void 0),d)}function FB(s){return s&&Ir(s)?mie(s):zs(s)}function mie(s){return zs(s)&-67108865}function MWt(s,c){return c|s.transformFlags&134234112}function zs(s){if(!s)return 0;let c=s.transformFlags&~E$e(s.kind);return sh(s)&&PI(s.name)?MWt(s.name,c):c}function _A(s){return s?s.transformFlags:0}function TU(s){let c=0;for(let g of s)c|=zs(g);s.transformFlags=c}function E$e(s){if(s>=183&&s<=206)return-2;switch(s){case 214:case 215:case 210:return-2147450880;case 268:return-1941676032;case 170:return-2147483648;case 220:return-2072174592;case 219:case 263:return-1937940480;case 262:return-2146893824;case 264:case 232:return-2147344384;case 177:return-1937948672;case 173:return-2013249536;case 175:case 178:case 179:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 169:case 172:case 174:case 180:case 181:case 182:case 265:case 266:return-2;case 211:return-2147278848;case 300:return-2147418112;case 207:case 208:return-2147450880;case 217:case 239:case 235:case 356:case 218:case 108:return-2147483648;case 212:case 213:return-2147483648;default:return-2147483648}}var Bz=r9e();function Ide(s){return s.flags|=16,s}var HWt={createBaseSourceFileNode:s=>Ide(Bz.createBaseSourceFileNode(s)),createBaseIdentifierNode:s=>Ide(Bz.createBaseIdentifierNode(s)),createBasePrivateIdentifierNode:s=>Ide(Bz.createBasePrivateIdentifierNode(s)),createBaseTokenNode:s=>Ide(Bz.createBaseTokenNode(s)),createBaseNode:s=>Ide(Bz.createBaseNode(s))},me=hie(4,HWt),wz;function S$e(s,c,g){return new(wz||(wz=VC.getSourceMapSourceConstructor()))(s,c,g)}function ua(s,c){if(s.original!==c&&(s.original=c,c)){let g=c.emitNode;g&&(s.emitNode=v$e(g,s.emitNode))}return s}function v$e(s,c){let{flags:g,internalFlags:d,leadingComments:h,trailingComments:_,commentRange:S,sourceMapRange:R,tokenSourceMapRanges:T,constantValue:O,helpers:V,startsOnNewLine:M,snippetElement:ee,classThis:re,assignedName:ge}=s;if(c||(c={}),g&&(c.flags=g),d&&(c.internalFlags=d&-9),h&&(c.leadingComments=Pr(h.slice(),c.leadingComments)),_&&(c.trailingComments=Pr(_.slice(),c.trailingComments)),S&&(c.commentRange=S),R&&(c.sourceMapRange=R),T&&(c.tokenSourceMapRanges=RU(T,c.tokenSourceMapRanges)),O!==void 0&&(c.constantValue=O),V)for(let Ie of V)c.helpers=ps(c.helpers,Ie);return M!==void 0&&(c.startsOnNewLine=M),ee!==void 0&&(c.snippetElement=ee),re&&(c.classThis=re),ge&&(c.assignedName=ge),c}function RU(s,c){c||(c=[]);for(let g in s)c[g]=s[g];return c}function u_(s){if(s.emitNode)pe.assert(!(s.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(NL(s)){if(s.kind===308)return s.emitNode={annotatedNodes:[s]};let c=ms(eu(ms(s)))??pe.fail("Could not determine parsed source file.");u_(c).annotatedNodes.push(s)}s.emitNode={}}return s.emitNode}function ju(s){var c,g;let d=(g=(c=ms(eu(s)))==null?void 0:c.emitNode)==null?void 0:g.annotatedNodes;if(d)for(let h of d)h.emitNode=void 0}function Tz(s){let c=u_(s);return c.flags|=3072,c.leadingComments=void 0,c.trailingComments=void 0,s}function ti(s,c){return u_(s).flags=c,s}function Ww(s,c){let g=u_(s);return g.flags=g.flags|c,s}function Cie(s,c){return u_(s).internalFlags=c,s}function L3(s,c){let g=u_(s);return g.internalFlags=g.internalFlags|c,s}function zT(s){var c;return((c=s.emitNode)==null?void 0:c.sourceMapRange)??s}function Yg(s,c){return u_(s).sourceMapRange=c,s}function Rz(s,c){var g,d;return(d=(g=s.emitNode)==null?void 0:g.tokenSourceMapRanges)==null?void 0:d[c]}function hEe(s,c,g){let d=u_(s),h=d.tokenSourceMapRanges??(d.tokenSourceMapRanges=[]);return h[c]=g,s}function V3(s){var c;return(c=s.emitNode)==null?void 0:c.startsOnNewLine}function Yd(s,c){return u_(s).startsOnNewLine=c,s}function ZB(s){var c;return((c=s.emitNode)==null?void 0:c.commentRange)??s}function yh(s,c){return u_(s).commentRange=c,s}function W3(s){var c;return(c=s.emitNode)==null?void 0:c.leadingComments}function LB(s,c){return u_(s).leadingComments=c,s}function qT(s,c,g,d){return LB(s,Ft(W3(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function NU(s){var c;return(c=s.emitNode)==null?void 0:c.trailingComments}function O3(s,c){return u_(s).trailingComments=c,s}function Nz(s,c,g,d){return O3(s,Ft(NU(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function i9e(s,c){LB(s,W3(c)),O3(s,NU(c));let g=u_(c);return g.leadingComments=void 0,g.trailingComments=void 0,s}function s9e(s){var c;return(c=s.emitNode)==null?void 0:c.constantValue}function o9e(s,c){let g=u_(s);return g.constantValue=c,s}function uQ(s,c){let g=u_(s);return g.helpers=Ft(g.helpers,c),s}function bN(s,c){if(zt(c)){let g=u_(s);for(let d of c)g.helpers=ps(g.helpers,d)}return s}function B$e(s,c){var g;let d=(g=s.emitNode)==null?void 0:g.helpers;return d?Xl(d,c):!1}function mEe(s){var c;return(c=s.emitNode)==null?void 0:c.helpers}function a9e(s,c,g){let d=s.emitNode,h=d&&d.helpers;if(!zt(h))return;let _=u_(c),S=0;for(let R=0;R0&&(h[R-S]=T)}S>0&&(h.length-=S)}function CEe(s){var c;return(c=s.emitNode)==null?void 0:c.snippetElement}function _Ee(s,c){let g=u_(s);return g.snippetElement=c,s}function yEe(s){return u_(s).internalFlags|=4,s}function c9e(s,c){let g=u_(s);return g.typeNode=c,s}function l9e(s){var c;return(c=s.emitNode)==null?void 0:c.typeNode}function Vx(s,c){return u_(s).identifierTypeArguments=c,s}function P3(s){var c;return(c=s.emitNode)==null?void 0:c.identifierTypeArguments}function _ie(s,c){return u_(s).autoGenerate=c,s}function w$e(s){var c;return(c=s.emitNode)==null?void 0:c.autoGenerate}function u9e(s,c){return u_(s).generatedImportReference=c,s}function g9e(s){var c;return(c=s.emitNode)==null?void 0:c.generatedImportReference}var A9e=(s=>(s.Field="f",s.Method="m",s.Accessor="a",s))(A9e||{});function d9e(s){let c=s.factory,g=LA(()=>Cie(c.createTrue(),8)),d=LA(()=>Cie(c.createFalse(),8));return{getUnscopedHelperName:h,createDecorateHelper:_,createMetadataHelper:S,createParamHelper:R,createESDecorateHelper:Ie,createRunInitializersHelper:_e,createAssignHelper:Ee,createAwaitHelper:Ne,createAsyncGeneratorHelper:Te,createAsyncDelegatorHelper:Ze,createAsyncValuesHelper:Pe,createRestHelper:Ke,createAwaiterHelper:et,createExtendsHelper:Ye,createTemplateObjectHelper:Tt,createSpreadArrayHelper:at,createPropKeyHelper:Qe,createSetFunctionNameHelper:Ct,createValuesHelper:mt,createReadHelper:yt,createGeneratorHelper:Rt,createImportStarHelper:Lt,createImportStarCallbackHelper:je,createImportDefaultHelper:Wt,createExportStarHelper:_r,createClassPrivateFieldGetHelper:Gt,createClassPrivateFieldSetHelper:it,createClassPrivateFieldInHelper:kt,createAddDisposableResourceHelper:tr,createDisposeResourcesHelper:ur,createRewriteRelativeImportExtensionsHelper:Gr};function h(dt){return ti(c.createIdentifier(dt),8196)}function _(dt,pr,ot,ir){s.requestEmitHelper(YWt);let qt=[];return qt.push(c.createArrayLiteralExpression(dt,!0)),qt.push(pr),ot&&(qt.push(ot),ir&&qt.push(ir)),c.createCallExpression(h("__decorate"),void 0,qt)}function S(dt,pr){return s.requestEmitHelper(QWt),c.createCallExpression(h("__metadata"),void 0,[c.createStringLiteral(dt),pr])}function R(dt,pr,ot){return s.requestEmitHelper(XWt),gn(c.createCallExpression(h("__param"),void 0,[c.createNumericLiteral(pr+""),dt]),ot)}function T(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral("class")),c.createPropertyAssignment(c.createIdentifier("name"),dt.name),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function O(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("get",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,pr))}function V(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("set",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj")),c.createParameterDeclaration(void 0,void 0,c.createIdentifier("value"))],void 0,void 0,c.createBlock([c.createExpressionStatement(c.createAssignment(pr,c.createIdentifier("value")))])))}function M(dt){let pr=dt.computed?dt.name:Ir(dt.name)?c.createStringLiteralFromNode(dt.name):dt.name;return c.createPropertyAssignment("has",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,c.createBinaryExpression(pr,103,c.createIdentifier("obj"))))}function ee(dt,pr){let ot=[];return ot.push(M(dt)),pr.get&&ot.push(O(dt)),pr.set&&ot.push(V(dt)),c.createObjectLiteralExpression(ot)}function re(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral(dt.kind)),c.createPropertyAssignment(c.createIdentifier("name"),dt.name.computed?dt.name.name:c.createStringLiteralFromNode(dt.name.name)),c.createPropertyAssignment(c.createIdentifier("static"),dt.static?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("private"),dt.private?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("access"),ee(dt.name,dt.access)),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function ge(dt){return dt.kind==="class"?T(dt):re(dt)}function Ie(dt,pr,ot,ir,qt,Yt){return s.requestEmitHelper(JWt),c.createCallExpression(h("__esDecorate"),void 0,[dt??c.createNull(),pr??c.createNull(),ot,ge(ir),qt,Yt])}function _e(dt,pr,ot){return s.requestEmitHelper(Wx),c.createCallExpression(h("__runInitializers"),void 0,ot?[dt,pr,ot]:[dt,pr])}function Ee(dt){return Hg(s.getCompilerOptions())>=2?c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"assign"),void 0,dt):(s.requestEmitHelper(UWt),c.createCallExpression(h("__assign"),void 0,dt))}function Ne(dt){return s.requestEmitHelper(nd),c.createCallExpression(h("__await"),void 0,[dt])}function Te(dt,pr){return s.requestEmitHelper(nd),s.requestEmitHelper(hde),(dt.emitNode||(dt.emitNode={})).flags|=1572864,c.createCallExpression(h("__asyncGenerator"),void 0,[pr?c.createThis():c.createVoidZero(),c.createIdentifier("arguments"),dt])}function Ze(dt){return s.requestEmitHelper(nd),s.requestEmitHelper(ZF),c.createCallExpression(h("__asyncDelegator"),void 0,[dt])}function Pe(dt){return s.requestEmitHelper(KWt),c.createCallExpression(h("__asyncValues"),void 0,[dt])}function Ke(dt,pr,ot,ir){s.requestEmitHelper(jWt);let qt=[],Yt=0;for(let Tr=0;Tr{let d="";for(let h=0;h=s||c===-1),{pos:s,end:c}}function GAe(s,c){return Ly(s.pos,c)}function tk(s,c){return Ly(c,s.end)}function rk(s){let c=HB(s)?be(s.modifiers,Eo):void 0;return c&&!xB(c.end)?tk(s,c.end):s}function hv(s){if(pi(s)||gu(s))return tk(s,s.name.pos);let c=HB(s)?li(s.modifiers):void 0;return c&&!xB(c.end)?tk(s,c.end):rk(s)}function qL(s,c){return Ly(s,s+Vi(c).length)}function x3(s,c){return fLe(s,s,c)}function nz(s,c,g){return vE(iz(s,g,!1),iz(c,g,!1),g)}function pLe(s,c,g){return vE(s.end,c.end,g)}function fLe(s,c,g){return vE(iz(s,g,!1),c.end,g)}function Jne(s,c,g){return vE(s.end,iz(c,g,!1),g)}function G3(s,c,g,d){let h=iz(c,g,d);return ec(g,s.end,h)}function ILe(s,c,g){return ec(g,s.end,c.end)}function FAe(s,c){return!vE(s.pos,s.end,c)}function vE(s,c,g){return ec(g,s,c)===0}function iz(s,c,g){return xB(s.pos)?-1:Yu(c.text,s.pos,!1,g)}function hLe(s,c,g,d){let h=Yu(g.text,s,!1,d),_=t$e(h,c,g);return ec(g,_??c,h)}function Tbe(s,c,g,d){let h=Yu(g.text,s,!1,d);return ec(g,s,Math.min(c,h))}function gy(s,c){return ZAe(s.pos,s.end,c)}function ZAe(s,c,g){return s<=g.pos&&c>=g.end}function t$e(s,c=0,g){for(;s-- >c;)if(!dc(g.text.charCodeAt(s)))return s}function Rbe(s){let c=eu(s);if(c)switch(c.parent.kind){case 267:case 268:return c===c.parent.name}return!1}function mU(s){return Le(s.declarations,Une)}function Une(s){return nc(s)&&s.initializer!==void 0}function Nbe(s){return s.watch&&Da(s,"watch")}function mv(s){s.close()}function aI(s){return s.flags&33554432?s.links.checkFlags:0}function p2(s,c=!1){if(s.valueDeclaration){let g=c&&s.declarations&&de(s.declarations,kg)||s.flags&32768&&de(s.declarations,wg)||s.valueDeclaration,d=Hc(g);return s.parent&&s.parent.flags&32?d:d&-8}if(aI(s)&6){let g=s.links.checkFlags,d=g&1024?2:g&256?1:4,h=g&2048?256:0;return d|h}return s.flags&4194304?257:0}function VC(s,c){return s.flags&2097152?c.getAliasedSymbol(s):s}function CU(s){return s.exportSymbol?s.exportSymbol.flags|s.flags:s.flags}function LAe(s){return sz(s)===1}function F3(s){return sz(s)!==0}function sz(s){let{parent:c}=s;switch(c?.kind){case 218:return sz(c);case 226:case 225:let{operator:g}=c;return g===46||g===47?2:0;case 227:let{left:d,operatorToken:h}=c;return d===s&&ek(h.kind)?h.kind===64?1:2:0;case 212:return c.name!==s?0:sz(c);case 304:{let _=sz(c.parent);return s===c.name?cWt(_):_}case 305:return s===c.objectAssignmentInitializer?0:sz(c.parent);case 210:return sz(c);case 250:case 251:return s===c.initializer?1:0;default:return 0}}function cWt(s){switch(s){case 0:return 1;case 1:return 0;case 2:return 2;default:return pe.assertNever(s)}}function VAe(s,c){if(!s||!c||Object.keys(s).length!==Object.keys(c).length)return!1;for(let g in s)if(typeof s[g]=="object"){if(!VAe(s[g],c[g]))return!1}else if(typeof s[g]!="function"&&s[g]!==c[g])return!1;return!0}function Vy(s,c){s.forEach(c),s.clear()}function hN(s,c,g){let{onDeleteValue:d,onExistingValue:h}=g;s.forEach((_,S)=>{var R;c?.has(S)?h&&h(_,(R=c.get)==null?void 0:R.call(c,S),S):(s.delete(S),d(_,S))})}function oz(s,c,g){hN(s,c,g);let{createNewValue:d}=g;c?.forEach((h,_)=>{s.has(_)||s.set(_,d(_,h))})}function Dbe(s){if(s.flags&32){let c=mN(s);return!!c&&Ga(c,64)}return!1}function mN(s){var c;return(c=s.declarations)==null?void 0:c.find(xa)}function la(s){return s.flags&3899393?s.objectFlags:0}function WAe(s){return!!s&&!!s.declarations&&!!s.declarations[0]&&wEe(s.declarations[0])}function mLe({moduleSpecifier:s}){return Lg(s)?s.text:Fp(s)}function kbe(s){let c;return Lu(s,g=>{p1(g)&&(c=g)},g=>{for(let d=g.length-1;d>=0;d--)if(p1(g[d])){c=g[d];break}}),c}function Wy(s,c){return s.has(c)?!1:(s.add(c),!0)}function rQ(s){return xa(s)||p_(s)||bh(s)}function OAe(s){return s>=183&&s<=206||s===133||s===159||s===150||s===163||s===151||s===136||s===154||s===155||s===116||s===157||s===146||s===141||s===234||s===313||s===314||s===315||s===316||s===317||s===318||s===319}function bp(s){return s.kind===212||s.kind===213}function xbe(s){return s.kind===212?s.name:(pe.assert(s.kind===213),s.argumentExpression)}function Kne(s){return s.kind===276||s.kind===280}function _U(s){for(;bp(s);)s=s.expression;return s}function CLe(s,c){if(bp(s.parent)&&Ebe(s))return g(s.parent);function g(d){if(d.kind===212){let h=c(d.name);if(h!==void 0)return h}else if(d.kind===213)if(Ir(d.argumentExpression)||_A(d.argumentExpression)){let h=c(d.argumentExpression);if(h!==void 0)return h}else return;if(bp(d.expression))return g(d.expression);if(Ir(d.expression))return c(d.expression)}}function yU(s,c){for(;;){switch(s.kind){case 226:s=s.operand;continue;case 227:s=s.left;continue;case 228:s=s.condition;continue;case 216:s=s.tag;continue;case 214:if(c)return s;case 235:case 213:case 212:case 236:case 356:case 239:s=s.expression;continue}return s}}function lWt(s,c){this.flags=s,this.escapedName=c,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.lastAssignmentPos=void 0,this.links=void 0}function uWt(s,c){this.flags=c,(pe.isDebugging||ki)&&(this.checker=s)}function gWt(s,c){this.flags=c,pe.isDebugging&&(this.checker=s)}function Gbe(s,c,g){this.pos=c,this.end=g,this.kind=s,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 AWt(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function r$e(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function dWt(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}var WC={getNodeConstructor:()=>Gbe,getTokenConstructor:()=>AWt,getIdentifierConstructor:()=>r$e,getPrivateIdentifierConstructor:()=>Gbe,getSourceFileConstructor:()=>Gbe,getSymbolConstructor:()=>lWt,getTypeConstructor:()=>uWt,getSignatureConstructor:()=>gWt,getSourceMapSourceConstructor:()=>dWt},n$e=[];function i$e(s){n$e.push(s),s(WC)}function _Le(s){Object.assign(WC,s),F(n$e,c=>c(WC))}function CN(s,c){return s.replace(/\{(\d+)\}/g,(g,d)=>""+pe.checkDefined(c[+d]))}var PAe;function bU(s){PAe=s}function yLe(s){!PAe&&s&&(PAe=s())}function Bu(s){return PAe&&PAe[s.key]||s.message}function nQ(s,c,g,d,h,..._){g+d>c.length&&(d=c.length-g),he(c,g,d);let S=Bu(h);return zt(_)&&(S=CN(S,_)),{file:void 0,start:g,length:d,messageText:S,category:h.category,code:h.code,reportsUnnecessary:h.reportsUnnecessary,fileName:s}}function pWt(s){return s.file===void 0&&s.start!==void 0&&s.length!==void 0&&typeof s.fileName=="string"}function s$e(s,c){let g=c.fileName||"",d=c.text.length;pe.assertEqual(s.fileName,g),pe.assertLessThanOrEqual(s.start,d),pe.assertLessThanOrEqual(s.start+s.length,d);let h={file:c,start:s.start,length:s.length,messageText:s.messageText,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary};if(s.relatedInformation){h.relatedInformation=[];for(let _ of s.relatedInformation)pWt(_)&&_.fileName===g?(pe.assertLessThanOrEqual(_.start,d),pe.assertLessThanOrEqual(_.start+_.length,d),h.relatedInformation.push(s$e(_,c))):h.relatedInformation.push(_)}return h}function $L(s,c){let g=[];for(let d of s)g.push(s$e(d,c));return g}function rm(s,c,g,d,...h){he(s.text,c,g);let _=Bu(d);return zt(h)&&(_=CN(_,h)),{file:s,start:c,length:g,messageText:_,category:d.category,code:d.code,reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated}}function iQ(s,...c){let g=Bu(s);return zt(c)&&(g=CN(g,c)),g}function kf(s,...c){let g=Bu(s);return zt(c)&&(g=CN(g,c)),{file:void 0,start:void 0,length:void 0,messageText:g,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated}}function MAe(s,c){return{file:void 0,start:void 0,length:void 0,code:s.code,category:s.category,messageText:s.next?s:s.messageText,relatedInformation:c}}function wu(s,c,...g){let d=Bu(c);return zt(g)&&(d=CN(d,g)),{messageText:d,category:c.category,code:c.code,next:s===void 0||Array.isArray(s)?s:[s]}}function jne(s,c){let g=s;for(;g.next;)g=g.next[0];g.next=[c]}function Fbe(s){return s.file?s.file.path:void 0}function az(s,c){return bLe(s,c)||fWt(s,c)||0}function bLe(s,c){let g=Zbe(s),d=Zbe(c);return Ca(Fbe(s),Fbe(c))||Zt(s.start,c.start)||Zt(s.length,c.length)||Zt(g,d)||IWt(s,c)||0}function fWt(s,c){return!s.relatedInformation&&!c.relatedInformation?0:s.relatedInformation&&c.relatedInformation?Zt(c.relatedInformation.length,s.relatedInformation.length)||F(s.relatedInformation,(g,d)=>{let h=c.relatedInformation[d];return az(g,h)})||0:s.relatedInformation?-1:1}function IWt(s,c){let g=Lbe(s),d=Lbe(c);typeof g!="string"&&(g=g.messageText),typeof d!="string"&&(d=d.messageText);let h=typeof s.messageText!="string"?s.messageText.next:void 0,_=typeof c.messageText!="string"?c.messageText.next:void 0,S=Ca(g,d);return S||(S=hWt(h,_),S)?S:s.canonicalHead&&!c.canonicalHead?-1:c.canonicalHead&&!s.canonicalHead?1:0}function hWt(s,c){return s===void 0&&c===void 0?0:s===void 0?1:c===void 0?-1:o$e(s,c)||a$e(s,c)}function o$e(s,c){if(s===void 0&&c===void 0)return 0;if(s===void 0)return 1;if(c===void 0)return-1;let g=Zt(c.length,s.length);if(g)return g;for(let d=0;d{h.externalModuleIndicator=VEe(h)||!h.isDeclarationFile||void 0};case 1:return h=>{h.externalModuleIndicator=VEe(h)};case 2:let c=[VEe];(s.jsx===4||s.jsx===5)&&c.push(CWt),c.push(_Wt);let g=Qp(...c);return h=>void(h.externalModuleIndicator=g(h,s))}}function Vbe(s){let c=F_(s);return 3<=c&&c<=99||lz(s)||$ne(s)}function _$r(s){return s}var OC={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:s=>!!(s.allowImportingTsExtensions||s.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:s=>(s.target===0?void 0:s.target)??(s.module===100&&9||s.module===101&&9||s.module===102&&10||s.module===199&&99||1)},module:{dependencies:["target"],computeValue:s=>typeof s.module=="number"?s.module:OC.target.computeValue(s)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:s=>{let c=s.moduleResolution;if(c===void 0)switch(OC.module.computeValue(s)){case 1:c=2;break;case 100:case 101:case 102:c=3;break;case 199:c=99;break;case 200:c=100;break;default:c=1;break}return c}},moduleDetection:{dependencies:["module","target"],computeValue:s=>{if(s.moduleDetection!==void 0)return s.moduleDetection;let c=OC.module.computeValue(s);return 100<=c&&c<=199?3:2}},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:s=>!!(s.isolatedModules||s.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:s=>{if(s.esModuleInterop!==void 0)return s.esModuleInterop;switch(OC.module.computeValue(s)){case 100:case 101:case 102:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:s=>s.allowSyntheticDefaultImports!==void 0?s.allowSyntheticDefaultImports:OC.esModuleInterop.computeValue(s)||OC.module.computeValue(s)===4||OC.moduleResolution.computeValue(s)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:s=>{let c=OC.moduleResolution.computeValue(s);if(!EU(c))return!1;if(s.resolvePackageJsonExports!==void 0)return s.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:s=>{let c=OC.moduleResolution.computeValue(s);if(!EU(c))return!1;if(s.resolvePackageJsonImports!==void 0)return s.resolvePackageJsonImports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:s=>{if(s.resolveJsonModule!==void 0)return s.resolveJsonModule;switch(OC.module.computeValue(s)){case 102:case 199:return!0}return OC.moduleResolution.computeValue(s)===100}},declaration:{dependencies:["composite"],computeValue:s=>!!(s.declaration||s.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:s=>!!(s.preserveConstEnums||OC.isolatedModules.computeValue(s))},incremental:{dependencies:["composite"],computeValue:s=>!!(s.incremental||s.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:s=>!!(s.declarationMap&&OC.declaration.computeValue(s))},allowJs:{dependencies:["checkJs"],computeValue:s=>s.allowJs===void 0?!!s.checkJs:s.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:s=>s.useDefineForClassFields===void 0?OC.target.computeValue(s)>=9:s.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:s=>u_(s,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:s=>u_(s,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:s=>u_(s,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:s=>u_(s,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:s=>u_(s,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:s=>u_(s,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:s=>u_(s,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:s=>u_(s,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:s=>u_(s,"useUnknownInCatchVariables")}},cz=OC,ELe=OC.allowImportingTsExtensions.computeValue,Hg=OC.target.computeValue,a0=OC.module.computeValue,F_=OC.moduleResolution.computeValue,SLe=OC.moduleDetection.computeValue,uS=OC.isolatedModules.computeValue,Vw=OC.esModuleInterop.computeValue,sQ=OC.allowSyntheticDefaultImports.computeValue,lz=OC.resolvePackageJsonExports.computeValue,$ne=OC.resolvePackageJsonImports.computeValue,WW=OC.resolveJsonModule.computeValue,Oy=OC.declaration.computeValue,Vb=OC.preserveConstEnums.computeValue,OW=OC.incremental.computeValue,YAe=OC.declarationMap.computeValue,FF=OC.allowJs.computeValue,eie=OC.useDefineForClassFields.computeValue;function tie(s){return s>=5&&s<=99}function QAe(s){switch(a0(s)){case 0:case 4:case 3:return!1}return!0}function vLe(s){return s.allowUnreachableCode===!1}function BLe(s){return s.allowUnusedLabels===!1}function EU(s){return s>=3&&s<=99||s===100}function wLe(s){return 101<=s&&s<=199||s===200||s===99}function u_(s,c){return s[c]===void 0?!!s.strict:!!s[c]}function XAe(s){return Fh(uet.type,(c,g)=>c===s?g:void 0)}function Wbe(s){return s.useDefineForClassFields!==!1&&Hg(s)>=9}function Obe(s,c){return w0(c,s,UOt)}function TLe(s,c){return w0(c,s,KOt)}function RLe(s,c){return w0(c,s,jOt)}function uz(s,c){return c.strictFlag?u_(s,c.name):c.allowJsFlag?FF(s):s[c.name]}function JAe(s){let c=s.jsx;return c===2||c===4||c===5}function rie(s,c){let g=c?.pragmas.get("jsximportsource"),d=Ki(g)?g[g.length-1]:g,h=c?.pragmas.get("jsxruntime"),_=Ki(h)?h[h.length-1]:h;if(_?.arguments.factory!=="classic")return s.jsx===4||s.jsx===5||s.jsxImportSource||d||_?.arguments.factory==="automatic"?d?.arguments.factory||s.jsxImportSource||"react":void 0}function nie(s,c){return s?`${s}/${c.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function Pbe(s){let c=!1;for(let g=0;gh,getSymlinkedDirectories:()=>g,getSymlinkedDirectoriesByRealpath:()=>d,setSymlinkedFile:(T,O)=>(h||(h=new Map)).set(T,O),setSymlinkedDirectory:(T,O)=>{let V=Pu(T,s,c);_z(V)||(V=Cp(V),O!==!1&&!g?.has(V)&&(d||(d=Al())).add(O.realPath,T),(g||(g=new Map)).set(V,O))},setSymlinksFromResolutions(T,O,V){pe.assert(!_),_=!0,T(M=>R(this,M.resolvedModule)),O(M=>R(this,M.resolvedTypeReferenceDirective)),V.forEach(M=>R(this,M.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>_,setSymlinksFromResolution(T){R(this,T)},hasAnySymlinks:S};function S(){return!!h?.size||!!g&&!!Fh(g,T=>!!T)}function R(T,O){if(!O||!O.originalPath||!O.resolvedFileName)return;let{resolvedFileName:V,originalPath:M}=O;T.setSymlinkedFile(Pu(M,s,c),V);let[ee,re]=yWt(V,M,s,c)||E;ee&&re&&T.setSymlinkedDirectory(re,{real:Cp(ee),realPath:Cp(Pu(ee,s,c))})}}function yWt(s,c,g,d){let h=kp(Xc(s,g)),_=kp(Xc(c,g)),S=!1;for(;h.length>=2&&_.length>=2&&!l$e(h[h.length-2],d)&&!l$e(_[_.length-2],d)&&d(h[h.length-1])===d(_[_.length-1]);)h.pop(),_.pop(),S=!0;return S?[Fm(h),Fm(_)]:void 0}function l$e(s,c){return s!==void 0&&(c(s)==="node_modules"||Ac(s,"@"))}function bWt(s){return n0(s.charCodeAt(0))?s.slice(1):void 0}function UAe(s,c,g){let d=US(s,c,g);return d===void 0?void 0:bWt(d)}var NLe=/[^\w\s/]/g;function u$e(s){return s.replace(NLe,EWt)}function EWt(s){return"\\"+s}var SWt=[42,63],vWt=["node_modules","bower_components","jspm_packages"],DLe=`(?!(?:${vWt.join("|")})(?:/|$))`,g$e={singleAsteriskRegexFragment:"(?:[^./]|(?:\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(?:/${DLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>xLe(s,g$e.singleAsteriskRegexFragment)},A$e={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(?:/${DLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>xLe(s,A$e.singleAsteriskRegexFragment)},Hbe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(?:/.+?)?",replaceWildcardCharacter:s=>xLe(s,Hbe.singleAsteriskRegexFragment)},kLe={files:g$e,directories:A$e,exclude:Hbe};function gz(s,c,g){let d=iie(s,c,g);return!d||!d.length?void 0:`^(?:${d.map(S=>`(?:${S})`).join("|")})${g==="exclude"?"(?:$|/)":"$"}`}function iie(s,c,g){if(!(s===void 0||s.length===0))return jt(s,d=>d&&KAe(d,c,g,kLe[g]))}function Ybe(s){return!/[.*?]/.test(s)}function Qbe(s,c,g){let d=s&&KAe(s,c,g,kLe[g]);return d&&`^(?:${d})${g==="exclude"?"(?:$|/)":"$"}`}function KAe(s,c,g,{singleAsteriskRegexFragment:d,doubleAsteriskRegexFragment:h,replaceWildcardCharacter:_}=kLe[g]){let S="",R=!1,T=mB(s,c),O=Ei(T);if(g!=="exclude"&&O==="**")return;T[0]=oy(T[0]),Ybe(O)&&T.push("**","*");let V=0;for(let M of T){if(M==="**")S+=h;else if(g==="directories"&&(S+="(?:",V++),R&&(S+=cg),g!=="exclude"){let ee="";M.charCodeAt(0)===42?(ee+="(?:[^./]"+d+")?",M=M.substr(1)):M.charCodeAt(0)===63&&(ee+="[^./]",M=M.substr(1)),ee+=M.replace(NLe,_),ee!==M&&(S+=DLe),S+=ee}else S+=M.replace(NLe,_);R=!0}for(;V>0;)S+=")?",V--;return S}function xLe(s,c){return s==="*"?c:s==="?"?"[^/]":"\\"+s}function jAe(s,c,g,d,h){s=su(s),h=su(h);let _=To(h,s);return{includeFilePatterns:lt(iie(g,_,"files"),S=>`^${S}$`),includeFilePattern:gz(g,_,"files"),includeDirectoryPattern:gz(g,_,"directories"),excludePattern:gz(c,_,"exclude"),basePaths:BWt(s,g,d)}}function nk(s,c){return new RegExp(s,c?"":"i")}function Xbe(s,c,g,d,h,_,S,R,T){s=su(s),_=su(_);let O=jAe(s,g,d,h,_),V=O.includeFilePatterns&&O.includeFilePatterns.map(Ee=>nk(Ee,h)),M=O.includeDirectoryPattern&&nk(O.includeDirectoryPattern,h),ee=O.excludePattern&&nk(O.excludePattern,h),re=V?V.map(()=>[]):[[]],ge=new Map,Ie=bd(h);for(let Ee of O.basePaths)_e(Ee,To(_,Ee),S);return Sr(re);function _e(Ee,Ne,Te){let Ze=Ie(T(Ne));if(ge.has(Ze))return;ge.set(Ze,!0);let{files:Pe,directories:Ke}=R(Ee);for(let et of yo(Pe,Ca)){let Ye=To(Ee,et),Tt=To(Ne,et);if(!(c&&!Iu(Ye,c))&&!(ee&&ee.test(Tt)))if(!V)re[0].push(Ye);else{let at=Se(V,Qe=>Qe.test(Tt));at!==-1&&re[at].push(Ye)}}if(!(Te!==void 0&&(Te--,Te===0)))for(let et of yo(Ke,Ca)){let Ye=To(Ee,et),Tt=To(Ne,et);(!M||M.test(Tt))&&(!ee||!ee.test(Tt))&&_e(Ye,Tt,Te)}}}function BWt(s,c,g){let d=[s];if(c){let h=[];for(let _ of c){let S=Up(_)?_:su(To(s,_));h.push(wWt(S))}h.sort(gd(!g));for(let _ of h)ue(d,S=>!zh(S,_,s,!g))&&d.push(_)}return d}function wWt(s){let c=tt(s,SWt);return c<0?B0(s)?oy(Mo(s)):s:s.substring(0,s.lastIndexOf(cg,c))}function zAe(s,c){return c||qAe(s)||3}function qAe(s){switch(s.substr(s.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}}var $Ae=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],Jbe=Sr($Ae),TWt=[...$Ae,[".json"]],GLe=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],RWt=[[".js",".jsx"],[".mjs"],[".cjs"]],SU=Sr(RWt),ede=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],NWt=[...ede,[".json"]],tde=[".d.ts",".d.cts",".d.mts"],sie=[".ts",".cts",".mts",".tsx"],rde=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function Az(s,c){let g=s&&FF(s);if(!c||c.length===0)return g?ede:$Ae;let d=g?ede:$Ae,h=Sr(d);return[...d,...Xt(c,S=>S.scriptKind===7||g&&DWt(S.scriptKind)&&!h.includes(S.extension)?[S.extension]:void 0)]}function dz(s,c){return!s||!WW(s)?c:c===ede?NWt:c===$Ae?TWt:[...c,[".json"]]}function DWt(s){return s===1||s===2}function _N(s){return zt(SU,c=>lA(s,c))}function Z3(s){return zt(Jbe,c=>lA(s,c))}function FLe(s){return zt(sie,c=>lA(s,c))&&!MC(s)}var ZLe=(s=>(s[s.Minimal=0]="Minimal",s[s.Index=1]="Index",s[s.JsExtension=2]="JsExtension",s[s.TsExtension=3]="TsExtension",s))(ZLe||{});function kWt({imports:s},c=Qp(_N,Z3)){return J(s,({text:g})=>mp(g)&&!Iu(g,rde)?c(g):void 0)||!1}function LLe(s,c,g,d){let h=F_(g),_=3<=h&&h<=99;if(s==="js"||c===99&&_)return Xie(g)&&S()!==2?3:2;if(s==="minimal")return 0;if(s==="index")return 1;if(!Xie(g))return d&&kWt(d)?2:0;return S();function S(){let R=!1,T=d?.imports.length?d.imports:d&&o0(d)?xWt(d).map(O=>O.arguments[0]):E;for(let O of T)if(mp(O.text)){if(_&&c===1&&xtt(d,O,g)===99||Iu(O.text,rde))continue;if(Z3(O.text))return 3;_N(O.text)&&(R=!0)}return R?2:0}}function xWt(s){let c=0,g;for(let d of s.statements){if(c>3)break;mne(d)?g=Nn(g,d.declarationList.declarations.map(h=>h.initializer)):PC(d)&&uy(d.expression,!0)?g=Ft(g,d.expression):c++}return g||E}function Ube(s,c,g){if(!s)return!1;let d=Az(c,g);for(let h of Sr(dz(c,d)))if(lA(s,h))return!0;return!1}function d$e(s){let c=s.match(/\//g);return c?c.length:0}function oie(s,c){return Zt(d$e(s),d$e(c))}var VLe=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function c0(s){for(let c of VLe){let g=WLe(s,c);if(g!==void 0)return g}return s}function WLe(s,c){return lA(s,c)?aie(s,c):void 0}function aie(s,c){return s.substring(0,s.length-c.length)}function yN(s,c){return eS(s,c,VLe,!1)}function oQ(s){let c=s.indexOf("*");return c===-1?s:s.indexOf("*",c+1)!==-1?void 0:{prefix:s.substr(0,c),suffix:s.substr(c+1)}}var p$e=new WeakMap;function pz(s){let c=p$e.get(s);if(c!==void 0)return c;let g,d,h=yg(s);for(let _ of h){let S=oQ(_);S!==void 0&&(typeof S=="string"?(g??(g=new Set)).add(S):(d??(d=[])).push(S))}return p$e.set(s,c={matchableStringSet:g,patterns:d}),c}function xB(s){return!(s>=0)}function nde(s){return s===".ts"||s===".tsx"||s===".d.ts"||s===".cts"||s===".mts"||s===".d.mts"||s===".d.cts"||Ac(s,".d.")&&di(s,".ts")}function fz(s){return nde(s)||s===".json"}function Iz(s){let c=zT(s);return c!==void 0?c:pe.fail(`File ${s} has unknown extension.`)}function f$e(s){return zT(s)!==void 0}function zT(s){return de(VLe,c=>lA(s,c))}function hz(s,c){return s.checkJsDirective?s.checkJsDirective.enabled:c.checkJs}var Kbe={files:E,directories:E};function jbe(s,c){let{matchableStringSet:g,patterns:d}=s;if(g?.has(c))return c;if(!(d===void 0||d.length===0))return XA(d,h=>h,c)}function zbe(s,c){let g=s.indexOf(c);return pe.assert(g!==-1),s.slice(g)}function ug(s,...c){return c.length&&(s.relatedInformation||(s.relatedInformation=[]),pe.assert(s.relatedInformation!==E,"Diagnostic had empty array singleton for related info, but is still being constructed!"),s.relatedInformation.push(...c)),s}function OLe(s,c){pe.assert(s.length!==0);let g=c(s[0]),d=g;for(let h=1;hd&&(d=_)}return{min:g,max:d}}function qbe(s){return{pos:UD(s),end:s.end}}function $be(s,c){let g=c.pos-1,d=Math.min(s.text.length,Yu(s.text,c.end)+1);return{pos:g,end:d}}function L3(s,c,g){return I$e(s,c,g,!1)}function PLe(s,c,g){return I$e(s,c,g,!0)}function I$e(s,c,g,d){return c.skipLibCheck&&s.isDeclarationFile||c.skipDefaultLibCheck&&s.hasNoDefaultLib||!d&&c.noCheck||g.isSourceOfProjectReferenceRedirect(s.fileName)||!vU(s,c)}function vU(s,c){if(s.checkJsDirective&&s.checkJsDirective.enabled===!1)return!1;if(s.scriptKind===3||s.scriptKind===4||s.scriptKind===5)return!0;let d=(s.scriptKind===1||s.scriptKind===2)&&hz(s,c);return ZY(s,c.checkJs)||d||s.scriptKind===7}function ide(s,c){return s===c||typeof s=="object"&&s!==null&&typeof c=="object"&&c!==null&&Hu(s,c,ide)}function mz(s){let c;switch(s.charCodeAt(1)){case 98:case 66:c=1;break;case 111:case 79:c=3;break;case 120:case 88:c=4;break;default:let O=s.length-1,V=0;for(;s.charCodeAt(V)===48;)V++;return s.slice(V,O)||"0"}let g=2,d=s.length-1,h=(d-g)*c,_=new Uint16Array((h>>>4)+(h&15?1:0));for(let O=d-1,V=0;O>=g;O--,V+=c){let M=V>>>4,ee=s.charCodeAt(O),ge=(ee<=57?ee-48:10+ee-(ee<=70?65:97))<<(V&15);_[M]|=ge;let Ie=ge>>>16;Ie&&(_[M+1]|=Ie)}let S="",R=_.length-1,T=!0;for(;T;){let O=0;T=!1;for(let V=R;V>=0;V--){let M=O<<16|_[V],ee=M/10|0;_[V]=ee,O=M-ee*10,ee&&!T&&(R=V,T=!0)}S=O+S}return S}function PW({negative:s,base10Value:c}){return(s&&c!=="0"?"-":"")+c}function MLe(s){if(cie(s,!1))return eEe(s)}function eEe(s){let c=s.startsWith("-"),g=mz(`${c?s.slice(1):s}n`);return{negative:c,base10Value:g}}function cie(s,c){if(s==="")return!1;let g=Nb(99,!1),d=!0;g.setOnError(()=>d=!1),g.setText(s+"n");let h=g.scan(),_=h===41;_&&(h=g.scan());let S=g.getTokenFlags();return d&&h===10&&g.getTokenEnd()===s.length+1&&!(S&512)&&(!c||s===PW({negative:_,base10Value:mz(g.getTokenValue())}))}function e9(s){return!!(s.flags&33554432)||XY(s)||lAe(s)||ZWt(s)||FWt(s)||!(UT(s)||GWt(s))}function GWt(s){return Ir(s)&&u0(s.parent)&&s.parent.name===s}function FWt(s){for(;s.kind===80||s.kind===212;)s=s.parent;if(s.kind!==168)return!1;if(Ga(s.parent,64))return!0;let c=s.parent.parent.kind;return c===265||c===188}function ZWt(s){if(s.kind!==80)return!1;let c=ji(s.parent,g=>{switch(g.kind){case 299:return!0;case 212:case 234:return!1;default:return"quit"}});return c?.token===119||c?.parent.kind===265}function HLe(s){return oh(s)&&Ir(s.typeName)}function YLe(s,c=bg){if(s.length<2)return!0;let g=s[0];for(let d=1,h=s.length;ds.includes(c))}function JLe(s){if(!s.parent)return;switch(s.kind){case 169:let{parent:g}=s;return g.kind===196?void 0:g.typeParameters;case 170:return s.parent.parameters;case 205:return s.parent.templateSpans;case 240:return s.parent.templateSpans;case 171:{let{parent:d}=s;return mQ(d)?d.modifiers:void 0}case 299:return s.parent.heritageClauses}let{parent:c}=s;if(C3(s))return FU(s.parent)?void 0:s.parent.tags;switch(c.kind){case 188:case 265:return kx(s)?c.members:void 0;case 193:case 194:return c.types;case 190:case 210:case 357:case 276:case 280:return c.elements;case 211:case 293:return c.properties;case 214:case 215:return uc(s)?c.typeArguments:c.expression===s?void 0:c.arguments;case 285:case 289:return OJ(s)?c.children:void 0;case 287:case 286:return uc(s)?c.typeArguments:void 0;case 242:case 297:case 298:case 269:return c.statements;case 270:return c.clauses;case 264:case 232:return MI(s)?c.members:void 0;case 267:return YF(s)?c.members:void 0;case 308:return c.statements}}function sde(s){if(!s.typeParameters){if(zt(s.parameters,c=>!Zh(c)))return!0;if(s.kind!==220){let c=Nc(s.parameters);if(!(c&&DF(c)))return!0}}return!1}function yz(s){return s==="Infinity"||s==="-Infinity"||s==="NaN"}function ULe(s){return s.kind===261&&s.parent.kind===300}function ZF(s){return s.kind===219||s.kind===220}function MW(s){return s.replace(/\$/g,()=>"\\$")}function bN(s){return(+s).toString()===s}function lie(s,c,g,d,h){let _=h&&s==="new";return!_&&qh(s,c)?me.createIdentifier(s):!d&&!_&&bN(s)&&+s>=0?me.createNumericLiteral(+s):me.createStringLiteral(s,!!g)}function bz(s){return!!(s.flags&262144&&s.isThisType)}function ode(s){let c=0,g=0,d=0,h=0,_;(O=>{O[O.BeforeNodeModules=0]="BeforeNodeModules",O[O.NodeModules=1]="NodeModules",O[O.Scope=2]="Scope",O[O.PackageContent=3]="PackageContent"})(_||(_={}));let S=0,R=0,T=0;for(;R>=0;)switch(S=R,R=s.indexOf("/",S+1),T){case 0:s.indexOf(Yx,S)===S&&(c=S,g=R,T=1);break;case 1:case 2:T===1&&s.charAt(S+1)==="@"?T=2:(d=R,T=3);break;case 3:s.indexOf(Yx,S)===S?T=1:T=3;break}return h=S,T>1?{topLevelNodeModulesIndex:c,topLevelPackageNameIndex:g,packageRootIndex:d,fileNameIndex:h}:void 0}function aQ(s){switch(s.kind){case 169:case 264:case 265:case 266:case 267:case 347:case 339:case 341:return!0;case 274:return s.phaseModifier===156;case 277:return s.parent.parent.phaseModifier===156;case 282:return s.parent.parent.isTypeOnly;default:return!1}}function uie(s){return J3(s)||Eh(s)||ah(s)||mm(s)||p_(s)||aQ(s)||Lh(s)&&!wF(s)&&!DB(s)}function gie(s){if(!vY(s))return!1;let{isBracketed:c,typeExpression:g}=s;return c||!!g&&g.type.kind===317}function nEe(s,c){if(s.length===0)return!1;let g=s.charCodeAt(0);return g===35?s.length>1&&Sd(s.charCodeAt(1),c):Sd(g,c)}function KLe(s){var c;return((c=CEe(s))==null?void 0:c.kind)===0}function ade(s){return Bo(s)&&(s.type&&s.type.kind===317||kL(s).some(gie))}function FB(s){switch(s.kind){case 173:case 172:return!!s.questionToken;case 170:return!!s.questionToken||ade(s);case 349:case 342:return gie(s);default:return!1}}function cde(s){let c=s.kind;return(c===212||c===213)&&bv(s.expression)}function iEe(s){return Bo(s)&&dI(s)&&jm(s)&&!!bF(s)}function sEe(s){return pe.checkDefined(lde(s))}function lde(s){let c=bF(s);return c&&c.typeExpression&&c.typeExpression.type}function Ez(s){return Ir(s)?s.escapedText:gS(s)}function Ww(s){return Ir(s)?Vo(s):Sz(s)}function jLe(s){let c=s.kind;return c===80||c===296}function gS(s){return`${s.namespace.escapedText}:${Vo(s.name)}`}function Sz(s){return`${Vo(s.namespace)}:${Vo(s.name)}`}function oEe(s){return Ir(s)?Vo(s):Sz(s)}function f2(s){return!!(s.flags&8576)}function I2(s){return s.flags&8192?s.escapedName:s.flags&384?pp(""+s.value):pe.fail()}function cQ(s){return!!s&&(jo(s)||Qg(s)||po(s))}function zLe(s){return s===void 0?!1:!!Kie(s.attributes)}var VWt=String.prototype.replace;function V3(s,c){return VWt.call(s,"*",c)}function ude(s){return Ir(s.name)?s.name.escapedText:pp(s.name.text)}function qLe(s){switch(s.kind){case 169:case 170:case 173:case 172:case 186:case 185:case 180:case 181:case 182:case 175:case 174:case 176:case 177:case 178:case 179:case 184:case 183:case 187:case 188:case 189:case 190:case 193:case 194:case 197:case 191:case 192:case 198:case 199:case 195:case 196:case 204:case 206:case 203:case 329:case 330:case 347:case 339:case 341:case 346:case 345:case 325:case 326:case 327:case 342:case 349:case 318:case 316:case 315:case 313:case 314:case 323:case 319:case 310:case 334:case 336:case 335:case 351:case 344:case 200:case 201:case 263:case 242:case 269:case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 252:case 253:case 254:case 255:case 256:case 257:case 258:case 259:case 261:case 209:case 264:case 265:case 266:case 267:case 268:case 273:case 272:case 279:case 278:case 243:case 260:case 283:return!0}return!1}function nm(s,c=!1,g=!1,d=!1){return{value:s,isSyntacticallyString:c,resolvedOtherFiles:g,hasExternalReferences:d}}function $Le({evaluateElementAccessExpression:s,evaluateEntityNameExpression:c}){function g(h,_){let S=!1,R=!1,T=!1;switch(h=JA(h),h.kind){case 225:let O=g(h.operand,_);if(R=O.resolvedOtherFiles,T=O.hasExternalReferences,typeof O.value=="number")switch(h.operator){case 40:return nm(O.value,S,R,T);case 41:return nm(-O.value,S,R,T);case 55:return nm(~O.value,S,R,T)}break;case 227:{let V=g(h.left,_),M=g(h.right,_);if(S=(V.isSyntacticallyString||M.isSyntacticallyString)&&h.operatorToken.kind===40,R=V.resolvedOtherFiles||M.resolvedOtherFiles,T=V.hasExternalReferences||M.hasExternalReferences,typeof V.value=="number"&&typeof M.value=="number")switch(h.operatorToken.kind){case 52:return nm(V.value|M.value,S,R,T);case 51:return nm(V.value&M.value,S,R,T);case 49:return nm(V.value>>M.value,S,R,T);case 50:return nm(V.value>>>M.value,S,R,T);case 48:return nm(V.value<=2)break;case 175:case 177:case 178:case 179:case 263:if(Ke&3&&it==="arguments"){yt=g;break e}break;case 219:if(Ke&3&&it==="arguments"){yt=g;break e}if(Ke&16){let ur=Ze.name;if(ur&&it===ur.escapedText){yt=Ze.symbol;break e}}break;case 171:Ze.parent&&Ze.parent.kind===170&&(Ze=Ze.parent),Ze.parent&&(MI(Ze.parent)||Ze.parent.kind===264)&&(Ze=Ze.parent);break;case 347:case 339:case 341:case 352:let tr=lU(Ze);tr&&(Ze=tr.parent);break;case 170:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&(Wt||(Wt=Ze));break;case 209:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&jL(Ze)&&!Wt&&(Wt=Ze);break;case 196:if(Ke&262144){let ur=Ze.typeParameter.name;if(ur&&it===ur.escapedText){yt=Ze.typeParameter.symbol;break e}}break;case 282:Rt&&Rt===Ze.propertyName&&Ze.parent.parent.moduleSpecifier&&(Ze=Ze.parent.parent.parent);break}Ne(Ze,Rt)&&(Lt=Ze),Rt=Ze,Ze=MB(Ze)?fAe(Ze)||Ze.parent:(dS(Ze)||E9e(Ze))&&XL(Ze)||Ze.parent}if(Ye&&yt&&(!Lt||yt!==Lt.symbol)&&(yt.isReferenced|=Ke),!yt){if(Rt&&(pe.assertNode(Rt,cl),Rt.commonJsModuleIndicator&&it==="exports"&&Ke&Rt.symbol.flags))return Rt.symbol;Tt||(yt=S(_,it,Ke))}if(!yt&&mt&&Bo(mt)&&mt.parent&&uy(mt.parent,!1))return c;if(et){if(je&&O(mt,it,je,yt))return;yt?M(mt,yt,Ke,Rt,Wt,_r):V(mt,Pe,Ke,et)}return yt}function _e(Ze,Pe,Ke){let et=Hg(s),Ye=Pe;if(Si(Ke)&&Ye.body&&Ze.valueDeclaration&&Ze.valueDeclaration.pos>=Ye.body.pos&&Ze.valueDeclaration.end<=Ye.body.end&&et>=2){let Qe=T(Ye);return Qe===void 0&&(Qe=F(Ye.parameters,Tt)||!1,R(Ye,Qe)),!Qe}return!1;function Tt(Qe){return at(Qe.name)||!!Qe.initializer&&at(Qe.initializer)}function at(Qe){switch(Qe.kind){case 220:case 219:case 263:case 177:return!1;case 175:case 178:case 179:case 304:return at(Qe.name);case 173:return tm(Qe)?!re:at(Qe.name);default:return NJ(Qe)||LC(Qe)?et<7:mg(Qe)&&Qe.dotDotDotToken&&$m(Qe.parent)?et<4:uc(Qe)?!1:Lu(Qe,at)||!1}}}function Ee(Ze,Pe){return Ze.kind!==220&&Ze.kind!==219?Pw(Ze)||(Gd(Ze)||Ze.kind===173&&!lg(Ze))&&(!Pe||Pe!==Ze.name):Pe&&Pe===Ze.name?!1:Ze.asteriskToken||Ga(Ze,1024)?!0:!HL(Ze)}function Ne(Ze,Pe){switch(Ze.kind){case 170:return!!Pe&&Pe===Ze.name;case 263:case 264:case 265:case 267:case 266:case 268:return!0;default:return!1}}function Te(Ze,Pe){if(Ze.declarations){for(let Ke of Ze.declarations)if(Ke.kind===169&&(MB(Ke.parent)?DW(Ke.parent):Ke.parent)===Pe)return!(MB(Ke.parent)&&de(Ke.parent.parent.tags,lS))}return!1}}function vz(s,c=!0){switch(pe.type(s),s.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return c;case 225:return s.operator===41?yC(s.operand)||c&&AQ(s.operand):s.operator===40?yC(s.operand):!1;default:return!1}}function Ade(s){for(;s.kind===218;)s=s.expression;return s}function dde(s){switch(pe.type(s),s.kind){case 170:case 172:case 173:case 209:case 212:case 213:case 227:case 261:case 278:case 304:case 305:case 342:case 349:return!0;default:return!1}}function cEe(s){let c=ji(s,Yf);return!!c&&!c.importClause}var Aie=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],die=new Set(Aie),pde=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),wU=new Set([...Aie,...Aie.map(s=>`node:${s}`),...pde]);function pie(s,c,g,d){let h=Bo(s),_=/import|require/g;for(;_.exec(s.text)!==null;){let S=WWt(s,_.lastIndex,c);if(h&&uy(S,g))d(S,S.arguments[0]);else if(jp(S)&&S.arguments.length>=1&&(!g||_A(S.arguments[0])))d(S,S.arguments[0]);else if(c&&Fy(S))d(S,S.argument.literal);else if(c&&NN(S)){let R=KY(S);R&&Lg(R)&&R.text&&d(S,R)}}}function WWt(s,c,g){let d=Bo(s),h=s,_=S=>{if(S.pos<=c&&(cg&&c(g))}function Bz(s,c,g,d){let h;return _(s,c,void 0);function _(S,R,T){if(d){let V=d(S,T);if(V)return V}let O;return F(R,(V,M)=>{if(V&&h?.has(V.sourceFile.path)){(O??(O=new Set)).add(V);return}let ee=g(V,T,M);if(ee||!V)return ee;(h||(h=new Set)).add(V.sourceFile.path)})||F(R,V=>V&&!O?.has(V)?_(V.commandLine.projectReferences,V.references,V):void 0)}}function uEe(s,c,g){return s&&h$e(s,c,g)}function h$e(s,c,g){return eU(s,c,d=>YI(d.initializer)?de(d.initializer.elements,h=>Lg(h)&&h.text===g):void 0)}function e9e(s,c,g){return fde(s,c,d=>Lg(d.initializer)&&d.initializer.text===g?d.initializer:void 0)}function fde(s,c,g){return eU(s,c,g)}function KA(s,c=!0){let g=s&&m$e(s);return g&&!c&&Py(g),t9(g,!1)}function hie(s,c,g){let d=g(s);return d?ua(d,s):d=m$e(s,g),d&&!c&&Py(d),d}function m$e(s,c){let g=c?_=>hie(_,!0,c):KA,h=_s(s,g,void 0,c?_=>_&&Ide(_,!0,c):_=>_&&l0(_),g);if(h===s){let _=Lg(s)?ua(me.createStringLiteralFromNode(s),s):yC(s)?ua(me.createNumericLiteral(s.text,s.numericLiteralFlags),s):me.cloneNode(s);return gn(_,s)}return h.parent=void 0,h}function l0(s,c=!0){if(s){let g=me.createNodeArray(s.map(d=>KA(d,c)),s.hasTrailingComma);return gn(g,s),g}return s}function Ide(s,c,g){return me.createNodeArray(s.map(d=>hie(d,c,g)),s.hasTrailingComma)}function Py(s){gEe(s),t9e(s)}function gEe(s){TU(s,1024,OWt)}function t9e(s){TU(s,2048,kbe)}function TU(s,c,g){Ow(s,c);let d=g(s);d&&TU(d,c,g)}function OWt(s){return Lu(s,c=>c)}function r9e(){let s,c,g,d,h;return{createBaseSourceFileNode:_,createBaseIdentifierNode:S,createBasePrivateIdentifierNode:R,createBaseTokenNode:T,createBaseNode:O};function _(V){return new(h||(h=WC.getSourceFileConstructor()))(V,-1,-1)}function S(V){return new(g||(g=WC.getIdentifierConstructor()))(V,-1,-1)}function R(V){return new(d||(d=WC.getPrivateIdentifierConstructor()))(V,-1,-1)}function T(V){return new(c||(c=WC.getTokenConstructor()))(V,-1,-1)}function O(V){return new(s||(s=WC.getNodeConstructor()))(V,-1,-1)}}function Cv(s){let c,g;return{getParenthesizeLeftSideOfBinaryForOperator:d,getParenthesizeRightSideOfBinaryForOperator:h,parenthesizeLeftSideOfBinary:V,parenthesizeRightSideOfBinary:M,parenthesizeExpressionOfComputedPropertyName:ee,parenthesizeConditionOfConditionalExpression:re,parenthesizeBranchOfConditionalExpression:ge,parenthesizeExpressionOfExportDefault:Ie,parenthesizeExpressionOfNew:_e,parenthesizeLeftSideOfAccess:Ee,parenthesizeOperandOfPostfixUnary:Ne,parenthesizeOperandOfPrefixUnary:Te,parenthesizeExpressionsOfCommaDelimitedList:Ze,parenthesizeExpressionForDisallowedComma:Pe,parenthesizeExpressionOfExpressionStatement:Ke,parenthesizeConciseBodyOfArrowFunction:et,parenthesizeCheckTypeOfConditionalType:Ye,parenthesizeExtendsTypeOfConditionalType:Tt,parenthesizeConstituentTypesOfUnionType:Qe,parenthesizeConstituentTypeOfUnionType:at,parenthesizeConstituentTypesOfIntersectionType:mt,parenthesizeConstituentTypeOfIntersectionType:Ct,parenthesizeOperandOfTypeOperator:yt,parenthesizeOperandOfReadonlyTypeOperator:Rt,parenthesizeNonArrayTypeOfPostfixType:Lt,parenthesizeElementTypesOfTupleType:je,parenthesizeElementTypeOfTupleType:Wt,parenthesizeTypeOfOptionalType:Gt,parenthesizeTypeArguments:tr,parenthesizeLeadingTypeArgument:it};function d(ur){c||(c=new Map);let Gr=c.get(ur);return Gr||(Gr=dt=>V(ur,dt),c.set(ur,Gr)),Gr}function h(ur){g||(g=new Map);let Gr=g.get(ur);return Gr||(Gr=dt=>M(ur,void 0,dt),g.set(ur,Gr)),Gr}function _(ur,Gr){return ur===61?Gr===56||Gr===57:Gr===61?ur===56||ur===57:!1}function S(ur,Gr,dt,pr){let ot=u2(Gr);if(po(ot)&&_(ur,ot.operatorToken.kind))return!0;let ir=Zne(227,ur),qt=sbe(227,ur);if(!dt&&Gr.kind===220&&ir>3)return!0;let Yt=U7(ot);switch(Zt(Yt,ir)){case-1:return!(!dt&&qt===1&&Gr.kind===230);case 1:return!1;case 0:if(dt)return qt===1;if(po(ot)&&ot.operatorToken.kind===ur){if(R(ur))return!1;if(ur===40){let mn=pr?T(pr):0;if(BY(mn)&&mn===T(ot))return!1}}return ibe(ot)===0}}function R(ur){return ur===42||ur===52||ur===51||ur===53||ur===28}function T(ur){if(ur=u2(ur),BY(ur.kind))return ur.kind;if(ur.kind===227&&ur.operatorToken.kind===40){if(ur.cachedLiteralKind!==void 0)return ur.cachedLiteralKind;let Gr=T(ur.left),dt=BY(Gr)&&Gr===T(ur.right)?Gr:0;return ur.cachedLiteralKind=dt,dt}return 0}function O(ur,Gr,dt,pr){return u2(Gr).kind===218?Gr:S(ur,Gr,dt,pr)?s.createParenthesizedExpression(Gr):Gr}function V(ur,Gr){return O(ur,Gr,!0)}function M(ur,Gr,dt){return O(ur,dt,!1,Gr)}function ee(ur){return Nde(ur)?s.createParenthesizedExpression(ur):ur}function re(ur){let Gr=Zne(228,58),dt=u2(ur),pr=U7(dt);return Zt(pr,Gr)!==1?s.createParenthesizedExpression(ur):ur}function ge(ur){let Gr=u2(ur);return Nde(Gr)?s.createParenthesizedExpression(ur):ur}function Ie(ur){let Gr=u2(ur),dt=Nde(Gr);if(!dt)switch(yU(Gr,!1).kind){case 232:case 219:dt=!0}return dt?s.createParenthesizedExpression(ur):ur}function _e(ur){let Gr=yU(ur,!0);switch(Gr.kind){case 214:return s.createParenthesizedExpression(ur);case 215:return Gr.arguments?ur:s.createParenthesizedExpression(ur)}return Ee(ur)}function Ee(ur,Gr){let dt=u2(ur);return G_(dt)&&(dt.kind!==215||dt.arguments)&&(Gr||!LC(dt))?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ne(ur){return G_(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Te(ur){return Yre(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ze(ur){let Gr=Er(ur,Pe);return gn(s.createNodeArray(Gr,ur.hasTrailingComma),ur)}function Pe(ur){let Gr=u2(ur),dt=U7(Gr),pr=Zne(227,28);return dt>pr?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ke(ur){let Gr=u2(ur);if(Ll(Gr)){let pr=Gr.expression,ot=u2(pr).kind;if(ot===219||ot===220){let ir=s.updateCallExpression(Gr,gn(s.createParenthesizedExpression(pr),pr),Gr.typeArguments,Gr.arguments);return s.restoreOuterExpressions(ur,ir,8)}}let dt=yU(Gr,!1).kind;return dt===211||dt===219?gn(s.createParenthesizedExpression(ur),ur):ur}function et(ur){return!eg(ur)&&(Nde(ur)||yU(ur,!1).kind===211)?gn(s.createParenthesizedExpression(ur),ur):ur}function Ye(ur){switch(ur.kind){case 185:case 186:case 195:return s.createParenthesizedType(ur)}return ur}function Tt(ur){switch(ur.kind){case 195:return s.createParenthesizedType(ur)}return ur}function at(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return Ye(ur)}function Qe(ur){return s.createNodeArray(Er(ur,at))}function Ct(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return at(ur)}function mt(ur){return s.createNodeArray(Er(ur,Ct))}function yt(ur){switch(ur.kind){case 194:return s.createParenthesizedType(ur)}return Ct(ur)}function Rt(ur){switch(ur.kind){case 199:return s.createParenthesizedType(ur)}return yt(ur)}function Lt(ur){switch(ur.kind){case 196:case 199:case 187:return s.createParenthesizedType(ur)}return yt(ur)}function je(ur){return s.createNodeArray(Er(ur,Wt))}function Wt(ur){return _r(ur)?s.createParenthesizedType(ur):ur}function _r(ur){return Die(ur)?ur.postfix:tR(ur)||Z_(ur)||sk(ur)||WB(ur)?_r(ur.type):h2(ur)?_r(ur.falseType):AS(ur)||_f(ur)?_r(Ei(ur.types)):rR(ur)?!!ur.typeParameter.constraint&&_r(ur.typeParameter.constraint):!1}function Gt(ur){return _r(ur)?s.createParenthesizedType(ur):Lt(ur)}function it(ur){return Sge(ur)&&ur.typeParameters?s.createParenthesizedType(ur):ur}function Dt(ur,Gr){return Gr===0?it(ur):ur}function tr(ur){if(zt(ur))return s.createNodeArray(Er(ur,Dt))}}var AEe={getParenthesizeLeftSideOfBinaryForOperator:s=>Zl,getParenthesizeRightSideOfBinaryForOperator:s=>Zl,parenthesizeLeftSideOfBinary:(s,c)=>c,parenthesizeRightSideOfBinary:(s,c,g)=>g,parenthesizeExpressionOfComputedPropertyName:Zl,parenthesizeConditionOfConditionalExpression:Zl,parenthesizeBranchOfConditionalExpression:Zl,parenthesizeExpressionOfExportDefault:Zl,parenthesizeExpressionOfNew:s=>Ma(s,G_),parenthesizeLeftSideOfAccess:s=>Ma(s,G_),parenthesizeOperandOfPostfixUnary:s=>Ma(s,G_),parenthesizeOperandOfPrefixUnary:s=>Ma(s,Yre),parenthesizeExpressionsOfCommaDelimitedList:s=>Ma(s,aN),parenthesizeExpressionForDisallowedComma:Zl,parenthesizeExpressionOfExpressionStatement:Zl,parenthesizeConciseBodyOfArrowFunction:Zl,parenthesizeCheckTypeOfConditionalType:Zl,parenthesizeExtendsTypeOfConditionalType:Zl,parenthesizeConstituentTypesOfUnionType:s=>Ma(s,aN),parenthesizeConstituentTypeOfUnionType:Zl,parenthesizeConstituentTypesOfIntersectionType:s=>Ma(s,aN),parenthesizeConstituentTypeOfIntersectionType:Zl,parenthesizeOperandOfTypeOperator:Zl,parenthesizeOperandOfReadonlyTypeOperator:Zl,parenthesizeNonArrayTypeOfPostfixType:Zl,parenthesizeElementTypesOfTupleType:s=>Ma(s,aN),parenthesizeElementTypeOfTupleType:Zl,parenthesizeTypeOfOptionalType:Zl,parenthesizeTypeArguments:s=>s&&Ma(s,aN),parenthesizeLeadingTypeArgument:Zl};function n9e(s){return{convertToFunctionBlock:c,convertToFunctionExpression:g,convertToClassExpression:d,convertToArrayAssignmentElement:h,convertToObjectAssignmentElement:_,convertToAssignmentPattern:S,convertToObjectAssignmentPattern:R,convertToArrayAssignmentPattern:T,convertToAssignmentElementTarget:O};function c(V,M){if(eg(V))return V;let ee=s.createReturnStatement(V);gn(ee,V);let re=s.createBlock([ee],M);return gn(re,V),re}function g(V){var M;if(!V.body)return pe.fail("Cannot convert a FunctionDeclaration without a body");let ee=s.createFunctionExpression((M=sN(V))==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.asteriskToken,V.name,V.typeParameters,V.parameters,V.type,V.body);return ua(ee,V),gn(ee,V),O3(V)&&Yd(ee,!0),ee}function d(V){var M;let ee=s.createClassExpression((M=V.modifiers)==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.name,V.typeParameters,V.heritageClauses,V.members);return ua(ee,V),gn(ee,V),O3(V)&&Yd(ee,!0),ee}function h(V){if(mg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadElement(V.name),V),V);let M=O(V.name);return V.initializer?ua(gn(s.createAssignment(M,V.initializer),V),V):M}return Ma(V,un)}function _(V){if(mg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadAssignment(V.name),V),V);if(V.propertyName){let M=O(V.name);return ua(gn(s.createPropertyAssignment(V.propertyName,V.initializer?s.createAssignment(M,V.initializer):M),V),V)}return pe.assertNode(V.name,Ir),ua(gn(s.createShorthandPropertyAssignment(V.name,V.initializer),V),V)}return Ma(V,ww)}function S(V){switch(V.kind){case 208:case 210:return T(V);case 207:case 211:return R(V)}}function R(V){return $m(V)?ua(gn(s.createObjectLiteralExpression(lt(V.elements,_)),V),V):Ma(V,ag)}function T(V){return m2(V)?ua(gn(s.createArrayLiteralExpression(lt(V.elements,h)),V),V):Ma(V,YI)}function O(V){return Nu(V)?S(V):Ma(V,un)}}var dEe={convertToFunctionBlock:rl,convertToFunctionExpression:rl,convertToClassExpression:rl,convertToArrayAssignmentElement:rl,convertToObjectAssignmentElement:rl,convertToAssignmentPattern:rl,convertToObjectAssignmentPattern:rl,convertToArrayAssignmentPattern:rl,convertToAssignmentElementTarget:rl},pEe=0,fEe=(s=>(s[s.None=0]="None",s[s.NoParenthesizerRules=1]="NoParenthesizerRules",s[s.NoNodeConverters=2]="NoNodeConverters",s[s.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",s[s.NoOriginalNode=8]="NoOriginalNode",s))(fEe||{}),C$e=[];function _$e(s){C$e.push(s)}function mie(s,c){let g=s&8?Zl:ua,d=LA(()=>s&1?AEe:Cv(Ee)),h=LA(()=>s&2?dEe:n9e(Ee)),_=VA(q=>(Ce,Oe)=>$s(Ce,q,Oe)),S=VA(q=>Ce=>en(q,Ce)),R=VA(q=>Ce=>_i(Ce,q)),T=VA(q=>()=>mu(q)),O=VA(q=>Ce=>lK(q,Ce)),V=VA(q=>(Ce,Oe)=>Fo(q,Ce,Oe)),M=VA(q=>(Ce,Oe)=>RE(q,Ce,Oe)),ee=VA(q=>(Ce,Oe)=>cO(q,Ce,Oe)),re=VA(q=>(Ce,Oe)=>N5(q,Ce,Oe)),ge=VA(q=>(Ce,Oe,bt)=>lZ(q,Ce,Oe,bt)),Ie=VA(q=>(Ce,Oe,bt)=>Gse(q,Ce,Oe,bt)),_e=VA(q=>(Ce,Oe,bt,Nr)=>D5(q,Ce,Oe,bt,Nr)),Ee={get parenthesizer(){return d()},get converters(){return h()},baseFactory:c,flags:s,createNodeArray:Ne,createNumericLiteral:Ke,createBigIntLiteral:et,createStringLiteral:Tt,createStringLiteralFromNode:at,createRegularExpressionLiteral:Qe,createLiteralLikeNode:Ct,createIdentifier:Rt,createTempVariable:Lt,createLoopVariable:je,createUniqueName:Wt,getGeneratedNameForNode:_r,createPrivateIdentifier:it,createUniquePrivateName:tr,getGeneratedPrivateNameForNode:ur,createToken:dt,createSuper:pr,createThis:ot,createNull:ir,createTrue:qt,createFalse:Yt,createModifier:Tr,createModifiersFromModifierFlags:mn,createQualifiedName:jn,updateQualifiedName:Zi,createComputedPropertyName:Ns,updateComputedPropertyName:An,createTypeParameterDeclaration:si,updateTypeParameterDeclaration:ks,createParameterDeclaration:Ic,updateParameterDeclaration:ou,createDecorator:Zn,updateDecorator:ya,createPropertySignature:Fl,updatePropertySignature:ba,createPropertyDeclaration:hc,updatePropertyDeclaration:yr,createMethodSignature:hn,updateMethodSignature:Pi,createMethodDeclaration:co,updateMethodDeclaration:pa,createConstructorDeclaration:Cs,updateConstructorDeclaration:Tu,createGetAccessorDeclaration:Wn,updateGetAccessorDeclaration:pt,createSetAccessorDeclaration:st,updateSetAccessorDeclaration:nr,createCallSignature:Kr,updateCallSignature:Dn,createConstructSignature:hr,updateConstructSignature:En,createIndexSignature:Ni,updateIndexSignature:Gi,createClassStaticBlockDeclaration:$c,updateClassStaticBlockDeclaration:Qu,createTemplateLiteralTypeSpan:nn,updateTemplateLiteralTypeSpan:bn,createKeywordTypeNode:ds,createTypePredicateNode:Ht,updateTypePredicateNode:cn,createTypeReferenceNode:wt,updateTypeReferenceNode:xe,createFunctionTypeNode:fr,updateFunctionTypeNode:Ue,createConstructorTypeNode:Hn,updateConstructorTypeNode:ri,createTypeQueryNode:Ys,updateTypeQueryNode:tn,createTypeLiteralNode:Bn,updateTypeLiteralNode:Mn,createArrayTypeNode:ci,updateArrayTypeNode:es,createTupleTypeNode:Oi,updateTupleTypeNode:Vn,createNamedTupleMember:Ui,updateNamedTupleMember:gs,createOptionalTypeNode:fs,updateOptionalTypeNode:bi,createRestTypeNode:mc,updateRestTypeNode:Ag,createUnionTypeNode:RI,updateUnionTypeNode:pI,createIntersectionTypeNode:Ip,updateIntersectionTypeNode:kl,createConditionalTypeNode:bu,updateConditionalTypeNode:sm,createInferTypeNode:qp,updateInferTypeNode:Jg,createImportTypeNode:Au,updateImportTypeNode:Eg,createParenthesizedType:zA,updateParenthesizedType:NA,createThisTypeNode:oi,createTypeOperatorNode:tp,updateTypeOperatorNode:JI,createIndexedAccessTypeNode:Wh,updateIndexedAccessTypeNode:HC,createMappedTypeNode:bf,updateMappedTypeNode:UI,createLiteralTypeNode:ve,updateLiteralTypeNode:mr,createTemplateLiteralType:ch,updateTemplateLiteralType:mS,createObjectBindingPattern:ln,updateObjectBindingPattern:ni,createArrayBindingPattern:Ls,updateArrayBindingPattern:Za,createBindingElement:Go,updateBindingElement:Ss,createArrayLiteralExpression:Uc,updateArrayLiteralExpression:el,createObjectLiteralExpression:Fd,updateObjectLiteralExpression:Vg,createPropertyAccessExpression:s&4?(q,Ce)=>ti(om(q,Ce),262144):om,updatePropertyAccessExpression:Sh,createPropertyAccessChain:s&4?(q,Ce,Oe)=>ti(Zp(q,Ce,Oe),262144):Zp,updatePropertyAccessChain:lh,createElementAccessExpression:W_,updateElementAccessExpression:b2,createElementAccessChain:Pb,updateElementAccessChain:or,createCallExpression:Js,updateCallExpression:Yl,createCallChain:DA,updateCallChain:kA,createNewExpression:AA,updateNewExpression:ym,createTaggedTemplateExpression:lf,updateTaggedTemplateExpression:fI,createTypeAssertion:KI,updateTypeAssertion:E2,createParenthesizedExpression:I_,updateParenthesizedExpression:YC,createFunctionExpression:w1,updateFunctionExpression:py,createArrowFunction:Bv,updateArrowFunction:uk,createDeleteExpression:Xx,updateDeleteExpression:Jx,createTypeOfExpression:Mb,updateTypeOfExpression:rC,createVoidExpression:AR,updateVoidExpression:CS,createAwaitExpression:WN,updateAwaitExpression:ct,createPrefixUnaryExpression:en,updatePrefixUnaryExpression:gi,createPostfixUnaryExpression:_i,updatePostfixUnaryExpression:ys,createBinaryExpression:$s,updateBinaryExpression:pc,createConditionalExpression:ll,updateConditionalExpression:Fe,createTemplateExpression:gr,updateTemplateExpression:Ln,createTemplateHead:xf,createTemplateMiddle:Ug,createTemplateTail:QC,createNoSubstitutionTemplateLiteral:T1,createTemplateLiteralLikeNode:Su,createYieldExpression:_S,updateYieldExpression:wv,createSpreadElement:$F,updateSpreadElement:d9,createClassExpression:Qy,updateClassExpression:gk,createOmittedExpression:dR,createExpressionWithTypeArguments:XB,updateExpressionWithTypeArguments:nO,createAsExpression:br,updateAsExpression:sn,createNonNullExpression:ei,updateNonNullExpression:is,createSatisfiesExpression:Qs,updateSatisfiesExpression:Po,createNonNullChain:Ps,updateNonNullChain:ao,createMetaProperty:Yc,updateMetaProperty:ru,createTemplateSpan:$a,updateTemplateSpan:nu,createSemicolonClassElement:ul,createBlock:Gf,updateBlock:Hb,createVariableStatement:JB,updateVariableStatement:h_,createEmptyStatement:UB,createExpressionStatement:R1,updateExpressionStatement:p5,createIfStatement:ON,updateIfStatement:Ak,createDoStatement:f5,updateDoStatement:dk,createWhileStatement:Bse,updateWhileStatement:Fpe,createForStatement:wse,updateForStatement:Ux,createForInStatement:I5,updateForInStatement:eK,createForOfStatement:p9,updateForOfStatement:tK,createContinueStatement:dq,updateContinueStatement:Zpe,createBreakStatement:rK,updateBreakStatement:pq,createReturnStatement:h5,updateReturnStatement:Tse,createWithStatement:nK,updateWithStatement:fq,createSwitchStatement:FQ,updateSwitchStatement:iO,createLabeledStatement:Iq,updateLabeledStatement:hq,createThrowStatement:ZQ,updateThrowStatement:sO,createTryStatement:f9,updateTryStatement:eZ,createDebuggerStatement:tZ,createVariableDeclaration:rZ,updateVariableDeclaration:oO,createVariableDeclarationList:m5,updateVariableDeclarationList:iK,createFunctionDeclaration:C5,updateFunctionDeclaration:PA,createClassDeclaration:Rse,updateClassDeclaration:nZ,createInterfaceDeclaration:iZ,updateInterfaceDeclaration:pk,createTypeAliasDeclaration:Sf,updateTypeAliasDeclaration:A0,createEnumDeclaration:Yb,updateEnumDeclaration:d0,createModuleDeclaration:_5,updateModuleDeclaration:fy,createModuleBlock:fk,updateModuleBlock:Xy,createCaseBlock:KB,updateCaseBlock:Uw,createNamespaceExportDeclaration:y5,updateNamespaceExportDeclaration:b5,createImportEqualsDeclaration:Nse,updateImportEqualsDeclaration:I9,createImportDeclaration:LQ,updateImportDeclaration:Br,createImportClause:oK,updateImportClause:Kx,createAssertClause:Kw,updateAssertClause:h9,createAssertEntry:aO,updateAssertEntry:Iy,createImportTypeAssertionContainer:pR,updateImportTypeAssertionContainer:jB,createImportAttributes:E5,updateImportAttributes:dA,createImportAttribute:yS,updateImportAttribute:m9,createNamespaceImport:aK,updateNamespaceImport:sZ,createNamespaceExport:VQ,updateNamespaceExport:Tv,createNamedImports:jx,updateNamedImports:S5,createImportSpecifier:C9,updateImportSpecifier:PN,createExportAssignment:WQ,updateExportAssignment:v5,createExportDeclaration:fa,updateExportDeclaration:sa,createNamedExports:cK,updateNamedExports:oZ,createExportSpecifier:OQ,updateExportSpecifier:Dse,createMissingDeclaration:Vpe,createExternalModuleReference:qo,updateExternalModuleReference:hy,get createJSDocAllType(){return T(313)},get createJSDocUnknownType(){return T(314)},get createJSDocNonNullableType(){return M(316)},get updateJSDocNonNullableType(){return ee(316)},get createJSDocNullableType(){return M(315)},get updateJSDocNullableType(){return ee(315)},get createJSDocOptionalType(){return O(317)},get updateJSDocOptionalType(){return V(317)},get createJSDocVariadicType(){return O(319)},get updateJSDocVariadicType(){return V(319)},get createJSDocNamepathType(){return O(320)},get updateJSDocNamepathType(){return V(320)},createJSDocFunctionType:kse,updateJSDocFunctionType:mq,createJSDocTypeLiteral:L0,updateJSDocTypeLiteral:Ik,createJSDocTypeExpression:fR,updateJSDocTypeExpression:lO,createJSDocSignature:uK,updateJSDocSignature:uO,createJSDocTemplateTag:Qb,updateJSDocTemplateTag:_9,createJSDocTypedefTag:B5,updateJSDocTypedefTag:Cq,createJSDocParameterTag:w5,updateJSDocParameterTag:gO,createJSDocPropertyTag:_q,updateJSDocPropertyTag:aZ,createJSDocCallbackTag:MN,updateJSDocCallbackTag:AO,createJSDocOverloadTag:T5,updateJSDocOverloadTag:y9,createJSDocAugmentsTag:dO,updateJSDocAugmentsTag:zw,createJSDocImplementsTag:cZ,updateJSDocImplementsTag:Eq,createJSDocSeeTag:zx,updateJSDocSeeTag:pO,createJSDocImportTag:Xb,updateJSDocImportTag:Nv,createJSDocNameReference:XC,updateJSDocNameReference:PQ,createJSDocMemberName:qx,updateJSDocMemberName:R5,createJSDocLink:gK,updateJSDocLink:$x,createJSDocLinkCode:xse,updateJSDocLinkCode:yq,createJSDocLinkPlain:bq,updateJSDocLinkPlain:Wpe,get createJSDocTypeTag(){return Ie(345)},get updateJSDocTypeTag(){return _e(345)},get createJSDocReturnTag(){return Ie(343)},get updateJSDocReturnTag(){return _e(343)},get createJSDocThisTag(){return Ie(344)},get updateJSDocThisTag(){return _e(344)},get createJSDocAuthorTag(){return re(331)},get updateJSDocAuthorTag(){return ge(331)},get createJSDocClassTag(){return re(333)},get updateJSDocClassTag(){return ge(333)},get createJSDocPublicTag(){return re(334)},get updateJSDocPublicTag(){return ge(334)},get createJSDocPrivateTag(){return re(335)},get updateJSDocPrivateTag(){return ge(335)},get createJSDocProtectedTag(){return re(336)},get updateJSDocProtectedTag(){return ge(336)},get createJSDocReadonlyTag(){return re(337)},get updateJSDocReadonlyTag(){return ge(337)},get createJSDocOverrideTag(){return re(338)},get updateJSDocOverrideTag(){return ge(338)},get createJSDocDeprecatedTag(){return re(332)},get updateJSDocDeprecatedTag(){return ge(332)},get createJSDocThrowsTag(){return Ie(350)},get updateJSDocThrowsTag(){return _e(350)},get createJSDocSatisfiesTag(){return Ie(351)},get updateJSDocSatisfiesTag(){return _e(351)},createJSDocEnumTag:JC,updateJSDocEnumTag:Sq,createJSDocUnknownTag:AK,updateJSDocUnknownTag:Oh,createJSDocText:MQ,updateJSDocText:IR,createJSDocComment:fO,updateJSDocComment:b9,createJsxElement:vq,updateJsxElement:Ope,createJsxSelfClosingElement:NI,updateJsxSelfClosingElement:Fse,createJsxOpeningElement:dK,updateJsxOpeningElement:HQ,createJsxClosingElement:Bq,updateJsxClosingElement:V0,createJsxFragment:NE,createJsxText:k5,updateJsxText:DE,createJsxOpeningFragment:fK,createJsxJsxClosingFragment:eG,updateJsxFragment:pK,createJsxAttribute:wq,updateJsxAttribute:IK,createJsxAttributes:qw,updateJsxAttributes:Tq,createJsxSpreadAttribute:Zse,updateJsxSpreadAttribute:Rq,createJsxExpression:hK,updateJsxExpression:Nq,createJsxNamespacedName:E9,updateJsxNamespacedName:N1,createCaseClause:HN,updateCaseClause:mK,createDefaultClause:CK,updateDefaultClause:qA,createHeritageClause:Uo,updateHeritageClause:ES,createCatchClause:nC,updateCatchClause:x5,createPropertyAssignment:_K,updatePropertyAssignment:YQ,createShorthandPropertyAssignment:yK,updateShorthandPropertyAssignment:Ae,createSpreadAssignment:fn,updateSpreadAssignment:qi,createEnumMember:ic,updateEnumMember:Pc,createSourceFile:ql,updateSourceFile:F5,createRedirectedSourceFile:Vc,createBundle:Uy,updateBundle:IO,createSyntheticExpression:Dq,createSyntaxList:zB,createNotEmittedStatement:Qf,createNotEmittedTypeElement:$w,createPartiallyEmittedExpression:bK,updatePartiallyEmittedExpression:S9,createCommaListExpression:QQ,updateCommaListExpression:kOe,createSyntheticReferenceExpression:Ppe,updateSyntheticReferenceExpression:kq,cloneNode:EK,get createComma(){return _(28)},get createAssignment(){return _(64)},get createLogicalOr(){return _(57)},get createLogicalAnd(){return _(56)},get createBitwiseOr(){return _(52)},get createBitwiseXor(){return _(53)},get createBitwiseAnd(){return _(51)},get createStrictEquality(){return _(37)},get createStrictInequality(){return _(38)},get createEquality(){return _(35)},get createInequality(){return _(36)},get createLessThan(){return _(30)},get createLessThanEquals(){return _(33)},get createGreaterThan(){return _(32)},get createGreaterThanEquals(){return _(34)},get createLeftShift(){return _(48)},get createRightShift(){return _(49)},get createUnsignedRightShift(){return _(50)},get createAdd(){return _(40)},get createSubtract(){return _(41)},get createMultiply(){return _(42)},get createDivide(){return _(44)},get createModulo(){return _(45)},get createExponent(){return _(43)},get createPrefixPlus(){return S(40)},get createPrefixMinus(){return S(41)},get createPrefixIncrement(){return S(46)},get createPrefixDecrement(){return S(47)},get createBitwiseNot(){return S(55)},get createLogicalNot(){return S(54)},get createPostfixIncrement(){return R(46)},get createPostfixDecrement(){return R(47)},createImmediatelyInvokedFunctionExpression:xOe,createImmediatelyInvokedArrowFunction:XQ,createVoidZero:SK,createExportDefault:Hpe,createExternalModuleExport:Gq,createTypeCheck:xl,createIsNotTypeCheck:mO,createMethodCall:ro,createGlobalMethodCall:JQ,createFunctionBindCall:Ype,createFunctionCallCall:Lse,createFunctionApplyCall:Vse,createArraySliceCall:D2e,createArrayConcatCall:vK,createObjectDefinePropertyCall:GOe,createObjectGetOwnPropertyDescriptorCall:Wse,createReflectGetCall:hk,createReflectSetCall:k2e,createPropertyDescriptor:FOe,createCallBinding:Ose,createAssignmentTargetWrapper:YN,inlineExpressions:nt,getInternalName:xr,getLocalName:Tn,getExportName:Ai,getDeclarationName:Wi,getNamespaceMemberName:Ba,getExternalModuleOrNamespaceExportName:Xo,restoreOuterExpressions:Xpe,restoreEnclosingLabel:L5,createUseStrictPrologue:Rl,copyPrologue:lo,copyStandardPrologue:Sp,copyCustomPrologue:rp,ensureUseStrict:$A,liftToBlock:Dv,mergeLexicalEnvironment:B9,replaceModifiers:w9,replaceDecoratorsAndModifiers:tG,replacePropertyName:CO};return F(C$e,q=>q(Ee)),Ee;function Ne(q,Ce){if(q===void 0||q===E)q=[];else if(aN(q)){if(Ce===void 0||q.hasTrailingComma===Ce)return q.transformFlags===void 0&&RU(q),pe.attachNodeArrayDebugInfo(q),q;let Nr=q.slice();return Nr.pos=q.pos,Nr.end=q.end,Nr.hasTrailingComma=Ce,Nr.transformFlags=q.transformFlags,pe.attachNodeArrayDebugInfo(Nr),Nr}let Oe=q.length,bt=Oe>=1&&Oe<=4?q.slice():q;return bt.pos=-1,bt.end=-1,bt.hasTrailingComma=!!Ce,bt.transformFlags=0,RU(bt),pe.attachNodeArrayDebugInfo(bt),bt}function Te(q){return c.createBaseNode(q)}function Ze(q){let Ce=Te(q);return Ce.symbol=void 0,Ce.localSymbol=void 0,Ce}function Pe(q,Ce){return q!==Ce&&(q.typeArguments=Ce.typeArguments),So(q,Ce)}function Ke(q,Ce=0){let Oe=typeof q=="number"?q+"":q;pe.assert(Oe.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let bt=Ze(9);return bt.text=Oe,bt.numericLiteralFlags=Ce,Ce&384&&(bt.transformFlags|=1024),bt}function et(q){let Ce=Gr(10);return Ce.text=typeof q=="string"?q:PW(q)+"n",Ce.transformFlags|=32,Ce}function Ye(q,Ce){let Oe=Ze(11);return Oe.text=q,Oe.singleQuote=Ce,Oe}function Tt(q,Ce,Oe){let bt=Ye(q,Ce);return bt.hasExtendedUnicodeEscape=Oe,Oe&&(bt.transformFlags|=1024),bt}function at(q){let Ce=Ye(A2(q),void 0);return Ce.textSourceNode=q,Ce}function Qe(q){let Ce=Gr(14);return Ce.text=q,Ce}function Ct(q,Ce){switch(q){case 9:return Ke(Ce,0);case 10:return et(Ce);case 11:return Tt(Ce,void 0);case 12:return k5(Ce,!1);case 13:return k5(Ce,!0);case 14:return Qe(Ce);case 15:return Su(q,Ce,void 0,0)}}function mt(q){let Ce=c.createBaseIdentifierNode(80);return Ce.escapedText=q,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce.symbol=void 0,Ce}function yt(q,Ce,Oe,bt){let Nr=mt(pp(q));return yie(Nr,{flags:Ce,id:pEe,prefix:Oe,suffix:bt}),pEe++,Nr}function Rt(q,Ce,Oe){Ce===void 0&&q&&(Ce=Ta(q)),Ce===80&&(Ce=void 0);let bt=mt(pp(q));return Oe&&(bt.flags|=256),bt.escapedText==="await"&&(bt.transformFlags|=67108864),bt.flags&256&&(bt.transformFlags|=1024),bt}function Lt(q,Ce,Oe,bt){let Nr=1;Ce&&(Nr|=8);let Ii=yt("",Nr,Oe,bt);return q&&q(Ii),Ii}function je(q){let Ce=2;return q&&(Ce|=8),yt("",Ce,void 0,void 0)}function Wt(q,Ce=0,Oe,bt){return pe.assert(!(Ce&7),"Argument out of range: flags"),pe.assert((Ce&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),yt(q,3|Ce,Oe,bt)}function _r(q,Ce=0,Oe,bt){pe.assert(!(Ce&7),"Argument out of range: flags");let Nr=q?Bw(q)?z3(!1,Oe,q,bt,Vo):`generated@${id(q)}`:"";(Oe||bt)&&(Ce|=16);let Ii=yt(Nr,4|Ce,Oe,bt);return Ii.original=q,Ii}function Gt(q){let Ce=c.createBasePrivateIdentifierNode(81);return Ce.escapedText=q,Ce.transformFlags|=16777216,Ce}function it(q){return Ac(q,"#")||pe.fail("First character of private identifier must be #: "+q),Gt(pp(q))}function Dt(q,Ce,Oe,bt){let Nr=Gt(pp(q));return yie(Nr,{flags:Ce,id:pEe,prefix:Oe,suffix:bt}),pEe++,Nr}function tr(q,Ce,Oe){q&&!Ac(q,"#")&&pe.fail("First character of private identifier must be #: "+q);let bt=8|(q?3:1);return Dt(q??"",bt,Ce,Oe)}function ur(q,Ce,Oe){let bt=Bw(q)?z3(!0,Ce,q,Oe,Vo):`#generated@${id(q)}`,Ii=Dt(bt,4|(Ce||Oe?16:0),Ce,Oe);return Ii.original=q,Ii}function Gr(q){return c.createBaseTokenNode(q)}function dt(q){pe.assert(q>=0&&q<=166,"Invalid token"),pe.assert(q<=15||q>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),pe.assert(q<=9||q>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),pe.assert(q!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let Ce=Gr(q),Oe=0;switch(q){case 134:Oe=384;break;case 160:Oe=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Oe=1;break;case 108:Oe=134218752,Ce.flowNode=void 0;break;case 126:Oe=1024;break;case 129:Oe=16777216;break;case 110:Oe=16384,Ce.flowNode=void 0;break}return Oe&&(Ce.transformFlags|=Oe),Ce}function pr(){return dt(108)}function ot(){return dt(110)}function ir(){return dt(106)}function qt(){return dt(112)}function Yt(){return dt(97)}function Tr(q){return dt(q)}function mn(q){let Ce=[];return q&32&&Ce.push(Tr(95)),q&128&&Ce.push(Tr(138)),q&2048&&Ce.push(Tr(90)),q&4096&&Ce.push(Tr(87)),q&1&&Ce.push(Tr(125)),q&2&&Ce.push(Tr(123)),q&4&&Ce.push(Tr(124)),q&64&&Ce.push(Tr(128)),q&256&&Ce.push(Tr(126)),q&16&&Ce.push(Tr(164)),q&8&&Ce.push(Tr(148)),q&512&&Ce.push(Tr(129)),q&1024&&Ce.push(Tr(134)),q&8192&&Ce.push(Tr(103)),q&16384&&Ce.push(Tr(147)),Ce.length?Ce:void 0}function jn(q,Ce){let Oe=Te(167);return Oe.left=q,Oe.right=Wm(Ce),Oe.transformFlags|=zs(Oe.left)|Cie(Oe.right),Oe.flowNode=void 0,Oe}function Zi(q,Ce,Oe){return q.left!==Ce||q.right!==Oe?So(jn(Ce,Oe),q):q}function Ns(q){let Ce=Te(168);return Ce.expression=d().parenthesizeExpressionOfComputedPropertyName(q),Ce.transformFlags|=zs(Ce.expression)|1024|131072,Ce}function An(q,Ce){return q.expression!==Ce?So(Ns(Ce),q):q}function si(q,Ce,Oe,bt){let Nr=Ze(169);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.constraint=Oe,Nr.default=bt,Nr.transformFlags=1,Nr.expression=void 0,Nr.jsDoc=void 0,Nr}function ks(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.constraint!==bt||q.default!==Nr?So(si(Ce,Oe,bt,Nr),q):q}function Ic(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(170);return Jo.modifiers=sd(q),Jo.dotDotDotToken=Ce,Jo.name=Wm(Oe),Jo.questionToken=bt,Jo.type=Nr,Jo.initializer=W0(Ii),kF(Jo.name)?Jo.transformFlags=1:Jo.transformFlags=yA(Jo.modifiers)|zs(Jo.dotDotDotToken)|ZB(Jo.name)|zs(Jo.questionToken)|zs(Jo.initializer)|(Jo.questionToken??Jo.type?1:0)|(Jo.dotDotDotToken??Jo.initializer?1024:0)|(Lw(Jo.modifiers)&31?8192:0),Jo.jsDoc=void 0,Jo}function ou(q,Ce,Oe,bt,Nr,Ii,Jo){return q.modifiers!==Ce||q.dotDotDotToken!==Oe||q.name!==bt||q.questionToken!==Nr||q.type!==Ii||q.initializer!==Jo?So(Ic(Ce,Oe,bt,Nr,Ii,Jo),q):q}function Zn(q){let Ce=Te(171);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1|8192|33554432,Ce}function ya(q,Ce){return q.expression!==Ce?So(Zn(Ce),q):q}function Fl(q,Ce,Oe,bt){let Nr=Ze(172);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.type=bt,Nr.questionToken=Oe,Nr.transformFlags=1,Nr.initializer=void 0,Nr.jsDoc=void 0,Nr}function ba(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.questionToken!==bt||q.type!==Nr?Oo(Fl(Ce,Oe,bt,Nr),q):q}function Oo(q,Ce){return q!==Ce&&(q.initializer=Ce.initializer),So(q,Ce)}function hc(q,Ce,Oe,bt,Nr){let Ii=Ze(173);Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.questionToken=Oe&&eR(Oe)?Oe:void 0,Ii.exclamationToken=Oe&&Gz(Oe)?Oe:void 0,Ii.type=bt,Ii.initializer=W0(Nr);let Jo=Ii.flags&33554432||Lw(Ii.modifiers)&128;return Ii.transformFlags=yA(Ii.modifiers)|ZB(Ii.name)|zs(Ii.initializer)|(Jo||Ii.questionToken||Ii.exclamationToken||Ii.type?1:0)|(Un(Ii.name)||Lw(Ii.modifiers)&256&&Ii.initializer?8192:0)|16777216,Ii.jsDoc=void 0,Ii}function yr(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.questionToken!==(bt!==void 0&&eR(bt)?bt:void 0)||q.exclamationToken!==(bt!==void 0&&Gz(bt)?bt:void 0)||q.type!==Nr||q.initializer!==Ii?So(hc(Ce,Oe,bt,Nr,Ii),q):q}function hn(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(174);return Jo.modifiers=sd(q),Jo.name=Wm(Ce),Jo.questionToken=Oe,Jo.typeParameters=sd(bt),Jo.parameters=sd(Nr),Jo.type=Ii,Jo.transformFlags=1,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.typeArguments=void 0,Jo}function Pi(q,Ce,Oe,bt,Nr,Ii,Jo){return q.modifiers!==Ce||q.name!==Oe||q.questionToken!==bt||q.typeParameters!==Nr||q.parameters!==Ii||q.type!==Jo?Pe(hn(Ce,Oe,bt,Nr,Ii,Jo),q):q}function co(q,Ce,Oe,bt,Nr,Ii,Jo,du){let uf=Ze(175);if(uf.modifiers=sd(q),uf.asteriskToken=Ce,uf.name=Wm(Oe),uf.questionToken=bt,uf.exclamationToken=void 0,uf.typeParameters=sd(Nr),uf.parameters=Ne(Ii),uf.type=Jo,uf.body=du,!uf.body)uf.transformFlags=1;else{let S2=Lw(uf.modifiers)&1024,_O=!!uf.asteriskToken,hR=S2&&_O;uf.transformFlags=yA(uf.modifiers)|zs(uf.asteriskToken)|ZB(uf.name)|zs(uf.questionToken)|yA(uf.typeParameters)|yA(uf.parameters)|zs(uf.type)|zs(uf.body)&-67108865|(hR?128:S2?256:_O?2048:0)|(uf.questionToken||uf.typeParameters||uf.type?1:0)|1024}return uf.typeArguments=void 0,uf.jsDoc=void 0,uf.locals=void 0,uf.nextContainer=void 0,uf.flowNode=void 0,uf.endFlowNode=void 0,uf.returnFlowNode=void 0,uf}function pa(q,Ce,Oe,bt,Nr,Ii,Jo,du,uf){return q.modifiers!==Ce||q.asteriskToken!==Oe||q.name!==bt||q.questionToken!==Nr||q.typeParameters!==Ii||q.parameters!==Jo||q.type!==du||q.body!==uf?Pa(co(Ce,Oe,bt,Nr,Ii,Jo,du,uf),q):q}function Pa(q,Ce){return q!==Ce&&(q.exclamationToken=Ce.exclamationToken),So(q,Ce)}function $c(q){let Ce=Ze(176);return Ce.body=q,Ce.transformFlags=zs(q)|16777216,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce.locals=void 0,Ce.nextContainer=void 0,Ce.endFlowNode=void 0,Ce.returnFlowNode=void 0,Ce}function Qu(q,Ce){return q.body!==Ce?Rg($c(Ce),q):q}function Rg(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),So(q,Ce)}function Cs(q,Ce,Oe){let bt=Ze(177);return bt.modifiers=sd(q),bt.parameters=Ne(Ce),bt.body=Oe,bt.body?bt.transformFlags=yA(bt.modifiers)|yA(bt.parameters)|zs(bt.body)&-67108865|1024:bt.transformFlags=1,bt.typeParameters=void 0,bt.type=void 0,bt.typeArguments=void 0,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.endFlowNode=void 0,bt.returnFlowNode=void 0,bt}function Tu(q,Ce,Oe,bt){return q.modifiers!==Ce||q.parameters!==Oe||q.body!==bt?Wr(Cs(Ce,Oe,bt),q):q}function Wr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),Pe(q,Ce)}function Wn(q,Ce,Oe,bt,Nr){let Ii=Ze(178);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.parameters=Ne(Oe),Ii.type=bt,Ii.body=Nr,Ii.body?Ii.transformFlags=yA(Ii.modifiers)|ZB(Ii.name)|yA(Ii.parameters)|zs(Ii.type)|zs(Ii.body)&-67108865|(Ii.type?1:0):Ii.transformFlags=1,Ii.typeArguments=void 0,Ii.typeParameters=void 0,Ii.jsDoc=void 0,Ii.locals=void 0,Ii.nextContainer=void 0,Ii.flowNode=void 0,Ii.endFlowNode=void 0,Ii.returnFlowNode=void 0,Ii}function pt(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.parameters!==bt||q.type!==Nr||q.body!==Ii?on(Wn(Ce,Oe,bt,Nr,Ii),q):q}function on(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters),Pe(q,Ce)}function st(q,Ce,Oe,bt){let Nr=Ze(179);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.parameters=Ne(Oe),Nr.body=bt,Nr.body?Nr.transformFlags=yA(Nr.modifiers)|ZB(Nr.name)|yA(Nr.parameters)|zs(Nr.body)&-67108865|(Nr.type?1:0):Nr.transformFlags=1,Nr.typeArguments=void 0,Nr.typeParameters=void 0,Nr.type=void 0,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.flowNode=void 0,Nr.endFlowNode=void 0,Nr.returnFlowNode=void 0,Nr}function nr(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.parameters!==bt||q.body!==Nr?Zr(st(Ce,Oe,bt,Nr),q):q}function Zr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),Pe(q,Ce)}function Kr(q,Ce,Oe){let bt=Ze(180);return bt.typeParameters=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function Dn(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?Pe(Kr(Ce,Oe,bt),q):q}function hr(q,Ce,Oe){let bt=Ze(181);return bt.typeParameters=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function En(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?Pe(hr(Ce,Oe,bt),q):q}function Ni(q,Ce,Oe){let bt=Ze(182);return bt.modifiers=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function Gi(q,Ce,Oe,bt){return q.parameters!==Oe||q.type!==bt||q.modifiers!==Ce?Pe(Ni(Ce,Oe,bt),q):q}function nn(q,Ce){let Oe=Te(205);return Oe.type=q,Oe.literal=Ce,Oe.transformFlags=1,Oe}function bn(q,Ce,Oe){return q.type!==Ce||q.literal!==Oe?So(nn(Ce,Oe),q):q}function ds(q){return dt(q)}function Ht(q,Ce,Oe){let bt=Te(183);return bt.assertsModifier=q,bt.parameterName=Wm(Ce),bt.type=Oe,bt.transformFlags=1,bt}function cn(q,Ce,Oe,bt){return q.assertsModifier!==Ce||q.parameterName!==Oe||q.type!==bt?So(Ht(Ce,Oe,bt),q):q}function wt(q,Ce){let Oe=Te(184);return Oe.typeName=Wm(q),Oe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ne(Ce)),Oe.transformFlags=1,Oe}function xe(q,Ce,Oe){return q.typeName!==Ce||q.typeArguments!==Oe?So(wt(Ce,Oe),q):q}function fr(q,Ce,Oe){let bt=Ze(185);return bt.typeParameters=sd(q),bt.parameters=sd(Ce),bt.type=Oe,bt.transformFlags=1,bt.modifiers=void 0,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.typeArguments=void 0,bt}function Ue(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?In(fr(Ce,Oe,bt),q):q}function In(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),Pe(q,Ce)}function Hn(...q){return q.length===4?Mt(...q):q.length===3?$r(...q):pe.fail("Incorrect number of arguments specified.")}function Mt(q,Ce,Oe,bt){let Nr=Ze(186);return Nr.modifiers=sd(q),Nr.typeParameters=sd(Ce),Nr.parameters=sd(Oe),Nr.type=bt,Nr.transformFlags=1,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.typeArguments=void 0,Nr}function $r(q,Ce,Oe){return Mt(void 0,q,Ce,Oe)}function ri(...q){return q.length===5?oo(...q):q.length===4?Bs(...q):pe.fail("Incorrect number of arguments specified.")}function oo(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.typeParameters!==Oe||q.parameters!==bt||q.type!==Nr?Pe(Hn(Ce,Oe,bt,Nr),q):q}function Bs(q,Ce,Oe,bt){return oo(q,q.modifiers,Ce,Oe,bt)}function Ys(q,Ce){let Oe=Te(187);return Oe.exprName=q,Oe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Oe.transformFlags=1,Oe}function tn(q,Ce,Oe){return q.exprName!==Ce||q.typeArguments!==Oe?So(Ys(Ce,Oe),q):q}function Bn(q){let Ce=Ze(188);return Ce.members=Ne(q),Ce.transformFlags=1,Ce}function Mn(q,Ce){return q.members!==Ce?So(Bn(Ce),q):q}function ci(q){let Ce=Te(189);return Ce.elementType=d().parenthesizeNonArrayTypeOfPostfixType(q),Ce.transformFlags=1,Ce}function es(q,Ce){return q.elementType!==Ce?So(ci(Ce),q):q}function Oi(q){let Ce=Te(190);return Ce.elements=Ne(d().parenthesizeElementTypesOfTupleType(q)),Ce.transformFlags=1,Ce}function Vn(q,Ce){return q.elements!==Ce?So(Oi(Ce),q):q}function Ui(q,Ce,Oe,bt){let Nr=Ze(203);return Nr.dotDotDotToken=q,Nr.name=Ce,Nr.questionToken=Oe,Nr.type=bt,Nr.transformFlags=1,Nr.jsDoc=void 0,Nr}function gs(q,Ce,Oe,bt,Nr){return q.dotDotDotToken!==Ce||q.name!==Oe||q.questionToken!==bt||q.type!==Nr?So(Ui(Ce,Oe,bt,Nr),q):q}function fs(q){let Ce=Te(191);return Ce.type=d().parenthesizeTypeOfOptionalType(q),Ce.transformFlags=1,Ce}function bi(q,Ce){return q.type!==Ce?So(fs(Ce),q):q}function mc(q){let Ce=Te(192);return Ce.type=q,Ce.transformFlags=1,Ce}function Ag(q,Ce){return q.type!==Ce?So(mc(Ce),q):q}function dg(q,Ce,Oe){let bt=Te(q);return bt.types=Ee.createNodeArray(Oe(Ce)),bt.transformFlags=1,bt}function yu(q,Ce,Oe){return q.types!==Ce?So(dg(q.kind,Ce,Oe),q):q}function RI(q){return dg(193,q,d().parenthesizeConstituentTypesOfUnionType)}function pI(q,Ce){return yu(q,Ce,d().parenthesizeConstituentTypesOfUnionType)}function Ip(q){return dg(194,q,d().parenthesizeConstituentTypesOfIntersectionType)}function kl(q,Ce){return yu(q,Ce,d().parenthesizeConstituentTypesOfIntersectionType)}function bu(q,Ce,Oe,bt){let Nr=Te(195);return Nr.checkType=d().parenthesizeCheckTypeOfConditionalType(q),Nr.extendsType=d().parenthesizeExtendsTypeOfConditionalType(Ce),Nr.trueType=Oe,Nr.falseType=bt,Nr.transformFlags=1,Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function sm(q,Ce,Oe,bt,Nr){return q.checkType!==Ce||q.extendsType!==Oe||q.trueType!==bt||q.falseType!==Nr?So(bu(Ce,Oe,bt,Nr),q):q}function qp(q){let Ce=Te(196);return Ce.typeParameter=q,Ce.transformFlags=1,Ce}function Jg(q,Ce){return q.typeParameter!==Ce?So(qp(Ce),q):q}function ch(q,Ce){let Oe=Te(204);return Oe.head=q,Oe.templateSpans=Ne(Ce),Oe.transformFlags=1,Oe}function mS(q,Ce,Oe){return q.head!==Ce||q.templateSpans!==Oe?So(ch(Ce,Oe),q):q}function Au(q,Ce,Oe,bt,Nr=!1){let Ii=Te(206);return Ii.argument=q,Ii.attributes=Ce,Ii.assertions&&Ii.assertions.assertClause&&Ii.attributes&&(Ii.assertions.assertClause=Ii.attributes),Ii.qualifier=Oe,Ii.typeArguments=bt&&d().parenthesizeTypeArguments(bt),Ii.isTypeOf=Nr,Ii.transformFlags=1,Ii}function Eg(q,Ce,Oe,bt,Nr,Ii=q.isTypeOf){return q.argument!==Ce||q.attributes!==Oe||q.qualifier!==bt||q.typeArguments!==Nr||q.isTypeOf!==Ii?So(Au(Ce,Oe,bt,Nr,Ii),q):q}function zA(q){let Ce=Te(197);return Ce.type=q,Ce.transformFlags=1,Ce}function NA(q,Ce){return q.type!==Ce?So(zA(Ce),q):q}function oi(){let q=Te(198);return q.transformFlags=1,q}function tp(q,Ce){let Oe=Te(199);return Oe.operator=q,Oe.type=q===148?d().parenthesizeOperandOfReadonlyTypeOperator(Ce):d().parenthesizeOperandOfTypeOperator(Ce),Oe.transformFlags=1,Oe}function JI(q,Ce){return q.type!==Ce?So(tp(q.operator,Ce),q):q}function Wh(q,Ce){let Oe=Te(200);return Oe.objectType=d().parenthesizeNonArrayTypeOfPostfixType(q),Oe.indexType=Ce,Oe.transformFlags=1,Oe}function HC(q,Ce,Oe){return q.objectType!==Ce||q.indexType!==Oe?So(Wh(Ce,Oe),q):q}function bf(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(201);return Jo.readonlyToken=q,Jo.typeParameter=Ce,Jo.nameType=Oe,Jo.questionToken=bt,Jo.type=Nr,Jo.members=Ii&&Ne(Ii),Jo.transformFlags=1,Jo.locals=void 0,Jo.nextContainer=void 0,Jo}function UI(q,Ce,Oe,bt,Nr,Ii,Jo){return q.readonlyToken!==Ce||q.typeParameter!==Oe||q.nameType!==bt||q.questionToken!==Nr||q.type!==Ii||q.members!==Jo?So(bf(Ce,Oe,bt,Nr,Ii,Jo),q):q}function ve(q){let Ce=Te(202);return Ce.literal=q,Ce.transformFlags=1,Ce}function mr(q,Ce){return q.literal!==Ce?So(ve(Ce),q):q}function ln(q){let Ce=Te(207);return Ce.elements=Ne(q),Ce.transformFlags|=yA(Ce.elements)|1024|524288,Ce.transformFlags&32768&&(Ce.transformFlags|=65664),Ce}function ni(q,Ce){return q.elements!==Ce?So(ln(Ce),q):q}function Ls(q){let Ce=Te(208);return Ce.elements=Ne(q),Ce.transformFlags|=yA(Ce.elements)|1024|524288,Ce}function Za(q,Ce){return q.elements!==Ce?So(Ls(Ce),q):q}function Go(q,Ce,Oe,bt){let Nr=Ze(209);return Nr.dotDotDotToken=q,Nr.propertyName=Wm(Ce),Nr.name=Wm(Oe),Nr.initializer=W0(bt),Nr.transformFlags|=zs(Nr.dotDotDotToken)|ZB(Nr.propertyName)|ZB(Nr.name)|zs(Nr.initializer)|(Nr.dotDotDotToken?32768:0)|1024,Nr.flowNode=void 0,Nr}function Ss(q,Ce,Oe,bt,Nr){return q.propertyName!==Oe||q.dotDotDotToken!==Ce||q.name!==bt||q.initializer!==Nr?So(Go(Ce,Oe,bt,Nr),q):q}function Uc(q,Ce){let Oe=Te(210),bt=q&&li(q),Nr=Ne(q,bt&&Ep(bt)?!0:void 0);return Oe.elements=d().parenthesizeExpressionsOfCommaDelimitedList(Nr),Oe.multiLine=Ce,Oe.transformFlags|=yA(Oe.elements),Oe}function el(q,Ce){return q.elements!==Ce?So(Uc(Ce,q.multiLine),q):q}function Fd(q,Ce){let Oe=Ze(211);return Oe.properties=Ne(q),Oe.multiLine=Ce,Oe.transformFlags|=yA(Oe.properties),Oe.jsDoc=void 0,Oe}function Vg(q,Ce){return q.properties!==Ce?So(Fd(Ce,q.multiLine),q):q}function Ef(q,Ce,Oe){let bt=Ze(212);return bt.expression=q,bt.questionDotToken=Ce,bt.name=Oe,bt.transformFlags=zs(bt.expression)|zs(bt.questionDotToken)|(Ir(bt.name)?Cie(bt.name):zs(bt.name)|536870912),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function om(q,Ce){let Oe=Ef(d().parenthesizeLeftSideOfAccess(q,!1),void 0,Wm(Ce));return rr(q)&&(Oe.transformFlags|=384),Oe}function Sh(q,Ce,Oe){return Dx(q)?lh(q,Ce,q.questionDotToken,Ma(Oe,Ir)):q.expression!==Ce||q.name!==Oe?So(om(Ce,Oe),q):q}function Zp(q,Ce,Oe){let bt=Ef(d().parenthesizeLeftSideOfAccess(q,!0),Ce,Wm(Oe));return bt.flags|=64,bt.transformFlags|=32,bt}function lh(q,Ce,Oe,bt){return pe.assert(!!(q.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),q.expression!==Ce||q.questionDotToken!==Oe||q.name!==bt?So(Zp(Ce,Oe,bt),q):q}function B1(q,Ce,Oe){let bt=Ze(213);return bt.expression=q,bt.questionDotToken=Ce,bt.argumentExpression=Oe,bt.transformFlags|=zs(bt.expression)|zs(bt.questionDotToken)|zs(bt.argumentExpression),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function W_(q,Ce){let Oe=B1(d().parenthesizeLeftSideOfAccess(q,!1),void 0,T9(Ce));return rr(q)&&(Oe.transformFlags|=384),Oe}function b2(q,Ce,Oe){return EF(q)?or(q,Ce,q.questionDotToken,Oe):q.expression!==Ce||q.argumentExpression!==Oe?So(W_(Ce,Oe),q):q}function Pb(q,Ce,Oe){let bt=B1(d().parenthesizeLeftSideOfAccess(q,!0),Ce,T9(Oe));return bt.flags|=64,bt.transformFlags|=32,bt}function or(q,Ce,Oe,bt){return pe.assert(!!(q.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),q.expression!==Ce||q.questionDotToken!==Oe||q.argumentExpression!==bt?So(Pb(Ce,Oe,bt),q):q}function qn(q,Ce,Oe,bt){let Nr=Ze(214);return Nr.expression=q,Nr.questionDotToken=Ce,Nr.typeArguments=Oe,Nr.arguments=bt,Nr.transformFlags|=zs(Nr.expression)|zs(Nr.questionDotToken)|yA(Nr.typeArguments)|yA(Nr.arguments),Nr.typeArguments&&(Nr.transformFlags|=1),Zy(Nr.expression)&&(Nr.transformFlags|=16384),Nr}function Js(q,Ce,Oe){let bt=qn(d().parenthesizeLeftSideOfAccess(q,!1),void 0,sd(Ce),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(Oe)));return an(bt.expression)&&(bt.transformFlags|=8388608),bt}function Yl(q,Ce,Oe,bt){return BB(q)?kA(q,Ce,q.questionDotToken,Oe,bt):q.expression!==Ce||q.typeArguments!==Oe||q.arguments!==bt?So(Js(Ce,Oe,bt),q):q}function DA(q,Ce,Oe,bt){let Nr=qn(d().parenthesizeLeftSideOfAccess(q,!0),Ce,sd(Oe),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(bt)));return Nr.flags|=64,Nr.transformFlags|=32,Nr}function kA(q,Ce,Oe,bt,Nr){return pe.assert(!!(q.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),q.expression!==Ce||q.questionDotToken!==Oe||q.typeArguments!==bt||q.arguments!==Nr?So(DA(Ce,Oe,bt,Nr),q):q}function AA(q,Ce,Oe){let bt=Ze(215);return bt.expression=d().parenthesizeExpressionOfNew(q),bt.typeArguments=sd(Ce),bt.arguments=Oe?d().parenthesizeExpressionsOfCommaDelimitedList(Oe):void 0,bt.transformFlags|=zs(bt.expression)|yA(bt.typeArguments)|yA(bt.arguments)|32,bt.typeArguments&&(bt.transformFlags|=1),bt}function ym(q,Ce,Oe,bt){return q.expression!==Ce||q.typeArguments!==Oe||q.arguments!==bt?So(AA(Ce,Oe,bt),q):q}function lf(q,Ce,Oe){let bt=Te(216);return bt.tag=d().parenthesizeLeftSideOfAccess(q,!1),bt.typeArguments=sd(Ce),bt.template=Oe,bt.transformFlags|=zs(bt.tag)|yA(bt.typeArguments)|zs(bt.template)|1024,bt.typeArguments&&(bt.transformFlags|=1),abe(bt.template)&&(bt.transformFlags|=128),bt}function fI(q,Ce,Oe,bt){return q.tag!==Ce||q.typeArguments!==Oe||q.template!==bt?So(lf(Ce,Oe,bt),q):q}function KI(q,Ce){let Oe=Te(217);return Oe.expression=d().parenthesizeOperandOfPrefixUnary(Ce),Oe.type=q,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.type)|1,Oe}function E2(q,Ce,Oe){return q.type!==Ce||q.expression!==Oe?So(KI(Ce,Oe),q):q}function I_(q){let Ce=Te(218);return Ce.expression=q,Ce.transformFlags=zs(Ce.expression),Ce.jsDoc=void 0,Ce}function YC(q,Ce){return q.expression!==Ce?So(I_(Ce),q):q}function w1(q,Ce,Oe,bt,Nr,Ii,Jo){let du=Ze(219);du.modifiers=sd(q),du.asteriskToken=Ce,du.name=Wm(Oe),du.typeParameters=sd(bt),du.parameters=Ne(Nr),du.type=Ii,du.body=Jo;let uf=Lw(du.modifiers)&1024,S2=!!du.asteriskToken,_O=uf&&S2;return du.transformFlags=yA(du.modifiers)|zs(du.asteriskToken)|ZB(du.name)|yA(du.typeParameters)|yA(du.parameters)|zs(du.type)|zs(du.body)&-67108865|(_O?128:uf?256:S2?2048:0)|(du.typeParameters||du.type?1:0)|4194304,du.typeArguments=void 0,du.jsDoc=void 0,du.locals=void 0,du.nextContainer=void 0,du.flowNode=void 0,du.endFlowNode=void 0,du.returnFlowNode=void 0,du}function py(q,Ce,Oe,bt,Nr,Ii,Jo,du){return q.name!==bt||q.modifiers!==Ce||q.asteriskToken!==Oe||q.typeParameters!==Nr||q.parameters!==Ii||q.type!==Jo||q.body!==du?Pe(w1(Ce,Oe,bt,Nr,Ii,Jo,du),q):q}function Bv(q,Ce,Oe,bt,Nr,Ii){let Jo=Ze(220);Jo.modifiers=sd(q),Jo.typeParameters=sd(Ce),Jo.parameters=Ne(Oe),Jo.type=bt,Jo.equalsGreaterThanToken=Nr??dt(39),Jo.body=d().parenthesizeConciseBodyOfArrowFunction(Ii);let du=Lw(Jo.modifiers)&1024;return Jo.transformFlags=yA(Jo.modifiers)|yA(Jo.typeParameters)|yA(Jo.parameters)|zs(Jo.type)|zs(Jo.equalsGreaterThanToken)|zs(Jo.body)&-67108865|(Jo.typeParameters||Jo.type?1:0)|(du?16640:0)|1024,Jo.typeArguments=void 0,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.flowNode=void 0,Jo.endFlowNode=void 0,Jo.returnFlowNode=void 0,Jo}function uk(q,Ce,Oe,bt,Nr,Ii,Jo){return q.modifiers!==Ce||q.typeParameters!==Oe||q.parameters!==bt||q.type!==Nr||q.equalsGreaterThanToken!==Ii||q.body!==Jo?Pe(Bv(Ce,Oe,bt,Nr,Ii,Jo),q):q}function Xx(q){let Ce=Te(221);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function Jx(q,Ce){return q.expression!==Ce?So(Xx(Ce),q):q}function Mb(q){let Ce=Te(222);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function rC(q,Ce){return q.expression!==Ce?So(Mb(Ce),q):q}function AR(q){let Ce=Te(223);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function CS(q,Ce){return q.expression!==Ce?So(AR(Ce),q):q}function WN(q){let Ce=Te(224);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression)|256|128|2097152,Ce}function ct(q,Ce){return q.expression!==Ce?So(WN(Ce),q):q}function en(q,Ce){let Oe=Te(225);return Oe.operator=q,Oe.operand=d().parenthesizeOperandOfPrefixUnary(Ce),Oe.transformFlags|=zs(Oe.operand),(q===46||q===47)&&Ir(Oe.operand)&&!Gp(Oe.operand)&&!QF(Oe.operand)&&(Oe.transformFlags|=268435456),Oe}function gi(q,Ce){return q.operand!==Ce?So(en(q.operator,Ce),q):q}function _i(q,Ce){let Oe=Te(226);return Oe.operator=Ce,Oe.operand=d().parenthesizeOperandOfPostfixUnary(q),Oe.transformFlags|=zs(Oe.operand),Ir(Oe.operand)&&!Gp(Oe.operand)&&!QF(Oe.operand)&&(Oe.transformFlags|=268435456),Oe}function ys(q,Ce){return q.operand!==Ce?So(_i(Ce,q.operator),q):q}function $s(q,Ce,Oe){let bt=Ze(227),Nr=Fq(Ce),Ii=Nr.kind;return bt.left=d().parenthesizeLeftSideOfBinary(Ii,q),bt.operatorToken=Nr,bt.right=d().parenthesizeRightSideOfBinary(Ii,bt.left,Oe),bt.transformFlags|=zs(bt.left)|zs(bt.operatorToken)|zs(bt.right),Ii===61?bt.transformFlags|=32:Ii===64?ag(bt.left)?bt.transformFlags|=5248|wa(bt.left):YI(bt.left)&&(bt.transformFlags|=5120|wa(bt.left)):Ii===43||Ii===68?bt.transformFlags|=512:$7(Ii)&&(bt.transformFlags|=16),Ii===103&&p(bt.left)&&(bt.transformFlags|=536870912),bt.jsDoc=void 0,bt}function wa(q){return LEe(q)?65536:0}function pc(q,Ce,Oe,bt){return q.left!==Ce||q.operatorToken!==Oe||q.right!==bt?So($s(Ce,Oe,bt),q):q}function ll(q,Ce,Oe,bt,Nr){let Ii=Te(228);return Ii.condition=d().parenthesizeConditionOfConditionalExpression(q),Ii.questionToken=Ce??dt(58),Ii.whenTrue=d().parenthesizeBranchOfConditionalExpression(Oe),Ii.colonToken=bt??dt(59),Ii.whenFalse=d().parenthesizeBranchOfConditionalExpression(Nr),Ii.transformFlags|=zs(Ii.condition)|zs(Ii.questionToken)|zs(Ii.whenTrue)|zs(Ii.colonToken)|zs(Ii.whenFalse),Ii.flowNodeWhenFalse=void 0,Ii.flowNodeWhenTrue=void 0,Ii}function Fe(q,Ce,Oe,bt,Nr,Ii){return q.condition!==Ce||q.questionToken!==Oe||q.whenTrue!==bt||q.colonToken!==Nr||q.whenFalse!==Ii?So(ll(Ce,Oe,bt,Nr,Ii),q):q}function gr(q,Ce){let Oe=Te(229);return Oe.head=q,Oe.templateSpans=Ne(Ce),Oe.transformFlags|=zs(Oe.head)|yA(Oe.templateSpans)|1024,Oe}function Ln(q,Ce,Oe){return q.head!==Ce||q.templateSpans!==Oe?So(gr(Ce,Oe),q):q}function bs(q,Ce,Oe,bt=0){pe.assert(!(bt&-7177),"Unsupported template flags.");let Nr;if(Oe!==void 0&&Oe!==Ce&&(Nr=PWt(q,Oe),typeof Nr=="object"))return pe.fail("Invalid raw text");if(Ce===void 0){if(Nr===void 0)return pe.fail("Arguments 'text' and 'rawText' may not both be undefined.");Ce=Nr}else Nr!==void 0&&pe.assert(Ce===Nr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return Ce}function Jl(q){let Ce=1024;return q&&(Ce|=128),Ce}function tg(q,Ce,Oe,bt){let Nr=Gr(q);return Nr.text=Ce,Nr.rawText=Oe,Nr.templateFlags=bt&7176,Nr.transformFlags=Jl(Nr.templateFlags),Nr}function zl(q,Ce,Oe,bt){let Nr=Ze(q);return Nr.text=Ce,Nr.rawText=Oe,Nr.templateFlags=bt&7176,Nr.transformFlags=Jl(Nr.templateFlags),Nr}function Su(q,Ce,Oe,bt){return q===15?zl(q,Ce,Oe,bt):tg(q,Ce,Oe,bt)}function xf(q,Ce,Oe){return q=bs(16,q,Ce,Oe),Su(16,q,Ce,Oe)}function Ug(q,Ce,Oe){return q=bs(16,q,Ce,Oe),Su(17,q,Ce,Oe)}function QC(q,Ce,Oe){return q=bs(16,q,Ce,Oe),Su(18,q,Ce,Oe)}function T1(q,Ce,Oe){return q=bs(16,q,Ce,Oe),zl(15,q,Ce,Oe)}function _S(q,Ce){pe.assert(!q||!!Ce,"A `YieldExpression` with an asteriskToken must have an expression.");let Oe=Te(230);return Oe.expression=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Oe.asteriskToken=q,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.asteriskToken)|1024|128|1048576,Oe}function wv(q,Ce,Oe){return q.expression!==Oe||q.asteriskToken!==Ce?So(_S(Ce,Oe),q):q}function $F(q){let Ce=Te(231);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|1024|32768,Ce}function d9(q,Ce){return q.expression!==Ce?So($F(Ce),q):q}function Qy(q,Ce,Oe,bt,Nr){let Ii=Ze(232);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.typeParameters=sd(Oe),Ii.heritageClauses=sd(bt),Ii.members=Ne(Nr),Ii.transformFlags|=yA(Ii.modifiers)|ZB(Ii.name)|yA(Ii.typeParameters)|yA(Ii.heritageClauses)|yA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.jsDoc=void 0,Ii}function gk(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.heritageClauses!==Nr||q.members!==Ii?So(Qy(Ce,Oe,bt,Nr,Ii),q):q}function dR(){return Te(233)}function XB(q,Ce){let Oe=Te(234);return Oe.expression=d().parenthesizeLeftSideOfAccess(q,!1),Oe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Oe.transformFlags|=zs(Oe.expression)|yA(Oe.typeArguments)|1024,Oe}function nO(q,Ce,Oe){return q.expression!==Ce||q.typeArguments!==Oe?So(XB(Ce,Oe),q):q}function br(q,Ce){let Oe=Te(235);return Oe.expression=q,Oe.type=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.type)|1,Oe}function sn(q,Ce,Oe){return q.expression!==Ce||q.type!==Oe?So(br(Ce,Oe),q):q}function ei(q){let Ce=Te(236);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function is(q,Ce){return DJ(q)?ao(q,Ce):q.expression!==Ce?So(ei(Ce),q):q}function Qs(q,Ce){let Oe=Te(239);return Oe.expression=q,Oe.type=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.type)|1,Oe}function Po(q,Ce,Oe){return q.expression!==Ce||q.type!==Oe?So(Qs(Ce,Oe),q):q}function Ps(q){let Ce=Te(236);return Ce.flags|=64,Ce.expression=d().parenthesizeLeftSideOfAccess(q,!0),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function ao(q,Ce){return pe.assert(!!(q.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),q.expression!==Ce?So(Ps(Ce),q):q}function Yc(q,Ce){let Oe=Te(237);switch(Oe.keywordToken=q,Oe.name=Ce,Oe.transformFlags|=zs(Oe.name),q){case 105:Oe.transformFlags|=1024;break;case 102:Oe.transformFlags|=32;break;default:return pe.assertNever(q)}return Oe.flowNode=void 0,Oe}function ru(q,Ce){return q.name!==Ce?So(Yc(q.keywordToken,Ce),q):q}function $a(q,Ce){let Oe=Te(240);return Oe.expression=q,Oe.literal=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.literal)|1024,Oe}function nu(q,Ce,Oe){return q.expression!==Ce||q.literal!==Oe?So($a(Ce,Oe),q):q}function ul(){let q=Te(241);return q.transformFlags|=1024,q}function Gf(q,Ce){let Oe=Te(242);return Oe.statements=Ne(q),Oe.multiLine=Ce,Oe.transformFlags|=yA(Oe.statements),Oe.jsDoc=void 0,Oe.locals=void 0,Oe.nextContainer=void 0,Oe}function Hb(q,Ce){return q.statements!==Ce?So(Gf(Ce,q.multiLine),q):q}function JB(q,Ce){let Oe=Te(244);return Oe.modifiers=sd(q),Oe.declarationList=Ki(Ce)?m5(Ce):Ce,Oe.transformFlags|=yA(Oe.modifiers)|zs(Oe.declarationList),Lw(Oe.modifiers)&128&&(Oe.transformFlags=1),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function h_(q,Ce,Oe){return q.modifiers!==Ce||q.declarationList!==Oe?So(JB(Ce,Oe),q):q}function UB(){let q=Te(243);return q.jsDoc=void 0,q}function R1(q){let Ce=Te(245);return Ce.expression=d().parenthesizeExpressionOfExpressionStatement(q),Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function p5(q,Ce){return q.expression!==Ce?So(R1(Ce),q):q}function ON(q,Ce,Oe){let bt=Te(246);return bt.expression=q,bt.thenStatement=rG(Ce),bt.elseStatement=rG(Oe),bt.transformFlags|=zs(bt.expression)|zs(bt.thenStatement)|zs(bt.elseStatement),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function Ak(q,Ce,Oe,bt){return q.expression!==Ce||q.thenStatement!==Oe||q.elseStatement!==bt?So(ON(Ce,Oe,bt),q):q}function f5(q,Ce){let Oe=Te(247);return Oe.statement=rG(q),Oe.expression=Ce,Oe.transformFlags|=zs(Oe.statement)|zs(Oe.expression),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function dk(q,Ce,Oe){return q.statement!==Ce||q.expression!==Oe?So(f5(Ce,Oe),q):q}function Bse(q,Ce){let Oe=Te(248);return Oe.expression=q,Oe.statement=rG(Ce),Oe.transformFlags|=zs(Oe.expression)|zs(Oe.statement),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function Fpe(q,Ce,Oe){return q.expression!==Ce||q.statement!==Oe?So(Bse(Ce,Oe),q):q}function wse(q,Ce,Oe,bt){let Nr=Te(249);return Nr.initializer=q,Nr.condition=Ce,Nr.incrementor=Oe,Nr.statement=rG(bt),Nr.transformFlags|=zs(Nr.initializer)|zs(Nr.condition)|zs(Nr.incrementor)|zs(Nr.statement),Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.flowNode=void 0,Nr}function Ux(q,Ce,Oe,bt,Nr){return q.initializer!==Ce||q.condition!==Oe||q.incrementor!==bt||q.statement!==Nr?So(wse(Ce,Oe,bt,Nr),q):q}function I5(q,Ce,Oe){let bt=Te(250);return bt.initializer=q,bt.expression=Ce,bt.statement=rG(Oe),bt.transformFlags|=zs(bt.initializer)|zs(bt.expression)|zs(bt.statement),bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt.flowNode=void 0,bt}function eK(q,Ce,Oe,bt){return q.initializer!==Ce||q.expression!==Oe||q.statement!==bt?So(I5(Ce,Oe,bt),q):q}function p9(q,Ce,Oe,bt){let Nr=Te(251);return Nr.awaitModifier=q,Nr.initializer=Ce,Nr.expression=d().parenthesizeExpressionForDisallowedComma(Oe),Nr.statement=rG(bt),Nr.transformFlags|=zs(Nr.awaitModifier)|zs(Nr.initializer)|zs(Nr.expression)|zs(Nr.statement)|1024,q&&(Nr.transformFlags|=128),Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr.flowNode=void 0,Nr}function tK(q,Ce,Oe,bt,Nr){return q.awaitModifier!==Ce||q.initializer!==Oe||q.expression!==bt||q.statement!==Nr?So(p9(Ce,Oe,bt,Nr),q):q}function dq(q){let Ce=Te(252);return Ce.label=Wm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function Zpe(q,Ce){return q.label!==Ce?So(dq(Ce),q):q}function rK(q){let Ce=Te(253);return Ce.label=Wm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function pq(q,Ce){return q.label!==Ce?So(rK(Ce),q):q}function h5(q){let Ce=Te(254);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|128|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function Tse(q,Ce){return q.expression!==Ce?So(h5(Ce),q):q}function nK(q,Ce){let Oe=Te(255);return Oe.expression=q,Oe.statement=rG(Ce),Oe.transformFlags|=zs(Oe.expression)|zs(Oe.statement),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function fq(q,Ce,Oe){return q.expression!==Ce||q.statement!==Oe?So(nK(Ce,Oe),q):q}function FQ(q,Ce){let Oe=Te(256);return Oe.expression=d().parenthesizeExpressionForDisallowedComma(q),Oe.caseBlock=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.caseBlock),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe.possiblyExhaustive=!1,Oe}function iO(q,Ce,Oe){return q.expression!==Ce||q.caseBlock!==Oe?So(FQ(Ce,Oe),q):q}function Iq(q,Ce){let Oe=Te(257);return Oe.label=Wm(q),Oe.statement=rG(Ce),Oe.transformFlags|=zs(Oe.label)|zs(Oe.statement),Oe.jsDoc=void 0,Oe.flowNode=void 0,Oe}function hq(q,Ce,Oe){return q.label!==Ce||q.statement!==Oe?So(Iq(Ce,Oe),q):q}function ZQ(q){let Ce=Te(258);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function sO(q,Ce){return q.expression!==Ce?So(ZQ(Ce),q):q}function f9(q,Ce,Oe){let bt=Te(259);return bt.tryBlock=q,bt.catchClause=Ce,bt.finallyBlock=Oe,bt.transformFlags|=zs(bt.tryBlock)|zs(bt.catchClause)|zs(bt.finallyBlock),bt.jsDoc=void 0,bt.flowNode=void 0,bt}function eZ(q,Ce,Oe,bt){return q.tryBlock!==Ce||q.catchClause!==Oe||q.finallyBlock!==bt?So(f9(Ce,Oe,bt),q):q}function tZ(){let q=Te(260);return q.jsDoc=void 0,q.flowNode=void 0,q}function rZ(q,Ce,Oe,bt){let Nr=Ze(261);return Nr.name=Wm(q),Nr.exclamationToken=Ce,Nr.type=Oe,Nr.initializer=W0(bt),Nr.transformFlags|=ZB(Nr.name)|zs(Nr.initializer)|(Nr.exclamationToken??Nr.type?1:0),Nr.jsDoc=void 0,Nr}function oO(q,Ce,Oe,bt,Nr){return q.name!==Ce||q.type!==bt||q.exclamationToken!==Oe||q.initializer!==Nr?So(rZ(Ce,Oe,bt,Nr),q):q}function m5(q,Ce=0){let Oe=Te(262);return Oe.flags|=Ce&7,Oe.declarations=Ne(q),Oe.transformFlags|=yA(Oe.declarations)|4194304,Ce&7&&(Oe.transformFlags|=263168),Ce&4&&(Oe.transformFlags|=4),Oe}function iK(q,Ce){return q.declarations!==Ce?So(m5(Ce,q.flags),q):q}function C5(q,Ce,Oe,bt,Nr,Ii,Jo){let du=Ze(263);if(du.modifiers=sd(q),du.asteriskToken=Ce,du.name=Wm(Oe),du.typeParameters=sd(bt),du.parameters=Ne(Nr),du.type=Ii,du.body=Jo,!du.body||Lw(du.modifiers)&128)du.transformFlags=1;else{let uf=Lw(du.modifiers)&1024,S2=!!du.asteriskToken,_O=uf&&S2;du.transformFlags=yA(du.modifiers)|zs(du.asteriskToken)|ZB(du.name)|yA(du.typeParameters)|yA(du.parameters)|zs(du.type)|zs(du.body)&-67108865|(_O?128:uf?256:S2?2048:0)|(du.typeParameters||du.type?1:0)|4194304}return du.typeArguments=void 0,du.jsDoc=void 0,du.locals=void 0,du.nextContainer=void 0,du.endFlowNode=void 0,du.returnFlowNode=void 0,du}function PA(q,Ce,Oe,bt,Nr,Ii,Jo,du){return q.modifiers!==Ce||q.asteriskToken!==Oe||q.name!==bt||q.typeParameters!==Nr||q.parameters!==Ii||q.type!==Jo||q.body!==du?sK(C5(Ce,Oe,bt,Nr,Ii,Jo,du),q):q}function sK(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),Pe(q,Ce)}function Rse(q,Ce,Oe,bt,Nr){let Ii=Ze(264);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.typeParameters=sd(Oe),Ii.heritageClauses=sd(bt),Ii.members=Ne(Nr),Lw(Ii.modifiers)&128?Ii.transformFlags=1:(Ii.transformFlags|=yA(Ii.modifiers)|ZB(Ii.name)|yA(Ii.typeParameters)|yA(Ii.heritageClauses)|yA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.transformFlags&8192&&(Ii.transformFlags|=1)),Ii.jsDoc=void 0,Ii}function nZ(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.heritageClauses!==Nr||q.members!==Ii?So(Rse(Ce,Oe,bt,Nr,Ii),q):q}function iZ(q,Ce,Oe,bt,Nr){let Ii=Ze(265);return Ii.modifiers=sd(q),Ii.name=Wm(Ce),Ii.typeParameters=sd(Oe),Ii.heritageClauses=sd(bt),Ii.members=Ne(Nr),Ii.transformFlags=1,Ii.jsDoc=void 0,Ii}function pk(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.heritageClauses!==Nr||q.members!==Ii?So(iZ(Ce,Oe,bt,Nr,Ii),q):q}function Sf(q,Ce,Oe,bt){let Nr=Ze(266);return Nr.modifiers=sd(q),Nr.name=Wm(Ce),Nr.typeParameters=sd(Oe),Nr.type=bt,Nr.transformFlags=1,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function A0(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.name!==Oe||q.typeParameters!==bt||q.type!==Nr?So(Sf(Ce,Oe,bt,Nr),q):q}function Yb(q,Ce,Oe){let bt=Ze(267);return bt.modifiers=sd(q),bt.name=Wm(Ce),bt.members=Ne(Oe),bt.transformFlags|=yA(bt.modifiers)|zs(bt.name)|yA(bt.members)|1,bt.transformFlags&=-67108865,bt.jsDoc=void 0,bt}function d0(q,Ce,Oe,bt){return q.modifiers!==Ce||q.name!==Oe||q.members!==bt?So(Yb(Ce,Oe,bt),q):q}function _5(q,Ce,Oe,bt=0){let Nr=Ze(268);return Nr.modifiers=sd(q),Nr.flags|=bt&2088,Nr.name=Ce,Nr.body=Oe,Lw(Nr.modifiers)&128?Nr.transformFlags=1:Nr.transformFlags|=yA(Nr.modifiers)|zs(Nr.name)|zs(Nr.body)|1,Nr.transformFlags&=-67108865,Nr.jsDoc=void 0,Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function fy(q,Ce,Oe,bt){return q.modifiers!==Ce||q.name!==Oe||q.body!==bt?So(_5(Ce,Oe,bt,q.flags),q):q}function fk(q){let Ce=Te(269);return Ce.statements=Ne(q),Ce.transformFlags|=yA(Ce.statements),Ce.jsDoc=void 0,Ce}function Xy(q,Ce){return q.statements!==Ce?So(fk(Ce),q):q}function KB(q){let Ce=Te(270);return Ce.clauses=Ne(q),Ce.transformFlags|=yA(Ce.clauses),Ce.locals=void 0,Ce.nextContainer=void 0,Ce}function Uw(q,Ce){return q.clauses!==Ce?So(KB(Ce),q):q}function y5(q){let Ce=Ze(271);return Ce.name=Wm(q),Ce.transformFlags|=Cie(Ce.name)|1,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce}function b5(q,Ce){return q.name!==Ce?Lpe(y5(Ce),q):q}function Lpe(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),So(q,Ce)}function Nse(q,Ce,Oe,bt){let Nr=Ze(272);return Nr.modifiers=sd(q),Nr.name=Wm(Oe),Nr.isTypeOnly=Ce,Nr.moduleReference=bt,Nr.transformFlags|=yA(Nr.modifiers)|Cie(Nr.name)|zs(Nr.moduleReference),HF(Nr.moduleReference)||(Nr.transformFlags|=1),Nr.transformFlags&=-67108865,Nr.jsDoc=void 0,Nr}function I9(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.isTypeOnly!==Oe||q.name!==bt||q.moduleReference!==Nr?So(Nse(Ce,Oe,bt,Nr),q):q}function LQ(q,Ce,Oe,bt){let Nr=Te(273);return Nr.modifiers=sd(q),Nr.importClause=Ce,Nr.moduleSpecifier=Oe,Nr.attributes=Nr.assertClause=bt,Nr.transformFlags|=zs(Nr.importClause)|zs(Nr.moduleSpecifier),Nr.transformFlags&=-67108865,Nr.jsDoc=void 0,Nr}function Br(q,Ce,Oe,bt,Nr){return q.modifiers!==Ce||q.importClause!==Oe||q.moduleSpecifier!==bt||q.attributes!==Nr?So(LQ(Ce,Oe,bt,Nr),q):q}function oK(q,Ce,Oe){let bt=Ze(274);return typeof q=="boolean"&&(q=q?156:void 0),bt.isTypeOnly=q===156,bt.phaseModifier=q,bt.name=Ce,bt.namedBindings=Oe,bt.transformFlags|=zs(bt.name)|zs(bt.namedBindings),q===156&&(bt.transformFlags|=1),bt.transformFlags&=-67108865,bt}function Kx(q,Ce,Oe,bt){return typeof Ce=="boolean"&&(Ce=Ce?156:void 0),q.phaseModifier!==Ce||q.name!==Oe||q.namedBindings!==bt?So(oK(Ce,Oe,bt),q):q}function Kw(q,Ce){let Oe=Te(301);return Oe.elements=Ne(q),Oe.multiLine=Ce,Oe.token=132,Oe.transformFlags|=4,Oe}function h9(q,Ce,Oe){return q.elements!==Ce||q.multiLine!==Oe?So(Kw(Ce,Oe),q):q}function aO(q,Ce){let Oe=Te(302);return Oe.name=q,Oe.value=Ce,Oe.transformFlags|=4,Oe}function Iy(q,Ce,Oe){return q.name!==Ce||q.value!==Oe?So(aO(Ce,Oe),q):q}function pR(q,Ce){let Oe=Te(303);return Oe.assertClause=q,Oe.multiLine=Ce,Oe}function jB(q,Ce,Oe){return q.assertClause!==Ce||q.multiLine!==Oe?So(pR(Ce,Oe),q):q}function E5(q,Ce,Oe){let bt=Te(301);return bt.token=Oe??118,bt.elements=Ne(q),bt.multiLine=Ce,bt.transformFlags|=4,bt}function dA(q,Ce,Oe){return q.elements!==Ce||q.multiLine!==Oe?So(E5(Ce,Oe,q.token),q):q}function yS(q,Ce){let Oe=Te(302);return Oe.name=q,Oe.value=Ce,Oe.transformFlags|=4,Oe}function m9(q,Ce,Oe){return q.name!==Ce||q.value!==Oe?So(yS(Ce,Oe),q):q}function aK(q){let Ce=Ze(275);return Ce.name=q,Ce.transformFlags|=zs(Ce.name),Ce.transformFlags&=-67108865,Ce}function sZ(q,Ce){return q.name!==Ce?So(aK(Ce),q):q}function VQ(q){let Ce=Ze(281);return Ce.name=q,Ce.transformFlags|=zs(Ce.name)|32,Ce.transformFlags&=-67108865,Ce}function Tv(q,Ce){return q.name!==Ce?So(VQ(Ce),q):q}function jx(q){let Ce=Te(276);return Ce.elements=Ne(q),Ce.transformFlags|=yA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function S5(q,Ce){return q.elements!==Ce?So(jx(Ce),q):q}function C9(q,Ce,Oe){let bt=Ze(277);return bt.isTypeOnly=q,bt.propertyName=Ce,bt.name=Oe,bt.transformFlags|=zs(bt.propertyName)|zs(bt.name),bt.transformFlags&=-67108865,bt}function PN(q,Ce,Oe,bt){return q.isTypeOnly!==Ce||q.propertyName!==Oe||q.name!==bt?So(C9(Ce,Oe,bt),q):q}function WQ(q,Ce,Oe){let bt=Ze(278);return bt.modifiers=sd(q),bt.isExportEquals=Ce,bt.expression=Ce?d().parenthesizeRightSideOfBinary(64,void 0,Oe):d().parenthesizeExpressionOfExportDefault(Oe),bt.transformFlags|=yA(bt.modifiers)|zs(bt.expression),bt.transformFlags&=-67108865,bt.jsDoc=void 0,bt}function v5(q,Ce,Oe){return q.modifiers!==Ce||q.expression!==Oe?So(WQ(Ce,q.isExportEquals,Oe),q):q}function fa(q,Ce,Oe,bt,Nr){let Ii=Ze(279);return Ii.modifiers=sd(q),Ii.isTypeOnly=Ce,Ii.exportClause=Oe,Ii.moduleSpecifier=bt,Ii.attributes=Ii.assertClause=Nr,Ii.transformFlags|=yA(Ii.modifiers)|zs(Ii.exportClause)|zs(Ii.moduleSpecifier),Ii.transformFlags&=-67108865,Ii.jsDoc=void 0,Ii}function sa(q,Ce,Oe,bt,Nr,Ii){return q.modifiers!==Ce||q.isTypeOnly!==Oe||q.exportClause!==bt||q.moduleSpecifier!==Nr||q.attributes!==Ii?m_(fa(Ce,Oe,bt,Nr,Ii),q):q}function m_(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),So(q,Ce)}function cK(q){let Ce=Te(280);return Ce.elements=Ne(q),Ce.transformFlags|=yA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function oZ(q,Ce){return q.elements!==Ce?So(cK(Ce),q):q}function OQ(q,Ce,Oe){let bt=Te(282);return bt.isTypeOnly=q,bt.propertyName=Wm(Ce),bt.name=Wm(Oe),bt.transformFlags|=zs(bt.propertyName)|zs(bt.name),bt.transformFlags&=-67108865,bt.jsDoc=void 0,bt}function Dse(q,Ce,Oe,bt){return q.isTypeOnly!==Ce||q.propertyName!==Oe||q.name!==bt?So(OQ(Ce,Oe,bt),q):q}function Vpe(){let q=Ze(283);return q.jsDoc=void 0,q}function qo(q){let Ce=Te(284);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.transformFlags&=-67108865,Ce}function hy(q,Ce){return q.expression!==Ce?So(qo(Ce),q):q}function mu(q){return Te(q)}function RE(q,Ce,Oe=!1){let bt=lK(q,Oe?Ce&&d().parenthesizeNonArrayTypeOfPostfixType(Ce):Ce);return bt.postfix=Oe,bt}function lK(q,Ce){let Oe=Te(q);return Oe.type=Ce,Oe}function cO(q,Ce,Oe){return Ce.type!==Oe?So(RE(q,Oe,Ce.postfix),Ce):Ce}function Fo(q,Ce,Oe){return Ce.type!==Oe?So(lK(q,Oe),Ce):Ce}function kse(q,Ce){let Oe=Ze(318);return Oe.parameters=sd(q),Oe.type=Ce,Oe.transformFlags=yA(Oe.parameters)|(Oe.type?1:0),Oe.jsDoc=void 0,Oe.locals=void 0,Oe.nextContainer=void 0,Oe.typeArguments=void 0,Oe}function mq(q,Ce,Oe){return q.parameters!==Ce||q.type!==Oe?So(kse(Ce,Oe),q):q}function L0(q,Ce=!1){let Oe=Ze(323);return Oe.jsDocPropertyTags=sd(q),Oe.isArrayType=Ce,Oe}function Ik(q,Ce,Oe){return q.jsDocPropertyTags!==Ce||q.isArrayType!==Oe?So(L0(Ce,Oe),q):q}function fR(q){let Ce=Te(310);return Ce.type=q,Ce}function lO(q,Ce){return q.type!==Ce?So(fR(Ce),q):q}function uK(q,Ce,Oe){let bt=Ze(324);return bt.typeParameters=sd(q),bt.parameters=Ne(Ce),bt.type=Oe,bt.jsDoc=void 0,bt.locals=void 0,bt.nextContainer=void 0,bt}function uO(q,Ce,Oe,bt){return q.typeParameters!==Ce||q.parameters!==Oe||q.type!==bt?So(uK(Ce,Oe,bt),q):q}function bS(q){let Ce=IEe(q.kind);return q.tagName.escapedText===pp(Ce)?q.tagName:Rt(Ce)}function jw(q,Ce,Oe){let bt=Te(q);return bt.tagName=Ce,bt.comment=Oe,bt}function Rv(q,Ce,Oe){let bt=Ze(q);return bt.tagName=Ce,bt.comment=Oe,bt}function Qb(q,Ce,Oe,bt){let Nr=jw(346,q??Rt("template"),bt);return Nr.constraint=Ce,Nr.typeParameters=Ne(Oe),Nr}function _9(q,Ce=bS(q),Oe,bt,Nr){return q.tagName!==Ce||q.constraint!==Oe||q.typeParameters!==bt||q.comment!==Nr?So(Qb(Ce,Oe,bt,Nr),q):q}function B5(q,Ce,Oe,bt){let Nr=Rv(347,q??Rt("typedef"),bt);return Nr.typeExpression=Ce,Nr.fullName=Oe,Nr.name=q$e(Oe),Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function Cq(q,Ce=bS(q),Oe,bt,Nr){return q.tagName!==Ce||q.typeExpression!==Oe||q.fullName!==bt||q.comment!==Nr?So(B5(Ce,Oe,bt,Nr),q):q}function w5(q,Ce,Oe,bt,Nr,Ii){let Jo=Rv(342,q??Rt("param"),Ii);return Jo.typeExpression=bt,Jo.name=Ce,Jo.isNameFirst=!!Nr,Jo.isBracketed=Oe,Jo}function gO(q,Ce=bS(q),Oe,bt,Nr,Ii,Jo){return q.tagName!==Ce||q.name!==Oe||q.isBracketed!==bt||q.typeExpression!==Nr||q.isNameFirst!==Ii||q.comment!==Jo?So(w5(Ce,Oe,bt,Nr,Ii,Jo),q):q}function _q(q,Ce,Oe,bt,Nr,Ii){let Jo=Rv(349,q??Rt("prop"),Ii);return Jo.typeExpression=bt,Jo.name=Ce,Jo.isNameFirst=!!Nr,Jo.isBracketed=Oe,Jo}function aZ(q,Ce=bS(q),Oe,bt,Nr,Ii,Jo){return q.tagName!==Ce||q.name!==Oe||q.isBracketed!==bt||q.typeExpression!==Nr||q.isNameFirst!==Ii||q.comment!==Jo?So(_q(Ce,Oe,bt,Nr,Ii,Jo),q):q}function MN(q,Ce,Oe,bt){let Nr=Rv(339,q??Rt("callback"),bt);return Nr.typeExpression=Ce,Nr.fullName=Oe,Nr.name=q$e(Oe),Nr.locals=void 0,Nr.nextContainer=void 0,Nr}function AO(q,Ce=bS(q),Oe,bt,Nr){return q.tagName!==Ce||q.typeExpression!==Oe||q.fullName!==bt||q.comment!==Nr?So(MN(Ce,Oe,bt,Nr),q):q}function T5(q,Ce,Oe){let bt=jw(340,q??Rt("overload"),Oe);return bt.typeExpression=Ce,bt}function y9(q,Ce=bS(q),Oe,bt){return q.tagName!==Ce||q.typeExpression!==Oe||q.comment!==bt?So(T5(Ce,Oe,bt),q):q}function dO(q,Ce,Oe){let bt=jw(329,q??Rt("augments"),Oe);return bt.class=Ce,bt}function zw(q,Ce=bS(q),Oe,bt){return q.tagName!==Ce||q.class!==Oe||q.comment!==bt?So(dO(Ce,Oe,bt),q):q}function cZ(q,Ce,Oe){let bt=jw(330,q??Rt("implements"),Oe);return bt.class=Ce,bt}function zx(q,Ce,Oe){let bt=jw(348,q??Rt("see"),Oe);return bt.name=Ce,bt}function pO(q,Ce,Oe,bt){return q.tagName!==Ce||q.name!==Oe||q.comment!==bt?So(zx(Ce,Oe,bt),q):q}function XC(q){let Ce=Te(311);return Ce.name=q,Ce}function PQ(q,Ce){return q.name!==Ce?So(XC(Ce),q):q}function qx(q,Ce){let Oe=Te(312);return Oe.left=q,Oe.right=Ce,Oe.transformFlags|=zs(Oe.left)|zs(Oe.right),Oe}function R5(q,Ce,Oe){return q.left!==Ce||q.right!==Oe?So(qx(Ce,Oe),q):q}function gK(q,Ce){let Oe=Te(325);return Oe.name=q,Oe.text=Ce,Oe}function $x(q,Ce,Oe){return q.name!==Ce?So(gK(Ce,Oe),q):q}function xse(q,Ce){let Oe=Te(326);return Oe.name=q,Oe.text=Ce,Oe}function yq(q,Ce,Oe){return q.name!==Ce?So(xse(Ce,Oe),q):q}function bq(q,Ce){let Oe=Te(327);return Oe.name=q,Oe.text=Ce,Oe}function Wpe(q,Ce,Oe){return q.name!==Ce?So(bq(Ce,Oe),q):q}function Eq(q,Ce=bS(q),Oe,bt){return q.tagName!==Ce||q.class!==Oe||q.comment!==bt?So(cZ(Ce,Oe,bt),q):q}function N5(q,Ce,Oe){return jw(q,Ce??Rt(IEe(q)),Oe)}function lZ(q,Ce,Oe=bS(Ce),bt){return Ce.tagName!==Oe||Ce.comment!==bt?So(N5(q,Oe,bt),Ce):Ce}function Gse(q,Ce,Oe,bt){let Nr=jw(q,Ce??Rt(IEe(q)),bt);return Nr.typeExpression=Oe,Nr}function D5(q,Ce,Oe=bS(Ce),bt,Nr){return Ce.tagName!==Oe||Ce.typeExpression!==bt||Ce.comment!==Nr?So(Gse(q,Oe,bt,Nr),Ce):Ce}function AK(q,Ce){return jw(328,q,Ce)}function Oh(q,Ce,Oe){return q.tagName!==Ce||q.comment!==Oe?So(AK(Ce,Oe),q):q}function JC(q,Ce,Oe){let bt=Rv(341,q??Rt(IEe(341)),Oe);return bt.typeExpression=Ce,bt.locals=void 0,bt.nextContainer=void 0,bt}function Sq(q,Ce=bS(q),Oe,bt){return q.tagName!==Ce||q.typeExpression!==Oe||q.comment!==bt?So(JC(Ce,Oe,bt),q):q}function Xb(q,Ce,Oe,bt,Nr){let Ii=jw(352,q??Rt("import"),Nr);return Ii.importClause=Ce,Ii.moduleSpecifier=Oe,Ii.attributes=bt,Ii.comment=Nr,Ii}function Nv(q,Ce,Oe,bt,Nr,Ii){return q.tagName!==Ce||q.comment!==Ii||q.importClause!==Oe||q.moduleSpecifier!==bt||q.attributes!==Nr?So(Xb(Ce,Oe,bt,Nr,Ii),q):q}function MQ(q){let Ce=Te(322);return Ce.text=q,Ce}function IR(q,Ce){return q.text!==Ce?So(MQ(Ce),q):q}function fO(q,Ce){let Oe=Te(321);return Oe.comment=q,Oe.tags=sd(Ce),Oe}function b9(q,Ce,Oe){return q.comment!==Ce||q.tags!==Oe?So(fO(Ce,Oe),q):q}function vq(q,Ce,Oe){let bt=Te(285);return bt.openingElement=q,bt.children=Ne(Ce),bt.closingElement=Oe,bt.transformFlags|=zs(bt.openingElement)|yA(bt.children)|zs(bt.closingElement)|2,bt}function Ope(q,Ce,Oe,bt){return q.openingElement!==Ce||q.children!==Oe||q.closingElement!==bt?So(vq(Ce,Oe,bt),q):q}function NI(q,Ce,Oe){let bt=Te(286);return bt.tagName=q,bt.typeArguments=sd(Ce),bt.attributes=Oe,bt.transformFlags|=zs(bt.tagName)|yA(bt.typeArguments)|zs(bt.attributes)|2,bt.typeArguments&&(bt.transformFlags|=1),bt}function Fse(q,Ce,Oe,bt){return q.tagName!==Ce||q.typeArguments!==Oe||q.attributes!==bt?So(NI(Ce,Oe,bt),q):q}function dK(q,Ce,Oe){let bt=Te(287);return bt.tagName=q,bt.typeArguments=sd(Ce),bt.attributes=Oe,bt.transformFlags|=zs(bt.tagName)|yA(bt.typeArguments)|zs(bt.attributes)|2,Ce&&(bt.transformFlags|=1),bt}function HQ(q,Ce,Oe,bt){return q.tagName!==Ce||q.typeArguments!==Oe||q.attributes!==bt?So(dK(Ce,Oe,bt),q):q}function Bq(q){let Ce=Te(288);return Ce.tagName=q,Ce.transformFlags|=zs(Ce.tagName)|2,Ce}function V0(q,Ce){return q.tagName!==Ce?So(Bq(Ce),q):q}function NE(q,Ce,Oe){let bt=Te(289);return bt.openingFragment=q,bt.children=Ne(Ce),bt.closingFragment=Oe,bt.transformFlags|=zs(bt.openingFragment)|yA(bt.children)|zs(bt.closingFragment)|2,bt}function pK(q,Ce,Oe,bt){return q.openingFragment!==Ce||q.children!==Oe||q.closingFragment!==bt?So(NE(Ce,Oe,bt),q):q}function k5(q,Ce){let Oe=Te(12);return Oe.text=q,Oe.containsOnlyTriviaWhiteSpaces=!!Ce,Oe.transformFlags|=2,Oe}function DE(q,Ce,Oe){return q.text!==Ce||q.containsOnlyTriviaWhiteSpaces!==Oe?So(k5(Ce,Oe),q):q}function fK(){let q=Te(290);return q.transformFlags|=2,q}function eG(){let q=Te(291);return q.transformFlags|=2,q}function wq(q,Ce){let Oe=Ze(292);return Oe.name=q,Oe.initializer=Ce,Oe.transformFlags|=zs(Oe.name)|zs(Oe.initializer)|2,Oe}function IK(q,Ce,Oe){return q.name!==Ce||q.initializer!==Oe?So(wq(Ce,Oe),q):q}function qw(q){let Ce=Ze(293);return Ce.properties=Ne(q),Ce.transformFlags|=yA(Ce.properties)|2,Ce}function Tq(q,Ce){return q.properties!==Ce?So(qw(Ce),q):q}function Zse(q){let Ce=Te(294);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|2,Ce}function Rq(q,Ce){return q.expression!==Ce?So(Zse(Ce),q):q}function hK(q,Ce){let Oe=Te(295);return Oe.dotDotDotToken=q,Oe.expression=Ce,Oe.transformFlags|=zs(Oe.dotDotDotToken)|zs(Oe.expression)|2,Oe}function Nq(q,Ce){return q.expression!==Ce?So(hK(q.dotDotDotToken,Ce),q):q}function E9(q,Ce){let Oe=Te(296);return Oe.namespace=q,Oe.name=Ce,Oe.transformFlags|=zs(Oe.namespace)|zs(Oe.name)|2,Oe}function N1(q,Ce,Oe){return q.namespace!==Ce||q.name!==Oe?So(E9(Ce,Oe),q):q}function HN(q,Ce){let Oe=Te(297);return Oe.expression=d().parenthesizeExpressionForDisallowedComma(q),Oe.statements=Ne(Ce),Oe.transformFlags|=zs(Oe.expression)|yA(Oe.statements),Oe.jsDoc=void 0,Oe}function mK(q,Ce,Oe){return q.expression!==Ce||q.statements!==Oe?So(HN(Ce,Oe),q):q}function CK(q){let Ce=Te(298);return Ce.statements=Ne(q),Ce.transformFlags=yA(Ce.statements),Ce}function qA(q,Ce){return q.statements!==Ce?So(CK(Ce),q):q}function Uo(q,Ce){let Oe=Te(299);switch(Oe.token=q,Oe.types=Ne(Ce),Oe.transformFlags|=yA(Oe.types),q){case 96:Oe.transformFlags|=1024;break;case 119:Oe.transformFlags|=1;break;default:return pe.assertNever(q)}return Oe}function ES(q,Ce){return q.types!==Ce?So(Uo(q.token,Ce),q):q}function nC(q,Ce){let Oe=Te(300);return Oe.variableDeclaration=Ck(q),Oe.block=Ce,Oe.transformFlags|=zs(Oe.variableDeclaration)|zs(Oe.block)|(q?0:64),Oe.locals=void 0,Oe.nextContainer=void 0,Oe}function x5(q,Ce,Oe){return q.variableDeclaration!==Ce||q.block!==Oe?So(nC(Ce,Oe),q):q}function _K(q,Ce){let Oe=Ze(304);return Oe.name=Wm(q),Oe.initializer=d().parenthesizeExpressionForDisallowedComma(Ce),Oe.transformFlags|=ZB(Oe.name)|zs(Oe.initializer),Oe.modifiers=void 0,Oe.questionToken=void 0,Oe.exclamationToken=void 0,Oe.jsDoc=void 0,Oe}function YQ(q,Ce,Oe){return q.name!==Ce||q.initializer!==Oe?G5(_K(Ce,Oe),q):q}function G5(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken),So(q,Ce)}function yK(q,Ce){let Oe=Ze(305);return Oe.name=Wm(q),Oe.objectAssignmentInitializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Oe.transformFlags|=Cie(Oe.name)|zs(Oe.objectAssignmentInitializer)|1024,Oe.equalsToken=void 0,Oe.modifiers=void 0,Oe.questionToken=void 0,Oe.exclamationToken=void 0,Oe.jsDoc=void 0,Oe}function Ae(q,Ce,Oe){return q.name!==Ce||q.objectAssignmentInitializer!==Oe?vt(yK(Ce,Oe),q):q}function vt(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken,q.equalsToken=Ce.equalsToken),So(q,Ce)}function fn(q){let Ce=Ze(306);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|128|65536,Ce.jsDoc=void 0,Ce}function qi(q,Ce){return q.expression!==Ce?So(fn(Ce),q):q}function ic(q,Ce){let Oe=Ze(307);return Oe.name=Wm(q),Oe.initializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Oe.transformFlags|=zs(Oe.name)|zs(Oe.initializer)|1,Oe.jsDoc=void 0,Oe}function Pc(q,Ce,Oe){return q.name!==Ce||q.initializer!==Oe?So(ic(Ce,Oe),q):q}function ql(q,Ce,Oe){let bt=c.createBaseSourceFileNode(308);return bt.statements=Ne(q),bt.endOfFileToken=Ce,bt.flags|=Oe,bt.text="",bt.fileName="",bt.path="",bt.resolvedPath="",bt.originalFileName="",bt.languageVersion=1,bt.languageVariant=0,bt.scriptKind=0,bt.isDeclarationFile=!1,bt.hasNoDefaultLib=!1,bt.transformFlags|=yA(bt.statements)|zs(bt.endOfFileToken),bt.locals=void 0,bt.nextContainer=void 0,bt.endFlowNode=void 0,bt.nodeCount=0,bt.identifierCount=0,bt.symbolCount=0,bt.parseDiagnostics=void 0,bt.bindDiagnostics=void 0,bt.bindSuggestionDiagnostics=void 0,bt.lineMap=void 0,bt.externalModuleIndicator=void 0,bt.setExternalModuleIndicator=void 0,bt.pragmas=void 0,bt.checkJsDirective=void 0,bt.referencedFiles=void 0,bt.typeReferenceDirectives=void 0,bt.libReferenceDirectives=void 0,bt.amdDependencies=void 0,bt.commentDirectives=void 0,bt.identifiers=void 0,bt.packageJsonLocations=void 0,bt.packageJsonScope=void 0,bt.imports=void 0,bt.moduleAugmentations=void 0,bt.ambientModuleNames=void 0,bt.classifiableNames=void 0,bt.impliedNodeFormat=void 0,bt}function Vc(q){let Ce=Object.create(q.redirectTarget);return Object.defineProperties(Ce,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Oe){this.redirectInfo.redirectTarget.id=Oe}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Oe){this.redirectInfo.redirectTarget.symbol=Oe}}}),Ce.redirectInfo=q,Ce}function bA(q){let Ce=Vc(q.redirectInfo);return Ce.flags|=q.flags&-17,Ce.fileName=q.fileName,Ce.path=q.path,Ce.resolvedPath=q.resolvedPath,Ce.originalFileName=q.originalFileName,Ce.packageJsonLocations=q.packageJsonLocations,Ce.packageJsonScope=q.packageJsonScope,Ce.emitNode=void 0,Ce}function Ph(q){let Ce=c.createBaseSourceFileNode(308);Ce.flags|=q.flags&-17;for(let Oe in q)if(!(Da(Ce,Oe)||!Da(q,Oe))){if(Oe==="emitNode"){Ce.emitNode=void 0;continue}Ce[Oe]=q[Oe]}return Ce}function p0(q){let Ce=q.redirectInfo?bA(q):Ph(q);return g(Ce,q),Ce}function Jy(q,Ce,Oe,bt,Nr,Ii,Jo){let du=p0(q);return du.statements=Ne(Ce),du.isDeclarationFile=Oe,du.referencedFiles=bt,du.typeReferenceDirectives=Nr,du.hasNoDefaultLib=Ii,du.libReferenceDirectives=Jo,du.transformFlags=yA(du.statements)|zs(du.endOfFileToken),du}function F5(q,Ce,Oe=q.isDeclarationFile,bt=q.referencedFiles,Nr=q.typeReferenceDirectives,Ii=q.hasNoDefaultLib,Jo=q.libReferenceDirectives){return q.statements!==Ce||q.isDeclarationFile!==Oe||q.referencedFiles!==bt||q.typeReferenceDirectives!==Nr||q.hasNoDefaultLib!==Ii||q.libReferenceDirectives!==Jo?So(Jy(q,Ce,Oe,bt,Nr,Ii,Jo),q):q}function Uy(q){let Ce=Te(309);return Ce.sourceFiles=q,Ce.syntheticFileReferences=void 0,Ce.syntheticTypeReferences=void 0,Ce.syntheticLibReferences=void 0,Ce.hasNoDefaultLib=void 0,Ce}function IO(q,Ce){return q.sourceFiles!==Ce?So(Uy(Ce),q):q}function Dq(q,Ce=!1,Oe){let bt=Te(238);return bt.type=q,bt.isSpread=Ce,bt.tupleNameSource=Oe,bt}function zB(q){let Ce=Te(353);return Ce._children=q,Ce}function Qf(q){let Ce=Te(354);return Ce.original=q,gn(Ce,q),Ce}function bK(q,Ce){let Oe=Te(356);return Oe.expression=q,Oe.original=Ce,Oe.transformFlags|=zs(Oe.expression)|1,gn(Oe,Ce),Oe}function S9(q,Ce){return q.expression!==Ce?So(bK(Ce,q.original),q):q}function $w(){return Te(355)}function v9(q){if(ap(q)&&!DL(q)&&!q.original&&!q.emitNode&&!q.id){if(Ede(q))return q.elements;if(po(q)&&SEe(q.operatorToken))return[q.left,q.right]}return q}function QQ(q){let Ce=Te(357);return Ce.elements=Ne(Fr(q,v9)),Ce.transformFlags|=yA(Ce.elements),Ce}function kOe(q,Ce){return q.elements!==Ce?So(QQ(Ce),q):q}function Ppe(q,Ce){let Oe=Te(358);return Oe.expression=q,Oe.thisArg=Ce,Oe.transformFlags|=zs(Oe.expression)|zs(Oe.thisArg),Oe}function kq(q,Ce,Oe){return q.expression!==Ce||q.thisArg!==Oe?So(Ppe(Ce,Oe),q):q}function Mpe(q){let Ce=mt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),yie(Ce,{...q.emitNode.autoGenerate}),Ce}function N2e(q){let Ce=mt(q.escapedText);Ce.flags|=q.flags&-17,Ce.jsDoc=q.jsDoc,Ce.flowNode=q.flowNode,Ce.symbol=q.symbol,Ce.transformFlags=q.transformFlags,g(Ce,q);let Oe=H3(q);return Oe&&Wx(Ce,Oe),Ce}function hO(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),yie(Ce,{...q.emitNode.autoGenerate}),Ce}function xq(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),Ce}function EK(q){if(q===void 0)return q;if(cl(q))return p0(q);if(Gp(q))return Mpe(q);if(Ir(q))return N2e(q);if(ZL(q))return hO(q);if(p(q))return xq(q);let Ce=A7(q.kind)?c.createBaseNode(q.kind):c.createBaseTokenNode(q.kind);Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q);for(let Oe in q)Da(Ce,Oe)||!Da(q,Oe)||(Ce[Oe]=q[Oe]);return Ce}function xOe(q,Ce,Oe){return Js(w1(void 0,void 0,void 0,void 0,Ce?[Ce]:[],void 0,Gf(q,!0)),void 0,Oe?[Oe]:[])}function XQ(q,Ce,Oe){return Js(Bv(void 0,void 0,Ce?[Ce]:[],void 0,void 0,Gf(q,!0)),void 0,Oe?[Oe]:[])}function SK(){return AR(Ke("0"))}function Hpe(q){return WQ(void 0,!1,q)}function Gq(q){return fa(void 0,!1,cK([OQ(!1,void 0,q)]))}function xl(q,Ce){return Ce==="null"?Ee.createStrictEquality(q,ir()):Ce==="undefined"?Ee.createStrictEquality(q,SK()):Ee.createStrictEquality(Mb(q),Tt(Ce))}function mO(q,Ce){return Ce==="null"?Ee.createStrictInequality(q,ir()):Ce==="undefined"?Ee.createStrictInequality(q,SK()):Ee.createStrictInequality(Mb(q),Tt(Ce))}function ro(q,Ce,Oe){return BB(q)?DA(Zp(q,void 0,Ce),void 0,void 0,Oe):Js(om(q,Ce),void 0,Oe)}function Ype(q,Ce,Oe){return ro(q,"bind",[Ce,...Oe])}function Lse(q,Ce,Oe){return ro(q,"call",[Ce,...Oe])}function Vse(q,Ce,Oe){return ro(q,"apply",[Ce,Oe])}function JQ(q,Ce,Oe){return ro(Rt(q),Ce,Oe)}function D2e(q,Ce){return ro(q,"slice",Ce===void 0?[]:[T9(Ce)])}function vK(q,Ce){return ro(q,"concat",Ce)}function GOe(q,Ce,Oe){return JQ("Object","defineProperty",[q,T9(Ce),Oe])}function Wse(q,Ce){return JQ("Object","getOwnPropertyDescriptor",[q,T9(Ce)])}function hk(q,Ce,Oe){return JQ("Reflect","get",Oe?[q,Ce,Oe]:[q,Ce])}function k2e(q,Ce,Oe,bt){return JQ("Reflect","set",bt?[q,Ce,Oe,bt]:[q,Ce,Oe])}function Z5(q,Ce,Oe){return Oe?(q.push(_K(Ce,Oe)),!0):!1}function FOe(q,Ce){let Oe=[];Z5(Oe,"enumerable",T9(q.enumerable)),Z5(Oe,"configurable",T9(q.configurable));let bt=Z5(Oe,"writable",T9(q.writable));bt=Z5(Oe,"value",q.value)||bt;let Nr=Z5(Oe,"get",q.get);return Nr=Z5(Oe,"set",q.set)||Nr,pe.assert(!(bt&&Nr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Fd(Oe,!Ce)}function Qpe(q,Ce){switch(q.kind){case 218:return YC(q,Ce);case 217:return E2(q,q.type,Ce);case 235:return sn(q,Ce,q.type);case 239:return Po(q,Ce,q.type);case 236:return is(q,Ce);case 234:return nO(q,Ce,q.typeArguments);case 356:return S9(q,Ce)}}function x2e(q){return dI(q)&&ap(q)&&ap(qT(q))&&ap(LB(q))&&!zt(P3(q))&&!zt(DU(q))}function Xpe(q,Ce,Oe=63){return q&&T9e(q,Oe)&&!x2e(q)?Qpe(q,Xpe(q.expression,Ce)):Ce}function L5(q,Ce,Oe){if(!Ce)return q;let bt=hq(Ce,Ce.label,YW(Ce.statement)?L5(q,Ce.statement):q);return Oe&&Oe(Ce),bt}function mk(q,Ce){let Oe=JA(q);switch(Oe.kind){case 80:return Ce;case 110:case 9:case 10:case 11:return!1;case 210:return Oe.elements.length!==0;case 211:return Oe.properties.length>0;default:return!0}}function Ose(q,Ce,Oe,bt=!1){let Nr=XI(q,63),Ii,Jo;return Zy(Nr)?(Ii=ot(),Jo=Nr):rr(Nr)?(Ii=ot(),Jo=Oe!==void 0&&Oe<2?gn(Rt("_super"),Nr):Nr):rA(Nr)&8192?(Ii=SK(),Jo=d().parenthesizeLeftSideOfAccess(Nr,!1)):jo(Nr)?mk(Nr.expression,bt)?(Ii=Lt(Ce),Jo=om(gn(Ee.createAssignment(Ii,Nr.expression),Nr.expression),Nr.name),gn(Jo,Nr)):(Ii=Nr.expression,Jo=Nr):Qg(Nr)?mk(Nr.expression,bt)?(Ii=Lt(Ce),Jo=W_(gn(Ee.createAssignment(Ii,Nr.expression),Nr.expression),Nr.argumentExpression),gn(Jo,Nr)):(Ii=Nr.expression,Jo=Nr):(Ii=SK(),Jo=d().parenthesizeLeftSideOfAccess(q,!1)),{target:Jo,thisArg:Ii}}function YN(q,Ce){return om(I_(Fd([st(void 0,"value",[Ic(void 0,void 0,q,void 0,void 0,void 0)],Gf([R1(Ce)]))])),"value")}function nt(q){return q.length>10?QQ(q):Kl(q,Ee.createComma)}function Kt(q,Ce,Oe,bt=0,Nr){let Ii=Nr?q&&vw(q):fl(q);if(Ii&&Ir(Ii)&&!Gp(Ii)){let Jo=UA(gn(EK(Ii),Ii),Ii.parent);return bt|=rA(Ii),Oe||(bt|=96),Ce||(bt|=3072),bt&&ti(Jo,bt),Jo}return _r(q)}function xr(q,Ce,Oe){return Kt(q,Ce,Oe,98304)}function Tn(q,Ce,Oe,bt){return Kt(q,Ce,Oe,32768,bt)}function Ai(q,Ce,Oe){return Kt(q,Ce,Oe,16384)}function Wi(q,Ce,Oe){return Kt(q,Ce,Oe)}function Ba(q,Ce,Oe,bt){let Nr=om(q,ap(Ce)?Ce:EK(Ce));gn(Nr,Ce);let Ii=0;return bt||(Ii|=96),Oe||(Ii|=3072),Ii&&ti(Nr,Ii),Nr}function Xo(q,Ce,Oe,bt){return q&&Ga(Ce,32)?Ba(q,Kt(Ce),Oe,bt):Ai(Ce,Oe,bt)}function lo(q,Ce,Oe,bt){let Nr=Sp(q,Ce,0,Oe);return rp(q,Ce,Nr,bt)}function Cc(q){return Lg(q.expression)&&q.expression.text==="use strict"}function Rl(){return x0(R1(Tt("use strict")))}function Sp(q,Ce,Oe=0,bt){pe.assert(Ce.length===0,"Prologue directives should be at the first statement in the target statements array");let Nr=!1,Ii=q.length;for(;Oedu&&S2.splice(Nr,0,...Ce.slice(du,uf)),du>Jo&&S2.splice(bt,0,...Ce.slice(Jo,du)),Jo>Ii&&S2.splice(Oe,0,...Ce.slice(Ii,Jo)),Ii>0)if(Oe===0)S2.splice(0,0,...Ce.slice(0,Ii));else{let _O=new Map;for(let hR=0;hR=0;hR--){let Zq=Ce[hR];_O.has(Zq.expression.text)||S2.unshift(Zq)}}return aN(q)?gn(Ne(S2,q.hasTrailingComma),q):q}function w9(q,Ce){let Oe;return typeof Ce=="number"?Oe=mn(Ce):Oe=Ce,Ds(q)?ks(q,Oe,q.name,q.constraint,q.default):Si(q)?ou(q,Oe,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):sk(q)?oo(q,Oe,q.typeParameters,q.parameters,q.type):ss(q)?ba(q,Oe,q.name,q.questionToken,q.type):pi(q)?yr(q,Oe,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):Il(q)?Pi(q,Oe,q.name,q.questionToken,q.typeParameters,q.parameters,q.type):gu(q)?pa(q,Oe,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Tc(q)?Tu(q,Oe,q.parameters,q.body):wg(q)?pt(q,Oe,q.name,q.parameters,q.type,q.body):kg(q)?nr(q,Oe,q.name,q.parameters,q.body):N0(q)?Gi(q,Oe,q.parameters,q.type):jA(q)?py(q,Oe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):gA(q)?uk(q,Oe,q.typeParameters,q.parameters,q.type,q.equalsGreaterThanToken,q.body):wd(q)?gk(q,Oe,q.name,q.typeParameters,q.heritageClauses,q.members):Eh(q)?h_(q,Oe,q.declarationList):ah(q)?PA(q,Oe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):mm(q)?nZ(q,Oe,q.name,q.typeParameters,q.heritageClauses,q.members):p_(q)?pk(q,Oe,q.name,q.typeParameters,q.heritageClauses,q.members):PB(q)?A0(q,Oe,q.name,q.typeParameters,q.type):J3(q)?d0(q,Oe,q.name,q.members):Lh(q)?fy(q,Oe,q.name,q.body):Zm(q)?I9(q,Oe,q.isTypeOnly,q.name,q.moduleReference):Yf(q)?Br(q,Oe,q.importClause,q.moduleSpecifier,q.attributes):yf(q)?v5(q,Oe,q.expression):Vh(q)?sa(q,Oe,q.isTypeOnly,q.exportClause,q.moduleSpecifier,q.attributes):pe.assertNever(q)}function tG(q,Ce){return Si(q)?ou(q,Ce,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):pi(q)?yr(q,Ce,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):gu(q)?pa(q,Ce,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):wg(q)?pt(q,Ce,q.name,q.parameters,q.type,q.body):kg(q)?nr(q,Ce,q.name,q.parameters,q.body):wd(q)?gk(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):mm(q)?nZ(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pe.assertNever(q)}function CO(q,Ce){switch(q.kind){case 178:return pt(q,q.modifiers,Ce,q.parameters,q.type,q.body);case 179:return nr(q,q.modifiers,Ce,q.parameters,q.body);case 175:return pa(q,q.modifiers,q.asteriskToken,Ce,q.questionToken,q.typeParameters,q.parameters,q.type,q.body);case 174:return Pi(q,q.modifiers,Ce,q.questionToken,q.typeParameters,q.parameters,q.type);case 173:return yr(q,q.modifiers,Ce,q.questionToken??q.exclamationToken,q.type,q.initializer);case 172:return ba(q,q.modifiers,Ce,q.questionToken,q.type);case 304:return YQ(q,Ce,q.initializer)}}function sd(q){return q?Ne(q):void 0}function Wm(q){return typeof q=="string"?Rt(q):q}function T9(q){return typeof q=="string"?Tt(q):typeof q=="number"?Ke(q):typeof q=="boolean"?q?qt():Yt():q}function W0(q){return q&&d().parenthesizeExpressionForDisallowedComma(q)}function Fq(q){return typeof q=="number"?dt(q):q}function rG(q){return q&&uOt(q)?gn(g(UB(),q),q):q}function Ck(q){return typeof q=="string"||q&&!nc(q)?rZ(q,void 0,void 0,void 0):q}function So(q,Ce){return q!==Ce&&(g(q,Ce),gn(q,Ce)),q}}function IEe(s){switch(s){case 345:return"type";case 343:return"returns";case 344:return"this";case 341:return"enum";case 331:return"author";case 333:return"class";case 334:return"public";case 335:return"private";case 336:return"protected";case 337:return"readonly";case 338:return"override";case 346:return"template";case 347:return"typedef";case 342:return"param";case 349:return"prop";case 339:return"callback";case 340:return"overload";case 329:return"augments";case 330:return"implements";case 352:return"import";default:return pe.fail(`Unsupported kind: ${pe.formatSyntaxKind(s)}`)}}var Vx,y$e={};function PWt(s,c){switch(Vx||(Vx=Nb(99,!1,0)),s){case 15:Vx.setText("`"+c+"`");break;case 16:Vx.setText("`"+c+"${");break;case 17:Vx.setText("}"+c+"${");break;case 18:Vx.setText("}"+c+"`");break}let g=Vx.scan();if(g===20&&(g=Vx.reScanTemplateToken(!1)),Vx.isUnterminated())return Vx.setText(void 0),y$e;let d;switch(g){case 15:case 16:case 17:case 18:d=Vx.getTokenValue();break}return d===void 0||Vx.scan()!==1?(Vx.setText(void 0),y$e):(Vx.setText(void 0),d)}function ZB(s){return s&&Ir(s)?Cie(s):zs(s)}function Cie(s){return zs(s)&-67108865}function MWt(s,c){return c|s.transformFlags&134234112}function zs(s){if(!s)return 0;let c=s.transformFlags&~b$e(s.kind);return sh(s)&&PI(s.name)?MWt(s.name,c):c}function yA(s){return s?s.transformFlags:0}function RU(s){let c=0;for(let g of s)c|=zs(g);s.transformFlags=c}function b$e(s){if(s>=183&&s<=206)return-2;switch(s){case 214:case 215:case 210:return-2147450880;case 268:return-1941676032;case 170:return-2147483648;case 220:return-2072174592;case 219:case 263:return-1937940480;case 262:return-2146893824;case 264:case 232:return-2147344384;case 177:return-1937948672;case 173:return-2013249536;case 175:case 178:case 179:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 169:case 172:case 174:case 180:case 181:case 182:case 265:case 266:return-2;case 211:return-2147278848;case 300:return-2147418112;case 207:case 208:return-2147450880;case 217:case 239:case 235:case 356:case 218:case 108:return-2147483648;case 212:case 213:return-2147483648;default:return-2147483648}}var wz=r9e();function hde(s){return s.flags|=16,s}var HWt={createBaseSourceFileNode:s=>hde(wz.createBaseSourceFileNode(s)),createBaseIdentifierNode:s=>hde(wz.createBaseIdentifierNode(s)),createBasePrivateIdentifierNode:s=>hde(wz.createBasePrivateIdentifierNode(s)),createBaseTokenNode:s=>hde(wz.createBaseTokenNode(s)),createBaseNode:s=>hde(wz.createBaseNode(s))},me=mie(4,HWt),Tz;function E$e(s,c,g){return new(Tz||(Tz=WC.getSourceMapSourceConstructor()))(s,c,g)}function ua(s,c){if(s.original!==c&&(s.original=c,c)){let g=c.emitNode;g&&(s.emitNode=S$e(g,s.emitNode))}return s}function S$e(s,c){let{flags:g,internalFlags:d,leadingComments:h,trailingComments:_,commentRange:S,sourceMapRange:R,tokenSourceMapRanges:T,constantValue:O,helpers:V,startsOnNewLine:M,snippetElement:ee,classThis:re,assignedName:ge}=s;if(c||(c={}),g&&(c.flags=g),d&&(c.internalFlags=d&-9),h&&(c.leadingComments=Pr(h.slice(),c.leadingComments)),_&&(c.trailingComments=Pr(_.slice(),c.trailingComments)),S&&(c.commentRange=S),R&&(c.sourceMapRange=R),T&&(c.tokenSourceMapRanges=NU(T,c.tokenSourceMapRanges)),O!==void 0&&(c.constantValue=O),V)for(let Ie of V)c.helpers=ps(c.helpers,Ie);return M!==void 0&&(c.startsOnNewLine=M),ee!==void 0&&(c.snippetElement=ee),re&&(c.classThis=re),ge&&(c.assignedName=ge),c}function NU(s,c){c||(c=[]);for(let g in s)c[g]=s[g];return c}function g_(s){if(s.emitNode)pe.assert(!(s.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(DL(s)){if(s.kind===308)return s.emitNode={annotatedNodes:[s]};let c=ms(eu(ms(s)))??pe.fail("Could not determine parsed source file.");g_(c).annotatedNodes.push(s)}s.emitNode={}}return s.emitNode}function ju(s){var c,g;let d=(g=(c=ms(eu(s)))==null?void 0:c.emitNode)==null?void 0:g.annotatedNodes;if(d)for(let h of d)h.emitNode=void 0}function Rz(s){let c=g_(s);return c.flags|=3072,c.leadingComments=void 0,c.trailingComments=void 0,s}function ti(s,c){return g_(s).flags=c,s}function Ow(s,c){let g=g_(s);return g.flags=g.flags|c,s}function _ie(s,c){return g_(s).internalFlags=c,s}function W3(s,c){let g=g_(s);return g.internalFlags=g.internalFlags|c,s}function qT(s){var c;return((c=s.emitNode)==null?void 0:c.sourceMapRange)??s}function Yg(s,c){return g_(s).sourceMapRange=c,s}function Nz(s,c){var g,d;return(d=(g=s.emitNode)==null?void 0:g.tokenSourceMapRanges)==null?void 0:d[c]}function hEe(s,c,g){let d=g_(s),h=d.tokenSourceMapRanges??(d.tokenSourceMapRanges=[]);return h[c]=g,s}function O3(s){var c;return(c=s.emitNode)==null?void 0:c.startsOnNewLine}function Yd(s,c){return g_(s).startsOnNewLine=c,s}function LB(s){var c;return((c=s.emitNode)==null?void 0:c.commentRange)??s}function yh(s,c){return g_(s).commentRange=c,s}function P3(s){var c;return(c=s.emitNode)==null?void 0:c.leadingComments}function VB(s,c){return g_(s).leadingComments=c,s}function $T(s,c,g,d){return VB(s,Ft(P3(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function DU(s){var c;return(c=s.emitNode)==null?void 0:c.trailingComments}function M3(s,c){return g_(s).trailingComments=c,s}function Dz(s,c,g,d){return M3(s,Ft(DU(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function i9e(s,c){VB(s,P3(c)),M3(s,DU(c));let g=g_(c);return g.leadingComments=void 0,g.trailingComments=void 0,s}function s9e(s){var c;return(c=s.emitNode)==null?void 0:c.constantValue}function o9e(s,c){let g=g_(s);return g.constantValue=c,s}function gQ(s,c){let g=g_(s);return g.helpers=Ft(g.helpers,c),s}function EN(s,c){if(zt(c)){let g=g_(s);for(let d of c)g.helpers=ps(g.helpers,d)}return s}function v$e(s,c){var g;let d=(g=s.emitNode)==null?void 0:g.helpers;return d?Xl(d,c):!1}function mEe(s){var c;return(c=s.emitNode)==null?void 0:c.helpers}function a9e(s,c,g){let d=s.emitNode,h=d&&d.helpers;if(!zt(h))return;let _=g_(c),S=0;for(let R=0;R0&&(h[R-S]=T)}S>0&&(h.length-=S)}function CEe(s){var c;return(c=s.emitNode)==null?void 0:c.snippetElement}function _Ee(s,c){let g=g_(s);return g.snippetElement=c,s}function yEe(s){return g_(s).internalFlags|=4,s}function c9e(s,c){let g=g_(s);return g.typeNode=c,s}function l9e(s){var c;return(c=s.emitNode)==null?void 0:c.typeNode}function Wx(s,c){return g_(s).identifierTypeArguments=c,s}function H3(s){var c;return(c=s.emitNode)==null?void 0:c.identifierTypeArguments}function yie(s,c){return g_(s).autoGenerate=c,s}function B$e(s){var c;return(c=s.emitNode)==null?void 0:c.autoGenerate}function u9e(s,c){return g_(s).generatedImportReference=c,s}function g9e(s){var c;return(c=s.emitNode)==null?void 0:c.generatedImportReference}var A9e=(s=>(s.Field="f",s.Method="m",s.Accessor="a",s))(A9e||{});function d9e(s){let c=s.factory,g=LA(()=>_ie(c.createTrue(),8)),d=LA(()=>_ie(c.createFalse(),8));return{getUnscopedHelperName:h,createDecorateHelper:_,createMetadataHelper:S,createParamHelper:R,createESDecorateHelper:Ie,createRunInitializersHelper:_e,createAssignHelper:Ee,createAwaitHelper:Ne,createAsyncGeneratorHelper:Te,createAsyncDelegatorHelper:Ze,createAsyncValuesHelper:Pe,createRestHelper:Ke,createAwaiterHelper:et,createExtendsHelper:Ye,createTemplateObjectHelper:Tt,createSpreadArrayHelper:at,createPropKeyHelper:Qe,createSetFunctionNameHelper:Ct,createValuesHelper:mt,createReadHelper:yt,createGeneratorHelper:Rt,createImportStarHelper:Lt,createImportStarCallbackHelper:je,createImportDefaultHelper:Wt,createExportStarHelper:_r,createClassPrivateFieldGetHelper:Gt,createClassPrivateFieldSetHelper:it,createClassPrivateFieldInHelper:Dt,createAddDisposableResourceHelper:tr,createDisposeResourcesHelper:ur,createRewriteRelativeImportExtensionsHelper:Gr};function h(dt){return ti(c.createIdentifier(dt),8196)}function _(dt,pr,ot,ir){s.requestEmitHelper(YWt);let qt=[];return qt.push(c.createArrayLiteralExpression(dt,!0)),qt.push(pr),ot&&(qt.push(ot),ir&&qt.push(ir)),c.createCallExpression(h("__decorate"),void 0,qt)}function S(dt,pr){return s.requestEmitHelper(QWt),c.createCallExpression(h("__metadata"),void 0,[c.createStringLiteral(dt),pr])}function R(dt,pr,ot){return s.requestEmitHelper(XWt),gn(c.createCallExpression(h("__param"),void 0,[c.createNumericLiteral(pr+""),dt]),ot)}function T(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral("class")),c.createPropertyAssignment(c.createIdentifier("name"),dt.name),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function O(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("get",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,pr))}function V(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("set",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj")),c.createParameterDeclaration(void 0,void 0,c.createIdentifier("value"))],void 0,void 0,c.createBlock([c.createExpressionStatement(c.createAssignment(pr,c.createIdentifier("value")))])))}function M(dt){let pr=dt.computed?dt.name:Ir(dt.name)?c.createStringLiteralFromNode(dt.name):dt.name;return c.createPropertyAssignment("has",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,c.createBinaryExpression(pr,103,c.createIdentifier("obj"))))}function ee(dt,pr){let ot=[];return ot.push(M(dt)),pr.get&&ot.push(O(dt)),pr.set&&ot.push(V(dt)),c.createObjectLiteralExpression(ot)}function re(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral(dt.kind)),c.createPropertyAssignment(c.createIdentifier("name"),dt.name.computed?dt.name.name:c.createStringLiteralFromNode(dt.name.name)),c.createPropertyAssignment(c.createIdentifier("static"),dt.static?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("private"),dt.private?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("access"),ee(dt.name,dt.access)),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function ge(dt){return dt.kind==="class"?T(dt):re(dt)}function Ie(dt,pr,ot,ir,qt,Yt){return s.requestEmitHelper(JWt),c.createCallExpression(h("__esDecorate"),void 0,[dt??c.createNull(),pr??c.createNull(),ot,ge(ir),qt,Yt])}function _e(dt,pr,ot){return s.requestEmitHelper(Ox),c.createCallExpression(h("__runInitializers"),void 0,ot?[dt,pr,ot]:[dt,pr])}function Ee(dt){return Hg(s.getCompilerOptions())>=2?c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"assign"),void 0,dt):(s.requestEmitHelper(UWt),c.createCallExpression(h("__assign"),void 0,dt))}function Ne(dt){return s.requestEmitHelper(nd),c.createCallExpression(h("__await"),void 0,[dt])}function Te(dt,pr){return s.requestEmitHelper(nd),s.requestEmitHelper(mde),(dt.emitNode||(dt.emitNode={})).flags|=1572864,c.createCallExpression(h("__asyncGenerator"),void 0,[pr?c.createThis():c.createVoidZero(),c.createIdentifier("arguments"),dt])}function Ze(dt){return s.requestEmitHelper(nd),s.requestEmitHelper(LF),c.createCallExpression(h("__asyncDelegator"),void 0,[dt])}function Pe(dt){return s.requestEmitHelper(KWt),c.createCallExpression(h("__asyncValues"),void 0,[dt])}function Ke(dt,pr,ot,ir){s.requestEmitHelper(jWt);let qt=[],Yt=0;for(let Tr=0;Tr{let d="";for(let h=0;h 2; for (var i = 0; i < initializers.length; i++) { @@ -728,7 +728,7 @@ ${Hn.join(` }; return __assign.apply(this, arguments); };`},nd={name:"typescript:await",importName:"__await",scoped:!1,text:` - var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},hde={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[nd],text:` + var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},mde={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[nd],text:` var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i, q = []; @@ -740,7 +740,7 @@ ${Hn.join(` 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]); } - };`},ZF={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[nd],text:` + };`},LF={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[nd],text:` var __asyncDelegator = (this && this.__asyncDelegator) || function (o) { var i, p; return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; @@ -788,7 +788,7 @@ ${Hn.join(` function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; - })();`},Dz={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:` + })();`},kz={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:` var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) { if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } return cooked; @@ -808,7 +808,7 @@ ${Hn.join(` finally { if (e) throw e.error; } } return ar; - };`},mde={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` + };`},Cde={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { @@ -878,7 +878,7 @@ ${Hn.join(` Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; - });`},R$e={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[I9e,nOt],priority:2,text:` + });`},T$e={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[I9e,nOt],priority:2,text:` var __importStar = (this && this.__importStar) || (function () { var ownKeys = function(o) { ownKeys = Object.getOwnPropertyNames || function (o) { @@ -901,7 +901,7 @@ ${Hn.join(` };`},iOt={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[I9e],priority:2,text:` var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); - };`},yie={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` + };`},bie={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` 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"); @@ -912,11 +912,11 @@ ${Hn.join(` 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; - };`},bie={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` + };`},Eie={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(state, receiver) { if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object"); return typeof state === "function" ? receiver === state : state.has(receiver); - };`},N$e={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:` + };`},R$e={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:` var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) { if (value !== null && value !== void 0) { if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected."); @@ -938,7 +938,7 @@ ${Hn.join(` env.stack.push({ async: true }); } return value; - };`},D$e={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:` + };`},N$e={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:` var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) { return function (env) { function fail(e) { @@ -968,7 +968,7 @@ ${Hn.join(` })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { var e = new Error(message); return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; - });`},k$e={name:"typescript:rewriteRelativeImportExtensions",importName:"__rewriteRelativeImportExtension",scoped:!1,text:` + });`},D$e={name:"typescript:rewriteRelativeImportExtensions",importName:"__rewriteRelativeImportExtension",scoped:!1,text:` var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) { if (typeof path === "string" && /^\\.\\.?\\//.test(path)) { return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) { @@ -976,42 +976,42 @@ ${Hn.join(` }); } return path; - };`},Eie={name:"typescript:async-super",scoped:!0,text:T$e` - const ${"_superIndex"} = name => super[name];`},LF={name:"typescript:advanced-async-super",scoped:!0,text:T$e` + };`},Sie={name:"typescript:async-super",scoped:!0,text:w$e` + const ${"_superIndex"} = name => super[name];`},VF={name:"typescript:advanced-async-super",scoped:!0,text:w$e` const ${"_superIndex"} = (function (geti, seti) { const cache = Object.create(null); return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } }); - })(name => super[name], (name, value) => super[name] = value);`};function nk(s,c){return Ll(s)&&Ir(s.expression)&&(rA(s.expression)&8192)!==0&&s.expression.escapedText===c}function yC(s){return s.kind===9}function gQ(s){return s.kind===10}function Lg(s){return s.kind===11}function t9(s){return s.kind===12}function EEe(s){return s.kind===14}function MW(s){return s.kind===15}function AQ(s){return s.kind===16}function Sie(s){return s.kind===17}function Cde(s){return s.kind===18}function _de(s){return s.kind===26}function SEe(s){return s.kind===28}function kz(s){return s.kind===40}function yde(s){return s.kind===41}function vie(s){return s.kind===42}function xz(s){return s.kind===54}function $T(s){return s.kind===58}function vEe(s){return s.kind===59}function Bie(s){return s.kind===29}function h9e(s){return s.kind===39}function Ir(s){return s.kind===80}function p(s){return s.kind===81}function y(s){return s.kind===95}function w(s){return s.kind===90}function G(s){return s.kind===134}function X(s){return s.kind===131}function U(s){return s.kind===135}function le(s){return s.kind===148}function Ge(s){return s.kind===126}function Xe(s){return s.kind===128}function St(s){return s.kind===164}function ht(s){return s.kind===129}function rr(s){return s.kind===108}function an(s){return s.kind===102}function Ks(s){return s.kind===84}function zi(s){return s.kind===167}function Un(s){return s.kind===168}function Ds(s){return s.kind===169}function Si(s){return s.kind===170}function So(s){return s.kind===171}function ss(s){return s.kind===172}function pi(s){return s.kind===173}function Il(s){return s.kind===174}function gu(s){return s.kind===175}function Al(s){return s.kind===176}function Tc(s){return s.kind===177}function wg(s){return s.kind===178}function kg(s){return s.kind===179}function Tg(s){return s.kind===180}function im(s){return s.kind===181}function R0(s){return s.kind===182}function vE(s){return s.kind===183}function oh(s){return s.kind===184}function F_(s){return s.kind===185}function ik(s){return s.kind===186}function Ow(s){return s.kind===187}function bh(s){return s.kind===188}function VF(s){return s.kind===189}function Pw(s){return s.kind===190}function eR(s){return s.kind===203}function r9(s){return s.kind===191}function n9(s){return s.kind===192}function gS(s){return s.kind===193}function _f(s){return s.kind===194}function I2(s){return s.kind===195}function tR(s){return s.kind===196}function Cv(s){return s.kind===197}function Ox(s){return s.kind===198}function VB(s){return s.kind===199}function _v(s){return s.kind===200}function WB(s){return s.kind===201}function BE(s){return s.kind===202}function qm(s){return s.kind===206}function EN(s){return s.kind===205}function rR(s){return s.kind===204}function $m(s){return s.kind===207}function h2(s){return s.kind===208}function mg(s){return s.kind===209}function YI(s){return s.kind===210}function ag(s){return s.kind===211}function jo(s){return s.kind===212}function Qg(s){return s.kind===213}function Ll(s){return s.kind===214}function m2(s){return s.kind===215}function QI(s){return s.kind===216}function WF(s){return s.kind===217}function dI(s){return s.kind===218}function jA(s){return s.kind===219}function uA(s){return s.kind===220}function OF(s){return s.kind===221}function SN(s){return s.kind===222}function nR(s){return s.kind===223}function C1(s){return s.kind===224}function N0(s){return s.kind===225}function sk(s){return s.kind===226}function po(s){return s.kind===227}function Mw(s){return s.kind===228}function PF(s){return s.kind===229}function Qd(s){return s.kind===230}function cf(s){return s.kind===231}function wd(s){return s.kind===232}function Ep(s){return s.kind===233}function g_(s){return s.kind===234}function Xd(s){return s.kind===235}function Xg(s){return s.kind===239}function yv(s){return s.kind===236}function Du(s){return s.kind===237}function M3(s){return s.kind===238}function gy(s){return s.kind===356}function bde(s){return s.kind===357}function wie(s){return s.kind===240}function oOt(s){return s.kind===241}function eg(s){return s.kind===242}function Eh(s){return s.kind===244}function x$e(s){return s.kind===243}function OC(s){return s.kind===245}function H3(s){return s.kind===246}function f$r(s){return s.kind===247}function G$e(s){return s.kind===248}function Y3(s){return s.kind===249}function m9e(s){return s.kind===250}function BEe(s){return s.kind===251}function I$r(s){return s.kind===252}function h$r(s){return s.kind===253}function C2(s){return s.kind===254}function aOt(s){return s.kind===255}function Ede(s){return s.kind===256}function HW(s){return s.kind===257}function F$e(s){return s.kind===258}function DU(s){return s.kind===259}function m$r(s){return s.kind===260}function nc(s){return s.kind===261}function A_(s){return s.kind===262}function ah(s){return s.kind===263}function mm(s){return s.kind===264}function d_(s){return s.kind===265}function OB(s){return s.kind===266}function Q3(s){return s.kind===267}function Lh(s){return s.kind===268}function vN(s){return s.kind===269}function Sde(s){return s.kind===270}function wEe(s){return s.kind===271}function Zm(s){return s.kind===272}function Yf(s){return s.kind===273}function Hw(s){return s.kind===274}function C$r(s){return s.kind===303}function cOt(s){return s.kind===301}function _$r(s){return s.kind===302}function kU(s){return s.kind===301}function lOt(s){return s.kind===302}function Px(s){return s.kind===275}function ok(s){return s.kind===281}function BN(s){return s.kind===276}function Ay(s){return s.kind===277}function yf(s){return s.kind===278}function Vh(s){return s.kind===279}function bv(s){return s.kind===280}function D0(s){return s.kind===282}function C9e(s){return s.kind===80||s.kind===11}function y$r(s){return s.kind===283}function uOt(s){return s.kind===354}function Gz(s){return s.kind===358}function MF(s){return s.kind===284}function wN(s){return s.kind===285}function xU(s){return s.kind===286}function iR(s){return s.kind===287}function dQ(s){return s.kind===288}function X3(s){return s.kind===289}function Yw(s){return s.kind===290}function gOt(s){return s.kind===291}function TN(s){return s.kind===292}function pQ(s){return s.kind===293}function Fz(s){return s.kind===294}function Tie(s){return s.kind===295}function sR(s){return s.kind===296}function Rie(s){return s.kind===297}function vde(s){return s.kind===298}function _1(s){return s.kind===299}function fQ(s){return s.kind===300}function Cm(s){return s.kind===304}function l0(s){return s.kind===305}function Mx(s){return s.kind===306}function HF(s){return s.kind===307}function al(s){return s.kind===308}function AOt(s){return s.kind===309}function J3(s){return s.kind===310}function Bde(s){return s.kind===311}function U3(s){return s.kind===312}function dOt(s){return s.kind===325}function pOt(s){return s.kind===326}function b$r(s){return s.kind===327}function fOt(s){return s.kind===313}function IOt(s){return s.kind===314}function Nie(s){return s.kind===315}function _9e(s){return s.kind===316}function Z$e(s){return s.kind===317}function Die(s){return s.kind===318}function y9e(s){return s.kind===319}function E$r(s){return s.kind===320}function oR(s){return s.kind===321}function GU(s){return s.kind===323}function i9(s){return s.kind===324}function Zz(s){return s.kind===329}function S$r(s){return s.kind===331}function hOt(s){return s.kind===333}function L$e(s){return s.kind===339}function V$e(s){return s.kind===334}function W$e(s){return s.kind===335}function O$e(s){return s.kind===336}function P$e(s){return s.kind===337}function b9e(s){return s.kind===338}function kie(s){return s.kind===340}function M$e(s){return s.kind===332}function v$r(s){return s.kind===348}function TEe(s){return s.kind===341}function AS(s){return s.kind===342}function E9e(s){return s.kind===343}function H$e(s){return s.kind===344}function wde(s){return s.kind===345}function PB(s){return s.kind===346}function FU(s){return s.kind===347}function B$r(s){return s.kind===328}function mOt(s){return s.kind===349}function S9e(s){return s.kind===330}function v9e(s){return s.kind===351}function w$r(s){return s.kind===350}function RN(s){return s.kind===352}function xie(s){return s.kind===353}var Tde=new WeakMap;function Y$e(s,c){var g;let d=s.kind;return g7(d)?d===353?s._children:(g=Tde.get(c))==null?void 0:g.get(s):E}function COt(s,c,g){s.kind===353&&pe.fail("Should not need to re-set the children of a SyntaxList.");let d=Tde.get(c);return d===void 0&&(d=new WeakMap,Tde.set(c,d)),d.set(s,g),g}function Q$e(s,c){var g;s.kind===353&&pe.fail("Did not expect to unset the children of a SyntaxList."),(g=Tde.get(c))==null||g.delete(s)}function _Ot(s,c){let g=Tde.get(s);g!==void 0&&(Tde.delete(s),Tde.set(c,g))}function REe(s){return s.createExportDeclaration(void 0,!1,s.createNamedExports([]),void 0)}function ZU(s,c,g,d){if(Un(g))return gn(s.createElementAccessExpression(c,g.expression),d);{let h=gn(vw(g)?s.createPropertyAccessExpression(c,g):s.createElementAccessExpression(c,g),g);return Ww(h,128),h}}function yOt(s,c){let g=j3.createIdentifier(s||"React");return UA(g,eu(c)),g}function bOt(s,c,g){if(zi(c)){let d=bOt(s,c.left,g),h=s.createIdentifier(Vo(c.right));return h.escapedText=c.right.escapedText,s.createPropertyAccessExpression(d,h)}else return yOt(Vo(c),g)}function X$e(s,c,g,d){return c?bOt(s,c,d):s.createPropertyAccessExpression(yOt(g,d),"createElement")}function c2s(s,c,g,d){return c?bOt(s,c,d):s.createPropertyAccessExpression(yOt(g,d),"Fragment")}function EOt(s,c,g,d,h,_){let S=[g];if(d&&S.push(d),h&&h.length>0)if(d||S.push(s.createNull()),h.length>1)for(let R of h)k0(R),S.push(R);else S.push(h[0]);return gn(s.createCallExpression(c,void 0,S),_)}function SOt(s,c,g,d,h,_,S){let T=[c2s(s,g,d,_),s.createNull()];if(h&&h.length>0)if(h.length>1)for(let O of h)k0(O),T.push(O);else T.push(h[0]);return gn(s.createCallExpression(X$e(s,c,d,_),void 0,T),S)}function J$e(s,c,g){if(A_(c)){let d=ma(c.declarations),h=s.updateVariableDeclaration(d,d.name,void 0,void 0,g);return gn(s.createVariableStatement(void 0,s.updateVariableDeclarationList(c,[h])),c)}else{let d=gn(s.createAssignment(c,g),c);return gn(s.createExpressionStatement(d),c)}}function NEe(s,c){if(zi(c)){let g=NEe(s,c.left),d=UA(gn(s.cloneNode(c.right),c.right),c.right.parent);return gn(s.createPropertyAccessExpression(g,d),c)}else return UA(gn(s.cloneNode(c),c),c.parent)}function U$e(s,c){return Ir(c)?s.createStringLiteralFromNode(c):Un(c)?UA(gn(s.cloneNode(c.expression),c.expression),c.expression.parent):UA(gn(s.cloneNode(c),c),c.parent)}function l2s(s,c,g,d,h){let{firstAccessor:_,getAccessor:S,setAccessor:R}=GW(c,g);if(g===_)return gn(s.createObjectDefinePropertyCall(d,U$e(s,g.name),s.createPropertyDescriptor({enumerable:s.createFalse(),configurable:!0,get:S&&gn(ua(s.createFunctionExpression(iN(S),void 0,void 0,void 0,S.parameters,void 0,S.body),S),S),set:R&&gn(ua(s.createFunctionExpression(iN(R),void 0,void 0,void 0,R.parameters,void 0,R.body),R),R)},!h)),_)}function u2s(s,c,g){return ua(gn(s.createAssignment(ZU(s,g,c.name,c.name),c.initializer),c),c)}function g2s(s,c,g){return ua(gn(s.createAssignment(ZU(s,g,c.name,c.name),s.cloneNode(c.name)),c),c)}function A2s(s,c,g){return ua(gn(s.createAssignment(ZU(s,g,c.name,c.name),ua(gn(s.createFunctionExpression(iN(c),c.asteriskToken,void 0,void 0,c.parameters,void 0,c.body),c),c)),c),c)}function vOt(s,c,g,d){switch(g.name&&p(g.name)&&pe.failBadSyntaxKind(g.name,"Private identifiers are not allowed in object literals."),g.kind){case 178:case 179:return l2s(s,c.properties,g,d,!!c.multiLine);case 304:return u2s(s,g,d);case 305:return g2s(s,g,d);case 175:return A2s(s,g,d)}}function B9e(s,c,g,d,h){let _=c.operator;pe.assert(_===46||_===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let S=s.createTempVariable(d);g=s.createAssignment(S,g),gn(g,c.operand);let R=N0(c)?s.createPrefixUnaryExpression(_,S):s.createPostfixUnaryExpression(S,_);return gn(R,c),h&&(R=s.createAssignment(h,R),gn(R,c)),g=s.createComma(g,R),gn(g,c),sk(c)&&(g=s.createComma(g,S),gn(g,c)),g}function K$e(s){return(rA(s)&65536)!==0}function YF(s){return(rA(s)&32768)!==0}function w9e(s){return(rA(s)&16384)!==0}function T$r(s){return Lg(s.expression)&&s.expression.text==="use strict"}function j$e(s){for(let c of s)if(aS(c)){if(T$r(c))return c}else break}function BOt(s){let c=Nc(s);return c!==void 0&&aS(c)&&T$r(c)}function DEe(s){return s.kind===227&&s.operatorToken.kind===28}function Rde(s){return DEe(s)||bde(s)}function IQ(s){return dI(s)&&wo(s)&&!!uv(s)}function Gie(s){let c=sN(s);return pe.assertIsDefined(c),c}function T9e(s,c=63){switch(s.kind){case 218:return c&-2147483648&&IQ(s)?!1:(c&1)!==0;case 217:case 235:return(c&2)!==0;case 239:return(c&34)!==0;case 234:return(c&16)!==0;case 236:return(c&4)!==0;case 356:return(c&8)!==0}return!1}function XI(s,c=63){for(;T9e(s,c);)s=s.expression;return s}function wOt(s,c=63){let g=s.parent;for(;T9e(g,c);)g=g.parent,pe.assert(g);return g}function k0(s){return Yd(s,!0)}function kEe(s){let c=xd(s,al),g=c&&c.emitNode;return g&&g.externalHelpersModuleName}function TOt(s){let c=xd(s,al),g=c&&c.emitNode;return!!g&&(!!g.externalHelpersModuleName||!!g.externalHelpers)}function z$e(s,c,g,d,h,_,S){if(d.importHelpers&&m3(g,d)){let R=o0(d),T=HU(g,d),O=d2s(g);if(T!==1&&(R>=5&&R<=99||T===99||T===void 0&&R===200)){if(O){let V=[];for(let M of O){let ee=M.importName;ee&&Qi(V,ee)}if(zt(V)){V.sort(Ca);let M=s.createNamedImports(lt(V,Ie=>S7(g,Ie)?s.createImportSpecifier(!1,void 0,s.createIdentifier(Ie)):s.createImportSpecifier(!1,s.createIdentifier(Ie),c.getUnscopedHelperName(Ie)))),ee=xd(g,al),re=u_(ee);re.externalHelpers=!0;let ge=s.createImportDeclaration(void 0,s.createImportClause(void 0,void 0,M),s.createStringLiteral(YD),void 0);return L3(ge,2),ge}}}else{let V=p2s(s,g,d,O,h,_||S);if(V){let M=s.createImportEqualsDeclaration(void 0,!1,V,s.createExternalModuleReference(s.createStringLiteral(YD)));return L3(M,2),M}}}}function d2s(s){return Le(mEe(s),c=>!c.scoped)}function p2s(s,c,g,d,h,_){let S=kEe(c);if(S)return S;if(zt(d)||(h||Lw(g)&&_)&&epe(c,g)<4){let T=xd(c,al),O=u_(T);return O.externalHelpersModuleName||(O.externalHelpersModuleName=s.createUniqueName(YD))}}function Fie(s,c,g){let d=oU(c);if(d&&!S3(c)&&!VY(c)){let h=d.name;return h.kind===11?s.getGeneratedNameForNode(c):Gp(h)?h:s.createIdentifier(SF(g,h)||Vo(h))}if(c.kind===273&&c.importClause||c.kind===279&&c.moduleSpecifier)return s.getGeneratedNameForNode(c)}function Lz(s,c,g,d,h,_){let S=UY(c);if(S&&Lg(S))return I2s(c,d,s,h,_)||f2s(s,S,g)||s.cloneNode(S)}function f2s(s,c,g){let d=g.renamedDependencies&&g.renamedDependencies.get(c.text);return d?s.createStringLiteral(d):void 0}function xEe(s,c,g,d){if(c){if(c.moduleName)return s.createStringLiteral(c.moduleName);if(!c.isDeclarationFile&&d.outFile)return s.createStringLiteral(ube(g,c.fileName))}}function I2s(s,c,g,d,h){return xEe(g,d.getExternalModuleFileFromDeclaration(s),c,h)}function GEe(s){if(mW(s))return s.initializer;if(Cm(s)){let c=s.initializer;return zm(c,!0)?c.right:void 0}if(l0(s))return s.objectAssignmentInitializer;if(zm(s,!0))return s.right;if(cf(s))return GEe(s.expression)}function YW(s){if(mW(s))return s.name;if(Bw(s)){switch(s.kind){case 304:return YW(s.initializer);case 305:return s.name;case 306:return YW(s.expression)}return}return zm(s,!0)?YW(s.left):cf(s)?YW(s.expression):s}function R9e(s){switch(s.kind){case 170:case 209:return s.dotDotDotToken;case 231:case 306:return s}}function q$e(s){let c=N9e(s);return pe.assert(!!c||Mx(s),"Invalid property name for binding element."),c}function N9e(s){switch(s.kind){case 209:if(s.propertyName){let g=s.propertyName;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&R$r(g.expression)?g.expression:g}break;case 304:if(s.name){let g=s.name;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&R$r(g.expression)?g.expression:g}break;case 306:return s.name&&p(s.name)?pe.failBadSyntaxKind(s.name):s.name}let c=YW(s);if(c&&PI(c))return c}function R$r(s){let c=s.kind;return c===11||c===9}function Zie(s){switch(s.kind){case 207:case 208:case 210:return s.elements;case 211:return s.properties}}function $$e(s){if(s){let c=s;for(;;){if(Ir(c)||!c.body)return Ir(c)?c:c.name;c=c.body}}}function N$r(s){let c=s.kind;return c===177||c===179}function ROt(s){let c=s.kind;return c===177||c===178||c===179}function eet(s){let c=s.kind;return c===304||c===305||c===263||c===177||c===182||c===176||c===283||c===244||c===265||c===266||c===267||c===268||c===272||c===273||c===271||c===279||c===278}function NOt(s){let c=s.kind;return c===176||c===304||c===305||c===283||c===271}function DOt(s){return $T(s)||xz(s)}function kOt(s){return Ir(s)||Ox(s)}function xOt(s){return le(s)||kz(s)||yde(s)}function GOt(s){return $T(s)||kz(s)||yde(s)}function FOt(s){return Ir(s)||Lg(s)}function h2s(s){return s===43}function m2s(s){return s===42||s===44||s===45}function C2s(s){return h2s(s)||m2s(s)}function _2s(s){return s===40||s===41}function y2s(s){return _2s(s)||C2s(s)}function b2s(s){return s===48||s===49||s===50}function tet(s){return b2s(s)||y2s(s)}function E2s(s){return s===30||s===33||s===32||s===34||s===104||s===103}function S2s(s){return E2s(s)||tet(s)}function v2s(s){return s===35||s===37||s===36||s===38}function B2s(s){return v2s(s)||S2s(s)}function w2s(s){return s===51||s===52||s===53}function T2s(s){return w2s(s)||B2s(s)}function R2s(s){return s===56||s===57}function N2s(s){return R2s(s)||T2s(s)}function D2s(s){return s===61||N2s(s)||$D(s)}function k2s(s){return D2s(s)||s===28}function ZOt(s){return k2s(s.kind)}var ret;(s=>{function c(V,M,ee,re,ge,Ie,_e){let Ee=M>0?ge[M-1]:void 0;return pe.assertEqual(ee[M],c),ge[M]=V.onEnter(re[M],Ee,_e),ee[M]=R(V,c),M}s.enter=c;function g(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],g),pe.assertIsDefined(V.onLeft),ee[M]=R(V,g);let Ee=V.onLeft(re[M].left,ge[M],re[M]);return Ee?(O(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.left=g;function d(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],d),pe.assertIsDefined(V.onOperator),ee[M]=R(V,d),V.onOperator(re[M].operatorToken,ge[M],re[M]),M}s.operator=d;function h(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],h),pe.assertIsDefined(V.onRight),ee[M]=R(V,h);let Ee=V.onRight(re[M].right,ge[M],re[M]);return Ee?(O(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.right=h;function _(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],_),ee[M]=R(V,_);let Ee=V.onExit(re[M],ge[M]);if(M>0){if(M--,V.foldState){let Ne=ee[M]===_?"right":"left";ge[M]=V.foldState(ge[M],Ee,Ne)}}else Ie.value=Ee;return M}s.exit=_;function S(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],S),M}s.done=S;function R(V,M){switch(M){case c:if(V.onLeft)return g;case g:if(V.onOperator)return d;case d:if(V.onRight)return h;case h:return _;case _:return S;case S:return S;default:pe.fail("Invalid state")}}s.nextState=R;function T(V,M,ee,re,ge){return V++,M[V]=c,ee[V]=ge,re[V]=void 0,V}function O(V,M,ee){if(pe.shouldAssert(2))for(;V>=0;)pe.assert(M[V]!==ee,"Circular traversal detected."),V--}})(ret||(ret={}));var x2s=class{constructor(s,c,g,d,h,_){this.onEnter=s,this.onLeft=c,this.onOperator=g,this.onRight=d,this.onExit=h,this.foldState=_}};function D9e(s,c,g,d,h,_){let S=new x2s(s,c,g,d,h,_);return R;function R(T,O){let V={value:void 0},M=[ret.enter],ee=[T],re=[void 0],ge=0;for(;M[ge]!==ret.done;)ge=M[ge](S,ge,M,ee,re,V,O);return pe.assertEqual(ge,0),V.value}}function G2s(s){return s===95||s===90}function FEe(s){let c=s.kind;return G2s(c)}function LOt(s,c){if(c!==void 0)return c.length===0?c:gn(s.createNodeArray([],c.hasTrailingComma),c)}function ZEe(s){var c;let g=s.emitNode.autoGenerate;if(g.flags&4){let d=g.id,h=s,_=h.original;for(;_;){h=_;let S=(c=h.emitNode)==null?void 0:c.autoGenerate;if(vw(h)&&(S===void 0||S.flags&4&&S.id!==d))break;_=h.original}return h}return s}function Lie(s,c){return typeof s=="object"?K3(!1,s.prefix,s.node,s.suffix,c):typeof s=="string"?s.length>0&&s.charCodeAt(0)===35?s.slice(1):s:""}function F2s(s,c){return typeof s=="string"?s:Z2s(s,pe.checkDefined(c))}function Z2s(s,c){return FL(s)?c(s).slice(1):Gp(s)?c(s):p(s)?s.escapedText.slice(1):Vo(s)}function K3(s,c,g,d,h){return c=Lie(c,h),d=Lie(d,h),g=F2s(g,h),`${s?"#":""}${c}${g}${d}`}function net(s,c,g,d){return s.updatePropertyDeclaration(c,g,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage"),void 0,void 0,d)}function VOt(s,c,g,d,h=s.createThis()){return s.createGetAccessorDeclaration(g,d,[],void 0,s.createBlock([s.createReturnStatement(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")))]))}function WOt(s,c,g,d,h=s.createThis()){return s.createSetAccessorDeclaration(g,d,[s.createParameterDeclaration(void 0,void 0,"value")],s.createBlock([s.createExpressionStatement(s.createAssignment(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")),s.createIdentifier("value")))]))}function k9e(s){let c=s.expression;for(;;){if(c=XI(c),bde(c)){c=Ei(c.elements);continue}if(DEe(c)){c=c.right;continue}if(zm(c,!0)&&Gp(c.left))return c;break}}function L2s(s){return dI(s)&&ap(s)&&!s.emitNode}function x9e(s,c){if(L2s(s))x9e(s.expression,c);else if(DEe(s))x9e(s.left,c),x9e(s.right,c);else if(bde(s))for(let g of s.elements)x9e(g,c);else c.push(s)}function OOt(s){let c=[];return x9e(s,c),c}function LEe(s){if(s.transformFlags&65536)return!0;if(s.transformFlags&128)for(let c of Zie(s)){let g=YW(c);if(g&&NY(g)&&(g.transformFlags&65536||g.transformFlags&128&&LEe(g)))return!0}return!1}function gn(s,c){return c?xB(s,c.pos,c.end):s}function MB(s){let c=s.kind;return c===169||c===170||c===172||c===173||c===174||c===175||c===177||c===178||c===179||c===182||c===186||c===219||c===220||c===232||c===244||c===263||c===264||c===265||c===266||c===267||c===268||c===272||c===273||c===278||c===279}function hQ(s){let c=s.kind;return c===170||c===173||c===175||c===178||c===179||c===232||c===264}var D$r,k$r,x$r,G$r,F$r,POt={createBaseSourceFileNode:s=>new(F$r||(F$r=VC.getSourceFileConstructor()))(s,-1,-1),createBaseIdentifierNode:s=>new(x$r||(x$r=VC.getIdentifierConstructor()))(s,-1,-1),createBasePrivateIdentifierNode:s=>new(G$r||(G$r=VC.getPrivateIdentifierConstructor()))(s,-1,-1),createBaseTokenNode:s=>new(k$r||(k$r=VC.getTokenConstructor()))(s,-1,-1),createBaseNode:s=>new(D$r||(D$r=VC.getNodeConstructor()))(s,-1,-1)},j3=hie(1,POt);function Bi(s,c){return c&&s(c)}function il(s,c,g){if(g){if(c)return c(g);for(let d of g){let h=s(d);if(h)return h}}}function iet(s,c){return s.charCodeAt(c+1)===42&&s.charCodeAt(c+2)===42&&s.charCodeAt(c+3)!==47}function VEe(s){return F(s.statements,V2s)||W2s(s)}function V2s(s){return MB(s)&&O2s(s,95)||Zm(s)&&MF(s.moduleReference)||Yf(s)||yf(s)||Vh(s)?s:void 0}function W2s(s){return s.flags&8388608?Z$r(s):void 0}function Z$r(s){return P2s(s)?s:Lu(s,Z$r)}function O2s(s,c){return zt(s.modifiers,g=>g.kind===c)}function P2s(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}var M2s={167:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},169:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.constraint)||Bi(g,c.default)||Bi(g,c.expression)},305:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.equalsToken)||Bi(g,c.objectAssignmentInitializer)},306:function(c,g,d){return Bi(g,c.expression)},170:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},173:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},172:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},304:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.initializer)},261:function(c,g,d){return Bi(g,c.name)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},209:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.propertyName)||Bi(g,c.name)||Bi(g,c.initializer)},182:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},186:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},185:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},180:L$r,181:L$r,175:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},174:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},177:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},178:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},179:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},263:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},219:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},220:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.equalsGreaterThanToken)||Bi(g,c.body)},176:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.body)},184:function(c,g,d){return Bi(g,c.typeName)||il(g,d,c.typeArguments)},183:function(c,g,d){return Bi(g,c.assertsModifier)||Bi(g,c.parameterName)||Bi(g,c.type)},187:function(c,g,d){return Bi(g,c.exprName)||il(g,d,c.typeArguments)},188:function(c,g,d){return il(g,d,c.members)},189:function(c,g,d){return Bi(g,c.elementType)},190:function(c,g,d){return il(g,d,c.elements)},193:V$r,194:V$r,195:function(c,g,d){return Bi(g,c.checkType)||Bi(g,c.extendsType)||Bi(g,c.trueType)||Bi(g,c.falseType)},196:function(c,g,d){return Bi(g,c.typeParameter)},206:function(c,g,d){return Bi(g,c.argument)||Bi(g,c.attributes)||Bi(g,c.qualifier)||il(g,d,c.typeArguments)},303:function(c,g,d){return Bi(g,c.assertClause)},197:W$r,199:W$r,200:function(c,g,d){return Bi(g,c.objectType)||Bi(g,c.indexType)},201:function(c,g,d){return Bi(g,c.readonlyToken)||Bi(g,c.typeParameter)||Bi(g,c.nameType)||Bi(g,c.questionToken)||Bi(g,c.type)||il(g,d,c.members)},202:function(c,g,d){return Bi(g,c.literal)},203:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)},207:O$r,208:O$r,210:function(c,g,d){return il(g,d,c.elements)},211:function(c,g,d){return il(g,d,c.properties)},212:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.name)},213:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.argumentExpression)},214:P$r,215:P$r,216:function(c,g,d){return Bi(g,c.tag)||Bi(g,c.questionDotToken)||il(g,d,c.typeArguments)||Bi(g,c.template)},217:function(c,g,d){return Bi(g,c.type)||Bi(g,c.expression)},218:function(c,g,d){return Bi(g,c.expression)},221:function(c,g,d){return Bi(g,c.expression)},222:function(c,g,d){return Bi(g,c.expression)},223:function(c,g,d){return Bi(g,c.expression)},225:function(c,g,d){return Bi(g,c.operand)},230:function(c,g,d){return Bi(g,c.asteriskToken)||Bi(g,c.expression)},224:function(c,g,d){return Bi(g,c.expression)},226:function(c,g,d){return Bi(g,c.operand)},227:function(c,g,d){return Bi(g,c.left)||Bi(g,c.operatorToken)||Bi(g,c.right)},235:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},236:function(c,g,d){return Bi(g,c.expression)},239:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},237:function(c,g,d){return Bi(g,c.name)},228:function(c,g,d){return Bi(g,c.condition)||Bi(g,c.questionToken)||Bi(g,c.whenTrue)||Bi(g,c.colonToken)||Bi(g,c.whenFalse)},231:function(c,g,d){return Bi(g,c.expression)},242:M$r,269:M$r,308:function(c,g,d){return il(g,d,c.statements)||Bi(g,c.endOfFileToken)},244:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.declarationList)},262:function(c,g,d){return il(g,d,c.declarations)},245:function(c,g,d){return Bi(g,c.expression)},246:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.thenStatement)||Bi(g,c.elseStatement)},247:function(c,g,d){return Bi(g,c.statement)||Bi(g,c.expression)},248:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},249:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.condition)||Bi(g,c.incrementor)||Bi(g,c.statement)},250:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},251:function(c,g,d){return Bi(g,c.awaitModifier)||Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},252:H$r,253:H$r,254:function(c,g,d){return Bi(g,c.expression)},255:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},256:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.caseBlock)},270:function(c,g,d){return il(g,d,c.clauses)},297:function(c,g,d){return Bi(g,c.expression)||il(g,d,c.statements)},298:function(c,g,d){return il(g,d,c.statements)},257:function(c,g,d){return Bi(g,c.label)||Bi(g,c.statement)},258:function(c,g,d){return Bi(g,c.expression)},259:function(c,g,d){return Bi(g,c.tryBlock)||Bi(g,c.catchClause)||Bi(g,c.finallyBlock)},300:function(c,g,d){return Bi(g,c.variableDeclaration)||Bi(g,c.block)},171:function(c,g,d){return Bi(g,c.expression)},264:Y$r,232:Y$r,265:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.heritageClauses)||il(g,d,c.members)},266:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||Bi(g,c.type)},267:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.members)},307:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},268:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.body)},272:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.moduleReference)},273:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.importClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},274:function(c,g,d){return Bi(g,c.name)||Bi(g,c.namedBindings)},301:function(c,g,d){return il(g,d,c.elements)},302:function(c,g,d){return Bi(g,c.name)||Bi(g,c.value)},271:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)},275:function(c,g,d){return Bi(g,c.name)},281:function(c,g,d){return Bi(g,c.name)},276:Q$r,280:Q$r,279:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.exportClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},277:X$r,282:X$r,278:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.expression)},229:function(c,g,d){return Bi(g,c.head)||il(g,d,c.templateSpans)},240:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.literal)},204:function(c,g,d){return Bi(g,c.head)||il(g,d,c.templateSpans)},205:function(c,g,d){return Bi(g,c.type)||Bi(g,c.literal)},168:function(c,g,d){return Bi(g,c.expression)},299:function(c,g,d){return il(g,d,c.types)},234:function(c,g,d){return Bi(g,c.expression)||il(g,d,c.typeArguments)},284:function(c,g,d){return Bi(g,c.expression)},283:function(c,g,d){return il(g,d,c.modifiers)},357:function(c,g,d){return il(g,d,c.elements)},285:function(c,g,d){return Bi(g,c.openingElement)||il(g,d,c.children)||Bi(g,c.closingElement)},289:function(c,g,d){return Bi(g,c.openingFragment)||il(g,d,c.children)||Bi(g,c.closingFragment)},286:J$r,287:J$r,293:function(c,g,d){return il(g,d,c.properties)},292:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},294:function(c,g,d){return Bi(g,c.expression)},295:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.expression)},288:function(c,g,d){return Bi(g,c.tagName)},296:function(c,g,d){return Bi(g,c.namespace)||Bi(g,c.name)},191:Nde,192:Nde,310:Nde,316:Nde,315:Nde,317:Nde,319:Nde,318:function(c,g,d){return il(g,d,c.parameters)||Bi(g,c.type)},321:function(c,g,d){return(typeof c.comment=="string"?void 0:il(g,d,c.comment))||il(g,d,c.tags)},348:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.name)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},311:function(c,g,d){return Bi(g,c.name)},312:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},342:U$r,349:U$r,331:function(c,g,d){return Bi(g,c.tagName)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},330:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},329:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},346:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.constraint)||il(g,d,c.typeParameters)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},347:function(c,g,d){return Bi(g,c.tagName)||(c.typeExpression&&c.typeExpression.kind===310?Bi(g,c.typeExpression)||Bi(g,c.fullName)||(typeof c.comment=="string"?void 0:il(g,d,c.comment)):Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:il(g,d,c.comment)))},339:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},343:Dde,345:Dde,344:Dde,341:Dde,351:Dde,350:Dde,340:Dde,324:function(c,g,d){return F(c.typeParameters,g)||F(c.parameters,g)||Bi(g,c.type)},325:MOt,326:MOt,327:MOt,323:function(c,g,d){return F(c.jsDocPropertyTags,g)},328:Vie,333:Vie,334:Vie,335:Vie,336:Vie,337:Vie,332:Vie,338:Vie,352:H2s,356:Y2s};function L$r(s,c,g){return il(c,g,s.typeParameters)||il(c,g,s.parameters)||Bi(c,s.type)}function V$r(s,c,g){return il(c,g,s.types)}function W$r(s,c,g){return Bi(c,s.type)}function O$r(s,c,g){return il(c,g,s.elements)}function P$r(s,c,g){return Bi(c,s.expression)||Bi(c,s.questionDotToken)||il(c,g,s.typeArguments)||il(c,g,s.arguments)}function M$r(s,c,g){return il(c,g,s.statements)}function H$r(s,c,g){return Bi(c,s.label)}function Y$r(s,c,g){return il(c,g,s.modifiers)||Bi(c,s.name)||il(c,g,s.typeParameters)||il(c,g,s.heritageClauses)||il(c,g,s.members)}function Q$r(s,c,g){return il(c,g,s.elements)}function X$r(s,c,g){return Bi(c,s.propertyName)||Bi(c,s.name)}function J$r(s,c,g){return Bi(c,s.tagName)||il(c,g,s.typeArguments)||Bi(c,s.attributes)}function Nde(s,c,g){return Bi(c,s.type)}function U$r(s,c,g){return Bi(c,s.tagName)||(s.isNameFirst?Bi(c,s.name)||Bi(c,s.typeExpression):Bi(c,s.typeExpression)||Bi(c,s.name))||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function Dde(s,c,g){return Bi(c,s.tagName)||Bi(c,s.typeExpression)||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function MOt(s,c,g){return Bi(c,s.name)}function Vie(s,c,g){return Bi(c,s.tagName)||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function H2s(s,c,g){return Bi(c,s.tagName)||Bi(c,s.importClause)||Bi(c,s.moduleSpecifier)||Bi(c,s.attributes)||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function Y2s(s,c,g){return Bi(c,s.expression)}function Lu(s,c,g){if(s===void 0||s.kind<=166)return;let d=M2s[s.kind];return d===void 0?void 0:d(s,c,g)}function Vz(s,c,g){let d=K$r(s),h=[];for(;h.length=0;--R)d.push(_[R]),h.push(S)}else{let R=c(_,S);if(R){if(R==="skip")continue;return R}if(_.kind>=167)for(let T of K$r(_))d.push(T),h.push(_)}}}function K$r(s){let c=[];return Lu(s,g,g),c;function g(d){c.unshift(d)}}function j$r(s){s.externalModuleIndicator=VEe(s)}function Wz(s,c,g,d=!1,h){var _,S;(_=ki)==null||_.push(ki.Phase.Parse,"createSourceFile",{path:s},!0),Mc("beforeParse");let R,{languageVersion:T,setExternalModuleIndicator:O,impliedNodeFormat:V,jsDocParsingMode:M}=typeof g=="object"?g:{languageVersion:g};if(T===100)R=z3.parseSourceFile(s,c,T,void 0,d,6,Dc,M);else{let ee=V===void 0?O:re=>(re.impliedNodeFormat=V,(O||j$r)(re));R=z3.parseSourceFile(s,c,T,void 0,d,h,ee,M)}return Mc("afterParse"),Pf("Parse","beforeParse","afterParse"),(S=ki)==null||S.pop(),R}function Oz(s,c){return z3.parseIsolatedEntityName(s,c)}function WEe(s,c){return z3.parseJsonText(s,c)}function Lm(s){return s.externalModuleIndicator!==void 0}function set(s,c,g,d=!1){let h=oet.updateSourceFile(s,c,g,d);return h.flags|=s.flags&12582912,h}function HOt(s,c,g){let d=z3.JSDocParser.parseIsolatedJSDocComment(s,c,g);return d&&d.jsDoc&&z3.fixupParentReferences(d.jsDoc),d}function z$r(s,c,g){return z3.JSDocParser.parseJSDocTypeExpressionForTests(s,c,g)}var z3;(s=>{var c=Rb(99,!0),g=40960,d,h,_,S,R;function T(nt){return Yt++,nt}var O={createBaseSourceFileNode:nt=>T(new R(nt,0,0)),createBaseIdentifierNode:nt=>T(new _(nt,0,0)),createBasePrivateIdentifierNode:nt=>T(new S(nt,0,0)),createBaseTokenNode:nt=>T(new h(nt,0,0)),createBaseNode:nt=>T(new d(nt,0,0))},V=hie(11,O),{createNodeArray:M,createNumericLiteral:ee,createStringLiteral:re,createLiteralLikeNode:ge,createIdentifier:Ie,createPrivateIdentifier:_e,createToken:Ee,createArrayLiteralExpression:Ne,createObjectLiteralExpression:Te,createPropertyAccessExpression:Ze,createPropertyAccessChain:Pe,createElementAccessExpression:Ke,createElementAccessChain:et,createCallExpression:Ye,createCallChain:Tt,createNewExpression:at,createParenthesizedExpression:Qe,createBlock:Ct,createVariableStatement:mt,createExpressionStatement:yt,createIfStatement:Rt,createWhileStatement:Lt,createForStatement:je,createForOfStatement:Wt,createVariableDeclaration:_r,createVariableDeclarationList:Gt}=V,it,kt,tr,ur,Gr,dt,pr,ot,ir,qt,Yt,Tr,Cn,jn,Zi,Ns,An=!0,si=!1;function ks(nt,Kt,xr,Tn,Ai=!1,Wi,Ba,Xo=0){var lo;if(Wi=jAe(nt,Wi),Wi===6){let Tl=ou(nt,Kt,xr,Tn,Ai);return YEe(Tl,(lo=Tl.statements[0])==null?void 0:lo.expression,Tl.parseDiagnostics,!1,void 0),Tl.referencedFiles=E,Tl.typeReferenceDirectives=E,Tl.libReferenceDirectives=E,Tl.amdDependencies=E,Tl.hasNoDefaultLib=!1,Tl.pragmas=N,Tl}Zn(nt,Kt,xr,Tn,Wi,Xo);let Cc=Fl(xr,Ai,Wi,Ba||j$r,Xo);return ya(),Cc}s.parseSourceFile=ks;function Ic(nt,Kt){Zn("",nt,Kt,void 0,1,0),Mt();let xr=en(!0),Tn=Ue()===1&&!pr.length;return ya(),Tn?xr:void 0}s.parseIsolatedEntityName=Ic;function ou(nt,Kt,xr=2,Tn,Ai=!1){Zn(nt,Kt,xr,Tn,6,0),kt=Ns,Mt();let Wi=xe(),Ba,Xo;if(Ue()===1)Ba=NA([],Wi,Wi),Xo=ch();else{let Tl;for(;Ue()!==1;){let $A;switch(Ue()){case 23:$A=gO();break;case 112:case 97:case 106:$A=ch();break;case 41:Vn(()=>Mt()===9&&Mt()!==59)?$A=h9():$A=_9();break;case 9:case 11:if(Vn(()=>Mt()!==59)){$A=Ln();break}default:$A=_9();break}Tl&&Ki(Tl)?Tl.push($A):Tl?Tl=[Tl,$A]:(Tl=$A,Ue()!==1&&En(Z.Unexpected_token))}let Sp=Ki(Tl)?oi(Ne(Tl),Wi):pe.checkDefined(Tl),rp=yt(Sp);oi(rp,Wi),Ba=NA([rp],Wi),Xo=qp(1,Z.Unexpected_token)}let lo=hn(nt,2,6,!1,Ba,Xo,kt,Dc);Ai&&yr(lo),lo.nodeCount=Yt,lo.identifierCount=Cn,lo.identifiers=Tr,lo.parseDiagnostics=qL(pr,lo),ot&&(lo.jsDocDiagnostics=qL(ot,lo));let Cc=lo;return ya(),Cc}s.parseJsonText=ou;function Zn(nt,Kt,xr,Tn,Ai,Wi){switch(d=VC.getNodeConstructor(),h=VC.getTokenConstructor(),_=VC.getIdentifierConstructor(),S=VC.getPrivateIdentifierConstructor(),R=VC.getSourceFileConstructor(),it=su(nt),tr=Kt,ur=xr,ir=Tn,Gr=Ai,dt=jne(Ai),pr=[],jn=0,Tr=new Map,Cn=0,Yt=0,kt=0,An=!0,Gr){case 1:case 2:Ns=524288;break;case 6:Ns=134742016;break;default:Ns=0;break}si=!1,c.setText(tr),c.setOnError(wt),c.setScriptTarget(ur),c.setLanguageVariant(dt),c.setScriptKind(Gr),c.setJSDocParsingMode(Wi)}function ya(){c.clearCommentDirectives(),c.setText(""),c.setOnError(void 0),c.setScriptKind(0),c.setJSDocParsingMode(0),tr=void 0,ur=void 0,ir=void 0,Gr=void 0,dt=void 0,kt=0,pr=void 0,ot=void 0,jn=0,Tr=void 0,Zi=void 0,An=!0}function Fl(nt,Kt,xr,Tn,Ai){let Wi=PC(it);Wi&&(Ns|=33554432),kt=Ns,Mt();let Ba=gA(0,RE);pe.assert(Ue()===1);let Xo=fr(),lo=Oo(ch(),Xo),Cc=hn(it,nt,xr,Wi,Ba,lo,kt,Tn);return aet(Cc,tr),cet(Cc,Tl),Cc.commentDirectives=c.getCommentDirectives(),Cc.nodeCount=Yt,Cc.identifierCount=Cn,Cc.identifiers=Tr,Cc.parseDiagnostics=qL(pr,Cc),Cc.jsDocParsingMode=Ai,ot&&(Cc.jsDocDiagnostics=qL(ot,Cc)),Kt&&yr(Cc),Cc;function Tl(Sp,rp,$A){pr.push(rQ(it,tr,Sp,rp,$A))}}let ba=!1;function Oo(nt,Kt){if(!Kt)return nt;pe.assert(!nt.jsDoc);let xr=Xt(Fye(nt,tr),Tn=>HN.parseJSDocComment(nt,Tn.pos,Tn.end-Tn.pos));return xr.length&&(nt.jsDoc=xr),ba&&(ba=!1,nt.flags|=536870912),nt}function hc(nt){let Kt=ir,xr=oet.createSyntaxCursor(nt);ir={currentNode:Tl};let Tn=[],Ai=pr;pr=[];let Wi=0,Ba=lo(nt.statements,0);for(;Ba!==-1;){let Sp=nt.statements[Wi],rp=nt.statements[Ba];Pr(Tn,nt.statements,Wi,Ba),Wi=Cc(nt.statements,Ba);let $A=Se(Ai,ES=>ES.start>=Sp.pos),Nv=$A>=0?Se(Ai,ES=>ES.start>=rp.pos,$A):-1;$A>=0&&Pr(pr,Ai,$A,Nv>=0?Nv:void 0),Oi(()=>{let ES=Ns;for(Ns|=65536,c.resetTokenState(rp.pos),Mt();Ue()!==1;){let v9=c.getTokenFullStart(),B9=ym(0,RE);if(Tn.push(B9),v9===c.getTokenFullStart()&&Mt(),Wi>=0){let eG=nt.statements[Wi];if(B9.end===eG.pos)break;B9.end>eG.pos&&(Wi=Cc(nt.statements,Wi+1))}}Ns=ES},2),Ba=Wi>=0?lo(nt.statements,Wi):-1}if(Wi>=0){let Sp=nt.statements[Wi];Pr(Tn,nt.statements,Wi);let rp=Se(Ai,$A=>$A.start>=Sp.pos);rp>=0&&Pr(pr,Ai,rp)}return ir=Kt,V.updateSourceFile(nt,gn(M(Tn),nt.statements));function Xo(Sp){return!(Sp.flags&65536)&&!!(Sp.transformFlags&67108864)}function lo(Sp,rp){for(let $A=rp;$A118}function fs(){return Ue()===80?!0:Ue()===127&&hr()||Ue()===135&&nn()?!1:Ue()>118}function bi(nt,Kt,xr=!0){return Ue()===nt?(xr&&Mt(),!0):(Kt?En(Kt):En(Z._0_expected,Vi(nt)),!1)}let mc=Object.keys(iv).filter(nt=>nt.length>2);function Ag(nt){if(QI(nt)){Ht(Yu(tr,nt.template.pos),nt.template.end,Z.Module_declaration_names_may_only_use_or_quoted_strings);return}let Kt=Ir(nt)?Vo(nt):void 0;if(!Kt||!qh(Kt,ur)){En(Z._0_expected,Vi(27));return}let xr=Yu(tr,nt.pos);switch(Kt){case"const":case"let":case"var":Ht(xr,nt.end,Z.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":dg(Z.Interface_name_cannot_be_0,Z.Interface_must_be_given_a_name,19);return;case"is":Ht(xr,c.getTokenStart(),Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":dg(Z.Namespace_name_cannot_be_0,Z.Namespace_must_be_given_a_name,19);return;case"type":dg(Z.Type_alias_name_cannot_be_0,Z.Type_alias_must_be_given_a_name,64);return}let Tn=Dr(Kt,mc,Zl)??yu(Kt);if(Tn){Ht(xr,nt.end,Z.Unknown_keyword_or_identifier_Did_you_mean_0,Tn);return}Ue()!==0&&Ht(xr,nt.end,Z.Unexpected_keyword_or_identifier)}function dg(nt,Kt,xr){Ue()===xr?En(Kt):En(nt,c.getTokenValue())}function yu(nt){for(let Kt of mc)if(nt.length>Kt.length+2&&Ac(nt,Kt))return`${Kt} ${nt.slice(Kt.length)}`}function RI(nt,Kt,xr){if(Ue()===60&&!c.hasPrecedingLineBreak()){En(Z.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Ue()===21){En(Z.Cannot_start_a_function_call_in_a_type_annotation),Mt();return}if(Kt&&!Au()){xr?En(Z._0_expected,Vi(27)):En(Z.Expected_for_property_initializer);return}if(!Eg()){if(xr){En(Z._0_expected,Vi(27));return}Ag(nt)}}function pI(nt){return Ue()===nt?($r(),!0):(pe.assert(hAe(nt)),En(Z._0_expected,Vi(nt)),!1)}function Ip(nt,Kt,xr,Tn){if(Ue()===Kt){Mt();return}let Ai=En(Z._0_expected,Vi(Kt));xr&&Ai&&ug(Ai,rQ(it,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Vi(nt),Vi(Kt)))}function kl(nt){return Ue()===nt?(Mt(),!0):!1}function bu(nt){if(Ue()===nt)return ch()}function sm(nt){if(Ue()===nt)return hS()}function qp(nt,Kt,xr){return bu(nt)||tp(nt,!1,Kt||Z._0_expected,xr||Vi(nt))}function Jg(nt){let Kt=sm(nt);return Kt||(pe.assert(hAe(nt)),tp(nt,!1,Z._0_expected,Vi(nt)))}function ch(){let nt=xe(),Kt=Ue();return Mt(),oi(Ee(Kt),nt)}function hS(){let nt=xe(),Kt=Ue();return $r(),oi(Ee(Kt),nt)}function Au(){return Ue()===27?!0:Ue()===20||Ue()===1||c.hasPrecedingLineBreak()}function Eg(){return Au()?(Ue()===27&&Mt(),!0):!1}function zA(){return Eg()||bi(27)}function NA(nt,Kt,xr,Tn){let Ai=M(nt,Tn);return xB(Ai,Kt,xr??c.getTokenFullStart()),Ai}function oi(nt,Kt,xr){return xB(nt,Kt,xr??c.getTokenFullStart()),Ns&&(nt.flags|=Ns),si&&(si=!1,nt.flags|=262144),nt}function tp(nt,Kt,xr,...Tn){Kt?ds(c.getTokenFullStart(),0,xr,...Tn):xr&&En(xr,...Tn);let Ai=xe(),Wi=nt===80?Ie("",void 0):MD(nt)?V.createTemplateLiteralLikeNode(nt,"","",void 0):nt===9?ee("",void 0):nt===11?re("",void 0):nt===283?V.createMissingDeclaration():Ee(nt);return oi(Wi,Ai)}function JI(nt){let Kt=Tr.get(nt);return Kt===void 0&&Tr.set(nt,Kt=nt),Kt}function Wh(nt,Kt,xr){if(nt){Cn++;let Xo=c.hasPrecedingJSDocLeadingAsterisks()?c.getTokenStart():xe(),lo=Ue(),Cc=JI(c.getTokenValue()),Tl=c.hasExtendedUnicodeEscape();return In(),oi(Ie(Cc,lo,Tl),Xo)}if(Ue()===81)return En(xr||Z.Private_identifiers_are_not_allowed_outside_class_bodies),Wh(!0);if(Ue()===0&&c.tryScan(()=>c.reScanInvalidIdentifier()===80))return Wh(!0);Cn++;let Tn=Ue()===1,Ai=c.isReservedWord(),Wi=c.getTokenText(),Ba=Ai?Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Z.Identifier_expected;return tp(80,Tn,Kt||Ba,Wi)}function MC(nt){return Wh(gs(),void 0,nt)}function bf(nt,Kt){return Wh(fs(),nt,Kt)}function UI(nt){return Wh(md(Ue()),nt)}function ve(){return(c.hasUnicodeEscape()||c.hasExtendedUnicodeEscape())&&En(Z.Unicode_escape_sequence_cannot_appear_here),Wh(md(Ue()))}function mr(){return md(Ue())||Ue()===11||Ue()===9||Ue()===10}function ln(){return md(Ue())||Ue()===11}function ni(nt){if(Ue()===11||Ue()===9||Ue()===10){let Kt=Ln();return Kt.text=JI(Kt.text),Kt}return nt&&Ue()===23?Za():Ue()===81?Go():UI()}function Ls(){return ni(!0)}function Za(){let nt=xe();bi(23);let Kt=Cs(py);return bi(24),oi(V.createComputedPropertyName(Kt),nt)}function Go(){let nt=xe(),Kt=_e(JI(c.getTokenValue()));return Mt(),oi(Kt,nt)}function Ss(nt){return Ue()===nt&&Ui(el)}function Uc(){return Mt(),c.hasPrecedingLineBreak()?!1:om()}function el(){switch(Ue()){case 87:return Mt()===94;case 95:return Mt(),Ue()===90?Vn(Zp):Ue()===156?Vn(Vg):Fd();case 90:return Zp();case 126:return Mt(),om();case 139:case 153:return Mt(),Sh();default:return Uc()}}function Fd(){return Ue()===60||Ue()!==42&&Ue()!==130&&Ue()!==19&&om()}function Vg(){return Mt(),Fd()}function Ef(){return HD(Ue())&&Ui(el)}function om(){return Ue()===23||Ue()===19||Ue()===42||Ue()===26||mr()}function Sh(){return Ue()===23||mr()}function Zp(){return Mt(),Ue()===86||Ue()===100||Ue()===120||Ue()===60||Ue()===128&&Vn(Qb)||Ue()===134&&Vn(Rv)}function lh(nt,Kt){if(lf(nt))return!0;switch(nt){case 0:case 1:case 3:return!(Ue()===27&&Kt)&&y9();case 2:return Ue()===84||Ue()===90;case 4:return Vn(JB);case 5:return Vn(_K)||Ue()===27&&!Kt;case 6:return Ue()===23||mr();case 12:switch(Ue()){case 23:case 42:case 26:case 25:return!0;default:return mr()}case 18:return mr();case 9:return Ue()===23||Ue()===26||mr();case 24:return ln();case 7:return Ue()===19?Vn(v1):Kt?fs()&&!or():Hb()&&!or();case 8:return Rq();case 10:return Ue()===28||Ue()===26||Rq();case 19:return Ue()===103||Ue()===87||fs();case 15:switch(Ue()){case 28:case 25:return!0}case 11:return Ue()===26||A0();case 16:return sn(!1);case 17:return sn(!0);case 20:case 21:return Ue()===28||nO();case 22:return yK();case 23:return Ue()===161&&Vn($x)?!1:Ue()===11?!0:md(Ue());case 13:return md(Ue())||Ue()===19;case 14:return!0;case 25:return!0;case 26:return pe.fail("ParsingContext.Count used as a context");default:pe.assertNever(nt,"Non-exhaustive case in 'isListElement'.")}}function v1(){if(pe.assert(Ue()===19),Mt()===20){let nt=Mt();return nt===28||nt===19||nt===96||nt===119}return!0}function V_(){return Mt(),fs()}function y2(){return Mt(),md(Ue())}function Ob(){return Mt(),_B(Ue())}function or(){return Ue()===119||Ue()===96?Vn(qn):!1}function qn(){return Mt(),A0()}function Js(){return Mt(),nO()}function Yl(nt){if(Ue()===1)return!0;switch(nt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Ue()===20;case 3:return Ue()===20||Ue()===84||Ue()===90;case 7:return Ue()===19||Ue()===96||Ue()===119;case 8:return DA();case 19:return Ue()===32||Ue()===21||Ue()===19||Ue()===96||Ue()===119;case 11:return Ue()===22||Ue()===27;case 15:case 21:case 10:return Ue()===24;case 17:case 16:case 18:return Ue()===22||Ue()===24;case 20:return Ue()!==28;case 22:return Ue()===19||Ue()===20;case 13:return Ue()===32||Ue()===44;case 14:return Ue()===30&&Vn(xOe);default:return!1}}function DA(){return!!(Au()||fy(Ue())||Ue()===39)}function kA(){pe.assert(jn,"Missing parsing context");for(let nt=0;nt<26;nt++)if(jn&1<=0)}function gR(nt){return nt===6?Z.An_enum_member_name_must_be_followed_by_a_or:void 0}function mS(){let nt=NA([],xe());return nt.isMissingList=!0,nt}function VN(nt){return!!nt.isMissingList}function ct(nt,Kt,xr,Tn){if(bi(xr)){let Ai=rC(nt,Kt);return bi(Tn),Ai}return mS()}function en(nt,Kt){let xr=xe(),Tn=nt?UI(Kt):bf(Kt);for(;kl(25)&&Ue()!==30;)Tn=oi(V.createQualifiedName(Tn,_i(nt,!1,!0)),xr);return Tn}function gi(nt,Kt){return oi(V.createQualifiedName(nt,Kt),nt.pos)}function _i(nt,Kt,xr){if(c.hasPrecedingLineBreak()&&md(Ue())&&Vn(Eq))return tp(80,!0,Z.Identifier_expected);if(Ue()===81){let Tn=Go();return Kt?Tn:tp(80,!0,Z.Identifier_expected)}return nt?xr?UI():ve():bf()}function ys(nt){let Kt=xe(),xr=[],Tn;do Tn=gr(nt),xr.push(Tn);while(Tn.literal.kind===17);return NA(xr,Kt)}function $s(nt){let Kt=xe();return oi(V.createTemplateExpression(bs(nt),ys(nt)),Kt)}function wa(){let nt=xe();return oi(V.createTemplateLiteralType(bs(!1),pc()),nt)}function pc(){let nt=xe(),Kt=[],xr;do xr=cl(),Kt.push(xr);while(xr.literal.kind===17);return NA(Kt,nt)}function cl(){let nt=xe();return oi(V.createTemplateLiteralTypeSpan(Sf(),Fe(!1)),nt)}function Fe(nt){return Ue()===20?(Ys(nt),Jl()):qp(18,Z._0_expected,Vi(20))}function gr(nt){let Kt=xe();return oi(V.createTemplateSpan(Cs(py),Fe(nt)),Kt)}function Ln(){return zl(Ue())}function bs(nt){!nt&&c.getTokenFlags()&26656&&Ys(!1);let Kt=zl(Ue());return pe.assert(Kt.kind===16,"Template head has wrong token kind"),Kt}function Jl(){let nt=zl(Ue());return pe.assert(nt.kind===17||nt.kind===18,"Template fragment has wrong token kind"),nt}function tg(nt){let Kt=nt===15||nt===18,xr=c.getTokenText();return xr.substring(1,xr.length-(c.isUnterminated()?0:Kt?1:2))}function zl(nt){let Kt=xe(),xr=MD(nt)?V.createTemplateLiteralLikeNode(nt,c.getTokenValue(),tg(nt),c.getTokenFlags()&7176):nt===9?ee(c.getTokenValue(),c.getNumericLiteralFlags()):nt===11?re(c.getTokenValue(),void 0,c.hasExtendedUnicodeEscape()):vY(nt)?ge(nt,c.getTokenValue()):pe.fail();return c.hasExtendedUnicodeEscape()&&(xr.hasExtendedUnicodeEscape=!0),c.isUnterminated()&&(xr.isUnterminated=!0),Mt(),oi(xr,Kt)}function Su(){return en(!0,Z.Type_expected)}function xf(){if(!c.hasPrecedingLineBreak()&&tn()===30)return ct(20,Sf,30,32)}function Ug(){let nt=xe();return oi(V.createTypeReferenceNode(Su(),xf()),nt)}function YC(nt){switch(nt.kind){case 184:return af(nt.typeName);case 185:case 186:{let{parameters:Kt,type:xr}=nt;return VN(Kt)||YC(xr)}case 197:return YC(nt.type);default:return!1}}function w1(nt){return Mt(),oi(V.createTypePredicateNode(void 0,nt,Sf()),nt.pos)}function CS(){let nt=xe();return Mt(),oi(V.createThisTypeNode(),nt)}function Bv(){let nt=xe();return Mt(),oi(V.createJSDocAllType(),nt)}function qF(){let nt=xe();return Mt(),oi(V.createJSDocNonNullableType(GQ(),!1),nt)}function A9(){let nt=xe();return Mt(),Ue()===28||Ue()===20||Ue()===22||Ue()===32||Ue()===64||Ue()===52?oi(V.createJSDocUnknownType(),nt):oi(V.createJSDocNullableType(Sf(),!1),nt)}function Yy(){let nt=xe(),Kt=fr();if(Ui(kq)){let xr=$a(36),Tn=ao(59,!1);return Oo(oi(V.createJSDocFunctionType(xr,Tn),nt),Kt)}return oi(V.createTypeReferenceNode(UI(),void 0),nt)}function uk(){let nt=xe(),Kt;return(Ue()===110||Ue()===105)&&(Kt=UI(),bi(59)),oi(V.createParameterDeclaration(void 0,void 0,Kt,void 0,AR(),void 0),nt)}function AR(){c.setSkipJsDocLeadingAsterisks(!0);let nt=xe();if(kl(144)){let Tn=V.createJSDocNamepathType(void 0);e:for(;;)switch(Ue()){case 20:case 1:case 28:case 5:break e;default:$r()}return c.setSkipJsDocLeadingAsterisks(!1),oi(Tn,nt)}let Kt=kl(26),xr=rZ();return c.setSkipJsDocLeadingAsterisks(!1),Kt&&(xr=oi(V.createJSDocVariadicType(xr),nt)),Ue()===64?(Mt(),oi(V.createJSDocOptionalType(xr),nt)):xr}function QB(){let nt=xe();bi(114);let Kt=en(!0),xr=c.hasPrecedingLineBreak()?void 0:Qf();return oi(V.createTypeQueryNode(Kt,xr),nt)}function rO(){let nt=xe(),Kt=Pc(!1,!0),xr=bf(),Tn,Ai;kl(96)&&(nO()||!A0()?Tn=Sf():Ai=b5());let Wi=kl(64)?Sf():void 0,Ba=V.createTypeParameterDeclaration(Kt,xr,Tn,Wi);return Ba.expression=Ai,oi(Ba,nt)}function br(){if(Ue()===30)return ct(19,rO,30,32)}function sn(nt){return Ue()===26||Rq()||HD(Ue())||Ue()===60||nO(!nt)}function ei(nt){let Kt=b9(Z.Private_identifiers_cannot_be_used_as_parameters);return YJ(Kt)===0&&!zt(nt)&&HD(Ue())&&Mt(),Kt}function is(){return gs()||Ue()===23||Ue()===19}function Qs(nt){return Ps(nt)}function Po(nt){return Ps(nt,!1)}function Ps(nt,Kt=!0){let xr=xe(),Tn=fr(),Ai=nt?st(()=>Pc(!0)):nr(()=>Pc(!0));if(Ue()===110){let lo=V.createParameterDeclaration(Ai,void 0,Wh(!0),void 0,g0(),void 0),Cc=Nc(Ai);return Cc&&cn(Cc,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Oo(oi(lo,xr),Tn)}let Wi=An;An=!1;let Ba=bu(26);if(!Kt&&!is())return;let Xo=Oo(oi(V.createParameterDeclaration(Ai,Ba,ei(Ai),bu(58),g0(),pk()),xr),Tn);return An=Wi,Xo}function ao(nt,Kt){if(Yc(nt,Kt))return Wr(rZ)}function Yc(nt,Kt){return nt===39?(bi(nt),!0):kl(59)?!0:Kt&&Ue()===39?(En(Z._0_expected,Vi(59)),Mt(),!0):!1}function ru(nt,Kt){let xr=hr(),Tn=nn();pa(!!(nt&1)),$c(!!(nt&2));let Ai=nt&32?rC(17,uk):rC(16,()=>Kt?Qs(Tn):Po(Tn));return pa(xr),$c(Tn),Ai}function $a(nt){if(!bi(21))return mS();let Kt=ru(nt,!0);return bi(22),Kt}function nu(){kl(28)||zA()}function ll(nt){let Kt=xe(),xr=fr();nt===181&&bi(105);let Tn=br(),Ai=$a(4),Wi=ao(59,!0);nu();let Ba=nt===180?V.createCallSignature(Tn,Ai,Wi):V.createConstructSignature(Tn,Ai,Wi);return Oo(oi(Ba,Kt),xr)}function Gf(){return Ue()===23&&Vn(Mb)}function Mb(){if(Mt(),Ue()===26||Ue()===24)return!0;if(HD(Ue())){if(Mt(),fs())return!0}else if(fs())Mt();else return!1;return Ue()===59||Ue()===28?!0:Ue()!==58?!1:(Mt(),Ue()===59||Ue()===28||Ue()===24)}function XB(nt,Kt,xr){let Tn=ct(16,()=>Qs(!1),23,24),Ai=g0();nu();let Wi=V.createIndexSignature(xr,Tn,Ai);return Oo(oi(Wi,nt),Kt)}function I_(nt,Kt,xr){let Tn=Ls(),Ai=bu(58),Wi;if(Ue()===21||Ue()===30){let Ba=br(),Xo=$a(4),lo=ao(59,!0);Wi=V.createMethodSignature(xr,Tn,Ai,Ba,Xo,lo)}else{let Ba=g0();Wi=V.createPropertySignature(xr,Tn,Ai,Ba),Ue()===64&&(Wi.initializer=pk())}return nu(),Oo(oi(Wi,nt),Kt)}function JB(){if(Ue()===21||Ue()===30||Ue()===139||Ue()===153)return!0;let nt=!1;for(;HD(Ue());)nt=!0,Mt();return Ue()===23?!0:(mr()&&(nt=!0,Mt()),nt?Ue()===21||Ue()===30||Ue()===58||Ue()===59||Ue()===28||Au():!1)}function T1(){if(Ue()===21||Ue()===30)return ll(180);if(Ue()===105&&Vn(A5))return ll(181);let nt=xe(),Kt=fr(),xr=Pc(!1);return Ss(139)?k5(nt,Kt,xr,178,4):Ss(153)?k5(nt,Kt,xr,179,4):Gf()?XB(nt,Kt,xr):I_(nt,Kt,xr)}function A5(){return Mt(),Ue()===21||Ue()===30}function WN(){return Mt()===25}function gk(){switch(Mt()){case 21:case 30:case 25:return!0}return!1}function d5(){let nt=xe();return oi(V.createTypeLiteralNode(Ak()),nt)}function Ak(){let nt;return bi(19)?(nt=gA(4,T1),bi(20)):nt=mS(),nt}function vse(){return Mt(),Ue()===40||Ue()===41?Mt()===148:(Ue()===148&&Mt(),Ue()===23&&V_()&&Mt()===103)}function Gpe(){let nt=xe(),Kt=UI();bi(103);let xr=Sf();return oi(V.createTypeParameterDeclaration(void 0,Kt,xr,void 0),nt)}function Bse(){let nt=xe();bi(19);let Kt;(Ue()===148||Ue()===40||Ue()===41)&&(Kt=ch(),Kt.kind!==148&&bi(148)),bi(23);let xr=Gpe(),Tn=kl(130)?Sf():void 0;bi(24);let Ai;(Ue()===58||Ue()===40||Ue()===41)&&(Ai=ch(),Ai.kind!==58&&bi(58));let Wi=g0();zA();let Ba=gA(4,T1);return bi(20),oi(V.createMappedTypeNode(Kt,xr,Tn,Ai,Wi,Ba),nt)}function Jx(){let nt=xe();if(kl(26))return oi(V.createRestTypeNode(Sf()),nt);let Kt=Sf();if(Nie(Kt)&&Kt.pos===Kt.type.pos){let xr=V.createOptionalTypeNode(Kt.type);return gn(xr,Kt),xr.flags=Kt.flags,xr}return Kt}function p5(){return Mt()===59||Ue()===58&&Mt()===59}function $U(){return Ue()===26?md(Mt())&&p5():md(Ue())&&p5()}function d9(){if(Vn($U)){let nt=xe(),Kt=fr(),xr=bu(26),Tn=UI(),Ai=bu(58);bi(59);let Wi=Jx(),Ba=V.createNamedTupleMember(xr,Tn,Ai,Wi);return Oo(oi(Ba,nt),Kt)}return Jx()}function eK(){let nt=xe();return oi(V.createTupleTypeNode(ct(21,d9,23,24)),nt)}function Aq(){let nt=xe();bi(21);let Kt=Sf();return bi(22),oi(V.createParenthesizedType(Kt),nt)}function Fpe(){let nt;if(Ue()===128){let Kt=xe();Mt();let xr=oi(Ee(128),Kt);nt=NA([xr],Kt)}return nt}function tK(){let nt=xe(),Kt=fr(),xr=Fpe(),Tn=kl(105);pe.assert(!xr||Tn,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Ai=br(),Wi=$a(4),Ba=ao(39,!1),Xo=Tn?V.createConstructorTypeNode(xr,Ai,Wi,Ba):V.createFunctionTypeNode(Ai,Wi,Ba);return Oo(oi(Xo,nt),Kt)}function dq(){let nt=ch();return Ue()===25?void 0:nt}function f5(nt){let Kt=xe();nt&&Mt();let xr=Ue()===112||Ue()===97||Ue()===106?ch():zl(Ue());return nt&&(xr=oi(V.createPrefixUnaryExpression(41,xr),Kt)),oi(V.createLiteralTypeNode(xr),Kt)}function wse(){return Mt(),Ue()===102}function rK(){kt|=4194304;let nt=xe(),Kt=kl(114);bi(102),bi(21);let xr=Sf(),Tn;if(kl(28)){let Ba=c.getTokenStart();bi(19);let Xo=Ue();if(Xo===118||Xo===132?Mt():En(Z._0_expected,Vi(118)),bi(59),Tn=hO(Xo,!0),kl(28),!bi(20)){let lo=li(pr);lo&&lo.code===Z._0_expected.code&&ug(lo,rQ(it,tr,Ba,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}bi(22);let Ai=kl(25)?Su():void 0,Wi=xf();return oi(V.createImportTypeNode(xr,Tn,Ai,Wi,Kt),nt)}function pq(){return Mt(),Ue()===9||Ue()===10}function GQ(){switch(Ue()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ui(dq)||Ug();case 67:c.reScanAsteriskEqualsToken();case 42:return Bv();case 61:c.reScanQuestionToken();case 58:return A9();case 100:return Yy();case 54:return qF();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return f5();case 41:return Vn(pq)?f5(!0):Ug();case 116:return ch();case 110:{let nt=CS();return Ue()===142&&!c.hasPrecedingLineBreak()?w1(nt):nt}case 114:return Vn(wse)?rK():QB();case 19:return Vn(vse)?Bse():d5();case 23:return eK();case 21:return Aq();case 102:return rK();case 131:return Vn(Eq)?dk():Ug();case 16:return wa();default:return Ug()}}function nO(nt){switch(Ue()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!nt;case 41:return!nt&&Vn(pq);case 21:return!nt&&Vn(fq);default:return fs()}}function fq(){return Mt(),Ue()===22||sn(!1)||nO()}function Iq(){let nt=xe(),Kt=GQ();for(;!c.hasPrecedingLineBreak();)switch(Ue()){case 54:Mt(),Kt=oi(V.createJSDocNonNullableType(Kt,!0),nt);break;case 58:if(Vn(Js))return Kt;Mt(),Kt=oi(V.createJSDocNullableType(Kt,!0),nt);break;case 23:if(bi(23),nO()){let xr=Sf();bi(24),Kt=oi(V.createIndexedAccessTypeNode(Kt,xr),nt)}else bi(24),Kt=oi(V.createArrayTypeNode(Kt),nt);break;default:return Kt}return Kt}function FQ(nt){let Kt=xe();return bi(nt),oi(V.createTypeOperatorNode(nt,eZ()),Kt)}function iO(){if(kl(96)){let nt=Wn(Sf);if(Ni()||Ue()!==58)return nt}}function p9(){let nt=xe(),Kt=bf(),xr=Ui(iO),Tn=V.createTypeParameterDeclaration(void 0,Kt,xr);return oi(Tn,nt)}function $F(){let nt=xe();return bi(140),oi(V.createInferTypeNode(p9()),nt)}function eZ(){let nt=Ue();switch(nt){case 143:case 158:case 148:return FQ(nt);case 140:return $F()}return Wr(Iq)}function tZ(nt){if(PA()){let Kt=tK(),xr;return F_(Kt)?xr=nt?Z.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:xr=nt?Z.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,cn(Kt,xr),Kt}}function sO(nt,Kt,xr){let Tn=xe(),Ai=nt===52,Wi=kl(nt),Ba=Wi&&tZ(Ai)||Kt();if(Ue()===nt||Wi){let Xo=[Ba];for(;kl(nt);)Xo.push(tZ(Ai)||Kt());Ba=oi(xr(NA(Xo,Tn)),Tn)}return Ba}function I5(){return sO(51,eZ,V.createIntersectionTypeNode)}function nK(){return sO(52,I5,V.createUnionTypeNode)}function h5(){return Mt(),Ue()===105}function PA(){return Ue()===30||Ue()===21&&Vn(Tse)?!0:Ue()===105||Ue()===128&&Vn(h5)}function iK(){if(HD(Ue())&&Pc(!1),fs()||Ue()===110)return Mt(),!0;if(Ue()===23||Ue()===19){let nt=pr.length;return b9(),nt===pr.length}return!1}function Tse(){return Mt(),!!(Ue()===22||Ue()===26||iK()&&(Ue()===59||Ue()===28||Ue()===58||Ue()===64||Ue()===22&&(Mt(),Ue()===39)))}function rZ(){let nt=xe(),Kt=fs()&&Ui(nZ),xr=Sf();return Kt?oi(V.createTypePredicateNode(void 0,Kt,xr),nt):xr}function nZ(){let nt=bf();if(Ue()===142&&!c.hasPrecedingLineBreak())return Mt(),nt}function dk(){let nt=xe(),Kt=qp(131),xr=Ue()===110?CS():bf(),Tn=kl(142)?Sf():void 0;return oi(V.createTypePredicateNode(Kt,xr,Tn),nt)}function Sf(){if(Ns&81920)return Qu(81920,Sf);if(PA())return tK();let nt=xe(),Kt=nK();if(!Ni()&&!c.hasPrecedingLineBreak()&&kl(96)){let xr=Wn(Sf);bi(58);let Tn=Wr(Sf);bi(59);let Ai=Wr(Sf);return oi(V.createConditionalTypeNode(Kt,xr,Tn,Ai),nt)}return Kt}function g0(){return kl(59)?Sf():void 0}function Hb(){switch(Ue()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return Vn(gk);default:return fs()}}function A0(){if(Hb())return!0;switch(Ue()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return KB()?!0:fs()}}function m5(){return Ue()!==19&&Ue()!==100&&Ue()!==86&&Ue()!==60&&A0()}function py(){let nt=Gi();nt&&Pa(!1);let Kt=xe(),xr=Qy(!0),Tn;for(;Tn=bu(28);)xr=AA(xr,Tn,Qy(!0),Kt);return nt&&Pa(!0),xr}function pk(){return kl(64)?Qy(!0):void 0}function Qy(nt){if(UB())return C5();let Kt=Zpe(nt)||Br(nt);if(Kt)return Kt;let xr=xe(),Tn=fr(),Ai=oO(0);return Ai.kind===80&&Ue()===39?_5(xr,Ai,nt,Tn,void 0):x_(Ai)&&$D(oo())?AA(Ai,ch(),Qy(nt),xr):I9(Ai,xr,nt)}function UB(){return Ue()===127?hr()?!0:Vn(PQ):!1}function Jw(){return Mt(),!c.hasPrecedingLineBreak()&&fs()}function C5(){let nt=xe();return Mt(),!c.hasPrecedingLineBreak()&&(Ue()===42||A0())?oi(V.createYieldExpression(bu(42),Qy(!0)),nt):oi(V.createYieldExpression(void 0,void 0),nt)}function _5(nt,Kt,xr,Tn,Ai){pe.assert(Ue()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Wi=V.createParameterDeclaration(void 0,void 0,Kt,void 0,void 0,void 0);oi(Wi,Kt.pos);let Ba=NA([Wi],Wi.pos,Wi.end),Xo=qp(39),lo=Uw(!!Ai,xr),Cc=V.createArrowFunction(Ai,void 0,Ba,void 0,Xo,lo);return Oo(oi(Cc,nt),Tn)}function Zpe(nt){let Kt=Rse();if(Kt!==0)return Kt===1?Ux(!0,!0):Ui(()=>ZQ(nt))}function Rse(){return Ue()===21||Ue()===30||Ue()===134?Vn(f9):Ue()===39?1:0}function f9(){if(Ue()===134&&(Mt(),c.hasPrecedingLineBreak()||Ue()!==21&&Ue()!==30))return 0;let nt=Ue(),Kt=Mt();if(nt===21){if(Kt===22)switch(Mt()){case 39:case 59:case 19:return 1;default:return 0}if(Kt===23||Kt===19)return 2;if(Kt===26)return 1;if(HD(Kt)&&Kt!==134&&Vn(V_))return Mt()===130?0:1;if(!fs()&&Kt!==110)return 0;switch(Mt()){case 59:return 1;case 58:return Mt(),Ue()===59||Ue()===28||Ue()===64||Ue()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return pe.assert(nt===30),!fs()&&Ue()!==87?0:dt===1?Vn(()=>{kl(87);let Tn=Mt();if(Tn===96)switch(Mt()){case 64:case 32:case 44:return!1;default:return!0}else if(Tn===28||Tn===64)return!0;return!1})?1:0:2}function ZQ(nt){let Kt=c.getTokenStart();if(Zi?.has(Kt))return;let xr=Ux(!1,nt);return xr||(Zi||(Zi=new Set)).add(Kt),xr}function Br(nt){if(Ue()===134&&Vn(sK)===1){let Kt=xe(),xr=fr(),Tn=ql(),Ai=oO(0);return _5(Kt,Ai,nt,xr,Tn)}}function sK(){if(Ue()===134){if(Mt(),c.hasPrecedingLineBreak()||Ue()===39)return 0;let nt=oO(0);if(!c.hasPrecedingLineBreak()&&nt.kind===80&&Ue()===39)return 1}return 0}function Ux(nt,Kt){let xr=xe(),Tn=fr(),Ai=ql(),Wi=zt(Ai,G)?2:0,Ba=br(),Xo;if(bi(21)){if(nt)Xo=ru(Wi,nt);else{let v9=ru(Wi,nt);if(!v9)return;Xo=v9}if(!bi(22)&&!nt)return}else{if(!nt)return;Xo=mS()}let lo=Ue()===59,Cc=ao(59,!1);if(Cc&&!nt&&YC(Cc))return;let Tl=Cc;for(;Tl?.kind===197;)Tl=Tl.type;let Sp=Tl&&Die(Tl);if(!nt&&Ue()!==39&&(Sp||Ue()!==19))return;let rp=Ue(),$A=qp(39),Nv=rp===39||rp===19?Uw(zt(Ai,G),Kt):bf();if(!Kt&&lo&&Ue()!==59)return;let ES=V.createArrowFunction(Ai,Ba,Xo,Cc,$A,Nv);return Oo(oi(ES,xr),Tn)}function Uw(nt,Kt){if(Ue()===19)return dO(nt?2:0);if(Ue()!==27&&Ue()!==100&&Ue()!==86&&y9()&&!m5())return dO(16|(nt?2:0));let xr=hr();pa(!1);let Tn=An;An=!1;let Ai=nt?st(()=>Qy(Kt)):nr(()=>Qy(Kt));return An=Tn,pa(xr),Ai}function I9(nt,Kt,xr){let Tn=bu(58);if(!Tn)return nt;let Ai;return oi(V.createConditionalExpression(nt,Tn,Qu(g,()=>Qy(!1)),Ai=qp(59),d1(Ai)?Qy(xr):tp(80,!1,Z._0_expected,Vi(59))),Kt)}function oO(nt){let Kt=xe(),xr=b5();return dR(nt,xr,Kt)}function fy(nt){return nt===103||nt===165}function dR(nt,Kt,xr){for(;;){oo();let Tn=Zne(Ue());if(!(Ue()===43?Tn>=nt:Tn>nt)||Ue()===103&&Sn())break;if(Ue()===130||Ue()===152){if(c.hasPrecedingLineBreak())break;{let Wi=Ue();Mt(),Kt=Wi===152?y5(Kt,Sf()):_S(Kt,Sf())}}else Kt=AA(Kt,ch(),oO(Tn),xr)}return Kt}function KB(){return Sn()&&Ue()===103?!1:Zne(Ue())>0}function y5(nt,Kt){return oi(V.createSatisfiesExpression(nt,Kt),nt.pos)}function AA(nt,Kt,xr,Tn){return oi(V.createBinaryExpression(nt,Kt,xr),Tn)}function _S(nt,Kt){return oi(V.createAsExpression(nt,Kt),nt.pos)}function h9(){let nt=xe();return oi(V.createPrefixUnaryExpression(Ue(),Hn(m9)),nt)}function oK(){let nt=xe();return oi(V.createDeleteExpression(Hn(m9)),nt)}function iZ(){let nt=xe();return oi(V.createTypeOfExpression(Hn(m9)),nt)}function LQ(){let nt=xe();return oi(V.createVoidExpression(Hn(m9)),nt)}function wv(){return Ue()===135?nn()?!0:Vn(PQ):!1}function Kx(){let nt=xe();return oi(V.createAwaitExpression(Hn(m9)),nt)}function b5(){if(ON()){let xr=xe(),Tn=VQ();return Ue()===43?dR(Zne(Ue()),Tn,xr):Tn}let nt=Ue(),Kt=m9();if(Ue()===43){let xr=Yu(tr,Kt.pos),{end:Tn}=Kt;Kt.kind===217?Ht(xr,Tn,Z.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(pe.assert(hAe(nt)),Ht(xr,Tn,Z.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,Vi(nt)))}return Kt}function m9(){switch(Ue()){case 40:case 41:case 55:case 54:return h9();case 91:return oK();case 114:return iZ();case 116:return LQ();case 30:return dt===1?h_(!0,void 0,void 0,!0):Z0();case 135:if(wv())return Kx();default:return VQ()}}function ON(){switch(Ue()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(dt!==1)return!1;default:return!0}}function VQ(){if(Ue()===46||Ue()===47){let Kt=xe();return oi(V.createPrefixUnaryExpression(Ue(),Hn(E5)),Kt)}else if(dt===1&&Ue()===30&&Vn(Ob))return h_(!0);let nt=E5();if(pe.assert(x_(nt)),(Ue()===46||Ue()===47)&&!c.hasPrecedingLineBreak()){let Kt=Ue();return Mt(),oi(V.createPostfixUnaryExpression(nt,Kt),nt.pos)}return nt}function E5(){let nt=xe(),Kt;return Ue()===102?Vn(A5)?(kt|=4194304,Kt=ch()):Vn(WN)?(Mt(),Mt(),Kt=oi(V.createMetaProperty(102,UI()),nt),Kt.name.escapedText==="defer"?(Ue()===21||Ue()===30)&&(kt|=4194304):kt|=8388608):Kt=fa():Kt=Ue()===108?sa():fa(),Yb(nt,Kt)}function fa(){let nt=xe(),Kt=v5();return yS(nt,Kt,!0)}function sa(){let nt=xe(),Kt=ch();if(Ue()===30){let xr=xe(),Tn=Ui(S5);Tn!==void 0&&(Ht(xr,xe(),Z.super_may_not_use_type_arguments),Kw()||(Kt=V.createExpressionWithTypeArguments(Kt,Tn)))}return Ue()===21||Ue()===25||Ue()===23?Kt:(qp(25,Z.super_must_be_followed_by_an_argument_list_or_member_access),oi(Ze(Kt,_i(!0,!0,!0)),nt))}function h_(nt,Kt,xr,Tn=!1){let Ai=xe(),Wi=Lpe(nt),Ba;if(Wi.kind===287){let Xo=WQ(Wi),lo,Cc=Xo[Xo.length-1];if(Cc?.kind===285&&!q3(Cc.openingElement.tagName,Cc.closingElement.tagName)&&q3(Wi.tagName,Cc.closingElement.tagName)){let Tl=Cc.children.end,Sp=oi(V.createJsxElement(Cc.openingElement,Cc.children,oi(V.createJsxClosingElement(oi(Ie(""),Tl,Tl)),Tl,Tl)),Cc.openingElement.pos,Tl);Xo=NA([...Xo.slice(0,Xo.length-1),Sp],Xo.pos,Tl),lo=Cc.closingElement}else lo=Dse(Wi,nt),q3(Wi.tagName,lo.tagName)||(xr&&iR(xr)&&q3(lo.tagName,xr.tagName)?cn(Wi.tagName,Z.JSX_element_0_has_no_corresponding_closing_tag,WY(tr,Wi.tagName)):cn(lo.tagName,Z.Expected_corresponding_JSX_closing_tag_for_0,WY(tr,Wi.tagName)));Ba=oi(V.createJsxElement(Wi,Xo,lo),Ai)}else Wi.kind===290?Ba=oi(V.createJsxFragment(Wi,WQ(Wi),hq(nt)),Ai):(pe.assert(Wi.kind===286),Ba=Wi);if(!Tn&&nt&&Ue()===30){let Xo=typeof Kt>"u"?Ba.pos:Kt,lo=Ui(()=>h_(!0,Xo));if(lo){let Cc=tp(28,!1);return tEe(Cc,lo.pos,0),Ht(Yu(tr,Xo),lo.end,Z.JSX_expressions_must_have_one_parent_element),oi(V.createBinaryExpression(Ba,Cc,lo),Ai)}}return Ba}function aK(){let nt=xe(),Kt=V.createJsxText(c.getTokenValue(),qt===13);return qt=c.scanJsxToken(),oi(Kt,nt)}function sZ(nt,Kt){switch(Kt){case 1:if(Yw(nt))cn(nt,Z.JSX_fragment_has_no_corresponding_closing_tag);else{let xr=nt.tagName,Tn=Math.min(Yu(tr,xr.pos),xr.end);Ht(Tn,xr.end,Z.JSX_element_0_has_no_corresponding_closing_tag,WY(tr,nt.tagName))}return;case 31:case 7:return;case 12:case 13:return aK();case 19:return mu(!1);case 30:return h_(!1,void 0,nt);default:return pe.assertNever(Kt)}}function WQ(nt){let Kt=[],xr=xe(),Tn=jn;for(jn|=16384;;){let Ai=sZ(nt,qt=c.reScanJsxToken());if(!Ai||(Kt.push(Ai),iR(nt)&&Ai?.kind===285&&!q3(Ai.openingElement.tagName,Ai.closingElement.tagName)&&q3(nt.tagName,Ai.closingElement.tagName)))break}return jn=Tn,NA(Kt,xr)}function Nse(){let nt=xe();return oi(V.createJsxAttributes(gA(13,TE)),nt)}function Lpe(nt){let Kt=xe();if(bi(30),Ue()===32)return ci(),oi(V.createJsxOpeningFragment(),Kt);let xr=qo(),Tn=Ns&524288?void 0:Qf(),Ai=Nse(),Wi;return Ue()===32?(ci(),Wi=V.createJsxOpeningElement(xr,Tn,Ai)):(bi(44),bi(32,void 0,!1)&&(nt?Mt():ci()),Wi=V.createJsxSelfClosingElement(xr,Tn,Ai)),oi(Wi,Kt)}function qo(){let nt=xe(),Kt=Iy();if(sR(Kt))return Kt;let xr=Kt;for(;kl(25);)xr=oi(Ze(xr,_i(!0,!1,!1)),nt);return xr}function Iy(){let nt=xe();Mn();let Kt=Ue()===110,xr=ve();return kl(59)?(Mn(),oi(V.createJsxNamespacedName(xr,ve()),nt)):Kt?oi(V.createToken(110),nt):xr}function mu(nt){let Kt=xe();if(!bi(19))return;let xr,Tn;return Ue()!==20&&(nt||(xr=bu(26)),Tn=py()),nt?bi(20):bi(20,void 0,!1)&&ci(),oi(V.createJsxExpression(xr,Tn),Kt)}function TE(){if(Ue()===19)return Fo();let nt=xe();return oi(V.createJsxAttribute(aO(),cK()),nt)}function cK(){if(Ue()===64){if(es()===11)return Ln();if(Ue()===19)return mu(!0);if(Ue()===30)return h_(!0);En(Z.or_JSX_element_expected)}}function aO(){let nt=xe();Mn();let Kt=ve();return kl(59)?(Mn(),oi(V.createJsxNamespacedName(Kt,ve()),nt)):Kt}function Fo(){let nt=xe();bi(19),bi(26);let Kt=py();return bi(20),oi(V.createJsxSpreadAttribute(Kt),nt)}function Dse(nt,Kt){let xr=xe();bi(31);let Tn=qo();return bi(32,void 0,!1)&&(Kt||!q3(nt.tagName,Tn)?Mt():ci()),oi(V.createJsxClosingElement(Tn),xr)}function hq(nt){let Kt=xe();return bi(31),bi(32,Z.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(nt?Mt():ci()),oi(V.createJsxJsxClosingFragment(),Kt)}function Z0(){pe.assert(dt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let nt=xe();bi(30);let Kt=Sf();bi(32);let xr=m9();return oi(V.createTypeAssertion(Kt,xr),nt)}function fk(){return Mt(),md(Ue())||Ue()===23||Kw()}function pR(){return Ue()===29&&Vn(fk)}function cO(nt){if(nt.flags&64)return!0;if(yv(nt)){let Kt=nt.expression;for(;yv(Kt)&&!(Kt.flags&64);)Kt=Kt.expression;if(Kt.flags&64){for(;yv(nt);)nt.flags|=64,nt=nt.expression;return!0}}return!1}function lK(nt,Kt,xr){let Tn=_i(!0,!0,!0),Ai=xr||cO(Kt),Wi=Ai?Pe(Kt,xr,Tn):Ze(Kt,Tn);if(Ai&&p(Wi.name)&&cn(Wi.name,Z.An_optional_chain_cannot_contain_private_identifiers),g_(Kt)&&Kt.typeArguments){let Ba=Kt.typeArguments.pos-1,Xo=Yu(tr,Kt.typeArguments.end)+1;Ht(Ba,Xo,Z.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return oi(Wi,nt)}function lO(nt,Kt,xr){let Tn;if(Ue()===24)Tn=tp(80,!0,Z.An_element_access_expression_should_take_an_argument);else{let Wi=Cs(py);I1(Wi)&&(Wi.text=JI(Wi.text)),Tn=Wi}bi(24);let Ai=xr||cO(Kt)?et(Kt,xr,Tn):Ke(Kt,Tn);return oi(Ai,nt)}function yS(nt,Kt,xr){for(;;){let Tn,Ai=!1;if(xr&&pR()?(Tn=qp(29),Ai=md(Ue())):Ai=kl(25),Ai){Kt=lK(nt,Kt,Tn);continue}if((Tn||!Gi())&&kl(23)){Kt=lO(nt,Kt,Tn);continue}if(Kw()){Kt=!Tn&&Kt.kind===234?Tv(nt,Kt.expression,Tn,Kt.typeArguments):Tv(nt,Kt,Tn,void 0);continue}if(!Tn){if(Ue()===54&&!c.hasPrecedingLineBreak()){Mt(),Kt=oi(V.createNonNullExpression(Kt),nt);continue}let Wi=Ui(S5);if(Wi){Kt=oi(V.createExpressionWithTypeArguments(Kt,Wi),nt);continue}}return Kt}}function Kw(){return Ue()===15||Ue()===16}function Tv(nt,Kt,xr,Tn){let Ai=V.createTaggedTemplateExpression(Kt,Tn,Ue()===15?(Ys(!0),Ln()):$s(!0));return(xr||Kt.flags&64)&&(Ai.flags|=64),Ai.questionDotToken=xr,oi(Ai,nt)}function Yb(nt,Kt){for(;;){Kt=yS(nt,Kt,!0);let xr,Tn=bu(29);if(Tn&&(xr=Ui(S5),Kw())){Kt=Tv(nt,Kt,Tn,xr);continue}if(xr||Ue()===21){!Tn&&Kt.kind===234&&(xr=Kt.typeArguments,Kt=Kt.expression);let Ai=C9(),Wi=Tn||cO(Kt)?Tt(Kt,Tn,xr,Ai):Ye(Kt,xr,Ai);Kt=oi(Wi,nt);continue}if(Tn){let Ai=tp(80,!1,Z.Identifier_expected);Kt=oi(Pe(Kt,Tn,Ai),nt)}break}return Kt}function C9(){bi(21);let nt=rC(11,PN);return bi(22),nt}function S5(){if(Ns&524288||tn()!==30)return;Mt();let nt=rC(20,Sf);if(oo()===32)return Mt(),nt&&mq()?nt:void 0}function mq(){switch(Ue()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return c.hasPrecedingLineBreak()||KB()||!A0()}function v5(){switch(Ue()){case 15:c.getTokenFlags()&26656&&Ys(!1);case 9:case 10:case 11:return Ln();case 110:case 108:case 106:case 112:case 97:return ch();case 21:return uO();case 23:return gO();case 19:return _9();case 134:if(!Vn(Rv))break;return AO();case 60:return yA();case 86:return Ph();case 100:return AO();case 105:return aZ();case 44:case 69:if(Bs()===14)return Ln();break;case 16:return $s(!1);case 81:return Go()}return bf(Z.Expression_expected)}function uO(){let nt=xe(),Kt=fr();bi(21);let xr=Cs(py);return bi(22),Oo(oi(Qe(xr),nt),Kt)}function Cq(){let nt=xe();bi(26);let Kt=Qy(!0);return oi(V.createSpreadElement(Kt),nt)}function oZ(){return Ue()===26?Cq():Ue()===28?oi(V.createOmittedExpression(),xe()):Qy(!0)}function PN(){return Qu(g,oZ)}function gO(){let nt=xe(),Kt=c.getTokenStart(),xr=bi(23),Tn=c.hasPrecedingLineBreak(),Ai=rC(15,oZ);return Ip(23,24,xr,Kt),oi(Ne(Ai,Tn),nt)}function B5(){let nt=xe(),Kt=fr();if(bu(26)){let Tl=Qy(!0);return Oo(oi(V.createSpreadAssignment(Tl),nt),Kt)}let xr=Pc(!0);if(Ss(139))return k5(nt,Kt,xr,178,0);if(Ss(153))return k5(nt,Kt,xr,179,0);let Tn=bu(42),Ai=fs(),Wi=Ls(),Ba=bu(58),Xo=bu(54);if(Tn||Ue()===21||Ue()===30)return D5(nt,Kt,xr,Tn,Wi,Ba,Xo);let lo;if(Ai&&Ue()!==59){let Tl=bu(64),Sp=Tl?Cs(()=>Qy(!0)):void 0;lo=V.createShorthandPropertyAssignment(Wi,Sp),lo.equalsToken=Tl}else{bi(59);let Tl=Cs(()=>Qy(!0));lo=V.createPropertyAssignment(Wi,Tl)}return lo.modifiers=xr,lo.questionToken=Ba,lo.exclamationToken=Xo,Oo(oi(lo,nt),Kt)}function _9(){let nt=xe(),Kt=c.getTokenStart(),xr=bi(19),Tn=c.hasPrecedingLineBreak(),Ai=rC(12,B5,!0);return Ip(19,20,xr,Kt),oi(Te(Ai,Tn),nt)}function AO(){let nt=Gi();Pa(!1);let Kt=xe(),xr=fr(),Tn=Pc(!1);bi(100);let Ai=bu(42),Wi=Ai?1:0,Ba=zt(Tn,G)?2:0,Xo=Wi&&Ba?Zr(jw):Wi?pt(jw):Ba?st(jw):jw(),lo=br(),Cc=$a(Wi|Ba),Tl=ao(59,!1),Sp=dO(Wi|Ba);Pa(nt);let rp=V.createFunctionExpression(Tn,Ai,Xo,lo,Cc,Tl,Sp);return Oo(oi(rp,Kt),xr)}function jw(){return gs()?MC():void 0}function aZ(){let nt=xe();if(bi(105),kl(25)){let Wi=UI();return oi(V.createMetaProperty(105,Wi),nt)}let Kt=xe(),xr=yS(Kt,v5(),!1),Tn;xr.kind===234&&(Tn=xr.typeArguments,xr=xr.expression),Ue()===29&&En(Z.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,WY(tr,xr));let Ai=Ue()===21?C9():void 0;return oi(at(xr,Tn,Ai),nt)}function jx(nt,Kt){let xr=xe(),Tn=fr(),Ai=c.getTokenStart(),Wi=bi(19,Kt);if(Wi||nt){let Ba=c.hasPrecedingLineBreak(),Xo=gA(1,RE);Ip(19,20,Wi,Ai);let lo=Oo(oi(Ct(Xo,Ba),xr),Tn);return Ue()===64&&(En(Z.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),Mt()),lo}else{let Ba=mS();return Oo(oi(Ct(Ba,void 0),xr),Tn)}}function dO(nt,Kt){let xr=hr();pa(!!(nt&1));let Tn=nn();$c(!!(nt&2));let Ai=An;An=!1;let Wi=Gi();Wi&&Pa(!1);let Ba=jx(!!(nt&16),Kt);return Wi&&Pa(!0),An=Ai,pa(xr),$c(Tn),Ba}function QC(){let nt=xe(),Kt=fr();return bi(27),Oo(oi(V.createEmptyStatement(),nt),Kt)}function OQ(){let nt=xe(),Kt=fr();bi(101);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(py);Ip(21,22,Tn,xr);let Wi=RE(),Ba=kl(93)?RE():void 0;return Oo(oi(Rt(Ai,Wi,Ba),nt),Kt)}function zx(){let nt=xe(),Kt=fr();bi(92);let xr=RE();bi(117);let Tn=c.getTokenStart(),Ai=bi(21),Wi=Cs(py);return Ip(21,22,Ai,Tn),kl(27),Oo(oi(V.createDoStatement(xr,Wi),nt),Kt)}function w5(){let nt=xe(),Kt=fr();bi(117);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(py);Ip(21,22,Tn,xr);let Wi=RE();return Oo(oi(Lt(Ai,Wi),nt),Kt)}function uK(){let nt=xe(),Kt=fr();bi(99);let xr=bu(135);bi(21);let Tn;Ue()!==27&&(Ue()===115||Ue()===121||Ue()===87||Ue()===160&&Vn(NI)||Ue()===135&&Vn(vq)?Tn=hK(!0):Tn=Tu(py));let Ai;if(xr?bi(165):kl(165)){let Wi=Cs(()=>Qy(!0));bi(22),Ai=Wt(xr,Tn,Wi,RE())}else if(kl(103)){let Wi=Cs(py);bi(22),Ai=V.createForInStatement(Tn,Wi,RE())}else{bi(27);let Wi=Ue()!==27&&Ue()!==22?Cs(py):void 0;bi(27);let Ba=Ue()!==22?Cs(py):void 0;bi(22),Ai=je(Tn,Wi,Ba,RE())}return Oo(oi(Ai,nt),Kt)}function qx(nt){let Kt=xe(),xr=fr();bi(nt===253?83:88);let Tn=Au()?void 0:bf();zA();let Ai=nt===253?V.createBreakStatement(Tn):V.createContinueStatement(Tn);return Oo(oi(Ai,Kt),xr)}function kse(){let nt=xe(),Kt=fr();bi(107);let xr=Au()?void 0:Cs(py);return zA(),Oo(oi(V.createReturnStatement(xr),nt),Kt)}function _q(){let nt=xe(),Kt=fr();bi(118);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(py);Ip(21,22,Tn,xr);let Wi=Rg(67108864,RE);return Oo(oi(V.createWithStatement(Ai,Wi),nt),Kt)}function yq(){let nt=xe(),Kt=fr();bi(84);let xr=Cs(py);bi(59);let Tn=gA(3,RE);return Oo(oi(V.createCaseClause(xr,Tn),nt),Kt)}function Vpe(){let nt=xe();bi(90),bi(59);let Kt=gA(3,RE);return oi(V.createDefaultClause(Kt),nt)}function bq(){return Ue()===84?yq():Vpe()}function T5(){let nt=xe();bi(19);let Kt=gA(2,bq);return bi(20),oi(V.createCaseBlock(Kt),nt)}function cZ(){let nt=xe(),Kt=fr();bi(109),bi(21);let xr=Cs(py);bi(22);let Tn=T5();return Oo(oi(V.createSwitchStatement(xr,Tn),nt),Kt)}function xse(){let nt=xe(),Kt=fr();bi(111);let xr=c.hasPrecedingLineBreak()?void 0:Cs(py);return xr===void 0&&(Cn++,xr=oi(Ie(""),xe())),Eg()||Ag(xr),Oo(oi(V.createThrowStatement(xr),nt),Kt)}function R5(){let nt=xe(),Kt=fr();bi(113);let xr=jx(!1),Tn=Ue()===85?gK():void 0,Ai;return(!Tn||Ue()===98)&&(bi(98,Z.catch_or_finally_expected),Ai=jx(!1)),Oo(oi(V.createTryStatement(xr,Tn,Ai),nt),Kt)}function gK(){let nt=xe();bi(85);let Kt;kl(21)?(Kt=MN(),bi(22)):Kt=void 0;let xr=jx(!1);return oi(V.createCatchClause(Kt,xr),nt)}function Oh(){let nt=xe(),Kt=fr();return bi(89),zA(),Oo(oi(V.createDebuggerStatement(),nt),Kt)}function XC(){let nt=xe(),Kt=fr(),xr,Tn=Ue()===21,Ai=Cs(py);return Ir(Ai)&&kl(59)?xr=V.createLabeledStatement(Ai,RE()):(Eg()||Ag(Ai),xr=yt(Ai),Tn&&(Kt=!1)),Oo(oi(xr,nt),Kt)}function Eq(){return Mt(),md(Ue())&&!c.hasPrecedingLineBreak()}function Qb(){return Mt(),Ue()===86&&!c.hasPrecedingLineBreak()}function Rv(){return Mt(),Ue()===100&&!c.hasPrecedingLineBreak()}function PQ(){return Mt(),(md(Ue())||Ue()===9||Ue()===10||Ue()===11)&&!c.hasPrecedingLineBreak()}function fR(){for(;;)switch(Ue()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return MQ();case 135:return L0();case 120:case 156:case 166:return Jw();case 144:case 145:return fK();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let nt=Ue();if(Mt(),c.hasPrecedingLineBreak())return!1;if(nt===138&&Ue()===156)return!0;continue;case 162:return Mt(),Ue()===19||Ue()===80||Ue()===95;case 102:return Mt(),Ue()===166||Ue()===11||Ue()===42||Ue()===19||md(Ue());case 95:let Kt=Mt();if(Kt===156&&(Kt=Vn(Mt)),Kt===64||Kt===42||Kt===19||Kt===90||Kt===130||Kt===60)return!0;continue;case 126:Mt();continue;default:return!1}}function pO(){return Vn(fR)}function y9(){switch(Ue()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return pO()||Vn(gk);case 87:case 95:return pO();case 134:case 138:case 120:case 144:case 145:case 156:case 162:case 166:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return pO()||!Vn(Eq);default:return A0()}}function Sq(){return Mt(),gs()||Ue()===19||Ue()===23}function Wpe(){return Vn(Sq)}function NI(){return AK(!0)}function Gse(){return Mt(),Ue()===64||Ue()===27||Ue()===59}function AK(nt){return Mt(),nt&&Ue()===165?Vn(Gse):(gs()||Ue()===19)&&!c.hasPrecedingLineBreak()}function MQ(){return Vn(AK)}function vq(nt){return Mt()===160?AK(nt):!1}function L0(){return Vn(vq)}function RE(){switch(Ue()){case 27:return QC();case 19:return jx(!1);case 115:return qA(xe(),fr(),void 0);case 121:if(Wpe())return qA(xe(),fr(),void 0);break;case 135:if(L0())return qA(xe(),fr(),void 0);break;case 160:if(MQ())return qA(xe(),fr(),void 0);break;case 100:return Uo(xe(),fr(),void 0);case 86:return d0(xe(),fr(),void 0);case 101:return OQ();case 92:return zx();case 117:return w5();case 99:return uK();case 88:return qx(252);case 83:return qx(253);case 107:return kse();case 118:return _q();case 109:return cZ();case 111:return xse();case 113:case 85:case 98:return R5();case 89:return Oh();case 60:return N5();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(pO())return N5();break}return XC()}function dK(nt){return nt.kind===138}function N5(){let nt=xe(),Kt=fr(),xr=Pc(!0);if(zt(xr,dK)){let Ai=NE(nt);if(Ai)return Ai;for(let Wi of xr)Wi.flags|=33554432;return Rg(33554432,()=>pK(nt,Kt,xr))}else return pK(nt,Kt,xr)}function NE(nt){return Rg(33554432,()=>{let Kt=lf(jn,nt);if(Kt)return fI(Kt)})}function pK(nt,Kt,xr){switch(Ue()){case 115:case 121:case 87:case 160:case 135:return qA(nt,Kt,xr);case 100:return Uo(nt,Kt,xr);case 86:return d0(nt,Kt,xr);case 120:return qw(nt,Kt,xr);case 156:return S9(nt,Kt,xr);case 94:return kOe(nt,Kt,xr);case 162:case 144:case 145:return N2e(nt,Kt,xr);case 102:return EK(nt,Kt,xr);case 95:switch(Mt(),Ue()){case 90:case 64:return F5(nt,Kt,xr);case 130:return QQ(nt,Kt,xr);default:return Qpe(nt,Kt,xr)}default:if(xr){let Tn=tp(283,!0,Z.Declaration_expected);return mz(Tn,nt),Tn.modifiers=xr,Tn}return}}function $x(){return Mt()===11}function Bq(){return Mt(),Ue()===161||Ue()===64}function fK(){return Mt(),!c.hasPrecedingLineBreak()&&(fs()||Ue()===11)}function zw(nt,Kt){if(Ue()!==19){if(nt&4){nu();return}if(Au()){zA();return}}return dO(nt,Kt)}function wq(){let nt=xe();if(Ue()===28)return oi(V.createOmittedExpression(),nt);let Kt=bu(26),xr=b9(),Tn=pk();return oi(V.createBindingElement(Kt,void 0,xr,Tn),nt)}function Fse(){let nt=xe(),Kt=bu(26),xr=gs(),Tn=Ls(),Ai;xr&&Ue()!==59?(Ai=Tn,Tn=void 0):(bi(59),Ai=b9());let Wi=pk();return oi(V.createBindingElement(Kt,Tn,Ai,Wi),nt)}function Tq(){let nt=xe();bi(19);let Kt=Cs(()=>rC(9,Fse));return bi(20),oi(V.createObjectBindingPattern(Kt),nt)}function IK(){let nt=xe();bi(23);let Kt=Cs(()=>rC(10,wq));return bi(24),oi(V.createArrayBindingPattern(Kt),nt)}function Rq(){return Ue()===19||Ue()===23||Ue()===81||gs()}function b9(nt){return Ue()===23?IK():Ue()===19?Tq():MC(nt)}function R1(){return MN(!0)}function MN(nt){let Kt=xe(),xr=fr(),Tn=b9(Z.Private_identifiers_are_not_allowed_in_variable_declarations),Ai;nt&&Tn.kind===80&&Ue()===54&&!c.hasPrecedingLineBreak()&&(Ai=ch());let Wi=g0(),Ba=fy(Ue())?void 0:pk(),Xo=_r(Tn,Ai,Wi,Ba);return Oo(oi(Xo,Kt),xr)}function hK(nt){let Kt=xe(),xr=0;switch(Ue()){case 115:break;case 121:xr|=1;break;case 87:xr|=2;break;case 160:xr|=4;break;case 135:pe.assert(L0()),xr|=6,Mt();break;default:pe.fail()}Mt();let Tn;if(Ue()===165&&Vn(mK))Tn=mS();else{let Ai=Sn();co(nt),Tn=rC(8,nt?MN:R1),co(Ai)}return oi(Gt(Tn,xr),Kt)}function mK(){return V_()&&Mt()===22}function qA(nt,Kt,xr){let Tn=hK(!1);zA();let Ai=mt(xr,Tn);return Oo(oi(Ai,nt),Kt)}function Uo(nt,Kt,xr){let Tn=nn(),Ai=Zw(xr);bi(100);let Wi=bu(42),Ba=Ai&2048?jw():MC(),Xo=Wi?1:0,lo=Ai&1024?2:0,Cc=br();Ai&32&&$c(!0);let Tl=$a(Xo|lo),Sp=ao(59,!1),rp=zw(Xo|lo,Z.or_expected);$c(Tn);let $A=V.createFunctionDeclaration(xr,Wi,Ba,Cc,Tl,Sp,rp);return Oo(oi($A,nt),Kt)}function bS(){if(Ue()===137)return bi(137);if(Ue()===11&&Vn(Mt)===21)return Ui(()=>{let nt=Ln();return nt.text==="constructor"?nt:void 0})}function nC(nt,Kt,xr){return Ui(()=>{if(bS()){let Tn=br(),Ai=$a(0),Wi=ao(59,!1),Ba=zw(0,Z.or_expected),Xo=V.createConstructorDeclaration(xr,Ai,Ba);return Xo.typeParameters=Tn,Xo.type=Wi,Oo(oi(Xo,nt),Kt)}})}function D5(nt,Kt,xr,Tn,Ai,Wi,Ba,Xo){let lo=Tn?1:0,Cc=zt(xr,G)?2:0,Tl=br(),Sp=$a(lo|Cc),rp=ao(59,!1),$A=zw(lo|Cc,Xo),Nv=V.createMethodDeclaration(xr,Tn,Ai,Wi,Tl,Sp,rp,$A);return Nv.exclamationToken=Ba,Oo(oi(Nv,nt),Kt)}function CK(nt,Kt,xr,Tn,Ai){let Wi=!Ai&&!c.hasPrecedingLineBreak()?bu(54):void 0,Ba=g0(),Xo=Qu(90112,pk);RI(Tn,Ba,Xo);let lo=V.createPropertyDeclaration(xr,Tn,Ai||Wi,Ba,Xo);return Oo(oi(lo,nt),Kt)}function HQ(nt,Kt,xr){let Tn=bu(42),Ai=Ls(),Wi=bu(58);return Tn||Ue()===21||Ue()===30?D5(nt,Kt,xr,Tn,Ai,Wi,void 0,Z.or_expected):CK(nt,Kt,xr,Ai,Wi)}function k5(nt,Kt,xr,Tn,Ai){let Wi=Ls(),Ba=br(),Xo=$a(0),lo=ao(59,!1),Cc=zw(Ai),Tl=Tn===178?V.createGetAccessorDeclaration(xr,Wi,Xo,lo,Cc):V.createSetAccessorDeclaration(xr,Wi,Xo,Cc);return Tl.typeParameters=Ba,kg(Tl)&&(Tl.type=lo),Oo(oi(Tl,nt),Kt)}function _K(){let nt;if(Ue()===60)return!0;for(;HD(Ue());){if(nt=Ue(),Vre(nt))return!0;Mt()}if(Ue()===42||(mr()&&(nt=Ue(),Mt()),Ue()===23))return!0;if(nt!==void 0){if(!w0(nt)||nt===153||nt===139)return!0;switch(Ue()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return Au()}}return!1}function Ae(nt,Kt,xr){qp(126);let Tn=vt(),Ai=Oo(oi(V.createClassStaticBlockDeclaration(Tn),nt),Kt);return Ai.modifiers=xr,Ai}function vt(){let nt=hr(),Kt=nn();pa(!1),$c(!0);let xr=jx(!1);return pa(nt),$c(Kt),xr}function fn(){if(nn()&&Ue()===135){let nt=xe(),Kt=bf(Z.Expression_expected);Mt();let xr=yS(nt,Kt,!0);return Yb(nt,xr)}return E5()}function qi(){let nt=xe();if(!kl(60))return;let Kt=on(fn);return oi(V.createDecorator(Kt),nt)}function ic(nt,Kt,xr){let Tn=xe(),Ai=Ue();if(Ue()===87&&Kt){if(!Ui(Uc))return}else{if(xr&&Ue()===126&&Vn(bK))return;if(nt&&Ue()===126)return;if(!Ef())return}return oi(Ee(Ai),Tn)}function Pc(nt,Kt,xr){let Tn=xe(),Ai,Wi,Ba,Xo=!1,lo=!1,Cc=!1;if(nt&&Ue()===60)for(;Wi=qi();)Ai=Ft(Ai,Wi);for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba),lo=!0;if(lo&&nt&&Ue()===60)for(;Wi=qi();)Ai=Ft(Ai,Wi),Cc=!0;if(Cc)for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba);return Ai&&NA(Ai,Tn)}function ql(){let nt;if(Ue()===134){let Kt=xe();Mt();let xr=oi(Ee(134),Kt);nt=NA([xr],Kt)}return nt}function Vc(){let nt=xe(),Kt=fr();if(Ue()===27)return Mt(),Oo(oi(V.createSemicolonClassElement(),nt),Kt);let xr=Pc(!0,!0,!0);if(Ue()===126&&Vn(bK))return Ae(nt,Kt,xr);if(Ss(139))return k5(nt,Kt,xr,178,0);if(Ss(153))return k5(nt,Kt,xr,179,0);if(Ue()===137||Ue()===11){let Tn=nC(nt,Kt,xr);if(Tn)return Tn}if(Gf())return XB(nt,Kt,xr);if(md(Ue())||Ue()===11||Ue()===9||Ue()===10||Ue()===42||Ue()===23)if(zt(xr,dK)){for(let Ai of xr)Ai.flags|=33554432;return Rg(33554432,()=>HQ(nt,Kt,xr))}else return HQ(nt,Kt,xr);if(xr){let Tn=tp(80,!0,Z.Declaration_expected);return CK(nt,Kt,xr,Tn,void 0)}return pe.fail("Should not have attempted to parse class member declaration.")}function yA(){let nt=xe(),Kt=fr(),xr=Pc(!0);if(Ue()===86)return Xy(nt,Kt,xr,232);let Tn=tp(283,!0,Z.Expression_expected);return mz(Tn,nt),Tn.modifiers=xr,Tn}function Ph(){return Xy(xe(),fr(),void 0,232)}function d0(nt,Kt,xr){return Xy(nt,Kt,xr,264)}function Xy(nt,Kt,xr,Tn){let Ai=nn();bi(86);let Wi=x5(),Ba=br();zt(xr,y)&&$c(!0);let Xo=fO(),lo;bi(19)?(lo=E9(),bi(20)):lo=mS(),$c(Ai);let Cc=Tn===264?V.createClassDeclaration(xr,Wi,Ba,Xo,lo):V.createClassExpression(xr,Wi,Ba,Xo,lo);return Oo(oi(Cc,nt),Kt)}function x5(){return gs()&&!Jy()?Wh(gs()):void 0}function Jy(){return Ue()===119&&Vn(y2)}function fO(){if(yK())return gA(22,Nq)}function Nq(){let nt=xe(),Kt=Ue();pe.assert(Kt===96||Kt===119),Mt();let xr=rC(7,jB);return oi(V.createHeritageClause(Kt,xr),nt)}function jB(){let nt=xe(),Kt=E5();if(Kt.kind===234)return Kt;let xr=Qf();return oi(V.createExpressionWithTypeArguments(Kt,xr),nt)}function Qf(){return Ue()===30?ct(20,Sf,30,32):void 0}function yK(){return Ue()===96||Ue()===119}function E9(){return gA(5,Vc)}function qw(nt,Kt,xr){bi(120);let Tn=bf(),Ai=br(),Wi=fO(),Ba=Ak(),Xo=V.createInterfaceDeclaration(xr,Tn,Ai,Wi,Ba);return Oo(oi(Xo,nt),Kt)}function S9(nt,Kt,xr){bi(156),c.hasPrecedingLineBreak()&&En(Z.Line_break_not_permitted_here);let Tn=bf(),Ai=br();bi(64);let Wi=Ue()===141&&Ui(dq)||Sf();zA();let Ba=V.createTypeAliasDeclaration(xr,Tn,Ai,Wi);return Oo(oi(Ba,nt),Kt)}function YQ(){let nt=xe(),Kt=fr(),xr=Ls(),Tn=Cs(pk);return Oo(oi(V.createEnumMember(xr,Tn),nt),Kt)}function kOe(nt,Kt,xr){bi(94);let Tn=bf(),Ai;bi(19)?(Ai=Kr(()=>rC(6,YQ)),bi(20)):Ai=mS();let Wi=V.createEnumDeclaration(xr,Tn,Ai);return Oo(oi(Wi,nt),Kt)}function Ope(){let nt=xe(),Kt;return bi(19)?(Kt=gA(1,RE),bi(20)):Kt=mS(),oi(V.createModuleBlock(Kt),nt)}function Dq(nt,Kt,xr,Tn){let Ai=Tn&32,Wi=Tn&8?UI():bf(),Ba=kl(25)?Dq(xe(),!1,void 0,8|Ai):Ope(),Xo=V.createModuleDeclaration(xr,Wi,Ba,Tn);return Oo(oi(Xo,nt),Kt)}function Ppe(nt,Kt,xr){let Tn=0,Ai;Ue()===162?(Ai=bf(),Tn|=2048):(Ai=Ln(),Ai.text=JI(Ai.text));let Wi;Ue()===19?Wi=Ope():zA();let Ba=V.createModuleDeclaration(xr,Ai,Wi,Tn);return Oo(oi(Ba,nt),Kt)}function N2e(nt,Kt,xr){let Tn=0;if(Ue()===162)return Ppe(nt,Kt,xr);if(kl(145))Tn|=32;else if(bi(144),Ue()===11)return Ppe(nt,Kt,xr);return Dq(nt,Kt,xr,Tn)}function IO(){return Ue()===149&&Vn(kq)}function kq(){return Mt()===21}function bK(){return Mt()===19}function xOe(){return Mt()===44}function QQ(nt,Kt,xr){bi(130),bi(145);let Tn=bf();zA();let Ai=V.createNamespaceExportDeclaration(Tn);return Ai.modifiers=xr,Oo(oi(Ai,nt),Kt)}function EK(nt,Kt,xr){bi(102);let Tn=c.getTokenFullStart(),Ai;fs()&&(Ai=bf());let Wi;if(Ai?.escapedText==="type"&&(Ue()!==161||fs()&&Vn(Bq))&&(fs()||ro())?(Wi=156,Ai=fs()?bf():void 0):Ai?.escapedText==="defer"&&(Ue()===161?!Vn($x):Ue()!==28&&Ue()!==64)&&(Wi=166,Ai=fs()?bf():void 0),Ai&&!Hpe()&&Wi!==166)return Zse(nt,Kt,xr,Ai,Wi===156);let Ba=Mpe(Ai,Tn,Wi,void 0),Xo=SK(),lo=xq();zA();let Cc=V.createImportDeclaration(xr,Ba,Xo,lo);return Oo(oi(Cc,nt),Kt)}function Mpe(nt,Kt,xr,Tn=!1){let Ai;return(nt||Ue()===42||Ue()===19)&&(Ai=Lse(nt,Kt,xr,Tn),bi(161)),Ai}function xq(){let nt=Ue();if((nt===118||nt===132)&&!c.hasPrecedingLineBreak())return hO(nt)}function xl(){let nt=xe(),Kt=md(Ue())?UI():zl(11);bi(59);let xr=Qy(!0);return oi(V.createImportAttribute(Kt,xr),nt)}function hO(nt,Kt){let xr=xe();Kt||bi(nt);let Tn=c.getTokenStart();if(bi(19)){let Ai=c.hasPrecedingLineBreak(),Wi=rC(24,xl,!0);if(!bi(20)){let Ba=li(pr);Ba&&Ba.code===Z._0_expected.code&&ug(Ba,rQ(it,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return oi(V.createImportAttributes(Wi,Ai,nt),xr)}else{let Ai=NA([],xe(),void 0,!1);return oi(V.createImportAttributes(Ai,!1,nt),xr)}}function ro(){return Ue()===42||Ue()===19}function Hpe(){return Ue()===28||Ue()===161}function Zse(nt,Kt,xr,Tn,Ai){bi(64);let Wi=XQ();zA();let Ba=V.createImportEqualsDeclaration(xr,Ai,Tn,Wi);return Oo(oi(Ba,nt),Kt)}function Lse(nt,Kt,xr,Tn){let Ai;return(!nt||kl(28))&&(Tn&&c.setSkipJsDocLeadingAsterisks(!0),Ue()===42?Ai=GOe():Ai=k2e(276),Tn&&c.setSkipJsDocLeadingAsterisks(!1)),oi(V.createImportClause(xr,nt,Ai),Kt)}function XQ(){return IO()?D2e():en(!1)}function D2e(){let nt=xe();bi(149),bi(21);let Kt=SK();return bi(22),oi(V.createExternalModuleReference(Kt),nt)}function SK(){if(Ue()===11){let nt=Ln();return nt.text=JI(nt.text),nt}else return py()}function GOe(){let nt=xe();bi(42),bi(130);let Kt=bf();return oi(V.createNamespaceImport(Kt),nt)}function Vse(){return md(Ue())||Ue()===11}function Ik(nt){return Ue()===11?Ln():nt()}function k2e(nt){let Kt=xe(),xr=nt===276?V.createNamedImports(ct(23,FOe,19,20)):V.createNamedExports(ct(23,G5,19,20));return oi(xr,Kt)}function G5(){let nt=fr();return Oo(Ype(282),nt)}function FOe(){return Ype(277)}function Ype(nt){let Kt=xe(),xr=w0(Ue())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),Wi=!1,Ba,Xo=!0,lo=Ik(UI);if(lo.kind===80&&lo.escapedText==="type")if(Ue()===130){let Sp=UI();if(Ue()===130){let rp=UI();Vse()?(Wi=!0,Ba=Sp,lo=Ik(Tl),Xo=!1):(Ba=lo,lo=rp,Xo=!1)}else Vse()?(Ba=lo,Xo=!1,lo=Ik(Tl)):(Wi=!0,lo=Sp)}else Vse()&&(Wi=!0,lo=Ik(Tl));Xo&&Ue()===130&&(Ba=lo,bi(130),lo=Ik(Tl)),nt===277&&(lo.kind!==80?(Ht(Yu(tr,lo.pos),lo.end,Z.Identifier_expected),lo=xB(tp(80,!1),lo.pos,lo.pos)):xr&&Ht(Tn,Ai,Z.Identifier_expected));let Cc=nt===277?V.createImportSpecifier(Wi,Ba,lo):V.createExportSpecifier(Wi,Ba,lo);return oi(Cc,Kt);function Tl(){return xr=w0(Ue())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),UI()}}function x2e(nt){return oi(V.createNamespaceExport(Ik(UI)),nt)}function Qpe(nt,Kt,xr){let Tn=nn();$c(!0);let Ai,Wi,Ba,Xo=kl(156),lo=xe();kl(42)?(kl(130)&&(Ai=x2e(lo)),bi(161),Wi=SK()):(Ai=k2e(280),(Ue()===161||Ue()===11&&!c.hasPrecedingLineBreak())&&(bi(161),Wi=SK()));let Cc=Ue();Wi&&(Cc===118||Cc===132)&&!c.hasPrecedingLineBreak()&&(Ba=hO(Cc)),zA(),$c(Tn);let Tl=V.createExportDeclaration(xr,Xo,Ai,Wi,Ba);return Oo(oi(Tl,nt),Kt)}function F5(nt,Kt,xr){let Tn=nn();$c(!0);let Ai;kl(64)?Ai=!0:bi(90);let Wi=Qy(!0);zA(),$c(Tn);let Ba=V.createExportAssignment(xr,Ai,Wi);return Oo(oi(Ba,nt),Kt)}let hk;(nt=>{nt[nt.SourceElements=0]="SourceElements",nt[nt.BlockStatements=1]="BlockStatements",nt[nt.SwitchClauses=2]="SwitchClauses",nt[nt.SwitchClauseStatements=3]="SwitchClauseStatements",nt[nt.TypeMembers=4]="TypeMembers",nt[nt.ClassMembers=5]="ClassMembers",nt[nt.EnumMembers=6]="EnumMembers",nt[nt.HeritageClauseElement=7]="HeritageClauseElement",nt[nt.VariableDeclarations=8]="VariableDeclarations",nt[nt.ObjectBindingElements=9]="ObjectBindingElements",nt[nt.ArrayBindingElements=10]="ArrayBindingElements",nt[nt.ArgumentExpressions=11]="ArgumentExpressions",nt[nt.ObjectLiteralMembers=12]="ObjectLiteralMembers",nt[nt.JsxAttributes=13]="JsxAttributes",nt[nt.JsxChildren=14]="JsxChildren",nt[nt.ArrayLiteralMembers=15]="ArrayLiteralMembers",nt[nt.Parameters=16]="Parameters",nt[nt.JSDocParameters=17]="JSDocParameters",nt[nt.RestProperties=18]="RestProperties",nt[nt.TypeParameters=19]="TypeParameters",nt[nt.TypeArguments=20]="TypeArguments",nt[nt.TupleElementTypes=21]="TupleElementTypes",nt[nt.HeritageClauses=22]="HeritageClauses",nt[nt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",nt[nt.ImportAttributes=24]="ImportAttributes",nt[nt.JSDocComment=25]="JSDocComment",nt[nt.Count=26]="Count"})(hk||(hk={}));let Wse;(nt=>{nt[nt.False=0]="False",nt[nt.True=1]="True",nt[nt.Unknown=2]="Unknown"})(Wse||(Wse={}));let HN;(nt=>{function Kt(Cc,Tl,Sp){Zn("file.js",Cc,99,void 0,1,0),c.setText(Cc,Tl,Sp),qt=c.scan();let rp=xr(),$A=hn("file.js",99,1,!1,[],Ee(1),0,Dc),Nv=qL(pr,$A);return ot&&($A.jsDocDiagnostics=qL(ot,$A)),ya(),rp?{jsDocTypeExpression:rp,diagnostics:Nv}:void 0}nt.parseJSDocTypeExpressionForTests=Kt;function xr(Cc){let Tl=xe(),Sp=(Cc?kl:bi)(19),rp=Rg(16777216,AR);(!Cc||Sp)&&pI(20);let $A=V.createJSDocTypeExpression(rp);return yr($A),oi($A,Tl)}nt.parseJSDocTypeExpression=xr;function Tn(){let Cc=xe(),Tl=kl(19),Sp=xe(),rp=en(!1);for(;Ue()===81;)wn(),$r(),rp=oi(V.createJSDocMemberName(rp,bf()),Sp);Tl&&pI(20);let $A=V.createJSDocNameReference(rp);return yr($A),oi($A,Cc)}nt.parseJSDocNameReference=Tn;function Ai(Cc,Tl,Sp){Zn("",Cc,99,void 0,1,0);let rp=Rg(16777216,()=>lo(Tl,Sp)),Nv=qL(pr,{languageVariant:0,text:Cc});return ya(),rp?{jsDoc:rp,diagnostics:Nv}:void 0}nt.parseIsolatedJSDocComment=Ai;function Wi(Cc,Tl,Sp){let rp=qt,$A=pr.length,Nv=si,ES=Rg(16777216,()=>lo(Tl,Sp));return UA(ES,Cc),Ns&524288&&(ot||(ot=[]),Pr(ot,pr,$A)),qt=rp,pr.length=$A,si=Nv,ES}nt.parseJSDocComment=Wi;let Ba;(Cc=>{Cc[Cc.BeginningOfLine=0]="BeginningOfLine",Cc[Cc.SawAsterisk=1]="SawAsterisk",Cc[Cc.SavingComments=2]="SavingComments",Cc[Cc.SavingBackticks=3]="SavingBackticks"})(Ba||(Ba={}));let Xo;(Cc=>{Cc[Cc.Property=1]="Property",Cc[Cc.Parameter=2]="Parameter",Cc[Cc.CallbackParameter=4]="CallbackParameter"})(Xo||(Xo={}));function lo(Cc=0,Tl){let Sp=tr,rp=Tl===void 0?Sp.length:Cc+Tl;if(Tl=rp-Cc,pe.assert(Cc>=0),pe.assert(Cc<=rp),pe.assert(rp<=Sp.length),!iet(Sp,Cc))return;let $A,Nv,ES,v9,B9,eG=[],mO=[],sd=jn;jn|=1<<25;let Wm=c.scanRange(Cc+3,Tl-5,w9);return jn=sd,Wm;function w9(){let vs=1,da,Sa=Cc-(Sp.lastIndexOf(` -`,Cc)+1)+4;function Fc(vp){da||(da=Sa),eG.push(vp),Sa+=vp.length}for($r();hR(5););hR(4)&&(vs=0,Sa=0);e:for(;;){switch(Ue()){case 60:Gq(eG),B9||(B9=xe()),uf(q(Sa)),vs=0,da=void 0;break;case 4:eG.push(c.getTokenText()),vs=0,Sa=0;break;case 42:let vp=c.getTokenText();vs===1?(vs=2,Fc(vp)):(pe.assert(vs===0),vs=1,Sa+=vp.length);break;case 5:pe.assert(vs!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let m_=c.getTokenText();da!==void 0&&Sa+m_.length>da&&eG.push(m_.slice(da-Sa)),Sa+=m_.length;break;case 1:break e;case 82:vs=2,Fc(c.getTokenValue());break;case 19:vs=2;let mR=c.getTokenFullStart(),zB=c.getTokenEnd()-1,$w=bt(zB);if($w){v9||V0(eG),mO.push(oi(V.createJSDocText(eG.join("")),v9??Cc,mR)),mO.push($w),eG=[],v9=c.getTokenEnd();break}default:vs=2,Fc(c.getTokenText());break}vs===2?ri(!1):$r()}let Qc=eG.join("").trimEnd();mO.length&&Qc.length&&mO.push(oi(V.createJSDocText(Qc),v9??Cc,B9)),mO.length&&$A&&pe.assertIsDefined(B9,"having parsed tags implies that the end of the comment span should be set");let Kg=$A&&NA($A,Nv,ES);return oi(V.createJSDocComment(mO.length?NA(mO,Cc,B9):Qc.length?Qc:void 0,Kg),Cc,rp)}function V0(vs){for(;vs.length&&(vs[0]===` -`||vs[0]==="\r");)vs.shift()}function Gq(vs){for(;vs.length;){let da=vs[vs.length-1].trimEnd();if(da==="")vs.pop();else if(da.lengthm_&&(Fc.push(rG.slice(m_-vs)),vp=2),vs+=rG.length;break;case 19:vp=2;let lZ=c.getTokenFullStart(),Ose=c.getTokenEnd()-1,jpe=bt(Ose);jpe?(Qc.push(oi(V.createJSDocText(Fc.join("")),Kg??Sa,lZ)),Qc.push(jpe),Fc=[],Kg=c.getTokenEnd()):mR(c.getTokenText());break;case 62:vp===3?vp=2:vp=3,mR(c.getTokenText());break;case 82:vp!==3&&(vp=2),mR(c.getTokenValue());break;case 42:if(vp===0){vp=1,vs+=1;break}default:vp!==3&&(vp=2),mR(c.getTokenText());break}vp===2||vp===3?zB=ri(vp===3):zB=$r()}V0(Fc);let $w=Fc.join("").trimEnd();if(Qc.length)return $w.length&&Qc.push(oi(V.createJSDocText($w),Kg??Sa)),NA(Qc,Sa,c.getTokenEnd());if($w.length)return $w}function bt(vs){let da=Ui(Ii);if(!da)return;$r(),mk();let Sa=Nr(),Fc=[];for(;Ue()!==20&&Ue()!==4&&Ue()!==1;)Fc.push(c.getTokenText()),$r();let Qc=da==="link"?V.createJSDocLink:da==="linkcode"?V.createJSDocLinkCode:V.createJSDocLinkPlain;return oi(Qc(Sa,Fc.join("")),vs,c.getTokenEnd())}function Nr(){if(md(Ue())){let vs=xe(),da=UI();for(;kl(25);)da=oi(V.createQualifiedName(da,Ue()===81?tp(80,!1):UI()),vs);for(;Ue()===81;)wn(),$r(),da=oi(V.createJSDocMemberName(da,bf()),vs);return da}}function Ii(){if(vo(),Ue()===19&&$r()===60&&md($r())){let vs=c.getTokenValue();if(Jo(vs))return vs}}function Jo(vs){return vs==="link"||vs==="linkcode"||vs==="linkplain"}function du(vs,da,Sa,Fc){return oi(V.createJSDocUnknownTag(da,Ce(vs,xe(),Sa,Fc)),vs)}function uf(vs){vs&&($A?$A.push(vs):($A=[vs],Nv=vs.pos),ES=vs.end)}function E2(){return vo(),Ue()===19?xr():void 0}function CO(){let vs=hR(23);vs&&mk();let da=hR(62),Sa=got();return da&&Jg(62),vs&&(mk(),bu(64)&&py(),bi(24)),{name:Sa,isBracketed:vs}}function IR(vs){switch(vs.kind){case 151:return!0;case 189:return IR(vs.elementType);default:return oh(vs)&&Ir(vs.typeName)&&vs.typeName.escapedText==="Object"&&!vs.typeArguments}}function Fq(vs,da,Sa,Fc){let Qc=E2(),Kg=!Qc;vo();let{name:vp,isBracketed:m_}=CO(),mR=vo();Kg&&!Vn(Ii)&&(Qc=E2());let zB=Ce(vs,xe(),Fc,mR),$w=PJt(Qc,vp,Sa,Fc);$w&&(Qc=$w,Kg=!0);let rG=Sa===1?V.createJSDocPropertyTag(da,vp,m_,Qc,Kg,zB):V.createJSDocParameterTag(da,vp,m_,Qc,Kg,zB);return oi(rG,vs)}function PJt(vs,da,Sa,Fc){if(vs&&IR(vs.type)){let Qc=xe(),Kg,vp;for(;Kg=Ui(()=>vK(Sa,Fc,da));)Kg.kind===342||Kg.kind===349?vp=Ft(vp,Kg):Kg.kind===346&&cn(Kg.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(vp){let m_=oi(V.createJSDocTypeLiteral(vp,vs.type.kind===189),Qc);return oi(V.createJSDocTypeExpression(m_),Qc)}}}function Xpe(vs,da,Sa,Fc){zt($A,E9e)&&Ht(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=E2();return oi(V.createJSDocReturnTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Zq(vs,da,Sa,Fc){zt($A,wde)&&Ht(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=xr(!0),Kg=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocTypeTag(da,Qc,Kg),vs)}function MJt(vs,da,Sa,Fc){let Kg=Ue()===23||Vn(()=>$r()===60&&md($r())&&Jo(c.getTokenValue()))?void 0:Tn(),vp=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSeeTag(da,Kg,vp),vs)}function HJt(vs,da,Sa,Fc){let Qc=E2(),Kg=Ce(vs,xe(),Sa,Fc);return oi(V.createJSDocThrowsTag(da,Qc,Kg),vs)}function G2e(vs,da,Sa,Fc){let Qc=xe(),Kg=sot(),vp=c.getTokenFullStart(),m_=Ce(vs,vp,Sa,Fc);m_||(vp=c.getTokenFullStart());let mR=typeof m_!="string"?NA(Nn([oi(Kg,Qc,vp)],m_),Qc):Kg.text+m_;return oi(V.createJSDocAuthorTag(da,mR),vs)}function sot(){let vs=[],da=!1,Sa=c.getToken();for(;Sa!==1&&Sa!==4;){if(Sa===30)da=!0;else{if(Sa===60&&!da)break;if(Sa===32&&da){vs.push(c.getTokenText()),c.resetTokenState(c.getTokenEnd());break}}vs.push(c.getTokenText()),Sa=$r()}return V.createJSDocText(vs.join(""))}function _O(vs,da,Sa,Fc){let Qc=JQ();return oi(V.createJSDocImplementsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function YJt(vs,da,Sa,Fc){let Qc=JQ();return oi(V.createJSDocAugmentsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function QJt(vs,da,Sa,Fc){let Qc=xr(!1),Kg=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSatisfiesTag(da,Qc,Kg),vs)}function XJt(vs,da,Sa,Fc){let Qc=c.getTokenFullStart(),Kg;fs()&&(Kg=bf());let vp=Mpe(Kg,Qc,156,!0),m_=SK(),mR=xq(),zB=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocImportTag(da,vp,m_,mR,zB),vs)}function JQ(){let vs=kl(19),da=xe(),Sa=Jpe();c.setSkipJsDocLeadingAsterisks(!0);let Fc=Qf();c.setSkipJsDocLeadingAsterisks(!1);let Qc=V.createExpressionWithTypeArguments(Sa,Fc),Kg=oi(Qc,da);return vs&&(mk(),bi(20)),Kg}function Jpe(){let vs=xe(),da=N1();for(;kl(25);){let Sa=N1();da=oi(Ze(da,Sa),vs)}return da}function Lq(vs,da,Sa,Fc,Qc){return oi(da(Sa,Ce(vs,xe(),Fc,Qc)),vs)}function oot(vs,da,Sa,Fc){let Qc=xr(!0);return mk(),oi(V.createJSDocThisTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Upe(vs,da,Sa,Fc){let Qc=xr(!0);return mk(),oi(V.createJSDocEnumTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function aot(vs,da,Sa,Fc){let Qc=E2();vo();let Kg=F2e();mk();let vp=Oe(Sa),m_;if(!Qc||IR(Qc.type)){let zB,$w,rG,lZ=!1;for(;(zB=Ui(()=>KJt(Sa)))&&zB.kind!==346;)if(lZ=!0,zB.kind===345)if($w){let Ose=En(Z.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);Ose&&ug(Ose,rQ(it,tr,0,0,Z.The_tag_was_first_specified_here));break}else $w=zB;else rG=Ft(rG,zB);if(lZ){let Ose=Qc&&Qc.type.kind===189,jpe=V.createJSDocTypeLiteral(rG,Ose);Qc=$w&&$w.typeExpression&&!IR($w.typeExpression.type)?$w.typeExpression:oi(jpe,vs),m_=Qc.end}}m_=m_||vp!==void 0?xe():(Kg??Qc??da).end,vp||(vp=Ce(vs,m_,Sa,Fc));let mR=V.createJSDocTypedefTag(da,Qc,Kg,vp);return oi(mR,vs,m_)}function F2e(vs){let da=c.getTokenStart();if(!md(Ue()))return;let Sa=N1();if(kl(25)){let Fc=F2e(!0),Qc=V.createModuleDeclaration(void 0,Sa,Fc,vs?8:void 0);return oi(Qc,da)}return vs&&(Sa.flags|=4096),Sa}function Kpe(vs){let da=xe(),Sa,Fc;for(;Sa=Ui(()=>vK(4,vs));){if(Sa.kind===346){cn(Sa.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Fc=Ft(Fc,Sa)}return NA(Fc||[],da)}function cot(vs,da){let Sa=Kpe(da),Fc=Ui(()=>{if(hR(60)){let Qc=q(da);if(Qc&&Qc.kind===343)return Qc}});return oi(V.createJSDocSignature(void 0,Sa,Fc),vs)}function lot(vs,da,Sa,Fc){let Qc=F2e();mk();let Kg=Oe(Sa),vp=cot(vs,Sa);Kg||(Kg=Ce(vs,xe(),Sa,Fc));let m_=Kg!==void 0?xe():vp.end;return oi(V.createJSDocCallbackTag(da,vp,Qc,Kg),vs,m_)}function JJt(vs,da,Sa,Fc){mk();let Qc=Oe(Sa),Kg=cot(vs,Sa);Qc||(Qc=Ce(vs,xe(),Sa,Fc));let vp=Qc!==void 0?xe():Kg.end;return oi(V.createJSDocOverloadTag(da,Kg,Qc),vs,vp)}function UJt(vs,da){for(;!Ir(vs)||!Ir(da);)if(!Ir(vs)&&!Ir(da)&&vs.right.escapedText===da.right.escapedText)vs=vs.left,da=da.left;else return!1;return vs.escapedText===da.escapedText}function KJt(vs){return vK(1,vs)}function vK(vs,da,Sa){let Fc=!0,Qc=!1;for(;;)switch($r()){case 60:if(Fc){let Kg=uot(vs,da);return Kg&&(Kg.kind===342||Kg.kind===349)&&Sa&&(Ir(Kg.name)||!UJt(Sa,Kg.name.left))?!1:Kg}Qc=!1;break;case 4:Fc=!0,Qc=!1;break;case 42:Qc&&(Fc=!1),Qc=!0;break;case 80:Fc=!1;break;case 1:return!1}}function uot(vs,da){pe.assert(Ue()===60);let Sa=c.getTokenFullStart();$r();let Fc=N1(),Qc=vo(),Kg;switch(Fc.escapedText){case"type":return vs===1&&Zq(Sa,Fc);case"prop":case"property":Kg=1;break;case"arg":case"argument":case"param":Kg=6;break;case"template":return fo(Sa,Fc,da,Qc);case"this":return oot(Sa,Fc,da,Qc);default:return!1}return vs&Kg?Fq(Sa,Fc,vs,da):!1}function jJt(){let vs=xe(),da=hR(23);da&&mk();let Sa=Pc(!1,!0),Fc=N1(Z.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Qc;if(da&&(mk(),bi(64),Qc=Rg(16777216,AR),bi(24)),!af(Fc))return oi(V.createTypeParameterDeclaration(Sa,Fc,void 0,Qc),vs)}function T9(){let vs=xe(),da=[];do{mk();let Sa=jJt();Sa!==void 0&&da.push(Sa),vo()}while(hR(28));return NA(da,vs)}function fo(vs,da,Sa,Fc){let Qc=Ue()===19?xr():void 0,Kg=T9();return oi(V.createJSDocTemplateTag(da,Qc,Kg,Ce(vs,xe(),Sa,Fc)),vs)}function hR(vs){return Ue()===vs?($r(),!0):!1}function got(){let vs=N1();for(kl(23)&&bi(24);kl(25);){let da=N1();kl(23)&&bi(24),vs=gi(vs,da)}return vs}function N1(vs){if(!md(Ue()))return tp(80,!vs,vs||Z.Identifier_expected);Cn++;let da=c.getTokenStart(),Sa=c.getTokenEnd(),Fc=Ue(),Qc=JI(c.getTokenValue()),Kg=oi(Ie(Qc,Fc),da,Sa);return $r(),Kg}}})(HN=s.JSDocParser||(s.JSDocParser={}))})(z3||(z3={}));var q$r=new WeakSet;function Q2s(s){q$r.has(s)&&pe.fail("Source file has already been incrementally parsed"),q$r.add(s)}var $$r=new WeakSet;function X2s(s){return $$r.has(s)}function YOt(s){$$r.add(s)}var oet;(s=>{function c(re,ge,Ie,_e){if(_e=_e||pe.shouldAssert(2),V(re,ge,Ie,_e),ay(Ie))return re;if(re.statements.length===0)return z3.parseSourceFile(re.fileName,ge,re.languageVersion,void 0,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);Q2s(re),z3.fixupParentReferences(re);let Ee=re.text,Ne=M(re),Te=T(re,Ie);V(re,ge,Te,_e),pe.assert(Te.span.start<=Ie.span.start),pe.assert(Rs(Te.span)===Rs(Ie.span)),pe.assert(Rs(nN(Te))===Rs(nN(Ie)));let Ze=nN(Te).length-Te.span.length;R(re,Te.span.start,Rs(Te.span),Rs(nN(Te)),Ze,Ee,ge,_e);let Pe=z3.parseSourceFile(re.fileName,ge,re.languageVersion,Ne,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);return Pe.commentDirectives=g(re.commentDirectives,Pe.commentDirectives,Te.span.start,Rs(Te.span),Ze,Ee,ge,_e),Pe.impliedNodeFormat=re.impliedNodeFormat,_Ot(re,Pe),Pe}s.updateSourceFile=c;function g(re,ge,Ie,_e,Ee,Ne,Te,Ze){if(!re)return ge;let Pe,Ke=!1;for(let Ye of re){let{range:Tt,type:at}=Ye;if(Tt.end_e){et();let Qe={range:{pos:Tt.pos+Ee,end:Tt.end+Ee},type:at};Pe=Ft(Pe,Qe),Ze&&pe.assert(Ne.substring(Tt.pos,Tt.end)===Te.substring(Qe.range.pos,Qe.range.end))}}return et(),Pe;function et(){Ke||(Ke=!0,Pe?ge&&Pe.push(...ge):Pe=ge)}}function d(re,ge,Ie,_e,Ee,Ne,Te){Ie?Pe(re):Ze(re);return;function Ze(Ke){let et="";if(Te&&h(Ke)&&(et=Ee.substring(Ke.pos,Ke.end)),Q$e(Ke,ge),xB(Ke,Ke.pos+_e,Ke.end+_e),Te&&h(Ke)&&pe.assert(et===Ne.substring(Ke.pos,Ke.end)),Lu(Ke,Ze,Pe),jm(Ke))for(let Ye of Ke.jsDoc)Ze(Ye);S(Ke,Te)}function Pe(Ke){xB(Ke,Ke.pos+_e,Ke.end+_e);for(let et of Ke)Ze(et)}}function h(re){switch(re.kind){case 11:case 9:case 80:return!0}return!1}function _(re,ge,Ie,_e,Ee){pe.assert(re.end>=ge,"Adjusting an element that was entirely before the change range"),pe.assert(re.pos<=Ie,"Adjusting an element that was entirely after the change range"),pe.assert(re.pos<=re.end);let Ne=Math.min(re.pos,_e),Te=re.end>=Ie?re.end+Ee:Math.min(re.end,_e);if(pe.assert(Ne<=Te),re.parent){let Ze=re.parent;pe.assertGreaterThanOrEqual(Ne,Ze.pos),pe.assertLessThanOrEqual(Te,Ze.end)}xB(re,Ne,Te)}function S(re,ge){if(ge){let Ie=re.pos,_e=Ee=>{pe.assert(Ee.pos>=Ie),Ie=Ee.end};if(jm(re))for(let Ee of re.jsDoc)_e(Ee);Lu(re,_e),pe.assert(Ie<=re.end)}}function R(re,ge,Ie,_e,Ee,Ne,Te,Ze){Pe(re);return;function Pe(et){if(pe.assert(et.pos<=et.end),et.pos>Ie){d(et,re,!1,Ee,Ne,Te,Ze);return}let Ye=et.end;if(Ye>=ge){if(YOt(et),Q$e(et,re),_(et,ge,Ie,_e,Ee),Lu(et,Pe,Ke),jm(et))for(let Tt of et.jsDoc)Pe(Tt);S(et,Ze);return}pe.assert(YeIe){d(et,re,!0,Ee,Ne,Te,Ze);return}let Ye=et.end;if(Ye>=ge){YOt(et),_(et,ge,Ie,_e,Ee);for(let Tt of et)Pe(Tt);return}pe.assert(Ye0&&Te<=1;Te++){let Ze=O(re,_e);pe.assert(Ze.pos<=_e);let Pe=Ze.pos;_e=Math.max(0,Pe-1)}let Ee=RA(_e,Rs(ge.span)),Ne=ge.newLength+(ge.span.start-_e);return nS(Ee,Ne)}function O(re,ge){let Ie=re,_e;if(Lu(re,Ne),_e){let Te=Ee(_e);Te.pos>Ie.pos&&(Ie=Te)}return Ie;function Ee(Te){for(;;){let Ze=kbe(Te);if(Ze)Te=Ze;else return Te}}function Ne(Te){if(!af(Te))if(Te.pos<=ge){if(Te.pos>=Ie.pos&&(Ie=Te),gege),!0}}function V(re,ge,Ie,_e){let Ee=re.text;if(Ie&&(pe.assert(Ee.length-Ie.span.length+Ie.newLength===ge.length),_e||pe.shouldAssert(3))){let Ne=Ee.substr(0,Ie.span.start),Te=ge.substr(0,Ie.span.start);pe.assert(Ne===Te);let Ze=Ee.substring(Rs(Ie.span),Ee.length),Pe=ge.substring(Rs(nN(Ie)),ge.length);pe.assert(Ze===Pe)}}function M(re){let ge=re.statements,Ie=0;pe.assert(Ie=Ke.pos&&Te=Ke.pos&&Te{re[re.Value=-1]="Value"})(ee||(ee={}))})(oet||(oet={}));function PC(s){return G9e(s)!==void 0}function G9e(s){let c=pE(s,ede,!1);if(c)return c;if(cA(s,".ts")){let g=dp(s),d=g.lastIndexOf(".d.");if(d>=0)return g.substring(d)}}function J2s(s,c,g,d){if(s){if(s==="import")return 99;if(s==="require")return 1;d(c,g-c,Z.resolution_mode_should_be_either_require_or_import)}}function aet(s,c){let g=[];for(let d of mE(c,0)||E){let h=c.substring(d.pos,d.end);z2s(g,d,h)}s.pragmas=new Map;for(let d of g){if(s.pragmas.has(d.name)){let h=s.pragmas.get(d.name);h instanceof Array?h.push(d.args):s.pragmas.set(d.name,[h,d.args]);continue}s.pragmas.set(d.name,d.args)}}function cet(s,c){s.checkJsDirective=void 0,s.referencedFiles=[],s.typeReferenceDirectives=[],s.libReferenceDirectives=[],s.amdDependencies=[],s.hasNoDefaultLib=!1,s.pragmas.forEach((g,d)=>{switch(d){case"reference":{let h=s.referencedFiles,_=s.typeReferenceDirectives,S=s.libReferenceDirectives;F(cc(g),R=>{let{types:T,lib:O,path:V,["resolution-mode"]:M,preserve:ee}=R.arguments,re=ee==="true"?!0:void 0;if(R.arguments["no-default-lib"]==="true")s.hasNoDefaultLib=!0;else if(T){let ge=J2s(M,T.pos,T.end,c);_.push({pos:T.pos,end:T.end,fileName:T.value,...ge?{resolutionMode:ge}:{},...re?{preserve:re}:{}})}else O?S.push({pos:O.pos,end:O.end,fileName:O.value,...re?{preserve:re}:{}}):V?h.push({pos:V.pos,end:V.end,fileName:V.value,...re?{preserve:re}:{}}):c(R.range.pos,R.range.end-R.range.pos,Z.Invalid_reference_directive_syntax)});break}case"amd-dependency":{s.amdDependencies=lt(cc(g),h=>({name:h.arguments.name,path:h.arguments.path}));break}case"amd-module":{if(g instanceof Array)for(let h of g)s.moduleName&&c(h.range.pos,h.range.end-h.range.pos,Z.An_AMD_module_cannot_have_multiple_name_assignments),s.moduleName=h.arguments.name;else s.moduleName=g.arguments.name;break}case"ts-nocheck":case"ts-check":{F(cc(g),h=>{(!s.checkJsDirective||h.range.pos>s.checkJsDirective.pos)&&(s.checkJsDirective={enabled:d==="ts-check",end:h.range.end,pos:h.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:pe.fail("Unhandled pragma kind")}})}var QOt=new Map;function U2s(s){if(QOt.has(s))return QOt.get(s);let c=new RegExp(`(\\s${s}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return QOt.set(s,c),c}var K2s=/^\/\/\/\s*<(\S+)\s.*?\/>/m,j2s=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function z2s(s,c,g){let d=c.kind===2&&K2s.exec(g);if(d){let _=d[1].toLowerCase(),S=n1[_];if(!S||!(S.kind&1))return;if(S.args){let R={};for(let T of S.args){let V=U2s(T.name).exec(g);if(!V&&!T.optional)return;if(V){let M=V[2]||V[3];if(T.captureSpan){let ee=c.pos+V.index+V[1].length+1;R[T.name]={value:M,pos:ee,end:ee+M.length}}else R[T.name]=M}}s.push({name:_,args:{arguments:R,range:c}})}else s.push({name:_,args:{arguments:{},range:c}});return}let h=c.kind===2&&j2s.exec(g);if(h)return een(s,c,2,h);if(c.kind===3){let _=/@(\S+)(\s+(?:\S.*)?)?$/gm,S;for(;S=_.exec(g);)een(s,c,4,S)}}function een(s,c,g,d){if(!d)return;let h=d[1].toLowerCase(),_=n1[h];if(!_||!(_.kind&g))return;let S=d[2],R=q2s(_,S);R!=="fail"&&s.push({name:h,args:{arguments:R,range:c}})}function q2s(s,c){if(!c)return{};if(!s.args)return{};let g=c.trim().split(/\s+/),d={};for(let h=0;h[""+c,s])),ren=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["es2021","lib.es2021.d.ts"],["es2022","lib.es2022.d.ts"],["es2023","lib.es2023.d.ts"],["es2024","lib.es2024.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["dom.asynciterable","lib.dom.asynciterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["webworker.asynciterable","lib.webworker.asynciterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2016.intl","lib.es2016.intl.d.ts"],["es2017.arraybuffer","lib.es2017.arraybuffer.d.ts"],["es2017.date","lib.es2017.date.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2019.intl","lib.es2019.intl.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.date","lib.es2020.date.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["es2020.number","lib.es2020.number.d.ts"],["es2021.promise","lib.es2021.promise.d.ts"],["es2021.string","lib.es2021.string.d.ts"],["es2021.weakref","lib.es2021.weakref.d.ts"],["es2021.intl","lib.es2021.intl.d.ts"],["es2022.array","lib.es2022.array.d.ts"],["es2022.error","lib.es2022.error.d.ts"],["es2022.intl","lib.es2022.intl.d.ts"],["es2022.object","lib.es2022.object.d.ts"],["es2022.string","lib.es2022.string.d.ts"],["es2022.regexp","lib.es2022.regexp.d.ts"],["es2023.array","lib.es2023.array.d.ts"],["es2023.collection","lib.es2023.collection.d.ts"],["es2023.intl","lib.es2023.intl.d.ts"],["es2024.arraybuffer","lib.es2024.arraybuffer.d.ts"],["es2024.collection","lib.es2024.collection.d.ts"],["es2024.object","lib.es2024.object.d.ts"],["es2024.promise","lib.es2024.promise.d.ts"],["es2024.regexp","lib.es2024.regexp.d.ts"],["es2024.sharedmemory","lib.es2024.sharedmemory.d.ts"],["es2024.string","lib.es2024.string.d.ts"],["esnext.array","lib.es2023.array.d.ts"],["esnext.collection","lib.esnext.collection.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.disposable","lib.esnext.disposable.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.es2022.string.d.ts"],["esnext.promise","lib.es2024.promise.d.ts"],["esnext.weakref","lib.es2021.weakref.d.ts"],["esnext.decorators","lib.esnext.decorators.d.ts"],["esnext.object","lib.es2024.object.d.ts"],["esnext.array","lib.esnext.array.d.ts"],["esnext.regexp","lib.es2024.regexp.d.ts"],["esnext.string","lib.es2024.string.d.ts"],["esnext.iterator","lib.esnext.iterator.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.float16","lib.esnext.float16.d.ts"],["esnext.error","lib.esnext.error.d.ts"],["esnext.sharedmemory","lib.esnext.sharedmemory.d.ts"],["decorators","lib.decorators.d.ts"],["decorators.legacy","lib.decorators.legacy.d.ts"]],F9e=ren.map(s=>s[0]),uet=new Map(ren),Pz=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_the_TypeScript_watch_mode_works,defaultValueDescription:4},{name:"watchDirectory",type:new Map(Object.entries({usefsevents:0,fixedpollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,defaultValueDescription:0},{name:"fallbackPolling",type:new Map(Object.entries({fixedinterval:0,priorityinterval:1,dynamicpriority:2,fixedchunksize:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:Z.Watch_and_Build_Modes,description:Z.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,defaultValueDescription:!1},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:APt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:APt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_files_from_the_watch_mode_s_processing}],Z9e=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:Z.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Output_Formatting,description:Z.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Output_Formatting,description:Z.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:Z.FILE_OR_DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:Z.Projects,description:Z.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Compiler_Diagnostics,description:Z.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Watch_and_Build_Modes,description:Z.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:Z.Platform_specific}],get={name:"target",shortName:"t",type:new Map(Object.entries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,es2021:8,es2022:9,es2023:10,es2024:11,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,deprecatedKeys:new Set(["es3"]),paramType:Z.VERSION,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},JOt={name:"module",shortName:"m",type:new Map(Object.entries({none:0,commonjs:1,amd:2,system:4,umd:3,es6:5,es2015:5,es2020:6,es2022:7,esnext:99,node16:100,node18:101,node20:102,nodenext:199,preserve:200})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_what_module_code_is_generated,defaultValueDescription:void 0},nen=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:Z.Command_line_Options,paramType:Z.FILE_OR_DIRECTORY,description:Z.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},get,JOt,{name:"lib",type:"list",element:{name:"lib",type:uet,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",allowJsFlag:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files,defaultValueDescription:!1},{name:"checkJs",type:"boolean",affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:ten,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.FILE,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.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,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.LOCATION,category:Z.Modules,description:Z.Specify_the_root_folder_within_your_source_files,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:Z.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:Z.FILE,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:Z.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Disable_emitting_comments},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:Z.Emit,description:Z.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,defaultValueDescription:!1},{name:"importsNotUsedAsValues",type:new Map(Object.entries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:Z.Interop_Constraints,description:Z.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,transpileOptionValue:!0,defaultValueDescription:!1},{name:"verbatimModuleSyntax",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.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,defaultValueDescription:!1},{name:"isolatedDeclarations",type:"boolean",category:Z.Interop_Constraints,description:Z.Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"erasableSyntaxOnly",type:"boolean",category:Z.Interop_Constraints,description:Z.Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"libReplacement",type:"boolean",affectsProgramStructure:!0,category:Z.Language_and_Environment,description:Z.Enable_lib_replacement,defaultValueDescription:!0},{name:"strict",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Type_Checking,description:Z.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBuiltinIteratorReturn",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Ensure_use_strict_is_always_emitted,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,defaultValueDescription:!1},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,defaultValueDescription:!1},{name:"noPropertyAccessFromIndexSignature",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!1,category:Z.Type_Checking,description:Z.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,defaultValueDescription:!1},{name:"moduleResolution",type:new Map(Object.entries({node10:2,node:2,classic:1,node16:3,nodenext:99,bundler:100})),deprecatedKeys:new Set(["node"]),affectsSourceFile:!0,affectsModuleResolution:!0,paramType:Z.STRATEGY,category:Z.Modules,description:Z.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:Z.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:Z.Modules,description:Z.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:Z.Modules,description:Z.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:Z.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Interop_Constraints,description:Z.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:Z.Interop_Constraints,description:Z.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,defaultValueDescription:!1},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:Z.Modules,description:Z.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,defaultValueDescription:!1,transpileOptionValue:void 0},{name:"rewriteRelativeImportExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files,defaultValueDescription:!1},{name:"resolvePackageJsonExports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:Z.Modules,description:Z.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"noUncheckedSideEffectImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Check_side_effect_imports,defaultValueDescription:!1},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,defaultValueDescription:"`React.createElement`"},{name:"jsxFragmentFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,defaultValueDescription:"React.Fragment"},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSourceFile:!0,category:Z.Language_and_Environment,description:Z.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,defaultValueDescription:"react"},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:Z.Modules,description:Z.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,defaultValueDescription:!1},{name:"out",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!1,category:Z.Backwards_Compatibility,paramType:Z.FILE,transpileOptionValue:void 0,description:Z.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:Z.Backwards_Compatibility,description:Z.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,defaultValueDescription:"utf8"},{name:"emitBOM",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,defaultValueDescription:!1},{name:"newLine",type:new Map(Object.entries({crlf:0,lf:1})),affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.NEWLINE,category:Z.Emit,description:Z.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Output_Formatting,description:Z.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:Z.Language_and_Environment,affectsProgramStructure:!0,description:Z.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,transpileOptionValue:!0,defaultValueDescription:!1},{name:"stripInternal",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:Z.Editor_Support,description:Z.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,defaultValueDescription:!1},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Emit,transpileOptionValue:void 0,description:Z.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:Z.Interop_Constraints,description:Z.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:Z.JavaScript_Support,description:Z.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,defaultValueDescription:0},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:Z.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:Z.Backwards_Compatibility,description:Z.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,defaultValueDescription:!1},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:Z.Specify_a_list_of_language_service_plugins_to_include,category:Z.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:Z.Control_what_method_is_used_to_detect_module_format_JS_files,category:Z.Language_and_Environment,defaultValueDescription:Z.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules},{name:"ignoreDeprecations",type:"string",defaultValueDescription:void 0}],Qw=[...Z9e,...nen],UOt=Qw.filter(s=>!!s.affectsSemanticDiagnostics),KOt=Qw.filter(s=>!!s.affectsEmit),jOt=Qw.filter(s=>!!s.affectsDeclarationPath),Aet=Qw.filter(s=>!!s.affectsModuleResolution),det=Qw.filter(s=>!!s.affectsSourceFile||!!s.affectsBindDiagnostics),zOt=Qw.filter(s=>!!s.affectsProgramStructure),qOt=Qw.filter(s=>Da(s,"transpileOptionValue")),$2s=Qw.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),eSs=Pz.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),$Ot=Qw.filter(tSs);function tSs(s){return!Xs(s.type)}var LU={name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},pet=[LU,{name:"verbose",shortName:"v",category:Z.Command_line_Options,description:Z.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:Z.Command_line_Options,description:Z.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:Z.Command_line_Options,description:Z.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:Z.Command_line_Options,description:Z.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1},{name:"stopBuildOnErrors",category:Z.Command_line_Options,description:Z.Skip_building_downstream_projects_on_error_in_upstream_project,type:"boolean",defaultValueDescription:!1}],PEe=[...Z9e,...pet],L9e=[{name:"enable",type:"boolean",defaultValueDescription:!1},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean",defaultValueDescription:!1}];function V9e(s){let c=new Map,g=new Map;return F(s,d=>{c.set(d.name.toLowerCase(),d),d.shortName&&g.set(d.shortName,d.name)}),{optionsNameMap:c,shortOptionNames:g}}var ien;function Wie(){return ien||(ien=V9e(Qw))}var rSs={diagnostic:Z.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:uen},sen={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function ePt(s){return oen(s,kf)}function oen(s,c){let g=Do(s.type.keys()),d=(s.deprecatedKeys?g.filter(h=>!s.deprecatedKeys.has(h)):g).map(h=>`'${h}'`).join(", ");return c(Z.Argument_for_0_option_must_be_Colon_1,`--${s.name}`,d)}function W9e(s,c,g){return Yen(s,(c??"").trim(),g)}function tPt(s,c="",g){if(c=c.trim(),Ac(c,"-"))return;if(s.type==="listOrElement"&&!c.includes(","))return Mz(s,c,g);if(c==="")return[];let d=c.split(",");switch(s.element.type){case"number":return Xt(d,h=>Mz(s.element,parseInt(h),g));case"string":return Xt(d,h=>Mz(s.element,h||"",g));case"boolean":case"object":return pe.fail(`List of ${s.element.type} is not yet supported.`);default:return Xt(d,h=>W9e(s.element,h,g))}}function aen(s){return s.name}function rPt(s,c,g,d,h){var _;let S=(_=c.alternateMode)==null?void 0:_.getOptionsNameMap().optionsNameMap.get(s.toLowerCase());if(S)return $3(h,d,S!==LU?c.alternateMode.diagnostic:Z.Option_build_must_be_the_first_command_line_argument,s);let R=Dr(s,c.optionDeclarations,aen);return R?$3(h,d,c.unknownDidYouMeanDiagnostic,g||s,R.name):$3(h,d,c.unknownOptionDiagnostic,g||s)}function fet(s,c,g){let d={},h,_=[],S=[];return R(c),{options:d,watchOptions:h,fileNames:_,errors:S};function R(O){let V=0;for(;VEd.readFile(re)));if(!Xs(V)){S.push(V);return}let M=[],ee=0;for(;;){for(;ee=V.length)break;let re=ee;if(V.charCodeAt(re)===34){for(ee++;ee32;)ee++;M.push(V.substring(re,ee))}}R(M)}}function cen(s,c,g,d,h,_){if(d.isTSConfigOnly){let S=s[c];S==="null"?(h[d.name]=void 0,c++):d.type==="boolean"?S==="false"?(h[d.name]=Mz(d,!1,_),c++):(S==="true"&&c++,_.push(kf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,d.name))):(_.push(kf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,d.name)),S&&!Ac(S,"-")&&c++)}else if(!s[c]&&d.type!=="boolean"&&_.push(kf(g.optionTypeMismatchDiagnostic,d.name,_et(d))),s[c]!=="null")switch(d.type){case"number":h[d.name]=Mz(d,parseInt(s[c]),_),c++;break;case"boolean":let S=s[c];h[d.name]=Mz(d,S!=="false",_),(S==="false"||S==="true")&&c++;break;case"string":h[d.name]=Mz(d,s[c]||"",_),c++;break;case"list":let R=tPt(d,s[c],_);h[d.name]=R||[],R&&c++;break;case"listOrElement":pe.fail("listOrElement not supported here");break;default:h[d.name]=W9e(d,s[c],_),c++;break}else h[d.name]=void 0,c++;return c}var O9e={alternateMode:rSs,getOptionsNameMap:Wie,optionDeclarations:Qw,unknownOptionDiagnostic:Z.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Compiler_option_0_expects_an_argument};function nPt(s,c){return fet(O9e,s,c)}function Iet(s,c){return iPt(Wie,s,c)}function iPt(s,c,g=!1){c=c.toLowerCase();let{optionsNameMap:d,shortOptionNames:h}=s();if(g){let _=h.get(c);_!==void 0&&(c=_)}return d.get(c)}var len;function uen(){return len||(len=V9e(PEe))}var nSs={diagnostic:Z.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:Wie},iSs={alternateMode:nSs,getOptionsNameMap:uen,optionDeclarations:PEe,unknownOptionDiagnostic:Z.Unknown_build_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Build_option_0_requires_a_value_of_type_1};function sPt(s){let{options:c,watchOptions:g,fileNames:d,errors:h}=fet(iSs,s),_=c;return d.length===0&&d.push("."),_.clean&&_.force&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"clean","force")),_.clean&&_.verbose&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"clean","verbose")),_.clean&&_.watch&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"clean","watch")),_.watch&&_.dry&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:_,watchOptions:g,projects:d,errors:h}}function Vb(s,...c){return Ma(kf(s,...c).messageText,Xs)}function MEe(s,c,g,d,h,_){let S=kde(s,O=>g.readFile(O));if(!Xs(S)){g.onUnRecoverableConfigFileDiagnostic(S);return}let R=WEe(s,S),T=g.getCurrentDirectory();return R.path=Pu(s,T,bd(g.useCaseSensitiveFileNames)),R.resolvedPath=R.path,R.originalFileName=R.fileName,QEe(R,g,Xc(Mo(s),T),c,Xc(s,T),void 0,_,d,h)}function HEe(s,c){let g=kde(s,c);return Xs(g)?het(s,g):{config:{},error:g}}function het(s,c){let g=WEe(s,c);return{config:Een(g,g.parseDiagnostics,void 0),error:g.parseDiagnostics.length?g.parseDiagnostics[0]:void 0}}function oPt(s,c){let g=kde(s,c);return Xs(g)?WEe(s,g):{fileName:s,parseDiagnostics:[g]}}function kde(s,c){let g;try{g=c(s)}catch(d){return kf(Z.Cannot_read_file_0_Colon_1,s,d.message)}return g===void 0?kf(Z.Cannot_read_file_0,s):g}function met(s){return Ru(s,aen)}var gen={optionDeclarations:L9e,unknownOptionDiagnostic:Z.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_type_acquisition_option_0_Did_you_mean_1},Aen;function den(){return Aen||(Aen=V9e(Pz))}var Cet={getOptionsNameMap:den,optionDeclarations:Pz,unknownOptionDiagnostic:Z.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Watch_option_0_requires_a_value_of_type_1},pen;function fen(){return pen||(pen=met(Qw))}var Ien;function hen(){return Ien||(Ien=met(Pz))}var men;function Cen(){return men||(men=met(L9e))}var P9e={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:Z.File_Management,disallowNullOrUndefined:!0},_en={name:"compilerOptions",type:"object",elementOptions:fen(),extraKeyDiagnostics:O9e},yen={name:"watchOptions",type:"object",elementOptions:hen(),extraKeyDiagnostics:Cet},ben={name:"typeAcquisition",type:"object",elementOptions:Cen(),extraKeyDiagnostics:gen},aPt;function sSs(){return aPt===void 0&&(aPt={name:void 0,type:"object",elementOptions:met([_en,yen,ben,P9e,{name:"references",type:"list",element:{name:"references",type:"object"},category:Z.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:Z.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:Z.File_Management,defaultValueDescription:Z.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:Z.File_Management,defaultValueDescription:Z.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},XOt])}),aPt}function Een(s,c,g){var d;let h=(d=s.statements[0])==null?void 0:d.expression;if(h&&h.kind!==211){if(c.push(EE(s,h,Z.The_root_value_of_a_0_file_must_be_an_object,dp(s.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),YI(h)){let _=de(h.elements,ag);if(_)return YEe(s,_,c,!0,g)}return{}}return YEe(s,h,c,!0,g)}function cPt(s,c){var g;return YEe(s,(g=s.statements[0])==null?void 0:g.expression,c,!0,void 0)}function YEe(s,c,g,d,h){if(!c)return d?{}:void 0;return R(c,h?.rootOptions);function _(O,V){var M;let ee=d?{}:void 0;for(let re of O.properties){if(re.kind!==304){g.push(EE(s,re,Z.Property_assignment_expected));continue}re.questionToken&&g.push(EE(s,re.questionToken,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),T(re.name)||g.push(EE(s,re.name,Z.String_literal_with_double_quotes_expected));let ge=HY(re.name)?void 0:vW(re.name),Ie=ge&&Bc(ge),_e=Ie?(M=V?.elementOptions)==null?void 0:M.get(Ie):void 0,Ee=R(re.initializer,_e);typeof Ie<"u"&&(d&&(ee[Ie]=Ee),h?.onPropertySet(Ie,Ee,re,V,_e))}return ee}function S(O,V){if(!d){O.forEach(M=>R(M,V));return}return Le(O.map(M=>R(M,V)),M=>M!==void 0)}function R(O,V){switch(O.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return T(O)||g.push(EE(s,O,Z.String_literal_with_double_quotes_expected)),O.text;case 9:return Number(O.text);case 225:if(O.operator!==41||O.operand.kind!==9)break;return-Number(O.operand.text);case 211:return _(O,V);case 210:return S(O.elements,V&&V.element)}V?g.push(EE(s,O,Z.Compiler_option_0_requires_a_value_of_type_1,V.name,_et(V))):g.push(EE(s,O,Z.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function T(O){return Lg(O)&&Cne(O,s)}}function _et(s){return s.type==="listOrElement"?`${_et(s.element)} or Array`:s.type==="list"?"Array":Xs(s.type)?s.type:"string"}function Sen(s,c){if(s){if(XEe(c))return!s.disallowNullOrUndefined;if(s.type==="list")return Ki(c);if(s.type==="listOrElement")return Ki(c)||Sen(s.element,c);let g=Xs(s.type)?s.type:"string";return typeof c===g}return!1}function yet(s,c,g){var d,h,_;let S=bd(g.useCaseSensitiveFileNames),R=lt(Le(s.fileNames,(h=(d=s.options.configFile)==null?void 0:d.configFileSpecs)!=null&&h.validatedIncludeSpecs?cSs(c,s.options.configFile.configFileSpecs.validatedIncludeSpecs,s.options.configFile.configFileSpecs.validatedExcludeSpecs,g):Nf),ge=>a1(Xc(c,g.getCurrentDirectory()),Xc(ge,g.getCurrentDirectory()),S)),T={configFilePath:Xc(c,g.getCurrentDirectory()),useCaseSensitiveFileNames:g.useCaseSensitiveFileNames},O=bet(s.options,T),V=s.watchOptions&&lSs(s.watchOptions),M={compilerOptions:{...M9e(O),showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0},watchOptions:V&&M9e(V),references:lt(s.projectReferences,ge=>({...ge,path:ge.originalPath?ge.originalPath:"",originalPath:void 0})),files:B(R)?R:void 0,...(_=s.options.configFile)!=null&&_.configFileSpecs?{include:aSs(s.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:s.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:s.compileOnSave?!0:void 0},ee=new Set(O.keys()),re={};for(let ge in az)if(!ee.has(ge)&&oSs(ge,ee)){let Ie=az[ge].computeValue(s.options),_e=az[ge].computeValue({});Ie!==_e&&(re[ge]=az[ge].computeValue(s.options))}return Pt(M.compilerOptions,M9e(bet(re,T))),M}function oSs(s,c){let g=new Set;return d(s);function d(h){var _;return Vy(g,h)?zt((_=az[h])==null?void 0:_.dependencies,S=>c.has(S)||d(S)):!1}}function M9e(s){return Object.fromEntries(s)}function aSs(s){if(B(s)){if(B(s)!==1)return s;if(s[0]!==Ren)return s}}function cSs(s,c,g,d){if(!c)return Nf;let h=KAe(s,g,c,d.useCaseSensitiveFileNames,d.getCurrentDirectory()),_=h.excludePattern&&rk(h.excludePattern,d.useCaseSensitiveFileNames),S=h.includeFilePattern&&rk(h.includeFilePattern,d.useCaseSensitiveFileNames);return S?_?R=>!(S.test(R)&&!_.test(R)):R=>!S.test(R):_?R=>_.test(R):Nf}function ven(s){switch(s.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return ven(s.element);default:return s.type}}function H9e(s,c){return Fh(c,(g,d)=>{if(g===s)return d})}function bet(s,c){return Ben(s,Wie(),c)}function lSs(s){return Ben(s,den())}function Ben(s,{optionsNameMap:c},g){let d=new Map,h=g&&bd(g.useCaseSensitiveFileNames);for(let _ in s)if(Da(s,_)){if(c.has(_)&&(c.get(_).category===Z.Command_line_Options||c.get(_).category===Z.Output_Formatting))continue;let S=s[_],R=c.get(_.toLowerCase());if(R){pe.assert(R.type!=="listOrElement");let T=ven(R);T?R.type==="list"?d.set(_,S.map(O=>H9e(O,T))):d.set(_,H9e(S,T)):g&&R.isFilePath?d.set(_,a1(g.configFilePath,Xc(S,Mo(g.configFilePath)),h)):g&&R.type==="list"&&R.element.isFilePath?d.set(_,S.map(O=>a1(g.configFilePath,Xc(O,Mo(g.configFilePath)),h))):d.set(_,S)}}return d}function lPt(s,c){let g=" ",d=[],h=Object.keys(s).filter(V=>V!=="init"&&V!=="help"&&V!=="watch");if(d.push("{"),d.push(`${g}// ${Bu(Z.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)}`),d.push(`${g}"compilerOptions": {`),S(Z.File_Layout),R("rootDir","./src","optional"),R("outDir","./dist","optional"),_(),S(Z.Environment_Settings),S(Z.See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule),R("module",199),R("target",99),R("types",[]),s.lib&&R("lib",s.lib),S(Z.For_nodejs_Colon),d.push(`${g}${g}// "lib": ["esnext"],`),d.push(`${g}${g}// "types": ["node"],`),S(Z.and_npm_install_D_types_Slashnode),_(),S(Z.Other_Outputs),R("sourceMap",!0),R("declaration",!0),R("declarationMap",!0),_(),S(Z.Stricter_Typechecking_Options),R("noUncheckedIndexedAccess",!0),R("exactOptionalPropertyTypes",!0),_(),S(Z.Style_Options),R("noImplicitReturns",!0,"optional"),R("noImplicitOverride",!0,"optional"),R("noUnusedLocals",!0,"optional"),R("noUnusedParameters",!0,"optional"),R("noFallthroughCasesInSwitch",!0,"optional"),R("noPropertyAccessFromIndexSignature",!0,"optional"),_(),S(Z.Recommended_Options),R("strict",!0),R("jsx",4),R("verbatimModuleSyntax",!0),R("isolatedModules",!0),R("noUncheckedSideEffectImports",!0),R("moduleDetection",3),R("skipLibCheck",!0),h.length>0)for(_();h.length>0;)R(h[0],s[h[0]]);function _(){d.push("")}function S(V){d.push(`${g}${g}// ${Bu(V)}`)}function R(V,M,ee="never"){let re=h.indexOf(V);re>=0&&h.splice(re,1);let ge;ee==="always"?ge=!0:ee==="never"?ge=!1:ge=!Da(s,V);let Ie=s[V]??M;ge?d.push(`${g}${g}// "${V}": ${T(V,Ie)},`):d.push(`${g}${g}"${V}": ${T(V,Ie)},`)}function T(V,M){let ee=Qw.filter(ge=>ge.name===V)[0];ee||pe.fail(`No option named ${V}?`);let re=ee.type instanceof Map?ee.type:void 0;if(Ki(M)){let ge="element"in ee&&ee.element.type instanceof Map?ee.element.type:void 0;return`[${M.map(Ie=>O(Ie,ge)).join(", ")}]`}else return O(M,re)}function O(V,M){return M&&(V=H9e(V,M)??pe.fail(`No matching value of ${V}`)),JSON.stringify(V)}return d.push(`${g}}`),d.push("}"),d.push(""),d.join(c)}function Y9e(s,c){let g={},d=Wie().optionsNameMap;for(let h in s)Da(s,h)&&(g[h]=uSs(d.get(h.toLowerCase()),s[h],c));return g.configFilePath&&(g.configFilePath=c(g.configFilePath)),g}function uSs(s,c,g){if(s&&!XEe(c)){if(s.type==="list"){let d=c;if(s.element.isFilePath&&d.length)return d.map(g)}else if(s.isFilePath)return g(c);pe.assert(s.type!=="listOrElement")}return c}function wen(s,c,g,d,h,_,S,R,T){return Nen(s,void 0,c,g,d,T,h,_,S,R)}function QEe(s,c,g,d,h,_,S,R,T){var O,V;(O=ki)==null||O.push(ki.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:s.fileName});let M=Nen(void 0,s,c,g,d,T,h,_,S,R);return(V=ki)==null||V.pop(),M}function Eet(s,c){c&&Object.defineProperty(s,"configFile",{enumerable:!1,writable:!1,value:c})}function XEe(s){return s==null}function Ten(s,c){return Mo(Xc(s,c))}var Ren="**/*";function Nen(s,c,g,d,h={},_,S,R=[],T=[],O){pe.assert(s===void 0&&c!==void 0||s!==void 0&&c===void 0);let V=[],M=Zen(s,c,g,d,S,R,V,O),{raw:ee}=M,re=Den(HA(h,M.options||{}),$2s,d),ge=Q9e(_&&M.watchOptions?HA(_,M.watchOptions):M.watchOptions||_,d);re.configFilePath=S&&xp(S);let Ie=su(S?Ten(S,d):d),_e=Ee();return c&&(c.configFileSpecs=_e),Eet(re,c),{options:re,watchOptions:ge,fileNames:Ne(Ie),projectReferences:Te(Ie),typeAcquisition:M.typeAcquisition||wet(),raw:ee,errors:V,wildcardDirectories:bSs(_e,Ie,g.useCaseSensitiveFileNames),compileOnSave:!!ee.compileOnSave};function Ee(){let Ye=Ke("references",Gt=>typeof Gt=="object","object"),Tt=Ze(Pe("files"));if(Tt){let Gt=Ye==="no-prop"||Ki(Ye)&&Ye.length===0,it=Da(ee,"extends");if(Tt.length===0&&Gt&&!it)if(c){let kt=S||"tsconfig.json",tr=Z.The_files_list_in_config_file_0_is_empty,ur=gne(c,"files",dt=>dt.initializer),Gr=$3(c,ur,tr,kt);V.push(Gr)}else et(Z.The_files_list_in_config_file_0_is_empty,S||"tsconfig.json")}let at=Ze(Pe("include")),Qe=Pe("exclude"),Ct=!1,mt=Ze(Qe);if(Qe==="no-prop"){let Gt=re.outDir,it=re.declarationDir;(Gt||it)&&(mt=Le([Gt,it],kt=>!!kt))}Tt===void 0&&at===void 0&&(at=[Ren],Ct=!0);let yt,Rt,Lt,je;at&&(yt=Jen(at,V,!0,c,"include"),Lt=X9e(yt,Ie)||yt),mt&&(Rt=Jen(mt,V,!1,c,"exclude"),je=X9e(Rt,Ie)||Rt);let Wt=Le(Tt,Xs),_r=X9e(Wt,Ie)||Wt;return{filesSpecs:Tt,includeSpecs:at,excludeSpecs:mt,validatedFilesSpec:_r,validatedIncludeSpecs:Lt,validatedExcludeSpecs:je,validatedFilesSpecBeforeSubstitution:Wt,validatedIncludeSpecsBeforeSubstitution:yt,validatedExcludeSpecsBeforeSubstitution:Rt,isDefaultIncludeSpec:Ct}}function Ne(Ye){let Tt=xde(_e,Ye,re,g,T);return Fen(Tt,JEe(ee),R)&&V.push(Gen(_e,S)),Tt}function Te(Ye){let Tt,at=Ke("references",Qe=>typeof Qe=="object","object");if(Ki(at))for(let Qe of at)typeof Qe.path!="string"?et(Z.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(Tt||(Tt=[])).push({path:Xc(Qe.path,Ye),originalPath:Qe.path,prepend:Qe.prepend,circular:Qe.circular});return Tt}function Ze(Ye){return Ki(Ye)?Ye:void 0}function Pe(Ye){return Ke(Ye,Xs,"string")}function Ke(Ye,Tt,at){if(Da(ee,Ye)&&!XEe(ee[Ye]))if(Ki(ee[Ye])){let Qe=ee[Ye];return!c&&!ue(Qe,Tt)&&V.push(kf(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,at)),Qe}else return et(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,"Array"),"not-array";return"no-prop"}function et(Ye,...Tt){c||V.push(kf(Ye,...Tt))}}function Q9e(s,c){return Den(s,eSs,c)}function Den(s,c,g){if(!s)return s;let d;for(let _ of c)if(s[_.name]!==void 0){let S=s[_.name];switch(_.type){case"string":pe.assert(_.isFilePath),vet(S)&&h(_,xen(S,g));break;case"list":pe.assert(_.element.isFilePath);let R=X9e(S,g);R&&h(_,R);break;case"object":pe.assert(_.name==="paths");let T=gSs(S,g);T&&h(_,T);break;default:pe.fail("option type not supported")}}return d||s;function h(_,S){(d??(d=Pt({},s)))[_.name]=S}}var ken="${configDir}";function vet(s){return Xs(s)&&Ac(s,ken,!0)}function xen(s,c){return Xc(s.replace(ken,"./"),c)}function X9e(s,c){if(!s)return s;let g;return s.forEach((d,h)=>{vet(d)&&((g??(g=s.slice()))[h]=xen(d,c))}),g}function gSs(s,c){let g;return yg(s).forEach(h=>{if(!Ki(s[h]))return;let _=X9e(s[h],c);_&&((g??(g=Pt({},s)))[h]=_)}),g}function ASs(s){return s.code===Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function Gen({includeSpecs:s,excludeSpecs:c},g){return kf(Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,g||"tsconfig.json",JSON.stringify(s||[]),JSON.stringify(c||[]))}function Fen(s,c,g){return s.length===0&&c&&(!g||g.length===0)}function Bet(s){return!s.fileNames.length&&Da(s.raw,"references")}function JEe(s){return!Da(s,"files")&&!Da(s,"references")}function J9e(s,c,g,d,h){let _=d.length;return Fen(s,h)?d.push(Gen(g,c)):Je(d,S=>!ASs(S)),_!==d.length}function dSs(s){return!!s.options}function Zen(s,c,g,d,h,_,S,R){var T;d=xp(d);let O=Xc(h||"",d);if(_.includes(O))return S.push(kf(Z.Circularity_detected_while_resolving_configuration_Colon_0,[..._,O].join(" -> "))),{raw:s||cPt(c,S)};let V=s?pSs(s,g,d,h,S):fSs(c,g,d,h,S);if((T=V.options)!=null&&T.paths&&(V.options.pathsBasePath=d),V.extendedConfigPath){_=_.concat([O]);let re={options:{}};Xs(V.extendedConfigPath)?M(re,V.extendedConfigPath):V.extendedConfigPath.forEach(ge=>M(re,ge)),re.include&&(V.raw.include=re.include),re.exclude&&(V.raw.exclude=re.exclude),re.files&&(V.raw.files=re.files),V.raw.compileOnSave===void 0&&re.compileOnSave&&(V.raw.compileOnSave=re.compileOnSave),c&&re.extendedSourceFiles&&(c.extendedSourceFiles=Do(re.extendedSourceFiles.keys())),V.options=Pt(re.options,V.options),V.watchOptions=V.watchOptions&&re.watchOptions?ee(re,V.watchOptions):V.watchOptions||re.watchOptions}return V;function M(re,ge){let Ie=ISs(c,ge,g,_,S,R,re);if(Ie&&dSs(Ie)){let _e=Ie.raw,Ee,Ne=Te=>{V.raw[Te]||_e[Te]&&(re[Te]=lt(_e[Te],Ze=>vet(Ze)||Up(Ze)?Ze:Ro(Ee||(Ee=s2(Mo(ge),d,bd(g.useCaseSensitiveFileNames))),Ze)))};Ne("include"),Ne("exclude"),Ne("files"),_e.compileOnSave!==void 0&&(re.compileOnSave=_e.compileOnSave),Pt(re.options,Ie.options),re.watchOptions=re.watchOptions&&Ie.watchOptions?ee(re,Ie.watchOptions):re.watchOptions||Ie.watchOptions}}function ee(re,ge){return re.watchOptionsCopied?Pt(re.watchOptions,ge):(re.watchOptionsCopied=!0,Pt({},re.watchOptions,ge))}}function pSs(s,c,g,d,h){Da(s,"excludes")&&h.push(kf(Z.Unknown_option_excludes_Did_you_mean_exclude));let _=Men(s.compilerOptions,g,h,d),S=Hen(s.typeAcquisition,g,h,d),R=mSs(s.watchOptions,g,h);s.compileOnSave=hSs(s,g,h);let T=s.extends||s.extends===""?Len(s.extends,c,g,d,h):void 0;return{raw:s,options:_,watchOptions:R,typeAcquisition:S,extendedConfigPath:T}}function Len(s,c,g,d,h,_,S,R){let T,O=d?Ten(d,g):g;if(Xs(s))T=Ven(s,c,O,h,S,R);else if(Ki(s)){T=[];for(let V=0;VNe.name===re)&&(O=Ft(O,Ie.name))))}}function Ven(s,c,g,d,h,_){if(s=xp(s),Up(s)||Ac(s,"./")||Ac(s,"../")){let R=Xc(s,g);if(!c.fileExists(R)&&!di(R,".json")&&(R=`${R}.json`,!c.fileExists(R))){d.push($3(_,h,Z.File_0_not_found,s));return}return R}let S=TPt(s,Ro(g,"tsconfig.json"),c);if(S.resolvedModule)return S.resolvedModule.resolvedFileName;s===""?d.push($3(_,h,Z.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):d.push($3(_,h,Z.File_0_not_found,s))}function ISs(s,c,g,d,h,_,S){let R=g.useCaseSensitiveFileNames?c:Qm(c),T,O,V;if(_&&(T=_.get(R))?{extendedResult:O,extendedConfig:V}=T:(O=oPt(c,M=>g.readFile(M)),O.parseDiagnostics.length||(V=Zen(void 0,O,g,Mo(c),dp(c),d,h,_)),_&&_.set(R,{extendedResult:O,extendedConfig:V})),s&&((S.extendedSourceFiles??(S.extendedSourceFiles=new Set)).add(O.fileName),O.extendedSourceFiles))for(let M of O.extendedSourceFiles)S.extendedSourceFiles.add(M);if(O.parseDiagnostics.length){h.push(...O.parseDiagnostics);return}return V}function hSs(s,c,g){if(!Da(s,XOt.name))return!1;let d=VU(XOt,s.compileOnSave,c,g);return typeof d=="boolean"&&d}function Wen(s,c,g){let d=[];return{options:Men(s,c,d,g),errors:d}}function Oen(s,c,g){let d=[];return{options:Hen(s,c,d,g),errors:d}}function Pen(s){return s&&dp(s)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function Men(s,c,g,d){let h=Pen(d);return uPt(fen(),s,c,h,O9e,g),d&&(h.configFilePath=xp(d)),h}function wet(s){return{enable:!!s&&dp(s)==="jsconfig.json",include:[],exclude:[]}}function Hen(s,c,g,d){let h=wet(d);return uPt(Cen(),s,c,h,gen,g),h}function mSs(s,c,g){return uPt(hen(),s,c,void 0,Cet,g)}function uPt(s,c,g,d,h,_){if(c){for(let S in c){let R=s.get(S);R?(d||(d={}))[R.name]=VU(R,c[S],g,_):_.push(rPt(S,h))}return d}}function $3(s,c,g,...d){return s&&c?EE(s,c,g,...d):kf(g,...d)}function VU(s,c,g,d,h,_,S){if(s.isCommandLineOnly){d.push($3(S,h?.name,Z.Option_0_can_only_be_specified_on_command_line,s.name));return}if(Sen(s,c)){let R=s.type;if(R==="list"&&Ki(c))return Qen(s,c,g,d,h,_,S);if(R==="listOrElement")return Ki(c)?Qen(s,c,g,d,h,_,S):VU(s.element,c,g,d,h,_,S);if(!Xs(s.type))return Yen(s,c,d,_,S);let T=Mz(s,c,d,_,S);return XEe(T)?T:CSs(s,g,T)}else d.push($3(S,_,Z.Compiler_option_0_requires_a_value_of_type_1,s.name,_et(s)))}function CSs(s,c,g){return s.isFilePath&&(g=xp(g),g=vet(g)?g:Xc(g,c),g===""&&(g=".")),g}function Mz(s,c,g,d,h){var _;if(XEe(c))return;let S=(_=s.extraValidation)==null?void 0:_.call(s,c);if(!S)return c;g.push($3(h,d,...S))}function Yen(s,c,g,d,h){if(XEe(c))return;let _=c.toLowerCase(),S=s.type.get(_);if(S!==void 0)return Mz(s,S,g,d,h);g.push(oen(s,(R,...T)=>$3(h,d,R,...T)))}function Qen(s,c,g,d,h,_,S){return Le(lt(c,(R,T)=>VU(s.element,R,g,d,h,_?.elements[T],S)),R=>s.listPreserveFalsyValues?!0:!!R)}var _Ss=/(?:^|\/)\*\*\/?$/,ySs=/^[^*?]*(?=\/[^/]*[*?])/;function xde(s,c,g,d,h=E){c=su(c);let _=bd(d.useCaseSensitiveFileNames),S=new Map,R=new Map,T=new Map,{validatedFilesSpec:O,validatedIncludeSpecs:V,validatedExcludeSpecs:M}=s,ee=gz(g,h),re=Az(g,ee);if(O)for(let Ee of O){let Ne=Xc(Ee,c);S.set(_(Ne),Ne)}let ge;if(V&&V.length>0)for(let Ee of d.readDirectory(c,Sr(re),M,V,void 0)){if(cA(Ee,".json")){if(!ge){let Ze=V.filter(Ke=>di(Ke,".json")),Pe=lt(nie(Ze,c,"files"),Ke=>`^${Ke}$`);ge=Pe?Pe.map(Ke=>rk(Ke,d.useCaseSensitiveFileNames)):E}if(Se(ge,Ze=>Ze.test(Ee))!==-1){let Ze=_(Ee);!S.has(Ze)&&!T.has(Ze)&&T.set(Ze,Ee)}continue}if(SSs(Ee,S,R,ee,_))continue;vSs(Ee,R,ee,_);let Ne=_(Ee);!S.has(Ne)&&!R.has(Ne)&&R.set(Ne,Ee)}let Ie=Do(S.values()),_e=Do(R.values());return Ie.concat(_e,Do(T.values()))}function gPt(s,c,g,d,h){let{validatedFilesSpec:_,validatedIncludeSpecs:S,validatedExcludeSpecs:R}=c;if(!B(S)||!B(R))return!1;g=su(g);let T=bd(d);if(_){for(let O of _)if(T(Xc(O,g))===s)return!1}return K9e(s,R,d,h,g)}function Xen(s){let c=Ac(s,"**/")?0:s.indexOf("/**/");return c===-1?!1:(di(s,"/..")?s.length:s.lastIndexOf("/../"))>c}function U9e(s,c,g,d){return K9e(s,Le(c,h=>!Xen(h)),g,d)}function K9e(s,c,g,d,h){let _=uz(c,Ro(su(d),h),"exclude"),S=_&&rk(_,g);return S?S.test(s)?!0:!v0(s)&&S.test(Cp(s)):!1}function Jen(s,c,g,d,h){return s.filter(S=>{if(!Xs(S))return!1;let R=APt(S,g);return R!==void 0&&c.push(_(...R)),R===void 0});function _(S,R){let T=rAe(d,h,R);return $3(d,T,S,R)}}function APt(s,c){if(pe.assert(typeof s=="string"),c&&_Ss.test(s))return[Z.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s];if(Xen(s))return[Z.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s]}function bSs({validatedIncludeSpecs:s,validatedExcludeSpecs:c},g,d){let h=uz(c,g,"exclude"),_=h&&new RegExp(h,d?"":"i"),S={},R=new Map;if(s!==void 0){let T=[];for(let O of s){let V=su(Ro(g,O));if(_&&_.test(V))continue;let M=ESs(V,d);if(M){let{key:ee,path:re,flags:ge}=M,Ie=R.get(ee),_e=Ie!==void 0?S[Ie]:void 0;(_e===void 0||_eIu(s,S)?S:void 0);if(!_)return!1;for(let S of _){if(cA(s,S)&&(S!==".ts"||!cA(s,".d.ts")))return!1;let R=h(_N(s,S));if(c.has(R)||g.has(R)){if(S===".d.ts"&&(cA(s,".js")||cA(s,".jsx")))continue;return!0}}return!1}function vSs(s,c,g,d){let h=F(g,_=>Iu(s,_)?_:void 0);if(h)for(let _=h.length-1;_>=0;_--){let S=h[_];if(cA(s,S))return;let R=d(_N(s,S));c.delete(R)}}function pPt(s){let c={};for(let g in s)if(Da(s,g)){let d=Iet(g);d!==void 0&&(c[g]=fPt(s[g],d))}return c}function fPt(s,c){if(s===void 0)return s;switch(c.type){case"object":return"";case"string":return"";case"number":return typeof s=="number"?s:"";case"boolean":return typeof s=="boolean"?s:"";case"listOrElement":if(!Ki(s))return fPt(s,c.element);case"list":let g=c.element;return Ki(s)?Xt(s,d=>fPt(d,g)):"";default:return Fh(c.type,(d,h)=>{if(d===s)return h})}}function QW(s){if(typeof process.versions.pnp>"u")return;let{findPnpApi:c}=Et("module");if(c)return c(`${s}/`)}function Uen(s){var c;return(c=QW(s))==null?void 0:c.resolveRequest("pnpapi",null)}function Ken(s){let c=QW(s);if(!c)return[];s=fE(s);let g=c.findPackageLocator(`${s}/`);if(!g)return[];let{packageDependencies:d}=c.getPackageInformation(g),h=[];for(let[_,S]of Array.from(d.entries()))if(_.startsWith("@types/")&&S!==null){let R=c.getLocator(_,S),{packageLocation:T}=c.getPackageInformation(R);h.push(Mo(T))}return h}function BSs(s,c){let g=QW(s),d=g.findPackageLocator(s),h=g.findPackageLocator(c);if(h===null)return!1;let _=g.getPackageInformation(d),S=_.packageDependencies.get(h.name);if(S)return S===h.reference;for(let R of _.packageDependencies.values())if(Array.isArray(R)&&R[0]===h.name&&R[1]===h.reference)return!0;return!1}function tu(s,c,...g){s.trace(nQ(c,...g))}function XW(s,c){return!!s.traceResolution&&c.trace!==void 0}function Hz(s,c,g){let d;if(c&&s){let h=s.contents.packageJsonContent;typeof h.name=="string"&&typeof h.version=="string"&&(d={name:h.name,subModuleName:c.path.slice(s.packageDirectory.length+cg.length),version:h.version,peerDependencies:USs(s,g)})}return c&&{path:c.path,extension:c.ext,packageId:d,resolvedUsingTsExtension:c.resolvedUsingTsExtension}}function Tet(s){return Hz(void 0,s,void 0)}function jen(s){if(s)return pe.assert(s.packageId===void 0),{path:s.path,ext:s.extension,resolvedUsingTsExtension:s.resolvedUsingTsExtension}}function j9e(s){let c=[];return s&1&&c.push("TypeScript"),s&2&&c.push("JavaScript"),s&4&&c.push("Declaration"),s&8&&c.push("JSON"),c.join(", ")}function wSs(s){let c=[];return s&1&&c.push(...iie),s&2&&c.push(...EU),s&4&&c.push(...ede),s&8&&c.push(".json"),c}function IPt(s){if(s)return pe.assert(rde(s.extension)),{fileName:s.path,packageId:s.packageId}}function zen(s,c,g,d,h,_,S,R,T){if(!S.resultFromCache&&!S.compilerOptions.preserveSymlinks&&c&&g&&!c.originalPath&&!Xr(s)){let{resolvedFileName:O,originalPath:V}=etn(c.path,S.host,S.traceEnabled);V&&(c={...c,path:O,originalPath:V})}return qen(c,g,d,h,_,S.resultFromCache,R,T)}function qen(s,c,g,d,h,_,S,R){return _?S?.isReadonly?{..._,failedLookupLocations:hPt(_.failedLookupLocations,g),affectingLocations:hPt(_.affectingLocations,d),resolutionDiagnostics:hPt(_.resolutionDiagnostics,h)}:(_.failedLookupLocations=Oie(_.failedLookupLocations,g),_.affectingLocations=Oie(_.affectingLocations,d),_.resolutionDiagnostics=Oie(_.resolutionDiagnostics,h),_):{resolvedModule:s&&{resolvedFileName:s.path,originalPath:s.originalPath===!0?void 0:s.originalPath,extension:s.extension,isExternalLibraryImport:c,packageId:s.packageId,resolvedUsingTsExtension:!!s.resolvedUsingTsExtension},failedLookupLocations:Gde(g),affectingLocations:Gde(d),resolutionDiagnostics:Gde(h),alternateResult:R}}function Gde(s){return s.length?s:void 0}function Oie(s,c){return c?.length?s?.length?(s.push(...c),s):c:s}function hPt(s,c){return s?.length?c.length?[...s,...c]:s.slice():Gde(c)}function mPt(s,c,g,d){if(!Da(s,c)){d.traceEnabled&&tu(d.host,Z.package_json_does_not_have_a_0_field,c);return}let h=s[c];if(typeof h!==g||h===null){d.traceEnabled&&tu(d.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,c,g,h===null?"null":typeof h);return}return h}function Ret(s,c,g,d){let h=mPt(s,c,"string",d);if(h===void 0)return;if(!h){d.traceEnabled&&tu(d.host,Z.package_json_had_a_falsy_0_field,c);return}let _=su(Ro(g,h));return d.traceEnabled&&tu(d.host,Z.package_json_has_0_field_1_that_references_2,c,h,_),_}function TSs(s,c,g){return Ret(s,"typings",c,g)||Ret(s,"types",c,g)}function RSs(s,c,g){return Ret(s,"tsconfig",c,g)}function NSs(s,c,g){return Ret(s,"main",c,g)}function DSs(s,c){let g=mPt(s,"typesVersions","object",c);if(g!==void 0)return c.traceEnabled&&tu(c.host,Z.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),g}function kSs(s,c){let g=DSs(s,c);if(g===void 0)return;if(c.traceEnabled)for(let S in g)Da(g,S)&&!At.tryParse(S)&&tu(c.host,Z.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,S);let d=z9e(g);if(!d){c.traceEnabled&&tu(c.host,Z.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,I);return}let{version:h,paths:_}=d;if(typeof _!="object"){c.traceEnabled&&tu(c.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${h}']`,"object",typeof _);return}return d}var CPt;function z9e(s){CPt||(CPt=new P(C));for(let c in s){if(!Da(s,c))continue;let g=At.tryParse(c);if(g!==void 0&&g.test(CPt))return{version:c,paths:s[c]}}}function Fde(s,c){if(s.typeRoots)return s.typeRoots;let g;if(s.configFilePath?g=Mo(s.configFilePath):c.getCurrentDirectory&&(g=c.getCurrentDirectory()),g!==void 0)return FSs(g)}function xSs(s){let c;return hE(su(s),g=>{let d=Ro(g,GSs);(c??(c=[])).push(d)}),c}var GSs=Ro("node_modules","@types");function $en(s,c,g){let d=typeof g.useCaseSensitiveFileNames=="function"?g.useCaseSensitiveFileNames():g.useCaseSensitiveFileNames;return tI(s,c,!d)===0}function FSs(s){let c=xSs(s),g=Ken(s);if(c?.length)return[...c,...g];if(g.length)return g}function etn(s,c,g){let d=ltn(s,c,g),h=$en(s,d,c);return{resolvedFileName:h?s:d,originalPath:h?void 0:s}}function ttn(s,c,g){let d=di(s,"/node_modules/@types")||di(s,"/node_modules/@types/")?xPt(c,g):c;return Ro(s,d)}function _Pt(s,c,g,d,h,_,S){pe.assert(typeof s=="string","Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");let R=XW(g,d);h&&(g=h.commandLine.options);let T=c?Mo(c):void 0,O=T?_?.getFromDirectoryCache(s,S,T,h):void 0;if(!O&&T&&!Xr(s)&&(O=_?.getFromNonRelativeNameCache(s,S,T,h)),O)return R&&(tu(d,Z.Resolving_type_reference_directive_0_containing_file_1,s,c),h&&tu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName),tu(d,Z.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,s,T),Pe(O)),O;let V=Fde(g,d);R&&(c===void 0?V===void 0?tu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,s):tu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,s,V):V===void 0?tu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,s,c):tu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,s,c,V),h&&tu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName));let M=[],ee=[],re=yPt(g);S!==void 0&&(re|=30);let ge=G_(g);S===99&&3<=ge&&ge<=99&&(re|=32);let Ie=re&8?JW(g,S):[],_e=[],Ee={compilerOptions:g,host:d,traceEnabled:R,failedLookupLocations:M,affectingLocations:ee,packageJsonInfoCache:_,features:re,conditions:Ie,requestContainingDirectory:T,reportDiagnostic:Ye=>void _e.push(Ye),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Ne=Ke(),Te=!0;Ne||(Ne=et(),Te=!1);let Ze;if(Ne){let{fileName:Ye,packageId:Tt}=Ne,at=Ye,Qe;g.preserveSymlinks||({resolvedFileName:at,originalPath:Qe}=etn(Ye,d,R)),Ze={primary:Te,resolvedFileName:at,originalPath:Qe,packageId:Tt,isExternalLibraryImport:UW(Ye)}}return O={resolvedTypeReferenceDirective:Ze,failedLookupLocations:Gde(M),affectingLocations:Gde(ee),resolutionDiagnostics:Gde(_e)},T&&_&&!_.isReadonly&&(_.getOrCreateCacheForDirectory(T,h).set(s,S,O),Xr(s)||_.getOrCreateCacheForNonRelativeName(s,S,h).set(T,O)),R&&Pe(O),O;function Pe(Ye){var Tt;(Tt=Ye.resolvedTypeReferenceDirective)!=null&&Tt.resolvedFileName?Ye.resolvedTypeReferenceDirective.packageId?tu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,gN(Ye.resolvedTypeReferenceDirective.packageId),Ye.resolvedTypeReferenceDirective.primary):tu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,Ye.resolvedTypeReferenceDirective.primary):tu(d,Z.Type_reference_directive_0_was_not_resolved,s)}function Ke(){if(V&&V.length)return R&&tu(d,Z.Resolving_with_primary_search_path_0,V.join(", ")),J(V,Ye=>{let Tt=ttn(Ye,s,Ee),at=m1(Ye,d);if(!at&&R&&tu(d,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,Ye),g.typeRoots){let Qe=Hie(4,Tt,!at,Ee);if(Qe){let Ct=KEe(Qe.path),mt=Ct?mQ(Ct,!1,Ee):void 0;return IPt(Hz(mt,Qe,Ee))}}return IPt(NPt(4,Tt,!at,Ee))});R&&tu(d,Z.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function et(){let Ye=c&&Mo(c);if(Ye!==void 0){let Tt;if(!g.typeRoots||!di(c,qde))if(R&&tu(d,Z.Looking_up_in_node_modules_folder_initial_location_0,Ye),Xr(s)){let{path:at}=ctn(Ye,s);Tt=xet(4,at,!1,Ee,!0)}else{let at=mtn(4,s,Ye,Ee,void 0,void 0);Tt=at&&at.value}else R&&tu(d,Z.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return IPt(Tt)}else R&&tu(d,Z.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function yPt(s){let c=0;switch(G_(s)){case 3:c=30;break;case 99:c=30;break;case 100:c=30;break}return s.resolvePackageJsonExports?c|=8:s.resolvePackageJsonExports===!1&&(c&=-9),s.resolvePackageJsonImports?c|=2:s.resolvePackageJsonImports===!1&&(c&=-3),c}function JW(s,c){let g=G_(s);if(c===void 0){if(g===100)c=99;else if(g===2)return[]}let d=c===99?["import"]:["require"];return s.noDtsResolution||d.push("types"),g!==100&&d.push("node"),Nn(d,s.customConditions)}function Net(s,c,g,d,h){let _=Lde(h?.getPackageJsonInfoCache(),d,g),S=QW(c);if(S)try{let R=S.resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1}),T=xp(R).replace(/\/$/,"");return mQ(T,!1,_)}catch{return}return NN(d,c,R=>{if(dp(R)!=="node_modules"){let T=Ro(R,"node_modules"),O=Ro(T,s);return mQ(O,!1,_)}})}function q9e(s,c){if(s.types)return s.types;let g=[];if(c.directoryExists&&c.getDirectories){let d=Fde(s,c);if(d){for(let h of d)if(c.directoryExists(h))for(let _ of c.getDirectories(h)){let S=su(_),R=Ro(h,S,"package.json");if(!(c.fileExists(R)&&N3(R,c).typings===null)){let O=dp(S);O.charCodeAt(0)!==46&&g.push(O)}}}}return g}function $9e(s){return!!s?.contents}function bPt(s){return!!s&&!s.contents}function EPt(s){var c;if(s===null||typeof s!="object")return""+s;if(Ki(s))return`[${(c=s.map(d=>EPt(d)))==null?void 0:c.join(",")}]`;let g="{";for(let d in s)Da(s,d)&&(g+=`${d}: ${EPt(s[d])}`);return g+"}"}function Det(s,c){return c.map(g=>EPt(lz(s,g))).join("|")+`|${s.pathsBasePath}`}function rtn(s,c){let g=new Map,d=new Map,h=new Map;return s&&g.set(s,h),{getMapOfCacheRedirects:_,getOrCreateMapOfCacheRedirects:S,update:R,clear:O,getOwnMap:()=>h};function _(M){return M?T(M.commandLine.options,!1):h}function S(M){return M?T(M.commandLine.options,!0):h}function R(M){s!==M&&(s?h=T(M,!0):g.set(M,h),s=M)}function T(M,ee){let re=g.get(M);if(re)return re;let ge=V(M);if(re=d.get(ge),!re){if(s){let Ie=V(s);Ie===ge?re=h:d.has(Ie)||d.set(Ie,h)}ee&&(re??(re=new Map)),re&&d.set(ge,re)}return re&&g.set(M,re),re}function O(){let M=s&&c.get(s);h.clear(),g.clear(),c.clear(),d.clear(),s&&(M&&c.set(s,M),g.set(s,h))}function V(M){let ee=c.get(M);return ee||c.set(M,ee=Det(M,Aet)),ee}}function ZSs(s,c){let g;return{getPackageJsonInfo:d,setPackageJsonInfo:h,clear:_,getInternalMap:S};function d(R){return g?.get(Pu(R,s,c))}function h(R,T){(g||(g=new Map)).set(Pu(R,s,c),T)}function _(){g=void 0}function S(){return g}}function ntn(s,c,g,d){let h=s.getOrCreateMapOfCacheRedirects(c),_=h.get(g);return _||(_=d(),h.set(g,_)),_}function LSs(s,c,g,d){let h=rtn(g,d);return{getFromDirectoryCache:T,getOrCreateCacheForDirectory:R,clear:_,update:S,directoryToModuleNameMap:h};function _(){h.clear()}function S(O){h.update(O)}function R(O,V){let M=Pu(O,s,c);return ntn(h,V,M,()=>Pie())}function T(O,V,M,ee){var re,ge;let Ie=Pu(M,s,c);return(ge=(re=h.getMapOfCacheRedirects(ee))==null?void 0:re.get(Ie))==null?void 0:ge.get(O,V)}}function Zde(s,c){return c===void 0?s:`${c}|${s}`}function Pie(){let s=new Map,c=new Map,g={get(h,_){return s.get(d(h,_))},set(h,_,S){return s.set(d(h,_),S),g},delete(h,_){return s.delete(d(h,_)),g},has(h,_){return s.has(d(h,_))},forEach(h){return s.forEach((_,S)=>{let[R,T]=c.get(S);return h(_,R,T)})},size(){return s.size}};return g;function d(h,_){let S=Zde(h,_);return c.set(S,[h,_]),S}}function VSs(s){return s.resolvedModule&&(s.resolvedModule.originalPath||s.resolvedModule.resolvedFileName)}function WSs(s){return s.resolvedTypeReferenceDirective&&(s.resolvedTypeReferenceDirective.originalPath||s.resolvedTypeReferenceDirective.resolvedFileName)}function OSs(s,c,g,d,h){let _=rtn(g,h);return{getFromNonRelativeNameCache:T,getOrCreateCacheForNonRelativeName:O,clear:S,update:R};function S(){_.clear()}function R(M){_.update(M)}function T(M,ee,re,ge){var Ie,_e;return pe.assert(!Xr(M)),(_e=(Ie=_.getMapOfCacheRedirects(ge))==null?void 0:Ie.get(Zde(M,ee)))==null?void 0:_e.get(re)}function O(M,ee,re){return pe.assert(!Xr(M)),ntn(_,re,Zde(M,ee),V)}function V(){let M=new Map;return{get:ee,set:re};function ee(Ie){return M.get(Pu(Ie,s,c))}function re(Ie,_e){let Ee=Pu(Ie,s,c);if(M.has(Ee))return;M.set(Ee,_e);let Ne=d(_e),Te=Ne&&ge(Ee,Ne),Ze=Ee;for(;Ze!==Te;){let Pe=Mo(Ze);if(Pe===Ze||M.has(Pe))break;M.set(Pe,_e),Ze=Pe}}function ge(Ie,_e){let Ee=Pu(Mo(_e),s,c),Ne=0,Te=Math.min(Ie.length,Ee.length);for(;Ned,clearAllExceptPackageJsonInfoCache:O,optionsToRedirectsKey:_};function T(){O(),d.clear()}function O(){S.clear(),R.clear()}function V(M){S.update(M),R.update(M)}}function Mie(s,c,g,d,h){let _=itn(s,c,g,d,VSs,h);return _.getOrCreateCacheForModuleName=(S,R,T)=>_.getOrCreateCacheForNonRelativeName(S,R,T),_}function eVe(s,c,g,d,h){return itn(s,c,g,d,WSs,h)}function ket(s){return{moduleResolution:2,traceResolution:s.traceResolution}}function tVe(s,c,g,d,h){return WU(s,c,ket(g),d,h)}function stn(s,c,g,d){let h=Mo(c);return g.getFromDirectoryCache(s,d,h,void 0)}function WU(s,c,g,d,h,_,S){let R=XW(g,d);_&&(g=_.commandLine.options),R&&(tu(d,Z.Resolving_module_0_from_1,s,c),_&&tu(d,Z.Using_compiler_options_of_project_reference_redirect_0,_.sourceFile.fileName));let T=Mo(c),O=h?.getFromDirectoryCache(s,S,T,_);if(O)R&&tu(d,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,s,T);else{let V=g.moduleResolution;switch(V===void 0?(V=G_(g),R&&tu(d,Z.Module_resolution_kind_is_not_specified_using_0,$_[V])):R&&tu(d,Z.Explicitly_specified_module_resolution_kind_Colon_0,$_[V]),V){case 3:O=YSs(s,c,g,d,h,_,S);break;case 99:O=QSs(s,c,g,d,h,_,S);break;case 2:O=wPt(s,c,g,d,h,_,S?JW(g,S):void 0);break;case 1:O=FPt(s,c,g,d,h,_);break;case 100:O=BPt(s,c,g,d,h,_,S?JW(g,S):void 0);break;default:return pe.fail(`Unexpected moduleResolution: ${V}`)}h&&!h.isReadonly&&(h.getOrCreateCacheForDirectory(T,_).set(s,S,O),Xr(s)||h.getOrCreateCacheForNonRelativeName(s,S,_).set(T,O))}return R&&(O.resolvedModule?O.resolvedModule.packageId?tu(d,Z.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,s,O.resolvedModule.resolvedFileName,gN(O.resolvedModule.packageId)):tu(d,Z.Module_name_0_was_successfully_resolved_to_1,s,O.resolvedModule.resolvedFileName):tu(d,Z.Module_name_0_was_not_resolved,s)),O}function otn(s,c,g,d,h){let _=PSs(s,c,d,h);return _?_.value:Xr(c)?MSs(s,c,g,d,h):HSs(s,c,d,h)}function PSs(s,c,g,d){let{baseUrl:h,paths:_}=d.compilerOptions;if(_&&!mp(c)){d.traceEnabled&&(h&&tu(d.host,Z.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,h,c),tu(d.host,Z.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,c));let S=EAe(d.compilerOptions,d.host),R=dz(_);return DPt(s,c,S,_,R,g,!1,d)}}function MSs(s,c,g,d,h){if(!h.compilerOptions.rootDirs)return;h.traceEnabled&&tu(h.host,Z.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,c);let _=su(Ro(g,c)),S,R;for(let T of h.compilerOptions.rootDirs){let O=su(T);di(O,cg)||(O+=cg);let V=Ac(_,O)&&(R===void 0||R.length(s[s.None=0]="None",s[s.Imports=2]="Imports",s[s.SelfName=4]="SelfName",s[s.Exports=8]="Exports",s[s.ExportsPatternTrailers=16]="ExportsPatternTrailers",s[s.AllFeatures=30]="AllFeatures",s[s.Node16Default=30]="Node16Default",s[s.NodeNextDefault=30]="NodeNextDefault",s[s.BundlerDefault=30]="BundlerDefault",s[s.EsmMode=32]="EsmMode",s))(vPt||{});function YSs(s,c,g,d,h,_,S){return atn(30,s,c,g,d,h,_,S)}function QSs(s,c,g,d,h,_,S){return atn(30,s,c,g,d,h,_,S)}function atn(s,c,g,d,h,_,S,R,T){let O=Mo(g),V=R===99?32:0,M=d.noDtsResolution?3:7;return VW(d)&&(M|=8),UEe(s|V,c,O,d,h,_,M,!1,S,T)}function XSs(s,c,g){return UEe(0,s,c,{moduleResolution:2,allowJs:!0},g,void 0,2,!1,void 0,void 0)}function BPt(s,c,g,d,h,_,S){let R=Mo(c),T=g.noDtsResolution?3:7;return VW(g)&&(T|=8),UEe(yPt(g),s,R,g,d,h,T,!1,_,S)}function wPt(s,c,g,d,h,_,S,R){let T;return R?T=8:g.noDtsResolution?(T=3,VW(g)&&(T|=8)):T=VW(g)?15:7,UEe(S?30:0,s,Mo(c),g,d,h,T,!!R,_,S)}function TPt(s,c,g){return UEe(30,s,Mo(c),{moduleResolution:99},g,void 0,8,!0,void 0,void 0)}function UEe(s,c,g,d,h,_,S,R,T,O){var V,M,ee,re,ge;let Ie=XW(d,h),_e=[],Ee=[],Ne=G_(d);O??(O=JW(d,Ne===100||Ne===2?void 0:s&32?99:1));let Te=[],Ze={compilerOptions:d,host:h,traceEnabled:Ie,failedLookupLocations:_e,affectingLocations:Ee,packageJsonInfoCache:_,features:s,conditions:O??E,requestContainingDirectory:g,reportDiagnostic:Ye=>void Te.push(Ye),isConfigLookup:R,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};Ie&&bU(Ne)&&tu(h,Z.Resolving_in_0_mode_with_conditions_1,s&32?"ESM":"CJS",Ze.conditions.map(Ye=>`'${Ye}'`).join(", "));let Pe;if(Ne===2){let Ye=S&5,Tt=S&-6;Pe=Ye&&et(Ye,Ze)||Tt&&et(Tt,Ze)||void 0}else Pe=et(S,Ze);let Ke;if(Ze.resolvedPackageDirectory&&!R&&!Xr(c)){let Ye=Pe?.value&&S&5&&!ftn(5,Pe.value.resolved.extension);if((V=Pe?.value)!=null&&V.isExternalLibraryImport&&Ye&&s&8&&O?.includes("import")){KW(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);let Tt={...Ze,features:Ze.features&-9,reportDiagnostic:Dc},at=et(S&5,Tt);(M=at?.value)!=null&&M.isExternalLibraryImport&&(Ke=at.value.resolved.path)}else if((!Pe?.value||Ye)&&Ne===2){KW(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);let Tt={...Ze.compilerOptions,moduleResolution:100},at={...Ze,compilerOptions:Tt,features:30,conditions:JW(Tt),reportDiagnostic:Dc},Qe=et(S&5,at);(ee=Qe?.value)!=null&&ee.isExternalLibraryImport&&(Ke=Qe.value.resolved.path)}}return zen(c,(re=Pe?.value)==null?void 0:re.resolved,(ge=Pe?.value)==null?void 0:ge.isExternalLibraryImport,_e,Ee,Te,Ze,_,Ke);function et(Ye,Tt){let Qe=otn(Ye,c,g,(Ct,mt,yt,Rt)=>xet(Ct,mt,yt,Rt,!0),Tt);if(Qe)return _2({resolved:Qe,isExternalLibraryImport:UW(Qe.path)});if(Xr(c)){let{path:Ct,parts:mt}=ctn(g,c),yt=xet(Ye,Ct,!1,Tt,!0);return yt&&_2({resolved:yt,isExternalLibraryImport:k(mt,"node_modules")})}else{if(s&2&&Ac(c,"#")){let mt=qSs(Ye,c,g,Tt,_,T);if(mt)return mt.value&&{value:{resolved:mt.value,isExternalLibraryImport:!1}}}if(s&4){let mt=zSs(Ye,c,g,Tt,_,T);if(mt)return mt.value&&{value:{resolved:mt.value,isExternalLibraryImport:!1}}}if(c.includes(":")){Ie&&tu(h,Z.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,c,j9e(Ye));return}Ie&&tu(h,Z.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,c,j9e(Ye));let Ct=mtn(Ye,c,g,Tt,_,T);return Ye&4&&(Ct??(Ct=Etn(c,Tt))),Ct&&{value:Ct.value&&{resolved:Ct.value,isExternalLibraryImport:!0}}}}}function ctn(s,c){let g=Ro(s,c),d=kp(g),h=li(d);return{path:h==="."||h===".."?Cp(su(g)):su(g),parts:d}}function ltn(s,c,g){if(!c.realpath)return s;let d=su(c.realpath(s));return g&&tu(c,Z.Resolving_real_path_for_0_result_1,s,d),d}function xet(s,c,g,d,h){if(d.traceEnabled&&tu(d.host,Z.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,c,j9e(s)),!Kp(c)){if(!g){let S=Mo(c);m1(S,d.host)||(d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,S),g=!0)}let _=Hie(s,c,g,d);if(_){let S=h?KEe(_.path):void 0,R=S?mQ(S,!1,d):void 0;return Hz(R,_,d)}}if(g||m1(c,d.host)||(d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,c),g=!0),!(d.features&32))return NPt(s,c,g,d,h)}var Hx="/node_modules/";function UW(s){return s.includes(Hx)}function KEe(s,c){let g=su(s),d=g.lastIndexOf(Hx);if(d===-1)return;let h=d+Hx.length,_=utn(g,h,c);return g.charCodeAt(h)===64&&(_=utn(g,_,c)),g.slice(0,_)}function utn(s,c,g){let d=s.indexOf(cg,c+1);return d===-1?g?s.length:c:d}function RPt(s,c,g,d){return Tet(Hie(s,c,g,d))}function Hie(s,c,g,d){let h=gtn(s,c,g,d);if(h)return h;if(!(d.features&32)){let _=Atn(c,s,"",g,d);if(_)return _}}function gtn(s,c,g,d){if(!dp(c).includes("."))return;let _=a0(c);_===c&&(_=c.substring(0,c.lastIndexOf(".")));let S=c.substring(_.length);return d.traceEnabled&&tu(d.host,Z.File_name_0_has_a_1_extension_stripping_it,c,S),Atn(_,s,S,g,d)}function Get(s,c,g,d,h){if(s&1&&Iu(c,iie)||s&4&&Iu(c,ede)){let _=Fet(c,d,h),S=tz(c);return _!==void 0?{path:c,ext:S,resolvedUsingTsExtension:g?!di(g,S):void 0}:void 0}return h.isConfigLookup&&s===8&&cA(c,".json")?Fet(c,d,h)!==void 0?{path:c,ext:".json",resolvedUsingTsExtension:void 0}:void 0:gtn(s,c,d,h)}function Atn(s,c,g,d,h){if(!d){let S=Mo(s);S&&(d=!m1(S,h.host))}switch(g){case".mjs":case".mts":case".d.mts":return c&1&&_(".mts",g===".mts"||g===".d.mts")||c&4&&_(".d.mts",g===".mts"||g===".d.mts")||c&2&&_(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return c&1&&_(".cts",g===".cts"||g===".d.cts")||c&4&&_(".d.cts",g===".cts"||g===".d.cts")||c&2&&_(".cjs")||void 0;case".json":return c&4&&_(".d.json.ts")||c&8&&_(".json")||void 0;case".tsx":case".jsx":return c&1&&(_(".tsx",g===".tsx")||_(".ts",g===".tsx"))||c&4&&_(".d.ts",g===".tsx")||c&2&&(_(".jsx")||_(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return c&1&&(_(".ts",g===".ts"||g===".d.ts")||_(".tsx",g===".ts"||g===".d.ts"))||c&4&&_(".d.ts",g===".ts"||g===".d.ts")||c&2&&(_(".js")||_(".jsx"))||h.isConfigLookup&&_(".json")||void 0;default:return c&4&&!PC(s+g)&&_(`.d${g}.ts`)||void 0}function _(S,R){let T=Fet(s+S,d,h);return T===void 0?void 0:{path:T,ext:S,resolvedUsingTsExtension:!h.candidateIsFromPackageJsonField&&R}}}function Fet(s,c,g){var d;if(!((d=g.compilerOptions.moduleSuffixes)!=null&&d.length))return dtn(s,c,g);let h=jT(s)??"",_=h?oie(s,h):s;return F(g.compilerOptions.moduleSuffixes,S=>dtn(_+S+h,c,g))}function dtn(s,c,g){var d;if(!c){if(g.host.fileExists(s))return g.traceEnabled&&tu(g.host,Z.File_0_exists_use_it_as_a_name_resolution_result,s),s;g.traceEnabled&&tu(g.host,Z.File_0_does_not_exist,s)}(d=g.failedLookupLocations)==null||d.push(s)}function NPt(s,c,g,d,h=!0){let _=h?mQ(c,g,d):void 0;return Hz(_,Let(s,c,g,d,_),d)}function Zet(s,c,g,d,h){if(!h&&s.contents.resolvedEntrypoints!==void 0)return s.contents.resolvedEntrypoints;let _,S=5|(h?2:0),R=yPt(c),T=Lde(d?.getPackageJsonInfoCache(),g,c);T.conditions=JW(c),T.requestContainingDirectory=s.packageDirectory;let O=Let(S,s.packageDirectory,!1,T,s);if(_=Ft(_,O?.path),R&8&&s.contents.packageJsonContent.exports){let V=no([JW(c,99),JW(c,1)],Sc);for(let M of V){let ee={...T,failedLookupLocations:[],conditions:M,host:g},re=JSs(s,s.contents.packageJsonContent.exports,ee,S);if(re)for(let ge of re)_=ps(_,ge.path)}}return s.contents.resolvedEntrypoints=_||!1}function JSs(s,c,g,d){let h;if(Ki(c))for(let S of c)_(S);else if(typeof c=="object"&&c!==null&&rVe(c))for(let S in c)_(c[S]);else _(c);return h;function _(S){var R,T;if(typeof S=="string"&&Ac(S,"./"))if(S.includes("*")&&g.host.readDirectory){if(S.indexOf("*")!==S.lastIndexOf("*"))return!1;g.host.readDirectory(s.packageDirectory,wSs(d),void 0,[o_(Z3(S,"**/*"),".*")]).forEach(O=>{h=ps(h,{path:O,ext:pE(O),resolvedUsingTsExtension:void 0})})}else{let O=kp(S).slice(2);if(O.includes("..")||O.includes(".")||O.includes("node_modules"))return!1;let V=Ro(s.packageDirectory,S),M=Xc(V,(T=(R=g.host).getCurrentDirectory)==null?void 0:T.call(R)),ee=Get(d,M,S,!1,g);if(ee)return h=ps(h,ee,(re,ge)=>re.path===ge.path),!0}else if(Array.isArray(S)){for(let O of S)if(_(O))return!0}else if(typeof S=="object"&&S!==null)return F(yg(S),O=>{if(O==="default"||k(g.conditions,O)||zEe(g.conditions,O))return _(S[O]),!0})}}function Lde(s,c,g){return{host:c,compilerOptions:g,traceEnabled:XW(g,c),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:s,features:0,conditions:E,requestContainingDirectory:void 0,reportDiagnostic:Dc,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function Vde(s,c){return NN(c.host,s,g=>mQ(g,!1,c))}function ptn(s,c){return s.contents.versionPaths===void 0&&(s.contents.versionPaths=kSs(s.contents.packageJsonContent,c)||!1),s.contents.versionPaths||void 0}function USs(s,c){return s.contents.peerDependencies===void 0&&(s.contents.peerDependencies=KSs(s,c)||!1),s.contents.peerDependencies||void 0}function KSs(s,c){let g=mPt(s.contents.packageJsonContent,"peerDependencies","object",c);if(g===void 0)return;c.traceEnabled&&tu(c.host,Z.package_json_has_a_peerDependencies_field);let d=ltn(s.packageDirectory,c.host,c.traceEnabled),h=d.substring(0,d.lastIndexOf("node_modules")+12)+cg,_="";for(let S in g)if(Da(g,S)){let R=mQ(h+S,!1,c);if(R){let T=R.contents.packageJsonContent.version;_+=`+${S}@${T}`,c.traceEnabled&&tu(c.host,Z.Found_peerDependency_0_with_1_version,S,T)}else c.traceEnabled&&tu(c.host,Z.Failed_to_find_peerDependency_0,S)}return _}function mQ(s,c,g){var d,h,_,S,R,T;let{host:O,traceEnabled:V}=g,M=Ro(s,"package.json");if(c){(d=g.failedLookupLocations)==null||d.push(M);return}let ee=(h=g.packageJsonInfoCache)==null?void 0:h.getPackageJsonInfo(M);if(ee!==void 0){if($9e(ee))return V&&tu(O,Z.File_0_exists_according_to_earlier_cached_lookups,M),(_=g.affectingLocations)==null||_.push(M),ee.packageDirectory===s?ee:{packageDirectory:s,contents:ee.contents};ee.directoryExists&&V&&tu(O,Z.File_0_does_not_exist_according_to_earlier_cached_lookups,M),(S=g.failedLookupLocations)==null||S.push(M);return}let re=m1(s,O);if(re&&O.fileExists(M)){let ge=N3(M,O);V&&tu(O,Z.Found_package_json_at_0,M);let Ie={packageDirectory:s,contents:{packageJsonContent:ge,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,Ie),(R=g.affectingLocations)==null||R.push(M),Ie}else re&&V&&tu(O,Z.File_0_does_not_exist,M),g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,{packageDirectory:s,directoryExists:re}),(T=g.failedLookupLocations)==null||T.push(M)}function Let(s,c,g,d,h){let _=h&&ptn(h,d),S;h&&$en(h?.packageDirectory,c,d.host)&&(d.isConfigLookup?S=RSs(h.contents.packageJsonContent,h.packageDirectory,d):S=s&4&&TSs(h.contents.packageJsonContent,h.packageDirectory,d)||s&7&&NSs(h.contents.packageJsonContent,h.packageDirectory,d)||void 0);let R=(ee,re,ge,Ie)=>{let _e=Get(ee,re,void 0,ge,Ie);if(_e)return Tet(_e);let Ee=ee===4?5:ee,Ne=Ie.features,Te=Ie.candidateIsFromPackageJsonField;Ie.candidateIsFromPackageJsonField=!0,h?.contents.packageJsonContent.type!=="module"&&(Ie.features&=-33);let Ze=xet(Ee,re,ge,Ie,!1);return Ie.features=Ne,Ie.candidateIsFromPackageJsonField=Te,Ze},T=S?!m1(Mo(S),d.host):void 0,O=g||!m1(c,d.host),V=Ro(c,d.isConfigLookup?"tsconfig":"index");if(_&&(!S||zh(c,S))){let ee=_p(c,S||V,!1);d.traceEnabled&&tu(d.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,_.version,C,ee);let re=dz(_.paths),ge=DPt(s,ee,c,_.paths,re,R,T||O,d);if(ge)return jen(ge.value)}let M=S&&jen(R(s,S,T,d));if(M)return M;if(!(d.features&32))return Hie(s,V,O,d)}function ftn(s,c){return s&2&&(c===".js"||c===".jsx"||c===".mjs"||c===".cjs")||s&1&&(c===".ts"||c===".tsx"||c===".mts"||c===".cts")||s&4&&(c===".d.ts"||c===".d.mts"||c===".d.cts")||s&8&&c===".json"||!1}function jEe(s){let c=s.indexOf(cg);return s[0]==="@"&&(c=s.indexOf(cg,c+1)),c===-1?{packageName:s,rest:""}:{packageName:s.slice(0,c),rest:s.slice(c+1)}}function rVe(s){return ue(yg(s),c=>Ac(c,"."))}function jSs(s){return!zt(yg(s),c=>Ac(c,"."))}function zSs(s,c,g,d,h,_){var S,R;let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),O=Vde(T,d);if(!O||!O.contents.packageJsonContent.exports||typeof O.contents.packageJsonContent.name!="string")return;let V=kp(c),M=kp(O.contents.packageJsonContent.name);if(!ue(M,(_e,Ee)=>V[Ee]===_e))return;let ee=V.slice(M.length),re=B(ee)?`.${cg}${ee.join(cg)}`:".";if(GF(d.compilerOptions)&&!UW(g))return Vet(O,s,re,d,h,_);let ge=s&5,Ie=s&-6;return Vet(O,ge,re,d,h,_)||Vet(O,Ie,re,d,h,_)}function Vet(s,c,g,d,h,_){if(s.contents.packageJsonContent.exports){if(g==="."){let S;if(typeof s.contents.packageJsonContent.exports=="string"||Array.isArray(s.contents.packageJsonContent.exports)||typeof s.contents.packageJsonContent.exports=="object"&&jSs(s.contents.packageJsonContent.exports)?S=s.contents.packageJsonContent.exports:Da(s.contents.packageJsonContent.exports,".")&&(S=s.contents.packageJsonContent.exports["."]),S)return htn(c,d,h,_,g,s,!1)(S,"",!1,".")}else if(rVe(s.contents.packageJsonContent.exports)){if(typeof s.contents.packageJsonContent.exports!="object")return d.traceEnabled&&tu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),_2(void 0);let S=Itn(c,d,h,_,g,s.contents.packageJsonContent.exports,s,!1);if(S)return S}return d.traceEnabled&&tu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),_2(void 0)}}function qSs(s,c,g,d,h,_){var S,R;if(c==="#"||Ac(c,"#/"))return d.traceEnabled&&tu(d.host,Z.Invalid_import_specifier_0_has_no_possible_resolutions,c),_2(void 0);let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),O=Vde(T,d);if(!O)return d.traceEnabled&&tu(d.host,Z.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,T),_2(void 0);if(!O.contents.packageJsonContent.imports)return d.traceEnabled&&tu(d.host,Z.package_json_scope_0_has_no_imports_defined,O.packageDirectory),_2(void 0);let V=Itn(s,d,h,_,c,O.contents.packageJsonContent.imports,O,!0);return V||(d.traceEnabled&&tu(d.host,Z.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,c,O.packageDirectory),_2(void 0))}function Wet(s,c){let g=s.indexOf("*"),d=c.indexOf("*"),h=g===-1?s.length:g+1,_=d===-1?c.length:d+1;return h>_?-1:_>h||g===-1?1:d===-1||s.length>c.length?-1:c.length>s.length?1:0}function Itn(s,c,g,d,h,_,S,R){let T=htn(s,c,g,d,h,S,R);if(!di(h,cg)&&!h.includes("*")&&Da(_,h)){let M=_[h];return T(M,"",!1,h)}let O=bo(Le(yg(_),M=>$Ss(M)||di(M,"/")),Wet);for(let M of O)if(c.features&16&&V(M,h)){let ee=_[M],re=M.indexOf("*"),ge=h.substring(M.substring(0,re).length,h.length-(M.length-1-re));return T(ee,ge,!0,M)}else if(di(M,"*")&&Ac(h,M.substring(0,M.length-1))){let ee=_[M],re=h.substring(M.length-1);return T(ee,re,!0,M)}else if(Ac(h,M)){let ee=_[M],re=h.substring(M.length);return T(ee,re,!1,M)}function V(M,ee){if(di(M,"*"))return!1;let re=M.indexOf("*");return re===-1?!1:Ac(ee,M.substring(0,re))&&di(ee,M.substring(re+1))}}function $Ss(s){let c=s.indexOf("*");return c!==-1&&c===s.lastIndexOf("*")}function htn(s,c,g,d,h,_,S){return R;function R(T,O,V,M){var ee,re;if(typeof T=="string"){if(!V&&O.length>0&&!di(T,"/"))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),_2(void 0);if(!Ac(T,"./")){if(S&&!Ac(T,"../")&&!Ac(T,"/")&&!Up(T)){let et=V?T.replace(/\*/g,O):T+O;KW(c,Z.Using_0_subpath_1_with_target_2,"imports",M,et),KW(c,Z.Resolving_module_0_from_1,et,_.packageDirectory+"/");let Ye=UEe(c.features,et,_.packageDirectory+"/",c.compilerOptions,c.host,g,s,!1,d,c.conditions);return(ee=c.failedLookupLocations)==null||ee.push(...Ye.failedLookupLocations??E),(re=c.affectingLocations)==null||re.push(...Ye.affectingLocations??E),_2(Ye.resolvedModule?{path:Ye.resolvedModule.resolvedFileName,extension:Ye.resolvedModule.extension,packageId:Ye.resolvedModule.packageId,originalPath:Ye.resolvedModule.originalPath,resolvedUsingTsExtension:Ye.resolvedModule.resolvedUsingTsExtension}:void 0)}return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),_2(void 0)}let Ne=(mp(T)?kp(T).slice(1):kp(T)).slice(1);if(Ne.includes("..")||Ne.includes(".")||Ne.includes("node_modules"))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),_2(void 0);let Te=Ro(_.packageDirectory,T),Ze=kp(O);if(Ze.includes("..")||Ze.includes(".")||Ze.includes("node_modules"))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),_2(void 0);c.traceEnabled&&tu(c.host,Z.Using_0_subpath_1_with_target_2,S?"imports":"exports",M,V?T.replace(/\*/g,O):T+O);let Pe=ge(V?Te.replace(/\*/g,O):Te+O),Ke=_e(Pe,O,Ro(_.packageDirectory,"package.json"),S);return Ke||_2(Hz(_,Get(s,Pe,T,!1,c),c))}else if(typeof T=="object"&&T!==null)if(Array.isArray(T)){if(!B(T))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),_2(void 0);for(let Ee of T){let Ne=R(Ee,O,V,M);if(Ne)return Ne}}else{KW(c,Z.Entering_conditional_exports);for(let Ee of yg(T))if(Ee==="default"||c.conditions.includes(Ee)||zEe(c.conditions,Ee)){KW(c,Z.Matched_0_condition_1,S?"imports":"exports",Ee);let Ne=T[Ee],Te=R(Ne,O,V,M);if(Te)return KW(c,Z.Resolved_under_condition_0,Ee),KW(c,Z.Exiting_conditional_exports),Te;KW(c,Z.Failed_to_resolve_under_condition_0,Ee)}else KW(c,Z.Saw_non_matching_condition_0,Ee);KW(c,Z.Exiting_conditional_exports);return}else if(T===null)return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_explicitly_maps_specifier_1_to_null,_.packageDirectory,h),_2(void 0);return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),_2(void 0);function ge(Ee){var Ne,Te;return Ee===void 0?Ee:Xc(Ee,(Te=(Ne=c.host).getCurrentDirectory)==null?void 0:Te.call(Ne))}function Ie(Ee,Ne){return Cp(Ro(Ee,Ne))}function _e(Ee,Ne,Te,Ze){var Pe,Ke,et,Ye;if(!c.isConfigLookup&&(c.compilerOptions.declarationDir||c.compilerOptions.outDir)&&!Ee.includes("/node_modules/")&&(!c.compilerOptions.configFile||zh(_.packageDirectory,ge(c.compilerOptions.configFile.fileName),!Oet(c)))){let at=qD({useCaseSensitiveFileNames:()=>Oet(c)}),Qe=[];if(c.compilerOptions.rootDir||c.compilerOptions.composite&&c.compilerOptions.configFilePath){let Ct=ge(jde(c.compilerOptions,()=>[],((Ke=(Pe=c.host).getCurrentDirectory)==null?void 0:Ke.call(Pe))||"",at));Qe.push(Ct)}else if(c.requestContainingDirectory){let Ct=ge(Ro(c.requestContainingDirectory,"index.ts")),mt=ge(jde(c.compilerOptions,()=>[Ct,ge(Te)],((Ye=(et=c.host).getCurrentDirectory)==null?void 0:Ye.call(et))||"",at));Qe.push(mt);let yt=Cp(mt);for(;yt&&yt.length>1;){let Rt=kp(yt);Rt.pop();let Lt=Fm(Rt);Qe.unshift(Lt),yt=Cp(Lt)}}Qe.length>1&&c.reportDiagnostic(kf(Ze?Z.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Z.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,Ne===""?".":Ne,Te));for(let Ct of Qe){let mt=Tt(Ct);for(let yt of mt)if(zh(yt,Ee,!Oet(c))){let Rt=Ee.slice(yt.length+1),Lt=Ro(Ct,Rt),je=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(let Wt of je)if(cA(Lt,Wt)){let _r=gbe(Lt);for(let Gt of _r){if(!ftn(s,Gt))continue;let it=$2(Lt,Gt,Wt,!Oet(c));if(c.host.fileExists(it))return _2(Hz(_,Get(s,it,void 0,!1,c),c))}}}}}return;function Tt(at){var Qe,Ct;let mt=c.compilerOptions.configFile?((Ct=(Qe=c.host).getCurrentDirectory)==null?void 0:Ct.call(Qe))||"":at,yt=[];return c.compilerOptions.declarationDir&&yt.push(ge(Ie(mt,c.compilerOptions.declarationDir))),c.compilerOptions.outDir&&c.compilerOptions.outDir!==c.compilerOptions.declarationDir&&yt.push(ge(Ie(mt,c.compilerOptions.outDir))),yt}}}}function zEe(s,c){if(!s.includes("types")||!Ac(c,"types@"))return!1;let g=At.tryParse(c.substring(6));return g?g.test(C):!1}function mtn(s,c,g,d,h,_){return Ctn(s,c,g,d,!1,h,_)}function evs(s,c,g){return Ctn(4,s,c,g,!0,void 0,void 0)}function Ctn(s,c,g,d,h,_,S){let R=d.features===0?void 0:d.features&32||d.conditions.includes("import")?99:1,T=s&5,O=s&-6;if(T){KW(d,Z.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,j9e(T));let M=V(T);if(M)return M}if(O&&!h)return KW(d,Z.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,j9e(O)),V(O);function V(M){let ee=xp(g);if(QW(ee)){let re=GPt(_,c,R,ee,S,d);return re||_2(tvs(M,c,ee,d,h,_,S))}return NN(d.host,xp(g),re=>{if(dp(re)!=="node_modules"){let ge=GPt(_,c,R,re,S,d);return ge||_2(_tn(M,c,re,d,h,_,S))}})}}function NN(s,c,g){var d;let h=(d=s?.getGlobalTypingsCacheLocation)==null?void 0:d.call(s);return hE(c,_=>{let S=g(_);if(S!==void 0)return S;if(_===h)return!1})||void 0}function _tn(s,c,g,d,h,_,S){let R=Ro(g,"node_modules"),T=m1(R,d.host);if(!T&&d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,R),!h){let O=ytn(s,c,R,T,d,_,S);if(O)return O}if(s&4){let O=Ro(R,"@types"),V=T;return T&&!m1(O,d.host)&&(d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,O),V=!1),ytn(4,xPt(c,d),O,V,d,_,S)}}function tvs(s,c,g,d,h,_,S){let R=xp(g);if(!h){let T=Stn(s,c,R,d,_,S);if(T)return T}if(s&4)return Stn(4,`@types/${xPt(c,d)}`,R,d,_,S)}function ytn(s,c,g,d,h,_,S){let R=su(Ro(g,c)),{packageName:T,rest:O}=jEe(c),V=Ro(g,T);return btn(s,d,h,_,S,R,O,V)}function rvs(s,c,g,d,h,_){let S=su(Ro(c,g));return btn(s,!0,d,h,_,S,g,c)}function btn(s,c,g,d,h,_,S,R){var T,O;let V,M=mQ(_,!c,g);if(S!==""&&M&&(!(g.features&8)||!Da(((T=V=mQ(R,!c,g))==null?void 0:T.contents.packageJsonContent)??E,"exports"))){let ge=Hie(s,_,!c,g);if(ge)return Tet(ge);let Ie=Let(s,_,!c,g,M);return Hz(M,Ie,g)}let ee=(ge,Ie,_e,Ee)=>{let Ne=(S||!(Ee.features&32))&&Hie(ge,Ie,_e,Ee)||Let(ge,Ie,_e,Ee,M);return!Ne&&!S&&M&&(M.contents.packageJsonContent.exports===void 0||M.contents.packageJsonContent.exports===null)&&Ee.features&32&&(Ne=Hie(ge,Ro(Ie,"index.js"),_e,Ee)),Hz(M,Ne,Ee)};if(S!==""&&(M=V??mQ(R,!c,g)),M&&(g.resolvedPackageDirectory=!0),M&&M.contents.packageJsonContent.exports&&g.features&8)return(O=Vet(M,s,Ro(".",S),g,d,h))==null?void 0:O.value;let re=S!==""&&M?ptn(M,g):void 0;if(re){g.traceEnabled&&tu(g.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,re.version,C,S);let ge=c&&m1(R,g.host),Ie=dz(re.paths),_e=DPt(s,S,R,re.paths,Ie,ee,!ge,g);if(_e)return _e.value}return ee(s,_,!c,g)}function DPt(s,c,g,d,h,_,S,R){let T=jbe(h,c);if(T){let O=Xs(T)?void 0:Cw(T,c),V=Xs(T)?T:$1(T);return R.traceEnabled&&tu(R.host,Z.Module_name_0_matched_pattern_1,c,V),{value:F(d[V],ee=>{let re=O?Z3(ee,O):ee,ge=su(Ro(g,re));R.traceEnabled&&tu(R.host,Z.Trying_substitution_0_candidate_module_location_Colon_1,ee,re);let Ie=jT(ee);if(Ie!==void 0){let _e=Fet(ge,S,R);if(_e!==void 0)return Tet({path:_e,ext:Ie,resolvedUsingTsExtension:void 0})}return _(s,ge,S||!m1(Mo(ge),R.host),R)})}}}var kPt="__";function xPt(s,c){let g=Yie(s);return c.traceEnabled&&g!==s&&tu(c.host,Z.Scoped_package_detected_looking_in_0,g),g}function nVe(s){return`@types/${Yie(s)}`}function Yie(s){if(Ac(s,"@")){let c=s.replace(cg,kPt);if(c!==s)return c.slice(1)}return s}function Wde(s){let c=Gm(s,"@types/");return c!==s?qEe(c):s}function qEe(s){return s.includes(kPt)?"@"+s.replace(kPt,cg):s}function GPt(s,c,g,d,h,_){let S=s&&s.getFromNonRelativeNameCache(c,g,d,h);if(S)return _.traceEnabled&&tu(_.host,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,c,d),_.resultFromCache=S,{value:S.resolvedModule&&{path:S.resolvedModule.resolvedFileName,originalPath:S.resolvedModule.originalPath||!0,extension:S.resolvedModule.extension,packageId:S.resolvedModule.packageId,resolvedUsingTsExtension:S.resolvedModule.resolvedUsingTsExtension}}}function FPt(s,c,g,d,h,_){let S=XW(g,d),R=[],T=[],O=Mo(c),V=[],M={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:h,features:0,conditions:[],requestContainingDirectory:O,reportDiagnostic:ge=>void V.push(ge),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},ee=re(5)||re(2|(g.resolveJsonModule?8:0));return zen(s,ee&&ee.value,ee?.value&&UW(ee.value.path),R,T,V,M,h);function re(ge){let Ie=otn(ge,s,O,RPt,M);if(Ie)return{value:Ie};if(Xr(s)){let _e=su(Ro(O,s));return _2(RPt(ge,_e,!1,M))}else{let _e=NN(M.host,O,Ee=>{let Ne=GPt(h,s,void 0,Ee,_,M);if(Ne)return Ne;let Te=su(Ro(Ee,s));return _2(RPt(ge,Te,!1,M))});if(_e)return _e;if(ge&5){let Ee=evs(s,O,M);return ge&4&&(Ee??(Ee=Etn(s,M))),Ee}}}}function Etn(s,c){if(c.compilerOptions.typeRoots)for(let g of c.compilerOptions.typeRoots){let d=ttn(g,s,c),h=m1(g,c.host);!h&&c.traceEnabled&&tu(c.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,g);let _=Hie(4,d,!h,c);if(_){let R=KEe(_.path),T=R?mQ(R,!1,c):void 0;return _2(Hz(T,_,c))}let S=NPt(4,d,!h,c);if(S)return _2(S)}}function Qie(s,c){return ELe(s)||!!c&&PC(c)}function ZPt(s,c,g,d,h,_){let S=XW(g,d);S&&tu(d,Z.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,c,s,h);let R=[],T=[],O=[],V={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:_,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:ee=>void O.push(ee),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},M=_tn(4,s,h,V,!1,void 0,void 0);return qen(M,!0,R,T,O,V.resultFromCache,void 0)}function _2(s){return s!==void 0?{value:s}:void 0}function KW(s,c,...g){s.traceEnabled&&tu(s.host,c,...g)}function Oet(s){return s.host.useCaseSensitiveFileNames?typeof s.host.useCaseSensitiveFileNames=="boolean"?s.host.useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames():!0}function nvs(s,c){try{let g=QW(c).resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1});return xp(g).replace(/\/$/,"")}catch{}}function Stn(s,c,g,d,h,_){let{packageName:S,rest:R}=jEe(c),T=nvs(S,g);return T?rvs(s,T,R,d,h,_):void 0}var LPt=(s=>(s[s.NonInstantiated=0]="NonInstantiated",s[s.Instantiated=1]="Instantiated",s[s.ConstEnumOnly=2]="ConstEnumOnly",s))(LPt||{});function QF(s,c){return s.body&&!s.body.parent&&(UA(s.body,s),e9(s.body,!1)),s.body?VPt(s.body,c):1}function VPt(s,c=new Map){let g=id(s);if(c.has(g))return c.get(g)||0;c.set(g,void 0);let d=ivs(s,c);return c.set(g,d),d}function ivs(s,c){switch(s.kind){case 265:case 266:return 0;case 267:if(OA(s))return 2;break;case 273:case 272:if(!Ga(s,32))return 0;break;case 279:let g=s;if(!g.moduleSpecifier&&g.exportClause&&g.exportClause.kind===280){let d=0;for(let h of g.exportClause.elements){let _=svs(h,c);if(_>d&&(d=_),d===1)return d}return d}break;case 269:{let d=0;return Lu(s,h=>{let _=VPt(h,c);switch(_){case 0:return;case 2:d=2;return;case 1:return d=1,!0;default:pe.assertNever(_)}}),d}case 268:return QF(s,c);case 80:if(s.flags&4096)return 0}return 1}function svs(s,c){let g=s.propertyName||s.name;if(g.kind!==80)return 1;let d=s.parent;for(;d;){if(eg(d)||vN(d)||al(d)){let h=d.statements,_;for(let S of h)if(c3(S,g)){S.parent||(UA(S,d),e9(S,!1));let R=VPt(S,c);if((_===void 0||R>_)&&(_=R),_===1)return _;S.kind===272&&(_=1)}if(_!==void 0)return _}d=d.parent}return 1}var WPt=(s=>(s[s.None=0]="None",s[s.IsContainer=1]="IsContainer",s[s.IsBlockScopedContainer=2]="IsBlockScopedContainer",s[s.IsControlFlowContainer=4]="IsControlFlowContainer",s[s.IsFunctionLike=8]="IsFunctionLike",s[s.IsFunctionExpression=16]="IsFunctionExpression",s[s.HasLocals=32]="HasLocals",s[s.IsInterface=64]="IsInterface",s[s.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",s))(WPt||{});function ak(s,c,g){return pe.attachFlowNodeDebugInfo({flags:s,id:0,node:c,antecedent:g})}var ovs=avs();function OPt(s,c){Mc("beforeBind"),ovs(s,c),Mc("afterBind"),Pf("Bind","beforeBind","afterBind")}function avs(){var s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe,Ke,et,Ye,Tt=!1,at=0,Qe,Ct,mt=ak(1,void 0,void 0),yt=ak(1,void 0,void 0),Rt=xe();return je;function Lt(Fe,gr,...Ln){return EE(ms(Fe)||s,Fe,gr,...Ln)}function je(Fe,gr){var Ln,bs;s=Fe,c=gr,g=Hg(c),Ye=Wt(s,gr),Ct=new Set,at=0,Qe=VC.getSymbolConstructor(),pe.attachFlowNodeDebugInfo(mt),pe.attachFlowNodeDebugInfo(yt),s.locals||((Ln=ki)==null||Ln.push(ki.Phase.Bind,"bindSourceFile",{path:s.path},!0),Ss(s),(bs=ki)==null||bs.pop(),s.symbolCount=at,s.classifiableNames=Ct,qp(),Jg()),s=void 0,c=void 0,g=void 0,d=void 0,h=void 0,_=void 0,S=void 0,R=void 0,T=void 0,V=void 0,O=!1,M=void 0,ee=void 0,re=void 0,ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Te=void 0,Ze=!1,Pe=!1,Ke=!1,Tt=!1,et=0}function Wt(Fe,gr){return l_(gr,"alwaysStrict")&&!Fe.isDeclarationFile?!0:!!Fe.externalModuleIndicator}function _r(Fe,gr){return at++,new Qe(Fe,gr)}function Gt(Fe,gr,Ln){Fe.flags|=Ln,gr.symbol=Fe,Fe.declarations=ps(Fe.declarations,gr),Ln&1955&&!Fe.exports&&(Fe.exports=$u()),Ln&6240&&!Fe.members&&(Fe.members=$u()),Fe.constEnumOnlyModule&&Fe.flags&304&&(Fe.constEnumOnlyModule=!1),Ln&111551&&V7(Fe,gr)}function it(Fe){if(Fe.kind===278)return Fe.isExportEquals?"export=":"default";let gr=fl(Fe);if(gr){if(a_(Fe)){let Ln=g2(gr);return NB(Fe)?"__global":`"${Ln}"`}if(gr.kind===168){let Ln=gr.expression;if(I1(Ln))return pp(Ln.text);if(xne(Ln))return Vi(Ln.operator)+Ln.operand.text;pe.fail("Only computed properties with literal names have declaration names")}if(p(gr)){let Ln=_C(Fe);if(!Ln)return;let bs=Ln.symbol;return Gne(bs,gr.escapedText)}return sR(gr)?uS(gr):xw(gr)?gU(gr):void 0}switch(Fe.kind){case 177:return"__constructor";case 185:case 180:case 324:return"__call";case 186:case 181:return"__new";case 182:return"__index";case 279:return"__export";case 308:return"export=";case 227:if(oI(Fe)===2)return"export=";pe.fail("Unknown binary declaration kind");break;case 318:return jY(Fe)?"__new":"__call";case 170:return pe.assert(Fe.parent.kind===318,"Impossible parameter parent kind",()=>`parent is: ${pe.formatSyntaxKind(Fe.parent.kind)}, expected JSDocFunctionType`),"arg"+Fe.parent.parameters.indexOf(Fe)}}function kt(Fe){return sh(Fe)?Md(Fe.name):Bc(pe.checkDefined(it(Fe)))}function tr(Fe,gr,Ln,bs,Jl,tg,zl){pe.assert(zl||!zD(Ln));let Su=Ga(Ln,2048)||D0(Ln)&&dv(Ln.name),xf=zl?"__computed":Su&&gr?"default":it(Ln),Ug;if(xf===void 0)Ug=_r(0,"__missing");else if(Ug=Fe.get(xf),bs&2885600&&Ct.add(xf),!Ug)Fe.set(xf,Ug=_r(0,xf)),tg&&(Ug.isReplaceableByMethod=!0);else{if(tg&&!Ug.isReplaceableByMethod)return Ug;if(Ug.flags&Jl){if(Ug.isReplaceableByMethod)Fe.set(xf,Ug=_r(0,xf));else if(!(bs&3&&Ug.flags&67108864)){sh(Ln)&&UA(Ln.name,Ln);let YC=Ug.flags&2?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,w1=!0;(Ug.flags&384||bs&384)&&(YC=Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,w1=!1);let CS=!1;B(Ug.declarations)&&(Su||Ug.declarations&&Ug.declarations.length&&Ln.kind===278&&!Ln.isExportEquals)&&(YC=Z.A_module_cannot_have_multiple_default_exports,w1=!1,CS=!0);let Bv=[];OB(Ln)&&af(Ln.type)&&Ga(Ln,32)&&Ug.flags&2887656&&Bv.push(Lt(Ln,Z.Did_you_mean_0,`export type { ${Bc(Ln.name.escapedText)} }`));let qF=fl(Ln)||Ln;F(Ug.declarations,(Yy,uk)=>{let AR=fl(Yy)||Yy,QB=w1?Lt(AR,YC,kt(Yy)):Lt(AR,YC);s.bindDiagnostics.push(CS?ug(QB,Lt(qF,uk===0?Z.Another_export_default_is_here:Z.and_here)):QB),CS&&Bv.push(Lt(AR,Z.The_first_export_default_is_here))});let A9=w1?Lt(qF,YC,kt(Ln)):Lt(qF,YC);s.bindDiagnostics.push(ug(A9,...Bv)),Ug=_r(0,xf)}}}return Gt(Ug,Ln,bs),Ug.parent?pe.assert(Ug.parent===gr,"Existing symbol parent should match new one"):Ug.parent=gr,Ug}function ur(Fe,gr,Ln){let bs=!!(Hc(Fe)&32)||Gr(Fe);if(gr&2097152)return Fe.kind===282||Fe.kind===272&&bs?tr(h.symbol.exports,h.symbol,Fe,gr,Ln):(pe.assertNode(h,HI),tr(h.locals,void 0,Fe,gr,Ln));if(cS(Fe)&&pe.assert(wo(Fe)),!a_(Fe)&&(bs||h.flags&128)){if(!HI(h)||!h.locals||Ga(Fe,2048)&&!it(Fe))return tr(h.symbol.exports,h.symbol,Fe,gr,Ln);let Jl=gr&111551?1048576:0,tg=tr(h.locals,void 0,Fe,Jl,Ln);return tg.exportSymbol=tr(h.symbol.exports,h.symbol,Fe,gr,Ln),Fe.localSymbol=tg,tg}else return pe.assertNode(h,HI),tr(h.locals,void 0,Fe,gr,Ln)}function Gr(Fe){if(Fe.parent&&Lh(Fe)&&(Fe=Fe.parent),!cS(Fe))return!1;if(!TEe(Fe)&&Fe.fullName)return!0;let gr=fl(Fe);return gr?!!(kF(gr.parent)&&vv(gr.parent)||em(gr.parent)&&Hc(gr.parent)&32):!1}function dt(Fe,gr){let Ln=h,bs=_,Jl=S,tg=Pe;if(Fe.kind===220&&Fe.body.kind!==242&&(Pe=!0),gr&1?(Fe.kind!==220&&(_=h),h=S=Fe,gr&32&&(h.locals=$u(),Ui(h))):gr&2&&(S=Fe,gr&32&&(S.locals=void 0)),gr&4){let zl=M,Su=ee,xf=re,Ug=ge,YC=Ee,w1=Te,CS=Ze,Bv=gr&16&&!Ga(Fe,1024)&&!Fe.asteriskToken&&!!ML(Fe)||Fe.kind===176;Bv||(M=ak(2,void 0,void 0),gr&144&&(M.node=Fe)),ge=Bv||Fe.kind===177||wo(Fe)&&(Fe.kind===263||Fe.kind===219)?si():void 0,Ee=void 0,ee=void 0,re=void 0,Te=void 0,Ze=!1,qt(Fe),Fe.flags&=-5633,!(M.flags&1)&&gr&8&&d1(Fe.body)&&(Fe.flags|=512,Ze&&(Fe.flags|=1024),Fe.endFlowNode=M),Fe.kind===308&&(Fe.flags|=et,Fe.endFlowNode=M),ge&&(Zn(ge,M),M=hc(ge),(Fe.kind===177||Fe.kind===176||wo(Fe)&&(Fe.kind===263||Fe.kind===219))&&(Fe.returnFlowNode=M)),Bv||(M=zl),ee=Su,re=xf,ge=Ug,Ee=YC,Te=w1,Ze=CS}else gr&64?(O=!1,qt(Fe),pe.assertNotNode(Fe,Ir),Fe.flags=O?Fe.flags|256:Fe.flags&-257):qt(Fe);Pe=tg,h=Ln,_=bs,S=Jl}function pr(Fe){ot(Fe,gr=>gr.kind===263?Ss(gr):void 0),ot(Fe,gr=>gr.kind!==263?Ss(gr):void 0)}function ot(Fe,gr=Ss){Fe!==void 0&&F(Fe,gr)}function ir(Fe){Lu(Fe,Ss,ot)}function qt(Fe){let gr=Tt;if(Tt=!1,cl(Fe)){aU(Fe)&&Fe.flowNode&&(Fe.flowNode=void 0),ir(Fe),Uc(Fe),Tt=gr;return}switch(Fe.kind>=244&&Fe.kind<=260&&(!c.allowUnreachableCode||Fe.kind===254)&&(Fe.flowNode=M),Fe.kind){case 248:Rg(Fe);break;case 247:Cs(Fe);break;case 249:Tu(Fe);break;case 250:case 251:Wr(Fe);break;case 246:Wn(Fe);break;case 254:case 258:pt(Fe);break;case 253:case 252:nr(Fe);break;case 259:Zr(Fe);break;case 256:Kr(Fe);break;case 270:Dn(Fe);break;case 297:hr(Fe);break;case 245:Sn(Fe);break;case 257:Gi(Fe);break;case 225:Ht(Fe);break;case 226:cn(Fe);break;case 227:if(Zx(Fe)){Tt=gr,wt(Fe);return}Rt(Fe);break;case 221:fr(Fe);break;case 228:Ue(Fe);break;case 261:Hn(Fe);break;case 212:case 213:Oi(Fe);break;case 214:Vn(Fe);break;case 236:es(Fe);break;case 347:case 339:case 341:oo(Fe);break;case 352:Ys(Fe);break;case 308:{pr(Fe.statements),Ss(Fe.endOfFileToken);break}case 242:case 269:pr(Fe.statements);break;case 209:Mt(Fe);break;case 170:$r(Fe);break;case 211:case 210:case 304:case 231:Tt=gr;default:ir(Fe);break}Uc(Fe),Tt=gr}function Yt(Fe){switch(Fe.kind){case 80:case 110:return!0;case 212:case 213:return Cn(Fe);case 214:return jn(Fe);case 218:if(IQ(Fe))return!1;case 236:return Yt(Fe.expression);case 227:return Ns(Fe);case 225:return Fe.operator===54&&Yt(Fe.operand);case 222:return Yt(Fe.expression)}return!1}function Tr(Fe){switch(Fe.kind){case 80:case 110:case 108:case 237:return!0;case 212:case 218:case 236:return Tr(Fe.expression);case 213:return(I1(Fe.argumentExpression)||Hd(Fe.argumentExpression))&&Tr(Fe.expression);case 227:return Fe.operatorToken.kind===28&&Tr(Fe.right)||$D(Fe.operatorToken.kind)&&x_(Fe.left)}return!1}function Cn(Fe){return Tr(Fe)||ZC(Fe)&&Cn(Fe.expression)}function jn(Fe){if(Fe.arguments){for(let gr of Fe.arguments)if(Cn(gr))return!0}return!!(Fe.expression.kind===212&&Cn(Fe.expression.expression))}function Zi(Fe,gr){return SN(Fe)&&An(Fe.expression)&&CA(gr)}function Ns(Fe){switch(Fe.operatorToken.kind){case 64:case 76:case 77:case 78:return Cn(Fe.left);case 35:case 36:case 37:case 38:let gr=JA(Fe.left),Ln=JA(Fe.right);return An(gr)||An(Ln)||Zi(Ln,gr)||Zi(gr,Ln)||TY(Ln)&&Yt(gr)||TY(gr)&&Yt(Ln);case 104:return An(Fe.left);case 103:return Yt(Fe.right);case 28:return Yt(Fe.right)}return!1}function An(Fe){switch(Fe.kind){case 218:return An(Fe.expression);case 227:switch(Fe.operatorToken.kind){case 64:return An(Fe.left);case 28:return An(Fe.right)}}return Cn(Fe)}function si(){return ak(4,void 0,void 0)}function ks(){return ak(8,void 0,void 0)}function Ic(Fe,gr,Ln){return ak(1024,{target:Fe,antecedents:gr},Ln)}function ou(Fe){Fe.flags|=Fe.flags&2048?4096:2048}function Zn(Fe,gr){!(gr.flags&1)&&!k(Fe.antecedent,gr)&&((Fe.antecedent||(Fe.antecedent=[])).push(gr),ou(gr))}function ya(Fe,gr,Ln){return gr.flags&1?gr:Ln?(Ln.kind===112&&Fe&64||Ln.kind===97&&Fe&32)&&!bY(Ln)&&!RJ(Ln.parent)?mt:Yt(Ln)?(ou(gr),ak(Fe,Ln,gr)):gr:Fe&32?gr:mt}function Fl(Fe,gr,Ln,bs){return ou(Fe),ak(128,{switchStatement:gr,clauseStart:Ln,clauseEnd:bs},Fe)}function ba(Fe,gr,Ln){ou(gr),Ke=!0;let bs=ak(Fe,Ln,gr);return Ee&&Zn(Ee,bs),bs}function Oo(Fe,gr){return ou(Fe),Ke=!0,ak(512,gr,Fe)}function hc(Fe){let gr=Fe.antecedent;return gr?gr.length===1?gr[0]:Fe:mt}function yr(Fe){let gr=Fe.parent;switch(gr.kind){case 246:case 248:case 247:return gr.expression===Fe;case 249:case 228:return gr.condition===Fe}return!1}function hn(Fe){for(;;)if(Fe.kind===218)Fe=Fe.expression;else if(Fe.kind===225&&Fe.operator===54)Fe=Fe.operand;else return Yne(Fe)}function Pi(Fe){return TAe(JA(Fe))}function co(Fe){for(;dI(Fe.parent)||N0(Fe.parent)&&Fe.parent.operator===54;)Fe=Fe.parent;return!yr(Fe)&&!hn(Fe.parent)&&!(ZC(Fe.parent)&&Fe.parent.expression===Fe)}function pa(Fe,gr,Ln,bs){let Jl=Ie,tg=_e;Ie=Ln,_e=bs,Fe(gr),Ie=Jl,_e=tg}function Pa(Fe,gr,Ln){pa(Ss,Fe,gr,Ln),(!Fe||!Pi(Fe)&&!hn(Fe)&&!(ZC(Fe)&&g3(Fe)))&&(Zn(gr,ya(32,M,Fe)),Zn(Ln,ya(64,M,Fe)))}function $c(Fe,gr,Ln){let bs=ee,Jl=re;ee=gr,re=Ln,Ss(Fe),ee=bs,re=Jl}function Qu(Fe,gr){let Ln=Te;for(;Ln&&Fe.parent.kind===257;)Ln.continueTarget=gr,Ln=Ln.next,Fe=Fe.parent;return gr}function Rg(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si();Zn(gr,M),M=gr,Pa(Fe.expression,Ln,bs),M=hc(Ln),$c(Fe.statement,bs,gr),Zn(gr,M),M=hc(bs)}function Cs(Fe){let gr=ks(),Ln=Qu(Fe,si()),bs=si();Zn(gr,M),M=gr,$c(Fe.statement,bs,Ln),Zn(Ln,M),M=hc(Ln),Pa(Fe.expression,gr,bs),M=hc(bs)}function Tu(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si(),Jl=si();Ss(Fe.initializer),Zn(gr,M),M=gr,Pa(Fe.condition,Ln,Jl),M=hc(Ln),$c(Fe.statement,Jl,bs),Zn(bs,M),M=hc(bs),Ss(Fe.incrementor),Zn(gr,M),M=hc(Jl)}function Wr(Fe){let gr=Qu(Fe,ks()),Ln=si();Ss(Fe.expression),Zn(gr,M),M=gr,Fe.kind===251&&Ss(Fe.awaitModifier),Zn(Ln,M),Ss(Fe.initializer),Fe.initializer.kind!==262&&En(Fe.initializer),$c(Fe.statement,Ln,gr),Zn(gr,M),M=hc(Ln)}function Wn(Fe){let gr=si(),Ln=si(),bs=si();Pa(Fe.expression,gr,Ln),M=hc(gr),Ss(Fe.thenStatement),Zn(bs,M),M=hc(Ln),Ss(Fe.elseStatement),Zn(bs,M),M=hc(bs)}function pt(Fe){let gr=Pe;Pe=!0,Ss(Fe.expression),Pe=gr,Fe.kind===254&&(Ze=!0,ge&&Zn(ge,M)),M=mt,Ke=!0}function on(Fe){for(let gr=Te;gr;gr=gr.next)if(gr.name===Fe)return gr}function st(Fe,gr,Ln){let bs=Fe.kind===253?gr:Ln;bs&&(Zn(bs,M),M=mt,Ke=!0)}function nr(Fe){if(Ss(Fe.label),Fe.label){let gr=on(Fe.label.escapedText);gr&&(gr.referenced=!0,st(Fe,gr.breakTarget,gr.continueTarget))}else st(Fe,ee,re)}function Zr(Fe){let gr=ge,Ln=Ee,bs=si(),Jl=si(),tg=si();if(Fe.finallyBlock&&(ge=Jl),Zn(tg,M),Ee=tg,Ss(Fe.tryBlock),Zn(bs,M),Fe.catchClause&&(M=hc(tg),tg=si(),Zn(tg,M),Ee=tg,Ss(Fe.catchClause),Zn(bs,M)),ge=gr,Ee=Ln,Fe.finallyBlock){let zl=si();zl.antecedent=Nn(Nn(bs.antecedent,tg.antecedent),Jl.antecedent),M=zl,Ss(Fe.finallyBlock),M.flags&1?M=mt:(ge&&Jl.antecedent&&Zn(ge,Ic(zl,Jl.antecedent,M)),Ee&&tg.antecedent&&Zn(Ee,Ic(zl,tg.antecedent,M)),M=bs.antecedent?Ic(zl,bs.antecedent,M):mt)}else M=hc(bs)}function Kr(Fe){let gr=si();Ss(Fe.expression);let Ln=ee,bs=Ne;ee=gr,Ne=M,Ss(Fe.caseBlock),Zn(gr,M);let Jl=F(Fe.caseBlock.clauses,tg=>tg.kind===298);Fe.possiblyExhaustive=!Jl&&!gr.antecedent,Jl||Zn(gr,Fl(Ne,Fe,0,0)),ee=Ln,Ne=bs,M=hc(gr)}function Dn(Fe){let gr=Fe.clauses,Ln=Fe.parent.expression.kind===112||Yt(Fe.parent.expression),bs=mt;for(let Jl=0;JlVh(Ln)||yf(Ln))}function Ag(Fe){Fe.flags&33554432&&!mc(Fe)?Fe.flags|=128:Fe.flags&=-129}function dg(Fe){if(Ag(Fe),a_(Fe))if(Ga(Fe,32)&&ni(Fe,Z.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),one(Fe))yu(Fe);else{let gr;if(Fe.name.kind===11){let{text:bs}=Fe.name;gr=sQ(bs),gr===void 0&&ni(Fe.name,Z.Pattern_0_can_have_at_most_one_Asterisk_character,bs)}let Ln=gs(Fe,512,110735);s.patternAmbientModules=Ft(s.patternAmbientModules,gr&&!Xs(gr)?{pattern:gr,symbol:Ln}:void 0)}else{let gr=yu(Fe);if(gr!==0){let{symbol:Ln}=Fe;Ln.constEnumOnlyModule=!(Ln.flags&304)&&gr===2&&Ln.constEnumOnlyModule!==!1}}}function yu(Fe){let gr=QF(Fe),Ln=gr!==0;return gs(Fe,Ln?512:1024,Ln?110735:0),gr}function RI(Fe){let gr=_r(131072,it(Fe));Gt(gr,Fe,131072);let Ln=_r(2048,"__type");Gt(Ln,Fe,2048),Ln.members=$u(),Ln.members.set(gr.escapedName,gr)}function pI(Fe){return bu(Fe,4096,"__object")}function Ip(Fe){return bu(Fe,4096,"__jsxAttributes")}function kl(Fe,gr,Ln){return gs(Fe,gr,Ln)}function bu(Fe,gr,Ln){let bs=_r(gr,Ln);return gr&106508&&(bs.parent=h.symbol),Gt(bs,Fe,gr),bs}function sm(Fe,gr,Ln){switch(S.kind){case 268:ur(Fe,gr,Ln);break;case 308:if(Sl(h)){ur(Fe,gr,Ln);break}default:pe.assertNode(S,HI),S.locals||(S.locals=$u(),Ui(S)),tr(S.locals,void 0,Fe,gr,Ln)}}function qp(){if(!T)return;let Fe=h,gr=R,Ln=S,bs=d,Jl=M;for(let tg of T){let zl=tg.parent.parent;h=R7(zl)||s,S=sS(zl)||s,M=ak(2,void 0,void 0),d=tg,Ss(tg.typeExpression);let Su=fl(tg);if((TEe(tg)||!tg.fullName)&&Su&&kF(Su.parent)){let xf=vv(Su.parent);if(xf){B1(s.symbol,Su.parent,xf,!!ji(Su,YC=>jo(YC)&&YC.name.escapedText==="prototype"),!1);let Ug=h;switch(sU(Su.parent)){case 1:case 2:Sl(s)?h=s:h=void 0;break;case 4:h=Su.parent.expression;break;case 3:h=Su.parent.expression.name;break;case 5:h=CQ(s,Su.parent.expression)?s:jo(Su.parent.expression)?Su.parent.expression.name:Su.parent.expression;break;case 0:return pe.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}h&&ur(tg,524288,788968),h=Ug}}else TEe(tg)||!tg.fullName||tg.fullName.kind===80?(d=tg.parent,sm(tg,524288,788968)):Ss(tg.fullName)}h=Fe,R=gr,S=Ln,d=bs,M=Jl}function Jg(){if(V===void 0)return;let Fe=h,gr=R,Ln=S,bs=d,Jl=M;for(let tg of V){let zl=NW(tg),Su=zl?R7(zl):void 0,xf=zl?sS(zl):void 0;h=Su||s,S=xf||s,M=ak(2,void 0,void 0),d=tg,Ss(tg.importClause)}h=Fe,R=gr,S=Ln,d=bs,M=Jl}function ch(Fe){if(!s.parseDiagnostics.length&&!(Fe.flags&33554432)&&!(Fe.flags&16777216)&&!HZe(Fe)){let gr=cv(Fe);if(gr===void 0)return;Ye&&gr>=119&&gr<=127?s.bindDiagnostics.push(Lt(Fe,hS(Fe),Md(Fe))):gr===135?Lm(s)&&sAe(Fe)?s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,Md(Fe))):Fe.flags&65536&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Md(Fe))):gr===127&&Fe.flags&16384&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Md(Fe)))}}function hS(Fe){return _C(Fe)?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function Au(Fe){Fe.escapedText==="#constructor"&&(s.parseDiagnostics.length||s.bindDiagnostics.push(Lt(Fe,Z.constructor_is_a_reserved_word,Md(Fe))))}function Eg(Fe){Ye&&x_(Fe.left)&&$D(Fe.operatorToken.kind)&&tp(Fe,Fe.left)}function zA(Fe){Ye&&Fe.variableDeclaration&&tp(Fe,Fe.variableDeclaration.name)}function NA(Fe){if(Ye&&Fe.expression.kind===80){let gr=qa(s,Fe.expression);s.bindDiagnostics.push(rm(s,gr.start,gr.length,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function oi(Fe){return Ir(Fe)&&(Fe.escapedText==="eval"||Fe.escapedText==="arguments")}function tp(Fe,gr){if(gr&&gr.kind===80){let Ln=gr;if(oi(Ln)){let bs=qa(s,gr);s.bindDiagnostics.push(rm(s,bs.start,bs.length,JI(Fe),Vo(Ln)))}}}function JI(Fe){return _C(Fe)?Z.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:s.externalModuleIndicator?Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Z.Invalid_use_of_0_in_strict_mode}function Wh(Fe){Ye&&!(Fe.flags&33554432)&&tp(Fe,Fe.name)}function MC(Fe){return _C(Fe)?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}function bf(Fe){if(g<2&&S.kind!==308&&S.kind!==268&&!A3(S)){let gr=qa(s,Fe);s.bindDiagnostics.push(rm(s,gr.start,gr.length,MC(Fe)))}}function UI(Fe){Ye&&tp(Fe,Fe.operand)}function ve(Fe){Ye&&(Fe.operator===46||Fe.operator===47)&&tp(Fe,Fe.operand)}function mr(Fe){Ye&&ni(Fe,Z.with_statements_are_not_allowed_in_strict_mode)}function ln(Fe){Ye&&Hg(c)>=2&&(wge(Fe.statement)||Eh(Fe.statement))&&ni(Fe.label,Z.A_label_is_not_allowed_here)}function ni(Fe,gr,...Ln){let bs=rs(s,Fe.pos);s.bindDiagnostics.push(rm(s,bs.start,bs.length,gr,...Ln))}function Ls(Fe,gr,Ln){Za(Fe,gr,gr,Ln)}function Za(Fe,gr,Ln,bs){Go(Fe,{pos:JD(gr,s),end:Ln.end},bs)}function Go(Fe,gr,Ln){let bs=rm(s,gr.pos,gr.end-gr.pos,Ln);Fe?s.bindDiagnostics.push(bs):s.bindSuggestionDiagnostics=Ft(s.bindSuggestionDiagnostics,{...bs,category:2})}function Ss(Fe){if(!Fe)return;UA(Fe,d),ki&&(Fe.tracingPath=s.path);let gr=Ye;if(Vg(Fe),Fe.kind>166){let Ln=d;d=Fe;let bs=Pet(Fe);bs===0?qt(Fe):dt(Fe,bs),d=Ln}else{let Ln=d;Fe.kind===1&&(d=Fe),Uc(Fe),d=Ln}Ye=gr}function Uc(Fe){if(jm(Fe))if(wo(Fe))for(let gr of Fe.jsDoc)Ss(gr);else for(let gr of Fe.jsDoc)UA(gr,Fe),e9(gr,!1)}function el(Fe){if(!Ye)for(let gr of Fe){if(!aS(gr))return;if(Fd(gr)){Ye=!0;return}}}function Fd(Fe){let gr=SF(s,Fe.expression);return gr==='"use strict"'||gr==="'use strict'"}function Vg(Fe){switch(Fe.kind){case 80:if(Fe.flags&4096){let zl=Fe.parent;for(;zl&&!cS(zl);)zl=zl.parent;sm(zl,524288,788968);break}case 110:return M&&(un(Fe)||d.kind===305)&&(Fe.flowNode=M),ch(Fe);case 167:M&&cAe(Fe)&&(Fe.flowNode=M);break;case 237:case 108:Fe.flowNode=M;break;case 81:return Au(Fe);case 212:case 213:let gr=Fe;M&&Tr(gr)&&(gr.flowNode=M),Qye(gr)&&ym(gr),wo(gr)&&s.commonJsModuleIndicator&&dN(gr)&&!iVe(S,"module")&&tr(s.locals,void 0,gr.expression,134217729,111550);break;case 227:switch(oI(Fe)){case 1:qn(Fe);break;case 2:Js(Fe);break;case 3:KI(Fe.left,Fe);break;case 6:lf(Fe);break;case 4:DA(Fe);break;case 5:let zl=Fe.left.expression;if(wo(Fe)&&Ir(zl)){let Su=iVe(S,zl.escapedText);if(oAe(Su?.valueDeclaration)){DA(Fe);break}}f_(Fe);break;case 0:break;default:pe.fail("Unknown binary expression special property assignment kind")}return Eg(Fe);case 300:return zA(Fe);case 221:return NA(Fe);case 226:return UI(Fe);case 225:return ve(Fe);case 255:return mr(Fe);case 257:return ln(Fe);case 198:O=!0;return;case 183:break;case 169:return wa(Fe);case 170:return en(Fe);case 261:return ct(Fe);case 209:return Fe.flowNode=M,ct(Fe);case 173:case 172:return Ef(Fe);case 304:case 305:return ys(Fe,4,0);case 307:return ys(Fe,8,900095);case 180:case 181:case 182:return gs(Fe,131072,0);case 175:case 174:return ys(Fe,8192|(Fe.questionToken?16777216:0),u2(Fe)?0:103359);case 263:return gi(Fe);case 177:return gs(Fe,16384,0);case 178:return ys(Fe,32768,46015);case 179:return ys(Fe,65536,78783);case 185:case 318:case 324:case 186:return RI(Fe);case 188:case 323:case 201:return om(Fe);case 333:return Bs(Fe);case 211:return pI(Fe);case 219:case 220:return _i(Fe);case 214:switch(oI(Fe)){case 7:return b2(Fe);case 8:return or(Fe);case 9:return fI(Fe);case 0:break;default:return pe.fail("Unknown call expression assignment declaration kind")}wo(Fe)&&gR(Fe);break;case 232:case 264:return Ye=!0,mS(Fe);case 265:return sm(Fe,64,788872);case 266:return sm(Fe,524288,788968);case 267:return VN(Fe);case 268:return dg(Fe);case 293:return Ip(Fe);case 292:return kl(Fe,4,0);case 272:case 275:case 277:case 282:return gs(Fe,2097152,2097152);case 271:return v1(Fe);case 274:return y2(Fe);case 279:return V_(Fe);case 278:return lh(Fe);case 308:return el(Fe.statements),Sh();case 242:if(!A3(Fe.parent))return;case 269:return el(Fe.statements);case 342:if(Fe.parent.kind===324)return en(Fe);if(Fe.parent.kind!==323)break;case 349:let Jl=Fe,tg=Jl.isBracketed||Jl.typeExpression&&Jl.typeExpression.type.kind===317?16777220:4;return gs(Jl,tg,0);case 347:case 339:case 341:return(T||(T=[])).push(Fe);case 340:return Ss(Fe.typeExpression);case 352:return(V||(V=[])).push(Fe)}}function Ef(Fe){let gr=n0(Fe),Ln=gr?98304:4,bs=gr?13247:0;return ys(Fe,Ln|(Fe.questionToken?16777216:0),bs)}function om(Fe){return bu(Fe,2048,"__type")}function Sh(){if(Ag(s),Lm(s))Zp();else if(Zu(s)){Zp();let Fe=s.symbol;tr(s.symbol.exports,s.symbol,s,4,-1),s.symbol=Fe}}function Zp(){bu(s,512,`"${a0(s.fileName)}"`)}function lh(Fe){if(!h.symbol||!h.symbol.exports)bu(Fe,111551,it(Fe));else{let gr=Nne(Fe)?2097152:4,Ln=tr(h.symbol.exports,h.symbol,Fe,gr,-1);Fe.isExportEquals&&V7(Ln,Fe)}}function v1(Fe){zt(Fe.modifiers)&&s.bindDiagnostics.push(Lt(Fe,Z.Modifiers_cannot_appear_here));let gr=al(Fe.parent)?Lm(Fe.parent)?Fe.parent.isDeclarationFile?void 0:Z.Global_module_exports_may_only_appear_in_declaration_files:Z.Global_module_exports_may_only_appear_in_module_files:Z.Global_module_exports_may_only_appear_at_top_level;gr?s.bindDiagnostics.push(Lt(Fe,gr)):(s.symbol.globalExports=s.symbol.globalExports||$u(),tr(s.symbol.globalExports,s.symbol,Fe,2097152,2097152))}function V_(Fe){!h.symbol||!h.symbol.exports?bu(Fe,8388608,it(Fe)):Fe.exportClause?ok(Fe.exportClause)&&(UA(Fe.exportClause,Fe),tr(h.symbol.exports,h.symbol,Fe.exportClause,2097152,2097152)):tr(h.symbol.exports,h.symbol,Fe,8388608,0)}function y2(Fe){Fe.name&&gs(Fe,2097152,2097152)}function Ob(Fe){return s.externalModuleIndicator&&s.externalModuleIndicator!==!0?!1:(s.commonJsModuleIndicator||(s.commonJsModuleIndicator=Fe,s.externalModuleIndicator||Zp()),!0)}function or(Fe){if(!Ob(Fe))return;let gr=rC(Fe.arguments[0],void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));gr&&tr(gr.exports,gr,Fe,1048580,0)}function qn(Fe){if(!Ob(Fe))return;let gr=rC(Fe.left.expression,void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));if(gr){let bs=IAe(Fe.right)&&(y3(Fe.left.expression)||dN(Fe.left.expression))?2097152:1048580;UA(Fe.left,Fe),tr(gr.exports,gr,Fe.left,bs,0)}}function Js(Fe){if(!Ob(Fe))return;let gr=yne(Fe.right);if(Sbe(gr)||h===s&&CQ(s,gr))return;if(ag(gr)&&ue(gr.properties,l0)){F(gr.properties,Yl);return}let Ln=Nne(Fe)?2097152:1049092,bs=tr(s.symbol.exports,s.symbol,Fe,Ln|67108864,0);V7(bs,Fe)}function Yl(Fe){tr(s.symbol.exports,s.symbol,Fe,69206016,0)}function DA(Fe){if(pe.assert(wo(Fe)),po(Fe)&&jo(Fe.left)&&p(Fe.left.name)||jo(Fe)&&p(Fe.name))return;let Ln=i0(Fe,!1,!1);switch(Ln.kind){case 263:case 219:let bs=Ln.symbol;if(po(Ln.parent)&&Ln.parent.operatorToken.kind===64){let zl=Ln.parent.left;RW(zl)&&xF(zl.expression)&&(bs=Pb(zl.expression.expression,_))}bs&&bs.valueDeclaration&&(bs.members=bs.members||$u(),zD(Fe)?kA(Fe,bs,bs.members):tr(bs.members,bs,Fe,67108868,0),Gt(bs,bs.valueDeclaration,32));break;case 177:case 173:case 175:case 178:case 179:case 176:let Jl=Ln.parent,tg=lg(Ln)?Jl.symbol.exports:Jl.symbol.members;zD(Fe)?kA(Fe,Jl.symbol,tg):tr(tg,Jl.symbol,Fe,67108868,0,!0);break;case 308:if(zD(Fe))break;Ln.commonJsModuleIndicator?tr(Ln.symbol.exports,Ln.symbol,Fe,1048580,0):gs(Fe,1,111550);break;case 268:break;default:pe.failBadSyntaxKind(Ln)}}function kA(Fe,gr,Ln){tr(Ln,gr,Fe,4,0,!0,!0),gA(Fe,gr)}function gA(Fe,gr){gr&&(gr.assignmentDeclarationMembers||(gr.assignmentDeclarationMembers=new Map)).set(id(Fe),Fe)}function ym(Fe){Fe.expression.kind===110?DA(Fe):RW(Fe)&&Fe.parent.parent.kind===308&&(xF(Fe.expression)?KI(Fe,Fe.parent):HC(Fe))}function lf(Fe){UA(Fe.left,Fe),UA(Fe.right,Fe),lk(Fe.left.expression,Fe.left,!1,!0)}function fI(Fe){let gr=Pb(Fe.arguments[0].expression);gr&&gr.valueDeclaration&&Gt(gr,gr.valueDeclaration,32),dy(Fe,gr,!0)}function KI(Fe,gr){let Ln=Fe.expression,bs=Ln.expression;UA(bs,Ln),UA(Ln,Fe),UA(Fe,gr),lk(bs,Fe,!0,!0)}function b2(Fe){let gr=Pb(Fe.arguments[0]),Ln=Fe.parent.parent.kind===308;gr=B1(gr,Fe.arguments[0],Ln,!1,!1),dy(Fe,gr,!1)}function f_(Fe){var gr;let Ln=Pb(Fe.left.expression,S)||Pb(Fe.left.expression,h);if(!wo(Fe)&&!FZe(Ln))return;let bs=CU(Fe.left);if(!(Ir(bs)&&((gr=iVe(h,bs.escapedText))==null?void 0:gr.flags)&2097152))if(UA(Fe.left,Fe),UA(Fe.right,Fe),Ir(Fe.left.expression)&&h===s&&CQ(s,Fe.left.expression))qn(Fe);else if(zD(Fe)){bu(Fe,67108868,"__computed");let Jl=B1(Ln,Fe.left.expression,vv(Fe.left),!1,!1);gA(Fe,Jl)}else HC(Ma(Fe.left,E3))}function HC(Fe){pe.assert(!Ir(Fe)),UA(Fe.expression,Fe),lk(Fe.expression,Fe,!1,!1)}function B1(Fe,gr,Ln,bs,Jl){return Fe?.flags&2097152||(Ln&&!bs&&(Fe=rC(gr,Fe,(Su,xf,Ug)=>{if(xf)return Gt(xf,Su,67110400),xf;{let YC=Ug?Ug.exports:s.jsGlobalAugmentations||(s.jsGlobalAugmentations=$u());return tr(YC,Ug,Su,67110400,110735)}})),Jl&&Fe&&Fe.valueDeclaration&&Gt(Fe,Fe.valueDeclaration,32)),Fe}function dy(Fe,gr,Ln){if(!gr||!Qx(gr))return;let bs=Ln?gr.members||(gr.members=$u()):gr.exports||(gr.exports=$u()),Jl=0,tg=0;Gd(XY(Fe))?(Jl=8192,tg=103359):Ll(Fe)&&b3(Fe)&&(zt(Fe.arguments[2].properties,zl=>{let Su=fl(zl);return!!Su&&Ir(Su)&&Vo(Su)==="set"})&&(Jl|=65540,tg|=78783),zt(Fe.arguments[2].properties,zl=>{let Su=fl(zl);return!!Su&&Ir(Su)&&Vo(Su)==="get"})&&(Jl|=32772,tg|=46015)),Jl===0&&(Jl=4,tg=0),tr(bs,gr,Fe,Jl|67108864,tg&-67108865)}function vv(Fe){return po(Fe.parent)?Xx(Fe.parent).parent.kind===308:Fe.parent.parent.kind===308}function lk(Fe,gr,Ln,bs){let Jl=Pb(Fe,S)||Pb(Fe,h),tg=vv(gr);Jl=B1(Jl,gr.expression,tg,Ln,bs),dy(gr,Jl,Ln)}function Qx(Fe){if(Fe.flags&1072)return!0;let gr=Fe.valueDeclaration;if(gr&&Ll(gr))return!!XY(gr);let Ln=gr?nc(gr)?gr.initializer:po(gr)?gr.right:jo(gr)&&po(gr.parent)?gr.parent.right:void 0:void 0;if(Ln=Ln&&yne(Ln),Ln){let bs=xF(nc(gr)?gr.name:po(gr)?gr.left:gr);return!!YL(po(Ln)&&(Ln.operatorToken.kind===57||Ln.operatorToken.kind===61)?Ln.right:Ln,bs)}return!1}function Xx(Fe){for(;po(Fe.parent);)Fe=Fe.parent;return Fe.parent}function Pb(Fe,gr=h){if(Ir(Fe))return iVe(gr,Fe.escapedText);{let Ln=Pb(Fe.expression);return Ln&&Ln.exports&&Ln.exports.get(KD(Fe))}}function rC(Fe,gr,Ln){if(CQ(s,Fe))return s.symbol;if(Ir(Fe))return Ln(Fe,Pb(Fe),gr);{let bs=rC(Fe.expression,gr,Ln),Jl=bne(Fe);return p(Jl)&&pe.fail("unexpected PrivateIdentifier"),Ln(Jl,bs&&bs.exports&&bs.exports.get(KD(Fe)),bs)}}function gR(Fe){!s.commonJsModuleIndicator&&ly(Fe,!1)&&Ob(Fe)}function mS(Fe){if(Fe.kind===264)sm(Fe,32,899503);else{let Jl=Fe.name?Fe.name.escapedText:"__class";bu(Fe,32,Jl),Fe.name&&Ct.add(Fe.name.escapedText)}let{symbol:gr}=Fe,Ln=_r(4194308,"prototype"),bs=gr.exports.get(Ln.escapedName);bs&&(Fe.name&&UA(Fe.name,Fe),s.bindDiagnostics.push(Lt(bs.declarations[0],Z.Duplicate_identifier_0,of(Ln)))),gr.exports.set(Ln.escapedName,Ln),Ln.parent=gr}function VN(Fe){return OA(Fe)?sm(Fe,128,899967):sm(Fe,256,899327)}function ct(Fe){if(Ye&&tp(Fe,Fe.name),!Nu(Fe.name)){let gr=Fe.kind===261?Fe:Fe.parent.parent;wo(Fe)&&wW(gr)&&!uv(Fe)&&!(Hc(Fe)&32)?gs(Fe,2097152,2097152):KJ(Fe)?sm(Fe,2,111551):KL(Fe)?gs(Fe,1,111551):gs(Fe,1,111550)}}function en(Fe){if(!(Fe.kind===342&&h.kind!==324)&&(Ye&&!(Fe.flags&33554432)&&tp(Fe,Fe.name),Nu(Fe.name)?bu(Fe,1,"__"+Fe.parent.parameters.indexOf(Fe)):gs(Fe,1,111551),We(Fe,Fe.parent))){let gr=Fe.parent.parent;tr(gr.symbol.members,gr.symbol,Fe,4|(Fe.questionToken?16777216:0),0)}}function gi(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&Q7(Fe)&&(et|=4096),Wh(Fe),Ye?(bf(Fe),sm(Fe,16,110991)):gs(Fe,16,110991)}function _i(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&Q7(Fe)&&(et|=4096),M&&(Fe.flowNode=M),Wh(Fe);let gr=Fe.name?Fe.name.escapedText:"__function";return bu(Fe,16,gr)}function ys(Fe,gr,Ln){return!s.isDeclarationFile&&!(Fe.flags&33554432)&&Q7(Fe)&&(et|=4096),M&&tAe(Fe)&&(Fe.flowNode=M),zD(Fe)?bu(Fe,gr,"__computed"):gs(Fe,gr,Ln)}function $s(Fe){let gr=ji(Fe,Ln=>Ln.parent&&I2(Ln.parent)&&Ln.parent.extendsType===Ln);return gr&&gr.parent}function wa(Fe){if(PB(Fe.parent)){let gr=pAe(Fe.parent);gr?(pe.assertNode(gr,HI),gr.locals??(gr.locals=$u()),tr(gr.locals,void 0,Fe,262144,526824)):gs(Fe,262144,526824)}else if(Fe.parent.kind===196){let gr=$s(Fe.parent);gr?(pe.assertNode(gr,HI),gr.locals??(gr.locals=$u()),tr(gr.locals,void 0,Fe,262144,526824)):bu(Fe,262144,it(Fe))}else gs(Fe,262144,526824)}function pc(Fe){let gr=QF(Fe);return gr===1||gr===2&&Lb(c)}function cl(Fe){if(!(M.flags&1))return!1;if(M===mt&&(VJ(Fe)&&Fe.kind!==243||Fe.kind===264||vtn(Fe,c)||Fe.kind===268&&pc(Fe))&&(M=yt,!c.allowUnreachableCode)){let Ln=vLe(c)&&!(Fe.flags&33554432)&&(!Eh(Fe)||!!(hm(Fe.declarationList)&7)||Fe.declarationList.declarations.some(bs=>!!bs.initializer));cvs(Fe,c,(bs,Jl)=>Za(Ln,bs,Jl,Z.Unreachable_code_detected))}return!0}}function vtn(s,c){return s.kind===267&&(!OA(s)||Lb(c))}function cvs(s,c,g){if(Lc(s)&&d(s)&&eg(s.parent)){let{statements:_}=s.parent,S=zbe(_,s);Fn(S,d,(R,T)=>g(S[R],S[T-1]))}else g(s,s);function d(_){return!ah(_)&&!h(_)&&!(Eh(_)&&!(hm(_)&7)&&_.declarationList.declarations.some(S=>!S.initializer))}function h(_){switch(_.kind){case 265:case 266:return!0;case 268:return QF(_)!==1;case 267:return!vtn(_,c);default:return!1}}}function CQ(s,c){let g=0,d=aA();for(d.enqueue(c);!d.isEmpty()&&g<100;){if(g++,c=d.dequeue(),y3(c)||dN(c))return!0;if(Ir(c)){let h=iVe(s,c.escapedText);if(h&&h.valueDeclaration&&nc(h.valueDeclaration)&&h.valueDeclaration.initializer){let _=h.valueDeclaration.initializer;d.enqueue(_),zm(_,!0)&&(d.enqueue(_.left),d.enqueue(_.right))}}}return!1}function Pet(s){switch(s.kind){case 232:case 264:case 267:case 211:case 188:case 323:case 293:return 1;case 265:return 65;case 268:case 266:case 201:case 182:return 33;case 308:return 37;case 178:case 179:case 175:if(tAe(s))return 173;case 177:case 263:case 174:case 180:case 324:case 318:case 185:case 181:case 186:case 176:return 45;case 352:return 37;case 219:case 220:return 61;case 269:return 4;case 173:return s.initializer?4:0;case 300:case 249:case 250:case 251:case 270:return 34;case 242:return Eu(s.parent)||Al(s.parent)?0:34}return 0}function iVe(s,c){var g,d,h,_;let S=(d=(g=Gs(s,HI))==null?void 0:g.locals)==null?void 0:d.get(c);if(S)return S.exportSymbol??S;if(al(s)&&s.jsGlobalAugmentations&&s.jsGlobalAugmentations.has(c))return s.jsGlobalAugmentations.get(c);if(yE(s))return(_=(h=s.symbol)==null?void 0:h.exports)==null?void 0:_.get(c)}function PPt(s,c,g,d,h,_,S,R,T,O){return V;function V(M=()=>!0){let ee=[],re=[];return{walkType:Tt=>{try{return ge(Tt),{visitedTypes:Kh(ee),visitedSymbols:Kh(re)}}finally{ft(ee),ft(re)}},walkSymbol:Tt=>{try{return Ye(Tt),{visitedTypes:Kh(ee),visitedSymbols:Kh(re)}}finally{ft(ee),ft(re)}}};function ge(Tt){if(!(!Tt||ee[Tt.id]||(ee[Tt.id]=Tt,Ye(Tt.symbol)))){if(Tt.flags&524288){let Qe=Tt,Ct=Qe.objectFlags;Ct&4&&Ie(Tt),Ct&32&&Ze(Tt),Ct&3&&Ke(Tt),Ct&24&&et(Qe)}Tt.flags&262144&&_e(Tt),Tt.flags&3145728&&Ee(Tt),Tt.flags&4194304&&Ne(Tt),Tt.flags&8388608&&Te(Tt)}}function Ie(Tt){ge(Tt.target),F(O(Tt),ge)}function _e(Tt){ge(R(Tt))}function Ee(Tt){F(Tt.types,ge)}function Ne(Tt){ge(Tt.type)}function Te(Tt){ge(Tt.objectType),ge(Tt.indexType),ge(Tt.constraint)}function Ze(Tt){ge(Tt.typeParameter),ge(Tt.constraintType),ge(Tt.templateType),ge(Tt.modifiersType)}function Pe(Tt){let at=c(Tt);at&&ge(at.type),F(Tt.typeParameters,ge);for(let Qe of Tt.parameters)Ye(Qe);ge(s(Tt)),ge(g(Tt))}function Ke(Tt){et(Tt),F(Tt.typeParameters,ge),F(d(Tt),ge),ge(Tt.thisType)}function et(Tt){let at=h(Tt);for(let Qe of at.indexInfos)ge(Qe.keyType),ge(Qe.type);for(let Qe of at.callSignatures)Pe(Qe);for(let Qe of at.constructSignatures)Pe(Qe);for(let Qe of at.properties)Ye(Qe)}function Ye(Tt){if(!Tt)return!1;let at=xg(Tt);if(re[at])return!1;if(re[at]=Tt,!M(Tt))return!0;let Qe=_(Tt);return ge(Qe),Tt.exports&&Tt.exports.forEach(Ye),F(Tt.declarations,Ct=>{if(Ct.type&&Ct.type.kind===187){let mt=Ct.type,yt=S(T(mt.exprName));Ye(yt)}}),!1}}}var XF={};o(XF,{RelativePreference:()=>Btn,countPathComponents:()=>aVe,forEachFileNameOfModule:()=>ktn,getLocalModuleSpecifierBetweenFileNames:()=>pvs,getModuleSpecifier:()=>gvs,getModuleSpecifierPreferences:()=>$Ee,getModuleSpecifiers:()=>Rtn,getModuleSpecifiersWithCacheInfo:()=>Ntn,getNodeModulesPackageName:()=>Avs,tryGetJSExtensionForFile:()=>Het,tryGetModuleSpecifiersFromCache:()=>dvs,tryGetRealFileNameForNonJsDeclarationFileName:()=>Ltn,updateModuleSpecifier:()=>uvs});var lvs=VA(s=>{try{let c=s.indexOf("/");if(c!==0)return new RegExp(s);let g=s.lastIndexOf("/");if(c===g)return new RegExp(s);for(;(c=s.indexOf("/",c+1))!==g;)if(s[c-1]!=="\\")return new RegExp(s);let d=s.substring(g+1).replace(/[^iu]/g,"");return s=s.substring(1,g),new RegExp(s,d)}catch{return}}),Btn=(s=>(s[s.Relative=0]="Relative",s[s.NonRelative=1]="NonRelative",s[s.Shortest=2]="Shortest",s[s.ExternalNonRelative=3]="ExternalNonRelative",s))(Btn||{});function $Ee({importModuleSpecifierPreference:s,importModuleSpecifierEnding:c,autoImportSpecifierExcludeRegexes:g},d,h,_,S){let R=T();return{excludeRegexes:g,relativePreference:S!==void 0?Xr(S)?0:1:s==="relative"?0:s==="non-relative"?1:s==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:O=>{let V=Yet(_,d,h),M=O!==V?T(O):R,ee=G_(h);if((O??V)===99&&3<=ee&&ee<=99)return Qie(h,_.fileName)?[3,2]:[2];if(G_(h)===1)return M===2?[2,1]:[1,2];let re=Qie(h,_.fileName);switch(M){case 2:return re?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return re?[1,0,3,2]:[1,0,2];case 0:return re?[0,1,3,2]:[0,1,2];default:pe.assertNever(M)}}};function T(O){if(S!==void 0){if(CN(S))return 2;if(di(S,"/index"))return 1}return LLe(c,O??Yet(_,d,h),h,AN(_)?_:void 0)}}function uvs(s,c,g,d,h,_,S={}){let R=wtn(s,c,g,d,h,$Ee({},h,s,c,_),{},S);if(R!==_)return R}function gvs(s,c,g,d,h,_={}){return wtn(s,c,g,d,h,$Ee({},h,s,c),{},_)}function Avs(s,c,g,d,h,_={}){let S=oVe(c.fileName,d),R=xtn(S,g,d,h,s,_);return J(R,T=>YPt(T,S,c,d,s,h,!0,_.overrideImportMode))}function wtn(s,c,g,d,h,_,S,R={}){let T=oVe(g,h),O=xtn(T,d,h,S,s,R);return J(O,V=>YPt(V,T,c,h,s,S,void 0,R.overrideImportMode))||MPt(d,T,s,h,R.overrideImportMode||Yet(c,h,s),_)}function dvs(s,c,g,d,h={}){let _=Ttn(s,c,g,d,h);return _[1]&&{kind:_[0],moduleSpecifiers:_[1],computedWithoutCache:!1}}function Ttn(s,c,g,d,h={}){var _;let S=UJ(s);if(!S)return E;let R=(_=g.getModuleSpecifierCache)==null?void 0:_.call(g),T=R?.get(c.path,S.path,d,h);return[T?.kind,T?.moduleSpecifiers,S,T?.modulePaths,R]}function Rtn(s,c,g,d,h,_,S={}){return Ntn(s,c,g,d,h,_,S,!1).moduleSpecifiers}function Ntn(s,c,g,d,h,_,S={},R){let T=!1,O=Cvs(s,c);if(O)return{kind:"ambient",moduleSpecifiers:R&&sVe(O,_.autoImportSpecifierExcludeRegexes)?E:[O],computedWithoutCache:T};let[V,M,ee,re,ge]=Ttn(s,d,h,_,S);if(M)return{kind:V,moduleSpecifiers:M,computedWithoutCache:T};if(!ee)return{kind:void 0,moduleSpecifiers:E,computedWithoutCache:T};T=!0,re||(re=Gtn(oVe(d.fileName,h),ee.originalFileName,h,g,S));let Ie=fvs(re,g,d,h,_,S,R);return ge?.set(d.path,ee.path,_,S,Ie.kind,re,Ie.moduleSpecifiers),Ie}function pvs(s,c,g,d,h,_={}){let S=oVe(s.fileName,d),R=_.overrideImportMode??s.impliedNodeFormat;return MPt(c,S,g,d,R,$Ee(h,d,g,s))}function fvs(s,c,g,d,h,_={},S){let R=oVe(g.fileName,d),T=$Ee(h,d,c,g),O=AN(g)&&F(s,Ie=>F(d.getFileIncludeReasons().get(Pu(Ie.path,d.getCurrentDirectory(),R.getCanonicalFileName)),_e=>{if(_e.kind!==3||_e.file!==g.path)return;let Ee=d.getModeForResolutionAtIndex(g,_e.index),Ne=_.overrideImportMode??d.getDefaultResolutionModeForFile(g);if(Ee!==Ne&&Ee!==void 0&&Ne!==void 0)return;let Te=h1e(g,_e.index).text;return T.relativePreference!==1||!mp(Te)?Te:void 0}));if(O)return{kind:void 0,moduleSpecifiers:[O],computedWithoutCache:!0};let V=zt(s,Ie=>Ie.isInNodeModules),M,ee,re,ge;for(let Ie of s){let _e=Ie.isInNodeModules?YPt(Ie,R,g,d,c,h,void 0,_.overrideImportMode):void 0;if(_e&&!(S&&sVe(_e,T.excludeRegexes))&&(M=Ft(M,_e),Ie.isRedirect))return{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0};let Ee=MPt(Ie.path,R,c,d,_.overrideImportMode||g.impliedNodeFormat,T,Ie.isRedirect||!!_e);!Ee||S&&sVe(Ee,T.excludeRegexes)||(Ie.isRedirect?re=Ft(re,Ee):jh(Ee)?UW(Ee)?ge=Ft(ge,Ee):ee=Ft(ee,Ee):(S||!V||Ie.isInNodeModules)&&(ge=Ft(ge,Ee)))}return ee?.length?{kind:"paths",moduleSpecifiers:ee,computedWithoutCache:!0}:re?.length?{kind:"redirect",moduleSpecifiers:re,computedWithoutCache:!0}:M?.length?{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:ge??E,computedWithoutCache:!0}}function sVe(s,c){return zt(c,g=>{var d;return!!((d=lvs(g))!=null&&d.test(s))})}function oVe(s,c){s=Xc(s,c.getCurrentDirectory());let g=bd(c.useCaseSensitiveFileNames?c.useCaseSensitiveFileNames():!0),d=Mo(s);return{getCanonicalFileName:g,importingSourceFileName:s,sourceDirectory:d,canonicalSourceDirectory:g(d)}}function MPt(s,c,g,d,h,{getAllowedEndingsInPreferredOrder:_,relativePreference:S,excludeRegexes:R},T){let{baseUrl:O,paths:V,rootDirs:M}=g;if(T&&!V)return;let{sourceDirectory:ee,canonicalSourceDirectory:re,getCanonicalFileName:ge}=c,Ie=_(h),_e=M&&bvs(M,s,ee,ge,Ie,g)||e1e(Im(_p(ee,s,ge)),Ie,g);if(!O&&!V&&!qne(g)||S===0)return T?void 0:_e;let Ee=Xc(EAe(g,d)||O,d.getCurrentDirectory()),Ne=QPt(s,Ee,ge);if(!Ne)return T?void 0:_e;let Te=T?void 0:yvs(s,ee,g,d,h,Svs(Ie)),Ze=T||Te===void 0?V&&Ftn(Ne,V,Ie,Ee,ge,d,g):void 0;if(T)return Ze;let Pe=Te??(Ze===void 0&&O!==void 0?e1e(Ne,Ie,g):Ze);if(!Pe)return _e;let Ke=sVe(_e,R),et=sVe(Pe,R);if(!Ke&&et)return _e;if(Ke&&!et||S===1&&!mp(Pe))return Pe;if(S===3&&!mp(Pe)){let Ye=g.configFilePath?Pu(Mo(g.configFilePath),d.getCurrentDirectory(),c.getCanonicalFileName):c.getCanonicalFileName(d.getCurrentDirectory()),Tt=Pu(s,Ye,ge),at=Ac(re,Ye),Qe=Ac(Tt,Ye);if(at&&!Qe||!at&&Qe)return Pe;let Ct=HPt(d,Mo(Tt)),mt=HPt(d,ee),yt=!T3(d);return Ivs(Ct,mt,yt)?_e:Pe}return Vtn(Pe)||aVe(_e)s.fileExists(Ro(g,"package.json"))?g:void 0)}function ktn(s,c,g,d,h){var _,S;let R=qD(g),T=g.getCurrentDirectory(),O=g.isSourceOfProjectReferenceRedirect(c)?(_=g.getRedirectFromSourceFile(c))==null?void 0:_.outputDts:void 0,V=Pu(c,T,R),M=g.redirectTargetsMap.get(V)||E,re=[...O?[O]:E,c,...M].map(Ne=>Xc(Ne,T)),ge=!ue(re,Cz);if(!d){let Ne=F(re,Te=>!(ge&&Cz(Te))&&h(Te,O===Te));if(Ne)return Ne}let Ie=(S=g.getSymlinkCache)==null?void 0:S.call(g).getSymlinkedDirectoriesByRealpath(),_e=Xc(c,T);return Ie&&NN(g,Mo(_e),Ne=>{let Te=Ie.get(Cp(Pu(Ne,T,R)));if(Te)return nv(s,Ne,R)?!1:F(re,Ze=>{if(!nv(Ze,Ne,R))return;let Pe=_p(Ne,Ze,R);for(let Ke of Te){let et=fE(Ke,Pe),Ye=h(et,Ze===O);if(ge=!0,Ye)return Ye}})})||(d?F(re,Ne=>ge&&Cz(Ne)?void 0:h(Ne,Ne===O)):void 0)}function xtn(s,c,g,d,h,_={}){var S;let R=Pu(s.importingSourceFileName,g.getCurrentDirectory(),qD(g)),T=Pu(c,g.getCurrentDirectory(),qD(g)),O=(S=g.getModuleSpecifierCache)==null?void 0:S.call(g);if(O){let M=O.get(R,T,d,_);if(M?.modulePaths)return M.modulePaths}let V=Gtn(s,c,g,h,_);return O&&O.setModulePaths(R,T,d,_,V),V}var hvs=["dependencies","peerDependencies","optionalDependencies"];function mvs(s){let c;for(let g of hvs){let d=s[g];d&&typeof d=="object"&&(c=Nn(c,yg(d)))}return c}function Gtn(s,c,g,d,h){var _,S;let R=(_=g.getModuleResolutionCache)==null?void 0:_.call(g),T=(S=g.getSymlinkCache)==null?void 0:S.call(g);if(R&&T&&g.readFile&&!UW(s.importingSourceFileName)){pe.type(g);let ee=Lde(R.getPackageJsonInfoCache(),g,{}),re=Vde(Mo(s.importingSourceFileName),ee);if(re){let ge=mvs(re.contents.packageJsonContent);for(let Ie of ge||E){let _e=WU(Ie,Ro(re.packageDirectory,"package.json"),d,g,R,void 0,h.overrideImportMode);T.setSymlinksFromResolution(_e.resolvedModule)}}}let O=new Map,V=!1;ktn(s.importingSourceFileName,c,g,!0,(ee,re)=>{let ge=UW(ee),Ie=QW(ee);if(!ge&&Ie){let _e=Ie.findPackageLocator(s.importingSourceFileName),Ee=Ie.findPackageLocator(ee);_e&&Ee&&_e!==Ee&&(ge=!0)}O.set(ee,{path:s.getCanonicalFileName(ee),isRedirect:re,isInNodeModules:ge}),V=V||ge});let M=[];for(let ee=s.canonicalSourceDirectory;O.size!==0;){let re=Cp(ee),ge;O.forEach(({path:_e,isRedirect:Ee,isInNodeModules:Ne},Te)=>{Ac(_e,re)&&((ge||(ge=[])).push({path:Te,isRedirect:Ee,isInNodeModules:Ne}),O.delete(Te))}),ge&&(ge.length>1&&ge.sort(Dtn),M.push(...ge));let Ie=Mo(ee);if(Ie===ee)break;ee=Ie}if(O.size){let ee=Do(O.entries(),([re,{isRedirect:ge,isInNodeModules:Ie}])=>({path:re,isRedirect:ge,isInNodeModules:Ie}));ee.length>1&&ee.sort(Dtn),M.push(...ee)}return M}function Cvs(s,c){var g;let d=(g=s.declarations)==null?void 0:g.find(S=>sne(S)&&(!BF(S)||!Xr(g2(S.name))));if(d)return d.name.text;let _=Xt(s.declarations,S=>{var R,T,O,V;if(!Lh(S))return;let M=Ie(S);if(!((R=M?.parent)!=null&&R.parent&&vN(M.parent)&&a_(M.parent.parent)&&al(M.parent.parent.parent)))return;let ee=(V=(O=(T=M.parent.parent.symbol.exports)==null?void 0:T.get("export="))==null?void 0:O.valueDeclaration)==null?void 0:V.expression;if(!ee)return;let re=c.getSymbolAtLocation(ee);if(!re)return;if((re?.flags&2097152?c.getAliasedSymbol(re):re)===S.symbol)return M.parent.parent;function Ie(_e){for(;_e.flags&8;)_e=_e.parent;return _e}})[0];if(_)return _.name.text}function Ftn(s,c,g,d,h,_,S){for(let T in c)for(let O of c[T]){let V=su(O),M=QPt(V,d,h)??V,ee=M.indexOf("*"),re=g.map(ge=>({ending:ge,value:e1e(s,[ge],S)}));if(jT(M)&&re.push({ending:void 0,value:s}),ee!==-1){let ge=M.substring(0,ee),Ie=M.substring(ee+1);for(let{ending:_e,value:Ee}of re)if(Ee.length>=ge.length+Ie.length&&Ac(Ee,ge)&&di(Ee,Ie)&&R({ending:_e,value:Ee})){let Ne=Ee.substring(ge.length,Ee.length-Ie.length);if(!mp(Ne))return Z3(T,Ne)}}else if(zt(re,ge=>ge.ending!==0&&M===ge.value)||zt(re,ge=>ge.ending===0&&M===ge.value&&R(ge)))return T}function R({ending:T,value:O}){return T!==0||O===e1e(s,[T],S,_)}}function cVe(s,c,g,d,h,_,S,R,T,O){if(typeof _=="string"){let V=!T3(c),M=()=>c.getCommonSourceDirectory(),ee=T&&mtt(g,s,V,M),re=T&&htt(g,s,V,M),ge=Xc(Ro(d,_),void 0),Ie=G3(g)?a0(g)+Het(g,s):void 0,_e=O&&FLe(g);switch(R){case 0:if(Ie&&tI(Ie,ge,V)===0||tI(g,ge,V)===0||ee&&tI(ee,ge,V)===0||re&&tI(re,ge,V)===0)return{moduleFileToTry:h};break;case 1:if(_e&&zh(g,ge,V)){let Ze=_p(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(Ie&&zh(ge,Ie,V)){let Ze=_p(ge,Ie,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(!_e&&zh(ge,g,V)){let Ze=_p(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(ee&&zh(ge,ee,V)){let Ze=_p(ge,ee,!1);return{moduleFileToTry:Ro(h,Ze)}}if(re&&zh(ge,re,V)){let Ze=o_(_p(ge,re,!1),Met(re,s));return{moduleFileToTry:Ro(h,Ze)}}break;case 2:let Ee=ge.indexOf("*"),Ne=ge.slice(0,Ee),Te=ge.slice(Ee+1);if(_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:Z3(h,Ze)}}if(Ie&&Ac(Ie,Ne,V)&&di(Ie,Te,V)){let Ze=Ie.slice(Ne.length,Ie.length-Te.length);return{moduleFileToTry:Z3(h,Ze)}}if(!_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:Z3(h,Ze)}}if(ee&&Ac(ee,Ne,V)&&di(ee,Te,V)){let Ze=ee.slice(Ne.length,ee.length-Te.length);return{moduleFileToTry:Z3(h,Ze)}}if(re&&Ac(re,Ne,V)&&di(re,Te,V)){let Ze=re.slice(Ne.length,re.length-Te.length),Pe=Z3(h,Ze),Ke=Het(re,s);return Ke?{moduleFileToTry:o_(Pe,Ke)}:void 0}break}}else{if(Array.isArray(_))return F(_,V=>cVe(s,c,g,d,h,V,S,R,T,O));if(typeof _=="object"&&_!==null){for(let V of yg(_))if(V==="default"||S.indexOf(V)>=0||zEe(S,V)){let M=_[V],ee=cVe(s,c,g,d,h,M,S,R,T,O);if(ee)return ee}}}}function _vs(s,c,g,d,h,_,S){return typeof _=="object"&&_!==null&&!Array.isArray(_)&&rVe(_)?F(yg(_),R=>{let T=Xc(Ro(h,R),void 0),O=di(R,"/")?1:R.includes("*")?2:0;return cVe(s,c,g,d,T,_[R],S,O,!1,!1)}):cVe(s,c,g,d,h,_,S,0,!1,!1)}function yvs(s,c,g,d,h,_){var S,R,T;if(!d.readFile||!qne(g))return;let O=HPt(d,c);if(!O)return;let V=Ro(O,"package.json"),M=(R=(S=d.getPackageJsonInfoCache)==null?void 0:S.call(d))==null?void 0:R.getPackageJsonInfo(V);if(bPt(M)||!d.fileExists(V))return;let ee=M?.contents.packageJsonContent||IU(d.readFile(V)),re=ee?.imports;if(!re)return;let ge=JW(g,h);return(T=F(yg(re),Ie=>{if(!Ac(Ie,"#")||Ie==="#"||Ac(Ie,"#/"))return;let _e=di(Ie,"/")?1:Ie.includes("*")?2:0;return cVe(g,d,s,O,Ie,re[Ie],ge,_e,!0,_)}))==null?void 0:T.moduleFileToTry}function bvs(s,c,g,d,h,_){let S=Ztn(c,s,d);if(S===void 0)return;let R=Ztn(g,s,d),T=jt(R,V=>lt(S,M=>Im(_p(V,M,d)))),O=oa(T,sie);if(O)return e1e(O,h,_)}function YPt({path:s,isRedirect:c},{getCanonicalFileName:g,canonicalSourceDirectory:d},h,_,S,R,T,O){if(!_.fileExists||!_.readFile)return;let V=sde(s),M,ee=QW(s);if(ee){let Ze=ee.findPackageLocator(h.fileName),Pe=ee.findPackageLocator(s);if(Ze===Pe)return;if(Ze&&Pe){let Ke=ee.getPackageInformation(Ze);if(Pe.reference===Ke.packageDependencies.get(Pe.name))M=Pe.name;else for(let[et,Ye]of Ke.packageDependencies)if(Array.isArray(Ye)&&Ye[0]===Pe.name&&Ye[1]===Pe.reference){M=et;break}V||(V={topLevelNodeModulesIndex:void 0,topLevelPackageNameIndex:void 0,packageRootIndex:ee.getPackageInformation(Pe).packageLocation.length-1,fileNameIndex:s.lastIndexOf("/")})}}if(!V)return;let ge=$Ee(R,_,S,h).getAllowedEndingsInPreferredOrder(),Ie=s,_e=!1;if(!T){let Ze=V.packageRootIndex,Pe;for(;;){let{moduleFileToTry:Ke,packageRootPath:et,blockedByExports:Ye,verbatimFromExports:Tt}=Te(Ze);if(G_(S)!==1){if(Ye)return;if(Tt)return Ke}if(et){Ie=et,_e=!0;break}if(Pe||(Pe=Ke),Ze=s.indexOf(cg,Ze+1),Ze===-1){Ie=e1e(Pe,ge,S,_);break}}}if(c&&!_e)return;if(typeof process.versions.pnp>"u"){let Ze=_.getGlobalTypingsCacheLocation&&_.getGlobalTypingsCacheLocation(),Pe=g(Ie.substring(0,V.topLevelNodeModulesIndex));if(!(Ac(d,Pe)||Ze&&Ac(g(Ze),Pe)))return}let Ee=typeof M<"u"?M+Ie.substring(V.packageRootIndex):Ie.substring(V.topLevelPackageNameIndex+1),Ne=Wde(Ee);return G_(S)===1&&Ne===Ee?void 0:Ne;function Te(Ze){var Pe,Ke;let et=s.substring(0,Ze),Ye=Ro(et,"package.json"),Tt=s,at=!1,Qe=(Ke=(Pe=_.getPackageJsonInfoCache)==null?void 0:Pe.call(_))==null?void 0:Ke.getPackageJsonInfo(Ye);if($9e(Qe)||Qe===void 0&&_.fileExists(Ye)){let Ct=Qe?.contents.packageJsonContent||IU(_.readFile(Ye)),mt=O||Yet(h,_,S);if(cz(S)){let Lt=et.substring(V.topLevelPackageNameIndex+1),je=Wde(M||Lt),Wt=JW(S,mt),_r=Ct?.exports?_vs(S,_,s,et,je,Ct.exports,Wt):void 0;if(_r)return{..._r,verbatimFromExports:!0};if(Ct?.exports)return{moduleFileToTry:s,blockedByExports:!0}}let yt=Ct?.typesVersions?z9e(Ct.typesVersions):void 0;if(yt){let Lt=s.slice(et.length+1),je=Ftn(Lt,yt.paths,ge,et,g,_,S);je===void 0?at=!0:Tt=Ro(et,je)}let Rt=Ct?.typings||Ct?.types||Ct?.main||"index.js";if(Xs(Rt)&&!(at&&jbe(dz(yt.paths),Rt))){let Lt=Pu(Rt,et,g),je=g(Tt);if(a0(Lt)===a0(je))return{packageRootPath:et,moduleFileToTry:Tt};if(Ct?.type!=="module"&&!Iu(je,tde)&&Ac(je,Lt)&&Mo(je)===sy(Lt)&&a0(dp(je))==="index")return{packageRootPath:et,moduleFileToTry:Tt}}}else{let Ct=g(Tt.substring(V.packageRootIndex+1));if(Ct==="index.d.ts"||Ct==="index.js"||Ct==="index.ts"||Ct==="index.tsx")return{moduleFileToTry:Tt,packageRootPath:et}}return{moduleFileToTry:Tt}}}function Evs(s,c){if(!s.fileExists)return;let g=Sr(gz({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(let d of g){let h=c+d;if(s.fileExists(h))return h}}function Ztn(s,c,g){return Xt(c,d=>{let h=QPt(s,d,g);return h!==void 0&&Vtn(h)?void 0:h})}function e1e(s,c,g,d){if(Iu(s,[".json",".mjs",".cjs"]))return s;let h=a0(s);if(s===h)return s;let _=c.indexOf(2),S=c.indexOf(3);if(Iu(s,[".mts",".cts"])&&S!==-1&&S<_)return s;if(Iu(s,[".d.mts",".mts",".d.cts",".cts"]))return h+Met(s,g);if(!Iu(s,[".d.ts"])&&Iu(s,[".ts"])&&s.includes(".d."))return Ltn(s);switch(c[0]){case 0:let R=aa(h,"/index");return d&&R!==h&&Evs(d,R)?h:R;case 1:return h;case 2:return h+Met(s,g);case 3:if(PC(s)){let T=c.findIndex(O=>O===0||O===1);return T!==-1&&T<_?h:h+Met(s,g)}return s;default:return pe.assertNever(c[0])}}function Ltn(s){let c=dp(s);if(!di(s,".ts")||!c.includes(".d.")||Iu(c,[".d.ts"]))return;let g=oie(s,".ts"),d=g.substring(g.lastIndexOf("."));return g.substring(0,g.indexOf(".d."))+d}function Met(s,c){return Het(s,c)??pe.fail(`Extension ${fz(s)} is unsupported:: FileName:: ${s}`)}function Het(s,c){let g=jT(s);switch(g){case".ts":case".d.ts":return".js";case".tsx":return c.jsx===1?".jsx":".js";case".js":case".jsx":case".json":return g;case".d.mts":case".mts":case".mjs":return".mjs";case".d.cts":case".cts":case".cjs":return".cjs";default:return}}function QPt(s,c,g){let d=Hf(c,s,c,g,!1);return Up(d)?void 0:d}function Vtn(s){return Ac(s,"..")}function Yet(s,c,g){return AN(s)?c.getDefaultResolutionModeForFile(s):TVe(s,g)}function Svs(s){let c=s.indexOf(3);return c>-1&&c(s[s.None=0]="None",s[s.TypeofEQString=1]="TypeofEQString",s[s.TypeofEQNumber=2]="TypeofEQNumber",s[s.TypeofEQBigInt=4]="TypeofEQBigInt",s[s.TypeofEQBoolean=8]="TypeofEQBoolean",s[s.TypeofEQSymbol=16]="TypeofEQSymbol",s[s.TypeofEQObject=32]="TypeofEQObject",s[s.TypeofEQFunction=64]="TypeofEQFunction",s[s.TypeofEQHostObject=128]="TypeofEQHostObject",s[s.TypeofNEString=256]="TypeofNEString",s[s.TypeofNENumber=512]="TypeofNENumber",s[s.TypeofNEBigInt=1024]="TypeofNEBigInt",s[s.TypeofNEBoolean=2048]="TypeofNEBoolean",s[s.TypeofNESymbol=4096]="TypeofNESymbol",s[s.TypeofNEObject=8192]="TypeofNEObject",s[s.TypeofNEFunction=16384]="TypeofNEFunction",s[s.TypeofNEHostObject=32768]="TypeofNEHostObject",s[s.EQUndefined=65536]="EQUndefined",s[s.EQNull=131072]="EQNull",s[s.EQUndefinedOrNull=262144]="EQUndefinedOrNull",s[s.NEUndefined=524288]="NEUndefined",s[s.NENull=1048576]="NENull",s[s.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",s[s.Truthy=4194304]="Truthy",s[s.Falsy=8388608]="Falsy",s[s.IsUndefined=16777216]="IsUndefined",s[s.IsNull=33554432]="IsNull",s[s.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",s[s.All=134217727]="All",s[s.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",s[s.BaseStringFacts=12582401]="BaseStringFacts",s[s.StringStrictFacts=16317953]="StringStrictFacts",s[s.StringFacts=16776705]="StringFacts",s[s.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",s[s.EmptyStringFacts=12582401]="EmptyStringFacts",s[s.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",s[s.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",s[s.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",s[s.BaseNumberFacts=12582146]="BaseNumberFacts",s[s.NumberStrictFacts=16317698]="NumberStrictFacts",s[s.NumberFacts=16776450]="NumberFacts",s[s.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",s[s.ZeroNumberFacts=12582146]="ZeroNumberFacts",s[s.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",s[s.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",s[s.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",s[s.BaseBigIntFacts=12581636]="BaseBigIntFacts",s[s.BigIntStrictFacts=16317188]="BigIntStrictFacts",s[s.BigIntFacts=16775940]="BigIntFacts",s[s.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",s[s.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",s[s.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",s[s.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",s[s.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",s[s.BaseBooleanFacts=12580616]="BaseBooleanFacts",s[s.BooleanStrictFacts=16316168]="BooleanStrictFacts",s[s.BooleanFacts=16774920]="BooleanFacts",s[s.FalseStrictFacts=12121864]="FalseStrictFacts",s[s.FalseFacts=12580616]="FalseFacts",s[s.TrueStrictFacts=7927560]="TrueStrictFacts",s[s.TrueFacts=16774920]="TrueFacts",s[s.SymbolStrictFacts=7925520]="SymbolStrictFacts",s[s.SymbolFacts=16772880]="SymbolFacts",s[s.ObjectStrictFacts=7888800]="ObjectStrictFacts",s[s.ObjectFacts=16736160]="ObjectFacts",s[s.FunctionStrictFacts=7880640]="FunctionStrictFacts",s[s.FunctionFacts=16728e3]="FunctionFacts",s[s.VoidFacts=9830144]="VoidFacts",s[s.UndefinedFacts=26607360]="UndefinedFacts",s[s.NullFacts=42917664]="NullFacts",s[s.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",s[s.EmptyObjectFacts=83886079]="EmptyObjectFacts",s[s.UnknownFacts=83886079]="UnknownFacts",s[s.AllTypeofNE=556800]="AllTypeofNE",s[s.OrFactsMask=8256]="OrFactsMask",s[s.AndFactsMask=134209471]="AndFactsMask",s))(Xet||{}),JPt=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),Jet=(s=>(s[s.Normal=0]="Normal",s[s.Contextual=1]="Contextual",s[s.Inferential=2]="Inferential",s[s.SkipContextSensitive=4]="SkipContextSensitive",s[s.SkipGenericFunctions=8]="SkipGenericFunctions",s[s.IsForSignatureHelp=16]="IsForSignatureHelp",s[s.RestBindingElement=32]="RestBindingElement",s[s.TypeOnly=64]="TypeOnly",s))(Jet||{}),Uet=(s=>(s[s.None=0]="None",s[s.BivariantCallback=1]="BivariantCallback",s[s.StrictCallback=2]="StrictCallback",s[s.IgnoreReturnTypes=4]="IgnoreReturnTypes",s[s.StrictArity=8]="StrictArity",s[s.StrictTopSignature=16]="StrictTopSignature",s[s.Callback=3]="Callback",s))(Uet||{}),vvs=hh(Ytn,wvs),Ket=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),Htn=class{};function Bvs(){this.flags=0}function id(s){return s.id||(s.id=Otn,Otn++),s.id}function xg(s){return s.id||(s.id=Wtn,Wtn++),s.id}function jet(s,c){let g=QF(s);return g===1||c&&g===2}function UPt(s){var c=[],g=u=>{c.push(u)},d,h,_=VC.getSymbolConstructor(),S=VC.getTypeConstructor(),R=VC.getSignatureConstructor(),T=0,O=0,V=0,M=0,ee=0,re=0,ge,Ie,_e=!1,Ee=$u(),Ne=[1],Te=s.getCompilerOptions(),Ze=Hg(Te),Pe=o0(Te),Ke=!!Te.experimentalDecorators,et=$ne(Te),Ye=Wbe(Te),Tt=iQ(Te),at=l_(Te,"strictNullChecks"),Qe=l_(Te,"strictFunctionTypes"),Ct=l_(Te,"strictBindCallApply"),mt=l_(Te,"strictPropertyInitialization"),yt=l_(Te,"strictBuiltinIteratorReturn"),Rt=l_(Te,"noImplicitAny"),Lt=l_(Te,"noImplicitThis"),je=l_(Te,"useUnknownInCatchVariables"),Wt=Te.exactOptionalPropertyTypes,_r=!!Te.noUncheckedSideEffectImports,Gt=u4s(),it=UKs(),kt=GOe(),tr=q5t(Te,kt.syntacticBuilderResolver),ur=$Le({evaluateElementAccessExpression:VUs,evaluateEntityNameExpression:Y0n}),Gr=$u(),dt=AA(4,"undefined");dt.declarations=[];var pr=AA(1536,"globalThis",8);pr.exports=Gr,pr.declarations=[],Gr.set(pr.escapedName,pr);var ot=AA(4,"arguments"),ir=AA(4,"require"),qt=Te.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",Yt=!Te.verbatimModuleSyntax,Tr,Cn,jn=0,Zi,Ns=0,An=ude({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:ot,globals:Gr,getSymbolOfDeclaration:Uo,error:Br,getRequiresScopeChangeCache:WQ,setRequiresScopeChangeCache:Nse,lookup:h_,onPropertyWithInvalidInitializer:Lpe,onFailedToResolveSymbol:qo,onSuccessfullyResolvedSymbol:Iy}),si=ude({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:ot,globals:Gr,getSymbolOfDeclaration:Uo,error:Br,getRequiresScopeChangeCache:WQ,setRequiresScopeChangeCache:Nse,lookup:DQs});let ks={getNodeCount:()=>Kl(s.getSourceFiles(),(u,m)=>u+m.nodeCount,0),getIdentifierCount:()=>Kl(s.getSourceFiles(),(u,m)=>u+m.identifierCount,0),getSymbolCount:()=>Kl(s.getSourceFiles(),(u,m)=>u+m.symbolCount,O),getTypeCount:()=>T,getInstantiationCount:()=>V,getRelationCacheSizes:()=>({assignable:g0.size,identity:A0.size,subtype:dk.size,strictSubtype:Sf.size}),isUndefinedSymbol:u=>u===dt,isArgumentsSymbol:u=>u===ot,isUnknownSymbol:u=>u===st,getMergedSymbol:qA,symbolIsValue:qi,getDiagnostics:q0n,getGlobalDiagnostics:lKs,getRecursionIdentity:Yot,getUnmatchedProperties:bKt,getTypeOfSymbolAtLocation:(u,m)=>{let v=eu(m);return v?MHs(u,v):nn},getTypeOfSymbol:fo,getSymbolsOfParameterPropertyDeclaration:(u,m)=>{let v=eu(u,Si);return v===void 0?pe.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(pe.assert(We(v,v.parent)),aK(v,pp(m)))},getDeclaredTypeOfSymbol:Lp,getPropertiesOfType:Zd,getPropertyOfType:(u,m)=>Fg(u,pp(m)),getPrivateIdentifierPropertyOfType:(u,m,v)=>{let D=eu(v);if(!D)return;let W=pp(m),Y=TPe(W,D);return Y?Bat(u,Y):void 0},getTypeOfPropertyOfType:(u,m)=>Wi(u,pp(m)),getIndexInfoOfType:(u,m)=>iG(u,m===0?$r:ri),getIndexInfosOfType:p0,getIndexInfosOfIndexSymbol:_ot,getSignaturesOfType:rg,getIndexTypeOfType:(u,m)=>V5(u,m===0?$r:ri),getIndexType:u=>XN(u),getBaseTypes:eT,getBaseTypeOfLiteralType:IZ,getWidenedType:G1,getWidenedLiteralType:Q5,fillMissingTypeArguments:D9,getTypeFromTypeNode:u=>{let m=eu(u,uc);return m?tl(m):nn},getParameterType:SR,getParameterIdentifierInfoAtPosition:vXs,getPromisedTypeOfPromise:bSe,getAwaitedType:u=>jq(u),getReturnTypeOfSignature:Ad,isNullableType:wPe,getNullableType:uPe,getNonNullableType:hZ,getNonOptionalType:Uot,getTypeArguments:gf,typeToTypeNode:kt.typeToTypeNode,typePredicateToTypePredicateNode:kt.typePredicateToTypePredicateNode,indexInfoToIndexSignatureDeclaration:kt.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:kt.signatureToSignatureDeclaration,symbolToEntityName:kt.symbolToEntityName,symbolToExpression:kt.symbolToExpression,symbolToNode:kt.symbolToNode,symbolToTypeParameterDeclarations:kt.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:kt.symbolToParameterDeclaration,typeParameterToDeclaration:kt.typeParameterToDeclaration,getSymbolsInScope:(u,m)=>{let v=eu(u);return v?uKs(v,m):[]},getSymbolAtLocation:u=>{let m=eu(u);return m?Lv(m,!0):void 0},getIndexInfosAtLocation:u=>{let m=eu(u);return m?mKs(m):void 0},getShorthandAssignmentValueSymbol:u=>{let m=eu(u);return m?CKs(m):void 0},getExportSpecifierLocalTargetSymbol:u=>{let m=eu(u,D0);return m?_Ks(m):void 0},getExportSymbolOfSymbol(u){return qA(u.exportSymbol||u)},getTypeAtLocation:u=>{let m=eu(u);return m?qq(m):nn},getTypeOfAssignmentPattern:u=>{let m=eu(u,NY);return m&&rct(m)||nn},getPropertySymbolOfDestructuringAssignment:u=>{let m=eu(u,Ir);return m?yKs(m):void 0},signatureToString:(u,m,v,D)=>hO(u,eu(m),v,D),typeToString:(u,m,v)=>ro(u,eu(m),v),symbolToString:(u,m,v,D)=>xl(u,eu(m),v,D),typePredicateToString:(u,m,v)=>Ik(u,eu(m),v),writeSignature:(u,m,v,D,W,Y,oe,Be)=>hO(u,eu(m),v,D,W,Y,oe,Be),writeType:(u,m,v,D,W,Y,oe)=>ro(u,eu(m),v,D,W,Y,oe),writeSymbol:(u,m,v,D,W)=>xl(u,eu(m),v,D,W),writeTypePredicate:(u,m,v,D)=>Ik(u,eu(m),v,D),getAugmentedPropertiesOfType:g6t,getRootSymbols:oyn,getSymbolOfExpando:kat,getContextualType:(u,m)=>{let v=eu(u,un);if(v)return m&4?ya(v,()=>Ky(v,m)):Ky(v,m)},getContextualTypeForObjectLiteralElement:u=>{let m=eu(u,Bw);return m?qKt(m,void 0):void 0},getContextualTypeForArgumentAtIndex:(u,m)=>{let v=eu(u,EF);return v&&KKt(v,m)},getContextualTypeForJsxAttribute:u=>{let m=eu(u,OJ);return m&&yCn(m,void 0)},isContextSensitive:BS,getTypeOfPropertyOfContextualType:J5,getFullyQualifiedName:y9,getResolvedSignature:(u,m,v)=>Fl(u,m,v,0),getCandidateSignaturesForStringLiteralCompletions:ou,getResolvedSignatureForSignatureHelp:(u,m,v)=>Zn(u,()=>Fl(u,m,v,16)),getExpandedParameters:iIn,hasEffectiveRestParameter:Sk,containsArgumentsReference:pUt,getConstantValue:u=>{let m=eu(u,Ayn);return m?sct(m):void 0},isValidPropertyAccess:(u,m)=>{let v=eu(u,Pre);return!!v&&GQs(v,pp(m))},isValidPropertyAccessForCompletions:(u,m,v)=>{let D=eu(u,jo);return!!D&&qCn(D,m,v)},getSignatureFromDeclaration:u=>{let m=eu(u,Eu);return m?vS(m):void 0},isImplementationOfOverload:u=>{let m=eu(u,Eu);return m?uyn(m):void 0},getImmediateAliasedSymbol:Cat,getAliasedSymbol:XC,getEmitResolver:Zpe,requiresAddingImplicitUndefined:e3e,getExportsOfModule:wq,getExportsAndPropertiesOfModule:Fse,forEachExportAndPropertyOfModule:Tq,getSymbolWalker:PPt(o3s,kv,Ad,eT,CR,fo,W0,Uy,T0,gf),getAmbientModules:Z8s,getJsxIntrinsicTagNamesAt:pQs,isOptionalParameter:u=>{let m=eu(u,Si);return m?O2e(m):!1},tryGetMemberInModuleExports:(u,m)=>IK(pp(u),m),tryGetMemberInModuleExportsAndProperties:(u,m)=>Rq(pp(u),m),tryFindAmbientModule:u=>SIn(u,!0),getApparentType:hy,getUnionType:Ha,isTypeAssignableTo:pg,createAnonymousType:Qf,createSignature:YN,createSymbol:AA,createIndexInfo:sG,getAnyType:()=>hr,getStringType:()=>$r,getStringLiteralType:DE,getNumberType:()=>ri,getNumberLiteralType:_R,getBigIntType:()=>oo,getBigIntLiteralType:qOe,getUnknownType:()=>cn,createPromiseType:LPe,createArrayType:f0,getElementTypeOfArrayType:lPe,getBooleanType:()=>Mn,getFalseType:u=>u?Bs:Ys,getTrueType:u=>u?tn:wn,getVoidType:()=>es,getUndefinedType:()=>wt,getNullType:()=>Hn,getESSymbolType:()=>ci,getNeverType:()=>Oi,getNonPrimitiveType:()=>fs,getOptionalType:()=>In,getPromiseType:()=>XOe(!1),getPromiseLikeType:()=>UIn(!1),getAnyAsyncIterableType:()=>{let u=JOe(!1);if(u!==oi)return uZ(u,[hr,hr,hr])},isSymbolAccessible:IO,isArrayType:Gv,isTupleType:bA,isArrayLikeType:G9,isEmptyAnonymousObjectType:Ek,isTypeInvalidDueToUnionDiscriminant:PPs,getExactOptionalProperties:IMs,getAllPossiblePropertiesOfTypes:MPs,getSuggestedSymbolForNonexistentProperty:g8t,getSuggestedSymbolForNonexistentJSXAttribute:UCn,getSuggestedSymbolForNonexistentSymbol:(u,m,v)=>jCn(u,pp(m),v),getSuggestedSymbolForNonexistentModule:A8t,getSuggestedSymbolForNonexistentClassMember:JCn,getBaseConstraintOfType:W_,getDefaultFromTypeParameter:u=>u&&u.flags&262144?KQ(u):void 0,resolveName(u,m,v,D){return An(m,pp(u),v,void 0,!1,D)},getJsxNamespace:u=>Bc(Jw(u)),getJsxFragmentFactory:u=>{let m=I6t(u);return m&&Bc(T0(m).escapedText)},getAccessibleSymbolChain:S9,getTypePredicateOfSignature:kv,resolveExternalModuleName:u=>{let m=eu(u,un);return m&&L0(m,m,!0)},resolveExternalModuleSymbol:NE,tryGetThisTypeAt:(u,m,v)=>{let D=eu(u);return D&&QKt(D,m,v)},getTypeArgumentConstraint:u=>{let m=eu(u,uc);return m&&X4s(m)},getSuggestionDiagnostics:(u,m)=>{let v=eu(u,al)||pe.fail("Could not determine parsed source file.");if(F3(v,Te,s))return E;let D;try{return d=m,l6t(v),pe.assert(!!(sa(v).flags&1)),D=Pr(D,iK.getDiagnostics(v.fileName)),I0n(z0n(v),(W,Y,oe)=>{!bW(W)&&!j0n(Y,!!(W.flags&33554432))&&(D||(D=[])).push({...oe,category:2})}),D||E}finally{d=void 0}},runWithCancellationToken:(u,m)=>{try{return d=u,m(ks)}finally{d=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:Kg,isDeclarationVisible:hk,isPropertyAccessible:p8t,getTypeOnlyAliasDeclaration:fR,getMemberOverrideModifierStatus:wUs,isTypeParameterPossiblyReferenced:tPe,typeHasCallOrConstructSignatures:nct,getSymbolFlags:Qb,getTypeArgumentsForResolvedSignature:Ic,isLibType:Vse};function Ic(u){if(u.mapper!==void 0)return pZ((u.target||u).typeParameters,u.mapper)}function ou(u,m){let v=new Set,D=[];ya(m,()=>Fl(u,D,void 0,0));for(let W of D)v.add(W);D.length=0,Zn(m,()=>Fl(u,D,void 0,0));for(let W of D)v.add(W);return Do(v)}function Zn(u,m){if(u=ji(u,Mre),u){let v=[],D=[];for(;u;){let Y=sa(u);if(v.push([Y,Y.resolvedSignature]),Y.resolvedSignature=void 0,FF(u)){let oe=fa(Uo(u)),Be=oe.type;D.push([oe,Be]),oe.type=void 0}u=ji(u.parent,Mre)}let W=m();for(let[Y,oe]of v)Y.resolvedSignature=oe;for(let[Y,oe]of D)Y.type=oe;return W}return m()}function ya(u,m){let v=ji(u,EF);if(v){let W=u;do sa(W).skipDirectInference=!0,W=W.parent;while(W&&W!==v)}_e=!0;let D=Zn(u,m);if(_e=!1,v){let W=u;do sa(W).skipDirectInference=void 0,W=W.parent;while(W&&W!==v)}return D}function Fl(u,m,v,D){let W=eu(u,EF);Tr=v;let Y=W?noe(W,m,D):void 0;return Tr=void 0,Y}var ba=new Map,Oo=new Map,hc=new Map,yr=new Map,hn=new Map,Pi=new Map,co=new Map,pa=new Map,Pa=new Map,$c=new Map,Qu=new Map,Rg=new Map,Cs=new Map,Tu=new Map,Wr=new Map,Wn=[],pt=new Map,on=new Set,st=AA(4,"unknown"),nr=AA(0,"__resolving__"),Zr=new Map,Kr=new Map,Dn=new Set,hr=Vc(1,"any"),Sn=Vc(1,"any",262144,"auto"),Ni=Vc(1,"any",void 0,"wildcard"),Gi=Vc(1,"any",void 0,"blocked string"),nn=Vc(1,"error"),En=Vc(1,"unresolved"),ds=Vc(1,"any",65536,"non-inferrable"),Ht=Vc(1,"intrinsic"),cn=Vc(2,"unknown"),wt=Vc(32768,"undefined"),xe=at?wt:Vc(32768,"undefined",65536,"widening"),fr=Vc(32768,"undefined",void 0,"missing"),Ue=Wt?fr:wt,In=Vc(32768,"undefined",void 0,"optional"),Hn=Vc(65536,"null"),Mt=at?Hn:Vc(65536,"null",65536,"widening"),$r=Vc(4,"string"),ri=Vc(8,"number"),oo=Vc(64,"bigint"),Bs=Vc(512,"false",void 0,"fresh"),Ys=Vc(512,"false"),tn=Vc(512,"true",void 0,"fresh"),wn=Vc(512,"true");tn.regularType=wn,tn.freshType=tn,wn.regularType=wn,wn.freshType=tn,Bs.regularType=Ys,Bs.freshType=Bs,Ys.regularType=Ys,Ys.freshType=Bs;var Mn=Ha([Ys,wn]),ci=Vc(4096,"symbol"),es=Vc(16384,"void"),Oi=Vc(131072,"never"),Vn=Vc(131072,"never",262144,"silent"),Ui=Vc(131072,"never",void 0,"implicit"),gs=Vc(131072,"never",void 0,"unreachable"),fs=Vc(67108864,"object"),bi=Ha([$r,ri]),mc=Ha([$r,ri,ci]),Ag=Ha([ri,oo]),dg=Ha([$r,ri,Mn,oo,Hn,wt]),yu=NK(["",""],[ri]),RI=ePe(u=>u.flags&262144?M5s(u):u,()=>"(restrictive mapper)"),pI=ePe(u=>u.flags&262144?Ni:u,()=>"(permissive mapper)"),Ip=Vc(131072,"never",void 0,"unique literal"),kl=ePe(u=>u.flags&262144?Ip:u,()=>"(unique literal mapper)"),bu,sm=ePe(u=>(bu&&(u===bf||u===UI||u===ve)&&bu(!0),u),()=>"(unmeasurable reporter)"),qp=ePe(u=>(bu&&(u===bf||u===UI||u===ve)&&bu(!1),u),()=>"(unreliable reporter)"),Jg=Qf(void 0,Ee,E,E,E),ch=Qf(void 0,Ee,E,E,E);ch.objectFlags|=2048;var hS=Qf(void 0,Ee,E,E,E);hS.objectFlags|=141440;var Au=AA(2048,"__type");Au.members=$u();var Eg=Qf(Au,Ee,E,E,E),zA=Qf(void 0,Ee,E,E,E),NA=at?Ha([wt,Hn,zA]):cn,oi=Qf(void 0,Ee,E,E,E);oi.instantiations=new Map;var tp=Qf(void 0,Ee,E,E,E);tp.objectFlags|=262144;var JI=Qf(void 0,Ee,E,E,E),Wh=Qf(void 0,Ee,E,E,E),MC=Qf(void 0,Ee,E,E,E),bf=Xy(),UI=Xy();UI.constraint=bf;var ve=Xy(),mr=Xy(),ln=Xy();ln.constraint=mr;var ni=P2e(1,"<>",0,hr),Ls=YN(void 0,void 0,void 0,E,hr,void 0,0,0),Za=YN(void 0,void 0,void 0,E,nn,void 0,0,0),Go=YN(void 0,void 0,void 0,E,hr,void 0,0,0),Ss=YN(void 0,void 0,void 0,E,Vn,void 0,0,0),Uc=sG(ri,$r,!0),el=sG($r,hr,!1),Fd=new Map,Vg={get yieldType(){return pe.fail("Not supported")},get returnType(){return pe.fail("Not supported")},get nextType(){return pe.fail("Not supported")}},Ef=RO(hr,hr,hr),om=RO(Vn,Vn,Vn),Sh={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:y3s,getGlobalIterableType:JOe,getGlobalIterableIteratorType:KIn,getGlobalIteratorObjectType:E3s,getGlobalGeneratorType:S3s,getGlobalBuiltinIteratorTypes:b3s,resolveIterationType:(u,m)=>jq(u,m,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:Z.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},Zp={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:v3s,getGlobalIterableType:Tot,getGlobalIterableIteratorType:jIn,getGlobalIteratorObjectType:w3s,getGlobalGeneratorType:T3s,getGlobalBuiltinIteratorTypes:B3s,resolveIterationType:(u,m)=>u,mustHaveANextMethodDiagnostic:Z.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},lh,v1=new Map,V_=new Map,y2,Ob,or,qn,Js,Yl,DA,kA,gA,ym,lf,fI,KI,b2,f_,HC,B1,dy,vv,lk,Qx,Xx,Pb,rC,gR,mS,VN,ct,en,gi,_i,ys,$s,wa,pc,cl,Fe,gr,Ln,bs,Jl,tg,zl,Su,xf,Ug,YC,w1,CS,Bv,qF,A9,Yy,uk,AR,QB,rO,br,sn,ei,is,Qs=new Map,Po=0,Ps=0,ao=0,Yc=!1,ru=0,$a,nu,ll,Gf=[],Mb=[],XB=[],I_=0,JB=[],T1=[],A5=[],WN=0,gk=[],d5=[],Ak=0,vse=DE(""),Gpe=_R(0),Bse=qOe({negative:!1,base10Value:"0"}),Jx=[],p5=[],$U=[],d9=0,eK=!1,Aq=0,Fpe=10,tK=[],dq=[],f5=[],wse=[],rK=[],pq=[],GQ=[],nO=[],fq=[],Iq=[],FQ=[],iO=[],p9=[],$F=[],eZ=[],tZ=[],sO=[],I5=[],nK=[],h5=0,PA=RF(),iK=RF(),Tse=d0(),rZ,nZ,dk=new Map,Sf=new Map,g0=new Map,Hb=new Map,A0=new Map,m5=new Map,py=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",Te.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return KKs(),ks;function pk(u){return!jo(u)||!Ir(u.name)||!jo(u.expression)&&!Ir(u.expression)?!1:Ir(u.expression)?Vo(u.expression)==="Symbol"&&W0(u.expression)===(Use("Symbol",1160127,void 0)||st):Ir(u.expression.expression)?Vo(u.expression.name)==="Symbol"&&Vo(u.expression.expression)==="globalThis"&&W0(u.expression.expression)===pr:!1}function Qy(u){return u?Wr.get(u):void 0}function UB(u,m){return u&&Wr.set(u,m),m}function Jw(u){if(u){let m=ms(u);if(m)if(Yw(u)){if(m.localJsxFragmentNamespace)return m.localJsxFragmentNamespace;let v=m.pragmas.get("jsxfrag");if(v){let W=Ki(v)?v[0]:v;if(m.localJsxFragmentFactory=Oz(W.arguments.factory,Ze),Mr(m.localJsxFragmentFactory,_5,mC),m.localJsxFragmentFactory)return m.localJsxFragmentNamespace=T0(m.localJsxFragmentFactory).escapedText}let D=I6t(u);if(D)return m.localJsxFragmentFactory=D,m.localJsxFragmentNamespace=T0(D).escapedText}else{let v=C5(m);if(v)return m.localJsxNamespace=v}}return rZ||(rZ="React",Te.jsxFactory?(nZ=Oz(Te.jsxFactory,Ze),Mr(nZ,_5),nZ&&(rZ=T0(nZ).escapedText)):Te.reactNamespace&&(rZ=pp(Te.reactNamespace))),nZ||(nZ=me.createQualifiedName(me.createIdentifier(Bc(rZ)),"createElement")),rZ}function C5(u){if(u.localJsxNamespace)return u.localJsxNamespace;let m=u.pragmas.get("jsx");if(m){let v=Ki(m)?m[0]:m;if(u.localJsxFactory=Oz(v.arguments.factory,Ze),Mr(u.localJsxFactory,_5,mC),u.localJsxFactory)return u.localJsxNamespace=T0(u.localJsxFactory).escapedText}}function _5(u){return xB(u,-1,-1),_s(u,_5,void 0)}function Zpe(u,m,v){return v||q0n(u,m),it}function Rse(u,m,...v){let D=u?mo(u,m,...v):kf(m,...v),W=PA.lookup(D);return W||(PA.add(D),D)}function f9(u,m,v,...D){let W=Br(m,v,...D);return W.skippedOn=u,W}function ZQ(u,m,...v){return u?mo(u,m,...v):kf(m,...v)}function Br(u,m,...v){let D=ZQ(u,m,...v);return PA.add(D),D}function sK(u){let v=ms(u).fileName;return Iu(v,[".cts",".cjs"])?Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript}function Ux(u,m){u?PA.add(m):iK.add({...m,category:2})}function Uw(u,m,v,...D){if(m.pos<0||m.end<0){if(!u)return;let W=ms(m);Ux(u,"message"in v?rm(W,0,0,v,...D):Ut(W,v));return}Ux(u,"message"in v?mo(m,v,...D):Dw(ms(m),m,v))}function I9(u,m,v,...D){let W=Br(u,v,...D);if(m){let Y=mo(u,Z.Did_you_forget_to_use_await);ug(W,Y)}return W}function oO(u,m){let v=Array.isArray(u)?F(u,$h):$h(u);return v&&ug(m,mo(v,Z.The_declaration_was_marked_as_deprecated_here)),iK.add(m),m}function fy(u){let m=nC(u);return m&&B(u.declarations)>1?m.flags&64?zt(u.declarations,dR):ue(u.declarations,dR):!!u.valueDeclaration&&dR(u.valueDeclaration)||B(u.declarations)&&ue(u.declarations,dR)}function dR(u){return!!(aX(u)&536870912)}function KB(u,m,v){let D=mo(u,Z._0_is_deprecated,v);return oO(m,D)}function y5(u,m,v,D){let W=v?mo(u,Z.The_signature_0_of_1_is_deprecated,D,v):mo(u,Z._0_is_deprecated,D);return oO(m,W)}function AA(u,m,v){O++;let D=new _(u|33554432,m);return D.links=new Htn,D.links.checkFlags=v||0,D}function _S(u,m){let v=AA(1,u);return v.links.type=m,v}function h9(u,m){let v=AA(4,u);return v.links.type=m,v}function oK(u){let m=0;return u&2&&(m|=111551),u&1&&(m|=111550),u&4&&(m|=0),u&8&&(m|=900095),u&16&&(m|=110991),u&32&&(m|=899503),u&64&&(m|=788872),u&256&&(m|=899327),u&128&&(m|=899967),u&512&&(m|=110735),u&8192&&(m|=103359),u&32768&&(m|=46015),u&65536&&(m|=78783),u&262144&&(m|=526824),u&524288&&(m|=788968),u&2097152&&(m|=2097152),m}function iZ(u,m){m.mergeId||(m.mergeId=Ptn,Ptn++),tK[m.mergeId]=u}function LQ(u){let m=AA(u.flags,u.escapedName);return m.declarations=u.declarations?u.declarations.slice():[],m.parent=u.parent,u.valueDeclaration&&(m.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(m.constEnumOnlyModule=!0),u.members&&(m.members=new Map(u.members)),u.exports&&(m.exports=new Map(u.exports)),iZ(m,u),m}function wv(u,m,v=!1){if(!(u.flags&oK(m.flags))||(m.flags|u.flags)&67108864){if(m===u)return u;if(!(u.flags&33554432)){let Y=Oh(u);if(Y===st)return m;if(!(Y.flags&oK(m.flags))||(m.flags|Y.flags)&67108864)u=LQ(Y);else return D(u,m),m}m.flags&512&&u.flags&512&&u.constEnumOnlyModule&&!m.constEnumOnlyModule&&(u.constEnumOnlyModule=!1),u.flags|=m.flags,m.valueDeclaration&&V7(u,m.valueDeclaration),Pr(u.declarations,m.declarations),m.members&&(u.members||(u.members=$u()),ON(u.members,m.members,v)),m.exports&&(u.exports||(u.exports=$u()),ON(u.exports,m.exports,v,u)),v||iZ(u,m)}else u.flags&1024?u!==pr&&Br(m.declarations&&fl(m.declarations[0]),Z.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,xl(u)):D(u,m);return u;function D(Y,oe){let Be=!!(Y.flags&384||oe.flags&384),Me=!!(Y.flags&2||oe.flags&2),He=Be?Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Me?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,$e=oe.declarations&&ms(oe.declarations[0]),Vt=Y.declarations&&ms(Y.declarations[0]),xt=FY($e,Te.checkJs),wr=FY(Vt,Te.checkJs),dn=xl(oe);if($e&&Vt&&lh&&!Be&&$e!==Vt){let vn=tI($e.path,Vt.path)===-1?$e:Vt,ii=vn===$e?Vt:$e,Yi=cr(lh,`${vn.path}|${ii.path}`,()=>({firstFile:vn,secondFile:ii,conflictingSymbols:new Map})),js=cr(Yi.conflictingSymbols,dn,()=>({isBlockScoped:Me,firstFileLocations:[],secondFileLocations:[]}));xt||W(js.firstFileLocations,oe),wr||W(js.secondFileLocations,Y)}else xt||Kx(oe,He,dn,Y),wr||Kx(Y,He,dn,oe)}function W(Y,oe){if(oe.declarations)for(let Be of oe.declarations)Qi(Y,Be)}}function Kx(u,m,v,D){F(u.declarations,W=>{b5(W,m,v,D.declarations)})}function b5(u,m,v,D){let W=(YL(u,!1)?Mye(u):fl(u))||u,Y=Rse(W,m,v);for(let oe of D||E){let Be=(YL(oe,!1)?Mye(oe):fl(oe))||oe;if(Be===W)continue;Y.relatedInformation=Y.relatedInformation||[];let Me=mo(Be,Z._0_was_also_declared_here,v),He=mo(Be,Z.and_here);B(Y.relatedInformation)>=5||zt(Y.relatedInformation,$e=>oz($e,He)===0||oz($e,Me)===0)||ug(Y,B(Y.relatedInformation)?He:Me)}}function m9(u,m){if(!u?.size)return m;if(!m?.size)return u;let v=$u();return ON(v,u),ON(v,m),v}function ON(u,m,v=!1,D){m.forEach((W,Y)=>{let oe=u.get(Y),Be=oe?wv(oe,W,v):qA(W);D&&oe&&(Be.parent=D),u.set(Y,Be)})}function VQ(u){var m,v,D;let W=u.parent;if(((m=W.symbol.declarations)==null?void 0:m[0])!==W){pe.assert(W.symbol.declarations.length>1);return}if(NB(W))ON(Gr,W.symbol.exports);else{let Y=u.parent.parent.flags&33554432?void 0:Z.Invalid_module_name_in_augmentation_module_0_cannot_be_found,oe=RE(u,u,Y,!1,!0);if(!oe)return;if(oe=NE(oe),oe.flags&1920)if(zt(Ob,Be=>oe===Be.symbol)){let Be=wv(W.symbol,oe,!0);or||(or=new Map),or.set(u.text,Be)}else{if((v=oe.exports)!=null&&v.get("__export")&&((D=W.symbol.exports)!=null&&D.size)){let Be=$Jt(oe,"resolvedExports");for(let[Me,He]of Do(W.symbol.exports.entries()))Be.has(Me)&&!oe.exports.has(Me)&&wv(Be.get(Me),He)}wv(oe,W.symbol)}else Br(u,Z.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,u.text)}}function E5(){let u=dt.escapedName,m=Gr.get(u);m?F(m.declarations,v=>{oQ(v)||PA.add(mo(v,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,Bc(u)))}):Gr.set(u,dt)}function fa(u){if(u.flags&33554432)return u.links;let m=xg(u);return dq[m]??(dq[m]=new Htn)}function sa(u){let m=id(u);return f5[m]||(f5[m]=new Bvs)}function h_(u,m,v){if(v){let D=qA(u.get(m));if(D&&(D.flags&v||D.flags&2097152&&Qb(D)&v))return D}}function aK(u,m){let v=u.parent,D=u.parent.parent,W=h_(v.locals,m,111551),Y=h_(Ck(D.symbol),m,111551);return W&&Y?[W,Y]:pe.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function sZ(u,m){let v=ms(u),D=ms(m),W=sS(u);if(v!==D){if(Pe&&(v.externalModuleIndicator||D.externalModuleIndicator)||!Te.outFile||qY(m)||u.flags&33554432||oe(m,u))return!0;let He=s.getSourceFiles();return He.indexOf(v)<=He.indexOf(D)}if(m.flags&16777216||qY(m)||RKt(m))return!0;if(u.pos<=m.pos&&!(pi(u)&&dne(m.parent)&&!u.initializer&&!u.exclamationToken)){if(u.kind===209){let He=UL(m,209);return He?ji(He,mg)!==ji(u,mg)||u.pos$e===u?"quit":Un($e)?$e.parent.parent===u:!Ke&&So($e)&&($e.parent===u||gu($e.parent)&&$e.parent.parent===u||TJ($e.parent)&&$e.parent.parent===u||pi($e.parent)&&$e.parent.parent===u||Si($e.parent)&&$e.parent.parent.parent===u));return He?!Ke&&So(He)?!!ji(m,$e=>$e===He?"quit":Eu($e)&&!ML($e)):!1:!0}else{if(pi(u))return!Me(u,m,!1);if(We(u,u.parent))return!(Ye&&_C(u)===_C(m)&&oe(m,u))}}return!0}if(m.parent.kind===282||m.parent.kind===278&&m.parent.isExportEquals||m.kind===278&&m.isExportEquals)return!0;if(oe(m,u))return Ye&&_C(u)&&(pi(u)||We(u,u.parent))?!Me(u,m,!0):!0;return!1;function Y(He,$e){switch(He.parent.parent.kind){case 244:case 249:case 251:if(Kw($e,He,W))return!0;break}let Vt=He.parent.parent;return VL(Vt)&&Kw($e,Vt.expression,W)}function oe(He,$e){return Be(He,$e)}function Be(He,$e){return!!ji(He,Vt=>{if(Vt===W)return"quit";if(Eu(Vt))return!ML(Vt);if(Al(Vt))return $e.posHe.end?!1:ji($e,wr=>{if(wr===He)return"quit";switch(wr.kind){case 220:return!0;case 173:return Vt&&(pi(He)&&wr.parent===He.parent||We(He,He.parent)&&wr.parent===He.parent.parent)?"quit":!0;case 242:switch(wr.parent.kind){case 178:case 175:case 179:return!0;default:return!1}default:return!1}})===void 0}}function WQ(u){return sa(u).declarationRequiresScopeChange}function Nse(u,m){sa(u).declarationRequiresScopeChange=m}function Lpe(u,m,v,D){return Ye?!1:(u&&!D&&cK(u,m,m)||Br(u,u&&v.type&&nl(v.type,u.pos)?Z.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Z.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,Md(v.name),TE(m)),!0)}function qo(u,m,v,D){let W=Xs(m)?m:m.escapedText;g(()=>{if(!u||u.parent.kind!==325&&!cK(u,W,m)&&!aO(u)&&!Dse(u,W,v)&&!fk(u,W)&&!lO(u,W,v)&&!pR(u,W,v)&&!hq(u,W,v)){let Y,oe;if(m&&(oe=RQs(m),oe&&Br(u,D,TE(m),oe)),!oe&&Aq{var oe;let Be=m.escapedName,Me=D&&al(D)&&Sl(D);if(u&&(v&2||(v&32||v&384)&&(v&111551)===111551)){let He=fn(m);(He.flags&2||He.flags&32||He.flags&384)&&yS(He,u)}if(Me&&(v&111551)===111551&&!(u.flags&16777216)){let He=qA(m);B(He.declarations)&&ue(He.declarations,$e=>wEe($e)||al($e)&&!!$e.symbol.globalExports)&&Uw(!Te.allowUmdGlobalAccess,u,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,Bc(Be))}if(W&&!Y&&(v&111551)===111551){let He=qA(dot(m)),$e=Gw(W);He===Uo(W)?Br(u,Z.Parameter_0_cannot_reference_itself,Md(W.name)):He.valueDeclaration&&He.valueDeclaration.pos>W.pos&&$e.parent.locals&&h_($e.parent.locals,He.escapedName,v)===He&&Br(u,Z.Parameter_0_cannot_reference_identifier_1_declared_after_it,Md(W.name),Md(u))}if(u&&v&111551&&m.flags&2097152&&!(m.flags&111551)&&!$L(u)){let He=fR(m,111551);if(He){let $e=He.kind===282||He.kind===279||He.kind===281?Z._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Vt=Bc(Be);mu(Br(u,$e,Vt),He,Vt)}}if(Te.isolatedModules&&m&&Me&&(v&111551)===111551){let $e=h_(Gr,Be,v)===m&&al(D)&&D.locals&&h_(D.locals,Be,-111552);if($e){let Vt=(oe=$e.declarations)==null?void 0:oe.find(xt=>xt.kind===277||xt.kind===274||xt.kind===275||xt.kind===272);Vt&&!aN(Vt)&&Br(Vt,Z.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Bc(Be))}}})}function mu(u,m,v){return m?ug(u,mo(m,m.kind===282||m.kind===279||m.kind===281?Z._0_was_exported_here:Z._0_was_imported_here,v)):u}function TE(u){return Xs(u)?Bc(u):Md(u)}function cK(u,m,v){if(!Ir(u)||u.escapedText!==m||$0n(u)||qY(u))return!1;let D=i0(u,!1,!1),W=D;for(;W;){if(xa(W.parent)){let Y=Uo(W.parent);if(!Y)break;let oe=fo(Y);if(Fg(oe,m))return Br(u,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,TE(v),xl(Y)),!0;if(W===D&&!lg(W)){let Be=Lp(Y).thisType;if(Fg(Be,m))return Br(u,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,TE(v)),!0}}W=W.parent}return!1}function aO(u){let m=Fo(u);return m&&NI(m,64,!0)?(Br(u,Z.Cannot_extend_an_interface_0_Did_you_mean_implements,Fp(m)),!0):!1}function Fo(u){switch(u.kind){case 80:case 212:return u.parent?Fo(u.parent):void 0;case 234:if(Hd(u.expression))return u.expression;default:return}}function Dse(u,m,v){let D=1920|(wo(u)?111551:0);if(v===D){let W=Oh(An(u,m,788968&~D,void 0,!1)),Y=u.parent;if(W){if(zi(Y)){pe.assert(Y.left===u,"Should only be resolving left side of qualified name as a namespace");let oe=Y.right.escapedText;if(Fg(Lp(W),oe))return Br(Y,Z.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,Bc(m),Bc(oe)),!0}return Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,Bc(m)),!0}}return!1}function hq(u,m,v){if(v&788584){let D=Oh(An(u,m,111127,void 0,!1));if(D&&!(D.flags&1920))return Br(u,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,Bc(m)),!0}return!1}function Z0(u){return u==="any"||u==="string"||u==="number"||u==="boolean"||u==="never"||u==="unknown"}function fk(u,m){return Z0(m)&&u.parent.kind===282?(Br(u,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,m),!0):!1}function pR(u,m,v){if(v&111551){if(Z0(m)){let Y=u.parent.parent;if(Y&&Y.parent&&_1(Y)){let oe=Y.token;Y.parent.kind===265&&oe===96?Br(u,Z.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,Bc(m)):xa(Y.parent)&&oe===96?Br(u,Z.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,Bc(m)):xa(Y.parent)&&oe===119&&Br(u,Z.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,Bc(m))}else Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Bc(m));return!0}let D=Oh(An(u,m,788544,void 0,!1)),W=D&&Qb(D);if(D&&W!==void 0&&!(W&111551)){let Y=Bc(m);return lK(m)?Br(u,Z._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,Y):cO(u,D)?Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,Y,Y==="K"?"P":"K"):Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Y),!0}}return!1}function cO(u,m){let v=ji(u.parent,D=>Un(D)||ss(D)?!1:bh(D)||"quit");if(v&&v.members.length===1){let D=Lp(m);return!!(D.flags&1048576)&&mSe(D,384,!0)}return!1}function lK(u){switch(u){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function lO(u,m,v){if(v&111127){if(Oh(An(u,m,1024,void 0,!1)))return Br(u,Z.Cannot_use_namespace_0_as_a_value,Bc(m)),!0}else if(v&788544&&Oh(An(u,m,1536,void 0,!1)))return Br(u,Z.Cannot_use_namespace_0_as_a_type,Bc(m)),!0;return!1}function yS(u,m){var v;if(pe.assert(!!(u.flags&2||u.flags&32||u.flags&384)),u.flags&67108881&&u.flags&32)return;let D=(v=u.declarations)==null?void 0:v.find(W=>KJ(W)||xa(W)||W.kind===267);if(D===void 0)return pe.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(D.flags&33554432)&&!sZ(D,m)){let W,Y=Md(fl(D));u.flags&2?W=Br(m,Z.Block_scoped_variable_0_used_before_its_declaration,Y):u.flags&32?W=Br(m,Z.Class_0_used_before_its_declaration,Y):u.flags&256?W=Br(m,Z.Enum_0_used_before_its_declaration,Y):(pe.assert(!!(u.flags&128)),lS(Te)&&(W=Br(m,Z.Enum_0_used_before_its_declaration,Y))),W&&ug(W,mo(D,Z._0_is_declared_here,Y))}}function Kw(u,m,v){return!!m&&!!ji(u,D=>D===m||(D===v||Eu(D)&&(!ML(D)||BI(D)&3)?"quit":!1))}function Tv(u){switch(u.kind){case 272:return u;case 274:return u.parent;case 275:return u.parent.parent;case 277:return u.parent.parent.parent;default:return}}function Yb(u){return u.declarations&&be(u.declarations,C9)}function C9(u){return u.kind===272||u.kind===271||u.kind===274&&!!u.name||u.kind===275||u.kind===281||u.kind===277||u.kind===282||u.kind===278&&Nne(u)||po(u)&&oI(u)===2&&Nne(u)||bp(u)&&po(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64&&S5(u.parent.right)||u.kind===305||u.kind===304&&S5(u.initializer)||u.kind===261&&wW(u)||u.kind===209&&wW(u.parent.parent)}function S5(u){return IAe(u)||jA(u)&&KN(u)}function mq(u,m){let v=yq(u);if(v){let W=CU(v.expression).arguments[0];return Ir(v.name)?Oh(Fg(vIn(W),v.name.escapedText)):void 0}if(nc(u)||u.moduleReference.kind===284){let W=L0(u,Pye(u)||G7(u)),Y=NE(W);if(Y&&102<=Pe&&Pe<=199){let oe=OQ(Y,"module.exports",u,m);if(oe)return oe}return Rv(u,W,Y,!1),Y}let D=pO(u.moduleReference,m);return v5(u,D),D}function v5(u,m){if(Rv(u,void 0,m,!1)&&!u.isTypeOnly){let v=fR(Uo(u)),D=v.kind===282||v.kind===279,W=D?Z.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Z.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,Y=D?Z._0_was_exported_here:Z._0_was_imported_here,oe=v.kind===279?"*":UD(v.name);ug(Br(u.moduleReference,W),mo(v,Y,oe))}}function uO(u,m,v,D){let W=u.exports.get("export="),Y=W?Fg(fo(W),m,!0):u.exports.get(m),oe=Oh(Y,D);return Rv(v,Y,oe,!1),oe}function Cq(u){return yf(u)&&!u.isExportEquals||Ga(u,2048)||D0(u)||ok(u)}function oZ(u){return CA(u)?s.getEmitSyntaxForUsageLocation(ms(u),u):void 0}function PN(u,m){return u===99&&m===1}function gO(u,m){if(100<=Pe&&Pe<=199&&oZ(u)===99){m??(m=L0(u,u,!0));let D=m&&UJ(m);return D&&(Zu(D)||G9e(D.fileName)===".d.json.ts")}return!1}function B5(u,m,v,D){let W=u&&oZ(D);if(u&&W!==void 0){let Y=s.getImpliedNodeFormatForEmit(u);if(W===99&&Y===1&&100<=Pe&&Pe<=199)return!0;if(W===99&&Y===99)return!1}if(!Tt)return!1;if(!u||u.isDeclarationFile){let Y=uO(m,"default",void 0,!0);return!(Y&&zt(Y.declarations,Cq)||uO(m,pp("__esModule"),void 0,v))}return s0(u)?typeof u.externalModuleIndicator!="object"&&!uO(m,pp("__esModule"),void 0,v):zw(m)}function _9(u,m){let v=L0(u,u.parent.moduleSpecifier);if(v)return AO(v,u,m)}function AO(u,m,v){var D;let W=(D=u.declarations)==null?void 0:D.find(al),Y=jw(m),oe,Be;if(PY(u))oe=u;else if(W&&Y&&102<=Pe&&Pe<=199&&oZ(Y)===1&&s.getImpliedNodeFormatForEmit(W)===99&&(Be=uO(u,"module.exports",m,v))){if(!Lw(Te)){Br(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,xl(u),"esModuleInterop");return}return Rv(m,Be,void 0,!1),Be}else oe=uO(u,"default",m,v);if(!Y)return oe;let Me=gO(Y,u),He=B5(W,u,v,Y);if(!oe&&!He&&!Me)if(zw(u)&&!Tt){let $e=Pe>=5?"allowSyntheticDefaultImports":"esModuleInterop",xt=u.exports.get("export=").valueDeclaration,wr=Br(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,xl(u),$e);xt&&ug(wr,mo(xt,Z.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,$e))}else Hw(m)?aZ(u,m):uK(u,u,m,iS(m)&&m.propertyName||m.name);else if(He||Me){let $e=NE(u,v)||Oh(u,v);return Rv(m,u,$e,!1),$e}return Rv(m,oe,void 0,!1),oe}function jw(u){switch(u.kind){case 274:return u.parent.moduleSpecifier;case 272:return MF(u.moduleReference)?u.moduleReference.expression:void 0;case 275:return u.parent.parent.moduleSpecifier;case 277:return u.parent.parent.parent.moduleSpecifier;case 282:return u.parent.parent.moduleSpecifier;default:return pe.assertNever(u)}}function aZ(u,m){var v,D,W;if((v=u.exports)!=null&&v.has(m.symbol.escapedName))Br(m.name,Z.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,xl(u),xl(m.symbol));else{let Y=Br(m.name,Z.Module_0_has_no_default_export,xl(u)),oe=(D=u.exports)==null?void 0:D.get("__export");if(oe){let Be=(W=oe.declarations)==null?void 0:W.find(Me=>{var He,$e;return!!(Vh(Me)&&Me.moduleSpecifier&&(($e=(He=L0(Me,Me.moduleSpecifier))==null?void 0:He.exports)!=null&&$e.has("default")))});Be&&ug(Y,mo(Be,Z.export_Asterisk_does_not_re_export_a_default))}}}function jx(u,m){let v=u.parent.parent.moduleSpecifier,D=L0(u,v),W=$x(D,v,m,!1);return Rv(u,D,W,!1),W}function dO(u,m){let v=u.parent.moduleSpecifier,D=v&&L0(u,v),W=v&&$x(D,v,m,!1);return Rv(u,D,W,!1),W}function QC(u,m){if(u===st&&m===st)return st;if(u.flags&790504)return u;let v=AA(u.flags|m.flags,u.escapedName);return pe.assert(u.declarations||m.declarations),v.declarations=no(Nn(u.declarations,m.declarations),bg),v.parent=u.parent||m.parent,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration),m.members&&(v.members=new Map(m.members)),u.exports&&(v.exports=new Map(u.exports)),v}function OQ(u,m,v,D){var W;if(u.flags&1536){let Y=R1(u).get(m),oe=Oh(Y,D),Be=(W=fa(u).typeOnlyExportStarMap)==null?void 0:W.get(m);return Rv(v,Y,oe,!1,Be,m),oe}}function zx(u,m){if(u.flags&3){let v=u.valueDeclaration.type;if(v)return Oh(Fg(tl(v),m))}}function w5(u,m,v=!1){var D;let W=Pye(u)||u.moduleSpecifier,Y=L0(u,W),oe=!jo(m)&&m.propertyName||m.name;if(!Ir(oe)&&oe.kind!==11)return;let Be=vF(oe),He=$x(Y,W,!1,Be==="default"&&Tt);if(He&&(Be||oe.kind===11)){if(PY(Y))return Y;let $e;Y&&Y.exports&&Y.exports.get("export=")?$e=Fg(fo(He),Be,!0):$e=zx(He,Be),$e=Oh($e,v);let Vt=OQ(He,Be,m,v);if(Vt===void 0&&Be==="default"){let wr=(D=Y.declarations)==null?void 0:D.find(al);(gO(W,Y)||B5(wr,Y,v,W))&&(Vt=NE(Y,v)||Oh(Y,v))}let xt=Vt&&$e&&Vt!==$e?QC($e,Vt):Vt||$e;return iS(m)&&gO(W,Y)&&Be!=="default"?Br(oe,Z.Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0,ev[Pe]):xt||uK(Y,He,u,oe),xt}}function uK(u,m,v,D){var W;let Y=y9(u,v),oe=Md(D),Be=Ir(D)?A8t(D,m):void 0;if(Be!==void 0){let Me=xl(Be),He=Br(D,Z._0_has_no_exported_member_named_1_Did_you_mean_2,Y,oe,Me);Be.valueDeclaration&&ug(He,mo(Be.valueDeclaration,Z._0_is_declared_here,Me))}else(W=u.exports)!=null&&W.has("default")?Br(D,Z.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,Y,oe):qx(v,D,oe,u,Y)}function qx(u,m,v,D,W){var Y,oe;let Be=(oe=(Y=Gs(D.valueDeclaration,HI))==null?void 0:Y.locals)==null?void 0:oe.get(vF(m)),Me=D.exports;if(Be){let He=Me?.get("export=");if(He)vt(He,Be)?kse(u,m,v,W):Br(m,Z.Module_0_has_no_exported_member_1,W,v);else{let $e=Me?de(dUt(Me),xt=>!!vt(xt,Be)):void 0,Vt=$e?Br(m,Z.Module_0_declares_1_locally_but_it_is_exported_as_2,W,v,xl($e)):Br(m,Z.Module_0_declares_1_locally_but_it_is_not_exported,W,v);Be.declarations&&ug(Vt,...lt(Be.declarations,(xt,wr)=>mo(xt,wr===0?Z._0_is_declared_here:Z.and_here,v)))}}else Br(m,Z.Module_0_has_no_exported_member_1,W,v)}function kse(u,m,v,D){if(Pe>=5){let W=Lw(Te)?Z._0_can_only_be_imported_by_using_a_default_import:Z._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Br(m,W,v)}else if(wo(u)){let W=Lw(Te)?Z._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Z._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Br(m,W,v)}else{let W=Lw(Te)?Z._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Z._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Br(m,W,v,v,D)}}function _q(u,m){if(Ay(u)&&dv(u.propertyName||u.name)){let oe=jw(u),Be=oe&&L0(u,oe);if(Be)return AO(Be,u,m)}let v=mg(u)?Gw(u):u.parent.parent.parent,D=yq(v),W=w5(v,D||u,m),Y=u.propertyName||u.name;return D&&W&&Ir(Y)?Oh(Fg(fo(W),Y.escapedText),m):(Rv(u,void 0,W,!1),W)}function yq(u){if(nc(u)&&u.initializer&&jo(u.initializer))return u.initializer}function Vpe(u,m){if(yE(u.parent)){let v=NE(u.parent.symbol,m);return Rv(u,void 0,v,!1),v}}function bq(u,m,v){let D=u.propertyName||u.name;if(dv(D)){let Y=jw(u),oe=Y&&L0(u,Y);if(oe)return AO(oe,u,!!v)}let W=u.parent.parent.moduleSpecifier?w5(u.parent.parent,u,v):D.kind===11?void 0:NI(D,m,!1,v);return Rv(u,void 0,W,!1),W}function T5(u,m){let v=yf(u)?u.expression:u.right,D=cZ(v,m);return Rv(u,void 0,D,!1),D}function cZ(u,m){if(wd(u))return DI(u).symbol;if(!mC(u)&&!Hd(u))return;let v=NI(u,901119,!0,m);return v||(DI(u),sa(u).resolvedSymbol)}function xse(u,m){if(po(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64)return cZ(u.parent.right,m)}function R5(u,m=!1){switch(u.kind){case 272:case 261:return mq(u,m);case 274:return _9(u,m);case 275:return jx(u,m);case 281:return dO(u,m);case 277:case 209:return _q(u,m);case 282:return bq(u,901119,m);case 278:case 227:return T5(u,m);case 271:return Vpe(u,m);case 305:return NI(u.name,901119,!0,m);case 304:return cZ(u.initializer,m);case 213:case 212:return xse(u,m);default:return pe.fail()}}function gK(u,m=901119){return u?(u.flags&(2097152|m))===2097152||!!(u.flags&2097152&&u.flags&67108864):!1}function Oh(u,m){return!m&&gK(u)?XC(u):u}function XC(u){pe.assert((u.flags&2097152)!==0,"Should only get Alias here.");let m=fa(u);if(m.aliasTarget)m.aliasTarget===nr&&(m.aliasTarget=st);else{m.aliasTarget=nr;let v=Yb(u);if(!v)return pe.fail();let D=R5(v);m.aliasTarget===nr?m.aliasTarget=D||st:Br(v,Z.Circular_definition_of_import_alias_0,xl(u))}return m.aliasTarget}function Eq(u){if(fa(u).aliasTarget!==nr)return XC(u)}function Qb(u,m,v){let D=m&&fR(u),W=D&&Vh(D),Y=D&&(W?L0(D.moduleSpecifier,D.moduleSpecifier,!0):XC(D.symbol)),oe=W&&Y?MN(Y):void 0,Be=v?0:u.flags,Me;for(;u.flags&2097152;){let He=fn(XC(u));if(!W&&He===Y||oe?.get(He.escapedName)===He)break;if(He===st)return-1;if(He===u||Me?.has(He))break;He.flags&2097152&&(Me?Me.add(He):Me=new Set([u,He])),Be|=He.flags,u=He}return Be}function Rv(u,m,v,D,W,Y){if(!u||jo(u))return!1;let oe=Uo(u);if(cN(u)){let Me=fa(oe);return Me.typeOnlyDeclaration=u,!0}if(W){let Me=fa(oe);return Me.typeOnlyDeclaration=W,oe.escapedName!==Y&&(Me.typeOnlyExportStarName=Y),!0}let Be=fa(oe);return PQ(Be,m,D)||PQ(Be,v,D)}function PQ(u,m,v){var D;if(m&&(u.typeOnlyDeclaration===void 0||v&&u.typeOnlyDeclaration===!1)){let W=((D=m.exports)==null?void 0:D.get("export="))??m,Y=W.declarations&&de(W.declarations,cN);u.typeOnlyDeclaration=Y??fa(W).typeOnlyDeclaration??!1}return!!u.typeOnlyDeclaration}function fR(u,m){var v;if(!(u.flags&2097152))return;let D=fa(u);if(D.typeOnlyDeclaration===void 0){D.typeOnlyDeclaration=!1;let W=Oh(u);Rv((v=u.declarations)==null?void 0:v[0],Yb(u)&&Cat(u),W,!0)}if(m===void 0)return D.typeOnlyDeclaration||void 0;if(D.typeOnlyDeclaration){let W=D.typeOnlyDeclaration.kind===279?Oh(MN(D.typeOnlyDeclaration.symbol.parent).get(D.typeOnlyExportStarName||u.escapedName)):XC(D.typeOnlyDeclaration.symbol);return Qb(W)&m?D.typeOnlyDeclaration:void 0}}function pO(u,m){return u.kind===80&&$7(u)&&(u=u.parent),u.kind===80||u.parent.kind===167?NI(u,1920,!1,m):(pe.assert(u.parent.kind===272),NI(u,901119,!1,m))}function y9(u,m){return u.parent?y9(u.parent,m)+"."+xl(u):xl(u,m,void 0,36)}function Sq(u){for(;zi(u.parent);)u=u.parent;return u}function Wpe(u){let m=T0(u),v=An(m,m,111551,void 0,!0);if(v){for(;zi(m.parent);){let D=fo(v);if(v=Fg(D,m.parent.right.escapedText),!v)return;m=m.parent}return v}}function NI(u,m,v,D,W){if(af(u))return;let Y=1920|(wo(u)?m&111551:0),oe;if(u.kind===80){let Be=m===Y||ap(u)?Z.Cannot_find_namespace_0:vmn(T0(u)),Me=wo(u)&&!ap(u)?Gse(u,m):void 0;if(oe=qA(An(W||u,u,m,v||Me?void 0:Be,!0,!1)),!oe)return qA(Me)}else if(u.kind===167||u.kind===212){let Be=u.kind===167?u.left:u.expression,Me=u.kind===167?u.right:u.name,He=NI(Be,Y,v,!1,W);if(!He||af(Me))return;if(He===st)return He;if(He.valueDeclaration&&wo(He.valueDeclaration)&&G_(Te)!==100&&nc(He.valueDeclaration)&&He.valueDeclaration.initializer&&y_n(He.valueDeclaration.initializer)){let $e=He.valueDeclaration.initializer.arguments[0],Vt=L0($e,$e);if(Vt){let xt=NE(Vt);xt&&(He=xt)}}if(oe=qA(h_(R1(He),Me.escapedText,m)),!oe&&He.flags&2097152&&(oe=qA(h_(R1(XC(He)),Me.escapedText,m))),!oe){if(!v){let $e=y9(He),Vt=Md(Me),xt=A8t(Me,He);if(xt){Br(Me,Z._0_has_no_exported_member_named_1_Did_you_mean_2,$e,Vt,xl(xt));return}let wr=zi(u)&&Sq(u);if(qn&&m&788968&&wr&&!SN(wr.parent)&&Wpe(wr)){Br(wr,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,cy(wr));return}if(m&1920&&zi(u.parent)){let vn=qA(h_(R1(He),Me.escapedText,788968));if(vn){Br(u.parent.right,Z.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,xl(vn),Bc(u.parent.right.escapedText));return}}Br(Me,Z.Namespace_0_has_no_exported_member_1,$e,Vt)}return}}else pe.assertNever(u,"Unknown entity name kind.");return!ap(u)&&mC(u)&&(oe.flags&2097152||u.parent.kind===278)&&Rv(zye(u),oe,void 0,!0),oe.flags&m||D?oe:XC(oe)}function Gse(u,m){if(vot(u.parent)){let v=AK(u.parent);if(v)return An(v,u,m,void 0,!0)}}function AK(u){if(ji(u,W=>I3(W)||W.flags&16777216?cS(W):"quit"))return;let v=NW(u);if(v&&OC(v)&&Ene(v.expression)){let W=Uo(v.expression.left);if(W)return MQ(W)}if(v&&jA(v)&&Ene(v.parent)&&OC(v.parent.parent)){let W=Uo(v.parent.left);if(W)return MQ(W)}if(v&&(u2(v)||Cm(v))&&po(v.parent.parent)&&oI(v.parent.parent)===6){let W=Uo(v.parent.parent.left);if(W)return MQ(W)}let D=XL(u);if(D&&Eu(D)){let W=Uo(D);return W&&W.valueDeclaration}}function MQ(u){let m=u.parent.valueDeclaration;return m?(Z7(m)?XY(m):A1(m)?L7(m):void 0)||m:void 0}function vq(u){let m=u.valueDeclaration;if(!m||!wo(m)||u.flags&524288||YL(m,!1))return;let v=nc(m)?L7(m):XY(m);if(v){let D=bS(v);if(D)return b8t(D,u)}}function L0(u,m,v){let W=G_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations;return RE(u,m,v?void 0:W,v)}function RE(u,m,v,D=!1,W=!1){return CA(m)?dK(u,m.text,v,D?void 0:m,W):void 0}function dK(u,m,v,D,W=!1){var Y,oe,Be,Me,He,$e,Vt,xt,wr,dn,vn,ii;if(D&&Ac(m,"@types/")){let Kc=Z.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Vu=Gm(m,"@types/");Br(D,Kc,Vu,m)}let Yi=SIn(m,!0);if(Yi)return Yi;let js=ms(u),Co=CA(u)?u:((Y=Lh(u)?u:u.parent&&Lh(u.parent)&&u.parent.name===u?u.parent:void 0)==null?void 0:Y.name)||((oe=Gy(u)?u:void 0)==null?void 0:oe.argument.literal)||(nc(u)&&u.initializer&&ly(u.initializer,!0)?u.initializer.arguments[0]:void 0)||((Be=ji(u,jp))==null?void 0:Be.arguments[0])||((Me=ji(u,Qp(Yf,RN,Vh)))==null?void 0:Me.moduleSpecifier)||((He=ji(u,HL))==null?void 0:He.moduleReference.expression),Ji=Co&&CA(Co)?s.getModeForUsageLocation(js,Co):s.getDefaultResolutionModeForFile(js),Mi=G_(Te),To=($e=s.getResolvedModule(js,m,Ji))==null?void 0:$e.resolvedModule,Ka=D&&To&&Ott(Te,To,js),_l=To&&(!Ka||Ka===Z.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&s.getSourceFile(To.resolvedFileName);if(_l){if(Ka&&Br(D,Ka,m,To.resolvedFileName),To.resolvedUsingTsExtension&&PC(m)){let Kc=((Vt=ji(u,Yf))==null?void 0:Vt.importClause)||ji(u,Qp(Zm,Vh));(D&&Kc&&!Kc.isTypeOnly||ji(u,jp))&&Br(D,Z.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,ka(pe.checkDefined(tz(m))))}else if(To.resolvedUsingTsExtension&&!Qie(Te,js.fileName)){let Kc=((xt=ji(u,Yf))==null?void 0:xt.importClause)||ji(u,Qp(Zm,Vh));if(D&&!(Kc?.isTypeOnly||ji(u,qm))){let Vu=pe.checkDefined(tz(m));Br(D,Z.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Vu)}}else if(Te.rewriteRelativeImportExtensions&&!(u.flags&33554432)&&!PC(m)&&!Gy(u)&&!bge(u)){let Kc=Sne(m,Te);if(!To.resolvedUsingTsExtension&&Kc)Br(D,Z.This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0,a1(Xc(js.fileName,s.getCurrentDirectory()),To.resolvedFileName,qD(s)));else if(To.resolvedUsingTsExtension&&!Kc&&kW(_l,s))Br(D,Z.This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path,pE(m));else if(To.resolvedUsingTsExtension&&Kc){let Vu=(wr=s.getRedirectFromSourceFile(_l.path))==null?void 0:wr.resolvedRef;if(Vu){let dd=!s.useCaseSensitiveFileNames(),Vl=s.getCommonSourceDirectory(),vf=MU(Vu.commandLine,dd),zI=_p(Vl,vf,dd),O0=_p(Te.outDir||Vl,Vu.commandLine.options.outDir||vf,dd);zI!==O0&&Br(D,Z.This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files)}}}if(_l.symbol){if(D&&To.isExternalLibraryImport&&!pz(To.extension)&&N5(!1,D,js,Ji,To,m),D&&(Pe===100||Pe===101)){let Kc=js.impliedNodeFormat===1&&!ji(u,jp)||!!ji(u,Zm),Vu=ji(u,dd=>qm(dd)||Vh(dd)||Yf(dd)||RN(dd));if(Kc&&_l.impliedNodeFormat===99&&!zLe(Vu))if(ji(u,Zm))Br(D,Z.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,m);else{let dd,Vl=jT(js.fileName);(Vl===".ts"||Vl===".js"||Vl===".tsx"||Vl===".jsx")&&(dd=E7(js));let vf=Vu?.kind===273&&((dn=Vu.importClause)!=null&&dn.isTypeOnly)?Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Vu?.kind===206?Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Z.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;PA.add(Dw(ms(D),D,wu(dd,vf,m)))}}return qA(_l.symbol)}D&&v&&!cEe(D)&&Br(D,Z.File_0_is_not_a_module,_l.fileName);return}if(Ob){let Kc=XA(Ob,Vu=>Vu.pattern,m);if(Kc){let Vu=or&&or.get(m);return qA(Vu||Kc.symbol)}}if(!D)return;if(To&&!pz(To.extension)&&Ka===void 0||Ka===Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(W){let Kc=Z.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;Br(D,Kc,m,To.resolvedFileName)}else N5(Rt&&!!v,D,js,Ji,To,m);return}if(v){if(To){let Kc=s.getRedirectFromSourceFile(To.resolvedFileName);if(Kc?.outputDts){Br(D,Z.Output_file_0_has_not_been_built_from_source_file_1,Kc.outputDts,To.resolvedFileName);return}}if(Ka)Br(D,Ka,m,To.resolvedFileName);else{let Kc=mp(m)&&!v0(m),Vu=Mi===3||Mi===99;if(!VW(Te)&&cA(m,".json")&&Mi!==1&&YAe(Te))Br(D,Z.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,m);else if(Ji===99&&Vu&&Kc){let dd=Xc(m,Mo(js.path)),Vl=(vn=py.find(([vf,zI])=>s.fileExists(dd+vf)))==null?void 0:vn[1];Vl?Br(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,m+Vl):Br(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else if((ii=s.getResolvedModule(js,m,Ji))!=null&&ii.alternateResult){let dd=QJ(js,s,m,Ji,m);Uw(!0,D,wu(dd,v,m))}else Br(D,v,m)}}return;function ka(Kc){let Vu=oie(m,Kc);if(eie(Pe)||Ji===99){let dd=PC(m)&&Qie(Te);return Vu+(Kc===".mts"||Kc===".d.mts"?dd?".mts":".mjs":Kc===".cts"||Kc===".d.mts"?dd?".cts":".cjs":dd?".ts":".js")}return Vu}}function N5(u,m,v,D,{packageId:W,resolvedFileName:Y},oe){if(cEe(m))return;let Be;!Xr(oe)&&W&&(Be=QJ(v,s,oe,D,W.name)),Uw(u,m,wu(Be,Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,oe,Y))}function NE(u,m){if(u?.exports){let v=Oh(u.exports.get("export="),m),D=pK(qA(v),qA(u));return qA(D)||u}}function pK(u,m){if(!u||u===st||u===m||m.exports.size===1||u.flags&2097152)return u;let v=fa(u);if(v.cjsExportMerged)return v.cjsExportMerged;let D=u.flags&33554432?u:LQ(u);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=$u()),m.exports.forEach((W,Y)=>{Y!=="export="&&D.exports.set(Y,D.exports.has(Y)?wv(D.exports.get(Y),W):W)}),D===u&&(fa(D).resolvedExports=void 0,fa(D).resolvedMembers=void 0),fa(D).cjsExportMerged=D,v.cjsExportMerged=D}function $x(u,m,v,D){var W;let Y=NE(u,v);if(!v&&Y){if(!D&&!(Y.flags&1539)&&!yp(Y,308)){let Me=Pe>=5?"allowSyntheticDefaultImports":"esModuleInterop";return Br(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,Me),Y}let oe=m.parent,Be=Yf(oe)&&oU(oe);if(Be||jp(oe)){let Me=jp(oe)?oe.arguments[0]:oe.moduleSpecifier,He=fo(Y),$e=C_n(He,Y,u,Me);if($e)return fK(Y,$e,oe);let Vt=(W=u?.declarations)==null?void 0:W.find(al),xt=oZ(Me),wr;if(Be&&Vt&&102<=Pe&&Pe<=199&&xt===1&&s.getImpliedNodeFormatForEmit(Vt)===99&&(wr=uO(Y,"module.exports",Be,v)))return!D&&!(Y.flags&1539)&&Br(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,"esModuleInterop"),Lw(Te)&&Bq(He)?fK(wr,He,oe):wr;let dn=Vt&&PN(xt,s.getImpliedNodeFormatForEmit(Vt));if((Lw(Te)||dn)&&(Bq(He)||Fg(He,"default",!0)||dn)){let vn=He.flags&3670016?__n(He,Y,u,Me):E8t(Y,Y.parent);return fK(Y,vn,oe)}}}return Y}function Bq(u){return zt(HOe(u,0))||zt(HOe(u,1))}function fK(u,m,v){let D=AA(u.flags,u.escapedName);D.declarations=u.declarations?u.declarations.slice():[],D.parent=u.parent,D.links.target=u,D.links.originatingImport=v,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),u.members&&(D.members=new Map(u.members)),u.exports&&(D.exports=new Map(u.exports));let W=CR(m);return D.links.type=Qf(D,W.members,E,E,W.indexInfos),D}function zw(u){return u.exports.get("export=")!==void 0}function wq(u){return dUt(MN(u))}function Fse(u){let m=wq(u),v=NE(u);if(v!==u){let D=fo(v);b9(D)&&Pr(m,Zd(D))}return m}function Tq(u,m){MN(u).forEach((W,Y)=>{x5(Y)||m(W,Y)});let D=NE(u);if(D!==u){let W=fo(D);b9(W)&&OPs(W,(Y,oe)=>{m(Y,oe)})}}function IK(u,m){let v=MN(m);if(v)return v.get(u)}function Rq(u,m){let v=IK(u,m);if(v)return v;let D=NE(m);if(D===m)return;let W=fo(D);return b9(W)?Fg(W,u):void 0}function b9(u){return!(u.flags&402784252||la(u)&1||Gv(u)||bA(u))}function R1(u){return u.flags&6256?$Jt(u,"resolvedExports"):u.flags&1536?MN(u):u.exports||Ee}function MN(u){let m=fa(u);if(!m.resolvedExports){let{exports:v,typeOnlyExportStarMap:D}=mK(u);m.resolvedExports=v,m.typeOnlyExportStarMap=D}return m.resolvedExports}function hK(u,m,v,D){m&&m.forEach((W,Y)=>{if(Y==="default")return;let oe=u.get(Y);if(!oe)u.set(Y,W),v&&D&&v.set(Y,{specifierText:Fp(D.moduleSpecifier)});else if(v&&D&&oe&&Oh(oe)!==Oh(W)){let Be=v.get(Y);Be.exportsWithDuplicate?Be.exportsWithDuplicate.push(D):Be.exportsWithDuplicate=[D]}})}function mK(u){let m=[],v,D=new Set;u=NE(u);let W=Y(u)||Ee;return v&&D.forEach(oe=>v.delete(oe)),{exports:W,typeOnlyExportStarMap:v};function Y(oe,Be,Me){if(!Me&&oe?.exports&&oe.exports.forEach((Vt,xt)=>D.add(xt)),!(oe&&oe.exports&&Qi(m,oe)))return;let He=new Map(oe.exports),$e=oe.exports.get("__export");if($e){let Vt=$u(),xt=new Map;if($e.declarations)for(let wr of $e.declarations){let dn=L0(wr,wr.moduleSpecifier),vn=Y(dn,wr,Me||wr.isTypeOnly);hK(Vt,vn,xt,wr)}xt.forEach(({exportsWithDuplicate:wr},dn)=>{if(!(dn==="export="||!(wr&&wr.length)||He.has(dn)))for(let vn of wr)PA.add(mo(vn,Z.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,xt.get(dn).specifierText,Bc(dn)))}),hK(He,Vt)}return Be?.isTypeOnly&&(v??(v=new Map),He.forEach((Vt,xt)=>v.set(xt,Be))),He}}function qA(u){let m;return u&&u.mergeId&&(m=tK[u.mergeId])?m:u}function Uo(u){return qA(u.symbol&&dot(u.symbol))}function bS(u){return yE(u)?Uo(u):void 0}function nC(u){return qA(u.parent&&dot(u.parent))}function D5(u){var m,v;return(((m=u.valueDeclaration)==null?void 0:m.kind)===220||((v=u.valueDeclaration)==null?void 0:v.kind)===219)&&bS(u.valueDeclaration.parent)||u}function CK(u,m){let v=ms(m),D=id(v),W=fa(u),Y;if(W.extendedContainersByFile&&(Y=W.extendedContainersByFile.get(D)))return Y;if(v&&v.imports){for(let Be of v.imports){if(ap(Be))continue;let Me=L0(m,Be,!0);!Me||!Ae(Me,u)||(Y=Ft(Y,Me))}if(B(Y))return(W.extendedContainersByFile||(W.extendedContainersByFile=new Map)).set(D,Y),Y}if(W.extendedContainers)return W.extendedContainers;let oe=s.getSourceFiles();for(let Be of oe){if(!Lm(Be))continue;let Me=Uo(Be);Ae(Me,u)&&(Y=Ft(Y,Me))}return W.extendedContainers=Y||E}function HQ(u,m,v){let D=nC(u);if(D&&!(u.flags&262144))return Me(D);let W=Xt(u.declarations,$e=>{if(!a_($e)&&$e.parent){if(QQ($e.parent))return Uo($e.parent);if(vN($e.parent)&&$e.parent.parent&&NE(Uo($e.parent.parent))===u)return Uo($e.parent.parent)}if(wd($e)&&po($e.parent)&&$e.parent.operatorToken.kind===64&&bp($e.parent.left)&&Hd($e.parent.left.expression))return dN($e.parent.left)||y3($e.parent.left.expression)?Uo(ms($e)):(DI($e.parent.left.expression),sa($e.parent.left.expression).resolvedSymbol)});if(!B(W))return;let Y=Xt(W,$e=>Ae($e,u)?$e:void 0),oe=[],Be=[];for(let $e of Y){let[Vt,...xt]=Me($e);oe=Ft(oe,Vt),Be=Pr(Be,xt)}return Nn(oe,Be);function Me($e){let Vt=Xt($e.declarations,He),xt=m&&CK(u,m),wr=k5($e,v);if(m&&$e.flags&qw(v)&&S9($e,m,1920,!1))return Ft(Nn(Nn([$e],Vt),xt),wr);let dn=!($e.flags&qw(v))&&$e.flags&788968&&Lp($e).flags&524288&&v===111551?E9(m,ii=>Fh(ii,Yi=>{if(Yi.flags&qw(v)&&fo(Yi)===Lp($e))return Yi})):void 0,vn=dn?[dn,...Vt,$e]:[...Vt,$e];return vn=Ft(vn,wr),vn=Pr(vn,xt),vn}function He($e){return D&&_K($e,D)}}function k5(u,m){let v=!!B(u.declarations)&&ma(u.declarations);if(m&111551&&v&&v.parent&&nc(v.parent)&&(ag(v)&&v===v.parent.initializer||bh(v)&&v===v.parent.type))return Uo(v.parent)}function _K(u,m){let v=bK(u),D=v&&v.exports&&v.exports.get("export=");return D&&vt(D,m)?v:void 0}function Ae(u,m){if(u===nC(m))return m;let v=u.exports&&u.exports.get("export=");if(v&&vt(v,m))return u;let D=R1(u),W=D.get(m.escapedName);return W&&vt(W,m)?W:Fh(D,Y=>{if(vt(Y,m))return Y})}function vt(u,m){if(qA(Oh(qA(u)))===qA(Oh(qA(m))))return u}function fn(u){return qA(u&&(u.flags&1048576)!==0&&u.exportSymbol||u)}function qi(u,m){return!!(u.flags&111551||u.flags&2097152&&Qb(u,!m)&111551)}function ic(u){var m;let v=new S(ks,u);return T++,v.id=T,(m=ki)==null||m.recordType(v),v}function Pc(u,m){let v=ic(u);return v.symbol=m,v}function ql(u){return new S(ks,u)}function Vc(u,m,v=0,D){yA(m,D);let W=ic(u);return W.intrinsicName=m,W.debugIntrinsicName=D,W.objectFlags=v|524288|2097152|33554432|16777216,W}function yA(u,m){let v=`${u},${m??""}`;Dn.has(v)&&pe.fail(`Duplicate intrinsic type name ${u}${m?` (${m})`:""}; you may need to pass a name to createIntrinsicType.`),Dn.add(v)}function Ph(u,m){let v=Pc(524288,m);return v.objectFlags=u,v.members=void 0,v.properties=void 0,v.callSignatures=void 0,v.constructSignatures=void 0,v.indexInfos=void 0,v}function d0(){return Ha(Do(JPt.keys(),DE))}function Xy(u){return Pc(262144,u)}function x5(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)!==95&&u.charCodeAt(2)!==64&&u.charCodeAt(2)!==35}function Jy(u){let m;return u.forEach((v,D)=>{fO(v,D)&&(m||(m=[])).push(v)}),m||E}function fO(u,m){return!x5(m)&&qi(u)}function Nq(u){let m=Jy(u),v=Cot(u);return v?Nn(m,[v]):m}function jB(u,m,v,D,W){let Y=u;return Y.members=m,Y.properties=E,Y.callSignatures=v,Y.constructSignatures=D,Y.indexInfos=W,m!==Ee&&(Y.properties=Jy(m)),Y}function Qf(u,m,v,D,W){return jB(Ph(16,u),m,v,D,W)}function yK(u){if(u.constructSignatures.length===0)return u;if(u.objectTypeWithoutAbstractConstructSignatures)return u.objectTypeWithoutAbstractConstructSignatures;let m=Le(u.constructSignatures,D=>!(D.flags&4));if(u.constructSignatures===m)return u;let v=Qf(u.symbol,u.members,u.callSignatures,zt(m)?m:E,u.indexInfos);return u.objectTypeWithoutAbstractConstructSignatures=v,v.objectTypeWithoutAbstractConstructSignatures=v,v}function E9(u,m){let v;for(let D=u;D;D=D.parent){if(HI(D)&&D.locals&&!fc(D)&&(v=m(D.locals,void 0,!0,D)))return v;switch(D.kind){case 308:if(!Sl(D))break;case 268:let W=Uo(D);if(v=m(W?.exports||Ee,void 0,!0,D))return v;break;case 264:case 232:case 265:let Y;if((Uo(D).members||Ee).forEach((oe,Be)=>{oe.flags&788968&&(Y||(Y=$u())).set(Be,oe)}),Y&&(v=m(Y,void 0,!1,D)))return v;break}}return m(Gr,void 0,!0)}function qw(u){return u===111551?111551:1920}function S9(u,m,v,D,W=new Map){if(!(u&&!kOe(u)))return;let Y=fa(u),oe=Y.accessibleChainCache||(Y.accessibleChainCache=new Map),Be=E9(m,(Yi,js,Co,Ji)=>Ji),Me=`${D?0:1}|${Be?id(Be):0}|${v}`;if(oe.has(Me))return oe.get(Me);let He=xg(u),$e=W.get(He);$e||W.set(He,$e=[]);let Vt=E9(m,xt);return oe.set(Me,Vt),Vt;function xt(Yi,js,Co){if(!Qi($e,Yi))return;let Ji=vn(Yi,js,Co);return $e.pop(),Ji}function wr(Yi,js){return!YQ(Yi,m,js)||!!S9(Yi.parent,m,qw(js),D,W)}function dn(Yi,js,Co){return(u===(js||Yi)||qA(u)===qA(js||Yi))&&!zt(Yi.declarations,QQ)&&(Co||wr(qA(Yi),v))}function vn(Yi,js,Co){return dn(Yi.get(u.escapedName),void 0,js)?[u]:Fh(Yi,Mi=>{if(Mi.flags&2097152&&Mi.escapedName!=="export="&&Mi.escapedName!=="default"&&!(VAe(Mi)&&m&&Lm(ms(m)))&&(!D||zt(Mi.declarations,HL))&&(!Co||!zt(Mi.declarations,DZe))&&(js||!yp(Mi,282))){let To=XC(Mi),Ka=ii(Mi,To,js);if(Ka)return Ka}if(Mi.escapedName===u.escapedName&&Mi.exportSymbol&&dn(qA(Mi.exportSymbol),void 0,js))return[u]})||(Yi===Gr?ii(pr,pr,js):void 0)}function ii(Yi,js,Co){if(dn(Yi,js,Co))return[Yi];let Ji=R1(js),Mi=Ji&&xt(Ji,!0);if(Mi&&wr(Yi,qw(v)))return[Yi].concat(Mi)}}function YQ(u,m,v){let D=!1;return E9(m,W=>{let Y=qA(W.get(u.escapedName));if(!Y)return!1;if(Y===u)return!0;let oe=Y.flags&2097152&&!yp(Y,282);return Y=oe?XC(Y):Y,(oe?Qb(Y):Y.flags)&v?(D=!0,!0):!1}),D}function kOe(u){if(u.declarations&&u.declarations.length){for(let m of u.declarations)switch(m.kind){case 173:case 175:case 178:case 179:continue;default:return!1}return!0}return!1}function Ope(u,m){return kq(u,m,788968,!1,!0).accessibility===0}function Dq(u,m){return kq(u,m,111551,!1,!0).accessibility===0}function Ppe(u,m,v){return kq(u,m,v,!1,!1).accessibility===0}function N2e(u,m,v,D,W,Y){if(!B(u))return;let oe,Be=!1;for(let Me of u){let He=S9(Me,m,D,!1);if(He){oe=Me;let xt=EK(He[0],W);if(xt)return xt}if(Y&&zt(Me.declarations,QQ)){if(W){Be=!0;continue}return{accessibility:0}}let $e=HQ(Me,m,D),Vt=N2e($e,m,v,v===Me?qw(D):D,W,Y);if(Vt)return Vt}if(Be)return{accessibility:0};if(oe)return{accessibility:1,errorSymbolName:xl(v,m,D),errorModuleName:oe!==v?xl(oe,m,1920):void 0}}function IO(u,m,v,D){return kq(u,m,v,D,!0)}function kq(u,m,v,D,W){if(u&&m){let Y=N2e([u],m,u,v,D,W);if(Y)return Y;let oe=F(u.declarations,bK);if(oe){let Be=bK(m);if(oe!==Be)return{accessibility:2,errorSymbolName:xl(u,m,v),errorModuleName:xl(oe),errorNode:wo(m)?m:void 0}}return{accessibility:1,errorSymbolName:xl(u,m,v)}}return{accessibility:0}}function bK(u){let m=ji(u,xOe);return m&&Uo(m)}function xOe(u){return a_(u)||u.kind===308&&Sl(u)}function QQ(u){return OY(u)||u.kind===308&&Sl(u)}function EK(u,m){let v;if(!ue(Le(u.declarations,Y=>Y.kind!==80),D))return;return{accessibility:0,aliasesToMakeVisible:v};function D(Y){var oe,Be;if(!hk(Y)){let Me=Tv(Y);if(Me&&!Ga(Me,32)&&hk(Me.parent))return W(Y,Me);if(nc(Y)&&Eh(Y.parent.parent)&&!Ga(Y.parent.parent,32)&&hk(Y.parent.parent.parent))return W(Y,Y.parent.parent);if(T7(Y)&&!Ga(Y,32)&&hk(Y.parent))return W(Y,Y);if(mg(Y)){if(u.flags&2097152&&wo(Y)&&((oe=Y.parent)!=null&&oe.parent)&&nc(Y.parent.parent)&&((Be=Y.parent.parent.parent)!=null&&Be.parent)&&Eh(Y.parent.parent.parent.parent)&&!Ga(Y.parent.parent.parent.parent,32)&&Y.parent.parent.parent.parent.parent&&hk(Y.parent.parent.parent.parent.parent))return W(Y,Y.parent.parent.parent.parent);if(u.flags&2){let He=ai(Y);if(He.kind===170)return!1;let $e=He.parent.parent;return $e.kind!==244?!1:Ga($e,32)?!0:hk($e.parent)?W(Y,$e):!1}}return!1}return!0}function W(Y,oe){return m&&(sa(Y).isVisible=!0,v=ps(v,oe)),!0}}function Mpe(u){let m;return u.parent.kind===187||u.parent.kind===234&&!kw(u.parent)||u.parent.kind===168||u.parent.kind===183&&u.parent.parameterName===u?m=1160127:u.kind===167||u.kind===212||u.parent.kind===272||u.parent.kind===167&&u.parent.left===u||u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u?m=1920:m=788968,m}function xq(u,m,v=!0){let D=Mpe(u),W=T0(u),Y=An(m,W.escapedText,D,void 0,!1);return Y&&Y.flags&262144&&D&788968?{accessibility:0}:!Y&&DF(W)&&IO(Uo(i0(W,!1,!1)),W,D,!1).accessibility===0?{accessibility:0}:Y?EK(Y,v)||{accessibility:1,errorSymbolName:Fp(W),errorNode:W}:{accessibility:3,errorSymbolName:Fp(W),errorNode:W}}function xl(u,m,v,D=4,W){let Y=70221824,oe=0;D&2&&(Y|=128),D&1&&(Y|=512),D&8&&(Y|=16384),D&32&&(oe|=4),D&16&&(oe|=1);let Be=D&4?kt.symbolToNode:kt.symbolToEntityName;return W?Me(W).getText():yW(Me);function Me(He){let $e=Be(u,v,m,Y,oe),Vt=m?.kind===308?H3t():bQ(),xt=m&&ms(m);return Vt.writeNode(4,$e,xt,He),He}}function hO(u,m,v=0,D,W,Y,oe,Be){return W?Me(W).getText():yW(Me);function Me(He){let $e;v&262144?$e=D===1?186:185:$e=D===1?181:180;let Vt=kt.signatureToSignatureDeclaration(u,$e,m,XQ(v)|70221824|512,void 0,void 0,Y,oe,Be),xt=Ett(),wr=m&&ms(m);return xt.writeNode(4,Vt,wr,lbe(He)),He}}function ro(u,m,v=1064960,D=One(""),W,Y,oe){let Be=!W&&Te.noErrorTruncation||v&1,Me=kt.typeToTypeNode(u,m,XQ(v)|70221824|(Be?1:0),void 0,void 0,W,Y,oe);if(Me===void 0)return pe.fail("should always get typenode");let He=u!==En?bQ():M3t(),$e=m&&ms(m);He.writeNode(4,Me,$e,D);let Vt=D.getText(),xt=W||(Be?zre*2:GY*2);return xt&&Vt&&Vt.length>=xt?Vt.substr(0,xt-3)+"...":Vt}function Hpe(u,m){let v=Lse(u.symbol)?ro(u,u.symbol.valueDeclaration):ro(u),D=Lse(m.symbol)?ro(m,m.symbol.valueDeclaration):ro(m);return v===D&&(v=Zse(u),D=Zse(m)),[v,D]}function Zse(u){return ro(u,void 0,64)}function Lse(u){return u&&!!u.valueDeclaration&&un(u.valueDeclaration)&&!BS(u.valueDeclaration)}function XQ(u=0){return u&848330095}function D2e(u){return!!u.symbol&&!!(u.symbol.flags&32)&&(u===Dv(u.symbol)||!!(u.flags&524288)&&!!(la(u)&16777216))}function SK(u){return tl(u)}function GOe(){return{syntacticBuilderResolver:{evaluateEntityNameExpression:Y0n,isExpandoFunctionDeclaration:gyn,hasLateBindableName:Pse,shouldRemoveDeclaration(er,ut){return!(er.internalFlags&8&&Hd(ut.name.expression)&&rT(ut.name).flags&1)},createRecoveryBoundary(er){return Kc(er)},isDefinitelyReferenceToGlobalSymbolObject:pk,getAllAccessorDeclarations:p6t,requiresAddingImplicitUndefined(er,ut,hi){var Di;switch(er.kind){case 173:case 172:case 349:ut??(ut=Uo(er));let Qt=fo(ut);return!!(ut.flags&4&&ut.flags&16777216&&GB(er)&&((Di=ut.links)!=null&&Di.mappedType)&&AMs(Qt));case 170:case 342:return e3e(er,hi);default:pe.assertNever(er)}},isOptionalParameter:O2e,isUndefinedIdentifierExpression(er){return Lv(er)===dt},isEntityNameVisible(er,ut,hi){return xq(ut,er.enclosingDeclaration,hi)},serializeExistingTypeNode(er,ut,hi){return Jb(er,ut,!!hi)},serializeReturnTypeForSignature(er,ut,hi){let Di=er,Qt=vS(ut);hi??(hi=Uo(ut));let Cr=Di.enclosingSymbolTypes.get(xg(hi))??Cl(Ad(Qt),Di.mapper);return iA(Di,Qt,Cr)},serializeTypeOfExpression(er,ut){let hi=er,Di=Cl(G1(nyn(ut)),hi.mapper);return ii(Di,hi)},serializeTypeOfDeclaration(er,ut,hi){var Di;let Qt=er;hi??(hi=Uo(ut));let Cr=(Di=Qt.enclosingSymbolTypes)==null?void 0:Di.get(xg(hi));return Cr===void 0&&(Cr=hi.flags&98304&&ut.kind===179?Cl(T9(hi),Qt.mapper):hi&&!(hi.flags&133120)?Cl(Q5(fo(hi)),Qt.mapper):nn),ut&&(Si(ut)||AS(ut))&&e3e(ut,Qt.enclosingDeclaration)&&(Cr=BO(Cr)),go(hi,Qt,Cr)},serializeNameOfParameter(er,ut){return qc(Uo(ut),ut,er)},serializeEntityName(er,ut){let hi=er,Di=Lv(ut,!0);if(Di&&Dq(Di,hi.enclosingDeclaration))return Vv(Di,hi,1160127)},serializeTypeName(er,ut,hi,Di){return sC(er,ut,hi,Di)},getJsDocPropertyOverride(er,ut,hi){let Di=er,Qt=Ir(hi.name)?hi.name:hi.name.right,Cr=Wi(m(Di,ut),Qt.escapedText);return Cr&&hi.typeExpression&&m(Di,hi.typeExpression.type)!==Cr?ii(Cr,Di):void 0},enterNewScope(er,ut){if(Eu(ut)||i9(ut)){let hi=vS(ut);return Vu(er,ut,hi.parameters,hi.typeParameters)}else{let hi=I2(ut)?PUt(ut):[Z5(Uo(ut.typeParameter))];return Vu(er,ut,void 0,hi)}},markNodeReuse(er,ut,hi){return v(er,ut,hi)},trackExistingEntityName(er,ut){return Bp(ut,er)},trackComputedName(er,ut){_o(ut,er.enclosingDeclaration,er)},getModuleSpecifierOverride(er,ut,hi){let Di=er;if(Di.bundled||Di.enclosingFile!==ms(hi)){let Qt=hi.text,Cr=Qt,jr=sa(ut).resolvedSymbol,Qn=ut.isTypeOf?111551:788968,yi=jr&&IO(jr,Di.enclosingDeclaration,Qn,!1).accessibility===0&&pu(jr,Di,Qn,!0)[0];if(yi&&QD(yi))Qt=vh(yi,Di);else{let Xn=h6t(ut);Xn&&(Qt=vh(Xn.symbol,Di))}if(Qt.includes("/node_modules/")&&(Di.encounteredError=!0,Di.tracker.reportLikelyUnsafeImportRequiredError&&Di.tracker.reportLikelyUnsafeImportRequiredError(Qt)),Qt!==Cr)return Qt}},canReuseTypeNode(er,ut){return P0(er,ut)},canReuseTypeNodeAnnotation(er,ut,hi,Di,Qt){var Cr;let jr=er;if(jr.enclosingDeclaration===void 0)return!1;Di??(Di=Uo(ut));let Qn=(Cr=jr.enclosingSymbolTypes)==null?void 0:Cr.get(xg(Di));Qn===void 0&&(Di.flags&98304?Qn=ut.kind===179?T9(Di):Upe(Di):B3(ut)?Qn=Ad(vS(ut)):Qn=fo(Di));let yi=SK(hi);return lo(yi)?!0:(Qt&&yi&&(yi=V0(yi,!Si(ut))),!!yi&&tc(ut,Qn,yi)&&as(hi,Qn))}},typeToTypeNode:(er,ut,hi,Di,Qt,Cr,jr,Qn)=>He(ut,hi,Di,Qt,Cr,jr,yi=>ii(er,yi),Qn),typePredicateToTypePredicateNode:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>O0(er,Cr)),serializeTypeForDeclaration:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>tr.serializeTypeOfDeclaration(er,ut,jr)),serializeReturnTypeForSignature:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeReturnTypeForSignature(er,Uo(er),Cr)),serializeTypeForExpression:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeTypeOfExpression(er,Cr)),indexInfoToIndexSignatureDeclaration:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>_l(er,Cr,void 0)),signatureToSignatureDeclaration:(er,ut,hi,Di,Qt,Cr,jr,Qn,yi)=>He(hi,Di,Qt,Cr,jr,Qn,Xn=>ka(er,ut,Xn),yi),symbolToEntityName:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>gh(er,jr,ut,!1)),symbolToExpression:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>Vv(er,jr,ut)),symbolToTypeParameterDeclarations:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>Af(er,Cr)),symbolToParameterDeclaration:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>eo(er,Cr)),typeParameterToDeclaration:(er,ut,hi,Di,Qt,Cr,jr,Qn)=>He(ut,hi,Di,Qt,Cr,jr,yi=>zI(er,yi),Qn),symbolTableToDeclarationStatements:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>j5(er,Cr)),symbolToNode:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>D(er,jr,ut)),symbolToDeclarations:W};function m(er,ut,hi){let Di=SK(ut);if(!er.mapper)return Di;let Qt=Cl(Di,er.mapper);return hi&&Qt!==Di?void 0:Qt}function v(er,ut,hi){if((!ap(ut)||!(ut.flags&16)||!er.enclosingFile||er.enclosingFile!==ms(xd(ut)))&&(ut=me.cloneNode(ut)),ut===hi||!hi)return ut;let Di=ut.original;for(;Di&&Di!==hi;)Di=Di.original;return Di||ua(ut,hi),er.enclosingFile&&er.enclosingFile===ms(xd(hi))?gn(ut,hi):ut}function D(er,ut,hi){if(ut.internalFlags&1){if(er.valueDeclaration){let Qt=fl(er.valueDeclaration);if(Qt&&Un(Qt))return Qt}let Di=fa(er).nameType;if(Di&&Di.flags&9216)return ut.enclosingDeclaration=Di.symbol.valueDeclaration,me.createComputedPropertyName(Vv(Di.symbol,ut,hi))}return Vv(er,ut,hi)}function W(er,ut,hi,Di,Qt,Cr){let jr=He(void 0,hi,void 0,void 0,Di,Qt,Qn=>Me(er,Qn),Cr);return Xt(jr,Qn=>{switch(Qn.kind){case 264:return Y(Qn,er);case 267:return oe(Qn,Q3,er);case 265:return Be(Qn,er,ut);case 268:return oe(Qn,Lh,er);default:return}})}function Y(er,ut){let hi=Le(ut.declarations,xa),Di=hi&&hi.length>0?hi[0]:er,Qt=c_(Di)&-161;return wd(Di)&&(er=me.updateClassDeclaration(er,er.modifiers,void 0,er.typeParameters,er.heritageClauses,er.members)),me.replaceModifiers(er,Qt)}function oe(er,ut,hi){let Di=Le(hi.declarations,ut),Qt=Di&&Di.length>0?Di[0]:er,Cr=c_(Qt)&-161;return me.replaceModifiers(er,Cr)}function Be(er,ut,hi){if(hi&64)return oe(er,d_,ut)}function Me(er,ut){let hi=Lp(er);ut.typeStack.push(hi.id),ut.typeStack.push(-1);let Di=$u([er]),Qt=j5(Di,ut);return ut.typeStack.pop(),ut.typeStack.pop(),Qt}function He(er,ut,hi,Di,Qt,Cr,jr,Qn){let yi=Di?.trackSymbol?Di.moduleResolverHost:(hi||0)&4?Tvs(s):void 0;ut=ut||0;let Xn=Qt||(ut&1?zre:GY),Ti={enclosingDeclaration:er,enclosingFile:er&&ms(er),flags:ut,internalFlags:hi||0,tracker:void 0,maxTruncationLength:Xn,maxExpansionDepth:Cr??-1,encounteredError:!1,suppressReportInferenceFallback:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!Te.outFile&&!!er&&Sl(ms(er)),truncating:!1,usedSymbolNames:void 0,remappedSymbolNames:void 0,remappedSymbolReferences:void 0,reverseMappedStack:void 0,mustCreateTypeParameterSymbolList:!0,typeParameterSymbolList:void 0,mustCreateTypeParametersNamesLookups:!0,typeParameterNames:void 0,typeParameterNamesByText:void 0,typeParameterNamesByTextNextNameCount:void 0,enclosingSymbolTypes:new Map,mapper:void 0,depth:0,typeStack:[],out:{canIncreaseExpansionDepth:!1,truncated:!1}};Ti.tracker=new KPt(Ti,Di,yi);let Us=jr(Ti);return Ti.truncating&&Ti.flags&1&&Ti.tracker.reportTruncationError(),Qn&&(Qn.canIncreaseExpansionDepth=Ti.out.canIncreaseExpansionDepth,Qn.truncated=Ti.out.truncated),Ti.encounteredError?void 0:Us}function $e(er,ut,hi){let Di=xg(ut),Qt=er.enclosingSymbolTypes.get(Di);return er.enclosingSymbolTypes.set(Di,hi),Cr;function Cr(){Qt?er.enclosingSymbolTypes.set(Di,Qt):er.enclosingSymbolTypes.delete(Di)}}function Vt(er){let ut=er.flags,hi=er.internalFlags,Di=er.depth;return Qt;function Qt(){er.flags=ut,er.internalFlags=hi,er.depth=Di}}function xt(er){return er.maxExpansionDepth>=0&&wr(er)}function wr(er){return er.truncating?er.truncating:er.truncating=er.approximateLength>er.maxTruncationLength}function dn(er,ut){for(let hi=0;hi0)return er.flags&1048576?me.createUnionTypeNode(ta):me.createIntersectionTypeNode(ta);!ut.encounteredError&&!(ut.flags&262144)&&(ut.encounteredError=!0);return}if(jr&48)return pe.assert(!!(er.flags&524288)),No(er);if(er.flags&4194304){let Li=er.type;ut.approximateLength+=6;let ta=ii(Li,ut);return me.createTypeOperatorNode(143,ta)}if(er.flags&134217728){let Li=er.texts,ta=er.types,Cu=me.createTemplateHead(Li[0]),Ul=me.createNodeArray(lt(ta,(SA,pd)=>me.createTemplateLiteralTypeSpan(ii(SA,ut),(pdQn(Li));if(er.flags&33554432){let Li=ii(er.baseType,ut),ta=Jse(er)&&bUt("NoInfer",!1);return ta?Ld(ta,ut,788968,[Li]):Li}return pe.fail("Should be unreachable.");function Qn(Li){let ta=ii(Li.checkType,ut);if(ut.approximateLength+=15,ut.flags&4&&Li.root.isDistributive&&!(Li.checkType.flags&262144)){let au=Xy(AA(262144,"T")),bm=Jf(au,ut),Em=me.createTypeReferenceNode(bm);ut.approximateLength+=37;let M_=GK(Li.root.checkType,au,Li.mapper),M0=ut.inferTypeParameters;ut.inferTypeParameters=Li.root.inferTypeParameters;let jy=ii(Cl(Li.root.extendsType,M_),ut);ut.inferTypeParameters=M0;let bZ=yi(Cl(m(ut,Li.root.node.trueType),M_)),q5=yi(Cl(m(ut,Li.root.node.falseType),M_));return me.createConditionalTypeNode(ta,me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Em.typeName))),me.createConditionalTypeNode(me.createTypeReferenceNode(me.cloneNode(bm)),ii(Li.checkType,ut),me.createConditionalTypeNode(Em,jy,bZ,q5),me.createKeywordTypeNode(146)),me.createKeywordTypeNode(146))}let Cu=ut.inferTypeParameters;ut.inferTypeParameters=Li.root.inferTypeParameters;let Ul=ii(Li.extendsType,ut);ut.inferTypeParameters=Cu;let SA=yi(EO(Li)),pd=yi(SO(Li));return me.createConditionalTypeNode(ta,Ul,SA,pd)}function yi(Li){var ta,Cu,Ul;return Li.flags&1048576?(ta=ut.visitedTypes)!=null&&ta.has(JC(Li))?(ut.flags&131072||(ut.encounteredError=!0,(Ul=(Cu=ut.tracker)==null?void 0:Cu.reportCyclicStructureError)==null||Ul.call(Cu)),js(ut)):zo(Li,SA=>ii(SA,ut)):ii(Li,ut)}function Xn(Li){return!!U2e(Li)}function Ti(Li){return!!Li.target&&Xn(Li.target)&&!Xn(Li)}function Us(Li){var ta;pe.assert(!!(Li.flags&524288));let Cu=Li.declaration.readonlyToken?me.createToken(Li.declaration.readonlyToken.kind):void 0,Ul=Li.declaration.questionToken?me.createToken(Li.declaration.questionToken.kind):void 0,SA,pd,au=nG(Li),bm=tT(Li),Em=!Hse(Li)&&!(L5(Li).flags&2)&&ut.flags&4&&!(SS(Li).flags&262144&&((ta=Uy(SS(Li)))==null?void 0:ta.flags)&4194304);if(Hse(Li)){if(Ti(Li)&&ut.flags&4){let DO=Xy(AA(262144,"T")),t$=Jf(DO,ut),Sfe=Li.target;pd=me.createTypeReferenceNode(t$),au=Cl(nG(Sfe),Ghn([tT(Sfe),L5(Sfe)],[bm,DO]))}SA=me.createTypeOperatorNode(143,pd||ii(L5(Li),ut))}else if(Em){let DO=Xy(AA(262144,"T")),t$=Jf(DO,ut);pd=me.createTypeReferenceNode(t$),SA=pd}else SA=ii(SS(Li),ut);let M_=Vl(bm,ut,SA),M0=Vu(ut,Li.declaration,void 0,[Z5(Uo(Li.declaration.typeParameter))]),jy=Li.declaration.nameType?ii(R9(Li),ut):void 0,bZ=ii(mZ(au,!!(_k(Li)&4)),ut);M0();let q5=me.createMappedTypeNode(Cu,M_,jy,Ul,bZ,void 0);ut.approximateLength+=10;let cX=ti(q5,1);if(Ti(Li)&&ut.flags&4){let DO=Cl(Uy(m(ut,Li.declaration.typeParameter.constraint.type))||cn,Li.mapper);return me.createConditionalTypeNode(ii(L5(Li),ut),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(pd.typeName),DO.flags&2?void 0:ii(DO,ut))),cX,me.createKeywordTypeNode(146))}else if(Em)return me.createConditionalTypeNode(ii(SS(Li),ut),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(pd.typeName),me.createTypeOperatorNode(143,ii(L5(Li),ut)))),cX,me.createKeywordTypeNode(146));return cX}function No(Li,ta=!1,Cu=!1){var Ul,SA;let pd=Li.id,au=Li.symbol;if(au){if(!!(la(Li)&8388608)){let jy=Li.node;if(Ow(jy)&&m(ut,jy)===Li){let bZ=tr.tryReuseExistingTypeNode(ut,jy);if(bZ)return bZ}return(Ul=ut.visitedTypes)!=null&&Ul.has(pd)?js(ut):zo(Li,za)}let M_=D2e(Li)?788968:111551;if(KN(au.valueDeclaration))return Ld(au,ut,M_);if(!Cu&&(au.flags&32&&!ta&&!F2e(au)&&!(au.valueDeclaration&&xa(au.valueDeclaration)&&ut.flags&2048&&(!mm(au.valueDeclaration)||IO(au,ut.enclosingDeclaration,M_,!1).accessibility!==0))||au.flags&896||bm()))if(vn(Li,ut))ut.depth+=1;else return Ld(au,ut,M_);if((SA=ut.visitedTypes)!=null&&SA.has(pd)){let M0=FOe(Li);return M0?Ld(M0,ut,788968):js(ut)}else return zo(Li,za)}else return za(Li);function bm(){var Em;let M_=!!(au.flags&8192)&&zt(au.declarations,jy=>lg(jy)&&!zfn(fl(jy))),M0=!!(au.flags&16)&&(au.parent||F(au.declarations,jy=>jy.parent.kind===308||jy.parent.kind===269));if(M_||M0)return(!!(ut.flags&4096)||((Em=ut.visitedTypes)==null?void 0:Em.has(pd)))&&(!(ut.flags&8)||Dq(au,ut.enclosingDeclaration))}}function zo(Li,ta){var Cu,Ul,SA;let pd=Li.id,au=la(Li)&16&&Li.symbol&&Li.symbol.flags&32,bm=la(Li)&4&&Li.node?"N"+id(Li.node):Li.flags&16777216?"N"+id(Li.root.node):Li.symbol?(au?"+":"")+xg(Li.symbol):void 0;ut.visitedTypes||(ut.visitedTypes=new Set),bm&&!ut.symbolDepth&&(ut.symbolDepth=new Map);let Em=ut.maxExpansionDepth>=0?void 0:ut.enclosingDeclaration&&sa(ut.enclosingDeclaration),M_=`${JC(Li)}|${ut.flags}|${ut.internalFlags}`;Em&&(Em.serializedTypes||(Em.serializedTypes=new Map));let M0=(Cu=Em?.serializedTypes)==null?void 0:Cu.get(M_);if(M0)return(Ul=M0.trackedSymbols)==null||Ul.forEach(([vk,aoe,n3e])=>ut.tracker.trackSymbol(vk,aoe,n3e)),M0.truncating&&(ut.truncating=!0),ut.approximateLength+=M0.addedLength,t$(M0.node);let jy;if(bm){if(jy=ut.symbolDepth.get(bm)||0,jy>10)return js(ut);ut.symbolDepth.set(bm,jy+1)}ut.visitedTypes.add(pd);let bZ=ut.trackedSymbols;ut.trackedSymbols=void 0;let q5=ut.approximateLength,cX=ta(Li),DO=ut.approximateLength-q5;return!ut.reportedDiagnostic&&!ut.encounteredError&&((SA=Em?.serializedTypes)==null||SA.set(M_,{node:cX,truncating:ut.truncating,addedLength:DO,trackedSymbols:ut.trackedSymbols})),ut.visitedTypes.delete(pd),bm&&ut.symbolDepth.set(bm,jy),ut.trackedSymbols=bZ,cX;function t$(vk){return!ap(vk)&&eu(vk)===vk?vk:v(ut,me.cloneNode(_s(vk,t$,void 0,Sfe,t$)),vk)}function Sfe(vk,aoe,n3e,E6t,S6t){return vk&&vk.length===0?gn(me.createNodeArray(void 0,vk.hasTrailingComma),vk):Os(vk,aoe,n3e,E6t,S6t)}}function za(Li){if(Xb(Li)||Li.containsError)return Us(Li);let ta=CR(Li);if(!ta.properties.length&&!ta.indexInfos.length){if(!ta.callSignatures.length&&!ta.constructSignatures.length)return ut.approximateLength+=2,ti(me.createTypeLiteralNode(void 0),1);if(ta.callSignatures.length===1&&!ta.constructSignatures.length){let au=ta.callSignatures[0];return ka(au,185,ut)}if(ta.constructSignatures.length===1&&!ta.callSignatures.length){let au=ta.constructSignatures[0];return ka(au,186,ut)}}let Cu=Le(ta.constructSignatures,au=>!!(au.flags&4));if(zt(Cu)){let au=lt(Cu,TK);return ta.callSignatures.length+(ta.constructSignatures.length-Cu.length)+ta.indexInfos.length+(ut.flags&2048?ze(ta.properties,Em=>!(Em.flags&4194304)):B(ta.properties))&&au.push(yK(ta)),ii(jg(au),ut)}let Ul=Vt(ut);ut.flags|=4194304;let SA=xA(ta);Ul();let pd=me.createTypeLiteralNode(SA);return ut.approximateLength+=2,ti(pd,ut.flags&1024?0:1),pd}function La(Li){let ta=gf(Li);if(Li.target===kA||Li.target===gA){if(ut.flags&2){let SA=ii(ta[0],ut);return me.createTypeReferenceNode(Li.target===kA?"Array":"ReadonlyArray",[SA])}let Cu=ii(ta[0],ut),Ul=me.createArrayTypeNode(Cu);return Li.target===kA?Ul:me.createTypeOperatorNode(148,Ul)}else if(Li.target.objectFlags&8){if(ta=Er(ta,(Cu,Ul)=>mZ(Cu,!!(Li.target.elementFlags[Ul]&2))),ta.length>0){let Cu=k9(Li),Ul=To(ta.slice(0,Cu),ut);if(Ul){let{labeledElementDeclarations:SA}=Li.target;for(let au=0;au0){let Em=0;if(Li.target.typeParameters&&(Em=Math.min(Li.target.typeParameters.length,ta.length),(N1(Li,Tot(!1))||N1(Li,jIn(!1))||N1(Li,JOe(!1))||N1(Li,KIn(!1)))&&(!Li.node||!oh(Li.node)||!Li.node.typeArguments||Li.node.typeArguments.length0;){let M_=ta[Em-1],M0=Li.target.typeParameters[Em-1],jy=KQ(M0);if(!jy||!aG(M_,jy))break;Em--}pd=To(ta.slice(Ul,Em),ut)}let au=Vt(ut);ut.flags|=16;let bm=Ld(Li.symbol,ut,788968,pd);return au(),SA?to(SA,bm):bm}}}function to(Li,ta){if(qm(Li)){let Cu=Li.typeArguments,Ul=Li.qualifier;Ul&&(Ir(Ul)?Cu!==P3(Ul)&&(Ul=Vx(me.cloneNode(Ul),Cu)):Cu!==P3(Ul.right)&&(Ul=me.updateQualifiedName(Ul,Ul.left,Vx(me.cloneNode(Ul.right),Cu)))),Cu=ta.typeArguments;let SA=_c(ta);for(let pd of SA)Ul=Ul?me.createQualifiedName(Ul,pd):pd;return me.updateImportTypeNode(Li,Li.argument,Li.attributes,Ul,Cu,Li.isTypeOf)}else{let Cu=Li.typeArguments,Ul=Li.typeName;Ir(Ul)?Cu!==P3(Ul)&&(Ul=Vx(me.cloneNode(Ul),Cu)):Cu!==P3(Ul.right)&&(Ul=me.updateQualifiedName(Ul,Ul.left,Vx(me.cloneNode(Ul.right),Cu))),Cu=ta.typeArguments;let SA=_c(ta);for(let pd of SA)Ul=me.createQualifiedName(Ul,pd);return me.updateTypeReferenceNode(Li,Ul,Cu)}}function _c(Li){let ta=Li.typeName,Cu=[];for(;!Ir(ta);)Cu.unshift(ta.right),ta=ta.left;return Cu.unshift(ta),Cu}function iu(Li,ta,Cu){if(Li.components&&ue(Li.components,SA=>{var pd;return!!(SA.name&&Un(SA.name)&&Hd(SA.name.expression)&&ta.enclosingDeclaration&&((pd=xq(SA.name.expression,ta.enclosingDeclaration,!1))==null?void 0:pd.accessibility)===0)})){let SA=Le(Li.components,pd=>!Pse(pd));return lt(SA,pd=>(_o(pd.name.expression,ta.enclosingDeclaration,ta),v(ta,me.createPropertySignature(Li.isReadonly?[me.createModifier(148)]:void 0,pd.name,(ss(pd)||pi(pd)||Il(pd)||gu(pd)||wB(pd)||Av(pd))&&pd.questionToken?me.createToken(58):void 0,Cu||ii(fo(pd.symbol),ta)),pd)))}return[_l(Li,ta,Cu)]}function xA(Li){if(wr(ut))return ut.out.truncated=!0,ut.flags&1?[Nz(me.createNotEmittedTypeElement(),3,"elided")]:[me.createPropertySignature(void 0,"...",void 0,void 0)];ut.typeStack.push(-1);let ta=[];for(let SA of Li.callSignatures)ta.push(ka(SA,180,ut));for(let SA of Li.constructSignatures)SA.flags&4||ta.push(ka(SA,181,ut));for(let SA of Li.indexInfos)ta.push(...iu(SA,ut,Li.objectFlags&1024?js(ut):void 0));let Cu=Li.properties;if(!Cu)return ut.typeStack.pop(),ta;let Ul=0;for(let SA of Cu)if(!(z5(ut)&&SA.flags&4194304)){if(Ul++,ut.flags&2048){if(SA.flags&4194304)continue;d2(SA)&6&&ut.tracker.reportPrivateInBaseOfClassExpression&&ut.tracker.reportPrivateInBaseOfClassExpression(Bc(SA.escapedName))}if(wr(ut)&&Ul+2!(za.flags&32768)),0);for(let za of zo){let La=ka(za,174,ut,{name:Qn,questionToken:yi});hi.push(No(La,za.declaration||er.valueDeclaration))}if(zo.length||!yi)return}let Xn;Co(er,ut)?Xn=js(ut):(Qt&&(ut.reverseMappedStack||(ut.reverseMappedStack=[]),ut.reverseMappedStack.push(er)),Xn=Cr?ea(ut,void 0,Cr,er):me.createKeywordTypeNode(133),Qt&&ut.reverseMappedStack.pop());let Ti=BR(er)?[me.createToken(148)]:void 0;Ti&&(ut.approximateLength+=9);let Us=me.createPropertySignature(Ti,Qn,yi,Xn);hi.push(No(Us,er.valueDeclaration));function No(zo,za){var La;let to=(La=er.declarations)==null?void 0:La.find(_c=>_c.kind===349);if(to){let _c=wJ(to.comment);_c&&LB(zo,[{kind:3,text:`* + })(name => super[name], (name, value) => super[name] = value);`};function ik(s,c){return Ll(s)&&Ir(s.expression)&&(rA(s.expression)&8192)!==0&&s.expression.escapedText===c}function yC(s){return s.kind===9}function AQ(s){return s.kind===10}function Lg(s){return s.kind===11}function r9(s){return s.kind===12}function EEe(s){return s.kind===14}function HW(s){return s.kind===15}function dQ(s){return s.kind===16}function vie(s){return s.kind===17}function _de(s){return s.kind===18}function yde(s){return s.kind===26}function SEe(s){return s.kind===28}function xz(s){return s.kind===40}function bde(s){return s.kind===41}function Bie(s){return s.kind===42}function Gz(s){return s.kind===54}function eR(s){return s.kind===58}function vEe(s){return s.kind===59}function wie(s){return s.kind===29}function h9e(s){return s.kind===39}function Ir(s){return s.kind===80}function p(s){return s.kind===81}function y(s){return s.kind===95}function w(s){return s.kind===90}function G(s){return s.kind===134}function X(s){return s.kind===131}function U(s){return s.kind===135}function le(s){return s.kind===148}function Ge(s){return s.kind===126}function Xe(s){return s.kind===128}function St(s){return s.kind===164}function ht(s){return s.kind===129}function rr(s){return s.kind===108}function an(s){return s.kind===102}function Ks(s){return s.kind===84}function zi(s){return s.kind===167}function Un(s){return s.kind===168}function Ds(s){return s.kind===169}function Si(s){return s.kind===170}function Eo(s){return s.kind===171}function ss(s){return s.kind===172}function pi(s){return s.kind===173}function Il(s){return s.kind===174}function gu(s){return s.kind===175}function dl(s){return s.kind===176}function Tc(s){return s.kind===177}function wg(s){return s.kind===178}function kg(s){return s.kind===179}function Tg(s){return s.kind===180}function im(s){return s.kind===181}function N0(s){return s.kind===182}function BE(s){return s.kind===183}function oh(s){return s.kind===184}function Z_(s){return s.kind===185}function sk(s){return s.kind===186}function Pw(s){return s.kind===187}function bh(s){return s.kind===188}function WF(s){return s.kind===189}function Mw(s){return s.kind===190}function tR(s){return s.kind===203}function n9(s){return s.kind===191}function i9(s){return s.kind===192}function AS(s){return s.kind===193}function _f(s){return s.kind===194}function h2(s){return s.kind===195}function rR(s){return s.kind===196}function _v(s){return s.kind===197}function Px(s){return s.kind===198}function WB(s){return s.kind===199}function yv(s){return s.kind===200}function OB(s){return s.kind===201}function wE(s){return s.kind===202}function qm(s){return s.kind===206}function SN(s){return s.kind===205}function nR(s){return s.kind===204}function $m(s){return s.kind===207}function m2(s){return s.kind===208}function mg(s){return s.kind===209}function YI(s){return s.kind===210}function ag(s){return s.kind===211}function jo(s){return s.kind===212}function Qg(s){return s.kind===213}function Ll(s){return s.kind===214}function C2(s){return s.kind===215}function QI(s){return s.kind===216}function OF(s){return s.kind===217}function dI(s){return s.kind===218}function jA(s){return s.kind===219}function gA(s){return s.kind===220}function PF(s){return s.kind===221}function vN(s){return s.kind===222}function iR(s){return s.kind===223}function _1(s){return s.kind===224}function D0(s){return s.kind===225}function ok(s){return s.kind===226}function po(s){return s.kind===227}function Hw(s){return s.kind===228}function MF(s){return s.kind===229}function Qd(s){return s.kind===230}function cf(s){return s.kind===231}function wd(s){return s.kind===232}function Ep(s){return s.kind===233}function A_(s){return s.kind===234}function Xd(s){return s.kind===235}function Xg(s){return s.kind===239}function bv(s){return s.kind===236}function Du(s){return s.kind===237}function Y3(s){return s.kind===238}function Ay(s){return s.kind===356}function Ede(s){return s.kind===357}function Tie(s){return s.kind===240}function oOt(s){return s.kind===241}function eg(s){return s.kind===242}function Eh(s){return s.kind===244}function k$e(s){return s.kind===243}function PC(s){return s.kind===245}function Q3(s){return s.kind===246}function y$r(s){return s.kind===247}function x$e(s){return s.kind===248}function X3(s){return s.kind===249}function m9e(s){return s.kind===250}function BEe(s){return s.kind===251}function b$r(s){return s.kind===252}function E$r(s){return s.kind===253}function _2(s){return s.kind===254}function aOt(s){return s.kind===255}function Sde(s){return s.kind===256}function YW(s){return s.kind===257}function G$e(s){return s.kind===258}function kU(s){return s.kind===259}function S$r(s){return s.kind===260}function nc(s){return s.kind===261}function d_(s){return s.kind===262}function ah(s){return s.kind===263}function mm(s){return s.kind===264}function p_(s){return s.kind===265}function PB(s){return s.kind===266}function J3(s){return s.kind===267}function Lh(s){return s.kind===268}function BN(s){return s.kind===269}function vde(s){return s.kind===270}function wEe(s){return s.kind===271}function Zm(s){return s.kind===272}function Yf(s){return s.kind===273}function Yw(s){return s.kind===274}function v$r(s){return s.kind===303}function cOt(s){return s.kind===301}function B$r(s){return s.kind===302}function xU(s){return s.kind===301}function lOt(s){return s.kind===302}function Mx(s){return s.kind===275}function ak(s){return s.kind===281}function wN(s){return s.kind===276}function dy(s){return s.kind===277}function yf(s){return s.kind===278}function Vh(s){return s.kind===279}function Ev(s){return s.kind===280}function k0(s){return s.kind===282}function C9e(s){return s.kind===80||s.kind===11}function w$r(s){return s.kind===283}function uOt(s){return s.kind===354}function Fz(s){return s.kind===358}function HF(s){return s.kind===284}function TN(s){return s.kind===285}function GU(s){return s.kind===286}function sR(s){return s.kind===287}function pQ(s){return s.kind===288}function U3(s){return s.kind===289}function Qw(s){return s.kind===290}function gOt(s){return s.kind===291}function RN(s){return s.kind===292}function fQ(s){return s.kind===293}function Zz(s){return s.kind===294}function Rie(s){return s.kind===295}function oR(s){return s.kind===296}function Nie(s){return s.kind===297}function Bde(s){return s.kind===298}function y1(s){return s.kind===299}function IQ(s){return s.kind===300}function Cm(s){return s.kind===304}function u0(s){return s.kind===305}function Hx(s){return s.kind===306}function YF(s){return s.kind===307}function cl(s){return s.kind===308}function AOt(s){return s.kind===309}function K3(s){return s.kind===310}function wde(s){return s.kind===311}function j3(s){return s.kind===312}function dOt(s){return s.kind===325}function pOt(s){return s.kind===326}function T$r(s){return s.kind===327}function fOt(s){return s.kind===313}function IOt(s){return s.kind===314}function Die(s){return s.kind===315}function _9e(s){return s.kind===316}function F$e(s){return s.kind===317}function kie(s){return s.kind===318}function y9e(s){return s.kind===319}function R$r(s){return s.kind===320}function aR(s){return s.kind===321}function FU(s){return s.kind===323}function s9(s){return s.kind===324}function Lz(s){return s.kind===329}function N$r(s){return s.kind===331}function hOt(s){return s.kind===333}function Z$e(s){return s.kind===339}function L$e(s){return s.kind===334}function V$e(s){return s.kind===335}function W$e(s){return s.kind===336}function O$e(s){return s.kind===337}function b9e(s){return s.kind===338}function xie(s){return s.kind===340}function P$e(s){return s.kind===332}function D$r(s){return s.kind===348}function TEe(s){return s.kind===341}function dS(s){return s.kind===342}function E9e(s){return s.kind===343}function M$e(s){return s.kind===344}function Tde(s){return s.kind===345}function MB(s){return s.kind===346}function ZU(s){return s.kind===347}function k$r(s){return s.kind===328}function mOt(s){return s.kind===349}function S9e(s){return s.kind===330}function v9e(s){return s.kind===351}function x$r(s){return s.kind===350}function NN(s){return s.kind===352}function Gie(s){return s.kind===353}var Rde=new WeakMap;function H$e(s,c){var g;let d=s.kind;return A7(d)?d===353?s._children:(g=Rde.get(c))==null?void 0:g.get(s):E}function COt(s,c,g){s.kind===353&&pe.fail("Should not need to re-set the children of a SyntaxList.");let d=Rde.get(c);return d===void 0&&(d=new WeakMap,Rde.set(c,d)),d.set(s,g),g}function Y$e(s,c){var g;s.kind===353&&pe.fail("Did not expect to unset the children of a SyntaxList."),(g=Rde.get(c))==null||g.delete(s)}function _Ot(s,c){let g=Rde.get(s);g!==void 0&&(Rde.delete(s),Rde.set(c,g))}function REe(s){return s.createExportDeclaration(void 0,!1,s.createNamedExports([]),void 0)}function LU(s,c,g,d){if(Un(g))return gn(s.createElementAccessExpression(c,g.expression),d);{let h=gn(Bw(g)?s.createPropertyAccessExpression(c,g):s.createElementAccessExpression(c,g),g);return Ow(h,128),h}}function yOt(s,c){let g=q3.createIdentifier(s||"React");return UA(g,eu(c)),g}function bOt(s,c,g){if(zi(c)){let d=bOt(s,c.left,g),h=s.createIdentifier(Vo(c.right));return h.escapedText=c.right.escapedText,s.createPropertyAccessExpression(d,h)}else return yOt(Vo(c),g)}function Q$e(s,c,g,d){return c?bOt(s,c,d):s.createPropertyAccessExpression(yOt(g,d),"createElement")}function l2s(s,c,g,d){return c?bOt(s,c,d):s.createPropertyAccessExpression(yOt(g,d),"Fragment")}function EOt(s,c,g,d,h,_){let S=[g];if(d&&S.push(d),h&&h.length>0)if(d||S.push(s.createNull()),h.length>1)for(let R of h)x0(R),S.push(R);else S.push(h[0]);return gn(s.createCallExpression(c,void 0,S),_)}function SOt(s,c,g,d,h,_,S){let T=[l2s(s,g,d,_),s.createNull()];if(h&&h.length>0)if(h.length>1)for(let O of h)x0(O),T.push(O);else T.push(h[0]);return gn(s.createCallExpression(Q$e(s,c,d,_),void 0,T),S)}function X$e(s,c,g){if(d_(c)){let d=ma(c.declarations),h=s.updateVariableDeclaration(d,d.name,void 0,void 0,g);return gn(s.createVariableStatement(void 0,s.updateVariableDeclarationList(c,[h])),c)}else{let d=gn(s.createAssignment(c,g),c);return gn(s.createExpressionStatement(d),c)}}function NEe(s,c){if(zi(c)){let g=NEe(s,c.left),d=UA(gn(s.cloneNode(c.right),c.right),c.right.parent);return gn(s.createPropertyAccessExpression(g,d),c)}else return UA(gn(s.cloneNode(c),c),c.parent)}function J$e(s,c){return Ir(c)?s.createStringLiteralFromNode(c):Un(c)?UA(gn(s.cloneNode(c.expression),c.expression),c.expression.parent):UA(gn(s.cloneNode(c),c),c.parent)}function u2s(s,c,g,d,h){let{firstAccessor:_,getAccessor:S,setAccessor:R}=FW(c,g);if(g===_)return gn(s.createObjectDefinePropertyCall(d,J$e(s,g.name),s.createPropertyDescriptor({enumerable:s.createFalse(),configurable:!0,get:S&&gn(ua(s.createFunctionExpression(sN(S),void 0,void 0,void 0,S.parameters,void 0,S.body),S),S),set:R&&gn(ua(s.createFunctionExpression(sN(R),void 0,void 0,void 0,R.parameters,void 0,R.body),R),R)},!h)),_)}function g2s(s,c,g){return ua(gn(s.createAssignment(LU(s,g,c.name,c.name),c.initializer),c),c)}function A2s(s,c,g){return ua(gn(s.createAssignment(LU(s,g,c.name,c.name),s.cloneNode(c.name)),c),c)}function d2s(s,c,g){return ua(gn(s.createAssignment(LU(s,g,c.name,c.name),ua(gn(s.createFunctionExpression(sN(c),c.asteriskToken,void 0,void 0,c.parameters,void 0,c.body),c),c)),c),c)}function vOt(s,c,g,d){switch(g.name&&p(g.name)&&pe.failBadSyntaxKind(g.name,"Private identifiers are not allowed in object literals."),g.kind){case 178:case 179:return u2s(s,c.properties,g,d,!!c.multiLine);case 304:return g2s(s,g,d);case 305:return A2s(s,g,d);case 175:return d2s(s,g,d)}}function B9e(s,c,g,d,h){let _=c.operator;pe.assert(_===46||_===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let S=s.createTempVariable(d);g=s.createAssignment(S,g),gn(g,c.operand);let R=D0(c)?s.createPrefixUnaryExpression(_,S):s.createPostfixUnaryExpression(S,_);return gn(R,c),h&&(R=s.createAssignment(h,R),gn(R,c)),g=s.createComma(g,R),gn(g,c),ok(c)&&(g=s.createComma(g,S),gn(g,c)),g}function U$e(s){return(rA(s)&65536)!==0}function QF(s){return(rA(s)&32768)!==0}function w9e(s){return(rA(s)&16384)!==0}function G$r(s){return Lg(s.expression)&&s.expression.text==="use strict"}function K$e(s){for(let c of s)if(cS(c)){if(G$r(c))return c}else break}function BOt(s){let c=Nc(s);return c!==void 0&&cS(c)&&G$r(c)}function DEe(s){return s.kind===227&&s.operatorToken.kind===28}function Nde(s){return DEe(s)||Ede(s)}function hQ(s){return dI(s)&&Bo(s)&&!!gv(s)}function Fie(s){let c=oN(s);return pe.assertIsDefined(c),c}function T9e(s,c=63){switch(s.kind){case 218:return c&-2147483648&&hQ(s)?!1:(c&1)!==0;case 217:case 235:return(c&2)!==0;case 239:return(c&34)!==0;case 234:return(c&16)!==0;case 236:return(c&4)!==0;case 356:return(c&8)!==0}return!1}function XI(s,c=63){for(;T9e(s,c);)s=s.expression;return s}function wOt(s,c=63){let g=s.parent;for(;T9e(g,c);)g=g.parent,pe.assert(g);return g}function x0(s){return Yd(s,!0)}function kEe(s){let c=xd(s,cl),g=c&&c.emitNode;return g&&g.externalHelpersModuleName}function TOt(s){let c=xd(s,cl),g=c&&c.emitNode;return!!g&&(!!g.externalHelpersModuleName||!!g.externalHelpers)}function j$e(s,c,g,d,h,_,S){if(d.importHelpers&&_3(g,d)){let R=a0(d),T=YU(g,d),O=p2s(g);if(T!==1&&(R>=5&&R<=99||T===99||T===void 0&&R===200)){if(O){let V=[];for(let M of O){let ee=M.importName;ee&&Qi(V,ee)}if(zt(V)){V.sort(Ca);let M=s.createNamedImports(lt(V,Ie=>v7(g,Ie)?s.createImportSpecifier(!1,void 0,s.createIdentifier(Ie)):s.createImportSpecifier(!1,s.createIdentifier(Ie),c.getUnscopedHelperName(Ie)))),ee=xd(g,cl),re=g_(ee);re.externalHelpers=!0;let ge=s.createImportDeclaration(void 0,s.createImportClause(void 0,void 0,M),s.createStringLiteral(QD),void 0);return W3(ge,2),ge}}}else{let V=f2s(s,g,d,O,h,_||S);if(V){let M=s.createImportEqualsDeclaration(void 0,!1,V,s.createExternalModuleReference(s.createStringLiteral(QD)));return W3(M,2),M}}}}function p2s(s){return Le(mEe(s),c=>!c.scoped)}function f2s(s,c,g,d,h,_){let S=kEe(c);if(S)return S;if(zt(d)||(h||Vw(g)&&_)&&tpe(c,g)<4){let T=xd(c,cl),O=g_(T);return O.externalHelpersModuleName||(O.externalHelpersModuleName=s.createUniqueName(QD))}}function Zie(s,c,g){let d=aU(c);if(d&&!B3(c)&&!WY(c)){let h=d.name;return h.kind===11?s.getGeneratedNameForNode(c):Gp(h)?h:s.createIdentifier(vF(g,h)||Vo(h))}if(c.kind===273&&c.importClause||c.kind===279&&c.moduleSpecifier)return s.getGeneratedNameForNode(c)}function Vz(s,c,g,d,h,_){let S=KY(c);if(S&&Lg(S))return h2s(c,d,s,h,_)||I2s(s,S,g)||s.cloneNode(S)}function I2s(s,c,g){let d=g.renamedDependencies&&g.renamedDependencies.get(c.text);return d?s.createStringLiteral(d):void 0}function xEe(s,c,g,d){if(c){if(c.moduleName)return s.createStringLiteral(c.moduleName);if(!c.isDeclarationFile&&d.outFile)return s.createStringLiteral(ube(g,c.fileName))}}function h2s(s,c,g,d,h){return xEe(g,d.getExternalModuleFileFromDeclaration(s),c,h)}function GEe(s){if(CW(s))return s.initializer;if(Cm(s)){let c=s.initializer;return zm(c,!0)?c.right:void 0}if(u0(s))return s.objectAssignmentInitializer;if(zm(s,!0))return s.right;if(cf(s))return GEe(s.expression)}function QW(s){if(CW(s))return s.name;if(ww(s)){switch(s.kind){case 304:return QW(s.initializer);case 305:return s.name;case 306:return QW(s.expression)}return}return zm(s,!0)?QW(s.left):cf(s)?QW(s.expression):s}function R9e(s){switch(s.kind){case 170:case 209:return s.dotDotDotToken;case 231:case 306:return s}}function z$e(s){let c=N9e(s);return pe.assert(!!c||Hx(s),"Invalid property name for binding element."),c}function N9e(s){switch(s.kind){case 209:if(s.propertyName){let g=s.propertyName;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&F$r(g.expression)?g.expression:g}break;case 304:if(s.name){let g=s.name;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&F$r(g.expression)?g.expression:g}break;case 306:return s.name&&p(s.name)?pe.failBadSyntaxKind(s.name):s.name}let c=QW(s);if(c&&PI(c))return c}function F$r(s){let c=s.kind;return c===11||c===9}function Lie(s){switch(s.kind){case 207:case 208:case 210:return s.elements;case 211:return s.properties}}function q$e(s){if(s){let c=s;for(;;){if(Ir(c)||!c.body)return Ir(c)?c:c.name;c=c.body}}}function Z$r(s){let c=s.kind;return c===177||c===179}function ROt(s){let c=s.kind;return c===177||c===178||c===179}function $$e(s){let c=s.kind;return c===304||c===305||c===263||c===177||c===182||c===176||c===283||c===244||c===265||c===266||c===267||c===268||c===272||c===273||c===271||c===279||c===278}function NOt(s){let c=s.kind;return c===176||c===304||c===305||c===283||c===271}function DOt(s){return eR(s)||Gz(s)}function kOt(s){return Ir(s)||Px(s)}function xOt(s){return le(s)||xz(s)||bde(s)}function GOt(s){return eR(s)||xz(s)||bde(s)}function FOt(s){return Ir(s)||Lg(s)}function m2s(s){return s===43}function C2s(s){return s===42||s===44||s===45}function _2s(s){return m2s(s)||C2s(s)}function y2s(s){return s===40||s===41}function b2s(s){return y2s(s)||_2s(s)}function E2s(s){return s===48||s===49||s===50}function eet(s){return E2s(s)||b2s(s)}function S2s(s){return s===30||s===33||s===32||s===34||s===104||s===103}function v2s(s){return S2s(s)||eet(s)}function B2s(s){return s===35||s===37||s===36||s===38}function w2s(s){return B2s(s)||v2s(s)}function T2s(s){return s===51||s===52||s===53}function R2s(s){return T2s(s)||w2s(s)}function N2s(s){return s===56||s===57}function D2s(s){return N2s(s)||R2s(s)}function k2s(s){return s===61||D2s(s)||ek(s)}function x2s(s){return k2s(s)||s===28}function ZOt(s){return x2s(s.kind)}var tet;(s=>{function c(V,M,ee,re,ge,Ie,_e){let Ee=M>0?ge[M-1]:void 0;return pe.assertEqual(ee[M],c),ge[M]=V.onEnter(re[M],Ee,_e),ee[M]=R(V,c),M}s.enter=c;function g(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],g),pe.assertIsDefined(V.onLeft),ee[M]=R(V,g);let Ee=V.onLeft(re[M].left,ge[M],re[M]);return Ee?(O(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.left=g;function d(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],d),pe.assertIsDefined(V.onOperator),ee[M]=R(V,d),V.onOperator(re[M].operatorToken,ge[M],re[M]),M}s.operator=d;function h(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],h),pe.assertIsDefined(V.onRight),ee[M]=R(V,h);let Ee=V.onRight(re[M].right,ge[M],re[M]);return Ee?(O(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.right=h;function _(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],_),ee[M]=R(V,_);let Ee=V.onExit(re[M],ge[M]);if(M>0){if(M--,V.foldState){let Ne=ee[M]===_?"right":"left";ge[M]=V.foldState(ge[M],Ee,Ne)}}else Ie.value=Ee;return M}s.exit=_;function S(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],S),M}s.done=S;function R(V,M){switch(M){case c:if(V.onLeft)return g;case g:if(V.onOperator)return d;case d:if(V.onRight)return h;case h:return _;case _:return S;case S:return S;default:pe.fail("Invalid state")}}s.nextState=R;function T(V,M,ee,re,ge){return V++,M[V]=c,ee[V]=ge,re[V]=void 0,V}function O(V,M,ee){if(pe.shouldAssert(2))for(;V>=0;)pe.assert(M[V]!==ee,"Circular traversal detected."),V--}})(tet||(tet={}));var G2s=class{constructor(s,c,g,d,h,_){this.onEnter=s,this.onLeft=c,this.onOperator=g,this.onRight=d,this.onExit=h,this.foldState=_}};function D9e(s,c,g,d,h,_){let S=new G2s(s,c,g,d,h,_);return R;function R(T,O){let V={value:void 0},M=[tet.enter],ee=[T],re=[void 0],ge=0;for(;M[ge]!==tet.done;)ge=M[ge](S,ge,M,ee,re,V,O);return pe.assertEqual(ge,0),V.value}}function F2s(s){return s===95||s===90}function FEe(s){let c=s.kind;return F2s(c)}function LOt(s,c){if(c!==void 0)return c.length===0?c:gn(s.createNodeArray([],c.hasTrailingComma),c)}function ZEe(s){var c;let g=s.emitNode.autoGenerate;if(g.flags&4){let d=g.id,h=s,_=h.original;for(;_;){h=_;let S=(c=h.emitNode)==null?void 0:c.autoGenerate;if(Bw(h)&&(S===void 0||S.flags&4&&S.id!==d))break;_=h.original}return h}return s}function Vie(s,c){return typeof s=="object"?z3(!1,s.prefix,s.node,s.suffix,c):typeof s=="string"?s.length>0&&s.charCodeAt(0)===35?s.slice(1):s:""}function Z2s(s,c){return typeof s=="string"?s:L2s(s,pe.checkDefined(c))}function L2s(s,c){return ZL(s)?c(s).slice(1):Gp(s)?c(s):p(s)?s.escapedText.slice(1):Vo(s)}function z3(s,c,g,d,h){return c=Vie(c,h),d=Vie(d,h),g=Z2s(g,h),`${s?"#":""}${c}${g}${d}`}function ret(s,c,g,d){return s.updatePropertyDeclaration(c,g,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage"),void 0,void 0,d)}function VOt(s,c,g,d,h=s.createThis()){return s.createGetAccessorDeclaration(g,d,[],void 0,s.createBlock([s.createReturnStatement(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")))]))}function WOt(s,c,g,d,h=s.createThis()){return s.createSetAccessorDeclaration(g,d,[s.createParameterDeclaration(void 0,void 0,"value")],s.createBlock([s.createExpressionStatement(s.createAssignment(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")),s.createIdentifier("value")))]))}function k9e(s){let c=s.expression;for(;;){if(c=XI(c),Ede(c)){c=Ei(c.elements);continue}if(DEe(c)){c=c.right;continue}if(zm(c,!0)&&Gp(c.left))return c;break}}function V2s(s){return dI(s)&&ap(s)&&!s.emitNode}function x9e(s,c){if(V2s(s))x9e(s.expression,c);else if(DEe(s))x9e(s.left,c),x9e(s.right,c);else if(Ede(s))for(let g of s.elements)x9e(g,c);else c.push(s)}function OOt(s){let c=[];return x9e(s,c),c}function LEe(s){if(s.transformFlags&65536)return!0;if(s.transformFlags&128)for(let c of Lie(s)){let g=QW(c);if(g&&DY(g)&&(g.transformFlags&65536||g.transformFlags&128&&LEe(g)))return!0}return!1}function gn(s,c){return c?GB(s,c.pos,c.end):s}function HB(s){let c=s.kind;return c===169||c===170||c===172||c===173||c===174||c===175||c===177||c===178||c===179||c===182||c===186||c===219||c===220||c===232||c===244||c===263||c===264||c===265||c===266||c===267||c===268||c===272||c===273||c===278||c===279}function mQ(s){let c=s.kind;return c===170||c===173||c===175||c===178||c===179||c===232||c===264}var L$r,V$r,W$r,O$r,P$r,POt={createBaseSourceFileNode:s=>new(P$r||(P$r=WC.getSourceFileConstructor()))(s,-1,-1),createBaseIdentifierNode:s=>new(W$r||(W$r=WC.getIdentifierConstructor()))(s,-1,-1),createBasePrivateIdentifierNode:s=>new(O$r||(O$r=WC.getPrivateIdentifierConstructor()))(s,-1,-1),createBaseTokenNode:s=>new(V$r||(V$r=WC.getTokenConstructor()))(s,-1,-1),createBaseNode:s=>new(L$r||(L$r=WC.getNodeConstructor()))(s,-1,-1)},q3=mie(1,POt);function Bi(s,c){return c&&s(c)}function il(s,c,g){if(g){if(c)return c(g);for(let d of g){let h=s(d);if(h)return h}}}function net(s,c){return s.charCodeAt(c+1)===42&&s.charCodeAt(c+2)===42&&s.charCodeAt(c+3)!==47}function VEe(s){return F(s.statements,W2s)||O2s(s)}function W2s(s){return HB(s)&&P2s(s,95)||Zm(s)&&HF(s.moduleReference)||Yf(s)||yf(s)||Vh(s)?s:void 0}function O2s(s){return s.flags&8388608?M$r(s):void 0}function M$r(s){return M2s(s)?s:Lu(s,M$r)}function P2s(s,c){return zt(s.modifiers,g=>g.kind===c)}function M2s(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}var H2s={167:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},169:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.constraint)||Bi(g,c.default)||Bi(g,c.expression)},305:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.equalsToken)||Bi(g,c.objectAssignmentInitializer)},306:function(c,g,d){return Bi(g,c.expression)},170:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},173:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},172:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},304:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.initializer)},261:function(c,g,d){return Bi(g,c.name)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},209:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.propertyName)||Bi(g,c.name)||Bi(g,c.initializer)},182:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},186:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},185:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},180:H$r,181:H$r,175:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},174:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)},177:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},178:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},179:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},263:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},219:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},220:function(c,g,d){return il(g,d,c.modifiers)||il(g,d,c.typeParameters)||il(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.equalsGreaterThanToken)||Bi(g,c.body)},176:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.body)},184:function(c,g,d){return Bi(g,c.typeName)||il(g,d,c.typeArguments)},183:function(c,g,d){return Bi(g,c.assertsModifier)||Bi(g,c.parameterName)||Bi(g,c.type)},187:function(c,g,d){return Bi(g,c.exprName)||il(g,d,c.typeArguments)},188:function(c,g,d){return il(g,d,c.members)},189:function(c,g,d){return Bi(g,c.elementType)},190:function(c,g,d){return il(g,d,c.elements)},193:Y$r,194:Y$r,195:function(c,g,d){return Bi(g,c.checkType)||Bi(g,c.extendsType)||Bi(g,c.trueType)||Bi(g,c.falseType)},196:function(c,g,d){return Bi(g,c.typeParameter)},206:function(c,g,d){return Bi(g,c.argument)||Bi(g,c.attributes)||Bi(g,c.qualifier)||il(g,d,c.typeArguments)},303:function(c,g,d){return Bi(g,c.assertClause)},197:Q$r,199:Q$r,200:function(c,g,d){return Bi(g,c.objectType)||Bi(g,c.indexType)},201:function(c,g,d){return Bi(g,c.readonlyToken)||Bi(g,c.typeParameter)||Bi(g,c.nameType)||Bi(g,c.questionToken)||Bi(g,c.type)||il(g,d,c.members)},202:function(c,g,d){return Bi(g,c.literal)},203:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)},207:X$r,208:X$r,210:function(c,g,d){return il(g,d,c.elements)},211:function(c,g,d){return il(g,d,c.properties)},212:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.name)},213:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.argumentExpression)},214:J$r,215:J$r,216:function(c,g,d){return Bi(g,c.tag)||Bi(g,c.questionDotToken)||il(g,d,c.typeArguments)||Bi(g,c.template)},217:function(c,g,d){return Bi(g,c.type)||Bi(g,c.expression)},218:function(c,g,d){return Bi(g,c.expression)},221:function(c,g,d){return Bi(g,c.expression)},222:function(c,g,d){return Bi(g,c.expression)},223:function(c,g,d){return Bi(g,c.expression)},225:function(c,g,d){return Bi(g,c.operand)},230:function(c,g,d){return Bi(g,c.asteriskToken)||Bi(g,c.expression)},224:function(c,g,d){return Bi(g,c.expression)},226:function(c,g,d){return Bi(g,c.operand)},227:function(c,g,d){return Bi(g,c.left)||Bi(g,c.operatorToken)||Bi(g,c.right)},235:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},236:function(c,g,d){return Bi(g,c.expression)},239:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},237:function(c,g,d){return Bi(g,c.name)},228:function(c,g,d){return Bi(g,c.condition)||Bi(g,c.questionToken)||Bi(g,c.whenTrue)||Bi(g,c.colonToken)||Bi(g,c.whenFalse)},231:function(c,g,d){return Bi(g,c.expression)},242:U$r,269:U$r,308:function(c,g,d){return il(g,d,c.statements)||Bi(g,c.endOfFileToken)},244:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.declarationList)},262:function(c,g,d){return il(g,d,c.declarations)},245:function(c,g,d){return Bi(g,c.expression)},246:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.thenStatement)||Bi(g,c.elseStatement)},247:function(c,g,d){return Bi(g,c.statement)||Bi(g,c.expression)},248:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},249:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.condition)||Bi(g,c.incrementor)||Bi(g,c.statement)},250:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},251:function(c,g,d){return Bi(g,c.awaitModifier)||Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},252:K$r,253:K$r,254:function(c,g,d){return Bi(g,c.expression)},255:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},256:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.caseBlock)},270:function(c,g,d){return il(g,d,c.clauses)},297:function(c,g,d){return Bi(g,c.expression)||il(g,d,c.statements)},298:function(c,g,d){return il(g,d,c.statements)},257:function(c,g,d){return Bi(g,c.label)||Bi(g,c.statement)},258:function(c,g,d){return Bi(g,c.expression)},259:function(c,g,d){return Bi(g,c.tryBlock)||Bi(g,c.catchClause)||Bi(g,c.finallyBlock)},300:function(c,g,d){return Bi(g,c.variableDeclaration)||Bi(g,c.block)},171:function(c,g,d){return Bi(g,c.expression)},264:j$r,232:j$r,265:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||il(g,d,c.heritageClauses)||il(g,d,c.members)},266:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.typeParameters)||Bi(g,c.type)},267:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||il(g,d,c.members)},307:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},268:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.body)},272:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.moduleReference)},273:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.importClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},274:function(c,g,d){return Bi(g,c.name)||Bi(g,c.namedBindings)},301:function(c,g,d){return il(g,d,c.elements)},302:function(c,g,d){return Bi(g,c.name)||Bi(g,c.value)},271:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.name)},275:function(c,g,d){return Bi(g,c.name)},281:function(c,g,d){return Bi(g,c.name)},276:z$r,280:z$r,279:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.exportClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},277:q$r,282:q$r,278:function(c,g,d){return il(g,d,c.modifiers)||Bi(g,c.expression)},229:function(c,g,d){return Bi(g,c.head)||il(g,d,c.templateSpans)},240:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.literal)},204:function(c,g,d){return Bi(g,c.head)||il(g,d,c.templateSpans)},205:function(c,g,d){return Bi(g,c.type)||Bi(g,c.literal)},168:function(c,g,d){return Bi(g,c.expression)},299:function(c,g,d){return il(g,d,c.types)},234:function(c,g,d){return Bi(g,c.expression)||il(g,d,c.typeArguments)},284:function(c,g,d){return Bi(g,c.expression)},283:function(c,g,d){return il(g,d,c.modifiers)},357:function(c,g,d){return il(g,d,c.elements)},285:function(c,g,d){return Bi(g,c.openingElement)||il(g,d,c.children)||Bi(g,c.closingElement)},289:function(c,g,d){return Bi(g,c.openingFragment)||il(g,d,c.children)||Bi(g,c.closingFragment)},286:$$r,287:$$r,293:function(c,g,d){return il(g,d,c.properties)},292:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},294:function(c,g,d){return Bi(g,c.expression)},295:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.expression)},288:function(c,g,d){return Bi(g,c.tagName)},296:function(c,g,d){return Bi(g,c.namespace)||Bi(g,c.name)},191:Dde,192:Dde,310:Dde,316:Dde,315:Dde,317:Dde,319:Dde,318:function(c,g,d){return il(g,d,c.parameters)||Bi(g,c.type)},321:function(c,g,d){return(typeof c.comment=="string"?void 0:il(g,d,c.comment))||il(g,d,c.tags)},348:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.name)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},311:function(c,g,d){return Bi(g,c.name)},312:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},342:een,349:een,331:function(c,g,d){return Bi(g,c.tagName)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},330:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},329:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},346:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.constraint)||il(g,d,c.typeParameters)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},347:function(c,g,d){return Bi(g,c.tagName)||(c.typeExpression&&c.typeExpression.kind===310?Bi(g,c.typeExpression)||Bi(g,c.fullName)||(typeof c.comment=="string"?void 0:il(g,d,c.comment)):Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:il(g,d,c.comment)))},339:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:il(g,d,c.comment))},343:kde,345:kde,344:kde,341:kde,351:kde,350:kde,340:kde,324:function(c,g,d){return F(c.typeParameters,g)||F(c.parameters,g)||Bi(g,c.type)},325:MOt,326:MOt,327:MOt,323:function(c,g,d){return F(c.jsDocPropertyTags,g)},328:Wie,333:Wie,334:Wie,335:Wie,336:Wie,337:Wie,332:Wie,338:Wie,352:Y2s,356:Q2s};function H$r(s,c,g){return il(c,g,s.typeParameters)||il(c,g,s.parameters)||Bi(c,s.type)}function Y$r(s,c,g){return il(c,g,s.types)}function Q$r(s,c,g){return Bi(c,s.type)}function X$r(s,c,g){return il(c,g,s.elements)}function J$r(s,c,g){return Bi(c,s.expression)||Bi(c,s.questionDotToken)||il(c,g,s.typeArguments)||il(c,g,s.arguments)}function U$r(s,c,g){return il(c,g,s.statements)}function K$r(s,c,g){return Bi(c,s.label)}function j$r(s,c,g){return il(c,g,s.modifiers)||Bi(c,s.name)||il(c,g,s.typeParameters)||il(c,g,s.heritageClauses)||il(c,g,s.members)}function z$r(s,c,g){return il(c,g,s.elements)}function q$r(s,c,g){return Bi(c,s.propertyName)||Bi(c,s.name)}function $$r(s,c,g){return Bi(c,s.tagName)||il(c,g,s.typeArguments)||Bi(c,s.attributes)}function Dde(s,c,g){return Bi(c,s.type)}function een(s,c,g){return Bi(c,s.tagName)||(s.isNameFirst?Bi(c,s.name)||Bi(c,s.typeExpression):Bi(c,s.typeExpression)||Bi(c,s.name))||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function kde(s,c,g){return Bi(c,s.tagName)||Bi(c,s.typeExpression)||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function MOt(s,c,g){return Bi(c,s.name)}function Wie(s,c,g){return Bi(c,s.tagName)||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function Y2s(s,c,g){return Bi(c,s.tagName)||Bi(c,s.importClause)||Bi(c,s.moduleSpecifier)||Bi(c,s.attributes)||(typeof s.comment=="string"?void 0:il(c,g,s.comment))}function Q2s(s,c,g){return Bi(c,s.expression)}function Lu(s,c,g){if(s===void 0||s.kind<=166)return;let d=H2s[s.kind];return d===void 0?void 0:d(s,c,g)}function Wz(s,c,g){let d=ten(s),h=[];for(;h.length=0;--R)d.push(_[R]),h.push(S)}else{let R=c(_,S);if(R){if(R==="skip")continue;return R}if(_.kind>=167)for(let T of ten(_))d.push(T),h.push(_)}}}function ten(s){let c=[];return Lu(s,g,g),c;function g(d){c.unshift(d)}}function ren(s){s.externalModuleIndicator=VEe(s)}function Oz(s,c,g,d=!1,h){var _,S;(_=ki)==null||_.push(ki.Phase.Parse,"createSourceFile",{path:s},!0),Mc("beforeParse");let R,{languageVersion:T,setExternalModuleIndicator:O,impliedNodeFormat:V,jsDocParsingMode:M}=typeof g=="object"?g:{languageVersion:g};if(T===100)R=$3.parseSourceFile(s,c,T,void 0,d,6,Dc,M);else{let ee=V===void 0?O:re=>(re.impliedNodeFormat=V,(O||ren)(re));R=$3.parseSourceFile(s,c,T,void 0,d,h,ee,M)}return Mc("afterParse"),Pf("Parse","beforeParse","afterParse"),(S=ki)==null||S.pop(),R}function Pz(s,c){return $3.parseIsolatedEntityName(s,c)}function WEe(s,c){return $3.parseJsonText(s,c)}function Lm(s){return s.externalModuleIndicator!==void 0}function iet(s,c,g,d=!1){let h=set.updateSourceFile(s,c,g,d);return h.flags|=s.flags&12582912,h}function HOt(s,c,g){let d=$3.JSDocParser.parseIsolatedJSDocComment(s,c,g);return d&&d.jsDoc&&$3.fixupParentReferences(d.jsDoc),d}function nen(s,c,g){return $3.JSDocParser.parseJSDocTypeExpressionForTests(s,c,g)}var $3;(s=>{var c=Nb(99,!0),g=40960,d,h,_,S,R;function T(nt){return Yt++,nt}var O={createBaseSourceFileNode:nt=>T(new R(nt,0,0)),createBaseIdentifierNode:nt=>T(new _(nt,0,0)),createBasePrivateIdentifierNode:nt=>T(new S(nt,0,0)),createBaseTokenNode:nt=>T(new h(nt,0,0)),createBaseNode:nt=>T(new d(nt,0,0))},V=mie(11,O),{createNodeArray:M,createNumericLiteral:ee,createStringLiteral:re,createLiteralLikeNode:ge,createIdentifier:Ie,createPrivateIdentifier:_e,createToken:Ee,createArrayLiteralExpression:Ne,createObjectLiteralExpression:Te,createPropertyAccessExpression:Ze,createPropertyAccessChain:Pe,createElementAccessExpression:Ke,createElementAccessChain:et,createCallExpression:Ye,createCallChain:Tt,createNewExpression:at,createParenthesizedExpression:Qe,createBlock:Ct,createVariableStatement:mt,createExpressionStatement:yt,createIfStatement:Rt,createWhileStatement:Lt,createForStatement:je,createForOfStatement:Wt,createVariableDeclaration:_r,createVariableDeclarationList:Gt}=V,it,Dt,tr,ur,Gr,dt,pr,ot,ir,qt,Yt,Tr,mn,jn,Zi,Ns,An=!0,si=!1;function ks(nt,Kt,xr,Tn,Ai=!1,Wi,Ba,Xo=0){var lo;if(Wi=zAe(nt,Wi),Wi===6){let Rl=ou(nt,Kt,xr,Tn,Ai);return YEe(Rl,(lo=Rl.statements[0])==null?void 0:lo.expression,Rl.parseDiagnostics,!1,void 0),Rl.referencedFiles=E,Rl.typeReferenceDirectives=E,Rl.libReferenceDirectives=E,Rl.amdDependencies=E,Rl.hasNoDefaultLib=!1,Rl.pragmas=N,Rl}Zn(nt,Kt,xr,Tn,Wi,Xo);let Cc=Fl(xr,Ai,Wi,Ba||ren,Xo);return ya(),Cc}s.parseSourceFile=ks;function Ic(nt,Kt){Zn("",nt,Kt,void 0,1,0),Mt();let xr=en(!0),Tn=Ue()===1&&!pr.length;return ya(),Tn?xr:void 0}s.parseIsolatedEntityName=Ic;function ou(nt,Kt,xr=2,Tn,Ai=!1){Zn(nt,Kt,xr,Tn,6,0),Dt=Ns,Mt();let Wi=xe(),Ba,Xo;if(Ue()===1)Ba=NA([],Wi,Wi),Xo=ch();else{let Rl;for(;Ue()!==1;){let $A;switch(Ue()){case 23:$A=AO();break;case 112:case 97:case 106:$A=ch();break;case 41:Vn(()=>Mt()===9&&Mt()!==59)?$A=m9():$A=y9();break;case 9:case 11:if(Vn(()=>Mt()!==59)){$A=Ln();break}default:$A=y9();break}Rl&&Ki(Rl)?Rl.push($A):Rl?Rl=[Rl,$A]:(Rl=$A,Ue()!==1&&bn(Z.Unexpected_token))}let Sp=Ki(Rl)?oi(Ne(Rl),Wi):pe.checkDefined(Rl),rp=yt(Sp);oi(rp,Wi),Ba=NA([rp],Wi),Xo=qp(1,Z.Unexpected_token)}let lo=hn(nt,2,6,!1,Ba,Xo,Dt,Dc);Ai&&yr(lo),lo.nodeCount=Yt,lo.identifierCount=mn,lo.identifiers=Tr,lo.parseDiagnostics=$L(pr,lo),ot&&(lo.jsDocDiagnostics=$L(ot,lo));let Cc=lo;return ya(),Cc}s.parseJsonText=ou;function Zn(nt,Kt,xr,Tn,Ai,Wi){switch(d=WC.getNodeConstructor(),h=WC.getTokenConstructor(),_=WC.getIdentifierConstructor(),S=WC.getPrivateIdentifierConstructor(),R=WC.getSourceFileConstructor(),it=su(nt),tr=Kt,ur=xr,ir=Tn,Gr=Ai,dt=zne(Ai),pr=[],jn=0,Tr=new Map,mn=0,Yt=0,Dt=0,An=!0,Gr){case 1:case 2:Ns=524288;break;case 6:Ns=134742016;break;default:Ns=0;break}si=!1,c.setText(tr),c.setOnError(wt),c.setScriptTarget(ur),c.setLanguageVariant(dt),c.setScriptKind(Gr),c.setJSDocParsingMode(Wi)}function ya(){c.clearCommentDirectives(),c.setText(""),c.setOnError(void 0),c.setScriptKind(0),c.setJSDocParsingMode(0),tr=void 0,ur=void 0,ir=void 0,Gr=void 0,dt=void 0,Dt=0,pr=void 0,ot=void 0,jn=0,Tr=void 0,Zi=void 0,An=!0}function Fl(nt,Kt,xr,Tn,Ai){let Wi=MC(it);Wi&&(Ns|=33554432),Dt=Ns,Mt();let Ba=AA(0,NE);pe.assert(Ue()===1);let Xo=fr(),lo=Oo(ch(),Xo),Cc=hn(it,nt,xr,Wi,Ba,lo,Dt,Tn);return oet(Cc,tr),aet(Cc,Rl),Cc.commentDirectives=c.getCommentDirectives(),Cc.nodeCount=Yt,Cc.identifierCount=mn,Cc.identifiers=Tr,Cc.parseDiagnostics=$L(pr,Cc),Cc.jsDocParsingMode=Ai,ot&&(Cc.jsDocDiagnostics=$L(ot,Cc)),Kt&&yr(Cc),Cc;function Rl(Sp,rp,$A){pr.push(nQ(it,tr,Sp,rp,$A))}}let ba=!1;function Oo(nt,Kt){if(!Kt)return nt;pe.assert(!nt.jsDoc);let xr=Xt(Fye(nt,tr),Tn=>YN.parseJSDocComment(nt,Tn.pos,Tn.end-Tn.pos));return xr.length&&(nt.jsDoc=xr),ba&&(ba=!1,nt.flags|=536870912),nt}function hc(nt){let Kt=ir,xr=set.createSyntaxCursor(nt);ir={currentNode:Rl};let Tn=[],Ai=pr;pr=[];let Wi=0,Ba=lo(nt.statements,0);for(;Ba!==-1;){let Sp=nt.statements[Wi],rp=nt.statements[Ba];Pr(Tn,nt.statements,Wi,Ba),Wi=Cc(nt.statements,Ba);let $A=Se(Ai,SS=>SS.start>=Sp.pos),Dv=$A>=0?Se(Ai,SS=>SS.start>=rp.pos,$A):-1;$A>=0&&Pr(pr,Ai,$A,Dv>=0?Dv:void 0),Oi(()=>{let SS=Ns;for(Ns|=65536,c.resetTokenState(rp.pos),Mt();Ue()!==1;){let B9=c.getTokenFullStart(),w9=ym(0,NE);if(Tn.push(w9),B9===c.getTokenFullStart()&&Mt(),Wi>=0){let tG=nt.statements[Wi];if(w9.end===tG.pos)break;w9.end>tG.pos&&(Wi=Cc(nt.statements,Wi+1))}}Ns=SS},2),Ba=Wi>=0?lo(nt.statements,Wi):-1}if(Wi>=0){let Sp=nt.statements[Wi];Pr(Tn,nt.statements,Wi);let rp=Se(Ai,$A=>$A.start>=Sp.pos);rp>=0&&Pr(pr,Ai,rp)}return ir=Kt,V.updateSourceFile(nt,gn(M(Tn),nt.statements));function Xo(Sp){return!(Sp.flags&65536)&&!!(Sp.transformFlags&67108864)}function lo(Sp,rp){for(let $A=rp;$A118}function fs(){return Ue()===80?!0:Ue()===127&&hr()||Ue()===135&&nn()?!1:Ue()>118}function bi(nt,Kt,xr=!0){return Ue()===nt?(xr&&Mt(),!0):(Kt?bn(Kt):bn(Z._0_expected,Vi(nt)),!1)}let mc=Object.keys(sv).filter(nt=>nt.length>2);function Ag(nt){if(QI(nt)){Ht(Yu(tr,nt.template.pos),nt.template.end,Z.Module_declaration_names_may_only_use_or_quoted_strings);return}let Kt=Ir(nt)?Vo(nt):void 0;if(!Kt||!qh(Kt,ur)){bn(Z._0_expected,Vi(27));return}let xr=Yu(tr,nt.pos);switch(Kt){case"const":case"let":case"var":Ht(xr,nt.end,Z.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":dg(Z.Interface_name_cannot_be_0,Z.Interface_must_be_given_a_name,19);return;case"is":Ht(xr,c.getTokenStart(),Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":dg(Z.Namespace_name_cannot_be_0,Z.Namespace_must_be_given_a_name,19);return;case"type":dg(Z.Type_alias_name_cannot_be_0,Z.Type_alias_must_be_given_a_name,64);return}let Tn=Dr(Kt,mc,Zl)??yu(Kt);if(Tn){Ht(xr,nt.end,Z.Unknown_keyword_or_identifier_Did_you_mean_0,Tn);return}Ue()!==0&&Ht(xr,nt.end,Z.Unexpected_keyword_or_identifier)}function dg(nt,Kt,xr){Ue()===xr?bn(Kt):bn(nt,c.getTokenValue())}function yu(nt){for(let Kt of mc)if(nt.length>Kt.length+2&&Ac(nt,Kt))return`${Kt} ${nt.slice(Kt.length)}`}function RI(nt,Kt,xr){if(Ue()===60&&!c.hasPrecedingLineBreak()){bn(Z.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Ue()===21){bn(Z.Cannot_start_a_function_call_in_a_type_annotation),Mt();return}if(Kt&&!Au()){xr?bn(Z._0_expected,Vi(27)):bn(Z.Expected_for_property_initializer);return}if(!Eg()){if(xr){bn(Z._0_expected,Vi(27));return}Ag(nt)}}function pI(nt){return Ue()===nt?($r(),!0):(pe.assert(mAe(nt)),bn(Z._0_expected,Vi(nt)),!1)}function Ip(nt,Kt,xr,Tn){if(Ue()===Kt){Mt();return}let Ai=bn(Z._0_expected,Vi(Kt));xr&&Ai&&ug(Ai,nQ(it,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Vi(nt),Vi(Kt)))}function kl(nt){return Ue()===nt?(Mt(),!0):!1}function bu(nt){if(Ue()===nt)return ch()}function sm(nt){if(Ue()===nt)return mS()}function qp(nt,Kt,xr){return bu(nt)||tp(nt,!1,Kt||Z._0_expected,xr||Vi(nt))}function Jg(nt){let Kt=sm(nt);return Kt||(pe.assert(mAe(nt)),tp(nt,!1,Z._0_expected,Vi(nt)))}function ch(){let nt=xe(),Kt=Ue();return Mt(),oi(Ee(Kt),nt)}function mS(){let nt=xe(),Kt=Ue();return $r(),oi(Ee(Kt),nt)}function Au(){return Ue()===27?!0:Ue()===20||Ue()===1||c.hasPrecedingLineBreak()}function Eg(){return Au()?(Ue()===27&&Mt(),!0):!1}function zA(){return Eg()||bi(27)}function NA(nt,Kt,xr,Tn){let Ai=M(nt,Tn);return GB(Ai,Kt,xr??c.getTokenFullStart()),Ai}function oi(nt,Kt,xr){return GB(nt,Kt,xr??c.getTokenFullStart()),Ns&&(nt.flags|=Ns),si&&(si=!1,nt.flags|=262144),nt}function tp(nt,Kt,xr,...Tn){Kt?ds(c.getTokenFullStart(),0,xr,...Tn):xr&&bn(xr,...Tn);let Ai=xe(),Wi=nt===80?Ie("",void 0):HD(nt)?V.createTemplateLiteralLikeNode(nt,"","",void 0):nt===9?ee("",void 0):nt===11?re("",void 0):nt===283?V.createMissingDeclaration():Ee(nt);return oi(Wi,Ai)}function JI(nt){let Kt=Tr.get(nt);return Kt===void 0&&Tr.set(nt,Kt=nt),Kt}function Wh(nt,Kt,xr){if(nt){mn++;let Xo=c.hasPrecedingJSDocLeadingAsterisks()?c.getTokenStart():xe(),lo=Ue(),Cc=JI(c.getTokenValue()),Rl=c.hasExtendedUnicodeEscape();return In(),oi(Ie(Cc,lo,Rl),Xo)}if(Ue()===81)return bn(xr||Z.Private_identifiers_are_not_allowed_outside_class_bodies),Wh(!0);if(Ue()===0&&c.tryScan(()=>c.reScanInvalidIdentifier()===80))return Wh(!0);mn++;let Tn=Ue()===1,Ai=c.isReservedWord(),Wi=c.getTokenText(),Ba=Ai?Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Z.Identifier_expected;return tp(80,Tn,Kt||Ba,Wi)}function HC(nt){return Wh(gs(),void 0,nt)}function bf(nt,Kt){return Wh(fs(),nt,Kt)}function UI(nt){return Wh(md(Ue()),nt)}function ve(){return(c.hasUnicodeEscape()||c.hasExtendedUnicodeEscape())&&bn(Z.Unicode_escape_sequence_cannot_appear_here),Wh(md(Ue()))}function mr(){return md(Ue())||Ue()===11||Ue()===9||Ue()===10}function ln(){return md(Ue())||Ue()===11}function ni(nt){if(Ue()===11||Ue()===9||Ue()===10){let Kt=Ln();return Kt.text=JI(Kt.text),Kt}return nt&&Ue()===23?Za():Ue()===81?Go():UI()}function Ls(){return ni(!0)}function Za(){let nt=xe();bi(23);let Kt=Cs(fy);return bi(24),oi(V.createComputedPropertyName(Kt),nt)}function Go(){let nt=xe(),Kt=_e(JI(c.getTokenValue()));return Mt(),oi(Kt,nt)}function Ss(nt){return Ue()===nt&&Ui(el)}function Uc(){return Mt(),c.hasPrecedingLineBreak()?!1:om()}function el(){switch(Ue()){case 87:return Mt()===94;case 95:return Mt(),Ue()===90?Vn(Zp):Ue()===156?Vn(Vg):Fd();case 90:return Zp();case 126:return Mt(),om();case 139:case 153:return Mt(),Sh();default:return Uc()}}function Fd(){return Ue()===60||Ue()!==42&&Ue()!==130&&Ue()!==19&&om()}function Vg(){return Mt(),Fd()}function Ef(){return YD(Ue())&&Ui(el)}function om(){return Ue()===23||Ue()===19||Ue()===42||Ue()===26||mr()}function Sh(){return Ue()===23||mr()}function Zp(){return Mt(),Ue()===86||Ue()===100||Ue()===120||Ue()===60||Ue()===128&&Vn(Xb)||Ue()===134&&Vn(Nv)}function lh(nt,Kt){if(lf(nt))return!0;switch(nt){case 0:case 1:case 3:return!(Ue()===27&&Kt)&&b9();case 2:return Ue()===84||Ue()===90;case 4:return Vn(UB);case 5:return Vn(yK)||Ue()===27&&!Kt;case 6:return Ue()===23||mr();case 12:switch(Ue()){case 23:case 42:case 26:case 25:return!0;default:return mr()}case 18:return mr();case 9:return Ue()===23||Ue()===26||mr();case 24:return ln();case 7:return Ue()===19?Vn(B1):Kt?fs()&&!or():Yb()&&!or();case 8:return Nq();case 10:return Ue()===28||Ue()===26||Nq();case 19:return Ue()===103||Ue()===87||fs();case 15:switch(Ue()){case 28:case 25:return!0}case 11:return Ue()===26||d0();case 16:return sn(!1);case 17:return sn(!0);case 20:case 21:return Ue()===28||iO();case 22:return bK();case 23:return Ue()===161&&Vn(eG)?!1:Ue()===11?!0:md(Ue());case 13:return md(Ue())||Ue()===19;case 14:return!0;case 25:return!0;case 26:return pe.fail("ParsingContext.Count used as a context");default:pe.assertNever(nt,"Non-exhaustive case in 'isListElement'.")}}function B1(){if(pe.assert(Ue()===19),Mt()===20){let nt=Mt();return nt===28||nt===19||nt===96||nt===119}return!0}function W_(){return Mt(),fs()}function b2(){return Mt(),md(Ue())}function Pb(){return Mt(),yB(Ue())}function or(){return Ue()===119||Ue()===96?Vn(qn):!1}function qn(){return Mt(),d0()}function Js(){return Mt(),iO()}function Yl(nt){if(Ue()===1)return!0;switch(nt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Ue()===20;case 3:return Ue()===20||Ue()===84||Ue()===90;case 7:return Ue()===19||Ue()===96||Ue()===119;case 8:return DA();case 19:return Ue()===32||Ue()===21||Ue()===19||Ue()===96||Ue()===119;case 11:return Ue()===22||Ue()===27;case 15:case 21:case 10:return Ue()===24;case 17:case 16:case 18:return Ue()===22||Ue()===24;case 20:return Ue()!==28;case 22:return Ue()===19||Ue()===20;case 13:return Ue()===32||Ue()===44;case 14:return Ue()===30&&Vn(xOe);default:return!1}}function DA(){return!!(Au()||Iy(Ue())||Ue()===39)}function kA(){pe.assert(jn,"Missing parsing context");for(let nt=0;nt<26;nt++)if(jn&1<=0)}function AR(nt){return nt===6?Z.An_enum_member_name_must_be_followed_by_a_or:void 0}function CS(){let nt=NA([],xe());return nt.isMissingList=!0,nt}function WN(nt){return!!nt.isMissingList}function ct(nt,Kt,xr,Tn){if(bi(xr)){let Ai=rC(nt,Kt);return bi(Tn),Ai}return CS()}function en(nt,Kt){let xr=xe(),Tn=nt?UI(Kt):bf(Kt);for(;kl(25)&&Ue()!==30;)Tn=oi(V.createQualifiedName(Tn,_i(nt,!1,!0)),xr);return Tn}function gi(nt,Kt){return oi(V.createQualifiedName(nt,Kt),nt.pos)}function _i(nt,Kt,xr){if(c.hasPrecedingLineBreak()&&md(Ue())&&Vn(Sq))return tp(80,!0,Z.Identifier_expected);if(Ue()===81){let Tn=Go();return Kt?Tn:tp(80,!0,Z.Identifier_expected)}return nt?xr?UI():ve():bf()}function ys(nt){let Kt=xe(),xr=[],Tn;do Tn=gr(nt),xr.push(Tn);while(Tn.literal.kind===17);return NA(xr,Kt)}function $s(nt){let Kt=xe();return oi(V.createTemplateExpression(bs(nt),ys(nt)),Kt)}function wa(){let nt=xe();return oi(V.createTemplateLiteralType(bs(!1),pc()),nt)}function pc(){let nt=xe(),Kt=[],xr;do xr=ll(),Kt.push(xr);while(xr.literal.kind===17);return NA(Kt,nt)}function ll(){let nt=xe();return oi(V.createTemplateLiteralTypeSpan(Sf(),Fe(!1)),nt)}function Fe(nt){return Ue()===20?(Ys(nt),Jl()):qp(18,Z._0_expected,Vi(20))}function gr(nt){let Kt=xe();return oi(V.createTemplateSpan(Cs(fy),Fe(nt)),Kt)}function Ln(){return zl(Ue())}function bs(nt){!nt&&c.getTokenFlags()&26656&&Ys(!1);let Kt=zl(Ue());return pe.assert(Kt.kind===16,"Template head has wrong token kind"),Kt}function Jl(){let nt=zl(Ue());return pe.assert(nt.kind===17||nt.kind===18,"Template fragment has wrong token kind"),nt}function tg(nt){let Kt=nt===15||nt===18,xr=c.getTokenText();return xr.substring(1,xr.length-(c.isUnterminated()?0:Kt?1:2))}function zl(nt){let Kt=xe(),xr=HD(nt)?V.createTemplateLiteralLikeNode(nt,c.getTokenValue(),tg(nt),c.getTokenFlags()&7176):nt===9?ee(c.getTokenValue(),c.getNumericLiteralFlags()):nt===11?re(c.getTokenValue(),void 0,c.hasExtendedUnicodeEscape()):BY(nt)?ge(nt,c.getTokenValue()):pe.fail();return c.hasExtendedUnicodeEscape()&&(xr.hasExtendedUnicodeEscape=!0),c.isUnterminated()&&(xr.isUnterminated=!0),Mt(),oi(xr,Kt)}function Su(){return en(!0,Z.Type_expected)}function xf(){if(!c.hasPrecedingLineBreak()&&tn()===30)return ct(20,Sf,30,32)}function Ug(){let nt=xe();return oi(V.createTypeReferenceNode(Su(),xf()),nt)}function QC(nt){switch(nt.kind){case 184:return af(nt.typeName);case 185:case 186:{let{parameters:Kt,type:xr}=nt;return WN(Kt)||QC(xr)}case 197:return QC(nt.type);default:return!1}}function T1(nt){return Mt(),oi(V.createTypePredicateNode(void 0,nt,Sf()),nt.pos)}function _S(){let nt=xe();return Mt(),oi(V.createThisTypeNode(),nt)}function wv(){let nt=xe();return Mt(),oi(V.createJSDocAllType(),nt)}function $F(){let nt=xe();return Mt(),oi(V.createJSDocNonNullableType(FQ(),!1),nt)}function d9(){let nt=xe();return Mt(),Ue()===28||Ue()===20||Ue()===22||Ue()===32||Ue()===64||Ue()===52?oi(V.createJSDocUnknownType(),nt):oi(V.createJSDocNullableType(Sf(),!1),nt)}function Qy(){let nt=xe(),Kt=fr();if(Ui(xq)){let xr=$a(36),Tn=ao(59,!1);return Oo(oi(V.createJSDocFunctionType(xr,Tn),nt),Kt)}return oi(V.createTypeReferenceNode(UI(),void 0),nt)}function gk(){let nt=xe(),Kt;return(Ue()===110||Ue()===105)&&(Kt=UI(),bi(59)),oi(V.createParameterDeclaration(void 0,void 0,Kt,void 0,dR(),void 0),nt)}function dR(){c.setSkipJsDocLeadingAsterisks(!0);let nt=xe();if(kl(144)){let Tn=V.createJSDocNamepathType(void 0);e:for(;;)switch(Ue()){case 20:case 1:case 28:case 5:break e;default:$r()}return c.setSkipJsDocLeadingAsterisks(!1),oi(Tn,nt)}let Kt=kl(26),xr=nZ();return c.setSkipJsDocLeadingAsterisks(!1),Kt&&(xr=oi(V.createJSDocVariadicType(xr),nt)),Ue()===64?(Mt(),oi(V.createJSDocOptionalType(xr),nt)):xr}function XB(){let nt=xe();bi(114);let Kt=en(!0),xr=c.hasPrecedingLineBreak()?void 0:Qf();return oi(V.createTypeQueryNode(Kt,xr),nt)}function nO(){let nt=xe(),Kt=Pc(!1,!0),xr=bf(),Tn,Ai;kl(96)&&(iO()||!d0()?Tn=Sf():Ai=S5());let Wi=kl(64)?Sf():void 0,Ba=V.createTypeParameterDeclaration(Kt,xr,Tn,Wi);return Ba.expression=Ai,oi(Ba,nt)}function br(){if(Ue()===30)return ct(19,nO,30,32)}function sn(nt){return Ue()===26||Nq()||YD(Ue())||Ue()===60||iO(!nt)}function ei(nt){let Kt=E9(Z.Private_identifiers_cannot_be_used_as_parameters);return QJ(Kt)===0&&!zt(nt)&&YD(Ue())&&Mt(),Kt}function is(){return gs()||Ue()===23||Ue()===19}function Qs(nt){return Ps(nt)}function Po(nt){return Ps(nt,!1)}function Ps(nt,Kt=!0){let xr=xe(),Tn=fr(),Ai=nt?st(()=>Pc(!0)):nr(()=>Pc(!0));if(Ue()===110){let lo=V.createParameterDeclaration(Ai,void 0,Wh(!0),void 0,A0(),void 0),Cc=Nc(Ai);return Cc&&cn(Cc,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Oo(oi(lo,xr),Tn)}let Wi=An;An=!1;let Ba=bu(26);if(!Kt&&!is())return;let Xo=Oo(oi(V.createParameterDeclaration(Ai,Ba,ei(Ai),bu(58),A0(),fk()),xr),Tn);return An=Wi,Xo}function ao(nt,Kt){if(Yc(nt,Kt))return Wr(nZ)}function Yc(nt,Kt){return nt===39?(bi(nt),!0):kl(59)?!0:Kt&&Ue()===39?(bn(Z._0_expected,Vi(59)),Mt(),!0):!1}function ru(nt,Kt){let xr=hr(),Tn=nn();pa(!!(nt&1)),$c(!!(nt&2));let Ai=nt&32?rC(17,gk):rC(16,()=>Kt?Qs(Tn):Po(Tn));return pa(xr),$c(Tn),Ai}function $a(nt){if(!bi(21))return CS();let Kt=ru(nt,!0);return bi(22),Kt}function nu(){kl(28)||zA()}function ul(nt){let Kt=xe(),xr=fr();nt===181&&bi(105);let Tn=br(),Ai=$a(4),Wi=ao(59,!0);nu();let Ba=nt===180?V.createCallSignature(Tn,Ai,Wi):V.createConstructSignature(Tn,Ai,Wi);return Oo(oi(Ba,Kt),xr)}function Gf(){return Ue()===23&&Vn(Hb)}function Hb(){if(Mt(),Ue()===26||Ue()===24)return!0;if(YD(Ue())){if(Mt(),fs())return!0}else if(fs())Mt();else return!1;return Ue()===59||Ue()===28?!0:Ue()!==58?!1:(Mt(),Ue()===59||Ue()===28||Ue()===24)}function JB(nt,Kt,xr){let Tn=ct(16,()=>Qs(!1),23,24),Ai=A0();nu();let Wi=V.createIndexSignature(xr,Tn,Ai);return Oo(oi(Wi,nt),Kt)}function h_(nt,Kt,xr){let Tn=Ls(),Ai=bu(58),Wi;if(Ue()===21||Ue()===30){let Ba=br(),Xo=$a(4),lo=ao(59,!0);Wi=V.createMethodSignature(xr,Tn,Ai,Ba,Xo,lo)}else{let Ba=A0();Wi=V.createPropertySignature(xr,Tn,Ai,Ba),Ue()===64&&(Wi.initializer=fk())}return nu(),Oo(oi(Wi,nt),Kt)}function UB(){if(Ue()===21||Ue()===30||Ue()===139||Ue()===153)return!0;let nt=!1;for(;YD(Ue());)nt=!0,Mt();return Ue()===23?!0:(mr()&&(nt=!0,Mt()),nt?Ue()===21||Ue()===30||Ue()===58||Ue()===59||Ue()===28||Au():!1)}function R1(){if(Ue()===21||Ue()===30)return ul(180);if(Ue()===105&&Vn(p5))return ul(181);let nt=xe(),Kt=fr(),xr=Pc(!1);return Ss(139)?G5(nt,Kt,xr,178,4):Ss(153)?G5(nt,Kt,xr,179,4):Gf()?JB(nt,Kt,xr):h_(nt,Kt,xr)}function p5(){return Mt(),Ue()===21||Ue()===30}function ON(){return Mt()===25}function Ak(){switch(Mt()){case 21:case 30:case 25:return!0}return!1}function f5(){let nt=xe();return oi(V.createTypeLiteralNode(dk()),nt)}function dk(){let nt;return bi(19)?(nt=AA(4,R1),bi(20)):nt=CS(),nt}function Bse(){return Mt(),Ue()===40||Ue()===41?Mt()===148:(Ue()===148&&Mt(),Ue()===23&&W_()&&Mt()===103)}function Fpe(){let nt=xe(),Kt=UI();bi(103);let xr=Sf();return oi(V.createTypeParameterDeclaration(void 0,Kt,xr,void 0),nt)}function wse(){let nt=xe();bi(19);let Kt;(Ue()===148||Ue()===40||Ue()===41)&&(Kt=ch(),Kt.kind!==148&&bi(148)),bi(23);let xr=Fpe(),Tn=kl(130)?Sf():void 0;bi(24);let Ai;(Ue()===58||Ue()===40||Ue()===41)&&(Ai=ch(),Ai.kind!==58&&bi(58));let Wi=A0();zA();let Ba=AA(4,R1);return bi(20),oi(V.createMappedTypeNode(Kt,xr,Tn,Ai,Wi,Ba),nt)}function Ux(){let nt=xe();if(kl(26))return oi(V.createRestTypeNode(Sf()),nt);let Kt=Sf();if(Die(Kt)&&Kt.pos===Kt.type.pos){let xr=V.createOptionalTypeNode(Kt.type);return gn(xr,Kt),xr.flags=Kt.flags,xr}return Kt}function I5(){return Mt()===59||Ue()===58&&Mt()===59}function eK(){return Ue()===26?md(Mt())&&I5():md(Ue())&&I5()}function p9(){if(Vn(eK)){let nt=xe(),Kt=fr(),xr=bu(26),Tn=UI(),Ai=bu(58);bi(59);let Wi=Ux(),Ba=V.createNamedTupleMember(xr,Tn,Ai,Wi);return Oo(oi(Ba,nt),Kt)}return Ux()}function tK(){let nt=xe();return oi(V.createTupleTypeNode(ct(21,p9,23,24)),nt)}function dq(){let nt=xe();bi(21);let Kt=Sf();return bi(22),oi(V.createParenthesizedType(Kt),nt)}function Zpe(){let nt;if(Ue()===128){let Kt=xe();Mt();let xr=oi(Ee(128),Kt);nt=NA([xr],Kt)}return nt}function rK(){let nt=xe(),Kt=fr(),xr=Zpe(),Tn=kl(105);pe.assert(!xr||Tn,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Ai=br(),Wi=$a(4),Ba=ao(39,!1),Xo=Tn?V.createConstructorTypeNode(xr,Ai,Wi,Ba):V.createFunctionTypeNode(Ai,Wi,Ba);return Oo(oi(Xo,nt),Kt)}function pq(){let nt=ch();return Ue()===25?void 0:nt}function h5(nt){let Kt=xe();nt&&Mt();let xr=Ue()===112||Ue()===97||Ue()===106?ch():zl(Ue());return nt&&(xr=oi(V.createPrefixUnaryExpression(41,xr),Kt)),oi(V.createLiteralTypeNode(xr),Kt)}function Tse(){return Mt(),Ue()===102}function nK(){Dt|=4194304;let nt=xe(),Kt=kl(114);bi(102),bi(21);let xr=Sf(),Tn;if(kl(28)){let Ba=c.getTokenStart();bi(19);let Xo=Ue();if(Xo===118||Xo===132?Mt():bn(Z._0_expected,Vi(118)),bi(59),Tn=mO(Xo,!0),kl(28),!bi(20)){let lo=li(pr);lo&&lo.code===Z._0_expected.code&&ug(lo,nQ(it,tr,Ba,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}bi(22);let Ai=kl(25)?Su():void 0,Wi=xf();return oi(V.createImportTypeNode(xr,Tn,Ai,Wi,Kt),nt)}function fq(){return Mt(),Ue()===9||Ue()===10}function FQ(){switch(Ue()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ui(pq)||Ug();case 67:c.reScanAsteriskEqualsToken();case 42:return wv();case 61:c.reScanQuestionToken();case 58:return d9();case 100:return Qy();case 54:return $F();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return h5();case 41:return Vn(fq)?h5(!0):Ug();case 116:return ch();case 110:{let nt=_S();return Ue()===142&&!c.hasPrecedingLineBreak()?T1(nt):nt}case 114:return Vn(Tse)?nK():XB();case 19:return Vn(Bse)?wse():f5();case 23:return tK();case 21:return dq();case 102:return nK();case 131:return Vn(Sq)?pk():Ug();case 16:return wa();default:return Ug()}}function iO(nt){switch(Ue()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!nt;case 41:return!nt&&Vn(fq);case 21:return!nt&&Vn(Iq);default:return fs()}}function Iq(){return Mt(),Ue()===22||sn(!1)||iO()}function hq(){let nt=xe(),Kt=FQ();for(;!c.hasPrecedingLineBreak();)switch(Ue()){case 54:Mt(),Kt=oi(V.createJSDocNonNullableType(Kt,!0),nt);break;case 58:if(Vn(Js))return Kt;Mt(),Kt=oi(V.createJSDocNullableType(Kt,!0),nt);break;case 23:if(bi(23),iO()){let xr=Sf();bi(24),Kt=oi(V.createIndexedAccessTypeNode(Kt,xr),nt)}else bi(24),Kt=oi(V.createArrayTypeNode(Kt),nt);break;default:return Kt}return Kt}function ZQ(nt){let Kt=xe();return bi(nt),oi(V.createTypeOperatorNode(nt,tZ()),Kt)}function sO(){if(kl(96)){let nt=Wn(Sf);if(Ni()||Ue()!==58)return nt}}function f9(){let nt=xe(),Kt=bf(),xr=Ui(sO),Tn=V.createTypeParameterDeclaration(void 0,Kt,xr);return oi(Tn,nt)}function eZ(){let nt=xe();return bi(140),oi(V.createInferTypeNode(f9()),nt)}function tZ(){let nt=Ue();switch(nt){case 143:case 158:case 148:return ZQ(nt);case 140:return eZ()}return Wr(hq)}function rZ(nt){if(PA()){let Kt=rK(),xr;return Z_(Kt)?xr=nt?Z.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:xr=nt?Z.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,cn(Kt,xr),Kt}}function oO(nt,Kt,xr){let Tn=xe(),Ai=nt===52,Wi=kl(nt),Ba=Wi&&rZ(Ai)||Kt();if(Ue()===nt||Wi){let Xo=[Ba];for(;kl(nt);)Xo.push(rZ(Ai)||Kt());Ba=oi(xr(NA(Xo,Tn)),Tn)}return Ba}function m5(){return oO(51,tZ,V.createIntersectionTypeNode)}function iK(){return oO(52,m5,V.createUnionTypeNode)}function C5(){return Mt(),Ue()===105}function PA(){return Ue()===30||Ue()===21&&Vn(Rse)?!0:Ue()===105||Ue()===128&&Vn(C5)}function sK(){if(YD(Ue())&&Pc(!1),fs()||Ue()===110)return Mt(),!0;if(Ue()===23||Ue()===19){let nt=pr.length;return E9(),nt===pr.length}return!1}function Rse(){return Mt(),!!(Ue()===22||Ue()===26||sK()&&(Ue()===59||Ue()===28||Ue()===58||Ue()===64||Ue()===22&&(Mt(),Ue()===39)))}function nZ(){let nt=xe(),Kt=fs()&&Ui(iZ),xr=Sf();return Kt?oi(V.createTypePredicateNode(void 0,Kt,xr),nt):xr}function iZ(){let nt=bf();if(Ue()===142&&!c.hasPrecedingLineBreak())return Mt(),nt}function pk(){let nt=xe(),Kt=qp(131),xr=Ue()===110?_S():bf(),Tn=kl(142)?Sf():void 0;return oi(V.createTypePredicateNode(Kt,xr,Tn),nt)}function Sf(){if(Ns&81920)return Qu(81920,Sf);if(PA())return rK();let nt=xe(),Kt=iK();if(!Ni()&&!c.hasPrecedingLineBreak()&&kl(96)){let xr=Wn(Sf);bi(58);let Tn=Wr(Sf);bi(59);let Ai=Wr(Sf);return oi(V.createConditionalTypeNode(Kt,xr,Tn,Ai),nt)}return Kt}function A0(){return kl(59)?Sf():void 0}function Yb(){switch(Ue()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return Vn(Ak);default:return fs()}}function d0(){if(Yb())return!0;switch(Ue()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return jB()?!0:fs()}}function _5(){return Ue()!==19&&Ue()!==100&&Ue()!==86&&Ue()!==60&&d0()}function fy(){let nt=Gi();nt&&Pa(!1);let Kt=xe(),xr=Xy(!0),Tn;for(;Tn=bu(28);)xr=dA(xr,Tn,Xy(!0),Kt);return nt&&Pa(!0),xr}function fk(){return kl(64)?Xy(!0):void 0}function Xy(nt){if(KB())return y5();let Kt=Lpe(nt)||Br(nt);if(Kt)return Kt;let xr=xe(),Tn=fr(),Ai=aO(0);return Ai.kind===80&&Ue()===39?b5(xr,Ai,nt,Tn,void 0):G_(Ai)&&ek(oo())?dA(Ai,ch(),Xy(nt),xr):h9(Ai,xr,nt)}function KB(){return Ue()===127?hr()?!0:Vn(MQ):!1}function Uw(){return Mt(),!c.hasPrecedingLineBreak()&&fs()}function y5(){let nt=xe();return Mt(),!c.hasPrecedingLineBreak()&&(Ue()===42||d0())?oi(V.createYieldExpression(bu(42),Xy(!0)),nt):oi(V.createYieldExpression(void 0,void 0),nt)}function b5(nt,Kt,xr,Tn,Ai){pe.assert(Ue()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Wi=V.createParameterDeclaration(void 0,void 0,Kt,void 0,void 0,void 0);oi(Wi,Kt.pos);let Ba=NA([Wi],Wi.pos,Wi.end),Xo=qp(39),lo=Kw(!!Ai,xr),Cc=V.createArrowFunction(Ai,void 0,Ba,void 0,Xo,lo);return Oo(oi(Cc,nt),Tn)}function Lpe(nt){let Kt=Nse();if(Kt!==0)return Kt===1?Kx(!0,!0):Ui(()=>LQ(nt))}function Nse(){return Ue()===21||Ue()===30||Ue()===134?Vn(I9):Ue()===39?1:0}function I9(){if(Ue()===134&&(Mt(),c.hasPrecedingLineBreak()||Ue()!==21&&Ue()!==30))return 0;let nt=Ue(),Kt=Mt();if(nt===21){if(Kt===22)switch(Mt()){case 39:case 59:case 19:return 1;default:return 0}if(Kt===23||Kt===19)return 2;if(Kt===26)return 1;if(YD(Kt)&&Kt!==134&&Vn(W_))return Mt()===130?0:1;if(!fs()&&Kt!==110)return 0;switch(Mt()){case 59:return 1;case 58:return Mt(),Ue()===59||Ue()===28||Ue()===64||Ue()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return pe.assert(nt===30),!fs()&&Ue()!==87?0:dt===1?Vn(()=>{kl(87);let Tn=Mt();if(Tn===96)switch(Mt()){case 64:case 32:case 44:return!1;default:return!0}else if(Tn===28||Tn===64)return!0;return!1})?1:0:2}function LQ(nt){let Kt=c.getTokenStart();if(Zi?.has(Kt))return;let xr=Kx(!1,nt);return xr||(Zi||(Zi=new Set)).add(Kt),xr}function Br(nt){if(Ue()===134&&Vn(oK)===1){let Kt=xe(),xr=fr(),Tn=ql(),Ai=aO(0);return b5(Kt,Ai,nt,xr,Tn)}}function oK(){if(Ue()===134){if(Mt(),c.hasPrecedingLineBreak()||Ue()===39)return 0;let nt=aO(0);if(!c.hasPrecedingLineBreak()&&nt.kind===80&&Ue()===39)return 1}return 0}function Kx(nt,Kt){let xr=xe(),Tn=fr(),Ai=ql(),Wi=zt(Ai,G)?2:0,Ba=br(),Xo;if(bi(21)){if(nt)Xo=ru(Wi,nt);else{let B9=ru(Wi,nt);if(!B9)return;Xo=B9}if(!bi(22)&&!nt)return}else{if(!nt)return;Xo=CS()}let lo=Ue()===59,Cc=ao(59,!1);if(Cc&&!nt&&QC(Cc))return;let Rl=Cc;for(;Rl?.kind===197;)Rl=Rl.type;let Sp=Rl&&kie(Rl);if(!nt&&Ue()!==39&&(Sp||Ue()!==19))return;let rp=Ue(),$A=qp(39),Dv=rp===39||rp===19?Kw(zt(Ai,G),Kt):bf();if(!Kt&&lo&&Ue()!==59)return;let SS=V.createArrowFunction(Ai,Ba,Xo,Cc,$A,Dv);return Oo(oi(SS,xr),Tn)}function Kw(nt,Kt){if(Ue()===19)return pO(nt?2:0);if(Ue()!==27&&Ue()!==100&&Ue()!==86&&b9()&&!_5())return pO(16|(nt?2:0));let xr=hr();pa(!1);let Tn=An;An=!1;let Ai=nt?st(()=>Xy(Kt)):nr(()=>Xy(Kt));return An=Tn,pa(xr),Ai}function h9(nt,Kt,xr){let Tn=bu(58);if(!Tn)return nt;let Ai;return oi(V.createConditionalExpression(nt,Tn,Qu(g,()=>Xy(!1)),Ai=qp(59),p1(Ai)?Xy(xr):tp(80,!1,Z._0_expected,Vi(59))),Kt)}function aO(nt){let Kt=xe(),xr=S5();return pR(nt,xr,Kt)}function Iy(nt){return nt===103||nt===165}function pR(nt,Kt,xr){for(;;){oo();let Tn=Lne(Ue());if(!(Ue()===43?Tn>=nt:Tn>nt)||Ue()===103&&En())break;if(Ue()===130||Ue()===152){if(c.hasPrecedingLineBreak())break;{let Wi=Ue();Mt(),Kt=Wi===152?E5(Kt,Sf()):yS(Kt,Sf())}}else Kt=dA(Kt,ch(),aO(Tn),xr)}return Kt}function jB(){return En()&&Ue()===103?!1:Lne(Ue())>0}function E5(nt,Kt){return oi(V.createSatisfiesExpression(nt,Kt),nt.pos)}function dA(nt,Kt,xr,Tn){return oi(V.createBinaryExpression(nt,Kt,xr),Tn)}function yS(nt,Kt){return oi(V.createAsExpression(nt,Kt),nt.pos)}function m9(){let nt=xe();return oi(V.createPrefixUnaryExpression(Ue(),Hn(C9)),nt)}function aK(){let nt=xe();return oi(V.createDeleteExpression(Hn(C9)),nt)}function sZ(){let nt=xe();return oi(V.createTypeOfExpression(Hn(C9)),nt)}function VQ(){let nt=xe();return oi(V.createVoidExpression(Hn(C9)),nt)}function Tv(){return Ue()===135?nn()?!0:Vn(MQ):!1}function jx(){let nt=xe();return oi(V.createAwaitExpression(Hn(C9)),nt)}function S5(){if(PN()){let xr=xe(),Tn=WQ();return Ue()===43?pR(Lne(Ue()),Tn,xr):Tn}let nt=Ue(),Kt=C9();if(Ue()===43){let xr=Yu(tr,Kt.pos),{end:Tn}=Kt;Kt.kind===217?Ht(xr,Tn,Z.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(pe.assert(mAe(nt)),Ht(xr,Tn,Z.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,Vi(nt)))}return Kt}function C9(){switch(Ue()){case 40:case 41:case 55:case 54:return m9();case 91:return aK();case 114:return sZ();case 116:return VQ();case 30:return dt===1?m_(!0,void 0,void 0,!0):L0();case 135:if(Tv())return jx();default:return WQ()}}function PN(){switch(Ue()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(dt!==1)return!1;default:return!0}}function WQ(){if(Ue()===46||Ue()===47){let Kt=xe();return oi(V.createPrefixUnaryExpression(Ue(),Hn(v5)),Kt)}else if(dt===1&&Ue()===30&&Vn(Pb))return m_(!0);let nt=v5();if(pe.assert(G_(nt)),(Ue()===46||Ue()===47)&&!c.hasPrecedingLineBreak()){let Kt=Ue();return Mt(),oi(V.createPostfixUnaryExpression(nt,Kt),nt.pos)}return nt}function v5(){let nt=xe(),Kt;return Ue()===102?Vn(p5)?(Dt|=4194304,Kt=ch()):Vn(ON)?(Mt(),Mt(),Kt=oi(V.createMetaProperty(102,UI()),nt),Kt.name.escapedText==="defer"?(Ue()===21||Ue()===30)&&(Dt|=4194304):Dt|=8388608):Kt=fa():Kt=Ue()===108?sa():fa(),Qb(nt,Kt)}function fa(){let nt=xe(),Kt=w5();return bS(nt,Kt,!0)}function sa(){let nt=xe(),Kt=ch();if(Ue()===30){let xr=xe(),Tn=Ui(B5);Tn!==void 0&&(Ht(xr,xe(),Z.super_may_not_use_type_arguments),jw()||(Kt=V.createExpressionWithTypeArguments(Kt,Tn)))}return Ue()===21||Ue()===25||Ue()===23?Kt:(qp(25,Z.super_must_be_followed_by_an_argument_list_or_member_access),oi(Ze(Kt,_i(!0,!0,!0)),nt))}function m_(nt,Kt,xr,Tn=!1){let Ai=xe(),Wi=Vpe(nt),Ba;if(Wi.kind===287){let Xo=OQ(Wi),lo,Cc=Xo[Xo.length-1];if(Cc?.kind===285&&!e5(Cc.openingElement.tagName,Cc.closingElement.tagName)&&e5(Wi.tagName,Cc.closingElement.tagName)){let Rl=Cc.children.end,Sp=oi(V.createJsxElement(Cc.openingElement,Cc.children,oi(V.createJsxClosingElement(oi(Ie(""),Rl,Rl)),Rl,Rl)),Cc.openingElement.pos,Rl);Xo=NA([...Xo.slice(0,Xo.length-1),Sp],Xo.pos,Rl),lo=Cc.closingElement}else lo=kse(Wi,nt),e5(Wi.tagName,lo.tagName)||(xr&&sR(xr)&&e5(lo.tagName,xr.tagName)?cn(Wi.tagName,Z.JSX_element_0_has_no_corresponding_closing_tag,OY(tr,Wi.tagName)):cn(lo.tagName,Z.Expected_corresponding_JSX_closing_tag_for_0,OY(tr,Wi.tagName)));Ba=oi(V.createJsxElement(Wi,Xo,lo),Ai)}else Wi.kind===290?Ba=oi(V.createJsxFragment(Wi,OQ(Wi),mq(nt)),Ai):(pe.assert(Wi.kind===286),Ba=Wi);if(!Tn&&nt&&Ue()===30){let Xo=typeof Kt>"u"?Ba.pos:Kt,lo=Ui(()=>m_(!0,Xo));if(lo){let Cc=tp(28,!1);return tEe(Cc,lo.pos,0),Ht(Yu(tr,Xo),lo.end,Z.JSX_expressions_must_have_one_parent_element),oi(V.createBinaryExpression(Ba,Cc,lo),Ai)}}return Ba}function cK(){let nt=xe(),Kt=V.createJsxText(c.getTokenValue(),qt===13);return qt=c.scanJsxToken(),oi(Kt,nt)}function oZ(nt,Kt){switch(Kt){case 1:if(Qw(nt))cn(nt,Z.JSX_fragment_has_no_corresponding_closing_tag);else{let xr=nt.tagName,Tn=Math.min(Yu(tr,xr.pos),xr.end);Ht(Tn,xr.end,Z.JSX_element_0_has_no_corresponding_closing_tag,OY(tr,nt.tagName))}return;case 31:case 7:return;case 12:case 13:return cK();case 19:return mu(!1);case 30:return m_(!1,void 0,nt);default:return pe.assertNever(Kt)}}function OQ(nt){let Kt=[],xr=xe(),Tn=jn;for(jn|=16384;;){let Ai=oZ(nt,qt=c.reScanJsxToken());if(!Ai||(Kt.push(Ai),sR(nt)&&Ai?.kind===285&&!e5(Ai.openingElement.tagName,Ai.closingElement.tagName)&&e5(nt.tagName,Ai.closingElement.tagName)))break}return jn=Tn,NA(Kt,xr)}function Dse(){let nt=xe();return oi(V.createJsxAttributes(AA(13,RE)),nt)}function Vpe(nt){let Kt=xe();if(bi(30),Ue()===32)return ci(),oi(V.createJsxOpeningFragment(),Kt);let xr=qo(),Tn=Ns&524288?void 0:Qf(),Ai=Dse(),Wi;return Ue()===32?(ci(),Wi=V.createJsxOpeningElement(xr,Tn,Ai)):(bi(44),bi(32,void 0,!1)&&(nt?Mt():ci()),Wi=V.createJsxSelfClosingElement(xr,Tn,Ai)),oi(Wi,Kt)}function qo(){let nt=xe(),Kt=hy();if(oR(Kt))return Kt;let xr=Kt;for(;kl(25);)xr=oi(Ze(xr,_i(!0,!1,!1)),nt);return xr}function hy(){let nt=xe();Mn();let Kt=Ue()===110,xr=ve();return kl(59)?(Mn(),oi(V.createJsxNamespacedName(xr,ve()),nt)):Kt?oi(V.createToken(110),nt):xr}function mu(nt){let Kt=xe();if(!bi(19))return;let xr,Tn;return Ue()!==20&&(nt||(xr=bu(26)),Tn=fy()),nt?bi(20):bi(20,void 0,!1)&&ci(),oi(V.createJsxExpression(xr,Tn),Kt)}function RE(){if(Ue()===19)return Fo();let nt=xe();return oi(V.createJsxAttribute(cO(),lK()),nt)}function lK(){if(Ue()===64){if(es()===11)return Ln();if(Ue()===19)return mu(!0);if(Ue()===30)return m_(!0);bn(Z.or_JSX_element_expected)}}function cO(){let nt=xe();Mn();let Kt=ve();return kl(59)?(Mn(),oi(V.createJsxNamespacedName(Kt,ve()),nt)):Kt}function Fo(){let nt=xe();bi(19),bi(26);let Kt=fy();return bi(20),oi(V.createJsxSpreadAttribute(Kt),nt)}function kse(nt,Kt){let xr=xe();bi(31);let Tn=qo();return bi(32,void 0,!1)&&(Kt||!e5(nt.tagName,Tn)?Mt():ci()),oi(V.createJsxClosingElement(Tn),xr)}function mq(nt){let Kt=xe();return bi(31),bi(32,Z.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(nt?Mt():ci()),oi(V.createJsxJsxClosingFragment(),Kt)}function L0(){pe.assert(dt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let nt=xe();bi(30);let Kt=Sf();bi(32);let xr=C9();return oi(V.createTypeAssertion(Kt,xr),nt)}function Ik(){return Mt(),md(Ue())||Ue()===23||jw()}function fR(){return Ue()===29&&Vn(Ik)}function lO(nt){if(nt.flags&64)return!0;if(bv(nt)){let Kt=nt.expression;for(;bv(Kt)&&!(Kt.flags&64);)Kt=Kt.expression;if(Kt.flags&64){for(;bv(nt);)nt.flags|=64,nt=nt.expression;return!0}}return!1}function uK(nt,Kt,xr){let Tn=_i(!0,!0,!0),Ai=xr||lO(Kt),Wi=Ai?Pe(Kt,xr,Tn):Ze(Kt,Tn);if(Ai&&p(Wi.name)&&cn(Wi.name,Z.An_optional_chain_cannot_contain_private_identifiers),A_(Kt)&&Kt.typeArguments){let Ba=Kt.typeArguments.pos-1,Xo=Yu(tr,Kt.typeArguments.end)+1;Ht(Ba,Xo,Z.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return oi(Wi,nt)}function uO(nt,Kt,xr){let Tn;if(Ue()===24)Tn=tp(80,!0,Z.An_element_access_expression_should_take_an_argument);else{let Wi=Cs(fy);h1(Wi)&&(Wi.text=JI(Wi.text)),Tn=Wi}bi(24);let Ai=xr||lO(Kt)?et(Kt,xr,Tn):Ke(Kt,Tn);return oi(Ai,nt)}function bS(nt,Kt,xr){for(;;){let Tn,Ai=!1;if(xr&&fR()?(Tn=qp(29),Ai=md(Ue())):Ai=kl(25),Ai){Kt=uK(nt,Kt,Tn);continue}if((Tn||!Gi())&&kl(23)){Kt=uO(nt,Kt,Tn);continue}if(jw()){Kt=!Tn&&Kt.kind===234?Rv(nt,Kt.expression,Tn,Kt.typeArguments):Rv(nt,Kt,Tn,void 0);continue}if(!Tn){if(Ue()===54&&!c.hasPrecedingLineBreak()){Mt(),Kt=oi(V.createNonNullExpression(Kt),nt);continue}let Wi=Ui(B5);if(Wi){Kt=oi(V.createExpressionWithTypeArguments(Kt,Wi),nt);continue}}return Kt}}function jw(){return Ue()===15||Ue()===16}function Rv(nt,Kt,xr,Tn){let Ai=V.createTaggedTemplateExpression(Kt,Tn,Ue()===15?(Ys(!0),Ln()):$s(!0));return(xr||Kt.flags&64)&&(Ai.flags|=64),Ai.questionDotToken=xr,oi(Ai,nt)}function Qb(nt,Kt){for(;;){Kt=bS(nt,Kt,!0);let xr,Tn=bu(29);if(Tn&&(xr=Ui(B5),jw())){Kt=Rv(nt,Kt,Tn,xr);continue}if(xr||Ue()===21){!Tn&&Kt.kind===234&&(xr=Kt.typeArguments,Kt=Kt.expression);let Ai=_9(),Wi=Tn||lO(Kt)?Tt(Kt,Tn,xr,Ai):Ye(Kt,xr,Ai);Kt=oi(Wi,nt);continue}if(Tn){let Ai=tp(80,!1,Z.Identifier_expected);Kt=oi(Pe(Kt,Tn,Ai),nt)}break}return Kt}function _9(){bi(21);let nt=rC(11,MN);return bi(22),nt}function B5(){if(Ns&524288||tn()!==30)return;Mt();let nt=rC(20,Sf);if(oo()===32)return Mt(),nt&&Cq()?nt:void 0}function Cq(){switch(Ue()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return c.hasPrecedingLineBreak()||jB()||!d0()}function w5(){switch(Ue()){case 15:c.getTokenFlags()&26656&&Ys(!1);case 9:case 10:case 11:return Ln();case 110:case 108:case 106:case 112:case 97:return ch();case 21:return gO();case 23:return AO();case 19:return y9();case 134:if(!Vn(Nv))break;return dO();case 60:return bA();case 86:return Ph();case 100:return dO();case 105:return cZ();case 44:case 69:if(Bs()===14)return Ln();break;case 16:return $s(!1);case 81:return Go()}return bf(Z.Expression_expected)}function gO(){let nt=xe(),Kt=fr();bi(21);let xr=Cs(fy);return bi(22),Oo(oi(Qe(xr),nt),Kt)}function _q(){let nt=xe();bi(26);let Kt=Xy(!0);return oi(V.createSpreadElement(Kt),nt)}function aZ(){return Ue()===26?_q():Ue()===28?oi(V.createOmittedExpression(),xe()):Xy(!0)}function MN(){return Qu(g,aZ)}function AO(){let nt=xe(),Kt=c.getTokenStart(),xr=bi(23),Tn=c.hasPrecedingLineBreak(),Ai=rC(15,aZ);return Ip(23,24,xr,Kt),oi(Ne(Ai,Tn),nt)}function T5(){let nt=xe(),Kt=fr();if(bu(26)){let Rl=Xy(!0);return Oo(oi(V.createSpreadAssignment(Rl),nt),Kt)}let xr=Pc(!0);if(Ss(139))return G5(nt,Kt,xr,178,0);if(Ss(153))return G5(nt,Kt,xr,179,0);let Tn=bu(42),Ai=fs(),Wi=Ls(),Ba=bu(58),Xo=bu(54);if(Tn||Ue()===21||Ue()===30)return x5(nt,Kt,xr,Tn,Wi,Ba,Xo);let lo;if(Ai&&Ue()!==59){let Rl=bu(64),Sp=Rl?Cs(()=>Xy(!0)):void 0;lo=V.createShorthandPropertyAssignment(Wi,Sp),lo.equalsToken=Rl}else{bi(59);let Rl=Cs(()=>Xy(!0));lo=V.createPropertyAssignment(Wi,Rl)}return lo.modifiers=xr,lo.questionToken=Ba,lo.exclamationToken=Xo,Oo(oi(lo,nt),Kt)}function y9(){let nt=xe(),Kt=c.getTokenStart(),xr=bi(19),Tn=c.hasPrecedingLineBreak(),Ai=rC(12,T5,!0);return Ip(19,20,xr,Kt),oi(Te(Ai,Tn),nt)}function dO(){let nt=Gi();Pa(!1);let Kt=xe(),xr=fr(),Tn=Pc(!1);bi(100);let Ai=bu(42),Wi=Ai?1:0,Ba=zt(Tn,G)?2:0,Xo=Wi&&Ba?Zr(zw):Wi?pt(zw):Ba?st(zw):zw(),lo=br(),Cc=$a(Wi|Ba),Rl=ao(59,!1),Sp=pO(Wi|Ba);Pa(nt);let rp=V.createFunctionExpression(Tn,Ai,Xo,lo,Cc,Rl,Sp);return Oo(oi(rp,Kt),xr)}function zw(){return gs()?HC():void 0}function cZ(){let nt=xe();if(bi(105),kl(25)){let Wi=UI();return oi(V.createMetaProperty(105,Wi),nt)}let Kt=xe(),xr=bS(Kt,w5(),!1),Tn;xr.kind===234&&(Tn=xr.typeArguments,xr=xr.expression),Ue()===29&&bn(Z.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,OY(tr,xr));let Ai=Ue()===21?_9():void 0;return oi(at(xr,Tn,Ai),nt)}function zx(nt,Kt){let xr=xe(),Tn=fr(),Ai=c.getTokenStart(),Wi=bi(19,Kt);if(Wi||nt){let Ba=c.hasPrecedingLineBreak(),Xo=AA(1,NE);Ip(19,20,Wi,Ai);let lo=Oo(oi(Ct(Xo,Ba),xr),Tn);return Ue()===64&&(bn(Z.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),Mt()),lo}else{let Ba=CS();return Oo(oi(Ct(Ba,void 0),xr),Tn)}}function pO(nt,Kt){let xr=hr();pa(!!(nt&1));let Tn=nn();$c(!!(nt&2));let Ai=An;An=!1;let Wi=Gi();Wi&&Pa(!1);let Ba=zx(!!(nt&16),Kt);return Wi&&Pa(!0),An=Ai,pa(xr),$c(Tn),Ba}function XC(){let nt=xe(),Kt=fr();return bi(27),Oo(oi(V.createEmptyStatement(),nt),Kt)}function PQ(){let nt=xe(),Kt=fr();bi(101);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(fy);Ip(21,22,Tn,xr);let Wi=NE(),Ba=kl(93)?NE():void 0;return Oo(oi(Rt(Ai,Wi,Ba),nt),Kt)}function qx(){let nt=xe(),Kt=fr();bi(92);let xr=NE();bi(117);let Tn=c.getTokenStart(),Ai=bi(21),Wi=Cs(fy);return Ip(21,22,Ai,Tn),kl(27),Oo(oi(V.createDoStatement(xr,Wi),nt),Kt)}function R5(){let nt=xe(),Kt=fr();bi(117);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(fy);Ip(21,22,Tn,xr);let Wi=NE();return Oo(oi(Lt(Ai,Wi),nt),Kt)}function gK(){let nt=xe(),Kt=fr();bi(99);let xr=bu(135);bi(21);let Tn;Ue()!==27&&(Ue()===115||Ue()===121||Ue()===87||Ue()===160&&Vn(NI)||Ue()===135&&Vn(Bq)?Tn=mK(!0):Tn=Tu(fy));let Ai;if(xr?bi(165):kl(165)){let Wi=Cs(()=>Xy(!0));bi(22),Ai=Wt(xr,Tn,Wi,NE())}else if(kl(103)){let Wi=Cs(fy);bi(22),Ai=V.createForInStatement(Tn,Wi,NE())}else{bi(27);let Wi=Ue()!==27&&Ue()!==22?Cs(fy):void 0;bi(27);let Ba=Ue()!==22?Cs(fy):void 0;bi(22),Ai=je(Tn,Wi,Ba,NE())}return Oo(oi(Ai,nt),Kt)}function $x(nt){let Kt=xe(),xr=fr();bi(nt===253?83:88);let Tn=Au()?void 0:bf();zA();let Ai=nt===253?V.createBreakStatement(Tn):V.createContinueStatement(Tn);return Oo(oi(Ai,Kt),xr)}function xse(){let nt=xe(),Kt=fr();bi(107);let xr=Au()?void 0:Cs(fy);return zA(),Oo(oi(V.createReturnStatement(xr),nt),Kt)}function yq(){let nt=xe(),Kt=fr();bi(118);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(fy);Ip(21,22,Tn,xr);let Wi=Rg(67108864,NE);return Oo(oi(V.createWithStatement(Ai,Wi),nt),Kt)}function bq(){let nt=xe(),Kt=fr();bi(84);let xr=Cs(fy);bi(59);let Tn=AA(3,NE);return Oo(oi(V.createCaseClause(xr,Tn),nt),Kt)}function Wpe(){let nt=xe();bi(90),bi(59);let Kt=AA(3,NE);return oi(V.createDefaultClause(Kt),nt)}function Eq(){return Ue()===84?bq():Wpe()}function N5(){let nt=xe();bi(19);let Kt=AA(2,Eq);return bi(20),oi(V.createCaseBlock(Kt),nt)}function lZ(){let nt=xe(),Kt=fr();bi(109),bi(21);let xr=Cs(fy);bi(22);let Tn=N5();return Oo(oi(V.createSwitchStatement(xr,Tn),nt),Kt)}function Gse(){let nt=xe(),Kt=fr();bi(111);let xr=c.hasPrecedingLineBreak()?void 0:Cs(fy);return xr===void 0&&(mn++,xr=oi(Ie(""),xe())),Eg()||Ag(xr),Oo(oi(V.createThrowStatement(xr),nt),Kt)}function D5(){let nt=xe(),Kt=fr();bi(113);let xr=zx(!1),Tn=Ue()===85?AK():void 0,Ai;return(!Tn||Ue()===98)&&(bi(98,Z.catch_or_finally_expected),Ai=zx(!1)),Oo(oi(V.createTryStatement(xr,Tn,Ai),nt),Kt)}function AK(){let nt=xe();bi(85);let Kt;kl(21)?(Kt=HN(),bi(22)):Kt=void 0;let xr=zx(!1);return oi(V.createCatchClause(Kt,xr),nt)}function Oh(){let nt=xe(),Kt=fr();return bi(89),zA(),Oo(oi(V.createDebuggerStatement(),nt),Kt)}function JC(){let nt=xe(),Kt=fr(),xr,Tn=Ue()===21,Ai=Cs(fy);return Ir(Ai)&&kl(59)?xr=V.createLabeledStatement(Ai,NE()):(Eg()||Ag(Ai),xr=yt(Ai),Tn&&(Kt=!1)),Oo(oi(xr,nt),Kt)}function Sq(){return Mt(),md(Ue())&&!c.hasPrecedingLineBreak()}function Xb(){return Mt(),Ue()===86&&!c.hasPrecedingLineBreak()}function Nv(){return Mt(),Ue()===100&&!c.hasPrecedingLineBreak()}function MQ(){return Mt(),(md(Ue())||Ue()===9||Ue()===10||Ue()===11)&&!c.hasPrecedingLineBreak()}function IR(){for(;;)switch(Ue()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return HQ();case 135:return V0();case 120:case 156:case 166:return Uw();case 144:case 145:return IK();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let nt=Ue();if(Mt(),c.hasPrecedingLineBreak())return!1;if(nt===138&&Ue()===156)return!0;continue;case 162:return Mt(),Ue()===19||Ue()===80||Ue()===95;case 102:return Mt(),Ue()===166||Ue()===11||Ue()===42||Ue()===19||md(Ue());case 95:let Kt=Mt();if(Kt===156&&(Kt=Vn(Mt)),Kt===64||Kt===42||Kt===19||Kt===90||Kt===130||Kt===60)return!0;continue;case 126:Mt();continue;default:return!1}}function fO(){return Vn(IR)}function b9(){switch(Ue()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return fO()||Vn(Ak);case 87:case 95:return fO();case 134:case 138:case 120:case 144:case 145:case 156:case 162:case 166:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return fO()||!Vn(Sq);default:return d0()}}function vq(){return Mt(),gs()||Ue()===19||Ue()===23}function Ope(){return Vn(vq)}function NI(){return dK(!0)}function Fse(){return Mt(),Ue()===64||Ue()===27||Ue()===59}function dK(nt){return Mt(),nt&&Ue()===165?Vn(Fse):(gs()||Ue()===19)&&!c.hasPrecedingLineBreak()}function HQ(){return Vn(dK)}function Bq(nt){return Mt()===160?dK(nt):!1}function V0(){return Vn(Bq)}function NE(){switch(Ue()){case 27:return XC();case 19:return zx(!1);case 115:return qA(xe(),fr(),void 0);case 121:if(Ope())return qA(xe(),fr(),void 0);break;case 135:if(V0())return qA(xe(),fr(),void 0);break;case 160:if(HQ())return qA(xe(),fr(),void 0);break;case 100:return Uo(xe(),fr(),void 0);case 86:return p0(xe(),fr(),void 0);case 101:return PQ();case 92:return qx();case 117:return R5();case 99:return gK();case 88:return $x(252);case 83:return $x(253);case 107:return xse();case 118:return yq();case 109:return lZ();case 111:return Gse();case 113:case 85:case 98:return D5();case 89:return Oh();case 60:return k5();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(fO())return k5();break}return JC()}function pK(nt){return nt.kind===138}function k5(){let nt=xe(),Kt=fr(),xr=Pc(!0);if(zt(xr,pK)){let Ai=DE(nt);if(Ai)return Ai;for(let Wi of xr)Wi.flags|=33554432;return Rg(33554432,()=>fK(nt,Kt,xr))}else return fK(nt,Kt,xr)}function DE(nt){return Rg(33554432,()=>{let Kt=lf(jn,nt);if(Kt)return fI(Kt)})}function fK(nt,Kt,xr){switch(Ue()){case 115:case 121:case 87:case 160:case 135:return qA(nt,Kt,xr);case 100:return Uo(nt,Kt,xr);case 86:return p0(nt,Kt,xr);case 120:return $w(nt,Kt,xr);case 156:return v9(nt,Kt,xr);case 94:return kOe(nt,Kt,xr);case 162:case 144:case 145:return N2e(nt,Kt,xr);case 102:return SK(nt,Kt,xr);case 95:switch(Mt(),Ue()){case 90:case 64:return L5(nt,Kt,xr);case 130:return XQ(nt,Kt,xr);default:return Xpe(nt,Kt,xr)}default:if(xr){let Tn=tp(283,!0,Z.Declaration_expected);return Cz(Tn,nt),Tn.modifiers=xr,Tn}return}}function eG(){return Mt()===11}function wq(){return Mt(),Ue()===161||Ue()===64}function IK(){return Mt(),!c.hasPrecedingLineBreak()&&(fs()||Ue()===11)}function qw(nt,Kt){if(Ue()!==19){if(nt&4){nu();return}if(Au()){zA();return}}return pO(nt,Kt)}function Tq(){let nt=xe();if(Ue()===28)return oi(V.createOmittedExpression(),nt);let Kt=bu(26),xr=E9(),Tn=fk();return oi(V.createBindingElement(Kt,void 0,xr,Tn),nt)}function Zse(){let nt=xe(),Kt=bu(26),xr=gs(),Tn=Ls(),Ai;xr&&Ue()!==59?(Ai=Tn,Tn=void 0):(bi(59),Ai=E9());let Wi=fk();return oi(V.createBindingElement(Kt,Tn,Ai,Wi),nt)}function Rq(){let nt=xe();bi(19);let Kt=Cs(()=>rC(9,Zse));return bi(20),oi(V.createObjectBindingPattern(Kt),nt)}function hK(){let nt=xe();bi(23);let Kt=Cs(()=>rC(10,Tq));return bi(24),oi(V.createArrayBindingPattern(Kt),nt)}function Nq(){return Ue()===19||Ue()===23||Ue()===81||gs()}function E9(nt){return Ue()===23?hK():Ue()===19?Rq():HC(nt)}function N1(){return HN(!0)}function HN(nt){let Kt=xe(),xr=fr(),Tn=E9(Z.Private_identifiers_are_not_allowed_in_variable_declarations),Ai;nt&&Tn.kind===80&&Ue()===54&&!c.hasPrecedingLineBreak()&&(Ai=ch());let Wi=A0(),Ba=Iy(Ue())?void 0:fk(),Xo=_r(Tn,Ai,Wi,Ba);return Oo(oi(Xo,Kt),xr)}function mK(nt){let Kt=xe(),xr=0;switch(Ue()){case 115:break;case 121:xr|=1;break;case 87:xr|=2;break;case 160:xr|=4;break;case 135:pe.assert(V0()),xr|=6,Mt();break;default:pe.fail()}Mt();let Tn;if(Ue()===165&&Vn(CK))Tn=CS();else{let Ai=En();co(nt),Tn=rC(8,nt?HN:N1),co(Ai)}return oi(Gt(Tn,xr),Kt)}function CK(){return W_()&&Mt()===22}function qA(nt,Kt,xr){let Tn=mK(!1);zA();let Ai=mt(xr,Tn);return Oo(oi(Ai,nt),Kt)}function Uo(nt,Kt,xr){let Tn=nn(),Ai=Lw(xr);bi(100);let Wi=bu(42),Ba=Ai&2048?zw():HC(),Xo=Wi?1:0,lo=Ai&1024?2:0,Cc=br();Ai&32&&$c(!0);let Rl=$a(Xo|lo),Sp=ao(59,!1),rp=qw(Xo|lo,Z.or_expected);$c(Tn);let $A=V.createFunctionDeclaration(xr,Wi,Ba,Cc,Rl,Sp,rp);return Oo(oi($A,nt),Kt)}function ES(){if(Ue()===137)return bi(137);if(Ue()===11&&Vn(Mt)===21)return Ui(()=>{let nt=Ln();return nt.text==="constructor"?nt:void 0})}function nC(nt,Kt,xr){return Ui(()=>{if(ES()){let Tn=br(),Ai=$a(0),Wi=ao(59,!1),Ba=qw(0,Z.or_expected),Xo=V.createConstructorDeclaration(xr,Ai,Ba);return Xo.typeParameters=Tn,Xo.type=Wi,Oo(oi(Xo,nt),Kt)}})}function x5(nt,Kt,xr,Tn,Ai,Wi,Ba,Xo){let lo=Tn?1:0,Cc=zt(xr,G)?2:0,Rl=br(),Sp=$a(lo|Cc),rp=ao(59,!1),$A=qw(lo|Cc,Xo),Dv=V.createMethodDeclaration(xr,Tn,Ai,Wi,Rl,Sp,rp,$A);return Dv.exclamationToken=Ba,Oo(oi(Dv,nt),Kt)}function _K(nt,Kt,xr,Tn,Ai){let Wi=!Ai&&!c.hasPrecedingLineBreak()?bu(54):void 0,Ba=A0(),Xo=Qu(90112,fk);RI(Tn,Ba,Xo);let lo=V.createPropertyDeclaration(xr,Tn,Ai||Wi,Ba,Xo);return Oo(oi(lo,nt),Kt)}function YQ(nt,Kt,xr){let Tn=bu(42),Ai=Ls(),Wi=bu(58);return Tn||Ue()===21||Ue()===30?x5(nt,Kt,xr,Tn,Ai,Wi,void 0,Z.or_expected):_K(nt,Kt,xr,Ai,Wi)}function G5(nt,Kt,xr,Tn,Ai){let Wi=Ls(),Ba=br(),Xo=$a(0),lo=ao(59,!1),Cc=qw(Ai),Rl=Tn===178?V.createGetAccessorDeclaration(xr,Wi,Xo,lo,Cc):V.createSetAccessorDeclaration(xr,Wi,Xo,Cc);return Rl.typeParameters=Ba,kg(Rl)&&(Rl.type=lo),Oo(oi(Rl,nt),Kt)}function yK(){let nt;if(Ue()===60)return!0;for(;YD(Ue());){if(nt=Ue(),Wre(nt))return!0;Mt()}if(Ue()===42||(mr()&&(nt=Ue(),Mt()),Ue()===23))return!0;if(nt!==void 0){if(!T0(nt)||nt===153||nt===139)return!0;switch(Ue()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return Au()}}return!1}function Ae(nt,Kt,xr){qp(126);let Tn=vt(),Ai=Oo(oi(V.createClassStaticBlockDeclaration(Tn),nt),Kt);return Ai.modifiers=xr,Ai}function vt(){let nt=hr(),Kt=nn();pa(!1),$c(!0);let xr=zx(!1);return pa(nt),$c(Kt),xr}function fn(){if(nn()&&Ue()===135){let nt=xe(),Kt=bf(Z.Expression_expected);Mt();let xr=bS(nt,Kt,!0);return Qb(nt,xr)}return v5()}function qi(){let nt=xe();if(!kl(60))return;let Kt=on(fn);return oi(V.createDecorator(Kt),nt)}function ic(nt,Kt,xr){let Tn=xe(),Ai=Ue();if(Ue()===87&&Kt){if(!Ui(Uc))return}else{if(xr&&Ue()===126&&Vn(EK))return;if(nt&&Ue()===126)return;if(!Ef())return}return oi(Ee(Ai),Tn)}function Pc(nt,Kt,xr){let Tn=xe(),Ai,Wi,Ba,Xo=!1,lo=!1,Cc=!1;if(nt&&Ue()===60)for(;Wi=qi();)Ai=Ft(Ai,Wi);for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba),lo=!0;if(lo&&nt&&Ue()===60)for(;Wi=qi();)Ai=Ft(Ai,Wi),Cc=!0;if(Cc)for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba);return Ai&&NA(Ai,Tn)}function ql(){let nt;if(Ue()===134){let Kt=xe();Mt();let xr=oi(Ee(134),Kt);nt=NA([xr],Kt)}return nt}function Vc(){let nt=xe(),Kt=fr();if(Ue()===27)return Mt(),Oo(oi(V.createSemicolonClassElement(),nt),Kt);let xr=Pc(!0,!0,!0);if(Ue()===126&&Vn(EK))return Ae(nt,Kt,xr);if(Ss(139))return G5(nt,Kt,xr,178,0);if(Ss(153))return G5(nt,Kt,xr,179,0);if(Ue()===137||Ue()===11){let Tn=nC(nt,Kt,xr);if(Tn)return Tn}if(Gf())return JB(nt,Kt,xr);if(md(Ue())||Ue()===11||Ue()===9||Ue()===10||Ue()===42||Ue()===23)if(zt(xr,pK)){for(let Ai of xr)Ai.flags|=33554432;return Rg(33554432,()=>YQ(nt,Kt,xr))}else return YQ(nt,Kt,xr);if(xr){let Tn=tp(80,!0,Z.Declaration_expected);return _K(nt,Kt,xr,Tn,void 0)}return pe.fail("Should not have attempted to parse class member declaration.")}function bA(){let nt=xe(),Kt=fr(),xr=Pc(!0);if(Ue()===86)return Jy(nt,Kt,xr,232);let Tn=tp(283,!0,Z.Expression_expected);return Cz(Tn,nt),Tn.modifiers=xr,Tn}function Ph(){return Jy(xe(),fr(),void 0,232)}function p0(nt,Kt,xr){return Jy(nt,Kt,xr,264)}function Jy(nt,Kt,xr,Tn){let Ai=nn();bi(86);let Wi=F5(),Ba=br();zt(xr,y)&&$c(!0);let Xo=IO(),lo;bi(19)?(lo=S9(),bi(20)):lo=CS(),$c(Ai);let Cc=Tn===264?V.createClassDeclaration(xr,Wi,Ba,Xo,lo):V.createClassExpression(xr,Wi,Ba,Xo,lo);return Oo(oi(Cc,nt),Kt)}function F5(){return gs()&&!Uy()?Wh(gs()):void 0}function Uy(){return Ue()===119&&Vn(b2)}function IO(){if(bK())return AA(22,Dq)}function Dq(){let nt=xe(),Kt=Ue();pe.assert(Kt===96||Kt===119),Mt();let xr=rC(7,zB);return oi(V.createHeritageClause(Kt,xr),nt)}function zB(){let nt=xe(),Kt=v5();if(Kt.kind===234)return Kt;let xr=Qf();return oi(V.createExpressionWithTypeArguments(Kt,xr),nt)}function Qf(){return Ue()===30?ct(20,Sf,30,32):void 0}function bK(){return Ue()===96||Ue()===119}function S9(){return AA(5,Vc)}function $w(nt,Kt,xr){bi(120);let Tn=bf(),Ai=br(),Wi=IO(),Ba=dk(),Xo=V.createInterfaceDeclaration(xr,Tn,Ai,Wi,Ba);return Oo(oi(Xo,nt),Kt)}function v9(nt,Kt,xr){bi(156),c.hasPrecedingLineBreak()&&bn(Z.Line_break_not_permitted_here);let Tn=bf(),Ai=br();bi(64);let Wi=Ue()===141&&Ui(pq)||Sf();zA();let Ba=V.createTypeAliasDeclaration(xr,Tn,Ai,Wi);return Oo(oi(Ba,nt),Kt)}function QQ(){let nt=xe(),Kt=fr(),xr=Ls(),Tn=Cs(fk);return Oo(oi(V.createEnumMember(xr,Tn),nt),Kt)}function kOe(nt,Kt,xr){bi(94);let Tn=bf(),Ai;bi(19)?(Ai=Kr(()=>rC(6,QQ)),bi(20)):Ai=CS();let Wi=V.createEnumDeclaration(xr,Tn,Ai);return Oo(oi(Wi,nt),Kt)}function Ppe(){let nt=xe(),Kt;return bi(19)?(Kt=AA(1,NE),bi(20)):Kt=CS(),oi(V.createModuleBlock(Kt),nt)}function kq(nt,Kt,xr,Tn){let Ai=Tn&32,Wi=Tn&8?UI():bf(),Ba=kl(25)?kq(xe(),!1,void 0,8|Ai):Ppe(),Xo=V.createModuleDeclaration(xr,Wi,Ba,Tn);return Oo(oi(Xo,nt),Kt)}function Mpe(nt,Kt,xr){let Tn=0,Ai;Ue()===162?(Ai=bf(),Tn|=2048):(Ai=Ln(),Ai.text=JI(Ai.text));let Wi;Ue()===19?Wi=Ppe():zA();let Ba=V.createModuleDeclaration(xr,Ai,Wi,Tn);return Oo(oi(Ba,nt),Kt)}function N2e(nt,Kt,xr){let Tn=0;if(Ue()===162)return Mpe(nt,Kt,xr);if(kl(145))Tn|=32;else if(bi(144),Ue()===11)return Mpe(nt,Kt,xr);return kq(nt,Kt,xr,Tn)}function hO(){return Ue()===149&&Vn(xq)}function xq(){return Mt()===21}function EK(){return Mt()===19}function xOe(){return Mt()===44}function XQ(nt,Kt,xr){bi(130),bi(145);let Tn=bf();zA();let Ai=V.createNamespaceExportDeclaration(Tn);return Ai.modifiers=xr,Oo(oi(Ai,nt),Kt)}function SK(nt,Kt,xr){bi(102);let Tn=c.getTokenFullStart(),Ai;fs()&&(Ai=bf());let Wi;if(Ai?.escapedText==="type"&&(Ue()!==161||fs()&&Vn(wq))&&(fs()||ro())?(Wi=156,Ai=fs()?bf():void 0):Ai?.escapedText==="defer"&&(Ue()===161?!Vn(eG):Ue()!==28&&Ue()!==64)&&(Wi=166,Ai=fs()?bf():void 0),Ai&&!Ype()&&Wi!==166)return Lse(nt,Kt,xr,Ai,Wi===156);let Ba=Hpe(Ai,Tn,Wi,void 0),Xo=vK(),lo=Gq();zA();let Cc=V.createImportDeclaration(xr,Ba,Xo,lo);return Oo(oi(Cc,nt),Kt)}function Hpe(nt,Kt,xr,Tn=!1){let Ai;return(nt||Ue()===42||Ue()===19)&&(Ai=Vse(nt,Kt,xr,Tn),bi(161)),Ai}function Gq(){let nt=Ue();if((nt===118||nt===132)&&!c.hasPrecedingLineBreak())return mO(nt)}function xl(){let nt=xe(),Kt=md(Ue())?UI():zl(11);bi(59);let xr=Xy(!0);return oi(V.createImportAttribute(Kt,xr),nt)}function mO(nt,Kt){let xr=xe();Kt||bi(nt);let Tn=c.getTokenStart();if(bi(19)){let Ai=c.hasPrecedingLineBreak(),Wi=rC(24,xl,!0);if(!bi(20)){let Ba=li(pr);Ba&&Ba.code===Z._0_expected.code&&ug(Ba,nQ(it,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return oi(V.createImportAttributes(Wi,Ai,nt),xr)}else{let Ai=NA([],xe(),void 0,!1);return oi(V.createImportAttributes(Ai,!1,nt),xr)}}function ro(){return Ue()===42||Ue()===19}function Ype(){return Ue()===28||Ue()===161}function Lse(nt,Kt,xr,Tn,Ai){bi(64);let Wi=JQ();zA();let Ba=V.createImportEqualsDeclaration(xr,Ai,Tn,Wi);return Oo(oi(Ba,nt),Kt)}function Vse(nt,Kt,xr,Tn){let Ai;return(!nt||kl(28))&&(Tn&&c.setSkipJsDocLeadingAsterisks(!0),Ue()===42?Ai=GOe():Ai=k2e(276),Tn&&c.setSkipJsDocLeadingAsterisks(!1)),oi(V.createImportClause(xr,nt,Ai),Kt)}function JQ(){return hO()?D2e():en(!1)}function D2e(){let nt=xe();bi(149),bi(21);let Kt=vK();return bi(22),oi(V.createExternalModuleReference(Kt),nt)}function vK(){if(Ue()===11){let nt=Ln();return nt.text=JI(nt.text),nt}else return fy()}function GOe(){let nt=xe();bi(42),bi(130);let Kt=bf();return oi(V.createNamespaceImport(Kt),nt)}function Wse(){return md(Ue())||Ue()===11}function hk(nt){return Ue()===11?Ln():nt()}function k2e(nt){let Kt=xe(),xr=nt===276?V.createNamedImports(ct(23,FOe,19,20)):V.createNamedExports(ct(23,Z5,19,20));return oi(xr,Kt)}function Z5(){let nt=fr();return Oo(Qpe(282),nt)}function FOe(){return Qpe(277)}function Qpe(nt){let Kt=xe(),xr=T0(Ue())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),Wi=!1,Ba,Xo=!0,lo=hk(UI);if(lo.kind===80&&lo.escapedText==="type")if(Ue()===130){let Sp=UI();if(Ue()===130){let rp=UI();Wse()?(Wi=!0,Ba=Sp,lo=hk(Rl),Xo=!1):(Ba=lo,lo=rp,Xo=!1)}else Wse()?(Ba=lo,Xo=!1,lo=hk(Rl)):(Wi=!0,lo=Sp)}else Wse()&&(Wi=!0,lo=hk(Rl));Xo&&Ue()===130&&(Ba=lo,bi(130),lo=hk(Rl)),nt===277&&(lo.kind!==80?(Ht(Yu(tr,lo.pos),lo.end,Z.Identifier_expected),lo=GB(tp(80,!1),lo.pos,lo.pos)):xr&&Ht(Tn,Ai,Z.Identifier_expected));let Cc=nt===277?V.createImportSpecifier(Wi,Ba,lo):V.createExportSpecifier(Wi,Ba,lo);return oi(Cc,Kt);function Rl(){return xr=T0(Ue())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),UI()}}function x2e(nt){return oi(V.createNamespaceExport(hk(UI)),nt)}function Xpe(nt,Kt,xr){let Tn=nn();$c(!0);let Ai,Wi,Ba,Xo=kl(156),lo=xe();kl(42)?(kl(130)&&(Ai=x2e(lo)),bi(161),Wi=vK()):(Ai=k2e(280),(Ue()===161||Ue()===11&&!c.hasPrecedingLineBreak())&&(bi(161),Wi=vK()));let Cc=Ue();Wi&&(Cc===118||Cc===132)&&!c.hasPrecedingLineBreak()&&(Ba=mO(Cc)),zA(),$c(Tn);let Rl=V.createExportDeclaration(xr,Xo,Ai,Wi,Ba);return Oo(oi(Rl,nt),Kt)}function L5(nt,Kt,xr){let Tn=nn();$c(!0);let Ai;kl(64)?Ai=!0:bi(90);let Wi=Xy(!0);zA(),$c(Tn);let Ba=V.createExportAssignment(xr,Ai,Wi);return Oo(oi(Ba,nt),Kt)}let mk;(nt=>{nt[nt.SourceElements=0]="SourceElements",nt[nt.BlockStatements=1]="BlockStatements",nt[nt.SwitchClauses=2]="SwitchClauses",nt[nt.SwitchClauseStatements=3]="SwitchClauseStatements",nt[nt.TypeMembers=4]="TypeMembers",nt[nt.ClassMembers=5]="ClassMembers",nt[nt.EnumMembers=6]="EnumMembers",nt[nt.HeritageClauseElement=7]="HeritageClauseElement",nt[nt.VariableDeclarations=8]="VariableDeclarations",nt[nt.ObjectBindingElements=9]="ObjectBindingElements",nt[nt.ArrayBindingElements=10]="ArrayBindingElements",nt[nt.ArgumentExpressions=11]="ArgumentExpressions",nt[nt.ObjectLiteralMembers=12]="ObjectLiteralMembers",nt[nt.JsxAttributes=13]="JsxAttributes",nt[nt.JsxChildren=14]="JsxChildren",nt[nt.ArrayLiteralMembers=15]="ArrayLiteralMembers",nt[nt.Parameters=16]="Parameters",nt[nt.JSDocParameters=17]="JSDocParameters",nt[nt.RestProperties=18]="RestProperties",nt[nt.TypeParameters=19]="TypeParameters",nt[nt.TypeArguments=20]="TypeArguments",nt[nt.TupleElementTypes=21]="TupleElementTypes",nt[nt.HeritageClauses=22]="HeritageClauses",nt[nt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",nt[nt.ImportAttributes=24]="ImportAttributes",nt[nt.JSDocComment=25]="JSDocComment",nt[nt.Count=26]="Count"})(mk||(mk={}));let Ose;(nt=>{nt[nt.False=0]="False",nt[nt.True=1]="True",nt[nt.Unknown=2]="Unknown"})(Ose||(Ose={}));let YN;(nt=>{function Kt(Cc,Rl,Sp){Zn("file.js",Cc,99,void 0,1,0),c.setText(Cc,Rl,Sp),qt=c.scan();let rp=xr(),$A=hn("file.js",99,1,!1,[],Ee(1),0,Dc),Dv=$L(pr,$A);return ot&&($A.jsDocDiagnostics=$L(ot,$A)),ya(),rp?{jsDocTypeExpression:rp,diagnostics:Dv}:void 0}nt.parseJSDocTypeExpressionForTests=Kt;function xr(Cc){let Rl=xe(),Sp=(Cc?kl:bi)(19),rp=Rg(16777216,dR);(!Cc||Sp)&&pI(20);let $A=V.createJSDocTypeExpression(rp);return yr($A),oi($A,Rl)}nt.parseJSDocTypeExpression=xr;function Tn(){let Cc=xe(),Rl=kl(19),Sp=xe(),rp=en(!1);for(;Ue()===81;)Bn(),$r(),rp=oi(V.createJSDocMemberName(rp,bf()),Sp);Rl&&pI(20);let $A=V.createJSDocNameReference(rp);return yr($A),oi($A,Cc)}nt.parseJSDocNameReference=Tn;function Ai(Cc,Rl,Sp){Zn("",Cc,99,void 0,1,0);let rp=Rg(16777216,()=>lo(Rl,Sp)),Dv=$L(pr,{languageVariant:0,text:Cc});return ya(),rp?{jsDoc:rp,diagnostics:Dv}:void 0}nt.parseIsolatedJSDocComment=Ai;function Wi(Cc,Rl,Sp){let rp=qt,$A=pr.length,Dv=si,SS=Rg(16777216,()=>lo(Rl,Sp));return UA(SS,Cc),Ns&524288&&(ot||(ot=[]),Pr(ot,pr,$A)),qt=rp,pr.length=$A,si=Dv,SS}nt.parseJSDocComment=Wi;let Ba;(Cc=>{Cc[Cc.BeginningOfLine=0]="BeginningOfLine",Cc[Cc.SawAsterisk=1]="SawAsterisk",Cc[Cc.SavingComments=2]="SavingComments",Cc[Cc.SavingBackticks=3]="SavingBackticks"})(Ba||(Ba={}));let Xo;(Cc=>{Cc[Cc.Property=1]="Property",Cc[Cc.Parameter=2]="Parameter",Cc[Cc.CallbackParameter=4]="CallbackParameter"})(Xo||(Xo={}));function lo(Cc=0,Rl){let Sp=tr,rp=Rl===void 0?Sp.length:Cc+Rl;if(Rl=rp-Cc,pe.assert(Cc>=0),pe.assert(Cc<=rp),pe.assert(rp<=Sp.length),!net(Sp,Cc))return;let $A,Dv,SS,B9,w9,tG=[],CO=[],sd=jn;jn|=1<<25;let Wm=c.scanRange(Cc+3,Rl-5,T9);return jn=sd,Wm;function T9(){let vs=1,da,Sa=Cc-(Sp.lastIndexOf(` +`,Cc)+1)+4;function Fc(vp){da||(da=Sa),tG.push(vp),Sa+=vp.length}for($r();mR(5););mR(4)&&(vs=0,Sa=0);e:for(;;){switch(Ue()){case 60:Fq(tG),w9||(w9=xe()),uf(q(Sa)),vs=0,da=void 0;break;case 4:tG.push(c.getTokenText()),vs=0,Sa=0;break;case 42:let vp=c.getTokenText();vs===1?(vs=2,Fc(vp)):(pe.assert(vs===0),vs=1,Sa+=vp.length);break;case 5:pe.assert(vs!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let C_=c.getTokenText();da!==void 0&&Sa+C_.length>da&&tG.push(C_.slice(da-Sa)),Sa+=C_.length;break;case 1:break e;case 82:vs=2,Fc(c.getTokenValue());break;case 19:vs=2;let CR=c.getTokenFullStart(),qB=c.getTokenEnd()-1,eT=bt(qB);if(eT){B9||W0(tG),CO.push(oi(V.createJSDocText(tG.join("")),B9??Cc,CR)),CO.push(eT),tG=[],B9=c.getTokenEnd();break}default:vs=2,Fc(c.getTokenText());break}vs===2?ri(!1):$r()}let Qc=tG.join("").trimEnd();CO.length&&Qc.length&&CO.push(oi(V.createJSDocText(Qc),B9??Cc,w9)),CO.length&&$A&&pe.assertIsDefined(w9,"having parsed tags implies that the end of the comment span should be set");let Kg=$A&&NA($A,Dv,SS);return oi(V.createJSDocComment(CO.length?NA(CO,Cc,w9):Qc.length?Qc:void 0,Kg),Cc,rp)}function W0(vs){for(;vs.length&&(vs[0]===` +`||vs[0]==="\r");)vs.shift()}function Fq(vs){for(;vs.length;){let da=vs[vs.length-1].trimEnd();if(da==="")vs.pop();else if(da.lengthC_&&(Fc.push(nG.slice(C_-vs)),vp=2),vs+=nG.length;break;case 19:vp=2;let uZ=c.getTokenFullStart(),Pse=c.getTokenEnd()-1,zpe=bt(Pse);zpe?(Qc.push(oi(V.createJSDocText(Fc.join("")),Kg??Sa,uZ)),Qc.push(zpe),Fc=[],Kg=c.getTokenEnd()):CR(c.getTokenText());break;case 62:vp===3?vp=2:vp=3,CR(c.getTokenText());break;case 82:vp!==3&&(vp=2),CR(c.getTokenValue());break;case 42:if(vp===0){vp=1,vs+=1;break}default:vp!==3&&(vp=2),CR(c.getTokenText());break}vp===2||vp===3?qB=ri(vp===3):qB=$r()}W0(Fc);let eT=Fc.join("").trimEnd();if(Qc.length)return eT.length&&Qc.push(oi(V.createJSDocText(eT),Kg??Sa)),NA(Qc,Sa,c.getTokenEnd());if(eT.length)return eT}function bt(vs){let da=Ui(Ii);if(!da)return;$r(),Ck();let Sa=Nr(),Fc=[];for(;Ue()!==20&&Ue()!==4&&Ue()!==1;)Fc.push(c.getTokenText()),$r();let Qc=da==="link"?V.createJSDocLink:da==="linkcode"?V.createJSDocLinkCode:V.createJSDocLinkPlain;return oi(Qc(Sa,Fc.join("")),vs,c.getTokenEnd())}function Nr(){if(md(Ue())){let vs=xe(),da=UI();for(;kl(25);)da=oi(V.createQualifiedName(da,Ue()===81?tp(80,!1):UI()),vs);for(;Ue()===81;)Bn(),$r(),da=oi(V.createJSDocMemberName(da,bf()),vs);return da}}function Ii(){if(So(),Ue()===19&&$r()===60&&md($r())){let vs=c.getTokenValue();if(Jo(vs))return vs}}function Jo(vs){return vs==="link"||vs==="linkcode"||vs==="linkplain"}function du(vs,da,Sa,Fc){return oi(V.createJSDocUnknownTag(da,Ce(vs,xe(),Sa,Fc)),vs)}function uf(vs){vs&&($A?$A.push(vs):($A=[vs],Dv=vs.pos),SS=vs.end)}function S2(){return So(),Ue()===19?xr():void 0}function _O(){let vs=mR(23);vs&&Ck();let da=mR(62),Sa=uot();return da&&Jg(62),vs&&(Ck(),bu(64)&&fy(),bi(24)),{name:Sa,isBracketed:vs}}function hR(vs){switch(vs.kind){case 151:return!0;case 189:return hR(vs.elementType);default:return oh(vs)&&Ir(vs.typeName)&&vs.typeName.escapedText==="Object"&&!vs.typeArguments}}function Zq(vs,da,Sa,Fc){let Qc=S2(),Kg=!Qc;So();let{name:vp,isBracketed:C_}=_O(),CR=So();Kg&&!Vn(Ii)&&(Qc=S2());let qB=Ce(vs,xe(),Fc,CR),eT=PJt(Qc,vp,Sa,Fc);eT&&(Qc=eT,Kg=!0);let nG=Sa===1?V.createJSDocPropertyTag(da,vp,C_,Qc,Kg,qB):V.createJSDocParameterTag(da,vp,C_,Qc,Kg,qB);return oi(nG,vs)}function PJt(vs,da,Sa,Fc){if(vs&&hR(vs.type)){let Qc=xe(),Kg,vp;for(;Kg=Ui(()=>BK(Sa,Fc,da));)Kg.kind===342||Kg.kind===349?vp=Ft(vp,Kg):Kg.kind===346&&cn(Kg.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(vp){let C_=oi(V.createJSDocTypeLiteral(vp,vs.type.kind===189),Qc);return oi(V.createJSDocTypeExpression(C_),Qc)}}}function Jpe(vs,da,Sa,Fc){zt($A,E9e)&&Ht(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=S2();return oi(V.createJSDocReturnTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Lq(vs,da,Sa,Fc){zt($A,Tde)&&Ht(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=xr(!0),Kg=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocTypeTag(da,Qc,Kg),vs)}function MJt(vs,da,Sa,Fc){let Kg=Ue()===23||Vn(()=>$r()===60&&md($r())&&Jo(c.getTokenValue()))?void 0:Tn(),vp=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSeeTag(da,Kg,vp),vs)}function HJt(vs,da,Sa,Fc){let Qc=S2(),Kg=Ce(vs,xe(),Sa,Fc);return oi(V.createJSDocThrowsTag(da,Qc,Kg),vs)}function G2e(vs,da,Sa,Fc){let Qc=xe(),Kg=iot(),vp=c.getTokenFullStart(),C_=Ce(vs,vp,Sa,Fc);C_||(vp=c.getTokenFullStart());let CR=typeof C_!="string"?NA(Nn([oi(Kg,Qc,vp)],C_),Qc):Kg.text+C_;return oi(V.createJSDocAuthorTag(da,CR),vs)}function iot(){let vs=[],da=!1,Sa=c.getToken();for(;Sa!==1&&Sa!==4;){if(Sa===30)da=!0;else{if(Sa===60&&!da)break;if(Sa===32&&da){vs.push(c.getTokenText()),c.resetTokenState(c.getTokenEnd());break}}vs.push(c.getTokenText()),Sa=$r()}return V.createJSDocText(vs.join(""))}function yO(vs,da,Sa,Fc){let Qc=UQ();return oi(V.createJSDocImplementsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function YJt(vs,da,Sa,Fc){let Qc=UQ();return oi(V.createJSDocAugmentsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function QJt(vs,da,Sa,Fc){let Qc=xr(!1),Kg=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSatisfiesTag(da,Qc,Kg),vs)}function XJt(vs,da,Sa,Fc){let Qc=c.getTokenFullStart(),Kg;fs()&&(Kg=bf());let vp=Hpe(Kg,Qc,156,!0),C_=vK(),CR=Gq(),qB=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocImportTag(da,vp,C_,CR,qB),vs)}function UQ(){let vs=kl(19),da=xe(),Sa=Upe();c.setSkipJsDocLeadingAsterisks(!0);let Fc=Qf();c.setSkipJsDocLeadingAsterisks(!1);let Qc=V.createExpressionWithTypeArguments(Sa,Fc),Kg=oi(Qc,da);return vs&&(Ck(),bi(20)),Kg}function Upe(){let vs=xe(),da=D1();for(;kl(25);){let Sa=D1();da=oi(Ze(da,Sa),vs)}return da}function Vq(vs,da,Sa,Fc,Qc){return oi(da(Sa,Ce(vs,xe(),Fc,Qc)),vs)}function sot(vs,da,Sa,Fc){let Qc=xr(!0);return Ck(),oi(V.createJSDocThisTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Kpe(vs,da,Sa,Fc){let Qc=xr(!0);return Ck(),oi(V.createJSDocEnumTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function oot(vs,da,Sa,Fc){let Qc=S2();So();let Kg=F2e();Ck();let vp=Oe(Sa),C_;if(!Qc||hR(Qc.type)){let qB,eT,nG,uZ=!1;for(;(qB=Ui(()=>KJt(Sa)))&&qB.kind!==346;)if(uZ=!0,qB.kind===345)if(eT){let Pse=bn(Z.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);Pse&&ug(Pse,nQ(it,tr,0,0,Z.The_tag_was_first_specified_here));break}else eT=qB;else nG=Ft(nG,qB);if(uZ){let Pse=Qc&&Qc.type.kind===189,zpe=V.createJSDocTypeLiteral(nG,Pse);Qc=eT&&eT.typeExpression&&!hR(eT.typeExpression.type)?eT.typeExpression:oi(zpe,vs),C_=Qc.end}}C_=C_||vp!==void 0?xe():(Kg??Qc??da).end,vp||(vp=Ce(vs,C_,Sa,Fc));let CR=V.createJSDocTypedefTag(da,Qc,Kg,vp);return oi(CR,vs,C_)}function F2e(vs){let da=c.getTokenStart();if(!md(Ue()))return;let Sa=D1();if(kl(25)){let Fc=F2e(!0),Qc=V.createModuleDeclaration(void 0,Sa,Fc,vs?8:void 0);return oi(Qc,da)}return vs&&(Sa.flags|=4096),Sa}function jpe(vs){let da=xe(),Sa,Fc;for(;Sa=Ui(()=>BK(4,vs));){if(Sa.kind===346){cn(Sa.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Fc=Ft(Fc,Sa)}return NA(Fc||[],da)}function aot(vs,da){let Sa=jpe(da),Fc=Ui(()=>{if(mR(60)){let Qc=q(da);if(Qc&&Qc.kind===343)return Qc}});return oi(V.createJSDocSignature(void 0,Sa,Fc),vs)}function cot(vs,da,Sa,Fc){let Qc=F2e();Ck();let Kg=Oe(Sa),vp=aot(vs,Sa);Kg||(Kg=Ce(vs,xe(),Sa,Fc));let C_=Kg!==void 0?xe():vp.end;return oi(V.createJSDocCallbackTag(da,vp,Qc,Kg),vs,C_)}function JJt(vs,da,Sa,Fc){Ck();let Qc=Oe(Sa),Kg=aot(vs,Sa);Qc||(Qc=Ce(vs,xe(),Sa,Fc));let vp=Qc!==void 0?xe():Kg.end;return oi(V.createJSDocOverloadTag(da,Kg,Qc),vs,vp)}function UJt(vs,da){for(;!Ir(vs)||!Ir(da);)if(!Ir(vs)&&!Ir(da)&&vs.right.escapedText===da.right.escapedText)vs=vs.left,da=da.left;else return!1;return vs.escapedText===da.escapedText}function KJt(vs){return BK(1,vs)}function BK(vs,da,Sa){let Fc=!0,Qc=!1;for(;;)switch($r()){case 60:if(Fc){let Kg=lot(vs,da);return Kg&&(Kg.kind===342||Kg.kind===349)&&Sa&&(Ir(Kg.name)||!UJt(Sa,Kg.name.left))?!1:Kg}Qc=!1;break;case 4:Fc=!0,Qc=!1;break;case 42:Qc&&(Fc=!1),Qc=!0;break;case 80:Fc=!1;break;case 1:return!1}}function lot(vs,da){pe.assert(Ue()===60);let Sa=c.getTokenFullStart();$r();let Fc=D1(),Qc=So(),Kg;switch(Fc.escapedText){case"type":return vs===1&&Lq(Sa,Fc);case"prop":case"property":Kg=1;break;case"arg":case"argument":case"param":Kg=6;break;case"template":return fo(Sa,Fc,da,Qc);case"this":return sot(Sa,Fc,da,Qc);default:return!1}return vs&Kg?Zq(Sa,Fc,vs,da):!1}function jJt(){let vs=xe(),da=mR(23);da&&Ck();let Sa=Pc(!1,!0),Fc=D1(Z.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Qc;if(da&&(Ck(),bi(64),Qc=Rg(16777216,dR),bi(24)),!af(Fc))return oi(V.createTypeParameterDeclaration(Sa,Fc,void 0,Qc),vs)}function R9(){let vs=xe(),da=[];do{Ck();let Sa=jJt();Sa!==void 0&&da.push(Sa),So()}while(mR(28));return NA(da,vs)}function fo(vs,da,Sa,Fc){let Qc=Ue()===19?xr():void 0,Kg=R9();return oi(V.createJSDocTemplateTag(da,Qc,Kg,Ce(vs,xe(),Sa,Fc)),vs)}function mR(vs){return Ue()===vs?($r(),!0):!1}function uot(){let vs=D1();for(kl(23)&&bi(24);kl(25);){let da=D1();kl(23)&&bi(24),vs=gi(vs,da)}return vs}function D1(vs){if(!md(Ue()))return tp(80,!vs,vs||Z.Identifier_expected);mn++;let da=c.getTokenStart(),Sa=c.getTokenEnd(),Fc=Ue(),Qc=JI(c.getTokenValue()),Kg=oi(Ie(Qc,Fc),da,Sa);return $r(),Kg}}})(YN=s.JSDocParser||(s.JSDocParser={}))})($3||($3={}));var ien=new WeakSet;function X2s(s){ien.has(s)&&pe.fail("Source file has already been incrementally parsed"),ien.add(s)}var sen=new WeakSet;function J2s(s){return sen.has(s)}function YOt(s){sen.add(s)}var set;(s=>{function c(re,ge,Ie,_e){if(_e=_e||pe.shouldAssert(2),V(re,ge,Ie,_e),cy(Ie))return re;if(re.statements.length===0)return $3.parseSourceFile(re.fileName,ge,re.languageVersion,void 0,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);X2s(re),$3.fixupParentReferences(re);let Ee=re.text,Ne=M(re),Te=T(re,Ie);V(re,ge,Te,_e),pe.assert(Te.span.start<=Ie.span.start),pe.assert(Rs(Te.span)===Rs(Ie.span)),pe.assert(Rs(iN(Te))===Rs(iN(Ie)));let Ze=iN(Te).length-Te.span.length;R(re,Te.span.start,Rs(Te.span),Rs(iN(Te)),Ze,Ee,ge,_e);let Pe=$3.parseSourceFile(re.fileName,ge,re.languageVersion,Ne,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);return Pe.commentDirectives=g(re.commentDirectives,Pe.commentDirectives,Te.span.start,Rs(Te.span),Ze,Ee,ge,_e),Pe.impliedNodeFormat=re.impliedNodeFormat,_Ot(re,Pe),Pe}s.updateSourceFile=c;function g(re,ge,Ie,_e,Ee,Ne,Te,Ze){if(!re)return ge;let Pe,Ke=!1;for(let Ye of re){let{range:Tt,type:at}=Ye;if(Tt.end_e){et();let Qe={range:{pos:Tt.pos+Ee,end:Tt.end+Ee},type:at};Pe=Ft(Pe,Qe),Ze&&pe.assert(Ne.substring(Tt.pos,Tt.end)===Te.substring(Qe.range.pos,Qe.range.end))}}return et(),Pe;function et(){Ke||(Ke=!0,Pe?ge&&Pe.push(...ge):Pe=ge)}}function d(re,ge,Ie,_e,Ee,Ne,Te){Ie?Pe(re):Ze(re);return;function Ze(Ke){let et="";if(Te&&h(Ke)&&(et=Ee.substring(Ke.pos,Ke.end)),Y$e(Ke,ge),GB(Ke,Ke.pos+_e,Ke.end+_e),Te&&h(Ke)&&pe.assert(et===Ne.substring(Ke.pos,Ke.end)),Lu(Ke,Ze,Pe),jm(Ke))for(let Ye of Ke.jsDoc)Ze(Ye);S(Ke,Te)}function Pe(Ke){GB(Ke,Ke.pos+_e,Ke.end+_e);for(let et of Ke)Ze(et)}}function h(re){switch(re.kind){case 11:case 9:case 80:return!0}return!1}function _(re,ge,Ie,_e,Ee){pe.assert(re.end>=ge,"Adjusting an element that was entirely before the change range"),pe.assert(re.pos<=Ie,"Adjusting an element that was entirely after the change range"),pe.assert(re.pos<=re.end);let Ne=Math.min(re.pos,_e),Te=re.end>=Ie?re.end+Ee:Math.min(re.end,_e);if(pe.assert(Ne<=Te),re.parent){let Ze=re.parent;pe.assertGreaterThanOrEqual(Ne,Ze.pos),pe.assertLessThanOrEqual(Te,Ze.end)}GB(re,Ne,Te)}function S(re,ge){if(ge){let Ie=re.pos,_e=Ee=>{pe.assert(Ee.pos>=Ie),Ie=Ee.end};if(jm(re))for(let Ee of re.jsDoc)_e(Ee);Lu(re,_e),pe.assert(Ie<=re.end)}}function R(re,ge,Ie,_e,Ee,Ne,Te,Ze){Pe(re);return;function Pe(et){if(pe.assert(et.pos<=et.end),et.pos>Ie){d(et,re,!1,Ee,Ne,Te,Ze);return}let Ye=et.end;if(Ye>=ge){if(YOt(et),Y$e(et,re),_(et,ge,Ie,_e,Ee),Lu(et,Pe,Ke),jm(et))for(let Tt of et.jsDoc)Pe(Tt);S(et,Ze);return}pe.assert(YeIe){d(et,re,!0,Ee,Ne,Te,Ze);return}let Ye=et.end;if(Ye>=ge){YOt(et),_(et,ge,Ie,_e,Ee);for(let Tt of et)Pe(Tt);return}pe.assert(Ye0&&Te<=1;Te++){let Ze=O(re,_e);pe.assert(Ze.pos<=_e);let Pe=Ze.pos;_e=Math.max(0,Pe-1)}let Ee=RA(_e,Rs(ge.span)),Ne=ge.newLength+(ge.span.start-_e);return iS(Ee,Ne)}function O(re,ge){let Ie=re,_e;if(Lu(re,Ne),_e){let Te=Ee(_e);Te.pos>Ie.pos&&(Ie=Te)}return Ie;function Ee(Te){for(;;){let Ze=kbe(Te);if(Ze)Te=Ze;else return Te}}function Ne(Te){if(!af(Te))if(Te.pos<=ge){if(Te.pos>=Ie.pos&&(Ie=Te),gege),!0}}function V(re,ge,Ie,_e){let Ee=re.text;if(Ie&&(pe.assert(Ee.length-Ie.span.length+Ie.newLength===ge.length),_e||pe.shouldAssert(3))){let Ne=Ee.substr(0,Ie.span.start),Te=ge.substr(0,Ie.span.start);pe.assert(Ne===Te);let Ze=Ee.substring(Rs(Ie.span),Ee.length),Pe=ge.substring(Rs(iN(Ie)),ge.length);pe.assert(Ze===Pe)}}function M(re){let ge=re.statements,Ie=0;pe.assert(Ie=Ke.pos&&Te=Ke.pos&&Te{re[re.Value=-1]="Value"})(ee||(ee={}))})(set||(set={}));function MC(s){return G9e(s)!==void 0}function G9e(s){let c=fE(s,tde,!1);if(c)return c;if(lA(s,".ts")){let g=dp(s),d=g.lastIndexOf(".d.");if(d>=0)return g.substring(d)}}function U2s(s,c,g,d){if(s){if(s==="import")return 99;if(s==="require")return 1;d(c,g-c,Z.resolution_mode_should_be_either_require_or_import)}}function oet(s,c){let g=[];for(let d of CE(c,0)||E){let h=c.substring(d.pos,d.end);q2s(g,d,h)}s.pragmas=new Map;for(let d of g){if(s.pragmas.has(d.name)){let h=s.pragmas.get(d.name);h instanceof Array?h.push(d.args):s.pragmas.set(d.name,[h,d.args]);continue}s.pragmas.set(d.name,d.args)}}function aet(s,c){s.checkJsDirective=void 0,s.referencedFiles=[],s.typeReferenceDirectives=[],s.libReferenceDirectives=[],s.amdDependencies=[],s.hasNoDefaultLib=!1,s.pragmas.forEach((g,d)=>{switch(d){case"reference":{let h=s.referencedFiles,_=s.typeReferenceDirectives,S=s.libReferenceDirectives;F(cc(g),R=>{let{types:T,lib:O,path:V,["resolution-mode"]:M,preserve:ee}=R.arguments,re=ee==="true"?!0:void 0;if(R.arguments["no-default-lib"]==="true")s.hasNoDefaultLib=!0;else if(T){let ge=U2s(M,T.pos,T.end,c);_.push({pos:T.pos,end:T.end,fileName:T.value,...ge?{resolutionMode:ge}:{},...re?{preserve:re}:{}})}else O?S.push({pos:O.pos,end:O.end,fileName:O.value,...re?{preserve:re}:{}}):V?h.push({pos:V.pos,end:V.end,fileName:V.value,...re?{preserve:re}:{}}):c(R.range.pos,R.range.end-R.range.pos,Z.Invalid_reference_directive_syntax)});break}case"amd-dependency":{s.amdDependencies=lt(cc(g),h=>({name:h.arguments.name,path:h.arguments.path}));break}case"amd-module":{if(g instanceof Array)for(let h of g)s.moduleName&&c(h.range.pos,h.range.end-h.range.pos,Z.An_AMD_module_cannot_have_multiple_name_assignments),s.moduleName=h.arguments.name;else s.moduleName=g.arguments.name;break}case"ts-nocheck":case"ts-check":{F(cc(g),h=>{(!s.checkJsDirective||h.range.pos>s.checkJsDirective.pos)&&(s.checkJsDirective={enabled:d==="ts-check",end:h.range.end,pos:h.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:pe.fail("Unhandled pragma kind")}})}var QOt=new Map;function K2s(s){if(QOt.has(s))return QOt.get(s);let c=new RegExp(`(\\s${s}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return QOt.set(s,c),c}var j2s=/^\/\/\/\s*<(\S+)\s.*?\/>/m,z2s=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function q2s(s,c,g){let d=c.kind===2&&j2s.exec(g);if(d){let _=d[1].toLowerCase(),S=i1[_];if(!S||!(S.kind&1))return;if(S.args){let R={};for(let T of S.args){let V=K2s(T.name).exec(g);if(!V&&!T.optional)return;if(V){let M=V[2]||V[3];if(T.captureSpan){let ee=c.pos+V.index+V[1].length+1;R[T.name]={value:M,pos:ee,end:ee+M.length}}else R[T.name]=M}}s.push({name:_,args:{arguments:R,range:c}})}else s.push({name:_,args:{arguments:{},range:c}});return}let h=c.kind===2&&z2s.exec(g);if(h)return oen(s,c,2,h);if(c.kind===3){let _=/@(\S+)(\s+(?:\S.*)?)?$/gm,S;for(;S=_.exec(g);)oen(s,c,4,S)}}function oen(s,c,g,d){if(!d)return;let h=d[1].toLowerCase(),_=i1[h];if(!_||!(_.kind&g))return;let S=d[2],R=$2s(_,S);R!=="fail"&&s.push({name:h,args:{arguments:R,range:c}})}function $2s(s,c){if(!c)return{};if(!s.args)return{};let g=c.trim().split(/\s+/),d={};for(let h=0;h[""+c,s])),cen=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["es2021","lib.es2021.d.ts"],["es2022","lib.es2022.d.ts"],["es2023","lib.es2023.d.ts"],["es2024","lib.es2024.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["dom.asynciterable","lib.dom.asynciterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["webworker.asynciterable","lib.webworker.asynciterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2016.intl","lib.es2016.intl.d.ts"],["es2017.arraybuffer","lib.es2017.arraybuffer.d.ts"],["es2017.date","lib.es2017.date.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2019.intl","lib.es2019.intl.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.date","lib.es2020.date.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["es2020.number","lib.es2020.number.d.ts"],["es2021.promise","lib.es2021.promise.d.ts"],["es2021.string","lib.es2021.string.d.ts"],["es2021.weakref","lib.es2021.weakref.d.ts"],["es2021.intl","lib.es2021.intl.d.ts"],["es2022.array","lib.es2022.array.d.ts"],["es2022.error","lib.es2022.error.d.ts"],["es2022.intl","lib.es2022.intl.d.ts"],["es2022.object","lib.es2022.object.d.ts"],["es2022.string","lib.es2022.string.d.ts"],["es2022.regexp","lib.es2022.regexp.d.ts"],["es2023.array","lib.es2023.array.d.ts"],["es2023.collection","lib.es2023.collection.d.ts"],["es2023.intl","lib.es2023.intl.d.ts"],["es2024.arraybuffer","lib.es2024.arraybuffer.d.ts"],["es2024.collection","lib.es2024.collection.d.ts"],["es2024.object","lib.es2024.object.d.ts"],["es2024.promise","lib.es2024.promise.d.ts"],["es2024.regexp","lib.es2024.regexp.d.ts"],["es2024.sharedmemory","lib.es2024.sharedmemory.d.ts"],["es2024.string","lib.es2024.string.d.ts"],["esnext.array","lib.es2023.array.d.ts"],["esnext.collection","lib.esnext.collection.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.disposable","lib.esnext.disposable.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.es2022.string.d.ts"],["esnext.promise","lib.es2024.promise.d.ts"],["esnext.weakref","lib.es2021.weakref.d.ts"],["esnext.decorators","lib.esnext.decorators.d.ts"],["esnext.object","lib.es2024.object.d.ts"],["esnext.array","lib.esnext.array.d.ts"],["esnext.regexp","lib.es2024.regexp.d.ts"],["esnext.string","lib.es2024.string.d.ts"],["esnext.iterator","lib.esnext.iterator.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.float16","lib.esnext.float16.d.ts"],["esnext.error","lib.esnext.error.d.ts"],["esnext.sharedmemory","lib.esnext.sharedmemory.d.ts"],["decorators","lib.decorators.d.ts"],["decorators.legacy","lib.decorators.legacy.d.ts"]],F9e=cen.map(s=>s[0]),cet=new Map(cen),Mz=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_the_TypeScript_watch_mode_works,defaultValueDescription:4},{name:"watchDirectory",type:new Map(Object.entries({usefsevents:0,fixedpollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,defaultValueDescription:0},{name:"fallbackPolling",type:new Map(Object.entries({fixedinterval:0,priorityinterval:1,dynamicpriority:2,fixedchunksize:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:Z.Watch_and_Build_Modes,description:Z.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,defaultValueDescription:!1},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:APt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:APt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_files_from_the_watch_mode_s_processing}],Z9e=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:Z.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Output_Formatting,description:Z.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Output_Formatting,description:Z.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:Z.FILE_OR_DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:Z.Projects,description:Z.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Compiler_Diagnostics,description:Z.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Watch_and_Build_Modes,description:Z.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:Z.Platform_specific}],uet={name:"target",shortName:"t",type:new Map(Object.entries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,es2021:8,es2022:9,es2023:10,es2024:11,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,deprecatedKeys:new Set(["es3"]),paramType:Z.VERSION,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},JOt={name:"module",shortName:"m",type:new Map(Object.entries({none:0,commonjs:1,amd:2,system:4,umd:3,es6:5,es2015:5,es2020:6,es2022:7,esnext:99,node16:100,node18:101,node20:102,nodenext:199,preserve:200})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_what_module_code_is_generated,defaultValueDescription:void 0},len=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:Z.Command_line_Options,paramType:Z.FILE_OR_DIRECTORY,description:Z.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},uet,JOt,{name:"lib",type:"list",element:{name:"lib",type:cet,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",allowJsFlag:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files,defaultValueDescription:!1},{name:"checkJs",type:"boolean",affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:aen,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.FILE,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.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,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.LOCATION,category:Z.Modules,description:Z.Specify_the_root_folder_within_your_source_files,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:Z.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:Z.FILE,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:Z.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Disable_emitting_comments},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:Z.Emit,description:Z.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,defaultValueDescription:!1},{name:"importsNotUsedAsValues",type:new Map(Object.entries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:Z.Interop_Constraints,description:Z.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,transpileOptionValue:!0,defaultValueDescription:!1},{name:"verbatimModuleSyntax",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.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,defaultValueDescription:!1},{name:"isolatedDeclarations",type:"boolean",category:Z.Interop_Constraints,description:Z.Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"erasableSyntaxOnly",type:"boolean",category:Z.Interop_Constraints,description:Z.Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"libReplacement",type:"boolean",affectsProgramStructure:!0,category:Z.Language_and_Environment,description:Z.Enable_lib_replacement,defaultValueDescription:!0},{name:"strict",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Type_Checking,description:Z.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBuiltinIteratorReturn",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Ensure_use_strict_is_always_emitted,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,defaultValueDescription:!1},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,defaultValueDescription:!1},{name:"noPropertyAccessFromIndexSignature",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!1,category:Z.Type_Checking,description:Z.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,defaultValueDescription:!1},{name:"moduleResolution",type:new Map(Object.entries({node10:2,node:2,classic:1,node16:3,nodenext:99,bundler:100})),deprecatedKeys:new Set(["node"]),affectsSourceFile:!0,affectsModuleResolution:!0,paramType:Z.STRATEGY,category:Z.Modules,description:Z.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:Z.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:Z.Modules,description:Z.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:Z.Modules,description:Z.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:Z.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Interop_Constraints,description:Z.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:Z.Interop_Constraints,description:Z.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,defaultValueDescription:!1},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:Z.Modules,description:Z.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,defaultValueDescription:!1,transpileOptionValue:void 0},{name:"rewriteRelativeImportExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files,defaultValueDescription:!1},{name:"resolvePackageJsonExports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:Z.Modules,description:Z.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"noUncheckedSideEffectImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Check_side_effect_imports,defaultValueDescription:!1},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,defaultValueDescription:"`React.createElement`"},{name:"jsxFragmentFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,defaultValueDescription:"React.Fragment"},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSourceFile:!0,category:Z.Language_and_Environment,description:Z.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,defaultValueDescription:"react"},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:Z.Modules,description:Z.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,defaultValueDescription:!1},{name:"out",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!1,category:Z.Backwards_Compatibility,paramType:Z.FILE,transpileOptionValue:void 0,description:Z.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:Z.Backwards_Compatibility,description:Z.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,defaultValueDescription:"utf8"},{name:"emitBOM",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,defaultValueDescription:!1},{name:"newLine",type:new Map(Object.entries({crlf:0,lf:1})),affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.NEWLINE,category:Z.Emit,description:Z.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Output_Formatting,description:Z.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:Z.Language_and_Environment,affectsProgramStructure:!0,description:Z.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,transpileOptionValue:!0,defaultValueDescription:!1},{name:"stripInternal",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:Z.Editor_Support,description:Z.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,defaultValueDescription:!1},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Emit,transpileOptionValue:void 0,description:Z.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:Z.Interop_Constraints,description:Z.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:Z.JavaScript_Support,description:Z.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,defaultValueDescription:0},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:Z.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:Z.Backwards_Compatibility,description:Z.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,defaultValueDescription:!1},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:Z.Specify_a_list_of_language_service_plugins_to_include,category:Z.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:Z.Control_what_method_is_used_to_detect_module_format_JS_files,category:Z.Language_and_Environment,defaultValueDescription:Z.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules},{name:"ignoreDeprecations",type:"string",defaultValueDescription:void 0}],Xw=[...Z9e,...len],UOt=Xw.filter(s=>!!s.affectsSemanticDiagnostics),KOt=Xw.filter(s=>!!s.affectsEmit),jOt=Xw.filter(s=>!!s.affectsDeclarationPath),get=Xw.filter(s=>!!s.affectsModuleResolution),Aet=Xw.filter(s=>!!s.affectsSourceFile||!!s.affectsBindDiagnostics),zOt=Xw.filter(s=>!!s.affectsProgramStructure),qOt=Xw.filter(s=>Da(s,"transpileOptionValue")),eSs=Xw.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),tSs=Mz.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),$Ot=Xw.filter(rSs);function rSs(s){return!Xs(s.type)}var VU={name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},det=[VU,{name:"verbose",shortName:"v",category:Z.Command_line_Options,description:Z.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:Z.Command_line_Options,description:Z.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:Z.Command_line_Options,description:Z.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:Z.Command_line_Options,description:Z.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1},{name:"stopBuildOnErrors",category:Z.Command_line_Options,description:Z.Skip_building_downstream_projects_on_error_in_upstream_project,type:"boolean",defaultValueDescription:!1}],PEe=[...Z9e,...det],L9e=[{name:"enable",type:"boolean",defaultValueDescription:!1},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean",defaultValueDescription:!1}];function V9e(s){let c=new Map,g=new Map;return F(s,d=>{c.set(d.name.toLowerCase(),d),d.shortName&&g.set(d.shortName,d.name)}),{optionsNameMap:c,shortOptionNames:g}}var uen;function Oie(){return uen||(uen=V9e(Xw))}var nSs={diagnostic:Z.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:Ien},gen={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function ePt(s){return Aen(s,kf)}function Aen(s,c){let g=Do(s.type.keys()),d=(s.deprecatedKeys?g.filter(h=>!s.deprecatedKeys.has(h)):g).map(h=>`'${h}'`).join(", ");return c(Z.Argument_for_0_option_must_be_Colon_1,`--${s.name}`,d)}function W9e(s,c,g){return jen(s,(c??"").trim(),g)}function tPt(s,c="",g){if(c=c.trim(),Ac(c,"-"))return;if(s.type==="listOrElement"&&!c.includes(","))return Hz(s,c,g);if(c==="")return[];let d=c.split(",");switch(s.element.type){case"number":return Xt(d,h=>Hz(s.element,parseInt(h),g));case"string":return Xt(d,h=>Hz(s.element,h||"",g));case"boolean":case"object":return pe.fail(`List of ${s.element.type} is not yet supported.`);default:return Xt(d,h=>W9e(s.element,h,g))}}function den(s){return s.name}function rPt(s,c,g,d,h){var _;let S=(_=c.alternateMode)==null?void 0:_.getOptionsNameMap().optionsNameMap.get(s.toLowerCase());if(S)return t5(h,d,S!==VU?c.alternateMode.diagnostic:Z.Option_build_must_be_the_first_command_line_argument,s);let R=Dr(s,c.optionDeclarations,den);return R?t5(h,d,c.unknownDidYouMeanDiagnostic,g||s,R.name):t5(h,d,c.unknownOptionDiagnostic,g||s)}function pet(s,c,g){let d={},h,_=[],S=[];return R(c),{options:d,watchOptions:h,fileNames:_,errors:S};function R(O){let V=0;for(;VEd.readFile(re)));if(!Xs(V)){S.push(V);return}let M=[],ee=0;for(;;){for(;ee=V.length)break;let re=ee;if(V.charCodeAt(re)===34){for(ee++;ee32;)ee++;M.push(V.substring(re,ee))}}R(M)}}function pen(s,c,g,d,h,_){if(d.isTSConfigOnly){let S=s[c];S==="null"?(h[d.name]=void 0,c++):d.type==="boolean"?S==="false"?(h[d.name]=Hz(d,!1,_),c++):(S==="true"&&c++,_.push(kf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,d.name))):(_.push(kf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,d.name)),S&&!Ac(S,"-")&&c++)}else if(!s[c]&&d.type!=="boolean"&&_.push(kf(g.optionTypeMismatchDiagnostic,d.name,Cet(d))),s[c]!=="null")switch(d.type){case"number":h[d.name]=Hz(d,parseInt(s[c]),_),c++;break;case"boolean":let S=s[c];h[d.name]=Hz(d,S!=="false",_),(S==="false"||S==="true")&&c++;break;case"string":h[d.name]=Hz(d,s[c]||"",_),c++;break;case"list":let R=tPt(d,s[c],_);h[d.name]=R||[],R&&c++;break;case"listOrElement":pe.fail("listOrElement not supported here");break;default:h[d.name]=W9e(d,s[c],_),c++;break}else h[d.name]=void 0,c++;return c}var O9e={alternateMode:nSs,getOptionsNameMap:Oie,optionDeclarations:Xw,unknownOptionDiagnostic:Z.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Compiler_option_0_expects_an_argument};function nPt(s,c){return pet(O9e,s,c)}function fet(s,c){return iPt(Oie,s,c)}function iPt(s,c,g=!1){c=c.toLowerCase();let{optionsNameMap:d,shortOptionNames:h}=s();if(g){let _=h.get(c);_!==void 0&&(c=_)}return d.get(c)}var fen;function Ien(){return fen||(fen=V9e(PEe))}var iSs={diagnostic:Z.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:Oie},sSs={alternateMode:iSs,getOptionsNameMap:Ien,optionDeclarations:PEe,unknownOptionDiagnostic:Z.Unknown_build_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Build_option_0_requires_a_value_of_type_1};function sPt(s){let{options:c,watchOptions:g,fileNames:d,errors:h}=pet(sSs,s),_=c;return d.length===0&&d.push("."),_.clean&&_.force&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"clean","force")),_.clean&&_.verbose&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"clean","verbose")),_.clean&&_.watch&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"clean","watch")),_.watch&&_.dry&&h.push(kf(Z.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:_,watchOptions:g,projects:d,errors:h}}function Wb(s,...c){return Ma(kf(s,...c).messageText,Xs)}function MEe(s,c,g,d,h,_){let S=xde(s,O=>g.readFile(O));if(!Xs(S)){g.onUnRecoverableConfigFileDiagnostic(S);return}let R=WEe(s,S),T=g.getCurrentDirectory();return R.path=Pu(s,T,bd(g.useCaseSensitiveFileNames)),R.resolvedPath=R.path,R.originalFileName=R.fileName,QEe(R,g,Xc(Mo(s),T),c,Xc(s,T),void 0,_,d,h)}function HEe(s,c){let g=xde(s,c);return Xs(g)?Iet(s,g):{config:{},error:g}}function Iet(s,c){let g=WEe(s,c);return{config:Ren(g,g.parseDiagnostics,void 0),error:g.parseDiagnostics.length?g.parseDiagnostics[0]:void 0}}function oPt(s,c){let g=xde(s,c);return Xs(g)?WEe(s,g):{fileName:s,parseDiagnostics:[g]}}function xde(s,c){let g;try{g=c(s)}catch(d){return kf(Z.Cannot_read_file_0_Colon_1,s,d.message)}return g===void 0?kf(Z.Cannot_read_file_0,s):g}function het(s){return Ru(s,den)}var hen={optionDeclarations:L9e,unknownOptionDiagnostic:Z.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_type_acquisition_option_0_Did_you_mean_1},men;function Cen(){return men||(men=V9e(Mz))}var met={getOptionsNameMap:Cen,optionDeclarations:Mz,unknownOptionDiagnostic:Z.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Watch_option_0_requires_a_value_of_type_1},_en;function yen(){return _en||(_en=het(Xw))}var ben;function Een(){return ben||(ben=het(Mz))}var Sen;function ven(){return Sen||(Sen=het(L9e))}var P9e={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:Z.File_Management,disallowNullOrUndefined:!0},Ben={name:"compilerOptions",type:"object",elementOptions:yen(),extraKeyDiagnostics:O9e},wen={name:"watchOptions",type:"object",elementOptions:Een(),extraKeyDiagnostics:met},Ten={name:"typeAcquisition",type:"object",elementOptions:ven(),extraKeyDiagnostics:hen},aPt;function oSs(){return aPt===void 0&&(aPt={name:void 0,type:"object",elementOptions:het([Ben,wen,Ten,P9e,{name:"references",type:"list",element:{name:"references",type:"object"},category:Z.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:Z.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:Z.File_Management,defaultValueDescription:Z.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:Z.File_Management,defaultValueDescription:Z.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},XOt])}),aPt}function Ren(s,c,g){var d;let h=(d=s.statements[0])==null?void 0:d.expression;if(h&&h.kind!==211){if(c.push(SE(s,h,Z.The_root_value_of_a_0_file_must_be_an_object,dp(s.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),YI(h)){let _=de(h.elements,ag);if(_)return YEe(s,_,c,!0,g)}return{}}return YEe(s,h,c,!0,g)}function cPt(s,c){var g;return YEe(s,(g=s.statements[0])==null?void 0:g.expression,c,!0,void 0)}function YEe(s,c,g,d,h){if(!c)return d?{}:void 0;return R(c,h?.rootOptions);function _(O,V){var M;let ee=d?{}:void 0;for(let re of O.properties){if(re.kind!==304){g.push(SE(s,re,Z.Property_assignment_expected));continue}re.questionToken&&g.push(SE(s,re.questionToken,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),T(re.name)||g.push(SE(s,re.name,Z.String_literal_with_double_quotes_expected));let ge=YY(re.name)?void 0:BW(re.name),Ie=ge&&Bc(ge),_e=Ie?(M=V?.elementOptions)==null?void 0:M.get(Ie):void 0,Ee=R(re.initializer,_e);typeof Ie<"u"&&(d&&(ee[Ie]=Ee),h?.onPropertySet(Ie,Ee,re,V,_e))}return ee}function S(O,V){if(!d){O.forEach(M=>R(M,V));return}return Le(O.map(M=>R(M,V)),M=>M!==void 0)}function R(O,V){switch(O.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return T(O)||g.push(SE(s,O,Z.String_literal_with_double_quotes_expected)),O.text;case 9:return Number(O.text);case 225:if(O.operator!==41||O.operand.kind!==9)break;return-Number(O.operand.text);case 211:return _(O,V);case 210:return S(O.elements,V&&V.element)}V?g.push(SE(s,O,Z.Compiler_option_0_requires_a_value_of_type_1,V.name,Cet(V))):g.push(SE(s,O,Z.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function T(O){return Lg(O)&&_ne(O,s)}}function Cet(s){return s.type==="listOrElement"?`${Cet(s.element)} or Array`:s.type==="list"?"Array":Xs(s.type)?s.type:"string"}function Nen(s,c){if(s){if(XEe(c))return!s.disallowNullOrUndefined;if(s.type==="list")return Ki(c);if(s.type==="listOrElement")return Ki(c)||Nen(s.element,c);let g=Xs(s.type)?s.type:"string";return typeof c===g}return!1}function _et(s,c,g){var d,h,_;let S=bd(g.useCaseSensitiveFileNames),R=lt(Le(s.fileNames,(h=(d=s.options.configFile)==null?void 0:d.configFileSpecs)!=null&&h.validatedIncludeSpecs?lSs(c,s.options.configFile.configFileSpecs.validatedIncludeSpecs,s.options.configFile.configFileSpecs.validatedExcludeSpecs,g):Nf),ge=>c1(Xc(c,g.getCurrentDirectory()),Xc(ge,g.getCurrentDirectory()),S)),T={configFilePath:Xc(c,g.getCurrentDirectory()),useCaseSensitiveFileNames:g.useCaseSensitiveFileNames},O=yet(s.options,T),V=s.watchOptions&&uSs(s.watchOptions),M={compilerOptions:{...M9e(O),showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0},watchOptions:V&&M9e(V),references:lt(s.projectReferences,ge=>({...ge,path:ge.originalPath?ge.originalPath:"",originalPath:void 0})),files:B(R)?R:void 0,...(_=s.options.configFile)!=null&&_.configFileSpecs?{include:cSs(s.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:s.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:s.compileOnSave?!0:void 0},ee=new Set(O.keys()),re={};for(let ge in cz)if(!ee.has(ge)&&aSs(ge,ee)){let Ie=cz[ge].computeValue(s.options),_e=cz[ge].computeValue({});Ie!==_e&&(re[ge]=cz[ge].computeValue(s.options))}return Pt(M.compilerOptions,M9e(yet(re,T))),M}function aSs(s,c){let g=new Set;return d(s);function d(h){var _;return Wy(g,h)?zt((_=cz[h])==null?void 0:_.dependencies,S=>c.has(S)||d(S)):!1}}function M9e(s){return Object.fromEntries(s)}function cSs(s){if(B(s)){if(B(s)!==1)return s;if(s[0]!==Fen)return s}}function lSs(s,c,g,d){if(!c)return Nf;let h=jAe(s,g,c,d.useCaseSensitiveFileNames,d.getCurrentDirectory()),_=h.excludePattern&&nk(h.excludePattern,d.useCaseSensitiveFileNames),S=h.includeFilePattern&&nk(h.includeFilePattern,d.useCaseSensitiveFileNames);return S?_?R=>!(S.test(R)&&!_.test(R)):R=>!S.test(R):_?R=>_.test(R):Nf}function Den(s){switch(s.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return Den(s.element);default:return s.type}}function H9e(s,c){return Fh(c,(g,d)=>{if(g===s)return d})}function yet(s,c){return ken(s,Oie(),c)}function uSs(s){return ken(s,Cen())}function ken(s,{optionsNameMap:c},g){let d=new Map,h=g&&bd(g.useCaseSensitiveFileNames);for(let _ in s)if(Da(s,_)){if(c.has(_)&&(c.get(_).category===Z.Command_line_Options||c.get(_).category===Z.Output_Formatting))continue;let S=s[_],R=c.get(_.toLowerCase());if(R){pe.assert(R.type!=="listOrElement");let T=Den(R);T?R.type==="list"?d.set(_,S.map(O=>H9e(O,T))):d.set(_,H9e(S,T)):g&&R.isFilePath?d.set(_,c1(g.configFilePath,Xc(S,Mo(g.configFilePath)),h)):g&&R.type==="list"&&R.element.isFilePath?d.set(_,S.map(O=>c1(g.configFilePath,Xc(O,Mo(g.configFilePath)),h))):d.set(_,S)}}return d}function lPt(s,c){let g=" ",d=[],h=Object.keys(s).filter(V=>V!=="init"&&V!=="help"&&V!=="watch");if(d.push("{"),d.push(`${g}// ${Bu(Z.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)}`),d.push(`${g}"compilerOptions": {`),S(Z.File_Layout),R("rootDir","./src","optional"),R("outDir","./dist","optional"),_(),S(Z.Environment_Settings),S(Z.See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule),R("module",199),R("target",99),R("types",[]),s.lib&&R("lib",s.lib),S(Z.For_nodejs_Colon),d.push(`${g}${g}// "lib": ["esnext"],`),d.push(`${g}${g}// "types": ["node"],`),S(Z.and_npm_install_D_types_Slashnode),_(),S(Z.Other_Outputs),R("sourceMap",!0),R("declaration",!0),R("declarationMap",!0),_(),S(Z.Stricter_Typechecking_Options),R("noUncheckedIndexedAccess",!0),R("exactOptionalPropertyTypes",!0),_(),S(Z.Style_Options),R("noImplicitReturns",!0,"optional"),R("noImplicitOverride",!0,"optional"),R("noUnusedLocals",!0,"optional"),R("noUnusedParameters",!0,"optional"),R("noFallthroughCasesInSwitch",!0,"optional"),R("noPropertyAccessFromIndexSignature",!0,"optional"),_(),S(Z.Recommended_Options),R("strict",!0),R("jsx",4),R("verbatimModuleSyntax",!0),R("isolatedModules",!0),R("noUncheckedSideEffectImports",!0),R("moduleDetection",3),R("skipLibCheck",!0),h.length>0)for(_();h.length>0;)R(h[0],s[h[0]]);function _(){d.push("")}function S(V){d.push(`${g}${g}// ${Bu(V)}`)}function R(V,M,ee="never"){let re=h.indexOf(V);re>=0&&h.splice(re,1);let ge;ee==="always"?ge=!0:ee==="never"?ge=!1:ge=!Da(s,V);let Ie=s[V]??M;ge?d.push(`${g}${g}// "${V}": ${T(V,Ie)},`):d.push(`${g}${g}"${V}": ${T(V,Ie)},`)}function T(V,M){let ee=Xw.filter(ge=>ge.name===V)[0];ee||pe.fail(`No option named ${V}?`);let re=ee.type instanceof Map?ee.type:void 0;if(Ki(M)){let ge="element"in ee&&ee.element.type instanceof Map?ee.element.type:void 0;return`[${M.map(Ie=>O(Ie,ge)).join(", ")}]`}else return O(M,re)}function O(V,M){return M&&(V=H9e(V,M)??pe.fail(`No matching value of ${V}`)),JSON.stringify(V)}return d.push(`${g}}`),d.push("}"),d.push(""),d.join(c)}function Y9e(s,c){let g={},d=Oie().optionsNameMap;for(let h in s)Da(s,h)&&(g[h]=gSs(d.get(h.toLowerCase()),s[h],c));return g.configFilePath&&(g.configFilePath=c(g.configFilePath)),g}function gSs(s,c,g){if(s&&!XEe(c)){if(s.type==="list"){let d=c;if(s.element.isFilePath&&d.length)return d.map(g)}else if(s.isFilePath)return g(c);pe.assert(s.type!=="listOrElement")}return c}function xen(s,c,g,d,h,_,S,R,T){return Zen(s,void 0,c,g,d,T,h,_,S,R)}function QEe(s,c,g,d,h,_,S,R,T){var O,V;(O=ki)==null||O.push(ki.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:s.fileName});let M=Zen(void 0,s,c,g,d,T,h,_,S,R);return(V=ki)==null||V.pop(),M}function bet(s,c){c&&Object.defineProperty(s,"configFile",{enumerable:!1,writable:!1,value:c})}function XEe(s){return s==null}function Gen(s,c){return Mo(Xc(s,c))}var Fen="**/*";function Zen(s,c,g,d,h={},_,S,R=[],T=[],O){pe.assert(s===void 0&&c!==void 0||s!==void 0&&c===void 0);let V=[],M=Men(s,c,g,d,S,R,V,O),{raw:ee}=M,re=Len(HA(h,M.options||{}),eSs,d),ge=Q9e(_&&M.watchOptions?HA(_,M.watchOptions):M.watchOptions||_,d);re.configFilePath=S&&xp(S);let Ie=su(S?Gen(S,d):d),_e=Ee();return c&&(c.configFileSpecs=_e),bet(re,c),{options:re,watchOptions:ge,fileNames:Ne(Ie),projectReferences:Te(Ie),typeAcquisition:M.typeAcquisition||Bet(),raw:ee,errors:V,wildcardDirectories:ESs(_e,Ie,g.useCaseSensitiveFileNames),compileOnSave:!!ee.compileOnSave};function Ee(){let Ye=Ke("references",Gt=>typeof Gt=="object","object"),Tt=Ze(Pe("files"));if(Tt){let Gt=Ye==="no-prop"||Ki(Ye)&&Ye.length===0,it=Da(ee,"extends");if(Tt.length===0&&Gt&&!it)if(c){let Dt=S||"tsconfig.json",tr=Z.The_files_list_in_config_file_0_is_empty,ur=Ane(c,"files",dt=>dt.initializer),Gr=t5(c,ur,tr,Dt);V.push(Gr)}else et(Z.The_files_list_in_config_file_0_is_empty,S||"tsconfig.json")}let at=Ze(Pe("include")),Qe=Pe("exclude"),Ct=!1,mt=Ze(Qe);if(Qe==="no-prop"){let Gt=re.outDir,it=re.declarationDir;(Gt||it)&&(mt=Le([Gt,it],Dt=>!!Dt))}Tt===void 0&&at===void 0&&(at=[Fen],Ct=!0);let yt,Rt,Lt,je;at&&(yt=$en(at,V,!0,c,"include"),Lt=X9e(yt,Ie)||yt),mt&&(Rt=$en(mt,V,!1,c,"exclude"),je=X9e(Rt,Ie)||Rt);let Wt=Le(Tt,Xs),_r=X9e(Wt,Ie)||Wt;return{filesSpecs:Tt,includeSpecs:at,excludeSpecs:mt,validatedFilesSpec:_r,validatedIncludeSpecs:Lt,validatedExcludeSpecs:je,validatedFilesSpecBeforeSubstitution:Wt,validatedIncludeSpecsBeforeSubstitution:yt,validatedExcludeSpecsBeforeSubstitution:Rt,isDefaultIncludeSpec:Ct}}function Ne(Ye){let Tt=Gde(_e,Ye,re,g,T);return Pen(Tt,JEe(ee),R)&&V.push(Oen(_e,S)),Tt}function Te(Ye){let Tt,at=Ke("references",Qe=>typeof Qe=="object","object");if(Ki(at))for(let Qe of at)typeof Qe.path!="string"?et(Z.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(Tt||(Tt=[])).push({path:Xc(Qe.path,Ye),originalPath:Qe.path,prepend:Qe.prepend,circular:Qe.circular});return Tt}function Ze(Ye){return Ki(Ye)?Ye:void 0}function Pe(Ye){return Ke(Ye,Xs,"string")}function Ke(Ye,Tt,at){if(Da(ee,Ye)&&!XEe(ee[Ye]))if(Ki(ee[Ye])){let Qe=ee[Ye];return!c&&!ue(Qe,Tt)&&V.push(kf(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,at)),Qe}else return et(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,"Array"),"not-array";return"no-prop"}function et(Ye,...Tt){c||V.push(kf(Ye,...Tt))}}function Q9e(s,c){return Len(s,tSs,c)}function Len(s,c,g){if(!s)return s;let d;for(let _ of c)if(s[_.name]!==void 0){let S=s[_.name];switch(_.type){case"string":pe.assert(_.isFilePath),Eet(S)&&h(_,Wen(S,g));break;case"list":pe.assert(_.element.isFilePath);let R=X9e(S,g);R&&h(_,R);break;case"object":pe.assert(_.name==="paths");let T=ASs(S,g);T&&h(_,T);break;default:pe.fail("option type not supported")}}return d||s;function h(_,S){(d??(d=Pt({},s)))[_.name]=S}}var Ven="${configDir}";function Eet(s){return Xs(s)&&Ac(s,Ven,!0)}function Wen(s,c){return Xc(s.replace(Ven,"./"),c)}function X9e(s,c){if(!s)return s;let g;return s.forEach((d,h)=>{Eet(d)&&((g??(g=s.slice()))[h]=Wen(d,c))}),g}function ASs(s,c){let g;return yg(s).forEach(h=>{if(!Ki(s[h]))return;let _=X9e(s[h],c);_&&((g??(g=Pt({},s)))[h]=_)}),g}function dSs(s){return s.code===Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function Oen({includeSpecs:s,excludeSpecs:c},g){return kf(Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,g||"tsconfig.json",JSON.stringify(s||[]),JSON.stringify(c||[]))}function Pen(s,c,g){return s.length===0&&c&&(!g||g.length===0)}function vet(s){return!s.fileNames.length&&Da(s.raw,"references")}function JEe(s){return!Da(s,"files")&&!Da(s,"references")}function J9e(s,c,g,d,h){let _=d.length;return Pen(s,h)?d.push(Oen(g,c)):Je(d,S=>!dSs(S)),_!==d.length}function pSs(s){return!!s.options}function Men(s,c,g,d,h,_,S,R){var T;d=xp(d);let O=Xc(h||"",d);if(_.includes(O))return S.push(kf(Z.Circularity_detected_while_resolving_configuration_Colon_0,[..._,O].join(" -> "))),{raw:s||cPt(c,S)};let V=s?fSs(s,g,d,h,S):ISs(c,g,d,h,S);if((T=V.options)!=null&&T.paths&&(V.options.pathsBasePath=d),V.extendedConfigPath){_=_.concat([O]);let re={options:{}};Xs(V.extendedConfigPath)?M(re,V.extendedConfigPath):V.extendedConfigPath.forEach(ge=>M(re,ge)),re.include&&(V.raw.include=re.include),re.exclude&&(V.raw.exclude=re.exclude),re.files&&(V.raw.files=re.files),V.raw.compileOnSave===void 0&&re.compileOnSave&&(V.raw.compileOnSave=re.compileOnSave),c&&re.extendedSourceFiles&&(c.extendedSourceFiles=Do(re.extendedSourceFiles.keys())),V.options=Pt(re.options,V.options),V.watchOptions=V.watchOptions&&re.watchOptions?ee(re,V.watchOptions):V.watchOptions||re.watchOptions}return V;function M(re,ge){let Ie=hSs(c,ge,g,_,S,R,re);if(Ie&&pSs(Ie)){let _e=Ie.raw,Ee,Ne=Te=>{V.raw[Te]||_e[Te]&&(re[Te]=lt(_e[Te],Ze=>Eet(Ze)||Up(Ze)?Ze:To(Ee||(Ee=o2(Mo(ge),d,bd(g.useCaseSensitiveFileNames))),Ze)))};Ne("include"),Ne("exclude"),Ne("files"),_e.compileOnSave!==void 0&&(re.compileOnSave=_e.compileOnSave),Pt(re.options,Ie.options),re.watchOptions=re.watchOptions&&Ie.watchOptions?ee(re,Ie.watchOptions):re.watchOptions||Ie.watchOptions}}function ee(re,ge){return re.watchOptionsCopied?Pt(re.watchOptions,ge):(re.watchOptionsCopied=!0,Pt({},re.watchOptions,ge))}}function fSs(s,c,g,d,h){Da(s,"excludes")&&h.push(kf(Z.Unknown_option_excludes_Did_you_mean_exclude));let _=Uen(s.compilerOptions,g,h,d),S=Ken(s.typeAcquisition,g,h,d),R=CSs(s.watchOptions,g,h);s.compileOnSave=mSs(s,g,h);let T=s.extends||s.extends===""?Hen(s.extends,c,g,d,h):void 0;return{raw:s,options:_,watchOptions:R,typeAcquisition:S,extendedConfigPath:T}}function Hen(s,c,g,d,h,_,S,R){let T,O=d?Gen(d,g):g;if(Xs(s))T=Yen(s,c,O,h,S,R);else if(Ki(s)){T=[];for(let V=0;VNe.name===re)&&(O=Ft(O,Ie.name))))}}function Yen(s,c,g,d,h,_){if(s=xp(s),Up(s)||Ac(s,"./")||Ac(s,"../")){let R=Xc(s,g);if(!c.fileExists(R)&&!di(R,".json")&&(R=`${R}.json`,!c.fileExists(R))){d.push(t5(_,h,Z.File_0_not_found,s));return}return R}let S=TPt(s,To(g,"tsconfig.json"),c);if(S.resolvedModule)return S.resolvedModule.resolvedFileName;s===""?d.push(t5(_,h,Z.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):d.push(t5(_,h,Z.File_0_not_found,s))}function hSs(s,c,g,d,h,_,S){let R=g.useCaseSensitiveFileNames?c:Qm(c),T,O,V;if(_&&(T=_.get(R))?{extendedResult:O,extendedConfig:V}=T:(O=oPt(c,M=>g.readFile(M)),O.parseDiagnostics.length||(V=Men(void 0,O,g,Mo(c),dp(c),d,h,_)),_&&_.set(R,{extendedResult:O,extendedConfig:V})),s&&((S.extendedSourceFiles??(S.extendedSourceFiles=new Set)).add(O.fileName),O.extendedSourceFiles))for(let M of O.extendedSourceFiles)S.extendedSourceFiles.add(M);if(O.parseDiagnostics.length){h.push(...O.parseDiagnostics);return}return V}function mSs(s,c,g){if(!Da(s,XOt.name))return!1;let d=WU(XOt,s.compileOnSave,c,g);return typeof d=="boolean"&&d}function Qen(s,c,g){let d=[];return{options:Uen(s,c,d,g),errors:d}}function Xen(s,c,g){let d=[];return{options:Ken(s,c,d,g),errors:d}}function Jen(s){return s&&dp(s)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function Uen(s,c,g,d){let h=Jen(d);return uPt(yen(),s,c,h,O9e,g),d&&(h.configFilePath=xp(d)),h}function Bet(s){return{enable:!!s&&dp(s)==="jsconfig.json",include:[],exclude:[]}}function Ken(s,c,g,d){let h=Bet(d);return uPt(ven(),s,c,h,hen,g),h}function CSs(s,c,g){return uPt(Een(),s,c,void 0,met,g)}function uPt(s,c,g,d,h,_){if(c){for(let S in c){let R=s.get(S);R?(d||(d={}))[R.name]=WU(R,c[S],g,_):_.push(rPt(S,h))}return d}}function t5(s,c,g,...d){return s&&c?SE(s,c,g,...d):kf(g,...d)}function WU(s,c,g,d,h,_,S){if(s.isCommandLineOnly){d.push(t5(S,h?.name,Z.Option_0_can_only_be_specified_on_command_line,s.name));return}if(Nen(s,c)){let R=s.type;if(R==="list"&&Ki(c))return zen(s,c,g,d,h,_,S);if(R==="listOrElement")return Ki(c)?zen(s,c,g,d,h,_,S):WU(s.element,c,g,d,h,_,S);if(!Xs(s.type))return jen(s,c,d,_,S);let T=Hz(s,c,d,_,S);return XEe(T)?T:_Ss(s,g,T)}else d.push(t5(S,_,Z.Compiler_option_0_requires_a_value_of_type_1,s.name,Cet(s)))}function _Ss(s,c,g){return s.isFilePath&&(g=xp(g),g=Eet(g)?g:Xc(g,c),g===""&&(g=".")),g}function Hz(s,c,g,d,h){var _;if(XEe(c))return;let S=(_=s.extraValidation)==null?void 0:_.call(s,c);if(!S)return c;g.push(t5(h,d,...S))}function jen(s,c,g,d,h){if(XEe(c))return;let _=c.toLowerCase(),S=s.type.get(_);if(S!==void 0)return Hz(s,S,g,d,h);g.push(Aen(s,(R,...T)=>t5(h,d,R,...T)))}function zen(s,c,g,d,h,_,S){return Le(lt(c,(R,T)=>WU(s.element,R,g,d,h,_?.elements[T],S)),R=>s.listPreserveFalsyValues?!0:!!R)}var ySs=/(?:^|\/)\*\*\/?$/,bSs=/^[^*?]*(?=\/[^/]*[*?])/;function Gde(s,c,g,d,h=E){c=su(c);let _=bd(d.useCaseSensitiveFileNames),S=new Map,R=new Map,T=new Map,{validatedFilesSpec:O,validatedIncludeSpecs:V,validatedExcludeSpecs:M}=s,ee=Az(g,h),re=dz(g,ee);if(O)for(let Ee of O){let Ne=Xc(Ee,c);S.set(_(Ne),Ne)}let ge;if(V&&V.length>0)for(let Ee of d.readDirectory(c,Sr(re),M,V,void 0)){if(lA(Ee,".json")){if(!ge){let Ze=V.filter(Ke=>di(Ke,".json")),Pe=lt(iie(Ze,c,"files"),Ke=>`^${Ke}$`);ge=Pe?Pe.map(Ke=>nk(Ke,d.useCaseSensitiveFileNames)):E}if(Se(ge,Ze=>Ze.test(Ee))!==-1){let Ze=_(Ee);!S.has(Ze)&&!T.has(Ze)&&T.set(Ze,Ee)}continue}if(vSs(Ee,S,R,ee,_))continue;BSs(Ee,R,ee,_);let Ne=_(Ee);!S.has(Ne)&&!R.has(Ne)&&R.set(Ne,Ee)}let Ie=Do(S.values()),_e=Do(R.values());return Ie.concat(_e,Do(T.values()))}function gPt(s,c,g,d,h){let{validatedFilesSpec:_,validatedIncludeSpecs:S,validatedExcludeSpecs:R}=c;if(!B(S)||!B(R))return!1;g=su(g);let T=bd(d);if(_){for(let O of _)if(T(Xc(O,g))===s)return!1}return K9e(s,R,d,h,g)}function qen(s){let c=Ac(s,"**/")?0:s.indexOf("/**/");return c===-1?!1:(di(s,"/..")?s.length:s.lastIndexOf("/../"))>c}function U9e(s,c,g,d){return K9e(s,Le(c,h=>!qen(h)),g,d)}function K9e(s,c,g,d,h){let _=gz(c,To(su(d),h),"exclude"),S=_&&nk(_,g);return S?S.test(s)?!0:!B0(s)&&S.test(Cp(s)):!1}function $en(s,c,g,d,h){return s.filter(S=>{if(!Xs(S))return!1;let R=APt(S,g);return R!==void 0&&c.push(_(...R)),R===void 0});function _(S,R){let T=nAe(d,h,R);return t5(d,T,S,R)}}function APt(s,c){if(pe.assert(typeof s=="string"),c&&ySs.test(s))return[Z.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s];if(qen(s))return[Z.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s]}function ESs({validatedIncludeSpecs:s,validatedExcludeSpecs:c},g,d){let h=gz(c,g,"exclude"),_=h&&new RegExp(h,d?"":"i"),S={},R=new Map;if(s!==void 0){let T=[];for(let O of s){let V=su(To(g,O));if(_&&_.test(V))continue;let M=SSs(V,d);if(M){let{key:ee,path:re,flags:ge}=M,Ie=R.get(ee),_e=Ie!==void 0?S[Ie]:void 0;(_e===void 0||_eIu(s,S)?S:void 0);if(!_)return!1;for(let S of _){if(lA(s,S)&&(S!==".ts"||!lA(s,".d.ts")))return!1;let R=h(yN(s,S));if(c.has(R)||g.has(R)){if(S===".d.ts"&&(lA(s,".js")||lA(s,".jsx")))continue;return!0}}return!1}function BSs(s,c,g,d){let h=F(g,_=>Iu(s,_)?_:void 0);if(h)for(let _=h.length-1;_>=0;_--){let S=h[_];if(lA(s,S))return;let R=d(yN(s,S));c.delete(R)}}function pPt(s){let c={};for(let g in s)if(Da(s,g)){let d=fet(g);d!==void 0&&(c[g]=fPt(s[g],d))}return c}function fPt(s,c){if(s===void 0)return s;switch(c.type){case"object":return"";case"string":return"";case"number":return typeof s=="number"?s:"";case"boolean":return typeof s=="boolean"?s:"";case"listOrElement":if(!Ki(s))return fPt(s,c.element);case"list":let g=c.element;return Ki(s)?Xt(s,d=>fPt(d,g)):"";default:return Fh(c.type,(d,h)=>{if(d===s)return h})}}function XW(s){if(typeof process.versions.pnp>"u")return;let{findPnpApi:c}=Et("module");if(c)return c(`${s}/`)}function etn(s){var c;return(c=XW(s))==null?void 0:c.resolveRequest("pnpapi",null)}function ttn(s){let c=XW(s);if(!c)return[];s=IE(s);let g=c.findPackageLocator(`${s}/`);if(!g)return[];let{packageDependencies:d}=c.getPackageInformation(g),h=[];for(let[_,S]of Array.from(d.entries()))if(_.startsWith("@types/")&&S!==null){let R=c.getLocator(_,S),{packageLocation:T}=c.getPackageInformation(R);h.push(Mo(T))}return h}function wSs(s,c){let g=XW(s),d=g.findPackageLocator(s),h=g.findPackageLocator(c);if(h===null)return!1;let _=g.getPackageInformation(d),S=_.packageDependencies.get(h.name);if(S)return S===h.reference;for(let R of _.packageDependencies.values())if(Array.isArray(R)&&R[0]===h.name&&R[1]===h.reference)return!0;return!1}function tu(s,c,...g){s.trace(iQ(c,...g))}function JW(s,c){return!!s.traceResolution&&c.trace!==void 0}function Yz(s,c,g){let d;if(c&&s){let h=s.contents.packageJsonContent;typeof h.name=="string"&&typeof h.version=="string"&&(d={name:h.name,subModuleName:c.path.slice(s.packageDirectory.length+cg.length),version:h.version,peerDependencies:KSs(s,g)})}return c&&{path:c.path,extension:c.ext,packageId:d,resolvedUsingTsExtension:c.resolvedUsingTsExtension}}function wet(s){return Yz(void 0,s,void 0)}function rtn(s){if(s)return pe.assert(s.packageId===void 0),{path:s.path,ext:s.extension,resolvedUsingTsExtension:s.resolvedUsingTsExtension}}function j9e(s){let c=[];return s&1&&c.push("TypeScript"),s&2&&c.push("JavaScript"),s&4&&c.push("Declaration"),s&8&&c.push("JSON"),c.join(", ")}function TSs(s){let c=[];return s&1&&c.push(...sie),s&2&&c.push(...SU),s&4&&c.push(...tde),s&8&&c.push(".json"),c}function IPt(s){if(s)return pe.assert(nde(s.extension)),{fileName:s.path,packageId:s.packageId}}function ntn(s,c,g,d,h,_,S,R,T){if(!S.resultFromCache&&!S.compilerOptions.preserveSymlinks&&c&&g&&!c.originalPath&&!Xr(s)){let{resolvedFileName:O,originalPath:V}=otn(c.path,S.host,S.traceEnabled);V&&(c={...c,path:O,originalPath:V})}return itn(c,g,d,h,_,S.resultFromCache,R,T)}function itn(s,c,g,d,h,_,S,R){return _?S?.isReadonly?{..._,failedLookupLocations:hPt(_.failedLookupLocations,g),affectingLocations:hPt(_.affectingLocations,d),resolutionDiagnostics:hPt(_.resolutionDiagnostics,h)}:(_.failedLookupLocations=Pie(_.failedLookupLocations,g),_.affectingLocations=Pie(_.affectingLocations,d),_.resolutionDiagnostics=Pie(_.resolutionDiagnostics,h),_):{resolvedModule:s&&{resolvedFileName:s.path,originalPath:s.originalPath===!0?void 0:s.originalPath,extension:s.extension,isExternalLibraryImport:c,packageId:s.packageId,resolvedUsingTsExtension:!!s.resolvedUsingTsExtension},failedLookupLocations:Fde(g),affectingLocations:Fde(d),resolutionDiagnostics:Fde(h),alternateResult:R}}function Fde(s){return s.length?s:void 0}function Pie(s,c){return c?.length?s?.length?(s.push(...c),s):c:s}function hPt(s,c){return s?.length?c.length?[...s,...c]:s.slice():Fde(c)}function mPt(s,c,g,d){if(!Da(s,c)){d.traceEnabled&&tu(d.host,Z.package_json_does_not_have_a_0_field,c);return}let h=s[c];if(typeof h!==g||h===null){d.traceEnabled&&tu(d.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,c,g,h===null?"null":typeof h);return}return h}function Tet(s,c,g,d){let h=mPt(s,c,"string",d);if(h===void 0)return;if(!h){d.traceEnabled&&tu(d.host,Z.package_json_had_a_falsy_0_field,c);return}let _=su(To(g,h));return d.traceEnabled&&tu(d.host,Z.package_json_has_0_field_1_that_references_2,c,h,_),_}function RSs(s,c,g){return Tet(s,"typings",c,g)||Tet(s,"types",c,g)}function NSs(s,c,g){return Tet(s,"tsconfig",c,g)}function DSs(s,c,g){return Tet(s,"main",c,g)}function kSs(s,c){let g=mPt(s,"typesVersions","object",c);if(g!==void 0)return c.traceEnabled&&tu(c.host,Z.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),g}function xSs(s,c){let g=kSs(s,c);if(g===void 0)return;if(c.traceEnabled)for(let S in g)Da(g,S)&&!At.tryParse(S)&&tu(c.host,Z.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,S);let d=z9e(g);if(!d){c.traceEnabled&&tu(c.host,Z.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,I);return}let{version:h,paths:_}=d;if(typeof _!="object"){c.traceEnabled&&tu(c.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${h}']`,"object",typeof _);return}return d}var CPt;function z9e(s){CPt||(CPt=new P(C));for(let c in s){if(!Da(s,c))continue;let g=At.tryParse(c);if(g!==void 0&&g.test(CPt))return{version:c,paths:s[c]}}}function Zde(s,c){if(s.typeRoots)return s.typeRoots;let g;if(s.configFilePath?g=Mo(s.configFilePath):c.getCurrentDirectory&&(g=c.getCurrentDirectory()),g!==void 0)return ZSs(g)}function GSs(s){let c;return mE(su(s),g=>{let d=To(g,FSs);(c??(c=[])).push(d)}),c}var FSs=To("node_modules","@types");function stn(s,c,g){let d=typeof g.useCaseSensitiveFileNames=="function"?g.useCaseSensitiveFileNames():g.useCaseSensitiveFileNames;return tI(s,c,!d)===0}function ZSs(s){let c=GSs(s),g=ttn(s);if(c?.length)return[...c,...g];if(g.length)return g}function otn(s,c,g){let d=ftn(s,c,g),h=stn(s,d,c);return{resolvedFileName:h?s:d,originalPath:h?void 0:s}}function atn(s,c,g){let d=di(s,"/node_modules/@types")||di(s,"/node_modules/@types/")?xPt(c,g):c;return To(s,d)}function _Pt(s,c,g,d,h,_,S){pe.assert(typeof s=="string","Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");let R=JW(g,d);h&&(g=h.commandLine.options);let T=c?Mo(c):void 0,O=T?_?.getFromDirectoryCache(s,S,T,h):void 0;if(!O&&T&&!Xr(s)&&(O=_?.getFromNonRelativeNameCache(s,S,T,h)),O)return R&&(tu(d,Z.Resolving_type_reference_directive_0_containing_file_1,s,c),h&&tu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName),tu(d,Z.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,s,T),Pe(O)),O;let V=Zde(g,d);R&&(c===void 0?V===void 0?tu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,s):tu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,s,V):V===void 0?tu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,s,c):tu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,s,c,V),h&&tu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName));let M=[],ee=[],re=yPt(g);S!==void 0&&(re|=30);let ge=F_(g);S===99&&3<=ge&&ge<=99&&(re|=32);let Ie=re&8?UW(g,S):[],_e=[],Ee={compilerOptions:g,host:d,traceEnabled:R,failedLookupLocations:M,affectingLocations:ee,packageJsonInfoCache:_,features:re,conditions:Ie,requestContainingDirectory:T,reportDiagnostic:Ye=>void _e.push(Ye),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Ne=Ke(),Te=!0;Ne||(Ne=et(),Te=!1);let Ze;if(Ne){let{fileName:Ye,packageId:Tt}=Ne,at=Ye,Qe;g.preserveSymlinks||({resolvedFileName:at,originalPath:Qe}=otn(Ye,d,R)),Ze={primary:Te,resolvedFileName:at,originalPath:Qe,packageId:Tt,isExternalLibraryImport:KW(Ye)}}return O={resolvedTypeReferenceDirective:Ze,failedLookupLocations:Fde(M),affectingLocations:Fde(ee),resolutionDiagnostics:Fde(_e)},T&&_&&!_.isReadonly&&(_.getOrCreateCacheForDirectory(T,h).set(s,S,O),Xr(s)||_.getOrCreateCacheForNonRelativeName(s,S,h).set(T,O)),R&&Pe(O),O;function Pe(Ye){var Tt;(Tt=Ye.resolvedTypeReferenceDirective)!=null&&Tt.resolvedFileName?Ye.resolvedTypeReferenceDirective.packageId?tu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,AN(Ye.resolvedTypeReferenceDirective.packageId),Ye.resolvedTypeReferenceDirective.primary):tu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,Ye.resolvedTypeReferenceDirective.primary):tu(d,Z.Type_reference_directive_0_was_not_resolved,s)}function Ke(){if(V&&V.length)return R&&tu(d,Z.Resolving_with_primary_search_path_0,V.join(", ")),J(V,Ye=>{let Tt=atn(Ye,s,Ee),at=C1(Ye,d);if(!at&&R&&tu(d,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,Ye),g.typeRoots){let Qe=Yie(4,Tt,!at,Ee);if(Qe){let Ct=KEe(Qe.path),mt=Ct?CQ(Ct,!1,Ee):void 0;return IPt(Yz(mt,Qe,Ee))}}return IPt(NPt(4,Tt,!at,Ee))});R&&tu(d,Z.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function et(){let Ye=c&&Mo(c);if(Ye!==void 0){let Tt;if(!g.typeRoots||!di(c,$de))if(R&&tu(d,Z.Looking_up_in_node_modules_folder_initial_location_0,Ye),Xr(s)){let{path:at}=ptn(Ye,s);Tt=ket(4,at,!1,Ee,!0)}else{let at=Stn(4,s,Ye,Ee,void 0,void 0);Tt=at&&at.value}else R&&tu(d,Z.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return IPt(Tt)}else R&&tu(d,Z.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function yPt(s){let c=0;switch(F_(s)){case 3:c=30;break;case 99:c=30;break;case 100:c=30;break}return s.resolvePackageJsonExports?c|=8:s.resolvePackageJsonExports===!1&&(c&=-9),s.resolvePackageJsonImports?c|=2:s.resolvePackageJsonImports===!1&&(c&=-3),c}function UW(s,c){let g=F_(s);if(c===void 0){if(g===100)c=99;else if(g===2)return[]}let d=c===99?["import"]:["require"];return s.noDtsResolution||d.push("types"),g!==100&&d.push("node"),Nn(d,s.customConditions)}function Ret(s,c,g,d,h){let _=Vde(h?.getPackageJsonInfoCache(),d,g),S=XW(c);if(S)try{let R=S.resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1}),T=xp(R).replace(/\/$/,"");return CQ(T,!1,_)}catch{return}return DN(d,c,R=>{if(dp(R)!=="node_modules"){let T=To(R,"node_modules"),O=To(T,s);return CQ(O,!1,_)}})}function q9e(s,c){if(s.types)return s.types;let g=[];if(c.directoryExists&&c.getDirectories){let d=Zde(s,c);if(d){for(let h of d)if(c.directoryExists(h))for(let _ of c.getDirectories(h)){let S=su(_),R=To(h,S,"package.json");if(!(c.fileExists(R)&&k3(R,c).typings===null)){let O=dp(S);O.charCodeAt(0)!==46&&g.push(O)}}}}return g}function $9e(s){return!!s?.contents}function bPt(s){return!!s&&!s.contents}function EPt(s){var c;if(s===null||typeof s!="object")return""+s;if(Ki(s))return`[${(c=s.map(d=>EPt(d)))==null?void 0:c.join(",")}]`;let g="{";for(let d in s)Da(s,d)&&(g+=`${d}: ${EPt(s[d])}`);return g+"}"}function Net(s,c){return c.map(g=>EPt(uz(s,g))).join("|")+`|${s.pathsBasePath}`}function ctn(s,c){let g=new Map,d=new Map,h=new Map;return s&&g.set(s,h),{getMapOfCacheRedirects:_,getOrCreateMapOfCacheRedirects:S,update:R,clear:O,getOwnMap:()=>h};function _(M){return M?T(M.commandLine.options,!1):h}function S(M){return M?T(M.commandLine.options,!0):h}function R(M){s!==M&&(s?h=T(M,!0):g.set(M,h),s=M)}function T(M,ee){let re=g.get(M);if(re)return re;let ge=V(M);if(re=d.get(ge),!re){if(s){let Ie=V(s);Ie===ge?re=h:d.has(Ie)||d.set(Ie,h)}ee&&(re??(re=new Map)),re&&d.set(ge,re)}return re&&g.set(M,re),re}function O(){let M=s&&c.get(s);h.clear(),g.clear(),c.clear(),d.clear(),s&&(M&&c.set(s,M),g.set(s,h))}function V(M){let ee=c.get(M);return ee||c.set(M,ee=Net(M,get)),ee}}function LSs(s,c){let g;return{getPackageJsonInfo:d,setPackageJsonInfo:h,clear:_,getInternalMap:S};function d(R){return g?.get(Pu(R,s,c))}function h(R,T){(g||(g=new Map)).set(Pu(R,s,c),T)}function _(){g=void 0}function S(){return g}}function ltn(s,c,g,d){let h=s.getOrCreateMapOfCacheRedirects(c),_=h.get(g);return _||(_=d(),h.set(g,_)),_}function VSs(s,c,g,d){let h=ctn(g,d);return{getFromDirectoryCache:T,getOrCreateCacheForDirectory:R,clear:_,update:S,directoryToModuleNameMap:h};function _(){h.clear()}function S(O){h.update(O)}function R(O,V){let M=Pu(O,s,c);return ltn(h,V,M,()=>Mie())}function T(O,V,M,ee){var re,ge;let Ie=Pu(M,s,c);return(ge=(re=h.getMapOfCacheRedirects(ee))==null?void 0:re.get(Ie))==null?void 0:ge.get(O,V)}}function Lde(s,c){return c===void 0?s:`${c}|${s}`}function Mie(){let s=new Map,c=new Map,g={get(h,_){return s.get(d(h,_))},set(h,_,S){return s.set(d(h,_),S),g},delete(h,_){return s.delete(d(h,_)),g},has(h,_){return s.has(d(h,_))},forEach(h){return s.forEach((_,S)=>{let[R,T]=c.get(S);return h(_,R,T)})},size(){return s.size}};return g;function d(h,_){let S=Lde(h,_);return c.set(S,[h,_]),S}}function WSs(s){return s.resolvedModule&&(s.resolvedModule.originalPath||s.resolvedModule.resolvedFileName)}function OSs(s){return s.resolvedTypeReferenceDirective&&(s.resolvedTypeReferenceDirective.originalPath||s.resolvedTypeReferenceDirective.resolvedFileName)}function PSs(s,c,g,d,h){let _=ctn(g,h);return{getFromNonRelativeNameCache:T,getOrCreateCacheForNonRelativeName:O,clear:S,update:R};function S(){_.clear()}function R(M){_.update(M)}function T(M,ee,re,ge){var Ie,_e;return pe.assert(!Xr(M)),(_e=(Ie=_.getMapOfCacheRedirects(ge))==null?void 0:Ie.get(Lde(M,ee)))==null?void 0:_e.get(re)}function O(M,ee,re){return pe.assert(!Xr(M)),ltn(_,re,Lde(M,ee),V)}function V(){let M=new Map;return{get:ee,set:re};function ee(Ie){return M.get(Pu(Ie,s,c))}function re(Ie,_e){let Ee=Pu(Ie,s,c);if(M.has(Ee))return;M.set(Ee,_e);let Ne=d(_e),Te=Ne&&ge(Ee,Ne),Ze=Ee;for(;Ze!==Te;){let Pe=Mo(Ze);if(Pe===Ze||M.has(Pe))break;M.set(Pe,_e),Ze=Pe}}function ge(Ie,_e){let Ee=Pu(Mo(_e),s,c),Ne=0,Te=Math.min(Ie.length,Ee.length);for(;Ned,clearAllExceptPackageJsonInfoCache:O,optionsToRedirectsKey:_};function T(){O(),d.clear()}function O(){S.clear(),R.clear()}function V(M){S.update(M),R.update(M)}}function Hie(s,c,g,d,h){let _=utn(s,c,g,d,WSs,h);return _.getOrCreateCacheForModuleName=(S,R,T)=>_.getOrCreateCacheForNonRelativeName(S,R,T),_}function eVe(s,c,g,d,h){return utn(s,c,g,d,OSs,h)}function Det(s){return{moduleResolution:2,traceResolution:s.traceResolution}}function tVe(s,c,g,d,h){return OU(s,c,Det(g),d,h)}function gtn(s,c,g,d){let h=Mo(c);return g.getFromDirectoryCache(s,d,h,void 0)}function OU(s,c,g,d,h,_,S){let R=JW(g,d);_&&(g=_.commandLine.options),R&&(tu(d,Z.Resolving_module_0_from_1,s,c),_&&tu(d,Z.Using_compiler_options_of_project_reference_redirect_0,_.sourceFile.fileName));let T=Mo(c),O=h?.getFromDirectoryCache(s,S,T,_);if(O)R&&tu(d,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,s,T);else{let V=g.moduleResolution;switch(V===void 0?(V=F_(g),R&&tu(d,Z.Module_resolution_kind_is_not_specified_using_0,e0[V])):R&&tu(d,Z.Explicitly_specified_module_resolution_kind_Colon_0,e0[V]),V){case 3:O=QSs(s,c,g,d,h,_,S);break;case 99:O=XSs(s,c,g,d,h,_,S);break;case 2:O=wPt(s,c,g,d,h,_,S?UW(g,S):void 0);break;case 1:O=FPt(s,c,g,d,h,_);break;case 100:O=BPt(s,c,g,d,h,_,S?UW(g,S):void 0);break;default:return pe.fail(`Unexpected moduleResolution: ${V}`)}h&&!h.isReadonly&&(h.getOrCreateCacheForDirectory(T,_).set(s,S,O),Xr(s)||h.getOrCreateCacheForNonRelativeName(s,S,_).set(T,O))}return R&&(O.resolvedModule?O.resolvedModule.packageId?tu(d,Z.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,s,O.resolvedModule.resolvedFileName,AN(O.resolvedModule.packageId)):tu(d,Z.Module_name_0_was_successfully_resolved_to_1,s,O.resolvedModule.resolvedFileName):tu(d,Z.Module_name_0_was_not_resolved,s)),O}function Atn(s,c,g,d,h){let _=MSs(s,c,d,h);return _?_.value:Xr(c)?HSs(s,c,g,d,h):YSs(s,c,d,h)}function MSs(s,c,g,d){let{baseUrl:h,paths:_}=d.compilerOptions;if(_&&!mp(c)){d.traceEnabled&&(h&&tu(d.host,Z.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,h,c),tu(d.host,Z.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,c));let S=SAe(d.compilerOptions,d.host),R=pz(_);return DPt(s,c,S,_,R,g,!1,d)}}function HSs(s,c,g,d,h){if(!h.compilerOptions.rootDirs)return;h.traceEnabled&&tu(h.host,Z.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,c);let _=su(To(g,c)),S,R;for(let T of h.compilerOptions.rootDirs){let O=su(T);di(O,cg)||(O+=cg);let V=Ac(_,O)&&(R===void 0||R.length(s[s.None=0]="None",s[s.Imports=2]="Imports",s[s.SelfName=4]="SelfName",s[s.Exports=8]="Exports",s[s.ExportsPatternTrailers=16]="ExportsPatternTrailers",s[s.AllFeatures=30]="AllFeatures",s[s.Node16Default=30]="Node16Default",s[s.NodeNextDefault=30]="NodeNextDefault",s[s.BundlerDefault=30]="BundlerDefault",s[s.EsmMode=32]="EsmMode",s))(vPt||{});function QSs(s,c,g,d,h,_,S){return dtn(30,s,c,g,d,h,_,S)}function XSs(s,c,g,d,h,_,S){return dtn(30,s,c,g,d,h,_,S)}function dtn(s,c,g,d,h,_,S,R,T){let O=Mo(g),V=R===99?32:0,M=d.noDtsResolution?3:7;return WW(d)&&(M|=8),UEe(s|V,c,O,d,h,_,M,!1,S,T)}function JSs(s,c,g){return UEe(0,s,c,{moduleResolution:2,allowJs:!0},g,void 0,2,!1,void 0,void 0)}function BPt(s,c,g,d,h,_,S){let R=Mo(c),T=g.noDtsResolution?3:7;return WW(g)&&(T|=8),UEe(yPt(g),s,R,g,d,h,T,!1,_,S)}function wPt(s,c,g,d,h,_,S,R){let T;return R?T=8:g.noDtsResolution?(T=3,WW(g)&&(T|=8)):T=WW(g)?15:7,UEe(S?30:0,s,Mo(c),g,d,h,T,!!R,_,S)}function TPt(s,c,g){return UEe(30,s,Mo(c),{moduleResolution:99},g,void 0,8,!0,void 0,void 0)}function UEe(s,c,g,d,h,_,S,R,T,O){var V,M,ee,re,ge;let Ie=JW(d,h),_e=[],Ee=[],Ne=F_(d);O??(O=UW(d,Ne===100||Ne===2?void 0:s&32?99:1));let Te=[],Ze={compilerOptions:d,host:h,traceEnabled:Ie,failedLookupLocations:_e,affectingLocations:Ee,packageJsonInfoCache:_,features:s,conditions:O??E,requestContainingDirectory:g,reportDiagnostic:Ye=>void Te.push(Ye),isConfigLookup:R,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};Ie&&EU(Ne)&&tu(h,Z.Resolving_in_0_mode_with_conditions_1,s&32?"ESM":"CJS",Ze.conditions.map(Ye=>`'${Ye}'`).join(", "));let Pe;if(Ne===2){let Ye=S&5,Tt=S&-6;Pe=Ye&&et(Ye,Ze)||Tt&&et(Tt,Ze)||void 0}else Pe=et(S,Ze);let Ke;if(Ze.resolvedPackageDirectory&&!R&&!Xr(c)){let Ye=Pe?.value&&S&5&&!ytn(5,Pe.value.resolved.extension);if((V=Pe?.value)!=null&&V.isExternalLibraryImport&&Ye&&s&8&&O?.includes("import")){jW(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);let Tt={...Ze,features:Ze.features&-9,reportDiagnostic:Dc},at=et(S&5,Tt);(M=at?.value)!=null&&M.isExternalLibraryImport&&(Ke=at.value.resolved.path)}else if((!Pe?.value||Ye)&&Ne===2){jW(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);let Tt={...Ze.compilerOptions,moduleResolution:100},at={...Ze,compilerOptions:Tt,features:30,conditions:UW(Tt),reportDiagnostic:Dc},Qe=et(S&5,at);(ee=Qe?.value)!=null&&ee.isExternalLibraryImport&&(Ke=Qe.value.resolved.path)}}return ntn(c,(re=Pe?.value)==null?void 0:re.resolved,(ge=Pe?.value)==null?void 0:ge.isExternalLibraryImport,_e,Ee,Te,Ze,_,Ke);function et(Ye,Tt){let Qe=Atn(Ye,c,g,(Ct,mt,yt,Rt)=>ket(Ct,mt,yt,Rt,!0),Tt);if(Qe)return y2({resolved:Qe,isExternalLibraryImport:KW(Qe.path)});if(Xr(c)){let{path:Ct,parts:mt}=ptn(g,c),yt=ket(Ye,Ct,!1,Tt,!0);return yt&&y2({resolved:yt,isExternalLibraryImport:k(mt,"node_modules")})}else{if(s&2&&Ac(c,"#")){let mt=$Ss(Ye,c,g,Tt,_,T);if(mt)return mt.value&&{value:{resolved:mt.value,isExternalLibraryImport:!1}}}if(s&4){let mt=qSs(Ye,c,g,Tt,_,T);if(mt)return mt.value&&{value:{resolved:mt.value,isExternalLibraryImport:!1}}}if(c.includes(":")){Ie&&tu(h,Z.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,c,j9e(Ye));return}Ie&&tu(h,Z.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,c,j9e(Ye));let Ct=Stn(Ye,c,g,Tt,_,T);return Ye&4&&(Ct??(Ct=Rtn(c,Tt))),Ct&&{value:Ct.value&&{resolved:Ct.value,isExternalLibraryImport:!0}}}}}function ptn(s,c){let g=To(s,c),d=kp(g),h=li(d);return{path:h==="."||h===".."?Cp(su(g)):su(g),parts:d}}function ftn(s,c,g){if(!c.realpath)return s;let d=su(c.realpath(s));return g&&tu(c,Z.Resolving_real_path_for_0_result_1,s,d),d}function ket(s,c,g,d,h){if(d.traceEnabled&&tu(d.host,Z.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,c,j9e(s)),!Kp(c)){if(!g){let S=Mo(c);C1(S,d.host)||(d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,S),g=!0)}let _=Yie(s,c,g,d);if(_){let S=h?KEe(_.path):void 0,R=S?CQ(S,!1,d):void 0;return Yz(R,_,d)}}if(g||C1(c,d.host)||(d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,c),g=!0),!(d.features&32))return NPt(s,c,g,d,h)}var Yx="/node_modules/";function KW(s){return s.includes(Yx)}function KEe(s,c){let g=su(s),d=g.lastIndexOf(Yx);if(d===-1)return;let h=d+Yx.length,_=Itn(g,h,c);return g.charCodeAt(h)===64&&(_=Itn(g,_,c)),g.slice(0,_)}function Itn(s,c,g){let d=s.indexOf(cg,c+1);return d===-1?g?s.length:c:d}function RPt(s,c,g,d){return wet(Yie(s,c,g,d))}function Yie(s,c,g,d){let h=htn(s,c,g,d);if(h)return h;if(!(d.features&32)){let _=mtn(c,s,"",g,d);if(_)return _}}function htn(s,c,g,d){if(!dp(c).includes("."))return;let _=c0(c);_===c&&(_=c.substring(0,c.lastIndexOf(".")));let S=c.substring(_.length);return d.traceEnabled&&tu(d.host,Z.File_name_0_has_a_1_extension_stripping_it,c,S),mtn(_,s,S,g,d)}function xet(s,c,g,d,h){if(s&1&&Iu(c,sie)||s&4&&Iu(c,tde)){let _=Get(c,d,h),S=rz(c);return _!==void 0?{path:c,ext:S,resolvedUsingTsExtension:g?!di(g,S):void 0}:void 0}return h.isConfigLookup&&s===8&&lA(c,".json")?Get(c,d,h)!==void 0?{path:c,ext:".json",resolvedUsingTsExtension:void 0}:void 0:htn(s,c,d,h)}function mtn(s,c,g,d,h){if(!d){let S=Mo(s);S&&(d=!C1(S,h.host))}switch(g){case".mjs":case".mts":case".d.mts":return c&1&&_(".mts",g===".mts"||g===".d.mts")||c&4&&_(".d.mts",g===".mts"||g===".d.mts")||c&2&&_(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return c&1&&_(".cts",g===".cts"||g===".d.cts")||c&4&&_(".d.cts",g===".cts"||g===".d.cts")||c&2&&_(".cjs")||void 0;case".json":return c&4&&_(".d.json.ts")||c&8&&_(".json")||void 0;case".tsx":case".jsx":return c&1&&(_(".tsx",g===".tsx")||_(".ts",g===".tsx"))||c&4&&_(".d.ts",g===".tsx")||c&2&&(_(".jsx")||_(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return c&1&&(_(".ts",g===".ts"||g===".d.ts")||_(".tsx",g===".ts"||g===".d.ts"))||c&4&&_(".d.ts",g===".ts"||g===".d.ts")||c&2&&(_(".js")||_(".jsx"))||h.isConfigLookup&&_(".json")||void 0;default:return c&4&&!MC(s+g)&&_(`.d${g}.ts`)||void 0}function _(S,R){let T=Get(s+S,d,h);return T===void 0?void 0:{path:T,ext:S,resolvedUsingTsExtension:!h.candidateIsFromPackageJsonField&&R}}}function Get(s,c,g){var d;if(!((d=g.compilerOptions.moduleSuffixes)!=null&&d.length))return Ctn(s,c,g);let h=zT(s)??"",_=h?aie(s,h):s;return F(g.compilerOptions.moduleSuffixes,S=>Ctn(_+S+h,c,g))}function Ctn(s,c,g){var d;if(!c){if(g.host.fileExists(s))return g.traceEnabled&&tu(g.host,Z.File_0_exists_use_it_as_a_name_resolution_result,s),s;g.traceEnabled&&tu(g.host,Z.File_0_does_not_exist,s)}(d=g.failedLookupLocations)==null||d.push(s)}function NPt(s,c,g,d,h=!0){let _=h?CQ(c,g,d):void 0;return Yz(_,Zet(s,c,g,d,_),d)}function Fet(s,c,g,d,h){if(!h&&s.contents.resolvedEntrypoints!==void 0)return s.contents.resolvedEntrypoints;let _,S=5|(h?2:0),R=yPt(c),T=Vde(d?.getPackageJsonInfoCache(),g,c);T.conditions=UW(c),T.requestContainingDirectory=s.packageDirectory;let O=Zet(S,s.packageDirectory,!1,T,s);if(_=Ft(_,O?.path),R&8&&s.contents.packageJsonContent.exports){let V=no([UW(c,99),UW(c,1)],Sc);for(let M of V){let ee={...T,failedLookupLocations:[],conditions:M,host:g},re=USs(s,s.contents.packageJsonContent.exports,ee,S);if(re)for(let ge of re)_=ps(_,ge.path)}}return s.contents.resolvedEntrypoints=_||!1}function USs(s,c,g,d){let h;if(Ki(c))for(let S of c)_(S);else if(typeof c=="object"&&c!==null&&rVe(c))for(let S in c)_(c[S]);else _(c);return h;function _(S){var R,T;if(typeof S=="string"&&Ac(S,"./"))if(S.includes("*")&&g.host.readDirectory){if(S.indexOf("*")!==S.lastIndexOf("*"))return!1;g.host.readDirectory(s.packageDirectory,TSs(d),void 0,[a_(V3(S,"**/*"),".*")]).forEach(O=>{h=ps(h,{path:O,ext:fE(O),resolvedUsingTsExtension:void 0})})}else{let O=kp(S).slice(2);if(O.includes("..")||O.includes(".")||O.includes("node_modules"))return!1;let V=To(s.packageDirectory,S),M=Xc(V,(T=(R=g.host).getCurrentDirectory)==null?void 0:T.call(R)),ee=xet(d,M,S,!1,g);if(ee)return h=ps(h,ee,(re,ge)=>re.path===ge.path),!0}else if(Array.isArray(S)){for(let O of S)if(_(O))return!0}else if(typeof S=="object"&&S!==null)return F(yg(S),O=>{if(O==="default"||k(g.conditions,O)||zEe(g.conditions,O))return _(S[O]),!0})}}function Vde(s,c,g){return{host:c,compilerOptions:g,traceEnabled:JW(g,c),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:s,features:0,conditions:E,requestContainingDirectory:void 0,reportDiagnostic:Dc,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function Wde(s,c){return DN(c.host,s,g=>CQ(g,!1,c))}function _tn(s,c){return s.contents.versionPaths===void 0&&(s.contents.versionPaths=xSs(s.contents.packageJsonContent,c)||!1),s.contents.versionPaths||void 0}function KSs(s,c){return s.contents.peerDependencies===void 0&&(s.contents.peerDependencies=jSs(s,c)||!1),s.contents.peerDependencies||void 0}function jSs(s,c){let g=mPt(s.contents.packageJsonContent,"peerDependencies","object",c);if(g===void 0)return;c.traceEnabled&&tu(c.host,Z.package_json_has_a_peerDependencies_field);let d=ftn(s.packageDirectory,c.host,c.traceEnabled),h=d.substring(0,d.lastIndexOf("node_modules")+12)+cg,_="";for(let S in g)if(Da(g,S)){let R=CQ(h+S,!1,c);if(R){let T=R.contents.packageJsonContent.version;_+=`+${S}@${T}`,c.traceEnabled&&tu(c.host,Z.Found_peerDependency_0_with_1_version,S,T)}else c.traceEnabled&&tu(c.host,Z.Failed_to_find_peerDependency_0,S)}return _}function CQ(s,c,g){var d,h,_,S,R,T;let{host:O,traceEnabled:V}=g,M=To(s,"package.json");if(c){(d=g.failedLookupLocations)==null||d.push(M);return}let ee=(h=g.packageJsonInfoCache)==null?void 0:h.getPackageJsonInfo(M);if(ee!==void 0){if($9e(ee))return V&&tu(O,Z.File_0_exists_according_to_earlier_cached_lookups,M),(_=g.affectingLocations)==null||_.push(M),ee.packageDirectory===s?ee:{packageDirectory:s,contents:ee.contents};ee.directoryExists&&V&&tu(O,Z.File_0_does_not_exist_according_to_earlier_cached_lookups,M),(S=g.failedLookupLocations)==null||S.push(M);return}let re=C1(s,O);if(re&&O.fileExists(M)){let ge=k3(M,O);V&&tu(O,Z.Found_package_json_at_0,M);let Ie={packageDirectory:s,contents:{packageJsonContent:ge,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,Ie),(R=g.affectingLocations)==null||R.push(M),Ie}else re&&V&&tu(O,Z.File_0_does_not_exist,M),g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,{packageDirectory:s,directoryExists:re}),(T=g.failedLookupLocations)==null||T.push(M)}function Zet(s,c,g,d,h){let _=h&&_tn(h,d),S;h&&stn(h?.packageDirectory,c,d.host)&&(d.isConfigLookup?S=NSs(h.contents.packageJsonContent,h.packageDirectory,d):S=s&4&&RSs(h.contents.packageJsonContent,h.packageDirectory,d)||s&7&&DSs(h.contents.packageJsonContent,h.packageDirectory,d)||void 0);let R=(ee,re,ge,Ie)=>{let _e=xet(ee,re,void 0,ge,Ie);if(_e)return wet(_e);let Ee=ee===4?5:ee,Ne=Ie.features,Te=Ie.candidateIsFromPackageJsonField;Ie.candidateIsFromPackageJsonField=!0,h?.contents.packageJsonContent.type!=="module"&&(Ie.features&=-33);let Ze=ket(Ee,re,ge,Ie,!1);return Ie.features=Ne,Ie.candidateIsFromPackageJsonField=Te,Ze},T=S?!C1(Mo(S),d.host):void 0,O=g||!C1(c,d.host),V=To(c,d.isConfigLookup?"tsconfig":"index");if(_&&(!S||zh(c,S))){let ee=_p(c,S||V,!1);d.traceEnabled&&tu(d.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,_.version,C,ee);let re=pz(_.paths),ge=DPt(s,ee,c,_.paths,re,R,T||O,d);if(ge)return rtn(ge.value)}let M=S&&rtn(R(s,S,T,d));if(M)return M;if(!(d.features&32))return Yie(s,V,O,d)}function ytn(s,c){return s&2&&(c===".js"||c===".jsx"||c===".mjs"||c===".cjs")||s&1&&(c===".ts"||c===".tsx"||c===".mts"||c===".cts")||s&4&&(c===".d.ts"||c===".d.mts"||c===".d.cts")||s&8&&c===".json"||!1}function jEe(s){let c=s.indexOf(cg);return s[0]==="@"&&(c=s.indexOf(cg,c+1)),c===-1?{packageName:s,rest:""}:{packageName:s.slice(0,c),rest:s.slice(c+1)}}function rVe(s){return ue(yg(s),c=>Ac(c,"."))}function zSs(s){return!zt(yg(s),c=>Ac(c,"."))}function qSs(s,c,g,d,h,_){var S,R;let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),O=Wde(T,d);if(!O||!O.contents.packageJsonContent.exports||typeof O.contents.packageJsonContent.name!="string")return;let V=kp(c),M=kp(O.contents.packageJsonContent.name);if(!ue(M,(_e,Ee)=>V[Ee]===_e))return;let ee=V.slice(M.length),re=B(ee)?`.${cg}${ee.join(cg)}`:".";if(FF(d.compilerOptions)&&!KW(g))return Let(O,s,re,d,h,_);let ge=s&5,Ie=s&-6;return Let(O,ge,re,d,h,_)||Let(O,Ie,re,d,h,_)}function Let(s,c,g,d,h,_){if(s.contents.packageJsonContent.exports){if(g==="."){let S;if(typeof s.contents.packageJsonContent.exports=="string"||Array.isArray(s.contents.packageJsonContent.exports)||typeof s.contents.packageJsonContent.exports=="object"&&zSs(s.contents.packageJsonContent.exports)?S=s.contents.packageJsonContent.exports:Da(s.contents.packageJsonContent.exports,".")&&(S=s.contents.packageJsonContent.exports["."]),S)return Etn(c,d,h,_,g,s,!1)(S,"",!1,".")}else if(rVe(s.contents.packageJsonContent.exports)){if(typeof s.contents.packageJsonContent.exports!="object")return d.traceEnabled&&tu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),y2(void 0);let S=btn(c,d,h,_,g,s.contents.packageJsonContent.exports,s,!1);if(S)return S}return d.traceEnabled&&tu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),y2(void 0)}}function $Ss(s,c,g,d,h,_){var S,R;if(c==="#"||Ac(c,"#/"))return d.traceEnabled&&tu(d.host,Z.Invalid_import_specifier_0_has_no_possible_resolutions,c),y2(void 0);let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),O=Wde(T,d);if(!O)return d.traceEnabled&&tu(d.host,Z.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,T),y2(void 0);if(!O.contents.packageJsonContent.imports)return d.traceEnabled&&tu(d.host,Z.package_json_scope_0_has_no_imports_defined,O.packageDirectory),y2(void 0);let V=btn(s,d,h,_,c,O.contents.packageJsonContent.imports,O,!0);return V||(d.traceEnabled&&tu(d.host,Z.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,c,O.packageDirectory),y2(void 0))}function Vet(s,c){let g=s.indexOf("*"),d=c.indexOf("*"),h=g===-1?s.length:g+1,_=d===-1?c.length:d+1;return h>_?-1:_>h||g===-1?1:d===-1||s.length>c.length?-1:c.length>s.length?1:0}function btn(s,c,g,d,h,_,S,R){let T=Etn(s,c,g,d,h,S,R);if(!di(h,cg)&&!h.includes("*")&&Da(_,h)){let M=_[h];return T(M,"",!1,h)}let O=yo(Le(yg(_),M=>evs(M)||di(M,"/")),Vet);for(let M of O)if(c.features&16&&V(M,h)){let ee=_[M],re=M.indexOf("*"),ge=h.substring(M.substring(0,re).length,h.length-(M.length-1-re));return T(ee,ge,!0,M)}else if(di(M,"*")&&Ac(h,M.substring(0,M.length-1))){let ee=_[M],re=h.substring(M.length-1);return T(ee,re,!0,M)}else if(Ac(h,M)){let ee=_[M],re=h.substring(M.length);return T(ee,re,!1,M)}function V(M,ee){if(di(M,"*"))return!1;let re=M.indexOf("*");return re===-1?!1:Ac(ee,M.substring(0,re))&&di(ee,M.substring(re+1))}}function evs(s){let c=s.indexOf("*");return c!==-1&&c===s.lastIndexOf("*")}function Etn(s,c,g,d,h,_,S){return R;function R(T,O,V,M){var ee,re;if(typeof T=="string"){if(!V&&O.length>0&&!di(T,"/"))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),y2(void 0);if(!Ac(T,"./")){if(S&&!Ac(T,"../")&&!Ac(T,"/")&&!Up(T)){let et=V?T.replace(/\*/g,O):T+O;jW(c,Z.Using_0_subpath_1_with_target_2,"imports",M,et),jW(c,Z.Resolving_module_0_from_1,et,_.packageDirectory+"/");let Ye=UEe(c.features,et,_.packageDirectory+"/",c.compilerOptions,c.host,g,s,!1,d,c.conditions);return(ee=c.failedLookupLocations)==null||ee.push(...Ye.failedLookupLocations??E),(re=c.affectingLocations)==null||re.push(...Ye.affectingLocations??E),y2(Ye.resolvedModule?{path:Ye.resolvedModule.resolvedFileName,extension:Ye.resolvedModule.extension,packageId:Ye.resolvedModule.packageId,originalPath:Ye.resolvedModule.originalPath,resolvedUsingTsExtension:Ye.resolvedModule.resolvedUsingTsExtension}:void 0)}return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),y2(void 0)}let Ne=(mp(T)?kp(T).slice(1):kp(T)).slice(1);if(Ne.includes("..")||Ne.includes(".")||Ne.includes("node_modules"))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),y2(void 0);let Te=To(_.packageDirectory,T),Ze=kp(O);if(Ze.includes("..")||Ze.includes(".")||Ze.includes("node_modules"))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),y2(void 0);c.traceEnabled&&tu(c.host,Z.Using_0_subpath_1_with_target_2,S?"imports":"exports",M,V?T.replace(/\*/g,O):T+O);let Pe=ge(V?Te.replace(/\*/g,O):Te+O),Ke=_e(Pe,O,To(_.packageDirectory,"package.json"),S);return Ke||y2(Yz(_,xet(s,Pe,T,!1,c),c))}else if(typeof T=="object"&&T!==null)if(Array.isArray(T)){if(!B(T))return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),y2(void 0);for(let Ee of T){let Ne=R(Ee,O,V,M);if(Ne)return Ne}}else{jW(c,Z.Entering_conditional_exports);for(let Ee of yg(T))if(Ee==="default"||c.conditions.includes(Ee)||zEe(c.conditions,Ee)){jW(c,Z.Matched_0_condition_1,S?"imports":"exports",Ee);let Ne=T[Ee],Te=R(Ne,O,V,M);if(Te)return jW(c,Z.Resolved_under_condition_0,Ee),jW(c,Z.Exiting_conditional_exports),Te;jW(c,Z.Failed_to_resolve_under_condition_0,Ee)}else jW(c,Z.Saw_non_matching_condition_0,Ee);jW(c,Z.Exiting_conditional_exports);return}else if(T===null)return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_explicitly_maps_specifier_1_to_null,_.packageDirectory,h),y2(void 0);return c.traceEnabled&&tu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),y2(void 0);function ge(Ee){var Ne,Te;return Ee===void 0?Ee:Xc(Ee,(Te=(Ne=c.host).getCurrentDirectory)==null?void 0:Te.call(Ne))}function Ie(Ee,Ne){return Cp(To(Ee,Ne))}function _e(Ee,Ne,Te,Ze){var Pe,Ke,et,Ye;if(!c.isConfigLookup&&(c.compilerOptions.declarationDir||c.compilerOptions.outDir)&&!Ee.includes("/node_modules/")&&(!c.compilerOptions.configFile||zh(_.packageDirectory,ge(c.compilerOptions.configFile.fileName),!Wet(c)))){let at=$D({useCaseSensitiveFileNames:()=>Wet(c)}),Qe=[];if(c.compilerOptions.rootDir||c.compilerOptions.composite&&c.compilerOptions.configFilePath){let Ct=ge(zde(c.compilerOptions,()=>[],((Ke=(Pe=c.host).getCurrentDirectory)==null?void 0:Ke.call(Pe))||"",at));Qe.push(Ct)}else if(c.requestContainingDirectory){let Ct=ge(To(c.requestContainingDirectory,"index.ts")),mt=ge(zde(c.compilerOptions,()=>[Ct,ge(Te)],((Ye=(et=c.host).getCurrentDirectory)==null?void 0:Ye.call(et))||"",at));Qe.push(mt);let yt=Cp(mt);for(;yt&&yt.length>1;){let Rt=kp(yt);Rt.pop();let Lt=Fm(Rt);Qe.unshift(Lt),yt=Cp(Lt)}}Qe.length>1&&c.reportDiagnostic(kf(Ze?Z.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Z.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,Ne===""?".":Ne,Te));for(let Ct of Qe){let mt=Tt(Ct);for(let yt of mt)if(zh(yt,Ee,!Wet(c))){let Rt=Ee.slice(yt.length+1),Lt=To(Ct,Rt),je=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(let Wt of je)if(lA(Lt,Wt)){let _r=gbe(Lt);for(let Gt of _r){if(!ytn(s,Gt))continue;let it=eS(Lt,Gt,Wt,!Wet(c));if(c.host.fileExists(it))return y2(Yz(_,xet(s,it,void 0,!1,c),c))}}}}}return;function Tt(at){var Qe,Ct;let mt=c.compilerOptions.configFile?((Ct=(Qe=c.host).getCurrentDirectory)==null?void 0:Ct.call(Qe))||"":at,yt=[];return c.compilerOptions.declarationDir&&yt.push(ge(Ie(mt,c.compilerOptions.declarationDir))),c.compilerOptions.outDir&&c.compilerOptions.outDir!==c.compilerOptions.declarationDir&&yt.push(ge(Ie(mt,c.compilerOptions.outDir))),yt}}}}function zEe(s,c){if(!s.includes("types")||!Ac(c,"types@"))return!1;let g=At.tryParse(c.substring(6));return g?g.test(C):!1}function Stn(s,c,g,d,h,_){return vtn(s,c,g,d,!1,h,_)}function tvs(s,c,g){return vtn(4,s,c,g,!0,void 0,void 0)}function vtn(s,c,g,d,h,_,S){let R=d.features===0?void 0:d.features&32||d.conditions.includes("import")?99:1,T=s&5,O=s&-6;if(T){jW(d,Z.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,j9e(T));let M=V(T);if(M)return M}if(O&&!h)return jW(d,Z.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,j9e(O)),V(O);function V(M){let ee=xp(g);if(XW(ee)){let re=GPt(_,c,R,ee,S,d);return re||y2(rvs(M,c,ee,d,h,_,S))}return DN(d.host,xp(g),re=>{if(dp(re)!=="node_modules"){let ge=GPt(_,c,R,re,S,d);return ge||y2(Btn(M,c,re,d,h,_,S))}})}}function DN(s,c,g){var d;let h=(d=s?.getGlobalTypingsCacheLocation)==null?void 0:d.call(s);return mE(c,_=>{let S=g(_);if(S!==void 0)return S;if(_===h)return!1})||void 0}function Btn(s,c,g,d,h,_,S){let R=To(g,"node_modules"),T=C1(R,d.host);if(!T&&d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,R),!h){let O=wtn(s,c,R,T,d,_,S);if(O)return O}if(s&4){let O=To(R,"@types"),V=T;return T&&!C1(O,d.host)&&(d.traceEnabled&&tu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,O),V=!1),wtn(4,xPt(c,d),O,V,d,_,S)}}function rvs(s,c,g,d,h,_,S){let R=xp(g);if(!h){let T=Ntn(s,c,R,d,_,S);if(T)return T}if(s&4)return Ntn(4,`@types/${xPt(c,d)}`,R,d,_,S)}function wtn(s,c,g,d,h,_,S){let R=su(To(g,c)),{packageName:T,rest:O}=jEe(c),V=To(g,T);return Ttn(s,d,h,_,S,R,O,V)}function nvs(s,c,g,d,h,_){let S=su(To(c,g));return Ttn(s,!0,d,h,_,S,g,c)}function Ttn(s,c,g,d,h,_,S,R){var T,O;let V,M=CQ(_,!c,g);if(S!==""&&M&&(!(g.features&8)||!Da(((T=V=CQ(R,!c,g))==null?void 0:T.contents.packageJsonContent)??E,"exports"))){let ge=Yie(s,_,!c,g);if(ge)return wet(ge);let Ie=Zet(s,_,!c,g,M);return Yz(M,Ie,g)}let ee=(ge,Ie,_e,Ee)=>{let Ne=(S||!(Ee.features&32))&&Yie(ge,Ie,_e,Ee)||Zet(ge,Ie,_e,Ee,M);return!Ne&&!S&&M&&(M.contents.packageJsonContent.exports===void 0||M.contents.packageJsonContent.exports===null)&&Ee.features&32&&(Ne=Yie(ge,To(Ie,"index.js"),_e,Ee)),Yz(M,Ne,Ee)};if(S!==""&&(M=V??CQ(R,!c,g)),M&&(g.resolvedPackageDirectory=!0),M&&M.contents.packageJsonContent.exports&&g.features&8)return(O=Let(M,s,To(".",S),g,d,h))==null?void 0:O.value;let re=S!==""&&M?_tn(M,g):void 0;if(re){g.traceEnabled&&tu(g.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,re.version,C,S);let ge=c&&C1(R,g.host),Ie=pz(re.paths),_e=DPt(s,S,R,re.paths,Ie,ee,!ge,g);if(_e)return _e.value}return ee(s,_,!c,g)}function DPt(s,c,g,d,h,_,S,R){let T=jbe(h,c);if(T){let O=Xs(T)?void 0:_w(T,c),V=Xs(T)?T:e2(T);return R.traceEnabled&&tu(R.host,Z.Module_name_0_matched_pattern_1,c,V),{value:F(d[V],ee=>{let re=O?V3(ee,O):ee,ge=su(To(g,re));R.traceEnabled&&tu(R.host,Z.Trying_substitution_0_candidate_module_location_Colon_1,ee,re);let Ie=zT(ee);if(Ie!==void 0){let _e=Get(ge,S,R);if(_e!==void 0)return wet({path:_e,ext:Ie,resolvedUsingTsExtension:void 0})}return _(s,ge,S||!C1(Mo(ge),R.host),R)})}}}var kPt="__";function xPt(s,c){let g=Qie(s);return c.traceEnabled&&g!==s&&tu(c.host,Z.Scoped_package_detected_looking_in_0,g),g}function nVe(s){return`@types/${Qie(s)}`}function Qie(s){if(Ac(s,"@")){let c=s.replace(cg,kPt);if(c!==s)return c.slice(1)}return s}function Ode(s){let c=Gm(s,"@types/");return c!==s?qEe(c):s}function qEe(s){return s.includes(kPt)?"@"+s.replace(kPt,cg):s}function GPt(s,c,g,d,h,_){let S=s&&s.getFromNonRelativeNameCache(c,g,d,h);if(S)return _.traceEnabled&&tu(_.host,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,c,d),_.resultFromCache=S,{value:S.resolvedModule&&{path:S.resolvedModule.resolvedFileName,originalPath:S.resolvedModule.originalPath||!0,extension:S.resolvedModule.extension,packageId:S.resolvedModule.packageId,resolvedUsingTsExtension:S.resolvedModule.resolvedUsingTsExtension}}}function FPt(s,c,g,d,h,_){let S=JW(g,d),R=[],T=[],O=Mo(c),V=[],M={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:h,features:0,conditions:[],requestContainingDirectory:O,reportDiagnostic:ge=>void V.push(ge),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},ee=re(5)||re(2|(g.resolveJsonModule?8:0));return ntn(s,ee&&ee.value,ee?.value&&KW(ee.value.path),R,T,V,M,h);function re(ge){let Ie=Atn(ge,s,O,RPt,M);if(Ie)return{value:Ie};if(Xr(s)){let _e=su(To(O,s));return y2(RPt(ge,_e,!1,M))}else{let _e=DN(M.host,O,Ee=>{let Ne=GPt(h,s,void 0,Ee,_,M);if(Ne)return Ne;let Te=su(To(Ee,s));return y2(RPt(ge,Te,!1,M))});if(_e)return _e;if(ge&5){let Ee=tvs(s,O,M);return ge&4&&(Ee??(Ee=Rtn(s,M))),Ee}}}}function Rtn(s,c){if(c.compilerOptions.typeRoots)for(let g of c.compilerOptions.typeRoots){let d=atn(g,s,c),h=C1(g,c.host);!h&&c.traceEnabled&&tu(c.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,g);let _=Yie(4,d,!h,c);if(_){let R=KEe(_.path),T=R?CQ(R,!1,c):void 0;return y2(Yz(T,_,c))}let S=NPt(4,d,!h,c);if(S)return y2(S)}}function Xie(s,c){return ELe(s)||!!c&&MC(c)}function ZPt(s,c,g,d,h,_){let S=JW(g,d);S&&tu(d,Z.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,c,s,h);let R=[],T=[],O=[],V={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:_,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:ee=>void O.push(ee),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},M=Btn(4,s,h,V,!1,void 0,void 0);return itn(M,!0,R,T,O,V.resultFromCache,void 0)}function y2(s){return s!==void 0?{value:s}:void 0}function jW(s,c,...g){s.traceEnabled&&tu(s.host,c,...g)}function Wet(s){return s.host.useCaseSensitiveFileNames?typeof s.host.useCaseSensitiveFileNames=="boolean"?s.host.useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames():!0}function ivs(s,c){try{let g=XW(c).resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1});return xp(g).replace(/\/$/,"")}catch{}}function Ntn(s,c,g,d,h,_){let{packageName:S,rest:R}=jEe(c),T=ivs(S,g);return T?nvs(s,T,R,d,h,_):void 0}var LPt=(s=>(s[s.NonInstantiated=0]="NonInstantiated",s[s.Instantiated=1]="Instantiated",s[s.ConstEnumOnly=2]="ConstEnumOnly",s))(LPt||{});function XF(s,c){return s.body&&!s.body.parent&&(UA(s.body,s),t9(s.body,!1)),s.body?VPt(s.body,c):1}function VPt(s,c=new Map){let g=id(s);if(c.has(g))return c.get(g)||0;c.set(g,void 0);let d=svs(s,c);return c.set(g,d),d}function svs(s,c){switch(s.kind){case 265:case 266:return 0;case 267:if(OA(s))return 2;break;case 273:case 272:if(!Ga(s,32))return 0;break;case 279:let g=s;if(!g.moduleSpecifier&&g.exportClause&&g.exportClause.kind===280){let d=0;for(let h of g.exportClause.elements){let _=ovs(h,c);if(_>d&&(d=_),d===1)return d}return d}break;case 269:{let d=0;return Lu(s,h=>{let _=VPt(h,c);switch(_){case 0:return;case 2:d=2;return;case 1:return d=1,!0;default:pe.assertNever(_)}}),d}case 268:return XF(s,c);case 80:if(s.flags&4096)return 0}return 1}function ovs(s,c){let g=s.propertyName||s.name;if(g.kind!==80)return 1;let d=s.parent;for(;d;){if(eg(d)||BN(d)||cl(d)){let h=d.statements,_;for(let S of h)if(u3(S,g)){S.parent||(UA(S,d),t9(S,!1));let R=VPt(S,c);if((_===void 0||R>_)&&(_=R),_===1)return _;S.kind===272&&(_=1)}if(_!==void 0)return _}d=d.parent}return 1}var WPt=(s=>(s[s.None=0]="None",s[s.IsContainer=1]="IsContainer",s[s.IsBlockScopedContainer=2]="IsBlockScopedContainer",s[s.IsControlFlowContainer=4]="IsControlFlowContainer",s[s.IsFunctionLike=8]="IsFunctionLike",s[s.IsFunctionExpression=16]="IsFunctionExpression",s[s.HasLocals=32]="HasLocals",s[s.IsInterface=64]="IsInterface",s[s.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",s))(WPt||{});function ck(s,c,g){return pe.attachFlowNodeDebugInfo({flags:s,id:0,node:c,antecedent:g})}var avs=cvs();function OPt(s,c){Mc("beforeBind"),avs(s,c),Mc("afterBind"),Pf("Bind","beforeBind","afterBind")}function cvs(){var s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe,Ke,et,Ye,Tt=!1,at=0,Qe,Ct,mt=ck(1,void 0,void 0),yt=ck(1,void 0,void 0),Rt=xe();return je;function Lt(Fe,gr,...Ln){return SE(ms(Fe)||s,Fe,gr,...Ln)}function je(Fe,gr){var Ln,bs;s=Fe,c=gr,g=Hg(c),Ye=Wt(s,gr),Ct=new Set,at=0,Qe=WC.getSymbolConstructor(),pe.attachFlowNodeDebugInfo(mt),pe.attachFlowNodeDebugInfo(yt),s.locals||((Ln=ki)==null||Ln.push(ki.Phase.Bind,"bindSourceFile",{path:s.path},!0),Ss(s),(bs=ki)==null||bs.pop(),s.symbolCount=at,s.classifiableNames=Ct,qp(),Jg()),s=void 0,c=void 0,g=void 0,d=void 0,h=void 0,_=void 0,S=void 0,R=void 0,T=void 0,V=void 0,O=!1,M=void 0,ee=void 0,re=void 0,ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Te=void 0,Ze=!1,Pe=!1,Ke=!1,Tt=!1,et=0}function Wt(Fe,gr){return u_(gr,"alwaysStrict")&&!Fe.isDeclarationFile?!0:!!Fe.externalModuleIndicator}function _r(Fe,gr){return at++,new Qe(Fe,gr)}function Gt(Fe,gr,Ln){Fe.flags|=Ln,gr.symbol=Fe,Fe.declarations=ps(Fe.declarations,gr),Ln&1955&&!Fe.exports&&(Fe.exports=$u()),Ln&6240&&!Fe.members&&(Fe.members=$u()),Fe.constEnumOnlyModule&&Fe.flags&304&&(Fe.constEnumOnlyModule=!1),Ln&111551&&W7(Fe,gr)}function it(Fe){if(Fe.kind===278)return Fe.isExportEquals?"export=":"default";let gr=fl(Fe);if(gr){if(c_(Fe)){let Ln=A2(gr);return DB(Fe)?"__global":`"${Ln}"`}if(gr.kind===168){let Ln=gr.expression;if(h1(Ln))return pp(Ln.text);if(Gne(Ln))return Vi(Ln.operator)+Ln.operand.text;pe.fail("Only computed properties with literal names have declaration names")}if(p(gr)){let Ln=_C(Fe);if(!Ln)return;let bs=Ln.symbol;return Fne(bs,gr.escapedText)}return oR(gr)?gS(gr):Gw(gr)?AU(gr):void 0}switch(Fe.kind){case 177:return"__constructor";case 185:case 180:case 324:return"__call";case 186:case 181:return"__new";case 182:return"__index";case 279:return"__export";case 308:return"export=";case 227:if(oI(Fe)===2)return"export=";pe.fail("Unknown binary declaration kind");break;case 318:return zY(Fe)?"__new":"__call";case 170:return pe.assert(Fe.parent.kind===318,"Impossible parameter parent kind",()=>`parent is: ${pe.formatSyntaxKind(Fe.parent.kind)}, expected JSDocFunctionType`),"arg"+Fe.parent.parameters.indexOf(Fe)}}function Dt(Fe){return sh(Fe)?Md(Fe.name):Bc(pe.checkDefined(it(Fe)))}function tr(Fe,gr,Ln,bs,Jl,tg,zl){pe.assert(zl||!qD(Ln));let Su=Ga(Ln,2048)||k0(Ln)&&pv(Ln.name),xf=zl?"__computed":Su&&gr?"default":it(Ln),Ug;if(xf===void 0)Ug=_r(0,"__missing");else if(Ug=Fe.get(xf),bs&2885600&&Ct.add(xf),!Ug)Fe.set(xf,Ug=_r(0,xf)),tg&&(Ug.isReplaceableByMethod=!0);else{if(tg&&!Ug.isReplaceableByMethod)return Ug;if(Ug.flags&Jl){if(Ug.isReplaceableByMethod)Fe.set(xf,Ug=_r(0,xf));else if(!(bs&3&&Ug.flags&67108864)){sh(Ln)&&UA(Ln.name,Ln);let QC=Ug.flags&2?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,T1=!0;(Ug.flags&384||bs&384)&&(QC=Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,T1=!1);let _S=!1;B(Ug.declarations)&&(Su||Ug.declarations&&Ug.declarations.length&&Ln.kind===278&&!Ln.isExportEquals)&&(QC=Z.A_module_cannot_have_multiple_default_exports,T1=!1,_S=!0);let wv=[];PB(Ln)&&af(Ln.type)&&Ga(Ln,32)&&Ug.flags&2887656&&wv.push(Lt(Ln,Z.Did_you_mean_0,`export type { ${Bc(Ln.name.escapedText)} }`));let $F=fl(Ln)||Ln;F(Ug.declarations,(Qy,gk)=>{let dR=fl(Qy)||Qy,XB=T1?Lt(dR,QC,Dt(Qy)):Lt(dR,QC);s.bindDiagnostics.push(_S?ug(XB,Lt($F,gk===0?Z.Another_export_default_is_here:Z.and_here)):XB),_S&&wv.push(Lt(dR,Z.The_first_export_default_is_here))});let d9=T1?Lt($F,QC,Dt(Ln)):Lt($F,QC);s.bindDiagnostics.push(ug(d9,...wv)),Ug=_r(0,xf)}}}return Gt(Ug,Ln,bs),Ug.parent?pe.assert(Ug.parent===gr,"Existing symbol parent should match new one"):Ug.parent=gr,Ug}function ur(Fe,gr,Ln){let bs=!!(Hc(Fe)&32)||Gr(Fe);if(gr&2097152)return Fe.kind===282||Fe.kind===272&&bs?tr(h.symbol.exports,h.symbol,Fe,gr,Ln):(pe.assertNode(h,HI),tr(h.locals,void 0,Fe,gr,Ln));if(lS(Fe)&&pe.assert(Bo(Fe)),!c_(Fe)&&(bs||h.flags&128)){if(!HI(h)||!h.locals||Ga(Fe,2048)&&!it(Fe))return tr(h.symbol.exports,h.symbol,Fe,gr,Ln);let Jl=gr&111551?1048576:0,tg=tr(h.locals,void 0,Fe,Jl,Ln);return tg.exportSymbol=tr(h.symbol.exports,h.symbol,Fe,gr,Ln),Fe.localSymbol=tg,tg}else return pe.assertNode(h,HI),tr(h.locals,void 0,Fe,gr,Ln)}function Gr(Fe){if(Fe.parent&&Lh(Fe)&&(Fe=Fe.parent),!lS(Fe))return!1;if(!TEe(Fe)&&Fe.fullName)return!0;let gr=fl(Fe);return gr?!!(xF(gr.parent)&&Bv(gr.parent)||em(gr.parent)&&Hc(gr.parent)&32):!1}function dt(Fe,gr){let Ln=h,bs=_,Jl=S,tg=Pe;if(Fe.kind===220&&Fe.body.kind!==242&&(Pe=!0),gr&1?(Fe.kind!==220&&(_=h),h=S=Fe,gr&32&&(h.locals=$u(),Ui(h))):gr&2&&(S=Fe,gr&32&&(S.locals=void 0)),gr&4){let zl=M,Su=ee,xf=re,Ug=ge,QC=Ee,T1=Te,_S=Ze,wv=gr&16&&!Ga(Fe,1024)&&!Fe.asteriskToken&&!!HL(Fe)||Fe.kind===176;wv||(M=ck(2,void 0,void 0),gr&144&&(M.node=Fe)),ge=wv||Fe.kind===177||Bo(Fe)&&(Fe.kind===263||Fe.kind===219)?si():void 0,Ee=void 0,ee=void 0,re=void 0,Te=void 0,Ze=!1,qt(Fe),Fe.flags&=-5633,!(M.flags&1)&&gr&8&&p1(Fe.body)&&(Fe.flags|=512,Ze&&(Fe.flags|=1024),Fe.endFlowNode=M),Fe.kind===308&&(Fe.flags|=et,Fe.endFlowNode=M),ge&&(Zn(ge,M),M=hc(ge),(Fe.kind===177||Fe.kind===176||Bo(Fe)&&(Fe.kind===263||Fe.kind===219))&&(Fe.returnFlowNode=M)),wv||(M=zl),ee=Su,re=xf,ge=Ug,Ee=QC,Te=T1,Ze=_S}else gr&64?(O=!1,qt(Fe),pe.assertNotNode(Fe,Ir),Fe.flags=O?Fe.flags|256:Fe.flags&-257):qt(Fe);Pe=tg,h=Ln,_=bs,S=Jl}function pr(Fe){ot(Fe,gr=>gr.kind===263?Ss(gr):void 0),ot(Fe,gr=>gr.kind!==263?Ss(gr):void 0)}function ot(Fe,gr=Ss){Fe!==void 0&&F(Fe,gr)}function ir(Fe){Lu(Fe,Ss,ot)}function qt(Fe){let gr=Tt;if(Tt=!1,ll(Fe)){cU(Fe)&&Fe.flowNode&&(Fe.flowNode=void 0),ir(Fe),Uc(Fe),Tt=gr;return}switch(Fe.kind>=244&&Fe.kind<=260&&(!c.allowUnreachableCode||Fe.kind===254)&&(Fe.flowNode=M),Fe.kind){case 248:Rg(Fe);break;case 247:Cs(Fe);break;case 249:Tu(Fe);break;case 250:case 251:Wr(Fe);break;case 246:Wn(Fe);break;case 254:case 258:pt(Fe);break;case 253:case 252:nr(Fe);break;case 259:Zr(Fe);break;case 256:Kr(Fe);break;case 270:Dn(Fe);break;case 297:hr(Fe);break;case 245:En(Fe);break;case 257:Gi(Fe);break;case 225:Ht(Fe);break;case 226:cn(Fe);break;case 227:if(Lx(Fe)){Tt=gr,wt(Fe);return}Rt(Fe);break;case 221:fr(Fe);break;case 228:Ue(Fe);break;case 261:Hn(Fe);break;case 212:case 213:Oi(Fe);break;case 214:Vn(Fe);break;case 236:es(Fe);break;case 347:case 339:case 341:oo(Fe);break;case 352:Ys(Fe);break;case 308:{pr(Fe.statements),Ss(Fe.endOfFileToken);break}case 242:case 269:pr(Fe.statements);break;case 209:Mt(Fe);break;case 170:$r(Fe);break;case 211:case 210:case 304:case 231:Tt=gr;default:ir(Fe);break}Uc(Fe),Tt=gr}function Yt(Fe){switch(Fe.kind){case 80:case 110:return!0;case 212:case 213:return mn(Fe);case 214:return jn(Fe);case 218:if(hQ(Fe))return!1;case 236:return Yt(Fe.expression);case 227:return Ns(Fe);case 225:return Fe.operator===54&&Yt(Fe.operand);case 222:return Yt(Fe.expression)}return!1}function Tr(Fe){switch(Fe.kind){case 80:case 110:case 108:case 237:return!0;case 212:case 218:case 236:return Tr(Fe.expression);case 213:return(h1(Fe.argumentExpression)||Hd(Fe.argumentExpression))&&Tr(Fe.expression);case 227:return Fe.operatorToken.kind===28&&Tr(Fe.right)||ek(Fe.operatorToken.kind)&&G_(Fe.left)}return!1}function mn(Fe){return Tr(Fe)||LC(Fe)&&mn(Fe.expression)}function jn(Fe){if(Fe.arguments){for(let gr of Fe.arguments)if(mn(gr))return!0}return!!(Fe.expression.kind===212&&mn(Fe.expression.expression))}function Zi(Fe,gr){return vN(Fe)&&An(Fe.expression)&&_A(gr)}function Ns(Fe){switch(Fe.operatorToken.kind){case 64:case 76:case 77:case 78:return mn(Fe.left);case 35:case 36:case 37:case 38:let gr=JA(Fe.left),Ln=JA(Fe.right);return An(gr)||An(Ln)||Zi(Ln,gr)||Zi(gr,Ln)||RY(Ln)&&Yt(gr)||RY(gr)&&Yt(Ln);case 104:return An(Fe.left);case 103:return Yt(Fe.right);case 28:return Yt(Fe.right)}return!1}function An(Fe){switch(Fe.kind){case 218:return An(Fe.expression);case 227:switch(Fe.operatorToken.kind){case 64:return An(Fe.left);case 28:return An(Fe.right)}}return mn(Fe)}function si(){return ck(4,void 0,void 0)}function ks(){return ck(8,void 0,void 0)}function Ic(Fe,gr,Ln){return ck(1024,{target:Fe,antecedents:gr},Ln)}function ou(Fe){Fe.flags|=Fe.flags&2048?4096:2048}function Zn(Fe,gr){!(gr.flags&1)&&!k(Fe.antecedent,gr)&&((Fe.antecedent||(Fe.antecedent=[])).push(gr),ou(gr))}function ya(Fe,gr,Ln){return gr.flags&1?gr:Ln?(Ln.kind===112&&Fe&64||Ln.kind===97&&Fe&32)&&!EY(Ln)&&!NJ(Ln.parent)?mt:Yt(Ln)?(ou(gr),ck(Fe,Ln,gr)):gr:Fe&32?gr:mt}function Fl(Fe,gr,Ln,bs){return ou(Fe),ck(128,{switchStatement:gr,clauseStart:Ln,clauseEnd:bs},Fe)}function ba(Fe,gr,Ln){ou(gr),Ke=!0;let bs=ck(Fe,Ln,gr);return Ee&&Zn(Ee,bs),bs}function Oo(Fe,gr){return ou(Fe),Ke=!0,ck(512,gr,Fe)}function hc(Fe){let gr=Fe.antecedent;return gr?gr.length===1?gr[0]:Fe:mt}function yr(Fe){let gr=Fe.parent;switch(gr.kind){case 246:case 248:case 247:return gr.expression===Fe;case 249:case 228:return gr.condition===Fe}return!1}function hn(Fe){for(;;)if(Fe.kind===218)Fe=Fe.expression;else if(Fe.kind===225&&Fe.operator===54)Fe=Fe.operand;else return Qne(Fe)}function Pi(Fe){return RAe(JA(Fe))}function co(Fe){for(;dI(Fe.parent)||D0(Fe.parent)&&Fe.parent.operator===54;)Fe=Fe.parent;return!yr(Fe)&&!hn(Fe.parent)&&!(LC(Fe.parent)&&Fe.parent.expression===Fe)}function pa(Fe,gr,Ln,bs){let Jl=Ie,tg=_e;Ie=Ln,_e=bs,Fe(gr),Ie=Jl,_e=tg}function Pa(Fe,gr,Ln){pa(Ss,Fe,gr,Ln),(!Fe||!Pi(Fe)&&!hn(Fe)&&!(LC(Fe)&&d3(Fe)))&&(Zn(gr,ya(32,M,Fe)),Zn(Ln,ya(64,M,Fe)))}function $c(Fe,gr,Ln){let bs=ee,Jl=re;ee=gr,re=Ln,Ss(Fe),ee=bs,re=Jl}function Qu(Fe,gr){let Ln=Te;for(;Ln&&Fe.parent.kind===257;)Ln.continueTarget=gr,Ln=Ln.next,Fe=Fe.parent;return gr}function Rg(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si();Zn(gr,M),M=gr,Pa(Fe.expression,Ln,bs),M=hc(Ln),$c(Fe.statement,bs,gr),Zn(gr,M),M=hc(bs)}function Cs(Fe){let gr=ks(),Ln=Qu(Fe,si()),bs=si();Zn(gr,M),M=gr,$c(Fe.statement,bs,Ln),Zn(Ln,M),M=hc(Ln),Pa(Fe.expression,gr,bs),M=hc(bs)}function Tu(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si(),Jl=si();Ss(Fe.initializer),Zn(gr,M),M=gr,Pa(Fe.condition,Ln,Jl),M=hc(Ln),$c(Fe.statement,Jl,bs),Zn(bs,M),M=hc(bs),Ss(Fe.incrementor),Zn(gr,M),M=hc(Jl)}function Wr(Fe){let gr=Qu(Fe,ks()),Ln=si();Ss(Fe.expression),Zn(gr,M),M=gr,Fe.kind===251&&Ss(Fe.awaitModifier),Zn(Ln,M),Ss(Fe.initializer),Fe.initializer.kind!==262&&bn(Fe.initializer),$c(Fe.statement,Ln,gr),Zn(gr,M),M=hc(Ln)}function Wn(Fe){let gr=si(),Ln=si(),bs=si();Pa(Fe.expression,gr,Ln),M=hc(gr),Ss(Fe.thenStatement),Zn(bs,M),M=hc(Ln),Ss(Fe.elseStatement),Zn(bs,M),M=hc(bs)}function pt(Fe){let gr=Pe;Pe=!0,Ss(Fe.expression),Pe=gr,Fe.kind===254&&(Ze=!0,ge&&Zn(ge,M)),M=mt,Ke=!0}function on(Fe){for(let gr=Te;gr;gr=gr.next)if(gr.name===Fe)return gr}function st(Fe,gr,Ln){let bs=Fe.kind===253?gr:Ln;bs&&(Zn(bs,M),M=mt,Ke=!0)}function nr(Fe){if(Ss(Fe.label),Fe.label){let gr=on(Fe.label.escapedText);gr&&(gr.referenced=!0,st(Fe,gr.breakTarget,gr.continueTarget))}else st(Fe,ee,re)}function Zr(Fe){let gr=ge,Ln=Ee,bs=si(),Jl=si(),tg=si();if(Fe.finallyBlock&&(ge=Jl),Zn(tg,M),Ee=tg,Ss(Fe.tryBlock),Zn(bs,M),Fe.catchClause&&(M=hc(tg),tg=si(),Zn(tg,M),Ee=tg,Ss(Fe.catchClause),Zn(bs,M)),ge=gr,Ee=Ln,Fe.finallyBlock){let zl=si();zl.antecedent=Nn(Nn(bs.antecedent,tg.antecedent),Jl.antecedent),M=zl,Ss(Fe.finallyBlock),M.flags&1?M=mt:(ge&&Jl.antecedent&&Zn(ge,Ic(zl,Jl.antecedent,M)),Ee&&tg.antecedent&&Zn(Ee,Ic(zl,tg.antecedent,M)),M=bs.antecedent?Ic(zl,bs.antecedent,M):mt)}else M=hc(bs)}function Kr(Fe){let gr=si();Ss(Fe.expression);let Ln=ee,bs=Ne;ee=gr,Ne=M,Ss(Fe.caseBlock),Zn(gr,M);let Jl=F(Fe.caseBlock.clauses,tg=>tg.kind===298);Fe.possiblyExhaustive=!Jl&&!gr.antecedent,Jl||Zn(gr,Fl(Ne,Fe,0,0)),ee=Ln,Ne=bs,M=hc(gr)}function Dn(Fe){let gr=Fe.clauses,Ln=Fe.parent.expression.kind===112||Yt(Fe.parent.expression),bs=mt;for(let Jl=0;JlVh(Ln)||yf(Ln))}function Ag(Fe){Fe.flags&33554432&&!mc(Fe)?Fe.flags|=128:Fe.flags&=-129}function dg(Fe){if(Ag(Fe),c_(Fe))if(Ga(Fe,32)&&ni(Fe,Z.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),ane(Fe))yu(Fe);else{let gr;if(Fe.name.kind===11){let{text:bs}=Fe.name;gr=oQ(bs),gr===void 0&&ni(Fe.name,Z.Pattern_0_can_have_at_most_one_Asterisk_character,bs)}let Ln=gs(Fe,512,110735);s.patternAmbientModules=Ft(s.patternAmbientModules,gr&&!Xs(gr)?{pattern:gr,symbol:Ln}:void 0)}else{let gr=yu(Fe);if(gr!==0){let{symbol:Ln}=Fe;Ln.constEnumOnlyModule=!(Ln.flags&304)&&gr===2&&Ln.constEnumOnlyModule!==!1}}}function yu(Fe){let gr=XF(Fe),Ln=gr!==0;return gs(Fe,Ln?512:1024,Ln?110735:0),gr}function RI(Fe){let gr=_r(131072,it(Fe));Gt(gr,Fe,131072);let Ln=_r(2048,"__type");Gt(Ln,Fe,2048),Ln.members=$u(),Ln.members.set(gr.escapedName,gr)}function pI(Fe){return bu(Fe,4096,"__object")}function Ip(Fe){return bu(Fe,4096,"__jsxAttributes")}function kl(Fe,gr,Ln){return gs(Fe,gr,Ln)}function bu(Fe,gr,Ln){let bs=_r(gr,Ln);return gr&106508&&(bs.parent=h.symbol),Gt(bs,Fe,gr),bs}function sm(Fe,gr,Ln){switch(S.kind){case 268:ur(Fe,gr,Ln);break;case 308:if(Sl(h)){ur(Fe,gr,Ln);break}default:pe.assertNode(S,HI),S.locals||(S.locals=$u(),Ui(S)),tr(S.locals,void 0,Fe,gr,Ln)}}function qp(){if(!T)return;let Fe=h,gr=R,Ln=S,bs=d,Jl=M;for(let tg of T){let zl=tg.parent.parent;h=N7(zl)||s,S=oS(zl)||s,M=ck(2,void 0,void 0),d=tg,Ss(tg.typeExpression);let Su=fl(tg);if((TEe(tg)||!tg.fullName)&&Su&&xF(Su.parent)){let xf=Bv(Su.parent);if(xf){w1(s.symbol,Su.parent,xf,!!ji(Su,QC=>jo(QC)&&QC.name.escapedText==="prototype"),!1);let Ug=h;switch(oU(Su.parent)){case 1:case 2:Sl(s)?h=s:h=void 0;break;case 4:h=Su.parent.expression;break;case 3:h=Su.parent.expression.name;break;case 5:h=_Q(s,Su.parent.expression)?s:jo(Su.parent.expression)?Su.parent.expression.name:Su.parent.expression;break;case 0:return pe.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}h&&ur(tg,524288,788968),h=Ug}}else TEe(tg)||!tg.fullName||tg.fullName.kind===80?(d=tg.parent,sm(tg,524288,788968)):Ss(tg.fullName)}h=Fe,R=gr,S=Ln,d=bs,M=Jl}function Jg(){if(V===void 0)return;let Fe=h,gr=R,Ln=S,bs=d,Jl=M;for(let tg of V){let zl=DW(tg),Su=zl?N7(zl):void 0,xf=zl?oS(zl):void 0;h=Su||s,S=xf||s,M=ck(2,void 0,void 0),d=tg,Ss(tg.importClause)}h=Fe,R=gr,S=Ln,d=bs,M=Jl}function ch(Fe){if(!s.parseDiagnostics.length&&!(Fe.flags&33554432)&&!(Fe.flags&16777216)&&!HZe(Fe)){let gr=lv(Fe);if(gr===void 0)return;Ye&&gr>=119&&gr<=127?s.bindDiagnostics.push(Lt(Fe,mS(Fe),Md(Fe))):gr===135?Lm(s)&&oAe(Fe)?s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,Md(Fe))):Fe.flags&65536&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Md(Fe))):gr===127&&Fe.flags&16384&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Md(Fe)))}}function mS(Fe){return _C(Fe)?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function Au(Fe){Fe.escapedText==="#constructor"&&(s.parseDiagnostics.length||s.bindDiagnostics.push(Lt(Fe,Z.constructor_is_a_reserved_word,Md(Fe))))}function Eg(Fe){Ye&&G_(Fe.left)&&ek(Fe.operatorToken.kind)&&tp(Fe,Fe.left)}function zA(Fe){Ye&&Fe.variableDeclaration&&tp(Fe,Fe.variableDeclaration.name)}function NA(Fe){if(Ye&&Fe.expression.kind===80){let gr=qa(s,Fe.expression);s.bindDiagnostics.push(rm(s,gr.start,gr.length,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function oi(Fe){return Ir(Fe)&&(Fe.escapedText==="eval"||Fe.escapedText==="arguments")}function tp(Fe,gr){if(gr&&gr.kind===80){let Ln=gr;if(oi(Ln)){let bs=qa(s,gr);s.bindDiagnostics.push(rm(s,bs.start,bs.length,JI(Fe),Vo(Ln)))}}}function JI(Fe){return _C(Fe)?Z.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:s.externalModuleIndicator?Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Z.Invalid_use_of_0_in_strict_mode}function Wh(Fe){Ye&&!(Fe.flags&33554432)&&tp(Fe,Fe.name)}function HC(Fe){return _C(Fe)?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}function bf(Fe){if(g<2&&S.kind!==308&&S.kind!==268&&!p3(S)){let gr=qa(s,Fe);s.bindDiagnostics.push(rm(s,gr.start,gr.length,HC(Fe)))}}function UI(Fe){Ye&&tp(Fe,Fe.operand)}function ve(Fe){Ye&&(Fe.operator===46||Fe.operator===47)&&tp(Fe,Fe.operand)}function mr(Fe){Ye&&ni(Fe,Z.with_statements_are_not_allowed_in_strict_mode)}function ln(Fe){Ye&&Hg(c)>=2&&(Tge(Fe.statement)||Eh(Fe.statement))&&ni(Fe.label,Z.A_label_is_not_allowed_here)}function ni(Fe,gr,...Ln){let bs=rs(s,Fe.pos);s.bindDiagnostics.push(rm(s,bs.start,bs.length,gr,...Ln))}function Ls(Fe,gr,Ln){Za(Fe,gr,gr,Ln)}function Za(Fe,gr,Ln,bs){Go(Fe,{pos:UD(gr,s),end:Ln.end},bs)}function Go(Fe,gr,Ln){let bs=rm(s,gr.pos,gr.end-gr.pos,Ln);Fe?s.bindDiagnostics.push(bs):s.bindSuggestionDiagnostics=Ft(s.bindSuggestionDiagnostics,{...bs,category:2})}function Ss(Fe){if(!Fe)return;UA(Fe,d),ki&&(Fe.tracingPath=s.path);let gr=Ye;if(Vg(Fe),Fe.kind>166){let Ln=d;d=Fe;let bs=Oet(Fe);bs===0?qt(Fe):dt(Fe,bs),d=Ln}else{let Ln=d;Fe.kind===1&&(d=Fe),Uc(Fe),d=Ln}Ye=gr}function Uc(Fe){if(jm(Fe))if(Bo(Fe))for(let gr of Fe.jsDoc)Ss(gr);else for(let gr of Fe.jsDoc)UA(gr,Fe),t9(gr,!1)}function el(Fe){if(!Ye)for(let gr of Fe){if(!cS(gr))return;if(Fd(gr)){Ye=!0;return}}}function Fd(Fe){let gr=vF(s,Fe.expression);return gr==='"use strict"'||gr==="'use strict'"}function Vg(Fe){switch(Fe.kind){case 80:if(Fe.flags&4096){let zl=Fe.parent;for(;zl&&!lS(zl);)zl=zl.parent;sm(zl,524288,788968);break}case 110:return M&&(un(Fe)||d.kind===305)&&(Fe.flowNode=M),ch(Fe);case 167:M&&lAe(Fe)&&(Fe.flowNode=M);break;case 237:case 108:Fe.flowNode=M;break;case 81:return Au(Fe);case 212:case 213:let gr=Fe;M&&Tr(gr)&&(gr.flowNode=M),Qye(gr)&&ym(gr),Bo(gr)&&s.commonJsModuleIndicator&&pN(gr)&&!iVe(S,"module")&&tr(s.locals,void 0,gr.expression,134217729,111550);break;case 227:switch(oI(Fe)){case 1:qn(Fe);break;case 2:Js(Fe);break;case 3:KI(Fe.left,Fe);break;case 6:lf(Fe);break;case 4:DA(Fe);break;case 5:let zl=Fe.left.expression;if(Bo(Fe)&&Ir(zl)){let Su=iVe(S,zl.escapedText);if(aAe(Su?.valueDeclaration)){DA(Fe);break}}I_(Fe);break;case 0:break;default:pe.fail("Unknown binary expression special property assignment kind")}return Eg(Fe);case 300:return zA(Fe);case 221:return NA(Fe);case 226:return UI(Fe);case 225:return ve(Fe);case 255:return mr(Fe);case 257:return ln(Fe);case 198:O=!0;return;case 183:break;case 169:return wa(Fe);case 170:return en(Fe);case 261:return ct(Fe);case 209:return Fe.flowNode=M,ct(Fe);case 173:case 172:return Ef(Fe);case 304:case 305:return ys(Fe,4,0);case 307:return ys(Fe,8,900095);case 180:case 181:case 182:return gs(Fe,131072,0);case 175:case 174:return ys(Fe,8192|(Fe.questionToken?16777216:0),g2(Fe)?0:103359);case 263:return gi(Fe);case 177:return gs(Fe,16384,0);case 178:return ys(Fe,32768,46015);case 179:return ys(Fe,65536,78783);case 185:case 318:case 324:case 186:return RI(Fe);case 188:case 323:case 201:return om(Fe);case 333:return Bs(Fe);case 211:return pI(Fe);case 219:case 220:return _i(Fe);case 214:switch(oI(Fe)){case 7:return E2(Fe);case 8:return or(Fe);case 9:return fI(Fe);case 0:break;default:return pe.fail("Unknown call expression assignment declaration kind")}Bo(Fe)&&AR(Fe);break;case 232:case 264:return Ye=!0,CS(Fe);case 265:return sm(Fe,64,788872);case 266:return sm(Fe,524288,788968);case 267:return WN(Fe);case 268:return dg(Fe);case 293:return Ip(Fe);case 292:return kl(Fe,4,0);case 272:case 275:case 277:case 282:return gs(Fe,2097152,2097152);case 271:return B1(Fe);case 274:return b2(Fe);case 279:return W_(Fe);case 278:return lh(Fe);case 308:return el(Fe.statements),Sh();case 242:if(!p3(Fe.parent))return;case 269:return el(Fe.statements);case 342:if(Fe.parent.kind===324)return en(Fe);if(Fe.parent.kind!==323)break;case 349:let Jl=Fe,tg=Jl.isBracketed||Jl.typeExpression&&Jl.typeExpression.type.kind===317?16777220:4;return gs(Jl,tg,0);case 347:case 339:case 341:return(T||(T=[])).push(Fe);case 340:return Ss(Fe.typeExpression);case 352:return(V||(V=[])).push(Fe)}}function Ef(Fe){let gr=i0(Fe),Ln=gr?98304:4,bs=gr?13247:0;return ys(Fe,Ln|(Fe.questionToken?16777216:0),bs)}function om(Fe){return bu(Fe,2048,"__type")}function Sh(){if(Ag(s),Lm(s))Zp();else if(Zu(s)){Zp();let Fe=s.symbol;tr(s.symbol.exports,s.symbol,s,4,-1),s.symbol=Fe}}function Zp(){bu(s,512,`"${c0(s.fileName)}"`)}function lh(Fe){if(!h.symbol||!h.symbol.exports)bu(Fe,111551,it(Fe));else{let gr=Dne(Fe)?2097152:4,Ln=tr(h.symbol.exports,h.symbol,Fe,gr,-1);Fe.isExportEquals&&W7(Ln,Fe)}}function B1(Fe){zt(Fe.modifiers)&&s.bindDiagnostics.push(Lt(Fe,Z.Modifiers_cannot_appear_here));let gr=cl(Fe.parent)?Lm(Fe.parent)?Fe.parent.isDeclarationFile?void 0:Z.Global_module_exports_may_only_appear_in_declaration_files:Z.Global_module_exports_may_only_appear_in_module_files:Z.Global_module_exports_may_only_appear_at_top_level;gr?s.bindDiagnostics.push(Lt(Fe,gr)):(s.symbol.globalExports=s.symbol.globalExports||$u(),tr(s.symbol.globalExports,s.symbol,Fe,2097152,2097152))}function W_(Fe){!h.symbol||!h.symbol.exports?bu(Fe,8388608,it(Fe)):Fe.exportClause?ak(Fe.exportClause)&&(UA(Fe.exportClause,Fe),tr(h.symbol.exports,h.symbol,Fe.exportClause,2097152,2097152)):tr(h.symbol.exports,h.symbol,Fe,8388608,0)}function b2(Fe){Fe.name&&gs(Fe,2097152,2097152)}function Pb(Fe){return s.externalModuleIndicator&&s.externalModuleIndicator!==!0?!1:(s.commonJsModuleIndicator||(s.commonJsModuleIndicator=Fe,s.externalModuleIndicator||Zp()),!0)}function or(Fe){if(!Pb(Fe))return;let gr=rC(Fe.arguments[0],void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));gr&&tr(gr.exports,gr,Fe,1048580,0)}function qn(Fe){if(!Pb(Fe))return;let gr=rC(Fe.left.expression,void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));if(gr){let bs=hAe(Fe.right)&&(E3(Fe.left.expression)||pN(Fe.left.expression))?2097152:1048580;UA(Fe.left,Fe),tr(gr.exports,gr,Fe.left,bs,0)}}function Js(Fe){if(!Pb(Fe))return;let gr=bne(Fe.right);if(Sbe(gr)||h===s&&_Q(s,gr))return;if(ag(gr)&&ue(gr.properties,u0)){F(gr.properties,Yl);return}let Ln=Dne(Fe)?2097152:1049092,bs=tr(s.symbol.exports,s.symbol,Fe,Ln|67108864,0);W7(bs,Fe)}function Yl(Fe){tr(s.symbol.exports,s.symbol,Fe,69206016,0)}function DA(Fe){if(pe.assert(Bo(Fe)),po(Fe)&&jo(Fe.left)&&p(Fe.left.name)||jo(Fe)&&p(Fe.name))return;let Ln=s0(Fe,!1,!1);switch(Ln.kind){case 263:case 219:let bs=Ln.symbol;if(po(Ln.parent)&&Ln.parent.operatorToken.kind===64){let zl=Ln.parent.left;NW(zl)&&GF(zl.expression)&&(bs=Mb(zl.expression.expression,_))}bs&&bs.valueDeclaration&&(bs.members=bs.members||$u(),qD(Fe)?kA(Fe,bs,bs.members):tr(bs.members,bs,Fe,67108868,0),Gt(bs,bs.valueDeclaration,32));break;case 177:case 173:case 175:case 178:case 179:case 176:let Jl=Ln.parent,tg=lg(Ln)?Jl.symbol.exports:Jl.symbol.members;qD(Fe)?kA(Fe,Jl.symbol,tg):tr(tg,Jl.symbol,Fe,67108868,0,!0);break;case 308:if(qD(Fe))break;Ln.commonJsModuleIndicator?tr(Ln.symbol.exports,Ln.symbol,Fe,1048580,0):gs(Fe,1,111550);break;case 268:break;default:pe.failBadSyntaxKind(Ln)}}function kA(Fe,gr,Ln){tr(Ln,gr,Fe,4,0,!0,!0),AA(Fe,gr)}function AA(Fe,gr){gr&&(gr.assignmentDeclarationMembers||(gr.assignmentDeclarationMembers=new Map)).set(id(Fe),Fe)}function ym(Fe){Fe.expression.kind===110?DA(Fe):NW(Fe)&&Fe.parent.parent.kind===308&&(GF(Fe.expression)?KI(Fe,Fe.parent):YC(Fe))}function lf(Fe){UA(Fe.left,Fe),UA(Fe.right,Fe),uk(Fe.left.expression,Fe.left,!1,!0)}function fI(Fe){let gr=Mb(Fe.arguments[0].expression);gr&&gr.valueDeclaration&&Gt(gr,gr.valueDeclaration,32),py(Fe,gr,!0)}function KI(Fe,gr){let Ln=Fe.expression,bs=Ln.expression;UA(bs,Ln),UA(Ln,Fe),UA(Fe,gr),uk(bs,Fe,!0,!0)}function E2(Fe){let gr=Mb(Fe.arguments[0]),Ln=Fe.parent.parent.kind===308;gr=w1(gr,Fe.arguments[0],Ln,!1,!1),py(Fe,gr,!1)}function I_(Fe){var gr;let Ln=Mb(Fe.left.expression,S)||Mb(Fe.left.expression,h);if(!Bo(Fe)&&!FZe(Ln))return;let bs=_U(Fe.left);if(!(Ir(bs)&&((gr=iVe(h,bs.escapedText))==null?void 0:gr.flags)&2097152))if(UA(Fe.left,Fe),UA(Fe.right,Fe),Ir(Fe.left.expression)&&h===s&&_Q(s,Fe.left.expression))qn(Fe);else if(qD(Fe)){bu(Fe,67108868,"__computed");let Jl=w1(Ln,Fe.left.expression,Bv(Fe.left),!1,!1);AA(Fe,Jl)}else YC(Ma(Fe.left,v3))}function YC(Fe){pe.assert(!Ir(Fe)),UA(Fe.expression,Fe),uk(Fe.expression,Fe,!1,!1)}function w1(Fe,gr,Ln,bs,Jl){return Fe?.flags&2097152||(Ln&&!bs&&(Fe=rC(gr,Fe,(Su,xf,Ug)=>{if(xf)return Gt(xf,Su,67110400),xf;{let QC=Ug?Ug.exports:s.jsGlobalAugmentations||(s.jsGlobalAugmentations=$u());return tr(QC,Ug,Su,67110400,110735)}})),Jl&&Fe&&Fe.valueDeclaration&&Gt(Fe,Fe.valueDeclaration,32)),Fe}function py(Fe,gr,Ln){if(!gr||!Xx(gr))return;let bs=Ln?gr.members||(gr.members=$u()):gr.exports||(gr.exports=$u()),Jl=0,tg=0;Gd(JY(Fe))?(Jl=8192,tg=103359):Ll(Fe)&&S3(Fe)&&(zt(Fe.arguments[2].properties,zl=>{let Su=fl(zl);return!!Su&&Ir(Su)&&Vo(Su)==="set"})&&(Jl|=65540,tg|=78783),zt(Fe.arguments[2].properties,zl=>{let Su=fl(zl);return!!Su&&Ir(Su)&&Vo(Su)==="get"})&&(Jl|=32772,tg|=46015)),Jl===0&&(Jl=4,tg=0),tr(bs,gr,Fe,Jl|67108864,tg&-67108865)}function Bv(Fe){return po(Fe.parent)?Jx(Fe.parent).parent.kind===308:Fe.parent.parent.kind===308}function uk(Fe,gr,Ln,bs){let Jl=Mb(Fe,S)||Mb(Fe,h),tg=Bv(gr);Jl=w1(Jl,gr.expression,tg,Ln,bs),py(gr,Jl,Ln)}function Xx(Fe){if(Fe.flags&1072)return!0;let gr=Fe.valueDeclaration;if(gr&&Ll(gr))return!!JY(gr);let Ln=gr?nc(gr)?gr.initializer:po(gr)?gr.right:jo(gr)&&po(gr.parent)?gr.parent.right:void 0:void 0;if(Ln=Ln&&bne(Ln),Ln){let bs=GF(nc(gr)?gr.name:po(gr)?gr.left:gr);return!!QL(po(Ln)&&(Ln.operatorToken.kind===57||Ln.operatorToken.kind===61)?Ln.right:Ln,bs)}return!1}function Jx(Fe){for(;po(Fe.parent);)Fe=Fe.parent;return Fe.parent}function Mb(Fe,gr=h){if(Ir(Fe))return iVe(gr,Fe.escapedText);{let Ln=Mb(Fe.expression);return Ln&&Ln.exports&&Ln.exports.get(jD(Fe))}}function rC(Fe,gr,Ln){if(_Q(s,Fe))return s.symbol;if(Ir(Fe))return Ln(Fe,Mb(Fe),gr);{let bs=rC(Fe.expression,gr,Ln),Jl=Ene(Fe);return p(Jl)&&pe.fail("unexpected PrivateIdentifier"),Ln(Jl,bs&&bs.exports&&bs.exports.get(jD(Fe)),bs)}}function AR(Fe){!s.commonJsModuleIndicator&&uy(Fe,!1)&&Pb(Fe)}function CS(Fe){if(Fe.kind===264)sm(Fe,32,899503);else{let Jl=Fe.name?Fe.name.escapedText:"__class";bu(Fe,32,Jl),Fe.name&&Ct.add(Fe.name.escapedText)}let{symbol:gr}=Fe,Ln=_r(4194308,"prototype"),bs=gr.exports.get(Ln.escapedName);bs&&(Fe.name&&UA(Fe.name,Fe),s.bindDiagnostics.push(Lt(bs.declarations[0],Z.Duplicate_identifier_0,of(Ln)))),gr.exports.set(Ln.escapedName,Ln),Ln.parent=gr}function WN(Fe){return OA(Fe)?sm(Fe,128,899967):sm(Fe,256,899327)}function ct(Fe){if(Ye&&tp(Fe,Fe.name),!Nu(Fe.name)){let gr=Fe.kind===261?Fe:Fe.parent.parent;Bo(Fe)&&TW(gr)&&!gv(Fe)&&!(Hc(Fe)&32)?gs(Fe,2097152,2097152):jJ(Fe)?sm(Fe,2,111551):jL(Fe)?gs(Fe,1,111551):gs(Fe,1,111550)}}function en(Fe){if(!(Fe.kind===342&&h.kind!==324)&&(Ye&&!(Fe.flags&33554432)&&tp(Fe,Fe.name),Nu(Fe.name)?bu(Fe,1,"__"+Fe.parent.parameters.indexOf(Fe)):gs(Fe,1,111551),We(Fe,Fe.parent))){let gr=Fe.parent.parent;tr(gr.symbol.members,gr.symbol,Fe,4|(Fe.questionToken?16777216:0),0)}}function gi(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&X7(Fe)&&(et|=4096),Wh(Fe),Ye?(bf(Fe),sm(Fe,16,110991)):gs(Fe,16,110991)}function _i(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&X7(Fe)&&(et|=4096),M&&(Fe.flowNode=M),Wh(Fe);let gr=Fe.name?Fe.name.escapedText:"__function";return bu(Fe,16,gr)}function ys(Fe,gr,Ln){return!s.isDeclarationFile&&!(Fe.flags&33554432)&&X7(Fe)&&(et|=4096),M&&rAe(Fe)&&(Fe.flowNode=M),qD(Fe)?bu(Fe,gr,"__computed"):gs(Fe,gr,Ln)}function $s(Fe){let gr=ji(Fe,Ln=>Ln.parent&&h2(Ln.parent)&&Ln.parent.extendsType===Ln);return gr&&gr.parent}function wa(Fe){if(MB(Fe.parent)){let gr=fAe(Fe.parent);gr?(pe.assertNode(gr,HI),gr.locals??(gr.locals=$u()),tr(gr.locals,void 0,Fe,262144,526824)):gs(Fe,262144,526824)}else if(Fe.parent.kind===196){let gr=$s(Fe.parent);gr?(pe.assertNode(gr,HI),gr.locals??(gr.locals=$u()),tr(gr.locals,void 0,Fe,262144,526824)):bu(Fe,262144,it(Fe))}else gs(Fe,262144,526824)}function pc(Fe){let gr=XF(Fe);return gr===1||gr===2&&Vb(c)}function ll(Fe){if(!(M.flags&1))return!1;if(M===mt&&(WJ(Fe)&&Fe.kind!==243||Fe.kind===264||Dtn(Fe,c)||Fe.kind===268&&pc(Fe))&&(M=yt,!c.allowUnreachableCode)){let Ln=vLe(c)&&!(Fe.flags&33554432)&&(!Eh(Fe)||!!(hm(Fe.declarationList)&7)||Fe.declarationList.declarations.some(bs=>!!bs.initializer));lvs(Fe,c,(bs,Jl)=>Za(Ln,bs,Jl,Z.Unreachable_code_detected))}return!0}}function Dtn(s,c){return s.kind===267&&(!OA(s)||Vb(c))}function lvs(s,c,g){if(Lc(s)&&d(s)&&eg(s.parent)){let{statements:_}=s.parent,S=zbe(_,s);Fn(S,d,(R,T)=>g(S[R],S[T-1]))}else g(s,s);function d(_){return!ah(_)&&!h(_)&&!(Eh(_)&&!(hm(_)&7)&&_.declarationList.declarations.some(S=>!S.initializer))}function h(_){switch(_.kind){case 265:case 266:return!0;case 268:return XF(_)!==1;case 267:return!Dtn(_,c);default:return!1}}}function _Q(s,c){let g=0,d=cA();for(d.enqueue(c);!d.isEmpty()&&g<100;){if(g++,c=d.dequeue(),E3(c)||pN(c))return!0;if(Ir(c)){let h=iVe(s,c.escapedText);if(h&&h.valueDeclaration&&nc(h.valueDeclaration)&&h.valueDeclaration.initializer){let _=h.valueDeclaration.initializer;d.enqueue(_),zm(_,!0)&&(d.enqueue(_.left),d.enqueue(_.right))}}}return!1}function Oet(s){switch(s.kind){case 232:case 264:case 267:case 211:case 188:case 323:case 293:return 1;case 265:return 65;case 268:case 266:case 201:case 182:return 33;case 308:return 37;case 178:case 179:case 175:if(rAe(s))return 173;case 177:case 263:case 174:case 180:case 324:case 318:case 185:case 181:case 186:case 176:return 45;case 352:return 37;case 219:case 220:return 61;case 269:return 4;case 173:return s.initializer?4:0;case 300:case 249:case 250:case 251:case 270:return 34;case 242:return Eu(s.parent)||dl(s.parent)?0:34}return 0}function iVe(s,c){var g,d,h,_;let S=(d=(g=Gs(s,HI))==null?void 0:g.locals)==null?void 0:d.get(c);if(S)return S.exportSymbol??S;if(cl(s)&&s.jsGlobalAugmentations&&s.jsGlobalAugmentations.has(c))return s.jsGlobalAugmentations.get(c);if(bE(s))return(_=(h=s.symbol)==null?void 0:h.exports)==null?void 0:_.get(c)}function PPt(s,c,g,d,h,_,S,R,T,O){return V;function V(M=()=>!0){let ee=[],re=[];return{walkType:Tt=>{try{return ge(Tt),{visitedTypes:Kh(ee),visitedSymbols:Kh(re)}}finally{ft(ee),ft(re)}},walkSymbol:Tt=>{try{return Ye(Tt),{visitedTypes:Kh(ee),visitedSymbols:Kh(re)}}finally{ft(ee),ft(re)}}};function ge(Tt){if(!(!Tt||ee[Tt.id]||(ee[Tt.id]=Tt,Ye(Tt.symbol)))){if(Tt.flags&524288){let Qe=Tt,Ct=Qe.objectFlags;Ct&4&&Ie(Tt),Ct&32&&Ze(Tt),Ct&3&&Ke(Tt),Ct&24&&et(Qe)}Tt.flags&262144&&_e(Tt),Tt.flags&3145728&&Ee(Tt),Tt.flags&4194304&&Ne(Tt),Tt.flags&8388608&&Te(Tt)}}function Ie(Tt){ge(Tt.target),F(O(Tt),ge)}function _e(Tt){ge(R(Tt))}function Ee(Tt){F(Tt.types,ge)}function Ne(Tt){ge(Tt.type)}function Te(Tt){ge(Tt.objectType),ge(Tt.indexType),ge(Tt.constraint)}function Ze(Tt){ge(Tt.typeParameter),ge(Tt.constraintType),ge(Tt.templateType),ge(Tt.modifiersType)}function Pe(Tt){let at=c(Tt);at&&ge(at.type),F(Tt.typeParameters,ge);for(let Qe of Tt.parameters)Ye(Qe);ge(s(Tt)),ge(g(Tt))}function Ke(Tt){et(Tt),F(Tt.typeParameters,ge),F(d(Tt),ge),ge(Tt.thisType)}function et(Tt){let at=h(Tt);for(let Qe of at.indexInfos)ge(Qe.keyType),ge(Qe.type);for(let Qe of at.callSignatures)Pe(Qe);for(let Qe of at.constructSignatures)Pe(Qe);for(let Qe of at.properties)Ye(Qe)}function Ye(Tt){if(!Tt)return!1;let at=xg(Tt);if(re[at])return!1;if(re[at]=Tt,!M(Tt))return!0;let Qe=_(Tt);return ge(Qe),Tt.exports&&Tt.exports.forEach(Ye),F(Tt.declarations,Ct=>{if(Ct.type&&Ct.type.kind===187){let mt=Ct.type,yt=S(T(mt.exprName));Ye(yt)}}),!1}}}var JF={};o(JF,{RelativePreference:()=>ktn,countPathComponents:()=>aVe,forEachFileNameOfModule:()=>Vtn,getLocalModuleSpecifierBetweenFileNames:()=>fvs,getModuleSpecifier:()=>Avs,getModuleSpecifierPreferences:()=>$Ee,getModuleSpecifiers:()=>Ftn,getModuleSpecifiersWithCacheInfo:()=>Ztn,getNodeModulesPackageName:()=>dvs,tryGetJSExtensionForFile:()=>Met,tryGetModuleSpecifiersFromCache:()=>pvs,tryGetRealFileNameForNonJsDeclarationFileName:()=>Htn,updateModuleSpecifier:()=>gvs});var uvs=VA(s=>{try{let c=s.indexOf("/");if(c!==0)return new RegExp(s);let g=s.lastIndexOf("/");if(c===g)return new RegExp(s);for(;(c=s.indexOf("/",c+1))!==g;)if(s[c-1]!=="\\")return new RegExp(s);let d=s.substring(g+1).replace(/[^iu]/g,"");return s=s.substring(1,g),new RegExp(s,d)}catch{return}}),ktn=(s=>(s[s.Relative=0]="Relative",s[s.NonRelative=1]="NonRelative",s[s.Shortest=2]="Shortest",s[s.ExternalNonRelative=3]="ExternalNonRelative",s))(ktn||{});function $Ee({importModuleSpecifierPreference:s,importModuleSpecifierEnding:c,autoImportSpecifierExcludeRegexes:g},d,h,_,S){let R=T();return{excludeRegexes:g,relativePreference:S!==void 0?Xr(S)?0:1:s==="relative"?0:s==="non-relative"?1:s==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:O=>{let V=Het(_,d,h),M=O!==V?T(O):R,ee=F_(h);if((O??V)===99&&3<=ee&&ee<=99)return Xie(h,_.fileName)?[3,2]:[2];if(F_(h)===1)return M===2?[2,1]:[1,2];let re=Xie(h,_.fileName);switch(M){case 2:return re?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return re?[1,0,3,2]:[1,0,2];case 0:return re?[0,1,3,2]:[0,1,2];default:pe.assertNever(M)}}};function T(O){if(S!==void 0){if(_N(S))return 2;if(di(S,"/index"))return 1}return LLe(c,O??Het(_,d,h),h,dN(_)?_:void 0)}}function gvs(s,c,g,d,h,_,S={}){let R=xtn(s,c,g,d,h,$Ee({},h,s,c,_),{},S);if(R!==_)return R}function Avs(s,c,g,d,h,_={}){return xtn(s,c,g,d,h,$Ee({},h,s,c),{},_)}function dvs(s,c,g,d,h,_={}){let S=oVe(c.fileName,d),R=Wtn(S,g,d,h,s,_);return J(R,T=>YPt(T,S,c,d,s,h,!0,_.overrideImportMode))}function xtn(s,c,g,d,h,_,S,R={}){let T=oVe(g,h),O=Wtn(T,d,h,S,s,R);return J(O,V=>YPt(V,T,c,h,s,S,void 0,R.overrideImportMode))||MPt(d,T,s,h,R.overrideImportMode||Het(c,h,s),_)}function pvs(s,c,g,d,h={}){let _=Gtn(s,c,g,d,h);return _[1]&&{kind:_[0],moduleSpecifiers:_[1],computedWithoutCache:!1}}function Gtn(s,c,g,d,h={}){var _;let S=KJ(s);if(!S)return E;let R=(_=g.getModuleSpecifierCache)==null?void 0:_.call(g),T=R?.get(c.path,S.path,d,h);return[T?.kind,T?.moduleSpecifiers,S,T?.modulePaths,R]}function Ftn(s,c,g,d,h,_,S={}){return Ztn(s,c,g,d,h,_,S,!1).moduleSpecifiers}function Ztn(s,c,g,d,h,_,S={},R){let T=!1,O=_vs(s,c);if(O)return{kind:"ambient",moduleSpecifiers:R&&sVe(O,_.autoImportSpecifierExcludeRegexes)?E:[O],computedWithoutCache:T};let[V,M,ee,re,ge]=Gtn(s,d,h,_,S);if(M)return{kind:V,moduleSpecifiers:M,computedWithoutCache:T};if(!ee)return{kind:void 0,moduleSpecifiers:E,computedWithoutCache:T};T=!0,re||(re=Otn(oVe(d.fileName,h),ee.originalFileName,h,g,S));let Ie=Ivs(re,g,d,h,_,S,R);return ge?.set(d.path,ee.path,_,S,Ie.kind,re,Ie.moduleSpecifiers),Ie}function fvs(s,c,g,d,h,_={}){let S=oVe(s.fileName,d),R=_.overrideImportMode??s.impliedNodeFormat;return MPt(c,S,g,d,R,$Ee(h,d,g,s))}function Ivs(s,c,g,d,h,_={},S){let R=oVe(g.fileName,d),T=$Ee(h,d,c,g),O=dN(g)&&F(s,Ie=>F(d.getFileIncludeReasons().get(Pu(Ie.path,d.getCurrentDirectory(),R.getCanonicalFileName)),_e=>{if(_e.kind!==3||_e.file!==g.path)return;let Ee=d.getModeForResolutionAtIndex(g,_e.index),Ne=_.overrideImportMode??d.getDefaultResolutionModeForFile(g);if(Ee!==Ne&&Ee!==void 0&&Ne!==void 0)return;let Te=h1e(g,_e.index).text;return T.relativePreference!==1||!mp(Te)?Te:void 0}));if(O)return{kind:void 0,moduleSpecifiers:[O],computedWithoutCache:!0};let V=zt(s,Ie=>Ie.isInNodeModules),M,ee,re,ge;for(let Ie of s){let _e=Ie.isInNodeModules?YPt(Ie,R,g,d,c,h,void 0,_.overrideImportMode):void 0;if(_e&&!(S&&sVe(_e,T.excludeRegexes))&&(M=Ft(M,_e),Ie.isRedirect))return{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0};let Ee=MPt(Ie.path,R,c,d,_.overrideImportMode||g.impliedNodeFormat,T,Ie.isRedirect||!!_e);!Ee||S&&sVe(Ee,T.excludeRegexes)||(Ie.isRedirect?re=Ft(re,Ee):jh(Ee)?KW(Ee)?ge=Ft(ge,Ee):ee=Ft(ee,Ee):(S||!V||Ie.isInNodeModules)&&(ge=Ft(ge,Ee)))}return ee?.length?{kind:"paths",moduleSpecifiers:ee,computedWithoutCache:!0}:re?.length?{kind:"redirect",moduleSpecifiers:re,computedWithoutCache:!0}:M?.length?{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:ge??E,computedWithoutCache:!0}}function sVe(s,c){return zt(c,g=>{var d;return!!((d=uvs(g))!=null&&d.test(s))})}function oVe(s,c){s=Xc(s,c.getCurrentDirectory());let g=bd(c.useCaseSensitiveFileNames?c.useCaseSensitiveFileNames():!0),d=Mo(s);return{getCanonicalFileName:g,importingSourceFileName:s,sourceDirectory:d,canonicalSourceDirectory:g(d)}}function MPt(s,c,g,d,h,{getAllowedEndingsInPreferredOrder:_,relativePreference:S,excludeRegexes:R},T){let{baseUrl:O,paths:V,rootDirs:M}=g;if(T&&!V)return;let{sourceDirectory:ee,canonicalSourceDirectory:re,getCanonicalFileName:ge}=c,Ie=_(h),_e=M&&Evs(M,s,ee,ge,Ie,g)||e1e(Im(_p(ee,s,ge)),Ie,g);if(!O&&!V&&!$ne(g)||S===0)return T?void 0:_e;let Ee=Xc(SAe(g,d)||O,d.getCurrentDirectory()),Ne=QPt(s,Ee,ge);if(!Ne)return T?void 0:_e;let Te=T?void 0:bvs(s,ee,g,d,h,vvs(Ie)),Ze=T||Te===void 0?V&&Ptn(Ne,V,Ie,Ee,ge,d,g):void 0;if(T)return Ze;let Pe=Te??(Ze===void 0&&O!==void 0?e1e(Ne,Ie,g):Ze);if(!Pe)return _e;let Ke=sVe(_e,R),et=sVe(Pe,R);if(!Ke&&et)return _e;if(Ke&&!et||S===1&&!mp(Pe))return Pe;if(S===3&&!mp(Pe)){let Ye=g.configFilePath?Pu(Mo(g.configFilePath),d.getCurrentDirectory(),c.getCanonicalFileName):c.getCanonicalFileName(d.getCurrentDirectory()),Tt=Pu(s,Ye,ge),at=Ac(re,Ye),Qe=Ac(Tt,Ye);if(at&&!Qe||!at&&Qe)return Pe;let Ct=HPt(d,Mo(Tt)),mt=HPt(d,ee),yt=!N3(d);return hvs(Ct,mt,yt)?_e:Pe}return Ytn(Pe)||aVe(_e)s.fileExists(To(g,"package.json"))?g:void 0)}function Vtn(s,c,g,d,h){var _,S;let R=$D(g),T=g.getCurrentDirectory(),O=g.isSourceOfProjectReferenceRedirect(c)?(_=g.getRedirectFromSourceFile(c))==null?void 0:_.outputDts:void 0,V=Pu(c,T,R),M=g.redirectTargetsMap.get(V)||E,re=[...O?[O]:E,c,...M].map(Ne=>Xc(Ne,T)),ge=!ue(re,_z);if(!d){let Ne=F(re,Te=>!(ge&&_z(Te))&&h(Te,O===Te));if(Ne)return Ne}let Ie=(S=g.getSymlinkCache)==null?void 0:S.call(g).getSymlinkedDirectoriesByRealpath(),_e=Xc(c,T);return Ie&&DN(g,Mo(_e),Ne=>{let Te=Ie.get(Cp(Pu(Ne,T,R)));if(Te)return iv(s,Ne,R)?!1:F(re,Ze=>{if(!iv(Ze,Ne,R))return;let Pe=_p(Ne,Ze,R);for(let Ke of Te){let et=IE(Ke,Pe),Ye=h(et,Ze===O);if(ge=!0,Ye)return Ye}})})||(d?F(re,Ne=>ge&&_z(Ne)?void 0:h(Ne,Ne===O)):void 0)}function Wtn(s,c,g,d,h,_={}){var S;let R=Pu(s.importingSourceFileName,g.getCurrentDirectory(),$D(g)),T=Pu(c,g.getCurrentDirectory(),$D(g)),O=(S=g.getModuleSpecifierCache)==null?void 0:S.call(g);if(O){let M=O.get(R,T,d,_);if(M?.modulePaths)return M.modulePaths}let V=Otn(s,c,g,h,_);return O&&O.setModulePaths(R,T,d,_,V),V}var mvs=["dependencies","peerDependencies","optionalDependencies"];function Cvs(s){let c;for(let g of mvs){let d=s[g];d&&typeof d=="object"&&(c=Nn(c,yg(d)))}return c}function Otn(s,c,g,d,h){var _,S;let R=(_=g.getModuleResolutionCache)==null?void 0:_.call(g),T=(S=g.getSymlinkCache)==null?void 0:S.call(g);if(R&&T&&g.readFile&&!KW(s.importingSourceFileName)){pe.type(g);let ee=Vde(R.getPackageJsonInfoCache(),g,{}),re=Wde(Mo(s.importingSourceFileName),ee);if(re){let ge=Cvs(re.contents.packageJsonContent);for(let Ie of ge||E){let _e=OU(Ie,To(re.packageDirectory,"package.json"),d,g,R,void 0,h.overrideImportMode);T.setSymlinksFromResolution(_e.resolvedModule)}}}let O=new Map,V=!1;Vtn(s.importingSourceFileName,c,g,!0,(ee,re)=>{let ge=KW(ee),Ie=XW(ee);if(!ge&&Ie){let _e=Ie.findPackageLocator(s.importingSourceFileName),Ee=Ie.findPackageLocator(ee);_e&&Ee&&_e!==Ee&&(ge=!0)}O.set(ee,{path:s.getCanonicalFileName(ee),isRedirect:re,isInNodeModules:ge}),V=V||ge});let M=[];for(let ee=s.canonicalSourceDirectory;O.size!==0;){let re=Cp(ee),ge;O.forEach(({path:_e,isRedirect:Ee,isInNodeModules:Ne},Te)=>{Ac(_e,re)&&((ge||(ge=[])).push({path:Te,isRedirect:Ee,isInNodeModules:Ne}),O.delete(Te))}),ge&&(ge.length>1&&ge.sort(Ltn),M.push(...ge));let Ie=Mo(ee);if(Ie===ee)break;ee=Ie}if(O.size){let ee=Do(O.entries(),([re,{isRedirect:ge,isInNodeModules:Ie}])=>({path:re,isRedirect:ge,isInNodeModules:Ie}));ee.length>1&&ee.sort(Ltn),M.push(...ee)}return M}function _vs(s,c){var g;let d=(g=s.declarations)==null?void 0:g.find(S=>one(S)&&(!wF(S)||!Xr(A2(S.name))));if(d)return d.name.text;let _=Xt(s.declarations,S=>{var R,T,O,V;if(!Lh(S))return;let M=Ie(S);if(!((R=M?.parent)!=null&&R.parent&&BN(M.parent)&&c_(M.parent.parent)&&cl(M.parent.parent.parent)))return;let ee=(V=(O=(T=M.parent.parent.symbol.exports)==null?void 0:T.get("export="))==null?void 0:O.valueDeclaration)==null?void 0:V.expression;if(!ee)return;let re=c.getSymbolAtLocation(ee);if(!re)return;if((re?.flags&2097152?c.getAliasedSymbol(re):re)===S.symbol)return M.parent.parent;function Ie(_e){for(;_e.flags&8;)_e=_e.parent;return _e}})[0];if(_)return _.name.text}function Ptn(s,c,g,d,h,_,S){for(let T in c)for(let O of c[T]){let V=su(O),M=QPt(V,d,h)??V,ee=M.indexOf("*"),re=g.map(ge=>({ending:ge,value:e1e(s,[ge],S)}));if(zT(M)&&re.push({ending:void 0,value:s}),ee!==-1){let ge=M.substring(0,ee),Ie=M.substring(ee+1);for(let{ending:_e,value:Ee}of re)if(Ee.length>=ge.length+Ie.length&&Ac(Ee,ge)&&di(Ee,Ie)&&R({ending:_e,value:Ee})){let Ne=Ee.substring(ge.length,Ee.length-Ie.length);if(!mp(Ne))return V3(T,Ne)}}else if(zt(re,ge=>ge.ending!==0&&M===ge.value)||zt(re,ge=>ge.ending===0&&M===ge.value&&R(ge)))return T}function R({ending:T,value:O}){return T!==0||O===e1e(s,[T],S,_)}}function cVe(s,c,g,d,h,_,S,R,T,O){if(typeof _=="string"){let V=!N3(c),M=()=>c.getCommonSourceDirectory(),ee=T&&htt(g,s,V,M),re=T&&Itt(g,s,V,M),ge=Xc(To(d,_),void 0),Ie=Z3(g)?c0(g)+Met(g,s):void 0,_e=O&&FLe(g);switch(R){case 0:if(Ie&&tI(Ie,ge,V)===0||tI(g,ge,V)===0||ee&&tI(ee,ge,V)===0||re&&tI(re,ge,V)===0)return{moduleFileToTry:h};break;case 1:if(_e&&zh(g,ge,V)){let Ze=_p(ge,g,!1);return{moduleFileToTry:Xc(To(To(h,_),Ze),void 0)}}if(Ie&&zh(ge,Ie,V)){let Ze=_p(ge,Ie,!1);return{moduleFileToTry:Xc(To(To(h,_),Ze),void 0)}}if(!_e&&zh(ge,g,V)){let Ze=_p(ge,g,!1);return{moduleFileToTry:Xc(To(To(h,_),Ze),void 0)}}if(ee&&zh(ge,ee,V)){let Ze=_p(ge,ee,!1);return{moduleFileToTry:To(h,Ze)}}if(re&&zh(ge,re,V)){let Ze=a_(_p(ge,re,!1),Pet(re,s));return{moduleFileToTry:To(h,Ze)}}break;case 2:let Ee=ge.indexOf("*"),Ne=ge.slice(0,Ee),Te=ge.slice(Ee+1);if(_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:V3(h,Ze)}}if(Ie&&Ac(Ie,Ne,V)&&di(Ie,Te,V)){let Ze=Ie.slice(Ne.length,Ie.length-Te.length);return{moduleFileToTry:V3(h,Ze)}}if(!_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:V3(h,Ze)}}if(ee&&Ac(ee,Ne,V)&&di(ee,Te,V)){let Ze=ee.slice(Ne.length,ee.length-Te.length);return{moduleFileToTry:V3(h,Ze)}}if(re&&Ac(re,Ne,V)&&di(re,Te,V)){let Ze=re.slice(Ne.length,re.length-Te.length),Pe=V3(h,Ze),Ke=Met(re,s);return Ke?{moduleFileToTry:a_(Pe,Ke)}:void 0}break}}else{if(Array.isArray(_))return F(_,V=>cVe(s,c,g,d,h,V,S,R,T,O));if(typeof _=="object"&&_!==null){for(let V of yg(_))if(V==="default"||S.indexOf(V)>=0||zEe(S,V)){let M=_[V],ee=cVe(s,c,g,d,h,M,S,R,T,O);if(ee)return ee}}}}function yvs(s,c,g,d,h,_,S){return typeof _=="object"&&_!==null&&!Array.isArray(_)&&rVe(_)?F(yg(_),R=>{let T=Xc(To(h,R),void 0),O=di(R,"/")?1:R.includes("*")?2:0;return cVe(s,c,g,d,T,_[R],S,O,!1,!1)}):cVe(s,c,g,d,h,_,S,0,!1,!1)}function bvs(s,c,g,d,h,_){var S,R,T;if(!d.readFile||!$ne(g))return;let O=HPt(d,c);if(!O)return;let V=To(O,"package.json"),M=(R=(S=d.getPackageJsonInfoCache)==null?void 0:S.call(d))==null?void 0:R.getPackageJsonInfo(V);if(bPt(M)||!d.fileExists(V))return;let ee=M?.contents.packageJsonContent||hU(d.readFile(V)),re=ee?.imports;if(!re)return;let ge=UW(g,h);return(T=F(yg(re),Ie=>{if(!Ac(Ie,"#")||Ie==="#"||Ac(Ie,"#/"))return;let _e=di(Ie,"/")?1:Ie.includes("*")?2:0;return cVe(g,d,s,O,Ie,re[Ie],ge,_e,!0,_)}))==null?void 0:T.moduleFileToTry}function Evs(s,c,g,d,h,_){let S=Mtn(c,s,d);if(S===void 0)return;let R=Mtn(g,s,d),T=jt(R,V=>lt(S,M=>Im(_p(V,M,d)))),O=oa(T,oie);if(O)return e1e(O,h,_)}function YPt({path:s,isRedirect:c},{getCanonicalFileName:g,canonicalSourceDirectory:d},h,_,S,R,T,O){if(!_.fileExists||!_.readFile)return;let V=ode(s),M,ee=XW(s);if(ee){let Ze=ee.findPackageLocator(h.fileName),Pe=ee.findPackageLocator(s);if(Ze===Pe)return;if(Ze&&Pe){let Ke=ee.getPackageInformation(Ze);if(Pe.reference===Ke.packageDependencies.get(Pe.name))M=Pe.name;else for(let[et,Ye]of Ke.packageDependencies)if(Array.isArray(Ye)&&Ye[0]===Pe.name&&Ye[1]===Pe.reference){M=et;break}V||(V={topLevelNodeModulesIndex:void 0,topLevelPackageNameIndex:void 0,packageRootIndex:ee.getPackageInformation(Pe).packageLocation.length-1,fileNameIndex:s.lastIndexOf("/")})}}if(!V)return;let ge=$Ee(R,_,S,h).getAllowedEndingsInPreferredOrder(),Ie=s,_e=!1;if(!T){let Ze=V.packageRootIndex,Pe;for(;;){let{moduleFileToTry:Ke,packageRootPath:et,blockedByExports:Ye,verbatimFromExports:Tt}=Te(Ze);if(F_(S)!==1){if(Ye)return;if(Tt)return Ke}if(et){Ie=et,_e=!0;break}if(Pe||(Pe=Ke),Ze=s.indexOf(cg,Ze+1),Ze===-1){Ie=e1e(Pe,ge,S,_);break}}}if(c&&!_e)return;if(typeof process.versions.pnp>"u"){let Ze=_.getGlobalTypingsCacheLocation&&_.getGlobalTypingsCacheLocation(),Pe=g(Ie.substring(0,V.topLevelNodeModulesIndex));if(!(Ac(d,Pe)||Ze&&Ac(g(Ze),Pe)))return}let Ee=typeof M<"u"?M+Ie.substring(V.packageRootIndex):Ie.substring(V.topLevelPackageNameIndex+1),Ne=Ode(Ee);return F_(S)===1&&Ne===Ee?void 0:Ne;function Te(Ze){var Pe,Ke;let et=s.substring(0,Ze),Ye=To(et,"package.json"),Tt=s,at=!1,Qe=(Ke=(Pe=_.getPackageJsonInfoCache)==null?void 0:Pe.call(_))==null?void 0:Ke.getPackageJsonInfo(Ye);if($9e(Qe)||Qe===void 0&&_.fileExists(Ye)){let Ct=Qe?.contents.packageJsonContent||hU(_.readFile(Ye)),mt=O||Het(h,_,S);if(lz(S)){let Lt=et.substring(V.topLevelPackageNameIndex+1),je=Ode(M||Lt),Wt=UW(S,mt),_r=Ct?.exports?yvs(S,_,s,et,je,Ct.exports,Wt):void 0;if(_r)return{..._r,verbatimFromExports:!0};if(Ct?.exports)return{moduleFileToTry:s,blockedByExports:!0}}let yt=Ct?.typesVersions?z9e(Ct.typesVersions):void 0;if(yt){let Lt=s.slice(et.length+1),je=Ptn(Lt,yt.paths,ge,et,g,_,S);je===void 0?at=!0:Tt=To(et,je)}let Rt=Ct?.typings||Ct?.types||Ct?.main||"index.js";if(Xs(Rt)&&!(at&&jbe(pz(yt.paths),Rt))){let Lt=Pu(Rt,et,g),je=g(Tt);if(c0(Lt)===c0(je))return{packageRootPath:et,moduleFileToTry:Tt};if(Ct?.type!=="module"&&!Iu(je,rde)&&Ac(je,Lt)&&Mo(je)===oy(Lt)&&c0(dp(je))==="index")return{packageRootPath:et,moduleFileToTry:Tt}}}else{let Ct=g(Tt.substring(V.packageRootIndex+1));if(Ct==="index.d.ts"||Ct==="index.js"||Ct==="index.ts"||Ct==="index.tsx")return{moduleFileToTry:Tt,packageRootPath:et}}return{moduleFileToTry:Tt}}}function Svs(s,c){if(!s.fileExists)return;let g=Sr(Az({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(let d of g){let h=c+d;if(s.fileExists(h))return h}}function Mtn(s,c,g){return Xt(c,d=>{let h=QPt(s,d,g);return h!==void 0&&Ytn(h)?void 0:h})}function e1e(s,c,g,d){if(Iu(s,[".json",".mjs",".cjs"]))return s;let h=c0(s);if(s===h)return s;let _=c.indexOf(2),S=c.indexOf(3);if(Iu(s,[".mts",".cts"])&&S!==-1&&S<_)return s;if(Iu(s,[".d.mts",".mts",".d.cts",".cts"]))return h+Pet(s,g);if(!Iu(s,[".d.ts"])&&Iu(s,[".ts"])&&s.includes(".d."))return Htn(s);switch(c[0]){case 0:let R=aa(h,"/index");return d&&R!==h&&Svs(d,R)?h:R;case 1:return h;case 2:return h+Pet(s,g);case 3:if(MC(s)){let T=c.findIndex(O=>O===0||O===1);return T!==-1&&T<_?h:h+Pet(s,g)}return s;default:return pe.assertNever(c[0])}}function Htn(s){let c=dp(s);if(!di(s,".ts")||!c.includes(".d.")||Iu(c,[".d.ts"]))return;let g=aie(s,".ts"),d=g.substring(g.lastIndexOf("."));return g.substring(0,g.indexOf(".d."))+d}function Pet(s,c){return Met(s,c)??pe.fail(`Extension ${Iz(s)} is unsupported:: FileName:: ${s}`)}function Met(s,c){let g=zT(s);switch(g){case".ts":case".d.ts":return".js";case".tsx":return c.jsx===1?".jsx":".js";case".js":case".jsx":case".json":return g;case".d.mts":case".mts":case".mjs":return".mjs";case".d.cts":case".cts":case".cjs":return".cjs";default:return}}function QPt(s,c,g){let d=Hf(c,s,c,g,!1);return Up(d)?void 0:d}function Ytn(s){return Ac(s,"..")}function Het(s,c,g){return dN(s)?c.getDefaultResolutionModeForFile(s):TVe(s,g)}function vvs(s){let c=s.indexOf(3);return c>-1&&c(s[s.None=0]="None",s[s.TypeofEQString=1]="TypeofEQString",s[s.TypeofEQNumber=2]="TypeofEQNumber",s[s.TypeofEQBigInt=4]="TypeofEQBigInt",s[s.TypeofEQBoolean=8]="TypeofEQBoolean",s[s.TypeofEQSymbol=16]="TypeofEQSymbol",s[s.TypeofEQObject=32]="TypeofEQObject",s[s.TypeofEQFunction=64]="TypeofEQFunction",s[s.TypeofEQHostObject=128]="TypeofEQHostObject",s[s.TypeofNEString=256]="TypeofNEString",s[s.TypeofNENumber=512]="TypeofNENumber",s[s.TypeofNEBigInt=1024]="TypeofNEBigInt",s[s.TypeofNEBoolean=2048]="TypeofNEBoolean",s[s.TypeofNESymbol=4096]="TypeofNESymbol",s[s.TypeofNEObject=8192]="TypeofNEObject",s[s.TypeofNEFunction=16384]="TypeofNEFunction",s[s.TypeofNEHostObject=32768]="TypeofNEHostObject",s[s.EQUndefined=65536]="EQUndefined",s[s.EQNull=131072]="EQNull",s[s.EQUndefinedOrNull=262144]="EQUndefinedOrNull",s[s.NEUndefined=524288]="NEUndefined",s[s.NENull=1048576]="NENull",s[s.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",s[s.Truthy=4194304]="Truthy",s[s.Falsy=8388608]="Falsy",s[s.IsUndefined=16777216]="IsUndefined",s[s.IsNull=33554432]="IsNull",s[s.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",s[s.All=134217727]="All",s[s.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",s[s.BaseStringFacts=12582401]="BaseStringFacts",s[s.StringStrictFacts=16317953]="StringStrictFacts",s[s.StringFacts=16776705]="StringFacts",s[s.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",s[s.EmptyStringFacts=12582401]="EmptyStringFacts",s[s.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",s[s.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",s[s.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",s[s.BaseNumberFacts=12582146]="BaseNumberFacts",s[s.NumberStrictFacts=16317698]="NumberStrictFacts",s[s.NumberFacts=16776450]="NumberFacts",s[s.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",s[s.ZeroNumberFacts=12582146]="ZeroNumberFacts",s[s.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",s[s.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",s[s.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",s[s.BaseBigIntFacts=12581636]="BaseBigIntFacts",s[s.BigIntStrictFacts=16317188]="BigIntStrictFacts",s[s.BigIntFacts=16775940]="BigIntFacts",s[s.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",s[s.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",s[s.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",s[s.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",s[s.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",s[s.BaseBooleanFacts=12580616]="BaseBooleanFacts",s[s.BooleanStrictFacts=16316168]="BooleanStrictFacts",s[s.BooleanFacts=16774920]="BooleanFacts",s[s.FalseStrictFacts=12121864]="FalseStrictFacts",s[s.FalseFacts=12580616]="FalseFacts",s[s.TrueStrictFacts=7927560]="TrueStrictFacts",s[s.TrueFacts=16774920]="TrueFacts",s[s.SymbolStrictFacts=7925520]="SymbolStrictFacts",s[s.SymbolFacts=16772880]="SymbolFacts",s[s.ObjectStrictFacts=7888800]="ObjectStrictFacts",s[s.ObjectFacts=16736160]="ObjectFacts",s[s.FunctionStrictFacts=7880640]="FunctionStrictFacts",s[s.FunctionFacts=16728e3]="FunctionFacts",s[s.VoidFacts=9830144]="VoidFacts",s[s.UndefinedFacts=26607360]="UndefinedFacts",s[s.NullFacts=42917664]="NullFacts",s[s.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",s[s.EmptyObjectFacts=83886079]="EmptyObjectFacts",s[s.UnknownFacts=83886079]="UnknownFacts",s[s.AllTypeofNE=556800]="AllTypeofNE",s[s.OrFactsMask=8256]="OrFactsMask",s[s.AndFactsMask=134209471]="AndFactsMask",s))(Qet||{}),JPt=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),Xet=(s=>(s[s.Normal=0]="Normal",s[s.Contextual=1]="Contextual",s[s.Inferential=2]="Inferential",s[s.SkipContextSensitive=4]="SkipContextSensitive",s[s.SkipGenericFunctions=8]="SkipGenericFunctions",s[s.IsForSignatureHelp=16]="IsForSignatureHelp",s[s.RestBindingElement=32]="RestBindingElement",s[s.TypeOnly=64]="TypeOnly",s))(Xet||{}),Jet=(s=>(s[s.None=0]="None",s[s.BivariantCallback=1]="BivariantCallback",s[s.StrictCallback=2]="StrictCallback",s[s.IgnoreReturnTypes=4]="IgnoreReturnTypes",s[s.StrictArity=8]="StrictArity",s[s.StrictTopSignature=16]="StrictTopSignature",s[s.Callback=3]="Callback",s))(Jet||{}),Bvs=hh(jtn,Tvs),Uet=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),Ktn=class{};function wvs(){this.flags=0}function id(s){return s.id||(s.id=Xtn,Xtn++),s.id}function xg(s){return s.id||(s.id=Qtn,Qtn++),s.id}function Ket(s,c){let g=XF(s);return g===1||c&&g===2}function UPt(s){var c=[],g=u=>{c.push(u)},d,h,_=WC.getSymbolConstructor(),S=WC.getTypeConstructor(),R=WC.getSignatureConstructor(),T=0,O=0,V=0,M=0,ee=0,re=0,ge,Ie,_e=!1,Ee=$u(),Ne=[1],Te=s.getCompilerOptions(),Ze=Hg(Te),Pe=a0(Te),Ke=!!Te.experimentalDecorators,et=eie(Te),Ye=Wbe(Te),Tt=sQ(Te),at=u_(Te,"strictNullChecks"),Qe=u_(Te,"strictFunctionTypes"),Ct=u_(Te,"strictBindCallApply"),mt=u_(Te,"strictPropertyInitialization"),yt=u_(Te,"strictBuiltinIteratorReturn"),Rt=u_(Te,"noImplicitAny"),Lt=u_(Te,"noImplicitThis"),je=u_(Te,"useUnknownInCatchVariables"),Wt=Te.exactOptionalPropertyTypes,_r=!!Te.noUncheckedSideEffectImports,Gt=g4s(),it=KKs(),Dt=GOe(),tr=q5t(Te,Dt.syntacticBuilderResolver),ur=$Le({evaluateElementAccessExpression:WUs,evaluateEntityNameExpression:j0n}),Gr=$u(),dt=dA(4,"undefined");dt.declarations=[];var pr=dA(1536,"globalThis",8);pr.exports=Gr,pr.declarations=[],Gr.set(pr.escapedName,pr);var ot=dA(4,"arguments"),ir=dA(4,"require"),qt=Te.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",Yt=!Te.verbatimModuleSyntax,Tr,mn,jn=0,Zi,Ns=0,An=gde({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:ot,globals:Gr,getSymbolOfDeclaration:Uo,error:Br,getRequiresScopeChangeCache:OQ,setRequiresScopeChangeCache:Dse,lookup:m_,onPropertyWithInvalidInitializer:Vpe,onFailedToResolveSymbol:qo,onSuccessfullyResolvedSymbol:hy}),si=gde({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:ot,globals:Gr,getSymbolOfDeclaration:Uo,error:Br,getRequiresScopeChangeCache:OQ,setRequiresScopeChangeCache:Dse,lookup:kQs});let ks={getNodeCount:()=>Kl(s.getSourceFiles(),(u,m)=>u+m.nodeCount,0),getIdentifierCount:()=>Kl(s.getSourceFiles(),(u,m)=>u+m.identifierCount,0),getSymbolCount:()=>Kl(s.getSourceFiles(),(u,m)=>u+m.symbolCount,O),getTypeCount:()=>T,getInstantiationCount:()=>V,getRelationCacheSizes:()=>({assignable:A0.size,identity:d0.size,subtype:pk.size,strictSubtype:Sf.size}),isUndefinedSymbol:u=>u===dt,isArgumentsSymbol:u=>u===ot,isUnknownSymbol:u=>u===st,getMergedSymbol:qA,symbolIsValue:qi,getDiagnostics:iyn,getGlobalDiagnostics:uKs,getRecursionIdentity:Hot,getUnmatchedProperties:bKt,getTypeOfSymbolAtLocation:(u,m)=>{let v=eu(m);return v?HHs(u,v):nn},getTypeOfSymbol:fo,getSymbolsOfParameterPropertyDeclaration:(u,m)=>{let v=eu(u,Si);return v===void 0?pe.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(pe.assert(We(v,v.parent)),cK(v,pp(m)))},getDeclaredTypeOfSymbol:Lp,getPropertiesOfType:Zd,getPropertyOfType:(u,m)=>Fg(u,pp(m)),getPrivateIdentifierPropertyOfType:(u,m,v)=>{let D=eu(v);if(!D)return;let W=pp(m),Y=TPe(W,D);return Y?vat(u,Y):void 0},getTypeOfPropertyOfType:(u,m)=>Wi(u,pp(m)),getIndexInfoOfType:(u,m)=>sG(u,m===0?$r:ri),getIndexInfosOfType:f0,getIndexInfosOfIndexSymbol:Cot,getSignaturesOfType:rg,getIndexTypeOfType:(u,m)=>O5(u,m===0?$r:ri),getIndexType:u=>JN(u),getBaseTypes:tT,getBaseTypeOfLiteralType:hZ,getWidenedType:F1,getWidenedLiteralType:J5,fillMissingTypeArguments:k9,getTypeFromTypeNode:u=>{let m=eu(u,uc);return m?tl(m):nn},getParameterType:vR,getParameterIdentifierInfoAtPosition:BXs,getPromisedTypeOfPromise:bSe,getAwaitedType:u=>zq(u),getReturnTypeOfSignature:Ad,isNullableType:wPe,getNullableType:uPe,getNonNullableType:mZ,getNonOptionalType:Jot,getTypeArguments:gf,typeToTypeNode:Dt.typeToTypeNode,typePredicateToTypePredicateNode:Dt.typePredicateToTypePredicateNode,indexInfoToIndexSignatureDeclaration:Dt.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:Dt.signatureToSignatureDeclaration,symbolToEntityName:Dt.symbolToEntityName,symbolToExpression:Dt.symbolToExpression,symbolToNode:Dt.symbolToNode,symbolToTypeParameterDeclarations:Dt.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:Dt.symbolToParameterDeclaration,typeParameterToDeclaration:Dt.typeParameterToDeclaration,getSymbolsInScope:(u,m)=>{let v=eu(u);return v?gKs(v,m):[]},getSymbolAtLocation:u=>{let m=eu(u);return m?Vv(m,!0):void 0},getIndexInfosAtLocation:u=>{let m=eu(u);return m?CKs(m):void 0},getShorthandAssignmentValueSymbol:u=>{let m=eu(u);return m?_Ks(m):void 0},getExportSpecifierLocalTargetSymbol:u=>{let m=eu(u,k0);return m?yKs(m):void 0},getExportSymbolOfSymbol(u){return qA(u.exportSymbol||u)},getTypeAtLocation:u=>{let m=eu(u);return m?$q(m):nn},getTypeOfAssignmentPattern:u=>{let m=eu(u,DY);return m&&tct(m)||nn},getPropertySymbolOfDestructuringAssignment:u=>{let m=eu(u,Ir);return m?bKs(m):void 0},signatureToString:(u,m,v,D)=>mO(u,eu(m),v,D),typeToString:(u,m,v)=>ro(u,eu(m),v),symbolToString:(u,m,v,D)=>xl(u,eu(m),v,D),typePredicateToString:(u,m,v)=>hk(u,eu(m),v),writeSignature:(u,m,v,D,W,Y,oe,Be)=>mO(u,eu(m),v,D,W,Y,oe,Be),writeType:(u,m,v,D,W,Y,oe)=>ro(u,eu(m),v,D,W,Y,oe),writeSymbol:(u,m,v,D,W)=>xl(u,eu(m),v,D,W),writeTypePredicate:(u,m,v,D)=>hk(u,eu(m),v,D),getAugmentedPropertiesOfType:g6t,getRootSymbols:Ayn,getSymbolOfExpando:Dat,getContextualType:(u,m)=>{let v=eu(u,un);if(v)return m&4?ya(v,()=>jy(v,m)):jy(v,m)},getContextualTypeForObjectLiteralElement:u=>{let m=eu(u,ww);return m?qKt(m,void 0):void 0},getContextualTypeForArgumentAtIndex:(u,m)=>{let v=eu(u,SF);return v&&KKt(v,m)},getContextualTypeForJsxAttribute:u=>{let m=eu(u,PJ);return m&&wCn(m,void 0)},isContextSensitive:wS,getTypeOfPropertyOfContextualType:K5,getFullyQualifiedName:b9,getResolvedSignature:(u,m,v)=>Fl(u,m,v,0),getCandidateSignaturesForStringLiteralCompletions:ou,getResolvedSignatureForSignatureHelp:(u,m,v)=>Zn(u,()=>Fl(u,m,v,16)),getExpandedParameters:uIn,hasEffectiveRestParameter:vk,containsArgumentsReference:pUt,getConstantValue:u=>{let m=eu(u,myn);return m?ict(m):void 0},isValidPropertyAccess:(u,m)=>{let v=eu(u,Mre);return!!v&&FQs(v,pp(m))},isValidPropertyAccessForCompletions:(u,m,v)=>{let D=eu(u,jo);return!!D&&i_n(D,m,v)},getSignatureFromDeclaration:u=>{let m=eu(u,Eu);return m?BS(m):void 0},isImplementationOfOverload:u=>{let m=eu(u,Eu);return m?Iyn(m):void 0},getImmediateAliasedSymbol:mat,getAliasedSymbol:JC,getEmitResolver:Lpe,requiresAddingImplicitUndefined:e3e,getExportsOfModule:Tq,getExportsAndPropertiesOfModule:Zse,forEachExportAndPropertyOfModule:Rq,getSymbolWalker:PPt(a3s,xv,Ad,tT,_R,fo,O0,Ky,R0,gf),getAmbientModules:L8s,getJsxIntrinsicTagNamesAt:fQs,isOptionalParameter:u=>{let m=eu(u,Si);return m?O2e(m):!1},tryGetMemberInModuleExports:(u,m)=>hK(pp(u),m),tryGetMemberInModuleExportsAndProperties:(u,m)=>Nq(pp(u),m),tryFindAmbientModule:u=>NIn(u,!0),getApparentType:my,getUnionType:Ha,isTypeAssignableTo:pg,createAnonymousType:Qf,createSignature:QN,createSymbol:dA,createIndexInfo:oG,getAnyType:()=>hr,getStringType:()=>$r,getStringLiteralType:kE,getNumberType:()=>ri,getNumberLiteralType:yR,getBigIntType:()=>oo,getBigIntLiteralType:qOe,getUnknownType:()=>cn,createPromiseType:LPe,createArrayType:I0,getElementTypeOfArrayType:lPe,getBooleanType:()=>Mn,getFalseType:u=>u?Bs:Ys,getTrueType:u=>u?tn:Bn,getVoidType:()=>es,getUndefinedType:()=>wt,getNullType:()=>Hn,getESSymbolType:()=>ci,getNeverType:()=>Oi,getNonPrimitiveType:()=>fs,getOptionalType:()=>In,getPromiseType:()=>XOe(!1),getPromiseLikeType:()=>ehn(!1),getAnyAsyncIterableType:()=>{let u=JOe(!1);if(u!==oi)return gZ(u,[hr,hr,hr])},isSymbolAccessible:hO,isArrayType:Fv,isTupleType:EA,isArrayLikeType:F9,isEmptyAnonymousObjectType:Sk,isTypeInvalidDueToUnionDiscriminant:MPs,getExactOptionalProperties:hMs,getAllPossiblePropertiesOfTypes:HPs,getSuggestedSymbolForNonexistentProperty:g8t,getSuggestedSymbolForNonexistentJSXAttribute:e_n,getSuggestedSymbolForNonexistentSymbol:(u,m,v)=>r_n(u,pp(m),v),getSuggestedSymbolForNonexistentModule:A8t,getSuggestedSymbolForNonexistentClassMember:$Cn,getBaseConstraintOfType:O_,getDefaultFromTypeParameter:u=>u&&u.flags&262144?jQ(u):void 0,resolveName(u,m,v,D){return An(m,pp(u),v,void 0,!1,D)},getJsxNamespace:u=>Bc(Uw(u)),getJsxFragmentFactory:u=>{let m=I6t(u);return m&&Bc(R0(m).escapedText)},getAccessibleSymbolChain:v9,getTypePredicateOfSignature:xv,resolveExternalModuleName:u=>{let m=eu(u,un);return m&&V0(m,m,!0)},resolveExternalModuleSymbol:DE,tryGetThisTypeAt:(u,m,v)=>{let D=eu(u);return D&&QKt(D,m,v)},getTypeArgumentConstraint:u=>{let m=eu(u,uc);return m&&J4s(m)},getSuggestionDiagnostics:(u,m)=>{let v=eu(u,cl)||pe.fail("Could not determine parsed source file.");if(L3(v,Te,s))return E;let D;try{return d=m,l6t(v),pe.assert(!!(sa(v).flags&1)),D=Pr(D,sK.getDiagnostics(v.fileName)),b0n(nyn(v),(W,Y,oe)=>{!EW(W)&&!ryn(Y,!!(W.flags&33554432))&&(D||(D=[])).push({...oe,category:2})}),D||E}finally{d=void 0}},runWithCancellationToken:(u,m)=>{try{return d=u,m(ks)}finally{d=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:Kg,isDeclarationVisible:mk,isPropertyAccessible:p8t,getTypeOnlyAliasDeclaration:IR,getMemberOverrideModifierStatus:TUs,isTypeParameterPossiblyReferenced:tPe,typeHasCallOrConstructSignatures:rct,getSymbolFlags:Xb,getTypeArgumentsForResolvedSignature:Ic,isLibType:Wse};function Ic(u){if(u.mapper!==void 0)return fZ((u.target||u).typeParameters,u.mapper)}function ou(u,m){let v=new Set,D=[];ya(m,()=>Fl(u,D,void 0,0));for(let W of D)v.add(W);D.length=0,Zn(m,()=>Fl(u,D,void 0,0));for(let W of D)v.add(W);return Do(v)}function Zn(u,m){if(u=ji(u,Hre),u){let v=[],D=[];for(;u;){let Y=sa(u);if(v.push([Y,Y.resolvedSignature]),Y.resolvedSignature=void 0,ZF(u)){let oe=fa(Uo(u)),Be=oe.type;D.push([oe,Be]),oe.type=void 0}u=ji(u.parent,Hre)}let W=m();for(let[Y,oe]of v)Y.resolvedSignature=oe;for(let[Y,oe]of D)Y.type=oe;return W}return m()}function ya(u,m){let v=ji(u,SF);if(v){let W=u;do sa(W).skipDirectInference=!0,W=W.parent;while(W&&W!==v)}_e=!0;let D=Zn(u,m);if(_e=!1,v){let W=u;do sa(W).skipDirectInference=void 0,W=W.parent;while(W&&W!==v)}return D}function Fl(u,m,v,D){let W=eu(u,SF);Tr=v;let Y=W?ioe(W,m,D):void 0;return Tr=void 0,Y}var ba=new Map,Oo=new Map,hc=new Map,yr=new Map,hn=new Map,Pi=new Map,co=new Map,pa=new Map,Pa=new Map,$c=new Map,Qu=new Map,Rg=new Map,Cs=new Map,Tu=new Map,Wr=new Map,Wn=[],pt=new Map,on=new Set,st=dA(4,"unknown"),nr=dA(0,"__resolving__"),Zr=new Map,Kr=new Map,Dn=new Set,hr=Vc(1,"any"),En=Vc(1,"any",262144,"auto"),Ni=Vc(1,"any",void 0,"wildcard"),Gi=Vc(1,"any",void 0,"blocked string"),nn=Vc(1,"error"),bn=Vc(1,"unresolved"),ds=Vc(1,"any",65536,"non-inferrable"),Ht=Vc(1,"intrinsic"),cn=Vc(2,"unknown"),wt=Vc(32768,"undefined"),xe=at?wt:Vc(32768,"undefined",65536,"widening"),fr=Vc(32768,"undefined",void 0,"missing"),Ue=Wt?fr:wt,In=Vc(32768,"undefined",void 0,"optional"),Hn=Vc(65536,"null"),Mt=at?Hn:Vc(65536,"null",65536,"widening"),$r=Vc(4,"string"),ri=Vc(8,"number"),oo=Vc(64,"bigint"),Bs=Vc(512,"false",void 0,"fresh"),Ys=Vc(512,"false"),tn=Vc(512,"true",void 0,"fresh"),Bn=Vc(512,"true");tn.regularType=Bn,tn.freshType=tn,Bn.regularType=Bn,Bn.freshType=tn,Bs.regularType=Ys,Bs.freshType=Bs,Ys.regularType=Ys,Ys.freshType=Bs;var Mn=Ha([Ys,Bn]),ci=Vc(4096,"symbol"),es=Vc(16384,"void"),Oi=Vc(131072,"never"),Vn=Vc(131072,"never",262144,"silent"),Ui=Vc(131072,"never",void 0,"implicit"),gs=Vc(131072,"never",void 0,"unreachable"),fs=Vc(67108864,"object"),bi=Ha([$r,ri]),mc=Ha([$r,ri,ci]),Ag=Ha([ri,oo]),dg=Ha([$r,ri,Mn,oo,Hn,wt]),yu=DK(["",""],[ri]),RI=ePe(u=>u.flags&262144?H5s(u):u,()=>"(restrictive mapper)"),pI=ePe(u=>u.flags&262144?Ni:u,()=>"(permissive mapper)"),Ip=Vc(131072,"never",void 0,"unique literal"),kl=ePe(u=>u.flags&262144?Ip:u,()=>"(unique literal mapper)"),bu,sm=ePe(u=>(bu&&(u===bf||u===UI||u===ve)&&bu(!0),u),()=>"(unmeasurable reporter)"),qp=ePe(u=>(bu&&(u===bf||u===UI||u===ve)&&bu(!1),u),()=>"(unreliable reporter)"),Jg=Qf(void 0,Ee,E,E,E),ch=Qf(void 0,Ee,E,E,E);ch.objectFlags|=2048;var mS=Qf(void 0,Ee,E,E,E);mS.objectFlags|=141440;var Au=dA(2048,"__type");Au.members=$u();var Eg=Qf(Au,Ee,E,E,E),zA=Qf(void 0,Ee,E,E,E),NA=at?Ha([wt,Hn,zA]):cn,oi=Qf(void 0,Ee,E,E,E);oi.instantiations=new Map;var tp=Qf(void 0,Ee,E,E,E);tp.objectFlags|=262144;var JI=Qf(void 0,Ee,E,E,E),Wh=Qf(void 0,Ee,E,E,E),HC=Qf(void 0,Ee,E,E,E),bf=Jy(),UI=Jy();UI.constraint=bf;var ve=Jy(),mr=Jy(),ln=Jy();ln.constraint=mr;var ni=P2e(1,"<>",0,hr),Ls=QN(void 0,void 0,void 0,E,hr,void 0,0,0),Za=QN(void 0,void 0,void 0,E,nn,void 0,0,0),Go=QN(void 0,void 0,void 0,E,hr,void 0,0,0),Ss=QN(void 0,void 0,void 0,E,Vn,void 0,0,0),Uc=oG(ri,$r,!0),el=oG($r,hr,!1),Fd=new Map,Vg={get yieldType(){return pe.fail("Not supported")},get returnType(){return pe.fail("Not supported")},get nextType(){return pe.fail("Not supported")}},Ef=NO(hr,hr,hr),om=NO(Vn,Vn,Vn),Sh={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:b3s,getGlobalIterableType:JOe,getGlobalIterableIteratorType:thn,getGlobalIteratorObjectType:S3s,getGlobalGeneratorType:v3s,getGlobalBuiltinIteratorTypes:E3s,resolveIterationType:(u,m)=>zq(u,m,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:Z.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},Zp={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:B3s,getGlobalIterableType:wot,getGlobalIterableIteratorType:rhn,getGlobalIteratorObjectType:T3s,getGlobalGeneratorType:R3s,getGlobalBuiltinIteratorTypes:w3s,resolveIterationType:(u,m)=>u,mustHaveANextMethodDiagnostic:Z.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},lh,B1=new Map,W_=new Map,b2,Pb,or,qn,Js,Yl,DA,kA,AA,ym,lf,fI,KI,E2,I_,YC,w1,py,Bv,uk,Xx,Jx,Mb,rC,AR,CS,WN,ct,en,gi,_i,ys,$s,wa,pc,ll,Fe,gr,Ln,bs,Jl,tg,zl,Su,xf,Ug,QC,T1,_S,wv,$F,d9,Qy,gk,dR,XB,nO,br,sn,ei,is,Qs=new Map,Po=0,Ps=0,ao=0,Yc=!1,ru=0,$a,nu,ul,Gf=[],Hb=[],JB=[],h_=0,UB=[],R1=[],p5=[],ON=0,Ak=[],f5=[],dk=0,Bse=kE(""),Fpe=yR(0),wse=qOe({negative:!1,base10Value:"0"}),Ux=[],I5=[],eK=[],p9=0,tK=!1,dq=0,Zpe=10,rK=[],pq=[],h5=[],Tse=[],nK=[],fq=[],FQ=[],iO=[],Iq=[],hq=[],ZQ=[],sO=[],f9=[],eZ=[],tZ=[],rZ=[],oO=[],m5=[],iK=[],C5=0,PA=NF(),sK=NF(),Rse=p0(),nZ,iZ,pk=new Map,Sf=new Map,A0=new Map,Yb=new Map,d0=new Map,_5=new Map,fy=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",Te.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return jKs(),ks;function fk(u){return!jo(u)||!Ir(u.name)||!jo(u.expression)&&!Ir(u.expression)?!1:Ir(u.expression)?Vo(u.expression)==="Symbol"&&O0(u.expression)===(Kse("Symbol",1160127,void 0)||st):Ir(u.expression.expression)?Vo(u.expression.name)==="Symbol"&&Vo(u.expression.expression)==="globalThis"&&O0(u.expression.expression)===pr:!1}function Xy(u){return u?Wr.get(u):void 0}function KB(u,m){return u&&Wr.set(u,m),m}function Uw(u){if(u){let m=ms(u);if(m)if(Qw(u)){if(m.localJsxFragmentNamespace)return m.localJsxFragmentNamespace;let v=m.pragmas.get("jsxfrag");if(v){let W=Ki(v)?v[0]:v;if(m.localJsxFragmentFactory=Pz(W.arguments.factory,Ze),Mr(m.localJsxFragmentFactory,b5,mC),m.localJsxFragmentFactory)return m.localJsxFragmentNamespace=R0(m.localJsxFragmentFactory).escapedText}let D=I6t(u);if(D)return m.localJsxFragmentFactory=D,m.localJsxFragmentNamespace=R0(D).escapedText}else{let v=y5(m);if(v)return m.localJsxNamespace=v}}return nZ||(nZ="React",Te.jsxFactory?(iZ=Pz(Te.jsxFactory,Ze),Mr(iZ,b5),iZ&&(nZ=R0(iZ).escapedText)):Te.reactNamespace&&(nZ=pp(Te.reactNamespace))),iZ||(iZ=me.createQualifiedName(me.createIdentifier(Bc(nZ)),"createElement")),nZ}function y5(u){if(u.localJsxNamespace)return u.localJsxNamespace;let m=u.pragmas.get("jsx");if(m){let v=Ki(m)?m[0]:m;if(u.localJsxFactory=Pz(v.arguments.factory,Ze),Mr(u.localJsxFactory,b5,mC),u.localJsxFactory)return u.localJsxNamespace=R0(u.localJsxFactory).escapedText}}function b5(u){return GB(u,-1,-1),_s(u,b5,void 0)}function Lpe(u,m,v){return v||iyn(u,m),it}function Nse(u,m,...v){let D=u?ho(u,m,...v):kf(m,...v),W=PA.lookup(D);return W||(PA.add(D),D)}function I9(u,m,v,...D){let W=Br(m,v,...D);return W.skippedOn=u,W}function LQ(u,m,...v){return u?ho(u,m,...v):kf(m,...v)}function Br(u,m,...v){let D=LQ(u,m,...v);return PA.add(D),D}function oK(u){let v=ms(u).fileName;return Iu(v,[".cts",".cjs"])?Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript}function Kx(u,m){u?PA.add(m):sK.add({...m,category:2})}function Kw(u,m,v,...D){if(m.pos<0||m.end<0){if(!u)return;let W=ms(m);Kx(u,"message"in v?rm(W,0,0,v,...D):Ut(W,v));return}Kx(u,"message"in v?ho(m,v,...D):kw(ms(m),m,v))}function h9(u,m,v,...D){let W=Br(u,v,...D);if(m){let Y=ho(u,Z.Did_you_forget_to_use_await);ug(W,Y)}return W}function aO(u,m){let v=Array.isArray(u)?F(u,$h):$h(u);return v&&ug(m,ho(v,Z.The_declaration_was_marked_as_deprecated_here)),sK.add(m),m}function Iy(u){let m=nC(u);return m&&B(u.declarations)>1?m.flags&64?zt(u.declarations,pR):ue(u.declarations,pR):!!u.valueDeclaration&&pR(u.valueDeclaration)||B(u.declarations)&&ue(u.declarations,pR)}function pR(u){return!!(cX(u)&536870912)}function jB(u,m,v){let D=ho(u,Z._0_is_deprecated,v);return aO(m,D)}function E5(u,m,v,D){let W=v?ho(u,Z.The_signature_0_of_1_is_deprecated,D,v):ho(u,Z._0_is_deprecated,D);return aO(m,W)}function dA(u,m,v){O++;let D=new _(u|33554432,m);return D.links=new Ktn,D.links.checkFlags=v||0,D}function yS(u,m){let v=dA(1,u);return v.links.type=m,v}function m9(u,m){let v=dA(4,u);return v.links.type=m,v}function aK(u){let m=0;return u&2&&(m|=111551),u&1&&(m|=111550),u&4&&(m|=0),u&8&&(m|=900095),u&16&&(m|=110991),u&32&&(m|=899503),u&64&&(m|=788872),u&256&&(m|=899327),u&128&&(m|=899967),u&512&&(m|=110735),u&8192&&(m|=103359),u&32768&&(m|=46015),u&65536&&(m|=78783),u&262144&&(m|=526824),u&524288&&(m|=788968),u&2097152&&(m|=2097152),m}function sZ(u,m){m.mergeId||(m.mergeId=Jtn,Jtn++),rK[m.mergeId]=u}function VQ(u){let m=dA(u.flags,u.escapedName);return m.declarations=u.declarations?u.declarations.slice():[],m.parent=u.parent,u.valueDeclaration&&(m.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(m.constEnumOnlyModule=!0),u.members&&(m.members=new Map(u.members)),u.exports&&(m.exports=new Map(u.exports)),sZ(m,u),m}function Tv(u,m,v=!1){if(!(u.flags&aK(m.flags))||(m.flags|u.flags)&67108864){if(m===u)return u;if(!(u.flags&33554432)){let Y=Oh(u);if(Y===st)return m;if(!(Y.flags&aK(m.flags))||(m.flags|Y.flags)&67108864)u=VQ(Y);else return D(u,m),m}m.flags&512&&u.flags&512&&u.constEnumOnlyModule&&!m.constEnumOnlyModule&&(u.constEnumOnlyModule=!1),u.flags|=m.flags,m.valueDeclaration&&W7(u,m.valueDeclaration),Pr(u.declarations,m.declarations),m.members&&(u.members||(u.members=$u()),PN(u.members,m.members,v)),m.exports&&(u.exports||(u.exports=$u()),PN(u.exports,m.exports,v,u)),v||sZ(u,m)}else u.flags&1024?u!==pr&&Br(m.declarations&&fl(m.declarations[0]),Z.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,xl(u)):D(u,m);return u;function D(Y,oe){let Be=!!(Y.flags&384||oe.flags&384),Me=!!(Y.flags&2||oe.flags&2),He=Be?Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Me?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,$e=oe.declarations&&ms(oe.declarations[0]),Vt=Y.declarations&&ms(Y.declarations[0]),kt=ZY($e,Te.checkJs),wr=ZY(Vt,Te.checkJs),dn=xl(oe);if($e&&Vt&&lh&&!Be&&$e!==Vt){let Sn=tI($e.path,Vt.path)===-1?$e:Vt,ii=Sn===$e?Vt:$e,Yi=cr(lh,`${Sn.path}|${ii.path}`,()=>({firstFile:Sn,secondFile:ii,conflictingSymbols:new Map})),js=cr(Yi.conflictingSymbols,dn,()=>({isBlockScoped:Me,firstFileLocations:[],secondFileLocations:[]}));kt||W(js.firstFileLocations,oe),wr||W(js.secondFileLocations,Y)}else kt||jx(oe,He,dn,Y),wr||jx(Y,He,dn,oe)}function W(Y,oe){if(oe.declarations)for(let Be of oe.declarations)Qi(Y,Be)}}function jx(u,m,v,D){F(u.declarations,W=>{S5(W,m,v,D.declarations)})}function S5(u,m,v,D){let W=(QL(u,!1)?Mye(u):fl(u))||u,Y=Nse(W,m,v);for(let oe of D||E){let Be=(QL(oe,!1)?Mye(oe):fl(oe))||oe;if(Be===W)continue;Y.relatedInformation=Y.relatedInformation||[];let Me=ho(Be,Z._0_was_also_declared_here,v),He=ho(Be,Z.and_here);B(Y.relatedInformation)>=5||zt(Y.relatedInformation,$e=>az($e,He)===0||az($e,Me)===0)||ug(Y,B(Y.relatedInformation)?He:Me)}}function C9(u,m){if(!u?.size)return m;if(!m?.size)return u;let v=$u();return PN(v,u),PN(v,m),v}function PN(u,m,v=!1,D){m.forEach((W,Y)=>{let oe=u.get(Y),Be=oe?Tv(oe,W,v):qA(W);D&&oe&&(Be.parent=D),u.set(Y,Be)})}function WQ(u){var m,v,D;let W=u.parent;if(((m=W.symbol.declarations)==null?void 0:m[0])!==W){pe.assert(W.symbol.declarations.length>1);return}if(DB(W))PN(Gr,W.symbol.exports);else{let Y=u.parent.parent.flags&33554432?void 0:Z.Invalid_module_name_in_augmentation_module_0_cannot_be_found,oe=NE(u,u,Y,!1,!0);if(!oe)return;if(oe=DE(oe),oe.flags&1920)if(zt(Pb,Be=>oe===Be.symbol)){let Be=Tv(W.symbol,oe,!0);or||(or=new Map),or.set(u.text,Be)}else{if((v=oe.exports)!=null&&v.get("__export")&&((D=W.symbol.exports)!=null&&D.size)){let Be=$Jt(oe,"resolvedExports");for(let[Me,He]of Do(W.symbol.exports.entries()))Be.has(Me)&&!oe.exports.has(Me)&&Tv(Be.get(Me),He)}Tv(oe,W.symbol)}else Br(u,Z.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,u.text)}}function v5(){let u=dt.escapedName,m=Gr.get(u);m?F(m.declarations,v=>{aQ(v)||PA.add(ho(v,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,Bc(u)))}):Gr.set(u,dt)}function fa(u){if(u.flags&33554432)return u.links;let m=xg(u);return pq[m]??(pq[m]=new Ktn)}function sa(u){let m=id(u);return h5[m]||(h5[m]=new wvs)}function m_(u,m,v){if(v){let D=qA(u.get(m));if(D&&(D.flags&v||D.flags&2097152&&Xb(D)&v))return D}}function cK(u,m){let v=u.parent,D=u.parent.parent,W=m_(v.locals,m,111551),Y=m_(_k(D.symbol),m,111551);return W&&Y?[W,Y]:pe.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function oZ(u,m){let v=ms(u),D=ms(m),W=oS(u);if(v!==D){if(Pe&&(v.externalModuleIndicator||D.externalModuleIndicator)||!Te.outFile||$Y(m)||u.flags&33554432||oe(m,u))return!0;let He=s.getSourceFiles();return He.indexOf(v)<=He.indexOf(D)}if(m.flags&16777216||$Y(m)||RKt(m))return!0;if(u.pos<=m.pos&&!(pi(u)&&pne(m.parent)&&!u.initializer&&!u.exclamationToken)){if(u.kind===209){let He=KL(m,209);return He?ji(He,mg)!==ji(u,mg)||u.pos$e===u?"quit":Un($e)?$e.parent.parent===u:!Ke&&Eo($e)&&($e.parent===u||gu($e.parent)&&$e.parent.parent===u||RJ($e.parent)&&$e.parent.parent===u||pi($e.parent)&&$e.parent.parent===u||Si($e.parent)&&$e.parent.parent.parent===u));return He?!Ke&&Eo(He)?!!ji(m,$e=>$e===He?"quit":Eu($e)&&!HL($e)):!1:!0}else{if(pi(u))return!Me(u,m,!1);if(We(u,u.parent))return!(Ye&&_C(u)===_C(m)&&oe(m,u))}}return!0}if(m.parent.kind===282||m.parent.kind===278&&m.parent.isExportEquals||m.kind===278&&m.isExportEquals)return!0;if(oe(m,u))return Ye&&_C(u)&&(pi(u)||We(u,u.parent))?!Me(u,m,!0):!0;return!1;function Y(He,$e){switch(He.parent.parent.kind){case 244:case 249:case 251:if(jw($e,He,W))return!0;break}let Vt=He.parent.parent;return WL(Vt)&&jw($e,Vt.expression,W)}function oe(He,$e){return Be(He,$e)}function Be(He,$e){return!!ji(He,Vt=>{if(Vt===W)return"quit";if(Eu(Vt))return!HL(Vt);if(dl(Vt))return $e.posHe.end?!1:ji($e,wr=>{if(wr===He)return"quit";switch(wr.kind){case 220:return!0;case 173:return Vt&&(pi(He)&&wr.parent===He.parent||We(He,He.parent)&&wr.parent===He.parent.parent)?"quit":!0;case 242:switch(wr.parent.kind){case 178:case 175:case 179:return!0;default:return!1}default:return!1}})===void 0}}function OQ(u){return sa(u).declarationRequiresScopeChange}function Dse(u,m){sa(u).declarationRequiresScopeChange=m}function Vpe(u,m,v,D){return Ye?!1:(u&&!D&&lK(u,m,m)||Br(u,u&&v.type&&nl(v.type,u.pos)?Z.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Z.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,Md(v.name),RE(m)),!0)}function qo(u,m,v,D){let W=Xs(m)?m:m.escapedText;g(()=>{if(!u||u.parent.kind!==325&&!lK(u,W,m)&&!cO(u)&&!kse(u,W,v)&&!Ik(u,W)&&!uO(u,W,v)&&!fR(u,W,v)&&!mq(u,W,v)){let Y,oe;if(m&&(oe=NQs(m),oe&&Br(u,D,RE(m),oe)),!oe&&dq{var oe;let Be=m.escapedName,Me=D&&cl(D)&&Sl(D);if(u&&(v&2||(v&32||v&384)&&(v&111551)===111551)){let He=fn(m);(He.flags&2||He.flags&32||He.flags&384)&&bS(He,u)}if(Me&&(v&111551)===111551&&!(u.flags&16777216)){let He=qA(m);B(He.declarations)&&ue(He.declarations,$e=>wEe($e)||cl($e)&&!!$e.symbol.globalExports)&&Kw(!Te.allowUmdGlobalAccess,u,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,Bc(Be))}if(W&&!Y&&(v&111551)===111551){let He=qA(Aot(m)),$e=Fw(W);He===Uo(W)?Br(u,Z.Parameter_0_cannot_reference_itself,Md(W.name)):He.valueDeclaration&&He.valueDeclaration.pos>W.pos&&$e.parent.locals&&m_($e.parent.locals,He.escapedName,v)===He&&Br(u,Z.Parameter_0_cannot_reference_identifier_1_declared_after_it,Md(W.name),Md(u))}if(u&&v&111551&&m.flags&2097152&&!(m.flags&111551)&&!e9(u)){let He=IR(m,111551);if(He){let $e=He.kind===282||He.kind===279||He.kind===281?Z._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Vt=Bc(Be);mu(Br(u,$e,Vt),He,Vt)}}if(Te.isolatedModules&&m&&Me&&(v&111551)===111551){let $e=m_(Gr,Be,v)===m&&cl(D)&&D.locals&&m_(D.locals,Be,-111552);if($e){let Vt=(oe=$e.declarations)==null?void 0:oe.find(kt=>kt.kind===277||kt.kind===274||kt.kind===275||kt.kind===272);Vt&&!cN(Vt)&&Br(Vt,Z.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Bc(Be))}}})}function mu(u,m,v){return m?ug(u,ho(m,m.kind===282||m.kind===279||m.kind===281?Z._0_was_exported_here:Z._0_was_imported_here,v)):u}function RE(u){return Xs(u)?Bc(u):Md(u)}function lK(u,m,v){if(!Ir(u)||u.escapedText!==m||syn(u)||$Y(u))return!1;let D=s0(u,!1,!1),W=D;for(;W;){if(xa(W.parent)){let Y=Uo(W.parent);if(!Y)break;let oe=fo(Y);if(Fg(oe,m))return Br(u,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,RE(v),xl(Y)),!0;if(W===D&&!lg(W)){let Be=Lp(Y).thisType;if(Fg(Be,m))return Br(u,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,RE(v)),!0}}W=W.parent}return!1}function cO(u){let m=Fo(u);return m&&NI(m,64,!0)?(Br(u,Z.Cannot_extend_an_interface_0_Did_you_mean_implements,Fp(m)),!0):!1}function Fo(u){switch(u.kind){case 80:case 212:return u.parent?Fo(u.parent):void 0;case 234:if(Hd(u.expression))return u.expression;default:return}}function kse(u,m,v){let D=1920|(Bo(u)?111551:0);if(v===D){let W=Oh(An(u,m,788968&~D,void 0,!1)),Y=u.parent;if(W){if(zi(Y)){pe.assert(Y.left===u,"Should only be resolving left side of qualified name as a namespace");let oe=Y.right.escapedText;if(Fg(Lp(W),oe))return Br(Y,Z.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,Bc(m),Bc(oe)),!0}return Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,Bc(m)),!0}}return!1}function mq(u,m,v){if(v&788584){let D=Oh(An(u,m,111127,void 0,!1));if(D&&!(D.flags&1920))return Br(u,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,Bc(m)),!0}return!1}function L0(u){return u==="any"||u==="string"||u==="number"||u==="boolean"||u==="never"||u==="unknown"}function Ik(u,m){return L0(m)&&u.parent.kind===282?(Br(u,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,m),!0):!1}function fR(u,m,v){if(v&111551){if(L0(m)){let Y=u.parent.parent;if(Y&&Y.parent&&y1(Y)){let oe=Y.token;Y.parent.kind===265&&oe===96?Br(u,Z.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,Bc(m)):xa(Y.parent)&&oe===96?Br(u,Z.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,Bc(m)):xa(Y.parent)&&oe===119&&Br(u,Z.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,Bc(m))}else Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Bc(m));return!0}let D=Oh(An(u,m,788544,void 0,!1)),W=D&&Xb(D);if(D&&W!==void 0&&!(W&111551)){let Y=Bc(m);return uK(m)?Br(u,Z._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,Y):lO(u,D)?Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,Y,Y==="K"?"P":"K"):Br(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Y),!0}}return!1}function lO(u,m){let v=ji(u.parent,D=>Un(D)||ss(D)?!1:bh(D)||"quit");if(v&&v.members.length===1){let D=Lp(m);return!!(D.flags&1048576)&&mSe(D,384,!0)}return!1}function uK(u){switch(u){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function uO(u,m,v){if(v&111127){if(Oh(An(u,m,1024,void 0,!1)))return Br(u,Z.Cannot_use_namespace_0_as_a_value,Bc(m)),!0}else if(v&788544&&Oh(An(u,m,1536,void 0,!1)))return Br(u,Z.Cannot_use_namespace_0_as_a_type,Bc(m)),!0;return!1}function bS(u,m){var v;if(pe.assert(!!(u.flags&2||u.flags&32||u.flags&384)),u.flags&67108881&&u.flags&32)return;let D=(v=u.declarations)==null?void 0:v.find(W=>jJ(W)||xa(W)||W.kind===267);if(D===void 0)return pe.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(D.flags&33554432)&&!oZ(D,m)){let W,Y=Md(fl(D));u.flags&2?W=Br(m,Z.Block_scoped_variable_0_used_before_its_declaration,Y):u.flags&32?W=Br(m,Z.Class_0_used_before_its_declaration,Y):u.flags&256?W=Br(m,Z.Enum_0_used_before_its_declaration,Y):(pe.assert(!!(u.flags&128)),uS(Te)&&(W=Br(m,Z.Enum_0_used_before_its_declaration,Y))),W&&ug(W,ho(D,Z._0_is_declared_here,Y))}}function jw(u,m,v){return!!m&&!!ji(u,D=>D===m||(D===v||Eu(D)&&(!HL(D)||BI(D)&3)?"quit":!1))}function Rv(u){switch(u.kind){case 272:return u;case 274:return u.parent;case 275:return u.parent.parent;case 277:return u.parent.parent.parent;default:return}}function Qb(u){return u.declarations&&be(u.declarations,_9)}function _9(u){return u.kind===272||u.kind===271||u.kind===274&&!!u.name||u.kind===275||u.kind===281||u.kind===277||u.kind===282||u.kind===278&&Dne(u)||po(u)&&oI(u)===2&&Dne(u)||bp(u)&&po(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64&&B5(u.parent.right)||u.kind===305||u.kind===304&&B5(u.initializer)||u.kind===261&&TW(u)||u.kind===209&&TW(u.parent.parent)}function B5(u){return hAe(u)||jA(u)&&jN(u)}function Cq(u,m){let v=bq(u);if(v){let W=_U(v.expression).arguments[0];return Ir(v.name)?Oh(Fg(DIn(W),v.name.escapedText)):void 0}if(nc(u)||u.moduleReference.kind===284){let W=V0(u,Pye(u)||F7(u)),Y=DE(W);if(Y&&102<=Pe&&Pe<=199){let oe=PQ(Y,"module.exports",u,m);if(oe)return oe}return Nv(u,W,Y,!1),Y}let D=fO(u.moduleReference,m);return w5(u,D),D}function w5(u,m){if(Nv(u,void 0,m,!1)&&!u.isTypeOnly){let v=IR(Uo(u)),D=v.kind===282||v.kind===279,W=D?Z.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Z.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,Y=D?Z._0_was_exported_here:Z._0_was_imported_here,oe=v.kind===279?"*":KD(v.name);ug(Br(u.moduleReference,W),ho(v,Y,oe))}}function gO(u,m,v,D){let W=u.exports.get("export="),Y=W?Fg(fo(W),m,!0):u.exports.get(m),oe=Oh(Y,D);return Nv(v,Y,oe,!1),oe}function _q(u){return yf(u)&&!u.isExportEquals||Ga(u,2048)||k0(u)||ak(u)}function aZ(u){return _A(u)?s.getEmitSyntaxForUsageLocation(ms(u),u):void 0}function MN(u,m){return u===99&&m===1}function AO(u,m){if(100<=Pe&&Pe<=199&&aZ(u)===99){m??(m=V0(u,u,!0));let D=m&&KJ(m);return D&&(Zu(D)||G9e(D.fileName)===".d.json.ts")}return!1}function T5(u,m,v,D){let W=u&&aZ(D);if(u&&W!==void 0){let Y=s.getImpliedNodeFormatForEmit(u);if(W===99&&Y===1&&100<=Pe&&Pe<=199)return!0;if(W===99&&Y===99)return!1}if(!Tt)return!1;if(!u||u.isDeclarationFile){let Y=gO(m,"default",void 0,!0);return!(Y&&zt(Y.declarations,_q)||gO(m,pp("__esModule"),void 0,v))}return o0(u)?typeof u.externalModuleIndicator!="object"&&!gO(m,pp("__esModule"),void 0,v):qw(m)}function y9(u,m){let v=V0(u,u.parent.moduleSpecifier);if(v)return dO(v,u,m)}function dO(u,m,v){var D;let W=(D=u.declarations)==null?void 0:D.find(cl),Y=zw(m),oe,Be;if(MY(u))oe=u;else if(W&&Y&&102<=Pe&&Pe<=199&&aZ(Y)===1&&s.getImpliedNodeFormatForEmit(W)===99&&(Be=gO(u,"module.exports",m,v))){if(!Vw(Te)){Br(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,xl(u),"esModuleInterop");return}return Nv(m,Be,void 0,!1),Be}else oe=gO(u,"default",m,v);if(!Y)return oe;let Me=AO(Y,u),He=T5(W,u,v,Y);if(!oe&&!He&&!Me)if(qw(u)&&!Tt){let $e=Pe>=5?"allowSyntheticDefaultImports":"esModuleInterop",kt=u.exports.get("export=").valueDeclaration,wr=Br(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,xl(u),$e);kt&&ug(wr,ho(kt,Z.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,$e))}else Yw(m)?cZ(u,m):gK(u,u,m,sS(m)&&m.propertyName||m.name);else if(He||Me){let $e=DE(u,v)||Oh(u,v);return Nv(m,u,$e,!1),$e}return Nv(m,oe,void 0,!1),oe}function zw(u){switch(u.kind){case 274:return u.parent.moduleSpecifier;case 272:return HF(u.moduleReference)?u.moduleReference.expression:void 0;case 275:return u.parent.parent.moduleSpecifier;case 277:return u.parent.parent.parent.moduleSpecifier;case 282:return u.parent.parent.moduleSpecifier;default:return pe.assertNever(u)}}function cZ(u,m){var v,D,W;if((v=u.exports)!=null&&v.has(m.symbol.escapedName))Br(m.name,Z.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,xl(u),xl(m.symbol));else{let Y=Br(m.name,Z.Module_0_has_no_default_export,xl(u)),oe=(D=u.exports)==null?void 0:D.get("__export");if(oe){let Be=(W=oe.declarations)==null?void 0:W.find(Me=>{var He,$e;return!!(Vh(Me)&&Me.moduleSpecifier&&(($e=(He=V0(Me,Me.moduleSpecifier))==null?void 0:He.exports)!=null&&$e.has("default")))});Be&&ug(Y,ho(Be,Z.export_Asterisk_does_not_re_export_a_default))}}}function zx(u,m){let v=u.parent.parent.moduleSpecifier,D=V0(u,v),W=eG(D,v,m,!1);return Nv(u,D,W,!1),W}function pO(u,m){let v=u.parent.moduleSpecifier,D=v&&V0(u,v),W=v&&eG(D,v,m,!1);return Nv(u,D,W,!1),W}function XC(u,m){if(u===st&&m===st)return st;if(u.flags&790504)return u;let v=dA(u.flags|m.flags,u.escapedName);return pe.assert(u.declarations||m.declarations),v.declarations=no(Nn(u.declarations,m.declarations),bg),v.parent=u.parent||m.parent,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration),m.members&&(v.members=new Map(m.members)),u.exports&&(v.exports=new Map(u.exports)),v}function PQ(u,m,v,D){var W;if(u.flags&1536){let Y=N1(u).get(m),oe=Oh(Y,D),Be=(W=fa(u).typeOnlyExportStarMap)==null?void 0:W.get(m);return Nv(v,Y,oe,!1,Be,m),oe}}function qx(u,m){if(u.flags&3){let v=u.valueDeclaration.type;if(v)return Oh(Fg(tl(v),m))}}function R5(u,m,v=!1){var D;let W=Pye(u)||u.moduleSpecifier,Y=V0(u,W),oe=!jo(m)&&m.propertyName||m.name;if(!Ir(oe)&&oe.kind!==11)return;let Be=BF(oe),He=eG(Y,W,!1,Be==="default"&&Tt);if(He&&(Be||oe.kind===11)){if(MY(Y))return Y;let $e;Y&&Y.exports&&Y.exports.get("export=")?$e=Fg(fo(He),Be,!0):$e=qx(He,Be),$e=Oh($e,v);let Vt=PQ(He,Be,m,v);if(Vt===void 0&&Be==="default"){let wr=(D=Y.declarations)==null?void 0:D.find(cl);(AO(W,Y)||T5(wr,Y,v,W))&&(Vt=DE(Y,v)||Oh(Y,v))}let kt=Vt&&$e&&Vt!==$e?XC($e,Vt):Vt||$e;return sS(m)&&AO(W,Y)&&Be!=="default"?Br(oe,Z.Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0,tv[Pe]):kt||gK(Y,He,u,oe),kt}}function gK(u,m,v,D){var W;let Y=b9(u,v),oe=Md(D),Be=Ir(D)?A8t(D,m):void 0;if(Be!==void 0){let Me=xl(Be),He=Br(D,Z._0_has_no_exported_member_named_1_Did_you_mean_2,Y,oe,Me);Be.valueDeclaration&&ug(He,ho(Be.valueDeclaration,Z._0_is_declared_here,Me))}else(W=u.exports)!=null&&W.has("default")?Br(D,Z.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,Y,oe):$x(v,D,oe,u,Y)}function $x(u,m,v,D,W){var Y,oe;let Be=(oe=(Y=Gs(D.valueDeclaration,HI))==null?void 0:Y.locals)==null?void 0:oe.get(BF(m)),Me=D.exports;if(Be){let He=Me?.get("export=");if(He)vt(He,Be)?xse(u,m,v,W):Br(m,Z.Module_0_has_no_exported_member_1,W,v);else{let $e=Me?de(dUt(Me),kt=>!!vt(kt,Be)):void 0,Vt=$e?Br(m,Z.Module_0_declares_1_locally_but_it_is_exported_as_2,W,v,xl($e)):Br(m,Z.Module_0_declares_1_locally_but_it_is_not_exported,W,v);Be.declarations&&ug(Vt,...lt(Be.declarations,(kt,wr)=>ho(kt,wr===0?Z._0_is_declared_here:Z.and_here,v)))}}else Br(m,Z.Module_0_has_no_exported_member_1,W,v)}function xse(u,m,v,D){if(Pe>=5){let W=Vw(Te)?Z._0_can_only_be_imported_by_using_a_default_import:Z._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Br(m,W,v)}else if(Bo(u)){let W=Vw(Te)?Z._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Z._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Br(m,W,v)}else{let W=Vw(Te)?Z._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Z._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Br(m,W,v,v,D)}}function yq(u,m){if(dy(u)&&pv(u.propertyName||u.name)){let oe=zw(u),Be=oe&&V0(u,oe);if(Be)return dO(Be,u,m)}let v=mg(u)?Fw(u):u.parent.parent.parent,D=bq(v),W=R5(v,D||u,m),Y=u.propertyName||u.name;return D&&W&&Ir(Y)?Oh(Fg(fo(W),Y.escapedText),m):(Nv(u,void 0,W,!1),W)}function bq(u){if(nc(u)&&u.initializer&&jo(u.initializer))return u.initializer}function Wpe(u,m){if(bE(u.parent)){let v=DE(u.parent.symbol,m);return Nv(u,void 0,v,!1),v}}function Eq(u,m,v){let D=u.propertyName||u.name;if(pv(D)){let Y=zw(u),oe=Y&&V0(u,Y);if(oe)return dO(oe,u,!!v)}let W=u.parent.parent.moduleSpecifier?R5(u.parent.parent,u,v):D.kind===11?void 0:NI(D,m,!1,v);return Nv(u,void 0,W,!1),W}function N5(u,m){let v=yf(u)?u.expression:u.right,D=lZ(v,m);return Nv(u,void 0,D,!1),D}function lZ(u,m){if(wd(u))return DI(u).symbol;if(!mC(u)&&!Hd(u))return;let v=NI(u,901119,!0,m);return v||(DI(u),sa(u).resolvedSymbol)}function Gse(u,m){if(po(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64)return lZ(u.parent.right,m)}function D5(u,m=!1){switch(u.kind){case 272:case 261:return Cq(u,m);case 274:return y9(u,m);case 275:return zx(u,m);case 281:return pO(u,m);case 277:case 209:return yq(u,m);case 282:return Eq(u,901119,m);case 278:case 227:return N5(u,m);case 271:return Wpe(u,m);case 305:return NI(u.name,901119,!0,m);case 304:return lZ(u.initializer,m);case 213:case 212:return Gse(u,m);default:return pe.fail()}}function AK(u,m=901119){return u?(u.flags&(2097152|m))===2097152||!!(u.flags&2097152&&u.flags&67108864):!1}function Oh(u,m){return!m&&AK(u)?JC(u):u}function JC(u){pe.assert((u.flags&2097152)!==0,"Should only get Alias here.");let m=fa(u);if(m.aliasTarget)m.aliasTarget===nr&&(m.aliasTarget=st);else{m.aliasTarget=nr;let v=Qb(u);if(!v)return pe.fail();let D=D5(v);m.aliasTarget===nr?m.aliasTarget=D||st:Br(v,Z.Circular_definition_of_import_alias_0,xl(u))}return m.aliasTarget}function Sq(u){if(fa(u).aliasTarget!==nr)return JC(u)}function Xb(u,m,v){let D=m&&IR(u),W=D&&Vh(D),Y=D&&(W?V0(D.moduleSpecifier,D.moduleSpecifier,!0):JC(D.symbol)),oe=W&&Y?HN(Y):void 0,Be=v?0:u.flags,Me;for(;u.flags&2097152;){let He=fn(JC(u));if(!W&&He===Y||oe?.get(He.escapedName)===He)break;if(He===st)return-1;if(He===u||Me?.has(He))break;He.flags&2097152&&(Me?Me.add(He):Me=new Set([u,He])),Be|=He.flags,u=He}return Be}function Nv(u,m,v,D,W,Y){if(!u||jo(u))return!1;let oe=Uo(u);if(lN(u)){let Me=fa(oe);return Me.typeOnlyDeclaration=u,!0}if(W){let Me=fa(oe);return Me.typeOnlyDeclaration=W,oe.escapedName!==Y&&(Me.typeOnlyExportStarName=Y),!0}let Be=fa(oe);return MQ(Be,m,D)||MQ(Be,v,D)}function MQ(u,m,v){var D;if(m&&(u.typeOnlyDeclaration===void 0||v&&u.typeOnlyDeclaration===!1)){let W=((D=m.exports)==null?void 0:D.get("export="))??m,Y=W.declarations&&de(W.declarations,lN);u.typeOnlyDeclaration=Y??fa(W).typeOnlyDeclaration??!1}return!!u.typeOnlyDeclaration}function IR(u,m){var v;if(!(u.flags&2097152))return;let D=fa(u);if(D.typeOnlyDeclaration===void 0){D.typeOnlyDeclaration=!1;let W=Oh(u);Nv((v=u.declarations)==null?void 0:v[0],Qb(u)&&mat(u),W,!0)}if(m===void 0)return D.typeOnlyDeclaration||void 0;if(D.typeOnlyDeclaration){let W=D.typeOnlyDeclaration.kind===279?Oh(HN(D.typeOnlyDeclaration.symbol.parent).get(D.typeOnlyExportStarName||u.escapedName)):JC(D.typeOnlyDeclaration.symbol);return Xb(W)&m?D.typeOnlyDeclaration:void 0}}function fO(u,m){return u.kind===80&&ez(u)&&(u=u.parent),u.kind===80||u.parent.kind===167?NI(u,1920,!1,m):(pe.assert(u.parent.kind===272),NI(u,901119,!1,m))}function b9(u,m){return u.parent?b9(u.parent,m)+"."+xl(u):xl(u,m,void 0,36)}function vq(u){for(;zi(u.parent);)u=u.parent;return u}function Ope(u){let m=R0(u),v=An(m,m,111551,void 0,!0);if(v){for(;zi(m.parent);){let D=fo(v);if(v=Fg(D,m.parent.right.escapedText),!v)return;m=m.parent}return v}}function NI(u,m,v,D,W){if(af(u))return;let Y=1920|(Bo(u)?m&111551:0),oe;if(u.kind===80){let Be=m===Y||ap(u)?Z.Cannot_find_namespace_0:Dmn(R0(u)),Me=Bo(u)&&!ap(u)?Fse(u,m):void 0;if(oe=qA(An(W||u,u,m,v||Me?void 0:Be,!0,!1)),!oe)return qA(Me)}else if(u.kind===167||u.kind===212){let Be=u.kind===167?u.left:u.expression,Me=u.kind===167?u.right:u.name,He=NI(Be,Y,v,!1,W);if(!He||af(Me))return;if(He===st)return He;if(He.valueDeclaration&&Bo(He.valueDeclaration)&&F_(Te)!==100&&nc(He.valueDeclaration)&&He.valueDeclaration.initializer&&w_n(He.valueDeclaration.initializer)){let $e=He.valueDeclaration.initializer.arguments[0],Vt=V0($e,$e);if(Vt){let kt=DE(Vt);kt&&(He=kt)}}if(oe=qA(m_(N1(He),Me.escapedText,m)),!oe&&He.flags&2097152&&(oe=qA(m_(N1(JC(He)),Me.escapedText,m))),!oe){if(!v){let $e=b9(He),Vt=Md(Me),kt=A8t(Me,He);if(kt){Br(Me,Z._0_has_no_exported_member_named_1_Did_you_mean_2,$e,Vt,xl(kt));return}let wr=zi(u)&&vq(u);if(qn&&m&788968&&wr&&!vN(wr.parent)&&Ope(wr)){Br(wr,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,ly(wr));return}if(m&1920&&zi(u.parent)){let Sn=qA(m_(N1(He),Me.escapedText,788968));if(Sn){Br(u.parent.right,Z.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,xl(Sn),Bc(u.parent.right.escapedText));return}}Br(Me,Z.Namespace_0_has_no_exported_member_1,$e,Vt)}return}}else pe.assertNever(u,"Unknown entity name kind.");return!ap(u)&&mC(u)&&(oe.flags&2097152||u.parent.kind===278)&&Nv(zye(u),oe,void 0,!0),oe.flags&m||D?oe:JC(oe)}function Fse(u,m){if(Sot(u.parent)){let v=dK(u.parent);if(v)return An(v,u,m,void 0,!0)}}function dK(u){if(ji(u,W=>m3(W)||W.flags&16777216?lS(W):"quit"))return;let v=DW(u);if(v&&PC(v)&&Sne(v.expression)){let W=Uo(v.expression.left);if(W)return HQ(W)}if(v&&jA(v)&&Sne(v.parent)&&PC(v.parent.parent)){let W=Uo(v.parent.left);if(W)return HQ(W)}if(v&&(g2(v)||Cm(v))&&po(v.parent.parent)&&oI(v.parent.parent)===6){let W=Uo(v.parent.parent.left);if(W)return HQ(W)}let D=JL(u);if(D&&Eu(D)){let W=Uo(D);return W&&W.valueDeclaration}}function HQ(u){let m=u.parent.valueDeclaration;return m?(L7(m)?JY(m):d1(m)?V7(m):void 0)||m:void 0}function Bq(u){let m=u.valueDeclaration;if(!m||!Bo(m)||u.flags&524288||QL(m,!1))return;let v=nc(m)?V7(m):JY(m);if(v){let D=ES(v);if(D)return b8t(D,u)}}function V0(u,m,v){let W=F_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations;return NE(u,m,v?void 0:W,v)}function NE(u,m,v,D=!1,W=!1){return _A(m)?pK(u,m.text,v,D?void 0:m,W):void 0}function pK(u,m,v,D,W=!1){var Y,oe,Be,Me,He,$e,Vt,kt,wr,dn,Sn,ii;if(D&&Ac(m,"@types/")){let Kc=Z.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Vu=Gm(m,"@types/");Br(D,Kc,Vu,m)}let Yi=NIn(m,!0);if(Yi)return Yi;let js=ms(u),mo=_A(u)?u:((Y=Lh(u)?u:u.parent&&Lh(u.parent)&&u.parent.name===u?u.parent:void 0)==null?void 0:Y.name)||((oe=Fy(u)?u:void 0)==null?void 0:oe.argument.literal)||(nc(u)&&u.initializer&&uy(u.initializer,!0)?u.initializer.arguments[0]:void 0)||((Be=ji(u,jp))==null?void 0:Be.arguments[0])||((Me=ji(u,Qp(Yf,NN,Vh)))==null?void 0:Me.moduleSpecifier)||((He=ji(u,YL))==null?void 0:He.moduleReference.expression),Ji=mo&&_A(mo)?s.getModeForUsageLocation(js,mo):s.getDefaultResolutionModeForFile(js),Mi=F_(Te),wo=($e=s.getResolvedModule(js,m,Ji))==null?void 0:$e.resolvedModule,Ka=D&&wo&&Wtt(Te,wo,js),_l=wo&&(!Ka||Ka===Z.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&s.getSourceFile(wo.resolvedFileName);if(_l){if(Ka&&Br(D,Ka,m,wo.resolvedFileName),wo.resolvedUsingTsExtension&&MC(m)){let Kc=((Vt=ji(u,Yf))==null?void 0:Vt.importClause)||ji(u,Qp(Zm,Vh));(D&&Kc&&!Kc.isTypeOnly||ji(u,jp))&&Br(D,Z.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,ka(pe.checkDefined(rz(m))))}else if(wo.resolvedUsingTsExtension&&!Xie(Te,js.fileName)){let Kc=((kt=ji(u,Yf))==null?void 0:kt.importClause)||ji(u,Qp(Zm,Vh));if(D&&!(Kc?.isTypeOnly||ji(u,qm))){let Vu=pe.checkDefined(rz(m));Br(D,Z.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Vu)}}else if(Te.rewriteRelativeImportExtensions&&!(u.flags&33554432)&&!MC(m)&&!Fy(u)&&!Ege(u)){let Kc=vne(m,Te);if(!wo.resolvedUsingTsExtension&&Kc)Br(D,Z.This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0,c1(Xc(js.fileName,s.getCurrentDirectory()),wo.resolvedFileName,$D(s)));else if(wo.resolvedUsingTsExtension&&!Kc&&xW(_l,s))Br(D,Z.This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path,fE(m));else if(wo.resolvedUsingTsExtension&&Kc){let Vu=(wr=s.getRedirectFromSourceFile(_l.path))==null?void 0:wr.resolvedRef;if(Vu){let dd=!s.useCaseSensitiveFileNames(),Vl=s.getCommonSourceDirectory(),vf=HU(Vu.commandLine,dd),zI=_p(Vl,vf,dd),P0=_p(Te.outDir||Vl,Vu.commandLine.options.outDir||vf,dd);zI!==P0&&Br(D,Z.This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files)}}}if(_l.symbol){if(D&&wo.isExternalLibraryImport&&!fz(wo.extension)&&k5(!1,D,js,Ji,wo,m),D&&(Pe===100||Pe===101)){let Kc=js.impliedNodeFormat===1&&!ji(u,jp)||!!ji(u,Zm),Vu=ji(u,dd=>qm(dd)||Vh(dd)||Yf(dd)||NN(dd));if(Kc&&_l.impliedNodeFormat===99&&!zLe(Vu))if(ji(u,Zm))Br(D,Z.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,m);else{let dd,Vl=zT(js.fileName);(Vl===".ts"||Vl===".js"||Vl===".tsx"||Vl===".jsx")&&(dd=S7(js));let vf=Vu?.kind===273&&((dn=Vu.importClause)!=null&&dn.isTypeOnly)?Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Vu?.kind===206?Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Z.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;PA.add(kw(ms(D),D,wu(dd,vf,m)))}}return qA(_l.symbol)}D&&v&&!cEe(D)&&Br(D,Z.File_0_is_not_a_module,_l.fileName);return}if(Pb){let Kc=XA(Pb,Vu=>Vu.pattern,m);if(Kc){let Vu=or&&or.get(m);return qA(Vu||Kc.symbol)}}if(!D)return;if(wo&&!fz(wo.extension)&&Ka===void 0||Ka===Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(W){let Kc=Z.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;Br(D,Kc,m,wo.resolvedFileName)}else k5(Rt&&!!v,D,js,Ji,wo,m);return}if(v){if(wo){let Kc=s.getRedirectFromSourceFile(wo.resolvedFileName);if(Kc?.outputDts){Br(D,Z.Output_file_0_has_not_been_built_from_source_file_1,Kc.outputDts,wo.resolvedFileName);return}}if(Ka)Br(D,Ka,m,wo.resolvedFileName);else{let Kc=mp(m)&&!B0(m),Vu=Mi===3||Mi===99;if(!WW(Te)&&lA(m,".json")&&Mi!==1&&QAe(Te))Br(D,Z.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,m);else if(Ji===99&&Vu&&Kc){let dd=Xc(m,Mo(js.path)),Vl=(Sn=fy.find(([vf,zI])=>s.fileExists(dd+vf)))==null?void 0:Sn[1];Vl?Br(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,m+Vl):Br(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else if((ii=s.getResolvedModule(js,m,Ji))!=null&&ii.alternateResult){let dd=XJ(js,s,m,Ji,m);Kw(!0,D,wu(dd,v,m))}else Br(D,v,m)}}return;function ka(Kc){let Vu=aie(m,Kc);if(tie(Pe)||Ji===99){let dd=MC(m)&&Xie(Te);return Vu+(Kc===".mts"||Kc===".d.mts"?dd?".mts":".mjs":Kc===".cts"||Kc===".d.mts"?dd?".cts":".cjs":dd?".ts":".js")}return Vu}}function k5(u,m,v,D,{packageId:W,resolvedFileName:Y},oe){if(cEe(m))return;let Be;!Xr(oe)&&W&&(Be=XJ(v,s,oe,D,W.name)),Kw(u,m,wu(Be,Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,oe,Y))}function DE(u,m){if(u?.exports){let v=Oh(u.exports.get("export="),m),D=fK(qA(v),qA(u));return qA(D)||u}}function fK(u,m){if(!u||u===st||u===m||m.exports.size===1||u.flags&2097152)return u;let v=fa(u);if(v.cjsExportMerged)return v.cjsExportMerged;let D=u.flags&33554432?u:VQ(u);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=$u()),m.exports.forEach((W,Y)=>{Y!=="export="&&D.exports.set(Y,D.exports.has(Y)?Tv(D.exports.get(Y),W):W)}),D===u&&(fa(D).resolvedExports=void 0,fa(D).resolvedMembers=void 0),fa(D).cjsExportMerged=D,v.cjsExportMerged=D}function eG(u,m,v,D){var W;let Y=DE(u,v);if(!v&&Y){if(!D&&!(Y.flags&1539)&&!yp(Y,308)){let Me=Pe>=5?"allowSyntheticDefaultImports":"esModuleInterop";return Br(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,Me),Y}let oe=m.parent,Be=Yf(oe)&&aU(oe);if(Be||jp(oe)){let Me=jp(oe)?oe.arguments[0]:oe.moduleSpecifier,He=fo(Y),$e=v_n(He,Y,u,Me);if($e)return IK(Y,$e,oe);let Vt=(W=u?.declarations)==null?void 0:W.find(cl),kt=aZ(Me),wr;if(Be&&Vt&&102<=Pe&&Pe<=199&&kt===1&&s.getImpliedNodeFormatForEmit(Vt)===99&&(wr=gO(Y,"module.exports",Be,v)))return!D&&!(Y.flags&1539)&&Br(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,"esModuleInterop"),Vw(Te)&&wq(He)?IK(wr,He,oe):wr;let dn=Vt&&MN(kt,s.getImpliedNodeFormatForEmit(Vt));if((Vw(Te)||dn)&&(wq(He)||Fg(He,"default",!0)||dn)){let Sn=He.flags&3670016?B_n(He,Y,u,Me):E8t(Y,Y.parent);return IK(Y,Sn,oe)}}}return Y}function wq(u){return zt(HOe(u,0))||zt(HOe(u,1))}function IK(u,m,v){let D=dA(u.flags,u.escapedName);D.declarations=u.declarations?u.declarations.slice():[],D.parent=u.parent,D.links.target=u,D.links.originatingImport=v,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),u.members&&(D.members=new Map(u.members)),u.exports&&(D.exports=new Map(u.exports));let W=_R(m);return D.links.type=Qf(D,W.members,E,E,W.indexInfos),D}function qw(u){return u.exports.get("export=")!==void 0}function Tq(u){return dUt(HN(u))}function Zse(u){let m=Tq(u),v=DE(u);if(v!==u){let D=fo(v);E9(D)&&Pr(m,Zd(D))}return m}function Rq(u,m){HN(u).forEach((W,Y)=>{F5(Y)||m(W,Y)});let D=DE(u);if(D!==u){let W=fo(D);E9(W)&&PPs(W,(Y,oe)=>{m(Y,oe)})}}function hK(u,m){let v=HN(m);if(v)return v.get(u)}function Nq(u,m){let v=hK(u,m);if(v)return v;let D=DE(m);if(D===m)return;let W=fo(D);return E9(W)?Fg(W,u):void 0}function E9(u){return!(u.flags&402784252||la(u)&1||Fv(u)||EA(u))}function N1(u){return u.flags&6256?$Jt(u,"resolvedExports"):u.flags&1536?HN(u):u.exports||Ee}function HN(u){let m=fa(u);if(!m.resolvedExports){let{exports:v,typeOnlyExportStarMap:D}=CK(u);m.resolvedExports=v,m.typeOnlyExportStarMap=D}return m.resolvedExports}function mK(u,m,v,D){m&&m.forEach((W,Y)=>{if(Y==="default")return;let oe=u.get(Y);if(!oe)u.set(Y,W),v&&D&&v.set(Y,{specifierText:Fp(D.moduleSpecifier)});else if(v&&D&&oe&&Oh(oe)!==Oh(W)){let Be=v.get(Y);Be.exportsWithDuplicate?Be.exportsWithDuplicate.push(D):Be.exportsWithDuplicate=[D]}})}function CK(u){let m=[],v,D=new Set;u=DE(u);let W=Y(u)||Ee;return v&&D.forEach(oe=>v.delete(oe)),{exports:W,typeOnlyExportStarMap:v};function Y(oe,Be,Me){if(!Me&&oe?.exports&&oe.exports.forEach((Vt,kt)=>D.add(kt)),!(oe&&oe.exports&&Qi(m,oe)))return;let He=new Map(oe.exports),$e=oe.exports.get("__export");if($e){let Vt=$u(),kt=new Map;if($e.declarations)for(let wr of $e.declarations){let dn=V0(wr,wr.moduleSpecifier),Sn=Y(dn,wr,Me||wr.isTypeOnly);mK(Vt,Sn,kt,wr)}kt.forEach(({exportsWithDuplicate:wr},dn)=>{if(!(dn==="export="||!(wr&&wr.length)||He.has(dn)))for(let Sn of wr)PA.add(ho(Sn,Z.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,kt.get(dn).specifierText,Bc(dn)))}),mK(He,Vt)}return Be?.isTypeOnly&&(v??(v=new Map),He.forEach((Vt,kt)=>v.set(kt,Be))),He}}function qA(u){let m;return u&&u.mergeId&&(m=rK[u.mergeId])?m:u}function Uo(u){return qA(u.symbol&&Aot(u.symbol))}function ES(u){return bE(u)?Uo(u):void 0}function nC(u){return qA(u.parent&&Aot(u.parent))}function x5(u){var m,v;return(((m=u.valueDeclaration)==null?void 0:m.kind)===220||((v=u.valueDeclaration)==null?void 0:v.kind)===219)&&ES(u.valueDeclaration.parent)||u}function _K(u,m){let v=ms(m),D=id(v),W=fa(u),Y;if(W.extendedContainersByFile&&(Y=W.extendedContainersByFile.get(D)))return Y;if(v&&v.imports){for(let Be of v.imports){if(ap(Be))continue;let Me=V0(m,Be,!0);!Me||!Ae(Me,u)||(Y=Ft(Y,Me))}if(B(Y))return(W.extendedContainersByFile||(W.extendedContainersByFile=new Map)).set(D,Y),Y}if(W.extendedContainers)return W.extendedContainers;let oe=s.getSourceFiles();for(let Be of oe){if(!Lm(Be))continue;let Me=Uo(Be);Ae(Me,u)&&(Y=Ft(Y,Me))}return W.extendedContainers=Y||E}function YQ(u,m,v){let D=nC(u);if(D&&!(u.flags&262144))return Me(D);let W=Xt(u.declarations,$e=>{if(!c_($e)&&$e.parent){if(XQ($e.parent))return Uo($e.parent);if(BN($e.parent)&&$e.parent.parent&&DE(Uo($e.parent.parent))===u)return Uo($e.parent.parent)}if(wd($e)&&po($e.parent)&&$e.parent.operatorToken.kind===64&&bp($e.parent.left)&&Hd($e.parent.left.expression))return pN($e.parent.left)||E3($e.parent.left.expression)?Uo(ms($e)):(DI($e.parent.left.expression),sa($e.parent.left.expression).resolvedSymbol)});if(!B(W))return;let Y=Xt(W,$e=>Ae($e,u)?$e:void 0),oe=[],Be=[];for(let $e of Y){let[Vt,...kt]=Me($e);oe=Ft(oe,Vt),Be=Pr(Be,kt)}return Nn(oe,Be);function Me($e){let Vt=Xt($e.declarations,He),kt=m&&_K(u,m),wr=G5($e,v);if(m&&$e.flags&$w(v)&&v9($e,m,1920,!1))return Ft(Nn(Nn([$e],Vt),kt),wr);let dn=!($e.flags&$w(v))&&$e.flags&788968&&Lp($e).flags&524288&&v===111551?S9(m,ii=>Fh(ii,Yi=>{if(Yi.flags&$w(v)&&fo(Yi)===Lp($e))return Yi})):void 0,Sn=dn?[dn,...Vt,$e]:[...Vt,$e];return Sn=Ft(Sn,wr),Sn=Pr(Sn,kt),Sn}function He($e){return D&&yK($e,D)}}function G5(u,m){let v=!!B(u.declarations)&&ma(u.declarations);if(m&111551&&v&&v.parent&&nc(v.parent)&&(ag(v)&&v===v.parent.initializer||bh(v)&&v===v.parent.type))return Uo(v.parent)}function yK(u,m){let v=EK(u),D=v&&v.exports&&v.exports.get("export=");return D&&vt(D,m)?v:void 0}function Ae(u,m){if(u===nC(m))return m;let v=u.exports&&u.exports.get("export=");if(v&&vt(v,m))return u;let D=N1(u),W=D.get(m.escapedName);return W&&vt(W,m)?W:Fh(D,Y=>{if(vt(Y,m))return Y})}function vt(u,m){if(qA(Oh(qA(u)))===qA(Oh(qA(m))))return u}function fn(u){return qA(u&&(u.flags&1048576)!==0&&u.exportSymbol||u)}function qi(u,m){return!!(u.flags&111551||u.flags&2097152&&Xb(u,!m)&111551)}function ic(u){var m;let v=new S(ks,u);return T++,v.id=T,(m=ki)==null||m.recordType(v),v}function Pc(u,m){let v=ic(u);return v.symbol=m,v}function ql(u){return new S(ks,u)}function Vc(u,m,v=0,D){bA(m,D);let W=ic(u);return W.intrinsicName=m,W.debugIntrinsicName=D,W.objectFlags=v|524288|2097152|33554432|16777216,W}function bA(u,m){let v=`${u},${m??""}`;Dn.has(v)&&pe.fail(`Duplicate intrinsic type name ${u}${m?` (${m})`:""}; you may need to pass a name to createIntrinsicType.`),Dn.add(v)}function Ph(u,m){let v=Pc(524288,m);return v.objectFlags=u,v.members=void 0,v.properties=void 0,v.callSignatures=void 0,v.constructSignatures=void 0,v.indexInfos=void 0,v}function p0(){return Ha(Do(JPt.keys(),kE))}function Jy(u){return Pc(262144,u)}function F5(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)!==95&&u.charCodeAt(2)!==64&&u.charCodeAt(2)!==35}function Uy(u){let m;return u.forEach((v,D)=>{IO(v,D)&&(m||(m=[])).push(v)}),m||E}function IO(u,m){return!F5(m)&&qi(u)}function Dq(u){let m=Uy(u),v=mot(u);return v?Nn(m,[v]):m}function zB(u,m,v,D,W){let Y=u;return Y.members=m,Y.properties=E,Y.callSignatures=v,Y.constructSignatures=D,Y.indexInfos=W,m!==Ee&&(Y.properties=Uy(m)),Y}function Qf(u,m,v,D,W){return zB(Ph(16,u),m,v,D,W)}function bK(u){if(u.constructSignatures.length===0)return u;if(u.objectTypeWithoutAbstractConstructSignatures)return u.objectTypeWithoutAbstractConstructSignatures;let m=Le(u.constructSignatures,D=>!(D.flags&4));if(u.constructSignatures===m)return u;let v=Qf(u.symbol,u.members,u.callSignatures,zt(m)?m:E,u.indexInfos);return u.objectTypeWithoutAbstractConstructSignatures=v,v.objectTypeWithoutAbstractConstructSignatures=v,v}function S9(u,m){let v;for(let D=u;D;D=D.parent){if(HI(D)&&D.locals&&!fc(D)&&(v=m(D.locals,void 0,!0,D)))return v;switch(D.kind){case 308:if(!Sl(D))break;case 268:let W=Uo(D);if(v=m(W?.exports||Ee,void 0,!0,D))return v;break;case 264:case 232:case 265:let Y;if((Uo(D).members||Ee).forEach((oe,Be)=>{oe.flags&788968&&(Y||(Y=$u())).set(Be,oe)}),Y&&(v=m(Y,void 0,!1,D)))return v;break}}return m(Gr,void 0,!0)}function $w(u){return u===111551?111551:1920}function v9(u,m,v,D,W=new Map){if(!(u&&!kOe(u)))return;let Y=fa(u),oe=Y.accessibleChainCache||(Y.accessibleChainCache=new Map),Be=S9(m,(Yi,js,mo,Ji)=>Ji),Me=`${D?0:1}|${Be?id(Be):0}|${v}`;if(oe.has(Me))return oe.get(Me);let He=xg(u),$e=W.get(He);$e||W.set(He,$e=[]);let Vt=S9(m,kt);return oe.set(Me,Vt),Vt;function kt(Yi,js,mo){if(!Qi($e,Yi))return;let Ji=Sn(Yi,js,mo);return $e.pop(),Ji}function wr(Yi,js){return!QQ(Yi,m,js)||!!v9(Yi.parent,m,$w(js),D,W)}function dn(Yi,js,mo){return(u===(js||Yi)||qA(u)===qA(js||Yi))&&!zt(Yi.declarations,XQ)&&(mo||wr(qA(Yi),v))}function Sn(Yi,js,mo){return dn(Yi.get(u.escapedName),void 0,js)?[u]:Fh(Yi,Mi=>{if(Mi.flags&2097152&&Mi.escapedName!=="export="&&Mi.escapedName!=="default"&&!(WAe(Mi)&&m&&Lm(ms(m)))&&(!D||zt(Mi.declarations,YL))&&(!mo||!zt(Mi.declarations,DZe))&&(js||!yp(Mi,282))){let wo=JC(Mi),Ka=ii(Mi,wo,js);if(Ka)return Ka}if(Mi.escapedName===u.escapedName&&Mi.exportSymbol&&dn(qA(Mi.exportSymbol),void 0,js))return[u]})||(Yi===Gr?ii(pr,pr,js):void 0)}function ii(Yi,js,mo){if(dn(Yi,js,mo))return[Yi];let Ji=N1(js),Mi=Ji&&kt(Ji,!0);if(Mi&&wr(Yi,$w(v)))return[Yi].concat(Mi)}}function QQ(u,m,v){let D=!1;return S9(m,W=>{let Y=qA(W.get(u.escapedName));if(!Y)return!1;if(Y===u)return!0;let oe=Y.flags&2097152&&!yp(Y,282);return Y=oe?JC(Y):Y,(oe?Xb(Y):Y.flags)&v?(D=!0,!0):!1}),D}function kOe(u){if(u.declarations&&u.declarations.length){for(let m of u.declarations)switch(m.kind){case 173:case 175:case 178:case 179:continue;default:return!1}return!0}return!1}function Ppe(u,m){return xq(u,m,788968,!1,!0).accessibility===0}function kq(u,m){return xq(u,m,111551,!1,!0).accessibility===0}function Mpe(u,m,v){return xq(u,m,v,!1,!1).accessibility===0}function N2e(u,m,v,D,W,Y){if(!B(u))return;let oe,Be=!1;for(let Me of u){let He=v9(Me,m,D,!1);if(He){oe=Me;let kt=SK(He[0],W);if(kt)return kt}if(Y&&zt(Me.declarations,XQ)){if(W){Be=!0;continue}return{accessibility:0}}let $e=YQ(Me,m,D),Vt=N2e($e,m,v,v===Me?$w(D):D,W,Y);if(Vt)return Vt}if(Be)return{accessibility:0};if(oe)return{accessibility:1,errorSymbolName:xl(v,m,D),errorModuleName:oe!==v?xl(oe,m,1920):void 0}}function hO(u,m,v,D){return xq(u,m,v,D,!0)}function xq(u,m,v,D,W){if(u&&m){let Y=N2e([u],m,u,v,D,W);if(Y)return Y;let oe=F(u.declarations,EK);if(oe){let Be=EK(m);if(oe!==Be)return{accessibility:2,errorSymbolName:xl(u,m,v),errorModuleName:xl(oe),errorNode:Bo(m)?m:void 0}}return{accessibility:1,errorSymbolName:xl(u,m,v)}}return{accessibility:0}}function EK(u){let m=ji(u,xOe);return m&&Uo(m)}function xOe(u){return c_(u)||u.kind===308&&Sl(u)}function XQ(u){return PY(u)||u.kind===308&&Sl(u)}function SK(u,m){let v;if(!ue(Le(u.declarations,Y=>Y.kind!==80),D))return;return{accessibility:0,aliasesToMakeVisible:v};function D(Y){var oe,Be;if(!mk(Y)){let Me=Rv(Y);if(Me&&!Ga(Me,32)&&mk(Me.parent))return W(Y,Me);if(nc(Y)&&Eh(Y.parent.parent)&&!Ga(Y.parent.parent,32)&&mk(Y.parent.parent.parent))return W(Y,Y.parent.parent);if(R7(Y)&&!Ga(Y,32)&&mk(Y.parent))return W(Y,Y);if(mg(Y)){if(u.flags&2097152&&Bo(Y)&&((oe=Y.parent)!=null&&oe.parent)&&nc(Y.parent.parent)&&((Be=Y.parent.parent.parent)!=null&&Be.parent)&&Eh(Y.parent.parent.parent.parent)&&!Ga(Y.parent.parent.parent.parent,32)&&Y.parent.parent.parent.parent.parent&&mk(Y.parent.parent.parent.parent.parent))return W(Y,Y.parent.parent.parent.parent);if(u.flags&2){let He=ai(Y);if(He.kind===170)return!1;let $e=He.parent.parent;return $e.kind!==244?!1:Ga($e,32)?!0:mk($e.parent)?W(Y,$e):!1}}return!1}return!0}function W(Y,oe){return m&&(sa(Y).isVisible=!0,v=ps(v,oe)),!0}}function Hpe(u){let m;return u.parent.kind===187||u.parent.kind===234&&!xw(u.parent)||u.parent.kind===168||u.parent.kind===183&&u.parent.parameterName===u?m=1160127:u.kind===167||u.kind===212||u.parent.kind===272||u.parent.kind===167&&u.parent.left===u||u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u?m=1920:m=788968,m}function Gq(u,m,v=!0){let D=Hpe(u),W=R0(u),Y=An(m,W.escapedText,D,void 0,!1);return Y&&Y.flags&262144&&D&788968?{accessibility:0}:!Y&&kF(W)&&hO(Uo(s0(W,!1,!1)),W,D,!1).accessibility===0?{accessibility:0}:Y?SK(Y,v)||{accessibility:1,errorSymbolName:Fp(W),errorNode:W}:{accessibility:3,errorSymbolName:Fp(W),errorNode:W}}function xl(u,m,v,D=4,W){let Y=70221824,oe=0;D&2&&(Y|=128),D&1&&(Y|=512),D&8&&(Y|=16384),D&32&&(oe|=4),D&16&&(oe|=1);let Be=D&4?Dt.symbolToNode:Dt.symbolToEntityName;return W?Me(W).getText():bW(Me);function Me(He){let $e=Be(u,v,m,Y,oe),Vt=m?.kind===308?H3t():EQ(),kt=m&&ms(m);return Vt.writeNode(4,$e,kt,He),He}}function mO(u,m,v=0,D,W,Y,oe,Be){return W?Me(W).getText():bW(Me);function Me(He){let $e;v&262144?$e=D===1?186:185:$e=D===1?181:180;let Vt=Dt.signatureToSignatureDeclaration(u,$e,m,JQ(v)|70221824|512,void 0,void 0,Y,oe,Be),kt=btt(),wr=m&&ms(m);return kt.writeNode(4,Vt,wr,lbe(He)),He}}function ro(u,m,v=1064960,D=Pne(""),W,Y,oe){let Be=!W&&Te.noErrorTruncation||v&1,Me=Dt.typeToTypeNode(u,m,JQ(v)|70221824|(Be?1:0),void 0,void 0,W,Y,oe);if(Me===void 0)return pe.fail("should always get typenode");let He=u!==bn?EQ():M3t(),$e=m&&ms(m);He.writeNode(4,Me,$e,D);let Vt=D.getText(),kt=W||(Be?qre*2:FY*2);return kt&&Vt&&Vt.length>=kt?Vt.substr(0,kt-3)+"...":Vt}function Ype(u,m){let v=Vse(u.symbol)?ro(u,u.symbol.valueDeclaration):ro(u),D=Vse(m.symbol)?ro(m,m.symbol.valueDeclaration):ro(m);return v===D&&(v=Lse(u),D=Lse(m)),[v,D]}function Lse(u){return ro(u,void 0,64)}function Vse(u){return u&&!!u.valueDeclaration&&un(u.valueDeclaration)&&!wS(u.valueDeclaration)}function JQ(u=0){return u&848330095}function D2e(u){return!!u.symbol&&!!(u.symbol.flags&32)&&(u===kv(u.symbol)||!!(u.flags&524288)&&!!(la(u)&16777216))}function vK(u){return tl(u)}function GOe(){return{syntacticBuilderResolver:{evaluateEntityNameExpression:j0n,isExpandoFunctionDeclaration:hyn,hasLateBindableName:Mse,shouldRemoveDeclaration(er,ut){return!(er.internalFlags&8&&Hd(ut.name.expression)&&nT(ut.name).flags&1)},createRecoveryBoundary(er){return Kc(er)},isDefinitelyReferenceToGlobalSymbolObject:fk,getAllAccessorDeclarations:p6t,requiresAddingImplicitUndefined(er,ut,hi){var Di;switch(er.kind){case 173:case 172:case 349:ut??(ut=Uo(er));let Qt=fo(ut);return!!(ut.flags&4&&ut.flags&16777216&&FB(er)&&((Di=ut.links)!=null&&Di.mappedType)&&dMs(Qt));case 170:case 342:return e3e(er,hi);default:pe.assertNever(er)}},isOptionalParameter:O2e,isUndefinedIdentifierExpression(er){return Vv(er)===dt},isEntityNameVisible(er,ut,hi){return Gq(ut,er.enclosingDeclaration,hi)},serializeExistingTypeNode(er,ut,hi){return Ub(er,ut,!!hi)},serializeReturnTypeForSignature(er,ut,hi){let Di=er,Qt=BS(ut);hi??(hi=Uo(ut));let Cr=Di.enclosingSymbolTypes.get(xg(hi))??Cl(Ad(Qt),Di.mapper);return iA(Di,Qt,Cr)},serializeTypeOfExpression(er,ut){let hi=er,Di=Cl(F1(lyn(ut)),hi.mapper);return ii(Di,hi)},serializeTypeOfDeclaration(er,ut,hi){var Di;let Qt=er;hi??(hi=Uo(ut));let Cr=(Di=Qt.enclosingSymbolTypes)==null?void 0:Di.get(xg(hi));return Cr===void 0&&(Cr=hi.flags&98304&&ut.kind===179?Cl(R9(hi),Qt.mapper):hi&&!(hi.flags&133120)?Cl(J5(fo(hi)),Qt.mapper):nn),ut&&(Si(ut)||dS(ut))&&e3e(ut,Qt.enclosingDeclaration)&&(Cr=wO(Cr)),go(hi,Qt,Cr)},serializeNameOfParameter(er,ut){return qc(Uo(ut),ut,er)},serializeEntityName(er,ut){let hi=er,Di=Vv(ut,!0);if(Di&&kq(Di,hi.enclosingDeclaration))return Wv(Di,hi,1160127)},serializeTypeName(er,ut,hi,Di){return sC(er,ut,hi,Di)},getJsDocPropertyOverride(er,ut,hi){let Di=er,Qt=Ir(hi.name)?hi.name:hi.name.right,Cr=Wi(m(Di,ut),Qt.escapedText);return Cr&&hi.typeExpression&&m(Di,hi.typeExpression.type)!==Cr?ii(Cr,Di):void 0},enterNewScope(er,ut){if(Eu(ut)||s9(ut)){let hi=BS(ut);return Vu(er,ut,hi.parameters,hi.typeParameters)}else{let hi=h2(ut)?PUt(ut):[V5(Uo(ut.typeParameter))];return Vu(er,ut,void 0,hi)}},markNodeReuse(er,ut,hi){return v(er,ut,hi)},trackExistingEntityName(er,ut){return Bp(ut,er)},trackComputedName(er,ut){Co(ut,er.enclosingDeclaration,er)},getModuleSpecifierOverride(er,ut,hi){let Di=er;if(Di.bundled||Di.enclosingFile!==ms(hi)){let Qt=hi.text,Cr=Qt,jr=sa(ut).resolvedSymbol,Qn=ut.isTypeOf?111551:788968,yi=jr&&hO(jr,Di.enclosingDeclaration,Qn,!1).accessibility===0&&pu(jr,Di,Qn,!0)[0];if(yi&&XD(yi))Qt=vh(yi,Di);else{let Xn=h6t(ut);Xn&&(Qt=vh(Xn.symbol,Di))}if(Qt.includes("/node_modules/")&&(Di.encounteredError=!0,Di.tracker.reportLikelyUnsafeImportRequiredError&&Di.tracker.reportLikelyUnsafeImportRequiredError(Qt)),Qt!==Cr)return Qt}},canReuseTypeNode(er,ut){return M0(er,ut)},canReuseTypeNodeAnnotation(er,ut,hi,Di,Qt){var Cr;let jr=er;if(jr.enclosingDeclaration===void 0)return!1;Di??(Di=Uo(ut));let Qn=(Cr=jr.enclosingSymbolTypes)==null?void 0:Cr.get(xg(Di));Qn===void 0&&(Di.flags&98304?Qn=ut.kind===179?R9(Di):Kpe(Di):T3(ut)?Qn=Ad(BS(ut)):Qn=fo(Di));let yi=vK(hi);return lo(yi)?!0:(Qt&&yi&&(yi=W0(yi,!Si(ut))),!!yi&&tc(ut,Qn,yi)&&as(hi,Qn))}},typeToTypeNode:(er,ut,hi,Di,Qt,Cr,jr,Qn)=>He(ut,hi,Di,Qt,Cr,jr,yi=>ii(er,yi),Qn),typePredicateToTypePredicateNode:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>P0(er,Cr)),serializeTypeForDeclaration:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>tr.serializeTypeOfDeclaration(er,ut,jr)),serializeReturnTypeForSignature:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeReturnTypeForSignature(er,Uo(er),Cr)),serializeTypeForExpression:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeTypeOfExpression(er,Cr)),indexInfoToIndexSignatureDeclaration:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>_l(er,Cr,void 0)),signatureToSignatureDeclaration:(er,ut,hi,Di,Qt,Cr,jr,Qn,yi)=>He(hi,Di,Qt,Cr,jr,Qn,Xn=>ka(er,ut,Xn),yi),symbolToEntityName:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>gh(er,jr,ut,!1)),symbolToExpression:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>Wv(er,jr,ut)),symbolToTypeParameterDeclarations:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>Af(er,Cr)),symbolToParameterDeclaration:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>eo(er,Cr)),typeParameterToDeclaration:(er,ut,hi,Di,Qt,Cr,jr,Qn)=>He(ut,hi,Di,Qt,Cr,jr,yi=>zI(er,yi),Qn),symbolTableToDeclarationStatements:(er,ut,hi,Di,Qt)=>He(ut,hi,Di,Qt,void 0,void 0,Cr=>q5(er,Cr)),symbolToNode:(er,ut,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>D(er,jr,ut)),symbolToDeclarations:W};function m(er,ut,hi){let Di=vK(ut);if(!er.mapper)return Di;let Qt=Cl(Di,er.mapper);return hi&&Qt!==Di?void 0:Qt}function v(er,ut,hi){if((!ap(ut)||!(ut.flags&16)||!er.enclosingFile||er.enclosingFile!==ms(xd(ut)))&&(ut=me.cloneNode(ut)),ut===hi||!hi)return ut;let Di=ut.original;for(;Di&&Di!==hi;)Di=Di.original;return Di||ua(ut,hi),er.enclosingFile&&er.enclosingFile===ms(xd(hi))?gn(ut,hi):ut}function D(er,ut,hi){if(ut.internalFlags&1){if(er.valueDeclaration){let Qt=fl(er.valueDeclaration);if(Qt&&Un(Qt))return Qt}let Di=fa(er).nameType;if(Di&&Di.flags&9216)return ut.enclosingDeclaration=Di.symbol.valueDeclaration,me.createComputedPropertyName(Wv(Di.symbol,ut,hi))}return Wv(er,ut,hi)}function W(er,ut,hi,Di,Qt,Cr){let jr=He(void 0,hi,void 0,void 0,Di,Qt,Qn=>Me(er,Qn),Cr);return Xt(jr,Qn=>{switch(Qn.kind){case 264:return Y(Qn,er);case 267:return oe(Qn,J3,er);case 265:return Be(Qn,er,ut);case 268:return oe(Qn,Lh,er);default:return}})}function Y(er,ut){let hi=Le(ut.declarations,xa),Di=hi&&hi.length>0?hi[0]:er,Qt=l_(Di)&-161;return wd(Di)&&(er=me.updateClassDeclaration(er,er.modifiers,void 0,er.typeParameters,er.heritageClauses,er.members)),me.replaceModifiers(er,Qt)}function oe(er,ut,hi){let Di=Le(hi.declarations,ut),Qt=Di&&Di.length>0?Di[0]:er,Cr=l_(Qt)&-161;return me.replaceModifiers(er,Cr)}function Be(er,ut,hi){if(hi&64)return oe(er,p_,ut)}function Me(er,ut){let hi=Lp(er);ut.typeStack.push(hi.id),ut.typeStack.push(-1);let Di=$u([er]),Qt=q5(Di,ut);return ut.typeStack.pop(),ut.typeStack.pop(),Qt}function He(er,ut,hi,Di,Qt,Cr,jr,Qn){let yi=Di?.trackSymbol?Di.moduleResolverHost:(hi||0)&4?Rvs(s):void 0;ut=ut||0;let Xn=Qt||(ut&1?qre:FY),Ti={enclosingDeclaration:er,enclosingFile:er&&ms(er),flags:ut,internalFlags:hi||0,tracker:void 0,maxTruncationLength:Xn,maxExpansionDepth:Cr??-1,encounteredError:!1,suppressReportInferenceFallback:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!Te.outFile&&!!er&&Sl(ms(er)),truncating:!1,usedSymbolNames:void 0,remappedSymbolNames:void 0,remappedSymbolReferences:void 0,reverseMappedStack:void 0,mustCreateTypeParameterSymbolList:!0,typeParameterSymbolList:void 0,mustCreateTypeParametersNamesLookups:!0,typeParameterNames:void 0,typeParameterNamesByText:void 0,typeParameterNamesByTextNextNameCount:void 0,enclosingSymbolTypes:new Map,mapper:void 0,depth:0,typeStack:[],out:{canIncreaseExpansionDepth:!1,truncated:!1}};Ti.tracker=new KPt(Ti,Di,yi);let Us=jr(Ti);return Ti.truncating&&Ti.flags&1&&Ti.tracker.reportTruncationError(),Qn&&(Qn.canIncreaseExpansionDepth=Ti.out.canIncreaseExpansionDepth,Qn.truncated=Ti.out.truncated),Ti.encounteredError?void 0:Us}function $e(er,ut,hi){let Di=xg(ut),Qt=er.enclosingSymbolTypes.get(Di);return er.enclosingSymbolTypes.set(Di,hi),Cr;function Cr(){Qt?er.enclosingSymbolTypes.set(Di,Qt):er.enclosingSymbolTypes.delete(Di)}}function Vt(er){let ut=er.flags,hi=er.internalFlags,Di=er.depth;return Qt;function Qt(){er.flags=ut,er.internalFlags=hi,er.depth=Di}}function kt(er){return er.maxExpansionDepth>=0&&wr(er)}function wr(er){return er.truncating?er.truncating:er.truncating=er.approximateLength>er.maxTruncationLength}function dn(er,ut){for(let hi=0;hi0)return er.flags&1048576?me.createUnionTypeNode(ta):me.createIntersectionTypeNode(ta);!ut.encounteredError&&!(ut.flags&262144)&&(ut.encounteredError=!0);return}if(jr&48)return pe.assert(!!(er.flags&524288)),Ro(er);if(er.flags&4194304){let Li=er.type;ut.approximateLength+=6;let ta=ii(Li,ut);return me.createTypeOperatorNode(143,ta)}if(er.flags&134217728){let Li=er.texts,ta=er.types,Cu=me.createTemplateHead(Li[0]),Ul=me.createNodeArray(lt(ta,(vA,pd)=>me.createTemplateLiteralTypeSpan(ii(vA,ut),(pdQn(Li));if(er.flags&33554432){let Li=ii(er.baseType,ut),ta=Use(er)&&bUt("NoInfer",!1);return ta?Ld(ta,ut,788968,[Li]):Li}return pe.fail("Should be unreachable.");function Qn(Li){let ta=ii(Li.checkType,ut);if(ut.approximateLength+=15,ut.flags&4&&Li.root.isDistributive&&!(Li.checkType.flags&262144)){let au=Jy(dA(262144,"T")),bm=Jf(au,ut),Em=me.createTypeReferenceNode(bm);ut.approximateLength+=37;let H_=FK(Li.root.checkType,au,Li.mapper),H0=ut.inferTypeParameters;ut.inferTypeParameters=Li.root.inferTypeParameters;let zy=ii(Cl(Li.root.extendsType,H_),ut);ut.inferTypeParameters=H0;let EZ=yi(Cl(m(ut,Li.root.node.trueType),H_)),eM=yi(Cl(m(ut,Li.root.node.falseType),H_));return me.createConditionalTypeNode(ta,me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Em.typeName))),me.createConditionalTypeNode(me.createTypeReferenceNode(me.cloneNode(bm)),ii(Li.checkType,ut),me.createConditionalTypeNode(Em,zy,EZ,eM),me.createKeywordTypeNode(146)),me.createKeywordTypeNode(146))}let Cu=ut.inferTypeParameters;ut.inferTypeParameters=Li.root.inferTypeParameters;let Ul=ii(Li.extendsType,ut);ut.inferTypeParameters=Cu;let vA=yi(SO(Li)),pd=yi(vO(Li));return me.createConditionalTypeNode(ta,Ul,vA,pd)}function yi(Li){var ta,Cu,Ul;return Li.flags&1048576?(ta=ut.visitedTypes)!=null&&ta.has(UC(Li))?(ut.flags&131072||(ut.encounteredError=!0,(Ul=(Cu=ut.tracker)==null?void 0:Cu.reportCyclicStructureError)==null||Ul.call(Cu)),js(ut)):zo(Li,vA=>ii(vA,ut)):ii(Li,ut)}function Xn(Li){return!!U2e(Li)}function Ti(Li){return!!Li.target&&Xn(Li.target)&&!Xn(Li)}function Us(Li){var ta;pe.assert(!!(Li.flags&524288));let Cu=Li.declaration.readonlyToken?me.createToken(Li.declaration.readonlyToken.kind):void 0,Ul=Li.declaration.questionToken?me.createToken(Li.declaration.questionToken.kind):void 0,vA,pd,au=iG(Li),bm=rT(Li),Em=!Yse(Li)&&!(W5(Li).flags&2)&&ut.flags&4&&!(vS(Li).flags&262144&&((ta=Ky(vS(Li)))==null?void 0:ta.flags)&4194304);if(Yse(Li)){if(Ti(Li)&&ut.flags&4){let kO=Jy(dA(262144,"T")),r$=Jf(kO,ut),vfe=Li.target;pd=me.createTypeReferenceNode(r$),au=Cl(iG(vfe),Ohn([rT(vfe),W5(vfe)],[bm,kO]))}vA=me.createTypeOperatorNode(143,pd||ii(W5(Li),ut))}else if(Em){let kO=Jy(dA(262144,"T")),r$=Jf(kO,ut);pd=me.createTypeReferenceNode(r$),vA=pd}else vA=ii(vS(Li),ut);let H_=Vl(bm,ut,vA),H0=Vu(ut,Li.declaration,void 0,[V5(Uo(Li.declaration.typeParameter))]),zy=Li.declaration.nameType?ii(N9(Li),ut):void 0,EZ=ii(CZ(au,!!(yk(Li)&4)),ut);H0();let eM=me.createMappedTypeNode(Cu,H_,zy,Ul,EZ,void 0);ut.approximateLength+=10;let lX=ti(eM,1);if(Ti(Li)&&ut.flags&4){let kO=Cl(Ky(m(ut,Li.declaration.typeParameter.constraint.type))||cn,Li.mapper);return me.createConditionalTypeNode(ii(W5(Li),ut),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(pd.typeName),kO.flags&2?void 0:ii(kO,ut))),lX,me.createKeywordTypeNode(146))}else if(Em)return me.createConditionalTypeNode(ii(vS(Li),ut),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(pd.typeName),me.createTypeOperatorNode(143,ii(W5(Li),ut)))),lX,me.createKeywordTypeNode(146));return lX}function Ro(Li,ta=!1,Cu=!1){var Ul,vA;let pd=Li.id,au=Li.symbol;if(au){if(!!(la(Li)&8388608)){let zy=Li.node;if(Pw(zy)&&m(ut,zy)===Li){let EZ=tr.tryReuseExistingTypeNode(ut,zy);if(EZ)return EZ}return(Ul=ut.visitedTypes)!=null&&Ul.has(pd)?js(ut):zo(Li,za)}let H_=D2e(Li)?788968:111551;if(jN(au.valueDeclaration))return Ld(au,ut,H_);if(!Cu&&(au.flags&32&&!ta&&!F2e(au)&&!(au.valueDeclaration&&xa(au.valueDeclaration)&&ut.flags&2048&&(!mm(au.valueDeclaration)||hO(au,ut.enclosingDeclaration,H_,!1).accessibility!==0))||au.flags&896||bm()))if(Sn(Li,ut))ut.depth+=1;else return Ld(au,ut,H_);if((vA=ut.visitedTypes)!=null&&vA.has(pd)){let H0=FOe(Li);return H0?Ld(H0,ut,788968):js(ut)}else return zo(Li,za)}else return za(Li);function bm(){var Em;let H_=!!(au.flags&8192)&&zt(au.declarations,zy=>lg(zy)&&!nIn(fl(zy))),H0=!!(au.flags&16)&&(au.parent||F(au.declarations,zy=>zy.parent.kind===308||zy.parent.kind===269));if(H_||H0)return(!!(ut.flags&4096)||((Em=ut.visitedTypes)==null?void 0:Em.has(pd)))&&(!(ut.flags&8)||kq(au,ut.enclosingDeclaration))}}function zo(Li,ta){var Cu,Ul,vA;let pd=Li.id,au=la(Li)&16&&Li.symbol&&Li.symbol.flags&32,bm=la(Li)&4&&Li.node?"N"+id(Li.node):Li.flags&16777216?"N"+id(Li.root.node):Li.symbol?(au?"+":"")+xg(Li.symbol):void 0;ut.visitedTypes||(ut.visitedTypes=new Set),bm&&!ut.symbolDepth&&(ut.symbolDepth=new Map);let Em=ut.maxExpansionDepth>=0?void 0:ut.enclosingDeclaration&&sa(ut.enclosingDeclaration),H_=`${UC(Li)}|${ut.flags}|${ut.internalFlags}`;Em&&(Em.serializedTypes||(Em.serializedTypes=new Map));let H0=(Cu=Em?.serializedTypes)==null?void 0:Cu.get(H_);if(H0)return(Ul=H0.trackedSymbols)==null||Ul.forEach(([Bk,coe,n3e])=>ut.tracker.trackSymbol(Bk,coe,n3e)),H0.truncating&&(ut.truncating=!0),ut.approximateLength+=H0.addedLength,r$(H0.node);let zy;if(bm){if(zy=ut.symbolDepth.get(bm)||0,zy>10)return js(ut);ut.symbolDepth.set(bm,zy+1)}ut.visitedTypes.add(pd);let EZ=ut.trackedSymbols;ut.trackedSymbols=void 0;let eM=ut.approximateLength,lX=ta(Li),kO=ut.approximateLength-eM;return!ut.reportedDiagnostic&&!ut.encounteredError&&((vA=Em?.serializedTypes)==null||vA.set(H_,{node:lX,truncating:ut.truncating,addedLength:kO,trackedSymbols:ut.trackedSymbols})),ut.visitedTypes.delete(pd),bm&&ut.symbolDepth.set(bm,zy),ut.trackedSymbols=EZ,lX;function r$(Bk){return!ap(Bk)&&eu(Bk)===Bk?Bk:v(ut,me.cloneNode(_s(Bk,r$,void 0,vfe,r$)),Bk)}function vfe(Bk,coe,n3e,E6t,S6t){return Bk&&Bk.length===0?gn(me.createNodeArray(void 0,Bk.hasTrailingComma),Bk):Os(Bk,coe,n3e,E6t,S6t)}}function za(Li){if(Jb(Li)||Li.containsError)return Us(Li);let ta=_R(Li);if(!ta.properties.length&&!ta.indexInfos.length){if(!ta.callSignatures.length&&!ta.constructSignatures.length)return ut.approximateLength+=2,ti(me.createTypeLiteralNode(void 0),1);if(ta.callSignatures.length===1&&!ta.constructSignatures.length){let au=ta.callSignatures[0];return ka(au,185,ut)}if(ta.constructSignatures.length===1&&!ta.callSignatures.length){let au=ta.constructSignatures[0];return ka(au,186,ut)}}let Cu=Le(ta.constructSignatures,au=>!!(au.flags&4));if(zt(Cu)){let au=lt(Cu,RK);return ta.callSignatures.length+(ta.constructSignatures.length-Cu.length)+ta.indexInfos.length+(ut.flags&2048?ze(ta.properties,Em=>!(Em.flags&4194304)):B(ta.properties))&&au.push(bK(ta)),ii(jg(au),ut)}let Ul=Vt(ut);ut.flags|=4194304;let vA=xA(ta);Ul();let pd=me.createTypeLiteralNode(vA);return ut.approximateLength+=2,ti(pd,ut.flags&1024?0:1),pd}function La(Li){let ta=gf(Li);if(Li.target===kA||Li.target===AA){if(ut.flags&2){let vA=ii(ta[0],ut);return me.createTypeReferenceNode(Li.target===kA?"Array":"ReadonlyArray",[vA])}let Cu=ii(ta[0],ut),Ul=me.createArrayTypeNode(Cu);return Li.target===kA?Ul:me.createTypeOperatorNode(148,Ul)}else if(Li.target.objectFlags&8){if(ta=Er(ta,(Cu,Ul)=>CZ(Cu,!!(Li.target.elementFlags[Ul]&2))),ta.length>0){let Cu=x9(Li),Ul=wo(ta.slice(0,Cu),ut);if(Ul){let{labeledElementDeclarations:vA}=Li.target;for(let au=0;au0){let Em=0;if(Li.target.typeParameters&&(Em=Math.min(Li.target.typeParameters.length,ta.length),(D1(Li,wot(!1))||D1(Li,rhn(!1))||D1(Li,JOe(!1))||D1(Li,thn(!1)))&&(!Li.node||!oh(Li.node)||!Li.node.typeArguments||Li.node.typeArguments.length0;){let H_=ta[Em-1],H0=Li.target.typeParameters[Em-1],zy=jQ(H0);if(!zy||!cG(H_,zy))break;Em--}pd=wo(ta.slice(Ul,Em),ut)}let au=Vt(ut);ut.flags|=16;let bm=Ld(Li.symbol,ut,788968,pd);return au(),vA?to(vA,bm):bm}}}function to(Li,ta){if(qm(Li)){let Cu=Li.typeArguments,Ul=Li.qualifier;Ul&&(Ir(Ul)?Cu!==H3(Ul)&&(Ul=Wx(me.cloneNode(Ul),Cu)):Cu!==H3(Ul.right)&&(Ul=me.updateQualifiedName(Ul,Ul.left,Wx(me.cloneNode(Ul.right),Cu)))),Cu=ta.typeArguments;let vA=_c(ta);for(let pd of vA)Ul=Ul?me.createQualifiedName(Ul,pd):pd;return me.updateImportTypeNode(Li,Li.argument,Li.attributes,Ul,Cu,Li.isTypeOf)}else{let Cu=Li.typeArguments,Ul=Li.typeName;Ir(Ul)?Cu!==H3(Ul)&&(Ul=Wx(me.cloneNode(Ul),Cu)):Cu!==H3(Ul.right)&&(Ul=me.updateQualifiedName(Ul,Ul.left,Wx(me.cloneNode(Ul.right),Cu))),Cu=ta.typeArguments;let vA=_c(ta);for(let pd of vA)Ul=me.createQualifiedName(Ul,pd);return me.updateTypeReferenceNode(Li,Ul,Cu)}}function _c(Li){let ta=Li.typeName,Cu=[];for(;!Ir(ta);)Cu.unshift(ta.right),ta=ta.left;return Cu.unshift(ta),Cu}function iu(Li,ta,Cu){if(Li.components&&ue(Li.components,vA=>{var pd;return!!(vA.name&&Un(vA.name)&&Hd(vA.name.expression)&&ta.enclosingDeclaration&&((pd=Gq(vA.name.expression,ta.enclosingDeclaration,!1))==null?void 0:pd.accessibility)===0)})){let vA=Le(Li.components,pd=>!Mse(pd));return lt(vA,pd=>(Co(pd.name.expression,ta.enclosingDeclaration,ta),v(ta,me.createPropertySignature(Li.isReadonly?[me.createModifier(148)]:void 0,pd.name,(ss(pd)||pi(pd)||Il(pd)||gu(pd)||TB(pd)||dv(pd))&&pd.questionToken?me.createToken(58):void 0,Cu||ii(fo(pd.symbol),ta)),pd)))}return[_l(Li,ta,Cu)]}function xA(Li){if(wr(ut))return ut.out.truncated=!0,ut.flags&1?[Dz(me.createNotEmittedTypeElement(),3,"elided")]:[me.createPropertySignature(void 0,"...",void 0,void 0)];ut.typeStack.push(-1);let ta=[];for(let vA of Li.callSignatures)ta.push(ka(vA,180,ut));for(let vA of Li.constructSignatures)vA.flags&4||ta.push(ka(vA,181,ut));for(let vA of Li.indexInfos)ta.push(...iu(vA,ut,Li.objectFlags&1024?js(ut):void 0));let Cu=Li.properties;if(!Cu)return ut.typeStack.pop(),ta;let Ul=0;for(let vA of Cu)if(!($5(ut)&&vA.flags&4194304)){if(Ul++,ut.flags&2048){if(vA.flags&4194304)continue;p2(vA)&6&&ut.tracker.reportPrivateInBaseOfClassExpression&&ut.tracker.reportPrivateInBaseOfClassExpression(Bc(vA.escapedName))}if(wr(ut)&&Ul+2!(za.flags&32768)),0);for(let za of zo){let La=ka(za,174,ut,{name:Qn,questionToken:yi});hi.push(Ro(La,za.declaration||er.valueDeclaration))}if(zo.length||!yi)return}let Xn;mo(er,ut)?Xn=js(ut):(Qt&&(ut.reverseMappedStack||(ut.reverseMappedStack=[]),ut.reverseMappedStack.push(er)),Xn=Cr?ea(ut,void 0,Cr,er):me.createKeywordTypeNode(133),Qt&&ut.reverseMappedStack.pop());let Ti=wR(er)?[me.createToken(148)]:void 0;Ti&&(ut.approximateLength+=9);let Us=me.createPropertySignature(Ti,Qn,yi,Xn);hi.push(Ro(Us,er.valueDeclaration));function Ro(zo,za){var La;let to=(La=er.declarations)==null?void 0:La.find(_c=>_c.kind===349);if(to){let _c=TJ(to.comment);_c&&VB(zo,[{kind:3,text:`* * `+_c.replace(/\n/g,` * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else za&&Mi(ut,zo,za);return zo}}function Mi(er,ut,hi){return er.enclosingFile&&er.enclosingFile===ms(hi)?yh(ut,hi):ut}function To(er,ut,hi){if(zt(er)){if(wr(ut))if(ut.out.truncated=!0,hi){if(er.length>2)return[ii(er[0],ut),ut.flags&1?qT(me.createKeywordTypeNode(133),3,`... ${er.length-2} more elided ...`):me.createTypeReferenceNode(`... ${er.length-2} more ...`,void 0),ii(er[er.length-1],ut)]}else return[ut.flags&1?qT(me.createKeywordTypeNode(133),3,"elided"):me.createTypeReferenceNode("...",void 0)];let Qt=!(ut.flags&64)?gl():void 0,Cr=[],jr=0;for(let Qn of er){if(jr++,wr(ut)&&jr+2{if(!YLe(yi,([Xn],[Ti])=>Ka(Xn,Ti)))for(let[Xn,Ti]of yi)Cr[Ti]=ii(Xn,ut)}),Qn()}return Cr}}function Ka(er,ut){return er===ut||!!er.symbol&&er.symbol===ut.symbol||!!er.aliasSymbol&&er.aliasSymbol===ut.aliasSymbol}function _l(er,ut,hi){let Di=Kge(er)||"x",Qt=ii(er.keyType,ut),Cr=me.createParameterDeclaration(void 0,void 0,Di,void 0,Qt,void 0);return hi||(hi=ii(er.type||hr,ut)),!er.type&&!(ut.flags&2097152)&&(ut.encounteredError=!0),ut.approximateLength+=Di.length+4,me.createIndexSignature(er.isReadonly?[me.createToken(148)]:void 0,[Cr],hi)}function ka(er,ut,hi,Di){var Qt;let Cr,jr,Qn=iIn(er,!0)[0],yi=Vu(hi,er.declaration,Qn,er.typeParameters,er.parameters,er.mapper);hi.approximateLength+=3,hi.flags&32&&er.target&&er.mapper&&er.target.typeParameters?jr=er.target.typeParameters.map(La=>ii(Cl(La,er.mapper),hi)):Cr=er.typeParameters&&er.typeParameters.map(La=>zI(La,hi));let Xn=Vt(hi);hi.flags&=-257;let Ti=(zt(Qn,La=>La!==Qn[Qn.length-1]&&!!(aI(La)&32768))?er.parameters:Qn).map(La=>eo(La,hi,ut===177)),Us=hi.flags&33554432?void 0:dd(er,hi);Us&&Ti.unshift(Us),Xn();let No=zg(hi,er),zo=Di?.modifiers;if(ut===186&&er.flags&4){let La=Zw(zo);zo=me.createModifiersFromModifierFlags(La|64)}let za=ut===180?me.createCallSignature(Cr,Ti,No):ut===181?me.createConstructSignature(Cr,Ti,No):ut===174?me.createMethodSignature(zo,Di?.name??me.createIdentifier(""),Di?.questionToken,Cr,Ti,No):ut===175?me.createMethodDeclaration(zo,void 0,Di?.name??me.createIdentifier(""),void 0,Cr,Ti,No,void 0):ut===177?me.createConstructorDeclaration(zo,Ti,void 0):ut===178?me.createGetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,No,void 0):ut===179?me.createSetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,void 0):ut===182?me.createIndexSignature(zo,Ti,No):ut===318?me.createJSDocFunctionType(Ti,No):ut===185?me.createFunctionTypeNode(Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):ut===186?me.createConstructorTypeNode(zo,Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):ut===263?me.createFunctionDeclaration(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,void 0):ut===219?me.createFunctionExpression(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,me.createBlock([])):ut===220?me.createArrowFunction(zo,Cr,Ti,No,void 0,me.createBlock([])):pe.assertNever(ut);if(jr&&(za.typeArguments=me.createNodeArray(jr)),((Qt=er.declaration)==null?void 0:Qt.kind)===324&&er.declaration.parent.kind===340){let La=Fp(er.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(to=>to.replace(/^\s+/," ")).join(` -`);qT(za,3,La,!0)}return yi?.(),za}function Kc(er){d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let ut,hi,Di=!1,Qt=er.tracker,Cr=er.trackedSymbols;er.trackedSymbols=void 0;let jr=er.encounteredError;return er.tracker=new KPt(er,{...Qt.inner,reportCyclicStructureError(){Qn(()=>Qt.reportCyclicStructureError())},reportInaccessibleThisError(){Qn(()=>Qt.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){Qn(()=>Qt.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(Ti){Qn(()=>Qt.reportLikelyUnsafeImportRequiredError(Ti))},reportNonSerializableProperty(Ti){Qn(()=>Qt.reportNonSerializableProperty(Ti))},reportPrivateInBaseOfClassExpression(Ti){Qn(()=>Qt.reportPrivateInBaseOfClassExpression(Ti))},trackSymbol(Ti,Us,No){return(ut??(ut=[])).push([Ti,Us,No]),!1},moduleResolverHost:er.tracker.moduleResolverHost},er.tracker.moduleResolverHost),{startRecoveryScope:yi,finalizeBoundary:Xn,markError:Qn,hadError:()=>Di};function Qn(Ti){Di=!0,Ti&&(hi??(hi=[])).push(Ti)}function yi(){let Ti=ut?.length??0,Us=hi?.length??0;return()=>{Di=!1,ut&&(ut.length=Ti),hi&&(hi.length=Us)}}function Xn(){return er.tracker=Qt,er.trackedSymbols=Cr,er.encounteredError=jr,hi?.forEach(Ti=>Ti()),Di?!1:(ut?.forEach(([Ti,Us,No])=>er.tracker.trackSymbol(Ti,Us,No)),!0)}}function Vu(er,ut,hi,Di,Qt,Cr){let jr=kSe(er),Qn,yi,Xn=er.enclosingDeclaration,Ti=er.mapper;if(Cr&&(er.mapper=Cr),er.enclosingDeclaration&&ut){let No=function(zo,za){pe.assert(er.enclosingDeclaration);let La;sa(er.enclosingDeclaration).fakeScopeForSignatureDeclaration===zo?La=er.enclosingDeclaration:er.enclosingDeclaration.parent&&sa(er.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===zo&&(La=er.enclosingDeclaration.parent),pe.assertOptionalNode(La,eg);let to=La?.locals??$u(),_c,iu;if(za((xA,Li)=>{if(La){let ta=to.get(xA);ta?iu=Ft(iu,{name:xA,oldSymbol:ta}):_c=Ft(_c,xA)}to.set(xA,Li)}),La)return function(){F(_c,Li=>to.delete(Li)),F(iu,Li=>to.set(Li.name,Li.oldSymbol))};{let xA=me.createBlock(E);sa(xA).fakeScopeForSignatureDeclaration=zo,xA.locals=to,UA(xA,er.enclosingDeclaration),er.enclosingDeclaration=xA}};var Us=No;Qn=zt(hi)?No("params",zo=>{if(hi)for(let za=0;za{if(Si(_c)&&Nu(_c.name))return iu(_c.name),!0;return;function iu(Li){F(Li.elements,ta=>{switch(ta.kind){case 233:return;case 209:return xA(ta);default:return pe.assertNever(ta)}})}function xA(Li){if(Nu(Li.name))return iu(Li.name);let ta=Uo(Li);zo(ta.escapedName,ta)}})||zo(La.escapedName,La)}}):void 0,er.flags&4&&zt(Di)&&(yi=No("typeParams",zo=>{for(let za of Di??E){let La=Jf(za,er).escapedText;zo(La,za.symbol)}}))}return()=>{Qn?.(),yi?.(),jr(),er.enclosingDeclaration=Xn,er.mapper=Ti}}function dd(er,ut){if(er.thisParameter)return eo(er.thisParameter,ut);if(er.declaration&&wo(er.declaration)){let hi=kb(er.declaration);if(hi&&hi.typeExpression)return me.createParameterDeclaration(void 0,void 0,"this",void 0,ii(m(ut,hi.typeExpression),ut))}}function Vl(er,ut,hi){let Di=Vt(ut);ut.flags&=-513;let Qt=me.createModifiersFromModifierFlags(aKt(er)),Cr=Jf(er,ut),jr=KQ(er),Qn=jr&&ii(jr,ut);return Di(),me.createTypeParameterDeclaration(Qt,Cr,hi,Qn)}function vf(er,ut,hi){return!dn(er,hi)&&ut&&m(hi,ut)===er&&tr.tryReuseExistingTypeNode(hi,ut)||ii(er,hi)}function zI(er,ut,hi=Uy(er)){let Di=hi&&vf(hi,bot(er),ut);return Vl(er,ut,Di)}function O0(er,ut){let hi=er.kind===2||er.kind===3?me.createToken(131):void 0,Di=er.kind===1||er.kind===3?ti(me.createIdentifier(er.parameterName),16777216):me.createThisTypeNode(),Qt=er.type&&ii(er.type,ut);return me.createTypePredicateNode(hi,Di,Qt)}function xs(er){let ut=yp(er,170);if(ut)return ut;if(!ww(er))return yp(er,342)}function eo(er,ut,hi){let Di=xs(er),Qt=fo(er),Cr=ea(ut,Di,Qt,er),jr=!(ut.flags&8192)&&hi&&Di&&MB(Di)?lt(iN(Di),me.cloneNode):void 0,yi=Di&&TB(Di)||aI(er)&32768?me.createToken(26):void 0,Xn=qc(er,Di,ut),Us=Di&&O2e(Di)||aI(er)&16384?me.createToken(58):void 0,No=me.createParameterDeclaration(jr,yi,Xn,Us,Cr,void 0);return ut.approximateLength+=of(er).length+3,No}function qc(er,ut,hi){return ut&&ut.name?ut.name.kind===80?ti(me.cloneNode(ut.name),16777216):ut.name.kind===167?ti(me.cloneNode(ut.name.right),16777216):Di(ut.name):of(er);function Di(Qt){return Cr(Qt);function Cr(jr){hi.tracker.canTrackSymbol&&Un(jr)&&qJt(jr)&&_o(jr.expression,hi.enclosingDeclaration,hi);let Qn=_s(jr,Cr,void 0,void 0,Cr);return mg(Qn)&&(Qn=me.updateBindingElement(Qn,Qn.dotDotDotToken,Qn.propertyName,Qn.name,void 0)),ap(Qn)||(Qn=me.cloneNode(Qn)),ti(Qn,16777217)}}}function _o(er,ut,hi){if(!hi.tracker.canTrackSymbol)return;let Di=T0(er),Qt=An(ut,Di.escapedText,1160127,void 0,!0);if(Qt)hi.tracker.trackSymbol(Qt,ut,111551);else{let Cr=An(Di,Di.escapedText,1160127,void 0,!0);Cr&&hi.tracker.trackSymbol(Cr,ut,111551)}}function pu(er,ut,hi,Di){return ut.tracker.trackSymbol(er,ut.enclosingDeclaration,hi),Td(er,ut,hi,Di)}function Td(er,ut,hi,Di){let Qt;return!(er.flags&262144)&&(ut.enclosingDeclaration||ut.flags&64)&&!(ut.internalFlags&4)?(Qt=pe.checkDefined(jr(er,hi,!0)),pe.assert(Qt&&Qt.length>0)):Qt=[er],Qt;function jr(Qn,yi,Xn){let Ti=S9(Qn,ut.enclosingDeclaration,yi,!!(ut.flags&128)),Us;if(!Ti||YQ(Ti[0],ut.enclosingDeclaration,Ti.length===1?yi:qw(yi))){let zo=HQ(Ti?Ti[0]:Qn,ut.enclosingDeclaration,yi);if(B(zo)){Us=zo.map(to=>zt(to.declarations,QQ)?vh(to,ut):void 0);let za=zo.map((to,_c)=>_c);za.sort(No);let La=za.map(to=>zo[to]);for(let to of La){let _c=jr(to,qw(yi),!1);if(_c){if(to.exports&&to.exports.get("export=")&&vt(to.exports.get("export="),Qn)){Ti=_c;break}Ti=_c.concat(Ti||[Ae(to,Qn)||Qn]);break}}}}if(Ti)return Ti;if(Xn||!(Qn.flags&6144))return!Xn&&!Di&&F(Qn.declarations,QQ)?void 0:[Qn];function No(zo,za){let La=Us[zo],to=Us[za];if(La&&to){let _c=mp(to);return mp(La)===_c?aVe(La)-aVe(to):_c?-1:1}return 0}}}function Af(er,ut){let hi;return ooe(er).flags&524384&&(hi=me.createNodeArray(lt(Kg(er),Qt=>zI(Qt,ut)))),hi}function KC(er,ut,hi){var Di;pe.assert(er&&0<=ut&&utx9(Ti,yi.links.mapper)),hi)}else jr=Af(Qt,hi)}return jr}function EA(er){return _v(er.objectType)?EA(er.objectType):er}function vh(er,ut,hi){let Di=yp(er,308);if(!Di){let Us=J(er.declarations,No=>_K(No,er));Us&&(Di=yp(Us,308))}if(Di&&Di.moduleName!==void 0)return Di.moduleName;if(!Di&&XPt.test(er.escapedName))return er.escapedName.substring(1,er.escapedName.length-1);if(!ut.enclosingFile||!ut.tracker.moduleResolverHost)return XPt.test(er.escapedName)?er.escapedName.substring(1,er.escapedName.length-1):ms(jJ(er)).fileName;let Qt=xd(ut.enclosingDeclaration),Cr=ZZe(Qt)?JY(Qt):void 0,jr=ut.enclosingFile,Qn=hi||Cr&&s.getModeForUsageLocation(jr,Cr)||jr&&s.getDefaultResolutionModeForFile(jr),yi=Zde(jr.path,Qn),Xn=fa(er),Ti=Xn.specifierCache&&Xn.specifierCache.get(yi);if(!Ti){let Us=!!Te.outFile,{moduleResolverHost:No}=ut.tracker,zo=Us?{...Te,baseUrl:No.getCommonSourceDirectory()}:Te;Ti=ma(Rtn(er,ks,zo,jr,No,{importModuleSpecifierPreference:Us?"non-relative":"project-relative",importModuleSpecifierEnding:Us?"minimal":Qn===99?"js":void 0},{overrideImportMode:hi})),Xn.specifierCache??(Xn.specifierCache=new Map),Xn.specifierCache.set(yi,Ti)}return Ti}function Mh(er){let ut=me.createIdentifier(Bc(er.escapedName));return er.parent?me.createQualifiedName(Mh(er.parent),ut):ut}function Ld(er,ut,hi,Di){let Qt=pu(er,ut,hi,!(ut.flags&16384)),Cr=hi===111551;if(zt(Qt[0].declarations,QQ)){let yi=Qt.length>1?Qn(Qt,Qt.length-1,1):void 0,Xn=Di||KC(Qt,0,ut),Ti=ms(xd(ut.enclosingDeclaration)),Us=UJ(Qt[0]),No,zo;if((G_(Te)===3||G_(Te)===99)&&Us?.impliedNodeFormat===99&&Us.impliedNodeFormat!==Ti?.impliedNodeFormat&&(No=vh(Qt[0],ut,99),zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral("import"))]))),No||(No=vh(Qt[0],ut)),!(ut.flags&67108864)&&G_(Te)!==1&&No.includes("/node_modules/")){let La=No;if(G_(Te)===3||G_(Te)===99){let to=Ti?.impliedNodeFormat===99?1:99;No=vh(Qt[0],ut,to),No.includes("/node_modules/")?No=La:zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral(to===99?"import":"require"))]))}zo||(ut.encounteredError=!0,ut.tracker.reportLikelyUnsafeImportRequiredError&&ut.tracker.reportLikelyUnsafeImportRequiredError(La))}let za=me.createLiteralTypeNode(me.createStringLiteral(No));if(ut.approximateLength+=No.length+10,!yi||mC(yi)){if(yi){let La=Ir(yi)?yi:yi.right;Vx(La,void 0)}return me.createImportTypeNode(za,zo,yi,Xn,Cr)}else{let La=EA(yi),to=La.objectType.typeName;return me.createIndexedAccessTypeNode(me.createImportTypeNode(za,zo,to,Xn,Cr),La.indexType)}}let jr=Qn(Qt,Qt.length-1,0);if(_v(jr))return jr;if(Cr)return me.createTypeQueryNode(jr);{let yi=Ir(jr)?jr:jr.right,Xn=P3(yi);return Vx(yi,void 0),me.createTypeReferenceNode(jr,Xn)}function Qn(yi,Xn,Ti){let Us=Xn===yi.length-1?Di:KC(yi,Xn,ut),No=yi[Xn],zo=yi[Xn-1],za;if(Xn===0)ut.flags|=16777216,za=F5(No,ut),ut.approximateLength+=(za?za.length:0)+1,ut.flags^=16777216;else if(zo&&R1(zo)){let to=R1(zo);Fh(to,(_c,iu)=>{if(vt(_c,No)&&!Z2e(iu)&&iu!=="export=")return za=Bc(iu),!0})}if(za===void 0){let to=J(No.declarations,fl);if(to&&Un(to)&&mC(to.expression)){let _c=Qn(yi,Xn-1,Ti);return mC(_c)?me.createIndexedAccessTypeNode(me.createParenthesizedType(me.createTypeQueryNode(_c)),me.createTypeQueryNode(to.expression)):_c}za=F5(No,ut)}if(ut.approximateLength+=za.length+1,!(ut.flags&16)&&zo&&Ck(zo)&&Ck(zo).get(No.escapedName)&&vt(Ck(zo).get(No.escapedName),No)){let to=Qn(yi,Xn-1,Ti);return _v(to)?me.createIndexedAccessTypeNode(to,me.createLiteralTypeNode(me.createStringLiteral(za))):me.createIndexedAccessTypeNode(me.createTypeReferenceNode(to,Us),me.createLiteralTypeNode(me.createStringLiteral(za)))}let La=ti(me.createIdentifier(za),16777216);if(Us&&Vx(La,me.createNodeArray(Us)),La.symbol=No,Xn>Ti){let to=Qn(yi,Xn-1,Ti);return mC(to)?me.createQualifiedName(to,La):pe.fail("Impossible construct - an export of an indexed access cannot be reachable")}return La}}function wS(er,ut,hi){let Di=An(ut.enclosingDeclaration,er,788968,void 0,!1);return Di&&Di.flags&262144?Di!==hi.symbol:!1}function Jf(er,ut){var hi,Di,Qt,Cr;if(ut.flags&4&&ut.typeParameterNames){let yi=ut.typeParameterNames.get(JC(er));if(yi)return yi}let jr=gh(er.symbol,ut,788968,!0);if(!(jr.kind&80))return me.createIdentifier("(Missing type parameter)");let Qn=(Di=(hi=er.symbol)==null?void 0:hi.declarations)==null?void 0:Di[0];if(Qn&&Ds(Qn)&&(jr=v(ut,jr,Qn.name)),ut.flags&4){let yi=jr.escapedText,Xn=((Qt=ut.typeParameterNamesByTextNextNameCount)==null?void 0:Qt.get(yi))||0,Ti=yi;for(;(Cr=ut.typeParameterNamesByText)!=null&&Cr.has(Ti)||wS(Ti,ut,er);)Xn++,Ti=`${yi}_${Xn}`;if(Ti!==yi){let Us=P3(jr);jr=me.createIdentifier(Ti),Vx(jr,Us)}ut.mustCreateTypeParametersNamesLookups&&(ut.mustCreateTypeParametersNamesLookups=!1,ut.typeParameterNames=new Map(ut.typeParameterNames),ut.typeParameterNamesByTextNextNameCount=new Map(ut.typeParameterNamesByTextNextNameCount),ut.typeParameterNamesByText=new Set(ut.typeParameterNamesByText)),ut.typeParameterNamesByTextNextNameCount.set(yi,Xn),ut.typeParameterNames.set(JC(er),jr),ut.typeParameterNamesByText.add(Ti)}return jr}function gh(er,ut,hi,Di){let Qt=pu(er,ut,hi);return Di&&Qt.length!==1&&!ut.encounteredError&&!(ut.flags&65536)&&(ut.encounteredError=!0),Cr(Qt,Qt.length-1);function Cr(jr,Qn){let yi=KC(jr,Qn,ut),Xn=jr[Qn];Qn===0&&(ut.flags|=16777216);let Ti=F5(Xn,ut);Qn===0&&(ut.flags^=16777216);let Us=ti(me.createIdentifier(Ti),16777216);return yi&&Vx(Us,me.createNodeArray(yi)),Us.symbol=Xn,Qn>0?me.createQualifiedName(Cr(jr,Qn-1),Us):Us}}function Vv(er,ut,hi){let Di=pu(er,ut,hi);return Qt(Di,Di.length-1);function Qt(Cr,jr){let Qn=KC(Cr,jr,ut),yi=Cr[jr];jr===0&&(ut.flags|=16777216);let Xn=F5(yi,ut);jr===0&&(ut.flags^=16777216);let Ti=Xn.charCodeAt(0);if(mne(Ti)&&zt(yi.declarations,QQ)){let Us=vh(yi,ut);return ut.approximateLength+=2+Us.length,me.createStringLiteral(Us)}if(jr===0||nEe(Xn,Ze)){let Us=ti(me.createIdentifier(Xn),16777216);return Qn&&Vx(Us,me.createNodeArray(Qn)),Us.symbol=yi,ut.approximateLength+=1+Xn.length,jr>0?me.createPropertyAccessExpression(Qt(Cr,jr-1),Us):Us}else{Ti===91&&(Xn=Xn.substring(1,Xn.length-1),Ti=Xn.charCodeAt(0));let Us;if(mne(Ti)&&!(yi.flags&8)){let No=A2(Xn).replace(/\\./g,zo=>zo.substring(1));ut.approximateLength+=No.length+2,Us=me.createStringLiteral(No,Ti===39)}else""+ +Xn===Xn&&(ut.approximateLength+=Xn.length,Us=me.createNumericLiteral(+Xn));if(!Us){let No=ti(me.createIdentifier(Xn),16777216);Qn&&Vx(No,me.createNodeArray(Qn)),No.symbol=yi,ut.approximateLength+=Xn.length,Us=No}return ut.approximateLength+=2,me.createElementAccessExpression(Qt(Cr,jr-1),Us)}}}function bfe(er){let ut=fl(er);return ut?Un(ut)?!!(Ml(ut.expression).flags&402653316):Qg(ut)?!!(Ml(ut.argumentExpression).flags&402653316):Lg(ut):!1}function DSe(er){let ut=fl(er);return!!(ut&&Lg(ut)&&(ut.singleQuote||!ap(ut)&&Ac(Fp(ut,!1),"'")))}function Efe(er,ut){let hi=gct(er);if(hi)if(!!ut.tracker.reportPrivateInBaseOfClassExpression&&ut.flags&2048){let Xn=Bc(er.escapedName);return Xn=Xn.replace(/__#\d+@#/g,"__#private@#"),cie(Xn,Hg(Te),!1,!0,!!(er.flags&8192))}else return hi;let Di=!!B(er.declarations)&&ue(er.declarations,bfe),Qt=!!B(er.declarations)&&ue(er.declarations,DSe),Cr=!!(er.flags&8192),jr=S2(er,ut,Qt,Di,Cr);if(jr)return jr;let Qn=Bc(er.escapedName);return cie(Qn,Hg(Te),Qt,Di,Cr)}function S2(er,ut,hi,Di,Qt){let Cr=fa(er).nameType;if(Cr){if(Cr.flags&384){let jr=""+Cr.value;return!qh(jr,Hg(Te))&&(Di||!yN(jr))?me.createStringLiteral(jr,!!hi):yN(jr)&&Ac(jr,"-")?me.createComputedPropertyName(me.createPrefixUnaryExpression(41,me.createNumericLiteral(-jr))):cie(jr,Hg(Te),hi,Di,Qt)}if(Cr.flags&8192)return me.createComputedPropertyName(Vv(Cr.symbol,ut,111551))}}function kSe(er){let ut=er.mustCreateTypeParameterSymbolList,hi=er.mustCreateTypeParametersNamesLookups;er.mustCreateTypeParameterSymbolList=!0,er.mustCreateTypeParametersNamesLookups=!0;let Di=er.typeParameterNames,Qt=er.typeParameterNamesByText,Cr=er.typeParameterNamesByTextNextNameCount,jr=er.typeParameterSymbolList;return()=>{er.typeParameterNames=Di,er.typeParameterNamesByText=Qt,er.typeParameterNamesByTextNextNameCount=Cr,er.typeParameterSymbolList=jr,er.mustCreateTypeParameterSymbolList=ut,er.mustCreateTypeParametersNamesLookups=hi}}function zn(er,ut){return er.declarations&&de(er.declarations,hi=>!!dyn(hi)&&(!ut||!!ji(hi,Di=>Di===ut)))}function as(er,ut){if(!(la(ut)&4)||!oh(er))return!0;Bot(er);let hi=sa(er).resolvedSymbol,Di=hi&&Lp(hi);return!Di||Di!==ut.target?!0:B(er.typeArguments)>=yk(ut.target.typeParameters)}function Ms(er){for(;sa(er).fakeScopeForSignatureDeclaration;)er=er.parent;return er}function go(er,ut,hi){return hi.flags&8192&&hi.symbol===er&&(!ut.enclosingDeclaration||zt(er.declarations,Qt=>ms(Qt)===ut.enclosingFile))&&(ut.flags|=1048576),ii(hi,ut)}function ea(er,ut,hi,Di){var Qt;let Cr,jr=ut&&(Si(ut)||AS(ut))&&e3e(ut,er.enclosingDeclaration),Qn=ut??Di.valueDeclaration??zn(Di)??((Qt=Di.declarations)==null?void 0:Qt[0]);if(!dn(hi,er)&&Qn){let yi=$e(er,Di,hi);BB(Qn)?Cr=tr.serializeTypeOfAccessor(Qn,Di,er):Ade(Qn)&&!ap(Qn)&&!(la(hi)&196608)&&(Cr=tr.serializeTypeOfDeclaration(Qn,Di,er)),yi()}return Cr||(jr&&(hi=BO(hi)),Cr=go(Di,er,hi)),Cr??me.createKeywordTypeNode(133)}function tc(er,ut,hi){return hi===ut?!0:er&&((ss(er)||pi(er))&&er.questionToken||Si(er)&&fot(er))?Fv(ut,524288)===hi:!1}function zg(er,ut){let hi=er.flags&256,Di=Vt(er);hi&&(er.flags&=-257);let Qt,Cr=Ad(ut);if(!(hi&&Xo(Cr))){if(ut.declaration&&!ap(ut.declaration)&&!dn(Cr,er)){let jr=Uo(ut.declaration),Qn=$e(er,jr,Cr);Qt=tr.serializeReturnTypeForSignature(ut.declaration,jr,er),Qn()}Qt||(Qt=iA(er,ut,Cr))}return!Qt&&!hi&&(Qt=me.createKeywordTypeNode(133)),Di(),Qt}function iA(er,ut,hi){let Di=er.suppressReportInferenceFallback;er.suppressReportInferenceFallback=!0;let Qt=kv(ut),Cr=Qt?O0(er.mapper?Lhn(Qt,er.mapper):Qt,er):ii(hi,er);return er.suppressReportInferenceFallback=Di,Cr}function Bp(er,ut,hi=ut.enclosingDeclaration){let Di=!1,Qt=T0(er);if(wo(er)&&(y3(Qt)||dN(Qt.parent)||zi(Qt.parent)&&TW(Qt.parent.left)&&y3(Qt.parent.right)))return Di=!0,{introducesError:Di,node:er};let Cr=Mpe(er),jr;if(DF(Qt))return jr=Uo(i0(Qt,!1,!1)),IO(jr,Qt,Cr,!1).accessibility!==0&&(Di=!0,ut.tracker.reportInaccessibleThisError()),{introducesError:Di,node:Qn(er)};if(jr=NI(Qt,Cr,!0,!0),ut.enclosingDeclaration&&!(jr&&jr.flags&262144)){jr=fn(jr);let yi=NI(Qt,Cr,!0,!0,ut.enclosingDeclaration);if(yi===st||yi===void 0&&jr!==void 0||yi&&jr&&!vt(fn(yi),jr))return yi!==st&&ut.tracker.reportInferenceFallback(er),Di=!0,{introducesError:Di,node:er,sym:jr};jr=yi}if(jr)return jr.flags&1&&jr.valueDeclaration&&(KL(jr.valueDeclaration)||AS(jr.valueDeclaration))?{introducesError:Di,node:Qn(er)}:(!(jr.flags&262144)&&!UT(er)&&IO(jr,hi,Cr,!1).accessibility!==0?(ut.tracker.reportInferenceFallback(er),Di=!0):ut.tracker.trackSymbol(jr,hi,Cr),{introducesError:Di,node:Qn(er)});return{introducesError:Di,node:er};function Qn(yi){if(yi===Qt){let Ti=Lp(jr),Us=jr.flags&262144?Jf(Ti,ut):me.cloneNode(yi);return Us.symbol=jr,v(ut,ti(Us,16777216),yi)}let Xn=_s(yi,Ti=>Qn(Ti),void 0);return v(ut,Xn,yi)}}function sC(er,ut,hi,Di){let Qt=hi?111551:788968,Cr=NI(ut,Qt,!0);if(!Cr)return;let jr=Cr.flags&2097152?XC(Cr):Cr;if(IO(Cr,er.enclosingDeclaration,Qt,!1).accessibility===0)return Ld(jr,er,Qt,Di)}function P0(er,ut){let hi=m(er,ut,!0);if(!hi)return!1;if(wo(ut)&&Gy(ut)){Thn(ut);let Di=sa(ut).resolvedSymbol;return!Di||!(!ut.isTypeOf&&!(Di.flags&788968)||!(B(ut.typeArguments)>=yk(Kg(Di))))}if(oh(ut)){if(c2(ut))return!1;let Di=sa(ut).resolvedSymbol;if(!Di)return!1;if(Di.flags&262144){let Qt=Lp(Di);return!(er.mapper&&x9(Qt,er.mapper)!==Qt)}if(QY(ut))return as(ut,hi)&&!WIn(ut)&&!!(Di.flags&788968)}if(VB(ut)&&ut.operator===158&&ut.type.kind===155){let Di=er.enclosingDeclaration&&Ms(er.enclosingDeclaration);return!!ji(ut,Qt=>Qt===Di)}return!0}function Jb(er,ut,hi){let Di=m(er,ut);if(hi&&!Zv(Di,Qt=>!!(Qt.flags&32768))&&P0(er,ut)){let Qt=tr.tryReuseExistingTypeNode(er,ut);if(Qt)return me.createUnionTypeNode([Qt,me.createKeywordTypeNode(157)])}return ii(Di,er)}function j5(er,ut){var hi;let Di=Ryn(me.createPropertyDeclaration,175,!0),Qt=Ryn((Bn,uo,sc,yc)=>me.createPropertySignature(Bn,uo,sc,yc),174,!1),Cr=ut.enclosingDeclaration,jr=[],Qn=new Set,yi=[],Xn=ut;ut={...Xn,usedSymbolNames:new Set(Xn.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((hi=Xn.remappedSymbolReferences)==null?void 0:hi.entries()),tracker:void 0};let Ti={...Xn.tracker.inner,trackSymbol:(Bn,uo,sc)=>{var yc,Yo;if((yc=ut.remappedSymbolNames)!=null&&yc.has(xg(Bn)))return!1;if(IO(Bn,uo,sc,!1).accessibility===0){let oA=Td(Bn,ut,sc);if(!(Bn.flags&4)){let Wu=oA[0],Zc=ms(Xn.enclosingDeclaration);zt(Wu.declarations,Ng=>ms(Ng)===Zc)&&SA(Wu)}}else if((Yo=Xn.tracker.inner)!=null&&Yo.trackSymbol)return Xn.tracker.inner.trackSymbol(Bn,uo,sc);return!1}};ut.tracker=new KPt(ut,Ti,Xn.tracker.moduleResolverHost),Fh(er,(Bn,uo)=>{let sc=Bc(uo);Bk(Bn,sc)});let Us=!ut.bundled,No=er.get("export=");return No&&er.size>1&&No.flags&2098688&&(er=$u(),er.set("export=",No)),ta(er),iu(jr);function zo(Bn){return!!Bn&&Bn.kind===80}function za(Bn){return Eh(Bn)?Le(lt(Bn.declarationList.declarations,fl),zo):Le([fl(Bn)],zo)}function La(Bn){let uo=de(Bn,yf),sc=Se(Bn,Lh),yc=sc!==-1?Bn[sc]:void 0;if(yc&&uo&&uo.isExportEquals&&Ir(uo.expression)&&Ir(yc.name)&&Vo(yc.name)===Vo(uo.expression)&&yc.body&&vN(yc.body)){let Yo=Le(Bn,Wu=>!!(c_(Wu)&32)),Wg=yc.name,oA=yc.body;if(B(Yo)&&(yc=me.updateModuleDeclaration(yc,yc.modifiers,yc.name,oA=me.updateModuleBlock(oA,me.createNodeArray([...yc.body.statements,me.createExportDeclaration(void 0,!1,me.createNamedExports(lt(jt(Yo,Wu=>za(Wu)),Wu=>me.createExportSpecifier(!1,void 0,Wu))),void 0)]))),Bn=[...Bn.slice(0,sc),yc,...Bn.slice(sc+1)]),!de(Bn,Wu=>Wu!==yc&&c3(Wu,Wg))){jr=[];let Wu=!zt(oA.statements,Zc=>Ga(Zc,32)||yf(Zc)||Vh(Zc));F(oA.statements,Zc=>{au(Zc,Wu?32:0)}),Bn=[...Le(Bn,Zc=>Zc!==yc&&Zc!==uo),...jr]}}return Bn}function to(Bn){let uo=Le(Bn,yc=>Vh(yc)&&!yc.moduleSpecifier&&!!yc.exportClause&&bv(yc.exportClause));B(uo)>1&&(Bn=[...Le(Bn,Yo=>!Vh(Yo)||!!Yo.moduleSpecifier||!Yo.exportClause),me.createExportDeclaration(void 0,!1,me.createNamedExports(jt(uo,Yo=>Ma(Yo.exportClause,bv).elements)),void 0)]);let sc=Le(Bn,yc=>Vh(yc)&&!!yc.moduleSpecifier&&!!yc.exportClause&&bv(yc.exportClause));if(B(sc)>1){let yc=Yn(sc,Yo=>Lg(Yo.moduleSpecifier)?">"+Yo.moduleSpecifier.text:">");if(yc.length!==sc.length)for(let Yo of yc)Yo.length>1&&(Bn=[...Le(Bn,Wg=>!Yo.includes(Wg)),me.createExportDeclaration(void 0,!1,me.createNamedExports(jt(Yo,Wg=>Ma(Wg.exportClause,bv).elements)),Yo[0].moduleSpecifier)])}return Bn}function _c(Bn){let uo=Se(Bn,sc=>Vh(sc)&&!sc.moduleSpecifier&&!sc.attributes&&!!sc.exportClause&&bv(sc.exportClause));if(uo>=0){let sc=Bn[uo],yc=Xt(sc.exportClause.elements,Yo=>{if(!Yo.propertyName&&Yo.name.kind!==11){let Wg=Yo.name,oA=Ao(Bn),Wu=Le(oA,Zc=>c3(Bn[Zc],Wg));if(B(Wu)&&ue(Wu,Zc=>lie(Bn[Zc]))){for(let Zc of Wu)Bn[Zc]=xA(Bn[Zc]);return}}return Yo});B(yc)?Bn[uo]=me.updateExportDeclaration(sc,sc.modifiers,sc.isTypeOnly,me.updateNamedExports(sc.exportClause,yc),sc.moduleSpecifier,sc.attributes):WA(Bn,uo)}return Bn}function iu(Bn){return Bn=La(Bn),Bn=to(Bn),Bn=_c(Bn),Cr&&(al(Cr)&&Sl(Cr)||Lh(Cr))&&(!zt(Bn,YT)||!xb(Bn)&&zt(Bn,f7))&&Bn.push(REe(me)),Bn}function xA(Bn){let uo=(c_(Bn)|32)&-129;return me.replaceModifiers(Bn,uo)}function Li(Bn){let uo=c_(Bn)&-33;return me.replaceModifiers(Bn,uo)}function ta(Bn,uo,sc){uo||yi.push(new Map);let yc=0,Yo=Array.from(Bn.values());for(let Wg of Yo){if(yc++,xt(ut)&&yc+2{Cu(Wg,!0,!!sc)}),yi.pop())}function Cu(Bn,uo,sc){Zd(fo(Bn));let yc=qA(Bn);if(Qn.has(xg(yc)))return;if(Qn.add(xg(yc)),!uo||B(Bn.declarations)&&zt(Bn.declarations,Wg=>!!ji(Wg,oA=>oA===Cr))){let Wg=kSe(ut);ut.tracker.pushErrorFallbackNode(de(Bn.declarations,oA=>ms(oA)===ut.enclosingFile)),Ul(Bn,uo,sc),ut.tracker.popErrorFallbackNode(),Wg()}}function Ul(Bn,uo,sc,yc=Bn.escapedName){var Yo,Wg,oA,Wu,Zc,Ng,Sm;let Ff=Bc(yc),h0=yc==="default";if(uo&&!(ut.flags&131072)&&zY(Ff)&&!h0){ut.encounteredError=!0;return}let qI=h0&&!!(Bn.flags&-113||Bn.flags&16&&B(Zd(fo(Bn))))&&!(Bn.flags&2097152),df=!qI&&!uo&&zY(Ff)&&!h0;(qI||df)&&(uo=!0);let II=(uo?0:32)|(h0&&!qI?2048:0),kI=Bn.flags&1536&&Bn.flags&7&&yc!=="export=",TS=kI&&v6t(fo(Bn),Bn);if((Bn.flags&8208||TS)&&DO(fo(Bn),Bn,Bk(Bn,Ff),II),Bn.flags&524288&&bm(Bn,Ff,II),Bn.flags&98311&&yc!=="export="&&!(Bn.flags&4194304)&&!(Bn.flags&32)&&!(Bn.flags&8192)&&!TS)if(sc)i3e(Bn)&&(df=!1,qI=!1);else{let Hh=fo(Bn),zy=Bk(Bn,Ff);if(Hh.symbol&&Hh.symbol!==Bn&&Hh.symbol.flags&16&&zt(Hh.symbol.declarations,FF)&&((Yo=Hh.symbol.members)!=null&&Yo.size||(Wg=Hh.symbol.exports)!=null&&Wg.size))ut.remappedSymbolReferences||(ut.remappedSymbolReferences=new Map),ut.remappedSymbolReferences.set(xg(Hh.symbol),Bn),Ul(Hh.symbol,uo,sc,yc),ut.remappedSymbolReferences.delete(xg(Hh.symbol));else if(!(Bn.flags&16)&&v6t(Hh,Bn))DO(Hh,Bn,zy,II);else{let V9=Bn.flags&2?Xq(Bn)?2:1:(oA=Bn.parent)!=null&&oA.valueDeclaration&&al((Wu=Bn.parent)==null?void 0:Wu.valueDeclaration)?2:void 0,RS=qI||!(Bn.flags&4)?zy:o3e(zy,Bn),gG=Bn.declarations&&de(Bn.declarations,xO=>nc(xO));gG&&A_(gG.parent)&&gG.parent.declarations.length===1&&(gG=gG.parent.parent);let kO=(Zc=Bn.declarations)==null?void 0:Zc.find(jo);if(kO&&po(kO.parent)&&Ir(kO.parent.right)&&((Ng=Hh.symbol)!=null&&Ng.valueDeclaration)&&al(Hh.symbol.valueDeclaration)){let xO=zy===kO.parent.right.escapedText?void 0:kO.parent.right;ut.approximateLength+=12+(((Sm=xO?.escapedText)==null?void 0:Sm.length)??0),au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,xO,zy)])),0),ut.tracker.trackSymbol(Hh.symbol,ut.enclosingDeclaration,111551)}else{let xO=v(ut,me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(RS,void 0,ea(ut,void 0,Hh,Bn))],V9)),gG);ut.approximateLength+=7+RS.length,au(xO,RS!==zy?II&-33:II),RS!==zy&&!uo&&(ut.approximateLength+=16+RS.length+zy.length,au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,RS,zy)])),0),df=!1,qI=!1)}}}if(Bn.flags&384&&cX(Bn,Ff,II),Bn.flags&32&&(Bn.flags&4&&Bn.valueDeclaration&&po(Bn.valueDeclaration.parent)&&wd(Bn.valueDeclaration.parent.right)?Tyn(Bn,Bk(Bn,Ff),II):E6t(Bn,Bk(Bn,Ff),II)),(Bn.flags&1536&&(!kI||bZ(Bn))||TS)&&q5(Bn,Ff,II),Bn.flags&64&&!(Bn.flags&32)&&Em(Bn,Ff,II),Bn.flags&2097152&&Tyn(Bn,Bk(Bn,Ff),II),Bn.flags&4&&Bn.escapedName==="export="&&i3e(Bn),Bn.flags&8388608&&Bn.declarations)for(let Hh of Bn.declarations){let zy=L0(Hh,Hh.moduleSpecifier);if(!zy)continue;let V9=Hh.isTypeOnly,RS=vh(zy,ut);ut.approximateLength+=17+RS.length,au(me.createExportDeclaration(void 0,V9,void 0,me.createStringLiteral(RS)),0)}if(qI){let Hh=Bk(Bn,Ff);ut.approximateLength+=16+Hh.length,au(me.createExportAssignment(void 0,!1,me.createIdentifier(Hh)),0)}else if(df){let Hh=Bk(Bn,Ff);ut.approximateLength+=22+Ff.length+Hh.length,au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Hh,Ff)])),0)}}function SA(Bn){if(zt(Bn.declarations,KL))return;pe.assertIsDefined(yi[yi.length-1]),o3e(Bc(Bn.escapedName),Bn);let uo=!!(Bn.flags&2097152)&&!zt(Bn.declarations,sc=>!!ji(sc,Vh)||ok(sc)||Zm(sc)&&!MF(sc.moduleReference));yi[uo?0:yi.length-1].set(xg(Bn),Bn)}function pd(Bn){return al(Bn)&&(Sl(Bn)||Zu(Bn))||a_(Bn)&&!NB(Bn)}function au(Bn,uo){if(MB(Bn)){let sc=c_(Bn),yc=0,Yo=ut.enclosingDeclaration&&(cS(ut.enclosingDeclaration)?ms(ut.enclosingDeclaration):ut.enclosingDeclaration);uo&32&&Yo&&(pd(Yo)||Lh(Yo))&&lie(Bn)&&(yc|=32),Us&&!(yc&32)&&(!Yo||!(Yo.flags&33554432))&&(Q3(Bn)||Eh(Bn)||ah(Bn)||mm(Bn)||Lh(Bn))&&(yc|=128),uo&2048&&(mm(Bn)||d_(Bn)||ah(Bn))&&(yc|=2048),yc&&(Bn=me.replaceModifiers(Bn,yc|sc)),ut.approximateLength+=s3e(yc|sc)}jr.push(Bn)}function bm(Bn,uo,sc){var yc;let Yo=Mfn(Bn),Wg=fa(Bn).typeParameters,oA=lt(Wg,qI=>zI(qI,ut)),Wu=(yc=Bn.declarations)==null?void 0:yc.find(cS),Zc=wJ(Wu?Wu.comment||Wu.parent.comment:void 0),Ng=Vt(ut);ut.flags|=8388608;let Sm=ut.enclosingDeclaration;ut.enclosingDeclaration=Wu;let Ff=Wu&&Wu.typeExpression&&J3(Wu.typeExpression)&&tr.tryReuseExistingTypeNode(ut,Wu.typeExpression.type)||ii(Yo,ut),h0=Bk(Bn,uo);ut.approximateLength+=8+(Zc?.length??0)+h0.length,au(LB(me.createTypeAliasDeclaration(void 0,h0,oA,Ff),Zc?[{kind:3,text:`* + `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else za&&Mi(ut,zo,za);return zo}}function Mi(er,ut,hi){return er.enclosingFile&&er.enclosingFile===ms(hi)?yh(ut,hi):ut}function wo(er,ut,hi){if(zt(er)){if(wr(ut))if(ut.out.truncated=!0,hi){if(er.length>2)return[ii(er[0],ut),ut.flags&1?$T(me.createKeywordTypeNode(133),3,`... ${er.length-2} more elided ...`):me.createTypeReferenceNode(`... ${er.length-2} more ...`,void 0),ii(er[er.length-1],ut)]}else return[ut.flags&1?$T(me.createKeywordTypeNode(133),3,"elided"):me.createTypeReferenceNode("...",void 0)];let Qt=!(ut.flags&64)?Al():void 0,Cr=[],jr=0;for(let Qn of er){if(jr++,wr(ut)&&jr+2{if(!YLe(yi,([Xn],[Ti])=>Ka(Xn,Ti)))for(let[Xn,Ti]of yi)Cr[Ti]=ii(Xn,ut)}),Qn()}return Cr}}function Ka(er,ut){return er===ut||!!er.symbol&&er.symbol===ut.symbol||!!er.aliasSymbol&&er.aliasSymbol===ut.aliasSymbol}function _l(er,ut,hi){let Di=jge(er)||"x",Qt=ii(er.keyType,ut),Cr=me.createParameterDeclaration(void 0,void 0,Di,void 0,Qt,void 0);return hi||(hi=ii(er.type||hr,ut)),!er.type&&!(ut.flags&2097152)&&(ut.encounteredError=!0),ut.approximateLength+=Di.length+4,me.createIndexSignature(er.isReadonly?[me.createToken(148)]:void 0,[Cr],hi)}function ka(er,ut,hi,Di){var Qt;let Cr,jr,Qn=uIn(er,!0)[0],yi=Vu(hi,er.declaration,Qn,er.typeParameters,er.parameters,er.mapper);hi.approximateLength+=3,hi.flags&32&&er.target&&er.mapper&&er.target.typeParameters?jr=er.target.typeParameters.map(La=>ii(Cl(La,er.mapper),hi)):Cr=er.typeParameters&&er.typeParameters.map(La=>zI(La,hi));let Xn=Vt(hi);hi.flags&=-257;let Ti=(zt(Qn,La=>La!==Qn[Qn.length-1]&&!!(aI(La)&32768))?er.parameters:Qn).map(La=>eo(La,hi,ut===177)),Us=hi.flags&33554432?void 0:dd(er,hi);Us&&Ti.unshift(Us),Xn();let Ro=zg(hi,er),zo=Di?.modifiers;if(ut===186&&er.flags&4){let La=Lw(zo);zo=me.createModifiersFromModifierFlags(La|64)}let za=ut===180?me.createCallSignature(Cr,Ti,Ro):ut===181?me.createConstructSignature(Cr,Ti,Ro):ut===174?me.createMethodSignature(zo,Di?.name??me.createIdentifier(""),Di?.questionToken,Cr,Ti,Ro):ut===175?me.createMethodDeclaration(zo,void 0,Di?.name??me.createIdentifier(""),void 0,Cr,Ti,Ro,void 0):ut===177?me.createConstructorDeclaration(zo,Ti,void 0):ut===178?me.createGetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,Ro,void 0):ut===179?me.createSetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,void 0):ut===182?me.createIndexSignature(zo,Ti,Ro):ut===318?me.createJSDocFunctionType(Ti,Ro):ut===185?me.createFunctionTypeNode(Cr,Ti,Ro??me.createTypeReferenceNode(me.createIdentifier(""))):ut===186?me.createConstructorTypeNode(zo,Cr,Ti,Ro??me.createTypeReferenceNode(me.createIdentifier(""))):ut===263?me.createFunctionDeclaration(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,Ro,void 0):ut===219?me.createFunctionExpression(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,Ro,me.createBlock([])):ut===220?me.createArrowFunction(zo,Cr,Ti,Ro,void 0,me.createBlock([])):pe.assertNever(ut);if(jr&&(za.typeArguments=me.createNodeArray(jr)),((Qt=er.declaration)==null?void 0:Qt.kind)===324&&er.declaration.parent.kind===340){let La=Fp(er.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(to=>to.replace(/^\s+/," ")).join(` +`);$T(za,3,La,!0)}return yi?.(),za}function Kc(er){d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let ut,hi,Di=!1,Qt=er.tracker,Cr=er.trackedSymbols;er.trackedSymbols=void 0;let jr=er.encounteredError;return er.tracker=new KPt(er,{...Qt.inner,reportCyclicStructureError(){Qn(()=>Qt.reportCyclicStructureError())},reportInaccessibleThisError(){Qn(()=>Qt.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){Qn(()=>Qt.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(Ti){Qn(()=>Qt.reportLikelyUnsafeImportRequiredError(Ti))},reportNonSerializableProperty(Ti){Qn(()=>Qt.reportNonSerializableProperty(Ti))},reportPrivateInBaseOfClassExpression(Ti){Qn(()=>Qt.reportPrivateInBaseOfClassExpression(Ti))},trackSymbol(Ti,Us,Ro){return(ut??(ut=[])).push([Ti,Us,Ro]),!1},moduleResolverHost:er.tracker.moduleResolverHost},er.tracker.moduleResolverHost),{startRecoveryScope:yi,finalizeBoundary:Xn,markError:Qn,hadError:()=>Di};function Qn(Ti){Di=!0,Ti&&(hi??(hi=[])).push(Ti)}function yi(){let Ti=ut?.length??0,Us=hi?.length??0;return()=>{Di=!1,ut&&(ut.length=Ti),hi&&(hi.length=Us)}}function Xn(){return er.tracker=Qt,er.trackedSymbols=Cr,er.encounteredError=jr,hi?.forEach(Ti=>Ti()),Di?!1:(ut?.forEach(([Ti,Us,Ro])=>er.tracker.trackSymbol(Ti,Us,Ro)),!0)}}function Vu(er,ut,hi,Di,Qt,Cr){let jr=kSe(er),Qn,yi,Xn=er.enclosingDeclaration,Ti=er.mapper;if(Cr&&(er.mapper=Cr),er.enclosingDeclaration&&ut){let Ro=function(zo,za){pe.assert(er.enclosingDeclaration);let La;sa(er.enclosingDeclaration).fakeScopeForSignatureDeclaration===zo?La=er.enclosingDeclaration:er.enclosingDeclaration.parent&&sa(er.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===zo&&(La=er.enclosingDeclaration.parent),pe.assertOptionalNode(La,eg);let to=La?.locals??$u(),_c,iu;if(za((xA,Li)=>{if(La){let ta=to.get(xA);ta?iu=Ft(iu,{name:xA,oldSymbol:ta}):_c=Ft(_c,xA)}to.set(xA,Li)}),La)return function(){F(_c,Li=>to.delete(Li)),F(iu,Li=>to.set(Li.name,Li.oldSymbol))};{let xA=me.createBlock(E);sa(xA).fakeScopeForSignatureDeclaration=zo,xA.locals=to,UA(xA,er.enclosingDeclaration),er.enclosingDeclaration=xA}};var Us=Ro;Qn=zt(hi)?Ro("params",zo=>{if(hi)for(let za=0;za{if(Si(_c)&&Nu(_c.name))return iu(_c.name),!0;return;function iu(Li){F(Li.elements,ta=>{switch(ta.kind){case 233:return;case 209:return xA(ta);default:return pe.assertNever(ta)}})}function xA(Li){if(Nu(Li.name))return iu(Li.name);let ta=Uo(Li);zo(ta.escapedName,ta)}})||zo(La.escapedName,La)}}):void 0,er.flags&4&&zt(Di)&&(yi=Ro("typeParams",zo=>{for(let za of Di??E){let La=Jf(za,er).escapedText;zo(La,za.symbol)}}))}return()=>{Qn?.(),yi?.(),jr(),er.enclosingDeclaration=Xn,er.mapper=Ti}}function dd(er,ut){if(er.thisParameter)return eo(er.thisParameter,ut);if(er.declaration&&Bo(er.declaration)){let hi=xb(er.declaration);if(hi&&hi.typeExpression)return me.createParameterDeclaration(void 0,void 0,"this",void 0,ii(m(ut,hi.typeExpression),ut))}}function Vl(er,ut,hi){let Di=Vt(ut);ut.flags&=-513;let Qt=me.createModifiersFromModifierFlags(aKt(er)),Cr=Jf(er,ut),jr=jQ(er),Qn=jr&&ii(jr,ut);return Di(),me.createTypeParameterDeclaration(Qt,Cr,hi,Qn)}function vf(er,ut,hi){return!dn(er,hi)&&ut&&m(hi,ut)===er&&tr.tryReuseExistingTypeNode(hi,ut)||ii(er,hi)}function zI(er,ut,hi=Ky(er)){let Di=hi&&vf(hi,yot(er),ut);return Vl(er,ut,Di)}function P0(er,ut){let hi=er.kind===2||er.kind===3?me.createToken(131):void 0,Di=er.kind===1||er.kind===3?ti(me.createIdentifier(er.parameterName),16777216):me.createThisTypeNode(),Qt=er.type&&ii(er.type,ut);return me.createTypePredicateNode(hi,Di,Qt)}function xs(er){let ut=yp(er,170);if(ut)return ut;if(!Tw(er))return yp(er,342)}function eo(er,ut,hi){let Di=xs(er),Qt=fo(er),Cr=ea(ut,Di,Qt,er),jr=!(ut.flags&8192)&&hi&&Di&&HB(Di)?lt(sN(Di),me.cloneNode):void 0,yi=Di&&RB(Di)||aI(er)&32768?me.createToken(26):void 0,Xn=qc(er,Di,ut),Us=Di&&O2e(Di)||aI(er)&16384?me.createToken(58):void 0,Ro=me.createParameterDeclaration(jr,yi,Xn,Us,Cr,void 0);return ut.approximateLength+=of(er).length+3,Ro}function qc(er,ut,hi){return ut&&ut.name?ut.name.kind===80?ti(me.cloneNode(ut.name),16777216):ut.name.kind===167?ti(me.cloneNode(ut.name.right),16777216):Di(ut.name):of(er);function Di(Qt){return Cr(Qt);function Cr(jr){hi.tracker.canTrackSymbol&&Un(jr)&&qJt(jr)&&Co(jr.expression,hi.enclosingDeclaration,hi);let Qn=_s(jr,Cr,void 0,void 0,Cr);return mg(Qn)&&(Qn=me.updateBindingElement(Qn,Qn.dotDotDotToken,Qn.propertyName,Qn.name,void 0)),ap(Qn)||(Qn=me.cloneNode(Qn)),ti(Qn,16777217)}}}function Co(er,ut,hi){if(!hi.tracker.canTrackSymbol)return;let Di=R0(er),Qt=An(ut,Di.escapedText,1160127,void 0,!0);if(Qt)hi.tracker.trackSymbol(Qt,ut,111551);else{let Cr=An(Di,Di.escapedText,1160127,void 0,!0);Cr&&hi.tracker.trackSymbol(Cr,ut,111551)}}function pu(er,ut,hi,Di){return ut.tracker.trackSymbol(er,ut.enclosingDeclaration,hi),Td(er,ut,hi,Di)}function Td(er,ut,hi,Di){let Qt;return!(er.flags&262144)&&(ut.enclosingDeclaration||ut.flags&64)&&!(ut.internalFlags&4)?(Qt=pe.checkDefined(jr(er,hi,!0)),pe.assert(Qt&&Qt.length>0)):Qt=[er],Qt;function jr(Qn,yi,Xn){let Ti=v9(Qn,ut.enclosingDeclaration,yi,!!(ut.flags&128)),Us;if(!Ti||QQ(Ti[0],ut.enclosingDeclaration,Ti.length===1?yi:$w(yi))){let zo=YQ(Ti?Ti[0]:Qn,ut.enclosingDeclaration,yi);if(B(zo)){Us=zo.map(to=>zt(to.declarations,XQ)?vh(to,ut):void 0);let za=zo.map((to,_c)=>_c);za.sort(Ro);let La=za.map(to=>zo[to]);for(let to of La){let _c=jr(to,$w(yi),!1);if(_c){if(to.exports&&to.exports.get("export=")&&vt(to.exports.get("export="),Qn)){Ti=_c;break}Ti=_c.concat(Ti||[Ae(to,Qn)||Qn]);break}}}}if(Ti)return Ti;if(Xn||!(Qn.flags&6144))return!Xn&&!Di&&F(Qn.declarations,XQ)?void 0:[Qn];function Ro(zo,za){let La=Us[zo],to=Us[za];if(La&&to){let _c=mp(to);return mp(La)===_c?aVe(La)-aVe(to):_c?-1:1}return 0}}}function Af(er,ut){let hi;return aoe(er).flags&524384&&(hi=me.createNodeArray(lt(Kg(er),Qt=>zI(Qt,ut)))),hi}function jC(er,ut,hi){var Di;pe.assert(er&&0<=ut&&utG9(Ti,yi.links.mapper)),hi)}else jr=Af(Qt,hi)}return jr}function SA(er){return yv(er.objectType)?SA(er.objectType):er}function vh(er,ut,hi){let Di=yp(er,308);if(!Di){let Us=J(er.declarations,Ro=>yK(Ro,er));Us&&(Di=yp(Us,308))}if(Di&&Di.moduleName!==void 0)return Di.moduleName;if(!Di&&XPt.test(er.escapedName))return er.escapedName.substring(1,er.escapedName.length-1);if(!ut.enclosingFile||!ut.tracker.moduleResolverHost)return XPt.test(er.escapedName)?er.escapedName.substring(1,er.escapedName.length-1):ms(zJ(er)).fileName;let Qt=xd(ut.enclosingDeclaration),Cr=ZZe(Qt)?UY(Qt):void 0,jr=ut.enclosingFile,Qn=hi||Cr&&s.getModeForUsageLocation(jr,Cr)||jr&&s.getDefaultResolutionModeForFile(jr),yi=Lde(jr.path,Qn),Xn=fa(er),Ti=Xn.specifierCache&&Xn.specifierCache.get(yi);if(!Ti){let Us=!!Te.outFile,{moduleResolverHost:Ro}=ut.tracker,zo=Us?{...Te,baseUrl:Ro.getCommonSourceDirectory()}:Te;Ti=ma(Ftn(er,ks,zo,jr,Ro,{importModuleSpecifierPreference:Us?"non-relative":"project-relative",importModuleSpecifierEnding:Us?"minimal":Qn===99?"js":void 0},{overrideImportMode:hi})),Xn.specifierCache??(Xn.specifierCache=new Map),Xn.specifierCache.set(yi,Ti)}return Ti}function Mh(er){let ut=me.createIdentifier(Bc(er.escapedName));return er.parent?me.createQualifiedName(Mh(er.parent),ut):ut}function Ld(er,ut,hi,Di){let Qt=pu(er,ut,hi,!(ut.flags&16384)),Cr=hi===111551;if(zt(Qt[0].declarations,XQ)){let yi=Qt.length>1?Qn(Qt,Qt.length-1,1):void 0,Xn=Di||jC(Qt,0,ut),Ti=ms(xd(ut.enclosingDeclaration)),Us=KJ(Qt[0]),Ro,zo;if((F_(Te)===3||F_(Te)===99)&&Us?.impliedNodeFormat===99&&Us.impliedNodeFormat!==Ti?.impliedNodeFormat&&(Ro=vh(Qt[0],ut,99),zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral("import"))]))),Ro||(Ro=vh(Qt[0],ut)),!(ut.flags&67108864)&&F_(Te)!==1&&Ro.includes("/node_modules/")){let La=Ro;if(F_(Te)===3||F_(Te)===99){let to=Ti?.impliedNodeFormat===99?1:99;Ro=vh(Qt[0],ut,to),Ro.includes("/node_modules/")?Ro=La:zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral(to===99?"import":"require"))]))}zo||(ut.encounteredError=!0,ut.tracker.reportLikelyUnsafeImportRequiredError&&ut.tracker.reportLikelyUnsafeImportRequiredError(La))}let za=me.createLiteralTypeNode(me.createStringLiteral(Ro));if(ut.approximateLength+=Ro.length+10,!yi||mC(yi)){if(yi){let La=Ir(yi)?yi:yi.right;Wx(La,void 0)}return me.createImportTypeNode(za,zo,yi,Xn,Cr)}else{let La=SA(yi),to=La.objectType.typeName;return me.createIndexedAccessTypeNode(me.createImportTypeNode(za,zo,to,Xn,Cr),La.indexType)}}let jr=Qn(Qt,Qt.length-1,0);if(yv(jr))return jr;if(Cr)return me.createTypeQueryNode(jr);{let yi=Ir(jr)?jr:jr.right,Xn=H3(yi);return Wx(yi,void 0),me.createTypeReferenceNode(jr,Xn)}function Qn(yi,Xn,Ti){let Us=Xn===yi.length-1?Di:jC(yi,Xn,ut),Ro=yi[Xn],zo=yi[Xn-1],za;if(Xn===0)ut.flags|=16777216,za=L5(Ro,ut),ut.approximateLength+=(za?za.length:0)+1,ut.flags^=16777216;else if(zo&&N1(zo)){let to=N1(zo);Fh(to,(_c,iu)=>{if(vt(_c,Ro)&&!Z2e(iu)&&iu!=="export=")return za=Bc(iu),!0})}if(za===void 0){let to=J(Ro.declarations,fl);if(to&&Un(to)&&mC(to.expression)){let _c=Qn(yi,Xn-1,Ti);return mC(_c)?me.createIndexedAccessTypeNode(me.createParenthesizedType(me.createTypeQueryNode(_c)),me.createTypeQueryNode(to.expression)):_c}za=L5(Ro,ut)}if(ut.approximateLength+=za.length+1,!(ut.flags&16)&&zo&&_k(zo)&&_k(zo).get(Ro.escapedName)&&vt(_k(zo).get(Ro.escapedName),Ro)){let to=Qn(yi,Xn-1,Ti);return yv(to)?me.createIndexedAccessTypeNode(to,me.createLiteralTypeNode(me.createStringLiteral(za))):me.createIndexedAccessTypeNode(me.createTypeReferenceNode(to,Us),me.createLiteralTypeNode(me.createStringLiteral(za)))}let La=ti(me.createIdentifier(za),16777216);if(Us&&Wx(La,me.createNodeArray(Us)),La.symbol=Ro,Xn>Ti){let to=Qn(yi,Xn-1,Ti);return mC(to)?me.createQualifiedName(to,La):pe.fail("Impossible construct - an export of an indexed access cannot be reachable")}return La}}function TS(er,ut,hi){let Di=An(ut.enclosingDeclaration,er,788968,void 0,!1);return Di&&Di.flags&262144?Di!==hi.symbol:!1}function Jf(er,ut){var hi,Di,Qt,Cr;if(ut.flags&4&&ut.typeParameterNames){let yi=ut.typeParameterNames.get(UC(er));if(yi)return yi}let jr=gh(er.symbol,ut,788968,!0);if(!(jr.kind&80))return me.createIdentifier("(Missing type parameter)");let Qn=(Di=(hi=er.symbol)==null?void 0:hi.declarations)==null?void 0:Di[0];if(Qn&&Ds(Qn)&&(jr=v(ut,jr,Qn.name)),ut.flags&4){let yi=jr.escapedText,Xn=((Qt=ut.typeParameterNamesByTextNextNameCount)==null?void 0:Qt.get(yi))||0,Ti=yi;for(;(Cr=ut.typeParameterNamesByText)!=null&&Cr.has(Ti)||TS(Ti,ut,er);)Xn++,Ti=`${yi}_${Xn}`;if(Ti!==yi){let Us=H3(jr);jr=me.createIdentifier(Ti),Wx(jr,Us)}ut.mustCreateTypeParametersNamesLookups&&(ut.mustCreateTypeParametersNamesLookups=!1,ut.typeParameterNames=new Map(ut.typeParameterNames),ut.typeParameterNamesByTextNextNameCount=new Map(ut.typeParameterNamesByTextNextNameCount),ut.typeParameterNamesByText=new Set(ut.typeParameterNamesByText)),ut.typeParameterNamesByTextNextNameCount.set(yi,Xn),ut.typeParameterNames.set(UC(er),jr),ut.typeParameterNamesByText.add(Ti)}return jr}function gh(er,ut,hi,Di){let Qt=pu(er,ut,hi);return Di&&Qt.length!==1&&!ut.encounteredError&&!(ut.flags&65536)&&(ut.encounteredError=!0),Cr(Qt,Qt.length-1);function Cr(jr,Qn){let yi=jC(jr,Qn,ut),Xn=jr[Qn];Qn===0&&(ut.flags|=16777216);let Ti=L5(Xn,ut);Qn===0&&(ut.flags^=16777216);let Us=ti(me.createIdentifier(Ti),16777216);return yi&&Wx(Us,me.createNodeArray(yi)),Us.symbol=Xn,Qn>0?me.createQualifiedName(Cr(jr,Qn-1),Us):Us}}function Wv(er,ut,hi){let Di=pu(er,ut,hi);return Qt(Di,Di.length-1);function Qt(Cr,jr){let Qn=jC(Cr,jr,ut),yi=Cr[jr];jr===0&&(ut.flags|=16777216);let Xn=L5(yi,ut);jr===0&&(ut.flags^=16777216);let Ti=Xn.charCodeAt(0);if(Cne(Ti)&&zt(yi.declarations,XQ)){let Us=vh(yi,ut);return ut.approximateLength+=2+Us.length,me.createStringLiteral(Us)}if(jr===0||nEe(Xn,Ze)){let Us=ti(me.createIdentifier(Xn),16777216);return Qn&&Wx(Us,me.createNodeArray(Qn)),Us.symbol=yi,ut.approximateLength+=1+Xn.length,jr>0?me.createPropertyAccessExpression(Qt(Cr,jr-1),Us):Us}else{Ti===91&&(Xn=Xn.substring(1,Xn.length-1),Ti=Xn.charCodeAt(0));let Us;if(Cne(Ti)&&!(yi.flags&8)){let Ro=d2(Xn).replace(/\\./g,zo=>zo.substring(1));ut.approximateLength+=Ro.length+2,Us=me.createStringLiteral(Ro,Ti===39)}else""+ +Xn===Xn&&(ut.approximateLength+=Xn.length,Us=me.createNumericLiteral(+Xn));if(!Us){let Ro=ti(me.createIdentifier(Xn),16777216);Qn&&Wx(Ro,me.createNodeArray(Qn)),Ro.symbol=yi,ut.approximateLength+=Xn.length,Us=Ro}return ut.approximateLength+=2,me.createElementAccessExpression(Qt(Cr,jr-1),Us)}}}function Efe(er){let ut=fl(er);return ut?Un(ut)?!!(Ml(ut.expression).flags&402653316):Qg(ut)?!!(Ml(ut.argumentExpression).flags&402653316):Lg(ut):!1}function DSe(er){let ut=fl(er);return!!(ut&&Lg(ut)&&(ut.singleQuote||!ap(ut)&&Ac(Fp(ut,!1),"'")))}function Sfe(er,ut){let hi=uct(er);if(hi)if(!!ut.tracker.reportPrivateInBaseOfClassExpression&&ut.flags&2048){let Xn=Bc(er.escapedName);return Xn=Xn.replace(/__#\d+@#/g,"__#private@#"),lie(Xn,Hg(Te),!1,!0,!!(er.flags&8192))}else return hi;let Di=!!B(er.declarations)&&ue(er.declarations,Efe),Qt=!!B(er.declarations)&&ue(er.declarations,DSe),Cr=!!(er.flags&8192),jr=v2(er,ut,Qt,Di,Cr);if(jr)return jr;let Qn=Bc(er.escapedName);return lie(Qn,Hg(Te),Qt,Di,Cr)}function v2(er,ut,hi,Di,Qt){let Cr=fa(er).nameType;if(Cr){if(Cr.flags&384){let jr=""+Cr.value;return!qh(jr,Hg(Te))&&(Di||!bN(jr))?me.createStringLiteral(jr,!!hi):bN(jr)&&Ac(jr,"-")?me.createComputedPropertyName(me.createPrefixUnaryExpression(41,me.createNumericLiteral(-jr))):lie(jr,Hg(Te),hi,Di,Qt)}if(Cr.flags&8192)return me.createComputedPropertyName(Wv(Cr.symbol,ut,111551))}}function kSe(er){let ut=er.mustCreateTypeParameterSymbolList,hi=er.mustCreateTypeParametersNamesLookups;er.mustCreateTypeParameterSymbolList=!0,er.mustCreateTypeParametersNamesLookups=!0;let Di=er.typeParameterNames,Qt=er.typeParameterNamesByText,Cr=er.typeParameterNamesByTextNextNameCount,jr=er.typeParameterSymbolList;return()=>{er.typeParameterNames=Di,er.typeParameterNamesByText=Qt,er.typeParameterNamesByTextNextNameCount=Cr,er.typeParameterSymbolList=jr,er.mustCreateTypeParameterSymbolList=ut,er.mustCreateTypeParametersNamesLookups=hi}}function zn(er,ut){return er.declarations&&de(er.declarations,hi=>!!Cyn(hi)&&(!ut||!!ji(hi,Di=>Di===ut)))}function as(er,ut){if(!(la(ut)&4)||!oh(er))return!0;vot(er);let hi=sa(er).resolvedSymbol,Di=hi&&Lp(hi);return!Di||Di!==ut.target?!0:B(er.typeArguments)>=bk(ut.target.typeParameters)}function Ms(er){for(;sa(er).fakeScopeForSignatureDeclaration;)er=er.parent;return er}function go(er,ut,hi){return hi.flags&8192&&hi.symbol===er&&(!ut.enclosingDeclaration||zt(er.declarations,Qt=>ms(Qt)===ut.enclosingFile))&&(ut.flags|=1048576),ii(hi,ut)}function ea(er,ut,hi,Di){var Qt;let Cr,jr=ut&&(Si(ut)||dS(ut))&&e3e(ut,er.enclosingDeclaration),Qn=ut??Di.valueDeclaration??zn(Di)??((Qt=Di.declarations)==null?void 0:Qt[0]);if(!dn(hi,er)&&Qn){let yi=$e(er,Di,hi);wB(Qn)?Cr=tr.serializeTypeOfAccessor(Qn,Di,er):dde(Qn)&&!ap(Qn)&&!(la(hi)&196608)&&(Cr=tr.serializeTypeOfDeclaration(Qn,Di,er)),yi()}return Cr||(jr&&(hi=wO(hi)),Cr=go(Di,er,hi)),Cr??me.createKeywordTypeNode(133)}function tc(er,ut,hi){return hi===ut?!0:er&&((ss(er)||pi(er))&&er.questionToken||Si(er)&&pot(er))?Zv(ut,524288)===hi:!1}function zg(er,ut){let hi=er.flags&256,Di=Vt(er);hi&&(er.flags&=-257);let Qt,Cr=Ad(ut);if(!(hi&&Xo(Cr))){if(ut.declaration&&!ap(ut.declaration)&&!dn(Cr,er)){let jr=Uo(ut.declaration),Qn=$e(er,jr,Cr);Qt=tr.serializeReturnTypeForSignature(ut.declaration,jr,er),Qn()}Qt||(Qt=iA(er,ut,Cr))}return!Qt&&!hi&&(Qt=me.createKeywordTypeNode(133)),Di(),Qt}function iA(er,ut,hi){let Di=er.suppressReportInferenceFallback;er.suppressReportInferenceFallback=!0;let Qt=xv(ut),Cr=Qt?P0(er.mapper?Hhn(Qt,er.mapper):Qt,er):ii(hi,er);return er.suppressReportInferenceFallback=Di,Cr}function Bp(er,ut,hi=ut.enclosingDeclaration){let Di=!1,Qt=R0(er);if(Bo(er)&&(E3(Qt)||pN(Qt.parent)||zi(Qt.parent)&&RW(Qt.parent.left)&&E3(Qt.parent.right)))return Di=!0,{introducesError:Di,node:er};let Cr=Hpe(er),jr;if(kF(Qt))return jr=Uo(s0(Qt,!1,!1)),hO(jr,Qt,Cr,!1).accessibility!==0&&(Di=!0,ut.tracker.reportInaccessibleThisError()),{introducesError:Di,node:Qn(er)};if(jr=NI(Qt,Cr,!0,!0),ut.enclosingDeclaration&&!(jr&&jr.flags&262144)){jr=fn(jr);let yi=NI(Qt,Cr,!0,!0,ut.enclosingDeclaration);if(yi===st||yi===void 0&&jr!==void 0||yi&&jr&&!vt(fn(yi),jr))return yi!==st&&ut.tracker.reportInferenceFallback(er),Di=!0,{introducesError:Di,node:er,sym:jr};jr=yi}if(jr)return jr.flags&1&&jr.valueDeclaration&&(jL(jr.valueDeclaration)||dS(jr.valueDeclaration))?{introducesError:Di,node:Qn(er)}:(!(jr.flags&262144)&&!KT(er)&&hO(jr,hi,Cr,!1).accessibility!==0?(ut.tracker.reportInferenceFallback(er),Di=!0):ut.tracker.trackSymbol(jr,hi,Cr),{introducesError:Di,node:Qn(er)});return{introducesError:Di,node:er};function Qn(yi){if(yi===Qt){let Ti=Lp(jr),Us=jr.flags&262144?Jf(Ti,ut):me.cloneNode(yi);return Us.symbol=jr,v(ut,ti(Us,16777216),yi)}let Xn=_s(yi,Ti=>Qn(Ti),void 0);return v(ut,Xn,yi)}}function sC(er,ut,hi,Di){let Qt=hi?111551:788968,Cr=NI(ut,Qt,!0);if(!Cr)return;let jr=Cr.flags&2097152?JC(Cr):Cr;if(hO(Cr,er.enclosingDeclaration,Qt,!1).accessibility===0)return Ld(jr,er,Qt,Di)}function M0(er,ut){let hi=m(er,ut,!0);if(!hi)return!1;if(Bo(ut)&&Fy(ut)){Ghn(ut);let Di=sa(ut).resolvedSymbol;return!Di||!(!ut.isTypeOf&&!(Di.flags&788968)||!(B(ut.typeArguments)>=bk(Kg(Di))))}if(oh(ut)){if(l2(ut))return!1;let Di=sa(ut).resolvedSymbol;if(!Di)return!1;if(Di.flags&262144){let Qt=Lp(Di);return!(er.mapper&&G9(Qt,er.mapper)!==Qt)}if(XY(ut))return as(ut,hi)&&!QIn(ut)&&!!(Di.flags&788968)}if(WB(ut)&&ut.operator===158&&ut.type.kind===155){let Di=er.enclosingDeclaration&&Ms(er.enclosingDeclaration);return!!ji(ut,Qt=>Qt===Di)}return!0}function Ub(er,ut,hi){let Di=m(er,ut);if(hi&&!Lv(Di,Qt=>!!(Qt.flags&32768))&&M0(er,ut)){let Qt=tr.tryReuseExistingTypeNode(er,ut);if(Qt)return me.createUnionTypeNode([Qt,me.createKeywordTypeNode(157)])}return ii(Di,er)}function q5(er,ut){var hi;let Di=Fyn(me.createPropertyDeclaration,175,!0),Qt=Fyn((vn,uo,sc,yc)=>me.createPropertySignature(vn,uo,sc,yc),174,!1),Cr=ut.enclosingDeclaration,jr=[],Qn=new Set,yi=[],Xn=ut;ut={...Xn,usedSymbolNames:new Set(Xn.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((hi=Xn.remappedSymbolReferences)==null?void 0:hi.entries()),tracker:void 0};let Ti={...Xn.tracker.inner,trackSymbol:(vn,uo,sc)=>{var yc,Yo;if((yc=ut.remappedSymbolNames)!=null&&yc.has(xg(vn)))return!1;if(hO(vn,uo,sc,!1).accessibility===0){let aA=Td(vn,ut,sc);if(!(vn.flags&4)){let Wu=aA[0],Zc=ms(Xn.enclosingDeclaration);zt(Wu.declarations,Ng=>ms(Ng)===Zc)&&vA(Wu)}}else if((Yo=Xn.tracker.inner)!=null&&Yo.trackSymbol)return Xn.tracker.inner.trackSymbol(vn,uo,sc);return!1}};ut.tracker=new KPt(ut,Ti,Xn.tracker.moduleResolverHost),Fh(er,(vn,uo)=>{let sc=Bc(uo);wk(vn,sc)});let Us=!ut.bundled,Ro=er.get("export=");return Ro&&er.size>1&&Ro.flags&2098688&&(er=$u(),er.set("export=",Ro)),ta(er),iu(jr);function zo(vn){return!!vn&&vn.kind===80}function za(vn){return Eh(vn)?Le(lt(vn.declarationList.declarations,fl),zo):Le([fl(vn)],zo)}function La(vn){let uo=de(vn,yf),sc=Se(vn,Lh),yc=sc!==-1?vn[sc]:void 0;if(yc&&uo&&uo.isExportEquals&&Ir(uo.expression)&&Ir(yc.name)&&Vo(yc.name)===Vo(uo.expression)&&yc.body&&BN(yc.body)){let Yo=Le(vn,Wu=>!!(l_(Wu)&32)),Wg=yc.name,aA=yc.body;if(B(Yo)&&(yc=me.updateModuleDeclaration(yc,yc.modifiers,yc.name,aA=me.updateModuleBlock(aA,me.createNodeArray([...yc.body.statements,me.createExportDeclaration(void 0,!1,me.createNamedExports(lt(jt(Yo,Wu=>za(Wu)),Wu=>me.createExportSpecifier(!1,void 0,Wu))),void 0)]))),vn=[...vn.slice(0,sc),yc,...vn.slice(sc+1)]),!de(vn,Wu=>Wu!==yc&&u3(Wu,Wg))){jr=[];let Wu=!zt(aA.statements,Zc=>Ga(Zc,32)||yf(Zc)||Vh(Zc));F(aA.statements,Zc=>{au(Zc,Wu?32:0)}),vn=[...Le(vn,Zc=>Zc!==yc&&Zc!==uo),...jr]}}return vn}function to(vn){let uo=Le(vn,yc=>Vh(yc)&&!yc.moduleSpecifier&&!!yc.exportClause&&Ev(yc.exportClause));B(uo)>1&&(vn=[...Le(vn,Yo=>!Vh(Yo)||!!Yo.moduleSpecifier||!Yo.exportClause),me.createExportDeclaration(void 0,!1,me.createNamedExports(jt(uo,Yo=>Ma(Yo.exportClause,Ev).elements)),void 0)]);let sc=Le(vn,yc=>Vh(yc)&&!!yc.moduleSpecifier&&!!yc.exportClause&&Ev(yc.exportClause));if(B(sc)>1){let yc=Yn(sc,Yo=>Lg(Yo.moduleSpecifier)?">"+Yo.moduleSpecifier.text:">");if(yc.length!==sc.length)for(let Yo of yc)Yo.length>1&&(vn=[...Le(vn,Wg=>!Yo.includes(Wg)),me.createExportDeclaration(void 0,!1,me.createNamedExports(jt(Yo,Wg=>Ma(Wg.exportClause,Ev).elements)),Yo[0].moduleSpecifier)])}return vn}function _c(vn){let uo=Se(vn,sc=>Vh(sc)&&!sc.moduleSpecifier&&!sc.attributes&&!!sc.exportClause&&Ev(sc.exportClause));if(uo>=0){let sc=vn[uo],yc=Xt(sc.exportClause.elements,Yo=>{if(!Yo.propertyName&&Yo.name.kind!==11){let Wg=Yo.name,aA=Ao(vn),Wu=Le(aA,Zc=>u3(vn[Zc],Wg));if(B(Wu)&&ue(Wu,Zc=>uie(vn[Zc]))){for(let Zc of Wu)vn[Zc]=xA(vn[Zc]);return}}return Yo});B(yc)?vn[uo]=me.updateExportDeclaration(sc,sc.modifiers,sc.isTypeOnly,me.updateNamedExports(sc.exportClause,yc),sc.moduleSpecifier,sc.attributes):WA(vn,uo)}return vn}function iu(vn){return vn=La(vn),vn=to(vn),vn=_c(vn),Cr&&(cl(Cr)&&Sl(Cr)||Lh(Cr))&&(!zt(vn,QT)||!Gb(vn)&&zt(vn,I7))&&vn.push(REe(me)),vn}function xA(vn){let uo=(l_(vn)|32)&-129;return me.replaceModifiers(vn,uo)}function Li(vn){let uo=l_(vn)&-33;return me.replaceModifiers(vn,uo)}function ta(vn,uo,sc){uo||yi.push(new Map);let yc=0,Yo=Array.from(vn.values());for(let Wg of Yo){if(yc++,kt(ut)&&yc+2{Cu(Wg,!0,!!sc)}),yi.pop())}function Cu(vn,uo,sc){Zd(fo(vn));let yc=qA(vn);if(Qn.has(xg(yc)))return;if(Qn.add(xg(yc)),!uo||B(vn.declarations)&&zt(vn.declarations,Wg=>!!ji(Wg,aA=>aA===Cr))){let Wg=kSe(ut);ut.tracker.pushErrorFallbackNode(de(vn.declarations,aA=>ms(aA)===ut.enclosingFile)),Ul(vn,uo,sc),ut.tracker.popErrorFallbackNode(),Wg()}}function Ul(vn,uo,sc,yc=vn.escapedName){var Yo,Wg,aA,Wu,Zc,Ng,Sm;let Ff=Bc(yc),m0=yc==="default";if(uo&&!(ut.flags&131072)&&qY(Ff)&&!m0){ut.encounteredError=!0;return}let qI=m0&&!!(vn.flags&-113||vn.flags&16&&B(Zd(fo(vn))))&&!(vn.flags&2097152),df=!qI&&!uo&&qY(Ff)&&!m0;(qI||df)&&(uo=!0);let II=(uo?0:32)|(m0&&!qI?2048:0),kI=vn.flags&1536&&vn.flags&7&&yc!=="export=",RS=kI&&v6t(fo(vn),vn);if((vn.flags&8208||RS)&&kO(fo(vn),vn,wk(vn,Ff),II),vn.flags&524288&&bm(vn,Ff,II),vn.flags&98311&&yc!=="export="&&!(vn.flags&4194304)&&!(vn.flags&32)&&!(vn.flags&8192)&&!RS)if(sc)i3e(vn)&&(df=!1,qI=!1);else{let Hh=fo(vn),qy=wk(vn,Ff);if(Hh.symbol&&Hh.symbol!==vn&&Hh.symbol.flags&16&&zt(Hh.symbol.declarations,ZF)&&((Yo=Hh.symbol.members)!=null&&Yo.size||(Wg=Hh.symbol.exports)!=null&&Wg.size))ut.remappedSymbolReferences||(ut.remappedSymbolReferences=new Map),ut.remappedSymbolReferences.set(xg(Hh.symbol),vn),Ul(Hh.symbol,uo,sc,yc),ut.remappedSymbolReferences.delete(xg(Hh.symbol));else if(!(vn.flags&16)&&v6t(Hh,vn))kO(Hh,vn,qy,II);else{let W9=vn.flags&2?Jq(vn)?2:1:(aA=vn.parent)!=null&&aA.valueDeclaration&&cl((Wu=vn.parent)==null?void 0:Wu.valueDeclaration)?2:void 0,NS=qI||!(vn.flags&4)?qy:o3e(qy,vn),AG=vn.declarations&&de(vn.declarations,GO=>nc(GO));AG&&d_(AG.parent)&&AG.parent.declarations.length===1&&(AG=AG.parent.parent);let xO=(Zc=vn.declarations)==null?void 0:Zc.find(jo);if(xO&&po(xO.parent)&&Ir(xO.parent.right)&&((Ng=Hh.symbol)!=null&&Ng.valueDeclaration)&&cl(Hh.symbol.valueDeclaration)){let GO=qy===xO.parent.right.escapedText?void 0:xO.parent.right;ut.approximateLength+=12+(((Sm=GO?.escapedText)==null?void 0:Sm.length)??0),au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,GO,qy)])),0),ut.tracker.trackSymbol(Hh.symbol,ut.enclosingDeclaration,111551)}else{let GO=v(ut,me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(NS,void 0,ea(ut,void 0,Hh,vn))],W9)),AG);ut.approximateLength+=7+NS.length,au(GO,NS!==qy?II&-33:II),NS!==qy&&!uo&&(ut.approximateLength+=16+NS.length+qy.length,au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,NS,qy)])),0),df=!1,qI=!1)}}}if(vn.flags&384&&lX(vn,Ff,II),vn.flags&32&&(vn.flags&4&&vn.valueDeclaration&&po(vn.valueDeclaration.parent)&&wd(vn.valueDeclaration.parent.right)?Gyn(vn,wk(vn,Ff),II):E6t(vn,wk(vn,Ff),II)),(vn.flags&1536&&(!kI||EZ(vn))||RS)&&eM(vn,Ff,II),vn.flags&64&&!(vn.flags&32)&&Em(vn,Ff,II),vn.flags&2097152&&Gyn(vn,wk(vn,Ff),II),vn.flags&4&&vn.escapedName==="export="&&i3e(vn),vn.flags&8388608&&vn.declarations)for(let Hh of vn.declarations){let qy=V0(Hh,Hh.moduleSpecifier);if(!qy)continue;let W9=Hh.isTypeOnly,NS=vh(qy,ut);ut.approximateLength+=17+NS.length,au(me.createExportDeclaration(void 0,W9,void 0,me.createStringLiteral(NS)),0)}if(qI){let Hh=wk(vn,Ff);ut.approximateLength+=16+Hh.length,au(me.createExportAssignment(void 0,!1,me.createIdentifier(Hh)),0)}else if(df){let Hh=wk(vn,Ff);ut.approximateLength+=22+Ff.length+Hh.length,au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Hh,Ff)])),0)}}function vA(vn){if(zt(vn.declarations,jL))return;pe.assertIsDefined(yi[yi.length-1]),o3e(Bc(vn.escapedName),vn);let uo=!!(vn.flags&2097152)&&!zt(vn.declarations,sc=>!!ji(sc,Vh)||ak(sc)||Zm(sc)&&!HF(sc.moduleReference));yi[uo?0:yi.length-1].set(xg(vn),vn)}function pd(vn){return cl(vn)&&(Sl(vn)||Zu(vn))||c_(vn)&&!DB(vn)}function au(vn,uo){if(HB(vn)){let sc=l_(vn),yc=0,Yo=ut.enclosingDeclaration&&(lS(ut.enclosingDeclaration)?ms(ut.enclosingDeclaration):ut.enclosingDeclaration);uo&32&&Yo&&(pd(Yo)||Lh(Yo))&&uie(vn)&&(yc|=32),Us&&!(yc&32)&&(!Yo||!(Yo.flags&33554432))&&(J3(vn)||Eh(vn)||ah(vn)||mm(vn)||Lh(vn))&&(yc|=128),uo&2048&&(mm(vn)||p_(vn)||ah(vn))&&(yc|=2048),yc&&(vn=me.replaceModifiers(vn,yc|sc)),ut.approximateLength+=s3e(yc|sc)}jr.push(vn)}function bm(vn,uo,sc){var yc;let Yo=Ufn(vn),Wg=fa(vn).typeParameters,aA=lt(Wg,qI=>zI(qI,ut)),Wu=(yc=vn.declarations)==null?void 0:yc.find(lS),Zc=TJ(Wu?Wu.comment||Wu.parent.comment:void 0),Ng=Vt(ut);ut.flags|=8388608;let Sm=ut.enclosingDeclaration;ut.enclosingDeclaration=Wu;let Ff=Wu&&Wu.typeExpression&&K3(Wu.typeExpression)&&tr.tryReuseExistingTypeNode(ut,Wu.typeExpression.type)||ii(Yo,ut),m0=wk(vn,uo);ut.approximateLength+=8+(Zc?.length??0)+m0.length,au(VB(me.createTypeAliasDeclaration(void 0,m0,aA,Ff),Zc?[{kind:3,text:`* * `+Zc.replace(/\n/g,` * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),sc),Ng(),ut.enclosingDeclaration=Sm}function Em(Bn,uo,sc){let yc=Bk(Bn,uo);ut.approximateLength+=14+yc.length;let Yo=Dv(Bn),Wg=Kg(Bn),oA=lt(Wg,df=>zI(df,ut)),Wu=eT(Yo),Zc=B(Wu)?jg(Wu):void 0,Ng=M_(Zd(Yo),!1,Zc),Sm=B6t(0,Yo,Zc,180),Ff=B6t(1,Yo,Zc,181),h0=Dyn(Yo,Zc),qI=B(Wu)?[me.createHeritageClause(96,Xt(Wu,df=>w6t(df,111551)))]:void 0;au(me.createInterfaceDeclaration(void 0,yc,oA,qI,[...h0,...Ff,...Sm,...Ng]),sc)}function M_(Bn,uo,sc,yc){let Yo=[],Wg=0;for(let oA of Bn){if(Wg++,xt(ut)&&Wg+2aoe(yc)&&qh(yc.escapedName,99))}function bZ(Bn){return ue(jy(Bn),uo=>!(Qb(Oh(uo))&111551))}function q5(Bn,uo,sc){let yc=jy(Bn),Yo=z5(ut),Wg=Uu(yc,Zc=>Zc.parent&&Zc.parent===Bn||Yo?"real":"merged"),oA=Wg.get("real")||E,Wu=Wg.get("merged")||E;if(B(oA)||Yo){let Zc;if(Yo){let Ng=ut.flags;ut.flags|=514,Zc=D(Bn,ut,-1),ut.flags=Ng}else{let Ng=Bk(Bn,uo);Zc=me.createIdentifier(Ng),ut.approximateLength+=Ng.length}vk(oA,Zc,sc,!!(Bn.flags&67108880))}if(B(Wu)){let Zc=ms(ut.enclosingDeclaration),Ng=Bk(Bn,uo),Sm=me.createModuleBlock([me.createExportDeclaration(void 0,!1,me.createNamedExports(Xt(Le(Wu,Ff=>Ff.escapedName!=="export="),Ff=>{var h0,qI;let df=Bc(Ff.escapedName),II=Bk(Ff,df),kI=Ff.declarations&&Yb(Ff);if(Zc&&(kI?Zc!==ms(kI):!zt(Ff.declarations,zy=>ms(zy)===Zc))){(qI=(h0=ut.tracker)==null?void 0:h0.reportNonlocalAugmentation)==null||qI.call(h0,Zc,Bn,Ff);return}let TS=kI&&R5(kI,!0);SA(TS||Ff);let Hh=TS?Bk(TS,Bc(TS.escapedName)):II;return me.createExportSpecifier(!1,df===Hh?void 0:Hh,df)})))]);au(me.createModuleDeclaration(void 0,me.createIdentifier(Ng),Sm,32),0)}}function cX(Bn,uo,sc){let yc=Bk(Bn,uo);ut.approximateLength+=9+yc.length;let Yo=[],Wg=Le(Zd(fo(Bn)),Wu=>!!(Wu.flags&8)),oA=0;for(let Wu of Wg){if(oA++,xt(ut)&&oA+2!B(kI.declarations)||zt(kI.declarations,TS=>ms(TS)===ms(ut.enclosingDeclaration))||Wg?"local":"remote").get("local")||E,Zc=j3.createModuleDeclaration(void 0,uo,me.createModuleBlock([]),Yo);UA(Zc,Cr),Zc.locals=$u(Bn),Zc.symbol=Bn[0].parent;let Ng=jr;jr=[];let Sm=Us;Us=!1;let Ff={...ut,enclosingDeclaration:Zc},h0=ut;ut=Ff,ta($u(Wu),yc,!0),ut=h0,Us=Sm;let qI=jr;jr=Ng;let df=lt(qI,kI=>yf(kI)&&!kI.isExportEquals&&Ir(kI.expression)?me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,kI.expression,me.createIdentifier("default"))])):kI),II=ue(df,kI=>Ga(kI,32))?lt(df,Li):df;Zc=me.updateModuleDeclaration(Zc,Zc.modifiers,Zc.name,me.createModuleBlock(II)),au(Zc,sc)}else Wg&&(ut.approximateLength+=14,au(me.createModuleDeclaration(void 0,uo,me.createModuleBlock([]),Yo),sc))}function aoe(Bn){return!!(Bn.flags&2887656)||!(Bn.flags&4194304||Bn.escapedName==="prototype"||Bn.valueDeclaration&&lg(Bn.valueDeclaration)&&xa(Bn.valueDeclaration.parent))}function n3e(Bn){let uo=Xt(Bn,sc=>{let yc=ut.enclosingDeclaration;ut.enclosingDeclaration=sc;let Yo=sc.expression;if(Hd(Yo)){if(Ir(Yo)&&Vo(Yo)==="")return Wg(void 0);let oA;if({introducesError:oA,node:Yo}=Bp(Yo,ut),oA)return Wg(void 0)}return Wg(me.createExpressionWithTypeArguments(Yo,lt(sc.typeArguments,oA=>tr.tryReuseExistingTypeNode(ut,oA)||ii(m(ut,oA),ut))));function Wg(oA){return ut.enclosingDeclaration=yc,oA}});if(uo.length===Bn.length)return uo}function E6t(Bn,uo,sc){var yc,Yo;ut.approximateLength+=9+uo.length;let Wg=(yc=Bn.declarations)==null?void 0:yc.find(xa),oA=ut.enclosingDeclaration;ut.enclosingDeclaration=Wg||oA;let Wu=Kg(Bn),Zc=lt(Wu,W9=>zI(W9,ut));F(Wu,W9=>ut.approximateLength+=of(W9.symbol).length);let Ng=D1(Dv(Bn)),Sm=eT(Ng),Ff=Wg&&lU(Wg),h0=Ff&&n3e(Ff)||Xt(Ose(Ng),J8s),qI=fo(Bn),df=!!((Yo=qI.symbol)!=null&&Yo.valueDeclaration)&&xa(qI.symbol.valueDeclaration),II=df?lZ(qI):hr;ut.approximateLength+=(B(Sm)?8:0)+(B(h0)?11:0);let kI=[...B(Sm)?[me.createHeritageClause(96,lt(Sm,W9=>X8s(W9,II,uo)))]:[],...B(h0)?[me.createHeritageClause(119,h0)]:[]],TS=NUs(Ng,Sm,Zd(Ng)),Hh=Le(TS,W9=>!r3e(W9)),zy=zt(TS,r3e),V9=zy?z5(ut)?M_(Le(TS,r3e),!0,Sm[0],!1):[me.createPropertyDeclaration(void 0,me.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:E;zy&&!z5(ut)&&(ut.approximateLength+=9);let RS=M_(Hh,!0,Sm[0],!1),gG=M_(Le(Zd(qI),W9=>!(W9.flags&4194304)&&W9.escapedName!=="prototype"&&!aoe(W9)),!0,II,!0),kO=!df&&!!Bn.valueDeclaration&&wo(Bn.valueDeclaration)&&!zt(rg(qI,1));kO&&(ut.approximateLength+=21);let xO=kO?[me.createConstructorDeclaration(me.createModifiersFromModifierFlags(2),[],void 0)]:B6t(1,qI,II,177),U8s=Dyn(Ng,Sm[0]);ut.enclosingDeclaration=oA,au(v(ut,me.createClassDeclaration(void 0,uo,Zc,kI,[...U8s,...gG,...xO,...RS,...V9]),Bn.declarations&&Le(Bn.declarations,W9=>mm(W9)||wd(W9))[0]),sc)}function S6t(Bn){return J(Bn,uo=>{if(Ay(uo)||D0(uo))return UD(uo.propertyName||uo.name);if(po(uo)||yf(uo)){let sc=yf(uo)?uo.expression:uo.right;if(jo(sc))return Vo(sc.name)}if(C9(uo)){let sc=fl(uo);if(sc&&Ir(sc))return Vo(sc)}})}function Tyn(Bn,uo,sc){var yc,Yo,Wg,oA,Wu;let Zc=Yb(Bn);if(!Zc)return pe.fail();let Ng=qA(R5(Zc,!0));if(!Ng)return;let Sm=PY(Ng)&&S6t(Bn.declarations)||Bc(Ng.escapedName);Sm==="export="&&Tt&&(Sm="default");let Ff=Bk(Ng,Sm);switch(SA(Ng),Zc.kind){case 209:if(((Yo=(yc=Zc.parent)==null?void 0:yc.parent)==null?void 0:Yo.kind)===261){let df=vh(Ng.parent||Ng,ut),{propertyName:II}=Zc,kI=II&&Ir(II)?Vo(II):void 0;ut.approximateLength+=24+uo.length+df.length+(kI?.length??0),au(me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,kI?me.createIdentifier(kI):void 0,me.createIdentifier(uo))])),me.createStringLiteral(df),void 0),0);break}pe.failBadSyntaxKind(((Wg=Zc.parent)==null?void 0:Wg.parent)||Zc,"Unhandled binding element grandparent kind in declaration serialization");break;case 305:((Wu=(oA=Zc.parent)==null?void 0:oA.parent)==null?void 0:Wu.kind)===227&&vfe(Bc(Bn.escapedName),Ff);break;case 261:if(jo(Zc.initializer)){let df=Zc.initializer,II=me.createUniqueName(uo),kI=vh(Ng.parent||Ng,ut);ut.approximateLength+=22+kI.length+Vo(II).length,au(me.createImportEqualsDeclaration(void 0,!1,II,me.createExternalModuleReference(me.createStringLiteral(kI))),0),ut.approximateLength+=12+uo.length+Vo(II).length+Vo(df.name).length,au(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(uo),me.createQualifiedName(II,df.name)),sc);break}case 272:if(Ng.escapedName==="export="&&zt(Ng.declarations,df=>al(df)&&Zu(df))){i3e(Bn);break}let h0=!(Ng.flags&512)&&!nc(Zc);ut.approximateLength+=11+uo.length+Bc(Ng.escapedName).length,au(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(uo),h0?gh(Ng,ut,-1,!1):me.createExternalModuleReference(me.createStringLiteral(vh(Ng,ut)))),h0?sc:0);break;case 271:au(me.createNamespaceExportDeclaration(Vo(Zc.name)),0);break;case 274:{let df=vh(Ng.parent||Ng,ut),II=ut.bundled?me.createStringLiteral(df):Zc.parent.moduleSpecifier,kI=Yf(Zc.parent)?Zc.parent.attributes:void 0,TS=RN(Zc.parent);ut.approximateLength+=14+uo.length+3+(TS?4:0),au(me.createImportDeclaration(void 0,me.createImportClause(TS?156:void 0,me.createIdentifier(uo),void 0),II,kI),0);break}case 275:{let df=vh(Ng.parent||Ng,ut),II=ut.bundled?me.createStringLiteral(df):Zc.parent.parent.moduleSpecifier,kI=RN(Zc.parent.parent);ut.approximateLength+=19+uo.length+3+(kI?4:0),au(me.createImportDeclaration(void 0,me.createImportClause(kI?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(uo))),II,Zc.parent.attributes),0);break}case 281:ut.approximateLength+=19+uo.length+3,au(me.createExportDeclaration(void 0,!1,me.createNamespaceExport(me.createIdentifier(uo)),me.createStringLiteral(vh(Ng,ut))),0);break;case 277:{let df=vh(Ng.parent||Ng,ut),II=ut.bundled?me.createStringLiteral(df):Zc.parent.parent.parent.moduleSpecifier,kI=RN(Zc.parent.parent.parent);ut.approximateLength+=19+uo.length+3+(kI?4:0),au(me.createImportDeclaration(void 0,me.createImportClause(kI?156:void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,uo!==Sm?me.createIdentifier(Sm):void 0,me.createIdentifier(uo))])),II,Zc.parent.parent.parent.attributes),0);break}case 282:let qI=Zc.parent.parent.moduleSpecifier;if(qI){let df=Zc.propertyName;df&&dv(df)&&(Sm="default")}vfe(Bc(Bn.escapedName),qI?Sm:Ff,qI&&CA(qI)?me.createStringLiteral(qI.text):void 0);break;case 278:i3e(Bn);break;case 227:case 212:case 213:Bn.escapedName==="default"||Bn.escapedName==="export="?i3e(Bn):vfe(uo,Ff);break;default:return pe.failBadSyntaxKind(Zc,"Unhandled alias declaration kind in symbol serializer!")}}function vfe(Bn,uo,sc){ut.approximateLength+=16+Bn.length+(Bn!==uo?uo.length:0),au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Bn!==uo?uo:void 0,Bn)]),sc),0)}function i3e(Bn){var uo;if(Bn.flags&4194304)return!1;let sc=Bc(Bn.escapedName),yc=sc==="export=",Wg=yc||sc==="default",oA=Bn.declarations&&Yb(Bn),Wu=oA&&R5(oA,!0);if(Wu&&B(Wu.declarations)&&zt(Wu.declarations,Zc=>ms(Zc)===ms(Cr))){let Zc=oA&&(yf(oA)||po(oA)?Dne(oA):YZe(oA)),Ng=Zc&&Hd(Zc)?QUs(Zc):void 0,Sm=Ng&&NI(Ng,-1,!0,!0,Cr);(Sm||Wu)&&SA(Sm||Wu);let Ff=ut.tracker.disableTrackSymbol;if(ut.tracker.disableTrackSymbol=!0,Wg)ut.approximateLength+=10,jr.push(me.createExportAssignment(void 0,yc,Vv(Wu,ut,-1)));else if(Ng===Zc&&Ng)vfe(sc,Vo(Ng));else if(Zc&&wd(Zc))vfe(sc,Bk(Wu,of(Wu)));else{let h0=o3e(sc,Bn);ut.approximateLength+=h0.length+10,au(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(h0),gh(Wu,ut,-1,!1)),0),vfe(sc,h0)}return ut.tracker.disableTrackSymbol=Ff,!0}else{let Zc=o3e(sc,Bn),Ng=G1(fo(qA(Bn)));if(v6t(Ng,Bn))DO(Ng,Bn,Zc,Wg?0:32);else{let Sm=((uo=ut.enclosingDeclaration)==null?void 0:uo.kind)===268&&(!(Bn.flags&98304)||Bn.flags&65536)?1:2;ut.approximateLength+=Zc.length+5;let Ff=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zc,void 0,ea(ut,void 0,Ng,Bn))],Sm));au(Ff,Wu&&Wu.flags&4&&Wu.escapedName==="export="?128:sc===Zc?32:0)}return Wg?(ut.approximateLength+=Zc.length+10,jr.push(me.createExportAssignment(void 0,yc,me.createIdentifier(Zc))),!0):sc!==Zc?(vfe(sc,Zc),!0):!1}}function v6t(Bn,uo){var sc;let yc=ms(ut.enclosingDeclaration);return la(Bn)&48&&!zt((sc=Bn.symbol)==null?void 0:sc.declarations,uc)&&!B(p0(Bn))&&!D2e(Bn)&&!!(B(Le(Zd(Bn),aoe))||B(rg(Bn,0)))&&!B(rg(Bn,1))&&!zn(uo,Cr)&&!(Bn.symbol&&zt(Bn.symbol.declarations,Yo=>ms(Yo)!==yc))&&!zt(Zd(Bn),Yo=>Z2e(Yo.escapedName))&&!zt(Zd(Bn),Yo=>zt(Yo.declarations,Wg=>ms(Wg)!==yc))&&ue(Zd(Bn),Yo=>qh(of(Yo),Ze)?Yo.flags&98304?hR(Yo)===T9(Yo):!0:!1)}function Ryn(Bn,uo,sc){return function(Yo,Wg,oA){var Wu,Zc,Ng,Sm,Ff,h0;let qI=d2(Yo),df=!!(qI&2)&&!z5(ut);if(Wg&&Yo.flags&2887656)return[];if(Yo.flags&4194304||Yo.escapedName==="constructor"||oA&&Fg(oA,Yo.escapedName)&&BR(Fg(oA,Yo.escapedName))===BR(Yo)&&(Yo.flags&16777216)===(Fg(oA,Yo.escapedName).flags&16777216)&&aG(fo(Yo),Wi(oA,Yo.escapedName)))return[];let II=qI&-1025|(Wg?256:0),kI=Efe(Yo,ut),TS=(Wu=Yo.declarations)==null?void 0:Wu.find(Qp(pi,BB,nc,ss,po,jo));if(Yo.flags&98304&&sc){let Hh=[];if(Yo.flags&65536){let zy=Yo.declarations&&F(Yo.declarations,gG=>{if(gG.kind===179)return gG;if(Ll(gG)&&b3(gG))return F(gG.arguments[2].properties,kO=>{let xO=fl(kO);if(xO&&Ir(xO)&&Vo(xO)==="set")return kO})});pe.assert(!!zy);let V9=Gd(zy)?vS(zy).parameters[0]:void 0,RS=(Zc=Yo.declarations)==null?void 0:Zc.find(Av);ut.approximateLength+=s3e(II)+7+(V9?of(V9).length:5)+(df?0:2),Hh.push(v(ut,me.createSetAccessorDeclaration(me.createModifiersFromModifierFlags(II),kI,[me.createParameterDeclaration(void 0,void 0,V9?qc(V9,xs(V9),ut):"value",void 0,df?void 0:ea(ut,RS,T9(Yo),Yo))],void 0),RS??TS))}if(Yo.flags&32768){let zy=(Ng=Yo.declarations)==null?void 0:Ng.find(wB);ut.approximateLength+=s3e(II)+8+(df?0:2),Hh.push(v(ut,me.createGetAccessorDeclaration(me.createModifiersFromModifierFlags(II),kI,[],df?void 0:ea(ut,zy,fo(Yo),Yo),void 0),zy??TS))}return Hh}else if(Yo.flags&98311){let Hh=(BR(Yo)?8:0)|II;return ut.approximateLength+=2+(df?0:2)+s3e(Hh),v(ut,Bn(me.createModifiersFromModifierFlags(Hh),kI,Yo.flags&16777216?me.createToken(58):void 0,df?void 0:ea(ut,(Sm=Yo.declarations)==null?void 0:Sm.find(kg),T9(Yo),Yo),void 0),((Ff=Yo.declarations)==null?void 0:Ff.find(Qp(pi,nc)))||TS)}if(Yo.flags&8208){let Hh=fo(Yo),zy=rg(Hh,0);if(df){let RS=(BR(Yo)?8:0)|II;return ut.approximateLength+=1+s3e(RS),v(ut,Bn(me.createModifiersFromModifierFlags(RS),kI,Yo.flags&16777216?me.createToken(58):void 0,void 0,void 0),((h0=Yo.declarations)==null?void 0:h0.find(Gd))||zy[0]&&zy[0].declaration||Yo.declarations&&Yo.declarations[0])}let V9=[];for(let RS of zy){ut.approximateLength+=1;let gG=ka(RS,uo,ut,{name:kI,questionToken:Yo.flags&16777216?me.createToken(58):void 0,modifiers:II?me.createModifiersFromModifierFlags(II):void 0}),kO=RS.declaration&&Ene(RS.declaration.parent)?RS.declaration.parent:RS.declaration;V9.push(v(ut,gG,kO))}return V9}return pe.fail(`Unhandled class member kind! ${Yo.__debugFlags||Yo.flags}`)}}function s3e(Bn){let uo=0;return Bn&32&&(uo+=7),Bn&128&&(uo+=8),Bn&2048&&(uo+=8),Bn&4096&&(uo+=6),Bn&1&&(uo+=7),Bn&2&&(uo+=8),Bn&4&&(uo+=10),Bn&64&&(uo+=9),Bn&256&&(uo+=7),Bn&16&&(uo+=9),Bn&8&&(uo+=9),Bn&512&&(uo+=9),Bn&1024&&(uo+=6),Bn&8192&&(uo+=3),Bn&16384&&(uo+=4),uo}function Nyn(Bn,uo){return Qt(Bn,!1,uo)}function B6t(Bn,uo,sc,yc){let Yo=rg(uo,Bn);if(Bn===1){if(!sc&&ue(Yo,Wu=>B(Wu.parameters)===0))return[];if(sc){let Wu=rg(sc,1);if(!B(Wu)&&ue(Yo,Zc=>B(Zc.parameters)===0))return[];if(Wu.length===Yo.length){let Zc=!1;for(let Ng=0;Ngii(Yo,ut)),yc=Vv(Bn.target.symbol,ut,788968)):Bn.symbol&&Ppe(Bn.symbol,Cr,uo)&&(yc=Vv(Bn.symbol,ut,788968)),yc)return me.createExpressionWithTypeArguments(yc,sc)}function J8s(Bn){let uo=w6t(Bn,788968);if(uo)return uo;if(Bn.symbol)return me.createExpressionWithTypeArguments(Vv(Bn.symbol,ut,788968),void 0)}function o3e(Bn,uo){var sc,yc;let Yo=uo?xg(uo):void 0;if(Yo&&ut.remappedSymbolNames.has(Yo))return ut.remappedSymbolNames.get(Yo);uo&&(Bn=kyn(uo,Bn));let Wg=0,oA=Bn;for(;(sc=ut.usedSymbolNames)!=null&&sc.has(Bn);)Wg++,Bn=`${oA}_${Wg}`;return(yc=ut.usedSymbolNames)==null||yc.add(Bn),Yo&&ut.remappedSymbolNames.set(Yo,Bn),Bn}function kyn(Bn,uo){if(uo==="default"||uo==="__class"||uo==="__function"){let sc=Vt(ut);ut.flags|=16777216;let yc=F5(Bn,ut);sc(),uo=yc.length>0&&mne(yc.charCodeAt(0))?A2(yc):yc}return uo==="default"?uo="_default":uo==="export="&&(uo="_exports"),uo=qh(uo,Ze)&&!zY(uo)?uo:"_"+uo.replace(/[^a-z0-9]/gi,"_"),uo}function Bk(Bn,uo){let sc=xg(Bn);return ut.remappedSymbolNames.has(sc)?ut.remappedSymbolNames.get(sc):(uo=kyn(Bn,uo),ut.remappedSymbolNames.set(sc,uo),uo)}}function z5(er){return er.maxExpansionDepth!==-1}function r3e(er){return!!er.valueDeclaration&&sh(er.valueDeclaration)&&p(er.valueDeclaration.name)}function gct(er){if(er.valueDeclaration&&sh(er.valueDeclaration)&&p(er.valueDeclaration.name))return me.cloneNode(er.valueDeclaration.name)}}function Vse(u){var m;let v=la(u)&4?u.target.symbol:u.symbol;return bA(u)||!!((m=v?.declarations)!=null&&m.some(D=>s.isSourceFileDefaultLibrary(ms(D))))}function Ik(u,m,v=16384,D){return D?W(D).getText():yW(W);function W(Y){let oe=XQ(v)|70221824|512,Be=kt.typePredicateToTypePredicateNode(u,m,oe),Me=bQ(),He=m&&ms(m);return Me.writeNode(4,Be,He,Y),Y}}function k2e(u,m){let v=[],D=0;for(let W=0;Wfl(oe)?oe:void 0),Y=W&&fl(W);if(W&&Y){if(Ll(W)&&b3(W))return of(u);if(Un(Y)&&!(aI(u)&4096)){let oe=fa(u).nameType;if(oe&&oe.flags&384){let Be=Qpe(u,m);if(Be!==void 0)return Be}}return Md(Y)}if(W||(W=u.declarations[0]),W.parent&&W.parent.kind===261)return Md(W.parent.name);switch(W.kind){case 232:case 219:case 220:return m&&!m.encounteredError&&!(m.flags&131072)&&(m.encounteredError=!0),W.kind===232?"(Anonymous class)":"(Anonymous function)"}}let D=Qpe(u,m);return D!==void 0?D:of(u)}function hk(u){if(u){let v=sa(u);return v.isVisible===void 0&&(v.isVisible=!!m()),v.isVisible}return!1;function m(){switch(u.kind){case 339:case 347:case 341:return!!(u.parent&&u.parent.parent&&u.parent.parent.parent&&al(u.parent.parent.parent));case 209:return hk(u.parent.parent);case 261:if(Nu(u.name)&&!u.name.elements.length)return!1;case 268:case 264:case 265:case 266:case 263:case 267:case 272:if(BF(u))return!0;let v=Tn(u);return!(uct(u)&32)&&!(u.kind!==272&&v.kind!==308&&v.flags&33554432)?fc(v):hk(v);case 173:case 172:case 178:case 179:case 175:case 174:if(Zb(u,6))return!1;case 177:case 181:case 180:case 182:case 170:case 269:case 185:case 186:case 188:case 184:case 189:case 190:case 193:case 194:case 197:case 203:return hk(u.parent);case 274:case 275:case 277:return!1;case 169:case 308:case 271:return!0;case 278:return!1;default:return!1}}}function Wse(u,m){let v;u.kind!==11&&u.parent&&u.parent.kind===278?v=An(u,u,2998271,void 0,!1):u.parent.kind===282&&(v=bq(u.parent,2998271));let D,W;return v&&(W=new Set,W.add(xg(v)),Y(v.declarations)),D;function Y(oe){F(oe,Be=>{let Me=Tv(Be)||Be;if(m?sa(Be).isVisible=!0:(D=D||[],Qi(D,Me)),_3(Be)){let He=Be.moduleReference,$e=T0(He),Vt=An(Be,$e.escapedText,901119,void 0,!1);Vt&&W&&Ar(W,xg(Vt))&&Y(Vt.declarations)}})}}function HN(u,m){let v=nt(u,m);if(v>=0){let{length:D}=Jx;for(let W=v;W=d9;v--){if(Kt(Jx[v],$U[v]))return-1;if(Jx[v]===u&&$U[v]===m)return v}return-1}function Kt(u,m){switch(m){case 0:return!!fa(u).type;case 2:return!!fa(u).declaredType;case 1:return!!u.resolvedBaseConstructorType;case 3:return!!u.resolvedReturnType;case 4:return!!u.immediateBaseConstraint;case 5:return!!u.resolvedTypeArguments;case 6:return!!u.baseTypesResolved;case 7:return!!fa(u).writeType;case 8:return sa(u).parameterInitializerContainsUndefined!==void 0}return pe.assertNever(m)}function xr(){return Jx.pop(),$U.pop(),p5.pop()}function Tn(u){return ji(Gw(u),m=>{switch(m.kind){case 261:case 262:case 277:case 276:case 275:case 274:return!1;default:return!0}}).parent}function Ai(u){let m=Lp(nC(u));return m.typeParameters?uZ(m,lt(m.typeParameters,v=>hr)):m}function Wi(u,m){let v=Fg(u,m);return v?fo(v):void 0}function Ba(u,m){var v;let D;return Wi(u,m)||(D=(v=Wq(u,m))==null?void 0:v.type)&&V0(D,!0,!0)}function Xo(u){return u&&(u.flags&1)!==0}function lo(u){return u===nn||!!(u.flags&1&&u.aliasSymbol)}function Cc(u,m){if(m!==0)return Gq(u,!1,m);let v=Uo(u);return v&&fa(v).type||Gq(u,!1,m)}function Tl(u,m,v){if(u=am(u,Me=>!(Me.flags&98304)),u.flags&131072)return Jg;if(u.flags&1048576)return Xf(u,Me=>Tl(Me,m,v));let D=Ha(lt(m,gZ)),W=[],Y=[];for(let Me of Zd(u)){let He=Oq(Me,8576);!pg(He,D)&&!(d2(Me)&6)&&kot(Me)?W.push(Me):Y.push(He)}if(kK(u)||xK(D)){if(Y.length&&(D=Ha([D,...Y])),D.flags&131072)return u;let Me=x3s();return Me?Xse(Me,[u,D]):nn}let oe=$u();for(let Me of W)oe.set(Me.escapedName,YUt(Me,!1));let Be=Qf(v,oe,E,E,p0(u));return Be.objectFlags|=4194304,Be}function Sp(u){return!!(u.flags&465829888)&&uh(W_(u)||cn,32768)}function rp(u){let m=Zv(u,Sp)?Xf(u,v=>v.flags&465829888?QN(v):v):u;return Fv(m,524288)}function $A(u,m){let v=Nv(u);return v?CZ(v,m):m}function Nv(u){let m=ES(u);if(m&&aU(m)&&m.flowNode){let v=v9(u);if(v){let D=gn(j3.createStringLiteral(v),u),W=x_(m)?m:j3.createParenthesizedExpression(m),Y=gn(j3.createElementAccessExpression(W,D),u);return UA(D,Y),UA(Y,u),W!==m&&UA(W,Y),Y.flowNode=m.flowNode,Y}}}function ES(u){let m=u.parent.parent;switch(m.kind){case 209:case 304:return Nv(m);case 210:return Nv(u.parent);case 261:return m.initializer;case 227:return m.right}}function v9(u){let m=u.parent;return u.kind===209&&m.kind===207?B9(u.propertyName||u.name):u.kind===304||u.kind===305?B9(u.name):""+m.elements.indexOf(u)}function B9(u){let m=gZ(u);return m.flags&384?""+m.value:void 0}function eG(u){let m=u.dotDotDotToken?32:0,v=Cc(u.parent.parent,m);return v&&mO(u,v,!1)}function mO(u,m,v){if(Xo(m))return m;let D=u.parent;at&&u.flags&33554432&&KL(u)?m=hZ(m):at&&D.parent.initializer&&!bR(Zmn(D.parent.initializer),65536)&&(m=Fv(m,524288));let W=32|(v||Uq(u)?16:0),Y;if(D.kind===207)if(u.dotDotDotToken){if(m=qB(m),m.flags&2||!SPe(m))return Br(u,Z.Rest_types_may_only_be_created_from_object_types),nn;let oe=[];for(let Be of D.elements)Be.dotDotDotToken||oe.push(Be.propertyName||Be.name);Y=Tl(m,oe,u.symbol)}else{let oe=u.propertyName||u.name,Be=gZ(oe),Me=k1(m,Be,W,oe);Y=$A(u,Me)}else{let oe=Z9(65|(u.dotDotDotToken?0:128),m,wt,D),Be=D.elements.indexOf(u);if(u.dotDotDotToken){let Me=Xf(m,He=>He.flags&58982400?QN(He):He);Y=kE(Me,bA)?Xf(Me,He=>ife(He,Be)):f0(oe)}else if(G9(m)){let Me=_R(Be),He=bO(m,Me,W,u.name)||nn;Y=$A(u,He)}else Y=oe}return u.initializer?Zh(ai(u))?at&&!bR(pfe(u,0),16777216)?rp(Y):Y:W8t(u,Ha([rp(Y),pfe(u,0)],2)):Y}function sd(u){let m=sN(u);if(m)return tl(m)}function Wm(u){let m=JA(u,!0);return m.kind===106||m.kind===80&&W0(m)===dt}function w9(u){let m=JA(u,!0);return m.kind===210&&m.elements.length===0}function V0(u,m=!1,v=!0){return at&&v?BO(u,m):u}function Gq(u,m,v){if(nc(u)&&u.parent.parent.kind===250){let oe=XN(o8t(Ml(u.parent.parent.expression,v)));return oe.flags&4456448?Ihn(oe):$r}if(nc(u)&&u.parent.parent.kind===251){let oe=u.parent.parent;return KPe(oe)||hr}if(Nu(u.parent))return eG(u);let D=pi(u)&&!Fw(u)||ss(u)||mOt(u),W=m&&GB(u),Y=_O(u);if(ine(u))return Y?Xo(Y)||Y===cn?Y:nn:je?cn:hr;if(Y)return V0(Y,D,W);if((Rt||wo(u))&&nc(u)&&!Nu(u.name)&&!(uct(u)&32)&&!(u.flags&33554432)){if(!(aX(u)&6)&&(!u.initializer||Wm(u.initializer)))return Sn;if(u.initializer&&w9(u.initializer))return HC}if(Si(u)){if(!u.symbol)return;let oe=u.parent;if(oe.kind===179&&Mse(oe)){let He=yp(Uo(u.parent),178);if(He){let $e=vS(He),Vt=_6t(oe);return Vt&&u===Vt?(pe.assert(!Vt.type),fo($e.thisParameter)):Ad($e)}}let Be=n3s(oe,u);if(Be)return Be;let Me=u.symbol.escapedName==="this"?XKt(oe):dCn(u);if(Me)return V0(Me,!1,W)}if(A1(u)&&u.initializer){if(wo(u)&&!Si(u)){let Be=Ii(u,Uo(u),L7(u));if(Be)return Be}let oe=W8t(u,pfe(u,v));return V0(oe,D,W)}if(pi(u)&&(Rt||wo(u)))if(tm(u)){let oe=Le(u.parent.members,Al),Be=oe.length?Ce(u.symbol,oe):c_(u)&128?Hot(u.symbol):void 0;return Be&&V0(Be,!0,W)}else{let oe=cQ(u.parent),Be=oe?Oe(u.symbol,oe):c_(u)&128?Hot(u.symbol):void 0;return Be&&V0(Be,!0,W)}if(TN(u))return tn;if(Nu(u.name))return Xpe(u.name,!1,!0)}function tG(u){if(u.valueDeclaration&&po(u.valueDeclaration)){let m=fa(u);return m.isConstructorDeclaredProperty===void 0&&(m.isConstructorDeclaredProperty=!1,m.isConstructorDeclaredProperty=!!vo(u)&&ue(u.declarations,v=>po(v)&&pat(v)&&(v.left.kind!==213||I1(v.left.argumentExpression))&&!Jo(void 0,v,u,v))),m.isConstructorDeclaredProperty}return!1}function mk(u){let m=u.valueDeclaration;return m&&pi(m)&&!Zh(m)&&!m.initializer&&(Rt||wo(m))}function vo(u){if(u.declarations)for(let m of u.declarations){let v=i0(m,!1,!1);if(v&&(v.kind===177||KN(v)))return v}}function q(u){let m=ms(u.declarations[0]),v=Bc(u.escapedName),D=u.declarations.every(Y=>wo(Y)&&bp(Y)&&dN(Y.expression)),W=D?me.createPropertyAccessExpression(me.createPropertyAccessExpression(me.createIdentifier("module"),me.createIdentifier("exports")),v):me.createPropertyAccessExpression(me.createIdentifier("exports"),v);return D&&UA(W.expression.expression,W.expression),UA(W.expression,W),UA(W,m),W.flowNode=m.endFlowNode,CZ(W,Sn,wt)}function Ce(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName);for(let D of m){let W=me.createPropertyAccessExpression(me.createThis(),v);UA(W.expression,W),UA(W,D),W.flowNode=D.returnFlowNode;let Y=bt(W,u);if(Rt&&(Y===Sn||Y===HC)&&Br(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,xl(u),ro(Y)),!kE(Y,wPe))return BSe(Y)}}function Oe(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName),D=me.createPropertyAccessExpression(me.createThis(),v);UA(D.expression,D),UA(D,m),D.flowNode=m.returnFlowNode;let W=bt(D,u);return Rt&&(W===Sn||W===HC)&&Br(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,xl(u),ro(W)),kE(W,wPe)?void 0:BSe(W)}function bt(u,m){let v=m?.valueDeclaration&&(!mk(m)||c_(m.valueDeclaration)&128)&&Hot(m)||wt;return CZ(u,Sn,v)}function Nr(u,m){let v=XY(u.valueDeclaration);if(v){let Be=wo(v)?uv(v):void 0;return Be&&Be.typeExpression?tl(Be.typeExpression):u.valueDeclaration&&Ii(u.valueDeclaration,u,v)||Q5(DI(v))}let D,W=!1,Y=!1;if(tG(u)&&(D=Oe(u,vo(u))),!D){let Be;if(u.declarations){let Me;for(let He of u.declarations){let $e=po(He)||Ll(He)?He:bp(He)?po(He.parent)?He.parent:He:void 0;if(!$e)continue;let Vt=bp($e)?sU($e):oI($e);(Vt===4||po($e)&&pat($e,Vt))&&(E2($e)?W=!0:Y=!0),Ll($e)||(Me=Jo(Me,$e,u,He)),Me||(Be||(Be=[])).push(po($e)||Ll($e)?du(u,m,$e,Vt):Oi)}D=Me}if(!D){if(!B(Be))return nn;let Me=W&&u.declarations?CO(Be,u.declarations):void 0;if(Y){let $e=Hot(u);$e&&((Me||(Me=[])).push($e),W=!0)}let He=zt(Me,$e=>!!($e.flags&-98305))?Me:Be;D=Ha(He)}}let oe=G1(V0(D,!1,Y&&!W));return u.valueDeclaration&&wo(u.valueDeclaration)&&am(oe,Be=>!!(Be.flags&-98305))===Oi?(X5(u.valueDeclaration,hr),hr):oe}function Ii(u,m,v){var D,W;if(!wo(u)||!v||!ag(v)||v.properties.length)return;let Y=$u();for(;po(u)||jo(u);){let Me=bS(u);(D=Me?.exports)!=null&&D.size&&ON(Y,Me.exports),u=po(u)?u.parent:u.parent.parent}let oe=bS(u);(W=oe?.exports)!=null&&W.size&&ON(Y,oe.exports);let Be=Qf(m,Y,E,E,E);return Be.objectFlags|=4096,Be}function Jo(u,m,v,D){var W;let Y=Zh(m.parent);if(Y){let oe=G1(tl(Y));if(u)!lo(u)&&!lo(oe)&&!aG(u,oe)&&y0n(void 0,u,D,oe);else return oe}if((W=v.parent)!=null&&W.valueDeclaration){let oe=D5(v.parent);if(oe.valueDeclaration){let Be=Zh(oe.valueDeclaration);if(Be){let Me=Fg(tl(Be),v.escapedName);if(Me)return hR(Me)}}}return u}function du(u,m,v,D){if(Ll(v)){if(m)return fo(m);let oe=DI(v.arguments[2]),Be=Wi(oe,"value");if(Be)return Be;let Me=Wi(oe,"get");if(Me){let $e=QK(Me);if($e)return Ad($e)}let He=Wi(oe,"set");if(He){let $e=QK(He);if($e)return R8t($e)}return hr}if(uf(v.left,v.right))return hr;let W=D===1&&(jo(v.left)||Qg(v.left))&&(dN(v.left.expression)||Ir(v.left.expression)&&y3(v.left.expression)),Y=m?fo(m):W?my(DI(v.right)):Q5(DI(v.right));if(Y.flags&524288&&D===2&&u.escapedName==="export="){let oe=CR(Y),Be=$u();y7(oe.members,Be);let Me=Be.size;m&&!m.exports&&(m.exports=$u()),(m||u).exports.forEach(($e,Vt)=>{var xt;let wr=Be.get(Vt);if(wr&&wr!==$e&&!($e.flags&2097152))if($e.flags&111551&&wr.flags&111551){if($e.valueDeclaration&&wr.valueDeclaration&&ms($e.valueDeclaration)!==ms(wr.valueDeclaration)){let vn=Bc($e.escapedName),ii=((xt=Gs(wr.valueDeclaration,sh))==null?void 0:xt.name)||wr.valueDeclaration;ug(Br($e.valueDeclaration,Z.Duplicate_identifier_0,vn),mo(ii,Z._0_was_also_declared_here,vn)),ug(Br(ii,Z.Duplicate_identifier_0,vn),mo($e.valueDeclaration,Z._0_was_also_declared_here,vn))}let dn=AA($e.flags|wr.flags,Vt);dn.links.type=Ha([fo($e),fo(wr)]),dn.valueDeclaration=wr.valueDeclaration,dn.declarations=Nn(wr.declarations,$e.declarations),Be.set(Vt,dn)}else Be.set(Vt,wv($e,wr));else Be.set(Vt,$e)});let He=Qf(Me!==Be.size?void 0:oe.symbol,Be,oe.callSignatures,oe.constructSignatures,oe.indexInfos);if(Me===Be.size&&(Y.aliasSymbol&&(He.aliasSymbol=Y.aliasSymbol,He.aliasTypeArguments=Y.aliasTypeArguments),la(Y)&4)){He.aliasSymbol=Y.symbol;let $e=gf(Y);He.aliasTypeArguments=B($e)?$e:void 0}return He.objectFlags|=YOe([Y])|la(Y)&20608,He.symbol&&He.symbol.flags&32&&Y===Dv(He.symbol)&&(He.objectFlags|=16777216),He}return Qot(Y)?(X5(v,f_),f_):Y}function uf(u,m){return jo(u)&&u.expression.kind===110&&Vz(m,v=>C_(u,v))}function E2(u){let m=i0(u,!1,!1);return m.kind===177||m.kind===263||m.kind===219&&!Ene(m.parent)}function CO(u,m){return pe.assert(u.length===m.length),u.filter((v,D)=>{let W=m[D],Y=po(W)?W:po(W.parent)?W.parent:void 0;return Y&&E2(Y)})}function IR(u,m,v){if(u.initializer){let D=Nu(u.name)?Xpe(u.name,!0,!1):cn;return V0(J_n(u,pfe(u,0,D)))}return Nu(u.name)?Xpe(u.name,m,v):(v&&!sot(u)&&X5(u,hr),m?ds:hr)}function Fq(u,m,v){let D=$u(),W,Y=131200;F(u.elements,Be=>{let Me=Be.propertyName||Be.name;if(Be.dotDotDotToken){W=sG($r,hr,!1);return}let He=gZ(Me);if(!p2(He)){Y|=512;return}let $e=f2(He),Vt=4|(Be.initializer?16777216:0),xt=AA(Vt,$e);xt.links.type=IR(Be,m,v),D.set(xt.escapedName,xt)});let oe=Qf(void 0,D,E,E,W?[W]:E);return oe.objectFlags|=Y,m&&(oe.pattern=u,oe.objectFlags|=131072),oe}function PJt(u,m,v){let D=u.elements,W=li(D),Y=W&&W.kind===209&&W.dotDotDotToken?W:void 0;if(D.length===0||D.length===1&&Y)return Ze>=2?ehn(hr):f_;let oe=lt(D,$e=>Ep($e)?hr:IR($e,m,v)),Be=De(D,$e=>!($e===Y||Ep($e)||Uq($e)),D.length-1)+1,Me=lt(D,($e,Vt)=>$e===Y?4:Vt>=Be?2:1),He=bk(oe,Me);return m&&(He=kIn(He),He.pattern=u,He.objectFlags|=131072),He}function Xpe(u,m=!1,v=!1){m&&JB.push(u);let D=u.kind===207?Fq(u,m,v):PJt(u,m,v);return m&&JB.pop(),D}function Zq(u,m){return G2e(Gq(u,!0,0),u,m)}function MJt(u){let m=sa(u);if(!m.resolvedType){let v=AA(4096,"__importAttributes"),D=$u();F(u.elements,Y=>{let oe=AA(4,lde(Y));oe.parent=v,oe.links.type=XUs(Y),oe.links.target=oe,D.set(oe.escapedName,oe)});let W=Qf(v,D,E,E,E);W.objectFlags|=262272,m.resolvedType=W}return m.resolvedType}function HJt(u){let m=bS(u),v=C3s(!1);return v&&m&&m===v}function G2e(u,m,v){return u?(u.flags&4096&&HJt(m.parent)&&(u=QUt(m)),v&&$ot(m,u),u.flags&8192&&(mg(m)||!_O(m))&&u.symbol!==Uo(m)&&(u=ci),G1(u)):(u=Si(m)&&m.dotDotDotToken?f_:hr,v&&(sot(m)||X5(m,u)),u)}function sot(u){let m=Gw(u),v=m.kind===170?m.parent:m;return HPe(v)}function _O(u){let m=Zh(u);if(m)return tl(m)}function YJt(u){let m=u.valueDeclaration;return m?(mg(m)&&(m=ai(m)),Si(m)?Zot(m.parent):!1):!1}function QJt(u){let m=fa(u);if(!m.type){let v=XJt(u);return!m.type&&!YJt(u)&&(m.type=v),v}return m.type}function XJt(u){if(u.flags&4194304)return Ai(u);if(u===ir)return hr;if(u.flags&134217728&&u.valueDeclaration){let D=Uo(ms(u.valueDeclaration)),W=AA(D.flags,"exports");W.declarations=D.declarations?D.declarations.slice():[],W.parent=u,W.links.target=D,D.valueDeclaration&&(W.valueDeclaration=D.valueDeclaration),D.members&&(W.members=new Map(D.members)),D.exports&&(W.exports=new Map(D.exports));let Y=$u();return Y.set("exports",W),Qf(u,Y,E,E,E)}pe.assertIsDefined(u.valueDeclaration);let m=u.valueDeclaration;if(al(m)&&Zu(m))return m.statements.length?G1(Q5(Ml(m.statements[0].expression))):Jg;if(BB(m))return Upe(u);if(!HN(u,0))return u.flags&512&&!(u.flags&67108864)?Kpe(u):vK(u);let v;if(m.kind===278)v=G2e(_O(m)||DI(m.expression),m);else if(po(m)||wo(m)&&(Ll(m)||(jo(m)||AAe(m))&&po(m.parent)))v=Nr(u);else if(jo(m)||Qg(m)||Ir(m)||CA(m)||yC(m)||mm(m)||ah(m)||gu(m)&&!u2(m)||Il(m)||al(m)){if(u.flags&9136)return Kpe(u);v=po(m.parent)?Nr(u):_O(m)||hr}else if(Cm(m))v=_O(m)||U_n(m);else if(TN(m))v=_O(m)||TCn(m);else if(l0(m))v=_O(m)||Ife(m.name,0);else if(u2(m))v=_O(m)||K_n(m,0);else if(Si(m)||pi(m)||ss(m)||nc(m)||mg(m)||SY(m))v=Zq(m,!0);else if(Q3(m))v=Kpe(u);else if(HF(m))v=lot(u);else return pe.fail("Unhandled declaration kind! "+pe.formatSyntaxKind(m.kind)+" for "+pe.formatSymbol(u));return xr()?v:u.flags&512&&!(u.flags&67108864)?Kpe(u):vK(u)}function JQ(u){if(u)switch(u.kind){case 178:return Fb(u);case 179:return fbe(u);case 173:return pe.assert(Fw(u)),Zh(u)}}function Jpe(u){let m=JQ(u);return m&&tl(m)}function Lq(u){let m=_6t(u);return m&&m.symbol}function oot(u){return W5(vS(u))}function Upe(u){let m=fa(u);if(!m.type){if(!HN(u,0))return nn;let v=yp(u,178),D=yp(u,179),W=Gs(yp(u,173),n0),Y=v&&wo(v)&&sd(v)||Jpe(v)||Jpe(D)||Jpe(W)||v&&v.body&&Gat(v)||W&&Zq(W,!0);Y||(D&&!HPe(D)?Uw(Rt,D,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,xl(u)):v&&!HPe(v)?Uw(Rt,v,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,xl(u)):W&&!HPe(W)&&Uw(Rt,W,Z.Member_0_implicitly_has_an_1_type,xl(u),"any"),Y=hr),xr()||(JQ(v)?Br(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)):JQ(D)||JQ(W)?Br(D,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)):v&&Rt&&Br(v,Z._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,xl(u)),Y=hr),m.type??(m.type=Y)}return m.type}function aot(u){let m=fa(u);if(!m.writeType){if(!HN(u,7))return nn;let v=yp(u,179)??Gs(yp(u,173),n0),D=Jpe(v);xr()||(JQ(v)&&Br(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)),D=hr),m.writeType??(m.writeType=D||Upe(u))}return m.writeType}function F2e(u){let m=lZ(Dv(u));return m.flags&8650752?m:m.flags&2097152?de(m.types,v=>!!(v.flags&8650752)):void 0}function Kpe(u){let m=fa(u),v=m;if(!m.type){let D=u.valueDeclaration&&kat(u.valueDeclaration,!1);if(D){let W=b8t(u,D);W&&(u=W,m=W.links)}v.type=m.type=cot(u)}return m.type}function cot(u){let m=u.valueDeclaration;if(u.flags&1536&&PY(u))return hr;if(m&&(m.kind===227||bp(m)&&m.parent.kind===227))return Nr(u);if(u.flags&512&&m&&al(m)&&m.commonJsModuleIndicator){let D=NE(u);if(D!==u){if(!HN(u,0))return nn;let W=qA(u.exports.get("export=")),Y=Nr(W,W===D?void 0:D);return xr()?Y:vK(u)}}let v=Ph(16,u);if(u.flags&32){let D=F2e(u);return D?jg([v,D]):v}else return at&&u.flags&16777216?BO(v,!0):v}function lot(u){let m=fa(u);return m.type||(m.type=Qfn(u))}function JJt(u){let m=fa(u);if(!m.type){if(!HN(u,0))return nn;let v=XC(u),D=u.declarations&&R5(Yb(u),!0),W=J(D?.declarations,Y=>yf(Y)?_O(Y):void 0);if(m.type??(m.type=D?.declarations&&ect(D.declarations)&&u.declarations.length?q(D):ect(u.declarations)?Sn:W||(Qb(v)&111551?fo(v):nn)),!xr())return vK(D??u),m.type??(m.type=nn)}return m.type}function UJt(u){let m=fa(u);return m.type||(m.type=Cl(fo(m.target),m.mapper))}function KJt(u){let m=fa(u);return m.writeType||(m.writeType=Cl(T9(m.target),m.mapper))}function vK(u){let m=u.valueDeclaration;if(m){if(Zh(m))return Br(u.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)),nn;Rt&&(m.kind!==170||m.initializer)&&Br(u.valueDeclaration,Z._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,xl(u))}else if(u.flags&2097152){let v=Yb(u);v&&Br(v,Z.Circular_definition_of_import_alias_0,xl(u))}return hr}function uot(u){let m=fa(u);return m.type||(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.type=m.deferralParent.flags&1048576?Ha(m.deferralConstituents):jg(m.deferralConstituents)),m.type}function jJt(u){let m=fa(u);return!m.writeType&&m.deferralWriteConstituents&&(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.writeType=m.deferralParent.flags&1048576?Ha(m.deferralWriteConstituents):jg(m.deferralWriteConstituents)),m.writeType}function T9(u){let m=aI(u);return m&2?m&65536?jJt(u)||uot(u):u.links.writeType||u.links.type:u.flags&4?mZ(fo(u),!!(u.flags&16777216)):u.flags&98304?m&1?KJt(u):aot(u):fo(u)}function fo(u){let m=aI(u);return m&65536?uot(u):m&1?UJt(u):m&262144?VPs(u):m&8192?tHs(u):u.flags&7?QJt(u):u.flags&9136?Kpe(u):u.flags&8?lot(u):u.flags&98304?Upe(u):u.flags&2097152?JJt(u):nn}function hR(u){return mZ(fo(u),!!(u.flags&16777216))}function got(u,m){if(u===void 0||!(la(u)&4))return!1;for(let v of m)if(u.target===v)return!0;return!1}function N1(u,m){return u!==void 0&&m!==void 0&&(la(u)&4)!==0&&u.target===m}function vs(u){return la(u)&4?u.target:u}function da(u,m){return v(u);function v(D){if(la(D)&7){let W=vs(D);return W===m||zt(eT(W),v)}else if(D.flags&2097152)return zt(D.types,v);return!1}}function Sa(u,m){for(let v of m)u=ps(u,Z5(Uo(v)));return u}function Fc(u,m){for(;;){if(u=u.parent,u&&po(u)){let D=oI(u);if(D===6||D===3){let W=Uo(u.left);W&&W.parent&&!ji(W.parent.valueDeclaration,Y=>u===Y)&&(u=W.parent.valueDeclaration)}}if(!u)return;let v=u.kind;switch(v){case 264:case 232:case 265:case 180:case 181:case 174:case 185:case 186:case 318:case 263:case 175:case 219:case 220:case 266:case 346:case 347:case 341:case 339:case 201:case 195:{let W=Fc(u,m);if((v===219||v===220||u2(u))&&BS(u)){let Be=Nc(rg(fo(Uo(u)),0));if(Be&&Be.typeParameters)return[...W||E,...Be.typeParameters]}if(v===201)return Ft(W,Z5(Uo(u.typeParameter)));if(v===195)return Nn(W,PUt(u));let Y=Sa(W,PD(u)),oe=m&&(v===264||v===232||v===265||KN(u))&&Dv(Uo(u)).thisType;return oe?Ft(Y,oe):Y}case 342:let D=wne(u);D&&(u=D.valueDeclaration);break;case 321:{let W=Fc(u,m);return u.tags?Sa(W,jt(u.tags,Y=>PB(Y)?Y.typeParameters:void 0)):W}}}}function Qc(u){var m;let v=u.flags&32||u.flags&16?u.valueDeclaration:(m=u.declarations)==null?void 0:m.find(D=>{if(D.kind===265)return!0;if(D.kind!==261)return!1;let W=D.initializer;return!!W&&(W.kind===219||W.kind===220)});return pe.assert(!!v,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Fc(v)}function Kg(u){if(!u.declarations)return;let m;for(let v of u.declarations)(v.kind===265||v.kind===264||v.kind===232||KN(v)||vne(v))&&(m=Sa(m,PD(v)));return m}function vp(u){return Nn(Qc(u),Kg(u))}function m_(u){let m=rg(u,1);if(m.length===1){let v=m[0];if(!v.typeParameters&&v.parameters.length===1&&x0(v)){let D=GPe(v.parameters[0]);return Xo(D)||lPe(D)===hr}}return!1}function mR(u){if(rg(u,1).length>0)return!0;if(u.flags&8650752){let m=W_(u);return!!m&&m_(m)}return!1}function zB(u){let m=hN(u.symbol);return m&&DB(m)}function $w(u,m,v){let D=B(m),W=wo(v);return Le(rg(u,1),Y=>(W||D>=yk(Y.typeParameters))&&D<=B(Y.typeParameters))}function rG(u,m,v){let D=$w(u,m,v),W=lt(m,tl);return Er(D,Y=>zt(Y.typeParameters)?M2e(Y,W,wo(v)):Y)}function lZ(u){if(!u.resolvedBaseConstructorType){let m=hN(u.symbol),v=m&&DB(m),D=zB(u);if(!D)return u.resolvedBaseConstructorType=wt;if(!HN(u,1))return nn;let W=Ml(D.expression);if(v&&D!==v&&(pe.assert(!v.typeArguments),Ml(v.expression)),W.flags&2621440&&CR(W),!xr())return Br(u.symbol.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,xl(u.symbol)),u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn);if(!(W.flags&1)&&W!==Mt&&!mR(W)){let Y=Br(D.expression,Z.Type_0_is_not_a_constructor_function_type,ro(W));if(W.flags&262144){let oe=tfe(W),Be=cn;if(oe){let Me=rg(oe,1);Me[0]&&(Be=Ad(Me[0]))}W.symbol.declarations&&ug(Y,mo(W.symbol.declarations[0],Z.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,xl(W.symbol),ro(Be)))}return u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn)}u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=W)}return u.resolvedBaseConstructorType}function Ose(u){let m=E;if(u.symbol.declarations)for(let v of u.symbol.declarations){let D=lU(v);if(D)for(let W of D){let Y=tl(W);lo(Y)||(m===E?m=[Y]:m.push(Y))}}return m}function jpe(u,m){Br(u,Z.Type_0_recursively_references_itself_as_a_base_type,ro(m,void 0,2))}function eT(u){if(!u.baseTypesResolved){if(HN(u,6)&&(u.objectFlags&8?u.resolvedBaseTypes=[lPs(u)]:u.symbol.flags&96?(u.symbol.flags&32&&uPs(u),u.symbol.flags&64&&APs(u)):pe.fail("type must be class or interface"),!xr()&&u.symbol.declarations))for(let m of u.symbol.declarations)(m.kind===264||m.kind===265)&&jpe(m,u);u.baseTypesResolved=!0}return u.resolvedBaseTypes}function lPs(u){let m=Er(u.typeParameters,(v,D)=>u.elementFlags[D]&8?k1(v,ri):v);return f0(Ha(m||E),u.readonly)}function uPs(u){u.resolvedBaseTypes=jre;let m=hy(lZ(u));if(!(m.flags&2621441))return u.resolvedBaseTypes=E;let v=zB(u),D,W=m.symbol?Lp(m.symbol):void 0;if(m.symbol&&m.symbol.flags&32&&gPs(W))D=xIn(v,m.symbol);else if(m.flags&1)D=m;else{let oe=rG(m,v.typeArguments,v);if(!oe.length)return Br(v.expression,Z.No_base_constructor_has_the_specified_number_of_type_arguments),u.resolvedBaseTypes=E;D=Ad(oe[0])}if(lo(D))return u.resolvedBaseTypes=E;let Y=qB(D);if(!ZOe(Y)){let oe=lUt(void 0,D),Be=wu(oe,Z.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,ro(Y));return PA.add(Dw(ms(v.expression),v.expression,Be)),u.resolvedBaseTypes=E}return u===Y||da(Y,u)?(Br(u.symbol.valueDeclaration,Z.Type_0_recursively_references_itself_as_a_base_type,ro(u,void 0,2)),u.resolvedBaseTypes=E):(u.resolvedBaseTypes===jre&&(u.members=void 0),u.resolvedBaseTypes=[Y])}function gPs(u){let m=u.outerTypeParameters;if(m){let v=m.length-1,D=gf(u);return m[v].symbol!==D[v].symbol}return!0}function ZOe(u){if(u.flags&262144){let m=W_(u);if(m)return ZOe(m)}return!!(u.flags&67633153&&!Xb(u)||u.flags&2097152&&ue(u.types,ZOe))}function APs(u){if(u.resolvedBaseTypes=u.resolvedBaseTypes||E,u.symbol.declarations){for(let m of u.symbol.declarations)if(m.kind===265&&Y7(m))for(let v of Y7(m)){let D=qB(tl(v));lo(D)||(ZOe(D)?u!==D&&!da(D,u)?u.resolvedBaseTypes===E?u.resolvedBaseTypes=[D]:u.resolvedBaseTypes.push(D):jpe(m,u):Br(v,Z.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function dPs(u){if(!u.declarations)return!0;for(let m of u.declarations)if(m.kind===265){if(m.flags&256)return!1;let v=Y7(m);if(v){for(let D of v)if(Hd(D.expression)){let W=NI(D.expression,788968,!0);if(!W||!(W.flags&64)||Dv(W).thisType)return!1}}}return!0}function Dv(u){let m=fa(u),v=m;if(!m.declaredType){let D=u.flags&32?1:2,W=b8t(u,u.valueDeclaration&&dXs(u.valueDeclaration));W&&(u=W,m=W.links);let Y=v.declaredType=m.declaredType=Ph(D,u),oe=Qc(u),Be=Kg(u);(oe||Be||D===1||!dPs(u))&&(Y.objectFlags|=4,Y.typeParameters=Nn(oe,Be),Y.outerTypeParameters=oe,Y.localTypeParameters=Be,Y.instantiations=new Map,Y.instantiations.set($B(Y.typeParameters),Y),Y.target=Y,Y.resolvedTypeArguments=Y.typeParameters,Y.thisType=Xy(u),Y.thisType.isThisType=!0,Y.thisType.constraint=Y)}return m.declaredType}function Mfn(u){var m;let v=fa(u);if(!v.declaredType){if(!HN(u,2))return nn;let D=pe.checkDefined((m=u.declarations)==null?void 0:m.find(vne),"Type alias symbol with no valid declaration found"),W=cS(D)?D.typeExpression:D.type,Y=W?tl(W):nn;if(xr()){let oe=Kg(u);oe&&(v.typeParameters=oe,v.instantiations=new Map,v.instantiations.set($B(oe),Y)),Y===Ht&&u.escapedName==="BuiltinIteratorReturn"&&(Y=vUt())}else Y=nn,D.kind===341?Br(D.typeExpression.type,Z.Type_alias_0_circularly_references_itself,xl(u)):Br(sh(D)&&D.name||D,Z.Type_alias_0_circularly_references_itself,xl(u));v.declaredType??(v.declaredType=Y)}return v.declaredType}function Aot(u){return u.flags&1056&&u.symbol.flags&8?Lp(nC(u.symbol)):u}function Hfn(u){let m=fa(u);if(!m.declaredType){let v=[];if(u.declarations){for(let W of u.declarations)if(W.kind===267){for(let Y of W.members)if(Mse(Y)){let oe=Uo(Y),Be=JK(Y).value,Me=Hq(Be!==void 0?F5s(Be,xg(u),oe):Yfn(oe));fa(oe).declaredType=Me,v.push(my(Me))}}}let D=v.length?Ha(v,1,u,void 0):Yfn(u);D.flags&1048576&&(D.flags|=1024,D.symbol=u),m.declaredType=D}return m.declaredType}function Yfn(u){let m=Pc(32,u),v=Pc(32,u);return m.regularType=m,m.freshType=v,v.regularType=m,v.freshType=v,m}function Qfn(u){let m=fa(u);if(!m.declaredType){let v=Hfn(nC(u));m.declaredType||(m.declaredType=v)}return m.declaredType}function Z5(u){let m=fa(u);return m.declaredType||(m.declaredType=Xy(u))}function pPs(u){let m=fa(u);return m.declaredType||(m.declaredType=Lp(XC(u)))}function Lp(u){return Xfn(u)||nn}function Xfn(u){if(u.flags&96)return Dv(u);if(u.flags&524288)return Mfn(u);if(u.flags&262144)return Z5(u);if(u.flags&384)return Hfn(u);if(u.flags&8)return Qfn(u);if(u.flags&2097152)return pPs(u)}function LOe(u){switch(u.kind){case 133:case 159:case 154:case 150:case 163:case 136:case 155:case 151:case 116:case 157:case 146:case 202:return!0;case 189:return LOe(u.elementType);case 184:return!u.typeArguments||u.typeArguments.every(LOe)}return!1}function fPs(u){let m=u3(u);return!m||LOe(m)}function Jfn(u){let m=Zh(u);return m?LOe(m):!QT(u)}function IPs(u){let m=Fb(u),v=PD(u);return(u.kind===177||!!m&&LOe(m))&&u.parameters.every(Jfn)&&v.every(fPs)}function hPs(u){if(u.declarations&&u.declarations.length===1){let m=u.declarations[0];if(m)switch(m.kind){case 173:case 172:return Jfn(m);case 175:case 174:case 177:case 178:case 179:return IPs(m)}}return!1}function Ufn(u,m,v){let D=$u();for(let W of u)D.set(W.escapedName,v&&hPs(W)?W:KUt(W,m));return D}function Kfn(u,m){for(let v of m){if(jfn(v))continue;let D=u.get(v.escapedName);(!D||D.valueDeclaration&&po(D.valueDeclaration)&&!tG(D)&&!wZe(D.valueDeclaration))&&(u.set(v.escapedName,v),u.set(v.escapedName,v))}}function jfn(u){return!!u.valueDeclaration&&hC(u.valueDeclaration)&&lg(u.valueDeclaration)}function zJt(u){if(!u.declaredProperties){let m=u.symbol,v=Ck(m);u.declaredProperties=Jy(v),u.declaredCallSignatures=E,u.declaredConstructSignatures=E,u.declaredIndexInfos=E,u.declaredCallSignatures=jQ(v.get("__call")),u.declaredConstructSignatures=jQ(v.get("__new")),u.declaredIndexInfos=RIn(m)}return u}function qJt(u){return qfn(u)&&p2(Un(u)?rT(u):DI(u.argumentExpression))}function zfn(u){return qfn(u)&&mPs(Un(u)?rT(u):DI(u.argumentExpression))}function qfn(u){if(!Un(u)&&!Qg(u))return!1;let m=Un(u)?u.expression:u.argumentExpression;return Hd(m)}function mPs(u){return pg(u,mc)}function Z2e(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)===64}function Pse(u){let m=fl(u);return!!m&&qJt(m)}function $fn(u){let m=fl(u);return!!m&&zfn(m)}function Mse(u){return!zD(u)||Pse(u)}function eIn(u){return CAe(u)&&!qJt(u)}function CPs(u,m,v){pe.assert(!!(aI(u)&4096),"Expected a late-bound symbol."),u.flags|=v,fa(m.symbol).lateSymbol=u,u.declarations?m.symbol.isReplaceableByMethod||u.declarations.push(m):u.declarations=[m],v&111551&&V7(u,m)}function tIn(u,m,v,D){pe.assert(!!D.symbol,"The member is expected to have a symbol.");let W=sa(D);if(!W.resolvedSymbol){W.resolvedSymbol=D.symbol;let Y=po(D)?D.left:D.name,oe=Qg(Y)?DI(Y.argumentExpression):rT(Y);if(p2(oe)){let Be=f2(oe),Me=D.symbol.flags,He=v.get(Be);He||v.set(Be,He=AA(0,Be,4096));let $e=m&&m.get(Be);if(!(u.flags&32)&&He.flags&oK(Me)){let Vt=$e?Nn($e.declarations,He.declarations):He.declarations,xt=!(oe.flags&8192)&&Bc(Be)||Md(Y);F(Vt,wr=>Br(fl(wr)||wr,Z.Property_0_was_also_declared_here,xt)),Br(Y||D,Z.Duplicate_property_0,xt),He=AA(0,Be,4096)}return He.links.nameType=oe,CPs(He,D,Me),He.parent?pe.assert(He.parent===u,"Existing symbol parent should match new one"):He.parent=u,W.resolvedSymbol=He}}return W.resolvedSymbol}function _Ps(u,m,v,D){let W=v.get("__index");if(!W){let Y=m?.get("__index");Y?(W=LQ(Y),W.links.checkFlags|=4096):W=AA(0,"__index",4096),v.set("__index",W)}W.declarations?D.symbol.isReplaceableByMethod||W.declarations.push(D):W.declarations=[D]}function $Jt(u,m){let v=fa(u);if(!v[m]){let D=m==="resolvedExports",W=D?u.flags&1536?mK(u).exports:u.exports:u.members;v[m]=W||Ee;let Y=$u();for(let Me of u.declarations||E){let He=$ge(Me);if(He)for(let $e of He)D===tm($e)&&(Pse($e)?tIn(u,W,Y,$e):$fn($e)&&_Ps(u,W,Y,$e))}let oe=D5(u).assignmentDeclarationMembers;if(oe){let Me=Do(oe.values());for(let He of Me){let $e=oI(He),Vt=$e===3||po(He)&&pat(He,$e)||$e===9||$e===6;D===!Vt&&Pse(He)&&tIn(u,W,Y,He)}}let Be=m9(W,Y);if(u.flags&33554432&&v.cjsExportMerged&&u.declarations)for(let Me of u.declarations){let He=fa(Me.symbol)[m];if(!Be){Be=He;continue}He&&He.forEach(($e,Vt)=>{let xt=Be.get(Vt);if(!xt)Be.set(Vt,$e);else{if(xt===$e)return;Be.set(Vt,wv(xt,$e))}})}v[m]=Be||Ee}return v[m]}function Ck(u){return u.flags&6256?$Jt(u,"resolvedMembers"):u.members||Ee}function dot(u){if(u.flags&106500&&u.escapedName==="__computed"){let m=fa(u);if(!m.lateSymbol&&zt(u.declarations,Pse)){let v=qA(u.parent);zt(u.declarations,tm)?R1(v):Ck(v)}return m.lateSymbol||(m.lateSymbol=u)}return u}function D1(u,m,v){if(la(u)&4){let D=u.target,W=gf(u);return B(D.typeParameters)===B(W)?uZ(D,Nn(W,[m||D.thisType])):u}else if(u.flags&2097152){let D=Er(u.types,W=>D1(W,m,v));return D!==u.types?jg(D):u}return v?hy(u):u}function rIn(u,m,v,D){let W,Y,oe,Be,Me;gc(v,D,0,v.length)?(Y=m.symbol?Ck(m.symbol):$u(m.declaredProperties),oe=m.declaredCallSignatures,Be=m.declaredConstructSignatures,Me=m.declaredIndexInfos):(W=x1(v,D),Y=Ufn(m.declaredProperties,W,v.length===1),oe=Got(m.declaredCallSignatures,W),Be=Got(m.declaredConstructSignatures,W),Me=xhn(m.declaredIndexInfos,W));let He=eT(m);if(He.length){if(m.symbol&&Y===Ck(m.symbol)){let Vt=$u(m.declaredProperties),xt=mot(m.symbol);xt&&Vt.set("__index",xt),Y=Vt}jB(u,Y,oe,Be,Me);let $e=li(D);for(let Vt of He){let xt=$e?D1(Cl(Vt,W),$e):Vt;Kfn(Y,Zd(xt)),oe=Nn(oe,rg(xt,0)),Be=Nn(Be,rg(xt,1));let wr=xt!==hr?p0(xt):[el];Me=Nn(Me,Le(wr,dn=>!$pe(Me,dn.keyType)))}}jB(u,Y,oe,Be,Me)}function yPs(u){rIn(u,zJt(u),E,E)}function bPs(u){let m=zJt(u.target),v=Nn(m.typeParameters,[m.thisType]),D=gf(u),W=D.length===v.length?D:Nn(D,[u]);rIn(u,m,v,W)}function YN(u,m,v,D,W,Y,oe,Be){let Me=new R(ks,Be);return Me.declaration=u,Me.typeParameters=m,Me.parameters=D,Me.thisParameter=v,Me.resolvedReturnType=W,Me.resolvedTypePredicate=Y,Me.minArgumentCount=oe,Me.resolvedMinArgumentCount=void 0,Me.target=void 0,Me.mapper=void 0,Me.compositeSignatures=void 0,Me.compositeKind=void 0,Me}function L2e(u){let m=YN(u.declaration,u.typeParameters,u.thisParameter,u.parameters,void 0,void 0,u.minArgumentCount,u.flags&167);return m.target=u.target,m.mapper=u.mapper,m.compositeSignatures=u.compositeSignatures,m.compositeKind=u.compositeKind,m}function nIn(u,m){let v=L2e(u);return v.compositeSignatures=m,v.compositeKind=1048576,v.target=void 0,v.mapper=void 0,v}function EPs(u,m){if((u.flags&24)===m)return u;u.optionalCallSignatureCache||(u.optionalCallSignatureCache={});let v=m===8?"inner":"outer";return u.optionalCallSignatureCache[v]||(u.optionalCallSignatureCache[v]=SPs(u,m))}function SPs(u,m){pe.assert(m===8||m===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");let v=L2e(u);return v.flags|=m,v}function iIn(u,m){if(x0(u)){let W=u.parameters.length-1,Y=u.parameters[W],oe=fo(Y);if(bA(oe))return[v(oe,W,Y)];if(!m&&oe.flags&1048576&&ue(oe.types,bA))return lt(oe.types,Be=>v(Be,W,Y))}return[u.parameters];function v(W,Y,oe){let Be=gf(W),Me=D(W,oe),He=lt(Be,($e,Vt)=>{let xt=Me&&Me[Vt]?Me[Vt]:dfe(u,Y+Vt,W),wr=W.target.elementFlags[Vt],dn=wr&12?32768:wr&2?16384:0,vn=AA(1,xt,dn);return vn.links.type=wr&4?f0($e):$e,vn});return Nn(u.parameters.slice(0,Y),He)}function D(W,Y){let oe=lt(W.target.labeledElementDeclarations,(Be,Me)=>T8t(Be,Me,W.target.elementFlags[Me],Y));if(oe){let Be=[],Me=new Set;for(let $e=0;$e=Vt&&Me<=xt){let wr=xt?hot($e,D9(Be,$e.typeParameters,Vt,oe)):L2e($e);wr.typeParameters=u.localTypeParameters,wr.resolvedReturnType=u,wr.flags=W?wr.flags|4:wr.flags&-5,He.push(wr)}}return He}function pot(u,m,v,D,W){for(let Y of u)if(aPe(Y,m,v,D,W,v?q5s:j2e))return Y}function BPs(u,m,v){if(m.typeParameters){if(v>0)return;for(let W=1;W1&&(v=v===void 0?D:-1);for(let W of u[D])if(!m||!pot(m,W,!1,!1,!0)){let Y=BPs(u,W,D);if(Y){let oe=W;if(Y.length>1){let Be=W.thisParameter,Me=F(Y,He=>He.thisParameter);if(Me){let He=jg(Xt(Y,$e=>$e.thisParameter&&fo($e.thisParameter)));Be=LK(Me,He)}oe=nIn(W,Y),oe.thisParameter=Be}(m||(m=[])).push(oe)}}}if(!B(m)&&v!==-1){let D=u[v!==void 0?v:0],W=D.slice();for(let Y of u)if(Y!==D){let oe=Y[0];if(pe.assert(!!oe,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),W=oe.typeParameters&&zt(W,Be=>!!Be.typeParameters&&!sIn(oe.typeParameters,Be.typeParameters))?void 0:lt(W,Be=>RPs(Be,oe)),!W)break}m=W}return m||E}function sIn(u,m){if(B(u)!==B(m))return!1;if(!u||!m)return!0;let v=x1(m,u);for(let D=0;D=W?u:m,oe=Y===u?m:u,Be=Y===u?D:W,Me=Sk(u)||Sk(m),He=Me&&!Sk(Y),$e=new Array(Be+(He?1:0));for(let Vt=0;Vt=vR(Y)&&Vt>=vR(oe),Yi=Vt>=D?void 0:dfe(u,Vt),js=Vt>=W?void 0:dfe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=AA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?f0(dn):dn,$e[Vt]=Ji}if(He){let Vt=AA(1,"args",32768);Vt.links.type=f0(SR(oe,Be)),oe===m&&(Vt.links.type=Cl(Vt.links.type,v)),$e[Be]=Vt}return $e}function RPs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=x1(m.typeParameters,u.typeParameters));let W=(u.flags|m.flags)&166,Y=u.declaration,oe=TPs(u,m,D),Be=li(oe);Be&&aI(Be)&32768&&(W|=1);let Me=wPs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),$e=YN(Y,v,Me,oe,void 0,void 0,He,W);return $e.compositeKind=1048576,$e.compositeSignatures=Nn(u.compositeKind!==2097152&&u.compositeSignatures||[u],[m]),D?$e.mapper=u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures?M5(u.mapper,D):D:u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures&&($e.mapper=u.mapper),$e}function oIn(u){let m=p0(u[0]);if(m){let v=[];for(let D of m){let W=D.keyType;ue(u,Y=>!!iG(Y,W))&&v.push(sG(W,Ha(lt(u,Y=>V5(Y,W))),zt(u,Y=>iG(Y,W).isReadonly)))}return v}return E}function NPs(u){let m=eUt(lt(u.types,W=>W===Js?[Za]:rg(W,0))),v=eUt(lt(u.types,W=>rg(W,1))),D=oIn(u.types);jB(u,Ee,m,v,D)}function VOe(u,m){return u?m?jg([u,m]):u:m}function aIn(u){let m=ze(u,D=>rg(D,1).length>0),v=lt(u,m_);if(m>0&&m===ze(v,D=>D)){let D=v.indexOf(!0);v[D]=!1}return v}function DPs(u,m,v,D){let W=[];for(let Y=0;YBe);for(let Be=0;Be0&&(He=lt(He,$e=>{let Vt=L2e($e);return Vt.resolvedReturnType=DPs(Ad($e),W,Y,Be),Vt})),v=cIn(v,He)}m=cIn(m,rg(Me,0)),D=Kl(p0(Me),(He,$e)=>lIn(He,$e,!1),D)}jB(u,Ee,m||E,v||E,D||E)}function cIn(u,m){for(let v of m)(!u||ue(u,D=>!aPe(D,v,!1,!1,!1,j2e)))&&(u=Ft(u,v));return u}function lIn(u,m,v){if(u)for(let D=0;D{var Me;!(Be.flags&418)&&!(Be.flags&512&&((Me=Be.declarations)!=null&&Me.length)&&ue(Be.declarations,a_))&&oe.set(Be.escapedName,Be)}),v=oe}let W;if(jB(u,v,E,E,E),m.flags&32){let oe=Dv(m),Be=lZ(oe);Be.flags&11272192?(v=$u(Nq(v)),Kfn(v,Zd(Be))):Be===hr&&(W=el)}let Y=Cot(v);if(Y?D=_ot(Y,Do(v.values())):(W&&(D=Ft(D,W)),m.flags&384&&(Lp(m).flags&32||zt(u.properties,oe=>!!(fo(oe).flags&296)))&&(D=Ft(D,Uc))),jB(u,v,E,E,D||E),m.flags&8208&&(u.callSignatures=jQ(m)),m.flags&32){let oe=Dv(m),Be=m.members?jQ(m.members.get("__constructor")):E;m.flags&16&&(Be=Pr(Be.slice(),Xt(u.callSignatures,Me=>KN(Me.declaration)?YN(Me.declaration,Me.typeParameters,Me.thisParameter,Me.parameters,oe,void 0,Me.minArgumentCount,Me.flags&167):void 0))),Be.length||(Be=vPs(oe)),u.constructSignatures=Be}}function GPs(u,m,v){return Cl(u,x1([m.indexType,m.objectType],[_R(0),bk([v])]))}function FPs(u){let m=SS(u.mappedType);if(!(m.flags&1048576||m.flags&2097152))return;let v=m.flags&1048576?m.origin:m;if(!v||!(v.flags&2097152))return;let D=jg(v.types.filter(W=>W!==u.constraintType));return D!==Oi?D:void 0}function ZPs(u){let m=iG(u.source,$r),v=_k(u.mappedType),D=!(v&1),W=v&4?0:16777216,Y=m?[sG($r,tat(m.type,u.mappedType,u.constraintType)||cn,D&&m.isReadonly)]:E,oe=$u(),Be=FPs(u);for(let Me of Zd(u.source)){if(Be){let Vt=Oq(Me,8576);if(!pg(Vt,Be))continue}let He=8192|(D&&BR(Me)?8:0),$e=AA(4|Me.flags&W,Me.escapedName,He);if($e.declarations=Me.declarations,$e.links.nameType=fa(Me).nameType,$e.links.propertyType=fo(Me),u.constraintType.type.flags&8388608&&u.constraintType.type.objectType.flags&262144&&u.constraintType.type.indexType.flags&262144){let Vt=u.constraintType.type.objectType,xt=GPs(u.mappedType,u.constraintType.type,Vt);$e.links.mappedType=xt,$e.links.constraintType=XN(Vt)}else $e.links.mappedType=u.mappedType,$e.links.constraintType=u.constraintType;oe.set(Me.escapedName,$e)}jB(u,oe,E,E,Y)}function WOe(u){if(u.flags&4194304){let m=hy(u.type);return vO(m)?ihn(m):XN(m)}if(u.flags&16777216){if(u.root.isDistributive){let m=u.checkType,v=WOe(m);if(v!==m)return zUt(u,GK(u.root.checkType,v,u.mapper),!1)}return u}if(u.flags&1048576)return Xf(u,WOe,!0);if(u.flags&2097152){let m=u.types;return m.length===2&&m[0].flags&76&&m[1]===Eg?u:jg(Er(u.types,WOe))}return u}function tUt(u){return aI(u)&4096}function rUt(u,m,v,D){for(let W of Zd(u))D(Oq(W,m));if(u.flags&1)D($r);else for(let W of p0(u))(!v||W.keyType.flags&134217732)&&D(W.keyType)}function LPs(u){let m=$u(),v;jB(u,Ee,E,E,E);let D=tT(u),W=SS(u),Y=u.target||u,oe=R9(Y),Be=V2e(Y)!==2,Me=nG(Y),He=hy(L5(u)),$e=_k(u);Hse(u)?rUt(He,8576,!1,xt):PK(WOe(W),xt),jB(u,m,E,E,v||E);function xt(dn){let vn=oe?Cl(oe,J2e(u.mapper,D,dn)):dn;PK(vn,ii=>wr(dn,ii))}function wr(dn,vn){if(p2(vn)){let ii=f2(vn),Yi=m.get(ii);if(Yi)Yi.links.nameType=Ha([Yi.links.nameType,vn]),Yi.links.keyType=Ha([Yi.links.keyType,dn]);else{let js=p2(dn)?Fg(He,f2(dn)):void 0,Co=!!($e&4||!($e&8)&&js&&js.flags&16777216),Ji=!!($e&1||!($e&2)&&js&&BR(js)),Mi=at&&!Co&&js&&js.flags&16777216,To=js?tUt(js):0,Ka=AA(4|(Co?16777216:0),ii,To|262144|(Ji?8:0)|(Mi?524288:0));Ka.links.mappedType=u,Ka.links.nameType=vn,Ka.links.keyType=dn,js&&(Ka.links.syntheticOrigin=js,Ka.declarations=Be?js.declarations:void 0),m.set(ii,Ka)}}else if(yot(vn)||vn.flags&33){let ii=vn.flags&5?$r:vn.flags&40?ri:vn,Yi=Cl(Me,J2e(u.mapper,D,dn)),js=W2e(He,vn),Co=!!($e&1||!($e&2)&&js?.isReadonly),Ji=sG(ii,Yi,Co);v=lIn(v,Ji,!0)}}}function VPs(u){var m;if(!u.links.type){let v=u.links.mappedType;if(!HN(u,0))return v.containsError=!0,nn;let D=nG(v.target||v),W=J2e(v.mapper,tT(v),u.links.keyType),Y=Cl(D,W),oe=at&&u.flags&16777216&&!uh(Y,49152)?BO(Y,!0):u.links.checkFlags&524288?jot(Y):Y;xr()||(Br(ge,Z.Type_of_property_0_circularly_references_itself_in_mapped_type_1,xl(u),ro(v)),oe=nn),(m=u.links).type??(m.type=oe)}return u.links.type}function tT(u){return u.typeParameter||(u.typeParameter=Z5(Uo(u.declaration.typeParameter)))}function SS(u){return u.constraintType||(u.constraintType=Uy(tT(u))||nn)}function R9(u){return u.declaration.nameType?u.nameType||(u.nameType=Cl(tl(u.declaration.nameType),u.mapper)):void 0}function nG(u){return u.templateType||(u.templateType=u.declaration.type?Cl(V0(tl(u.declaration.type),!0,!!(_k(u)&4)),u.mapper):nn)}function uIn(u){return u3(u.declaration.typeParameter)}function Hse(u){let m=uIn(u);return m.kind===199&&m.operator===143}function L5(u){if(!u.modifiersType)if(Hse(u))u.modifiersType=Cl(tl(uIn(u).type),u.mapper);else{let m=WUt(u.declaration),v=SS(m),D=v&&v.flags&262144?Uy(v):v;u.modifiersType=D&&D.flags&4194304?Cl(D.type,u.mapper):cn}return u.modifiersType}function _k(u){let m=u.declaration;return(m.readonlyToken?m.readonlyToken.kind===41?2:1:0)|(m.questionToken?m.questionToken.kind===41?8:4:0)}function gIn(u){let m=_k(u);return m&8?-1:m&4?1:0}function zpe(u){if(la(u)&32)return gIn(u)||zpe(L5(u));if(u.flags&2097152){let m=zpe(u.types[0]);return ue(u.types,(v,D)=>D===0||zpe(v)===m)?m:0}return 0}function WPs(u){return!!(la(u)&32&&_k(u)&4)}function Xb(u){if(la(u)&32){let m=SS(u);if(xK(m))return!0;let v=R9(u);if(v&&xK(Cl(v,eX(tT(u),m))))return!0}return!1}function V2e(u){let m=R9(u);return m?pg(m,tT(u))?1:2:0}function CR(u){return u.members||(u.flags&524288?u.objectFlags&4?bPs(u):u.objectFlags&3?yPs(u):u.objectFlags&1024?ZPs(u):u.objectFlags&16?xPs(u):u.objectFlags&32?LPs(u):pe.fail("Unhandled object type "+pe.formatObjectFlags(u.objectFlags)):u.flags&1048576?NPs(u):u.flags&2097152?kPs(u):pe.fail("Unhandled type "+pe.formatTypeFlags(u.flags))),u}function N9(u){return u.flags&524288?CR(u).properties:E}function UQ(u,m){if(u.flags&524288){let D=CR(u).members.get(m);if(D&&qi(D))return D}}function OOe(u){if(!u.resolvedProperties){let m=$u();for(let v of u.types){for(let D of Zd(v))if(!m.has(D.escapedName)){let W=MOe(u,D.escapedName,!!(u.flags&2097152));W&&m.set(D.escapedName,W)}if(u.flags&1048576&&p0(v).length===0)break}u.resolvedProperties=Jy(m)}return u.resolvedProperties}function Zd(u){return u=qpe(u),u.flags&3145728?OOe(u):N9(u)}function OPs(u,m){u=qpe(u),u.flags&3670016&&CR(u).members.forEach((v,D)=>{fO(v,D)&&m(v,D)})}function PPs(u,m){return m.properties.some(D=>{let W=D.name&&(sR(D.name)?DE(Vw(D.name)):gZ(D.name)),Y=W&&p2(W)?f2(W):void 0,oe=Y===void 0?void 0:Wi(u,Y);return!!oe&&$2e(oe)&&!pg(qq(D),oe)})}function MPs(u){let m=Ha(u);if(!(m.flags&1048576))return g6t(m);let v=$u();for(let D of u)for(let{escapedName:W}of g6t(D))if(!v.has(W)){let Y=mIn(m,W);Y&&v.set(W,Y)}return Do(v.values())}function BK(u){return u.flags&262144?Uy(u):u.flags&8388608?YPs(u):u.flags&16777216?pIn(u):W_(u)}function Uy(u){return POe(u)?tfe(u):void 0}function HPs(u,m){let v=U2e(u);return!!v&&wK(v,m)}function wK(u,m=0){var v;return m<5&&!!(u&&(u.flags&262144&&zt((v=u.symbol)==null?void 0:v.declarations,D=>Ga(D,4096))||u.flags&3145728&&zt(u.types,D=>wK(D,m))||u.flags&8388608&&wK(u.objectType,m+1)||u.flags&16777216&&wK(pIn(u),m+1)||u.flags&33554432&&wK(u.baseType,m)||la(u)&32&&HPs(u,m)||vO(u)&&Se(zQ(u),(D,W)=>!!(u.target.elementFlags[W]&8)&&wK(D,m))>=0))}function YPs(u){return POe(u)?QPs(u):void 0}function nUt(u){let m=AZ(u,!1);return m!==u?m:BK(u)}function QPs(u){if(aUt(u))return Not(u.objectType,u.indexType);let m=nUt(u.indexType);if(m&&m!==u.indexType){let D=bO(u.objectType,m,u.accessFlags);if(D)return D}let v=nUt(u.objectType);if(v&&v!==u.objectType)return bO(v,u.indexType,u.accessFlags)}function iUt(u){if(!u.resolvedDefaultConstraint){let m=N5s(u),v=SO(u);u.resolvedDefaultConstraint=Xo(m)?v:Xo(v)?m:Ha([m,v])}return u.resolvedDefaultConstraint}function AIn(u){if(u.resolvedConstraintOfDistributive!==void 0)return u.resolvedConstraintOfDistributive||void 0;if(u.root.isDistributive&&u.restrictiveInstantiation!==u){let m=AZ(u.checkType,!1),v=m===u.checkType?BK(m):m;if(v&&v!==u.checkType){let D=zUt(u,GK(u.root.checkType,v,u.mapper),!0);if(!(D.flags&131072))return u.resolvedConstraintOfDistributive=D,D}}u.resolvedConstraintOfDistributive=!1}function dIn(u){return AIn(u)||iUt(u)}function pIn(u){return POe(u)?dIn(u):void 0}function XPs(u,m){let v,D=!1;for(let W of u)if(W.flags&465829888){let Y=BK(W);for(;Y&&Y.flags&21233664;)Y=BK(Y);Y&&(v=Ft(v,Y),m&&(v=Ft(v,W)))}else(W.flags&469892092||Ek(W))&&(D=!0);if(v&&(m||D)){if(D)for(let W of u)(W.flags&469892092||Ek(W))&&(v=Ft(v,W));return iPe(jg(v,2),!1)}}function W_(u){if(u.flags&464781312||vO(u)){let m=sUt(u);return m!==JI&&m!==Wh?m:void 0}return u.flags&4194304?mc:void 0}function QN(u){return W_(u)||u}function POe(u){return sUt(u)!==Wh}function sUt(u){if(u.resolvedBaseConstraint)return u.resolvedBaseConstraint;let m=[];return u.resolvedBaseConstraint=v(u);function v(Y){if(!Y.immediateBaseConstraint){if(!HN(Y,4))return Wh;let oe,Be=Yot(Y);if((m.length<10||m.length<50&&!k(m,Be))&&(m.push(Be),oe=W(AZ(Y,!1)),m.pop()),!xr()){if(Y.flags&262144){let Me=bot(Y);if(Me){let He=Br(Me,Z.Type_parameter_0_has_a_circular_constraint,ro(Y));ge&&!DW(Me,ge)&&!DW(ge,Me)&&ug(He,mo(ge,Z.Circularity_originates_in_type_at_this_location))}}oe=Wh}Y.immediateBaseConstraint??(Y.immediateBaseConstraint=oe||JI)}return Y.immediateBaseConstraint}function D(Y){let oe=v(Y);return oe!==JI&&oe!==Wh?oe:void 0}function W(Y){if(Y.flags&262144){let oe=tfe(Y);return Y.isThisType||!oe?oe:D(oe)}if(Y.flags&3145728){let oe=Y.types,Be=[],Me=!1;for(let He of oe){let $e=D(He);$e?($e!==He&&(Me=!0),Be.push($e)):Me=!0}return Me?Y.flags&1048576&&Be.length===oe.length?Ha(Be):Y.flags&2097152&&Be.length?jg(Be):void 0:Y}if(Y.flags&4194304)return mc;if(Y.flags&134217728){let oe=Y.types,Be=Xt(oe,D);return Be.length===oe.length?NK(Y.texts,Be):$r}if(Y.flags&268435456){let oe=D(Y.type);return oe&&oe!==Y.type?Pq(Y.symbol,oe):$r}if(Y.flags&8388608){if(aUt(Y))return D(Not(Y.objectType,Y.indexType));let oe=D(Y.objectType),Be=D(Y.indexType),Me=oe&&Be&&bO(oe,Be,Y.accessFlags);return Me&&D(Me)}if(Y.flags&16777216){let oe=dIn(Y);return oe&&D(oe)}if(Y.flags&33554432)return D(_Ut(Y));if(vO(Y)){let oe=lt(zQ(Y),(Be,Me)=>{let He=Be.flags&262144&&Y.target.elementFlags[Me]&8&&D(Be)||Be;return He!==Be&&kE(He,$e=>Y5($e)&&!vO($e))?He:Be});return bk(oe,Y.target.elementFlags,Y.target.readonly,Y.target.labeledElementDeclarations)}return Y}}function JPs(u,m){if(u===m)return u.resolvedApparentType||(u.resolvedApparentType=D1(u,m,!0));let v=`I${JC(u)},${JC(m)}`;return Qy(v)??UB(v,D1(u,m,!0))}function oUt(u){if(u.default)u.default===MC&&(u.default=Wh);else if(u.target){let m=oUt(u.target);u.default=m?Cl(m,u.mapper):JI}else{u.default=MC;let m=u.symbol&&F(u.symbol.declarations,D=>Ds(D)&&D.default),v=m?tl(m):JI;u.default===MC&&(u.default=v)}return u.default}function KQ(u){let m=oUt(u);return m!==JI&&m!==Wh?m:void 0}function UPs(u){return oUt(u)!==Wh}function fIn(u){return!!(u.symbol&&F(u.symbol.declarations,m=>Ds(m)&&m.default))}function IIn(u){return u.resolvedApparentType||(u.resolvedApparentType=KPs(u))}function KPs(u){let m=u.target??u,v=U2e(m);if(v&&!m.declaration.nameType){let D=L5(u),W=Xb(D)?IIn(D):W_(D);if(W&&kE(W,Y=>Y5(Y)||hIn(Y)))return Cl(m,GK(v,W,u.mapper))}return u}function hIn(u){return!!(u.flags&2097152)&&ue(u.types,Y5)}function aUt(u){let m;return!!(u.flags&8388608&&la(m=u.objectType)&32&&!Xb(m)&&xK(u.indexType)&&!(_k(m)&8)&&!m.declaration.nameType)}function hy(u){let m=u.flags&465829888?W_(u)||cn:u,v=la(m);return v&32?IIn(m):v&4&&m!==u?D1(m,u):m.flags&2097152?JPs(m,u):m.flags&402653316?ym:m.flags&296?lf:m.flags&2112?G3s():m.flags&528?fI:m.flags&12288?JIn():m.flags&67108864?Jg:m.flags&4194304?mc:m.flags&2&&!at?Jg:m}function qpe(u){return qB(hy(qB(u)))}function mIn(u,m,v){var D,W,Y;let oe=0,Be,Me,He,$e=u.flags&1048576,Vt,xt=4,wr=$e?0:8,dn=!1;for(let _l of u.types){let ka=hy(_l);if(!(lo(ka)||ka.flags&131072)){let Kc=Fg(ka,m,v),Vu=Kc?d2(Kc):0;if(Kc){if(Kc.flags&106500&&(Vt??(Vt=$e?0:16777216),$e?Vt|=Kc.flags&16777216:Vt&=Kc.flags),!Be)Be=Kc,oe=Kc.flags&98304||4;else if(Kc!==Be){if((ooe(Kc)||Kc)===(ooe(Be)||Be)&&cKt(Be,Kc,(Vl,vf)=>Vl===vf?-1:0)===-1)dn=!!Be.parent&&!!B(Kg(Be.parent));else{Me||(Me=new Map,Me.set(xg(Be),Be));let Vl=xg(Kc);Me.has(Vl)||Me.set(Vl,Kc)}oe&98304&&(Kc.flags&98304)!==(oe&98304)&&(oe=oe&-98305|4)}$e&&BR(Kc)?wr|=8:!$e&&!BR(Kc)&&(wr&=-9),wr|=(Vu&6?0:256)|(Vu&4?512:0)|(Vu&2?1024:0)|(Vu&256?2048:0),i8t(Kc)||(xt=2)}else if($e){let dd=!Z2e(m)&&Wq(ka,m);dd?(oe=oe&-98305|4,wr|=32|(dd.isReadonly?8:0),He=Ft(He,bA(ka)?Jot(ka)||wt:dd.type)):F9(ka)&&!(la(ka)&2097152)?(wr|=32,He=Ft(He,wt)):wr|=16}}}if(!Be||$e&&(Me||wr&48)&&wr&1536&&!(Me&&jPs(Me.values())))return;if(!Me&&!(wr&16)&&!He)if(dn){let _l=(D=Gs(Be,ww))==null?void 0:D.links,ka=LK(Be,_l?.type);return ka.parent=(Y=(W=Be.valueDeclaration)==null?void 0:W.symbol)==null?void 0:Y.parent,ka.links.containingType=u,ka.links.mapper=_l?.mapper,ka.links.writeType=T9(Be),ka}else return Be;let vn=Me?Do(Me.values()):[Be],ii,Yi,js,Co=[],Ji,Mi,To=!1;for(let _l of vn){Mi?_l.valueDeclaration&&_l.valueDeclaration!==Mi&&(To=!0):Mi=_l.valueDeclaration,ii=Pr(ii,_l.declarations);let ka=fo(_l);Yi||(Yi=ka,js=fa(_l).nameType);let Kc=T9(_l);(Ji||Kc!==ka)&&(Ji=Ft(Ji||Co.slice(),Kc)),ka!==Yi&&(wr|=64),($2e(ka)||DK(ka))&&(wr|=128),ka.flags&131072&&ka!==Ip&&(wr|=131072),Co.push(ka)}Pr(Co,He);let Ka=AA(oe|(Vt??0),m,xt|wr);return Ka.links.containingType=u,!To&&Mi&&(Ka.valueDeclaration=Mi,Mi.symbol.parent&&(Ka.parent=Mi.symbol.parent)),Ka.declarations=ii,Ka.links.nameType=js,Co.length>2?(Ka.links.checkFlags|=65536,Ka.links.deferralParent=u,Ka.links.deferralConstituents=Co,Ka.links.deferralWriteConstituents=Ji):(Ka.links.type=$e?Ha(Co):jg(Co),Ji&&(Ka.links.writeType=$e?Ha(Ji):jg(Ji))),Ka}function CIn(u,m,v){var D,W,Y;let oe=v?(D=u.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:D.get(m):(W=u.propertyCache)==null?void 0:W.get(m);return oe||(oe=mIn(u,m,v),oe&&((v?u.propertyCacheWithoutObjectFunctionPropertyAugment||(u.propertyCacheWithoutObjectFunctionPropertyAugment=$u()):u.propertyCache||(u.propertyCache=$u())).set(m,oe),v&&!(aI(oe)&48)&&!((Y=u.propertyCache)!=null&&Y.get(m))&&(u.propertyCache||(u.propertyCache=$u())).set(m,oe))),oe}function jPs(u){let m;for(let v of u){if(!v.declarations)return;if(!m){m=new Set(v.declarations);continue}if(m.forEach(D=>{k(v.declarations,D)||m.delete(D)}),m.size===0)return}return m}function MOe(u,m,v){let D=CIn(u,m,v);return D&&!(aI(D)&16)?D:void 0}function qB(u){return u.flags&1048576&&u.objectFlags&16777216?u.resolvedReducedType||(u.resolvedReducedType=zPs(u)):u.flags&2097152?(u.objectFlags&16777216||(u.objectFlags|=16777216|(zt(OOe(u),qPs)?33554432:0)),u.objectFlags&33554432?Oi:u):u}function zPs(u){let m=Er(u.types,qB);if(m===u.types)return u;let v=Ha(m);return v.flags&1048576&&(v.resolvedReducedType=v),v}function qPs(u){return _In(u)||yIn(u)}function _In(u){return!(u.flags&16777216)&&(aI(u)&131264)===192&&!!(fo(u).flags&131072)}function yIn(u){return!u.valueDeclaration&&!!(aI(u)&1024)}function cUt(u){return!!(u.flags&1048576&&u.objectFlags&16777216&&zt(u.types,cUt)||u.flags&2097152&&$Ps(u))}function $Ps(u){let m=u.uniqueLiteralFilledInstantiation||(u.uniqueLiteralFilledInstantiation=Cl(u,kl));return qB(m)!==m}function lUt(u,m){if(m.flags&2097152&&la(m)&33554432){let v=de(OOe(m),_In);if(v)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,ro(m,void 0,536870912),xl(v));let D=de(OOe(m),yIn);if(D)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,ro(m,void 0,536870912),xl(D))}return u}function Fg(u,m,v,D){var W,Y;if(u=qpe(u),u.flags&524288){let oe=CR(u),Be=oe.members.get(m);if(Be&&!D&&((W=u.symbol)==null?void 0:W.flags)&512&&((Y=fa(u.symbol).typeOnlyExportStarMap)!=null&&Y.has(m)))return;if(Be&&qi(Be,D))return Be;if(v)return;let Me=oe===tp?Js:oe.callSignatures.length?Yl:oe.constructSignatures.length?DA:void 0;if(Me){let He=UQ(Me,m);if(He)return He}return UQ(qn,m)}if(u.flags&2097152){let oe=MOe(u,m,!0);return oe||(v?void 0:MOe(u,m,v))}if(u.flags&1048576)return MOe(u,m,v)}function HOe(u,m){if(u.flags&3670016){let v=CR(u);return m===0?v.callSignatures:v.constructSignatures}return E}function rg(u,m){let v=HOe(qpe(u),m);if(m===0&&!B(v)&&u.flags&1048576){if(u.arrayFallbackSignatures)return u.arrayFallbackSignatures;let D;if(kE(u,W=>{var Y;return!!((Y=W.symbol)!=null&&Y.parent)&&e3s(W.symbol.parent)&&(D?D===W.symbol.escapedName:(D=W.symbol.escapedName,!0))})){let W=Xf(u,oe=>x9((bIn(oe.symbol.parent)?gA:kA).typeParameters[0],oe.mapper)),Y=f0(W,Zv(u,oe=>bIn(oe.symbol.parent)));return u.arrayFallbackSignatures=rg(Wi(Y,D),m)}u.arrayFallbackSignatures=v}return v}function e3s(u){return!u||!kA.symbol||!gA.symbol?!1:!!vt(u,kA.symbol)||!!vt(u,gA.symbol)}function bIn(u){return!u||!gA.symbol?!1:!!vt(u,gA.symbol)}function $pe(u,m){return de(u,v=>v.keyType===m)}function uUt(u,m){let v,D,W;for(let Y of u)Y.keyType===$r?v=Y:Vq(m,Y.keyType)&&(D?(W||(W=[D])).push(Y):D=Y);return W?sG(cn,jg(lt(W,Y=>Y.type)),Kl(W,(Y,oe)=>Y&&oe.isReadonly,!0)):D||(v&&Vq(m,$r)?v:void 0)}function Vq(u,m){return pg(u,m)||m===$r&&pg(u,ri)||m===ri&&(u===yu||!!(u.flags&128)&&yN(u.value))}function gUt(u){return u.flags&3670016?CR(u).indexInfos:E}function p0(u){return gUt(qpe(u))}function iG(u,m){return $pe(p0(u),m)}function V5(u,m){var v;return(v=iG(u,m))==null?void 0:v.type}function AUt(u,m){return p0(u).filter(v=>Vq(m,v.keyType))}function W2e(u,m){return uUt(p0(u),m)}function Wq(u,m){return W2e(u,Z2e(m)?ci:DE(Bc(m)))}function EIn(u){var m;let v;for(let D of PD(u))v=ps(v,Z5(D.symbol));return v?.length?v:ah(u)?(m=efe(u))==null?void 0:m.typeParameters:void 0}function dUt(u){let m=[];return u.forEach((v,D)=>{x5(D)||m.push(v)}),m}function SIn(u,m){if(Xr(u))return;let v=h_(Gr,'"'+u+'"',512);return v&&m?qA(v):v}function fot(u){return KY(u)||uie(u)||Si(u)&&ode(u)}function O2e(u){if(fot(u))return!0;if(!Si(u))return!1;if(u.initializer){let v=vS(u.parent),D=u.parent.parameters.indexOf(u);return pe.assert(D>=0),D>=vR(v,3)}let m=ML(u.parent);return m?!u.type&&!u.dotDotDotToken&&u.parent.parameters.indexOf(u)>=Nat(m).length:!1}function t3s(u){return pi(u)&&!Fw(u)&&u.questionToken}function P2e(u,m,v,D){return{kind:u,parameterName:m,parameterIndex:v,type:D}}function yk(u){let m=0;if(u)for(let v=0;v=v&&Y<=W){let oe=u?u.slice():[];for(let Me=Y;Me!!sN(dn))&&!sN(u)&&!mat(u)&&(D|=32);for(let dn=He?1:0;dnMe.arguments.length&&!Yi||(W=v.length)}if((u.kind===178||u.kind===179)&&Mse(u)&&(!Be||!Y)){let dn=u.kind===178?179:178,vn=yp(Uo(u),dn);vn&&(Y=Lq(vn))}oe&&oe.typeExpression&&(Y=LK(AA(1,"this"),tl(oe.typeExpression)));let Vt=i9(u)?XL(u):u,xt=Vt&&Tc(Vt)?Dv(qA(Vt.parent.symbol)):void 0,wr=xt?xt.localTypeParameters:EIn(u);(Ure(u)||wo(u)&&r3s(u,v))&&(D|=1),(ik(u)&&Ga(u,64)||Tc(u)&&Ga(u.parent,64))&&(D|=4),m.resolvedSignature=YN(u,wr,Y,v,void 0,void 0,W,D)}return m.resolvedSignature}function r3s(u,m){if(i9(u)||!pUt(u))return!1;let v=li(u.parameters),D=v?DL(v):Rx(u).filter(AS),W=J(D,oe=>oe.typeExpression&&y9e(oe.typeExpression.type)?oe.typeExpression.type:void 0),Y=AA(3,"args",32768);return W?Y.links.type=f0(tl(W.type)):(Y.links.checkFlags|=65536,Y.links.deferralParent=Oi,Y.links.deferralConstituents=[f_],Y.links.deferralWriteConstituents=[f_]),W&&m.pop(),m.push(Y),!0}function efe(u){if(!(wo(u)&&Gd(u)))return;let m=uv(u);return m?.typeExpression&&QK(tl(m.typeExpression))}function n3s(u,m){let v=efe(u);if(!v)return;let D=u.parameters.indexOf(m);return m.dotDotDotToken?FPe(v,D):SR(v,D)}function i3s(u){let m=efe(u);return m&&Ad(m)}function pUt(u){let m=sa(u);return m.containsArgumentsReference===void 0&&(m.flags&512?m.containsArgumentsReference=!0:m.containsArgumentsReference=v(u.body)),m.containsArgumentsReference;function v(D){if(!D)return!1;switch(D.kind){case 80:return D.escapedText===ot.escapedName&&RSe(D)===ot;case 173:case 175:case 178:case 179:return D.name.kind===168&&v(D.name);case 212:case 213:return v(D.expression);case 304:return v(D.initializer);default:return!nbe(D)&&!kw(D)&&!!Lu(D,v)}}}function jQ(u){if(!u||!u.declarations)return E;let m=[];for(let v=0;v0&&D.body){let W=u.declarations[v-1];if(D.parent===W.parent&&D.kind===W.kind&&D.pos===W.end)continue}if(wo(D)&&D.jsDoc){let W=Uye(D);if(B(W)){for(let Y of W){let oe=Y.typeExpression;oe.type===void 0&&!Tc(D)&&X5(oe,hr),m.push(vS(oe))}continue}}m.push(!FF(D)&&!u2(D)&&efe(D)||vS(D))}}return m}function vIn(u){let m=L0(u,u);if(m){let v=NE(m);if(v)return fo(v)}return hr}function W5(u){if(u.thisParameter)return fo(u.thisParameter)}function kv(u){if(!u.resolvedTypePredicate){if(u.target){let m=kv(u.target);u.resolvedTypePredicate=m?Lhn(m,u.mapper):ni}else if(u.compositeSignatures)u.resolvedTypePredicate=s5s(u.compositeSignatures,u.compositeKind)||ni;else{let m=u.declaration&&Fb(u.declaration),v;if(!m){let D=efe(u.declaration);D&&u!==D&&(v=kv(D))}if(m||v)u.resolvedTypePredicate=m&&vE(m)?s3s(m,u):v||ni;else if(u.declaration&&Gd(u.declaration)&&(!u.resolvedReturnType||u.resolvedReturnType.flags&16)&&xE(u)>0){let{declaration:D}=u;u.resolvedTypePredicate=ni,u.resolvedTypePredicate=QXs(D)||ni}else u.resolvedTypePredicate=ni}pe.assert(!!u.resolvedTypePredicate)}return u.resolvedTypePredicate===ni?void 0:u.resolvedTypePredicate}function s3s(u,m){let v=u.parameterName,D=u.type&&tl(u.type);return v.kind===198?P2e(u.assertsModifier?2:0,void 0,void 0,D):P2e(u.assertsModifier?3:1,v.escapedText,Se(m.parameters,W=>W.escapedName===v.escapedText),D)}function BIn(u,m,v){return m!==2097152?Ha(u,v):jg(u)}function Ad(u){if(!u.resolvedReturnType){if(!HN(u,3))return nn;let m=u.target?Cl(Ad(u.target),u.mapper):u.compositeSignatures?Cl(BIn(lt(u.compositeSignatures,Ad),u.compositeKind,2),u.mapper):Yse(u.declaration)||(af(u.declaration.body)?hr:Gat(u.declaration));if(u.flags&8?m=Amn(m):u.flags&16&&(m=BO(m)),!xr()){if(u.declaration){let v=Fb(u.declaration);if(v)Br(v,Z.Return_type_annotation_circularly_references_itself);else if(Rt){let D=u.declaration,W=fl(D);W?Br(W,Z._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,Md(W)):Br(D,Z.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)}}m=hr}u.resolvedReturnType??(u.resolvedReturnType=m)}return u.resolvedReturnType}function Yse(u){if(u.kind===177)return Dv(qA(u.parent.symbol));let m=Fb(u);if(i9(u)){let v=cU(u);if(v&&Tc(v.parent)&&!m)return Dv(qA(v.parent.parent.symbol))}if(jY(u))return tl(u.parameters[0].type);if(m)return tl(m);if(u.kind===178&&Mse(u)){let v=wo(u)&&sd(u);if(v)return v;let D=yp(Uo(u),179),W=Jpe(D);if(W)return W}return i3s(u)}function Iot(u){return u.compositeSignatures&&zt(u.compositeSignatures,Iot)||!u.resolvedReturnType&&nt(u,3)>=0}function o3s(u){return wIn(u)||hr}function wIn(u){if(x0(u)){let m=fo(u.parameters[u.parameters.length-1]),v=bA(m)?Jot(m):m;return v&&V5(v,ri)}}function M2e(u,m,v,D){let W=fUt(u,D9(m,u.typeParameters,yk(u.typeParameters),v));if(D){let Y=n_n(Ad(W));if(Y){let oe=L2e(Y);oe.typeParameters=D;let Be=TK(oe);Be.mapper=W.mapper;let Me=L2e(W);return Me.resolvedReturnType=Be,Me}}return W}function fUt(u,m){let v=u.instantiations||(u.instantiations=new Map),D=$B(m),W=v.get(D);return W||v.set(D,W=hot(u,m)),W}function hot(u,m){return FK(u,a3s(u,m),!0)}function TIn(u){return Er(u.typeParameters,m=>m.mapper?Cl(m,m.mapper):m)}function a3s(u,m){return x1(TIn(u),m)}function H2e(u){return u.typeParameters?u.erasedSignatureCache||(u.erasedSignatureCache=c3s(u)):u}function c3s(u){return FK(u,Fhn(u.typeParameters),!0)}function l3s(u){return u.typeParameters?u.canonicalSignatureCache||(u.canonicalSignatureCache=u3s(u)):u}function u3s(u){return M2e(u,lt(u.typeParameters,m=>m.target&&!Uy(m.target)?m.target:m),wo(u.declaration))}function g3s(u){let m=u.typeParameters;if(m){if(u.baseSignatureCache)return u.baseSignatureCache;let v=Fhn(m),D=x1(m,lt(m,Y=>Uy(Y)||cn)),W=lt(m,Y=>Cl(Y,D)||cn);for(let Y=0;Y{yot(wr)&&!$pe(v,wr)&&v.push(sG(wr,Vt.type?tl(Vt.type):hr,Zb(Vt,8),Vt))})}}else if($fn(Vt)){let xt=po(Vt)?Vt.left:Vt.name,wr=Qg(xt)?DI(xt.argumentExpression):rT(xt);if($pe(v,wr))continue;pg(wr,mc)&&(pg(wr,ri)?(D=!0,R3(Vt)||(W=!1)):pg(wr,ci)?(Y=!0,R3(Vt)||(oe=!1)):(Be=!0,R3(Vt)||(Me=!1)),He.push(Vt.symbol))}let $e=Nn(He,Le(m,Vt=>Vt!==u));return Be&&!$pe(v,$r)&&v.push(uSe(Me,0,$e,$r)),D&&!$pe(v,ri)&&v.push(uSe(W,0,$e,ri)),Y&&!$pe(v,ci)&&v.push(uSe(oe,0,$e,ci)),v}return E}function yot(u){return!!(u.flags&4108)||DK(u)||!!(u.flags&2097152)&&!P5(u)&&zt(u.types,yot)}function bot(u){return Xt(Le(u.symbol&&u.symbol.declarations,Ds),u3)[0]}function NIn(u,m){var v;let D;if((v=u.symbol)!=null&&v.declarations){for(let W of u.symbol.declarations)if(W.parent.kind===196){let[Y=W.parent,oe]=Kye(W.parent.parent);if(oe.kind===184&&!m){let Be=oe,Me=Y8t(Be);if(Me){let He=Be.typeArguments.indexOf(Y);if(He()=>Y4s(Be,Me,dn))),xt=Cl($e,Vt);xt!==u&&(D=Ft(D,xt))}}}}else if(oe.kind===170&&oe.dotDotDotToken||oe.kind===192||oe.kind===203&&oe.dotDotDotToken)D=Ft(D,f0(cn));else if(oe.kind===205)D=Ft(D,$r);else if(oe.kind===169&&oe.parent.kind===201)D=Ft(D,mc);else if(oe.kind===201&&oe.type&&JA(oe.type)===W.parent&&oe.parent.kind===195&&oe.parent.extendsType===oe&&oe.parent.checkType.kind===201&&oe.parent.checkType.type){let Be=oe.parent.checkType,Me=tl(Be.type);D=Ft(D,Cl(Me,eX(Z5(Uo(Be.typeParameter)),Be.typeParameter.constraint?tl(Be.typeParameter.constraint):mc)))}}}return D&&jg(D)}function tfe(u){if(!u.constraint)if(u.target){let m=Uy(u.target);u.constraint=m?Cl(m,u.mapper):JI}else{let m=bot(u);if(!m)u.constraint=NIn(u)||JI;else{let v=tl(m);v.flags&1&&!lo(v)&&(v=m.parent.parent.kind===201?mc:cn),u.constraint=v}}return u.constraint===JI?void 0:u.constraint}function DIn(u){let m=yp(u.symbol,169),v=PB(m.parent)?pAe(m.parent):m.parent;return v&&bS(v)}function $B(u){let m="";if(u){let v=u.length,D=0;for(;D1&&(m+=":"+Y),D+=Y}}return m}function RK(u,m){return u?`@${xg(u)}`+(m?`:${$B(m)}`:""):""}function YOe(u,m){let v=0;for(let D of u)(m===void 0||!(D.flags&m))&&(v|=la(D));return v&458752}function Qse(u,m){return zt(m)&&u===oi?cn:uZ(u,m)}function uZ(u,m){let v=$B(m),D=u.instantiations.get(v);return D||(D=Ph(4,u.symbol),u.instantiations.set(v,D),D.objectFlags|=m?YOe(m):0,D.target=u,D.resolvedTypeArguments=m),D}function kIn(u){let m=Pc(u.flags,u.symbol);return m.objectFlags=u.objectFlags,m.target=u.target,m.resolvedTypeArguments=u.resolvedTypeArguments,m}function IUt(u,m,v,D,W){if(!D){D=Mq(m);let oe=Kse(D);W=v?pZ(oe,v):oe}let Y=Ph(4,u.symbol);return Y.target=u,Y.node=m,Y.mapper=v,Y.aliasSymbol=D,Y.aliasTypeArguments=W,Y}function gf(u){var m,v;if(!u.resolvedTypeArguments){if(!HN(u,5))return Nn(u.target.outerTypeParameters,(m=u.target.localTypeParameters)==null?void 0:m.map(()=>nn))||E;let D=u.node,W=D?D.kind===184?Nn(u.target.outerTypeParameters,Oat(D,u.target.localTypeParameters)):D.kind===189?[tl(D.elementType)]:lt(D.elements,tl):E;xr()?u.resolvedTypeArguments??(u.resolvedTypeArguments=u.mapper?pZ(W,u.mapper):W):(u.resolvedTypeArguments??(u.resolvedTypeArguments=Nn(u.target.outerTypeParameters,((v=u.target.localTypeParameters)==null?void 0:v.map(()=>nn))||E)),Br(u.node||ge,u.target.symbol?Z.Type_arguments_for_0_circularly_reference_themselves:Z.Tuple_type_arguments_circularly_reference_themselves,u.target.symbol&&xl(u.target.symbol)))}return u.resolvedTypeArguments}function k9(u){return B(u.target.typeParameters)}function xIn(u,m){let v=Lp(qA(m)),D=v.localTypeParameters;if(D){let W=B(u.typeArguments),Y=yk(D),oe=wo(u);if(!(!Rt&&oe)&&(WD.length)){let He=oe&&g_(u)&&!Zz(u.parent),$e=Y===D.length?He?Z.Expected_0_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_1_type_argument_s:He?Z.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_between_1_and_2_type_arguments,Vt=ro(v,void 0,2);if(Br(u,$e,Vt,Y,D.length),!oe)return nn}if(u.kind===184&&rhn(u,B(u.typeArguments)!==D.length))return IUt(v,u,void 0);let Me=Nn(v.outerTypeParameters,D9(QOe(u),D,Y,oe));return uZ(v,Me)}return O5(u,m)?v:nn}function Xse(u,m,v,D){let W=Lp(u);if(W===Ht){let He=Ket.get(u.escapedName);if(He!==void 0&&m&&m.length===1)return He===4?hUt(m[0]):Pq(u,m[0])}let Y=fa(u),oe=Y.typeParameters,Be=$B(m)+RK(v,D),Me=Y.instantiations.get(Be);return Me||Y.instantiations.set(Be,Me=Ohn(W,x1(oe,D9(m,oe,yk(oe),wo(u.valueDeclaration))),v,D)),Me}function A3s(u,m){if(aI(m)&1048576){let W=QOe(u),Y=RK(m,W),oe=Kr.get(Y);return oe||(oe=Vc(1,"error",void 0,`alias ${Y}`),oe.aliasSymbol=m,oe.aliasTypeArguments=W,Kr.set(Y,oe)),oe}let v=Lp(m),D=fa(m).typeParameters;if(D){let W=B(u.typeArguments),Y=yk(D);if(WD.length)return Br(u,Y===D.length?Z.Generic_type_0_requires_1_type_argument_s:Z.Generic_type_0_requires_between_1_and_2_type_arguments,xl(m),Y,D.length),nn;let oe=Mq(u),Be=oe&&(GIn(m)||!GIn(oe))?oe:void 0,Me;if(Be)Me=Kse(Be);else if(C7(u)){let He=rfe(u,2097152,!0);if(He&&He!==st){let $e=XC(He);$e&&$e.flags&524288&&(Be=$e,Me=QOe(u)||(D?[]:void 0))}}return Xse(m,QOe(u),Be,Me)}return O5(u,m)?v:nn}function GIn(u){var m;let v=(m=u.declarations)==null?void 0:m.find(vne);return!!(v&&f1(v))}function d3s(u){switch(u.kind){case 184:return u.typeName;case 234:let m=u.expression;if(Hd(m))return m}}function FIn(u){return u.parent?`${FIn(u.parent)}.${u.escapedName}`:u.escapedName}function Eot(u){let v=(u.kind===167?u.right:u.kind===212?u.name:u).escapedText;if(v){let D=u.kind===167?Eot(u.left):u.kind===212?Eot(u.expression):void 0,W=D?`${FIn(D)}.${v}`:v,Y=Zr.get(W);return Y||(Zr.set(W,Y=AA(524288,v,1048576)),Y.parent=D,Y.links.declaredType=En),Y}return st}function rfe(u,m,v){let D=d3s(u);if(!D)return st;let W=NI(D,m,v);return W&&W!==st?W:v?st:Eot(D)}function Sot(u,m){if(m===st)return nn;if(m=vq(m)||m,m.flags&96)return xIn(u,m);if(m.flags&524288)return A3s(u,m);let v=Xfn(m);if(v)return O5(u,m)?my(v):nn;if(m.flags&111551&&vot(u)){let D=p3s(u,m);return D||(rfe(u,788968),fo(m))}return nn}function p3s(u,m){let v=sa(u);if(!v.resolvedJSDocType){let D=fo(m),W=D;if(m.valueDeclaration){let Y=u.kind===206&&u.qualifier;D.symbol&&D.symbol!==m&&Y&&(W=Sot(u,D.symbol))}v.resolvedJSDocType=W}return v.resolvedJSDocType}function hUt(u){return mUt(u)?ZIn(u,cn):u}function mUt(u){return!!(u.flags&3145728&&zt(u.types,mUt)||u.flags&33554432&&!Jse(u)&&mUt(u.baseType)||u.flags&524288&&!Ek(u)||u.flags&432275456&&!DK(u))}function Jse(u){return!!(u.flags&33554432&&u.constraint.flags&2)}function CUt(u,m){return m.flags&3||m===u||u.flags&1?u:ZIn(u,m)}function ZIn(u,m){let v=`${JC(u)}>${JC(m)}`,D=Rg.get(v);if(D)return D;let W=ic(33554432);return W.baseType=u,W.constraint=m,Rg.set(v,W),W}function _Ut(u){return Jse(u)?u.baseType:jg([u.constraint,u.baseType])}function LIn(u){return u.kind===190&&u.elements.length===1}function VIn(u,m,v){return LIn(m)&&LIn(v)?VIn(u,m.elements[0],v.elements[0]):dZ(tl(m))===dZ(u)?tl(v):void 0}function f3s(u,m){let v,D=!0;for(;m&&!Lc(m)&&m.kind!==321;){let W=m.parent;if(W.kind===170&&(D=!D),(D||u.flags&8650752)&&W.kind===195&&m===W.trueType){let Y=VIn(u,W.checkType,W.extendsType);Y&&(v=Ft(v,Y))}else if(u.flags&262144&&W.kind===201&&!W.nameType&&m===W.type){let Y=tl(W);if(tT(Y)===dZ(u)){let oe=U2e(Y);if(oe){let Be=Uy(oe);Be&&kE(Be,Y5)&&(v=Ft(v,Ha([ri,yu])))}}}m=W}return v?CUt(u,jg(v)):u}function vot(u){return!!(u.flags&16777216)&&(u.kind===184||u.kind===206)}function O5(u,m){return u.typeArguments?(Br(u,Z.Type_0_is_not_generic,m?xl(m):u.typeName?Md(u.typeName):Qet),!1):!0}function WIn(u){if(Ir(u.typeName)){let m=u.typeArguments;switch(u.typeName.escapedText){case"String":return O5(u),$r;case"Number":return O5(u),ri;case"BigInt":return O5(u),oo;case"Boolean":return O5(u),Mn;case"Void":return O5(u),es;case"Undefined":return O5(u),wt;case"Null":return O5(u),Hn;case"Function":case"function":return O5(u),Js;case"array":return(!m||!m.length)&&!Rt?f_:void 0;case"promise":return(!m||!m.length)&&!Rt?LPe(hr):void 0;case"Object":if(m&&m.length===2){if(gAe(u)){let v=tl(m[0]),D=tl(m[1]),W=v===$r||v===ri?[sG(v,D,!1)]:E;return Qf(void 0,Ee,E,E,W)}return hr}return O5(u),Rt?void 0:hr}}}function I3s(u){let m=tl(u.type);return at?uPe(m,65536):m}function Bot(u){let m=sa(u);if(!m.resolvedType){if(c2(u)&&vd(u.parent))return m.resolvedSymbol=st,m.resolvedType=DI(u.parent.expression);let v,D,W=788968;vot(u)&&(D=WIn(u),D||(v=rfe(u,W,!0),v===st?v=rfe(u,W|111551):rfe(u,W),D=Sot(u,v))),D||(v=rfe(u,W),D=Sot(u,v)),m.resolvedSymbol=v,m.resolvedType=D}return m.resolvedType}function QOe(u){return lt(u.typeArguments,tl)}function OIn(u){let m=sa(u);if(!m.resolvedType){let v=S_n(u);m.resolvedType=my(G1(v))}return m.resolvedType}function PIn(u,m){function v(W){let Y=W.declarations;if(Y)for(let oe of Y)switch(oe.kind){case 264:case 265:case 267:return oe}}if(!u)return m?oi:Jg;let D=Lp(u);return D.flags&524288?B(D.typeParameters)!==m?(Br(v(u),Z.Global_type_0_must_have_1_type_parameter_s,of(u),m),m?oi:Jg):D:(Br(v(u),Z.Global_type_0_must_be_a_class_or_interface_type,of(u)),m?oi:Jg)}function yUt(u,m){return Use(u,111551,m?Z.Cannot_find_global_value_0:void 0)}function bUt(u,m){return Use(u,788968,m?Z.Cannot_find_global_type_0:void 0)}function wot(u,m,v){let D=Use(u,788968,v?Z.Cannot_find_global_type_0:void 0);if(D&&(Lp(D),B(fa(D).typeParameters)!==m)){let W=D.declarations&&de(D.declarations,OB);Br(W,Z.Global_type_0_must_have_1_type_parameter_s,of(D),m);return}return D}function Use(u,m,v){return An(void 0,u,m,v,!1,!1)}function jI(u,m,v){let D=bUt(u,v);return D||v?PIn(D,m):void 0}function MIn(u,m){let v;for(let D of u)v=Ft(v,jI(D,m,!1));return v??E}function h3s(){return Xx||(Xx=jI("TypedPropertyDescriptor",1,!0)||oi)}function m3s(){return Jl||(Jl=jI("TemplateStringsArray",0,!0)||Jg)}function HIn(){return tg||(tg=jI("ImportMeta",0,!0)||Jg)}function YIn(){if(!zl){let u=AA(0,"ImportMetaExpression"),m=HIn(),v=AA(4,"meta",8);v.parent=u,v.links.type=m;let D=$u([v]);u.members=D,zl=Qf(u,D,E,E,E)}return zl}function QIn(u){return Su||(Su=jI("ImportCallOptions",0,u))||Jg}function EUt(u){return xf||(xf=jI("ImportAttributes",0,u))||Jg}function XIn(u){return vv||(vv=yUt("Symbol",u))}function C3s(u){return lk||(lk=bUt("SymbolConstructor",u))}function JIn(){return Qx||(Qx=jI("Symbol",0,!1))||Jg}function XOe(u){return Pb||(Pb=jI("Promise",1,u))||oi}function UIn(u){return rC||(rC=jI("PromiseLike",1,u))||oi}function SUt(u){return gR||(gR=yUt("Promise",u))}function _3s(u){return mS||(mS=jI("PromiseConstructorLike",0,u))||Jg}function JOe(u){return wa||(wa=jI("AsyncIterable",3,u))||oi}function y3s(u){return pc||(pc=jI("AsyncIterator",3,u))||oi}function KIn(u){return cl||(cl=jI("AsyncIterableIterator",3,u))||oi}function b3s(){return gr??(gr=MIn(["ReadableStreamAsyncIterator"],1))}function E3s(u){return Ln||(Ln=jI("AsyncIteratorObject",3,u))||oi}function S3s(u){return bs||(bs=jI("AsyncGenerator",3,u))||oi}function Tot(u){return VN||(VN=jI("Iterable",3,u))||oi}function v3s(u){return ct||(ct=jI("Iterator",3,u))||oi}function jIn(u){return en||(en=jI("IterableIterator",3,u))||oi}function vUt(){return yt?wt:hr}function B3s(){return Fe??(Fe=MIn(["ArrayIterator","MapIterator","SetIterator","StringIterator"],1))}function w3s(u){return gi||(gi=jI("IteratorObject",3,u))||oi}function T3s(u){return _i||(_i=jI("Generator",3,u))||oi}function R3s(u){return ys||(ys=jI("IteratorYieldResult",1,u))||oi}function N3s(u){return $s||($s=jI("IteratorReturnResult",1,u))||oi}function zIn(u){return Ug||(Ug=jI("Disposable",0,u))||Jg}function D3s(u){return YC||(YC=jI("AsyncDisposable",0,u))||Jg}function qIn(u,m=0){let v=Use(u,788968,void 0);return v&&PIn(v,m)}function k3s(){return w1||(w1=wot("Extract",2,!0)||st),w1===st?void 0:w1}function x3s(){return CS||(CS=wot("Omit",2,!0)||st),CS===st?void 0:CS}function BUt(u){return Bv||(Bv=wot("Awaited",1,u)||(u?st:void 0)),Bv===st?void 0:Bv}function G3s(){return qF||(qF=jI("BigInt",0,!1))||Jg}function F3s(u){return uk??(uk=jI("ClassDecoratorContext",1,u))??oi}function Z3s(u){return AR??(AR=jI("ClassMethodDecoratorContext",2,u))??oi}function L3s(u){return QB??(QB=jI("ClassGetterDecoratorContext",2,u))??oi}function V3s(u){return rO??(rO=jI("ClassSetterDecoratorContext",2,u))??oi}function W3s(u){return br??(br=jI("ClassAccessorDecoratorContext",2,u))??oi}function O3s(u){return sn??(sn=jI("ClassAccessorDecoratorTarget",2,u))??oi}function P3s(u){return ei??(ei=jI("ClassAccessorDecoratorResult",2,u))??oi}function M3s(u){return is??(is=jI("ClassFieldDecoratorContext",2,u))??oi}function H3s(){return A9||(A9=yUt("NaN",!1))}function Y3s(){return Yy||(Yy=wot("Record",2,!0)||st),Yy===st?void 0:Yy}function nfe(u,m){return u!==oi?uZ(u,m):Jg}function $In(u){return nfe(h3s(),[u])}function ehn(u){return nfe(Tot(!0),[u,es,wt])}function f0(u,m){return nfe(m?gA:kA,[u])}function wUt(u){switch(u.kind){case 191:return 2;case 192:return thn(u);case 203:return u.questionToken?2:u.dotDotDotToken?thn(u):1;default:return 1}}function thn(u){return $Oe(u.type)?4:8}function Q3s(u){let m=U3s(u.parent);if($Oe(u))return m?gA:kA;let D=lt(u.elements,wUt);return TUt(D,m,lt(u.elements,X3s))}function X3s(u){return eR(u)||Si(u)?u:void 0}function rhn(u,m){return!!Mq(u)||nhn(u)&&(u.kind===189?yO(u.elementType):u.kind===190?zt(u.elements,yO):m||zt(u.typeArguments,yO))}function nhn(u){let m=u.parent;switch(m.kind){case 197:case 203:case 184:case 193:case 194:case 200:case 195:case 199:case 189:case 190:return nhn(m);case 266:return!0}return!1}function yO(u){switch(u.kind){case 184:return vot(u)||!!(rfe(u,788968).flags&524288);case 187:return!0;case 199:return u.operator!==158&&yO(u.type);case 197:case 191:case 203:case 317:case 315:case 316:case 310:return yO(u.type);case 192:return u.type.kind!==189||yO(u.type.elementType);case 193:case 194:return zt(u.types,yO);case 200:return yO(u.objectType)||yO(u.indexType);case 195:return yO(u.checkType)||yO(u.extendsType)||yO(u.trueType)||yO(u.falseType)}return!1}function J3s(u){let m=sa(u);if(!m.resolvedType){let v=Q3s(u);if(v===oi)m.resolvedType=Jg;else if(!(u.kind===190&&zt(u.elements,D=>!!(wUt(D)&8)))&&rhn(u))m.resolvedType=u.kind===190&&u.elements.length===0?v:IUt(v,u,void 0);else{let D=u.kind===189?[tl(u.elementType)]:lt(u.elements,tl);m.resolvedType=RUt(v,D)}}return m.resolvedType}function U3s(u){return VB(u)&&u.operator===148}function bk(u,m,v=!1,D=[]){let W=TUt(m||lt(u,Y=>1),v,D);return W===oi?Jg:u.length?RUt(W,u):W}function TUt(u,m,v){if(u.length===1&&u[0]&4)return m?gA:kA;let D=lt(u,Y=>Y&1?"#":Y&2?"?":Y&4?".":"*").join()+(m?"R":"")+(zt(v,Y=>!!Y)?","+lt(v,Y=>Y?id(Y):"_").join(","):""),W=ba.get(D);return W||ba.set(D,W=K3s(u,m,v)),W}function K3s(u,m,v){let D=u.length,W=ze(u,Vt=>!!(Vt&9)),Y,oe=[],Be=0;if(D){Y=new Array(D);for(let Vt=0;Vt!!(u.elementFlags[ii]&8&&vn.flags&1179648));if(dn>=0)return KOe(lt(m,(vn,ii)=>u.elementFlags[ii]&8?vn:cn))?Xf(m[dn],vn=>NUt(u,Ql(m,dn,vn))):nn}let oe=[],Be=[],Me=[],He=-1,$e=-1,Vt=-1;for(let dn=0;dn=1e4)return Br(ge,kw(ge)?Z.Type_produces_a_tuple_type_that_is_too_large_to_represent:Z.Expression_produces_a_tuple_type_that_is_too_large_to_represent),nn;F(Yi,(js,Co)=>{var Ji;return wr(js,vn.target.elementFlags[Co],(Ji=vn.target.labeledElementDeclarations)==null?void 0:Ji[Co])})}else wr(G9(vn)&&V5(vn,ri)||nn,4,(W=u.labeledElementDeclarations)==null?void 0:W[dn]);else wr(vn,ii,(Y=u.labeledElementDeclarations)==null?void 0:Y[dn])}for(let dn=0;dn=0&&$eBe[$e+vn]&8?k1(dn,ri):dn)),oe.splice($e+1,Vt-$e),Be.splice($e+1,Vt-$e),Me.splice($e+1,Vt-$e));let xt=TUt(Be,u.readonly,Me);return xt===oi?Jg:Be.length?uZ(xt,oe):xt;function wr(dn,vn,ii){vn&1&&(He=Be.length),vn&4&&$e<0&&($e=Be.length),vn&6&&(Vt=Be.length),oe.push(vn&2?V0(dn,!0):dn),Be.push(vn),Me.push(ii)}}function ife(u,m,v=0){let D=u.target,W=k9(u)-v;return m>D.fixedLength?ZMs(u)||bk(E):bk(gf(u).slice(m,W),D.elementFlags.slice(m,W),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(m,W))}function ihn(u){return Ha(Ft(Ri(u.target.fixedLength,m=>DE(""+m)),XN(u.target.readonly?gA:kA)))}function j3s(u,m){let v=Se(u.elementFlags,D=>!(D&m));return v>=0?v:u.elementFlags.length}function Y2e(u,m){return u.elementFlags.length-De(u.elementFlags,v=>!(v&m))-1}function DUt(u){return u.fixedLength+Y2e(u,3)}function zQ(u){let m=gf(u),v=k9(u);return m.length===v?m:m.slice(0,v)}function z3s(u){return V0(tl(u.type),!0)}function JC(u){return u.id}function oG(u,m){return Oc(u,m,JC,Zt)>=0}function UOe(u,m){let v=Oc(u,m,JC,Zt);return v<0?(u.splice(~v,0,m),!0):!1}function q3s(u,m,v){let D=v.flags;if(!(D&131072))if(m|=D&473694207,D&465829888&&(m|=33554432),D&2097152&&la(v)&67108864&&(m|=536870912),v===Ni&&(m|=8388608),lo(v)&&(m|=1073741824),!at&&D&98304)la(v)&65536||(m|=4194304);else{let W=u.length,Y=W&&v.id>u[W-1].id?~W:Oc(u,v,JC,Zt);Y<0&&u.splice(~Y,0,v)}return m}function shn(u,m,v){let D;for(let W of v)W!==D&&(m=W.flags&1048576?shn(u,m|(i5s(W)?1048576:0),W.types):q3s(u,m,W),D=W);return m}function $3s(u,m){var v;if(u.length<2)return u;let D=$B(u),W=Cs.get(D);if(W)return W;let Y=m&&zt(u,He=>!!(He.flags&524288)&&!Xb(He)&&tKt(CR(He))),oe=u.length,Be=oe,Me=0;for(;Be>0;){Be--;let He=u[Be];if(Y||He.flags&469499904){if(He.flags&262144&&QN(He).flags&1048576){JN(He,Ha(lt(u,xt=>xt===He?Oi:xt)),Sf)&&WA(u,Be);continue}let $e=He.flags&61603840?de(Zd(He),xt=>yR(fo(xt))):void 0,Vt=$e&&my(fo($e));for(let xt of u)if(He!==xt){if(Me===1e5&&Me/(oe-Be)*oe>1e6){(v=ki)==null||v.instant(ki.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:u.map(dn=>dn.id)}),Br(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(Me++,$e&&xt.flags&61603840){let wr=Wi(xt,$e.escapedName);if(wr&&yR(wr)&&my(wr)!==Vt)continue}if(JN(He,xt,Sf)&&(!(la(vs(He))&1)||!(la(vs(xt))&1)||H5(He,xt))){WA(u,Be);break}}}}return Cs.set(D,u),u}function e5s(u,m,v){let D=u.length;for(;D>0;){D--;let W=u[D],Y=W.flags;(Y&402653312&&m&4||Y&256&&m&8||Y&2048&&m&64||Y&8192&&m&4096||v&&Y&32768&&m&16384||$Q(W)&&oG(u,W.regularType))&&WA(u,D)}}function t5s(u){let m=Le(u,DK);if(m.length){let v=u.length;for(;v>0;){v--;let D=u[v];D.flags&128&&zt(m,W=>r5s(D,W))&&WA(u,v)}}}function r5s(u,m){return m.flags&134217728?nat(u,m):rat(u,m)}function n5s(u){let m=[];for(let v of u)if(v.flags&2097152&&la(v)&67108864){let D=v.types[0].flags&8650752?0:1;Qi(m,v.types[D])}for(let v of m){let D=[];for(let Y of u)if(Y.flags&2097152&&la(Y)&67108864){let oe=Y.types[0].flags&8650752?0:1;Y.types[oe]===v&&UOe(D,Y.types[1-oe])}let W=W_(v);if(kE(W,Y=>oG(D,Y))){let Y=u.length;for(;Y>0;){Y--;let oe=u[Y];if(oe.flags&2097152&&la(oe)&67108864){let Be=oe.types[0].flags&8650752?0:1;oe.types[Be]===v&&oG(D,oe.types[1-Be])&&WA(u,Y)}}UOe(u,v)}}}function i5s(u){return!!(u.flags&1048576&&(u.aliasSymbol||u.origin))}function ohn(u,m){for(let v of m)if(v.flags&1048576){let D=v.origin;v.aliasSymbol||D&&!(D.flags&1048576)?Qi(u,v):D&&D.flags&1048576&&ohn(u,D.types)}}function kUt(u,m){let v=ql(u);return v.types=m,v}function Ha(u,m=1,v,D,W){if(u.length===0)return Oi;if(u.length===1)return u[0];if(u.length===2&&!W&&(u[0].flags&1048576||u[1].flags&1048576)){let Y=m===0?"N":m===2?"S":"L",oe=u[0].id=2&&Y[0]===wt&&Y[1]===fr&&WA(Y,1),(oe&402664352||oe&16384&&oe&32768)&&e5s(Y,oe,!!(m&2)),oe&128&&oe&402653184&&t5s(Y),oe&536870912&&n5s(Y),m===2&&(Y=$3s(Y,!!(oe&524288)),!Y))return nn;if(Y.length===0)return oe&65536?oe&4194304?Hn:Mt:oe&32768?oe&4194304?wt:xe:Oi}if(!W&&oe&1048576){let Me=[];ohn(Me,u);let He=[];for(let Vt of Y)zt(Me,xt=>oG(xt.types,Vt))||He.push(Vt);if(!v&&Me.length===1&&He.length===0)return Me[0];if(Kl(Me,(Vt,xt)=>Vt+xt.types.length,0)+He.length===Y.length){for(let Vt of Me)UOe(He,Vt);W=kUt(1048576,He)}}let Be=(oe&36323331?0:32768)|(oe&2097152?16777216:0);return GUt(Y,Be,v,D,W)}function s5s(u,m){let v,D=[];for(let Y of u){let oe=kv(Y);if(oe){if(oe.kind!==0&&oe.kind!==1||v&&!xUt(v,oe))return;v=oe,D.push(oe.type)}else{let Be=m!==2097152?Ad(Y):void 0;if(Be!==Bs&&Be!==Ys)return}}if(!v)return;let W=BIn(D,m);return P2e(v.kind,v.parameterName,v.parameterIndex,W)}function xUt(u,m){return u.kind===m.kind&&u.parameterIndex===m.parameterIndex}function GUt(u,m,v,D,W){if(u.length===0)return Oi;if(u.length===1)return u[0];let oe=(W?W.flags&1048576?`|${$B(W.types)}`:W.flags&2097152?`&${$B(W.types)}`:`#${W.type.id}|${$B(u)}`:$B(u))+RK(v,D),Be=Oo.get(oe);return Be||(Be=ic(1048576),Be.objectFlags=m|YOe(u,98304),Be.types=u,Be.origin=W,Be.aliasSymbol=v,Be.aliasTypeArguments=D,u.length===2&&u[0].flags&512&&u[1].flags&512&&(Be.flags|=16,Be.intrinsicName="boolean"),Oo.set(oe,Be)),Be}function o5s(u){let m=sa(u);if(!m.resolvedType){let v=Mq(u);m.resolvedType=Ha(lt(u.types,tl),1,v,Kse(v))}return m.resolvedType}function a5s(u,m,v){let D=v.flags;return D&2097152?chn(u,m,v.types):(Ek(v)?m&16777216||(m|=16777216,u.set(v.id.toString(),v)):(D&3?(v===Ni&&(m|=8388608),lo(v)&&(m|=1073741824)):(at||!(D&98304))&&(v===fr&&(m|=262144,v=wt),u.has(v.id.toString())||(v.flags&109472&&m&109472&&(m|=67108864),u.set(v.id.toString(),v))),m|=D&473694207),m)}function chn(u,m,v){for(let D of v)m=a5s(u,m,my(D));return m}function c5s(u,m){let v=u.length;for(;v>0;){v--;let D=u[v];(D.flags&4&&m&402653312||D.flags&8&&m&256||D.flags&64&&m&2048||D.flags&4096&&m&8192||D.flags&16384&&m&32768||Ek(D)&&m&470302716)&&WA(u,v)}}function l5s(u,m){for(let v of u)if(!oG(v.types,m)){if(m===fr)return oG(v.types,wt);if(m===wt)return oG(v.types,fr);let D=m.flags&128?$r:m.flags&288?ri:m.flags&2048?oo:m.flags&8192?ci:void 0;if(!D||!oG(v.types,D))return!1}return!0}function u5s(u){let m=u.length,v=Le(u,D=>!!(D.flags&128));for(;m>0;){m--;let D=u[m];if(D.flags&402653184){for(let W of v)if(tX(W,D)){WA(u,m);break}else if(DK(D))return!0}}return!1}function lhn(u,m){for(let v=0;v!(D.flags&m))}function g5s(u){let m,v=Se(u,oe=>!!(la(oe)&32768));if(v<0)return!1;let D=v+1;for(;D!!(dn.flags&469893116)||Ek(dn))){if(sfe(wr,xt))return Vt;if(!(wr.flags&1048576&&Zv(wr,dn=>sfe(dn,xt)))&&!sfe(xt,wr))return Oi;Be=67108864}}}let Me=$B(oe)+(m&2?"*":RK(v,D)),He=yr.get(Me);if(!He){if(Y&1048576)if(g5s(oe))He=jg(oe,m,v,D);else if(ue(oe,$e=>!!($e.flags&1048576&&$e.types[0].flags&32768))){let $e=zt(oe,tSe)?fr:wt;lhn(oe,32768),He=Ha([jg(oe,m),$e],1,v,D)}else if(ue(oe,$e=>!!($e.flags&1048576&&($e.types[0].flags&65536||$e.types[1].flags&65536))))lhn(oe,65536),He=Ha([jg(oe,m),Hn],1,v,D);else if(oe.length>=3&&u.length>2){let $e=Math.floor(oe.length/2);He=jg([jg(oe.slice(0,$e),m),jg(oe.slice($e),m)],m,v,D)}else{if(!KOe(oe))return nn;let $e=d5s(oe,m),Vt=zt($e,xt=>!!(xt.flags&2097152))&&FUt($e)>FUt(oe)?kUt(2097152,oe):void 0;He=Ha($e,1,v,D,Vt)}else He=A5s(oe,Be,v,D);yr.set(Me,He)}return He}function uhn(u){return Kl(u,(m,v)=>v.flags&1048576?m*v.types.length:v.flags&131072?0:m,1)}function KOe(u){var m;let v=uhn(u);return v>=1e5?((m=ki)==null||m.instant(ki.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:u.map(D=>D.id),size:v}),Br(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function d5s(u,m){let v=uhn(u),D=[];for(let W=0;W=0;Me--)if(u[Me].flags&1048576){let He=u[Me].types,$e=He.length;Y[Me]=He[oe%$e],oe=Math.floor(oe/$e)}let Be=jg(Y,m);Be.flags&131072||D.push(Be)}return D}function ghn(u){return!(u.flags&3145728)||u.aliasSymbol?1:u.flags&1048576&&u.origin?ghn(u.origin):FUt(u.types)}function FUt(u){return Kl(u,(m,v)=>m+ghn(v),0)}function p5s(u){let m=sa(u);if(!m.resolvedType){let v=Mq(u),D=lt(u.types,tl),W=D.length===2?D.indexOf(Eg):-1,Y=W>=0?D[1-W]:cn,oe=!!(Y.flags&76||Y.flags&134217728&&DK(Y));m.resolvedType=jg(D,oe?1:0,v,Kse(v))}return m.resolvedType}function Ahn(u,m){let v=ic(4194304);return v.type=u,v.indexFlags=m,v}function f5s(u){let m=ql(4194304);return m.type=u,m}function dhn(u,m){return m&1?u.resolvedStringIndexType||(u.resolvedStringIndexType=Ahn(u,1)):u.resolvedIndexType||(u.resolvedIndexType=Ahn(u,0))}function phn(u,m){let v=tT(u),D=SS(u),W=R9(u.target||u);if(!W&&!(m&2))return D;let Y=[];if(xK(D)){if(Hse(u))return dhn(u,m);PK(D,Be)}else if(Hse(u)){let Me=hy(L5(u));rUt(Me,8576,!!(m&1),Be)}else PK(WOe(D),Be);let oe=m&2?am(Ha(Y),Me=>!(Me.flags&5)):Ha(Y);if(oe.flags&1048576&&D.flags&1048576&&$B(oe.types)===$B(D.types))return D;return oe;function Be(Me){let He=W?Cl(W,J2e(u.mapper,v,Me)):Me;Y.push(He===$r?bi:He)}}function I5s(u){let m=tT(u);return v(R9(u)||m);function v(D){return D.flags&470810623?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===m:D.flags&137363456?ue(D.types,v):D.flags&8388608?v(D.objectType)&&v(D.indexType):D.flags&33554432?v(D.baseType)&&v(D.constraint):D.flags&268435456?v(D.type):!1}}function gZ(u){if(p(u))return Oi;if(yC(u))return my(Ml(u));if(Un(u))return my(rT(u));let m=w3(u);return m!==void 0?DE(Bc(m)):un(u)?my(Ml(u)):Oi}function Oq(u,m,v){if(v||!(d2(u)&6)){let D=fa(dot(u)).nameType;if(!D){let W=fl(u.valueDeclaration);D=u.escapedName==="default"?DE("default"):W&&gZ(W)||(X7(u)?void 0:DE(of(u)))}if(D&&D.flags&m)return D}return Oi}function fhn(u,m){return!!(u.flags&m||u.flags&2097152&&zt(u.types,v=>fhn(v,m)))}function h5s(u,m,v){let D=v&&(la(u)&7||u.aliasSymbol)?f5s(u):void 0,W=lt(Zd(u),oe=>Oq(oe,m)),Y=lt(p0(u),oe=>oe!==Uc&&fhn(oe.keyType,m)?oe.keyType===$r&&m&8?bi:oe.keyType:Oi);return Ha(Nn(W,Y),1,void 0,void 0,D)}function ZUt(u,m=0){return!!(u.flags&58982400||vO(u)||Xb(u)&&(!I5s(u)||V2e(u)===2)||u.flags&1048576&&!(m&4)&&cUt(u)||u.flags&2097152&&uh(u,465829888)&&zt(u.types,Ek))}function XN(u,m=0){return u=qB(u),Jse(u)?hUt(XN(u.baseType,m)):ZUt(u,m)?dhn(u,m):u.flags&1048576?jg(lt(u.types,v=>XN(v,m))):u.flags&2097152?Ha(lt(u.types,v=>XN(v,m))):la(u)&32?phn(u,m):u===Ni?Ni:u.flags&2?Oi:u.flags&131073?mc:h5s(u,(m&2?128:402653316)|(m&1?0:12584),m===0)}function Ihn(u){let m=k3s();return m?Xse(m,[u,$r]):$r}function m5s(u){let m=Ihn(XN(u));return m.flags&131072?$r:m}function C5s(u){let m=sa(u);if(!m.resolvedType)switch(u.operator){case 143:m.resolvedType=XN(tl(u.type));break;case 158:m.resolvedType=u.type.kind===155?QUt(Tne(u.parent)):nn;break;case 148:m.resolvedType=tl(u.type);break;default:pe.assertNever(u.operator)}return m.resolvedType}function _5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=NK([u.head.text,...lt(u.templateSpans,v=>v.literal.text)],lt(u.templateSpans,v=>tl(v.type)))),m.resolvedType}function NK(u,m){let v=Se(m,He=>!!(He.flags&1179648));if(v>=0)return KOe(m)?Xf(m[v],He=>NK(u,Ql(m,v,He))):nn;if(k(m,Ni))return Ni;let D=[],W=[],Y=u[0];if(!Me(u,m))return $r;if(D.length===0)return DE(Y);if(W.push(Y),ue(W,He=>He==="")){if(ue(D,He=>!!(He.flags&4)))return $r;if(D.length===1&&DK(D[0]))return D[0]}let oe=`${$B(D)}|${lt(W,He=>He.length).join(",")}|${W.join("")}`,Be=$c.get(oe);return Be||$c.set(oe,Be=b5s(W,D)),Be;function Me(He,$e){for(let Vt=0;Vt<$e.length;Vt++){let xt=$e[Vt];if(xt.flags&101248)Y+=y5s(xt)||"",Y+=He[Vt+1];else if(xt.flags&134217728){if(Y+=xt.texts[0],!Me(xt.texts,xt.types))return!1;Y+=He[Vt+1]}else if(xK(xt)||jOe(xt))D.push(xt),W.push(Y),Y=He[Vt+1];else return!1}return!0}}function y5s(u){return u.flags&128?u.value:u.flags&256?""+u.value:u.flags&2048?OW(u.value):u.flags&98816?u.intrinsicName:void 0}function b5s(u,m){let v=ic(134217728);return v.texts=u,v.types=m,v}function Pq(u,m){return m.flags&1179648?Xf(m,v=>Pq(u,v)):m.flags&128?DE(hhn(u,m.value)):m.flags&134217728?NK(...E5s(u,m.texts,m.types)):m.flags&268435456&&u===m.symbol?m:m.flags&268435461||xK(m)?mhn(u,m):jOe(m)?mhn(u,NK(["",""],[m])):m}function hhn(u,m){switch(Ket.get(u.escapedName)){case 0:return m.toUpperCase();case 1:return m.toLowerCase();case 2:return m.charAt(0).toUpperCase()+m.slice(1);case 3:return m.charAt(0).toLowerCase()+m.slice(1)}return m}function E5s(u,m,v){switch(Ket.get(u.escapedName)){case 0:return[m.map(D=>D.toUpperCase()),v.map(D=>Pq(u,D))];case 1:return[m.map(D=>D.toLowerCase()),v.map(D=>Pq(u,D))];case 2:return[m[0]===""?m:[m[0].charAt(0).toUpperCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[Pq(u,v[0]),...v.slice(1)]:v];case 3:return[m[0]===""?m:[m[0].charAt(0).toLowerCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[Pq(u,v[0]),...v.slice(1)]:v]}return[m,v]}function mhn(u,m){let v=`${xg(u)},${JC(m)}`,D=Qu.get(v);return D||Qu.set(v,D=S5s(u,m)),D}function S5s(u,m){let v=Pc(268435456,u);return v.type=m,v}function v5s(u,m,v,D,W){let Y=ic(8388608);return Y.objectType=u,Y.indexType=m,Y.accessFlags=v,Y.aliasSymbol=D,Y.aliasTypeArguments=W,Y}function Q2e(u){if(Rt)return!1;if(la(u)&4096)return!0;if(u.flags&1048576)return ue(u.types,Q2e);if(u.flags&2097152)return zt(u.types,Q2e);if(u.flags&465829888){let m=sUt(u);return m!==u&&Q2e(m)}return!1}function Rot(u,m){return p2(u)?f2(u):m&&PI(m)?w3(m):void 0}function LUt(u,m){if(m.flags&8208){let v=ji(u.parent,D=>!bp(D))||u.parent;return EF(v)?gv(v)&&Ir(u)&&Nmn(v,u):ue(m.declarations,D=>!Eu(D)||dR(D))}return!0}function Chn(u,m,v,D,W,Y){let oe=W&&W.kind===213?W:void 0,Be=W&&p(W)?void 0:Rot(v,W);if(Be!==void 0){if(Y&256)return J5(m,Be)||hr;let He=Fg(m,Be);if(He){if(Y&64&&W&&He.declarations&&fy(He)&&LUt(W,He)){let Vt=oe?.argumentExpression??(_v(W)?W.indexType:W);KB(Vt,He.declarations,Be)}if(oe){if(NPe(He,oe,zCn(oe.expression,m.symbol)),W_n(oe,He,jD(oe))){Br(oe.argumentExpression,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,xl(He));return}if(Y&8&&(sa(W).resolvedSymbol=He),HCn(oe,He))return Sn}let $e=Y&4?T9(He):fo(He);return oe&&jD(oe)!==1?CZ(oe,$e):W&&_v(W)&&tSe($e)?Ha([$e,wt]):$e}if(kE(m,bA)&&yN(Be)){let $e=+Be;if(W&&kE(m,Vt=>!(Vt.target.combinedFlags&12))&&!(Y&16)){let Vt=VUt(W);if(bA(m)){if($e<0)return Br(Vt,Z.A_tuple_type_cannot_be_indexed_with_a_negative_value),wt;Br(Vt,Z.Tuple_type_0_of_length_1_has_no_element_at_index_2,ro(m),k9(m),Bc(Be))}else Br(Vt,Z.Property_0_does_not_exist_on_type_1,Bc(Be),ro(m))}if($e>=0)return Me(iG(m,ri)),lmn(m,$e,Y&1?fr:void 0)}}if(!(v.flags&98304)&&O_(v,402665900)){if(m.flags&131073)return m;let He=W2e(m,v)||iG(m,$r);if(He){if(Y&2&&He.keyType!==ri){oe&&(Y&4?Br(oe,Z.Type_0_is_generic_and_can_only_be_indexed_for_reading,ro(u)):Br(oe,Z.Type_0_cannot_be_used_to_index_type_1,ro(v),ro(u)));return}if(W&&He.keyType===$r&&!O_(v,12)){let $e=VUt(W);return Br($e,Z.Type_0_cannot_be_used_as_an_index_type,ro(v)),Y&1?Ha([He.type,fr]):He.type}return Me(He),Y&1&&!(m.symbol&&m.symbol.flags&384&&v.symbol&&v.flags&1024&&nC(v.symbol)===m.symbol)?Ha([He.type,fr]):He.type}if(v.flags&131072)return Oi;if(Q2e(m))return hr;if(oe&&!Lat(m)){if(F9(m)){if(Rt&&v.flags&384)return PA.add(mo(oe,Z.Property_0_does_not_exist_on_type_1,v.value,ro(m))),wt;if(v.flags&12){let $e=lt(m.properties,Vt=>fo(Vt));return Ha(Ft($e,wt))}}if(m.symbol===pr&&Be!==void 0&&pr.exports.has(Be)&&pr.exports.get(Be).flags&418)Br(oe,Z.Property_0_does_not_exist_on_type_1,Bc(Be),ro(m));else if(Rt&&!(Y&128))if(Be!==void 0&&XCn(Be,m)){let $e=ro(m);Br(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,Be,$e,$e+"["+Fp(oe.argumentExpression)+"]")}else if(V5(m,ri))Br(oe.argumentExpression,Z.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let $e;if(Be!==void 0&&($e=KCn(Be,m)))$e!==void 0&&Br(oe.argumentExpression,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Be,ro(m),$e);else{let Vt=kQs(m,oe,v);if(Vt!==void 0)Br(oe,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,ro(m),Vt);else{let xt;if(v.flags&1024)xt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+ro(v)+"]",ro(m));else if(v.flags&8192){let wr=y9(v.symbol,oe);xt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+wr+"]",ro(m))}else v.flags&128||v.flags&256?xt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,v.value,ro(m)):v.flags&12&&(xt=wu(void 0,Z.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,ro(v),ro(m)));xt=wu(xt,Z.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,ro(D),ro(m)),PA.add(Dw(ms(oe),oe,xt))}}}return}}if(Y&16&&F9(m))return wt;if(Q2e(m))return hr;if(W){let He=VUt(W);if(He.kind!==10&&v.flags&384)Br(He,Z.Property_0_does_not_exist_on_type_1,""+v.value,ro(m));else if(v.flags&12)Br(He,Z.Type_0_has_no_matching_index_signature_for_type_1,ro(m),ro(v));else{let $e=He.kind===10?"bigint":ro(v);Br(He,Z.Type_0_cannot_be_used_as_an_index_type,$e)}}if(Xo(v))return v;return;function Me(He){He&&He.isReadonly&&oe&&(TF(oe)||jye(oe))&&Br(oe,Z.Index_signature_in_type_0_only_permits_reading,ro(m))}}function VUt(u){return u.kind===213?u.argumentExpression:u.kind===200?u.indexType:u.kind===168?u.expression:u}function jOe(u){if(u.flags&2097152){let m=!1;for(let v of u.types)if(v.flags&101248||jOe(v))m=!0;else if(!(v.flags&524288))return!1;return m}return!!(u.flags&77)||DK(u)}function DK(u){return!!(u.flags&134217728)&&ue(u.types,jOe)||!!(u.flags&268435456)&&jOe(u.type)}function _hn(u){return!!(u.flags&402653184)&&!DK(u)}function P5(u){return!!X2e(u)}function kK(u){return!!(X2e(u)&4194304)}function xK(u){return!!(X2e(u)&8388608)}function X2e(u){return u.flags&3145728?(u.objectFlags&2097152||(u.objectFlags|=2097152|Kl(u.types,(m,v)=>m|X2e(v),0)),u.objectFlags&12582912):u.flags&33554432?(u.objectFlags&2097152||(u.objectFlags|=2097152|X2e(u.baseType)|X2e(u.constraint)),u.objectFlags&12582912):(u.flags&58982400||Xb(u)||vO(u)?4194304:0)|(u.flags&63176704||_hn(u)?8388608:0)}function AZ(u,m){return u.flags&8388608?w5s(u,m):u.flags&16777216?T5s(u,m):u}function yhn(u,m,v){if(u.flags&1048576||u.flags&2097152&&!ZUt(u)){let D=lt(u.types,W=>AZ(k1(W,m),v));return u.flags&2097152||v?jg(D):Ha(D)}}function B5s(u,m,v){if(m.flags&1048576){let D=lt(m.types,W=>AZ(k1(u,W),v));return v?jg(D):Ha(D)}}function w5s(u,m){let v=m?"simplifiedForWriting":"simplifiedForReading";if(u[v])return u[v]===Wh?u:u[v];u[v]=Wh;let D=AZ(u.objectType,m),W=AZ(u.indexType,m),Y=B5s(D,W,m);if(Y)return u[v]=Y;if(!(W.flags&465829888)){let oe=yhn(D,W,m);if(oe)return u[v]=oe}if(vO(D)&&W.flags&296){let oe=cfe(D,W.flags&8?0:D.target.fixedLength,0,m);if(oe)return u[v]=oe}return Xb(D)&&V2e(D)!==2?u[v]=Xf(Not(D,u.indexType),oe=>AZ(oe,m)):u[v]=u}function T5s(u,m){let v=u.checkType,D=u.extendsType,W=EO(u),Y=SO(u);if(Y.flags&131072&&dZ(W)===dZ(v)){if(v.flags&1||pg(ZK(v),ZK(D)))return AZ(W,m);if(bhn(v,D))return Oi}else if(W.flags&131072&&dZ(Y)===dZ(v)){if(!(v.flags&1)&&pg(ZK(v),ZK(D)))return Oi;if(v.flags&1||bhn(v,D))return AZ(Y,m)}return u}function bhn(u,m){return!!(Ha([VOe(u,m),Oi]).flags&131072)}function Not(u,m){let v=x1([tT(u)],[m]),D=M5(u.mapper,v),W=Cl(nG(u.target||u),D),Y=gIn(u)>0||(P5(u)?zpe(L5(u))>0:R5s(u,m));return V0(W,!0,Y)}function R5s(u,m){let v=W_(m);return!!v&&zt(Zd(u),D=>!!(D.flags&16777216)&&pg(Oq(D,8576),v))}function k1(u,m,v=0,D,W,Y){return bO(u,m,v,D,W,Y)||(D?nn:cn)}function Ehn(u,m){return kE(u,v=>{if(v.flags&384){let D=f2(v);if(yN(D)){let W=+D;return W>=0&&W0&&!zt(u.elements,m=>r9(m)||n9(m)||eR(m)&&!!(m.questionToken||m.dotDotDotToken))}function Bhn(u,m){return P5(u)||m&&bA(u)&&zt(zQ(u),P5)}function OUt(u,m,v,D,W){let Y,oe,Be=0;for(;;){if(Be===1e3)return Br(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let He=Cl(dZ(u.checkType),m),$e=Cl(u.extendsType,m);if(He===nn||$e===nn)return nn;if(He===Ni||$e===Ni)return Ni;let Vt=P7(u.node.checkType),xt=P7(u.node.extendsType),wr=vhn(Vt)&&vhn(xt)&&B(Vt.elements)===B(xt.elements),dn=Bhn(He,wr),vn;if(u.inferTypeParameters){let Yi=nSe(u.inferTypeParameters,void 0,0);m&&(Yi.nonFixingMapper=M5(Yi.nonFixingMapper,m)),dn||cG(Yi.inferences,He,$e,1536),vn=m?M5(Yi.mapper,m):Yi.mapper}let ii=vn?Cl(u.extendsType,vn):$e;if(!dn&&!Bhn(ii,wr)){if(!(ii.flags&3)&&(He.flags&1||!pg(K2e(He),K2e(ii)))){(He.flags&1||v&&!(ii.flags&131072)&&Zv(K2e(ii),js=>pg(js,K2e(He))))&&(oe||(oe=[])).push(Cl(tl(u.node.trueType),vn||m));let Yi=tl(u.node.falseType);if(Yi.flags&16777216){let js=Yi.root;if(js.node.parent===u.node&&(!js.isDistributive||js.checkType===u.checkType)){u=js;continue}if(Me(Yi,m))continue}Y=Cl(Yi,m);break}if(ii.flags&3||pg(ZK(He),ZK(ii))){let Yi=tl(u.node.trueType),js=vn||m;if(Me(Yi,js))continue;Y=Cl(Yi,js);break}}Y=ic(16777216),Y.root=u,Y.checkType=Cl(u.checkType,m),Y.extendsType=Cl(u.extendsType,m),Y.mapper=m,Y.combinedMapper=vn,Y.aliasSymbol=D||u.aliasSymbol,Y.aliasTypeArguments=D?W:pZ(u.aliasTypeArguments,m);break}return oe?Ha(Ft(oe,Y)):Y;function Me(He,$e){if(He.flags&16777216&&$e){let Vt=He.root;if(Vt.outerTypeParameters){let xt=M5(He.mapper,$e),wr=lt(Vt.outerTypeParameters,ii=>x9(ii,xt)),dn=x1(Vt.outerTypeParameters,wr),vn=Vt.isDistributive?x9(Vt.checkType,dn):void 0;if(!vn||vn===Vt.checkType||!(vn.flags&1179648))return u=Vt,m=dn,D=void 0,W=void 0,Vt.aliasSymbol&&Be++,!0}}return!1}}function EO(u){return u.resolvedTrueType||(u.resolvedTrueType=Cl(tl(u.root.node.trueType),u.mapper))}function SO(u){return u.resolvedFalseType||(u.resolvedFalseType=Cl(tl(u.root.node.falseType),u.mapper))}function N5s(u){return u.resolvedInferredTrueType||(u.resolvedInferredTrueType=u.combinedMapper?Cl(tl(u.root.node.trueType),u.combinedMapper):EO(u))}function PUt(u){let m;return u.locals&&u.locals.forEach(v=>{v.flags&262144&&(m=Ft(m,Lp(v)))}),m}function D5s(u){return u.isDistributive&&(tPe(u.checkType,u.node.trueType)||tPe(u.checkType,u.node.falseType))}function k5s(u){let m=sa(u);if(!m.resolvedType){let v=tl(u.checkType),D=Mq(u),W=Kse(D),Y=Fc(u,!0),oe=W?Y:Le(Y,Me=>tPe(Me,u)),Be={node:u,checkType:v,extendsType:tl(u.extendsType),isDistributive:!!(v.flags&262144),inferTypeParameters:PUt(u),outerTypeParameters:oe,instantiations:void 0,aliasSymbol:D,aliasTypeArguments:W};m.resolvedType=OUt(Be,void 0,!1),oe&&(Be.instantiations=new Map,Be.instantiations.set($B(oe),m.resolvedType))}return m.resolvedType}function x5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=Z5(Uo(u.typeParameter))),m.resolvedType}function whn(u){return Ir(u)?[u]:Ft(whn(u.left),u.right)}function Thn(u){var m;let v=sa(u);if(!v.resolvedType){if(!Gy(u))return Br(u.argument,Z.String_literal_expected),v.resolvedSymbol=st,v.resolvedType=nn;let D=u.isTypeOf?111551:u.flags&16777216?900095:788968,W=L0(u,u.argument.literal);if(!W)return v.resolvedSymbol=st,v.resolvedType=nn;let Y=!!((m=W.exports)!=null&&m.get("export=")),oe=NE(W,!1);if(af(u.qualifier))if(oe.flags&D)v.resolvedType=Rhn(u,v,oe,D);else{let Be=D===111551?Z.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;Br(u,Be,u.argument.literal.text),v.resolvedSymbol=st,v.resolvedType=nn}else{let Be=whn(u.qualifier),Me=oe,He;for(;He=Be.shift();){let $e=Be.length?1920:D,Vt=qA(Oh(Me)),xt=u.isTypeOf||wo(u)&&Y?Fg(fo(Vt),He.escapedText,!1,!0):void 0,dn=(u.isTypeOf?void 0:h_(R1(Vt),He.escapedText,$e))??xt;if(!dn)return Br(He,Z.Namespace_0_has_no_exported_member_1,y9(Me),Md(He)),v.resolvedType=nn;sa(He).resolvedSymbol=dn,sa(He.parent).resolvedSymbol=dn,Me=dn}v.resolvedType=Rhn(u,v,Me,D)}}return v.resolvedType}function Rhn(u,m,v,D){let W=Oh(v);return m.resolvedSymbol=W,D===111551?v_n(fo(v),u):Sot(u,W)}function Nhn(u){let m=sa(u);if(!m.resolvedType){let v=Mq(u);if(!u.symbol||Ck(u.symbol).size===0&&!v)m.resolvedType=Eg;else{let D=Ph(16,u.symbol);D.aliasSymbol=v,D.aliasTypeArguments=Kse(v),GU(u)&&u.isArrayType&&(D=f0(D)),m.resolvedType=D}}return m.resolvedType}function Mq(u){let m=u.parent;for(;Cv(m)||J3(m)||VB(m)&&m.operator===148;)m=m.parent;return vne(m)?Uo(m):void 0}function Kse(u){return u?Kg(u):void 0}function Dot(u){return!!(u.flags&524288)&&!Xb(u)}function MUt(u){return fZ(u)||!!(u.flags&474058748)}function HUt(u,m){if(!(u.flags&1048576))return u;if(ue(u.types,MUt))return de(u.types,fZ)||Jg;let v=de(u.types,Y=>!MUt(Y));if(!v||de(u.types,Y=>Y!==v&&!MUt(Y)))return u;return W(v);function W(Y){let oe=$u();for(let Me of Zd(Y))if(!(d2(Me)&6)){if(kot(Me)){let He=Me.flags&65536&&!(Me.flags&32768),Vt=AA(16777220,Me.escapedName,tUt(Me)|(m?8:0));Vt.links.type=He?wt:V0(fo(Me),!0),Vt.declarations=Me.declarations,Vt.links.nameType=fa(Me).nameType,Vt.links.syntheticOrigin=Me,oe.set(Me.escapedName,Vt)}}let Be=Qf(Y.symbol,oe,E,E,p0(Y));return Be.objectFlags|=131200,Be}}function qQ(u,m,v,D,W){if(u.flags&1||m.flags&1)return hr;if(u.flags&2||m.flags&2)return cn;if(u.flags&131072)return m;if(m.flags&131072)return u;if(u=HUt(u,W),u.flags&1048576)return KOe([u,m])?Xf(u,He=>qQ(He,m,v,D,W)):nn;if(m=HUt(m,W),m.flags&1048576)return KOe([u,m])?Xf(m,He=>qQ(u,He,v,D,W)):nn;if(m.flags&473960444)return u;if(kK(u)||kK(m)){if(fZ(u))return m;if(u.flags&2097152){let He=u.types,$e=He[He.length-1];if(Dot($e)&&Dot(m))return jg(Nn(He.slice(0,He.length-1),[qQ($e,m,v,D,W)]))}return jg([u,m])}let Y=$u(),oe=new Set,Be=u===Jg?p0(m):oIn([u,m]);for(let He of Zd(m))d2(He)&6?oe.add(He.escapedName):kot(He)&&Y.set(He.escapedName,YUt(He,W));for(let He of Zd(u))if(!(oe.has(He.escapedName)||!kot(He)))if(Y.has(He.escapedName)){let $e=Y.get(He.escapedName),Vt=fo($e);if($e.flags&16777216){let xt=Nn(He.declarations,$e.declarations),wr=4|He.flags&16777216,dn=AA(wr,He.escapedName),vn=fo(He),ii=jot(vn),Yi=jot(Vt);dn.links.type=ii===Yi?vn:Ha([vn,Yi],2),dn.links.leftSpread=He,dn.links.rightSpread=$e,dn.declarations=xt,dn.links.nameType=fa(He).nameType,Y.set(He.escapedName,dn)}}else Y.set(He.escapedName,YUt(He,W));let Me=Qf(v,Y,E,E,Er(Be,He=>G5s(He,W)));return Me.objectFlags|=2228352|D,Me}function kot(u){var m;return!zt(u.declarations,hC)&&(!(u.flags&106496)||!((m=u.declarations)!=null&&m.some(v=>xa(v.parent))))}function YUt(u,m){let v=u.flags&65536&&!(u.flags&32768);if(!v&&m===BR(u))return u;let D=4|u.flags&16777216,W=AA(D,u.escapedName,tUt(u)|(m?8:0));return W.links.type=v?wt:fo(u),W.declarations=u.declarations,W.links.nameType=fa(u).nameType,W.links.syntheticOrigin=u,W}function G5s(u,m){return u.isReadonly!==m?sG(u.keyType,u.type,m,u.declaration,u.components):u}function zOe(u,m,v,D){let W=Pc(u,v);return W.value=m,W.regularType=D||W,W}function Hq(u){if(u.flags&2976){if(!u.freshType){let m=zOe(u.flags,u.value,u.symbol,u);m.freshType=m,u.freshType=m}return u.freshType}return u}function my(u){return u.flags&2976?u.regularType:u.flags&1048576?u.regularType||(u.regularType=Xf(u,my)):u}function $Q(u){return!!(u.flags&2976)&&u.freshType===u}function DE(u){let m;return hn.get(u)||(hn.set(u,m=zOe(128,u)),m)}function _R(u){let m;return Pi.get(u)||(Pi.set(u,m=zOe(256,u)),m)}function qOe(u){let m,v=OW(u);return co.get(v)||(co.set(v,m=zOe(2048,u)),m)}function F5s(u,m,v){let D,W=`${m}${typeof u=="string"?"@":"#"}${u}`,Y=1024|(typeof u=="string"?128:256);return pa.get(W)||(pa.set(W,D=zOe(Y,u,v)),D)}function Z5s(u){if(u.literal.kind===106)return Hn;let m=sa(u);return m.resolvedType||(m.resolvedType=my(Ml(u.literal))),m.resolvedType}function L5s(u){let m=Pc(8192,u);return m.escapedName=`__@${m.symbol.escapedName}@${xg(m.symbol)}`,m}function QUt(u){if(wo(u)&&J3(u)){let m=NW(u);m&&(u=v3(m)||m)}if(EZe(u)){let m=eAe(u)?bS(u.left):bS(u);if(m){let v=fa(m);return v.uniqueESSymbolType||(v.uniqueESSymbolType=L5s(m))}}return ci}function V5s(u){let m=i0(u,!1,!1),v=m&&m.parent;if(v&&(xa(v)||v.kind===265)&&!lg(m)&&(!Tc(m)||DW(u,m.body)))return Dv(Uo(v)).thisType;if(v&&ag(v)&&po(v.parent)&&oI(v.parent)===6)return Dv(bS(v.parent.left).parent).thisType;let D=u.flags&16777216?QL(u):void 0;return D&&jA(D)&&po(D.parent)&&oI(D.parent)===3?Dv(bS(D.parent.left).parent).thisType:KN(m)&&DW(u,m.body)?Dv(Uo(m)).thisType:(Br(u,Z.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),nn)}function XUt(u){let m=sa(u);return m.resolvedType||(m.resolvedType=V5s(u)),m.resolvedType}function Dhn(u){return tl($Oe(u.type)||u.type)}function $Oe(u){switch(u.kind){case 197:return $Oe(u.type);case 190:if(u.elements.length===1&&(u=u.elements[0],u.kind===192||u.kind===203&&u.dotDotDotToken))return $Oe(u.type);break;case 189:return u.elementType}}function W5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=u.dotDotDotToken?Dhn(u):V0(tl(u.type),!0,!!u.questionToken))}function tl(u){return f3s(khn(u),u)}function khn(u){switch(u.kind){case 133:case 313:case 314:return hr;case 159:return cn;case 154:return $r;case 150:return ri;case 163:return oo;case 136:return Mn;case 155:return ci;case 116:return es;case 157:return wt;case 106:return Hn;case 146:return Oi;case 151:return u.flags&524288&&!Rt?hr:fs;case 141:return Ht;case 198:case 110:return XUt(u);case 202:return Z5s(u);case 184:return Bot(u);case 183:return u.assertsModifier?es:Mn;case 234:return Bot(u);case 187:return OIn(u);case 189:case 190:return J3s(u);case 191:return z3s(u);case 193:return o5s(u);case 194:return p5s(u);case 315:return I3s(u);case 317:return V0(tl(u.type));case 203:return W5s(u);case 197:case 316:case 310:return tl(u.type);case 192:return Dhn(u);case 319:return nKs(u);case 185:case 186:case 188:case 323:case 318:case 324:return Nhn(u);case 199:return C5s(u);case 200:return Shn(u);case 201:return WUt(u);case 195:return k5s(u);case 196:return x5s(u);case 204:return _5s(u);case 206:return Thn(u);case 80:case 167:case 212:let m=Lv(u);return m?Lp(m):nn;default:return nn}}function xot(u,m,v){if(u&&u.length)for(let D=0;DD.typeParameter),lt(v,()=>cn))}function P5s(u){return u.outerReturnMapper??(u.outerReturnMapper=Zhn(u.returnMapper,fmn(u).mapper))}function M5(u,m){return u?Fot(4,u,m):m}function Zhn(u,m){return u?Fot(5,u,m):m}function GK(u,m,v){return v?Fot(5,eX(u,m),v):eX(u,m)}function J2e(u,m,v){return u?Fot(5,u,eX(m,v)):eX(m,v)}function M5s(u){return!u.constraint&&!bot(u)||u.constraint===JI?u:u.restrictiveInstantiation||(u.restrictiveInstantiation=Xy(u.symbol),u.restrictiveInstantiation.constraint=JI,u.restrictiveInstantiation)}function UUt(u){let m=Xy(u.symbol);return m.target=u,m}function Lhn(u,m){return P2e(u.kind,u.parameterName,u.parameterIndex,Cl(u.type,m))}function FK(u,m,v){let D;if(u.typeParameters&&!v){D=lt(u.typeParameters,UUt),m=M5(x1(u.typeParameters,D),m);for(let Y of D)Y.mapper=m}let W=YN(u.declaration,D,u.thisParameter&&KUt(u.thisParameter,m),xot(u.parameters,m,KUt),void 0,void 0,u.minArgumentCount,u.flags&167);return W.target=u,W.mapper=m,W}function KUt(u,m){let v=fa(u);if(v.type&&!wO(v.type)&&(!(u.flags&65536)||v.writeType&&!wO(v.writeType)))return u;aI(u)&1&&(u=v.target,m=M5(v.mapper,m));let D=AA(u.flags,u.escapedName,1|aI(u)&53256);return D.declarations=u.declarations,D.parent=u.parent,D.links.target=u,D.links.mapper=m,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),v.nameType&&(D.links.nameType=v.nameType),D}function H5s(u,m,v,D){let W=u.objectFlags&4||u.objectFlags&8388608?u.node:u.symbol.declarations[0],Y=sa(W),oe=u.objectFlags&4?Y.resolvedType:u.objectFlags&64?u.target:u,Be=Y.outerTypeParameters;if(!Be){let Me=Fc(W,!0);if(KN(W)){let $e=EIn(W);Me=Pr(Me,$e)}Be=Me||E;let He=u.objectFlags&8388612?[W]:u.symbol.declarations;Be=(oe.objectFlags&8388612||oe.symbol.flags&8192||oe.symbol.flags&2048)&&!oe.aliasTypeArguments?Le(Be,$e=>zt(He,Vt=>tPe($e,Vt))):Be,Y.outerTypeParameters=Be}if(Be.length){let Me=M5(u.mapper,m),He=lt(Be,dn=>x9(dn,Me)),$e=v||u.aliasSymbol,Vt=v?D:pZ(u.aliasTypeArguments,m),xt=$B(He)+RK($e,Vt);oe.instantiations||(oe.instantiations=new Map,oe.instantiations.set($B(Be)+RK(oe.aliasSymbol,oe.aliasTypeArguments),oe));let wr=oe.instantiations.get(xt);if(!wr){let dn=x1(Be,He);oe.objectFlags&134217728&&m&&(dn=M5(dn,m)),wr=oe.objectFlags&4?IUt(u.target,u.node,dn,$e,Vt):oe.objectFlags&32?Q5s(oe,dn,$e,Vt):jUt(oe,dn,$e,Vt),oe.instantiations.set(xt,wr);let vn=la(wr);if(wr.flags&3899393&&!(vn&524288)){let ii=zt(He,wO);la(wr)&524288||(vn&52?wr.objectFlags|=524288|(ii?1048576:0):wr.objectFlags|=ii?0:524288)}}return wr}return u}function Y5s(u){return!(u.parent.kind===184&&u.parent.typeArguments&&u===u.parent.typeName||u.parent.kind===206&&u.parent.typeArguments&&u===u.parent.qualifier)}function tPe(u,m){if(u.symbol&&u.symbol.declarations&&u.symbol.declarations.length===1){let D=u.symbol.declarations[0].parent;for(let W=m;W!==D;W=W.parent)if(!W||W.kind===242||W.kind===195&&Lu(W.extendsType,v))return!0;return v(m)}return!0;function v(D){switch(D.kind){case 198:return!!u.isThisType;case 80:return!u.isThisType&&kw(D)&&Y5s(D)&&khn(D)===u;case 187:let W=D.exprName,Y=T0(W);if(!DF(Y)){let oe=W0(Y),Be=u.symbol.declarations[0],Me=Be.kind===169?Be.parent:u.isThisType?Be:void 0;if(oe.declarations&&Me)return zt(oe.declarations,He=>DW(He,Me))||zt(D.typeArguments,v)}return!0;case 175:case 174:return!D.type&&!!D.body||zt(D.typeParameters,v)||zt(D.parameters,v)||!!D.type&&v(D.type)}return!!Lu(D,v)}}function U2e(u){let m=SS(u);if(m.flags&4194304){let v=dZ(m.type);if(v.flags&262144)return v}}function Q5s(u,m,v,D){let W=U2e(u);if(W){let oe=Cl(W,m);if(W!==oe)return Omn(qB(oe),Y,v,D)}return Cl(SS(u),m)===Ni?Ni:jUt(u,m,v,D);function Y(oe){if(oe.flags&61603843&&oe!==Ni&&!lo(oe)){if(!u.declaration.nameType){let Be;if(Gv(oe)||oe.flags&1&&nt(W,4)<0&&(Be=Uy(W))&&kE(Be,Y5))return J5s(oe,u,GK(W,oe,m));if(bA(oe))return X5s(oe,u,W,m);if(hIn(oe))return jg(lt(oe.types,Y))}return jUt(u,GK(W,oe,m))}return oe}}function Vhn(u,m){return m&1?!0:m&2?!1:u}function X5s(u,m,v,D){let W=u.target.elementFlags,Y=u.target.fixedLength,oe=Y?GK(v,u,D):D,Be=lt(zQ(u),(Vt,xt)=>{let wr=W[xt];return xtVt&1?2:Vt):Me&8?lt(W,Vt=>Vt&2?1:Vt):W,$e=Vhn(u.target.readonly,_k(m));return k(Be,nn)?nn:bk(Be,He,$e,u.target.labeledElementDeclarations)}function J5s(u,m,v){let D=Whn(m,ri,!0,v);return lo(D)?nn:f0(D,Vhn(ofe(u),_k(m)))}function Whn(u,m,v,D){let W=J2e(D,tT(u),m),Y=Cl(nG(u.target||u),W),oe=_k(u);return at&&oe&4&&!uh(Y,49152)?BO(Y,!0):at&&oe&8&&v?Fv(Y,524288):Y}function jUt(u,m,v,D){pe.assert(u.symbol,"anonymous type must have symbol to be instantiated");let W=Ph(u.objectFlags&-1572865|64,u.symbol);if(u.objectFlags&32){W.declaration=u.declaration;let Y=tT(u),oe=UUt(Y);W.typeParameter=oe,m=M5(eX(Y,oe),m),oe.mapper=m}return u.objectFlags&8388608&&(W.node=u.node),W.target=u,W.mapper=m,W.aliasSymbol=v||u.aliasSymbol,W.aliasTypeArguments=v?D:pZ(u.aliasTypeArguments,m),W.objectFlags|=W.aliasTypeArguments?YOe(W.aliasTypeArguments):0,W}function zUt(u,m,v,D,W){let Y=u.root;if(Y.outerTypeParameters){let oe=lt(Y.outerTypeParameters,He=>x9(He,m)),Be=(v?"C":"")+$B(oe)+RK(D,W),Me=Y.instantiations.get(Be);if(!Me){let He=x1(Y.outerTypeParameters,oe),$e=Y.checkType,Vt=Y.isDistributive?qB(x9($e,He)):void 0;Me=Vt&&$e!==Vt&&Vt.flags&1179648?Omn(Vt,xt=>OUt(Y,GK($e,xt,He),v),D,W):OUt(Y,He,v,D,W),Y.instantiations.set(Be,Me)}return Me}return u}function Cl(u,m){return u&&m?Ohn(u,m,void 0,void 0):u}function Ohn(u,m,v,D){var W;if(!wO(u))return u;if(ee===100||M>=5e6)return(W=ki)==null||W.instant(ki.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:u.id,instantiationDepth:ee,instantiationCount:M}),Br(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let Y=xYs(m);Y===-1&&DYs(m);let oe=u.id+RK(v,D),Be=d5[Y!==-1?Y:Ak-1],Me=Be.get(oe);if(Me)return Me;V++,M++,ee++;let He=U5s(u,m,v,D);return Y===-1?kYs():Be.set(oe,He),ee--,He}function U5s(u,m,v,D){let W=u.flags;if(W&262144)return x9(u,m);if(W&524288){let Y=u.objectFlags;if(Y&52){if(Y&4&&!u.node){let oe=u.resolvedTypeArguments,Be=pZ(oe,m);return Be!==oe?RUt(u.target,Be):u}return Y&1024?K5s(u,m):H5s(u,m,v,D)}return u}if(W&3145728){let Y=u.flags&1048576?u.origin:void 0,oe=Y&&Y.flags&3145728?Y.types:u.types,Be=pZ(oe,m);if(Be===oe&&v===u.aliasSymbol)return u;let Me=v||u.aliasSymbol,He=v?D:pZ(u.aliasTypeArguments,m);return W&2097152||Y&&Y.flags&2097152?jg(Be,0,Me,He):Ha(Be,1,Me,He)}if(W&4194304)return XN(Cl(u.type,m));if(W&134217728)return NK(u.texts,pZ(u.types,m));if(W&268435456)return Pq(u.symbol,Cl(u.type,m));if(W&8388608){let Y=v||u.aliasSymbol,oe=v?D:pZ(u.aliasTypeArguments,m);return k1(Cl(u.objectType,m),Cl(u.indexType,m),u.accessFlags,void 0,Y,oe)}if(W&16777216)return zUt(u,M5(u.mapper,m),!1,v,D);if(W&33554432){let Y=Cl(u.baseType,m);if(Jse(u))return hUt(Y);let oe=Cl(u.constraint,m);return Y.flags&8650752&&P5(oe)?CUt(Y,oe):oe.flags&3||pg(ZK(Y),ZK(oe))?Y:Y.flags&8650752?CUt(Y,oe):jg([oe,Y])}return u}function K5s(u,m){let v=Cl(u.mappedType,m);if(!(la(v)&32))return u;let D=Cl(u.constraintType,m);if(!(D.flags&4194304))return u;let W=mmn(Cl(u.source,m),v,D);return W||u}function K2e(u){return u.flags&402915327?u:u.permissiveInstantiation||(u.permissiveInstantiation=Cl(u,pI))}function ZK(u){return u.flags&402915327?u:(u.restrictiveInstantiation||(u.restrictiveInstantiation=Cl(u,RI),u.restrictiveInstantiation.restrictiveInstantiation=u.restrictiveInstantiation),u.restrictiveInstantiation)}function j5s(u,m){return sG(u.keyType,Cl(u.type,m),u.isReadonly,u.declaration,u.components)}function BS(u){switch(pe.assert(u.kind!==175||u2(u)),u.kind){case 219:case 220:case 175:case 263:return Phn(u);case 211:return zt(u.properties,BS);case 210:return zt(u.elements,BS);case 228:return BS(u.whenTrue)||BS(u.whenFalse);case 227:return(u.operatorToken.kind===57||u.operatorToken.kind===61)&&(BS(u.left)||BS(u.right));case 304:return BS(u.initializer);case 218:return BS(u.expression);case 293:return zt(u.properties,BS)||iR(u.parent)&&zt(u.parent.parent.children,BS);case 292:{let{initializer:m}=u;return!!m&&BS(m)}case 295:{let{expression:m}=u;return!!m&&BS(m)}}return!1}function Phn(u){return ide(u)||z5s(u)}function z5s(u){return u.typeParameters||Fb(u)||!u.body?!1:u.body.kind!==242?BS(u.body):!!wF(u.body,m=>!!m.expression&&BS(m.expression))}function Zot(u){return(FF(u)||u2(u))&&Phn(u)}function Mhn(u){if(u.flags&524288){let m=CR(u);if(m.constructSignatures.length||m.callSignatures.length){let v=Ph(16,u.symbol);return v.members=m.members,v.properties=m.properties,v.callSignatures=E,v.constructSignatures=E,v.indexInfos=E,v}}else if(u.flags&2097152)return jg(lt(u.types,Mhn));return u}function aG(u,m){return JN(u,m,A0)}function j2e(u,m){return JN(u,m,A0)?-1:0}function qUt(u,m){return JN(u,m,g0)?-1:0}function q5s(u,m){return JN(u,m,dk)?-1:0}function tX(u,m){return JN(u,m,dk)}function sfe(u,m){return JN(u,m,Sf)}function pg(u,m){return JN(u,m,g0)}function H5(u,m){return u.flags&1048576?ue(u.types,v=>H5(v,m)):m.flags&1048576?zt(m.types,v=>H5(u,v)):u.flags&2097152?zt(u.types,v=>H5(v,m)):u.flags&58982400?H5(W_(u)||cn,m):Ek(m)?!!(u.flags&67633152):m===qn?!!(u.flags&67633152)&&!Ek(u):m===Js?!!(u.flags&524288)&&kKt(u):da(u,vs(m))||Gv(m)&&!ofe(m)&&H5(u,gA)}function Lot(u,m){return JN(u,m,Hb)}function rPe(u,m){return Lot(u,m)||Lot(m,u)}function I0(u,m,v,D,W,Y){return xv(u,m,g0,v,D,W,Y)}function rX(u,m,v,D,W,Y){return $Ut(u,m,g0,v,D,W,Y,void 0)}function $Ut(u,m,v,D,W,Y,oe,Be){return JN(u,m,v)?!0:!D||!z2e(W,u,m,v,Y,oe,Be)?xv(u,m,v,D,Y,oe,Be):!1}function Hhn(u){return!!(u.flags&16777216||u.flags&2097152&&zt(u.types,Hhn))}function z2e(u,m,v,D,W,Y,oe){if(!u||Hhn(v))return!1;if(!xv(m,v,D,void 0)&&$5s(u,m,v,D,W,Y,oe))return!0;switch(u.kind){case 235:if(!aEe(u))break;case 295:case 218:return z2e(u.expression,m,v,D,W,Y,oe);case 227:switch(u.operatorToken.kind){case 64:case 28:return z2e(u.right,m,v,D,W,Y,oe)}break;case 211:return aMs(u,m,v,D,Y,oe);case 210:return sMs(u,m,v,D,Y,oe);case 293:return iMs(u,m,v,D,Y,oe);case 220:return eMs(u,m,v,D,Y,oe)}return!1}function $5s(u,m,v,D,W,Y,oe){let Be=rg(m,0),Me=rg(m,1);for(let He of[Me,Be])if(zt(He,$e=>{let Vt=Ad($e);return!(Vt.flags&131073)&&xv(Vt,v,D,void 0)})){let $e=oe||{};I0(m,v,u,W,Y,$e);let Vt=$e.errors[$e.errors.length-1];return ug(Vt,mo(u,He===Me?Z.Did_you_mean_to_use_new_with_this_expression:Z.Did_you_mean_to_call_this_expression)),!0}return!1}function eMs(u,m,v,D,W,Y){if(eg(u.body)||zt(u.parameters,mf))return!1;let oe=QK(m);if(!oe)return!1;let Be=rg(v,0);if(!B(Be))return!1;let Me=u.body,He=Ad(oe),$e=Ha(lt(Be,Ad));if(!xv(He,$e,D,void 0)){let Vt=Me&&z2e(Me,He,$e,D,void 0,W,Y);if(Vt)return Vt;let xt=Y||{};if(xv(He,$e,D,Me,void 0,W,xt),xt.errors)return v.symbol&&B(v.symbol.declarations)&&ug(xt.errors[xt.errors.length-1],mo(v.symbol.declarations[0],Z.The_expected_type_comes_from_the_return_type_of_this_signature)),!(BI(u)&2)&&!Wi(He,"then")&&xv(LPe(He),$e,D,void 0)&&ug(xt.errors[xt.errors.length-1],mo(u,Z.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function Yhn(u,m,v){let D=bO(m,v);if(D)return D;if(m.flags&1048576){let W=qhn(u,m);if(W)return bO(W,v)}}function Qhn(u,m){EPe(u,m,!1);let v=Ife(u,1);return cSe(),v}function nPe(u,m,v,D,W,Y){let oe=!1;for(let Be of u){let{errorNode:Me,innerExpression:He,nameType:$e,errorMessage:Vt}=Be,xt=Yhn(m,v,$e);if(!xt||xt.flags&8388608)continue;let wr=bO(m,$e);if(!wr)continue;let dn=Rot($e,void 0);if(!xv(wr,xt,D,void 0)){let vn=He&&z2e(He,wr,xt,D,void 0,W,Y);if(oe=!0,!vn){let ii=Y||{},Yi=He?Qhn(He,wr):wr;if(Wt&&Wot(Yi,xt)){let js=mo(Me,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,ro(Yi),ro(xt));PA.add(js),ii.errors=[js]}else{let js=!!(dn&&(Fg(v,dn)||st).flags&16777216),Co=!!(dn&&(Fg(m,dn)||st).flags&16777216);xt=mZ(xt,js),wr=mZ(wr,js&&Co),xv(Yi,xt,D,Me,Vt,W,ii)&&Yi!==wr&&xv(wr,xt,D,Me,Vt,W,ii)}if(ii.errors){let js=ii.errors[ii.errors.length-1],Co=p2($e)?f2($e):void 0,Ji=Co!==void 0?Fg(v,Co):void 0,Mi=!1;if(!Ji){let To=W2e(v,$e);To&&To.declaration&&!ms(To.declaration).hasNoDefaultLib&&(Mi=!0,ug(js,mo(To.declaration,Z.The_expected_type_comes_from_this_index_signature)))}if(!Mi&&(Ji&&B(Ji.declarations)||v.symbol&&B(v.symbol.declarations))){let To=Ji&&B(Ji.declarations)?Ji.declarations[0]:v.symbol.declarations[0];ms(To).hasNoDefaultLib||ug(js,mo(To,Z.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,Co&&!($e.flags&8192)?Bc(Co):ro($e),ro(v)))}}}}}return oe}function tMs(u,m,v,D,W,Y){let oe=am(v,Xot),Be=am(v,$e=>!Xot($e)),Me=Be!==Oi?e6t(13,0,Be,void 0):void 0,He=!1;for(let $e=u.next();!$e.done;$e=u.next()){let{errorNode:Vt,innerExpression:xt,nameType:wr,errorMessage:dn}=$e.value,vn=Me,ii=oe!==Oi?Yhn(m,oe,wr):void 0;if(ii&&!(ii.flags&8388608)&&(vn=Me?Ha([Me,ii]):ii),!vn)continue;let Yi=bO(m,wr);if(!Yi)continue;let js=Rot(wr,void 0);if(!xv(Yi,vn,D,void 0)){let Co=xt&&z2e(xt,Yi,vn,D,void 0,W,Y);if(He=!0,!Co){let Ji=Y||{},Mi=xt?Qhn(xt,Yi):Yi;if(Wt&&Wot(Mi,vn)){let To=mo(Vt,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,ro(Mi),ro(vn));PA.add(To),Ji.errors=[To]}else{let To=!!(js&&(Fg(oe,js)||st).flags&16777216),Ka=!!(js&&(Fg(m,js)||st).flags&16777216);vn=mZ(vn,To),Yi=mZ(Yi,To&&Ka),xv(Mi,vn,D,Vt,dn,W,Ji)&&Mi!==Yi&&xv(Yi,vn,D,Vt,dn,W,Ji)}}}}return He}function*rMs(u){if(B(u.properties))for(let m of u.properties)Fz(m)||t8t(Vw(m.name))||(yield{errorNode:m.name,innerExpression:m.initializer,nameType:DE(Vw(m.name))})}function*nMs(u,m){if(!B(u.children))return;let v=0;for(let D=0;D1,ii,Yi;if(Tot(!1)!==oi){let Co=ehn(hr);ii=am(wr,Ji=>pg(Ji,Co)),Yi=am(wr,Ji=>!pg(Ji,Co))}else ii=am(wr,Xot),Yi=am(wr,Co=>!Xot(Co));if(vn){if(ii!==Oi){let Co=bk(_at(He,0)),Ji=nMs(He,Me);oe=tMs(Ji,Co,ii,D,W,Y)||oe}else if(!JN(k1(m,xt),wr,D)){oe=!0;let Co=Br(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Vt,ro(wr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}else if(Yi!==Oi){let Co=dn[0],Ji=Xhn(Co,xt,Me);Ji&&(oe=nPe(function*(){yield Ji}(),m,v,D,W,Y)||oe)}else if(!JN(k1(m,xt),wr,D)){oe=!0;let Co=Br(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Vt,ro(wr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}return oe;function Me(){if(!Be){let He=Fp(u.parent.tagName),$e=vPe(HK(u)),Vt=$e===void 0?"children":Bc($e),xt=k1(v,DE(Vt)),wr=Z._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;Be={...wr,key:"!!ALREADY FORMATTED!!",message:nQ(wr,He,Vt,ro(xt))}}return Be}}function*Jhn(u,m){let v=B(u.elements);if(v)for(let D=0;DMe:vR(u)>Me))return D&&!(v&8)&&W(Z.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,vR(u),Me),0;u.typeParameters&&u.typeParameters!==m.typeParameters&&(m=l3s(m),u=i_n(u,m,void 0,oe));let $e=xE(u),Vt=ISe(u),xt=ISe(m);(Vt||xt)&&Cl(Vt||xt,Be);let wr=m.declaration?m.declaration.kind:0,dn=!(v&3)&&Qe&&wr!==175&&wr!==174&&wr!==177,vn=-1,ii=W5(u);if(ii&&ii!==es){let Co=W5(m);if(Co){let Ji=!dn&&oe(ii,Co,!1)||oe(Co,ii,D);if(!Ji)return D&&W(Z.The_this_types_of_each_signature_are_incompatible),0;vn&=Ji}}let Yi=Vt||xt?Math.min($e,Me):Math.max($e,Me),js=Vt||xt?Yi-1:-1;for(let Co=0;Co=vR(u)&&Co=3&&m[0].flags&32768&&m[1].flags&65536&&zt(m,Ek)?67108864:0)}return!!(u.objectFlags&67108864)}return!1}function jse(u){return!!((u.flags&1048576?u.types[0]:u).flags&32768)}function AMs(u){let m=u.flags&1048576?u.types[0]:u;return!!(m.flags&32768)&&m!==fr}function Khn(u){return u.flags&524288&&!Xb(u)&&Zd(u).length===0&&p0(u).length===1&&!!iG(u,$r)||u.flags&3145728&&ue(u.types,Khn)||!1}function rKt(u,m,v){let D=u.flags&8?nC(u):u,W=m.flags&8?nC(m):m;if(D===W)return!0;if(D.escapedName!==W.escapedName||!(D.flags&256)||!(W.flags&256))return!1;let Y=xg(D)+","+xg(W),oe=m5.get(Y);if(oe!==void 0&&!(oe&2&&v))return!!(oe&1);let Be=fo(W);for(let Me of Zd(fo(D)))if(Me.flags&8){let He=Fg(Be,Me.escapedName);if(!He||!(He.flags&8))return v&&v(Z.Property_0_is_missing_in_type_1,of(Me),ro(Lp(W),void 0,64)),m5.set(Y,2),!1;let $e=JK(yp(Me,307)).value,Vt=JK(yp(He,307)).value;if($e!==Vt){let xt=typeof $e=="string",wr=typeof Vt=="string";if($e!==void 0&&Vt!==void 0){if(v){let dn=xt?`"${KT($e)}"`:$e,vn=wr?`"${KT(Vt)}"`:Vt;v(Z.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,of(W),of(He),vn,dn)}return m5.set(Y,2),!1}if(xt||wr){if(v){let dn=$e??Vt;pe.assert(typeof dn=="string");let vn=`"${KT(dn)}"`;v(Z.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,of(W),of(He),vn)}return m5.set(Y,2),!1}}}return m5.set(Y,1),!0}function q2e(u,m,v,D){let W=u.flags,Y=m.flags;return Y&1||W&131072||u===Ni||Y&2&&!(v===Sf&&W&1)?!0:Y&131072?!1:!!(W&402653316&&Y&4||W&128&&W&1024&&Y&128&&!(Y&1024)&&u.value===m.value||W&296&&Y&8||W&256&&W&1024&&Y&256&&!(Y&1024)&&u.value===m.value||W&2112&&Y&64||W&528&&Y&16||W&12288&&Y&4096||W&32&&Y&32&&u.symbol.escapedName===m.symbol.escapedName&&rKt(u.symbol,m.symbol,D)||W&1024&&Y&1024&&(W&1048576&&Y&1048576&&rKt(u.symbol,m.symbol,D)||W&2944&&Y&2944&&u.value===m.value&&rKt(u.symbol,m.symbol,D))||W&32768&&(!at&&!(Y&3145728)||Y&49152)||W&65536&&(!at&&!(Y&3145728)||Y&65536)||W&524288&&Y&67108864&&!(v===Sf&&Ek(u)&&!(la(u)&8192))||(v===g0||v===Hb)&&(W&1||W&8&&(Y&32||Y&256&&Y&1024)||W&256&&!(W&1024)&&(Y&32||Y&256&&Y&1024&&u.value===m.value)||gMs(m)))}function JN(u,m,v){if($Q(u)&&(u=u.regularType),$Q(m)&&(m=m.regularType),u===m)return!0;if(v!==A0){if(v===Hb&&!(m.flags&131072)&&q2e(m,u,v)||q2e(u,m,v))return!0}else if(!((u.flags|m.flags)&61865984)){if(u.flags!==m.flags)return!1;if(u.flags&67358815)return!0}if(u.flags&524288&&m.flags&524288){let D=v.get(Mot(u,m,0,v,!1));if(D!==void 0)return!!(D&1)}return u.flags&469499904||m.flags&469499904?xv(u,m,v,void 0):!1}function jhn(u,m){return la(u)&2048&&t8t(m.escapedName)}function iPe(u,m){for(;;){let v=$Q(u)?u.regularType:vO(u)?fMs(u,m):la(u)&4?u.node?uZ(u.target,gf(u)):uKt(u)||u:u.flags&3145728?dMs(u,m):u.flags&33554432?m?u.baseType:_Ut(u):u.flags&25165824?AZ(u,m):u;if(v===u)return v;u=v}}function dMs(u,m){let v=qB(u);if(v!==u)return v;if(u.flags&2097152&&pMs(u)){let D=Er(u.types,W=>iPe(W,m));if(D!==u.types)return jg(D)}return u}function pMs(u){let m=!1,v=!1;for(let D of u.types)if(m||(m=!!(D.flags&465829888)),v||(v=!!(D.flags&98304)||Ek(D)),m&&v)return!0;return!1}function fMs(u,m){let v=zQ(u),D=Er(v,W=>W.flags&25165824?AZ(W,m):W);return v!==D?NUt(u.target,D):u}function xv(u,m,v,D,W,Y,oe){var Be;let Me,He,$e,Vt,xt,wr,dn=0,vn=0,ii=0,Yi=0,js=!1,Co=0,Ji=0,Mi,To,Ka=16e6-v.size>>3;pe.assert(v!==A0||!D,"no error reporting in identity checking");let _l=_o(u,m,3,!!D,W);if(To&&dd(),js){let Qt=Mot(u,m,0,v,!1);v.set(Qt,2|(Ka<=0?32:64)),(Be=ki)==null||Be.instant(ki.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:u.id,targetId:m.id,depth:vn,targetDepth:ii});let Cr=Ka<=0?Z.Excessive_complexity_comparing_types_0_and_1:Z.Excessive_stack_depth_comparing_types_0_and_1,jr=Br(D||ge,Cr,ro(u),ro(m));oe&&(oe.errors||(oe.errors=[])).push(jr)}else if(Me){if(Y){let jr=Y();jr&&(Kne(jr,Me),Me=jr)}let Qt;if(W&&D&&!_l&&u.symbol){let jr=fa(u.symbol);if(jr.originatingImport&&!jp(jr.originatingImport)&&xv(fo(jr.target),m,v,void 0)){let yi=mo(jr.originatingImport,Z.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);Qt=Ft(Qt,yi)}}let Cr=Dw(ms(D),D,Me,Qt);He&&ug(Cr,...He),oe&&(oe.errors||(oe.errors=[])).push(Cr),(!oe||!oe.skipLogging)&&PA.add(Cr)}return D&&oe&&oe.skipLogging&&_l===0&&pe.assert(!!oe.errors,"missed opportunity to interact with error."),_l!==0;function ka(Qt){Me=Qt.errorInfo,Mi=Qt.lastSkippedInfo,To=Qt.incompatibleStack,Co=Qt.overrideNextErrorInfo,Ji=Qt.skipParentCounter,He=Qt.relatedInfo}function Kc(){return{errorInfo:Me,lastSkippedInfo:Mi,incompatibleStack:To?.slice(),overrideNextErrorInfo:Co,skipParentCounter:Ji,relatedInfo:He?.slice()}}function Vu(Qt,...Cr){Co++,Mi=void 0,(To||(To=[])).push([Qt,...Cr])}function dd(){let Qt=To||[];To=void 0;let Cr=Mi;if(Mi=void 0,Qt.length===1){Vl(...Qt[0]),Cr&&O0(void 0,...Cr);return}let jr="",Qn=[];for(;Qt.length;){let[yi,...Xn]=Qt.pop();switch(yi.code){case Z.Types_of_property_0_are_incompatible.code:{jr.indexOf("new ")===0&&(jr=`(${jr})`);let Ti=""+Xn[0];jr.length===0?jr=`${Ti}`:qh(Ti,Hg(Te))?jr=`${jr}.${Ti}`:Ti[0]==="["&&Ti[Ti.length-1]==="]"?jr=`${jr}${Ti}`:jr=`${jr}[${Ti}]`;break}case Z.Call_signature_return_types_0_and_1_are_incompatible.code:case Z.Construct_signature_return_types_0_and_1_are_incompatible.code:case Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(jr.length===0){let Ti=yi;yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?Ti=Z.Call_signature_return_types_0_and_1_are_incompatible:yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(Ti=Z.Construct_signature_return_types_0_and_1_are_incompatible),Qn.unshift([Ti,Xn[0],Xn[1]])}else{let Ti=yi.code===Z.Construct_signature_return_types_0_and_1_are_incompatible.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",Us=yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";jr=`${Ti}${jr}(${Us})`}break}case Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Qn.unshift([Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Xn[0],Xn[1]]);break}case Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Qn.unshift([Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Xn[0],Xn[1],Xn[2]]);break}default:return pe.fail(`Unhandled Diagnostic: ${yi.code}`)}}jr?Vl(jr[jr.length-1]===")"?Z.The_types_returned_by_0_are_incompatible_between_these_types:Z.The_types_of_0_are_incompatible_between_these_types,jr):Qn.shift();for(let[yi,...Xn]of Qn){let Ti=yi.elidedInCompatabilityPyramid;yi.elidedInCompatabilityPyramid=!1,Vl(yi,...Xn),yi.elidedInCompatabilityPyramid=Ti}Cr&&O0(void 0,...Cr)}function Vl(Qt,...Cr){pe.assert(!!D),To&&dd(),!Qt.elidedInCompatabilityPyramid&&(Ji===0?Me=wu(Me,Qt,...Cr):Ji--)}function vf(Qt,...Cr){Vl(Qt,...Cr),Ji++}function zI(Qt){pe.assert(!!Me),He?He.push(Qt):He=[Qt]}function O0(Qt,Cr,jr){To&&dd();let[Qn,yi]=Hpe(Cr,jr),Xn=Cr,Ti=Qn;if(!(jr.flags&131072)&&$2e(Cr)&&!nKt(jr)&&(Xn=IZ(Cr),pe.assert(!pg(Xn,jr),"generalized source shouldn't be assignable"),Ti=Zse(Xn)),(jr.flags&8388608&&!(Cr.flags&8388608)?jr.objectType.flags:jr.flags)&262144&&jr!==mr&&jr!==ln){let No=W_(jr),zo;No&&(pg(Xn,No)||(zo=pg(Cr,No)))?Vl(Z._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,zo?Qn:Ti,yi,ro(No)):(Me=void 0,Vl(Z._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,yi,Ti))}if(Qt)Qt===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&Wt&&zhn(Cr,jr).length&&(Qt=Z.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);else if(v===Hb)Qt=Z.Type_0_is_not_comparable_to_type_1;else if(Qn===yi)Qt=Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(Wt&&zhn(Cr,jr).length)Qt=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;else{if(Cr.flags&128&&jr.flags&1048576){let No=xQs(Cr,jr);if(No){Vl(Z.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,Ti,yi,ro(No));return}}Qt=Z.Type_0_is_not_assignable_to_type_1}Vl(Qt,Ti,yi)}function xs(Qt,Cr){let jr=Lse(Qt.symbol)?ro(Qt,Qt.symbol.valueDeclaration):ro(Qt),Qn=Lse(Cr.symbol)?ro(Cr,Cr.symbol.valueDeclaration):ro(Cr);(ym===Qt&&$r===Cr||lf===Qt&&ri===Cr||fI===Qt&&Mn===Cr||JIn()===Qt&&ci===Cr)&&Vl(Z._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Qn,jr)}function eo(Qt,Cr,jr){return bA(Qt)?Qt.target.readonly&&cPe(Cr)?(jr&&Vl(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,ro(Qt),ro(Cr)),!1):Y5(Cr):ofe(Qt)&&cPe(Cr)?(jr&&Vl(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,ro(Qt),ro(Cr)),!1):bA(Cr)?Gv(Qt):!0}function qc(Qt,Cr,jr){return _o(Qt,Cr,3,jr)}function _o(Qt,Cr,jr=3,Qn=!1,yi,Xn=0){if(Qt===Cr)return-1;if(Qt.flags&524288&&Cr.flags&402784252)return v===Hb&&!(Cr.flags&131072)&&q2e(Cr,Qt,v)||q2e(Qt,Cr,v,Qn?Vl:void 0)?-1:(Qn&&pu(Qt,Cr,Qt,Cr,yi),0);let Ti=iPe(Qt,!1),Us=iPe(Cr,!0);if(Ti===Us)return-1;if(v===A0)return Ti.flags!==Us.flags?0:Ti.flags&67358815?-1:(Td(Ti,Us),DSe(Ti,Us,!1,0,jr));if(Ti.flags&262144&&BK(Ti)===Us)return-1;if(Ti.flags&470302716&&Us.flags&1048576){let No=Us.types,zo=No.length===2&&No[0].flags&98304?No[1]:No.length===3&&No[0].flags&98304&&No[1].flags&98304?No[2]:void 0;if(zo&&!(zo.flags&98304)&&(Us=iPe(zo,!0),Ti===Us))return-1}if(v===Hb&&!(Us.flags&131072)&&q2e(Us,Ti,v)||q2e(Ti,Us,v,Qn?Vl:void 0))return-1;if(Ti.flags&469499904||Us.flags&469499904){if(!(Xn&2)&&F9(Ti)&&la(Ti)&8192&&KC(Ti,Us,Qn))return Qn&&O0(yi,Ti,Cr.aliasSymbol?Cr:Us),0;let zo=(v!==Hb||yR(Ti))&&!(Xn&2)&&Ti.flags&405405692&&Ti!==qn&&Us.flags&2621440&&sKt(Us)&&(Zd(Ti).length>0||nct(Ti)),za=!!(la(Ti)&2048);if(zo&&!hMs(Ti,Us,za)){if(Qn){let _c=ro(Qt.aliasSymbol?Qt:Ti),iu=ro(Cr.aliasSymbol?Cr:Us),xA=rg(Ti,0),Li=rg(Ti,1);xA.length>0&&_o(Ad(xA[0]),Us,1,!1)||Li.length>0&&_o(Ad(Li[0]),Us,1,!1)?Vl(Z.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,_c,iu):Vl(Z.Type_0_has_no_properties_in_common_with_type_1,_c,iu)}return 0}Td(Ti,Us);let to=Ti.flags&1048576&&Ti.types.length<4&&!(Us.flags&1048576)||Us.flags&1048576&&Us.types.length<4&&!(Ti.flags&469499904)?vh(Ti,Us,Qn,Xn):DSe(Ti,Us,Qn,Xn,jr);if(to)return to}return Qn&&pu(Qt,Cr,Ti,Us,yi),0}function pu(Qt,Cr,jr,Qn,yi){var Xn,Ti;let Us=!!uKt(Qt),No=!!uKt(Cr);jr=Qt.aliasSymbol||Us?Qt:jr,Qn=Cr.aliasSymbol||No?Cr:Qn;let zo=Co>0;if(zo&&Co--,jr.flags&524288&&Qn.flags&524288){let za=Me;eo(jr,Qn,!0),Me!==za&&(zo=!!Me)}if(jr.flags&524288&&Qn.flags&402784252)xs(jr,Qn);else if(jr.symbol&&jr.flags&524288&&qn===jr)Vl(Z.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(la(jr)&2048&&Qn.flags&2097152){let za=Qn.types,La=sX(dS.IntrinsicAttributes,D),to=sX(dS.IntrinsicClassAttributes,D);if(!lo(La)&&!lo(to)&&(k(za,La)||k(za,to)))return}else Me=lUt(Me,Cr);if(!yi&&zo){let za=Kc();O0(yi,jr,Qn);let La;Me&&Me!==za.errorInfo&&(La={code:Me.code,messageText:Me.messageText}),ka(za),La&&Me&&(Me.canonicalHead=La),Mi=[jr,Qn];return}if(O0(yi,jr,Qn),jr.flags&262144&&((Ti=(Xn=jr.symbol)==null?void 0:Xn.declarations)!=null&&Ti[0])&&!BK(jr)){let za=UUt(jr);if(za.constraint=Cl(Qn,eX(jr,za)),POe(za)){let La=ro(Qn,jr.symbol.declarations[0]);zI(mo(jr.symbol.declarations[0],Z.This_type_parameter_might_need_an_extends_0_constraint,La))}}}function Td(Qt,Cr){if(ki&&Qt.flags&3145728&&Cr.flags&3145728){let jr=Qt,Qn=Cr;if(jr.objectFlags&Qn.objectFlags&32768)return;let yi=jr.types.length,Xn=Qn.types.length;yi*Xn>1e6&&ki.instant(ki.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Qt.id,sourceSize:yi,targetId:Cr.id,targetSize:Xn,pos:D?.pos,end:D?.end})}}function Af(Qt,Cr){return Ha(Kl(Qt,(Qn,yi)=>{var Xn;yi=hy(yi);let Ti=yi.flags&3145728?MOe(yi,Cr):UQ(yi,Cr),Us=Ti&&fo(Ti)||((Xn=Wq(yi,Cr))==null?void 0:Xn.type)||wt;return Ft(Qn,Us)},void 0)||E)}function KC(Qt,Cr,jr){var Qn;if(!gSe(Cr)||!Rt&&la(Cr)&4096)return!1;let yi=!!(la(Qt)&2048);if((v===g0||v===Hb)&&(ufe(qn,Cr)||!yi&&fZ(Cr)))return!1;let Xn=Cr,Ti;Cr.flags&1048576&&(Xn=wyn(Qt,Cr,_o)||H8s(Cr),Ti=Xn.flags&1048576?Xn.types:[Xn]);for(let Us of Zd(Qt))if(EA(Us,Qt.symbol)&&!jhn(Qt,Us)){if(!Eat(Xn,Us.escapedName,yi)){if(jr){let No=am(Xn,gSe);if(!D)return pe.fail();if(pQ(D)||nI(D)||nI(D.parent)){Us.valueDeclaration&&TN(Us.valueDeclaration)&&ms(D)===ms(Us.valueDeclaration.name)&&(D=Us.valueDeclaration.name);let zo=xl(Us),za=UCn(zo,No),La=za?xl(za):void 0;La?Vl(Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,zo,ro(No),La):Vl(Z.Property_0_does_not_exist_on_type_1,zo,ro(No))}else{let zo=((Qn=Qt.symbol)==null?void 0:Qn.declarations)&&Nc(Qt.symbol.declarations),za;if(Us.valueDeclaration&&ji(Us.valueDeclaration,La=>La===zo)&&ms(zo)===ms(D)){let La=Us.valueDeclaration;pe.assertNode(La,Bw);let to=La.name;D=to,Ir(to)&&(za=KCn(to,No))}za!==void 0?vf(Z.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,xl(Us),ro(No),za):vf(Z.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,xl(Us),ro(No))}}return!0}if(Ti&&!_o(fo(Us),Af(Ti,Us.escapedName),3,jr))return jr&&Vu(Z.Types_of_property_0_are_incompatible,xl(Us)),!0}return!1}function EA(Qt,Cr){return Qt.valueDeclaration&&Cr.valueDeclaration&&Qt.valueDeclaration.parent===Cr.valueDeclaration}function vh(Qt,Cr,jr,Qn){if(Qt.flags&1048576){if(Cr.flags&1048576){let yi=Qt.origin;if(yi&&yi.flags&2097152&&Cr.aliasSymbol&&k(yi.types,Cr))return-1;let Xn=Cr.origin;if(Xn&&Xn.flags&1048576&&Qt.aliasSymbol&&k(Xn.types,Qt))return-1}return v===Hb?Jf(Qt,Cr,jr&&!(Qt.flags&402784252),Qn):Vv(Qt,Cr,jr&&!(Qt.flags&402784252),Qn)}if(Cr.flags&1048576)return Ld(rSe(Qt),Cr,jr&&!(Qt.flags&402784252)&&!(Cr.flags&402784252),Qn);if(Cr.flags&2097152)return wS(Qt,Cr,jr,2);if(v===Hb&&Cr.flags&402784252){let yi=Er(Qt.types,Xn=>Xn.flags&465829888?W_(Xn)||cn:Xn);if(yi!==Qt.types){if(Qt=jg(yi),Qt.flags&131072)return 0;if(!(Qt.flags&2097152))return _o(Qt,Cr,1,!1)||_o(Cr,Qt,1,!1)}}return Jf(Qt,Cr,!1,1)}function Mh(Qt,Cr){let jr=-1,Qn=Qt.types;for(let yi of Qn){let Xn=Ld(yi,Cr,!1,0);if(!Xn)return 0;jr&=Xn}return jr}function Ld(Qt,Cr,jr,Qn){let yi=Cr.types;if(Cr.flags&1048576){if(oG(yi,Qt))return-1;if(v!==Hb&&la(Cr)&32768&&!(Qt.flags&1024)&&(Qt.flags&2688||(v===dk||v===Sf)&&Qt.flags&256)){let Ti=Qt===Qt.regularType?Qt.freshType:Qt.regularType,Us=Qt.flags&128?$r:Qt.flags&256?ri:Qt.flags&2048?oo:void 0;return Us&&oG(yi,Us)||Ti&&oG(yi,Ti)?-1:0}let Xn=Tmn(Cr,Qt);if(Xn){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}}for(let Xn of yi){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}if(jr){let Xn=qhn(Qt,Cr,_o);Xn&&_o(Qt,Xn,2,!0,void 0,Qn)}return 0}function wS(Qt,Cr,jr,Qn){let yi=-1,Xn=Cr.types;for(let Ti of Xn){let Us=_o(Qt,Ti,2,jr,void 0,Qn);if(!Us)return 0;yi&=Us}return yi}function Jf(Qt,Cr,jr,Qn){let yi=Qt.types;if(Qt.flags&1048576&&oG(yi,Cr))return-1;let Xn=yi.length;for(let Ti=0;Ti=Ti.types.length&&Xn.length%Ti.types.length===0){let za=_o(No,Ti.types[Us%Ti.types.length],3,!1,void 0,Qn);if(za){yi&=za;continue}}let zo=_o(No,Cr,1,jr,void 0,Qn);if(!zo)return 0;yi&=zo}return yi}function bfe(Qt=E,Cr=E,jr=E,Qn,yi){if(Qt.length!==Cr.length&&v===A0)return 0;let Xn=Qt.length<=Cr.length?Qt.length:Cr.length,Ti=-1;for(let Us=0;Us(_c|=Li?16:8,to(Li)));let iu;return Yi===3?((Xn=ki)==null||Xn.instant(ki.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:Qt.id,sourceIdStack:xt.map(Li=>Li.id),targetId:Cr.id,targetIdStack:wr.map(Li=>Li.id),depth:vn,targetDepth:ii}),iu=3):((Ti=ki)==null||Ti.push(ki.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:Qt.id,targetId:Cr.id}),iu=Efe(Qt,Cr,jr,Qn),(Us=ki)==null||Us.pop()),bu&&(bu=to),yi&1&&vn--,yi&2&&ii--,Yi=La,iu?(iu===-1||vn===0&&ii===0)&&xA(iu===-1||iu===3):(v.set(No,2|_c),Ka--,xA(!1)),iu;function xA(Li){for(let ta=za;taUs!==Qt)&&(Xn=_o(Ti,Cr,1,!1,void 0,Qn))}Xn&&!(Qn&2)&&Cr.flags&2097152&&!kK(Cr)&&Qt.flags&2621440?(Xn&=zg(Qt,Cr,jr,void 0,!1,0),Xn&&F9(Qt)&&la(Qt)&8192&&(Xn&=er(Qt,Cr,!1,jr,0))):Xn&&Dot(Cr)&&!Y5(Cr)&&Qt.flags&2097152&&hy(Qt).flags&3670016&&!zt(Qt.types,Ti=>Ti===Cr||!!(la(Ti)&262144))&&(Xn&=zg(Qt,Cr,jr,void 0,!0,Qn))}return Xn&&ka(yi),Xn}function S2(Qt,Cr){let jr=hy(L5(Cr)),Qn=[];return rUt(jr,8576,!1,yi=>void Qn.push(Cl(Qt,J2e(Cr.mapper,tT(Cr),yi)))),Ha(Qn)}function kSe(Qt,Cr,jr,Qn,yi){let Xn,Ti,Us=!1,No=Qt.flags,zo=Cr.flags;if(v===A0){if(No&3145728){let to=Mh(Qt,Cr);return to&&(to&=Mh(Cr,Qt)),to}if(No&4194304)return _o(Qt.type,Cr.type,3,!1);if(No&8388608&&(Xn=_o(Qt.objectType,Cr.objectType,3,!1))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,!1))||No&16777216&&Qt.root.isDistributive===Cr.root.isDistributive&&(Xn=_o(Qt.checkType,Cr.checkType,3,!1))&&(Xn&=_o(Qt.extendsType,Cr.extendsType,3,!1))&&(Xn&=_o(EO(Qt),EO(Cr),3,!1))&&(Xn&=_o(SO(Qt),SO(Cr),3,!1))||No&33554432&&(Xn=_o(Qt.baseType,Cr.baseType,3,!1))&&(Xn&=_o(Qt.constraint,Cr.constraint,3,!1)))return Xn;if(No&134217728&&Sc(Qt.texts,Cr.texts)){let to=Qt.types,_c=Cr.types;Xn=-1;for(let iu=0;iu!!(_c.flags&262144));){if(Xn=_o(to,Cr,1,!1))return Xn;to=Uy(to)}return 0}}else if(zo&4194304){let to=Cr.type;if(No&4194304&&(Xn=_o(to,Qt.type,3,!1)))return Xn;if(bA(to)){if(Xn=_o(Qt,ihn(to),2,jr))return Xn}else{let _c=nUt(to);if(_c){if(_o(Qt,XN(_c,Cr.indexFlags|4),2,jr)===-1)return-1}else if(Xb(to)){let iu=R9(to),xA=SS(to),Li;if(iu&&Hse(to)){let ta=S2(iu,to);Li=Ha([ta,iu])}else Li=iu||xA;if(_o(Qt,Li,2,jr)===-1)return-1}}}else if(zo&8388608){if(No&8388608){if((Xn=_o(Qt.objectType,Cr.objectType,3,jr))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,jr)),Xn)return Xn;jr&&(Ti=Me)}if(v===g0||v===Hb){let to=Cr.objectType,_c=Cr.indexType,iu=W_(to)||to,xA=W_(_c)||_c;if(!kK(iu)&&!xK(xA)){let Li=4|(iu!==to?2:0),ta=bO(iu,xA,Li);if(ta){if(jr&&Ti&&ka(yi),Xn=_o(Qt,ta,2,jr,void 0,Qn))return Xn;jr&&Ti&&Me&&(Me=za([Ti])<=za([Me])?Ti:Me)}}}jr&&(Ti=void 0)}else if(Xb(Cr)&&v!==A0){let to=!!Cr.declaration.nameType,_c=nG(Cr),iu=_k(Cr);if(!(iu&8)){if(!to&&_c.flags&8388608&&_c.objectType===Qt&&_c.indexType===tT(Cr))return-1;if(!Xb(Qt)){let xA=to?R9(Cr):SS(Cr),Li=XN(Qt,2),ta=iu&4,Cu=ta?VOe(xA,Li):void 0;if(ta?!(Cu.flags&131072):_o(xA,Li,3)){let Ul=nG(Cr),SA=tT(Cr),pd=gfe(Ul,-98305);if(!to&&pd.flags&8388608&&pd.indexType===SA){if(Xn=_o(Qt,pd.objectType,2,jr))return Xn}else{let au=to?Cu||xA:Cu?jg([Cu,SA]):SA,bm=k1(Qt,au);if(Xn=_o(bm,Ul,3,jr))return Xn}}Ti=Me,ka(yi)}}}else if(zo&16777216){if(Qq(Cr,wr,ii,10))return 3;let to=Cr;if(!to.root.inferTypeParameters&&!D5s(to.root)&&!(Qt.flags&16777216&&Qt.root===to.root)){let _c=!pg(K2e(to.checkType),K2e(to.extendsType)),iu=!_c&&pg(ZK(to.checkType),ZK(to.extendsType));if((Xn=_c?-1:_o(Qt,EO(to),2,!1,void 0,Qn))&&(Xn&=iu?-1:_o(Qt,SO(to),2,!1,void 0,Qn),Xn))return Xn}}else if(zo&134217728){if(No&134217728){if(v===Hb)return sHs(Qt,Cr)?0:-1;Cl(Qt,sm)}if(nat(Qt,Cr))return-1}else if(Cr.flags&268435456&&!(Qt.flags&268435456)&&rat(Qt,Cr))return-1;if(No&8650752){if(!(No&8388608&&zo&8388608)){let to=BK(Qt)||cn;if(Xn=_o(to,Cr,1,!1,void 0,Qn))return Xn;if(Xn=_o(D1(to,Qt),Cr,1,jr&&to!==cn&&!(zo&No&262144),void 0,Qn))return Xn;if(aUt(Qt)){let _c=BK(Qt.indexType);if(_c&&(Xn=_o(k1(Qt.objectType,_c),Cr,1,jr)))return Xn}}}else if(No&4194304){let to=ZUt(Qt.type,Qt.indexFlags)&&la(Qt.type)&32;if(Xn=_o(mc,Cr,1,jr&&!to))return Xn;if(to){let _c=Qt.type,iu=R9(_c),xA=iu&&Hse(_c)?S2(iu,_c):iu||SS(_c);if(Xn=_o(xA,Cr,1,jr))return Xn}}else if(No&134217728&&!(zo&524288)){if(!(zo&134217728)){let to=W_(Qt);if(to&&to!==Qt&&(Xn=_o(to,Cr,1,jr)))return Xn}}else if(No&268435456)if(zo&268435456){if(Qt.symbol!==Cr.symbol)return 0;if(Xn=_o(Qt.type,Cr.type,3,jr))return Xn}else{let to=W_(Qt);if(to&&(Xn=_o(to,Cr,1,jr)))return Xn}else if(No&16777216){if(Qq(Qt,xt,vn,10))return 3;if(zo&16777216){let iu=Qt.root.inferTypeParameters,xA=Qt.extendsType,Li;if(iu){let ta=nSe(iu,void 0,0,qc);cG(ta.inferences,Cr.extendsType,xA,1536),xA=Cl(xA,ta.mapper),Li=ta.mapper}if(aG(xA,Cr.extendsType)&&(_o(Qt.checkType,Cr.checkType,3)||_o(Cr.checkType,Qt.checkType,3))&&((Xn=_o(Cl(EO(Qt),Li),EO(Cr),3,jr))&&(Xn&=_o(SO(Qt),SO(Cr),3,jr)),Xn))return Xn}let to=iUt(Qt);if(to&&(Xn=_o(to,Cr,1,jr)))return Xn;let _c=!(zo&16777216)&&POe(Qt)?AIn(Qt):void 0;if(_c&&(ka(yi),Xn=_o(_c,Cr,1,jr)))return Xn}else{if(v!==dk&&v!==Sf&&WPs(Cr)&&fZ(Qt))return-1;if(Xb(Cr))return Xb(Qt)&&(Xn=zn(Qt,Cr,jr))?Xn:0;let to=!!(No&402784252);if(v!==A0)Qt=hy(Qt),No=Qt.flags;else if(Xb(Qt))return 0;if(la(Qt)&4&&la(Cr)&4&&Qt.target===Cr.target&&!bA(Qt)&&!(Oot(Qt)||Oot(Cr))){if(Qot(Qt))return-1;let _c=oKt(Qt.target);if(_c===E)return 1;let iu=La(gf(Qt),gf(Cr),_c,Qn);if(iu!==void 0)return iu}else{if(ofe(Cr)?kE(Qt,Y5):Gv(Cr)&&kE(Qt,_c=>bA(_c)&&!_c.target.readonly))return v!==A0?_o(V5(Qt,ri)||hr,V5(Cr,ri)||hr,3,jr):0;if(vO(Qt)&&bA(Cr)&&!vO(Cr)){let _c=QN(Qt);if(_c!==Qt)return _o(_c,Cr,1,jr)}else if((v===dk||v===Sf)&&fZ(Cr)&&la(Cr)&8192&&!fZ(Qt))return 0}if(No&2621440&&zo&524288){let _c=jr&&Me===yi.errorInfo&&!to;if(Xn=zg(Qt,Cr,_c,void 0,!1,Qn),Xn&&(Xn&=Bp(Qt,Cr,0,_c,Qn),Xn&&(Xn&=Bp(Qt,Cr,1,_c,Qn),Xn&&(Xn&=er(Qt,Cr,to,_c,Qn)))),Us&&Xn)Me=Ti||Me||yi.errorInfo;else if(Xn)return Xn}if(No&2621440&&zo&1048576){let _c=gfe(Cr,36175872);if(_c.flags&1048576){let iu=as(Qt,_c);if(iu)return iu}}}return 0;function za(to){return to?Kl(to,(_c,iu)=>_c+1+za(iu.next),0):0}function La(to,_c,iu,xA){if(Xn=bfe(to,_c,iu,jr,xA))return Xn;if(zt(iu,ta=>!!(ta&24))){Ti=void 0,ka(yi);return}let Li=_c&&mMs(_c,iu);if(Us=!Li,iu!==E&&!Li){if(Us&&!(jr&&zt(iu,ta=>(ta&7)===0)))return 0;Ti=Me,ka(yi)}}}function zn(Qt,Cr,jr){if(v===Hb||(v===A0?_k(Qt)===_k(Cr):zpe(Qt)<=zpe(Cr))){let yi,Xn=SS(Cr),Ti=Cl(SS(Qt),zpe(Qt)<0?qp:sm);if(yi=_o(Xn,Ti,3,jr)){let Us=x1([tT(Qt)],[tT(Cr)]);if(Cl(R9(Qt),Us)===Cl(R9(Cr),Us))return yi&_o(Cl(nG(Qt),Us),nG(Cr),3,jr)}}return 0}function as(Qt,Cr){var jr;let Qn=Zd(Qt),yi=wmn(Qn,Cr);if(!yi)return 0;let Xn=1;for(let La of yi)if(Xn*=xHs(hR(La)),Xn>25)return(jr=ki)==null||jr.instant(ki.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Qt.id,targetId:Cr.id,numCombinations:Xn}),0;let Ti=new Array(yi.length),Us=new Set;for(let La=0;LaLa[iu],!1,0,at||v===Hb))continue e}Qi(zo,_c,bg),to=!0}if(!to)return 0}let za=-1;for(let La of zo)if(za&=zg(Qt,La,!1,Us,!1,0),za&&(za&=Bp(Qt,La,0,!1,0),za&&(za&=Bp(Qt,La,1,!1,0),za&&!(bA(Qt)&&bA(La))&&(za&=er(Qt,La,!1,!1,0)))),!za)return za;return za}function Ms(Qt,Cr){if(!Cr||Qt.length===0)return Qt;let jr;for(let Qn=0;Qn5?Vl(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,ro(Qt),ro(Cr),lt(Xn.slice(0,4),Ti=>xl(Ti)).join(", "),Xn.length-4):Vl(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,ro(Qt),ro(Cr),lt(Xn,Ti=>xl(Ti)).join(", ")),yi&&Me&&Co++)}function zg(Qt,Cr,jr,Qn,yi,Xn){if(v===A0)return iA(Qt,Cr,Qn);let Ti=-1;if(bA(Cr)){if(Y5(Qt)){if(!Cr.target.readonly&&(ofe(Qt)||bA(Qt)&&Qt.target.readonly))return 0;let La=k9(Qt),to=k9(Cr),_c=bA(Qt)?Qt.target.combinedFlags&4:4,iu=!!(Cr.target.combinedFlags&12),xA=bA(Qt)?Qt.target.minLength:0,Li=Cr.target.minLength;if(!_c&&La=Ul?to-1-Math.min(Em,SA):au,M0=Cr.target.elementFlags[M_];if(M0&8&&!(bm&8))return jr&&Vl(Z.Source_provides_no_match_for_variadic_element_at_position_0_in_target,M_),0;if(bm&8&&!(M0&12))return jr&&Vl(Z.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,au,M_),0;if(M0&1&&!(bm&1))return jr&&Vl(Z.Source_provides_no_match_for_required_element_at_position_0_in_target,M_),0;if(pd&&((bm&12||M0&12)&&(pd=!1),pd&&Qn?.has(""+au)))continue;let jy=mZ(ta[au],!!(bm&M0&2)),bZ=Cu[M_],q5=bm&8&&M0&4?f0(bZ):mZ(bZ,!!(M0&2)),cX=_o(jy,q5,3,jr,void 0,Xn);if(!cX)return jr&&(to>1||La>1)&&(iu&&au>=Ul&&Em>=SA&&Ul!==La-SA-1?Vu(Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Ul,La-SA-1,M_):Vu(Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,au,M_)),0;Ti&=cX}return Ti}if(Cr.target.combinedFlags&12)return 0}let Us=(v===dk||v===Sf)&&!F9(Qt)&&!Qot(Qt)&&!bA(Qt),No=EKt(Qt,Cr,Us,!1);if(No)return jr&&sC(Qt,Cr)&&tc(Qt,Cr,No,Us),0;if(F9(Cr)){for(let La of Ms(Zd(Qt),Qn))if(!UQ(Cr,La.escapedName)&&!(fo(La).flags&32768))return jr&&Vl(Z.Property_0_does_not_exist_on_type_1,xl(La),ro(Cr)),0}let zo=Zd(Cr),za=bA(Qt)&&bA(Cr);for(let La of Ms(zo,Qn)){let to=La.escapedName;if(!(La.flags&4194304)&&(!za||yN(to)||to==="length")&&(!yi||La.flags&16777216)){let _c=Fg(Qt,to);if(_c&&_c!==La){let iu=ea(Qt,Cr,_c,La,hR,jr,Xn,v===Hb);if(!iu)return 0;Ti&=iu}}}return Ti}function iA(Qt,Cr,jr){if(!(Qt.flags&524288&&Cr.flags&524288))return 0;let Qn=Ms(N9(Qt),jr),yi=Ms(N9(Cr),jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti of Qn){let Us=UQ(Cr,Ti.escapedName);if(!Us)return 0;let No=cKt(Ti,Us,_o);if(!No)return 0;Xn&=No}return Xn}function Bp(Qt,Cr,jr,Qn,yi){var Xn,Ti;if(v===A0)return z5(Qt,Cr,jr);if(Cr===tp||Qt===tp)return-1;let Us=Qt.symbol&&KN(Qt.symbol.valueDeclaration),No=Cr.symbol&&KN(Cr.symbol.valueDeclaration),zo=rg(Qt,Us&&jr===1?0:jr),za=rg(Cr,No&&jr===1?0:jr);if(jr===1&&zo.length&&za.length){let xA=!!(zo[0].flags&4),Li=!!(za[0].flags&4);if(xA&&!Li)return Qn&&Vl(Z.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!Di(zo[0],za[0],Qn))return 0}let La=-1,to=jr===1?Jb:P0,_c=la(Qt),iu=la(Cr);if(_c&64&&iu&64&&Qt.symbol===Cr.symbol||_c&4&&iu&4&&Qt.target===Cr.target){pe.assertEqual(zo.length,za.length);for(let xA=0;xAhO(Ul,void 0,262144,jr);return Vl(Z.Type_0_is_not_assignable_to_type_1,Cu(Li),Cu(ta)),Vl(Z.Types_of_construct_signatures_are_incompatible),La}}else e:for(let xA of za){let Li=Kc(),ta=Qn;for(let Cu of zo){let Ul=j5(Cu,xA,!0,ta,yi,to(Cu,xA));if(Ul){La&=Ul,ka(Li);continue e}ta=!1}return ta&&Vl(Z.Type_0_provides_no_match_for_the_signature_1,ro(Qt),hO(xA,void 0,void 0,jr)),0}return La}function sC(Qt,Cr){let jr=HOe(Qt,0),Qn=HOe(Qt,1),yi=N9(Qt);return(jr.length||Qn.length)&&!yi.length?!!(rg(Cr,0).length&&jr.length||rg(Cr,1).length&&Qn.length):!0}function P0(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,ro(jr),ro(Qn)):(jr,Qn)=>Vu(Z.Call_signature_return_types_0_and_1_are_incompatible,ro(jr),ro(Qn))}function Jb(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,ro(jr),ro(Qn)):(jr,Qn)=>Vu(Z.Construct_signature_return_types_0_and_1_are_incompatible,ro(jr),ro(Qn))}function j5(Qt,Cr,jr,Qn,yi,Xn){let Ti=v===dk?16:v===Sf?24:0;return eKt(jr?H2e(Qt):Qt,jr?H2e(Cr):Cr,Ti,Qn,Vl,Xn,Us,sm);function Us(No,zo,za){return _o(No,zo,3,za,void 0,yi)}}function z5(Qt,Cr,jr){let Qn=rg(Qt,jr),yi=rg(Cr,jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti=0;TiNo.keyType===$r),Us=-1;for(let No of Xn){let zo=v!==Sf&&!jr&&Ti&&No.type.flags&1?-1:Xb(Qt)&&Ti?_o(nG(Qt),No.type,3,Qn):ut(Qt,No,Qn,yi);if(!zo)return 0;Us&=zo}return Us}function ut(Qt,Cr,jr,Qn){let yi=W2e(Qt,Cr.keyType);return yi?gct(yi,Cr,jr,Qn):!(Qn&1)&&(v!==Sf||la(Qt)&8192)&&zot(Qt)?r3e(Qt,Cr,jr,Qn):(jr&&Vl(Z.Index_signature_for_type_0_is_missing_in_type_1,ro(Cr.keyType),ro(Qt)),0)}function hi(Qt,Cr){let jr=p0(Qt),Qn=p0(Cr);if(jr.length!==Qn.length)return 0;for(let yi of Qn){let Xn=iG(Qt,yi.keyType);if(!(Xn&&_o(Xn.type,yi.type,3)&&Xn.isReadonly===yi.isReadonly))return 0}return-1}function Di(Qt,Cr,jr){if(!Qt.declaration||!Cr.declaration)return!0;let Qn=$Y(Qt.declaration,6),yi=$Y(Cr.declaration,6);return yi===2||yi===4&&Qn!==2||yi!==4&&!Qn?!0:(jr&&Vl(Z.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,G5(Qn),G5(yi)),!1)}}function nKt(u){if(u.flags&16)return!1;if(u.flags&3145728)return!!F(u.types,nKt);if(u.flags&465829888){let m=BK(u);if(m&&m!==u)return nKt(m)}return yR(u)||!!(u.flags&134217728)||!!(u.flags&268435456)}function zhn(u,m){return bA(u)&&bA(m)?E:Zd(m).filter(v=>Wot(Wi(u,v.escapedName),fo(v)))}function Wot(u,m){return!!u&&!!m&&uh(u,32768)&&!!tSe(m)}function IMs(u){return Zd(u).filter(m=>tSe(fo(m)))}function qhn(u,m,v=qUt){return wyn(u,m,v)||W8s(u,m)||O8s(u,m)||P8s(u,m)||M8s(u,m)}function iKt(u,m,v){let D=u.types,W=D.map(oe=>oe.flags&402784252?0:-1);for(let[oe,Be]of m){let Me=!1;for(let He=0;He!!v(Vt,$e))?Me=!0:W[He]=3)}for(let He=0;HeW[Be]),0):u;return Y.flags&131072?u:Y}function sKt(u){if(u.flags&524288){let m=CR(u);return m.callSignatures.length===0&&m.constructSignatures.length===0&&m.indexInfos.length===0&&m.properties.length>0&&ue(m.properties,v=>!!(v.flags&16777216))}return u.flags&33554432?sKt(u.baseType):u.flags&2097152?ue(u.types,sKt):!1}function hMs(u,m,v){for(let D of Zd(u))if(Eat(m,D.escapedName,v))return!0;return!1}function oKt(u){return u===kA||u===gA||u.objectFlags&8?Ne:emn(u.symbol,u.typeParameters)}function $hn(u){return emn(u,fa(u).typeParameters)}function emn(u,m=E){var v,D;let W=fa(u);if(!W.variances){(v=ki)==null||v.push(ki.Phase.CheckTypes,"getVariancesWorker",{arity:m.length,id:JC(Lp(u))});let Y=eK,oe=d9;eK||(eK=!0,d9=Jx.length),W.variances=E;let Be=[];for(let Me of m){let He=aKt(Me),$e=He&16384?He&8192?0:1:He&8192?2:void 0;if($e===void 0){let Vt=!1,xt=!1,wr=bu;bu=ii=>ii?xt=!0:Vt=!0;let dn=sPe(u,Me,bf),vn=sPe(u,Me,UI);$e=(pg(vn,dn)?1:0)|(pg(dn,vn)?2:0),$e===3&&pg(sPe(u,Me,ve),dn)&&($e=4),bu=wr,(Vt||xt)&&(Vt&&($e|=8),xt&&($e|=16))}Be.push($e)}Y||(eK=!1,d9=oe),W.variances=Be,(D=ki)==null||D.pop({variances:Be.map(pe.formatVariance)})}return W.variances}function sPe(u,m,v){let D=eX(m,v),W=Lp(u);if(lo(W))return W;let Y=u.flags&524288?Xse(u,pZ(fa(u).typeParameters,D)):uZ(W,pZ(W.typeParameters,D));return on.add(JC(Y)),Y}function Oot(u){return on.has(JC(u))}function aKt(u){var m;return Kl((m=u.symbol)==null?void 0:m.declarations,(v,D)=>v|c_(D),0)&28672}function mMs(u,m){for(let v=0;v!!(m.flags&262144)||Pot(m))}function yMs(u,m,v,D){let W=[],Y="",oe=Me(u,0),Be=Me(m,0);return`${Y}${oe},${Be}${v}`;function Me(He,$e=0){let Vt=""+He.target.id;for(let xt of gf(He)){if(xt.flags&262144){if(D||CMs(xt)){let wr=W.indexOf(xt);wr<0&&(wr=W.length,W.push(xt)),Vt+="="+wr;continue}Y="*"}else if($e<4&&Pot(xt)){Vt+="<"+Me(xt,$e+1)+">";continue}Vt+="-"+xt.id}return Vt}}function Mot(u,m,v,D,W){if(D===A0&&u.id>m.id){let oe=u;u=m,m=oe}let Y=v?":"+v:"";return Pot(u)&&Pot(m)?yMs(u,m,Y,W):`${u.id},${m.id}${Y}`}function oPe(u,m){if(aI(u)&6){for(let v of u.links.containingType.types){let D=Fg(v,u.escapedName),W=D&&oPe(D,m);if(W)return W}return}return m(u)}function Yq(u){return u.parent&&u.parent.flags&32?Lp(nC(u)):void 0}function Hot(u){let m=Yq(u),v=m&&eT(m)[0];return v&&Wi(v,u.escapedName)}function bMs(u,m){return oPe(u,v=>{let D=Yq(v);return D?da(D,m):!1})}function EMs(u,m){return!oPe(m,v=>d2(v)&4?!bMs(u,Yq(v)):!1)}function tmn(u,m,v){return oPe(m,D=>d2(D,v)&4?!da(u,Yq(D)):!1)?void 0:u}function Qq(u,m,v,D=3){if(v>=D){if((la(u)&96)===96&&(u=rmn(u)),u.flags&2097152)return zt(u.types,Be=>Qq(Be,m,v,D));let W=Yot(u),Y=0,oe=0;for(let Be=0;Be=oe&&(Y++,Y>=D))return!0;oe=Me.id}}}return!1}function rmn(u){let m;for(;(la(u)&96)===96&&(m=L5(u))&&(m.symbol||m.flags&2097152&&zt(m.types,v=>!!v.symbol));)u=m;return u}function nmn(u,m){return(la(u)&96)===96&&(u=rmn(u)),u.flags&2097152?zt(u.types,v=>nmn(v,m)):Yot(u)===m}function Yot(u){if(u.flags&524288&&!vKt(u)){if(la(u)&4&&u.node)return u.node;if(u.symbol&&!(la(u)&16&&u.symbol.flags&32))return u.symbol;if(bA(u))return u.target}if(u.flags&262144)return u.symbol;if(u.flags&8388608){do u=u.objectType;while(u.flags&8388608);return u}return u.flags&16777216?u.root:u}function SMs(u,m){return cKt(u,m,j2e)!==0}function cKt(u,m,v){if(u===m)return-1;let D=d2(u)&6,W=d2(m)&6;if(D!==W)return 0;if(D){if(ooe(u)!==ooe(m))return 0}else if((u.flags&16777216)!==(m.flags&16777216))return 0;return BR(u)!==BR(m)?0:v(fo(u),fo(m))}function vMs(u,m,v){let D=xE(u),W=xE(m),Y=vR(u),oe=vR(m),Be=Sk(u),Me=Sk(m);return!!(D===W&&Y===oe&&Be===Me||v&&Y<=oe)}function aPe(u,m,v,D,W,Y){if(u===m)return-1;if(!vMs(u,m,v)||B(u.typeParameters)!==B(m.typeParameters))return 0;if(m.typeParameters){let Me=x1(u.typeParameters,m.typeParameters);for(let He=0;Hem|(v.flags&1048576?imn(v.types):v.flags),0)}function TMs(u){if(u.length===1)return u[0];let m=at?Er(u,D=>am(D,W=>!(W.flags&98304))):u,v=wMs(m)?Ha(m):RMs(m);return m===u?v:uPe(v,imn(u)&98304)}function RMs(u){let m=Kl(u,(v,D)=>sfe(v,D)?D:v);return ue(u,v=>v===m||sfe(v,m))?m:Kl(u,(v,D)=>tX(v,D)?D:v)}function NMs(u){return Kl(u,(m,v)=>tX(v,m)?v:m)}function Gv(u){return!!(la(u)&4)&&(u.target===kA||u.target===gA)}function ofe(u){return!!(la(u)&4)&&u.target===gA}function Y5(u){return Gv(u)||bA(u)}function cPe(u){return Gv(u)&&!ofe(u)||bA(u)&&!u.target.readonly}function lPe(u){return Gv(u)?gf(u)[0]:void 0}function G9(u){return Gv(u)||!(u.flags&98304)&&pg(u,B1)}function lKt(u){return cPe(u)||!(u.flags&98305)&&pg(u,f_)}function uKt(u){if(!(la(u)&4)||!(la(u.target)&3))return;if(la(u)&33554432)return la(u)&67108864?u.cachedEquivalentBaseType:void 0;u.objectFlags|=33554432;let m=u.target;if(la(m)&1){let W=zB(m);if(W&&W.expression.kind!==80&&W.expression.kind!==212)return}let v=eT(m);if(v.length!==1||Ck(u.symbol).size)return;let D=B(m.typeParameters)?Cl(v[0],x1(m.typeParameters,gf(u).slice(0,m.typeParameters.length))):v[0];return B(gf(u))>B(m.typeParameters)&&(D=D1(D,Ei(gf(u)))),u.objectFlags|=67108864,u.cachedEquivalentBaseType=D}function smn(u){return at?u===Ui:u===xe}function Qot(u){let m=lPe(u);return!!m&&smn(m)}function afe(u){let m;return bA(u)||!!Fg(u,"0")||G9(u)&&!!(m=Wi(u,"length"))&&kE(m,v=>!!(v.flags&256))}function Xot(u){return G9(u)||afe(u)}function DMs(u,m){let v=Wi(u,""+m);if(v)return v;if(kE(u,bA))return lmn(u,m,Te.noUncheckedIndexedAccess?wt:void 0)}function kMs(u){return!(u.flags&240544)}function yR(u){return!!(u.flags&109472)}function omn(u){let m=QN(u);return m.flags&2097152?zt(m.types,yR):yR(m)}function xMs(u){return u.flags&2097152&&de(u.types,yR)||u}function $2e(u){return u.flags&16?!0:u.flags&1048576?u.flags&1024?!0:ue(u.types,yR):yR(u)}function IZ(u){return u.flags&1056?Aot(u):u.flags&402653312?$r:u.flags&256?ri:u.flags&2048?oo:u.flags&512?Mn:u.flags&1048576?GMs(u):u}function GMs(u){let m=`B${JC(u)}`;return Qy(m)??UB(m,Xf(u,IZ))}function gKt(u){return u.flags&402653312?$r:u.flags&288?ri:u.flags&2048?oo:u.flags&512?Mn:u.flags&1048576?Xf(u,gKt):u}function Q5(u){return u.flags&1056&&$Q(u)?Aot(u):u.flags&128&&$Q(u)?$r:u.flags&256&&$Q(u)?ri:u.flags&2048&&$Q(u)?oo:u.flags&512&&$Q(u)?Mn:u.flags&1048576?Xf(u,Q5):u}function amn(u){return u.flags&8192?ci:u.flags&1048576?Xf(u,amn):u}function AKt(u,m){return Vat(u,m)||(u=amn(Q5(u))),my(u)}function FMs(u,m,v){if(u&&yR(u)){let D=m?v?bSe(m):m:void 0;u=AKt(u,D)}return u}function dKt(u,m,v,D){if(u&&yR(u)){let W=m?L9(v,m,D):void 0;u=AKt(u,W)}return u}function bA(u){return!!(la(u)&4&&u.target.objectFlags&8)}function vO(u){return bA(u)&&!!(u.target.combinedFlags&8)}function cmn(u){return vO(u)&&u.target.elementFlags.length===1}function Jot(u){return cfe(u,u.target.fixedLength)}function lmn(u,m,v){return Xf(u,D=>{let W=D,Y=Jot(W);return Y?v&&m>=DUt(W.target)?Ha([Y,v]):Y:wt})}function ZMs(u){let m=Jot(u);return m&&f0(m)}function cfe(u,m,v=0,D=!1,W=!1){let Y=k9(u)-v;if(m(v&12)===(m.target.elementFlags[D]&12))}function umn({value:u}){return u.base10Value==="0"}function gmn(u){return am(u,m=>bR(m,4194304))}function VMs(u){return Xf(u,WMs)}function WMs(u){return u.flags&4?vse:u.flags&8?Gpe:u.flags&64?Bse:u===Ys||u===Bs||u.flags&114691||u.flags&128&&u.value===""||u.flags&256&&u.value===0||u.flags&2048&&umn(u)?u:Oi}function uPe(u,m){let v=m&~u.flags&98304;return v===0?u:Ha(v===32768?[u,wt]:v===65536?[u,Hn]:[u,wt,Hn])}function BO(u,m=!1){pe.assert(at);let v=m?Ue:wt;return u===v||u.flags&1048576&&u.types[0]===v?u:Ha([u,v])}function OMs(u){return dy||(dy=Use("NonNullable",524288,void 0)||st),dy!==st?Xse(dy,[u]):jg([u,Jg])}function hZ(u){return at?OK(u,2097152):u}function Amn(u){return at?Ha([u,In]):u}function Uot(u){return at?sat(u,In):u}function Kot(u,m,v){return v?g3(m)?BO(u):Amn(u):u}function eSe(u,m){return bY(m)?hZ(u):ZC(m)?Uot(u):u}function mZ(u,m){return Wt&&m?sat(u,fr):u}function tSe(u){return u===fr||!!(u.flags&1048576)&&u.types[0]===fr}function jot(u){return Wt?sat(u,fr):Fv(u,524288)}function PMs(u,m){return(u.flags&524)!==0&&(m.flags&28)!==0}function zot(u){let m=la(u);return u.flags&2097152?ue(u.types,zot):!!(u.symbol&&u.symbol.flags&7040&&!(u.symbol.flags&32)&&!nct(u))||!!(m&4194304)||!!(m&1024&&zot(u.source))}function LK(u,m){let v=AA(u.flags,u.escapedName,aI(u)&8);v.declarations=u.declarations,v.parent=u.parent,v.links.type=m,v.links.target=u,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration);let D=fa(u).nameType;return D&&(v.links.nameType=D),v}function MMs(u,m){let v=$u();for(let D of N9(u)){let W=fo(D),Y=m(W);v.set(D.escapedName,Y===W?D:LK(D,Y))}return v}function rSe(u){if(!(F9(u)&&la(u)&8192))return u;let m=u.regularType;if(m)return m;let v=u,D=MMs(u,rSe),W=Qf(v.symbol,D,v.callSignatures,v.constructSignatures,v.indexInfos);return W.flags=v.flags,W.objectFlags|=v.objectFlags&-8193,u.regularType=W,W}function dmn(u,m,v){return{parent:u,propertyName:m,siblings:v,resolvedProperties:void 0}}function pmn(u){if(!u.siblings){let m=[];for(let v of pmn(u.parent))if(F9(v)){let D=UQ(v,u.propertyName);D&&PK(fo(D),W=>{m.push(W)})}u.siblings=m}return u.siblings}function HMs(u){if(!u.resolvedProperties){let m=new Map;for(let v of pmn(u))if(F9(v)&&!(la(v)&2097152))for(let D of Zd(v))m.set(D.escapedName,D);u.resolvedProperties=Do(m.values())}return u.resolvedProperties}function YMs(u,m){if(!(u.flags&4))return u;let v=fo(u),D=m&&dmn(m,u.escapedName,void 0),W=pKt(v,D);return W===v?u:LK(u,W)}function QMs(u){let m=pt.get(u.escapedName);if(m)return m;let v=LK(u,Ue);return v.flags|=16777216,pt.set(u.escapedName,v),v}function XMs(u,m){let v=$u();for(let W of N9(u))v.set(W.escapedName,YMs(W,m));if(m)for(let W of HMs(m))v.has(W.escapedName)||v.set(W.escapedName,QMs(W));let D=Qf(u.symbol,v,E,E,Er(p0(u),W=>sG(W.keyType,G1(W.type),W.isReadonly,W.declaration,W.components)));return D.objectFlags|=la(u)&266240,D}function G1(u){return pKt(u,void 0)}function pKt(u,m){if(la(u)&196608){if(m===void 0&&u.widened)return u.widened;let v;if(u.flags&98305)v=hr;else if(F9(u))v=XMs(u,m);else if(u.flags&1048576){let D=m||dmn(void 0,void 0,u.types),W=Er(u.types,Y=>Y.flags&98304?Y:pKt(Y,D));v=Ha(W,zt(W,fZ)?2:1)}else u.flags&2097152?v=jg(Er(u.types,G1)):Y5(u)&&(v=uZ(u.target,Er(gf(u),G1)));return v&&m===void 0&&(u.widened=v),v||u}return u}function qot(u){var m;let v=!1;if(la(u)&65536){if(u.flags&1048576)if(zt(u.types,fZ))v=!0;else for(let D of u.types)v||(v=qot(D));else if(Y5(u))for(let D of gf(u))v||(v=qot(D));else if(F9(u))for(let D of N9(u)){let W=fo(D);if(la(W)&65536&&(v=qot(W),!v)){let Y=(m=D.declarations)==null?void 0:m.find(oe=>{var Be;return((Be=oe.symbol.valueDeclaration)==null?void 0:Be.parent)===u.symbol.valueDeclaration});Y&&(Br(Y,Z.Object_literal_s_property_0_implicitly_has_an_1_type,xl(D),ro(G1(W))),v=!0)}}}return v}function X5(u,m,v){let D=ro(G1(m));if(wo(u)&&!Iz(ms(u),Te))return;let W;switch(u.kind){case 227:case 173:case 172:W=Rt?Z.Member_0_implicitly_has_an_1_type:Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 170:let Y=u;if(Ir(Y.name)){let oe=cv(Y.name);if((Tg(Y.parent)||Il(Y.parent)||F_(Y.parent))&&Y.parent.parameters.includes(Y)&&(An(Y,Y.name.escapedText,788968,void 0,!0)||oe&&WAe(oe))){let Be="arg"+Y.parent.parameters.indexOf(Y),Me=Md(Y.name)+(Y.dotDotDotToken?"[]":"");Uw(Rt,u,Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,Be,Me);return}}W=u.dotDotDotToken?Rt?Z.Rest_parameter_0_implicitly_has_an_any_type:Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Rt?Z.Parameter_0_implicitly_has_an_1_type:Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 209:if(W=Z.Binding_element_0_implicitly_has_an_1_type,!Rt)return;break;case 318:Br(u,Z.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 324:Rt&&kie(u.parent)&&Br(u.parent.tagName,Z.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,D);return;case 263:case 175:case 174:case 178:case 179:case 219:case 220:if(Rt&&!u.name){v===3?Br(u,Z.Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation,D):Br(u,Z.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}W=Rt?v===3?Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 201:Rt&&Br(u,Z.Mapped_object_type_implicitly_has_an_any_template_type);return;default:W=Rt?Z.Variable_0_implicitly_has_an_1_type:Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}Uw(Rt,u,W,Md(fl(u)),D)}function JMs(u,m){let v=mat(u);if(!v)return!0;let D=Ad(v),W=BI(u);switch(m){case 1:return W&1?D=L9(1,D,!!(W&2))??D:W&2&&(D=_Z(D)??D),P5(D);case 3:let Y=L9(0,D,!!(W&2));return!!Y&&P5(Y);case 2:let oe=L9(2,D,!!(W&2));return!!oe&&P5(oe)}return!1}function $ot(u,m,v){g(()=>{Rt&&la(m)&65536&&(!v||Gd(u)&&JMs(u,v))&&(qot(m)||X5(u,m,v))})}function fKt(u,m,v){let D=xE(u),W=xE(m),Y=fSe(u),oe=fSe(m),Be=oe?W-1:W,Me=Y?Be:Math.min(D,Be),He=W5(u);if(He){let $e=W5(m);$e&&v(He,$e)}for(let $e=0;$em.typeParameter),lt(u.inferences,(m,v)=>()=>(m.isFixed||(jMs(u),eat(u.inferences),m.isFixed=!0),BKt(u,v))))}function KMs(u){return JUt(lt(u.inferences,m=>m.typeParameter),lt(u.inferences,(m,v)=>()=>BKt(u,v)))}function eat(u){for(let m of u)m.isFixed||(m.inferredType=void 0)}function mKt(u,m,v){(u.intraExpressionInferenceSites??(u.intraExpressionInferenceSites=[])).push({node:m,type:v})}function jMs(u){if(u.intraExpressionInferenceSites){for(let{node:m,type:v}of u.intraExpressionInferenceSites){let D=m.kind===175?_Cn(m,2):Ky(m,2);D&&cG(u.inferences,v,D)}u.intraExpressionInferenceSites=void 0}}function CKt(u){return{typeParameter:u,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function Imn(u){return{typeParameter:u.typeParameter,candidates:u.candidates&&u.candidates.slice(),contraCandidates:u.contraCandidates&&u.contraCandidates.slice(),inferredType:u.inferredType,priority:u.priority,topLevel:u.topLevel,isFixed:u.isFixed,impliedArity:u.impliedArity}}function zMs(u){let m=Le(u.inferences,soe);return m.length?hKt(lt(m,Imn),u.signature,u.flags,u.compareTypes):void 0}function _Kt(u){return u&&u.mapper}function wO(u){let m=la(u);if(m&524288)return!!(m&1048576);let v=!!(u.flags&465829888||u.flags&524288&&!hmn(u)&&(m&4&&(u.node||zt(gf(u),wO))||m&16&&u.symbol&&u.symbol.flags&14384&&u.symbol.declarations||m&12583968)||u.flags&3145728&&!(u.flags&1024)&&!hmn(u)&&zt(u.types,wO));return u.flags&3899393&&(u.objectFlags|=524288|(v?1048576:0)),v}function hmn(u){if(u.aliasSymbol&&!u.aliasTypeArguments){let m=yp(u.aliasSymbol,266);return!!(m&&ji(m.parent,v=>v.kind===308?!0:v.kind===268?!1:"quit"))}return!1}function iSe(u,m,v=0){return!!(u===m||u.flags&3145728&&zt(u.types,D=>iSe(D,m,v))||v<3&&u.flags&16777216&&(iSe(EO(u),m,v+1)||iSe(SO(u),m,v+1)))}function qMs(u,m){let v=kv(u);return v?!!v.type&&iSe(v.type,m):iSe(Ad(u),m)}function $Ms(u){let m=$u();PK(u,D=>{if(!(D.flags&128))return;let W=pp(D.value),Y=AA(4,W);Y.links.type=hr,D.symbol&&(Y.declarations=D.symbol.declarations,Y.valueDeclaration=D.symbol.valueDeclaration),m.set(W,Y)});let v=u.flags&4?[sG($r,Jg,!1)]:E;return Qf(void 0,m,E,E,v)}function mmn(u,m,v){let D=u.id+","+m.id+","+v.id;if(V_.has(D))return V_.get(D);let W=eHs(u,m,v);return V_.set(D,W),W}function yKt(u){return!(la(u)&262144)||F9(u)&&zt(Zd(u),m=>yKt(fo(m)))||bA(u)&&zt(zQ(u),yKt)}function eHs(u,m,v){if(!(iG(u,$r)||Zd(u).length!==0&&yKt(u)))return;if(Gv(u)){let W=tat(gf(u)[0],m,v);return W?f0(W,ofe(u)):void 0}if(bA(u)){let W=lt(zQ(u),oe=>tat(oe,m,v));if(!ue(W,oe=>!!oe))return;let Y=_k(m)&4?Er(u.target.elementFlags,oe=>oe&2?1:oe):u.target.elementFlags;return bk(W,Y,u.target.readonly,u.target.labeledElementDeclarations)}let D=Ph(1040,void 0);return D.source=u,D.mappedType=m,D.constraintType=v,D}function tHs(u){let m=fa(u);return m.type||(m.type=tat(u.links.propertyType,u.links.mappedType,u.links.constraintType)||cn),m.type}function rHs(u,m,v){let D=k1(v.type,tT(m)),W=nG(m),Y=CKt(D);return cG([Y],u,W),Cmn(Y)||cn}function tat(u,m,v){let D=u.id+","+m.id+","+v.id;if(v1.has(D))return v1.get(D)||cn;I5.push(u),nK.push(m);let W=h5;Qq(u,I5,I5.length,2)&&(h5|=1),Qq(m,nK,nK.length,2)&&(h5|=2);let Y;return h5!==3&&(Y=rHs(u,m,v)),I5.pop(),nK.pop(),h5=W,v1.set(D,Y),Y}function*bKt(u,m,v,D){let W=Zd(m);for(let Y of W)if(!jfn(Y)&&(v||!(Y.flags&16777216||aI(Y)&48))){let oe=Fg(u,Y.escapedName);if(!oe)yield Y;else if(D){let Be=fo(Y);if(Be.flags&109472){let Me=fo(oe);Me.flags&1||my(Me)===my(Be)||(yield Y)}}}}function EKt(u,m,v,D){return sA(bKt(u,m,v,D))}function nHs(u,m){return!(m.target.combinedFlags&8)&&m.target.minLength>u.target.minLength||!(m.target.combinedFlags&12)&&(!!(u.target.combinedFlags&12)||m.target.fixedLengthPq(Y,W),u)===u&&rat(u,m)}return!1}function bmn(u,m){if(m.flags&2097152)return ue(m.types,v=>v===Eg||bmn(u,v));if(m.flags&4||pg(u,m))return!0;if(u.flags&128){let v=u.value;return!!(m.flags&8&&ymn(v,!1)||m.flags&64&&aie(v,!1)||m.flags&98816&&v===m.intrinsicName||m.flags&268435456&&rat(u,m)||m.flags&134217728&&nat(u,m))}if(u.flags&134217728){let v=u.texts;return v.length===2&&v[0]===""&&v[1]===""&&pg(u.types[0],m)}return!1}function Emn(u,m){return u.flags&128?Smn([u.value],E,m):u.flags&134217728?Sc(u.texts,m.texts)?lt(u.types,(v,D)=>pg(QN(v),QN(m.types[D]))?v:aHs(v)):Smn(u.texts,u.types,m):void 0}function nat(u,m){let v=Emn(u,m);return!!v&&ue(v,(D,W)=>bmn(D,m.types[W]))}function aHs(u){return u.flags&402653317?u:NK(["",""],[u])}function Smn(u,m,v){let D=u.length-1,W=u[0],Y=u[D],oe=v.texts,Be=oe.length-1,Me=oe[0],He=oe[Be];if(D===0&&W.length0){let js=xt,Co=wr;for(;Co=dn(js).indexOf(Yi,Co),!(Co>=0);){if(js++,js===u.length)return;Co=0}vn(js,Co),wr+=Yi.length}else if(wr!k(_o,Td)):xs,pu?Le(eo,Td=>!k(pu,Td)):eo]}function js(xs,eo,qc){let _o=xs.length!!Mi(pu));if(!_o||eo&&_o!==eo)return;eo=_o}return eo}function Ka(xs,eo,qc){let _o=0;if(qc&1048576){let pu,Td=xs.flags&1048576?xs.types:[xs],Af=new Array(Td.length),KC=!1;for(let EA of eo)if(Mi(EA))pu=EA,_o++;else for(let vh=0;vhAf[Mh]?void 0:vh);if(EA.length){xt(Ha(EA),pu);return}}}else for(let pu of eo)Mi(pu)?_o++:xt(xs,pu);if(qc&2097152?_o===1:_o>0)for(let pu of eo)Mi(pu)&&wr(xs,pu,1)}function _l(xs,eo,qc){if(qc.flags&1048576||qc.flags&2097152){let _o=!1;for(let pu of qc.types)_o=_l(xs,eo,pu)||_o;return _o}if(qc.flags&4194304){let _o=Mi(qc.type);if(_o&&!_o.isFixed&&!_mn(xs)){let pu=mmn(xs,eo,qc);pu&&wr(pu,_o.typeParameter,la(xs)&262144?16:8)}return!0}if(qc.flags&262144){wr(XN(xs,xs.pattern?2:0),qc,32);let _o=BK(qc);if(_o&&_l(xs,eo,_o))return!0;let pu=lt(Zd(xs),fo),Td=lt(p0(xs),Af=>Af!==Uc?Af.type:Oi);return xt(Ha(Nn(pu,Td)),nG(eo)),!0}return!1}function ka(xs,eo){if(xs.flags&16777216)xt(xs.checkType,eo.checkType),xt(xs.extendsType,eo.extendsType),xt(EO(xs),EO(eo)),xt(SO(xs),SO(eo));else{let qc=[EO(eo),SO(eo)];vn(xs,qc,eo.flags,W?64:0)}}function Kc(xs,eo){let qc=Emn(xs,eo),_o=eo.types;if(qc||ue(eo.texts,pu=>pu.length===0))for(let pu=0;pu<_o.length;pu++){let Td=qc?qc[pu]:Oi,Af=_o[pu];if(Td.flags&128&&Af.flags&8650752){let KC=Mi(Af),EA=KC?W_(KC.typeParameter):void 0;if(EA&&!Xo(EA)){let vh=EA.flags&1048576?EA.types:[EA],Mh=Kl(vh,(Ld,wS)=>Ld|wS.flags,0);if(!(Mh&4)){let Ld=Td.value;Mh&296&&!ymn(Ld,!0)&&(Mh&=-297),Mh&2112&&!aie(Ld,!0)&&(Mh&=-2113);let wS=Kl(vh,(Jf,gh)=>gh.flags&Mh?Jf.flags&4?Jf:gh.flags&4?Td:Jf.flags&134217728?Jf:gh.flags&134217728&&nat(Td,gh)?Td:Jf.flags&268435456?Jf:gh.flags&268435456&&Ld===hhn(gh.symbol,Ld)?Td:Jf.flags&128?Jf:gh.flags&128&&gh.value===Ld?gh:Jf.flags&8?Jf:gh.flags&8?_R(+Ld):Jf.flags&32?Jf:gh.flags&32?_R(+Ld):Jf.flags&256?Jf:gh.flags&256&&gh.value===+Ld?gh:Jf.flags&64?Jf:gh.flags&64?oHs(Ld):Jf.flags&2048?Jf:gh.flags&2048&&OW(gh.value)===Ld?gh:Jf.flags&16?Jf:gh.flags&16?Ld==="true"?tn:Ld==="false"?Bs:Mn:Jf.flags&512?Jf:gh.flags&512&&gh.intrinsicName===Ld?gh:Jf.flags&32768?Jf:gh.flags&32768&&gh.intrinsicName===Ld?gh:Jf.flags&65536?Jf:gh.flags&65536&&gh.intrinsicName===Ld?gh:Jf:Jf,Oi);if(!(wS.flags&131072)){xt(wS,Af);continue}}}}xt(Td,Af)}}function Vu(xs,eo){xt(SS(xs),SS(eo)),xt(nG(xs),nG(eo));let qc=R9(xs),_o=R9(eo);qc&&_o&&xt(qc,_o)}function dd(xs,eo){var qc,_o;if(la(xs)&4&&la(eo)&4&&(xs.target===eo.target||Gv(xs)&&Gv(eo))){js(gf(xs),gf(eo),oKt(xs.target));return}if(Xb(xs)&&Xb(eo)&&Vu(xs,eo),la(eo)&32&&!eo.declaration.nameType){let pu=SS(eo);if(_l(xs,eo,pu))return}if(!iHs(xs,eo)){if(Y5(xs)){if(bA(eo)){let pu=k9(xs),Td=k9(eo),Af=gf(eo),KC=eo.target.elementFlags;if(bA(xs)&&LMs(xs,eo)){for(let Mh=0;Mh0){let Td=rg(eo,qc),Af=Td.length;for(let KC=0;KC1){let m=Le(u,vKt);if(m.length){let v=Ha(m,2);return Nn(Le(u,D=>!vKt(D)),[v])}}return u}function AHs(u){return u.priority&416?jg(u.contraCandidates):NMs(u.contraCandidates)}function dHs(u,m){let v=gHs(u.candidates),D=uHs(u.typeParameter)||wK(u.typeParameter),W=!D&&u.topLevel&&(u.isFixed||!qMs(m,u.typeParameter)),Y=D?Er(v,my):W?Er(v,Q5):v,oe=u.priority&416?Ha(Y,2):TMs(Y);return G1(oe)}function BKt(u,m){let v=u.inferences[m];if(!v.inferredType){let D,W;if(u.signature){let oe=v.candidates?dHs(v,u.signature):void 0,Be=v.contraCandidates?AHs(v):void 0;if(oe||Be){let Me=oe&&(!Be||!(oe.flags&131073)&&zt(v.contraCandidates,He=>pg(oe,He))&&ue(u.inferences,He=>He!==v&&Uy(He.typeParameter)!==v.typeParameter||ue(He.candidates,$e=>pg($e,oe))));D=Me?oe:Be,W=Me?Be:oe}else if(u.flags&1)D=Vn;else{let Me=KQ(v.typeParameter);Me&&(D=Cl(Me,Zhn(O5s(u,m),u.nonFixingMapper)))}}else D=Cmn(v);v.inferredType=D||wKt(!!(u.flags&2));let Y=Uy(v.typeParameter);if(Y){let oe=Cl(Y,u.nonFixingMapper);(!D||!u.compareTypes(D,D1(oe,D)))&&(v.inferredType=W&&u.compareTypes(W,D1(oe,W))?W:oe)}GYs()}return v.inferredType}function wKt(u){return u?hr:cn}function TKt(u){let m=[];for(let v=0;vd_(m)||OB(m)||bh(m)))}function gPe(u,m,v,D){switch(u.kind){case 80:if(!jL(u)){let oe=W0(u);return oe!==st?`${D?id(D):"-1"}|${JC(m)}|${JC(v)}|${xg(oe)}`:void 0}case 110:return`0|${D?id(D):"-1"}|${JC(m)}|${JC(v)}`;case 236:case 218:return gPe(u.expression,m,v,D);case 167:let W=gPe(u.left,m,v,D);return W&&`${W}.${u.right.escapedText}`;case 212:case 213:let Y=VK(u);if(Y!==void 0){let oe=gPe(u.expression,m,v,D);return oe&&`${oe}.${Y}`}if(Qg(u)&&Ir(u.argumentExpression)){let oe=W0(u.argumentExpression);if(Xq(oe)||aSe(oe)&&!oSe(oe)){let Be=gPe(u.expression,m,v,D);return Be&&`${Be}.@${xg(oe)}`}}break;case 207:case 208:case 263:case 219:case 220:case 175:return`${id(u)}#${JC(m)}`}}function C_(u,m){switch(m.kind){case 218:case 236:return C_(u,m.expression);case 227:return zm(m)&&C_(u,m.left)||po(m)&&m.operatorToken.kind===28&&C_(u,m.right)}switch(u.kind){case 237:return m.kind===237&&u.keywordToken===m.keywordToken&&u.name.escapedText===m.name.escapedText;case 80:case 81:return jL(u)?m.kind===110:m.kind===80&&W0(u)===W0(m)||(nc(m)||mg(m))&&fn(W0(u))===Uo(m);case 110:return m.kind===110;case 108:return m.kind===108;case 236:case 218:case 239:return C_(u.expression,m);case 212:case 213:let v=VK(u);if(v!==void 0){let D=bp(m)?VK(m):void 0;if(D!==void 0)return D===v&&C_(u.expression,m.expression)}if(Qg(u)&&Qg(m)&&Ir(u.argumentExpression)&&Ir(m.argumentExpression)){let D=W0(u.argumentExpression);if(D===W0(m.argumentExpression)&&(Xq(D)||aSe(D)&&!oSe(D)))return C_(u.expression,m.expression)}break;case 167:return bp(m)&&u.right.escapedText===VK(m)&&C_(u.left,m.expression);case 227:return po(u)&&u.operatorToken.kind===28&&C_(u.right,m)}return!1}function VK(u){if(jo(u))return u.name.escapedText;if(Qg(u))return pHs(u);if(mg(u)){let m=v9(u);return m?pp(m):void 0}if(Si(u))return""+u.parent.parameters.indexOf(u)}function NKt(u){return u.flags&8192?u.escapedName:u.flags&384?pp(""+u.value):void 0}function pHs(u){return I1(u.argumentExpression)?pp(u.argumentExpression.text):Hd(u.argumentExpression)?fHs(u.argumentExpression):void 0}function fHs(u){let m=NI(u,111551,!0);if(!m||!(Xq(m)||m.flags&8))return;let v=m.valueDeclaration;if(v===void 0)return;let D=_O(v);if(D){let W=NKt(D);if(W!==void 0)return W}if(A1(v)&&sZ(v,u)){let W=_ne(v);if(W){let Y=Nu(v.parent)?eG(v):P_(W);return Y&&NKt(Y)}if(HF(v))return vW(v.name)}}function Bmn(u,m){for(;bp(u);)if(u=u.expression,C_(u,m))return!0;return!1}function WK(u,m){for(;ZC(u);)if(u=u.expression,C_(u,m))return!0;return!1}function lfe(u,m){if(u&&u.flags&1048576){let v=CIn(u,m);if(v&&aI(v)&2)return v.links.isDiscriminantProperty===void 0&&(v.links.isDiscriminantProperty=(v.links.checkFlags&192)===192&&!P5(fo(v))),!!v.links.isDiscriminantProperty}return!1}function wmn(u,m){let v;for(let D of u)if(lfe(m,D.escapedName)){if(v){v.push(D);continue}v=[D]}return v}function IHs(u,m){let v=new Map,D=0;for(let W of u)if(W.flags&61603840){let Y=Wi(W,m);if(Y){if(!$2e(Y))return;let oe=!1;PK(Y,Be=>{let Me=JC(my(Be)),He=v.get(Me);He?He!==cn&&(v.set(Me,cn),oe=!0):v.set(Me,W)}),oe||D++}}return D>=10&&D*2>=u.length?v:void 0}function APe(u){let m=u.types;if(!(m.length<10||la(u)&32768||ze(m,v=>!!(v.flags&59506688))<10)){if(u.keyPropertyName===void 0){let v=F(m,W=>W.flags&59506688?F(Zd(W),Y=>yR(fo(Y))?Y.escapedName:void 0):void 0),D=v&&IHs(m,v);u.keyPropertyName=D?v:"",u.constituentMap=D}return u.keyPropertyName.length?u.keyPropertyName:void 0}}function dPe(u,m){var v;let D=(v=u.constituentMap)==null?void 0:v.get(JC(my(m)));return D!==cn?D:void 0}function Tmn(u,m){let v=APe(u),D=v&&Wi(m,v);return D&&dPe(u,D)}function hHs(u,m){let v=APe(u),D=v&&de(m.properties,Y=>Y.symbol&&Y.kind===304&&Y.symbol.escapedName===v&&bPe(Y.initializer)),W=D&&MPe(D.initializer);return W&&dPe(u,W)}function Rmn(u,m){return C_(u,m)||Bmn(u,m)}function Nmn(u,m){if(u.arguments){for(let v of u.arguments)if(Rmn(m,v)||WK(v,m))return!0}return!!(u.expression.kind===212&&Rmn(m,u.expression.expression))}function DKt(u){return u.id<=0&&(u.id=Mtn,Mtn++),u.id}function mHs(u,m){if(!(u.flags&1048576))return pg(u,m);for(let v of u.types)if(pg(v,m))return!0;return!1}function CHs(u,m){if(u===m)return u;if(m.flags&131072)return m;let v=`A${JC(u)},${JC(m)}`;return Qy(v)??UB(v,_Hs(u,m))}function _Hs(u,m){let v=am(u,W=>mHs(m,W)),D=m.flags&512&&$Q(m)?Xf(v,Hq):v;return pg(m,D)?D:u}function kKt(u){if(la(u)&256)return!1;let m=CR(u);return!!(m.callSignatures.length||m.constructSignatures.length||m.members.get("bind")&&tX(u,Js))}function zse(u,m){return xKt(u,m)&m}function bR(u,m){return zse(u,m)!==0}function xKt(u,m){u.flags&467927040&&(u=W_(u)||cn);let v=u.flags;if(v&268435460)return at?16317953:16776705;if(v&134217856){let D=v&128&&u.value==="";return at?D?12123649:7929345:D?12582401:16776705}if(v&40)return at?16317698:16776450;if(v&256){let D=u.value===0;return at?D?12123394:7929090:D?12582146:16776450}if(v&64)return at?16317188:16775940;if(v&2048){let D=umn(u);return at?D?12122884:7928580:D?12581636:16775940}return v&16?at?16316168:16774920:v&528?at?u===Bs||u===Ys?12121864:7927560:u===Bs||u===Ys?12580616:16774920:v&524288?m&(at?83427327:83886079)?la(u)&16&&fZ(u)?at?83427327:83886079:kKt(u)?at?7880640:16728e3:at?7888800:16736160:0:v&16384?9830144:v&32768?26607360:v&65536?42917664:v&12288?at?7925520:16772880:v&67108864?at?7888800:16736160:v&131072?0:v&1048576?Kl(u.types,(D,W)=>D|xKt(W,m),0):v&2097152?yHs(u,m):83886079}function yHs(u,m){let v=uh(u,402784252),D=0,W=134217727;for(let Y of u.types)if(!(v&&Y.flags&524288)){let oe=xKt(Y,m);D|=oe,W&=oe}return D&8256|W&134209471}function Fv(u,m){return am(u,v=>bR(v,m))}function OK(u,m){let v=GKt(Fv(at&&u.flags&2?NA:u,m));if(at)switch(m){case 524288:return Dmn(v,65536,131072,33554432,Hn);case 1048576:return Dmn(v,131072,65536,16777216,wt);case 2097152:case 4194304:return Xf(v,D=>bR(D,262144)?OMs(D):D)}return v}function Dmn(u,m,v,D,W){let Y=zse(u,50528256);if(!(Y&m))return u;let oe=Ha([Jg,W]);return Xf(u,Be=>bR(Be,m)?jg([Be,!(Y&D)&&bR(Be,v)?oe:Jg]):Be)}function GKt(u){return u===NA?cn:u}function FKt(u,m){return m?Ha([rp(u),P_(m)]):u}function kmn(u,m){var v;let D=gZ(m);if(!p2(D))return nn;let W=f2(D);return Wi(u,W)||sSe((v=Wq(u,W))==null?void 0:v.type)||nn}function xmn(u,m){return kE(u,afe)&&DMs(u,m)||sSe(Z9(65,u,wt,void 0))||nn}function sSe(u){return u&&(Te.noUncheckedIndexedAccess?Ha([u,fr]):u)}function Gmn(u){return f0(Z9(65,u,wt,void 0)||nn)}function bHs(u){return u.parent.kind===210&&ZKt(u.parent)||u.parent.kind===304&&ZKt(u.parent.parent)?FKt(pPe(u),u.right):P_(u.right)}function ZKt(u){return u.parent.kind===227&&u.parent.left===u||u.parent.kind===251&&u.parent.initializer===u}function EHs(u,m){return xmn(pPe(u),u.elements.indexOf(m))}function SHs(u){return Gmn(pPe(u.parent))}function Fmn(u){return kmn(pPe(u.parent),u.name)}function vHs(u){return FKt(Fmn(u),u.objectAssignmentInitializer)}function pPe(u){let{parent:m}=u;switch(m.kind){case 250:return $r;case 251:return KPe(m)||nn;case 227:return bHs(m);case 221:return wt;case 210:return EHs(m,u);case 231:return SHs(m);case 304:return Fmn(m);case 305:return vHs(m)}return nn}function BHs(u){let m=u.parent,v=Lmn(m.parent),D=m.kind===207?kmn(v,u.propertyName||u.name):u.dotDotDotToken?Gmn(v):xmn(v,m.elements.indexOf(u));return FKt(D,u.initializer)}function Zmn(u){return sa(u).resolvedType||P_(u)}function wHs(u){return u.initializer?Zmn(u.initializer):u.parent.parent.kind===250?$r:u.parent.parent.kind===251&&KPe(u.parent.parent)||nn}function Lmn(u){return u.kind===261?wHs(u):BHs(u)}function THs(u){return u.kind===261&&u.initializer&&w9(u.initializer)||u.kind!==209&&u.parent.kind===227&&w9(u.parent.right)}function nX(u){switch(u.kind){case 218:return nX(u.expression);case 227:switch(u.operatorToken.kind){case 64:case 76:case 77:case 78:return nX(u.left);case 28:return nX(u.right)}}return u}function Vmn(u){let{parent:m}=u;return m.kind===218||m.kind===227&&m.operatorToken.kind===64&&m.left===u||m.kind===227&&m.operatorToken.kind===28&&m.right===u?Vmn(m):u}function RHs(u){return u.kind===297?my(P_(u.expression)):Oi}function iat(u){let m=sa(u);if(!m.switchTypes){m.switchTypes=[];for(let v of u.caseBlock.clauses)m.switchTypes.push(RHs(v))}return m.switchTypes}function Wmn(u){if(zt(u.caseBlock.clauses,v=>v.kind===297&&!CA(v.expression)))return;let m=[];for(let v of u.caseBlock.clauses){let D=v.kind===297?v.expression.text:void 0;m.push(D&&!k(m,D)?D:void 0)}return m}function NHs(u,m){return u.flags&1048576?!F(u.types,v=>!k(m,v)):k(m,u)}function ufe(u,m){return!!(u===m||u.flags&131072||m.flags&1048576&&DHs(u,m))}function DHs(u,m){if(u.flags&1048576){for(let v of u.types)if(!oG(m.types,v))return!1;return!0}return u.flags&1056&&Aot(u)===m?!0:oG(m.types,u)}function PK(u,m){return u.flags&1048576?F(u.types,m):m(u)}function Zv(u,m){return u.flags&1048576?zt(u.types,m):m(u)}function kE(u,m){return u.flags&1048576?ue(u.types,m):m(u)}function kHs(u,m){return u.flags&3145728?ue(u.types,m):m(u)}function am(u,m){if(u.flags&1048576){let v=u.types,D=Le(v,m);if(D===v)return u;let W=u.origin,Y;if(W&&W.flags&1048576){let oe=W.types,Be=Le(oe,Me=>!!(Me.flags&1048576)||m(Me));if(oe.length-Be.length===v.length-D.length){if(Be.length===1)return Be[0];Y=kUt(1048576,Be)}}return GUt(D,u.objectFlags&16809984,void 0,void 0,Y)}return u.flags&131072||m(u)?u:Oi}function sat(u,m){return am(u,v=>v!==m)}function xHs(u){return u.flags&1048576?u.types.length:1}function Xf(u,m,v){if(u.flags&131072)return u;if(!(u.flags&1048576))return m(u);let D=u.origin,W=D&&D.flags&1048576?D.types:u.types,Y,oe=!1;for(let Be of W){let Me=Be.flags&1048576?Xf(Be,m,v):m(Be);oe||(oe=Be!==Me),Me&&(Y?Y.push(Me):Y=[Me])}return oe?Y&&Ha(Y,v?0:1):u}function Omn(u,m,v,D){return u.flags&1048576&&v?Ha(lt(u.types,m),1,v,D):Xf(u,m)}function gfe(u,m){return am(u,v=>(v.flags&m)!==0)}function Pmn(u,m){return uh(u,134217804)&&uh(m,402655616)?Xf(u,v=>v.flags&4?gfe(m,402653316):DK(v)&&!uh(m,402653188)?gfe(m,128):v.flags&8?gfe(m,264):v.flags&64?gfe(m,2112):v):u}function qse(u){return u.flags===0}function MK(u){return u.flags===0?u.type:u}function $se(u,m){return m?{flags:0,type:u.flags&131072?Vn:u}:u}function GHs(u){let m=Ph(256);return m.elementType=u,m}function LKt(u){return Wn[u.id]||(Wn[u.id]=GHs(u))}function Mmn(u,m){let v=rSe(IZ(MPe(m)));return ufe(v,u.elementType)?u:LKt(Ha([u.elementType,v]))}function FHs(u){return u.flags&131072?HC:f0(u.flags&1048576?Ha(u.types,2):u)}function ZHs(u){return u.finalArrayType||(u.finalArrayType=FHs(u.elementType))}function fPe(u){return la(u)&256?ZHs(u):u}function LHs(u){return la(u)&256?u.elementType:Oi}function VHs(u){let m=!1;for(let v of u)if(!(v.flags&131072)){if(!(la(v)&256))return!1;m=!0}return m}function Hmn(u){let m=Vmn(u),v=m.parent,D=jo(v)&&(v.name.escapedText==="length"||v.parent.kind===214&&Ir(v.name)&&rbe(v.name)),W=v.kind===213&&v.expression===m&&v.parent.kind===227&&v.parent.operatorToken.kind===64&&v.parent.left===v&&!TF(v.parent)&&O_(P_(v.argumentExpression),296);return D||W}function WHs(u){return(nc(u)||pi(u)||ss(u)||Si(u))&&!!(Zh(u)||wo(u)&&QT(u)&&u.initializer&&FF(u.initializer)&&Fb(u.initializer))}function oat(u,m){if(u=Oh(u),u.flags&8752)return fo(u);if(u.flags&7){if(aI(u)&262144){let D=u.links.syntheticOrigin;if(D&&oat(D))return fo(u)}let v=u.valueDeclaration;if(v){if(WHs(v))return fo(u);if(nc(v)&&v.parent.parent.kind===251){let D=v.parent.parent,W=IPe(D.expression,void 0);if(W){let Y=D.awaitModifier?15:13;return Z9(Y,W,wt,void 0)}}m&&ug(m,mo(v,Z._0_needs_an_explicit_type_annotation,xl(u)))}}}function IPe(u,m){if(!(u.flags&67108864))switch(u.kind){case 80:let v=fn(W0(u));return oat(v,m);case 110:return oYs(u);case 108:return Aat(u);case 212:{let D=IPe(u.expression,m);if(D){let W=u.name,Y;if(p(W)){if(!D.symbol)return;Y=Fg(D,Gne(D.symbol,W.escapedText))}else Y=Fg(D,W.escapedText);return Y&&oat(Y,m)}return}case 218:return IPe(u.expression,m)}}function hPe(u){let m=sa(u),v=m.effectsSignature;if(v===void 0){let D;if(po(u)){let oe=toe(u.right);D=L8t(oe)}else u.parent.kind===245?D=IPe(u.expression,void 0):u.expression.kind!==108&&(ZC(u)?D=UN(eSe(Ml(u.expression),u.expression),u.expression):D=toe(u.expression));let W=rg(D&&hy(D)||cn,0),Y=W.length===1&&!W[0].typeParameters?W[0]:zt(W,Ymn)?noe(u):void 0;v=m.effectsSignature=Y&&Ymn(Y)?Y:Za}return v===Za?void 0:v}function Ymn(u){return!!(kv(u)||u.declaration&&(Yse(u.declaration)||cn).flags&131072)}function OHs(u,m){if(u.kind===1||u.kind===3)return m.arguments[u.parameterIndex];let v=JA(m.expression);return bp(v)?JA(v.expression):void 0}function PHs(u){let m=ji(u,kJ),v=ms(u),D=rs(v,m.statements.pos);PA.add(rm(v,D.start,D.length,Z.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function mPe(u){let m=aat(u,!1);return $a=u,nu=m,m}function CPe(u){let m=JA(u,!0);return m.kind===97||m.kind===227&&(m.operatorToken.kind===56&&(CPe(m.left)||CPe(m.right))||m.operatorToken.kind===57&&CPe(m.left)&&CPe(m.right))}function aat(u,m){for(;;){if(u===$a)return nu;let v=u.flags;if(v&4096){if(!m){let D=DKt(u),W=Iq[D];return W!==void 0?W:Iq[D]=aat(u,!0)}m=!1}if(v&368)u=u.antecedent;else if(v&512){let D=hPe(u.node);if(D){let W=kv(D);if(W&&W.kind===3&&!W.type){let Y=u.node.arguments[W.parameterIndex];if(Y&&CPe(Y))return!1}if(Ad(D).flags&131072)return!1}u=u.antecedent}else{if(v&4)return zt(u.antecedent,D=>aat(D,!1));if(v&8){let D=u.antecedent;if(D===void 0||D.length===0)return!1;u=D[0]}else if(v&128){let D=u.node;if(D.clauseStart===D.clauseEnd&&Z_n(D.switchStatement))return!1;u=u.antecedent}else if(v&1024){$a=void 0;let D=u.node.target,W=D.antecedent;D.antecedent=u.node.antecedents;let Y=aat(u.antecedent,!1);return D.antecedent=W,Y}else return!(v&1)}}}function cat(u,m){for(;;){let v=u.flags;if(v&4096){if(!m){let D=DKt(u),W=FQ[D];return W!==void 0?W:FQ[D]=cat(u,!0)}m=!1}if(v&496)u=u.antecedent;else if(v&512){if(u.node.expression.kind===108)return!0;u=u.antecedent}else{if(v&4)return ue(u.antecedent,D=>cat(D,!1));if(v&8)u=u.antecedent[0];else if(v&1024){let D=u.node.target,W=D.antecedent;D.antecedent=u.node.antecedents;let Y=cat(u.antecedent,!1);return D.antecedent=W,Y}else return!!(v&1)}}}function VKt(u){switch(u.kind){case 110:return!0;case 80:if(!jL(u)){let v=W0(u);return Xq(v)||aSe(v)&&!oSe(v)||!!v.valueDeclaration&&jA(v.valueDeclaration)}break;case 212:case 213:return VKt(u.expression)&&BR(sa(u).resolvedSymbol||st);case 207:case 208:let m=Gw(u.parent);return Si(m)||ULe(m)?!WKt(m):nc(m)&&NSe(m)}return!1}function CZ(u,m,v=m,D,W=(Y=>(Y=Gs(u,aU))==null?void 0:Y.flowNode)()){let Y,oe=!1,Be=0;if(Yc)return nn;if(!W)return m;ru++;let Me=ao,He=MK(xt(W));ao=Me;let $e=la(He)&256&&Hmn(u)?HC:fPe(He);if($e===gs||u.parent&&u.parent.kind===236&&!($e.flags&131072)&&Fv($e,2097152).flags&131072)return m;return $e;function Vt(){return oe?Y:(oe=!0,Y=gPe(u,m,v,D))}function xt(zn){var as;if(Be===2e3)return(as=ki)==null||as.instant(ki.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:zn.id}),Yc=!0,PHs(u),nn;Be++;let Ms;for(;;){let go=zn.flags;if(go&4096){for(let tc=Me;tc=0&&Ms.parameterIndex!(tc.flags&163840)):as.kind===222&&WK(as.expression,u)&&(go=Td(go,zn.node,tc=>!(tc.flags&131072||tc.flags&128&&tc.value==="undefined"))));let ea=_l(as,go);ea&&(go=Vu(go,ea,zn.node))}return $se(go,qse(Ms))}function Ji(zn){let as=[],Ms=!1,go=!1,ea;for(let tc of zn.antecedent){if(!ea&&tc.flags&128&&tc.node.clauseStart===tc.node.clauseEnd){ea=tc;continue}let zg=xt(tc),iA=MK(zg);if(iA===m&&m===v)return iA;Qi(as,iA),ufe(iA,v)||(Ms=!0),qse(zg)&&(go=!0)}if(ea){let tc=xt(ea),zg=MK(tc);if(!(zg.flags&131072)&&!k(as,zg)&&!Z_n(ea.node.switchStatement)){if(zg===m&&m===v)return zg;as.push(zg),ufe(zg,v)||(Ms=!0),qse(tc)&&(go=!0)}}return $se(To(as,Ms?2:1),go)}function Mi(zn){let as=DKt(zn),Ms=wse[as]||(wse[as]=new Map),go=Vt();if(!go)return m;let ea=Ms.get(go);if(ea)return ea;for(let sC=Po;sC{let sC=Ba(Bp,go)||cn;return!(sC.flags&131072)&&!(iA.flags&131072)&&rPe(iA,sC)})}function Kc(zn,as,Ms,go,ea){if((Ms===37||Ms===38)&&zn.flags&1048576){let tc=APe(zn);if(tc&&tc===VK(as)){let zg=dPe(zn,P_(go));if(zg)return Ms===(ea?37:38)?zg:yR(Wi(zg,tc)||cn)?sat(zn,zg):zn}}return ka(zn,as,tc=>qc(tc,Ms,go,ea))}function Vu(zn,as,Ms){if(Ms.clauseStartdPe(zn,tc)||cn));if(ea!==cn)return ea}return ka(zn,as,go=>Af(go,Ms))}function dd(zn,as,Ms){if(C_(u,as))return OK(zn,Ms?4194304:8388608);at&&Ms&&WK(as,u)&&(zn=OK(zn,2097152));let go=_l(as,zn);return go?ka(zn,go,ea=>Fv(ea,Ms?4194304:8388608)):zn}function Vl(zn,as,Ms){let go=Fg(zn,as);return go?!!(go.flags&16777216||aI(go)&48)||Ms:!!Wq(zn,as)||!Ms}function vf(zn,as,Ms){let go=f2(as);if(Zv(zn,tc=>Vl(tc,go,!0)))return am(zn,tc=>Vl(tc,go,Ms));if(Ms){let tc=Y3s();if(tc)return jg([zn,Xse(tc,[as,cn])])}return zn}function zI(zn,as,Ms,go,ea){return ea=ea!==(Ms.kind===112)!=(go!==38&&go!==36),S2(zn,as,ea)}function O0(zn,as,Ms){switch(as.operatorToken.kind){case 64:case 76:case 77:case 78:return dd(S2(zn,as.right,Ms),as.left,Ms);case 35:case 36:case 37:case 38:let go=as.operatorToken.kind,ea=nX(as.left),tc=nX(as.right);if(ea.kind===222&&CA(tc))return _o(zn,ea,go,tc,Ms);if(tc.kind===222&&CA(ea))return _o(zn,tc,go,ea,Ms);if(C_(u,ea))return qc(zn,go,tc,Ms);if(C_(u,tc))return qc(zn,go,ea,Ms);at&&(WK(ea,u)?zn=eo(zn,go,tc,Ms):WK(tc,u)&&(zn=eo(zn,go,ea,Ms)));let zg=_l(ea,zn);if(zg)return Kc(zn,zg,go,tc,Ms);let iA=_l(tc,zn);if(iA)return Kc(zn,iA,go,ea,Ms);if(Ld(ea))return wS(zn,go,tc,Ms);if(Ld(tc))return wS(zn,go,ea,Ms);if(TY(tc)&&!bp(ea))return zI(zn,ea,tc,go,Ms);if(TY(ea)&&!bp(tc))return zI(zn,tc,ea,go,Ms);break;case 104:return Jf(zn,as,Ms);case 103:if(p(as.left))return xs(zn,as,Ms);let Bp=nX(as.right);if(tSe(zn)&&bp(u)&&C_(u.expression,Bp)){let sC=P_(as.left);if(p2(sC)&&VK(u)===f2(sC))return Fv(zn,Ms?524288:65536)}if(C_(u,Bp)){let sC=P_(as.left);if(p2(sC))return vf(zn,sC,Ms)}break;case 28:return S2(zn,as.right,Ms);case 56:return Ms?S2(S2(zn,as.left,!0),as.right,!0):Ha([S2(zn,as.left,!1),S2(zn,as.right,!1)]);case 57:return Ms?Ha([S2(zn,as.left,!0),S2(zn,as.right,!0)]):S2(S2(zn,as.left,!1),as.right,!1)}return zn}function xs(zn,as,Ms){let go=nX(as.right);if(!C_(u,go))return zn;pe.assertNode(as.left,p);let ea=vat(as.left);if(ea===void 0)return zn;let tc=ea.parent,zg=tm(pe.checkDefined(ea.valueDeclaration,"should always have a declaration"))?fo(tc):Lp(tc);return Vv(zn,zg,Ms,!0)}function eo(zn,as,Ms,go){let ea=as===35||as===37,tc=as===35||as===36?98304:32768,zg=P_(Ms);return ea!==go&&kE(zg,Bp=>!!(Bp.flags&tc))||ea===go&&kE(zg,Bp=>!(Bp.flags&(3|tc)))?OK(zn,2097152):zn}function qc(zn,as,Ms,go){if(zn.flags&1)return zn;(as===36||as===38)&&(go=!go);let ea=P_(Ms),tc=as===35||as===36;if(ea.flags&98304){if(!at)return zn;let zg=tc?go?262144:2097152:ea.flags&65536?go?131072:1048576:go?65536:524288;return OK(zn,zg)}if(go){if(!tc&&(zn.flags&2||Zv(zn,Ek))){if(ea.flags&469893116||Ek(ea))return ea;if(ea.flags&524288)return fs}let zg=am(zn,iA=>rPe(iA,ea)||tc&&PMs(iA,ea));return Pmn(zg,ea)}return yR(ea)?am(zn,zg=>!(omn(zg)&&rPe(zg,ea))):zn}function _o(zn,as,Ms,go,ea){(Ms===36||Ms===38)&&(ea=!ea);let tc=nX(as.expression);if(!C_(u,tc)){at&&WK(tc,u)&&ea===(go.text!=="undefined")&&(zn=OK(zn,2097152));let zg=_l(tc,zn);return zg?ka(zn,zg,iA=>pu(iA,go,ea)):zn}return pu(zn,go,ea)}function pu(zn,as,Ms){return Ms?KC(zn,as.text):OK(zn,JPt.get(as.text)||32768)}function Td(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go},ea){return Ms!==go&&ue(iat(as).slice(Ms,go),ea)?Fv(zn,2097152):zn}function Af(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go}){let ea=iat(as);if(!ea.length)return zn;let tc=ea.slice(Ms,go),zg=Ms===go||k(tc,Oi);if(zn.flags&2&&!zg){let P0;for(let Jb=0;JbrPe(iA,P0)),iA);if(!zg)return Bp;let sC=am(zn,P0=>!(omn(P0)&&k(ea,P0.flags&32768?wt:my(xMs(P0)))));return Bp.flags&131072?sC:Ha([Bp,sC])}function KC(zn,as){switch(as){case"string":return EA(zn,$r,1);case"number":return EA(zn,ri,2);case"bigint":return EA(zn,oo,4);case"boolean":return EA(zn,Mn,8);case"symbol":return EA(zn,ci,16);case"object":return zn.flags&1?zn:Ha([EA(zn,fs,32),EA(zn,Hn,131072)]);case"function":return zn.flags&1?zn:EA(zn,Js,64);case"undefined":return EA(zn,wt,65536)}return EA(zn,fs,128)}function EA(zn,as,Ms){return Xf(zn,go=>JN(go,as,Sf)?bR(go,Ms)?go:Oi:tX(as,go)?as:bR(go,Ms)?jg([go,as]):Oi)}function vh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go}){let ea=Wmn(as);if(!ea)return zn;let tc=Se(as.caseBlock.clauses,Bp=>Bp.kind===298);if(Ms===go||tc>=Ms&&tczse(sC,Bp)===Bp)}let iA=ea.slice(Ms,go);return Ha(lt(iA,Bp=>Bp?KC(zn,Bp):Oi))}function Mh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go}){let ea=Se(as.caseBlock.clauses,iA=>iA.kind===298),tc=Ms===go||ea>=Ms&&eaiA.kind===297?S2(zn,iA.expression,!0):Oi))}function Ld(zn){return(jo(zn)&&Vo(zn.name)==="constructor"||Qg(zn)&&CA(zn.argumentExpression)&&zn.argumentExpression.text==="constructor")&&C_(u,zn.expression)}function wS(zn,as,Ms,go){if(go?as!==35&&as!==37:as!==36&&as!==38)return zn;let ea=P_(Ms);if(!d6t(ea)&&!mR(ea))return zn;let tc=Fg(ea,"prototype");if(!tc)return zn;let zg=fo(tc),iA=Xo(zg)?void 0:zg;if(!iA||iA===qn||iA===Js)return zn;if(Xo(zn))return iA;return am(zn,sC=>Bp(sC,iA));function Bp(sC,P0){return sC.flags&524288&&la(sC)&1||P0.flags&524288&&la(P0)&1?sC.symbol===P0.symbol:tX(sC,P0)}}function Jf(zn,as,Ms){let go=nX(as.left);if(!C_(u,go))return Ms&&at&&WK(go,u)?OK(zn,2097152):zn;let ea=as.right,tc=P_(ea);if(!H5(tc,qn))return zn;let zg=hPe(as),iA=zg&&kv(zg);if(iA&&iA.kind===1&&iA.parameterIndex===0)return Vv(zn,iA.type,Ms,!0);if(!H5(tc,Js))return zn;let Bp=Xf(tc,gh);return Xo(zn)&&(Bp===qn||Bp===Js)||!Ms&&!(Bp.flags&524288&&!Ek(Bp))?zn:Vv(zn,Bp,Ms,!0)}function gh(zn){let as=Wi(zn,"prototype");if(as&&!Xo(as))return as;let Ms=rg(zn,1);return Ms.length?Ha(lt(Ms,go=>Ad(H2e(go)))):Jg}function Vv(zn,as,Ms,go){let ea=zn.flags&1048576?`N${JC(zn)},${JC(as)},${(Ms?1:0)|(go?2:0)}`:void 0;return Qy(ea)??UB(ea,bfe(zn,as,Ms,go))}function bfe(zn,as,Ms,go){if(!Ms){if(zn===as)return Oi;if(go)return am(zn,Bp=>!H5(Bp,as));zn=zn.flags&2?NA:zn;let iA=Vv(zn,as,!0,!1);return GKt(am(zn,Bp=>!ufe(Bp,iA)))}if(zn.flags&3||zn===as)return as;let ea=go?H5:tX,tc=zn.flags&1048576?APe(zn):void 0,zg=Xf(as,iA=>{let Bp=tc&&Wi(iA,tc),sC=Bp&&dPe(zn,Bp),P0=Xf(sC||zn,go?Jb=>H5(Jb,iA)?Jb:H5(iA,Jb)?iA:Oi:Jb=>sfe(Jb,iA)?Jb:sfe(iA,Jb)?iA:tX(Jb,iA)?Jb:tX(iA,Jb)?iA:Oi);return P0.flags&131072?Xf(zn,Jb=>uh(Jb,465829888)&&ea(iA,W_(Jb)||cn)?jg([Jb,iA]):Oi):P0});return zg.flags&131072?tX(as,zn)?as:pg(zn,as)?zn:pg(as,zn)?as:jg([zn,as]):zg}function DSe(zn,as,Ms){if(Nmn(as,u)){let go=Ms||!vB(as)?hPe(as):void 0,ea=go&&kv(go);if(ea&&(ea.kind===0||ea.kind===1))return Efe(zn,ea,as,Ms)}if(tSe(zn)&&bp(u)&&jo(as.expression)){let go=as.expression;if(C_(u.expression,nX(go.expression))&&Ir(go.name)&&go.name.escapedText==="hasOwnProperty"&&as.arguments.length===1){let ea=as.arguments[0];if(CA(ea)&&VK(u)===pp(ea.text))return Fv(zn,Ms?524288:65536)}}return zn}function Efe(zn,as,Ms,go){if(as.type&&!(Xo(zn)&&(as.type===qn||as.type===Js))){let ea=OHs(as,Ms);if(ea){if(C_(u,ea))return Vv(zn,as.type,go,!1);at&&WK(ea,u)&&(go&&!bR(as.type,65536)||!go&&kE(as.type,wPe))&&(zn=OK(zn,2097152));let tc=_l(ea,zn);if(tc)return ka(zn,tc,zg=>Vv(zg,as.type,go,!1))}}return zn}function S2(zn,as,Ms){if(bY(as)||po(as.parent)&&(as.parent.operatorToken.kind===61||as.parent.operatorToken.kind===78)&&as.parent.left===as)return kSe(zn,as,Ms);switch(as.kind){case 80:if(!C_(u,as)&&re<5){let go=W0(as);if(Xq(go)){let ea=go.valueDeclaration;if(ea&&nc(ea)&&!ea.type&&ea.initializer&&VKt(u)){re++;let tc=S2(zn,ea.initializer,Ms);return re--,tc}}}case 110:case 108:case 212:case 213:return dd(zn,as,Ms);case 214:return DSe(zn,as,Ms);case 218:case 236:case 239:return S2(zn,as.expression,Ms);case 227:return O0(zn,as,Ms);case 225:if(as.operator===54)return S2(zn,as.operand,!Ms);break}return zn}function kSe(zn,as,Ms){if(C_(u,as))return OK(zn,Ms?2097152:262144);let go=_l(as,zn);return go?ka(zn,go,ea=>Fv(ea,Ms?2097152:262144)):zn}}function MHs(u,m){if(u=fn(u),(m.kind===80||m.kind===81)&&($7(m)&&(m=m.parent),JT(m)&&(!TF(m)||x3(m)))){let v=Uot(x3(m)&&m.kind===212?Sat(m,void 0,!0):P_(m));if(fn(sa(m).resolvedSymbol)===u)return v}return UT(m)&&Av(m.parent)&&JQ(m.parent)?aot(m.parent.symbol):Ebe(m)&&x3(m.parent)?T9(u):hR(u)}function Afe(u){return ji(u.parent,m=>Eu(m)&&!ML(m)||m.kind===269||m.kind===308||m.kind===173)}function HHs(u){return(u.lastAssignmentPos!==void 0||oSe(u)&&u.lastAssignmentPos!==void 0)&&u.lastAssignmentPos<0}function oSe(u){return!Qmn(u,void 0)}function Qmn(u,m){let v=ji(u.valueDeclaration,lat);if(!v)return!1;let D=sa(v);return D.flags&131072||(D.flags|=131072,YHs(v)||Jmn(v)),!u.lastAssignmentPos||m&&Math.abs(u.lastAssignmentPos)m.kind!==233&&Xmn(m.name))}function YHs(u){return!!ji(u.parent,m=>lat(m)&&!!(sa(m).flags&131072))}function lat(u){return Gd(u)||al(u)}function Jmn(u){switch(u.kind){case 80:let m=jD(u);if(m!==0){let W=W0(u),Y=m===1||W.lastAssignmentPos!==void 0&&W.lastAssignmentPos<0;if(aSe(W)){if(W.lastAssignmentPos===void 0||Math.abs(W.lastAssignmentPos)!==Number.MAX_VALUE){let oe=ji(u,lat),Be=ji(W.valueDeclaration,lat);W.lastAssignmentPos=oe===Be?QHs(u,W.valueDeclaration):Number.MAX_VALUE}Y&&W.lastAssignmentPos>0&&(W.lastAssignmentPos*=-1)}}return;case 282:let v=u.parent.parent,D=u.propertyName||u.name;if(!u.isTypeOnly&&!v.isTypeOnly&&!v.moduleSpecifier&&D.kind!==11){let W=NI(D,111551,!0,!0);if(W&&aSe(W)){let Y=W.lastAssignmentPos!==void 0&&W.lastAssignmentPos<0?-1:1;W.lastAssignmentPos=Y*Number.MAX_VALUE}}return;case 265:case 266:case 267:return}uc(u)||Lu(u,Jmn)}function QHs(u,m){let v=u.pos;for(;u&&u.pos>m.pos;){switch(u.kind){case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 259:case 264:v=u.end}u=u.parent}return v}function Xq(u){return u.flags&3&&(n8t(u)&6)!==0}function aSe(u){let m=u.valueDeclaration&&Gw(u.valueDeclaration);return!!m&&(Si(m)||nc(m)&&(fQ(m.parent)||Umn(m)))}function Umn(u){return!!(u.parent.flags&1)&&!(Hc(u)&32||u.parent.parent.kind===244&&fc(u.parent.parent.parent))}function XHs(u){let m=sa(u);if(m.parameterInitializerContainsUndefined===void 0){if(!HN(u,8))return vK(u.symbol),!0;let v=!!bR(pfe(u,0),16777216);if(!xr())return vK(u.symbol),!0;m.parameterInitializerContainsUndefined??(m.parameterInitializerContainsUndefined=v)}return m.parameterInitializerContainsUndefined}function JHs(u,m){return at&&m.kind===170&&m.initializer&&bR(u,16777216)&&!XHs(m)?Fv(u,524288):u}function UHs(u,m){let v=m.parent;return v.kind===212||v.kind===167||v.kind===214&&v.expression===m||v.kind===215&&v.expression===m||v.kind===213&&v.expression===m&&!(Zv(u,jmn)&&xK(P_(v.argumentExpression)))}function Kmn(u){return u.flags&2097152?zt(u.types,Kmn):!!(u.flags&465829888&&QN(u).flags&1146880)}function jmn(u){return u.flags&2097152?zt(u.types,jmn):!!(u.flags&465829888&&!uh(QN(u),98304))}function KHs(u,m){let v=(Ir(u)||jo(u)||Qg(u))&&!((iR(u.parent)||xU(u.parent))&&u.parent.tagName===u)&&(m&&m&32?Ky(u,8):Ky(u,void 0));return v&&!P5(v)}function OKt(u,m,v){return Jse(u)&&(u=u.baseType),!(v&&v&2)&&Zv(u,Kmn)&&(UHs(u,m)||KHs(m,v))?Xf(u,QN):u}function zmn(u){return!!ji(u,m=>{let v=m.parent;return v===void 0?"quit":yf(v)?v.expression===m&&Hd(m):D0(v)?v.name===m||v.propertyName===m:!1})}function Jq(u,m,v,D){if(Yt&&!(u.flags&33554432&&!ss(u)&&!pi(u)))switch(m){case 1:return uat(u);case 2:return qmn(u,v,D);case 3:return $mn(u);case 4:return PKt(u);case 5:return eCn(u);case 6:return tCn(u);case 7:return rCn(u);case 8:return nCn(u);case 0:{if(Ir(u)&&(JT(u)||l0(u.parent)||Zm(u.parent)&&u.parent.moduleReference===u)&&aCn(u)){if(LJ(u.parent)&&(jo(u.parent)?u.parent.expression:u.parent.left)!==u)return;uat(u);return}if(LJ(u)){let W=u;for(;LJ(W);){if(kw(W))return;W=W.parent}return qmn(u)}return yf(u)?$mn(u):nI(u)||Yw(u)?PKt(u):Zm(u)?_3(u)||jat(u)?tCn(u):void 0:D0(u)?rCn(u):((Gd(u)||Il(u))&&eCn(u),!Te.emitDecoratorMetadata||!hQ(u)||!h1(u)||!u.modifiers||!eU(Ke,u,u.parent,u.parent.parent)?void 0:nCn(u))}default:pe.assertNever(m,`Unhandled reference hint: ${m}`)}}function uat(u){let m=W0(u);m&&m!==ot&&m!==st&&!jL(u)&&_Pe(m,u)}function qmn(u,m,v){let D=jo(u)?u.expression:u.left;if(DF(D)||!Ir(D))return;let W=W0(D);if(!W||W===st)return;if(lS(Te)||Lb(Te)&&zmn(u)){_Pe(W,u);return}let Y=v||DI(D);if(Xo(Y)||Y===Vn){_Pe(W,u);return}let oe=m;if(!oe&&!v){let Be=jo(u)?u.name:u.right,Me=p(Be)&&TPe(Be.escapedText,Be),He=jD(u),$e=hy(He!==0||a8t(u)?G1(Y):Y);oe=p(Be)?Me&&Bat($e,Me)||void 0:Fg($e,Be.escapedText)}oe&&(TSe(oe)||oe.flags&8&&u.parent.kind===307)||_Pe(W,u)}function $mn(u){if(Ir(u.expression)){let m=u.expression,v=fn(NI(m,-1,!0,!0,u));v&&_Pe(v,m)}}function PKt(u){if(!bat(u)){let m=PA&&Te.jsx===2?Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:void 0,v=Jw(u),D=nI(u)?u.tagName:u,W=Te.jsx!==1&&Te.jsx!==3,Y;if(Yw(u)&&v==="null"||(Y=An(D,v,W?111551:111167,m,!0)),Y&&(Y.isReferenced=-1,Yt&&Y.flags&2097152&&!fR(Y)&&gat(Y)),Yw(u)){let oe=ms(u),Be=f6t(oe);if(Be){let Me=T0(Be).escapedText;An(D,Me,W?111551:111167,m,!0)}}}}function eCn(u){if(Ze<2&&BI(u)&2){let m=Fb(u);jHs(m)}}function tCn(u){Ga(u,32)&&iCn(u)}function rCn(u){if(!u.parent.parent.moduleSpecifier&&!u.isTypeOnly&&!u.parent.parent.isTypeOnly){let m=u.propertyName||u.name;if(m.kind===11)return;let v=An(m,m.escapedText,2998271,void 0,!0);if(!(v&&(v===dt||v===pr||v.declarations&&fc(Tn(v.declarations[0]))))){let D=v&&(v.flags&2097152?XC(v):v);(!D||Qb(D)&111551)&&(iCn(u),uat(m))}return}}function nCn(u){if(Te.emitDecoratorMetadata){let m=de(u.modifiers,So);if(!m)return;switch(iC(m,16),u.kind){case 264:let v=pN(u);if(v)for(let oe of v.parameters)eoe(Hat(oe));break;case 178:case 179:let D=u.kind===178?179:178,W=yp(Uo(u),D);eoe(JQ(u)||W&&JQ(W));break;case 175:for(let oe of u.parameters)eoe(Hat(oe));eoe(Fb(u));break;case 173:eoe(Zh(u));break;case 170:eoe(Hat(u));let Y=u.parent;for(let oe of Y.parameters)eoe(Hat(oe));eoe(Fb(Y));break}}}function _Pe(u,m){if(Yt&&gK(u,111551)&&!qY(m)){let v=XC(u);Qb(u,!0)&1160127&&(lS(Te)||Lb(Te)&&zmn(m)||!TSe(fn(v)))&&gat(u)}}function gat(u){pe.assert(Yt);let m=fa(u);if(!m.referenced){m.referenced=!0;let v=Yb(u);if(!v)return pe.fail();if(_3(v)&&Qb(Oh(u))&111551){let D=T0(v.moduleReference);uat(D)}}}function iCn(u){let m=Uo(u),v=XC(m);v&&(v===st||Qb(m,!0)&111551&&!TSe(v))&&gat(m)}function sCn(u,m){if(!u)return;let v=T0(u),D=(u.kind===80?788968:1920)|2097152,W=An(v,v.escapedText,D,void 0,!0);if(W&&W.flags&2097152){if(Yt&&qi(W)&&!TSe(XC(W))&&!fR(W))gat(W);else if(m&&lS(Te)&&o0(Te)>=5&&!qi(W)&&!zt(W.declarations,cN)){let Y=Br(u,Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),oe=de(W.declarations||E,C9);oe&&ug(Y,mo(oe,Z._0_was_imported_here,Vo(v)))}}}function jHs(u){sCn(u&&pne(u),!1)}function eoe(u){let m=J8t(u);m&&mC(m)&&sCn(m,!0)}function zHs(u,m){var v;let D=fo(u),W=u.valueDeclaration;if(W){if(mg(W)&&!W.initializer&&!W.dotDotDotToken&&W.parent.elements.length>=2){let Y=W.parent.parent,oe=Gw(Y);if(oe.kind===261&&aX(oe)&6||oe.kind===170){let Be=sa(Y);if(!(Be.flags&4194304)){Be.flags|=4194304;let Me=Cc(Y,0),He=Me&&Xf(Me,QN);if(Be.flags&=-4194305,He&&He.flags&1048576&&!(oe.kind===170&&WKt(oe))){let $e=W.parent,Vt=CZ($e,He,He,void 0,m.flowNode);return Vt.flags&131072?Oi:mO(W,Vt,!0)}}}}if(Si(W)&&!W.type&&!W.initializer&&!W.dotDotDotToken){let Y=W.parent;if(Y.parameters.length>=2&&Zot(Y)){let oe=lSe(Y);if(oe&&oe.parameters.length===1&&x0(oe)){let Be=qpe(Cl(fo(oe.parameters[0]),(v=iX(Y))==null?void 0:v.nonFixingMapper));if(Be.flags&1048576&&kE(Be,bA)&&!zt(Y.parameters,WKt)){let Me=CZ(Y,Be,Be,void 0,m.flowNode),He=Y.parameters.indexOf(W)-(xW(Y)?1:0);return k1(Me,_R(He))}}}}}return D}function oCn(u,m){if(jL(u))return;if(m===ot){if(u8t(u,!0)){Br(u,Z.arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks);return}let Y=f1(u);if(Y)for(Ze<2&&(Y.kind===220?Br(u,Z.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):Ga(Y,1024)&&Br(u,Z.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),sa(Y).flags|=512;Y&&uA(Y);)Y=f1(Y),Y&&(sa(Y).flags|=512);return}let v=fn(m),D=o6t(v,u);fy(D)&&LUt(u,D)&&D.declarations&&KB(u,D.declarations,u.escapedText);let W=v.valueDeclaration;if(W&&v.flags&32&&xa(W)&&W.name!==u){let Y=i0(u,!1,!1);for(;Y.kind!==308&&Y.parent!==W;)Y=i0(Y,!1,!1);Y.kind!==308&&(sa(W).flags|=262144,sa(Y).flags|=262144,sa(u).flags|=536870912)}rYs(u,m)}function qHs(u,m){if(jL(u))return yPe(u);let v=W0(u);if(v===st)return nn;if(oCn(u,v),v===ot)return u8t(u)?nn:fo(v);aCn(u)&&Jq(u,1);let D=fn(v),W=D.valueDeclaration,Y=W;if(W&&W.kind===209&&k(JB,W.parent)&&ji(u,Mi=>Mi===W.parent))return ds;let oe=zHs(D,u),Be=jD(u);if(Be){if(!(D.flags&3)&&!(wo(u)&&D.flags&512)){let Mi=D.flags&384?Z.Cannot_assign_to_0_because_it_is_an_enum:D.flags&32?Z.Cannot_assign_to_0_because_it_is_a_class:D.flags&1536?Z.Cannot_assign_to_0_because_it_is_a_namespace:D.flags&16?Z.Cannot_assign_to_0_because_it_is_a_function:D.flags&2097152?Z.Cannot_assign_to_0_because_it_is_an_import:Z.Cannot_assign_to_0_because_it_is_not_a_variable;return Br(u,Mi,xl(v)),nn}if(BR(D))return D.flags&3?Br(u,Z.Cannot_assign_to_0_because_it_is_a_constant,xl(v)):Br(u,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,xl(v)),nn}let Me=D.flags&2097152;if(D.flags&3){if(Be===1)return fAe(u)?IZ(oe):oe}else if(Me)W=Yb(v);else return oe;if(!W)return oe;oe=OKt(oe,u,m);let He=Gw(W).kind===170,$e=Afe(W),Vt=Afe(u),xt=Vt!==$e,wr=u.parent&&u.parent.parent&&Mx(u.parent)&&ZKt(u.parent.parent),dn=v.flags&134217728,vn=oe===Sn||oe===HC,ii=vn&&u.parent.kind===236;for(;Vt!==$e&&(Vt.kind===219||Vt.kind===220||tAe(Vt))&&(Xq(D)&&oe!==HC||aSe(D)&&Qmn(D,u));)Vt=Afe(Vt);let Yi=Y&&nc(Y)&&!Y.initializer&&!Y.exclamationToken&&Umn(Y)&&!HHs(v),js=He||Me||xt&&!Yi||wr||dn||$Hs(u,W)||oe!==Sn&&oe!==HC&&(!at||(oe.flags&16387)!==0||qY(u)||RKt(u)||u.parent.kind===282)||u.parent.kind===236||W.kind===261&&W.exclamationToken||W.flags&33554432,Co=ii?wt:js?He?JHs(oe,W):oe:vn?wt:BO(oe),Ji=ii?hZ(CZ(u,oe,Co,Vt)):CZ(u,oe,Co,Vt);if(!Hmn(u)&&(oe===Sn||oe===HC)){if(Ji===Sn||Ji===HC)return Rt&&(Br(fl(W),Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,xl(v),ro(Ji)),Br(u,Z.Variable_0_implicitly_has_an_1_type,xl(v),ro(Ji))),BSe(Ji)}else if(!js&&!jse(oe)&&jse(Ji))return Br(u,Z.Variable_0_is_used_before_being_assigned,xl(v)),oe;return Be?IZ(Ji):Ji}function $Hs(u,m){if(mg(m)){let v=ji(u,mg);return v&&Gw(v)===Gw(m)}}function aCn(u){var m;let v=u.parent;if(v){if(jo(v)&&v.expression===u||D0(v)&&v.isTypeOnly)return!1;let D=(m=v.parent)==null?void 0:m.parent;if(D&&Vh(D)&&D.isTypeOnly)return!1}return!0}function eYs(u,m){return!!ji(u,v=>v===m?"quit":Eu(v)||v.parent&&pi(v.parent)&&!tm(v.parent)&&v.parent.initializer===v)}function tYs(u,m){return ji(u,v=>v===m?"quit":v===m.initializer||v===m.condition||v===m.incrementor||v===m.statement)}function MKt(u){return ji(u,m=>!m||nbe(m)?"quit":HT(m,!1))}function rYs(u,m){if(Ze>=2||!(m.flags&34)||!m.valueDeclaration||al(m.valueDeclaration)||m.valueDeclaration.parent.kind===300)return;let v=sS(m.valueDeclaration),D=eYs(u,v),W=MKt(v);if(W){if(D){let Y=!0;if(Y3(v)){let oe=UL(m.valueDeclaration,262);if(oe&&oe.parent===v){let Be=tYs(u.parent,v);if(Be){let Me=sa(Be);Me.flags|=8192;let He=Me.capturedBlockScopeBindings||(Me.capturedBlockScopeBindings=[]);Qi(He,m),Be===v.initializer&&(Y=!1)}}}Y&&(sa(W).flags|=4096)}if(Y3(v)){let Y=UL(m.valueDeclaration,262);Y&&Y.parent===v&&iYs(u,v)&&(sa(m.valueDeclaration).flags|=65536)}sa(m.valueDeclaration).flags|=32768}D&&(sa(m.valueDeclaration).flags|=16384)}function nYs(u,m){let v=sa(u);return!!v&&k(v.capturedBlockScopeBindings,Uo(m))}function iYs(u,m){let v=u;for(;v.parent.kind===218;)v=v.parent;let D=!1;if(TF(v))D=!0;else if(v.parent.kind===225||v.parent.kind===226){let W=v.parent;D=W.operator===46||W.operator===47}return D?!!ji(v,W=>W===m?"quit":W===m.statement):!1}function HKt(u,m){if(sa(u).flags|=2,m.kind===173||m.kind===177){let v=m.parent;sa(v).flags|=4}else sa(m).flags|=4}function cCn(u){return xy(u)?u:Eu(u)?void 0:Lu(u,cCn)}function YKt(u){let m=Uo(u),v=Lp(m);return lZ(v)===Mt}function lCn(u,m,v){let D=m.parent;JL(D)&&!YKt(D)&&aU(u)&&u.flowNode&&!cat(u.flowNode,!1)&&Br(u,v)}function sYs(u,m){pi(m)&&tm(m)&&Ke&&m.initializer&&nl(m.initializer,u.pos)&&h1(m.parent)&&Br(u,Z.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function yPe(u){let m=qY(u),v=i0(u,!0,!0),D=!1,W=!1;for(v.kind===177&&lCn(u,v,Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(v.kind===220&&(v=i0(v,!1,!W),D=!0),v.kind===168){v=i0(v,!D,!1),W=!0;continue}break}if(sYs(u,v),W)Br(u,Z.this_cannot_be_referenced_in_a_computed_property_name);else switch(v.kind){case 268:Br(u,Z.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 267:Br(u,Z.this_cannot_be_referenced_in_current_location);break}!m&&D&&Ze<2&&HKt(u,v);let Y=QKt(u,!0,v);if(Lt){let oe=fo(pr);if(Y===oe&&D)Br(u,Z.The_containing_arrow_function_captures_the_global_value_of_this);else if(!Y){let Be=Br(u,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!al(v)){let Me=QKt(v);Me&&Me!==oe&&ug(Be,mo(v,Z.An_outer_value_of_this_is_shadowed_by_this_container))}}}return Y||hr}function QKt(u,m=!0,v=i0(u,!1,!1)){let D=wo(u);if(Eu(v)&&(!UKt(u)||xW(v))){let W=oot(v)||D&&cYs(v);if(!W){let Y=aYs(v);if(D&&Y){let oe=Ml(Y).symbol;oe&&oe.members&&oe.flags&16&&(W=Lp(oe).thisType)}else KN(v)&&(W=Lp(qA(v.symbol)).thisType);W||(W=XKt(v))}if(W)return CZ(u,W)}if(xa(v.parent)){let W=Uo(v.parent),Y=lg(v)?fo(W):Lp(W).thisType;return CZ(u,Y)}if(al(v))if(v.commonJsModuleIndicator){let W=Uo(v);return W&&fo(W)}else{if(v.externalModuleIndicator)return wt;if(m)return fo(pr)}}function oYs(u){let m=i0(u,!1,!1);if(Eu(m)){let v=vS(m);if(v.thisParameter)return oat(v.thisParameter)}if(xa(m.parent)){let v=Uo(m.parent);return lg(m)?fo(v):Lp(v).thisType}}function aYs(u){if(u.kind===219&&po(u.parent)&&oI(u.parent)===3)return u.parent.left.expression.expression;if(u.kind===175&&u.parent.kind===211&&po(u.parent.parent)&&oI(u.parent.parent)===6)return u.parent.parent.left.expression;if(u.kind===219&&u.parent.kind===304&&u.parent.parent.kind===211&&po(u.parent.parent.parent)&&oI(u.parent.parent.parent)===6)return u.parent.parent.parent.left.expression;if(u.kind===219&&Cm(u.parent)&&Ir(u.parent.name)&&(u.parent.name.escapedText==="value"||u.parent.name.escapedText==="get"||u.parent.name.escapedText==="set")&&ag(u.parent.parent)&&Ll(u.parent.parent.parent)&&u.parent.parent.parent.arguments[2]===u.parent.parent&&oI(u.parent.parent.parent)===9)return u.parent.parent.parent.arguments[0].expression;if(gu(u)&&Ir(u.name)&&(u.name.escapedText==="value"||u.name.escapedText==="get"||u.name.escapedText==="set")&&ag(u.parent)&&Ll(u.parent.parent)&&u.parent.parent.arguments[2]===u.parent&&oI(u.parent.parent)===9)return u.parent.parent.arguments[0].expression}function cYs(u){let m=kb(u);if(m&&m.typeExpression)return tl(m.typeExpression);let v=efe(u);if(v)return W5(v)}function lYs(u,m){return!!ji(u,v=>Gd(v)?"quit":v.kind===170&&v.parent===m)}function Aat(u){let m=u.parent.kind===214&&u.parent.expression===u,v=x7(u,!0),D=v,W=!1,Y=!1;if(!m){for(;D&&D.kind===220;)Ga(D,1024)&&(Y=!0),D=x7(D,!0),W=Ze<2;D&&Ga(D,1024)&&(Y=!0)}let oe=0;if(!D||!$e(D)){let Vt=ji(u,xt=>xt===D?"quit":xt.kind===168);return Vt&&Vt.kind===168?Br(u,Z.super_cannot_be_referenced_in_a_computed_property_name):m?Br(u,Z.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(xa(D.parent)||D.parent.kind===211)?Br(u,Z.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):Br(u,Z.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),nn}if(!m&&v.kind===177&&lCn(u,D,Z.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),lg(D)||m?(oe=32,!m&&Ze>=2&&Ze<=8&&(pi(D)||Al(D))&&Uge(u.parent,Vt=>{(!al(Vt)||Sl(Vt))&&(sa(Vt).flags|=2097152)})):oe=16,sa(u).flags|=oe,D.kind===175&&Y&&(Fy(u.parent)&&TF(u.parent)?sa(D).flags|=256:sa(D).flags|=128),W&&HKt(u.parent,D),D.parent.kind===211)return Ze<2?(Br(u,Z.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),nn):hr;let Be=D.parent;if(!JL(Be))return Br(u,Z.super_can_only_be_referenced_in_a_derived_class),nn;if(YKt(Be))return m?nn:Mt;let Me=Lp(Uo(Be)),He=Me&&eT(Me)[0];if(!He)return nn;if(D.kind===177&&lYs(u,D))return Br(u,Z.super_cannot_be_referenced_in_constructor_arguments),nn;return oe===32?lZ(Me):D1(He,Me.thisType);function $e(Vt){return m?Vt.kind===177:xa(Vt.parent)||Vt.parent.kind===211?lg(Vt)?Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===176:Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===172||Vt.kind===177:!1}}function uCn(u){return(u.kind===175||u.kind===178||u.kind===179)&&u.parent.kind===211?u.parent:u.kind===219&&u.parent.kind===304?u.parent.parent:void 0}function gCn(u){return la(u)&4&&u.target===b2?gf(u)[0]:void 0}function uYs(u){return Xf(u,m=>m.flags&2097152?F(m.types,gCn):gCn(m))}function ACn(u,m){let v=u,D=m;for(;D;){let W=uYs(D);if(W)return W;if(v.parent.kind!==304)break;v=v.parent.parent,D=U5(v,void 0)}}function XKt(u){if(u.kind===220)return;if(Zot(u)){let v=lSe(u);if(v){let D=v.thisParameter;if(D)return fo(D)}}let m=wo(u);if(Lt||m){let v=uCn(u);if(v){let W=U5(v,void 0),Y=ACn(v,W);return Y?Cl(Y,_Kt(iX(v))):G1(W?hZ(W):DI(v))}let D=fv(u.parent);if(zm(D)){let W=D.left;if(bp(W)){let{expression:Y}=W;if(m&&Ir(Y)){let oe=ms(D);if(oe.commonJsModuleIndicator&&W0(Y)===oe.symbol)return}return G1(DI(Y))}}}}function dCn(u){let m=u.parent;if(!Zot(m))return;let v=ML(m);if(v&&v.arguments){let W=Nat(v),Y=m.parameters.indexOf(u);if(u.dotDotDotToken)return m8t(W,Y,W.length,hr,void 0,0);let oe=sa(v),Be=oe.resolvedSignature;oe.resolvedSignature=Ls;let Me=Y0)return Xpe(v.name,!0,!1)}}function pYs(u,m){let v=f1(u);if(v){let D=dat(v,m);if(D){let W=BI(v);if(W&1){let Y=(W&2)!==0;D.flags&1048576&&(D=am(D,Be=>!!L9(1,Be,Y)));let oe=L9(1,D,(W&2)!==0);if(!oe)return;D=oe}if(W&2){let Y=Xf(D,_Z);return Y&&Ha([Y,x_n(Y)])}return D}}}function fYs(u,m){let v=Ky(u,m);if(v){let D=_Z(v);return D&&Ha([D,x_n(D)])}}function IYs(u,m){let v=f1(u);if(v){let D=BI(v),W=dat(v,m);if(W){let Y=(D&2)!==0;if(!u.asteriskToken&&W.flags&1048576&&(W=am(W,oe=>!!L9(1,oe,Y))),u.asteriskToken){let oe=i6t(W,Y),Be=oe?.yieldType??Vn,Me=Ky(u,m)??Vn,He=oe?.nextType??cn,$e=Fat(Be,Me,He,!1);if(Y){let Vt=Fat(Be,Me,He,!0);return Ha([$e,Vt])}return $e}return L9(0,W,Y)}}}function UKt(u){let m=!1;for(;u.parent&&!Eu(u.parent);){if(Si(u.parent)&&(m||u.parent.initializer===u))return!0;mg(u.parent)&&u.parent.initializer===u&&(m=!0),u=u.parent}return!1}function pCn(u,m){let v=!!(BI(m)&2),D=dat(m,void 0);if(D)return L9(u,D,v)||void 0}function dat(u,m){let v=Yse(u);if(v)return v;let D=mat(u);if(D&&!Iot(D)){let Y=Ad(D),oe=BI(u);return oe&1?am(Y,Be=>!!(Be.flags&58998787)||M8t(Be,oe,void 0)):oe&2?am(Y,Be=>!!(Be.flags&58998787)||!!hfe(Be)):Y}let W=ML(u);if(W)return Ky(W,m)}function fCn(u,m){let D=Nat(u).indexOf(m);return D===-1?void 0:KKt(u,D)}function KKt(u,m){if(jp(u))return m===0?$r:m===1?QIn(!1):hr;let v=sa(u).resolvedSignature===Go?Go:noe(u);if(nI(u)&&m===0)return hat(v,u);let D=v.parameters.length-1;return x0(v)&&m>=D?k1(fo(v.parameters[D]),_R(m-D),256):SR(v,m)}function hYs(u){let m=k8t(u);return m?TK(m):void 0}function mYs(u,m){if(u.parent.kind===216)return fCn(u.parent,m)}function CYs(u,m){let v=u.parent,{left:D,operatorToken:W,right:Y}=v;switch(W.kind){case 64:case 77:case 76:case 78:return u===Y?yYs(v):void 0;case 57:case 61:let oe=Ky(v,m);return u===Y&&(oe&&oe.pattern||!oe&&!xZe(v))?P_(D):oe;case 56:case 28:return u===Y?Ky(v,m):void 0;default:return}}function _Ys(u){if(yE(u)&&u.symbol)return u.symbol;if(Ir(u))return W0(u);if(jo(u)){let v=P_(u.expression);return p(u.name)?m(v,u.name):Fg(v,u.name.escapedText)}if(Qg(u)){let v=DI(u.argumentExpression);if(!p2(v))return;let D=P_(u.expression);return Fg(D,f2(v))}return;function m(v,D){let W=TPe(D.escapedText,D);return W&&Bat(v,W)}}function yYs(u){var m,v;let D=oI(u);switch(D){case 0:case 4:let W=_Ys(u.left),Y=W&&W.valueDeclaration;if(Y&&(pi(Y)||ss(Y))){let Me=Zh(Y);return Me&&Cl(tl(Me),fa(W).mapper)||(pi(Y)?Y.initializer&&P_(u.left):void 0)}return D===0?P_(u.left):ICn(u);case 5:if(pat(u,D))return ICn(u);if(!yE(u.left)||!u.left.symbol)return P_(u.left);{let Me=u.left.symbol.valueDeclaration;if(!Me)return;let He=Ma(u.left,bp),$e=Zh(Me);if($e)return tl($e);if(Ir(He.expression)){let Vt=He.expression,xt=An(Vt,Vt.escapedText,111551,void 0,!0);if(xt){let wr=xt.valueDeclaration&&Zh(xt.valueDeclaration);if(wr){let dn=KD(He);if(dn!==void 0)return J5(tl(wr),dn)}return}}return wo(Me)||Me===u.left?void 0:P_(u.left)}case 1:case 6:case 3:case 2:let oe;D!==2&&(oe=yE(u.left)?(m=u.left.symbol)==null?void 0:m.valueDeclaration:void 0),oe||(oe=(v=u.symbol)==null?void 0:v.valueDeclaration);let Be=oe&&Zh(oe);return Be?tl(Be):void 0;case 7:case 8:case 9:return pe.fail("Does not apply");default:return pe.assertNever(D)}}function pat(u,m=oI(u)){if(m===4)return!0;if(!wo(u)||m!==5||!Ir(u.left.expression))return!1;let v=u.left.expression.escapedText,D=An(u.left,v,111551,void 0,!0,!0);return oAe(D?.valueDeclaration)}function ICn(u){if(!u.symbol)return P_(u.left);if(u.symbol.valueDeclaration){let W=Zh(u.symbol.valueDeclaration);if(W){let Y=tl(W);if(Y)return Y}}let m=Ma(u.left,bp);if(!u2(i0(m.expression,!1,!1)))return;let v=yPe(m.expression),D=KD(m);return D!==void 0&&J5(v,D)||void 0}function bYs(u){return!!(aI(u)&262144&&!u.links.type&&nt(u,0)>=0)}function jKt(u,m){if(u.flags&16777216){let v=u;return!!(qB(EO(v)).flags&131072)&&dZ(SO(v))===dZ(v.checkType)&&pg(m,v.extendsType)}return u.flags&2097152?zt(u.types,v=>jKt(v,m)):!1}function J5(u,m,v){return Xf(u,D=>{if(D.flags&2097152){let W,Y,oe=!1;for(let Be of D.types){if(!(Be.flags&524288))continue;if(Xb(Be)&&V2e(Be)!==2){let He=hCn(Be,m,v);W=zKt(W,He);continue}let Me=mCn(Be,m);if(!Me){oe||(Y=Ft(Y,Be));continue}oe=!0,Y=void 0,W=zKt(W,Me)}if(Y)for(let Be of Y){let Me=CCn(Be,m,v);W=zKt(W,Me)}return W?W.length===1?W[0]:jg(W):void 0}if(D.flags&524288)return Xb(D)&&V2e(D)!==2?hCn(D,m,v):mCn(D,m)??CCn(D,m,v)},!0)}function zKt(u,m){return m?Ft(u,m.flags&1?cn:m):u}function hCn(u,m,v){let D=v||DE(Bc(m)),W=SS(u);if(u.nameType&&jKt(u.nameType,D)||jKt(W,D))return;let Y=W_(W)||W;if(pg(D,Y))return Not(u,D)}function mCn(u,m){let v=Fg(u,m);if(!(!v||bYs(v)))return mZ(fo(v),!!(v.flags&16777216))}function CCn(u,m,v){var D;if(bA(u)&&yN(m)&&+m>=0){let W=cfe(u,u.target.fixedLength,0,!1,!0);if(W)return W}return(D=uUt(gUt(u),v||DE(Bc(m))))==null?void 0:D.type}function _Cn(u,m){if(pe.assert(u2(u)),!(u.flags&67108864))return qKt(u,m)}function qKt(u,m){let v=u.parent,D=Cm(u)&&JKt(u,m);if(D)return D;let W=U5(v,m);if(W){if(Mse(u)){let Y=Uo(u);return J5(W,Y.escapedName,fa(Y).nameType)}if(zD(u)){let Y=fl(u);if(Y&&Un(Y)){let oe=Ml(Y.expression),Be=p2(oe)&&J5(W,f2(oe));if(Be)return Be}}if(u.name){let Y=gZ(u.name);return Xf(W,oe=>{var Be;return(Be=uUt(gUt(oe),Y))==null?void 0:Be.type},!0)}}}function EYs(u){let m,v;for(let D=0;D{if(bA(Y)){if((D===void 0||mW)?v-m:0,Be=oe>0&&Y.target.combinedFlags&12?Y2e(Y.target,3):0;return oe>0&&oe<=Be?gf(Y)[k9(Y)-oe]:cfe(Y,D===void 0?Y.target.fixedLength:Math.min(Y.target.fixedLength,D),v===void 0||W===void 0?Be:Math.min(Be,v-W),!1,!0)}return(!D||mG9(Me)?k1(Me,_R(oe)):Me,!0))}function BYs(u,m){let v=u.parent;return OJ(v)?Ky(u,m):wN(v)?vYs(v,u,m):void 0}function yCn(u,m){if(TN(u)){let v=U5(u.parent,m);return!v||Xo(v)?void 0:J5(v,bz(u.name))}else return Ky(u.parent,m)}function bPe(u){switch(u.kind){case 11:case 9:case 10:case 15:case 229:case 112:case 97:case 106:case 80:case 157:return!0;case 212:case 218:return bPe(u.expression);case 295:return!u.expression||bPe(u.expression)}return!1}function wYs(u,m){let v=`D${id(u)},${JC(m)}`;return Qy(v)??UB(v,hHs(m,u)??iKt(m,Nn(lt(Le(u.properties,D=>D.symbol?D.kind===304?bPe(D.initializer)&&lfe(m,D.symbol.escapedName):D.kind===305?lfe(m,D.symbol.escapedName):!1:!1),D=>[()=>MPe(D.kind===304?D.initializer:D.name),D.symbol.escapedName]),lt(Le(Zd(m),D=>{var W;return!!(D.flags&16777216)&&!!((W=u?.symbol)!=null&&W.members)&&!u.symbol.members.has(D.escapedName)&&lfe(m,D.escapedName)}),D=>[()=>wt,D.escapedName])),pg))}function TYs(u,m){let v=`D${id(u)},${JC(m)}`,D=Qy(v);if(D)return D;let W=vPe(HK(u));return UB(v,iKt(m,Nn(lt(Le(u.properties,Y=>!!Y.symbol&&Y.kind===292&&lfe(m,Y.symbol.escapedName)&&(!Y.initializer||bPe(Y.initializer))),Y=>[Y.initializer?()=>MPe(Y.initializer):()=>tn,Y.symbol.escapedName]),lt(Le(Zd(m),Y=>{var oe;if(!(Y.flags&16777216)||!((oe=u?.symbol)!=null&&oe.members))return!1;let Be=u.parent.parent;return Y.escapedName===W&&wN(Be)&&AU(Be.children).length?!1:!u.symbol.members.has(Y.escapedName)&&lfe(m,Y.escapedName)}),Y=>[()=>wt,Y.escapedName])),pg))}function U5(u,m){let v=u2(u)?_Cn(u,m):Ky(u,m),D=fat(v,u,m);if(D&&!(m&&m&2&&D.flags&8650752)){let W=Xf(D,Y=>la(Y)&32?Y:hy(Y),!0);return W.flags&1048576&&ag(u)?wYs(u,W):W.flags&1048576&&pQ(u)?TYs(u,W):W}}function fat(u,m,v){if(u&&uh(u,465829888)){let D=iX(m);if(D&&v&1&&zt(D.inferences,S4s))return Iat(u,D.nonFixingMapper);if(D?.returnMapper){let W=Iat(u,D.returnMapper);return W.flags&1048576&&oG(W.types,Ys)&&oG(W.types,wn)?am(W,Y=>Y!==Ys&&Y!==wn):W}}return u}function Iat(u,m){return u.flags&465829888?Cl(u,m):u.flags&1048576?Ha(lt(u.types,v=>Iat(v,m)),0):u.flags&2097152?jg(lt(u.types,v=>Iat(v,m))):u}function Ky(u,m){var v;if(u.flags&67108864)return;let D=ECn(u,!m);if(D>=0)return Mb[D];let{parent:W}=u;switch(W.kind){case 261:case 170:case 173:case 172:case 209:return dYs(u,m);case 220:case 254:return pYs(u,m);case 230:return IYs(W,m);case 224:return fYs(W,m);case 214:case 215:return fCn(W,u);case 171:return hYs(W);case 217:case 235:return c2(W.type)?Ky(W,m):tl(W.type);case 227:return CYs(u,m);case 304:case 305:return qKt(W,m);case 306:return Ky(W.parent,m);case 210:{let Y=W,oe=U5(Y,m),Be=EW(Y.elements,u),Me=(v=sa(Y)).spreadIndices??(v.spreadIndices=EYs(Y.elements));return $Kt(oe,Be,Y.elements.length,Me.first,Me.last)}case 228:return SYs(u,m);case 240:return pe.assert(W.parent.kind===229),mYs(W.parent,u);case 218:{if(wo(W)){if(iEe(W))return tl(sEe(W));let Y=uv(W);if(Y&&!c2(Y.typeExpression.type))return tl(Y.typeExpression.type)}return Ky(W,m)}case 236:return Ky(W,m);case 239:return tl(W.type);case 278:return _O(W);case 295:return BYs(W,m);case 292:case 294:return yCn(W,m);case 287:case 286:return ZYs(W,m);case 302:return FYs(W)}}function bCn(u){EPe(u,Ky(u,void 0),!0)}function EPe(u,m,v){Gf[I_]=u,Mb[I_]=m,XB[I_]=v,I_++}function cSe(){I_--,Gf[I_]=void 0,Mb[I_]=void 0,XB[I_]=void 0}function ECn(u,m){for(let v=I_-1;v>=0;v--)if(u===Gf[v]&&(m||!XB[v]))return v;return-1}function RYs(u,m){T1[WN]=u,A5[WN]=m,WN++}function NYs(){WN--,T1[WN]=void 0,A5[WN]=void 0}function iX(u){for(let m=WN-1;m>=0;m--)if(DW(u,T1[m]))return A5[m]}function DYs(u){gk[Ak]=u,d5[Ak]??(d5[Ak]=new Map),Ak++}function kYs(){Ak--,gk[Ak]=void 0,d5[Ak].clear()}function xYs(u){for(let m=Ak-1;m>=0;m--)if(u===gk[m])return m;return-1}function GYs(){for(let u=Ak-1;u>=0;u--)d5[u].clear()}function FYs(u){return J5(EUt(!1),lde(u))}function ZYs(u,m){if(iR(u)&&m!==4){let v=ECn(u.parent,!m);if(v>=0)return Mb[v]}return KKt(u,0)}function hat(u,m){return Yw(m)||a_n(m)!==0?LYs(u,m):OYs(u,m)}function LYs(u,m){let v=N8t(u,cn);v=SCn(m,HK(m),v);let D=sX(dS.IntrinsicAttributes,m);return lo(D)||(v=VOe(D,v)),v}function VYs(u,m){if(u.compositeSignatures){let D=[];for(let W of u.compositeSignatures){let Y=Ad(W);if(Xo(Y))return Y;let oe=Wi(Y,m);if(!oe)return;D.push(oe)}return jg(D)}let v=Ad(u);return Xo(v)?v:Wi(v,m)}function WYs(u){if(Yw(u))return h_n(u);if(Kq(u.tagName)){let v=GCn(u),D=Dat(u,v);return TK(D)}let m=DI(u.tagName);if(m.flags&128){let v=xCn(m,u);if(!v)return nn;let D=Dat(u,v);return TK(D)}return m}function SCn(u,m,v){let D=lQs(m);if(D){let W=WYs(u),Y=LCn(D,wo(u),W,v);if(Y)return Y}return v}function OYs(u,m){let v=HK(m),D=gQs(v),W=D===void 0?N8t(u,cn):D===""?Ad(u):VYs(u,D);if(!W)return D&&B(m.attributes.properties)&&Br(m,Z.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,Bc(D)),cn;if(W=SCn(m,v,W),Xo(W))return W;{let Y=W,oe=sX(dS.IntrinsicClassAttributes,m);if(!lo(oe)){let Me=Kg(oe.symbol),He=Ad(u),$e;if(Me){let Vt=D9([He],Me,yk(Me),wo(m));$e=Cl(oe,x1(Me,Vt))}else $e=oe;Y=VOe($e,Y)}let Be=sX(dS.IntrinsicAttributes,m);return lo(Be)||(Y=VOe(Be,Y)),Y}}function PYs(u){return l_(Te,"noImplicitAny")?Kl(u,(m,v)=>m===v||!m?m:sIn(m.typeParameters,v.typeParameters)?YYs(m,v):void 0):void 0}function MYs(u,m,v){if(!u||!m)return u||m;let D=Ha([fo(u),Cl(fo(m),v)]);return LK(u,D)}function HYs(u,m,v){let D=xE(u),W=xE(m),Y=D>=W?u:m,oe=Y===u?m:u,Be=Y===u?D:W,Me=Sk(u)||Sk(m),He=Me&&!Sk(Y),$e=new Array(Be+(He?1:0));for(let Vt=0;Vt=vR(Y)&&Vt>=vR(oe),Yi=Vt>=D?void 0:dfe(u,Vt),js=Vt>=W?void 0:dfe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=AA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?f0(dn):dn,$e[Vt]=Ji}if(He){let Vt=AA(1,"args",32768);Vt.links.type=f0(SR(oe,Be)),oe===m&&(Vt.links.type=Cl(Vt.links.type,v)),$e[Be]=Vt}return $e}function YYs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=x1(m.typeParameters,u.typeParameters));let W=(u.flags|m.flags)&166,Y=u.declaration,oe=HYs(u,m,D),Be=li(oe);Be&&aI(Be)&32768&&(W|=1);let Me=MYs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),$e=YN(Y,v,Me,oe,void 0,void 0,He,W);return $e.compositeKind=2097152,$e.compositeSignatures=Nn(u.compositeKind===2097152&&u.compositeSignatures||[u],[m]),D&&($e.mapper=u.compositeKind===2097152&&u.mapper&&u.compositeSignatures?M5(u.mapper,D):D),$e}function e8t(u,m){let v=rg(u,0),D=Le(v,W=>!QYs(W,m));return D.length===1?D[0]:PYs(D)}function QYs(u,m){let v=0;for(;v{let oe=h.getTokenEnd();if(D.category===3&&v&&oe===v.start&&W===v.length){let Be=rQ(m.fileName,m.text,oe,W,D,Y);ug(v,Be)}else(!v||oe!==v.start)&&(v=rm(m,oe,W,D,Y),PA.add(v))}),h.setText(m.text,u.pos,u.end-u.pos);try{return h.scan(),pe.assert(h.reScanSlashToken(!0)===14,"Expected scanner to rescan RegularExpressionLiteral"),!!v}finally{h.setText(""),h.setOnError(void 0)}}return!1}function JYs(u){let m=sa(u);return m.flags&1||(m.flags|=1,g(()=>XYs(u))),KI}function UYs(u,m){Zeafe(xt)||Xb(xt)&&!xt.nameType&&!!U2e(xt.target||xt)),Vt=!1;for(let xt=0;xtoe[wr]&8?bO(xt,ri)||hr:xt),2):at?Ui:xe,Me))}function BCn(u){if(!(la(u)&4))return u;let m=u.literalType;return m||(m=u.literalType=kIn(u),m.objectFlags|=147456),m}function zYs(u){switch(u.kind){case 168:return qYs(u);case 80:return yN(u.escapedText);case 9:case 11:return yN(u.text);default:return!1}}function qYs(u){return O_(rT(u),296)}function rT(u){let m=sa(u.expression);if(!m.resolvedType){if((bh(u.parent.parent)||xa(u.parent.parent)||d_(u.parent.parent))&&po(u.expression)&&u.expression.operatorToken.kind===103&&u.parent.kind!==178&&u.parent.kind!==179)return m.resolvedType=nn;if(m.resolvedType=Ml(u.expression),pi(u.parent)&&!tm(u.parent)&&wd(u.parent.parent)){let v=sS(u.parent.parent),D=MKt(v);D&&(sa(D).flags|=4096,sa(u).flags|=32768,sa(u.parent.parent).flags|=32768)}(m.resolvedType.flags&98304||!O_(m.resolvedType,402665900)&&!pg(m.resolvedType,mc))&&Br(u,Z.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return m.resolvedType}function $Ys(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return yN(u.escapedName)||v&&sh(v)&&zYs(v.name)}function wCn(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return X7(u)||v&&sh(v)&&Un(v.name)&&O_(rT(v.name),4096)}function eQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return v&&sh(v)&&Un(v.name)}function uSe(u,m,v,D){var W;let Y=[],oe;for(let Me=m;Me0&&(oe=qQ(oe,Ji(),u.symbol,dn,He),Y=[],W=$u(),ii=!1,Yi=!1,js=!1);let _l=qB(Ml(Mi.expression,m&2));if(SPe(_l)){let ka=HUt(_l,He);if(D&&NCn(ka,D,Mi),Co=Y.length,lo(oe))continue;oe=qQ(oe,ka,u.symbol,dn,He)}else Br(Mi,Z.Spread_types_may_only_be_created_from_object_types),oe=nn;continue}else pe.assert(Mi.kind===178||Mi.kind===179),zq(Mi);Ka&&!(Ka.flags&8576)?pg(Ka,mc)&&(pg(Ka,ri)?Yi=!0:pg(Ka,ci)?js=!0:ii=!0,v&&(vn=!0)):W.set(To.escapedName,To),Y.push(To)}if(cSe(),lo(oe))return nn;if(oe!==Jg)return Y.length>0&&(oe=qQ(oe,Ji(),u.symbol,dn,He),Y=[],W=$u(),ii=!1,Yi=!1),Xf(oe,Mi=>Mi===Jg?Ji():Mi);return Ji();function Ji(){let Mi=[],To=ffe(u);ii&&Mi.push(uSe(To,Co,Y,$r)),Yi&&Mi.push(uSe(To,Co,Y,ri)),js&&Mi.push(uSe(To,Co,Y,ci));let Ka=Qf(u.symbol,W,E,E,Mi);return Ka.objectFlags|=dn|128|131072,wr&&(Ka.objectFlags|=4096),vn&&(Ka.objectFlags|=512),v&&(Ka.pattern=u),Ka}}function SPe(u){let m=gmn(Xf(u,QN));return!!(m.flags&126615553||m.flags&3145728&&ue(m.types,SPe))}function rQs(u){r8t(u)}function nQs(u,m){return zq(u),BPe(u)||hr}function iQs(u){r8t(u.openingElement),Kq(u.closingElement.tagName)?yat(u.closingElement):Ml(u.closingElement.tagName),_at(u)}function sQs(u,m){return zq(u),BPe(u)||hr}function oQs(u){r8t(u.openingFragment);let m=ms(u);XAe(Te)&&(Te.jsxFactory||m.pragmas.has("jsx"))&&!Te.jsxFragmentFactory&&!m.pragmas.has("jsxfrag")&&Br(u,Te.jsxFactory?Z.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Z.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),_at(u);let v=BPe(u);return lo(v)?hr:v}function t8t(u){return u.includes("-")}function Kq(u){return Ir(u)&&dU(u.escapedText)||sR(u)}function TCn(u,m){return u.initializer?Ife(u.initializer,m):tn}function RCn(u,m=0){let v=at?$u():void 0,D=$u(),W=ch,Y=!1,oe,Be=!1,Me=2048,He=vPe(HK(u)),$e=Yw(u),Vt,xt=u;if(!$e){let vn=u.attributes;Vt=vn.symbol,xt=vn;let ii=Ky(vn,0);for(let Yi of vn.properties){let js=Yi.symbol;if(TN(Yi)){let Co=TCn(Yi,m);Me|=la(Co)&458752;let Ji=AA(4|js.flags,js.escapedName);if(Ji.declarations=js.declarations,Ji.parent=js.parent,js.valueDeclaration&&(Ji.valueDeclaration=js.valueDeclaration),Ji.links.type=Co,Ji.links.target=js,D.set(Ji.escapedName,Ji),v?.set(Ji.escapedName,Ji),bz(Yi.name)===He&&(Be=!0),ii){let Mi=Fg(ii,js.escapedName);Mi&&Mi.declarations&&fy(Mi)&&Ir(Yi.name)&&KB(Yi.name,Mi.declarations,Yi.name.escapedText)}if(ii&&m&2&&!(m&4)&&BS(Yi)){let Mi=iX(vn);pe.assert(Mi);let To=Yi.initializer.expression;mKt(Mi,To,Co)}}else{pe.assert(Yi.kind===294),D.size>0&&(W=qQ(W,dn(),vn.symbol,Me,!1),D=$u());let Co=qB(Ml(Yi.expression,m&2));Xo(Co)&&(Y=!0),SPe(Co)?(W=qQ(W,Co,vn.symbol,Me,!1),v&&NCn(Co,v,Yi)):(Br(Yi.expression,Z.Spread_types_may_only_be_created_from_object_types),oe=oe?jg([oe,Co]):Co)}}Y||D.size>0&&(W=qQ(W,dn(),vn.symbol,Me,!1))}let wr=u.parent;if((wN(wr)&&wr.openingElement===u||X3(wr)&&wr.openingFragment===u)&&AU(wr.children).length>0){let vn=_at(wr,m);if(!Y&&He&&He!==""){Be&&Br(xt,Z._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,Bc(He));let ii=iR(u)?U5(u.attributes,void 0):void 0,Yi=ii&&J5(ii,He),js=AA(4,He);js.links.type=vn.length===1?vn[0]:Yi&&Zv(Yi,afe)?bk(vn):f0(Ha(vn)),js.valueDeclaration=me.createPropertySignature(void 0,Bc(He),void 0,void 0),UA(js.valueDeclaration,xt),js.valueDeclaration.symbol=js;let Co=$u();Co.set(He,js),W=qQ(W,Qf(Vt,Co,E,E,E),Vt,Me,!1)}}if(Y)return hr;if(oe&&W!==ch)return jg([oe,W]);return oe||(W===ch?dn():W);function dn(){return Me|=8192,aQs(Me,Vt,D)}}function aQs(u,m,v){let D=Qf(m,v,E,E,E);return D.objectFlags|=u|8192|128|131072,D}function _at(u,m){let v=[];for(let D of u.children)if(D.kind===12)D.containsOnlyTriviaWhiteSpaces||v.push($r);else{if(D.kind===295&&!D.expression)continue;v.push(Ife(D,m))}return v}function NCn(u,m,v){for(let D of Zd(u))if(!(D.flags&16777216)){let W=m.get(D.escapedName);if(W){let Y=Br(W.valueDeclaration,Z._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,Bc(W.escapedName));ug(Y,mo(v,Z.This_spread_always_overwrites_this_property))}}}function cQs(u,m){return RCn(u.parent,m)}function sX(u,m){let v=HK(m),D=v&&R1(v),W=D&&h_(D,u,788968);return W?Lp(W):nn}function yat(u){let m=sa(u);if(!m.resolvedSymbol){let v=sX(dS.IntrinsicElements,u);if(lo(v))return Rt&&Br(u,Z.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,Bc(dS.IntrinsicElements)),m.resolvedSymbol=st;{if(!Ir(u.tagName)&&!sR(u.tagName))return pe.fail();let D=sR(u.tagName)?uS(u.tagName):u.tagName.escapedText,W=Fg(v,D);if(W)return m.jsxFlags|=1,m.resolvedSymbol=W;let Y=ryn(v,DE(Bc(D)));return Y?(m.jsxFlags|=2,m.resolvedSymbol=Y):Ba(v,D)?(m.jsxFlags|=2,m.resolvedSymbol=v.symbol):(Br(u,Z.Property_0_does_not_exist_on_type_1,oEe(u.tagName),"JSX."+dS.IntrinsicElements),m.resolvedSymbol=st)}}return m.resolvedSymbol}function bat(u){let m=u&&ms(u),v=m&&sa(m);if(v&&v.jsxImplicitImportContainer===!1)return;if(v&&v.jsxImplicitImportContainer)return v.jsxImplicitImportContainer;let D=rie(tie(Te,m),Te);if(!D)return;let Y=G_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed,oe=Y8s(m,D),Be=dK(oe||u,D,Y,u),Me=Be&&Be!==st?qA(Oh(Be)):void 0;return v&&(v.jsxImplicitImportContainer=Me||!1),Me}function HK(u){let m=u&&sa(u);if(m&&m.jsxNamespace)return m.jsxNamespace;if(!m||m.jsxNamespace!==!1){let D=bat(u);if(!D||D===st){let W=Jw(u);D=An(u,W,1920,void 0,!1)}if(D){let W=Oh(h_(R1(Oh(D)),dS.JSX,1920));if(W&&W!==st)return m&&(m.jsxNamespace=W),W}m&&(m.jsxNamespace=!1)}let v=Oh(Use(dS.JSX,1920,void 0));if(v!==st)return v}function DCn(u,m){let v=m&&h_(m.exports,u,788968),D=v&&Lp(v),W=D&&Zd(D);if(W){if(W.length===0)return"";if(W.length===1)return W[0].escapedName;W.length>1&&v.declarations&&Br(v.declarations[0],Z.The_global_type_JSX_0_may_not_have_more_than_one_property,Bc(u))}}function lQs(u){return u&&h_(u.exports,dS.LibraryManagedAttributes,788968)}function uQs(u){return u&&h_(u.exports,dS.ElementType,788968)}function gQs(u){return DCn(dS.ElementAttributesPropertyNameContainer,u)}function vPe(u){return Te.jsx===4||Te.jsx===5?"children":DCn(dS.ElementChildrenAttributeNameContainer,u)}function kCn(u,m){if(u.flags&4)return[Ls];if(u.flags&128){let W=xCn(u,m);return W?[Dat(m,W)]:(Br(m,Z.Property_0_does_not_exist_on_type_1,u.value,"JSX."+dS.IntrinsicElements),E)}let v=hy(u),D=rg(v,1);return D.length===0&&(D=rg(v,0)),D.length===0&&v.flags&1048576&&(D=eUt(lt(v.types,W=>kCn(W,m)))),D}function xCn(u,m){let v=sX(dS.IntrinsicElements,m);if(!lo(v)){let D=u.value,W=Fg(v,pp(D));if(W)return fo(W);let Y=V5(v,$r);return Y||void 0}return hr}function AQs(u,m,v){if(u===1){let W=ZCn(v);W&&xv(m,W,g0,v.tagName,Z.Its_return_type_0_is_not_a_valid_JSX_element,D)}else if(u===0){let W=FCn(v);W&&xv(m,W,g0,v.tagName,Z.Its_instance_type_0_is_not_a_valid_JSX_element,D)}else{let W=ZCn(v),Y=FCn(v);if(!W||!Y)return;let oe=Ha([W,Y]);xv(m,oe,g0,v.tagName,Z.Its_element_type_0_is_not_a_valid_JSX_element,D)}function D(){let W=Fp(v.tagName);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,W)}}function GCn(u){var m;pe.assert(Kq(u.tagName));let v=sa(u);if(!v.resolvedJsxElementAttributesType){let D=yat(u);if(v.jsxFlags&1)return v.resolvedJsxElementAttributesType=fo(D)||nn;if(v.jsxFlags&2){let W=sR(u.tagName)?uS(u.tagName):u.tagName.escapedText;return v.resolvedJsxElementAttributesType=((m=Wq(sX(dS.IntrinsicElements,u),W))==null?void 0:m.type)||nn}else return v.resolvedJsxElementAttributesType=nn}return v.resolvedJsxElementAttributesType}function FCn(u){let m=sX(dS.ElementClass,u);if(!lo(m))return m}function BPe(u){return sX(dS.Element,u)}function ZCn(u){let m=BPe(u);if(m)return Ha([m,Hn])}function dQs(u){let m=HK(u);if(!m)return;let v=uQs(m);if(!v)return;let D=LCn(v,wo(u));if(!(!D||lo(D)))return D}function LCn(u,m,...v){let D=Lp(u);if(u.flags&524288){let W=fa(u).typeParameters;if(B(W)>=v.length){let Y=D9(v,W,v.length,m);return B(Y)===0?D:Xse(u,Y)}}if(B(D.typeParameters)>=v.length){let W=D9(v,D.typeParameters,v.length,m);return uZ(D,W)}}function pQs(u){let m=sX(dS.IntrinsicElements,u);return m?Zd(m):E}function fQs(u){(Te.jsx||0)===0&&Br(u,Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided),BPe(u)===void 0&&Rt&&Br(u,Z.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function r8t(u){let m=nI(u);m&&f8s(u),fQs(u),PKt(u);let v=noe(u);if(xat(v,u),m){let D=u,W=dQs(D);if(W!==void 0){let Y=D.tagName,oe=Kq(Y)?DE(oEe(Y)):Ml(Y);xv(oe,W,g0,Y,Z.Its_type_0_is_not_a_valid_JSX_element_type,()=>{let Be=Fp(Y);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,Be)})}else AQs(a_n(D),Ad(v),D)}}function Eat(u,m,v){if(u.flags&524288&&(UQ(u,m)||Wq(u,m)||Z2e(m)&&iG(u,$r)||v&&t8t(m)))return!0;if(u.flags&33554432)return Eat(u.baseType,m,v);if(u.flags&3145728&&gSe(u)){for(let D of u.types)if(Eat(D,m,v))return!0}return!1}function gSe(u){return!!(u.flags&524288&&!(la(u)&512)||u.flags&67108864||u.flags&33554432&&gSe(u.baseType)||u.flags&1048576&&zt(u.types,gSe)||u.flags&2097152&&ue(u.types,gSe))}function IQs(u,m){if(h8s(u),u.expression){let v=Ml(u.expression,m);return u.dotDotDotToken&&v!==hr&&!Gv(v)&&Br(u,Z.JSX_spread_child_must_be_an_array_type),v}else return nn}function n8t(u){return u.valueDeclaration?aX(u.valueDeclaration):0}function i8t(u){if(u.flags&8192||aI(u)&4)return!0;if(wo(u.valueDeclaration)){let m=u.valueDeclaration.parent;return m&&po(m)&&oI(m)===3}}function s8t(u,m,v,D,W,Y=!0){let oe=Y?u.kind===167?u.right:u.kind===206?u:u.kind===209&&u.propertyName?u.propertyName:u.name:void 0;return VCn(u,m,v,D,W,oe)}function VCn(u,m,v,D,W,Y){var oe;let Be=d2(W,v);if(m){if(Ze<2&&WCn(W))return Y&&Br(Y,Z.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(Be&64)return Y&&Br(Y,Z.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,xl(W),ro(Yq(W))),!1;if(!(Be&256)&&((oe=W.declarations)!=null&&oe.some(Wre)))return Y&&Br(Y,Z.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,xl(W)),!1}if(Be&64&&WCn(W)&&(dne(u)||NZe(u)||$m(u.parent)&&oAe(u.parent.parent))){let He=hN(nC(W));if(He&&dKs(u))return Y&&Br(Y,Z.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,xl(W),g2(He.name)),!1}if(!(Be&6))return!0;if(Be&2){let He=hN(nC(W));return u6t(u,He)?!0:(Y&&Br(Y,Z.Property_0_is_private_and_only_accessible_within_class_1,xl(W),ro(Yq(W))),!1)}if(m)return!0;let Me=eyn(u,He=>{let $e=Lp(Uo(He));return tmn($e,W,v)});return!Me&&(Me=hQs(u),Me=Me&&tmn(Me,W,v),Be&256||!Me)?(Y&&Br(Y,Z.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,xl(W),ro(Yq(W)||D)),!1):Be&256?!0:(D.flags&262144&&(D=D.isThisType?Uy(D):W_(D)),!D||!da(D,Me)?(Y&&Br(Y,Z.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,xl(W),ro(Me),ro(D)),!1):!0)}function hQs(u){let m=mQs(u),v=m?.type&&tl(m.type);if(v)v.flags&262144&&(v=Uy(v));else{let D=i0(u,!1,!1);Eu(D)&&(v=XKt(D))}if(v&&la(v)&7)return vs(v)}function mQs(u){let m=i0(u,!1,!1);return m&&Eu(m)?xW(m):void 0}function WCn(u){return!!oPe(u,m=>!(m.flags&8192))}function toe(u){return UN(Ml(u),u)}function wPe(u){return bR(u,50331648)}function o8t(u){return wPe(u)?hZ(u):u}function CQs(u,m){let v=Hd(u)?cy(u):void 0;if(u.kind===106){Br(u,Z.The_value_0_cannot_be_used_here,"null");return}if(v!==void 0&&v.length<100){if(Ir(u)&&v==="undefined"){Br(u,Z.The_value_0_cannot_be_used_here,"undefined");return}Br(u,m&16777216?m&33554432?Z._0_is_possibly_null_or_undefined:Z._0_is_possibly_undefined:Z._0_is_possibly_null,v)}else Br(u,m&16777216?m&33554432?Z.Object_is_possibly_null_or_undefined:Z.Object_is_possibly_undefined:Z.Object_is_possibly_null)}function _Qs(u,m){Br(u,m&16777216?m&33554432?Z.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Z.Cannot_invoke_an_object_which_is_possibly_undefined:Z.Cannot_invoke_an_object_which_is_possibly_null)}function OCn(u,m,v){if(at&&u.flags&2){if(Hd(m)){let W=cy(m);if(W.length<100)return Br(m,Z._0_is_of_type_unknown,W),nn}return Br(m,Z.Object_is_of_type_unknown),nn}let D=zse(u,50331648);if(D&50331648){v(m,D);let W=hZ(u);return W.flags&229376?nn:W}return u}function UN(u,m){return OCn(u,m,CQs)}function PCn(u,m){let v=UN(u,m);if(v.flags&16384){if(Hd(m)){let D=cy(m);if(Ir(m)&&D==="undefined")return Br(m,Z.The_value_0_cannot_be_used_here,D),v;if(D.length<100)return Br(m,Z._0_is_possibly_undefined,D),v}Br(m,Z.Object_is_possibly_undefined)}return v}function Sat(u,m,v){return u.flags&64?yQs(u,m):c8t(u,u.expression,toe(u.expression),u.name,m,v)}function yQs(u,m){let v=Ml(u.expression),D=eSe(v,u.expression);return Kot(c8t(u,u.expression,UN(D,u.expression),u.name,m),u,D!==v)}function MCn(u,m){let v=cAe(u)&&DF(u.left)?UN(yPe(u.left),u.left):toe(u.left);return c8t(u,u.left,v,u.right,m)}function a8t(u){for(;u.parent.kind===218;)u=u.parent;return gv(u.parent)&&u.parent.expression===u}function TPe(u,m){for(let v=iAe(m);v;v=_C(v)){let{symbol:D}=v,W=Gne(D,u),Y=D.members&&D.members.get(W)||D.exports&&D.exports.get(W);if(Y)return Y}}function bQs(u){if(!_C(u))return os(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies);if(!m9e(u.parent)){if(!JT(u))return os(u,Z.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);let m=po(u.parent)&&u.parent.operatorToken.kind===103;if(!vat(u)&&!m)return os(u,Z.Cannot_find_name_0,Vo(u))}return!1}function EQs(u){bQs(u);let m=vat(u);return m&&NPe(m,void 0,!1),hr}function vat(u){if(!JT(u))return;let m=sa(u);return m.resolvedSymbol===void 0&&(m.resolvedSymbol=TPe(u.escapedText,u)),m.resolvedSymbol}function Bat(u,m){return Fg(u,m.escapedName)}function SQs(u,m,v){let D,W=Zd(u);W&&F(W,oe=>{let Be=oe.valueDeclaration;if(Be&&sh(Be)&&p(Be.name)&&Be.name.escapedText===m.escapedText)return D=oe,!0});let Y=TE(m);if(D){let oe=pe.checkDefined(D.valueDeclaration),Be=pe.checkDefined(_C(oe));if(v?.valueDeclaration){let Me=v.valueDeclaration,He=_C(Me);if(pe.assert(!!He),ji(He,$e=>Be===$e)){let $e=Br(m,Z.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,Y,ro(u));return ug($e,mo(Me,Z.The_shadowing_declaration_of_0_is_defined_here,Y),mo(oe,Z.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,Y)),!0}}return Br(m,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,Y,TE(Be.name||Qet)),!0}return!1}function HCn(u,m){return(tG(m)||dne(u)&&mk(m))&&i0(u,!0,!1)===vo(m)}function c8t(u,m,v,D,W,Y){let oe=sa(m).resolvedSymbol,Be=jD(u),Me=hy(Be!==0||a8t(u)?G1(v):v),He=Xo(Me)||Me===Vn,$e;if(p(D)){(Ze{switch(v.kind){case 173:case 176:return!0;case 187:case 288:return"quit";case 220:return m?!1:"quit";case 242:return Gd(v.parent)&&v.parent.kind!==220?"quit":!1;default:return!1}})}function BQs(u){if(!(u.parent.flags&32))return!1;let m=fo(u.parent);for(;;){if(m=m.symbol&&wQs(m),!m)return!1;let v=Fg(m,u.escapedName);if(v&&v.valueDeclaration)return!0}}function wQs(u){let m=eT(u);if(m.length!==0)return jg(m)}function QCn(u,m,v){let D=sa(u),W=D.nonExistentPropCheckCache||(D.nonExistentPropCheckCache=new Set),Y=`${JC(m)}|${v}`;if(W.has(Y))return;W.add(Y);let oe,Be;if(!p(u)&&m.flags&1048576&&!(m.flags&402784252)){for(let He of m.types)if(!Fg(He,u.escapedText)&&!Wq(He,u.escapedText)){oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Md(u),ro(He));break}}if(XCn(u.escapedText,m)){let He=Md(u),$e=ro(m);oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,He,$e,$e+"."+He)}else{let He=bSe(m);if(He&&Fg(He,u.escapedText))oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Md(u),ro(m)),Be=mo(u,Z.Did_you_forget_to_use_await);else{let $e=Md(u),Vt=ro(m),xt=NQs($e,m);if(xt!==void 0)oe=wu(oe,Z.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,$e,Vt,xt);else{let wr=g8t(u,m);if(wr!==void 0){let dn=of(wr),vn=v?Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2:Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2;oe=wu(oe,vn,$e,Vt,dn),Be=wr.valueDeclaration&&mo(wr.valueDeclaration,Z._0_is_declared_here,dn)}else{let dn=TQs(m)?Z.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Z.Property_0_does_not_exist_on_type_1;oe=wu(lUt(oe,m),dn,$e,Vt)}}}}let Me=Dw(ms(u),u,oe);Be&&ug(Me,Be),Ux(!v||oe.code!==Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Me)}function TQs(u){return Te.lib&&!Te.lib.includes("lib.dom.d.ts")&&kHs(u,m=>m.symbol&&/^(?:EventTarget|Node|(?:HTML[a-zA-Z]*)?Element)$/.test(Bc(m.symbol.escapedName)))&&fZ(u)}function XCn(u,m){let v=m.symbol&&Fg(fo(m.symbol),u);return v!==void 0&&!!v.valueDeclaration&&lg(v.valueDeclaration)}function RQs(u){let m=TE(u),D=nne().get(m);return D&&vu(D.keys())}function NQs(u,m){let v=hy(m).symbol;if(!v)return;let D=of(v),Y=nne().get(D);if(Y){for(let[oe,Be]of Y)if(k(Be,u))return oe}}function JCn(u,m){return RPe(u,Zd(m),106500)}function g8t(u,m){let v=Zd(m);if(typeof u!="string"){let D=u.parent;jo(D)&&(v=Le(v,W=>qCn(D,m,W))),u=Vo(u)}return RPe(u,v,111551)}function UCn(u,m){let v=Xs(u)?u:Vo(u),D=Zd(m);return(v==="for"?de(D,Y=>of(Y)==="htmlFor"):v==="class"?de(D,Y=>of(Y)==="className"):void 0)??RPe(v,D,111551)}function KCn(u,m){let v=g8t(u,m);return v&&of(v)}function DQs(u,m,v){let D=h_(u,m,v);if(D)return D;let W;return u===Gr?W=Xt(["string","number","boolean","object","bigint","symbol"],oe=>u.has(oe.charAt(0).toUpperCase()+oe.slice(1))?AA(524288,oe):void 0).concat(Do(u.values())):W=Do(u.values()),RPe(Bc(m),W,v)}function jCn(u,m,v){return pe.assert(m!==void 0,"outername should always be defined"),si(u,m,v,void 0,!1,!1)}function A8t(u,m){return m.exports&&RPe(Vo(u),wq(m),2623475)}function kQs(u,m,v){function D(oe){let Be=UQ(u,oe);if(Be){let Me=QK(fo(Be));return!!Me&&vR(Me)>=1&&pg(v,SR(Me,0))}return!1}let W=TF(m)?"set":"get";if(!D(W))return;let Y=ZW(m.expression);return Y===void 0?Y=W:Y+="."+W,Y}function xQs(u,m){let v=m.types.filter(D=>!!(D.flags&128));return Dr(u.value,v,D=>D.value)}function RPe(u,m,v){return Dr(u,m,D);function D(W){let Y=of(W);if(!Ac(Y,'"')){if(W.flags&v)return Y;if(W.flags&2097152){let oe=Eq(W);if(oe&&oe.flags&v)return Y}}}}function NPe(u,m,v){let D=u&&u.flags&106500&&u.valueDeclaration;if(!D)return;let W=Zb(D,2),Y=u.valueDeclaration&&sh(u.valueDeclaration)&&p(u.valueDeclaration.name);if(!(!W&&!Y)&&!(m&&ZAe(m)&&!(u.flags&65536))){if(v){let oe=ji(m,Gd);if(oe&&oe.symbol===u)return}(aI(u)&1?fa(u).target:u).isReferenced=-1}}function zCn(u,m){return u.kind===110||!!m&&Hd(u)&&m===W0(T0(u))}function GQs(u,m){switch(u.kind){case 212:return d8t(u,u.expression.kind===108,m,G1(Ml(u.expression)));case 167:return d8t(u,!1,m,G1(Ml(u.left)));case 206:return d8t(u,!1,m,tl(u))}}function qCn(u,m,v){return p8t(u,u.kind===212&&u.expression.kind===108,!1,m,v)}function d8t(u,m,v,D){if(Xo(D))return!0;let W=Fg(D,v);return!!W&&p8t(u,m,!1,D,W)}function p8t(u,m,v,D,W){if(Xo(D))return!0;if(W.valueDeclaration&&hC(W.valueDeclaration)){let Y=_C(W.valueDeclaration);return!ZC(u)&&!!ji(u,oe=>oe===Y)}return VCn(u,m,v,D,W)}function FQs(u){let m=u.initializer;if(m.kind===262){let v=m.declarations[0];if(v&&!Nu(v.name))return Uo(v)}else if(m.kind===80)return W0(m)}function ZQs(u){return p0(u).length===1&&!!iG(u,ri)}function LQs(u){let m=JA(u);if(m.kind===80){let v=W0(m);if(v.flags&3){let D=u,W=u.parent;for(;W;){if(W.kind===250&&D===W.statement&&FQs(W)===v&&ZQs(P_(W.expression)))return!0;D=W,W=W.parent}}}return!1}function VQs(u,m){return u.flags&64?WQs(u,m):$Cn(u,toe(u.expression),m)}function WQs(u,m){let v=Ml(u.expression),D=eSe(v,u.expression);return Kot($Cn(u,UN(D,u.expression),m),u,D!==v)}function $Cn(u,m,v){let D=jD(u)!==0||a8t(u)?G1(m):m,W=u.argumentExpression,Y=Ml(W);if(lo(D)||D===Vn)return D;if(Lat(D)&&!CA(W))return Br(W,Z.A_const_enum_member_can_only_be_accessed_using_a_string_literal),nn;let oe=LQs(W)?ri:Y,Be=jD(u),Me;Be===0?Me=32:(Me=4|(kK(D)&&!yz(D)?2:0),Be===2&&(Me|=32));let He=bO(D,oe,Me,u)||nn;return c0n(YCn(u,sa(u).resolvedSymbol,He,W,v),u)}function e_n(u){return gv(u)||QI(u)||nI(u)}function YK(u){return e_n(u)&&F(u.typeArguments,nA),u.kind===216?Ml(u.template):nI(u)?Ml(u.attributes):po(u)?Ml(u.left):gv(u)&&F(u.arguments,m=>{Ml(m)}),Ls}function ER(u){return YK(u),Za}function OQs(u,m,v){let D,W,Y=0,oe,Be=-1,Me;pe.assert(!m.length);for(let He of u){let $e=He.declaration&&Uo(He.declaration),Vt=He.declaration&&He.declaration.parent;!W||$e===W?D&&Vt===D?oe=oe+1:(D=Vt,oe=Y):(oe=Y=m.length,D=Vt),W=$e,Jtn(He)?(Be++,Me=Be,Y++):Me=oe,m.splice(Me,0,v?EPs(He,v):He)}}function wat(u){return!!u&&(u.kind===231||u.kind===238&&u.isSpread)}function f8t(u){return Se(u,wat)}function t_n(u){return!!(u.flags&16384)}function PQs(u){return!!(u.flags&49155)}function Tat(u,m,v,D=!1){if(Yw(u))return!0;let W,Y=!1,oe=xE(v),Be=vR(v);if(u.kind===216)if(W=m.length,u.template.kind===229){let Me=Ei(u.template.templateSpans);Y=af(Me.literal)||!!Me.literal.isUnterminated}else{let Me=u.template;pe.assert(Me.kind===15),Y=!!Me.isUnterminated}else if(u.kind===171)W=l_n(u,v);else if(u.kind===227)W=1;else if(nI(u)){if(Y=u.attributes.end===u.end,Y)return!0;W=Be===0?m.length:1,oe=m.length===0?oe:1,Be=Math.min(Be,1)}else if(u.arguments){W=D?m.length+1:m.length,Y=u.arguments.end===u.end;let Me=f8t(m);if(Me>=0)return Me>=vR(v)&&(Sk(v)||Meoe)return!1;if(Y||W>=Be)return!0;for(let Me=W;Me=D&&m.length<=v}function r_n(u,m){let v;return!!(u.target&&(v=oX(u.target,m))&&P5(v))}function QK(u){return ASe(u,0,!1)}function n_n(u){return ASe(u,0,!1)||ASe(u,1,!1)}function ASe(u,m,v){if(u.flags&524288){let D=CR(u);if(v||D.properties.length===0&&D.indexInfos.length===0){if(m===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(m===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function i_n(u,m,v,D){let W=nSe(TIn(u),u,0,D),Y=fSe(m),oe=v&&(Y&&Y.flags&262144?v.nonFixingMapper:v.mapper),Be=oe?FK(m,oe):m;return fKt(Be,u,(Me,He)=>{cG(W.inferences,Me,He)}),v||IKt(m,u,(Me,He)=>{cG(W.inferences,Me,He,128)}),M2e(u,TKt(W),wo(m.declaration))}function MQs(u,m,v,D){let W=hat(m,u),Y=ioe(u.attributes,W,D,v);return cG(D.inferences,Y,W),TKt(D)}function s_n(u){if(!u)return es;let m=Ml(u);return gLe(u)?m:fW(u.parent)?hZ(m):ZC(u.parent)?Uot(m):m}function h8t(u,m,v,D,W){if(nI(u))return MQs(u,m,D,W);if(u.kind!==171&&u.kind!==227){let Me=ue(m.typeParameters,$e=>!!KQ($e)),He=Ky(u,Me?8:0);if(He){let $e=Ad(m);if(wO($e)){let Vt=iX(u);if(!(!Me&&Ky(u,8)!==He)){let vn=_Kt(fmn(Vt,1)),ii=Cl(He,vn),Yi=QK(ii),js=Yi&&Yi.typeParameters?TK(fUt(Yi,Yi.typeParameters)):ii;cG(W.inferences,js,$e,128)}let wr=nSe(m.typeParameters,m,W.flags),dn=Cl(He,Vt&&P5s(Vt));cG(wr.inferences,dn,$e),W.returnMapper=zt(wr.inferences,soe)?_Kt(zMs(wr)):void 0}}}let Y=ISe(m),oe=Y?Math.min(xE(m)-1,v.length):v.length;if(Y&&Y.flags&262144){let Me=de(W.inferences,He=>He.typeParameter===Y);Me&&(Me.impliedArity=Se(v,wat,oe)<0?v.length-oe:void 0)}let Be=W5(m);if(Be&&wO(Be)){let Me=c_n(u);cG(W.inferences,s_n(Me),Be)}for(let Me=0;Me=v-1){let $e=u[v-1];if(wat($e)){let Vt=$e.kind===238?$e.type:ioe($e.expression,D,W,Y);return G9(Vt)?o_n(Vt):f0(Z9(33,Vt,wt,$e.kind===231?$e.expression:$e),oe)}}let Be=[],Me=[],He=[];for(let $e=m;$ewu(void 0,Z.Type_0_does_not_satisfy_the_constraint_1):void 0,Vt=D||Z.Type_0_does_not_satisfy_the_constraint_1;Be||(Be=x1(Y,oe));let xt=oe[Me];if(!I0(xt,D1(Cl(He,Be),xt),v?m[Me]:void 0,Vt,$e))return}}return oe}function a_n(u){if(Kq(u.tagName))return 2;let m=hy(Ml(u.tagName));return B(rg(m,1))?0:B(rg(m,0))?1:2}function HQs(u,m,v,D,W,Y,oe){let Be=hat(m,u),Me=Yw(u)?RCn(u):ioe(u.attributes,Be,void 0,D),He=D&4?rSe(Me):Me;return $e()&&$Ut(He,Be,v,W?Yw(u)?u:u.tagName:void 0,Yw(u)?void 0:u.attributes,void 0,Y,oe);function $e(){var Vt;if(bat(u))return!0;let xt=(iR(u)||xU(u))&&!(Kq(u.tagName)||sR(u.tagName))?Ml(u.tagName):void 0;if(!xt)return!0;let wr=rg(xt,0);if(!B(wr))return!0;let dn=f6t(u);if(!dn)return!0;let vn=NI(dn,111551,!0,!1,u);if(!vn)return!0;let ii=fo(vn),Yi=rg(ii,0);if(!B(Yi))return!0;let js=!1,Co=0;for(let Mi of Yi){let To=SR(Mi,0),Ka=rg(To,0);if(B(Ka))for(let _l of Ka){if(js=!0,Sk(_l))return!0;let ka=xE(_l);ka>Co&&(Co=ka)}}if(!js)return!0;let Ji=1/0;for(let Mi of wr){let To=vR(Mi);To{W.push(Y.expression)}),W}if(u.kind===171)return YQs(u);if(u.kind===227)return[u.left];if(nI(u))return u.attributes.properties.length>0||iR(u)&&u.parent.children.length>0?[u.attributes]:E;let m=u.arguments||E,v=f8t(m);if(v>=0){let D=m.slice(0,v);for(let W=v;W{var He;let $e=oe.target.elementFlags[Me],Vt=dSe(Y,$e&4?f0(Be):Be,!!($e&12),(He=oe.target.labeledElementDeclarations)==null?void 0:He[Me]);D.push(Vt)}):D.push(Y)}return D}return m}function YQs(u){let m=u.expression,v=k8t(u);if(v){let D=[];for(let W of v.parameters){let Y=fo(W);D.push(dSe(m,Y))}return D}return pe.fail()}function l_n(u,m){return Te.experimentalDecorators?QQs(u,m):Math.min(Math.max(xE(m),1),2)}function QQs(u,m){switch(u.parent.kind){case 264:case 232:return 1;case 173:return Fw(u.parent)?3:2;case 175:case 178:case 179:return m.parameters.length<=2?2:3;case 170:return 3;default:return pe.fail()}}function u_n(u){let m=ms(u),{start:v,length:D}=qa(m,jo(u.expression)?u.expression.name:u.expression);return{start:v,length:D,sourceFile:m}}function pSe(u,m,...v){if(Ll(u)){let{sourceFile:D,start:W,length:Y}=u_n(u);return"message"in m?rm(D,W,Y,m,...v):Ut(D,m)}else return"message"in m?mo(u,m,...v):Dw(ms(u),u,m)}function XQs(u){return gv(u)?jo(u.expression)?u.expression.name:u.expression:QI(u)?jo(u.tag)?u.tag.name:u.tag:nI(u)?u.tagName:u}function JQs(u){if(!Ll(u)||!Ir(u.expression))return!1;let m=An(u.expression,u.expression.escapedText,111551,void 0,!1),v=m?.valueDeclaration;if(!v||!Si(v)||!FF(v.parent)||!m2(v.parent.parent)||!Ir(v.parent.parent.expression))return!1;let D=SUt(!1);return D?Lv(v.parent.parent.expression,!0)===D:!1}function g_n(u,m,v,D){var W;let Y=f8t(v);if(Y>-1)return mo(v[Y],Z.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let oe=Number.POSITIVE_INFINITY,Be=Number.NEGATIVE_INFINITY,Me=Number.NEGATIVE_INFINITY,He=Number.POSITIVE_INFINITY,$e;for(let vn of m){let ii=vR(vn),Yi=xE(vn);iiMe&&(Me=ii),v.lengthW?oe=Math.min(oe,Me):He1&&(vn=_l(Yi,dk,Ji,Mi)),vn||(vn=_l(Yi,g0,Ji,Mi));let To=sa(u);if(To.resolvedSignature!==Go&&!v)return pe.assert(To.resolvedSignature),To.resolvedSignature;if(vn)return vn;if(vn=KQs(u,Yi,Co,!!v,D),To.resolvedSignature=vn,Vt){if(!Y&&$e&&(Y=Z.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),xt)if(xt.length===1||xt.length>3){let ka=xt[xt.length-1],Kc;xt.length>3&&(Kc=wu(Kc,Z.The_last_overload_gave_the_following_error),Kc=wu(Kc,Z.No_overload_matches_this_call)),Y&&(Kc=wu(Kc,Y));let Vu=DPe(u,Co,ka,g0,0,!0,()=>Kc);if(Vu)for(let dd of Vu)ka.declaration&&xt.length>3&&ug(dd,mo(ka.declaration,Z.The_last_overload_is_declared_here)),Ka(ka,dd),PA.add(dd);else pe.fail("No error for last overload signature")}else{let ka=[],Kc=0,Vu=Number.MAX_VALUE,dd=0,Vl=0;for(let eo of xt){let _o=DPe(u,Co,eo,g0,0,!0,()=>wu(void 0,Z.Overload_0_of_1_2_gave_the_following_error,Vl+1,Yi.length,hO(eo)));_o?(_o.length<=Vu&&(Vu=_o.length,dd=Vl),Kc=Math.max(Kc,_o.length),ka.push(_o)):pe.fail("No error for 3 or fewer overload signatures"),Vl++}let vf=Kc>1?ka[dd]:Sr(ka);pe.assert(vf.length>0,"No errors reported for 3 or fewer overload signatures");let zI=wu(lt(vf,Qr),Z.No_overload_matches_this_call);Y&&(zI=wu(zI,Y));let O0=[...jt(vf,eo=>eo.relatedInformation)],xs;if(ue(vf,eo=>eo.start===vf[0].start&&eo.length===vf[0].length&&eo.file===vf[0].file)){let{file:eo,start:qc,length:_o}=vf[0];xs={file:eo,start:qc,length:_o,code:zI.code,category:zI.category,messageText:zI,relatedInformation:O0}}else xs=Dw(ms(u),XQs(u),zI,O0);Ka(xt[0],xs),PA.add(xs)}else if(wr)PA.add(g_n(u,[wr],Co,Y));else if(dn)C8t(dn,u.typeArguments,!0,Y);else if(!He){let ka=Le(m,Kc=>I8t(Kc,js));ka.length===0?PA.add(UQs(u,m,js,Y)):PA.add(g_n(u,ka,Co,Y))}}return vn;function Ka(ka,Kc){var Vu,dd;let Vl=xt,vf=wr,zI=dn,O0=((dd=(Vu=ka.declaration)==null?void 0:Vu.symbol)==null?void 0:dd.declarations)||E,eo=O0.length>1?de(O0,qc=>Gd(qc)&&d1(qc.body)):void 0;if(eo){let qc=vS(eo),_o=!qc.typeParameters;_l([qc],g0,_o)&&ug(Kc,mo(eo,Z.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}xt=Vl,wr=vf,dn=zI}function _l(ka,Kc,Vu,dd=!1){if(xt=void 0,wr=void 0,dn=void 0,Vu){let Vl=ka[0];if(zt(js)||!Tat(u,Co,Vl,dd))return;if(DPe(u,Co,Vl,Kc,0,!1,void 0)){xt=[Vl];return}return Vl}for(let Vl=0;Vl0),zq(u),D||m.length===1||m.some(Y=>!!Y.typeParameters)?qQs(u,m,v,W):jQs(m)}function jQs(u){let m=Xt(u,Me=>Me.thisParameter),v;m.length&&(v=A_n(m,m.map(GPe)));let{min:D,max:W}=OLe(u,zQs),Y=[];for(let Me=0;Mex0($e)?Me<$e.parameters.length-1?$e.parameters[Me]:Ei($e.parameters):Me<$e.parameters.length?$e.parameters[Me]:void 0);pe.assert(He.length!==0),Y.push(A_n(He,Xt(u,$e=>oX($e,Me))))}let oe=Xt(u,Me=>x0(Me)?Ei(Me.parameters):void 0),Be=128;if(oe.length!==0){let Me=f0(Ha(Xt(u,wIn),2));Y.push(d_n(oe,Me)),Be|=1}return u.some(Jtn)&&(Be|=2),YN(u[0].declaration,void 0,v,Y,jg(u.map(Ad)),void 0,D,Be)}function zQs(u){let m=u.parameters.length;return x0(u)?m-1:m}function A_n(u,m){return d_n(u,Ha(m,2))}function d_n(u,m){return LK(ma(u),m)}function qQs(u,m,v,D){let W=tXs(m,Tr===void 0?v.length:Tr),Y=m[W],{typeParameters:oe}=Y;if(!oe)return Y;let Be=e_n(u)?u.typeArguments:void 0,Me=Be?hot(Y,$Qs(Be,oe,wo(u))):eXs(u,oe,Y,v,D);return m[W]=Me,Me}function $Qs(u,m,v){let D=u.map(qq);for(;D.length>m.length;)D.pop();for(;D.length=m)return W;oe>D&&(D=oe,v=W)}return v}function rXs(u,m,v){if(u.expression.kind===108){let Me=Aat(u.expression);if(Xo(Me)){for(let He of u.arguments)Ml(He);return Ls}if(!lo(Me)){let He=DB(_C(u));if(He){let $e=rG(Me,He.typeArguments,He);return roe(u,$e,m,v,0)}}return YK(u)}let D,W=Ml(u.expression);if(vB(u)){let Me=eSe(W,u.expression);D=Me===W?0:g3(u)?16:8,W=Me}else D=0;if(W=OCn(W,u.expression,_Qs),W===Vn)return Ss;let Y=hy(W);if(lo(Y))return ER(u);let oe=rg(Y,0),Be=rg(Y,1).length;if(kPe(W,Y,oe.length,Be))return!lo(W)&&u.typeArguments&&Br(u,Z.Untyped_function_calls_may_not_accept_type_arguments),YK(u);if(!oe.length){if(Be)Br(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,ro(W));else{let Me;if(u.arguments.length===1){let He=ms(u).text;ml(He.charCodeAt(Yu(He,u.expression.end,!0)-1))&&(Me=mo(u.expression,Z.Are_you_missing_a_semicolon))}y8t(u.expression,Y,0,Me)}return ER(u)}return v&8&&!u.typeArguments&&oe.some(nXs)?(z_n(u,v),Go):oe.some(Me=>wo(Me.declaration)&&!!wx(Me.declaration))?(Br(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,ro(W)),ER(u)):roe(u,oe,m,v,D)}function nXs(u){return!!(u.typeParameters&&d6t(Ad(u)))}function kPe(u,m,v,D){return Xo(u)||Xo(m)&&!!(u.flags&262144)||!v&&!D&&!(m.flags&1048576)&&!(qB(m).flags&131072)&&pg(u,Js)}function iXs(u,m,v){let D=toe(u.expression);if(D===Vn)return Ss;if(D=hy(D),lo(D))return ER(u);if(Xo(D))return u.typeArguments&&Br(u,Z.Untyped_function_calls_may_not_accept_type_arguments),YK(u);let W=rg(D,1);if(W.length){if(!sXs(u,W[0]))return ER(u);if(p_n(W,Be=>!!(Be.flags&4)))return Br(u,Z.Cannot_create_an_instance_of_an_abstract_class),ER(u);let oe=D.symbol&&hN(D.symbol);return oe&&Ga(oe,64)?(Br(u,Z.Cannot_create_an_instance_of_an_abstract_class),ER(u)):roe(u,W,m,v,0)}let Y=rg(D,0);if(Y.length){let oe=roe(u,Y,m,v,0);return Rt||(oe.declaration&&!KN(oe.declaration)&&Ad(oe)!==es&&Br(u,Z.Only_a_void_function_can_be_called_with_the_new_keyword),W5(oe)===es&&Br(u,Z.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),oe}return y8t(u.expression,D,1),ER(u)}function p_n(u,m){return Ki(u)?zt(u,v=>p_n(v,m)):u.compositeKind===1048576?zt(u.compositeSignatures,m):m(u)}function _8t(u,m){let v=eT(m);if(!B(v))return!1;let D=v[0];if(D.flags&2097152){let W=D.types,Y=aIn(W),oe=0;for(let Be of D.types){if(!Y[oe]&&la(Be)&3&&(Be.symbol===u||_8t(u,Be)))return!0;oe++}return!1}return D.symbol===u?!0:_8t(u,D)}function sXs(u,m){if(!m||!m.declaration)return!0;let v=m.declaration,D=$Y(v,6);if(!D||v.kind!==177)return!0;let W=hN(v.parent.symbol),Y=Lp(v.parent.symbol);if(!u6t(u,W)){let oe=_C(u);if(oe&&D&4){let Be=qq(oe);if(_8t(v.parent.symbol,Be))return!0}return D&2&&Br(u,Z.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,ro(Y)),D&4&&Br(u,Z.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,ro(Y)),!1}return!0}function f_n(u,m,v){let D,W=v===0,Y=jq(m),oe=Y&&rg(Y,v).length>0;if(m.flags&1048576){let Me=m.types,He=!1;for(let $e of Me)if(rg($e,v).length!==0){if(He=!0,D)break}else if(D||(D=wu(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,ro($e)),D=wu(D,W?Z.Not_all_constituents_of_type_0_are_callable:Z.Not_all_constituents_of_type_0_are_constructable,ro(m))),He)break;He||(D=wu(void 0,W?Z.No_constituent_of_type_0_is_callable:Z.No_constituent_of_type_0_is_constructable,ro(m))),D||(D=wu(D,W?Z.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Z.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,ro(m)))}else D=wu(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,ro(m));let Be=W?Z.This_expression_is_not_callable:Z.This_expression_is_not_constructable;if(Ll(u.parent)&&u.parent.arguments.length===0){let{resolvedSymbol:Me}=sa(u);Me&&Me.flags&32768&&(Be=Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:wu(D,Be),relatedMessage:oe?Z.Did_you_forget_to_use_await:void 0}}function y8t(u,m,v,D){let{messageChain:W,relatedMessage:Y}=f_n(u,m,v),oe=Dw(ms(u),u,W);if(Y&&ug(oe,mo(u,Y)),Ll(u.parent)){let{start:Be,length:Me}=u_n(u.parent);oe.start=Be,oe.length=Me}PA.add(oe),I_n(m,v,D?ug(oe,D):oe)}function I_n(u,m,v){if(!u.symbol)return;let D=fa(u.symbol).originatingImport;if(D&&!jp(D)){let W=rg(fo(fa(u.symbol).target),m);if(!W||!W.length)return;ug(v,mo(D,Z.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))}}function oXs(u,m,v){let D=Ml(u.tag),W=hy(D);if(lo(W))return ER(u);let Y=rg(W,0),oe=rg(W,1).length;if(kPe(D,W,Y.length,oe))return YK(u);if(!Y.length){if(YI(u.parent)){let Be=mo(u.tag,Z.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);return PA.add(Be),ER(u)}return y8t(u.tag,W,0),ER(u)}return roe(u,Y,m,v,0)}function aXs(u){switch(u.parent.kind){case 264:case 232:return Z.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 170:return Z.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 173:return Z.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 175:case 178:case 179:return Z.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return pe.fail()}}function cXs(u,m,v){let D=Ml(u.expression),W=hy(D);if(lo(W))return ER(u);let Y=rg(W,0),oe=rg(W,1).length;if(kPe(D,W,Y.length,oe))return YK(u);if(gXs(u,Y)&&!dI(u.expression)){let Me=Fp(u.expression,!1);return Br(u,Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,Me),ER(u)}let Be=aXs(u);if(!Y.length){let Me=f_n(u.expression,W,0),He=wu(Me.messageChain,Be),$e=Dw(ms(u.expression),u.expression,He);return Me.relatedMessage&&ug($e,mo(u.expression,Me.relatedMessage)),PA.add($e),I_n(W,0,$e),ER(u)}return roe(u,Y,m,v,0,Be)}function Dat(u,m){let v=HK(u),D=v&&R1(v),W=D&&h_(D,dS.Element,788968),Y=W&&kt.symbolToEntityName(W,788968,u),oe=me.createFunctionTypeNode(void 0,[me.createParameterDeclaration(void 0,void 0,"props",void 0,kt.typeToTypeNode(m,u))],Y?me.createTypeReferenceNode(Y,void 0):me.createKeywordTypeNode(133)),Be=AA(1,"props");return Be.links.type=m,YN(oe,void 0,void 0,[Be],W?Lp(W):nn,void 0,1,0)}function h_n(u){let m=sa(ms(u));if(m.jsxFragmentType!==void 0)return m.jsxFragmentType;let v=Jw(u);if(!((Te.jsx===2||Te.jsxFragmentFactory!==void 0)&&v!=="null"))return m.jsxFragmentType=hr;let W=Te.jsx!==1&&Te.jsx!==3,Y=PA?Z.Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:void 0,oe=bat(u)??An(u,v,W?111551:111167,Y,!0);if(oe===void 0)return m.jsxFragmentType=nn;if(oe.escapedName===zet.Fragment)return m.jsxFragmentType=fo(oe);let Be=oe.flags&2097152?XC(oe):oe,Me=oe&&R1(Be),He=Me&&h_(Me,zet.Fragment,2),$e=He&&fo(He);return m.jsxFragmentType=$e===void 0?nn:$e}function lXs(u,m,v){let D=Yw(u),W;if(D)W=h_n(u);else{if(Kq(u.tagName)){let Be=GCn(u),Me=Dat(u,Be);return rX(ioe(u.attributes,hat(Me,u),void 0,0),Be,u.tagName,u.attributes),B(u.typeArguments)&&(F(u.typeArguments,nA),PA.add(C3(ms(u),u.typeArguments,Z.Expected_0_type_arguments_but_got_1,0,B(u.typeArguments)))),Me}W=Ml(u.tagName)}let Y=hy(W);if(lo(Y))return ER(u);let oe=kCn(W,u);return kPe(W,Y,oe.length,0)?YK(u):oe.length===0?(D?Br(u,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,Fp(u)):Br(u.tagName,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,Fp(u.tagName)),ER(u)):roe(u,oe,m,v,0)}function uXs(u,m,v){let D=Ml(u.right);if(!Xo(D)){let W=L8t(D);if(W){let Y=hy(W);if(lo(Y))return ER(u);let oe=rg(Y,0),Be=rg(Y,1);if(kPe(W,Y,oe.length,Be.length))return YK(u);if(oe.length)return roe(u,oe,m,v,0)}else if(!(nct(D)||tX(D,Js)))return Br(u.right,Z.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method),ER(u)}return Ls}function gXs(u,m){return m.length&&ue(m,v=>v.minArgumentCount===0&&!x0(v)&&v.parameters.length1?DI(u.arguments[1]):void 0;for(let Y=2;Y{let oe=G1(W);Lot(Y,oe)||Uhn(W,Y,v,Z.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)})}function _Xs(u){let m=Ml(u.expression),v=eSe(m,u.expression);return Kot(hZ(v),u,v!==m)}function yXs(u){return u.flags&64?_Xs(u):hZ(Ml(u.expression))}function S_n(u){if(Iyn(u),F(u.typeArguments,nA),u.kind===234){let v=fv(u.parent);v.kind===227&&v.operatorToken.kind===104&&DW(u,v.right)&&Br(u,Z.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}let m=u.kind===234?Ml(u.expression):DF(u.exprName)?yPe(u.exprName):Ml(u.exprName);return v_n(m,u)}function v_n(u,m){let v=m.typeArguments;if(u===Vn||lo(u)||!zt(v))return u;let D=sa(m);if(D.instantiationExpressionTypes||(D.instantiationExpressionTypes=new Map),D.instantiationExpressionTypes.has(u.id))return D.instantiationExpressionTypes.get(u.id);let W=!1,Y,oe=Me(u);D.instantiationExpressionTypes.set(u.id,oe);let Be=W?Y:u;return Be&&PA.add(C3(ms(m),v,Z.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,ro(Be))),oe;function Me($e){let Vt=!1,xt=!1,wr=dn($e);return W||(W=xt),Vt&&!xt&&(Y??(Y=$e)),wr;function dn(vn){if(vn.flags&524288){let ii=CR(vn),Yi=He(ii.callSignatures),js=He(ii.constructSignatures);if(Vt||(Vt=ii.callSignatures.length!==0||ii.constructSignatures.length!==0),xt||(xt=Yi.length!==0||js.length!==0),Yi!==ii.callSignatures||js!==ii.constructSignatures){let Co=Qf(AA(0,"__instantiationExpression"),ii.members,Yi,js,ii.indexInfos);return Co.objectFlags|=8388608,Co.node=m,Co}}else if(vn.flags&58982400){let ii=W_(vn);if(ii){let Yi=dn(ii);if(Yi!==ii)return Yi}}else{if(vn.flags&1048576)return Xf(vn,Me);if(vn.flags&2097152)return jg(Er(vn.types,dn))}return vn}}function He($e){let Vt=Le($e,xt=>!!xt.typeParameters&&I8t(xt,v));return Er(Vt,xt=>{let wr=C8t(xt,v,!0);return wr?M2e(xt,wr,wo(xt.declaration)):xt})}}function bXs(u){return nA(u.type),v8t(u.expression,u.type)}function v8t(u,m,v){let D=Ml(u,v),W=tl(m);if(lo(W))return W;let Y=ji(m.parent,oe=>oe.kind===239||oe.kind===351);return rX(D,W,Y,u,Z.Type_0_does_not_satisfy_the_expected_type_1),D}function EXs(u){return w8s(u),u.keywordToken===105?B8t(u):u.keywordToken===102?u.name.escapedText==="defer"?(pe.assert(!Ll(u.parent)||u.parent.expression!==u,"Trying to get the type of `import.defer` in `import.defer(...)`"),nn):SXs(u):pe.assertNever(u.keywordToken)}function B_n(u){switch(u.keywordToken){case 102:return YIn();case 105:let m=B8t(u);return lo(m)?nn:PXs(m);default:pe.assertNever(u.keywordToken)}}function B8t(u){let m=RZe(u);if(m)if(m.kind===177){let v=Uo(m.parent);return fo(v)}else{let v=Uo(m);return fo(v)}else return Br(u,Z.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),nn}function SXs(u){100<=Pe&&Pe<=199?ms(u).impliedNodeFormat!==99&&Br(u,Z.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):Pe<6&&Pe!==4&&Br(u,Z.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext);let m=ms(u);return pe.assert(!!(m.flags&8388608),"Containing file is missing import meta node flag."),u.name.escapedText==="meta"?HIn():nn}function GPe(u){let m=u.valueDeclaration;return V0(fo(u),!1,!!m&&(QT(m)||GB(m)))}function w8t(u,m,v){switch(u.name.kind){case 80:{let D=u.name.escapedText;return u.dotDotDotToken?v&12?D:`${D}_${m}`:v&3?D:`${D}_n`}case 208:{if(u.dotDotDotToken){let D=u.name.elements,W=Gs(li(D),mg),Y=D.length-(W?.dotDotDotToken?1:0);if(m=D-1)return m===D-1?Y:f0(k1(Y,ri));let oe=[],Be=[],Me=[];for(let He=m;He!(Me&1)),Be=oe<0?Y.target.fixedLength:oe;Be>0&&(W=u.parameters.length-1+Be)}}if(W===void 0){if(!v&&u.flags&32)return 0;W=u.minArgumentCount}if(D)return W;for(let Y=W-1;Y>=0;Y--){let oe=SR(u,Y);if(am(oe,t_n).flags&131072)break;W=Y}u.resolvedMinArgumentCount=W}return u.resolvedMinArgumentCount}function Sk(u){if(x0(u)){let m=fo(u.parameters[u.parameters.length-1]);return!bA(m)||!!(m.target.combinedFlags&12)}return!1}function fSe(u){if(x0(u)){let m=fo(u.parameters[u.parameters.length-1]);if(!bA(m))return Xo(m)?f_:m;if(m.target.combinedFlags&12)return ife(m,m.target.fixedLength)}}function ISe(u){let m=fSe(u);return m&&!Gv(m)&&!Xo(m)?m:void 0}function R8t(u){return N8t(u,Oi)}function N8t(u,m){return u.parameters.length>0?SR(u,0):m}function N_n(u,m,v){let D=u.parameters.length-(x0(u)?1:0);for(let Y=0;Y=0);let Y=Tc(D.parent)?fo(Uo(D.parent.parent)):iyn(D.parent),oe=Tc(D.parent)?wt:syn(D.parent),Be=_R(W),Me=_S("target",Y),He=_S("propertyKey",oe),$e=_S("parameterIndex",Be);v.decoratorSignature=ESe(void 0,void 0,[Me,He,$e],es);break}case 175:case 178:case 179:case 173:{let D=m;if(!xa(D.parent))break;let W=iyn(D),Y=_S("target",W),oe=syn(D),Be=_S("propertyKey",oe),Me=pi(D)?es:$In(qq(D));if(!pi(m)||Fw(m)){let $e=$In(qq(D)),Vt=_S("descriptor",$e);v.decoratorSignature=ESe(void 0,void 0,[Y,Be,Vt],Ha([Me,es]))}else v.decoratorSignature=ESe(void 0,void 0,[Y,Be],Ha([Me,es]));break}}return v.decoratorSignature===Ls?void 0:v.decoratorSignature}function k8t(u){return Ke?OXs(u):WXs(u)}function LPe(u){let m=XOe(!0);return m!==oi?(u=_Z(mfe(u))||cn,uZ(m,[u])):cn}function x_n(u){let m=UIn(!0);return m!==oi?(u=_Z(mfe(u))||cn,uZ(m,[u])):cn}function VPe(u,m){let v=LPe(m);return v===cn?(Br(u,jp(u)?Z.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),nn):(SUt(!0)||Br(u,jp(u)?Z.A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),v)}function PXs(u){let m=AA(0,"NewTargetExpression"),v=AA(4,"target",8);v.parent=m,v.links.type=u;let D=$u([v]);return m.members=D,Qf(m,D,E,E,E)}function Gat(u,m){if(!u.body)return nn;let v=BI(u),D=(v&2)!==0,W=(v&1)!==0,Y,oe,Be,Me=es;if(u.body.kind!==242)Y=DI(u.body,m&&m&-9),D&&(Y=mfe(YPe(Y,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(W){let He=L_n(u,m);He?He.length>0&&(Y=Ha(He,2)):Me=Oi;let{yieldTypes:$e,nextTypes:Vt}=MXs(u,m);oe=zt($e)?Ha($e,2):void 0,Be=zt(Vt)?jg(Vt):void 0}else{let He=L_n(u,m);if(!He)return v&2?VPe(u,Oi):Oi;if(He.length===0){let $e=dat(u,void 0),Vt=$e&&(jPe($e,v)||es).flags&32768?wt:es;return v&2?VPe(u,Vt):Vt}Y=Ha(He,2)}if(Y||oe||Be){if(oe&&$ot(u,oe,3),Y&&$ot(u,Y,1),Be&&$ot(u,Be,2),Y&&yR(Y)||oe&&yR(oe)||Be&&yR(Be)){let He=mat(u),$e=He?He===vS(u)?W?void 0:Y:fat(Ad(He),u,void 0):void 0;W?(oe=dKt(oe,$e,0,D),Y=dKt(Y,$e,1,D),Be=dKt(Be,$e,2,D)):Y=FMs(Y,$e,D)}oe&&(oe=G1(oe)),Y&&(Y=G1(Y)),Be&&(Be=G1(Be))}return W?Fat(oe||Oi,Y||Me,Be||pCn(2,u)||cn,D):D?LPe(Y||Me):Y||Me}function Fat(u,m,v,D){let W=D?Sh:Zp,Y=W.getGlobalGeneratorType(!1);if(u=W.resolveIterationType(u,void 0)||cn,m=W.resolveIterationType(m,void 0)||cn,Y===oi){let oe=W.getGlobalIterableIteratorType(!1);return oe!==oi?nfe(oe,[u,m,v]):(W.getGlobalIterableIteratorType(!0),Jg)}return nfe(Y,[u,m,v])}function MXs(u,m){let v=[],D=[],W=(BI(u)&2)!==0;return bZe(u.body,Y=>{let oe=Y.expression?Ml(Y.expression,m):xe;Qi(v,G_n(Y,oe,hr,W));let Be;if(Y.asteriskToken){let Me=Jat(oe,W?19:17,Y.expression);Be=Me&&Me.nextType}else Be=Ky(Y,void 0);Be&&Qi(D,Be)}),{yieldTypes:v,nextTypes:D}}function G_n(u,m,v,D){if(m===Vn)return Vn;let W=u.expression||u,Y=u.asteriskToken?Z9(D?19:17,m,v,W):m;return D?jq(Y,W,u.asteriskToken?Z.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Z.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):Y}function F_n(u,m,v){let D=0;for(let W=0;W=m?v[W]:void 0;D|=Y!==void 0?JPt.get(Y)||32768:0}return D}function Z_n(u){let m=sa(u);if(m.isExhaustive===void 0){m.isExhaustive=0;let v=HXs(u);m.isExhaustive===0&&(m.isExhaustive=v)}else m.isExhaustive===0&&(m.isExhaustive=!1);return m.isExhaustive}function HXs(u){if(u.expression.kind===222){let D=Wmn(u);if(!D)return!1;let W=QN(DI(u.expression.expression)),Y=F_n(0,0,D);return W.flags&3?(556800&Y)===556800:!Zv(W,oe=>zse(oe,Y)===Y)}let m=QN(DI(u.expression));if(!$2e(m))return!1;let v=iat(u);return!v.length||zt(v,kMs)?!1:NHs(Xf(m,my),v)}function x8t(u){return u.endFlowNode&&mPe(u.endFlowNode)}function L_n(u,m){let v=BI(u),D=[],W=x8t(u),Y=!1;if(wF(u.body,oe=>{let Be=oe.expression;if(Be){if(Be=JA(Be,!0),v&2&&Be.kind===224&&(Be=JA(Be.expression,!0)),Be.kind===214&&Be.expression.kind===80&&DI(Be.expression).symbol===qA(u.symbol)&&(!FF(u.symbol.valueDeclaration)||VKt(Be.expression))){Y=!0;return}let Me=DI(Be,m&&m&-9);v&2&&(Me=mfe(YPe(Me,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),Me.flags&131072&&(Y=!0),Qi(D,Me)}else W=!0}),!(D.length===0&&!W&&(Y||YXs(u))))return at&&D.length&&W&&!(KN(u)&&D.some(oe=>oe.symbol===u.symbol))&&Qi(D,wt),D}function YXs(u){switch(u.kind){case 219:case 220:return!0;case 175:return u.parent.kind===211;default:return!1}}function QXs(u){switch(u.kind){case 177:case 178:case 179:return}if(BI(u)!==0)return;let v;if(u.body&&u.body.kind!==242)v=u.body;else if(wF(u.body,W=>{if(v||!W.expression)return!0;v=W.expression})||!v||x8t(u))return;return XXs(u,v)}function XXs(u,m){if(m=JA(m,!0),!!(DI(m).flags&16))return F(u.parameters,(D,W)=>{let Y=fo(D.symbol);if(!Y||Y.flags&16||!Ir(D.name)||oSe(D.symbol)||TB(D))return;let oe=JXs(u,m,D,Y);if(oe)return P2e(1,Bc(D.name.escapedText),W,oe)})}function JXs(u,m,v,D){let W=aU(m)&&m.flowNode||m.parent.kind===254&&m.parent.flowNode||ak(2,void 0,void 0),Y=ak(32,m,W),oe=CZ(v.name,D,D,u,Y);if(oe===D)return;let Be=ak(64,m,W);return qB(CZ(v.name,D,oe,u,Be)).flags&131072?oe:void 0}function G8t(u,m){g(v);return;function v(){let D=BI(u),W=m&&jPe(m,D);if(W&&(uh(W,16384)||W.flags&32769)||u.kind===174||af(u.body)||u.body.kind!==242||!x8t(u))return;let Y=u.flags&1024,oe=Fb(u)||u;if(W&&W.flags&131072)Br(oe,Z.A_function_returning_never_cannot_have_a_reachable_end_point);else if(W&&!Y)Br(oe,Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(W&&at&&!pg(wt,W))Br(oe,Z.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Te.noImplicitReturns){if(!W){if(!Y)return;let Be=Ad(vS(u));if(D0n(u,Be))return}Br(oe,Z.Not_all_code_paths_return_a_value)}}}function V_n(u,m){if(pe.assert(u.kind!==175||u2(u)),zq(u),jA(u)&&Cfe(u,u.name),m&&m&4&&BS(u)){if(!Fb(u)&&!ide(u)){let D=lSe(u);if(D&&wO(Ad(D))){let W=sa(u);if(W.contextFreeType)return W.contextFreeType;let Y=Gat(u,m),oe=YN(void 0,void 0,void 0,E,Y,void 0,0,64),Be=Qf(u.symbol,Ee,[oe],E,E);return Be.objectFlags|=262144,W.contextFreeType=Be}}return tp}return!act(u)&&u.kind===219&&m6t(u),UXs(u,m),fo(Uo(u))}function UXs(u,m){let v=sa(u);if(!(v.flags&64)){let D=lSe(u);if(!(v.flags&64)){v.flags|=64;let W=Nc(rg(fo(Uo(u)),0));if(!W)return;if(BS(u))if(D){let Y=iX(u),oe;if(m&&m&2){N_n(W,D,Y);let Be=fSe(D);Be&&Be.flags&262144&&(oe=FK(D,Y.nonFixingMapper))}oe||(oe=Y?FK(D,Y.mapper):D),wXs(W,oe)}else TXs(W);else if(D&&!u.typeParameters&&D.parameters.length>u.parameters.length){let Y=iX(u);m&&m&2&&N_n(W,D,Y)}if(D&&!Yse(u)&&!W.resolvedReturnType){let Y=Gat(u,m);W.resolvedReturnType||(W.resolvedReturnType=Y)}CSe(u)}}}function KXs(u){pe.assert(u.kind!==175||u2(u));let m=BI(u),v=Yse(u);if(G8t(u,v),u.body)if(Fb(u)||Ad(vS(u)),u.body.kind===242)nA(u.body);else{let D=Ml(u.body),W=v&&jPe(v,m);W&&Uat(u,W,u.body,u.body,D)}}function Zat(u,m,v,D=!1){if(!pg(m,Ag)){let W=D&&hfe(m);return I9(u,!!W&&pg(W,Ag),v),!1}return!0}function jXs(u){if(!Ll(u)||!b3(u))return!1;let m=DI(u.arguments[2]);if(Wi(m,"value")){let W=Fg(m,"writable"),Y=W&&fo(W);if(!Y||Y===Bs||Y===Ys)return!0;if(W&&W.valueDeclaration&&Cm(W.valueDeclaration)){let oe=W.valueDeclaration.initializer,Be=Ml(oe);if(Be===Bs||Be===Ys)return!0}return!1}return!Fg(m,"set")}function BR(u){return!!(aI(u)&8||u.flags&4&&d2(u)&8||u.flags&3&&n8t(u)&6||u.flags&98304&&!(u.flags&65536)||u.flags&8||zt(u.declarations,jXs))}function W_n(u,m,v){var D,W;if(v===0)return!1;if(BR(m)){if(m.flags&4&&bp(u)&&u.expression.kind===110){let Y=Afe(u);if(!(Y&&(Y.kind===177||KN(Y))))return!0;if(m.valueDeclaration){let oe=po(m.valueDeclaration),Be=Y.parent===m.valueDeclaration.parent,Me=Y===m.valueDeclaration.parent,He=oe&&((D=m.parent)==null?void 0:D.valueDeclaration)===Y.parent,$e=oe&&((W=m.parent)==null?void 0:W.valueDeclaration)===Y;return!(Be||Me||He||$e)}}return!0}if(bp(u)){let Y=JA(u.expression);if(Y.kind===80){let oe=sa(Y).resolvedSymbol;if(oe.flags&2097152){let Be=Yb(oe);return!!Be&&Be.kind===275}}}return!1}function hSe(u,m,v){let D=XI(u,39);return D.kind!==80&&!bp(D)?(Br(u,m),!1):D.flags&64?(Br(u,v),!1):!0}function zXs(u){Ml(u.expression);let m=JA(u.expression);if(!bp(m))return Br(m,Z.The_operand_of_a_delete_operator_must_be_a_property_reference),Mn;jo(m)&&p(m.name)&&Br(m,Z.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);let v=sa(m),D=fn(v.resolvedSymbol);return D&&(BR(D)?Br(m,Z.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):qXs(m,D)),Mn}function qXs(u,m){let v=fo(m);at&&!(v.flags&131075)&&!(Wt?m.flags&16777216:bR(v,16777216))&&Br(u,Z.The_operand_of_a_delete_operator_must_be_optional)}function $Xs(u){return Ml(u.expression),Tse}function e4s(u){return zq(u),xe}function O_n(u){let m=!1,v=Ane(u);if(v&&Al(v)){let D=C1(u)?Z.await_expression_cannot_be_used_inside_a_class_static_block:Z.await_using_statements_cannot_be_used_inside_a_class_static_block;Br(u,D),m=!0}else if(!(u.flags&65536))if(sAe(u)){let D=ms(u);if(!NO(D)){let W;if(!m3(D,Te)){W??(W=rs(D,u.pos));let Y=C1(u)?Z.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:Z.await_using_statements_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,oe=rm(D,W.start,W.length,Y);PA.add(oe),m=!0}switch(Pe){case 100:case 101:case 102:case 199:if(D.impliedNodeFormat===1){W??(W=rs(D,u.pos)),PA.add(rm(D,W.start,W.length,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),m=!0;break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:W??(W=rs(D,u.pos));let Y=C1(u)?Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;PA.add(rm(D,W.start,W.length,Y)),m=!0;break}}}else{let D=ms(u);if(!NO(D)){let W=rs(D,u.pos),Y=C1(u)?Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,oe=rm(D,W.start,W.length,Y);if(v&&v.kind!==177&&!(BI(v)&2)){let Be=mo(v,Z.Did_you_mean_to_mark_this_function_as_async);ug(oe,Be)}PA.add(oe),m=!0}}return C1(u)&&UKt(u)&&(Br(u,Z.await_expressions_cannot_be_used_in_a_parameter_initializer),m=!0),m}function t4s(u){g(()=>O_n(u));let m=Ml(u.expression),v=YPe(m,!0,u,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return v===m&&!lo(v)&&!(m.flags&3)&&Ux(!1,mo(u,Z.await_has_no_effect_on_the_type_of_this_expression)),v}function r4s(u){let m=Ml(u.operand);if(m===Vn)return Vn;switch(u.operand.kind){case 9:switch(u.operator){case 41:return Hq(_R(-u.operand.text));case 40:return Hq(_R(+u.operand.text))}break;case 10:if(u.operator===41)return Hq(qOe({negative:!0,base10Value:hz(u.operand.text)}))}switch(u.operator){case 40:case 41:case 55:return UN(m,u.operand),WPe(m,12288)&&Br(u.operand,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(u.operator)),u.operator===40?(WPe(m,2112)&&Br(u.operand,Z.Operator_0_cannot_be_applied_to_type_1,Vi(u.operator),ro(IZ(m))),ri):F8t(m);case 54:z8t(m,u.operand);let v=zse(m,12582912);return v===4194304?Bs:v===8388608?tn:Mn;case 46:case 47:return Zat(u.operand,UN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&hSe(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),F8t(m)}return nn}function n4s(u){let m=Ml(u.operand);return m===Vn?Vn:(Zat(u.operand,UN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&hSe(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),F8t(m))}function F8t(u){return uh(u,2112)?O_(u,3)||uh(u,296)?Ag:oo:ri}function WPe(u,m){if(uh(u,m))return!0;let v=QN(u);return!!v&&uh(v,m)}function uh(u,m){if(u.flags&m)return!0;if(u.flags&3145728){let v=u.types;for(let D of v)if(uh(D,m))return!0}return!1}function O_(u,m,v){return u.flags&m?!0:v&&u.flags&114691?!1:!!(m&296)&&pg(u,ri)||!!(m&2112)&&pg(u,oo)||!!(m&402653316)&&pg(u,$r)||!!(m&528)&&pg(u,Mn)||!!(m&16384)&&pg(u,es)||!!(m&131072)&&pg(u,Oi)||!!(m&65536)&&pg(u,Hn)||!!(m&32768)&&pg(u,wt)||!!(m&4096)&&pg(u,ci)||!!(m&67108864)&&pg(u,fs)}function mSe(u,m,v){return u.flags&1048576?ue(u.types,D=>mSe(D,m,v)):O_(u,m,v)}function Lat(u){return!!(la(u)&16)&&!!u.symbol&&Z8t(u.symbol)}function Z8t(u){return(u.flags&128)!==0}function L8t(u){let m=w0n("hasInstance");if(mSe(u,67108864)){let v=Fg(u,m);if(v){let D=fo(v);if(D&&rg(D,0).length!==0)return D}}}function i4s(u,m,v,D,W){if(v===Vn||D===Vn)return Vn;!Xo(v)&&mSe(v,402784252)&&Br(u,Z.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),pe.assert(DAe(u.parent));let Y=noe(u.parent,void 0,W);if(Y===Go)return Vn;let oe=Ad(Y);return I0(oe,Mn,m,Z.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression),Mn}function s4s(u){return Zv(u,m=>m===zA||!!(m.flags&2097152)&&Ek(QN(m)))}function o4s(u,m,v,D){if(v===Vn||D===Vn)return Vn;if(p(u)){if((Zeife(He,v)):f0(D);return XK(Be,Me,W)}}}}function XK(u,m,v,D){let W;if(u.kind===305){let Y=u;Y.objectAssignmentInitializer&&(at&&!bR(Ml(Y.objectAssignmentInitializer),16777216)&&(m=Fv(m,524288)),f4s(Y.name,Y.equalsToken,Y.objectAssignmentInitializer,v)),W=u.name}else W=u;return W.kind===227&&W.operatorToken.kind===64&&(Gt(W,v),W=W.left,at&&(m=Fv(m,524288))),W.kind===211?a4s(W,m,D):W.kind===210?c4s(W,m,v):l4s(W,m,v)}function l4s(u,m,v){let D=Ml(u,v),W=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Y=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return hSe(u,W,Y)&&rX(m,D,u,u),IW(u)&&iC(u.parent,1048576),m}function OPe(u){switch(u=JA(u),u.kind){case 80:case 11:case 14:case 216:case 229:case 15:case 9:case 10:case 112:case 97:case 106:case 157:case 219:case 232:case 220:case 210:case 211:case 222:case 236:case 286:case 285:return!0;case 228:return OPe(u.whenTrue)&&OPe(u.whenFalse);case 227:return $D(u.operatorToken.kind)?!1:OPe(u.left)&&OPe(u.right);case 225:case 226:switch(u.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 223:case 217:case 235:default:return!1}}function V8t(u,m){return(m.flags&98304)!==0||Lot(u,m)}function u4s(){let u=D9e(m,v,D,W,Y,oe);return(xt,wr)=>{let dn=u(xt,wr);return pe.assertIsDefined(dn),dn};function m(xt,wr,dn){return wr?(wr.stackIndex++,wr.skip=!1,He(wr,void 0),Vt(wr,void 0)):wr={checkMode:dn,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},wo(xt)&&XY(xt)?(wr.skip=!0,Vt(wr,Ml(xt.right,dn)),wr):(g4s(xt),xt.operatorToken.kind===64&&(xt.left.kind===211||xt.left.kind===210)&&(wr.skip=!0,Vt(wr,XK(xt.left,Ml(xt.right,dn),dn,xt.right.kind===110))),wr)}function v(xt,wr,dn){if(!wr.skip)return Be(wr,xt)}function D(xt,wr,dn){if(!wr.skip){let vn=$e(wr);pe.assertIsDefined(vn),He(wr,vn),Vt(wr,void 0);let ii=xt.kind;if(RAe(ii)){let Yi=dn.parent;for(;Yi.kind===218||Yne(Yi);)Yi=Yi.parent;(ii===56||H3(Yi))&&j8t(dn.left,vn,H3(Yi)?Yi.thenStatement:void 0),Hne(ii)&&z8t(vn,dn.left)}}}function W(xt,wr,dn){if(!wr.skip)return Be(wr,xt)}function Y(xt,wr){let dn;if(wr.skip)dn=$e(wr);else{let vn=Me(wr);pe.assertIsDefined(vn);let ii=$e(wr);pe.assertIsDefined(ii),dn=H_n(xt.left,xt.operatorToken,xt.right,vn,ii,wr.checkMode,xt)}return wr.skip=!1,He(wr,void 0),Vt(wr,void 0),wr.stackIndex--,dn}function oe(xt,wr,dn){return Vt(xt,wr),xt}function Be(xt,wr){if(po(wr))return wr;Vt(xt,Ml(wr,xt.checkMode))}function Me(xt){return xt.typeStack[xt.stackIndex]}function He(xt,wr){xt.typeStack[xt.stackIndex]=wr}function $e(xt){return xt.typeStack[xt.stackIndex+1]}function Vt(xt,wr){xt.typeStack[xt.stackIndex+1]=wr}}function g4s(u){if(u.operatorToken.kind===61){if(po(u.parent)){let{left:m,operatorToken:v}=u.parent;po(m)&&v.kind===57&&os(m,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(v.kind))}else if(po(u.left)){let{operatorToken:m}=u.left;(m.kind===57||m.kind===56)&&os(u.left,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(m.kind),Vi(61))}else if(po(u.right)){let{operatorToken:m}=u.right;m.kind===56&&os(u.right,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(m.kind))}A4s(u),d4s(u)}}function A4s(u){let m=XI(u.left,63),v=PPe(m);v!==3&&(v===1?Br(m,Z.This_expression_is_always_nullish):Br(m,Z.Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish))}function d4s(u){let m=XI(u.right,63),v=PPe(m);p4s(u)||(v===1?Br(m,Z.This_expression_is_always_nullish):v===2&&Br(m,Z.This_expression_is_never_nullish))}function p4s(u){return!po(u.parent)||u.parent.operatorToken.kind!==61}function PPe(u){switch(u=XI(u),u.kind){case 224:case 214:case 216:case 213:case 237:case 215:case 212:case 230:case 110:return 3;case 227:switch(u.operatorToken.kind){case 64:case 61:case 78:case 57:case 76:case 56:case 77:return 3;case 28:return PPe(u.right)}return 2;case 228:return PPe(u.whenTrue)|PPe(u.whenFalse);case 106:return 1;case 80:return W0(u)===dt?1:3}return 2}function f4s(u,m,v,D,W){let Y=m.kind;if(Y===64&&(u.kind===211||u.kind===210))return XK(u,Ml(v,D),D,v.kind===110);let oe;Hne(Y)?oe=wSe(u,D):oe=Ml(u,D);let Be=Ml(v,D);return H_n(u,m,v,oe,Be,D,W)}function H_n(u,m,v,D,W,Y,oe){let Be=m.kind;switch(Be){case 42:case 43:case 67:case 68:case 44:case 69:case 45:case 70:case 41:case 66:case 48:case 71:case 49:case 72:case 50:case 73:case 52:case 75:case 53:case 79:case 51:case 74:if(D===Vn||W===Vn)return Vn;D=UN(D,u),W=UN(W,v);let Ji;if(D.flags&528&&W.flags&528&&(Ji=xt(m.kind))!==void 0)return Br(oe||m,Z.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,Vi(m.kind),Vi(Ji)),ri;{let Ka=Zat(u,D,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),_l=Zat(v,W,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ka;if(O_(D,3)&&O_(W,3)||!(uh(D,2112)||uh(W,2112)))ka=ri;else if(Me(D,W)){switch(Be){case 50:case 73:ii();break;case 43:case 68:Ze<3&&Br(oe,Z.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}ka=oo}else ii(Me),ka=nn;if(Ka&&_l)switch(wr(ka),Be){case 48:case 71:case 49:case 72:case 50:case 73:let Kc=ur(v);typeof Kc.value=="number"&&Math.abs(Kc.value)>=32&&Uw(HF(fv(v.parent.parent)),oe||m,Z.This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2,Fp(u),Vi(Be),Kc.value%32);break;default:break}return ka}case 40:case 65:if(D===Vn||W===Vn)return Vn;!O_(D,402653316)&&!O_(W,402653316)&&(D=UN(D,u),W=UN(W,v));let Mi;return O_(D,296,!0)&&O_(W,296,!0)?Mi=ri:O_(D,2112,!0)&&O_(W,2112,!0)?Mi=oo:O_(D,402653316,!0)||O_(W,402653316,!0)?Mi=$r:(Xo(D)||Xo(W))&&(Mi=lo(D)||lo(W)?nn:hr),Mi&&!Vt(Be)?Mi:Mi?(Be===65&&wr(Mi),Mi):(ii((_l,ka)=>O_(_l,402655727)&&O_(ka,402655727)),hr);case 30:case 32:case 33:case 34:return Vt(Be)&&(D=gKt(UN(D,u)),W=gKt(UN(W,v)),vn((Ka,_l)=>{if(Xo(Ka)||Xo(_l))return!0;let ka=pg(Ka,Ag),Kc=pg(_l,Ag);return ka&&Kc||!ka&&!Kc&&rPe(Ka,_l)})),Mn;case 35:case 36:case 37:case 38:if(!(Y&&Y&64)){if((Zre(u)||Zre(v))&&(!wo(u)||Be===37||Be===38)){let Ka=Be===35||Be===37;Br(oe,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,Ka?"false":"true")}js(oe,Be,u,v),vn((Ka,_l)=>V8t(Ka,_l)||V8t(_l,Ka))}return Mn;case 104:return i4s(u,v,D,W,Y);case 103:return o4s(u,v,D,W);case 56:case 77:{let Ka=bR(D,4194304)?Ha([VMs(at?D:IZ(W)),W]):D;return Be===77&&wr(W),Ka}case 57:case 76:{let Ka=bR(D,8388608)?Ha([hZ(gmn(D)),W],2):D;return Be===76&&wr(W),Ka}case 61:case 78:{let Ka=bR(D,262144)?Ha([hZ(D),W],2):D;return Be===78&&wr(W),Ka}case 64:let To=po(u.parent)?oI(u.parent):0;return He(To,W),dn(To)?((!(W.flags&524288)||To!==2&&To!==6&&!fZ(W)&&!kKt(W)&&!(la(W)&1))&&wr(W),D):(wr(W),W);case 28:if(!Te.allowUnreachableCode&&OPe(u)&&!$e(u.parent)){let Ka=ms(u),_l=Ka.text,ka=Yu(_l,u.pos);Ka.parseDiagnostics.some(Vu=>Vu.code!==Z.JSX_expressions_must_have_one_parent_element.code?!1:ho(Vu,ka))||Br(u,Z.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return W;default:return pe.fail()}function Me(Ji,Mi){return O_(Ji,2112)&&O_(Mi,2112)}function He(Ji,Mi){if(Ji===2)for(let To of N9(Mi)){let Ka=fo(To);if(Ka.symbol&&Ka.symbol.flags&32){let _l=To.escapedName,ka=An(To.valueDeclaration,_l,788968,void 0,!1);ka?.declarations&&ka.declarations.some(FU)&&(Kx(ka,Z.Duplicate_identifier_0,Bc(_l),To),Kx(To,Z.Duplicate_identifier_0,Bc(_l),ka))}}}function $e(Ji){return Ji.parent.kind===218&&yC(Ji.left)&&Ji.left.text==="0"&&(Ll(Ji.parent.parent)&&Ji.parent.parent.expression===Ji.parent||Ji.parent.parent.kind===216)&&(bp(Ji.right)||Ir(Ji.right)&&Ji.right.escapedText==="eval")}function Vt(Ji){let Mi=WPe(D,12288)?u:WPe(W,12288)?v:void 0;return Mi?(Br(Mi,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(Ji)),!1):!0}function xt(Ji){switch(Ji){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function wr(Ji){$D(Be)&&g(Mi);function Mi(){let To=D;if(Mde(m.kind)&&u.kind===212&&(To=Sat(u,void 0,!0)),hSe(u,Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let Ka;if(Wt&&jo(u)&&uh(Ji,32768)){let _l=Wi(P_(u.expression),u.name.escapedText);Wot(Ji,_l)&&(Ka=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}rX(Ji,To,u,v,Ka)}}}function dn(Ji){var Mi;switch(Ji){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let To=bS(u),Ka=XY(v);return!!Ka&&ag(Ka)&&!!((Mi=To?.exports)!=null&&Mi.size);default:return!1}}function vn(Ji){return Ji(D,W)?!1:(ii(Ji),!0)}function ii(Ji){let Mi=!1,To=oe||m;if(Ji){let Vu=_Z(D),dd=_Z(W);Mi=!(Vu===D&&dd===W)&&!!(Vu&&dd)&&Ji(Vu,dd)}let Ka=D,_l=W;!Mi&&Ji&&([Ka,_l]=I4s(D,W,Ji));let[ka,Kc]=Hpe(Ka,_l);Yi(To,Mi,ka,Kc)||I9(To,Mi,Z.Operator_0_cannot_be_applied_to_types_1_and_2,Vi(m.kind),ka,Kc)}function Yi(Ji,Mi,To,Ka){switch(m.kind){case 37:case 35:case 38:case 36:return I9(Ji,Mi,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,To,Ka);default:return}}function js(Ji,Mi,To,Ka){let _l=Co(JA(To)),ka=Co(JA(Ka));if(_l||ka){let Kc=Br(Ji,Z.This_condition_will_always_return_0,Vi(Mi===37||Mi===35?97:112));if(_l&&ka)return;let Vu=Mi===38||Mi===36?Vi(54):"",dd=_l?Ka:To,Vl=JA(dd);ug(Kc,mo(dd,Z.Did_you_mean_0,`${Vu}Number.isNaN(${Hd(Vl)?cy(Vl):"..."})`))}}function Co(Ji){if(Ir(Ji)&&Ji.escapedText==="NaN"){let Mi=H3s();return!!Mi&&Mi===W0(Ji)}return!1}}function I4s(u,m,v){let D=u,W=m,Y=IZ(u),oe=IZ(m);return v(Y,oe)||(D=Y,W=oe),[D,W]}function h4s(u){g(Vt);let m=f1(u);if(!m)return hr;let v=BI(m);if(!(v&1))return hr;let D=(v&2)!==0;u.asteriskToken&&(D&&ZeM8t(xt,v,void 0)));let Y=W&&i6t(W,D),oe=Y&&Y.yieldType||hr,Be=Y&&Y.nextType||hr,Me=u.expression?Ml(u.expression):xe,He=G_n(u,Me,Be,D);if(W&&He&&rX(He,oe,u.expression||u,u.expression),u.asteriskToken)return e6t(D?19:17,1,Me,u.expression)||hr;if(W)return L9(2,W,D)||hr;let $e=pCn(2,m);return $e||($e=hr,g(()=>{if(Rt&&!XLe(u)){let xt=Ky(u,void 0);(!xt||Xo(xt))&&Br(u,Z.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),$e;function Vt(){u.flags&16384||UC(u,Z.A_yield_expression_is_only_allowed_in_a_generator_body),UKt(u)&&Br(u,Z.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function m4s(u,m){let v=wSe(u.condition,m);j8t(u.condition,v,u.whenTrue);let D=Ml(u.whenTrue,m),W=Ml(u.whenFalse,m);return Ha([D,W],2)}function Y_n(u){let m=u.parent;return dI(m)&&Y_n(m)||Qg(m)&&m.argumentExpression===u}function C4s(u){let m=[u.head.text],v=[];for(let W of u.templateSpans){let Y=Ml(W.expression);WPe(Y,12288)&&Br(W.expression,Z.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),m.push(W.literal.text),v.push(pg(Y,dg)?Y:$r)}let D=u.parent.kind!==216&&ur(u).value;return D?Hq(DE(D)):ffe(u)||Y_n(u)||Zv(Ky(u,void 0)||cn,_4s)?NK(m,v):$r}function _4s(u){return!!(u.flags&134217856||u.flags&58982400&&uh(W_(u)||cn,402653316))}function y4s(u){return pQ(u)&&!xU(u.parent)?u.parent.parent:u}function ioe(u,m,v,D){let W=y4s(u);EPe(W,m,!1),RYs(W,v);let Y=Ml(u,D|1|(v?2:0));v&&v.intraExpressionInferenceSites&&(v.intraExpressionInferenceSites=void 0);let oe=uh(Y,2944)&&Vat(Y,fat(m,u,void 0))?my(Y):Y;return NYs(),cSe(),oe}function DI(u,m){if(m)return Ml(u,m);let v=sa(u);if(!v.resolvedType){let D=Po,W=ll;Po=Ps,ll=void 0,v.resolvedType=Ml(u,m),ll=W,Po=D}return v.resolvedType}function Q_n(u){return u=JA(u,!0),u.kind===217||u.kind===235||IQ(u)}function pfe(u,m,v){let D=_ne(u);if(wo(u)){let Y=cde(u);if(Y)return v8t(D,Y,m)}let W=P8t(D)||(v?ioe(D,v,void 0,m||0):DI(D,m));if(Si(mg(u)?ai(u):u)){if(u.name.kind===207&&F9(W))return b4s(W,u.name);if(u.name.kind===208&&bA(W))return E4s(W,u.name)}return W}function b4s(u,m){let v;for(let Y of m.elements)if(Y.initializer){let oe=X_n(Y);oe&&!Fg(u,oe)&&(v=Ft(v,Y))}if(!v)return u;let D=$u();for(let Y of N9(u))D.set(Y.escapedName,Y);for(let Y of v){let oe=AA(16777220,X_n(Y));oe.links.type=IR(Y,!1,!1),D.set(oe.escapedName,oe)}let W=Qf(u.symbol,D,E,E,p0(u));return W.objectFlags=u.objectFlags,W}function X_n(u){let m=gZ(u.propertyName||u.name);return p2(m)?f2(m):void 0}function E4s(u,m){if(u.target.combinedFlags&12||k9(u)>=m.elements.length)return u;let v=m.elements,D=zQ(u).slice(),W=u.target.elementFlags.slice();for(let Y=k9(u);YVat(u,D))}if(m.flags&58982400){let v=W_(m)||cn;return uh(v,4)&&uh(u,128)||uh(v,8)&&uh(u,256)||uh(v,64)&&uh(u,2048)||uh(v,4096)&&uh(u,8192)||Vat(u,v)}return!!(m.flags&406847616&&uh(u,128)||m.flags&256&&uh(u,256)||m.flags&2048&&uh(u,2048)||m.flags&512&&uh(u,512)||m.flags&8192&&uh(u,8192))}return!1}function ffe(u){let m=u.parent;return vd(m)&&c2(m.type)||IQ(m)&&c2(Gie(m))||S8t(u)&&wK(Ky(u,0))||(dI(m)||YI(m)||cf(m))&&ffe(m)||(Cm(m)||l0(m)||wie(m))&&ffe(m.parent)}function Ife(u,m,v){let D=Ml(u,m,v);return ffe(u)||Lye(u)?my(D):Q_n(u)?D:AKt(D,fat(Ky(u,void 0),u,void 0))}function U_n(u,m){return u.name.kind===168&&rT(u.name),Ife(u.initializer,m)}function K_n(u,m){Cyn(u),u.name.kind===168&&rT(u.name);let v=V_n(u,m);return j_n(u,v,m)}function j_n(u,m,v){if(v&&v&10){let D=ASe(m,0,!0),W=ASe(m,1,!0),Y=D||W;if(Y&&Y.typeParameters){let oe=U5(u,2);if(oe){let Be=ASe(hZ(oe),D?0:1,!1);if(Be&&!Be.typeParameters){if(v&8)return z_n(u,v),tp;let Me=iX(u),He=Me.signature&&Ad(Me.signature),$e=He&&n_n(He);if($e&&!$e.typeParameters&&!ue(Me.inferences,soe)){let Vt=w4s(Me,Y.typeParameters),xt=fUt(Y,Vt),wr=lt(Me.inferences,dn=>CKt(dn.typeParameter));if(fKt(xt,Be,(dn,vn)=>{cG(wr,dn,vn,0,!0)}),zt(wr,soe)&&(IKt(xt,Be,(dn,vn)=>{cG(wr,dn,vn)}),!v4s(Me.inferences,wr)))return B4s(Me.inferences,wr),Me.inferredTypeParameters=Nn(Me.inferredTypeParameters,Vt),TK(xt)}return TK(i_n(Y,Be,Me))}}}}return m}function z_n(u,m){if(m&2){let v=iX(u);v.flags|=4}}function soe(u){return!!(u.candidates||u.contraCandidates)}function S4s(u){return!!(u.candidates||u.contraCandidates||fIn(u.typeParameter))}function v4s(u,m){for(let v=0;vv.symbol.escapedName===m)}function T4s(u,m){let v=m.length;for(;v>1&&m.charCodeAt(v-1)>=48&&m.charCodeAt(v-1)<=57;)v--;let D=m.slice(0,v);for(let W=1;;W++){let Y=D+W;if(!O8t(u,Y))return Y}}function q_n(u){let m=QK(u);if(m&&!m.typeParameters)return Ad(m)}function R4s(u){let m=Ml(u.expression),v=eSe(m,u.expression),D=q_n(m);return D&&Kot(D,u,v!==m)}function P_(u){let m=P8t(u);if(m)return m;if(u.flags&268435456&&ll){let W=ll[id(u)];if(W)return W}let v=ru,D=Ml(u,64);if(ru!==v){let W=ll||(ll=[]);W[id(u)]=D,QLe(u,u.flags|268435456)}return D}function P8t(u){let m=JA(u,!0);if(IQ(m)){let v=Gie(m);if(!c2(v))return tl(v)}if(m=JA(u),C1(m)){let v=P8t(m.expression);return v?jq(v):void 0}if(Ll(m)&&m.expression.kind!==108&&!ly(m,!0)&&!m_n(m)&&!jp(m))return vB(m)?R4s(m):q_n(toe(m.expression));if(vd(m)&&!c2(m.type))return tl(m.type);if(xL(u)||TY(u))return Ml(u)}function MPe(u){let m=sa(u);if(m.contextFreeType)return m.contextFreeType;EPe(u,hr,!1);let v=m.contextFreeType=Ml(u,4);return cSe(),v}function Ml(u,m,v){var D,W;(D=ki)==null||D.push(ki.Phase.Check,"checkExpression",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let Y=ge;ge=u,M=0;let oe=k4s(u,m,v),Be=j_n(u,oe,m);return Lat(Be)&&N4s(u,Be),ge=Y,(W=ki)==null||W.pop(),Be}function N4s(u,m){var v;let D=u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u||(u.kind===80||u.kind===167)&&tct(u)||u.parent.kind===187&&u.parent.exprName===u||u.parent.kind===282;if(D||Br(u,Z.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),Te.isolatedModules||Te.verbatimModuleSyntax&&D&&!An(u,T0(u),2097152,void 0,!1,!0)){pe.assert(!!(m.symbol.flags&128));let W=m.symbol.valueDeclaration,Y=(v=s.getRedirectFromOutput(ms(W).resolvedPath))==null?void 0:v.resolvedRef;W.flags&33554432&&!$L(u)&&(!Y||!Lb(Y.commandLine.options))&&Br(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,qt)}}function D4s(u,m){if(jm(u)){if(iEe(u))return v8t(u.expression,sEe(u),m);if(IQ(u))return b_n(u,m)}return Ml(u.expression,m)}function k4s(u,m,v){let D=u.kind;if(d)switch(D){case 232:case 219:case 220:d.throwIfCancellationRequested()}switch(D){case 80:return qHs(u,m);case 81:return EQs(u);case 110:return yPe(u);case 108:return Aat(u);case 106:return Mt;case 15:case 11:return SKt(u)?Gi:Hq(DE(u.text));case 9:return vyn(u),Hq(_R(+u.text));case 10:return G8s(u),Hq(qOe({negative:!1,base10Value:hz(u.text)}));case 112:return tn;case 97:return Bs;case 229:return C4s(u);case 14:return JYs(u);case 210:return vCn(u,m,v);case 211:return tQs(u,m);case 212:return Sat(u,m);case 167:return MCn(u,m);case 213:return VQs(u,m);case 214:if(jp(u))return IXs(u);case 215:return fXs(u,m);case 216:return hXs(u);case 218:return D4s(u,m);case 232:return bUs(u);case 219:case 220:return V_n(u,m);case 222:return $Xs(u);case 217:case 235:return mXs(u,m);case 236:return yXs(u);case 234:return S_n(u);case 239:return bXs(u);case 237:return EXs(u);case 221:return zXs(u);case 223:return e4s(u);case 224:return t4s(u);case 225:return r4s(u);case 226:return n4s(u);case 227:return Gt(u,m);case 228:return m4s(u,m);case 231:return UYs(u,m);case 233:return xe;case 230:return h4s(u);case 238:return KYs(u);case 295:return IQs(u,m);case 285:return sQs(u,m);case 286:return nQs(u,m);case 289:return oQs(u);case 293:return cQs(u,m);case 287:pe.fail("Shouldn't ever directly check a JsxOpeningElement")}return nn}function $_n(u){uG(u),u.expression&&UC(u.expression,Z.Type_expected),nA(u.constraint),nA(u.default);let m=Z5(Uo(u));W_(m),UPs(m)||Br(u.default,Z.Type_parameter_0_has_a_circular_default,ro(m));let v=Uy(m),D=KQ(m);v&&D&&I0(D,D1(Cl(v,eX(m,D)),D),u.default,Z.Type_0_does_not_satisfy_the_constraint_1),zq(u),g(()=>_fe(u.name,Z.Type_parameter_name_cannot_be_0))}function x4s(u){var m,v;if(d_(u.parent)||xa(u.parent)||OB(u.parent)){let D=Z5(Uo(u)),W=aKt(D)&24576;if(W){let Y=Uo(u.parent);if(OB(u.parent)&&!(la(Lp(Y))&48))Br(u,Z.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(W===8192||W===16384){(m=ki)==null||m.push(ki.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:JC(Lp(Y)),id:JC(D)});let oe=sPe(Y,D,W===16384?ln:mr),Be=sPe(Y,D,W===16384?mr:ln),Me=D;Ie=D,I0(oe,Be,u,Z.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),Ie=Me,(v=ki)==null||v.pop()}}}}function e0n(u){uG(u),UPe(u);let m=f1(u);Ga(u,31)&&(Te.erasableSyntaxOnly&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),m.kind===177&&d1(m.body)||Br(u,Z.A_parameter_property_is_only_allowed_in_a_constructor_implementation),m.kind===177&&Ir(u.name)&&u.name.escapedText==="constructor"&&Br(u.name,Z.constructor_cannot_be_used_as_a_parameter_property_name)),!u.initializer&&GB(u)&&Nu(u.name)&&m.body&&Br(u,Z.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),u.name&&Ir(u.name)&&(u.name.escapedText==="this"||u.name.escapedText==="new")&&(m.parameters.indexOf(u)!==0&&Br(u,Z.A_0_parameter_must_be_the_first_parameter,u.name.escapedText),(m.kind===177||m.kind===181||m.kind===186)&&Br(u,Z.A_constructor_cannot_have_a_this_parameter),m.kind===220&&Br(u,Z.An_arrow_function_cannot_have_a_this_parameter),(m.kind===178||m.kind===179)&&Br(u,Z.get_and_set_accessors_cannot_declare_this_parameters)),u.dotDotDotToken&&!Nu(u.name)&&!pg(qB(fo(u.symbol)),B1)&&Br(u,Z.A_rest_parameter_must_be_of_an_array_type)}function G4s(u){let m=F4s(u);if(!m){Br(u,Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let v=vS(m),D=kv(v);if(!D)return;nA(u.type);let{parameterName:W}=u;if(D.kind!==0&&D.kind!==2){if(D.parameterIndex>=0){if(x0(v)&&D.parameterIndex===v.parameters.length-1)Br(W,Z.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){let Y=()=>wu(void 0,Z.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);I0(D.type,fo(v.parameters[D.parameterIndex]),u.type,void 0,Y)}}else if(W){let Y=!1;for(let{name:oe}of m.parameters)if(Nu(oe)&&t0n(oe,W,D.parameterName)){Y=!0;break}Y||Br(u.parameterName,Z.Cannot_find_parameter_0,D.parameterName)}}}function F4s(u){switch(u.parent.kind){case 220:case 180:case 263:case 219:case 185:case 175:case 174:let m=u.parent;if(u===m.type)return m}}function t0n(u,m,v){for(let D of u.elements){if(Ep(D))continue;let W=D.name;if(W.kind===80&&W.escapedText===v)return Br(m,Z.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,v),!0;if((W.kind===208||W.kind===207)&&t0n(W,m,v))return!0}}function CSe(u){u.kind===182?l8s(u):(u.kind===185||u.kind===263||u.kind===186||u.kind===180||u.kind===177||u.kind===181)&&act(u);let m=BI(u);m&4||((m&3)===3&&Ze0&&v.declarations[0]!==u)return}let m=mot(Uo(u));if(m?.declarations){let v=new Map;for(let D of m.declarations)R0(D)&&D.parameters.length===1&&D.parameters[0].type&&PK(tl(D.parameters[0].type),W=>{let Y=v.get(JC(W));Y?Y.declarations.push(D):v.set(JC(W),{type:W,declarations:[D]})});v.forEach(D=>{if(D.declarations.length>1)for(let W of D.declarations)Br(W,Z.Duplicate_index_signature_for_type_0,ro(D.type))})}}function n0n(u){!uG(u)&&!D8s(u)&&cct(u.name),UPe(u),Wat(u),Ga(u,64)&&u.kind===173&&u.initializer&&Br(u,Z.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,Md(u.name))}function V4s(u){return p(u.name)&&Br(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),n0n(u)}function W4s(u){Cyn(u)||cct(u.name),gu(u)&&u.asteriskToken&&Ir(u.name)&&Vo(u.name)==="constructor"&&Br(u.name,Z.Class_constructor_may_not_be_a_generator),f0n(u),Ga(u,64)&&u.kind===175&&u.body&&Br(u,Z.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,Md(u.name)),p(u.name)&&!_C(u)&&Br(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Wat(u)}function Wat(u){if(p(u.name)&&(ZeGa(He,31))))if(!M4s(Be,u.body))Br(Be,Z.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);else{let He;for(let $e of u.body.statements){if(OC($e)&&xy(XI($e.expression))){He=$e;break}if(i0n($e))break}He===void 0&&Br(u,Z.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)}}else oe||Br(u,Z.Constructors_for_derived_classes_must_contain_a_super_call)}}}function M4s(u,m){let v=fv(u.parent);return OC(v)&&v.parent===m}function i0n(u){return u.kind===108||u.kind===110?!0:TZe(u)?!1:!!Lu(u,i0n)}function s0n(u){Ir(u.name)&&Vo(u.name)==="constructor"&&xa(u.parent)&&Br(u.name,Z.Class_constructor_may_not_be_an_accessor),g(m),nA(u.body),Wat(u);function m(){if(!act(u)&&!m8s(u)&&cct(u.name),QPe(u),CSe(u),u.kind===178&&!(u.flags&33554432)&&d1(u.body)&&u.flags&512&&(u.flags&1024||Br(u.name,Z.A_get_accessor_must_return_a_value)),u.name.kind===168&&rT(u.name),Mse(u)){let D=Uo(u),W=yp(D,178),Y=yp(D,179);if(W&&Y&&!($q(W)&1)){sa(W).flags|=1;let oe=c_(W),Be=c_(Y);(oe&64)!==(Be&64)&&(Br(W.name,Z.Accessors_must_both_be_abstract_or_non_abstract),Br(Y.name,Z.Accessors_must_both_be_abstract_or_non_abstract)),(oe&4&&!(Be&6)||oe&2&&!(Be&2))&&(Br(W.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),Br(Y.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}let v=Upe(Uo(u));u.kind===178&&G8t(u,v)}}function H4s(u){QPe(u)}function Y4s(u,m,v){return u.typeArguments&&v{let D=Y8t(u);D&&o0n(u,D)});let v=sa(u).resolvedSymbol;v&&zt(v.declarations,D=>oQ(D)&&!!(D.flags&536870912))&&KB(xPe(u),v.declarations,v.escapedName)}}function X4s(u){let m=Gs(u.parent,C7);if(!m)return;let v=Y8t(m);if(!v)return;let D=Uy(v[m.typeArguments.indexOf(u)]);return D&&Cl(D,x1(v,Oat(m,v)))}function J4s(u){OIn(u)}function U4s(u){F(u.members,nA),g(m);function m(){let v=Nhn(u);Kat(v,v.symbol),H8t(u),r0n(u)}}function K4s(u){nA(u.elementType)}function j4s(u){let m=!1,v=!1;for(let D of u.elements){let W=wUt(D);if(W&8){let Y=tl(D.type);if(!G9(Y)){Br(D,Z.A_rest_element_type_must_be_an_array_type);break}(Gv(Y)||bA(Y)&&Y.target.combinedFlags&4)&&(W|=4)}if(W&4){if(v){os(D,Z.A_rest_element_cannot_follow_another_rest_element);break}v=!0}else if(W&2){if(v){os(D,Z.An_optional_element_cannot_follow_a_rest_element);break}m=!0}else if(W&1&&m){os(D,Z.A_required_element_cannot_follow_an_optional_element);break}}F(u.elements,nA),tl(u)}function z4s(u){F(u.types,nA),tl(u)}function c0n(u,m){if(!(u.flags&8388608))return u;let v=u.objectType,D=u.indexType,W=Xb(v)&&V2e(v)===2?phn(v,0):XN(v,0),Y=!!iG(v,ri);if(kE(D,oe=>pg(oe,W)||Y&&Vq(oe,ri)))return m.kind===213&&TF(m)&&la(v)&32&&_k(v)&1&&Br(m,Z.Index_signature_in_type_0_only_permits_reading,ro(v)),u;if(kK(v)){let oe=Rot(D,m);if(oe){let Be=PK(hy(v),Me=>Fg(Me,oe));if(Be&&d2(Be)&6)return Br(m,Z.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,Bc(oe)),nn}}return Br(m,Z.Type_0_cannot_be_used_to_index_type_1,ro(D),ro(v)),nn}function q4s(u){nA(u.objectType),nA(u.indexType),c0n(Shn(u),u)}function $4s(u){eJs(u),nA(u.typeParameter),nA(u.nameType),nA(u.type),u.type||X5(u,hr);let m=WUt(u),v=R9(m);if(v)I0(v,mc,u.nameType);else{let D=SS(m);I0(D,mc,u3(u.typeParameter))}}function eJs(u){var m;if((m=u.members)!=null&&m.length)return os(u.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods)}function tJs(u){XUt(u)}function rJs(u){_8s(u),nA(u.type)}function nJs(u){Lu(u,nA)}function iJs(u){ji(u,v=>v.parent&&v.parent.kind===195&&v.parent.extendsType===v)||os(u,Z.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),nA(u.typeParameter);let m=Uo(u.typeParameter);if(m.declarations&&m.declarations.length>1){let v=fa(m);if(!v.typeParametersChecked){v.typeParametersChecked=!0;let D=Z5(m),W=Nge(m,169);if(!G0n(W,[D],Y=>[Y])){let Y=xl(m);for(let oe of W)Br(oe.name,Z.All_declarations_of_0_must_have_identical_constraints,Y)}}}TO(u)}function sJs(u){for(let m of u.templateSpans){nA(m.type);let v=tl(m.type);I0(v,dg,m.type)}tl(u)}function oJs(u){nA(u.argument),u.attributes&&Uie(u.attributes,os),a0n(u)}function aJs(u){u.dotDotDotToken&&u.questionToken&&os(u,Z.A_tuple_member_cannot_be_both_optional_and_rest),u.type.kind===191&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),u.type.kind===192&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),nA(u.type),tl(u)}function HPe(u){return(Zb(u,2)||hC(u))&&!!(u.flags&33554432)}function _Se(u,m){let v=uct(u);if(u.parent.kind!==265&&u.parent.kind!==264&&u.parent.kind!==232&&u.flags&33554432){let D=R7(u);D&&D.flags&128&&!(v&128)&&!(vN(u.parent)&&Lh(u.parent.parent)&&NB(u.parent.parent))&&(v|=32),v|=128}return v&m}function Pat(u){g(()=>cJs(u))}function cJs(u){function m(Ji,Mi){return Mi!==void 0&&Mi.parent===Ji[0].parent?Mi:Ji[0]}function v(Ji,Mi,To,Ka,_l){if((Ka^_l)!==0){let Kc=_Se(m(Ji,Mi),To);Yn(Ji,Vu=>ms(Vu).fileName).forEach(Vu=>{let dd=_Se(m(Vu,Mi),To);for(let Vl of Vu){let vf=_Se(Vl,To)^Kc,zI=_Se(Vl,To)^dd;zI&32?Br(fl(Vl),Z.Overload_signatures_must_all_be_exported_or_non_exported):zI&128?Br(fl(Vl),Z.Overload_signatures_must_all_be_ambient_or_non_ambient):vf&6?Br(fl(Vl)||Vl,Z.Overload_signatures_must_all_be_public_private_or_protected):vf&64&&Br(fl(Vl),Z.Overload_signatures_must_all_be_abstract_or_non_abstract)}})}}function D(Ji,Mi,To,Ka){if(To!==Ka){let _l=KY(m(Ji,Mi));F(Ji,ka=>{KY(ka)!==_l&&Br(fl(ka),Z.Overload_signatures_must_all_be_optional_or_required)})}}let W=230,Y=0,oe=W,Be=!1,Me=!0,He=!1,$e,Vt,xt,wr=u.declarations,dn=(u.flags&16384)!==0;function vn(Ji){if(Ji.name&&af(Ji.name))return;let Mi=!1,To=Lu(Ji.parent,_l=>{if(Mi)return _l;Mi=_l===Ji});if(To&&To.pos===Ji.end&&To.kind===Ji.kind){let _l=To.name||To,ka=To.name;if(Ji.name&&ka&&(p(Ji.name)&&p(ka)&&Ji.name.escapedText===ka.escapedText||Un(Ji.name)&&Un(ka)&&aG(rT(Ji.name),rT(ka))||xw(Ji.name)&&xw(ka)&&gU(Ji.name)===gU(ka))){if((Ji.kind===175||Ji.kind===174)&&lg(Ji)!==lg(To)){let Vu=lg(Ji)?Z.Function_overload_must_be_static:Z.Function_overload_must_not_be_static;Br(_l,Vu)}return}if(d1(To.body)){Br(_l,Z.Function_implementation_name_must_be_0,Md(Ji.name));return}}let Ka=Ji.name||Ji;dn?Br(Ka,Z.Constructor_implementation_is_missing):Ga(Ji,64)?Br(Ka,Z.All_declarations_of_an_abstract_method_must_be_consecutive):Br(Ka,Z.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let ii=!1,Yi=!1,js=!1,Co=[];if(wr)for(let Ji of wr){let Mi=Ji,To=Mi.flags&33554432,Ka=Mi.parent&&(Mi.parent.kind===265||Mi.parent.kind===188)||To;if(Ka&&(xt=void 0),(Mi.kind===264||Mi.kind===232)&&!To&&(js=!0),Mi.kind===263||Mi.kind===175||Mi.kind===174||Mi.kind===177){Co.push(Mi);let _l=_Se(Mi,W);Y|=_l,oe&=_l,Be=Be||KY(Mi),Me=Me&&KY(Mi);let ka=d1(Mi.body);ka&&$e?dn?Yi=!0:ii=!0:xt?.parent===Mi.parent&&xt.end!==Mi.pos&&vn(xt),ka?$e||($e=Mi):He=!0,xt=Mi,Ka||(Vt=Mi)}wo(Ji)&&Eu(Ji)&&Ji.jsDoc&&(He=B(Uye(Ji))>0)}if(Yi&&F(Co,Ji=>{Br(Ji,Z.Multiple_constructor_implementations_are_not_allowed)}),ii&&F(Co,Ji=>{Br(fl(Ji)||Ji,Z.Duplicate_function_implementation)}),js&&!dn&&u.flags&16&&wr){let Ji=Le(wr,Mi=>Mi.kind===264).map(Mi=>mo(Mi,Z.Consider_adding_a_declare_modifier_to_this_class));F(wr,Mi=>{let To=Mi.kind===264?Z.Class_declaration_cannot_implement_overload_list_for_0:Mi.kind===263?Z.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;To&&ug(Br(fl(Mi)||Mi,To,of(u)),...Ji)})}if(Vt&&!Vt.body&&!Ga(Vt,64)&&!Vt.questionToken&&vn(Vt),He&&(wr&&(v(wr,$e,W,Y,oe),D(wr,$e,Be,Me)),$e)){let Ji=jQ(u),Mi=vS($e);for(let To of Ji)if(!uMs(Mi,To)){let Ka=To.declaration&&i9(To.declaration)?To.declaration.parent.tagName:To.declaration;ug(Br(Ka,Z.This_overload_signature_is_not_compatible_with_its_implementation_signature),mo($e,Z.The_implementation_signature_is_declared_here));break}}}function ySe(u){g(()=>lJs(u))}function lJs(u){let m=u.localSymbol;if(!m&&(m=Uo(u),!m.exportSymbol)||yp(m,u.kind)!==u)return;let v=0,D=0,W=0;for(let He of m.declarations){let $e=Me(He),Vt=_Se(He,2080);Vt&32?Vt&2048?W|=$e:v|=$e:D|=$e}let Y=v|D,oe=v&D,Be=W&Y;if(oe||Be)for(let He of m.declarations){let $e=Me(He),Vt=fl(He);$e&Be?Br(Vt,Z.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,Md(Vt)):$e&oe&&Br(Vt,Z.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,Md(Vt))}function Me(He){let $e=He;switch($e.kind){case 265:case 266:case 347:case 339:case 341:return 2;case 268:return a_($e)||QF($e)!==0?5:4;case 264:case 267:case 307:return 3;case 308:return 7;case 278:case 227:let Vt=$e,xt=yf(Vt)?Vt.expression:Vt.right;if(!Hd(xt))return 1;$e=xt;case 272:case 275:case 274:let wr=0,dn=XC(Uo($e));return F(dn.declarations,vn=>{wr|=Me(vn)}),wr;case 261:case 209:case 263:case 277:case 80:return 1;case 174:case 172:return 2;default:return pe.failBadSyntaxKind($e)}}}function hfe(u,m,v,...D){let W=bSe(u,m);return W&&jq(W,m,v,...D)}function bSe(u,m,v){if(Xo(u))return;let D=u;if(D.promisedTypeOfPromise)return D.promisedTypeOfPromise;if(N1(u,XOe(!1)))return D.promisedTypeOfPromise=gf(u)[0];if(mSe(QN(u),402915324))return;let W=Wi(u,"then");if(Xo(W))return;let Y=W?rg(W,0):E;if(Y.length===0){m&&Br(m,Z.A_promise_must_have_a_then_method);return}let oe,Be;for(let $e of Y){let Vt=W5($e);Vt&&Vt!==es&&!JN(u,Vt,dk)?oe=Vt:Be=Ft(Be,$e)}if(!Be){pe.assertIsDefined(oe),v&&(v.value=oe),m&&Br(m,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,ro(u),ro(oe));return}let Me=Fv(Ha(lt(Be,R8t)),2097152);if(Xo(Me))return;let He=rg(Me,0);if(He.length===0){m&&Br(m,Z.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return D.promisedTypeOfPromise=Ha(lt(He,R8t),2)}function YPe(u,m,v,D,...W){return(m?jq(u,v,D,...W):_Z(u,v,D,...W))||nn}function l0n(u){if(mSe(QN(u),402915324))return!1;let m=Wi(u,"then");return!!m&&rg(Fv(m,2097152),0).length>0}function Mat(u){var m;if(u.flags&16777216){let v=BUt(!1);return!!v&&u.aliasSymbol===v&&((m=u.aliasTypeArguments)==null?void 0:m.length)===1}return!1}function mfe(u){return u.flags&1048576?Xf(u,mfe):Mat(u)?u.aliasTypeArguments[0]:u}function u0n(u){if(Xo(u)||Mat(u))return!1;if(kK(u)){let m=W_(u);if(m?m.flags&3||fZ(m)||Zv(m,l0n):uh(u,8650752))return!0}return!1}function uJs(u){let m=BUt(!0);if(m)return Xse(m,[mfe(u)])}function gJs(u){return u0n(u)?uJs(u)??u:(pe.assert(Mat(u)||bSe(u)===void 0,"type provided should not be a non-generic 'promise'-like."),u)}function jq(u,m,v,...D){let W=_Z(u,m,v,...D);return W&&gJs(W)}function _Z(u,m,v,...D){if(Xo(u)||Mat(u))return u;let W=u;if(W.awaitedTypeOfType)return W.awaitedTypeOfType;if(u.flags&1048576){if(sO.lastIndexOf(u.id)>=0){m&&Br(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}let Be=m?He=>_Z(He,m,v,...D):_Z;sO.push(u.id);let Me=Xf(u,Be);return sO.pop(),W.awaitedTypeOfType=Me}if(u0n(u))return W.awaitedTypeOfType=u;let Y={value:void 0},oe=bSe(u,void 0,Y);if(oe){if(u.id===oe.id||sO.lastIndexOf(oe.id)>=0){m&&Br(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}sO.push(u.id);let Be=_Z(oe,m,v,...D);return sO.pop(),Be?W.awaitedTypeOfType=Be:void 0}if(l0n(u)){if(m){pe.assertIsDefined(v);let Be;Y.value&&(Be=wu(Be,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,ro(u),ro(Y.value))),Be=wu(Be,v,...D),PA.add(Dw(ms(m),m,Be))}return}return W.awaitedTypeOfType=u}function AJs(u,m,v){let D=tl(m);if(Ze>=2){if(lo(D))return;let Y=XOe(!0);if(Y!==oi&&!N1(D,Y)){W(Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,m,v,ro(_Z(D)||es));return}}else{if(Jq(u,5),lo(D))return;let Y=pne(m);if(Y===void 0){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,ro(D));return}let oe=NI(Y,111551,!0),Be=oe?fo(oe):nn;if(lo(Be)){Y.kind===80&&Y.escapedText==="Promise"&&vs(D)===XOe(!1)?Br(v,Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,cy(Y));return}let Me=_3s(!0);if(Me===Jg){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,cy(Y));return}let He=Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!I0(Be,Me,v,He,()=>m===v?void 0:wu(void 0,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;let Vt=Y&&T0(Y),xt=h_(u.locals,Vt.escapedText,111551);if(xt){Br(xt.valueDeclaration,Z.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,Vo(Vt),cy(Y));return}}YPe(D,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function W(Y,oe,Be,Me){if(oe===Be)Br(Be,Y,Me);else{let He=Br(Be,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);ug(He,mo(oe,Y,Me))}}}function dJs(u){let m=ms(u);if(!NO(m)){let v=u.expression;if(dI(v))return!1;let D=!0,W;for(;;){if(g_(v)||yv(v)){v=v.expression;continue}if(Ll(v)){D||(W=v),v.questionDotToken&&(W=v.questionDotToken),v=v.expression,D=!1;continue}if(jo(v)){v.questionDotToken&&(W=v.questionDotToken),v=v.expression,D=!1;continue}Ir(v)||(W=v);break}if(W)return ug(Br(u.expression,Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),mo(W,Z.Invalid_syntax_in_decorator)),!0}return!1}function pJs(u){dJs(u);let m=noe(u);xat(m,u);let v=Ad(m);if(v.flags&1)return;let D=k8t(u);if(!D?.resolvedReturnType)return;let W,Y=D.resolvedReturnType;switch(u.parent.kind){case 264:case 232:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 173:if(!Ke){W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 170:W=Z.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 175:case 178:case 179:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return pe.failBadSyntaxKind(u.parent)}I0(v,Y,u.expression,W)}function ESe(u,m,v,D,W,Y=v.length,oe=0){let Be=me.createFunctionTypeNode(void 0,E,me.createKeywordTypeNode(133));return YN(Be,u,m,v,D,W,Y,oe)}function X8t(u,m,v,D,W,Y,oe){let Be=ESe(u,m,v,D,W,Y,oe);return TK(Be)}function g0n(u){return X8t(void 0,void 0,E,u)}function A0n(u){let m=_S("value",u);return X8t(void 0,void 0,[m],es)}function J8t(u){if(u)switch(u.kind){case 194:case 193:return d0n(u.types);case 195:return d0n([u.trueType,u.falseType]);case 197:case 203:return J8t(u.type);case 184:return u.typeName}}function d0n(u){let m;for(let v of u){for(;v.kind===197||v.kind===203;)v=v.type;if(v.kind===146||!at&&(v.kind===202&&v.literal.kind===106||v.kind===157))continue;let D=J8t(v);if(!D)return;if(m){if(!Ir(m)||!Ir(D)||m.escapedText!==D.escapedText)return}else m=D}return m}function Hat(u){let m=Zh(u);return TB(u)?Zye(m):m}function QPe(u){if(!hQ(u)||!h1(u)||!u.modifiers||!eU(Ke,u,u.parent,u.parent.parent))return;let m=de(u.modifiers,So);if(m){Ke?(iC(m,8),u.kind===170&&iC(m,32)):Ze1)for(let D=1;D0),v.length>1&&Br(v[1],Z.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);let D=p0n(u.class.expression),W=JL(m);if(W){let Y=p0n(W.expression);Y&&D.escapedText!==Y.escapedText&&Br(D,Z.JSDoc_0_1_does_not_match_the_extends_2_clause,Vo(u.tagName),Vo(D),Vo(Y))}}function TJs(u){let m=NW(u);m&&hC(m)&&Br(u,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function p0n(u){switch(u.kind){case 80:return u;case 212:return u.name;default:return}}function f0n(u){var m;QPe(u),CSe(u);let v=BI(u);if(u.name&&u.name.kind===168&&rT(u.name),Mse(u)){let Y=Uo(u),oe=u.localSymbol||Y,Be=(m=oe.declarations)==null?void 0:m.find(Me=>Me.kind===u.kind&&!(Me.flags&524288));u===Be&&Pat(oe),Y.parent&&Pat(Y)}let D=u.kind===174?void 0:u.body;if(nA(D),G8t(u,Yse(u)),g(W),wo(u)){let Y=uv(u);Y&&Y.typeExpression&&!e8t(tl(Y.typeExpression),u)&&Br(Y.typeExpression.type,Z.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function W(){Fb(u)||(af(D)&&!HPe(u)&&X5(u,hr),v&1&&d1(D)&&Ad(vS(u)))}}function TO(u){g(m);function m(){let v=ms(u),D=Qs.get(v.path);D||(D=[],Qs.set(v.path,D)),D.push(u)}}function I0n(u,m){for(let v of u)switch(v.kind){case 264:case 232:RJs(v,m),U8t(v,m);break;case 308:case 268:case 242:case 270:case 249:case 250:case 251:C0n(v,m);break;case 177:case 219:case 263:case 220:case 175:case 178:case 179:v.body&&C0n(v,m),U8t(v,m);break;case 174:case 180:case 181:case 185:case 186:case 266:case 265:U8t(v,m);break;case 196:NJs(v,m);break;default:pe.assertNever(v,"Node should not have been registered for unused identifiers check")}}function h0n(u,m,v){let D=fl(u)||u,W=oQ(u)?Z._0_is_declared_but_never_used:Z._0_is_declared_but_its_value_is_never_read;v(u,0,mo(D,W,m))}function SSe(u){return Ir(u)&&Vo(u).charCodeAt(0)===95}function RJs(u,m){for(let v of u.members)switch(v.kind){case 175:case 173:case 178:case 179:if(v.kind===179&&v.symbol.flags&32768)break;let D=Uo(v);!D.isReferenced&&(Zb(v,2)||sh(v)&&p(v.name))&&!(v.flags&33554432)&&m(v,0,mo(v.name,Z._0_is_declared_but_its_value_is_never_read,xl(D)));break;case 177:for(let W of v.parameters)!W.symbol.isReferenced&&Ga(W,2)&&m(W,0,mo(W.name,Z.Property_0_is_declared_but_its_value_is_never_read,of(W.symbol)));break;case 182:case 241:case 176:break;default:pe.fail("Unexpected class member")}}function NJs(u,m){let{typeParameter:v}=u;K8t(v)&&m(u,1,mo(u,Z._0_is_declared_but_its_value_is_never_read,Vo(v.name)))}function U8t(u,m){let v=Uo(u).declarations;if(!v||Ei(v)!==u)return;let D=PD(u),W=new Set;for(let Y of D){if(!K8t(Y))continue;let oe=Vo(Y.name),{parent:Be}=Y;if(Be.kind!==196&&Be.typeParameters.every(K8t)){if(Ar(W,Be)){let Me=ms(Be),He=PB(Be)?qbe(Be):$be(Me,Be.typeParameters),Vt=Be.typeParameters.length===1?[Z._0_is_declared_but_its_value_is_never_read,oe]:[Z.All_type_parameters_are_unused];m(Y,1,rm(Me,He.pos,He.end-He.pos,...Vt))}}else m(Y,1,mo(Y,Z._0_is_declared_but_its_value_is_never_read,oe))}}function K8t(u){return!(qA(u.symbol).isReferenced&262144)&&!SSe(u.name)}function XPe(u,m,v,D){let W=String(D(m)),Y=u.get(W);Y?Y[1].push(v):u.set(W,[m,[v]])}function m0n(u){return Gs(Gw(u),Si)}function DJs(u){return mg(u)?$m(u.parent)?!!(u.propertyName&&SSe(u.name)):SSe(u.name):a_(u)||(nc(u)&&VL(u.parent.parent)||_0n(u))&&SSe(u.name)}function C0n(u,m){let v=new Map,D=new Map,W=new Map;u.locals.forEach(Y=>{if(!(Y.flags&262144?!(Y.flags&3&&!(Y.isReferenced&3)):Y.isReferenced||Y.exportSymbol)&&Y.declarations){for(let oe of Y.declarations)if(!DJs(oe))if(_0n(oe))XPe(v,xJs(oe),oe,id);else if(mg(oe)&&$m(oe.parent)){let Be=Ei(oe.parent.elements);(oe===Be||!Ei(oe.parent.elements).dotDotDotToken)&&XPe(D,oe.parent,oe,id)}else if(nc(oe)){let Be=aX(oe)&7,Me=fl(oe);(Be!==4&&Be!==6||!Me||!SSe(Me))&&XPe(W,oe.parent,oe,id)}else{let Be=Y.valueDeclaration&&m0n(Y.valueDeclaration),Me=Y.valueDeclaration&&fl(Y.valueDeclaration);Be&&Me?!We(Be,Be.parent)&&!NF(Be)&&!SSe(Me)&&(mg(oe)&&h2(oe.parent)?XPe(D,oe.parent,oe,id):m(Be,1,mo(Me,Z._0_is_declared_but_its_value_is_never_read,of(Y)))):h0n(oe,of(Y),m)}}}),v.forEach(([Y,oe])=>{let Be=Y.parent;if((Y.name?1:0)+(Y.namedBindings?Y.namedBindings.kind===275?1:Y.namedBindings.elements.length:0)===oe.length)m(Be,0,oe.length===1?mo(Be,Z._0_is_declared_but_its_value_is_never_read,Vo(ma(oe).name)):mo(Be,Z.All_imports_in_import_declaration_are_unused));else for(let He of oe)h0n(He,Vo(He.name),m)}),D.forEach(([Y,oe])=>{let Be=m0n(Y.parent)?1:0;if(Y.elements.length===oe.length)oe.length===1&&Y.parent.kind===261&&Y.parent.parent.kind===262?XPe(W,Y.parent.parent,Y.parent,id):m(Y,Be,oe.length===1?mo(Y,Z._0_is_declared_but_its_value_is_never_read,JPe(ma(oe).name)):mo(Y,Z.All_destructured_elements_are_unused));else for(let Me of oe)m(Me,Be,mo(Me,Z._0_is_declared_but_its_value_is_never_read,JPe(Me.name)))}),W.forEach(([Y,oe])=>{if(Y.declarations.length===oe.length)m(Y,0,oe.length===1?mo(ma(oe).name,Z._0_is_declared_but_its_value_is_never_read,JPe(ma(oe).name)):mo(Y.parent.kind===244?Y.parent:Y,Z.All_variables_are_unused));else for(let Be of oe)m(Be,0,mo(Be,Z._0_is_declared_but_its_value_is_never_read,JPe(Be.name)))})}function kJs(){var u;for(let m of tZ)if(!((u=Uo(m))!=null&&u.isReferenced)){let v=ai(m);pe.assert(KL(v),"Only parameter declaration should be checked here");let D=mo(m.name,Z._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,Md(m.name),Md(m.propertyName));v.type||ug(D,rm(ms(v),v.end,0,Z.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,Md(m.propertyName))),PA.add(D)}}function JPe(u){switch(u.kind){case 80:return Vo(u);case 208:case 207:return JPe(Ma(ma(u.elements),mg).name);default:return pe.assertNever(u)}}function _0n(u){return u.kind===274||u.kind===277||u.kind===275}function xJs(u){return u.kind===274?u:u.kind===275?u.parent:u.parent.parent}function Yat(u){if(u.kind===242&&yZ(u),kJ(u)){let m=Yc;F(u.statements,nA),Yc=m}else F(u.statements,nA);u.locals&&TO(u)}function GJs(u){Ze>=2||!Ure(u)||u.flags&33554432||af(u.body)||F(u.parameters,m=>{m.name&&!Nu(m.name)&&m.name.escapedText===ot.escapedName&&f9("noEmit",m,Z.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function vSe(u,m,v){if(m?.escapedText!==v||u.kind===173||u.kind===172||u.kind===175||u.kind===174||u.kind===178||u.kind===179||u.kind===304||u.flags&33554432||(Hw(u)||Zm(u)||Ay(u))&&cN(u))return!1;let D=Gw(u);return!(Si(D)&&af(D.parent.body))}function FJs(u){ji(u,m=>$q(m)&4?(u.kind!==80?Br(fl(u),Z.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):Br(u,Z.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function ZJs(u){ji(u,m=>$q(m)&8?(u.kind!==80?Br(fl(u),Z.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):Br(u,Z.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function LJs(u,m){if(s.getEmitModuleFormatOfFile(ms(u))>=5||!m||!vSe(u,m,"require")&&!vSe(u,m,"exports")||Lh(u)&&QF(u)!==1)return;let v=Tn(u);v.kind===308&&Sl(v)&&f9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,Md(m),Md(m))}function VJs(u,m){if(!m||Ze>=4||!vSe(u,m,"Promise")||Lh(u)&&QF(u)!==1)return;let v=Tn(u);v.kind===308&&Sl(v)&&v.flags&4096&&f9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,Md(m),Md(m))}function WJs(u,m){Ze<=8&&(vSe(u,m,"WeakMap")||vSe(u,m,"WeakSet"))&&$F.push(u)}function OJs(u){let m=sS(u);$q(m)&1048576&&(pe.assert(sh(u)&&Ir(u.name)&&typeof u.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),f9("noEmit",u,Z.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,u.name.escapedText))}function PJs(u,m){m&&Ze>=2&&Ze<=8&&vSe(u,m,"Reflect")&&eZ.push(u)}function MJs(u){let m=!1;if(wd(u)){for(let v of u.members)if($q(v)&2097152){m=!0;break}}else if(jA(u))$q(u)&2097152&&(m=!0);else{let v=sS(u);v&&$q(v)&2097152&&(m=!0)}m&&(pe.assert(sh(u)&&Ir(u.name),"The target of a Reflect collision check should be an identifier"),f9("noEmit",u,Z.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,Md(u.name),"Reflect"))}function Cfe(u,m){m&&(LJs(u,m),VJs(u,m),WJs(u,m),PJs(u,m),xa(u)?(_fe(m,Z.Class_name_cannot_be_0),u.flags&33554432||mUs(m)):Q3(u)&&_fe(m,Z.Enum_name_cannot_be_0))}function HJs(u){if(aX(u)&7||KL(u))return;let m=Uo(u);if(m.flags&1){if(!Ir(u.name))return pe.fail();let v=An(u,u.name.escapedText,3,void 0,!1);if(v&&v!==m&&v.flags&2&&n8t(v)&7){let D=UL(v.valueDeclaration,262),W=D.parent.kind===244&&D.parent.parent?D.parent.parent:void 0;if(!(W&&(W.kind===242&&Eu(W.parent)||W.kind===269||W.kind===268||W.kind===308))){let oe=xl(v);Br(u,Z.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,oe,oe)}}}}function BSe(u){return u===Sn?hr:u===HC?f_:u}function UPe(u){var m;if(QPe(u),mg(u)||nA(u.type),!u.name)return;if(u.name.kind===168&&(rT(u.name),A1(u)&&u.initializer&&DI(u.initializer)),mg(u)){if(u.propertyName&&Ir(u.name)&&KL(u)&&af(f1(u).body)){tZ.push(u);return}$m(u.parent)&&u.dotDotDotToken&&Ze1&&zt(v.declarations,Y=>Y!==u&&N7(Y)&&!b0n(Y,u))&&Br(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Md(u.name))}else{let W=BSe(Zq(u));!lo(D)&&!lo(W)&&!aG(D,W)&&!(v.flags&67108864)&&y0n(v.valueDeclaration,D,u,W),A1(u)&&u.initializer&&rX(DI(u.initializer),W,u,u.initializer,void 0),v.valueDeclaration&&!b0n(u,v.valueDeclaration)&&Br(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Md(u.name))}u.kind!==173&&u.kind!==172&&(ySe(u),(u.kind===261||u.kind===209)&&HJs(u),Cfe(u,u.name))}function y0n(u,m,v,D){let W=fl(v),Y=v.kind===173||v.kind===172?Z.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Z.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,oe=Md(W),Be=Br(W,Y,oe,ro(m),ro(D));u&&ug(Be,mo(u,Z._0_was_also_declared_here,oe))}function b0n(u,m){if(u.kind===170&&m.kind===261||u.kind===261&&m.kind===170)return!0;if(KY(u)!==KY(m))return!1;let v=1358;return $Y(u,v)===$Y(m,v)}function YJs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkVariableDeclaration",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath}),v8s(u),UPe(u),(v=ki)==null||v.pop()}function QJs(u){return b8s(u),UPe(u)}function Qat(u){let m=hm(u)&7;(m===4||m===6)&&Ze=2,Be=!oe&&Te.downlevelIteration,Me=Te.noUncheckedIndexedAccess&&!!(u&128);if(oe||Be||Y){let wr=Jat(m,u,oe?D:void 0);if(W&&wr){let dn=u&8?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:u&32?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:u&64?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:u&16?Z.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;dn&&I0(v,wr.nextType,D,dn)}if(wr||oe)return Me?sSe(wr&&wr.yieldType):wr&&wr.yieldType}let He=m,$e=!1;if(u&4){if(He.flags&1048576){let wr=m.types,dn=Le(wr,vn=>!(vn.flags&402653316));dn!==wr&&(He=Ha(dn,2))}else He.flags&402653316&&(He=Oi);if($e=He!==m,$e&&He.flags&131072)return Me?sSe($r):$r}if(!G9(He)){if(D){let wr=!!(u&4)&&!$e,[dn,vn]=xt(wr,Be);I9(D,vn&&!!hfe(He),dn,ro(He))}return $e?Me?sSe($r):$r:void 0}let Vt=V5(He,ri);if($e&&Vt)return Vt.flags&402653316&&!Te.noUncheckedIndexedAccess?$r:Ha(Me?[Vt,$r,wt]:[Vt,$r],2);return u&128?sSe(Vt):Vt;function xt(wr,dn){var vn;return dn?wr?[Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:e6t(u,0,m,void 0)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:rUs((vn=m.symbol)==null?void 0:vn.escapedName)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:wr?[Z.Type_0_is_not_an_array_type_or_a_string_type,!0]:[Z.Type_0_is_not_an_array_type,!0]}}function rUs(u){switch(u){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function e6t(u,m,v,D){if(Xo(v))return;let W=Jat(v,u,D);return W&&W[Xtn(m)]}function RO(u=Oi,m=Oi,v=cn){if(u.flags&67359327&&m.flags&180227&&v.flags&180227){let D=$B([u,m,v]),W=Fd.get(D);return W||(W={yieldType:u,returnType:m,nextType:v},Fd.set(D,W)),W}return{yieldType:u,returnType:m,nextType:v}}function E0n(u){let m,v,D;for(let W of u)if(!(W===void 0||W===Vg)){if(W===Ef)return Ef;m=Ft(m,W.yieldType),v=Ft(v,W.returnType),D=Ft(D,W.nextType)}return m||v||D?RO(m&&Ha(m),v&&Ha(v),D&&jg(D)):Vg}function Xat(u,m){return u[m]}function lG(u,m,v){return u[m]=v}function Jat(u,m,v){var D,W;if(u===Vn)return om;if(Xo(u))return Ef;if(!(u.flags&1048576)){let He=v?{errors:void 0,skipLogging:!0}:void 0,$e=S0n(u,m,v,He);if($e===Vg){if(v){let Vt=r6t(v,u,!!(m&2));He?.errors&&ug(Vt,...He.errors)}return}else if((D=He?.errors)!=null&&D.length)for(let Vt of He.errors)PA.add(Vt);return $e}let Y=m&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",oe=Xat(u,Y);if(oe)return oe===Vg?void 0:oe;let Be;for(let He of u.types){let $e=v?{errors:void 0}:void 0,Vt=S0n(He,m,v,$e);if(Vt===Vg){if(v){let xt=r6t(v,u,!!(m&2));$e?.errors&&ug(xt,...$e.errors)}lG(u,Y,Vg);return}else if((W=$e?.errors)!=null&&W.length)for(let xt of $e.errors)PA.add(xt);Be=Ft(Be,Vt)}let Me=Be?E0n(Be):Vg;return lG(u,Y,Me),Me===Vg?void 0:Me}function t6t(u,m){if(u===Vg)return Vg;if(u===Ef)return Ef;let{yieldType:v,returnType:D,nextType:W}=u;return m&&BUt(!0),RO(jq(v,m)||hr,jq(D,m)||hr,W)}function S0n(u,m,v,D){if(Xo(u))return Ef;let W=!1;if(m&2){let Y=v0n(u,Sh)||B0n(u,Sh);if(Y)if(Y===Vg&&v)W=!0;else return m&8?t6t(Y,v):Y}if(m&1){let Y=v0n(u,Zp)||B0n(u,Zp);if(Y)if(Y===Vg&&v)W=!0;else if(m&2){if(Y!==Vg)return Y=t6t(Y,v),W?Y:lG(u,"iterationTypesOfAsyncIterable",Y)}else return Y}if(m&2){let Y=T0n(u,Sh,v,D,W);if(Y!==Vg)return Y}if(m&1){let Y=T0n(u,Zp,v,D,W);if(Y!==Vg)return m&2?(Y=t6t(Y,v),W?Y:lG(u,"iterationTypesOfAsyncIterable",Y)):Y}return Vg}function v0n(u,m){return Xat(u,m.iterableCacheKey)}function B0n(u,m){if(N1(u,m.getGlobalIterableType(!1))||N1(u,m.getGlobalIteratorObjectType(!1))||N1(u,m.getGlobalIterableIteratorType(!1))||N1(u,m.getGlobalGeneratorType(!1))){let[v,D,W]=gf(u);return lG(u,m.iterableCacheKey,RO(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,W))}if(got(u,m.getGlobalBuiltinIteratorTypes())){let[v]=gf(u),D=vUt(),W=cn;return lG(u,m.iterableCacheKey,RO(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,W))}}function w0n(u){let m=XIn(!1),v=m&&Wi(fo(m),pp(u));return v&&p2(v)?f2(v):`__@${u}`}function T0n(u,m,v,D,W){let Y=Fg(u,w0n(m.iteratorSymbolName)),oe=Y&&!(Y.flags&16777216)?fo(Y):void 0;if(Xo(oe))return W?Ef:lG(u,m.iterableCacheKey,Ef);let Be=oe?rg(oe,0):void 0,Me=Le(Be,Vt=>vR(Vt)===0);if(!zt(Me))return v&&zt(Be)&&I0(u,m.getGlobalIterableType(!0),v,void 0,void 0,D),W?Vg:lG(u,m.iterableCacheKey,Vg);let He=jg(lt(Me,Ad)),$e=R0n(He,m,v,D,W)??Vg;return W?$e:lG(u,m.iterableCacheKey,$e)}function r6t(u,m,v){let D=v?Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,W=!!hfe(m)||!v&&BEe(u.parent)&&u.parent.expression===u&&JOe(!1)!==oi&&pg(m,nfe(JOe(!1),[hr,hr,hr]));return I9(u,W,D,ro(m))}function nUs(u,m,v,D){return R0n(u,m,v,D,!1)}function R0n(u,m,v,D,W){if(Xo(u))return Ef;let Y=iUs(u,m)||sUs(u,m);return Y===Vg&&v&&(Y=void 0,W=!0),Y??(Y=lUs(u,m,v,D,W)),Y===Vg?void 0:Y}function iUs(u,m){return Xat(u,m.iteratorCacheKey)}function sUs(u,m){if(N1(u,m.getGlobalIterableIteratorType(!1))||N1(u,m.getGlobalIteratorType(!1))||N1(u,m.getGlobalIteratorObjectType(!1))||N1(u,m.getGlobalGeneratorType(!1))){let[v,D,W]=gf(u);return lG(u,m.iteratorCacheKey,RO(v,D,W))}if(got(u,m.getGlobalBuiltinIteratorTypes())){let[v]=gf(u),D=vUt(),W=cn;return lG(u,m.iteratorCacheKey,RO(v,D,W))}}function N0n(u,m){let v=Wi(u,"done")||Bs;return pg(m===0?Bs:tn,v)}function oUs(u){return N0n(u,0)}function aUs(u){return N0n(u,1)}function cUs(u){if(Xo(u))return Ef;let m=Xat(u,"iterationTypesOfIteratorResult");if(m)return m;if(N1(u,R3s(!1))){let oe=gf(u)[0];return lG(u,"iterationTypesOfIteratorResult",RO(oe,void 0,void 0))}if(N1(u,N3s(!1))){let oe=gf(u)[0];return lG(u,"iterationTypesOfIteratorResult",RO(void 0,oe,void 0))}let v=am(u,oUs),D=v!==Oi?Wi(v,"value"):void 0,W=am(u,aUs),Y=W!==Oi?Wi(W,"value"):void 0;return!D&&!Y?lG(u,"iterationTypesOfIteratorResult",Vg):lG(u,"iterationTypesOfIteratorResult",RO(D,Y||es,void 0))}function n6t(u,m,v,D,W){var Y,oe,Be,Me;let He=Fg(u,v);if(!He&&v!=="next")return;let $e=He&&!(v==="next"&&He.flags&16777216)?v==="next"?fo(He):Fv(fo(He),2097152):void 0;if(Xo($e))return Ef;let Vt=$e?rg($e,0):E;if(Vt.length===0){if(D){let Ji=v==="next"?m.mustHaveANextMethodDiagnostic:m.mustBeAMethodDiagnostic;W?(W.errors??(W.errors=[]),W.errors.push(mo(D,Ji,v))):Br(D,Ji,v)}return v==="next"?Vg:void 0}if($e?.symbol&&Vt.length===1){let Ji=m.getGlobalGeneratorType(!1),Mi=m.getGlobalIteratorType(!1),To=((oe=(Y=Ji.symbol)==null?void 0:Y.members)==null?void 0:oe.get(v))===$e.symbol,Ka=!To&&((Me=(Be=Mi.symbol)==null?void 0:Be.members)==null?void 0:Me.get(v))===$e.symbol;if(To||Ka){let _l=To?Ji:Mi,{mapper:ka}=$e;return RO(x9(_l.typeParameters[0],ka),x9(_l.typeParameters[1],ka),v==="next"?x9(_l.typeParameters[2],ka):void 0)}}let xt,wr;for(let Ji of Vt)v!=="throw"&&zt(Ji.parameters)&&(xt=Ft(xt,SR(Ji,0))),wr=Ft(wr,Ad(Ji));let dn,vn;if(v!=="throw"){let Ji=xt?Ha(xt):cn;if(v==="next")vn=Ji;else if(v==="return"){let Mi=m.resolveIterationType(Ji,D)||hr;dn=Ft(dn,Mi)}}let ii,Yi=wr?jg(wr):Oi,js=m.resolveIterationType(Yi,D)||hr,Co=cUs(js);return Co===Vg?(D&&(W?(W.errors??(W.errors=[]),W.errors.push(mo(D,m.mustHaveAValueDiagnostic,v))):Br(D,m.mustHaveAValueDiagnostic,v)),ii=hr,dn=Ft(dn,hr)):(ii=Co.yieldType,dn=Ft(dn,Co.returnType)),RO(ii,Ha(dn),vn)}function lUs(u,m,v,D,W){let Y=E0n([n6t(u,m,"next",v,D),n6t(u,m,"return",v,D),n6t(u,m,"throw",v,D)]);return W?Y:lG(u,m.iteratorCacheKey,Y)}function L9(u,m,v){if(Xo(m))return;let D=i6t(m,v);return D&&D[Xtn(u)]}function i6t(u,m){if(Xo(u))return Ef;let v=m?2:1,D=m?Sh:Zp;return Jat(u,v,void 0)||nUs(u,D,void 0,void 0)}function uUs(u){yZ(u)||y8s(u)}function jPe(u,m){let v=!!(m&1),D=!!(m&2);if(v){let W=L9(1,u,D);return W?D?_Z(mfe(W)):W:nn}return D?_Z(u)||nn:u}function D0n(u,m){let v=jPe(m,BI(u));return!!(v&&(uh(v,16384)||v.flags&32769))}function gUs(u){if(yZ(u))return;let m=Ane(u);if(m&&Al(m)){UC(u,Z.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!m){UC(u,Z.A_return_statement_can_only_be_used_within_a_function_body);return}let v=vS(m),D=Ad(v);if(at||u.expression||D.flags&131072){let W=u.expression?DI(u.expression):wt;if(m.kind===179)u.expression&&Br(u,Z.Setters_cannot_return_a_value);else if(m.kind===177){let Y=u.expression?DI(u.expression):wt;u.expression&&!rX(Y,D,u,u.expression)&&Br(u,Z.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class)}else if(Yse(m)){let Y=jPe(D,BI(m))??D;Uat(m,Y,u,u.expression,W)}}else m.kind!==177&&Te.noImplicitReturns&&!D0n(m,D)&&Br(u,Z.Not_all_code_paths_return_a_value)}function Uat(u,m,v,D,W,Y=!1){let oe=wo(v),Be=BI(u);if(D){let xt=JA(D,oe);if(Mw(xt)){Uat(u,m,v,xt.whenTrue,Ml(xt.whenTrue),!0),Uat(u,m,v,xt.whenFalse,Ml(xt.whenFalse),!0);return}}let Me=v.kind===254,He=Be&2?YPe(W,!1,v,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):W,$e=D&&Rat(D);rX(He,m,Me&&!Y?v:$e,$e)}function AUs(u){yZ(u)||u.flags&65536&&UC(u,Z.with_statements_are_not_allowed_in_an_async_function_block),Ml(u.expression);let m=ms(u);if(!NO(m)){let v=rs(m,u.pos).start,D=u.statement.pos;K5(m,v,D-v,Z.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function dUs(u){yZ(u);let m,v=!1,D=Ml(u.expression);F(u.caseBlock.clauses,W=>{W.kind===298&&!v&&(m===void 0?m=W:(os(W,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),v=!0)),W.kind===297&&g(Y(W)),F(W.statements,nA),Te.noFallthroughCasesInSwitch&&W.fallthroughFlowNode&&mPe(W.fallthroughFlowNode)&&Br(W,Z.Fallthrough_case_in_switch);function Y(oe){return()=>{let Be=Ml(oe.expression);V8t(D,Be)||Uhn(Be,D,oe.expression,void 0)}}}),u.caseBlock.locals&&TO(u.caseBlock)}function pUs(u){yZ(u)||ji(u.parent,m=>Eu(m)?"quit":m.kind===257&&m.label.escapedText===u.label.escapedText?(os(u.label,Z.Duplicate_label_0,Fp(u.label)),!0):!1),nA(u.statement)}function fUs(u){yZ(u)||Ir(u.expression)&&!u.expression.escapedText&&F8s(u,Z.Line_break_not_permitted_here),u.expression&&Ml(u.expression)}function IUs(u){yZ(u),Yat(u.tryBlock);let m=u.catchClause;if(m){if(m.variableDeclaration){let v=m.variableDeclaration;UPe(v);let D=Zh(v);if(D){let W=tl(D);W&&!(W.flags&3)&&UC(D,Z.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(v.initializer)UC(v.initializer,Z.Catch_clause_variable_cannot_have_an_initializer);else{let W=m.block.locals;W&&RB(m.locals,Y=>{let oe=W.get(Y);oe?.valueDeclaration&&oe.flags&2&&os(oe.valueDeclaration,Z.Cannot_redeclare_identifier_0_in_catch_clause,Bc(Y))})}}Yat(m.block)}u.finallyBlock&&Yat(u.finallyBlock)}function Kat(u,m,v){let D=p0(u);if(D.length===0)return;for(let Y of N9(u))v&&Y.flags&4194304||k0n(u,Y,Oq(Y,8576,!0),hR(Y));let W=m.valueDeclaration;if(W&&xa(W)){for(let Y of W.members)if((!v&&!lg(Y)||v&&lg(Y))&&!Mse(Y)){let oe=Uo(Y);k0n(u,oe,P_(Y.name.expression),hR(oe))}}if(D.length>1)for(let Y of D)hUs(u,Y)}function k0n(u,m,v,D){let W=m.valueDeclaration,Y=fl(W);if(Y&&p(Y))return;let oe=AUt(u,v),Be=la(u)&2?yp(u.symbol,265):void 0,Me=W&&W.kind===227||Y&&Y.kind===168?W:void 0,He=nC(m)===u.symbol?W:void 0;for(let $e of oe){let Vt=$e.declaration&&nC(Uo($e.declaration))===u.symbol?$e.declaration:void 0,xt=He||Vt||(Be&&!zt(eT(u),wr=>!!UQ(wr,m.escapedName)&&!!V5(wr,$e.keyType))?Be:void 0);if(xt&&!pg(D,$e.type)){let wr=ZQ(xt,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,xl(m),ro(D),ro($e.keyType),ro($e.type));Me&&xt!==Me&&ug(wr,mo(Me,Z._0_is_declared_here,xl(m))),PA.add(wr)}}}function hUs(u,m){let v=m.declaration,D=AUt(u,m.keyType),W=la(u)&2?yp(u.symbol,265):void 0,Y=v&&nC(Uo(v))===u.symbol?v:void 0;for(let oe of D){if(oe===m)continue;let Be=oe.declaration&&nC(Uo(oe.declaration))===u.symbol?oe.declaration:void 0,Me=Y||Be||(W&&!zt(eT(u),He=>!!iG(He,m.keyType)&&!!V5(He,oe.keyType))?W:void 0);Me&&!pg(m.type,oe.type)&&Br(Me,Z._0_index_type_1_is_not_assignable_to_2_index_type_3,ro(m.keyType),ro(m.type),ro(oe.keyType),ro(oe.type))}}function _fe(u,m){switch(u.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":Br(u,m,u.escapedText)}}function mUs(u){Ze>=1&&u.escapedText==="Object"&&s.getEmitModuleFormatOfFile(ms(u))<5&&Br(u,Z.Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0,ev[Pe])}function CUs(u){let m=Le(Rx(u),AS);if(!B(m))return;let v=wo(u),D=new Set,W=new Set;if(F(u.parameters,({name:oe},Be)=>{Ir(oe)&&D.add(oe.escapedText),Nu(oe)&&W.add(Be)}),pUt(u)){let oe=m.length-1,Be=m[oe];v&&Be&&Ir(Be.name)&&Be.typeExpression&&Be.typeExpression.type&&!D.has(Be.name.escapedText)&&!W.has(oe)&&!Gv(tl(Be.typeExpression.type))&&Br(Be.name,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,Vo(Be.name))}else F(m,({name:oe,isNameFirst:Be},Me)=>{W.has(Me)||Ir(oe)&&D.has(oe.escapedText)||(zi(oe)?v&&Br(oe,Z.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,cy(oe),cy(oe.left)):Be||Uw(v,oe,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,Vo(oe)))})}function zPe(u){let m=!1;if(u)for(let D=0;D{D.default?(m=!0,_Us(D.default,u,W)):m&&Br(D,Z.Required_type_parameters_may_not_follow_optional_type_parameters);for(let Y=0;YD)return!1;for(let Me=0;Metm(v)&&hC(v))&&os(m,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!u.name&&!Ga(u,2048)&&UC(u,Z.A_class_declaration_without_the_default_modifier_must_have_a_name),Z0n(u),F(u.members,nA),TO(u)}function Z0n(u){o8s(u),QPe(u),Cfe(u,u.name),zPe(PD(u)),ySe(u);let m=Uo(u),v=Lp(m),D=D1(v),W=fo(m);x0n(m),Pat(m),Z4s(u),!!(u.flags&33554432)||L4s(u);let oe=DB(u);if(oe){F(oe.typeArguments,nA),Ze{let Vt=$e[0],xt=lZ(v),wr=hy(xt);if(BUs(wr,oe),nA(oe.expression),zt(oe.typeArguments)){F(oe.typeArguments,nA);for(let vn of $w(wr,oe.typeArguments,oe))if(!o0n(oe,vn.typeParameters))break}let dn=D1(Vt,v.thisType);if(I0(D,dn,void 0)?I0(W,Mhn(wr),u.name||u,Z.Class_static_side_0_incorrectly_extends_base_class_static_side_1):W0n(u,D,dn,Z.Class_0_incorrectly_extends_base_class_1),xt.flags&8650752&&(m_(W)?rg(xt,1).some(ii=>ii.flags&4)&&!Ga(u,64)&&Br(u.name||u,Z.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):Br(u.name||u,Z.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(wr.symbol&&wr.symbol.flags&32)&&!(xt.flags&8650752)){let vn=rG(wr,oe.typeArguments,oe);F(vn,ii=>!KN(ii.declaration)&&!aG(Ad(ii),Vt))&&Br(oe.expression,Z.Base_constructors_must_all_have_the_same_return_type)}RUs(v,Vt)})}vUs(u,v,D,W);let Be=lU(u);if(Be)for(let He of Be)(!Hd(He.expression)||ZC(He.expression))&&Br(He.expression,Z.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),Q8t(He),g(Me(He));g(()=>{Kat(v,m),Kat(W,m,!0),H8t(u),kUs(u)});function Me(He){return()=>{let $e=qB(tl(He));if(!lo($e))if(ZOe($e)){let Vt=$e.symbol&&$e.symbol.flags&32?Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Z.Class_0_incorrectly_implements_interface_1,xt=D1($e,v.thisType);I0(D,xt,void 0)||W0n(u,D,xt,Vt)}else Br(He,Z.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function vUs(u,m,v,D){let Y=DB(u)&&eT(m),oe=Y?.length?D1(ma(Y),m.thisType):void 0,Be=lZ(m);for(let Me of u.members)mbe(Me)||(Tc(Me)&&F(Me.parameters,He=>{We(He,Me)&&L0n(u,D,Be,oe,m,v,He,!0)}),L0n(u,D,Be,oe,m,v,Me,!1))}function L0n(u,m,v,D,W,Y,oe,Be,Me=!0){let He=oe.name&&Lv(oe.name)||Lv(oe);return He?V0n(u,m,v,D,W,Y,Mne(oe),FW(oe),lg(oe),Be,He,Me?oe:void 0):0}function V0n(u,m,v,D,W,Y,oe,Be,Me,He,$e,Vt){let xt=wo(u),wr=!!(u.flags&33554432);if(oe&&$e?.valueDeclaration&&MI($e.valueDeclaration)&&$e.valueDeclaration.name&&eIn($e.valueDeclaration.name))return Br(Vt,xt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:Z.This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic),2;if(D&&(oe||Te.noImplicitOverride)){let dn=Me?m:Y,vn=Me?v:D,ii=Fg(dn,$e.escapedName),Yi=Fg(vn,$e.escapedName),js=ro(D);if(ii&&!Yi&&oe){if(Vt){let Co=JCn(of($e),vn);Co?Br(Vt,xt?Z.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:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,js,xl(Co)):Br(Vt,xt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,js)}return 2}else if(ii&&Yi?.declarations&&Te.noImplicitOverride&&!wr){let Co=zt(Yi.declarations,FW);if(oe)return 0;if(Co){if(Be&&Co)return Vt&&Br(Vt,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,js),1}else{if(Vt){let Ji=He?xt?Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:xt?Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;Br(Vt,Ji,js)}return 1}}}else if(oe){if(Vt){let dn=ro(W);Br(Vt,xt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,dn)}return 2}return 0}function W0n(u,m,v,D){let W=!1;for(let Y of u.members){if(lg(Y))continue;let oe=Y.name&&Lv(Y.name)||Lv(Y);if(oe){let Be=Fg(m,oe.escapedName),Me=Fg(v,oe.escapedName);if(Be&&Me){let He=()=>wu(void 0,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,xl(oe),ro(m),ro(v));I0(fo(Be),fo(Me),Y.name||Y,void 0,He)||(W=!0)}}}W||I0(m,v,u.name||u,D)}function BUs(u,m){let v=rg(u,1);if(v.length){let D=v[0].declaration;if(D&&Zb(D,2)){let W=hN(u.symbol);u6t(m,W)||Br(m,Z.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,y9(u.symbol))}}}function wUs(u,m,v){if(!m.name)return 0;let D=Uo(u),W=Lp(D),Y=D1(W),oe=fo(D),Me=DB(u)&&eT(W),He=Me?.length?D1(ma(Me),W.thisType):void 0,$e=lZ(W),Vt=m.parent?Mne(m):Ga(m,16);return V0n(u,oe,$e,He,W,Y,Vt,FW(m),lg(m),!1,v)}function ooe(u){return aI(u)&1?u.links.target:u}function TUs(u){return Le(u.declarations,m=>m.kind===264||m.kind===265)}function RUs(u,m){var v,D,W,Y,oe;let Be=Zd(m),Me=new Map;e:for(let He of Be){let $e=ooe(He);if($e.flags&4194304)continue;let Vt=UQ(u,$e.escapedName);if(!Vt)continue;let xt=ooe(Vt),wr=d2($e);if(pe.assert(!!xt,"derived should point to something, even if it is the base class' declaration."),xt===$e){let dn=hN(u.symbol);if(wr&64&&(!dn||!Ga(dn,64))){for(let Co of eT(u)){if(Co===m)continue;let Ji=UQ(Co,$e.escapedName),Mi=Ji&&ooe(Ji);if(Mi&&Mi!==$e)continue e}let vn=ro(m),ii=ro(u),Yi=xl(He),js=Ft((v=Me.get(dn))==null?void 0:v.missedProperties,Yi);Me.set(dn,{baseTypeName:vn,typeName:ii,missedProperties:js})}}else{let dn=d2(xt);if(wr&2||dn&2)continue;let vn,ii=$e.flags&98308,Yi=xt.flags&98308;if(ii&&Yi){if((aI($e)&6?(D=$e.declarations)!=null&&D.some(Ji=>O0n(Ji,wr)):(W=$e.declarations)!=null&&W.every(Ji=>O0n(Ji,wr)))||aI($e)&262144||xt.valueDeclaration&&po(xt.valueDeclaration))continue;let js=ii!==4&&Yi===4;if(js||ii===4&&Yi!==4){let Ji=js?Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;Br(fl(xt.valueDeclaration)||xt.valueDeclaration,Ji,xl($e),ro(m),ro(u))}else if(et){let Ji=(Y=xt.declarations)==null?void 0:Y.find(Mi=>Mi.kind===173&&!Mi.initializer);if(Ji&&!(xt.flags&33554432)&&!(wr&64)&&!(dn&64)&&!((oe=xt.declarations)!=null&&oe.some(Mi=>!!(Mi.flags&33554432)))){let Mi=cQ(hN(u.symbol)),To=Ji.name;if(Ji.exclamationToken||!Mi||!Ir(To)||!at||!M0n(To,u,Mi)){let Ka=Z.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;Br(fl(xt.valueDeclaration)||xt.valueDeclaration,Ka,xl($e),ro(m))}}}continue}else if(i8t($e)){if(i8t(xt)||xt.flags&4)continue;pe.assert(!!(xt.flags&98304)),vn=Z.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else $e.flags&98304?vn=Z.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:vn=Z.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;Br(fl(xt.valueDeclaration)||xt.valueDeclaration,vn,ro(m),xl($e),ro(u))}}for(let[He,$e]of Me)if(B($e.missedProperties)===1)wd(He)?Br(He,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,ma($e.missedProperties),$e.baseTypeName):Br(He,Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,$e.typeName,ma($e.missedProperties),$e.baseTypeName);else if(B($e.missedProperties)>5){let Vt=lt($e.missedProperties.slice(0,4),wr=>`'${wr}'`).join(", "),xt=B($e.missedProperties)-4;wd(He)?Br(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,$e.baseTypeName,Vt,xt):Br(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,$e.typeName,$e.baseTypeName,Vt,xt)}else{let Vt=lt($e.missedProperties,xt=>`'${xt}'`).join(", ");wd(He)?Br(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,$e.baseTypeName,Vt):Br(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,$e.typeName,$e.baseTypeName,Vt)}}function O0n(u,m){return m&64&&(!pi(u)||!u.initializer)||d_(u.parent)}function NUs(u,m,v){if(!B(m))return v;let D=new Map;F(v,W=>{D.set(W.escapedName,W)});for(let W of m){let Y=Zd(D1(W,u.thisType));for(let oe of Y){let Be=D.get(oe.escapedName);Be&&oe.parent===Be.parent&&D.delete(oe.escapedName)}}return Do(D.values())}function DUs(u,m){let v=eT(u);if(v.length<2)return!0;let D=new Map;F(zJt(u).declaredProperties,Y=>{D.set(Y.escapedName,{prop:Y,containingType:u})});let W=!0;for(let Y of v){let oe=Zd(D1(Y,u.thisType));for(let Be of oe){let Me=D.get(Be.escapedName);if(!Me)D.set(Be.escapedName,{prop:Be,containingType:Y});else if(Me.containingType!==u&&!SMs(Me.prop,Be)){W=!1;let $e=ro(Me.containingType),Vt=ro(Y),xt=wu(void 0,Z.Named_property_0_of_types_1_and_2_are_not_identical,xl(Be),$e,Vt);xt=wu(xt,Z.Interface_0_cannot_simultaneously_extend_types_1_and_2,ro(u),$e,Vt),PA.add(Dw(ms(m),m,xt))}}}return W}function kUs(u){if(!at||!mt||u.flags&33554432)return;let m=cQ(u);for(let v of u.members)if(!(c_(v)&128)&&!lg(v)&&P0n(v)){let D=v.name;if(Ir(D)||p(D)||Un(D)){let W=fo(Uo(v));W.flags&3||jse(W)||(!m||!M0n(D,W,m))&&Br(v.name,Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,Md(D))}}}function P0n(u){return u.kind===173&&!FW(u)&&!u.exclamationToken&&!u.initializer}function xUs(u,m,v,D,W){for(let Y of v)if(Y.pos>=D&&Y.pos<=W){let oe=me.createPropertyAccessExpression(me.createThis(),u);UA(oe.expression,oe),UA(oe,Y),oe.flowNode=Y.returnFlowNode;let Be=CZ(oe,m,BO(m));if(!jse(Be))return!0}return!1}function M0n(u,m,v){let D=Un(u)?me.createElementAccessExpression(me.createThis(),u.expression):me.createPropertyAccessExpression(me.createThis(),u);UA(D.expression,D),UA(D,v),D.flowNode=v.returnFlowNode;let W=CZ(D,m,BO(m));return!jse(W)}function GUs(u){uG(u)||d8s(u),lct(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"interface"),zPe(u.typeParameters),g(()=>{_fe(u.name,Z.Interface_name_cannot_be_0),ySe(u);let m=Uo(u);x0n(m);let v=yp(m,265);if(u===v){let D=Lp(m),W=D1(D);if(DUs(D,u.name)){for(let Y of eT(D))I0(W,D1(Y,D.thisType),u.name,Z.Interface_0_incorrectly_extends_interface_1);Kat(D,m)}}r0n(u)}),F(Y7(u),m=>{(!Hd(m.expression)||ZC(m.expression))&&Br(m.expression,Z.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),Q8t(m)}),F(u.members,nA),g(()=>{H8t(u),TO(u)})}function FUs(u){if(uG(u),_fe(u.name,Z.Type_alias_name_cannot_be_0),lct(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"type"),ySe(u),zPe(u.typeParameters),u.type.kind===141){let m=B(u.typeParameters);(m===0?u.name.escapedText==="BuiltinIteratorReturn":m===1&&Ket.has(u.name.escapedText))||Br(u.type,Z.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types)}else nA(u.type),TO(u)}function H0n(u){let m=sa(u);if(!(m.flags&1024)){m.flags|=1024;let v=0,D;for(let W of u.members){let Y=ZUs(W,v,D);sa(W).enumMemberValue=Y,v=typeof Y.value=="number"?Y.value+1:void 0,D=W}}}function ZUs(u,m,v){if(HY(u.name))Br(u.name,Z.Computed_property_names_are_not_allowed_in_enums);else if(gQ(u.name))Br(u.name,Z.An_enum_member_cannot_have_a_numeric_name);else{let D=vW(u.name);yN(D)&&!_z(D)&&Br(u.name,Z.An_enum_member_cannot_have_a_numeric_name)}if(u.initializer)return LUs(u);if(u.parent.flags&33554432&&!OA(u.parent))return nm(void 0);if(m===void 0)return Br(u.name,Z.Enum_member_must_have_initializer),nm(void 0);if(lS(Te)&&v?.initializer){let D=JK(v);typeof D.value=="number"&&!D.resolvedOtherFiles||Br(u.name,Z.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return nm(m)}function LUs(u){let m=OA(u.parent),v=u.initializer,D=ur(v,u);return D.value!==void 0?m&&typeof D.value=="number"&&!isFinite(D.value)?Br(v,isNaN(D.value)?Z.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Z.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):lS(Te)&&typeof D.value=="string"&&!D.isSyntacticallyString&&Br(v,Z._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${Vo(u.parent.name)}.${vW(u.name)}`):m?Br(v,Z.const_enum_member_initializers_must_be_constant_expressions):u.parent.flags&33554432?Br(v,Z.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):I0(Ml(v),ri,v,Z.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),D}function Y0n(u,m){let v=NI(u,111551,!0);if(!v)return nm(void 0);if(u.kind===80){let D=u;if(_z(D.escapedText)&&v===Use(D.escapedText,111551,void 0))return nm(+D.escapedText,!1)}if(v.flags&8)return m?Q0n(u,v,m):JK(v.valueDeclaration);if(Xq(v)){let D=v.valueDeclaration;if(D&&nc(D)&&!D.type&&D.initializer&&(!m||D!==m&&sZ(D,m))){let W=ur(D.initializer,D);return m&&ms(m)!==ms(D)?nm(W.value,!1,!0,!0):nm(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0)}}return nm(void 0)}function VUs(u,m){let v=u.expression;if(Hd(v)&&CA(u.argumentExpression)){let D=NI(v,111551,!0);if(D&&D.flags&384){let W=pp(u.argumentExpression.text),Y=D.exports.get(W);if(Y)return pe.assert(ms(Y.valueDeclaration)===ms(D.valueDeclaration)),m?Q0n(u,Y,m):JK(Y.valueDeclaration)}}return nm(void 0)}function Q0n(u,m,v){let D=m.valueDeclaration;if(!D||D===v)return Br(u,Z.Property_0_is_used_before_being_assigned,xl(m)),nm(void 0);if(!sZ(D,v))return Br(u,Z.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),nm(0);let W=JK(D);return v.parent!==D.parent?nm(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0):W}function WUs(u){g(()=>OUs(u))}function OUs(u){uG(u),Cfe(u,u.name),ySe(u),u.members.forEach(nA),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),H0n(u);let m=Uo(u),v=yp(m,u.kind);if(u===v){if(m.declarations&&m.declarations.length>1){let W=OA(u);F(m.declarations,Y=>{Q3(Y)&&OA(Y)!==W&&Br(fl(Y),Z.Enum_declarations_must_all_be_const_or_non_const)})}let D=!1;F(m.declarations,W=>{if(W.kind!==267)return!1;let Y=W;if(!Y.members.length)return!1;let oe=Y.members[0];oe.initializer||(D?Br(oe.name,Z.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):D=!0)})}}function PUs(u){p(u.name)&&Br(u,Z.An_enum_member_cannot_be_named_with_a_private_identifier),u.initializer&&Ml(u.initializer)}function MUs(u){let m=u.declarations;if(m){for(let v of m)if((v.kind===264||v.kind===263&&d1(v.body))&&!(v.flags&33554432))return v}}function HUs(u,m){let v=sS(u),D=sS(m);return fc(v)?fc(D):fc(D)?!1:v===D}function YUs(u){u.body&&(nA(u.body),NB(u)||TO(u)),g(m);function m(){var v,D;let W=NB(u),Y=u.flags&33554432;W&&!Y&&Br(u.name,Z.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);let oe=a_(u),Be=oe?Z.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Z.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(qPe(u,Be))return;if(uG(u)||!Y&&u.name.kind===11&&os(u.name,Z.Only_ambient_modules_can_use_quoted_names),Ir(u.name)&&(Cfe(u,u.name),!(u.flags&2080))){let He=ms(u),$e=Oge(u),Vt=rs(He,$e);iK.add(rm(He,Vt.start,Vt.length,Z.A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead))}ySe(u);let Me=Uo(u);if(Me.flags&512&&!Y&&jet(u,Lb(Te))){if(Te.erasableSyntaxOnly&&Br(u.name,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),lS(Te)&&!ms(u).externalModuleIndicator&&Br(u.name,Z.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,qt),((v=Me.declarations)==null?void 0:v.length)>1){let He=MUs(Me);He&&(ms(u)!==ms(He)?Br(u.name,Z.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):u.pos$e.kind===95);He&&Br(He,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(oe)if(BF(u)){if((W||Uo(u).flags&33554432)&&u.body)for(let $e of u.body.statements)s6t($e,W)}else fc(u.parent)?W?Br(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Xr(g2(u.name))&&Br(u.name,Z.Ambient_module_declaration_cannot_specify_relative_module_name):W?Br(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Br(u.name,Z.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function s6t(u,m){switch(u.kind){case 244:for(let D of u.declarationList.declarations)s6t(D,m);break;case 278:case 279:UC(u,Z.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 272:if(_3(u))break;case 273:UC(u,Z.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 209:case 261:let v=u.name;if(Nu(v)){for(let D of v.elements)s6t(D,m);break}case 264:case 267:case 263:case 265:case 268:case 266:if(m)return;break}}function QUs(u){switch(u.kind){case 80:return u;case 167:do u=u.left;while(u.kind!==80);return u;case 212:do{if(dN(u.expression)&&!p(u.name))return u.name;u=u.expression}while(u.kind!==80);return u}}function jat(u){let m=UY(u);if(!m||af(m))return!1;if(!Lg(m))return Br(m,Z.String_literal_expected),!1;let v=u.parent.kind===269&&a_(u.parent.parent);if(u.parent.kind!==308&&!v)return Br(m,u.kind===279?Z.Export_declarations_are_not_permitted_in_a_namespace:Z.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(v&&Xr(m.text)&&!Ype(u))return Br(u,Z.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!Zm(u)&&u.attributes){let D=u.attributes.token===118?Z.Import_attribute_values_must_be_string_literal_expressions:Z.Import_assertion_values_must_be_string_literal_expressions,W=!1;for(let Y of u.attributes.elements)Lg(Y.value)||(W=!0,Br(Y.value,D));return!W}return!0}function zat(u,m=!0){u===void 0||u.kind!==11||(m?(Pe===5||Pe===6)&&os(u,Z.String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020):os(u,Z.Identifier_expected))}function qat(u){var m,v,D,W,Y;let oe=Uo(u),Be=XC(oe);if(Be!==st){if(oe=qA(oe.exportSymbol||oe),wo(u)&&!(Be.flags&111551)&&!cN(u)){let $e=iS(u)?u.propertyName||u.name:sh(u)?u.name:u;if(pe.assert(u.kind!==281),u.kind===282){let Vt=Br($e,Z.Types_cannot_appear_in_export_declarations_in_JavaScript_files),xt=(v=(m=ms(u).symbol)==null?void 0:m.exports)==null?void 0:v.get(vF(u.propertyName||u.name));if(xt===Be){let wr=(D=xt.declarations)==null?void 0:D.find(I3);wr&&ug(Vt,mo(wr,Z._0_is_automatically_exported_here,Bc(xt.escapedName)))}}else{pe.assert(u.kind!==261);let Vt=ji(u,Qp(Yf,Zm)),xt=(Vt&&((W=JY(Vt))==null?void 0:W.text))??"...",wr=Bc(Ir($e)?$e.escapedText:oe.escapedName);Br($e,Z._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,wr,`import("${xt}").${wr}`)}return}let Me=Qb(Be),He=(oe.flags&1160127?111551:0)|(oe.flags&788968?788968:0)|(oe.flags&1920?1920:0);if(Me&He){let $e=u.kind===282?Z.Export_declaration_conflicts_with_exported_declaration_of_0:Z.Import_declaration_conflicts_with_local_declaration_of_0;Br(u,$e,xl(oe))}else u.kind!==282&&Te.isolatedModules&&!ji(u,cN)&&oe.flags&1160127&&Br(u,Z.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,xl(oe),qt);if(lS(Te)&&!cN(u)&&!(u.flags&33554432)){let $e=fR(oe),Vt=!(Me&111551);if(Vt||$e)switch(u.kind){case 274:case 277:case 272:{if(Te.verbatimModuleSyntax){pe.assertIsDefined(u.name,"An ImportClause with a symbol should have a name");let xt=Te.verbatimModuleSyntax&&_3(u)?Z.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:Vt?Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,wr=UD(u.kind===277&&u.propertyName||u.name);mu(Br(u,xt,wr),Vt?void 0:$e,wr)}Vt&&u.kind===272&&Zb(u,32)&&Br(u,Z.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,qt);break}case 282:if(Te.verbatimModuleSyntax||ms($e)!==ms(u)){let xt=UD(u.propertyName||u.name),wr=Vt?Br(u,Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,qt):Br(u,Z._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,xt,qt);mu(wr,Vt?void 0:$e,xt);break}}if(Te.verbatimModuleSyntax&&u.kind!==272&&!wo(u)&&s.getEmitModuleFormatOfFile(ms(u))===1?Br(u,sK(u)):Pe===200&&u.kind!==272&&u.kind!==261&&s.getEmitModuleFormatOfFile(ms(u))===1&&Br(u,Z.ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve),Te.verbatimModuleSyntax&&!cN(u)&&!(u.flags&33554432)&&Me&128){let xt=Be.valueDeclaration,wr=(Y=s.getRedirectFromOutput(ms(xt).resolvedPath))==null?void 0:Y.resolvedRef;xt.flags&33554432&&(!wr||!Lb(wr.commandLine.options))&&Br(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,qt)}}if(Ay(u)){let $e=o6t(oe,u);fy($e)&&$e.declarations&&KB(u,$e.declarations,$e.escapedName)}}}function o6t(u,m){if(!(u.flags&2097152)||fy(u)||!Yb(u))return u;let v=XC(u);if(v===st)return v;for(;u.flags&2097152;){let D=Cat(u);if(D){if(D===v)break;if(D.declarations&&B(D.declarations))if(fy(D)){KB(m,D.declarations,D.escapedName);break}else{if(u===v)break;u=D}}else break}return v}function $at(u){Cfe(u,u.name),qat(u),u.kind===277&&(zat(u.propertyName),dv(u.propertyName||u.name)&&Lw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&iC(u,131072))}function a6t(u){var m;let v=u.attributes;if(v){let D=EUt(!0);D!==Jg&&I0(MJt(v),uPe(D,32768),v);let W=xtt(u),Y=Uie(v,W?os:void 0),oe=u.attributes.token===118;if(W&&Y)return;if(!wLe(Pe))return os(v,oe?Z.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:Z.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve);if(102<=Pe&&Pe<=199&&!oe)return UC(v,Z.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert);if(u.moduleSpecifier&&oZ(u.moduleSpecifier)===1)return os(v,oe?Z.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls);if(RN(u)||(Yf(u)?(m=u.importClause)==null?void 0:m.isTypeOnly:u.isTypeOnly))return os(v,oe?Z.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Z.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(Y)return os(v,Z.resolution_mode_can_only_be_set_for_type_only_imports)}}function XUs(u){return my(DI(u.value))}function JUs(u){if(!qPe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!uG(u)&&u.modifiers&&UC(u,Z.An_import_declaration_cannot_have_modifiers),jat(u)){let m,v=u.importClause;v&&!L8s(v)?(v.name&&$at(v),v.namedBindings&&(v.namedBindings.kind===275?($at(v.namedBindings),s.getEmitModuleFormatOfFile(ms(u))<4&&Lw(Te)&&iC(u,65536)):(m=L0(u,u.moduleSpecifier),m&&F(v.namedBindings.elements,$at))),!v.isTypeOnly&&101<=Pe&&Pe<=199&&gO(u.moduleSpecifier,m)&&!UUs(u)&&Br(u.moduleSpecifier,Z.Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0,ev[Pe])):_r&&!v&&L0(u,u.moduleSpecifier)}a6t(u)}}function UUs(u){return!!u.attributes&&u.attributes.elements.some(m=>{var v;return g2(m.name)==="type"&&((v=Gs(m.value,CA))==null?void 0:v.text)==="json"})}function KUs(u){if(!qPe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(uG(u),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),_3(u)||jat(u)))if($at(u),Jq(u,6),u.moduleReference.kind!==284){let m=XC(Uo(u));if(m!==st){let v=Qb(m);if(v&111551){let D=T0(u.moduleReference);NI(D,112575).flags&1920||Br(D,Z.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,Md(D))}v&788968&&_fe(u.name,Z.Import_name_cannot_be_0)}u.isTypeOnly&&os(u,Z.An_import_alias_cannot_use_import_type)}else 5<=Pe&&Pe<=99&&!u.isTypeOnly&&!(u.flags&33554432)&&os(u,Z.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)}function jUs(u){if(!qPe(u,wo(u)?Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!uG(u)&&iLe(u)&&UC(u,Z.An_export_declaration_cannot_have_modifiers),zUs(u),!u.moduleSpecifier||jat(u))if(u.exportClause&&!ok(u.exportClause)){F(u.exportClause.elements,qUs);let m=u.parent.kind===269&&a_(u.parent.parent),v=!m&&u.parent.kind===269&&!u.moduleSpecifier&&u.flags&33554432;u.parent.kind!==308&&!m&&!v&&Br(u,Z.Export_declarations_are_not_permitted_in_a_namespace)}else{let m=L0(u,u.moduleSpecifier);m&&zw(m)?Br(u.moduleSpecifier,Z.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,xl(m)):u.exportClause&&(qat(u.exportClause),zat(u.exportClause.name)),s.getEmitModuleFormatOfFile(ms(u))<4&&(u.exportClause?Lw(Te)&&iC(u,65536):iC(u,32768))}a6t(u)}}function zUs(u){var m;return u.isTypeOnly&&((m=u.exportClause)==null?void 0:m.kind)===280?Byn(u.exportClause):!1}function qPe(u,m){let v=u.parent.kind===308||u.parent.kind===269||u.parent.kind===268;return v||UC(u,m),!v}function qUs(u){qat(u);let m=u.parent.parent.moduleSpecifier!==void 0;if(zat(u.propertyName,m),zat(u.name),Wy(Te)&&Wse(u.propertyName||u.name,!0),m)Lw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&dv(u.propertyName||u.name)&&iC(u,131072);else{let v=u.propertyName||u.name;if(v.kind===11)return;let D=An(v,v.escapedText,2998271,void 0,!0);D&&(D===dt||D===pr||D.declarations&&fc(Tn(D.declarations[0])))?Br(v,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,Vo(v)):Jq(u,7)}}function $Us(u){let m=u.isExportEquals?Z.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(qPe(u,m))return;Te.erasableSyntaxOnly&&u.isExportEquals&&!(u.flags&33554432)&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled);let v=u.parent.kind===308?u.parent:u.parent.parent;if(v.kind===268&&!a_(v)){u.isExportEquals?Br(u,Z.An_export_assignment_cannot_be_used_in_a_namespace):Br(u,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!uG(u)&&hbe(u)&&UC(u,Z.An_export_assignment_cannot_have_modifiers);let D=Zh(u);D&&I0(DI(u.expression),tl(D),u.expression);let W=!u.isExportEquals&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&s.getEmitModuleFormatOfFile(ms(u))===1;if(u.expression.kind===80){let Y=u.expression,oe=fn(NI(Y,-1,!0,!0,u));if(oe){Jq(u,3);let Be=fR(oe,111551);if(Qb(oe)&111551?(DI(Y),!W&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Be&&Br(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Z.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,Vo(Y))):!W&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Br(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Z.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,Vo(Y)),!W&&!(u.flags&33554432)&&lS(Te)&&!(oe.flags&111551)){let Me=Qb(oe,!1,!0);oe.flags&2097152&&Me&788968&&!(Me&111551)&&(!Be||ms(Be)!==ms(u))?Br(Y,u.isExportEquals?Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),qt):Be&&ms(Be)!==ms(u)&&mu(Br(Y,u.isExportEquals?Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),qt),Be,Vo(Y))}}else DI(Y);Wy(Te)&&Wse(Y,!0)}else DI(u.expression);W&&Br(u,sK(u)),X0n(v),u.flags&33554432&&!Hd(u.expression)&&os(u.expression,Z.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),u.isExportEquals&&(Pe>=5&&Pe!==200&&(u.flags&33554432&&s.getImpliedNodeFormatForEmit(ms(u))===99||!(u.flags&33554432)&&s.getImpliedNodeFormatForEmit(ms(u))!==1)?os(u,Z.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):Pe===4&&!(u.flags&33554432)&&os(u,Z.Export_assignment_is_not_supported_when_module_flag_is_system))}function eKs(u){return Fh(u.exports,(m,v)=>v!=="export=")}function X0n(u){let m=Uo(u),v=fa(m);if(!v.exportsChecked){let D=m.exports.get("export=");if(D&&eKs(m)){let Y=Yb(D)||D.valueDeclaration;Y&&!Ype(Y)&&!wo(Y)&&Br(Y,Z.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}let W=MN(m);W&&W.forEach(({declarations:Y,flags:oe},Be)=>{if(Be==="__export"||oe&1920)return;let Me=ze(Y,hh(vvs,dC(d_)));if(!(oe&524288&&Me<=2)&&Me>1&&!ect(Y))for(let He of Y)Ytn(He)&&PA.add(mo(He,Z.Cannot_redeclare_exported_variable_0,Bc(Be)))}),v.exportsChecked=!0}}function ect(u){return u&&u.length>1&&u.every(m=>wo(m)&&bp(m)&&(y3(m.expression)||dN(m.expression)))}function nA(u){if(u){let m=ge;ge=u,M=0,tKs(u),ge=m}}function tKs(u){if($q(u)&8388608)return;Bne(u)&&F(u.jsDoc,({comment:v,tags:D})=>{J0n(v),F(D,W=>{J0n(W.comment),wo(u)&&nA(W)})});let m=u.kind;if(d)switch(m){case 268:case 264:case 265:case 263:d.throwIfCancellationRequested()}switch(m>=244&&m<=260&&aU(u)&&u.flowNode&&!mPe(u.flowNode)&&Uw(Te.allowUnreachableCode===!1,u,Z.Unreachable_code_detected),m){case 169:return $_n(u);case 170:return e0n(u);case 173:return n0n(u);case 172:return V4s(u);case 186:case 185:case 180:case 181:case 182:return CSe(u);case 175:case 174:return W4s(u);case 176:return O4s(u);case 177:return P4s(u);case 178:case 179:return s0n(u);case 184:return Q8t(u);case 183:return G4s(u);case 187:return J4s(u);case 188:return U4s(u);case 189:return K4s(u);case 190:return j4s(u);case 193:case 194:return z4s(u);case 197:case 191:case 192:return nA(u.type);case 198:return tJs(u);case 199:return rJs(u);case 195:return nJs(u);case 196:return iJs(u);case 204:return sJs(u);case 206:return oJs(u);case 203:return aJs(u);case 329:return wJs(u);case 330:return BJs(u);case 347:case 339:case 341:return IJs(u);case 346:return hJs(u);case 345:return mJs(u);case 325:case 326:case 327:return _Js(u);case 342:return yJs(u);case 349:return bJs(u);case 318:EJs(u);case 316:case 315:case 313:case 314:case 323:U0n(u),Lu(u,nA);return;case 319:rKs(u);return;case 310:return nA(u.type);case 334:case 336:case 335:return TJs(u);case 351:return CJs(u);case 344:return SJs(u);case 352:return vJs(u);case 200:return q4s(u);case 201:return $4s(u);case 263:return fJs(u);case 242:case 269:return Yat(u);case 244:return XJs(u);case 245:return JJs(u);case 246:return UJs(u);case 247:return zJs(u);case 248:return qJs(u);case 249:return $Js(u);case 250:return tUs(u);case 251:return eUs(u);case 252:case 253:return uUs(u);case 254:return gUs(u);case 255:return AUs(u);case 256:return dUs(u);case 257:return pUs(u);case 258:return fUs(u);case 259:return IUs(u);case 261:return YJs(u);case 209:return QJs(u);case 264:return SUs(u);case 265:return GUs(u);case 266:return FUs(u);case 267:return WUs(u);case 307:return PUs(u);case 268:return YUs(u);case 273:return JUs(u);case 272:return KUs(u);case 279:return jUs(u);case 278:return $Us(u);case 243:case 260:yZ(u);return;case 283:return H4s(u)}}function J0n(u){Ki(u)&&F(u,m=>{xx(m)&&nA(m)})}function U0n(u){if(!wo(u))if(_9e(u)||Nie(u)){let m=Vi(_9e(u)?54:58),v=u.postfix?Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,D=u.type,W=tl(D);os(u,v,m,ro(Nie(u)&&!(W===Oi||W===es)?Ha(Ft([W,wt],u.postfix?void 0:Hn)):W))}else os(u,Z.JSDoc_types_can_only_be_used_inside_documentation_comments)}function rKs(u){U0n(u),nA(u.type);let{parent:m}=u;if(Si(m)&&Die(m.parent)){Ei(m.parent.parameters)!==m&&Br(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list);return}J3(m)||Br(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);let v=u.parent.parent;if(!AS(v)){Br(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}let D=wne(v);if(!D)return;let W=QL(v);(!W||Ei(W.parameters).symbol!==D)&&Br(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list)}function nKs(u){let m=tl(u.type),{parent:v}=u,D=u.parent.parent;if(J3(u.parent)&&AS(D)){let W=QL(D),Y=L$e(D.parent.parent);if(W||Y){let oe=li(Y?D.parent.parent.typeExpression.parameters:W.parameters),Be=wne(D);if(!oe||Be&&oe.symbol===Be&&TB(oe))return f0(m)}}return Si(v)&&Die(v.parent)?f0(m):V0(m)}function zq(u){let m=ms(u),v=sa(m);v.flags&1?pe.assert(!v.deferredNodes,"A type-checked file should have no deferred nodes."):(v.deferredNodes||(v.deferredNodes=new Set),v.deferredNodes.add(u))}function K0n(u){let m=sa(u);m.deferredNodes&&m.deferredNodes.forEach(iKs),m.deferredNodes=void 0}function iKs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkDeferredNode",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let D=ge;switch(ge=u,M=0,u.kind){case 214:case 215:case 216:case 171:case 287:YK(u);break;case 219:case 220:case 175:case 174:KXs(u);break;case 178:case 179:s0n(u);break;case 232:EUs(u);break;case 169:x4s(u);break;case 286:rQs(u);break;case 285:iQs(u);break;case 217:case 235:case 218:CXs(u);break;case 223:Ml(u.expression);break;case 227:DAe(u)&&YK(u);break}ge=D,(v=ki)==null||v.pop()}function sKs(u,m){var v,D;(v=ki)==null||v.push(ki.Phase.Check,m?"checkSourceFileNodes":"checkSourceFile",{path:u.path},!0);let W=m?"beforeCheckNodes":"beforeCheck",Y=m?"afterCheckNodes":"afterCheck";Mc(W),m?aKs(u,m):oKs(u),Mc(Y),Pf("Check",W,Y),(D=ki)==null||D.pop()}function j0n(u,m){if(m)return!1;switch(u){case 0:return!!Te.noUnusedLocals;case 1:return!!Te.noUnusedParameters;default:return pe.assertNever(u)}}function z0n(u){return Qs.get(u.path)||E}function oKs(u){let m=sa(u);if(!(m.flags&1)){if(F3(u,Te,s))return;Syn(u),ft(iO),ft(p9),ft($F),ft(eZ),ft(tZ),m.flags&8388608&&(iO=m.potentialThisCollisions,p9=m.potentialNewTargetCollisions,$F=m.potentialWeakMapSetCollisions,eZ=m.potentialReflectCollisions,tZ=m.potentialUnusedRenamedBindingElementsInTypes),F(u.statements,nA),nA(u.endOfFileToken),K0n(u),Sl(u)&&TO(u),g(()=>{!u.isDeclarationFile&&(Te.noUnusedLocals||Te.noUnusedParameters)&&I0n(z0n(u),(v,D,W)=>{!bW(v)&&j0n(D,!!(v.flags&33554432))&&PA.add(W)}),u.isDeclarationFile||kJs()}),Sl(u)&&X0n(u),iO.length&&(F(iO,FJs),ft(iO)),p9.length&&(F(p9,ZJs),ft(p9)),$F.length&&(F($F,OJs),ft($F)),eZ.length&&(F(eZ,MJs),ft(eZ)),m.flags|=1}}function aKs(u,m){let v=sa(u);if(!(v.flags&1)){if(F3(u,Te,s))return;Syn(u),ft(iO),ft(p9),ft($F),ft(eZ),ft(tZ),F(m,nA),K0n(u),(v.potentialThisCollisions||(v.potentialThisCollisions=[])).push(...iO),(v.potentialNewTargetCollisions||(v.potentialNewTargetCollisions=[])).push(...p9),(v.potentialWeakMapSetCollisions||(v.potentialWeakMapSetCollisions=[])).push(...$F),(v.potentialReflectCollisions||(v.potentialReflectCollisions=[])).push(...eZ),(v.potentialUnusedRenamedBindingElementsInTypes||(v.potentialUnusedRenamedBindingElementsInTypes=[])).push(...tZ),v.flags|=8388608;for(let D of m){let W=sa(D);W.flags|=8388608}}}function q0n(u,m,v){try{return d=m,cKs(u,v)}finally{d=void 0}}function c6t(){for(let u of c)u();c=[]}function l6t(u,m){c6t();let v=g;g=D=>D(),sKs(u,m),g=v}function cKs(u,m){if(u){c6t();let v=PA.getGlobalDiagnostics(),D=v.length;l6t(u,m);let W=PA.getDiagnostics(u.fileName);if(m)return W;let Y=PA.getGlobalDiagnostics();if(Y!==v){let oe=Or(v,Y,oz);return Nn(oe,W)}else if(D===0&&Y.length>0)return Nn(Y,W);return W}return F(s.getSourceFiles(),v=>l6t(v)),PA.getDiagnostics()}function lKs(){return c6t(),PA.getGlobalDiagnostics()}function uKs(u,m){if(u.flags&67108864)return[];let v=$u(),D=!1;return W(),v.delete("this"),dUt(v);function W(){for(;u;){switch(HI(u)&&u.locals&&!fc(u)&&oe(u.locals,m),u.kind){case 308:if(!Lm(u))break;case 268:Be(Uo(u).exports,m&2623475);break;case 267:oe(Uo(u).exports,m&8);break;case 232:u.name&&Y(u.symbol,m);case 264:case 265:D||oe(Ck(Uo(u)),m&788968);break;case 219:u.name&&Y(u.symbol,m);break}SZe(u)&&Y(ot,m),D=lg(u),u=u.parent}oe(Gr,m)}function Y(Me,He){if(mU(Me)&He){let $e=Me.escapedName;v.has($e)||v.set($e,Me)}}function oe(Me,He){He&&Me.forEach($e=>{Y($e,He)})}function Be(Me,He){He&&Me.forEach($e=>{!yp($e,282)&&!yp($e,281)&&$e.escapedName!=="default"&&Y($e,He)})}}function gKs(u){return u.kind===80&&oQ(u.parent)&&fl(u.parent)===u}function $0n(u){for(;u.parent.kind===167;)u=u.parent;return u.parent.kind===184}function AKs(u){for(;u.parent.kind===212;)u=u.parent;return u.parent.kind===234}function eyn(u,m){let v,D=_C(u);for(;D&&!(v=m(D));)D=_C(D);return v}function dKs(u){return!!ji(u,m=>Tc(m)&&d1(m.body)||pi(m)?!0:xa(m)||Gd(m)?"quit":!1)}function u6t(u,m){return!!eyn(u,v=>v===m)}function pKs(u){for(;u.parent.kind===167;)u=u.parent;if(u.parent.kind===272)return u.parent.moduleReference===u?u.parent:void 0;if(u.parent.kind===278)return u.parent.expression===u?u.parent:void 0}function tct(u){return pKs(u)!==void 0}function fKs(u){switch(oI(u.parent.parent)){case 1:case 3:return bS(u.parent);case 5:if(jo(u.parent)&&CU(u.parent)===u)return;case 4:case 2:return Uo(u.parent.parent)}}function IKs(u){let m=u.parent;for(;zi(m);)u=m,m=m.parent;if(m&&m.kind===206&&m.qualifier===u)return m}function hKs(u){if(u.expression.kind===110){let m=i0(u,!1,!1);if(Eu(m)){let v=uCn(m);if(v){let D=U5(v,void 0),W=ACn(v,D);return W&&!Xo(W)}}}}function tyn(u){if(UT(u))return bS(u.parent);if(wo(u)&&u.parent.kind===212&&u.parent===u.parent.parent.left&&!p(u)&&!U3(u)&&!hKs(u.parent)){let m=fKs(u);if(m)return m}if(u.parent.kind===278&&Hd(u)){let m=NI(u,2998271,!0);if(m&&m!==st)return m}else if(mC(u)&&tct(u)){let m=UL(u,272);return pe.assert(m!==void 0),pO(u,!0)}if(mC(u)){let m=IKs(u);if(m){tl(m);let v=sa(u).resolvedSymbol;return v===st?void 0:v}}for(;uLe(u);)u=u.parent;if(AKs(u)){let m=0;u.parent.kind===234?(m=kw(u)?788968:111551,NAe(u.parent)&&(m|=111551)):m=1920,m|=2097152;let v=Hd(u)?NI(u,m,!0):void 0;if(v)return v}if(u.parent.kind===342)return wne(u.parent);if(u.parent.kind===169&&u.parent.parent.kind===346){pe.assert(!wo(u));let m=WZe(u.parent);return m&&m.symbol}if(JT(u)){if(af(u))return;let m=ji(u,Qp(xx,Bde,U3)),v=m?901119:111551;if(u.kind===80){if(nU(u)&&Kq(u)){let W=yat(u.parent);return W===st?void 0:W}let D=NI(u,v,!0,!0,QL(u));if(!D&&m){let W=ji(u,Qp(xa,d_));if(W)return $Pe(u,!0,Uo(W))}if(D&&m){let W=NW(u);if(W&&HF(W)&&W===D.valueDeclaration)return NI(u,v,!0,!0,ms(W))||D}return D}else{if(p(u))return vat(u);if(u.kind===212||u.kind===167){let D=sa(u);return D.resolvedSymbol?D.resolvedSymbol:(u.kind===212?(Sat(u,0),D.resolvedSymbol||(D.resolvedSymbol=ryn(DI(u.expression),gZ(u.name)))):MCn(u,0),!D.resolvedSymbol&&m&&zi(u)?$Pe(u):D.resolvedSymbol)}else if(U3(u))return $Pe(u)}}else if(mC(u)&&$0n(u)){let m=u.parent.kind===184?788968:1920,v=NI(u,m,!0,!0);return v&&v!==st?v:Eot(u)}if(u.parent.kind===183)return NI(u,1,!0)}function ryn(u,m){let v=AUt(u,m);if(v.length&&u.members){let D=Cot(CR(u).members);if(v===p0(u))return D;if(D){let W=fa(D),Y=Xt(v,Be=>Be.declaration),oe=lt(Y,id).join(",");if(W.filteredIndexSymbolCache||(W.filteredIndexSymbolCache=new Map),W.filteredIndexSymbolCache.has(oe))return W.filteredIndexSymbolCache.get(oe);{let Be=AA(131072,"__index");return Be.declarations=Xt(v,Me=>Me.declaration),Be.parent=u.aliasSymbol?u.aliasSymbol:u.symbol?u.symbol:Lv(Be.declarations[0].parent),W.filteredIndexSymbolCache.set(oe,Be),Be}}}}function $Pe(u,m,v){if(mC(u)){let oe=NI(u,901119,m,!0,QL(u));if(!oe&&Ir(u)&&v&&(oe=qA(h_(R1(v),u.escapedText,901119))),oe)return oe}let D=Ir(u)?v:$Pe(u.left,m,v),W=Ir(u)?u.escapedText:u.right.escapedText;if(D){let Y=D.flags&111551&&Fg(fo(D),"prototype"),oe=Y?fo(Y):Lp(D);return Fg(oe,W)}}function Lv(u,m){if(al(u))return Lm(u)?qA(u.symbol):void 0;let{parent:v}=u,D=v.parent;if(!(u.flags&67108864)){if(Qtn(u)){let W=Uo(v);return iS(u.parent)&&u.parent.propertyName===u?Cat(W):W}else if(Rne(u))return Uo(v.parent);if(u.kind===80){if(tct(u))return tyn(u);if(v.kind===209&&D.kind===207&&u===v.propertyName){let W=qq(D),Y=Fg(W,u.escapedText);if(Y)return Y}else if(Du(v)&&v.name===u)return v.keywordToken===105&&Vo(u)==="target"?B8t(v).symbol:v.keywordToken===102&&Vo(u)==="meta"?YIn().members.get("meta"):void 0}switch(u.kind){case 80:case 81:case 212:case 167:if(!jL(u))return tyn(u);case 110:let W=i0(u,!1,!1);if(Eu(W)){let Be=vS(W);if(Be.thisParameter)return Be.thisParameter}if(Ine(u))return Ml(u).symbol;case 198:return XUt(u).symbol;case 108:return Ml(u).symbol;case 137:let Y=u.parent;return Y&&Y.kind===177?Y.parent.symbol:void 0;case 11:case 15:if(HL(u.parent.parent)&&G7(u.parent.parent)===u||(u.parent.kind===273||u.parent.kind===279)&&u.parent.moduleSpecifier===u||wo(u)&&RN(u.parent)&&u.parent.moduleSpecifier===u||wo(u)&&ly(u.parent,!1)||jp(u.parent)||BE(u.parent)&&Gy(u.parent.parent)&&u.parent.parent.argument===u.parent)return L0(u,u,m);if(Ll(v)&&b3(v)&&v.arguments[1]===u)return Uo(v);case 9:let oe=Qg(v)?v.argumentExpression===u?P_(v.expression):void 0:BE(v)&&_v(D)?tl(D.objectType):void 0;return oe&&Fg(oe,pp(u.text));case 90:case 100:case 39:case 86:return bS(u.parent);case 206:return Gy(u)?Lv(u.argument.literal,m):void 0;case 95:return yf(u.parent)?pe.checkDefined(u.parent.symbol):void 0;case 102:if(Du(u.parent)&&u.parent.name.escapedText==="defer")return;case 105:return Du(u.parent)?B_n(u.parent).symbol:void 0;case 104:if(po(u.parent)){let Be=P_(u.parent.right),Me=L8t(Be);return Me?.symbol??Be.symbol}return;case 237:return Ml(u).symbol;case 296:if(nU(u)&&Kq(u)){let Be=yat(u.parent);return Be===st?void 0:Be}default:return}}}function mKs(u){if(Ir(u)&&jo(u.parent)&&u.parent.name===u){let m=gZ(u),v=P_(u.parent.expression),D=v.flags&1048576?v.types:[v];return jt(D,W=>Le(p0(W),Y=>Vq(m,Y.keyType)))}}function CKs(u){if(u&&u.kind===305)return NI(u.name,2208703,!0)}function _Ks(u){if(D0(u)){let m=u.propertyName||u.name;return u.parent.parent.moduleSpecifier?w5(u.parent.parent,u):m.kind===11?void 0:NI(m,2998271,!0)}else return NI(u,2998271,!0)}function qq(u){if(al(u)&&!Lm(u)||u.flags&67108864)return nn;let m=bbe(u),v=m&&Dv(Uo(m.class));if(kw(u)){let D=tl(u);return v?D1(D,v.thisType):D}if(JT(u))return nyn(u);if(v&&!m.isImplements){let D=Nc(eT(v));return D?D1(D,v.thisType):nn}if(oQ(u)){let D=Uo(u);return Lp(D)}if(gKs(u)){let D=Lv(u);return D?Lp(D):nn}if(mg(u))return Gq(u,!0,0)||nn;if(em(u)){let D=Uo(u);return D?fo(D):nn}if(Qtn(u)){let D=Lv(u);return D?fo(D):nn}if(Nu(u))return Gq(u.parent,!0,0)||nn;if(tct(u)){let D=Lv(u);if(D){let W=Lp(D);return lo(W)?fo(D):W}}return Du(u.parent)&&u.parent.keywordToken===u.kind?B_n(u.parent):kU(u)?EUt(!1):nn}function rct(u){if(pe.assert(u.kind===211||u.kind===210),u.parent.kind===251){let W=KPe(u.parent);return XK(u,W||nn)}if(u.parent.kind===227){let W=P_(u.parent.right);return XK(u,W||nn)}if(u.parent.kind===304){let W=Ma(u.parent.parent,ag),Y=rct(W)||nn,oe=EW(W.properties,u.parent);return P_n(W,Y,oe)}let m=Ma(u.parent,YI),v=rct(m)||nn,D=Z9(65,v,wt,u.parent)||nn;return M_n(m,v,m.elements.indexOf(u),D)}function yKs(u){let m=rct(Ma(u.parent.parent,NY));return m&&Fg(m,u.escapedText)}function nyn(u){return $7(u)&&(u=u.parent),my(P_(u))}function iyn(u){let m=bS(u.parent);return lg(u)?fo(m):Lp(m)}function syn(u){let m=u.name;switch(m.kind){case 80:return DE(Vo(m));case 9:case 11:return DE(m.text);case 168:let v=rT(m);return O_(v,12288)?v:$r;default:return pe.fail("Unsupported property name.")}}function g6t(u){u=hy(u);let m=$u(Zd(u)),v=rg(u,0).length?Yl:rg(u,1).length?DA:void 0;return v&&F(Zd(v),D=>{m.has(D.escapedName)||m.set(D.escapedName,D)}),Jy(m)}function nct(u){return rg(u,0).length!==0||rg(u,1).length!==0}function oyn(u){let m=bKs(u);return m?jt(m,oyn):[u]}function bKs(u){if(aI(u)&6)return Xt(fa(u).containingType.types,m=>Fg(m,u.escapedName));if(u.flags&33554432){let{links:{leftSpread:m,rightSpread:v,syntheticOrigin:D}}=u;return m?[m,v]:D?[D]:K_(EKs(u))}}function EKs(u){let m,v=u;for(;v=fa(v).target;)m=v;return m}function SKs(u){if(Gp(u))return!1;let m=eu(u,Ir);if(!m)return!1;let v=m.parent;return v?!((jo(v)||Cm(v))&&v.name===m)&&RSe(m)===ot:!1}function vKs(u){return p3(u.parent)&&u===u.parent.name}function BKs(u,m){var v;let D=eu(u,Ir);if(D){let W=RSe(D,vKs(D));if(W){if(W.flags&1048576){let oe=qA(W.exportSymbol);if(!m&&oe.flags&944&&!(oe.flags&3))return;W=oe}let Y=nC(W);if(Y){if(Y.flags&512&&((v=Y.valueDeclaration)==null?void 0:v.kind)===308){let oe=Y.valueDeclaration,Be=ms(D);return oe!==Be?void 0:oe}return ji(D.parent,oe=>p3(oe)&&Uo(oe)===Y)}}}}function wKs(u){let m=g9e(u);if(m)return m;let v=eu(u,Ir);if(v){let D=MKs(v);if(gK(D,111551)&&!fR(D,111551))return Yb(D)}}function TKs(u){return u.valueDeclaration&&mg(u.valueDeclaration)&&ai(u.valueDeclaration).parent.kind===300}function ayn(u){if(u.flags&418&&u.valueDeclaration&&!al(u.valueDeclaration)){let m=fa(u);if(m.isDeclarationWithCollidingName===void 0){let v=sS(u.valueDeclaration);if(Fge(v)||TKs(u))if(An(v.parent,u.escapedName,111551,void 0,!1))m.isDeclarationWithCollidingName=!0;else if(A6t(u.valueDeclaration,16384)){let D=A6t(u.valueDeclaration,32768),W=HT(v,!1),Y=v.kind===242&&HT(v.parent,!1);m.isDeclarationWithCollidingName=!Qge(v)&&(!D||!W&&!Y)}else m.isDeclarationWithCollidingName=!1}return m.isDeclarationWithCollidingName}return!1}function RKs(u){if(!Gp(u)){let m=eu(u,Ir);if(m){let v=RSe(m);if(v&&ayn(v))return v.valueDeclaration}}}function NKs(u){let m=eu(u,em);if(m){let v=Uo(m);if(v)return ayn(v)}return!1}function cyn(u){switch(pe.assert(Yt),u.kind){case 272:return ict(Uo(u));case 274:case 275:case 277:case 282:let m=Uo(u);return!!m&&ict(m,!0);case 279:let v=u.exportClause;return!!v&&(ok(v)||zt(v.elements,cyn));case 278:return u.expression&&u.expression.kind===80?ict(Uo(u),!0):!0}return!1}function DKs(u){let m=eu(u,Zm);return m===void 0||m.parent.kind!==308||!_3(m)?!1:ict(Uo(m))&&m.moduleReference&&!af(m.moduleReference)}function ict(u,m){if(!u)return!1;let v=ms(u.valueDeclaration),D=v&&Uo(v);NE(D);let W=fn(XC(u));return W===st?!m||!fR(u):!!(Qb(u,m,!0)&111551)&&(Lb(Te)||!TSe(W))}function TSe(u){return Z8t(u)||!!u.constEnumOnlyModule}function lyn(u,m){if(pe.assert(Yt),C9(u)){let v=Uo(u),D=v&&fa(v);if(D?.referenced)return!0;let W=fa(v).aliasTarget;if(W&&c_(u)&32&&Qb(W)&111551&&(Lb(Te)||!TSe(W)))return!0}return m?!!Lu(u,v=>lyn(v,m)):!1}function uyn(u){if(d1(u.body)){if(wB(u)||Av(u))return!1;let m=Uo(u),v=jQ(m);return v.length>1||v.length===1&&v[0].declaration!==u}return!1}function kKs(u){let m=dyn(u);if(!m)return!1;let v=tl(m);return lo(v)||jse(v)}function e3e(u,m){return(xKs(u,m)||GKs(u))&&!kKs(u)}function xKs(u,m){return!at||O2e(u)||AS(u)||!u.initializer?!1:Ga(u,31)?!!m&&Gd(m):!0}function GKs(u){return at&&O2e(u)&&(AS(u)||!u.initializer)&&Ga(u,31)}function gyn(u){let m=eu(u,D=>ah(D)||nc(D));if(!m)return!1;let v;if(nc(m)){if(m.type||!wo(m)&&!NSe(m))return!1;let D=L7(m);if(!D||!yE(D))return!1;v=Uo(D)}else v=Uo(m);return!v||!(v.flags&16|3)?!1:!!Fh(R1(v),D=>D.flags&111551&&aQ(D.valueDeclaration))}function FKs(u){let m=eu(u,ah);if(!m)return E;let v=Uo(m);return v&&Zd(fo(v))||E}function $q(u){var m;let v=u.id||0;return v<0||v>=f5.length?0:((m=f5[v])==null?void 0:m.flags)||0}function A6t(u,m){return ZKs(u,m),!!($q(u)&m)}function ZKs(u,m){if(!Te.noCheck&&SU(ms(u),Te)||sa(u).calculatedFlags&m)return;switch(m){case 16:case 32:return oe(u);case 128:case 256:case 2097152:return Y(u);case 512:case 8192:case 65536:case 262144:return Me(u);case 536870912:return $e(u);case 4096:case 32768:case 16384:return xt(u);default:return pe.assertNever(m,`Unhandled node check flag calculation: ${pe.formatNodeCheckFlags(m)}`)}function D(dn,vn){let ii=vn(dn,dn.parent);if(ii!=="skip")return ii||Vz(dn,vn)}function W(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=2097536,oe(dn)}function Y(dn){D(dn,W)}function oe(dn){let vn=sa(dn);vn.calculatedFlags|=48,dn.kind===108&&Aat(dn)}function Be(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=336384,$e(dn)}function Me(dn){D(dn,Be)}function He(dn){return JT(dn)||l0(dn.parent)&&(dn.parent.objectAssignmentInitializer??dn.parent.name)===dn}function $e(dn){let vn=sa(dn);if(vn.calculatedFlags|=536870912,Ir(dn)&&(vn.calculatedFlags|=49152,He(dn)&&!(jo(dn.parent)&&dn.parent.name===dn))){let ii=W0(dn);ii&&ii!==st&&oCn(dn,ii)}}function Vt(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=53248,wr(dn)}function xt(dn){let vn=sS(UT(dn)?dn.parent:dn);D(vn,Vt)}function wr(dn){$e(dn),Un(dn)&&rT(dn),p(dn)&&MI(dn.parent)&&Wat(dn.parent)}}function JK(u){return H0n(u.parent),sa(u).enumMemberValue??nm(void 0)}function Ayn(u){switch(u.kind){case 307:case 212:case 213:return!0}return!1}function sct(u){if(u.kind===307)return JK(u).value;sa(u).resolvedSymbol||DI(u);let m=sa(u).resolvedSymbol||(Hd(u)?NI(u,111551,!0):void 0);if(m&&m.flags&8){let v=m.valueDeclaration;if(OA(v.parent))return JK(v).value}}function d6t(u){return!!(u.flags&524288)&&rg(u,0).length>0}function LKs(u,m){var v;let D=eu(u,mC);if(!D||m&&(m=eu(m),!m))return 0;let W=!1;if(zi(D)){let $e=NI(T0(D),111551,!0,!0,m);W=!!((v=$e?.declarations)!=null&&v.every(cN))}let Y=NI(D,111551,!0,!0,m),oe=Y&&Y.flags&2097152?XC(Y):Y;W||(W=!!(Y&&fR(Y,111551)));let Be=NI(D,788968,!0,!0,m),Me=Be&&Be.flags&2097152?XC(Be):Be;if(Y||W||(W=!!(Be&&fR(Be,788968))),oe&&oe===Me){let $e=SUt(!1);if($e&&oe===$e)return 9;let Vt=fo(oe);if(Vt&&mR(Vt))return W?10:1}if(!Me)return W?11:0;let He=Lp(Me);return lo(He)?W?11:0:He.flags&3?11:O_(He,245760)?2:O_(He,528)?6:O_(He,296)?3:O_(He,2112)?4:O_(He,402653316)?5:bA(He)?7:O_(He,12288)?8:d6t(He)?10:Gv(He)?7:11}function VKs(u,m,v,D,W){let Y=eu(u,Ade);if(!Y)return me.createToken(133);let oe=Uo(Y);return kt.serializeTypeForDeclaration(Y,oe,m,v|1024,D,W)}function p6t(u){u=eu(u,TJ);let m=u.kind===179?178:179,v=yp(Uo(u),m),D=v&&v.pos{switch(D.kind){case 261:case 170:case 209:case 173:case 304:case 305:case 307:case 211:case 263:case 219:case 220:case 264:case 232:case 267:case 175:case 178:case 179:case 268:return!0}return!1})}}}function QKs(u){return Cf(u)||nc(u)&&NSe(u)?$Q(fo(Uo(u))):!1}function XKs(u,m,v){let D=u.flags&1056?kt.symbolToExpression(u.symbol,111551,m,void 0,void 0,v):u===tn?me.createTrue():u===Bs&&me.createFalse();if(D)return D;let W=u.value;return typeof W=="object"?me.createBigIntLiteral(W):typeof W=="string"?me.createStringLiteral(W):W<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-W)):me.createNumericLiteral(W)}function JKs(u,m){let v=fo(Uo(u));return XKs(v,u,m)}function f6t(u){return u?(Jw(u),ms(u).localJsxFactory||nZ):nZ}function I6t(u){if(u){let m=ms(u);if(m){if(m.localJsxFragmentFactory)return m.localJsxFragmentFactory;let v=m.pragmas.get("jsxfrag"),D=Ki(v)?v[0]:v;if(D)return m.localJsxFragmentFactory=Oz(D.arguments.factory,Ze),m.localJsxFragmentFactory}}if(Te.jsxFragmentFactory)return Oz(Te.jsxFragmentFactory,Ze)}function dyn(u){let m=Zh(u);if(m)return m;if(u.kind===170&&u.parent.kind===179){let v=p6t(u.parent).getAccessor;if(v)return Fb(v)}}function UKs(){return{getReferencedExportContainer:BKs,getReferencedImportDeclaration:wKs,getReferencedDeclarationWithCollidingName:RKs,isDeclarationWithCollidingName:NKs,isValueAliasDeclaration:m=>{let v=eu(m);return v&&Yt?cyn(v):!0},hasGlobalName:PKs,isReferencedAliasDeclaration:(m,v)=>{let D=eu(m);return D&&Yt?lyn(D,v):!0},hasNodeCheckFlag:(m,v)=>{let D=eu(m);return D?A6t(D,v):!1},isTopLevelValueImportEqualsWithEntityName:DKs,isDeclarationVisible:hk,isImplementationOfOverload:uyn,requiresAddingImplicitUndefined:e3e,isExpandoFunctionDeclaration:gyn,getPropertiesOfContainerFunction:FKs,createTypeOfDeclaration:VKs,createReturnTypeOfSignatureDeclaration:WKs,createTypeOfExpression:OKs,createLiteralConstValue:JKs,isSymbolAccessible:IO,isEntityNameVisible:xq,getConstantValue:m=>{let v=eu(m,Ayn);return v?sct(v):void 0},getEnumMemberValue:m=>{let v=eu(m,HF);return v?JK(v):void 0},collectLinkedAliases:Wse,markLinkedReferences:m=>{let v=eu(m);return v&&Jq(v,0)},getReferencedValueDeclaration:HKs,getReferencedValueDeclarations:YKs,getTypeReferenceSerializationKind:LKs,isOptionalParameter:O2e,isArgumentsLocalBinding:SKs,getExternalModuleFileFromDeclaration:m=>{let v=eu(m,Jge);return v&&h6t(v)},isLiteralConstDeclaration:QKs,isLateBound:m=>{let v=eu(m,em),D=v&&Uo(v);return!!(D&&aI(D)&4096)},getJsxFactoryEntity:f6t,getJsxFragmentFactoryEntity:I6t,isBindingCapturedByNode:(m,v)=>{let D=eu(m),W=eu(v);return!!D&&!!W&&(nc(W)||mg(W))&&nYs(D,W)},getDeclarationStatementsForSourceFile:(m,v,D,W)=>{let Y=eu(m);pe.assert(Y&&Y.kind===308,"Non-sourcefile node passed into getDeclarationsForSourceFile");let oe=Uo(m);return oe?(NE(oe),oe.exports?kt.symbolTableToDeclarationStatements(oe.exports,m,v,D,W):[]):m.locals?kt.symbolTableToDeclarationStatements(m.locals,m,v,D,W):[]},isImportRequiredByAugmentation:u,isDefinitelyReferenceToGlobalSymbolObject:pk,createLateBoundIndexSignatures:(m,v,D,W,Y)=>{let oe=m.symbol,Be=p0(fo(oe)),Me=mot(oe),He=Me&&_ot(Me,Do(Ck(oe).values())),$e;for(let xt of[Be,He])if(B(xt)){$e||($e=[]);for(let wr of xt){if(wr.declaration||wr===el)continue;if(wr.components&&ue(wr.components,ii=>{var Yi;return!!(ii.name&&Un(ii.name)&&Hd(ii.name.expression)&&v&&((Yi=xq(ii.name.expression,v,!1))==null?void 0:Yi.accessibility)===0)})){let ii=Le(wr.components,Yi=>!Pse(Yi));$e.push(...lt(ii,Yi=>{Vt(Yi.name.expression);let js=xt===Be?[me.createModifier(126)]:void 0;return me.createPropertyDeclaration(Ft(js,wr.isReadonly?me.createModifier(148):void 0),Yi.name,(ss(Yi)||pi(Yi)||Il(Yi)||gu(Yi)||wB(Yi)||Av(Yi))&&Yi.questionToken?me.createToken(58):void 0,kt.typeToTypeNode(fo(Yi.symbol),v,D,W,Y),void 0)}));continue}let dn=kt.indexInfoToIndexSignatureDeclaration(wr,v,D,W,Y);dn&&xt===Be&&(dn.modifiers||(dn.modifiers=me.createNodeArray())).unshift(me.createModifier(126)),dn&&$e.push(dn)}}return $e;function Vt(xt){if(!Y.trackSymbol)return;let wr=T0(xt),dn=An(wr,wr.escapedText,1160127,void 0,!0);dn&&Y.trackSymbol(dn,v,111551)}},symbolToDeclarations:(m,v,D,W,Y,oe)=>kt.symbolToDeclarations(m,v,D,W,Y,oe)};function u(m){let v=ms(m);if(!v.symbol)return!1;let D=h6t(m);if(!D||D===v)return!1;let W=MN(v.symbol);for(let Y of Do(W.values()))if(Y.mergeId){let oe=qA(Y);if(oe.declarations){for(let Be of oe.declarations)if(ms(Be)===D)return!0}}return!1}}function h6t(u){let m=u.kind===268?Gs(u.name,Lg):UY(u),v=RE(m,m,void 0);if(v)return yp(v,308)}function KKs(){for(let m of s.getSourceFiles())OPt(m,Te);lh=new Map;let u;for(let m of s.getSourceFiles())if(!m.redirectInfo){if(!Sl(m)){let v=m.locals.get("globalThis");if(v?.declarations)for(let D of v.declarations)PA.add(mo(D,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));ON(Gr,m.locals)}m.jsGlobalAugmentations&&ON(Gr,m.jsGlobalAugmentations),m.patternAmbientModules&&m.patternAmbientModules.length&&(Ob=Nn(Ob,m.patternAmbientModules)),m.moduleAugmentations.length&&(u||(u=[])).push(m.moduleAugmentations),m.symbol&&m.symbol.globalExports&&m.symbol.globalExports.forEach((D,W)=>{Gr.has(W)||Gr.set(W,D)})}if(u)for(let m of u)for(let v of m)NB(v.parent)&&VQ(v);if(E5(),fa(dt).type=xe,fa(ot).type=jI("IArguments",0,!0),fa(st).type=nn,fa(pr).type=Ph(16,pr),kA=jI("Array",1,!0),qn=jI("Object",0,!0),Js=jI("Function",0,!0),Yl=Ct&&jI("CallableFunction",0,!0)||Js,DA=Ct&&jI("NewableFunction",0,!0)||Js,ym=jI("String",0,!0),lf=jI("Number",0,!0),fI=jI("Boolean",0,!0),KI=jI("RegExp",0,!0),f_=f0(hr),HC=f0(Sn),HC===Jg&&(HC=Qf(void 0,Ee,E,E,E)),gA=qIn("ReadonlyArray",1)||kA,B1=gA?nfe(gA,[hr]):f_,b2=qIn("ThisType",1),u)for(let m of u)for(let v of m)NB(v.parent)||VQ(v);lh.forEach(({firstFile:m,secondFile:v,conflictingSymbols:D})=>{if(D.size<8)D.forEach(({isBlockScoped:W,firstFileLocations:Y,secondFileLocations:oe},Be)=>{let Me=W?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0;for(let He of Y)b5(He,Me,Be,oe);for(let He of oe)b5(He,Me,Be,Y)});else{let W=Do(D.keys()).join(", ");PA.add(ug(mo(m,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),mo(v,Z.Conflicts_are_in_this_file))),PA.add(ug(mo(v,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),mo(m,Z.Conflicts_are_in_this_file)))}}),lh=void 0}function iC(u,m){if(Te.importHelpers){let v=ms(u);if(m3(v,Te)&&!(u.flags&33554432)){let D=zKs(v,u);if(D!==st){let W=fa(D);if(W.requestedExternalEmitHelpers??(W.requestedExternalEmitHelpers=0),(W.requestedExternalEmitHelpers&m)!==m){let Y=m&~W.requestedExternalEmitHelpers;for(let oe=1;oe<=16777216;oe<<=1)if(Y&oe)for(let Be of jKs(oe)){let Me=Oh(h_(MN(D),pp(Be),111551));Me?oe&524288?zt(jQ(Me),He=>xE(He)>3)||Br(u,Z.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,YD,Be,4):oe&1048576?zt(jQ(Me),He=>xE(He)>4)||Br(u,Z.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,YD,Be,5):oe&1024&&(zt(jQ(Me),He=>xE(He)>2)||Br(u,Z.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,YD,Be,3)):Br(u,Z.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,YD,Be)}}W.requestedExternalEmitHelpers|=m}}}}function jKs(u){switch(u){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return Ke?["__decorate"]:["__esDecorate","__runInitializers"];case 16:return["__metadata"];case 32:return["__param"];case 64:return["__awaiter"];case 128:return["__generator"];case 256:return["__values"];case 512:return["__read"];case 1024:return["__spreadArray"];case 2048:return["__await"];case 4096:return["__asyncGenerator"];case 8192:return["__asyncDelegator"];case 16384:return["__asyncValues"];case 32768:return["__exportStar"];case 65536:return["__importStar"];case 131072:return["__importDefault"];case 262144:return["__makeTemplateObject"];case 524288:return["__classPrivateFieldGet"];case 1048576:return["__classPrivateFieldSet"];case 2097152:return["__classPrivateFieldIn"];case 4194304:return["__setFunctionName"];case 8388608:return["__propKey"];case 16777216:return["__addDisposableResource","__disposeResources"];case 33554432:return["__rewriteRelativeImportExtension"];default:return pe.fail("Unrecognized helper")}}function zKs(u,m){let v=sa(u);return v.externalHelpersModule||(v.externalHelpersModule=dK(Q8s(u),YD,Z.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,m)||st),v.externalHelpersModule}function uG(u){var m;let v=e8s(u)||qKs(u);if(v!==void 0)return v;if(Si(u)&&NF(u))return UC(u,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);let D=Eh(u)?u.declarationList.flags&7:0,W,Y,oe,Be,Me,He=0,$e=!1,Vt=!1;for(let xt of u.modifiers)if(So(xt)){if(eU(Ke,u,u.parent,u.parent.parent)){if(Ke&&(u.kind===178||u.kind===179)){let wr=p6t(u);if(h1(wr.firstAccessor)&&u===wr.secondAccessor)return UC(u,Z.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return u.kind===175&&!d1(u.body)?UC(u,Z.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):UC(u,Z.Decorators_are_not_valid_here);if(He&-34849)return os(xt,Z.Decorators_are_not_valid_here);if(Vt&&He&98303){pe.assertIsDefined(Me);let wr=ms(xt);return NO(wr)?!1:(ug(Br(xt,Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),mo(Me,Z.Decorator_used_before_export_here)),!0)}He|=32768,He&98303?He&32&&($e=!0):Vt=!0,Me??(Me=xt)}else{if(xt.kind!==148){if(u.kind===172||u.kind===174)return os(xt,Z._0_modifier_cannot_appear_on_a_type_member,Vi(xt.kind));if(u.kind===182&&(xt.kind!==126||!xa(u.parent)))return os(xt,Z._0_modifier_cannot_appear_on_an_index_signature,Vi(xt.kind))}if(xt.kind!==103&&xt.kind!==147&&xt.kind!==87&&u.kind===169)return os(xt,Z._0_modifier_cannot_appear_on_a_type_parameter,Vi(xt.kind));switch(xt.kind){case 87:{if(u.kind!==267&&u.kind!==169)return os(u,Z.A_class_member_cannot_have_the_0_keyword,Vi(87));let vn=PB(u.parent)&&XL(u.parent)||u.parent;if(u.kind===169&&!(Gd(vn)||xa(vn)||F_(vn)||ik(vn)||Tg(vn)||im(vn)||Il(vn)))return os(xt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,Vi(xt.kind));break}case 164:if(He&16)return os(xt,Z._0_modifier_already_seen,"override");if(He&128)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(He&8)return os(xt,Z._0_modifier_must_precede_1_modifier,"override","readonly");if(He&512)return os(xt,Z._0_modifier_must_precede_1_modifier,"override","accessor");if(He&1024)return os(xt,Z._0_modifier_must_precede_1_modifier,"override","async");He|=16,Be=xt;break;case 125:case 124:case 123:let wr=G5(eQ(xt.kind));if(He&7)return os(xt,Z.Accessibility_modifier_already_seen);if(He&16)return os(xt,Z._0_modifier_must_precede_1_modifier,wr,"override");if(He&256)return os(xt,Z._0_modifier_must_precede_1_modifier,wr,"static");if(He&512)return os(xt,Z._0_modifier_must_precede_1_modifier,wr,"accessor");if(He&8)return os(xt,Z._0_modifier_must_precede_1_modifier,wr,"readonly");if(He&1024)return os(xt,Z._0_modifier_must_precede_1_modifier,wr,"async");if(u.parent.kind===269||u.parent.kind===308)return os(xt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,wr);if(He&64)return xt.kind===123?os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,wr,"abstract"):os(xt,Z._0_modifier_must_precede_1_modifier,wr,"abstract");if(hC(u))return os(xt,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);He|=eQ(xt.kind);break;case 126:if(He&256)return os(xt,Z._0_modifier_already_seen,"static");if(He&8)return os(xt,Z._0_modifier_must_precede_1_modifier,"static","readonly");if(He&1024)return os(xt,Z._0_modifier_must_precede_1_modifier,"static","async");if(He&512)return os(xt,Z._0_modifier_must_precede_1_modifier,"static","accessor");if(u.parent.kind===269||u.parent.kind===308)return os(xt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(u.kind===170)return os(xt,Z._0_modifier_cannot_appear_on_a_parameter,"static");if(He&64)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&16)return os(xt,Z._0_modifier_must_precede_1_modifier,"static","override");He|=256,W=xt;break;case 129:if(He&512)return os(xt,Z._0_modifier_already_seen,"accessor");if(He&8)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(He&128)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(u.kind!==173)return os(xt,Z.accessor_modifier_can_only_appear_on_a_property_declaration);He|=512;break;case 148:if(He&8)return os(xt,Z._0_modifier_already_seen,"readonly");if(u.kind!==173&&u.kind!==172&&u.kind!==182&&u.kind!==170)return os(xt,Z.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(He&512)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");He|=8;break;case 95:if(Te.verbatimModuleSyntax&&!(u.flags&33554432)&&u.kind!==266&&u.kind!==265&&u.kind!==268&&u.parent.kind===308&&s.getEmitModuleFormatOfFile(ms(u))===1)return os(xt,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(He&32)return os(xt,Z._0_modifier_already_seen,"export");if(He&128)return os(xt,Z._0_modifier_must_precede_1_modifier,"export","declare");if(He&64)return os(xt,Z._0_modifier_must_precede_1_modifier,"export","abstract");if(He&1024)return os(xt,Z._0_modifier_must_precede_1_modifier,"export","async");if(xa(u.parent))return os(xt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(u.kind===170)return os(xt,Z._0_modifier_cannot_appear_on_a_parameter,"export");if(D===4)return os(xt,Z._0_modifier_cannot_appear_on_a_using_declaration,"export");if(D===6)return os(xt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"export");He|=32;break;case 90:let dn=u.parent.kind===308?u.parent:u.parent.parent;if(dn.kind===268&&!a_(dn))return os(xt,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(D===4)return os(xt,Z._0_modifier_cannot_appear_on_a_using_declaration,"default");if(D===6)return os(xt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(He&32){if($e)return os(Me,Z.Decorators_are_not_valid_here)}else return os(xt,Z._0_modifier_must_precede_1_modifier,"export","default");He|=2048;break;case 138:if(He&128)return os(xt,Z._0_modifier_already_seen,"declare");if(He&1024)return os(xt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(He&16)return os(xt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(xa(u.parent)&&!pi(u))return os(xt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(u.kind===170)return os(xt,Z._0_modifier_cannot_appear_on_a_parameter,"declare");if(D===4)return os(xt,Z._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(D===6)return os(xt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(u.parent.flags&33554432&&u.parent.kind===269)return os(xt,Z.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(hC(u))return os(xt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(He&512)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");He|=128,Y=xt;break;case 128:if(He&64)return os(xt,Z._0_modifier_already_seen,"abstract");if(u.kind!==264&&u.kind!==186){if(u.kind!==175&&u.kind!==173&&u.kind!==178&&u.kind!==179)return os(xt,Z.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(u.parent.kind===264&&Ga(u.parent,64))){let vn=u.kind===173?Z.Abstract_properties_can_only_appear_within_an_abstract_class:Z.Abstract_methods_can_only_appear_within_an_abstract_class;return os(xt,vn)}if(He&256)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&2)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(He&1024&&oe)return os(oe,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(He&16)return os(xt,Z._0_modifier_must_precede_1_modifier,"abstract","override");if(He&512)return os(xt,Z._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(sh(u)&&u.name.kind===81)return os(xt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");He|=64;break;case 134:if(He&1024)return os(xt,Z._0_modifier_already_seen,"async");if(He&128||u.parent.flags&33554432)return os(xt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(u.kind===170)return os(xt,Z._0_modifier_cannot_appear_on_a_parameter,"async");if(He&64)return os(xt,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");He|=1024,oe=xt;break;case 103:case 147:{let vn=xt.kind===103?8192:16384,ii=xt.kind===103?"in":"out",Yi=PB(u.parent)&&(XL(u.parent)||de((m=cU(u.parent))==null?void 0:m.tags,FU))||u.parent;if(u.kind!==169||Yi&&!(d_(Yi)||xa(Yi)||OB(Yi)||FU(Yi)))return os(xt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,ii);if(He&vn)return os(xt,Z._0_modifier_already_seen,ii);if(vn&8192&&He&16384)return os(xt,Z._0_modifier_must_precede_1_modifier,"in","out");He|=vn;break}}}return u.kind===177?He&256?os(W,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):He&16?os(Be,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):He&1024?os(oe,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(u.kind===273||u.kind===272)&&He&128?os(Y,Z.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):u.kind===170&&He&31&&Nu(u.name)?os(u,Z.A_parameter_property_may_not_be_declared_using_a_binding_pattern):u.kind===170&&He&31&&u.dotDotDotToken?os(u,Z.A_parameter_property_cannot_be_declared_using_a_rest_parameter):He&1024?r8s(u,oe):!1}function qKs(u){if(!u.modifiers)return!1;let m=$Ks(u);return m&&UC(m,Z.Modifiers_cannot_appear_here)}function oct(u,m){let v=de(u.modifiers,hg);return v&&v.kind!==m?v:void 0}function $Ks(u){switch(u.kind){case 178:case 179:case 177:case 173:case 172:case 175:case 174:case 182:case 268:case 273:case 272:case 279:case 278:case 219:case 220:case 170:case 169:return;case 176:case 304:case 305:case 271:case 283:return de(u.modifiers,hg);default:if(u.parent.kind===269||u.parent.kind===308)return;switch(u.kind){case 263:return oct(u,134);case 264:case 186:return oct(u,128);case 232:case 265:case 266:return de(u.modifiers,hg);case 244:return u.declarationList.flags&4?oct(u,135):de(u.modifiers,hg);case 267:return oct(u,87);default:pe.assertNever(u)}}}function e8s(u){let m=t8s(u);return m&&UC(m,Z.Decorators_are_not_valid_here)}function t8s(u){return eet(u)?de(u.modifiers,So):void 0}function r8s(u,m){switch(u.kind){case 175:case 263:case 219:case 220:return!1}return os(m,Z._0_modifier_cannot_be_used_here,"async")}function e$(u,m=Z.Trailing_comma_not_allowed){return u&&u.hasTrailingComma?K5(u[0],u.end-1,1,m):!1}function pyn(u,m){if(u&&u.length===0){let v=u.pos-1,D=Yu(m.text,u.end)+1;return K5(m,v,D-v,Z.Type_parameter_list_cannot_be_empty)}return!1}function n8s(u){let m=!1,v=u.length;for(let D=0;D!!m.initializer||Nu(m.name)||TB(m))}function s8s(u){if(Ze>=3){let m=u.body&&eg(u.body)&&j$e(u.body.statements);if(m){let v=i8s(u.parameters);if(B(v)){F(v,W=>{ug(Br(W,Z.This_parameter_is_not_allowed_with_use_strict_directive),mo(m,Z.use_strict_directive_used_here))});let D=v.map((W,Y)=>Y===0?mo(W,Z.Non_simple_parameter_declared_here):mo(W,Z.and_here));return ug(Br(m,Z.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...D),!0}}}return!1}function act(u){let m=ms(u);return uG(u)||pyn(u.typeParameters,m)||n8s(u.parameters)||a8s(u,m)||Gd(u)&&s8s(u)}function o8s(u){let m=ms(u);return A8s(u)||pyn(u.typeParameters,m)}function a8s(u,m){if(!uA(u))return!1;u.typeParameters&&!(B(u.typeParameters)>1||u.typeParameters.hasTrailingComma||u.typeParameters[0].constraint)&&m&&Iu(m.fileName,[".mts",".cts"])&&os(u.typeParameters[0],Z.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);let{equalsGreaterThanToken:v}=u,D=Ra(m,v.pos).line,W=Ra(m,v.end).line;return D!==W&&os(v,Z.Line_terminator_not_permitted_before_arrow)}function c8s(u){let m=u.parameters[0];if(u.parameters.length!==1)return os(m?m.name:u,Z.An_index_signature_must_have_exactly_one_parameter);if(e$(u.parameters,Z.An_index_signature_cannot_have_a_trailing_comma),m.dotDotDotToken)return os(m.dotDotDotToken,Z.An_index_signature_cannot_have_a_rest_parameter);if(hbe(m))return os(m.name,Z.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(m.questionToken)return os(m.questionToken,Z.An_index_signature_parameter_cannot_have_a_question_mark);if(m.initializer)return os(m.name,Z.An_index_signature_parameter_cannot_have_an_initializer);if(!m.type)return os(m.name,Z.An_index_signature_parameter_must_have_a_type_annotation);let v=tl(m.type);return Zv(v,D=>!!(D.flags&8576))||P5(v)?os(m.name,Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):kE(v,yot)?u.type?!1:os(u,Z.An_index_signature_must_have_a_type_annotation):os(m.name,Z.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function l8s(u){return uG(u)||c8s(u)}function u8s(u,m){if(m&&m.length===0){let v=ms(u),D=m.pos-1,W=Yu(v.text,m.end)+1;return K5(v,D,W-D,Z.Type_argument_list_cannot_be_empty)}return!1}function t3e(u,m){return e$(m)||u8s(u,m)}function g8s(u){return u.questionDotToken||u.flags&64?os(u.template,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function fyn(u){let m=u.types;if(e$(m))return!0;if(m&&m.length===0){let v=Vi(u.token);return K5(u,m.pos,0,Z._0_list_cannot_be_empty,v)}return zt(m,Iyn)}function Iyn(u){return g_(u)&&an(u.expression)&&u.typeArguments?os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):t3e(u,u.typeArguments)}function A8s(u){let m=!1,v=!1;if(!uG(u)&&u.heritageClauses)for(let D of u.heritageClauses){if(D.token===96){if(m)return UC(D,Z.extends_clause_already_seen);if(v)return UC(D,Z.extends_clause_must_precede_implements_clause);if(D.types.length>1)return UC(D.types[1],Z.Classes_can_only_extend_a_single_class);m=!0}else{if(pe.assert(D.token===119),v)return UC(D,Z.implements_clause_already_seen);v=!0}fyn(D)}}function d8s(u){let m=!1;if(u.heritageClauses)for(let v of u.heritageClauses){if(v.token===96){if(m)return UC(v,Z.extends_clause_already_seen);m=!0}else return pe.assert(v.token===119),UC(v,Z.Interface_declaration_cannot_have_implements_clause);fyn(v)}return!1}function cct(u){if(u.kind!==168)return!1;let m=u;return m.expression.kind===227&&m.expression.operatorToken.kind===28?os(m.expression,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function m6t(u){if(u.asteriskToken){if(pe.assert(u.kind===263||u.kind===219||u.kind===175),u.flags&33554432)return os(u.asteriskToken,Z.Generators_are_not_allowed_in_an_ambient_context);if(!u.body)return os(u.asteriskToken,Z.An_overload_signature_cannot_be_declared_as_a_generator)}}function C6t(u,m){return!!u&&os(u,m)}function hyn(u,m){return!!u&&os(u,m)}function p8s(u,m){let v=new Map;for(let D of u.properties){if(D.kind===306){if(m){let oe=JA(D.expression);if(YI(oe)||ag(oe))return os(D.expression,Z.A_rest_element_cannot_contain_a_binding_pattern)}continue}let W=D.name;if(W.kind===168&&cct(W),D.kind===305&&!m&&D.objectAssignmentInitializer&&os(D.equalsToken,Z.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),W.kind===81&&os(W,Z.Private_identifiers_are_not_allowed_outside_class_bodies),MB(D)&&D.modifiers)for(let oe of D.modifiers)hg(oe)&&(oe.kind!==134||D.kind!==175)&&os(oe,Z._0_modifier_cannot_be_used_here,Fp(oe));else if(NOt(D)&&D.modifiers)for(let oe of D.modifiers)hg(oe)&&os(oe,Z._0_modifier_cannot_be_used_here,Fp(oe));let Y;switch(D.kind){case 305:case 304:hyn(D.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context),C6t(D.questionToken,Z.An_object_member_cannot_be_declared_optional),W.kind===9&&vyn(W),W.kind===10&&Ux(!0,mo(W,Z.A_bigint_literal_cannot_be_used_as_a_property_name)),Y=4;break;case 175:Y=8;break;case 178:Y=1;break;case 179:Y=2;break;default:pe.assertNever(D,"Unexpected syntax kind:"+D.kind)}if(!m){let oe=b6t(W);if(oe===void 0)continue;let Be=v.get(oe);if(!Be)v.set(oe,Y);else if(Y&8&&Be&8)os(W,Z.Duplicate_identifier_0,Fp(W));else if(Y&4&&Be&4)os(W,Z.An_object_literal_cannot_have_multiple_properties_with_the_same_name,Fp(W));else if(Y&3&&Be&3)if(Be!==3&&Y!==Be)v.set(oe,Y|Be);else return os(W,Z.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return os(W,Z.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function f8s(u){I8s(u.tagName),t3e(u,u.typeArguments);let m=new Map;for(let v of u.attributes.properties){if(v.kind===294)continue;let{name:D,initializer:W}=v,Y=bz(D);if(!m.get(Y))m.set(Y,!0);else return os(D,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(W&&W.kind===295&&!W.expression)return os(W,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function I8s(u){if(jo(u)&&sR(u.expression))return os(u.expression,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(sR(u)&&XAe(Te)&&!dU(u.namespace.escapedText))return os(u,Z.React_components_cannot_include_JSX_namespace_names)}function h8s(u){if(u.expression&&Rde(u.expression))return os(u.expression,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function myn(u){if(yZ(u))return!0;if(u.kind===251&&u.awaitModifier&&!(u.flags&65536)){let m=ms(u);if(sAe(u)){if(!NO(m))switch(m3(m,Te)||PA.add(mo(u.awaitModifier,Z.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)),Pe){case 100:case 101:case 102:case 199:if(m.impliedNodeFormat===1){PA.add(mo(u.awaitModifier,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:PA.add(mo(u.awaitModifier,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher));break}}else if(!NO(m)){let v=mo(u.awaitModifier,Z.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=f1(u);if(D&&D.kind!==177){pe.assert((BI(D)&2)===0,"Enclosing function should never be an async function.");let W=mo(D,Z.Did_you_mean_to_mark_this_function_as_async);ug(v,W)}return PA.add(v),!0}}if(BEe(u)&&!(u.flags&65536)&&Ir(u.initializer)&&u.initializer.escapedText==="async")return os(u.initializer,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(u.initializer.kind===262){let m=u.initializer;if(!y6t(m)){let v=m.declarations;if(!v.length)return!1;if(v.length>1){let W=u.kind===250?Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return UC(m.declarations[1],W)}let D=v[0];if(D.initializer){let W=u.kind===250?Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return os(D.name,W)}if(D.type){let W=u.kind===250?Z.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Z.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return os(D,W)}}}return!1}function m8s(u){if(!(u.flags&33554432)&&u.parent.kind!==188&&u.parent.kind!==265){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.body===void 0&&!Ga(u,64))return K5(u,u.end-1,1,Z._0_expected,"{")}if(u.body){if(Ga(u,64))return os(u,Z.An_abstract_accessor_cannot_have_an_implementation);if(u.parent.kind===188||u.parent.kind===265)return os(u.body,Z.An_implementation_cannot_be_declared_in_ambient_contexts)}if(u.typeParameters)return os(u.name,Z.An_accessor_cannot_have_type_parameters);if(!C8s(u))return os(u.name,u.kind===178?Z.A_get_accessor_cannot_have_parameters:Z.A_set_accessor_must_have_exactly_one_parameter);if(u.kind===179){if(u.type)return os(u.name,Z.A_set_accessor_cannot_have_a_return_type_annotation);let m=pe.checkDefined(z7(u),"Return value does not match parameter count assertion.");if(m.dotDotDotToken)return os(m.dotDotDotToken,Z.A_set_accessor_cannot_have_rest_parameter);if(m.questionToken)return os(m.questionToken,Z.A_set_accessor_cannot_have_an_optional_parameter);if(m.initializer)return os(u.name,Z.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function C8s(u){return _6t(u)||u.parameters.length===(u.kind===178?0:1)}function _6t(u){if(u.parameters.length===(u.kind===178?1:2))return xW(u)}function _8s(u){if(u.operator===158){if(u.type.kind!==155)return os(u.type,Z._0_expected,Vi(155));let m=Tne(u.parent);if(wo(m)&&J3(m)){let v=NW(m);v&&(m=v3(v)||v)}switch(m.kind){case 261:let v=m;if(v.name.kind!==80)return os(u,Z.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!D7(v))return os(u,Z.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(v.parent.flags&2))return os(m.name,Z.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 173:if(!lg(m)||!R3(m))return os(m.name,Z.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 172:if(!Ga(m,8))return os(m.name,Z.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return os(u,Z.unique_symbol_types_are_not_allowed_here)}}else if(u.operator===148&&u.type.kind!==189&&u.type.kind!==190)return UC(u,Z.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,Vi(155))}function yfe(u,m){if(eIn(u)&&!Hd(Qg(u)?JA(u.argumentExpression):u.expression))return os(u,m)}function Cyn(u){if(act(u))return!0;if(u.kind===175){if(u.parent.kind===211){if(u.modifiers&&!(u.modifiers.length===1&&ma(u.modifiers).kind===134))return UC(u,Z.Modifiers_cannot_appear_here);if(C6t(u.questionToken,Z.An_object_member_cannot_be_declared_optional))return!0;if(hyn(u.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(u.body===void 0)return K5(u,u.end-1,1,Z._0_expected,"{")}if(m6t(u))return!0}if(xa(u.parent)){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.flags&33554432)return yfe(u.name,Z.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.kind===175&&!u.body)return yfe(u.name,Z.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(u.parent.kind===265)return yfe(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.parent.kind===188)return yfe(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function y8s(u){let m=u;for(;m;){if(A3(m))return os(u,Z.Jump_target_cannot_cross_function_boundary);switch(m.kind){case 257:if(u.label&&m.label.escapedText===u.label.escapedText)return u.kind===252&&!HT(m.statement,!0)?os(u,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 256:if(u.kind===253&&!u.label)return!1;break;default:if(HT(m,!1)&&!u.label)return!1;break}m=m.parent}if(u.label){let v=u.kind===253?Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return os(u,v)}else{let v=u.kind===253?Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return os(u,v)}}function b8s(u){if(u.dotDotDotToken){let m=u.parent.elements;if(u!==Ei(m))return os(u,Z.A_rest_element_must_be_last_in_a_destructuring_pattern);if(e$(m,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),u.propertyName)return os(u.name,Z.A_rest_element_cannot_have_a_property_name)}if(u.dotDotDotToken&&u.initializer)return K5(u,u.initializer.pos-1,1,Z.A_rest_element_cannot_have_an_initializer)}function _yn(u){return I1(u)||u.kind===225&&u.operator===41&&u.operand.kind===9}function E8s(u){return u.kind===10||u.kind===225&&u.operator===41&&u.operand.kind===10}function S8s(u){if((jo(u)||Qg(u)&&_yn(u.argumentExpression))&&Hd(u.expression))return!!(DI(u).flags&1056)}function yyn(u){let m=u.initializer;if(m){let v=!(_yn(m)||S8s(m)||m.kind===112||m.kind===97||E8s(m));if((Cf(u)||nc(u)&&NSe(u))&&!u.type){if(v)return os(m,Z.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return os(m,Z.Initializers_are_not_allowed_in_ambient_contexts)}}function v8s(u){let m=aX(u),v=m&7;if(Nu(u.name))switch(v){case 6:return os(u,Z._0_declarations_may_not_have_binding_patterns,"await using");case 4:return os(u,Z._0_declarations_may_not_have_binding_patterns,"using")}if(u.parent.parent.kind!==250&&u.parent.parent.kind!==251){if(m&33554432)yyn(u);else if(!u.initializer){if(Nu(u.name)&&!Nu(u.parent))return os(u,Z.A_destructuring_declaration_must_have_an_initializer);switch(v){case 6:return os(u,Z._0_declarations_must_be_initialized,"await using");case 4:return os(u,Z._0_declarations_must_be_initialized,"using");case 2:return os(u,Z._0_declarations_must_be_initialized,"const")}}}if(u.exclamationToken&&(u.parent.parent.kind!==244||!u.type||u.initializer||m&33554432)){let D=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,D)}return s.getEmitModuleFormatOfFile(ms(u))<4&&!(u.parent.parent.flags&33554432)&&Ga(u.parent.parent,32)&&byn(u.name),!!v&&Eyn(u.name)}function byn(u){if(u.kind===80){if(Vo(u)==="__esModule")return T8s("noEmit",u,Z.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{let m=u.elements;for(let v of m)if(!Ep(v))return byn(v.name)}return!1}function Eyn(u){if(u.kind===80){if(u.escapedText==="let")return os(u,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{let m=u.elements;for(let v of m)Ep(v)||Eyn(v.name)}return!1}function y6t(u){let m=u.declarations;if(e$(u.declarations))return!0;if(!u.declarations.length)return K5(u,m.pos,m.end-m.pos,Z.Variable_declaration_list_cannot_be_empty);let v=u.flags&7;if(v===4||v===6){if(m9e(u.parent))return os(u,v===4?Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Z.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration);if(u.flags&33554432)return os(u,v===4?Z.using_declarations_are_not_allowed_in_ambient_contexts:Z.await_using_declarations_are_not_allowed_in_ambient_contexts);if(v===6)return O_n(u)}return!1}function lct(u){switch(u.kind){case 246:case 247:case 248:case 255:case 249:case 250:case 251:return!1;case 257:return lct(u.parent)}return!0}function B8s(u){if(!lct(u.parent)){let m=aX(u.declarationList)&7;if(m){let v=m===1?"let":m===2?"const":m===4?"using":m===6?"await using":pe.fail("Unknown BlockScope flag");Br(u,Z._0_declarations_can_only_be_declared_inside_a_block,v)}}}function w8s(u){let m=u.name.escapedText;switch(u.keywordToken){case 105:if(m!=="target")return os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"target");break;case 102:if(m!=="meta"){let v=Ll(u.parent)&&u.parent.expression===u;if(m==="defer"){if(!v)return K5(u,u.end,0,Z._0_expected,"(")}else return v?os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer,Bc(u.name.escapedText)):os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"meta")}break}}function NO(u){return u.parseDiagnostics.length>0}function UC(u,m,...v){let D=ms(u);if(!NO(D)){let W=rs(D,u.pos);return PA.add(rm(D,W.start,W.length,m,...v)),!0}return!1}function K5(u,m,v,D,...W){let Y=ms(u);return NO(Y)?!1:(PA.add(rm(Y,m,v,D,...W)),!0)}function T8s(u,m,v,...D){let W=ms(m);return NO(W)?!1:(f9(u,m,v,...D),!0)}function os(u,m,...v){let D=ms(u);return NO(D)?!1:(Br(u,m,...v),!0)}function R8s(u){let m=wo(u)?wAe(u):void 0,v=u.typeParameters||m&&Nc(m);if(v){let D=v.pos===v.end?v.pos:Yu(ms(u).text,v.pos);return K5(u,D,v.end-D,Z.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function N8s(u){let m=u.type||Fb(u);if(m)return os(m,Z.Type_annotation_cannot_appear_on_a_constructor_declaration)}function D8s(u){if(Un(u.name)&&po(u.name.expression)&&u.name.expression.operatorToken.kind===103)return os(u.parent.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods);if(xa(u.parent)){if(Lg(u.name)&&u.name.text==="constructor")return os(u.name,Z.Classes_may_not_have_a_field_named_constructor);if(yfe(u.name,Z.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Ze<2&&n0(u)&&!(u.flags&33554432))return os(u.name,Z.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(n0(u)&&C6t(u.questionToken,Z.An_accessor_property_cannot_be_declared_optional))return!0}else if(u.parent.kind===265){if(yfe(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.An_interface_property_cannot_have_an_initializer)}else if(bh(u.parent)){if(yfe(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.A_type_literal_property_cannot_have_an_initializer)}if(u.flags&33554432&&yyn(u),pi(u)&&u.exclamationToken&&(!xa(u.parent)||!u.type||u.initializer||u.flags&33554432||lg(u)||FW(u))){let m=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,m)}}function k8s(u){return u.kind===265||u.kind===266||u.kind===273||u.kind===272||u.kind===279||u.kind===278||u.kind===271||Ga(u,2208)?!1:UC(u,Z.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function x8s(u){for(let m of u.statements)if((em(m)||m.kind===244)&&k8s(m))return!0;return!1}function Syn(u){return!!(u.flags&33554432)&&x8s(u)}function yZ(u){if(u.flags&33554432){if(!sa(u).hasReportedStatementInAmbientContext&&(Eu(u.parent)||BB(u.parent)))return sa(u).hasReportedStatementInAmbientContext=UC(u,Z.An_implementation_cannot_be_declared_in_ambient_contexts);if(u.parent.kind===242||u.parent.kind===269||u.parent.kind===308){let v=sa(u.parent);if(!v.hasReportedStatementInAmbientContext)return v.hasReportedStatementInAmbientContext=UC(u,Z.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function vyn(u){let m=Fp(u).includes("."),v=u.numericLiteralFlags&16;m||v||+u.text<=2**53-1||Ux(!1,mo(u,Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function G8s(u){return!!(!(BE(u.parent)||N0(u.parent)&&BE(u.parent.parent))&&!(u.flags&33554432)&&Ze<7&&os(u,Z.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function F8s(u,m,...v){let D=ms(u);if(!NO(D)){let W=rs(D,u.pos);return PA.add(rm(D,Rs(W),0,m,...v)),!0}return!1}function Z8s(){return y2||(y2=[],Gr.forEach((u,m)=>{XPt.test(m)&&y2.push(u)})),y2}function L8s(u){var m,v;if(u.phaseModifier===156){if(u.name&&u.namedBindings)return os(u,Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);if(((m=u.namedBindings)==null?void 0:m.kind)===276)return Byn(u.namedBindings)}else if(u.phaseModifier===166){if(u.name)return os(u,Z.Default_imports_are_not_allowed_in_a_deferred_import);if(((v=u.namedBindings)==null?void 0:v.kind)===276)return os(u,Z.Named_imports_are_not_allowed_in_a_deferred_import);if(Pe!==99&&Pe!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}return!1}function Byn(u){return!!F(u.elements,m=>{if(m.isTypeOnly)return UC(m,m.kind===277?Z.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Z.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function V8s(u){if(Te.verbatimModuleSyntax&&Pe===1)return os(u,sK(u));if(u.expression.kind===237){if(Pe!==99&&Pe!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}else if(Pe===5)return os(u,Z.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext);if(u.typeArguments)return os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);let m=u.arguments;if(!(100<=Pe&&Pe<=199)&&Pe!==99&&Pe!==200&&(e$(m),m.length>1)){let D=m[1];return os(D,Z.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve)}if(m.length===0||m.length>2)return os(u,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);let v=de(m,cf);return v?os(v,Z.Argument_of_dynamic_import_cannot_be_spread_element):!1}function W8s(u,m){let v=la(u);if(v&20&&m.flags&1048576)return de(m.types,D=>{if(D.flags&524288){let W=v&la(D);if(W&4)return u.target===D.target;if(W&16)return!!u.aliasSymbol&&u.aliasSymbol===D.aliasSymbol}return!1})}function O8s(u,m){if(la(u)&128&&Zv(m,G9))return de(m.types,v=>!G9(v))}function P8s(u,m){let v=0;if(rg(u,v).length>0||(v=1,rg(u,v).length>0))return de(m.types,W=>rg(W,v).length>0)}function M8s(u,m){let v;if(!(u.flags&406978556)){let D=0;for(let W of m.types)if(!(W.flags&406978556)){let Y=jg([XN(u),XN(W)]);if(Y.flags&4194304)return W;if(yR(Y)||Y.flags&1048576){let oe=Y.flags&1048576?ze(Y.types,yR):1;oe>=D&&(v=W,D=oe)}}}return v}function H8s(u){if(uh(u,67108864)){let m=am(u,v=>!(v.flags&402784252));if(!(m.flags&131072))return m}return u}function wyn(u,m,v){if(m.flags&1048576&&u.flags&2621440){let D=Tmn(m,u);if(D)return D;let W=Zd(u);if(W){let Y=wmn(W,m);if(Y){let oe=iKt(m,lt(Y,Be=>[()=>fo(Be),Be.escapedName]),v);if(oe!==m)return oe}}}}function b6t(u){let m=w3(u);return m||(Un(u)?NKt(P_(u.expression)):void 0)}function uct(u){return Zi===u||(Zi=u,Ns=Hc(u)),Ns}function aX(u){return Cn===u||(Cn=u,jn=hm(u)),jn}function NSe(u){let m=aX(u)&7;return m===2||m===4||m===6}function Y8s(u,m){let v=Te.importHelpers?1:0,D=u?.imports[v];return D&&pe.assert(ap(D)&&D.text===m,`Expected sourceFile.imports[${v}] to be the synthesized JSX runtime import`),D}function Q8s(u){pe.assert(Te.importHelpers,"Expected importHelpers to be enabled");let m=u.imports[0];return pe.assert(m&&ap(m)&&m.text==="tslib","Expected sourceFile.imports[0] to be the synthesized tslib import"),m}}function wvs(s){return!BB(s)}function Ytn(s){return s.kind!==263&&s.kind!==175||!!s.body}function Qtn(s){switch(s.parent.kind){case 277:case 282:return Ir(s)||s.kind===11;default:return UT(s)}}var dS;(s=>{s.JSX="JSX",s.IntrinsicElements="IntrinsicElements",s.ElementClass="ElementClass",s.ElementAttributesPropertyNameContainer="ElementAttributesProperty",s.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",s.Element="Element",s.ElementType="ElementType",s.IntrinsicAttributes="IntrinsicAttributes",s.IntrinsicClassAttributes="IntrinsicClassAttributes",s.LibraryManagedAttributes="LibraryManagedAttributes"})(dS||(dS={}));var zet;(s=>{s.Fragment="Fragment"})(zet||(zet={}));function Xtn(s){switch(s){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function x0(s){return!!(s.flags&1)}function Jtn(s){return!!(s.flags&2)}function Tvs(s){return{getCommonSourceDirectory:s.getCommonSourceDirectory?()=>s.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>s.getCurrentDirectory(),getSymlinkCache:$i(s,s.getSymlinkCache),getPackageJsonInfoCache:()=>{var c;return(c=s.getPackageJsonInfoCache)==null?void 0:c.call(s)},useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames(),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:c=>s.getRedirectFromSourceFile(c),isSourceOfProjectReferenceRedirect:c=>s.isSourceOfProjectReferenceRedirect(c),fileExists:c=>s.fileExists(c),getFileIncludeReasons:()=>s.getFileIncludeReasons(),readFile:s.readFile?c=>s.readFile(c):void 0,getDefaultResolutionModeForFile:c=>s.getDefaultResolutionModeForFile(c),getModeForResolutionAtIndex:(c,g)=>s.getModeForResolutionAtIndex(c,g),getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)}}var KPt=class vki{constructor(c,g,d){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var h;g instanceof vki;)g=g.inner;this.inner=g,this.moduleResolverHost=d,this.context=c,this.canTrackSymbol=!!((h=this.inner)!=null&&h.trackSymbol)}trackSymbol(c,g,d){var h,_;if((h=this.inner)!=null&&h.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(c,g,d))return this.onDiagnosticReported(),!0;c.flags&262144||((_=this.context).trackedSymbols??(_.trackedSymbols=[])).push([c,g,d])}return!1}reportInaccessibleThisError(){var c;(c=this.inner)!=null&&c.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(c){var g;(g=this.inner)!=null&&g.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(c))}reportInaccessibleUniqueSymbolError(){var c;(c=this.inner)!=null&&c.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var c;(c=this.inner)!=null&&c.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(c){var g;(g=this.inner)!=null&&g.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(c))}reportTruncationError(){var c;(c=this.inner)!=null&&c.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(c,g,d){var h;(h=this.inner)!=null&&h.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(c,g,d))}reportNonSerializableProperty(c){var g;(g=this.inner)!=null&&g.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(c))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(c){var g;(g=this.inner)!=null&&g.reportInferenceFallback&&!this.context.suppressReportInferenceFallback&&(this.onDiagnosticReported(),this.inner.reportInferenceFallback(c))}pushErrorFallbackNode(c){var g,d;return(d=(g=this.inner)==null?void 0:g.pushErrorFallbackNode)==null?void 0:d.call(g,c)}popErrorFallbackNode(){var c,g;return(g=(c=this.inner)==null?void 0:c.popErrorFallbackNode)==null?void 0:g.call(c)}};function Mr(s,c,g,d){if(s===void 0)return s;let h=c(s),_;if(h!==void 0)return Ki(h)?_=(d||Gvs)(h):_=h,pe.assertNode(_,g),_}function Os(s,c,g,d,h){if(s===void 0)return s;let _=s.length;(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d);let S,R=-1,T=-1;d>0||h<_?S=s.hasTrailingComma&&d+h===_:(R=s.pos,T=s.end,S=s.hasTrailingComma);let O=Utn(s,c,g,d,h);if(O!==s){let V=me.createNodeArray(O,S);return xB(V,R,T),V}return s}function Ode(s,c,g,d,h){if(s===void 0)return s;let _=s.length;return(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d),Utn(s,c,g,d,h)}function Utn(s,c,g,d,h){let _,S=s.length;(d>0||h=2&&(h=Rvs(h,g)),g.setLexicalEnvironmentFlags(1,!1)),g.suspendLexicalEnvironment(),h}function Rvs(s,c){let g;for(let d=0;d{let S=dR,addSource:Rt,setSourceContent:Lt,addName:je,addMapping:Gt,appendSourceMap:it,toJSON:dt,toString:()=>JSON.stringify(dt())};function Rt(ot){_();let ir=Hf(d,ot,s.getCurrentDirectory(),s.getCanonicalFileName,!0),qt=O.get(ir);return qt===void 0&&(qt=T.length,T.push(ir),R.push(ot),O.set(ir,qt)),S(),qt}function Lt(ot,ir){if(_(),ir!==null){for(V||(V=[]);V.lengthir||Tt===ir&&at>qt)}function Gt(ot,ir,qt,Yt,Tr,Cn){pe.assert(ot>=Ke,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),pe.assert(qt===void 0||qt>=0,"sourceIndex cannot be negative"),pe.assert(Yt===void 0||Yt>=0,"sourceLine cannot be negative"),pe.assert(Tr===void 0||Tr>=0,"sourceCharacter cannot be negative"),_(),(Wt(ot,ir)||_r(qt,Yt,Tr))&&(ur(),Ke=ot,et=ir,mt=!1,yt=!1,Ct=!0),qt!==void 0&&Yt!==void 0&&Tr!==void 0&&(Ye=qt,Tt=Yt,at=Tr,mt=!0,Cn!==void 0&&(Qe=Cn,yt=!0)),S()}function it(ot,ir,qt,Yt,Tr,Cn){pe.assert(ot>=Ke,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),_();let jn=[],Zi,Ns=rtt(qt.mappings);for(let An of Ns){if(Cn&&(An.generatedLine>Cn.line||An.generatedLine===Cn.line&&An.generatedCharacter>Cn.character))break;if(Tr&&(An.generatedLine=1024&&Gr()}function ur(){if(!(!Ct||!kt())){if(_(),Ie0&&(ge+=String.fromCharCode.apply(void 0,re),re.length=0)}function dt(){return ur(),Gr(),{version:3,file:c,sourceRoot:g,sources:T,names:M,mappings:ge,sourcesContent:V}}function pr(ot){ot<0?ot=(-ot<<1)+1:ot=ot<<1;do{let ir=ot&31;ot=ot>>5,ot>0&&(ir=ir|32),tr(Lvs(ir))}while(ot>0)}}var zPt=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,$et=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,ett=/^\s*(\/\/[@#] .*)?$/;function ttt(s,c){return{getLineCount:()=>c.length,getLineText:g=>s.substring(c[g],c[g+1])}}function qPt(s){for(let c=s.getLineCount()-1;c>=0;c--){let g=s.getLineText(c),d=$et.exec(g);if(d)return d[1].trimEnd();if(!g.match(ett))break}}function Fvs(s){return typeof s=="string"||s===null}function Zvs(s){return s!==null&&typeof s=="object"&&s.version===3&&typeof s.file=="string"&&typeof s.mappings=="string"&&Ki(s.sources)&&ue(s.sources,Xs)&&(s.sourceRoot===void 0||s.sourceRoot===null||typeof s.sourceRoot=="string")&&(s.sourcesContent===void 0||s.sourcesContent===null||Ki(s.sourcesContent)&&ue(s.sourcesContent,Fvs))&&(s.names===void 0||s.names===null||Ki(s.names)&&ue(s.names,Xs))}function $Pt(s){try{let c=JSON.parse(s);if(Zvs(c))return c}catch{}}function rtt(s){let c=!1,g=0,d=0,h=0,_=0,S=0,R=0,T=0,O;return{get pos(){return g},get error(){return O},get state(){return V(!0,!0)},next(){for(;!c&&g=s.length)return ee("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;let Ze=Vvs(s.charCodeAt(g));if(Ze===-1)return ee("Invalid character in VLQ"),-1;Ee=(Ze&32)!==0,Te=Te|(Ze&31)<>1,Te=-Te):Te=Te>>1,Te}}function Ktn(s,c){return s===c||s.generatedLine===c.generatedLine&&s.generatedCharacter===c.generatedCharacter&&s.sourceIndex===c.sourceIndex&&s.sourceLine===c.sourceLine&&s.sourceCharacter===c.sourceCharacter&&s.nameIndex===c.nameIndex}function e3t(s){return s.sourceIndex!==void 0&&s.sourceLine!==void 0&&s.sourceCharacter!==void 0}function Lvs(s){return s>=0&&s<26?65+s:s>=26&&s<52?97+s-26:s>=52&&s<62?48+s-52:s===62?43:s===63?47:pe.fail(`${s}: not a base64 value`)}function Vvs(s){return s>=65&&s<=90?s-65:s>=97&&s<=122?s-97+26:s>=48&&s<=57?s-48+52:s===43?62:s===47?63:-1}function jtn(s){return s.sourceIndex!==void 0&&s.sourcePosition!==void 0}function ztn(s,c){return s.generatedPosition===c.generatedPosition&&s.sourceIndex===c.sourceIndex&&s.sourcePosition===c.sourcePosition}function Wvs(s,c){return pe.assert(s.sourceIndex===c.sourceIndex),Zt(s.sourcePosition,c.sourcePosition)}function Ovs(s,c){return Zt(s.generatedPosition,c.generatedPosition)}function Pvs(s){return s.sourcePosition}function Mvs(s){return s.generatedPosition}function t3t(s,c,g){let d=Mo(g),h=c.sourceRoot?Xc(c.sourceRoot,d):d,_=Xc(c.file,d),S=s.getSourceFileLike(_),R=c.sources.map(Ne=>Xc(Ne,h)),T=new Map(R.map((Ne,Te)=>[s.getCanonicalFileName(Ne),Te])),O,V,M;return{getSourcePosition:Ee,getGeneratedPosition:_e};function ee(Ne){let Te=S!==void 0?ih(S,Ne.generatedLine,Ne.generatedCharacter,!0):-1,Ze,Pe;if(e3t(Ne)){let Ke=s.getSourceFileLike(R[Ne.sourceIndex]);Ze=c.sources[Ne.sourceIndex],Pe=Ke!==void 0?ih(Ke,Ne.sourceLine,Ne.sourceCharacter,!0):-1}return{generatedPosition:Te,source:Ze,sourceIndex:Ne.sourceIndex,sourcePosition:Pe,nameIndex:Ne.nameIndex}}function re(){if(O===void 0){let Ne=rtt(c.mappings),Te=Do(Ne,ee);Ne.error!==void 0?(s.log&&s.log(`Encountered error while decoding sourcemap: ${Ne.error}`),O=E):O=Te}return O}function ge(Ne){if(M===void 0){let Te=[];for(let Ze of re()){if(!jtn(Ze))continue;let Pe=Te[Ze.sourceIndex];Pe||(Te[Ze.sourceIndex]=Pe=[]),Pe.push(Ze)}M=Te.map(Ze=>ol(Ze,Wvs,ztn))}return M[Ne]}function Ie(){if(V===void 0){let Ne=[];for(let Te of re())Ne.push(Te);V=ol(Ne,Ovs,ztn)}return V}function _e(Ne){let Te=T.get(s.getCanonicalFileName(Ne.fileName));if(Te===void 0)return Ne;let Ze=ge(Te);if(!zt(Ze))return Ne;let Pe=vg(Ze,Ne.pos,Pvs,Zt);Pe<0&&(Pe=~Pe);let Ke=Ze[Pe];return Ke===void 0||Ke.sourceIndex!==Te?Ne:{fileName:_,pos:Ke.generatedPosition}}function Ee(Ne){let Te=Ie();if(!zt(Te))return Ne;let Ze=vg(Te,Ne.pos,Mvs,Zt);Ze<0&&(Ze=~Ze);let Pe=Te[Ze];return Pe===void 0||!jtn(Pe)?Ne:{fileName:R[Pe.sourceIndex],pos:Pe.sourcePosition}}}var ntt={getSourcePosition:Zl,getGeneratedPosition:Zl};function My(s){return s=xd(s),s?id(s):0}function qtn(s){return!s||!BN(s)&&!bv(s)?!1:zt(s.elements,$tn)}function $tn(s){return dv(s.propertyName||s.name)}function aR(s,c){return g;function g(h){return h.kind===308?c(h):d(h)}function d(h){return s.factory.createBundle(lt(h.sourceFiles,c))}}function r3t(s){return!!oU(s)}function lVe(s){if(oU(s))return!0;let c=s.importClause&&s.importClause.namedBindings;if(!c||!BN(c))return!1;let g=0;for(let d of c.elements)$tn(d)&&g++;return g>0&&g!==c.elements.length||!!(c.elements.length-g)&&S3(s)}function itt(s){return!lVe(s)&&(S3(s)||!!s.importClause&&BN(s.importClause.namedBindings)&&qtn(s.importClause.namedBindings))}function stt(s,c){let g=s.getEmitResolver(),d=s.getCompilerOptions(),h=[],_=new Hvs,S=[],R=new Map,T=new Set,O,V=!1,M,ee=!1,re=!1,ge=!1;for(let Ne of c.statements)switch(Ne.kind){case 273:h.push(Ne),!re&&lVe(Ne)&&(re=!0),!ge&&itt(Ne)&&(ge=!0);break;case 272:Ne.moduleReference.kind===284&&h.push(Ne);break;case 279:if(Ne.moduleSpecifier)if(!Ne.exportClause)h.push(Ne),ee=!0;else if(h.push(Ne),bv(Ne.exportClause))_e(Ne),ge||(ge=qtn(Ne.exportClause));else{let Te=Ne.exportClause.name,Ze=UD(Te);R.get(Ze)||(Pde(S,My(Ne),Te),R.set(Ze,!0),O=Ft(O,Te)),re=!0}else _e(Ne);break;case 278:Ne.isExportEquals&&!M&&(M=Ne);break;case 244:if(Ga(Ne,32))for(let Te of Ne.declarationList.declarations)O=ern(Te,R,O,S);break;case 263:Ga(Ne,32)&&Ee(Ne,void 0,Ga(Ne,2048));break;case 264:if(Ga(Ne,32))if(Ga(Ne,2048))V||(Pde(S,My(Ne),s.factory.getDeclarationName(Ne)),V=!0);else{let Te=Ne.name;Te&&!R.get(Vo(Te))&&(Pde(S,My(Ne),Te),R.set(Vo(Te),!0),O=Ft(O,Te))}break}let Ie=z$e(s.factory,s.getEmitHelperFactory(),c,d,ee,re,ge);return Ie&&h.unshift(Ie),{externalImports:h,exportSpecifiers:_,exportEquals:M,hasExportStarsToExportValues:ee,exportedBindings:S,exportedNames:O,exportedFunctions:T,externalHelpersImportDeclaration:Ie};function _e(Ne){for(let Te of Ma(Ne.exportClause,bv).elements){let Ze=UD(Te.name);if(!R.get(Ze)){let Pe=Te.propertyName||Te.name;if(Pe.kind!==11){Ne.moduleSpecifier||_.add(Pe,Te);let Ke=g.getReferencedImportDeclaration(Pe)||g.getReferencedValueDeclaration(Pe);if(Ke){if(Ke.kind===263){Ee(Ke,Te.name,dv(Te.name));continue}Pde(S,My(Ke),Te.name)}}R.set(Ze,!0),O=Ft(O,Te.name)}}}function Ee(Ne,Te,Ze){if(T.add(xd(Ne,ah)),Ze)V||(Pde(S,My(Ne),Te??s.factory.getDeclarationName(Ne)),V=!0);else{Te??(Te=Ne.name);let Pe=UD(Te);R.get(Pe)||(Pde(S,My(Ne),Te),R.set(Pe,!0))}}}function ern(s,c,g,d){if(Nu(s.name))for(let h of s.name.elements)Ep(h)||(g=ern(h,c,g,d));else if(!Gp(s.name)){let h=Vo(s.name);c.get(h)||(c.set(h,!0),g=Ft(g,s.name),YF(s.name)&&Pde(d,My(s),s.name))}return g}function Pde(s,c,g){let d=s[c];return d?d.push(g):s[c]=d=[g],d}var Xie=class zce{constructor(){this._map=new Map}get size(){return this._map.size}has(c){return this._map.has(zce.toKey(c))}get(c){return this._map.get(zce.toKey(c))}set(c,g){return this._map.set(zce.toKey(c),g),this}delete(c){var g;return((g=this._map)==null?void 0:g.delete(zce.toKey(c)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(c){if(FL(c)||Gp(c)){let g=c.emitNode.autoGenerate;if((g.flags&7)===4){let d=ZEe(c),h=vw(d)&&d!==c?zce.toKey(d):`(generated@${id(d)})`;return K3(!1,g.prefix,h,g.suffix,zce.toKey)}else{let d=`(auto@${g.id})`;return K3(!1,g.prefix,d,g.suffix,zce.toKey)}}return p(c)?Vo(c).slice(1):Vo(c)}},Hvs=class extends Xie{add(s,c){let g=this.get(s);return g?g.push(c):this.set(s,g=[c]),g}remove(s,c){let g=this.get(s);g&&(rf(g,c),g.length||this.delete(s))}};function _Q(s){return CA(s)||s.kind===9||w0(s.kind)||Ir(s)}function DN(s){return!Ir(s)&&_Q(s)}function Mde(s){return s>=65&&s<=79}function Hde(s){switch(s){case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 45;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 75:return 52;case 79:return 53;case 76:return 57;case 77:return 56;case 78:return 61}}function uVe(s){if(!OC(s))return;let c=JA(s.expression);return xy(c)?c:void 0}function trn(s,c,g){for(let d=c;dQvs(d,c,g))}function Yvs(s){return Xvs(s)||Al(s)}function AVe(s){return Le(s.members,Yvs)}function Qvs(s,c,g){return pi(s)&&(!!s.initializer||!c)&&tm(s)===g}function Xvs(s){return pi(s)&&tm(s)}function r1e(s){return s.kind===173&&s.initializer!==void 0}function n3t(s){return!lg(s)&&(LL(s)||n0(s))&&p(s.name)}function i3t(s){let c;if(s){let g=s.parameters,d=g.length>0&&NF(g[0]),h=d?1:0,_=d?g.length-1:g.length;for(let S=0;S<_;S++){let R=g[S+h];(c||h1(R))&&(c||(c=new Array(_)),c[S]=Db(R))}}return c}function att(s,c){let g=Db(s),d=c?i3t(pN(s)):void 0;if(!(!zt(g)&&!zt(d)))return{decorators:g,parameters:d}}function dVe(s,c,g){switch(s.kind){case 178:case 179:return g?Jvs(s,c,!0):rrn(s,!1);case 175:return rrn(s,g);case 173:return Uvs(s);default:return}}function Jvs(s,c,g){if(!s.body)return;let{firstAccessor:d,secondAccessor:h,getAccessor:_,setAccessor:S}=GW(c.members,s),R=h1(d)?d:h&&h1(h)?h:void 0;if(!R||s!==R)return;let T=Db(R),O=g?i3t(S):void 0;if(!(!zt(T)&&!zt(O)))return{decorators:T,parameters:O,getDecorators:_&&Db(_),setDecorators:S&&Db(S)}}function rrn(s,c){if(!s.body)return;let g=Db(s),d=c?i3t(s):void 0;if(!(!zt(g)&&!zt(d)))return{decorators:g,parameters:d}}function Uvs(s){let c=Db(s);if(zt(c))return{decorators:c}}function Kvs(s,c){for(;s;){let g=c(s);if(g!==void 0)return g;s=s.previous}}function s3t(s){return{data:s}}function ctt(s,c){var g,d;return FL(c)?(g=s?.generatedIdentifiers)==null?void 0:g.get(ZEe(c)):(d=s?.identifiers)==null?void 0:d.get(c.escapedText)}function OU(s,c,g){FL(c)?(s.generatedIdentifiers??(s.generatedIdentifiers=new Map),s.generatedIdentifiers.set(ZEe(c),g)):(s.identifiers??(s.identifiers=new Map),s.identifiers.set(c.escapedText,g))}function o3t(s,c){return Kvs(s,g=>ctt(g.privateEnv,c))}function jvs(s){return!s.initializer&&Ir(s.name)}function n1e(s){return ue(s,jvs)}function Yz(s,c){if(!s||!Lg(s)||!Sne(s.text,c))return s;let g=_N(s.text,u1e(s.text,c));return g!==s.text?ua(gn(me.createStringLiteral(g,s.singleQuote),s),s):s}var a3t=(s=>(s[s.All=0]="All",s[s.ObjectRest=1]="ObjectRest",s))(a3t||{});function PU(s,c,g,d,h,_){let S=s,R;if(Zx(s))for(R=s.right;ALe(s.left)||Sbe(s.left);)if(Zx(R))S=s=R,R=s.right;else return pe.checkDefined(Mr(R,c,un));let T,O={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:V,emitBindingOrAssignment:M,createArrayBindingOrAssignmentPattern:ee=>iBs(g.factory,ee),createObjectBindingOrAssignmentPattern:ee=>oBs(g.factory,ee),createArrayBindingOrAssignmentElement:cBs,visitor:c};if(R&&(R=Mr(R,c,un),pe.assert(R),Ir(R)&&c3t(s,R.escapedText)||l3t(s)?R=Qz(O,R,!1,S):h?R=Qz(O,R,!0,S):ap(s)&&(S=R)),Yde(O,s,R,S,Zx(s)),R&&h){if(!zt(T))return R;T.push(R)}return g.factory.inlineExpressions(T)||g.factory.createOmittedExpression();function V(ee){T=Ft(T,ee)}function M(ee,re,ge,Ie){pe.assertNode(ee,_?Ir:un);let _e=_?_(ee,re,ge):gn(g.factory.createAssignment(pe.checkDefined(Mr(ee,c,un)),re),ge);_e.original=Ie,V(_e)}}function c3t(s,c){let g=YW(s);return GJ(g)?zvs(g,c):Ir(g)?g.escapedText===c:!1}function zvs(s,c){let g=Zie(s);for(let d of g)if(c3t(d,c))return!0;return!1}function l3t(s){let c=N9e(s);if(c&&Un(c)&&!xL(c.expression))return!0;let g=YW(s);return!!g&&GJ(g)&&qvs(g)}function qvs(s){return!!F(Zie(s),l3t)}function yQ(s,c,g,d,h,_=!1,S){let R,T=[],O=[],V={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:_,emitExpression:M,emitBindingOrAssignment:ee,createArrayBindingOrAssignmentPattern:re=>nBs(g.factory,re),createObjectBindingOrAssignmentPattern:re=>sBs(g.factory,re),createArrayBindingOrAssignmentElement:re=>aBs(g.factory,re),visitor:c};if(nc(s)){let re=GEe(s);re&&(Ir(re)&&c3t(s,re.escapedText)||l3t(s))&&(re=Qz(V,pe.checkDefined(Mr(re,V.visitor,un)),!1,re),s=g.factory.updateVariableDeclaration(s,s.name,void 0,void 0,re))}if(Yde(V,s,h,s,S),R){let re=g.factory.createTempVariable(void 0);if(_){let ge=g.factory.inlineExpressions(R);R=void 0,ee(re,ge,void 0,void 0)}else{g.hoistVariableDeclaration(re);let ge=Ei(T);ge.pendingExpressions=Ft(ge.pendingExpressions,g.factory.createAssignment(re,ge.value)),Pr(ge.pendingExpressions,R),ge.value=re}}for(let{pendingExpressions:re,name:ge,value:Ie,location:_e,original:Ee}of T){let Ne=g.factory.createVariableDeclaration(ge,void 0,void 0,re?g.factory.inlineExpressions(Ft(re,Ie)):Ie);Ne.original=Ee,gn(Ne,_e),O.push(Ne)}return O;function M(re){R=Ft(R,re)}function ee(re,ge,Ie,_e){pe.assertNode(re,ZL),R&&(ge=g.factory.inlineExpressions(Ft(R,ge)),R=void 0),T.push({pendingExpressions:R,name:re,value:ge,location:Ie,original:_e})}}function Yde(s,c,g,d,h){let _=YW(c);if(!h){let S=Mr(GEe(c),s.visitor,un);S?g?(g=tBs(s,g,S,d),!DN(S)&&GJ(_)&&(g=Qz(s,g,!0,d))):g=S:g||(g=s.context.factory.createVoidZero())}FJ(_)?$vs(s,c,_,g,d):Ore(_)?eBs(s,c,_,g,d):s.emitBindingOrAssignment(_,g,d,c)}function $vs(s,c,g,d,h){let _=Zie(g),S=_.length;if(S!==1){let O=!mW(c)||S!==0;d=Qz(s,d,O,h)}let R,T;for(let O=0;O=1&&!(V.transformFlags&98304)&&!(YW(V).transformFlags&98304)&&!Un(M))R=Ft(R,Mr(V,s.visitor,xJ));else{R&&(s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g),R=void 0);let ee=rBs(s,d,M);Un(M)&&(T=Ft(T,ee.argumentExpression)),Yde(s,V,ee,V)}}}R&&s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g)}function eBs(s,c,g,d,h){let _=Zie(g),S=_.length;if(s.level<1&&s.downlevelIteration)d=Qz(s,gn(s.context.getEmitHelperFactory().createReadHelper(d,S>0&&R9e(_[S-1])?void 0:S),h),!1,h);else if(S!==1&&(s.level<1||S===0)||ue(_,Ep)){let O=!mW(c)||S!==0;d=Qz(s,d,O,h)}let R,T;for(let O=0;O=1)if(V.transformFlags&65536||s.hasTransformedPriorElement&&!nrn(V)){s.hasTransformedPriorElement=!0;let M=s.context.factory.createTempVariable(void 0);s.hoistTempVariables&&s.context.hoistVariableDeclaration(M),T=Ft(T,[M,V]),R=Ft(R,s.createArrayBindingOrAssignmentElement(M))}else R=Ft(R,V);else{if(Ep(V))continue;if(R9e(V)){if(O===S-1){let M=s.context.factory.createArraySliceCall(d,O);Yde(s,V,M,V)}}else{let M=s.context.factory.createElementAccessExpression(d,O);Yde(s,V,M,V)}}}if(R&&s.emitBindingOrAssignment(s.createArrayBindingOrAssignmentPattern(R),d,h,g),T)for(let[O,V]of T)Yde(s,V,O,V)}function nrn(s){let c=YW(s);if(!c||Ep(c))return!0;let g=N9e(s);if(g&&!xw(g))return!1;let d=GEe(s);return d&&!DN(d)?!1:GJ(c)?ue(Zie(c),nrn):Ir(c)}function tBs(s,c,g,d){return c=Qz(s,c,!0,d),s.context.factory.createConditionalExpression(s.context.factory.createTypeCheck(c,"undefined"),void 0,g,void 0,c)}function rBs(s,c,g){let{factory:d}=s.context;if(Un(g)){let h=Qz(s,pe.checkDefined(Mr(g.expression,s.visitor,un)),!1,g);return s.context.factory.createElementAccessExpression(c,h)}else if(I1(g)||gQ(g)){let h=d.cloneNode(g);return s.context.factory.createElementAccessExpression(c,h)}else{let h=s.context.factory.createIdentifier(Vo(g));return s.context.factory.createPropertyAccessExpression(c,h)}}function Qz(s,c,g,d){if(Ir(c)&&g)return c;{let h=s.context.factory.createTempVariable(void 0);return s.hoistTempVariables?(s.context.hoistVariableDeclaration(h),s.emitExpression(gn(s.context.factory.createAssignment(h,c),d))):s.emitBindingOrAssignment(h,c,d,void 0),h}}function nBs(s,c){return pe.assertEachNode(c,d3),s.createArrayBindingPattern(c)}function iBs(s,c){return pe.assertEachNode(c,ZJ),s.createArrayLiteralExpression(lt(c,s.converters.convertToArrayAssignmentElement))}function sBs(s,c){return pe.assertEachNode(c,mg),s.createObjectBindingPattern(c)}function oBs(s,c){return pe.assertEachNode(c,CW),s.createObjectLiteralExpression(lt(c,s.converters.convertToObjectAssignmentElement))}function aBs(s,c){return s.createBindingElement(void 0,void 0,c)}function cBs(s){return s}function lBs(s,c,g=s.createThis()){let d=s.createAssignment(c,g),h=s.createExpressionStatement(d),_=s.createBlock([h],!1),S=s.createClassStaticBlockDeclaration(_);return u_(S).classThis=c,S}function Qde(s){var c;if(!Al(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return OC(g)&&zm(g.expression,!0)&&Ir(g.expression.left)&&((c=s.emitNode)==null?void 0:c.classThis)===g.expression.left&&g.expression.right.kind===110}function ltt(s){var c;return!!((c=s.emitNode)!=null&&c.classThis)&&zt(s.members,Qde)}function u3t(s,c,g,d){if(ltt(c))return c;let h=lBs(s,g,d);c.name&&Yg(h.body.statements[0],c.name);let _=s.createNodeArray([h,...c.members]);gn(_,c.members);let S=mm(c)?s.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_):s.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_);return u_(S).classThis=g,S}function pVe(s,c,g){let d=xd(XI(g));return(mm(d)||ah(d))&&!d.name&&Ga(d,2048)?s.createStringLiteral("default"):s.createStringLiteralFromNode(c)}function irn(s,c,g){let{factory:d}=s;if(g!==void 0)return{assignedName:d.createStringLiteral(g),name:c};if(xw(c)||p(c))return{assignedName:d.createStringLiteralFromNode(c),name:c};if(xw(c.expression)&&!Ir(c.expression))return{assignedName:d.createStringLiteralFromNode(c.expression),name:c};let h=d.getGeneratedNameForNode(c);s.hoistVariableDeclaration(h);let _=s.getEmitHelperFactory().createPropKeyHelper(c.expression),S=d.createAssignment(h,_),R=d.updateComputedPropertyName(c,S);return{assignedName:h,name:R}}function uBs(s,c,g=s.factory.createThis()){let{factory:d}=s,h=s.getEmitHelperFactory().createSetFunctionNameHelper(g,c),_=d.createExpressionStatement(h),S=d.createBlock([_],!1),R=d.createClassStaticBlockDeclaration(S);return u_(R).assignedName=c,R}function Xz(s){var c;if(!Al(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return OC(g)&&nk(g.expression,"___setFunctionName")&&g.expression.arguments.length>=2&&g.expression.arguments[1]===((c=s.emitNode)==null?void 0:c.assignedName)}function fVe(s){var c;return!!((c=s.emitNode)!=null&&c.assignedName)&&zt(s.members,Xz)}function utt(s){return!!s.name||fVe(s)}function IVe(s,c,g,d){if(fVe(c))return c;let{factory:h}=s,_=uBs(s,g,d);c.name&&Yg(_.body.statements[0],c.name);let S=Se(c.members,Qde)+1,R=c.members.slice(0,S),T=c.members.slice(S),O=h.createNodeArray([...R,_,...T]);return gn(O,c.members),c=mm(c)?h.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,O):h.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,O),u_(c).assignedName=g,c}function Jie(s,c,g,d){if(d&&Lg(g)&&Oye(g))return c;let{factory:h}=s,_=XI(c),S=wd(_)?Ma(IVe(s,_,g),wd):s.getEmitHelperFactory().createSetFunctionNameHelper(_,g);return h.restoreOuterExpressions(c,S)}function gBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=irn(s,c.name,d),R=Jie(s,c.initializer,_,g);return h.updatePropertyAssignment(c,S,R)}function ABs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.objectAssignmentInitializer),S=Jie(s,c.objectAssignmentInitializer,_,g);return h.updateShorthandPropertyAssignment(c,c.name,S)}function dBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.initializer),S=Jie(s,c.initializer,_,g);return h.updateVariableDeclaration(c,c.name,c.exclamationToken,c.type,S)}function pBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.initializer),S=Jie(s,c.initializer,_,g);return h.updateParameterDeclaration(c,c.modifiers,c.dotDotDotToken,c.name,c.questionToken,c.type,S)}function fBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.initializer),S=Jie(s,c.initializer,_,g);return h.updateBindingElement(c,c.dotDotDotToken,c.propertyName,c.name,S)}function IBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=irn(s,c.name,d),R=Jie(s,c.initializer,_,g);return h.updatePropertyDeclaration(c,c.modifiers,S,c.questionToken??c.exclamationToken,c.type,R)}function hBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.left,c.right),S=Jie(s,c.right,_,g);return h.updateBinaryExpression(c,c.left,c.operatorToken,S)}function mBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):h.createStringLiteral(c.isExportEquals?"":"default"),S=Jie(s,c.expression,_,g);return h.updateExportAssignment(c,c.modifiers,S)}function y1(s,c,g,d){switch(c.kind){case 304:return gBs(s,c,g,d);case 305:return ABs(s,c,g,d);case 261:return dBs(s,c,g,d);case 170:return pBs(s,c,g,d);case 209:return fBs(s,c,g,d);case 173:return IBs(s,c,g,d);case 227:return hBs(s,c,g,d);case 278:return mBs(s,c,g,d)}}var g3t=(s=>(s[s.LiftRestriction=0]="LiftRestriction",s[s.All=1]="All",s))(g3t||{});function gtt(s,c,g,d,h,_){let S=Mr(c.tag,g,un);pe.assert(S);let R=[void 0],T=[],O=[],V=c.template;if(_===0&&!abe(V))return _s(c,g,s);let{factory:M}=s;if(MW(V))T.push(A3t(M,V)),O.push(d3t(M,V,d));else{T.push(A3t(M,V.head)),O.push(d3t(M,V.head,d));for(let re of V.templateSpans)T.push(A3t(M,re.literal)),O.push(d3t(M,re.literal,d)),R.push(pe.checkDefined(Mr(re.expression,g,un)))}let ee=s.getEmitHelperFactory().createTemplateObjectHelper(M.createArrayLiteralExpression(T),M.createArrayLiteralExpression(O));if(Lm(d)){let re=M.createUniqueName("templateObject");h(re),R[0]=M.createLogicalOr(re,M.createAssignment(re,ee))}else R[0]=ee;return M.createCallExpression(S,void 0,R)}function A3t(s,c){return c.templateFlags&26656?s.createVoidZero():s.createStringLiteral(c.text)}function d3t(s,c,g){let d=c.rawText;if(d===void 0){pe.assertIsDefined(g,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),d=SF(g,c);let h=c.kind===15||c.kind===18;d=d.substring(1,d.length-(h?1:2))}return d=d.replace(/\r\n?/g,` -`),gn(s.createStringLiteral(d),c)}var CBs=!1;function p3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getEmitResolver(),T=s.getCompilerOptions(),O=Hg(T),V=o0(T),M=!!T.experimentalDecorators,ee=T.emitDecoratorMetadata?I3t(s):void 0,re=s.onEmitNode,ge=s.onSubstituteNode;s.onEmitNode=hS,s.onSubstituteNode=Au,s.enableSubstitution(212),s.enableSubstitution(213);let Ie,_e,Ee,Ne,Te,Ze=0,Pe;return Ke;function Ke(ve){return ve.kind===309?et(ve):Ye(ve)}function et(ve){return c.createBundle(ve.sourceFiles.map(Ye))}function Ye(ve){if(ve.isDeclarationFile)return ve;Ie=ve;let mr=Tt(ve,pr);return bN(mr,s.readEmitHelpers()),Ie=void 0,mr}function Tt(ve,mr){let ln=Ne,ni=Te;at(ve);let Ls=mr(ve);return Ne!==ln&&(Te=ni),Ne=ln,Ls}function at(ve){switch(ve.kind){case 308:case 270:case 269:case 242:Ne=ve,Te=void 0;break;case 264:case 263:if(Ga(ve,128))break;ve.name?fr(ve):pe.assert(ve.kind===264||Ga(ve,2048));break}}function Qe(ve){return Tt(ve,Ct)}function Ct(ve){return ve.transformFlags&1?dt(ve):ve}function mt(ve){return Tt(ve,yt)}function yt(ve){switch(ve.kind){case 273:case 272:case 278:case 279:return Lt(ve);default:return Ct(ve)}}function Rt(ve){let mr=eu(ve);if(mr===ve||yf(ve))return!1;if(!mr||mr.kind!==ve.kind)return!0;switch(ve.kind){case 273:if(pe.assertNode(mr,Yf),ve.importClause!==mr.importClause||ve.attributes!==mr.attributes)return!0;break;case 272:if(pe.assertNode(mr,Zm),ve.name!==mr.name||ve.isTypeOnly!==mr.isTypeOnly||ve.moduleReference!==mr.moduleReference&&(mC(ve.moduleReference)||mC(mr.moduleReference)))return!0;break;case 279:if(pe.assertNode(mr,Vh),ve.exportClause!==mr.exportClause||ve.attributes!==mr.attributes)return!0;break}return!1}function Lt(ve){if(Rt(ve))return ve.transformFlags&1?_s(ve,Qe,s):ve;switch(ve.kind){case 273:return oo(ve);case 272:return gs(ve);case 278:return wn(ve);case 279:return Mn(ve);default:pe.fail("Unhandled ellided statement")}}function je(ve){return Tt(ve,Wt)}function Wt(ve){if(!(ve.kind===279||ve.kind===273||ve.kind===274||ve.kind===272&&ve.moduleReference.kind===284))return ve.transformFlags&1||Ga(ve,32)?dt(ve):ve}function _r(ve){return mr=>Tt(mr,ln=>Gt(ln,ve))}function Gt(ve,mr){switch(ve.kind){case 177:return hn(ve);case 173:return yr(ve,mr);case 178:return Qu(ve,mr);case 179:return Rg(ve,mr);case 175:return Pa(ve,mr);case 176:return _s(ve,Qe,s);case 241:return ve;case 182:return;default:return pe.failBadSyntaxKind(ve)}}function it(ve){return mr=>Tt(mr,ln=>kt(ln,ve))}function kt(ve,mr){switch(ve.kind){case 304:case 305:case 306:return Qe(ve);case 178:return Qu(ve,mr);case 179:return Rg(ve,mr);case 175:return Pa(ve,mr);default:return pe.failBadSyntaxKind(ve)}}function tr(ve){return So(ve)?void 0:Qe(ve)}function ur(ve){return hg(ve)?void 0:Qe(ve)}function Gr(ve){if(!So(ve)&&!(eQ(ve.kind)&28895)&&!(_e&&ve.kind===95))return ve}function dt(ve){if(Lc(ve)&&Ga(ve,128))return c.createNotEmittedStatement(ve);switch(ve.kind){case 95:case 90:return _e?void 0:ve;case 125:case 123:case 124:case 128:case 164:case 87:case 138:case 148:case 103:case 147:case 189:case 190:case 191:case 192:case 188:case 183:case 169:case 133:case 159:case 136:case 154:case 150:case 146:case 116:case 155:case 186:case 185:case 187:case 184:case 193:case 194:case 195:case 197:case 198:case 199:case 200:case 201:case 202:case 182:return;case 266:return c.createNotEmittedStatement(ve);case 271:return;case 265:return c.createNotEmittedStatement(ve);case 264:return Tr(ve);case 232:return Cn(ve);case 299:return ba(ve);case 234:return Oo(ve);case 211:return ot(ve);case 177:case 173:case 175:case 178:case 179:case 176:return pe.fail("Class and object literal elements must be visited with their respective visitors");case 263:return Cs(ve);case 219:return Tu(ve);case 220:return Wr(ve);case 170:return Wn(ve);case 218:return nr(ve);case 217:case 235:return Zr(ve);case 239:return Dn(ve);case 214:return hr(ve);case 215:return Sn(ve);case 216:return Ni(ve);case 236:return Kr(ve);case 267:return ds(ve);case 244:return pt(ve);case 261:return st(ve);case 268:return Mt(ve);case 272:return gs(ve);case 286:return Gi(ve);case 287:return nn(ve);default:return _s(ve,Qe,s)}}function pr(ve){let mr=l_(T,"alwaysStrict")&&!(Lm(ve)&&V>=5)&&!Zu(ve);return c.updateSourceFile(ve,qet(ve.statements,mt,s,0,mr))}function ot(ve){return c.updateObjectLiteralExpression(ve,Os(ve.properties,it(ve),Bw))}function ir(ve){let mr=0;zt(ott(ve,!0,!0))&&(mr|=1);let ln=DB(ve);return ln&&XI(ln.expression).kind!==106&&(mr|=64),Gx(M,ve)&&(mr|=2),rU(M,ve)&&(mr|=4),fs(ve)?mr|=8:Ag(ve)?mr|=32:mc(ve)&&(mr|=16),mr}function qt(ve){return!!(ve.transformFlags&8192)}function Yt(ve){return h1(ve)||zt(ve.typeParameters)||zt(ve.heritageClauses,qt)||zt(ve.members,qt)}function Tr(ve){let mr=ir(ve),ln=O<=1&&!!(mr&7);if(!Yt(ve)&&!Gx(M,ve)&&!fs(ve))return c.updateClassDeclaration(ve,Os(ve.modifiers,Gr,hg),ve.name,void 0,Os(ve.heritageClauses,Qe,_1),Os(ve.members,_r(ve),MI));ln&&s.startLexicalEnvironment();let ni=ln||mr&8,Ls=ni?Os(ve.modifiers,ur,fp):Os(ve.modifiers,Qe,fp);mr&2&&(Ls=Zi(Ls,ve));let Go=ni&&!ve.name||mr&4||mr&1?ve.name??c.getGeneratedNameForNode(ve):ve.name,Ss=c.updateClassDeclaration(ve,Ls,Go,void 0,Os(ve.heritageClauses,Qe,_1),jn(ve)),Uc=rA(ve);mr&1&&(Uc|=64),ti(Ss,Uc);let el;if(ln){let Fd=[Ss],Vg=zL(Yu(Ie.text,ve.members.end),20),Ef=c.getInternalName(ve),om=c.createPartiallyEmittedExpression(Ef);vU(om,Vg.end),ti(om,3072);let Sh=c.createReturnStatement(om);mz(Sh,Vg.pos),ti(Sh,3840),Fd.push(Sh),Rw(Fd,s.endLexicalEnvironment());let Zp=c.createImmediatelyInvokedArrowFunction(Fd);Cie(Zp,1);let lh=c.createVariableDeclaration(c.getLocalName(ve,!1,!1),void 0,void 0,Zp);ua(lh,ve);let v1=c.createVariableStatement(void 0,c.createVariableDeclarationList([lh],1));ua(v1,ve),yh(v1,ve),Yg(v1,tk(ve)),k0(v1),el=v1}else el=Ss;if(ni){if(mr&8)return[el,dg(ve)];if(mr&32)return[el,c.createExportDefault(c.getLocalName(ve,!1,!0))];if(mr&16)return[el,c.createExternalModuleExport(c.getDeclarationName(ve,!1,!0))]}return el}function Cn(ve){let mr=Os(ve.modifiers,ur,fp);return Gx(M,ve)&&(mr=Zi(mr,ve)),c.updateClassExpression(ve,mr,ve.name,void 0,Os(ve.heritageClauses,Qe,_1),jn(ve))}function jn(ve){let mr=Os(ve.members,_r(ve),MI),ln,ni=pN(ve),Ls=ni&&Le(ni.parameters,Za=>We(Za,ni));if(Ls)for(let Za of Ls){let Go=c.createPropertyDeclaration(void 0,Za.name,void 0,void 0,void 0);ua(Go,Za),ln=Ft(ln,Go)}return ln?(ln=Pr(ln,mr),gn(c.createNodeArray(ln),ve.members)):mr}function Zi(ve,mr){let ln=An(mr,mr);if(zt(ln)){let ni=[];Pr(ni,n_(ve,FEe)),Pr(ni,Le(ve,So)),Pr(ni,ln),Pr(ni,Le(up(ve,FEe),hg)),ve=gn(c.createNodeArray(ni),ve)}return ve}function Ns(ve,mr,ln){if(xa(ln)&&Wye(M,mr,ln)){let ni=An(mr,ln);if(zt(ni)){let Ls=[];Pr(Ls,Le(ve,So)),Pr(Ls,ni),Pr(Ls,Le(ve,hg)),ve=gn(c.createNodeArray(Ls),ve)}}return ve}function An(ve,mr){if(M)return CBs?ks(ve,mr):si(ve,mr)}function si(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=g().createMetadataHelper("design:type",ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(Zn(ve)){let ni=g().createMetadataHelper("design:paramtypes",ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(ou(ve)){let ni=g().createMetadataHelper("design:returntype",ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve));ln=Ft(ln,c.createDecorator(ni))}return ln}}function ks(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=c.createPropertyAssignment("type",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(Zn(ve)){let ni=c.createPropertyAssignment("paramTypes",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(ou(ve)){let ni=c.createPropertyAssignment("returnType",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve)));ln=Ft(ln,ni)}if(ln){let ni=g().createMetadataHelper("design:typeinfo",c.createObjectLiteralExpression(ln,!0));return[c.createDecorator(ni)]}}}function Ic(ve){let mr=ve.kind;return mr===175||mr===178||mr===179||mr===173}function ou(ve){return ve.kind===175}function Zn(ve){switch(ve.kind){case 264:case 232:return pN(ve)!==void 0;case 175:case 178:case 179:return!0}return!1}function ya(ve,mr){let ln=ve.name;return p(ln)?c.createIdentifier(""):Un(ln)?mr&&!DN(ln.expression)?c.getGeneratedNameForNode(ln):ln.expression:Ir(ln)?c.createStringLiteral(Vo(ln)):c.cloneNode(ln)}function Fl(ve){let mr=ve.name;if(M&&Un(mr)&&h1(ve)){let ln=Mr(mr.expression,Qe,un);pe.assert(ln);let ni=l2(ln);if(!DN(ni)){let Ls=c.getGeneratedNameForNode(mr);return S(Ls),c.updateComputedPropertyName(mr,c.createAssignment(Ls,ln))}}return pe.checkDefined(Mr(mr,Qe,PI))}function ba(ve){if(ve.token!==119)return _s(ve,Qe,s)}function Oo(ve){return c.updateExpressionWithTypeArguments(ve,pe.checkDefined(Mr(ve.expression,Qe,x_)),void 0)}function hc(ve){return!af(ve.body)}function yr(ve,mr){let ln=ve.flags&33554432||Ga(ve,64);if(ln&&!(M&&h1(ve)))return;let ni=xa(mr)?ln?Os(ve.modifiers,ur,fp):Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ni=Ns(ni,ve,mr),ln?c.updatePropertyDeclaration(ve,Nn(ni,c.createModifiersFromModifierFlags(128)),pe.checkDefined(Mr(ve.name,Qe,PI)),void 0,void 0,void 0):c.updatePropertyDeclaration(ve,ni,Fl(ve),void 0,void 0,Mr(ve.initializer,Qe,un))}function hn(ve){if(hc(ve))return c.updateConstructorDeclaration(ve,void 0,wI(ve.parameters,Qe,s),co(ve.body,ve))}function Pi(ve,mr,ln,ni,Ls,Za){let Go=ni[Ls],Ss=mr[Go];if(Pr(ve,Os(mr,Qe,Lc,ln,Go-ln)),DU(Ss)){let Uc=[];Pi(Uc,Ss.tryBlock.statements,0,ni,Ls+1,Za);let el=c.createNodeArray(Uc);gn(el,Ss.tryBlock.statements),ve.push(c.updateTryStatement(Ss,c.updateBlock(Ss.tryBlock,Uc),Mr(Ss.catchClause,Qe,fQ),Mr(Ss.finallyBlock,Qe,eg)))}else Pr(ve,Os(mr,Qe,Lc,Go,1)),Pr(ve,Za);Pr(ve,Os(mr,Qe,Lc,Go+1))}function co(ve,mr){let ln=mr&&Le(mr.parameters,Uc=>We(Uc,mr));if(!zt(ln))return pS(ve,Qe,s);let ni=[];h();let Ls=c.copyPrologue(ve.statements,ni,!1,Qe),Za=gVe(ve.statements,Ls),Go=Xt(ln,pa);Za.length?Pi(ni,ve.statements,Ls,Za,0,Go):(Pr(ni,Go),Pr(ni,Os(ve.statements,Qe,Lc,Ls))),ni=c.mergeLexicalEnvironment(ni,_());let Ss=c.createBlock(gn(c.createNodeArray(ni),ve.statements),!0);return gn(Ss,ve),ua(Ss,ve),Ss}function pa(ve){let mr=ve.name;if(!Ir(mr))return;let ln=UA(gn(c.cloneNode(mr),mr),mr.parent);ti(ln,3168);let ni=UA(gn(c.cloneNode(mr),mr),mr.parent);return ti(ni,3072),k0(Tz(gn(ua(c.createExpressionStatement(c.createAssignment(gn(c.createPropertyAccessExpression(c.createThis(),ln),ve.name),ni)),ve),ek(ve,-1))))}function Pa(ve,mr){if(!(ve.transformFlags&1))return ve;if(!hc(ve))return;let ln=xa(mr)?Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ln=Ns(ln,ve,mr),c.updateMethodDeclaration(ve,ln,ve.asteriskToken,Fl(ve),void 0,void 0,wI(ve.parameters,Qe,s),void 0,pS(ve.body,Qe,s))}function $c(ve){return!(af(ve.body)&&Ga(ve,64))}function Qu(ve,mr){if(!(ve.transformFlags&1))return ve;if(!$c(ve))return;let ln=xa(mr)?Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ln=Ns(ln,ve,mr),c.updateGetAccessorDeclaration(ve,ln,Fl(ve),wI(ve.parameters,Qe,s),void 0,pS(ve.body,Qe,s)||c.createBlock([]))}function Rg(ve,mr){if(!(ve.transformFlags&1))return ve;if(!$c(ve))return;let ln=xa(mr)?Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ln=Ns(ln,ve,mr),c.updateSetAccessorDeclaration(ve,ln,Fl(ve),wI(ve.parameters,Qe,s),pS(ve.body,Qe,s)||c.createBlock([]))}function Cs(ve){if(!hc(ve))return c.createNotEmittedStatement(ve);let mr=c.updateFunctionDeclaration(ve,Os(ve.modifiers,Gr,hg),ve.asteriskToken,ve.name,void 0,wI(ve.parameters,Qe,s),void 0,pS(ve.body,Qe,s)||c.createBlock([]));if(fs(ve)){let ln=[mr];return yu(ln,ve),ln}return mr}function Tu(ve){return hc(ve)?c.updateFunctionExpression(ve,Os(ve.modifiers,Gr,hg),ve.asteriskToken,ve.name,void 0,wI(ve.parameters,Qe,s),void 0,pS(ve.body,Qe,s)||c.createBlock([])):c.createOmittedExpression()}function Wr(ve){return c.updateArrowFunction(ve,Os(ve.modifiers,Gr,hg),void 0,wI(ve.parameters,Qe,s),void 0,ve.equalsGreaterThanToken,pS(ve.body,Qe,s))}function Wn(ve){if(NF(ve))return;let mr=c.updateParameterDeclaration(ve,Os(ve.modifiers,ln=>So(ln)?Qe(ln):void 0,fp),ve.dotDotDotToken,pe.checkDefined(Mr(ve.name,Qe,ZL)),void 0,void 0,Mr(ve.initializer,Qe,un));return mr!==ve&&(yh(mr,ve),gn(mr,Iv(ve)),Yg(mr,Iv(ve)),ti(mr.name,64)),mr}function pt(ve){if(fs(ve)){let mr=hU(ve.declarationList);return mr.length===0?void 0:gn(c.createExpressionStatement(c.inlineExpressions(lt(mr,on))),ve)}else return _s(ve,Qe,s)}function on(ve){let mr=ve.name;return Nu(mr)?PU(ve,Qe,s,0,!1,pI):gn(c.createAssignment(Ip(mr),pe.checkDefined(Mr(ve.initializer,Qe,un))),ve)}function st(ve){let mr=c.updateVariableDeclaration(ve,pe.checkDefined(Mr(ve.name,Qe,ZL)),void 0,void 0,Mr(ve.initializer,Qe,un));return ve.type&&c9e(mr.name,ve.type),mr}function nr(ve){let mr=XI(ve.expression,-55);if(vd(mr)||Xg(mr)){let ln=Mr(ve.expression,Qe,un);return pe.assert(ln),c.createPartiallyEmittedExpression(ln,ve)}return _s(ve,Qe,s)}function Zr(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Kr(ve){let mr=Mr(ve.expression,Qe,x_);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Dn(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function hr(ve){return c.updateCallExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Os(ve.arguments,Qe,un))}function Sn(ve){return c.updateNewExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Os(ve.arguments,Qe,un))}function Ni(ve){return c.updateTaggedTemplateExpression(ve,pe.checkDefined(Mr(ve.tag,Qe,un)),void 0,pe.checkDefined(Mr(ve.template,Qe,_W)))}function Gi(ve){return c.updateJsxSelfClosingElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,WL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,pQ)))}function nn(ve){return c.updateJsxOpeningElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,WL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,pQ)))}function En(ve){return!OA(ve)||Lb(T)}function ds(ve){if(!En(ve))return c.createNotEmittedStatement(ve);let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=kl(ve),Za=bu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let el=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(el,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,Ht(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(LB(Uc,void 0),O3(Uc,void 0)),gn(Uc,ve),Ww(Uc,ln),mr.push(Uc),mr}function Ht(ve,mr){let ln=Ee;Ee=mr;let ni=[];d();let Ls=lt(ve.members,cn);return Rw(ni,_()),Pr(ni,Ls),Ee=ln,c.createBlock(gn(c.createNodeArray(ni),ve.members),!0)}function cn(ve){let mr=ya(ve,!1),ln=R.getEnumMemberValue(ve),ni=wt(ve,ln?.value),Ls=c.createAssignment(c.createElementAccessExpression(Ee,mr),ni),Za=typeof ln?.value=="string"||ln?.isSyntacticallyString?Ls:c.createAssignment(c.createElementAccessExpression(Ee,Ls),mr);return gn(c.createExpressionStatement(gn(Za,ve)),ve)}function wt(ve,mr){return mr!==void 0?typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr):(sm(),ve.initializer?pe.checkDefined(Mr(ve.initializer,Qe,un)):c.createVoidZero())}function xe(ve){let mr=eu(ve,Lh);return mr?jet(mr,Lb(T)):!0}function fr(ve){Te||(Te=new Map);let mr=In(ve);Te.has(mr)||Te.set(mr,ve)}function Ue(ve){if(Te){let mr=In(ve);return Te.get(mr)===ve}return!0}function In(ve){return pe.assertNode(ve.name,Ir),ve.name.escapedText}function Hn(ve,mr){let ln=c.createVariableDeclaration(c.getLocalName(mr,!1,!0)),ni=Ne.kind===308?0:1,Ls=c.createVariableStatement(Os(mr.modifiers,Gr,hg),c.createVariableDeclarationList([ln],ni));return ua(ln,mr),LB(ln,void 0),O3(ln,void 0),ua(Ls,mr),fr(mr),Ue(mr)?(mr.kind===267?Yg(Ls.declarationList,mr):Yg(Ls,mr),yh(Ls,mr),Ww(Ls,2048),ve.push(Ls),!0):!1}function Mt(ve){if(!xe(ve))return c.createNotEmittedStatement(ve);pe.assertNode(ve.name,Ir,"A TypeScript namespace should have an Identifier name."),qp();let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=kl(ve),Za=bu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let el=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(el,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,$r(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(LB(Uc,void 0),O3(Uc,void 0)),gn(Uc,ve),Ww(Uc,ln),mr.push(Uc),mr}function $r(ve,mr){let ln=Ee,ni=_e,Ls=Te;Ee=mr,_e=ve,Te=void 0;let Za=[];d();let Go,Ss;if(ve.body)if(ve.body.kind===269)Tt(ve.body,el=>Pr(Za,Os(el.statements,je,Lc))),Go=ve.body.statements,Ss=ve.body;else{let el=Mt(ve.body);el&&(Ki(el)?Pr(Za,el):Za.push(el));let Fd=ri(ve).body;Go=ek(Fd.statements,-1)}Rw(Za,_()),Ee=ln,_e=ni,Te=Ls;let Uc=c.createBlock(gn(c.createNodeArray(Za),Go),!0);return gn(Uc,Ss),(!ve.body||ve.body.kind!==269)&&ti(Uc,rA(Uc)|3072),Uc}function ri(ve){if(ve.body.kind===268)return ri(ve.body)||ve.body}function oo(ve){if(!ve.importClause)return ve;if(ve.importClause.isTypeOnly)return;let mr=Mr(ve.importClause,Bs,Hw);return mr?c.updateImportDeclaration(ve,void 0,mr,ve.moduleSpecifier,ve.attributes):void 0}function Bs(ve){pe.assert(ve.phaseModifier!==156);let mr=UI(ve)?ve.name:void 0,ln=Mr(ve.namedBindings,Ys,kx);return mr||ln?c.updateImportClause(ve,ve.phaseModifier,mr,ln):void 0}function Ys(ve){if(ve.kind===275)return UI(ve)?ve:void 0;{let mr=T.verbatimModuleSyntax,ln=Os(ve.elements,tn,Ay);return mr||zt(ln)?c.updateNamedImports(ve,ln):void 0}}function tn(ve){return!ve.isTypeOnly&&UI(ve)?ve:void 0}function wn(ve){return T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve)?_s(ve,Qe,s):void 0}function Mn(ve){if(ve.isTypeOnly)return;if(!ve.exportClause||ok(ve.exportClause))return c.updateExportDeclaration(ve,ve.modifiers,ve.isTypeOnly,ve.exportClause,ve.moduleSpecifier,ve.attributes);let mr=!!T.verbatimModuleSyntax,ln=Mr(ve.exportClause,ni=>Oi(ni,mr),Fre);return ln?c.updateExportDeclaration(ve,void 0,ve.isTypeOnly,ln,ve.moduleSpecifier,ve.attributes):void 0}function ci(ve,mr){let ln=Os(ve.elements,Vn,D0);return mr||zt(ln)?c.updateNamedExports(ve,ln):void 0}function es(ve){return c.updateNamespaceExport(ve,pe.checkDefined(Mr(ve.name,Qe,Ir)))}function Oi(ve,mr){return ok(ve)?es(ve):ci(ve,mr)}function Vn(ve){return!ve.isTypeOnly&&(T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve))?ve:void 0}function Ui(ve){return UI(ve)||!Lm(Ie)&&R.isTopLevelValueImportEqualsWithEntityName(ve)}function gs(ve){if(ve.isTypeOnly)return;if(HL(ve))return UI(ve)?_s(ve,Qe,s):void 0;if(!Ui(ve))return;let mr=NEe(c,ve.moduleReference);return ti(mr,7168),mc(ve)||!fs(ve)?ua(gn(c.createVariableStatement(Os(ve.modifiers,Gr,hg),c.createVariableDeclarationList([ua(c.createVariableDeclaration(ve.name,void 0,void 0,mr),ve)])),ve),ve):ua(RI(ve.name,mr,ve),ve)}function fs(ve){return _e!==void 0&&Ga(ve,32)}function bi(ve){return _e===void 0&&Ga(ve,32)}function mc(ve){return bi(ve)&&!Ga(ve,2048)}function Ag(ve){return bi(ve)&&Ga(ve,2048)}function dg(ve){let mr=c.createAssignment(c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0),c.getLocalName(ve));Yg(mr,Zy(ve.name?ve.name.pos:ve.pos,ve.end));let ln=c.createExpressionStatement(mr);return Yg(ln,Zy(-1,ve.end)),ln}function yu(ve,mr){ve.push(dg(mr))}function RI(ve,mr,ln){return gn(c.createExpressionStatement(c.createAssignment(c.getNamespaceMemberName(Ee,ve,!1,!0),mr)),ln)}function pI(ve,mr,ln){return gn(c.createAssignment(Ip(ve),mr),ln)}function Ip(ve){return c.getNamespaceMemberName(Ee,ve,!1,!0)}function kl(ve){let mr=c.getGeneratedNameForNode(ve);return Yg(mr,ve.name),mr}function bu(ve){return c.getGeneratedNameForNode(ve)}function sm(){Ze&8||(Ze|=8,s.enableSubstitution(80))}function qp(){Ze&2||(Ze|=2,s.enableSubstitution(80),s.enableSubstitution(305),s.enableEmitNotification(268))}function Jg(ve){return xd(ve).kind===268}function ch(ve){return xd(ve).kind===267}function hS(ve,mr,ln){let ni=Pe,Ls=Ie;al(mr)&&(Ie=mr),Ze&2&&Jg(mr)&&(Pe|=2),Ze&8&&ch(mr)&&(Pe|=8),re(ve,mr,ln),Pe=ni,Ie=Ls}function Au(ve,mr){return mr=ge(ve,mr),ve===1?zA(mr):l0(mr)?Eg(mr):mr}function Eg(ve){if(Ze&2){let mr=ve.name,ln=oi(mr);if(ln){if(ve.objectAssignmentInitializer){let ni=c.createAssignment(ln,ve.objectAssignmentInitializer);return gn(c.createPropertyAssignment(mr,ni),ve)}return gn(c.createPropertyAssignment(mr,ln),ve)}}return ve}function zA(ve){switch(ve.kind){case 80:return NA(ve);case 212:return tp(ve);case 213:return JI(ve)}return ve}function NA(ve){return oi(ve)||ve}function oi(ve){if(Ze&Pe&&!Gp(ve)&&!YF(ve)){let mr=R.getReferencedExportContainer(ve,!1);if(mr&&mr.kind!==308&&(Pe&2&&mr.kind===268||Pe&8&&mr.kind===267))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(mr),ve),ve)}}function tp(ve){return MC(ve)}function JI(ve){return MC(ve)}function Wh(ve){return ve.replace(/\*\//g,"*_/")}function MC(ve){let mr=bf(ve);if(mr!==void 0){o9e(ve,mr);let ln=typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr);if(!T.removeComments){let ni=xd(ve,bp);Nz(ln,3,` ${Wh(Fp(ni))} `)}return ln}return ve}function bf(ve){if(!lS(T))return jo(ve)||Qg(ve)?R.getConstantValue(ve):void 0}function UI(ve){return T.verbatimModuleSyntax||wo(ve)||R.isReferencedAliasDeclaration(ve)}}function f3t(s){let{factory:c,getEmitHelperFactory:g,hoistVariableDeclaration:d,endLexicalEnvironment:h,startLexicalEnvironment:_,resumeLexicalEnvironment:S,addBlockScopedVariable:R}=s,T=s.getEmitResolver(),O=s.getCompilerOptions(),V=Hg(O),M=$ne(O),ee=!!O.experimentalDecorators,re=!M,ge=M&&V<9,Ie=re||ge,_e=V<9,Ee=V<99?-1:M?0:3,Ne=V<9,Te=Ne&&V>=2,Ze=Ie||_e||Ee===-1,Pe=s.onSubstituteNode;s.onSubstituteNode=JI;let Ke=s.onEmitNode;s.onEmitNode=tp;let et=!1,Ye=0,Tt,at,Qe,Ct,mt=new Map,yt=new Set,Rt,Lt,je=!1,Wt=!1;return aR(s,_r);function _r(ve){if(ve.isDeclarationFile||(Ct=void 0,et=!!(p1(ve)&32),!Ze&&!et))return ve;let mr=_s(ve,it,s);return bN(mr,s.readEmitHelpers()),mr}function Gt(ve){switch(ve.kind){case 129:return hn()?void 0:ve;default:return Gs(ve,hg)}}function it(ve){if(!(ve.transformFlags&16777216)&&!(ve.transformFlags&134234112))return ve;switch(ve.kind){case 264:return En(ve);case 232:return Ht(ve);case 176:case 173:return pe.fail("Use `classElementVisitor` instead.");case 304:return Yt(ve);case 244:return Tr(ve);case 261:return Cn(ve);case 170:return jn(ve);case 209:return Zi(ve);case 278:return Ns(ve);case 81:return ir(ve);case 212:return Qu(ve);case 213:return Rg(ve);case 225:case 226:return Cs(ve,!1);case 227:return Zr(ve,!1);case 218:return Dn(ve,!1);case 214:return pt(ve);case 245:return Wr(ve);case 216:return on(ve);case 249:return Tu(ve);case 110:return xe(ve);case 263:case 219:return Zn(void 0,kt,ve);case 177:case 175:case 178:case 179:return Zn(ve,kt,ve);default:return kt(ve)}}function kt(ve){return _s(ve,it,s)}function tr(ve){switch(ve.kind){case 225:case 226:return Cs(ve,!0);case 227:return Zr(ve,!0);case 357:return Kr(ve,!0);case 218:return Dn(ve,!0);default:return it(ve)}}function ur(ve){switch(ve.kind){case 299:return _s(ve,ur,s);case 234:return Gi(ve);default:return it(ve)}}function Gr(ve){switch(ve.kind){case 211:case 210:return oi(ve);default:return it(ve)}}function dt(ve){switch(ve.kind){case 177:return Zn(ve,ks,ve);case 178:case 179:case 175:return Zn(ve,ou,ve);case 173:return Zn(ve,Pi,ve);case 176:return Zn(ve,wt,ve);case 168:return si(ve);case 241:return ve;default:return fp(ve)?Gt(ve):it(ve)}}function pr(ve){switch(ve.kind){case 168:return si(ve);default:return it(ve)}}function ot(ve){switch(ve.kind){case 173:return yr(ve);case 178:case 179:return dt(ve);default:pe.assertMissingNode(ve,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function ir(ve){return!_e||Lc(ve.parent)?ve:ua(c.createIdentifier(""),ve)}function qt(ve){let mr=bu(ve.left);if(mr){let ln=Mr(ve.right,it,un);return ua(g().createClassPrivateFieldInHelper(mr.brandCheckIdentifier,ln),ve)}return _s(ve,it,s)}function Yt(ve){return Gb(ve,nr)&&(ve=y1(s,ve)),_s(ve,it,s)}function Tr(ve){let mr=Qe;Qe=[];let ln=_s(ve,it,s),ni=zt(Qe)?[ln,...Qe]:ln;return Qe=mr,ni}function Cn(ve){return Gb(ve,nr)&&(ve=y1(s,ve)),_s(ve,it,s)}function jn(ve){return Gb(ve,nr)&&(ve=y1(s,ve)),_s(ve,it,s)}function Zi(ve){return Gb(ve,nr)&&(ve=y1(s,ve)),_s(ve,it,s)}function Ns(ve){return Gb(ve,nr)&&(ve=y1(s,ve,!0,ve.isExportEquals?"":"default")),_s(ve,it,s)}function An(ve){return zt(at)&&(dI(ve)?(at.push(ve.expression),ve=c.updateParenthesizedExpression(ve,c.inlineExpressions(at))):(at.push(ve),ve=c.inlineExpressions(at)),at=void 0),ve}function si(ve){let mr=Mr(ve.expression,it,un);return c.updateComputedPropertyName(ve,An(mr))}function ks(ve){return Rt?In(ve,Rt):kt(ve)}function Ic(ve){return!!(_e||tm(ve)&&p1(ve)&32)}function ou(ve){if(pe.assert(!h1(ve)),!hC(ve)||!Ic(ve))return _s(ve,dt,s);let mr=bu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;let ln=ya(ve);ln&&fs().push(c.createAssignment(ln,c.createFunctionExpression(Le(ve.modifiers,ni=>hg(ni)&&!Ge(ni)&&!ht(ni)),ve.asteriskToken,ln,void 0,wI(ve.parameters,it,s),void 0,pS(ve.body,it,s))))}function Zn(ve,mr,ln){if(ve!==Lt){let ni=Lt;Lt=ve;let Ls=mr(ln);return Lt=ni,Ls}return mr(ln)}function ya(ve){pe.assert(p(ve.name));let mr=bu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),mr.kind==="m")return mr.methodName;if(mr.kind==="a"){if(wB(ve))return mr.getterName;if(Av(ve))return mr.setterName}}function Fl(){let ve=Ui();return ve.classThis??ve.classConstructor??Rt?.name}function ba(ve){let mr=ZB(ve),ln=zT(ve),ni=ve.name,Ls=ni,Za=ni;if(Un(ni)&&!DN(ni.expression)){let Ef=k9e(ni);if(Ef)Ls=c.updateComputedPropertyName(ni,Mr(ni.expression,it,un)),Za=c.updateComputedPropertyName(ni,Ef.left);else{let om=c.createTempVariable(d);Yg(om,ni.expression);let Sh=Mr(ni.expression,it,un),Zp=c.createAssignment(om,Sh);Yg(Zp,ni.expression),Ls=c.updateComputedPropertyName(ni,Zp),Za=c.updateComputedPropertyName(ni,om)}}let Go=Os(ve.modifiers,Gt,hg),Ss=net(c,ve,Go,ve.initializer);ua(Ss,ve),ti(Ss,3072),Yg(Ss,ln);let Uc=lg(ve)?Fl()??c.createThis():c.createThis(),el=VOt(c,ve,Go,Ls,Uc);ua(el,ve),yh(el,mr),Yg(el,ln);let Fd=c.createModifiersFromModifierFlags(Zw(Go)),Vg=WOt(c,ve,Fd,Za,Uc);return ua(Vg,ve),ti(Vg,3072),Yg(Vg,ln),Ode([Ss,el,Vg],ot,MI)}function Oo(ve){if(Ic(ve)){let mr=bu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;if(mr.isStatic&&!_e){let ln=ri(ve,c.createThis());if(ln)return c.createClassStaticBlockDeclaration(c.createBlock([ln],!0))}return}return re&&!lg(ve)&&Ct?.data&&Ct.data.facts&16?c.updatePropertyDeclaration(ve,Os(ve.modifiers,it,fp),ve.name,void 0,void 0,void 0):(Gb(ve,nr)&&(ve=y1(s,ve)),c.updatePropertyDeclaration(ve,Os(ve.modifiers,Gt,hg),Mr(ve.name,pr,PI),void 0,void 0,Mr(ve.initializer,it,un)))}function hc(ve){if(Ie&&!n0(ve)){let mr=es(ve.name,!!ve.initializer||M);if(mr&&fs().push(...OOt(mr)),lg(ve)&&!_e){let ln=ri(ve,c.createThis());if(ln){let ni=c.createClassStaticBlockDeclaration(c.createBlock([ln]));return ua(ni,ve),yh(ni,ve),yh(ln,{pos:-1,end:-1}),LB(ln,void 0),O3(ln,void 0),ni}}return}return c.updatePropertyDeclaration(ve,Os(ve.modifiers,Gt,hg),Mr(ve.name,pr,PI),void 0,void 0,Mr(ve.initializer,it,un))}function yr(ve){return pe.assert(!h1(ve),"Decorators should already have been transformed and elided."),hC(ve)?Oo(ve):hc(ve)}function hn(){return Ee===-1||Ee===3&&!!Ct?.data&&!!(Ct.data.facts&16)}function Pi(ve){return n0(ve)&&(hn()||tm(ve)&&p1(ve)&32)?ba(ve):yr(ve)}function co(){return!!Lt&&tm(Lt)&&BB(Lt)&&n0(xd(Lt))}function pa(ve){if(co()){let mr=XI(ve);mr.kind===110&&yt.add(mr)}}function Pa(ve,mr){return mr=Mr(mr,it,un),pa(mr),$c(ve,mr)}function $c(ve,mr){switch(yh(mr,ek(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.getterName);case"m":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.methodName);case"f":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function Qu(ve){if(p(ve.name)){let mr=bu(ve.name);if(mr)return gn(ua(Pa(mr,ve.expression),ve),ve)}if(Te&&Lt&&Fy(ve)&&Ir(ve.name)&&Xde(Lt)&&Ct?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=Ct.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,c.createStringLiteralFromNode(ve.name),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,it,s)}function Rg(ve){if(Te&&Lt&&Fy(ve)&&Xde(Lt)&&Ct?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=Ct.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,Mr(ve.argumentExpression,it,un),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,it,s)}function Cs(ve,mr){if(ve.operator===46||ve.operator===47){let ln=JA(ve.operand);if(IW(ln)){let ni;if(ni=bu(ln.name)){let Ls=Mr(ln.expression,it,un);pa(Ls);let{readExpression:Za,initializeExpression:Go}=Wn(Ls),Ss=Pa(ni,Za),Uc=N0(ve)||mr?void 0:c.createTempVariable(d);return Ss=B9e(c,ve,Ss,d,Uc),Ss=hr(ni,Go||Za,Ss,64),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}else if(Te&&Lt&&Fy(ln)&&Xde(Lt)&&Ct?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=Ct.data;if(Za&1){let Go=ci(ln);return N0(ve)?c.updatePrefixUnaryExpression(ve,Go):c.updatePostfixUnaryExpression(ve,Go)}if(ni&&Ls){let Go,Ss;if(jo(ln)?Ir(ln.name)&&(Ss=Go=c.createStringLiteralFromNode(ln.name)):DN(ln.argumentExpression)?Ss=Go=ln.argumentExpression:(Ss=c.createTempVariable(d),Go=c.createAssignment(Ss,Mr(ln.argumentExpression,it,un))),Go&&Ss){let Uc=c.createReflectGetCall(Ls,Ss,ni);gn(Uc,ln);let el=mr?void 0:c.createTempVariable(d);return Uc=B9e(c,ve,Uc,d,el),Uc=c.createReflectSetCall(Ls,Go,Uc,ni),ua(Uc,ve),gn(Uc,ve),el&&(Uc=c.createComma(Uc,el),gn(Uc,ve)),Uc}}}}return _s(ve,it,s)}function Tu(ve){return c.updateForStatement(ve,Mr(ve.initializer,tr,_E),Mr(ve.condition,it,un),Mr(ve.incrementor,tr,un),Py(ve.statement,it,s))}function Wr(ve){return c.updateExpressionStatement(ve,Mr(ve.expression,tr,un))}function Wn(ve){let mr=ap(ve)?ve:c.cloneNode(ve);if(ve.kind===110&&yt.has(ve)&&yt.add(mr),DN(ve))return{readExpression:mr,initializeExpression:void 0};let ln=c.createTempVariable(d),ni=c.createAssignment(ln,mr);return{readExpression:ln,initializeExpression:ni}}function pt(ve){var mr;if(IW(ve.expression)&&bu(ve.expression.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.expression,d,V);return vB(ve)?c.updateCallChain(ve,c.createPropertyAccessChain(Mr(ni,it,un),ve.questionDotToken,"call"),void 0,void 0,[Mr(ln,it,un),...Os(ve.arguments,it,un)]):c.updateCallExpression(ve,c.createPropertyAccessExpression(Mr(ni,it,un),"call"),void 0,[Mr(ln,it,un),...Os(ve.arguments,it,un)])}if(Te&&Lt&&Fy(ve.expression)&&Xde(Lt)&&((mr=Ct?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionCallCall(Mr(ve.expression,it,un),Ct.data.classConstructor,Os(ve.arguments,it,un));return ua(ln,ve),gn(ln,ve),ln}return _s(ve,it,s)}function on(ve){var mr;if(IW(ve.tag)&&bu(ve.tag.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.tag,d,V);return c.updateTaggedTemplateExpression(ve,c.createCallExpression(c.createPropertyAccessExpression(Mr(ni,it,un),"bind"),void 0,[Mr(ln,it,un)]),void 0,Mr(ve.template,it,_W))}if(Te&&Lt&&Fy(ve.tag)&&Xde(Lt)&&((mr=Ct?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionBindCall(Mr(ve.tag,it,un),Ct.data.classConstructor,[]);return ua(ln,ve),gn(ln,ve),c.updateTaggedTemplateExpression(ve,ln,void 0,Mr(ve.template,it,_W))}return _s(ve,it,s)}function st(ve){if(Ct&&mt.set(xd(ve),Ct),_e){if(Qde(ve)){let ni=Mr(ve.body.statements[0].expression,it,un);return zm(ni,!0)&&ni.left===ni.right?void 0:ni}if(Xz(ve))return Mr(ve.body.statements[0].expression,it,un);_();let mr=Zn(ve,ni=>Os(ni,it,Lc),ve.body.statements);mr=c.mergeLexicalEnvironment(mr,h());let ln=c.createImmediatelyInvokedArrowFunction(mr);return ua(JA(ln.expression),ve),Ww(JA(ln.expression),4),ua(ln,ve),gn(ln,ve),ln}}function nr(ve){if(wd(ve)&&!ve.name){let mr=AVe(ve);return zt(mr,Xz)?!1:(_e||!!p1(ve))&&zt(mr,ni=>Al(ni)||hC(ni)||Ie&&r1e(ni))}return!1}function Zr(ve,mr){if(Zx(ve)){let ln=at;at=void 0,ve=c.updateBinaryExpression(ve,Mr(ve.left,Gr,un),ve.operatorToken,Mr(ve.right,it,un));let ni=zt(at)?c.inlineExpressions(Hr([...at,ve])):ve;return at=ln,ni}if(zm(ve)){Gb(ve,nr)&&(ve=y1(s,ve),pe.assertNode(ve,zm));let ln=XI(ve.left,9);if(IW(ln)){let ni=bu(ln.name);if(ni)return gn(ua(hr(ni,ln.expression,ve.right,ve.operatorToken.kind),ve),ve)}else if(Te&&Lt&&Fy(ve.left)&&Xde(Lt)&&Ct?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=Ct.data;if(Za&1)return c.updateBinaryExpression(ve,ci(ve.left),ve.operatorToken,Mr(ve.right,it,un));if(ni&&Ls){let Go=Qg(ve.left)?Mr(ve.left.argumentExpression,it,un):Ir(ve.left.name)?c.createStringLiteralFromNode(ve.left.name):void 0;if(Go){let Ss=Mr(ve.right,it,un);if(Mde(ve.operatorToken.kind)){let el=Go;DN(Go)||(el=c.createTempVariable(d),Go=c.createAssignment(el,Go));let Fd=c.createReflectGetCall(Ls,el,ni);ua(Fd,ve.left),gn(Fd,ve.left),Ss=c.createBinaryExpression(Fd,Hde(ve.operatorToken.kind),Ss),gn(Ss,ve)}let Uc=mr?void 0:c.createTempVariable(d);return Uc&&(Ss=c.createAssignment(Uc,Ss),gn(Uc,ve)),Ss=c.createReflectSetCall(Ls,Go,Ss,ni),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}}}return SBs(ve)?qt(ve):_s(ve,it,s)}function Kr(ve,mr){let ln=mr?t1e(ve.elements,tr):t1e(ve.elements,it,tr);return c.updateCommaListExpression(ve,ln)}function Dn(ve,mr){let ln=mr?tr:it,ni=Mr(ve.expression,ln,un);return c.updateParenthesizedExpression(ve,ni)}function hr(ve,mr,ln,ni){if(mr=Mr(mr,it,un),ln=Mr(ln,it,un),pa(mr),Mde(ni)){let{readExpression:Ls,initializeExpression:Za}=Wn(mr);mr=Za||Ls,ln=c.createBinaryExpression($c(ve,Ls),Hde(ni),ln)}switch(yh(mr,ek(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.setterName);case"m":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,void 0);case"f":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function Sn(ve){return Le(ve.members,n3t)}function Ni(ve){var mr;let ln=0,ni=xd(ve);xa(ni)&&Gx(ee,ni)&&(ln|=1),_e&&(ltt(ve)||fVe(ve))&&(ln|=2);let Ls=!1,Za=!1,Go=!1,Ss=!1;for(let el of ve.members)lg(el)?((el.name&&(p(el.name)||n0(el))&&_e||n0(el)&&Ee===-1&&!ve.name&&!((mr=ve.emitNode)!=null&&mr.classThis))&&(ln|=2),(pi(el)||Al(el))&&(Ne&&el.transformFlags&16384&&(ln|=8,ln&1||(ln|=2)),Te&&el.transformFlags&134217728&&(ln&1||(ln|=6)))):FW(xd(el))||(n0(el)?(Ss=!0,Go||(Go=hC(el))):hC(el)?(Go=!0,T.hasNodeCheckFlag(el,262144)&&(ln|=2)):pi(el)&&(Ls=!0,Za||(Za=!!el.initializer)));return(ge&&Ls||re&&Za||_e&&Go||_e&&Ss&&Ee===-1)&&(ln|=16),ln}function Gi(ve){var mr;if((((mr=Ct?.data)==null?void 0:mr.facts)||0)&4){let ni=c.createTempVariable(d,!0);return Ui().superClassReference=ni,c.updateExpressionWithTypeArguments(ve,c.createAssignment(ni,Mr(ve.expression,it,un)),void 0)}return _s(ve,it,s)}function nn(ve,mr){var ln;let ni=Rt,Ls=at,Za=Ct;Rt=ve,at=void 0,Oi();let Go=p1(ve)&32;if(_e||Go){let el=fl(ve);if(el&&Ir(el))gs().data.className=el;else if((ln=ve.emitNode)!=null&&ln.assignedName&&Lg(ve.emitNode.assignedName)){if(ve.emitNode.assignedName.textSourceNode&&Ir(ve.emitNode.assignedName.textSourceNode))gs().data.className=ve.emitNode.assignedName.textSourceNode;else if(qh(ve.emitNode.assignedName.text,V)){let Fd=c.createIdentifier(ve.emitNode.assignedName.text);gs().data.className=Fd}}}if(_e){let el=Sn(ve);zt(el)&&(gs().data.weakSetName=Ip("instances",el[0].name))}let Ss=Ni(ve);Ss&&(Ui().facts=Ss),Ss&8&&wn();let Uc=mr(ve,Ss);return Vn(),pe.assert(Ct===Za),Rt=ni,at=Ls,Uc}function En(ve){return nn(ve,ds)}function ds(ve,mr){var ln,ni;let Ls;if(mr&2)if(_e&&((ln=ve.emitNode)!=null&&ln.classThis))Ui().classConstructor=ve.emitNode.classThis,Ls=c.createAssignment(ve.emitNode.classThis,c.getInternalName(ve));else{let Zp=c.createTempVariable(d,!0);Ui().classConstructor=c.cloneNode(Zp),Ls=c.createAssignment(Zp,c.getInternalName(ve))}(ni=ve.emitNode)!=null&&ni.classThis&&(Ui().classThis=ve.emitNode.classThis);let Za=T.hasNodeCheckFlag(ve,262144),Go=Ga(ve,32),Ss=Ga(ve,2048),Uc=Os(ve.modifiers,Gt,hg),el=Os(ve.heritageClauses,ur,_1),{members:Fd,prologue:Vg}=fr(ve),Ef=[];if(Ls&&fs().unshift(Ls),zt(at)&&Ef.push(c.createExpressionStatement(c.inlineExpressions(at))),re||_e||p1(ve)&32){let Zp=AVe(ve);zt(Zp)&&$r(Ef,Zp,c.getInternalName(ve))}Ef.length>0&&Go&&Ss&&(Uc=Os(Uc,Zp=>FEe(Zp)?void 0:Zp,hg),Ef.push(c.createExportAssignment(void 0,!1,c.getLocalName(ve,!1,!0))));let om=Ui().classConstructor;Za&&om&&(tn(),Tt[My(ve)]=om);let Sh=c.updateClassDeclaration(ve,Uc,ve.name,void 0,el,Fd);return Ef.unshift(Sh),Vg&&Ef.unshift(c.createExpressionStatement(Vg)),Ef}function Ht(ve){return nn(ve,cn)}function cn(ve,mr){var ln,ni,Ls;let Za=!!(mr&1),Go=AVe(ve),Ss=T.hasNodeCheckFlag(ve,262144),Uc=T.hasNodeCheckFlag(ve,32768),el;function Fd(){var V_;if(_e&&((V_=ve.emitNode)!=null&&V_.classThis))return Ui().classConstructor=ve.emitNode.classThis;let y2=c.createTempVariable(Uc?R:d,!0);return Ui().classConstructor=c.cloneNode(y2),y2}(ln=ve.emitNode)!=null&&ln.classThis&&(Ui().classThis=ve.emitNode.classThis),mr&2&&(el??(el=Fd()));let Vg=Os(ve.modifiers,Gt,hg),Ef=Os(ve.heritageClauses,ur,_1),{members:om,prologue:Sh}=fr(ve),Zp=c.updateClassExpression(ve,Vg,ve.name,void 0,Ef,om),lh=[];if(Sh&&lh.push(Sh),(_e||p1(ve)&32)&&zt(Go,V_=>Al(V_)||hC(V_)||Ie&&r1e(V_))||zt(at))if(Za)pe.assertIsDefined(Qe,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),zt(at)&&Pr(Qe,lt(at,c.createExpressionStatement)),zt(Go)&&$r(Qe,Go,((ni=ve.emitNode)==null?void 0:ni.classThis)??c.getInternalName(ve)),el?lh.push(c.createAssignment(el,Zp)):_e&&((Ls=ve.emitNode)!=null&&Ls.classThis)?lh.push(c.createAssignment(ve.emitNode.classThis,Zp)):lh.push(Zp);else{if(el??(el=Fd()),Ss){tn();let V_=c.cloneNode(el);V_.emitNode.autoGenerate.flags&=-9,Tt[My(ve)]=V_}lh.push(c.createAssignment(el,Zp)),Pr(lh,at),Pr(lh,oo(Go,el)),lh.push(c.cloneNode(el))}else lh.push(Zp);return lh.length>1&&(Ww(Zp,131072),lh.forEach(k0)),c.inlineExpressions(lh)}function wt(ve){if(!_e)return _s(ve,it,s)}function xe(ve){if(Ne&&Lt&&Al(Lt)&&Ct?.data){let{classThis:mr,classConstructor:ln}=Ct.data;return mr??ln??ve}return ve}function fr(ve){let mr=!!(p1(ve)&32);if(_e||et){for(let Go of ve.members)if(hC(Go))if(Ic(Go))pI(Go,Go.name,bi);else{let Ss=gs();OU(Ss,Go.name,{kind:"untransformed"})}if(_e&&zt(Sn(ve))&&Ue(),hn()){for(let Go of ve.members)if(n0(Go)){let Ss=c.getGeneratedPrivateNameForNode(Go.name,void 0,"_accessor_storage");if(_e||mr&&tm(Go))pI(Go,Ss,mc);else{let Uc=gs();OU(Uc,Ss,{kind:"untransformed"})}}}}let ln=Os(ve.members,dt,MI),ni;zt(ln,Tc)||(ni=In(void 0,ve));let Ls,Za;if(!_e&&zt(at)){let Go=c.createExpressionStatement(c.inlineExpressions(at));if(Go.transformFlags&134234112){let Uc=c.createTempVariable(d),el=c.createArrowFunction(void 0,void 0,[],void 0,void 0,c.createBlock([Go]));Ls=c.createAssignment(Uc,el),Go=c.createExpressionStatement(c.createCallExpression(Uc,void 0,[]))}let Ss=c.createBlock([Go]);Za=c.createClassStaticBlockDeclaration(Ss),at=void 0}if(ni||Za){let Go,Ss=de(ln,Qde),Uc=de(ln,Xz);Go=Ft(Go,Ss),Go=Ft(Go,Uc),Go=Ft(Go,ni),Go=Ft(Go,Za);let el=Ss||Uc?Le(ln,Fd=>Fd!==Ss&&Fd!==Uc):ln;Go=Pr(Go,el),ln=gn(c.createNodeArray(Go),ve.members)}return{members:ln,prologue:Ls}}function Ue(){let{weakSetName:ve}=gs().data;pe.assert(ve,"weakSetName should be set in private identifier environment"),fs().push(c.createAssignment(ve,c.createNewExpression(c.createIdentifier("WeakSet"),void 0,[])))}function In(ve,mr){if(ve=Mr(ve,it,Tc),!Ct?.data||!(Ct.data.facts&16))return ve;let ln=DB(mr),ni=!!(ln&&XI(ln.expression).kind!==106),Ls=wI(ve?ve.parameters:void 0,it,s),Za=Mt(mr,ve,ni);return Za?ve?(pe.assert(Ls),c.updateConstructorDeclaration(ve,void 0,Ls,Za)):k0(ua(gn(c.createConstructorDeclaration(void 0,Ls??[],Za),ve||mr),ve)):ve}function Hn(ve,mr,ln,ni,Ls,Za,Go){let Ss=ni[Ls],Uc=mr[Ss];if(Pr(ve,Os(mr,it,Lc,ln,Ss-ln)),ln=Ss+1,DU(Uc)){let el=[];Hn(el,Uc.tryBlock.statements,0,ni,Ls+1,Za,Go);let Fd=c.createNodeArray(el);gn(Fd,Uc.tryBlock.statements),ve.push(c.updateTryStatement(Uc,c.updateBlock(Uc.tryBlock,el),Mr(Uc.catchClause,it,fQ),Mr(Uc.finallyBlock,it,eg)))}else{for(Pr(ve,Os(mr,it,Lc,Ss,1));ln!!Sh.initializer||p(Sh.name)||Fw(Sh)));let Go=Sn(ve),Ss=zt(Za)||zt(Go);if(!mr&&!Ss)return pS(void 0,it,s);S();let Uc=!mr&&ln,el=0,Fd=[],Vg=[],Ef=c.createThis();if(Mn(Vg,Go,Ef),mr){let Sh=Le(Ls,lh=>We(xd(lh),mr)),Zp=Le(Za,lh=>!We(xd(lh),mr));$r(Vg,Sh,Ef),$r(Vg,Zp,Ef)}else $r(Vg,Za,Ef);if(mr?.body){el=c.copyPrologue(mr.body.statements,Fd,!1,it);let Sh=gVe(mr.body.statements,el);if(Sh.length)Hn(Fd,mr.body.statements,el,Sh,0,Vg,mr);else{for(;el=Fd.length?mr.body.multiLine??Fd.length>0:Fd.length>0;return gn(c.createBlock(gn(c.createNodeArray(Fd),((ni=mr?.body)==null?void 0:ni.statements)??ve.members),om),mr?.body)}function $r(ve,mr,ln){for(let ni of mr){if(lg(ni)&&!_e)continue;let Ls=ri(ni,ln);Ls&&ve.push(Ls)}}function ri(ve,mr){let ln=Al(ve)?Zn(ve,st,ve):Bs(ve,mr);if(!ln)return;let ni=c.createExpressionStatement(ln);ua(ni,ve),Ww(ni,rA(ve)&3072),yh(ni,ve);let Ls=xd(ve);return Si(Ls)?(Yg(ni,Ls),Tz(ni)):Yg(ni,Iv(ve)),LB(ln,void 0),O3(ln,void 0),Fw(Ls)&&Ww(ni,3072),ni}function oo(ve,mr){let ln=[];for(let ni of ve){let Ls=Al(ni)?Zn(ni,st,ni):Zn(ni,()=>Bs(ni,mr),void 0);Ls&&(k0(Ls),ua(Ls,ni),Ww(Ls,rA(ni)&3072),Yg(Ls,Iv(ni)),yh(Ls,ni),ln.push(Ls))}return ln}function Bs(ve,mr){var ln;let ni=Lt,Ls=Ys(ve,mr);return Ls&&tm(ve)&&((ln=Ct?.data)!=null&&ln.facts)&&(ua(Ls,ve),Ww(Ls,4),Yg(Ls,zT(ve.name)),mt.set(xd(ve),Ct)),Lt=ni,Ls}function Ys(ve,mr){let ln=!M;Gb(ve,nr)&&(ve=y1(s,ve));let ni=Fw(ve)?c.getGeneratedPrivateNameForNode(ve.name):Un(ve.name)&&!DN(ve.name.expression)?c.updateComputedPropertyName(ve.name,c.getGeneratedNameForNode(ve.name)):ve.name;if(tm(ve)&&(Lt=ve),p(ni)&&Ic(ve)){let Go=bu(ni);if(Go)return Go.kind==="f"?Go.isStatic?_Bs(c,Go.variableName,Mr(ve.initializer,it,un)):yBs(c,mr,Mr(ve.initializer,it,un),Go.brandCheckIdentifier):void 0;pe.fail("Undeclared private name for property declaration.")}if((p(ni)||tm(ve))&&!ve.initializer)return;let Ls=xd(ve);if(Ga(Ls,64))return;let Za=Mr(ve.initializer,it,un);if(We(Ls,Ls.parent)&&Ir(ni)){let Go=c.cloneNode(ni);Za?(dI(Za)&&DEe(Za.expression)&&nk(Za.expression.left,"___runInitializers")&&nR(Za.expression.right)&&yC(Za.expression.right.expression)&&(Za=Za.expression.left),Za=c.inlineExpressions([Za,Go])):Za=Go,ti(ni,3168),Yg(Go,Ls.name),ti(Go,3072)}else Za??(Za=c.createVoidZero());if(ln||p(ni)){let Go=ZU(c,mr,ni,ni);return Ww(Go,1024),c.createAssignment(Go,Za)}else{let Go=Un(ni)?ni.expression:Ir(ni)?c.createStringLiteral(Bc(ni.escapedText)):ni,Ss=c.createPropertyDescriptor({value:Za,configurable:!0,writable:!0,enumerable:!0});return c.createObjectDefinePropertyCall(mr,Go,Ss)}}function tn(){Ye&1||(Ye|=1,s.enableSubstitution(80),Tt=[])}function wn(){Ye&2||(Ye|=2,s.enableSubstitution(110),s.enableEmitNotification(263),s.enableEmitNotification(219),s.enableEmitNotification(177),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(175),s.enableEmitNotification(173),s.enableEmitNotification(168))}function Mn(ve,mr,ln){if(!_e||!zt(mr))return;let{weakSetName:ni}=gs().data;pe.assert(ni,"weakSetName should be set in private identifier environment"),ve.push(c.createExpressionStatement(bBs(c,ln,ni)))}function ci(ve){return jo(ve)?c.updatePropertyAccessExpression(ve,c.createVoidZero(),ve.name):c.updateElementAccessExpression(ve,c.createVoidZero(),Mr(ve.argumentExpression,it,un))}function es(ve,mr){if(Un(ve)){let ln=k9e(ve),ni=Mr(ve.expression,it,un),Ls=l2(ni),Za=DN(Ls);if(!(!!ln||zm(Ls)&&Gp(Ls.left))&&!Za&&mr){let Ss=c.getGeneratedNameForNode(ve);return T.hasNodeCheckFlag(ve,32768)?R(Ss):d(Ss),c.createAssignment(Ss,ni)}return Za||Ir(Ls)?void 0:ni}}function Oi(){Ct={previous:Ct,data:void 0}}function Vn(){Ct=Ct?.previous}function Ui(){return pe.assert(Ct),Ct.data??(Ct.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function gs(){return pe.assert(Ct),Ct.privateEnv??(Ct.privateEnv=s3t({className:void 0,weakSetName:void 0}))}function fs(){return at??(at=[])}function bi(ve,mr,ln,ni,Ls,Za,Go){n0(ve)?RI(ve,mr,ln,ni,Ls,Za,Go):pi(ve)?mc(ve,mr,ln,ni,Ls,Za,Go):gu(ve)?Ag(ve,mr,ln,ni,Ls,Za,Go):wg(ve)?dg(ve,mr,ln,ni,Ls,Za,Go):kg(ve)&&yu(ve,mr,ln,ni,Ls,Za,Go)}function mc(ve,mr,ln,ni,Ls,Za,Go){if(Ls){let Ss=pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"),Uc=kl(mr);OU(ni,mr,{kind:"f",isStatic:!0,brandCheckIdentifier:Ss,variableName:Uc,isValid:Za})}else{let Ss=kl(mr);OU(ni,mr,{kind:"f",isStatic:!1,brandCheckIdentifier:Ss,isValid:Za}),fs().push(c.createAssignment(Ss,c.createNewExpression(c.createIdentifier("WeakMap"),void 0,[])))}}function Ag(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");OU(ni,mr,{kind:"m",methodName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function dg(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr,"_get"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.getterName?Go.getterName=Ss:OU(ni,mr,{kind:"a",getterName:Ss,setterName:void 0,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function yu(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr,"_set"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.setterName?Go.setterName=Ss:OU(ni,mr,{kind:"a",getterName:void 0,setterName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function RI(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr,"_get"),Uc=kl(mr,"_set"),el=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");OU(ni,mr,{kind:"a",getterName:Ss,setterName:Uc,brandCheckIdentifier:el,isStatic:Ls,isValid:Za})}function pI(ve,mr,ln){let ni=Ui(),Ls=gs(),Za=ctt(Ls,mr),Go=tm(ve),Ss=!EBs(mr)&&Za===void 0;ln(ve,mr,ni,Ls,Go,Ss,Za)}function Ip(ve,mr,ln){let{className:ni}=gs().data,Ls=ni?{prefix:"_",node:ni,suffix:"_"}:"_",Za=typeof ve=="object"?c.getGeneratedNameForNode(ve,24,Ls,ln):typeof ve=="string"?c.createUniqueName(ve,16,Ls,ln):c.createTempVariable(void 0,!0,Ls,ln);return T.hasNodeCheckFlag(mr,32768)?R(Za):d(Za),Za}function kl(ve,mr){let ln=YY(ve);return Ip(ln?.substring(1)??ve,ve,mr)}function bu(ve){let mr=o3t(Ct,ve);return mr?.kind==="untransformed"?void 0:mr}function sm(ve){let mr=c.getGeneratedNameForNode(ve),ln=bu(ve.name);if(!ln)return _s(ve,it,s);let ni=ve.expression;return(dne(ve)||Fy(ve)||!_Q(ve.expression))&&(ni=c.createTempVariable(d,!0),fs().push(c.createBinaryExpression(ni,64,Mr(ve.expression,it,un)))),c.createAssignmentTargetWrapper(mr,hr(ln,ni,mr,64))}function qp(ve){if(ag(ve)||YI(ve))return oi(ve);if(IW(ve))return sm(ve);if(Te&&Lt&&Fy(ve)&&Xde(Lt)&&Ct?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=Ct.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=Qg(ve)?Mr(ve.argumentExpression,it,un):Ir(ve.name)?c.createStringLiteralFromNode(ve.name):void 0;if(Ls){let Za=c.createTempVariable(void 0);return c.createAssignmentTargetWrapper(Za,c.createReflectSetCall(ln,Ls,Za,mr))}}}return _s(ve,it,s)}function Jg(ve){if(Gb(ve,nr)&&(ve=y1(s,ve)),zm(ve,!0)){let mr=qp(ve.left),ln=Mr(ve.right,it,un);return c.updateBinaryExpression(ve,mr,ve.operatorToken,ln)}return qp(ve)}function ch(ve){if(x_(ve.expression)){let mr=qp(ve.expression);return c.updateSpreadElement(ve,mr)}return _s(ve,it,s)}function hS(ve){if(ZJ(ve)){if(cf(ve))return ch(ve);if(!Ep(ve))return Jg(ve)}return _s(ve,it,s)}function Au(ve){let mr=Mr(ve.name,it,PI);if(zm(ve.initializer,!0)){let ln=Jg(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}if(x_(ve.initializer)){let ln=qp(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}return _s(ve,it,s)}function Eg(ve){return Gb(ve,nr)&&(ve=y1(s,ve)),_s(ve,it,s)}function zA(ve){if(x_(ve.expression)){let mr=qp(ve.expression);return c.updateSpreadAssignment(ve,mr)}return _s(ve,it,s)}function NA(ve){return pe.assertNode(ve,CW),Mx(ve)?zA(ve):l0(ve)?Eg(ve):Cm(ve)?Au(ve):_s(ve,it,s)}function oi(ve){return YI(ve)?c.updateArrayLiteralExpression(ve,Os(ve.elements,hS,un)):c.updateObjectLiteralExpression(ve,Os(ve.properties,NA,Bw))}function tp(ve,mr,ln){let ni=xd(mr),Ls=mt.get(ni);if(Ls){let Za=Ct,Go=Wt;Ct=Ls,Wt=je,je=!Al(ni)||!(p1(ni)&32),Ke(ve,mr,ln),je=Wt,Wt=Go,Ct=Za;return}switch(mr.kind){case 219:if(uA(ni)||rA(mr)&524288)break;case 263:case 177:case 178:case 179:case 175:case 173:{let Za=Ct,Go=Wt;Ct=void 0,Wt=je,je=!1,Ke(ve,mr,ln),je=Wt,Wt=Go,Ct=Za;return}case 168:{let Za=Ct,Go=je;Ct=Ct?.previous,je=Wt,Ke(ve,mr,ln),je=Go,Ct=Za;return}}Ke(ve,mr,ln)}function JI(ve,mr){return mr=Pe(ve,mr),ve===1?Wh(mr):mr}function Wh(ve){switch(ve.kind){case 80:return bf(ve);case 110:return MC(ve)}return ve}function MC(ve){if(Ye&2&&Ct?.data&&!yt.has(ve)){let{facts:mr,classConstructor:ln,classThis:ni}=Ct.data,Ls=je?ni??ln:ln;if(Ls)return gn(ua(c.cloneNode(Ls),ve),ve);if(mr&1&&ee)return c.createParenthesizedExpression(c.createVoidZero())}return ve}function bf(ve){return UI(ve)||ve}function UI(ve){if(Ye&1&&T.hasNodeCheckFlag(ve,536870912)){let mr=T.getReferencedValueDeclaration(ve);if(mr){let ln=Tt[mr.id];if(ln){let ni=c.cloneNode(ln);return Yg(ni,ve),yh(ni,ve),ni}}}}}function _Bs(s,c,g){return s.createAssignment(c,s.createObjectLiteralExpression([s.createPropertyAssignment("value",g||s.createVoidZero())]))}function yBs(s,c,g,d){return s.createCallExpression(s.createPropertyAccessExpression(d,"set"),void 0,[c,g||s.createVoidZero()])}function bBs(s,c,g){return s.createCallExpression(s.createPropertyAccessExpression(g,"add"),void 0,[c])}function EBs(s){return!FL(s)&&s.escapedText==="#constructor"}function SBs(s){return p(s.left)&&s.operatorToken.kind===103}function vBs(s){return pi(s)&&tm(s)}function Xde(s){return Al(s)||vBs(s)}function I3t(s){let{factory:c,hoistVariableDeclaration:g}=s,d=s.getEmitResolver(),h=s.getCompilerOptions(),_=Hg(h),S=l_(h,"strictNullChecks"),R,T;return{serializeTypeNode:(at,Qe)=>O(at,Ie,Qe),serializeTypeOfNode:(at,Qe,Ct)=>O(at,M,Qe,Ct),serializeParameterTypesOfNode:(at,Qe,Ct)=>O(at,ee,Qe,Ct),serializeReturnTypeOfNode:(at,Qe)=>O(at,ge,Qe)};function O(at,Qe,Ct,mt){let yt=R,Rt=T;R=at.currentLexicalScope,T=at.currentNameScope;let Lt=mt===void 0?Qe(Ct):Qe(Ct,mt);return R=yt,T=Rt,Lt}function V(at,Qe){let Ct=GW(Qe.members,at);return Ct.setAccessor&&eLe(Ct.setAccessor)||Ct.getAccessor&&Fb(Ct.getAccessor)}function M(at,Qe){switch(at.kind){case 173:case 170:return Ie(at.type);case 179:case 178:return Ie(V(at,Qe));case 264:case 232:case 175:return c.createIdentifier("Function");default:return c.createVoidZero()}}function ee(at,Qe){let Ct=xa(at)?pN(at):Eu(at)&&d1(at.body)?at:void 0,mt=[];if(Ct){let yt=re(Ct,Qe),Rt=yt.length;for(let Lt=0;Ltyt.parent&&I2(yt.parent)&&(yt.parent.trueType===yt||yt.parent.falseType===yt)))return c.createIdentifier("Object");let Ct=Pe(at.typeName),mt=c.createTempVariable(g);return c.createConditionalExpression(c.createTypeCheck(c.createAssignment(mt,Ct),"function"),void 0,mt,void 0,c.createIdentifier("Object"));case 1:return Ke(at.typeName);case 2:return c.createVoidZero();case 4:return Tt("BigInt",7);case 6:return c.createIdentifier("Boolean");case 3:return c.createIdentifier("Number");case 5:return c.createIdentifier("String");case 7:return c.createIdentifier("Array");case 8:return Tt("Symbol",2);case 10:return c.createIdentifier("Function");case 9:return c.createIdentifier("Promise");case 11:return c.createIdentifier("Object");default:return pe.assertNever(Qe)}}function Ze(at,Qe){return c.createLogicalAnd(c.createStrictInequality(c.createTypeOfExpression(at),c.createStringLiteral("undefined")),Qe)}function Pe(at){if(at.kind===80){let mt=Ke(at);return Ze(mt,mt)}if(at.left.kind===80)return Ze(Ke(at.left),Ke(at));let Qe=Pe(at.left),Ct=c.createTempVariable(g);return c.createLogicalAnd(c.createLogicalAnd(Qe.left,c.createStrictInequality(c.createAssignment(Ct,Qe.right),c.createVoidZero())),c.createPropertyAccessExpression(Ct,at.right))}function Ke(at){switch(at.kind){case 80:let Qe=UA(gn(j3.cloneNode(at),at),at.parent);return Qe.original=void 0,UA(Qe,eu(R)),Qe;case 167:return et(at)}}function et(at){return c.createPropertyAccessExpression(Ke(at.left),at.right)}function Ye(at){return c.createConditionalExpression(c.createTypeCheck(c.createIdentifier(at),"function"),void 0,c.createIdentifier(at),void 0,c.createIdentifier("Object"))}function Tt(at,Qe){return _FEe(hn)||So(hn)?void 0:hn,fp),Ns=Iv(Yt),An=ur(Yt),si=S<2?c.getInternalName(Yt,!1,!0):c.getLocalName(Yt,!1,!0),ks=Os(Yt.heritageClauses,M,_1),Ic=Os(Yt.members,M,MI),ou=[];({members:Ic,decorationStatements:ou}=_e(Yt,Ic));let Zn=S>=9&&!!An&&zt(Ic,hn=>pi(hn)&&Ga(hn,256)||Al(hn));Zn&&(Ic=gn(c.createNodeArray([c.createClassStaticBlockDeclaration(c.createBlock([c.createExpressionStatement(c.createAssignment(An,c.createThis()))])),...Ic]),Ic));let ya=c.createClassExpression(Zi,Tr&&Gp(Tr)?void 0:Tr,void 0,ks,Ic);ua(ya,Yt),gn(ya,Ns);let Fl=An&&!Zn?c.createAssignment(An,ya):ya,ba=c.createVariableDeclaration(si,void 0,void 0,Fl);ua(ba,Yt);let Oo=c.createVariableDeclarationList([ba],1),hc=c.createVariableStatement(void 0,Oo);ua(hc,Yt),gn(hc,Ns),yh(hc,Yt);let yr=[hc];if(Pr(yr,ou),Wt(yr,Yt),Cn)if(jn){let hn=c.createExportDefault(si);yr.push(hn)}else{let hn=c.createExternalModuleExport(c.getDeclarationName(Yt));yr.push(hn)}return yr}function Te(Yt){return c.updateClassExpression(Yt,Os(Yt.modifiers,V,hg),Yt.name,void 0,Os(Yt.heritageClauses,M,_1),Os(Yt.members,M,MI))}function Ze(Yt){return c.updateConstructorDeclaration(Yt,Os(Yt.modifiers,V,hg),Os(Yt.parameters,M,Si),Mr(Yt.body,M,eg))}function Pe(Yt,Tr){return Yt!==Tr&&(yh(Yt,Tr),Yg(Yt,Iv(Tr))),Yt}function Ke(Yt){return Pe(c.updateMethodDeclaration(Yt,Os(Yt.modifiers,V,hg),Yt.asteriskToken,pe.checkDefined(Mr(Yt.name,M,PI)),void 0,void 0,Os(Yt.parameters,M,Si),void 0,Mr(Yt.body,M,eg)),Yt)}function et(Yt){return Pe(c.updateGetAccessorDeclaration(Yt,Os(Yt.modifiers,V,hg),pe.checkDefined(Mr(Yt.name,M,PI)),Os(Yt.parameters,M,Si),void 0,Mr(Yt.body,M,eg)),Yt)}function Ye(Yt){return Pe(c.updateSetAccessorDeclaration(Yt,Os(Yt.modifiers,V,hg),pe.checkDefined(Mr(Yt.name,M,PI)),Os(Yt.parameters,M,Si),Mr(Yt.body,M,eg)),Yt)}function Tt(Yt){if(!(Yt.flags&33554432||Ga(Yt,128)))return Pe(c.updatePropertyDeclaration(Yt,Os(Yt.modifiers,V,hg),pe.checkDefined(Mr(Yt.name,M,PI)),void 0,void 0,Mr(Yt.initializer,M,un)),Yt)}function at(Yt){let Tr=c.updateParameterDeclaration(Yt,LOt(c,Yt.modifiers),Yt.dotDotDotToken,pe.checkDefined(Mr(Yt.name,M,ZL)),void 0,void 0,Mr(Yt.initializer,M,un));return Tr!==Yt&&(yh(Tr,Yt),gn(Tr,Iv(Yt)),Yg(Tr,Iv(Yt)),ti(Tr.name,64)),Tr}function Qe(Yt){return nk(Yt.expression,"___metadata")}function Ct(Yt){if(!Yt)return;let{false:Tr,true:Cn}=Ko(Yt.decorators,Qe),jn=[];return Pr(jn,lt(Tr,Gt)),Pr(jn,jt(Yt.parameters,it)),Pr(jn,lt(Cn,Gt)),jn}function mt(Yt,Tr,Cn){Pr(Yt,lt(Lt(Tr,Cn),jn=>c.createExpressionStatement(jn)))}function yt(Yt,Tr,Cn){return fne(!0,Yt,Cn)&&Tr===lg(Yt)}function Rt(Yt,Tr){return Le(Yt.members,Cn=>yt(Cn,Tr,Yt))}function Lt(Yt,Tr){let Cn=Rt(Yt,Tr),jn;for(let Zi of Cn)jn=Ft(jn,je(Yt,Zi));return jn}function je(Yt,Tr){let Cn=dVe(Tr,Yt,!0),jn=Ct(Cn);if(!jn)return;let Zi=dt(Yt,Tr),Ns=kt(Tr,!Ga(Tr,128)),An=pi(Tr)&&!Fw(Tr)?c.createVoidZero():c.createNull(),si=g().createDecorateHelper(jn,Zi,Ns,An);return ti(si,3072),Yg(si,Iv(Tr)),si}function Wt(Yt,Tr){let Cn=_r(Tr);Cn&&Yt.push(ua(c.createExpressionStatement(Cn),Tr))}function _r(Yt){let Tr=att(Yt,!0),Cn=Ct(Tr);if(!Cn)return;let jn=T&&T[My(Yt)],Zi=S<2?c.getInternalName(Yt,!1,!0):c.getDeclarationName(Yt,!1,!0),Ns=g().createDecorateHelper(Cn,Zi),An=c.createAssignment(Zi,jn?c.createAssignment(jn,Ns):Ns);return ti(An,3072),Yg(An,Iv(Yt)),An}function Gt(Yt){return pe.checkDefined(Mr(Yt.expression,M,un))}function it(Yt,Tr){let Cn;if(Yt){Cn=[];for(let jn of Yt){let Zi=g().createParamHelper(Gt(jn),Tr);gn(Zi,jn.expression),ti(Zi,3072),Cn.push(Zi)}}return Cn}function kt(Yt,Tr){let Cn=Yt.name;return p(Cn)?c.createIdentifier(""):Un(Cn)?Tr&&!DN(Cn.expression)?c.getGeneratedNameForNode(Cn):Cn.expression:Ir(Cn)?c.createStringLiteral(Vo(Cn)):c.cloneNode(Cn)}function tr(){T||(s.enableSubstitution(80),T=[])}function ur(Yt){if(h.hasNodeCheckFlag(Yt,262144)){tr();let Tr=c.createUniqueName(Yt.name&&!Gp(Yt.name)?Vo(Yt.name):"default");return T[My(Yt)]=Tr,d(Tr),Tr}}function Gr(Yt){return c.createPropertyAccessExpression(c.getDeclarationName(Yt),"prototype")}function dt(Yt,Tr){return lg(Tr)?c.getDeclarationName(Yt):Gr(Yt)}function pr(Yt,Tr){return Tr=R(Yt,Tr),Yt===1?ot(Tr):Tr}function ot(Yt){switch(Yt.kind){case 80:return ir(Yt)}return Yt}function ir(Yt){return qt(Yt)??Yt}function qt(Yt){if(T&&h.hasNodeCheckFlag(Yt,536870912)){let Tr=h.getReferencedValueDeclaration(Yt);if(Tr){let Cn=T[Tr.id];if(Cn){let jn=c.cloneNode(Cn);return Yg(jn,Yt),yh(jn,Yt),jn}}}}}function m3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=Hg(s.getCompilerOptions()),R,T,O,V,M,ee;return aR(s,re);function re(xe){R=void 0,ee=!1;let fr=_s(xe,Ye,s);return bN(fr,s.readEmitHelpers()),ee&&(L3(fr,32),ee=!1),fr}function ge(){switch(T=void 0,O=void 0,V=void 0,R?.kind){case"class":T=R.classInfo;break;case"class-element":T=R.next.classInfo,O=R.classThis,V=R.classSuper;break;case"name":let xe=R.next.next.next;xe?.kind==="class-element"&&(T=xe.next.classInfo,O=xe.classThis,V=xe.classSuper);break}}function Ie(xe){R={kind:"class",next:R,classInfo:xe,savedPendingExpressions:M},M=void 0,ge()}function _e(){pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),M=R.savedPendingExpressions,R=R.next,ge()}function Ee(xe){var fr,Ue;pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),R={kind:"class-element",next:R},(Al(xe)||pi(xe)&&tm(xe))&&(R.classThis=(fr=R.next.classInfo)==null?void 0:fr.classThis,R.classSuper=(Ue=R.next.classInfo)==null?void 0:Ue.classSuper),ge()}function Ne(){var xe;pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),pe.assert(((xe=R.next)==null?void 0:xe.kind)==="class","Incorrect value for top.next.kind.",()=>{var fr;return`Expected top.next.kind to be 'class' but got '${(fr=R.next)==null?void 0:fr.kind}' instead.`}),R=R.next,ge()}function Te(){pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),R={kind:"name",next:R},ge()}function Ze(){pe.assert(R?.kind==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${R?.kind}' instead.`),R=R.next,ge()}function Pe(){R?.kind==="other"?(pe.assert(!M),R.depth++):(R={kind:"other",next:R,depth:0,savedPendingExpressions:M},M=void 0,ge())}function Ke(){pe.assert(R?.kind==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${R?.kind}' instead.`),R.depth>0?(pe.assert(!M),R.depth--):(M=R.savedPendingExpressions,R=R.next,ge())}function et(xe){return!!(xe.transformFlags&33554432)||!!O&&!!(xe.transformFlags&16384)||!!O&&!!V&&!!(xe.transformFlags&134217728)}function Ye(xe){if(!et(xe))return xe;switch(xe.kind){case 171:return pe.fail("Use `modifierVisitor` instead.");case 264:return _r(xe);case 232:return Gt(xe);case 177:case 173:case 176:return pe.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 170:return Ns(xe);case 227:return ou(xe,!1);case 304:return hc(xe);case 261:return yr(xe);case 209:return hn(xe);case 278:return Wr(xe);case 110:return Yt(xe);case 249:return ks(xe);case 245:return Ic(xe);case 357:return ya(xe,!1);case 218:return Wn(xe,!1);case 356:return pt(xe,!1);case 214:return Tr(xe);case 216:return Cn(xe);case 225:case 226:return Zn(xe,!1);case 212:return jn(xe);case 213:return Zi(xe);case 168:return Oo(xe);case 175:case 179:case 178:case 219:case 263:{Pe();let fr=_s(xe,Tt,s);return Ke(),fr}default:return _s(xe,Tt,s)}}function Tt(xe){switch(xe.kind){case 171:return;default:return Ye(xe)}}function at(xe){switch(xe.kind){case 171:return;default:return xe}}function Qe(xe){switch(xe.kind){case 177:return tr(xe);case 175:return dt(xe);case 178:return pr(xe);case 179:return ot(xe);case 173:return qt(xe);case 176:return ir(xe);default:return Ye(xe)}}function Ct(xe){switch(xe.kind){case 225:case 226:return Zn(xe,!0);case 227:return ou(xe,!0);case 357:return ya(xe,!0);case 218:return Wn(xe,!0);default:return Ye(xe)}}function mt(xe){let fr=xe.name&&Ir(xe.name)&&!Gp(xe.name)?Vo(xe.name):xe.name&&p(xe.name)&&!Gp(xe.name)?Vo(xe.name).slice(1):xe.name&&Lg(xe.name)&&qh(xe.name.text,99)?xe.name.text:xa(xe)?"class":"member";return wB(xe)&&(fr=`get_${fr}`),Av(xe)&&(fr=`set_${fr}`),xe.name&&p(xe.name)&&(fr=`private_${fr}`),lg(xe)&&(fr=`static_${fr}`),"_"+fr}function yt(xe,fr){return c.createUniqueName(`${mt(xe)}_${fr}`,24)}function Rt(xe,fr){return c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(xe,void 0,void 0,fr)],1))}function Lt(xe){let fr=c.createUniqueName("_metadata",48),Ue,In,Hn=!1,Mt=!1,$r=!1,ri,oo,Bs;if(tU(!1,xe)){let Ys=zt(xe.members,tn=>(hC(tn)||n0(tn))&&tm(tn));ri=c.createUniqueName("_classThis",Ys?24:48)}for(let Ys of xe.members){if(LL(Ys)&&fne(!1,Ys,xe))if(tm(Ys)){if(!In){In=c.createUniqueName("_staticExtraInitializers",48);let tn=g().createRunInitializersHelper(ri??c.createThis(),In);Yg(tn,xe.name??tk(xe)),oo??(oo=[]),oo.push(tn)}}else{if(!Ue){Ue=c.createUniqueName("_instanceExtraInitializers",48);let tn=g().createRunInitializersHelper(c.createThis(),Ue);Yg(tn,xe.name??tk(xe)),Bs??(Bs=[]),Bs.push(tn)}Ue??(Ue=c.createUniqueName("_instanceExtraInitializers",48))}if(Al(Ys)?Xz(Ys)||(Hn=!0):pi(Ys)&&(tm(Ys)?Hn||(Hn=!!Ys.initializer||h1(Ys)):Mt||(Mt=!zJ(Ys))),(hC(Ys)||n0(Ys))&&tm(Ys)&&($r=!0),In&&Ue&&Hn&&Mt&&$r)break}return{class:xe,classThis:ri,metadataReference:fr,instanceMethodExtraInitializersName:Ue,staticMethodExtraInitializersName:In,hasStaticInitializers:Hn,hasNonAmbientInstanceFields:Mt,hasStaticPrivateClassElements:$r,pendingStaticInitializers:oo,pendingInstanceInitializers:Bs}}function je(xe){d(),!utt(xe)&&Gx(!1,xe)&&(xe=IVe(s,xe,c.createStringLiteral("")));let fr=c.getLocalName(xe,!1,!1,!0),Ue=Lt(xe),In=[],Hn,Mt,$r,ri,oo=!1,Bs=Zr(att(xe,!1));Bs&&(Ue.classDecoratorsName=c.createUniqueName("_classDecorators",48),Ue.classDescriptorName=c.createUniqueName("_classDescriptor",48),Ue.classExtraInitializersName=c.createUniqueName("_classExtraInitializers",48),pe.assertIsDefined(Ue.classThis),In.push(Rt(Ue.classDecoratorsName,c.createArrayLiteralExpression(Bs)),Rt(Ue.classDescriptorName),Rt(Ue.classExtraInitializersName,c.createArrayLiteralExpression()),Rt(Ue.classThis)),Ue.hasStaticPrivateClassElements&&(oo=!0,ee=!0));let Ys=kne(xe.heritageClauses,96),tn=Ys&&Nc(Ys.types),wn=tn&&Mr(tn.expression,Ye,un);if(wn){Ue.classSuper=c.createUniqueName("_classSuper",48);let gs=XI(wn),fs=wd(gs)&&!gs.name||jA(gs)&&!gs.name||uA(gs)?c.createComma(c.createNumericLiteral(0),wn):wn;In.push(Rt(Ue.classSuper,fs));let bi=c.updateExpressionWithTypeArguments(tn,Ue.classSuper,void 0),mc=c.updateHeritageClause(Ys,[bi]);ri=c.createNodeArray([mc])}let Mn=Ue.classThis??c.createThis();Ie(Ue),Hn=Ft(Hn,Ht(Ue.metadataReference,Ue.classSuper));let ci=xe.members;if(ci=Os(ci,gs=>Tc(gs)?gs:Qe(gs),MI),ci=Os(ci,gs=>Tc(gs)?Qe(gs):gs,MI),M){let gs;for(let fs of M){fs=Mr(fs,function mc(Ag){if(!(Ag.transformFlags&16384))return Ag;switch(Ag.kind){case 110:return gs||(gs=c.createUniqueName("_outerThis",16),In.unshift(Rt(gs,c.createThis()))),gs;default:return _s(Ag,mc,s)}},un);let bi=c.createExpressionStatement(fs);Hn=Ft(Hn,bi)}M=void 0}if(_e(),zt(Ue.pendingInstanceInitializers)&&!pN(xe)){let gs=it(xe,Ue);if(gs){let fs=DB(xe),bi=!!(fs&&XI(fs.expression).kind!==106),mc=[];if(bi){let dg=c.createSpreadElement(c.createIdentifier("arguments")),yu=c.createCallExpression(c.createSuper(),void 0,[dg]);mc.push(c.createExpressionStatement(yu))}Pr(mc,gs);let Ag=c.createBlock(mc,!0);$r=c.createConstructorDeclaration(void 0,[],Ag)}}if(Ue.staticMethodExtraInitializersName&&In.push(Rt(Ue.staticMethodExtraInitializersName,c.createArrayLiteralExpression())),Ue.instanceMethodExtraInitializersName&&In.push(Rt(Ue.instanceMethodExtraInitializersName,c.createArrayLiteralExpression())),Ue.memberInfos&&Fh(Ue.memberInfos,(gs,fs)=>{lg(fs)&&(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Ue.memberInfos&&Fh(Ue.memberInfos,(gs,fs)=>{lg(fs)||(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Hn=Pr(Hn,Ue.staticNonFieldDecorationStatements),Hn=Pr(Hn,Ue.nonStaticNonFieldDecorationStatements),Hn=Pr(Hn,Ue.staticFieldDecorationStatements),Hn=Pr(Hn,Ue.nonStaticFieldDecorationStatements),Ue.classDescriptorName&&Ue.classDecoratorsName&&Ue.classExtraInitializersName&&Ue.classThis){Hn??(Hn=[]);let gs=c.createPropertyAssignment("value",Mn),fs=c.createObjectLiteralExpression([gs]),bi=c.createAssignment(Ue.classDescriptorName,fs),mc=c.createPropertyAccessExpression(Mn,"name"),Ag=g().createESDecorateHelper(c.createNull(),bi,Ue.classDecoratorsName,{kind:"class",name:mc,metadata:Ue.metadataReference},c.createNull(),Ue.classExtraInitializersName),dg=c.createExpressionStatement(Ag);Yg(dg,tk(xe)),Hn.push(dg);let yu=c.createPropertyAccessExpression(Ue.classDescriptorName,"value"),RI=c.createAssignment(Ue.classThis,yu),pI=c.createAssignment(fr,RI);Hn.push(c.createExpressionStatement(pI))}if(Hn.push(cn(Mn,Ue.metadataReference)),zt(Ue.pendingStaticInitializers)){for(let gs of Ue.pendingStaticInitializers){let fs=c.createExpressionStatement(gs);Yg(fs,zT(gs)),Mt=Ft(Mt,fs)}Ue.pendingStaticInitializers=void 0}if(Ue.classExtraInitializersName){let gs=g().createRunInitializersHelper(Mn,Ue.classExtraInitializersName),fs=c.createExpressionStatement(gs);Yg(fs,xe.name??tk(xe)),Mt=Ft(Mt,fs)}Hn&&Mt&&!Ue.hasStaticInitializers&&(Pr(Hn,Mt),Mt=void 0);let es=Hn&&c.createClassStaticBlockDeclaration(c.createBlock(Hn,!0));es&&oo&&Cie(es,32);let Oi=Mt&&c.createClassStaticBlockDeclaration(c.createBlock(Mt,!0));if(es||$r||Oi){let gs=[],fs=ci.findIndex(Xz);es?(Pr(gs,ci,0,fs+1),gs.push(es),Pr(gs,ci,fs+1)):Pr(gs,ci),$r&&gs.push($r),Oi&&gs.push(Oi),ci=gn(c.createNodeArray(gs),ci)}let Vn=h(),Ui;if(Bs){Ui=c.createClassExpression(void 0,void 0,void 0,ri,ci),Ue.classThis&&(Ui=u3t(c,Ui,Ue.classThis));let gs=c.createVariableDeclaration(fr,void 0,void 0,Ui),fs=c.createVariableDeclarationList([gs]),bi=Ue.classThis?c.createAssignment(fr,Ue.classThis):fr;In.push(c.createVariableStatement(void 0,fs),c.createReturnStatement(bi))}else Ui=c.createClassExpression(void 0,xe.name,void 0,ri,ci),In.push(c.createReturnStatement(Ui));if(oo){L3(Ui,32);for(let gs of Ui.members)(hC(gs)||n0(gs))&&tm(gs)&&L3(gs,32)}return ua(Ui,xe),c.createImmediatelyInvokedArrowFunction(c.mergeLexicalEnvironment(In,Vn))}function Wt(xe){return Gx(!1,xe)||rU(!1,xe)}function _r(xe){if(Wt(xe)){let fr=[],Ue=xd(xe,xa)??xe,In=Ue.name?c.createStringLiteralFromNode(Ue.name):c.createStringLiteral("default"),Hn=Ga(xe,32),Mt=Ga(xe,2048);if(xe.name||(xe=IVe(s,xe,In)),Hn&&Mt){let $r=je(xe);if(xe.name){let ri=c.createVariableDeclaration(c.getLocalName(xe),void 0,void 0,$r);ua(ri,xe);let oo=c.createVariableDeclarationList([ri],1),Bs=c.createVariableStatement(void 0,oo);fr.push(Bs);let Ys=c.createExportDefault(c.getDeclarationName(xe));ua(Ys,xe),yh(Ys,ZB(xe)),Yg(Ys,tk(xe)),fr.push(Ys)}else{let ri=c.createExportDefault($r);ua(ri,xe),yh(ri,ZB(xe)),Yg(ri,tk(xe)),fr.push(ri)}}else{pe.assertIsDefined(xe.name,"A class declaration that is not a default export must have a name.");let $r=je(xe),ri=Hn?Mn=>y(Mn)?void 0:at(Mn):at,oo=Os(xe.modifiers,ri,hg),Bs=c.getLocalName(xe,!1,!0),Ys=c.createVariableDeclaration(Bs,void 0,void 0,$r);ua(Ys,xe);let tn=c.createVariableDeclarationList([Ys],1),wn=c.createVariableStatement(oo,tn);if(ua(wn,xe),yh(wn,ZB(xe)),fr.push(wn),Hn){let Mn=c.createExternalModuleExport(Bs);ua(Mn,xe),fr.push(Mn)}}return ac(fr)}else{let fr=Os(xe.modifiers,at,hg),Ue=Os(xe.heritageClauses,Ye,_1);Ie(void 0);let In=Os(xe.members,Qe,MI);return _e(),c.updateClassDeclaration(xe,fr,xe.name,void 0,Ue,In)}}function Gt(xe){if(Wt(xe)){let fr=je(xe);return ua(fr,xe),fr}else{let fr=Os(xe.modifiers,at,hg),Ue=Os(xe.heritageClauses,Ye,_1);Ie(void 0);let In=Os(xe.members,Qe,MI);return _e(),c.updateClassExpression(xe,fr,xe.name,void 0,Ue,In)}}function it(xe,fr){if(zt(fr.pendingInstanceInitializers)){let Ue=[];return Ue.push(c.createExpressionStatement(c.inlineExpressions(fr.pendingInstanceInitializers))),fr.pendingInstanceInitializers=void 0,Ue}}function kt(xe,fr,Ue,In,Hn,Mt){let $r=In[Hn],ri=fr[$r];if(Pr(xe,Os(fr,Ye,Lc,Ue,$r-Ue)),DU(ri)){let oo=[];kt(oo,ri.tryBlock.statements,0,In,Hn+1,Mt);let Bs=c.createNodeArray(oo);gn(Bs,ri.tryBlock.statements),xe.push(c.updateTryStatement(ri,c.updateBlock(ri.tryBlock,oo),Mr(ri.catchClause,Ye,fQ),Mr(ri.finallyBlock,Ye,eg)))}else Pr(xe,Os(fr,Ye,Lc,$r,1)),Pr(xe,Mt);Pr(xe,Os(fr,Ye,Lc,$r+1))}function tr(xe){Ee(xe);let fr=Os(xe.modifiers,at,hg),Ue=Os(xe.parameters,Ye,Si),In;if(xe.body&&T){let Hn=it(T.class,T);if(Hn){let Mt=[],$r=c.copyPrologue(xe.body.statements,Mt,!1,Ye),ri=gVe(xe.body.statements,$r);ri.length>0?kt(Mt,xe.body.statements,$r,ri,0,Hn):(Pr(Mt,Hn),Pr(Mt,Os(xe.body.statements,Ye,Lc))),In=c.createBlock(Mt,!0),ua(In,xe.body),gn(In,xe.body)}}return In??(In=Mr(xe.body,Ye,eg)),Ne(),c.updateConstructorDeclaration(xe,fr,Ue,In)}function ur(xe,fr){return xe!==fr&&(yh(xe,fr),Yg(xe,tk(fr))),xe}function Gr(xe,fr,Ue){let In,Hn,Mt,$r,ri,oo;if(!fr){let tn=Os(xe.modifiers,at,hg);return Te(),Hn=ba(xe.name),Ze(),{modifiers:tn,referencedName:In,name:Hn,initializersName:Mt,descriptorName:oo,thisArg:ri}}let Bs=Zr(dVe(xe,fr.class,!1)),Ys=Os(xe.modifiers,at,hg);if(Bs){let tn=yt(xe,"decorators"),wn=c.createArrayLiteralExpression(Bs),Mn=c.createAssignment(tn,wn),ci={memberDecoratorsName:tn};fr.memberInfos??(fr.memberInfos=new Map),fr.memberInfos.set(xe,ci),M??(M=[]),M.push(Mn);let es=LL(xe)||n0(xe)?lg(xe)?fr.staticNonFieldDecorationStatements??(fr.staticNonFieldDecorationStatements=[]):fr.nonStaticNonFieldDecorationStatements??(fr.nonStaticNonFieldDecorationStatements=[]):pi(xe)&&!n0(xe)?lg(xe)?fr.staticFieldDecorationStatements??(fr.staticFieldDecorationStatements=[]):fr.nonStaticFieldDecorationStatements??(fr.nonStaticFieldDecorationStatements=[]):pe.fail(),Oi=wg(xe)?"getter":kg(xe)?"setter":gu(xe)?"method":n0(xe)?"accessor":pi(xe)?"field":pe.fail(),Vn;if(Ir(xe.name)||p(xe.name))Vn={computed:!1,name:xe.name};else if(xw(xe.name))Vn={computed:!0,name:c.createStringLiteralFromNode(xe.name)};else{let gs=xe.name.expression;xw(gs)&&!Ir(gs)?Vn={computed:!0,name:c.createStringLiteralFromNode(gs)}:(Te(),{referencedName:In,name:Hn}=Fl(xe.name),Vn={computed:!0,name:In},Ze())}let Ui={kind:Oi,name:Vn,static:lg(xe),private:p(xe.name),access:{get:pi(xe)||wg(xe)||gu(xe),set:pi(xe)||kg(xe)},metadata:fr.metadataReference};if(LL(xe)){let gs=lg(xe)?fr.staticMethodExtraInitializersName:fr.instanceMethodExtraInitializersName;pe.assertIsDefined(gs);let fs;hC(xe)&&Ue&&(fs=Ue(xe,Os(Ys,Ag=>Gs(Ag,G),hg)),ci.memberDescriptorName=oo=yt(xe,"descriptor"),fs=c.createAssignment(oo,fs));let bi=g().createESDecorateHelper(c.createThis(),fs??c.createNull(),tn,Ui,c.createNull(),gs),mc=c.createExpressionStatement(bi);Yg(mc,tk(xe)),es.push(mc)}else if(pi(xe)){Mt=ci.memberInitializersName??(ci.memberInitializersName=yt(xe,"initializers")),$r=ci.memberExtraInitializersName??(ci.memberExtraInitializersName=yt(xe,"extraInitializers")),lg(xe)&&(ri=fr.classThis);let gs;hC(xe)&&Fw(xe)&&Ue&&(gs=Ue(xe,void 0),ci.memberDescriptorName=oo=yt(xe,"descriptor"),gs=c.createAssignment(oo,gs));let fs=g().createESDecorateHelper(n0(xe)?c.createThis():c.createNull(),gs??c.createNull(),tn,Ui,Mt,$r),bi=c.createExpressionStatement(fs);Yg(bi,tk(xe)),es.push(bi)}}return Hn===void 0&&(Te(),Hn=ba(xe.name),Ze()),!zt(Ys)&&(gu(xe)||pi(xe))&&ti(Hn,1024),{modifiers:Ys,referencedName:In,name:Hn,initializersName:Mt,extraInitializersName:$r,descriptorName:oo,thisArg:ri}}function dt(xe){Ee(xe);let{modifiers:fr,name:Ue,descriptorName:In}=Gr(xe,T,hr);if(In)return Ne(),ur(nn(fr,Ue,In),xe);{let Hn=Os(xe.parameters,Ye,Si),Mt=Mr(xe.body,Ye,eg);return Ne(),ur(c.updateMethodDeclaration(xe,fr,xe.asteriskToken,Ue,void 0,void 0,Hn,void 0,Mt),xe)}}function pr(xe){Ee(xe);let{modifiers:fr,name:Ue,descriptorName:In}=Gr(xe,T,Sn);if(In)return Ne(),ur(En(fr,Ue,In),xe);{let Hn=Os(xe.parameters,Ye,Si),Mt=Mr(xe.body,Ye,eg);return Ne(),ur(c.updateGetAccessorDeclaration(xe,fr,Ue,Hn,void 0,Mt),xe)}}function ot(xe){Ee(xe);let{modifiers:fr,name:Ue,descriptorName:In}=Gr(xe,T,Ni);if(In)return Ne(),ur(ds(fr,Ue,In),xe);{let Hn=Os(xe.parameters,Ye,Si),Mt=Mr(xe.body,Ye,eg);return Ne(),ur(c.updateSetAccessorDeclaration(xe,fr,Ue,Hn,Mt),xe)}}function ir(xe){Ee(xe);let fr;if(Xz(xe))fr=_s(xe,Ye,s);else if(Qde(xe)){let Ue=O;O=void 0,fr=_s(xe,Ye,s),O=Ue}else if(xe=_s(xe,Ye,s),fr=xe,T&&(T.hasStaticInitializers=!0,zt(T.pendingStaticInitializers))){let Ue=[];for(let Mt of T.pendingStaticInitializers){let $r=c.createExpressionStatement(Mt);Yg($r,zT(Mt)),Ue.push($r)}let In=c.createBlock(Ue,!0);fr=[c.createClassStaticBlockDeclaration(In),fr],T.pendingStaticInitializers=void 0}return Ne(),fr}function qt(xe){Gb(xe,An)&&(xe=y1(s,xe,si(xe.initializer))),Ee(xe),pe.assert(!zJ(xe),"Not yet implemented.");let{modifiers:fr,name:Ue,initializersName:In,extraInitializersName:Hn,descriptorName:Mt,thisArg:$r}=Gr(xe,T,Fw(xe)?Gi:void 0);d();let ri=Mr(xe.initializer,Ye,un);In&&(ri=g().createRunInitializersHelper($r??c.createThis(),In,ri??c.createVoidZero())),lg(xe)&&T&&ri&&(T.hasStaticInitializers=!0);let oo=h();if(zt(oo)&&(ri=c.createImmediatelyInvokedArrowFunction([...oo,c.createReturnStatement(ri)])),T&&(lg(xe)?(ri=nr(T,!0,ri),Hn&&(T.pendingStaticInitializers??(T.pendingStaticInitializers=[]),T.pendingStaticInitializers.push(g().createRunInitializersHelper(T.classThis??c.createThis(),Hn)))):(ri=nr(T,!1,ri),Hn&&(T.pendingInstanceInitializers??(T.pendingInstanceInitializers=[]),T.pendingInstanceInitializers.push(g().createRunInitializersHelper(c.createThis(),Hn))))),Ne(),Fw(xe)&&Mt){let Bs=ZB(xe),Ys=zT(xe),tn=xe.name,wn=tn,Mn=tn;if(Un(tn)&&!DN(tn.expression)){let Ui=k9e(tn);if(Ui)wn=c.updateComputedPropertyName(tn,Mr(tn.expression,Ye,un)),Mn=c.updateComputedPropertyName(tn,Ui.left);else{let gs=c.createTempVariable(_);Yg(gs,tn.expression);let fs=Mr(tn.expression,Ye,un),bi=c.createAssignment(gs,fs);Yg(bi,tn.expression),wn=c.updateComputedPropertyName(tn,bi),Mn=c.updateComputedPropertyName(tn,gs)}}let ci=Os(fr,Ui=>Ui.kind!==129?Ui:void 0,hg),es=net(c,xe,ci,ri);ua(es,xe),ti(es,3072),Yg(es,Ys),Yg(es.name,xe.name);let Oi=En(ci,wn,Mt);ua(Oi,xe),yh(Oi,Bs),Yg(Oi,Ys);let Vn=ds(ci,Mn,Mt);return ua(Vn,xe),ti(Vn,3072),Yg(Vn,Ys),[es,Oi,Vn]}return ur(c.updatePropertyDeclaration(xe,fr,Ue,void 0,void 0,ri),xe)}function Yt(xe){return O??xe}function Tr(xe){if(Fy(xe.expression)&&O){let fr=Mr(xe.expression,Ye,un),Ue=Os(xe.arguments,Ye,un),In=c.createFunctionCallCall(fr,O,Ue);return ua(In,xe),gn(In,xe),In}return _s(xe,Ye,s)}function Cn(xe){if(Fy(xe.tag)&&O){let fr=Mr(xe.tag,Ye,un),Ue=c.createFunctionBindCall(fr,O,[]);ua(Ue,xe),gn(Ue,xe);let In=Mr(xe.template,Ye,_W);return c.updateTaggedTemplateExpression(xe,Ue,void 0,In)}return _s(xe,Ye,s)}function jn(xe){if(Fy(xe)&&Ir(xe.name)&&O&&V){let fr=c.createStringLiteralFromNode(xe.name),Ue=c.createReflectGetCall(V,fr,O);return ua(Ue,xe.expression),gn(Ue,xe.expression),Ue}return _s(xe,Ye,s)}function Zi(xe){if(Fy(xe)&&O&&V){let fr=Mr(xe.argumentExpression,Ye,un),Ue=c.createReflectGetCall(V,fr,O);return ua(Ue,xe.expression),gn(Ue,xe.expression),Ue}return _s(xe,Ye,s)}function Ns(xe){Gb(xe,An)&&(xe=y1(s,xe,si(xe.initializer)));let fr=c.updateParameterDeclaration(xe,void 0,xe.dotDotDotToken,Mr(xe.name,Ye,ZL),void 0,void 0,Mr(xe.initializer,Ye,un));return fr!==xe&&(yh(fr,xe),gn(fr,Iv(xe)),Yg(fr,Iv(xe)),ti(fr.name,64)),fr}function An(xe){return wd(xe)&&!xe.name&&Wt(xe)}function si(xe){let fr=XI(xe);return wd(fr)&&!fr.name&&!Gx(!1,fr)}function ks(xe){return c.updateForStatement(xe,Mr(xe.initializer,Ct,_E),Mr(xe.condition,Ye,un),Mr(xe.incrementor,Ct,un),Py(xe.statement,Ye,s))}function Ic(xe){return _s(xe,Ct,s)}function ou(xe,fr){if(Zx(xe)){let Ue=Tu(xe.left),In=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,Ue,xe.operatorToken,In)}if(zm(xe)){if(Gb(xe,An))return xe=y1(s,xe,si(xe.right)),_s(xe,Ye,s);if(Fy(xe.left)&&O&&V){let Ue=Qg(xe.left)?Mr(xe.left.argumentExpression,Ye,un):Ir(xe.left.name)?c.createStringLiteralFromNode(xe.left.name):void 0;if(Ue){let In=Mr(xe.right,Ye,un);if(Mde(xe.operatorToken.kind)){let Mt=Ue;DN(Ue)||(Mt=c.createTempVariable(_),Ue=c.createAssignment(Mt,Ue));let $r=c.createReflectGetCall(V,Mt,O);ua($r,xe.left),gn($r,xe.left),In=c.createBinaryExpression($r,Hde(xe.operatorToken.kind),In),gn(In,xe)}let Hn=fr?void 0:c.createTempVariable(_);return Hn&&(In=c.createAssignment(Hn,In),gn(Hn,xe)),In=c.createReflectSetCall(V,Ue,In,O),ua(In,xe),gn(In,xe),Hn&&(In=c.createComma(In,Hn),gn(In,xe)),In}}}if(xe.operatorToken.kind===28){let Ue=Mr(xe.left,Ct,un),In=Mr(xe.right,fr?Ct:Ye,un);return c.updateBinaryExpression(xe,Ue,xe.operatorToken,In)}return _s(xe,Ye,s)}function Zn(xe,fr){if(xe.operator===46||xe.operator===47){let Ue=JA(xe.operand);if(Fy(Ue)&&O&&V){let In=Qg(Ue)?Mr(Ue.argumentExpression,Ye,un):Ir(Ue.name)?c.createStringLiteralFromNode(Ue.name):void 0;if(In){let Hn=In;DN(In)||(Hn=c.createTempVariable(_),In=c.createAssignment(Hn,In));let Mt=c.createReflectGetCall(V,Hn,O);ua(Mt,xe),gn(Mt,xe);let $r=fr?void 0:c.createTempVariable(_);return Mt=B9e(c,xe,Mt,_,$r),Mt=c.createReflectSetCall(V,In,Mt,O),ua(Mt,xe),gn(Mt,xe),$r&&(Mt=c.createComma(Mt,$r),gn(Mt,xe)),Mt}}}return _s(xe,Ye,s)}function ya(xe,fr){let Ue=fr?t1e(xe.elements,Ct):t1e(xe.elements,Ye,Ct);return c.updateCommaListExpression(xe,Ue)}function Fl(xe){if(xw(xe)||p(xe)){let Mt=c.createStringLiteralFromNode(xe),$r=Mr(xe,Ye,PI);return{referencedName:Mt,name:$r}}if(xw(xe.expression)&&!Ir(xe.expression)){let Mt=c.createStringLiteralFromNode(xe.expression),$r=Mr(xe,Ye,PI);return{referencedName:Mt,name:$r}}let fr=c.getGeneratedNameForNode(xe);_(fr);let Ue=g().createPropKeyHelper(Mr(xe.expression,Ye,un)),In=c.createAssignment(fr,Ue),Hn=c.updateComputedPropertyName(xe,st(In));return{referencedName:fr,name:Hn}}function ba(xe){return Un(xe)?Oo(xe):Mr(xe,Ye,PI)}function Oo(xe){let fr=Mr(xe.expression,Ye,un);return DN(fr)||(fr=st(fr)),c.updateComputedPropertyName(xe,fr)}function hc(xe){return Gb(xe,An)&&(xe=y1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function yr(xe){return Gb(xe,An)&&(xe=y1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function hn(xe){return Gb(xe,An)&&(xe=y1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function Pi(xe){if(ag(xe)||YI(xe))return Tu(xe);if(Fy(xe)&&O&&V){let fr=Qg(xe)?Mr(xe.argumentExpression,Ye,un):Ir(xe.name)?c.createStringLiteralFromNode(xe.name):void 0;if(fr){let Ue=c.createTempVariable(void 0),In=c.createAssignmentTargetWrapper(Ue,c.createReflectSetCall(V,fr,Ue,O));return ua(In,xe),gn(In,xe),In}}return _s(xe,Ye,s)}function co(xe){if(zm(xe,!0)){Gb(xe,An)&&(xe=y1(s,xe,si(xe.right)));let fr=Pi(xe.left),Ue=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,fr,xe.operatorToken,Ue)}else return Pi(xe)}function pa(xe){if(x_(xe.expression)){let fr=Pi(xe.expression);return c.updateSpreadElement(xe,fr)}return _s(xe,Ye,s)}function Pa(xe){return pe.assertNode(xe,ZJ),cf(xe)?pa(xe):Ep(xe)?_s(xe,Ye,s):co(xe)}function $c(xe){let fr=Mr(xe.name,Ye,PI);if(zm(xe.initializer,!0)){let Ue=co(xe.initializer);return c.updatePropertyAssignment(xe,fr,Ue)}if(x_(xe.initializer)){let Ue=Pi(xe.initializer);return c.updatePropertyAssignment(xe,fr,Ue)}return _s(xe,Ye,s)}function Qu(xe){return Gb(xe,An)&&(xe=y1(s,xe,si(xe.objectAssignmentInitializer))),_s(xe,Ye,s)}function Rg(xe){if(x_(xe.expression)){let fr=Pi(xe.expression);return c.updateSpreadAssignment(xe,fr)}return _s(xe,Ye,s)}function Cs(xe){return pe.assertNode(xe,CW),Mx(xe)?Rg(xe):l0(xe)?Qu(xe):Cm(xe)?$c(xe):_s(xe,Ye,s)}function Tu(xe){if(YI(xe)){let fr=Os(xe.elements,Pa,un);return c.updateArrayLiteralExpression(xe,fr)}else{let fr=Os(xe.properties,Cs,Bw);return c.updateObjectLiteralExpression(xe,fr)}}function Wr(xe){return Gb(xe,An)&&(xe=y1(s,xe,si(xe.expression))),_s(xe,Ye,s)}function Wn(xe,fr){let Ue=fr?Ct:Ye,In=Mr(xe.expression,Ue,un);return c.updateParenthesizedExpression(xe,In)}function pt(xe,fr){let Ue=fr?Ct:Ye,In=Mr(xe.expression,Ue,un);return c.updatePartiallyEmittedExpression(xe,In)}function on(xe,fr){return zt(xe)&&(fr?dI(fr)?(xe.push(fr.expression),fr=c.updateParenthesizedExpression(fr,c.inlineExpressions(xe))):(xe.push(fr),fr=c.inlineExpressions(xe)):fr=c.inlineExpressions(xe)),fr}function st(xe){let fr=on(M,xe);return pe.assertIsDefined(fr),fr!==xe&&(M=void 0),fr}function nr(xe,fr,Ue){let In=on(fr?xe.pendingStaticInitializers:xe.pendingInstanceInitializers,Ue);return In!==Ue&&(fr?xe.pendingStaticInitializers=void 0:xe.pendingInstanceInitializers=void 0),In}function Zr(xe){if(!xe)return;let fr=[];return Pr(fr,lt(xe.decorators,Kr)),fr}function Kr(xe){let fr=Mr(xe.expression,Ye,un);ti(fr,3072);let Ue=XI(fr);if(bp(Ue)){let{target:In,thisArg:Hn}=c.createCallBinding(fr,_,S,!0);return c.restoreOuterExpressions(fr,c.createFunctionBindCall(In,Hn,[]))}return fr}function Dn(xe,fr,Ue,In,Hn,Mt,$r){let ri=c.createFunctionExpression(Ue,In,void 0,void 0,Mt,void 0,$r??c.createBlock([]));ua(ri,xe),Yg(ri,tk(xe)),ti(ri,3072);let oo=Hn==="get"||Hn==="set"?Hn:void 0,Bs=c.createStringLiteralFromNode(fr,void 0),Ys=g().createSetFunctionNameHelper(ri,Bs,oo),tn=c.createPropertyAssignment(c.createIdentifier(Hn),Ys);return ua(tn,xe),Yg(tn,tk(xe)),ti(tn,3072),tn}function hr(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,xe.asteriskToken,"value",Os(xe.parameters,Ye,Si),Mr(xe.body,Ye,eg))])}function Sn(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],Mr(xe.body,Ye,eg))])}function Ni(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"set",Os(xe.parameters,Ye,Si),Mr(xe.body,Ye,eg))])}function Gi(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)))])),Dn(xe,xe.name,fr,void 0,"set",[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)),c.createIdentifier("value")))]))])}function nn(xe,fr,Ue){return xe=Os(xe,In=>Ge(In)?In:void 0,hg),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(Ue,c.createIdentifier("value")))]))}function En(xe,fr,Ue){return xe=Os(xe,In=>Ge(In)?In:void 0,hg),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Ue,c.createIdentifier("get")),c.createThis(),[]))]))}function ds(xe,fr,Ue){return xe=Os(xe,In=>Ge(In)?In:void 0,hg),c.createSetAccessorDeclaration(xe,fr,[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Ue,c.createIdentifier("set")),c.createThis(),[c.createIdentifier("value")]))]))}function Ht(xe,fr){let Ue=c.createVariableDeclaration(xe,void 0,void 0,c.createConditionalExpression(c.createLogicalAnd(c.createTypeCheck(c.createIdentifier("Symbol"),"function"),c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),c.createToken(58),c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"create"),void 0,[fr?wt(fr):c.createNull()]),c.createToken(59),c.createVoidZero()));return c.createVariableStatement(void 0,c.createVariableDeclarationList([Ue],2))}function cn(xe,fr){let Ue=c.createObjectDefinePropertyCall(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata"),c.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:fr},!0));return ti(c.createIfStatement(fr,c.createExpressionStatement(Ue)),1)}function wt(xe){return c.createBinaryExpression(c.createElementAccessExpression(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),61,c.createNull())}}function C3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Hg(R),O=0,V=0,M,ee,re,ge,Ie=[],_e=0,Ee=s.onEmitNode,Ne=s.onSubstituteNode;return s.onEmitNode=Ic,s.onSubstituteNode=ou,aR(s,Te);function Te(yr){if(yr.isDeclarationFile)return yr;Ze(1,!1),Ze(2,!ane(yr,R));let hn=_s(yr,Qe,s);return bN(hn,s.readEmitHelpers()),hn}function Ze(yr,hn){_e=hn?_e|yr:_e&~yr}function Pe(yr){return(_e&yr)!==0}function Ke(){return!Pe(1)}function et(){return Pe(2)}function Ye(yr,hn,Pi){let co=yr&~_e;if(co){Ze(co,!0);let pa=hn(Pi);return Ze(co,!1),pa}return hn(Pi)}function Tt(yr){return _s(yr,Qe,s)}function at(yr){switch(yr.kind){case 219:case 263:case 175:case 178:case 179:case 177:return yr;case 170:case 209:case 261:break;case 80:if(ge&&S.isArgumentsLocalBinding(yr))return ge;break}return _s(yr,at,s)}function Qe(yr){if(!(yr.transformFlags&256))return ge?at(yr):yr;switch(yr.kind){case 134:return;case 224:return Wt(yr);case 175:return Ye(3,Gt,yr);case 263:return Ye(3,tr,yr);case 219:return Ye(3,ur,yr);case 220:return Ye(1,Gr,yr);case 212:return ee&&jo(yr)&&yr.expression.kind===108&&ee.add(yr.name.escapedText),_s(yr,Qe,s);case 213:return ee&&yr.expression.kind===108&&(re=!0),_s(yr,Qe,s);case 178:return Ye(3,it,yr);case 179:return Ye(3,kt,yr);case 177:return Ye(3,_r,yr);case 264:case 232:return Ye(3,Tt,yr);default:return _s(yr,Qe,s)}}function Ct(yr){if(MZe(yr))switch(yr.kind){case 244:return yt(yr);case 249:return je(yr);case 250:return Rt(yr);case 251:return Lt(yr);case 300:return mt(yr);case 242:case 256:case 270:case 297:case 298:case 259:case 247:case 248:case 246:case 255:case 257:return _s(yr,Ct,s);default:return pe.assertNever(yr,"Unhandled node.")}return Qe(yr)}function mt(yr){let hn=new Set;dt(yr.variableDeclaration,hn);let Pi;if(hn.forEach((co,pa)=>{M.has(pa)&&(Pi||(Pi=new Set(M)),Pi.delete(pa))}),Pi){let co=M;M=Pi;let pa=_s(yr,Ct,s);return M=co,pa}else return _s(yr,Ct,s)}function yt(yr){if(pr(yr.declarationList)){let hn=ot(yr.declarationList,!1);return hn?c.createExpressionStatement(hn):void 0}return _s(yr,Qe,s)}function Rt(yr){return c.updateForInStatement(yr,pr(yr.initializer)?ot(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,_E)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,Ct,s))}function Lt(yr){return c.updateForOfStatement(yr,Mr(yr.awaitModifier,Qe,U),pr(yr.initializer)?ot(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,_E)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,Ct,s))}function je(yr){let hn=yr.initializer;return c.updateForStatement(yr,pr(hn)?ot(hn,!1):Mr(yr.initializer,Qe,_E),Mr(yr.condition,Qe,un),Mr(yr.incrementor,Qe,un),Py(yr.statement,Ct,s))}function Wt(yr){return Ke()?_s(yr,Qe,s):ua(gn(c.createYieldExpression(void 0,Mr(yr.expression,Qe,un)),yr),yr)}function _r(yr){let hn=ge;ge=void 0;let Pi=c.updateConstructorDeclaration(yr,Os(yr.modifiers,Qe,hg),wI(yr.parameters,Qe,s),Cn(yr));return ge=hn,Pi}function Gt(yr){let hn,Pi=BI(yr),co=ge;ge=void 0;let pa=c.updateMethodDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.asteriskToken,yr.name,void 0,void 0,hn=Pi&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,Pi&2?Ns(yr,hn):Cn(yr));return ge=co,pa}function it(yr){let hn=ge;ge=void 0;let Pi=c.updateGetAccessorDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.name,wI(yr.parameters,Qe,s),void 0,Cn(yr));return ge=hn,Pi}function kt(yr){let hn=ge;ge=void 0;let Pi=c.updateSetAccessorDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.name,wI(yr.parameters,Qe,s),Cn(yr));return ge=hn,Pi}function tr(yr){let hn,Pi=ge;ge=void 0;let co=BI(yr),pa=c.updateFunctionDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.asteriskToken,yr.name,void 0,hn=co&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,co&2?Ns(yr,hn):pS(yr.body,Qe,s));return ge=Pi,pa}function ur(yr){let hn,Pi=ge;ge=void 0;let co=BI(yr),pa=c.updateFunctionExpression(yr,Os(yr.modifiers,Qe,hg),yr.asteriskToken,yr.name,void 0,hn=co&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,co&2?Ns(yr,hn):pS(yr.body,Qe,s));return ge=Pi,pa}function Gr(yr){let hn,Pi=BI(yr);return c.updateArrowFunction(yr,Os(yr.modifiers,Qe,hg),void 0,hn=Pi&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,yr.equalsGreaterThanToken,Pi&2?Ns(yr,hn):pS(yr.body,Qe,s))}function dt({name:yr},hn){if(Ir(yr))hn.add(yr.escapedText);else for(let Pi of yr.elements)Ep(Pi)||dt(Pi,hn)}function pr(yr){return!!yr&&A_(yr)&&!(yr.flags&7)&&yr.declarations.some(Tr)}function ot(yr,hn){ir(yr);let Pi=hU(yr);return Pi.length===0?hn?Mr(c.converters.convertToAssignmentElementTarget(yr.declarations[0].name),Qe,un):void 0:c.inlineExpressions(lt(Pi,Yt))}function ir(yr){F(yr.declarations,qt)}function qt({name:yr}){if(Ir(yr))_(yr);else for(let hn of yr.elements)Ep(hn)||qt(hn)}function Yt(yr){let hn=Yg(c.createAssignment(c.converters.convertToAssignmentElementTarget(yr.name),yr.initializer),yr);return pe.checkDefined(Mr(hn,Qe,un))}function Tr({name:yr}){if(Ir(yr))return M.has(yr.escapedText);for(let hn of yr.elements)if(!Ep(hn)&&Tr(hn))return!0;return!1}function Cn(yr){pe.assertIsDefined(yr.body);let hn=ee,Pi=re;ee=new Set,re=!1;let co=pS(yr.body,Qe,s),pa=xd(yr,Gd);if(T>=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128))&&(BI(pa)&3)!==3){if(ks(),ee.size){let $c=hVe(c,S,yr,ee);Ie[id($c)]=!0;let Qu=co.statements.slice();Rw(Qu,[$c]),co=c.updateBlock(co,Qu)}re&&(S.hasNodeCheckFlag(yr,256)?uQ(co,LF):S.hasNodeCheckFlag(yr,128)&&uQ(co,Eie))}return ee=hn,re=Pi,co}function jn(){pe.assert(ge);let yr=c.createVariableDeclaration(ge,void 0,void 0,c.createIdentifier("arguments")),hn=c.createVariableStatement(void 0,[yr]);return k0(hn),Ww(hn,2097152),hn}function Zi(yr){if(n1e(yr.parameters))return wI(yr.parameters,Qe,s);let hn=[];for(let co of yr.parameters){if(co.initializer||co.dotDotDotToken){if(yr.kind===220){let Pa=c.createParameterDeclaration(void 0,c.createToken(26),c.createUniqueName("args",8));hn.push(Pa)}break}let pa=c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(co.name,8));hn.push(pa)}let Pi=c.createNodeArray(hn);return gn(Pi,yr.parameters),Pi}function Ns(yr,hn){let Pi=n1e(yr.parameters)?void 0:wI(yr.parameters,Qe,s);d();let pa=xd(yr,Eu).type,Pa=T<2?si(pa):void 0,$c=yr.kind===220,Qu=ge,Cs=S.hasNodeCheckFlag(yr,512)&&!ge;Cs&&(ge=c.createUniqueName("arguments"));let Tu;if(Pi)if($c){let Zr=[];pe.assert(hn.length<=yr.parameters.length);for(let Kr=0;Kr=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128));if(Kr&&(ks(),ee.size)){let hr=hVe(c,S,yr,ee);Ie[id(hr)]=!0,Rw(Zr,[hr])}Cs&&Rw(Zr,[jn()]);let Dn=c.createBlock(Zr,!0);gn(Dn,yr.body),Kr&&re&&(S.hasNodeCheckFlag(yr,256)?uQ(Dn,LF):S.hasNodeCheckFlag(yr,128)&&uQ(Dn,Eie)),nr=Dn}return M=Wr,$c||(ee=Wn,re=pt,ge=Qu),nr}function An(yr,hn){return eg(yr)?c.updateBlock(yr,Os(yr.statements,Ct,Lc,hn)):c.converters.convertToFunctionBlock(pe.checkDefined(Mr(yr,Ct,I7)))}function si(yr){let hn=yr&&pne(yr);if(hn&&mC(hn)){let Pi=S.getTypeReferenceSerializationKind(hn);if(Pi===1||Pi===0)return hn}}function ks(){O&1||(O|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Ic(yr,hn,Pi){if(O&1&&Oo(hn)){let co=(S.hasNodeCheckFlag(hn,128)?128:0)|(S.hasNodeCheckFlag(hn,256)?256:0);if(co!==V){let pa=V;V=co,Ee(yr,hn,Pi),V=pa;return}}else if(O&&Ie[id(hn)]){let co=V;V=0,Ee(yr,hn,Pi),V=co;return}Ee(yr,hn,Pi)}function ou(yr,hn){return hn=Ne(yr,hn),yr===1&&V?Zn(hn):hn}function Zn(yr){switch(yr.kind){case 212:return ya(yr);case 213:return Fl(yr);case 214:return ba(yr)}return yr}function ya(yr){return yr.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),yr.name),yr):yr}function Fl(yr){return yr.expression.kind===108?hc(yr.argumentExpression,yr):yr}function ba(yr){let hn=yr.expression;if(Fy(hn)){let Pi=jo(hn)?ya(hn):Fl(hn);return c.createCallExpression(c.createPropertyAccessExpression(Pi,"call"),void 0,[c.createThis(),...yr.arguments])}return yr}function Oo(yr){let hn=yr.kind;return hn===264||hn===177||hn===175||hn===178||hn===179}function hc(yr,hn){return V&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),"value"),hn):gn(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),hn)}}function hVe(s,c,g,d){let h=c.hasNodeCheckFlag(g,256),_=[];return d.forEach((S,R)=>{let T=Bc(R),O=[];O.push(s.createPropertyAssignment("get",s.createArrowFunction(void 0,void 0,[],void 0,void 0,ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8)))),h&&O.push(s.createPropertyAssignment("set",s.createArrowFunction(void 0,void 0,[s.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,s.createAssignment(ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8),s.createIdentifier("v"))))),_.push(s.createPropertyAssignment(T,s.createObjectLiteralExpression(O)))}),s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(s.createUniqueName("_super",48),void 0,void 0,s.createCallExpression(s.createPropertyAccessExpression(s.createIdentifier("Object"),"create"),void 0,[s.createNull(),s.createObjectLiteralExpression(_,!0)]))],2))}function _3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Hg(R),O=s.onEmitNode;s.onEmitNode=Qu;let V=s.onSubstituteNode;s.onSubstituteNode=Rg;let M=!1,ee=0,re,ge,Ie=0,_e=0,Ee,Ne,Te,Ze,Pe=[];return aR(s,at);function Ke(st,nr){return _e!==(_e&~st|nr)}function et(st,nr){let Zr=_e;return _e=(_e&~st|nr)&3,Zr}function Ye(st){_e=st}function Tt(st){Ne=Ft(Ne,c.createVariableDeclaration(st))}function at(st){if(st.isDeclarationFile)return st;Ee=st;let nr=Gr(st);return bN(nr,s.readEmitHelpers()),Ee=void 0,Ne=void 0,nr}function Qe(st){return Lt(st,!1)}function Ct(st){return Lt(st,!0)}function mt(st){if(st.kind!==134)return st}function yt(st,nr,Zr,Kr){if(Ke(Zr,Kr)){let Dn=et(Zr,Kr),hr=st(nr);return Ye(Dn),hr}return st(nr)}function Rt(st){return _s(st,Qe,s)}function Lt(st,nr){if(!(st.transformFlags&128))return st;switch(st.kind){case 224:return je(st);case 230:return Wt(st);case 254:return _r(st);case 257:return Gt(st);case 211:return kt(st);case 227:return pr(st,nr);case 357:return ot(st,nr);case 300:return ir(st);case 244:return qt(st);case 261:return Yt(st);case 247:case 248:case 250:return yt(Rt,st,0,2);case 251:return Zi(st,void 0);case 249:return yt(Cn,st,0,2);case 223:return jn(st);case 177:return yt(ya,st,2,1);case 175:return yt(Oo,st,2,1);case 178:return yt(Fl,st,2,1);case 179:return yt(ba,st,2,1);case 263:return yt(hc,st,2,1);case 219:return yt(hn,st,2,1);case 220:return yt(yr,st,2,0);case 170:return ou(st);case 245:return tr(st);case 218:return ur(st,nr);case 216:return dt(st);case 212:return Te&&jo(st)&&st.expression.kind===108&&Te.add(st.name.escapedText),_s(st,Qe,s);case 213:return Te&&st.expression.kind===108&&(Ze=!0),_s(st,Qe,s);case 264:case 232:return yt(Rt,st,2,1);default:return _s(st,Qe,s)}}function je(st){return re&2&&re&1?ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(Mr(st.expression,Qe,un))),st),st):_s(st,Qe,s)}function Wt(st){if(re&2&&re&1){if(st.asteriskToken){let nr=Mr(pe.checkDefined(st.expression),Qe,un);return ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(c.updateYieldExpression(st,st.asteriskToken,gn(g().createAsyncDelegatorHelper(gn(g().createAsyncValuesHelper(nr),nr)),nr)))),st),st)}return ua(gn(c.createYieldExpression(void 0,si(st.expression?Mr(st.expression,Qe,un):c.createVoidZero())),st),st)}return _s(st,Qe,s)}function _r(st){return re&2&&re&1?c.updateReturnStatement(st,si(st.expression?Mr(st.expression,Qe,un):c.createVoidZero())):_s(st,Qe,s)}function Gt(st){if(re&2){let nr=Vye(st);return nr.kind===251&&nr.awaitModifier?Zi(nr,st):c.restoreEnclosingLabel(Mr(nr,Qe,Lc,c.liftToBlock),st)}return _s(st,Qe,s)}function it(st){let nr,Zr=[];for(let Kr of st)if(Kr.kind===306){nr&&(Zr.push(c.createObjectLiteralExpression(nr)),nr=void 0);let Dn=Kr.expression;Zr.push(Mr(Dn,Qe,un))}else nr=Ft(nr,Kr.kind===304?c.createPropertyAssignment(Kr.name,Mr(Kr.initializer,Qe,un)):Mr(Kr,Qe,Bw));return nr&&Zr.push(c.createObjectLiteralExpression(nr)),Zr}function kt(st){if(st.transformFlags&65536){let nr=it(st.properties);nr.length&&nr[0].kind!==211&&nr.unshift(c.createObjectLiteralExpression());let Zr=nr[0];if(nr.length>1){for(let Kr=1;Kr=2&&(S.hasNodeCheckFlag(st,256)||S.hasNodeCheckFlag(st,128));if(Ni){$c();let nn=hVe(c,S,st,Te);Pe[id(nn)]=!0,Rw(Dn,[nn])}Dn.push(Sn);let Gi=c.updateBlock(st.body,Dn);return Ni&&Ze&&(S.hasNodeCheckFlag(st,256)?uQ(Gi,LF):S.hasNodeCheckFlag(st,128)&&uQ(Gi,Eie)),Te=Zr,Ze=Kr,Gi}function pa(st){d();let nr=0,Zr=[],Kr=Mr(st.body,Qe,I7)??c.createBlock([]);eg(Kr)&&(nr=c.copyPrologue(Kr.statements,Zr,!1,Qe)),Pr(Zr,Pa(void 0,st));let Dn=h();if(nr>0||zt(Zr)||zt(Dn)){let hr=c.converters.convertToFunctionBlock(Kr,!0);return Rw(Zr,Dn),Pr(Zr,hr.statements.slice(nr)),c.updateBlock(hr,gn(c.createNodeArray(Zr),hr.statements))}return Kr}function Pa(st,nr){let Zr=!1;for(let Kr of nr.parameters)if(Zr){if(Nu(Kr.name)){if(Kr.name.elements.length>0){let Dn=yQ(Kr,Qe,s,0,c.getGeneratedNameForNode(Kr));if(zt(Dn)){let hr=c.createVariableDeclarationList(Dn),Sn=c.createVariableStatement(void 0,hr);ti(Sn,2097152),st=Ft(st,Sn)}}else if(Kr.initializer){let Dn=c.getGeneratedNameForNode(Kr),hr=Mr(Kr.initializer,Qe,un),Sn=c.createAssignment(Dn,hr),Ni=c.createExpressionStatement(Sn);ti(Ni,2097152),st=Ft(st,Ni)}}else if(Kr.initializer){let Dn=c.cloneNode(Kr.name);gn(Dn,Kr.name),ti(Dn,96);let hr=Mr(Kr.initializer,Qe,un);Ww(hr,3168);let Sn=c.createAssignment(Dn,hr);gn(Sn,Kr),ti(Sn,3072);let Ni=c.createBlock([c.createExpressionStatement(Sn)]);gn(Ni,Kr),ti(Ni,3905);let Gi=c.createTypeCheck(c.cloneNode(Kr.name),"undefined"),nn=c.createIfStatement(Gi,Ni);k0(nn),gn(nn,Kr),ti(nn,2101056),st=Ft(st,nn)}}else if(Kr.transformFlags&65536){Zr=!0;let Dn=yQ(Kr,Qe,s,1,c.getGeneratedNameForNode(Kr),!1,!0);if(zt(Dn)){let hr=c.createVariableDeclarationList(Dn),Sn=c.createVariableStatement(void 0,hr);ti(Sn,2097152),st=Ft(st,Sn)}}return st}function $c(){ee&1||(ee|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Qu(st,nr,Zr){if(ee&1&&pt(nr)){let Kr=(S.hasNodeCheckFlag(nr,128)?128:0)|(S.hasNodeCheckFlag(nr,256)?256:0);if(Kr!==Ie){let Dn=Ie;Ie=Kr,O(st,nr,Zr),Ie=Dn;return}}else if(ee&&Pe[id(nr)]){let Kr=Ie;Ie=0,O(st,nr,Zr),Ie=Kr;return}O(st,nr,Zr)}function Rg(st,nr){return nr=V(st,nr),st===1&&Ie?Cs(nr):nr}function Cs(st){switch(st.kind){case 212:return Tu(st);case 213:return Wr(st);case 214:return Wn(st)}return st}function Tu(st){return st.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),st.name),st):st}function Wr(st){return st.expression.kind===108?on(st.argumentExpression,st):st}function Wn(st){let nr=st.expression;if(Fy(nr)){let Zr=jo(nr)?Tu(nr):Wr(nr);return c.createCallExpression(c.createPropertyAccessExpression(Zr,"call"),void 0,[c.createThis(),...st.arguments])}return st}function pt(st){let nr=st.kind;return nr===264||nr===177||nr===175||nr===178||nr===179}function on(st,nr){return Ie&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[st]),"value"),nr):gn(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[st]),nr)}}function y3t(s){let c=s.factory;return aR(s,g);function g(_){return _.isDeclarationFile?_:_s(_,d,s)}function d(_){if(!(_.transformFlags&64))return _;switch(_.kind){case 300:return h(_);default:return _s(_,d,s)}}function h(_){return _.variableDeclaration?_s(_,d,s):c.updateCatchClause(_,c.createVariableDeclaration(c.createTempVariable(void 0)),Mr(_.block,d,eg))}}function b3t(s){let{factory:c,hoistVariableDeclaration:g}=s;return aR(s,d);function d(ge){return ge.isDeclarationFile?ge:_s(ge,h,s)}function h(ge){if(!(ge.transformFlags&32))return ge;switch(ge.kind){case 214:{let Ie=T(ge,!1);return pe.assertNotNode(Ie,Gz),Ie}case 212:case 213:if(ZC(ge)){let Ie=V(ge,!1,!1);return pe.assertNotNode(Ie,Gz),Ie}return _s(ge,h,s);case 227:return ge.operatorToken.kind===61?ee(ge):_s(ge,h,s);case 221:return re(ge);default:return _s(ge,h,s)}}function _(ge){pe.assertNotNode(ge,NJ);let Ie=[ge];for(;!ge.questionDotToken&&!QI(ge);)ge=Ma(l2(ge.expression),ZC),pe.assertNotNode(ge,NJ),Ie.unshift(ge);return{expression:ge.expression,chain:Ie}}function S(ge,Ie,_e){let Ee=O(ge.expression,Ie,_e);return Gz(Ee)?c.createSyntheticReferenceExpression(c.updateParenthesizedExpression(ge,Ee.expression),Ee.thisArg):c.updateParenthesizedExpression(ge,Ee)}function R(ge,Ie,_e){if(ZC(ge))return V(ge,Ie,_e);let Ee=Mr(ge.expression,h,un);pe.assertNotNode(Ee,Gz);let Ne;return Ie&&(_Q(Ee)?Ne=Ee:(Ne=c.createTempVariable(g),Ee=c.createAssignment(Ne,Ee))),Ee=ge.kind===212?c.updatePropertyAccessExpression(ge,Ee,Mr(ge.name,h,Ir)):c.updateElementAccessExpression(ge,Ee,Mr(ge.argumentExpression,h,un)),Ne?c.createSyntheticReferenceExpression(Ee,Ne):Ee}function T(ge,Ie){if(ZC(ge))return V(ge,Ie,!1);if(dI(ge.expression)&&ZC(JA(ge.expression))){let _e=S(ge.expression,!0,!1),Ee=Os(ge.arguments,h,un);return Gz(_e)?gn(c.createFunctionCallCall(_e.expression,_e.thisArg,Ee),ge):c.updateCallExpression(ge,_e,void 0,Ee)}return _s(ge,h,s)}function O(ge,Ie,_e){switch(ge.kind){case 218:return S(ge,Ie,_e);case 212:case 213:return R(ge,Ie,_e);case 214:return T(ge,Ie);default:return Mr(ge,h,un)}}function V(ge,Ie,_e){let{expression:Ee,chain:Ne}=_(ge),Te=O(l2(Ee),vB(Ne[0]),!1),Ze=Gz(Te)?Te.thisArg:void 0,Pe=Gz(Te)?Te.expression:Te,Ke=c.restoreOuterExpressions(Ee,Pe,8);_Q(Pe)||(Pe=c.createTempVariable(g),Ke=c.createAssignment(Pe,Ke));let et=Pe,Ye;for(let at=0;atLt&&Pr(je,Os(yt.statements,M,Lc,Lt,Wt-Lt));break}Wt++}pe.assert(Wt_e(je,Lt))))],Lt,Rt===2)}return _s(yt,M,s)}function Ne(yt,Rt,Lt,je,Wt){let _r=[];for(let kt=Rt;ktc&&(c=d)}return c}function wBs(s){let c=0;for(let g of s){let d=Att(g.statements);if(d===2)return 2;d>c&&(c=d)}return c}function w3t(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getCompilerOptions(),h,_;return aR(s,M);function S(){if(_.filenameDeclaration)return _.filenameDeclaration.name;let dt=c.createVariableDeclaration(c.createUniqueName("_jsxFileName",48),void 0,void 0,c.createStringLiteral(h.fileName));return _.filenameDeclaration=dt,_.filenameDeclaration.name}function R(dt){return d.jsx===5?"jsxDEV":dt?"jsxs":"jsx"}function T(dt){let pr=R(dt);return V(pr)}function O(){return V("Fragment")}function V(dt){var pr,ot;let ir=dt==="createElement"?_.importSpecifier:rie(_.importSpecifier,d),qt=(ot=(pr=_.utilizedImplicitRuntimeImports)==null?void 0:pr.get(ir))==null?void 0:ot.get(dt);if(qt)return qt.name;_.utilizedImplicitRuntimeImports||(_.utilizedImplicitRuntimeImports=new Map);let Yt=_.utilizedImplicitRuntimeImports.get(ir);Yt||(Yt=new Map,_.utilizedImplicitRuntimeImports.set(ir,Yt));let Tr=c.createUniqueName(`_${dt}`,112),Cn=c.createImportSpecifier(!1,c.createIdentifier(dt),Tr);return u9e(Tr,Cn),Yt.set(dt,Cn),Tr}function M(dt){if(dt.isDeclarationFile)return dt;h=dt,_={},_.importSpecifier=tie(d,dt);let pr=_s(dt,ee,s);bN(pr,s.readEmitHelpers());let ot=pr.statements;if(_.filenameDeclaration&&(ot=PL(ot.slice(),c.createVariableStatement(void 0,c.createVariableDeclarationList([_.filenameDeclaration],2)))),_.utilizedImplicitRuntimeImports){for(let[ir,qt]of Do(_.utilizedImplicitRuntimeImports.entries()))if(Lm(dt)){let Yt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports(Do(qt.values()))),c.createStringLiteral(ir),void 0);e9(Yt,!1),ot=PL(ot.slice(),Yt)}else if(Sl(dt)){let Yt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createObjectBindingPattern(Do(qt.values(),Tr=>c.createBindingElement(void 0,Tr.propertyName,Tr.name))),void 0,void 0,c.createCallExpression(c.createIdentifier("require"),void 0,[c.createStringLiteral(ir)]))],2));e9(Yt,!1),ot=PL(ot.slice(),Yt)}}return ot!==pr.statements&&(pr=c.updateSourceFile(pr,ot)),_=void 0,pr}function ee(dt){return dt.transformFlags&2?re(dt):dt}function re(dt){switch(dt.kind){case 285:return Ne(dt,!1);case 286:return Te(dt,!1);case 289:return Ze(dt,!1);case 295:return Gr(dt);default:return _s(dt,ee,s)}}function ge(dt){switch(dt.kind){case 12:return Wt(dt);case 295:return Gr(dt);case 285:return Ne(dt,!0);case 286:return Te(dt,!0);case 289:return Ze(dt,!0);default:return pe.failBadSyntaxKind(dt)}}function Ie(dt){return dt.properties.some(pr=>Cm(pr)&&(Ir(pr.name)&&Vo(pr.name)==="__proto__"||Lg(pr.name)&&pr.name.text==="__proto__"))}function _e(dt){let pr=!1;for(let ot of dt.attributes.properties)if(Fz(ot)&&(!ag(ot.expression)||ot.expression.properties.some(Mx)))pr=!0;else if(pr&&TN(ot)&&Ir(ot.name)&&ot.name.escapedText==="key")return!0;return!1}function Ee(dt){return _.importSpecifier===void 0||_e(dt)}function Ne(dt,pr){return(Ee(dt.openingElement)?Tt:et)(dt.openingElement,dt.children,pr,dt)}function Te(dt,pr){return(Ee(dt)?Tt:et)(dt,void 0,pr,dt)}function Ze(dt,pr){return(_.importSpecifier===void 0?Qe:at)(dt.openingFragment,dt.children,pr,dt)}function Pe(dt){let pr=Ke(dt);return pr&&c.createObjectLiteralExpression([pr])}function Ke(dt){let pr=AU(dt);if(B(pr)===1&&!pr[0].dotDotDotToken){let ir=ge(pr[0]);return ir&&c.createPropertyAssignment("children",ir)}let ot=Xt(dt,ge);return B(ot)?c.createPropertyAssignment("children",c.createArrayLiteralExpression(ot)):void 0}function et(dt,pr,ot,ir){let qt=tr(dt),Yt=pr&&pr.length?Ke(pr):void 0,Tr=de(dt.attributes.properties,Zi=>!!Zi.name&&Ir(Zi.name)&&Zi.name.escapedText==="key"),Cn=Tr?Le(dt.attributes.properties,Zi=>Zi!==Tr):dt.attributes.properties,jn=B(Cn)?mt(Cn,Yt):c.createObjectLiteralExpression(Yt?[Yt]:E);return Ye(qt,jn,Tr,pr||E,ot,ir)}function Ye(dt,pr,ot,ir,qt,Yt){var Tr;let Cn=AU(ir),jn=B(Cn)>1||!!((Tr=Cn[0])!=null&&Tr.dotDotDotToken),Zi=[dt,pr];if(ot&&Zi.push(je(ot.initializer)),d.jsx===5){let An=xd(h);if(An&&al(An)){ot===void 0&&Zi.push(c.createVoidZero()),Zi.push(jn?c.createTrue():c.createFalse());let si=Ra(An,Yt.pos);Zi.push(c.createObjectLiteralExpression([c.createPropertyAssignment("fileName",S()),c.createPropertyAssignment("lineNumber",c.createNumericLiteral(si.line+1)),c.createPropertyAssignment("columnNumber",c.createNumericLiteral(si.character+1))])),Zi.push(c.createThis())}}let Ns=gn(c.createCallExpression(T(jn),void 0,Zi),Yt);return qt&&k0(Ns),Ns}function Tt(dt,pr,ot,ir){let qt=tr(dt),Yt=dt.attributes.properties,Tr=B(Yt)?mt(Yt):c.createNull(),Cn=_.importSpecifier===void 0?X$e(c,s.getEmitResolver().getJsxFactoryEntity(h),d.reactNamespace,dt):V("createElement"),jn=EOt(c,Cn,qt,Tr,Xt(pr,ge),ir);return ot&&k0(jn),jn}function at(dt,pr,ot,ir){let qt;if(pr&&pr.length){let Yt=Pe(pr);Yt&&(qt=Yt)}return Ye(O(),qt||c.createObjectLiteralExpression([]),void 0,pr,ot,ir)}function Qe(dt,pr,ot,ir){let qt=SOt(c,s.getEmitResolver().getJsxFactoryEntity(h),s.getEmitResolver().getJsxFragmentFactoryEntity(h),d.reactNamespace,Xt(pr,ge),dt,ir);return ot&&k0(qt),qt}function Ct(dt){return ag(dt.expression)&&!Ie(dt.expression)?Er(dt.expression.properties,pr=>pe.checkDefined(Mr(pr,ee,Bw))):c.createSpreadAssignment(pe.checkDefined(Mr(dt.expression,ee,un)))}function mt(dt,pr){let ot=Hg(d);return ot&&ot>=5?c.createObjectLiteralExpression(yt(dt,pr)):Rt(dt,pr)}function yt(dt,pr){let ot=Sr(yn(dt,Fz,(ir,qt)=>Sr(lt(ir,Yt=>qt?Ct(Yt):Lt(Yt)))));return pr&&ot.push(pr),ot}function Rt(dt,pr){let ot=[],ir=[];for(let Yt of dt){if(Fz(Yt)){if(ag(Yt.expression)&&!Ie(Yt.expression)){for(let Tr of Yt.expression.properties){if(Mx(Tr)){qt(),ot.push(pe.checkDefined(Mr(Tr.expression,ee,un)));continue}ir.push(pe.checkDefined(Mr(Tr,ee)))}continue}qt(),ot.push(pe.checkDefined(Mr(Yt.expression,ee,un)));continue}ir.push(Lt(Yt))}return pr&&ir.push(pr),qt(),ot.length&&!ag(ot[0])&&ot.unshift(c.createObjectLiteralExpression()),Ws(ot)||g().createAssignHelper(ot);function qt(){ir.length&&(ot.push(c.createObjectLiteralExpression(ir)),ir=[])}}function Lt(dt){let pr=ur(dt),ot=je(dt.initializer);return c.createPropertyAssignment(pr,ot)}function je(dt){if(dt===void 0)return c.createTrue();if(dt.kind===11){let pr=dt.singleQuote!==void 0?dt.singleQuote:!Cne(dt,h),ot=c.createStringLiteral(kt(dt.text)||dt.text,pr);return gn(ot,dt)}return dt.kind===295?dt.expression===void 0?c.createTrue():pe.checkDefined(Mr(dt.expression,ee,un)):wN(dt)?Ne(dt,!1):xU(dt)?Te(dt,!1):X3(dt)?Ze(dt,!1):pe.failBadSyntaxKind(dt)}function Wt(dt){let pr=_r(dt.text);return pr===void 0?void 0:c.createStringLiteral(pr)}function _r(dt){let pr,ot=0,ir=-1;for(let qt=0;qt{if(Yt)return tN(parseInt(Yt,10));if(Tr)return tN(parseInt(Tr,16));{let jn=TBs.get(Cn);return jn?tN(jn):pr}})}function kt(dt){let pr=it(dt);return pr===dt?void 0:pr}function tr(dt){if(dt.kind===285)return tr(dt.openingElement);{let pr=dt.tagName;return Ir(pr)&&dU(pr.escapedText)?c.createStringLiteral(Vo(pr)):sR(pr)?c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name)):NEe(c,pr)}}function ur(dt){let pr=dt.name;if(Ir(pr)){let ot=Vo(pr);return/^[A-Z_]\w*$/i.test(ot)?pr:c.createStringLiteral(ot)}return c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name))}function Gr(dt){let pr=Mr(dt.expression,ee,un);return dt.dotDotDotToken?c.createSpreadElement(pr):pr}}var TBs=new Map(Object.entries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}));function T3t(s){let{factory:c,hoistVariableDeclaration:g}=s;return aR(s,d);function d(T){return T.isDeclarationFile?T:_s(T,h,s)}function h(T){if(!(T.transformFlags&512))return T;switch(T.kind){case 227:return _(T);default:return _s(T,h,s)}}function _(T){switch(T.operatorToken.kind){case 68:return S(T);case 43:return R(T);default:return _s(T,h,s)}}function S(T){let O,V,M=Mr(T.left,h,un),ee=Mr(T.right,h,un);if(Qg(M)){let re=c.createTempVariable(g),ge=c.createTempVariable(g);O=gn(c.createElementAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),gn(c.createAssignment(ge,M.argumentExpression),M.argumentExpression)),M),V=gn(c.createElementAccessExpression(re,ge),M)}else if(jo(M)){let re=c.createTempVariable(g);O=gn(c.createPropertyAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),M.name),M),V=gn(c.createPropertyAccessExpression(re,M.name),M)}else O=M,V=M;return gn(c.createAssignment(O,gn(c.createGlobalMethodCall("Math","pow",[V,ee]),T)),T)}function R(T){let O=Mr(T.left,h,un),V=Mr(T.right,h,un);return gn(c.createGlobalMethodCall("Math","pow",[O,V]),T)}}function arn(s,c){return{kind:s,expression:c}}function R3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=s.getEmitResolver(),O=s.onSubstituteNode,V=s.onEmitNode;s.onEmitNode=HC,s.onSubstituteNode=vv;let M,ee,re,ge;function Ie(ct){ge=Ft(ge,c.createVariableDeclaration(ct))}let _e,Ee=0;return aR(s,Ne);function Ne(ct){if(ct.isDeclarationFile)return ct;M=ct,ee=ct.text;let en=mt(ct);return bN(en,s.readEmitHelpers()),M=void 0,ee=void 0,ge=void 0,re=0,en}function Te(ct,en){let gi=re;return re=(re&~ct|en)&32767,gi}function Ze(ct,en,gi){re=(re&~en|gi)&-32768|ct}function Pe(ct){return(re&8192)!==0&&ct.kind===254&&!ct.expression}function Ke(ct){return ct.transformFlags&4194304&&(C2(ct)||H3(ct)||aOt(ct)||Ede(ct)||Sde(ct)||Rie(ct)||vde(ct)||DU(ct)||fQ(ct)||HW(ct)||HT(ct,!1)||eg(ct))}function et(ct){return(ct.transformFlags&1024)!==0||_e!==void 0||re&8192&&Ke(ct)||HT(ct,!1)&&kl(ct)||(p1(ct)&1)!==0}function Ye(ct){return et(ct)?Ct(ct,!1):ct}function Tt(ct){return et(ct)?Ct(ct,!0):ct}function at(ct){if(et(ct)){let en=xd(ct);if(pi(en)&&tm(en)){let gi=Te(32670,16449),_i=Ct(ct,!1);return Ze(gi,229376,0),_i}return Ct(ct,!1)}return ct}function Qe(ct){return ct.kind===108?b2(ct,!0):Ye(ct)}function Ct(ct,en){switch(ct.kind){case 126:return;case 264:return tr(ct);case 232:return ur(ct);case 170:return Rg(ct);case 263:return En(ct);case 220:return Gi(ct);case 219:return nn(ct);case 261:return Bs(ct);case 80:return it(ct);case 262:return Mt(ct);case 256:return yt(ct);case 270:return Rt(ct);case 242:return cn(ct,!1);case 253:case 252:return kt(ct);case 257:return wn(ct);case 247:case 248:return es(ct,void 0);case 249:return Oi(ct,void 0);case 250:return Ui(ct,void 0);case 251:return gs(ct,void 0);case 245:return wt(ct);case 211:return dg(ct);case 300:return Uc(ct);case 305:return Ef(ct);case 168:return om(ct);case 210:return Zp(ct);case 214:return lh(ct);case 215:return y2(ct);case 218:return xe(ct,en);case 227:return fr(ct,en);case 357:return Ue(ct,en);case 15:case 16:case 17:case 18:return kA(ct);case 11:return gA(ct);case 9:return ym(ct);case 216:return lf(ct);case 229:return fI(ct);case 230:return Sh(ct);case 231:return DA(ct);case 108:return b2(ct,!1);case 110:return _r(ct);case 237:return f_(ct);case 175:return Fd(ct);case 178:case 179:return Vg(ct);case 244:return Hn(ct);case 254:return Wt(ct);case 223:return Gt(ct);default:return _s(ct,Ye,s)}}function mt(ct){let en=Te(8064,64),gi=[],_i=[];d();let ys=c.copyPrologue(ct.statements,gi,!1,Ye);return Pr(_i,Os(ct.statements,Ye,Lc,ys)),ge&&_i.push(c.createVariableStatement(void 0,c.createVariableDeclarationList(ge))),c.mergeLexicalEnvironment(gi,_()),st(gi,ct),Ze(en,0,0),c.updateSourceFile(ct,gn(c.createNodeArray(Nn(gi,_i)),ct.statements))}function yt(ct){if(_e!==void 0){let en=_e.allowedNonLabeledJumps;_e.allowedNonLabeledJumps|=2;let gi=_s(ct,Ye,s);return _e.allowedNonLabeledJumps=en,gi}return _s(ct,Ye,s)}function Rt(ct){let en=Te(7104,0),gi=_s(ct,Ye,s);return Ze(en,0,0),gi}function Lt(ct){return ua(c.createReturnStatement(je()),ct)}function je(){return c.createUniqueName("_this",48)}function Wt(ct){return _e?(_e.nonLocalJumps|=8,Pe(ct)&&(ct=Lt(ct)),c.createReturnStatement(c.createObjectLiteralExpression([c.createPropertyAssignment(c.createIdentifier("value"),ct.expression?pe.checkDefined(Mr(ct.expression,Ye,un)):c.createVoidZero())]))):Pe(ct)?Lt(ct):_s(ct,Ye,s)}function _r(ct){return re|=65536,re&2&&!(re&16384)&&(re|=131072),_e?re&2?(_e.containsLexicalThis=!0,ct):_e.thisName||(_e.thisName=c.createUniqueName("this")):ct}function Gt(ct){return _s(ct,Tt,s)}function it(ct){return _e&&T.isArgumentsLocalBinding(ct)?_e.argumentsName||(_e.argumentsName=c.createUniqueName("arguments")):ct.flags&256?ua(gn(c.createIdentifier(Bc(ct.escapedText)),ct),ct):ct}function kt(ct){if(_e){let en=ct.kind===253?2:4;if(!(ct.label&&_e.labels&&_e.labels.get(Vo(ct.label))||!ct.label&&_e.allowedNonLabeledJumps&en)){let _i,ys=ct.label;ys?ct.kind===253?(_i=`break-${ys.escapedText}`,mr(_e,!0,Vo(ys),_i)):(_i=`continue-${ys.escapedText}`,mr(_e,!1,Vo(ys),_i)):ct.kind===253?(_e.nonLocalJumps|=2,_i="break"):(_e.nonLocalJumps|=4,_i="continue");let $s=c.createStringLiteral(_i);if(_e.loopOutParameters.length){let wa=_e.loopOutParameters,pc;for(let cl=0;clIr(en.name)&&!en.initializer)}function Tr(ct){if(xy(ct))return!0;if(!(ct.transformFlags&134217728))return!1;switch(ct.kind){case 220:case 219:case 263:case 177:case 176:return!1;case 178:case 179:case 175:case 173:{let en=ct;return Un(en.name)?!!Lu(en.name,Tr):!1}}return!!Lu(ct,Tr)}function Cn(ct,en,gi,_i){let ys=!!gi&&XI(gi.expression).kind!==106;if(!ct)return qt(en,ys);let $s=[],wa=[];h();let pc=c.copyStandardPrologue(ct.body.statements,$s,0);(_i||Tr(ct.body))&&(re|=8192),Pr(wa,Os(ct.body.statements,Ye,Lc,pc));let cl=ys||re&8192;Tu($s,ct),on($s,ct,_i),Zr($s,ct),cl?nr($s,ct,$c()):st($s,ct),c.mergeLexicalEnvironment($s,_()),cl&&!Pa(ct.body)&&wa.push(c.createReturnStatement(je()));let Fe=c.createBlock(gn(c.createNodeArray([...$s,...wa]),ct.body.statements),!0);return gn(Fe,ct.body),pa(Fe,ct.body,_i)}function jn(ct){return Gp(ct)&&Vo(ct)==="_this"}function Zi(ct){return Gp(ct)&&Vo(ct)==="_super"}function Ns(ct){return Eh(ct)&&ct.declarationList.declarations.length===1&&An(ct.declarationList.declarations[0])}function An(ct){return nc(ct)&&jn(ct.name)&&!!ct.initializer}function si(ct){return zm(ct,!0)&&jn(ct.left)}function ks(ct){return Ll(ct)&&jo(ct.expression)&&Zi(ct.expression.expression)&&Ir(ct.expression.name)&&(Vo(ct.expression.name)==="call"||Vo(ct.expression.name)==="apply")&&ct.arguments.length>=1&&ct.arguments[0].kind===110}function Ic(ct){return po(ct)&&ct.operatorToken.kind===57&&ct.right.kind===110&&ks(ct.left)}function ou(ct){return po(ct)&&ct.operatorToken.kind===56&&po(ct.left)&&ct.left.operatorToken.kind===38&&Zi(ct.left.left)&&ct.left.right.kind===106&&ks(ct.right)&&Vo(ct.right.expression.name)==="apply"}function Zn(ct){return po(ct)&&ct.operatorToken.kind===57&&ct.right.kind===110&&ou(ct.left)}function ya(ct){return si(ct)&&Ic(ct.right)}function Fl(ct){return si(ct)&&Zn(ct.right)}function ba(ct){return ks(ct)||Ic(ct)||ya(ct)||ou(ct)||Zn(ct)||Fl(ct)}function Oo(ct){for(let en=0;en0;_i--){let ys=ct.statements[_i];if(C2(ys)&&ys.expression&&jn(ys.expression)){let $s=ct.statements[_i-1],wa;if(OC($s)&&ya(XI($s.expression)))wa=$s.expression;else if(gi&&Ns($s)){let Fe=$s.declarationList.declarations[0];ba(XI(Fe.initializer))&&(wa=c.createAssignment(je(),Fe.initializer))}if(!wa)break;let pc=c.createReturnStatement(wa);ua(pc,$s),gn(pc,$s);let cl=c.createNodeArray([...ct.statements.slice(0,_i-1),pc,...ct.statements.slice(_i+1)]);return gn(cl,ct.statements),c.updateBlock(ct,cl)}}return ct}function yr(ct){if(Ns(ct)){if(ct.declarationList.declarations[0].initializer.kind===110)return}else if(si(ct))return c.createPartiallyEmittedExpression(ct.right,ct);switch(ct.kind){case 220:case 219:case 263:case 177:case 176:return ct;case 178:case 179:case 175:case 173:{let en=ct;return Un(en.name)?c.replacePropertyName(en,_s(en.name,yr,void 0)):ct}}return _s(ct,yr,void 0)}function hn(ct,en){if(en.transformFlags&16384||re&65536||re&131072)return ct;for(let gi of en.statements)if(gi.transformFlags&134217728&&!uVe(gi))return ct;return c.updateBlock(ct,Os(ct.statements,yr,Lc))}function Pi(ct){if(ks(ct)&&ct.arguments.length===2&&Ir(ct.arguments[1])&&Vo(ct.arguments[1])==="arguments")return c.createLogicalAnd(c.createStrictInequality(KI(),c.createNull()),ct);switch(ct.kind){case 220:case 219:case 263:case 177:case 176:return ct;case 178:case 179:case 175:case 173:{let en=ct;return Un(en.name)?c.replacePropertyName(en,_s(en.name,Pi,void 0)):ct}}return _s(ct,Pi,void 0)}function co(ct){return c.updateBlock(ct,Os(ct.statements,Pi,Lc))}function pa(ct,en,gi){let _i=ct;return ct=Oo(ct),ct=hc(ct,en),ct!==_i&&(ct=hn(ct,en)),gi&&(ct=co(ct)),ct}function Pa(ct){if(ct.kind===254)return!0;if(ct.kind===246){let en=ct;if(en.elseStatement)return Pa(en.thenStatement)&&Pa(en.elseStatement)}else if(ct.kind===242){let en=li(ct.statements);if(en&&Pa(en))return!0}return!1}function $c(){return ti(c.createThis(),8)}function Qu(){return c.createLogicalOr(c.createLogicalAnd(c.createStrictInequality(KI(),c.createNull()),c.createFunctionApplyCall(KI(),$c(),c.createIdentifier("arguments"))),$c())}function Rg(ct){if(!ct.dotDotDotToken)return Nu(ct.name)?ua(gn(c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(ct),void 0,void 0,void 0),ct),ct):ct.initializer?ua(gn(c.createParameterDeclaration(void 0,void 0,ct.name,void 0,void 0,void 0),ct),ct):ct}function Cs(ct){return ct.initializer!==void 0||Nu(ct.name)}function Tu(ct,en){if(!zt(en.parameters,Cs))return!1;let gi=!1;for(let _i of en.parameters){let{name:ys,initializer:$s,dotDotDotToken:wa}=_i;wa||(Nu(ys)?gi=Wr(ct,_i,ys,$s)||gi:$s&&(Wn(ct,_i,ys,$s),gi=!0))}return gi}function Wr(ct,en,gi,_i){return gi.elements.length>0?(PL(ct,ti(c.createVariableStatement(void 0,c.createVariableDeclarationList(yQ(en,Ye,s,0,c.getGeneratedNameForNode(en)))),2097152)),!0):_i?(PL(ct,ti(c.createExpressionStatement(c.createAssignment(c.getGeneratedNameForNode(en),pe.checkDefined(Mr(_i,Ye,un)))),2097152)),!0):!1}function Wn(ct,en,gi,_i){_i=pe.checkDefined(Mr(_i,Ye,un));let ys=c.createIfStatement(c.createTypeCheck(c.cloneNode(gi),"undefined"),ti(gn(c.createBlock([c.createExpressionStatement(ti(gn(c.createAssignment(ti(UA(gn(c.cloneNode(gi),gi),gi.parent),96),ti(_i,96|rA(_i)|3072)),en),3072))]),en),3905));k0(ys),gn(ys,en),ti(ys,2101056),PL(ct,ys)}function pt(ct,en){return!!(ct&&ct.dotDotDotToken&&!en)}function on(ct,en,gi){let _i=[],ys=li(en.parameters);if(!pt(ys,gi))return!1;let $s=ys.name.kind===80?UA(gn(c.cloneNode(ys.name),ys.name),ys.name.parent):c.createTempVariable(void 0);ti($s,96);let wa=ys.name.kind===80?c.cloneNode(ys.name):$s,pc=en.parameters.length-1,cl=c.createLoopVariable();_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration($s,void 0,void 0,c.createArrayLiteralExpression([]))])),ys),2097152));let Fe=c.createForStatement(gn(c.createVariableDeclarationList([c.createVariableDeclaration(cl,void 0,void 0,c.createNumericLiteral(pc))]),ys),gn(c.createLessThan(cl,c.createPropertyAccessExpression(c.createIdentifier("arguments"),"length")),ys),gn(c.createPostfixIncrement(cl),ys),c.createBlock([k0(gn(c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(wa,pc===0?cl:c.createSubtract(cl,c.createNumericLiteral(pc))),c.createElementAccessExpression(c.createIdentifier("arguments"),cl))),ys))]));return ti(Fe,2097152),k0(Fe),_i.push(Fe),ys.name.kind!==80&&_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList(yQ(ys,Ye,s,0,wa))),ys),2097152)),ene(ct,_i),!0}function st(ct,en){return re&131072&&en.kind!==220?(nr(ct,en,c.createThis()),!0):!1}function nr(ct,en,gi){dy();let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(je(),void 0,void 0,gi)]));ti(_i,2100224),Yg(_i,en),PL(ct,_i)}function Zr(ct,en){if(re&32768){let gi;switch(en.kind){case 220:return ct;case 175:case 178:case 179:gi=c.createVoidZero();break;case 177:gi=c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor");break;case 263:case 219:gi=c.createConditionalExpression(c.createLogicalAnd(ti(c.createThis(),8),c.createBinaryExpression(ti(c.createThis(),8),104,c.getLocalName(en))),void 0,c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor"),void 0,c.createVoidZero());break;default:return pe.failBadSyntaxKind(en)}let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createUniqueName("_newTarget",48),void 0,void 0,gi)]));ti(_i,2100224),PL(ct,_i)}return ct}function Kr(ct,en){for(let gi of en.members)switch(gi.kind){case 241:ct.push(Dn(gi));break;case 175:ct.push(hr(mS(en,gi),gi,en));break;case 178:case 179:let _i=GW(en.members,gi);gi===_i.firstAccessor&&ct.push(Sn(mS(en,gi),_i,en));break;case 177:case 176:break;default:pe.failBadSyntaxKind(gi,M&&M.fileName);break}}function Dn(ct){return gn(c.createEmptyStatement(),ct)}function hr(ct,en,gi){let _i=ZB(en),ys=zT(en),$s=ds(en,en,void 0,gi),wa=Mr(en.name,Ye,PI);pe.assert(wa);let pc;if(!p(wa)&&$ne(s.getCompilerOptions())){let Fe=Un(wa)?wa.expression:Ir(wa)?c.createStringLiteral(Bc(wa.escapedText)):wa;pc=c.createObjectDefinePropertyCall(ct,Fe,c.createPropertyDescriptor({value:$s,enumerable:!1,writable:!0,configurable:!0}))}else{let Fe=ZU(c,ct,wa,en.name);pc=c.createAssignment(Fe,$s)}ti($s,3072),Yg($s,ys);let cl=gn(c.createExpressionStatement(pc),en);return ua(cl,en),yh(cl,_i),ti(cl,96),cl}function Sn(ct,en,gi){let _i=c.createExpressionStatement(Ni(ct,en,gi,!1));return ti(_i,3072),Yg(_i,zT(en.firstAccessor)),_i}function Ni(ct,{firstAccessor:en,getAccessor:gi,setAccessor:_i},ys,$s){let wa=UA(gn(c.cloneNode(ct),ct),ct.parent);ti(wa,3136),Yg(wa,en.name);let pc=Mr(en.name,Ye,PI);if(pe.assert(pc),p(pc))return pe.failBadSyntaxKind(pc,"Encountered unhandled private identifier while transforming ES2015.");let cl=U$e(c,pc);ti(cl,3104),Yg(cl,en.name);let Fe=[];if(gi){let Ln=ds(gi,void 0,void 0,ys);Yg(Ln,zT(gi)),ti(Ln,1024);let bs=c.createPropertyAssignment("get",Ln);yh(bs,ZB(gi)),Fe.push(bs)}if(_i){let Ln=ds(_i,void 0,void 0,ys);Yg(Ln,zT(_i)),ti(Ln,1024);let bs=c.createPropertyAssignment("set",Ln);yh(bs,ZB(_i)),Fe.push(bs)}Fe.push(c.createPropertyAssignment("enumerable",gi||_i?c.createFalse():c.createTrue()),c.createPropertyAssignment("configurable",c.createTrue()));let gr=c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"defineProperty"),void 0,[wa,cl,c.createObjectLiteralExpression(Fe,!0)]);return $s&&k0(gr),gr}function Gi(ct){ct.transformFlags&16384&&!(re&16384)&&(re|=131072);let en=_e;_e=void 0;let gi=Te(15232,66),_i=c.createFunctionExpression(void 0,void 0,void 0,void 0,wI(ct.parameters,Ye,s),void 0,Ht(ct));return gn(_i,ct),ua(_i,ct),ti(_i,16),Ze(gi,0,0),_e=en,_i}function nn(ct){let en=rA(ct)&524288?Te(32662,69):Te(32670,65),gi=_e;_e=void 0;let _i=wI(ct.parameters,Ye,s),ys=Ht(ct),$s=re&32768?c.getLocalName(ct):ct.name;return Ze(en,229376,0),_e=gi,c.updateFunctionExpression(ct,void 0,ct.asteriskToken,$s,void 0,_i,void 0,ys)}function En(ct){let en=_e;_e=void 0;let gi=Te(32670,65),_i=wI(ct.parameters,Ye,s),ys=Ht(ct),$s=re&32768?c.getLocalName(ct):ct.name;return Ze(gi,229376,0),_e=en,c.updateFunctionDeclaration(ct,Os(ct.modifiers,Ye,hg),ct.asteriskToken,$s,void 0,_i,void 0,ys)}function ds(ct,en,gi,_i){let ys=_e;_e=void 0;let $s=_i&&xa(_i)&&!lg(ct)?Te(32670,73):Te(32670,65),wa=wI(ct.parameters,Ye,s),pc=Ht(ct);return re&32768&&!gi&&(ct.kind===263||ct.kind===219)&&(gi=c.getGeneratedNameForNode(ct)),Ze($s,229376,0),_e=ys,ua(gn(c.createFunctionExpression(void 0,ct.asteriskToken,gi,void 0,wa,void 0,pc),en),ct)}function Ht(ct){let en=!1,gi=!1,_i,ys,$s=[],wa=[],pc=ct.body,cl;if(h(),eg(pc)&&(cl=c.copyStandardPrologue(pc.statements,$s,0,!1),cl=c.copyCustomPrologue(pc.statements,wa,cl,Ye,jge),cl=c.copyCustomPrologue(pc.statements,wa,cl,Ye,zge)),en=Tu(wa,ct)||en,en=on(wa,ct,!1)||en,eg(pc))cl=c.copyCustomPrologue(pc.statements,wa,cl,Ye),_i=pc.statements,Pr(wa,Os(pc.statements,Ye,Lc,cl)),!en&&pc.multiLine&&(en=!0);else{pe.assert(ct.kind===220),_i=xAe(pc,-1);let gr=ct.equalsGreaterThanToken;!ap(gr)&&!ap(pc)&&(Xne(gr,pc,M)?gi=!0:en=!0);let Ln=Mr(pc,Ye,un),bs=c.createReturnStatement(Ln);gn(bs,pc),i9e(bs,pc),ti(bs,2880),wa.push(bs),ys=pc}if(c.mergeLexicalEnvironment($s,_()),Zr($s,ct),st($s,ct),zt($s)&&(en=!0),wa.unshift(...$s),eg(pc)&&Sc(wa,pc.statements))return pc;let Fe=c.createBlock(gn(c.createNodeArray(wa),_i),en);return gn(Fe,ct.body),!en&&gi&&ti(Fe,1),ys&&hEe(Fe,20,ys),ua(Fe,ct.body),Fe}function cn(ct,en){if(en)return _s(ct,Ye,s);let gi=re&256?Te(7104,512):Te(6976,128),_i=_s(ct,Ye,s);return Ze(gi,0,0),_i}function wt(ct){return _s(ct,Tt,s)}function xe(ct,en){return _s(ct,en?Tt:Ye,s)}function fr(ct,en){return Zx(ct)?PU(ct,Ye,s,0,!en):ct.operatorToken.kind===28?c.updateBinaryExpression(ct,pe.checkDefined(Mr(ct.left,Tt,un)),ct.operatorToken,pe.checkDefined(Mr(ct.right,en?Tt:Ye,un))):_s(ct,Ye,s)}function Ue(ct,en){if(en)return _s(ct,Tt,s);let gi;for(let ys=0;yscl.name)),pc=_i?c.createYieldExpression(c.createToken(42),ti(wa,8388608)):wa;if($s)ys.push(c.createExpressionStatement(pc)),bf(en.loopOutParameters,1,0,ys);else{let cl=c.createUniqueName("state"),Fe=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(cl,void 0,void 0,pc)]));if(ys.push(Fe),bf(en.loopOutParameters,1,0,ys),en.nonLocalJumps&8){let gr;gi?(gi.nonLocalJumps|=8,gr=c.createReturnStatement(cl)):gr=c.createReturnStatement(c.createPropertyAccessExpression(cl,"value")),ys.push(c.createIfStatement(c.createTypeCheck(cl,"object"),gr))}if(en.nonLocalJumps&2&&ys.push(c.createIfStatement(c.createStrictEquality(cl,c.createStringLiteral("break")),c.createBreakStatement())),en.labeledNonLocalBreaks||en.labeledNonLocalContinues){let gr=[];ln(en.labeledNonLocalBreaks,!0,cl,gi,gr),ln(en.labeledNonLocalContinues,!1,cl,gi,gr),ys.push(c.createSwitchStatement(cl,c.createCaseBlock(gr)))}}return ys}function mr(ct,en,gi,_i){en?(ct.labeledNonLocalBreaks||(ct.labeledNonLocalBreaks=new Map),ct.labeledNonLocalBreaks.set(gi,_i)):(ct.labeledNonLocalContinues||(ct.labeledNonLocalContinues=new Map),ct.labeledNonLocalContinues.set(gi,_i))}function ln(ct,en,gi,_i,ys){ct&&ct.forEach(($s,wa)=>{let pc=[];if(!_i||_i.labels&&_i.labels.get(wa)){let cl=c.createIdentifier(wa);pc.push(en?c.createBreakStatement(cl):c.createContinueStatement(cl))}else mr(_i,en,wa,$s),pc.push(c.createReturnStatement(gi));ys.push(c.createCaseClause(c.createStringLiteral($s),pc))})}function ni(ct,en,gi,_i,ys){let $s=en.name;if(Nu($s))for(let wa of $s.elements)Ep(wa)||ni(ct,wa,gi,_i,ys);else{gi.push(c.createParameterDeclaration(void 0,void 0,$s));let wa=T.hasNodeCheckFlag(en,65536);if(wa||ys){let pc=c.createUniqueName("out_"+Vo($s)),cl=0;wa&&(cl|=1),Y3(ct)&&(ct.initializer&&T.isBindingCapturedByNode(ct.initializer,en)&&(cl|=2),(ct.condition&&T.isBindingCapturedByNode(ct.condition,en)||ct.incrementor&&T.isBindingCapturedByNode(ct.incrementor,en))&&(cl|=1)),_i.push({flags:cl,originalName:$s,outParamName:pc})}}}function Ls(ct,en,gi,_i){let ys=en.properties,$s=ys.length;for(let wa=_i;wa<$s;wa++){let pc=ys[wa];switch(pc.kind){case 178:case 179:let cl=GW(en.properties,pc);pc===cl.firstAccessor&&ct.push(Ni(gi,cl,en,!!en.multiLine));break;case 175:ct.push(Ss(pc,gi,en,en.multiLine));break;case 304:ct.push(Za(pc,gi,en.multiLine));break;case 305:ct.push(Go(pc,gi,en.multiLine));break;default:pe.failBadSyntaxKind(en);break}}}function Za(ct,en,gi){let _i=c.createAssignment(ZU(c,en,pe.checkDefined(Mr(ct.name,Ye,PI))),pe.checkDefined(Mr(ct.initializer,Ye,un)));return gn(_i,ct),gi&&k0(_i),_i}function Go(ct,en,gi){let _i=c.createAssignment(ZU(c,en,pe.checkDefined(Mr(ct.name,Ye,PI))),c.cloneNode(ct.name));return gn(_i,ct),gi&&k0(_i),_i}function Ss(ct,en,gi,_i){let ys=c.createAssignment(ZU(c,en,pe.checkDefined(Mr(ct.name,Ye,PI))),ds(ct,ct,void 0,gi));return gn(ys,ct),_i&&k0(ys),ys}function Uc(ct){let en=Te(7104,0),gi;if(pe.assert(!!ct.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),Nu(ct.variableDeclaration.name)){let _i=c.createTempVariable(void 0),ys=c.createVariableDeclaration(_i);gn(ys,ct.variableDeclaration);let $s=yQ(ct.variableDeclaration,Ye,s,0,_i),wa=c.createVariableDeclarationList($s);gn(wa,ct.variableDeclaration);let pc=c.createVariableStatement(void 0,wa);gi=c.updateCatchClause(ct,ys,el(ct.block,pc))}else gi=_s(ct,Ye,s);return Ze(en,0,0),gi}function el(ct,en){let gi=Os(ct.statements,Ye,Lc);return c.updateBlock(ct,[en,...gi])}function Fd(ct){pe.assert(!Un(ct.name));let en=ds(ct,ek(ct,-1),void 0,void 0);return ti(en,1024|rA(en)),gn(c.createPropertyAssignment(ct.name,en),ct)}function Vg(ct){pe.assert(!Un(ct.name));let en=_e;_e=void 0;let gi=Te(32670,65),_i,ys=wI(ct.parameters,Ye,s),$s=Ht(ct);return ct.kind===178?_i=c.updateGetAccessorDeclaration(ct,ct.modifiers,ct.name,ys,ct.type,$s):_i=c.updateSetAccessorDeclaration(ct,ct.modifiers,ct.name,ys,$s),Ze(gi,229376,0),_e=en,_i}function Ef(ct){return gn(c.createPropertyAssignment(ct.name,it(c.cloneNode(ct.name))),ct)}function om(ct){return _s(ct,Ye,s)}function Sh(ct){return _s(ct,Ye,s)}function Zp(ct){return zt(ct.elements,cf)?Ob(ct.elements,!1,!!ct.multiLine,!!ct.elements.hasTrailingComma):_s(ct,Ye,s)}function lh(ct){if(p1(ct)&1)return v1(ct);let en=XI(ct.expression);return en.kind===108||Fy(en)||zt(ct.arguments,cf)?V_(ct,!0):c.updateCallExpression(ct,pe.checkDefined(Mr(ct.expression,Qe,un)),void 0,Os(ct.arguments,Ye,un))}function v1(ct){let en=Ma(Ma(XI(ct.expression),uA).body,eg),gi=Ug=>Eh(Ug)&&!!ma(Ug.declarationList.declarations).initializer,_i=_e;_e=void 0;let ys=Os(en.statements,at,Lc);_e=_i;let $s=Le(ys,gi),wa=Le(ys,Ug=>!gi(Ug)),cl=Ma(ma($s),Eh).declarationList.declarations[0],Fe=XI(cl.initializer),gr=Gs(Fe,zm);!gr&&po(Fe)&&Fe.operatorToken.kind===28&&(gr=Gs(Fe.left,zm));let Ln=Ma(gr?XI(gr.right):Fe,Ll),bs=Ma(XI(Ln.expression),jA),Jl=bs.body.statements,tg=0,zl=-1,Su=[];if(gr){let Ug=Gs(Jl[tg],OC);Ug&&(Su.push(Ug),tg++),Su.push(Jl[tg]),tg++,Su.push(c.createExpressionStatement(c.createAssignment(gr.left,Ma(cl.name,Ir))))}for(;!C2(_g(Jl,zl));)zl--;Pr(Su,Jl,tg,zl),zl<-1&&Pr(Su,Jl,zl+1);let xf=Gs(_g(Jl,zl),C2);for(let Ug of wa)C2(Ug)&&xf?.expression&&!Ir(xf.expression)?Su.push(xf):Su.push(Ug);return Pr(Su,$s,1),c.restoreOuterExpressions(ct.expression,c.restoreOuterExpressions(cl.initializer,c.restoreOuterExpressions(gr&&gr.right,c.updateCallExpression(Ln,c.restoreOuterExpressions(Ln.expression,c.updateFunctionExpression(bs,void 0,void 0,void 0,void 0,bs.parameters,void 0,c.updateBlock(bs.body,Su))),void 0,Ln.arguments))))}function V_(ct,en){if(ct.transformFlags&32768||ct.expression.kind===108||Fy(XI(ct.expression))){let{target:gi,thisArg:_i}=c.createCallBinding(ct.expression,S);ct.expression.kind===108&&ti(_i,8);let ys;if(ct.transformFlags&32768?ys=c.createFunctionApplyCall(pe.checkDefined(Mr(gi,Qe,un)),ct.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Ob(ct.arguments,!0,!1,!1)):ys=gn(c.createFunctionCallCall(pe.checkDefined(Mr(gi,Qe,un)),ct.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Os(ct.arguments,Ye,un)),ct),ct.expression.kind===108){let $s=c.createLogicalOr(ys,$c());ys=en?c.createAssignment(je(),$s):$s}return ua(ys,ct)}return xy(ct)&&(re|=131072),_s(ct,Ye,s)}function y2(ct){if(zt(ct.arguments,cf)){let{target:en,thisArg:gi}=c.createCallBinding(c.createPropertyAccessExpression(ct.expression,"bind"),S);return c.createNewExpression(c.createFunctionApplyCall(pe.checkDefined(Mr(en,Ye,un)),gi,Ob(c.createNodeArray([c.createVoidZero(),...ct.arguments]),!0,!1,!1)),void 0,[])}return _s(ct,Ye,s)}function Ob(ct,en,gi,_i){let ys=ct.length,$s=Sr(yn(ct,or,(Fe,gr,Ln,bs)=>gr(Fe,gi,_i&&bs===ys)));if($s.length===1){let Fe=$s[0];if(en&&!R.downlevelIteration||rEe(Fe.expression)||nk(Fe.expression,"___spreadArray"))return Fe.expression}let wa=g(),pc=$s[0].kind!==0,cl=pc?c.createArrayLiteralExpression():$s[0].expression;for(let Fe=pc?0:1;Fe<$s.length;Fe++){let gr=$s[Fe];cl=wa.createSpreadArrayHelper(cl,gr.expression,gr.kind===1&&!en)}return cl}function or(ct){return cf(ct)?qn:Yl}function qn(ct){return lt(ct,Js)}function Js(ct){pe.assertNode(ct,cf);let en=Mr(ct.expression,Ye,un);pe.assert(en);let gi=nk(en,"___read"),_i=gi||rEe(en)?2:1;return R.downlevelIteration&&_i===1&&!YI(en)&&!gi&&(en=g().createReadHelper(en,void 0),_i=2),arn(_i,en)}function Yl(ct,en,gi){let _i=c.createArrayLiteralExpression(Os(c.createNodeArray(ct,gi),Ye,un),en);return arn(0,_i)}function DA(ct){return Mr(ct.expression,Ye,un)}function kA(ct){return gn(c.createStringLiteral(ct.text),ct)}function gA(ct){return ct.hasExtendedUnicodeEscape?gn(c.createStringLiteral(ct.text),ct):ct}function ym(ct){return ct.numericLiteralFlags&384?gn(c.createNumericLiteral(ct.text),ct):ct}function lf(ct){return gtt(s,ct,Ye,M,Ie,1)}function fI(ct){let en=c.createStringLiteral(ct.head.text);for(let gi of ct.templateSpans){let _i=[pe.checkDefined(Mr(gi.expression,Ye,un))];gi.literal.text.length>0&&_i.push(c.createStringLiteral(gi.literal.text)),en=c.createCallExpression(c.createPropertyAccessExpression(en,"concat"),void 0,_i)}return gn(en,ct)}function KI(){return c.createUniqueName("_super",48)}function b2(ct,en){let gi=re&8&&!en?c.createPropertyAccessExpression(ua(KI(),ct),"prototype"):KI();return ua(gi,ct),yh(gi,ct),Yg(gi,ct),gi}function f_(ct){return ct.keywordToken===105&&ct.name.escapedText==="target"?(re|=32768,c.createUniqueName("_newTarget",48)):ct}function HC(ct,en,gi){if(Ee&1&&Eu(en)){let _i=Te(32670,rA(en)&16?81:65);V(ct,en,gi),Ze(_i,0,0);return}V(ct,en,gi)}function B1(){Ee&2||(Ee|=2,s.enableSubstitution(80))}function dy(){Ee&1||(Ee|=1,s.enableSubstitution(110),s.enableEmitNotification(177),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(220),s.enableEmitNotification(219),s.enableEmitNotification(263))}function vv(ct,en){return en=O(ct,en),ct===1?Xx(en):Ir(en)?lk(en):en}function lk(ct){if(Ee&2&&!K$e(ct)){let en=eu(ct,Ir);if(en&&Qx(en))return gn(c.getGeneratedNameForNode(en),ct)}return ct}function Qx(ct){switch(ct.parent.kind){case 209:case 264:case 267:case 261:return ct.parent.name===ct&&T.isDeclarationWithCollidingName(ct.parent)}return!1}function Xx(ct){switch(ct.kind){case 80:return Pb(ct);case 110:return gR(ct)}return ct}function Pb(ct){if(Ee&2&&!K$e(ct)){let en=T.getReferencedDeclarationWithCollidingName(ct);if(en&&!(xa(en)&&rC(en,ct)))return gn(c.getGeneratedNameForNode(fl(en)),ct)}return ct}function rC(ct,en){let gi=eu(en);if(!gi||gi===ct||gi.end<=ct.pos||gi.pos>=ct.end)return!1;let _i=sS(ct);for(;gi;){if(gi===_i||gi===ct)return!1;if(MI(gi)&&gi.parent===ct)return!0;gi=gi.parent}return!1}function gR(ct){return Ee&1&&re&16?gn(je(),ct):ct}function mS(ct,en){return lg(en)?c.getInternalName(ct):c.createPropertyAccessExpression(c.getInternalName(ct),"prototype")}function VN(ct,en){if(!ct||!en||zt(ct.parameters))return!1;let gi=Nc(ct.body.statements);if(!gi||!ap(gi)||gi.kind!==245)return!1;let _i=gi.expression;if(!ap(_i)||_i.kind!==214)return!1;let ys=_i.expression;if(!ap(ys)||ys.kind!==108)return!1;let $s=Ws(_i.arguments);if(!$s||!ap($s)||$s.kind!==231)return!1;let wa=$s.expression;return Ir(wa)&&wa.escapedText==="arguments"}}function RBs(s){switch(s){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function N3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistFunctionDeclaration:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=Hg(R),O=s.getEmitResolver(),V=s.onSubstituteNode;s.onSubstituteNode=wt;let M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe=1,Ke,et,Ye,Tt,at=0,Qe=0,Ct,mt,yt,Rt,Lt,je,Wt,_r;return aR(s,Gt);function Gt(or){if(or.isDeclarationFile||!(or.transformFlags&2048))return or;let qn=_s(or,it,s);return bN(qn,s.readEmitHelpers()),qn}function it(or){let qn=or.transformFlags;return ge?kt(or):re?tr(or):Gd(or)&&or.asteriskToken?Gr(or):qn&2048?_s(or,it,s):or}function kt(or){switch(or.kind){case 247:return Qu(or);case 248:return Cs(or);case 256:return Ni(or);case 257:return nn(or);default:return tr(or)}}function tr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);case 178:case 179:return ot(or);case 244:return qt(or);case 249:return Wr(or);case 250:return pt(or);case 253:return Zr(or);case 252:return st(or);case 254:return Dn(or);default:return or.transformFlags&1048576?ur(or):or.transformFlags&4196352?_s(or,it,s):or}}function ur(or){switch(or.kind){case 227:return Yt(or);case 357:return Zi(or);case 228:return An(or);case 230:return si(or);case 210:return ks(or);case 211:return ou(or);case 213:return Zn(or);case 214:return ya(or);case 215:return Fl(or);default:return _s(or,it,s)}}function Gr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);default:return pe.failBadSyntaxKind(or)}}function dt(or){if(or.asteriskToken)or=ua(gn(c.createFunctionDeclaration(or.modifiers,void 0,or.name,void 0,wI(or.parameters,it,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,it,s),re=qn,ge=Js}if(re){_(or);return}else return or}function pr(or){if(or.asteriskToken)or=ua(gn(c.createFunctionExpression(void 0,void 0,or.name,void 0,wI(or.parameters,it,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,it,s),re=qn,ge=Js}return or}function ot(or){let qn=re,Js=ge;return re=!1,ge=!1,or=_s(or,it,s),re=qn,ge=Js,or}function ir(or){let qn=[],Js=re,Yl=ge,DA=Ie,kA=_e,gA=Ee,ym=Ne,lf=Te,fI=Ze,KI=Pe,b2=Ke,f_=et,HC=Ye,B1=Tt;re=!0,ge=!1,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Ze=void 0,Pe=1,Ke=void 0,et=void 0,Ye=void 0,Tt=c.createTempVariable(void 0),d();let dy=c.copyPrologue(or.statements,qn,!1,it);ba(or.statements,dy);let vv=mr();return Rw(qn,h()),qn.push(c.createReturnStatement(vv)),re=Js,ge=Yl,Ie=DA,_e=kA,Ee=gA,Ne=ym,Te=lf,Ze=fI,Pe=KI,Ke=b2,et=f_,Ye=HC,Tt=B1,gn(c.createBlock(qn,or.multiLine),or)}function qt(or){if(or.transformFlags&1048576){co(or.declarationList);return}else{if(rA(or)&2097152)return or;for(let Js of or.declarationList.declarations)S(Js.name);let qn=hU(or.declarationList);return qn.length===0?void 0:Yg(c.createExpressionStatement(c.inlineExpressions(lt(qn,pa))),or)}}function Yt(or){let qn=ibe(or);switch(qn){case 0:return Cn(or);case 1:return Tr(or);default:return pe.assertNever(qn)}}function Tr(or){let{left:qn,right:Js}=or;if(Ht(Js)){let Yl;switch(qn.kind){case 212:Yl=c.updatePropertyAccessExpression(qn,Ue(pe.checkDefined(Mr(qn.expression,it,x_))),qn.name);break;case 213:Yl=c.updateElementAccessExpression(qn,Ue(pe.checkDefined(Mr(qn.expression,it,x_))),Ue(pe.checkDefined(Mr(qn.argumentExpression,it,un))));break;default:Yl=pe.checkDefined(Mr(qn,it,un));break}let DA=or.operatorToken.kind;return Mde(DA)?gn(c.createAssignment(Yl,gn(c.createBinaryExpression(Ue(Yl),Hde(DA),pe.checkDefined(Mr(Js,it,un))),or)),or):c.updateBinaryExpression(or,Yl,or.operatorToken,pe.checkDefined(Mr(Js,it,un)))}return _s(or,it,s)}function Cn(or){return Ht(or.right)?lLe(or.operatorToken.kind)?Ns(or):or.operatorToken.kind===28?jn(or):c.updateBinaryExpression(or,Ue(pe.checkDefined(Mr(or.left,it,un))),or.operatorToken,pe.checkDefined(Mr(or.right,it,un))):_s(or,it,s)}function jn(or){let qn=[];return Js(or.left),Js(or.right),c.inlineExpressions(qn);function Js(Yl){po(Yl)&&Yl.operatorToken.kind===28?(Js(Yl.left),Js(Yl.right)):(Ht(Yl)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Yl,it,un))))}}function Zi(or){let qn=[];for(let Js of or.elements)po(Js)&&Js.operatorToken.kind===28?qn.push(jn(Js)):(Ht(Js)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Js,it,un))));return c.inlineExpressions(qn)}function Ns(or){let qn=Hn(),Js=In();return zA(Js,pe.checkDefined(Mr(or.left,it,un)),or.left),or.operatorToken.kind===56?tp(qn,Js,or.left):oi(qn,Js,or.left),zA(Js,pe.checkDefined(Mr(or.right,it,un)),or.right),Mt(qn),Js}function An(or){if(Ht(or.whenTrue)||Ht(or.whenFalse)){let qn=Hn(),Js=Hn(),Yl=In();return tp(qn,pe.checkDefined(Mr(or.condition,it,un)),or.condition),zA(Yl,pe.checkDefined(Mr(or.whenTrue,it,un)),or.whenTrue),NA(Js),Mt(qn),zA(Yl,pe.checkDefined(Mr(or.whenFalse,it,un)),or.whenFalse),Mt(Js),Yl}return _s(or,it,s)}function si(or){let qn=Hn(),Js=Mr(or.expression,it,un);if(or.asteriskToken){let Yl=rA(or.expression)&8388608?Js:gn(g().createValuesHelper(Js),or);JI(Yl,or)}else Wh(Js,or);return Mt(qn),hS(or)}function ks(or){return Ic(or.elements,void 0,void 0,or.multiLine)}function Ic(or,qn,Js,Yl){let DA=cn(or),kA;if(DA>0){kA=In();let lf=Os(or,it,un,0,DA);zA(kA,c.createArrayLiteralExpression(qn?[qn,...lf]:lf)),qn=void 0}let gA=Kl(or,ym,[],DA);return kA?c.createArrayConcatCall(kA,[c.createArrayLiteralExpression(gA,Yl)]):gn(c.createArrayLiteralExpression(qn?[qn,...gA]:gA,Yl),Js);function ym(lf,fI){if(Ht(fI)&&lf.length>0){let KI=kA!==void 0;kA||(kA=In()),zA(kA,KI?c.createArrayConcatCall(kA,[c.createArrayLiteralExpression(lf,Yl)]):c.createArrayLiteralExpression(qn?[qn,...lf]:lf,Yl)),qn=void 0,lf=[]}return lf.push(pe.checkDefined(Mr(fI,it,un))),lf}}function ou(or){let qn=or.properties,Js=or.multiLine,Yl=cn(qn),DA=In();zA(DA,c.createObjectLiteralExpression(Os(qn,it,Bw,0,Yl),Js));let kA=Kl(qn,gA,[],Yl);return kA.push(Js?k0(UA(gn(c.cloneNode(DA),DA),DA.parent)):DA),c.inlineExpressions(kA);function gA(ym,lf){Ht(lf)&&ym.length>0&&(Eg(c.createExpressionStatement(c.inlineExpressions(ym))),ym=[]);let fI=vOt(c,or,lf,DA),KI=Mr(fI,it,un);return KI&&(Js&&k0(KI),ym.push(KI)),ym}}function Zn(or){return Ht(or.argumentExpression)?c.updateElementAccessExpression(or,Ue(pe.checkDefined(Mr(or.expression,it,x_))),pe.checkDefined(Mr(or.argumentExpression,it,un))):_s(or,it,s)}function ya(or){if(!jp(or)&&F(or.arguments,Ht)){let{target:qn,thisArg:Js}=c.createCallBinding(or.expression,S,T,!0);return ua(gn(c.createFunctionApplyCall(Ue(pe.checkDefined(Mr(qn,it,x_))),Js,Ic(or.arguments)),or),or)}return _s(or,it,s)}function Fl(or){if(F(or.arguments,Ht)){let{target:qn,thisArg:Js}=c.createCallBinding(c.createPropertyAccessExpression(or.expression,"bind"),S);return ua(gn(c.createNewExpression(c.createFunctionApplyCall(Ue(pe.checkDefined(Mr(qn,it,un))),Js,Ic(or.arguments,c.createVoidZero())),void 0,[]),or),or)}return _s(or,it,s)}function ba(or,qn=0){let Js=or.length;for(let Yl=qn;Yl0)break;DA.push(pa(gA))}DA.length&&(Eg(c.createExpressionStatement(c.inlineExpressions(DA))),Yl+=DA.length,DA=[])}}function pa(or){return Yg(c.createAssignment(Yg(c.cloneNode(or.name),or.name),pe.checkDefined(Mr(or.initializer,it,un))),or)}function Pa(or){if(Ht(or))if(Ht(or.thenStatement)||Ht(or.elseStatement)){let qn=Hn(),Js=or.elseStatement?Hn():void 0;tp(or.elseStatement?Js:qn,pe.checkDefined(Mr(or.expression,it,un)),or.expression),Oo(or.thenStatement),or.elseStatement&&(NA(qn),Mt(Js),Oo(or.elseStatement)),Mt(qn)}else Eg(Mr(or,it,Lc));else Eg(Mr(or,it,Lc))}function $c(or){if(Ht(or)){let qn=Hn(),Js=Hn();Vn(qn),Mt(Js),Oo(or.statement),Mt(qn),oi(Js,pe.checkDefined(Mr(or.expression,it,un))),Ui()}else Eg(Mr(or,it,Lc))}function Qu(or){return ge?(Oi(),or=_s(or,it,s),Ui(),or):_s(or,it,s)}function Rg(or){if(Ht(or)){let qn=Hn(),Js=Vn(qn);Mt(qn),tp(Js,pe.checkDefined(Mr(or.expression,it,un))),Oo(or.statement),NA(qn),Ui()}else Eg(Mr(or,it,Lc))}function Cs(or){return ge?(Oi(),or=_s(or,it,s),Ui(),or):_s(or,it,s)}function Tu(or){if(Ht(or)){let qn=Hn(),Js=Hn(),Yl=Vn(Js);if(or.initializer){let DA=or.initializer;A_(DA)?co(DA):Eg(gn(c.createExpressionStatement(pe.checkDefined(Mr(DA,it,un))),DA))}Mt(qn),or.condition&&tp(Yl,pe.checkDefined(Mr(or.condition,it,un))),Oo(or.statement),Mt(Js),or.incrementor&&Eg(gn(c.createExpressionStatement(pe.checkDefined(Mr(or.incrementor,it,un))),or.incrementor)),NA(qn),Ui()}else Eg(Mr(or,it,Lc))}function Wr(or){ge&&Oi();let qn=or.initializer;if(qn&&A_(qn)){for(let Yl of qn.declarations)S(Yl.name);let Js=hU(qn);or=c.updateForStatement(or,Js.length>0?c.inlineExpressions(lt(Js,pa)):void 0,Mr(or.condition,it,un),Mr(or.incrementor,it,un),Py(or.statement,it,s))}else or=_s(or,it,s);return ge&&Ui(),or}function Wn(or){if(Ht(or)){let qn=In(),Js=In(),Yl=In(),DA=c.createLoopVariable(),kA=or.initializer;S(DA),zA(qn,pe.checkDefined(Mr(or.expression,it,un))),zA(Js,c.createArrayLiteralExpression()),Eg(c.createForInStatement(Yl,qn,c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(Js,"push"),void 0,[Yl])))),zA(DA,c.createNumericLiteral(0));let gA=Hn(),ym=Hn(),lf=Vn(ym);Mt(gA),tp(lf,c.createLessThan(DA,c.createPropertyAccessExpression(Js,"length"))),zA(Yl,c.createElementAccessExpression(Js,DA)),tp(ym,c.createBinaryExpression(Yl,103,qn));let fI;if(A_(kA)){for(let KI of kA.declarations)S(KI.name);fI=c.cloneNode(kA.declarations[0].name)}else fI=pe.checkDefined(Mr(kA,it,un)),pe.assert(x_(fI));zA(fI,Yl),Oo(or.statement),Mt(ym),Eg(c.createExpressionStatement(c.createPostfixIncrement(DA))),NA(gA),Ui()}else Eg(Mr(or,it,Lc))}function pt(or){ge&&Oi();let qn=or.initializer;if(A_(qn)){for(let Js of qn.declarations)S(Js.name);or=c.updateForInStatement(or,qn.declarations[0].name,pe.checkDefined(Mr(or.expression,it,un)),pe.checkDefined(Mr(or.statement,it,Lc,c.liftToBlock)))}else or=_s(or,it,s);return ge&&Ui(),or}function on(or){let qn=bu(or.label?Vo(or.label):void 0);qn>0?NA(qn,or):Eg(or)}function st(or){if(ge){let qn=bu(or.label&&Vo(or.label));if(qn>0)return Jg(qn,or)}return _s(or,it,s)}function nr(or){let qn=kl(or.label?Vo(or.label):void 0);qn>0?NA(qn,or):Eg(or)}function Zr(or){if(ge){let qn=kl(or.label&&Vo(or.label));if(qn>0)return Jg(qn,or)}return _s(or,it,s)}function Kr(or){MC(Mr(or.expression,it,un),or)}function Dn(or){return ch(Mr(or.expression,it,un),or)}function hr(or){Ht(or)?(Ys(Ue(pe.checkDefined(Mr(or.expression,it,un)))),Oo(or.statement),tn()):Eg(Mr(or,it,Lc))}function Sn(or){if(Ht(or.caseBlock)){let qn=or.caseBlock,Js=qn.clauses.length,Yl=fs(),DA=Ue(pe.checkDefined(Mr(or.expression,it,un))),kA=[],gA=-1;for(let fI=0;fI0)break;lf.push(c.createCaseClause(pe.checkDefined(Mr(b2.expression,it,un)),[Jg(kA[KI],b2.expression)]))}else fI++}lf.length&&(Eg(c.createSwitchStatement(DA,c.createCaseBlock(lf))),ym+=lf.length,lf=[]),fI>0&&(ym+=fI,fI=0)}gA>=0?NA(kA[gA]):NA(Yl);for(let fI=0;fI=0;Js--){let Yl=Ne[Js];if(RI(Yl)){if(Yl.labelText===or)return!0}else break}return!1}function kl(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(RI(Js)&&Js.labelText===or)return Js.breakLabel;if(yu(Js)&&Ip(or,qn-1))return Js.breakLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(yu(Js))return Js.breakLabel}return 0}function bu(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(pI(Js)&&Ip(or,qn-1))return Js.continueLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(pI(Js))return Js.continueLabel}return 0}function sm(or){if(or!==void 0&&or>0){Ze===void 0&&(Ze=[]);let qn=c.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Ze[or]===void 0?Ze[or]=[qn]:Ze[or].push(qn),qn}return c.createOmittedExpression()}function qp(or){let qn=c.createNumericLiteral(or);return Nz(qn,3,RBs(or)),qn}function Jg(or,qn){return pe.assertLessThan(0,or,"Invalid label"),gn(c.createReturnStatement(c.createArrayLiteralExpression([qp(3),sm(or)])),qn)}function ch(or,qn){return gn(c.createReturnStatement(c.createArrayLiteralExpression(or?[qp(2),or]:[qp(2)])),qn)}function hS(or){return gn(c.createCallExpression(c.createPropertyAccessExpression(Tt,"sent"),void 0,[]),or)}function Au(){ve(0)}function Eg(or){or?ve(1,[or]):Au()}function zA(or,qn,Js){ve(2,[or,qn],Js)}function NA(or,qn){ve(3,[or],qn)}function oi(or,qn,Js){ve(4,[or,qn],Js)}function tp(or,qn,Js){ve(5,[or,qn],Js)}function JI(or,qn){ve(7,[or],qn)}function Wh(or,qn){ve(6,[or],qn)}function MC(or,qn){ve(8,[or],qn)}function bf(or,qn){ve(9,[or],qn)}function UI(){ve(10)}function ve(or,qn,Js){Ke===void 0&&(Ke=[],et=[],Ye=[]),Te===void 0&&Mt(Hn());let Yl=Ke.length;Ke[Yl]=or,et[Yl]=qn,Ye[Yl]=Js}function mr(){at=0,Qe=0,Ct=void 0,mt=!1,yt=!1,Rt=void 0,Lt=void 0,je=void 0,Wt=void 0,_r=void 0;let or=ln();return g().createGeneratorHelper(ti(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Tt)],void 0,c.createBlock(or,or.length>0)),1048576))}function ln(){if(Ke){for(let or=0;or=0;qn--){let Js=_r[qn];Lt=[c.createWithStatement(Js.expression,c.createBlock(Lt))]}if(Wt){let{startLabel:qn,catchLabel:Js,finallyLabel:Yl,endLabel:DA}=Wt;Lt.unshift(c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createPropertyAccessExpression(Tt,"trys"),"push"),void 0,[c.createArrayLiteralExpression([sm(qn),sm(Js),sm(Yl),sm(DA)])]))),Wt=void 0}or&&Lt.push(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(Tt,"label"),c.createNumericLiteral(Qe+1))))}Rt.push(c.createCaseClause(c.createNumericLiteral(Qe),Lt||[])),Lt=void 0}function Ss(or){if(Te)for(let qn=0;qn{(!CA(Ue.arguments[0])||Sne(Ue.arguments[0].text,R))&&(Ee=Ft(Ee,Ue))});let fr=c(M)(wt);return Ie=void 0,_e=void 0,Te=!1,fr}function Pe(){return CN(Ie.fileName)&&Ie.commonJsModuleIndicator&&(!Ie.externalModuleIndicator||Ie.externalModuleIndicator===!0)?!1:!!(!_e.exportEquals&&Lm(Ie))}function Ke(wt){h();let xe=[],fr=l_(R,"alwaysStrict")||Lm(Ie),Ue=g.copyPrologue(wt.statements,xe,fr&&!Zu(wt),mt);if(Pe()&&Ft(xe,nr()),zt(_e.exportedNames))for(let Mt=0;Mt<_e.exportedNames.length;Mt+=50)Ft(xe,g.createExpressionStatement(Kl(_e.exportedNames.slice(Mt,Mt+50),($r,ri)=>ri.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(ri.text)),$r):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(ri))),$r),g.createVoidZero())));for(let Hn of _e.exportedFunctions)pt(xe,Hn);Ft(xe,Mr(_e.externalHelpersImportDeclaration,mt,Lc)),Pr(xe,Os(wt.statements,mt,Lc,Ue)),Ct(xe,!1),Rw(xe,_());let In=g.updateSourceFile(wt,gn(g.createNodeArray(xe),wt.statements));return bN(In,s.readEmitHelpers()),In}function et(wt){let xe=g.createIdentifier("define"),fr=xEe(g,wt,O,R),Ue=Zu(wt)&&wt,{aliasedModuleNames:In,unaliasedModuleNames:Hn,importAliasNames:Mt}=Tt(wt,!0),$r=g.updateSourceFile(wt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(xe,void 0,[...fr?[fr]:[],g.createArrayLiteralExpression(Ue?E:[g.createStringLiteral("require"),g.createStringLiteral("exports"),...In,...Hn]),Ue?Ue.statements.length?Ue.statements[0].expression:g.createObjectLiteralExpression():g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Mt],void 0,Qe(wt))]))]),wt.statements));return bN($r,s.readEmitHelpers()),$r}function Ye(wt){let{aliasedModuleNames:xe,unaliasedModuleNames:fr,importAliasNames:Ue}=Tt(wt,!1),In=xEe(g,wt,O,R),Hn=g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"factory")],void 0,gn(g.createBlock([g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("module"),"object"),g.createTypeCheck(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),"object")),g.createBlock([g.createVariableStatement(void 0,[g.createVariableDeclaration("v",void 0,void 0,g.createCallExpression(g.createIdentifier("factory"),void 0,[g.createIdentifier("require"),g.createIdentifier("exports")]))]),ti(g.createIfStatement(g.createStrictInequality(g.createIdentifier("v"),g.createIdentifier("undefined")),g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),g.createIdentifier("v")))),1)]),g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("define"),"function"),g.createPropertyAccessExpression(g.createIdentifier("define"),"amd")),g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("define"),void 0,[...In?[In]:[],g.createArrayLiteralExpression([g.createStringLiteral("require"),g.createStringLiteral("exports"),...xe,...fr]),g.createIdentifier("factory")]))])))],!0),void 0)),Mt=g.updateSourceFile(wt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(Hn,void 0,[g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Ue],void 0,Qe(wt))]))]),wt.statements));return bN(Mt,s.readEmitHelpers()),Mt}function Tt(wt,xe){let fr=[],Ue=[],In=[];for(let Hn of wt.amdDependencies)Hn.name?(fr.push(g.createStringLiteral(Hn.path)),In.push(g.createParameterDeclaration(void 0,void 0,Hn.name))):Ue.push(g.createStringLiteral(Hn.path));for(let Hn of _e.externalImports){let Mt=Lz(g,Hn,Ie,O,T,R),$r=Fie(g,Hn,Ie);Mt&&(xe&&$r?(ti($r,8),fr.push(Mt),In.push(g.createParameterDeclaration(void 0,void 0,$r))):Ue.push(Mt))}return{aliasedModuleNames:fr,unaliasedModuleNames:Ue,importAliasNames:In}}function at(wt){if(Zm(wt)||Vh(wt)||!Lz(g,wt,Ie,O,T,R))return;let xe=Fie(g,wt,Ie),fr=ba(wt,xe);if(fr!==xe)return g.createExpressionStatement(g.createAssignment(xe,fr))}function Qe(wt){h();let xe=[],fr=g.copyPrologue(wt.statements,xe,!0,mt);Pe()&&Ft(xe,nr()),zt(_e.exportedNames)&&Ft(xe,g.createExpressionStatement(Kl(_e.exportedNames,(In,Hn)=>Hn.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(Hn.text)),In):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(Hn))),In),g.createVoidZero())));for(let In of _e.exportedFunctions)pt(xe,In);Ft(xe,Mr(_e.externalHelpersImportDeclaration,mt,Lc)),M===2&&Pr(xe,Xt(_e.externalImports,at)),Pr(xe,Os(wt.statements,mt,Lc,fr)),Ct(xe,!0),Rw(xe,_());let Ue=g.createBlock(xe,!0);return Te&&uQ(Ue,NBs),Ue}function Ct(wt,xe){if(_e.exportEquals){let fr=Mr(_e.exportEquals.expression,Lt,un);if(fr)if(xe){let Ue=g.createReturnStatement(fr);gn(Ue,_e.exportEquals),ti(Ue,3840),wt.push(Ue)}else{let Ue=g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),fr));gn(Ue,_e.exportEquals),ti(Ue,3072),wt.push(Ue)}}}function mt(wt){switch(wt.kind){case 273:return Oo(wt);case 272:return yr(wt);case 279:return hn(wt);case 278:return Pi(wt);default:return yt(wt)}}function yt(wt){switch(wt.kind){case 244:return Pa(wt);case 263:return co(wt);case 264:return pa(wt);case 249:return Gt(wt,!0);case 250:return it(wt);case 251:return kt(wt);case 247:return tr(wt);case 248:return ur(wt);case 257:return Gr(wt);case 255:return dt(wt);case 246:return pr(wt);case 256:return ot(wt);case 270:return ir(wt);case 297:return qt(wt);case 298:return Yt(wt);case 259:return Tr(wt);case 300:return Cn(wt);case 242:return jn(wt);default:return Lt(wt)}}function Rt(wt,xe){if(!(wt.transformFlags&276828160)&&!Ee?.length)return wt;switch(wt.kind){case 249:return Gt(wt,!1);case 245:return Zi(wt);case 218:return Ns(wt,xe);case 356:return An(wt,xe);case 214:let fr=wt===Nc(Ee);if(fr&&Ee.shift(),jp(wt)&&O.shouldTransformImportCall(Ie))return Ic(wt,fr);if(fr)return ks(wt);break;case 227:if(Zx(wt))return _r(wt,xe);break;case 225:case 226:return si(wt,xe)}return _s(wt,Lt,s)}function Lt(wt){return Rt(wt,!1)}function je(wt){return Rt(wt,!0)}function Wt(wt){if(ag(wt))for(let xe of wt.properties)switch(xe.kind){case 304:if(Wt(xe.initializer))return!0;break;case 305:if(Wt(xe.name))return!0;break;case 306:if(Wt(xe.expression))return!0;break;case 175:case 178:case 179:return!1;default:pe.assertNever(xe,"Unhandled object member kind")}else if(YI(wt)){for(let xe of wt.elements)if(cf(xe)){if(Wt(xe.expression))return!0}else if(Wt(xe))return!0}else if(Ir(wt))return B(cn(wt))>(w9e(wt)?1:0);return!1}function _r(wt,xe){return Wt(wt.left)?PU(wt,Lt,s,0,!xe,$c):_s(wt,Lt,s)}function Gt(wt,xe){if(xe&&wt.initializer&&A_(wt.initializer)&&!(wt.initializer.flags&7)){let fr=Wr(void 0,wt.initializer,!1);if(fr){let Ue=[],In=Mr(wt.initializer,je,A_),Hn=g.createVariableStatement(void 0,In);Ue.push(Hn),Pr(Ue,fr);let Mt=Mr(wt.condition,Lt,un),$r=Mr(wt.incrementor,je,un),ri=Py(wt.statement,xe?yt:Lt,s);return Ue.push(g.updateForStatement(wt,void 0,Mt,$r,ri)),Ue}}return g.updateForStatement(wt,Mr(wt.initializer,je,_E),Mr(wt.condition,Lt,un),Mr(wt.incrementor,je,un),Py(wt.statement,xe?yt:Lt,s))}function it(wt){if(A_(wt.initializer)&&!(wt.initializer.flags&7)){let xe=Wr(void 0,wt.initializer,!0);if(zt(xe)){let fr=Mr(wt.initializer,je,_E),Ue=Mr(wt.expression,Lt,un),In=Py(wt.statement,yt,s),Hn=eg(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0);return g.updateForInStatement(wt,fr,Ue,Hn)}}return g.updateForInStatement(wt,Mr(wt.initializer,je,_E),Mr(wt.expression,Lt,un),Py(wt.statement,yt,s))}function kt(wt){if(A_(wt.initializer)&&!(wt.initializer.flags&7)){let xe=Wr(void 0,wt.initializer,!0),fr=Mr(wt.initializer,je,_E),Ue=Mr(wt.expression,Lt,un),In=Py(wt.statement,yt,s);return zt(xe)&&(In=eg(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0)),g.updateForOfStatement(wt,wt.awaitModifier,fr,Ue,In)}return g.updateForOfStatement(wt,wt.awaitModifier,Mr(wt.initializer,je,_E),Mr(wt.expression,Lt,un),Py(wt.statement,yt,s))}function tr(wt){return g.updateDoStatement(wt,Py(wt.statement,yt,s),Mr(wt.expression,Lt,un))}function ur(wt){return g.updateWhileStatement(wt,Mr(wt.expression,Lt,un),Py(wt.statement,yt,s))}function Gr(wt){return g.updateLabeledStatement(wt,wt.label,Mr(wt.statement,yt,Lc,g.liftToBlock)??gn(g.createEmptyStatement(),wt.statement))}function dt(wt){return g.updateWithStatement(wt,Mr(wt.expression,Lt,un),pe.checkDefined(Mr(wt.statement,yt,Lc,g.liftToBlock)))}function pr(wt){return g.updateIfStatement(wt,Mr(wt.expression,Lt,un),Mr(wt.thenStatement,yt,Lc,g.liftToBlock)??g.createBlock([]),Mr(wt.elseStatement,yt,Lc,g.liftToBlock))}function ot(wt){return g.updateSwitchStatement(wt,Mr(wt.expression,Lt,un),pe.checkDefined(Mr(wt.caseBlock,yt,Sde)))}function ir(wt){return g.updateCaseBlock(wt,Os(wt.clauses,yt,MJ))}function qt(wt){return g.updateCaseClause(wt,Mr(wt.expression,Lt,un),Os(wt.statements,yt,Lc))}function Yt(wt){return _s(wt,yt,s)}function Tr(wt){return _s(wt,yt,s)}function Cn(wt){return g.updateCatchClause(wt,wt.variableDeclaration,pe.checkDefined(Mr(wt.block,yt,eg)))}function jn(wt){return wt=_s(wt,yt,s),wt}function Zi(wt){return g.updateExpressionStatement(wt,Mr(wt.expression,je,un))}function Ns(wt,xe){return g.updateParenthesizedExpression(wt,Mr(wt.expression,xe?je:Lt,un))}function An(wt,xe){return g.updatePartiallyEmittedExpression(wt,Mr(wt.expression,xe?je:Lt,un))}function si(wt,xe){if((wt.operator===46||wt.operator===47)&&Ir(wt.operand)&&!Gp(wt.operand)&&!YF(wt.operand)&&!Rbe(wt.operand)){let fr=cn(wt.operand);if(fr){let Ue,In=Mr(wt.operand,Lt,un);N0(wt)?In=g.updatePrefixUnaryExpression(wt,In):(In=g.updatePostfixUnaryExpression(wt,In),xe||(Ue=g.createTempVariable(S),In=g.createAssignment(Ue,In),gn(In,wt)),In=g.createComma(In,g.cloneNode(wt.operand)),gn(In,wt));for(let Hn of fr)Ne[id(In)]=!0,In=Kr(Hn,In),gn(In,wt);return Ue&&(Ne[id(In)]=!0,In=g.createComma(In,Ue),gn(In,wt)),In}}return _s(wt,Lt,s)}function ks(wt){return g.updateCallExpression(wt,wt.expression,void 0,Os(wt.arguments,xe=>xe===wt.arguments[0]?CA(xe)?Yz(xe,R):d().createRewriteRelativeImportExtensionsHelper(xe):Lt(xe),un))}function Ic(wt,xe){if(M===0&&V>=7)return _s(wt,Lt,s);let fr=Lz(g,wt,Ie,O,T,R),Ue=Mr(Nc(wt.arguments),Lt,un),In=fr&&(!Ue||!Lg(Ue)||Ue.text!==fr.text)?fr:Ue&&xe?Lg(Ue)?Yz(Ue,R):d().createRewriteRelativeImportExtensionsHelper(Ue):Ue,Hn=!!(wt.transformFlags&16384);switch(R.module){case 2:return Zn(In,Hn);case 3:return ou(In??g.createVoidZero(),Hn);case 1:default:return ya(In)}}function ou(wt,xe){if(Te=!0,_Q(wt)){let fr=Gp(wt)?wt:Lg(wt)?g.createStringLiteralFromNode(wt):ti(gn(g.cloneNode(wt),wt),3072);return g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(wt),void 0,Zn(fr,xe))}else{let fr=g.createTempVariable(S);return g.createComma(g.createAssignment(fr,wt),g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(fr,!0),void 0,Zn(fr,xe)))}}function Zn(wt,xe){let fr=g.createUniqueName("resolve"),Ue=g.createUniqueName("reject"),In=[g.createParameterDeclaration(void 0,void 0,fr),g.createParameterDeclaration(void 0,void 0,Ue)],Hn=g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("require"),void 0,[g.createArrayLiteralExpression([wt||g.createOmittedExpression()]),fr,Ue]))]),Mt;V>=2?Mt=g.createArrowFunction(void 0,void 0,In,void 0,void 0,Hn):(Mt=g.createFunctionExpression(void 0,void 0,void 0,void 0,In,void 0,Hn),xe&&ti(Mt,16));let $r=g.createNewExpression(g.createIdentifier("Promise"),void 0,[Mt]);return Lw(R)?g.createCallExpression(g.createPropertyAccessExpression($r,g.createIdentifier("then")),void 0,[d().createImportStarCallbackHelper()]):$r}function ya(wt,xe){let fr=wt&&!DN(wt)&&!xe,Ue=g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Promise"),"resolve"),void 0,fr?V>=2?[g.createTemplateExpression(g.createTemplateHead(""),[g.createTemplateSpan(wt,g.createTemplateTail(""))])]:[g.createCallExpression(g.createPropertyAccessExpression(g.createStringLiteral(""),"concat"),void 0,[wt])]:[]),In=g.createCallExpression(g.createIdentifier("require"),void 0,fr?[g.createIdentifier("s")]:wt?[wt]:[]);Lw(R)&&(In=d().createImportStarHelper(In));let Hn=fr?[g.createParameterDeclaration(void 0,void 0,"s")]:[],Mt;return V>=2?Mt=g.createArrowFunction(void 0,void 0,Hn,void 0,void 0,In):Mt=g.createFunctionExpression(void 0,void 0,void 0,void 0,Hn,void 0,g.createBlock([g.createReturnStatement(In)])),g.createCallExpression(g.createPropertyAccessExpression(Ue,"then"),void 0,[Mt])}function Fl(wt,xe){return!Lw(R)||p1(wt)&2?xe:r3t(wt)?d().createImportStarHelper(xe):xe}function ba(wt,xe){return!Lw(R)||p1(wt)&2?xe:lVe(wt)?d().createImportStarHelper(xe):itt(wt)?d().createImportDefaultHelper(xe):xe}function Oo(wt){let xe,fr=oU(wt);if(M!==2)if(wt.importClause){let Ue=[];fr&&!S3(wt)?Ue.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,ba(wt,hc(wt)))):(Ue.push(g.createVariableDeclaration(g.getGeneratedNameForNode(wt),void 0,void 0,ba(wt,hc(wt)))),fr&&S3(wt)&&Ue.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(wt)))),xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList(Ue,V>=2?2:0)),wt),wt))}else return ua(gn(g.createExpressionStatement(hc(wt)),wt),wt);else fr&&S3(wt)&&(xe=Ft(xe,g.createVariableStatement(void 0,g.createVariableDeclarationList([ua(gn(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(wt)),wt),wt)],V>=2?2:0))));return xe=Rg(xe,wt),ac(xe)}function hc(wt){let xe=Lz(g,wt,Ie,O,T,R),fr=[];return xe&&fr.push(Yz(xe,R)),g.createCallExpression(g.createIdentifier("require"),void 0,fr)}function yr(wt){pe.assert(HL(wt),"import= for internal module references should be handled in an earlier transformer.");let xe;return M!==2?Ga(wt,32)?xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(wt.name,hc(wt))),wt),wt)):xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(g.cloneNode(wt.name),void 0,void 0,hc(wt))],V>=2?2:0)),wt),wt)):Ga(wt,32)&&(xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(g.getExportName(wt),g.getLocalName(wt))),wt),wt))),xe=Cs(xe,wt),ac(xe)}function hn(wt){if(!wt.moduleSpecifier)return;let xe=g.getGeneratedNameForNode(wt);if(wt.exportClause&&bv(wt.exportClause)){let fr=[];M!==2&&fr.push(ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(xe,void 0,void 0,hc(wt))])),wt),wt));for(let Ue of wt.exportClause.elements){let In=Ue.propertyName||Ue.name,Mt=!!Lw(R)&&!(p1(wt)&2)&&dv(In)?d().createImportDefaultHelper(xe):xe,$r=In.kind===11?g.createElementAccessExpression(Mt,In):g.createPropertyAccessExpression(Mt,In);fr.push(ua(gn(g.createExpressionStatement(Kr(Ue.name.kind===11?g.cloneNode(Ue.name):g.getExportName(Ue),$r,void 0,!0)),Ue),Ue))}return ac(fr)}else if(wt.exportClause){let fr=[];return fr.push(ua(gn(g.createExpressionStatement(Kr(g.cloneNode(wt.exportClause.name),Fl(wt,M!==2?hc(wt):VY(wt)||wt.exportClause.name.kind===11?xe:g.createIdentifier(Vo(wt.exportClause.name))))),wt),wt)),ac(fr)}else return ua(gn(g.createExpressionStatement(d().createExportStarHelper(M!==2?hc(wt):xe)),wt),wt)}function Pi(wt){if(!wt.isExportEquals)return Zr(g.createIdentifier("default"),Mr(wt.expression,Lt,un),wt,!0)}function co(wt){let xe;return Ga(wt,32)?xe=Ft(xe,ua(gn(g.createFunctionDeclaration(Os(wt.modifiers,Dn,hg),wt.asteriskToken,g.getDeclarationName(wt,!0,!0),void 0,Os(wt.parameters,Lt,Si),void 0,_s(wt.body,Lt,s)),wt),wt)):xe=Ft(xe,_s(wt,Lt,s)),ac(xe)}function pa(wt){let xe;return Ga(wt,32)?xe=Ft(xe,ua(gn(g.createClassDeclaration(Os(wt.modifiers,Dn,fp),g.getDeclarationName(wt,!0,!0),void 0,Os(wt.heritageClauses,Lt,_1),Os(wt.members,Lt,MI)),wt),wt)):xe=Ft(xe,_s(wt,Lt,s)),xe=pt(xe,wt),ac(xe)}function Pa(wt){let xe,fr,Ue;if(Ga(wt,32)){let In,Hn=!1;for(let Mt of wt.declarationList.declarations)if(Ir(Mt.name)&&YF(Mt.name))if(In||(In=Os(wt.modifiers,Dn,hg)),Mt.initializer){let $r=g.updateVariableDeclaration(Mt,Mt.name,void 0,void 0,Kr(Mt.name,Mr(Mt.initializer,Lt,un)));fr=Ft(fr,$r)}else fr=Ft(fr,Mt);else if(Mt.initializer)if(!Nu(Mt.name)&&(uA(Mt.initializer)||jA(Mt.initializer)||wd(Mt.initializer))){let $r=g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Mt.name),Mt.name),g.createIdentifier(g2(Mt.name))),ri=g.createVariableDeclaration(Mt.name,Mt.exclamationToken,Mt.type,Mr(Mt.initializer,Lt,un));fr=Ft(fr,ri),Ue=Ft(Ue,$r),Hn=!0}else Ue=Ft(Ue,Qu(Mt));if(fr&&(xe=Ft(xe,g.updateVariableStatement(wt,In,g.updateVariableDeclarationList(wt.declarationList,fr)))),Ue){let Mt=ua(gn(g.createExpressionStatement(g.inlineExpressions(Ue)),wt),wt);Hn&&Tz(Mt),xe=Ft(xe,Mt)}}else xe=Ft(xe,_s(wt,Lt,s));return xe=Tu(xe,wt),ac(xe)}function $c(wt,xe,fr){let Ue=cn(wt);if(Ue){let In=w9e(wt)?xe:g.createAssignment(wt,xe);for(let Hn of Ue)ti(In,8),In=Kr(Hn,In,fr);return In}return g.createAssignment(wt,xe)}function Qu(wt){return Nu(wt.name)?PU(Mr(wt,Lt,Jne),Lt,s,0,!1,$c):g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),wt.name),wt.name),wt.initializer?Mr(wt.initializer,Lt,un):g.createVoidZero())}function Rg(wt,xe){if(_e.exportEquals)return wt;let fr=xe.importClause;if(!fr)return wt;let Ue=new Xie;fr.name&&(wt=on(wt,Ue,fr));let In=fr.namedBindings;if(In)switch(In.kind){case 275:wt=on(wt,Ue,In);break;case 276:for(let Hn of In.elements)wt=on(wt,Ue,Hn,!0);break}return wt}function Cs(wt,xe){return _e.exportEquals?wt:on(wt,new Xie,xe)}function Tu(wt,xe){return Wr(wt,xe.declarationList,!1)}function Wr(wt,xe,fr){if(_e.exportEquals)return wt;for(let Ue of xe.declarations)wt=Wn(wt,Ue,fr);return wt}function Wn(wt,xe,fr){if(_e.exportEquals)return wt;if(Nu(xe.name))for(let Ue of xe.name.elements)Ep(Ue)||(wt=Wn(wt,Ue,fr));else!Gp(xe.name)&&(!nc(xe)||xe.initializer||fr)&&(wt=on(wt,new Xie,xe));return wt}function pt(wt,xe){if(_e.exportEquals)return wt;let fr=new Xie;if(Ga(xe,32)){let Ue=Ga(xe,2048)?g.createIdentifier("default"):g.getDeclarationName(xe);wt=st(wt,fr,Ue,g.getLocalName(xe),xe)}return xe.name&&(wt=on(wt,fr,xe)),wt}function on(wt,xe,fr,Ue){let In=g.getDeclarationName(fr),Hn=_e.exportSpecifiers.get(In);if(Hn)for(let Mt of Hn)wt=st(wt,xe,Mt.name,In,Mt.name,void 0,Ue);return wt}function st(wt,xe,fr,Ue,In,Hn,Mt){if(fr.kind!==11){if(xe.has(fr))return wt;xe.set(fr,!0)}return wt=Ft(wt,Zr(fr,Ue,In,Hn,Mt)),wt}function nr(){let wt=g.createExpressionStatement(g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteral("__esModule"),g.createObjectLiteralExpression([g.createPropertyAssignment("value",g.createTrue())])]));return ti(wt,2097152),wt}function Zr(wt,xe,fr,Ue,In){let Hn=gn(g.createExpressionStatement(Kr(wt,xe,void 0,In)),fr);return k0(Hn),Ue||ti(Hn,3072),Hn}function Kr(wt,xe,fr,Ue){return gn(Ue?g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteralFromNode(wt),g.createObjectLiteralExpression([g.createPropertyAssignment("enumerable",g.createTrue()),g.createPropertyAssignment("get",g.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,g.createBlock([g.createReturnStatement(xe)])))])]):g.createAssignment(wt.kind===11?g.createElementAccessExpression(g.createIdentifier("exports"),g.cloneNode(wt)):g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(wt)),xe),fr)}function Dn(wt){switch(wt.kind){case 95:case 90:return}return wt}function hr(wt,xe,fr){xe.kind===308?(Ie=xe,_e=ge[My(Ie)],re(wt,xe,fr),Ie=void 0,_e=void 0):re(wt,xe,fr)}function Sn(wt,xe){return xe=ee(wt,xe),xe.id&&Ne[xe.id]?xe:wt===1?Gi(xe):l0(xe)?Ni(xe):xe}function Ni(wt){let xe=wt.name,fr=ds(xe);if(fr!==xe){if(wt.objectAssignmentInitializer){let Ue=g.createAssignment(fr,wt.objectAssignmentInitializer);return gn(g.createPropertyAssignment(xe,Ue),wt)}return gn(g.createPropertyAssignment(xe,fr),wt)}return wt}function Gi(wt){switch(wt.kind){case 80:return ds(wt);case 214:return nn(wt);case 216:return En(wt);case 227:return Ht(wt)}return wt}function nn(wt){if(Ir(wt.expression)){let xe=ds(wt.expression);if(Ne[id(xe)]=!0,!Ir(xe)&&!(rA(wt.expression)&8192))return L3(g.updateCallExpression(wt,xe,void 0,wt.arguments),16)}return wt}function En(wt){if(Ir(wt.tag)){let xe=ds(wt.tag);if(Ne[id(xe)]=!0,!Ir(xe)&&!(rA(wt.tag)&8192))return L3(g.updateTaggedTemplateExpression(wt,xe,void 0,wt.template),16)}return wt}function ds(wt){var xe,fr;if(rA(wt)&8192){let Ue=kEe(Ie);return Ue?g.createPropertyAccessExpression(Ue,wt):wt}else if(!(Gp(wt)&&!(wt.emitNode.autoGenerate.flags&64))&&!YF(wt)){let Ue=T.getReferencedExportContainer(wt,w9e(wt));if(Ue&&Ue.kind===308)return gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(wt)),wt);let In=T.getReferencedImportDeclaration(wt);if(In){if(Hw(In))return gn(g.createPropertyAccessExpression(g.getGeneratedNameForNode(In.parent),g.createIdentifier("default")),wt);if(Ay(In)){let Hn=In.propertyName||In.name,Mt=g.getGeneratedNameForNode(((fr=(xe=In.parent)==null?void 0:xe.parent)==null?void 0:fr.parent)||In);return gn(Hn.kind===11?g.createElementAccessExpression(Mt,g.cloneNode(Hn)):g.createPropertyAccessExpression(Mt,g.cloneNode(Hn)),wt)}}}return wt}function Ht(wt){if($D(wt.operatorToken.kind)&&Ir(wt.left)&&(!Gp(wt.left)||BY(wt.left))&&!YF(wt.left)){let xe=cn(wt.left);if(xe){let fr=wt;for(let Ue of xe)Ne[id(fr)]=!0,fr=Kr(Ue,fr,wt);return fr}}return wt}function cn(wt){if(Gp(wt)){if(BY(wt)){let xe=_e?.exportSpecifiers.get(wt);if(xe){let fr=[];for(let Ue of xe)fr.push(Ue.name);return fr}}}else{let xe=T.getReferencedImportDeclaration(wt);if(xe)return _e?.exportedBindings[My(xe)];let fr=new Set,Ue=T.getReferencedValueDeclarations(wt);if(Ue){for(let In of Ue){let Hn=_e?.exportedBindings[My(In)];if(Hn)for(let Mt of Hn)fr.add(Mt)}if(fr.size)return Do(fr)}}}}var NBs={name:"typescript:dynamicimport-sync-require",scoped:!0,text:` - var __syncRequire = typeof module === "object" && typeof module.exports === "object";`};function D3t(s){let{factory:c,startLexicalEnvironment:g,endLexicalEnvironment:d,hoistVariableDeclaration:h}=s,_=s.getCompilerOptions(),S=s.getEmitResolver(),R=s.getEmitHost(),T=s.onSubstituteNode,O=s.onEmitNode;s.onSubstituteNode=nr,s.onEmitNode=st,s.enableSubstitution(80),s.enableSubstitution(305),s.enableSubstitution(227),s.enableSubstitution(237),s.enableEmitNotification(308);let V=[],M=[],ee=[],re=[],ge,Ie,_e,Ee,Ne,Te,Ze;return aR(s,Pe);function Pe(Ht){if(Ht.isDeclarationFile||!(m3(Ht,_)||Ht.transformFlags&8388608))return Ht;let cn=My(Ht);ge=Ht,Te=Ht,Ie=V[cn]=stt(s,Ht),_e=c.createUniqueName("exports"),M[cn]=_e,Ee=re[cn]=c.createUniqueName("context");let wt=Ke(Ie.externalImports),xe=et(Ht,wt),fr=c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,_e),c.createParameterDeclaration(void 0,void 0,Ee)],void 0,xe),Ue=xEe(c,Ht,R,_),In=c.createArrayLiteralExpression(lt(wt,Mt=>Mt.name)),Hn=ti(c.updateSourceFile(Ht,gn(c.createNodeArray([c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("System"),"register"),void 0,Ue?[Ue,In,fr]:[In,fr]))]),Ht.statements)),2048);return _.outFile||a9e(Hn,xe,Mt=>!Mt.scoped),Ze&&(ee[cn]=Ze,Ze=void 0),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Hn}function Ke(Ht){let cn=new Map,wt=[];for(let xe of Ht){let fr=Lz(c,xe,ge,R,S,_);if(fr){let Ue=fr.text,In=cn.get(Ue);In!==void 0?wt[In].externalImports.push(xe):(cn.set(Ue,wt.length),wt.push({name:fr,externalImports:[xe]}))}}return wt}function et(Ht,cn){let wt=[];g();let xe=l_(_,"alwaysStrict")||Lm(ge),fr=c.copyPrologue(Ht.statements,wt,xe,Qe);wt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration("__moduleName",void 0,void 0,c.createLogicalAnd(Ee,c.createPropertyAccessExpression(Ee,"id")))]))),Mr(Ie.externalHelpersImportDeclaration,Qe,Lc);let Ue=Os(Ht.statements,Qe,Lc,fr);Pr(wt,Ne),Rw(wt,d());let In=Ye(wt),Hn=Ht.transformFlags&2097152?c.createModifiersFromModifierFlags(1024):void 0,Mt=c.createObjectLiteralExpression([c.createPropertyAssignment("setters",at(In,cn)),c.createPropertyAssignment("execute",c.createFunctionExpression(Hn,void 0,void 0,void 0,[],void 0,c.createBlock(Ue,!0)))],!0);return wt.push(c.createReturnStatement(Mt)),c.createBlock(wt,!0)}function Ye(Ht){if(!Ie.hasExportStarsToExportValues)return;if(!zt(Ie.exportedNames)&&Ie.exportedFunctions.size===0&&Ie.exportSpecifiers.size===0){let fr=!1;for(let Ue of Ie.externalImports)if(Ue.kind===279&&Ue.exportClause){fr=!0;break}if(!fr){let Ue=Tt(void 0);return Ht.push(Ue),Ue.name}}let cn=[];if(Ie.exportedNames)for(let fr of Ie.exportedNames)dv(fr)||cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr),c.createTrue()));for(let fr of Ie.exportedFunctions)Ga(fr,2048)||(pe.assert(!!fr.name),cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr.name),c.createTrue())));let wt=c.createUniqueName("exportedNames");Ht.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(wt,void 0,void 0,c.createObjectLiteralExpression(cn,!0))])));let xe=Tt(wt);return Ht.push(xe),xe.name}function Tt(Ht){let cn=c.createUniqueName("exportStar"),wt=c.createIdentifier("m"),xe=c.createIdentifier("n"),fr=c.createIdentifier("exports"),Ue=c.createStrictInequality(xe,c.createStringLiteral("default"));return Ht&&(Ue=c.createLogicalAnd(Ue,c.createLogicalNot(c.createCallExpression(c.createPropertyAccessExpression(Ht,"hasOwnProperty"),void 0,[xe])))),c.createFunctionDeclaration(void 0,void 0,cn,void 0,[c.createParameterDeclaration(void 0,void 0,wt)],void 0,c.createBlock([c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(fr,void 0,void 0,c.createObjectLiteralExpression([]))])),c.createForInStatement(c.createVariableDeclarationList([c.createVariableDeclaration(xe)]),wt,c.createBlock([ti(c.createIfStatement(Ue,c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(fr,xe),c.createElementAccessExpression(wt,xe)))),1)])),c.createExpressionStatement(c.createCallExpression(_e,void 0,[fr]))],!0))}function at(Ht,cn){let wt=[];for(let xe of cn){let fr=F(xe.externalImports,Hn=>Fie(c,Hn,ge)),Ue=fr?c.getGeneratedNameForNode(fr):c.createUniqueName(""),In=[];for(let Hn of xe.externalImports){let Mt=Fie(c,Hn,ge);switch(Hn.kind){case 273:if(!Hn.importClause)break;case 272:pe.assert(Mt!==void 0),In.push(c.createExpressionStatement(c.createAssignment(Mt,Ue))),Ga(Hn,32)&&In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(Vo(Mt)),Ue])));break;case 279:if(pe.assert(Mt!==void 0),Hn.exportClause)if(bv(Hn.exportClause)){let $r=[];for(let ri of Hn.exportClause.elements)$r.push(c.createPropertyAssignment(c.createStringLiteral(UD(ri.name)),c.createElementAccessExpression(Ue,c.createStringLiteral(UD(ri.propertyName||ri.name)))));In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createObjectLiteralExpression($r,!0)])))}else In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(UD(Hn.exportClause.name)),Ue])));else In.push(c.createExpressionStatement(c.createCallExpression(Ht,void 0,[Ue])));break}}wt.push(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ue)],void 0,c.createBlock(In,!0)))}return c.createArrayLiteralExpression(wt,!0)}function Qe(Ht){switch(Ht.kind){case 273:return Ct(Ht);case 272:return yt(Ht);case 279:return mt(Ht);case 278:return Rt(Ht);default:return jn(Ht)}}function Ct(Ht){let cn;return Ht.importClause&&h(Fie(c,Ht,ge)),ac(Gr(cn,Ht))}function mt(Ht){pe.assertIsDefined(Ht)}function yt(Ht){pe.assert(HL(Ht),"import= for internal module references should be handled in an earlier transformer.");let cn;return h(Fie(c,Ht,ge)),ac(dt(cn,Ht))}function Rt(Ht){if(Ht.isExportEquals)return;let cn=Mr(Ht.expression,Pa,un);return Tr(c.createIdentifier("default"),cn,!0)}function Lt(Ht){Ga(Ht,32)?Ne=Ft(Ne,c.updateFunctionDeclaration(Ht,Os(Ht.modifiers,on,fp),Ht.asteriskToken,c.getDeclarationName(Ht,!0,!0),void 0,Os(Ht.parameters,Pa,Si),void 0,Mr(Ht.body,Pa,eg))):Ne=Ft(Ne,_s(Ht,Pa,s)),Ne=ir(Ne,Ht)}function je(Ht){let cn,wt=c.getLocalName(Ht);return h(wt),cn=Ft(cn,gn(c.createExpressionStatement(c.createAssignment(wt,gn(c.createClassExpression(Os(Ht.modifiers,on,fp),Ht.name,void 0,Os(Ht.heritageClauses,Pa,_1),Os(Ht.members,Pa,MI)),Ht))),Ht)),cn=ir(cn,Ht),ac(cn)}function Wt(Ht){if(!Gt(Ht.declarationList))return Mr(Ht,Pa,Lc);let cn;if(iI(Ht.declarationList)||Bd(Ht.declarationList)){let wt=Os(Ht.modifiers,on,fp),xe=[];for(let Ue of Ht.declarationList.declarations)xe.push(c.updateVariableDeclaration(Ue,c.getGeneratedNameForNode(Ue.name),void 0,void 0,it(Ue,!1)));let fr=c.updateVariableDeclarationList(Ht.declarationList,xe);cn=Ft(cn,c.updateVariableStatement(Ht,wt,fr))}else{let wt,xe=Ga(Ht,32);for(let fr of Ht.declarationList.declarations)fr.initializer?wt=Ft(wt,it(fr,xe)):_r(fr);wt&&(cn=Ft(cn,gn(c.createExpressionStatement(c.inlineExpressions(wt)),Ht)))}return cn=pr(cn,Ht,!1),ac(cn)}function _r(Ht){if(Nu(Ht.name))for(let cn of Ht.name.elements)Ep(cn)||_r(cn);else h(c.cloneNode(Ht.name))}function Gt(Ht){return(rA(Ht)&4194304)===0&&(Te.kind===308||(xd(Ht).flags&7)===0)}function it(Ht,cn){let wt=cn?kt:tr;return Nu(Ht.name)?PU(Ht,Pa,s,0,!1,wt):Ht.initializer?wt(Ht.name,Mr(Ht.initializer,Pa,un)):Ht.name}function kt(Ht,cn,wt){return ur(Ht,cn,wt,!0)}function tr(Ht,cn,wt){return ur(Ht,cn,wt,!1)}function ur(Ht,cn,wt,xe){return h(c.cloneNode(Ht)),xe?Cn(Ht,En(gn(c.createAssignment(Ht,cn),wt))):En(gn(c.createAssignment(Ht,cn),wt))}function Gr(Ht,cn){if(Ie.exportEquals)return Ht;let wt=cn.importClause;if(!wt)return Ht;wt.name&&(Ht=qt(Ht,wt));let xe=wt.namedBindings;if(xe)switch(xe.kind){case 275:Ht=qt(Ht,xe);break;case 276:for(let fr of xe.elements)Ht=qt(Ht,fr);break}return Ht}function dt(Ht,cn){return Ie.exportEquals?Ht:qt(Ht,cn)}function pr(Ht,cn,wt){if(Ie.exportEquals)return Ht;for(let xe of cn.declarationList.declarations)(xe.initializer||wt)&&(Ht=ot(Ht,xe,wt));return Ht}function ot(Ht,cn,wt){if(Ie.exportEquals)return Ht;if(Nu(cn.name))for(let xe of cn.name.elements)Ep(xe)||(Ht=ot(Ht,xe,wt));else if(!Gp(cn.name)){let xe;wt&&(Ht=Yt(Ht,cn.name,c.getLocalName(cn)),xe=Vo(cn.name)),Ht=qt(Ht,cn,xe)}return Ht}function ir(Ht,cn){if(Ie.exportEquals)return Ht;let wt;if(Ga(cn,32)){let xe=Ga(cn,2048)?c.createStringLiteral("default"):cn.name;Ht=Yt(Ht,xe,c.getLocalName(cn)),wt=g2(xe)}return cn.name&&(Ht=qt(Ht,cn,wt)),Ht}function qt(Ht,cn,wt){if(Ie.exportEquals)return Ht;let xe=c.getDeclarationName(cn),fr=Ie.exportSpecifiers.get(xe);if(fr)for(let Ue of fr)UD(Ue.name)!==wt&&(Ht=Yt(Ht,Ue.name,xe));return Ht}function Yt(Ht,cn,wt,xe){return Ht=Ft(Ht,Tr(cn,wt,xe)),Ht}function Tr(Ht,cn,wt){let xe=c.createExpressionStatement(Cn(Ht,cn));return k0(xe),wt||ti(xe,3072),xe}function Cn(Ht,cn){let wt=Ir(Ht)?c.createStringLiteralFromNode(Ht):Ht;return ti(cn,rA(cn)|3072),yh(c.createCallExpression(_e,void 0,[wt,cn]),cn)}function jn(Ht){switch(Ht.kind){case 244:return Wt(Ht);case 263:return Lt(Ht);case 264:return je(Ht);case 249:return Zi(Ht,!0);case 250:return Ns(Ht);case 251:return An(Ht);case 247:return Ic(Ht);case 248:return ou(Ht);case 257:return Zn(Ht);case 255:return ya(Ht);case 246:return Fl(Ht);case 256:return ba(Ht);case 270:return Oo(Ht);case 297:return hc(Ht);case 298:return yr(Ht);case 259:return hn(Ht);case 300:return Pi(Ht);case 242:return co(Ht);default:return Pa(Ht)}}function Zi(Ht,cn){let wt=Te;return Te=Ht,Ht=c.updateForStatement(Ht,Mr(Ht.initializer,cn?ks:$c,_E),Mr(Ht.condition,Pa,un),Mr(Ht.incrementor,$c,un),Py(Ht.statement,cn?jn:Pa,s)),Te=wt,Ht}function Ns(Ht){let cn=Te;return Te=Ht,Ht=c.updateForInStatement(Ht,ks(Ht.initializer),Mr(Ht.expression,Pa,un),Py(Ht.statement,jn,s)),Te=cn,Ht}function An(Ht){let cn=Te;return Te=Ht,Ht=c.updateForOfStatement(Ht,Ht.awaitModifier,ks(Ht.initializer),Mr(Ht.expression,Pa,un),Py(Ht.statement,jn,s)),Te=cn,Ht}function si(Ht){return A_(Ht)&&Gt(Ht)}function ks(Ht){if(si(Ht)){let cn;for(let wt of Ht.declarations)cn=Ft(cn,it(wt,!1)),wt.initializer||_r(wt);return cn?c.inlineExpressions(cn):c.createOmittedExpression()}else return Mr(Ht,$c,_E)}function Ic(Ht){return c.updateDoStatement(Ht,Py(Ht.statement,jn,s),Mr(Ht.expression,Pa,un))}function ou(Ht){return c.updateWhileStatement(Ht,Mr(Ht.expression,Pa,un),Py(Ht.statement,jn,s))}function Zn(Ht){return c.updateLabeledStatement(Ht,Ht.label,Mr(Ht.statement,jn,Lc,c.liftToBlock)??c.createExpressionStatement(c.createIdentifier("")))}function ya(Ht){return c.updateWithStatement(Ht,Mr(Ht.expression,Pa,un),pe.checkDefined(Mr(Ht.statement,jn,Lc,c.liftToBlock)))}function Fl(Ht){return c.updateIfStatement(Ht,Mr(Ht.expression,Pa,un),Mr(Ht.thenStatement,jn,Lc,c.liftToBlock)??c.createBlock([]),Mr(Ht.elseStatement,jn,Lc,c.liftToBlock))}function ba(Ht){return c.updateSwitchStatement(Ht,Mr(Ht.expression,Pa,un),pe.checkDefined(Mr(Ht.caseBlock,jn,Sde)))}function Oo(Ht){let cn=Te;return Te=Ht,Ht=c.updateCaseBlock(Ht,Os(Ht.clauses,jn,MJ)),Te=cn,Ht}function hc(Ht){return c.updateCaseClause(Ht,Mr(Ht.expression,Pa,un),Os(Ht.statements,jn,Lc))}function yr(Ht){return _s(Ht,jn,s)}function hn(Ht){return _s(Ht,jn,s)}function Pi(Ht){let cn=Te;return Te=Ht,Ht=c.updateCatchClause(Ht,Ht.variableDeclaration,pe.checkDefined(Mr(Ht.block,jn,eg))),Te=cn,Ht}function co(Ht){let cn=Te;return Te=Ht,Ht=_s(Ht,jn,s),Te=cn,Ht}function pa(Ht,cn){if(!(Ht.transformFlags&276828160))return Ht;switch(Ht.kind){case 249:return Zi(Ht,!1);case 245:return Qu(Ht);case 218:return Rg(Ht,cn);case 356:return Cs(Ht,cn);case 227:if(Zx(Ht))return Wr(Ht,cn);break;case 214:if(jp(Ht))return Tu(Ht);break;case 225:case 226:return pt(Ht,cn)}return _s(Ht,Pa,s)}function Pa(Ht){return pa(Ht,!1)}function $c(Ht){return pa(Ht,!0)}function Qu(Ht){return c.updateExpressionStatement(Ht,Mr(Ht.expression,$c,un))}function Rg(Ht,cn){return c.updateParenthesizedExpression(Ht,Mr(Ht.expression,cn?$c:Pa,un))}function Cs(Ht,cn){return c.updatePartiallyEmittedExpression(Ht,Mr(Ht.expression,cn?$c:Pa,un))}function Tu(Ht){let cn=Lz(c,Ht,ge,R,S,_),wt=Mr(Nc(Ht.arguments),Pa,un),xe=cn&&(!wt||!Lg(wt)||wt.text!==cn.text)?cn:wt;return c.createCallExpression(c.createPropertyAccessExpression(Ee,c.createIdentifier("import")),void 0,xe?[xe]:[])}function Wr(Ht,cn){return Wn(Ht.left)?PU(Ht,Pa,s,0,!cn):_s(Ht,Pa,s)}function Wn(Ht){if(zm(Ht,!0))return Wn(Ht.left);if(cf(Ht))return Wn(Ht.expression);if(ag(Ht))return zt(Ht.properties,Wn);if(YI(Ht))return zt(Ht.elements,Wn);if(l0(Ht))return Wn(Ht.name);if(Cm(Ht))return Wn(Ht.initializer);if(Ir(Ht)){let cn=S.getReferencedExportContainer(Ht);return cn!==void 0&&cn.kind===308}else return!1}function pt(Ht,cn){if((Ht.operator===46||Ht.operator===47)&&Ir(Ht.operand)&&!Gp(Ht.operand)&&!YF(Ht.operand)&&!Rbe(Ht.operand)){let wt=Gi(Ht.operand);if(wt){let xe,fr=Mr(Ht.operand,Pa,un);N0(Ht)?fr=c.updatePrefixUnaryExpression(Ht,fr):(fr=c.updatePostfixUnaryExpression(Ht,fr),cn||(xe=c.createTempVariable(h),fr=c.createAssignment(xe,fr),gn(fr,Ht)),fr=c.createComma(fr,c.cloneNode(Ht.operand)),gn(fr,Ht));for(let Ue of wt)fr=Cn(Ue,En(fr));return xe&&(fr=c.createComma(fr,xe),gn(fr,Ht)),fr}}return _s(Ht,Pa,s)}function on(Ht){switch(Ht.kind){case 95:case 90:return}return Ht}function st(Ht,cn,wt){if(cn.kind===308){let xe=My(cn);ge=cn,Ie=V[xe],_e=M[xe],Ze=ee[xe],Ee=re[xe],Ze&&delete ee[xe],O(Ht,cn,wt),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ze=void 0}else O(Ht,cn,wt)}function nr(Ht,cn){return cn=T(Ht,cn),ds(cn)?cn:Ht===1?Dn(cn):Ht===4?Zr(cn):cn}function Zr(Ht){switch(Ht.kind){case 305:return Kr(Ht)}return Ht}function Kr(Ht){var cn,wt;let xe=Ht.name;if(!Gp(xe)&&!YF(xe)){let fr=S.getReferencedImportDeclaration(xe);if(fr){if(Hw(fr))return gn(c.createPropertyAssignment(c.cloneNode(xe),c.createPropertyAccessExpression(c.getGeneratedNameForNode(fr.parent),c.createIdentifier("default"))),Ht);if(Ay(fr)){let Ue=fr.propertyName||fr.name,In=c.getGeneratedNameForNode(((wt=(cn=fr.parent)==null?void 0:cn.parent)==null?void 0:wt.parent)||fr);return gn(c.createPropertyAssignment(c.cloneNode(xe),Ue.kind===11?c.createElementAccessExpression(In,c.cloneNode(Ue)):c.createPropertyAccessExpression(In,c.cloneNode(Ue))),Ht)}}}return Ht}function Dn(Ht){switch(Ht.kind){case 80:return hr(Ht);case 227:return Sn(Ht);case 237:return Ni(Ht)}return Ht}function hr(Ht){var cn,wt;if(rA(Ht)&8192){let xe=kEe(ge);return xe?c.createPropertyAccessExpression(xe,Ht):Ht}if(!Gp(Ht)&&!YF(Ht)){let xe=S.getReferencedImportDeclaration(Ht);if(xe){if(Hw(xe))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(xe.parent),c.createIdentifier("default")),Ht);if(Ay(xe)){let fr=xe.propertyName||xe.name,Ue=c.getGeneratedNameForNode(((wt=(cn=xe.parent)==null?void 0:cn.parent)==null?void 0:wt.parent)||xe);return gn(fr.kind===11?c.createElementAccessExpression(Ue,c.cloneNode(fr)):c.createPropertyAccessExpression(Ue,c.cloneNode(fr)),Ht)}}}return Ht}function Sn(Ht){if($D(Ht.operatorToken.kind)&&Ir(Ht.left)&&(!Gp(Ht.left)||BY(Ht.left))&&!YF(Ht.left)){let cn=Gi(Ht.left);if(cn){let wt=Ht;for(let xe of cn)wt=Cn(xe,En(wt));return wt}}return Ht}function Ni(Ht){return pv(Ht)?c.createPropertyAccessExpression(Ee,c.createIdentifier("meta")):Ht}function Gi(Ht){let cn,wt=nn(Ht);if(wt){let xe=S.getReferencedExportContainer(Ht,!1);xe&&xe.kind===308&&(cn=Ft(cn,c.getDeclarationName(wt))),cn=Pr(cn,Ie?.exportedBindings[My(wt)])}else if(Gp(Ht)&&BY(Ht)){let xe=Ie?.exportSpecifiers.get(Ht);if(xe){let fr=[];for(let Ue of xe)fr.push(Ue.name);return fr}}return cn}function nn(Ht){if(!Gp(Ht)){let cn=S.getReferencedImportDeclaration(Ht);if(cn)return cn;let wt=S.getReferencedValueDeclaration(Ht);if(wt&&Ie?.exportedBindings[My(wt)])return wt;let xe=S.getReferencedValueDeclarations(Ht);if(xe){for(let fr of xe)if(fr!==wt&&Ie?.exportedBindings[My(fr)])return fr}return wt}}function En(Ht){return Ze===void 0&&(Ze=[]),Ze[id(Ht)]=!0,Ht}function ds(Ht){return Ze&&Ht.id&&Ze[Ht.id]}}function ptt(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getEmitHost(),h=s.getEmitResolver(),_=s.getCompilerOptions(),S=Hg(_),R=s.onEmitNode,T=s.onSubstituteNode;s.onEmitNode=Ye,s.onSubstituteNode=Tt,s.enableEmitNotification(308),s.enableSubstitution(80);let O=new Set,V,M,ee,re;return aR(s,ge);function ge(Qe){if(Qe.isDeclarationFile)return Qe;if(Lm(Qe)||lS(_)){ee=Qe,re=void 0,_.rewriteRelativeImportExtensions&&(ee.flags&4194304||wo(Qe))&&die(Qe,!1,!1,mt=>{(!CA(mt.arguments[0])||Sne(mt.arguments[0].text,_))&&(V=Ft(V,mt))});let Ct=Ie(Qe);return bN(Ct,s.readEmitHelpers()),ee=void 0,re&&(Ct=c.updateSourceFile(Ct,gn(c.createNodeArray(ene(Ct.statements.slice(),re)),Ct.statements))),!Lm(Qe)||o0(_)===200||zt(Ct.statements,YT)?Ct:c.updateSourceFile(Ct,gn(c.createNodeArray([...Ct.statements,REe(c)]),Ct.statements))}return Qe}function Ie(Qe){let Ct=z$e(c,g(),Qe,_);if(Ct){let mt=[],yt=c.copyPrologue(Qe.statements,mt);return Pr(mt,Ode([Ct],_e,Lc)),Pr(mt,Os(Qe.statements,_e,Lc,yt)),c.updateSourceFile(Qe,gn(c.createNodeArray(mt),Qe.statements))}else return _s(Qe,_e,s)}function _e(Qe){switch(Qe.kind){case 272:return o0(_)>=100?Ze(Qe):void 0;case 278:return Ke(Qe);case 279:return et(Qe);case 273:return Ee(Qe);case 214:if(Qe===V?.[0])return Ne(V.shift());default:if(V?.length&&uy(Qe,V[0]))return _s(Qe,_e,s)}return Qe}function Ee(Qe){if(!_.rewriteRelativeImportExtensions)return Qe;let Ct=Yz(Qe.moduleSpecifier,_);return Ct===Qe.moduleSpecifier?Qe:c.updateImportDeclaration(Qe,Qe.modifiers,Qe.importClause,Ct,Qe.attributes)}function Ne(Qe){return c.updateCallExpression(Qe,Qe.expression,Qe.typeArguments,[CA(Qe.arguments[0])?Yz(Qe.arguments[0],_):g().createRewriteRelativeImportExtensionsHelper(Qe.arguments[0]),...Qe.arguments.slice(1)])}function Te(Qe){let Ct=Lz(c,Qe,pe.checkDefined(ee),d,h,_),mt=[];if(Ct&&mt.push(Yz(Ct,_)),o0(_)===200)return c.createCallExpression(c.createIdentifier("require"),void 0,mt);if(!re){let Rt=c.createUniqueName("_createRequire",48),Lt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports([c.createImportSpecifier(!1,c.createIdentifier("createRequire"),Rt)])),c.createStringLiteral("module"),void 0),je=c.createUniqueName("__require",48),Wt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(je,void 0,void 0,c.createCallExpression(c.cloneNode(Rt),void 0,[c.createPropertyAccessExpression(c.createMetaProperty(102,c.createIdentifier("meta")),c.createIdentifier("url"))]))],S>=2?2:0));re=[Lt,Wt]}let yt=re[1].declarationList.declarations[0].name;return pe.assertNode(yt,Ir),c.createCallExpression(c.cloneNode(yt),void 0,mt)}function Ze(Qe){pe.assert(HL(Qe),"import= for internal module references should be handled in an earlier transformer.");let Ct;return Ct=Ft(Ct,ua(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.cloneNode(Qe.name),void 0,void 0,Te(Qe))],S>=2?2:0)),Qe),Qe)),Ct=Pe(Ct,Qe),ac(Ct)}function Pe(Qe,Ct){return Ga(Ct,32)&&(Qe=Ft(Qe,c.createExportDeclaration(void 0,Ct.isTypeOnly,c.createNamedExports([c.createExportSpecifier(!1,void 0,Vo(Ct.name))])))),Qe}function Ke(Qe){return Qe.isExportEquals?o0(_)===200?ua(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createIdentifier("module"),"exports"),Qe.expression)),Qe):void 0:Qe}function et(Qe){let Ct=Yz(Qe.moduleSpecifier,_);if(_.module!==void 0&&_.module>5||!Qe.exportClause||!ok(Qe.exportClause)||!Qe.moduleSpecifier)return!Qe.moduleSpecifier||Ct===Qe.moduleSpecifier?Qe:c.updateExportDeclaration(Qe,Qe.modifiers,Qe.isTypeOnly,Qe.exportClause,Ct,Qe.attributes);let mt=Qe.exportClause.name,yt=c.getGeneratedNameForNode(mt),Rt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamespaceImport(yt)),Ct,Qe.attributes);ua(Rt,Qe.exportClause);let Lt=VY(Qe)?c.createExportDefault(yt):c.createExportDeclaration(void 0,!1,c.createNamedExports([c.createExportSpecifier(!1,yt,mt)]));return ua(Lt,Qe),[Rt,Lt]}function Ye(Qe,Ct,mt){al(Ct)?((Lm(Ct)||lS(_))&&_.importHelpers&&(M=new Map),ee=Ct,R(Qe,Ct,mt),ee=void 0,M=void 0):R(Qe,Ct,mt)}function Tt(Qe,Ct){return Ct=T(Qe,Ct),Ct.id&&O.has(Ct.id)?Ct:Ir(Ct)&&rA(Ct)&8192?at(Ct):Ct}function at(Qe){let Ct=ee&&kEe(ee);if(Ct)return O.add(id(Qe)),c.createPropertyAccessExpression(Ct,Qe);if(M){let mt=Vo(Qe),yt=M.get(mt);return yt||M.set(mt,yt=c.createUniqueName(mt,48)),yt}return Qe}}function k3t(s){let c=s.onSubstituteNode,g=s.onEmitNode,d=ptt(s),h=s.onSubstituteNode,_=s.onEmitNode;s.onSubstituteNode=c,s.onEmitNode=g;let S=dtt(s),R=s.onSubstituteNode,T=s.onEmitNode,O=Ee=>s.getEmitHost().getEmitModuleFormatOfFile(Ee);s.onSubstituteNode=M,s.onEmitNode=ee,s.enableSubstitution(308),s.enableEmitNotification(308);let V;return Ie;function M(Ee,Ne){return al(Ne)?(V=Ne,c(Ee,Ne)):V?O(V)>=5?h(Ee,Ne):R(Ee,Ne):c(Ee,Ne)}function ee(Ee,Ne,Te){return al(Ne)&&(V=Ne),V?O(V)>=5?_(Ee,Ne,Te):T(Ee,Ne,Te):g(Ee,Ne,Te)}function re(Ee){return O(Ee)>=5?d:S}function ge(Ee){if(Ee.isDeclarationFile)return Ee;V=Ee;let Ne=re(Ee)(Ee);return V=void 0,pe.assert(al(Ne)),Ne}function Ie(Ee){return Ee.kind===308?ge(Ee):_e(Ee)}function _e(Ee){return s.factory.createBundle(lt(Ee.sourceFiles,ge))}}function i1e(s){return nc(s)||pi(s)||ss(s)||mg(s)||Av(s)||wB(s)||im(s)||Tg(s)||gu(s)||Il(s)||ah(s)||Si(s)||Ds(s)||g_(s)||Zm(s)||OB(s)||Tc(s)||R0(s)||jo(s)||Qg(s)||po(s)||cS(s)}function x3t(s){if(Av(s)||wB(s))return c;return Il(s)||gu(s)?d:e5(s);function c(_){let S=g(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function g(_){return lg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function d(_){let S=h(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function h(_){return lg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_method_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function e5(s){if(nc(s)||pi(s)||ss(s)||jo(s)||Qg(s)||po(s)||mg(s)||Tc(s))return g;return Av(s)||wB(s)?d:im(s)||Tg(s)||gu(s)||Il(s)||ah(s)||R0(s)?h:Si(s)?We(s,s.parent)&&Ga(s.parent,2)?g:_:Ds(s)?R:g_(s)?T:Zm(s)?O:OB(s)||cS(s)?V:pe.assertNever(s,`Attempted to set a declaration diagnostic context for unhandled node kind: ${pe.formatSyntaxKind(s.kind)}`);function c(M){if(s.kind===261||s.kind===209)return M.errorModuleName?M.accessibility===2?Z.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Z.Exported_variable_0_has_or_is_using_private_name_1;if(s.kind===173||s.kind===212||s.kind===213||s.kind===227||s.kind===172||s.kind===170&&Ga(s.parent,2))return lg(s)?M.errorModuleName?M.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264||s.kind===170?M.errorModuleName?M.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function g(M){let ee=c(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function d(M){let ee;return s.kind===179?lg(s)?ee=M.errorModuleName?Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:lg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:ee,errorNode:s.name,typeName:s.name}}function h(M){let ee;switch(s.kind){case 181:ee=M.errorModuleName?Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 180:ee=M.errorModuleName?Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 182:ee=M.errorModuleName?Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 175:case 174:lg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:s.parent.kind===264?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:ee=M.errorModuleName?Z.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 263:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return pe.fail("This is unknown kind for signature: "+s.kind)}return{diagnosticMessage:ee,errorNode:s.name||s}}function _(M){let ee=S(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function S(M){switch(s.parent.kind){case 177:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 181:case 186:return M.errorModuleName?Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 180:return M.errorModuleName?Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 182:return M.errorModuleName?Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 175:case 174:return lg(s.parent)?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 263:case 185:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 179:case 178:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return pe.fail(`Unknown parent for parameter: ${pe.formatSyntaxKind(s.parent.kind)}`)}}function R(){let M;switch(s.parent.kind){case 264:M=Z.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 265:M=Z.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 201:M=Z.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 186:case 181:M=Z.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 180:M=Z.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 174:lg(s.parent)?M=Z.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M=Z.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M=Z.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 185:case 263:M=Z.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 196:M=Z.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 266:M=Z.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return pe.fail("This is unknown parent for type parameter: "+s.parent.kind)}return{diagnosticMessage:M,errorNode:s,typeName:s.name}}function T(){let M;return mm(s.parent.parent)?M=_1(s.parent)&&s.parent.token===119?Z.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:s.parent.parent.name?Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Z.extends_clause_of_exported_class_has_or_is_using_private_name_0:M=Z.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:M,errorNode:s,typeName:fl(s.parent.parent)}}function O(){return{diagnosticMessage:Z.Import_declaration_0_is_using_private_name_1,errorNode:s,typeName:s.name}}function V(M){return{diagnosticMessage:M.errorModuleName?Z.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Z.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:cS(s)?pe.checkDefined(s.typeExpression):s.type,typeName:cS(s)?fl(s):s.name}}}function G3t(s){let c={220:Z.Add_a_return_type_to_the_function_expression,219:Z.Add_a_return_type_to_the_function_expression,175:Z.Add_a_return_type_to_the_method,178:Z.Add_a_return_type_to_the_get_accessor_declaration,179:Z.Add_a_type_to_parameter_of_the_set_accessor_declaration,263:Z.Add_a_return_type_to_the_function_declaration,181:Z.Add_a_return_type_to_the_function_declaration,170:Z.Add_a_type_annotation_to_the_parameter_0,261:Z.Add_a_type_annotation_to_the_variable_0,173:Z.Add_a_type_annotation_to_the_property_0,172:Z.Add_a_type_annotation_to_the_property_0,278:Z.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},g={219:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,263:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,220:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,175:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,181:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,179:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,170:Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,261:Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,173:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,168:Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,306:Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,305:Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,210:Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,278:Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations,231:Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return d;function d(_e){if(ji(_e,_1))return mo(_e,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((kw(_e)||Ow(_e.parent))&&(mC(_e)||Hd(_e)))return ge(_e);switch(pe.type(_e),_e.kind){case 178:case 179:return _(_e);case 168:case 305:case 306:return R(_e);case 210:case 231:return T(_e);case 175:case 181:case 219:case 220:case 263:return O(_e);case 209:return V(_e);case 173:case 261:return M(_e);case 170:return ee(_e);case 304:return Ie(_e.initializer);case 232:return re(_e);default:return Ie(_e)}}function h(_e){let Ee=ji(_e,Ne=>yf(Ne)||Lc(Ne)||nc(Ne)||pi(Ne)||Si(Ne));if(Ee)return yf(Ee)?Ee:C2(Ee)?ji(Ee,Ne=>Gd(Ne)&&!Tc(Ne)):Lc(Ee)?void 0:Ee}function _(_e){let{getAccessor:Ee,setAccessor:Ne}=GW(_e.symbol.declarations,_e),Te=(Av(_e)?_e.parameters[0]:_e)??_e,Ze=mo(Te,g[_e.kind]);return Ne&&ug(Ze,mo(Ne,c[Ne.kind])),Ee&&ug(Ze,mo(Ee,c[Ee.kind])),Ze}function S(_e,Ee){let Ne=h(_e);if(Ne){let Te=yf(Ne)||!Ne.name?"":Fp(Ne.name,!1);ug(Ee,mo(Ne,c[Ne.kind],Te))}return Ee}function R(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function T(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function O(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),ug(Ee,mo(_e,c[_e.kind])),Ee}function V(_e){return mo(_e,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}function M(_e){let Ee=mo(_e,g[_e.kind]),Ne=Fp(_e.name,!1);return ug(Ee,mo(_e,c[_e.kind],Ne)),Ee}function ee(_e){if(Av(_e.parent))return _(_e.parent);let Ee=s.requiresAddingImplicitUndefined(_e,_e.parent);if(!Ee&&_e.initializer)return Ie(_e.initializer);let Ne=Ee?Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:g[_e.kind],Te=mo(_e,Ne),Ze=Fp(_e.name,!1);return ug(Te,mo(_e,c[_e.kind],Ze)),Te}function re(_e){return Ie(_e,Z.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}function ge(_e){let Ee=mo(_e,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,Fp(_e,!1));return S(_e,Ee),Ee}function Ie(_e,Ee){let Ne=h(_e),Te;if(Ne){let Ze=yf(Ne)||!Ne.name?"":Fp(Ne.name,!1),Pe=ji(_e.parent,Ke=>yf(Ke)||(Lc(Ke)?"quit":!dI(Ke)&&!WF(Ke)&&!Xd(Ke)));Ne===Pe?(Te=mo(_e,Ee??g[Ne.kind]),ug(Te,mo(Ne,c[Ne.kind],Ze))):(Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations),ug(Te,mo(Ne,c[Ne.kind],Ze)),ug(Te,mo(_e,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return Te}}function F3t(s,c,g){let d=s.getCompilerOptions(),h=Le(SAe(s,g),uAe);return k(h,g)?c1e(c,s,me,d,[g],[ftt],!1).diagnostics:void 0}var s1e=531469,o1e=8;function ftt(s){let c=()=>pe.fail("Diagnostic emitted without context"),g=c,d=!0,h=!1,_=!1,S=!1,R=!1,T,O,V,M,{factory:ee}=s,re=s.getEmitHost(),ge=()=>{},Ie={trackSymbol:yt,reportInaccessibleThisError:_r,reportInaccessibleUniqueSymbolError:je,reportCyclicStructureError:Wt,reportPrivateInBaseOfClassExpression:Rt,reportLikelyUnsafeImportRequiredError:Gt,reportTruncationError:it,moduleResolverHost:re,reportNonlocalAugmentation:kt,reportNonSerializableProperty:tr,reportInferenceFallback:Ct,pushErrorFallbackNode(pt){let on=Ee,st=ge;ge=()=>{ge=st,Ee=on},Ee=pt},popErrorFallbackNode(){ge()}},_e,Ee,Ne,Te,Ze,Pe,Ke=s.getEmitResolver(),et=s.getCompilerOptions(),Ye=G3t(Ke),{stripInternal:Tt,isolatedDeclarations:at}=et;return Gr;function Qe(pt){Ke.getPropertiesOfContainerFunction(pt).forEach(on=>{if(aQ(on.valueDeclaration)){let st=po(on.valueDeclaration)?on.valueDeclaration.left:on.valueDeclaration;s.addDiagnostic(mo(st,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}})}function Ct(pt){!at||s0(Ne)||ms(pt)===Ne&&(nc(pt)&&Ke.isExpandoFunctionDeclaration(pt)?Qe(pt):s.addDiagnostic(Ye(pt)))}function mt(pt){if(pt.accessibility===0){if(pt.aliasesToMakeVisible)if(!O)O=pt.aliasesToMakeVisible;else for(let on of pt.aliasesToMakeVisible)Qi(O,on)}else if(pt.accessibility!==3){let on=g(pt);if(on)return on.typeName?s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,Fp(on.typeName),pt.errorSymbolName,pt.errorModuleName)):s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,pt.errorSymbolName,pt.errorModuleName)),!0}return!1}function yt(pt,on,st){return pt.flags&262144?!1:mt(Ke.isSymbolAccessible(pt,on,st,!0))}function Rt(pt){(_e||Ee)&&s.addDiagnostic(ug(mo(_e||Ee,Z.Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected,pt),...nc((_e||Ee).parent)?[mo(_e||Ee,Z.Add_a_type_annotation_to_the_variable_0,Lt())]:[]))}function Lt(){return _e?Md(_e):Ee&&fl(Ee)?Md(fl(Ee)):Ee&&yf(Ee)?Ee.isExportEquals?"export=":"default":"(Missing)"}function je(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"unique symbol"))}function Wt(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,Lt()))}function _r(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"this"))}function Gt(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,Lt(),pt))}function it(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function kt(pt,on,st){var nr;let Zr=(nr=on.declarations)==null?void 0:nr.find(Dn=>ms(Dn)===pt),Kr=Le(st.declarations,Dn=>ms(Dn)!==pt);if(Zr&&Kr)for(let Dn of Kr)s.addDiagnostic(ug(mo(Dn,Z.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),mo(Zr,Z.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function tr(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,pt))}function ur(pt){let on=g;g=nr=>nr.errorNode&&i1e(nr.errorNode)?e5(nr.errorNode)(nr):{diagnosticMessage:nr.errorModuleName?Z.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Z.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:nr.errorNode||pt};let st=Ke.getDeclarationStatementsForSourceFile(pt,s1e,o1e,Ie);return g=on,st}function Gr(pt){if(pt.kind===308&&pt.isDeclarationFile)return pt;if(pt.kind===309){h=!0,Te=[],Ze=[],Pe=[];let Sn=!1,Ni=ee.createBundle(lt(pt.sourceFiles,nn=>{if(nn.isDeclarationFile)return;if(Sn=Sn||nn.hasNoDefaultLib,Ne=nn,T=nn,O=void 0,M=!1,V=new Map,g=c,S=!1,R=!1,nr(nn),Sl(nn)||Zu(nn)){_=!1,d=!1;let ds=s0(nn)?ee.createNodeArray(ur(nn)):Os(nn.statements,hc,Lc);return ee.updateSourceFile(nn,[ee.createModuleDeclaration([ee.createModifier(138)],ee.createStringLiteral(K7(s.getEmitHost(),nn)),ee.createModuleBlock(gn(ee.createNodeArray(Fl(ds)),nn.statements)))],!0,[],[],!1,[])}d=!0;let En=s0(nn)?ee.createNodeArray(ur(nn)):Os(nn.statements,hc,Lc);return ee.updateSourceFile(nn,Fl(En),!0,[],[],!1,[])})),Gi=Mo(xp(Ude(pt,re,!0).declarationFilePath));return Ni.syntheticFileReferences=hr(Gi),Ni.syntheticTypeReferences=Kr(),Ni.syntheticLibReferences=Dn(),Ni.hasNoDefaultLib=Sn,Ni}d=!0,S=!1,R=!1,T=pt,Ne=pt,g=c,h=!1,_=!1,M=!1,O=void 0,V=new Map,Te=[],Ze=[],Pe=[],nr(Ne);let on;if(s0(Ne))on=ee.createNodeArray(ur(pt));else{let Sn=Os(pt.statements,hc,Lc);on=gn(ee.createNodeArray(Fl(Sn)),pt.statements),Lm(pt)&&(!_||S&&!R)&&(on=gn(ee.createNodeArray([...on,REe(ee)]),on))}let st=Mo(xp(Ude(pt,re,!0).declarationFilePath));return ee.updateSourceFile(pt,on,!0,hr(st),Kr(),pt.hasNoDefaultLib,Dn());function nr(Sn){Te=Nn(Te,lt(Sn.referencedFiles,Ni=>[Sn,Ni])),Ze=Nn(Ze,Sn.typeReferenceDirectives),Pe=Nn(Pe,Sn.libReferenceDirectives)}function Zr(Sn){let Ni={...Sn};return Ni.pos=-1,Ni.end=-1,Ni}function Kr(){return Xt(Ze,Sn=>{if(Sn.preserve)return Zr(Sn)})}function Dn(){return Xt(Pe,Sn=>{if(Sn.preserve)return Zr(Sn)})}function hr(Sn){return Xt(Te,([Ni,Gi])=>{if(!Gi.preserve)return;let nn=re.getSourceFileFromReference(Ni,Gi);if(!nn)return;let En;if(nn.isDeclarationFile)En=nn.fileName;else{if(h&&k(pt.sourceFiles,nn))return;let cn=Ude(nn,re,!0);En=cn.declarationFilePath||cn.jsFilePath||nn.fileName}if(!En)return;let ds=Hf(Sn,En,re.getCurrentDirectory(),re.getCanonicalFileName,!1),Ht=Zr(Gi);return Ht.fileName=ds,Ht})}}function dt(pt){if(pt.kind===80)return pt;return pt.kind===208?ee.updateArrayBindingPattern(pt,Os(pt.elements,on,d3)):ee.updateObjectBindingPattern(pt,Os(pt.elements,on,mg));function on(st){return st.kind===233?st:(st.propertyName&&Un(st.propertyName)&&Hd(st.propertyName.expression)&&si(st.propertyName.expression,T),ee.updateBindingElement(st,st.dotDotDotToken,st.propertyName,dt(st.name),void 0))}}function pr(pt,on){let st;M||(st=g,g=e5(pt));let nr=ee.updateParameterDeclaration(pt,kBs(ee,pt,on),pt.dotDotDotToken,dt(pt.name),Ke.isOptionalParameter(pt)?pt.questionToken||ee.createToken(58):void 0,qt(pt,!0),ir(pt));return M||(g=st),nr}function ot(pt){return lrn(pt)&&!!pt.initializer&&Ke.isLiteralConstDeclaration(eu(pt))}function ir(pt){if(ot(pt)){let on=gde(pt.initializer);return Sz(on)||Ct(pt),Ke.createLiteralConstValue(eu(pt,lrn),Ie)}}function qt(pt,on){if(!on&&Zb(pt,2)||ot(pt))return;if(!yf(pt)&&!mg(pt)&&pt.type&&(!Si(pt)||!Ke.requiresAddingImplicitUndefined(pt,T)))return Mr(pt.type,ba,uc);let st=_e;_e=pt.name;let nr;M||(nr=g,i1e(pt)&&(g=e5(pt)));let Zr;return Ade(pt)?Zr=Ke.createTypeOfDeclaration(pt,T,s1e,o1e,Ie):Eu(pt)?Zr=Ke.createReturnTypeOfSignatureDeclaration(pt,T,s1e,o1e,Ie):pe.assertNever(pt),_e=st,M||(g=nr),Zr??ee.createKeywordTypeNode(133)}function Yt(pt){switch(pt=eu(pt),pt.kind){case 263:case 268:case 265:case 264:case 266:case 267:return!Ke.isDeclarationVisible(pt);case 261:return!Cn(pt);case 272:case 273:case 279:case 278:return!1;case 176:return!0}return!1}function Tr(pt){var on;if(pt.body)return!0;let st=(on=pt.symbol.declarations)==null?void 0:on.filter(nr=>ah(nr)&&!nr.body);return!st||st.indexOf(pt)===st.length-1}function Cn(pt){return Ep(pt)?!1:Nu(pt.name)?zt(pt.name.elements,Cn):Ke.isDeclarationVisible(pt)}function jn(pt,on,st){if(Zb(pt,2))return ee.createNodeArray();let nr=lt(on,Zr=>pr(Zr,st));return nr?ee.createNodeArray(nr,on.hasTrailingComma):ee.createNodeArray()}function Zi(pt,on){let st;if(!on){let nr=xW(pt);nr&&(st=[pr(nr)])}if(kg(pt)){let nr;if(!on){let Zr=z7(pt);Zr&&(nr=pr(Zr))}nr||(nr=ee.createParameterDeclaration(void 0,void 0,"value")),st=Ft(st,nr)}return ee.createNodeArray(st||E)}function Ns(pt,on){return Zb(pt,2)?void 0:Os(on,ba,Ds)}function An(pt){return al(pt)||OB(pt)||Lh(pt)||mm(pt)||d_(pt)||Eu(pt)||R0(pt)||WB(pt)}function si(pt,on){let st=Ke.isEntityNameVisible(pt,on);mt(st)}function ks(pt,on){return jm(pt)&&jm(on)&&(pt.jsDoc=on.jsDoc),yh(pt,ZB(on))}function Ic(pt,on){if(on){if(_=_||pt.kind!==268&&pt.kind!==206,CA(on)&&h){let st=jZe(s.getEmitHost(),Ke,pt);if(st)return ee.createStringLiteral(st)}return on}}function ou(pt){if(Ke.isDeclarationVisible(pt))if(pt.moduleReference.kind===284){let on=G7(pt);return ee.updateImportEqualsDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.name,ee.updateExternalModuleReference(pt.moduleReference,Ic(pt,on)))}else{let on=g;return g=e5(pt),si(pt.moduleReference,T),g=on,pt}}function Zn(pt){if(!pt.importClause)return ee.updateImportDeclaration(pt,pt.modifiers,pt.importClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));let on=pt.importClause.phaseModifier===166?void 0:pt.importClause.phaseModifier,st=pt.importClause&&pt.importClause.name&&Ke.isDeclarationVisible(pt.importClause)?pt.importClause.name:void 0;if(!pt.importClause.namedBindings)return st&&ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,st,void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(pt.importClause.namedBindings.kind===275){let Zr=Ke.isDeclarationVisible(pt.importClause.namedBindings)?pt.importClause.namedBindings:void 0;return st||Zr?ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,st,Zr),Ic(pt,pt.moduleSpecifier),ya(pt.attributes)):void 0}let nr=Xt(pt.importClause.namedBindings.elements,Zr=>Ke.isDeclarationVisible(Zr)?Zr:void 0);if(nr&&nr.length||st)return ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,st,nr&&nr.length?ee.updateNamedImports(pt.importClause.namedBindings,nr):void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(Ke.isImportRequiredByAugmentation(pt))return at&&s.addDiagnostic(mo(pt,Z.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),ee.updateImportDeclaration(pt,pt.modifiers,void 0,Ic(pt,pt.moduleSpecifier),ya(pt.attributes))}function ya(pt){let on=Uie(pt);return pt&&on!==void 0?pt:void 0}function Fl(pt){for(;B(O);){let st=O.shift();if(!T7(st))return pe.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${pe.formatSyntaxKind(st.kind)}`);let nr=d;d=st.parent&&al(st.parent)&&!(Lm(st.parent)&&h);let Zr=Pi(st);d=nr,V.set(My(st),Zr)}return Os(pt,on,Lc);function on(st){if(T7(st)){let nr=My(st);if(V.has(nr)){let Zr=V.get(nr);return V.delete(nr),Zr&&((Ki(Zr)?zt(Zr,f7):f7(Zr))&&(S=!0),al(st.parent)&&(Ki(Zr)?zt(Zr,YT):YT(Zr))&&(_=!0)),Zr}}return st}}function ba(pt){if(Qu(pt))return;if(em(pt)){if(Yt(pt))return;if(zD(pt)){if(at){if(!Ke.isDefinitelyReferenceToGlobalSymbolObject(pt.name.expression)){if(mm(pt.parent)||ag(pt.parent)){s.addDiagnostic(mo(pt,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));return}else if((d_(pt.parent)||bh(pt.parent))&&!Hd(pt.name.expression)){s.addDiagnostic(mo(pt,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));return}}}else if(!Ke.isLateBound(eu(pt))||!Hd(pt.name.expression))return}}if(Eu(pt)&&Ke.isImplementationOfOverload(pt)||oOt(pt))return;let on;An(pt)&&(on=T,T=pt);let st=g,nr=i1e(pt),Zr=M,Kr=(pt.kind===188||pt.kind===201)&&pt.parent.kind!==266;if((gu(pt)||Il(pt))&&Zb(pt,2))return pt.symbol&&pt.symbol.declarations&&pt.symbol.declarations[0]!==pt?void 0:Dn(ee.createPropertyDeclaration(Tu(pt),pt.name,void 0,void 0,void 0));if(nr&&!M&&(g=e5(pt)),Ow(pt)&&si(pt.exprName,T),Kr&&(M=!0),GBs(pt))switch(pt.kind){case 234:{(mC(pt.expression)||Hd(pt.expression))&&si(pt.expression,T);let hr=_s(pt,ba,s);return Dn(ee.updateExpressionWithTypeArguments(hr,hr.expression,hr.typeArguments))}case 184:{si(pt.typeName,T);let hr=_s(pt,ba,s);return Dn(ee.updateTypeReferenceNode(hr,hr.typeName,hr.typeArguments))}case 181:return Dn(ee.updateConstructSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt)));case 177:{let hr=ee.createConstructorDeclaration(Tu(pt),jn(pt,pt.parameters,0),void 0);return Dn(hr)}case 175:{if(p(pt.name))return Dn(void 0);let hr=ee.createMethodDeclaration(Tu(pt),void 0,pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt),void 0);return Dn(hr)}case 178:return p(pt.name)?Dn(void 0):Dn(ee.updateGetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Zb(pt,2)),qt(pt),void 0));case 179:return p(pt.name)?Dn(void 0):Dn(ee.updateSetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Zb(pt,2)),void 0));case 173:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertyDeclaration(pt,Tu(pt),pt.name,pt.questionToken,qt(pt),ir(pt)));case 172:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertySignature(pt,Tu(pt),pt.name,pt.questionToken,qt(pt)));case 174:return p(pt.name)?Dn(void 0):Dn(ee.updateMethodSignature(pt,Tu(pt),pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt)));case 180:return Dn(ee.updateCallSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt)));case 182:return Dn(ee.updateIndexSignature(pt,Tu(pt),jn(pt,pt.parameters),Mr(pt.type,ba,uc)||ee.createKeywordTypeNode(133)));case 261:return Nu(pt.name)?pa(pt.name):(Kr=!0,M=!0,Dn(ee.updateVariableDeclaration(pt,pt.name,void 0,qt(pt),ir(pt))));case 169:return Oo(pt)&&(pt.default||pt.constraint)?Dn(ee.updateTypeParameterDeclaration(pt,pt.modifiers,pt.name,void 0,void 0)):Dn(_s(pt,ba,s));case 195:{let hr=Mr(pt.checkType,ba,uc),Sn=Mr(pt.extendsType,ba,uc),Ni=T;T=pt.trueType;let Gi=Mr(pt.trueType,ba,uc);T=Ni;let nn=Mr(pt.falseType,ba,uc);return pe.assert(hr),pe.assert(Sn),pe.assert(Gi),pe.assert(nn),Dn(ee.updateConditionalTypeNode(pt,hr,Sn,Gi,nn))}case 185:return Dn(ee.updateFunctionTypeNode(pt,Os(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 186:return Dn(ee.updateConstructorTypeNode(pt,Tu(pt),Os(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 206:return Gy(pt)?Dn(ee.updateImportTypeNode(pt,ee.updateLiteralTypeNode(pt.argument,Ic(pt,pt.argument.literal)),pt.attributes,pt.qualifier,Os(pt.typeArguments,ba,uc),pt.isTypeOf)):Dn(pt);default:pe.assertNever(pt,`Attempted to process unhandled node kind: ${pe.formatSyntaxKind(pt.kind)}`)}return Pw(pt)&&Ra(Ne,pt.pos).line===Ra(Ne,pt.end).line&&ti(pt,1),Dn(_s(pt,ba,s));function Dn(hr){return hr&&nr&&zD(pt)&&$c(pt),An(pt)&&(T=on),nr&&!M&&(g=st),Kr&&(M=Zr),hr===pt?hr:hr&&ua(ks(hr,pt),pt)}}function Oo(pt){return pt.parent.kind===175&&Zb(pt.parent,2)}function hc(pt){if(!xBs(pt)||Qu(pt))return;switch(pt.kind){case 279:return al(pt.parent)&&(_=!0),R=!0,ee.updateExportDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.exportClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));case 278:{if(al(pt.parent)&&(_=!0),R=!0,pt.expression.kind===80)return pt;{let st=ee.createUniqueName("_default",16);g=()=>({diagnosticMessage:Z.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:pt}),Ee=pt;let nr=qt(pt),Zr=ee.createVariableDeclaration(st,void 0,nr,void 0);Ee=void 0;let Kr=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([Zr],2));return ks(Kr,pt),Tz(pt),[Kr,ee.updateExportAssignment(pt,pt.modifiers,st)]}}}let on=Pi(pt);return V.set(My(pt),on),pt}function yr(pt){if(Zm(pt)||Zb(pt,2048)||!MB(pt))return pt;let on=ee.createModifiersFromModifierFlags(c_(pt)&131039);return ee.replaceModifiers(pt,on)}function hn(pt,on,st,nr){let Zr=ee.updateModuleDeclaration(pt,on,st,nr);if(a_(Zr)||Zr.flags&32)return Zr;let Kr=ee.createModuleDeclaration(Zr.modifiers,Zr.name,Zr.body,Zr.flags|32);return ua(Kr,Zr),gn(Kr,Zr),Kr}function Pi(pt){if(O)for(;Xl(O,pt););if(Qu(pt))return;switch(pt.kind){case 272:return ou(pt);case 273:return Zn(pt)}if(em(pt)&&Yt(pt)||RN(pt)||Eu(pt)&&Ke.isImplementationOfOverload(pt))return;let on;An(pt)&&(on=T,T=pt);let st=i1e(pt),nr=g;st&&(g=e5(pt));let Zr=d;switch(pt.kind){case 266:{d=!1;let Dn=Kr(ee.updateTypeAliasDeclaration(pt,Tu(pt),pt.name,Os(pt.typeParameters,ba,Ds),pe.checkDefined(Mr(pt.type,ba,uc))));return d=Zr,Dn}case 265:return Kr(ee.updateInterfaceDeclaration(pt,Tu(pt),pt.name,Ns(pt,pt.typeParameters),Wn(pt.heritageClauses),Os(pt.members,ba,Dx)));case 263:{let Dn=Kr(ee.updateFunctionDeclaration(pt,Tu(pt),void 0,pt.name,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt),void 0));if(Dn&&Ke.isExpandoFunctionDeclaration(pt)&&Tr(pt)){let hr=Ke.getPropertiesOfContainerFunction(pt);at&&Qe(pt);let Sn=j3.createModuleDeclaration(void 0,Dn.name||ee.createIdentifier("_default"),ee.createModuleBlock([]),32);UA(Sn,T),Sn.locals=$u(hr),Sn.symbol=hr[0].parent;let Ni=[],Gi=Xt(hr,wt=>{if(!aQ(wt.valueDeclaration))return;let xe=Bc(wt.escapedName);if(!qh(xe,99))return;g=e5(wt.valueDeclaration);let fr=Ke.createTypeOfDeclaration(wt.valueDeclaration,Sn,s1e,o1e|2,Ie);g=nr;let Ue=zY(xe),In=Ue?ee.getGeneratedNameForNode(wt.valueDeclaration):ee.createIdentifier(xe);Ue&&Ni.push([In,xe]);let Hn=ee.createVariableDeclaration(In,void 0,fr,void 0);return ee.createVariableStatement(Ue?void 0:[ee.createToken(95)],ee.createVariableDeclarationList([Hn]))});Ni.length?Gi.push(ee.createExportDeclaration(void 0,!1,ee.createNamedExports(lt(Ni,([wt,xe])=>ee.createExportSpecifier(!1,wt,xe))))):Gi=Xt(Gi,wt=>ee.replaceModifiers(wt,0));let nn=ee.createModuleDeclaration(Tu(pt),pt.name,ee.createModuleBlock(Gi),32);if(!Zb(Dn,2048))return[Dn,nn];let En=ee.createModifiersFromModifierFlags(c_(Dn)&-2081|128),ds=ee.updateFunctionDeclaration(Dn,En,void 0,Dn.name,Dn.typeParameters,Dn.parameters,Dn.type,void 0),Ht=ee.updateModuleDeclaration(nn,En,nn.name,nn.body),cn=ee.createExportAssignment(void 0,!1,nn.name);return al(pt.parent)&&(_=!0),R=!0,[ds,Ht,cn]}else return Dn}case 268:{d=!1;let Dn=pt.body;if(Dn&&Dn.kind===269){let hr=S,Sn=R;R=!1,S=!1;let Ni=Os(Dn.statements,hc,Lc),Gi=Fl(Ni);pt.flags&33554432&&(S=!1),!NB(pt)&&!Cs(Gi)&&!R&&(S?Gi=ee.createNodeArray([...Gi,REe(ee)]):Gi=Os(Gi,yr,Lc));let nn=ee.updateModuleBlock(Dn,Gi);d=Zr,S=hr,R=Sn;let En=Tu(pt);return Kr(hn(pt,En,BF(pt)?Ic(pt,pt.name):pt.name,nn))}else{d=Zr;let hr=Tu(pt);d=!1,Mr(Dn,hc);let Sn=My(Dn),Ni=V.get(Sn);return V.delete(Sn),Kr(hn(pt,hr,pt.name,Ni))}}case 264:{_e=pt.name,Ee=pt;let Dn=ee.createNodeArray(Tu(pt)),hr=Ns(pt,pt.typeParameters),Sn=pN(pt),Ni;if(Sn){let wt=g;Ni=Hr(jt(Sn.parameters,xe=>{if(!Ga(xe,31)||Qu(xe))return;if(g=e5(xe),xe.name.kind===80)return ks(ee.createPropertyDeclaration(Tu(xe),xe.name,xe.questionToken,qt(xe),ir(xe)),xe);return fr(xe.name);function fr(Ue){let In;for(let Hn of Ue.elements)Ep(Hn)||(Nu(Hn.name)&&(In=Nn(In,fr(Hn.name))),In=In||[],In.push(ee.createPropertyDeclaration(Tu(xe),Hn.name,void 0,qt(Hn),void 0)));return In}})),g=wt}let nn=zt(pt.members,wt=>!!wt.name&&p(wt.name))?[ee.createPropertyDeclaration(void 0,ee.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,En=Ke.createLateBoundIndexSignatures(pt,T,s1e,o1e,Ie),ds=Nn(Nn(Nn(nn,En),Ni),Os(pt.members,ba,MI)),Ht=ee.createNodeArray(ds),cn=DB(pt);if(cn&&!Hd(cn.expression)&&cn.expression.kind!==106){let wt=pt.name?Bc(pt.name.escapedText):"default",xe=ee.createUniqueName(`${wt}_base`,16);g=()=>({diagnosticMessage:Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:cn,typeName:pt.name});let fr=ee.createVariableDeclaration(xe,void 0,Ke.createTypeOfExpression(cn.expression,pt,s1e,o1e,Ie),void 0),Ue=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([fr],2)),In=ee.createNodeArray(lt(pt.heritageClauses,Hn=>{if(Hn.token===96){let Mt=g;g=e5(Hn.types[0]);let $r=ee.updateHeritageClause(Hn,lt(Hn.types,ri=>ee.updateExpressionWithTypeArguments(ri,xe,Os(ri.typeArguments,ba,uc))));return g=Mt,$r}return ee.updateHeritageClause(Hn,Os(ee.createNodeArray(Le(Hn.types,Mt=>Hd(Mt.expression)||Mt.expression.kind===106)),ba,g_))}));return[Ue,Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,In,Ht))]}else{let wt=Wn(pt.heritageClauses);return Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,wt,Ht))}}case 244:return Kr(co(pt));case 267:return Kr(ee.updateEnumDeclaration(pt,ee.createNodeArray(Tu(pt)),pt.name,ee.createNodeArray(Xt(pt.members,Dn=>{if(Qu(Dn))return;let hr=Ke.getEnumMemberValue(Dn),Sn=hr?.value;at&&Dn.initializer&&hr?.hasExternalReferences&&!Un(Dn.name)&&s.addDiagnostic(mo(Dn,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));let Ni=Sn===void 0?void 0:typeof Sn=="string"?ee.createStringLiteral(Sn):Sn<0?ee.createPrefixUnaryExpression(41,ee.createNumericLiteral(-Sn)):ee.createNumericLiteral(Sn);return ks(ee.updateEnumMember(Dn,Dn.name,Ni),Dn)}))))}return pe.assertNever(pt,`Unhandled top-level node in declaration emit: ${pe.formatSyntaxKind(pt.kind)}`);function Kr(Dn){return An(pt)&&(T=on),st&&(g=nr),pt.kind===268&&(d=Zr),Dn===pt?Dn:(Ee=void 0,_e=void 0,Dn&&ua(ks(Dn,pt),pt))}}function co(pt){if(!F(pt.declarationList.declarations,Cn))return;let on=Os(pt.declarationList.declarations,ba,nc);if(!B(on))return;let st=ee.createNodeArray(Tu(pt)),nr;return iI(pt.declarationList)||Bd(pt.declarationList)?(nr=ee.createVariableDeclarationList(on,2),ua(nr,pt.declarationList),gn(nr,pt.declarationList),yh(nr,pt.declarationList)):nr=ee.updateVariableDeclarationList(pt.declarationList,on),ee.updateVariableStatement(pt,st,nr)}function pa(pt){return Sr(Xt(pt.elements,on=>Pa(on)))}function Pa(pt){if(pt.kind!==233&&pt.name)return Cn(pt)?Nu(pt.name)?pa(pt.name):ee.createVariableDeclaration(pt.name,void 0,qt(pt),void 0):void 0}function $c(pt){let on;M||(on=g,g=x3t(pt)),_e=pt.name,pe.assert(zD(pt));let nr=pt.name.expression;si(nr,T),M||(g=on),_e=void 0}function Qu(pt){return!!Tt&&!!pt&&Kre(pt,Ne)}function Rg(pt){return yf(pt)||Vh(pt)}function Cs(pt){return zt(pt,Rg)}function Tu(pt){let on=c_(pt),st=Wr(pt);return on===st?Ode(pt.modifiers,nr=>Gs(nr,hg),hg):ee.createModifiersFromModifierFlags(st)}function Wr(pt){let on=130030,st=d&&!DBs(pt)?128:0,nr=pt.parent.kind===308;return(!nr||h&&nr&&Lm(pt.parent))&&(on^=128,st=0),crn(pt,on,st)}function Wn(pt){return ee.createNodeArray(Le(lt(pt,on=>ee.updateHeritageClause(on,Os(ee.createNodeArray(Le(on.types,st=>Hd(st.expression)||on.token===96&&st.expression.kind===106)),ba,g_))),on=>on.types&&!!on.types.length))}}function DBs(s){return s.kind===265}function kBs(s,c,g,d){return s.createModifiersFromModifierFlags(crn(c,g,d))}function crn(s,c=131070,g=0){let d=c_(s)&c|g;return d&2048&&!(d&32)&&(d^=32),d&2048&&d&128&&(d^=128),d}function lrn(s){switch(s.kind){case 173:case 172:return!Zb(s,2);case 170:case 261:return!0}return!1}function xBs(s){switch(s.kind){case 263:case 268:case 272:case 265:case 264:case 266:case 267:case 244:case 273:case 279:case 278:return!0}return!1}function GBs(s){switch(s.kind){case 181:case 177:case 175:case 178:case 179:case 173:case 172:case 174:case 180:case 182:case 261:case 169:case 234:case 184:case 195:case 185:case 186:case 206:return!0}return!1}function FBs(s){switch(s){case 200:return ptt;case 99:case 7:case 6:case 5:case 100:case 101:case 102:case 199:case 1:return k3t;case 4:return D3t;default:return dtt}}var Z3t={scriptTransformers:E,declarationTransformers:E};function L3t(s,c,g){return{scriptTransformers:ZBs(s,c,g),declarationTransformers:LBs(c)}}function ZBs(s,c,g){if(g)return E;let d=Hg(s),h=o0(s),_=$ne(s),S=[];return Pr(S,c&<(c.before,grn)),S.push(p3t),s.experimentalDecorators&&S.push(h3t),XAe(s)&&S.push(w3t),d<99&&S.push(S3t),!s.experimentalDecorators&&(d<99||!_)&&S.push(m3t),S.push(f3t),d<8&&S.push(E3t),d<7&&S.push(b3t),d<6&&S.push(y3t),d<5&&S.push(_3t),d<4&&S.push(C3t),d<3&&S.push(T3t),d<2&&(S.push(R3t),S.push(N3t)),S.push(FBs(h)),Pr(S,c&<(c.after,grn)),S}function LBs(s){let c=[];return c.push(ftt),Pr(c,s&<(s.afterDeclarations,WBs)),c}function VBs(s){return c=>AOt(c)?s.transformBundle(c):s.transformSourceFile(c)}function urn(s,c){return g=>{let d=s(g);return typeof d=="function"?c(g,d):VBs(d)}}function grn(s){return urn(s,aR)}function WBs(s){return urn(s,(c,g)=>g)}function Jde(s,c){return c}function a1e(s,c,g){g(s,c)}function c1e(s,c,g,d,h,_,S){var R,T;let O=new Array(359),V,M,ee,re=0,ge=[],Ie=[],_e=[],Ee=[],Ne=0,Te=!1,Ze=[],Pe=0,Ke,et,Ye=Jde,Tt=a1e,at=0,Qe=[],Ct={factory:g,getCompilerOptions:()=>d,getEmitResolver:()=>s,getEmitHost:()=>c,getEmitHelperFactory:LA(()=>d9e(Ct)),startLexicalEnvironment:dt,suspendLexicalEnvironment:pr,resumeLexicalEnvironment:ot,endLexicalEnvironment:ir,setLexicalEnvironmentFlags:qt,getLexicalEnvironmentFlags:Yt,hoistVariableDeclaration:tr,hoistFunctionDeclaration:ur,addInitializationStatement:Gr,startBlockScope:Tr,endBlockScope:Cn,addBlockScopedVariable:jn,requestEmitHelper:Zi,readEmitHelpers:Ns,enableSubstitution:je,enableEmitNotification:Gt,isSubstitutionEnabled:Wt,isEmitNotificationEnabled:it,get onSubstituteNode(){return Ye},set onSubstituteNode(si){pe.assert(at<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Ye=si},get onEmitNode(){return Tt},set onEmitNode(si){pe.assert(at<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Tt=si},addDiagnostic(si){Qe.push(si)}};for(let si of h)ju(ms(eu(si)));Mc("beforeTransform");let mt=_.map(si=>si(Ct)),yt=si=>{for(let ks of mt)si=ks(si);return si};at=1;let Rt=[];for(let si of h)(R=ki)==null||R.push(ki.Phase.Emit,"transformNodes",si.kind===308?{path:si.path}:{kind:si.kind,pos:si.pos,end:si.end}),Rt.push((S?yt:Lt)(si)),(T=ki)==null||T.pop();return at=2,Mc("afterTransform"),Pf("transformTime","beforeTransform","afterTransform"),{transformed:Rt,substituteNode:_r,emitNodeWithNotification:kt,isEmitNotificationEnabled:it,dispose:An,diagnostics:Qe};function Lt(si){return si&&(!al(si)||!si.isDeclarationFile)?yt(si):si}function je(si){pe.assert(at<2,"Cannot modify the transformation context after transformation has completed."),O[si]|=1}function Wt(si){return(O[si.kind]&1)!==0&&(rA(si)&8)===0}function _r(si,ks){return pe.assert(at<3,"Cannot substitute a node after the result is disposed."),ks&&Wt(ks)&&Ye(si,ks)||ks}function Gt(si){pe.assert(at<2,"Cannot modify the transformation context after transformation has completed."),O[si]|=2}function it(si){return(O[si.kind]&2)!==0||(rA(si)&4)!==0}function kt(si,ks,Ic){pe.assert(at<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),ks&&(it(ks)?Tt(si,ks,Ic):Ic(si,ks))}function tr(si){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed.");let ks=ti(g.createVariableDeclaration(si),128);V?V.push(ks):V=[ks],re&1&&(re|=2)}function ur(si){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),M?M.push(si):M=[si]}function Gr(si){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),ee?ee.push(si):ee=[si]}function dt(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended."),ge[Ne]=V,Ie[Ne]=M,_e[Ne]=ee,Ee[Ne]=re,Ne++,V=void 0,M=void 0,ee=void 0,re=0}function pr(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is already suspended."),Te=!0}function ot(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(Te,"Lexical environment is not suspended."),Te=!1}function ir(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended.");let si;if(V||M||ee){if(M&&(si=[...M]),V){let ks=g.createVariableStatement(void 0,g.createVariableDeclarationList(V));ti(ks,2097152),si?si.push(ks):si=[ks]}ee&&(si?si=[...si,...ee]:si=[...ee])}return Ne--,V=ge[Ne],M=Ie[Ne],ee=_e[Ne],re=Ee[Ne],Ne===0&&(ge=[],Ie=[],_e=[],Ee=[]),si}function qt(si,ks){re=ks?re|si:re&~si}function Yt(){return re}function Tr(){pe.assert(at>0,"Cannot start a block scope during initialization."),pe.assert(at<2,"Cannot start a block scope after transformation has completed."),Ze[Pe]=Ke,Pe++,Ke=void 0}function Cn(){pe.assert(at>0,"Cannot end a block scope during initialization."),pe.assert(at<2,"Cannot end a block scope after transformation has completed.");let si=zt(Ke)?[g.createVariableStatement(void 0,g.createVariableDeclarationList(Ke.map(ks=>g.createVariableDeclaration(ks)),1))]:void 0;return Pe--,Ke=Ze[Pe],Pe===0&&(Ze=[]),si}function jn(si){pe.assert(Pe>0,"Cannot add a block scoped variable outside of an iteration body."),(Ke||(Ke=[])).push(si)}function Zi(si){if(pe.assert(at>0,"Cannot modify the transformation context during initialization."),pe.assert(at<2,"Cannot modify the transformation context after transformation has completed."),pe.assert(!si.scoped,"Cannot request a scoped emit helper."),si.dependencies)for(let ks of si.dependencies)Zi(ks);et=Ft(et,si)}function Ns(){pe.assert(at>0,"Cannot modify the transformation context during initialization."),pe.assert(at<2,"Cannot modify the transformation context after transformation has completed.");let si=et;return et=void 0,si}function An(){if(at<3){for(let si of h)ju(ms(eu(si)));V=void 0,ge=void 0,M=void 0,Ie=void 0,Ye=void 0,Tt=void 0,et=void 0,at=3}}}var l1e={factory:me,getCompilerOptions:()=>({}),getEmitResolver:rl,getEmitHost:rl,getEmitHelperFactory:rl,startLexicalEnvironment:Dc,resumeLexicalEnvironment:Dc,suspendLexicalEnvironment:Dc,endLexicalEnvironment:Am,setLexicalEnvironmentFlags:Dc,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:Dc,hoistFunctionDeclaration:Dc,addInitializationStatement:Dc,startBlockScope:Dc,endBlockScope:Am,addBlockScopedVariable:Dc,requestEmitHelper:Dc,readEmitHelpers:rl,enableSubstitution:Dc,enableEmitNotification:Dc,isSubstitutionEnabled:rl,isEmitNotificationEnabled:rl,onSubstituteNode:Jde,onEmitNode:a1e,addDiagnostic:Dc},Arn=PBs();function V3t(s){return cA(s,".tsbuildinfo")}function Itt(s,c,g,d=!1,h,_){let S=Ki(g)?g:SAe(s,g,d),R=s.getCompilerOptions();if(!h)if(R.outFile){if(S.length){let T=me.createBundle(S),O=c(Ude(T,s,d),T);if(O)return O}}else for(let T of S){let O=c(Ude(T,s,d),T);if(O)return O}if(_){let T=t5(R);if(T)return c({buildInfoPath:T},void 0)}}function t5(s){let c=s.configFilePath;if(!OBs(s))return;if(s.tsBuildInfoFile)return s.tsBuildInfoFile;let g=s.outFile,d;if(g)d=a0(g);else{if(!c)return;let h=a0(c);d=s.outDir?s.rootDir?fE(s.outDir,_p(s.rootDir,h,!0)):Ro(s.outDir,dp(h)):h}return d+".tsbuildinfo"}function OBs(s){return WW(s)||!!s.tscBuild}function W3t(s,c){let g=s.outFile,d=s.emitDeclarationOnly?void 0:g,h=d&&drn(d,s),_=c||Wy(s)?a0(g)+".d.ts":void 0,S=_&&HAe(s)?_+".map":void 0;return{jsFilePath:d,sourceMapFilePath:h,declarationFilePath:_,declarationMapPath:S}}function Ude(s,c,g){let d=c.getCompilerOptions();if(s.kind===309)return W3t(d,g);{let h=zZe(s.fileName,c,u1e(s.fileName,d)),_=Zu(s),S=_&&tI(s.fileName,h,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0,R=d.emitDeclarationOnly||S?void 0:h,T=!R||Zu(s)?void 0:drn(R,d),O=g||Wy(d)&&!_?qZe(s.fileName,c):void 0,V=O&&HAe(d)?O+".map":void 0;return{jsFilePath:R,sourceMapFilePath:T,declarationFilePath:O,declarationMapPath:V}}}function drn(s,c){return c.sourceMap&&!c.inlineSourceMap?s+".map":void 0}function u1e(s,c){return cA(s,".json")?".json":c.jsx===1&&Iu(s,[".jsx",".tsx"])?".jsx":Iu(s,[".mts",".mjs"])?".mjs":Iu(s,[".cts",".cjs"])?".cjs":".js"}function prn(s,c,g,d){return g?fE(g,_p(d(),s,c)):s}function Kde(s,c,g,d=()=>MU(c,g)){return htt(s,c.options,g,d)}function htt(s,c,g,d){return _N(prn(s,g,c.declarationDir||c.outDir,d),bAe(s))}function frn(s,c,g,d=()=>MU(c,g)){if(c.options.emitDeclarationOnly)return;let h=cA(s,".json"),_=mtt(s,c.options,g,d);return!h||tI(s,_,pe.checkDefined(c.options.configFilePath),g)!==0?_:void 0}function mtt(s,c,g,d){return _N(prn(s,g,c.outDir,d),u1e(s,c))}function Irn(){let s;return{addOutput:c,getOutputs:g};function c(d){d&&(s||(s=[])).push(d)}function g(){return s||E}}function hrn(s,c){let{jsFilePath:g,sourceMapFilePath:d,declarationFilePath:h,declarationMapPath:_}=W3t(s.options,!1);c(g),c(d),c(h),c(_)}function mrn(s,c,g,d,h){if(PC(c))return;let _=frn(c,s,g,h);if(d(_),!cA(c,".json")&&(_&&s.options.sourceMap&&d(`${_}.map`),Wy(s.options))){let S=Kde(c,s,g,h);d(S),s.options.declarationMap&&d(`${S}.map`)}}function jde(s,c,g,d,h){let _;return s.rootDir?(_=Xc(s.rootDir,g),h?.(s.rootDir)):s.composite&&s.configFilePath?(_=Mo(xp(s.configFilePath)),h?.(_)):_=J3t(c(),g,d),_&&_[_.length-1]!==cg&&(_+=cg),_}function MU({options:s,fileNames:c},g){return jde(s,()=>Le(c,d=>!(s.noEmitForJsFiles&&Iu(d,EU))&&!PC(d)),Mo(xp(pe.checkDefined(s.configFilePath))),bd(!g))}function mVe(s,c){let{addOutput:g,getOutputs:d}=Irn();if(s.options.outFile)hrn(s,g);else{let h=LA(()=>MU(s,c));for(let _ of s.fileNames)mrn(s,_,c,g,h)}return g(t5(s.options)),d()}function Crn(s,c,g){c=su(c),pe.assert(k(s.fileNames,c),"Expected fileName to be present in command line");let{addOutput:d,getOutputs:h}=Irn();return s.options.outFile?hrn(s,d):mrn(s,c,g,d),h()}function Ctt(s,c){if(s.options.outFile){let{jsFilePath:h,declarationFilePath:_}=W3t(s.options,!1);return pe.checkDefined(h||_,`project ${s.options.configFilePath} expected to have at least one output`)}let g=LA(()=>MU(s,c));for(let h of s.fileNames){if(PC(h))continue;let _=frn(h,s,c,g);if(_)return _;if(!cA(h,".json")&&Wy(s.options))return Kde(h,s,c,g)}let d=t5(s.options);return d||pe.fail(`project ${s.options.configFilePath} expected to have at least one output`)}function _tt(s,c){return!!c&&!!s}function ytt(s,c,g,{scriptTransformers:d,declarationTransformers:h},_,S,R,T){var O=c.getCompilerOptions(),V=O.sourceMap||O.inlineSourceMap||HAe(O)?[]:void 0,M=O.listEmittedFiles?[]:void 0,ee=RF(),re=fN(O),ge=One(re),{enter:Ie,exit:_e}=j_("printTime","beforePrint","afterPrint"),Ee=!1;return Ie(),Itt(c,Ne,SAe(c,g,R),R,S,!g&&!T),_e(),{emitSkipped:Ee,diagnostics:ee.getDiagnostics(),emittedFiles:M,sourceMaps:V};function Ne({jsFilePath:mt,sourceMapFilePath:yt,declarationFilePath:Rt,declarationMapPath:Lt,buildInfoPath:je},Wt){var _r,Gt,it,kt,tr,ur;(_r=ki)==null||_r.push(ki.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:mt}),Ze(Wt,mt,yt),(Gt=ki)==null||Gt.pop(),(it=ki)==null||it.push(ki.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:Rt}),Pe(Wt,Rt,Lt),(kt=ki)==null||kt.pop(),(tr=ki)==null||tr.push(ki.Phase.Emit,"emitBuildInfo",{buildInfoPath:je}),Te(je),(ur=ki)==null||ur.pop()}function Te(mt){if(!mt||g)return;if(c.isEmitBlocked(mt)){Ee=!0;return}let yt=c.getBuildInfo()||{version:C};BAe(c,ee,mt,O3t(yt),!1,void 0,{buildInfo:yt}),M?.push(mt)}function Ze(mt,yt,Rt){if(!mt||_||!yt)return;if(c.isEmitBlocked(yt)||O.noEmit){Ee=!0;return}(al(mt)?[mt]:Le(mt.sourceFiles,uAe)).forEach(_r=>{(O.noCheck||!SU(_r,O))&&et(_r)});let Lt=c1e(s,c,me,O,[mt],d,!1),je={removeComments:O.removeComments,newLine:O.newLine,noEmitHelpers:O.noEmitHelpers,module:o0(O),moduleResolution:G_(O),target:Hg(O),sourceMap:O.sourceMap,inlineSourceMap:O.inlineSourceMap,inlineSources:O.inlineSources,extendedDiagnostics:O.extendedDiagnostics},Wt=jW(je,{hasGlobalName:s.hasGlobalName,onEmitNode:Lt.emitNodeWithNotification,isEmitNotificationEnabled:Lt.isEmitNotificationEnabled,substituteNode:Lt.substituteNode});pe.assert(Lt.transformed.length===1,"Should only see one output from the transform"),Ye(yt,Rt,Lt,Wt,O),Lt.dispose(),M&&(M.push(yt),Rt&&M.push(Rt))}function Pe(mt,yt,Rt){if(!mt||_===0)return;if(!yt){(_||O.emitDeclarationOnly)&&(Ee=!0);return}let Lt=al(mt)?[mt]:mt.sourceFiles,je=R?Lt:Le(Lt,uAe),Wt=O.outFile?[me.createBundle(je)]:je;je.forEach(it=>{(_&&!Wy(O)||O.noCheck||_tt(_,R)||!SU(it,O))&&Ke(it)});let _r=c1e(s,c,me,O,Wt,h,!1);if(B(_r.diagnostics))for(let it of _r.diagnostics)ee.add(it);let Gt=!!_r.diagnostics&&!!_r.diagnostics.length||!!c.isEmitBlocked(yt)||!!O.noEmit;if(Ee=Ee||Gt,!Gt||R){pe.assert(_r.transformed.length===1,"Should only see one output from the decl transform");let it={removeComments:O.removeComments,newLine:O.newLine,noEmitHelpers:!0,module:O.module,moduleResolution:O.moduleResolution,target:O.target,sourceMap:_!==2&&O.declarationMap,inlineSourceMap:O.inlineSourceMap,extendedDiagnostics:O.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0},kt=jW(it,{hasGlobalName:s.hasGlobalName,onEmitNode:_r.emitNodeWithNotification,isEmitNotificationEnabled:_r.isEmitNotificationEnabled,substituteNode:_r.substituteNode}),tr=Ye(yt,Rt,_r,kt,{sourceMap:it.sourceMap,sourceRoot:O.sourceRoot,mapRoot:O.mapRoot,extendedDiagnostics:O.extendedDiagnostics});M&&(tr&&M.push(yt),Rt&&M.push(Rt))}_r.dispose()}function Ke(mt){if(yf(mt)){mt.expression.kind===80&&s.collectLinkedAliases(mt.expression,!0);return}else if(D0(mt)){s.collectLinkedAliases(mt.propertyName||mt.name,!0);return}Lu(mt,Ke)}function et(mt){s0(mt)||Vz(mt,yt=>{if(Zm(yt)&&!(Fx(yt)&32)||Yf(yt))return"skip";s.markLinkedReferences(yt)})}function Ye(mt,yt,Rt,Lt,je){let Wt=Rt.transformed[0],_r=Wt.kind===309?Wt:void 0,Gt=Wt.kind===308?Wt:void 0,it=_r?_r.sourceFiles:[Gt],kt;Tt(je,Wt)&&(kt=jPt(c,dp(xp(mt)),at(je),Qe(je,mt,Gt),je)),_r?Lt.writeBundle(_r,ge,kt):Lt.writeFile(Gt,ge,kt);let tr;if(kt){V&&V.push({inputSourceFileNames:kt.getSources(),sourceMap:kt.toJSON()});let dt=Ct(je,kt,mt,yt,Gt);if(dt&&(ge.isAtStartOfLine()||ge.rawWrite(re),tr=ge.getTextPos(),ge.writeComment(`//# sourceMappingURL=${dt}`)),yt){let pr=kt.toString();BAe(c,ee,yt,pr,!1,it)}}else ge.writeLine();let ur=ge.getText(),Gr={sourceMapUrlPos:tr,diagnostics:Rt.diagnostics};return BAe(c,ee,mt,ur,!!O.emitBOM,it,Gr),ge.clear(),!Gr.skippedDtsWrite}function Tt(mt,yt){return(mt.sourceMap||mt.inlineSourceMap)&&(yt.kind!==308||!cA(yt.fileName,".json"))}function at(mt){let yt=xp(mt.sourceRoot||"");return yt&&Cp(yt)}function Qe(mt,yt,Rt){if(mt.sourceRoot)return c.getCommonSourceDirectory();if(mt.mapRoot){let Lt=xp(mt.mapRoot);return Rt&&(Lt=Mo(vAe(Rt.fileName,c,Lt))),Mf(Lt)===0&&(Lt=Ro(c.getCommonSourceDirectory(),Lt)),Lt}return Mo(su(yt))}function Ct(mt,yt,Rt,Lt,je){if(mt.inlineSourceMap){let _r=yt.toString();return`data:application/json;base64,${Bbe(Ed,_r)}`}let Wt=dp(xp(pe.checkDefined(Lt)));if(mt.mapRoot){let _r=xp(mt.mapRoot);return je&&(_r=Mo(vAe(je.fileName,c,_r))),Mf(_r)===0?(_r=Ro(c.getCommonSourceDirectory(),_r),encodeURI(Hf(Mo(su(Rt)),Ro(_r,Wt),c.getCurrentDirectory(),c.getCanonicalFileName,!0))):encodeURI(Ro(_r,Wt))}return encodeURI(Wt)}}function O3t(s){return JSON.stringify(s)}function btt(s,c){return wbe(s,c)}var P3t={hasGlobalName:rl,getReferencedExportContainer:rl,getReferencedImportDeclaration:rl,getReferencedDeclarationWithCollidingName:rl,isDeclarationWithCollidingName:rl,isValueAliasDeclaration:rl,isReferencedAliasDeclaration:rl,isTopLevelValueImportEqualsWithEntityName:rl,hasNodeCheckFlag:rl,isDeclarationVisible:rl,isLateBound:s=>!1,collectLinkedAliases:rl,markLinkedReferences:rl,isImplementationOfOverload:rl,requiresAddingImplicitUndefined:rl,isExpandoFunctionDeclaration:rl,getPropertiesOfContainerFunction:rl,createTypeOfDeclaration:rl,createReturnTypeOfSignatureDeclaration:rl,createTypeOfExpression:rl,createLiteralConstValue:rl,isSymbolAccessible:rl,isEntityNameVisible:rl,getConstantValue:rl,getEnumMemberValue:rl,getReferencedValueDeclaration:rl,getReferencedValueDeclarations:rl,getTypeReferenceSerializationKind:rl,isOptionalParameter:rl,isArgumentsLocalBinding:rl,getExternalModuleFileFromDeclaration:rl,isLiteralConstDeclaration:rl,getJsxFactoryEntity:rl,getJsxFragmentFactoryEntity:rl,isBindingCapturedByNode:rl,getDeclarationStatementsForSourceFile:rl,isImportRequiredByAugmentation:rl,isDefinitelyReferenceToGlobalSymbolObject:rl,createLateBoundIndexSignatures:rl,symbolToDeclarations:rl},M3t=LA(()=>jW({})),bQ=LA(()=>jW({removeComments:!0})),H3t=LA(()=>jW({removeComments:!0,neverAsciiEscape:!0})),Ett=LA(()=>jW({removeComments:!0,omitTrailingSemicolon:!0}));function jW(s={},c={}){var{hasGlobalName:g,onEmitNode:d=a1e,isEmitNotificationEnabled:h,substituteNode:_=Jde,onBeforeEmitNode:S,onAfterEmitNode:R,onBeforeEmitNodeArray:T,onAfterEmitNodeArray:O,onBeforeEmitToken:V,onAfterEmitToken:M}=c,ee=!!s.extendedDiagnostics,re=!!s.omitBraceSourceMapPositions,ge=fN(s),Ie=o0(s),_e=new Map,Ee,Ne,Te,Ze,Pe,Ke,et,Ye,Tt,at,Qe,Ct,mt,yt,Rt,Lt=s.preserveSourceNewlines,je,Wt,_r,Gt=Nse,it,kt=!0,tr,ur,Gr=-1,dt,pr=-1,ot=-1,ir=-1,qt=-1,Yt,Tr,Cn=!1,jn=!!s.removeComments,Zi,Ns,{enter:An,exit:si}=U2(ee,"commentTime","beforeComment","afterComment"),ks=me.parenthesizer,Ic={select:Ae=>Ae===0?ks.parenthesizeLeadingTypeArgument:void 0},ou=ym();return Qu(),{printNode:Zn,printList:ya,printFile:ba,printBundle:Fl,writeNode:Oo,writeList:hc,writeFile:hn,writeBundle:yr};function Zn(Ae,vt,fn){switch(Ae){case 0:pe.assert(al(vt),"Expected a SourceFile node.");break;case 2:pe.assert(Ir(vt),"Expected an Identifier node.");break;case 1:pe.assert(un(vt),"Expected an Expression node.");break}switch(vt.kind){case 308:return ba(vt);case 309:return Fl(vt)}return Oo(Ae,vt,fn,Pi()),co()}function ya(Ae,vt,fn){return hc(Ae,vt,fn,Pi()),co()}function Fl(Ae){return yr(Ae,Pi(),void 0),co()}function ba(Ae){return hn(Ae,Pi(),void 0),co()}function Oo(Ae,vt,fn,qi){let ic=Wt;$c(qi,void 0),pa(Ae,vt,fn),Qu(),Wt=ic}function hc(Ae,vt,fn,qi){let ic=Wt;$c(qi,void 0),fn&&Pa(fn),fa(void 0,vt,Ae),Qu(),Wt=ic}function yr(Ae,vt,fn){it=!1;let qi=Wt;$c(vt,fn),I9(Ae),Uw(Ae),En(Ae),Zpe(Ae);for(let ic of Ae.sourceFiles)pa(0,ic,ic);Qu(),Wt=qi}function hn(Ae,vt,fn){it=!0;let qi=Wt;$c(vt,fn),I9(Ae),Uw(Ae),pa(0,Ae,Ae),Qu(),Wt=qi}function Pi(){return _r||(_r=One(ge))}function co(){let Ae=_r.getText();return _r.clear(),Ae}function pa(Ae,vt,fn){fn&&Pa(fn),st(Ae,vt,void 0)}function Pa(Ae){Ee=Ae,Yt=void 0,Tr=void 0,Ae&&HQ(Ae)}function $c(Ae,vt){Ae&&s.omitTrailingSemicolon&&(Ae=lbe(Ae)),Wt=Ae,tr=vt,kt=!Wt||!tr}function Qu(){Ne=[],Te=[],Ze=[],Pe=new Set,Ke=[],et=new Map,Ye=[],Tt=0,at=[],Qe=0,Ct=[],mt=void 0,yt=[],Rt=void 0,Ee=void 0,Yt=void 0,Tr=void 0,$c(void 0,void 0)}function Rg(){return Yt||(Yt=rn(pe.checkDefined(Ee)))}function Cs(Ae,vt){Ae!==void 0&&st(4,Ae,vt)}function Tu(Ae){Ae!==void 0&&st(2,Ae,void 0)}function Wr(Ae,vt){Ae!==void 0&&st(1,Ae,vt)}function Wn(Ae){st(Lg(Ae)?6:4,Ae)}function pt(Ae){Lt&&p1(Ae)&4&&(Lt=!1)}function on(Ae){Lt=Ae}function st(Ae,vt,fn){Ns=fn,Kr(0,Ae,vt)(Ae,vt),Ns=void 0}function nr(Ae){return!jn&&!al(Ae)}function Zr(Ae){return!kt&&!al(Ae)&&!lAe(Ae)}function Kr(Ae,vt,fn){switch(Ae){case 0:if(d!==a1e&&(!h||h(fn)))return hr;case 1:if(_!==Jde&&(Zi=_(vt,fn)||fn)!==fn)return Ns&&(Zi=Ns(Zi)),nn;case 2:if(nr(fn))return PQ;case 3:if(Zr(fn))return mK;case 4:return Sn;default:return pe.assertNever(Ae)}}function Dn(Ae,vt,fn){return Kr(Ae+1,vt,fn)}function hr(Ae,vt){let fn=Dn(0,Ae,vt);d(Ae,vt,fn)}function Sn(Ae,vt){if(S?.(vt),Lt){let fn=Lt;pt(vt),Ni(Ae,vt),on(fn)}else Ni(Ae,vt);R?.(vt),Ns=void 0}function Ni(Ae,vt,fn=!0){if(fn){let qi=CEe(vt);if(qi)return wt(Ae,vt,qi)}if(Ae===0)return _5(Ma(vt,al));if(Ae===2)return Ue(Ma(vt,Ir));if(Ae===6)return cn(Ma(vt,Lg),!0);if(Ae===3)return Gi(Ma(vt,Ds));if(Ae===7)return WN(Ma(vt,kU));if(Ae===5)return pe.assertNode(vt,x$e),gR(!0);if(Ae===4){switch(vt.kind){case 16:case 17:case 18:return cn(vt,!1);case 80:return Ue(vt);case 81:return In(vt);case 167:return Hn(vt);case 168:return $r(vt);case 169:return ri(vt);case 170:return oo(vt);case 171:return Bs(vt);case 172:return Ys(vt);case 173:return tn(vt);case 174:return wn(vt);case 175:return Mn(vt);case 176:return ci(vt);case 177:return es(vt);case 178:case 179:return Oi(vt);case 180:return Vn(vt);case 181:return Ui(vt);case 182:return gs(vt);case 183:return mc(vt);case 184:return Ag(vt);case 185:return dg(vt);case 186:return sm(vt);case 187:return qp(vt);case 188:return Jg(vt);case 189:return ch(vt);case 190:return Au(vt);case 191:return zA(vt);case 193:return NA(vt);case 194:return oi(vt);case 195:return tp(vt);case 196:return JI(vt);case 197:return Wh(vt);case 234:return HC(vt);case 198:return MC();case 199:return bf(vt);case 200:return UI(vt);case 201:return ve(vt);case 202:return mr(vt);case 203:return Eg(vt);case 204:return ln(vt);case 205:return fs(vt);case 206:return ni(vt);case 207:return Ls(vt);case 208:return Za(vt);case 209:return Go(vt);case 240:return Qx(vt);case 241:return bi();case 242:return Xx(vt);case 244:return rC(vt);case 243:return gR(!1);case 245:return mS(vt);case 246:return VN(vt);case 247:return en(vt);case 248:return gi(vt);case 249:return _i(vt);case 250:return ys(vt);case 251:return $s(vt);case 252:return pc(vt);case 253:return cl(vt);case 254:return tg(vt);case 255:return zl(vt);case 256:return Su(vt);case 257:return xf(vt);case 258:return Ug(vt);case 259:return YC(vt);case 260:return w1(vt);case 261:return CS(vt);case 262:return Bv(vt);case 263:return qF(vt);case 264:return is(vt);case 265:return Po(vt);case 266:return Ps(vt);case 267:return ao(vt);case 268:return Yc(vt);case 269:return ru(vt);case 270:return $a(vt);case 271:return Ak(vt);case 272:return nu(vt);case 273:return Gf(vt);case 274:return Mb(vt);case 275:return XB(vt);case 281:return vse(vt);case 276:return I_(vt);case 277:return JB(vt);case 278:return T1(vt);case 279:return A5(vt);case 280:return Gpe(vt);case 282:return Bse(vt);case 301:return gk(vt);case 302:return d5(vt);case 283:return;case 284:return $U(vt);case 12:return tK(vt);case 287:case 290:return Fpe(vt);case 288:case 291:return dq(vt);case 292:return wse(vt);case 293:return f5(vt);case 294:return rK(vt);case 295:return fq(vt);case 296:return Iq(vt);case 297:return iO(vt);case 298:return p9(vt);case 299:return eZ(vt);case 300:return tZ(vt);case 304:return sO(vt);case 305:return I5(vt);case 306:return nK(vt);case 307:return h5(vt);case 308:return _5(vt);case 309:return pe.fail("Bundles should be printed using printBundle");case 310:return C5(vt);case 311:return nZ(vt);case 313:return qo("*");case 314:return qo("?");case 315:return Ip(vt);case 316:return kl(vt);case 317:return bu(vt);case 318:return pI(vt);case 192:case 319:return hS(vt);case 320:return;case 321:return PA(vt);case 323:return py(vt);case 324:return pk(vt);case 328:case 333:case 338:return m5(vt);case 329:case 330:return dk(vt);case 331:case 332:return;case 334:case 335:case 336:case 337:return;case 339:return Hb(vt);case 340:return A0(vt);case 342:case 349:return Qy(vt);case 341:case 343:case 344:case 345:case 350:case 351:return iK(vt);case 346:return Sf(vt);case 347:return g0(vt);case 348:return Tse(vt);case 352:return rZ(vt);case 354:case 355:return}if(un(vt)&&(Ae=1,_!==Jde)){let qi=_(Ae,vt)||vt;qi!==vt&&(vt=qi,Ns&&(vt=Ns(vt)))}}if(Ae===1)switch(vt.kind){case 9:case 10:return Ht(vt);case 11:case 14:case 15:return cn(vt,!1);case 80:return Ue(vt);case 81:return In(vt);case 210:return Ss(vt);case 211:return Uc(vt);case 212:return el(vt);case 213:return Vg(vt);case 214:return Ef(vt);case 215:return om(vt);case 216:return Sh(vt);case 217:return Zp(vt);case 218:return lh(vt);case 219:return v1(vt);case 220:return V_(vt);case 221:return or(vt);case 222:return qn(vt);case 223:return Js(vt);case 224:return Yl(vt);case 225:return DA(vt);case 226:return gA(vt);case 227:return ou(vt);case 228:return lf(vt);case 229:return fI(vt);case 230:return KI(vt);case 231:return b2(vt);case 232:return f_(vt);case 233:return;case 235:return B1(vt);case 236:return dy(vt);case 234:return HC(vt);case 239:return vv(vt);case 237:return lk(vt);case 238:return pe.fail("SyntheticExpression should never be printed.");case 283:return;case 285:return d9(vt);case 286:return eK(vt);case 289:return Aq(vt);case 353:return pe.fail("SyntaxList should not be printed");case 354:return;case 356:return Br(vt);case 357:return sK(vt);case 358:return pe.fail("SyntheticReferenceExpression should not be printed")}if(w0(vt.kind))return lK(vt,mu);if(A7(vt.kind))return lK(vt,qo);pe.fail(`Unhandled SyntaxKind: ${pe.formatSyntaxKind(vt.kind)}.`)}function Gi(Ae){Cs(Ae.name),Fo(),mu("in"),Fo(),Cs(Ae.constraint)}function nn(Ae,vt){let fn=Dn(1,Ae,vt);pe.assertIsDefined(Zi),vt=Zi,Zi=void 0,fn(Ae,vt)}function En(Ae){let vt=!1,fn=Ae.kind===309?Ae:void 0;if(fn&&Ie===0)return;let qi=fn?fn.sourceFiles.length:1;for(let ic=0;ic")}function RI(Ae){Fo(),Cs(Ae.type)}function pI(Ae){mu("function"),b5(Ae,Ae.parameters),qo(":"),Cs(Ae.type)}function Ip(Ae){qo("?"),Cs(Ae.type)}function kl(Ae){qo("!"),Cs(Ae.type)}function bu(Ae){Cs(Ae.type),qo("=")}function sm(Ae){dR(Ae,Ae.modifiers),mu("new"),Fo(),Yy(Ae,yu,RI)}function qp(Ae){mu("typeof"),Fo(),Cs(Ae.exprName),wv(Ae,Ae.typeArguments)}function Jg(Ae){jw(Ae),F(Ae.members,OQ),qo("{");let vt=rA(Ae)&1?768:32897;fa(Ae,Ae.members,vt|524288),qo("}"),aZ(Ae)}function ch(Ae){Cs(Ae.elementType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),qo("]")}function hS(Ae){qo("..."),Cs(Ae.type)}function Au(Ae){Fe(23,Ae.pos,qo,Ae);let vt=rA(Ae)&1?528:657;fa(Ae,Ae.elements,vt|524288,ks.parenthesizeElementTypeOfTupleType),Fe(24,Ae.elements.end,qo,Ae)}function Eg(Ae){Cs(Ae.dotDotDotToken),Cs(Ae.name),Cs(Ae.questionToken),Fe(59,Ae.name.end,qo,Ae),Fo(),Cs(Ae.type)}function zA(Ae){Cs(Ae.type,ks.parenthesizeTypeOfOptionalType),qo("?")}function NA(Ae){fa(Ae,Ae.types,516,ks.parenthesizeConstituentTypeOfUnionType)}function oi(Ae){fa(Ae,Ae.types,520,ks.parenthesizeConstituentTypeOfIntersectionType)}function tp(Ae){Cs(Ae.checkType,ks.parenthesizeCheckTypeOfConditionalType),Fo(),mu("extends"),Fo(),Cs(Ae.extendsType,ks.parenthesizeExtendsTypeOfConditionalType),Fo(),qo("?"),Fo(),Cs(Ae.trueType),Fo(),qo(":"),Fo(),Cs(Ae.falseType)}function JI(Ae){mu("infer"),Fo(),Cs(Ae.typeParameter)}function Wh(Ae){qo("("),Cs(Ae.type),qo(")")}function MC(){mu("this")}function bf(Ae){lO(Ae.operator,mu),Fo();let vt=Ae.operator===148?ks.parenthesizeOperandOfReadonlyTypeOperator:ks.parenthesizeOperandOfTypeOperator;Cs(Ae.type,vt)}function UI(Ae){Cs(Ae.objectType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),Cs(Ae.indexType),qo("]")}function ve(Ae){let vt=rA(Ae);qo("{"),vt&1?Fo():(Z0(),fk()),Ae.readonlyToken&&(Cs(Ae.readonlyToken),Ae.readonlyToken.kind!==148&&mu("readonly"),Fo()),qo("["),st(3,Ae.typeParameter),Ae.nameType&&(Fo(),mu("as"),Fo(),Cs(Ae.nameType)),qo("]"),Ae.questionToken&&(Cs(Ae.questionToken),Ae.questionToken.kind!==58&&qo("?")),qo(":"),Fo(),Cs(Ae.type),Iy(),vt&1?Fo():(Z0(),pR()),fa(Ae,Ae.members,2),qo("}")}function mr(Ae){Wr(Ae.literal)}function ln(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function ni(Ae){Ae.isTypeOf&&(mu("typeof"),Fo()),mu("import"),qo("("),Cs(Ae.argument),Ae.attributes&&(qo(","),Fo(),st(7,Ae.attributes)),qo(")"),Ae.qualifier&&(qo("."),Cs(Ae.qualifier)),wv(Ae,Ae.typeArguments)}function Ls(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function Za(Ae){qo("["),fa(Ae,Ae.elements,524880),qo("]")}function Go(Ae){Cs(Ae.dotDotDotToken),Ae.propertyName&&(Cs(Ae.propertyName),qo(":"),Fo()),Cs(Ae.name),y5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function Ss(Ae){let vt=Ae.elements,fn=Ae.multiLine?65536:0;sa(Ae,vt,8914|fn,ks.parenthesizeExpressionForDisallowedComma)}function Uc(Ae){jw(Ae),F(Ae.properties,OQ);let vt=rA(Ae)&131072;vt&&fk();let fn=Ae.multiLine?65536:0,qi=Ee&&Ee.languageVersion>=1&&!Zu(Ee)?64:0;fa(Ae,Ae.properties,526226|qi|fn),vt&&pR(),aZ(Ae)}function el(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess);let vt=Ae.questionDotToken||xB(me.createToken(25),Ae.expression.end,Ae.name.pos),fn=PN(Ae,Ae.expression,vt),qi=PN(Ae,vt,Ae.name);Tv(fn,!1),vt.kind!==29&&Fd(Ae.expression)&&!Wt.hasTrailingComment()&&!Wt.hasTrailingWhitespace()&&qo("."),Ae.questionDotToken?Cs(vt):Fe(vt.kind,Ae.expression.end,qo,Ae),Tv(qi,!1),Cs(Ae.name),Yb(fn,qi)}function Fd(Ae){if(Ae=l2(Ae),yC(Ae)){let vt=AO(Ae,void 0,!0,!1);return!(Ae.numericLiteralFlags&448)&&!vt.includes(Vi(25))&&!vt.includes("E")&&!vt.includes("e")}else if(bp(Ae)){let vt=s9e(Ae);return typeof vt=="number"&&isFinite(vt)&&vt>=0&&Math.floor(vt)===vt}}function Vg(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Cs(Ae.questionDotToken),Fe(23,Ae.expression.end,qo,Ae),Wr(Ae.argumentExpression),Fe(24,Ae.argumentExpression.end,qo,Ae)}function Ef(Ae){let vt=p1(Ae)&16;vt&&(qo("("),sZ("0"),qo(","),Fo()),Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),vt&&qo(")"),Cs(Ae.questionDotToken),wv(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,2576,ks.parenthesizeExpressionForDisallowedComma)}function om(Ae){Fe(105,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeExpressionOfNew),wv(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,18960,ks.parenthesizeExpressionForDisallowedComma)}function Sh(Ae){let vt=p1(Ae)&16;vt&&(qo("("),sZ("0"),qo(","),Fo()),Wr(Ae.tag,ks.parenthesizeLeftSideOfAccess),vt&&qo(")"),wv(Ae,Ae.typeArguments),Fo(),Wr(Ae.template)}function Zp(Ae){qo("<"),Cs(Ae.type),qo(">"),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function lh(Ae){let vt=Fe(21,Ae.pos,qo,Ae),fn=uO(Ae.expression,Ae);Wr(Ae.expression,void 0),Cq(Ae.expression,Ae),Yb(fn),Fe(22,Ae.expression?Ae.expression.end:vt,qo,Ae)}function v1(Ae){zx(Ae.name),A9(Ae)}function V_(Ae){dR(Ae,Ae.modifiers),Yy(Ae,y2,Ob)}function y2(Ae){Kx(Ae,Ae.typeParameters),ON(Ae,Ae.parameters),KB(Ae.type),Fo(),Cs(Ae.equalsGreaterThanToken)}function Ob(Ae){eg(Ae.body)?br(Ae.body):(Fo(),Wr(Ae.body,ks.parenthesizeConciseBodyOfArrowFunction))}function or(Ae){Fe(91,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function qn(Ae){Fe(114,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Js(Ae){Fe(116,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Yl(Ae){Fe(135,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function DA(Ae){lO(Ae.operator,TE),kA(Ae)&&Fo(),Wr(Ae.operand,ks.parenthesizeOperandOfPrefixUnary)}function kA(Ae){let vt=Ae.operand;return vt.kind===225&&(Ae.operator===40&&(vt.operator===40||vt.operator===46)||Ae.operator===41&&(vt.operator===41||vt.operator===47))}function gA(Ae){Wr(Ae.operand,ks.parenthesizeOperandOfPostfixUnary),lO(Ae.operator,TE)}function ym(){return D9e(Ae,vt,fn,qi,ic,void 0);function Ae(ql,Vc){if(Vc){Vc.stackIndex++,Vc.preserveSourceNewlinesStack[Vc.stackIndex]=Lt,Vc.containerPosStack[Vc.stackIndex]=ot,Vc.containerEndStack[Vc.stackIndex]=ir,Vc.declarationListContainerEndStack[Vc.stackIndex]=qt;let yA=Vc.shouldEmitCommentsStack[Vc.stackIndex]=nr(ql),Ph=Vc.shouldEmitSourceMapsStack[Vc.stackIndex]=Zr(ql);S?.(ql),yA&&fR(ql),Ph&&qA(ql),pt(ql)}else Vc={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return Vc}function vt(ql,Vc,yA){return Pc(ql,yA,"left")}function fn(ql,Vc,yA){let Ph=ql.kind!==28,d0=PN(yA,yA.left,ql),Xy=PN(yA,ql,yA.right);Tv(d0,Ph),$x(ql.pos),lK(ql,ql.kind===103?mu:TE),zw(ql.end,!0),Tv(Xy,!0)}function qi(ql,Vc,yA){return Pc(ql,yA,"right")}function ic(ql,Vc){let yA=PN(ql,ql.left,ql.operatorToken),Ph=PN(ql,ql.operatorToken,ql.right);if(Yb(yA,Ph),Vc.stackIndex>0){let d0=Vc.preserveSourceNewlinesStack[Vc.stackIndex],Xy=Vc.containerPosStack[Vc.stackIndex],x5=Vc.containerEndStack[Vc.stackIndex],Jy=Vc.declarationListContainerEndStack[Vc.stackIndex],fO=Vc.shouldEmitCommentsStack[Vc.stackIndex],Nq=Vc.shouldEmitSourceMapsStack[Vc.stackIndex];on(d0),Nq&&Uo(ql),fO&&pO(ql,Xy,x5,Jy),R?.(ql),Vc.stackIndex--}}function Pc(ql,Vc,yA){let Ph=yA==="left"?ks.getParenthesizeLeftSideOfBinaryForOperator(Vc.operatorToken.kind):ks.getParenthesizeRightSideOfBinaryForOperator(Vc.operatorToken.kind),d0=Kr(0,1,ql);if(d0===nn&&(pe.assertIsDefined(Zi),ql=Ph(Ma(Zi,un)),d0=Dn(1,1,ql),Zi=void 0),(d0===PQ||d0===mK||d0===Sn)&&po(ql))return ql;Ns=Ph,d0(1,ql)}}function lf(Ae){let vt=PN(Ae,Ae.condition,Ae.questionToken),fn=PN(Ae,Ae.questionToken,Ae.whenTrue),qi=PN(Ae,Ae.whenTrue,Ae.colonToken),ic=PN(Ae,Ae.colonToken,Ae.whenFalse);Wr(Ae.condition,ks.parenthesizeConditionOfConditionalExpression),Tv(vt,!0),Cs(Ae.questionToken),Tv(fn,!0),Wr(Ae.whenTrue,ks.parenthesizeBranchOfConditionalExpression),Yb(vt,fn),Tv(qi,!0),Cs(Ae.colonToken),Tv(ic,!0),Wr(Ae.whenFalse,ks.parenthesizeBranchOfConditionalExpression),Yb(qi,ic)}function fI(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function KI(Ae){Fe(127,Ae.pos,mu,Ae),Cs(Ae.asteriskToken),h9(Ae.expression&&bs(Ae.expression),Jl)}function b2(Ae){Fe(26,Ae.pos,qo,Ae),Wr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma)}function f_(Ae){zx(Ae.name),Qs(Ae)}function HC(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),wv(Ae,Ae.typeArguments)}function B1(Ae){Wr(Ae.expression,void 0),Ae.type&&(Fo(),mu("as"),Fo(),Cs(Ae.type))}function dy(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),TE("!")}function vv(Ae){Wr(Ae.expression,void 0),Ae.type&&(Fo(),mu("satisfies"),Fo(),Cs(Ae.type))}function lk(Ae){cO(Ae.keywordToken,Ae.pos,qo),qo("."),Cs(Ae.name)}function Qx(Ae){Wr(Ae.expression),Cs(Ae.literal)}function Xx(Ae){Pb(Ae,!Ae.multiLine&&gO(Ae))}function Pb(Ae,vt){Fe(19,Ae.pos,qo,Ae);let fn=vt||rA(Ae)&1?768:129;fa(Ae,Ae.statements,fn),Fe(20,Ae.statements.end,qo,Ae,!!(fn&1))}function rC(Ae){fy(Ae,Ae.modifiers,!1),Cs(Ae.declarationList),Iy()}function gR(Ae){Ae?qo(";"):Iy()}function mS(Ae){Wr(Ae.expression,ks.parenthesizeExpressionOfExpressionStatement),(!Ee||!Zu(Ee)||ap(Ae.expression))&&Iy()}function VN(Ae){let vt=Fe(101,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),iZ(Ae,Ae.thenStatement),Ae.elseStatement&&(yS(Ae,Ae.thenStatement,Ae.elseStatement),Fe(93,Ae.thenStatement.end,mu,Ae),Ae.elseStatement.kind===246?(Fo(),Cs(Ae.elseStatement)):iZ(Ae,Ae.elseStatement))}function ct(Ae,vt){let fn=Fe(117,vt,mu,Ae);Fo(),Fe(21,fn,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae)}function en(Ae){Fe(92,Ae.pos,mu,Ae),iZ(Ae,Ae.statement),eg(Ae.statement)&&!Lt?Fo():yS(Ae,Ae.statement,Ae.expression),ct(Ae,Ae.statement.end),Iy()}function gi(Ae){ct(Ae,Ae.pos),iZ(Ae,Ae.statement)}function _i(Ae){let vt=Fe(99,Ae.pos,mu,Ae);Fo();let fn=Fe(21,vt,qo,Ae);wa(Ae.initializer),fn=Fe(27,Ae.initializer?Ae.initializer.end:fn,qo,Ae),h9(Ae.condition),fn=Fe(27,Ae.condition?Ae.condition.end:fn,qo,Ae),h9(Ae.incrementor),Fe(22,Ae.incrementor?Ae.incrementor.end:fn,qo,Ae),iZ(Ae,Ae.statement)}function ys(Ae){let vt=Fe(99,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),wa(Ae.initializer),Fo(),Fe(103,Ae.initializer.end,mu,Ae),Fo(),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),iZ(Ae,Ae.statement)}function $s(Ae){let vt=Fe(99,Ae.pos,mu,Ae);Fo(),oK(Ae.awaitModifier),Fe(21,vt,qo,Ae),wa(Ae.initializer),Fo(),Fe(165,Ae.initializer.end,mu,Ae),Fo(),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),iZ(Ae,Ae.statement)}function wa(Ae){Ae!==void 0&&(Ae.kind===262?Cs(Ae):Wr(Ae))}function pc(Ae){Fe(88,Ae.pos,mu,Ae),_S(Ae.label),Iy()}function cl(Ae){Fe(83,Ae.pos,mu,Ae),_S(Ae.label),Iy()}function Fe(Ae,vt,fn,qi,ic){let Pc=eu(qi),ql=Pc&&Pc.kind===qi.kind,Vc=vt;if(ql&&Ee&&(vt=Yu(Ee.text,vt)),ql&&qi.pos!==Vc){let yA=ic&&Ee&&!SE(Vc,vt,Ee);yA&&fk(),$x(Vc),yA&&pR()}if(!re&&(Ae===19||Ae===20)?vt=cO(Ae,vt,fn,qi):vt=lO(Ae,fn,vt),ql&&qi.end!==vt){let yA=qi.kind===295;zw(vt,!yA,yA)}return vt}function gr(Ae){return Ae.kind===2||!!Ae.hasTrailingNewLine}function Ln(Ae){if(!Ee)return!1;let vt=mE(Ee.text,Ae.pos);if(vt){let fn=eu(Ae);if(fn&&dI(fn.parent))return!0}return zt(vt,gr)||zt(W3(Ae),gr)?!0:gy(Ae)?Ae.pos!==Ae.expression.pos&&zt(o2(Ee.text,Ae.expression.pos),gr)?!0:Ln(Ae.expression):!1}function bs(Ae){if(!jn)switch(Ae.kind){case 356:if(Ln(Ae)){let vt=eu(Ae);if(vt&&dI(vt)){let fn=me.createParenthesizedExpression(Ae.expression);return ua(fn,Ae),gn(fn,vt),fn}return me.createParenthesizedExpression(Ae)}return me.updatePartiallyEmittedExpression(Ae,bs(Ae.expression));case 212:return me.updatePropertyAccessExpression(Ae,bs(Ae.expression),Ae.name);case 213:return me.updateElementAccessExpression(Ae,bs(Ae.expression),Ae.argumentExpression);case 214:return me.updateCallExpression(Ae,bs(Ae.expression),Ae.typeArguments,Ae.arguments);case 216:return me.updateTaggedTemplateExpression(Ae,bs(Ae.tag),Ae.typeArguments,Ae.template);case 226:return me.updatePostfixUnaryExpression(Ae,bs(Ae.operand));case 227:return me.updateBinaryExpression(Ae,bs(Ae.left),Ae.operatorToken,Ae.right);case 228:return me.updateConditionalExpression(Ae,bs(Ae.condition),Ae.questionToken,Ae.whenTrue,Ae.colonToken,Ae.whenFalse);case 235:return me.updateAsExpression(Ae,bs(Ae.expression),Ae.type);case 239:return me.updateSatisfiesExpression(Ae,bs(Ae.expression),Ae.type);case 236:return me.updateNonNullExpression(Ae,bs(Ae.expression))}return Ae}function Jl(Ae){return bs(ks.parenthesizeExpressionForDisallowedComma(Ae))}function tg(Ae){Fe(107,Ae.pos,mu,Ae),h9(Ae.expression&&bs(Ae.expression),bs),Iy()}function zl(Ae){let vt=Fe(118,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),iZ(Ae,Ae.statement)}function Su(Ae){let vt=Fe(109,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),Fo(),Cs(Ae.caseBlock)}function xf(Ae){Cs(Ae.label),Fe(59,Ae.label.end,qo,Ae),Fo(),Cs(Ae.statement)}function Ug(Ae){Fe(111,Ae.pos,mu,Ae),h9(bs(Ae.expression),bs),Iy()}function YC(Ae){Fe(113,Ae.pos,mu,Ae),Fo(),Cs(Ae.tryBlock),Ae.catchClause&&(yS(Ae,Ae.tryBlock,Ae.catchClause),Cs(Ae.catchClause)),Ae.finallyBlock&&(yS(Ae,Ae.catchClause||Ae.tryBlock,Ae.finallyBlock),Fe(98,(Ae.catchClause||Ae.tryBlock).end,mu,Ae),Fo(),Cs(Ae.finallyBlock))}function w1(Ae){cO(89,Ae.pos,mu),Iy()}function CS(Ae){var vt,fn,qi;Cs(Ae.name),Cs(Ae.exclamationToken),KB(Ae.type),y5(Ae.initializer,((vt=Ae.type)==null?void 0:vt.end)??((qi=(fn=Ae.name.emitNode)==null?void 0:fn.typeNode)==null?void 0:qi.end)??Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function Bv(Ae){if(Bd(Ae))mu("await"),Fo(),mu("using");else{let vt=oS(Ae)?"let":sI(Ae)?"const":iI(Ae)?"using":"var";mu(vt)}Fo(),fa(Ae,Ae.declarations,528)}function qF(Ae){A9(Ae)}function A9(Ae){fy(Ae,Ae.modifiers,!1),mu("function"),Cs(Ae.asteriskToken),Fo(),Tu(Ae.name),Yy(Ae,QB,uk)}function Yy(Ae,vt,fn){let qi=rA(Ae)&131072;qi&&fk(),jw(Ae),F(Ae.parameters,QC),vt(Ae),fn(Ae),aZ(Ae),qi&&pR()}function uk(Ae){let vt=Ae.body;vt?br(vt):Iy()}function AR(Ae){Iy()}function QB(Ae){Kx(Ae,Ae.typeParameters),b5(Ae,Ae.parameters),KB(Ae.type)}function rO(Ae){if(rA(Ae)&1)return!0;if(Ae.multiLine||!ap(Ae)&&Ee&&!D3(Ae,Ee)||C9(Ae,Nc(Ae.statements),2)||mq(Ae,li(Ae.statements),2,Ae.statements))return!1;let vt;for(let fn of Ae.statements){if(S5(vt,fn,2)>0)return!1;vt=fn}return!0}function br(Ae){QC(Ae),S?.(Ae),Fo(),qo("{"),fk();let vt=rO(Ae)?sn:ei;MQ(Ae,Ae.statements,vt),pR(),cO(20,Ae.statements.end,qo,Ae),R?.(Ae)}function sn(Ae){ei(Ae,!0)}function ei(Ae,vt){let fn=Ux(Ae.statements),qi=Wt.getTextPos();En(Ae),fn===0&&qi===Wt.getTextPos()&&vt?(pR(),fa(Ae,Ae.statements,768),fk()):fa(Ae,Ae.statements,1,void 0,fn)}function is(Ae){Qs(Ae)}function Qs(Ae){fy(Ae,Ae.modifiers,!0),Fe(86,Iv(Ae).pos,mu,Ae),Ae.name&&(Fo(),Tu(Ae.name));let vt=rA(Ae)&131072;vt&&fk(),Kx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,0),Fo(),qo("{"),jw(Ae),F(Ae.members,OQ),fa(Ae,Ae.members,129),aZ(Ae),qo("}"),vt&&pR()}function Po(Ae){fy(Ae,Ae.modifiers,!1),mu("interface"),Fo(),Cs(Ae.name),Kx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,512),Fo(),qo("{"),jw(Ae),F(Ae.members,OQ),fa(Ae,Ae.members,129),aZ(Ae),qo("}")}function Ps(Ae){fy(Ae,Ae.modifiers,!1),mu("type"),Fo(),Cs(Ae.name),Kx(Ae,Ae.typeParameters),Fo(),qo("="),Fo(),Cs(Ae.type),Iy()}function ao(Ae){fy(Ae,Ae.modifiers,!1),mu("enum"),Fo(),Cs(Ae.name),Fo(),qo("{"),fa(Ae,Ae.members,145),qo("}")}function Yc(Ae){fy(Ae,Ae.modifiers,!1),~Ae.flags&2048&&(mu(Ae.flags&32?"namespace":"module"),Fo()),Cs(Ae.name);let vt=Ae.body;if(!vt)return Iy();for(;vt&&Lh(vt);)qo("."),Cs(vt.name),vt=vt.body;Fo(),Cs(vt)}function ru(Ae){jw(Ae),F(Ae.statements,QC),Pb(Ae,gO(Ae)),aZ(Ae)}function $a(Ae){Fe(19,Ae.pos,qo,Ae),fa(Ae,Ae.clauses,129),Fe(20,Ae.clauses.end,qo,Ae,!0)}function nu(Ae){fy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,mu,Ae),Fo(),Ae.isTypeOnly&&(Fe(156,Ae.pos,mu,Ae),Fo()),Cs(Ae.name),Fo(),Fe(64,Ae.name.end,qo,Ae),Fo(),ll(Ae.moduleReference),Iy()}function ll(Ae){Ae.kind===80?Wr(Ae):Cs(Ae)}function Gf(Ae){fy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,mu,Ae),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,mu,Ae),Fo()),Wr(Ae.moduleSpecifier),Ae.attributes&&_S(Ae.attributes),Iy()}function Mb(Ae){Ae.phaseModifier!==void 0&&(Fe(Ae.phaseModifier,Ae.pos,mu,Ae),Fo()),Cs(Ae.name),Ae.name&&Ae.namedBindings&&(Fe(28,Ae.name.end,qo,Ae),Fo()),Cs(Ae.namedBindings)}function XB(Ae){let vt=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,vt,mu,Ae),Fo(),Cs(Ae.name)}function I_(Ae){Jx(Ae)}function JB(Ae){p5(Ae)}function T1(Ae){let vt=Fe(95,Ae.pos,mu,Ae);Fo(),Ae.isExportEquals?Fe(64,vt,TE,Ae):Fe(90,vt,mu,Ae),Fo(),Wr(Ae.expression,Ae.isExportEquals?ks.getParenthesizeRightSideOfBinaryForOperator(64):ks.parenthesizeExpressionOfExportDefault),Iy()}function A5(Ae){fy(Ae,Ae.modifiers,!1);let vt=Fe(95,Ae.pos,mu,Ae);if(Fo(),Ae.isTypeOnly&&(vt=Fe(156,vt,mu,Ae),Fo()),Ae.exportClause?Cs(Ae.exportClause):vt=Fe(42,vt,qo,Ae),Ae.moduleSpecifier){Fo();let fn=Ae.exportClause?Ae.exportClause.end:vt;Fe(161,fn,mu,Ae),Fo(),Wr(Ae.moduleSpecifier)}Ae.attributes&&_S(Ae.attributes),Iy()}function WN(Ae){qo("{"),Fo(),mu(Ae.token===132?"assert":"with"),qo(":"),Fo();let vt=Ae.elements;fa(Ae,vt,526226),Fo(),qo("}")}function gk(Ae){Fe(Ae.token,Ae.pos,mu,Ae),Fo();let vt=Ae.elements;fa(Ae,vt,526226)}function d5(Ae){Cs(Ae.name),qo(":"),Fo();let vt=Ae.value;if(!(rA(vt)&1024)){let fn=ZB(vt);zw(fn.pos)}Cs(vt)}function Ak(Ae){let vt=Fe(95,Ae.pos,mu,Ae);Fo(),vt=Fe(130,vt,mu,Ae),Fo(),vt=Fe(145,vt,mu,Ae),Fo(),Cs(Ae.name),Iy()}function vse(Ae){let vt=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,vt,mu,Ae),Fo(),Cs(Ae.name)}function Gpe(Ae){Jx(Ae)}function Bse(Ae){p5(Ae)}function Jx(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function p5(Ae){Ae.isTypeOnly&&(mu("type"),Fo()),Ae.propertyName&&(Cs(Ae.propertyName),Fo(),Fe(130,Ae.propertyName.end,mu,Ae),Fo()),Cs(Ae.name)}function $U(Ae){mu("require"),qo("("),Wr(Ae.expression),qo(")")}function d9(Ae){Cs(Ae.openingElement),fa(Ae,Ae.children,262144),Cs(Ae.closingElement)}function eK(Ae){qo("<"),FQ(Ae.tagName),wv(Ae,Ae.typeArguments),Fo(),Cs(Ae.attributes),qo("/>")}function Aq(Ae){Cs(Ae.openingFragment),fa(Ae,Ae.children,262144),Cs(Ae.closingFragment)}function Fpe(Ae){if(qo("<"),iR(Ae)){let vt=uO(Ae.tagName,Ae);FQ(Ae.tagName),wv(Ae,Ae.typeArguments),Ae.attributes.properties&&Ae.attributes.properties.length>0&&Fo(),Cs(Ae.attributes),Cq(Ae.attributes,Ae),Yb(vt)}qo(">")}function tK(Ae){Wt.writeLiteral(Ae.text)}function dq(Ae){qo("")}function f5(Ae){fa(Ae,Ae.properties,262656)}function wse(Ae){Cs(Ae.name),AA("=",qo,Ae.initializer,Wn)}function rK(Ae){qo("{..."),Wr(Ae.expression),qo("}")}function pq(Ae){let vt=!1;return CF(Ee?.text||"",Ae+1,()=>vt=!0),vt}function GQ(Ae){let vt=!1;return WD(Ee?.text||"",Ae+1,()=>vt=!0),vt}function nO(Ae){return pq(Ae)||GQ(Ae)}function fq(Ae){var vt;if(Ae.expression||!jn&&!ap(Ae)&&nO(Ae.pos)){let fn=Ee&&!ap(Ae)&&Ra(Ee,Ae.pos).line!==Ra(Ee,Ae.end).line;fn&&Wt.increaseIndent();let qi=Fe(19,Ae.pos,qo,Ae);Cs(Ae.dotDotDotToken),Wr(Ae.expression),Fe(20,((vt=Ae.expression)==null?void 0:vt.end)||qi,qo,Ae),fn&&Wt.decreaseIndent()}}function Iq(Ae){Tu(Ae.namespace),qo(":"),Tu(Ae.name)}function FQ(Ae){Ae.kind===80?Wr(Ae):Cs(Ae)}function iO(Ae){Fe(84,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma),$F(Ae,Ae.statements,Ae.expression.end)}function p9(Ae){let vt=Fe(90,Ae.pos,mu,Ae);$F(Ae,Ae.statements,vt)}function $F(Ae,vt,fn){let qi=vt.length===1&&(!Ee||ap(Ae)||ap(vt[0])||rz(Ae,vt[0],Ee)),ic=163969;qi?(cO(59,fn,qo,Ae),Fo(),ic&=-130):Fe(59,fn,qo,Ae),fa(Ae,vt,ic)}function eZ(Ae){Fo(),lO(Ae.token,mu),Fo(),fa(Ae,Ae.types,528)}function tZ(Ae){let vt=Fe(85,Ae.pos,mu,Ae);Fo(),Ae.variableDeclaration&&(Fe(21,vt,qo,Ae),Cs(Ae.variableDeclaration),Fe(22,Ae.variableDeclaration.end,qo,Ae),Fo()),Cs(Ae.block)}function sO(Ae){Cs(Ae.name),qo(":"),Fo();let vt=Ae.initializer;if(!(rA(vt)&1024)){let fn=ZB(vt);zw(fn.pos)}Wr(vt,ks.parenthesizeExpressionForDisallowedComma)}function I5(Ae){Cs(Ae.name),Ae.objectAssignmentInitializer&&(Fo(),qo("="),Fo(),Wr(Ae.objectAssignmentInitializer,ks.parenthesizeExpressionForDisallowedComma))}function nK(Ae){Ae.expression&&(Fe(26,Ae.pos,qo,Ae),Wr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma))}function h5(Ae){Cs(Ae.name),y5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function PA(Ae){if(Gt("/**"),Ae.comment){let vt=wJ(Ae.comment);if(vt){let fn=vt.split(/\r\n?|\n/);for(let qi of fn)Z0(),Fo(),qo("*"),Fo(),Gt(qi)}}Ae.tags&&(Ae.tags.length===1&&Ae.tags[0].kind===345&&!Ae.comment?(Fo(),Cs(Ae.tags[0])):fa(Ae,Ae.tags,33)),Fo(),Gt("*/")}function iK(Ae){UB(Ae.tagName),C5(Ae.typeExpression),Jw(Ae.comment)}function Tse(Ae){UB(Ae.tagName),Cs(Ae.name),Jw(Ae.comment)}function rZ(Ae){UB(Ae.tagName),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,mu,Ae),Fo()),Wr(Ae.moduleSpecifier),Ae.attributes&&_S(Ae.attributes),Jw(Ae.comment)}function nZ(Ae){Fo(),qo("{"),Cs(Ae.name),qo("}")}function dk(Ae){UB(Ae.tagName),Fo(),qo("{"),Cs(Ae.class),qo("}"),Jw(Ae.comment)}function Sf(Ae){UB(Ae.tagName),C5(Ae.constraint),Fo(),fa(Ae,Ae.typeParameters,528),Jw(Ae.comment)}function g0(Ae){UB(Ae.tagName),Ae.typeExpression&&(Ae.typeExpression.kind===310?C5(Ae.typeExpression):(Fo(),qo("{"),Gt("Object"),Ae.typeExpression.isArrayType&&(qo("["),qo("]")),qo("}"))),Ae.fullName&&(Fo(),Cs(Ae.fullName)),Jw(Ae.comment),Ae.typeExpression&&Ae.typeExpression.kind===323&&py(Ae.typeExpression)}function Hb(Ae){UB(Ae.tagName),Ae.name&&(Fo(),Cs(Ae.name)),Jw(Ae.comment),pk(Ae.typeExpression)}function A0(Ae){Jw(Ae.comment),pk(Ae.typeExpression)}function m5(Ae){UB(Ae.tagName),Jw(Ae.comment)}function py(Ae){fa(Ae,me.createNodeArray(Ae.jsDocPropertyTags),33)}function pk(Ae){Ae.typeParameters&&fa(Ae,me.createNodeArray(Ae.typeParameters),33),Ae.parameters&&fa(Ae,me.createNodeArray(Ae.parameters),33),Ae.type&&(Z0(),Fo(),qo("*"),Fo(),Cs(Ae.type))}function Qy(Ae){UB(Ae.tagName),C5(Ae.typeExpression),Fo(),Ae.isBracketed&&qo("["),Cs(Ae.name),Ae.isBracketed&&qo("]"),Jw(Ae.comment)}function UB(Ae){qo("@"),Cs(Ae)}function Jw(Ae){let vt=wJ(Ae);vt&&(Fo(),Gt(vt))}function C5(Ae){Ae&&(Fo(),qo("{"),Cs(Ae.type),qo("}"))}function _5(Ae){Z0();let vt=Ae.statements;if(vt.length===0||!aS(vt[0])||ap(vt[0])){MQ(Ae,vt,ZQ);return}ZQ(Ae)}function Zpe(Ae){f9(!!Ae.hasNoDefaultLib,Ae.syntheticFileReferences||[],Ae.syntheticTypeReferences||[],Ae.syntheticLibReferences||[])}function Rse(Ae){Ae.isDeclarationFile&&f9(Ae.hasNoDefaultLib,Ae.referencedFiles,Ae.typeReferenceDirectives,Ae.libReferenceDirectives)}function f9(Ae,vt,fn,qi){if(Ae&&(aO('/// '),Z0()),Ee&&Ee.moduleName&&(aO(`/// `),Z0()),Ee&&Ee.amdDependencies)for(let Pc of Ee.amdDependencies)Pc.name?aO(`/// `):aO(`/// `),Z0();function ic(Pc,ql){for(let Vc of ql){let yA=Vc.resolutionMode?`resolution-mode="${Vc.resolutionMode===99?"import":"require"}" `:"",Ph=Vc.preserve?'preserve="true" ':"";aO(`/// `),Z0()}}ic("path",vt),ic("types",fn),ic("lib",qi)}function ZQ(Ae){let vt=Ae.statements;jw(Ae),F(Ae.statements,QC),En(Ae);let fn=Se(vt,qi=>!aS(qi));Rse(Ae),fa(Ae,vt,1,void 0,fn===-1?vt.length:fn),aZ(Ae)}function Br(Ae){let vt=rA(Ae);!(vt&1024)&&Ae.pos!==Ae.expression.pos&&zw(Ae.expression.pos),Wr(Ae.expression),!(vt&2048)&&Ae.end!==Ae.expression.end&&$x(Ae.expression.end)}function sK(Ae){sa(Ae,Ae.elements,528,void 0)}function Ux(Ae,vt,fn){let qi=!!vt;for(let ic=0;ic=fn.length||ql===0;if(yA&&qi&32768){T?.(fn),O?.(fn);return}qi&15360&&(qo(MBs(qi)),yA&&fn&&zw(fn.pos,!0)),T?.(fn),yA?qi&1&&!(Lt&&(!vt||Ee&&D3(vt,Ee)))?Z0():qi&256&&!(qi&524288)&&Fo():aK(Ae,vt,fn,qi,ic,Pc,ql,fn.hasTrailingComma,fn),O?.(fn),qi&15360&&(yA&&fn&&$x(fn.end),qo(HBs(qi)))}function aK(Ae,vt,fn,qi,ic,Pc,ql,Vc,yA){let Ph=(qi&262144)===0,d0=Ph,Xy=C9(vt,fn[Pc],qi);Xy?(Z0(Xy),d0=!1):qi&256&&Fo(),qi&128&&fk();let x5=JBs(Ae,ic),Jy,fO=!1;for(let E9=0;E90){if(qi&131||(fk(),fO=!0),d0&&qi&60&&!kB(qw.pos)){let YQ=ZB(qw);zw(YQ.pos,!!(qi&512),!0)}Z0(S9),d0=!1}else Jy&&qi&512&&Fo()}if(d0){let S9=ZB(qw);zw(S9.pos)}else d0=Ph;je=qw.pos,x5(qw,Ae,ic,E9),fO&&(pR(),fO=!1),Jy=qw}let Nq=Jy?rA(Jy):0,jB=jn||!!(Nq&2048),Qf=Vc&&qi&64&&qi&16;Qf&&(Jy&&!jB?Fe(28,Jy.end,qo,Jy):qo(",")),Jy&&(vt?vt.end:-1)!==Jy.end&&qi&60&&!jB&&$x(Qf&&yA?.end?yA.end:Jy.end),qi&128&&pR();let yK=mq(vt,fn[Pc+ql-1],qi,yA);yK?Z0(yK):qi&2097408&&Fo()}function sZ(Ae){Wt.writeLiteral(Ae)}function WQ(Ae){Wt.writeStringLiteral(Ae)}function Nse(Ae){Wt.write(Ae)}function Lpe(Ae,vt){Wt.writeSymbol(Ae,vt)}function qo(Ae){Wt.writePunctuation(Ae)}function Iy(){Wt.writeTrailingSemicolon(";")}function mu(Ae){Wt.writeKeyword(Ae)}function TE(Ae){Wt.writeOperator(Ae)}function cK(Ae){Wt.writeParameter(Ae)}function aO(Ae){Wt.writeComment(Ae)}function Fo(){Wt.writeSpace(" ")}function Dse(Ae){Wt.writeProperty(Ae)}function hq(Ae){Wt.nonEscapingWrite?Wt.nonEscapingWrite(Ae):Wt.write(Ae)}function Z0(Ae=1){for(let vt=0;vt0)}function fk(){Wt.increaseIndent()}function pR(){Wt.decreaseIndent()}function cO(Ae,vt,fn,qi){return kt?lO(Ae,fn,vt):CK(qi,Ae,fn,vt,lO)}function lK(Ae,vt){V&&V(Ae),vt(Vi(Ae.kind)),M&&M(Ae)}function lO(Ae,vt,fn){let qi=Vi(Ae);return vt(qi),fn<0?fn:fn+qi.length}function yS(Ae,vt,fn){if(rA(Ae)&1)Fo();else if(Lt){let qi=PN(Ae,vt,fn);qi?Z0(qi):Fo()}else Z0()}function Kw(Ae){let vt=Ae.split(/\r\n?|\n/),fn=Jre(vt);for(let qi of vt){let ic=fn?qi.slice(fn):qi;ic.length&&(Z0(),Gt(ic))}}function Tv(Ae,vt){Ae?(fk(),Z0(Ae)):vt&&Fo()}function Yb(Ae,vt){Ae&&pR(),vt&&pR()}function C9(Ae,vt,fn){if(fn&2||Lt){if(fn&65536)return 1;if(vt===void 0)return!Ae||Ee&&D3(Ae,Ee)?0:1;if(vt.pos===je||vt.kind===12)return 0;if(Ee&&Ae&&!kB(Ae.pos)&&!ap(vt)&&(!vt.parent||xd(vt.parent)===xd(Ae)))return Lt?v5(qi=>hLe(vt.pos,Ae.pos,Ee,qi)):rz(Ae,vt,Ee)?0:1;if(oZ(vt,fn))return 1}return fn&1?1:0}function S5(Ae,vt,fn){if(fn&2||Lt){if(Ae===void 0||vt===void 0||vt.kind===12)return 0;if(Ee&&!ap(Ae)&&!ap(vt))return Lt&&L0(Ae,vt)?v5(qi=>k3(Ae,vt,Ee,qi)):!Lt&&vq(Ae,vt)?Xne(Ae,vt,Ee)?0:1:fn&65536?1:0;if(oZ(Ae,fn)||oZ(vt,fn))return 1}else if(V3(vt))return 1;return fn&1?1:0}function mq(Ae,vt,fn,qi){if(fn&2||Lt){if(fn&65536)return 1;if(vt===void 0)return!Ae||Ee&&D3(Ae,Ee)?0:1;if(Ee&&Ae&&!kB(Ae.pos)&&!ap(vt)&&(!vt.parent||vt.parent===Ae)){if(Lt){let ic=qi&&!kB(qi.end)?qi.end:vt.end;return v5(Pc=>Tbe(ic,Ae.end,Ee,Pc))}return pLe(Ae,vt,Ee)?0:1}if(oZ(vt,fn))return 1}return fn&1&&!(fn&131072)?1:0}function v5(Ae){pe.assert(!!Lt);let vt=Ae(!0);return vt===0?Ae(!1):vt}function uO(Ae,vt){let fn=Lt&&C9(vt,Ae,0);return fn&&Tv(fn,!1),!!fn}function Cq(Ae,vt){let fn=Lt&&mq(vt,Ae,0,void 0);fn&&Z0(fn)}function oZ(Ae,vt){if(ap(Ae)){let fn=V3(Ae);return fn===void 0?(vt&65536)!==0:fn}return(vt&65536)!==0}function PN(Ae,vt,fn){return rA(Ae)&262144?0:(Ae=B5(Ae),vt=B5(vt),fn=B5(fn),V3(fn)?1:Ee&&!ap(Ae)&&!ap(vt)&&!ap(fn)?Lt?v5(qi=>k3(vt,fn,Ee,qi)):Xne(vt,fn,Ee)?0:1:0)}function gO(Ae){return Ae.statements.length===0&&(!Ee||Xne(Ae,Ae,Ee))}function B5(Ae){for(;Ae.kind===218&&ap(Ae);)Ae=Ae.expression;return Ae}function _9(Ae,vt){if(Gp(Ae)||FL(Ae))return w5(Ae);if(Lg(Ae)&&Ae.textSourceNode)return _9(Ae.textSourceNode,vt);let fn=Ee,qi=!!fn&&!!Ae.parent&&!ap(Ae);if(vw(Ae)){if(!qi||ms(Ae)!==xd(fn))return Vo(Ae)}else if(sR(Ae)){if(!qi||ms(Ae)!==xd(fn))return Ez(Ae)}else if(pe.assertNode(Ae,xL),!qi)return Ae.text;return SF(fn,Ae,vt)}function AO(Ae,vt=Ee,fn,qi){if(Ae.kind===11&&Ae.textSourceNode){let Pc=Ae.textSourceNode;if(Ir(Pc)||p(Pc)||yC(Pc)||sR(Pc)){let ql=yC(Pc)?Pc.text:_9(Pc);return qi?`"${cbe(ql)}"`:fn||rA(Ae)&16777216?`"${KT(ql)}"`:`"${Lne(ql)}"`}else return AO(Pc,ms(Pc),fn,qi)}let ic=(fn?1:0)|(qi?2:0)|(s.terminateUnterminatedLiterals?4:0)|(s.target&&s.target>=8?8:0);return Pge(Ae,vt,ic)}function jw(Ae){Ye.push(Tt),Tt=0,yt.push(Rt),!(Ae&&rA(Ae)&1048576)&&(at.push(Qe),Qe=0,Ke.push(et),et=void 0,Ct.push(mt))}function aZ(Ae){Tt=Ye.pop(),Rt=yt.pop(),!(Ae&&rA(Ae)&1048576)&&(Qe=at.pop(),et=Ke.pop(),mt=Ct.pop())}function jx(Ae){(!mt||mt===li(Ct))&&(mt=new Set),mt.add(Ae)}function dO(Ae){(!Rt||Rt===li(yt))&&(Rt=new Set),Rt.add(Ae)}function QC(Ae){if(Ae)switch(Ae.kind){case 242:F(Ae.statements,QC);break;case 257:case 255:case 247:case 248:QC(Ae.statement);break;case 246:QC(Ae.thenStatement),QC(Ae.elseStatement);break;case 249:case 251:case 250:QC(Ae.initializer),QC(Ae.statement);break;case 256:QC(Ae.caseBlock);break;case 270:F(Ae.clauses,QC);break;case 297:case 298:F(Ae.statements,QC);break;case 259:QC(Ae.tryBlock),QC(Ae.catchClause),QC(Ae.finallyBlock);break;case 300:QC(Ae.variableDeclaration),QC(Ae.block);break;case 244:QC(Ae.declarationList);break;case 262:F(Ae.declarations,QC);break;case 261:case 170:case 209:case 264:zx(Ae.name);break;case 263:zx(Ae.name),rA(Ae)&1048576&&(F(Ae.parameters,QC),QC(Ae.body));break;case 207:case 208:F(Ae.elements,QC);break;case 273:QC(Ae.importClause);break;case 274:zx(Ae.name),QC(Ae.namedBindings);break;case 275:zx(Ae.name);break;case 281:zx(Ae.name);break;case 276:F(Ae.elements,QC);break;case 277:zx(Ae.propertyName||Ae.name);break}}function OQ(Ae){if(Ae)switch(Ae.kind){case 304:case 305:case 173:case 172:case 175:case 174:case 178:case 179:zx(Ae.name);break}}function zx(Ae){Ae&&(Gp(Ae)||FL(Ae)?w5(Ae):Nu(Ae)&&QC(Ae))}function w5(Ae){let vt=Ae.emitNode.autoGenerate;if((vt.flags&7)===4)return uK(ZEe(Ae),p(Ae),vt.flags,vt.prefix,vt.suffix);{let fn=vt.id;return Ze[fn]||(Ze[fn]=Rv(Ae))}}function uK(Ae,vt,fn,qi,ic){let Pc=id(Ae),ql=vt?Te:Ne;return ql[Pc]||(ql[Pc]=Qb(Ae,vt,fn??0,Lie(qi,w5),Lie(ic)))}function qx(Ae,vt){return _q(Ae,vt)&&!kse(Ae,vt)&&!Pe.has(Ae)}function kse(Ae,vt){let fn,qi;if(vt?(fn=Rt,qi=yt):(fn=mt,qi=Ct),fn?.has(Ae))return!0;for(let ic=qi.length-1;ic>=0;ic--)if(fn!==qi[ic]&&(fn=qi[ic],fn?.has(Ae)))return!0;return!1}function _q(Ae,vt){return Ee?S7(Ee,Ae,g):!0}function yq(Ae,vt){for(let fn=vt;fn&&DW(fn,vt);fn=fn.nextContainer)if(HI(fn)&&fn.locals){let qi=fn.locals.get(pp(Ae));if(qi&&qi.flags&3257279)return!1}return!0}function Vpe(Ae){switch(Ae){case"":return Qe;case"#":return Tt;default:return et?.get(Ae)??0}}function bq(Ae,vt){switch(Ae){case"":Qe=vt;break;case"#":Tt=vt;break;default:et??(et=new Map),et.set(Ae,vt);break}}function T5(Ae,vt,fn,qi,ic){qi.length>0&&qi.charCodeAt(0)===35&&(qi=qi.slice(1));let Pc=K3(fn,qi,"",ic),ql=Vpe(Pc);if(Ae&&!(ql&Ae)){let yA=K3(fn,qi,Ae===268435456?"_i":"_n",ic);if(qx(yA,fn))return ql|=Ae,fn?dO(yA):vt&&jx(yA),bq(Pc,ql),yA}for(;;){let Vc=ql&268435455;if(ql++,Vc!==8&&Vc!==13){let yA=Vc<26?"_"+String.fromCharCode(97+Vc):"_"+(Vc-26),Ph=K3(fn,qi,yA,ic);if(qx(Ph,fn))return fn?dO(Ph):vt&&jx(Ph),bq(Pc,ql),Ph}}}function cZ(Ae,vt=qx,fn,qi,ic,Pc,ql){if(Ae.length>0&&Ae.charCodeAt(0)===35&&(Ae=Ae.slice(1)),Pc.length>0&&Pc.charCodeAt(0)===35&&(Pc=Pc.slice(1)),fn){let yA=K3(ic,Pc,Ae,ql);if(vt(yA,ic))return ic?dO(yA):qi?jx(yA):Pe.add(yA),yA}Ae.charCodeAt(Ae.length-1)!==95&&(Ae+="_");let Vc=1;for(;;){let yA=K3(ic,Pc,Ae+Vc,ql);if(vt(yA,ic))return ic?dO(yA):qi?jx(yA):Pe.add(yA),yA;Vc++}}function xse(Ae){return cZ(Ae,_q,!0,!1,!1,"","")}function R5(Ae){let vt=_9(Ae.name);return yq(vt,Gs(Ae,HI))?vt:cZ(vt,qx,!1,!1,!1,"","")}function gK(Ae){let vt=UY(Ae),fn=Lg(vt)?Nw(vt.text):"module";return cZ(fn,qx,!1,!1,!1,"","")}function Oh(){return cZ("default",qx,!1,!1,!1,"","")}function XC(){return cZ("class",qx,!1,!1,!1,"","")}function Eq(Ae,vt,fn,qi){return Ir(Ae.name)?uK(Ae.name,vt):T5(0,!1,vt,fn,qi)}function Qb(Ae,vt,fn,qi,ic){switch(Ae.kind){case 80:case 81:return cZ(_9(Ae),qx,!!(fn&16),!!(fn&8),vt,qi,ic);case 268:case 267:return pe.assert(!qi&&!ic&&!vt),R5(Ae);case 273:case 279:return pe.assert(!qi&&!ic&&!vt),gK(Ae);case 263:case 264:{pe.assert(!qi&&!ic&&!vt);let Pc=Ae.name;return Pc&&!Gp(Pc)?Qb(Pc,!1,fn,qi,ic):Oh()}case 278:return pe.assert(!qi&&!ic&&!vt),Oh();case 232:return pe.assert(!qi&&!ic&&!vt),XC();case 175:case 178:case 179:return Eq(Ae,vt,qi,ic);case 168:return T5(0,!0,vt,qi,ic);default:return T5(0,!1,vt,qi,ic)}}function Rv(Ae){let vt=Ae.emitNode.autoGenerate,fn=Lie(vt.prefix,w5),qi=Lie(vt.suffix);switch(vt.flags&7){case 1:return T5(0,!!(vt.flags&8),p(Ae),fn,qi);case 2:return pe.assertNode(Ae,Ir),T5(268435456,!!(vt.flags&8),!1,fn,qi);case 3:return cZ(Vo(Ae),vt.flags&32?_q:qx,!!(vt.flags&16),!!(vt.flags&8),p(Ae),fn,qi)}return pe.fail(`Unsupported GeneratedIdentifierKind: ${pe.formatEnum(vt.flags&7,cd,!0)}.`)}function PQ(Ae,vt){let fn=Dn(2,Ae,vt),qi=ot,ic=ir,Pc=qt;fR(vt),fn(Ae,vt),pO(vt,qi,ic,Pc)}function fR(Ae){let vt=rA(Ae),fn=ZB(Ae);y9(Ae,vt,fn.pos,fn.end),vt&4096&&(jn=!0)}function pO(Ae,vt,fn,qi){let ic=rA(Ae),Pc=ZB(Ae);ic&4096&&(jn=!1),Sq(Ae,ic,Pc.pos,Pc.end,vt,fn,qi);let ql=l9e(Ae);ql&&Sq(Ae,ic,ql.pos,ql.end,vt,fn,qi)}function y9(Ae,vt,fn,qi){An(),Cn=!1;let ic=fn<0||(vt&1024)!==0||Ae.kind===12,Pc=qi<0||(vt&2048)!==0||Ae.kind===12;(fn>0||qi>0)&&fn!==qi&&(ic||RE(fn,Ae.kind!==354),(!ic||fn>=0&&vt&1024)&&(ot=fn),(!Pc||qi>=0&&vt&2048)&&(ir=qi,Ae.kind===262&&(qt=qi))),F(W3(Ae),Wpe),si()}function Sq(Ae,vt,fn,qi,ic,Pc,ql){An();let Vc=qi<0||(vt&2048)!==0||Ae.kind===12;F(NU(Ae),NI),(fn>0||qi>0)&&fn!==qi&&(ot=ic,ir=Pc,qt=ql,!Vc&&Ae.kind!==354&&Bq(qi)),si()}function Wpe(Ae){(Ae.hasLeadingNewline||Ae.kind===2)&&Wt.writeLine(),Gse(Ae),Ae.hasTrailingNewLine||Ae.kind===2?Wt.writeLine():Wt.writeSpace(" ")}function NI(Ae){Wt.isAtStartOfLine()||Wt.writeSpace(" "),Gse(Ae),Ae.hasTrailingNewLine&&Wt.writeLine()}function Gse(Ae){let vt=AK(Ae),fn=Ae.kind===3?lA(vt):void 0;fU(vt,fn,Wt,0,vt.length,ge)}function AK(Ae){return Ae.kind===3?`/*${Ae.text}*/`:`//${Ae.text}`}function MQ(Ae,vt,fn){An();let{pos:qi,end:ic}=vt,Pc=rA(Ae),ql=qi<0||(Pc&1024)!==0,Vc=jn||ic<0||(Pc&2048)!==0;ql||R1(vt),si(),Pc&4096&&!jn?(jn=!0,fn(Ae),jn=!1):fn(Ae),An(),Vc||(RE(vt.end,!0),Cn&&!Wt.isAtStartOfLine()&&Wt.writeLine()),si()}function vq(Ae,vt){return Ae=xd(Ae),Ae.parent&&Ae.parent===xd(vt).parent}function L0(Ae,vt){if(vt.pos-1&&qi.indexOf(vt)===ic+1}function RE(Ae,vt){Cn=!1,vt?Ae===0&&Ee?.isDeclarationFile?Tq(Ae,N5):Tq(Ae,pK):Ae===0&&Tq(Ae,dK)}function dK(Ae,vt,fn,qi,ic){hK(Ae,vt)&&pK(Ae,vt,fn,qi,ic)}function N5(Ae,vt,fn,qi,ic){hK(Ae,vt)||pK(Ae,vt,fn,qi,ic)}function NE(Ae,vt){return s.onlyPrintJsDocStyle?iet(Ae,vt)||v7(Ae,vt):!0}function pK(Ae,vt,fn,qi,ic){!Ee||!NE(Ee.text,Ae)||(Cn||(Ibe(Rg(),Wt,ic,Ae),Cn=!0),nC(Ae),fU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),qi?Wt.writeLine():fn===3&&Wt.writeSpace(" "))}function $x(Ae){jn||Ae===-1||RE(Ae,!0)}function Bq(Ae){IK(Ae,fK)}function fK(Ae,vt,fn,qi){!Ee||!NE(Ee.text,Ae)||(Wt.isAtStartOfLine()||Wt.writeSpace(" "),nC(Ae),fU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),qi&&Wt.writeLine())}function zw(Ae,vt,fn){jn||(An(),IK(Ae,vt?fK:fn?wq:Fse),si())}function wq(Ae,vt,fn){Ee&&(nC(Ae),fU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),fn===2&&Wt.writeLine())}function Fse(Ae,vt,fn,qi){Ee&&(nC(Ae),fU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),qi?Wt.writeLine():Wt.writeSpace(" "))}function Tq(Ae,vt){Ee&&(ot===-1||Ae!==ot)&&(Rq(Ae)?b9(vt):WD(Ee.text,Ae,vt,Ae))}function IK(Ae,vt){Ee&&(ir===-1||Ae!==ir&&Ae!==qt)&&CF(Ee.text,Ae,vt)}function Rq(Ae){return Tr!==void 0&&Ei(Tr).nodePos===Ae}function b9(Ae){if(!Ee)return;let vt=Ei(Tr).detachedCommentEndPos;Tr.length-1?Tr.pop():Tr=void 0,WD(Ee.text,vt,Ae,vt)}function R1(Ae){let vt=Ee&&rLe(Ee.text,Rg(),Wt,MN,Ae,ge,jn);vt&&(Tr?Tr.push(vt):Tr=[vt])}function MN(Ae,vt,fn,qi,ic,Pc){!Ee||!NE(Ee.text,qi)||(nC(qi),fU(Ae,vt,fn,qi,ic,Pc),nC(ic))}function hK(Ae,vt){return!!Ee&&tne(Ee.text,Ae,vt)}function mK(Ae,vt){let fn=Dn(3,Ae,vt);qA(vt),fn(Ae,vt),Uo(vt)}function qA(Ae){let vt=rA(Ae),fn=zT(Ae),qi=fn.source||ur;Ae.kind!==354&&!(vt&32)&&fn.pos>=0&&D5(fn.source||ur,bS(qi,fn.pos)),vt&128&&(kt=!0)}function Uo(Ae){let vt=rA(Ae),fn=zT(Ae);vt&128&&(kt=!1),Ae.kind!==354&&!(vt&64)&&fn.end>=0&&D5(fn.source||ur,fn.end)}function bS(Ae,vt){return Ae.skipTrivia?Ae.skipTrivia(vt):Yu(Ae.text,vt)}function nC(Ae){if(kt||kB(Ae)||_K(ur))return;let{line:vt,character:fn}=Ra(ur,Ae);tr.addMapping(Wt.getLine(),Wt.getColumn(),Gr,vt,fn,void 0)}function D5(Ae,vt){if(Ae!==ur){let fn=ur,qi=Gr;HQ(Ae),nC(vt),k5(fn,qi)}else nC(vt)}function CK(Ae,vt,fn,qi,ic){if(kt||Ae&&lAe(Ae))return ic(vt,fn,qi);let Pc=Ae&&Ae.emitNode,ql=Pc&&Pc.flags||0,Vc=Pc&&Pc.tokenSourceMapRanges&&Pc.tokenSourceMapRanges[vt],yA=Vc&&Vc.source||ur;return qi=bS(yA,Vc?Vc.pos:qi),!(ql&256)&&qi>=0&&D5(yA,qi),qi=ic(vt,fn,qi),Vc&&(qi=Vc.end),!(ql&512)&&qi>=0&&D5(yA,qi),qi}function HQ(Ae){if(!kt){if(ur=Ae,Ae===dt){Gr=pr;return}_K(Ae)||(Gr=tr.addSource(Ae.fileName),s.inlineSources&&tr.setSourceContent(Gr,Ae.text),dt=Ae,pr=Gr)}}function k5(Ae,vt){ur=Ae,Gr=vt}function _K(Ae){return cA(Ae.fileName,".json")}}function PBs(){let s=[];return s[1024]=["{","}"],s[2048]=["(",")"],s[4096]=["<",">"],s[8192]=["[","]"],s}function MBs(s){return Arn[s&15360][0]}function HBs(s){return Arn[s&15360][1]}function YBs(s,c,g,d){c(s)}function QBs(s,c,g,d){c(s,g.select(d))}function XBs(s,c,g,d){c(s,g)}function JBs(s,c){return s.length===1?YBs:typeof c=="object"?QBs:XBs}function CVe(s,c,g){if(!s.getDirectories||!s.readDirectory)return;let d=new Map,h=bd(g);return{useCaseSensitiveFileNames:g,fileExists:re,readFile:(Ye,Tt)=>s.readFile(Ye,Tt),directoryExists:s.directoryExists&&ge,getDirectories:_e,readDirectory:Ee,createDirectory:s.createDirectory&&Ie,writeFile:s.writeFile&&ee,addOrDeleteFileOrDirectory:Ze,addOrDeleteFile:Pe,clearCache:et,realpath:s.realpath&&Ne};function _(Ye){return Pu(Ye,c,h)}function S(Ye){return d.get(Cp(Ye))}function R(Ye){let Tt=S(Mo(Ye));return Tt&&(Tt.sortedAndCanonicalizedFiles||(Tt.sortedAndCanonicalizedFiles=Tt.files.map(h).sort(),Tt.sortedAndCanonicalizedDirectories=Tt.directories.map(h).sort()),Tt)}function T(Ye){return dp(su(Ye))}function O(Ye,Tt){var at;if(!s.realpath||Cp(_(s.realpath(Ye)))===Tt){let Qe={files:lt(s.readDirectory(Ye,void 0,void 0,["*.*"]),T)||[],directories:s.getDirectories(Ye)||[]};return d.set(Cp(Tt),Qe),Qe}if((at=s.directoryExists)!=null&&at.call(s,Ye))return d.set(Tt,!1),!1}function V(Ye,Tt){Tt=Cp(Tt);let at=S(Tt);if(at)return at;try{return O(Ye,Tt)}catch{pe.assert(!d.has(Cp(Tt)));return}}function M(Ye,Tt){return Oc(Ye,Tt,Zl,Ca)>=0}function ee(Ye,Tt,at){let Qe=_(Ye),Ct=R(Qe);return Ct&&Ke(Ct,T(Ye),!0),s.writeFile(Ye,Tt,at)}function re(Ye){let Tt=_(Ye),at=R(Tt);return at&&M(at.sortedAndCanonicalizedFiles,h(T(Ye)))||s.fileExists(Ye)}function ge(Ye){let Tt=_(Ye);return d.has(Cp(Tt))||s.directoryExists(Ye)}function Ie(Ye){let Tt=_(Ye),at=R(Tt);if(at){let Qe=T(Ye),Ct=h(Qe),mt=at.sortedAndCanonicalizedDirectories;Gc(mt,Ct,Ca)&&at.directories.push(Qe)}s.createDirectory(Ye)}function _e(Ye){let Tt=_(Ye),at=V(Ye,Tt);return at?at.directories.slice():s.getDirectories(Ye)}function Ee(Ye,Tt,at,Qe,Ct){let mt=_(Ye),yt=V(Ye,mt),Rt;if(yt!==void 0)return Xbe(Ye,Tt,at,Qe,g,c,Ct,Lt,Ne);return s.readDirectory(Ye,Tt,at,Qe,Ct);function Lt(Wt){let _r=_(Wt);if(_r===mt)return yt||je(Wt,_r);let Gt=V(Wt,_r);return Gt!==void 0?Gt||je(Wt,_r):Kbe}function je(Wt,_r){if(Rt&&_r===mt)return Rt;let Gt={files:lt(s.readDirectory(Wt,void 0,void 0,["*.*"]),T)||E,directories:s.getDirectories(Wt)||E};return _r===mt&&(Rt=Gt),Gt}}function Ne(Ye){return s.realpath?s.realpath(Ye):Ye}function Te(Ye){hE(Mo(Ye),Tt=>d.delete(Cp(Tt))?!0:void 0)}function Ze(Ye,Tt){if(S(Tt)!==void 0){et();return}let Qe=R(Tt);if(!Qe){Te(Tt);return}if(!s.directoryExists){et();return}let Ct=T(Ye),mt={fileExists:s.fileExists(Ye),directoryExists:s.directoryExists(Ye)};return mt.directoryExists||M(Qe.sortedAndCanonicalizedDirectories,h(Ct))?et():Ke(Qe,Ct,mt.fileExists),mt}function Pe(Ye,Tt,at){if(at===1)return;let Qe=R(Tt);Qe?Ke(Qe,T(Ye),at===0):Te(Tt)}function Ke(Ye,Tt,at){let Qe=Ye.sortedAndCanonicalizedFiles,Ct=h(Tt);if(at)Gc(Qe,Ct,Ca)&&Ye.files.push(Tt);else{let mt=Oc(Qe,Ct,Zl,Ca);if(mt>=0){Qe.splice(mt,1);let yt=Ye.files.findIndex(Rt=>h(Rt)===Ct);Ye.files.splice(yt,1)}}}function et(){d.clear()}}var Y3t=(s=>(s[s.Update=0]="Update",s[s.RootNamesAndUpdate=1]="RootNamesAndUpdate",s[s.Full=2]="Full",s[s.Resolutions=3]="Resolutions",s))(Y3t||{});function _Ve(s,c,g,d,h){var _;let S=Ru(((_=c?.configFile)==null?void 0:_.extendedSourceFiles)||E,h);g.forEach((R,T)=>{S.has(T)||(R.projects.delete(s),R.close())}),S.forEach((R,T)=>{let O=g.get(T);O?O.projects.add(s):g.set(T,{projects:new Set([s]),watcher:d(R,T),close:()=>{let V=g.get(T);!V||V.projects.size!==0||(V.watcher.close(),g.delete(T))}})})}function Stt(s,c){c.forEach(g=>{g.projects.delete(s)&&g.close()})}function yVe(s,c,g){s.delete(c)&&s.forEach(({extendedResult:d},h)=>{var _;(_=d.extendedSourceFiles)!=null&&_.some(S=>g(S)===c)&&yVe(s,h,g)})}function vtt(s,c,g){sz(c,s.getMissingFilePaths(),{createNewValue:g,onDeleteValue:hv})}function g1e(s,c,g){c?sz(s,new Map(Object.entries(c)),{createNewValue:d,onDeleteValue:Ev,onExistingValue:h}):Ly(s,Ev);function d(_,S){return{watcher:g(_,S),flags:S}}function h(_,S,R){_.flags!==S&&(_.watcher.close(),s.set(R,d(R,S)))}}function A1e({watchedDirPath:s,fileOrDirectory:c,fileOrDirectoryPath:g,configFileName:d,options:h,program:_,extraFileExtensions:S,currentDirectory:R,useCaseSensitiveFileNames:T,writeLog:O,toPath:V,getScriptKind:M}){let ee=GVe(g);if(!ee)return O(`Project: ${d} Detected ignored path: ${c}`),!0;if(g=ee,g===s)return!1;if(v0(g)&&!(Ube(c,h,S)||Ee()))return O(`Project: ${d} Detected file add/remove of non supported extension: ${c}`),!0;if(gPt(c,h.configFile.configFileSpecs,Xc(Mo(d),R),T,R))return O(`Project: ${d} Detected excluded file: ${c}`),!0;if(!_||h.outFile||h.outDir)return!1;if(PC(g)){if(h.declarationDir)return!1}else if(!Iu(g,EU))return!1;let re=a0(g),ge=Ki(_)?void 0:trt(_)?_.getProgramOrUndefined():_,Ie=!ge&&!Ki(_)?_:void 0;if(_e(re+".ts")||_e(re+".tsx"))return O(`Project: ${d} Detected output file: ${c}`),!0;return!1;function _e(Ne){return ge?!!ge.getSourceFileByPath(Ne):Ie?Ie.state.fileInfos.has(Ne):!!de(_,Te=>V(Te)===Ne)}function Ee(){if(!M)return!1;switch(M(c)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return GF(h);case 6:return VW(h);case 0:return!1}}}function Q3t(s,c){return s?s.isEmittedFile(c):!1}var X3t=(s=>(s[s.None=0]="None",s[s.TriggerOnly=1]="TriggerOnly",s[s.Verbose=2]="Verbose",s))(X3t||{});function Btt(s,c,g,d){FC(c===2?g:Dc);let h={watchFile:(Ie,_e,Ee,Ne)=>s.watchFile(Ie,_e,Ee,Ne),watchDirectory:(Ie,_e,Ee,Ne)=>s.watchDirectory(Ie,_e,(Ee&1)!==0,Ne)},_=c!==0?{watchFile:re("watchFile"),watchDirectory:re("watchDirectory")}:void 0,S=c===2?{watchFile:M,watchDirectory:ee}:_||h,R=c===2?V:tpe;return{watchFile:T("watchFile"),watchDirectory:T("watchDirectory")};function T(Ie){return(_e,Ee,Ne,Te,Ze,Pe)=>{var Ke;return U9e(_e,Ie==="watchFile"?Te?.excludeFiles:Te?.excludeDirectories,O(),((Ke=s.getCurrentDirectory)==null?void 0:Ke.call(s))||"")?R(_e,Ne,Te,Ze,Pe):S[Ie].call(void 0,_e,Ee,Ne,Te,Ze,Pe)}}function O(){return typeof s.useCaseSensitiveFileNames=="boolean"?s.useCaseSensitiveFileNames:s.useCaseSensitiveFileNames()}function V(Ie,_e,Ee,Ne,Te){return g(`ExcludeWatcher:: Added:: ${ge(Ie,_e,Ee,Ne,Te,d)}`),{close:()=>g(`ExcludeWatcher:: Close:: ${ge(Ie,_e,Ee,Ne,Te,d)}`)}}function M(Ie,_e,Ee,Ne,Te,Ze){g(`FileWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`);let Pe=_.watchFile(Ie,_e,Ee,Ne,Te,Ze);return{close:()=>{g(`FileWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`),Pe.close()}}}function ee(Ie,_e,Ee,Ne,Te,Ze){let Pe=`DirectoryWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(Pe);let Ke=Zg(),et=_.watchDirectory(Ie,_e,Ee,Ne,Te,Ze),Ye=Zg()-Ke;return g(`Elapsed:: ${Ye}ms ${Pe}`),{close:()=>{let Tt=`DirectoryWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(Tt);let at=Zg();et.close();let Qe=Zg()-at;g(`Elapsed:: ${Qe}ms ${Tt}`)}}}function re(Ie){return(_e,Ee,Ne,Te,Ze,Pe)=>h[Ie].call(void 0,_e,(...Ke)=>{let et=`${Ie==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${Ke[0]} ${Ke[1]!==void 0?Ke[1]:""}:: ${ge(_e,Ne,Te,Ze,Pe,d)}`;g(et);let Ye=Zg();Ee.call(void 0,...Ke);let Tt=Zg()-Ye;g(`Elapsed:: ${Tt}ms ${et}`)},Ne,Te,Ze,Pe)}function ge(Ie,_e,Ee,Ne,Te,Ze){return`WatchInfo: ${Ie} ${_e} ${JSON.stringify(Ee)} ${Ze?Ze(Ne,Te):Te===void 0?Ne:`${Ne} ${Te}`}`}}function d1e(s){let c=s?.fallbackPolling;return{watchFile:c!==void 0?c:1}}function Ev(s){s.watcher.close()}function wtt(s,c,g="tsconfig.json"){return hE(s,d=>{let h=Ro(d,g);return c(h)?h:void 0})}function Ttt(s,c){let g=Mo(c),d=Up(s)?s:Ro(g,s);return su(d)}function J3t(s,c,g){let d;return F(s,_=>{let S=hB(_,c);if(S.pop(),!d){d=S;return}let R=Math.min(d.length,S.length);for(let T=0;T{let _;try{Mc("beforeIORead"),_=s(g),Mc("afterIORead"),Pf("I/O Read","beforeIORead","afterIORead")}catch(S){h&&h(S.message),_=""}return _!==void 0?Wz(g,_,d,c):void 0}}function Ntt(s,c,g){return(d,h,_,S)=>{try{Mc("beforeIOWrite"),dbe(d,h,_,s,c,g),Mc("afterIOWrite"),Pf("I/O Write","beforeIOWrite","afterIOWrite")}catch(R){S&&S(R.message)}}}function bVe(s,c,g=Ed){let d=new Map,h=bd(g.useCaseSensitiveFileNames);function _(V){return d.has(V)?!0:(O.directoryExists||g.directoryExists)(V)?(d.set(V,!0),!0):!1}function S(){return Mo(su(g.getExecutingFilePath()))}let R=fN(s),T=g.realpath&&(V=>g.realpath(V)),O={getSourceFile:Rtt(V=>O.readFile(V),c),getDefaultLibLocation:S,getDefaultLibFileName:V=>Ro(S(),Hs(V)),writeFile:Ntt((V,M,ee)=>g.writeFile(V,M,ee),V=>(O.createDirectory||g.createDirectory)(V),V=>_(V)),getCurrentDirectory:LA(()=>g.getCurrentDirectory()),useCaseSensitiveFileNames:()=>g.useCaseSensitiveFileNames,getCanonicalFileName:h,getNewLine:()=>R,fileExists:V=>g.fileExists(V),readFile:V=>g.readFile(V),trace:V=>g.write(V+R),directoryExists:V=>g.directoryExists(V),getEnvironmentVariable:V=>g.getEnvironmentVariable?g.getEnvironmentVariable(V):"",getDirectories:V=>g.getDirectories(V),realpath:T,readDirectory:(V,M,ee,re,ge)=>g.readDirectory(V,M,ee,re,ge),createDirectory:V=>g.createDirectory(V),createHash:$i(g,g.createHash)};return O}function zde(s,c,g){let d=s.readFile,h=s.fileExists,_=s.directoryExists,S=s.createDirectory,R=s.writeFile,T=new Map,O=new Map,V=new Map,M=new Map,ee=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:re(_e,Ie)},re=(Ie,_e)=>{let Ee=d.call(s,_e);return T.set(Ie,Ee!==void 0?Ee:!1),Ee};s.readFile=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:!cA(Ie,".json")&&!V3t(Ie)?d.call(s,Ie):re(_e,Ie)};let ge=g?(Ie,_e,Ee,Ne)=>{let Te=c(Ie),Ze=typeof _e=="object"?_e.impliedNodeFormat:void 0,Pe=M.get(Ze),Ke=Pe?.get(Te);if(Ke)return Ke;let et=g(Ie,_e,Ee,Ne);return et&&(PC(Ie)||cA(Ie,".json"))&&M.set(Ze,(Pe||new Map).set(Te,et)),et}:void 0;return s.fileExists=Ie=>{let _e=c(Ie),Ee=O.get(_e);if(Ee!==void 0)return Ee;let Ne=h.call(s,Ie);return O.set(_e,!!Ne),Ne},R&&(s.writeFile=(Ie,_e,...Ee)=>{let Ne=c(Ie);O.delete(Ne);let Te=T.get(Ne);Te!==void 0&&Te!==_e?(T.delete(Ne),M.forEach(Ze=>Ze.delete(Ne))):ge&&M.forEach(Ze=>{let Pe=Ze.get(Ne);Pe&&Pe.text!==_e&&Ze.delete(Ne)}),R.call(s,Ie,_e,...Ee)}),_&&(s.directoryExists=Ie=>{let _e=c(Ie),Ee=V.get(_e);if(Ee!==void 0)return Ee;let Ne=_.call(s,Ie);return V.set(_e,!!Ne),Ne},S&&(s.createDirectory=Ie=>{let _e=c(Ie);V.delete(_e),S.call(s,Ie)})),{originalReadFile:d,originalFileExists:h,originalDirectoryExists:_,originalCreateDirectory:S,originalWriteFile:R,getSourceFileWithCache:ge,readFileWithCache:ee}}function _rn(s,c,g){let d;return d=Pr(d,s.getConfigFileParsingDiagnostics()),d=Pr(d,s.getOptionsDiagnostics(g)),d=Pr(d,s.getSyntacticDiagnostics(c,g)),d=Pr(d,s.getGlobalDiagnostics(g)),d=Pr(d,s.getSemanticDiagnostics(c,g)),Wy(s.getCompilerOptions())&&(d=Pr(d,s.getDeclarationDiagnostics(c,g))),ui(d||E)}function yrn(s,c){let g="";for(let d of s)g+=Dtt(d,c);return g}function Dtt(s,c){let g=`${bb(s)} TS${s.code}: ${kN(s.messageText,c.getNewLine())}${c.getNewLine()}`;if(s.file){let{line:d,character:h}=Ra(s.file,s.start),_=s.file.fileName;return`${s2(_,c.getCurrentDirectory(),R=>c.getCanonicalFileName(R))}(${d+1},${h+1}): `+g}return g}var K3t=(s=>(s.Grey="\x1B[90m",s.Red="\x1B[91m",s.Yellow="\x1B[93m",s.Blue="\x1B[94m",s.Cyan="\x1B[96m",s))(K3t||{}),j3t="\x1B[7m",z3t=" ",brn="\x1B[0m",Ern="...",UBs=" ",Srn=" ";function vrn(s){switch(s){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return pe.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function EQ(s,c){return c+s+brn}function Brn(s,c,g,d,h,_){let{line:S,character:R}=Ra(s,c),{line:T,character:O}=Ra(s,c+g),V=Ra(s,s.text.length).line,M=T-S>=4,ee=(T+1+"").length;M&&(ee=Math.max(Ern.length,ee));let re="";for(let ge=S;ge<=T;ge++){re+=_.getNewLine(),M&&S+1g.getCanonicalFileName(T)):s.fileName,R="";return R+=d(S,"\x1B[96m"),R+=":",R+=d(`${h+1}`,"\x1B[93m"),R+=":",R+=d(`${_+1}`,"\x1B[93m"),R}function q3t(s,c){let g="";for(let d of s){if(d.file){let{file:h,start:_}=d;g+=ktt(h,_,c),g+=" - "}if(g+=EQ(bb(d),vrn(d.category)),g+=EQ(` TS${d.code}: `,"\x1B[90m"),g+=kN(d.messageText,c.getNewLine()),d.file&&d.code!==Z.File_appears_to_be_binary.code&&(g+=c.getNewLine(),g+=Brn(d.file,d.start,d.length,"",vrn(d.category),c)),d.relatedInformation){g+=c.getNewLine();for(let{file:h,start:_,length:S,messageText:R}of d.relatedInformation)h&&(g+=c.getNewLine(),g+=UBs+ktt(h,_,c),g+=Brn(h,_,S,Srn,"\x1B[96m",c)),g+=c.getNewLine(),g+=Srn+kN(R,c.getNewLine())}g+=c.getNewLine()}return g}function kN(s,c,g=0){if(Xs(s))return s;if(s===void 0)return"";let d="";if(g){d+=c;for(let h=0;hGtt(c,s,g)};function Ftt(s,c,g,d,h){return{nameAndMode:SVe,resolve:(_,S)=>WU(_,s,g,d,h,c,S)}}function t5t(s){return Xs(s)?s:s.fileName}var Nrn={getName:t5t,getMode:(s,c,g)=>$3t(s,c&&TVe(c,g))};function vVe(s,c,g,d,h){return{nameAndMode:Nrn,resolve:(_,S)=>_Pt(_,s,g,d,c,h,S)}}function p1e(s,c,g,d,h,_,S,R){if(s.length===0)return E;let T=[],O=new Map,V=R(c,g,d,_,S);for(let M of s){let ee=V.nameAndMode.getName(M),re=V.nameAndMode.getMode(M,h,g?.commandLine.options||d),ge=Zde(ee,re),Ie=O.get(ge);Ie||O.set(ge,Ie=V.resolve(ee,re)),T.push(Ie)}return T}var qde="__inferred type names__.ts";function BVe(s,c,g){let d=s.configFilePath?Mo(s.configFilePath):c;return Ro(d,`__lib_node_modules_lookup_${g}__.ts`)}function Ztt(s){let c=s.split("."),g=c[1],d=2;for(;c[d]&&c[d]!=="d";)g+=(d===2?"/":"-")+c[d],d++;return"@typescript/lib-"+g}function r5(s){switch(s?.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function Kie(s){return s.pos!==void 0}function $de(s,c){var g,d,h,_;let S=pe.checkDefined(s.getSourceFileByPath(c.file)),{kind:R,index:T}=c,O,V,M;switch(R){case 3:let ee=h1e(S,T);if(M=(d=(g=s.getResolvedModuleFromModuleSpecifier(ee,S))==null?void 0:g.resolvedModule)==null?void 0:d.packageId,ee.pos===-1)return{file:S,packageId:M,text:ee.text};O=Yu(S.text,ee.pos),V=ee.end;break;case 4:({pos:O,end:V}=S.referencedFiles[T]);break;case 5:({pos:O,end:V}=S.typeReferenceDirectives[T]),M=(_=(h=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S.typeReferenceDirectives[T],S))==null?void 0:h.resolvedTypeReferenceDirective)==null?void 0:_.packageId;break;case 7:({pos:O,end:V}=S.libReferenceDirectives[T]);break;default:return pe.assertNever(R)}return{file:S,pos:O,end:V,packageId:M}}function Ltt(s,c,g,d,h,_,S,R,T,O){if(!s||R?.()||!Sc(s.getRootFileNames(),c))return!1;let V;if(!Sc(s.getProjectReferences(),O,Ie)||s.getSourceFiles().some(re))return!1;let M=s.getMissingFilePaths();if(M&&Fh(M,h))return!1;let ee=s.getCompilerOptions();if(!LAe(ee,g)||s.resolvedLibReferences&&Fh(s.resolvedLibReferences,(Ee,Ne)=>S(Ne)))return!1;if(ee.configFile&&g.configFile)return ee.configFile.text===g.configFile.text;return!0;function re(Ee){return!ge(Ee)||_(Ee.path)}function ge(Ee){return Ee.version===d(Ee.resolvedPath,Ee.fileName)}function Ie(Ee,Ne,Te){return qre(Ee,Ne)&&_e(s.getResolvedProjectReferences()[Te],Ee)}function _e(Ee,Ne){if(Ee){if(k(V,Ee))return!0;let Ze=Jz(Ne),Pe=T(Ze);return!Pe||Ee.commandLine.options.configFile!==Pe.options.configFile||!Sc(Ee.commandLine.fileNames,Pe.fileNames)?!1:((V||(V=[])).push(Ee),!F(Ee.references,(Ke,et)=>!_e(Ke,Ee.commandLine.projectReferences[et])))}let Te=Jz(Ne);return!T(Te)}}function SQ(s){return s.options.configFile?[...s.options.configFile.parseDiagnostics,...s.errors]:s.errors}function f1e(s,c,g,d){let h=wVe(s,c,g,d);return typeof h=="object"?h.impliedNodeFormat:h}function wVe(s,c,g,d){let h=G_(d),_=3<=h&&h<=99||UW(s);return Iu(s,[".d.mts",".mts",".mjs"])?99:Iu(s,[".d.cts",".cts",".cjs"])?1:_&&Iu(s,[".d.ts",".ts",".tsx",".js",".jsx"])?S():void 0;function S(){let R=Lde(c,g,d),T=[];R.failedLookupLocations=T,R.affectingLocations=T;let O=Vde(Mo(s),R);return{impliedNodeFormat:O?.contents.packageJsonContent.type==="module"?99:1,packageJsonLocations:T,packageJsonScope:O}}}var Drn=new Set([Z.Cannot_redeclare_block_scoped_variable_0.code,Z.A_module_cannot_have_multiple_default_exports.code,Z.Another_export_default_is_here.code,Z.The_first_export_default_is_here.code,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,Z.constructor_is_a_reserved_word.code,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,Z.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.code,Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,Z.Invalid_use_of_0_in_strict_mode.code,Z.A_label_is_not_allowed_here.code,Z.with_statements_are_not_allowed_in_strict_mode.code,Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,Z.A_class_declaration_without_the_default_modifier_must_have_a_name.code,Z.A_class_member_cannot_have_the_0_keyword.code,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,Z.A_destructuring_declaration_must_have_an_initializer.code,Z.A_get_accessor_cannot_have_parameters.code,Z.A_rest_element_cannot_contain_a_binding_pattern.code,Z.A_rest_element_cannot_have_a_property_name.code,Z.A_rest_element_cannot_have_an_initializer.code,Z.A_rest_element_must_be_last_in_a_destructuring_pattern.code,Z.A_rest_parameter_cannot_have_an_initializer.code,Z.A_rest_parameter_must_be_last_in_a_parameter_list.code,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,Z.A_return_statement_cannot_be_used_inside_a_class_static_block.code,Z.A_set_accessor_cannot_have_rest_parameter.code,Z.A_set_accessor_must_have_exactly_one_parameter.code,Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_export_declaration_cannot_have_modifiers.code,Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_import_declaration_cannot_have_modifiers.code,Z.An_object_member_cannot_be_declared_optional.code,Z.Argument_of_dynamic_import_cannot_be_spread_element.code,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,Z.Cannot_redeclare_identifier_0_in_catch_clause.code,Z.Catch_clause_variable_cannot_have_an_initializer.code,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,Z.Classes_can_only_extend_a_single_class.code,Z.Classes_may_not_have_a_field_named_constructor.code,Z.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.code,Z.Duplicate_label_0.code,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,Z.for_await_loops_cannot_be_used_inside_a_class_static_block.code,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,Z.Jump_target_cannot_cross_function_boundary.code,Z.Line_terminator_not_permitted_before_arrow.code,Z.Modifiers_cannot_appear_here.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,Z.Private_identifiers_are_not_allowed_outside_class_bodies.code,Z.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.code,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,Z.Trailing_comma_not_allowed.code,Z.Variable_declaration_list_cannot_be_empty.code,Z._0_and_1_operations_cannot_be_mixed_without_parentheses.code,Z._0_expected.code,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,Z._0_list_cannot_be_empty.code,Z._0_modifier_already_seen.code,Z._0_modifier_cannot_appear_on_a_constructor_declaration.code,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,Z._0_modifier_cannot_appear_on_a_parameter.code,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,Z._0_modifier_cannot_be_used_here.code,Z._0_modifier_must_precede_1_modifier.code,Z._0_declarations_can_only_be_declared_inside_a_block.code,Z._0_declarations_must_be_initialized.code,Z.extends_clause_already_seen.code,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,Z.Class_constructor_may_not_be_a_generator.code,Z.Class_constructor_may_not_be_an_accessor.code,Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.Private_field_0_must_be_declared_in_an_enclosing_class.code,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function KBs(s,c){return s?B0(s.getCompilerOptions(),c,det):!1}function jBs(s,c,g,d,h,_){return{rootNames:s,options:c,host:g,oldProgram:d,configFileParsingDiagnostics:h,typeScriptVersion:_}}function I1e(s,c,g,d,h){var _,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze;let Pe=Ki(s)?jBs(s,c,g,d,h):s,{rootNames:Ke,options:et,configFileParsingDiagnostics:Ye,projectReferences:Tt,typeScriptVersion:at,host:Qe}=Pe,{oldProgram:Ct}=Pe;Pe=void 0,s=void 0;for(let br of $Ot)if(Da(et,br.name)&&typeof et[br.name]=="string")throw new Error(`${br.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);let mt=LA(()=>Ln("ignoreDeprecations",Z.Invalid_value_for_ignoreDeprecations)),yt,Rt,Lt,je,Wt,_r,Gt,it,kt,tr=r5t(zl),ur,Gr,dt,pr,ot,ir,qt,Yt,Tr,Cn=typeof et.maxNodeModuleJsDepth=="number"?et.maxNodeModuleJsDepth:0,jn=0,Zi=new Map,Ns=new Map;(_=ki)==null||_.push(ki.Phase.Program,"createProgram",{configFilePath:et.configFilePath,rootDir:et.rootDir},!0),Mc("beforeProgram");let An=Qe||U3t(et),si=NVe(An),ks=et.noLib,Ic=LA(()=>An.getDefaultLibFileName(et)),ou=An.getDefaultLibLocation?An.getDefaultLibLocation():Mo(Ic()),Zn=!1,ya=An.getCurrentDirectory(),Fl=gz(et),ba=Az(et,Fl),Oo=new Map,hc,yr,hn,Pi,co=An.hasInvalidatedResolutions||As;An.resolveModuleNameLiterals?(Pi=An.resolveModuleNameLiterals.bind(An),hn=(S=An.getModuleResolutionCache)==null?void 0:S.call(An)):An.resolveModuleNames?(Pi=(br,sn,ei,is,Qs,Po)=>An.resolveModuleNames(br.map(e5t),sn,Po?.map(e5t),ei,is,Qs).map(Ps=>Ps?Ps.extension!==void 0?{resolvedModule:Ps}:{resolvedModule:{...Ps,extension:fz(Ps.resolvedFileName)}}:Rrn),hn=(R=An.getModuleResolutionCache)==null?void 0:R.call(An)):(hn=Mie(ya,rC,et),Pi=(br,sn,ei,is,Qs)=>p1e(br,sn,ei,is,Qs,An,hn,Ftt));let pa;if(An.resolveTypeReferenceDirectiveReferences)pa=An.resolveTypeReferenceDirectiveReferences.bind(An);else if(An.resolveTypeReferenceDirectives)pa=(br,sn,ei,is,Qs)=>An.resolveTypeReferenceDirectives(br.map(t5t),sn,ei,is,Qs?.impliedNodeFormat).map(Po=>({resolvedTypeReferenceDirective:Po}));else{let br=eVe(ya,rC,void 0,hn?.getPackageJsonInfoCache(),hn?.optionsToRedirectsKey);pa=(sn,ei,is,Qs,Po)=>p1e(sn,ei,is,Qs,Po,An,br,vVe)}let Pa=An.hasInvalidatedLibResolutions||As,$c;if(An.resolveLibrary)$c=An.resolveLibrary.bind(An);else{let br=Mie(ya,rC,et,hn?.getPackageJsonInfoCache());$c=(sn,ei,is)=>tVe(sn,ei,is,An,br)}let Qu=new Map,Rg=new Map,Cs=gl(),Tu,Wr=new Map,Wn=new Map,pt=An.useCaseSensitiveFileNames()?new Map:void 0,on,st,nr,Zr,Kr=!!((T=An.useSourceOfProjectReferenceRedirect)!=null&&T.call(An))&&!et.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:Dn,fileExists:hr,directoryExists:Sn}=zBs({compilerHost:An,getSymlinkCache:CS,useSourceOfProjectReferenceRedirect:Kr,toPath:Mn,getResolvedProjectReferences:dg,getRedirectFromOutput:KI,forEachResolvedProjectReference:fI}),Ni=An.readFile.bind(An);(O=ki)==null||O.push(ki.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!Ct});let Gi=KBs(Ct,et);(V=ki)==null||V.pop();let nn;if((M=ki)==null||M.push(ki.Phase.Program,"tryReuseStructureFromOldProgram",{}),nn=fs(),(ee=ki)==null||ee.pop(),nn!==2){if(yt=[],Rt=[],Tt&&(on||(on=Tt.map(VN)),Ke.length&&on?.forEach((br,sn)=>{if(!br)return;let ei=br.commandLine.options.outFile;if(Kr){if(ei||o0(br.commandLine.options)===0)for(let is of br.commandLine.fileNames)Ob(is,{kind:1,index:sn})}else if(ei)Ob(_N(ei,".d.ts"),{kind:2,index:sn});else if(o0(br.commandLine.options)===0){let is=LA(()=>MU(br.commandLine,!An.useCaseSensitiveFileNames()));for(let Qs of br.commandLine.fileNames)!PC(Qs)&&!cA(Qs,".json")&&Ob(Kde(Qs,br.commandLine,!An.useCaseSensitiveFileNames(),is),{kind:2,index:sn})}})),(re=ki)==null||re.push(ki.Phase.Program,"processRootFiles",{count:Ke.length}),F(Ke,(br,sn)=>Vg(br,!1,!1,{kind:0,index:sn})),(ge=ki)==null||ge.pop(),ur??(ur=Ke.length?q9e(et,An):E),Gr=Pie(),ur.length){(Ie=ki)==null||Ie.push(ki.Phase.Program,"processTypeReferences",{count:ur.length});let br=et.configFilePath?Mo(et.configFilePath):ya,sn=Ro(br,qde),ei=Vn(ur,sn);for(let is=0;is{Vg(Qx(sn),!0,!1,{kind:6,index:ei})})}Lt=bo(yt,tn).concat(Rt),yt=void 0,Rt=void 0,Gt=void 0}if(Ct&&An.onReleaseOldSourceFile){let br=Ct.getSourceFiles();for(let sn of br){let ei=Jg(sn.resolvedPath);(Gi||!ei||ei.impliedNodeFormat!==sn.impliedNodeFormat||sn.resolvedPath===sn.path&&ei.resolvedPath!==sn.path)&&An.onReleaseOldSourceFile(sn,Ct.getCompilerOptions(),!!Jg(sn.path),ei)}An.getParsedCommandLine||Ct.forEachResolvedProjectReference(sn=>{f_(sn.sourceFile.path)||An.onReleaseOldSourceFile(sn.sourceFile,Ct.getCompilerOptions(),!1,void 0)})}Ct&&An.onReleaseParsedCommandLine&&vz(Ct.getProjectReferences(),Ct.getResolvedProjectReferences(),(br,sn,ei)=>{let is=sn?.commandLine.projectReferences[ei]||Ct.getProjectReferences()[ei],Qs=Jz(is);st?.has(Mn(Qs))||An.onReleaseParsedCommandLine(Qs,br,Ct.getCompilerOptions())}),Ct=void 0,pr=void 0,ir=void 0,Yt=void 0;let En={getRootFileNames:()=>Ke,getSourceFile:qp,getSourceFileByPath:Jg,getSourceFiles:()=>Lt,getMissingFilePaths:()=>Wn,getModuleResolutionCache:()=>hn,getFilesByNameMap:()=>Wr,getCompilerOptions:()=>et,getSyntacticDiagnostics:hS,getOptionsDiagnostics:Ss,getGlobalDiagnostics:el,getSemanticDiagnostics:Au,getCachedSemanticDiagnostics:Eg,getSuggestionDiagnostics:mr,getDeclarationDiagnostics:oi,getBindAndCheckDiagnostics:zA,getProgramDiagnostics:NA,getTypeChecker:Ip,getClassifiableNames:es,getCommonSourceDirectory:ci,emit:kl,getCurrentDirectory:()=>ya,getNodeCount:()=>Ip().getNodeCount(),getIdentifierCount:()=>Ip().getIdentifierCount(),getSymbolCount:()=>Ip().getSymbolCount(),getTypeCount:()=>Ip().getTypeCount(),getInstantiationCount:()=>Ip().getInstantiationCount(),getRelationCacheSizes:()=>Ip().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>tr.getFileProcessingDiagnostics(),getAutomaticTypeDirectiveNames:()=>ur,getAutomaticTypeDirectiveResolutions:()=>Gr,isSourceFileFromExternalLibrary:RI,isSourceFileDefaultLibrary:pI,getModeForUsageLocation:Bv,getEmitSyntaxForUsageLocation:qF,getModeForResolutionAtIndex:A9,getSourceFileFromReference:v1,getLibFileFromReference:lh,sourceFileToPackageName:Rg,redirectTargetsMap:Cs,usesUriStyleNodeCoreModules:Tu,resolvedModules:ot,resolvedTypeReferenceDirectiveNames:qt,resolvedLibReferences:dt,getProgramDiagnosticsContainer:()=>tr,getResolvedModule:ds,getResolvedModuleFromModuleSpecifier:Ht,getResolvedTypeReferenceDirective:cn,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:wt,forEachResolvedModule:xe,forEachResolvedTypeReferenceDirective:fr,getCurrentPackagesMap:()=>Tr,typesPackageExists:Hn,packageBundlesTypes:Mt,isEmittedFile:YC,getConfigFileParsingDiagnostics:Fd,getProjectReferences:yu,getResolvedProjectReferences:dg,getRedirectFromSourceFile:lf,getResolvedProjectReferenceByPath:f_,forEachResolvedProjectReference:fI,isSourceOfProjectReferenceRedirect:b2,getRedirectFromOutput:KI,getCompilerOptionsForFile:dy,getDefaultResolutionModeForFile:Yy,getEmitModuleFormatOfFile:AR,getImpliedNodeFormatForEmit:uk,shouldTransformImportCall:QB,emitBuildInfo:Ag,fileExists:hr,readFile:Ni,directoryExists:Sn,getSymlinkCache:CS,realpath:(Te=An.realpath)==null?void 0:Te.bind(An),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getCanonicalFileName:rC,getFileIncludeReasons:()=>tr.getFileReasons(),structureIsReused:nn,writeFile:mc,getGlobalTypingsCacheLocation:$i(An,An.getGlobalTypingsCacheLocation)};return Dn(),Zn||ct(),Mc("afterProgram"),Pf("Program","beforeProgram","afterProgram"),(Ze=ki)==null||Ze.pop(),En;function ds(br,sn,ei){var is;return(is=ot?.get(br.path))==null?void 0:is.get(sn,ei)}function Ht(br,sn){return sn??(sn=ms(br)),pe.assertIsDefined(sn,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),ds(sn,br.text,Bv(sn,br))}function cn(br,sn,ei){var is;return(is=qt?.get(br.path))==null?void 0:is.get(sn,ei)}function wt(br,sn){return cn(sn,br.fileName,rO(br,sn))}function xe(br,sn){Ue(ot,br,sn)}function fr(br,sn){Ue(qt,br,sn)}function Ue(br,sn,ei){var is;ei?(is=br?.get(ei.path))==null||is.forEach((Qs,Po,Ps)=>sn(Qs,Po,Ps,ei.path)):br?.forEach((Qs,Po)=>Qs.forEach((Ps,ao,Yc)=>sn(Ps,ao,Yc,Po)))}function In(){return Tr||(Tr=new Map,xe(({resolvedModule:br})=>{br?.packageId&&Tr.set(br.packageId.name,br.extension===".d.ts"||!!Tr.get(br.packageId.name))}),Tr)}function Hn(br){return In().has(nVe(br))}function Mt(br){return!!In().get(br)}function $r(br){var sn;(sn=br.resolutionDiagnostics)!=null&&sn.length&&tr.addFileProcessingDiagnostic({kind:2,diagnostics:br.resolutionDiagnostics})}function ri(br,sn,ei,is){if(An.resolveModuleNameLiterals||!An.resolveModuleNames)return $r(ei);if(!hn||Xr(sn))return;let Qs=Xc(br.originalFileName,ya),Po=Mo(Qs),Ps=Ys(br),ao=hn.getFromNonRelativeNameCache(sn,is,Po,Ps);ao&&$r(ao)}function oo(br,sn,ei){var is,Qs;let Po=Xc(sn.originalFileName,ya),Ps=Ys(sn);(is=ki)==null||is.push(ki.Phase.Program,"resolveModuleNamesWorker",{containingFileName:Po}),Mc("beforeResolveModule");let ao=Pi(br,Po,Ps,et,sn,ei);return Mc("afterResolveModule"),Pf("ResolveModule","beforeResolveModule","afterResolveModule"),(Qs=ki)==null||Qs.pop(),ao}function Bs(br,sn,ei){var is,Qs;let Po=Xs(sn)?void 0:sn,Ps=Xs(sn)?sn:Xc(sn.originalFileName,ya),ao=Po&&Ys(Po);(is=ki)==null||is.push(ki.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:Ps}),Mc("beforeResolveTypeReference");let Yc=pa(br,Ps,ao,et,Po,ei);return Mc("afterResolveTypeReference"),Pf("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(Qs=ki)==null||Qs.pop(),Yc}function Ys(br){var sn,ei;let is=lf(br.originalFileName);if(is||!PC(br.originalFileName))return is?.resolvedRef;let Qs=(sn=KI(br.path))==null?void 0:sn.resolvedRef;if(Qs)return Qs;if(!An.realpath||!et.preserveSymlinks||!br.originalFileName.includes(Hx))return;let Po=Mn(An.realpath(br.originalFileName));return Po===br.path||(ei=KI(Po))==null?void 0:ei.resolvedRef}function tn(br,sn){return Zt(wn(br),wn(sn))}function wn(br){if(zh(ou,br.fileName,!1)){let sn=dp(br.fileName);if(sn==="lib.d.ts"||sn==="lib.es6.d.ts")return 0;let ei=aa(Gm(sn,"lib."),".d.ts"),is=F9e.indexOf(ei);if(is!==-1)return is+1}return F9e.length+2}function Mn(br){return Pu(br,ya,rC)}function ci(){let br=tr.getCommonSourceDirectory();if(br!==void 0)return br;let sn=Le(Lt,ei=>kW(ei,En));return br=jde(et,()=>Xt(sn,ei=>ei.isDeclarationFile?void 0:ei.fileName),ya,rC,ei=>mS(sn,ei)),tr.setCommonSourceDirectory(br),br}function es(){var br;if(!_r){Ip(),_r=new Set;for(let sn of Lt)(br=sn.classifiableNames)==null||br.forEach(ei=>_r.add(ei))}return _r}function Oi(br,sn){return Ui({entries:br,containingFile:sn,containingSourceFile:sn,redirectedReference:Ys(sn),nameAndModeGetter:SVe,resolutionWorker:oo,getResolutionFromOldProgram:(ei,is)=>Ct?.getResolvedModule(sn,ei,is),getResolved:OL,canReuseResolutionsInFile:()=>sn===Ct?.getSourceFile(sn.fileName)&&!co(sn.path),resolveToOwnAmbientModule:!0})}function Vn(br,sn){let ei=Xs(sn)?void 0:sn;return Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:ei&&Ys(ei),nameAndModeGetter:Nrn,resolutionWorker:Bs,getResolutionFromOldProgram:(is,Qs)=>{var Po;return ei?Ct?.getResolvedTypeReferenceDirective(ei,is,Qs):(Po=Ct?.getAutomaticTypeDirectiveResolutions())==null?void 0:Po.get(is,Qs)},getResolved:b7,canReuseResolutionsInFile:()=>ei?ei===Ct?.getSourceFile(ei.fileName)&&!co(ei.path):!co(Mn(sn))})}function Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:is,nameAndModeGetter:Qs,resolutionWorker:Po,getResolutionFromOldProgram:Ps,getResolved:ao,canReuseResolutionsInFile:Yc,resolveToOwnAmbientModule:ru}){if(!br.length)return E;if(nn===0&&(!ru||!ei.ambientModuleNames.length))return Po(br,sn,void 0);let $a,nu,ll,Gf,Mb=Yc();for(let I_=0;I_ll[nu[JB]]=I_),ll):XB}function gs(){return!vz(Ct.getProjectReferences(),Ct.getResolvedProjectReferences(),(br,sn,ei)=>{let is=(sn?sn.commandLine.projectReferences:Tt)[ei],Qs=VN(is);return br?!Qs||Qs.sourceFile!==br.sourceFile||!Sc(br.commandLine.fileNames,Qs.commandLine.fileNames):Qs!==void 0},(br,sn)=>{let ei=sn?f_(sn.sourceFile.path).commandLine.projectReferences:Tt;return!Sc(br,ei,qre)})}function fs(){var br;if(!Ct)return 0;let sn=Ct.getCompilerOptions();if(HJ(sn,et))return 0;let ei=Ct.getRootFileNames();if(!Sc(ei,Ke)||!gs())return 0;Tt&&(on=Tt.map(VN));let is=[],Qs=[];if(nn=2,Fh(Ct.getMissingFilePaths(),$a=>An.fileExists($a)))return 0;let Po=Ct.getSourceFiles(),Ps;($a=>{$a[$a.Exists=0]="Exists",$a[$a.Modified=1]="Modified"})(Ps||(Ps={}));let ao=new Map;for(let $a of Po){let nu=Yl($a.fileName,hn,An,et),ll=An.getSourceFileByPath?An.getSourceFileByPath($a.fileName,$a.resolvedPath,nu,void 0,Gi):An.getSourceFile($a.fileName,nu,void 0,Gi);if(!ll)return 0;ll.packageJsonLocations=(br=nu.packageJsonLocations)!=null&&br.length?nu.packageJsonLocations:void 0,ll.packageJsonScope=nu.packageJsonScope,pe.assert(!ll.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let Gf;if($a.redirectInfo){if(ll!==$a.redirectInfo.unredirected)return 0;Gf=!1,ll=$a}else if(Ct.redirectTargetsMap.has($a.path)){if(ll!==$a)return 0;Gf=!1}else Gf=ll!==$a;ll.path=$a.path,ll.originalFileName=$a.originalFileName,ll.resolvedPath=$a.resolvedPath,ll.fileName=$a.fileName;let Mb=Ct.sourceFileToPackageName.get($a.path);if(Mb!==void 0){let XB=ao.get(Mb),I_=Gf?1:0;if(XB!==void 0&&I_===1||XB===1)return 0;ao.set(Mb,I_)}Gf?($a.impliedNodeFormat!==ll.impliedNodeFormat?nn=1:Sc($a.libReferenceDirectives,ll.libReferenceDirectives,Ef)?$a.hasNoDefaultLib!==ll.hasNoDefaultLib?nn=1:Sc($a.referencedFiles,ll.referencedFiles,Ef)?(Zp(ll),Sc($a.imports,ll.imports,om)&&Sc($a.moduleAugmentations,ll.moduleAugmentations,om)?($a.flags&12582912)!==(ll.flags&12582912)?nn=1:Sc($a.typeReferenceDirectives,ll.typeReferenceDirectives,Ef)||(nn=1):nn=1):nn=1:nn=1,Qs.push(ll)):co($a.path)&&(nn=1,Qs.push(ll)),is.push(ll)}if(nn!==2)return nn;for(let $a of Qs){let nu=xrn($a),ll=Oi(nu,$a);(ir??(ir=new Map)).set($a.path,ll);let Gf=dy($a);$re(nu,ll,T1=>Ct.getResolvedModule($a,T1.text,EVe($a,T1,Gf)),xge)&&(nn=1);let XB=$a.typeReferenceDirectives,I_=Vn(XB,$a);(Yt??(Yt=new Map)).set($a.path,I_),$re(XB,I_,T1=>Ct.getResolvedTypeReferenceDirective($a,t5t(T1),rO(T1,$a)),Gge)&&(nn=1)}if(nn!==2)return nn;if(kge(sn,et)||Ct.resolvedLibReferences&&Fh(Ct.resolvedLibReferences,($a,nu)=>Xx(nu).actual!==$a.actual))return 1;if(An.hasChangedAutomaticTypeDirectiveNames){if(An.hasChangedAutomaticTypeDirectiveNames())return 1}else if(ur=q9e(et,An),!Sc(Ct.getAutomaticTypeDirectiveNames(),ur))return 1;Wn=Ct.getMissingFilePaths(),pe.assert(is.length===Ct.getSourceFiles().length);for(let $a of is)Wr.set($a.path,$a);Ct.getFilesByNameMap().forEach(($a,nu)=>{if(!$a){Wr.set(nu,$a);return}if($a.path===nu){Ct.isSourceFileFromExternalLibrary($a)&&Ns.set($a.path,!0);return}Wr.set(nu,Wr.get($a.path))});let ru=sn.configFile&&sn.configFile===et.configFile||!sn.configFile&&!et.configFile&&!B0(sn,et,Qw);return tr.reuseStateFromOldProgram(Ct.getProgramDiagnosticsContainer(),ru),Zn=ru,Lt=is,ur=Ct.getAutomaticTypeDirectiveNames(),Gr=Ct.getAutomaticTypeDirectiveResolutions(),Rg=Ct.sourceFileToPackageName,Cs=Ct.redirectTargetsMap,Tu=Ct.usesUriStyleNodeCoreModules,ot=Ct.resolvedModules,qt=Ct.resolvedTypeReferenceDirectiveNames,dt=Ct.resolvedLibReferences,Tr=Ct.getCurrentPackagesMap(),2}function bi(br){return{getCanonicalFileName:rC,getCommonSourceDirectory:En.getCommonSourceDirectory,getCompilerOptions:En.getCompilerOptions,getCurrentDirectory:()=>ya,getSourceFile:En.getSourceFile,getSourceFileByPath:En.getSourceFileByPath,getSourceFiles:En.getSourceFiles,isSourceFileFromExternalLibrary:RI,getRedirectFromSourceFile:lf,isSourceOfProjectReferenceRedirect:b2,getSymlinkCache:CS,writeFile:br||mc,isEmitBlocked:bu,shouldTransformImportCall:QB,getEmitModuleFormatOfFile:AR,getDefaultResolutionModeForFile:Yy,getModeForResolutionAtIndex:A9,readFile:sn=>An.readFile(sn),fileExists:sn=>{let ei=Mn(sn);return Jg(ei)?!0:Wn.has(ei)?!1:An.fileExists(sn)},realpath:$i(An,An.realpath),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getBuildInfo:()=>{var sn;return(sn=En.getBuildInfo)==null?void 0:sn.call(En)},getSourceFileFromReference:(sn,ei)=>En.getSourceFileFromReference(sn,ei),redirectTargetsMap:Cs,getFileIncludeReasons:En.getFileIncludeReasons,createHash:$i(An,An.createHash),getModuleResolutionCache:()=>En.getModuleResolutionCache(),trace:$i(An,An.trace),getGlobalTypingsCacheLocation:En.getGlobalTypingsCacheLocation}}function mc(br,sn,ei,is,Qs,Po){An.writeFile(br,sn,ei,is,Qs,Po)}function Ag(br){var sn,ei;(sn=ki)==null||sn.push(ki.Phase.Emit,"emitBuildInfo",{},!0),Mc("beforeEmit");let is=ytt(P3t,bi(br),void 0,Z3t,!1,!0);return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),(ei=ki)==null||ei.pop(),is}function dg(){return on}function yu(){return Tt}function RI(br){return!!Ns.get(br.path)}function pI(br){if(!br.isDeclarationFile)return!1;if(br.hasNoDefaultLib)return!0;if(et.noLib)return!1;let sn=An.useCaseSensitiveFileNames()?YA:Yp;return et.lib?zt(et.lib,ei=>{let is=dt.get(ei);return!!is&&sn(br.fileName,is.actual)}):sn(br.fileName,Ic())}function Ip(){return Wt||(Wt=UPt(En))}function kl(br,sn,ei,is,Qs,Po,Ps){var ao,Yc;(ao=ki)==null||ao.push(ki.Phase.Emit,"emit",{path:br?.path},!0);let ru=JI(()=>sm(En,br,sn,ei,is,Qs,Po,Ps));return(Yc=ki)==null||Yc.pop(),ru}function bu(br){return Oo.has(Mn(br))}function sm(br,sn,ei,is,Qs,Po,Ps,ao){if(!Ps){let nu=Wtt(br,sn,ei,is);if(nu)return nu}let Yc=Ip(),ru=Yc.getEmitResolver(et.outFile?void 0:sn,is,_tt(Qs,Ps));Mc("beforeEmit");let $a=Yc.runWithCancellationToken(is,()=>ytt(ru,bi(ei),sn,L3t(et,Po,Qs),Qs,!1,Ps,ao));return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),$a}function qp(br){return Jg(Mn(br))}function Jg(br){return Wr.get(br)||void 0}function ch(br,sn,ei){return ui(br?sn(br,ei):jt(En.getSourceFiles(),is=>(ei&&ei.throwIfCancellationRequested(),sn(is,ei))))}function hS(br,sn){return ch(br,tp,sn)}function Au(br,sn,ei){return ch(br,(is,Qs)=>Wh(is,Qs,ei),sn)}function Eg(br){return it?.get(br.path)}function zA(br,sn){return MC(br,sn,void 0)}function NA(br){var sn;if(F3(br,et,En))return E;let ei=tr.getCombinedDiagnostics(En).getDiagnostics(br.fileName);return(sn=br.commentDirectives)!=null&&sn.length?ve(br,br.commentDirectives,ei).diagnostics:ei}function oi(br,sn){return ch(br,Go,sn)}function tp(br){return s0(br)?(br.additionalSyntacticDiagnostics||(br.additionalSyntacticDiagnostics=ni(br)),Nn(br.additionalSyntacticDiagnostics,br.parseDiagnostics)):br.parseDiagnostics}function JI(br){try{return br()}catch(sn){throw sn instanceof Ty&&(Wt=void 0),sn}}function Wh(br,sn,ei){return Nn(RVe(MC(br,sn,ei),et),NA(br))}function MC(br,sn,ei){if(ei)return bf(br,sn,ei);let is=it?.get(br.path);return is||(it??(it=new Map)).set(br.path,is=bf(br,sn)),is}function bf(br,sn,ei){return JI(()=>{if(F3(br,et,En))return E;let is=Ip();pe.assert(!!br.bindDiagnostics);let Qs=br.scriptKind===1||br.scriptKind===2,Po=FY(br,et.checkJs),Ps=Qs&&Iz(br,et),ao=br.bindDiagnostics,Yc=is.getDiagnostics(br,sn,ei);return Po&&(ao=Le(ao,ru=>Drn.has(ru.code)),Yc=Le(Yc,ru=>Drn.has(ru.code))),UI(br,!Po,!!ei,ao,Yc,Ps?br.jsDocDiagnostics:void 0)})}function UI(br,sn,ei,...is){var Qs;let Po=Sr(is);if(!sn||!((Qs=br.commentDirectives)!=null&&Qs.length))return Po;let{diagnostics:Ps,directives:ao}=ve(br,br.commentDirectives,Po);if(ei)return Ps;for(let Yc of ao.getUnusedExpectations())Ps.push(kn(br,Yc.range,Z.Unused_ts_expect_error_directive));return Ps}function ve(br,sn,ei){let is=Wge(br,sn);return{diagnostics:ei.filter(Po=>ln(Po,is)===-1),directives:is}}function mr(br,sn){return JI(()=>Ip().getSuggestionDiagnostics(br,sn))}function ln(br,sn){let{file:ei,start:is}=br;if(!ei)return-1;let Qs=rn(ei),Po=Ci(Qs,is).line-1;for(;Po>=0;){if(sn.markUsed(Po))return Po;let Ps=ei.text.slice(Qs[Po],Qs[Po+1]).trim();if(Ps!==""&&!/^\s*\/\/.*$/.test(Ps))return-1;Po--}return-1}function ni(br){return JI(()=>{let sn=[];return ei(br,br),Vz(br,ei,is),sn;function ei(ao,Yc){switch(Yc.kind){case 170:case 173:case 175:if(Yc.questionToken===ao)return sn.push(Ps(ao,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 174:case 177:case 178:case 179:case 219:case 263:case 220:case 261:if(Yc.type===ao)return sn.push(Ps(ao,Z.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(ao.kind){case 274:if(ao.isTypeOnly)return sn.push(Ps(Yc,Z._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 279:if(ao.isTypeOnly)return sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 277:case 282:if(ao.isTypeOnly)return sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,Ay(ao)?"import...type":"export...type")),"skip";break;case 272:return sn.push(Ps(ao,Z.import_can_only_be_used_in_TypeScript_files)),"skip";case 278:if(ao.isExportEquals)return sn.push(Ps(ao,Z.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 299:if(ao.token===119)return sn.push(Ps(ao,Z.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 265:let $a=Vi(120);return pe.assertIsDefined($a),sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,$a)),"skip";case 268:let nu=ao.flags&32?Vi(145):Vi(144);return pe.assertIsDefined(nu),sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,nu)),"skip";case 266:return sn.push(Ps(ao,Z.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 177:case 175:case 263:return ao.body?void 0:(sn.push(Ps(ao,Z.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 267:let ll=pe.checkDefined(Vi(94));return sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,ll)),"skip";case 236:return sn.push(Ps(ao,Z.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 235:return sn.push(Ps(ao.type,Z.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 239:return sn.push(Ps(ao.type,Z.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 217:pe.fail()}}function is(ao,Yc){if(eet(Yc)){let ru=de(Yc.modifiers,So);ru&&sn.push(Ps(ru,Z.Decorators_are_not_valid_here))}else if(hQ(Yc)&&Yc.modifiers){let ru=Se(Yc.modifiers,So);if(ru>=0){if(Si(Yc)&&!et.experimentalDecorators)sn.push(Ps(Yc.modifiers[ru],Z.Decorators_are_not_valid_here));else if(mm(Yc)){let $a=Se(Yc.modifiers,y);if($a>=0){let nu=Se(Yc.modifiers,w);if(ru>$a&&nu>=0&&ru=0&&ru<$a){let ll=Se(Yc.modifiers,So,$a);ll>=0&&sn.push(ug(Ps(Yc.modifiers[ll],Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Ps(Yc.modifiers[ru],Z.Decorator_used_before_export_here)))}}}}}switch(Yc.kind){case 264:case 232:case 175:case 177:case 178:case 179:case 219:case 263:case 220:if(ao===Yc.typeParameters)return sn.push(Po(ao,Z.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 244:if(ao===Yc.modifiers)return Qs(Yc.modifiers,Yc.kind===244),"skip";break;case 173:if(ao===Yc.modifiers){for(let ru of ao)hg(ru)&&ru.kind!==126&&ru.kind!==129&&sn.push(Ps(ru,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(ru.kind)));return"skip"}break;case 170:if(ao===Yc.modifiers&&zt(ao,hg))return sn.push(Po(ao,Z.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 214:case 215:case 234:case 286:case 287:case 216:if(ao===Yc.typeArguments)return sn.push(Po(ao,Z.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function Qs(ao,Yc){for(let ru of ao)switch(ru.kind){case 87:if(Yc)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:sn.push(Ps(ru,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(ru.kind)));break;case 126:case 95:case 90:case 129:}}function Po(ao,Yc,...ru){let $a=ao.pos;return rm(br,$a,ao.end-$a,Yc,...ru)}function Ps(ao,Yc,...ru){return EE(br,ao,Yc,...ru)}})}function Ls(br,sn){let ei=kt?.get(br.path);return ei||(kt??(kt=new Map)).set(br.path,ei=Za(br,sn)),ei}function Za(br,sn){return JI(()=>{let ei=Ip().getEmitResolver(br,sn);return F3t(bi(Dc),ei,br)||E})}function Go(br,sn){return br.isDeclarationFile?E:Ls(br,sn)}function Ss(){return ui(Nn(tr.getCombinedDiagnostics(En).getGlobalDiagnostics(),Uc()))}function Uc(){if(!et.configFile)return E;let br=tr.getCombinedDiagnostics(En).getDiagnostics(et.configFile.fileName);return fI(sn=>{br=Nn(br,tr.getCombinedDiagnostics(En).getDiagnostics(sn.sourceFile.fileName))}),br}function el(){return Ke.length?ui(Ip().getGlobalDiagnostics().slice()):E}function Fd(){return Ye||E}function Vg(br,sn,ei,is){y2(su(br),sn,ei,void 0,is)}function Ef(br,sn){return br.fileName===sn.fileName}function om(br,sn){return br.kind===80?sn.kind===80&&br.escapedText===sn.escapedText:sn.kind===11&&br.text===sn.text}function Sh(br,sn){let ei=me.createStringLiteral(br),is=me.createImportDeclaration(void 0,void 0,ei);return L3(is,2),UA(ei,is),UA(is,sn),ei.flags&=-17,is.flags&=-17,ei}function Zp(br){if(br.imports)return;let sn=s0(br),ei=Lm(br),is,Qs,Po;if(sn||!br.isDeclarationFile&&(lS(et)||Lm(br))){et.importHelpers&&(is=[Sh(YD,br)]);let ao=rie(tie(et,br),et);ao&&(is||(is=[])).push(Sh(ao,br))}for(let ao of br.statements)Ps(ao,!1);(br.flags&4194304||sn)&&die(br,!0,!0,(ao,Yc)=>{e9(ao,!1),is=Ft(is,Yc)}),br.imports=is||E,br.moduleAugmentations=Qs||E,br.ambientModuleNames=Po||E;return;function Ps(ao,Yc){if(MY(ao)){let ru=UY(ao);ru&&Lg(ru)&&ru.text&&(!Yc||!Xr(ru.text))&&(e9(ao,!1),is=Ft(is,ru),!Tu&&jn===0&&!br.isDeclarationFile&&(Ac(ru.text,"node:")&&!dde.has(ru.text)?Tu=!0:Tu===void 0&&Aie.has(ru.text)&&(Tu=!1)))}else if(Lh(ao)&&a_(ao)&&(Yc||Ga(ao,128)||br.isDeclarationFile)){ao.name.parent=ao;let ru=g2(ao.name);if(ei||Yc&&!Xr(ru))(Qs||(Qs=[])).push(ao.name);else if(!Yc){br.isDeclarationFile&&(Po||(Po=[])).push(ru);let $a=ao.body;if($a)for(let nu of $a.statements)Ps(nu,!0)}}}}function lh(br){var sn;let ei=lEe(br),is=ei&&((sn=dt?.get(ei))==null?void 0:sn.actual);return is!==void 0?qp(is):void 0}function v1(br,sn){return V_(Ttt(sn.fileName,br.fileName),qp)}function V_(br,sn,ei,is){if(v0(br)){let Qs=An.getCanonicalFileName(br);if(!et.allowNonTsExtensions&&!F(Sr(ba),Ps=>cA(Qs,Ps))){ei&&(CN(Qs)?ei(Z.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,br):ei(Z.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,br,"'"+Sr(Fl).join("', '")+"'"));return}let Po=sn(br);if(ei)if(Po)r5(is)&&Qs===An.getCanonicalFileName(Jg(is.file).fileName)&&ei(Z.A_file_cannot_have_a_reference_to_itself);else{let Ps=lf(br);Ps?.outputDts?ei(Z.Output_file_0_has_not_been_built_from_source_file_1,Ps.outputDts,br):ei(Z.File_0_not_found,br)}return Po}else{let Qs=et.allowNonTsExtensions&&sn(br);if(Qs)return Qs;if(ei&&et.allowNonTsExtensions){ei(Z.File_0_not_found,br);return}let Po=F(Fl[0],Ps=>sn(br+Ps));return ei&&!Po&&ei(Z.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,br,"'"+Sr(Fl).join("', '")+"'"),Po}}function y2(br,sn,ei,is,Qs){V_(br,Po=>Js(Po,sn,ei,Qs,is),(Po,...Ps)=>$s(void 0,Qs,Po,Ps),Qs)}function Ob(br,sn){return y2(br,!1,!1,void 0,sn)}function or(br,sn,ei){!r5(ei)&&zt(tr.getFileReasons().get(sn.path),r5)?$s(sn,ei,Z.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[sn.fileName,br]):$s(sn,ei,Z.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[br,sn.fileName])}function qn(br,sn,ei,is,Qs,Po,Ps){var ao;let Yc=j3.createRedirectedSourceFile({redirectTarget:br,unredirected:sn});return Yc.fileName=ei,Yc.path=is,Yc.resolvedPath=Qs,Yc.originalFileName=Po,Yc.packageJsonLocations=(ao=Ps.packageJsonLocations)!=null&&ao.length?Ps.packageJsonLocations:void 0,Yc.packageJsonScope=Ps.packageJsonScope,Ns.set(is,jn>0),Yc}function Js(br,sn,ei,is,Qs){var Po,Ps;(Po=ki)==null||Po.push(ki.Phase.Program,"findSourceFile",{fileName:br,isDefaultLib:sn||void 0,fileIncludeKind:ty[is.kind]});let ao=DA(br,sn,ei,is,Qs);return(Ps=ki)==null||Ps.pop(),ao}function Yl(br,sn,ei,is){let Qs=wVe(Xc(br,ya),sn?.getPackageJsonInfoCache(),ei,is),Po=Hg(is),Ps=zne(is);return typeof Qs=="object"?{...Qs,languageVersion:Po,setExternalModuleIndicator:Ps,jsDocParsingMode:ei.jsDocParsingMode}:{languageVersion:Po,impliedNodeFormat:Qs,setExternalModuleIndicator:Ps,jsDocParsingMode:ei.jsDocParsingMode}}function DA(br,sn,ei,is,Qs){var Po,Ps;let ao=Mn(br);if(Kr){let ll=KI(ao);if(!ll&&An.realpath&&et.preserveSymlinks&&PC(br)&&br.includes(Hx)){let Gf=Mn(An.realpath(br));Gf!==ao&&(ll=KI(Gf))}if(ll?.source){let Gf=Js(ll.source,sn,ei,is,Qs);return Gf&&gA(Gf,ao,br,void 0),Gf}}let Yc=br;if(Wr.has(ao)){let ll=Wr.get(ao),Gf=kA(ll||void 0,is,!0);if(ll&&Gf&&et.forceConsistentCasingInFileNames!==!1){let Mb=ll.fileName;Mn(Mb)!==Mn(br)&&(br=((Po=lf(br))==null?void 0:Po.outputDts)||br);let I_=eN(Mb,ya),JB=eN(br,ya);I_!==JB&&or(br,ll,is)}return ll&&Ns.get(ll.path)&&jn===0?(Ns.set(ll.path,!1),et.noResolve||(HC(ll,sn),B1(ll)),et.noLib||Pb(ll),Zi.set(ll.path,!1),gR(ll)):ll&&Zi.get(ll.path)&&jn$s(void 0,is,Z.Cannot_read_file_0_Colon_1,[br,ll]),Gi);if(Qs){let ll=gN(Qs),Gf=Qu.get(ll);if(Gf){let Mb=qn(Gf,nu,br,ao,Mn(br),Yc,$a);return Cs.add(Gf.path,br),gA(Mb,ao,br,ru),kA(Mb,is,!1),Rg.set(ao,XJ(Qs)),Rt.push(Mb),Mb}else nu&&(Qu.set(ll,nu),Rg.set(ao,XJ(Qs)))}if(gA(nu,ao,br,ru),nu){if(Ns.set(ao,jn>0),nu.fileName=br,nu.path=ao,nu.resolvedPath=Mn(br),nu.originalFileName=Yc,nu.packageJsonLocations=(Ps=$a.packageJsonLocations)!=null&&Ps.length?$a.packageJsonLocations:void 0,nu.packageJsonScope=$a.packageJsonScope,kA(nu,is,!1),An.useCaseSensitiveFileNames()){let ll=Qm(ao),Gf=pt.get(ll);Gf?or(br,Gf,is):pt.set(ll,nu)}ks=ks||nu.hasNoDefaultLib&&!ei,et.noResolve||(HC(nu,sn),B1(nu)),et.noLib||Pb(nu),gR(nu),sn?yt.push(nu):Rt.push(nu),(Gt??(Gt=new Set)).add(nu.path)}return nu}function kA(br,sn,ei){return br&&(!ei||!r5(sn)||!Gt?.has(sn.file))?(tr.getFileReasons().add(br.path,sn),!0):!1}function gA(br,sn,ei,is){is?(ym(ei,is,br),ym(ei,sn,br||!1)):ym(ei,sn,br)}function ym(br,sn,ei){Wr.set(sn,ei),ei!==void 0?Wn.delete(sn):Wn.set(sn,br)}function lf(br){return nr?.get(Mn(br))}function fI(br){return fie(on,br)}function KI(br){return Zr?.get(br)}function b2(br){return Kr&&!!lf(br)}function f_(br){if(st)return st.get(br)||void 0}function HC(br,sn){F(br.referencedFiles,(ei,is)=>{y2(Ttt(ei.fileName,br.fileName),sn,!1,void 0,{kind:4,file:br.path,index:is})})}function B1(br){let sn=br.typeReferenceDirectives;if(!sn.length)return;let ei=Yt?.get(br.path)||Vn(sn,br),is=Pie();(qt??(qt=new Map)).set(br.path,is);for(let Qs=0;Qs{let is=lEe(sn);is?Vg(Qx(is),!0,!0,{kind:7,file:br.path,index:ei}):tr.addFileProcessingDiagnostic({kind:0,reason:{kind:7,file:br.path,index:ei}})})}function rC(br){return An.getCanonicalFileName(br)}function gR(br){if(Zp(br),br.imports.length||br.moduleAugmentations.length){let sn=xrn(br),ei=ir?.get(br.path)||Oi(sn,br);pe.assert(ei.length===sn.length);let is=dy(br),Qs=Pie();(ot??(ot=new Map)).set(br.path,Qs);for(let Po=0;PoCn,Mb=ll&&!Ott(is,Ps,br)&&!is.noResolve&&PoMU(Ps.commandLine,!An.useCaseSensitiveFileNames()));Qs.fileNames.forEach(ru=>{let $a=Mn(ru),nu;!PC(ru)&&!cA(ru,".json")&&(Qs.options.outFile?nu=ao:(nu=Kde(ru,Ps.commandLine,!An.useCaseSensitiveFileNames(),Yc),Zr.set(Mn(nu),{resolvedRef:Ps,source:ru}))),nr.set($a,{resolvedRef:Ps,outputDts:nu})})}return Qs.projectReferences&&(Ps.references=Qs.projectReferences.map(VN)),Ps}function ct(){et.strictPropertyInitialization&&!l_(et,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks"),et.exactOptionalPropertyTypes&&!l_(et,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"exactOptionalPropertyTypes","strictNullChecks"),(et.isolatedModules||et.verbatimModuleSyntax)&&et.outFile&&gr(Z.Option_0_cannot_be_specified_with_option_1,"outFile",et.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules"),et.isolatedDeclarations&&(GF(et)&&gr(Z.Option_0_cannot_be_specified_with_option_1,"allowJs","isolatedDeclarations"),Wy(et)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"isolatedDeclarations","declaration","composite")),et.inlineSourceMap&&(et.sourceMap&&gr(Z.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),et.mapRoot&&gr(Z.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap")),et.composite&&(et.declaration===!1&&gr(Z.Composite_projects_may_not_disable_declaration_emit,"declaration"),et.incremental===!1&&gr(Z.Composite_projects_may_not_disable_incremental_compilation,"declaration"));let br=et.outFile;if(!et.tsBuildInfoFile&&et.incremental&&!br&&!et.configFilePath&&tr.addConfigDiagnostic(kf(Z.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified)),_i(),wa(),et.composite){let Ps=new Set(Ke.map(Mn));for(let ao of Lt)kW(ao,En)&&!Ps.has(ao.path)&&tr.addLazyConfigDiagnostic(ao,Z.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,ao.fileName,et.configFilePath||"")}if(et.paths){for(let Ps in et.paths)if(Da(et.paths,Ps))if(Pbe(Ps)||cl(!0,Ps,Z.Pattern_0_can_have_at_most_one_Asterisk_character,Ps),Ki(et.paths[Ps])){let ao=et.paths[Ps].length;ao===0&&cl(!1,Ps,Z.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,Ps);for(let Yc=0;YcLm(Ps)&&!Ps.isDeclarationFile);if(et.isolatedModules||et.verbatimModuleSyntax)et.module===0&&sn<2&&et.isolatedModules&&gr(Z.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),et.preserveConstEnums===!1&&gr(Z.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,et.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(ei&&sn<2&&et.module===0){let Ps=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(rm(ei,Ps.start,Ps.length,Z.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(br&&!et.emitDeclarationOnly){if(et.module&&!(et.module===2||et.module===4))gr(Z.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if(et.module===void 0&&ei){let Ps=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(rm(ei,Ps.start,Ps.length,Z.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}}if(VW(et)&&(G_(et)===1?gr(Z.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):YAe(et)||gr(Z.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),et.outDir||et.rootDir||et.sourceRoot||et.mapRoot||Wy(et)&&et.declarationDir){let Ps=ci();et.outDir&&Ps===""&&Lt.some(ao=>Mf(ao.fileName)>1)&&gr(Z.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}et.checkJs&&!GF(et)&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"),et.emitDeclarationOnly&&(Wy(et)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite")),et.emitDecoratorMetadata&&!et.experimentalDecorators&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),et.jsxFactory?(et.reactNamespace&&gr(Z.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),(et.jsx===4||et.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",OEe.get(""+et.jsx)),Oz(et.jsxFactory,sn)||Ln("jsxFactory",Z.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,et.jsxFactory)):et.reactNamespace&&!qh(et.reactNamespace,sn)&&Ln("reactNamespace",Z.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,et.reactNamespace),et.jsxFragmentFactory&&(et.jsxFactory||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),(et.jsx===4||et.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",OEe.get(""+et.jsx)),Oz(et.jsxFragmentFactory,sn)||Ln("jsxFragmentFactory",Z.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,et.jsxFragmentFactory)),et.reactNamespace&&(et.jsx===4||et.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",OEe.get(""+et.jsx)),et.jsxImportSource&&et.jsx===2&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",OEe.get(""+et.jsx));let is=o0(et);et.verbatimModuleSyntax&&(is===2||is===3||is===4)&&gr(Z.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),et.allowImportingTsExtensions&&!(et.noEmit||et.emitDeclarationOnly||et.rewriteRelativeImportExtensions)&&Ln("allowImportingTsExtensions",Z.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);let Qs=G_(et);if(et.resolvePackageJsonExports&&!bU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),et.resolvePackageJsonImports&&!bU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),et.customConditions&&!bU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),Qs===100&&!eie(is)&&is!==200&&Ln("moduleResolution",Z.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),ev[is]&&100<=is&&is<=199&&!(3<=Qs&&Qs<=99)){let Ps=ev[is],ao=$_[Ps]?Ps:"Node16";Ln("moduleResolution",Z.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,ao,Ps)}else if($_[Qs]&&3<=Qs&&Qs<=99&&!(100<=is&&is<=199)){let Ps=$_[Qs];Ln("module",Z.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,Ps,Ps)}if(!et.noEmit&&!et.suppressOutputPathCheck){let Ps=bi(),ao=new Set;Itt(Ps,Yc=>{et.emitDeclarationOnly||Po(Yc.jsFilePath,ao),Po(Yc.declarationFilePath,ao)})}function Po(Ps,ao){if(Ps){let Yc=Mn(Ps);if(Wr.has(Yc)){let $a;et.configFilePath||($a=wu(void 0,Z.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)),$a=wu($a,Z.Cannot_write_file_0_because_it_would_overwrite_input_file,Ps),Ug(Ps,PAe($a))}let ru=An.useCaseSensitiveFileNames()?Yc:Qm(Yc);ao.has(ru)?Ug(Ps,kf(Z.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,Ps)):ao.add(ru)}}}function en(){let br=et.ignoreDeprecations;if(br){if(br==="5.0")return new P(br);mt()}return P.zero}function gi(br,sn,ei,is){let Qs=new P(br),Po=new P(sn),Ps=new P(at||I),ao=en(),Yc=Po.compareTo(Ps)!==1,ru=!Yc&&ao.compareTo(Qs)===-1;(Yc||ru)&&is(($a,nu,ll)=>{Yc?nu===void 0?ei($a,nu,ll,Z.Option_0_has_been_removed_Please_remove_it_from_your_configuration,$a):ei($a,nu,ll,Z.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,$a,nu):nu===void 0?ei($a,nu,ll,Z.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,$a,sn,br):ei($a,nu,ll,Z.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,$a,nu,sn,br)})}function _i(){function br(sn,ei,is,Qs,...Po){if(is){let Ps=wu(void 0,Z.Use_0_instead,is),ao=wu(Ps,Qs,...Po);Jl(!ei,sn,void 0,ao)}else Jl(!ei,sn,void 0,Qs,...Po)}gi("5.0","5.5",br,sn=>{et.target===0&&sn("target","ES3"),et.noImplicitUseStrict&&sn("noImplicitUseStrict"),et.keyofStringsOnly&&sn("keyofStringsOnly"),et.suppressExcessPropertyErrors&&sn("suppressExcessPropertyErrors"),et.suppressImplicitAnyIndexErrors&&sn("suppressImplicitAnyIndexErrors"),et.noStrictGenericChecks&&sn("noStrictGenericChecks"),et.charset&&sn("charset"),et.out&&sn("out",void 0,"outFile"),et.importsNotUsedAsValues&&sn("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),et.preserveValueImports&&sn("preserveValueImports",void 0,"verbatimModuleSyntax")})}function ys(br,sn,ei){function is(Qs,Po,Ps,ao,...Yc){bs(sn,ei,ao,...Yc)}gi("5.0","5.5",is,Qs=>{br.prepend&&Qs("prepend")})}function $s(br,sn,ei,is){tr.addFileProcessingDiagnostic({kind:1,file:br&&br.path,fileProcessingReason:sn,diagnostic:ei,args:is})}function wa(){let br=et.suppressOutputPathCheck?void 0:t5(et);vz(Tt,on,(sn,ei,is)=>{let Qs=(ei?ei.commandLine.projectReferences:Tt)[is],Po=ei&&ei.sourceFile;if(ys(Qs,Po,is),!sn){bs(Po,is,Z.File_0_not_found,Qs.path);return}let Ps=sn.commandLine.options;(!Ps.composite||Ps.noEmit)&&(ei?ei.commandLine.fileNames:Ke).length&&(Ps.composite||bs(Po,is,Z.Referenced_project_0_must_have_setting_composite_Colon_true,Qs.path),Ps.noEmit&&bs(Po,is,Z.Referenced_project_0_may_not_disable_emit,Qs.path)),!ei&&br&&br===t5(Ps)&&(bs(Po,is,Z.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,br,Qs.path),Oo.set(Mn(br),!0))})}function pc(br,sn,ei,...is){let Qs=!0;Fe(Po=>{ag(Po.initializer)&&$J(Po.initializer,br,Ps=>{let ao=Ps.initializer;YI(ao)&&ao.elements.length>sn&&(tr.addConfigDiagnostic(EE(et.configFile,ao.elements[sn],ei,...is)),Qs=!1)})}),Qs&&tg(ei,...is)}function cl(br,sn,ei,...is){let Qs=!0;Fe(Po=>{ag(Po.initializer)&&xf(Po.initializer,br,sn,void 0,ei,...is)&&(Qs=!1)}),Qs&&tg(ei,...is)}function Fe(br){return pde(zl(),"paths",br)}function gr(br,sn,ei,is){Jl(!0,sn,ei,br,sn,ei,is)}function Ln(br,sn,...ei){Jl(!1,br,void 0,sn,...ei)}function bs(br,sn,ei,...is){let Qs=gne(br||et.configFile,"references",Po=>YI(Po.initializer)?Po.initializer:void 0);Qs&&Qs.elements.length>sn?tr.addConfigDiagnostic(EE(br||et.configFile,Qs.elements[sn],ei,...is)):tr.addConfigDiagnostic(kf(ei,...is))}function Jl(br,sn,ei,is,...Qs){let Po=zl();(!Po||!xf(Po,br,sn,ei,is,...Qs))&&tg(is,...Qs)}function tg(br,...sn){let ei=Su();ei?"messageText"in br?tr.addConfigDiagnostic(Dw(et.configFile,ei.name,br)):tr.addConfigDiagnostic(EE(et.configFile,ei.name,br,...sn)):"messageText"in br?tr.addConfigDiagnostic(PAe(br)):tr.addConfigDiagnostic(kf(br,...sn))}function zl(){if(hc===void 0){let br=Su();hc=br&&Gs(br.initializer,ag)||!1}return hc||void 0}function Su(){return yr===void 0&&(yr=$J(k7(et.configFile),"compilerOptions",Zl)||!1),yr||void 0}function xf(br,sn,ei,is,Qs,...Po){let Ps=!1;return $J(br,ei,ao=>{"messageText"in Qs?tr.addConfigDiagnostic(Dw(et.configFile,sn?ao.name:ao.initializer,Qs)):tr.addConfigDiagnostic(EE(et.configFile,sn?ao.name:ao.initializer,Qs,...Po)),Ps=!0},is),Ps}function Ug(br,sn){Oo.set(Mn(br),!0),tr.addConfigDiagnostic(sn)}function YC(br){if(et.noEmit)return!1;let sn=Mn(br);if(Jg(sn))return!1;let ei=et.outFile;if(ei)return w1(sn,ei)||w1(sn,a0(ei)+".d.ts");if(et.declarationDir&&zh(et.declarationDir,sn,ya,!An.useCaseSensitiveFileNames()))return!0;if(et.outDir)return zh(et.outDir,sn,ya,!An.useCaseSensitiveFileNames());if(Iu(sn,EU)||PC(sn)){let is=a0(sn);return!!Jg(is+".ts")||!!Jg(is+".tsx")}return!1}function w1(br,sn){return tI(br,sn,ya,!An.useCaseSensitiveFileNames())===0}function CS(){return An.getSymlinkCache?An.getSymlinkCache():(je||(je=Mbe(ya,rC)),Lt&&!je.hasProcessedResolutions()&&je.setSymlinksFromResolutions(xe,fr,Gr),je)}function Bv(br,sn){return EVe(br,sn,dy(br))}function qF(br,sn){return Trn(br,sn,dy(br))}function A9(br,sn){return Bv(br,h1e(br,sn))}function Yy(br){return TVe(br,dy(br))}function uk(br){return HU(br,dy(br))}function AR(br){return epe(br,dy(br))}function QB(br){return krn(br,dy(br))}function rO(br,sn){return br.resolutionMode||Yy(sn)}}function krn(s,c){let g=o0(c);return 100<=g&&g<=199||g===200?!1:epe(s,c)<5}function epe(s,c){return HU(s,c)??o0(c)}function HU(s,c){var g,d;let h=o0(c);if(100<=h&&h<=199)return s.impliedNodeFormat;if(s.impliedNodeFormat===1&&(((g=s.packageJsonScope)==null?void 0:g.contents.packageJsonContent.type)==="commonjs"||Iu(s.fileName,[".cjs",".cts"])))return 1;if(s.impliedNodeFormat===99&&(((d=s.packageJsonScope)==null?void 0:d.contents.packageJsonContent.type)==="module"||Iu(s.fileName,[".mjs",".mts"])))return 99}function TVe(s,c){return Vbe(c)?HU(s,c):void 0}function zBs(s){let c,g=s.compilerHost.fileExists,d=s.compilerHost.directoryExists,h=s.compilerHost.getDirectories,_=s.compilerHost.realpath;if(!s.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:Dc,fileExists:T};s.compilerHost.fileExists=T;let S;return d&&(S=s.compilerHost.directoryExists=re=>d.call(s.compilerHost,re)?(M(re),!0):s.getResolvedProjectReferences()?(c||(c=new Set,s.forEachResolvedProjectReference(ge=>{let Ie=ge.commandLine.options.outFile;if(Ie)c.add(Mo(s.toPath(Ie)));else{let _e=ge.commandLine.options.declarationDir||ge.commandLine.options.outDir;_e&&c.add(s.toPath(_e))}})),ee(re,!1)):!1),h&&(s.compilerHost.getDirectories=re=>!s.getResolvedProjectReferences()||d&&d.call(s.compilerHost,re)?h.call(s.compilerHost,re):[]),_&&(s.compilerHost.realpath=re=>{var ge;return((ge=s.getSymlinkCache().getSymlinkedFiles())==null?void 0:ge.get(s.toPath(re)))||_.call(s.compilerHost,re)}),{onProgramCreateComplete:R,fileExists:T,directoryExists:S};function R(){s.compilerHost.fileExists=g,s.compilerHost.directoryExists=d,s.compilerHost.getDirectories=h}function T(re){return g.call(s.compilerHost,re)?!0:!s.getResolvedProjectReferences()||!PC(re)?!1:ee(re,!0)}function O(re){let ge=s.getRedirectFromOutput(s.toPath(re));return ge!==void 0?Xs(ge.source)?g.call(s.compilerHost,ge.source):!0:void 0}function V(re){let ge=s.toPath(re),Ie=`${ge}${cg}`;return RB(c,_e=>ge===_e||Ac(_e,Ie)||Ac(ge,`${_e}/`))}function M(re){var ge;if(!s.getResolvedProjectReferences()||Cz(re)||!_||!re.includes(Hx))return;let Ie=s.getSymlinkCache(),_e=Cp(s.toPath(re));if((ge=Ie.getSymlinkedDirectories())!=null&&ge.has(_e))return;let Ee=su(_.call(s.compilerHost,re)),Ne;if(Ee===re||(Ne=Cp(s.toPath(Ee)))===_e){Ie.setSymlinkedDirectory(_e,!1);return}Ie.setSymlinkedDirectory(re,{real:Cp(Ee),realPath:Ne})}function ee(re,ge){var Ie;let _e=ge?O:V,Ee=_e(re);if(Ee!==void 0)return Ee;let Ne=s.getSymlinkCache(),Te=Ne.getSymlinkedDirectories();if(!Te)return!1;let Ze=s.toPath(re);return Ze.includes(Hx)?ge&&((Ie=Ne.getSymlinkedFiles())!=null&&Ie.has(Ze))?!0:ae(Te.entries(),([Pe,Ke])=>{if(!Ke||!Ac(Ze,Pe))return;let et=_e(Ze.replace(Pe,Ke.realPath));if(ge&&et){let Ye=Xc(re,s.compilerHost.getCurrentDirectory());Ne.setSymlinkedFile(Ze,`${Ke.real}${Ye.replace(new RegExp(Pe,"i"),"")}`)}return et})||!1:!1}}var Vtt={diagnostics:E,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function Wtt(s,c,g,d){let h=s.getCompilerOptions();if(h.noEmit)return c?Vtt:s.emitBuildInfo(g,d);if(!h.noEmitOnError)return;let _=[...s.getOptionsDiagnostics(d),...s.getSyntacticDiagnostics(c,d),...s.getGlobalDiagnostics(d),...s.getSemanticDiagnostics(c,d)];if(_.length===0&&Wy(s.getCompilerOptions())&&(_=s.getDeclarationDiagnostics(void 0,d)),!_.length)return;let S;if(!c){let R=s.emitBuildInfo(g,d);R.diagnostics&&(_=[..._,...R.diagnostics]),S=R.emittedFiles}return{diagnostics:_,sourceMaps:void 0,emittedFiles:S,emitSkipped:!0}}function RVe(s,c){return Le(s,g=>!g.skippedOn||!c[g.skippedOn])}function NVe(s,c=s){return{fileExists:g=>c.fileExists(g),readDirectory(g,d,h,_,S){return pe.assertIsDefined(c.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),c.readDirectory(g,d,h,_,S)},readFile:g=>c.readFile(g),directoryExists:$i(c,c.directoryExists),getDirectories:$i(c,c.getDirectories),realpath:$i(c,c.realpath),useCaseSensitiveFileNames:s.useCaseSensitiveFileNames(),getCurrentDirectory:()=>s.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:s.onUnRecoverableConfigFileDiagnostic||Am,trace:s.trace?g=>s.trace(g):void 0}}function Jz(s){return frt(s.path)}function Ott(s,{extension:c},{isDeclarationFile:g}){switch(c){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return d();case".jsx":return d()||h();case".js":case".mjs":case".cjs":return h();case".json":return _();default:return S()}function d(){return s.jsx?void 0:Z.Module_0_was_resolved_to_1_but_jsx_is_not_set}function h(){return GF(s)||!l_(s,"noImplicitAny")?void 0:Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function _(){return VW(s)?void 0:Z.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function S(){return g||s.allowArbitraryExtensions?void 0:Z.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function xrn({imports:s,moduleAugmentations:c}){let g=s.map(d=>d);for(let d of c)d.kind===11&&g.push(d);return g}function h1e({imports:s,moduleAugmentations:c},g){if(gc.add(ge)),d?.forEach(ge=>{switch(ge.kind){case 1:return c.add(V(re,ge.file&&re.getSourceFileByPath(ge.file),ge.fileProcessingReason,ge.diagnostic,ge.args||E));case 0:return c.add(O(re,ge));case 2:return ge.diagnostics.forEach(Ie=>c.add(Ie));default:pe.assertNever(ge)}}),S?.forEach(({file:ge,diagnostic:Ie,args:_e})=>c.add(V(re,ge,void 0,Ie,_e))),R=void 0,T=void 0,c)}};function O(re,{reason:ge}){let{file:Ie,pos:_e,end:Ee}=$de(re,ge),Ne=Ie.libReferenceDirectives[ge.index],Te=lQ(Ne),Ze=aa(Gm(Te,"lib."),".d.ts"),Pe=Dr(Ze,F9e,Zl);return rm(Ie,pe.checkDefined(_e),pe.checkDefined(Ee)-_e,Pe?Z.Cannot_find_lib_definition_for_0_Did_you_mean_1:Z.Cannot_find_lib_definition_for_0,Te,Pe)}function V(re,ge,Ie,_e,Ee){let Ne,Te,Ze,Pe,Ke,et,Ye=ge&&g.get(ge.path),Tt=r5(Ie)?Ie:void 0,at=ge&&R?.get(ge.path);at?(at.fileIncludeReasonDetails?(Ne=new Set(Ye),Ye?.forEach(yt)):Ye?.forEach(mt),Ke=at.redirectInfo):(Ye?.forEach(mt),Ke=ge&&nrt(ge,re.getCompilerOptionsForFile(ge))),Ie&&mt(Ie);let Qe=Ne?.size!==Ye?.length;Tt&&Ne?.size===1&&(Ne=void 0),Ne&&at&&(at.details&&!Qe?et=wu(at.details,_e,...Ee??E):at.fileIncludeReasonDetails&&(Qe?Rt()?Te=Ft(at.fileIncludeReasonDetails.next.slice(0,Ye.length),Te[0]):Te=[...at.fileIncludeReasonDetails.next,Te[0]]:Rt()?Te=at.fileIncludeReasonDetails.next.slice(0,Ye.length):Pe=at.fileIncludeReasonDetails)),et||(Pe||(Pe=Ne&&wu(Te,Z.The_file_is_in_the_program_because_Colon)),et=wu(Ke?Pe?[Pe,...Ke]:Ke:Pe,_e,...Ee||E)),ge&&(at?(!at.fileIncludeReasonDetails||!Qe&&Pe)&&(at.fileIncludeReasonDetails=Pe):(R??(R=new Map)).set(ge.path,at={fileIncludeReasonDetails:Pe,redirectInfo:Ke}),!at.details&&!Qe&&(at.details=et.next));let Ct=Tt&&$de(re,Tt);return Ct&&Kie(Ct)?qe(Ct.file,Ct.pos,Ct.end-Ct.pos,et,Ze):PAe(et,Ze);function mt(Lt){Ne?.has(Lt)||((Ne??(Ne=new Set)).add(Lt),(Te??(Te=[])).push(ort(re,Lt)),yt(Lt))}function yt(Lt){!Tt&&r5(Lt)?Tt=Lt:Tt!==Lt&&(Ze=Ft(Ze,M(re,Lt)))}function Rt(){var Lt;return((Lt=at.fileIncludeReasonDetails.next)==null?void 0:Lt.length)!==Ye?.length}}function M(re,ge){let Ie=T?.get(ge);return Ie===void 0&&(T??(T=new Map)).set(ge,Ie=ee(re,ge)??!1),Ie||void 0}function ee(re,ge){if(r5(ge)){let Ze=$de(re,ge),Pe;switch(ge.kind){case 3:Pe=Z.File_is_included_via_import_here;break;case 4:Pe=Z.File_is_included_via_reference_here;break;case 5:Pe=Z.File_is_included_via_type_library_reference_here;break;case 7:Pe=Z.File_is_included_via_library_reference_here;break;default:pe.assertNever(ge)}return Kie(Ze)?rm(Ze.file,Ze.pos,Ze.end-Ze.pos,Pe):void 0}let Ie=re.getCurrentDirectory(),_e=re.getRootFileNames(),Ee=re.getCompilerOptions();if(!Ee.configFile)return;let Ne,Te;switch(ge.kind){case 0:if(!Ee.configFile.configFileSpecs)return;let Ze=Xc(_e[ge.index],Ie),Pe=irt(re,Ze);if(Pe){Ne=rAe(Ee.configFile,"files",Pe),Te=Z.File_is_matched_by_files_list_specified_here;break}let Ke=srt(re,Ze);if(!Ke||!Xs(Ke))return;Ne=rAe(Ee.configFile,"include",Ke),Te=Z.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:let et=re.getResolvedProjectReferences(),Ye=re.getProjectReferences(),Tt=pe.checkDefined(et?.[ge.index]),at=vz(Ye,et,(Rt,Lt,je)=>Rt===Tt?{sourceFile:Lt?.sourceFile||Ee.configFile,index:je}:void 0);if(!at)return;let{sourceFile:Qe,index:Ct}=at,mt=gne(Qe,"references",Rt=>YI(Rt.initializer)?Rt.initializer:void 0);return mt&&mt.elements.length>Ct?EE(Qe,mt.elements[Ct],ge.kind===2?Z.File_is_output_from_referenced_project_specified_here:Z.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!Ee.types)return;Ne=uEe(s(),"types",ge.typeReference),Te=Z.File_is_entry_point_of_type_library_specified_here;break;case 6:if(ge.index!==void 0){Ne=uEe(s(),"lib",Ee.lib[ge.index]),Te=Z.File_is_library_specified_here;break}let yt=QAe(Hg(Ee));Ne=yt?e9e(s(),"target",yt):void 0,Te=Z.File_is_default_library_for_target_specified_here;break;default:pe.assertNever(ge)}return Ne&&EE(Ee.configFile,Ne,Te)}}function n5t(s,c,g,d,h,_){let S=[],{emitSkipped:R,diagnostics:T}=s.emit(c,O,d,g,h,_);return{outputFiles:S,emitSkipped:R,diagnostics:T};function O(V,M,ee){S.push({name:V,writeByteOrderMark:ee,text:M})}}var i5t=(s=>(s[s.ComputedDts=0]="ComputedDts",s[s.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",s[s.UsedVersion=2]="UsedVersion",s))(i5t||{}),cR;(s=>{function c(){function at(Qe,Ct,mt){let yt={getKeys:Rt=>Ct.get(Rt),getValues:Rt=>Qe.get(Rt),keys:()=>Qe.keys(),size:()=>Qe.size,deleteKey:Rt=>{(mt||(mt=new Set)).add(Rt);let Lt=Qe.get(Rt);return Lt?(Lt.forEach(je=>d(Ct,je,Rt)),Qe.delete(Rt),!0):!1},set:(Rt,Lt)=>{mt?.delete(Rt);let je=Qe.get(Rt);return Qe.set(Rt,Lt),je?.forEach(Wt=>{Lt.has(Wt)||d(Ct,Wt,Rt)}),Lt.forEach(Wt=>{je?.has(Wt)||g(Ct,Wt,Rt)}),yt}};return yt}return at(new Map,new Map,void 0)}s.createManyToManyPathMap=c;function g(at,Qe,Ct){let mt=at.get(Qe);mt||(mt=new Set,at.set(Qe,mt)),mt.add(Ct)}function d(at,Qe,Ct){let mt=at.get(Qe);return mt?.delete(Ct)?(mt.size||at.delete(Qe),!0):!1}function h(at){return Xt(at.declarations,Qe=>{var Ct;return(Ct=ms(Qe))==null?void 0:Ct.resolvedPath})}function _(at,Qe){let Ct=at.getSymbolAtLocation(Qe);return Ct&&h(Ct)}function S(at,Qe,Ct,mt){var yt;return Pu(((yt=at.getRedirectFromSourceFile(Qe))==null?void 0:yt.outputDts)||Qe,Ct,mt)}function R(at,Qe,Ct){let mt;if(Qe.imports&&Qe.imports.length>0){let je=at.getTypeChecker();for(let Wt of Qe.imports){let _r=_(je,Wt);_r?.forEach(Lt)}}let yt=Mo(Qe.resolvedPath);if(Qe.referencedFiles&&Qe.referencedFiles.length>0)for(let je of Qe.referencedFiles){let Wt=S(at,je.fileName,yt,Ct);Lt(Wt)}if(at.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:je})=>{if(!je)return;let Wt=je.resolvedFileName,_r=S(at,Wt,yt,Ct);Lt(_r)},Qe),Qe.moduleAugmentations.length){let je=at.getTypeChecker();for(let Wt of Qe.moduleAugmentations){if(!Lg(Wt))continue;let _r=je.getSymbolAtLocation(Wt);_r&&Rt(_r)}}for(let je of at.getTypeChecker().getAmbientModules())je.declarations&&je.declarations.length>1&&Rt(je);return mt;function Rt(je){if(je.declarations)for(let Wt of je.declarations){let _r=ms(Wt);_r&&_r!==Qe&&Lt(_r.resolvedPath)}}function Lt(je){(mt||(mt=new Set)).add(je)}}function T(at,Qe){return Qe&&!Qe.referencedMap==!at}s.canReuseOldState=T;function O(at){return at.module!==0&&!at.outFile?c():void 0}s.createReferencedMap=O;function V(at,Qe,Ct){var mt,yt;let Rt=new Map,Lt=at.getCompilerOptions(),je=O(Lt),Wt=T(je,Qe);at.getTypeChecker();for(let _r of at.getSourceFiles()){let Gt=pe.checkDefined(_r.version,"Program intended to be used with Builder should have source files with versions set"),it=Wt?(mt=Qe.oldSignatures)==null?void 0:mt.get(_r.resolvedPath):void 0,kt=it===void 0?Wt?(yt=Qe.fileInfos.get(_r.resolvedPath))==null?void 0:yt.signature:void 0:it||void 0;if(je){let tr=R(at,_r,at.getCanonicalFileName);tr&&je.set(_r.resolvedPath,tr)}Rt.set(_r.resolvedPath,{version:Gt,signature:kt,affectsGlobalScope:Lt.outFile?void 0:Ke(_r)||void 0,impliedFormat:_r.impliedNodeFormat})}return{fileInfos:Rt,referencedMap:je,useFileVersionAsSignature:!Ct&&!Wt}}s.create=V;function M(at){at.allFilesExcludingDefaultLibraryFile=void 0,at.allFileNames=void 0}s.releaseCache=M;function ee(at,Qe,Ct,mt,yt){var Rt;let Lt=re(at,Qe,Ct,mt,yt);return(Rt=at.oldSignatures)==null||Rt.clear(),Lt}s.getFilesAffectedBy=ee;function re(at,Qe,Ct,mt,yt){let Rt=Qe.getSourceFileByPath(Ct);return Rt?_e(at,Qe,Rt,mt,yt)?(at.referencedMap?Tt:Ye)(at,Qe,Rt,mt,yt):[Rt]:E}s.getFilesAffectedByWithOldState=re;function ge(at,Qe,Ct){at.fileInfos.get(Ct).signature=Qe,(at.hasCalledUpdateShapeSignature||(at.hasCalledUpdateShapeSignature=new Set)).add(Ct)}s.updateSignatureOfFile=ge;function Ie(at,Qe,Ct,mt,yt){at.emit(Qe,(Rt,Lt,je,Wt,_r,Gt)=>{pe.assert(PC(Rt),`File extension for signature expected to be dts: Got:: ${Rt}`),yt(Htt(at,Qe,Lt,mt,Gt),_r)},Ct,2,void 0,!0)}s.computeDtsSignature=Ie;function _e(at,Qe,Ct,mt,yt,Rt=at.useFileVersionAsSignature){var Lt;if((Lt=at.hasCalledUpdateShapeSignature)!=null&&Lt.has(Ct.resolvedPath))return!1;let je=at.fileInfos.get(Ct.resolvedPath),Wt=je.signature,_r;return!Ct.isDeclarationFile&&!Rt&&Ie(Qe,Ct,mt,yt,Gt=>{_r=Gt,yt.storeSignatureInfo&&(at.signatureInfo??(at.signatureInfo=new Map)).set(Ct.resolvedPath,0)}),_r===void 0&&(_r=Ct.version,yt.storeSignatureInfo&&(at.signatureInfo??(at.signatureInfo=new Map)).set(Ct.resolvedPath,2)),(at.oldSignatures||(at.oldSignatures=new Map)).set(Ct.resolvedPath,Wt||!1),(at.hasCalledUpdateShapeSignature||(at.hasCalledUpdateShapeSignature=new Set)).add(Ct.resolvedPath),je.signature=_r,_r!==Wt}s.updateShapeSignature=_e;function Ee(at,Qe,Ct){if(Qe.getCompilerOptions().outFile||!at.referencedMap||Ke(Ct))return Ne(at,Qe);let yt=new Set,Rt=[Ct.resolvedPath];for(;Rt.length;){let Lt=Rt.pop();if(!yt.has(Lt)){yt.add(Lt);let je=at.referencedMap.getValues(Lt);if(je)for(let Wt of je.keys())Rt.push(Wt)}}return Do(lr(yt.keys(),Lt=>{var je;return((je=Qe.getSourceFileByPath(Lt))==null?void 0:je.fileName)??Lt}))}s.getAllDependencies=Ee;function Ne(at,Qe){if(!at.allFileNames){let Ct=Qe.getSourceFiles();at.allFileNames=Ct===E?E:Ct.map(mt=>mt.fileName)}return at.allFileNames}function Te(at,Qe){let Ct=at.referencedMap.getKeys(Qe);return Ct?Do(Ct.keys()):[]}s.getReferencedByPaths=Te;function Ze(at){for(let Qe of at.statements)if(!OY(Qe))return!1;return!0}function Pe(at){return zt(at.moduleAugmentations,Qe=>NB(Qe.parent))}function Ke(at){return Pe(at)||!Sl(at)&&!Zu(at)&&!Ze(at)}function et(at,Qe,Ct){if(at.allFilesExcludingDefaultLibraryFile)return at.allFilesExcludingDefaultLibraryFile;let mt;Ct&&yt(Ct);for(let Rt of Qe.getSourceFiles())Rt!==Ct&&yt(Rt);return at.allFilesExcludingDefaultLibraryFile=mt||E,at.allFilesExcludingDefaultLibraryFile;function yt(Rt){Qe.isSourceFileDefaultLibrary(Rt)||(mt||(mt=[])).push(Rt)}}s.getAllFilesExcludingDefaultLibraryFile=et;function Ye(at,Qe,Ct){let mt=Qe.getCompilerOptions();return mt&&mt.outFile?[Ct]:et(at,Qe,Ct)}function Tt(at,Qe,Ct,mt,yt){if(Ke(Ct))return et(at,Qe,Ct);let Rt=Qe.getCompilerOptions();if(Rt&&(lS(Rt)||Rt.outFile))return[Ct];let Lt=new Map;Lt.set(Ct.resolvedPath,Ct);let je=Te(at,Ct.resolvedPath);for(;je.length>0;){let Wt=je.pop();if(!Lt.has(Wt)){let _r=Qe.getSourceFileByPath(Wt);Lt.set(Wt,_r),_r&&_e(at,Qe,_r,mt,yt)&&je.push(...Te(at,_r.resolvedPath))}}return Do(lr(Lt.values(),Wt=>Wt))}})(cR||(cR={}));var s5t=(s=>(s[s.None=0]="None",s[s.Js=1]="Js",s[s.JsMap=2]="JsMap",s[s.JsInlineMap=4]="JsInlineMap",s[s.DtsErrors=8]="DtsErrors",s[s.DtsEmit=16]="DtsEmit",s[s.DtsMap=32]="DtsMap",s[s.Dts=24]="Dts",s[s.AllJs=7]="AllJs",s[s.AllDtsEmit=48]="AllDtsEmit",s[s.AllDts=56]="AllDts",s[s.All=63]="All",s))(s5t||{});function jie(s){return s.program!==void 0}function qBs(s){return pe.assert(jie(s)),s}function zW(s){let c=1;return s.sourceMap&&(c=c|2),s.inlineSourceMap&&(c=c|4),Wy(s)&&(c=c|24),s.declarationMap&&(c=c|32),s.emitDeclarationOnly&&(c=c&56),c}function DVe(s,c){let g=c&&(ws(c)?c:zW(c)),d=ws(s)?s:zW(s);if(g===d)return 0;if(!g||!d)return d;let h=g^d,_=0;return h&7&&(_=d&7),h&8&&(_=_|d&8),h&48&&(_=_|d&48),_}function $Bs(s,c){return s===c||s!==void 0&&c!==void 0&&s.size===c.size&&!RB(s,g=>!c.has(g))}function ews(s,c){var g,d;let h=cR.create(s,c,!1);h.program=s;let _=s.getCompilerOptions();h.compilerOptions=_;let S=_.outFile;h.semanticDiagnosticsPerFile=new Map,S&&_.composite&&c?.outSignature&&S===c.compilerOptions.outFile&&(h.outSignature=c.outSignature&&Grn(_,c.compilerOptions,c.outSignature)),h.changedFilesSet=new Set,h.latestChangedDtsFile=_.composite?c?.latestChangedDtsFile:void 0,h.checkPending=h.compilerOptions.noCheck?!0:void 0;let R=cR.canReuseOldState(h.referencedMap,c),T=R?c.compilerOptions:void 0,O=R&&!Obe(_,T),V=_.composite&&c?.emitSignatures&&!S&&!RLe(_,c.compilerOptions),M=!0;R?((g=c.changedFilesSet)==null||g.forEach(Ee=>h.changedFilesSet.add(Ee)),!S&&((d=c.affectedFilesPendingEmit)!=null&&d.size)&&(h.affectedFilesPendingEmit=new Map(c.affectedFilesPendingEmit),h.seenAffectedFiles=new Set),h.programEmitPending=c.programEmitPending,S&&h.changedFilesSet.size&&(O=!1,M=!1),h.hasErrorsFromOldState=c.hasErrors):h.buildInfoEmitPending=WW(_);let ee=h.referencedMap,re=R?c.referencedMap:void 0,ge=O&&!_.skipLibCheck==!T.skipLibCheck,Ie=ge&&!_.skipDefaultLibCheck==!T.skipDefaultLibCheck;if(h.fileInfos.forEach((Ee,Ne)=>{var Te;let Ze,Pe;if(!R||!(Ze=c.fileInfos.get(Ne))||Ze.version!==Ee.version||Ze.impliedFormat!==Ee.impliedFormat||!$Bs(Pe=ee&&ee.getValues(Ne),re&&re.getValues(Ne))||Pe&&RB(Pe,Ke=>!h.fileInfos.has(Ke)&&c.fileInfos.has(Ke)))_e(Ne);else{let Ke=s.getSourceFileByPath(Ne),et=M?(Te=c.emitDiagnosticsPerFile)==null?void 0:Te.get(Ne):void 0;if(et&&(h.emitDiagnosticsPerFile??(h.emitDiagnosticsPerFile=new Map)).set(Ne,c.hasReusableDiagnostic?Zrn(et,Ne,s):Frn(et,s)),O){if(Ke.isDeclarationFile&&!ge||Ke.hasNoDefaultLib&&!Ie)return;let Ye=c.semanticDiagnosticsPerFile.get(Ne);Ye&&(h.semanticDiagnosticsPerFile.set(Ne,c.hasReusableDiagnostic?Zrn(Ye,Ne,s):Frn(Ye,s)),(h.semanticDiagnosticsFromOldState??(h.semanticDiagnosticsFromOldState=new Set)).add(Ne))}}if(V){let Ke=c.emitSignatures.get(Ne);Ke&&(h.emitSignatures??(h.emitSignatures=new Map)).set(Ne,Grn(_,c.compilerOptions,Ke))}}),R&&Fh(c.fileInfos,(Ee,Ne)=>h.fileInfos.has(Ne)?!1:Ee.affectsGlobalScope?!0:(h.buildInfoEmitPending=!0,!!S)))cR.getAllFilesExcludingDefaultLibraryFile(h,s,void 0).forEach(Ee=>_e(Ee.resolvedPath));else if(T){let Ee=TLe(_,T)?zW(_):DVe(_,T);Ee!==0&&(S?h.changedFilesSet.size||(h.programEmitPending=h.programEmitPending?h.programEmitPending|Ee:Ee):(s.getSourceFiles().forEach(Ne=>{h.changedFilesSet.has(Ne.resolvedPath)||Qtt(h,Ne.resolvedPath,Ee)}),pe.assert(!h.seenAffectedFiles||!h.seenAffectedFiles.size),h.seenAffectedFiles=h.seenAffectedFiles||new Set),h.buildInfoEmitPending=!0)}return R&&h.semanticDiagnosticsPerFile.size!==h.fileInfos.size&&c.checkPending!==h.checkPending&&(h.buildInfoEmitPending=!0),h;function _e(Ee){h.changedFilesSet.add(Ee),S&&(O=!1,M=!1,h.semanticDiagnosticsFromOldState=void 0,h.semanticDiagnosticsPerFile.clear(),h.emitDiagnosticsPerFile=void 0),h.buildInfoEmitPending=!0,h.programEmitPending=void 0}}function Grn(s,c,g){return!!s.declarationMap==!!c.declarationMap?g:Xs(g)?[g]:g[0]}function Frn(s,c){return s.length?Er(s,g=>{if(Xs(g.messageText))return g;let d=o5t(g.messageText,g.file,c,h=>{var _;return(_=h.repopulateInfo)==null?void 0:_.call(h)});return d===g.messageText?g:{...g,messageText:d}}):s}function o5t(s,c,g,d){let h=d(s);if(h===!0)return{...E7(c),next:a5t(s.next,c,g,d)};if(h)return{...QJ(c,g,h.moduleReference,h.mode,h.packageName||h.moduleReference),next:a5t(s.next,c,g,d)};let _=a5t(s.next,c,g,d);return _===s.next?s:{...s,next:_}}function a5t(s,c,g,d){return Er(s,h=>o5t(h,c,g,d))}function Zrn(s,c,g){if(!s.length)return E;let d;return s.map(_=>{let S=Lrn(_,c,g,h);S.reportsUnnecessary=_.reportsUnnecessary,S.reportsDeprecated=_.reportDeprecated,S.source=_.source,S.skippedOn=_.skippedOn;let{relatedInformation:R}=_;return S.relatedInformation=R?R.length?R.map(T=>Lrn(T,c,g,h)):[]:void 0,S});function h(_){return d??(d=Mo(Xc(t5(g.getCompilerOptions()),g.getCurrentDirectory()))),Pu(_,d,g.getCanonicalFileName)}}function Lrn(s,c,g,d){let{file:h}=s,_=h!==!1?g.getSourceFileByPath(h?d(h):c):void 0;return{...s,file:_,messageText:Xs(s.messageText)?s.messageText:o5t(s.messageText,_,g,S=>S.info)}}function tws(s){cR.releaseCache(s),s.program=void 0}function c5t(s,c){pe.assert(!c||!s.affectedFiles||s.affectedFiles[s.affectedFilesIndex-1]!==c||!s.semanticDiagnosticsPerFile.has(c.resolvedPath))}function Vrn(s,c,g){for(var d;;){let{affectedFiles:h}=s;if(h){let R=s.seenAffectedFiles,T=s.affectedFilesIndex;for(;T{let R=g?_&55:_&7;R?s.affectedFilesPendingEmit.set(S,R):s.affectedFilesPendingEmit.delete(S)}),s.programEmitPending)){let _=g?s.programEmitPending&55:s.programEmitPending&7;_?s.programEmitPending=_:s.programEmitPending=void 0}}function kVe(s,c,g,d){let h=DVe(s,c);return g&&(h=h&56),d&&(h=h&8),h}function Ptt(s){return s?8:56}function rws(s,c,g){var d;if((d=s.affectedFilesPendingEmit)!=null&&d.size)return Fh(s.affectedFilesPendingEmit,(h,_)=>{var S;let R=s.program.getSourceFileByPath(_);if(!R||!kW(R,s.program)){s.affectedFilesPendingEmit.delete(_);return}let T=(S=s.seenEmittedFiles)==null?void 0:S.get(R.resolvedPath),O=kVe(h,T,c,g);if(O)return{affectedFile:R,emitKind:O}})}function nws(s,c){var g;if((g=s.emitDiagnosticsPerFile)!=null&&g.size)return Fh(s.emitDiagnosticsPerFile,(d,h)=>{var _;let S=s.program.getSourceFileByPath(h);if(!S||!kW(S,s.program)){s.emitDiagnosticsPerFile.delete(h);return}let R=((_=s.seenEmittedFiles)==null?void 0:_.get(S.resolvedPath))||0;if(!(R&Ptt(c)))return{affectedFile:S,diagnostics:d,seenKind:R}})}function Orn(s){if(!s.cleanedDiagnosticsOfLibFiles){s.cleanedDiagnosticsOfLibFiles=!0;let c=s.program.getCompilerOptions();F(s.program.getSourceFiles(),g=>s.program.isSourceFileDefaultLibrary(g)&&!PLe(g,c,s.program)&&u5t(s,g.resolvedPath))}}function iws(s,c,g,d){if(u5t(s,c.resolvedPath),s.allFilesExcludingDefaultLibraryFile===s.affectedFiles){Orn(s),cR.updateShapeSignature(s,s.program,c,g,d);return}s.compilerOptions.assumeChangesOnlyAffectDirectDependencies||sws(s,c,g,d)}function l5t(s,c,g,d,h){if(u5t(s,c),!s.changedFilesSet.has(c)){let _=s.program.getSourceFileByPath(c);_&&(cR.updateShapeSignature(s,s.program,_,d,h,!0),g?Qtt(s,c,zW(s.compilerOptions)):Wy(s.compilerOptions)&&Qtt(s,c,s.compilerOptions.declarationMap?56:24))}}function u5t(s,c){return s.semanticDiagnosticsFromOldState?(s.semanticDiagnosticsFromOldState.delete(c),s.semanticDiagnosticsPerFile.delete(c),!s.semanticDiagnosticsFromOldState.size):!0}function Prn(s,c){let g=pe.checkDefined(s.oldSignatures).get(c)||void 0;return pe.checkDefined(s.fileInfos.get(c)).signature!==g}function g5t(s,c,g,d,h){var _;return(_=s.fileInfos.get(c))!=null&&_.affectsGlobalScope?(cR.getAllFilesExcludingDefaultLibraryFile(s,s.program,void 0).forEach(S=>l5t(s,S.resolvedPath,g,d,h)),Orn(s),!0):!1}function sws(s,c,g,d){var h,_;if(!s.referencedMap||!s.changedFilesSet.has(c.resolvedPath)||!Prn(s,c.resolvedPath))return;if(lS(s.compilerOptions)){let T=new Map;T.set(c.resolvedPath,!0);let O=cR.getReferencedByPaths(s,c.resolvedPath);for(;O.length>0;){let V=O.pop();if(!T.has(V)){if(T.set(V,!0),g5t(s,V,!1,g,d))return;if(l5t(s,V,!1,g,d),Prn(s,V)){let M=s.program.getSourceFileByPath(V);O.push(...cR.getReferencedByPaths(s,M.resolvedPath))}}}}let S=new Set,R=!!((h=c.symbol)!=null&&h.exports)&&!!Fh(c.symbol.exports,T=>{if(T.flags&128)return!0;let O=LC(T,s.program.getTypeChecker());return O===T?!1:(O.flags&128)!==0&&zt(O.declarations,V=>ms(V)===c)});(_=s.referencedMap.getKeys(c.resolvedPath))==null||_.forEach(T=>{if(g5t(s,T,R,g,d))return!0;let O=s.referencedMap.getKeys(T);return O&&RB(O,V=>Mrn(s,V,R,S,g,d))})}function Mrn(s,c,g,d,h,_){var S;if(Ar(d,c)){if(g5t(s,c,g,h,_))return!0;l5t(s,c,g,h,_),(S=s.referencedMap.getKeys(c))==null||S.forEach(R=>Mrn(s,R,g,d,h,_))}}function Mtt(s,c,g,d){return s.compilerOptions.noCheck?E:Nn(ows(s,c,g,d),s.program.getProgramDiagnostics(c))}function ows(s,c,g,d){d??(d=s.semanticDiagnosticsPerFile);let h=c.resolvedPath,_=d.get(h);if(_)return RVe(_,s.compilerOptions);let S=s.program.getBindAndCheckDiagnostics(c,g);return d.set(h,S),s.buildInfoEmitPending=!0,RVe(S,s.compilerOptions)}function A5t(s){var c;return!!((c=s.options)!=null&&c.outFile)}function m1e(s){return!!s.fileNames}function aws(s){return!m1e(s)&&!!s.root}function Hrn(s){s.hasErrors===void 0&&(WW(s.compilerOptions)?s.hasErrors=!zt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return h===void 0||!!h.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})&&(Yrn(s)||zt(s.program.getSourceFiles(),c=>!!s.program.getProgramDiagnostics(c).length)):s.hasErrors=zt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return!!h?.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})||Yrn(s))}function Yrn(s){return!!s.program.getConfigFileParsingDiagnostics().length||!!s.program.getSyntacticDiagnostics().length||!!s.program.getOptionsDiagnostics().length||!!s.program.getGlobalDiagnostics().length}function Qrn(s){return Hrn(s),s.buildInfoEmitPending??(s.buildInfoEmitPending=!!s.hasErrorsFromOldState!=!!s.hasErrors)}function cws(s){var c,g;let d=s.program.getCurrentDirectory(),h=Mo(Xc(t5(s.compilerOptions),d)),_=s.latestChangedDtsFile?Ne(s.latestChangedDtsFile):void 0,S=[],R=new Map,T=new Set(s.program.getRootFileNames().map(je=>Pu(je,d,s.program.getCanonicalFileName)));if(Hrn(s),!WW(s.compilerOptions))return{root:Do(T,Wt=>Te(Wt)),errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};let O=[];if(s.compilerOptions.outFile){let je=Do(s.fileInfos.entries(),([_r,Gt])=>{let it=Ze(_r);return Ke(_r,it),Gt.impliedFormat?{version:Gt.version,impliedFormat:Gt.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:Gt.version});return{fileNames:S,fileInfos:je,root:O,resolvedRoot:et(),options:Ye(s.compilerOptions),semanticDiagnosticsPerFile:s.changedFilesSet.size?void 0:at(),emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),outSignature:s.outSignature,latestChangedDtsFile:_,pendingEmit:s.programEmitPending?s.programEmitPending===zW(s.compilerOptions)?!1:s.programEmitPending:void 0,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C}}let V,M,ee,re=Do(s.fileInfos.entries(),([je,Wt])=>{var _r,Gt;let it=Ze(je);Ke(je,it),pe.assert(S[it-1]===Te(je));let kt=(_r=s.oldSignatures)==null?void 0:_r.get(je),tr=kt!==void 0?kt||void 0:Wt.signature;if(s.compilerOptions.composite){let ur=s.program.getSourceFileByPath(je);if(!Zu(ur)&&kW(ur,s.program)){let Gr=(Gt=s.emitSignatures)==null?void 0:Gt.get(je);Gr!==tr&&(ee=Ft(ee,Gr===void 0?it:[it,!Xs(Gr)&&Gr[0]===tr?E:Gr]))}}return Wt.version===tr?Wt.affectsGlobalScope||Wt.impliedFormat?{version:Wt.version,signature:void 0,affectsGlobalScope:Wt.affectsGlobalScope,impliedFormat:Wt.impliedFormat}:Wt.version:tr!==void 0?kt===void 0?Wt:{version:Wt.version,signature:tr,affectsGlobalScope:Wt.affectsGlobalScope,impliedFormat:Wt.impliedFormat}:{version:Wt.version,signature:!1,affectsGlobalScope:Wt.affectsGlobalScope,impliedFormat:Wt.impliedFormat}}),ge;(c=s.referencedMap)!=null&&c.size()&&(ge=Do(s.referencedMap.keys()).sort(Ca).map(je=>[Ze(je),Pe(s.referencedMap.getValues(je))]));let Ie=at(),_e;if((g=s.affectedFilesPendingEmit)!=null&&g.size){let je=zW(s.compilerOptions),Wt=new Set;for(let _r of Do(s.affectedFilesPendingEmit.keys()).sort(Ca))if(Ar(Wt,_r)){let Gt=s.program.getSourceFileByPath(_r);if(!Gt||!kW(Gt,s.program))continue;let it=Ze(_r),kt=s.affectedFilesPendingEmit.get(_r);_e=Ft(_e,kt===je?it:kt===24?[it]:[it,kt])}}return{fileNames:S,fileIdsList:V,fileInfos:re,root:O,resolvedRoot:et(),options:Ye(s.compilerOptions),referencedMap:ge,semanticDiagnosticsPerFile:Ie,emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),affectedFilesPendingEmit:_e,emitSignatures:ee,latestChangedDtsFile:_,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};function Ne(je){return Te(Xc(je,d))}function Te(je){return Im(_p(h,je,s.program.getCanonicalFileName))}function Ze(je){let Wt=R.get(je);return Wt===void 0&&(S.push(Te(je)),R.set(je,Wt=S.length)),Wt}function Pe(je){let Wt=Do(je.keys(),Ze).sort(Zt),_r=Wt.join(),Gt=M?.get(_r);return Gt===void 0&&(V=Ft(V,Wt),(M??(M=new Map)).set(_r,Gt=V.length)),Gt}function Ke(je,Wt){let _r=s.program.getSourceFile(je);if(!s.program.getFileIncludeReasons().get(_r.path).some(tr=>tr.kind===0))return;if(!O.length)return O.push(Wt);let Gt=O[O.length-1],it=Ki(Gt);if(it&&Gt[1]===Wt-1)return Gt[1]=Wt;if(it||O.length===1||Gt!==Wt-1)return O.push(Wt);let kt=O[O.length-2];return!ws(kt)||kt!==Gt-1?O.push(Wt):(O[O.length-2]=[kt,Wt],O.length=O.length-1)}function et(){let je;return T.forEach(Wt=>{let _r=s.program.getSourceFileByPath(Wt);_r&&Wt!==_r.resolvedPath&&(je=Ft(je,[Ze(_r.resolvedPath),Ze(Wt)]))}),je}function Ye(je){let Wt,{optionsNameMap:_r}=Wie();for(let Gt of yg(je).sort(Ca)){let it=_r.get(Gt.toLowerCase());it?.affectsBuildInfo&&((Wt||(Wt={}))[Gt]=Tt(it,je[Gt]))}return Wt}function Tt(je,Wt){if(je){if(pe.assert(je.type!=="listOrElement"),je.type==="list"){let _r=Wt;if(je.element.isFilePath&&_r.length)return _r.map(Ne)}else if(je.isFilePath)return Ne(Wt)}return Wt}function at(){let je;return s.fileInfos.forEach((Wt,_r)=>{let Gt=s.semanticDiagnosticsPerFile.get(_r);Gt?Gt.length&&(je=Ft(je,[Ze(_r),Ct(Gt,_r)])):s.changedFilesSet.has(_r)||(je=Ft(je,Ze(_r)))}),je}function Qe(){var je;let Wt;if(!((je=s.emitDiagnosticsPerFile)!=null&&je.size))return Wt;for(let _r of Do(s.emitDiagnosticsPerFile.keys()).sort(Ca)){let Gt=s.emitDiagnosticsPerFile.get(_r);Wt=Ft(Wt,[Ze(_r),Ct(Gt,_r)])}return Wt}function Ct(je,Wt){return pe.assert(!!je.length),je.map(_r=>{let Gt=mt(_r,Wt);Gt.reportsUnnecessary=_r.reportsUnnecessary,Gt.reportDeprecated=_r.reportsDeprecated,Gt.source=_r.source,Gt.skippedOn=_r.skippedOn;let{relatedInformation:it}=_r;return Gt.relatedInformation=it?it.length?it.map(kt=>mt(kt,Wt)):[]:void 0,Gt})}function mt(je,Wt){let{file:_r}=je;return{...je,file:_r?_r.resolvedPath===Wt?void 0:Te(_r.resolvedPath):!1,messageText:Xs(je.messageText)?je.messageText:yt(je.messageText)}}function yt(je){if(je.repopulateInfo)return{info:je.repopulateInfo(),next:Rt(je.next)};let Wt=Rt(je.next);return Wt===je.next?je:{...je,next:Wt}}function Rt(je){return je&&(F(je,(Wt,_r)=>{let Gt=yt(Wt);if(Wt===Gt)return;let it=_r>0?je.slice(0,_r-1):[];it.push(Gt);for(let kt=_r+1;kt(s[s.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",s[s.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",s))(d5t||{});function xVe(s,c,g,d,h,_){let S,R,T;return s===void 0?(pe.assert(c===void 0),S=g,T=d,pe.assert(!!T),R=T.getProgram()):Ki(s)?(T=d,R=I1e({rootNames:s,options:c,host:g,oldProgram:T&&T.getProgramOrUndefined(),configFileParsingDiagnostics:h,projectReferences:_}),S=g):(R=s,S=c,T=g,h=d),{host:S,newProgram:R,oldProgram:T,configFileParsingDiagnostics:h||E}}function Xrn(s,c){return c?.sourceMapUrlPos!==void 0?s.substring(0,c.sourceMapUrlPos):s}function Htt(s,c,g,d,h){var _;g=Xrn(g,h);let S;return(_=h?.diagnostics)!=null&&_.length&&(g+=h.diagnostics.map(O=>`${T(O)}${$S[O.category]}${O.code}: ${R(O.messageText)}`).join(` -`)),(d.createHash??iy)(g);function R(O){return Xs(O)?O:O===void 0?"":O.next?O.messageText+O.next.map(R).join(` -`):O.messageText}function T(O){return O.file.resolvedPath===c.resolvedPath?`(${O.start},${O.length})`:(S===void 0&&(S=Mo(c.resolvedPath)),`${Im(_p(S,O.file.resolvedPath,s.getCanonicalFileName))}(${O.start},${O.length})`)}}function lws(s,c,g){return(c.createHash??iy)(Xrn(s,g))}function Ytt(s,{newProgram:c,host:g,oldProgram:d,configFileParsingDiagnostics:h}){let _=d&&d.state;if(_&&c===_.program&&h===c.getConfigFileParsingDiagnostics())return c=void 0,_=void 0,d;let S=ews(c,_);c.getBuildInfo=()=>cws(qBs(S)),c=void 0,d=void 0,_=void 0;let R=Jtt(S,h);return R.state=S,R.hasChangedEmitSignature=()=>!!S.hasChangedEmitSignature,R.getAllDependencies=Ne=>cR.getAllDependencies(S,pe.checkDefined(S.program),Ne),R.getSemanticDiagnostics=Ee,R.getDeclarationDiagnostics=Ie,R.emit=re,R.releaseProgram=()=>tws(S),s===0?R.getSemanticDiagnosticsOfNextAffectedFile=_e:s===1?(R.getSemanticDiagnosticsOfNextAffectedFile=_e,R.emitNextAffectedFile=M,R.emitBuildInfo=T):rl(),R;function T(Ne,Te){if(pe.assert(jie(S)),Qrn(S)){let Ze=S.program.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,Ze}return Vtt}function O(Ne,Te,Ze,Pe,Ke){var et,Ye,Tt,at;pe.assert(jie(S));let Qe=Vrn(S,Te,g),Ct=zW(S.compilerOptions),mt=Ke?8:Ze?Ct&56:Ct;if(!Qe){if(S.compilerOptions.outFile){if(S.programEmitPending&&(mt=kVe(S.programEmitPending,S.seenProgramEmit,Ze,Ke),mt&&(Qe=S.program)),!Qe&&((et=S.emitDiagnosticsPerFile)!=null&&et.size)){let Lt=S.seenProgramEmit||0;if(!(Lt&Ptt(Ke))){S.seenProgramEmit=Ptt(Ke)|Lt;let je=[];return S.emitDiagnosticsPerFile.forEach(Wt=>Pr(je,Wt)),{result:{emitSkipped:!0,diagnostics:je},affected:S.program}}}}else{let Lt=rws(S,Ze,Ke);if(Lt)({affectedFile:Qe,emitKind:mt}=Lt);else{let je=nws(S,Ke);if(je)return(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(je.affectedFile.resolvedPath,je.seenKind|Ptt(Ke)),{result:{emitSkipped:!0,diagnostics:je.diagnostics},affected:je.affectedFile}}}if(!Qe){if(Ke||!Qrn(S))return;let Lt=S.program,je=Lt.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,{result:je,affected:Lt}}}let yt;mt&7&&(yt=0),mt&56&&(yt=yt===void 0?1:void 0);let Rt=Ke?{emitSkipped:!0,diagnostics:S.program.getDeclarationDiagnostics(Qe===S.program?void 0:Qe,Te)}:S.program.emit(Qe===S.program?void 0:Qe,ee(Ne,Pe),Te,yt,Pe,void 0,!0);if(Qe!==S.program){let Lt=Qe;S.seenAffectedFiles.add(Lt.resolvedPath),S.affectedFilesIndex!==void 0&&S.affectedFilesIndex++,S.buildInfoEmitPending=!0;let je=((Ye=S.seenEmittedFiles)==null?void 0:Ye.get(Lt.resolvedPath))||0;(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Lt.resolvedPath,mt|je);let Wt=((Tt=S.affectedFilesPendingEmit)==null?void 0:Tt.get(Lt.resolvedPath))||Ct,_r=DVe(Wt,mt|je);_r?(S.affectedFilesPendingEmit??(S.affectedFilesPendingEmit=new Map)).set(Lt.resolvedPath,_r):(at=S.affectedFilesPendingEmit)==null||at.delete(Lt.resolvedPath),Rt.diagnostics.length&&(S.emitDiagnosticsPerFile??(S.emitDiagnosticsPerFile=new Map)).set(Lt.resolvedPath,Rt.diagnostics)}else S.changedFilesSet.clear(),S.programEmitPending=S.changedFilesSet.size?DVe(Ct,mt):S.programEmitPending?DVe(S.programEmitPending,mt):void 0,S.seenProgramEmit=mt|(S.seenProgramEmit||0),V(Rt.diagnostics),S.buildInfoEmitPending=!0;return{result:Rt,affected:Qe}}function V(Ne){let Te;Ne.forEach(Ze=>{if(!Ze.file)return;let Pe=Te?.get(Ze.file.resolvedPath);Pe||(Te??(Te=new Map)).set(Ze.file.resolvedPath,Pe=[]),Pe.push(Ze)}),Te&&(S.emitDiagnosticsPerFile=Te)}function M(Ne,Te,Ze,Pe){return O(Ne,Te,Ze,Pe,!1)}function ee(Ne,Te){return pe.assert(jie(S)),Wy(S.compilerOptions)?(Ze,Pe,Ke,et,Ye,Tt)=>{var at,Qe,Ct;if(PC(Ze))if(S.compilerOptions.outFile){if(S.compilerOptions.composite){let yt=mt(S.outSignature,void 0);if(!yt)return Tt.skippedDtsWrite=!0;S.outSignature=yt}}else{pe.assert(Ye?.length===1);let yt;if(!Te){let Rt=Ye[0],Lt=S.fileInfos.get(Rt.resolvedPath);if(Lt.signature===Rt.version){let je=Htt(S.program,Rt,Pe,g,Tt);(at=Tt?.diagnostics)!=null&&at.length||(yt=je),je!==Rt.version&&(g.storeSignatureInfo&&(S.signatureInfo??(S.signatureInfo=new Map)).set(Rt.resolvedPath,1),S.affectedFiles&&((Qe=S.oldSignatures)==null?void 0:Qe.get(Rt.resolvedPath))===void 0&&(S.oldSignatures??(S.oldSignatures=new Map)).set(Rt.resolvedPath,Lt.signature||!1),Lt.signature=je)}}if(S.compilerOptions.composite){let Rt=Ye[0].resolvedPath;if(yt=mt((Ct=S.emitSignatures)==null?void 0:Ct.get(Rt),yt),!yt)return Tt.skippedDtsWrite=!0;(S.emitSignatures??(S.emitSignatures=new Map)).set(Rt,yt)}}Ne?Ne(Ze,Pe,Ke,et,Ye,Tt):g.writeFile?g.writeFile(Ze,Pe,Ke,et,Ye,Tt):S.program.writeFile(Ze,Pe,Ke,et,Ye,Tt);function mt(yt,Rt){let Lt=!yt||Xs(yt)?yt:yt[0];if(Rt??(Rt=lws(Pe,g,Tt)),Rt===Lt){if(yt===Lt)return;Tt?Tt.differsOnlyInMap=!0:Tt={differsOnlyInMap:!0}}else S.hasChangedEmitSignature=!0,S.latestChangedDtsFile=Ze;return Rt}}:Ne||$i(g,g.writeFile)}function re(Ne,Te,Ze,Pe,Ke){pe.assert(jie(S)),s===1&&c5t(S,Ne);let et=Wtt(R,Ne,Te,Ze);if(et)return et;if(!Ne)if(s===1){let Tt=[],at=!1,Qe,Ct=[],mt;for(;mt=M(Te,Ze,Pe,Ke);)at=at||mt.result.emitSkipped,Qe=Pr(Qe,mt.result.diagnostics),Ct=Pr(Ct,mt.result.emittedFiles),Tt=Pr(Tt,mt.result.sourceMaps);return{emitSkipped:at,diagnostics:Qe||E,emittedFiles:Ct,sourceMaps:Tt}}else Wrn(S,Pe,!1);let Ye=S.program.emit(Ne,ee(Te,Ke),Ze,Pe,Ke);return ge(Ne,Pe,!1,Ye.diagnostics),Ye}function ge(Ne,Te,Ze,Pe){!Ne&&s!==1&&(Wrn(S,Te,Ze),V(Pe))}function Ie(Ne,Te){var Ze;if(pe.assert(jie(S)),s===1){c5t(S,Ne);let Pe,Ke;for(;Pe=O(void 0,Te,void 0,void 0,!0);)Ne||(Ke=Pr(Ke,Pe.result.diagnostics));return(Ne?(Ze=S.emitDiagnosticsPerFile)==null?void 0:Ze.get(Ne.resolvedPath):Ke)||E}else{let Pe=S.program.getDeclarationDiagnostics(Ne,Te);return ge(Ne,void 0,!0,Pe),Pe}}function _e(Ne,Te){for(pe.assert(jie(S));;){let Ze=Vrn(S,Ne,g),Pe;if(Ze)if(Ze!==S.program){let Ke=Ze;if((!Te||!Te(Ke))&&(Pe=Mtt(S,Ke,Ne)),S.seenAffectedFiles.add(Ke.resolvedPath),S.affectedFilesIndex++,S.buildInfoEmitPending=!0,!Pe)continue}else{let Ke,et=new Map;S.program.getSourceFiles().forEach(Ye=>Ke=Pr(Ke,Mtt(S,Ye,Ne,et))),S.semanticDiagnosticsPerFile=et,Pe=Ke||E,S.changedFilesSet.clear(),S.programEmitPending=zW(S.compilerOptions),S.compilerOptions.noCheck||(S.checkPending=void 0),S.buildInfoEmitPending=!0}else{S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0);return}return{result:Pe,affected:Ze}}}function Ee(Ne,Te){if(pe.assert(jie(S)),c5t(S,Ne),Ne)return Mtt(S,Ne,Te);for(;;){let Pe=_e(Te);if(!Pe)break;if(Pe.affected===S.program)return Pe.result}let Ze;for(let Pe of S.program.getSourceFiles())Ze=Pr(Ze,Mtt(S,Pe,Te));return S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0),Ze||E}}function Qtt(s,c,g){var d,h;let _=((d=s.affectedFilesPendingEmit)==null?void 0:d.get(c))||0;(s.affectedFilesPendingEmit??(s.affectedFilesPendingEmit=new Map)).set(c,_|g),(h=s.emitDiagnosticsPerFile)==null||h.delete(c)}function p5t(s){return Xs(s)?{version:s,signature:s,affectsGlobalScope:void 0,impliedFormat:void 0}:Xs(s.signature)?s:{version:s.version,signature:s.signature===!1?void 0:s.version,affectsGlobalScope:s.affectsGlobalScope,impliedFormat:s.impliedFormat}}function f5t(s,c){return ws(s)?c:s[1]||24}function I5t(s,c){return s||zW(c||{})}function h5t(s,c,g){var d,h,_,S;let R=Mo(Xc(c,g.getCurrentDirectory())),T=bd(g.useCaseSensitiveFileNames()),O,V=(d=s.fileNames)==null?void 0:d.map(Ie),M,ee=s.latestChangedDtsFile?_e(s.latestChangedDtsFile):void 0,re=new Map,ge=new Set(lt(s.changeFileSet,Ee));if(A5t(s))s.fileInfos.forEach((Ke,et)=>{let Ye=Ee(et+1);re.set(Ye,Xs(Ke)?{version:Ke,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:Ke)}),O={fileInfos:re,compilerOptions:s.options?Y9e(s.options,_e):{},semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:Pe(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,latestChangedDtsFile:ee,outSignature:s.outSignature,programEmitPending:s.pendingEmit===void 0?void 0:I5t(s.pendingEmit,s.options),hasErrors:s.errors,checkPending:s.checkPending};else{M=(h=s.fileIdsList)==null?void 0:h.map(Ye=>new Set(Ye.map(Ee)));let Ke=(_=s.options)!=null&&_.composite&&!s.options.outFile?new Map:void 0;s.fileInfos.forEach((Ye,Tt)=>{let at=Ee(Tt+1),Qe=p5t(Ye);re.set(at,Qe),Ke&&Qe.signature&&Ke.set(at,Qe.signature)}),(S=s.emitSignatures)==null||S.forEach(Ye=>{if(ws(Ye))Ke.delete(Ee(Ye));else{let Tt=Ee(Ye[0]);Ke.set(Tt,!Xs(Ye[1])&&!Ye[1].length?[Ke.get(Tt)]:Ye[1])}});let et=s.affectedFilesPendingEmit?zW(s.options||{}):void 0;O={fileInfos:re,compilerOptions:s.options?Y9e(s.options,_e):{},referencedMap:Te(s.referencedMap,s.options??{}),semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:Pe(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,affectedFilesPendingEmit:s.affectedFilesPendingEmit&&Ru(s.affectedFilesPendingEmit,Ye=>Ee(ws(Ye)?Ye:Ye[0]),Ye=>f5t(Ye,et)),latestChangedDtsFile:ee,emitSignatures:Ke?.size?Ke:void 0,hasErrors:s.errors,checkPending:s.checkPending}}return{state:O,getProgram:rl,getProgramOrUndefined:Am,releaseProgram:Dc,getCompilerOptions:()=>O.compilerOptions,getSourceFile:rl,getSourceFiles:rl,getOptionsDiagnostics:rl,getGlobalDiagnostics:rl,getConfigFileParsingDiagnostics:rl,getSyntacticDiagnostics:rl,getDeclarationDiagnostics:rl,getSemanticDiagnostics:rl,emit:rl,getAllDependencies:rl,getCurrentDirectory:rl,emitNextAffectedFile:rl,getSemanticDiagnosticsOfNextAffectedFile:rl,emitBuildInfo:rl,close:Dc,hasChangedEmitSignature:As};function Ie(Ke){return Pu(Ke,R,T)}function _e(Ke){return Xc(Ke,R)}function Ee(Ke){return V[Ke-1]}function Ne(Ke){return M[Ke-1]}function Te(Ke,et){let Ye=cR.createReferencedMap(et);return!Ye||!Ke||Ke.forEach(([Tt,at])=>Ye.set(Ee(Tt),Ne(at))),Ye}function Ze(Ke){let et=new Map(lr(re.keys(),Ye=>ge.has(Ye)?void 0:[Ye,E]));return Ke?.forEach(Ye=>{ws(Ye)?et.delete(Ee(Ye)):et.set(Ee(Ye[0]),Ye[1])}),et}function Pe(Ke){return Ke&&Ru(Ke,et=>Ee(et[0]),et=>et[1])}}function Xtt(s,c,g){let d=Mo(Xc(c,g.getCurrentDirectory())),h=bd(g.useCaseSensitiveFileNames()),_=new Map,S=0,R=new Map,T=new Map(s.resolvedRoot);return s.fileInfos.forEach((V,M)=>{let ee=Pu(s.fileNames[M],d,h),re=Xs(V)?V:V.version;if(_.set(ee,re),SPu(_,d,h))}function Jtt(s,c){return{state:void 0,getProgram:g,getProgramOrUndefined:()=>s.program,releaseProgram:()=>s.program=void 0,getCompilerOptions:()=>s.compilerOptions,getSourceFile:d=>g().getSourceFile(d),getSourceFiles:()=>g().getSourceFiles(),getOptionsDiagnostics:d=>g().getOptionsDiagnostics(d),getGlobalDiagnostics:d=>g().getGlobalDiagnostics(d),getConfigFileParsingDiagnostics:()=>c,getSyntacticDiagnostics:(d,h)=>g().getSyntacticDiagnostics(d,h),getDeclarationDiagnostics:(d,h)=>g().getDeclarationDiagnostics(d,h),getSemanticDiagnostics:(d,h)=>g().getSemanticDiagnostics(d,h),emit:(d,h,_,S,R)=>g().emit(d,h,_,S,R),emitBuildInfo:(d,h)=>g().emitBuildInfo(d,h),getAllDependencies:rl,getCurrentDirectory:()=>g().getCurrentDirectory(),close:Dc};function g(){return pe.checkDefined(s.program)}}function Jrn(s,c,g,d,h,_){return Ytt(0,xVe(s,c,g,d,h,_))}function Utt(s,c,g,d,h,_){return Ytt(1,xVe(s,c,g,d,h,_))}function Urn(s,c,g,d,h,_){let{newProgram:S,configFileParsingDiagnostics:R}=xVe(s,c,g,d,h,_);return Jtt({program:S,compilerOptions:S.getCompilerOptions()},R)}function GVe(s){return di(s,"/node_modules/.staging")?aa(s,"/.staging"):zt(Jp,c=>s.includes(c))?void 0:s}function C5t(s,c){if(c<=1)return 1;let g=1,d=s[0].search(/[a-z]:/i)===0;if(s[0]!==cg&&!d&&s[1].search(/[a-z]\$$/i)===0){if(c===2)return 2;g=2,d=!0}return d&&!s[g].match(/^users$/i)?g:s[g].match(/^workspaces$/i)?g+1:g+2}function Ktt(s,c){if(c===void 0&&(c=s.length),c<=2)return!1;let g=C5t(s,c);return c>g+1}function C1e(s){return Ktt(kp(s))}function _5t(s){return jrn(Mo(s))}function Krn(s,c){if(c.lengthh.length+1?b5t(O,T,Math.max(h.length+1,V+1),ee):{dir:g,dirPath:d,nonRecursive:!0}:zrn(O,T,T.length-1,V,M,h,ee,R)}function zrn(s,c,g,d,h,_,S,R){if(h!==-1)return b5t(s,c,h+1,S);let T=!0,O=g;if(!R){for(let V=0;V=g&&d+2uws(d,h,_,s,g,c,S)}}function uws(s,c,g,d,h,_,S){let R=FVe(s),T=WU(g,d,h,R,c,_,S);if(!s.getGlobalTypingsCacheLocation)return T;let O=s.getGlobalTypingsCacheLocation();if(O!==void 0&&!Xr(g)&&!(T.resolvedModule&&rde(T.resolvedModule.extension))){let{resolvedModule:V,failedLookupLocations:M,affectingLocations:ee,resolutionDiagnostics:re}=ZPt(pe.checkDefined(s.globalCacheResolutionModuleName)(g),s.projectName,h,R,O,c);if(V)return T.resolvedModule=V,T.failedLookupLocations=Oie(T.failedLookupLocations,M),T.affectingLocations=Oie(T.affectingLocations,ee),T.resolutionDiagnostics=Oie(T.resolutionDiagnostics,re),T}return T}function ztt(s,c,g){let d,h,_,S=new Set,R=new Set,T=new Set,O=new Map,V=new Map,M=!1,ee,re,ge,Ie,_e,Ee=!1,Ne=LA(()=>s.getCurrentDirectory()),Te=s.getCachedDirectoryStructureHost(),Ze=new Map,Pe=Mie(Ne(),s.getCanonicalFileName,s.getCompilationSettings()),Ke=new Map,et=eVe(Ne(),s.getCanonicalFileName,s.getCompilationSettings(),Pe.getPackageJsonInfoCache(),Pe.optionsToRedirectsKey),Ye=new Map,Tt=Mie(Ne(),s.getCanonicalFileName,ket(s.getCompilationSettings()),Pe.getPackageJsonInfoCache()),at=new Map,Qe=new Map,Ct=S5t(c,Ne),mt=s.toPath(Ct),yt=kp(mt),Rt=Ktt(yt),Lt=new Map,je=new Map,Wt=new Map,_r=new Map;return{rootDirForResolution:c,resolvedModuleNames:Ze,resolvedTypeReferenceDirectives:Ke,resolvedLibraries:Ye,resolvedFileToResolution:O,resolutionsWithFailedLookups:R,resolutionsWithOnlyAffectingLocations:T,directoryWatchesOfFailedLookups:at,fileWatchesOfAffectingLocations:Qe,packageDirWatchers:je,dirPathToSymlinkPackageRefCount:Wt,watchFailedLookupLocationsOfExternalModuleResolutions:si,getModuleResolutionCache:()=>Pe,startRecordingFilesWithChangedResolutions:kt,finishRecordingFilesWithChangedResolutions:tr,startCachingPerDirectoryResolution:dt,finishCachingPerDirectoryResolution:ot,resolveModuleNameLiterals:jn,resolveTypeReferenceDirectiveReferences:Cn,resolveLibrary:Zi,resolveSingleModuleNameWithoutWatching:Ns,removeResolutionsFromProjectReferenceRedirects:Pa,removeResolutionsOfFile:$c,hasChangedAutomaticTypeDirectiveNames:()=>M,invalidateResolutionOfFile:Rg,invalidateResolutionsOfFailedLookupLocations:Wn,setFilesWithInvalidatedNonRelativeUnresolvedImports:Cs,createHasInvalidatedResolutions:Gr,isFileWithInvalidatedNonRelativeUnresolvedImports:ur,updateTypeRootsWatch:Kr,closeTypeRootsWatch:nr,clear:Gt,onChangesAffectModuleResolution:it};function Gt(){Ly(at,Ev),Ly(Qe,Ev),Lt.clear(),je.clear(),Wt.clear(),S.clear(),nr(),Ze.clear(),Ke.clear(),O.clear(),R.clear(),T.clear(),ge=void 0,Ie=void 0,_e=void 0,re=void 0,ee=void 0,Ee=!1,Pe.clear(),et.clear(),Pe.update(s.getCompilationSettings()),et.update(s.getCompilationSettings()),Tt.clear(),V.clear(),Ye.clear(),M=!1}function it(){Ee=!0,Pe.clearAllExceptPackageJsonInfoCache(),et.clearAllExceptPackageJsonInfoCache(),Pe.update(s.getCompilationSettings()),et.update(s.getCompilationSettings())}function kt(){d=[]}function tr(){let hr=d;return d=void 0,hr}function ur(hr){if(!_)return!1;let Sn=_.get(hr);return!!Sn&&!!Sn.length}function Gr(hr,Sn){Wn();let Ni=h;return h=void 0,{hasInvalidatedResolutions:Gi=>hr(Gi)||Ee||!!Ni?.has(Gi)||ur(Gi),hasInvalidatedLibResolutions:Gi=>{var nn;return Sn(Gi)||!!((nn=Ye?.get(Gi))!=null&&nn.isInvalidated)}}}function dt(){Pe.isReadonly=void 0,et.isReadonly=void 0,Tt.isReadonly=void 0,Pe.getPackageJsonInfoCache().isReadonly=void 0,Pe.clearAllExceptPackageJsonInfoCache(),et.clearAllExceptPackageJsonInfoCache(),Tt.clearAllExceptPackageJsonInfoCache(),Fl(),Lt.clear()}function pr(hr){Ye.forEach((Sn,Ni)=>{var Gi;(Gi=hr?.resolvedLibReferences)!=null&&Gi.has(Ni)||(hn(Sn,s.toPath(BVe(s.getCompilationSettings(),Ne(),Ni)),OL),Ye.delete(Ni))})}function ot(hr,Sn){_=void 0,Ee=!1,Fl(),hr!==Sn&&(pr(hr),hr?.getSourceFiles().forEach(Ni=>{var Gi;let nn=((Gi=Ni.packageJsonLocations)==null?void 0:Gi.length)??0,En=V.get(Ni.resolvedPath)??E;for(let ds=En.length;dsnn)for(let ds=nn;ds{let nn=hr?.getSourceFileByPath(Gi);(!nn||nn.resolvedPath!==Gi)&&(Ni.forEach(En=>Qe.get(En).files--),V.delete(Gi))})),at.forEach(qt),Qe.forEach(Yt),je.forEach(ir),M=!1,Pe.isReadonly=!0,et.isReadonly=!0,Tt.isReadonly=!0,Pe.getPackageJsonInfoCache().isReadonly=!0,Lt.clear()}function ir(hr,Sn){hr.dirPathToWatcher.size===0&&je.delete(Sn)}function qt(hr,Sn){hr.refCount===0&&(at.delete(Sn),hr.watcher.close())}function Yt(hr,Sn){var Ni;hr.files===0&&hr.resolutions===0&&!((Ni=hr.symlinks)!=null&&Ni.size)&&(Qe.delete(Sn),hr.watcher.close())}function Tr({entries:hr,containingFile:Sn,containingSourceFile:Ni,redirectedReference:Gi,options:nn,perFileCache:En,reusedNames:ds,loader:Ht,getResolutionWithResolvedFileName:cn,deferWatchingNonRelativeResolution:wt,shouldRetryResolution:xe,logChanges:fr}){var Ue;let In=s.toPath(Sn),Hn=En.get(In)||En.set(In,Pie()).get(In),Mt=[],$r=fr&&ur(In),ri=s.getCurrentProgram(),oo=ri&&((Ue=ri.getRedirectFromSourceFile(Sn))==null?void 0:Ue.resolvedRef),Bs=oo?!Gi||Gi.sourceFile.path!==oo.sourceFile.path:!!Gi,Ys=Pie();for(let wn of hr){let Mn=Ht.nameAndMode.getName(wn),ci=Ht.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),es=Hn.get(Mn,ci);if(!Ys.has(Mn,ci)&&(Ee||Bs||!es||es.isInvalidated||$r&&!Xr(Mn)&&xe(es))){let Oi=es;es=Ht.resolve(Mn,ci),s.onDiscoveredSymlink&&gws(es)&&s.onDiscoveredSymlink(),Hn.set(Mn,ci,es),es!==Oi&&(si(Mn,es,In,cn,wt),Oi&&hn(Oi,In,cn)),fr&&d&&!tn(Oi,es)&&(d.push(In),fr=!1)}else{let Oi=FVe(s);if(XW(nn,Oi)&&!Ys.has(Mn,ci)){let Vn=cn(es);tu(Oi,En===Ze?Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,Mn,Sn,Vn?.resolvedFileName,Vn?.packageId&&gN(Vn.packageId))}}pe.assert(es!==void 0&&!es.isInvalidated),Ys.set(Mn,ci,!0),Mt.push(es)}return ds?.forEach(wn=>Ys.set(Ht.nameAndMode.getName(wn),Ht.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),!0)),Hn.size()!==Ys.size()&&Hn.forEach((wn,Mn,ci)=>{Ys.has(Mn,ci)||(hn(wn,In,cn),Hn.delete(Mn,ci))}),Mt;function tn(wn,Mn){if(wn===Mn)return!0;if(!wn||!Mn)return!1;let ci=cn(wn),es=cn(Mn);return ci===es?!0:!ci||!es?!1:ci.resolvedFileName===es.resolvedFileName}}function Cn(hr,Sn,Ni,Gi,nn,En){return Tr({entries:hr,containingFile:Sn,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:En,perFileCache:Ke,loader:vVe(Sn,Ni,Gi,FVe(s),et),getResolutionWithResolvedFileName:b7,shouldRetryResolution:ds=>ds.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function jn(hr,Sn,Ni,Gi,nn,En){return Tr({entries:hr,containingFile:Sn,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:En,perFileCache:Ze,loader:v5t(Sn,Ni,Gi,s,Pe),getResolutionWithResolvedFileName:OL,shouldRetryResolution:ds=>!ds.resolvedModule||!pz(ds.resolvedModule.extension),logChanges:g,deferWatchingNonRelativeResolution:!0})}function Zi(hr,Sn,Ni,Gi){let nn=FVe(s),En=Ye?.get(Gi);if(!En||En.isInvalidated){let ds=En;En=tVe(hr,Sn,Ni,nn,Tt);let Ht=s.toPath(Sn);si(hr,En,Ht,OL,!1),Ye.set(Gi,En),ds&&hn(ds,Ht,OL)}else if(XW(Ni,nn)){let ds=OL(En);tu(nn,ds?.resolvedFileName?ds.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,hr,Sn,ds?.resolvedFileName,ds?.packageId&&gN(ds.packageId))}return En}function Ns(hr,Sn){var Ni,Gi;let nn=s.toPath(Sn),En=Ze.get(nn),ds=En?.get(hr,void 0);if(ds&&!ds.isInvalidated)return ds;let Ht=(Ni=s.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:Ni.call(s,Pe),cn=FVe(s),wt=WU(hr,Sn,s.getCompilationSettings(),cn,Pe);return(Gi=s.afterResolveSingleModuleNameWithoutWatching)==null||Gi.call(s,Pe,hr,Sn,wt,Ht),wt}function An(hr){return di(hr,"/node_modules/@types")}function si(hr,Sn,Ni,Gi,nn){if((Sn.files??(Sn.files=new Set)).add(Ni),Sn.files.size!==1)return;!nn||Xr(hr)?Ic(Sn):S.add(Sn);let En=Gi(Sn);if(En&&En.resolvedFileName){let ds=s.toPath(En.resolvedFileName),Ht=O.get(ds);Ht||O.set(ds,Ht=new Set),Ht.add(Sn)}}function ks(hr,Sn){let Ni=s.toPath(hr),Gi=jtt(hr,Ni,Ct,mt,yt,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dir:nn,dirPath:En,nonRecursive:ds,packageDir:Ht,packageDirPath:cn}=Gi;En===mt?(pe.assert(ds),pe.assert(!Ht),Sn=!0):Oo(nn,En,Ht,cn,ds)}return Sn}function Ic(hr){var Sn;pe.assert(!!((Sn=hr.files)!=null&&Sn.size));let{failedLookupLocations:Ni,affectingLocations:Gi,alternateResult:nn}=hr;if(!Ni?.length&&!Gi?.length&&!nn)return;(Ni?.length||nn)&&R.add(hr);let En=!1;if(Ni)for(let ds of Ni)En=ks(ds,En);nn&&(En=ks(nn,En)),En&&Oo(Ct,mt,void 0,void 0,!0),ou(hr,!Ni?.length&&!nn)}function ou(hr,Sn){var Ni;pe.assert(!!((Ni=hr.files)!=null&&Ni.size));let{affectingLocations:Gi}=hr;if(Gi?.length){Sn&&T.add(hr);for(let nn of Gi)Zn(nn,!0)}}function Zn(hr,Sn){let Ni=Qe.get(hr);if(Ni){Sn?Ni.resolutions++:Ni.files++;return}let Gi=hr,nn=!1,En;s.realpath&&(Gi=s.realpath(hr),hr!==Gi&&(nn=!0,En=Qe.get(Gi)));let ds=Sn?1:0,Ht=Sn?0:1;if(!nn||!En){let cn={watcher:y5t(s.toPath(Gi))?s.watchAffectingFileLocation(Gi,(wt,xe)=>{Te?.addOrDeleteFile(wt,s.toPath(Gi),xe),ya(Gi,Pe.getPackageJsonInfoCache().getInternalMap()),s.scheduleInvalidateResolutionsOfFailedLookupLocations()}):qie,resolutions:nn?0:ds,files:nn?0:Ht,symlinks:void 0};Qe.set(Gi,cn),nn&&(En=cn)}if(nn){pe.assert(!!En);let cn={watcher:{close:()=>{var wt;let xe=Qe.get(Gi);(wt=xe?.symlinks)!=null&&wt.delete(hr)&&!xe.symlinks.size&&!xe.resolutions&&!xe.files&&(Qe.delete(Gi),xe.watcher.close())}},resolutions:ds,files:Ht,symlinks:void 0};Qe.set(hr,cn),(En.symlinks??(En.symlinks=new Set)).add(hr)}}function ya(hr,Sn){var Ni;let Gi=Qe.get(hr);Gi?.resolutions&&(re??(re=new Set)).add(hr),Gi?.files&&(ee??(ee=new Set)).add(hr),(Ni=Gi?.symlinks)==null||Ni.forEach(nn=>ya(nn,Sn)),Sn?.delete(s.toPath(hr))}function Fl(){S.forEach(Ic),S.clear()}function ba(hr,Sn,Ni,Gi,nn){pe.assert(!nn);let En=Lt.get(Gi),ds=je.get(Gi);if(En===void 0){let wt=s.realpath(Ni);En=wt!==Ni&&s.toPath(wt)!==Gi,Lt.set(Gi,En),ds?ds.isSymlink!==En&&(ds.dirPathToWatcher.forEach(xe=>{Pi(ds.isSymlink?Gi:Sn),xe.watcher=cn()}),ds.isSymlink=En):je.set(Gi,ds={dirPathToWatcher:new Map,isSymlink:En})}else pe.assertIsDefined(ds),pe.assert(En===ds.isSymlink);let Ht=ds.dirPathToWatcher.get(Sn);Ht?Ht.refCount++:(ds.dirPathToWatcher.set(Sn,{watcher:cn(),refCount:1}),En&&Wt.set(Sn,(Wt.get(Sn)??0)+1));function cn(){return En?hc(Ni,Gi,nn):hc(hr,Sn,nn)}}function Oo(hr,Sn,Ni,Gi,nn){!Gi||!s.realpath?hc(hr,Sn,nn):ba(hr,Sn,Ni,Gi,nn)}function hc(hr,Sn,Ni){let Gi=at.get(Sn);return Gi?(pe.assert(!!Ni==!!Gi.nonRecursive),Gi.refCount++):at.set(Sn,Gi={watcher:co(hr,Sn,Ni),refCount:1,nonRecursive:Ni}),Gi}function yr(hr,Sn){let Ni=s.toPath(hr),Gi=jtt(hr,Ni,Ct,mt,yt,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dirPath:nn,packageDirPath:En}=Gi;if(nn===mt)Sn=!0;else if(En&&s.realpath){let ds=je.get(En),Ht=ds.dirPathToWatcher.get(nn);if(Ht.refCount--,Ht.refCount===0&&(Pi(ds.isSymlink?En:nn),ds.dirPathToWatcher.delete(nn),ds.isSymlink)){let cn=Wt.get(nn)-1;cn===0?Wt.delete(nn):Wt.set(nn,cn)}}else Pi(nn)}return Sn}function hn(hr,Sn,Ni){if(pe.checkDefined(hr.files).delete(Sn),hr.files.size)return;hr.files=void 0;let Gi=Ni(hr);if(Gi&&Gi.resolvedFileName){let Ht=s.toPath(Gi.resolvedFileName),cn=O.get(Ht);cn?.delete(hr)&&!cn.size&&O.delete(Ht)}let{failedLookupLocations:nn,affectingLocations:En,alternateResult:ds}=hr;if(R.delete(hr)){let Ht=!1;if(nn)for(let cn of nn)Ht=yr(cn,Ht);ds&&(Ht=yr(ds,Ht)),Ht&&Pi(mt)}else En?.length&&T.delete(hr);if(En)for(let Ht of En){let cn=Qe.get(Ht);cn.resolutions--}}function Pi(hr){let Sn=at.get(hr);Sn.refCount--}function co(hr,Sn,Ni){return s.watchDirectoryOfFailedLookupLocation(hr,Gi=>{let nn=s.toPath(Gi);Te&&Te.addOrDeleteFileOrDirectory(Gi,nn),Tu(nn,Sn===nn)},Ni?0:1)}function pa(hr,Sn,Ni){let Gi=hr.get(Sn);Gi&&(Gi.forEach(nn=>hn(nn,Sn,Ni)),hr.delete(Sn))}function Pa(hr){if(!cA(hr,".json"))return;let Sn=s.getCurrentProgram();if(!Sn)return;let Ni=Sn.getResolvedProjectReferenceByPath(hr);Ni&&Ni.commandLine.fileNames.forEach(Gi=>$c(s.toPath(Gi)))}function $c(hr){pa(Ze,hr,OL),pa(Ke,hr,b7)}function Qu(hr,Sn){if(!hr)return!1;let Ni=!1;return hr.forEach(Gi=>{if(!(Gi.isInvalidated||!Sn(Gi))){Gi.isInvalidated=Ni=!0;for(let nn of pe.checkDefined(Gi.files))(h??(h=new Set)).add(nn),M=M||di(nn,qde)}}),Ni}function Rg(hr){$c(hr);let Sn=M;Qu(O.get(hr),Nf)&&M&&!Sn&&s.onChangedAutomaticTypeDirectiveNames()}function Cs(hr){pe.assert(_===hr||_===void 0),_=hr}function Tu(hr,Sn){if(Sn)(_e||(_e=new Set)).add(hr);else{let Ni=GVe(hr);if(!Ni||(hr=Ni,s.fileIsOpen(hr)))return!1;let Gi=Mo(hr);if(An(hr)||Od(hr)||An(Gi)||Od(Gi))(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);else{if(Q3t(s.getCurrentProgram(),hr)||cA(hr,".map"))return!1;(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);let nn=KEe(hr,!0);nn&&(Ie||(Ie=new Set)).add(nn)}}s.scheduleInvalidateResolutionsOfFailedLookupLocations()}function Wr(){let hr=Pe.getPackageJsonInfoCache().getInternalMap();hr&&(ge||Ie||_e)&&hr.forEach((Sn,Ni)=>on(Ni)?hr.delete(Ni):void 0)}function Wn(){var hr;if(Ee)return ee=void 0,Wr(),(ge||Ie||_e||re)&&Qu(Ye,pt),ge=void 0,Ie=void 0,_e=void 0,re=void 0,!0;let Sn=!1;return ee&&((hr=s.getCurrentProgram())==null||hr.getSourceFiles().forEach(Ni=>{zt(Ni.packageJsonLocations,Gi=>ee.has(Gi))&&((h??(h=new Set)).add(Ni.path),Sn=!0)}),ee=void 0),!ge&&!Ie&&!_e&&!re||(Sn=Qu(R,pt)||Sn,Wr(),ge=void 0,Ie=void 0,_e=void 0,Sn=Qu(T,st)||Sn,re=void 0),Sn}function pt(hr){var Sn;return st(hr)?!0:!ge&&!Ie&&!_e?!1:((Sn=hr.failedLookupLocations)==null?void 0:Sn.some(Ni=>on(s.toPath(Ni))))||!!hr.alternateResult&&on(s.toPath(hr.alternateResult))}function on(hr){return ge?.has(hr)||ae(Ie?.keys()||[],Sn=>Ac(hr,Sn)?!0:void 0)||ae(_e?.keys()||[],Sn=>hr.length>Sn.length&&Ac(hr,Sn)&&(gE(Sn)||hr[Sn.length]===cg)?!0:void 0)}function st(hr){var Sn;return!!re&&((Sn=hr.affectingLocations)==null?void 0:Sn.some(Ni=>re.has(Ni)))}function nr(){Ly(_r,hv)}function Zr(hr){return Dn(hr)?s.watchTypeRootsDirectory(hr,Sn=>{let Ni=s.toPath(Sn);Te&&Te.addOrDeleteFileOrDirectory(Sn,Ni),M=!0,s.onChangedAutomaticTypeDirectiveNames();let Gi=E5t(hr,s.toPath(hr),mt,yt,Rt,Ne,s.preferNonRecursiveWatch,nn=>at.has(nn)||Wt.has(nn));Gi&&Tu(Ni,Gi===Ni)},1):qie}function Kr(){let hr=s.getCompilationSettings();if(hr.types){nr();return}let Sn=Fde(hr,{getCurrentDirectory:Ne});Sn?sz(_r,new Set(Sn),{createNewValue:Zr,onDeleteValue:hv}):nr()}function Dn(hr){return s.getCompilationSettings().typeRoots?!0:_5t(s.toPath(hr))}}function gws(s){var c,g;return!!((c=s.resolvedModule)!=null&&c.originalPath||(g=s.resolvedTypeReferenceDirective)!=null&&g.originalPath)}var qrn=Ed?{getCurrentDirectory:()=>Ed.getCurrentDirectory(),getNewLine:()=>Ed.newLine,getCanonicalFileName:bd(Ed.useCaseSensitiveFileNames)}:void 0;function Uz(s,c){let g=s===Ed&&qrn?qrn:{getCurrentDirectory:()=>s.getCurrentDirectory(),getNewLine:()=>s.newLine,getCanonicalFileName:bd(s.useCaseSensitiveFileNames)};if(!c)return h=>s.write(Dtt(h,g));let d=new Array(1);return h=>{d[0]=h,s.write(q3t(d,g)+g.getNewLine()),d[0]=void 0}}function $rn(s,c,g){return s.clearScreen&&!g.preserveWatchOutput&&!g.extendedDiagnostics&&!g.diagnostics&&k(enn,c.code)?(s.clearScreen(),!0):!1}var enn=[Z.Starting_compilation_in_watch_mode.code,Z.File_change_detected_Starting_incremental_compilation.code];function Aws(s,c){return k(enn,s.code)?c+c:c}function _1e(s){return s.now?s.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202F"," "):new Date().toLocaleTimeString()}function qtt(s,c){return c?(g,d,h)=>{$rn(s,g,h);let _=`[${EQ(_1e(s),"\x1B[90m")}] `;_+=`${kN(g.messageText,s.newLine)}${d+d}`,s.write(_)}:(g,d,h)=>{let _="";$rn(s,g,h)||(_+=d),_+=`${_1e(s)} - `,_+=`${kN(g.messageText,s.newLine)}${Aws(g,d)}`,s.write(_)}}function B5t(s,c,g,d,h,_){let S=h;S.onUnRecoverableConfigFileDiagnostic=T=>nnn(h,_,T);let R=MEe(s,c,S,g,d);return S.onUnRecoverableConfigFileDiagnostic=void 0,R}function ZVe(s){return ze(s,c=>c.category===1)}function LVe(s){return Le(s,g=>g.category===1).map(g=>{if(g.file!==void 0)return`${g.file.fileName}`}).map(g=>{if(g===void 0)return;let d=de(s,h=>h.file!==void 0&&h.file.fileName===g);if(d!==void 0){let{line:h}=Ra(d.file,d.start);return{fileName:g,line:h+1}}})}function $tt(s){return s===1?Z.Found_1_error_Watching_for_file_changes:Z.Found_0_errors_Watching_for_file_changes}function tnn(s,c){let g=EQ(":"+s.line,"\x1B[90m");return AE(s.fileName)&&AE(c)?_p(c,s.fileName,!1)+g:s.fileName+g}function ert(s,c,g,d){if(s===0)return"";let h=c.filter(V=>V!==void 0),_=h.map(V=>`${V.fileName}:${V.line}`).filter((V,M,ee)=>ee.indexOf(V)===M),S=h[0]&&tnn(h[0],d.getCurrentDirectory()),R;s===1?R=c[0]!==void 0?[Z.Found_1_error_in_0,S]:[Z.Found_1_error]:R=_.length===0?[Z.Found_0_errors,s]:_.length===1?[Z.Found_0_errors_in_the_same_file_starting_at_Colon_1,s,S]:[Z.Found_0_errors_in_1_files,s,_.length];let T=kf(...R),O=_.length>1?dws(h,d):"";return`${g}${kN(T.messageText,g)}${g}${g}${O}`}function dws(s,c){let g=s.filter((M,ee,re)=>ee===re.findIndex(ge=>ge?.fileName===M?.fileName));if(g.length===0)return"";let d=M=>Math.log(M)*Math.LOG10E+1,h=g.map(M=>[M,ze(s,ee=>ee.fileName===M.fileName)]),_=ls(h,0,M=>M[1]),S=Z.Errors_Files.message,R=S.split(" ")[0].length,T=Math.max(R,d(_)),O=Math.max(d(_)-R,0),V="";return V+=" ".repeat(O)+S+` -`,h.forEach(M=>{let[ee,re]=M,ge=Math.log(re)*Math.LOG10E+1|0,Ie=ge{c(d.fileName)})}function rrt(s,c){var g,d;let h=s.getFileIncludeReasons(),_=S=>s2(S,s.getCurrentDirectory(),s.getCanonicalFileName);for(let S of s.getSourceFiles())c(`${zie(S,_)}`),(g=h.get(S.path))==null||g.forEach(R=>c(` ${ort(s,R,_).messageText}`)),(d=nrt(S,s.getCompilerOptionsForFile(S),_))==null||d.forEach(R=>c(` ${R.messageText}`))}function nrt(s,c,g){var d;let h;if(s.path!==s.resolvedPath&&(h??(h=[])).push(wu(void 0,Z.File_is_output_of_project_reference_source_0,zie(s.originalFileName,g))),s.redirectInfo&&(h??(h=[])).push(wu(void 0,Z.File_redirects_to_file_0,zie(s.redirectInfo.redirectTarget,g))),Sl(s))switch(HU(s,c)){case 99:s.packageJsonScope&&(h??(h=[])).push(wu(void 0,Z.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,zie(Ei(s.packageJsonLocations),g)));break;case 1:s.packageJsonScope?(h??(h=[])).push(wu(void 0,s.packageJsonScope.contents.packageJsonContent.type?Z.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Z.File_is_CommonJS_module_because_0_does_not_have_field_type,zie(Ei(s.packageJsonLocations),g))):(d=s.packageJsonLocations)!=null&&d.length&&(h??(h=[])).push(wu(void 0,Z.File_is_CommonJS_module_because_package_json_was_not_found));break}return h}function irt(s,c){var g;let d=s.getCompilerOptions().configFile;if(!((g=d?.configFileSpecs)!=null&&g.validatedFilesSpec))return;let h=s.getCanonicalFileName(c),_=Mo(Xc(d.fileName,s.getCurrentDirectory())),S=Se(d.configFileSpecs.validatedFilesSpec,R=>s.getCanonicalFileName(Xc(R,_))===h);return S!==-1?d.configFileSpecs.validatedFilesSpecBeforeSubstitution[S]:void 0}function srt(s,c){var g,d;let h=s.getCompilerOptions().configFile;if(!((g=h?.configFileSpecs)!=null&&g.validatedIncludeSpecs))return;if(h.configFileSpecs.isDefaultIncludeSpec)return!0;let _=cA(c,".json"),S=Mo(Xc(h.fileName,s.getCurrentDirectory())),R=s.useCaseSensitiveFileNames(),T=Se((d=h?.configFileSpecs)==null?void 0:d.validatedIncludeSpecs,O=>{if(_&&!di(O,".json"))return!1;let V=Qbe(O,S,"files");return!!V&&rk(`(?:${V})$`,R).test(c)});return T!==-1?h.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[T]:void 0}function ort(s,c,g){var d,h;let _=s.getCompilerOptions();if(r5(c)){let S=$de(s,c),R=Kie(S)?S.file.text.substring(S.pos,S.end):`"${S.text}"`,T;switch(pe.assert(Kie(S)||c.kind===3,"Only synthetic references are imports"),c.kind){case 3:Kie(S)?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2:Z.Imported_via_0_from_file_1:S.text===YD?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Z.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Z.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:pe.assert(!S.packageId),T=Z.Referenced_via_0_from_file_1;break;case 5:T=S.packageId?Z.Type_library_referenced_via_0_from_file_1_with_packageId_2:Z.Type_library_referenced_via_0_from_file_1;break;case 7:pe.assert(!S.packageId),T=Z.Library_referenced_via_0_from_file_1;break;default:pe.assertNever(c)}return wu(void 0,T,R,zie(S.file,g),S.packageId&&gN(S.packageId))}switch(c.kind){case 0:if(!((d=_.configFile)!=null&&d.configFileSpecs))return wu(void 0,Z.Root_file_specified_for_compilation);let S=Xc(s.getRootFileNames()[c.index],s.getCurrentDirectory());if(irt(s,S))return wu(void 0,Z.Part_of_files_list_in_tsconfig_json);let T=srt(s,S);return Xs(T)?wu(void 0,Z.Matched_by_include_pattern_0_in_1,T,zie(_.configFile,g)):wu(void 0,T?Z.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Z.Root_file_specified_for_compilation);case 1:case 2:let O=c.kind===2,V=pe.checkDefined((h=s.getResolvedProjectReferences())==null?void 0:h[c.index]);return wu(void 0,_.outFile?O?Z.Output_from_referenced_project_0_included_because_1_specified:Z.Source_from_referenced_project_0_included_because_1_specified:O?Z.Output_from_referenced_project_0_included_because_module_is_specified_as_none:Z.Source_from_referenced_project_0_included_because_module_is_specified_as_none,zie(V.sourceFile.fileName,g),_.outFile?"--outFile":"--out");case 8:{let M=_.types?c.packageId?[Z.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,c.typeReference,gN(c.packageId)]:[Z.Entry_point_of_type_library_0_specified_in_compilerOptions,c.typeReference]:c.packageId?[Z.Entry_point_for_implicit_type_library_0_with_packageId_1,c.typeReference,gN(c.packageId)]:[Z.Entry_point_for_implicit_type_library_0,c.typeReference];return wu(void 0,...M)}case 6:{if(c.index!==void 0)return wu(void 0,Z.Library_0_specified_in_compilerOptions,_.lib[c.index]);let M=QAe(Hg(_)),ee=M?[Z.Default_library_for_target_0,M]:[Z.Default_library];return wu(void 0,...ee)}default:pe.assertNever(c)}}function zie(s,c){let g=Xs(s)?s:s.fileName;return c?c(g):g}function VVe(s,c,g,d,h,_,S,R){let T=s.getCompilerOptions(),O=s.getConfigFileParsingDiagnostics().slice(),V=O.length;Pr(O,s.getSyntacticDiagnostics(void 0,_)),O.length===V&&(Pr(O,s.getOptionsDiagnostics(_)),T.listFilesOnly||(Pr(O,s.getGlobalDiagnostics(_)),O.length===V&&Pr(O,s.getSemanticDiagnostics(void 0,_)),T.noEmit&&Wy(T)&&O.length===V&&Pr(O,s.getDeclarationDiagnostics(void 0,_))));let M=T.listFilesOnly?{emitSkipped:!0,diagnostics:E}:s.emit(void 0,h,_,S,R);Pr(O,M.diagnostics);let ee=ui(O);if(ee.forEach(c),g){let re=s.getCurrentDirectory();F(M.emittedFiles,ge=>{let Ie=Xc(ge,re);g(`TSFILE: ${Ie}`)}),pws(s,g)}return d&&d(ZVe(ee),LVe(ee)),{emitResult:M,diagnostics:ee}}function art(s,c,g,d,h,_,S,R){let{emitResult:T,diagnostics:O}=VVe(s,c,g,d,h,_,S,R);return T.emitSkipped&&O.length>0?1:O.length>0?2:0}var qie={close:Dc},tpe=()=>qie;function crt(s=Ed,c){return{onWatchStatusChange:c||qtt(s),watchFile:$i(s,s.watchFile)||tpe,watchDirectory:$i(s,s.watchDirectory)||tpe,setTimeout:$i(s,s.setTimeout)||Dc,clearTimeout:$i(s,s.clearTimeout)||Dc,preferNonRecursiveWatch:s.preferNonRecursiveWatch}}var eC={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation",TypingInstallerLocationFile:"File location for typing installer",TypingInstallerLocationDirectory:"Directory location for typing installer"};function lrt(s,c){let g=s.trace?c.extendedDiagnostics?2:c.diagnostics?1:0:0,d=g!==0?_=>s.trace(_):Dc,h=Btt(s,g,d);return h.writeLog=d,h}function urt(s,c,g=s){let d=s.useCaseSensitiveFileNames(),h={getSourceFile:Rtt((_,S)=>S?s.readFile(_,S):h.readFile(_),void 0),getDefaultLibLocation:$i(s,s.getDefaultLibLocation),getDefaultLibFileName:_=>s.getDefaultLibFileName(_),writeFile:Ntt((_,S,R)=>s.writeFile(_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_)),getCurrentDirectory:LA(()=>s.getCurrentDirectory()),useCaseSensitiveFileNames:()=>d,getCanonicalFileName:bd(d),getNewLine:()=>fN(c()),fileExists:_=>s.fileExists(_),readFile:_=>s.readFile(_),trace:$i(s,s.trace),directoryExists:$i(g,g.directoryExists),getDirectories:$i(g,g.getDirectories),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable)||(()=>""),createHash:$i(s,s.createHash),readDirectory:$i(s,s.readDirectory),storeSignatureInfo:s.storeSignatureInfo,jsDocParsingMode:s.jsDocParsingMode};return h}function WVe(s,c){if(c.match(zPt)){let g=c.length,d=g;for(let h=g-1;h>=0;h--){let _=c.charCodeAt(h);switch(_){case 10:h&&c.charCodeAt(h-1)===13&&h--;case 13:break;default:if(_<127||!ml(_)){d=h;continue}break}let S=c.substring(d,g);if(S.match($et)){c=c.substring(0,d);break}else if(!S.match(ett))break;g=d}}return(s.createHash||iy)(c)}function OVe(s){let c=s.getSourceFile;s.getSourceFile=(...g)=>{let d=c.call(s,...g);return d&&(d.version=WVe(s,d.text)),d}}function grt(s,c){let g=LA(()=>Mo(su(s.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames,getNewLine:()=>s.newLine,getCurrentDirectory:LA(()=>s.getCurrentDirectory()),getDefaultLibLocation:g,getDefaultLibFileName:d=>Ro(g(),Hs(d)),fileExists:d=>s.fileExists(d),readFile:(d,h)=>s.readFile(d,h),directoryExists:d=>s.directoryExists(d),getDirectories:d=>s.getDirectories(d),readDirectory:(d,h,_,S,R)=>s.readDirectory(d,h,_,S,R),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable),trace:d=>s.write(d+s.newLine),createDirectory:d=>s.createDirectory(d),writeFile:(d,h,_)=>s.writeFile(d,h,_),createHash:$i(s,s.createHash),createProgram:c||Utt,storeSignatureInfo:s.storeSignatureInfo,now:$i(s,s.now)}}function rnn(s=Ed,c,g,d){let h=S=>s.write(S+s.newLine),_=grt(s,c);return ZA(_,crt(s,d)),_.afterProgramCreate=S=>{let R=S.getCompilerOptions(),T=fN(R);VVe(S,g,h,O=>_.onWatchStatusChange(kf($tt(O),O),T,R,O))},_}function nnn(s,c,g){c(g),s.exit(1)}function Art({configFileName:s,optionsToExtend:c,watchOptionsToExtend:g,extraFileExtensions:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=S||Uz(h),O=rnn(h,_,T,R);return O.onUnRecoverableConfigFileDiagnostic=V=>nnn(h,T,V),O.configFileName=s,O.optionsToExtend=c,O.watchOptionsToExtend=g,O.extraFileExtensions=d,O}function drt({rootFiles:s,options:c,watchOptions:g,projectReferences:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=rnn(h,_,S||Uz(h),R);return T.rootFiles=s,T.options=c,T.watchOptions=g,T.projectReferences=d,T}function w5t(s){let c=s.system||Ed,g=s.host||(s.host=MVe(s.options,c)),d=T5t(s),h=art(d,s.reportDiagnostic||Uz(c),_=>g.trace&&g.trace(_),s.reportErrorSummary||s.options.pretty?(_,S)=>c.write(ert(_,S,c.newLine,g)):void 0);return s.afterProgramEmitAndDiagnostics&&s.afterProgramEmitAndDiagnostics(d),h}function PVe(s,c){let g=t5(s);if(!g)return;let d;if(c.getBuildInfo)d=c.getBuildInfo(g,s.configFilePath);else{let h=c.readFile(g);if(!h)return;d=btt(g,h)}if(!(!d||d.version!==C||!m1e(d)))return h5t(d,g,c)}function MVe(s,c=Ed){let g=bVe(s,void 0,c);return g.createHash=$i(c,c.createHash),g.storeSignatureInfo=c.storeSignatureInfo,OVe(g),zde(g,d=>Pu(d,g.getCurrentDirectory(),g.getCanonicalFileName)),g}function T5t({rootNames:s,options:c,configFileParsingDiagnostics:g,projectReferences:d,host:h,createProgram:_}){h=h||MVe(c),_=_||Utt;let S=PVe(c,h);return _(s,c,h,S,g,d)}function inn(s,c,g,d,h,_,S,R){return Ki(s)?drt({rootFiles:s,options:c,watchOptions:R,projectReferences:S,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_}):Art({configFileName:s,optionsToExtend:c,watchOptionsToExtend:S,extraFileExtensions:R,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_})}function prt(s){let c,g,d,h,_=new Map([[void 0,void 0]]),S,R,T,O,V=s.extendedConfigCache,M=!1,ee=new Map,re,ge=!1,Ie=s.useCaseSensitiveFileNames(),_e=s.getCurrentDirectory(),{configFileName:Ee,optionsToExtend:Ne={},watchOptionsToExtend:Te,extraFileExtensions:Ze,createProgram:Pe}=s,{rootFiles:Ke,options:et,watchOptions:Ye,projectReferences:Tt}=s,at,Qe,Ct=!1,mt=!1,yt=Ee===void 0?void 0:CVe(s,_e,Ie),Rt=yt||s,Lt=NVe(s,Rt),je=si();Ee&&s.configFileParsingResult&&(Wn(s.configFileParsingResult),je=si()),hc(Z.Starting_compilation_in_watch_mode),Ee&&!s.configFileParsingResult&&(je=fN(Ne),pe.assert(!Ke),Wr(),je=si()),pe.assert(et),pe.assert(Ke);let{watchFile:Wt,watchDirectory:_r,writeLog:Gt}=lrt(s,et),it=bd(Ie);Gt(`Current directory: ${_e} CaseSensitiveFileNames: ${Ie}`);let kt;Ee&&(kt=Wt(Ee,Pa,2e3,Ye,eC.ConfigFile));let tr,ur=Uen(__filename);ur&&(tr=Wt(ur,$c,2e3,Ye,eC.ConfigFile));let Gr=urt(s,()=>et,Rt);OVe(Gr);let dt=Gr.getSourceFile;Gr.getSourceFile=(En,...ds)=>ya(En,ks(En),...ds),Gr.getSourceFileByPath=ya,Gr.getNewLine=()=>je,Gr.fileExists=Zn,Gr.onReleaseOldSourceFile=Oo,Gr.onReleaseParsedCommandLine=st,Gr.toPath=ks,Gr.getCompilationSettings=()=>et,Gr.useSourceOfProjectReferenceRedirect=$i(s,s.useSourceOfProjectReferenceRedirect),Gr.preferNonRecursiveWatch=s.preferNonRecursiveWatch,Gr.watchDirectoryOfFailedLookupLocation=(En,ds,Ht)=>_r(En,ds,Ht,Ye,eC.FailedLookupLocations),Gr.watchAffectingFileLocation=(En,ds)=>Wt(En,ds,2e3,Ye,eC.AffectingFileLocation),Gr.watchTypeRootsDirectory=(En,ds,Ht)=>_r(En,ds,Ht,Ye,eC.TypeRoots),Gr.getCachedDirectoryStructureHost=()=>yt,Gr.scheduleInvalidateResolutionsOfFailedLookupLocations=Pi,Gr.onInvalidatedResolution=pa,Gr.onChangedAutomaticTypeDirectiveNames=pa,Gr.fileIsOpen=As,Gr.getCurrentProgram=jn,Gr.writeLog=Gt,Gr.getParsedCommandLine=pt;let pr=ztt(Gr,Ee?Mo(Xc(Ee,_e)):_e,!1);Gr.resolveModuleNameLiterals=$i(s,s.resolveModuleNameLiterals),Gr.resolveModuleNames=$i(s,s.resolveModuleNames),!Gr.resolveModuleNameLiterals&&!Gr.resolveModuleNames&&(Gr.resolveModuleNameLiterals=pr.resolveModuleNameLiterals.bind(pr)),Gr.resolveTypeReferenceDirectiveReferences=$i(s,s.resolveTypeReferenceDirectiveReferences),Gr.resolveTypeReferenceDirectives=$i(s,s.resolveTypeReferenceDirectives),!Gr.resolveTypeReferenceDirectiveReferences&&!Gr.resolveTypeReferenceDirectives&&(Gr.resolveTypeReferenceDirectiveReferences=pr.resolveTypeReferenceDirectiveReferences.bind(pr)),Gr.resolveLibrary=s.resolveLibrary?s.resolveLibrary.bind(s):pr.resolveLibrary.bind(pr),Gr.getModuleResolutionCache=s.resolveModuleNameLiterals||s.resolveModuleNames?$i(s,s.getModuleResolutionCache):()=>pr.getModuleResolutionCache();let ir=!!s.resolveModuleNameLiterals||!!s.resolveTypeReferenceDirectiveReferences||!!s.resolveModuleNames||!!s.resolveTypeReferenceDirectives?$i(s,s.hasInvalidatedResolutions)||Nf:As,qt=s.resolveLibrary?$i(s,s.hasInvalidatedLibResolutions)||Nf:As;return c=PVe(et,Gr),Zi(),Ee?{getCurrentProgram:Cn,getProgram:Rg,close:Yt,getResolutionCache:Tr}:{getCurrentProgram:Cn,getProgram:Rg,updateRootFileNames:An,close:Yt,getResolutionCache:Tr};function Yt(){hn(),pr.clear(),Ly(ee,En=>{En&&En.fileWatcher&&(En.fileWatcher.close(),En.fileWatcher=void 0)}),kt&&(kt.close(),kt=void 0),tr&&(tr.close(),tr=void 0),V?.clear(),V=void 0,O&&(Ly(O,Ev),O=void 0),h&&(Ly(h,Ev),h=void 0),d&&(Ly(d,hv),d=void 0),T&&(Ly(T,En=>{var ds;(ds=En.watcher)==null||ds.close(),En.watcher=void 0,En.watchedDirectories&&Ly(En.watchedDirectories,Ev),En.watchedDirectories=void 0}),T=void 0),c=void 0}function Tr(){return pr}function Cn(){return c}function jn(){return c&&c.getProgramOrUndefined()}function Zi(En=!1){Gt("Synchronizing program"),pe.assert(et),pe.assert(Ke),hn();let ds=Cn();ge&&(je=si(),ds&&HJ(ds.getCompilerOptions(),et)&&pr.onChangesAffectModuleResolution());let{hasInvalidatedResolutions:Ht,hasInvalidatedLibResolutions:cn}=pr.createHasInvalidatedResolutions(En?Nf:ir,qt),{originalReadFile:wt,originalFileExists:xe,originalDirectoryExists:fr,originalCreateDirectory:Ue,originalWriteFile:In,readFileWithCache:Hn}=zde(Gr,ks);return Ltt(jn(),Ke,et,Mt=>ba(Mt,Hn),Mt=>Gr.fileExists(Mt),Ht,cn,yr,pt,Tt)?mt&&(M&&hc(Z.File_change_detected_Starting_incremental_compilation),c=Pe(void 0,void 0,Gr,c,Qe,Tt),mt=!1):(M&&hc(Z.File_change_detected_Starting_incremental_compilation),Ns(Ht,cn)),M=!1,s.afterProgramCreate&&ds!==c&&s.afterProgramCreate(c),Gr.readFile=wt,Gr.fileExists=xe,Gr.directoryExists=fr,Gr.createDirectory=Ue,Gr.writeFile=In,_?.forEach((Mt,$r)=>{if(!$r)Sn(),Ee&&Gi(ks(Ee),et,Ye,eC.ExtendedConfigFile);else{let ri=T?.get($r);ri&&nn(Mt,$r,ri)}}),_=void 0,c}function Ns(En,ds){Gt("CreatingProgramWith::"),Gt(` roots: ${JSON.stringify(Ke)}`),Gt(` options: ${JSON.stringify(et)}`),Tt&&Gt(` projectReferences: ${JSON.stringify(Tt)}`);let Ht=ge||!jn();ge=!1,mt=!1,pr.startCachingPerDirectoryResolution(),Gr.hasInvalidatedResolutions=En,Gr.hasInvalidatedLibResolutions=ds,Gr.hasChangedAutomaticTypeDirectiveNames=yr;let cn=jn();if(c=Pe(Ke,et,Gr,c,Qe,Tt),pr.finishCachingPerDirectoryResolution(c.getProgram(),cn),vtt(c.getProgram(),d||(d=new Map),Dn),Ht&&pr.updateTypeRootsWatch(),re){for(let wt of re)d.has(wt)||ee.delete(wt);re=void 0}}function An(En){pe.assert(!Ee,"Cannot update root file names with config file watch mode"),Ke=En,pa()}function si(){return fN(et||Ne)}function ks(En){return Pu(En,_e,it)}function Ic(En){return typeof En=="boolean"}function ou(En){return typeof En.version=="boolean"}function Zn(En){let ds=ks(En);return Ic(ee.get(ds))?!1:Rt.fileExists(En)}function ya(En,ds,Ht,cn,wt){let xe=ee.get(ds);if(Ic(xe))return;let fr=typeof Ht=="object"?Ht.impliedNodeFormat:void 0;if(xe===void 0||wt||ou(xe)||xe.sourceFile.impliedNodeFormat!==fr){let Ue=dt(En,Ht,cn);if(xe)Ue?(xe.sourceFile=Ue,xe.version=Ue.version,xe.fileWatcher||(xe.fileWatcher=nr(ds,En,Zr,250,Ye,eC.SourceFile))):(xe.fileWatcher&&xe.fileWatcher.close(),ee.set(ds,!1));else if(Ue){let In=nr(ds,En,Zr,250,Ye,eC.SourceFile);ee.set(ds,{sourceFile:Ue,version:Ue.version,fileWatcher:In})}else ee.set(ds,!1);return Ue}return xe.sourceFile}function Fl(En){let ds=ee.get(En);ds!==void 0&&(Ic(ds)?ee.set(En,{version:!1}):ds.version=!1)}function ba(En,ds){let Ht=ee.get(En);if(!Ht)return;if(Ht.version)return Ht.version;let cn=ds(En);return cn!==void 0?WVe(Gr,cn):void 0}function Oo(En,ds,Ht){let cn=ee.get(En.resolvedPath);cn!==void 0&&(Ic(cn)?(re||(re=[])).push(En.path):cn.sourceFile===En&&(cn.fileWatcher&&cn.fileWatcher.close(),ee.delete(En.resolvedPath),Ht||pr.removeResolutionsOfFile(En.path)))}function hc(En){s.onWatchStatusChange&&s.onWatchStatusChange(kf(En),je,et||Ne)}function yr(){return pr.hasChangedAutomaticTypeDirectiveNames()}function hn(){return R?(s.clearTimeout(R),R=void 0,!0):!1}function Pi(){if(!s.setTimeout||!s.clearTimeout)return pr.invalidateResolutionsOfFailedLookupLocations();let En=hn();Gt(`Scheduling invalidateFailedLookup${En?", Cancelled earlier one":""}`),R=s.setTimeout(co,250,"timerToInvalidateFailedLookupResolutions")}function co(){R=void 0,pr.invalidateResolutionsOfFailedLookupLocations()&&pa()}function pa(){!s.setTimeout||!s.clearTimeout||(S&&s.clearTimeout(S),Gt("Scheduling update"),S=s.setTimeout(Qu,250,"timerToUpdateProgram"))}function Pa(){pe.assert(!!Ee),g=2,pa()}function $c(){Gt("Clearing resolutions"),pr.clear(),g=3,pa()}function Qu(){S=void 0,M=!0,Rg()}function Rg(){switch(g){case 1:Cs();break;case 2:Tu();break;case 3:Zi(!0);break;default:Zi();break}return Cn()}function Cs(){Gt("Reloading new file names and options"),pe.assert(et),pe.assert(Ee),g=0,Ke=xde(et.configFile.configFileSpecs,Xc(Mo(Ee),_e),et,Lt,Ze),J9e(Ke,Xc(Ee,_e),et.configFile.configFileSpecs,Qe,Ct)&&(mt=!0),Zi()}function Tu(){pe.assert(Ee),Gt(`Reloading config file: ${Ee}`),g=0,yt&&yt.clearCache(),Wr(),ge=!0,(_??(_=new Map)).set(void 0,void 0),Zi()}function Wr(){pe.assert(Ee),Wn(MEe(Ee,Ne,Lt,V||(V=new Map),Te,Ze))}function Wn(En){Ke=En.fileNames,et=En.options,Ye=En.watchOptions,Tt=En.projectReferences,at=En.wildcardDirectories,Qe=SQ(En).slice(),Ct=JEe(En.raw),mt=!0}function pt(En){let ds=ks(En),Ht=T?.get(ds);if(Ht){if(!Ht.updateLevel)return Ht.parsedCommandLine;if(Ht.parsedCommandLine&&Ht.updateLevel===1&&!s.getParsedCommandLine){Gt("Reloading new file names and options"),pe.assert(et);let wt=xde(Ht.parsedCommandLine.options.configFile.configFileSpecs,Xc(Mo(En),_e),et,Lt);return Ht.parsedCommandLine={...Ht.parsedCommandLine,fileNames:wt},Ht.updateLevel=void 0,Ht.parsedCommandLine}}Gt(`Loading config file: ${En}`);let cn=s.getParsedCommandLine?s.getParsedCommandLine(En):on(En);return Ht?(Ht.parsedCommandLine=cn,Ht.updateLevel=void 0):(T||(T=new Map)).set(ds,Ht={parsedCommandLine:cn}),(_??(_=new Map)).set(ds,En),cn}function on(En){let ds=Lt.onUnRecoverableConfigFileDiagnostic;Lt.onUnRecoverableConfigFileDiagnostic=Dc;let Ht=MEe(En,void 0,Lt,V||(V=new Map),Te);return Lt.onUnRecoverableConfigFileDiagnostic=ds,Ht}function st(En){var ds;let Ht=ks(En),cn=T?.get(Ht);cn&&(T.delete(Ht),cn.watchedDirectories&&Ly(cn.watchedDirectories,Ev),(ds=cn.watcher)==null||ds.close(),Stt(Ht,O))}function nr(En,ds,Ht,cn,wt,xe){return Wt(ds,(fr,Ue)=>Ht(fr,Ue,En),cn,wt,xe)}function Zr(En,ds,Ht){Kr(En,Ht,ds),ds===2&&ee.has(Ht)&&pr.invalidateResolutionOfFile(Ht),Fl(Ht),pa()}function Kr(En,ds,Ht){yt&&yt.addOrDeleteFile(En,ds,Ht)}function Dn(En,ds){return T?.has(En)?qie:nr(En,ds,hr,500,Ye,eC.MissingFile)}function hr(En,ds,Ht){Kr(En,Ht,ds),ds===0&&d.has(Ht)&&(d.get(Ht).close(),d.delete(Ht),Fl(Ht),pa())}function Sn(){g1e(h||(h=new Map),at,Ni)}function Ni(En,ds){return _r(En,Ht=>{pe.assert(Ee),pe.assert(et);let cn=ks(Ht);yt&&yt.addOrDeleteFileOrDirectory(Ht,cn),Fl(cn),!A1e({watchedDirPath:ks(En),fileOrDirectory:Ht,fileOrDirectoryPath:cn,configFileName:Ee,extraFileExtensions:Ze,options:et,program:Cn()||Ke,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})&&g!==2&&(g=1,pa())},ds,Ye,eC.WildcardDirectory)}function Gi(En,ds,Ht,cn){_Ve(En,ds,O||(O=new Map),(wt,xe)=>Wt(wt,(fr,Ue)=>{var In;Kr(wt,xe,Ue),V&&yVe(V,xe,ks);let Hn=(In=O.get(xe))==null?void 0:In.projects;Hn?.size&&Hn.forEach(Mt=>{if(Ee&&ks(Ee)===Mt)g=2;else{let $r=T?.get(Mt);$r&&($r.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(Mt)}pa()})},2e3,Ht,cn),ks)}function nn(En,ds,Ht){var cn,wt,xe,fr;Ht.watcher||(Ht.watcher=Wt(En,(Ue,In)=>{Kr(En,ds,In);let Hn=T?.get(ds);Hn&&(Hn.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(ds),pa()},2e3,((cn=Ht.parsedCommandLine)==null?void 0:cn.watchOptions)||Ye,eC.ConfigFileOfReferencedProject)),g1e(Ht.watchedDirectories||(Ht.watchedDirectories=new Map),(wt=Ht.parsedCommandLine)==null?void 0:wt.wildcardDirectories,(Ue,In)=>{var Hn;return _r(Ue,Mt=>{let $r=ks(Mt);yt&&yt.addOrDeleteFileOrDirectory(Mt,$r),Fl($r);let ri=T?.get(ds);ri?.parsedCommandLine&&(A1e({watchedDirPath:ks(Ue),fileOrDirectory:Mt,fileOrDirectoryPath:$r,configFileName:En,options:ri.parsedCommandLine.options,program:ri.parsedCommandLine.fileNames,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})||ri.updateLevel!==2&&(ri.updateLevel=1,pa()))},In,((Hn=Ht.parsedCommandLine)==null?void 0:Hn.watchOptions)||Ye,eC.WildcardDirectoryOfReferencedProject)}),Gi(ds,(xe=Ht.parsedCommandLine)==null?void 0:xe.options,((fr=Ht.parsedCommandLine)==null?void 0:fr.watchOptions)||Ye,eC.ExtendedConfigOfReferencedProject)}}var R5t=(s=>(s[s.Unbuildable=0]="Unbuildable",s[s.UpToDate=1]="UpToDate",s[s.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",s[s.OutputMissing=3]="OutputMissing",s[s.ErrorReadingFile=4]="ErrorReadingFile",s[s.OutOfDateWithSelf=5]="OutOfDateWithSelf",s[s.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",s[s.OutOfDateBuildInfoWithPendingEmit=7]="OutOfDateBuildInfoWithPendingEmit",s[s.OutOfDateBuildInfoWithErrors=8]="OutOfDateBuildInfoWithErrors",s[s.OutOfDateOptions=9]="OutOfDateOptions",s[s.OutOfDateRoots=10]="OutOfDateRoots",s[s.UpstreamOutOfDate=11]="UpstreamOutOfDate",s[s.UpstreamBlocked=12]="UpstreamBlocked",s[s.ComputingUpstream=13]="ComputingUpstream",s[s.TsVersionOutputOfDate=14]="TsVersionOutputOfDate",s[s.UpToDateWithInputFileText=15]="UpToDateWithInputFileText",s[s.ContainerOnly=16]="ContainerOnly",s[s.ForceBuild=17]="ForceBuild",s))(R5t||{});function frt(s){return cA(s,".json")?s:Ro(s,"tsconfig.json")}var fws=new Date(-864e13);function Iws(s,c,g){let d=s.get(c),h;return d||(h=g(),s.set(c,h)),d||h}function N5t(s,c){return Iws(s,c,()=>new Map)}function Irt(s){return s.now?s.now():new Date}function Kz(s){return!!s&&!!s.buildOrder}function y1e(s){return Kz(s)?s.buildOrder:s}function HVe(s,c){return g=>{let d=c?`[${EQ(_1e(s),"\x1B[90m")}] `:`${_1e(s)} - `;d+=`${kN(g.messageText,s.newLine)}${s.newLine+s.newLine}`,s.write(d)}}function snn(s,c,g,d){let h=grt(s,c);return h.getModifiedTime=s.getModifiedTime?_=>s.getModifiedTime(_):Am,h.setModifiedTime=s.setModifiedTime?(_,S)=>s.setModifiedTime(_,S):Dc,h.deleteFile=s.deleteFile?_=>s.deleteFile(_):Dc,h.reportDiagnostic=g||Uz(s),h.reportSolutionBuilderStatus=d||HVe(s),h.now=$i(s,s.now),h}function D5t(s=Ed,c,g,d,h){let _=snn(s,c,g,d);return _.reportErrorSummary=h,_}function k5t(s=Ed,c,g,d,h){let _=snn(s,c,g,d),S=crt(s,h);return ZA(_,S),_}function hws(s){let c={};return Z9e.forEach(g=>{Da(s,g.name)&&(c[g.name]=s[g.name])}),c.tscBuild=!0,c}function x5t(s,c,g){return Bnn(!1,s,c,g)}function G5t(s,c,g,d){return Bnn(!0,s,c,g,d)}function mws(s,c,g,d,h){let _=c,S=c,R=hws(d),T=urt(_,()=>Ie.projectCompilerOptions);OVe(T),T.getParsedCommandLine=_e=>$ie(Ie,_e,ck(Ie,_e)),T.resolveModuleNameLiterals=$i(_,_.resolveModuleNameLiterals),T.resolveTypeReferenceDirectiveReferences=$i(_,_.resolveTypeReferenceDirectiveReferences),T.resolveLibrary=$i(_,_.resolveLibrary),T.resolveModuleNames=$i(_,_.resolveModuleNames),T.resolveTypeReferenceDirectives=$i(_,_.resolveTypeReferenceDirectives),T.getModuleResolutionCache=$i(_,_.getModuleResolutionCache);let O,V;!T.resolveModuleNameLiterals&&!T.resolveModuleNames&&(O=Mie(T.getCurrentDirectory(),T.getCanonicalFileName),T.resolveModuleNameLiterals=(_e,Ee,Ne,Te,Ze)=>p1e(_e,Ee,Ne,Te,Ze,_,O,Ftt),T.getModuleResolutionCache=()=>O),!T.resolveTypeReferenceDirectiveReferences&&!T.resolveTypeReferenceDirectives&&(V=eVe(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,O?.getPackageJsonInfoCache(),O?.optionsToRedirectsKey),T.resolveTypeReferenceDirectiveReferences=(_e,Ee,Ne,Te,Ze)=>p1e(_e,Ee,Ne,Te,Ze,_,V,vVe));let M;T.resolveLibrary||(M=Mie(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,O?.getPackageJsonInfoCache()),T.resolveLibrary=(_e,Ee,Ne)=>tVe(_e,Ee,Ne,_,M)),T.getBuildInfo=(_e,Ee)=>hnn(Ie,_e,ck(Ie,Ee),void 0);let{watchFile:ee,watchDirectory:re,writeLog:ge}=lrt(S,d),Ie={host:_,hostWithWatch:S,parseConfigFileHost:NVe(_),write:$i(_,_.trace),options:d,baseCompilerOptions:R,rootNames:g,baseWatchOptions:h,resolvedConfigFilePaths:new Map,configFileCache:new Map,projectStatus:new Map,extendedConfigCache:new Map,buildInfoCache:new Map,outputTimeStamps:new Map,builderPrograms:new Map,diagnostics:new Map,projectPendingBuild:new Map,projectErrorsReported:new Map,compilerHost:T,moduleResolutionCache:O,typeReferenceDirectiveResolutionCache:V,libraryResolutionCache:M,buildOrder:void 0,readFileWithCache:_e=>_.readFile(_e),projectCompilerOptions:R,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:s,watch:s,allWatchedWildcardDirectories:new Map,allWatchedInputFiles:new Map,allWatchedConfigFiles:new Map,allWatchedExtendedConfigFiles:new Map,allWatchedPackageJsonFiles:new Map,filesWatched:new Map,lastCachedPackageJsonLookups:new Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:ee,watchDirectory:re,writeLog:ge};return Ie}function Xw(s,c){return Pu(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function ck(s,c){let{resolvedConfigFilePaths:g}=s,d=g.get(c);if(d!==void 0)return d;let h=Xw(s,c);return g.set(c,h),h}function onn(s){return!!s.options}function Cws(s,c){let g=s.configFileCache.get(c);return g&&onn(g)?g:void 0}function $ie(s,c,g){let{configFileCache:d}=s,h=d.get(g);if(h)return onn(h)?h:void 0;Mc("SolutionBuilder::beforeConfigFileParsing");let _,{parseConfigFileHost:S,baseCompilerOptions:R,baseWatchOptions:T,extendedConfigCache:O,host:V}=s,M;return V.getParsedCommandLine?(M=V.getParsedCommandLine(c),M||(_=kf(Z.File_0_not_found,c))):(S.onUnRecoverableConfigFileDiagnostic=ee=>_=ee,M=MEe(c,R,S,O,T),S.onUnRecoverableConfigFileDiagnostic=Dc),d.set(g,M||_),Mc("SolutionBuilder::afterConfigFileParsing"),Pf("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),M}function b1e(s,c){return frt(fE(s.compilerHost.getCurrentDirectory(),c))}function ann(s,c){let g=new Map,d=new Map,h=[],_,S;for(let T of c)R(T);return S?{buildOrder:_||E,circularDiagnostics:S}:_||E;function R(T,O){let V=ck(s,T);if(d.has(V))return;if(g.has(V)){O||(S||(S=[])).push(kf(Z.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,h.join(`\r -`)));return}g.set(V,!0),h.push(T);let M=$ie(s,T,V);if(M&&M.projectReferences)for(let ee of M.projectReferences){let re=b1e(s,ee.path);R(re,O||ee.circular)}h.pop(),d.set(V,!0),(_||(_=[])).push(T)}}function YVe(s){return s.buildOrder||_ws(s)}function _ws(s){let c=ann(s,s.rootNames.map(h=>b1e(s,h)));s.resolvedConfigFilePaths.clear();let g=new Set(y1e(c).map(h=>ck(s,h))),d={onDeleteValue:Dc};return IN(s.configFileCache,g,d),IN(s.projectStatus,g,d),IN(s.builderPrograms,g,d),IN(s.diagnostics,g,d),IN(s.projectPendingBuild,g,d),IN(s.projectErrorsReported,g,d),IN(s.buildInfoCache,g,d),IN(s.outputTimeStamps,g,d),IN(s.lastCachedPackageJsonLookups,g,d),s.watch&&(IN(s.allWatchedConfigFiles,g,{onDeleteValue:hv}),s.allWatchedExtendedConfigFiles.forEach(h=>{h.projects.forEach(_=>{g.has(_)||h.projects.delete(_)}),h.close()}),IN(s.allWatchedWildcardDirectories,g,{onDeleteValue:h=>h.forEach(Ev)}),IN(s.allWatchedInputFiles,g,{onDeleteValue:h=>h.forEach(hv)}),IN(s.allWatchedPackageJsonFiles,g,{onDeleteValue:h=>h.forEach(hv)})),s.buildOrder=c}function cnn(s,c,g){let d=c&&b1e(s,c),h=YVe(s);if(Kz(h))return h;if(d){let S=ck(s,d);if(Se(h,T=>ck(s,T)===S)===-1)return}let _=d?ann(s,[d]):h;return pe.assert(!Kz(_)),pe.assert(!g||d!==void 0),pe.assert(!g||_[_.length-1]===d),g?_.slice(0,_.length-1):_}function lnn(s){s.cache&&F5t(s);let{compilerHost:c,host:g}=s,d=s.readFileWithCache,h=c.getSourceFile,{originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:O,getSourceFileWithCache:V,readFileWithCache:M}=zde(g,ee=>Xw(s,ee),(...ee)=>h.call(c,...ee));s.readFileWithCache=M,c.getSourceFile=V,s.cache={originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:O,originalReadFileWithCache:d,originalGetSourceFile:h}}function F5t(s){if(!s.cache)return;let{cache:c,host:g,compilerHost:d,extendedConfigCache:h,moduleResolutionCache:_,typeReferenceDirectiveResolutionCache:S,libraryResolutionCache:R}=s;g.readFile=c.originalReadFile,g.fileExists=c.originalFileExists,g.directoryExists=c.originalDirectoryExists,g.createDirectory=c.originalCreateDirectory,g.writeFile=c.originalWriteFile,d.getSourceFile=c.originalGetSourceFile,s.readFileWithCache=c.originalReadFileWithCache,h.clear(),_?.clear(),S?.clear(),R?.clear(),s.cache=void 0}function unn(s,c){s.projectStatus.delete(c),s.diagnostics.delete(c)}function gnn({projectPendingBuild:s},c,g){let d=s.get(c);(d===void 0||ds.projectPendingBuild.set(ck(s,d),0)),c&&c.throwIfCancellationRequested()}var Z5t=(s=>(s[s.Build=0]="Build",s[s.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",s))(Z5t||{});function dnn(s,c){return s.projectPendingBuild.delete(c),s.diagnostics.has(c)?1:0}function yws(s,c,g,d,h){let _=!0;return{kind:1,project:c,projectPath:g,buildOrder:h,getCompilerOptions:()=>d.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{Cnn(s,d,g),_=!1},done:()=>(_&&Cnn(s,d,g),Mc("SolutionBuilder::Timestamps only updates"),dnn(s,g))}}function bws(s,c,g,d,h,_,S){let R=0,T,O;return{kind:0,project:c,projectPath:g,buildOrder:S,getCompilerOptions:()=>h.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>M(Zl),getProgram:()=>M(_e=>_e.getProgramOrUndefined()),getSourceFile:_e=>M(Ee=>Ee.getSourceFile(_e)),getSourceFiles:()=>ee(_e=>_e.getSourceFiles()),getOptionsDiagnostics:_e=>ee(Ee=>Ee.getOptionsDiagnostics(_e)),getGlobalDiagnostics:_e=>ee(Ee=>Ee.getGlobalDiagnostics(_e)),getConfigFileParsingDiagnostics:()=>ee(_e=>_e.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSyntacticDiagnostics(_e,Ee)),getAllDependencies:_e=>ee(Ee=>Ee.getAllDependencies(_e)),getSemanticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSemanticDiagnostics(_e,Ee)),getSemanticDiagnosticsOfNextAffectedFile:(_e,Ee)=>M(Ne=>Ne.getSemanticDiagnosticsOfNextAffectedFile&&Ne.getSemanticDiagnosticsOfNextAffectedFile(_e,Ee)),emit:(_e,Ee,Ne,Te,Ze)=>_e||Te?M(Pe=>{var Ke,et;return Pe.emit(_e,Ee,Ne,Te,Ze||((et=(Ke=s.host).getCustomTransformers)==null?void 0:et.call(Ke,c)))}):(Ie(0,Ne),ge(Ee,Ne,Ze)),done:V};function V(_e,Ee,Ne){return Ie(3,_e,Ee,Ne),Mc("SolutionBuilder::Projects built"),dnn(s,g)}function M(_e){return Ie(0),T&&_e(T)}function ee(_e){return M(_e)||E}function re(){var _e,Ee,Ne;if(pe.assert(T===void 0),s.options.dry){b1(s,Z.A_non_dry_build_would_build_project_0,c),O=1,R=2;return}if(s.options.verbose&&b1(s,Z.Building_project_0,c),h.fileNames.length===0){E1e(s,g,SQ(h)),O=0,R=2;return}let{host:Te,compilerHost:Ze}=s;if(s.projectCompilerOptions=h.options,(_e=s.moduleResolutionCache)==null||_e.update(h.options),(Ee=s.typeReferenceDirectiveResolutionCache)==null||Ee.update(h.options),T=Te.createProgram(h.fileNames,h.options,Ze,Ews(s,g,h),SQ(h),h.projectReferences),s.watch){let Pe=(Ne=s.moduleResolutionCache)==null?void 0:Ne.getPackageJsonInfoCache().getInternalMap();s.lastCachedPackageJsonLookups.set(g,Pe&&new Set(Do(Pe.values(),Ke=>s.host.realpath&&($9e(Ke)||Ke.directoryExists)?s.host.realpath(Ro(Ke.packageDirectory,"package.json")):Ro(Ke.packageDirectory,"package.json")))),s.builderPrograms.set(g,T)}R++}function ge(_e,Ee,Ne){var Te,Ze,Pe;pe.assertIsDefined(T),pe.assert(R===1);let{host:Ke,compilerHost:et}=s,Ye=new Map,Tt=T.getCompilerOptions(),at=WW(Tt),Qe,Ct,{emitResult:mt,diagnostics:yt}=VVe(T,Rt=>Ke.reportDiagnostic(Rt),s.write,void 0,(Rt,Lt,je,Wt,_r,Gt)=>{var it;let kt=Xw(s,Rt);if(Ye.set(Xw(s,Rt),Rt),Gt?.buildInfo){Ct||(Ct=Irt(s.host));let ur=(it=T.hasChangedEmitSignature)==null?void 0:it.call(T),Gr=Crt(s,Rt,g);Gr?(Gr.buildInfo=Gt.buildInfo,Gr.modifiedTime=Ct,ur&&(Gr.latestChangedDtsTime=Ct)):s.buildInfoCache.set(g,{path:Xw(s,Rt),buildInfo:Gt.buildInfo,modifiedTime:Ct,latestChangedDtsTime:ur?Ct:void 0})}let tr=Gt?.differsOnlyInMap?Sb(s.host,Rt):void 0;(_e||et.writeFile)(Rt,Lt,je,Wt,_r,Gt),Gt?.differsOnlyInMap?s.host.setModifiedTime(Rt,tr):!at&&s.watch&&(Qe||(Qe=V5t(s,g))).set(kt,Ct||(Ct=Irt(s.host)))},Ee,void 0,Ne||((Ze=(Te=s.host).getCustomTransformers)==null?void 0:Ze.call(Te,c)));return(!Tt.noEmitOnError||!yt.length)&&(Ye.size||_.type!==8)&&mnn(s,h,g,Z.Updating_unchanged_output_timestamps_of_project_0,Ye),s.projectErrorsReported.set(g,!0),O=(Pe=T.hasChangedEmitSignature)!=null&&Pe.call(T)?0:2,yt.length?(s.diagnostics.set(g,yt),s.projectStatus.set(g,{type:0,reason:"it had errors"}),O|=4):(s.diagnostics.delete(g),s.projectStatus.set(g,{type:1,oldestOutputFileName:sA(Ye.values())??Ctt(h,!Ke.useCaseSensitiveFileNames())})),Sws(s,T),R=2,mt}function Ie(_e,Ee,Ne,Te){for(;R<=_e&&R<3;){let Ze=R;switch(R){case 0:re();break;case 1:ge(Ne,Ee,Te);break;case 2:Tws(s,c,g,d,h,S,pe.checkDefined(O)),R++;break;case 3:default:}pe.assert(R>Ze)}}}function pnn(s,c,g){if(!s.projectPendingBuild.size||Kz(c))return;let{options:d,projectPendingBuild:h}=s;for(let _=0;_{let re=pe.checkDefined(s.filesWatched.get(R));pe.assert(hrt(re)),re.modifiedTime=ee,re.callbacks.forEach(ge=>ge(V,M,ee))},d,h,_,S);s.filesWatched.set(R,{callbacks:[g],watcher:O,modifiedTime:T})}return{close:()=>{let O=pe.checkDefined(s.filesWatched.get(R));pe.assert(hrt(O)),O.callbacks.length===1?(s.filesWatched.delete(R),Ev(O)):rf(O.callbacks,g)}}}function V5t(s,c){if(!s.watch)return;let g=s.outputTimeStamps.get(c);return g||s.outputTimeStamps.set(c,g=new Map),g}function Crt(s,c,g){let d=Xw(s,c),h=s.buildInfoCache.get(g);return h?.path===d?h:void 0}function hnn(s,c,g,d){let h=Xw(s,c),_=s.buildInfoCache.get(g);if(_!==void 0&&_.path===h)return _.buildInfo||void 0;let S=s.readFileWithCache(c),R=S?btt(c,S):void 0;return s.buildInfoCache.set(g,{path:h,buildInfo:R||!1,modifiedTime:d||xh}),R}function W5t(s,c,g,d){let h=Inn(s,c);if(gZe&&(Te=yt,Ze=Rt),Ke.add(Lt)}let Ye;if(_e?(et||(et=Xtt(_e,M,V)),Ye=Fh(et.roots,(yt,Rt)=>Ke.has(Rt)?void 0:Rt)):Ye=F(m5t(Ie,M,V),yt=>Ke.has(yt)?void 0:yt),Ye)return{type:10,buildInfoFile:M,inputFile:Ye};if(!ee){let yt=mVe(c,!V.useCaseSensitiveFileNames()),Rt=V5t(s,g);for(let Lt of yt){if(Lt===M)continue;let je=Xw(s,Lt),Wt=Rt?.get(je);if(Wt||(Wt=Sb(s.host,Lt),Rt?.set(je,Wt)),Wt===xh)return{type:3,missingOutputFileName:Lt};if(WtW5t(s,yt,Ee,Ne));if(Qe)return Qe;let Ct=s.lastCachedPackageJsonLookups.get(g),mt=Ct&&RB(Ct,yt=>W5t(s,yt,Ee,Ne));return mt||{type:Tt?2:Pe?15:1,newestInputFileTime:Ze,newestInputFileName:Te,oldestOutputFileName:Ne}}function Bws(s,c,g){return s.buildInfoCache.get(g).path===c.path}function O5t(s,c,g){if(c===void 0)return{type:0,reason:"config file deleted mid-build"};let d=s.projectStatus.get(g);if(d!==void 0)return d;Mc("SolutionBuilder::beforeUpToDateCheck");let h=vws(s,c,g);return Mc("SolutionBuilder::afterUpToDateCheck"),Pf("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),s.projectStatus.set(g,h),h}function mnn(s,c,g,d,h){if(c.options.noEmit)return;let _,S=t5(c.options),R=WW(c.options);if(S&&R){h?.has(Xw(s,S))||(s.options.verbose&&b1(s,d,c.options.configFilePath),s.host.setModifiedTime(S,_=Irt(s.host)),Crt(s,S,g).modifiedTime=_),s.outputTimeStamps.delete(g);return}let{host:T}=s,O=mVe(c,!T.useCaseSensitiveFileNames()),V=V5t(s,g),M=V?new Set:void 0;if(!h||O.length!==h.size){let ee=!!s.options.verbose;for(let re of O){let ge=Xw(s,re);h?.has(ge)||(ee&&(ee=!1,b1(s,d,c.options.configFilePath)),T.setModifiedTime(re,_||(_=Irt(s.host))),re===S?Crt(s,S,g).modifiedTime=_:V&&(V.set(ge,_),M.add(ge)))}}V?.forEach((ee,re)=>{!h?.has(re)&&!M.has(re)&&V.delete(re)})}function wws(s,c,g){if(!c.composite)return;let d=pe.checkDefined(s.buildInfoCache.get(g));if(d.latestChangedDtsTime!==void 0)return d.latestChangedDtsTime||void 0;let h=d.buildInfo&&m1e(d.buildInfo)&&d.buildInfo.latestChangedDtsFile?s.host.getModifiedTime(Xc(d.buildInfo.latestChangedDtsFile,Mo(d.path))):void 0;return d.latestChangedDtsTime=h||!1,h}function Cnn(s,c,g){if(s.options.dry)return b1(s,Z.A_non_dry_build_would_update_timestamps_for_output_of_project_0,c.options.configFilePath);mnn(s,c,g,Z.Updating_output_timestamps_of_project_0),s.projectStatus.set(g,{type:1,oldestOutputFileName:Ctt(c,!s.host.useCaseSensitiveFileNames())})}function Tws(s,c,g,d,h,_,S){if(!(s.options.stopBuildOnErrors&&S&4)&&h.options.composite)for(let R=d+1;R<_.length;R++){let T=_[R],O=ck(s,T);if(s.projectPendingBuild.has(O))continue;let V=$ie(s,T,O);if(!(!V||!V.projectReferences))for(let M of V.projectReferences){let ee=b1e(s,M.path);if(ck(s,ee)!==g)continue;let re=s.projectStatus.get(O);if(re)switch(re.type){case 1:if(S&2){re.type=2;break}case 15:case 2:S&2||s.projectStatus.set(O,{type:6,outOfDateOutputFileName:re.oldestOutputFileName,newerProjectName:c});break;case 12:ck(s,b1e(s,re.upstreamProjectName))===g&&unn(s,O);break}gnn(s,O,0);break}}}function _nn(s,c,g,d,h,_){Mc("SolutionBuilder::beforeBuild");let S=Rws(s,c,g,d,h,_);return Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),S}function Rws(s,c,g,d,h,_){let S=cnn(s,c,_);if(!S)return 3;Ann(s,g);let R=!0,T=0;for(;;){let O=L5t(s,S,R);if(!O)break;R=!1,O.done(g,d,h?.(O.project)),s.diagnostics.has(O.projectPath)||T++}return F5t(s),Tnn(s,S),xws(s,S),Kz(S)?4:S.some(O=>s.diagnostics.has(ck(s,O)))?T?2:1:0}function ynn(s,c,g){Mc("SolutionBuilder::beforeClean");let d=Nws(s,c,g);return Mc("SolutionBuilder::afterClean"),Pf("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),d}function Nws(s,c,g){let d=cnn(s,c,g);if(!d)return 3;if(Kz(d))return _rt(s,d.circularDiagnostics),4;let{options:h,host:_}=s,S=h.dry?[]:void 0;for(let R of d){let T=ck(s,R),O=$ie(s,R,T);if(O===void 0){wnn(s,T);continue}let V=mVe(O,!_.useCaseSensitiveFileNames());if(!V.length)continue;let M=new Set(O.fileNames.map(ee=>Xw(s,ee)));for(let ee of V)M.has(Xw(s,ee))||_.fileExists(ee)&&(S?S.push(ee):(_.deleteFile(ee),P5t(s,T,0)))}return S&&b1(s,Z.A_non_dry_build_would_delete_the_following_files_Colon_0,S.map(R=>`\r - * ${R}`).join("")),0}function P5t(s,c,g){s.host.getParsedCommandLine&&g===1&&(g=2),g===2&&(s.configFileCache.delete(c),s.buildOrder=void 0),s.needsSummary=!0,unn(s,c),gnn(s,c,g),lnn(s)}function QVe(s,c,g){s.reportFileChangeDetected=!0,P5t(s,c,g),bnn(s,250,!0)}function bnn(s,c,g){let{hostWithWatch:d}=s;!d.setTimeout||!d.clearTimeout||(s.timerToBuildInvalidatedProject&&d.clearTimeout(s.timerToBuildInvalidatedProject),s.timerToBuildInvalidatedProject=d.setTimeout(Dws,c,"timerToBuildInvalidatedProject",s,g))}function Dws(s,c,g){Mc("SolutionBuilder::beforeBuild");let d=kws(c,g);Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),d&&Tnn(c,d)}function kws(s,c){s.timerToBuildInvalidatedProject=void 0,s.reportFileChangeDetected&&(s.reportFileChangeDetected=!1,s.projectErrorsReported.clear(),Y5t(s,Z.File_change_detected_Starting_incremental_compilation));let g=0,d=YVe(s),h=L5t(s,d,!1);if(h)for(h.done(),g++;s.projectPendingBuild.size;){if(s.timerToBuildInvalidatedProject)return;let _=pnn(s,d,!1);if(!_)break;if(_.kind!==1&&(c||g===5)){bnn(s,100,!1);return}fnn(s,_,d).done(),_.kind!==1&&g++}return F5t(s),d}function Enn(s,c,g,d){!s.watch||s.allWatchedConfigFiles.has(g)||s.allWatchedConfigFiles.set(g,mrt(s,c,()=>QVe(s,g,2),2e3,d?.watchOptions,eC.ConfigFile,c))}function Snn(s,c,g){_Ve(c,g?.options,s.allWatchedExtendedConfigFiles,(d,h)=>mrt(s,d,()=>{var _;return(_=s.allWatchedExtendedConfigFiles.get(h))==null?void 0:_.projects.forEach(S=>QVe(s,S,2))},2e3,g?.watchOptions,eC.ExtendedConfigFile),d=>Xw(s,d))}function vnn(s,c,g,d){s.watch&&g1e(N5t(s.allWatchedWildcardDirectories,g),d.wildcardDirectories,(h,_)=>s.watchDirectory(h,S=>{var R;A1e({watchedDirPath:Xw(s,h),fileOrDirectory:S,fileOrDirectoryPath:Xw(s,S),configFileName:c,currentDirectory:s.compilerHost.getCurrentDirectory(),options:d.options,program:s.builderPrograms.get(g)||((R=Cws(s,g))==null?void 0:R.fileNames),useCaseSensitiveFileNames:s.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:T=>s.writeLog(T),toPath:T=>Xw(s,T)})||QVe(s,g,1)},_,d?.watchOptions,eC.WildcardDirectory,c))}function M5t(s,c,g,d){s.watch&&sz(N5t(s.allWatchedInputFiles,g),new Set(d.fileNames),{createNewValue:h=>mrt(s,h,()=>QVe(s,g,0),250,d?.watchOptions,eC.SourceFile,c),onDeleteValue:hv})}function H5t(s,c,g,d){!s.watch||!s.lastCachedPackageJsonLookups||sz(N5t(s.allWatchedPackageJsonFiles,g),s.lastCachedPackageJsonLookups.get(g),{createNewValue:h=>mrt(s,h,()=>QVe(s,g,0),2e3,d?.watchOptions,eC.PackageJson,c),onDeleteValue:hv})}function xws(s,c){if(s.watchAllProjectsPending){Mc("SolutionBuilder::beforeWatcherCreation"),s.watchAllProjectsPending=!1;for(let g of y1e(c)){let d=ck(s,g),h=$ie(s,g,d);Enn(s,g,d,h),Snn(s,d,h),h&&(vnn(s,g,d,h),M5t(s,g,d,h),H5t(s,g,d,h))}Mc("SolutionBuilder::afterWatcherCreation"),Pf("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function Gws(s){Ly(s.allWatchedConfigFiles,hv),Ly(s.allWatchedExtendedConfigFiles,Ev),Ly(s.allWatchedWildcardDirectories,c=>Ly(c,Ev)),Ly(s.allWatchedInputFiles,c=>Ly(c,hv)),Ly(s.allWatchedPackageJsonFiles,c=>Ly(c,hv))}function Bnn(s,c,g,d,h){let _=mws(s,c,g,d,h);return{build:(S,R,T,O)=>_nn(_,S,R,T,O),clean:S=>ynn(_,S),buildReferences:(S,R,T,O)=>_nn(_,S,R,T,O,!0),cleanReferences:S=>ynn(_,S,!0),getNextInvalidatedProject:S=>(Ann(_,S),L5t(_,YVe(_),!1)),getBuildOrder:()=>YVe(_),getUpToDateStatusOfProject:S=>{let R=b1e(_,S),T=ck(_,R);return O5t(_,$ie(_,R,T),T)},invalidateProject:(S,R)=>P5t(_,S,R||0),close:()=>Gws(_)}}function Z_(s,c){return s2(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function b1(s,c,...g){s.host.reportSolutionBuilderStatus(kf(c,...g))}function Y5t(s,c,...g){var d,h;(h=(d=s.hostWithWatch).onWatchStatusChange)==null||h.call(d,kf(c,...g),s.host.getNewLine(),s.baseCompilerOptions)}function _rt({host:s},c){c.forEach(g=>s.reportDiagnostic(g))}function E1e(s,c,g){_rt(s,g),s.projectErrorsReported.set(c,!0),g.length&&s.diagnostics.set(c,g)}function wnn(s,c){E1e(s,c,[s.configFileCache.get(c)])}function Tnn(s,c){if(!s.needsSummary)return;s.needsSummary=!1;let g=s.watch||!!s.host.reportErrorSummary,{diagnostics:d}=s,h=0,_=[];Kz(c)?(Rnn(s,c.buildOrder),_rt(s,c.circularDiagnostics),g&&(h+=ZVe(c.circularDiagnostics)),g&&(_=[..._,...LVe(c.circularDiagnostics)])):(c.forEach(S=>{let R=ck(s,S);s.projectErrorsReported.has(R)||_rt(s,d.get(R)||E)}),g&&d.forEach(S=>h+=ZVe(S)),g&&d.forEach(S=>[..._,...LVe(S)])),s.watch?Y5t(s,$tt(h),h):s.host.reportErrorSummary&&s.host.reportErrorSummary(h,_)}function Rnn(s,c){s.options.verbose&&b1(s,Z.Projects_in_this_build_Colon_0,c.map(g=>`\r - * `+Z_(s,g)).join(""))}function Fws(s,c,g){switch(g.type){case 5:return b1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,Z_(s,c),Z_(s,g.outOfDateOutputFileName),Z_(s,g.newerInputFileName));case 6:return b1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,Z_(s,c),Z_(s,g.outOfDateOutputFileName),Z_(s,g.newerProjectName));case 3:return b1(s,Z.Project_0_is_out_of_date_because_output_file_1_does_not_exist,Z_(s,c),Z_(s,g.missingOutputFileName));case 4:return b1(s,Z.Project_0_is_out_of_date_because_there_was_error_reading_file_1,Z_(s,c),Z_(s,g.fileName));case 7:return b1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,Z_(s,c),Z_(s,g.buildInfoFile));case 8:return b1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors,Z_(s,c),Z_(s,g.buildInfoFile));case 9:return b1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,Z_(s,c),Z_(s,g.buildInfoFile));case 10:return b1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,Z_(s,c),Z_(s,g.buildInfoFile),Z_(s,g.inputFile));case 1:if(g.newestInputFileTime!==void 0)return b1(s,Z.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,Z_(s,c),Z_(s,g.newestInputFileName||""),Z_(s,g.oldestOutputFileName||""));break;case 2:return b1(s,Z.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,Z_(s,c));case 15:return b1(s,Z.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,Z_(s,c));case 11:return b1(s,Z.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,Z_(s,c),Z_(s,g.upstreamProjectName));case 12:return b1(s,g.upstreamProjectBlocked?Z.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Z.Project_0_can_t_be_built_because_its_dependency_1_has_errors,Z_(s,c),Z_(s,g.upstreamProjectName));case 0:return b1(s,Z.Project_0_is_out_of_date_because_1,Z_(s,c),g.reason);case 14:return b1(s,Z.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,Z_(s,c),g.version,C);case 17:return b1(s,Z.Project_0_is_being_forcibly_rebuilt,Z_(s,c));case 16:case 13:break;default:}}function yrt(s,c,g){s.options.verbose&&Fws(s,c,g)}var Q5t=(s=>(s[s.time=0]="time",s[s.count=1]="count",s[s.memory=2]="memory",s))(Q5t||{});function Zws(s){let c=Lws();return F(s.getSourceFiles(),g=>{let d=Vws(s,g),h=rn(g).length;c.set(d,c.get(d)+h)}),c}function Lws(){let s=new Map;return s.set("Library",0),s.set("Definitions",0),s.set("TypeScript",0),s.set("JavaScript",0),s.set("JSON",0),s.set("Other",0),s}function Vws(s,c){if(s.isSourceFileDefaultLibrary(c))return"Library";if(c.isDeclarationFile)return"Definitions";let g=c.path;return Iu(g,Jbe)?"TypeScript":Iu(g,EU)?"JavaScript":cA(g,".json")?"JSON":"Other"}function brt(s,c,g){return XVe(s,g)?Uz(s,!0):c}function Nnn(s){return!!s.writeOutputIsTTY&&s.writeOutputIsTTY()&&!s.getEnvironmentVariable("NO_COLOR")}function XVe(s,c){return!c||typeof c.pretty>"u"?Nnn(s):c.pretty}function Dnn(s){return s.options.all?bo(Qw.concat(LU),(c,g)=>Fs(c.name,g.name)):Le(Qw.concat(LU),c=>!!c.showInSimplifiedHelpView)}function Ert(s){s.write(Vb(Z.Version_0,C)+s.newLine)}function Srt(s){if(!Nnn(s))return{bold:V=>V,blue:V=>V,blueBackground:V=>V,brightWhite:V=>V};function g(V){return`\x1B[1m${V}\x1B[22m`}let d=s.getEnvironmentVariable("OS")&&s.getEnvironmentVariable("OS").toLowerCase().includes("windows"),h=s.getEnvironmentVariable("WT_SESSION"),_=s.getEnvironmentVariable("TERM_PROGRAM")&&s.getEnvironmentVariable("TERM_PROGRAM")==="vscode";function S(V){return d&&!h&&!_?O(V):`\x1B[94m${V}\x1B[39m`}let R=s.getEnvironmentVariable("COLORTERM")==="truecolor"||s.getEnvironmentVariable("TERM")==="xterm-256color";function T(V){return R?`\x1B[48;5;68m${V}\x1B[39;49m`:`\x1B[44m${V}\x1B[39;49m`}function O(V){return`\x1B[97m${V}\x1B[39m`}return{bold:g,blue:S,brightWhite:O,blueBackground:T}}function knn(s){return`--${s.name}${s.shortName?`, -${s.shortName}`:""}`}function Wws(s,c,g,d){var h;let _=[],S=Srt(s),R=knn(c),T=ge(c),O=typeof c.defaultValueDescription=="object"?Vb(c.defaultValueDescription):M(c.defaultValueDescription,c.type==="list"||c.type==="listOrElement"?c.element.type:c.type),V=((h=s.getWidthOfTerminal)==null?void 0:h.call(s))??0;if(V>=80){let Ie="";c.description&&(Ie=Vb(c.description)),_.push(...re(R,Ie,g,d,V,!0),s.newLine),ee(T,c)&&(T&&_.push(...re(T.valueType,T.possibleValues,g,d,V,!1),s.newLine),O&&_.push(...re(Vb(Z.default_Colon),O,g,d,V,!1),s.newLine)),_.push(s.newLine)}else{if(_.push(S.blue(R),s.newLine),c.description){let Ie=Vb(c.description);_.push(Ie)}if(_.push(s.newLine),ee(T,c)){if(T&&_.push(`${T.valueType} ${T.possibleValues}`),O){T&&_.push(s.newLine);let Ie=Vb(Z.default_Colon);_.push(`${Ie} ${O}`)}_.push(s.newLine)}_.push(s.newLine)}return _;function M(Ie,_e){return Ie!==void 0&&typeof _e=="object"?Do(_e.entries()).filter(([,Ee])=>Ee===Ie).map(([Ee])=>Ee).join("/"):String(Ie)}function ee(Ie,_e){let Ee=["string"],Ne=[void 0,"false","n/a"],Te=_e.defaultValueDescription;return!(_e.category===Z.Command_line_Options||k(Ee,Ie?.possibleValues)&&k(Ne,Te))}function re(Ie,_e,Ee,Ne,Te,Ze){let Pe=[],Ke=!0,et=_e,Ye=Te-Ne;for(;et.length>0;){let Tt="";Ke?(Tt=Ie.padStart(Ee),Tt=Tt.padEnd(Ne),Tt=Ze?S.blue(Tt):Tt):Tt="".padStart(Ne);let at=et.substr(0,Ye);et=et.slice(Ye),Pe.push(`${Tt}${at}`),Ke=!1}return Pe}function ge(Ie){if(Ie.type==="object")return;return{valueType:_e(Ie),possibleValues:Ee(Ie)};function _e(Ne){switch(pe.assert(Ne.type!=="listOrElement"),Ne.type){case"string":case"number":case"boolean":return Vb(Z.type_Colon);case"list":return Vb(Z.one_or_more_Colon);default:return Vb(Z.one_of_Colon)}}function Ee(Ne){let Te;switch(Ne.type){case"string":case"number":case"boolean":Te=Ne.type;break;case"list":case"listOrElement":Te=Ee(Ne.element);break;case"object":Te="";break;default:let Ze={};return Ne.type.forEach((Pe,Ke)=>{var et;(et=Ne.deprecatedKeys)!=null&&et.has(Ke)||(Ze[Pe]||(Ze[Pe]=[])).push(Ke)}),Object.entries(Ze).map(([,Pe])=>Pe.join("/")).join(", ")}return Te}}}function xnn(s,c){let g=0;for(let S of c){let R=knn(S).length;g=g>R?g:R}let d=g+2,h=d+2,_=[];for(let S of c){let R=Wws(s,S,d,h);_=[..._,...R]}return _[_.length-2]!==s.newLine&&_.push(s.newLine),_}function S1e(s,c,g,d,h,_){let S=[];if(S.push(Srt(s).bold(c)+s.newLine+s.newLine),h&&S.push(h+s.newLine+s.newLine),!d)return S=[...S,...xnn(s,g)],_&&S.push(_+s.newLine+s.newLine),S;let R=new Map;for(let T of g){if(!T.category)continue;let O=Vb(T.category),V=R.get(O)??[];V.push(T),R.set(O,V)}return R.forEach((T,O)=>{S.push(`### ${O}${s.newLine}${s.newLine}`),S=[...S,...xnn(s,T)]}),_&&S.push(_+s.newLine+s.newLine),S}function Ows(s,c){let g=Srt(s),d=[...vrt(s,`${Vb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Vb(Z.Version_0,C)}`)];d.push(g.bold(Vb(Z.COMMON_COMMANDS))+s.newLine+s.newLine),S("tsc",Z.Compiles_the_current_project_tsconfig_json_in_the_working_directory),S("tsc app.ts util.ts",Z.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),S("tsc -b",Z.Build_a_composite_project_in_the_working_directory),S("tsc --init",Z.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),S("tsc -p ./path/to/tsconfig.json",Z.Compiles_the_TypeScript_project_located_at_the_specified_path),S("tsc --help --all",Z.An_expanded_version_of_this_information_showing_all_possible_compiler_options),S(["tsc --noEmit","tsc --target esnext"],Z.Compiles_the_current_project_with_additional_settings);let h=c.filter(R=>R.isCommandLineOnly||R.category===Z.Command_line_Options),_=c.filter(R=>!k(h,R));d=[...d,...S1e(s,Vb(Z.COMMAND_LINE_FLAGS),h,!1,void 0,void 0),...S1e(s,Vb(Z.COMMON_COMPILER_OPTIONS),_,!1,void 0,nQ(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(let R of d)s.write(R);function S(R,T){let O=typeof R=="string"?[R]:R;for(let V of O)d.push(" "+g.blue(V)+s.newLine);d.push(" "+Vb(T)+s.newLine+s.newLine)}}function Pws(s,c,g,d){let h=[...vrt(s,`${Vb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Vb(Z.Version_0,C)}`)];h=[...h,...S1e(s,Vb(Z.ALL_COMPILER_OPTIONS),c,!0,void 0,nQ(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],h=[...h,...S1e(s,Vb(Z.WATCH_OPTIONS),d,!1,Vb(Z.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],h=[...h,...S1e(s,Vb(Z.BUILD_OPTIONS),Le(g,_=>_!==LU),!1,nQ(Z.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,"https://aka.ms/tsc-composite-builds"))];for(let _ of h)s.write(_)}function Gnn(s,c){let g=[...vrt(s,`${Vb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Vb(Z.Version_0,C)}`)];g=[...g,...S1e(s,Vb(Z.BUILD_OPTIONS),Le(c,d=>d!==LU),!1,nQ(Z.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,"https://aka.ms/tsc-composite-builds"))];for(let d of g)s.write(d)}function vrt(s,c){var g;let d=Srt(s),h=[],_=((g=s.getWidthOfTerminal)==null?void 0:g.call(s))??0,S=5,R=d.blueBackground("".padStart(S)),T=d.blueBackground(d.brightWhite("TS ".padStart(S)));if(_>=c.length+S){let V=(_>120?120:_)-S;h.push(c.padEnd(V)+R+s.newLine),h.push("".padStart(V)+T+s.newLine)}else h.push(c+s.newLine),h.push(s.newLine);return h}function Fnn(s,c){c.options.all?Pws(s,Dnn(c),pet,Pz):Ows(s,Dnn(c))}function Znn(s,c,g){let d=Uz(s),h;if(g.options.locale&&Bx(g.options.locale,s,g.errors),g.errors.length>0)return g.errors.forEach(d),s.exit(1);if(g.options.init)return Qws(s,d,g.options),s.exit(0);if(g.options.version)return Ert(s),s.exit(0);if(g.options.help||g.options.all)return Fnn(s,g),s.exit(0);if(g.options.watch&&g.options.listFilesOnly)return d(kf(Z.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),s.exit(1);if(g.options.project){if(g.fileNames.length!==0)return d(kf(Z.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),s.exit(1);let R=su(g.options.project);if(!R||s.directoryExists(R)){if(h=Ro(R,"tsconfig.json"),!s.fileExists(h))return d(kf(Z.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,g.options.project)),s.exit(1)}else if(h=R,!s.fileExists(h))return d(kf(Z.The_specified_path_does_not_exist_Colon_0,g.options.project)),s.exit(1)}else if(g.fileNames.length===0){let R=su(s.getCurrentDirectory());h=wtt(R,T=>s.fileExists(T))}if(g.fileNames.length===0&&!h)return g.options.showConfig?d(kf(Z.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,su(s.getCurrentDirectory()))):(Ert(s),Fnn(s,g)),s.exit(1);let _=s.getCurrentDirectory(),S=Y9e(g.options,R=>Xc(R,_));if(h){let R=new Map,T=B5t(h,S,R,g.watchOptions,s,d);if(S.showConfig)return T.errors.length!==0?(d=brt(s,d,T.options),T.errors.forEach(d),s.exit(1)):(s.write(JSON.stringify(yet(T,h,s),null,4)+s.newLine),s.exit(0));if(d=brt(s,d,T.options),Nbe(T.options))return J5t(s,d)?void 0:Mws(s,c,d,T,S,g.watchOptions,R);WW(T.options)?Onn(s,c,d,T):Wnn(s,c,d,T)}else{if(S.showConfig)return s.write(JSON.stringify(yet(g,Ro(_,"tsconfig.json"),s),null,4)+s.newLine),s.exit(0);if(d=brt(s,d,S),Nbe(S))return J5t(s,d)?void 0:Hws(s,c,d,g.fileNames,S,g.watchOptions);WW(S)?Onn(s,c,d,{...g,options:S}):Wnn(s,c,d,{...g,options:S})}}function X5t(s){if(s.length>0&&s[0].charCodeAt(0)===45){let c=s[0].slice(s[0].charCodeAt(1)===45?2:1).toLowerCase();return c===LU.name||c===LU.shortName}return!1}function Lnn(s,c,g){if(X5t(g)){let{buildOptions:h,watchOptions:_,projects:S,errors:R}=sPt(g);if(h.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(h.generateCpuProfile,()=>Vnn(s,c,h,_,S,R));else return Vnn(s,c,h,_,S,R)}let d=nPt(g,h=>s.readFile(h));if(d.options.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(d.options.generateCpuProfile,()=>Znn(s,c,d));else return Znn(s,c,d)}function J5t(s,c){return!s.watchFile||!s.watchDirectory?(c(kf(Z.The_current_host_does_not_support_the_0_option,"--watch")),s.exit(1),!0):!1}var JVe=2;function Vnn(s,c,g,d,h,_){let S=brt(s,Uz(s),g);if(g.locale&&Bx(g.locale,s,_),_.length>0)return _.forEach(S),s.exit(1);if(g.help||h.length===0)return Ert(s),Gnn(s,PEe),s.exit(0);if(!s.getModifiedTime||!s.setModifiedTime||g.clean&&!s.deleteFile)return S(kf(Z.The_current_host_does_not_support_the_0_option,"--build")),s.exit(1);if(g.watch){if(J5t(s,S))return;let M=k5t(s,void 0,S,HVe(s,XVe(s,g)),K5t(s,g));M.jsDocParsingMode=JVe;let ee=Ynn(s,g);Pnn(s,c,M,ee);let re=M.onWatchStatusChange,ge=!1;M.onWatchStatusChange=(_e,Ee,Ne,Te)=>{re?.(_e,Ee,Ne,Te),ge&&(_e.code===Z.Found_0_errors_Watching_for_file_changes.code||_e.code===Z.Found_1_error_Watching_for_file_changes.code)&&j5t(Ie,ee)};let Ie=G5t(M,h,g,d);return Ie.build(),j5t(Ie,ee),ge=!0,Ie}let R=D5t(s,void 0,S,HVe(s,XVe(s,g)),U5t(s,g));R.jsDocParsingMode=JVe;let T=Ynn(s,g);Pnn(s,c,R,T);let O=x5t(R,h,g),V=g.clean?O.clean():O.build();return j5t(O,T),$f(),s.exit(V)}function U5t(s,c){return XVe(s,c)?(g,d)=>s.write(ert(g,d,s.newLine,s)):void 0}function Wnn(s,c,g,d){let{fileNames:h,options:_,projectReferences:S}=d,R=bVe(_,void 0,s);R.jsDocParsingMode=JVe;let T=R.getCurrentDirectory(),O=bd(R.useCaseSensitiveFileNames());zde(R,re=>Pu(re,T,O)),z5t(s,_,!1);let V={rootNames:h,options:_,projectReferences:S,host:R,configFileParsingDiagnostics:SQ(d)},M=I1e(V),ee=art(M,g,re=>s.write(re+s.newLine),U5t(s,_));return wrt(s,M,void 0),c(M),s.exit(ee)}function Onn(s,c,g,d){let{options:h,fileNames:_,projectReferences:S}=d;z5t(s,h,!1);let R=MVe(h,s);R.jsDocParsingMode=JVe;let T=w5t({host:R,system:s,rootNames:_,options:h,configFileParsingDiagnostics:SQ(d),projectReferences:S,reportDiagnostic:g,reportErrorSummary:U5t(s,h),afterProgramEmitAndDiagnostics:O=>{wrt(s,O.getProgram(),void 0),c(O)}});return s.exit(T)}function Pnn(s,c,g,d){Mnn(s,g,!0),g.afterProgramEmitAndDiagnostics=h=>{wrt(s,h.getProgram(),d),c(h)}}function Mnn(s,c,g){let d=c.createProgram;c.createProgram=(h,_,S,R,T,O)=>(pe.assert(h!==void 0||_===void 0&&!!R),_!==void 0&&z5t(s,_,g),d(h,_,S,R,T,O))}function Hnn(s,c,g){g.jsDocParsingMode=JVe,Mnn(s,g,!1);let d=g.afterProgramCreate;g.afterProgramCreate=h=>{d(h),wrt(s,h.getProgram(),void 0),c(h)}}function K5t(s,c){return qtt(s,XVe(s,c))}function Mws(s,c,g,d,h,_,S){let R=Art({configFileName:d.options.configFilePath,optionsToExtend:h,watchOptionsToExtend:_,system:s,reportDiagnostic:g,reportWatchStatus:K5t(s,d.options)});return Hnn(s,c,R),R.configFileParsingResult=d,R.extendedConfigCache=S,prt(R)}function Hws(s,c,g,d,h,_){let S=drt({rootFiles:d,options:h,watchOptions:_,system:s,reportDiagnostic:g,reportWatchStatus:K5t(s,h)});return Hnn(s,c,S),prt(S)}function Ynn(s,c){if(s===Ed&&c.extendedDiagnostics)return na(),Yws()}function Yws(){let s;return{addAggregateStatistic:c,forEachAggregateStatistics:g,clear:d};function c(h){let _=s?.get(h.name);_?_.type===2?_.value=Math.max(_.value,h.value):_.value+=h.value:(s??(s=new Map)).set(h.name,h)}function g(h){s?.forEach(h)}function d(){s=void 0}}function j5t(s,c){if(!c)return;if(!cs()){Ed.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` -`);return}let g=[];g.push({name:"Projects in scope",value:y1e(s.getBuildOrder()).length,type:1}),d("SolutionBuilder::Projects built"),d("SolutionBuilder::Timestamps only updates"),d("SolutionBuilder::Bundles updated"),c.forEachAggregateStatistics(_=>{_.name=`Aggregate ${_.name}`,g.push(_)}),KS((_,S)=>{Brt(_)&&g.push({name:`${h(_)} time`,value:S,type:0})}),ko(),na(),c.clear(),Jnn(Ed,g);function d(_){let S=cE(_);S&&g.push({name:h(_),value:S,type:1})}function h(_){return _.replace("SolutionBuilder::","")}}function Qnn(s,c){return s===Ed&&(c.diagnostics||c.extendedDiagnostics)}function Xnn(s,c){return s===Ed&&c.generateTrace}function z5t(s,c,g){Qnn(s,c)&&na(s),Xnn(s,c)&&hd(g?"build":"project",c.generateTrace,c.configFilePath)}function Brt(s){return Ac(s,"SolutionBuilder::")}function wrt(s,c,g){var d;let h=c.getCompilerOptions();Xnn(s,h)&&((d=ki)==null||d.stopTracing());let _;if(Qnn(s,h)){_=[];let O=s.getMemoryUsage?s.getMemoryUsage():-1;R("Files",c.getSourceFiles().length);let V=Zws(c);if(h.extendedDiagnostics)for(let[_e,Ee]of V.entries())R("Lines of "+_e,Ee);else R("Lines",ne(V.values(),(_e,Ee)=>_e+Ee,0));R("Identifiers",c.getIdentifierCount()),R("Symbols",c.getSymbolCount()),R("Types",c.getTypeCount()),R("Instantiations",c.getInstantiationCount()),O>=0&&S({name:"Memory used",value:O,type:2},!0);let M=cs(),ee=M?tA("Program"):0,re=M?tA("Bind"):0,ge=M?tA("Check"):0,Ie=M?tA("Emit"):0;if(h.extendedDiagnostics){let _e=c.getRelationCacheSizes();R("Assignability cache size",_e.assignable),R("Identity cache size",_e.identity),R("Subtype cache size",_e.subtype),R("Strict subtype cache size",_e.strictSubtype),M&&KS((Ee,Ne)=>{Brt(Ee)||T(`${Ee} time`,Ne,!0)})}else M&&(T("I/O read",tA("I/O Read"),!0),T("I/O write",tA("I/O Write"),!0),T("Parse time",ee,!0),T("Bind time",re,!0),T("Check time",ge,!0),T("Emit time",Ie,!0));M&&T("Total time",ee+re+ge+Ie,!1),Jnn(s,_),M?g?(KS(_e=>{Brt(_e)||pm(_e)}),jS(_e=>{Brt(_e)||fm(_e)})):ko():s.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` -`)}function S(O,V){_.push(O),V&&g?.addAggregateStatistic(O)}function R(O,V){S({name:O,value:V,type:1},!0)}function T(O,V,M){S({name:O,value:V,type:0},M)}}function Jnn(s,c){let g=0,d=0;for(let h of c){h.name.length>g&&(g=h.name.length);let _=Unn(h);_.length>d&&(d=_.length)}for(let h of c)s.write(`${h.name}:`.padEnd(g+2)+Unn(h).toString().padStart(d)+s.newLine)}function Unn(s){switch(s.type){case 1:return""+s.value;case 0:return(s.value/1e3).toFixed(2)+"s";case 2:return Math.round(s.value/1e3)+"K";default:pe.assertNever(s.type)}}function Qws(s,c,g){let d=s.getCurrentDirectory(),h=su(Ro(d,"tsconfig.json"));if(s.fileExists(h))c(kf(Z.A_tsconfig_json_file_is_already_defined_at_Colon_0,h));else{s.writeFile(h,lPt(g,s.newLine));let _=[s.newLine,...vrt(s,"Created a new tsconfig.json")];_.push("You can learn more at https://aka.ms/tsconfig"+s.newLine);for(let S of _)s.write(S)}}function xN(s,c=!0){return{type:s,reportFallback:c}}var Knn=xN(void 0,!1),jnn=xN(void 0,!1),rpe=xN(void 0,!0);function q5t(s,c){let g=l_(s,"strictNullChecks");return{serializeTypeOfDeclaration:V,serializeReturnTypeForSignature:ee,serializeTypeOfExpression:O,serializeTypeOfAccessor:T,tryReuseExistingTypeNode(ot,ir){if(c.canReuseTypeNode(ot,ir))return h(ot,ir)}};function d(ot,ir,qt=ir){return ir===void 0?void 0:c.markNodeReuse(ot,ir.flags&16?ir:me.cloneNode(ir),qt??ir)}function h(ot,ir){let{finalizeBoundary:qt,startRecoveryScope:Yt,hadError:Tr,markError:Cn}=c.createRecoveryBoundary(ot),jn=Mr(ir,Zi,uc);if(!qt())return;return ot.approximateLength+=ir.end-ir.pos,jn;function Zi(Zn){if(Tr())return Zn;let ya=Yt(),Fl=pie(Zn)?c.enterNewScope(ot,Zn):void 0,ba=ou(Zn);return Fl?.(),Tr()?uc(Zn)&&!vE(Zn)?(ya(),c.serializeExistingTypeNode(ot,Zn)):Zn:ba?c.markNodeReuse(ot,ba,Zn):void 0}function Ns(Zn){let ya=P7(Zn);switch(ya.kind){case 184:return Ic(ya);case 187:return ks(ya);case 200:return An(ya);case 199:let Fl=ya;if(Fl.operator===143)return si(Fl)}return Mr(Zn,Zi,uc)}function An(Zn){let ya=Ns(Zn.objectType);if(ya!==void 0)return me.updateIndexedAccessTypeNode(Zn,ya,Mr(Zn.indexType,Zi,uc))}function si(Zn){pe.assertEqual(Zn.operator,143);let ya=Ns(Zn.type);if(ya!==void 0)return me.updateTypeOperatorNode(Zn,ya)}function ks(Zn){let{introducesError:ya,node:Fl}=c.trackExistingEntityName(ot,Zn.exprName);if(!ya)return me.updateTypeQueryNode(Zn,Fl,Os(Zn.typeArguments,Zi,uc));let ba=c.serializeTypeName(ot,Zn.exprName,!0);if(ba)return c.markNodeReuse(ot,ba,Zn.exprName)}function Ic(Zn){if(c.canReuseTypeNode(ot,Zn)){let{introducesError:ya,node:Fl}=c.trackExistingEntityName(ot,Zn.typeName),ba=Os(Zn.typeArguments,Zi,uc);if(ya){let Oo=c.serializeTypeName(ot,Zn.typeName,!1,ba);if(Oo)return c.markNodeReuse(ot,Oo,Zn.typeName)}else{let Oo=me.updateTypeReferenceNode(Zn,Fl,ba);return c.markNodeReuse(ot,Oo,Zn)}}}function ou(Zn){var ya;if(J3(Zn))return Mr(Zn.type,Zi,uc);if(fOt(Zn)||Zn.kind===320)return me.createKeywordTypeNode(133);if(IOt(Zn))return me.createKeywordTypeNode(159);if(Nie(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createLiteralTypeNode(me.createNull())]);if(Z$e(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createKeywordTypeNode(157)]);if(_9e(Zn))return Mr(Zn.type,Zi);if(y9e(Zn))return me.createArrayTypeNode(Mr(Zn.type,Zi,uc));if(GU(Zn))return me.createTypeLiteralNode(lt(Zn.jsDocPropertyTags,hn=>{let Pi=Mr(Ir(hn.name)?hn.name:hn.name.right,Zi,Ir),co=c.getJsDocPropertyOverride(ot,Zn,hn);return me.createPropertySignature(void 0,Pi,hn.isBracketed||hn.typeExpression&&Z$e(hn.typeExpression.type)?me.createToken(58):void 0,co||hn.typeExpression&&Mr(hn.typeExpression.type,Zi,uc)||me.createKeywordTypeNode(133))}));if(oh(Zn)&&Ir(Zn.typeName)&&Zn.typeName.escapedText==="")return ua(me.createKeywordTypeNode(133),Zn);if((g_(Zn)||oh(Zn))&&gAe(Zn))return me.createTypeLiteralNode([me.createIndexSignature(void 0,[me.createParameterDeclaration(void 0,void 0,"x",void 0,Mr(Zn.typeArguments[0],Zi,uc))],Mr(Zn.typeArguments[1],Zi,uc))]);if(Die(Zn))if(jY(Zn)){let hn;return me.createConstructorTypeNode(void 0,Os(Zn.typeParameters,Zi,Ds),Xt(Zn.parameters,(Pi,co)=>Pi.name&&Ir(Pi.name)&&Pi.name.escapedText==="new"?(hn=Pi.type,void 0):me.createParameterDeclaration(void 0,Oo(Pi),c.markNodeReuse(ot,me.createIdentifier(hc(Pi,co)),Pi),me.cloneNode(Pi.questionToken),Mr(Pi.type,Zi,uc),void 0)),Mr(hn||Zn.type,Zi,uc)||me.createKeywordTypeNode(133))}else return me.createFunctionTypeNode(Os(Zn.typeParameters,Zi,Ds),lt(Zn.parameters,(hn,Pi)=>me.createParameterDeclaration(void 0,Oo(hn),c.markNodeReuse(ot,me.createIdentifier(hc(hn,Pi)),hn),me.cloneNode(hn.questionToken),Mr(hn.type,Zi,uc),void 0)),Mr(Zn.type,Zi,uc)||me.createKeywordTypeNode(133));if(Ox(Zn))return c.canReuseTypeNode(ot,Zn)||Cn(),Zn;if(Ds(Zn)){let{node:hn}=c.trackExistingEntityName(ot,Zn.name);return me.updateTypeParameterDeclaration(Zn,Os(Zn.modifiers,Zi,hg),hn,Mr(Zn.constraint,Zi,uc),Mr(Zn.default,Zi,uc))}if(_v(Zn)){let hn=An(Zn);return hn||(Cn(),Zn)}if(oh(Zn)){let hn=Ic(Zn);return hn||(Cn(),Zn)}if(Gy(Zn)){if(((ya=Zn.attributes)==null?void 0:ya.token)===132)return Cn(),Zn;if(!c.canReuseTypeNode(ot,Zn))return c.serializeExistingTypeNode(ot,Zn);let hn=yr(Zn,Zn.argument.literal),Pi=hn===Zn.argument.literal?d(ot,Zn.argument.literal):hn;return me.updateImportTypeNode(Zn,Pi===Zn.argument.literal?d(ot,Zn.argument):me.createLiteralTypeNode(Pi),Mr(Zn.attributes,Zi,kU),Mr(Zn.qualifier,Zi,mC),Os(Zn.typeArguments,Zi,uc),Zn.isTypeOf)}if(sh(Zn)&&Zn.name.kind===168&&!c.hasLateBindableName(Zn)){if(!zD(Zn))return Fl(Zn,Zi);if(c.shouldRemoveDeclaration(ot,Zn))return}if(Eu(Zn)&&!Zn.type||pi(Zn)&&!Zn.type&&!Zn.initializer||ss(Zn)&&!Zn.type&&!Zn.initializer||Si(Zn)&&!Zn.type&&!Zn.initializer){let hn=Fl(Zn,Zi);return hn===Zn&&(hn=c.markNodeReuse(ot,me.cloneNode(Zn),Zn)),hn.type=me.createKeywordTypeNode(133),Si(Zn)&&(hn.modifiers=void 0),hn}if(Ow(Zn)){let hn=ks(Zn);return hn||(Cn(),Zn)}if(Un(Zn)&&Hd(Zn.expression)){let{node:hn,introducesError:Pi}=c.trackExistingEntityName(ot,Zn.expression);if(Pi){let co=c.serializeTypeOfExpression(ot,Zn.expression),pa;if(BE(co))pa=co.literal;else{let Pa=c.evaluateEntityNameExpression(Zn.expression),$c=typeof Pa.value=="string"?me.createStringLiteral(Pa.value,void 0):typeof Pa.value=="number"?me.createNumericLiteral(Pa.value,0):void 0;if(!$c)return qm(co)&&c.trackComputedName(ot,Zn.expression),Zn;pa=$c}return pa.kind===11&&qh(pa.text,Hg(s))?me.createIdentifier(pa.text):pa.kind===9&&!pa.text.startsWith("-")?pa:me.updateComputedPropertyName(Zn,pa)}else return me.updateComputedPropertyName(Zn,hn)}if(vE(Zn)){let hn;if(Ir(Zn.parameterName)){let{node:Pi,introducesError:co}=c.trackExistingEntityName(ot,Zn.parameterName);co&&Cn(),hn=Pi}else hn=me.cloneNode(Zn.parameterName);return me.updateTypePredicateNode(Zn,me.cloneNode(Zn.assertsModifier),hn,Mr(Zn.type,Zi,uc))}if(Pw(Zn)||bh(Zn)||WB(Zn)){let hn=Fl(Zn,Zi),Pi=c.markNodeReuse(ot,hn===Zn?me.cloneNode(Zn):hn,Zn),co=rA(Pi);return ti(Pi,co|(ot.flags&1024&&bh(Zn)?0:1)),Pi}if(Lg(Zn)&&ot.flags&268435456&&!Zn.singleQuote){let hn=me.cloneNode(Zn);return hn.singleQuote=!0,hn}if(I2(Zn)){let hn=Mr(Zn.checkType,Zi,uc),Pi=c.enterNewScope(ot,Zn),co=Mr(Zn.extendsType,Zi,uc),pa=Mr(Zn.trueType,Zi,uc);Pi();let Pa=Mr(Zn.falseType,Zi,uc);return me.updateConditionalTypeNode(Zn,hn,co,pa,Pa)}if(VB(Zn)){if(Zn.operator===158&&Zn.type.kind===155){if(!c.canReuseTypeNode(ot,Zn))return Cn(),Zn}else if(Zn.operator===143){let hn=si(Zn);return hn||(Cn(),Zn)}}return Fl(Zn,Zi);function Fl(hn,Pi){let co=!ot.enclosingFile||ot.enclosingFile!==ms(hn);return _s(hn,Pi,void 0,co?ba:void 0)}function ba(hn,Pi,co,pa,Pa){let $c=Os(hn,Pi,co,pa,Pa);return $c&&($c.pos!==-1||$c.end!==-1)&&($c===hn&&($c=me.createNodeArray(hn.slice(),hn.hasTrailingComma)),xB($c,-1,-1)),$c}function Oo(hn){return hn.dotDotDotToken||(hn.type&&y9e(hn.type)?me.createToken(26):void 0)}function hc(hn,Pi){return hn.name&&Ir(hn.name)&&hn.name.escapedText==="this"?"this":Oo(hn)?"args":`arg${Pi}`}function yr(hn,Pi){let co=c.getModuleSpecifierOverride(ot,hn,Pi);return co?ua(me.createStringLiteral(co),Pi):Pi}}}function _(ot,ir,qt){if(!ot)return;let Yt;return(!qt||ur(ot))&&c.canReuseTypeNode(ir,ot)&&(Yt=h(ir,ot),Yt!==void 0&&(Yt=tr(Yt,qt,void 0,ir))),Yt}function S(ot,ir,qt,Yt,Tr,Cn=Tr!==void 0){if(!ot||!c.canReuseTypeNodeAnnotation(ir,qt,ot,Yt,Tr)&&(!Tr||!c.canReuseTypeNodeAnnotation(ir,qt,ot,Yt,!1)))return;let jn;return(!Tr||ur(ot))&&(jn=_(ot,ir,Tr)),jn!==void 0||!Cn?jn:(ir.tracker.reportInferenceFallback(qt),c.serializeExistingTypeNode(ir,ot,Tr)??me.createKeywordTypeNode(133))}function R(ot,ir,qt,Yt){if(!ot)return;let Tr=_(ot,ir,qt);return Tr!==void 0?Tr:(ir.tracker.reportInferenceFallback(Yt??ot),c.serializeExistingTypeNode(ir,ot,qt)??me.createKeywordTypeNode(133))}function T(ot,ir,qt){return Ie(ot,ir,qt)??et(ot,c.getAllAccessorDeclarations(ot),qt,ir)}function O(ot,ir,qt,Yt){let Tr=at(ot,ir,!1,qt,Yt);return Tr.type!==void 0?Tr.type:Pe(ot,ir,Tr.reportFallback)}function V(ot,ir,qt){switch(ot.kind){case 170:case 342:return Ee(ot,ir,qt);case 261:return _e(ot,ir,qt);case 172:case 349:case 173:return Te(ot,ir,qt);case 209:return Ze(ot,ir,qt);case 278:return O(ot.expression,qt,void 0,!0);case 212:case 213:case 227:return Ne(ot,ir,qt);case 304:case 305:return M(ot,ir,qt);default:pe.assertNever(ot,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(ot.kind)}`)}}function M(ot,ir,qt){let Yt=Zh(ot),Tr;if(Yt&&c.canReuseTypeNodeAnnotation(qt,ot,Yt,ir)&&(Tr=_(Yt,qt)),!Tr&&ot.kind===304){let Cn=ot.initializer,jn=IQ(Cn)?Gie(Cn):Cn.kind===235||Cn.kind===217?Cn.type:void 0;jn&&!c2(jn)&&c.canReuseTypeNodeAnnotation(qt,ot,jn,ir)&&(Tr=_(jn,qt))}return Tr??Ze(ot,ir,qt,!1)}function ee(ot,ir,qt){switch(ot.kind){case 178:return T(ot,ir,qt);case 175:case 263:case 181:case 174:case 180:case 177:case 179:case 182:case 185:case 186:case 219:case 220:case 318:case 324:return Gr(ot,ir,qt);default:pe.assertNever(ot,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(ot.kind)}`)}}function re(ot){if(ot)return ot.kind===178?wo(ot)&&sN(ot)||Fb(ot):fbe(ot)}function ge(ot,ir){let qt=re(ot);return!qt&&ot!==ir.firstAccessor&&(qt=re(ir.firstAccessor)),!qt&&ir.secondAccessor&&ot!==ir.secondAccessor&&(qt=re(ir.secondAccessor)),qt}function Ie(ot,ir,qt){let Yt=c.getAllAccessorDeclarations(ot),Tr=ge(ot,Yt);if(Tr&&!vE(Tr))return Ye(qt,ot,()=>S(Tr,qt,ot,ir)??Ze(ot,ir,qt));if(Yt.getAccessor)return Ye(qt,Yt.getAccessor,()=>Gr(Yt.getAccessor,ir,qt))}function _e(ot,ir,qt){var Yt;let Tr=Zh(ot),Cn=rpe;return Tr?Cn=xN(S(Tr,qt,ot,ir)):ot.initializer&&(((Yt=ir.declarations)==null?void 0:Yt.length)===1||ze(ir.declarations,nc)===1)&&!c.isExpandoFunctionDeclaration(ot)&&!pr(ot)&&(Cn=at(ot.initializer,qt,void 0,void 0,XT(ot))),Cn.type!==void 0?Cn.type:Ze(ot,ir,qt,Cn.reportFallback)}function Ee(ot,ir,qt){let Yt=ot.parent;if(Yt.kind===179)return T(Yt,void 0,qt);let Tr=Zh(ot),Cn=c.requiresAddingImplicitUndefined(ot,ir,qt.enclosingDeclaration),jn=rpe;return Tr?jn=xN(S(Tr,qt,ot,ir,Cn)):Si(ot)&&ot.initializer&&Ir(ot.name)&&!pr(ot)&&(jn=at(ot.initializer,qt,void 0,Cn)),jn.type!==void 0?jn.type:Ze(ot,ir,qt,jn.reportFallback)}function Ne(ot,ir,qt){let Yt=Zh(ot),Tr;Yt&&(Tr=S(Yt,qt,ot,ir));let Cn=qt.suppressReportInferenceFallback;qt.suppressReportInferenceFallback=!0;let jn=Tr??Ze(ot,ir,qt,!1);return qt.suppressReportInferenceFallback=Cn,jn}function Te(ot,ir,qt){let Yt=Zh(ot),Tr=c.requiresAddingImplicitUndefined(ot,ir,qt.enclosingDeclaration),Cn=rpe;if(Yt)Cn=xN(S(Yt,qt,ot,ir,Tr));else{let jn=pi(ot)?ot.initializer:void 0;if(jn&&!pr(ot)){let Zi=Cf(ot);Cn=at(jn,qt,void 0,Tr,Zi)}}return Cn.type!==void 0?Cn.type:Ze(ot,ir,qt,Cn.reportFallback)}function Ze(ot,ir,qt,Yt=!0){return Yt&&qt.tracker.reportInferenceFallback(ot),qt.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfDeclaration(qt,ot,ir)}function Pe(ot,ir,qt=!0,Yt){return pe.assert(!Yt),qt&&ir.tracker.reportInferenceFallback(ot),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfExpression(ir,ot)??me.createKeywordTypeNode(133)}function Ke(ot,ir,qt,Yt){return Yt&&ir.tracker.reportInferenceFallback(ot),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeReturnTypeForSignature(ir,ot,qt)??me.createKeywordTypeNode(133)}function et(ot,ir,qt,Yt,Tr=!0){return ot.kind===178?Gr(ot,Yt,qt,Tr):(Tr&&qt.tracker.reportInferenceFallback(ot),(ir.getAccessor&&Gr(ir.getAccessor,Yt,qt,Tr))??c.serializeTypeOfDeclaration(qt,ot,Yt)??me.createKeywordTypeNode(133))}function Ye(ot,ir,qt){let Yt=c.enterNewScope(ot,ir),Tr=qt();return Yt(),Tr}function Tt(ot,ir,qt,Yt){return c2(ir)?at(ot,qt,!0,Yt):xN(R(ir,qt,Yt))}function at(ot,ir,qt=!1,Yt=!1,Tr=!1){switch(ot.kind){case 218:return IQ(ot)?Tt(ot.expression,Gie(ot),ir,Yt):at(ot.expression,ir,qt,Yt);case 80:if(c.isUndefinedIdentifierExpression(ot))return xN(it());break;case 106:return xN(g?tr(me.createLiteralTypeNode(me.createNull()),Yt,ot,ir):me.createKeywordTypeNode(133));case 220:case 219:return pe.type(ot),Ye(ir,ot,()=>Qe(ot,ir));case 217:case 235:let Cn=ot;return Tt(Cn.expression,Cn.type,ir,Yt);case 225:let jn=ot;if(Sz(jn))return kt(jn.operator===40?jn.operand:jn,jn.operand.kind===10?163:150,ir,qt||Tr,Yt);break;case 210:return mt(ot,ir,qt,Yt);case 211:return Rt(ot,ir,qt,Yt);case 232:return xN(Pe(ot,ir,!0,Yt));case 229:if(!qt&&!Tr)return xN(me.createKeywordTypeNode(154));break;default:let Zi,Ns=ot;switch(ot.kind){case 9:Zi=150;break;case 15:Ns=me.createStringLiteral(ot.text),Zi=154;break;case 11:Zi=154;break;case 10:Zi=163;break;case 112:case 97:Zi=136;break}if(Zi)return kt(Ns,Zi,ir,qt||Tr,Yt)}return rpe}function Qe(ot,ir){let qt=Gr(ot,void 0,ir),Yt=Wt(ot.typeParameters,ir),Tr=ot.parameters.map(Cn=>je(Cn,ir));return xN(me.createFunctionTypeNode(Yt,Tr,qt))}function Ct(ot,ir,qt){if(!qt)return ir.tracker.reportInferenceFallback(ot),!1;for(let Yt of ot.elements)if(Yt.kind===231)return ir.tracker.reportInferenceFallback(Yt),!1;return!0}function mt(ot,ir,qt,Yt){if(!Ct(ot,ir,qt))return Yt||em(fv(ot).parent)?jnn:xN(Pe(ot,ir,!1,Yt));let Tr=ir.noInferenceFallback;ir.noInferenceFallback=!0;let Cn=[];for(let Zi of ot.elements)if(pe.assert(Zi.kind!==231),Zi.kind===233)Cn.push(it());else{let Ns=at(Zi,ir,qt),An=Ns.type!==void 0?Ns.type:Pe(Zi,ir,Ns.reportFallback);Cn.push(An)}let jn=me.createTupleTypeNode(Cn);return jn.emitNode={flags:1,autoGenerate:void 0,internalFlags:0},ir.noInferenceFallback=Tr,Knn}function yt(ot,ir){let qt=!0;for(let Yt of ot.properties){if(Yt.flags&262144){qt=!1;break}if(Yt.kind===305||Yt.kind===306)ir.tracker.reportInferenceFallback(Yt),qt=!1;else if(Yt.name.flags&262144){qt=!1;break}else if(Yt.name.kind===81)qt=!1;else if(Yt.name.kind===168){let Tr=Yt.name.expression;!Sz(Tr,!1)&&!c.isDefinitelyReferenceToGlobalSymbolObject(Tr)&&(ir.tracker.reportInferenceFallback(Yt.name),qt=!1)}}return qt}function Rt(ot,ir,qt,Yt){if(!yt(ot,ir))return Yt||em(fv(ot).parent)?jnn:xN(Pe(ot,ir,!1,Yt));let Tr=ir.noInferenceFallback;ir.noInferenceFallback=!0;let Cn=[],jn=ir.flags;ir.flags|=4194304;for(let Ns of ot.properties){pe.assert(!l0(Ns)&&!Mx(Ns));let An=Ns.name,si;switch(Ns.kind){case 175:si=Ye(ir,Ns,()=>_r(Ns,An,ir,qt));break;case 304:si=Lt(Ns,An,ir,qt);break;case 179:case 178:si=Gt(Ns,An,ir);break}si&&(yh(si,Ns),Cn.push(si))}ir.flags=jn;let Zi=me.createTypeLiteralNode(Cn);return ir.flags&1024||ti(Zi,1),ir.noInferenceFallback=Tr,Knn}function Lt(ot,ir,qt,Yt){let Tr=Yt?[me.createModifier(148)]:[],Cn=at(ot.initializer,qt,Yt),jn=Cn.type!==void 0?Cn.type:Ze(ot,void 0,qt,Cn.reportFallback);return me.createPropertySignature(Tr,d(qt,ir),void 0,jn)}function je(ot,ir){return me.updateParameterDeclaration(ot,void 0,d(ir,ot.dotDotDotToken),c.serializeNameOfParameter(ir,ot),c.isOptionalParameter(ot)?me.createToken(58):void 0,Ee(ot,void 0,ir),void 0)}function Wt(ot,ir){return ot?.map(qt=>{var Yt;let{node:Tr}=c.trackExistingEntityName(ir,qt.name);return me.updateTypeParameterDeclaration(qt,(Yt=qt.modifiers)==null?void 0:Yt.map(Cn=>d(ir,Cn)),Tr,R(qt.constraint,ir),R(qt.default,ir))})}function _r(ot,ir,qt,Yt){let Tr=Gr(ot,void 0,qt),Cn=Wt(ot.typeParameters,qt),jn=ot.parameters.map(Zi=>je(Zi,qt));return Yt?me.createPropertySignature([me.createModifier(148)],d(qt,ir),d(qt,ot.questionToken),me.createFunctionTypeNode(Cn,jn,Tr)):(Ir(ir)&&ir.escapedText==="new"&&(ir=me.createStringLiteral("new")),me.createMethodSignature([],d(qt,ir),d(qt,ot.questionToken),Cn,jn,Tr))}function Gt(ot,ir,qt){let Yt=c.getAllAccessorDeclarations(ot),Tr=Yt.getAccessor&&re(Yt.getAccessor),Cn=Yt.setAccessor&&re(Yt.setAccessor);if(Tr!==void 0&&Cn!==void 0)return Ye(qt,ot,()=>{let jn=ot.parameters.map(Zi=>je(Zi,qt));return wB(ot)?me.updateGetAccessorDeclaration(ot,[],d(qt,ir),jn,R(Tr,qt),void 0):me.updateSetAccessorDeclaration(ot,[],d(qt,ir),jn,void 0)});if(Yt.firstAccessor===ot){let Zi=(Tr?Ye(qt,Yt.getAccessor,()=>R(Tr,qt)):Cn?Ye(qt,Yt.setAccessor,()=>R(Cn,qt)):void 0)??et(ot,Yt,qt,void 0);return me.createPropertySignature(Yt.setAccessor===void 0?[me.createModifier(148)]:[],d(qt,ir),void 0,Zi)}}function it(){return g?me.createKeywordTypeNode(157):me.createKeywordTypeNode(133)}function kt(ot,ir,qt,Yt,Tr){let Cn;return Yt?(ot.kind===225&&ot.operator===40&&(Cn=me.createLiteralTypeNode(d(qt,ot.operand))),Cn=me.createLiteralTypeNode(d(qt,ot))):Cn=me.createKeywordTypeNode(ir),xN(tr(Cn,Tr,ot,qt))}function tr(ot,ir,qt,Yt){let Tr=qt&&fv(qt).parent,Cn=Tr&&em(Tr)&&GB(Tr);return!g||!(ir||Cn)?ot:(ur(ot)||Yt.tracker.reportInferenceFallback(ot),gS(ot)?me.createUnionTypeNode([...ot.types,me.createKeywordTypeNode(157)]):me.createUnionTypeNode([ot,me.createKeywordTypeNode(157)]))}function ur(ot){return!g||w0(ot.kind)||ot.kind===202||ot.kind===185||ot.kind===186||ot.kind===189||ot.kind===190||ot.kind===188||ot.kind===204||ot.kind===198?!0:ot.kind===197?ur(ot.type):ot.kind===193||ot.kind===194?ot.types.every(ur):!1}function Gr(ot,ir,qt,Yt=!0){let Tr=rpe,Cn=jY(ot)?Zh(ot.parameters[0]):Fb(ot);return Cn?Tr=xN(S(Cn,qt,ot,ir)):B3(ot)&&(Tr=dt(ot,qt)),Tr.type!==void 0?Tr.type:Ke(ot,qt,ir,Yt&&Tr.reportFallback&&!Cn)}function dt(ot,ir){let qt;if(ot&&!af(ot.body)){if(BI(ot)&3)return rpe;let Tr=ot.body;Tr&&eg(Tr)?wF(Tr,Cn=>{if(Cn.parent!==Tr)return qt=void 0,!0;if(!qt)qt=Cn.expression;else return qt=void 0,!0}):qt=Tr}if(qt)if(pr(qt)){let Yt=IQ(qt)?Gie(qt):Xd(qt)||WF(qt)?qt.type:void 0;if(Yt&&!c2(Yt))return xN(_(Yt,ir))}else return at(qt,ir);return rpe}function pr(ot){return ji(ot.parent,ir=>Ll(ir)||!Gd(ir)&&!!Zh(ir)||wN(ir)||Tie(ir))}}var qW={};o(qW,{NameValidationResult:()=>nin,discoverTypings:()=>Uws,isTypingUpToDate:()=>tin,loadSafeList:()=>Xws,loadTypesMap:()=>Jws,nonRelativeModuleNameForTypingCache:()=>rin,renderPackageNameValidationFailure:()=>jws,validatePackageName:()=>Kws});var UVe="action::set",KVe="action::invalidate",jVe="action::packageInstalled",Trt="event::typesRegistry",Rrt="event::beginInstallTypes",Nrt="event::endInstallTypes",$5t="event::initializationFailed",v1e="action::watchTypingLocations",Drt;(s=>{s.GlobalCacheLocation="--globalTypingsCacheLocation",s.LogFile="--logFile",s.EnableTelemetry="--enableTelemetry",s.TypingSafeListLocation="--typingSafeListLocation",s.TypesMapLocation="--typesMapLocation",s.NpmLocation="--npmLocation",s.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(Drt||(Drt={}));function znn(s){return Ed.args.includes(s)}function qnn(s){let c=Ed.args.indexOf(s);return c>=0&&cs.readFile(d));return new Map(Object.entries(g.config))}function Jws(s,c){var g;let d=HEe(c,h=>s.readFile(h));if((g=d.config)!=null&&g.simpleMap)return new Map(Object.entries(d.config.simpleMap))}function Uws(s,c,g,d,h,_,S,R,T,O){if(!S||!S.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};let V=new Map;g=Xt(g,Ze=>{let Pe=su(Ze);if(CN(Pe))return Pe});let M=[];S.include&&Ee(S.include,"Explicitly included types");let ee=S.exclude||[];if(!O.types){let Ze=new Set(g.map(Mo));Ze.add(d),Ze.forEach(Pe=>{Ne(Pe,"bower.json","bower_components",M),Ne(Pe,"package.json","node_modules",M)})}if(S.disableFilenameBasedTypeAcquisition||Te(g),R){let Ze=no(R.map(rin),YA,Ca);Ee(Ze,"Inferred typings from unresolved imports")}for(let Ze of ee)V.delete(Ze)&&c&&c(`Typing for ${Ze} is in exclude list, will be ignored.`);_.forEach((Ze,Pe)=>{let Ke=T.get(Pe);V.get(Pe)===!1&&Ke!==void 0&&tin(Ze,Ke)&&V.set(Pe,Ze.typingLocation)});let re=[],ge=[];V.forEach((Ze,Pe)=>{Ze?ge.push(Ze):re.push(Pe)});let Ie={cachedTypingPaths:ge,newTypingNames:re,filesToWatch:M};return c&&c(`Finished typings discovery:${n5(Ie)}`),Ie;function _e(Ze){V.has(Ze)||V.set(Ze,!1)}function Ee(Ze,Pe){c&&c(`${Pe}: ${JSON.stringify(Ze)}`),F(Ze,_e)}function Ne(Ze,Pe,Ke,et){let Ye=Ro(Ze,Pe),Tt,at;s.fileExists(Ye)&&(et.push(Ye),Tt=HEe(Ye,yt=>s.readFile(yt)).config,at=jt([Tt.dependencies,Tt.devDependencies,Tt.optionalDependencies,Tt.peerDependencies],yg),Ee(at,`Typing names in '${Ye}' dependencies`));let Qe=Ro(Ze,Ke);if(et.push(Qe),!s.directoryExists(Qe))return;let Ct=[],mt=at?at.map(yt=>Ro(Qe,yt,Pe)):s.readDirectory(Qe,[".json"],void 0,void 0,3).filter(yt=>{if(dp(yt)!==Pe)return!1;let Rt=kp(su(yt)),Lt=Rt[Rt.length-3][0]==="@";return Lt&&Qm(Rt[Rt.length-4])===Ke||!Lt&&Qm(Rt[Rt.length-3])===Ke});c&&c(`Searching for typing names in ${Qe}; all files: ${JSON.stringify(mt)}`);for(let yt of mt){let Rt=su(yt),je=HEe(Rt,_r=>s.readFile(_r)).config;if(!je.name)continue;let Wt=je.types||je.typings;if(Wt){let _r=Xc(Wt,Mo(Rt));s.fileExists(_r)?(c&&c(` Package '${je.name}' provides its own types.`),V.set(je.name,_r)):c&&c(` Package '${je.name}' provides its own types but they are missing.`)}else Ct.push(je.name)}Ee(Ct," Found package names")}function Te(Ze){let Pe=Xt(Ze,et=>{if(!CN(et))return;let Ye=a0(Qm(dp(et))),Tt=us(Ye);return h.get(Tt)});Pe.length&&Ee(Pe,"Inferred typings from file names"),zt(Ze,et=>cA(et,".jsx"))&&(c&&c("Inferred 'react' typings due to presence of '.jsx' extension"),_e("react"))}}var nin=(s=>(s[s.Ok=0]="Ok",s[s.EmptyName=1]="EmptyName",s[s.NameTooLong=2]="NameTooLong",s[s.NameStartsWithDot=3]="NameStartsWithDot",s[s.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",s[s.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",s))(nin||{}),iin=214;function Kws(s){return eMt(s,!0)}function eMt(s,c){if(!s)return 1;if(s.length>iin)return 2;if(s.charCodeAt(0)===46)return 3;if(s.charCodeAt(0)===95)return 4;if(c){let g=/^@([^/]+)\/([^/]+)$/.exec(s);if(g){let d=eMt(g[1],!1);if(d!==0)return{name:g[1],isScopeName:!0,result:d};let h=eMt(g[2],!1);return h!==0?{name:g[2],isScopeName:!1,result:h}:0}}return encodeURIComponent(s)!==s?5:0}function jws(s,c){return typeof s=="object"?sin(c,s.result,s.name,s.isScopeName):sin(c,s,c,!1)}function sin(s,c,g,d){let h=d?"Scope":"Package";switch(c){case 1:return`'${s}':: ${h} name '${g}' cannot be empty`;case 2:return`'${s}':: ${h} name '${g}' should be less than ${iin} characters`;case 3:return`'${s}':: ${h} name '${g}' cannot start with '.'`;case 4:return`'${s}':: ${h} name '${g}' cannot start with '_'`;case 5:return`'${s}':: ${h} name '${g}' contains non URI safe characters`;case 0:return pe.fail();default:pe.assertNever(c)}}var zVe;(s=>{class c{constructor(h){this.text=h}getText(h,_){return h===0&&_===this.text.length?this.text:this.text.substring(h,_)}getLength(){return this.text.length}getChangeRange(){}}function g(d){return new c(d)}s.fromString=g})(zVe||(zVe={}));var tMt=(s=>(s[s.Dependencies=1]="Dependencies",s[s.DevDependencies=2]="DevDependencies",s[s.PeerDependencies=4]="PeerDependencies",s[s.OptionalDependencies=8]="OptionalDependencies",s[s.All=15]="All",s))(tMt||{}),rMt=(s=>(s[s.Off=0]="Off",s[s.On=1]="On",s[s.Auto=2]="Auto",s))(rMt||{}),nMt=(s=>(s[s.Semantic=0]="Semantic",s[s.PartialSemantic=1]="PartialSemantic",s[s.Syntactic=2]="Syntactic",s))(nMt||{}),HB={},iMt=(s=>(s.Original="original",s.TwentyTwenty="2020",s))(iMt||{}),krt=(s=>(s.All="All",s.SortAndCombine="SortAndCombine",s.RemoveUnused="RemoveUnused",s))(krt||{}),xrt=(s=>(s[s.Invoked=1]="Invoked",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",s))(xrt||{}),sMt=(s=>(s.Type="Type",s.Parameter="Parameter",s.Enum="Enum",s))(sMt||{}),oMt=(s=>(s.none="none",s.definition="definition",s.reference="reference",s.writtenReference="writtenReference",s))(oMt||{}),aMt=(s=>(s[s.None=0]="None",s[s.Block=1]="Block",s[s.Smart=2]="Smart",s))(aMt||{}),Grt=(s=>(s.Ignore="ignore",s.Insert="insert",s.Remove="remove",s))(Grt||{});function qVe(s){return{indentSize:4,tabSize:4,newLineCharacter:s||` -`,convertTabsToSpaces:!0,indentStyle:2,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:"ignore",trimTrailingWhitespace:!0,indentSwitchCase:!0}}var oin=qVe(` -`),$Ve=(s=>(s[s.aliasName=0]="aliasName",s[s.className=1]="className",s[s.enumName=2]="enumName",s[s.fieldName=3]="fieldName",s[s.interfaceName=4]="interfaceName",s[s.keyword=5]="keyword",s[s.lineBreak=6]="lineBreak",s[s.numericLiteral=7]="numericLiteral",s[s.stringLiteral=8]="stringLiteral",s[s.localName=9]="localName",s[s.methodName=10]="methodName",s[s.moduleName=11]="moduleName",s[s.operator=12]="operator",s[s.parameterName=13]="parameterName",s[s.propertyName=14]="propertyName",s[s.punctuation=15]="punctuation",s[s.space=16]="space",s[s.text=17]="text",s[s.typeParameterName=18]="typeParameterName",s[s.enumMemberName=19]="enumMemberName",s[s.functionName=20]="functionName",s[s.regularExpressionLiteral=21]="regularExpressionLiteral",s[s.link=22]="link",s[s.linkName=23]="linkName",s[s.linkText=24]="linkText",s))($Ve||{}),cMt=(s=>(s[s.None=0]="None",s[s.MayIncludeAutoImports=1]="MayIncludeAutoImports",s[s.IsImportStatementCompletion=2]="IsImportStatementCompletion",s[s.IsContinuation=4]="IsContinuation",s[s.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",s[s.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",s[s.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",s))(cMt||{}),lMt=(s=>(s.Comment="comment",s.Region="region",s.Code="code",s.Imports="imports",s))(lMt||{}),uMt=(s=>(s[s.JavaScript=0]="JavaScript",s[s.SourceMap=1]="SourceMap",s[s.Declaration=2]="Declaration",s))(uMt||{}),gMt=(s=>(s[s.None=0]="None",s[s.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",s[s.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",s[s.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",s[s.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",s[s.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",s[s.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",s))(gMt||{}),AMt=(s=>(s[s.Punctuation=0]="Punctuation",s[s.Keyword=1]="Keyword",s[s.Operator=2]="Operator",s[s.Comment=3]="Comment",s[s.Whitespace=4]="Whitespace",s[s.Identifier=5]="Identifier",s[s.NumberLiteral=6]="NumberLiteral",s[s.BigIntLiteral=7]="BigIntLiteral",s[s.StringLiteral=8]="StringLiteral",s[s.RegExpLiteral=9]="RegExpLiteral",s))(AMt||{}),dMt=(s=>(s.unknown="",s.warning="warning",s.keyword="keyword",s.scriptElement="script",s.moduleElement="module",s.classElement="class",s.localClassElement="local class",s.interfaceElement="interface",s.typeElement="type",s.enumElement="enum",s.enumMemberElement="enum member",s.variableElement="var",s.localVariableElement="local var",s.variableUsingElement="using",s.variableAwaitUsingElement="await using",s.functionElement="function",s.localFunctionElement="local function",s.memberFunctionElement="method",s.memberGetAccessorElement="getter",s.memberSetAccessorElement="setter",s.memberVariableElement="property",s.memberAccessorVariableElement="accessor",s.constructorImplementationElement="constructor",s.callSignatureElement="call",s.indexSignatureElement="index",s.constructSignatureElement="construct",s.parameterElement="parameter",s.typeParameterElement="type parameter",s.primitiveType="primitive type",s.label="label",s.alias="alias",s.constElement="const",s.letElement="let",s.directory="directory",s.externalModuleName="external module name",s.jsxAttribute="JSX attribute",s.string="string",s.link="link",s.linkName="link name",s.linkText="link text",s))(dMt||{}),pMt=(s=>(s.none="",s.publicMemberModifier="public",s.privateMemberModifier="private",s.protectedMemberModifier="protected",s.exportedModifier="export",s.ambientModifier="declare",s.staticModifier="static",s.abstractModifier="abstract",s.optionalModifier="optional",s.deprecatedModifier="deprecated",s.dtsModifier=".d.ts",s.tsModifier=".ts",s.tsxModifier=".tsx",s.jsModifier=".js",s.jsxModifier=".jsx",s.jsonModifier=".json",s.dmtsModifier=".d.mts",s.mtsModifier=".mts",s.mjsModifier=".mjs",s.dctsModifier=".d.cts",s.ctsModifier=".cts",s.cjsModifier=".cjs",s))(pMt||{}),fMt=(s=>(s.comment="comment",s.identifier="identifier",s.keyword="keyword",s.numericLiteral="number",s.bigintLiteral="bigint",s.operator="operator",s.stringLiteral="string",s.whiteSpace="whitespace",s.text="text",s.punctuation="punctuation",s.className="class name",s.enumName="enum name",s.interfaceName="interface name",s.moduleName="module name",s.typeParameterName="type parameter name",s.typeAliasName="type alias name",s.parameterName="parameter name",s.docCommentTagName="doc comment tag name",s.jsxOpenTagName="jsx open tag name",s.jsxCloseTagName="jsx close tag name",s.jsxSelfClosingTagName="jsx self closing tag name",s.jsxAttribute="jsx attribute",s.jsxText="jsx text",s.jsxAttributeStringLiteralValue="jsx attribute string literal value",s))(fMt||{}),Frt=(s=>(s[s.comment=1]="comment",s[s.identifier=2]="identifier",s[s.keyword=3]="keyword",s[s.numericLiteral=4]="numericLiteral",s[s.operator=5]="operator",s[s.stringLiteral=6]="stringLiteral",s[s.regularExpressionLiteral=7]="regularExpressionLiteral",s[s.whiteSpace=8]="whiteSpace",s[s.text=9]="text",s[s.punctuation=10]="punctuation",s[s.className=11]="className",s[s.enumName=12]="enumName",s[s.interfaceName=13]="interfaceName",s[s.moduleName=14]="moduleName",s[s.typeParameterName=15]="typeParameterName",s[s.typeAliasName=16]="typeAliasName",s[s.parameterName=17]="parameterName",s[s.docCommentTagName=18]="docCommentTagName",s[s.jsxOpenTagName=19]="jsxOpenTagName",s[s.jsxCloseTagName=20]="jsxCloseTagName",s[s.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",s[s.jsxAttribute=22]="jsxAttribute",s[s.jsxText=23]="jsxText",s[s.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",s[s.bigintLiteral=25]="bigintLiteral",s))(Frt||{}),p_=Rb(99,!0),IMt=(s=>(s[s.None=0]="None",s[s.Value=1]="Value",s[s.Type=2]="Type",s[s.Namespace=4]="Namespace",s[s.All=7]="All",s))(IMt||{});function eWe(s){switch(s.kind){case 261:return wo(s)&&u1(s)?7:1;case 170:case 209:case 173:case 172:case 304:case 305:case 175:case 174:case 177:case 178:case 179:case 263:case 219:case 220:case 300:case 292:return 1;case 169:case 265:case 266:case 188:return 2;case 347:return s.name===void 0?3:2;case 307:case 264:return 3;case 268:return a_(s)||QF(s)===1?5:4;case 267:case 276:case 277:case 272:case 273:case 278:case 279:return 7;case 308:return 5}return 7}function YU(s){s=Urt(s);let c=s.parent;return s.kind===308?1:yf(c)||D0(c)||MF(c)||Ay(c)||Hw(c)||Zm(c)&&s===c.name?7:tWe(s)?zws(s):UT(s)?eWe(c):mC(s)&&ji(s,Qp(Bde,xx,U3))?7:tTs(s)?2:qws(s)?4:Ds(c)?(pe.assert(PB(c.parent)),2):BE(c)?3:1}function zws(s){let c=s.kind===167?s:zi(s.parent)&&s.parent.right===s?s.parent:void 0;return c&&c.parent.kind===272?7:4}function tWe(s){if(!s.parent)return!1;for(;s.parent.kind===167;)s=s.parent;return _3(s.parent)&&s.parent.moduleReference===s}function qws(s){return $ws(s)||eTs(s)}function $ws(s){let c=s,g=!0;if(c.parent.kind===167){for(;c.parent&&c.parent.kind===167;)c=c.parent;g=c.right===s}return c.parent.kind===184&&!g}function eTs(s){let c=s,g=!0;if(c.parent.kind===212){for(;c.parent&&c.parent.kind===212;)c=c.parent;g=c.name===s}if(!g&&c.parent.kind===234&&c.parent.parent.kind===299){let d=c.parent.parent.parent;return d.kind===264&&c.parent.parent.token===119||d.kind===265&&c.parent.parent.token===96}return!1}function tTs(s){switch($7(s)&&(s=s.parent),s.kind){case 110:return!JT(s);case 198:return!0}switch(s.parent.kind){case 184:return!0;case 206:return!s.parent.isTypeOf;case 234:return kw(s.parent)}return!1}function Zrt(s,c=!1,g=!1){return B1e(s,Ll,Vrt,c,g)}function ipe(s,c=!1,g=!1){return B1e(s,m2,Vrt,c,g)}function Lrt(s,c=!1,g=!1){return B1e(s,gv,Vrt,c,g)}function hMt(s,c=!1,g=!1){return B1e(s,QI,rTs,c,g)}function mMt(s,c=!1,g=!1){return B1e(s,So,Vrt,c,g)}function CMt(s,c=!1,g=!1){return B1e(s,nI,nTs,c,g)}function Vrt(s){return s.expression}function rTs(s){return s.tag}function nTs(s){return s.tagName}function B1e(s,c,g,d,h){let _=d?iTs(s):rWe(s);return h&&(_=XI(_)),!!_&&!!_.parent&&c(_.parent)&&g(_.parent)===_}function rWe(s){return ese(s)?s.parent:s}function iTs(s){return ese(s)||Mrt(s)?s.parent:s}function nWe(s,c){for(;s;){if(s.kind===257&&s.label.escapedText===c)return s.label;s=s.parent}}function w1e(s,c){return jo(s.expression)?s.expression.name.text===c:!1}function T1e(s){var c;return Ir(s)&&((c=Gs(s.parent,EY))==null?void 0:c.label)===s}function Wrt(s){var c;return Ir(s)&&((c=Gs(s.parent,HW))==null?void 0:c.label)===s}function Ort(s){return Wrt(s)||T1e(s)}function Prt(s){var c;return((c=Gs(s.parent,h3))==null?void 0:c.tagName)===s}function _Mt(s){var c;return((c=Gs(s.parent,zi))==null?void 0:c.right)===s}function ese(s){var c;return((c=Gs(s.parent,jo))==null?void 0:c.name)===s}function Mrt(s){var c;return((c=Gs(s.parent,Qg))==null?void 0:c.argumentExpression)===s}function Hrt(s){var c;return((c=Gs(s.parent,Lh))==null?void 0:c.name)===s}function Yrt(s){var c;return Ir(s)&&((c=Gs(s.parent,Eu))==null?void 0:c.name)===s}function iWe(s){switch(s.parent.kind){case 173:case 172:case 304:case 307:case 175:case 174:case 178:case 179:case 268:return fl(s.parent)===s;case 213:return s.parent.argumentExpression===s;case 168:return!0;case 202:return s.parent.parent.kind===200;default:return!1}}function yMt(s){return HL(s.parent.parent)&&G7(s.parent.parent)===s}function QU(s){for(cS(s)&&(s=s.parent.parent);;){if(s=s.parent,!s)return;switch(s.kind){case 308:case 175:case 174:case 263:case 219:case 178:case 179:case 264:case 265:case 267:case 268:return s}}}function vQ(s){switch(s.kind){case 308:return Lm(s)?"module":"script";case 268:return"module";case 264:case 232:return"class";case 265:return"interface";case 266:case 339:case 347:return"type";case 267:return"enum";case 261:return c(s);case 209:return c(Gw(s));case 220:case 263:case 219:return"function";case 178:return"getter";case 179:return"setter";case 175:case 174:return"method";case 304:let{initializer:g}=s;return Eu(g)?"method":"property";case 173:case 172:case 305:case 306:return"property";case 182:return"index";case 181:return"construct";case 180:return"call";case 177:case 176:return"constructor";case 169:return"type parameter";case 307:return"enum member";case 170:return Ga(s,31)?"property":"parameter";case 272:case 277:case 282:case 275:case 281:return"alias";case 227:let d=oI(s),{right:h}=s;switch(d){case 7:case 8:case 9:case 0:return"";case 1:case 2:let S=vQ(h);return S===""?"const":S;case 3:return jA(h)?"method":"property";case 4:return"property";case 5:return jA(h)?"method":"property";case 6:return"local class";default:return""}case 80:return Hw(s.parent)?"alias":"";case 278:let _=vQ(s.expression);return _===""?"const":_;default:return""}function c(g){return sI(g)?"const":oS(g)?"let":"var"}}function tse(s){switch(s.kind){case 110:return!0;case 80:return pbe(s)&&s.parent.kind===170;default:return!1}}var sTs=/^\/\/\/\s*=g}function spe(s,c,g){return oWe(s.pos,s.end,c,g)}function sWe(s,c,g,d){return oWe(s.getStart(c),s.end,g,d)}function oWe(s,c,g,d){let h=Math.max(s,g),_=Math.min(c,d);return h<_}function Qrt(s,c,g){return pe.assert(s.pos<=c),cd.kind===c)}function aWe(s){let c=de(s.parent.getChildren(),g=>xie(g)&&uy(g,s));return pe.assert(!c||k(c.getChildren(),s)),c}function ain(s){return s.kind===90}function oTs(s){return s.kind===86}function aTs(s){return s.kind===100}function cTs(s){if(sh(s))return s.name;if(mm(s)){let c=s.modifiers&&de(s.modifiers,ain);if(c)return c}if(wd(s)){let c=de(s.getChildren(),oTs);if(c)return c}}function lTs(s){if(sh(s))return s.name;if(ah(s)){let c=de(s.modifiers,ain);if(c)return c}if(jA(s)){let c=de(s.getChildren(),aTs);if(c)return c}}function uTs(s){let c;return ji(s,g=>(uc(g)&&(c=g),!zi(g.parent)&&!uc(g.parent)&&!Dx(g.parent))),c}function cWe(s,c){if(s.flags&16777216)return;let g=SWe(s,c);if(g)return g;let d=uTs(s);return d&&c.getTypeAtLocation(d)}function gTs(s,c){if(!c)switch(s.kind){case 264:case 232:return cTs(s);case 263:case 219:return lTs(s);case 177:return s}if(sh(s))return s.name}function cin(s,c){if(s.importClause){if(s.importClause.name&&s.importClause.namedBindings)return;if(s.importClause.name)return s.importClause.name;if(s.importClause.namedBindings){if(BN(s.importClause.namedBindings)){let g=Ws(s.importClause.namedBindings.elements);return g?g.name:void 0}else if(Px(s.importClause.namedBindings))return s.importClause.namedBindings.name}}if(!c)return s.moduleSpecifier}function lin(s,c){if(s.exportClause){if(bv(s.exportClause))return Ws(s.exportClause.elements)?s.exportClause.elements[0].name:void 0;if(ok(s.exportClause))return s.exportClause.name}if(!c)return s.moduleSpecifier}function ATs(s){if(s.types.length===1)return s.types[0].expression}function uin(s,c){let{parent:g}=s;if(hg(s)&&(c||s.kind!==90)?MB(g)&&k(g.modifiers,s):s.kind===86?mm(g)||wd(s):s.kind===100?ah(g)||jA(s):s.kind===120?d_(g):s.kind===94?Q3(g):s.kind===156?OB(g):s.kind===145||s.kind===144?Lh(g):s.kind===102?Zm(g):s.kind===139?wg(g):s.kind===153&&kg(g)){let d=gTs(g,c);if(d)return d}if((s.kind===115||s.kind===87||s.kind===121)&&A_(g)&&g.declarations.length===1){let d=g.declarations[0];if(Ir(d.name))return d.name}if(s.kind===156){if(Hw(g)&&g.isTypeOnly){let d=cin(g.parent,c);if(d)return d}if(Vh(g)&&g.isTypeOnly){let d=lin(g,c);if(d)return d}}if(s.kind===130){if(Ay(g)&&g.propertyName||D0(g)&&g.propertyName||Px(g)||ok(g))return g.name;if(Vh(g)&&g.exportClause&&ok(g.exportClause))return g.exportClause.name}if(s.kind===102&&Yf(g)){let d=cin(g,c);if(d)return d}if(s.kind===95){if(Vh(g)){let d=lin(g,c);if(d)return d}if(yf(g))return XI(g.expression)}if(s.kind===149&&MF(g))return g.expression;if(s.kind===161&&(Yf(g)||Vh(g))&&g.moduleSpecifier)return g.moduleSpecifier;if((s.kind===96||s.kind===119)&&_1(g)&&g.token===s.kind){let d=ATs(g);if(d)return d}if(s.kind===96){if(Ds(g)&&g.constraint&&oh(g.constraint))return g.constraint.typeName;if(I2(g)&&oh(g.extendsType))return g.extendsType.typeName}if(s.kind===140&&tR(g))return g.typeParameter.name;if(s.kind===103&&Ds(g)&&WB(g.parent))return g.name;if(s.kind===143&&VB(g)&&g.operator===143&&oh(g.type))return g.type.typeName;if(s.kind===148&&VB(g)&&g.operator===148&&VF(g.type)&&oh(g.type.elementType))return g.type.elementType.typeName;if(!c){if((s.kind===105&&m2(g)||s.kind===116&&nR(g)||s.kind===114&&SN(g)||s.kind===135&&C1(g)||s.kind===127&&Qd(g)||s.kind===91&&OF(g))&&g.expression)return XI(g.expression);if((s.kind===103||s.kind===104)&&po(g)&&g.operatorToken===s)return XI(g.right);if(s.kind===130&&Xd(g)&&oh(g.type))return g.type.typeName;if(s.kind===103&&m9e(g)||s.kind===165&&BEe(g))return XI(g.expression)}return s}function Urt(s){return uin(s,!1)}function lWe(s){return uin(s,!0)}function Wb(s,c){return nse(s,c,g=>xw(g)||w0(g.kind)||p(g))}function nse(s,c,g){return gin(s,c,!1,g,!1)}function Jc(s,c){return gin(s,c,!0,void 0,!1)}function gin(s,c,g,d,h){let _=s,S;e:for(;;){let T=_.getChildren(s),O=vg(T,c,(V,M)=>M,(V,M)=>{let ee=T[V].getEnd();if(eec?1:R(T[V],re,ee)?T[V-1]&&R(T[V-1])?1:0:d&&re===c&&T[V-1]&&T[V-1].getEnd()===c&&R(T[V-1])?1:-1});if(S)return S;if(O>=0&&T[O]){_=T[O];continue e}return _}function R(T,O,V){if(V??(V=T.getEnd()),Vc))return!1;if(cg.getStart(s)&&c(_.pos<=s.pos&&_.end>s.end||_.pos===s.end)&&NMt(_,g)?d(_):void 0)}}function Vm(s,c,g,d){let h=_(g||c);return pe.assert(!(h&&uWe(h))),h;function _(S){if(Ain(S)&&S.kind!==1)return S;let R=S.getChildren(c),T=vg(R,s,(V,M)=>M,(V,M)=>s=R[V-1].end?0:1:-1);if(T>=0&&R[T]){let V=R[T];if(s=s||!NMt(V,c)||uWe(V)){let re=BMt(R,T,c,S.kind);return re?!d&&m7(re)&&re.getChildren(c).length?_(re):vMt(re,c):void 0}else return _(V)}pe.assert(g!==void 0||S.kind===308||S.kind===1||m7(S));let O=BMt(R,R.length,c,S.kind);return O&&vMt(O,c)}}function Ain(s){return kL(s)&&!uWe(s)}function vMt(s,c){if(Ain(s))return s;let g=s.getChildren(c);if(g.length===0)return s;let d=BMt(g,g.length,c,s.kind);return d&&vMt(d,c)}function BMt(s,c,g,d){for(let h=c-1;h>=0;h--){let _=s[h];if(uWe(_))h===0&&(d===12||d===286)&&pe.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(NMt(s[h],g))return s[h]}}function jz(s,c,g=Vm(c,s)){if(g&&Lre(g)){let d=g.getStart(s),h=g.getEnd();if(dg.getStart(s)}function TMt(s,c){let g=Jc(s,c);return!!(t9(g)||g.kind===19&&Tie(g.parent)&&wN(g.parent.parent)||g.kind===30&&nI(g.parent)&&wN(g.parent.parent))}function gWe(s,c){function g(d){for(;d;)if(d.kind>=286&&d.kind<=295||d.kind===12||d.kind===30||d.kind===32||d.kind===80||d.kind===20||d.kind===19||d.kind===44)d=d.parent;else if(d.kind===285){if(c>d.getStart(s))return!0;d=d.parent}else return!1;return!1}return g(Jc(s,c))}function AWe(s,c,g){let d=Vi(s.kind),h=Vi(c),_=s.getFullStart(),S=g.text.lastIndexOf(h,_);if(S===-1)return;if(g.text.lastIndexOf(d,_-1)!!_.typeParameters&&_.typeParameters.length>=c)}function zrt(s,c){if(c.text.lastIndexOf("<",s?s.pos:c.text.length)===-1)return;let g=s,d=0,h=0;for(;g;){switch(g.kind){case 30:if(g=Vm(g.getFullStart(),c),g&&g.kind===29&&(g=Vm(g.getFullStart(),c)),!g||!Ir(g))return;if(!d)return UT(g)?void 0:{called:g,nTypeArguments:h};d--;break;case 50:d=3;break;case 49:d=2;break;case 32:d++;break;case 20:if(g=AWe(g,19,c),!g)return;break;case 22:if(g=AWe(g,21,c),!g)return;break;case 24:if(g=AWe(g,23,c),!g)return;break;case 28:h++;break;case 39:case 80:case 11:case 9:case 10:case 112:case 97:case 114:case 96:case 143:case 25:case 52:case 58:case 59:break;default:if(uc(g))break;return}g=Vm(g.getFullStart(),c)}}function s9(s,c,g){return _m.getRangeOfEnclosingComment(s,c,void 0,g)}function RMt(s,c){let g=Jc(s,c);return!!ji(g,oR)}function NMt(s,c){return s.kind===1?!!s.jsDoc:s.getWidth(c)!==0}function ape(s,c=0){let g=[],d=em(s)?ld(s)&~c:0;return d&2&&g.push("private"),d&4&&g.push("protected"),d&1&&g.push("public"),(d&256||Al(s))&&g.push("static"),d&64&&g.push("abstract"),d&32&&g.push("export"),d&65536&&g.push("deprecated"),s.flags&33554432&&g.push("declare"),s.kind===278&&g.push("export"),g.length>0?g.join(","):""}function DMt(s){if(s.kind===184||s.kind===214)return s.typeArguments;if(Eu(s)||s.kind===264||s.kind===265)return s.typeParameters}function dWe(s){return s===2||s===3}function qrt(s){return!!(s===11||s===14||MD(s))}function din(s,c,g){return!!(c.flags&4)&&s.isEmptyAnonymousObjectType(g)}function kMt(s){if(!s.isIntersection())return!1;let{types:c,checker:g}=s;return c.length===2&&(din(g,c[0],c[1])||din(g,c[1],c[0]))}function k1e(s,c,g){return MD(s.kind)&&s.getStart(g){let g=id(c);return!s[g]&&(s[g]=!0)}}function zz(s){return s.getText(0,s.getLength())}function G1e(s,c){let g="";for(let d=0;d!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!(c.externalModuleIndicator||c.commonJsModuleIndicator))}function ZMt(s){return s.getSourceFiles().some(c=>!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!c.externalModuleIndicator)}function ont(s){return!!s.module||Hg(s)>=2||!!s.noEmit}function i5(s,c){return{fileExists:g=>s.fileExists(g),getCurrentDirectory:()=>c.getCurrentDirectory(),readFile:$i(c,c.readFile),useCaseSensitiveFileNames:$i(c,c.useCaseSensitiveFileNames)||s.useCaseSensitiveFileNames,getSymlinkCache:$i(c,c.getSymlinkCache)||s.getSymlinkCache,getModuleSpecifierCache:$i(c,c.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var g;return(g=s.getModuleResolutionCache())==null?void 0:g.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:$i(c,c.getGlobalTypingsCacheLocation),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:g=>s.getRedirectFromSourceFile(g),isSourceOfProjectReferenceRedirect:g=>s.isSourceOfProjectReferenceRedirect(g),getNearestAncestorDirectoryWithPackageJson:$i(c,c.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>s.getFileIncludeReasons(),getCommonSourceDirectory:()=>s.getCommonSourceDirectory(),getDefaultResolutionModeForFile:g=>s.getDefaultResolutionModeForFile(g),getModeForResolutionAtIndex:(g,d)=>s.getModeForResolutionAtIndex(g,d)}}function ant(s,c){return{...i5(s,c),getCommonSourceDirectory:()=>s.getCommonSourceDirectory()}}function hWe(s){return s===2||s>=3&&s<=99||s===100}function $W(s,c,g,d,h){return me.createImportDeclaration(void 0,s||c?me.createImportClause(h?156:void 0,s,c&&c.length?me.createNamedImports(c):void 0):void 0,typeof g=="string"?lpe(g,d):g,void 0)}function lpe(s,c){return me.createStringLiteral(s,c===0)}var LMt=(s=>(s[s.Single=0]="Single",s[s.Double=1]="Double",s))(LMt||{});function cnt(s,c){return Cne(s,c)?1:0}function E1(s,c){if(c.quotePreference&&c.quotePreference!=="auto")return c.quotePreference==="single"?0:1;{let g=AN(s)&&s.imports&&de(s.imports,d=>Lg(d)&&!ap(d.parent));return g?cnt(g,s):1}}function lnt(s){switch(s){case 0:return"'";case 1:return'"';default:return pe.assertNever(s)}}function unt(s){let c=mWe(s);return c===void 0?void 0:Bc(c)}function mWe(s){return s.escapedName!=="default"?s.escapedName:J(s.declarations,c=>{let g=fl(c);return g&&g.kind===80?g.escapedText:void 0})}function CWe(s){return CA(s)&&(MF(s.parent)||Yf(s.parent)||RN(s.parent)||ly(s.parent,!1)&&s.parent.arguments[0]===s||jp(s.parent)&&s.parent.arguments[0]===s)}function Z1e(s){return mg(s)&&$m(s.parent)&&Ir(s.name)&&!s.propertyName}function _We(s,c){let g=s.getTypeAtLocation(c.parent);return g&&s.getPropertyOfType(g,c.name.text)}function L1e(s,c,g){if(s)for(;s.parent;){if(al(s.parent)||!pTs(g,s.parent,c))return s;s=s.parent}}function pTs(s,c,g){return ho(s,c.getStart(g))&&c.getEnd()<=Rs(s)}function sse(s,c){return MB(s)?de(s.modifiers,g=>g.kind===c):void 0}function gnt(s,c,g,d,h){var _;let R=(Ki(g)?g[0]:g).kind===244?hne:SW,T=Le(c.statements,R),{comparer:O,isSorted:V}=g5.getOrganizeImportsStringComparerWithDetection(T,h),M=Ki(g)?bo(g,(ee,re)=>g5.compareImportsOrRequireStatements(ee,re,O)):[g];if(!T?.length){if(AN(c))s.insertNodesAtTopOfFile(c,M,d);else for(let ee of M)s.insertStatementsInNewFile(c.fileName,[ee],(_=xd(ee))==null?void 0:_.getSourceFile());return}if(pe.assert(AN(c)),T&&V)for(let ee of M){let re=g5.getImportDeclarationInsertionIndex(T,ee,O);if(re===0){let ge=T[0]===c.statements[0]?{leadingTriviaOption:xo.LeadingTriviaOption.Exclude}:{};s.insertNodeBefore(c,T[0],ee,!1,ge)}else{let ge=T[re-1];s.insertNodeAfter(c,ge,ee)}}else{let ee=li(T);ee?s.insertNodesAfter(c,ee,M):s.insertNodesAtTopOfFile(c,M,d)}}function Ant(s,c){return pe.assert(s.isTypeOnly),Ma(s.getChildAt(0,c),fin)}function ose(s,c){return!!s&&!!c&&s.start===c.start&&s.length===c.length}function dnt(s,c,g){return(g?YA:Yp)(s.fileName,c.fileName)&&ose(s.textSpan,c.textSpan)}function pnt(s){return(c,g)=>dnt(c,g,s)}function fnt(s,c){if(s){for(let g=0;gSi(g)?!0:mg(g)||$m(g)||h2(g)?!1:"quit")}var WMt=new Map;function fTs(s){return s=s||GY,WMt.has(s)||WMt.set(s,ITs(s)),WMt.get(s)}function ITs(s){let c=s*10,g,d,h,_;M();let S=ee=>T(ee,17);return{displayParts:()=>{let ee=g.length&&g[g.length-1].text;return _>c&&ee&&ee!=="..."&&(dc(ee.charCodeAt(ee.length-1))||g.push(wE(" ",16)),g.push(wE("...",15))),g},writeKeyword:ee=>T(ee,5),writeOperator:ee=>T(ee,12),writePunctuation:ee=>T(ee,15),writeTrailingSemicolon:ee=>T(ee,15),writeSpace:ee=>T(ee,16),writeStringLiteral:ee=>T(ee,8),writeParameter:ee=>T(ee,13),writeProperty:ee=>T(ee,14),writeLiteral:ee=>T(ee,8),writeSymbol:O,writeLine:V,write:S,writeComment:S,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:rl,getIndent:()=>h,increaseIndent:()=>{h++},decreaseIndent:()=>{h--},clear:M};function R(){if(!(_>c)&&d){let ee=yAe(h);ee&&(_+=ee.length,g.push(wE(ee,16))),d=!1}}function T(ee,re){_>c||(R(),_+=ee.length,g.push(wE(ee,re)))}function O(ee,re){_>c||(R(),_+=ee.length,g.push(hTs(ee,re)))}function V(){_>c||(_+=1,g.push(ase()),d=!0)}function M(){g=[],d=!0,h=0,_=0}}function hTs(s,c){return wE(s,g(c));function g(d){let h=d.flags;return h&3?hnt(d)?13:9:h&4||h&32768||h&65536?14:h&8?19:h&16?20:h&32?1:h&64?4:h&384?2:h&1536?11:h&8192?10:h&262144?18:h&524288||h&2097152?0:17}}function wE(s,c){return{text:s,kind:$Ve[c]}}function TI(){return wE(" ",16)}function S1(s){return wE(Vi(s),5)}function G0(s){return wE(Vi(s),15)}function gpe(s){return wE(Vi(s),12)}function OMt(s){return wE(s,13)}function PMt(s){return wE(s,14)}function mnt(s){let c=Ta(s);return c===void 0?fS(s):S1(c)}function fS(s){return wE(s,17)}function MMt(s){return wE(s,0)}function HMt(s){return wE(s,18)}function YMt(s){return wE(s,24)}function mTs(s,c){return{text:s,kind:$Ve[23],target:{fileName:ms(c).fileName,textSpan:Hy(c)}}}function Iin(s){return wE(s,22)}function QMt(s,c){var g;let d=dOt(s)?"link":pOt(s)?"linkcode":"linkplain",h=[Iin(`{@${d} `)];if(!s.name)s.text&&h.push(YMt(s.text));else{let _=c?.getSymbolAtLocation(s.name),S=_&&c?ynt(_,c):void 0,R=_Ts(s.text),T=Fp(s.name)+s.text.slice(0,R),O=CTs(s.text.slice(R)),V=S?.valueDeclaration||((g=S?.declarations)==null?void 0:g[0]);if(V)h.push(mTs(T,V)),O&&h.push(YMt(O));else{let M=R===0||s.text.charCodeAt(R)===124&&T.charCodeAt(T.length-1)!==32?" ":"";h.push(YMt(T+M+O))}}return h.push(Iin("}")),h}function CTs(s){let c=0;if(s.charCodeAt(c++)===124){for(;c"&&g--,d++,!g)return d}return 0}var yTs=` -`;function JF(s,c){var g;return c?.newLineCharacter||((g=s.getNewLine)==null?void 0:g.call(s))||yTs}function ase(){return wE(` -`,6)}function eO(s,c){let g=fTs(c);try{return s(g),g.displayParts()}finally{g.clear()}}function V1e(s,c,g,d=0,h,_,S){return eO(R=>{s.writeType(c,g,d|1024|16384,R,h,_,S)},h)}function Ape(s,c,g,d,h=0){return eO(_=>{s.writeSymbol(c,g,d,h|8,_)})}function Cnt(s,c,g,d=0,h,_,S){return d|=25632,eO(R=>{s.writeSignature(c,g,d,void 0,R,h,_,S)},h)}function XMt(s){return!!s.parent&&iS(s.parent)&&s.parent.propertyName===s}function _nt(s,c){return jAe(s,c.getScriptKind&&c.getScriptKind(s))}function ynt(s,c){let g=s;for(;bTs(g)||ww(g)&&g.links.target;)ww(g)&&g.links.target?g=g.links.target:g=LC(g,c);return g}function bTs(s){return(s.flags&2097152)!==0}function JMt(s,c){return xg(LC(s,c))}function UMt(s,c){for(;dc(s.charCodeAt(c));)c+=1;return c}function bWe(s,c){for(;c>-1&&hu(s.charCodeAt(c));)c-=1;return c+1}function XU(s,c){let g=s.getSourceFile(),d=g.text;ETs(s,d)?cse(s,c,g):O1e(s,c,g),dpe(s,c,g)}function ETs(s,c){let g=s.getFullStart(),d=s.getStart();for(let h=g;h=0),_}function cse(s,c,g,d,h){WD(g.text,s.pos,KMt(c,g,d,h,qT))}function dpe(s,c,g,d,h){CF(g.text,s.end,KMt(c,g,d,h,Nz))}function O1e(s,c,g,d,h){CF(g.text,s.pos,KMt(c,g,d,h,qT))}function KMt(s,c,g,d,h){return(_,S,R,T)=>{R===3?(_+=2,S-=2):_+=2,h(s,g||R,c.text.slice(_,S),d!==void 0?d:T)}}function STs(s,c){if(Ac(s,c))return 0;let g=s.indexOf(" "+c);return g===-1&&(g=s.indexOf("."+c)),g===-1&&(g=s.indexOf('"'+c)),g===-1?-1:g+1}function EWe(s){return po(s)&&s.operatorToken.kind===28||ag(s)||(Xd(s)||Xg(s))&&ag(s.expression)}function SWe(s,c,g){let d=fv(s.parent);switch(d.kind){case 215:return c.getContextualType(d,g);case 227:{let{left:h,operatorToken:_,right:S}=d;return vWe(_.kind)?c.getTypeAtLocation(s===S?h:S):c.getContextualType(s,g)}case 297:return Ent(d,c);default:return c.getContextualType(s,g)}}function ppe(s,c,g){let d=E1(s,c),h=JSON.stringify(g);return d===0?`'${A2(h).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:h}function vWe(s){switch(s){case 37:case 35:case 38:case 36:return!0;default:return!1}}function jMt(s){switch(s.kind){case 11:case 15:case 229:case 216:return!0;default:return!1}}function bnt(s){return!!s.getStringIndexType()||!!s.getNumberIndexType()}function Ent(s,c){return c.getTypeAtLocation(s.parent.parent.expression)}var Snt="anonymous function";function fpe(s,c,g,d){let h=g.getTypeChecker(),_=!0,S=()=>_=!1,R=h.typeToTypeNode(s,c,1,8,{trackSymbol:(T,O,V)=>(_=_&&h.isSymbolAccessible(T,O,V,!1).accessibility===0,!_),reportInaccessibleThisError:S,reportPrivateInBaseOfClassExpression:S,reportInaccessibleUniqueSymbolError:S,moduleResolverHost:ant(g,d)});return _?R:void 0}function zMt(s){return s===180||s===181||s===182||s===172||s===174}function hin(s){return s===263||s===177||s===175||s===178||s===179}function min(s){return s===268}function qMt(s){return s===244||s===245||s===247||s===252||s===253||s===254||s===258||s===260||s===173||s===266||s===273||s===272||s===279||s===271||s===278}var vTs=Qp(zMt,hin,min,qMt);function BTs(s,c){let g=s.getLastToken(c);if(g&&g.kind===27)return!1;if(zMt(s.kind)){if(g&&g.kind===28)return!1}else if(min(s.kind)){let R=Ei(s.getChildren(c));if(R&&vN(R))return!1}else if(hin(s.kind)){let R=Ei(s.getChildren(c));if(R&&BW(R))return!1}else if(!qMt(s.kind))return!1;if(s.kind===247)return!0;let d=ji(s,R=>!R.parent),h=BQ(s,d,c);if(!h||h.kind===20)return!0;let _=c.getLineAndCharacterOfPosition(s.getEnd()).line,S=c.getLineAndCharacterOfPosition(h.getStart(c)).line;return _!==S}function BWe(s,c,g){let d=ji(c,h=>h.end!==s?"quit":vTs(h.kind));return!!d&&BTs(d,g)}function P1e(s){let c=0,g=0,d=5;return Lu(s,function h(_){if(qMt(_.kind)){let S=_.getLastToken(s);S?.kind===27?c++:g++}else if(zMt(_.kind)){let S=_.getLastToken(s);if(S?.kind===27)c++;else if(S&&S.kind!==28){let R=Ra(s,S.getStart(s)).line,T=Ra(s,rs(s,S.end).start).line;R!==T&&g++}}return c+g>=d?!0:Lu(_,h)}),c===0&&g<=1?!0:c/g>1/d}function wWe(s,c){return $Mt(s,s.getDirectories,c)||[]}function vnt(s,c,g,d,h){return $Mt(s,s.readDirectory,c,g,d,h)||E}function lse(s,c){return $Mt(s,s.fileExists,c)}function TWe(s,c){return RWe(()=>m1(c,s))||!1}function RWe(s){try{return s()}catch{return}}function $Mt(s,c,...g){return RWe(()=>c&&c.apply(s,g))}function Bnt(s,c){let g=[];return NN(c,s,d=>{let h=Ro(d,"package.json");lse(c,h)&&g.push(h)}),g}function eHt(s,c){let g;return NN(c,s,d=>{if(d==="node_modules"||(g=wtt(d,h=>lse(c,h),"package.json"),g))return!0}),g}function wTs(s,c){if(!c.fileExists)return[];let g=[];return NN(c,Mo(s),d=>{let h=Ro(d,"package.json");if(c.fileExists(h)){let _=wnt(h,c);_&&g.push(_)}}),g}function wnt(s,c){if(!c.readFile)return;let g=["dependencies","devDependencies","optionalDependencies","peerDependencies"],d=c.readFile(s)||"",h=IU(d),_={};if(h)for(let T of g){let O=h[T];if(!O)continue;let V=new Map;for(let M in O)V.set(M,O[M]);_[T]=V}let S=[[1,_.dependencies],[2,_.devDependencies],[8,_.optionalDependencies],[4,_.peerDependencies]];return{..._,parseable:!!h,fileName:s,get:R,has(T,O){return!!R(T,O)}};function R(T,O=15){for(let[V,M]of S)if(M&&O&V){let ee=M.get(T);if(ee!==void 0)return ee}}}function use(s,c,g){let d=(g.getPackageJsonsVisibleToFile&&g.getPackageJsonsVisibleToFile(s.fileName)||wTs(s.fileName,g)).filter(ge=>ge.parseable),h,_,S;return{allowsImportingAmbientModule:T,getSourceFileInfo:O,allowsImportingSpecifier:V};function R(ge){let Ie=re(ge);for(let _e of d)if(_e.has(Ie)||_e.has(nVe(Ie)))return!0;return!1}function T(ge,Ie){if(!d.length||!ge.valueDeclaration)return!0;if(!_)_=new Map;else{let Ze=_.get(ge);if(Ze!==void 0)return Ze}let _e=A2(ge.getName());if(M(_e))return _.set(ge,!0),!0;let Ee=ge.valueDeclaration.getSourceFile(),Ne=ee(Ee.fileName,Ie);if(typeof Ne>"u")return _.set(ge,!0),!0;let Te=R(Ne)||R(_e);return _.set(ge,Te),Te}function O(ge,Ie){if(!d.length)return{importable:!0,packageName:void 0};if(!S)S=new Map;else{let Te=S.get(ge);if(Te!==void 0)return Te}let _e=ee(ge.fileName,Ie);if(!_e){let Te={importable:!0,packageName:_e};return S.set(ge,Te),Te}let Ne={importable:R(_e),packageName:_e};return S.set(ge,Ne),Ne}function V(ge){return!d.length||M(ge)||mp(ge)||Up(ge)?!0:R(ge)}function M(ge){return!!(AN(s)&&s0(s)&&BU.has(ge)&&(h===void 0&&(h=NWe(s)),h))}function ee(ge,Ie){let _e=QW(ge);if(_e){let Ne=_e.findPackageLocator(s.fileName),Te=_e.findPackageLocator(ge);if(!(Ne&&Te))return}else if(!ge.includes("node_modules"))return;let Ee=XF.getNodeModulesPackageName(g.getCompilationSettings(),s,ge,Ie,c);if(Ee&&!mp(Ee)&&!Up(Ee))return re(Ee)}function re(ge){let Ie=kp(Wde(ge)).slice(1);return Ac(Ie[0],"@")?`${Ie[0]}/${Ie[1]}`:Ie[0]}}function NWe(s){return zt(s.imports,({text:c})=>BU.has(c))}function M1e(s){return k(kp(s),"node_modules")}function Cin(s){return s.file!==void 0&&s.start!==void 0&&s.length!==void 0}function tHt(s,c){let g=Hy(s),d=vg(c,g,Zl,bn);if(d>=0){let h=c[d];return pe.assertEqual(h.file,s.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),Ma(h,Cin)}}function rHt(s,c){var g;let d=vg(c,s.start,S=>S.start,Zt);for(d<0&&(d=~d);((g=c[d-1])==null?void 0:g.start)===s.start;)d--;let h=[],_=Rs(s);for(;;){let S=Gs(c[d],Cin);if(!S||S.start>_)break;kd(s,S)&&h.push(S),d++}return h}function qz({startPosition:s,endPosition:c}){return RA(s,c===void 0?s:c)}function Tnt(s,c){let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":un(h)&&ose(c,Hy(h,s)))}function Rnt(s,c,g=Zl){return s?Ki(s)?g(lt(s,c)):c(s,0):void 0}function Nnt(s){return Ki(s)?ma(s):s}function DWe(s,c,g){return s.escapedName==="export="||s.escapedName==="default"?Dnt(s)||H1e(TTs(s),c,!!g):s.name}function Dnt(s){return J(s.declarations,c=>{var g,d,h;if(yf(c))return(g=Gs(XI(c.expression),Ir))==null?void 0:g.text;if(D0(c)&&c.symbol.flags===2097152)return(d=Gs(c.propertyName,Ir))==null?void 0:d.text;let _=(h=Gs(fl(c),Ir))==null?void 0:h.text;if(_)return _;if(s.parent&&!QD(s.parent))return s.parent.getName()})}function TTs(s){var c;return pe.checkDefined(s.parent,`Symbol parent was undefined. Flags: ${pe.formatSymbolFlags(s.flags)}. Declarations: ${(c=s.declarations)==null?void 0:c.map(g=>{let d=pe.formatSyntaxKind(g.kind),h=wo(g),{expression:_}=g;return(h?"[JS]":"")+d+(_?` (expression: ${pe.formatSyntaxKind(_.kind)})`:"")}).join(", ")}.`)}function H1e(s,c,g){return Y1e(a0(A2(s.name)),c,g)}function Y1e(s,c,g){let d=dp(aa(a0(s),"/index")),h="",_=!0,S=d.charCodeAt(0);Sd(S,c)?(h+=String.fromCharCode(S),g&&(h=h.toUpperCase())):_=!1;for(let R=1;Rs.length)return!1;for(let h=0;h(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.Namespace=2]="Namespace",s[s.CommonJS=3]="CommonJS",s))(iHt||{}),sHt=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s[s.UMD=3]="UMD",s[s.Module=4]="Module",s))(sHt||{});function Fnt(s){let c=1,g=gl(),d=new Map,h=new Map,_,S={isUsableByFile:re=>re===_,isEmpty:()=>!g.size,clear:()=>{g.clear(),d.clear(),_=void 0},add:(re,ge,Ie,_e,Ee,Ne,Te,Ze)=>{re!==_&&(S.clear(),_=re);let Pe;if(Ee){let Lt=sde(Ee.fileName);if(Lt){let{topLevelNodeModulesIndex:je,topLevelPackageNameIndex:Wt,packageRootIndex:_r}=Lt;if(Pe=qEe(Wde(Ee.fileName.substring(Wt+1,_r))),Ac(re,Ee.path.substring(0,je))){let Gt=h.get(Pe),it=Ee.fileName.substring(0,Wt+1);if(Gt){let kt=Gt.indexOf(Hx);je>kt&&h.set(Pe,it)}else h.set(Pe,it)}}}let et=Ne===1&&ez(ge)||ge,Ye=Ne===0||QD(et)?Bc(Ie):NTs(et,Ze,void 0),Tt=typeof Ye=="string"?Ye:Ye[0],at=typeof Ye=="string"?void 0:Ye[1],Qe=A2(_e.name),Ct=c++,mt=LC(ge,Ze),yt=ge.flags&33554432?void 0:ge,Rt=_e.flags&33554432?void 0:_e;(!yt||!Rt)&&d.set(Ct,[ge,_e]),g.add(T(Tt,ge,Xr(Qe)?void 0:Qe,Ze),{id:Ct,symbolTableKey:Ie,symbolName:Tt,capitalizedSymbolName:at,moduleName:Qe,moduleFile:Ee,moduleFileName:Ee?.fileName,packageName:Pe,exportKind:Ne,targetFlags:mt.flags,isFromPackageJson:Te,symbol:yt,moduleSymbol:Rt})},get:(re,ge)=>{if(re!==_)return;let Ie=g.get(ge);return Ie?.map(R)},search:(re,ge,Ie,_e)=>{if(re===_)return Fh(g,(Ee,Ne)=>{let{symbolName:Te,ambientModuleName:Ze}=O(Ne),Pe=ge&&Ee[0].capitalizedSymbolName||Te;if(Ie(Pe,Ee[0].targetFlags)){let et=Ee.map(R).filter((Ye,Tt)=>ee(Ye,Ee[Tt].packageName));if(et.length){let Ye=_e(et,Pe,!!Ze,Ne);if(Ye!==void 0)return Ye}}})},releaseSymbols:()=>{d.clear()},onFileChanged:(re,ge,Ie)=>V(re)&&V(ge)?!1:_&&_!==ge.path||Ie&&NWe(re)!==NWe(ge)||!Sc(re.moduleAugmentations,ge.moduleAugmentations)||!M(re,ge)?(S.clear(),!0):(_=ge.path,!1)};return pe.isDebugging&&Object.defineProperty(S,"__cache",{value:g}),S;function R(re){if(re.symbol&&re.moduleSymbol)return re;let{id:ge,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee,moduleFileName:Ne}=re,[Te,Ze]=d.get(ge)||E;if(Te&&Ze)return{symbol:Te,moduleSymbol:Ze,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee};let Pe=(Ee?s.getPackageJsonAutoImportProvider():s.getCurrentProgram()).getTypeChecker(),Ke=re.moduleSymbol||Ze||pe.checkDefined(re.moduleFile?Pe.getMergedSymbol(re.moduleFile.symbol):Pe.tryFindAmbientModule(re.moduleName)),et=re.symbol||Te||pe.checkDefined(Ie===2?Pe.resolveExternalModuleSymbol(Ke):Pe.tryGetMemberInModuleExportsAndProperties(Bc(re.symbolTableKey),Ke),`Could not find symbol '${re.symbolName}' by key '${re.symbolTableKey}' in module ${Ke.name}`);return d.set(ge,[et,Ke]),{symbol:et,moduleSymbol:Ke,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee}}function T(re,ge,Ie,_e){let Ee=Ie||"";return`${re.length} ${xg(LC(ge,_e))} ${re} ${Ee}`}function O(re){let ge=re.indexOf(" "),Ie=re.indexOf(" ",ge+1),_e=parseInt(re.substring(0,ge),10),Ee=re.substring(Ie+1),Ne=Ee.substring(0,_e),Te=Ee.substring(_e+1);return{symbolName:Ne,ambientModuleName:Te===""?void 0:Te}}function V(re){return!re.commonJsModuleIndicator&&!re.externalModuleIndicator&&!re.moduleAugmentations&&!re.ambientModuleNames}function M(re,ge){if(!Sc(re.ambientModuleNames,ge.ambientModuleNames))return!1;let Ie=-1,_e=-1;for(let Ee of ge.ambientModuleNames){let Ne=Te=>sne(Te)&&Te.name.text===Ee;if(Ie=Se(re.statements,Ne,Ie+1),_e=Se(ge.statements,Ne,_e+1),re.statements[Ie]!==ge.statements[_e])return!1}return!0}function ee(re,ge){if(!ge||!re.moduleFileName)return!0;let Ie=s.getGlobalTypingsCacheLocation();if(Ie&&Ac(re.moduleFileName,Ie))return!0;let _e=h.get(ge);return!_e||Ac(re.moduleFileName,_e)}}function Znt(s,c,g,d,h,_,S,R){var T;if(!g){let re,ge=A2(d.name);return BU.has(ge)&&(re=xWe(c,s))!==void 0?re===Ac(ge,"node:"):!_||_.allowsImportingAmbientModule(d,S)||oHt(c,ge)}if(pe.assertIsDefined(g),c===g)return!1;let O=R?.get(c.path,g.path,h,{});if(O?.isBlockedByPackageJsonDependencies!==void 0)return!O.isBlockedByPackageJsonDependencies||!!O.packageName&&oHt(c,O.packageName);let V=qD(S),M=(T=S.getGlobalTypingsCacheLocation)==null?void 0:T.call(S),ee=!!XF.forEachFileNameOfModule(c.fileName,g.fileName,S,!1,re=>{let ge=s.getSourceFile(re);return(ge===g||!ge)&&RTs(c.fileName,re,V,M,S)});if(_){let re=ee?_.getSourceFileInfo(g,S):void 0;return R?.setBlockedByPackageJsonDependencies(c.path,g.path,h,{},re?.packageName,!re?.importable),!!re?.importable||ee&&!!re?.packageName&&oHt(c,re.packageName)}return ee}function oHt(s,c){return s.imports&&s.imports.some(g=>g.text===c||g.text.startsWith(c+"/"))}function RTs(s,c,g,d,h){if(QW(s))return BSs(s,c);let _=NN(h,c,R=>dp(R)==="node_modules"?R:void 0),S=_&&Mo(g(_));return S===void 0||Ac(g(s),S)||!!d&&Ac(g(d),S)}function Lnt(s,c,g,d,h){var _,S;let R=T3(c),T=g.autoImportFileExcludePatterns&&_in(g,R);yin(s.getTypeChecker(),s.getSourceFiles(),T,c,(V,M)=>h(V,M,s,!1));let O=d&&((_=c.getPackageJsonAutoImportProvider)==null?void 0:_.call(c));if(O){let V=Zg(),M=s.getTypeChecker();yin(O.getTypeChecker(),O.getSourceFiles(),T,c,(ee,re)=>{(re&&!s.getSourceFile(re.fileName)||!re&&!M.resolveName(ee.name,void 0,1536,!1))&&h(ee,re,O,!0)}),(S=c.log)==null||S.call(c,`forEachExternalModuleToImportFrom autoImportProvider: ${Zg()-V}`)}}function _in(s,c){return Xt(s.autoImportFileExcludePatterns,g=>{let d=UAe(g,"","exclude");return d?rk(d,c):void 0})}function yin(s,c,g,d,h){var _;let S=g&&bin(g,d);for(let R of s.getAmbientModules())!R.name.includes("*")&&!(g&&((_=R.declarations)!=null&&_.every(T=>S(T.getSourceFile()))))&&h(R,void 0);for(let R of c)Sl(R)&&!S?.(R)&&h(s.getMergedSymbol(R.symbol),R)}function bin(s,c){var g;let d=(g=c.getSymlinkCache)==null?void 0:g.call(c).getSymlinkedDirectoriesByRealpath();return({fileName:h,path:_})=>{if(s.some(S=>S.test(h)))return!0;if(d?.size&&UW(h)){let S=Mo(h);return NN(c,Mo(_),R=>{let T=d.get(Cp(R));if(T)return T.some(O=>s.some(V=>V.test(h.replace(S,O))));S=Mo(S)})??!1}return!1}}function aHt(s,c){return c.autoImportFileExcludePatterns?bin(_in(c,T3(s)),s):()=>!1}function X1e(s,c,g,d,h){var _,S,R,T,O;let V=Zg();(_=c.getPackageJsonAutoImportProvider)==null||_.call(c);let M=((S=c.getCachedExportInfoMap)==null?void 0:S.call(c))||Fnt({getCurrentProgram:()=>g,getPackageJsonAutoImportProvider:()=>{var re;return(re=c.getPackageJsonAutoImportProvider)==null?void 0:re.call(c)},getGlobalTypingsCacheLocation:()=>{var re;return(re=c.getGlobalTypingsCacheLocation)==null?void 0:re.call(c)}});if(M.isUsableByFile(s.path))return(R=c.log)==null||R.call(c,"getExportInfoMap: cache hit"),M;(T=c.log)==null||T.call(c,"getExportInfoMap: cache miss or empty; calculating new results");let ee=0;try{Lnt(g,c,d,!0,(re,ge,Ie,_e)=>{++ee%100===0&&h?.throwIfCancellationRequested();let Ee=new Set,Ne=Ie.getTypeChecker(),Te=LWe(re,Ne);Te&&Ein(Te.symbol,Ne)&&M.add(s.path,Te.symbol,Te.exportKind===1?"default":"export=",re,ge,Te.exportKind,_e,Ne),Ne.forEachExportAndPropertyOfModule(re,(Ze,Pe)=>{Ze!==Te?.symbol&&Ein(Ze,Ne)&&Vy(Ee,Pe)&&M.add(s.path,Ze,Pe,re,ge,0,_e,Ne)})})}catch(re){throw M.clear(),re}return(O=c.log)==null||O.call(c,`getExportInfoMap: done in ${Zg()-V} ms`),M}function LWe(s,c){let g=c.resolveExternalModuleSymbol(s);if(g!==s){let h=c.tryGetMemberInModuleExports("default",g);return h?{symbol:h,exportKind:1}:{symbol:g,exportKind:2}}let d=c.tryGetMemberInModuleExports("default",s);if(d)return{symbol:d,exportKind:1}}function Ein(s,c){return!c.isUndefinedSymbol(s)&&!c.isUnknownSymbol(s)&&!X7(s)&&!XZe(s)}function NTs(s,c,g){let d;return VWe(s,c,g,(h,_)=>(d=_?[h,_]:h,!0)),pe.checkDefined(d)}function VWe(s,c,g,d){let h,_=s,S=new Set;for(;_;){let R=Dnt(_);if(R){let T=d(R);if(T)return T}if(_.escapedName!=="default"&&_.escapedName!=="export="){let T=d(_.name);if(T)return T}if(h=Ft(h,_),!Vy(S,_))break;_=_.flags&2097152?c.getImmediateAliasedSymbol(_):void 0}for(let R of h??E)if(R.parent&&QD(R.parent)){let T=d(H1e(R.parent,g,!1),H1e(R.parent,g,!0));if(T)return T}}function Sin(){let s=Rb(99,!1);function c(d,h,_){return GTs(g(d,h,_),d)}function g(d,h,_){let S=0,R=0,T=[],{prefix:O,pushTemplate:V}=LTs(h);d=O+d;let M=O.length;V&&T.push(16),s.setText(d);let ee=0,re=[],ge=0;do{S=s.scan(),uU(S)||(Ie(),R=S);let _e=s.getTokenEnd();if(xTs(s.getTokenStart(),_e,M,OTs(S),re),_e>=d.length){let Ee=kTs(s,S,li(T));Ee!==void 0&&(ee=Ee)}}while(S!==1);function Ie(){switch(S){case 44:case 69:!DTs[R]&&s.reScanSlashToken()===14&&(S=14);break;case 30:R===80&&ge++;break;case 32:ge>0&&ge--;break;case 133:case 154:case 150:case 136:case 155:ge>0&&!_&&(S=80);break;case 16:T.push(S);break;case 19:T.length>0&&T.push(S);break;case 20:if(T.length>0){let _e=li(T);_e===16?(S=s.reScanTemplateToken(!1),S===18?T.pop():pe.assertEqual(S,17,"Should have been a template middle.")):(pe.assertEqual(_e,19,"Should have been an open brace"),T.pop())}break;default:if(!w0(S))break;(R===25||w0(R)&&w0(S)&&!ZTs(R,S))&&(S=80)}}return{endOfLineState:ee,spans:re}}return{getClassificationsForLine:c,getEncodedLexicalClassifications:g}}var DTs=Vs([80,11,9,10,14,110,46,47,22,24,20,112,97],s=>s,()=>!0);function kTs(s,c,g){switch(c){case 11:{if(!s.isUnterminated())return;let d=s.getTokenText(),h=d.length-1,_=0;for(;d.charCodeAt(h-_)===92;)_++;return _&1?d.charCodeAt(0)===34?3:2:void 0}case 3:return s.isUnterminated()?1:void 0;default:if(MD(c)){if(!s.isUnterminated())return;switch(c){case 18:return 5;case 15:return 4;default:return pe.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+c)}}return g===16?6:void 0}}function xTs(s,c,g,d,h){if(d===8)return;s===0&&g>0&&(s+=g);let _=c-s;_>0&&h.push(s-g,_,d)}function GTs(s,c){let g=[],d=s.spans,h=0;for(let S=0;S=0){let V=R-h;V>0&&g.push({length:V,classification:4})}g.push({length:T,classification:FTs(O)}),h=R+T}let _=c.length-h;return _>0&&g.push({length:_,classification:4}),{entries:g,finalLexState:s.endOfLineState}}function FTs(s){switch(s){case 1:return 3;case 3:return 1;case 4:return 6;case 25:return 7;case 5:return 2;case 6:return 8;case 8:return 4;case 10:return 0;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return 5;default:return}}function ZTs(s,c){if(!$rt(s))return!0;switch(c){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function LTs(s){switch(s){case 3:return{prefix:`"\\ + `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),sc),Ng(),ut.enclosingDeclaration=Sm}function Em(vn,uo,sc){let yc=wk(vn,uo);ut.approximateLength+=14+yc.length;let Yo=kv(vn),Wg=Kg(vn),aA=lt(Wg,df=>zI(df,ut)),Wu=tT(Yo),Zc=B(Wu)?jg(Wu):void 0,Ng=H_(Zd(Yo),!1,Zc),Sm=B6t(0,Yo,Zc,180),Ff=B6t(1,Yo,Zc,181),m0=Lyn(Yo,Zc),qI=B(Wu)?[me.createHeritageClause(96,Xt(Wu,df=>w6t(df,111551)))]:void 0;au(me.createInterfaceDeclaration(void 0,yc,aA,qI,[...m0,...Ff,...Sm,...Ng]),sc)}function H_(vn,uo,sc,yc){let Yo=[],Wg=0;for(let aA of vn){if(Wg++,kt(ut)&&Wg+2coe(yc)&&qh(yc.escapedName,99))}function EZ(vn){return ue(zy(vn),uo=>!(Xb(Oh(uo))&111551))}function eM(vn,uo,sc){let yc=zy(vn),Yo=$5(ut),Wg=Uu(yc,Zc=>Zc.parent&&Zc.parent===vn||Yo?"real":"merged"),aA=Wg.get("real")||E,Wu=Wg.get("merged")||E;if(B(aA)||Yo){let Zc;if(Yo){let Ng=ut.flags;ut.flags|=514,Zc=D(vn,ut,-1),ut.flags=Ng}else{let Ng=wk(vn,uo);Zc=me.createIdentifier(Ng),ut.approximateLength+=Ng.length}Bk(aA,Zc,sc,!!(vn.flags&67108880))}if(B(Wu)){let Zc=ms(ut.enclosingDeclaration),Ng=wk(vn,uo),Sm=me.createModuleBlock([me.createExportDeclaration(void 0,!1,me.createNamedExports(Xt(Le(Wu,Ff=>Ff.escapedName!=="export="),Ff=>{var m0,qI;let df=Bc(Ff.escapedName),II=wk(Ff,df),kI=Ff.declarations&&Qb(Ff);if(Zc&&(kI?Zc!==ms(kI):!zt(Ff.declarations,qy=>ms(qy)===Zc))){(qI=(m0=ut.tracker)==null?void 0:m0.reportNonlocalAugmentation)==null||qI.call(m0,Zc,vn,Ff);return}let RS=kI&&D5(kI,!0);vA(RS||Ff);let Hh=RS?wk(RS,Bc(RS.escapedName)):II;return me.createExportSpecifier(!1,df===Hh?void 0:Hh,df)})))]);au(me.createModuleDeclaration(void 0,me.createIdentifier(Ng),Sm,32),0)}}function lX(vn,uo,sc){let yc=wk(vn,uo);ut.approximateLength+=9+yc.length;let Yo=[],Wg=Le(Zd(fo(vn)),Wu=>!!(Wu.flags&8)),aA=0;for(let Wu of Wg){if(aA++,kt(ut)&&aA+2!B(kI.declarations)||zt(kI.declarations,RS=>ms(RS)===ms(ut.enclosingDeclaration))||Wg?"local":"remote").get("local")||E,Zc=q3.createModuleDeclaration(void 0,uo,me.createModuleBlock([]),Yo);UA(Zc,Cr),Zc.locals=$u(vn),Zc.symbol=vn[0].parent;let Ng=jr;jr=[];let Sm=Us;Us=!1;let Ff={...ut,enclosingDeclaration:Zc},m0=ut;ut=Ff,ta($u(Wu),yc,!0),ut=m0,Us=Sm;let qI=jr;jr=Ng;let df=lt(qI,kI=>yf(kI)&&!kI.isExportEquals&&Ir(kI.expression)?me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,kI.expression,me.createIdentifier("default"))])):kI),II=ue(df,kI=>Ga(kI,32))?lt(df,Li):df;Zc=me.updateModuleDeclaration(Zc,Zc.modifiers,Zc.name,me.createModuleBlock(II)),au(Zc,sc)}else Wg&&(ut.approximateLength+=14,au(me.createModuleDeclaration(void 0,uo,me.createModuleBlock([]),Yo),sc))}function coe(vn){return!!(vn.flags&2887656)||!(vn.flags&4194304||vn.escapedName==="prototype"||vn.valueDeclaration&&lg(vn.valueDeclaration)&&xa(vn.valueDeclaration.parent))}function n3e(vn){let uo=Xt(vn,sc=>{let yc=ut.enclosingDeclaration;ut.enclosingDeclaration=sc;let Yo=sc.expression;if(Hd(Yo)){if(Ir(Yo)&&Vo(Yo)==="")return Wg(void 0);let aA;if({introducesError:aA,node:Yo}=Bp(Yo,ut),aA)return Wg(void 0)}return Wg(me.createExpressionWithTypeArguments(Yo,lt(sc.typeArguments,aA=>tr.tryReuseExistingTypeNode(ut,aA)||ii(m(ut,aA),ut))));function Wg(aA){return ut.enclosingDeclaration=yc,aA}});if(uo.length===vn.length)return uo}function E6t(vn,uo,sc){var yc,Yo;ut.approximateLength+=9+uo.length;let Wg=(yc=vn.declarations)==null?void 0:yc.find(xa),aA=ut.enclosingDeclaration;ut.enclosingDeclaration=Wg||aA;let Wu=Kg(vn),Zc=lt(Wu,O9=>zI(O9,ut));F(Wu,O9=>ut.approximateLength+=of(O9.symbol).length);let Ng=k1(kv(vn)),Sm=tT(Ng),Ff=Wg&&uU(Wg),m0=Ff&&n3e(Ff)||Xt(Pse(Ng),U8s),qI=fo(vn),df=!!((Yo=qI.symbol)!=null&&Yo.valueDeclaration)&&xa(qI.symbol.valueDeclaration),II=df?uZ(qI):hr;ut.approximateLength+=(B(Sm)?8:0)+(B(m0)?11:0);let kI=[...B(Sm)?[me.createHeritageClause(96,lt(Sm,O9=>J8s(O9,II,uo)))]:[],...B(m0)?[me.createHeritageClause(119,m0)]:[]],RS=DUs(Ng,Sm,Zd(Ng)),Hh=Le(RS,O9=>!r3e(O9)),qy=zt(RS,r3e),W9=qy?$5(ut)?H_(Le(RS,r3e),!0,Sm[0],!1):[me.createPropertyDeclaration(void 0,me.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:E;qy&&!$5(ut)&&(ut.approximateLength+=9);let NS=H_(Hh,!0,Sm[0],!1),AG=H_(Le(Zd(qI),O9=>!(O9.flags&4194304)&&O9.escapedName!=="prototype"&&!coe(O9)),!0,II,!0),xO=!df&&!!vn.valueDeclaration&&Bo(vn.valueDeclaration)&&!zt(rg(qI,1));xO&&(ut.approximateLength+=21);let GO=xO?[me.createConstructorDeclaration(me.createModifiersFromModifierFlags(2),[],void 0)]:B6t(1,qI,II,177),K8s=Lyn(Ng,Sm[0]);ut.enclosingDeclaration=aA,au(v(ut,me.createClassDeclaration(void 0,uo,Zc,kI,[...K8s,...AG,...GO,...NS,...W9]),vn.declarations&&Le(vn.declarations,O9=>mm(O9)||wd(O9))[0]),sc)}function S6t(vn){return J(vn,uo=>{if(dy(uo)||k0(uo))return KD(uo.propertyName||uo.name);if(po(uo)||yf(uo)){let sc=yf(uo)?uo.expression:uo.right;if(jo(sc))return Vo(sc.name)}if(_9(uo)){let sc=fl(uo);if(sc&&Ir(sc))return Vo(sc)}})}function Gyn(vn,uo,sc){var yc,Yo,Wg,aA,Wu;let Zc=Qb(vn);if(!Zc)return pe.fail();let Ng=qA(D5(Zc,!0));if(!Ng)return;let Sm=MY(Ng)&&S6t(vn.declarations)||Bc(Ng.escapedName);Sm==="export="&&Tt&&(Sm="default");let Ff=wk(Ng,Sm);switch(vA(Ng),Zc.kind){case 209:if(((Yo=(yc=Zc.parent)==null?void 0:yc.parent)==null?void 0:Yo.kind)===261){let df=vh(Ng.parent||Ng,ut),{propertyName:II}=Zc,kI=II&&Ir(II)?Vo(II):void 0;ut.approximateLength+=24+uo.length+df.length+(kI?.length??0),au(me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,kI?me.createIdentifier(kI):void 0,me.createIdentifier(uo))])),me.createStringLiteral(df),void 0),0);break}pe.failBadSyntaxKind(((Wg=Zc.parent)==null?void 0:Wg.parent)||Zc,"Unhandled binding element grandparent kind in declaration serialization");break;case 305:((Wu=(aA=Zc.parent)==null?void 0:aA.parent)==null?void 0:Wu.kind)===227&&Bfe(Bc(vn.escapedName),Ff);break;case 261:if(jo(Zc.initializer)){let df=Zc.initializer,II=me.createUniqueName(uo),kI=vh(Ng.parent||Ng,ut);ut.approximateLength+=22+kI.length+Vo(II).length,au(me.createImportEqualsDeclaration(void 0,!1,II,me.createExternalModuleReference(me.createStringLiteral(kI))),0),ut.approximateLength+=12+uo.length+Vo(II).length+Vo(df.name).length,au(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(uo),me.createQualifiedName(II,df.name)),sc);break}case 272:if(Ng.escapedName==="export="&&zt(Ng.declarations,df=>cl(df)&&Zu(df))){i3e(vn);break}let m0=!(Ng.flags&512)&&!nc(Zc);ut.approximateLength+=11+uo.length+Bc(Ng.escapedName).length,au(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(uo),m0?gh(Ng,ut,-1,!1):me.createExternalModuleReference(me.createStringLiteral(vh(Ng,ut)))),m0?sc:0);break;case 271:au(me.createNamespaceExportDeclaration(Vo(Zc.name)),0);break;case 274:{let df=vh(Ng.parent||Ng,ut),II=ut.bundled?me.createStringLiteral(df):Zc.parent.moduleSpecifier,kI=Yf(Zc.parent)?Zc.parent.attributes:void 0,RS=NN(Zc.parent);ut.approximateLength+=14+uo.length+3+(RS?4:0),au(me.createImportDeclaration(void 0,me.createImportClause(RS?156:void 0,me.createIdentifier(uo),void 0),II,kI),0);break}case 275:{let df=vh(Ng.parent||Ng,ut),II=ut.bundled?me.createStringLiteral(df):Zc.parent.parent.moduleSpecifier,kI=NN(Zc.parent.parent);ut.approximateLength+=19+uo.length+3+(kI?4:0),au(me.createImportDeclaration(void 0,me.createImportClause(kI?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(uo))),II,Zc.parent.attributes),0);break}case 281:ut.approximateLength+=19+uo.length+3,au(me.createExportDeclaration(void 0,!1,me.createNamespaceExport(me.createIdentifier(uo)),me.createStringLiteral(vh(Ng,ut))),0);break;case 277:{let df=vh(Ng.parent||Ng,ut),II=ut.bundled?me.createStringLiteral(df):Zc.parent.parent.parent.moduleSpecifier,kI=NN(Zc.parent.parent.parent);ut.approximateLength+=19+uo.length+3+(kI?4:0),au(me.createImportDeclaration(void 0,me.createImportClause(kI?156:void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,uo!==Sm?me.createIdentifier(Sm):void 0,me.createIdentifier(uo))])),II,Zc.parent.parent.parent.attributes),0);break}case 282:let qI=Zc.parent.parent.moduleSpecifier;if(qI){let df=Zc.propertyName;df&&pv(df)&&(Sm="default")}Bfe(Bc(vn.escapedName),qI?Sm:Ff,qI&&_A(qI)?me.createStringLiteral(qI.text):void 0);break;case 278:i3e(vn);break;case 227:case 212:case 213:vn.escapedName==="default"||vn.escapedName==="export="?i3e(vn):Bfe(uo,Ff);break;default:return pe.failBadSyntaxKind(Zc,"Unhandled alias declaration kind in symbol serializer!")}}function Bfe(vn,uo,sc){ut.approximateLength+=16+vn.length+(vn!==uo?uo.length:0),au(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,vn!==uo?uo:void 0,vn)]),sc),0)}function i3e(vn){var uo;if(vn.flags&4194304)return!1;let sc=Bc(vn.escapedName),yc=sc==="export=",Wg=yc||sc==="default",aA=vn.declarations&&Qb(vn),Wu=aA&&D5(aA,!0);if(Wu&&B(Wu.declarations)&&zt(Wu.declarations,Zc=>ms(Zc)===ms(Cr))){let Zc=aA&&(yf(aA)||po(aA)?kne(aA):YZe(aA)),Ng=Zc&&Hd(Zc)?XUs(Zc):void 0,Sm=Ng&&NI(Ng,-1,!0,!0,Cr);(Sm||Wu)&&vA(Sm||Wu);let Ff=ut.tracker.disableTrackSymbol;if(ut.tracker.disableTrackSymbol=!0,Wg)ut.approximateLength+=10,jr.push(me.createExportAssignment(void 0,yc,Wv(Wu,ut,-1)));else if(Ng===Zc&&Ng)Bfe(sc,Vo(Ng));else if(Zc&&wd(Zc))Bfe(sc,wk(Wu,of(Wu)));else{let m0=o3e(sc,vn);ut.approximateLength+=m0.length+10,au(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(m0),gh(Wu,ut,-1,!1)),0),Bfe(sc,m0)}return ut.tracker.disableTrackSymbol=Ff,!0}else{let Zc=o3e(sc,vn),Ng=F1(fo(qA(vn)));if(v6t(Ng,vn))kO(Ng,vn,Zc,Wg?0:32);else{let Sm=((uo=ut.enclosingDeclaration)==null?void 0:uo.kind)===268&&(!(vn.flags&98304)||vn.flags&65536)?1:2;ut.approximateLength+=Zc.length+5;let Ff=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zc,void 0,ea(ut,void 0,Ng,vn))],Sm));au(Ff,Wu&&Wu.flags&4&&Wu.escapedName==="export="?128:sc===Zc?32:0)}return Wg?(ut.approximateLength+=Zc.length+10,jr.push(me.createExportAssignment(void 0,yc,me.createIdentifier(Zc))),!0):sc!==Zc?(Bfe(sc,Zc),!0):!1}}function v6t(vn,uo){var sc;let yc=ms(ut.enclosingDeclaration);return la(vn)&48&&!zt((sc=vn.symbol)==null?void 0:sc.declarations,uc)&&!B(f0(vn))&&!D2e(vn)&&!!(B(Le(Zd(vn),coe))||B(rg(vn,0)))&&!B(rg(vn,1))&&!zn(uo,Cr)&&!(vn.symbol&&zt(vn.symbol.declarations,Yo=>ms(Yo)!==yc))&&!zt(Zd(vn),Yo=>Z2e(Yo.escapedName))&&!zt(Zd(vn),Yo=>zt(Yo.declarations,Wg=>ms(Wg)!==yc))&&ue(Zd(vn),Yo=>qh(of(Yo),Ze)?Yo.flags&98304?mR(Yo)===R9(Yo):!0:!1)}function Fyn(vn,uo,sc){return function(Yo,Wg,aA){var Wu,Zc,Ng,Sm,Ff,m0;let qI=p2(Yo),df=!!(qI&2)&&!$5(ut);if(Wg&&Yo.flags&2887656)return[];if(Yo.flags&4194304||Yo.escapedName==="constructor"||aA&&Fg(aA,Yo.escapedName)&&wR(Fg(aA,Yo.escapedName))===wR(Yo)&&(Yo.flags&16777216)===(Fg(aA,Yo.escapedName).flags&16777216)&&cG(fo(Yo),Wi(aA,Yo.escapedName)))return[];let II=qI&-1025|(Wg?256:0),kI=Sfe(Yo,ut),RS=(Wu=Yo.declarations)==null?void 0:Wu.find(Qp(pi,wB,nc,ss,po,jo));if(Yo.flags&98304&&sc){let Hh=[];if(Yo.flags&65536){let qy=Yo.declarations&&F(Yo.declarations,AG=>{if(AG.kind===179)return AG;if(Ll(AG)&&S3(AG))return F(AG.arguments[2].properties,xO=>{let GO=fl(xO);if(GO&&Ir(GO)&&Vo(GO)==="set")return xO})});pe.assert(!!qy);let W9=Gd(qy)?BS(qy).parameters[0]:void 0,NS=(Zc=Yo.declarations)==null?void 0:Zc.find(dv);ut.approximateLength+=s3e(II)+7+(W9?of(W9).length:5)+(df?0:2),Hh.push(v(ut,me.createSetAccessorDeclaration(me.createModifiersFromModifierFlags(II),kI,[me.createParameterDeclaration(void 0,void 0,W9?qc(W9,xs(W9),ut):"value",void 0,df?void 0:ea(ut,NS,R9(Yo),Yo))],void 0),NS??RS))}if(Yo.flags&32768){let qy=(Ng=Yo.declarations)==null?void 0:Ng.find(TB);ut.approximateLength+=s3e(II)+8+(df?0:2),Hh.push(v(ut,me.createGetAccessorDeclaration(me.createModifiersFromModifierFlags(II),kI,[],df?void 0:ea(ut,qy,fo(Yo),Yo),void 0),qy??RS))}return Hh}else if(Yo.flags&98311){let Hh=(wR(Yo)?8:0)|II;return ut.approximateLength+=2+(df?0:2)+s3e(Hh),v(ut,vn(me.createModifiersFromModifierFlags(Hh),kI,Yo.flags&16777216?me.createToken(58):void 0,df?void 0:ea(ut,(Sm=Yo.declarations)==null?void 0:Sm.find(kg),R9(Yo),Yo),void 0),((Ff=Yo.declarations)==null?void 0:Ff.find(Qp(pi,nc)))||RS)}if(Yo.flags&8208){let Hh=fo(Yo),qy=rg(Hh,0);if(df){let NS=(wR(Yo)?8:0)|II;return ut.approximateLength+=1+s3e(NS),v(ut,vn(me.createModifiersFromModifierFlags(NS),kI,Yo.flags&16777216?me.createToken(58):void 0,void 0,void 0),((m0=Yo.declarations)==null?void 0:m0.find(Gd))||qy[0]&&qy[0].declaration||Yo.declarations&&Yo.declarations[0])}let W9=[];for(let NS of qy){ut.approximateLength+=1;let AG=ka(NS,uo,ut,{name:kI,questionToken:Yo.flags&16777216?me.createToken(58):void 0,modifiers:II?me.createModifiersFromModifierFlags(II):void 0}),xO=NS.declaration&&Sne(NS.declaration.parent)?NS.declaration.parent:NS.declaration;W9.push(v(ut,AG,xO))}return W9}return pe.fail(`Unhandled class member kind! ${Yo.__debugFlags||Yo.flags}`)}}function s3e(vn){let uo=0;return vn&32&&(uo+=7),vn&128&&(uo+=8),vn&2048&&(uo+=8),vn&4096&&(uo+=6),vn&1&&(uo+=7),vn&2&&(uo+=8),vn&4&&(uo+=10),vn&64&&(uo+=9),vn&256&&(uo+=7),vn&16&&(uo+=9),vn&8&&(uo+=9),vn&512&&(uo+=9),vn&1024&&(uo+=6),vn&8192&&(uo+=3),vn&16384&&(uo+=4),uo}function Zyn(vn,uo){return Qt(vn,!1,uo)}function B6t(vn,uo,sc,yc){let Yo=rg(uo,vn);if(vn===1){if(!sc&&ue(Yo,Wu=>B(Wu.parameters)===0))return[];if(sc){let Wu=rg(sc,1);if(!B(Wu)&&ue(Yo,Zc=>B(Zc.parameters)===0))return[];if(Wu.length===Yo.length){let Zc=!1;for(let Ng=0;Ngii(Yo,ut)),yc=Wv(vn.target.symbol,ut,788968)):vn.symbol&&Mpe(vn.symbol,Cr,uo)&&(yc=Wv(vn.symbol,ut,788968)),yc)return me.createExpressionWithTypeArguments(yc,sc)}function U8s(vn){let uo=w6t(vn,788968);if(uo)return uo;if(vn.symbol)return me.createExpressionWithTypeArguments(Wv(vn.symbol,ut,788968),void 0)}function o3e(vn,uo){var sc,yc;let Yo=uo?xg(uo):void 0;if(Yo&&ut.remappedSymbolNames.has(Yo))return ut.remappedSymbolNames.get(Yo);uo&&(vn=Vyn(uo,vn));let Wg=0,aA=vn;for(;(sc=ut.usedSymbolNames)!=null&&sc.has(vn);)Wg++,vn=`${aA}_${Wg}`;return(yc=ut.usedSymbolNames)==null||yc.add(vn),Yo&&ut.remappedSymbolNames.set(Yo,vn),vn}function Vyn(vn,uo){if(uo==="default"||uo==="__class"||uo==="__function"){let sc=Vt(ut);ut.flags|=16777216;let yc=L5(vn,ut);sc(),uo=yc.length>0&&Cne(yc.charCodeAt(0))?d2(yc):yc}return uo==="default"?uo="_default":uo==="export="&&(uo="_exports"),uo=qh(uo,Ze)&&!qY(uo)?uo:"_"+uo.replace(/[^a-z0-9]/gi,"_"),uo}function wk(vn,uo){let sc=xg(vn);return ut.remappedSymbolNames.has(sc)?ut.remappedSymbolNames.get(sc):(uo=Vyn(vn,uo),ut.remappedSymbolNames.set(sc,uo),uo)}}function $5(er){return er.maxExpansionDepth!==-1}function r3e(er){return!!er.valueDeclaration&&sh(er.valueDeclaration)&&p(er.valueDeclaration.name)}function uct(er){if(er.valueDeclaration&&sh(er.valueDeclaration)&&p(er.valueDeclaration.name))return me.cloneNode(er.valueDeclaration.name)}}function Wse(u){var m;let v=la(u)&4?u.target.symbol:u.symbol;return EA(u)||!!((m=v?.declarations)!=null&&m.some(D=>s.isSourceFileDefaultLibrary(ms(D))))}function hk(u,m,v=16384,D){return D?W(D).getText():bW(W);function W(Y){let oe=JQ(v)|70221824|512,Be=Dt.typePredicateToTypePredicateNode(u,m,oe),Me=EQ(),He=m&&ms(m);return Me.writeNode(4,Be,He,Y),Y}}function k2e(u,m){let v=[],D=0;for(let W=0;Wfl(oe)?oe:void 0),Y=W&&fl(W);if(W&&Y){if(Ll(W)&&S3(W))return of(u);if(Un(Y)&&!(aI(u)&4096)){let oe=fa(u).nameType;if(oe&&oe.flags&384){let Be=Xpe(u,m);if(Be!==void 0)return Be}}return Md(Y)}if(W||(W=u.declarations[0]),W.parent&&W.parent.kind===261)return Md(W.parent.name);switch(W.kind){case 232:case 219:case 220:return m&&!m.encounteredError&&!(m.flags&131072)&&(m.encounteredError=!0),W.kind===232?"(Anonymous class)":"(Anonymous function)"}}let D=Xpe(u,m);return D!==void 0?D:of(u)}function mk(u){if(u){let v=sa(u);return v.isVisible===void 0&&(v.isVisible=!!m()),v.isVisible}return!1;function m(){switch(u.kind){case 339:case 347:case 341:return!!(u.parent&&u.parent.parent&&u.parent.parent.parent&&cl(u.parent.parent.parent));case 209:return mk(u.parent.parent);case 261:if(Nu(u.name)&&!u.name.elements.length)return!1;case 268:case 264:case 265:case 266:case 263:case 267:case 272:if(wF(u))return!0;let v=Tn(u);return!(lct(u)&32)&&!(u.kind!==272&&v.kind!==308&&v.flags&33554432)?fc(v):mk(v);case 173:case 172:case 178:case 179:case 175:case 174:if(Lb(u,6))return!1;case 177:case 181:case 180:case 182:case 170:case 269:case 185:case 186:case 188:case 184:case 189:case 190:case 193:case 194:case 197:case 203:return mk(u.parent);case 274:case 275:case 277:return!1;case 169:case 308:case 271:return!0;case 278:return!1;default:return!1}}}function Ose(u,m){let v;u.kind!==11&&u.parent&&u.parent.kind===278?v=An(u,u,2998271,void 0,!1):u.parent.kind===282&&(v=Eq(u.parent,2998271));let D,W;return v&&(W=new Set,W.add(xg(v)),Y(v.declarations)),D;function Y(oe){F(oe,Be=>{let Me=Rv(Be)||Be;if(m?sa(Be).isVisible=!0:(D=D||[],Qi(D,Me)),b3(Be)){let He=Be.moduleReference,$e=R0(He),Vt=An(Be,$e.escapedText,901119,void 0,!1);Vt&&W&&Ar(W,xg(Vt))&&Y(Vt.declarations)}})}}function YN(u,m){let v=nt(u,m);if(v>=0){let{length:D}=Ux;for(let W=v;W=p9;v--){if(Kt(Ux[v],eK[v]))return-1;if(Ux[v]===u&&eK[v]===m)return v}return-1}function Kt(u,m){switch(m){case 0:return!!fa(u).type;case 2:return!!fa(u).declaredType;case 1:return!!u.resolvedBaseConstructorType;case 3:return!!u.resolvedReturnType;case 4:return!!u.immediateBaseConstraint;case 5:return!!u.resolvedTypeArguments;case 6:return!!u.baseTypesResolved;case 7:return!!fa(u).writeType;case 8:return sa(u).parameterInitializerContainsUndefined!==void 0}return pe.assertNever(m)}function xr(){return Ux.pop(),eK.pop(),I5.pop()}function Tn(u){return ji(Fw(u),m=>{switch(m.kind){case 261:case 262:case 277:case 276:case 275:case 274:return!1;default:return!0}}).parent}function Ai(u){let m=Lp(nC(u));return m.typeParameters?gZ(m,lt(m.typeParameters,v=>hr)):m}function Wi(u,m){let v=Fg(u,m);return v?fo(v):void 0}function Ba(u,m){var v;let D;return Wi(u,m)||(D=(v=Oq(u,m))==null?void 0:v.type)&&W0(D,!0,!0)}function Xo(u){return u&&(u.flags&1)!==0}function lo(u){return u===nn||!!(u.flags&1&&u.aliasSymbol)}function Cc(u,m){if(m!==0)return Fq(u,!1,m);let v=Uo(u);return v&&fa(v).type||Fq(u,!1,m)}function Rl(u,m,v){if(u=am(u,Me=>!(Me.flags&98304)),u.flags&131072)return Jg;if(u.flags&1048576)return Xf(u,Me=>Rl(Me,m,v));let D=Ha(lt(m,AZ)),W=[],Y=[];for(let Me of Zd(u)){let He=Pq(Me,8576);!pg(He,D)&&!(p2(Me)&6)&&Dot(Me)?W.push(Me):Y.push(He)}if(xK(u)||GK(D)){if(Y.length&&(D=Ha([D,...Y])),D.flags&131072)return u;let Me=G3s();return Me?Jse(Me,[u,D]):nn}let oe=$u();for(let Me of W)oe.set(Me.escapedName,YUt(Me,!1));let Be=Qf(v,oe,E,E,f0(u));return Be.objectFlags|=4194304,Be}function Sp(u){return!!(u.flags&465829888)&&uh(O_(u)||cn,32768)}function rp(u){let m=Lv(u,Sp)?Xf(u,v=>v.flags&465829888?XN(v):v):u;return Zv(m,524288)}function $A(u,m){let v=Dv(u);return v?_Z(v,m):m}function Dv(u){let m=SS(u);if(m&&cU(m)&&m.flowNode){let v=B9(u);if(v){let D=gn(q3.createStringLiteral(v),u),W=G_(m)?m:q3.createParenthesizedExpression(m),Y=gn(q3.createElementAccessExpression(W,D),u);return UA(D,Y),UA(Y,u),W!==m&&UA(W,Y),Y.flowNode=m.flowNode,Y}}}function SS(u){let m=u.parent.parent;switch(m.kind){case 209:case 304:return Dv(m);case 210:return Dv(u.parent);case 261:return m.initializer;case 227:return m.right}}function B9(u){let m=u.parent;return u.kind===209&&m.kind===207?w9(u.propertyName||u.name):u.kind===304||u.kind===305?w9(u.name):""+m.elements.indexOf(u)}function w9(u){let m=AZ(u);return m.flags&384?""+m.value:void 0}function tG(u){let m=u.dotDotDotToken?32:0,v=Cc(u.parent.parent,m);return v&&CO(u,v,!1)}function CO(u,m,v){if(Xo(m))return m;let D=u.parent;at&&u.flags&33554432&&jL(u)?m=mZ(m):at&&D.parent.initializer&&!ER(Mmn(D.parent.initializer),65536)&&(m=Zv(m,524288));let W=32|(v||Kq(u)?16:0),Y;if(D.kind===207)if(u.dotDotDotToken){if(m=$B(m),m.flags&2||!SPe(m))return Br(u,Z.Rest_types_may_only_be_created_from_object_types),nn;let oe=[];for(let Be of D.elements)Be.dotDotDotToken||oe.push(Be.propertyName||Be.name);Y=Rl(m,oe,u.symbol)}else{let oe=u.propertyName||u.name,Be=AZ(oe),Me=x1(m,Be,W,oe);Y=$A(u,Me)}else{let oe=L9(65|(u.dotDotDotToken?0:128),m,wt,D),Be=D.elements.indexOf(u);if(u.dotDotDotToken){let Me=Xf(m,He=>He.flags&58982400?XN(He):He);Y=xE(Me,EA)?Xf(Me,He=>sfe(He,Be)):I0(oe)}else if(F9(m)){let Me=yR(Be),He=EO(m,Me,W,u.name)||nn;Y=$A(u,He)}else Y=oe}return u.initializer?Zh(ai(u))?at&&!ER(ffe(u,0),16777216)?rp(Y):Y:W8t(u,Ha([rp(Y),ffe(u,0)],2)):Y}function sd(u){let m=oN(u);if(m)return tl(m)}function Wm(u){let m=JA(u,!0);return m.kind===106||m.kind===80&&O0(m)===dt}function T9(u){let m=JA(u,!0);return m.kind===210&&m.elements.length===0}function W0(u,m=!1,v=!0){return at&&v?wO(u,m):u}function Fq(u,m,v){if(nc(u)&&u.parent.parent.kind===250){let oe=JN(o8t(Ml(u.parent.parent.expression,v)));return oe.flags&4456448?bhn(oe):$r}if(nc(u)&&u.parent.parent.kind===251){let oe=u.parent.parent;return KPe(oe)||hr}if(Nu(u.parent))return tG(u);let D=pi(u)&&!Zw(u)||ss(u)||mOt(u),W=m&&FB(u),Y=yO(u);if(sne(u))return Y?Xo(Y)||Y===cn?Y:nn:je?cn:hr;if(Y)return W0(Y,D,W);if((Rt||Bo(u))&&nc(u)&&!Nu(u.name)&&!(lct(u)&32)&&!(u.flags&33554432)){if(!(cX(u)&6)&&(!u.initializer||Wm(u.initializer)))return En;if(u.initializer&&T9(u.initializer))return YC}if(Si(u)){if(!u.symbol)return;let oe=u.parent;if(oe.kind===179&&Hse(oe)){let He=yp(Uo(u.parent),178);if(He){let $e=BS(He),Vt=_6t(oe);return Vt&&u===Vt?(pe.assert(!Vt.type),fo($e.thisParameter)):Ad($e)}}let Be=i3s(oe,u);if(Be)return Be;let Me=u.symbol.escapedName==="this"?XKt(oe):CCn(u);if(Me)return W0(Me,!1,W)}if(d1(u)&&u.initializer){if(Bo(u)&&!Si(u)){let Be=Ii(u,Uo(u),V7(u));if(Be)return Be}let oe=W8t(u,ffe(u,v));return W0(oe,D,W)}if(pi(u)&&(Rt||Bo(u)))if(tm(u)){let oe=Le(u.parent.members,dl),Be=oe.length?Ce(u.symbol,oe):l_(u)&128?Mot(u.symbol):void 0;return Be&&W0(Be,!0,W)}else{let oe=lQ(u.parent),Be=oe?Oe(u.symbol,oe):l_(u)&128?Mot(u.symbol):void 0;return Be&&W0(Be,!0,W)}if(RN(u))return tn;if(Nu(u.name))return Jpe(u.name,!1,!0)}function rG(u){if(u.valueDeclaration&&po(u.valueDeclaration)){let m=fa(u);return m.isConstructorDeclaredProperty===void 0&&(m.isConstructorDeclaredProperty=!1,m.isConstructorDeclaredProperty=!!So(u)&&ue(u.declarations,v=>po(v)&&dat(v)&&(v.left.kind!==213||h1(v.left.argumentExpression))&&!Jo(void 0,v,u,v))),m.isConstructorDeclaredProperty}return!1}function Ck(u){let m=u.valueDeclaration;return m&&pi(m)&&!Zh(m)&&!m.initializer&&(Rt||Bo(m))}function So(u){if(u.declarations)for(let m of u.declarations){let v=s0(m,!1,!1);if(v&&(v.kind===177||jN(v)))return v}}function q(u){let m=ms(u.declarations[0]),v=Bc(u.escapedName),D=u.declarations.every(Y=>Bo(Y)&&bp(Y)&&pN(Y.expression)),W=D?me.createPropertyAccessExpression(me.createPropertyAccessExpression(me.createIdentifier("module"),me.createIdentifier("exports")),v):me.createPropertyAccessExpression(me.createIdentifier("exports"),v);return D&&UA(W.expression.expression,W.expression),UA(W.expression,W),UA(W,m),W.flowNode=m.endFlowNode,_Z(W,En,wt)}function Ce(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName);for(let D of m){let W=me.createPropertyAccessExpression(me.createThis(),v);UA(W.expression,W),UA(W,D),W.flowNode=D.returnFlowNode;let Y=bt(W,u);if(Rt&&(Y===En||Y===YC)&&Br(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,xl(u),ro(Y)),!xE(Y,wPe))return BSe(Y)}}function Oe(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName),D=me.createPropertyAccessExpression(me.createThis(),v);UA(D.expression,D),UA(D,m),D.flowNode=m.returnFlowNode;let W=bt(D,u);return Rt&&(W===En||W===YC)&&Br(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,xl(u),ro(W)),xE(W,wPe)?void 0:BSe(W)}function bt(u,m){let v=m?.valueDeclaration&&(!Ck(m)||l_(m.valueDeclaration)&128)&&Mot(m)||wt;return _Z(u,En,v)}function Nr(u,m){let v=JY(u.valueDeclaration);if(v){let Be=Bo(v)?gv(v):void 0;return Be&&Be.typeExpression?tl(Be.typeExpression):u.valueDeclaration&&Ii(u.valueDeclaration,u,v)||J5(DI(v))}let D,W=!1,Y=!1;if(rG(u)&&(D=Oe(u,So(u))),!D){let Be;if(u.declarations){let Me;for(let He of u.declarations){let $e=po(He)||Ll(He)?He:bp(He)?po(He.parent)?He.parent:He:void 0;if(!$e)continue;let Vt=bp($e)?oU($e):oI($e);(Vt===4||po($e)&&dat($e,Vt))&&(S2($e)?W=!0:Y=!0),Ll($e)||(Me=Jo(Me,$e,u,He)),Me||(Be||(Be=[])).push(po($e)||Ll($e)?du(u,m,$e,Vt):Oi)}D=Me}if(!D){if(!B(Be))return nn;let Me=W&&u.declarations?_O(Be,u.declarations):void 0;if(Y){let $e=Mot(u);$e&&((Me||(Me=[])).push($e),W=!0)}let He=zt(Me,$e=>!!($e.flags&-98305))?Me:Be;D=Ha(He)}}let oe=F1(W0(D,!1,Y&&!W));return u.valueDeclaration&&Bo(u.valueDeclaration)&&am(oe,Be=>!!(Be.flags&-98305))===Oi?(U5(u.valueDeclaration,hr),hr):oe}function Ii(u,m,v){var D,W;if(!Bo(u)||!v||!ag(v)||v.properties.length)return;let Y=$u();for(;po(u)||jo(u);){let Me=ES(u);(D=Me?.exports)!=null&&D.size&&PN(Y,Me.exports),u=po(u)?u.parent:u.parent.parent}let oe=ES(u);(W=oe?.exports)!=null&&W.size&&PN(Y,oe.exports);let Be=Qf(m,Y,E,E,E);return Be.objectFlags|=4096,Be}function Jo(u,m,v,D){var W;let Y=Zh(m.parent);if(Y){let oe=F1(tl(Y));if(u)!lo(u)&&!lo(oe)&&!cG(u,oe)&&w0n(void 0,u,D,oe);else return oe}if((W=v.parent)!=null&&W.valueDeclaration){let oe=x5(v.parent);if(oe.valueDeclaration){let Be=Zh(oe.valueDeclaration);if(Be){let Me=Fg(tl(Be),v.escapedName);if(Me)return mR(Me)}}}return u}function du(u,m,v,D){if(Ll(v)){if(m)return fo(m);let oe=DI(v.arguments[2]),Be=Wi(oe,"value");if(Be)return Be;let Me=Wi(oe,"get");if(Me){let $e=XK(Me);if($e)return Ad($e)}let He=Wi(oe,"set");if(He){let $e=XK(He);if($e)return R8t($e)}return hr}if(uf(v.left,v.right))return hr;let W=D===1&&(jo(v.left)||Qg(v.left))&&(pN(v.left.expression)||Ir(v.left.expression)&&E3(v.left.expression)),Y=m?fo(m):W?Cy(DI(v.right)):J5(DI(v.right));if(Y.flags&524288&&D===2&&u.escapedName==="export="){let oe=_R(Y),Be=$u();b7(oe.members,Be);let Me=Be.size;m&&!m.exports&&(m.exports=$u()),(m||u).exports.forEach(($e,Vt)=>{var kt;let wr=Be.get(Vt);if(wr&&wr!==$e&&!($e.flags&2097152))if($e.flags&111551&&wr.flags&111551){if($e.valueDeclaration&&wr.valueDeclaration&&ms($e.valueDeclaration)!==ms(wr.valueDeclaration)){let Sn=Bc($e.escapedName),ii=((kt=Gs(wr.valueDeclaration,sh))==null?void 0:kt.name)||wr.valueDeclaration;ug(Br($e.valueDeclaration,Z.Duplicate_identifier_0,Sn),ho(ii,Z._0_was_also_declared_here,Sn)),ug(Br(ii,Z.Duplicate_identifier_0,Sn),ho($e.valueDeclaration,Z._0_was_also_declared_here,Sn))}let dn=dA($e.flags|wr.flags,Vt);dn.links.type=Ha([fo($e),fo(wr)]),dn.valueDeclaration=wr.valueDeclaration,dn.declarations=Nn(wr.declarations,$e.declarations),Be.set(Vt,dn)}else Be.set(Vt,Tv($e,wr));else Be.set(Vt,$e)});let He=Qf(Me!==Be.size?void 0:oe.symbol,Be,oe.callSignatures,oe.constructSignatures,oe.indexInfos);if(Me===Be.size&&(Y.aliasSymbol&&(He.aliasSymbol=Y.aliasSymbol,He.aliasTypeArguments=Y.aliasTypeArguments),la(Y)&4)){He.aliasSymbol=Y.symbol;let $e=gf(Y);He.aliasTypeArguments=B($e)?$e:void 0}return He.objectFlags|=YOe([Y])|la(Y)&20608,He.symbol&&He.symbol.flags&32&&Y===kv(He.symbol)&&(He.objectFlags|=16777216),He}return Yot(Y)?(U5(v,I_),I_):Y}function uf(u,m){return jo(u)&&u.expression.kind===110&&Wz(m,v=>__(u,v))}function S2(u){let m=s0(u,!1,!1);return m.kind===177||m.kind===263||m.kind===219&&!Sne(m.parent)}function _O(u,m){return pe.assert(u.length===m.length),u.filter((v,D)=>{let W=m[D],Y=po(W)?W:po(W.parent)?W.parent:void 0;return Y&&S2(Y)})}function hR(u,m,v){if(u.initializer){let D=Nu(u.name)?Jpe(u.name,!0,!1):cn;return W0($_n(u,ffe(u,0,D)))}return Nu(u.name)?Jpe(u.name,m,v):(v&&!iot(u)&&U5(u,hr),m?ds:hr)}function Zq(u,m,v){let D=$u(),W,Y=131200;F(u.elements,Be=>{let Me=Be.propertyName||Be.name;if(Be.dotDotDotToken){W=oG($r,hr,!1);return}let He=AZ(Me);if(!f2(He)){Y|=512;return}let $e=I2(He),Vt=4|(Be.initializer?16777216:0),kt=dA(Vt,$e);kt.links.type=hR(Be,m,v),D.set(kt.escapedName,kt)});let oe=Qf(void 0,D,E,E,W?[W]:E);return oe.objectFlags|=Y,m&&(oe.pattern=u,oe.objectFlags|=131072),oe}function PJt(u,m,v){let D=u.elements,W=li(D),Y=W&&W.kind===209&&W.dotDotDotToken?W:void 0;if(D.length===0||D.length===1&&Y)return Ze>=2?ohn(hr):I_;let oe=lt(D,$e=>Ep($e)?hr:hR($e,m,v)),Be=De(D,$e=>!($e===Y||Ep($e)||Kq($e)),D.length-1)+1,Me=lt(D,($e,Vt)=>$e===Y?4:Vt>=Be?2:1),He=Ek(oe,Me);return m&&(He=VIn(He),He.pattern=u,He.objectFlags|=131072),He}function Jpe(u,m=!1,v=!1){m&&UB.push(u);let D=u.kind===207?Zq(u,m,v):PJt(u,m,v);return m&&UB.pop(),D}function Lq(u,m){return G2e(Fq(u,!0,0),u,m)}function MJt(u){let m=sa(u);if(!m.resolvedType){let v=dA(4096,"__importAttributes"),D=$u();F(u.elements,Y=>{let oe=dA(4,ude(Y));oe.parent=v,oe.links.type=JUs(Y),oe.links.target=oe,D.set(oe.escapedName,oe)});let W=Qf(v,D,E,E,E);W.objectFlags|=262272,m.resolvedType=W}return m.resolvedType}function HJt(u){let m=ES(u),v=_3s(!1);return v&&m&&m===v}function G2e(u,m,v){return u?(u.flags&4096&&HJt(m.parent)&&(u=QUt(m)),v&&qot(m,u),u.flags&8192&&(mg(m)||!yO(m))&&u.symbol!==Uo(m)&&(u=ci),F1(u)):(u=Si(m)&&m.dotDotDotToken?I_:hr,v&&(iot(m)||U5(m,u)),u)}function iot(u){let m=Fw(u),v=m.kind===170?m.parent:m;return HPe(v)}function yO(u){let m=Zh(u);if(m)return tl(m)}function YJt(u){let m=u.valueDeclaration;return m?(mg(m)&&(m=ai(m)),Si(m)?Fot(m.parent):!1):!1}function QJt(u){let m=fa(u);if(!m.type){let v=XJt(u);return!m.type&&!YJt(u)&&(m.type=v),v}return m.type}function XJt(u){if(u.flags&4194304)return Ai(u);if(u===ir)return hr;if(u.flags&134217728&&u.valueDeclaration){let D=Uo(ms(u.valueDeclaration)),W=dA(D.flags,"exports");W.declarations=D.declarations?D.declarations.slice():[],W.parent=u,W.links.target=D,D.valueDeclaration&&(W.valueDeclaration=D.valueDeclaration),D.members&&(W.members=new Map(D.members)),D.exports&&(W.exports=new Map(D.exports));let Y=$u();return Y.set("exports",W),Qf(u,Y,E,E,E)}pe.assertIsDefined(u.valueDeclaration);let m=u.valueDeclaration;if(cl(m)&&Zu(m))return m.statements.length?F1(J5(Ml(m.statements[0].expression))):Jg;if(wB(m))return Kpe(u);if(!YN(u,0))return u.flags&512&&!(u.flags&67108864)?jpe(u):BK(u);let v;if(m.kind===278)v=G2e(yO(m)||DI(m.expression),m);else if(po(m)||Bo(m)&&(Ll(m)||(jo(m)||dAe(m))&&po(m.parent)))v=Nr(u);else if(jo(m)||Qg(m)||Ir(m)||_A(m)||yC(m)||mm(m)||ah(m)||gu(m)&&!g2(m)||Il(m)||cl(m)){if(u.flags&9136)return jpe(u);v=po(m.parent)?Nr(u):yO(m)||hr}else if(Cm(m))v=yO(m)||e0n(m);else if(RN(m))v=yO(m)||GCn(m);else if(u0(m))v=yO(m)||hfe(m.name,0);else if(g2(m))v=yO(m)||t0n(m,0);else if(Si(m)||pi(m)||ss(m)||nc(m)||mg(m)||vY(m))v=Lq(m,!0);else if(J3(m))v=jpe(u);else if(YF(m))v=cot(u);else return pe.fail("Unhandled declaration kind! "+pe.formatSyntaxKind(m.kind)+" for "+pe.formatSymbol(u));return xr()?v:u.flags&512&&!(u.flags&67108864)?jpe(u):BK(u)}function UQ(u){if(u)switch(u.kind){case 178:return Zb(u);case 179:return fbe(u);case 173:return pe.assert(Zw(u)),Zh(u)}}function Upe(u){let m=UQ(u);return m&&tl(m)}function Vq(u){let m=_6t(u);return m&&m.symbol}function sot(u){return P5(BS(u))}function Kpe(u){let m=fa(u);if(!m.type){if(!YN(u,0))return nn;let v=yp(u,178),D=yp(u,179),W=Gs(yp(u,173),i0),Y=v&&Bo(v)&&sd(v)||Upe(v)||Upe(D)||Upe(W)||v&&v.body&&xat(v)||W&&Lq(W,!0);Y||(D&&!HPe(D)?Kw(Rt,D,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,xl(u)):v&&!HPe(v)?Kw(Rt,v,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,xl(u)):W&&!HPe(W)&&Kw(Rt,W,Z.Member_0_implicitly_has_an_1_type,xl(u),"any"),Y=hr),xr()||(UQ(v)?Br(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)):UQ(D)||UQ(W)?Br(D,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)):v&&Rt&&Br(v,Z._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,xl(u)),Y=hr),m.type??(m.type=Y)}return m.type}function oot(u){let m=fa(u);if(!m.writeType){if(!YN(u,7))return nn;let v=yp(u,179)??Gs(yp(u,173),i0),D=Upe(v);xr()||(UQ(v)&&Br(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)),D=hr),m.writeType??(m.writeType=D||Kpe(u))}return m.writeType}function F2e(u){let m=uZ(kv(u));return m.flags&8650752?m:m.flags&2097152?de(m.types,v=>!!(v.flags&8650752)):void 0}function jpe(u){let m=fa(u),v=m;if(!m.type){let D=u.valueDeclaration&&Dat(u.valueDeclaration,!1);if(D){let W=b8t(u,D);W&&(u=W,m=W.links)}v.type=m.type=aot(u)}return m.type}function aot(u){let m=u.valueDeclaration;if(u.flags&1536&&MY(u))return hr;if(m&&(m.kind===227||bp(m)&&m.parent.kind===227))return Nr(u);if(u.flags&512&&m&&cl(m)&&m.commonJsModuleIndicator){let D=DE(u);if(D!==u){if(!YN(u,0))return nn;let W=qA(u.exports.get("export=")),Y=Nr(W,W===D?void 0:D);return xr()?Y:BK(u)}}let v=Ph(16,u);if(u.flags&32){let D=F2e(u);return D?jg([v,D]):v}else return at&&u.flags&16777216?wO(v,!0):v}function cot(u){let m=fa(u);return m.type||(m.type=zfn(u))}function JJt(u){let m=fa(u);if(!m.type){if(!YN(u,0))return nn;let v=JC(u),D=u.declarations&&D5(Qb(u),!0),W=J(D?.declarations,Y=>yf(Y)?yO(Y):void 0);if(m.type??(m.type=D?.declarations&&$at(D.declarations)&&u.declarations.length?q(D):$at(u.declarations)?En:W||(Xb(v)&111551?fo(v):nn)),!xr())return BK(D??u),m.type??(m.type=nn)}return m.type}function UJt(u){let m=fa(u);return m.type||(m.type=Cl(fo(m.target),m.mapper))}function KJt(u){let m=fa(u);return m.writeType||(m.writeType=Cl(R9(m.target),m.mapper))}function BK(u){let m=u.valueDeclaration;if(m){if(Zh(m))return Br(u.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,xl(u)),nn;Rt&&(m.kind!==170||m.initializer)&&Br(u.valueDeclaration,Z._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,xl(u))}else if(u.flags&2097152){let v=Qb(u);v&&Br(v,Z.Circular_definition_of_import_alias_0,xl(u))}return hr}function lot(u){let m=fa(u);return m.type||(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.type=m.deferralParent.flags&1048576?Ha(m.deferralConstituents):jg(m.deferralConstituents)),m.type}function jJt(u){let m=fa(u);return!m.writeType&&m.deferralWriteConstituents&&(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.writeType=m.deferralParent.flags&1048576?Ha(m.deferralWriteConstituents):jg(m.deferralWriteConstituents)),m.writeType}function R9(u){let m=aI(u);return m&2?m&65536?jJt(u)||lot(u):u.links.writeType||u.links.type:u.flags&4?CZ(fo(u),!!(u.flags&16777216)):u.flags&98304?m&1?KJt(u):oot(u):fo(u)}function fo(u){let m=aI(u);return m&65536?lot(u):m&1?UJt(u):m&262144?WPs(u):m&8192?rHs(u):u.flags&7?QJt(u):u.flags&9136?jpe(u):u.flags&8?cot(u):u.flags&98304?Kpe(u):u.flags&2097152?JJt(u):nn}function mR(u){return CZ(fo(u),!!(u.flags&16777216))}function uot(u,m){if(u===void 0||!(la(u)&4))return!1;for(let v of m)if(u.target===v)return!0;return!1}function D1(u,m){return u!==void 0&&m!==void 0&&(la(u)&4)!==0&&u.target===m}function vs(u){return la(u)&4?u.target:u}function da(u,m){return v(u);function v(D){if(la(D)&7){let W=vs(D);return W===m||zt(tT(W),v)}else if(D.flags&2097152)return zt(D.types,v);return!1}}function Sa(u,m){for(let v of m)u=ps(u,V5(Uo(v)));return u}function Fc(u,m){for(;;){if(u=u.parent,u&&po(u)){let D=oI(u);if(D===6||D===3){let W=Uo(u.left);W&&W.parent&&!ji(W.parent.valueDeclaration,Y=>u===Y)&&(u=W.parent.valueDeclaration)}}if(!u)return;let v=u.kind;switch(v){case 264:case 232:case 265:case 180:case 181:case 174:case 185:case 186:case 318:case 263:case 175:case 219:case 220:case 266:case 346:case 347:case 341:case 339:case 201:case 195:{let W=Fc(u,m);if((v===219||v===220||g2(u))&&wS(u)){let Be=Nc(rg(fo(Uo(u)),0));if(Be&&Be.typeParameters)return[...W||E,...Be.typeParameters]}if(v===201)return Ft(W,V5(Uo(u.typeParameter)));if(v===195)return Nn(W,PUt(u));let Y=Sa(W,MD(u)),oe=m&&(v===264||v===232||v===265||jN(u))&&kv(Uo(u)).thisType;return oe?Ft(Y,oe):Y}case 342:let D=Tne(u);D&&(u=D.valueDeclaration);break;case 321:{let W=Fc(u,m);return u.tags?Sa(W,jt(u.tags,Y=>MB(Y)?Y.typeParameters:void 0)):W}}}}function Qc(u){var m;let v=u.flags&32||u.flags&16?u.valueDeclaration:(m=u.declarations)==null?void 0:m.find(D=>{if(D.kind===265)return!0;if(D.kind!==261)return!1;let W=D.initializer;return!!W&&(W.kind===219||W.kind===220)});return pe.assert(!!v,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Fc(v)}function Kg(u){if(!u.declarations)return;let m;for(let v of u.declarations)(v.kind===265||v.kind===264||v.kind===232||jN(v)||Bne(v))&&(m=Sa(m,MD(v)));return m}function vp(u){return Nn(Qc(u),Kg(u))}function C_(u){let m=rg(u,1);if(m.length===1){let v=m[0];if(!v.typeParameters&&v.parameters.length===1&&G0(v)){let D=GPe(v.parameters[0]);return Xo(D)||lPe(D)===hr}}return!1}function CR(u){if(rg(u,1).length>0)return!0;if(u.flags&8650752){let m=O_(u);return!!m&&C_(m)}return!1}function qB(u){let m=mN(u.symbol);return m&&kB(m)}function eT(u,m,v){let D=B(m),W=Bo(v);return Le(rg(u,1),Y=>(W||D>=bk(Y.typeParameters))&&D<=B(Y.typeParameters))}function nG(u,m,v){let D=eT(u,m,v),W=lt(m,tl);return Er(D,Y=>zt(Y.typeParameters)?M2e(Y,W,Bo(v)):Y)}function uZ(u){if(!u.resolvedBaseConstructorType){let m=mN(u.symbol),v=m&&kB(m),D=qB(u);if(!D)return u.resolvedBaseConstructorType=wt;if(!YN(u,1))return nn;let W=Ml(D.expression);if(v&&D!==v&&(pe.assert(!v.typeArguments),Ml(v.expression)),W.flags&2621440&&_R(W),!xr())return Br(u.symbol.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,xl(u.symbol)),u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn);if(!(W.flags&1)&&W!==Mt&&!CR(W)){let Y=Br(D.expression,Z.Type_0_is_not_a_constructor_function_type,ro(W));if(W.flags&262144){let oe=rfe(W),Be=cn;if(oe){let Me=rg(oe,1);Me[0]&&(Be=Ad(Me[0]))}W.symbol.declarations&&ug(Y,ho(W.symbol.declarations[0],Z.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,xl(W.symbol),ro(Be)))}return u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn)}u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=W)}return u.resolvedBaseConstructorType}function Pse(u){let m=E;if(u.symbol.declarations)for(let v of u.symbol.declarations){let D=uU(v);if(D)for(let W of D){let Y=tl(W);lo(Y)||(m===E?m=[Y]:m.push(Y))}}return m}function zpe(u,m){Br(u,Z.Type_0_recursively_references_itself_as_a_base_type,ro(m,void 0,2))}function tT(u){if(!u.baseTypesResolved){if(YN(u,6)&&(u.objectFlags&8?u.resolvedBaseTypes=[uPs(u)]:u.symbol.flags&96?(u.symbol.flags&32&&gPs(u),u.symbol.flags&64&&dPs(u)):pe.fail("type must be class or interface"),!xr()&&u.symbol.declarations))for(let m of u.symbol.declarations)(m.kind===264||m.kind===265)&&zpe(m,u);u.baseTypesResolved=!0}return u.resolvedBaseTypes}function uPs(u){let m=Er(u.typeParameters,(v,D)=>u.elementFlags[D]&8?x1(v,ri):v);return I0(Ha(m||E),u.readonly)}function gPs(u){u.resolvedBaseTypes=zre;let m=my(uZ(u));if(!(m.flags&2621441))return u.resolvedBaseTypes=E;let v=qB(u),D,W=m.symbol?Lp(m.symbol):void 0;if(m.symbol&&m.symbol.flags&32&&APs(W))D=WIn(v,m.symbol);else if(m.flags&1)D=m;else{let oe=nG(m,v.typeArguments,v);if(!oe.length)return Br(v.expression,Z.No_base_constructor_has_the_specified_number_of_type_arguments),u.resolvedBaseTypes=E;D=Ad(oe[0])}if(lo(D))return u.resolvedBaseTypes=E;let Y=$B(D);if(!ZOe(Y)){let oe=lUt(void 0,D),Be=wu(oe,Z.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,ro(Y));return PA.add(kw(ms(v.expression),v.expression,Be)),u.resolvedBaseTypes=E}return u===Y||da(Y,u)?(Br(u.symbol.valueDeclaration,Z.Type_0_recursively_references_itself_as_a_base_type,ro(u,void 0,2)),u.resolvedBaseTypes=E):(u.resolvedBaseTypes===zre&&(u.members=void 0),u.resolvedBaseTypes=[Y])}function APs(u){let m=u.outerTypeParameters;if(m){let v=m.length-1,D=gf(u);return m[v].symbol!==D[v].symbol}return!0}function ZOe(u){if(u.flags&262144){let m=O_(u);if(m)return ZOe(m)}return!!(u.flags&67633153&&!Jb(u)||u.flags&2097152&&ue(u.types,ZOe))}function dPs(u){if(u.resolvedBaseTypes=u.resolvedBaseTypes||E,u.symbol.declarations){for(let m of u.symbol.declarations)if(m.kind===265&&Q7(m))for(let v of Q7(m)){let D=$B(tl(v));lo(D)||(ZOe(D)?u!==D&&!da(D,u)?u.resolvedBaseTypes===E?u.resolvedBaseTypes=[D]:u.resolvedBaseTypes.push(D):zpe(m,u):Br(v,Z.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function pPs(u){if(!u.declarations)return!0;for(let m of u.declarations)if(m.kind===265){if(m.flags&256)return!1;let v=Q7(m);if(v){for(let D of v)if(Hd(D.expression)){let W=NI(D.expression,788968,!0);if(!W||!(W.flags&64)||kv(W).thisType)return!1}}}return!0}function kv(u){let m=fa(u),v=m;if(!m.declaredType){let D=u.flags&32?1:2,W=b8t(u,u.valueDeclaration&&pXs(u.valueDeclaration));W&&(u=W,m=W.links);let Y=v.declaredType=m.declaredType=Ph(D,u),oe=Qc(u),Be=Kg(u);(oe||Be||D===1||!pPs(u))&&(Y.objectFlags|=4,Y.typeParameters=Nn(oe,Be),Y.outerTypeParameters=oe,Y.localTypeParameters=Be,Y.instantiations=new Map,Y.instantiations.set(ew(Y.typeParameters),Y),Y.target=Y,Y.resolvedTypeArguments=Y.typeParameters,Y.thisType=Jy(u),Y.thisType.isThisType=!0,Y.thisType.constraint=Y)}return m.declaredType}function Ufn(u){var m;let v=fa(u);if(!v.declaredType){if(!YN(u,2))return nn;let D=pe.checkDefined((m=u.declarations)==null?void 0:m.find(Bne),"Type alias symbol with no valid declaration found"),W=lS(D)?D.typeExpression:D.type,Y=W?tl(W):nn;if(xr()){let oe=Kg(u);oe&&(v.typeParameters=oe,v.instantiations=new Map,v.instantiations.set(ew(oe),Y)),Y===Ht&&u.escapedName==="BuiltinIteratorReturn"&&(Y=vUt())}else Y=nn,D.kind===341?Br(D.typeExpression.type,Z.Type_alias_0_circularly_references_itself,xl(u)):Br(sh(D)&&D.name||D,Z.Type_alias_0_circularly_references_itself,xl(u));v.declaredType??(v.declaredType=Y)}return v.declaredType}function got(u){return u.flags&1056&&u.symbol.flags&8?Lp(nC(u.symbol)):u}function Kfn(u){let m=fa(u);if(!m.declaredType){let v=[];if(u.declarations){for(let W of u.declarations)if(W.kind===267){for(let Y of W.members)if(Hse(Y)){let oe=Uo(Y),Be=UK(Y).value,Me=Yq(Be!==void 0?Z5s(Be,xg(u),oe):jfn(oe));fa(oe).declaredType=Me,v.push(Cy(Me))}}}let D=v.length?Ha(v,1,u,void 0):jfn(u);D.flags&1048576&&(D.flags|=1024,D.symbol=u),m.declaredType=D}return m.declaredType}function jfn(u){let m=Pc(32,u),v=Pc(32,u);return m.regularType=m,m.freshType=v,v.regularType=m,v.freshType=v,m}function zfn(u){let m=fa(u);if(!m.declaredType){let v=Kfn(nC(u));m.declaredType||(m.declaredType=v)}return m.declaredType}function V5(u){let m=fa(u);return m.declaredType||(m.declaredType=Jy(u))}function fPs(u){let m=fa(u);return m.declaredType||(m.declaredType=Lp(JC(u)))}function Lp(u){return qfn(u)||nn}function qfn(u){if(u.flags&96)return kv(u);if(u.flags&524288)return Ufn(u);if(u.flags&262144)return V5(u);if(u.flags&384)return Kfn(u);if(u.flags&8)return zfn(u);if(u.flags&2097152)return fPs(u)}function LOe(u){switch(u.kind){case 133:case 159:case 154:case 150:case 163:case 136:case 155:case 151:case 116:case 157:case 146:case 202:return!0;case 189:return LOe(u.elementType);case 184:return!u.typeArguments||u.typeArguments.every(LOe)}return!1}function IPs(u){let m=A3(u);return!m||LOe(m)}function $fn(u){let m=Zh(u);return m?LOe(m):!XT(u)}function hPs(u){let m=Zb(u),v=MD(u);return(u.kind===177||!!m&&LOe(m))&&u.parameters.every($fn)&&v.every(IPs)}function mPs(u){if(u.declarations&&u.declarations.length===1){let m=u.declarations[0];if(m)switch(m.kind){case 173:case 172:return $fn(m);case 175:case 174:case 177:case 178:case 179:return hPs(m)}}return!1}function eIn(u,m,v){let D=$u();for(let W of u)D.set(W.escapedName,v&&mPs(W)?W:KUt(W,m));return D}function tIn(u,m){for(let v of m){if(rIn(v))continue;let D=u.get(v.escapedName);(!D||D.valueDeclaration&&po(D.valueDeclaration)&&!rG(D)&&!wZe(D.valueDeclaration))&&(u.set(v.escapedName,v),u.set(v.escapedName,v))}}function rIn(u){return!!u.valueDeclaration&&hC(u.valueDeclaration)&&lg(u.valueDeclaration)}function zJt(u){if(!u.declaredProperties){let m=u.symbol,v=_k(m);u.declaredProperties=Uy(v),u.declaredCallSignatures=E,u.declaredConstructSignatures=E,u.declaredIndexInfos=E,u.declaredCallSignatures=zQ(v.get("__call")),u.declaredConstructSignatures=zQ(v.get("__new")),u.declaredIndexInfos=FIn(m)}return u}function qJt(u){return iIn(u)&&f2(Un(u)?nT(u):DI(u.argumentExpression))}function nIn(u){return iIn(u)&&CPs(Un(u)?nT(u):DI(u.argumentExpression))}function iIn(u){if(!Un(u)&&!Qg(u))return!1;let m=Un(u)?u.expression:u.argumentExpression;return Hd(m)}function CPs(u){return pg(u,mc)}function Z2e(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)===64}function Mse(u){let m=fl(u);return!!m&&qJt(m)}function sIn(u){let m=fl(u);return!!m&&nIn(m)}function Hse(u){return!qD(u)||Mse(u)}function oIn(u){return _Ae(u)&&!qJt(u)}function _Ps(u,m,v){pe.assert(!!(aI(u)&4096),"Expected a late-bound symbol."),u.flags|=v,fa(m.symbol).lateSymbol=u,u.declarations?m.symbol.isReplaceableByMethod||u.declarations.push(m):u.declarations=[m],v&111551&&W7(u,m)}function aIn(u,m,v,D){pe.assert(!!D.symbol,"The member is expected to have a symbol.");let W=sa(D);if(!W.resolvedSymbol){W.resolvedSymbol=D.symbol;let Y=po(D)?D.left:D.name,oe=Qg(Y)?DI(Y.argumentExpression):nT(Y);if(f2(oe)){let Be=I2(oe),Me=D.symbol.flags,He=v.get(Be);He||v.set(Be,He=dA(0,Be,4096));let $e=m&&m.get(Be);if(!(u.flags&32)&&He.flags&aK(Me)){let Vt=$e?Nn($e.declarations,He.declarations):He.declarations,kt=!(oe.flags&8192)&&Bc(Be)||Md(Y);F(Vt,wr=>Br(fl(wr)||wr,Z.Property_0_was_also_declared_here,kt)),Br(Y||D,Z.Duplicate_property_0,kt),He=dA(0,Be,4096)}return He.links.nameType=oe,_Ps(He,D,Me),He.parent?pe.assert(He.parent===u,"Existing symbol parent should match new one"):He.parent=u,W.resolvedSymbol=He}}return W.resolvedSymbol}function yPs(u,m,v,D){let W=v.get("__index");if(!W){let Y=m?.get("__index");Y?(W=VQ(Y),W.links.checkFlags|=4096):W=dA(0,"__index",4096),v.set("__index",W)}W.declarations?D.symbol.isReplaceableByMethod||W.declarations.push(D):W.declarations=[D]}function $Jt(u,m){let v=fa(u);if(!v[m]){let D=m==="resolvedExports",W=D?u.flags&1536?CK(u).exports:u.exports:u.members;v[m]=W||Ee;let Y=$u();for(let Me of u.declarations||E){let He=eAe(Me);if(He)for(let $e of He)D===tm($e)&&(Mse($e)?aIn(u,W,Y,$e):sIn($e)&&yPs(u,W,Y,$e))}let oe=x5(u).assignmentDeclarationMembers;if(oe){let Me=Do(oe.values());for(let He of Me){let $e=oI(He),Vt=$e===3||po(He)&&dat(He,$e)||$e===9||$e===6;D===!Vt&&Mse(He)&&aIn(u,W,Y,He)}}let Be=C9(W,Y);if(u.flags&33554432&&v.cjsExportMerged&&u.declarations)for(let Me of u.declarations){let He=fa(Me.symbol)[m];if(!Be){Be=He;continue}He&&He.forEach(($e,Vt)=>{let kt=Be.get(Vt);if(!kt)Be.set(Vt,$e);else{if(kt===$e)return;Be.set(Vt,Tv(kt,$e))}})}v[m]=Be||Ee}return v[m]}function _k(u){return u.flags&6256?$Jt(u,"resolvedMembers"):u.members||Ee}function Aot(u){if(u.flags&106500&&u.escapedName==="__computed"){let m=fa(u);if(!m.lateSymbol&&zt(u.declarations,Mse)){let v=qA(u.parent);zt(u.declarations,tm)?N1(v):_k(v)}return m.lateSymbol||(m.lateSymbol=u)}return u}function k1(u,m,v){if(la(u)&4){let D=u.target,W=gf(u);return B(D.typeParameters)===B(W)?gZ(D,Nn(W,[m||D.thisType])):u}else if(u.flags&2097152){let D=Er(u.types,W=>k1(W,m,v));return D!==u.types?jg(D):u}return v?my(u):u}function cIn(u,m,v,D){let W,Y,oe,Be,Me;gc(v,D,0,v.length)?(Y=m.symbol?_k(m.symbol):$u(m.declaredProperties),oe=m.declaredCallSignatures,Be=m.declaredConstructSignatures,Me=m.declaredIndexInfos):(W=G1(v,D),Y=eIn(m.declaredProperties,W,v.length===1),oe=xot(m.declaredCallSignatures,W),Be=xot(m.declaredConstructSignatures,W),Me=Whn(m.declaredIndexInfos,W));let He=tT(m);if(He.length){if(m.symbol&&Y===_k(m.symbol)){let Vt=$u(m.declaredProperties),kt=hot(m.symbol);kt&&Vt.set("__index",kt),Y=Vt}zB(u,Y,oe,Be,Me);let $e=li(D);for(let Vt of He){let kt=$e?k1(Cl(Vt,W),$e):Vt;tIn(Y,Zd(kt)),oe=Nn(oe,rg(kt,0)),Be=Nn(Be,rg(kt,1));let wr=kt!==hr?f0(kt):[el];Me=Nn(Me,Le(wr,dn=>!efe(Me,dn.keyType)))}}zB(u,Y,oe,Be,Me)}function bPs(u){cIn(u,zJt(u),E,E)}function EPs(u){let m=zJt(u.target),v=Nn(m.typeParameters,[m.thisType]),D=gf(u),W=D.length===v.length?D:Nn(D,[u]);cIn(u,m,v,W)}function QN(u,m,v,D,W,Y,oe,Be){let Me=new R(ks,Be);return Me.declaration=u,Me.typeParameters=m,Me.parameters=D,Me.thisParameter=v,Me.resolvedReturnType=W,Me.resolvedTypePredicate=Y,Me.minArgumentCount=oe,Me.resolvedMinArgumentCount=void 0,Me.target=void 0,Me.mapper=void 0,Me.compositeSignatures=void 0,Me.compositeKind=void 0,Me}function L2e(u){let m=QN(u.declaration,u.typeParameters,u.thisParameter,u.parameters,void 0,void 0,u.minArgumentCount,u.flags&167);return m.target=u.target,m.mapper=u.mapper,m.compositeSignatures=u.compositeSignatures,m.compositeKind=u.compositeKind,m}function lIn(u,m){let v=L2e(u);return v.compositeSignatures=m,v.compositeKind=1048576,v.target=void 0,v.mapper=void 0,v}function SPs(u,m){if((u.flags&24)===m)return u;u.optionalCallSignatureCache||(u.optionalCallSignatureCache={});let v=m===8?"inner":"outer";return u.optionalCallSignatureCache[v]||(u.optionalCallSignatureCache[v]=vPs(u,m))}function vPs(u,m){pe.assert(m===8||m===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");let v=L2e(u);return v.flags|=m,v}function uIn(u,m){if(G0(u)){let W=u.parameters.length-1,Y=u.parameters[W],oe=fo(Y);if(EA(oe))return[v(oe,W,Y)];if(!m&&oe.flags&1048576&&ue(oe.types,EA))return lt(oe.types,Be=>v(Be,W,Y))}return[u.parameters];function v(W,Y,oe){let Be=gf(W),Me=D(W,oe),He=lt(Be,($e,Vt)=>{let kt=Me&&Me[Vt]?Me[Vt]:pfe(u,Y+Vt,W),wr=W.target.elementFlags[Vt],dn=wr&12?32768:wr&2?16384:0,Sn=dA(1,kt,dn);return Sn.links.type=wr&4?I0($e):$e,Sn});return Nn(u.parameters.slice(0,Y),He)}function D(W,Y){let oe=lt(W.target.labeledElementDeclarations,(Be,Me)=>T8t(Be,Me,W.target.elementFlags[Me],Y));if(oe){let Be=[],Me=new Set;for(let $e=0;$e=Vt&&Me<=kt){let wr=kt?Iot($e,k9(Be,$e.typeParameters,Vt,oe)):L2e($e);wr.typeParameters=u.localTypeParameters,wr.resolvedReturnType=u,wr.flags=W?wr.flags|4:wr.flags&-5,He.push(wr)}}return He}function dot(u,m,v,D,W){for(let Y of u)if(aPe(Y,m,v,D,W,v?$5s:j2e))return Y}function wPs(u,m,v){if(m.typeParameters){if(v>0)return;for(let W=1;W1&&(v=v===void 0?D:-1);for(let W of u[D])if(!m||!dot(m,W,!1,!1,!0)){let Y=wPs(u,W,D);if(Y){let oe=W;if(Y.length>1){let Be=W.thisParameter,Me=F(Y,He=>He.thisParameter);if(Me){let He=jg(Xt(Y,$e=>$e.thisParameter&&fo($e.thisParameter)));Be=VK(Me,He)}oe=lIn(W,Y),oe.thisParameter=Be}(m||(m=[])).push(oe)}}}if(!B(m)&&v!==-1){let D=u[v!==void 0?v:0],W=D.slice();for(let Y of u)if(Y!==D){let oe=Y[0];if(pe.assert(!!oe,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),W=oe.typeParameters&&zt(W,Be=>!!Be.typeParameters&&!gIn(oe.typeParameters,Be.typeParameters))?void 0:lt(W,Be=>NPs(Be,oe)),!W)break}m=W}return m||E}function gIn(u,m){if(B(u)!==B(m))return!1;if(!u||!m)return!0;let v=G1(m,u);for(let D=0;D=W?u:m,oe=Y===u?m:u,Be=Y===u?D:W,Me=vk(u)||vk(m),He=Me&&!vk(Y),$e=new Array(Be+(He?1:0));for(let Vt=0;Vt=BR(Y)&&Vt>=BR(oe),Yi=Vt>=D?void 0:pfe(u,Vt),js=Vt>=W?void 0:pfe(m,Vt),mo=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=dA(1|(ii&&!Sn?16777216:0),mo||`arg${Vt}`,Sn?32768:ii?16384:0);Ji.links.type=Sn?I0(dn):dn,$e[Vt]=Ji}if(He){let Vt=dA(1,"args",32768);Vt.links.type=I0(vR(oe,Be)),oe===m&&(Vt.links.type=Cl(Vt.links.type,v)),$e[Be]=Vt}return $e}function NPs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=G1(m.typeParameters,u.typeParameters));let W=(u.flags|m.flags)&166,Y=u.declaration,oe=RPs(u,m,D),Be=li(oe);Be&&aI(Be)&32768&&(W|=1);let Me=TPs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),$e=QN(Y,v,Me,oe,void 0,void 0,He,W);return $e.compositeKind=1048576,$e.compositeSignatures=Nn(u.compositeKind!==2097152&&u.compositeSignatures||[u],[m]),D?$e.mapper=u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures?Y5(u.mapper,D):D:u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures&&($e.mapper=u.mapper),$e}function AIn(u){let m=f0(u[0]);if(m){let v=[];for(let D of m){let W=D.keyType;ue(u,Y=>!!sG(Y,W))&&v.push(oG(W,Ha(lt(u,Y=>O5(Y,W))),zt(u,Y=>sG(Y,W).isReadonly)))}return v}return E}function DPs(u){let m=eUt(lt(u.types,W=>W===Js?[Za]:rg(W,0))),v=eUt(lt(u.types,W=>rg(W,1))),D=AIn(u.types);zB(u,Ee,m,v,D)}function VOe(u,m){return u?m?jg([u,m]):u:m}function dIn(u){let m=ze(u,D=>rg(D,1).length>0),v=lt(u,C_);if(m>0&&m===ze(v,D=>D)){let D=v.indexOf(!0);v[D]=!1}return v}function kPs(u,m,v,D){let W=[];for(let Y=0;YBe);for(let Be=0;Be0&&(He=lt(He,$e=>{let Vt=L2e($e);return Vt.resolvedReturnType=kPs(Ad($e),W,Y,Be),Vt})),v=pIn(v,He)}m=pIn(m,rg(Me,0)),D=Kl(f0(Me),(He,$e)=>fIn(He,$e,!1),D)}zB(u,Ee,m||E,v||E,D||E)}function pIn(u,m){for(let v of m)(!u||ue(u,D=>!aPe(D,v,!1,!1,!1,j2e)))&&(u=Ft(u,v));return u}function fIn(u,m,v){if(u)for(let D=0;D{var Me;!(Be.flags&418)&&!(Be.flags&512&&((Me=Be.declarations)!=null&&Me.length)&&ue(Be.declarations,c_))&&oe.set(Be.escapedName,Be)}),v=oe}let W;if(zB(u,v,E,E,E),m.flags&32){let oe=kv(m),Be=uZ(oe);Be.flags&11272192?(v=$u(Dq(v)),tIn(v,Zd(Be))):Be===hr&&(W=el)}let Y=mot(v);if(Y?D=Cot(Y,Do(v.values())):(W&&(D=Ft(D,W)),m.flags&384&&(Lp(m).flags&32||zt(u.properties,oe=>!!(fo(oe).flags&296)))&&(D=Ft(D,Uc))),zB(u,v,E,E,D||E),m.flags&8208&&(u.callSignatures=zQ(m)),m.flags&32){let oe=kv(m),Be=m.members?zQ(m.members.get("__constructor")):E;m.flags&16&&(Be=Pr(Be.slice(),Xt(u.callSignatures,Me=>jN(Me.declaration)?QN(Me.declaration,Me.typeParameters,Me.thisParameter,Me.parameters,oe,void 0,Me.minArgumentCount,Me.flags&167):void 0))),Be.length||(Be=BPs(oe)),u.constructSignatures=Be}}function FPs(u,m,v){return Cl(u,G1([m.indexType,m.objectType],[yR(0),Ek([v])]))}function ZPs(u){let m=vS(u.mappedType);if(!(m.flags&1048576||m.flags&2097152))return;let v=m.flags&1048576?m.origin:m;if(!v||!(v.flags&2097152))return;let D=jg(v.types.filter(W=>W!==u.constraintType));return D!==Oi?D:void 0}function LPs(u){let m=sG(u.source,$r),v=yk(u.mappedType),D=!(v&1),W=v&4?0:16777216,Y=m?[oG($r,eat(m.type,u.mappedType,u.constraintType)||cn,D&&m.isReadonly)]:E,oe=$u(),Be=ZPs(u);for(let Me of Zd(u.source)){if(Be){let Vt=Pq(Me,8576);if(!pg(Vt,Be))continue}let He=8192|(D&&wR(Me)?8:0),$e=dA(4|Me.flags&W,Me.escapedName,He);if($e.declarations=Me.declarations,$e.links.nameType=fa(Me).nameType,$e.links.propertyType=fo(Me),u.constraintType.type.flags&8388608&&u.constraintType.type.objectType.flags&262144&&u.constraintType.type.indexType.flags&262144){let Vt=u.constraintType.type.objectType,kt=FPs(u.mappedType,u.constraintType.type,Vt);$e.links.mappedType=kt,$e.links.constraintType=JN(Vt)}else $e.links.mappedType=u.mappedType,$e.links.constraintType=u.constraintType;oe.set(Me.escapedName,$e)}zB(u,oe,E,E,Y)}function WOe(u){if(u.flags&4194304){let m=my(u.type);return BO(m)?uhn(m):JN(m)}if(u.flags&16777216){if(u.root.isDistributive){let m=u.checkType,v=WOe(m);if(v!==m)return zUt(u,FK(u.root.checkType,v,u.mapper),!1)}return u}if(u.flags&1048576)return Xf(u,WOe,!0);if(u.flags&2097152){let m=u.types;return m.length===2&&m[0].flags&76&&m[1]===Eg?u:jg(Er(u.types,WOe))}return u}function tUt(u){return aI(u)&4096}function rUt(u,m,v,D){for(let W of Zd(u))D(Pq(W,m));if(u.flags&1)D($r);else for(let W of f0(u))(!v||W.keyType.flags&134217732)&&D(W.keyType)}function VPs(u){let m=$u(),v;zB(u,Ee,E,E,E);let D=rT(u),W=vS(u),Y=u.target||u,oe=N9(Y),Be=V2e(Y)!==2,Me=iG(Y),He=my(W5(u)),$e=yk(u);Yse(u)?rUt(He,8576,!1,kt):MK(WOe(W),kt),zB(u,m,E,E,v||E);function kt(dn){let Sn=oe?Cl(oe,J2e(u.mapper,D,dn)):dn;MK(Sn,ii=>wr(dn,ii))}function wr(dn,Sn){if(f2(Sn)){let ii=I2(Sn),Yi=m.get(ii);if(Yi)Yi.links.nameType=Ha([Yi.links.nameType,Sn]),Yi.links.keyType=Ha([Yi.links.keyType,dn]);else{let js=f2(dn)?Fg(He,I2(dn)):void 0,mo=!!($e&4||!($e&8)&&js&&js.flags&16777216),Ji=!!($e&1||!($e&2)&&js&&wR(js)),Mi=at&&!mo&&js&&js.flags&16777216,wo=js?tUt(js):0,Ka=dA(4|(mo?16777216:0),ii,wo|262144|(Ji?8:0)|(Mi?524288:0));Ka.links.mappedType=u,Ka.links.nameType=Sn,Ka.links.keyType=dn,js&&(Ka.links.syntheticOrigin=js,Ka.declarations=Be?js.declarations:void 0),m.set(ii,Ka)}}else if(_ot(Sn)||Sn.flags&33){let ii=Sn.flags&5?$r:Sn.flags&40?ri:Sn,Yi=Cl(Me,J2e(u.mapper,D,dn)),js=W2e(He,Sn),mo=!!($e&1||!($e&2)&&js?.isReadonly),Ji=oG(ii,Yi,mo);v=fIn(v,Ji,!0)}}}function WPs(u){var m;if(!u.links.type){let v=u.links.mappedType;if(!YN(u,0))return v.containsError=!0,nn;let D=iG(v.target||v),W=J2e(v.mapper,rT(v),u.links.keyType),Y=Cl(D,W),oe=at&&u.flags&16777216&&!uh(Y,49152)?wO(Y,!0):u.links.checkFlags&524288?Kot(Y):Y;xr()||(Br(ge,Z.Type_of_property_0_circularly_references_itself_in_mapped_type_1,xl(u),ro(v)),oe=nn),(m=u.links).type??(m.type=oe)}return u.links.type}function rT(u){return u.typeParameter||(u.typeParameter=V5(Uo(u.declaration.typeParameter)))}function vS(u){return u.constraintType||(u.constraintType=Ky(rT(u))||nn)}function N9(u){return u.declaration.nameType?u.nameType||(u.nameType=Cl(tl(u.declaration.nameType),u.mapper)):void 0}function iG(u){return u.templateType||(u.templateType=u.declaration.type?Cl(W0(tl(u.declaration.type),!0,!!(yk(u)&4)),u.mapper):nn)}function IIn(u){return A3(u.declaration.typeParameter)}function Yse(u){let m=IIn(u);return m.kind===199&&m.operator===143}function W5(u){if(!u.modifiersType)if(Yse(u))u.modifiersType=Cl(tl(IIn(u).type),u.mapper);else{let m=WUt(u.declaration),v=vS(m),D=v&&v.flags&262144?Ky(v):v;u.modifiersType=D&&D.flags&4194304?Cl(D.type,u.mapper):cn}return u.modifiersType}function yk(u){let m=u.declaration;return(m.readonlyToken?m.readonlyToken.kind===41?2:1:0)|(m.questionToken?m.questionToken.kind===41?8:4:0)}function hIn(u){let m=yk(u);return m&8?-1:m&4?1:0}function qpe(u){if(la(u)&32)return hIn(u)||qpe(W5(u));if(u.flags&2097152){let m=qpe(u.types[0]);return ue(u.types,(v,D)=>D===0||qpe(v)===m)?m:0}return 0}function OPs(u){return!!(la(u)&32&&yk(u)&4)}function Jb(u){if(la(u)&32){let m=vS(u);if(GK(m))return!0;let v=N9(u);if(v&&GK(Cl(v,tX(rT(u),m))))return!0}return!1}function V2e(u){let m=N9(u);return m?pg(m,rT(u))?1:2:0}function _R(u){return u.members||(u.flags&524288?u.objectFlags&4?EPs(u):u.objectFlags&3?bPs(u):u.objectFlags&1024?LPs(u):u.objectFlags&16?GPs(u):u.objectFlags&32?VPs(u):pe.fail("Unhandled object type "+pe.formatObjectFlags(u.objectFlags)):u.flags&1048576?DPs(u):u.flags&2097152?xPs(u):pe.fail("Unhandled type "+pe.formatTypeFlags(u.flags))),u}function D9(u){return u.flags&524288?_R(u).properties:E}function KQ(u,m){if(u.flags&524288){let D=_R(u).members.get(m);if(D&&qi(D))return D}}function OOe(u){if(!u.resolvedProperties){let m=$u();for(let v of u.types){for(let D of Zd(v))if(!m.has(D.escapedName)){let W=MOe(u,D.escapedName,!!(u.flags&2097152));W&&m.set(D.escapedName,W)}if(u.flags&1048576&&f0(v).length===0)break}u.resolvedProperties=Uy(m)}return u.resolvedProperties}function Zd(u){return u=$pe(u),u.flags&3145728?OOe(u):D9(u)}function PPs(u,m){u=$pe(u),u.flags&3670016&&_R(u).members.forEach((v,D)=>{IO(v,D)&&m(v,D)})}function MPs(u,m){return m.properties.some(D=>{let W=D.name&&(oR(D.name)?kE(Ww(D.name)):AZ(D.name)),Y=W&&f2(W)?I2(W):void 0,oe=Y===void 0?void 0:Wi(u,Y);return!!oe&&$2e(oe)&&!pg($q(D),oe)})}function HPs(u){let m=Ha(u);if(!(m.flags&1048576))return g6t(m);let v=$u();for(let D of u)for(let{escapedName:W}of g6t(D))if(!v.has(W)){let Y=SIn(m,W);Y&&v.set(W,Y)}return Do(v.values())}function wK(u){return u.flags&262144?Ky(u):u.flags&8388608?QPs(u):u.flags&16777216?_In(u):O_(u)}function Ky(u){return POe(u)?rfe(u):void 0}function YPs(u,m){let v=U2e(u);return!!v&&TK(v,m)}function TK(u,m=0){var v;return m<5&&!!(u&&(u.flags&262144&&zt((v=u.symbol)==null?void 0:v.declarations,D=>Ga(D,4096))||u.flags&3145728&&zt(u.types,D=>TK(D,m))||u.flags&8388608&&TK(u.objectType,m+1)||u.flags&16777216&&TK(_In(u),m+1)||u.flags&33554432&&TK(u.baseType,m)||la(u)&32&&YPs(u,m)||BO(u)&&Se(qQ(u),(D,W)=>!!(u.target.elementFlags[W]&8)&&TK(D,m))>=0))}function QPs(u){return POe(u)?XPs(u):void 0}function nUt(u){let m=dZ(u,!1);return m!==u?m:wK(u)}function XPs(u){if(aUt(u))return Rot(u.objectType,u.indexType);let m=nUt(u.indexType);if(m&&m!==u.indexType){let D=EO(u.objectType,m,u.accessFlags);if(D)return D}let v=nUt(u.objectType);if(v&&v!==u.objectType)return EO(v,u.indexType,u.accessFlags)}function iUt(u){if(!u.resolvedDefaultConstraint){let m=D5s(u),v=vO(u);u.resolvedDefaultConstraint=Xo(m)?v:Xo(v)?m:Ha([m,v])}return u.resolvedDefaultConstraint}function mIn(u){if(u.resolvedConstraintOfDistributive!==void 0)return u.resolvedConstraintOfDistributive||void 0;if(u.root.isDistributive&&u.restrictiveInstantiation!==u){let m=dZ(u.checkType,!1),v=m===u.checkType?wK(m):m;if(v&&v!==u.checkType){let D=zUt(u,FK(u.root.checkType,v,u.mapper),!0);if(!(D.flags&131072))return u.resolvedConstraintOfDistributive=D,D}}u.resolvedConstraintOfDistributive=!1}function CIn(u){return mIn(u)||iUt(u)}function _In(u){return POe(u)?CIn(u):void 0}function JPs(u,m){let v,D=!1;for(let W of u)if(W.flags&465829888){let Y=wK(W);for(;Y&&Y.flags&21233664;)Y=wK(Y);Y&&(v=Ft(v,Y),m&&(v=Ft(v,W)))}else(W.flags&469892092||Sk(W))&&(D=!0);if(v&&(m||D)){if(D)for(let W of u)(W.flags&469892092||Sk(W))&&(v=Ft(v,W));return iPe(jg(v,2),!1)}}function O_(u){if(u.flags&464781312||BO(u)){let m=sUt(u);return m!==JI&&m!==Wh?m:void 0}return u.flags&4194304?mc:void 0}function XN(u){return O_(u)||u}function POe(u){return sUt(u)!==Wh}function sUt(u){if(u.resolvedBaseConstraint)return u.resolvedBaseConstraint;let m=[];return u.resolvedBaseConstraint=v(u);function v(Y){if(!Y.immediateBaseConstraint){if(!YN(Y,4))return Wh;let oe,Be=Hot(Y);if((m.length<10||m.length<50&&!k(m,Be))&&(m.push(Be),oe=W(dZ(Y,!1)),m.pop()),!xr()){if(Y.flags&262144){let Me=yot(Y);if(Me){let He=Br(Me,Z.Type_parameter_0_has_a_circular_constraint,ro(Y));ge&&!kW(Me,ge)&&!kW(ge,Me)&&ug(He,ho(ge,Z.Circularity_originates_in_type_at_this_location))}}oe=Wh}Y.immediateBaseConstraint??(Y.immediateBaseConstraint=oe||JI)}return Y.immediateBaseConstraint}function D(Y){let oe=v(Y);return oe!==JI&&oe!==Wh?oe:void 0}function W(Y){if(Y.flags&262144){let oe=rfe(Y);return Y.isThisType||!oe?oe:D(oe)}if(Y.flags&3145728){let oe=Y.types,Be=[],Me=!1;for(let He of oe){let $e=D(He);$e?($e!==He&&(Me=!0),Be.push($e)):Me=!0}return Me?Y.flags&1048576&&Be.length===oe.length?Ha(Be):Y.flags&2097152&&Be.length?jg(Be):void 0:Y}if(Y.flags&4194304)return mc;if(Y.flags&134217728){let oe=Y.types,Be=Xt(oe,D);return Be.length===oe.length?DK(Y.texts,Be):$r}if(Y.flags&268435456){let oe=D(Y.type);return oe&&oe!==Y.type?Mq(Y.symbol,oe):$r}if(Y.flags&8388608){if(aUt(Y))return D(Rot(Y.objectType,Y.indexType));let oe=D(Y.objectType),Be=D(Y.indexType),Me=oe&&Be&&EO(oe,Be,Y.accessFlags);return Me&&D(Me)}if(Y.flags&16777216){let oe=CIn(Y);return oe&&D(oe)}if(Y.flags&33554432)return D(_Ut(Y));if(BO(Y)){let oe=lt(qQ(Y),(Be,Me)=>{let He=Be.flags&262144&&Y.target.elementFlags[Me]&8&&D(Be)||Be;return He!==Be&&xE(He,$e=>X5($e)&&!BO($e))?He:Be});return Ek(oe,Y.target.elementFlags,Y.target.readonly,Y.target.labeledElementDeclarations)}return Y}}function UPs(u,m){if(u===m)return u.resolvedApparentType||(u.resolvedApparentType=k1(u,m,!0));let v=`I${UC(u)},${UC(m)}`;return Xy(v)??KB(v,k1(u,m,!0))}function oUt(u){if(u.default)u.default===HC&&(u.default=Wh);else if(u.target){let m=oUt(u.target);u.default=m?Cl(m,u.mapper):JI}else{u.default=HC;let m=u.symbol&&F(u.symbol.declarations,D=>Ds(D)&&D.default),v=m?tl(m):JI;u.default===HC&&(u.default=v)}return u.default}function jQ(u){let m=oUt(u);return m!==JI&&m!==Wh?m:void 0}function KPs(u){return oUt(u)!==Wh}function yIn(u){return!!(u.symbol&&F(u.symbol.declarations,m=>Ds(m)&&m.default))}function bIn(u){return u.resolvedApparentType||(u.resolvedApparentType=jPs(u))}function jPs(u){let m=u.target??u,v=U2e(m);if(v&&!m.declaration.nameType){let D=W5(u),W=Jb(D)?bIn(D):O_(D);if(W&&xE(W,Y=>X5(Y)||EIn(Y)))return Cl(m,FK(v,W,u.mapper))}return u}function EIn(u){return!!(u.flags&2097152)&&ue(u.types,X5)}function aUt(u){let m;return!!(u.flags&8388608&&la(m=u.objectType)&32&&!Jb(m)&&GK(u.indexType)&&!(yk(m)&8)&&!m.declaration.nameType)}function my(u){let m=u.flags&465829888?O_(u)||cn:u,v=la(m);return v&32?bIn(m):v&4&&m!==u?k1(m,u):m.flags&2097152?UPs(m,u):m.flags&402653316?ym:m.flags&296?lf:m.flags&2112?F3s():m.flags&528?fI:m.flags&12288?$In():m.flags&67108864?Jg:m.flags&4194304?mc:m.flags&2&&!at?Jg:m}function $pe(u){return $B(my($B(u)))}function SIn(u,m,v){var D,W,Y;let oe=0,Be,Me,He,$e=u.flags&1048576,Vt,kt=4,wr=$e?0:8,dn=!1;for(let _l of u.types){let ka=my(_l);if(!(lo(ka)||ka.flags&131072)){let Kc=Fg(ka,m,v),Vu=Kc?p2(Kc):0;if(Kc){if(Kc.flags&106500&&(Vt??(Vt=$e?0:16777216),$e?Vt|=Kc.flags&16777216:Vt&=Kc.flags),!Be)Be=Kc,oe=Kc.flags&98304||4;else if(Kc!==Be){if((aoe(Kc)||Kc)===(aoe(Be)||Be)&&cKt(Be,Kc,(Vl,vf)=>Vl===vf?-1:0)===-1)dn=!!Be.parent&&!!B(Kg(Be.parent));else{Me||(Me=new Map,Me.set(xg(Be),Be));let Vl=xg(Kc);Me.has(Vl)||Me.set(Vl,Kc)}oe&98304&&(Kc.flags&98304)!==(oe&98304)&&(oe=oe&-98305|4)}$e&&wR(Kc)?wr|=8:!$e&&!wR(Kc)&&(wr&=-9),wr|=(Vu&6?0:256)|(Vu&4?512:0)|(Vu&2?1024:0)|(Vu&256?2048:0),i8t(Kc)||(kt=2)}else if($e){let dd=!Z2e(m)&&Oq(ka,m);dd?(oe=oe&-98305|4,wr|=32|(dd.isReadonly?8:0),He=Ft(He,EA(ka)?Xot(ka)||wt:dd.type)):Z9(ka)&&!(la(ka)&2097152)?(wr|=32,He=Ft(He,wt)):wr|=16}}}if(!Be||$e&&(Me||wr&48)&&wr&1536&&!(Me&&zPs(Me.values())))return;if(!Me&&!(wr&16)&&!He)if(dn){let _l=(D=Gs(Be,Tw))==null?void 0:D.links,ka=VK(Be,_l?.type);return ka.parent=(Y=(W=Be.valueDeclaration)==null?void 0:W.symbol)==null?void 0:Y.parent,ka.links.containingType=u,ka.links.mapper=_l?.mapper,ka.links.writeType=R9(Be),ka}else return Be;let Sn=Me?Do(Me.values()):[Be],ii,Yi,js,mo=[],Ji,Mi,wo=!1;for(let _l of Sn){Mi?_l.valueDeclaration&&_l.valueDeclaration!==Mi&&(wo=!0):Mi=_l.valueDeclaration,ii=Pr(ii,_l.declarations);let ka=fo(_l);Yi||(Yi=ka,js=fa(_l).nameType);let Kc=R9(_l);(Ji||Kc!==ka)&&(Ji=Ft(Ji||mo.slice(),Kc)),ka!==Yi&&(wr|=64),($2e(ka)||kK(ka))&&(wr|=128),ka.flags&131072&&ka!==Ip&&(wr|=131072),mo.push(ka)}Pr(mo,He);let Ka=dA(oe|(Vt??0),m,kt|wr);return Ka.links.containingType=u,!wo&&Mi&&(Ka.valueDeclaration=Mi,Mi.symbol.parent&&(Ka.parent=Mi.symbol.parent)),Ka.declarations=ii,Ka.links.nameType=js,mo.length>2?(Ka.links.checkFlags|=65536,Ka.links.deferralParent=u,Ka.links.deferralConstituents=mo,Ka.links.deferralWriteConstituents=Ji):(Ka.links.type=$e?Ha(mo):jg(mo),Ji&&(Ka.links.writeType=$e?Ha(Ji):jg(Ji))),Ka}function vIn(u,m,v){var D,W,Y;let oe=v?(D=u.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:D.get(m):(W=u.propertyCache)==null?void 0:W.get(m);return oe||(oe=SIn(u,m,v),oe&&((v?u.propertyCacheWithoutObjectFunctionPropertyAugment||(u.propertyCacheWithoutObjectFunctionPropertyAugment=$u()):u.propertyCache||(u.propertyCache=$u())).set(m,oe),v&&!(aI(oe)&48)&&!((Y=u.propertyCache)!=null&&Y.get(m))&&(u.propertyCache||(u.propertyCache=$u())).set(m,oe))),oe}function zPs(u){let m;for(let v of u){if(!v.declarations)return;if(!m){m=new Set(v.declarations);continue}if(m.forEach(D=>{k(v.declarations,D)||m.delete(D)}),m.size===0)return}return m}function MOe(u,m,v){let D=vIn(u,m,v);return D&&!(aI(D)&16)?D:void 0}function $B(u){return u.flags&1048576&&u.objectFlags&16777216?u.resolvedReducedType||(u.resolvedReducedType=qPs(u)):u.flags&2097152?(u.objectFlags&16777216||(u.objectFlags|=16777216|(zt(OOe(u),$Ps)?33554432:0)),u.objectFlags&33554432?Oi:u):u}function qPs(u){let m=Er(u.types,$B);if(m===u.types)return u;let v=Ha(m);return v.flags&1048576&&(v.resolvedReducedType=v),v}function $Ps(u){return BIn(u)||wIn(u)}function BIn(u){return!(u.flags&16777216)&&(aI(u)&131264)===192&&!!(fo(u).flags&131072)}function wIn(u){return!u.valueDeclaration&&!!(aI(u)&1024)}function cUt(u){return!!(u.flags&1048576&&u.objectFlags&16777216&&zt(u.types,cUt)||u.flags&2097152&&e3s(u))}function e3s(u){let m=u.uniqueLiteralFilledInstantiation||(u.uniqueLiteralFilledInstantiation=Cl(u,kl));return $B(m)!==m}function lUt(u,m){if(m.flags&2097152&&la(m)&33554432){let v=de(OOe(m),BIn);if(v)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,ro(m,void 0,536870912),xl(v));let D=de(OOe(m),wIn);if(D)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,ro(m,void 0,536870912),xl(D))}return u}function Fg(u,m,v,D){var W,Y;if(u=$pe(u),u.flags&524288){let oe=_R(u),Be=oe.members.get(m);if(Be&&!D&&((W=u.symbol)==null?void 0:W.flags)&512&&((Y=fa(u.symbol).typeOnlyExportStarMap)!=null&&Y.has(m)))return;if(Be&&qi(Be,D))return Be;if(v)return;let Me=oe===tp?Js:oe.callSignatures.length?Yl:oe.constructSignatures.length?DA:void 0;if(Me){let He=KQ(Me,m);if(He)return He}return KQ(qn,m)}if(u.flags&2097152){let oe=MOe(u,m,!0);return oe||(v?void 0:MOe(u,m,v))}if(u.flags&1048576)return MOe(u,m,v)}function HOe(u,m){if(u.flags&3670016){let v=_R(u);return m===0?v.callSignatures:v.constructSignatures}return E}function rg(u,m){let v=HOe($pe(u),m);if(m===0&&!B(v)&&u.flags&1048576){if(u.arrayFallbackSignatures)return u.arrayFallbackSignatures;let D;if(xE(u,W=>{var Y;return!!((Y=W.symbol)!=null&&Y.parent)&&t3s(W.symbol.parent)&&(D?D===W.symbol.escapedName:(D=W.symbol.escapedName,!0))})){let W=Xf(u,oe=>G9((TIn(oe.symbol.parent)?AA:kA).typeParameters[0],oe.mapper)),Y=I0(W,Lv(u,oe=>TIn(oe.symbol.parent)));return u.arrayFallbackSignatures=rg(Wi(Y,D),m)}u.arrayFallbackSignatures=v}return v}function t3s(u){return!u||!kA.symbol||!AA.symbol?!1:!!vt(u,kA.symbol)||!!vt(u,AA.symbol)}function TIn(u){return!u||!AA.symbol?!1:!!vt(u,AA.symbol)}function efe(u,m){return de(u,v=>v.keyType===m)}function uUt(u,m){let v,D,W;for(let Y of u)Y.keyType===$r?v=Y:Wq(m,Y.keyType)&&(D?(W||(W=[D])).push(Y):D=Y);return W?oG(cn,jg(lt(W,Y=>Y.type)),Kl(W,(Y,oe)=>Y&&oe.isReadonly,!0)):D||(v&&Wq(m,$r)?v:void 0)}function Wq(u,m){return pg(u,m)||m===$r&&pg(u,ri)||m===ri&&(u===yu||!!(u.flags&128)&&bN(u.value))}function gUt(u){return u.flags&3670016?_R(u).indexInfos:E}function f0(u){return gUt($pe(u))}function sG(u,m){return efe(f0(u),m)}function O5(u,m){var v;return(v=sG(u,m))==null?void 0:v.type}function AUt(u,m){return f0(u).filter(v=>Wq(m,v.keyType))}function W2e(u,m){return uUt(f0(u),m)}function Oq(u,m){return W2e(u,Z2e(m)?ci:kE(Bc(m)))}function RIn(u){var m;let v;for(let D of MD(u))v=ps(v,V5(D.symbol));return v?.length?v:ah(u)?(m=tfe(u))==null?void 0:m.typeParameters:void 0}function dUt(u){let m=[];return u.forEach((v,D)=>{F5(D)||m.push(v)}),m}function NIn(u,m){if(Xr(u))return;let v=m_(Gr,'"'+u+'"',512);return v&&m?qA(v):v}function pot(u){return jY(u)||gie(u)||Si(u)&&ade(u)}function O2e(u){if(pot(u))return!0;if(!Si(u))return!1;if(u.initializer){let v=BS(u.parent),D=u.parent.parameters.indexOf(u);return pe.assert(D>=0),D>=BR(v,3)}let m=HL(u.parent);return m?!u.type&&!u.dotDotDotToken&&u.parent.parameters.indexOf(u)>=Rat(m).length:!1}function r3s(u){return pi(u)&&!Zw(u)&&u.questionToken}function P2e(u,m,v,D){return{kind:u,parameterName:m,parameterIndex:v,type:D}}function bk(u){let m=0;if(u)for(let v=0;v=v&&Y<=W){let oe=u?u.slice():[];for(let Me=Y;Me!!oN(dn))&&!oN(u)&&!hat(u)&&(D|=32);for(let dn=He?1:0;dnMe.arguments.length&&!Yi||(W=v.length)}if((u.kind===178||u.kind===179)&&Hse(u)&&(!Be||!Y)){let dn=u.kind===178?179:178,Sn=yp(Uo(u),dn);Sn&&(Y=Vq(Sn))}oe&&oe.typeExpression&&(Y=VK(dA(1,"this"),tl(oe.typeExpression)));let Vt=s9(u)?JL(u):u,kt=Vt&&Tc(Vt)?kv(qA(Vt.parent.symbol)):void 0,wr=kt?kt.localTypeParameters:RIn(u);(Kre(u)||Bo(u)&&n3s(u,v))&&(D|=1),(sk(u)&&Ga(u,64)||Tc(u)&&Ga(u.parent,64))&&(D|=4),m.resolvedSignature=QN(u,wr,Y,v,void 0,void 0,W,D)}return m.resolvedSignature}function n3s(u,m){if(s9(u)||!pUt(u))return!1;let v=li(u.parameters),D=v?kL(v):Nx(u).filter(dS),W=J(D,oe=>oe.typeExpression&&y9e(oe.typeExpression.type)?oe.typeExpression.type:void 0),Y=dA(3,"args",32768);return W?Y.links.type=I0(tl(W.type)):(Y.links.checkFlags|=65536,Y.links.deferralParent=Oi,Y.links.deferralConstituents=[I_],Y.links.deferralWriteConstituents=[I_]),W&&m.pop(),m.push(Y),!0}function tfe(u){if(!(Bo(u)&&Gd(u)))return;let m=gv(u);return m?.typeExpression&&XK(tl(m.typeExpression))}function i3s(u,m){let v=tfe(u);if(!v)return;let D=u.parameters.indexOf(m);return m.dotDotDotToken?FPe(v,D):vR(v,D)}function s3s(u){let m=tfe(u);return m&&Ad(m)}function pUt(u){let m=sa(u);return m.containsArgumentsReference===void 0&&(m.flags&512?m.containsArgumentsReference=!0:m.containsArgumentsReference=v(u.body)),m.containsArgumentsReference;function v(D){if(!D)return!1;switch(D.kind){case 80:return D.escapedText===ot.escapedName&&RSe(D)===ot;case 173:case 175:case 178:case 179:return D.name.kind===168&&v(D.name);case 212:case 213:return v(D.expression);case 304:return v(D.initializer);default:return!nbe(D)&&!xw(D)&&!!Lu(D,v)}}}function zQ(u){if(!u||!u.declarations)return E;let m=[];for(let v=0;v0&&D.body){let W=u.declarations[v-1];if(D.parent===W.parent&&D.kind===W.kind&&D.pos===W.end)continue}if(Bo(D)&&D.jsDoc){let W=Uye(D);if(B(W)){for(let Y of W){let oe=Y.typeExpression;oe.type===void 0&&!Tc(D)&&U5(oe,hr),m.push(BS(oe))}continue}}m.push(!ZF(D)&&!g2(D)&&tfe(D)||BS(D))}}return m}function DIn(u){let m=V0(u,u);if(m){let v=DE(m);if(v)return fo(v)}return hr}function P5(u){if(u.thisParameter)return fo(u.thisParameter)}function xv(u){if(!u.resolvedTypePredicate){if(u.target){let m=xv(u.target);u.resolvedTypePredicate=m?Hhn(m,u.mapper):ni}else if(u.compositeSignatures)u.resolvedTypePredicate=o5s(u.compositeSignatures,u.compositeKind)||ni;else{let m=u.declaration&&Zb(u.declaration),v;if(!m){let D=tfe(u.declaration);D&&u!==D&&(v=xv(D))}if(m||v)u.resolvedTypePredicate=m&&BE(m)?o3s(m,u):v||ni;else if(u.declaration&&Gd(u.declaration)&&(!u.resolvedReturnType||u.resolvedReturnType.flags&16)&&GE(u)>0){let{declaration:D}=u;u.resolvedTypePredicate=ni,u.resolvedTypePredicate=XXs(D)||ni}else u.resolvedTypePredicate=ni}pe.assert(!!u.resolvedTypePredicate)}return u.resolvedTypePredicate===ni?void 0:u.resolvedTypePredicate}function o3s(u,m){let v=u.parameterName,D=u.type&&tl(u.type);return v.kind===198?P2e(u.assertsModifier?2:0,void 0,void 0,D):P2e(u.assertsModifier?3:1,v.escapedText,Se(m.parameters,W=>W.escapedName===v.escapedText),D)}function kIn(u,m,v){return m!==2097152?Ha(u,v):jg(u)}function Ad(u){if(!u.resolvedReturnType){if(!YN(u,3))return nn;let m=u.target?Cl(Ad(u.target),u.mapper):u.compositeSignatures?Cl(kIn(lt(u.compositeSignatures,Ad),u.compositeKind,2),u.mapper):Qse(u.declaration)||(af(u.declaration.body)?hr:xat(u.declaration));if(u.flags&8?m=mmn(m):u.flags&16&&(m=wO(m)),!xr()){if(u.declaration){let v=Zb(u.declaration);if(v)Br(v,Z.Return_type_annotation_circularly_references_itself);else if(Rt){let D=u.declaration,W=fl(D);W?Br(W,Z._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,Md(W)):Br(D,Z.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)}}m=hr}u.resolvedReturnType??(u.resolvedReturnType=m)}return u.resolvedReturnType}function Qse(u){if(u.kind===177)return kv(qA(u.parent.symbol));let m=Zb(u);if(s9(u)){let v=lU(u);if(v&&Tc(v.parent)&&!m)return kv(qA(v.parent.parent.symbol))}if(zY(u))return tl(u.parameters[0].type);if(m)return tl(m);if(u.kind===178&&Hse(u)){let v=Bo(u)&&sd(u);if(v)return v;let D=yp(Uo(u),179),W=Upe(D);if(W)return W}return s3s(u)}function fot(u){return u.compositeSignatures&&zt(u.compositeSignatures,fot)||!u.resolvedReturnType&&nt(u,3)>=0}function a3s(u){return xIn(u)||hr}function xIn(u){if(G0(u)){let m=fo(u.parameters[u.parameters.length-1]),v=EA(m)?Xot(m):m;return v&&O5(v,ri)}}function M2e(u,m,v,D){let W=fUt(u,k9(m,u.typeParameters,bk(u.typeParameters),v));if(D){let Y=l_n(Ad(W));if(Y){let oe=L2e(Y);oe.typeParameters=D;let Be=RK(oe);Be.mapper=W.mapper;let Me=L2e(W);return Me.resolvedReturnType=Be,Me}}return W}function fUt(u,m){let v=u.instantiations||(u.instantiations=new Map),D=ew(m),W=v.get(D);return W||v.set(D,W=Iot(u,m)),W}function Iot(u,m){return ZK(u,c3s(u,m),!0)}function GIn(u){return Er(u.typeParameters,m=>m.mapper?Cl(m,m.mapper):m)}function c3s(u,m){return G1(GIn(u),m)}function H2e(u){return u.typeParameters?u.erasedSignatureCache||(u.erasedSignatureCache=l3s(u)):u}function l3s(u){return ZK(u,Phn(u.typeParameters),!0)}function u3s(u){return u.typeParameters?u.canonicalSignatureCache||(u.canonicalSignatureCache=g3s(u)):u}function g3s(u){return M2e(u,lt(u.typeParameters,m=>m.target&&!Ky(m.target)?m.target:m),Bo(u.declaration))}function A3s(u){let m=u.typeParameters;if(m){if(u.baseSignatureCache)return u.baseSignatureCache;let v=Phn(m),D=G1(m,lt(m,Y=>Ky(Y)||cn)),W=lt(m,Y=>Cl(Y,D)||cn);for(let Y=0;Y{_ot(wr)&&!efe(v,wr)&&v.push(oG(wr,Vt.type?tl(Vt.type):hr,Lb(Vt,8),Vt))})}}else if(sIn(Vt)){let kt=po(Vt)?Vt.left:Vt.name,wr=Qg(kt)?DI(kt.argumentExpression):nT(kt);if(efe(v,wr))continue;pg(wr,mc)&&(pg(wr,ri)?(D=!0,D3(Vt)||(W=!1)):pg(wr,ci)?(Y=!0,D3(Vt)||(oe=!1)):(Be=!0,D3(Vt)||(Me=!1)),He.push(Vt.symbol))}let $e=Nn(He,Le(m,Vt=>Vt!==u));return Be&&!efe(v,$r)&&v.push(uSe(Me,0,$e,$r)),D&&!efe(v,ri)&&v.push(uSe(W,0,$e,ri)),Y&&!efe(v,ci)&&v.push(uSe(oe,0,$e,ci)),v}return E}function _ot(u){return!!(u.flags&4108)||kK(u)||!!(u.flags&2097152)&&!H5(u)&&zt(u.types,_ot)}function yot(u){return Xt(Le(u.symbol&&u.symbol.declarations,Ds),A3)[0]}function ZIn(u,m){var v;let D;if((v=u.symbol)!=null&&v.declarations){for(let W of u.symbol.declarations)if(W.parent.kind===196){let[Y=W.parent,oe]=Kye(W.parent.parent);if(oe.kind===184&&!m){let Be=oe,Me=Y8t(Be);if(Me){let He=Be.typeArguments.indexOf(Y);if(He()=>Q4s(Be,Me,dn))),kt=Cl($e,Vt);kt!==u&&(D=Ft(D,kt))}}}}else if(oe.kind===170&&oe.dotDotDotToken||oe.kind===192||oe.kind===203&&oe.dotDotDotToken)D=Ft(D,I0(cn));else if(oe.kind===205)D=Ft(D,$r);else if(oe.kind===169&&oe.parent.kind===201)D=Ft(D,mc);else if(oe.kind===201&&oe.type&&JA(oe.type)===W.parent&&oe.parent.kind===195&&oe.parent.extendsType===oe&&oe.parent.checkType.kind===201&&oe.parent.checkType.type){let Be=oe.parent.checkType,Me=tl(Be.type);D=Ft(D,Cl(Me,tX(V5(Uo(Be.typeParameter)),Be.typeParameter.constraint?tl(Be.typeParameter.constraint):mc)))}}}return D&&jg(D)}function rfe(u){if(!u.constraint)if(u.target){let m=Ky(u.target);u.constraint=m?Cl(m,u.mapper):JI}else{let m=yot(u);if(!m)u.constraint=ZIn(u)||JI;else{let v=tl(m);v.flags&1&&!lo(v)&&(v=m.parent.parent.kind===201?mc:cn),u.constraint=v}}return u.constraint===JI?void 0:u.constraint}function LIn(u){let m=yp(u.symbol,169),v=MB(m.parent)?fAe(m.parent):m.parent;return v&&ES(v)}function ew(u){let m="";if(u){let v=u.length,D=0;for(;D1&&(m+=":"+Y),D+=Y}}return m}function NK(u,m){return u?`@${xg(u)}`+(m?`:${ew(m)}`:""):""}function YOe(u,m){let v=0;for(let D of u)(m===void 0||!(D.flags&m))&&(v|=la(D));return v&458752}function Xse(u,m){return zt(m)&&u===oi?cn:gZ(u,m)}function gZ(u,m){let v=ew(m),D=u.instantiations.get(v);return D||(D=Ph(4,u.symbol),u.instantiations.set(v,D),D.objectFlags|=m?YOe(m):0,D.target=u,D.resolvedTypeArguments=m),D}function VIn(u){let m=Pc(u.flags,u.symbol);return m.objectFlags=u.objectFlags,m.target=u.target,m.resolvedTypeArguments=u.resolvedTypeArguments,m}function IUt(u,m,v,D,W){if(!D){D=Hq(m);let oe=jse(D);W=v?fZ(oe,v):oe}let Y=Ph(4,u.symbol);return Y.target=u,Y.node=m,Y.mapper=v,Y.aliasSymbol=D,Y.aliasTypeArguments=W,Y}function gf(u){var m,v;if(!u.resolvedTypeArguments){if(!YN(u,5))return Nn(u.target.outerTypeParameters,(m=u.target.localTypeParameters)==null?void 0:m.map(()=>nn))||E;let D=u.node,W=D?D.kind===184?Nn(u.target.outerTypeParameters,Wat(D,u.target.localTypeParameters)):D.kind===189?[tl(D.elementType)]:lt(D.elements,tl):E;xr()?u.resolvedTypeArguments??(u.resolvedTypeArguments=u.mapper?fZ(W,u.mapper):W):(u.resolvedTypeArguments??(u.resolvedTypeArguments=Nn(u.target.outerTypeParameters,((v=u.target.localTypeParameters)==null?void 0:v.map(()=>nn))||E)),Br(u.node||ge,u.target.symbol?Z.Type_arguments_for_0_circularly_reference_themselves:Z.Tuple_type_arguments_circularly_reference_themselves,u.target.symbol&&xl(u.target.symbol)))}return u.resolvedTypeArguments}function x9(u){return B(u.target.typeParameters)}function WIn(u,m){let v=Lp(qA(m)),D=v.localTypeParameters;if(D){let W=B(u.typeArguments),Y=bk(D),oe=Bo(u);if(!(!Rt&&oe)&&(WD.length)){let He=oe&&A_(u)&&!Lz(u.parent),$e=Y===D.length?He?Z.Expected_0_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_1_type_argument_s:He?Z.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_between_1_and_2_type_arguments,Vt=ro(v,void 0,2);if(Br(u,$e,Vt,Y,D.length),!oe)return nn}if(u.kind===184&&chn(u,B(u.typeArguments)!==D.length))return IUt(v,u,void 0);let Me=Nn(v.outerTypeParameters,k9(QOe(u),D,Y,oe));return gZ(v,Me)}return M5(u,m)?v:nn}function Jse(u,m,v,D){let W=Lp(u);if(W===Ht){let He=Uet.get(u.escapedName);if(He!==void 0&&m&&m.length===1)return He===4?hUt(m[0]):Mq(u,m[0])}let Y=fa(u),oe=Y.typeParameters,Be=ew(m)+NK(v,D),Me=Y.instantiations.get(Be);return Me||Y.instantiations.set(Be,Me=Xhn(W,G1(oe,k9(m,oe,bk(oe),Bo(u.valueDeclaration))),v,D)),Me}function d3s(u,m){if(aI(m)&1048576){let W=QOe(u),Y=NK(m,W),oe=Kr.get(Y);return oe||(oe=Vc(1,"error",void 0,`alias ${Y}`),oe.aliasSymbol=m,oe.aliasTypeArguments=W,Kr.set(Y,oe)),oe}let v=Lp(m),D=fa(m).typeParameters;if(D){let W=B(u.typeArguments),Y=bk(D);if(WD.length)return Br(u,Y===D.length?Z.Generic_type_0_requires_1_type_argument_s:Z.Generic_type_0_requires_between_1_and_2_type_arguments,xl(m),Y,D.length),nn;let oe=Hq(u),Be=oe&&(OIn(m)||!OIn(oe))?oe:void 0,Me;if(Be)Me=jse(Be);else if(_7(u)){let He=nfe(u,2097152,!0);if(He&&He!==st){let $e=JC(He);$e&&$e.flags&524288&&(Be=$e,Me=QOe(u)||(D?[]:void 0))}}return Jse(m,QOe(u),Be,Me)}return M5(u,m)?v:nn}function OIn(u){var m;let v=(m=u.declarations)==null?void 0:m.find(Bne);return!!(v&&I1(v))}function p3s(u){switch(u.kind){case 184:return u.typeName;case 234:let m=u.expression;if(Hd(m))return m}}function PIn(u){return u.parent?`${PIn(u.parent)}.${u.escapedName}`:u.escapedName}function bot(u){let v=(u.kind===167?u.right:u.kind===212?u.name:u).escapedText;if(v){let D=u.kind===167?bot(u.left):u.kind===212?bot(u.expression):void 0,W=D?`${PIn(D)}.${v}`:v,Y=Zr.get(W);return Y||(Zr.set(W,Y=dA(524288,v,1048576)),Y.parent=D,Y.links.declaredType=bn),Y}return st}function nfe(u,m,v){let D=p3s(u);if(!D)return st;let W=NI(D,m,v);return W&&W!==st?W:v?st:bot(D)}function Eot(u,m){if(m===st)return nn;if(m=Bq(m)||m,m.flags&96)return WIn(u,m);if(m.flags&524288)return d3s(u,m);let v=qfn(m);if(v)return M5(u,m)?Cy(v):nn;if(m.flags&111551&&Sot(u)){let D=f3s(u,m);return D||(nfe(u,788968),fo(m))}return nn}function f3s(u,m){let v=sa(u);if(!v.resolvedJSDocType){let D=fo(m),W=D;if(m.valueDeclaration){let Y=u.kind===206&&u.qualifier;D.symbol&&D.symbol!==m&&Y&&(W=Eot(u,D.symbol))}v.resolvedJSDocType=W}return v.resolvedJSDocType}function hUt(u){return mUt(u)?MIn(u,cn):u}function mUt(u){return!!(u.flags&3145728&&zt(u.types,mUt)||u.flags&33554432&&!Use(u)&&mUt(u.baseType)||u.flags&524288&&!Sk(u)||u.flags&432275456&&!kK(u))}function Use(u){return!!(u.flags&33554432&&u.constraint.flags&2)}function CUt(u,m){return m.flags&3||m===u||u.flags&1?u:MIn(u,m)}function MIn(u,m){let v=`${UC(u)}>${UC(m)}`,D=Rg.get(v);if(D)return D;let W=ic(33554432);return W.baseType=u,W.constraint=m,Rg.set(v,W),W}function _Ut(u){return Use(u)?u.baseType:jg([u.constraint,u.baseType])}function HIn(u){return u.kind===190&&u.elements.length===1}function YIn(u,m,v){return HIn(m)&&HIn(v)?YIn(u,m.elements[0],v.elements[0]):pZ(tl(m))===pZ(u)?tl(v):void 0}function I3s(u,m){let v,D=!0;for(;m&&!Lc(m)&&m.kind!==321;){let W=m.parent;if(W.kind===170&&(D=!D),(D||u.flags&8650752)&&W.kind===195&&m===W.trueType){let Y=YIn(u,W.checkType,W.extendsType);Y&&(v=Ft(v,Y))}else if(u.flags&262144&&W.kind===201&&!W.nameType&&m===W.type){let Y=tl(W);if(rT(Y)===pZ(u)){let oe=U2e(Y);if(oe){let Be=Ky(oe);Be&&xE(Be,X5)&&(v=Ft(v,Ha([ri,yu])))}}}m=W}return v?CUt(u,jg(v)):u}function Sot(u){return!!(u.flags&16777216)&&(u.kind===184||u.kind===206)}function M5(u,m){return u.typeArguments?(Br(u,Z.Type_0_is_not_generic,m?xl(m):u.typeName?Md(u.typeName):Yet),!1):!0}function QIn(u){if(Ir(u.typeName)){let m=u.typeArguments;switch(u.typeName.escapedText){case"String":return M5(u),$r;case"Number":return M5(u),ri;case"BigInt":return M5(u),oo;case"Boolean":return M5(u),Mn;case"Void":return M5(u),es;case"Undefined":return M5(u),wt;case"Null":return M5(u),Hn;case"Function":case"function":return M5(u),Js;case"array":return(!m||!m.length)&&!Rt?I_:void 0;case"promise":return(!m||!m.length)&&!Rt?LPe(hr):void 0;case"Object":if(m&&m.length===2){if(AAe(u)){let v=tl(m[0]),D=tl(m[1]),W=v===$r||v===ri?[oG(v,D,!1)]:E;return Qf(void 0,Ee,E,E,W)}return hr}return M5(u),Rt?void 0:hr}}}function h3s(u){let m=tl(u.type);return at?uPe(m,65536):m}function vot(u){let m=sa(u);if(!m.resolvedType){if(l2(u)&&vd(u.parent))return m.resolvedSymbol=st,m.resolvedType=DI(u.parent.expression);let v,D,W=788968;Sot(u)&&(D=QIn(u),D||(v=nfe(u,W,!0),v===st?v=nfe(u,W|111551):nfe(u,W),D=Eot(u,v))),D||(v=nfe(u,W),D=Eot(u,v)),m.resolvedSymbol=v,m.resolvedType=D}return m.resolvedType}function QOe(u){return lt(u.typeArguments,tl)}function XIn(u){let m=sa(u);if(!m.resolvedType){let v=N_n(u);m.resolvedType=Cy(F1(v))}return m.resolvedType}function JIn(u,m){function v(W){let Y=W.declarations;if(Y)for(let oe of Y)switch(oe.kind){case 264:case 265:case 267:return oe}}if(!u)return m?oi:Jg;let D=Lp(u);return D.flags&524288?B(D.typeParameters)!==m?(Br(v(u),Z.Global_type_0_must_have_1_type_parameter_s,of(u),m),m?oi:Jg):D:(Br(v(u),Z.Global_type_0_must_be_a_class_or_interface_type,of(u)),m?oi:Jg)}function yUt(u,m){return Kse(u,111551,m?Z.Cannot_find_global_value_0:void 0)}function bUt(u,m){return Kse(u,788968,m?Z.Cannot_find_global_type_0:void 0)}function Bot(u,m,v){let D=Kse(u,788968,v?Z.Cannot_find_global_type_0:void 0);if(D&&(Lp(D),B(fa(D).typeParameters)!==m)){let W=D.declarations&&de(D.declarations,PB);Br(W,Z.Global_type_0_must_have_1_type_parameter_s,of(D),m);return}return D}function Kse(u,m,v){return An(void 0,u,m,v,!1,!1)}function jI(u,m,v){let D=bUt(u,v);return D||v?JIn(D,m):void 0}function UIn(u,m){let v;for(let D of u)v=Ft(v,jI(D,m,!1));return v??E}function m3s(){return Jx||(Jx=jI("TypedPropertyDescriptor",1,!0)||oi)}function C3s(){return Jl||(Jl=jI("TemplateStringsArray",0,!0)||Jg)}function KIn(){return tg||(tg=jI("ImportMeta",0,!0)||Jg)}function jIn(){if(!zl){let u=dA(0,"ImportMetaExpression"),m=KIn(),v=dA(4,"meta",8);v.parent=u,v.links.type=m;let D=$u([v]);u.members=D,zl=Qf(u,D,E,E,E)}return zl}function zIn(u){return Su||(Su=jI("ImportCallOptions",0,u))||Jg}function EUt(u){return xf||(xf=jI("ImportAttributes",0,u))||Jg}function qIn(u){return Bv||(Bv=yUt("Symbol",u))}function _3s(u){return uk||(uk=bUt("SymbolConstructor",u))}function $In(){return Xx||(Xx=jI("Symbol",0,!1))||Jg}function XOe(u){return Mb||(Mb=jI("Promise",1,u))||oi}function ehn(u){return rC||(rC=jI("PromiseLike",1,u))||oi}function SUt(u){return AR||(AR=yUt("Promise",u))}function y3s(u){return CS||(CS=jI("PromiseConstructorLike",0,u))||Jg}function JOe(u){return wa||(wa=jI("AsyncIterable",3,u))||oi}function b3s(u){return pc||(pc=jI("AsyncIterator",3,u))||oi}function thn(u){return ll||(ll=jI("AsyncIterableIterator",3,u))||oi}function E3s(){return gr??(gr=UIn(["ReadableStreamAsyncIterator"],1))}function S3s(u){return Ln||(Ln=jI("AsyncIteratorObject",3,u))||oi}function v3s(u){return bs||(bs=jI("AsyncGenerator",3,u))||oi}function wot(u){return WN||(WN=jI("Iterable",3,u))||oi}function B3s(u){return ct||(ct=jI("Iterator",3,u))||oi}function rhn(u){return en||(en=jI("IterableIterator",3,u))||oi}function vUt(){return yt?wt:hr}function w3s(){return Fe??(Fe=UIn(["ArrayIterator","MapIterator","SetIterator","StringIterator"],1))}function T3s(u){return gi||(gi=jI("IteratorObject",3,u))||oi}function R3s(u){return _i||(_i=jI("Generator",3,u))||oi}function N3s(u){return ys||(ys=jI("IteratorYieldResult",1,u))||oi}function D3s(u){return $s||($s=jI("IteratorReturnResult",1,u))||oi}function nhn(u){return Ug||(Ug=jI("Disposable",0,u))||Jg}function k3s(u){return QC||(QC=jI("AsyncDisposable",0,u))||Jg}function ihn(u,m=0){let v=Kse(u,788968,void 0);return v&&JIn(v,m)}function x3s(){return T1||(T1=Bot("Extract",2,!0)||st),T1===st?void 0:T1}function G3s(){return _S||(_S=Bot("Omit",2,!0)||st),_S===st?void 0:_S}function BUt(u){return wv||(wv=Bot("Awaited",1,u)||(u?st:void 0)),wv===st?void 0:wv}function F3s(){return $F||($F=jI("BigInt",0,!1))||Jg}function Z3s(u){return gk??(gk=jI("ClassDecoratorContext",1,u))??oi}function L3s(u){return dR??(dR=jI("ClassMethodDecoratorContext",2,u))??oi}function V3s(u){return XB??(XB=jI("ClassGetterDecoratorContext",2,u))??oi}function W3s(u){return nO??(nO=jI("ClassSetterDecoratorContext",2,u))??oi}function O3s(u){return br??(br=jI("ClassAccessorDecoratorContext",2,u))??oi}function P3s(u){return sn??(sn=jI("ClassAccessorDecoratorTarget",2,u))??oi}function M3s(u){return ei??(ei=jI("ClassAccessorDecoratorResult",2,u))??oi}function H3s(u){return is??(is=jI("ClassFieldDecoratorContext",2,u))??oi}function Y3s(){return d9||(d9=yUt("NaN",!1))}function Q3s(){return Qy||(Qy=Bot("Record",2,!0)||st),Qy===st?void 0:Qy}function ife(u,m){return u!==oi?gZ(u,m):Jg}function shn(u){return ife(m3s(),[u])}function ohn(u){return ife(wot(!0),[u,es,wt])}function I0(u,m){return ife(m?AA:kA,[u])}function wUt(u){switch(u.kind){case 191:return 2;case 192:return ahn(u);case 203:return u.questionToken?2:u.dotDotDotToken?ahn(u):1;default:return 1}}function ahn(u){return $Oe(u.type)?4:8}function X3s(u){let m=K3s(u.parent);if($Oe(u))return m?AA:kA;let D=lt(u.elements,wUt);return TUt(D,m,lt(u.elements,J3s))}function J3s(u){return tR(u)||Si(u)?u:void 0}function chn(u,m){return!!Hq(u)||lhn(u)&&(u.kind===189?bO(u.elementType):u.kind===190?zt(u.elements,bO):m||zt(u.typeArguments,bO))}function lhn(u){let m=u.parent;switch(m.kind){case 197:case 203:case 184:case 193:case 194:case 200:case 195:case 199:case 189:case 190:return lhn(m);case 266:return!0}return!1}function bO(u){switch(u.kind){case 184:return Sot(u)||!!(nfe(u,788968).flags&524288);case 187:return!0;case 199:return u.operator!==158&&bO(u.type);case 197:case 191:case 203:case 317:case 315:case 316:case 310:return bO(u.type);case 192:return u.type.kind!==189||bO(u.type.elementType);case 193:case 194:return zt(u.types,bO);case 200:return bO(u.objectType)||bO(u.indexType);case 195:return bO(u.checkType)||bO(u.extendsType)||bO(u.trueType)||bO(u.falseType)}return!1}function U3s(u){let m=sa(u);if(!m.resolvedType){let v=X3s(u);if(v===oi)m.resolvedType=Jg;else if(!(u.kind===190&&zt(u.elements,D=>!!(wUt(D)&8)))&&chn(u))m.resolvedType=u.kind===190&&u.elements.length===0?v:IUt(v,u,void 0);else{let D=u.kind===189?[tl(u.elementType)]:lt(u.elements,tl);m.resolvedType=RUt(v,D)}}return m.resolvedType}function K3s(u){return WB(u)&&u.operator===148}function Ek(u,m,v=!1,D=[]){let W=TUt(m||lt(u,Y=>1),v,D);return W===oi?Jg:u.length?RUt(W,u):W}function TUt(u,m,v){if(u.length===1&&u[0]&4)return m?AA:kA;let D=lt(u,Y=>Y&1?"#":Y&2?"?":Y&4?".":"*").join()+(m?"R":"")+(zt(v,Y=>!!Y)?","+lt(v,Y=>Y?id(Y):"_").join(","):""),W=ba.get(D);return W||ba.set(D,W=j3s(u,m,v)),W}function j3s(u,m,v){let D=u.length,W=ze(u,Vt=>!!(Vt&9)),Y,oe=[],Be=0;if(D){Y=new Array(D);for(let Vt=0;Vt!!(u.elementFlags[ii]&8&&Sn.flags&1179648));if(dn>=0)return KOe(lt(m,(Sn,ii)=>u.elementFlags[ii]&8?Sn:cn))?Xf(m[dn],Sn=>NUt(u,Ql(m,dn,Sn))):nn}let oe=[],Be=[],Me=[],He=-1,$e=-1,Vt=-1;for(let dn=0;dn=1e4)return Br(ge,xw(ge)?Z.Type_produces_a_tuple_type_that_is_too_large_to_represent:Z.Expression_produces_a_tuple_type_that_is_too_large_to_represent),nn;F(Yi,(js,mo)=>{var Ji;return wr(js,Sn.target.elementFlags[mo],(Ji=Sn.target.labeledElementDeclarations)==null?void 0:Ji[mo])})}else wr(F9(Sn)&&O5(Sn,ri)||nn,4,(W=u.labeledElementDeclarations)==null?void 0:W[dn]);else wr(Sn,ii,(Y=u.labeledElementDeclarations)==null?void 0:Y[dn])}for(let dn=0;dn=0&&$eBe[$e+Sn]&8?x1(dn,ri):dn)),oe.splice($e+1,Vt-$e),Be.splice($e+1,Vt-$e),Me.splice($e+1,Vt-$e));let kt=TUt(Be,u.readonly,Me);return kt===oi?Jg:Be.length?gZ(kt,oe):kt;function wr(dn,Sn,ii){Sn&1&&(He=Be.length),Sn&4&&$e<0&&($e=Be.length),Sn&6&&(Vt=Be.length),oe.push(Sn&2?W0(dn,!0):dn),Be.push(Sn),Me.push(ii)}}function sfe(u,m,v=0){let D=u.target,W=x9(u)-v;return m>D.fixedLength?LMs(u)||Ek(E):Ek(gf(u).slice(m,W),D.elementFlags.slice(m,W),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(m,W))}function uhn(u){return Ha(Ft(Ri(u.target.fixedLength,m=>kE(""+m)),JN(u.target.readonly?AA:kA)))}function z3s(u,m){let v=Se(u.elementFlags,D=>!(D&m));return v>=0?v:u.elementFlags.length}function Y2e(u,m){return u.elementFlags.length-De(u.elementFlags,v=>!(v&m))-1}function DUt(u){return u.fixedLength+Y2e(u,3)}function qQ(u){let m=gf(u),v=x9(u);return m.length===v?m:m.slice(0,v)}function q3s(u){return W0(tl(u.type),!0)}function UC(u){return u.id}function aG(u,m){return Oc(u,m,UC,Zt)>=0}function UOe(u,m){let v=Oc(u,m,UC,Zt);return v<0?(u.splice(~v,0,m),!0):!1}function $3s(u,m,v){let D=v.flags;if(!(D&131072))if(m|=D&473694207,D&465829888&&(m|=33554432),D&2097152&&la(v)&67108864&&(m|=536870912),v===Ni&&(m|=8388608),lo(v)&&(m|=1073741824),!at&&D&98304)la(v)&65536||(m|=4194304);else{let W=u.length,Y=W&&v.id>u[W-1].id?~W:Oc(u,v,UC,Zt);Y<0&&u.splice(~Y,0,v)}return m}function ghn(u,m,v){let D;for(let W of v)W!==D&&(m=W.flags&1048576?ghn(u,m|(s5s(W)?1048576:0),W.types):$3s(u,m,W),D=W);return m}function e5s(u,m){var v;if(u.length<2)return u;let D=ew(u),W=Cs.get(D);if(W)return W;let Y=m&&zt(u,He=>!!(He.flags&524288)&&!Jb(He)&&tKt(_R(He))),oe=u.length,Be=oe,Me=0;for(;Be>0;){Be--;let He=u[Be];if(Y||He.flags&469499904){if(He.flags&262144&&XN(He).flags&1048576){UN(He,Ha(lt(u,kt=>kt===He?Oi:kt)),Sf)&&WA(u,Be);continue}let $e=He.flags&61603840?de(Zd(He),kt=>bR(fo(kt))):void 0,Vt=$e&&Cy(fo($e));for(let kt of u)if(He!==kt){if(Me===1e5&&Me/(oe-Be)*oe>1e6){(v=ki)==null||v.instant(ki.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:u.map(dn=>dn.id)}),Br(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(Me++,$e&&kt.flags&61603840){let wr=Wi(kt,$e.escapedName);if(wr&&bR(wr)&&Cy(wr)!==Vt)continue}if(UN(He,kt,Sf)&&(!(la(vs(He))&1)||!(la(vs(kt))&1)||Q5(He,kt))){WA(u,Be);break}}}}return Cs.set(D,u),u}function t5s(u,m,v){let D=u.length;for(;D>0;){D--;let W=u[D],Y=W.flags;(Y&402653312&&m&4||Y&256&&m&8||Y&2048&&m&64||Y&8192&&m&4096||v&&Y&32768&&m&16384||eX(W)&&aG(u,W.regularType))&&WA(u,D)}}function r5s(u){let m=Le(u,kK);if(m.length){let v=u.length;for(;v>0;){v--;let D=u[v];D.flags&128&&zt(m,W=>n5s(D,W))&&WA(u,v)}}}function n5s(u,m){return m.flags&134217728?rat(u,m):tat(u,m)}function i5s(u){let m=[];for(let v of u)if(v.flags&2097152&&la(v)&67108864){let D=v.types[0].flags&8650752?0:1;Qi(m,v.types[D])}for(let v of m){let D=[];for(let Y of u)if(Y.flags&2097152&&la(Y)&67108864){let oe=Y.types[0].flags&8650752?0:1;Y.types[oe]===v&&UOe(D,Y.types[1-oe])}let W=O_(v);if(xE(W,Y=>aG(D,Y))){let Y=u.length;for(;Y>0;){Y--;let oe=u[Y];if(oe.flags&2097152&&la(oe)&67108864){let Be=oe.types[0].flags&8650752?0:1;oe.types[Be]===v&&aG(D,oe.types[1-Be])&&WA(u,Y)}}UOe(u,v)}}}function s5s(u){return!!(u.flags&1048576&&(u.aliasSymbol||u.origin))}function Ahn(u,m){for(let v of m)if(v.flags&1048576){let D=v.origin;v.aliasSymbol||D&&!(D.flags&1048576)?Qi(u,v):D&&D.flags&1048576&&Ahn(u,D.types)}}function kUt(u,m){let v=ql(u);return v.types=m,v}function Ha(u,m=1,v,D,W){if(u.length===0)return Oi;if(u.length===1)return u[0];if(u.length===2&&!W&&(u[0].flags&1048576||u[1].flags&1048576)){let Y=m===0?"N":m===2?"S":"L",oe=u[0].id=2&&Y[0]===wt&&Y[1]===fr&&WA(Y,1),(oe&402664352||oe&16384&&oe&32768)&&t5s(Y,oe,!!(m&2)),oe&128&&oe&402653184&&r5s(Y),oe&536870912&&i5s(Y),m===2&&(Y=e5s(Y,!!(oe&524288)),!Y))return nn;if(Y.length===0)return oe&65536?oe&4194304?Hn:Mt:oe&32768?oe&4194304?wt:xe:Oi}if(!W&&oe&1048576){let Me=[];Ahn(Me,u);let He=[];for(let Vt of Y)zt(Me,kt=>aG(kt.types,Vt))||He.push(Vt);if(!v&&Me.length===1&&He.length===0)return Me[0];if(Kl(Me,(Vt,kt)=>Vt+kt.types.length,0)+He.length===Y.length){for(let Vt of Me)UOe(He,Vt);W=kUt(1048576,He)}}let Be=(oe&36323331?0:32768)|(oe&2097152?16777216:0);return GUt(Y,Be,v,D,W)}function o5s(u,m){let v,D=[];for(let Y of u){let oe=xv(Y);if(oe){if(oe.kind!==0&&oe.kind!==1||v&&!xUt(v,oe))return;v=oe,D.push(oe.type)}else{let Be=m!==2097152?Ad(Y):void 0;if(Be!==Bs&&Be!==Ys)return}}if(!v)return;let W=kIn(D,m);return P2e(v.kind,v.parameterName,v.parameterIndex,W)}function xUt(u,m){return u.kind===m.kind&&u.parameterIndex===m.parameterIndex}function GUt(u,m,v,D,W){if(u.length===0)return Oi;if(u.length===1)return u[0];let oe=(W?W.flags&1048576?`|${ew(W.types)}`:W.flags&2097152?`&${ew(W.types)}`:`#${W.type.id}|${ew(u)}`:ew(u))+NK(v,D),Be=Oo.get(oe);return Be||(Be=ic(1048576),Be.objectFlags=m|YOe(u,98304),Be.types=u,Be.origin=W,Be.aliasSymbol=v,Be.aliasTypeArguments=D,u.length===2&&u[0].flags&512&&u[1].flags&512&&(Be.flags|=16,Be.intrinsicName="boolean"),Oo.set(oe,Be)),Be}function a5s(u){let m=sa(u);if(!m.resolvedType){let v=Hq(u);m.resolvedType=Ha(lt(u.types,tl),1,v,jse(v))}return m.resolvedType}function c5s(u,m,v){let D=v.flags;return D&2097152?phn(u,m,v.types):(Sk(v)?m&16777216||(m|=16777216,u.set(v.id.toString(),v)):(D&3?(v===Ni&&(m|=8388608),lo(v)&&(m|=1073741824)):(at||!(D&98304))&&(v===fr&&(m|=262144,v=wt),u.has(v.id.toString())||(v.flags&109472&&m&109472&&(m|=67108864),u.set(v.id.toString(),v))),m|=D&473694207),m)}function phn(u,m,v){for(let D of v)m=c5s(u,m,Cy(D));return m}function l5s(u,m){let v=u.length;for(;v>0;){v--;let D=u[v];(D.flags&4&&m&402653312||D.flags&8&&m&256||D.flags&64&&m&2048||D.flags&4096&&m&8192||D.flags&16384&&m&32768||Sk(D)&&m&470302716)&&WA(u,v)}}function u5s(u,m){for(let v of u)if(!aG(v.types,m)){if(m===fr)return aG(v.types,wt);if(m===wt)return aG(v.types,fr);let D=m.flags&128?$r:m.flags&288?ri:m.flags&2048?oo:m.flags&8192?ci:void 0;if(!D||!aG(v.types,D))return!1}return!0}function g5s(u){let m=u.length,v=Le(u,D=>!!(D.flags&128));for(;m>0;){m--;let D=u[m];if(D.flags&402653184){for(let W of v)if(rX(W,D)){WA(u,m);break}else if(kK(D))return!0}}return!1}function fhn(u,m){for(let v=0;v!(D.flags&m))}function A5s(u){let m,v=Se(u,oe=>!!(la(oe)&32768));if(v<0)return!1;let D=v+1;for(;D!!(dn.flags&469893116)||Sk(dn))){if(ofe(wr,kt))return Vt;if(!(wr.flags&1048576&&Lv(wr,dn=>ofe(dn,kt)))&&!ofe(kt,wr))return Oi;Be=67108864}}}let Me=ew(oe)+(m&2?"*":NK(v,D)),He=yr.get(Me);if(!He){if(Y&1048576)if(A5s(oe))He=jg(oe,m,v,D);else if(ue(oe,$e=>!!($e.flags&1048576&&$e.types[0].flags&32768))){let $e=zt(oe,tSe)?fr:wt;fhn(oe,32768),He=Ha([jg(oe,m),$e],1,v,D)}else if(ue(oe,$e=>!!($e.flags&1048576&&($e.types[0].flags&65536||$e.types[1].flags&65536))))fhn(oe,65536),He=Ha([jg(oe,m),Hn],1,v,D);else if(oe.length>=3&&u.length>2){let $e=Math.floor(oe.length/2);He=jg([jg(oe.slice(0,$e),m),jg(oe.slice($e),m)],m,v,D)}else{if(!KOe(oe))return nn;let $e=p5s(oe,m),Vt=zt($e,kt=>!!(kt.flags&2097152))&&FUt($e)>FUt(oe)?kUt(2097152,oe):void 0;He=Ha($e,1,v,D,Vt)}else He=d5s(oe,Be,v,D);yr.set(Me,He)}return He}function Ihn(u){return Kl(u,(m,v)=>v.flags&1048576?m*v.types.length:v.flags&131072?0:m,1)}function KOe(u){var m;let v=Ihn(u);return v>=1e5?((m=ki)==null||m.instant(ki.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:u.map(D=>D.id),size:v}),Br(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function p5s(u,m){let v=Ihn(u),D=[];for(let W=0;W=0;Me--)if(u[Me].flags&1048576){let He=u[Me].types,$e=He.length;Y[Me]=He[oe%$e],oe=Math.floor(oe/$e)}let Be=jg(Y,m);Be.flags&131072||D.push(Be)}return D}function hhn(u){return!(u.flags&3145728)||u.aliasSymbol?1:u.flags&1048576&&u.origin?hhn(u.origin):FUt(u.types)}function FUt(u){return Kl(u,(m,v)=>m+hhn(v),0)}function f5s(u){let m=sa(u);if(!m.resolvedType){let v=Hq(u),D=lt(u.types,tl),W=D.length===2?D.indexOf(Eg):-1,Y=W>=0?D[1-W]:cn,oe=!!(Y.flags&76||Y.flags&134217728&&kK(Y));m.resolvedType=jg(D,oe?1:0,v,jse(v))}return m.resolvedType}function mhn(u,m){let v=ic(4194304);return v.type=u,v.indexFlags=m,v}function I5s(u){let m=ql(4194304);return m.type=u,m}function Chn(u,m){return m&1?u.resolvedStringIndexType||(u.resolvedStringIndexType=mhn(u,1)):u.resolvedIndexType||(u.resolvedIndexType=mhn(u,0))}function _hn(u,m){let v=rT(u),D=vS(u),W=N9(u.target||u);if(!W&&!(m&2))return D;let Y=[];if(GK(D)){if(Yse(u))return Chn(u,m);MK(D,Be)}else if(Yse(u)){let Me=my(W5(u));rUt(Me,8576,!!(m&1),Be)}else MK(WOe(D),Be);let oe=m&2?am(Ha(Y),Me=>!(Me.flags&5)):Ha(Y);if(oe.flags&1048576&&D.flags&1048576&&ew(oe.types)===ew(D.types))return D;return oe;function Be(Me){let He=W?Cl(W,J2e(u.mapper,v,Me)):Me;Y.push(He===$r?bi:He)}}function h5s(u){let m=rT(u);return v(N9(u)||m);function v(D){return D.flags&470810623?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===m:D.flags&137363456?ue(D.types,v):D.flags&8388608?v(D.objectType)&&v(D.indexType):D.flags&33554432?v(D.baseType)&&v(D.constraint):D.flags&268435456?v(D.type):!1}}function AZ(u){if(p(u))return Oi;if(yC(u))return Cy(Ml(u));if(Un(u))return Cy(nT(u));let m=R3(u);return m!==void 0?kE(Bc(m)):un(u)?Cy(Ml(u)):Oi}function Pq(u,m,v){if(v||!(p2(u)&6)){let D=fa(Aot(u)).nameType;if(!D){let W=fl(u.valueDeclaration);D=u.escapedName==="default"?kE("default"):W&&AZ(W)||(J7(u)?void 0:kE(of(u)))}if(D&&D.flags&m)return D}return Oi}function yhn(u,m){return!!(u.flags&m||u.flags&2097152&&zt(u.types,v=>yhn(v,m)))}function m5s(u,m,v){let D=v&&(la(u)&7||u.aliasSymbol)?I5s(u):void 0,W=lt(Zd(u),oe=>Pq(oe,m)),Y=lt(f0(u),oe=>oe!==Uc&&yhn(oe.keyType,m)?oe.keyType===$r&&m&8?bi:oe.keyType:Oi);return Ha(Nn(W,Y),1,void 0,void 0,D)}function ZUt(u,m=0){return!!(u.flags&58982400||BO(u)||Jb(u)&&(!h5s(u)||V2e(u)===2)||u.flags&1048576&&!(m&4)&&cUt(u)||u.flags&2097152&&uh(u,465829888)&&zt(u.types,Sk))}function JN(u,m=0){return u=$B(u),Use(u)?hUt(JN(u.baseType,m)):ZUt(u,m)?Chn(u,m):u.flags&1048576?jg(lt(u.types,v=>JN(v,m))):u.flags&2097152?Ha(lt(u.types,v=>JN(v,m))):la(u)&32?_hn(u,m):u===Ni?Ni:u.flags&2?Oi:u.flags&131073?mc:m5s(u,(m&2?128:402653316)|(m&1?0:12584),m===0)}function bhn(u){let m=x3s();return m?Jse(m,[u,$r]):$r}function C5s(u){let m=bhn(JN(u));return m.flags&131072?$r:m}function _5s(u){let m=sa(u);if(!m.resolvedType)switch(u.operator){case 143:m.resolvedType=JN(tl(u.type));break;case 158:m.resolvedType=u.type.kind===155?QUt(Rne(u.parent)):nn;break;case 148:m.resolvedType=tl(u.type);break;default:pe.assertNever(u.operator)}return m.resolvedType}function y5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=DK([u.head.text,...lt(u.templateSpans,v=>v.literal.text)],lt(u.templateSpans,v=>tl(v.type)))),m.resolvedType}function DK(u,m){let v=Se(m,He=>!!(He.flags&1179648));if(v>=0)return KOe(m)?Xf(m[v],He=>DK(u,Ql(m,v,He))):nn;if(k(m,Ni))return Ni;let D=[],W=[],Y=u[0];if(!Me(u,m))return $r;if(D.length===0)return kE(Y);if(W.push(Y),ue(W,He=>He==="")){if(ue(D,He=>!!(He.flags&4)))return $r;if(D.length===1&&kK(D[0]))return D[0]}let oe=`${ew(D)}|${lt(W,He=>He.length).join(",")}|${W.join("")}`,Be=$c.get(oe);return Be||$c.set(oe,Be=E5s(W,D)),Be;function Me(He,$e){for(let Vt=0;Vt<$e.length;Vt++){let kt=$e[Vt];if(kt.flags&101248)Y+=b5s(kt)||"",Y+=He[Vt+1];else if(kt.flags&134217728){if(Y+=kt.texts[0],!Me(kt.texts,kt.types))return!1;Y+=He[Vt+1]}else if(GK(kt)||jOe(kt))D.push(kt),W.push(Y),Y=He[Vt+1];else return!1}return!0}}function b5s(u){return u.flags&128?u.value:u.flags&256?""+u.value:u.flags&2048?PW(u.value):u.flags&98816?u.intrinsicName:void 0}function E5s(u,m){let v=ic(134217728);return v.texts=u,v.types=m,v}function Mq(u,m){return m.flags&1179648?Xf(m,v=>Mq(u,v)):m.flags&128?kE(Ehn(u,m.value)):m.flags&134217728?DK(...S5s(u,m.texts,m.types)):m.flags&268435456&&u===m.symbol?m:m.flags&268435461||GK(m)?Shn(u,m):jOe(m)?Shn(u,DK(["",""],[m])):m}function Ehn(u,m){switch(Uet.get(u.escapedName)){case 0:return m.toUpperCase();case 1:return m.toLowerCase();case 2:return m.charAt(0).toUpperCase()+m.slice(1);case 3:return m.charAt(0).toLowerCase()+m.slice(1)}return m}function S5s(u,m,v){switch(Uet.get(u.escapedName)){case 0:return[m.map(D=>D.toUpperCase()),v.map(D=>Mq(u,D))];case 1:return[m.map(D=>D.toLowerCase()),v.map(D=>Mq(u,D))];case 2:return[m[0]===""?m:[m[0].charAt(0).toUpperCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[Mq(u,v[0]),...v.slice(1)]:v];case 3:return[m[0]===""?m:[m[0].charAt(0).toLowerCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[Mq(u,v[0]),...v.slice(1)]:v]}return[m,v]}function Shn(u,m){let v=`${xg(u)},${UC(m)}`,D=Qu.get(v);return D||Qu.set(v,D=v5s(u,m)),D}function v5s(u,m){let v=Pc(268435456,u);return v.type=m,v}function B5s(u,m,v,D,W){let Y=ic(8388608);return Y.objectType=u,Y.indexType=m,Y.accessFlags=v,Y.aliasSymbol=D,Y.aliasTypeArguments=W,Y}function Q2e(u){if(Rt)return!1;if(la(u)&4096)return!0;if(u.flags&1048576)return ue(u.types,Q2e);if(u.flags&2097152)return zt(u.types,Q2e);if(u.flags&465829888){let m=sUt(u);return m!==u&&Q2e(m)}return!1}function Tot(u,m){return f2(u)?I2(u):m&&PI(m)?R3(m):void 0}function LUt(u,m){if(m.flags&8208){let v=ji(u.parent,D=>!bp(D))||u.parent;return SF(v)?Av(v)&&Ir(u)&&Zmn(v,u):ue(m.declarations,D=>!Eu(D)||pR(D))}return!0}function vhn(u,m,v,D,W,Y){let oe=W&&W.kind===213?W:void 0,Be=W&&p(W)?void 0:Tot(v,W);if(Be!==void 0){if(Y&256)return K5(m,Be)||hr;let He=Fg(m,Be);if(He){if(Y&64&&W&&He.declarations&&Iy(He)&&LUt(W,He)){let Vt=oe?.argumentExpression??(yv(W)?W.indexType:W);jB(Vt,He.declarations,Be)}if(oe){if(NPe(He,oe,n_n(oe.expression,m.symbol)),Q_n(oe,He,zD(oe))){Br(oe.argumentExpression,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,xl(He));return}if(Y&8&&(sa(W).resolvedSymbol=He),KCn(oe,He))return En}let $e=Y&4?R9(He):fo(He);return oe&&zD(oe)!==1?_Z(oe,$e):W&&yv(W)&&tSe($e)?Ha([$e,wt]):$e}if(xE(m,EA)&&bN(Be)){let $e=+Be;if(W&&xE(m,Vt=>!(Vt.target.combinedFlags&12))&&!(Y&16)){let Vt=VUt(W);if(EA(m)){if($e<0)return Br(Vt,Z.A_tuple_type_cannot_be_indexed_with_a_negative_value),wt;Br(Vt,Z.Tuple_type_0_of_length_1_has_no_element_at_index_2,ro(m),x9(m),Bc(Be))}else Br(Vt,Z.Property_0_does_not_exist_on_type_1,Bc(Be),ro(m))}if($e>=0)return Me(sG(m,ri)),fmn(m,$e,Y&1?fr:void 0)}}if(!(v.flags&98304)&&P_(v,402665900)){if(m.flags&131073)return m;let He=W2e(m,v)||sG(m,$r);if(He){if(Y&2&&He.keyType!==ri){oe&&(Y&4?Br(oe,Z.Type_0_is_generic_and_can_only_be_indexed_for_reading,ro(u)):Br(oe,Z.Type_0_cannot_be_used_to_index_type_1,ro(v),ro(u)));return}if(W&&He.keyType===$r&&!P_(v,12)){let $e=VUt(W);return Br($e,Z.Type_0_cannot_be_used_as_an_index_type,ro(v)),Y&1?Ha([He.type,fr]):He.type}return Me(He),Y&1&&!(m.symbol&&m.symbol.flags&384&&v.symbol&&v.flags&1024&&nC(v.symbol)===m.symbol)?Ha([He.type,fr]):He.type}if(v.flags&131072)return Oi;if(Q2e(m))return hr;if(oe&&!Zat(m)){if(Z9(m)){if(Rt&&v.flags&384)return PA.add(ho(oe,Z.Property_0_does_not_exist_on_type_1,v.value,ro(m))),wt;if(v.flags&12){let $e=lt(m.properties,Vt=>fo(Vt));return Ha(Ft($e,wt))}}if(m.symbol===pr&&Be!==void 0&&pr.exports.has(Be)&&pr.exports.get(Be).flags&418)Br(oe,Z.Property_0_does_not_exist_on_type_1,Bc(Be),ro(m));else if(Rt&&!(Y&128))if(Be!==void 0&&qCn(Be,m)){let $e=ro(m);Br(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,Be,$e,$e+"["+Fp(oe.argumentExpression)+"]")}else if(O5(m,ri))Br(oe.argumentExpression,Z.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let $e;if(Be!==void 0&&($e=t_n(Be,m)))$e!==void 0&&Br(oe.argumentExpression,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Be,ro(m),$e);else{let Vt=xQs(m,oe,v);if(Vt!==void 0)Br(oe,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,ro(m),Vt);else{let kt;if(v.flags&1024)kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+ro(v)+"]",ro(m));else if(v.flags&8192){let wr=b9(v.symbol,oe);kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+wr+"]",ro(m))}else v.flags&128||v.flags&256?kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,v.value,ro(m)):v.flags&12&&(kt=wu(void 0,Z.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,ro(v),ro(m)));kt=wu(kt,Z.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,ro(D),ro(m)),PA.add(kw(ms(oe),oe,kt))}}}return}}if(Y&16&&Z9(m))return wt;if(Q2e(m))return hr;if(W){let He=VUt(W);if(He.kind!==10&&v.flags&384)Br(He,Z.Property_0_does_not_exist_on_type_1,""+v.value,ro(m));else if(v.flags&12)Br(He,Z.Type_0_has_no_matching_index_signature_for_type_1,ro(m),ro(v));else{let $e=He.kind===10?"bigint":ro(v);Br(He,Z.Type_0_cannot_be_used_as_an_index_type,$e)}}if(Xo(v))return v;return;function Me(He){He&&He.isReadonly&&oe&&(RF(oe)||jye(oe))&&Br(oe,Z.Index_signature_in_type_0_only_permits_reading,ro(m))}}function VUt(u){return u.kind===213?u.argumentExpression:u.kind===200?u.indexType:u.kind===168?u.expression:u}function jOe(u){if(u.flags&2097152){let m=!1;for(let v of u.types)if(v.flags&101248||jOe(v))m=!0;else if(!(v.flags&524288))return!1;return m}return!!(u.flags&77)||kK(u)}function kK(u){return!!(u.flags&134217728)&&ue(u.types,jOe)||!!(u.flags&268435456)&&jOe(u.type)}function Bhn(u){return!!(u.flags&402653184)&&!kK(u)}function H5(u){return!!X2e(u)}function xK(u){return!!(X2e(u)&4194304)}function GK(u){return!!(X2e(u)&8388608)}function X2e(u){return u.flags&3145728?(u.objectFlags&2097152||(u.objectFlags|=2097152|Kl(u.types,(m,v)=>m|X2e(v),0)),u.objectFlags&12582912):u.flags&33554432?(u.objectFlags&2097152||(u.objectFlags|=2097152|X2e(u.baseType)|X2e(u.constraint)),u.objectFlags&12582912):(u.flags&58982400||Jb(u)||BO(u)?4194304:0)|(u.flags&63176704||Bhn(u)?8388608:0)}function dZ(u,m){return u.flags&8388608?T5s(u,m):u.flags&16777216?R5s(u,m):u}function whn(u,m,v){if(u.flags&1048576||u.flags&2097152&&!ZUt(u)){let D=lt(u.types,W=>dZ(x1(W,m),v));return u.flags&2097152||v?jg(D):Ha(D)}}function w5s(u,m,v){if(m.flags&1048576){let D=lt(m.types,W=>dZ(x1(u,W),v));return v?jg(D):Ha(D)}}function T5s(u,m){let v=m?"simplifiedForWriting":"simplifiedForReading";if(u[v])return u[v]===Wh?u:u[v];u[v]=Wh;let D=dZ(u.objectType,m),W=dZ(u.indexType,m),Y=w5s(D,W,m);if(Y)return u[v]=Y;if(!(W.flags&465829888)){let oe=whn(D,W,m);if(oe)return u[v]=oe}if(BO(D)&&W.flags&296){let oe=lfe(D,W.flags&8?0:D.target.fixedLength,0,m);if(oe)return u[v]=oe}return Jb(D)&&V2e(D)!==2?u[v]=Xf(Rot(D,u.indexType),oe=>dZ(oe,m)):u[v]=u}function R5s(u,m){let v=u.checkType,D=u.extendsType,W=SO(u),Y=vO(u);if(Y.flags&131072&&pZ(W)===pZ(v)){if(v.flags&1||pg(LK(v),LK(D)))return dZ(W,m);if(Thn(v,D))return Oi}else if(W.flags&131072&&pZ(Y)===pZ(v)){if(!(v.flags&1)&&pg(LK(v),LK(D)))return Oi;if(v.flags&1||Thn(v,D))return dZ(Y,m)}return u}function Thn(u,m){return!!(Ha([VOe(u,m),Oi]).flags&131072)}function Rot(u,m){let v=G1([rT(u)],[m]),D=Y5(u.mapper,v),W=Cl(iG(u.target||u),D),Y=hIn(u)>0||(H5(u)?qpe(W5(u))>0:N5s(u,m));return W0(W,!0,Y)}function N5s(u,m){let v=O_(m);return!!v&&zt(Zd(u),D=>!!(D.flags&16777216)&&pg(Pq(D,8576),v))}function x1(u,m,v=0,D,W,Y){return EO(u,m,v,D,W,Y)||(D?nn:cn)}function Rhn(u,m){return xE(u,v=>{if(v.flags&384){let D=I2(v);if(bN(D)){let W=+D;return W>=0&&W0&&!zt(u.elements,m=>n9(m)||i9(m)||tR(m)&&!!(m.questionToken||m.dotDotDotToken))}function khn(u,m){return H5(u)||m&&EA(u)&&zt(qQ(u),H5)}function OUt(u,m,v,D,W){let Y,oe,Be=0;for(;;){if(Be===1e3)return Br(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let He=Cl(pZ(u.checkType),m),$e=Cl(u.extendsType,m);if(He===nn||$e===nn)return nn;if(He===Ni||$e===Ni)return Ni;let Vt=M7(u.node.checkType),kt=M7(u.node.extendsType),wr=Dhn(Vt)&&Dhn(kt)&&B(Vt.elements)===B(kt.elements),dn=khn(He,wr),Sn;if(u.inferTypeParameters){let Yi=nSe(u.inferTypeParameters,void 0,0);m&&(Yi.nonFixingMapper=Y5(Yi.nonFixingMapper,m)),dn||lG(Yi.inferences,He,$e,1536),Sn=m?Y5(Yi.mapper,m):Yi.mapper}let ii=Sn?Cl(u.extendsType,Sn):$e;if(!dn&&!khn(ii,wr)){if(!(ii.flags&3)&&(He.flags&1||!pg(K2e(He),K2e(ii)))){(He.flags&1||v&&!(ii.flags&131072)&&Lv(K2e(ii),js=>pg(js,K2e(He))))&&(oe||(oe=[])).push(Cl(tl(u.node.trueType),Sn||m));let Yi=tl(u.node.falseType);if(Yi.flags&16777216){let js=Yi.root;if(js.node.parent===u.node&&(!js.isDistributive||js.checkType===u.checkType)){u=js;continue}if(Me(Yi,m))continue}Y=Cl(Yi,m);break}if(ii.flags&3||pg(LK(He),LK(ii))){let Yi=tl(u.node.trueType),js=Sn||m;if(Me(Yi,js))continue;Y=Cl(Yi,js);break}}Y=ic(16777216),Y.root=u,Y.checkType=Cl(u.checkType,m),Y.extendsType=Cl(u.extendsType,m),Y.mapper=m,Y.combinedMapper=Sn,Y.aliasSymbol=D||u.aliasSymbol,Y.aliasTypeArguments=D?W:fZ(u.aliasTypeArguments,m);break}return oe?Ha(Ft(oe,Y)):Y;function Me(He,$e){if(He.flags&16777216&&$e){let Vt=He.root;if(Vt.outerTypeParameters){let kt=Y5(He.mapper,$e),wr=lt(Vt.outerTypeParameters,ii=>G9(ii,kt)),dn=G1(Vt.outerTypeParameters,wr),Sn=Vt.isDistributive?G9(Vt.checkType,dn):void 0;if(!Sn||Sn===Vt.checkType||!(Sn.flags&1179648))return u=Vt,m=dn,D=void 0,W=void 0,Vt.aliasSymbol&&Be++,!0}}return!1}}function SO(u){return u.resolvedTrueType||(u.resolvedTrueType=Cl(tl(u.root.node.trueType),u.mapper))}function vO(u){return u.resolvedFalseType||(u.resolvedFalseType=Cl(tl(u.root.node.falseType),u.mapper))}function D5s(u){return u.resolvedInferredTrueType||(u.resolvedInferredTrueType=u.combinedMapper?Cl(tl(u.root.node.trueType),u.combinedMapper):SO(u))}function PUt(u){let m;return u.locals&&u.locals.forEach(v=>{v.flags&262144&&(m=Ft(m,Lp(v)))}),m}function k5s(u){return u.isDistributive&&(tPe(u.checkType,u.node.trueType)||tPe(u.checkType,u.node.falseType))}function x5s(u){let m=sa(u);if(!m.resolvedType){let v=tl(u.checkType),D=Hq(u),W=jse(D),Y=Fc(u,!0),oe=W?Y:Le(Y,Me=>tPe(Me,u)),Be={node:u,checkType:v,extendsType:tl(u.extendsType),isDistributive:!!(v.flags&262144),inferTypeParameters:PUt(u),outerTypeParameters:oe,instantiations:void 0,aliasSymbol:D,aliasTypeArguments:W};m.resolvedType=OUt(Be,void 0,!1),oe&&(Be.instantiations=new Map,Be.instantiations.set(ew(oe),m.resolvedType))}return m.resolvedType}function G5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=V5(Uo(u.typeParameter))),m.resolvedType}function xhn(u){return Ir(u)?[u]:Ft(xhn(u.left),u.right)}function Ghn(u){var m;let v=sa(u);if(!v.resolvedType){if(!Fy(u))return Br(u.argument,Z.String_literal_expected),v.resolvedSymbol=st,v.resolvedType=nn;let D=u.isTypeOf?111551:u.flags&16777216?900095:788968,W=V0(u,u.argument.literal);if(!W)return v.resolvedSymbol=st,v.resolvedType=nn;let Y=!!((m=W.exports)!=null&&m.get("export=")),oe=DE(W,!1);if(af(u.qualifier))if(oe.flags&D)v.resolvedType=Fhn(u,v,oe,D);else{let Be=D===111551?Z.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;Br(u,Be,u.argument.literal.text),v.resolvedSymbol=st,v.resolvedType=nn}else{let Be=xhn(u.qualifier),Me=oe,He;for(;He=Be.shift();){let $e=Be.length?1920:D,Vt=qA(Oh(Me)),kt=u.isTypeOf||Bo(u)&&Y?Fg(fo(Vt),He.escapedText,!1,!0):void 0,dn=(u.isTypeOf?void 0:m_(N1(Vt),He.escapedText,$e))??kt;if(!dn)return Br(He,Z.Namespace_0_has_no_exported_member_1,b9(Me),Md(He)),v.resolvedType=nn;sa(He).resolvedSymbol=dn,sa(He.parent).resolvedSymbol=dn,Me=dn}v.resolvedType=Fhn(u,v,Me,D)}}return v.resolvedType}function Fhn(u,m,v,D){let W=Oh(v);return m.resolvedSymbol=W,D===111551?D_n(fo(v),u):Eot(u,W)}function Zhn(u){let m=sa(u);if(!m.resolvedType){let v=Hq(u);if(!u.symbol||_k(u.symbol).size===0&&!v)m.resolvedType=Eg;else{let D=Ph(16,u.symbol);D.aliasSymbol=v,D.aliasTypeArguments=jse(v),FU(u)&&u.isArrayType&&(D=I0(D)),m.resolvedType=D}}return m.resolvedType}function Hq(u){let m=u.parent;for(;_v(m)||K3(m)||WB(m)&&m.operator===148;)m=m.parent;return Bne(m)?Uo(m):void 0}function jse(u){return u?Kg(u):void 0}function Not(u){return!!(u.flags&524288)&&!Jb(u)}function MUt(u){return IZ(u)||!!(u.flags&474058748)}function HUt(u,m){if(!(u.flags&1048576))return u;if(ue(u.types,MUt))return de(u.types,IZ)||Jg;let v=de(u.types,Y=>!MUt(Y));if(!v||de(u.types,Y=>Y!==v&&!MUt(Y)))return u;return W(v);function W(Y){let oe=$u();for(let Me of Zd(Y))if(!(p2(Me)&6)){if(Dot(Me)){let He=Me.flags&65536&&!(Me.flags&32768),Vt=dA(16777220,Me.escapedName,tUt(Me)|(m?8:0));Vt.links.type=He?wt:W0(fo(Me),!0),Vt.declarations=Me.declarations,Vt.links.nameType=fa(Me).nameType,Vt.links.syntheticOrigin=Me,oe.set(Me.escapedName,Vt)}}let Be=Qf(Y.symbol,oe,E,E,f0(Y));return Be.objectFlags|=131200,Be}}function $Q(u,m,v,D,W){if(u.flags&1||m.flags&1)return hr;if(u.flags&2||m.flags&2)return cn;if(u.flags&131072)return m;if(m.flags&131072)return u;if(u=HUt(u,W),u.flags&1048576)return KOe([u,m])?Xf(u,He=>$Q(He,m,v,D,W)):nn;if(m=HUt(m,W),m.flags&1048576)return KOe([u,m])?Xf(m,He=>$Q(u,He,v,D,W)):nn;if(m.flags&473960444)return u;if(xK(u)||xK(m)){if(IZ(u))return m;if(u.flags&2097152){let He=u.types,$e=He[He.length-1];if(Not($e)&&Not(m))return jg(Nn(He.slice(0,He.length-1),[$Q($e,m,v,D,W)]))}return jg([u,m])}let Y=$u(),oe=new Set,Be=u===Jg?f0(m):AIn([u,m]);for(let He of Zd(m))p2(He)&6?oe.add(He.escapedName):Dot(He)&&Y.set(He.escapedName,YUt(He,W));for(let He of Zd(u))if(!(oe.has(He.escapedName)||!Dot(He)))if(Y.has(He.escapedName)){let $e=Y.get(He.escapedName),Vt=fo($e);if($e.flags&16777216){let kt=Nn(He.declarations,$e.declarations),wr=4|He.flags&16777216,dn=dA(wr,He.escapedName),Sn=fo(He),ii=Kot(Sn),Yi=Kot(Vt);dn.links.type=ii===Yi?Sn:Ha([Sn,Yi],2),dn.links.leftSpread=He,dn.links.rightSpread=$e,dn.declarations=kt,dn.links.nameType=fa(He).nameType,Y.set(He.escapedName,dn)}}else Y.set(He.escapedName,YUt(He,W));let Me=Qf(v,Y,E,E,Er(Be,He=>F5s(He,W)));return Me.objectFlags|=2228352|D,Me}function Dot(u){var m;return!zt(u.declarations,hC)&&(!(u.flags&106496)||!((m=u.declarations)!=null&&m.some(v=>xa(v.parent))))}function YUt(u,m){let v=u.flags&65536&&!(u.flags&32768);if(!v&&m===wR(u))return u;let D=4|u.flags&16777216,W=dA(D,u.escapedName,tUt(u)|(m?8:0));return W.links.type=v?wt:fo(u),W.declarations=u.declarations,W.links.nameType=fa(u).nameType,W.links.syntheticOrigin=u,W}function F5s(u,m){return u.isReadonly!==m?oG(u.keyType,u.type,m,u.declaration,u.components):u}function zOe(u,m,v,D){let W=Pc(u,v);return W.value=m,W.regularType=D||W,W}function Yq(u){if(u.flags&2976){if(!u.freshType){let m=zOe(u.flags,u.value,u.symbol,u);m.freshType=m,u.freshType=m}return u.freshType}return u}function Cy(u){return u.flags&2976?u.regularType:u.flags&1048576?u.regularType||(u.regularType=Xf(u,Cy)):u}function eX(u){return!!(u.flags&2976)&&u.freshType===u}function kE(u){let m;return hn.get(u)||(hn.set(u,m=zOe(128,u)),m)}function yR(u){let m;return Pi.get(u)||(Pi.set(u,m=zOe(256,u)),m)}function qOe(u){let m,v=PW(u);return co.get(v)||(co.set(v,m=zOe(2048,u)),m)}function Z5s(u,m,v){let D,W=`${m}${typeof u=="string"?"@":"#"}${u}`,Y=1024|(typeof u=="string"?128:256);return pa.get(W)||(pa.set(W,D=zOe(Y,u,v)),D)}function L5s(u){if(u.literal.kind===106)return Hn;let m=sa(u);return m.resolvedType||(m.resolvedType=Cy(Ml(u.literal))),m.resolvedType}function V5s(u){let m=Pc(8192,u);return m.escapedName=`__@${m.symbol.escapedName}@${xg(m.symbol)}`,m}function QUt(u){if(Bo(u)&&K3(u)){let m=DW(u);m&&(u=w3(m)||m)}if(EZe(u)){let m=tAe(u)?ES(u.left):ES(u);if(m){let v=fa(m);return v.uniqueESSymbolType||(v.uniqueESSymbolType=V5s(m))}}return ci}function W5s(u){let m=s0(u,!1,!1),v=m&&m.parent;if(v&&(xa(v)||v.kind===265)&&!lg(m)&&(!Tc(m)||kW(u,m.body)))return kv(Uo(v)).thisType;if(v&&ag(v)&&po(v.parent)&&oI(v.parent)===6)return kv(ES(v.parent.left).parent).thisType;let D=u.flags&16777216?XL(u):void 0;return D&&jA(D)&&po(D.parent)&&oI(D.parent)===3?kv(ES(D.parent.left).parent).thisType:jN(m)&&kW(u,m.body)?kv(Uo(m)).thisType:(Br(u,Z.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),nn)}function XUt(u){let m=sa(u);return m.resolvedType||(m.resolvedType=W5s(u)),m.resolvedType}function Lhn(u){return tl($Oe(u.type)||u.type)}function $Oe(u){switch(u.kind){case 197:return $Oe(u.type);case 190:if(u.elements.length===1&&(u=u.elements[0],u.kind===192||u.kind===203&&u.dotDotDotToken))return $Oe(u.type);break;case 189:return u.elementType}}function O5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=u.dotDotDotToken?Lhn(u):W0(tl(u.type),!0,!!u.questionToken))}function tl(u){return I3s(Vhn(u),u)}function Vhn(u){switch(u.kind){case 133:case 313:case 314:return hr;case 159:return cn;case 154:return $r;case 150:return ri;case 163:return oo;case 136:return Mn;case 155:return ci;case 116:return es;case 157:return wt;case 106:return Hn;case 146:return Oi;case 151:return u.flags&524288&&!Rt?hr:fs;case 141:return Ht;case 198:case 110:return XUt(u);case 202:return L5s(u);case 184:return vot(u);case 183:return u.assertsModifier?es:Mn;case 234:return vot(u);case 187:return XIn(u);case 189:case 190:return U3s(u);case 191:return q3s(u);case 193:return a5s(u);case 194:return f5s(u);case 315:return h3s(u);case 317:return W0(tl(u.type));case 203:return O5s(u);case 197:case 316:case 310:return tl(u.type);case 192:return Lhn(u);case 319:return iKs(u);case 185:case 186:case 188:case 323:case 318:case 324:return Zhn(u);case 199:return _5s(u);case 200:return Nhn(u);case 201:return WUt(u);case 195:return x5s(u);case 196:return G5s(u);case 204:return y5s(u);case 206:return Ghn(u);case 80:case 167:case 212:let m=Vv(u);return m?Lp(m):nn;default:return nn}}function kot(u,m,v){if(u&&u.length)for(let D=0;DD.typeParameter),lt(v,()=>cn))}function M5s(u){return u.outerReturnMapper??(u.outerReturnMapper=Mhn(u.returnMapper,ymn(u).mapper))}function Y5(u,m){return u?Got(4,u,m):m}function Mhn(u,m){return u?Got(5,u,m):m}function FK(u,m,v){return v?Got(5,tX(u,m),v):tX(u,m)}function J2e(u,m,v){return u?Got(5,u,tX(m,v)):tX(m,v)}function H5s(u){return!u.constraint&&!yot(u)||u.constraint===JI?u:u.restrictiveInstantiation||(u.restrictiveInstantiation=Jy(u.symbol),u.restrictiveInstantiation.constraint=JI,u.restrictiveInstantiation)}function UUt(u){let m=Jy(u.symbol);return m.target=u,m}function Hhn(u,m){return P2e(u.kind,u.parameterName,u.parameterIndex,Cl(u.type,m))}function ZK(u,m,v){let D;if(u.typeParameters&&!v){D=lt(u.typeParameters,UUt),m=Y5(G1(u.typeParameters,D),m);for(let Y of D)Y.mapper=m}let W=QN(u.declaration,D,u.thisParameter&&KUt(u.thisParameter,m),kot(u.parameters,m,KUt),void 0,void 0,u.minArgumentCount,u.flags&167);return W.target=u,W.mapper=m,W}function KUt(u,m){let v=fa(u);if(v.type&&!TO(v.type)&&(!(u.flags&65536)||v.writeType&&!TO(v.writeType)))return u;aI(u)&1&&(u=v.target,m=Y5(v.mapper,m));let D=dA(u.flags,u.escapedName,1|aI(u)&53256);return D.declarations=u.declarations,D.parent=u.parent,D.links.target=u,D.links.mapper=m,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),v.nameType&&(D.links.nameType=v.nameType),D}function Y5s(u,m,v,D){let W=u.objectFlags&4||u.objectFlags&8388608?u.node:u.symbol.declarations[0],Y=sa(W),oe=u.objectFlags&4?Y.resolvedType:u.objectFlags&64?u.target:u,Be=Y.outerTypeParameters;if(!Be){let Me=Fc(W,!0);if(jN(W)){let $e=RIn(W);Me=Pr(Me,$e)}Be=Me||E;let He=u.objectFlags&8388612?[W]:u.symbol.declarations;Be=(oe.objectFlags&8388612||oe.symbol.flags&8192||oe.symbol.flags&2048)&&!oe.aliasTypeArguments?Le(Be,$e=>zt(He,Vt=>tPe($e,Vt))):Be,Y.outerTypeParameters=Be}if(Be.length){let Me=Y5(u.mapper,m),He=lt(Be,dn=>G9(dn,Me)),$e=v||u.aliasSymbol,Vt=v?D:fZ(u.aliasTypeArguments,m),kt=ew(He)+NK($e,Vt);oe.instantiations||(oe.instantiations=new Map,oe.instantiations.set(ew(Be)+NK(oe.aliasSymbol,oe.aliasTypeArguments),oe));let wr=oe.instantiations.get(kt);if(!wr){let dn=G1(Be,He);oe.objectFlags&134217728&&m&&(dn=Y5(dn,m)),wr=oe.objectFlags&4?IUt(u.target,u.node,dn,$e,Vt):oe.objectFlags&32?X5s(oe,dn,$e,Vt):jUt(oe,dn,$e,Vt),oe.instantiations.set(kt,wr);let Sn=la(wr);if(wr.flags&3899393&&!(Sn&524288)){let ii=zt(He,TO);la(wr)&524288||(Sn&52?wr.objectFlags|=524288|(ii?1048576:0):wr.objectFlags|=ii?0:524288)}}return wr}return u}function Q5s(u){return!(u.parent.kind===184&&u.parent.typeArguments&&u===u.parent.typeName||u.parent.kind===206&&u.parent.typeArguments&&u===u.parent.qualifier)}function tPe(u,m){if(u.symbol&&u.symbol.declarations&&u.symbol.declarations.length===1){let D=u.symbol.declarations[0].parent;for(let W=m;W!==D;W=W.parent)if(!W||W.kind===242||W.kind===195&&Lu(W.extendsType,v))return!0;return v(m)}return!0;function v(D){switch(D.kind){case 198:return!!u.isThisType;case 80:return!u.isThisType&&xw(D)&&Q5s(D)&&Vhn(D)===u;case 187:let W=D.exprName,Y=R0(W);if(!kF(Y)){let oe=O0(Y),Be=u.symbol.declarations[0],Me=Be.kind===169?Be.parent:u.isThisType?Be:void 0;if(oe.declarations&&Me)return zt(oe.declarations,He=>kW(He,Me))||zt(D.typeArguments,v)}return!0;case 175:case 174:return!D.type&&!!D.body||zt(D.typeParameters,v)||zt(D.parameters,v)||!!D.type&&v(D.type)}return!!Lu(D,v)}}function U2e(u){let m=vS(u);if(m.flags&4194304){let v=pZ(m.type);if(v.flags&262144)return v}}function X5s(u,m,v,D){let W=U2e(u);if(W){let oe=Cl(W,m);if(W!==oe)return Xmn($B(oe),Y,v,D)}return Cl(vS(u),m)===Ni?Ni:jUt(u,m,v,D);function Y(oe){if(oe.flags&61603843&&oe!==Ni&&!lo(oe)){if(!u.declaration.nameType){let Be;if(Fv(oe)||oe.flags&1&&nt(W,4)<0&&(Be=Ky(W))&&xE(Be,X5))return U5s(oe,u,FK(W,oe,m));if(EA(oe))return J5s(oe,u,W,m);if(EIn(oe))return jg(lt(oe.types,Y))}return jUt(u,FK(W,oe,m))}return oe}}function Yhn(u,m){return m&1?!0:m&2?!1:u}function J5s(u,m,v,D){let W=u.target.elementFlags,Y=u.target.fixedLength,oe=Y?FK(v,u,D):D,Be=lt(qQ(u),(Vt,kt)=>{let wr=W[kt];return ktVt&1?2:Vt):Me&8?lt(W,Vt=>Vt&2?1:Vt):W,$e=Yhn(u.target.readonly,yk(m));return k(Be,nn)?nn:Ek(Be,He,$e,u.target.labeledElementDeclarations)}function U5s(u,m,v){let D=Qhn(m,ri,!0,v);return lo(D)?nn:I0(D,Yhn(afe(u),yk(m)))}function Qhn(u,m,v,D){let W=J2e(D,rT(u),m),Y=Cl(iG(u.target||u),W),oe=yk(u);return at&&oe&4&&!uh(Y,49152)?wO(Y,!0):at&&oe&8&&v?Zv(Y,524288):Y}function jUt(u,m,v,D){pe.assert(u.symbol,"anonymous type must have symbol to be instantiated");let W=Ph(u.objectFlags&-1572865|64,u.symbol);if(u.objectFlags&32){W.declaration=u.declaration;let Y=rT(u),oe=UUt(Y);W.typeParameter=oe,m=Y5(tX(Y,oe),m),oe.mapper=m}return u.objectFlags&8388608&&(W.node=u.node),W.target=u,W.mapper=m,W.aliasSymbol=v||u.aliasSymbol,W.aliasTypeArguments=v?D:fZ(u.aliasTypeArguments,m),W.objectFlags|=W.aliasTypeArguments?YOe(W.aliasTypeArguments):0,W}function zUt(u,m,v,D,W){let Y=u.root;if(Y.outerTypeParameters){let oe=lt(Y.outerTypeParameters,He=>G9(He,m)),Be=(v?"C":"")+ew(oe)+NK(D,W),Me=Y.instantiations.get(Be);if(!Me){let He=G1(Y.outerTypeParameters,oe),$e=Y.checkType,Vt=Y.isDistributive?$B(G9($e,He)):void 0;Me=Vt&&$e!==Vt&&Vt.flags&1179648?Xmn(Vt,kt=>OUt(Y,FK($e,kt,He),v),D,W):OUt(Y,He,v,D,W),Y.instantiations.set(Be,Me)}return Me}return u}function Cl(u,m){return u&&m?Xhn(u,m,void 0,void 0):u}function Xhn(u,m,v,D){var W;if(!TO(u))return u;if(ee===100||M>=5e6)return(W=ki)==null||W.instant(ki.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:u.id,instantiationDepth:ee,instantiationCount:M}),Br(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let Y=GYs(m);Y===-1&&kYs(m);let oe=u.id+NK(v,D),Be=f5[Y!==-1?Y:dk-1],Me=Be.get(oe);if(Me)return Me;V++,M++,ee++;let He=K5s(u,m,v,D);return Y===-1?xYs():Be.set(oe,He),ee--,He}function K5s(u,m,v,D){let W=u.flags;if(W&262144)return G9(u,m);if(W&524288){let Y=u.objectFlags;if(Y&52){if(Y&4&&!u.node){let oe=u.resolvedTypeArguments,Be=fZ(oe,m);return Be!==oe?RUt(u.target,Be):u}return Y&1024?j5s(u,m):Y5s(u,m,v,D)}return u}if(W&3145728){let Y=u.flags&1048576?u.origin:void 0,oe=Y&&Y.flags&3145728?Y.types:u.types,Be=fZ(oe,m);if(Be===oe&&v===u.aliasSymbol)return u;let Me=v||u.aliasSymbol,He=v?D:fZ(u.aliasTypeArguments,m);return W&2097152||Y&&Y.flags&2097152?jg(Be,0,Me,He):Ha(Be,1,Me,He)}if(W&4194304)return JN(Cl(u.type,m));if(W&134217728)return DK(u.texts,fZ(u.types,m));if(W&268435456)return Mq(u.symbol,Cl(u.type,m));if(W&8388608){let Y=v||u.aliasSymbol,oe=v?D:fZ(u.aliasTypeArguments,m);return x1(Cl(u.objectType,m),Cl(u.indexType,m),u.accessFlags,void 0,Y,oe)}if(W&16777216)return zUt(u,Y5(u.mapper,m),!1,v,D);if(W&33554432){let Y=Cl(u.baseType,m);if(Use(u))return hUt(Y);let oe=Cl(u.constraint,m);return Y.flags&8650752&&H5(oe)?CUt(Y,oe):oe.flags&3||pg(LK(Y),LK(oe))?Y:Y.flags&8650752?CUt(Y,oe):jg([oe,Y])}return u}function j5s(u,m){let v=Cl(u.mappedType,m);if(!(la(v)&32))return u;let D=Cl(u.constraintType,m);if(!(D.flags&4194304))return u;let W=Smn(Cl(u.source,m),v,D);return W||u}function K2e(u){return u.flags&402915327?u:u.permissiveInstantiation||(u.permissiveInstantiation=Cl(u,pI))}function LK(u){return u.flags&402915327?u:(u.restrictiveInstantiation||(u.restrictiveInstantiation=Cl(u,RI),u.restrictiveInstantiation.restrictiveInstantiation=u.restrictiveInstantiation),u.restrictiveInstantiation)}function z5s(u,m){return oG(u.keyType,Cl(u.type,m),u.isReadonly,u.declaration,u.components)}function wS(u){switch(pe.assert(u.kind!==175||g2(u)),u.kind){case 219:case 220:case 175:case 263:return Jhn(u);case 211:return zt(u.properties,wS);case 210:return zt(u.elements,wS);case 228:return wS(u.whenTrue)||wS(u.whenFalse);case 227:return(u.operatorToken.kind===57||u.operatorToken.kind===61)&&(wS(u.left)||wS(u.right));case 304:return wS(u.initializer);case 218:return wS(u.expression);case 293:return zt(u.properties,wS)||sR(u.parent)&&zt(u.parent.parent.children,wS);case 292:{let{initializer:m}=u;return!!m&&wS(m)}case 295:{let{expression:m}=u;return!!m&&wS(m)}}return!1}function Jhn(u){return sde(u)||q5s(u)}function q5s(u){return u.typeParameters||Zb(u)||!u.body?!1:u.body.kind!==242?wS(u.body):!!TF(u.body,m=>!!m.expression&&wS(m.expression))}function Fot(u){return(ZF(u)||g2(u))&&Jhn(u)}function Uhn(u){if(u.flags&524288){let m=_R(u);if(m.constructSignatures.length||m.callSignatures.length){let v=Ph(16,u.symbol);return v.members=m.members,v.properties=m.properties,v.callSignatures=E,v.constructSignatures=E,v.indexInfos=E,v}}else if(u.flags&2097152)return jg(lt(u.types,Uhn));return u}function cG(u,m){return UN(u,m,d0)}function j2e(u,m){return UN(u,m,d0)?-1:0}function qUt(u,m){return UN(u,m,A0)?-1:0}function $5s(u,m){return UN(u,m,pk)?-1:0}function rX(u,m){return UN(u,m,pk)}function ofe(u,m){return UN(u,m,Sf)}function pg(u,m){return UN(u,m,A0)}function Q5(u,m){return u.flags&1048576?ue(u.types,v=>Q5(v,m)):m.flags&1048576?zt(m.types,v=>Q5(u,v)):u.flags&2097152?zt(u.types,v=>Q5(v,m)):u.flags&58982400?Q5(O_(u)||cn,m):Sk(m)?!!(u.flags&67633152):m===qn?!!(u.flags&67633152)&&!Sk(u):m===Js?!!(u.flags&524288)&&kKt(u):da(u,vs(m))||Fv(m)&&!afe(m)&&Q5(u,AA)}function Zot(u,m){return UN(u,m,Yb)}function rPe(u,m){return Zot(u,m)||Zot(m,u)}function h0(u,m,v,D,W,Y){return Gv(u,m,A0,v,D,W,Y)}function nX(u,m,v,D,W,Y){return $Ut(u,m,A0,v,D,W,Y,void 0)}function $Ut(u,m,v,D,W,Y,oe,Be){return UN(u,m,v)?!0:!D||!z2e(W,u,m,v,Y,oe,Be)?Gv(u,m,v,D,Y,oe,Be):!1}function Khn(u){return!!(u.flags&16777216||u.flags&2097152&&zt(u.types,Khn))}function z2e(u,m,v,D,W,Y,oe){if(!u||Khn(v))return!1;if(!Gv(m,v,D,void 0)&&eMs(u,m,v,D,W,Y,oe))return!0;switch(u.kind){case 235:if(!aEe(u))break;case 295:case 218:return z2e(u.expression,m,v,D,W,Y,oe);case 227:switch(u.operatorToken.kind){case 64:case 28:return z2e(u.right,m,v,D,W,Y,oe)}break;case 211:return cMs(u,m,v,D,Y,oe);case 210:return oMs(u,m,v,D,Y,oe);case 293:return sMs(u,m,v,D,Y,oe);case 220:return tMs(u,m,v,D,Y,oe)}return!1}function eMs(u,m,v,D,W,Y,oe){let Be=rg(m,0),Me=rg(m,1);for(let He of[Me,Be])if(zt(He,$e=>{let Vt=Ad($e);return!(Vt.flags&131073)&&Gv(Vt,v,D,void 0)})){let $e=oe||{};h0(m,v,u,W,Y,$e);let Vt=$e.errors[$e.errors.length-1];return ug(Vt,ho(u,He===Me?Z.Did_you_mean_to_use_new_with_this_expression:Z.Did_you_mean_to_call_this_expression)),!0}return!1}function tMs(u,m,v,D,W,Y){if(eg(u.body)||zt(u.parameters,mf))return!1;let oe=XK(m);if(!oe)return!1;let Be=rg(v,0);if(!B(Be))return!1;let Me=u.body,He=Ad(oe),$e=Ha(lt(Be,Ad));if(!Gv(He,$e,D,void 0)){let Vt=Me&&z2e(Me,He,$e,D,void 0,W,Y);if(Vt)return Vt;let kt=Y||{};if(Gv(He,$e,D,Me,void 0,W,kt),kt.errors)return v.symbol&&B(v.symbol.declarations)&&ug(kt.errors[kt.errors.length-1],ho(v.symbol.declarations[0],Z.The_expected_type_comes_from_the_return_type_of_this_signature)),!(BI(u)&2)&&!Wi(He,"then")&&Gv(LPe(He),$e,D,void 0)&&ug(kt.errors[kt.errors.length-1],ho(u,Z.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function jhn(u,m,v){let D=EO(m,v);if(D)return D;if(m.flags&1048576){let W=imn(u,m);if(W)return EO(W,v)}}function zhn(u,m){EPe(u,m,!1);let v=hfe(u,1);return cSe(),v}function nPe(u,m,v,D,W,Y){let oe=!1;for(let Be of u){let{errorNode:Me,innerExpression:He,nameType:$e,errorMessage:Vt}=Be,kt=jhn(m,v,$e);if(!kt||kt.flags&8388608)continue;let wr=EO(m,$e);if(!wr)continue;let dn=Tot($e,void 0);if(!Gv(wr,kt,D,void 0)){let Sn=He&&z2e(He,wr,kt,D,void 0,W,Y);if(oe=!0,!Sn){let ii=Y||{},Yi=He?zhn(He,wr):wr;if(Wt&&Vot(Yi,kt)){let js=ho(Me,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,ro(Yi),ro(kt));PA.add(js),ii.errors=[js]}else{let js=!!(dn&&(Fg(v,dn)||st).flags&16777216),mo=!!(dn&&(Fg(m,dn)||st).flags&16777216);kt=CZ(kt,js),wr=CZ(wr,js&&mo),Gv(Yi,kt,D,Me,Vt,W,ii)&&Yi!==wr&&Gv(wr,kt,D,Me,Vt,W,ii)}if(ii.errors){let js=ii.errors[ii.errors.length-1],mo=f2($e)?I2($e):void 0,Ji=mo!==void 0?Fg(v,mo):void 0,Mi=!1;if(!Ji){let wo=W2e(v,$e);wo&&wo.declaration&&!ms(wo.declaration).hasNoDefaultLib&&(Mi=!0,ug(js,ho(wo.declaration,Z.The_expected_type_comes_from_this_index_signature)))}if(!Mi&&(Ji&&B(Ji.declarations)||v.symbol&&B(v.symbol.declarations))){let wo=Ji&&B(Ji.declarations)?Ji.declarations[0]:v.symbol.declarations[0];ms(wo).hasNoDefaultLib||ug(js,ho(wo,Z.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,mo&&!($e.flags&8192)?Bc(mo):ro($e),ro(v)))}}}}}return oe}function rMs(u,m,v,D,W,Y){let oe=am(v,Qot),Be=am(v,$e=>!Qot($e)),Me=Be!==Oi?e6t(13,0,Be,void 0):void 0,He=!1;for(let $e=u.next();!$e.done;$e=u.next()){let{errorNode:Vt,innerExpression:kt,nameType:wr,errorMessage:dn}=$e.value,Sn=Me,ii=oe!==Oi?jhn(m,oe,wr):void 0;if(ii&&!(ii.flags&8388608)&&(Sn=Me?Ha([Me,ii]):ii),!Sn)continue;let Yi=EO(m,wr);if(!Yi)continue;let js=Tot(wr,void 0);if(!Gv(Yi,Sn,D,void 0)){let mo=kt&&z2e(kt,Yi,Sn,D,void 0,W,Y);if(He=!0,!mo){let Ji=Y||{},Mi=kt?zhn(kt,Yi):Yi;if(Wt&&Vot(Mi,Sn)){let wo=ho(Vt,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,ro(Mi),ro(Sn));PA.add(wo),Ji.errors=[wo]}else{let wo=!!(js&&(Fg(oe,js)||st).flags&16777216),Ka=!!(js&&(Fg(m,js)||st).flags&16777216);Sn=CZ(Sn,wo),Yi=CZ(Yi,wo&&Ka),Gv(Mi,Sn,D,Vt,dn,W,Ji)&&Mi!==Yi&&Gv(Yi,Sn,D,Vt,dn,W,Ji)}}}}return He}function*nMs(u){if(B(u.properties))for(let m of u.properties)Zz(m)||t8t(Ww(m.name))||(yield{errorNode:m.name,innerExpression:m.initializer,nameType:kE(Ww(m.name))})}function*iMs(u,m){if(!B(u.children))return;let v=0;for(let D=0;D1,ii,Yi;if(wot(!1)!==oi){let mo=ohn(hr);ii=am(wr,Ji=>pg(Ji,mo)),Yi=am(wr,Ji=>!pg(Ji,mo))}else ii=am(wr,Qot),Yi=am(wr,mo=>!Qot(mo));if(Sn){if(ii!==Oi){let mo=Ek(Cat(He,0)),Ji=iMs(He,Me);oe=rMs(Ji,mo,ii,D,W,Y)||oe}else if(!UN(x1(m,kt),wr,D)){oe=!0;let mo=Br(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Vt,ro(wr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(mo)}}else if(Yi!==Oi){let mo=dn[0],Ji=qhn(mo,kt,Me);Ji&&(oe=nPe(function*(){yield Ji}(),m,v,D,W,Y)||oe)}else if(!UN(x1(m,kt),wr,D)){oe=!0;let mo=Br(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Vt,ro(wr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(mo)}}return oe;function Me(){if(!Be){let He=Fp(u.parent.tagName),$e=vPe(YK(u)),Vt=$e===void 0?"children":Bc($e),kt=x1(v,kE(Vt)),wr=Z._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;Be={...wr,key:"!!ALREADY FORMATTED!!",message:iQ(wr,He,Vt,ro(kt))}}return Be}}function*$hn(u,m){let v=B(u.elements);if(v)for(let D=0;DMe:BR(u)>Me))return D&&!(v&8)&&W(Z.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,BR(u),Me),0;u.typeParameters&&u.typeParameters!==m.typeParameters&&(m=u3s(m),u=u_n(u,m,void 0,oe));let $e=GE(u),Vt=ISe(u),kt=ISe(m);(Vt||kt)&&Cl(Vt||kt,Be);let wr=m.declaration?m.declaration.kind:0,dn=!(v&3)&&Qe&&wr!==175&&wr!==174&&wr!==177,Sn=-1,ii=P5(u);if(ii&&ii!==es){let mo=P5(m);if(mo){let Ji=!dn&&oe(ii,mo,!1)||oe(mo,ii,D);if(!Ji)return D&&W(Z.The_this_types_of_each_signature_are_incompatible),0;Sn&=Ji}}let Yi=Vt||kt?Math.min($e,Me):Math.max($e,Me),js=Vt||kt?Yi-1:-1;for(let mo=0;mo=BR(u)&&mo=3&&m[0].flags&32768&&m[1].flags&65536&&zt(m,Sk)?67108864:0)}return!!(u.objectFlags&67108864)}return!1}function zse(u){return!!((u.flags&1048576?u.types[0]:u).flags&32768)}function dMs(u){let m=u.flags&1048576?u.types[0]:u;return!!(m.flags&32768)&&m!==fr}function tmn(u){return u.flags&524288&&!Jb(u)&&Zd(u).length===0&&f0(u).length===1&&!!sG(u,$r)||u.flags&3145728&&ue(u.types,tmn)||!1}function rKt(u,m,v){let D=u.flags&8?nC(u):u,W=m.flags&8?nC(m):m;if(D===W)return!0;if(D.escapedName!==W.escapedName||!(D.flags&256)||!(W.flags&256))return!1;let Y=xg(D)+","+xg(W),oe=_5.get(Y);if(oe!==void 0&&!(oe&2&&v))return!!(oe&1);let Be=fo(W);for(let Me of Zd(fo(D)))if(Me.flags&8){let He=Fg(Be,Me.escapedName);if(!He||!(He.flags&8))return v&&v(Z.Property_0_is_missing_in_type_1,of(Me),ro(Lp(W),void 0,64)),_5.set(Y,2),!1;let $e=UK(yp(Me,307)).value,Vt=UK(yp(He,307)).value;if($e!==Vt){let kt=typeof $e=="string",wr=typeof Vt=="string";if($e!==void 0&&Vt!==void 0){if(v){let dn=kt?`"${jT($e)}"`:$e,Sn=wr?`"${jT(Vt)}"`:Vt;v(Z.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,of(W),of(He),Sn,dn)}return _5.set(Y,2),!1}if(kt||wr){if(v){let dn=$e??Vt;pe.assert(typeof dn=="string");let Sn=`"${jT(dn)}"`;v(Z.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,of(W),of(He),Sn)}return _5.set(Y,2),!1}}}return _5.set(Y,1),!0}function q2e(u,m,v,D){let W=u.flags,Y=m.flags;return Y&1||W&131072||u===Ni||Y&2&&!(v===Sf&&W&1)?!0:Y&131072?!1:!!(W&402653316&&Y&4||W&128&&W&1024&&Y&128&&!(Y&1024)&&u.value===m.value||W&296&&Y&8||W&256&&W&1024&&Y&256&&!(Y&1024)&&u.value===m.value||W&2112&&Y&64||W&528&&Y&16||W&12288&&Y&4096||W&32&&Y&32&&u.symbol.escapedName===m.symbol.escapedName&&rKt(u.symbol,m.symbol,D)||W&1024&&Y&1024&&(W&1048576&&Y&1048576&&rKt(u.symbol,m.symbol,D)||W&2944&&Y&2944&&u.value===m.value&&rKt(u.symbol,m.symbol,D))||W&32768&&(!at&&!(Y&3145728)||Y&49152)||W&65536&&(!at&&!(Y&3145728)||Y&65536)||W&524288&&Y&67108864&&!(v===Sf&&Sk(u)&&!(la(u)&8192))||(v===A0||v===Yb)&&(W&1||W&8&&(Y&32||Y&256&&Y&1024)||W&256&&!(W&1024)&&(Y&32||Y&256&&Y&1024&&u.value===m.value)||AMs(m)))}function UN(u,m,v){if(eX(u)&&(u=u.regularType),eX(m)&&(m=m.regularType),u===m)return!0;if(v!==d0){if(v===Yb&&!(m.flags&131072)&&q2e(m,u,v)||q2e(u,m,v))return!0}else if(!((u.flags|m.flags)&61865984)){if(u.flags!==m.flags)return!1;if(u.flags&67358815)return!0}if(u.flags&524288&&m.flags&524288){let D=v.get(Pot(u,m,0,v,!1));if(D!==void 0)return!!(D&1)}return u.flags&469499904||m.flags&469499904?Gv(u,m,v,void 0):!1}function rmn(u,m){return la(u)&2048&&t8t(m.escapedName)}function iPe(u,m){for(;;){let v=eX(u)?u.regularType:BO(u)?IMs(u,m):la(u)&4?u.node?gZ(u.target,gf(u)):uKt(u)||u:u.flags&3145728?pMs(u,m):u.flags&33554432?m?u.baseType:_Ut(u):u.flags&25165824?dZ(u,m):u;if(v===u)return v;u=v}}function pMs(u,m){let v=$B(u);if(v!==u)return v;if(u.flags&2097152&&fMs(u)){let D=Er(u.types,W=>iPe(W,m));if(D!==u.types)return jg(D)}return u}function fMs(u){let m=!1,v=!1;for(let D of u.types)if(m||(m=!!(D.flags&465829888)),v||(v=!!(D.flags&98304)||Sk(D)),m&&v)return!0;return!1}function IMs(u,m){let v=qQ(u),D=Er(v,W=>W.flags&25165824?dZ(W,m):W);return v!==D?NUt(u.target,D):u}function Gv(u,m,v,D,W,Y,oe){var Be;let Me,He,$e,Vt,kt,wr,dn=0,Sn=0,ii=0,Yi=0,js=!1,mo=0,Ji=0,Mi,wo,Ka=16e6-v.size>>3;pe.assert(v!==d0||!D,"no error reporting in identity checking");let _l=Co(u,m,3,!!D,W);if(wo&&dd(),js){let Qt=Pot(u,m,0,v,!1);v.set(Qt,2|(Ka<=0?32:64)),(Be=ki)==null||Be.instant(ki.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:u.id,targetId:m.id,depth:Sn,targetDepth:ii});let Cr=Ka<=0?Z.Excessive_complexity_comparing_types_0_and_1:Z.Excessive_stack_depth_comparing_types_0_and_1,jr=Br(D||ge,Cr,ro(u),ro(m));oe&&(oe.errors||(oe.errors=[])).push(jr)}else if(Me){if(Y){let jr=Y();jr&&(jne(jr,Me),Me=jr)}let Qt;if(W&&D&&!_l&&u.symbol){let jr=fa(u.symbol);if(jr.originatingImport&&!jp(jr.originatingImport)&&Gv(fo(jr.target),m,v,void 0)){let yi=ho(jr.originatingImport,Z.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);Qt=Ft(Qt,yi)}}let Cr=kw(ms(D),D,Me,Qt);He&&ug(Cr,...He),oe&&(oe.errors||(oe.errors=[])).push(Cr),(!oe||!oe.skipLogging)&&PA.add(Cr)}return D&&oe&&oe.skipLogging&&_l===0&&pe.assert(!!oe.errors,"missed opportunity to interact with error."),_l!==0;function ka(Qt){Me=Qt.errorInfo,Mi=Qt.lastSkippedInfo,wo=Qt.incompatibleStack,mo=Qt.overrideNextErrorInfo,Ji=Qt.skipParentCounter,He=Qt.relatedInfo}function Kc(){return{errorInfo:Me,lastSkippedInfo:Mi,incompatibleStack:wo?.slice(),overrideNextErrorInfo:mo,skipParentCounter:Ji,relatedInfo:He?.slice()}}function Vu(Qt,...Cr){mo++,Mi=void 0,(wo||(wo=[])).push([Qt,...Cr])}function dd(){let Qt=wo||[];wo=void 0;let Cr=Mi;if(Mi=void 0,Qt.length===1){Vl(...Qt[0]),Cr&&P0(void 0,...Cr);return}let jr="",Qn=[];for(;Qt.length;){let[yi,...Xn]=Qt.pop();switch(yi.code){case Z.Types_of_property_0_are_incompatible.code:{jr.indexOf("new ")===0&&(jr=`(${jr})`);let Ti=""+Xn[0];jr.length===0?jr=`${Ti}`:qh(Ti,Hg(Te))?jr=`${jr}.${Ti}`:Ti[0]==="["&&Ti[Ti.length-1]==="]"?jr=`${jr}${Ti}`:jr=`${jr}[${Ti}]`;break}case Z.Call_signature_return_types_0_and_1_are_incompatible.code:case Z.Construct_signature_return_types_0_and_1_are_incompatible.code:case Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(jr.length===0){let Ti=yi;yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?Ti=Z.Call_signature_return_types_0_and_1_are_incompatible:yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(Ti=Z.Construct_signature_return_types_0_and_1_are_incompatible),Qn.unshift([Ti,Xn[0],Xn[1]])}else{let Ti=yi.code===Z.Construct_signature_return_types_0_and_1_are_incompatible.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",Us=yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";jr=`${Ti}${jr}(${Us})`}break}case Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Qn.unshift([Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Xn[0],Xn[1]]);break}case Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Qn.unshift([Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Xn[0],Xn[1],Xn[2]]);break}default:return pe.fail(`Unhandled Diagnostic: ${yi.code}`)}}jr?Vl(jr[jr.length-1]===")"?Z.The_types_returned_by_0_are_incompatible_between_these_types:Z.The_types_of_0_are_incompatible_between_these_types,jr):Qn.shift();for(let[yi,...Xn]of Qn){let Ti=yi.elidedInCompatabilityPyramid;yi.elidedInCompatabilityPyramid=!1,Vl(yi,...Xn),yi.elidedInCompatabilityPyramid=Ti}Cr&&P0(void 0,...Cr)}function Vl(Qt,...Cr){pe.assert(!!D),wo&&dd(),!Qt.elidedInCompatabilityPyramid&&(Ji===0?Me=wu(Me,Qt,...Cr):Ji--)}function vf(Qt,...Cr){Vl(Qt,...Cr),Ji++}function zI(Qt){pe.assert(!!Me),He?He.push(Qt):He=[Qt]}function P0(Qt,Cr,jr){wo&&dd();let[Qn,yi]=Ype(Cr,jr),Xn=Cr,Ti=Qn;if(!(jr.flags&131072)&&$2e(Cr)&&!nKt(jr)&&(Xn=hZ(Cr),pe.assert(!pg(Xn,jr),"generalized source shouldn't be assignable"),Ti=Lse(Xn)),(jr.flags&8388608&&!(Cr.flags&8388608)?jr.objectType.flags:jr.flags)&262144&&jr!==mr&&jr!==ln){let Ro=O_(jr),zo;Ro&&(pg(Xn,Ro)||(zo=pg(Cr,Ro)))?Vl(Z._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,zo?Qn:Ti,yi,ro(Ro)):(Me=void 0,Vl(Z._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,yi,Ti))}if(Qt)Qt===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&Wt&&nmn(Cr,jr).length&&(Qt=Z.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);else if(v===Yb)Qt=Z.Type_0_is_not_comparable_to_type_1;else if(Qn===yi)Qt=Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(Wt&&nmn(Cr,jr).length)Qt=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;else{if(Cr.flags&128&&jr.flags&1048576){let Ro=GQs(Cr,jr);if(Ro){Vl(Z.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,Ti,yi,ro(Ro));return}}Qt=Z.Type_0_is_not_assignable_to_type_1}Vl(Qt,Ti,yi)}function xs(Qt,Cr){let jr=Vse(Qt.symbol)?ro(Qt,Qt.symbol.valueDeclaration):ro(Qt),Qn=Vse(Cr.symbol)?ro(Cr,Cr.symbol.valueDeclaration):ro(Cr);(ym===Qt&&$r===Cr||lf===Qt&&ri===Cr||fI===Qt&&Mn===Cr||$In()===Qt&&ci===Cr)&&Vl(Z._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Qn,jr)}function eo(Qt,Cr,jr){return EA(Qt)?Qt.target.readonly&&cPe(Cr)?(jr&&Vl(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,ro(Qt),ro(Cr)),!1):X5(Cr):afe(Qt)&&cPe(Cr)?(jr&&Vl(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,ro(Qt),ro(Cr)),!1):EA(Cr)?Fv(Qt):!0}function qc(Qt,Cr,jr){return Co(Qt,Cr,3,jr)}function Co(Qt,Cr,jr=3,Qn=!1,yi,Xn=0){if(Qt===Cr)return-1;if(Qt.flags&524288&&Cr.flags&402784252)return v===Yb&&!(Cr.flags&131072)&&q2e(Cr,Qt,v)||q2e(Qt,Cr,v,Qn?Vl:void 0)?-1:(Qn&&pu(Qt,Cr,Qt,Cr,yi),0);let Ti=iPe(Qt,!1),Us=iPe(Cr,!0);if(Ti===Us)return-1;if(v===d0)return Ti.flags!==Us.flags?0:Ti.flags&67358815?-1:(Td(Ti,Us),DSe(Ti,Us,!1,0,jr));if(Ti.flags&262144&&wK(Ti)===Us)return-1;if(Ti.flags&470302716&&Us.flags&1048576){let Ro=Us.types,zo=Ro.length===2&&Ro[0].flags&98304?Ro[1]:Ro.length===3&&Ro[0].flags&98304&&Ro[1].flags&98304?Ro[2]:void 0;if(zo&&!(zo.flags&98304)&&(Us=iPe(zo,!0),Ti===Us))return-1}if(v===Yb&&!(Us.flags&131072)&&q2e(Us,Ti,v)||q2e(Ti,Us,v,Qn?Vl:void 0))return-1;if(Ti.flags&469499904||Us.flags&469499904){if(!(Xn&2)&&Z9(Ti)&&la(Ti)&8192&&jC(Ti,Us,Qn))return Qn&&P0(yi,Ti,Cr.aliasSymbol?Cr:Us),0;let zo=(v!==Yb||bR(Ti))&&!(Xn&2)&&Ti.flags&405405692&&Ti!==qn&&Us.flags&2621440&&sKt(Us)&&(Zd(Ti).length>0||rct(Ti)),za=!!(la(Ti)&2048);if(zo&&!mMs(Ti,Us,za)){if(Qn){let _c=ro(Qt.aliasSymbol?Qt:Ti),iu=ro(Cr.aliasSymbol?Cr:Us),xA=rg(Ti,0),Li=rg(Ti,1);xA.length>0&&Co(Ad(xA[0]),Us,1,!1)||Li.length>0&&Co(Ad(Li[0]),Us,1,!1)?Vl(Z.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,_c,iu):Vl(Z.Type_0_has_no_properties_in_common_with_type_1,_c,iu)}return 0}Td(Ti,Us);let to=Ti.flags&1048576&&Ti.types.length<4&&!(Us.flags&1048576)||Us.flags&1048576&&Us.types.length<4&&!(Ti.flags&469499904)?vh(Ti,Us,Qn,Xn):DSe(Ti,Us,Qn,Xn,jr);if(to)return to}return Qn&&pu(Qt,Cr,Ti,Us,yi),0}function pu(Qt,Cr,jr,Qn,yi){var Xn,Ti;let Us=!!uKt(Qt),Ro=!!uKt(Cr);jr=Qt.aliasSymbol||Us?Qt:jr,Qn=Cr.aliasSymbol||Ro?Cr:Qn;let zo=mo>0;if(zo&&mo--,jr.flags&524288&&Qn.flags&524288){let za=Me;eo(jr,Qn,!0),Me!==za&&(zo=!!Me)}if(jr.flags&524288&&Qn.flags&402784252)xs(jr,Qn);else if(jr.symbol&&jr.flags&524288&&qn===jr)Vl(Z.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(la(jr)&2048&&Qn.flags&2097152){let za=Qn.types,La=oX(pS.IntrinsicAttributes,D),to=oX(pS.IntrinsicClassAttributes,D);if(!lo(La)&&!lo(to)&&(k(za,La)||k(za,to)))return}else Me=lUt(Me,Cr);if(!yi&&zo){let za=Kc();P0(yi,jr,Qn);let La;Me&&Me!==za.errorInfo&&(La={code:Me.code,messageText:Me.messageText}),ka(za),La&&Me&&(Me.canonicalHead=La),Mi=[jr,Qn];return}if(P0(yi,jr,Qn),jr.flags&262144&&((Ti=(Xn=jr.symbol)==null?void 0:Xn.declarations)!=null&&Ti[0])&&!wK(jr)){let za=UUt(jr);if(za.constraint=Cl(Qn,tX(jr,za)),POe(za)){let La=ro(Qn,jr.symbol.declarations[0]);zI(ho(jr.symbol.declarations[0],Z.This_type_parameter_might_need_an_extends_0_constraint,La))}}}function Td(Qt,Cr){if(ki&&Qt.flags&3145728&&Cr.flags&3145728){let jr=Qt,Qn=Cr;if(jr.objectFlags&Qn.objectFlags&32768)return;let yi=jr.types.length,Xn=Qn.types.length;yi*Xn>1e6&&ki.instant(ki.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Qt.id,sourceSize:yi,targetId:Cr.id,targetSize:Xn,pos:D?.pos,end:D?.end})}}function Af(Qt,Cr){return Ha(Kl(Qt,(Qn,yi)=>{var Xn;yi=my(yi);let Ti=yi.flags&3145728?MOe(yi,Cr):KQ(yi,Cr),Us=Ti&&fo(Ti)||((Xn=Oq(yi,Cr))==null?void 0:Xn.type)||wt;return Ft(Qn,Us)},void 0)||E)}function jC(Qt,Cr,jr){var Qn;if(!gSe(Cr)||!Rt&&la(Cr)&4096)return!1;let yi=!!(la(Qt)&2048);if((v===A0||v===Yb)&&(gfe(qn,Cr)||!yi&&IZ(Cr)))return!1;let Xn=Cr,Ti;Cr.flags&1048576&&(Xn=xyn(Qt,Cr,Co)||Y8s(Cr),Ti=Xn.flags&1048576?Xn.types:[Xn]);for(let Us of Zd(Qt))if(SA(Us,Qt.symbol)&&!rmn(Qt,Us)){if(!bat(Xn,Us.escapedName,yi)){if(jr){let Ro=am(Xn,gSe);if(!D)return pe.fail();if(fQ(D)||nI(D)||nI(D.parent)){Us.valueDeclaration&&RN(Us.valueDeclaration)&&ms(D)===ms(Us.valueDeclaration.name)&&(D=Us.valueDeclaration.name);let zo=xl(Us),za=e_n(zo,Ro),La=za?xl(za):void 0;La?Vl(Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,zo,ro(Ro),La):Vl(Z.Property_0_does_not_exist_on_type_1,zo,ro(Ro))}else{let zo=((Qn=Qt.symbol)==null?void 0:Qn.declarations)&&Nc(Qt.symbol.declarations),za;if(Us.valueDeclaration&&ji(Us.valueDeclaration,La=>La===zo)&&ms(zo)===ms(D)){let La=Us.valueDeclaration;pe.assertNode(La,ww);let to=La.name;D=to,Ir(to)&&(za=t_n(to,Ro))}za!==void 0?vf(Z.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,xl(Us),ro(Ro),za):vf(Z.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,xl(Us),ro(Ro))}}return!0}if(Ti&&!Co(fo(Us),Af(Ti,Us.escapedName),3,jr))return jr&&Vu(Z.Types_of_property_0_are_incompatible,xl(Us)),!0}return!1}function SA(Qt,Cr){return Qt.valueDeclaration&&Cr.valueDeclaration&&Qt.valueDeclaration.parent===Cr.valueDeclaration}function vh(Qt,Cr,jr,Qn){if(Qt.flags&1048576){if(Cr.flags&1048576){let yi=Qt.origin;if(yi&&yi.flags&2097152&&Cr.aliasSymbol&&k(yi.types,Cr))return-1;let Xn=Cr.origin;if(Xn&&Xn.flags&1048576&&Qt.aliasSymbol&&k(Xn.types,Qt))return-1}return v===Yb?Jf(Qt,Cr,jr&&!(Qt.flags&402784252),Qn):Wv(Qt,Cr,jr&&!(Qt.flags&402784252),Qn)}if(Cr.flags&1048576)return Ld(rSe(Qt),Cr,jr&&!(Qt.flags&402784252)&&!(Cr.flags&402784252),Qn);if(Cr.flags&2097152)return TS(Qt,Cr,jr,2);if(v===Yb&&Cr.flags&402784252){let yi=Er(Qt.types,Xn=>Xn.flags&465829888?O_(Xn)||cn:Xn);if(yi!==Qt.types){if(Qt=jg(yi),Qt.flags&131072)return 0;if(!(Qt.flags&2097152))return Co(Qt,Cr,1,!1)||Co(Cr,Qt,1,!1)}}return Jf(Qt,Cr,!1,1)}function Mh(Qt,Cr){let jr=-1,Qn=Qt.types;for(let yi of Qn){let Xn=Ld(yi,Cr,!1,0);if(!Xn)return 0;jr&=Xn}return jr}function Ld(Qt,Cr,jr,Qn){let yi=Cr.types;if(Cr.flags&1048576){if(aG(yi,Qt))return-1;if(v!==Yb&&la(Cr)&32768&&!(Qt.flags&1024)&&(Qt.flags&2688||(v===pk||v===Sf)&&Qt.flags&256)){let Ti=Qt===Qt.regularType?Qt.freshType:Qt.regularType,Us=Qt.flags&128?$r:Qt.flags&256?ri:Qt.flags&2048?oo:void 0;return Us&&aG(yi,Us)||Ti&&aG(yi,Ti)?-1:0}let Xn=Gmn(Cr,Qt);if(Xn){let Ti=Co(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}}for(let Xn of yi){let Ti=Co(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}if(jr){let Xn=imn(Qt,Cr,Co);Xn&&Co(Qt,Xn,2,!0,void 0,Qn)}return 0}function TS(Qt,Cr,jr,Qn){let yi=-1,Xn=Cr.types;for(let Ti of Xn){let Us=Co(Qt,Ti,2,jr,void 0,Qn);if(!Us)return 0;yi&=Us}return yi}function Jf(Qt,Cr,jr,Qn){let yi=Qt.types;if(Qt.flags&1048576&&aG(yi,Cr))return-1;let Xn=yi.length;for(let Ti=0;Ti=Ti.types.length&&Xn.length%Ti.types.length===0){let za=Co(Ro,Ti.types[Us%Ti.types.length],3,!1,void 0,Qn);if(za){yi&=za;continue}}let zo=Co(Ro,Cr,1,jr,void 0,Qn);if(!zo)return 0;yi&=zo}return yi}function Efe(Qt=E,Cr=E,jr=E,Qn,yi){if(Qt.length!==Cr.length&&v===d0)return 0;let Xn=Qt.length<=Cr.length?Qt.length:Cr.length,Ti=-1;for(let Us=0;Us(_c|=Li?16:8,to(Li)));let iu;return Yi===3?((Xn=ki)==null||Xn.instant(ki.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:Qt.id,sourceIdStack:kt.map(Li=>Li.id),targetId:Cr.id,targetIdStack:wr.map(Li=>Li.id),depth:Sn,targetDepth:ii}),iu=3):((Ti=ki)==null||Ti.push(ki.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:Qt.id,targetId:Cr.id}),iu=Sfe(Qt,Cr,jr,Qn),(Us=ki)==null||Us.pop()),bu&&(bu=to),yi&1&&Sn--,yi&2&&ii--,Yi=La,iu?(iu===-1||Sn===0&&ii===0)&&xA(iu===-1||iu===3):(v.set(Ro,2|_c),Ka--,xA(!1)),iu;function xA(Li){for(let ta=za;taUs!==Qt)&&(Xn=Co(Ti,Cr,1,!1,void 0,Qn))}Xn&&!(Qn&2)&&Cr.flags&2097152&&!xK(Cr)&&Qt.flags&2621440?(Xn&=zg(Qt,Cr,jr,void 0,!1,0),Xn&&Z9(Qt)&&la(Qt)&8192&&(Xn&=er(Qt,Cr,!1,jr,0))):Xn&&Not(Cr)&&!X5(Cr)&&Qt.flags&2097152&&my(Qt).flags&3670016&&!zt(Qt.types,Ti=>Ti===Cr||!!(la(Ti)&262144))&&(Xn&=zg(Qt,Cr,jr,void 0,!0,Qn))}return Xn&&ka(yi),Xn}function v2(Qt,Cr){let jr=my(W5(Cr)),Qn=[];return rUt(jr,8576,!1,yi=>void Qn.push(Cl(Qt,J2e(Cr.mapper,rT(Cr),yi)))),Ha(Qn)}function kSe(Qt,Cr,jr,Qn,yi){let Xn,Ti,Us=!1,Ro=Qt.flags,zo=Cr.flags;if(v===d0){if(Ro&3145728){let to=Mh(Qt,Cr);return to&&(to&=Mh(Cr,Qt)),to}if(Ro&4194304)return Co(Qt.type,Cr.type,3,!1);if(Ro&8388608&&(Xn=Co(Qt.objectType,Cr.objectType,3,!1))&&(Xn&=Co(Qt.indexType,Cr.indexType,3,!1))||Ro&16777216&&Qt.root.isDistributive===Cr.root.isDistributive&&(Xn=Co(Qt.checkType,Cr.checkType,3,!1))&&(Xn&=Co(Qt.extendsType,Cr.extendsType,3,!1))&&(Xn&=Co(SO(Qt),SO(Cr),3,!1))&&(Xn&=Co(vO(Qt),vO(Cr),3,!1))||Ro&33554432&&(Xn=Co(Qt.baseType,Cr.baseType,3,!1))&&(Xn&=Co(Qt.constraint,Cr.constraint,3,!1)))return Xn;if(Ro&134217728&&Sc(Qt.texts,Cr.texts)){let to=Qt.types,_c=Cr.types;Xn=-1;for(let iu=0;iu!!(_c.flags&262144));){if(Xn=Co(to,Cr,1,!1))return Xn;to=Ky(to)}return 0}}else if(zo&4194304){let to=Cr.type;if(Ro&4194304&&(Xn=Co(to,Qt.type,3,!1)))return Xn;if(EA(to)){if(Xn=Co(Qt,uhn(to),2,jr))return Xn}else{let _c=nUt(to);if(_c){if(Co(Qt,JN(_c,Cr.indexFlags|4),2,jr)===-1)return-1}else if(Jb(to)){let iu=N9(to),xA=vS(to),Li;if(iu&&Yse(to)){let ta=v2(iu,to);Li=Ha([ta,iu])}else Li=iu||xA;if(Co(Qt,Li,2,jr)===-1)return-1}}}else if(zo&8388608){if(Ro&8388608){if((Xn=Co(Qt.objectType,Cr.objectType,3,jr))&&(Xn&=Co(Qt.indexType,Cr.indexType,3,jr)),Xn)return Xn;jr&&(Ti=Me)}if(v===A0||v===Yb){let to=Cr.objectType,_c=Cr.indexType,iu=O_(to)||to,xA=O_(_c)||_c;if(!xK(iu)&&!GK(xA)){let Li=4|(iu!==to?2:0),ta=EO(iu,xA,Li);if(ta){if(jr&&Ti&&ka(yi),Xn=Co(Qt,ta,2,jr,void 0,Qn))return Xn;jr&&Ti&&Me&&(Me=za([Ti])<=za([Me])?Ti:Me)}}}jr&&(Ti=void 0)}else if(Jb(Cr)&&v!==d0){let to=!!Cr.declaration.nameType,_c=iG(Cr),iu=yk(Cr);if(!(iu&8)){if(!to&&_c.flags&8388608&&_c.objectType===Qt&&_c.indexType===rT(Cr))return-1;if(!Jb(Qt)){let xA=to?N9(Cr):vS(Cr),Li=JN(Qt,2),ta=iu&4,Cu=ta?VOe(xA,Li):void 0;if(ta?!(Cu.flags&131072):Co(xA,Li,3)){let Ul=iG(Cr),vA=rT(Cr),pd=Afe(Ul,-98305);if(!to&&pd.flags&8388608&&pd.indexType===vA){if(Xn=Co(Qt,pd.objectType,2,jr))return Xn}else{let au=to?Cu||xA:Cu?jg([Cu,vA]):vA,bm=x1(Qt,au);if(Xn=Co(bm,Ul,3,jr))return Xn}}Ti=Me,ka(yi)}}}else if(zo&16777216){if(Xq(Cr,wr,ii,10))return 3;let to=Cr;if(!to.root.inferTypeParameters&&!k5s(to.root)&&!(Qt.flags&16777216&&Qt.root===to.root)){let _c=!pg(K2e(to.checkType),K2e(to.extendsType)),iu=!_c&&pg(LK(to.checkType),LK(to.extendsType));if((Xn=_c?-1:Co(Qt,SO(to),2,!1,void 0,Qn))&&(Xn&=iu?-1:Co(Qt,vO(to),2,!1,void 0,Qn),Xn))return Xn}}else if(zo&134217728){if(Ro&134217728){if(v===Yb)return oHs(Qt,Cr)?0:-1;Cl(Qt,sm)}if(rat(Qt,Cr))return-1}else if(Cr.flags&268435456&&!(Qt.flags&268435456)&&tat(Qt,Cr))return-1;if(Ro&8650752){if(!(Ro&8388608&&zo&8388608)){let to=wK(Qt)||cn;if(Xn=Co(to,Cr,1,!1,void 0,Qn))return Xn;if(Xn=Co(k1(to,Qt),Cr,1,jr&&to!==cn&&!(zo&Ro&262144),void 0,Qn))return Xn;if(aUt(Qt)){let _c=wK(Qt.indexType);if(_c&&(Xn=Co(x1(Qt.objectType,_c),Cr,1,jr)))return Xn}}}else if(Ro&4194304){let to=ZUt(Qt.type,Qt.indexFlags)&&la(Qt.type)&32;if(Xn=Co(mc,Cr,1,jr&&!to))return Xn;if(to){let _c=Qt.type,iu=N9(_c),xA=iu&&Yse(_c)?v2(iu,_c):iu||vS(_c);if(Xn=Co(xA,Cr,1,jr))return Xn}}else if(Ro&134217728&&!(zo&524288)){if(!(zo&134217728)){let to=O_(Qt);if(to&&to!==Qt&&(Xn=Co(to,Cr,1,jr)))return Xn}}else if(Ro&268435456)if(zo&268435456){if(Qt.symbol!==Cr.symbol)return 0;if(Xn=Co(Qt.type,Cr.type,3,jr))return Xn}else{let to=O_(Qt);if(to&&(Xn=Co(to,Cr,1,jr)))return Xn}else if(Ro&16777216){if(Xq(Qt,kt,Sn,10))return 3;if(zo&16777216){let iu=Qt.root.inferTypeParameters,xA=Qt.extendsType,Li;if(iu){let ta=nSe(iu,void 0,0,qc);lG(ta.inferences,Cr.extendsType,xA,1536),xA=Cl(xA,ta.mapper),Li=ta.mapper}if(cG(xA,Cr.extendsType)&&(Co(Qt.checkType,Cr.checkType,3)||Co(Cr.checkType,Qt.checkType,3))&&((Xn=Co(Cl(SO(Qt),Li),SO(Cr),3,jr))&&(Xn&=Co(vO(Qt),vO(Cr),3,jr)),Xn))return Xn}let to=iUt(Qt);if(to&&(Xn=Co(to,Cr,1,jr)))return Xn;let _c=!(zo&16777216)&&POe(Qt)?mIn(Qt):void 0;if(_c&&(ka(yi),Xn=Co(_c,Cr,1,jr)))return Xn}else{if(v!==pk&&v!==Sf&&OPs(Cr)&&IZ(Qt))return-1;if(Jb(Cr))return Jb(Qt)&&(Xn=zn(Qt,Cr,jr))?Xn:0;let to=!!(Ro&402784252);if(v!==d0)Qt=my(Qt),Ro=Qt.flags;else if(Jb(Qt))return 0;if(la(Qt)&4&&la(Cr)&4&&Qt.target===Cr.target&&!EA(Qt)&&!(Wot(Qt)||Wot(Cr))){if(Yot(Qt))return-1;let _c=oKt(Qt.target);if(_c===E)return 1;let iu=La(gf(Qt),gf(Cr),_c,Qn);if(iu!==void 0)return iu}else{if(afe(Cr)?xE(Qt,X5):Fv(Cr)&&xE(Qt,_c=>EA(_c)&&!_c.target.readonly))return v!==d0?Co(O5(Qt,ri)||hr,O5(Cr,ri)||hr,3,jr):0;if(BO(Qt)&&EA(Cr)&&!BO(Cr)){let _c=XN(Qt);if(_c!==Qt)return Co(_c,Cr,1,jr)}else if((v===pk||v===Sf)&&IZ(Cr)&&la(Cr)&8192&&!IZ(Qt))return 0}if(Ro&2621440&&zo&524288){let _c=jr&&Me===yi.errorInfo&&!to;if(Xn=zg(Qt,Cr,_c,void 0,!1,Qn),Xn&&(Xn&=Bp(Qt,Cr,0,_c,Qn),Xn&&(Xn&=Bp(Qt,Cr,1,_c,Qn),Xn&&(Xn&=er(Qt,Cr,to,_c,Qn)))),Us&&Xn)Me=Ti||Me||yi.errorInfo;else if(Xn)return Xn}if(Ro&2621440&&zo&1048576){let _c=Afe(Cr,36175872);if(_c.flags&1048576){let iu=as(Qt,_c);if(iu)return iu}}}return 0;function za(to){return to?Kl(to,(_c,iu)=>_c+1+za(iu.next),0):0}function La(to,_c,iu,xA){if(Xn=Efe(to,_c,iu,jr,xA))return Xn;if(zt(iu,ta=>!!(ta&24))){Ti=void 0,ka(yi);return}let Li=_c&&CMs(_c,iu);if(Us=!Li,iu!==E&&!Li){if(Us&&!(jr&&zt(iu,ta=>(ta&7)===0)))return 0;Ti=Me,ka(yi)}}}function zn(Qt,Cr,jr){if(v===Yb||(v===d0?yk(Qt)===yk(Cr):qpe(Qt)<=qpe(Cr))){let yi,Xn=vS(Cr),Ti=Cl(vS(Qt),qpe(Qt)<0?qp:sm);if(yi=Co(Xn,Ti,3,jr)){let Us=G1([rT(Qt)],[rT(Cr)]);if(Cl(N9(Qt),Us)===Cl(N9(Cr),Us))return yi&Co(Cl(iG(Qt),Us),iG(Cr),3,jr)}}return 0}function as(Qt,Cr){var jr;let Qn=Zd(Qt),yi=xmn(Qn,Cr);if(!yi)return 0;let Xn=1;for(let La of yi)if(Xn*=GHs(mR(La)),Xn>25)return(jr=ki)==null||jr.instant(ki.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Qt.id,targetId:Cr.id,numCombinations:Xn}),0;let Ti=new Array(yi.length),Us=new Set;for(let La=0;LaLa[iu],!1,0,at||v===Yb))continue e}Qi(zo,_c,bg),to=!0}if(!to)return 0}let za=-1;for(let La of zo)if(za&=zg(Qt,La,!1,Us,!1,0),za&&(za&=Bp(Qt,La,0,!1,0),za&&(za&=Bp(Qt,La,1,!1,0),za&&!(EA(Qt)&&EA(La))&&(za&=er(Qt,La,!1,!1,0)))),!za)return za;return za}function Ms(Qt,Cr){if(!Cr||Qt.length===0)return Qt;let jr;for(let Qn=0;Qn5?Vl(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,ro(Qt),ro(Cr),lt(Xn.slice(0,4),Ti=>xl(Ti)).join(", "),Xn.length-4):Vl(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,ro(Qt),ro(Cr),lt(Xn,Ti=>xl(Ti)).join(", ")),yi&&Me&&mo++)}function zg(Qt,Cr,jr,Qn,yi,Xn){if(v===d0)return iA(Qt,Cr,Qn);let Ti=-1;if(EA(Cr)){if(X5(Qt)){if(!Cr.target.readonly&&(afe(Qt)||EA(Qt)&&Qt.target.readonly))return 0;let La=x9(Qt),to=x9(Cr),_c=EA(Qt)?Qt.target.combinedFlags&4:4,iu=!!(Cr.target.combinedFlags&12),xA=EA(Qt)?Qt.target.minLength:0,Li=Cr.target.minLength;if(!_c&&La=Ul?to-1-Math.min(Em,vA):au,H0=Cr.target.elementFlags[H_];if(H0&8&&!(bm&8))return jr&&Vl(Z.Source_provides_no_match_for_variadic_element_at_position_0_in_target,H_),0;if(bm&8&&!(H0&12))return jr&&Vl(Z.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,au,H_),0;if(H0&1&&!(bm&1))return jr&&Vl(Z.Source_provides_no_match_for_required_element_at_position_0_in_target,H_),0;if(pd&&((bm&12||H0&12)&&(pd=!1),pd&&Qn?.has(""+au)))continue;let zy=CZ(ta[au],!!(bm&H0&2)),EZ=Cu[H_],eM=bm&8&&H0&4?I0(EZ):CZ(EZ,!!(H0&2)),lX=Co(zy,eM,3,jr,void 0,Xn);if(!lX)return jr&&(to>1||La>1)&&(iu&&au>=Ul&&Em>=vA&&Ul!==La-vA-1?Vu(Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Ul,La-vA-1,H_):Vu(Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,au,H_)),0;Ti&=lX}return Ti}if(Cr.target.combinedFlags&12)return 0}let Us=(v===pk||v===Sf)&&!Z9(Qt)&&!Yot(Qt)&&!EA(Qt),Ro=EKt(Qt,Cr,Us,!1);if(Ro)return jr&&sC(Qt,Cr)&&tc(Qt,Cr,Ro,Us),0;if(Z9(Cr)){for(let La of Ms(Zd(Qt),Qn))if(!KQ(Cr,La.escapedName)&&!(fo(La).flags&32768))return jr&&Vl(Z.Property_0_does_not_exist_on_type_1,xl(La),ro(Cr)),0}let zo=Zd(Cr),za=EA(Qt)&&EA(Cr);for(let La of Ms(zo,Qn)){let to=La.escapedName;if(!(La.flags&4194304)&&(!za||bN(to)||to==="length")&&(!yi||La.flags&16777216)){let _c=Fg(Qt,to);if(_c&&_c!==La){let iu=ea(Qt,Cr,_c,La,mR,jr,Xn,v===Yb);if(!iu)return 0;Ti&=iu}}}return Ti}function iA(Qt,Cr,jr){if(!(Qt.flags&524288&&Cr.flags&524288))return 0;let Qn=Ms(D9(Qt),jr),yi=Ms(D9(Cr),jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti of Qn){let Us=KQ(Cr,Ti.escapedName);if(!Us)return 0;let Ro=cKt(Ti,Us,Co);if(!Ro)return 0;Xn&=Ro}return Xn}function Bp(Qt,Cr,jr,Qn,yi){var Xn,Ti;if(v===d0)return $5(Qt,Cr,jr);if(Cr===tp||Qt===tp)return-1;let Us=Qt.symbol&&jN(Qt.symbol.valueDeclaration),Ro=Cr.symbol&&jN(Cr.symbol.valueDeclaration),zo=rg(Qt,Us&&jr===1?0:jr),za=rg(Cr,Ro&&jr===1?0:jr);if(jr===1&&zo.length&&za.length){let xA=!!(zo[0].flags&4),Li=!!(za[0].flags&4);if(xA&&!Li)return Qn&&Vl(Z.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!Di(zo[0],za[0],Qn))return 0}let La=-1,to=jr===1?Ub:M0,_c=la(Qt),iu=la(Cr);if(_c&64&&iu&64&&Qt.symbol===Cr.symbol||_c&4&&iu&4&&Qt.target===Cr.target){pe.assertEqual(zo.length,za.length);for(let xA=0;xAmO(Ul,void 0,262144,jr);return Vl(Z.Type_0_is_not_assignable_to_type_1,Cu(Li),Cu(ta)),Vl(Z.Types_of_construct_signatures_are_incompatible),La}}else e:for(let xA of za){let Li=Kc(),ta=Qn;for(let Cu of zo){let Ul=q5(Cu,xA,!0,ta,yi,to(Cu,xA));if(Ul){La&=Ul,ka(Li);continue e}ta=!1}return ta&&Vl(Z.Type_0_provides_no_match_for_the_signature_1,ro(Qt),mO(xA,void 0,void 0,jr)),0}return La}function sC(Qt,Cr){let jr=HOe(Qt,0),Qn=HOe(Qt,1),yi=D9(Qt);return(jr.length||Qn.length)&&!yi.length?!!(rg(Cr,0).length&&jr.length||rg(Cr,1).length&&Qn.length):!0}function M0(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,ro(jr),ro(Qn)):(jr,Qn)=>Vu(Z.Call_signature_return_types_0_and_1_are_incompatible,ro(jr),ro(Qn))}function Ub(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,ro(jr),ro(Qn)):(jr,Qn)=>Vu(Z.Construct_signature_return_types_0_and_1_are_incompatible,ro(jr),ro(Qn))}function q5(Qt,Cr,jr,Qn,yi,Xn){let Ti=v===pk?16:v===Sf?24:0;return eKt(jr?H2e(Qt):Qt,jr?H2e(Cr):Cr,Ti,Qn,Vl,Xn,Us,sm);function Us(Ro,zo,za){return Co(Ro,zo,3,za,void 0,yi)}}function $5(Qt,Cr,jr){let Qn=rg(Qt,jr),yi=rg(Cr,jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti=0;TiRo.keyType===$r),Us=-1;for(let Ro of Xn){let zo=v!==Sf&&!jr&&Ti&&Ro.type.flags&1?-1:Jb(Qt)&&Ti?Co(iG(Qt),Ro.type,3,Qn):ut(Qt,Ro,Qn,yi);if(!zo)return 0;Us&=zo}return Us}function ut(Qt,Cr,jr,Qn){let yi=W2e(Qt,Cr.keyType);return yi?uct(yi,Cr,jr,Qn):!(Qn&1)&&(v!==Sf||la(Qt)&8192)&&jot(Qt)?r3e(Qt,Cr,jr,Qn):(jr&&Vl(Z.Index_signature_for_type_0_is_missing_in_type_1,ro(Cr.keyType),ro(Qt)),0)}function hi(Qt,Cr){let jr=f0(Qt),Qn=f0(Cr);if(jr.length!==Qn.length)return 0;for(let yi of Qn){let Xn=sG(Qt,yi.keyType);if(!(Xn&&Co(Xn.type,yi.type,3)&&Xn.isReadonly===yi.isReadonly))return 0}return-1}function Di(Qt,Cr,jr){if(!Qt.declaration||!Cr.declaration)return!0;let Qn=eQ(Qt.declaration,6),yi=eQ(Cr.declaration,6);return yi===2||yi===4&&Qn!==2||yi!==4&&!Qn?!0:(jr&&Vl(Z.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,Z5(Qn),Z5(yi)),!1)}}function nKt(u){if(u.flags&16)return!1;if(u.flags&3145728)return!!F(u.types,nKt);if(u.flags&465829888){let m=wK(u);if(m&&m!==u)return nKt(m)}return bR(u)||!!(u.flags&134217728)||!!(u.flags&268435456)}function nmn(u,m){return EA(u)&&EA(m)?E:Zd(m).filter(v=>Vot(Wi(u,v.escapedName),fo(v)))}function Vot(u,m){return!!u&&!!m&&uh(u,32768)&&!!tSe(m)}function hMs(u){return Zd(u).filter(m=>tSe(fo(m)))}function imn(u,m,v=qUt){return xyn(u,m,v)||O8s(u,m)||P8s(u,m)||M8s(u,m)||H8s(u,m)}function iKt(u,m,v){let D=u.types,W=D.map(oe=>oe.flags&402784252?0:-1);for(let[oe,Be]of m){let Me=!1;for(let He=0;He!!v(Vt,$e))?Me=!0:W[He]=3)}for(let He=0;HeW[Be]),0):u;return Y.flags&131072?u:Y}function sKt(u){if(u.flags&524288){let m=_R(u);return m.callSignatures.length===0&&m.constructSignatures.length===0&&m.indexInfos.length===0&&m.properties.length>0&&ue(m.properties,v=>!!(v.flags&16777216))}return u.flags&33554432?sKt(u.baseType):u.flags&2097152?ue(u.types,sKt):!1}function mMs(u,m,v){for(let D of Zd(u))if(bat(m,D.escapedName,v))return!0;return!1}function oKt(u){return u===kA||u===AA||u.objectFlags&8?Ne:omn(u.symbol,u.typeParameters)}function smn(u){return omn(u,fa(u).typeParameters)}function omn(u,m=E){var v,D;let W=fa(u);if(!W.variances){(v=ki)==null||v.push(ki.Phase.CheckTypes,"getVariancesWorker",{arity:m.length,id:UC(Lp(u))});let Y=tK,oe=p9;tK||(tK=!0,p9=Ux.length),W.variances=E;let Be=[];for(let Me of m){let He=aKt(Me),$e=He&16384?He&8192?0:1:He&8192?2:void 0;if($e===void 0){let Vt=!1,kt=!1,wr=bu;bu=ii=>ii?kt=!0:Vt=!0;let dn=sPe(u,Me,bf),Sn=sPe(u,Me,UI);$e=(pg(Sn,dn)?1:0)|(pg(dn,Sn)?2:0),$e===3&&pg(sPe(u,Me,ve),dn)&&($e=4),bu=wr,(Vt||kt)&&(Vt&&($e|=8),kt&&($e|=16))}Be.push($e)}Y||(tK=!1,p9=oe),W.variances=Be,(D=ki)==null||D.pop({variances:Be.map(pe.formatVariance)})}return W.variances}function sPe(u,m,v){let D=tX(m,v),W=Lp(u);if(lo(W))return W;let Y=u.flags&524288?Jse(u,fZ(fa(u).typeParameters,D)):gZ(W,fZ(W.typeParameters,D));return on.add(UC(Y)),Y}function Wot(u){return on.has(UC(u))}function aKt(u){var m;return Kl((m=u.symbol)==null?void 0:m.declarations,(v,D)=>v|l_(D),0)&28672}function CMs(u,m){for(let v=0;v!!(m.flags&262144)||Oot(m))}function bMs(u,m,v,D){let W=[],Y="",oe=Me(u,0),Be=Me(m,0);return`${Y}${oe},${Be}${v}`;function Me(He,$e=0){let Vt=""+He.target.id;for(let kt of gf(He)){if(kt.flags&262144){if(D||_Ms(kt)){let wr=W.indexOf(kt);wr<0&&(wr=W.length,W.push(kt)),Vt+="="+wr;continue}Y="*"}else if($e<4&&Oot(kt)){Vt+="<"+Me(kt,$e+1)+">";continue}Vt+="-"+kt.id}return Vt}}function Pot(u,m,v,D,W){if(D===d0&&u.id>m.id){let oe=u;u=m,m=oe}let Y=v?":"+v:"";return Oot(u)&&Oot(m)?bMs(u,m,Y,W):`${u.id},${m.id}${Y}`}function oPe(u,m){if(aI(u)&6){for(let v of u.links.containingType.types){let D=Fg(v,u.escapedName),W=D&&oPe(D,m);if(W)return W}return}return m(u)}function Qq(u){return u.parent&&u.parent.flags&32?Lp(nC(u)):void 0}function Mot(u){let m=Qq(u),v=m&&tT(m)[0];return v&&Wi(v,u.escapedName)}function EMs(u,m){return oPe(u,v=>{let D=Qq(v);return D?da(D,m):!1})}function SMs(u,m){return!oPe(m,v=>p2(v)&4?!EMs(u,Qq(v)):!1)}function amn(u,m,v){return oPe(m,D=>p2(D,v)&4?!da(u,Qq(D)):!1)?void 0:u}function Xq(u,m,v,D=3){if(v>=D){if((la(u)&96)===96&&(u=cmn(u)),u.flags&2097152)return zt(u.types,Be=>Xq(Be,m,v,D));let W=Hot(u),Y=0,oe=0;for(let Be=0;Be=oe&&(Y++,Y>=D))return!0;oe=Me.id}}}return!1}function cmn(u){let m;for(;(la(u)&96)===96&&(m=W5(u))&&(m.symbol||m.flags&2097152&&zt(m.types,v=>!!v.symbol));)u=m;return u}function lmn(u,m){return(la(u)&96)===96&&(u=cmn(u)),u.flags&2097152?zt(u.types,v=>lmn(v,m)):Hot(u)===m}function Hot(u){if(u.flags&524288&&!vKt(u)){if(la(u)&4&&u.node)return u.node;if(u.symbol&&!(la(u)&16&&u.symbol.flags&32))return u.symbol;if(EA(u))return u.target}if(u.flags&262144)return u.symbol;if(u.flags&8388608){do u=u.objectType;while(u.flags&8388608);return u}return u.flags&16777216?u.root:u}function vMs(u,m){return cKt(u,m,j2e)!==0}function cKt(u,m,v){if(u===m)return-1;let D=p2(u)&6,W=p2(m)&6;if(D!==W)return 0;if(D){if(aoe(u)!==aoe(m))return 0}else if((u.flags&16777216)!==(m.flags&16777216))return 0;return wR(u)!==wR(m)?0:v(fo(u),fo(m))}function BMs(u,m,v){let D=GE(u),W=GE(m),Y=BR(u),oe=BR(m),Be=vk(u),Me=vk(m);return!!(D===W&&Y===oe&&Be===Me||v&&Y<=oe)}function aPe(u,m,v,D,W,Y){if(u===m)return-1;if(!BMs(u,m,v)||B(u.typeParameters)!==B(m.typeParameters))return 0;if(m.typeParameters){let Me=G1(u.typeParameters,m.typeParameters);for(let He=0;Hem|(v.flags&1048576?umn(v.types):v.flags),0)}function RMs(u){if(u.length===1)return u[0];let m=at?Er(u,D=>am(D,W=>!(W.flags&98304))):u,v=TMs(m)?Ha(m):NMs(m);return m===u?v:uPe(v,umn(u)&98304)}function NMs(u){let m=Kl(u,(v,D)=>ofe(v,D)?D:v);return ue(u,v=>v===m||ofe(v,m))?m:Kl(u,(v,D)=>rX(v,D)?D:v)}function DMs(u){return Kl(u,(m,v)=>rX(v,m)?v:m)}function Fv(u){return!!(la(u)&4)&&(u.target===kA||u.target===AA)}function afe(u){return!!(la(u)&4)&&u.target===AA}function X5(u){return Fv(u)||EA(u)}function cPe(u){return Fv(u)&&!afe(u)||EA(u)&&!u.target.readonly}function lPe(u){return Fv(u)?gf(u)[0]:void 0}function F9(u){return Fv(u)||!(u.flags&98304)&&pg(u,w1)}function lKt(u){return cPe(u)||!(u.flags&98305)&&pg(u,I_)}function uKt(u){if(!(la(u)&4)||!(la(u.target)&3))return;if(la(u)&33554432)return la(u)&67108864?u.cachedEquivalentBaseType:void 0;u.objectFlags|=33554432;let m=u.target;if(la(m)&1){let W=qB(m);if(W&&W.expression.kind!==80&&W.expression.kind!==212)return}let v=tT(m);if(v.length!==1||_k(u.symbol).size)return;let D=B(m.typeParameters)?Cl(v[0],G1(m.typeParameters,gf(u).slice(0,m.typeParameters.length))):v[0];return B(gf(u))>B(m.typeParameters)&&(D=k1(D,Ei(gf(u)))),u.objectFlags|=67108864,u.cachedEquivalentBaseType=D}function gmn(u){return at?u===Ui:u===xe}function Yot(u){let m=lPe(u);return!!m&&gmn(m)}function cfe(u){let m;return EA(u)||!!Fg(u,"0")||F9(u)&&!!(m=Wi(u,"length"))&&xE(m,v=>!!(v.flags&256))}function Qot(u){return F9(u)||cfe(u)}function kMs(u,m){let v=Wi(u,""+m);if(v)return v;if(xE(u,EA))return fmn(u,m,Te.noUncheckedIndexedAccess?wt:void 0)}function xMs(u){return!(u.flags&240544)}function bR(u){return!!(u.flags&109472)}function Amn(u){let m=XN(u);return m.flags&2097152?zt(m.types,bR):bR(m)}function GMs(u){return u.flags&2097152&&de(u.types,bR)||u}function $2e(u){return u.flags&16?!0:u.flags&1048576?u.flags&1024?!0:ue(u.types,bR):bR(u)}function hZ(u){return u.flags&1056?got(u):u.flags&402653312?$r:u.flags&256?ri:u.flags&2048?oo:u.flags&512?Mn:u.flags&1048576?FMs(u):u}function FMs(u){let m=`B${UC(u)}`;return Xy(m)??KB(m,Xf(u,hZ))}function gKt(u){return u.flags&402653312?$r:u.flags&288?ri:u.flags&2048?oo:u.flags&512?Mn:u.flags&1048576?Xf(u,gKt):u}function J5(u){return u.flags&1056&&eX(u)?got(u):u.flags&128&&eX(u)?$r:u.flags&256&&eX(u)?ri:u.flags&2048&&eX(u)?oo:u.flags&512&&eX(u)?Mn:u.flags&1048576?Xf(u,J5):u}function dmn(u){return u.flags&8192?ci:u.flags&1048576?Xf(u,dmn):u}function AKt(u,m){return Lat(u,m)||(u=dmn(J5(u))),Cy(u)}function ZMs(u,m,v){if(u&&bR(u)){let D=m?v?bSe(m):m:void 0;u=AKt(u,D)}return u}function dKt(u,m,v,D){if(u&&bR(u)){let W=m?V9(v,m,D):void 0;u=AKt(u,W)}return u}function EA(u){return!!(la(u)&4&&u.target.objectFlags&8)}function BO(u){return EA(u)&&!!(u.target.combinedFlags&8)}function pmn(u){return BO(u)&&u.target.elementFlags.length===1}function Xot(u){return lfe(u,u.target.fixedLength)}function fmn(u,m,v){return Xf(u,D=>{let W=D,Y=Xot(W);return Y?v&&m>=DUt(W.target)?Ha([Y,v]):Y:wt})}function LMs(u){let m=Xot(u);return m&&I0(m)}function lfe(u,m,v=0,D=!1,W=!1){let Y=x9(u)-v;if(m(v&12)===(m.target.elementFlags[D]&12))}function Imn({value:u}){return u.base10Value==="0"}function hmn(u){return am(u,m=>ER(m,4194304))}function WMs(u){return Xf(u,OMs)}function OMs(u){return u.flags&4?Bse:u.flags&8?Fpe:u.flags&64?wse:u===Ys||u===Bs||u.flags&114691||u.flags&128&&u.value===""||u.flags&256&&u.value===0||u.flags&2048&&Imn(u)?u:Oi}function uPe(u,m){let v=m&~u.flags&98304;return v===0?u:Ha(v===32768?[u,wt]:v===65536?[u,Hn]:[u,wt,Hn])}function wO(u,m=!1){pe.assert(at);let v=m?Ue:wt;return u===v||u.flags&1048576&&u.types[0]===v?u:Ha([u,v])}function PMs(u){return py||(py=Kse("NonNullable",524288,void 0)||st),py!==st?Jse(py,[u]):jg([u,Jg])}function mZ(u){return at?PK(u,2097152):u}function mmn(u){return at?Ha([u,In]):u}function Jot(u){return at?iat(u,In):u}function Uot(u,m,v){return v?d3(m)?wO(u):mmn(u):u}function eSe(u,m){return EY(m)?mZ(u):LC(m)?Jot(u):u}function CZ(u,m){return Wt&&m?iat(u,fr):u}function tSe(u){return u===fr||!!(u.flags&1048576)&&u.types[0]===fr}function Kot(u){return Wt?iat(u,fr):Zv(u,524288)}function MMs(u,m){return(u.flags&524)!==0&&(m.flags&28)!==0}function jot(u){let m=la(u);return u.flags&2097152?ue(u.types,jot):!!(u.symbol&&u.symbol.flags&7040&&!(u.symbol.flags&32)&&!rct(u))||!!(m&4194304)||!!(m&1024&&jot(u.source))}function VK(u,m){let v=dA(u.flags,u.escapedName,aI(u)&8);v.declarations=u.declarations,v.parent=u.parent,v.links.type=m,v.links.target=u,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration);let D=fa(u).nameType;return D&&(v.links.nameType=D),v}function HMs(u,m){let v=$u();for(let D of D9(u)){let W=fo(D),Y=m(W);v.set(D.escapedName,Y===W?D:VK(D,Y))}return v}function rSe(u){if(!(Z9(u)&&la(u)&8192))return u;let m=u.regularType;if(m)return m;let v=u,D=HMs(u,rSe),W=Qf(v.symbol,D,v.callSignatures,v.constructSignatures,v.indexInfos);return W.flags=v.flags,W.objectFlags|=v.objectFlags&-8193,u.regularType=W,W}function Cmn(u,m,v){return{parent:u,propertyName:m,siblings:v,resolvedProperties:void 0}}function _mn(u){if(!u.siblings){let m=[];for(let v of _mn(u.parent))if(Z9(v)){let D=KQ(v,u.propertyName);D&&MK(fo(D),W=>{m.push(W)})}u.siblings=m}return u.siblings}function YMs(u){if(!u.resolvedProperties){let m=new Map;for(let v of _mn(u))if(Z9(v)&&!(la(v)&2097152))for(let D of Zd(v))m.set(D.escapedName,D);u.resolvedProperties=Do(m.values())}return u.resolvedProperties}function QMs(u,m){if(!(u.flags&4))return u;let v=fo(u),D=m&&Cmn(m,u.escapedName,void 0),W=pKt(v,D);return W===v?u:VK(u,W)}function XMs(u){let m=pt.get(u.escapedName);if(m)return m;let v=VK(u,Ue);return v.flags|=16777216,pt.set(u.escapedName,v),v}function JMs(u,m){let v=$u();for(let W of D9(u))v.set(W.escapedName,QMs(W,m));if(m)for(let W of YMs(m))v.has(W.escapedName)||v.set(W.escapedName,XMs(W));let D=Qf(u.symbol,v,E,E,Er(f0(u),W=>oG(W.keyType,F1(W.type),W.isReadonly,W.declaration,W.components)));return D.objectFlags|=la(u)&266240,D}function F1(u){return pKt(u,void 0)}function pKt(u,m){if(la(u)&196608){if(m===void 0&&u.widened)return u.widened;let v;if(u.flags&98305)v=hr;else if(Z9(u))v=JMs(u,m);else if(u.flags&1048576){let D=m||Cmn(void 0,void 0,u.types),W=Er(u.types,Y=>Y.flags&98304?Y:pKt(Y,D));v=Ha(W,zt(W,IZ)?2:1)}else u.flags&2097152?v=jg(Er(u.types,F1)):X5(u)&&(v=gZ(u.target,Er(gf(u),F1)));return v&&m===void 0&&(u.widened=v),v||u}return u}function zot(u){var m;let v=!1;if(la(u)&65536){if(u.flags&1048576)if(zt(u.types,IZ))v=!0;else for(let D of u.types)v||(v=zot(D));else if(X5(u))for(let D of gf(u))v||(v=zot(D));else if(Z9(u))for(let D of D9(u)){let W=fo(D);if(la(W)&65536&&(v=zot(W),!v)){let Y=(m=D.declarations)==null?void 0:m.find(oe=>{var Be;return((Be=oe.symbol.valueDeclaration)==null?void 0:Be.parent)===u.symbol.valueDeclaration});Y&&(Br(Y,Z.Object_literal_s_property_0_implicitly_has_an_1_type,xl(D),ro(F1(W))),v=!0)}}}return v}function U5(u,m,v){let D=ro(F1(m));if(Bo(u)&&!hz(ms(u),Te))return;let W;switch(u.kind){case 227:case 173:case 172:W=Rt?Z.Member_0_implicitly_has_an_1_type:Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 170:let Y=u;if(Ir(Y.name)){let oe=lv(Y.name);if((Tg(Y.parent)||Il(Y.parent)||Z_(Y.parent))&&Y.parent.parameters.includes(Y)&&(An(Y,Y.name.escapedText,788968,void 0,!0)||oe&&OAe(oe))){let Be="arg"+Y.parent.parameters.indexOf(Y),Me=Md(Y.name)+(Y.dotDotDotToken?"[]":"");Kw(Rt,u,Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,Be,Me);return}}W=u.dotDotDotToken?Rt?Z.Rest_parameter_0_implicitly_has_an_any_type:Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Rt?Z.Parameter_0_implicitly_has_an_1_type:Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 209:if(W=Z.Binding_element_0_implicitly_has_an_1_type,!Rt)return;break;case 318:Br(u,Z.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 324:Rt&&xie(u.parent)&&Br(u.parent.tagName,Z.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,D);return;case 263:case 175:case 174:case 178:case 179:case 219:case 220:if(Rt&&!u.name){v===3?Br(u,Z.Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation,D):Br(u,Z.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}W=Rt?v===3?Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 201:Rt&&Br(u,Z.Mapped_object_type_implicitly_has_an_any_template_type);return;default:W=Rt?Z.Variable_0_implicitly_has_an_1_type:Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}Kw(Rt,u,W,Md(fl(u)),D)}function UMs(u,m){let v=hat(u);if(!v)return!0;let D=Ad(v),W=BI(u);switch(m){case 1:return W&1?D=V9(1,D,!!(W&2))??D:W&2&&(D=yZ(D)??D),H5(D);case 3:let Y=V9(0,D,!!(W&2));return!!Y&&H5(Y);case 2:let oe=V9(2,D,!!(W&2));return!!oe&&H5(oe)}return!1}function qot(u,m,v){g(()=>{Rt&&la(m)&65536&&(!v||Gd(u)&&UMs(u,v))&&(zot(m)||U5(u,m,v))})}function fKt(u,m,v){let D=GE(u),W=GE(m),Y=fSe(u),oe=fSe(m),Be=oe?W-1:W,Me=Y?Be:Math.min(D,Be),He=P5(u);if(He){let $e=P5(m);$e&&v(He,$e)}for(let $e=0;$em.typeParameter),lt(u.inferences,(m,v)=>()=>(m.isFixed||(zMs(u),$ot(u.inferences),m.isFixed=!0),BKt(u,v))))}function jMs(u){return JUt(lt(u.inferences,m=>m.typeParameter),lt(u.inferences,(m,v)=>()=>BKt(u,v)))}function $ot(u){for(let m of u)m.isFixed||(m.inferredType=void 0)}function mKt(u,m,v){(u.intraExpressionInferenceSites??(u.intraExpressionInferenceSites=[])).push({node:m,type:v})}function zMs(u){if(u.intraExpressionInferenceSites){for(let{node:m,type:v}of u.intraExpressionInferenceSites){let D=m.kind===175?BCn(m,2):jy(m,2);D&&lG(u.inferences,v,D)}u.intraExpressionInferenceSites=void 0}}function CKt(u){return{typeParameter:u,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function bmn(u){return{typeParameter:u.typeParameter,candidates:u.candidates&&u.candidates.slice(),contraCandidates:u.contraCandidates&&u.contraCandidates.slice(),inferredType:u.inferredType,priority:u.priority,topLevel:u.topLevel,isFixed:u.isFixed,impliedArity:u.impliedArity}}function qMs(u){let m=Le(u.inferences,ooe);return m.length?hKt(lt(m,bmn),u.signature,u.flags,u.compareTypes):void 0}function _Kt(u){return u&&u.mapper}function TO(u){let m=la(u);if(m&524288)return!!(m&1048576);let v=!!(u.flags&465829888||u.flags&524288&&!Emn(u)&&(m&4&&(u.node||zt(gf(u),TO))||m&16&&u.symbol&&u.symbol.flags&14384&&u.symbol.declarations||m&12583968)||u.flags&3145728&&!(u.flags&1024)&&!Emn(u)&&zt(u.types,TO));return u.flags&3899393&&(u.objectFlags|=524288|(v?1048576:0)),v}function Emn(u){if(u.aliasSymbol&&!u.aliasTypeArguments){let m=yp(u.aliasSymbol,266);return!!(m&&ji(m.parent,v=>v.kind===308?!0:v.kind===268?!1:"quit"))}return!1}function iSe(u,m,v=0){return!!(u===m||u.flags&3145728&&zt(u.types,D=>iSe(D,m,v))||v<3&&u.flags&16777216&&(iSe(SO(u),m,v+1)||iSe(vO(u),m,v+1)))}function $Ms(u,m){let v=xv(u);return v?!!v.type&&iSe(v.type,m):iSe(Ad(u),m)}function eHs(u){let m=$u();MK(u,D=>{if(!(D.flags&128))return;let W=pp(D.value),Y=dA(4,W);Y.links.type=hr,D.symbol&&(Y.declarations=D.symbol.declarations,Y.valueDeclaration=D.symbol.valueDeclaration),m.set(W,Y)});let v=u.flags&4?[oG($r,Jg,!1)]:E;return Qf(void 0,m,E,E,v)}function Smn(u,m,v){let D=u.id+","+m.id+","+v.id;if(W_.has(D))return W_.get(D);let W=tHs(u,m,v);return W_.set(D,W),W}function yKt(u){return!(la(u)&262144)||Z9(u)&&zt(Zd(u),m=>yKt(fo(m)))||EA(u)&&zt(qQ(u),yKt)}function tHs(u,m,v){if(!(sG(u,$r)||Zd(u).length!==0&&yKt(u)))return;if(Fv(u)){let W=eat(gf(u)[0],m,v);return W?I0(W,afe(u)):void 0}if(EA(u)){let W=lt(qQ(u),oe=>eat(oe,m,v));if(!ue(W,oe=>!!oe))return;let Y=yk(m)&4?Er(u.target.elementFlags,oe=>oe&2?1:oe):u.target.elementFlags;return Ek(W,Y,u.target.readonly,u.target.labeledElementDeclarations)}let D=Ph(1040,void 0);return D.source=u,D.mappedType=m,D.constraintType=v,D}function rHs(u){let m=fa(u);return m.type||(m.type=eat(u.links.propertyType,u.links.mappedType,u.links.constraintType)||cn),m.type}function nHs(u,m,v){let D=x1(v.type,rT(m)),W=iG(m),Y=CKt(D);return lG([Y],u,W),vmn(Y)||cn}function eat(u,m,v){let D=u.id+","+m.id+","+v.id;if(B1.has(D))return B1.get(D)||cn;m5.push(u),iK.push(m);let W=C5;Xq(u,m5,m5.length,2)&&(C5|=1),Xq(m,iK,iK.length,2)&&(C5|=2);let Y;return C5!==3&&(Y=nHs(u,m,v)),m5.pop(),iK.pop(),C5=W,B1.set(D,Y),Y}function*bKt(u,m,v,D){let W=Zd(m);for(let Y of W)if(!rIn(Y)&&(v||!(Y.flags&16777216||aI(Y)&48))){let oe=Fg(u,Y.escapedName);if(!oe)yield Y;else if(D){let Be=fo(Y);if(Be.flags&109472){let Me=fo(oe);Me.flags&1||Cy(Me)===Cy(Be)||(yield Y)}}}}function EKt(u,m,v,D){return oA(bKt(u,m,v,D))}function iHs(u,m){return!(m.target.combinedFlags&8)&&m.target.minLength>u.target.minLength||!(m.target.combinedFlags&12)&&(!!(u.target.combinedFlags&12)||m.target.fixedLengthMq(Y,W),u)===u&&tat(u,m)}return!1}function Tmn(u,m){if(m.flags&2097152)return ue(m.types,v=>v===Eg||Tmn(u,v));if(m.flags&4||pg(u,m))return!0;if(u.flags&128){let v=u.value;return!!(m.flags&8&&wmn(v,!1)||m.flags&64&&cie(v,!1)||m.flags&98816&&v===m.intrinsicName||m.flags&268435456&&tat(u,m)||m.flags&134217728&&rat(u,m))}if(u.flags&134217728){let v=u.texts;return v.length===2&&v[0]===""&&v[1]===""&&pg(u.types[0],m)}return!1}function Rmn(u,m){return u.flags&128?Nmn([u.value],E,m):u.flags&134217728?Sc(u.texts,m.texts)?lt(u.types,(v,D)=>pg(XN(v),XN(m.types[D]))?v:cHs(v)):Nmn(u.texts,u.types,m):void 0}function rat(u,m){let v=Rmn(u,m);return!!v&&ue(v,(D,W)=>Tmn(D,m.types[W]))}function cHs(u){return u.flags&402653317?u:DK(["",""],[u])}function Nmn(u,m,v){let D=u.length-1,W=u[0],Y=u[D],oe=v.texts,Be=oe.length-1,Me=oe[0],He=oe[Be];if(D===0&&W.length0){let js=kt,mo=wr;for(;mo=dn(js).indexOf(Yi,mo),!(mo>=0);){if(js++,js===u.length)return;mo=0}Sn(js,mo),wr+=Yi.length}else if(wr!k(Co,Td)):xs,pu?Le(eo,Td=>!k(pu,Td)):eo]}function js(xs,eo,qc){let Co=xs.length!!Mi(pu));if(!Co||eo&&Co!==eo)return;eo=Co}return eo}function Ka(xs,eo,qc){let Co=0;if(qc&1048576){let pu,Td=xs.flags&1048576?xs.types:[xs],Af=new Array(Td.length),jC=!1;for(let SA of eo)if(Mi(SA))pu=SA,Co++;else for(let vh=0;vhAf[Mh]?void 0:vh);if(SA.length){kt(Ha(SA),pu);return}}}else for(let pu of eo)Mi(pu)?Co++:kt(xs,pu);if(qc&2097152?Co===1:Co>0)for(let pu of eo)Mi(pu)&&wr(xs,pu,1)}function _l(xs,eo,qc){if(qc.flags&1048576||qc.flags&2097152){let Co=!1;for(let pu of qc.types)Co=_l(xs,eo,pu)||Co;return Co}if(qc.flags&4194304){let Co=Mi(qc.type);if(Co&&!Co.isFixed&&!Bmn(xs)){let pu=Smn(xs,eo,qc);pu&&wr(pu,Co.typeParameter,la(xs)&262144?16:8)}return!0}if(qc.flags&262144){wr(JN(xs,xs.pattern?2:0),qc,32);let Co=wK(qc);if(Co&&_l(xs,eo,Co))return!0;let pu=lt(Zd(xs),fo),Td=lt(f0(xs),Af=>Af!==Uc?Af.type:Oi);return kt(Ha(Nn(pu,Td)),iG(eo)),!0}return!1}function ka(xs,eo){if(xs.flags&16777216)kt(xs.checkType,eo.checkType),kt(xs.extendsType,eo.extendsType),kt(SO(xs),SO(eo)),kt(vO(xs),vO(eo));else{let qc=[SO(eo),vO(eo)];Sn(xs,qc,eo.flags,W?64:0)}}function Kc(xs,eo){let qc=Rmn(xs,eo),Co=eo.types;if(qc||ue(eo.texts,pu=>pu.length===0))for(let pu=0;puLd|TS.flags,0);if(!(Mh&4)){let Ld=Td.value;Mh&296&&!wmn(Ld,!0)&&(Mh&=-297),Mh&2112&&!cie(Ld,!0)&&(Mh&=-2113);let TS=Kl(vh,(Jf,gh)=>gh.flags&Mh?Jf.flags&4?Jf:gh.flags&4?Td:Jf.flags&134217728?Jf:gh.flags&134217728&&rat(Td,gh)?Td:Jf.flags&268435456?Jf:gh.flags&268435456&&Ld===Ehn(gh.symbol,Ld)?Td:Jf.flags&128?Jf:gh.flags&128&&gh.value===Ld?gh:Jf.flags&8?Jf:gh.flags&8?yR(+Ld):Jf.flags&32?Jf:gh.flags&32?yR(+Ld):Jf.flags&256?Jf:gh.flags&256&&gh.value===+Ld?gh:Jf.flags&64?Jf:gh.flags&64?aHs(Ld):Jf.flags&2048?Jf:gh.flags&2048&&PW(gh.value)===Ld?gh:Jf.flags&16?Jf:gh.flags&16?Ld==="true"?tn:Ld==="false"?Bs:Mn:Jf.flags&512?Jf:gh.flags&512&&gh.intrinsicName===Ld?gh:Jf.flags&32768?Jf:gh.flags&32768&&gh.intrinsicName===Ld?gh:Jf.flags&65536?Jf:gh.flags&65536&&gh.intrinsicName===Ld?gh:Jf:Jf,Oi);if(!(TS.flags&131072)){kt(TS,Af);continue}}}}kt(Td,Af)}}function Vu(xs,eo){kt(vS(xs),vS(eo)),kt(iG(xs),iG(eo));let qc=N9(xs),Co=N9(eo);qc&&Co&&kt(qc,Co)}function dd(xs,eo){var qc,Co;if(la(xs)&4&&la(eo)&4&&(xs.target===eo.target||Fv(xs)&&Fv(eo))){js(gf(xs),gf(eo),oKt(xs.target));return}if(Jb(xs)&&Jb(eo)&&Vu(xs,eo),la(eo)&32&&!eo.declaration.nameType){let pu=vS(eo);if(_l(xs,eo,pu))return}if(!sHs(xs,eo)){if(X5(xs)){if(EA(eo)){let pu=x9(xs),Td=x9(eo),Af=gf(eo),jC=eo.target.elementFlags;if(EA(xs)&&VMs(xs,eo)){for(let Mh=0;Mh0){let Td=rg(eo,qc),Af=Td.length;for(let jC=0;jC1){let m=Le(u,vKt);if(m.length){let v=Ha(m,2);return Nn(Le(u,D=>!vKt(D)),[v])}}return u}function dHs(u){return u.priority&416?jg(u.contraCandidates):DMs(u.contraCandidates)}function pHs(u,m){let v=AHs(u.candidates),D=gHs(u.typeParameter)||TK(u.typeParameter),W=!D&&u.topLevel&&(u.isFixed||!$Ms(m,u.typeParameter)),Y=D?Er(v,Cy):W?Er(v,J5):v,oe=u.priority&416?Ha(Y,2):RMs(Y);return F1(oe)}function BKt(u,m){let v=u.inferences[m];if(!v.inferredType){let D,W;if(u.signature){let oe=v.candidates?pHs(v,u.signature):void 0,Be=v.contraCandidates?dHs(v):void 0;if(oe||Be){let Me=oe&&(!Be||!(oe.flags&131073)&&zt(v.contraCandidates,He=>pg(oe,He))&&ue(u.inferences,He=>He!==v&&Ky(He.typeParameter)!==v.typeParameter||ue(He.candidates,$e=>pg($e,oe))));D=Me?oe:Be,W=Me?Be:oe}else if(u.flags&1)D=Vn;else{let Me=jQ(v.typeParameter);Me&&(D=Cl(Me,Mhn(P5s(u,m),u.nonFixingMapper)))}}else D=vmn(v);v.inferredType=D||wKt(!!(u.flags&2));let Y=Ky(v.typeParameter);if(Y){let oe=Cl(Y,u.nonFixingMapper);(!D||!u.compareTypes(D,k1(oe,D)))&&(v.inferredType=W&&u.compareTypes(W,k1(oe,W))?W:oe)}FYs()}return v.inferredType}function wKt(u){return u?hr:cn}function TKt(u){let m=[];for(let v=0;vp_(m)||PB(m)||bh(m)))}function gPe(u,m,v,D){switch(u.kind){case 80:if(!zL(u)){let oe=O0(u);return oe!==st?`${D?id(D):"-1"}|${UC(m)}|${UC(v)}|${xg(oe)}`:void 0}case 110:return`0|${D?id(D):"-1"}|${UC(m)}|${UC(v)}`;case 236:case 218:return gPe(u.expression,m,v,D);case 167:let W=gPe(u.left,m,v,D);return W&&`${W}.${u.right.escapedText}`;case 212:case 213:let Y=WK(u);if(Y!==void 0){let oe=gPe(u.expression,m,v,D);return oe&&`${oe}.${Y}`}if(Qg(u)&&Ir(u.argumentExpression)){let oe=O0(u.argumentExpression);if(Jq(oe)||aSe(oe)&&!oSe(oe)){let Be=gPe(u.expression,m,v,D);return Be&&`${Be}.@${xg(oe)}`}}break;case 207:case 208:case 263:case 219:case 220:case 175:return`${id(u)}#${UC(m)}`}}function __(u,m){switch(m.kind){case 218:case 236:return __(u,m.expression);case 227:return zm(m)&&__(u,m.left)||po(m)&&m.operatorToken.kind===28&&__(u,m.right)}switch(u.kind){case 237:return m.kind===237&&u.keywordToken===m.keywordToken&&u.name.escapedText===m.name.escapedText;case 80:case 81:return zL(u)?m.kind===110:m.kind===80&&O0(u)===O0(m)||(nc(m)||mg(m))&&fn(O0(u))===Uo(m);case 110:return m.kind===110;case 108:return m.kind===108;case 236:case 218:case 239:return __(u.expression,m);case 212:case 213:let v=WK(u);if(v!==void 0){let D=bp(m)?WK(m):void 0;if(D!==void 0)return D===v&&__(u.expression,m.expression)}if(Qg(u)&&Qg(m)&&Ir(u.argumentExpression)&&Ir(m.argumentExpression)){let D=O0(u.argumentExpression);if(D===O0(m.argumentExpression)&&(Jq(D)||aSe(D)&&!oSe(D)))return __(u.expression,m.expression)}break;case 167:return bp(m)&&u.right.escapedText===WK(m)&&__(u.left,m.expression);case 227:return po(u)&&u.operatorToken.kind===28&&__(u.right,m)}return!1}function WK(u){if(jo(u))return u.name.escapedText;if(Qg(u))return fHs(u);if(mg(u)){let m=B9(u);return m?pp(m):void 0}if(Si(u))return""+u.parent.parameters.indexOf(u)}function NKt(u){return u.flags&8192?u.escapedName:u.flags&384?pp(""+u.value):void 0}function fHs(u){return h1(u.argumentExpression)?pp(u.argumentExpression.text):Hd(u.argumentExpression)?IHs(u.argumentExpression):void 0}function IHs(u){let m=NI(u,111551,!0);if(!m||!(Jq(m)||m.flags&8))return;let v=m.valueDeclaration;if(v===void 0)return;let D=yO(v);if(D){let W=NKt(D);if(W!==void 0)return W}if(d1(v)&&oZ(v,u)){let W=yne(v);if(W){let Y=Nu(v.parent)?tG(v):M_(W);return Y&&NKt(Y)}if(YF(v))return BW(v.name)}}function kmn(u,m){for(;bp(u);)if(u=u.expression,__(u,m))return!0;return!1}function OK(u,m){for(;LC(u);)if(u=u.expression,__(u,m))return!0;return!1}function ufe(u,m){if(u&&u.flags&1048576){let v=vIn(u,m);if(v&&aI(v)&2)return v.links.isDiscriminantProperty===void 0&&(v.links.isDiscriminantProperty=(v.links.checkFlags&192)===192&&!H5(fo(v))),!!v.links.isDiscriminantProperty}return!1}function xmn(u,m){let v;for(let D of u)if(ufe(m,D.escapedName)){if(v){v.push(D);continue}v=[D]}return v}function hHs(u,m){let v=new Map,D=0;for(let W of u)if(W.flags&61603840){let Y=Wi(W,m);if(Y){if(!$2e(Y))return;let oe=!1;MK(Y,Be=>{let Me=UC(Cy(Be)),He=v.get(Me);He?He!==cn&&(v.set(Me,cn),oe=!0):v.set(Me,W)}),oe||D++}}return D>=10&&D*2>=u.length?v:void 0}function APe(u){let m=u.types;if(!(m.length<10||la(u)&32768||ze(m,v=>!!(v.flags&59506688))<10)){if(u.keyPropertyName===void 0){let v=F(m,W=>W.flags&59506688?F(Zd(W),Y=>bR(fo(Y))?Y.escapedName:void 0):void 0),D=v&&hHs(m,v);u.keyPropertyName=D?v:"",u.constituentMap=D}return u.keyPropertyName.length?u.keyPropertyName:void 0}}function dPe(u,m){var v;let D=(v=u.constituentMap)==null?void 0:v.get(UC(Cy(m)));return D!==cn?D:void 0}function Gmn(u,m){let v=APe(u),D=v&&Wi(m,v);return D&&dPe(u,D)}function mHs(u,m){let v=APe(u),D=v&&de(m.properties,Y=>Y.symbol&&Y.kind===304&&Y.symbol.escapedName===v&&bPe(Y.initializer)),W=D&&MPe(D.initializer);return W&&dPe(u,W)}function Fmn(u,m){return __(u,m)||kmn(u,m)}function Zmn(u,m){if(u.arguments){for(let v of u.arguments)if(Fmn(m,v)||OK(v,m))return!0}return!!(u.expression.kind===212&&Fmn(m,u.expression.expression))}function DKt(u){return u.id<=0&&(u.id=Utn,Utn++),u.id}function CHs(u,m){if(!(u.flags&1048576))return pg(u,m);for(let v of u.types)if(pg(v,m))return!0;return!1}function _Hs(u,m){if(u===m)return u;if(m.flags&131072)return m;let v=`A${UC(u)},${UC(m)}`;return Xy(v)??KB(v,yHs(u,m))}function yHs(u,m){let v=am(u,W=>CHs(m,W)),D=m.flags&512&&eX(m)?Xf(v,Yq):v;return pg(m,D)?D:u}function kKt(u){if(la(u)&256)return!1;let m=_R(u);return!!(m.callSignatures.length||m.constructSignatures.length||m.members.get("bind")&&rX(u,Js))}function qse(u,m){return xKt(u,m)&m}function ER(u,m){return qse(u,m)!==0}function xKt(u,m){u.flags&467927040&&(u=O_(u)||cn);let v=u.flags;if(v&268435460)return at?16317953:16776705;if(v&134217856){let D=v&128&&u.value==="";return at?D?12123649:7929345:D?12582401:16776705}if(v&40)return at?16317698:16776450;if(v&256){let D=u.value===0;return at?D?12123394:7929090:D?12582146:16776450}if(v&64)return at?16317188:16775940;if(v&2048){let D=Imn(u);return at?D?12122884:7928580:D?12581636:16775940}return v&16?at?16316168:16774920:v&528?at?u===Bs||u===Ys?12121864:7927560:u===Bs||u===Ys?12580616:16774920:v&524288?m&(at?83427327:83886079)?la(u)&16&&IZ(u)?at?83427327:83886079:kKt(u)?at?7880640:16728e3:at?7888800:16736160:0:v&16384?9830144:v&32768?26607360:v&65536?42917664:v&12288?at?7925520:16772880:v&67108864?at?7888800:16736160:v&131072?0:v&1048576?Kl(u.types,(D,W)=>D|xKt(W,m),0):v&2097152?bHs(u,m):83886079}function bHs(u,m){let v=uh(u,402784252),D=0,W=134217727;for(let Y of u.types)if(!(v&&Y.flags&524288)){let oe=xKt(Y,m);D|=oe,W&=oe}return D&8256|W&134209471}function Zv(u,m){return am(u,v=>ER(v,m))}function PK(u,m){let v=GKt(Zv(at&&u.flags&2?NA:u,m));if(at)switch(m){case 524288:return Lmn(v,65536,131072,33554432,Hn);case 1048576:return Lmn(v,131072,65536,16777216,wt);case 2097152:case 4194304:return Xf(v,D=>ER(D,262144)?PMs(D):D)}return v}function Lmn(u,m,v,D,W){let Y=qse(u,50528256);if(!(Y&m))return u;let oe=Ha([Jg,W]);return Xf(u,Be=>ER(Be,m)?jg([Be,!(Y&D)&&ER(Be,v)?oe:Jg]):Be)}function GKt(u){return u===NA?cn:u}function FKt(u,m){return m?Ha([rp(u),M_(m)]):u}function Vmn(u,m){var v;let D=AZ(m);if(!f2(D))return nn;let W=I2(D);return Wi(u,W)||sSe((v=Oq(u,W))==null?void 0:v.type)||nn}function Wmn(u,m){return xE(u,cfe)&&kMs(u,m)||sSe(L9(65,u,wt,void 0))||nn}function sSe(u){return u&&(Te.noUncheckedIndexedAccess?Ha([u,fr]):u)}function Omn(u){return I0(L9(65,u,wt,void 0)||nn)}function EHs(u){return u.parent.kind===210&&ZKt(u.parent)||u.parent.kind===304&&ZKt(u.parent.parent)?FKt(pPe(u),u.right):M_(u.right)}function ZKt(u){return u.parent.kind===227&&u.parent.left===u||u.parent.kind===251&&u.parent.initializer===u}function SHs(u,m){return Wmn(pPe(u),u.elements.indexOf(m))}function vHs(u){return Omn(pPe(u.parent))}function Pmn(u){return Vmn(pPe(u.parent),u.name)}function BHs(u){return FKt(Pmn(u),u.objectAssignmentInitializer)}function pPe(u){let{parent:m}=u;switch(m.kind){case 250:return $r;case 251:return KPe(m)||nn;case 227:return EHs(m);case 221:return wt;case 210:return SHs(m,u);case 231:return vHs(m);case 304:return Pmn(m);case 305:return BHs(m)}return nn}function wHs(u){let m=u.parent,v=Hmn(m.parent),D=m.kind===207?Vmn(v,u.propertyName||u.name):u.dotDotDotToken?Omn(v):Wmn(v,m.elements.indexOf(u));return FKt(D,u.initializer)}function Mmn(u){return sa(u).resolvedType||M_(u)}function THs(u){return u.initializer?Mmn(u.initializer):u.parent.parent.kind===250?$r:u.parent.parent.kind===251&&KPe(u.parent.parent)||nn}function Hmn(u){return u.kind===261?THs(u):wHs(u)}function RHs(u){return u.kind===261&&u.initializer&&T9(u.initializer)||u.kind!==209&&u.parent.kind===227&&T9(u.parent.right)}function iX(u){switch(u.kind){case 218:return iX(u.expression);case 227:switch(u.operatorToken.kind){case 64:case 76:case 77:case 78:return iX(u.left);case 28:return iX(u.right)}}return u}function Ymn(u){let{parent:m}=u;return m.kind===218||m.kind===227&&m.operatorToken.kind===64&&m.left===u||m.kind===227&&m.operatorToken.kind===28&&m.right===u?Ymn(m):u}function NHs(u){return u.kind===297?Cy(M_(u.expression)):Oi}function nat(u){let m=sa(u);if(!m.switchTypes){m.switchTypes=[];for(let v of u.caseBlock.clauses)m.switchTypes.push(NHs(v))}return m.switchTypes}function Qmn(u){if(zt(u.caseBlock.clauses,v=>v.kind===297&&!_A(v.expression)))return;let m=[];for(let v of u.caseBlock.clauses){let D=v.kind===297?v.expression.text:void 0;m.push(D&&!k(m,D)?D:void 0)}return m}function DHs(u,m){return u.flags&1048576?!F(u.types,v=>!k(m,v)):k(m,u)}function gfe(u,m){return!!(u===m||u.flags&131072||m.flags&1048576&&kHs(u,m))}function kHs(u,m){if(u.flags&1048576){for(let v of u.types)if(!aG(m.types,v))return!1;return!0}return u.flags&1056&&got(u)===m?!0:aG(m.types,u)}function MK(u,m){return u.flags&1048576?F(u.types,m):m(u)}function Lv(u,m){return u.flags&1048576?zt(u.types,m):m(u)}function xE(u,m){return u.flags&1048576?ue(u.types,m):m(u)}function xHs(u,m){return u.flags&3145728?ue(u.types,m):m(u)}function am(u,m){if(u.flags&1048576){let v=u.types,D=Le(v,m);if(D===v)return u;let W=u.origin,Y;if(W&&W.flags&1048576){let oe=W.types,Be=Le(oe,Me=>!!(Me.flags&1048576)||m(Me));if(oe.length-Be.length===v.length-D.length){if(Be.length===1)return Be[0];Y=kUt(1048576,Be)}}return GUt(D,u.objectFlags&16809984,void 0,void 0,Y)}return u.flags&131072||m(u)?u:Oi}function iat(u,m){return am(u,v=>v!==m)}function GHs(u){return u.flags&1048576?u.types.length:1}function Xf(u,m,v){if(u.flags&131072)return u;if(!(u.flags&1048576))return m(u);let D=u.origin,W=D&&D.flags&1048576?D.types:u.types,Y,oe=!1;for(let Be of W){let Me=Be.flags&1048576?Xf(Be,m,v):m(Be);oe||(oe=Be!==Me),Me&&(Y?Y.push(Me):Y=[Me])}return oe?Y&&Ha(Y,v?0:1):u}function Xmn(u,m,v,D){return u.flags&1048576&&v?Ha(lt(u.types,m),1,v,D):Xf(u,m)}function Afe(u,m){return am(u,v=>(v.flags&m)!==0)}function Jmn(u,m){return uh(u,134217804)&&uh(m,402655616)?Xf(u,v=>v.flags&4?Afe(m,402653316):kK(v)&&!uh(m,402653188)?Afe(m,128):v.flags&8?Afe(m,264):v.flags&64?Afe(m,2112):v):u}function $se(u){return u.flags===0}function HK(u){return u.flags===0?u.type:u}function eoe(u,m){return m?{flags:0,type:u.flags&131072?Vn:u}:u}function FHs(u){let m=Ph(256);return m.elementType=u,m}function LKt(u){return Wn[u.id]||(Wn[u.id]=FHs(u))}function Umn(u,m){let v=rSe(hZ(MPe(m)));return gfe(v,u.elementType)?u:LKt(Ha([u.elementType,v]))}function ZHs(u){return u.flags&131072?YC:I0(u.flags&1048576?Ha(u.types,2):u)}function LHs(u){return u.finalArrayType||(u.finalArrayType=ZHs(u.elementType))}function fPe(u){return la(u)&256?LHs(u):u}function VHs(u){return la(u)&256?u.elementType:Oi}function WHs(u){let m=!1;for(let v of u)if(!(v.flags&131072)){if(!(la(v)&256))return!1;m=!0}return m}function Kmn(u){let m=Ymn(u),v=m.parent,D=jo(v)&&(v.name.escapedText==="length"||v.parent.kind===214&&Ir(v.name)&&rbe(v.name)),W=v.kind===213&&v.expression===m&&v.parent.kind===227&&v.parent.operatorToken.kind===64&&v.parent.left===v&&!RF(v.parent)&&P_(M_(v.argumentExpression),296);return D||W}function OHs(u){return(nc(u)||pi(u)||ss(u)||Si(u))&&!!(Zh(u)||Bo(u)&&XT(u)&&u.initializer&&ZF(u.initializer)&&Zb(u.initializer))}function sat(u,m){if(u=Oh(u),u.flags&8752)return fo(u);if(u.flags&7){if(aI(u)&262144){let D=u.links.syntheticOrigin;if(D&&sat(D))return fo(u)}let v=u.valueDeclaration;if(v){if(OHs(v))return fo(u);if(nc(v)&&v.parent.parent.kind===251){let D=v.parent.parent,W=IPe(D.expression,void 0);if(W){let Y=D.awaitModifier?15:13;return L9(Y,W,wt,void 0)}}m&&ug(m,ho(v,Z._0_needs_an_explicit_type_annotation,xl(u)))}}}function IPe(u,m){if(!(u.flags&67108864))switch(u.kind){case 80:let v=fn(O0(u));return sat(v,m);case 110:return aYs(u);case 108:return gat(u);case 212:{let D=IPe(u.expression,m);if(D){let W=u.name,Y;if(p(W)){if(!D.symbol)return;Y=Fg(D,Fne(D.symbol,W.escapedText))}else Y=Fg(D,W.escapedText);return Y&&sat(Y,m)}return}case 218:return IPe(u.expression,m)}}function hPe(u){let m=sa(u),v=m.effectsSignature;if(v===void 0){let D;if(po(u)){let oe=roe(u.right);D=L8t(oe)}else u.parent.kind===245?D=IPe(u.expression,void 0):u.expression.kind!==108&&(LC(u)?D=KN(eSe(Ml(u.expression),u.expression),u.expression):D=roe(u.expression));let W=rg(D&&my(D)||cn,0),Y=W.length===1&&!W[0].typeParameters?W[0]:zt(W,jmn)?ioe(u):void 0;v=m.effectsSignature=Y&&jmn(Y)?Y:Za}return v===Za?void 0:v}function jmn(u){return!!(xv(u)||u.declaration&&(Qse(u.declaration)||cn).flags&131072)}function PHs(u,m){if(u.kind===1||u.kind===3)return m.arguments[u.parameterIndex];let v=JA(m.expression);return bp(v)?JA(v.expression):void 0}function MHs(u){let m=ji(u,xJ),v=ms(u),D=rs(v,m.statements.pos);PA.add(rm(v,D.start,D.length,Z.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function mPe(u){let m=oat(u,!1);return $a=u,nu=m,m}function CPe(u){let m=JA(u,!0);return m.kind===97||m.kind===227&&(m.operatorToken.kind===56&&(CPe(m.left)||CPe(m.right))||m.operatorToken.kind===57&&CPe(m.left)&&CPe(m.right))}function oat(u,m){for(;;){if(u===$a)return nu;let v=u.flags;if(v&4096){if(!m){let D=DKt(u),W=hq[D];return W!==void 0?W:hq[D]=oat(u,!0)}m=!1}if(v&368)u=u.antecedent;else if(v&512){let D=hPe(u.node);if(D){let W=xv(D);if(W&&W.kind===3&&!W.type){let Y=u.node.arguments[W.parameterIndex];if(Y&&CPe(Y))return!1}if(Ad(D).flags&131072)return!1}u=u.antecedent}else{if(v&4)return zt(u.antecedent,D=>oat(D,!1));if(v&8){let D=u.antecedent;if(D===void 0||D.length===0)return!1;u=D[0]}else if(v&128){let D=u.node;if(D.clauseStart===D.clauseEnd&&M_n(D.switchStatement))return!1;u=u.antecedent}else if(v&1024){$a=void 0;let D=u.node.target,W=D.antecedent;D.antecedent=u.node.antecedents;let Y=oat(u.antecedent,!1);return D.antecedent=W,Y}else return!(v&1)}}}function aat(u,m){for(;;){let v=u.flags;if(v&4096){if(!m){let D=DKt(u),W=ZQ[D];return W!==void 0?W:ZQ[D]=aat(u,!0)}m=!1}if(v&496)u=u.antecedent;else if(v&512){if(u.node.expression.kind===108)return!0;u=u.antecedent}else{if(v&4)return ue(u.antecedent,D=>aat(D,!1));if(v&8)u=u.antecedent[0];else if(v&1024){let D=u.node.target,W=D.antecedent;D.antecedent=u.node.antecedents;let Y=aat(u.antecedent,!1);return D.antecedent=W,Y}else return!!(v&1)}}}function VKt(u){switch(u.kind){case 110:return!0;case 80:if(!zL(u)){let v=O0(u);return Jq(v)||aSe(v)&&!oSe(v)||!!v.valueDeclaration&&jA(v.valueDeclaration)}break;case 212:case 213:return VKt(u.expression)&&wR(sa(u).resolvedSymbol||st);case 207:case 208:let m=Fw(u.parent);return Si(m)||ULe(m)?!WKt(m):nc(m)&&NSe(m)}return!1}function _Z(u,m,v=m,D,W=(Y=>(Y=Gs(u,cU))==null?void 0:Y.flowNode)()){let Y,oe=!1,Be=0;if(Yc)return nn;if(!W)return m;ru++;let Me=ao,He=HK(kt(W));ao=Me;let $e=la(He)&256&&Kmn(u)?YC:fPe(He);if($e===gs||u.parent&&u.parent.kind===236&&!($e.flags&131072)&&Zv($e,2097152).flags&131072)return m;return $e;function Vt(){return oe?Y:(oe=!0,Y=gPe(u,m,v,D))}function kt(zn){var as;if(Be===2e3)return(as=ki)==null||as.instant(ki.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:zn.id}),Yc=!0,MHs(u),nn;Be++;let Ms;for(;;){let go=zn.flags;if(go&4096){for(let tc=Me;tc=0&&Ms.parameterIndex!(tc.flags&163840)):as.kind===222&&OK(as.expression,u)&&(go=Td(go,zn.node,tc=>!(tc.flags&131072||tc.flags&128&&tc.value==="undefined"))));let ea=_l(as,go);ea&&(go=Vu(go,ea,zn.node))}return eoe(go,$se(Ms))}function Ji(zn){let as=[],Ms=!1,go=!1,ea;for(let tc of zn.antecedent){if(!ea&&tc.flags&128&&tc.node.clauseStart===tc.node.clauseEnd){ea=tc;continue}let zg=kt(tc),iA=HK(zg);if(iA===m&&m===v)return iA;Qi(as,iA),gfe(iA,v)||(Ms=!0),$se(zg)&&(go=!0)}if(ea){let tc=kt(ea),zg=HK(tc);if(!(zg.flags&131072)&&!k(as,zg)&&!M_n(ea.node.switchStatement)){if(zg===m&&m===v)return zg;as.push(zg),gfe(zg,v)||(Ms=!0),$se(tc)&&(go=!0)}}return eoe(wo(as,Ms?2:1),go)}function Mi(zn){let as=DKt(zn),Ms=Tse[as]||(Tse[as]=new Map),go=Vt();if(!go)return m;let ea=Ms.get(go);if(ea)return ea;for(let sC=Po;sC{let sC=Ba(Bp,go)||cn;return!(sC.flags&131072)&&!(iA.flags&131072)&&rPe(iA,sC)})}function Kc(zn,as,Ms,go,ea){if((Ms===37||Ms===38)&&zn.flags&1048576){let tc=APe(zn);if(tc&&tc===WK(as)){let zg=dPe(zn,M_(go));if(zg)return Ms===(ea?37:38)?zg:bR(Wi(zg,tc)||cn)?iat(zn,zg):zn}}return ka(zn,as,tc=>qc(tc,Ms,go,ea))}function Vu(zn,as,Ms){if(Ms.clauseStartdPe(zn,tc)||cn));if(ea!==cn)return ea}return ka(zn,as,go=>Af(go,Ms))}function dd(zn,as,Ms){if(__(u,as))return PK(zn,Ms?4194304:8388608);at&&Ms&&OK(as,u)&&(zn=PK(zn,2097152));let go=_l(as,zn);return go?ka(zn,go,ea=>Zv(ea,Ms?4194304:8388608)):zn}function Vl(zn,as,Ms){let go=Fg(zn,as);return go?!!(go.flags&16777216||aI(go)&48)||Ms:!!Oq(zn,as)||!Ms}function vf(zn,as,Ms){let go=I2(as);if(Lv(zn,tc=>Vl(tc,go,!0)))return am(zn,tc=>Vl(tc,go,Ms));if(Ms){let tc=Q3s();if(tc)return jg([zn,Jse(tc,[as,cn])])}return zn}function zI(zn,as,Ms,go,ea){return ea=ea!==(Ms.kind===112)!=(go!==38&&go!==36),v2(zn,as,ea)}function P0(zn,as,Ms){switch(as.operatorToken.kind){case 64:case 76:case 77:case 78:return dd(v2(zn,as.right,Ms),as.left,Ms);case 35:case 36:case 37:case 38:let go=as.operatorToken.kind,ea=iX(as.left),tc=iX(as.right);if(ea.kind===222&&_A(tc))return Co(zn,ea,go,tc,Ms);if(tc.kind===222&&_A(ea))return Co(zn,tc,go,ea,Ms);if(__(u,ea))return qc(zn,go,tc,Ms);if(__(u,tc))return qc(zn,go,ea,Ms);at&&(OK(ea,u)?zn=eo(zn,go,tc,Ms):OK(tc,u)&&(zn=eo(zn,go,ea,Ms)));let zg=_l(ea,zn);if(zg)return Kc(zn,zg,go,tc,Ms);let iA=_l(tc,zn);if(iA)return Kc(zn,iA,go,ea,Ms);if(Ld(ea))return TS(zn,go,tc,Ms);if(Ld(tc))return TS(zn,go,ea,Ms);if(RY(tc)&&!bp(ea))return zI(zn,ea,tc,go,Ms);if(RY(ea)&&!bp(tc))return zI(zn,tc,ea,go,Ms);break;case 104:return Jf(zn,as,Ms);case 103:if(p(as.left))return xs(zn,as,Ms);let Bp=iX(as.right);if(tSe(zn)&&bp(u)&&__(u.expression,Bp)){let sC=M_(as.left);if(f2(sC)&&WK(u)===I2(sC))return Zv(zn,Ms?524288:65536)}if(__(u,Bp)){let sC=M_(as.left);if(f2(sC))return vf(zn,sC,Ms)}break;case 28:return v2(zn,as.right,Ms);case 56:return Ms?v2(v2(zn,as.left,!0),as.right,!0):Ha([v2(zn,as.left,!1),v2(zn,as.right,!1)]);case 57:return Ms?Ha([v2(zn,as.left,!0),v2(zn,as.right,!0)]):v2(v2(zn,as.left,!1),as.right,!1)}return zn}function xs(zn,as,Ms){let go=iX(as.right);if(!__(u,go))return zn;pe.assertNode(as.left,p);let ea=Sat(as.left);if(ea===void 0)return zn;let tc=ea.parent,zg=tm(pe.checkDefined(ea.valueDeclaration,"should always have a declaration"))?fo(tc):Lp(tc);return Wv(zn,zg,Ms,!0)}function eo(zn,as,Ms,go){let ea=as===35||as===37,tc=as===35||as===36?98304:32768,zg=M_(Ms);return ea!==go&&xE(zg,Bp=>!!(Bp.flags&tc))||ea===go&&xE(zg,Bp=>!(Bp.flags&(3|tc)))?PK(zn,2097152):zn}function qc(zn,as,Ms,go){if(zn.flags&1)return zn;(as===36||as===38)&&(go=!go);let ea=M_(Ms),tc=as===35||as===36;if(ea.flags&98304){if(!at)return zn;let zg=tc?go?262144:2097152:ea.flags&65536?go?131072:1048576:go?65536:524288;return PK(zn,zg)}if(go){if(!tc&&(zn.flags&2||Lv(zn,Sk))){if(ea.flags&469893116||Sk(ea))return ea;if(ea.flags&524288)return fs}let zg=am(zn,iA=>rPe(iA,ea)||tc&&MMs(iA,ea));return Jmn(zg,ea)}return bR(ea)?am(zn,zg=>!(Amn(zg)&&rPe(zg,ea))):zn}function Co(zn,as,Ms,go,ea){(Ms===36||Ms===38)&&(ea=!ea);let tc=iX(as.expression);if(!__(u,tc)){at&&OK(tc,u)&&ea===(go.text!=="undefined")&&(zn=PK(zn,2097152));let zg=_l(tc,zn);return zg?ka(zn,zg,iA=>pu(iA,go,ea)):zn}return pu(zn,go,ea)}function pu(zn,as,Ms){return Ms?jC(zn,as.text):PK(zn,JPt.get(as.text)||32768)}function Td(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go},ea){return Ms!==go&&ue(nat(as).slice(Ms,go),ea)?Zv(zn,2097152):zn}function Af(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go}){let ea=nat(as);if(!ea.length)return zn;let tc=ea.slice(Ms,go),zg=Ms===go||k(tc,Oi);if(zn.flags&2&&!zg){let M0;for(let Ub=0;UbrPe(iA,M0)),iA);if(!zg)return Bp;let sC=am(zn,M0=>!(Amn(M0)&&k(ea,M0.flags&32768?wt:Cy(GMs(M0)))));return Bp.flags&131072?sC:Ha([Bp,sC])}function jC(zn,as){switch(as){case"string":return SA(zn,$r,1);case"number":return SA(zn,ri,2);case"bigint":return SA(zn,oo,4);case"boolean":return SA(zn,Mn,8);case"symbol":return SA(zn,ci,16);case"object":return zn.flags&1?zn:Ha([SA(zn,fs,32),SA(zn,Hn,131072)]);case"function":return zn.flags&1?zn:SA(zn,Js,64);case"undefined":return SA(zn,wt,65536)}return SA(zn,fs,128)}function SA(zn,as,Ms){return Xf(zn,go=>UN(go,as,Sf)?ER(go,Ms)?go:Oi:rX(as,go)?as:ER(go,Ms)?jg([go,as]):Oi)}function vh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go}){let ea=Qmn(as);if(!ea)return zn;let tc=Se(as.caseBlock.clauses,Bp=>Bp.kind===298);if(Ms===go||tc>=Ms&&tcqse(sC,Bp)===Bp)}let iA=ea.slice(Ms,go);return Ha(lt(iA,Bp=>Bp?jC(zn,Bp):Oi))}function Mh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:go}){let ea=Se(as.caseBlock.clauses,iA=>iA.kind===298),tc=Ms===go||ea>=Ms&&eaiA.kind===297?v2(zn,iA.expression,!0):Oi))}function Ld(zn){return(jo(zn)&&Vo(zn.name)==="constructor"||Qg(zn)&&_A(zn.argumentExpression)&&zn.argumentExpression.text==="constructor")&&__(u,zn.expression)}function TS(zn,as,Ms,go){if(go?as!==35&&as!==37:as!==36&&as!==38)return zn;let ea=M_(Ms);if(!d6t(ea)&&!CR(ea))return zn;let tc=Fg(ea,"prototype");if(!tc)return zn;let zg=fo(tc),iA=Xo(zg)?void 0:zg;if(!iA||iA===qn||iA===Js)return zn;if(Xo(zn))return iA;return am(zn,sC=>Bp(sC,iA));function Bp(sC,M0){return sC.flags&524288&&la(sC)&1||M0.flags&524288&&la(M0)&1?sC.symbol===M0.symbol:rX(sC,M0)}}function Jf(zn,as,Ms){let go=iX(as.left);if(!__(u,go))return Ms&&at&&OK(go,u)?PK(zn,2097152):zn;let ea=as.right,tc=M_(ea);if(!Q5(tc,qn))return zn;let zg=hPe(as),iA=zg&&xv(zg);if(iA&&iA.kind===1&&iA.parameterIndex===0)return Wv(zn,iA.type,Ms,!0);if(!Q5(tc,Js))return zn;let Bp=Xf(tc,gh);return Xo(zn)&&(Bp===qn||Bp===Js)||!Ms&&!(Bp.flags&524288&&!Sk(Bp))?zn:Wv(zn,Bp,Ms,!0)}function gh(zn){let as=Wi(zn,"prototype");if(as&&!Xo(as))return as;let Ms=rg(zn,1);return Ms.length?Ha(lt(Ms,go=>Ad(H2e(go)))):Jg}function Wv(zn,as,Ms,go){let ea=zn.flags&1048576?`N${UC(zn)},${UC(as)},${(Ms?1:0)|(go?2:0)}`:void 0;return Xy(ea)??KB(ea,Efe(zn,as,Ms,go))}function Efe(zn,as,Ms,go){if(!Ms){if(zn===as)return Oi;if(go)return am(zn,Bp=>!Q5(Bp,as));zn=zn.flags&2?NA:zn;let iA=Wv(zn,as,!0,!1);return GKt(am(zn,Bp=>!gfe(Bp,iA)))}if(zn.flags&3||zn===as)return as;let ea=go?Q5:rX,tc=zn.flags&1048576?APe(zn):void 0,zg=Xf(as,iA=>{let Bp=tc&&Wi(iA,tc),sC=Bp&&dPe(zn,Bp),M0=Xf(sC||zn,go?Ub=>Q5(Ub,iA)?Ub:Q5(iA,Ub)?iA:Oi:Ub=>ofe(Ub,iA)?Ub:ofe(iA,Ub)?iA:rX(Ub,iA)?Ub:rX(iA,Ub)?iA:Oi);return M0.flags&131072?Xf(zn,Ub=>uh(Ub,465829888)&&ea(iA,O_(Ub)||cn)?jg([Ub,iA]):Oi):M0});return zg.flags&131072?rX(as,zn)?as:pg(zn,as)?zn:pg(as,zn)?as:jg([zn,as]):zg}function DSe(zn,as,Ms){if(Zmn(as,u)){let go=Ms||!BB(as)?hPe(as):void 0,ea=go&&xv(go);if(ea&&(ea.kind===0||ea.kind===1))return Sfe(zn,ea,as,Ms)}if(tSe(zn)&&bp(u)&&jo(as.expression)){let go=as.expression;if(__(u.expression,iX(go.expression))&&Ir(go.name)&&go.name.escapedText==="hasOwnProperty"&&as.arguments.length===1){let ea=as.arguments[0];if(_A(ea)&&WK(u)===pp(ea.text))return Zv(zn,Ms?524288:65536)}}return zn}function Sfe(zn,as,Ms,go){if(as.type&&!(Xo(zn)&&(as.type===qn||as.type===Js))){let ea=PHs(as,Ms);if(ea){if(__(u,ea))return Wv(zn,as.type,go,!1);at&&OK(ea,u)&&(go&&!ER(as.type,65536)||!go&&xE(as.type,wPe))&&(zn=PK(zn,2097152));let tc=_l(ea,zn);if(tc)return ka(zn,tc,zg=>Wv(zg,as.type,go,!1))}}return zn}function v2(zn,as,Ms){if(EY(as)||po(as.parent)&&(as.parent.operatorToken.kind===61||as.parent.operatorToken.kind===78)&&as.parent.left===as)return kSe(zn,as,Ms);switch(as.kind){case 80:if(!__(u,as)&&re<5){let go=O0(as);if(Jq(go)){let ea=go.valueDeclaration;if(ea&&nc(ea)&&!ea.type&&ea.initializer&&VKt(u)){re++;let tc=v2(zn,ea.initializer,Ms);return re--,tc}}}case 110:case 108:case 212:case 213:return dd(zn,as,Ms);case 214:return DSe(zn,as,Ms);case 218:case 236:case 239:return v2(zn,as.expression,Ms);case 227:return P0(zn,as,Ms);case 225:if(as.operator===54)return v2(zn,as.operand,!Ms);break}return zn}function kSe(zn,as,Ms){if(__(u,as))return PK(zn,Ms?2097152:262144);let go=_l(as,zn);return go?ka(zn,go,ea=>Zv(ea,Ms?2097152:262144)):zn}}function HHs(u,m){if(u=fn(u),(m.kind===80||m.kind===81)&&(ez(m)&&(m=m.parent),UT(m)&&(!RF(m)||F3(m)))){let v=Jot(F3(m)&&m.kind===212?Eat(m,void 0,!0):M_(m));if(fn(sa(m).resolvedSymbol)===u)return v}return KT(m)&&dv(m.parent)&&UQ(m.parent)?oot(m.parent.symbol):Ebe(m)&&F3(m.parent)?R9(u):mR(u)}function dfe(u){return ji(u.parent,m=>Eu(m)&&!HL(m)||m.kind===269||m.kind===308||m.kind===173)}function YHs(u){return(u.lastAssignmentPos!==void 0||oSe(u)&&u.lastAssignmentPos!==void 0)&&u.lastAssignmentPos<0}function oSe(u){return!zmn(u,void 0)}function zmn(u,m){let v=ji(u.valueDeclaration,cat);if(!v)return!1;let D=sa(v);return D.flags&131072||(D.flags|=131072,QHs(v)||$mn(v)),!u.lastAssignmentPos||m&&Math.abs(u.lastAssignmentPos)m.kind!==233&&qmn(m.name))}function QHs(u){return!!ji(u.parent,m=>cat(m)&&!!(sa(m).flags&131072))}function cat(u){return Gd(u)||cl(u)}function $mn(u){switch(u.kind){case 80:let m=zD(u);if(m!==0){let W=O0(u),Y=m===1||W.lastAssignmentPos!==void 0&&W.lastAssignmentPos<0;if(aSe(W)){if(W.lastAssignmentPos===void 0||Math.abs(W.lastAssignmentPos)!==Number.MAX_VALUE){let oe=ji(u,cat),Be=ji(W.valueDeclaration,cat);W.lastAssignmentPos=oe===Be?XHs(u,W.valueDeclaration):Number.MAX_VALUE}Y&&W.lastAssignmentPos>0&&(W.lastAssignmentPos*=-1)}}return;case 282:let v=u.parent.parent,D=u.propertyName||u.name;if(!u.isTypeOnly&&!v.isTypeOnly&&!v.moduleSpecifier&&D.kind!==11){let W=NI(D,111551,!0,!0);if(W&&aSe(W)){let Y=W.lastAssignmentPos!==void 0&&W.lastAssignmentPos<0?-1:1;W.lastAssignmentPos=Y*Number.MAX_VALUE}}return;case 265:case 266:case 267:return}uc(u)||Lu(u,$mn)}function XHs(u,m){let v=u.pos;for(;u&&u.pos>m.pos;){switch(u.kind){case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 259:case 264:v=u.end}u=u.parent}return v}function Jq(u){return u.flags&3&&(n8t(u)&6)!==0}function aSe(u){let m=u.valueDeclaration&&Fw(u.valueDeclaration);return!!m&&(Si(m)||nc(m)&&(IQ(m.parent)||eCn(m)))}function eCn(u){return!!(u.parent.flags&1)&&!(Hc(u)&32||u.parent.parent.kind===244&&fc(u.parent.parent.parent))}function JHs(u){let m=sa(u);if(m.parameterInitializerContainsUndefined===void 0){if(!YN(u,8))return BK(u.symbol),!0;let v=!!ER(ffe(u,0),16777216);if(!xr())return BK(u.symbol),!0;m.parameterInitializerContainsUndefined??(m.parameterInitializerContainsUndefined=v)}return m.parameterInitializerContainsUndefined}function UHs(u,m){return at&&m.kind===170&&m.initializer&&ER(u,16777216)&&!JHs(m)?Zv(u,524288):u}function KHs(u,m){let v=m.parent;return v.kind===212||v.kind===167||v.kind===214&&v.expression===m||v.kind===215&&v.expression===m||v.kind===213&&v.expression===m&&!(Lv(u,rCn)&&GK(M_(v.argumentExpression)))}function tCn(u){return u.flags&2097152?zt(u.types,tCn):!!(u.flags&465829888&&XN(u).flags&1146880)}function rCn(u){return u.flags&2097152?zt(u.types,rCn):!!(u.flags&465829888&&!uh(XN(u),98304))}function jHs(u,m){let v=(Ir(u)||jo(u)||Qg(u))&&!((sR(u.parent)||GU(u.parent))&&u.parent.tagName===u)&&(m&&m&32?jy(u,8):jy(u,void 0));return v&&!H5(v)}function OKt(u,m,v){return Use(u)&&(u=u.baseType),!(v&&v&2)&&Lv(u,tCn)&&(KHs(u,m)||jHs(m,v))?Xf(u,XN):u}function nCn(u){return!!ji(u,m=>{let v=m.parent;return v===void 0?"quit":yf(v)?v.expression===m&&Hd(m):k0(v)?v.name===m||v.propertyName===m:!1})}function Uq(u,m,v,D){if(Yt&&!(u.flags&33554432&&!ss(u)&&!pi(u)))switch(m){case 1:return lat(u);case 2:return iCn(u,v,D);case 3:return sCn(u);case 4:return PKt(u);case 5:return oCn(u);case 6:return aCn(u);case 7:return cCn(u);case 8:return lCn(u);case 0:{if(Ir(u)&&(UT(u)||u0(u.parent)||Zm(u.parent)&&u.parent.moduleReference===u)&&dCn(u)){if(VJ(u.parent)&&(jo(u.parent)?u.parent.expression:u.parent.left)!==u)return;lat(u);return}if(VJ(u)){let W=u;for(;VJ(W);){if(xw(W))return;W=W.parent}return iCn(u)}return yf(u)?sCn(u):nI(u)||Qw(u)?PKt(u):Zm(u)?b3(u)||Kat(u)?aCn(u):void 0:k0(u)?cCn(u):((Gd(u)||Il(u))&&oCn(u),!Te.emitDecoratorMetadata||!mQ(u)||!m1(u)||!u.modifiers||!tU(Ke,u,u.parent,u.parent.parent)?void 0:lCn(u))}default:pe.assertNever(m,`Unhandled reference hint: ${m}`)}}function lat(u){let m=O0(u);m&&m!==ot&&m!==st&&!zL(u)&&_Pe(m,u)}function iCn(u,m,v){let D=jo(u)?u.expression:u.left;if(kF(D)||!Ir(D))return;let W=O0(D);if(!W||W===st)return;if(uS(Te)||Vb(Te)&&nCn(u)){_Pe(W,u);return}let Y=v||DI(D);if(Xo(Y)||Y===Vn){_Pe(W,u);return}let oe=m;if(!oe&&!v){let Be=jo(u)?u.name:u.right,Me=p(Be)&&TPe(Be.escapedText,Be),He=zD(u),$e=my(He!==0||a8t(u)?F1(Y):Y);oe=p(Be)?Me&&vat($e,Me)||void 0:Fg($e,Be.escapedText)}oe&&(TSe(oe)||oe.flags&8&&u.parent.kind===307)||_Pe(W,u)}function sCn(u){if(Ir(u.expression)){let m=u.expression,v=fn(NI(m,-1,!0,!0,u));v&&_Pe(v,m)}}function PKt(u){if(!yat(u)){let m=PA&&Te.jsx===2?Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:void 0,v=Uw(u),D=nI(u)?u.tagName:u,W=Te.jsx!==1&&Te.jsx!==3,Y;if(Qw(u)&&v==="null"||(Y=An(D,v,W?111551:111167,m,!0)),Y&&(Y.isReferenced=-1,Yt&&Y.flags&2097152&&!IR(Y)&&uat(Y)),Qw(u)){let oe=ms(u),Be=f6t(oe);if(Be){let Me=R0(Be).escapedText;An(D,Me,W?111551:111167,m,!0)}}}}function oCn(u){if(Ze<2&&BI(u)&2){let m=Zb(u);zHs(m)}}function aCn(u){Ga(u,32)&&uCn(u)}function cCn(u){if(!u.parent.parent.moduleSpecifier&&!u.isTypeOnly&&!u.parent.parent.isTypeOnly){let m=u.propertyName||u.name;if(m.kind===11)return;let v=An(m,m.escapedText,2998271,void 0,!0);if(!(v&&(v===dt||v===pr||v.declarations&&fc(Tn(v.declarations[0]))))){let D=v&&(v.flags&2097152?JC(v):v);(!D||Xb(D)&111551)&&(uCn(u),lat(m))}return}}function lCn(u){if(Te.emitDecoratorMetadata){let m=de(u.modifiers,Eo);if(!m)return;switch(iC(m,16),u.kind){case 264:let v=fN(u);if(v)for(let oe of v.parameters)toe(Mat(oe));break;case 178:case 179:let D=u.kind===178?179:178,W=yp(Uo(u),D);toe(UQ(u)||W&&UQ(W));break;case 175:for(let oe of u.parameters)toe(Mat(oe));toe(Zb(u));break;case 173:toe(Zh(u));break;case 170:toe(Mat(u));let Y=u.parent;for(let oe of Y.parameters)toe(Mat(oe));toe(Zb(Y));break}}}function _Pe(u,m){if(Yt&&AK(u,111551)&&!$Y(m)){let v=JC(u);Xb(u,!0)&1160127&&(uS(Te)||Vb(Te)&&nCn(m)||!TSe(fn(v)))&&uat(u)}}function uat(u){pe.assert(Yt);let m=fa(u);if(!m.referenced){m.referenced=!0;let v=Qb(u);if(!v)return pe.fail();if(b3(v)&&Xb(Oh(u))&111551){let D=R0(v.moduleReference);lat(D)}}}function uCn(u){let m=Uo(u),v=JC(m);v&&(v===st||Xb(m,!0)&111551&&!TSe(v))&&uat(m)}function gCn(u,m){if(!u)return;let v=R0(u),D=(u.kind===80?788968:1920)|2097152,W=An(v,v.escapedText,D,void 0,!0);if(W&&W.flags&2097152){if(Yt&&qi(W)&&!TSe(JC(W))&&!IR(W))uat(W);else if(m&&uS(Te)&&a0(Te)>=5&&!qi(W)&&!zt(W.declarations,lN)){let Y=Br(u,Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),oe=de(W.declarations||E,_9);oe&&ug(Y,ho(oe,Z._0_was_imported_here,Vo(v)))}}}function zHs(u){gCn(u&&fne(u),!1)}function toe(u){let m=J8t(u);m&&mC(m)&&gCn(m,!0)}function qHs(u,m){var v;let D=fo(u),W=u.valueDeclaration;if(W){if(mg(W)&&!W.initializer&&!W.dotDotDotToken&&W.parent.elements.length>=2){let Y=W.parent.parent,oe=Fw(Y);if(oe.kind===261&&cX(oe)&6||oe.kind===170){let Be=sa(Y);if(!(Be.flags&4194304)){Be.flags|=4194304;let Me=Cc(Y,0),He=Me&&Xf(Me,XN);if(Be.flags&=-4194305,He&&He.flags&1048576&&!(oe.kind===170&&WKt(oe))){let $e=W.parent,Vt=_Z($e,He,He,void 0,m.flowNode);return Vt.flags&131072?Oi:CO(W,Vt,!0)}}}}if(Si(W)&&!W.type&&!W.initializer&&!W.dotDotDotToken){let Y=W.parent;if(Y.parameters.length>=2&&Fot(Y)){let oe=lSe(Y);if(oe&&oe.parameters.length===1&&G0(oe)){let Be=$pe(Cl(fo(oe.parameters[0]),(v=sX(Y))==null?void 0:v.nonFixingMapper));if(Be.flags&1048576&&xE(Be,EA)&&!zt(Y.parameters,WKt)){let Me=_Z(Y,Be,Be,void 0,m.flowNode),He=Y.parameters.indexOf(W)-(GW(Y)?1:0);return x1(Me,yR(He))}}}}}return D}function ACn(u,m){if(zL(u))return;if(m===ot){if(u8t(u,!0)){Br(u,Z.arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks);return}let Y=I1(u);if(Y)for(Ze<2&&(Y.kind===220?Br(u,Z.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):Ga(Y,1024)&&Br(u,Z.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),sa(Y).flags|=512;Y&&gA(Y);)Y=I1(Y),Y&&(sa(Y).flags|=512);return}let v=fn(m),D=o6t(v,u);Iy(D)&&LUt(u,D)&&D.declarations&&jB(u,D.declarations,u.escapedText);let W=v.valueDeclaration;if(W&&v.flags&32&&xa(W)&&W.name!==u){let Y=s0(u,!1,!1);for(;Y.kind!==308&&Y.parent!==W;)Y=s0(Y,!1,!1);Y.kind!==308&&(sa(W).flags|=262144,sa(Y).flags|=262144,sa(u).flags|=536870912)}nYs(u,m)}function $Hs(u,m){if(zL(u))return yPe(u);let v=O0(u);if(v===st)return nn;if(ACn(u,v),v===ot)return u8t(u)?nn:fo(v);dCn(u)&&Uq(u,1);let D=fn(v),W=D.valueDeclaration,Y=W;if(W&&W.kind===209&&k(UB,W.parent)&&ji(u,Mi=>Mi===W.parent))return ds;let oe=qHs(D,u),Be=zD(u);if(Be){if(!(D.flags&3)&&!(Bo(u)&&D.flags&512)){let Mi=D.flags&384?Z.Cannot_assign_to_0_because_it_is_an_enum:D.flags&32?Z.Cannot_assign_to_0_because_it_is_a_class:D.flags&1536?Z.Cannot_assign_to_0_because_it_is_a_namespace:D.flags&16?Z.Cannot_assign_to_0_because_it_is_a_function:D.flags&2097152?Z.Cannot_assign_to_0_because_it_is_an_import:Z.Cannot_assign_to_0_because_it_is_not_a_variable;return Br(u,Mi,xl(v)),nn}if(wR(D))return D.flags&3?Br(u,Z.Cannot_assign_to_0_because_it_is_a_constant,xl(v)):Br(u,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,xl(v)),nn}let Me=D.flags&2097152;if(D.flags&3){if(Be===1)return IAe(u)?hZ(oe):oe}else if(Me)W=Qb(v);else return oe;if(!W)return oe;oe=OKt(oe,u,m);let He=Fw(W).kind===170,$e=dfe(W),Vt=dfe(u),kt=Vt!==$e,wr=u.parent&&u.parent.parent&&Hx(u.parent)&&ZKt(u.parent.parent),dn=v.flags&134217728,Sn=oe===En||oe===YC,ii=Sn&&u.parent.kind===236;for(;Vt!==$e&&(Vt.kind===219||Vt.kind===220||rAe(Vt))&&(Jq(D)&&oe!==YC||aSe(D)&&zmn(D,u));)Vt=dfe(Vt);let Yi=Y&&nc(Y)&&!Y.initializer&&!Y.exclamationToken&&eCn(Y)&&!YHs(v),js=He||Me||kt&&!Yi||wr||dn||eYs(u,W)||oe!==En&&oe!==YC&&(!at||(oe.flags&16387)!==0||$Y(u)||RKt(u)||u.parent.kind===282)||u.parent.kind===236||W.kind===261&&W.exclamationToken||W.flags&33554432,mo=ii?wt:js?He?UHs(oe,W):oe:Sn?wt:wO(oe),Ji=ii?mZ(_Z(u,oe,mo,Vt)):_Z(u,oe,mo,Vt);if(!Kmn(u)&&(oe===En||oe===YC)){if(Ji===En||Ji===YC)return Rt&&(Br(fl(W),Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,xl(v),ro(Ji)),Br(u,Z.Variable_0_implicitly_has_an_1_type,xl(v),ro(Ji))),BSe(Ji)}else if(!js&&!zse(oe)&&zse(Ji))return Br(u,Z.Variable_0_is_used_before_being_assigned,xl(v)),oe;return Be?hZ(Ji):Ji}function eYs(u,m){if(mg(m)){let v=ji(u,mg);return v&&Fw(v)===Fw(m)}}function dCn(u){var m;let v=u.parent;if(v){if(jo(v)&&v.expression===u||k0(v)&&v.isTypeOnly)return!1;let D=(m=v.parent)==null?void 0:m.parent;if(D&&Vh(D)&&D.isTypeOnly)return!1}return!0}function tYs(u,m){return!!ji(u,v=>v===m?"quit":Eu(v)||v.parent&&pi(v.parent)&&!tm(v.parent)&&v.parent.initializer===v)}function rYs(u,m){return ji(u,v=>v===m?"quit":v===m.initializer||v===m.condition||v===m.incrementor||v===m.statement)}function MKt(u){return ji(u,m=>!m||nbe(m)?"quit":YT(m,!1))}function nYs(u,m){if(Ze>=2||!(m.flags&34)||!m.valueDeclaration||cl(m.valueDeclaration)||m.valueDeclaration.parent.kind===300)return;let v=oS(m.valueDeclaration),D=tYs(u,v),W=MKt(v);if(W){if(D){let Y=!0;if(X3(v)){let oe=KL(m.valueDeclaration,262);if(oe&&oe.parent===v){let Be=rYs(u.parent,v);if(Be){let Me=sa(Be);Me.flags|=8192;let He=Me.capturedBlockScopeBindings||(Me.capturedBlockScopeBindings=[]);Qi(He,m),Be===v.initializer&&(Y=!1)}}}Y&&(sa(W).flags|=4096)}if(X3(v)){let Y=KL(m.valueDeclaration,262);Y&&Y.parent===v&&sYs(u,v)&&(sa(m.valueDeclaration).flags|=65536)}sa(m.valueDeclaration).flags|=32768}D&&(sa(m.valueDeclaration).flags|=16384)}function iYs(u,m){let v=sa(u);return!!v&&k(v.capturedBlockScopeBindings,Uo(m))}function sYs(u,m){let v=u;for(;v.parent.kind===218;)v=v.parent;let D=!1;if(RF(v))D=!0;else if(v.parent.kind===225||v.parent.kind===226){let W=v.parent;D=W.operator===46||W.operator===47}return D?!!ji(v,W=>W===m?"quit":W===m.statement):!1}function HKt(u,m){if(sa(u).flags|=2,m.kind===173||m.kind===177){let v=m.parent;sa(v).flags|=4}else sa(m).flags|=4}function pCn(u){return Gy(u)?u:Eu(u)?void 0:Lu(u,pCn)}function YKt(u){let m=Uo(u),v=Lp(m);return uZ(v)===Mt}function fCn(u,m,v){let D=m.parent;UL(D)&&!YKt(D)&&cU(u)&&u.flowNode&&!aat(u.flowNode,!1)&&Br(u,v)}function oYs(u,m){pi(m)&&tm(m)&&Ke&&m.initializer&&nl(m.initializer,u.pos)&&m1(m.parent)&&Br(u,Z.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function yPe(u){let m=$Y(u),v=s0(u,!0,!0),D=!1,W=!1;for(v.kind===177&&fCn(u,v,Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(v.kind===220&&(v=s0(v,!1,!W),D=!0),v.kind===168){v=s0(v,!D,!1),W=!0;continue}break}if(oYs(u,v),W)Br(u,Z.this_cannot_be_referenced_in_a_computed_property_name);else switch(v.kind){case 268:Br(u,Z.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 267:Br(u,Z.this_cannot_be_referenced_in_current_location);break}!m&&D&&Ze<2&&HKt(u,v);let Y=QKt(u,!0,v);if(Lt){let oe=fo(pr);if(Y===oe&&D)Br(u,Z.The_containing_arrow_function_captures_the_global_value_of_this);else if(!Y){let Be=Br(u,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!cl(v)){let Me=QKt(v);Me&&Me!==oe&&ug(Be,ho(v,Z.An_outer_value_of_this_is_shadowed_by_this_container))}}}return Y||hr}function QKt(u,m=!0,v=s0(u,!1,!1)){let D=Bo(u);if(Eu(v)&&(!UKt(u)||GW(v))){let W=sot(v)||D&&lYs(v);if(!W){let Y=cYs(v);if(D&&Y){let oe=Ml(Y).symbol;oe&&oe.members&&oe.flags&16&&(W=Lp(oe).thisType)}else jN(v)&&(W=Lp(qA(v.symbol)).thisType);W||(W=XKt(v))}if(W)return _Z(u,W)}if(xa(v.parent)){let W=Uo(v.parent),Y=lg(v)?fo(W):Lp(W).thisType;return _Z(u,Y)}if(cl(v))if(v.commonJsModuleIndicator){let W=Uo(v);return W&&fo(W)}else{if(v.externalModuleIndicator)return wt;if(m)return fo(pr)}}function aYs(u){let m=s0(u,!1,!1);if(Eu(m)){let v=BS(m);if(v.thisParameter)return sat(v.thisParameter)}if(xa(m.parent)){let v=Uo(m.parent);return lg(m)?fo(v):Lp(v).thisType}}function cYs(u){if(u.kind===219&&po(u.parent)&&oI(u.parent)===3)return u.parent.left.expression.expression;if(u.kind===175&&u.parent.kind===211&&po(u.parent.parent)&&oI(u.parent.parent)===6)return u.parent.parent.left.expression;if(u.kind===219&&u.parent.kind===304&&u.parent.parent.kind===211&&po(u.parent.parent.parent)&&oI(u.parent.parent.parent)===6)return u.parent.parent.parent.left.expression;if(u.kind===219&&Cm(u.parent)&&Ir(u.parent.name)&&(u.parent.name.escapedText==="value"||u.parent.name.escapedText==="get"||u.parent.name.escapedText==="set")&&ag(u.parent.parent)&&Ll(u.parent.parent.parent)&&u.parent.parent.parent.arguments[2]===u.parent.parent&&oI(u.parent.parent.parent)===9)return u.parent.parent.parent.arguments[0].expression;if(gu(u)&&Ir(u.name)&&(u.name.escapedText==="value"||u.name.escapedText==="get"||u.name.escapedText==="set")&&ag(u.parent)&&Ll(u.parent.parent)&&u.parent.parent.arguments[2]===u.parent&&oI(u.parent.parent)===9)return u.parent.parent.arguments[0].expression}function lYs(u){let m=xb(u);if(m&&m.typeExpression)return tl(m.typeExpression);let v=tfe(u);if(v)return P5(v)}function uYs(u,m){return!!ji(u,v=>Gd(v)?"quit":v.kind===170&&v.parent===m)}function gat(u){let m=u.parent.kind===214&&u.parent.expression===u,v=G7(u,!0),D=v,W=!1,Y=!1;if(!m){for(;D&&D.kind===220;)Ga(D,1024)&&(Y=!0),D=G7(D,!0),W=Ze<2;D&&Ga(D,1024)&&(Y=!0)}let oe=0;if(!D||!$e(D)){let Vt=ji(u,kt=>kt===D?"quit":kt.kind===168);return Vt&&Vt.kind===168?Br(u,Z.super_cannot_be_referenced_in_a_computed_property_name):m?Br(u,Z.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(xa(D.parent)||D.parent.kind===211)?Br(u,Z.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):Br(u,Z.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),nn}if(!m&&v.kind===177&&fCn(u,D,Z.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),lg(D)||m?(oe=32,!m&&Ze>=2&&Ze<=8&&(pi(D)||dl(D))&&Kge(u.parent,Vt=>{(!cl(Vt)||Sl(Vt))&&(sa(Vt).flags|=2097152)})):oe=16,sa(u).flags|=oe,D.kind===175&&Y&&(Zy(u.parent)&&RF(u.parent)?sa(D).flags|=256:sa(D).flags|=128),W&&HKt(u.parent,D),D.parent.kind===211)return Ze<2?(Br(u,Z.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),nn):hr;let Be=D.parent;if(!UL(Be))return Br(u,Z.super_can_only_be_referenced_in_a_derived_class),nn;if(YKt(Be))return m?nn:Mt;let Me=Lp(Uo(Be)),He=Me&&tT(Me)[0];if(!He)return nn;if(D.kind===177&&uYs(u,D))return Br(u,Z.super_cannot_be_referenced_in_constructor_arguments),nn;return oe===32?uZ(Me):k1(He,Me.thisType);function $e(Vt){return m?Vt.kind===177:xa(Vt.parent)||Vt.parent.kind===211?lg(Vt)?Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===176:Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===172||Vt.kind===177:!1}}function ICn(u){return(u.kind===175||u.kind===178||u.kind===179)&&u.parent.kind===211?u.parent:u.kind===219&&u.parent.kind===304?u.parent.parent:void 0}function hCn(u){return la(u)&4&&u.target===E2?gf(u)[0]:void 0}function gYs(u){return Xf(u,m=>m.flags&2097152?F(m.types,hCn):hCn(m))}function mCn(u,m){let v=u,D=m;for(;D;){let W=gYs(D);if(W)return W;if(v.parent.kind!==304)break;v=v.parent.parent,D=j5(v,void 0)}}function XKt(u){if(u.kind===220)return;if(Fot(u)){let v=lSe(u);if(v){let D=v.thisParameter;if(D)return fo(D)}}let m=Bo(u);if(Lt||m){let v=ICn(u);if(v){let W=j5(v,void 0),Y=mCn(v,W);return Y?Cl(Y,_Kt(sX(v))):F1(W?mZ(W):DI(v))}let D=Iv(u.parent);if(zm(D)){let W=D.left;if(bp(W)){let{expression:Y}=W;if(m&&Ir(Y)){let oe=ms(D);if(oe.commonJsModuleIndicator&&O0(Y)===oe.symbol)return}return F1(DI(Y))}}}}function CCn(u){let m=u.parent;if(!Fot(m))return;let v=HL(m);if(v&&v.arguments){let W=Rat(v),Y=m.parameters.indexOf(u);if(u.dotDotDotToken)return m8t(W,Y,W.length,hr,void 0,0);let oe=sa(v),Be=oe.resolvedSignature;oe.resolvedSignature=Ls;let Me=Y0)return Jpe(v.name,!0,!1)}}function fYs(u,m){let v=I1(u);if(v){let D=Aat(v,m);if(D){let W=BI(v);if(W&1){let Y=(W&2)!==0;D.flags&1048576&&(D=am(D,Be=>!!V9(1,Be,Y)));let oe=V9(1,D,(W&2)!==0);if(!oe)return;D=oe}if(W&2){let Y=Xf(D,yZ);return Y&&Ha([Y,W_n(Y)])}return D}}}function IYs(u,m){let v=jy(u,m);if(v){let D=yZ(v);return D&&Ha([D,W_n(D)])}}function hYs(u,m){let v=I1(u);if(v){let D=BI(v),W=Aat(v,m);if(W){let Y=(D&2)!==0;if(!u.asteriskToken&&W.flags&1048576&&(W=am(W,oe=>!!V9(1,oe,Y))),u.asteriskToken){let oe=i6t(W,Y),Be=oe?.yieldType??Vn,Me=jy(u,m)??Vn,He=oe?.nextType??cn,$e=Gat(Be,Me,He,!1);if(Y){let Vt=Gat(Be,Me,He,!0);return Ha([$e,Vt])}return $e}return V9(0,W,Y)}}}function UKt(u){let m=!1;for(;u.parent&&!Eu(u.parent);){if(Si(u.parent)&&(m||u.parent.initializer===u))return!0;mg(u.parent)&&u.parent.initializer===u&&(m=!0),u=u.parent}return!1}function _Cn(u,m){let v=!!(BI(m)&2),D=Aat(m,void 0);if(D)return V9(u,D,v)||void 0}function Aat(u,m){let v=Qse(u);if(v)return v;let D=hat(u);if(D&&!fot(D)){let Y=Ad(D),oe=BI(u);return oe&1?am(Y,Be=>!!(Be.flags&58998787)||M8t(Be,oe,void 0)):oe&2?am(Y,Be=>!!(Be.flags&58998787)||!!mfe(Be)):Y}let W=HL(u);if(W)return jy(W,m)}function yCn(u,m){let D=Rat(u).indexOf(m);return D===-1?void 0:KKt(u,D)}function KKt(u,m){if(jp(u))return m===0?$r:m===1?zIn(!1):hr;let v=sa(u).resolvedSignature===Go?Go:ioe(u);if(nI(u)&&m===0)return Iat(v,u);let D=v.parameters.length-1;return G0(v)&&m>=D?x1(fo(v.parameters[D]),yR(m-D),256):vR(v,m)}function mYs(u){let m=k8t(u);return m?RK(m):void 0}function CYs(u,m){if(u.parent.kind===216)return yCn(u.parent,m)}function _Ys(u,m){let v=u.parent,{left:D,operatorToken:W,right:Y}=v;switch(W.kind){case 64:case 77:case 76:case 78:return u===Y?bYs(v):void 0;case 57:case 61:let oe=jy(v,m);return u===Y&&(oe&&oe.pattern||!oe&&!xZe(v))?M_(D):oe;case 56:case 28:return u===Y?jy(v,m):void 0;default:return}}function yYs(u){if(bE(u)&&u.symbol)return u.symbol;if(Ir(u))return O0(u);if(jo(u)){let v=M_(u.expression);return p(u.name)?m(v,u.name):Fg(v,u.name.escapedText)}if(Qg(u)){let v=DI(u.argumentExpression);if(!f2(v))return;let D=M_(u.expression);return Fg(D,I2(v))}return;function m(v,D){let W=TPe(D.escapedText,D);return W&&vat(v,W)}}function bYs(u){var m,v;let D=oI(u);switch(D){case 0:case 4:let W=yYs(u.left),Y=W&&W.valueDeclaration;if(Y&&(pi(Y)||ss(Y))){let Me=Zh(Y);return Me&&Cl(tl(Me),fa(W).mapper)||(pi(Y)?Y.initializer&&M_(u.left):void 0)}return D===0?M_(u.left):bCn(u);case 5:if(dat(u,D))return bCn(u);if(!bE(u.left)||!u.left.symbol)return M_(u.left);{let Me=u.left.symbol.valueDeclaration;if(!Me)return;let He=Ma(u.left,bp),$e=Zh(Me);if($e)return tl($e);if(Ir(He.expression)){let Vt=He.expression,kt=An(Vt,Vt.escapedText,111551,void 0,!0);if(kt){let wr=kt.valueDeclaration&&Zh(kt.valueDeclaration);if(wr){let dn=jD(He);if(dn!==void 0)return K5(tl(wr),dn)}return}}return Bo(Me)||Me===u.left?void 0:M_(u.left)}case 1:case 6:case 3:case 2:let oe;D!==2&&(oe=bE(u.left)?(m=u.left.symbol)==null?void 0:m.valueDeclaration:void 0),oe||(oe=(v=u.symbol)==null?void 0:v.valueDeclaration);let Be=oe&&Zh(oe);return Be?tl(Be):void 0;case 7:case 8:case 9:return pe.fail("Does not apply");default:return pe.assertNever(D)}}function dat(u,m=oI(u)){if(m===4)return!0;if(!Bo(u)||m!==5||!Ir(u.left.expression))return!1;let v=u.left.expression.escapedText,D=An(u.left,v,111551,void 0,!0,!0);return aAe(D?.valueDeclaration)}function bCn(u){if(!u.symbol)return M_(u.left);if(u.symbol.valueDeclaration){let W=Zh(u.symbol.valueDeclaration);if(W){let Y=tl(W);if(Y)return Y}}let m=Ma(u.left,bp);if(!g2(s0(m.expression,!1,!1)))return;let v=yPe(m.expression),D=jD(m);return D!==void 0&&K5(v,D)||void 0}function EYs(u){return!!(aI(u)&262144&&!u.links.type&&nt(u,0)>=0)}function jKt(u,m){if(u.flags&16777216){let v=u;return!!($B(SO(v)).flags&131072)&&pZ(vO(v))===pZ(v.checkType)&&pg(m,v.extendsType)}return u.flags&2097152?zt(u.types,v=>jKt(v,m)):!1}function K5(u,m,v){return Xf(u,D=>{if(D.flags&2097152){let W,Y,oe=!1;for(let Be of D.types){if(!(Be.flags&524288))continue;if(Jb(Be)&&V2e(Be)!==2){let He=ECn(Be,m,v);W=zKt(W,He);continue}let Me=SCn(Be,m);if(!Me){oe||(Y=Ft(Y,Be));continue}oe=!0,Y=void 0,W=zKt(W,Me)}if(Y)for(let Be of Y){let Me=vCn(Be,m,v);W=zKt(W,Me)}return W?W.length===1?W[0]:jg(W):void 0}if(D.flags&524288)return Jb(D)&&V2e(D)!==2?ECn(D,m,v):SCn(D,m)??vCn(D,m,v)},!0)}function zKt(u,m){return m?Ft(u,m.flags&1?cn:m):u}function ECn(u,m,v){let D=v||kE(Bc(m)),W=vS(u);if(u.nameType&&jKt(u.nameType,D)||jKt(W,D))return;let Y=O_(W)||W;if(pg(D,Y))return Rot(u,D)}function SCn(u,m){let v=Fg(u,m);if(!(!v||EYs(v)))return CZ(fo(v),!!(v.flags&16777216))}function vCn(u,m,v){var D;if(EA(u)&&bN(m)&&+m>=0){let W=lfe(u,u.target.fixedLength,0,!1,!0);if(W)return W}return(D=uUt(gUt(u),v||kE(Bc(m))))==null?void 0:D.type}function BCn(u,m){if(pe.assert(g2(u)),!(u.flags&67108864))return qKt(u,m)}function qKt(u,m){let v=u.parent,D=Cm(u)&&JKt(u,m);if(D)return D;let W=j5(v,m);if(W){if(Hse(u)){let Y=Uo(u);return K5(W,Y.escapedName,fa(Y).nameType)}if(qD(u)){let Y=fl(u);if(Y&&Un(Y)){let oe=Ml(Y.expression),Be=f2(oe)&&K5(W,I2(oe));if(Be)return Be}}if(u.name){let Y=AZ(u.name);return Xf(W,oe=>{var Be;return(Be=uUt(gUt(oe),Y))==null?void 0:Be.type},!0)}}}function SYs(u){let m,v;for(let D=0;D{if(EA(Y)){if((D===void 0||mW)?v-m:0,Be=oe>0&&Y.target.combinedFlags&12?Y2e(Y.target,3):0;return oe>0&&oe<=Be?gf(Y)[x9(Y)-oe]:lfe(Y,D===void 0?Y.target.fixedLength:Math.min(Y.target.fixedLength,D),v===void 0||W===void 0?Be:Math.min(Be,v-W),!1,!0)}return(!D||mF9(Me)?x1(Me,yR(oe)):Me,!0))}function wYs(u,m){let v=u.parent;return PJ(v)?jy(u,m):TN(v)?BYs(v,u,m):void 0}function wCn(u,m){if(RN(u)){let v=j5(u.parent,m);return!v||Xo(v)?void 0:K5(v,Ez(u.name))}else return jy(u.parent,m)}function bPe(u){switch(u.kind){case 11:case 9:case 10:case 15:case 229:case 112:case 97:case 106:case 80:case 157:return!0;case 212:case 218:return bPe(u.expression);case 295:return!u.expression||bPe(u.expression)}return!1}function TYs(u,m){let v=`D${id(u)},${UC(m)}`;return Xy(v)??KB(v,mHs(m,u)??iKt(m,Nn(lt(Le(u.properties,D=>D.symbol?D.kind===304?bPe(D.initializer)&&ufe(m,D.symbol.escapedName):D.kind===305?ufe(m,D.symbol.escapedName):!1:!1),D=>[()=>MPe(D.kind===304?D.initializer:D.name),D.symbol.escapedName]),lt(Le(Zd(m),D=>{var W;return!!(D.flags&16777216)&&!!((W=u?.symbol)!=null&&W.members)&&!u.symbol.members.has(D.escapedName)&&ufe(m,D.escapedName)}),D=>[()=>wt,D.escapedName])),pg))}function RYs(u,m){let v=`D${id(u)},${UC(m)}`,D=Xy(v);if(D)return D;let W=vPe(YK(u));return KB(v,iKt(m,Nn(lt(Le(u.properties,Y=>!!Y.symbol&&Y.kind===292&&ufe(m,Y.symbol.escapedName)&&(!Y.initializer||bPe(Y.initializer))),Y=>[Y.initializer?()=>MPe(Y.initializer):()=>tn,Y.symbol.escapedName]),lt(Le(Zd(m),Y=>{var oe;if(!(Y.flags&16777216)||!((oe=u?.symbol)!=null&&oe.members))return!1;let Be=u.parent.parent;return Y.escapedName===W&&TN(Be)&&dU(Be.children).length?!1:!u.symbol.members.has(Y.escapedName)&&ufe(m,Y.escapedName)}),Y=>[()=>wt,Y.escapedName])),pg))}function j5(u,m){let v=g2(u)?BCn(u,m):jy(u,m),D=pat(v,u,m);if(D&&!(m&&m&2&&D.flags&8650752)){let W=Xf(D,Y=>la(Y)&32?Y:my(Y),!0);return W.flags&1048576&&ag(u)?TYs(u,W):W.flags&1048576&&fQ(u)?RYs(u,W):W}}function pat(u,m,v){if(u&&uh(u,465829888)){let D=sX(m);if(D&&v&1&&zt(D.inferences,v4s))return fat(u,D.nonFixingMapper);if(D?.returnMapper){let W=fat(u,D.returnMapper);return W.flags&1048576&&aG(W.types,Ys)&&aG(W.types,Bn)?am(W,Y=>Y!==Ys&&Y!==Bn):W}}return u}function fat(u,m){return u.flags&465829888?Cl(u,m):u.flags&1048576?Ha(lt(u.types,v=>fat(v,m)),0):u.flags&2097152?jg(lt(u.types,v=>fat(v,m))):u}function jy(u,m){var v;if(u.flags&67108864)return;let D=RCn(u,!m);if(D>=0)return Hb[D];let{parent:W}=u;switch(W.kind){case 261:case 170:case 173:case 172:case 209:return pYs(u,m);case 220:case 254:return fYs(u,m);case 230:return hYs(W,m);case 224:return IYs(W,m);case 214:case 215:return yCn(W,u);case 171:return mYs(W);case 217:case 235:return l2(W.type)?jy(W,m):tl(W.type);case 227:return _Ys(u,m);case 304:case 305:return qKt(W,m);case 306:return jy(W.parent,m);case 210:{let Y=W,oe=j5(Y,m),Be=SW(Y.elements,u),Me=(v=sa(Y)).spreadIndices??(v.spreadIndices=SYs(Y.elements));return $Kt(oe,Be,Y.elements.length,Me.first,Me.last)}case 228:return vYs(u,m);case 240:return pe.assert(W.parent.kind===229),CYs(W.parent,u);case 218:{if(Bo(W)){if(iEe(W))return tl(sEe(W));let Y=gv(W);if(Y&&!l2(Y.typeExpression.type))return tl(Y.typeExpression.type)}return jy(W,m)}case 236:return jy(W,m);case 239:return tl(W.type);case 278:return yO(W);case 295:return wYs(W,m);case 292:case 294:return wCn(W,m);case 287:case 286:return LYs(W,m);case 302:return ZYs(W)}}function TCn(u){EPe(u,jy(u,void 0),!0)}function EPe(u,m,v){Gf[h_]=u,Hb[h_]=m,JB[h_]=v,h_++}function cSe(){h_--,Gf[h_]=void 0,Hb[h_]=void 0,JB[h_]=void 0}function RCn(u,m){for(let v=h_-1;v>=0;v--)if(u===Gf[v]&&(m||!JB[v]))return v;return-1}function NYs(u,m){R1[ON]=u,p5[ON]=m,ON++}function DYs(){ON--,R1[ON]=void 0,p5[ON]=void 0}function sX(u){for(let m=ON-1;m>=0;m--)if(kW(u,R1[m]))return p5[m]}function kYs(u){Ak[dk]=u,f5[dk]??(f5[dk]=new Map),dk++}function xYs(){dk--,Ak[dk]=void 0,f5[dk].clear()}function GYs(u){for(let m=dk-1;m>=0;m--)if(u===Ak[m])return m;return-1}function FYs(){for(let u=dk-1;u>=0;u--)f5[u].clear()}function ZYs(u){return K5(EUt(!1),ude(u))}function LYs(u,m){if(sR(u)&&m!==4){let v=RCn(u.parent,!m);if(v>=0)return Hb[v]}return KKt(u,0)}function Iat(u,m){return Qw(m)||d_n(m)!==0?VYs(u,m):PYs(u,m)}function VYs(u,m){let v=N8t(u,cn);v=NCn(m,YK(m),v);let D=oX(pS.IntrinsicAttributes,m);return lo(D)||(v=VOe(D,v)),v}function WYs(u,m){if(u.compositeSignatures){let D=[];for(let W of u.compositeSignatures){let Y=Ad(W);if(Xo(Y))return Y;let oe=Wi(Y,m);if(!oe)return;D.push(oe)}return jg(D)}let v=Ad(u);return Xo(v)?v:Wi(v,m)}function OYs(u){if(Qw(u))return E_n(u);if(jq(u.tagName)){let v=OCn(u),D=Nat(u,v);return RK(D)}let m=DI(u.tagName);if(m.flags&128){let v=WCn(m,u);if(!v)return nn;let D=Nat(u,v);return RK(D)}return m}function NCn(u,m,v){let D=uQs(m);if(D){let W=OYs(u),Y=HCn(D,Bo(u),W,v);if(Y)return Y}return v}function PYs(u,m){let v=YK(m),D=AQs(v),W=D===void 0?N8t(u,cn):D===""?Ad(u):WYs(u,D);if(!W)return D&&B(m.attributes.properties)&&Br(m,Z.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,Bc(D)),cn;if(W=NCn(m,v,W),Xo(W))return W;{let Y=W,oe=oX(pS.IntrinsicClassAttributes,m);if(!lo(oe)){let Me=Kg(oe.symbol),He=Ad(u),$e;if(Me){let Vt=k9([He],Me,bk(Me),Bo(m));$e=Cl(oe,G1(Me,Vt))}else $e=oe;Y=VOe($e,Y)}let Be=oX(pS.IntrinsicAttributes,m);return lo(Be)||(Y=VOe(Be,Y)),Y}}function MYs(u){return u_(Te,"noImplicitAny")?Kl(u,(m,v)=>m===v||!m?m:gIn(m.typeParameters,v.typeParameters)?QYs(m,v):void 0):void 0}function HYs(u,m,v){if(!u||!m)return u||m;let D=Ha([fo(u),Cl(fo(m),v)]);return VK(u,D)}function YYs(u,m,v){let D=GE(u),W=GE(m),Y=D>=W?u:m,oe=Y===u?m:u,Be=Y===u?D:W,Me=vk(u)||vk(m),He=Me&&!vk(Y),$e=new Array(Be+(He?1:0));for(let Vt=0;Vt=BR(Y)&&Vt>=BR(oe),Yi=Vt>=D?void 0:pfe(u,Vt),js=Vt>=W?void 0:pfe(m,Vt),mo=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=dA(1|(ii&&!Sn?16777216:0),mo||`arg${Vt}`,Sn?32768:ii?16384:0);Ji.links.type=Sn?I0(dn):dn,$e[Vt]=Ji}if(He){let Vt=dA(1,"args",32768);Vt.links.type=I0(vR(oe,Be)),oe===m&&(Vt.links.type=Cl(Vt.links.type,v)),$e[Be]=Vt}return $e}function QYs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=G1(m.typeParameters,u.typeParameters));let W=(u.flags|m.flags)&166,Y=u.declaration,oe=YYs(u,m,D),Be=li(oe);Be&&aI(Be)&32768&&(W|=1);let Me=HYs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),$e=QN(Y,v,Me,oe,void 0,void 0,He,W);return $e.compositeKind=2097152,$e.compositeSignatures=Nn(u.compositeKind===2097152&&u.compositeSignatures||[u],[m]),D&&($e.mapper=u.compositeKind===2097152&&u.mapper&&u.compositeSignatures?Y5(u.mapper,D):D),$e}function e8t(u,m){let v=rg(u,0),D=Le(v,W=>!XYs(W,m));return D.length===1?D[0]:MYs(D)}function XYs(u,m){let v=0;for(;v{let oe=h.getTokenEnd();if(D.category===3&&v&&oe===v.start&&W===v.length){let Be=nQ(m.fileName,m.text,oe,W,D,Y);ug(v,Be)}else(!v||oe!==v.start)&&(v=rm(m,oe,W,D,Y),PA.add(v))}),h.setText(m.text,u.pos,u.end-u.pos);try{return h.scan(),pe.assert(h.reScanSlashToken(!0)===14,"Expected scanner to rescan RegularExpressionLiteral"),!!v}finally{h.setText(""),h.setOnError(void 0)}}return!1}function UYs(u){let m=sa(u);return m.flags&1||(m.flags|=1,g(()=>JYs(u))),KI}function KYs(u,m){Zecfe(kt)||Jb(kt)&&!kt.nameType&&!!U2e(kt.target||kt)),Vt=!1;for(let kt=0;ktoe[wr]&8?EO(kt,ri)||hr:kt),2):at?Ui:xe,Me))}function kCn(u){if(!(la(u)&4))return u;let m=u.literalType;return m||(m=u.literalType=VIn(u),m.objectFlags|=147456),m}function qYs(u){switch(u.kind){case 168:return $Ys(u);case 80:return bN(u.escapedText);case 9:case 11:return bN(u.text);default:return!1}}function $Ys(u){return P_(nT(u),296)}function nT(u){let m=sa(u.expression);if(!m.resolvedType){if((bh(u.parent.parent)||xa(u.parent.parent)||p_(u.parent.parent))&&po(u.expression)&&u.expression.operatorToken.kind===103&&u.parent.kind!==178&&u.parent.kind!==179)return m.resolvedType=nn;if(m.resolvedType=Ml(u.expression),pi(u.parent)&&!tm(u.parent)&&wd(u.parent.parent)){let v=oS(u.parent.parent),D=MKt(v);D&&(sa(D).flags|=4096,sa(u).flags|=32768,sa(u.parent.parent).flags|=32768)}(m.resolvedType.flags&98304||!P_(m.resolvedType,402665900)&&!pg(m.resolvedType,mc))&&Br(u,Z.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return m.resolvedType}function eQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return bN(u.escapedName)||v&&sh(v)&&qYs(v.name)}function xCn(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return J7(u)||v&&sh(v)&&Un(v.name)&&P_(nT(v.name),4096)}function tQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return v&&sh(v)&&Un(v.name)}function uSe(u,m,v,D){var W;let Y=[],oe;for(let Me=m;Me0&&(oe=$Q(oe,Ji(),u.symbol,dn,He),Y=[],W=$u(),ii=!1,Yi=!1,js=!1);let _l=$B(Ml(Mi.expression,m&2));if(SPe(_l)){let ka=HUt(_l,He);if(D&&ZCn(ka,D,Mi),mo=Y.length,lo(oe))continue;oe=$Q(oe,ka,u.symbol,dn,He)}else Br(Mi,Z.Spread_types_may_only_be_created_from_object_types),oe=nn;continue}else pe.assert(Mi.kind===178||Mi.kind===179),qq(Mi);Ka&&!(Ka.flags&8576)?pg(Ka,mc)&&(pg(Ka,ri)?Yi=!0:pg(Ka,ci)?js=!0:ii=!0,v&&(Sn=!0)):W.set(wo.escapedName,wo),Y.push(wo)}if(cSe(),lo(oe))return nn;if(oe!==Jg)return Y.length>0&&(oe=$Q(oe,Ji(),u.symbol,dn,He),Y=[],W=$u(),ii=!1,Yi=!1),Xf(oe,Mi=>Mi===Jg?Ji():Mi);return Ji();function Ji(){let Mi=[],wo=Ife(u);ii&&Mi.push(uSe(wo,mo,Y,$r)),Yi&&Mi.push(uSe(wo,mo,Y,ri)),js&&Mi.push(uSe(wo,mo,Y,ci));let Ka=Qf(u.symbol,W,E,E,Mi);return Ka.objectFlags|=dn|128|131072,wr&&(Ka.objectFlags|=4096),Sn&&(Ka.objectFlags|=512),v&&(Ka.pattern=u),Ka}}function SPe(u){let m=hmn(Xf(u,XN));return!!(m.flags&126615553||m.flags&3145728&&ue(m.types,SPe))}function nQs(u){r8t(u)}function iQs(u,m){return qq(u),BPe(u)||hr}function sQs(u){r8t(u.openingElement),jq(u.closingElement.tagName)?_at(u.closingElement):Ml(u.closingElement.tagName),Cat(u)}function oQs(u,m){return qq(u),BPe(u)||hr}function aQs(u){r8t(u.openingFragment);let m=ms(u);JAe(Te)&&(Te.jsxFactory||m.pragmas.has("jsx"))&&!Te.jsxFragmentFactory&&!m.pragmas.has("jsxfrag")&&Br(u,Te.jsxFactory?Z.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Z.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),Cat(u);let v=BPe(u);return lo(v)?hr:v}function t8t(u){return u.includes("-")}function jq(u){return Ir(u)&&pU(u.escapedText)||oR(u)}function GCn(u,m){return u.initializer?hfe(u.initializer,m):tn}function FCn(u,m=0){let v=at?$u():void 0,D=$u(),W=ch,Y=!1,oe,Be=!1,Me=2048,He=vPe(YK(u)),$e=Qw(u),Vt,kt=u;if(!$e){let Sn=u.attributes;Vt=Sn.symbol,kt=Sn;let ii=jy(Sn,0);for(let Yi of Sn.properties){let js=Yi.symbol;if(RN(Yi)){let mo=GCn(Yi,m);Me|=la(mo)&458752;let Ji=dA(4|js.flags,js.escapedName);if(Ji.declarations=js.declarations,Ji.parent=js.parent,js.valueDeclaration&&(Ji.valueDeclaration=js.valueDeclaration),Ji.links.type=mo,Ji.links.target=js,D.set(Ji.escapedName,Ji),v?.set(Ji.escapedName,Ji),Ez(Yi.name)===He&&(Be=!0),ii){let Mi=Fg(ii,js.escapedName);Mi&&Mi.declarations&&Iy(Mi)&&Ir(Yi.name)&&jB(Yi.name,Mi.declarations,Yi.name.escapedText)}if(ii&&m&2&&!(m&4)&&wS(Yi)){let Mi=sX(Sn);pe.assert(Mi);let wo=Yi.initializer.expression;mKt(Mi,wo,mo)}}else{pe.assert(Yi.kind===294),D.size>0&&(W=$Q(W,dn(),Sn.symbol,Me,!1),D=$u());let mo=$B(Ml(Yi.expression,m&2));Xo(mo)&&(Y=!0),SPe(mo)?(W=$Q(W,mo,Sn.symbol,Me,!1),v&&ZCn(mo,v,Yi)):(Br(Yi.expression,Z.Spread_types_may_only_be_created_from_object_types),oe=oe?jg([oe,mo]):mo)}}Y||D.size>0&&(W=$Q(W,dn(),Sn.symbol,Me,!1))}let wr=u.parent;if((TN(wr)&&wr.openingElement===u||U3(wr)&&wr.openingFragment===u)&&dU(wr.children).length>0){let Sn=Cat(wr,m);if(!Y&&He&&He!==""){Be&&Br(kt,Z._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,Bc(He));let ii=sR(u)?j5(u.attributes,void 0):void 0,Yi=ii&&K5(ii,He),js=dA(4,He);js.links.type=Sn.length===1?Sn[0]:Yi&&Lv(Yi,cfe)?Ek(Sn):I0(Ha(Sn)),js.valueDeclaration=me.createPropertySignature(void 0,Bc(He),void 0,void 0),UA(js.valueDeclaration,kt),js.valueDeclaration.symbol=js;let mo=$u();mo.set(He,js),W=$Q(W,Qf(Vt,mo,E,E,E),Vt,Me,!1)}}if(Y)return hr;if(oe&&W!==ch)return jg([oe,W]);return oe||(W===ch?dn():W);function dn(){return Me|=8192,cQs(Me,Vt,D)}}function cQs(u,m,v){let D=Qf(m,v,E,E,E);return D.objectFlags|=u|8192|128|131072,D}function Cat(u,m){let v=[];for(let D of u.children)if(D.kind===12)D.containsOnlyTriviaWhiteSpaces||v.push($r);else{if(D.kind===295&&!D.expression)continue;v.push(hfe(D,m))}return v}function ZCn(u,m,v){for(let D of Zd(u))if(!(D.flags&16777216)){let W=m.get(D.escapedName);if(W){let Y=Br(W.valueDeclaration,Z._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,Bc(W.escapedName));ug(Y,ho(v,Z.This_spread_always_overwrites_this_property))}}}function lQs(u,m){return FCn(u.parent,m)}function oX(u,m){let v=YK(m),D=v&&N1(v),W=D&&m_(D,u,788968);return W?Lp(W):nn}function _at(u){let m=sa(u);if(!m.resolvedSymbol){let v=oX(pS.IntrinsicElements,u);if(lo(v))return Rt&&Br(u,Z.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,Bc(pS.IntrinsicElements)),m.resolvedSymbol=st;{if(!Ir(u.tagName)&&!oR(u.tagName))return pe.fail();let D=oR(u.tagName)?gS(u.tagName):u.tagName.escapedText,W=Fg(v,D);if(W)return m.jsxFlags|=1,m.resolvedSymbol=W;let Y=cyn(v,kE(Bc(D)));return Y?(m.jsxFlags|=2,m.resolvedSymbol=Y):Ba(v,D)?(m.jsxFlags|=2,m.resolvedSymbol=v.symbol):(Br(u,Z.Property_0_does_not_exist_on_type_1,oEe(u.tagName),"JSX."+pS.IntrinsicElements),m.resolvedSymbol=st)}}return m.resolvedSymbol}function yat(u){let m=u&&ms(u),v=m&&sa(m);if(v&&v.jsxImplicitImportContainer===!1)return;if(v&&v.jsxImplicitImportContainer)return v.jsxImplicitImportContainer;let D=nie(rie(Te,m),Te);if(!D)return;let Y=F_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed,oe=Q8s(m,D),Be=pK(oe||u,D,Y,u),Me=Be&&Be!==st?qA(Oh(Be)):void 0;return v&&(v.jsxImplicitImportContainer=Me||!1),Me}function YK(u){let m=u&&sa(u);if(m&&m.jsxNamespace)return m.jsxNamespace;if(!m||m.jsxNamespace!==!1){let D=yat(u);if(!D||D===st){let W=Uw(u);D=An(u,W,1920,void 0,!1)}if(D){let W=Oh(m_(N1(Oh(D)),pS.JSX,1920));if(W&&W!==st)return m&&(m.jsxNamespace=W),W}m&&(m.jsxNamespace=!1)}let v=Oh(Kse(pS.JSX,1920,void 0));if(v!==st)return v}function LCn(u,m){let v=m&&m_(m.exports,u,788968),D=v&&Lp(v),W=D&&Zd(D);if(W){if(W.length===0)return"";if(W.length===1)return W[0].escapedName;W.length>1&&v.declarations&&Br(v.declarations[0],Z.The_global_type_JSX_0_may_not_have_more_than_one_property,Bc(u))}}function uQs(u){return u&&m_(u.exports,pS.LibraryManagedAttributes,788968)}function gQs(u){return u&&m_(u.exports,pS.ElementType,788968)}function AQs(u){return LCn(pS.ElementAttributesPropertyNameContainer,u)}function vPe(u){return Te.jsx===4||Te.jsx===5?"children":LCn(pS.ElementChildrenAttributeNameContainer,u)}function VCn(u,m){if(u.flags&4)return[Ls];if(u.flags&128){let W=WCn(u,m);return W?[Nat(m,W)]:(Br(m,Z.Property_0_does_not_exist_on_type_1,u.value,"JSX."+pS.IntrinsicElements),E)}let v=my(u),D=rg(v,1);return D.length===0&&(D=rg(v,0)),D.length===0&&v.flags&1048576&&(D=eUt(lt(v.types,W=>VCn(W,m)))),D}function WCn(u,m){let v=oX(pS.IntrinsicElements,m);if(!lo(v)){let D=u.value,W=Fg(v,pp(D));if(W)return fo(W);let Y=O5(v,$r);return Y||void 0}return hr}function dQs(u,m,v){if(u===1){let W=MCn(v);W&&Gv(m,W,A0,v.tagName,Z.Its_return_type_0_is_not_a_valid_JSX_element,D)}else if(u===0){let W=PCn(v);W&&Gv(m,W,A0,v.tagName,Z.Its_instance_type_0_is_not_a_valid_JSX_element,D)}else{let W=MCn(v),Y=PCn(v);if(!W||!Y)return;let oe=Ha([W,Y]);Gv(m,oe,A0,v.tagName,Z.Its_element_type_0_is_not_a_valid_JSX_element,D)}function D(){let W=Fp(v.tagName);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,W)}}function OCn(u){var m;pe.assert(jq(u.tagName));let v=sa(u);if(!v.resolvedJsxElementAttributesType){let D=_at(u);if(v.jsxFlags&1)return v.resolvedJsxElementAttributesType=fo(D)||nn;if(v.jsxFlags&2){let W=oR(u.tagName)?gS(u.tagName):u.tagName.escapedText;return v.resolvedJsxElementAttributesType=((m=Oq(oX(pS.IntrinsicElements,u),W))==null?void 0:m.type)||nn}else return v.resolvedJsxElementAttributesType=nn}return v.resolvedJsxElementAttributesType}function PCn(u){let m=oX(pS.ElementClass,u);if(!lo(m))return m}function BPe(u){return oX(pS.Element,u)}function MCn(u){let m=BPe(u);if(m)return Ha([m,Hn])}function pQs(u){let m=YK(u);if(!m)return;let v=gQs(m);if(!v)return;let D=HCn(v,Bo(u));if(!(!D||lo(D)))return D}function HCn(u,m,...v){let D=Lp(u);if(u.flags&524288){let W=fa(u).typeParameters;if(B(W)>=v.length){let Y=k9(v,W,v.length,m);return B(Y)===0?D:Jse(u,Y)}}if(B(D.typeParameters)>=v.length){let W=k9(v,D.typeParameters,v.length,m);return gZ(D,W)}}function fQs(u){let m=oX(pS.IntrinsicElements,u);return m?Zd(m):E}function IQs(u){(Te.jsx||0)===0&&Br(u,Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided),BPe(u)===void 0&&Rt&&Br(u,Z.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function r8t(u){let m=nI(u);m&&I8s(u),IQs(u),PKt(u);let v=ioe(u);if(kat(v,u),m){let D=u,W=pQs(D);if(W!==void 0){let Y=D.tagName,oe=jq(Y)?kE(oEe(Y)):Ml(Y);Gv(oe,W,A0,Y,Z.Its_type_0_is_not_a_valid_JSX_element_type,()=>{let Be=Fp(Y);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,Be)})}else dQs(d_n(D),Ad(v),D)}}function bat(u,m,v){if(u.flags&524288&&(KQ(u,m)||Oq(u,m)||Z2e(m)&&sG(u,$r)||v&&t8t(m)))return!0;if(u.flags&33554432)return bat(u.baseType,m,v);if(u.flags&3145728&&gSe(u)){for(let D of u.types)if(bat(D,m,v))return!0}return!1}function gSe(u){return!!(u.flags&524288&&!(la(u)&512)||u.flags&67108864||u.flags&33554432&&gSe(u.baseType)||u.flags&1048576&&zt(u.types,gSe)||u.flags&2097152&&ue(u.types,gSe))}function hQs(u,m){if(m8s(u),u.expression){let v=Ml(u.expression,m);return u.dotDotDotToken&&v!==hr&&!Fv(v)&&Br(u,Z.JSX_spread_child_must_be_an_array_type),v}else return nn}function n8t(u){return u.valueDeclaration?cX(u.valueDeclaration):0}function i8t(u){if(u.flags&8192||aI(u)&4)return!0;if(Bo(u.valueDeclaration)){let m=u.valueDeclaration.parent;return m&&po(m)&&oI(m)===3}}function s8t(u,m,v,D,W,Y=!0){let oe=Y?u.kind===167?u.right:u.kind===206?u:u.kind===209&&u.propertyName?u.propertyName:u.name:void 0;return YCn(u,m,v,D,W,oe)}function YCn(u,m,v,D,W,Y){var oe;let Be=p2(W,v);if(m){if(Ze<2&&QCn(W))return Y&&Br(Y,Z.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(Be&64)return Y&&Br(Y,Z.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,xl(W),ro(Qq(W))),!1;if(!(Be&256)&&((oe=W.declarations)!=null&&oe.some(Ore)))return Y&&Br(Y,Z.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,xl(W)),!1}if(Be&64&&QCn(W)&&(pne(u)||NZe(u)||$m(u.parent)&&aAe(u.parent.parent))){let He=mN(nC(W));if(He&&pKs(u))return Y&&Br(Y,Z.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,xl(W),A2(He.name)),!1}if(!(Be&6))return!0;if(Be&2){let He=mN(nC(W));return u6t(u,He)?!0:(Y&&Br(Y,Z.Property_0_is_private_and_only_accessible_within_class_1,xl(W),ro(Qq(W))),!1)}if(m)return!0;let Me=oyn(u,He=>{let $e=Lp(Uo(He));return amn($e,W,v)});return!Me&&(Me=mQs(u),Me=Me&&amn(Me,W,v),Be&256||!Me)?(Y&&Br(Y,Z.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,xl(W),ro(Qq(W)||D)),!1):Be&256?!0:(D.flags&262144&&(D=D.isThisType?Ky(D):O_(D)),!D||!da(D,Me)?(Y&&Br(Y,Z.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,xl(W),ro(Me),ro(D)),!1):!0)}function mQs(u){let m=CQs(u),v=m?.type&&tl(m.type);if(v)v.flags&262144&&(v=Ky(v));else{let D=s0(u,!1,!1);Eu(D)&&(v=XKt(D))}if(v&&la(v)&7)return vs(v)}function CQs(u){let m=s0(u,!1,!1);return m&&Eu(m)?GW(m):void 0}function QCn(u){return!!oPe(u,m=>!(m.flags&8192))}function roe(u){return KN(Ml(u),u)}function wPe(u){return ER(u,50331648)}function o8t(u){return wPe(u)?mZ(u):u}function _Qs(u,m){let v=Hd(u)?ly(u):void 0;if(u.kind===106){Br(u,Z.The_value_0_cannot_be_used_here,"null");return}if(v!==void 0&&v.length<100){if(Ir(u)&&v==="undefined"){Br(u,Z.The_value_0_cannot_be_used_here,"undefined");return}Br(u,m&16777216?m&33554432?Z._0_is_possibly_null_or_undefined:Z._0_is_possibly_undefined:Z._0_is_possibly_null,v)}else Br(u,m&16777216?m&33554432?Z.Object_is_possibly_null_or_undefined:Z.Object_is_possibly_undefined:Z.Object_is_possibly_null)}function yQs(u,m){Br(u,m&16777216?m&33554432?Z.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Z.Cannot_invoke_an_object_which_is_possibly_undefined:Z.Cannot_invoke_an_object_which_is_possibly_null)}function XCn(u,m,v){if(at&&u.flags&2){if(Hd(m)){let W=ly(m);if(W.length<100)return Br(m,Z._0_is_of_type_unknown,W),nn}return Br(m,Z.Object_is_of_type_unknown),nn}let D=qse(u,50331648);if(D&50331648){v(m,D);let W=mZ(u);return W.flags&229376?nn:W}return u}function KN(u,m){return XCn(u,m,_Qs)}function JCn(u,m){let v=KN(u,m);if(v.flags&16384){if(Hd(m)){let D=ly(m);if(Ir(m)&&D==="undefined")return Br(m,Z.The_value_0_cannot_be_used_here,D),v;if(D.length<100)return Br(m,Z._0_is_possibly_undefined,D),v}Br(m,Z.Object_is_possibly_undefined)}return v}function Eat(u,m,v){return u.flags&64?bQs(u,m):c8t(u,u.expression,roe(u.expression),u.name,m,v)}function bQs(u,m){let v=Ml(u.expression),D=eSe(v,u.expression);return Uot(c8t(u,u.expression,KN(D,u.expression),u.name,m),u,D!==v)}function UCn(u,m){let v=lAe(u)&&kF(u.left)?KN(yPe(u.left),u.left):roe(u.left);return c8t(u,u.left,v,u.right,m)}function a8t(u){for(;u.parent.kind===218;)u=u.parent;return Av(u.parent)&&u.parent.expression===u}function TPe(u,m){for(let v=sAe(m);v;v=_C(v)){let{symbol:D}=v,W=Fne(D,u),Y=D.members&&D.members.get(W)||D.exports&&D.exports.get(W);if(Y)return Y}}function EQs(u){if(!_C(u))return os(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies);if(!m9e(u.parent)){if(!UT(u))return os(u,Z.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);let m=po(u.parent)&&u.parent.operatorToken.kind===103;if(!Sat(u)&&!m)return os(u,Z.Cannot_find_name_0,Vo(u))}return!1}function SQs(u){EQs(u);let m=Sat(u);return m&&NPe(m,void 0,!1),hr}function Sat(u){if(!UT(u))return;let m=sa(u);return m.resolvedSymbol===void 0&&(m.resolvedSymbol=TPe(u.escapedText,u)),m.resolvedSymbol}function vat(u,m){return Fg(u,m.escapedName)}function vQs(u,m,v){let D,W=Zd(u);W&&F(W,oe=>{let Be=oe.valueDeclaration;if(Be&&sh(Be)&&p(Be.name)&&Be.name.escapedText===m.escapedText)return D=oe,!0});let Y=RE(m);if(D){let oe=pe.checkDefined(D.valueDeclaration),Be=pe.checkDefined(_C(oe));if(v?.valueDeclaration){let Me=v.valueDeclaration,He=_C(Me);if(pe.assert(!!He),ji(He,$e=>Be===$e)){let $e=Br(m,Z.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,Y,ro(u));return ug($e,ho(Me,Z.The_shadowing_declaration_of_0_is_defined_here,Y),ho(oe,Z.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,Y)),!0}}return Br(m,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,Y,RE(Be.name||Yet)),!0}return!1}function KCn(u,m){return(rG(m)||pne(u)&&Ck(m))&&s0(u,!0,!1)===So(m)}function c8t(u,m,v,D,W,Y){let oe=sa(m).resolvedSymbol,Be=zD(u),Me=my(Be!==0||a8t(u)?F1(v):v),He=Xo(Me)||Me===Vn,$e;if(p(D)){(Ze{switch(v.kind){case 173:case 176:return!0;case 187:case 288:return"quit";case 220:return m?!1:"quit";case 242:return Gd(v.parent)&&v.parent.kind!==220?"quit":!1;default:return!1}})}function wQs(u){if(!(u.parent.flags&32))return!1;let m=fo(u.parent);for(;;){if(m=m.symbol&&TQs(m),!m)return!1;let v=Fg(m,u.escapedName);if(v&&v.valueDeclaration)return!0}}function TQs(u){let m=tT(u);if(m.length!==0)return jg(m)}function zCn(u,m,v){let D=sa(u),W=D.nonExistentPropCheckCache||(D.nonExistentPropCheckCache=new Set),Y=`${UC(m)}|${v}`;if(W.has(Y))return;W.add(Y);let oe,Be;if(!p(u)&&m.flags&1048576&&!(m.flags&402784252)){for(let He of m.types)if(!Fg(He,u.escapedText)&&!Oq(He,u.escapedText)){oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Md(u),ro(He));break}}if(qCn(u.escapedText,m)){let He=Md(u),$e=ro(m);oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,He,$e,$e+"."+He)}else{let He=bSe(m);if(He&&Fg(He,u.escapedText))oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Md(u),ro(m)),Be=ho(u,Z.Did_you_forget_to_use_await);else{let $e=Md(u),Vt=ro(m),kt=DQs($e,m);if(kt!==void 0)oe=wu(oe,Z.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,$e,Vt,kt);else{let wr=g8t(u,m);if(wr!==void 0){let dn=of(wr),Sn=v?Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2:Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2;oe=wu(oe,Sn,$e,Vt,dn),Be=wr.valueDeclaration&&ho(wr.valueDeclaration,Z._0_is_declared_here,dn)}else{let dn=RQs(m)?Z.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Z.Property_0_does_not_exist_on_type_1;oe=wu(lUt(oe,m),dn,$e,Vt)}}}}let Me=kw(ms(u),u,oe);Be&&ug(Me,Be),Kx(!v||oe.code!==Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Me)}function RQs(u){return Te.lib&&!Te.lib.includes("lib.dom.d.ts")&&xHs(u,m=>m.symbol&&/^(?:EventTarget|Node|(?:HTML[a-zA-Z]*)?Element)$/.test(Bc(m.symbol.escapedName)))&&IZ(u)}function qCn(u,m){let v=m.symbol&&Fg(fo(m.symbol),u);return v!==void 0&&!!v.valueDeclaration&&lg(v.valueDeclaration)}function NQs(u){let m=RE(u),D=ine().get(m);return D&&vu(D.keys())}function DQs(u,m){let v=my(m).symbol;if(!v)return;let D=of(v),Y=ine().get(D);if(Y){for(let[oe,Be]of Y)if(k(Be,u))return oe}}function $Cn(u,m){return RPe(u,Zd(m),106500)}function g8t(u,m){let v=Zd(m);if(typeof u!="string"){let D=u.parent;jo(D)&&(v=Le(v,W=>i_n(D,m,W))),u=Vo(u)}return RPe(u,v,111551)}function e_n(u,m){let v=Xs(u)?u:Vo(u),D=Zd(m);return(v==="for"?de(D,Y=>of(Y)==="htmlFor"):v==="class"?de(D,Y=>of(Y)==="className"):void 0)??RPe(v,D,111551)}function t_n(u,m){let v=g8t(u,m);return v&&of(v)}function kQs(u,m,v){let D=m_(u,m,v);if(D)return D;let W;return u===Gr?W=Xt(["string","number","boolean","object","bigint","symbol"],oe=>u.has(oe.charAt(0).toUpperCase()+oe.slice(1))?dA(524288,oe):void 0).concat(Do(u.values())):W=Do(u.values()),RPe(Bc(m),W,v)}function r_n(u,m,v){return pe.assert(m!==void 0,"outername should always be defined"),si(u,m,v,void 0,!1,!1)}function A8t(u,m){return m.exports&&RPe(Vo(u),Tq(m),2623475)}function xQs(u,m,v){function D(oe){let Be=KQ(u,oe);if(Be){let Me=XK(fo(Be));return!!Me&&BR(Me)>=1&&pg(v,vR(Me,0))}return!1}let W=RF(m)?"set":"get";if(!D(W))return;let Y=LW(m.expression);return Y===void 0?Y=W:Y+="."+W,Y}function GQs(u,m){let v=m.types.filter(D=>!!(D.flags&128));return Dr(u.value,v,D=>D.value)}function RPe(u,m,v){return Dr(u,m,D);function D(W){let Y=of(W);if(!Ac(Y,'"')){if(W.flags&v)return Y;if(W.flags&2097152){let oe=Sq(W);if(oe&&oe.flags&v)return Y}}}}function NPe(u,m,v){let D=u&&u.flags&106500&&u.valueDeclaration;if(!D)return;let W=Lb(D,2),Y=u.valueDeclaration&&sh(u.valueDeclaration)&&p(u.valueDeclaration.name);if(!(!W&&!Y)&&!(m&&LAe(m)&&!(u.flags&65536))){if(v){let oe=ji(m,Gd);if(oe&&oe.symbol===u)return}(aI(u)&1?fa(u).target:u).isReferenced=-1}}function n_n(u,m){return u.kind===110||!!m&&Hd(u)&&m===O0(R0(u))}function FQs(u,m){switch(u.kind){case 212:return d8t(u,u.expression.kind===108,m,F1(Ml(u.expression)));case 167:return d8t(u,!1,m,F1(Ml(u.left)));case 206:return d8t(u,!1,m,tl(u))}}function i_n(u,m,v){return p8t(u,u.kind===212&&u.expression.kind===108,!1,m,v)}function d8t(u,m,v,D){if(Xo(D))return!0;let W=Fg(D,v);return!!W&&p8t(u,m,!1,D,W)}function p8t(u,m,v,D,W){if(Xo(D))return!0;if(W.valueDeclaration&&hC(W.valueDeclaration)){let Y=_C(W.valueDeclaration);return!LC(u)&&!!ji(u,oe=>oe===Y)}return YCn(u,m,v,D,W)}function ZQs(u){let m=u.initializer;if(m.kind===262){let v=m.declarations[0];if(v&&!Nu(v.name))return Uo(v)}else if(m.kind===80)return O0(m)}function LQs(u){return f0(u).length===1&&!!sG(u,ri)}function VQs(u){let m=JA(u);if(m.kind===80){let v=O0(m);if(v.flags&3){let D=u,W=u.parent;for(;W;){if(W.kind===250&&D===W.statement&&ZQs(W)===v&&LQs(M_(W.expression)))return!0;D=W,W=W.parent}}}return!1}function WQs(u,m){return u.flags&64?OQs(u,m):s_n(u,roe(u.expression),m)}function OQs(u,m){let v=Ml(u.expression),D=eSe(v,u.expression);return Uot(s_n(u,KN(D,u.expression),m),u,D!==v)}function s_n(u,m,v){let D=zD(u)!==0||a8t(u)?F1(m):m,W=u.argumentExpression,Y=Ml(W);if(lo(D)||D===Vn)return D;if(Zat(D)&&!_A(W))return Br(W,Z.A_const_enum_member_can_only_be_accessed_using_a_string_literal),nn;let oe=VQs(W)?ri:Y,Be=zD(u),Me;Be===0?Me=32:(Me=4|(xK(D)&&!bz(D)?2:0),Be===2&&(Me|=32));let He=EO(D,oe,Me,u)||nn;return p0n(jCn(u,sa(u).resolvedSymbol,He,W,v),u)}function o_n(u){return Av(u)||QI(u)||nI(u)}function QK(u){return o_n(u)&&F(u.typeArguments,nA),u.kind===216?Ml(u.template):nI(u)?Ml(u.attributes):po(u)?Ml(u.left):Av(u)&&F(u.arguments,m=>{Ml(m)}),Ls}function SR(u){return QK(u),Za}function PQs(u,m,v){let D,W,Y=0,oe,Be=-1,Me;pe.assert(!m.length);for(let He of u){let $e=He.declaration&&Uo(He.declaration),Vt=He.declaration&&He.declaration.parent;!W||$e===W?D&&Vt===D?oe=oe+1:(D=Vt,oe=Y):(oe=Y=m.length,D=Vt),W=$e,$tn(He)?(Be++,Me=Be,Y++):Me=oe,m.splice(Me,0,v?SPs(He,v):He)}}function Bat(u){return!!u&&(u.kind===231||u.kind===238&&u.isSpread)}function f8t(u){return Se(u,Bat)}function a_n(u){return!!(u.flags&16384)}function MQs(u){return!!(u.flags&49155)}function wat(u,m,v,D=!1){if(Qw(u))return!0;let W,Y=!1,oe=GE(v),Be=BR(v);if(u.kind===216)if(W=m.length,u.template.kind===229){let Me=Ei(u.template.templateSpans);Y=af(Me.literal)||!!Me.literal.isUnterminated}else{let Me=u.template;pe.assert(Me.kind===15),Y=!!Me.isUnterminated}else if(u.kind===171)W=f_n(u,v);else if(u.kind===227)W=1;else if(nI(u)){if(Y=u.attributes.end===u.end,Y)return!0;W=Be===0?m.length:1,oe=m.length===0?oe:1,Be=Math.min(Be,1)}else if(u.arguments){W=D?m.length+1:m.length,Y=u.arguments.end===u.end;let Me=f8t(m);if(Me>=0)return Me>=BR(v)&&(vk(v)||Meoe)return!1;if(Y||W>=Be)return!0;for(let Me=W;Me=D&&m.length<=v}function c_n(u,m){let v;return!!(u.target&&(v=aX(u.target,m))&&H5(v))}function XK(u){return ASe(u,0,!1)}function l_n(u){return ASe(u,0,!1)||ASe(u,1,!1)}function ASe(u,m,v){if(u.flags&524288){let D=_R(u);if(v||D.properties.length===0&&D.indexInfos.length===0){if(m===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(m===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function u_n(u,m,v,D){let W=nSe(GIn(u),u,0,D),Y=fSe(m),oe=v&&(Y&&Y.flags&262144?v.nonFixingMapper:v.mapper),Be=oe?ZK(m,oe):m;return fKt(Be,u,(Me,He)=>{lG(W.inferences,Me,He)}),v||IKt(m,u,(Me,He)=>{lG(W.inferences,Me,He,128)}),M2e(u,TKt(W),Bo(m.declaration))}function HQs(u,m,v,D){let W=Iat(m,u),Y=soe(u.attributes,W,D,v);return lG(D.inferences,Y,W),TKt(D)}function g_n(u){if(!u)return es;let m=Ml(u);return gLe(u)?m:IW(u.parent)?mZ(m):LC(u.parent)?Jot(m):m}function h8t(u,m,v,D,W){if(nI(u))return HQs(u,m,D,W);if(u.kind!==171&&u.kind!==227){let Me=ue(m.typeParameters,$e=>!!jQ($e)),He=jy(u,Me?8:0);if(He){let $e=Ad(m);if(TO($e)){let Vt=sX(u);if(!(!Me&&jy(u,8)!==He)){let Sn=_Kt(ymn(Vt,1)),ii=Cl(He,Sn),Yi=XK(ii),js=Yi&&Yi.typeParameters?RK(fUt(Yi,Yi.typeParameters)):ii;lG(W.inferences,js,$e,128)}let wr=nSe(m.typeParameters,m,W.flags),dn=Cl(He,Vt&&M5s(Vt));lG(wr.inferences,dn,$e),W.returnMapper=zt(wr.inferences,ooe)?_Kt(qMs(wr)):void 0}}}let Y=ISe(m),oe=Y?Math.min(GE(m)-1,v.length):v.length;if(Y&&Y.flags&262144){let Me=de(W.inferences,He=>He.typeParameter===Y);Me&&(Me.impliedArity=Se(v,Bat,oe)<0?v.length-oe:void 0)}let Be=P5(m);if(Be&&TO(Be)){let Me=p_n(u);lG(W.inferences,g_n(Me),Be)}for(let Me=0;Me=v-1){let $e=u[v-1];if(Bat($e)){let Vt=$e.kind===238?$e.type:soe($e.expression,D,W,Y);return F9(Vt)?A_n(Vt):I0(L9(33,Vt,wt,$e.kind===231?$e.expression:$e),oe)}}let Be=[],Me=[],He=[];for(let $e=m;$ewu(void 0,Z.Type_0_does_not_satisfy_the_constraint_1):void 0,Vt=D||Z.Type_0_does_not_satisfy_the_constraint_1;Be||(Be=G1(Y,oe));let kt=oe[Me];if(!h0(kt,k1(Cl(He,Be),kt),v?m[Me]:void 0,Vt,$e))return}}return oe}function d_n(u){if(jq(u.tagName))return 2;let m=my(Ml(u.tagName));return B(rg(m,1))?0:B(rg(m,0))?1:2}function YQs(u,m,v,D,W,Y,oe){let Be=Iat(m,u),Me=Qw(u)?FCn(u):soe(u.attributes,Be,void 0,D),He=D&4?rSe(Me):Me;return $e()&&$Ut(He,Be,v,W?Qw(u)?u:u.tagName:void 0,Qw(u)?void 0:u.attributes,void 0,Y,oe);function $e(){var Vt;if(yat(u))return!0;let kt=(sR(u)||GU(u))&&!(jq(u.tagName)||oR(u.tagName))?Ml(u.tagName):void 0;if(!kt)return!0;let wr=rg(kt,0);if(!B(wr))return!0;let dn=f6t(u);if(!dn)return!0;let Sn=NI(dn,111551,!0,!1,u);if(!Sn)return!0;let ii=fo(Sn),Yi=rg(ii,0);if(!B(Yi))return!0;let js=!1,mo=0;for(let Mi of Yi){let wo=vR(Mi,0),Ka=rg(wo,0);if(B(Ka))for(let _l of Ka){if(js=!0,vk(_l))return!0;let ka=GE(_l);ka>mo&&(mo=ka)}}if(!js)return!0;let Ji=1/0;for(let Mi of wr){let wo=BR(Mi);wo{W.push(Y.expression)}),W}if(u.kind===171)return QQs(u);if(u.kind===227)return[u.left];if(nI(u))return u.attributes.properties.length>0||sR(u)&&u.parent.children.length>0?[u.attributes]:E;let m=u.arguments||E,v=f8t(m);if(v>=0){let D=m.slice(0,v);for(let W=v;W{var He;let $e=oe.target.elementFlags[Me],Vt=dSe(Y,$e&4?I0(Be):Be,!!($e&12),(He=oe.target.labeledElementDeclarations)==null?void 0:He[Me]);D.push(Vt)}):D.push(Y)}return D}return m}function QQs(u){let m=u.expression,v=k8t(u);if(v){let D=[];for(let W of v.parameters){let Y=fo(W);D.push(dSe(m,Y))}return D}return pe.fail()}function f_n(u,m){return Te.experimentalDecorators?XQs(u,m):Math.min(Math.max(GE(m),1),2)}function XQs(u,m){switch(u.parent.kind){case 264:case 232:return 1;case 173:return Zw(u.parent)?3:2;case 175:case 178:case 179:return m.parameters.length<=2?2:3;case 170:return 3;default:return pe.fail()}}function I_n(u){let m=ms(u),{start:v,length:D}=qa(m,jo(u.expression)?u.expression.name:u.expression);return{start:v,length:D,sourceFile:m}}function pSe(u,m,...v){if(Ll(u)){let{sourceFile:D,start:W,length:Y}=I_n(u);return"message"in m?rm(D,W,Y,m,...v):Ut(D,m)}else return"message"in m?ho(u,m,...v):kw(ms(u),u,m)}function JQs(u){return Av(u)?jo(u.expression)?u.expression.name:u.expression:QI(u)?jo(u.tag)?u.tag.name:u.tag:nI(u)?u.tagName:u}function UQs(u){if(!Ll(u)||!Ir(u.expression))return!1;let m=An(u.expression,u.expression.escapedText,111551,void 0,!1),v=m?.valueDeclaration;if(!v||!Si(v)||!ZF(v.parent)||!C2(v.parent.parent)||!Ir(v.parent.parent.expression))return!1;let D=SUt(!1);return D?Vv(v.parent.parent.expression,!0)===D:!1}function h_n(u,m,v,D){var W;let Y=f8t(v);if(Y>-1)return ho(v[Y],Z.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let oe=Number.POSITIVE_INFINITY,Be=Number.NEGATIVE_INFINITY,Me=Number.NEGATIVE_INFINITY,He=Number.POSITIVE_INFINITY,$e;for(let Sn of m){let ii=BR(Sn),Yi=GE(Sn);iiMe&&(Me=ii),v.lengthW?oe=Math.min(oe,Me):He1&&(Sn=_l(Yi,pk,Ji,Mi)),Sn||(Sn=_l(Yi,A0,Ji,Mi));let wo=sa(u);if(wo.resolvedSignature!==Go&&!v)return pe.assert(wo.resolvedSignature),wo.resolvedSignature;if(Sn)return Sn;if(Sn=jQs(u,Yi,mo,!!v,D),wo.resolvedSignature=Sn,Vt){if(!Y&&$e&&(Y=Z.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),kt)if(kt.length===1||kt.length>3){let ka=kt[kt.length-1],Kc;kt.length>3&&(Kc=wu(Kc,Z.The_last_overload_gave_the_following_error),Kc=wu(Kc,Z.No_overload_matches_this_call)),Y&&(Kc=wu(Kc,Y));let Vu=DPe(u,mo,ka,A0,0,!0,()=>Kc);if(Vu)for(let dd of Vu)ka.declaration&&kt.length>3&&ug(dd,ho(ka.declaration,Z.The_last_overload_is_declared_here)),Ka(ka,dd),PA.add(dd);else pe.fail("No error for last overload signature")}else{let ka=[],Kc=0,Vu=Number.MAX_VALUE,dd=0,Vl=0;for(let eo of kt){let Co=DPe(u,mo,eo,A0,0,!0,()=>wu(void 0,Z.Overload_0_of_1_2_gave_the_following_error,Vl+1,Yi.length,mO(eo)));Co?(Co.length<=Vu&&(Vu=Co.length,dd=Vl),Kc=Math.max(Kc,Co.length),ka.push(Co)):pe.fail("No error for 3 or fewer overload signatures"),Vl++}let vf=Kc>1?ka[dd]:Sr(ka);pe.assert(vf.length>0,"No errors reported for 3 or fewer overload signatures");let zI=wu(lt(vf,Qr),Z.No_overload_matches_this_call);Y&&(zI=wu(zI,Y));let P0=[...jt(vf,eo=>eo.relatedInformation)],xs;if(ue(vf,eo=>eo.start===vf[0].start&&eo.length===vf[0].length&&eo.file===vf[0].file)){let{file:eo,start:qc,length:Co}=vf[0];xs={file:eo,start:qc,length:Co,code:zI.code,category:zI.category,messageText:zI,relatedInformation:P0}}else xs=kw(ms(u),JQs(u),zI,P0);Ka(kt[0],xs),PA.add(xs)}else if(wr)PA.add(h_n(u,[wr],mo,Y));else if(dn)C8t(dn,u.typeArguments,!0,Y);else if(!He){let ka=Le(m,Kc=>I8t(Kc,js));ka.length===0?PA.add(KQs(u,m,js,Y)):PA.add(h_n(u,ka,mo,Y))}}return Sn;function Ka(ka,Kc){var Vu,dd;let Vl=kt,vf=wr,zI=dn,P0=((dd=(Vu=ka.declaration)==null?void 0:Vu.symbol)==null?void 0:dd.declarations)||E,eo=P0.length>1?de(P0,qc=>Gd(qc)&&p1(qc.body)):void 0;if(eo){let qc=BS(eo),Co=!qc.typeParameters;_l([qc],A0,Co)&&ug(Kc,ho(eo,Z.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}kt=Vl,wr=vf,dn=zI}function _l(ka,Kc,Vu,dd=!1){if(kt=void 0,wr=void 0,dn=void 0,Vu){let Vl=ka[0];if(zt(js)||!wat(u,mo,Vl,dd))return;if(DPe(u,mo,Vl,Kc,0,!1,void 0)){kt=[Vl];return}return Vl}for(let Vl=0;Vl0),qq(u),D||m.length===1||m.some(Y=>!!Y.typeParameters)?$Qs(u,m,v,W):zQs(m)}function zQs(u){let m=Xt(u,Me=>Me.thisParameter),v;m.length&&(v=m_n(m,m.map(GPe)));let{min:D,max:W}=OLe(u,qQs),Y=[];for(let Me=0;MeG0($e)?Me<$e.parameters.length-1?$e.parameters[Me]:Ei($e.parameters):Me<$e.parameters.length?$e.parameters[Me]:void 0);pe.assert(He.length!==0),Y.push(m_n(He,Xt(u,$e=>aX($e,Me))))}let oe=Xt(u,Me=>G0(Me)?Ei(Me.parameters):void 0),Be=128;if(oe.length!==0){let Me=I0(Ha(Xt(u,xIn),2));Y.push(C_n(oe,Me)),Be|=1}return u.some($tn)&&(Be|=2),QN(u[0].declaration,void 0,v,Y,jg(u.map(Ad)),void 0,D,Be)}function qQs(u){let m=u.parameters.length;return G0(u)?m-1:m}function m_n(u,m){return C_n(u,Ha(m,2))}function C_n(u,m){return VK(ma(u),m)}function $Qs(u,m,v,D){let W=rXs(m,Tr===void 0?v.length:Tr),Y=m[W],{typeParameters:oe}=Y;if(!oe)return Y;let Be=o_n(u)?u.typeArguments:void 0,Me=Be?Iot(Y,eXs(Be,oe,Bo(u))):tXs(u,oe,Y,v,D);return m[W]=Me,Me}function eXs(u,m,v){let D=u.map($q);for(;D.length>m.length;)D.pop();for(;D.length=m)return W;oe>D&&(D=oe,v=W)}return v}function nXs(u,m,v){if(u.expression.kind===108){let Me=gat(u.expression);if(Xo(Me)){for(let He of u.arguments)Ml(He);return Ls}if(!lo(Me)){let He=kB(_C(u));if(He){let $e=nG(Me,He.typeArguments,He);return noe(u,$e,m,v,0)}}return QK(u)}let D,W=Ml(u.expression);if(BB(u)){let Me=eSe(W,u.expression);D=Me===W?0:d3(u)?16:8,W=Me}else D=0;if(W=XCn(W,u.expression,yQs),W===Vn)return Ss;let Y=my(W);if(lo(Y))return SR(u);let oe=rg(Y,0),Be=rg(Y,1).length;if(kPe(W,Y,oe.length,Be))return!lo(W)&&u.typeArguments&&Br(u,Z.Untyped_function_calls_may_not_accept_type_arguments),QK(u);if(!oe.length){if(Be)Br(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,ro(W));else{let Me;if(u.arguments.length===1){let He=ms(u).text;ml(He.charCodeAt(Yu(He,u.expression.end,!0)-1))&&(Me=ho(u.expression,Z.Are_you_missing_a_semicolon))}y8t(u.expression,Y,0,Me)}return SR(u)}return v&8&&!u.typeArguments&&oe.some(iXs)?(n0n(u,v),Go):oe.some(Me=>Bo(Me.declaration)&&!!Tx(Me.declaration))?(Br(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,ro(W)),SR(u)):noe(u,oe,m,v,D)}function iXs(u){return!!(u.typeParameters&&d6t(Ad(u)))}function kPe(u,m,v,D){return Xo(u)||Xo(m)&&!!(u.flags&262144)||!v&&!D&&!(m.flags&1048576)&&!($B(m).flags&131072)&&pg(u,Js)}function sXs(u,m,v){let D=roe(u.expression);if(D===Vn)return Ss;if(D=my(D),lo(D))return SR(u);if(Xo(D))return u.typeArguments&&Br(u,Z.Untyped_function_calls_may_not_accept_type_arguments),QK(u);let W=rg(D,1);if(W.length){if(!oXs(u,W[0]))return SR(u);if(__n(W,Be=>!!(Be.flags&4)))return Br(u,Z.Cannot_create_an_instance_of_an_abstract_class),SR(u);let oe=D.symbol&&mN(D.symbol);return oe&&Ga(oe,64)?(Br(u,Z.Cannot_create_an_instance_of_an_abstract_class),SR(u)):noe(u,W,m,v,0)}let Y=rg(D,0);if(Y.length){let oe=noe(u,Y,m,v,0);return Rt||(oe.declaration&&!jN(oe.declaration)&&Ad(oe)!==es&&Br(u,Z.Only_a_void_function_can_be_called_with_the_new_keyword),P5(oe)===es&&Br(u,Z.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),oe}return y8t(u.expression,D,1),SR(u)}function __n(u,m){return Ki(u)?zt(u,v=>__n(v,m)):u.compositeKind===1048576?zt(u.compositeSignatures,m):m(u)}function _8t(u,m){let v=tT(m);if(!B(v))return!1;let D=v[0];if(D.flags&2097152){let W=D.types,Y=dIn(W),oe=0;for(let Be of D.types){if(!Y[oe]&&la(Be)&3&&(Be.symbol===u||_8t(u,Be)))return!0;oe++}return!1}return D.symbol===u?!0:_8t(u,D)}function oXs(u,m){if(!m||!m.declaration)return!0;let v=m.declaration,D=eQ(v,6);if(!D||v.kind!==177)return!0;let W=mN(v.parent.symbol),Y=Lp(v.parent.symbol);if(!u6t(u,W)){let oe=_C(u);if(oe&&D&4){let Be=$q(oe);if(_8t(v.parent.symbol,Be))return!0}return D&2&&Br(u,Z.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,ro(Y)),D&4&&Br(u,Z.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,ro(Y)),!1}return!0}function y_n(u,m,v){let D,W=v===0,Y=zq(m),oe=Y&&rg(Y,v).length>0;if(m.flags&1048576){let Me=m.types,He=!1;for(let $e of Me)if(rg($e,v).length!==0){if(He=!0,D)break}else if(D||(D=wu(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,ro($e)),D=wu(D,W?Z.Not_all_constituents_of_type_0_are_callable:Z.Not_all_constituents_of_type_0_are_constructable,ro(m))),He)break;He||(D=wu(void 0,W?Z.No_constituent_of_type_0_is_callable:Z.No_constituent_of_type_0_is_constructable,ro(m))),D||(D=wu(D,W?Z.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Z.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,ro(m)))}else D=wu(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,ro(m));let Be=W?Z.This_expression_is_not_callable:Z.This_expression_is_not_constructable;if(Ll(u.parent)&&u.parent.arguments.length===0){let{resolvedSymbol:Me}=sa(u);Me&&Me.flags&32768&&(Be=Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:wu(D,Be),relatedMessage:oe?Z.Did_you_forget_to_use_await:void 0}}function y8t(u,m,v,D){let{messageChain:W,relatedMessage:Y}=y_n(u,m,v),oe=kw(ms(u),u,W);if(Y&&ug(oe,ho(u,Y)),Ll(u.parent)){let{start:Be,length:Me}=I_n(u.parent);oe.start=Be,oe.length=Me}PA.add(oe),b_n(m,v,D?ug(oe,D):oe)}function b_n(u,m,v){if(!u.symbol)return;let D=fa(u.symbol).originatingImport;if(D&&!jp(D)){let W=rg(fo(fa(u.symbol).target),m);if(!W||!W.length)return;ug(v,ho(D,Z.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))}}function aXs(u,m,v){let D=Ml(u.tag),W=my(D);if(lo(W))return SR(u);let Y=rg(W,0),oe=rg(W,1).length;if(kPe(D,W,Y.length,oe))return QK(u);if(!Y.length){if(YI(u.parent)){let Be=ho(u.tag,Z.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);return PA.add(Be),SR(u)}return y8t(u.tag,W,0),SR(u)}return noe(u,Y,m,v,0)}function cXs(u){switch(u.parent.kind){case 264:case 232:return Z.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 170:return Z.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 173:return Z.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 175:case 178:case 179:return Z.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return pe.fail()}}function lXs(u,m,v){let D=Ml(u.expression),W=my(D);if(lo(W))return SR(u);let Y=rg(W,0),oe=rg(W,1).length;if(kPe(D,W,Y.length,oe))return QK(u);if(AXs(u,Y)&&!dI(u.expression)){let Me=Fp(u.expression,!1);return Br(u,Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,Me),SR(u)}let Be=cXs(u);if(!Y.length){let Me=y_n(u.expression,W,0),He=wu(Me.messageChain,Be),$e=kw(ms(u.expression),u.expression,He);return Me.relatedMessage&&ug($e,ho(u.expression,Me.relatedMessage)),PA.add($e),b_n(W,0,$e),SR(u)}return noe(u,Y,m,v,0,Be)}function Nat(u,m){let v=YK(u),D=v&&N1(v),W=D&&m_(D,pS.Element,788968),Y=W&&Dt.symbolToEntityName(W,788968,u),oe=me.createFunctionTypeNode(void 0,[me.createParameterDeclaration(void 0,void 0,"props",void 0,Dt.typeToTypeNode(m,u))],Y?me.createTypeReferenceNode(Y,void 0):me.createKeywordTypeNode(133)),Be=dA(1,"props");return Be.links.type=m,QN(oe,void 0,void 0,[Be],W?Lp(W):nn,void 0,1,0)}function E_n(u){let m=sa(ms(u));if(m.jsxFragmentType!==void 0)return m.jsxFragmentType;let v=Uw(u);if(!((Te.jsx===2||Te.jsxFragmentFactory!==void 0)&&v!=="null"))return m.jsxFragmentType=hr;let W=Te.jsx!==1&&Te.jsx!==3,Y=PA?Z.Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:void 0,oe=yat(u)??An(u,v,W?111551:111167,Y,!0);if(oe===void 0)return m.jsxFragmentType=nn;if(oe.escapedName===jet.Fragment)return m.jsxFragmentType=fo(oe);let Be=oe.flags&2097152?JC(oe):oe,Me=oe&&N1(Be),He=Me&&m_(Me,jet.Fragment,2),$e=He&&fo(He);return m.jsxFragmentType=$e===void 0?nn:$e}function uXs(u,m,v){let D=Qw(u),W;if(D)W=E_n(u);else{if(jq(u.tagName)){let Be=OCn(u),Me=Nat(u,Be);return nX(soe(u.attributes,Iat(Me,u),void 0,0),Be,u.tagName,u.attributes),B(u.typeArguments)&&(F(u.typeArguments,nA),PA.add(y3(ms(u),u.typeArguments,Z.Expected_0_type_arguments_but_got_1,0,B(u.typeArguments)))),Me}W=Ml(u.tagName)}let Y=my(W);if(lo(Y))return SR(u);let oe=VCn(W,u);return kPe(W,Y,oe.length,0)?QK(u):oe.length===0?(D?Br(u,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,Fp(u)):Br(u.tagName,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,Fp(u.tagName)),SR(u)):noe(u,oe,m,v,0)}function gXs(u,m,v){let D=Ml(u.right);if(!Xo(D)){let W=L8t(D);if(W){let Y=my(W);if(lo(Y))return SR(u);let oe=rg(Y,0),Be=rg(Y,1);if(kPe(W,Y,oe.length,Be.length))return QK(u);if(oe.length)return noe(u,oe,m,v,0)}else if(!(rct(D)||rX(D,Js)))return Br(u.right,Z.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method),SR(u)}return Ls}function AXs(u,m){return m.length&&ue(m,v=>v.minArgumentCount===0&&!G0(v)&&v.parameters.length1?DI(u.arguments[1]):void 0;for(let Y=2;Y{let oe=F1(W);Zot(Y,oe)||emn(W,Y,v,Z.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)})}function yXs(u){let m=Ml(u.expression),v=eSe(m,u.expression);return Uot(mZ(v),u,v!==m)}function bXs(u){return u.flags&64?yXs(u):mZ(Ml(u.expression))}function N_n(u){if(byn(u),F(u.typeArguments,nA),u.kind===234){let v=Iv(u.parent);v.kind===227&&v.operatorToken.kind===104&&kW(u,v.right)&&Br(u,Z.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}let m=u.kind===234?Ml(u.expression):kF(u.exprName)?yPe(u.exprName):Ml(u.exprName);return D_n(m,u)}function D_n(u,m){let v=m.typeArguments;if(u===Vn||lo(u)||!zt(v))return u;let D=sa(m);if(D.instantiationExpressionTypes||(D.instantiationExpressionTypes=new Map),D.instantiationExpressionTypes.has(u.id))return D.instantiationExpressionTypes.get(u.id);let W=!1,Y,oe=Me(u);D.instantiationExpressionTypes.set(u.id,oe);let Be=W?Y:u;return Be&&PA.add(y3(ms(m),v,Z.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,ro(Be))),oe;function Me($e){let Vt=!1,kt=!1,wr=dn($e);return W||(W=kt),Vt&&!kt&&(Y??(Y=$e)),wr;function dn(Sn){if(Sn.flags&524288){let ii=_R(Sn),Yi=He(ii.callSignatures),js=He(ii.constructSignatures);if(Vt||(Vt=ii.callSignatures.length!==0||ii.constructSignatures.length!==0),kt||(kt=Yi.length!==0||js.length!==0),Yi!==ii.callSignatures||js!==ii.constructSignatures){let mo=Qf(dA(0,"__instantiationExpression"),ii.members,Yi,js,ii.indexInfos);return mo.objectFlags|=8388608,mo.node=m,mo}}else if(Sn.flags&58982400){let ii=O_(Sn);if(ii){let Yi=dn(ii);if(Yi!==ii)return Yi}}else{if(Sn.flags&1048576)return Xf(Sn,Me);if(Sn.flags&2097152)return jg(Er(Sn.types,dn))}return Sn}}function He($e){let Vt=Le($e,kt=>!!kt.typeParameters&&I8t(kt,v));return Er(Vt,kt=>{let wr=C8t(kt,v,!0);return wr?M2e(kt,wr,Bo(kt.declaration)):kt})}}function EXs(u){return nA(u.type),v8t(u.expression,u.type)}function v8t(u,m,v){let D=Ml(u,v),W=tl(m);if(lo(W))return W;let Y=ji(m.parent,oe=>oe.kind===239||oe.kind===351);return nX(D,W,Y,u,Z.Type_0_does_not_satisfy_the_expected_type_1),D}function SXs(u){return T8s(u),u.keywordToken===105?B8t(u):u.keywordToken===102?u.name.escapedText==="defer"?(pe.assert(!Ll(u.parent)||u.parent.expression!==u,"Trying to get the type of `import.defer` in `import.defer(...)`"),nn):vXs(u):pe.assertNever(u.keywordToken)}function k_n(u){switch(u.keywordToken){case 102:return jIn();case 105:let m=B8t(u);return lo(m)?nn:MXs(m);default:pe.assertNever(u.keywordToken)}}function B8t(u){let m=RZe(u);if(m)if(m.kind===177){let v=Uo(m.parent);return fo(v)}else{let v=Uo(m);return fo(v)}else return Br(u,Z.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),nn}function vXs(u){100<=Pe&&Pe<=199?ms(u).impliedNodeFormat!==99&&Br(u,Z.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):Pe<6&&Pe!==4&&Br(u,Z.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext);let m=ms(u);return pe.assert(!!(m.flags&8388608),"Containing file is missing import meta node flag."),u.name.escapedText==="meta"?KIn():nn}function GPe(u){let m=u.valueDeclaration;return W0(fo(u),!1,!!m&&(XT(m)||FB(m)))}function w8t(u,m,v){switch(u.name.kind){case 80:{let D=u.name.escapedText;return u.dotDotDotToken?v&12?D:`${D}_${m}`:v&3?D:`${D}_n`}case 208:{if(u.dotDotDotToken){let D=u.name.elements,W=Gs(li(D),mg),Y=D.length-(W?.dotDotDotToken?1:0);if(m=D-1)return m===D-1?Y:I0(x1(Y,ri));let oe=[],Be=[],Me=[];for(let He=m;He!(Me&1)),Be=oe<0?Y.target.fixedLength:oe;Be>0&&(W=u.parameters.length-1+Be)}}if(W===void 0){if(!v&&u.flags&32)return 0;W=u.minArgumentCount}if(D)return W;for(let Y=W-1;Y>=0;Y--){let oe=vR(u,Y);if(am(oe,a_n).flags&131072)break;W=Y}u.resolvedMinArgumentCount=W}return u.resolvedMinArgumentCount}function vk(u){if(G0(u)){let m=fo(u.parameters[u.parameters.length-1]);return!EA(m)||!!(m.target.combinedFlags&12)}return!1}function fSe(u){if(G0(u)){let m=fo(u.parameters[u.parameters.length-1]);if(!EA(m))return Xo(m)?I_:m;if(m.target.combinedFlags&12)return sfe(m,m.target.fixedLength)}}function ISe(u){let m=fSe(u);return m&&!Fv(m)&&!Xo(m)?m:void 0}function R8t(u){return N8t(u,Oi)}function N8t(u,m){return u.parameters.length>0?vR(u,0):m}function Z_n(u,m,v){let D=u.parameters.length-(G0(u)?1:0);for(let Y=0;Y=0);let Y=Tc(D.parent)?fo(Uo(D.parent.parent)):uyn(D.parent),oe=Tc(D.parent)?wt:gyn(D.parent),Be=yR(W),Me=yS("target",Y),He=yS("propertyKey",oe),$e=yS("parameterIndex",Be);v.decoratorSignature=ESe(void 0,void 0,[Me,He,$e],es);break}case 175:case 178:case 179:case 173:{let D=m;if(!xa(D.parent))break;let W=uyn(D),Y=yS("target",W),oe=gyn(D),Be=yS("propertyKey",oe),Me=pi(D)?es:shn($q(D));if(!pi(m)||Zw(m)){let $e=shn($q(D)),Vt=yS("descriptor",$e);v.decoratorSignature=ESe(void 0,void 0,[Y,Be,Vt],Ha([Me,es]))}else v.decoratorSignature=ESe(void 0,void 0,[Y,Be],Ha([Me,es]));break}}return v.decoratorSignature===Ls?void 0:v.decoratorSignature}function k8t(u){return Ke?PXs(u):OXs(u)}function LPe(u){let m=XOe(!0);return m!==oi?(u=yZ(Cfe(u))||cn,gZ(m,[u])):cn}function W_n(u){let m=ehn(!0);return m!==oi?(u=yZ(Cfe(u))||cn,gZ(m,[u])):cn}function VPe(u,m){let v=LPe(m);return v===cn?(Br(u,jp(u)?Z.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),nn):(SUt(!0)||Br(u,jp(u)?Z.A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),v)}function MXs(u){let m=dA(0,"NewTargetExpression"),v=dA(4,"target",8);v.parent=m,v.links.type=u;let D=$u([v]);return m.members=D,Qf(m,D,E,E,E)}function xat(u,m){if(!u.body)return nn;let v=BI(u),D=(v&2)!==0,W=(v&1)!==0,Y,oe,Be,Me=es;if(u.body.kind!==242)Y=DI(u.body,m&&m&-9),D&&(Y=Cfe(YPe(Y,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(W){let He=H_n(u,m);He?He.length>0&&(Y=Ha(He,2)):Me=Oi;let{yieldTypes:$e,nextTypes:Vt}=HXs(u,m);oe=zt($e)?Ha($e,2):void 0,Be=zt(Vt)?jg(Vt):void 0}else{let He=H_n(u,m);if(!He)return v&2?VPe(u,Oi):Oi;if(He.length===0){let $e=Aat(u,void 0),Vt=$e&&(jPe($e,v)||es).flags&32768?wt:es;return v&2?VPe(u,Vt):Vt}Y=Ha(He,2)}if(Y||oe||Be){if(oe&&qot(u,oe,3),Y&&qot(u,Y,1),Be&&qot(u,Be,2),Y&&bR(Y)||oe&&bR(oe)||Be&&bR(Be)){let He=hat(u),$e=He?He===BS(u)?W?void 0:Y:pat(Ad(He),u,void 0):void 0;W?(oe=dKt(oe,$e,0,D),Y=dKt(Y,$e,1,D),Be=dKt(Be,$e,2,D)):Y=ZMs(Y,$e,D)}oe&&(oe=F1(oe)),Y&&(Y=F1(Y)),Be&&(Be=F1(Be))}return W?Gat(oe||Oi,Y||Me,Be||_Cn(2,u)||cn,D):D?LPe(Y||Me):Y||Me}function Gat(u,m,v,D){let W=D?Sh:Zp,Y=W.getGlobalGeneratorType(!1);if(u=W.resolveIterationType(u,void 0)||cn,m=W.resolveIterationType(m,void 0)||cn,Y===oi){let oe=W.getGlobalIterableIteratorType(!1);return oe!==oi?ife(oe,[u,m,v]):(W.getGlobalIterableIteratorType(!0),Jg)}return ife(Y,[u,m,v])}function HXs(u,m){let v=[],D=[],W=(BI(u)&2)!==0;return bZe(u.body,Y=>{let oe=Y.expression?Ml(Y.expression,m):xe;Qi(v,O_n(Y,oe,hr,W));let Be;if(Y.asteriskToken){let Me=Xat(oe,W?19:17,Y.expression);Be=Me&&Me.nextType}else Be=jy(Y,void 0);Be&&Qi(D,Be)}),{yieldTypes:v,nextTypes:D}}function O_n(u,m,v,D){if(m===Vn)return Vn;let W=u.expression||u,Y=u.asteriskToken?L9(D?19:17,m,v,W):m;return D?zq(Y,W,u.asteriskToken?Z.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Z.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):Y}function P_n(u,m,v){let D=0;for(let W=0;W=m?v[W]:void 0;D|=Y!==void 0?JPt.get(Y)||32768:0}return D}function M_n(u){let m=sa(u);if(m.isExhaustive===void 0){m.isExhaustive=0;let v=YXs(u);m.isExhaustive===0&&(m.isExhaustive=v)}else m.isExhaustive===0&&(m.isExhaustive=!1);return m.isExhaustive}function YXs(u){if(u.expression.kind===222){let D=Qmn(u);if(!D)return!1;let W=XN(DI(u.expression.expression)),Y=P_n(0,0,D);return W.flags&3?(556800&Y)===556800:!Lv(W,oe=>qse(oe,Y)===Y)}let m=XN(DI(u.expression));if(!$2e(m))return!1;let v=nat(u);return!v.length||zt(v,xMs)?!1:DHs(Xf(m,Cy),v)}function x8t(u){return u.endFlowNode&&mPe(u.endFlowNode)}function H_n(u,m){let v=BI(u),D=[],W=x8t(u),Y=!1;if(TF(u.body,oe=>{let Be=oe.expression;if(Be){if(Be=JA(Be,!0),v&2&&Be.kind===224&&(Be=JA(Be.expression,!0)),Be.kind===214&&Be.expression.kind===80&&DI(Be.expression).symbol===qA(u.symbol)&&(!ZF(u.symbol.valueDeclaration)||VKt(Be.expression))){Y=!0;return}let Me=DI(Be,m&&m&-9);v&2&&(Me=Cfe(YPe(Me,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),Me.flags&131072&&(Y=!0),Qi(D,Me)}else W=!0}),!(D.length===0&&!W&&(Y||QXs(u))))return at&&D.length&&W&&!(jN(u)&&D.some(oe=>oe.symbol===u.symbol))&&Qi(D,wt),D}function QXs(u){switch(u.kind){case 219:case 220:return!0;case 175:return u.parent.kind===211;default:return!1}}function XXs(u){switch(u.kind){case 177:case 178:case 179:return}if(BI(u)!==0)return;let v;if(u.body&&u.body.kind!==242)v=u.body;else if(TF(u.body,W=>{if(v||!W.expression)return!0;v=W.expression})||!v||x8t(u))return;return JXs(u,v)}function JXs(u,m){if(m=JA(m,!0),!!(DI(m).flags&16))return F(u.parameters,(D,W)=>{let Y=fo(D.symbol);if(!Y||Y.flags&16||!Ir(D.name)||oSe(D.symbol)||RB(D))return;let oe=UXs(u,m,D,Y);if(oe)return P2e(1,Bc(D.name.escapedText),W,oe)})}function UXs(u,m,v,D){let W=cU(m)&&m.flowNode||m.parent.kind===254&&m.parent.flowNode||ck(2,void 0,void 0),Y=ck(32,m,W),oe=_Z(v.name,D,D,u,Y);if(oe===D)return;let Be=ck(64,m,W);return $B(_Z(v.name,D,oe,u,Be)).flags&131072?oe:void 0}function G8t(u,m){g(v);return;function v(){let D=BI(u),W=m&&jPe(m,D);if(W&&(uh(W,16384)||W.flags&32769)||u.kind===174||af(u.body)||u.body.kind!==242||!x8t(u))return;let Y=u.flags&1024,oe=Zb(u)||u;if(W&&W.flags&131072)Br(oe,Z.A_function_returning_never_cannot_have_a_reachable_end_point);else if(W&&!Y)Br(oe,Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(W&&at&&!pg(wt,W))Br(oe,Z.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Te.noImplicitReturns){if(!W){if(!Y)return;let Be=Ad(BS(u));if(L0n(u,Be))return}Br(oe,Z.Not_all_code_paths_return_a_value)}}}function Y_n(u,m){if(pe.assert(u.kind!==175||g2(u)),qq(u),jA(u)&&_fe(u,u.name),m&&m&4&&wS(u)){if(!Zb(u)&&!sde(u)){let D=lSe(u);if(D&&TO(Ad(D))){let W=sa(u);if(W.contextFreeType)return W.contextFreeType;let Y=xat(u,m),oe=QN(void 0,void 0,void 0,E,Y,void 0,0,64),Be=Qf(u.symbol,Ee,[oe],E,E);return Be.objectFlags|=262144,W.contextFreeType=Be}}return tp}return!oct(u)&&u.kind===219&&m6t(u),KXs(u,m),fo(Uo(u))}function KXs(u,m){let v=sa(u);if(!(v.flags&64)){let D=lSe(u);if(!(v.flags&64)){v.flags|=64;let W=Nc(rg(fo(Uo(u)),0));if(!W)return;if(wS(u))if(D){let Y=sX(u),oe;if(m&&m&2){Z_n(W,D,Y);let Be=fSe(D);Be&&Be.flags&262144&&(oe=ZK(D,Y.nonFixingMapper))}oe||(oe=Y?ZK(D,Y.mapper):D),TXs(W,oe)}else RXs(W);else if(D&&!u.typeParameters&&D.parameters.length>u.parameters.length){let Y=sX(u);m&&m&2&&Z_n(W,D,Y)}if(D&&!Qse(u)&&!W.resolvedReturnType){let Y=xat(u,m);W.resolvedReturnType||(W.resolvedReturnType=Y)}CSe(u)}}}function jXs(u){pe.assert(u.kind!==175||g2(u));let m=BI(u),v=Qse(u);if(G8t(u,v),u.body)if(Zb(u)||Ad(BS(u)),u.body.kind===242)nA(u.body);else{let D=Ml(u.body),W=v&&jPe(v,m);W&&Jat(u,W,u.body,u.body,D)}}function Fat(u,m,v,D=!1){if(!pg(m,Ag)){let W=D&&mfe(m);return h9(u,!!W&&pg(W,Ag),v),!1}return!0}function zXs(u){if(!Ll(u)||!S3(u))return!1;let m=DI(u.arguments[2]);if(Wi(m,"value")){let W=Fg(m,"writable"),Y=W&&fo(W);if(!Y||Y===Bs||Y===Ys)return!0;if(W&&W.valueDeclaration&&Cm(W.valueDeclaration)){let oe=W.valueDeclaration.initializer,Be=Ml(oe);if(Be===Bs||Be===Ys)return!0}return!1}return!Fg(m,"set")}function wR(u){return!!(aI(u)&8||u.flags&4&&p2(u)&8||u.flags&3&&n8t(u)&6||u.flags&98304&&!(u.flags&65536)||u.flags&8||zt(u.declarations,zXs))}function Q_n(u,m,v){var D,W;if(v===0)return!1;if(wR(m)){if(m.flags&4&&bp(u)&&u.expression.kind===110){let Y=dfe(u);if(!(Y&&(Y.kind===177||jN(Y))))return!0;if(m.valueDeclaration){let oe=po(m.valueDeclaration),Be=Y.parent===m.valueDeclaration.parent,Me=Y===m.valueDeclaration.parent,He=oe&&((D=m.parent)==null?void 0:D.valueDeclaration)===Y.parent,$e=oe&&((W=m.parent)==null?void 0:W.valueDeclaration)===Y;return!(Be||Me||He||$e)}}return!0}if(bp(u)){let Y=JA(u.expression);if(Y.kind===80){let oe=sa(Y).resolvedSymbol;if(oe.flags&2097152){let Be=Qb(oe);return!!Be&&Be.kind===275}}}return!1}function hSe(u,m,v){let D=XI(u,39);return D.kind!==80&&!bp(D)?(Br(u,m),!1):D.flags&64?(Br(u,v),!1):!0}function qXs(u){Ml(u.expression);let m=JA(u.expression);if(!bp(m))return Br(m,Z.The_operand_of_a_delete_operator_must_be_a_property_reference),Mn;jo(m)&&p(m.name)&&Br(m,Z.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);let v=sa(m),D=fn(v.resolvedSymbol);return D&&(wR(D)?Br(m,Z.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):$Xs(m,D)),Mn}function $Xs(u,m){let v=fo(m);at&&!(v.flags&131075)&&!(Wt?m.flags&16777216:ER(v,16777216))&&Br(u,Z.The_operand_of_a_delete_operator_must_be_optional)}function e4s(u){return Ml(u.expression),Rse}function t4s(u){return qq(u),xe}function X_n(u){let m=!1,v=dne(u);if(v&&dl(v)){let D=_1(u)?Z.await_expression_cannot_be_used_inside_a_class_static_block:Z.await_using_statements_cannot_be_used_inside_a_class_static_block;Br(u,D),m=!0}else if(!(u.flags&65536))if(oAe(u)){let D=ms(u);if(!DO(D)){let W;if(!_3(D,Te)){W??(W=rs(D,u.pos));let Y=_1(u)?Z.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:Z.await_using_statements_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,oe=rm(D,W.start,W.length,Y);PA.add(oe),m=!0}switch(Pe){case 100:case 101:case 102:case 199:if(D.impliedNodeFormat===1){W??(W=rs(D,u.pos)),PA.add(rm(D,W.start,W.length,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),m=!0;break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:W??(W=rs(D,u.pos));let Y=_1(u)?Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;PA.add(rm(D,W.start,W.length,Y)),m=!0;break}}}else{let D=ms(u);if(!DO(D)){let W=rs(D,u.pos),Y=_1(u)?Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,oe=rm(D,W.start,W.length,Y);if(v&&v.kind!==177&&!(BI(v)&2)){let Be=ho(v,Z.Did_you_mean_to_mark_this_function_as_async);ug(oe,Be)}PA.add(oe),m=!0}}return _1(u)&&UKt(u)&&(Br(u,Z.await_expressions_cannot_be_used_in_a_parameter_initializer),m=!0),m}function r4s(u){g(()=>X_n(u));let m=Ml(u.expression),v=YPe(m,!0,u,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return v===m&&!lo(v)&&!(m.flags&3)&&Kx(!1,ho(u,Z.await_has_no_effect_on_the_type_of_this_expression)),v}function n4s(u){let m=Ml(u.operand);if(m===Vn)return Vn;switch(u.operand.kind){case 9:switch(u.operator){case 41:return Yq(yR(-u.operand.text));case 40:return Yq(yR(+u.operand.text))}break;case 10:if(u.operator===41)return Yq(qOe({negative:!0,base10Value:mz(u.operand.text)}))}switch(u.operator){case 40:case 41:case 55:return KN(m,u.operand),WPe(m,12288)&&Br(u.operand,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(u.operator)),u.operator===40?(WPe(m,2112)&&Br(u.operand,Z.Operator_0_cannot_be_applied_to_type_1,Vi(u.operator),ro(hZ(m))),ri):F8t(m);case 54:z8t(m,u.operand);let v=qse(m,12582912);return v===4194304?Bs:v===8388608?tn:Mn;case 46:case 47:return Fat(u.operand,KN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&hSe(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),F8t(m)}return nn}function i4s(u){let m=Ml(u.operand);return m===Vn?Vn:(Fat(u.operand,KN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&hSe(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),F8t(m))}function F8t(u){return uh(u,2112)?P_(u,3)||uh(u,296)?Ag:oo:ri}function WPe(u,m){if(uh(u,m))return!0;let v=XN(u);return!!v&&uh(v,m)}function uh(u,m){if(u.flags&m)return!0;if(u.flags&3145728){let v=u.types;for(let D of v)if(uh(D,m))return!0}return!1}function P_(u,m,v){return u.flags&m?!0:v&&u.flags&114691?!1:!!(m&296)&&pg(u,ri)||!!(m&2112)&&pg(u,oo)||!!(m&402653316)&&pg(u,$r)||!!(m&528)&&pg(u,Mn)||!!(m&16384)&&pg(u,es)||!!(m&131072)&&pg(u,Oi)||!!(m&65536)&&pg(u,Hn)||!!(m&32768)&&pg(u,wt)||!!(m&4096)&&pg(u,ci)||!!(m&67108864)&&pg(u,fs)}function mSe(u,m,v){return u.flags&1048576?ue(u.types,D=>mSe(D,m,v)):P_(u,m,v)}function Zat(u){return!!(la(u)&16)&&!!u.symbol&&Z8t(u.symbol)}function Z8t(u){return(u.flags&128)!==0}function L8t(u){let m=x0n("hasInstance");if(mSe(u,67108864)){let v=Fg(u,m);if(v){let D=fo(v);if(D&&rg(D,0).length!==0)return D}}}function s4s(u,m,v,D,W){if(v===Vn||D===Vn)return Vn;!Xo(v)&&mSe(v,402784252)&&Br(u,Z.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),pe.assert(kAe(u.parent));let Y=ioe(u.parent,void 0,W);if(Y===Go)return Vn;let oe=Ad(Y);return h0(oe,Mn,m,Z.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression),Mn}function o4s(u){return Lv(u,m=>m===zA||!!(m.flags&2097152)&&Sk(XN(m)))}function a4s(u,m,v,D){if(v===Vn||D===Vn)return Vn;if(p(u)){if((Zesfe(He,v)):I0(D);return JK(Be,Me,W)}}}}function JK(u,m,v,D){let W;if(u.kind===305){let Y=u;Y.objectAssignmentInitializer&&(at&&!ER(Ml(Y.objectAssignmentInitializer),16777216)&&(m=Zv(m,524288)),I4s(Y.name,Y.equalsToken,Y.objectAssignmentInitializer,v)),W=u.name}else W=u;return W.kind===227&&W.operatorToken.kind===64&&(Gt(W,v),W=W.left,at&&(m=Zv(m,524288))),W.kind===211?c4s(W,m,D):W.kind===210?l4s(W,m,v):u4s(W,m,v)}function u4s(u,m,v){let D=Ml(u,v),W=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Y=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return hSe(u,W,Y)&&nX(m,D,u,u),hW(u)&&iC(u.parent,1048576),m}function OPe(u){switch(u=JA(u),u.kind){case 80:case 11:case 14:case 216:case 229:case 15:case 9:case 10:case 112:case 97:case 106:case 157:case 219:case 232:case 220:case 210:case 211:case 222:case 236:case 286:case 285:return!0;case 228:return OPe(u.whenTrue)&&OPe(u.whenFalse);case 227:return ek(u.operatorToken.kind)?!1:OPe(u.left)&&OPe(u.right);case 225:case 226:switch(u.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 223:case 217:case 235:default:return!1}}function V8t(u,m){return(m.flags&98304)!==0||Zot(u,m)}function g4s(){let u=D9e(m,v,D,W,Y,oe);return(kt,wr)=>{let dn=u(kt,wr);return pe.assertIsDefined(dn),dn};function m(kt,wr,dn){return wr?(wr.stackIndex++,wr.skip=!1,He(wr,void 0),Vt(wr,void 0)):wr={checkMode:dn,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},Bo(kt)&&JY(kt)?(wr.skip=!0,Vt(wr,Ml(kt.right,dn)),wr):(A4s(kt),kt.operatorToken.kind===64&&(kt.left.kind===211||kt.left.kind===210)&&(wr.skip=!0,Vt(wr,JK(kt.left,Ml(kt.right,dn),dn,kt.right.kind===110))),wr)}function v(kt,wr,dn){if(!wr.skip)return Be(wr,kt)}function D(kt,wr,dn){if(!wr.skip){let Sn=$e(wr);pe.assertIsDefined(Sn),He(wr,Sn),Vt(wr,void 0);let ii=kt.kind;if(NAe(ii)){let Yi=dn.parent;for(;Yi.kind===218||Qne(Yi);)Yi=Yi.parent;(ii===56||Q3(Yi))&&j8t(dn.left,Sn,Q3(Yi)?Yi.thenStatement:void 0),Yne(ii)&&z8t(Sn,dn.left)}}}function W(kt,wr,dn){if(!wr.skip)return Be(wr,kt)}function Y(kt,wr){let dn;if(wr.skip)dn=$e(wr);else{let Sn=Me(wr);pe.assertIsDefined(Sn);let ii=$e(wr);pe.assertIsDefined(ii),dn=K_n(kt.left,kt.operatorToken,kt.right,Sn,ii,wr.checkMode,kt)}return wr.skip=!1,He(wr,void 0),Vt(wr,void 0),wr.stackIndex--,dn}function oe(kt,wr,dn){return Vt(kt,wr),kt}function Be(kt,wr){if(po(wr))return wr;Vt(kt,Ml(wr,kt.checkMode))}function Me(kt){return kt.typeStack[kt.stackIndex]}function He(kt,wr){kt.typeStack[kt.stackIndex]=wr}function $e(kt){return kt.typeStack[kt.stackIndex+1]}function Vt(kt,wr){kt.typeStack[kt.stackIndex+1]=wr}}function A4s(u){if(u.operatorToken.kind===61){if(po(u.parent)){let{left:m,operatorToken:v}=u.parent;po(m)&&v.kind===57&&os(m,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(v.kind))}else if(po(u.left)){let{operatorToken:m}=u.left;(m.kind===57||m.kind===56)&&os(u.left,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(m.kind),Vi(61))}else if(po(u.right)){let{operatorToken:m}=u.right;m.kind===56&&os(u.right,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(m.kind))}d4s(u),p4s(u)}}function d4s(u){let m=XI(u.left,63),v=PPe(m);v!==3&&(v===1?Br(m,Z.This_expression_is_always_nullish):Br(m,Z.Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish))}function p4s(u){let m=XI(u.right,63),v=PPe(m);f4s(u)||(v===1?Br(m,Z.This_expression_is_always_nullish):v===2&&Br(m,Z.This_expression_is_never_nullish))}function f4s(u){return!po(u.parent)||u.parent.operatorToken.kind!==61}function PPe(u){switch(u=XI(u),u.kind){case 224:case 214:case 216:case 213:case 237:case 215:case 212:case 230:case 110:return 3;case 227:switch(u.operatorToken.kind){case 64:case 61:case 78:case 57:case 76:case 56:case 77:return 3;case 28:return PPe(u.right)}return 2;case 228:return PPe(u.whenTrue)|PPe(u.whenFalse);case 106:return 1;case 80:return O0(u)===dt?1:3}return 2}function I4s(u,m,v,D,W){let Y=m.kind;if(Y===64&&(u.kind===211||u.kind===210))return JK(u,Ml(v,D),D,v.kind===110);let oe;Yne(Y)?oe=wSe(u,D):oe=Ml(u,D);let Be=Ml(v,D);return K_n(u,m,v,oe,Be,D,W)}function K_n(u,m,v,D,W,Y,oe){let Be=m.kind;switch(Be){case 42:case 43:case 67:case 68:case 44:case 69:case 45:case 70:case 41:case 66:case 48:case 71:case 49:case 72:case 50:case 73:case 52:case 75:case 53:case 79:case 51:case 74:if(D===Vn||W===Vn)return Vn;D=KN(D,u),W=KN(W,v);let Ji;if(D.flags&528&&W.flags&528&&(Ji=kt(m.kind))!==void 0)return Br(oe||m,Z.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,Vi(m.kind),Vi(Ji)),ri;{let Ka=Fat(u,D,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),_l=Fat(v,W,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ka;if(P_(D,3)&&P_(W,3)||!(uh(D,2112)||uh(W,2112)))ka=ri;else if(Me(D,W)){switch(Be){case 50:case 73:ii();break;case 43:case 68:Ze<3&&Br(oe,Z.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}ka=oo}else ii(Me),ka=nn;if(Ka&&_l)switch(wr(ka),Be){case 48:case 71:case 49:case 72:case 50:case 73:let Kc=ur(v);typeof Kc.value=="number"&&Math.abs(Kc.value)>=32&&Kw(YF(Iv(v.parent.parent)),oe||m,Z.This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2,Fp(u),Vi(Be),Kc.value%32);break;default:break}return ka}case 40:case 65:if(D===Vn||W===Vn)return Vn;!P_(D,402653316)&&!P_(W,402653316)&&(D=KN(D,u),W=KN(W,v));let Mi;return P_(D,296,!0)&&P_(W,296,!0)?Mi=ri:P_(D,2112,!0)&&P_(W,2112,!0)?Mi=oo:P_(D,402653316,!0)||P_(W,402653316,!0)?Mi=$r:(Xo(D)||Xo(W))&&(Mi=lo(D)||lo(W)?nn:hr),Mi&&!Vt(Be)?Mi:Mi?(Be===65&&wr(Mi),Mi):(ii((_l,ka)=>P_(_l,402655727)&&P_(ka,402655727)),hr);case 30:case 32:case 33:case 34:return Vt(Be)&&(D=gKt(KN(D,u)),W=gKt(KN(W,v)),Sn((Ka,_l)=>{if(Xo(Ka)||Xo(_l))return!0;let ka=pg(Ka,Ag),Kc=pg(_l,Ag);return ka&&Kc||!ka&&!Kc&&rPe(Ka,_l)})),Mn;case 35:case 36:case 37:case 38:if(!(Y&&Y&64)){if((Lre(u)||Lre(v))&&(!Bo(u)||Be===37||Be===38)){let Ka=Be===35||Be===37;Br(oe,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,Ka?"false":"true")}js(oe,Be,u,v),Sn((Ka,_l)=>V8t(Ka,_l)||V8t(_l,Ka))}return Mn;case 104:return s4s(u,v,D,W,Y);case 103:return a4s(u,v,D,W);case 56:case 77:{let Ka=ER(D,4194304)?Ha([WMs(at?D:hZ(W)),W]):D;return Be===77&&wr(W),Ka}case 57:case 76:{let Ka=ER(D,8388608)?Ha([mZ(hmn(D)),W],2):D;return Be===76&&wr(W),Ka}case 61:case 78:{let Ka=ER(D,262144)?Ha([mZ(D),W],2):D;return Be===78&&wr(W),Ka}case 64:let wo=po(u.parent)?oI(u.parent):0;return He(wo,W),dn(wo)?((!(W.flags&524288)||wo!==2&&wo!==6&&!IZ(W)&&!kKt(W)&&!(la(W)&1))&&wr(W),D):(wr(W),W);case 28:if(!Te.allowUnreachableCode&&OPe(u)&&!$e(u.parent)){let Ka=ms(u),_l=Ka.text,ka=Yu(_l,u.pos);Ka.parseDiagnostics.some(Vu=>Vu.code!==Z.JSX_expressions_must_have_one_parent_element.code?!1:Io(Vu,ka))||Br(u,Z.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return W;default:return pe.fail()}function Me(Ji,Mi){return P_(Ji,2112)&&P_(Mi,2112)}function He(Ji,Mi){if(Ji===2)for(let wo of D9(Mi)){let Ka=fo(wo);if(Ka.symbol&&Ka.symbol.flags&32){let _l=wo.escapedName,ka=An(wo.valueDeclaration,_l,788968,void 0,!1);ka?.declarations&&ka.declarations.some(ZU)&&(jx(ka,Z.Duplicate_identifier_0,Bc(_l),wo),jx(wo,Z.Duplicate_identifier_0,Bc(_l),ka))}}}function $e(Ji){return Ji.parent.kind===218&&yC(Ji.left)&&Ji.left.text==="0"&&(Ll(Ji.parent.parent)&&Ji.parent.parent.expression===Ji.parent||Ji.parent.parent.kind===216)&&(bp(Ji.right)||Ir(Ji.right)&&Ji.right.escapedText==="eval")}function Vt(Ji){let Mi=WPe(D,12288)?u:WPe(W,12288)?v:void 0;return Mi?(Br(Mi,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(Ji)),!1):!0}function kt(Ji){switch(Ji){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function wr(Ji){ek(Be)&&g(Mi);function Mi(){let wo=D;if(Hde(m.kind)&&u.kind===212&&(wo=Eat(u,void 0,!0)),hSe(u,Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let Ka;if(Wt&&jo(u)&&uh(Ji,32768)){let _l=Wi(M_(u.expression),u.name.escapedText);Vot(Ji,_l)&&(Ka=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}nX(Ji,wo,u,v,Ka)}}}function dn(Ji){var Mi;switch(Ji){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let wo=ES(u),Ka=JY(v);return!!Ka&&ag(Ka)&&!!((Mi=wo?.exports)!=null&&Mi.size);default:return!1}}function Sn(Ji){return Ji(D,W)?!1:(ii(Ji),!0)}function ii(Ji){let Mi=!1,wo=oe||m;if(Ji){let Vu=yZ(D),dd=yZ(W);Mi=!(Vu===D&&dd===W)&&!!(Vu&&dd)&&Ji(Vu,dd)}let Ka=D,_l=W;!Mi&&Ji&&([Ka,_l]=h4s(D,W,Ji));let[ka,Kc]=Ype(Ka,_l);Yi(wo,Mi,ka,Kc)||h9(wo,Mi,Z.Operator_0_cannot_be_applied_to_types_1_and_2,Vi(m.kind),ka,Kc)}function Yi(Ji,Mi,wo,Ka){switch(m.kind){case 37:case 35:case 38:case 36:return h9(Ji,Mi,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,wo,Ka);default:return}}function js(Ji,Mi,wo,Ka){let _l=mo(JA(wo)),ka=mo(JA(Ka));if(_l||ka){let Kc=Br(Ji,Z.This_condition_will_always_return_0,Vi(Mi===37||Mi===35?97:112));if(_l&&ka)return;let Vu=Mi===38||Mi===36?Vi(54):"",dd=_l?Ka:wo,Vl=JA(dd);ug(Kc,ho(dd,Z.Did_you_mean_0,`${Vu}Number.isNaN(${Hd(Vl)?ly(Vl):"..."})`))}}function mo(Ji){if(Ir(Ji)&&Ji.escapedText==="NaN"){let Mi=Y3s();return!!Mi&&Mi===O0(Ji)}return!1}}function h4s(u,m,v){let D=u,W=m,Y=hZ(u),oe=hZ(m);return v(Y,oe)||(D=Y,W=oe),[D,W]}function m4s(u){g(Vt);let m=I1(u);if(!m)return hr;let v=BI(m);if(!(v&1))return hr;let D=(v&2)!==0;u.asteriskToken&&(D&&ZeM8t(kt,v,void 0)));let Y=W&&i6t(W,D),oe=Y&&Y.yieldType||hr,Be=Y&&Y.nextType||hr,Me=u.expression?Ml(u.expression):xe,He=O_n(u,Me,Be,D);if(W&&He&&nX(He,oe,u.expression||u,u.expression),u.asteriskToken)return e6t(D?19:17,1,Me,u.expression)||hr;if(W)return V9(2,W,D)||hr;let $e=_Cn(2,m);return $e||($e=hr,g(()=>{if(Rt&&!XLe(u)){let kt=jy(u,void 0);(!kt||Xo(kt))&&Br(u,Z.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),$e;function Vt(){u.flags&16384||KC(u,Z.A_yield_expression_is_only_allowed_in_a_generator_body),UKt(u)&&Br(u,Z.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function C4s(u,m){let v=wSe(u.condition,m);j8t(u.condition,v,u.whenTrue);let D=Ml(u.whenTrue,m),W=Ml(u.whenFalse,m);return Ha([D,W],2)}function j_n(u){let m=u.parent;return dI(m)&&j_n(m)||Qg(m)&&m.argumentExpression===u}function _4s(u){let m=[u.head.text],v=[];for(let W of u.templateSpans){let Y=Ml(W.expression);WPe(Y,12288)&&Br(W.expression,Z.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),m.push(W.literal.text),v.push(pg(Y,dg)?Y:$r)}let D=u.parent.kind!==216&&ur(u).value;return D?Yq(kE(D)):Ife(u)||j_n(u)||Lv(jy(u,void 0)||cn,y4s)?DK(m,v):$r}function y4s(u){return!!(u.flags&134217856||u.flags&58982400&&uh(O_(u)||cn,402653316))}function b4s(u){return fQ(u)&&!GU(u.parent)?u.parent.parent:u}function soe(u,m,v,D){let W=b4s(u);EPe(W,m,!1),NYs(W,v);let Y=Ml(u,D|1|(v?2:0));v&&v.intraExpressionInferenceSites&&(v.intraExpressionInferenceSites=void 0);let oe=uh(Y,2944)&&Lat(Y,pat(m,u,void 0))?Cy(Y):Y;return DYs(),cSe(),oe}function DI(u,m){if(m)return Ml(u,m);let v=sa(u);if(!v.resolvedType){let D=Po,W=ul;Po=Ps,ul=void 0,v.resolvedType=Ml(u,m),ul=W,Po=D}return v.resolvedType}function z_n(u){return u=JA(u,!0),u.kind===217||u.kind===235||hQ(u)}function ffe(u,m,v){let D=yne(u);if(Bo(u)){let Y=lde(u);if(Y)return v8t(D,Y,m)}let W=P8t(D)||(v?soe(D,v,void 0,m||0):DI(D,m));if(Si(mg(u)?ai(u):u)){if(u.name.kind===207&&Z9(W))return E4s(W,u.name);if(u.name.kind===208&&EA(W))return S4s(W,u.name)}return W}function E4s(u,m){let v;for(let Y of m.elements)if(Y.initializer){let oe=q_n(Y);oe&&!Fg(u,oe)&&(v=Ft(v,Y))}if(!v)return u;let D=$u();for(let Y of D9(u))D.set(Y.escapedName,Y);for(let Y of v){let oe=dA(16777220,q_n(Y));oe.links.type=hR(Y,!1,!1),D.set(oe.escapedName,oe)}let W=Qf(u.symbol,D,E,E,f0(u));return W.objectFlags=u.objectFlags,W}function q_n(u){let m=AZ(u.propertyName||u.name);return f2(m)?I2(m):void 0}function S4s(u,m){if(u.target.combinedFlags&12||x9(u)>=m.elements.length)return u;let v=m.elements,D=qQ(u).slice(),W=u.target.elementFlags.slice();for(let Y=x9(u);YLat(u,D))}if(m.flags&58982400){let v=O_(m)||cn;return uh(v,4)&&uh(u,128)||uh(v,8)&&uh(u,256)||uh(v,64)&&uh(u,2048)||uh(v,4096)&&uh(u,8192)||Lat(u,v)}return!!(m.flags&406847616&&uh(u,128)||m.flags&256&&uh(u,256)||m.flags&2048&&uh(u,2048)||m.flags&512&&uh(u,512)||m.flags&8192&&uh(u,8192))}return!1}function Ife(u){let m=u.parent;return vd(m)&&l2(m.type)||hQ(m)&&l2(Fie(m))||S8t(u)&&TK(jy(u,0))||(dI(m)||YI(m)||cf(m))&&Ife(m)||(Cm(m)||u0(m)||Tie(m))&&Ife(m.parent)}function hfe(u,m,v){let D=Ml(u,m,v);return Ife(u)||Lye(u)?Cy(D):z_n(u)?D:AKt(D,pat(jy(u,void 0),u,void 0))}function e0n(u,m){return u.name.kind===168&&nT(u.name),hfe(u.initializer,m)}function t0n(u,m){vyn(u),u.name.kind===168&&nT(u.name);let v=Y_n(u,m);return r0n(u,v,m)}function r0n(u,m,v){if(v&&v&10){let D=ASe(m,0,!0),W=ASe(m,1,!0),Y=D||W;if(Y&&Y.typeParameters){let oe=j5(u,2);if(oe){let Be=ASe(mZ(oe),D?0:1,!1);if(Be&&!Be.typeParameters){if(v&8)return n0n(u,v),tp;let Me=sX(u),He=Me.signature&&Ad(Me.signature),$e=He&&l_n(He);if($e&&!$e.typeParameters&&!ue(Me.inferences,ooe)){let Vt=T4s(Me,Y.typeParameters),kt=fUt(Y,Vt),wr=lt(Me.inferences,dn=>CKt(dn.typeParameter));if(fKt(kt,Be,(dn,Sn)=>{lG(wr,dn,Sn,0,!0)}),zt(wr,ooe)&&(IKt(kt,Be,(dn,Sn)=>{lG(wr,dn,Sn)}),!B4s(Me.inferences,wr)))return w4s(Me.inferences,wr),Me.inferredTypeParameters=Nn(Me.inferredTypeParameters,Vt),RK(kt)}return RK(u_n(Y,Be,Me))}}}}return m}function n0n(u,m){if(m&2){let v=sX(u);v.flags|=4}}function ooe(u){return!!(u.candidates||u.contraCandidates)}function v4s(u){return!!(u.candidates||u.contraCandidates||yIn(u.typeParameter))}function B4s(u,m){for(let v=0;vv.symbol.escapedName===m)}function R4s(u,m){let v=m.length;for(;v>1&&m.charCodeAt(v-1)>=48&&m.charCodeAt(v-1)<=57;)v--;let D=m.slice(0,v);for(let W=1;;W++){let Y=D+W;if(!O8t(u,Y))return Y}}function i0n(u){let m=XK(u);if(m&&!m.typeParameters)return Ad(m)}function N4s(u){let m=Ml(u.expression),v=eSe(m,u.expression),D=i0n(m);return D&&Uot(D,u,v!==m)}function M_(u){let m=P8t(u);if(m)return m;if(u.flags&268435456&&ul){let W=ul[id(u)];if(W)return W}let v=ru,D=Ml(u,64);if(ru!==v){let W=ul||(ul=[]);W[id(u)]=D,QLe(u,u.flags|268435456)}return D}function P8t(u){let m=JA(u,!0);if(hQ(m)){let v=Fie(m);if(!l2(v))return tl(v)}if(m=JA(u),_1(m)){let v=P8t(m.expression);return v?zq(v):void 0}if(Ll(m)&&m.expression.kind!==108&&!uy(m,!0)&&!S_n(m)&&!jp(m))return BB(m)?N4s(m):i0n(roe(m.expression));if(vd(m)&&!l2(m.type))return tl(m.type);if(FL(u)||RY(u))return Ml(u)}function MPe(u){let m=sa(u);if(m.contextFreeType)return m.contextFreeType;EPe(u,hr,!1);let v=m.contextFreeType=Ml(u,4);return cSe(),v}function Ml(u,m,v){var D,W;(D=ki)==null||D.push(ki.Phase.Check,"checkExpression",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let Y=ge;ge=u,M=0;let oe=x4s(u,m,v),Be=r0n(u,oe,m);return Zat(Be)&&D4s(u,Be),ge=Y,(W=ki)==null||W.pop(),Be}function D4s(u,m){var v;let D=u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u||(u.kind===80||u.kind===167)&&ect(u)||u.parent.kind===187&&u.parent.exprName===u||u.parent.kind===282;if(D||Br(u,Z.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),Te.isolatedModules||Te.verbatimModuleSyntax&&D&&!An(u,R0(u),2097152,void 0,!1,!0)){pe.assert(!!(m.symbol.flags&128));let W=m.symbol.valueDeclaration,Y=(v=s.getRedirectFromOutput(ms(W).resolvedPath))==null?void 0:v.resolvedRef;W.flags&33554432&&!e9(u)&&(!Y||!Vb(Y.commandLine.options))&&Br(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,qt)}}function k4s(u,m){if(jm(u)){if(iEe(u))return v8t(u.expression,sEe(u),m);if(hQ(u))return T_n(u,m)}return Ml(u.expression,m)}function x4s(u,m,v){let D=u.kind;if(d)switch(D){case 232:case 219:case 220:d.throwIfCancellationRequested()}switch(D){case 80:return $Hs(u,m);case 81:return SQs(u);case 110:return yPe(u);case 108:return gat(u);case 106:return Mt;case 15:case 11:return SKt(u)?Gi:Yq(kE(u.text));case 9:return Dyn(u),Yq(yR(+u.text));case 10:return F8s(u),Yq(qOe({negative:!1,base10Value:mz(u.text)}));case 112:return tn;case 97:return Bs;case 229:return _4s(u);case 14:return UYs(u);case 210:return DCn(u,m,v);case 211:return rQs(u,m);case 212:return Eat(u,m);case 167:return UCn(u,m);case 213:return WQs(u,m);case 214:if(jp(u))return hXs(u);case 215:return IXs(u,m);case 216:return mXs(u);case 218:return k4s(u,m);case 232:return EUs(u);case 219:case 220:return Y_n(u,m);case 222:return e4s(u);case 217:case 235:return CXs(u,m);case 236:return bXs(u);case 234:return N_n(u);case 239:return EXs(u);case 237:return SXs(u);case 221:return qXs(u);case 223:return t4s(u);case 224:return r4s(u);case 225:return n4s(u);case 226:return i4s(u);case 227:return Gt(u,m);case 228:return C4s(u,m);case 231:return KYs(u,m);case 233:return xe;case 230:return m4s(u);case 238:return jYs(u);case 295:return hQs(u,m);case 285:return oQs(u,m);case 286:return iQs(u,m);case 289:return aQs(u);case 293:return lQs(u,m);case 287:pe.fail("Shouldn't ever directly check a JsxOpeningElement")}return nn}function s0n(u){gG(u),u.expression&&KC(u.expression,Z.Type_expected),nA(u.constraint),nA(u.default);let m=V5(Uo(u));O_(m),KPs(m)||Br(u.default,Z.Type_parameter_0_has_a_circular_default,ro(m));let v=Ky(m),D=jQ(m);v&&D&&h0(D,k1(Cl(v,tX(m,D)),D),u.default,Z.Type_0_does_not_satisfy_the_constraint_1),qq(u),g(()=>yfe(u.name,Z.Type_parameter_name_cannot_be_0))}function G4s(u){var m,v;if(p_(u.parent)||xa(u.parent)||PB(u.parent)){let D=V5(Uo(u)),W=aKt(D)&24576;if(W){let Y=Uo(u.parent);if(PB(u.parent)&&!(la(Lp(Y))&48))Br(u,Z.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(W===8192||W===16384){(m=ki)==null||m.push(ki.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:UC(Lp(Y)),id:UC(D)});let oe=sPe(Y,D,W===16384?ln:mr),Be=sPe(Y,D,W===16384?mr:ln),Me=D;Ie=D,h0(oe,Be,u,Z.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),Ie=Me,(v=ki)==null||v.pop()}}}}function o0n(u){gG(u),UPe(u);let m=I1(u);Ga(u,31)&&(Te.erasableSyntaxOnly&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),m.kind===177&&p1(m.body)||Br(u,Z.A_parameter_property_is_only_allowed_in_a_constructor_implementation),m.kind===177&&Ir(u.name)&&u.name.escapedText==="constructor"&&Br(u.name,Z.constructor_cannot_be_used_as_a_parameter_property_name)),!u.initializer&&FB(u)&&Nu(u.name)&&m.body&&Br(u,Z.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),u.name&&Ir(u.name)&&(u.name.escapedText==="this"||u.name.escapedText==="new")&&(m.parameters.indexOf(u)!==0&&Br(u,Z.A_0_parameter_must_be_the_first_parameter,u.name.escapedText),(m.kind===177||m.kind===181||m.kind===186)&&Br(u,Z.A_constructor_cannot_have_a_this_parameter),m.kind===220&&Br(u,Z.An_arrow_function_cannot_have_a_this_parameter),(m.kind===178||m.kind===179)&&Br(u,Z.get_and_set_accessors_cannot_declare_this_parameters)),u.dotDotDotToken&&!Nu(u.name)&&!pg($B(fo(u.symbol)),w1)&&Br(u,Z.A_rest_parameter_must_be_of_an_array_type)}function F4s(u){let m=Z4s(u);if(!m){Br(u,Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let v=BS(m),D=xv(v);if(!D)return;nA(u.type);let{parameterName:W}=u;if(D.kind!==0&&D.kind!==2){if(D.parameterIndex>=0){if(G0(v)&&D.parameterIndex===v.parameters.length-1)Br(W,Z.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){let Y=()=>wu(void 0,Z.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);h0(D.type,fo(v.parameters[D.parameterIndex]),u.type,void 0,Y)}}else if(W){let Y=!1;for(let{name:oe}of m.parameters)if(Nu(oe)&&a0n(oe,W,D.parameterName)){Y=!0;break}Y||Br(u.parameterName,Z.Cannot_find_parameter_0,D.parameterName)}}}function Z4s(u){switch(u.parent.kind){case 220:case 180:case 263:case 219:case 185:case 175:case 174:let m=u.parent;if(u===m.type)return m}}function a0n(u,m,v){for(let D of u.elements){if(Ep(D))continue;let W=D.name;if(W.kind===80&&W.escapedText===v)return Br(m,Z.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,v),!0;if((W.kind===208||W.kind===207)&&a0n(W,m,v))return!0}}function CSe(u){u.kind===182?u8s(u):(u.kind===185||u.kind===263||u.kind===186||u.kind===180||u.kind===177||u.kind===181)&&oct(u);let m=BI(u);m&4||((m&3)===3&&Ze0&&v.declarations[0]!==u)return}let m=hot(Uo(u));if(m?.declarations){let v=new Map;for(let D of m.declarations)N0(D)&&D.parameters.length===1&&D.parameters[0].type&&MK(tl(D.parameters[0].type),W=>{let Y=v.get(UC(W));Y?Y.declarations.push(D):v.set(UC(W),{type:W,declarations:[D]})});v.forEach(D=>{if(D.declarations.length>1)for(let W of D.declarations)Br(W,Z.Duplicate_index_signature_for_type_0,ro(D.type))})}}function l0n(u){!gG(u)&&!k8s(u)&&act(u.name),UPe(u),Vat(u),Ga(u,64)&&u.kind===173&&u.initializer&&Br(u,Z.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,Md(u.name))}function W4s(u){return p(u.name)&&Br(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),l0n(u)}function O4s(u){vyn(u)||act(u.name),gu(u)&&u.asteriskToken&&Ir(u.name)&&Vo(u.name)==="constructor"&&Br(u.name,Z.Class_constructor_may_not_be_a_generator),y0n(u),Ga(u,64)&&u.kind===175&&u.body&&Br(u,Z.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,Md(u.name)),p(u.name)&&!_C(u)&&Br(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Vat(u)}function Vat(u){if(p(u.name)&&(ZeGa(He,31))))if(!H4s(Be,u.body))Br(Be,Z.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);else{let He;for(let $e of u.body.statements){if(PC($e)&&Gy(XI($e.expression))){He=$e;break}if(u0n($e))break}He===void 0&&Br(u,Z.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)}}else oe||Br(u,Z.Constructors_for_derived_classes_must_contain_a_super_call)}}}function H4s(u,m){let v=Iv(u.parent);return PC(v)&&v.parent===m}function u0n(u){return u.kind===108||u.kind===110?!0:TZe(u)?!1:!!Lu(u,u0n)}function g0n(u){Ir(u.name)&&Vo(u.name)==="constructor"&&xa(u.parent)&&Br(u.name,Z.Class_constructor_may_not_be_an_accessor),g(m),nA(u.body),Vat(u);function m(){if(!oct(u)&&!C8s(u)&&act(u.name),QPe(u),CSe(u),u.kind===178&&!(u.flags&33554432)&&p1(u.body)&&u.flags&512&&(u.flags&1024||Br(u.name,Z.A_get_accessor_must_return_a_value)),u.name.kind===168&&nT(u.name),Hse(u)){let D=Uo(u),W=yp(D,178),Y=yp(D,179);if(W&&Y&&!(e$(W)&1)){sa(W).flags|=1;let oe=l_(W),Be=l_(Y);(oe&64)!==(Be&64)&&(Br(W.name,Z.Accessors_must_both_be_abstract_or_non_abstract),Br(Y.name,Z.Accessors_must_both_be_abstract_or_non_abstract)),(oe&4&&!(Be&6)||oe&2&&!(Be&2))&&(Br(W.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),Br(Y.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}let v=Kpe(Uo(u));u.kind===178&&G8t(u,v)}}function Y4s(u){QPe(u)}function Q4s(u,m,v){return u.typeArguments&&v{let D=Y8t(u);D&&A0n(u,D)});let v=sa(u).resolvedSymbol;v&&zt(v.declarations,D=>aQ(D)&&!!(D.flags&536870912))&&jB(xPe(u),v.declarations,v.escapedName)}}function J4s(u){let m=Gs(u.parent,_7);if(!m)return;let v=Y8t(m);if(!v)return;let D=Ky(v[m.typeArguments.indexOf(u)]);return D&&Cl(D,G1(v,Wat(m,v)))}function U4s(u){XIn(u)}function K4s(u){F(u.members,nA),g(m);function m(){let v=Zhn(u);Uat(v,v.symbol),H8t(u),c0n(u)}}function j4s(u){nA(u.elementType)}function z4s(u){let m=!1,v=!1;for(let D of u.elements){let W=wUt(D);if(W&8){let Y=tl(D.type);if(!F9(Y)){Br(D,Z.A_rest_element_type_must_be_an_array_type);break}(Fv(Y)||EA(Y)&&Y.target.combinedFlags&4)&&(W|=4)}if(W&4){if(v){os(D,Z.A_rest_element_cannot_follow_another_rest_element);break}v=!0}else if(W&2){if(v){os(D,Z.An_optional_element_cannot_follow_a_rest_element);break}m=!0}else if(W&1&&m){os(D,Z.A_required_element_cannot_follow_an_optional_element);break}}F(u.elements,nA),tl(u)}function q4s(u){F(u.types,nA),tl(u)}function p0n(u,m){if(!(u.flags&8388608))return u;let v=u.objectType,D=u.indexType,W=Jb(v)&&V2e(v)===2?_hn(v,0):JN(v,0),Y=!!sG(v,ri);if(xE(D,oe=>pg(oe,W)||Y&&Wq(oe,ri)))return m.kind===213&&RF(m)&&la(v)&32&&yk(v)&1&&Br(m,Z.Index_signature_in_type_0_only_permits_reading,ro(v)),u;if(xK(v)){let oe=Tot(D,m);if(oe){let Be=MK(my(v),Me=>Fg(Me,oe));if(Be&&p2(Be)&6)return Br(m,Z.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,Bc(oe)),nn}}return Br(m,Z.Type_0_cannot_be_used_to_index_type_1,ro(D),ro(v)),nn}function $4s(u){nA(u.objectType),nA(u.indexType),p0n(Nhn(u),u)}function eJs(u){tJs(u),nA(u.typeParameter),nA(u.nameType),nA(u.type),u.type||U5(u,hr);let m=WUt(u),v=N9(m);if(v)h0(v,mc,u.nameType);else{let D=vS(m);h0(D,mc,A3(u.typeParameter))}}function tJs(u){var m;if((m=u.members)!=null&&m.length)return os(u.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods)}function rJs(u){XUt(u)}function nJs(u){y8s(u),nA(u.type)}function iJs(u){Lu(u,nA)}function sJs(u){ji(u,v=>v.parent&&v.parent.kind===195&&v.parent.extendsType===v)||os(u,Z.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),nA(u.typeParameter);let m=Uo(u.typeParameter);if(m.declarations&&m.declarations.length>1){let v=fa(m);if(!v.typeParametersChecked){v.typeParametersChecked=!0;let D=V5(m),W=Dge(m,169);if(!O0n(W,[D],Y=>[Y])){let Y=xl(m);for(let oe of W)Br(oe.name,Z.All_declarations_of_0_must_have_identical_constraints,Y)}}}RO(u)}function oJs(u){for(let m of u.templateSpans){nA(m.type);let v=tl(m.type);h0(v,dg,m.type)}tl(u)}function aJs(u){nA(u.argument),u.attributes&&Kie(u.attributes,os),d0n(u)}function cJs(u){u.dotDotDotToken&&u.questionToken&&os(u,Z.A_tuple_member_cannot_be_both_optional_and_rest),u.type.kind===191&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),u.type.kind===192&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),nA(u.type),tl(u)}function HPe(u){return(Lb(u,2)||hC(u))&&!!(u.flags&33554432)}function _Se(u,m){let v=lct(u);if(u.parent.kind!==265&&u.parent.kind!==264&&u.parent.kind!==232&&u.flags&33554432){let D=N7(u);D&&D.flags&128&&!(v&128)&&!(BN(u.parent)&&Lh(u.parent.parent)&&DB(u.parent.parent))&&(v|=32),v|=128}return v&m}function Oat(u){g(()=>lJs(u))}function lJs(u){function m(Ji,Mi){return Mi!==void 0&&Mi.parent===Ji[0].parent?Mi:Ji[0]}function v(Ji,Mi,wo,Ka,_l){if((Ka^_l)!==0){let Kc=_Se(m(Ji,Mi),wo);Yn(Ji,Vu=>ms(Vu).fileName).forEach(Vu=>{let dd=_Se(m(Vu,Mi),wo);for(let Vl of Vu){let vf=_Se(Vl,wo)^Kc,zI=_Se(Vl,wo)^dd;zI&32?Br(fl(Vl),Z.Overload_signatures_must_all_be_exported_or_non_exported):zI&128?Br(fl(Vl),Z.Overload_signatures_must_all_be_ambient_or_non_ambient):vf&6?Br(fl(Vl)||Vl,Z.Overload_signatures_must_all_be_public_private_or_protected):vf&64&&Br(fl(Vl),Z.Overload_signatures_must_all_be_abstract_or_non_abstract)}})}}function D(Ji,Mi,wo,Ka){if(wo!==Ka){let _l=jY(m(Ji,Mi));F(Ji,ka=>{jY(ka)!==_l&&Br(fl(ka),Z.Overload_signatures_must_all_be_optional_or_required)})}}let W=230,Y=0,oe=W,Be=!1,Me=!0,He=!1,$e,Vt,kt,wr=u.declarations,dn=(u.flags&16384)!==0;function Sn(Ji){if(Ji.name&&af(Ji.name))return;let Mi=!1,wo=Lu(Ji.parent,_l=>{if(Mi)return _l;Mi=_l===Ji});if(wo&&wo.pos===Ji.end&&wo.kind===Ji.kind){let _l=wo.name||wo,ka=wo.name;if(Ji.name&&ka&&(p(Ji.name)&&p(ka)&&Ji.name.escapedText===ka.escapedText||Un(Ji.name)&&Un(ka)&&cG(nT(Ji.name),nT(ka))||Gw(Ji.name)&&Gw(ka)&&AU(Ji.name)===AU(ka))){if((Ji.kind===175||Ji.kind===174)&&lg(Ji)!==lg(wo)){let Vu=lg(Ji)?Z.Function_overload_must_be_static:Z.Function_overload_must_not_be_static;Br(_l,Vu)}return}if(p1(wo.body)){Br(_l,Z.Function_implementation_name_must_be_0,Md(Ji.name));return}}let Ka=Ji.name||Ji;dn?Br(Ka,Z.Constructor_implementation_is_missing):Ga(Ji,64)?Br(Ka,Z.All_declarations_of_an_abstract_method_must_be_consecutive):Br(Ka,Z.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let ii=!1,Yi=!1,js=!1,mo=[];if(wr)for(let Ji of wr){let Mi=Ji,wo=Mi.flags&33554432,Ka=Mi.parent&&(Mi.parent.kind===265||Mi.parent.kind===188)||wo;if(Ka&&(kt=void 0),(Mi.kind===264||Mi.kind===232)&&!wo&&(js=!0),Mi.kind===263||Mi.kind===175||Mi.kind===174||Mi.kind===177){mo.push(Mi);let _l=_Se(Mi,W);Y|=_l,oe&=_l,Be=Be||jY(Mi),Me=Me&&jY(Mi);let ka=p1(Mi.body);ka&&$e?dn?Yi=!0:ii=!0:kt?.parent===Mi.parent&&kt.end!==Mi.pos&&Sn(kt),ka?$e||($e=Mi):He=!0,kt=Mi,Ka||(Vt=Mi)}Bo(Ji)&&Eu(Ji)&&Ji.jsDoc&&(He=B(Uye(Ji))>0)}if(Yi&&F(mo,Ji=>{Br(Ji,Z.Multiple_constructor_implementations_are_not_allowed)}),ii&&F(mo,Ji=>{Br(fl(Ji)||Ji,Z.Duplicate_function_implementation)}),js&&!dn&&u.flags&16&&wr){let Ji=Le(wr,Mi=>Mi.kind===264).map(Mi=>ho(Mi,Z.Consider_adding_a_declare_modifier_to_this_class));F(wr,Mi=>{let wo=Mi.kind===264?Z.Class_declaration_cannot_implement_overload_list_for_0:Mi.kind===263?Z.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;wo&&ug(Br(fl(Mi)||Mi,wo,of(u)),...Ji)})}if(Vt&&!Vt.body&&!Ga(Vt,64)&&!Vt.questionToken&&Sn(Vt),He&&(wr&&(v(wr,$e,W,Y,oe),D(wr,$e,Be,Me)),$e)){let Ji=zQ(u),Mi=BS($e);for(let wo of Ji)if(!gMs(Mi,wo)){let Ka=wo.declaration&&s9(wo.declaration)?wo.declaration.parent.tagName:wo.declaration;ug(Br(Ka,Z.This_overload_signature_is_not_compatible_with_its_implementation_signature),ho($e,Z.The_implementation_signature_is_declared_here));break}}}function ySe(u){g(()=>uJs(u))}function uJs(u){let m=u.localSymbol;if(!m&&(m=Uo(u),!m.exportSymbol)||yp(m,u.kind)!==u)return;let v=0,D=0,W=0;for(let He of m.declarations){let $e=Me(He),Vt=_Se(He,2080);Vt&32?Vt&2048?W|=$e:v|=$e:D|=$e}let Y=v|D,oe=v&D,Be=W&Y;if(oe||Be)for(let He of m.declarations){let $e=Me(He),Vt=fl(He);$e&Be?Br(Vt,Z.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,Md(Vt)):$e&oe&&Br(Vt,Z.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,Md(Vt))}function Me(He){let $e=He;switch($e.kind){case 265:case 266:case 347:case 339:case 341:return 2;case 268:return c_($e)||XF($e)!==0?5:4;case 264:case 267:case 307:return 3;case 308:return 7;case 278:case 227:let Vt=$e,kt=yf(Vt)?Vt.expression:Vt.right;if(!Hd(kt))return 1;$e=kt;case 272:case 275:case 274:let wr=0,dn=JC(Uo($e));return F(dn.declarations,Sn=>{wr|=Me(Sn)}),wr;case 261:case 209:case 263:case 277:case 80:return 1;case 174:case 172:return 2;default:return pe.failBadSyntaxKind($e)}}}function mfe(u,m,v,...D){let W=bSe(u,m);return W&&zq(W,m,v,...D)}function bSe(u,m,v){if(Xo(u))return;let D=u;if(D.promisedTypeOfPromise)return D.promisedTypeOfPromise;if(D1(u,XOe(!1)))return D.promisedTypeOfPromise=gf(u)[0];if(mSe(XN(u),402915324))return;let W=Wi(u,"then");if(Xo(W))return;let Y=W?rg(W,0):E;if(Y.length===0){m&&Br(m,Z.A_promise_must_have_a_then_method);return}let oe,Be;for(let $e of Y){let Vt=P5($e);Vt&&Vt!==es&&!UN(u,Vt,pk)?oe=Vt:Be=Ft(Be,$e)}if(!Be){pe.assertIsDefined(oe),v&&(v.value=oe),m&&Br(m,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,ro(u),ro(oe));return}let Me=Zv(Ha(lt(Be,R8t)),2097152);if(Xo(Me))return;let He=rg(Me,0);if(He.length===0){m&&Br(m,Z.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return D.promisedTypeOfPromise=Ha(lt(He,R8t),2)}function YPe(u,m,v,D,...W){return(m?zq(u,v,D,...W):yZ(u,v,D,...W))||nn}function f0n(u){if(mSe(XN(u),402915324))return!1;let m=Wi(u,"then");return!!m&&rg(Zv(m,2097152),0).length>0}function Pat(u){var m;if(u.flags&16777216){let v=BUt(!1);return!!v&&u.aliasSymbol===v&&((m=u.aliasTypeArguments)==null?void 0:m.length)===1}return!1}function Cfe(u){return u.flags&1048576?Xf(u,Cfe):Pat(u)?u.aliasTypeArguments[0]:u}function I0n(u){if(Xo(u)||Pat(u))return!1;if(xK(u)){let m=O_(u);if(m?m.flags&3||IZ(m)||Lv(m,f0n):uh(u,8650752))return!0}return!1}function gJs(u){let m=BUt(!0);if(m)return Jse(m,[Cfe(u)])}function AJs(u){return I0n(u)?gJs(u)??u:(pe.assert(Pat(u)||bSe(u)===void 0,"type provided should not be a non-generic 'promise'-like."),u)}function zq(u,m,v,...D){let W=yZ(u,m,v,...D);return W&&AJs(W)}function yZ(u,m,v,...D){if(Xo(u)||Pat(u))return u;let W=u;if(W.awaitedTypeOfType)return W.awaitedTypeOfType;if(u.flags&1048576){if(oO.lastIndexOf(u.id)>=0){m&&Br(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}let Be=m?He=>yZ(He,m,v,...D):yZ;oO.push(u.id);let Me=Xf(u,Be);return oO.pop(),W.awaitedTypeOfType=Me}if(I0n(u))return W.awaitedTypeOfType=u;let Y={value:void 0},oe=bSe(u,void 0,Y);if(oe){if(u.id===oe.id||oO.lastIndexOf(oe.id)>=0){m&&Br(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}oO.push(u.id);let Be=yZ(oe,m,v,...D);return oO.pop(),Be?W.awaitedTypeOfType=Be:void 0}if(f0n(u)){if(m){pe.assertIsDefined(v);let Be;Y.value&&(Be=wu(Be,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,ro(u),ro(Y.value))),Be=wu(Be,v,...D),PA.add(kw(ms(m),m,Be))}return}return W.awaitedTypeOfType=u}function dJs(u,m,v){let D=tl(m);if(Ze>=2){if(lo(D))return;let Y=XOe(!0);if(Y!==oi&&!D1(D,Y)){W(Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,m,v,ro(yZ(D)||es));return}}else{if(Uq(u,5),lo(D))return;let Y=fne(m);if(Y===void 0){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,ro(D));return}let oe=NI(Y,111551,!0),Be=oe?fo(oe):nn;if(lo(Be)){Y.kind===80&&Y.escapedText==="Promise"&&vs(D)===XOe(!1)?Br(v,Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,ly(Y));return}let Me=y3s(!0);if(Me===Jg){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,ly(Y));return}let He=Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!h0(Be,Me,v,He,()=>m===v?void 0:wu(void 0,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;let Vt=Y&&R0(Y),kt=m_(u.locals,Vt.escapedText,111551);if(kt){Br(kt.valueDeclaration,Z.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,Vo(Vt),ly(Y));return}}YPe(D,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function W(Y,oe,Be,Me){if(oe===Be)Br(Be,Y,Me);else{let He=Br(Be,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);ug(He,ho(oe,Y,Me))}}}function pJs(u){let m=ms(u);if(!DO(m)){let v=u.expression;if(dI(v))return!1;let D=!0,W;for(;;){if(A_(v)||bv(v)){v=v.expression;continue}if(Ll(v)){D||(W=v),v.questionDotToken&&(W=v.questionDotToken),v=v.expression,D=!1;continue}if(jo(v)){v.questionDotToken&&(W=v.questionDotToken),v=v.expression,D=!1;continue}Ir(v)||(W=v);break}if(W)return ug(Br(u.expression,Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),ho(W,Z.Invalid_syntax_in_decorator)),!0}return!1}function fJs(u){pJs(u);let m=ioe(u);kat(m,u);let v=Ad(m);if(v.flags&1)return;let D=k8t(u);if(!D?.resolvedReturnType)return;let W,Y=D.resolvedReturnType;switch(u.parent.kind){case 264:case 232:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 173:if(!Ke){W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 170:W=Z.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 175:case 178:case 179:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return pe.failBadSyntaxKind(u.parent)}h0(v,Y,u.expression,W)}function ESe(u,m,v,D,W,Y=v.length,oe=0){let Be=me.createFunctionTypeNode(void 0,E,me.createKeywordTypeNode(133));return QN(Be,u,m,v,D,W,Y,oe)}function X8t(u,m,v,D,W,Y,oe){let Be=ESe(u,m,v,D,W,Y,oe);return RK(Be)}function h0n(u){return X8t(void 0,void 0,E,u)}function m0n(u){let m=yS("value",u);return X8t(void 0,void 0,[m],es)}function J8t(u){if(u)switch(u.kind){case 194:case 193:return C0n(u.types);case 195:return C0n([u.trueType,u.falseType]);case 197:case 203:return J8t(u.type);case 184:return u.typeName}}function C0n(u){let m;for(let v of u){for(;v.kind===197||v.kind===203;)v=v.type;if(v.kind===146||!at&&(v.kind===202&&v.literal.kind===106||v.kind===157))continue;let D=J8t(v);if(!D)return;if(m){if(!Ir(m)||!Ir(D)||m.escapedText!==D.escapedText)return}else m=D}return m}function Mat(u){let m=Zh(u);return RB(u)?Zye(m):m}function QPe(u){if(!mQ(u)||!m1(u)||!u.modifiers||!tU(Ke,u,u.parent,u.parent.parent))return;let m=de(u.modifiers,Eo);if(m){Ke?(iC(m,8),u.kind===170&&iC(m,32)):Ze1)for(let D=1;D0),v.length>1&&Br(v[1],Z.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);let D=_0n(u.class.expression),W=UL(m);if(W){let Y=_0n(W.expression);Y&&D.escapedText!==Y.escapedText&&Br(D,Z.JSDoc_0_1_does_not_match_the_extends_2_clause,Vo(u.tagName),Vo(D),Vo(Y))}}function RJs(u){let m=DW(u);m&&hC(m)&&Br(u,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function _0n(u){switch(u.kind){case 80:return u;case 212:return u.name;default:return}}function y0n(u){var m;QPe(u),CSe(u);let v=BI(u);if(u.name&&u.name.kind===168&&nT(u.name),Hse(u)){let Y=Uo(u),oe=u.localSymbol||Y,Be=(m=oe.declarations)==null?void 0:m.find(Me=>Me.kind===u.kind&&!(Me.flags&524288));u===Be&&Oat(oe),Y.parent&&Oat(Y)}let D=u.kind===174?void 0:u.body;if(nA(D),G8t(u,Qse(u)),g(W),Bo(u)){let Y=gv(u);Y&&Y.typeExpression&&!e8t(tl(Y.typeExpression),u)&&Br(Y.typeExpression.type,Z.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function W(){Zb(u)||(af(D)&&!HPe(u)&&U5(u,hr),v&1&&p1(D)&&Ad(BS(u)))}}function RO(u){g(m);function m(){let v=ms(u),D=Qs.get(v.path);D||(D=[],Qs.set(v.path,D)),D.push(u)}}function b0n(u,m){for(let v of u)switch(v.kind){case 264:case 232:NJs(v,m),U8t(v,m);break;case 308:case 268:case 242:case 270:case 249:case 250:case 251:v0n(v,m);break;case 177:case 219:case 263:case 220:case 175:case 178:case 179:v.body&&v0n(v,m),U8t(v,m);break;case 174:case 180:case 181:case 185:case 186:case 266:case 265:U8t(v,m);break;case 196:DJs(v,m);break;default:pe.assertNever(v,"Node should not have been registered for unused identifiers check")}}function E0n(u,m,v){let D=fl(u)||u,W=aQ(u)?Z._0_is_declared_but_never_used:Z._0_is_declared_but_its_value_is_never_read;v(u,0,ho(D,W,m))}function SSe(u){return Ir(u)&&Vo(u).charCodeAt(0)===95}function NJs(u,m){for(let v of u.members)switch(v.kind){case 175:case 173:case 178:case 179:if(v.kind===179&&v.symbol.flags&32768)break;let D=Uo(v);!D.isReferenced&&(Lb(v,2)||sh(v)&&p(v.name))&&!(v.flags&33554432)&&m(v,0,ho(v.name,Z._0_is_declared_but_its_value_is_never_read,xl(D)));break;case 177:for(let W of v.parameters)!W.symbol.isReferenced&&Ga(W,2)&&m(W,0,ho(W.name,Z.Property_0_is_declared_but_its_value_is_never_read,of(W.symbol)));break;case 182:case 241:case 176:break;default:pe.fail("Unexpected class member")}}function DJs(u,m){let{typeParameter:v}=u;K8t(v)&&m(u,1,ho(u,Z._0_is_declared_but_its_value_is_never_read,Vo(v.name)))}function U8t(u,m){let v=Uo(u).declarations;if(!v||Ei(v)!==u)return;let D=MD(u),W=new Set;for(let Y of D){if(!K8t(Y))continue;let oe=Vo(Y.name),{parent:Be}=Y;if(Be.kind!==196&&Be.typeParameters.every(K8t)){if(Ar(W,Be)){let Me=ms(Be),He=MB(Be)?qbe(Be):$be(Me,Be.typeParameters),Vt=Be.typeParameters.length===1?[Z._0_is_declared_but_its_value_is_never_read,oe]:[Z.All_type_parameters_are_unused];m(Y,1,rm(Me,He.pos,He.end-He.pos,...Vt))}}else m(Y,1,ho(Y,Z._0_is_declared_but_its_value_is_never_read,oe))}}function K8t(u){return!(qA(u.symbol).isReferenced&262144)&&!SSe(u.name)}function XPe(u,m,v,D){let W=String(D(m)),Y=u.get(W);Y?Y[1].push(v):u.set(W,[m,[v]])}function S0n(u){return Gs(Fw(u),Si)}function kJs(u){return mg(u)?$m(u.parent)?!!(u.propertyName&&SSe(u.name)):SSe(u.name):c_(u)||(nc(u)&&WL(u.parent.parent)||B0n(u))&&SSe(u.name)}function v0n(u,m){let v=new Map,D=new Map,W=new Map;u.locals.forEach(Y=>{if(!(Y.flags&262144?!(Y.flags&3&&!(Y.isReferenced&3)):Y.isReferenced||Y.exportSymbol)&&Y.declarations){for(let oe of Y.declarations)if(!kJs(oe))if(B0n(oe))XPe(v,GJs(oe),oe,id);else if(mg(oe)&&$m(oe.parent)){let Be=Ei(oe.parent.elements);(oe===Be||!Ei(oe.parent.elements).dotDotDotToken)&&XPe(D,oe.parent,oe,id)}else if(nc(oe)){let Be=cX(oe)&7,Me=fl(oe);(Be!==4&&Be!==6||!Me||!SSe(Me))&&XPe(W,oe.parent,oe,id)}else{let Be=Y.valueDeclaration&&S0n(Y.valueDeclaration),Me=Y.valueDeclaration&&fl(Y.valueDeclaration);Be&&Me?!We(Be,Be.parent)&&!DF(Be)&&!SSe(Me)&&(mg(oe)&&m2(oe.parent)?XPe(D,oe.parent,oe,id):m(Be,1,ho(Me,Z._0_is_declared_but_its_value_is_never_read,of(Y)))):E0n(oe,of(Y),m)}}}),v.forEach(([Y,oe])=>{let Be=Y.parent;if((Y.name?1:0)+(Y.namedBindings?Y.namedBindings.kind===275?1:Y.namedBindings.elements.length:0)===oe.length)m(Be,0,oe.length===1?ho(Be,Z._0_is_declared_but_its_value_is_never_read,Vo(ma(oe).name)):ho(Be,Z.All_imports_in_import_declaration_are_unused));else for(let He of oe)E0n(He,Vo(He.name),m)}),D.forEach(([Y,oe])=>{let Be=S0n(Y.parent)?1:0;if(Y.elements.length===oe.length)oe.length===1&&Y.parent.kind===261&&Y.parent.parent.kind===262?XPe(W,Y.parent.parent,Y.parent,id):m(Y,Be,oe.length===1?ho(Y,Z._0_is_declared_but_its_value_is_never_read,JPe(ma(oe).name)):ho(Y,Z.All_destructured_elements_are_unused));else for(let Me of oe)m(Me,Be,ho(Me,Z._0_is_declared_but_its_value_is_never_read,JPe(Me.name)))}),W.forEach(([Y,oe])=>{if(Y.declarations.length===oe.length)m(Y,0,oe.length===1?ho(ma(oe).name,Z._0_is_declared_but_its_value_is_never_read,JPe(ma(oe).name)):ho(Y.parent.kind===244?Y.parent:Y,Z.All_variables_are_unused));else for(let Be of oe)m(Be,0,ho(Be,Z._0_is_declared_but_its_value_is_never_read,JPe(Be.name)))})}function xJs(){var u;for(let m of rZ)if(!((u=Uo(m))!=null&&u.isReferenced)){let v=ai(m);pe.assert(jL(v),"Only parameter declaration should be checked here");let D=ho(m.name,Z._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,Md(m.name),Md(m.propertyName));v.type||ug(D,rm(ms(v),v.end,0,Z.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,Md(m.propertyName))),PA.add(D)}}function JPe(u){switch(u.kind){case 80:return Vo(u);case 208:case 207:return JPe(Ma(ma(u.elements),mg).name);default:return pe.assertNever(u)}}function B0n(u){return u.kind===274||u.kind===277||u.kind===275}function GJs(u){return u.kind===274?u:u.kind===275?u.parent:u.parent.parent}function Hat(u){if(u.kind===242&&bZ(u),xJ(u)){let m=Yc;F(u.statements,nA),Yc=m}else F(u.statements,nA);u.locals&&RO(u)}function FJs(u){Ze>=2||!Kre(u)||u.flags&33554432||af(u.body)||F(u.parameters,m=>{m.name&&!Nu(m.name)&&m.name.escapedText===ot.escapedName&&I9("noEmit",m,Z.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function vSe(u,m,v){if(m?.escapedText!==v||u.kind===173||u.kind===172||u.kind===175||u.kind===174||u.kind===178||u.kind===179||u.kind===304||u.flags&33554432||(Yw(u)||Zm(u)||dy(u))&&lN(u))return!1;let D=Fw(u);return!(Si(D)&&af(D.parent.body))}function ZJs(u){ji(u,m=>e$(m)&4?(u.kind!==80?Br(fl(u),Z.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):Br(u,Z.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function LJs(u){ji(u,m=>e$(m)&8?(u.kind!==80?Br(fl(u),Z.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):Br(u,Z.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function VJs(u,m){if(s.getEmitModuleFormatOfFile(ms(u))>=5||!m||!vSe(u,m,"require")&&!vSe(u,m,"exports")||Lh(u)&&XF(u)!==1)return;let v=Tn(u);v.kind===308&&Sl(v)&&I9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,Md(m),Md(m))}function WJs(u,m){if(!m||Ze>=4||!vSe(u,m,"Promise")||Lh(u)&&XF(u)!==1)return;let v=Tn(u);v.kind===308&&Sl(v)&&v.flags&4096&&I9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,Md(m),Md(m))}function OJs(u,m){Ze<=8&&(vSe(u,m,"WeakMap")||vSe(u,m,"WeakSet"))&&eZ.push(u)}function PJs(u){let m=oS(u);e$(m)&1048576&&(pe.assert(sh(u)&&Ir(u.name)&&typeof u.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),I9("noEmit",u,Z.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,u.name.escapedText))}function MJs(u,m){m&&Ze>=2&&Ze<=8&&vSe(u,m,"Reflect")&&tZ.push(u)}function HJs(u){let m=!1;if(wd(u)){for(let v of u.members)if(e$(v)&2097152){m=!0;break}}else if(jA(u))e$(u)&2097152&&(m=!0);else{let v=oS(u);v&&e$(v)&2097152&&(m=!0)}m&&(pe.assert(sh(u)&&Ir(u.name),"The target of a Reflect collision check should be an identifier"),I9("noEmit",u,Z.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,Md(u.name),"Reflect"))}function _fe(u,m){m&&(VJs(u,m),WJs(u,m),OJs(u,m),MJs(u,m),xa(u)?(yfe(m,Z.Class_name_cannot_be_0),u.flags&33554432||CUs(m)):J3(u)&&yfe(m,Z.Enum_name_cannot_be_0))}function YJs(u){if(cX(u)&7||jL(u))return;let m=Uo(u);if(m.flags&1){if(!Ir(u.name))return pe.fail();let v=An(u,u.name.escapedText,3,void 0,!1);if(v&&v!==m&&v.flags&2&&n8t(v)&7){let D=KL(v.valueDeclaration,262),W=D.parent.kind===244&&D.parent.parent?D.parent.parent:void 0;if(!(W&&(W.kind===242&&Eu(W.parent)||W.kind===269||W.kind===268||W.kind===308))){let oe=xl(v);Br(u,Z.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,oe,oe)}}}}function BSe(u){return u===En?hr:u===YC?I_:u}function UPe(u){var m;if(QPe(u),mg(u)||nA(u.type),!u.name)return;if(u.name.kind===168&&(nT(u.name),d1(u)&&u.initializer&&DI(u.initializer)),mg(u)){if(u.propertyName&&Ir(u.name)&&jL(u)&&af(I1(u).body)){rZ.push(u);return}$m(u.parent)&&u.dotDotDotToken&&Ze1&&zt(v.declarations,Y=>Y!==u&&D7(Y)&&!T0n(Y,u))&&Br(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Md(u.name))}else{let W=BSe(Lq(u));!lo(D)&&!lo(W)&&!cG(D,W)&&!(v.flags&67108864)&&w0n(v.valueDeclaration,D,u,W),d1(u)&&u.initializer&&nX(DI(u.initializer),W,u,u.initializer,void 0),v.valueDeclaration&&!T0n(u,v.valueDeclaration)&&Br(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Md(u.name))}u.kind!==173&&u.kind!==172&&(ySe(u),(u.kind===261||u.kind===209)&&YJs(u),_fe(u,u.name))}function w0n(u,m,v,D){let W=fl(v),Y=v.kind===173||v.kind===172?Z.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Z.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,oe=Md(W),Be=Br(W,Y,oe,ro(m),ro(D));u&&ug(Be,ho(u,Z._0_was_also_declared_here,oe))}function T0n(u,m){if(u.kind===170&&m.kind===261||u.kind===261&&m.kind===170)return!0;if(jY(u)!==jY(m))return!1;let v=1358;return eQ(u,v)===eQ(m,v)}function QJs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkVariableDeclaration",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath}),B8s(u),UPe(u),(v=ki)==null||v.pop()}function XJs(u){return E8s(u),UPe(u)}function Yat(u){let m=hm(u)&7;(m===4||m===6)&&Ze=2,Be=!oe&&Te.downlevelIteration,Me=Te.noUncheckedIndexedAccess&&!!(u&128);if(oe||Be||Y){let wr=Xat(m,u,oe?D:void 0);if(W&&wr){let dn=u&8?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:u&32?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:u&64?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:u&16?Z.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;dn&&h0(v,wr.nextType,D,dn)}if(wr||oe)return Me?sSe(wr&&wr.yieldType):wr&&wr.yieldType}let He=m,$e=!1;if(u&4){if(He.flags&1048576){let wr=m.types,dn=Le(wr,Sn=>!(Sn.flags&402653316));dn!==wr&&(He=Ha(dn,2))}else He.flags&402653316&&(He=Oi);if($e=He!==m,$e&&He.flags&131072)return Me?sSe($r):$r}if(!F9(He)){if(D){let wr=!!(u&4)&&!$e,[dn,Sn]=kt(wr,Be);h9(D,Sn&&!!mfe(He),dn,ro(He))}return $e?Me?sSe($r):$r:void 0}let Vt=O5(He,ri);if($e&&Vt)return Vt.flags&402653316&&!Te.noUncheckedIndexedAccess?$r:Ha(Me?[Vt,$r,wt]:[Vt,$r],2);return u&128?sSe(Vt):Vt;function kt(wr,dn){var Sn;return dn?wr?[Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:e6t(u,0,m,void 0)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:nUs((Sn=m.symbol)==null?void 0:Sn.escapedName)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:wr?[Z.Type_0_is_not_an_array_type_or_a_string_type,!0]:[Z.Type_0_is_not_an_array_type,!0]}}function nUs(u){switch(u){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function e6t(u,m,v,D){if(Xo(v))return;let W=Xat(v,u,D);return W&&W[qtn(m)]}function NO(u=Oi,m=Oi,v=cn){if(u.flags&67359327&&m.flags&180227&&v.flags&180227){let D=ew([u,m,v]),W=Fd.get(D);return W||(W={yieldType:u,returnType:m,nextType:v},Fd.set(D,W)),W}return{yieldType:u,returnType:m,nextType:v}}function R0n(u){let m,v,D;for(let W of u)if(!(W===void 0||W===Vg)){if(W===Ef)return Ef;m=Ft(m,W.yieldType),v=Ft(v,W.returnType),D=Ft(D,W.nextType)}return m||v||D?NO(m&&Ha(m),v&&Ha(v),D&&jg(D)):Vg}function Qat(u,m){return u[m]}function uG(u,m,v){return u[m]=v}function Xat(u,m,v){var D,W;if(u===Vn)return om;if(Xo(u))return Ef;if(!(u.flags&1048576)){let He=v?{errors:void 0,skipLogging:!0}:void 0,$e=N0n(u,m,v,He);if($e===Vg){if(v){let Vt=r6t(v,u,!!(m&2));He?.errors&&ug(Vt,...He.errors)}return}else if((D=He?.errors)!=null&&D.length)for(let Vt of He.errors)PA.add(Vt);return $e}let Y=m&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",oe=Qat(u,Y);if(oe)return oe===Vg?void 0:oe;let Be;for(let He of u.types){let $e=v?{errors:void 0}:void 0,Vt=N0n(He,m,v,$e);if(Vt===Vg){if(v){let kt=r6t(v,u,!!(m&2));$e?.errors&&ug(kt,...$e.errors)}uG(u,Y,Vg);return}else if((W=$e?.errors)!=null&&W.length)for(let kt of $e.errors)PA.add(kt);Be=Ft(Be,Vt)}let Me=Be?R0n(Be):Vg;return uG(u,Y,Me),Me===Vg?void 0:Me}function t6t(u,m){if(u===Vg)return Vg;if(u===Ef)return Ef;let{yieldType:v,returnType:D,nextType:W}=u;return m&&BUt(!0),NO(zq(v,m)||hr,zq(D,m)||hr,W)}function N0n(u,m,v,D){if(Xo(u))return Ef;let W=!1;if(m&2){let Y=D0n(u,Sh)||k0n(u,Sh);if(Y)if(Y===Vg&&v)W=!0;else return m&8?t6t(Y,v):Y}if(m&1){let Y=D0n(u,Zp)||k0n(u,Zp);if(Y)if(Y===Vg&&v)W=!0;else if(m&2){if(Y!==Vg)return Y=t6t(Y,v),W?Y:uG(u,"iterationTypesOfAsyncIterable",Y)}else return Y}if(m&2){let Y=G0n(u,Sh,v,D,W);if(Y!==Vg)return Y}if(m&1){let Y=G0n(u,Zp,v,D,W);if(Y!==Vg)return m&2?(Y=t6t(Y,v),W?Y:uG(u,"iterationTypesOfAsyncIterable",Y)):Y}return Vg}function D0n(u,m){return Qat(u,m.iterableCacheKey)}function k0n(u,m){if(D1(u,m.getGlobalIterableType(!1))||D1(u,m.getGlobalIteratorObjectType(!1))||D1(u,m.getGlobalIterableIteratorType(!1))||D1(u,m.getGlobalGeneratorType(!1))){let[v,D,W]=gf(u);return uG(u,m.iterableCacheKey,NO(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,W))}if(uot(u,m.getGlobalBuiltinIteratorTypes())){let[v]=gf(u),D=vUt(),W=cn;return uG(u,m.iterableCacheKey,NO(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,W))}}function x0n(u){let m=qIn(!1),v=m&&Wi(fo(m),pp(u));return v&&f2(v)?I2(v):`__@${u}`}function G0n(u,m,v,D,W){let Y=Fg(u,x0n(m.iteratorSymbolName)),oe=Y&&!(Y.flags&16777216)?fo(Y):void 0;if(Xo(oe))return W?Ef:uG(u,m.iterableCacheKey,Ef);let Be=oe?rg(oe,0):void 0,Me=Le(Be,Vt=>BR(Vt)===0);if(!zt(Me))return v&&zt(Be)&&h0(u,m.getGlobalIterableType(!0),v,void 0,void 0,D),W?Vg:uG(u,m.iterableCacheKey,Vg);let He=jg(lt(Me,Ad)),$e=F0n(He,m,v,D,W)??Vg;return W?$e:uG(u,m.iterableCacheKey,$e)}function r6t(u,m,v){let D=v?Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,W=!!mfe(m)||!v&&BEe(u.parent)&&u.parent.expression===u&&JOe(!1)!==oi&&pg(m,ife(JOe(!1),[hr,hr,hr]));return h9(u,W,D,ro(m))}function iUs(u,m,v,D){return F0n(u,m,v,D,!1)}function F0n(u,m,v,D,W){if(Xo(u))return Ef;let Y=sUs(u,m)||oUs(u,m);return Y===Vg&&v&&(Y=void 0,W=!0),Y??(Y=uUs(u,m,v,D,W)),Y===Vg?void 0:Y}function sUs(u,m){return Qat(u,m.iteratorCacheKey)}function oUs(u,m){if(D1(u,m.getGlobalIterableIteratorType(!1))||D1(u,m.getGlobalIteratorType(!1))||D1(u,m.getGlobalIteratorObjectType(!1))||D1(u,m.getGlobalGeneratorType(!1))){let[v,D,W]=gf(u);return uG(u,m.iteratorCacheKey,NO(v,D,W))}if(uot(u,m.getGlobalBuiltinIteratorTypes())){let[v]=gf(u),D=vUt(),W=cn;return uG(u,m.iteratorCacheKey,NO(v,D,W))}}function Z0n(u,m){let v=Wi(u,"done")||Bs;return pg(m===0?Bs:tn,v)}function aUs(u){return Z0n(u,0)}function cUs(u){return Z0n(u,1)}function lUs(u){if(Xo(u))return Ef;let m=Qat(u,"iterationTypesOfIteratorResult");if(m)return m;if(D1(u,N3s(!1))){let oe=gf(u)[0];return uG(u,"iterationTypesOfIteratorResult",NO(oe,void 0,void 0))}if(D1(u,D3s(!1))){let oe=gf(u)[0];return uG(u,"iterationTypesOfIteratorResult",NO(void 0,oe,void 0))}let v=am(u,aUs),D=v!==Oi?Wi(v,"value"):void 0,W=am(u,cUs),Y=W!==Oi?Wi(W,"value"):void 0;return!D&&!Y?uG(u,"iterationTypesOfIteratorResult",Vg):uG(u,"iterationTypesOfIteratorResult",NO(D,Y||es,void 0))}function n6t(u,m,v,D,W){var Y,oe,Be,Me;let He=Fg(u,v);if(!He&&v!=="next")return;let $e=He&&!(v==="next"&&He.flags&16777216)?v==="next"?fo(He):Zv(fo(He),2097152):void 0;if(Xo($e))return Ef;let Vt=$e?rg($e,0):E;if(Vt.length===0){if(D){let Ji=v==="next"?m.mustHaveANextMethodDiagnostic:m.mustBeAMethodDiagnostic;W?(W.errors??(W.errors=[]),W.errors.push(ho(D,Ji,v))):Br(D,Ji,v)}return v==="next"?Vg:void 0}if($e?.symbol&&Vt.length===1){let Ji=m.getGlobalGeneratorType(!1),Mi=m.getGlobalIteratorType(!1),wo=((oe=(Y=Ji.symbol)==null?void 0:Y.members)==null?void 0:oe.get(v))===$e.symbol,Ka=!wo&&((Me=(Be=Mi.symbol)==null?void 0:Be.members)==null?void 0:Me.get(v))===$e.symbol;if(wo||Ka){let _l=wo?Ji:Mi,{mapper:ka}=$e;return NO(G9(_l.typeParameters[0],ka),G9(_l.typeParameters[1],ka),v==="next"?G9(_l.typeParameters[2],ka):void 0)}}let kt,wr;for(let Ji of Vt)v!=="throw"&&zt(Ji.parameters)&&(kt=Ft(kt,vR(Ji,0))),wr=Ft(wr,Ad(Ji));let dn,Sn;if(v!=="throw"){let Ji=kt?Ha(kt):cn;if(v==="next")Sn=Ji;else if(v==="return"){let Mi=m.resolveIterationType(Ji,D)||hr;dn=Ft(dn,Mi)}}let ii,Yi=wr?jg(wr):Oi,js=m.resolveIterationType(Yi,D)||hr,mo=lUs(js);return mo===Vg?(D&&(W?(W.errors??(W.errors=[]),W.errors.push(ho(D,m.mustHaveAValueDiagnostic,v))):Br(D,m.mustHaveAValueDiagnostic,v)),ii=hr,dn=Ft(dn,hr)):(ii=mo.yieldType,dn=Ft(dn,mo.returnType)),NO(ii,Ha(dn),Sn)}function uUs(u,m,v,D,W){let Y=R0n([n6t(u,m,"next",v,D),n6t(u,m,"return",v,D),n6t(u,m,"throw",v,D)]);return W?Y:uG(u,m.iteratorCacheKey,Y)}function V9(u,m,v){if(Xo(m))return;let D=i6t(m,v);return D&&D[qtn(u)]}function i6t(u,m){if(Xo(u))return Ef;let v=m?2:1,D=m?Sh:Zp;return Xat(u,v,void 0)||iUs(u,D,void 0,void 0)}function gUs(u){bZ(u)||b8s(u)}function jPe(u,m){let v=!!(m&1),D=!!(m&2);if(v){let W=V9(1,u,D);return W?D?yZ(Cfe(W)):W:nn}return D?yZ(u)||nn:u}function L0n(u,m){let v=jPe(m,BI(u));return!!(v&&(uh(v,16384)||v.flags&32769))}function AUs(u){if(bZ(u))return;let m=dne(u);if(m&&dl(m)){KC(u,Z.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!m){KC(u,Z.A_return_statement_can_only_be_used_within_a_function_body);return}let v=BS(m),D=Ad(v);if(at||u.expression||D.flags&131072){let W=u.expression?DI(u.expression):wt;if(m.kind===179)u.expression&&Br(u,Z.Setters_cannot_return_a_value);else if(m.kind===177){let Y=u.expression?DI(u.expression):wt;u.expression&&!nX(Y,D,u,u.expression)&&Br(u,Z.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class)}else if(Qse(m)){let Y=jPe(D,BI(m))??D;Jat(m,Y,u,u.expression,W)}}else m.kind!==177&&Te.noImplicitReturns&&!L0n(m,D)&&Br(u,Z.Not_all_code_paths_return_a_value)}function Jat(u,m,v,D,W,Y=!1){let oe=Bo(v),Be=BI(u);if(D){let kt=JA(D,oe);if(Hw(kt)){Jat(u,m,v,kt.whenTrue,Ml(kt.whenTrue),!0),Jat(u,m,v,kt.whenFalse,Ml(kt.whenFalse),!0);return}}let Me=v.kind===254,He=Be&2?YPe(W,!1,v,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):W,$e=D&&Tat(D);nX(He,m,Me&&!Y?v:$e,$e)}function dUs(u){bZ(u)||u.flags&65536&&KC(u,Z.with_statements_are_not_allowed_in_an_async_function_block),Ml(u.expression);let m=ms(u);if(!DO(m)){let v=rs(m,u.pos).start,D=u.statement.pos;z5(m,v,D-v,Z.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function pUs(u){bZ(u);let m,v=!1,D=Ml(u.expression);F(u.caseBlock.clauses,W=>{W.kind===298&&!v&&(m===void 0?m=W:(os(W,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),v=!0)),W.kind===297&&g(Y(W)),F(W.statements,nA),Te.noFallthroughCasesInSwitch&&W.fallthroughFlowNode&&mPe(W.fallthroughFlowNode)&&Br(W,Z.Fallthrough_case_in_switch);function Y(oe){return()=>{let Be=Ml(oe.expression);V8t(D,Be)||emn(Be,D,oe.expression,void 0)}}}),u.caseBlock.locals&&RO(u.caseBlock)}function fUs(u){bZ(u)||ji(u.parent,m=>Eu(m)?"quit":m.kind===257&&m.label.escapedText===u.label.escapedText?(os(u.label,Z.Duplicate_label_0,Fp(u.label)),!0):!1),nA(u.statement)}function IUs(u){bZ(u)||Ir(u.expression)&&!u.expression.escapedText&&Z8s(u,Z.Line_break_not_permitted_here),u.expression&&Ml(u.expression)}function hUs(u){bZ(u),Hat(u.tryBlock);let m=u.catchClause;if(m){if(m.variableDeclaration){let v=m.variableDeclaration;UPe(v);let D=Zh(v);if(D){let W=tl(D);W&&!(W.flags&3)&&KC(D,Z.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(v.initializer)KC(v.initializer,Z.Catch_clause_variable_cannot_have_an_initializer);else{let W=m.block.locals;W&&NB(m.locals,Y=>{let oe=W.get(Y);oe?.valueDeclaration&&oe.flags&2&&os(oe.valueDeclaration,Z.Cannot_redeclare_identifier_0_in_catch_clause,Bc(Y))})}}Hat(m.block)}u.finallyBlock&&Hat(u.finallyBlock)}function Uat(u,m,v){let D=f0(u);if(D.length===0)return;for(let Y of D9(u))v&&Y.flags&4194304||V0n(u,Y,Pq(Y,8576,!0),mR(Y));let W=m.valueDeclaration;if(W&&xa(W)){for(let Y of W.members)if((!v&&!lg(Y)||v&&lg(Y))&&!Hse(Y)){let oe=Uo(Y);V0n(u,oe,M_(Y.name.expression),mR(oe))}}if(D.length>1)for(let Y of D)mUs(u,Y)}function V0n(u,m,v,D){let W=m.valueDeclaration,Y=fl(W);if(Y&&p(Y))return;let oe=AUt(u,v),Be=la(u)&2?yp(u.symbol,265):void 0,Me=W&&W.kind===227||Y&&Y.kind===168?W:void 0,He=nC(m)===u.symbol?W:void 0;for(let $e of oe){let Vt=$e.declaration&&nC(Uo($e.declaration))===u.symbol?$e.declaration:void 0,kt=He||Vt||(Be&&!zt(tT(u),wr=>!!KQ(wr,m.escapedName)&&!!O5(wr,$e.keyType))?Be:void 0);if(kt&&!pg(D,$e.type)){let wr=LQ(kt,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,xl(m),ro(D),ro($e.keyType),ro($e.type));Me&&kt!==Me&&ug(wr,ho(Me,Z._0_is_declared_here,xl(m))),PA.add(wr)}}}function mUs(u,m){let v=m.declaration,D=AUt(u,m.keyType),W=la(u)&2?yp(u.symbol,265):void 0,Y=v&&nC(Uo(v))===u.symbol?v:void 0;for(let oe of D){if(oe===m)continue;let Be=oe.declaration&&nC(Uo(oe.declaration))===u.symbol?oe.declaration:void 0,Me=Y||Be||(W&&!zt(tT(u),He=>!!sG(He,m.keyType)&&!!O5(He,oe.keyType))?W:void 0);Me&&!pg(m.type,oe.type)&&Br(Me,Z._0_index_type_1_is_not_assignable_to_2_index_type_3,ro(m.keyType),ro(m.type),ro(oe.keyType),ro(oe.type))}}function yfe(u,m){switch(u.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":Br(u,m,u.escapedText)}}function CUs(u){Ze>=1&&u.escapedText==="Object"&&s.getEmitModuleFormatOfFile(ms(u))<5&&Br(u,Z.Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0,tv[Pe])}function _Us(u){let m=Le(Nx(u),dS);if(!B(m))return;let v=Bo(u),D=new Set,W=new Set;if(F(u.parameters,({name:oe},Be)=>{Ir(oe)&&D.add(oe.escapedText),Nu(oe)&&W.add(Be)}),pUt(u)){let oe=m.length-1,Be=m[oe];v&&Be&&Ir(Be.name)&&Be.typeExpression&&Be.typeExpression.type&&!D.has(Be.name.escapedText)&&!W.has(oe)&&!Fv(tl(Be.typeExpression.type))&&Br(Be.name,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,Vo(Be.name))}else F(m,({name:oe,isNameFirst:Be},Me)=>{W.has(Me)||Ir(oe)&&D.has(oe.escapedText)||(zi(oe)?v&&Br(oe,Z.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,ly(oe),ly(oe.left)):Be||Kw(v,oe,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,Vo(oe)))})}function zPe(u){let m=!1;if(u)for(let D=0;D{D.default?(m=!0,yUs(D.default,u,W)):m&&Br(D,Z.Required_type_parameters_may_not_follow_optional_type_parameters);for(let Y=0;YD)return!1;for(let Me=0;Metm(v)&&hC(v))&&os(m,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!u.name&&!Ga(u,2048)&&KC(u,Z.A_class_declaration_without_the_default_modifier_must_have_a_name),M0n(u),F(u.members,nA),RO(u)}function M0n(u){a8s(u),QPe(u),_fe(u,u.name),zPe(MD(u)),ySe(u);let m=Uo(u),v=Lp(m),D=k1(v),W=fo(m);W0n(m),Oat(m),L4s(u),!!(u.flags&33554432)||V4s(u);let oe=kB(u);if(oe){F(oe.typeArguments,nA),Ze{let Vt=$e[0],kt=uZ(v),wr=my(kt);if(wUs(wr,oe),nA(oe.expression),zt(oe.typeArguments)){F(oe.typeArguments,nA);for(let Sn of eT(wr,oe.typeArguments,oe))if(!A0n(oe,Sn.typeParameters))break}let dn=k1(Vt,v.thisType);if(h0(D,dn,void 0)?h0(W,Uhn(wr),u.name||u,Z.Class_static_side_0_incorrectly_extends_base_class_static_side_1):Q0n(u,D,dn,Z.Class_0_incorrectly_extends_base_class_1),kt.flags&8650752&&(C_(W)?rg(kt,1).some(ii=>ii.flags&4)&&!Ga(u,64)&&Br(u.name||u,Z.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):Br(u.name||u,Z.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(wr.symbol&&wr.symbol.flags&32)&&!(kt.flags&8650752)){let Sn=nG(wr,oe.typeArguments,oe);F(Sn,ii=>!jN(ii.declaration)&&!cG(Ad(ii),Vt))&&Br(oe.expression,Z.Base_constructors_must_all_have_the_same_return_type)}NUs(v,Vt)})}BUs(u,v,D,W);let Be=uU(u);if(Be)for(let He of Be)(!Hd(He.expression)||LC(He.expression))&&Br(He.expression,Z.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),Q8t(He),g(Me(He));g(()=>{Uat(v,m),Uat(W,m,!0),H8t(u),xUs(u)});function Me(He){return()=>{let $e=$B(tl(He));if(!lo($e))if(ZOe($e)){let Vt=$e.symbol&&$e.symbol.flags&32?Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Z.Class_0_incorrectly_implements_interface_1,kt=k1($e,v.thisType);h0(D,kt,void 0)||Q0n(u,D,kt,Vt)}else Br(He,Z.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function BUs(u,m,v,D){let Y=kB(u)&&tT(m),oe=Y?.length?k1(ma(Y),m.thisType):void 0,Be=uZ(m);for(let Me of u.members)mbe(Me)||(Tc(Me)&&F(Me.parameters,He=>{We(He,Me)&&H0n(u,D,Be,oe,m,v,He,!0)}),H0n(u,D,Be,oe,m,v,Me,!1))}function H0n(u,m,v,D,W,Y,oe,Be,Me=!0){let He=oe.name&&Vv(oe.name)||Vv(oe);return He?Y0n(u,m,v,D,W,Y,Hne(oe),ZW(oe),lg(oe),Be,He,Me?oe:void 0):0}function Y0n(u,m,v,D,W,Y,oe,Be,Me,He,$e,Vt){let kt=Bo(u),wr=!!(u.flags&33554432);if(oe&&$e?.valueDeclaration&&MI($e.valueDeclaration)&&$e.valueDeclaration.name&&oIn($e.valueDeclaration.name))return Br(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:Z.This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic),2;if(D&&(oe||Te.noImplicitOverride)){let dn=Me?m:Y,Sn=Me?v:D,ii=Fg(dn,$e.escapedName),Yi=Fg(Sn,$e.escapedName),js=ro(D);if(ii&&!Yi&&oe){if(Vt){let mo=$Cn(of($e),Sn);mo?Br(Vt,kt?Z.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:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,js,xl(mo)):Br(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,js)}return 2}else if(ii&&Yi?.declarations&&Te.noImplicitOverride&&!wr){let mo=zt(Yi.declarations,ZW);if(oe)return 0;if(mo){if(Be&&mo)return Vt&&Br(Vt,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,js),1}else{if(Vt){let Ji=He?kt?Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:kt?Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;Br(Vt,Ji,js)}return 1}}}else if(oe){if(Vt){let dn=ro(W);Br(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,dn)}return 2}return 0}function Q0n(u,m,v,D){let W=!1;for(let Y of u.members){if(lg(Y))continue;let oe=Y.name&&Vv(Y.name)||Vv(Y);if(oe){let Be=Fg(m,oe.escapedName),Me=Fg(v,oe.escapedName);if(Be&&Me){let He=()=>wu(void 0,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,xl(oe),ro(m),ro(v));h0(fo(Be),fo(Me),Y.name||Y,void 0,He)||(W=!0)}}}W||h0(m,v,u.name||u,D)}function wUs(u,m){let v=rg(u,1);if(v.length){let D=v[0].declaration;if(D&&Lb(D,2)){let W=mN(u.symbol);u6t(m,W)||Br(m,Z.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,b9(u.symbol))}}}function TUs(u,m,v){if(!m.name)return 0;let D=Uo(u),W=Lp(D),Y=k1(W),oe=fo(D),Me=kB(u)&&tT(W),He=Me?.length?k1(ma(Me),W.thisType):void 0,$e=uZ(W),Vt=m.parent?Hne(m):Ga(m,16);return Y0n(u,oe,$e,He,W,Y,Vt,ZW(m),lg(m),!1,v)}function aoe(u){return aI(u)&1?u.links.target:u}function RUs(u){return Le(u.declarations,m=>m.kind===264||m.kind===265)}function NUs(u,m){var v,D,W,Y,oe;let Be=Zd(m),Me=new Map;e:for(let He of Be){let $e=aoe(He);if($e.flags&4194304)continue;let Vt=KQ(u,$e.escapedName);if(!Vt)continue;let kt=aoe(Vt),wr=p2($e);if(pe.assert(!!kt,"derived should point to something, even if it is the base class' declaration."),kt===$e){let dn=mN(u.symbol);if(wr&64&&(!dn||!Ga(dn,64))){for(let mo of tT(u)){if(mo===m)continue;let Ji=KQ(mo,$e.escapedName),Mi=Ji&&aoe(Ji);if(Mi&&Mi!==$e)continue e}let Sn=ro(m),ii=ro(u),Yi=xl(He),js=Ft((v=Me.get(dn))==null?void 0:v.missedProperties,Yi);Me.set(dn,{baseTypeName:Sn,typeName:ii,missedProperties:js})}}else{let dn=p2(kt);if(wr&2||dn&2)continue;let Sn,ii=$e.flags&98308,Yi=kt.flags&98308;if(ii&&Yi){if((aI($e)&6?(D=$e.declarations)!=null&&D.some(Ji=>X0n(Ji,wr)):(W=$e.declarations)!=null&&W.every(Ji=>X0n(Ji,wr)))||aI($e)&262144||kt.valueDeclaration&&po(kt.valueDeclaration))continue;let js=ii!==4&&Yi===4;if(js||ii===4&&Yi!==4){let Ji=js?Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;Br(fl(kt.valueDeclaration)||kt.valueDeclaration,Ji,xl($e),ro(m),ro(u))}else if(et){let Ji=(Y=kt.declarations)==null?void 0:Y.find(Mi=>Mi.kind===173&&!Mi.initializer);if(Ji&&!(kt.flags&33554432)&&!(wr&64)&&!(dn&64)&&!((oe=kt.declarations)!=null&&oe.some(Mi=>!!(Mi.flags&33554432)))){let Mi=lQ(mN(u.symbol)),wo=Ji.name;if(Ji.exclamationToken||!Mi||!Ir(wo)||!at||!U0n(wo,u,Mi)){let Ka=Z.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;Br(fl(kt.valueDeclaration)||kt.valueDeclaration,Ka,xl($e),ro(m))}}}continue}else if(i8t($e)){if(i8t(kt)||kt.flags&4)continue;pe.assert(!!(kt.flags&98304)),Sn=Z.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else $e.flags&98304?Sn=Z.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:Sn=Z.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;Br(fl(kt.valueDeclaration)||kt.valueDeclaration,Sn,ro(m),xl($e),ro(u))}}for(let[He,$e]of Me)if(B($e.missedProperties)===1)wd(He)?Br(He,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,ma($e.missedProperties),$e.baseTypeName):Br(He,Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,$e.typeName,ma($e.missedProperties),$e.baseTypeName);else if(B($e.missedProperties)>5){let Vt=lt($e.missedProperties.slice(0,4),wr=>`'${wr}'`).join(", "),kt=B($e.missedProperties)-4;wd(He)?Br(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,$e.baseTypeName,Vt,kt):Br(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,$e.typeName,$e.baseTypeName,Vt,kt)}else{let Vt=lt($e.missedProperties,kt=>`'${kt}'`).join(", ");wd(He)?Br(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,$e.baseTypeName,Vt):Br(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,$e.typeName,$e.baseTypeName,Vt)}}function X0n(u,m){return m&64&&(!pi(u)||!u.initializer)||p_(u.parent)}function DUs(u,m,v){if(!B(m))return v;let D=new Map;F(v,W=>{D.set(W.escapedName,W)});for(let W of m){let Y=Zd(k1(W,u.thisType));for(let oe of Y){let Be=D.get(oe.escapedName);Be&&oe.parent===Be.parent&&D.delete(oe.escapedName)}}return Do(D.values())}function kUs(u,m){let v=tT(u);if(v.length<2)return!0;let D=new Map;F(zJt(u).declaredProperties,Y=>{D.set(Y.escapedName,{prop:Y,containingType:u})});let W=!0;for(let Y of v){let oe=Zd(k1(Y,u.thisType));for(let Be of oe){let Me=D.get(Be.escapedName);if(!Me)D.set(Be.escapedName,{prop:Be,containingType:Y});else if(Me.containingType!==u&&!vMs(Me.prop,Be)){W=!1;let $e=ro(Me.containingType),Vt=ro(Y),kt=wu(void 0,Z.Named_property_0_of_types_1_and_2_are_not_identical,xl(Be),$e,Vt);kt=wu(kt,Z.Interface_0_cannot_simultaneously_extend_types_1_and_2,ro(u),$e,Vt),PA.add(kw(ms(m),m,kt))}}}return W}function xUs(u){if(!at||!mt||u.flags&33554432)return;let m=lQ(u);for(let v of u.members)if(!(l_(v)&128)&&!lg(v)&&J0n(v)){let D=v.name;if(Ir(D)||p(D)||Un(D)){let W=fo(Uo(v));W.flags&3||zse(W)||(!m||!U0n(D,W,m))&&Br(v.name,Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,Md(D))}}}function J0n(u){return u.kind===173&&!ZW(u)&&!u.exclamationToken&&!u.initializer}function GUs(u,m,v,D,W){for(let Y of v)if(Y.pos>=D&&Y.pos<=W){let oe=me.createPropertyAccessExpression(me.createThis(),u);UA(oe.expression,oe),UA(oe,Y),oe.flowNode=Y.returnFlowNode;let Be=_Z(oe,m,wO(m));if(!zse(Be))return!0}return!1}function U0n(u,m,v){let D=Un(u)?me.createElementAccessExpression(me.createThis(),u.expression):me.createPropertyAccessExpression(me.createThis(),u);UA(D.expression,D),UA(D,v),D.flowNode=v.returnFlowNode;let W=_Z(D,m,wO(m));return!zse(W)}function FUs(u){gG(u)||p8s(u),cct(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"interface"),zPe(u.typeParameters),g(()=>{yfe(u.name,Z.Interface_name_cannot_be_0),ySe(u);let m=Uo(u);W0n(m);let v=yp(m,265);if(u===v){let D=Lp(m),W=k1(D);if(kUs(D,u.name)){for(let Y of tT(D))h0(W,k1(Y,D.thisType),u.name,Z.Interface_0_incorrectly_extends_interface_1);Uat(D,m)}}c0n(u)}),F(Q7(u),m=>{(!Hd(m.expression)||LC(m.expression))&&Br(m.expression,Z.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),Q8t(m)}),F(u.members,nA),g(()=>{H8t(u),RO(u)})}function ZUs(u){if(gG(u),yfe(u.name,Z.Type_alias_name_cannot_be_0),cct(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"type"),ySe(u),zPe(u.typeParameters),u.type.kind===141){let m=B(u.typeParameters);(m===0?u.name.escapedText==="BuiltinIteratorReturn":m===1&&Uet.has(u.name.escapedText))||Br(u.type,Z.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types)}else nA(u.type),RO(u)}function K0n(u){let m=sa(u);if(!(m.flags&1024)){m.flags|=1024;let v=0,D;for(let W of u.members){let Y=LUs(W,v,D);sa(W).enumMemberValue=Y,v=typeof Y.value=="number"?Y.value+1:void 0,D=W}}}function LUs(u,m,v){if(YY(u.name))Br(u.name,Z.Computed_property_names_are_not_allowed_in_enums);else if(AQ(u.name))Br(u.name,Z.An_enum_member_cannot_have_a_numeric_name);else{let D=BW(u.name);bN(D)&&!yz(D)&&Br(u.name,Z.An_enum_member_cannot_have_a_numeric_name)}if(u.initializer)return VUs(u);if(u.parent.flags&33554432&&!OA(u.parent))return nm(void 0);if(m===void 0)return Br(u.name,Z.Enum_member_must_have_initializer),nm(void 0);if(uS(Te)&&v?.initializer){let D=UK(v);typeof D.value=="number"&&!D.resolvedOtherFiles||Br(u.name,Z.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return nm(m)}function VUs(u){let m=OA(u.parent),v=u.initializer,D=ur(v,u);return D.value!==void 0?m&&typeof D.value=="number"&&!isFinite(D.value)?Br(v,isNaN(D.value)?Z.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Z.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):uS(Te)&&typeof D.value=="string"&&!D.isSyntacticallyString&&Br(v,Z._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${Vo(u.parent.name)}.${BW(u.name)}`):m?Br(v,Z.const_enum_member_initializers_must_be_constant_expressions):u.parent.flags&33554432?Br(v,Z.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):h0(Ml(v),ri,v,Z.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),D}function j0n(u,m){let v=NI(u,111551,!0);if(!v)return nm(void 0);if(u.kind===80){let D=u;if(yz(D.escapedText)&&v===Kse(D.escapedText,111551,void 0))return nm(+D.escapedText,!1)}if(v.flags&8)return m?z0n(u,v,m):UK(v.valueDeclaration);if(Jq(v)){let D=v.valueDeclaration;if(D&&nc(D)&&!D.type&&D.initializer&&(!m||D!==m&&oZ(D,m))){let W=ur(D.initializer,D);return m&&ms(m)!==ms(D)?nm(W.value,!1,!0,!0):nm(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0)}}return nm(void 0)}function WUs(u,m){let v=u.expression;if(Hd(v)&&_A(u.argumentExpression)){let D=NI(v,111551,!0);if(D&&D.flags&384){let W=pp(u.argumentExpression.text),Y=D.exports.get(W);if(Y)return pe.assert(ms(Y.valueDeclaration)===ms(D.valueDeclaration)),m?z0n(u,Y,m):UK(Y.valueDeclaration)}}return nm(void 0)}function z0n(u,m,v){let D=m.valueDeclaration;if(!D||D===v)return Br(u,Z.Property_0_is_used_before_being_assigned,xl(m)),nm(void 0);if(!oZ(D,v))return Br(u,Z.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),nm(0);let W=UK(D);return v.parent!==D.parent?nm(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0):W}function OUs(u){g(()=>PUs(u))}function PUs(u){gG(u),_fe(u,u.name),ySe(u),u.members.forEach(nA),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),K0n(u);let m=Uo(u),v=yp(m,u.kind);if(u===v){if(m.declarations&&m.declarations.length>1){let W=OA(u);F(m.declarations,Y=>{J3(Y)&&OA(Y)!==W&&Br(fl(Y),Z.Enum_declarations_must_all_be_const_or_non_const)})}let D=!1;F(m.declarations,W=>{if(W.kind!==267)return!1;let Y=W;if(!Y.members.length)return!1;let oe=Y.members[0];oe.initializer||(D?Br(oe.name,Z.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):D=!0)})}}function MUs(u){p(u.name)&&Br(u,Z.An_enum_member_cannot_be_named_with_a_private_identifier),u.initializer&&Ml(u.initializer)}function HUs(u){let m=u.declarations;if(m){for(let v of m)if((v.kind===264||v.kind===263&&p1(v.body))&&!(v.flags&33554432))return v}}function YUs(u,m){let v=oS(u),D=oS(m);return fc(v)?fc(D):fc(D)?!1:v===D}function QUs(u){u.body&&(nA(u.body),DB(u)||RO(u)),g(m);function m(){var v,D;let W=DB(u),Y=u.flags&33554432;W&&!Y&&Br(u.name,Z.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);let oe=c_(u),Be=oe?Z.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Z.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(qPe(u,Be))return;if(gG(u)||!Y&&u.name.kind===11&&os(u.name,Z.Only_ambient_modules_can_use_quoted_names),Ir(u.name)&&(_fe(u,u.name),!(u.flags&2080))){let He=ms(u),$e=Pge(u),Vt=rs(He,$e);sK.add(rm(He,Vt.start,Vt.length,Z.A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead))}ySe(u);let Me=Uo(u);if(Me.flags&512&&!Y&&Ket(u,Vb(Te))){if(Te.erasableSyntaxOnly&&Br(u.name,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),uS(Te)&&!ms(u).externalModuleIndicator&&Br(u.name,Z.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,qt),((v=Me.declarations)==null?void 0:v.length)>1){let He=HUs(Me);He&&(ms(u)!==ms(He)?Br(u.name,Z.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):u.pos$e.kind===95);He&&Br(He,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(oe)if(wF(u)){if((W||Uo(u).flags&33554432)&&u.body)for(let $e of u.body.statements)s6t($e,W)}else fc(u.parent)?W?Br(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Xr(A2(u.name))&&Br(u.name,Z.Ambient_module_declaration_cannot_specify_relative_module_name):W?Br(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Br(u.name,Z.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function s6t(u,m){switch(u.kind){case 244:for(let D of u.declarationList.declarations)s6t(D,m);break;case 278:case 279:KC(u,Z.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 272:if(b3(u))break;case 273:KC(u,Z.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 209:case 261:let v=u.name;if(Nu(v)){for(let D of v.elements)s6t(D,m);break}case 264:case 267:case 263:case 265:case 268:case 266:if(m)return;break}}function XUs(u){switch(u.kind){case 80:return u;case 167:do u=u.left;while(u.kind!==80);return u;case 212:do{if(pN(u.expression)&&!p(u.name))return u.name;u=u.expression}while(u.kind!==80);return u}}function Kat(u){let m=KY(u);if(!m||af(m))return!1;if(!Lg(m))return Br(m,Z.String_literal_expected),!1;let v=u.parent.kind===269&&c_(u.parent.parent);if(u.parent.kind!==308&&!v)return Br(m,u.kind===279?Z.Export_declarations_are_not_permitted_in_a_namespace:Z.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(v&&Xr(m.text)&&!Qpe(u))return Br(u,Z.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!Zm(u)&&u.attributes){let D=u.attributes.token===118?Z.Import_attribute_values_must_be_string_literal_expressions:Z.Import_assertion_values_must_be_string_literal_expressions,W=!1;for(let Y of u.attributes.elements)Lg(Y.value)||(W=!0,Br(Y.value,D));return!W}return!0}function jat(u,m=!0){u===void 0||u.kind!==11||(m?(Pe===5||Pe===6)&&os(u,Z.String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020):os(u,Z.Identifier_expected))}function zat(u){var m,v,D,W,Y;let oe=Uo(u),Be=JC(oe);if(Be!==st){if(oe=qA(oe.exportSymbol||oe),Bo(u)&&!(Be.flags&111551)&&!lN(u)){let $e=sS(u)?u.propertyName||u.name:sh(u)?u.name:u;if(pe.assert(u.kind!==281),u.kind===282){let Vt=Br($e,Z.Types_cannot_appear_in_export_declarations_in_JavaScript_files),kt=(v=(m=ms(u).symbol)==null?void 0:m.exports)==null?void 0:v.get(BF(u.propertyName||u.name));if(kt===Be){let wr=(D=kt.declarations)==null?void 0:D.find(m3);wr&&ug(Vt,ho(wr,Z._0_is_automatically_exported_here,Bc(kt.escapedName)))}}else{pe.assert(u.kind!==261);let Vt=ji(u,Qp(Yf,Zm)),kt=(Vt&&((W=UY(Vt))==null?void 0:W.text))??"...",wr=Bc(Ir($e)?$e.escapedText:oe.escapedName);Br($e,Z._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,wr,`import("${kt}").${wr}`)}return}let Me=Xb(Be),He=(oe.flags&1160127?111551:0)|(oe.flags&788968?788968:0)|(oe.flags&1920?1920:0);if(Me&He){let $e=u.kind===282?Z.Export_declaration_conflicts_with_exported_declaration_of_0:Z.Import_declaration_conflicts_with_local_declaration_of_0;Br(u,$e,xl(oe))}else u.kind!==282&&Te.isolatedModules&&!ji(u,lN)&&oe.flags&1160127&&Br(u,Z.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,xl(oe),qt);if(uS(Te)&&!lN(u)&&!(u.flags&33554432)){let $e=IR(oe),Vt=!(Me&111551);if(Vt||$e)switch(u.kind){case 274:case 277:case 272:{if(Te.verbatimModuleSyntax){pe.assertIsDefined(u.name,"An ImportClause with a symbol should have a name");let kt=Te.verbatimModuleSyntax&&b3(u)?Z.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:Vt?Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,wr=KD(u.kind===277&&u.propertyName||u.name);mu(Br(u,kt,wr),Vt?void 0:$e,wr)}Vt&&u.kind===272&&Lb(u,32)&&Br(u,Z.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,qt);break}case 282:if(Te.verbatimModuleSyntax||ms($e)!==ms(u)){let kt=KD(u.propertyName||u.name),wr=Vt?Br(u,Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,qt):Br(u,Z._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,kt,qt);mu(wr,Vt?void 0:$e,kt);break}}if(Te.verbatimModuleSyntax&&u.kind!==272&&!Bo(u)&&s.getEmitModuleFormatOfFile(ms(u))===1?Br(u,oK(u)):Pe===200&&u.kind!==272&&u.kind!==261&&s.getEmitModuleFormatOfFile(ms(u))===1&&Br(u,Z.ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve),Te.verbatimModuleSyntax&&!lN(u)&&!(u.flags&33554432)&&Me&128){let kt=Be.valueDeclaration,wr=(Y=s.getRedirectFromOutput(ms(kt).resolvedPath))==null?void 0:Y.resolvedRef;kt.flags&33554432&&(!wr||!Vb(wr.commandLine.options))&&Br(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,qt)}}if(dy(u)){let $e=o6t(oe,u);Iy($e)&&$e.declarations&&jB(u,$e.declarations,$e.escapedName)}}}function o6t(u,m){if(!(u.flags&2097152)||Iy(u)||!Qb(u))return u;let v=JC(u);if(v===st)return v;for(;u.flags&2097152;){let D=mat(u);if(D){if(D===v)break;if(D.declarations&&B(D.declarations))if(Iy(D)){jB(m,D.declarations,D.escapedName);break}else{if(u===v)break;u=D}}else break}return v}function qat(u){_fe(u,u.name),zat(u),u.kind===277&&(jat(u.propertyName),pv(u.propertyName||u.name)&&Vw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&iC(u,131072))}function a6t(u){var m;let v=u.attributes;if(v){let D=EUt(!0);D!==Jg&&h0(MJt(v),uPe(D,32768),v);let W=ktt(u),Y=Kie(v,W?os:void 0),oe=u.attributes.token===118;if(W&&Y)return;if(!wLe(Pe))return os(v,oe?Z.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:Z.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve);if(102<=Pe&&Pe<=199&&!oe)return KC(v,Z.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert);if(u.moduleSpecifier&&aZ(u.moduleSpecifier)===1)return os(v,oe?Z.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls);if(NN(u)||(Yf(u)?(m=u.importClause)==null?void 0:m.isTypeOnly:u.isTypeOnly))return os(v,oe?Z.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Z.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(Y)return os(v,Z.resolution_mode_can_only_be_set_for_type_only_imports)}}function JUs(u){return Cy(DI(u.value))}function UUs(u){if(!qPe(u,Bo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!gG(u)&&u.modifiers&&KC(u,Z.An_import_declaration_cannot_have_modifiers),Kat(u)){let m,v=u.importClause;v&&!V8s(v)?(v.name&&qat(v),v.namedBindings&&(v.namedBindings.kind===275?(qat(v.namedBindings),s.getEmitModuleFormatOfFile(ms(u))<4&&Vw(Te)&&iC(u,65536)):(m=V0(u,u.moduleSpecifier),m&&F(v.namedBindings.elements,qat))),!v.isTypeOnly&&101<=Pe&&Pe<=199&&AO(u.moduleSpecifier,m)&&!KUs(u)&&Br(u.moduleSpecifier,Z.Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0,tv[Pe])):_r&&!v&&V0(u,u.moduleSpecifier)}a6t(u)}}function KUs(u){return!!u.attributes&&u.attributes.elements.some(m=>{var v;return A2(m.name)==="type"&&((v=Gs(m.value,_A))==null?void 0:v.text)==="json"})}function jUs(u){if(!qPe(u,Bo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(gG(u),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),b3(u)||Kat(u)))if(qat(u),Uq(u,6),u.moduleReference.kind!==284){let m=JC(Uo(u));if(m!==st){let v=Xb(m);if(v&111551){let D=R0(u.moduleReference);NI(D,112575).flags&1920||Br(D,Z.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,Md(D))}v&788968&&yfe(u.name,Z.Import_name_cannot_be_0)}u.isTypeOnly&&os(u,Z.An_import_alias_cannot_use_import_type)}else 5<=Pe&&Pe<=99&&!u.isTypeOnly&&!(u.flags&33554432)&&os(u,Z.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)}function zUs(u){if(!qPe(u,Bo(u)?Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!gG(u)&&iLe(u)&&KC(u,Z.An_export_declaration_cannot_have_modifiers),qUs(u),!u.moduleSpecifier||Kat(u))if(u.exportClause&&!ak(u.exportClause)){F(u.exportClause.elements,$Us);let m=u.parent.kind===269&&c_(u.parent.parent),v=!m&&u.parent.kind===269&&!u.moduleSpecifier&&u.flags&33554432;u.parent.kind!==308&&!m&&!v&&Br(u,Z.Export_declarations_are_not_permitted_in_a_namespace)}else{let m=V0(u,u.moduleSpecifier);m&&qw(m)?Br(u.moduleSpecifier,Z.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,xl(m)):u.exportClause&&(zat(u.exportClause),jat(u.exportClause.name)),s.getEmitModuleFormatOfFile(ms(u))<4&&(u.exportClause?Vw(Te)&&iC(u,65536):iC(u,32768))}a6t(u)}}function qUs(u){var m;return u.isTypeOnly&&((m=u.exportClause)==null?void 0:m.kind)===280?kyn(u.exportClause):!1}function qPe(u,m){let v=u.parent.kind===308||u.parent.kind===269||u.parent.kind===268;return v||KC(u,m),!v}function $Us(u){zat(u);let m=u.parent.parent.moduleSpecifier!==void 0;if(jat(u.propertyName,m),jat(u.name),Oy(Te)&&Ose(u.propertyName||u.name,!0),m)Vw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&pv(u.propertyName||u.name)&&iC(u,131072);else{let v=u.propertyName||u.name;if(v.kind===11)return;let D=An(v,v.escapedText,2998271,void 0,!0);D&&(D===dt||D===pr||D.declarations&&fc(Tn(D.declarations[0])))?Br(v,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,Vo(v)):Uq(u,7)}}function eKs(u){let m=u.isExportEquals?Z.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(qPe(u,m))return;Te.erasableSyntaxOnly&&u.isExportEquals&&!(u.flags&33554432)&&Br(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled);let v=u.parent.kind===308?u.parent:u.parent.parent;if(v.kind===268&&!c_(v)){u.isExportEquals?Br(u,Z.An_export_assignment_cannot_be_used_in_a_namespace):Br(u,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!gG(u)&&hbe(u)&&KC(u,Z.An_export_assignment_cannot_have_modifiers);let D=Zh(u);D&&h0(DI(u.expression),tl(D),u.expression);let W=!u.isExportEquals&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&s.getEmitModuleFormatOfFile(ms(u))===1;if(u.expression.kind===80){let Y=u.expression,oe=fn(NI(Y,-1,!0,!0,u));if(oe){Uq(u,3);let Be=IR(oe,111551);if(Xb(oe)&111551?(DI(Y),!W&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Be&&Br(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Z.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,Vo(Y))):!W&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Br(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Z.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,Vo(Y)),!W&&!(u.flags&33554432)&&uS(Te)&&!(oe.flags&111551)){let Me=Xb(oe,!1,!0);oe.flags&2097152&&Me&788968&&!(Me&111551)&&(!Be||ms(Be)!==ms(u))?Br(Y,u.isExportEquals?Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),qt):Be&&ms(Be)!==ms(u)&&mu(Br(Y,u.isExportEquals?Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),qt),Be,Vo(Y))}}else DI(Y);Oy(Te)&&Ose(Y,!0)}else DI(u.expression);W&&Br(u,oK(u)),q0n(v),u.flags&33554432&&!Hd(u.expression)&&os(u.expression,Z.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),u.isExportEquals&&(Pe>=5&&Pe!==200&&(u.flags&33554432&&s.getImpliedNodeFormatForEmit(ms(u))===99||!(u.flags&33554432)&&s.getImpliedNodeFormatForEmit(ms(u))!==1)?os(u,Z.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):Pe===4&&!(u.flags&33554432)&&os(u,Z.Export_assignment_is_not_supported_when_module_flag_is_system))}function tKs(u){return Fh(u.exports,(m,v)=>v!=="export=")}function q0n(u){let m=Uo(u),v=fa(m);if(!v.exportsChecked){let D=m.exports.get("export=");if(D&&tKs(m)){let Y=Qb(D)||D.valueDeclaration;Y&&!Qpe(Y)&&!Bo(Y)&&Br(Y,Z.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}let W=HN(m);W&&W.forEach(({declarations:Y,flags:oe},Be)=>{if(Be==="__export"||oe&1920)return;let Me=ze(Y,hh(Bvs,dC(p_)));if(!(oe&524288&&Me<=2)&&Me>1&&!$at(Y))for(let He of Y)jtn(He)&&PA.add(ho(He,Z.Cannot_redeclare_exported_variable_0,Bc(Be)))}),v.exportsChecked=!0}}function $at(u){return u&&u.length>1&&u.every(m=>Bo(m)&&bp(m)&&(E3(m.expression)||pN(m.expression)))}function nA(u){if(u){let m=ge;ge=u,M=0,rKs(u),ge=m}}function rKs(u){if(e$(u)&8388608)return;wne(u)&&F(u.jsDoc,({comment:v,tags:D})=>{$0n(v),F(D,W=>{$0n(W.comment),Bo(u)&&nA(W)})});let m=u.kind;if(d)switch(m){case 268:case 264:case 265:case 263:d.throwIfCancellationRequested()}switch(m>=244&&m<=260&&cU(u)&&u.flowNode&&!mPe(u.flowNode)&&Kw(Te.allowUnreachableCode===!1,u,Z.Unreachable_code_detected),m){case 169:return s0n(u);case 170:return o0n(u);case 173:return l0n(u);case 172:return W4s(u);case 186:case 185:case 180:case 181:case 182:return CSe(u);case 175:case 174:return O4s(u);case 176:return P4s(u);case 177:return M4s(u);case 178:case 179:return g0n(u);case 184:return Q8t(u);case 183:return F4s(u);case 187:return U4s(u);case 188:return K4s(u);case 189:return j4s(u);case 190:return z4s(u);case 193:case 194:return q4s(u);case 197:case 191:case 192:return nA(u.type);case 198:return rJs(u);case 199:return nJs(u);case 195:return iJs(u);case 196:return sJs(u);case 204:return oJs(u);case 206:return aJs(u);case 203:return cJs(u);case 329:return TJs(u);case 330:return wJs(u);case 347:case 339:case 341:return hJs(u);case 346:return mJs(u);case 345:return CJs(u);case 325:case 326:case 327:return yJs(u);case 342:return bJs(u);case 349:return EJs(u);case 318:SJs(u);case 316:case 315:case 313:case 314:case 323:eyn(u),Lu(u,nA);return;case 319:nKs(u);return;case 310:return nA(u.type);case 334:case 336:case 335:return RJs(u);case 351:return _Js(u);case 344:return vJs(u);case 352:return BJs(u);case 200:return $4s(u);case 201:return eJs(u);case 263:return IJs(u);case 242:case 269:return Hat(u);case 244:return JJs(u);case 245:return UJs(u);case 246:return KJs(u);case 247:return qJs(u);case 248:return $Js(u);case 249:return eUs(u);case 250:return rUs(u);case 251:return tUs(u);case 252:case 253:return gUs(u);case 254:return AUs(u);case 255:return dUs(u);case 256:return pUs(u);case 257:return fUs(u);case 258:return IUs(u);case 259:return hUs(u);case 261:return QJs(u);case 209:return XJs(u);case 264:return vUs(u);case 265:return FUs(u);case 266:return ZUs(u);case 267:return OUs(u);case 307:return MUs(u);case 268:return QUs(u);case 273:return UUs(u);case 272:return jUs(u);case 279:return zUs(u);case 278:return eKs(u);case 243:case 260:bZ(u);return;case 283:return Y4s(u)}}function $0n(u){Ki(u)&&F(u,m=>{Gx(m)&&nA(m)})}function eyn(u){if(!Bo(u))if(_9e(u)||Die(u)){let m=Vi(_9e(u)?54:58),v=u.postfix?Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,D=u.type,W=tl(D);os(u,v,m,ro(Die(u)&&!(W===Oi||W===es)?Ha(Ft([W,wt],u.postfix?void 0:Hn)):W))}else os(u,Z.JSDoc_types_can_only_be_used_inside_documentation_comments)}function nKs(u){eyn(u),nA(u.type);let{parent:m}=u;if(Si(m)&&kie(m.parent)){Ei(m.parent.parameters)!==m&&Br(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list);return}K3(m)||Br(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);let v=u.parent.parent;if(!dS(v)){Br(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}let D=Tne(v);if(!D)return;let W=XL(v);(!W||Ei(W.parameters).symbol!==D)&&Br(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list)}function iKs(u){let m=tl(u.type),{parent:v}=u,D=u.parent.parent;if(K3(u.parent)&&dS(D)){let W=XL(D),Y=Z$e(D.parent.parent);if(W||Y){let oe=li(Y?D.parent.parent.typeExpression.parameters:W.parameters),Be=Tne(D);if(!oe||Be&&oe.symbol===Be&&RB(oe))return I0(m)}}return Si(v)&&kie(v.parent)?I0(m):W0(m)}function qq(u){let m=ms(u),v=sa(m);v.flags&1?pe.assert(!v.deferredNodes,"A type-checked file should have no deferred nodes."):(v.deferredNodes||(v.deferredNodes=new Set),v.deferredNodes.add(u))}function tyn(u){let m=sa(u);m.deferredNodes&&m.deferredNodes.forEach(sKs),m.deferredNodes=void 0}function sKs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkDeferredNode",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let D=ge;switch(ge=u,M=0,u.kind){case 214:case 215:case 216:case 171:case 287:QK(u);break;case 219:case 220:case 175:case 174:jXs(u);break;case 178:case 179:g0n(u);break;case 232:SUs(u);break;case 169:G4s(u);break;case 286:nQs(u);break;case 285:sQs(u);break;case 217:case 235:case 218:_Xs(u);break;case 223:Ml(u.expression);break;case 227:kAe(u)&&QK(u);break}ge=D,(v=ki)==null||v.pop()}function oKs(u,m){var v,D;(v=ki)==null||v.push(ki.Phase.Check,m?"checkSourceFileNodes":"checkSourceFile",{path:u.path},!0);let W=m?"beforeCheckNodes":"beforeCheck",Y=m?"afterCheckNodes":"afterCheck";Mc(W),m?cKs(u,m):aKs(u),Mc(Y),Pf("Check",W,Y),(D=ki)==null||D.pop()}function ryn(u,m){if(m)return!1;switch(u){case 0:return!!Te.noUnusedLocals;case 1:return!!Te.noUnusedParameters;default:return pe.assertNever(u)}}function nyn(u){return Qs.get(u.path)||E}function aKs(u){let m=sa(u);if(!(m.flags&1)){if(L3(u,Te,s))return;Nyn(u),ft(sO),ft(f9),ft(eZ),ft(tZ),ft(rZ),m.flags&8388608&&(sO=m.potentialThisCollisions,f9=m.potentialNewTargetCollisions,eZ=m.potentialWeakMapSetCollisions,tZ=m.potentialReflectCollisions,rZ=m.potentialUnusedRenamedBindingElementsInTypes),F(u.statements,nA),nA(u.endOfFileToken),tyn(u),Sl(u)&&RO(u),g(()=>{!u.isDeclarationFile&&(Te.noUnusedLocals||Te.noUnusedParameters)&&b0n(nyn(u),(v,D,W)=>{!EW(v)&&ryn(D,!!(v.flags&33554432))&&PA.add(W)}),u.isDeclarationFile||xJs()}),Sl(u)&&q0n(u),sO.length&&(F(sO,ZJs),ft(sO)),f9.length&&(F(f9,LJs),ft(f9)),eZ.length&&(F(eZ,PJs),ft(eZ)),tZ.length&&(F(tZ,HJs),ft(tZ)),m.flags|=1}}function cKs(u,m){let v=sa(u);if(!(v.flags&1)){if(L3(u,Te,s))return;Nyn(u),ft(sO),ft(f9),ft(eZ),ft(tZ),ft(rZ),F(m,nA),tyn(u),(v.potentialThisCollisions||(v.potentialThisCollisions=[])).push(...sO),(v.potentialNewTargetCollisions||(v.potentialNewTargetCollisions=[])).push(...f9),(v.potentialWeakMapSetCollisions||(v.potentialWeakMapSetCollisions=[])).push(...eZ),(v.potentialReflectCollisions||(v.potentialReflectCollisions=[])).push(...tZ),(v.potentialUnusedRenamedBindingElementsInTypes||(v.potentialUnusedRenamedBindingElementsInTypes=[])).push(...rZ),v.flags|=8388608;for(let D of m){let W=sa(D);W.flags|=8388608}}}function iyn(u,m,v){try{return d=m,lKs(u,v)}finally{d=void 0}}function c6t(){for(let u of c)u();c=[]}function l6t(u,m){c6t();let v=g;g=D=>D(),oKs(u,m),g=v}function lKs(u,m){if(u){c6t();let v=PA.getGlobalDiagnostics(),D=v.length;l6t(u,m);let W=PA.getDiagnostics(u.fileName);if(m)return W;let Y=PA.getGlobalDiagnostics();if(Y!==v){let oe=Or(v,Y,az);return Nn(oe,W)}else if(D===0&&Y.length>0)return Nn(Y,W);return W}return F(s.getSourceFiles(),v=>l6t(v)),PA.getDiagnostics()}function uKs(){return c6t(),PA.getGlobalDiagnostics()}function gKs(u,m){if(u.flags&67108864)return[];let v=$u(),D=!1;return W(),v.delete("this"),dUt(v);function W(){for(;u;){switch(HI(u)&&u.locals&&!fc(u)&&oe(u.locals,m),u.kind){case 308:if(!Lm(u))break;case 268:Be(Uo(u).exports,m&2623475);break;case 267:oe(Uo(u).exports,m&8);break;case 232:u.name&&Y(u.symbol,m);case 264:case 265:D||oe(_k(Uo(u)),m&788968);break;case 219:u.name&&Y(u.symbol,m);break}SZe(u)&&Y(ot,m),D=lg(u),u=u.parent}oe(Gr,m)}function Y(Me,He){if(CU(Me)&He){let $e=Me.escapedName;v.has($e)||v.set($e,Me)}}function oe(Me,He){He&&Me.forEach($e=>{Y($e,He)})}function Be(Me,He){He&&Me.forEach($e=>{!yp($e,282)&&!yp($e,281)&&$e.escapedName!=="default"&&Y($e,He)})}}function AKs(u){return u.kind===80&&aQ(u.parent)&&fl(u.parent)===u}function syn(u){for(;u.parent.kind===167;)u=u.parent;return u.parent.kind===184}function dKs(u){for(;u.parent.kind===212;)u=u.parent;return u.parent.kind===234}function oyn(u,m){let v,D=_C(u);for(;D&&!(v=m(D));)D=_C(D);return v}function pKs(u){return!!ji(u,m=>Tc(m)&&p1(m.body)||pi(m)?!0:xa(m)||Gd(m)?"quit":!1)}function u6t(u,m){return!!oyn(u,v=>v===m)}function fKs(u){for(;u.parent.kind===167;)u=u.parent;if(u.parent.kind===272)return u.parent.moduleReference===u?u.parent:void 0;if(u.parent.kind===278)return u.parent.expression===u?u.parent:void 0}function ect(u){return fKs(u)!==void 0}function IKs(u){switch(oI(u.parent.parent)){case 1:case 3:return ES(u.parent);case 5:if(jo(u.parent)&&_U(u.parent)===u)return;case 4:case 2:return Uo(u.parent.parent)}}function hKs(u){let m=u.parent;for(;zi(m);)u=m,m=m.parent;if(m&&m.kind===206&&m.qualifier===u)return m}function mKs(u){if(u.expression.kind===110){let m=s0(u,!1,!1);if(Eu(m)){let v=ICn(m);if(v){let D=j5(v,void 0),W=mCn(v,D);return W&&!Xo(W)}}}}function ayn(u){if(KT(u))return ES(u.parent);if(Bo(u)&&u.parent.kind===212&&u.parent===u.parent.parent.left&&!p(u)&&!j3(u)&&!mKs(u.parent)){let m=IKs(u);if(m)return m}if(u.parent.kind===278&&Hd(u)){let m=NI(u,2998271,!0);if(m&&m!==st)return m}else if(mC(u)&&ect(u)){let m=KL(u,272);return pe.assert(m!==void 0),fO(u,!0)}if(mC(u)){let m=hKs(u);if(m){tl(m);let v=sa(u).resolvedSymbol;return v===st?void 0:v}}for(;uLe(u);)u=u.parent;if(dKs(u)){let m=0;u.parent.kind===234?(m=xw(u)?788968:111551,DAe(u.parent)&&(m|=111551)):m=1920,m|=2097152;let v=Hd(u)?NI(u,m,!0):void 0;if(v)return v}if(u.parent.kind===342)return Tne(u.parent);if(u.parent.kind===169&&u.parent.parent.kind===346){pe.assert(!Bo(u));let m=WZe(u.parent);return m&&m.symbol}if(UT(u)){if(af(u))return;let m=ji(u,Qp(Gx,wde,j3)),v=m?901119:111551;if(u.kind===80){if(iU(u)&&jq(u)){let W=_at(u.parent);return W===st?void 0:W}let D=NI(u,v,!0,!0,XL(u));if(!D&&m){let W=ji(u,Qp(xa,p_));if(W)return $Pe(u,!0,Uo(W))}if(D&&m){let W=DW(u);if(W&&YF(W)&&W===D.valueDeclaration)return NI(u,v,!0,!0,ms(W))||D}return D}else{if(p(u))return Sat(u);if(u.kind===212||u.kind===167){let D=sa(u);return D.resolvedSymbol?D.resolvedSymbol:(u.kind===212?(Eat(u,0),D.resolvedSymbol||(D.resolvedSymbol=cyn(DI(u.expression),AZ(u.name)))):UCn(u,0),!D.resolvedSymbol&&m&&zi(u)?$Pe(u):D.resolvedSymbol)}else if(j3(u))return $Pe(u)}}else if(mC(u)&&syn(u)){let m=u.parent.kind===184?788968:1920,v=NI(u,m,!0,!0);return v&&v!==st?v:bot(u)}if(u.parent.kind===183)return NI(u,1,!0)}function cyn(u,m){let v=AUt(u,m);if(v.length&&u.members){let D=mot(_R(u).members);if(v===f0(u))return D;if(D){let W=fa(D),Y=Xt(v,Be=>Be.declaration),oe=lt(Y,id).join(",");if(W.filteredIndexSymbolCache||(W.filteredIndexSymbolCache=new Map),W.filteredIndexSymbolCache.has(oe))return W.filteredIndexSymbolCache.get(oe);{let Be=dA(131072,"__index");return Be.declarations=Xt(v,Me=>Me.declaration),Be.parent=u.aliasSymbol?u.aliasSymbol:u.symbol?u.symbol:Vv(Be.declarations[0].parent),W.filteredIndexSymbolCache.set(oe,Be),Be}}}}function $Pe(u,m,v){if(mC(u)){let oe=NI(u,901119,m,!0,XL(u));if(!oe&&Ir(u)&&v&&(oe=qA(m_(N1(v),u.escapedText,901119))),oe)return oe}let D=Ir(u)?v:$Pe(u.left,m,v),W=Ir(u)?u.escapedText:u.right.escapedText;if(D){let Y=D.flags&111551&&Fg(fo(D),"prototype"),oe=Y?fo(Y):Lp(D);return Fg(oe,W)}}function Vv(u,m){if(cl(u))return Lm(u)?qA(u.symbol):void 0;let{parent:v}=u,D=v.parent;if(!(u.flags&67108864)){if(ztn(u)){let W=Uo(v);return sS(u.parent)&&u.parent.propertyName===u?mat(W):W}else if(Nne(u))return Uo(v.parent);if(u.kind===80){if(ect(u))return ayn(u);if(v.kind===209&&D.kind===207&&u===v.propertyName){let W=$q(D),Y=Fg(W,u.escapedText);if(Y)return Y}else if(Du(v)&&v.name===u)return v.keywordToken===105&&Vo(u)==="target"?B8t(v).symbol:v.keywordToken===102&&Vo(u)==="meta"?jIn().members.get("meta"):void 0}switch(u.kind){case 80:case 81:case 212:case 167:if(!zL(u))return ayn(u);case 110:let W=s0(u,!1,!1);if(Eu(W)){let Be=BS(W);if(Be.thisParameter)return Be.thisParameter}if(hne(u))return Ml(u).symbol;case 198:return XUt(u).symbol;case 108:return Ml(u).symbol;case 137:let Y=u.parent;return Y&&Y.kind===177?Y.parent.symbol:void 0;case 11:case 15:if(YL(u.parent.parent)&&F7(u.parent.parent)===u||(u.parent.kind===273||u.parent.kind===279)&&u.parent.moduleSpecifier===u||Bo(u)&&NN(u.parent)&&u.parent.moduleSpecifier===u||Bo(u)&&uy(u.parent,!1)||jp(u.parent)||wE(u.parent)&&Fy(u.parent.parent)&&u.parent.parent.argument===u.parent)return V0(u,u,m);if(Ll(v)&&S3(v)&&v.arguments[1]===u)return Uo(v);case 9:let oe=Qg(v)?v.argumentExpression===u?M_(v.expression):void 0:wE(v)&&yv(D)?tl(D.objectType):void 0;return oe&&Fg(oe,pp(u.text));case 90:case 100:case 39:case 86:return ES(u.parent);case 206:return Fy(u)?Vv(u.argument.literal,m):void 0;case 95:return yf(u.parent)?pe.checkDefined(u.parent.symbol):void 0;case 102:if(Du(u.parent)&&u.parent.name.escapedText==="defer")return;case 105:return Du(u.parent)?k_n(u.parent).symbol:void 0;case 104:if(po(u.parent)){let Be=M_(u.parent.right),Me=L8t(Be);return Me?.symbol??Be.symbol}return;case 237:return Ml(u).symbol;case 296:if(iU(u)&&jq(u)){let Be=_at(u.parent);return Be===st?void 0:Be}default:return}}}function CKs(u){if(Ir(u)&&jo(u.parent)&&u.parent.name===u){let m=AZ(u),v=M_(u.parent.expression),D=v.flags&1048576?v.types:[v];return jt(D,W=>Le(f0(W),Y=>Wq(m,Y.keyType)))}}function _Ks(u){if(u&&u.kind===305)return NI(u.name,2208703,!0)}function yKs(u){if(k0(u)){let m=u.propertyName||u.name;return u.parent.parent.moduleSpecifier?R5(u.parent.parent,u):m.kind===11?void 0:NI(m,2998271,!0)}else return NI(u,2998271,!0)}function $q(u){if(cl(u)&&!Lm(u)||u.flags&67108864)return nn;let m=bbe(u),v=m&&kv(Uo(m.class));if(xw(u)){let D=tl(u);return v?k1(D,v.thisType):D}if(UT(u))return lyn(u);if(v&&!m.isImplements){let D=Nc(tT(v));return D?k1(D,v.thisType):nn}if(aQ(u)){let D=Uo(u);return Lp(D)}if(AKs(u)){let D=Vv(u);return D?Lp(D):nn}if(mg(u))return Fq(u,!0,0)||nn;if(em(u)){let D=Uo(u);return D?fo(D):nn}if(ztn(u)){let D=Vv(u);return D?fo(D):nn}if(Nu(u))return Fq(u.parent,!0,0)||nn;if(ect(u)){let D=Vv(u);if(D){let W=Lp(D);return lo(W)?fo(D):W}}return Du(u.parent)&&u.parent.keywordToken===u.kind?k_n(u.parent):xU(u)?EUt(!1):nn}function tct(u){if(pe.assert(u.kind===211||u.kind===210),u.parent.kind===251){let W=KPe(u.parent);return JK(u,W||nn)}if(u.parent.kind===227){let W=M_(u.parent.right);return JK(u,W||nn)}if(u.parent.kind===304){let W=Ma(u.parent.parent,ag),Y=tct(W)||nn,oe=SW(W.properties,u.parent);return J_n(W,Y,oe)}let m=Ma(u.parent,YI),v=tct(m)||nn,D=L9(65,v,wt,u.parent)||nn;return U_n(m,v,m.elements.indexOf(u),D)}function bKs(u){let m=tct(Ma(u.parent.parent,DY));return m&&Fg(m,u.escapedText)}function lyn(u){return ez(u)&&(u=u.parent),Cy(M_(u))}function uyn(u){let m=ES(u.parent);return lg(u)?fo(m):Lp(m)}function gyn(u){let m=u.name;switch(m.kind){case 80:return kE(Vo(m));case 9:case 11:return kE(m.text);case 168:let v=nT(m);return P_(v,12288)?v:$r;default:return pe.fail("Unsupported property name.")}}function g6t(u){u=my(u);let m=$u(Zd(u)),v=rg(u,0).length?Yl:rg(u,1).length?DA:void 0;return v&&F(Zd(v),D=>{m.has(D.escapedName)||m.set(D.escapedName,D)}),Uy(m)}function rct(u){return rg(u,0).length!==0||rg(u,1).length!==0}function Ayn(u){let m=EKs(u);return m?jt(m,Ayn):[u]}function EKs(u){if(aI(u)&6)return Xt(fa(u).containingType.types,m=>Fg(m,u.escapedName));if(u.flags&33554432){let{links:{leftSpread:m,rightSpread:v,syntheticOrigin:D}}=u;return m?[m,v]:D?[D]:j_(SKs(u))}}function SKs(u){let m,v=u;for(;v=fa(v).target;)m=v;return m}function vKs(u){if(Gp(u))return!1;let m=eu(u,Ir);if(!m)return!1;let v=m.parent;return v?!((jo(v)||Cm(v))&&v.name===m)&&RSe(m)===ot:!1}function BKs(u){return I3(u.parent)&&u===u.parent.name}function wKs(u,m){var v;let D=eu(u,Ir);if(D){let W=RSe(D,BKs(D));if(W){if(W.flags&1048576){let oe=qA(W.exportSymbol);if(!m&&oe.flags&944&&!(oe.flags&3))return;W=oe}let Y=nC(W);if(Y){if(Y.flags&512&&((v=Y.valueDeclaration)==null?void 0:v.kind)===308){let oe=Y.valueDeclaration,Be=ms(D);return oe!==Be?void 0:oe}return ji(D.parent,oe=>I3(oe)&&Uo(oe)===Y)}}}}function TKs(u){let m=g9e(u);if(m)return m;let v=eu(u,Ir);if(v){let D=HKs(v);if(AK(D,111551)&&!IR(D,111551))return Qb(D)}}function RKs(u){return u.valueDeclaration&&mg(u.valueDeclaration)&&ai(u.valueDeclaration).parent.kind===300}function dyn(u){if(u.flags&418&&u.valueDeclaration&&!cl(u.valueDeclaration)){let m=fa(u);if(m.isDeclarationWithCollidingName===void 0){let v=oS(u.valueDeclaration);if(Zge(v)||RKs(u))if(An(v.parent,u.escapedName,111551,void 0,!1))m.isDeclarationWithCollidingName=!0;else if(A6t(u.valueDeclaration,16384)){let D=A6t(u.valueDeclaration,32768),W=YT(v,!1),Y=v.kind===242&&YT(v.parent,!1);m.isDeclarationWithCollidingName=!Xge(v)&&(!D||!W&&!Y)}else m.isDeclarationWithCollidingName=!1}return m.isDeclarationWithCollidingName}return!1}function NKs(u){if(!Gp(u)){let m=eu(u,Ir);if(m){let v=RSe(m);if(v&&dyn(v))return v.valueDeclaration}}}function DKs(u){let m=eu(u,em);if(m){let v=Uo(m);if(v)return dyn(v)}return!1}function pyn(u){switch(pe.assert(Yt),u.kind){case 272:return nct(Uo(u));case 274:case 275:case 277:case 282:let m=Uo(u);return!!m&&nct(m,!0);case 279:let v=u.exportClause;return!!v&&(ak(v)||zt(v.elements,pyn));case 278:return u.expression&&u.expression.kind===80?nct(Uo(u),!0):!0}return!1}function kKs(u){let m=eu(u,Zm);return m===void 0||m.parent.kind!==308||!b3(m)?!1:nct(Uo(m))&&m.moduleReference&&!af(m.moduleReference)}function nct(u,m){if(!u)return!1;let v=ms(u.valueDeclaration),D=v&&Uo(v);DE(D);let W=fn(JC(u));return W===st?!m||!IR(u):!!(Xb(u,m,!0)&111551)&&(Vb(Te)||!TSe(W))}function TSe(u){return Z8t(u)||!!u.constEnumOnlyModule}function fyn(u,m){if(pe.assert(Yt),_9(u)){let v=Uo(u),D=v&&fa(v);if(D?.referenced)return!0;let W=fa(v).aliasTarget;if(W&&l_(u)&32&&Xb(W)&111551&&(Vb(Te)||!TSe(W)))return!0}return m?!!Lu(u,v=>fyn(v,m)):!1}function Iyn(u){if(p1(u.body)){if(TB(u)||dv(u))return!1;let m=Uo(u),v=zQ(m);return v.length>1||v.length===1&&v[0].declaration!==u}return!1}function xKs(u){let m=Cyn(u);if(!m)return!1;let v=tl(m);return lo(v)||zse(v)}function e3e(u,m){return(GKs(u,m)||FKs(u))&&!xKs(u)}function GKs(u,m){return!at||O2e(u)||dS(u)||!u.initializer?!1:Ga(u,31)?!!m&&Gd(m):!0}function FKs(u){return at&&O2e(u)&&(dS(u)||!u.initializer)&&Ga(u,31)}function hyn(u){let m=eu(u,D=>ah(D)||nc(D));if(!m)return!1;let v;if(nc(m)){if(m.type||!Bo(m)&&!NSe(m))return!1;let D=V7(m);if(!D||!bE(D))return!1;v=Uo(D)}else v=Uo(m);return!v||!(v.flags&16|3)?!1:!!Fh(N1(v),D=>D.flags&111551&&cQ(D.valueDeclaration))}function ZKs(u){let m=eu(u,ah);if(!m)return E;let v=Uo(m);return v&&Zd(fo(v))||E}function e$(u){var m;let v=u.id||0;return v<0||v>=h5.length?0:((m=h5[v])==null?void 0:m.flags)||0}function A6t(u,m){return LKs(u,m),!!(e$(u)&m)}function LKs(u,m){if(!Te.noCheck&&vU(ms(u),Te)||sa(u).calculatedFlags&m)return;switch(m){case 16:case 32:return oe(u);case 128:case 256:case 2097152:return Y(u);case 512:case 8192:case 65536:case 262144:return Me(u);case 536870912:return $e(u);case 4096:case 32768:case 16384:return kt(u);default:return pe.assertNever(m,`Unhandled node check flag calculation: ${pe.formatNodeCheckFlags(m)}`)}function D(dn,Sn){let ii=Sn(dn,dn.parent);if(ii!=="skip")return ii||Wz(dn,Sn)}function W(dn){let Sn=sa(dn);if(Sn.calculatedFlags&m)return"skip";Sn.calculatedFlags|=2097536,oe(dn)}function Y(dn){D(dn,W)}function oe(dn){let Sn=sa(dn);Sn.calculatedFlags|=48,dn.kind===108&&gat(dn)}function Be(dn){let Sn=sa(dn);if(Sn.calculatedFlags&m)return"skip";Sn.calculatedFlags|=336384,$e(dn)}function Me(dn){D(dn,Be)}function He(dn){return UT(dn)||u0(dn.parent)&&(dn.parent.objectAssignmentInitializer??dn.parent.name)===dn}function $e(dn){let Sn=sa(dn);if(Sn.calculatedFlags|=536870912,Ir(dn)&&(Sn.calculatedFlags|=49152,He(dn)&&!(jo(dn.parent)&&dn.parent.name===dn))){let ii=O0(dn);ii&&ii!==st&&ACn(dn,ii)}}function Vt(dn){let Sn=sa(dn);if(Sn.calculatedFlags&m)return"skip";Sn.calculatedFlags|=53248,wr(dn)}function kt(dn){let Sn=oS(KT(dn)?dn.parent:dn);D(Sn,Vt)}function wr(dn){$e(dn),Un(dn)&&nT(dn),p(dn)&&MI(dn.parent)&&Vat(dn.parent)}}function UK(u){return K0n(u.parent),sa(u).enumMemberValue??nm(void 0)}function myn(u){switch(u.kind){case 307:case 212:case 213:return!0}return!1}function ict(u){if(u.kind===307)return UK(u).value;sa(u).resolvedSymbol||DI(u);let m=sa(u).resolvedSymbol||(Hd(u)?NI(u,111551,!0):void 0);if(m&&m.flags&8){let v=m.valueDeclaration;if(OA(v.parent))return UK(v).value}}function d6t(u){return!!(u.flags&524288)&&rg(u,0).length>0}function VKs(u,m){var v;let D=eu(u,mC);if(!D||m&&(m=eu(m),!m))return 0;let W=!1;if(zi(D)){let $e=NI(R0(D),111551,!0,!0,m);W=!!((v=$e?.declarations)!=null&&v.every(lN))}let Y=NI(D,111551,!0,!0,m),oe=Y&&Y.flags&2097152?JC(Y):Y;W||(W=!!(Y&&IR(Y,111551)));let Be=NI(D,788968,!0,!0,m),Me=Be&&Be.flags&2097152?JC(Be):Be;if(Y||W||(W=!!(Be&&IR(Be,788968))),oe&&oe===Me){let $e=SUt(!1);if($e&&oe===$e)return 9;let Vt=fo(oe);if(Vt&&CR(Vt))return W?10:1}if(!Me)return W?11:0;let He=Lp(Me);return lo(He)?W?11:0:He.flags&3?11:P_(He,245760)?2:P_(He,528)?6:P_(He,296)?3:P_(He,2112)?4:P_(He,402653316)?5:EA(He)?7:P_(He,12288)?8:d6t(He)?10:Fv(He)?7:11}function WKs(u,m,v,D,W){let Y=eu(u,dde);if(!Y)return me.createToken(133);let oe=Uo(Y);return Dt.serializeTypeForDeclaration(Y,oe,m,v|1024,D,W)}function p6t(u){u=eu(u,RJ);let m=u.kind===179?178:179,v=yp(Uo(u),m),D=v&&v.pos{switch(D.kind){case 261:case 170:case 209:case 173:case 304:case 305:case 307:case 211:case 263:case 219:case 220:case 264:case 232:case 267:case 175:case 178:case 179:case 268:return!0}return!1})}}}function XKs(u){return Cf(u)||nc(u)&&NSe(u)?eX(fo(Uo(u))):!1}function JKs(u,m,v){let D=u.flags&1056?Dt.symbolToExpression(u.symbol,111551,m,void 0,void 0,v):u===tn?me.createTrue():u===Bs&&me.createFalse();if(D)return D;let W=u.value;return typeof W=="object"?me.createBigIntLiteral(W):typeof W=="string"?me.createStringLiteral(W):W<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-W)):me.createNumericLiteral(W)}function UKs(u,m){let v=fo(Uo(u));return JKs(v,u,m)}function f6t(u){return u?(Uw(u),ms(u).localJsxFactory||iZ):iZ}function I6t(u){if(u){let m=ms(u);if(m){if(m.localJsxFragmentFactory)return m.localJsxFragmentFactory;let v=m.pragmas.get("jsxfrag"),D=Ki(v)?v[0]:v;if(D)return m.localJsxFragmentFactory=Pz(D.arguments.factory,Ze),m.localJsxFragmentFactory}}if(Te.jsxFragmentFactory)return Pz(Te.jsxFragmentFactory,Ze)}function Cyn(u){let m=Zh(u);if(m)return m;if(u.kind===170&&u.parent.kind===179){let v=p6t(u.parent).getAccessor;if(v)return Zb(v)}}function KKs(){return{getReferencedExportContainer:wKs,getReferencedImportDeclaration:TKs,getReferencedDeclarationWithCollidingName:NKs,isDeclarationWithCollidingName:DKs,isValueAliasDeclaration:m=>{let v=eu(m);return v&&Yt?pyn(v):!0},hasGlobalName:MKs,isReferencedAliasDeclaration:(m,v)=>{let D=eu(m);return D&&Yt?fyn(D,v):!0},hasNodeCheckFlag:(m,v)=>{let D=eu(m);return D?A6t(D,v):!1},isTopLevelValueImportEqualsWithEntityName:kKs,isDeclarationVisible:mk,isImplementationOfOverload:Iyn,requiresAddingImplicitUndefined:e3e,isExpandoFunctionDeclaration:hyn,getPropertiesOfContainerFunction:ZKs,createTypeOfDeclaration:WKs,createReturnTypeOfSignatureDeclaration:OKs,createTypeOfExpression:PKs,createLiteralConstValue:UKs,isSymbolAccessible:hO,isEntityNameVisible:Gq,getConstantValue:m=>{let v=eu(m,myn);return v?ict(v):void 0},getEnumMemberValue:m=>{let v=eu(m,YF);return v?UK(v):void 0},collectLinkedAliases:Ose,markLinkedReferences:m=>{let v=eu(m);return v&&Uq(v,0)},getReferencedValueDeclaration:YKs,getReferencedValueDeclarations:QKs,getTypeReferenceSerializationKind:VKs,isOptionalParameter:O2e,isArgumentsLocalBinding:vKs,getExternalModuleFileFromDeclaration:m=>{let v=eu(m,Uge);return v&&h6t(v)},isLiteralConstDeclaration:XKs,isLateBound:m=>{let v=eu(m,em),D=v&&Uo(v);return!!(D&&aI(D)&4096)},getJsxFactoryEntity:f6t,getJsxFragmentFactoryEntity:I6t,isBindingCapturedByNode:(m,v)=>{let D=eu(m),W=eu(v);return!!D&&!!W&&(nc(W)||mg(W))&&iYs(D,W)},getDeclarationStatementsForSourceFile:(m,v,D,W)=>{let Y=eu(m);pe.assert(Y&&Y.kind===308,"Non-sourcefile node passed into getDeclarationsForSourceFile");let oe=Uo(m);return oe?(DE(oe),oe.exports?Dt.symbolTableToDeclarationStatements(oe.exports,m,v,D,W):[]):m.locals?Dt.symbolTableToDeclarationStatements(m.locals,m,v,D,W):[]},isImportRequiredByAugmentation:u,isDefinitelyReferenceToGlobalSymbolObject:fk,createLateBoundIndexSignatures:(m,v,D,W,Y)=>{let oe=m.symbol,Be=f0(fo(oe)),Me=hot(oe),He=Me&&Cot(Me,Do(_k(oe).values())),$e;for(let kt of[Be,He])if(B(kt)){$e||($e=[]);for(let wr of kt){if(wr.declaration||wr===el)continue;if(wr.components&&ue(wr.components,ii=>{var Yi;return!!(ii.name&&Un(ii.name)&&Hd(ii.name.expression)&&v&&((Yi=Gq(ii.name.expression,v,!1))==null?void 0:Yi.accessibility)===0)})){let ii=Le(wr.components,Yi=>!Mse(Yi));$e.push(...lt(ii,Yi=>{Vt(Yi.name.expression);let js=kt===Be?[me.createModifier(126)]:void 0;return me.createPropertyDeclaration(Ft(js,wr.isReadonly?me.createModifier(148):void 0),Yi.name,(ss(Yi)||pi(Yi)||Il(Yi)||gu(Yi)||TB(Yi)||dv(Yi))&&Yi.questionToken?me.createToken(58):void 0,Dt.typeToTypeNode(fo(Yi.symbol),v,D,W,Y),void 0)}));continue}let dn=Dt.indexInfoToIndexSignatureDeclaration(wr,v,D,W,Y);dn&&kt===Be&&(dn.modifiers||(dn.modifiers=me.createNodeArray())).unshift(me.createModifier(126)),dn&&$e.push(dn)}}return $e;function Vt(kt){if(!Y.trackSymbol)return;let wr=R0(kt),dn=An(wr,wr.escapedText,1160127,void 0,!0);dn&&Y.trackSymbol(dn,v,111551)}},symbolToDeclarations:(m,v,D,W,Y,oe)=>Dt.symbolToDeclarations(m,v,D,W,Y,oe)};function u(m){let v=ms(m);if(!v.symbol)return!1;let D=h6t(m);if(!D||D===v)return!1;let W=HN(v.symbol);for(let Y of Do(W.values()))if(Y.mergeId){let oe=qA(Y);if(oe.declarations){for(let Be of oe.declarations)if(ms(Be)===D)return!0}}return!1}}function h6t(u){let m=u.kind===268?Gs(u.name,Lg):KY(u),v=NE(m,m,void 0);if(v)return yp(v,308)}function jKs(){for(let m of s.getSourceFiles())OPt(m,Te);lh=new Map;let u;for(let m of s.getSourceFiles())if(!m.redirectInfo){if(!Sl(m)){let v=m.locals.get("globalThis");if(v?.declarations)for(let D of v.declarations)PA.add(ho(D,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));PN(Gr,m.locals)}m.jsGlobalAugmentations&&PN(Gr,m.jsGlobalAugmentations),m.patternAmbientModules&&m.patternAmbientModules.length&&(Pb=Nn(Pb,m.patternAmbientModules)),m.moduleAugmentations.length&&(u||(u=[])).push(m.moduleAugmentations),m.symbol&&m.symbol.globalExports&&m.symbol.globalExports.forEach((D,W)=>{Gr.has(W)||Gr.set(W,D)})}if(u)for(let m of u)for(let v of m)DB(v.parent)&&WQ(v);if(v5(),fa(dt).type=xe,fa(ot).type=jI("IArguments",0,!0),fa(st).type=nn,fa(pr).type=Ph(16,pr),kA=jI("Array",1,!0),qn=jI("Object",0,!0),Js=jI("Function",0,!0),Yl=Ct&&jI("CallableFunction",0,!0)||Js,DA=Ct&&jI("NewableFunction",0,!0)||Js,ym=jI("String",0,!0),lf=jI("Number",0,!0),fI=jI("Boolean",0,!0),KI=jI("RegExp",0,!0),I_=I0(hr),YC=I0(En),YC===Jg&&(YC=Qf(void 0,Ee,E,E,E)),AA=ihn("ReadonlyArray",1)||kA,w1=AA?ife(AA,[hr]):I_,E2=ihn("ThisType",1),u)for(let m of u)for(let v of m)DB(v.parent)||WQ(v);lh.forEach(({firstFile:m,secondFile:v,conflictingSymbols:D})=>{if(D.size<8)D.forEach(({isBlockScoped:W,firstFileLocations:Y,secondFileLocations:oe},Be)=>{let Me=W?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0;for(let He of Y)S5(He,Me,Be,oe);for(let He of oe)S5(He,Me,Be,Y)});else{let W=Do(D.keys()).join(", ");PA.add(ug(ho(m,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),ho(v,Z.Conflicts_are_in_this_file))),PA.add(ug(ho(v,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),ho(m,Z.Conflicts_are_in_this_file)))}}),lh=void 0}function iC(u,m){if(Te.importHelpers){let v=ms(u);if(_3(v,Te)&&!(u.flags&33554432)){let D=qKs(v,u);if(D!==st){let W=fa(D);if(W.requestedExternalEmitHelpers??(W.requestedExternalEmitHelpers=0),(W.requestedExternalEmitHelpers&m)!==m){let Y=m&~W.requestedExternalEmitHelpers;for(let oe=1;oe<=16777216;oe<<=1)if(Y&oe)for(let Be of zKs(oe)){let Me=Oh(m_(HN(D),pp(Be),111551));Me?oe&524288?zt(zQ(Me),He=>GE(He)>3)||Br(u,Z.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,QD,Be,4):oe&1048576?zt(zQ(Me),He=>GE(He)>4)||Br(u,Z.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,QD,Be,5):oe&1024&&(zt(zQ(Me),He=>GE(He)>2)||Br(u,Z.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,QD,Be,3)):Br(u,Z.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,QD,Be)}}W.requestedExternalEmitHelpers|=m}}}}function zKs(u){switch(u){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return Ke?["__decorate"]:["__esDecorate","__runInitializers"];case 16:return["__metadata"];case 32:return["__param"];case 64:return["__awaiter"];case 128:return["__generator"];case 256:return["__values"];case 512:return["__read"];case 1024:return["__spreadArray"];case 2048:return["__await"];case 4096:return["__asyncGenerator"];case 8192:return["__asyncDelegator"];case 16384:return["__asyncValues"];case 32768:return["__exportStar"];case 65536:return["__importStar"];case 131072:return["__importDefault"];case 262144:return["__makeTemplateObject"];case 524288:return["__classPrivateFieldGet"];case 1048576:return["__classPrivateFieldSet"];case 2097152:return["__classPrivateFieldIn"];case 4194304:return["__setFunctionName"];case 8388608:return["__propKey"];case 16777216:return["__addDisposableResource","__disposeResources"];case 33554432:return["__rewriteRelativeImportExtension"];default:return pe.fail("Unrecognized helper")}}function qKs(u,m){let v=sa(u);return v.externalHelpersModule||(v.externalHelpersModule=pK(X8s(u),QD,Z.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,m)||st),v.externalHelpersModule}function gG(u){var m;let v=t8s(u)||$Ks(u);if(v!==void 0)return v;if(Si(u)&&DF(u))return KC(u,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);let D=Eh(u)?u.declarationList.flags&7:0,W,Y,oe,Be,Me,He=0,$e=!1,Vt=!1;for(let kt of u.modifiers)if(Eo(kt)){if(tU(Ke,u,u.parent,u.parent.parent)){if(Ke&&(u.kind===178||u.kind===179)){let wr=p6t(u);if(m1(wr.firstAccessor)&&u===wr.secondAccessor)return KC(u,Z.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return u.kind===175&&!p1(u.body)?KC(u,Z.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):KC(u,Z.Decorators_are_not_valid_here);if(He&-34849)return os(kt,Z.Decorators_are_not_valid_here);if(Vt&&He&98303){pe.assertIsDefined(Me);let wr=ms(kt);return DO(wr)?!1:(ug(Br(kt,Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),ho(Me,Z.Decorator_used_before_export_here)),!0)}He|=32768,He&98303?He&32&&($e=!0):Vt=!0,Me??(Me=kt)}else{if(kt.kind!==148){if(u.kind===172||u.kind===174)return os(kt,Z._0_modifier_cannot_appear_on_a_type_member,Vi(kt.kind));if(u.kind===182&&(kt.kind!==126||!xa(u.parent)))return os(kt,Z._0_modifier_cannot_appear_on_an_index_signature,Vi(kt.kind))}if(kt.kind!==103&&kt.kind!==147&&kt.kind!==87&&u.kind===169)return os(kt,Z._0_modifier_cannot_appear_on_a_type_parameter,Vi(kt.kind));switch(kt.kind){case 87:{if(u.kind!==267&&u.kind!==169)return os(u,Z.A_class_member_cannot_have_the_0_keyword,Vi(87));let Sn=MB(u.parent)&&JL(u.parent)||u.parent;if(u.kind===169&&!(Gd(Sn)||xa(Sn)||Z_(Sn)||sk(Sn)||Tg(Sn)||im(Sn)||Il(Sn)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,Vi(kt.kind));break}case 164:if(He&16)return os(kt,Z._0_modifier_already_seen,"override");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","readonly");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","accessor");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","async");He|=16,Be=kt;break;case 125:case 124:case 123:let wr=Z5(tQ(kt.kind));if(He&7)return os(kt,Z.Accessibility_modifier_already_seen);if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,wr,"override");if(He&256)return os(kt,Z._0_modifier_must_precede_1_modifier,wr,"static");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,wr,"accessor");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,wr,"readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,wr,"async");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,wr);if(He&64)return kt.kind===123?os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,wr,"abstract"):os(kt,Z._0_modifier_must_precede_1_modifier,wr,"abstract");if(hC(u))return os(kt,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);He|=tQ(kt.kind);break;case 126:if(He&256)return os(kt,Z._0_modifier_already_seen,"static");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","async");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","accessor");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"static");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","override");He|=256,W=kt;break;case 129:if(He&512)return os(kt,Z._0_modifier_already_seen,"accessor");if(He&8)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(u.kind!==173)return os(kt,Z.accessor_modifier_can_only_appear_on_a_property_declaration);He|=512;break;case 148:if(He&8)return os(kt,Z._0_modifier_already_seen,"readonly");if(u.kind!==173&&u.kind!==172&&u.kind!==182&&u.kind!==170)return os(kt,Z.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");He|=8;break;case 95:if(Te.verbatimModuleSyntax&&!(u.flags&33554432)&&u.kind!==266&&u.kind!==265&&u.kind!==268&&u.parent.kind===308&&s.getEmitModuleFormatOfFile(ms(u))===1)return os(kt,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(He&32)return os(kt,Z._0_modifier_already_seen,"export");if(He&128)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","declare");if(He&64)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","abstract");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","async");if(xa(u.parent))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"export");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"export");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"export");He|=32;break;case 90:let dn=u.parent.kind===308?u.parent:u.parent.parent;if(dn.kind===268&&!c_(dn))return os(kt,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"default");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(He&32){if($e)return os(Me,Z.Decorators_are_not_valid_here)}else return os(kt,Z._0_modifier_must_precede_1_modifier,"export","default");He|=2048;break;case 138:if(He&128)return os(kt,Z._0_modifier_already_seen,"declare");if(He&1024)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(He&16)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(xa(u.parent)&&!pi(u))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"declare");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(u.parent.flags&33554432&&u.parent.kind===269)return os(kt,Z.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(hC(u))return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");He|=128,Y=kt;break;case 128:if(He&64)return os(kt,Z._0_modifier_already_seen,"abstract");if(u.kind!==264&&u.kind!==186){if(u.kind!==175&&u.kind!==173&&u.kind!==178&&u.kind!==179)return os(kt,Z.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(u.parent.kind===264&&Ga(u.parent,64))){let Sn=u.kind===173?Z.Abstract_properties_can_only_appear_within_an_abstract_class:Z.Abstract_methods_can_only_appear_within_an_abstract_class;return os(kt,Sn)}if(He&256)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&2)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(He&1024&&oe)return os(oe,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","override");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(sh(u)&&u.name.kind===81)return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");He|=64;break;case 134:if(He&1024)return os(kt,Z._0_modifier_already_seen,"async");if(He&128||u.parent.flags&33554432)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"async");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");He|=1024,oe=kt;break;case 103:case 147:{let Sn=kt.kind===103?8192:16384,ii=kt.kind===103?"in":"out",Yi=MB(u.parent)&&(JL(u.parent)||de((m=lU(u.parent))==null?void 0:m.tags,ZU))||u.parent;if(u.kind!==169||Yi&&!(p_(Yi)||xa(Yi)||PB(Yi)||ZU(Yi)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,ii);if(He&Sn)return os(kt,Z._0_modifier_already_seen,ii);if(Sn&8192&&He&16384)return os(kt,Z._0_modifier_must_precede_1_modifier,"in","out");He|=Sn;break}}}return u.kind===177?He&256?os(W,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):He&16?os(Be,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):He&1024?os(oe,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(u.kind===273||u.kind===272)&&He&128?os(Y,Z.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):u.kind===170&&He&31&&Nu(u.name)?os(u,Z.A_parameter_property_may_not_be_declared_using_a_binding_pattern):u.kind===170&&He&31&&u.dotDotDotToken?os(u,Z.A_parameter_property_cannot_be_declared_using_a_rest_parameter):He&1024?n8s(u,oe):!1}function $Ks(u){if(!u.modifiers)return!1;let m=e8s(u);return m&&KC(m,Z.Modifiers_cannot_appear_here)}function sct(u,m){let v=de(u.modifiers,hg);return v&&v.kind!==m?v:void 0}function e8s(u){switch(u.kind){case 178:case 179:case 177:case 173:case 172:case 175:case 174:case 182:case 268:case 273:case 272:case 279:case 278:case 219:case 220:case 170:case 169:return;case 176:case 304:case 305:case 271:case 283:return de(u.modifiers,hg);default:if(u.parent.kind===269||u.parent.kind===308)return;switch(u.kind){case 263:return sct(u,134);case 264:case 186:return sct(u,128);case 232:case 265:case 266:return de(u.modifiers,hg);case 244:return u.declarationList.flags&4?sct(u,135):de(u.modifiers,hg);case 267:return sct(u,87);default:pe.assertNever(u)}}}function t8s(u){let m=r8s(u);return m&&KC(m,Z.Decorators_are_not_valid_here)}function r8s(u){return $$e(u)?de(u.modifiers,Eo):void 0}function n8s(u,m){switch(u.kind){case 175:case 263:case 219:case 220:return!1}return os(m,Z._0_modifier_cannot_be_used_here,"async")}function t$(u,m=Z.Trailing_comma_not_allowed){return u&&u.hasTrailingComma?z5(u[0],u.end-1,1,m):!1}function _yn(u,m){if(u&&u.length===0){let v=u.pos-1,D=Yu(m.text,u.end)+1;return z5(m,v,D-v,Z.Type_parameter_list_cannot_be_empty)}return!1}function i8s(u){let m=!1,v=u.length;for(let D=0;D!!m.initializer||Nu(m.name)||RB(m))}function o8s(u){if(Ze>=3){let m=u.body&&eg(u.body)&&K$e(u.body.statements);if(m){let v=s8s(u.parameters);if(B(v)){F(v,W=>{ug(Br(W,Z.This_parameter_is_not_allowed_with_use_strict_directive),ho(m,Z.use_strict_directive_used_here))});let D=v.map((W,Y)=>Y===0?ho(W,Z.Non_simple_parameter_declared_here):ho(W,Z.and_here));return ug(Br(m,Z.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...D),!0}}}return!1}function oct(u){let m=ms(u);return gG(u)||_yn(u.typeParameters,m)||i8s(u.parameters)||c8s(u,m)||Gd(u)&&o8s(u)}function a8s(u){let m=ms(u);return d8s(u)||_yn(u.typeParameters,m)}function c8s(u,m){if(!gA(u))return!1;u.typeParameters&&!(B(u.typeParameters)>1||u.typeParameters.hasTrailingComma||u.typeParameters[0].constraint)&&m&&Iu(m.fileName,[".mts",".cts"])&&os(u.typeParameters[0],Z.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);let{equalsGreaterThanToken:v}=u,D=Ra(m,v.pos).line,W=Ra(m,v.end).line;return D!==W&&os(v,Z.Line_terminator_not_permitted_before_arrow)}function l8s(u){let m=u.parameters[0];if(u.parameters.length!==1)return os(m?m.name:u,Z.An_index_signature_must_have_exactly_one_parameter);if(t$(u.parameters,Z.An_index_signature_cannot_have_a_trailing_comma),m.dotDotDotToken)return os(m.dotDotDotToken,Z.An_index_signature_cannot_have_a_rest_parameter);if(hbe(m))return os(m.name,Z.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(m.questionToken)return os(m.questionToken,Z.An_index_signature_parameter_cannot_have_a_question_mark);if(m.initializer)return os(m.name,Z.An_index_signature_parameter_cannot_have_an_initializer);if(!m.type)return os(m.name,Z.An_index_signature_parameter_must_have_a_type_annotation);let v=tl(m.type);return Lv(v,D=>!!(D.flags&8576))||H5(v)?os(m.name,Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):xE(v,_ot)?u.type?!1:os(u,Z.An_index_signature_must_have_a_type_annotation):os(m.name,Z.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function u8s(u){return gG(u)||l8s(u)}function g8s(u,m){if(m&&m.length===0){let v=ms(u),D=m.pos-1,W=Yu(v.text,m.end)+1;return z5(v,D,W-D,Z.Type_argument_list_cannot_be_empty)}return!1}function t3e(u,m){return t$(m)||g8s(u,m)}function A8s(u){return u.questionDotToken||u.flags&64?os(u.template,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function yyn(u){let m=u.types;if(t$(m))return!0;if(m&&m.length===0){let v=Vi(u.token);return z5(u,m.pos,0,Z._0_list_cannot_be_empty,v)}return zt(m,byn)}function byn(u){return A_(u)&&an(u.expression)&&u.typeArguments?os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):t3e(u,u.typeArguments)}function d8s(u){let m=!1,v=!1;if(!gG(u)&&u.heritageClauses)for(let D of u.heritageClauses){if(D.token===96){if(m)return KC(D,Z.extends_clause_already_seen);if(v)return KC(D,Z.extends_clause_must_precede_implements_clause);if(D.types.length>1)return KC(D.types[1],Z.Classes_can_only_extend_a_single_class);m=!0}else{if(pe.assert(D.token===119),v)return KC(D,Z.implements_clause_already_seen);v=!0}yyn(D)}}function p8s(u){let m=!1;if(u.heritageClauses)for(let v of u.heritageClauses){if(v.token===96){if(m)return KC(v,Z.extends_clause_already_seen);m=!0}else return pe.assert(v.token===119),KC(v,Z.Interface_declaration_cannot_have_implements_clause);yyn(v)}return!1}function act(u){if(u.kind!==168)return!1;let m=u;return m.expression.kind===227&&m.expression.operatorToken.kind===28?os(m.expression,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function m6t(u){if(u.asteriskToken){if(pe.assert(u.kind===263||u.kind===219||u.kind===175),u.flags&33554432)return os(u.asteriskToken,Z.Generators_are_not_allowed_in_an_ambient_context);if(!u.body)return os(u.asteriskToken,Z.An_overload_signature_cannot_be_declared_as_a_generator)}}function C6t(u,m){return!!u&&os(u,m)}function Eyn(u,m){return!!u&&os(u,m)}function f8s(u,m){let v=new Map;for(let D of u.properties){if(D.kind===306){if(m){let oe=JA(D.expression);if(YI(oe)||ag(oe))return os(D.expression,Z.A_rest_element_cannot_contain_a_binding_pattern)}continue}let W=D.name;if(W.kind===168&&act(W),D.kind===305&&!m&&D.objectAssignmentInitializer&&os(D.equalsToken,Z.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),W.kind===81&&os(W,Z.Private_identifiers_are_not_allowed_outside_class_bodies),HB(D)&&D.modifiers)for(let oe of D.modifiers)hg(oe)&&(oe.kind!==134||D.kind!==175)&&os(oe,Z._0_modifier_cannot_be_used_here,Fp(oe));else if(NOt(D)&&D.modifiers)for(let oe of D.modifiers)hg(oe)&&os(oe,Z._0_modifier_cannot_be_used_here,Fp(oe));let Y;switch(D.kind){case 305:case 304:Eyn(D.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context),C6t(D.questionToken,Z.An_object_member_cannot_be_declared_optional),W.kind===9&&Dyn(W),W.kind===10&&Kx(!0,ho(W,Z.A_bigint_literal_cannot_be_used_as_a_property_name)),Y=4;break;case 175:Y=8;break;case 178:Y=1;break;case 179:Y=2;break;default:pe.assertNever(D,"Unexpected syntax kind:"+D.kind)}if(!m){let oe=b6t(W);if(oe===void 0)continue;let Be=v.get(oe);if(!Be)v.set(oe,Y);else if(Y&8&&Be&8)os(W,Z.Duplicate_identifier_0,Fp(W));else if(Y&4&&Be&4)os(W,Z.An_object_literal_cannot_have_multiple_properties_with_the_same_name,Fp(W));else if(Y&3&&Be&3)if(Be!==3&&Y!==Be)v.set(oe,Y|Be);else return os(W,Z.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return os(W,Z.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function I8s(u){h8s(u.tagName),t3e(u,u.typeArguments);let m=new Map;for(let v of u.attributes.properties){if(v.kind===294)continue;let{name:D,initializer:W}=v,Y=Ez(D);if(!m.get(Y))m.set(Y,!0);else return os(D,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(W&&W.kind===295&&!W.expression)return os(W,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function h8s(u){if(jo(u)&&oR(u.expression))return os(u.expression,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(oR(u)&&JAe(Te)&&!pU(u.namespace.escapedText))return os(u,Z.React_components_cannot_include_JSX_namespace_names)}function m8s(u){if(u.expression&&Nde(u.expression))return os(u.expression,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function Syn(u){if(bZ(u))return!0;if(u.kind===251&&u.awaitModifier&&!(u.flags&65536)){let m=ms(u);if(oAe(u)){if(!DO(m))switch(_3(m,Te)||PA.add(ho(u.awaitModifier,Z.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)),Pe){case 100:case 101:case 102:case 199:if(m.impliedNodeFormat===1){PA.add(ho(u.awaitModifier,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:PA.add(ho(u.awaitModifier,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher));break}}else if(!DO(m)){let v=ho(u.awaitModifier,Z.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=I1(u);if(D&&D.kind!==177){pe.assert((BI(D)&2)===0,"Enclosing function should never be an async function.");let W=ho(D,Z.Did_you_mean_to_mark_this_function_as_async);ug(v,W)}return PA.add(v),!0}}if(BEe(u)&&!(u.flags&65536)&&Ir(u.initializer)&&u.initializer.escapedText==="async")return os(u.initializer,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(u.initializer.kind===262){let m=u.initializer;if(!y6t(m)){let v=m.declarations;if(!v.length)return!1;if(v.length>1){let W=u.kind===250?Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return KC(m.declarations[1],W)}let D=v[0];if(D.initializer){let W=u.kind===250?Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return os(D.name,W)}if(D.type){let W=u.kind===250?Z.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Z.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return os(D,W)}}}return!1}function C8s(u){if(!(u.flags&33554432)&&u.parent.kind!==188&&u.parent.kind!==265){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.body===void 0&&!Ga(u,64))return z5(u,u.end-1,1,Z._0_expected,"{")}if(u.body){if(Ga(u,64))return os(u,Z.An_abstract_accessor_cannot_have_an_implementation);if(u.parent.kind===188||u.parent.kind===265)return os(u.body,Z.An_implementation_cannot_be_declared_in_ambient_contexts)}if(u.typeParameters)return os(u.name,Z.An_accessor_cannot_have_type_parameters);if(!_8s(u))return os(u.name,u.kind===178?Z.A_get_accessor_cannot_have_parameters:Z.A_set_accessor_must_have_exactly_one_parameter);if(u.kind===179){if(u.type)return os(u.name,Z.A_set_accessor_cannot_have_a_return_type_annotation);let m=pe.checkDefined(q7(u),"Return value does not match parameter count assertion.");if(m.dotDotDotToken)return os(m.dotDotDotToken,Z.A_set_accessor_cannot_have_rest_parameter);if(m.questionToken)return os(m.questionToken,Z.A_set_accessor_cannot_have_an_optional_parameter);if(m.initializer)return os(u.name,Z.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function _8s(u){return _6t(u)||u.parameters.length===(u.kind===178?0:1)}function _6t(u){if(u.parameters.length===(u.kind===178?1:2))return GW(u)}function y8s(u){if(u.operator===158){if(u.type.kind!==155)return os(u.type,Z._0_expected,Vi(155));let m=Rne(u.parent);if(Bo(m)&&K3(m)){let v=DW(m);v&&(m=w3(v)||v)}switch(m.kind){case 261:let v=m;if(v.name.kind!==80)return os(u,Z.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!k7(v))return os(u,Z.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(v.parent.flags&2))return os(m.name,Z.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 173:if(!lg(m)||!D3(m))return os(m.name,Z.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 172:if(!Ga(m,8))return os(m.name,Z.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return os(u,Z.unique_symbol_types_are_not_allowed_here)}}else if(u.operator===148&&u.type.kind!==189&&u.type.kind!==190)return KC(u,Z.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,Vi(155))}function bfe(u,m){if(oIn(u)&&!Hd(Qg(u)?JA(u.argumentExpression):u.expression))return os(u,m)}function vyn(u){if(oct(u))return!0;if(u.kind===175){if(u.parent.kind===211){if(u.modifiers&&!(u.modifiers.length===1&&ma(u.modifiers).kind===134))return KC(u,Z.Modifiers_cannot_appear_here);if(C6t(u.questionToken,Z.An_object_member_cannot_be_declared_optional))return!0;if(Eyn(u.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(u.body===void 0)return z5(u,u.end-1,1,Z._0_expected,"{")}if(m6t(u))return!0}if(xa(u.parent)){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.flags&33554432)return bfe(u.name,Z.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.kind===175&&!u.body)return bfe(u.name,Z.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(u.parent.kind===265)return bfe(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.parent.kind===188)return bfe(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function b8s(u){let m=u;for(;m;){if(p3(m))return os(u,Z.Jump_target_cannot_cross_function_boundary);switch(m.kind){case 257:if(u.label&&m.label.escapedText===u.label.escapedText)return u.kind===252&&!YT(m.statement,!0)?os(u,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 256:if(u.kind===253&&!u.label)return!1;break;default:if(YT(m,!1)&&!u.label)return!1;break}m=m.parent}if(u.label){let v=u.kind===253?Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return os(u,v)}else{let v=u.kind===253?Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return os(u,v)}}function E8s(u){if(u.dotDotDotToken){let m=u.parent.elements;if(u!==Ei(m))return os(u,Z.A_rest_element_must_be_last_in_a_destructuring_pattern);if(t$(m,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),u.propertyName)return os(u.name,Z.A_rest_element_cannot_have_a_property_name)}if(u.dotDotDotToken&&u.initializer)return z5(u,u.initializer.pos-1,1,Z.A_rest_element_cannot_have_an_initializer)}function Byn(u){return h1(u)||u.kind===225&&u.operator===41&&u.operand.kind===9}function S8s(u){return u.kind===10||u.kind===225&&u.operator===41&&u.operand.kind===10}function v8s(u){if((jo(u)||Qg(u)&&Byn(u.argumentExpression))&&Hd(u.expression))return!!(DI(u).flags&1056)}function wyn(u){let m=u.initializer;if(m){let v=!(Byn(m)||v8s(m)||m.kind===112||m.kind===97||S8s(m));if((Cf(u)||nc(u)&&NSe(u))&&!u.type){if(v)return os(m,Z.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return os(m,Z.Initializers_are_not_allowed_in_ambient_contexts)}}function B8s(u){let m=cX(u),v=m&7;if(Nu(u.name))switch(v){case 6:return os(u,Z._0_declarations_may_not_have_binding_patterns,"await using");case 4:return os(u,Z._0_declarations_may_not_have_binding_patterns,"using")}if(u.parent.parent.kind!==250&&u.parent.parent.kind!==251){if(m&33554432)wyn(u);else if(!u.initializer){if(Nu(u.name)&&!Nu(u.parent))return os(u,Z.A_destructuring_declaration_must_have_an_initializer);switch(v){case 6:return os(u,Z._0_declarations_must_be_initialized,"await using");case 4:return os(u,Z._0_declarations_must_be_initialized,"using");case 2:return os(u,Z._0_declarations_must_be_initialized,"const")}}}if(u.exclamationToken&&(u.parent.parent.kind!==244||!u.type||u.initializer||m&33554432)){let D=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,D)}return s.getEmitModuleFormatOfFile(ms(u))<4&&!(u.parent.parent.flags&33554432)&&Ga(u.parent.parent,32)&&Tyn(u.name),!!v&&Ryn(u.name)}function Tyn(u){if(u.kind===80){if(Vo(u)==="__esModule")return R8s("noEmit",u,Z.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{let m=u.elements;for(let v of m)if(!Ep(v))return Tyn(v.name)}return!1}function Ryn(u){if(u.kind===80){if(u.escapedText==="let")return os(u,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{let m=u.elements;for(let v of m)Ep(v)||Ryn(v.name)}return!1}function y6t(u){let m=u.declarations;if(t$(u.declarations))return!0;if(!u.declarations.length)return z5(u,m.pos,m.end-m.pos,Z.Variable_declaration_list_cannot_be_empty);let v=u.flags&7;if(v===4||v===6){if(m9e(u.parent))return os(u,v===4?Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Z.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration);if(u.flags&33554432)return os(u,v===4?Z.using_declarations_are_not_allowed_in_ambient_contexts:Z.await_using_declarations_are_not_allowed_in_ambient_contexts);if(v===6)return X_n(u)}return!1}function cct(u){switch(u.kind){case 246:case 247:case 248:case 255:case 249:case 250:case 251:return!1;case 257:return cct(u.parent)}return!0}function w8s(u){if(!cct(u.parent)){let m=cX(u.declarationList)&7;if(m){let v=m===1?"let":m===2?"const":m===4?"using":m===6?"await using":pe.fail("Unknown BlockScope flag");Br(u,Z._0_declarations_can_only_be_declared_inside_a_block,v)}}}function T8s(u){let m=u.name.escapedText;switch(u.keywordToken){case 105:if(m!=="target")return os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"target");break;case 102:if(m!=="meta"){let v=Ll(u.parent)&&u.parent.expression===u;if(m==="defer"){if(!v)return z5(u,u.end,0,Z._0_expected,"(")}else return v?os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer,Bc(u.name.escapedText)):os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"meta")}break}}function DO(u){return u.parseDiagnostics.length>0}function KC(u,m,...v){let D=ms(u);if(!DO(D)){let W=rs(D,u.pos);return PA.add(rm(D,W.start,W.length,m,...v)),!0}return!1}function z5(u,m,v,D,...W){let Y=ms(u);return DO(Y)?!1:(PA.add(rm(Y,m,v,D,...W)),!0)}function R8s(u,m,v,...D){let W=ms(m);return DO(W)?!1:(I9(u,m,v,...D),!0)}function os(u,m,...v){let D=ms(u);return DO(D)?!1:(Br(u,m,...v),!0)}function N8s(u){let m=Bo(u)?TAe(u):void 0,v=u.typeParameters||m&&Nc(m);if(v){let D=v.pos===v.end?v.pos:Yu(ms(u).text,v.pos);return z5(u,D,v.end-D,Z.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function D8s(u){let m=u.type||Zb(u);if(m)return os(m,Z.Type_annotation_cannot_appear_on_a_constructor_declaration)}function k8s(u){if(Un(u.name)&&po(u.name.expression)&&u.name.expression.operatorToken.kind===103)return os(u.parent.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods);if(xa(u.parent)){if(Lg(u.name)&&u.name.text==="constructor")return os(u.name,Z.Classes_may_not_have_a_field_named_constructor);if(bfe(u.name,Z.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Ze<2&&i0(u)&&!(u.flags&33554432))return os(u.name,Z.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(i0(u)&&C6t(u.questionToken,Z.An_accessor_property_cannot_be_declared_optional))return!0}else if(u.parent.kind===265){if(bfe(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.An_interface_property_cannot_have_an_initializer)}else if(bh(u.parent)){if(bfe(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.A_type_literal_property_cannot_have_an_initializer)}if(u.flags&33554432&&wyn(u),pi(u)&&u.exclamationToken&&(!xa(u.parent)||!u.type||u.initializer||u.flags&33554432||lg(u)||ZW(u))){let m=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,m)}}function x8s(u){return u.kind===265||u.kind===266||u.kind===273||u.kind===272||u.kind===279||u.kind===278||u.kind===271||Ga(u,2208)?!1:KC(u,Z.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function G8s(u){for(let m of u.statements)if((em(m)||m.kind===244)&&x8s(m))return!0;return!1}function Nyn(u){return!!(u.flags&33554432)&&G8s(u)}function bZ(u){if(u.flags&33554432){if(!sa(u).hasReportedStatementInAmbientContext&&(Eu(u.parent)||wB(u.parent)))return sa(u).hasReportedStatementInAmbientContext=KC(u,Z.An_implementation_cannot_be_declared_in_ambient_contexts);if(u.parent.kind===242||u.parent.kind===269||u.parent.kind===308){let v=sa(u.parent);if(!v.hasReportedStatementInAmbientContext)return v.hasReportedStatementInAmbientContext=KC(u,Z.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function Dyn(u){let m=Fp(u).includes("."),v=u.numericLiteralFlags&16;m||v||+u.text<=2**53-1||Kx(!1,ho(u,Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function F8s(u){return!!(!(wE(u.parent)||D0(u.parent)&&wE(u.parent.parent))&&!(u.flags&33554432)&&Ze<7&&os(u,Z.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function Z8s(u,m,...v){let D=ms(u);if(!DO(D)){let W=rs(D,u.pos);return PA.add(rm(D,Rs(W),0,m,...v)),!0}return!1}function L8s(){return b2||(b2=[],Gr.forEach((u,m)=>{XPt.test(m)&&b2.push(u)})),b2}function V8s(u){var m,v;if(u.phaseModifier===156){if(u.name&&u.namedBindings)return os(u,Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);if(((m=u.namedBindings)==null?void 0:m.kind)===276)return kyn(u.namedBindings)}else if(u.phaseModifier===166){if(u.name)return os(u,Z.Default_imports_are_not_allowed_in_a_deferred_import);if(((v=u.namedBindings)==null?void 0:v.kind)===276)return os(u,Z.Named_imports_are_not_allowed_in_a_deferred_import);if(Pe!==99&&Pe!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}return!1}function kyn(u){return!!F(u.elements,m=>{if(m.isTypeOnly)return KC(m,m.kind===277?Z.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Z.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function W8s(u){if(Te.verbatimModuleSyntax&&Pe===1)return os(u,oK(u));if(u.expression.kind===237){if(Pe!==99&&Pe!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}else if(Pe===5)return os(u,Z.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext);if(u.typeArguments)return os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);let m=u.arguments;if(!(100<=Pe&&Pe<=199)&&Pe!==99&&Pe!==200&&(t$(m),m.length>1)){let D=m[1];return os(D,Z.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve)}if(m.length===0||m.length>2)return os(u,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);let v=de(m,cf);return v?os(v,Z.Argument_of_dynamic_import_cannot_be_spread_element):!1}function O8s(u,m){let v=la(u);if(v&20&&m.flags&1048576)return de(m.types,D=>{if(D.flags&524288){let W=v&la(D);if(W&4)return u.target===D.target;if(W&16)return!!u.aliasSymbol&&u.aliasSymbol===D.aliasSymbol}return!1})}function P8s(u,m){if(la(u)&128&&Lv(m,F9))return de(m.types,v=>!F9(v))}function M8s(u,m){let v=0;if(rg(u,v).length>0||(v=1,rg(u,v).length>0))return de(m.types,W=>rg(W,v).length>0)}function H8s(u,m){let v;if(!(u.flags&406978556)){let D=0;for(let W of m.types)if(!(W.flags&406978556)){let Y=jg([JN(u),JN(W)]);if(Y.flags&4194304)return W;if(bR(Y)||Y.flags&1048576){let oe=Y.flags&1048576?ze(Y.types,bR):1;oe>=D&&(v=W,D=oe)}}}return v}function Y8s(u){if(uh(u,67108864)){let m=am(u,v=>!(v.flags&402784252));if(!(m.flags&131072))return m}return u}function xyn(u,m,v){if(m.flags&1048576&&u.flags&2621440){let D=Gmn(m,u);if(D)return D;let W=Zd(u);if(W){let Y=xmn(W,m);if(Y){let oe=iKt(m,lt(Y,Be=>[()=>fo(Be),Be.escapedName]),v);if(oe!==m)return oe}}}}function b6t(u){let m=R3(u);return m||(Un(u)?NKt(M_(u.expression)):void 0)}function lct(u){return Zi===u||(Zi=u,Ns=Hc(u)),Ns}function cX(u){return mn===u||(mn=u,jn=hm(u)),jn}function NSe(u){let m=cX(u)&7;return m===2||m===4||m===6}function Q8s(u,m){let v=Te.importHelpers?1:0,D=u?.imports[v];return D&&pe.assert(ap(D)&&D.text===m,`Expected sourceFile.imports[${v}] to be the synthesized JSX runtime import`),D}function X8s(u){pe.assert(Te.importHelpers,"Expected importHelpers to be enabled");let m=u.imports[0];return pe.assert(m&&ap(m)&&m.text==="tslib","Expected sourceFile.imports[0] to be the synthesized tslib import"),m}}function Tvs(s){return!wB(s)}function jtn(s){return s.kind!==263&&s.kind!==175||!!s.body}function ztn(s){switch(s.parent.kind){case 277:case 282:return Ir(s)||s.kind===11;default:return KT(s)}}var pS;(s=>{s.JSX="JSX",s.IntrinsicElements="IntrinsicElements",s.ElementClass="ElementClass",s.ElementAttributesPropertyNameContainer="ElementAttributesProperty",s.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",s.Element="Element",s.ElementType="ElementType",s.IntrinsicAttributes="IntrinsicAttributes",s.IntrinsicClassAttributes="IntrinsicClassAttributes",s.LibraryManagedAttributes="LibraryManagedAttributes"})(pS||(pS={}));var jet;(s=>{s.Fragment="Fragment"})(jet||(jet={}));function qtn(s){switch(s){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function G0(s){return!!(s.flags&1)}function $tn(s){return!!(s.flags&2)}function Rvs(s){return{getCommonSourceDirectory:s.getCommonSourceDirectory?()=>s.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>s.getCurrentDirectory(),getSymlinkCache:$i(s,s.getSymlinkCache),getPackageJsonInfoCache:()=>{var c;return(c=s.getPackageJsonInfoCache)==null?void 0:c.call(s)},useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames(),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:c=>s.getRedirectFromSourceFile(c),isSourceOfProjectReferenceRedirect:c=>s.isSourceOfProjectReferenceRedirect(c),fileExists:c=>s.fileExists(c),getFileIncludeReasons:()=>s.getFileIncludeReasons(),readFile:s.readFile?c=>s.readFile(c):void 0,getDefaultResolutionModeForFile:c=>s.getDefaultResolutionModeForFile(c),getModeForResolutionAtIndex:(c,g)=>s.getModeForResolutionAtIndex(c,g),getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)}}var KPt=class Zki{constructor(c,g,d){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var h;g instanceof Zki;)g=g.inner;this.inner=g,this.moduleResolverHost=d,this.context=c,this.canTrackSymbol=!!((h=this.inner)!=null&&h.trackSymbol)}trackSymbol(c,g,d){var h,_;if((h=this.inner)!=null&&h.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(c,g,d))return this.onDiagnosticReported(),!0;c.flags&262144||((_=this.context).trackedSymbols??(_.trackedSymbols=[])).push([c,g,d])}return!1}reportInaccessibleThisError(){var c;(c=this.inner)!=null&&c.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(c){var g;(g=this.inner)!=null&&g.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(c))}reportInaccessibleUniqueSymbolError(){var c;(c=this.inner)!=null&&c.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var c;(c=this.inner)!=null&&c.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(c){var g;(g=this.inner)!=null&&g.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(c))}reportTruncationError(){var c;(c=this.inner)!=null&&c.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(c,g,d){var h;(h=this.inner)!=null&&h.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(c,g,d))}reportNonSerializableProperty(c){var g;(g=this.inner)!=null&&g.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(c))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(c){var g;(g=this.inner)!=null&&g.reportInferenceFallback&&!this.context.suppressReportInferenceFallback&&(this.onDiagnosticReported(),this.inner.reportInferenceFallback(c))}pushErrorFallbackNode(c){var g,d;return(d=(g=this.inner)==null?void 0:g.pushErrorFallbackNode)==null?void 0:d.call(g,c)}popErrorFallbackNode(){var c,g;return(g=(c=this.inner)==null?void 0:c.popErrorFallbackNode)==null?void 0:g.call(c)}};function Mr(s,c,g,d){if(s===void 0)return s;let h=c(s),_;if(h!==void 0)return Ki(h)?_=(d||Fvs)(h):_=h,pe.assertNode(_,g),_}function Os(s,c,g,d,h){if(s===void 0)return s;let _=s.length;(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d);let S,R=-1,T=-1;d>0||h<_?S=s.hasTrailingComma&&d+h===_:(R=s.pos,T=s.end,S=s.hasTrailingComma);let O=ern(s,c,g,d,h);if(O!==s){let V=me.createNodeArray(O,S);return GB(V,R,T),V}return s}function Pde(s,c,g,d,h){if(s===void 0)return s;let _=s.length;return(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d),ern(s,c,g,d,h)}function ern(s,c,g,d,h){let _,S=s.length;(d>0||h=2&&(h=Nvs(h,g)),g.setLexicalEnvironmentFlags(1,!1)),g.suspendLexicalEnvironment(),h}function Nvs(s,c){let g;for(let d=0;d{let S=dR,addSource:Rt,setSourceContent:Lt,addName:je,addMapping:Gt,appendSourceMap:it,toJSON:dt,toString:()=>JSON.stringify(dt())};function Rt(ot){_();let ir=Hf(d,ot,s.getCurrentDirectory(),s.getCanonicalFileName,!0),qt=O.get(ir);return qt===void 0&&(qt=T.length,T.push(ir),R.push(ot),O.set(ir,qt)),S(),qt}function Lt(ot,ir){if(_(),ir!==null){for(V||(V=[]);V.lengthir||Tt===ir&&at>qt)}function Gt(ot,ir,qt,Yt,Tr,mn){pe.assert(ot>=Ke,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),pe.assert(qt===void 0||qt>=0,"sourceIndex cannot be negative"),pe.assert(Yt===void 0||Yt>=0,"sourceLine cannot be negative"),pe.assert(Tr===void 0||Tr>=0,"sourceCharacter cannot be negative"),_(),(Wt(ot,ir)||_r(qt,Yt,Tr))&&(ur(),Ke=ot,et=ir,mt=!1,yt=!1,Ct=!0),qt!==void 0&&Yt!==void 0&&Tr!==void 0&&(Ye=qt,Tt=Yt,at=Tr,mt=!0,mn!==void 0&&(Qe=mn,yt=!0)),S()}function it(ot,ir,qt,Yt,Tr,mn){pe.assert(ot>=Ke,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),_();let jn=[],Zi,Ns=ttt(qt.mappings);for(let An of Ns){if(mn&&(An.generatedLine>mn.line||An.generatedLine===mn.line&&An.generatedCharacter>mn.character))break;if(Tr&&(An.generatedLine=1024&&Gr()}function ur(){if(!(!Ct||!Dt())){if(_(),Ie0&&(ge+=String.fromCharCode.apply(void 0,re),re.length=0)}function dt(){return ur(),Gr(),{version:3,file:c,sourceRoot:g,sources:T,names:M,mappings:ge,sourcesContent:V}}function pr(ot){ot<0?ot=(-ot<<1)+1:ot=ot<<1;do{let ir=ot&31;ot=ot>>5,ot>0&&(ir=ir|32),tr(Vvs(ir))}while(ot>0)}}var zPt=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,qet=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,$et=/^\s*(\/\/[@#] .*)?$/;function ett(s,c){return{getLineCount:()=>c.length,getLineText:g=>s.substring(c[g],c[g+1])}}function qPt(s){for(let c=s.getLineCount()-1;c>=0;c--){let g=s.getLineText(c),d=qet.exec(g);if(d)return d[1].trimEnd();if(!g.match($et))break}}function Zvs(s){return typeof s=="string"||s===null}function Lvs(s){return s!==null&&typeof s=="object"&&s.version===3&&typeof s.file=="string"&&typeof s.mappings=="string"&&Ki(s.sources)&&ue(s.sources,Xs)&&(s.sourceRoot===void 0||s.sourceRoot===null||typeof s.sourceRoot=="string")&&(s.sourcesContent===void 0||s.sourcesContent===null||Ki(s.sourcesContent)&&ue(s.sourcesContent,Zvs))&&(s.names===void 0||s.names===null||Ki(s.names)&&ue(s.names,Xs))}function $Pt(s){try{let c=JSON.parse(s);if(Lvs(c))return c}catch{}}function ttt(s){let c=!1,g=0,d=0,h=0,_=0,S=0,R=0,T=0,O;return{get pos(){return g},get error(){return O},get state(){return V(!0,!0)},next(){for(;!c&&g=s.length)return ee("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;let Ze=Wvs(s.charCodeAt(g));if(Ze===-1)return ee("Invalid character in VLQ"),-1;Ee=(Ze&32)!==0,Te=Te|(Ze&31)<>1,Te=-Te):Te=Te>>1,Te}}function trn(s,c){return s===c||s.generatedLine===c.generatedLine&&s.generatedCharacter===c.generatedCharacter&&s.sourceIndex===c.sourceIndex&&s.sourceLine===c.sourceLine&&s.sourceCharacter===c.sourceCharacter&&s.nameIndex===c.nameIndex}function e3t(s){return s.sourceIndex!==void 0&&s.sourceLine!==void 0&&s.sourceCharacter!==void 0}function Vvs(s){return s>=0&&s<26?65+s:s>=26&&s<52?97+s-26:s>=52&&s<62?48+s-52:s===62?43:s===63?47:pe.fail(`${s}: not a base64 value`)}function Wvs(s){return s>=65&&s<=90?s-65:s>=97&&s<=122?s-97+26:s>=48&&s<=57?s-48+52:s===43?62:s===47?63:-1}function rrn(s){return s.sourceIndex!==void 0&&s.sourcePosition!==void 0}function nrn(s,c){return s.generatedPosition===c.generatedPosition&&s.sourceIndex===c.sourceIndex&&s.sourcePosition===c.sourcePosition}function Ovs(s,c){return pe.assert(s.sourceIndex===c.sourceIndex),Zt(s.sourcePosition,c.sourcePosition)}function Pvs(s,c){return Zt(s.generatedPosition,c.generatedPosition)}function Mvs(s){return s.sourcePosition}function Hvs(s){return s.generatedPosition}function t3t(s,c,g){let d=Mo(g),h=c.sourceRoot?Xc(c.sourceRoot,d):d,_=Xc(c.file,d),S=s.getSourceFileLike(_),R=c.sources.map(Ne=>Xc(Ne,h)),T=new Map(R.map((Ne,Te)=>[s.getCanonicalFileName(Ne),Te])),O,V,M;return{getSourcePosition:Ee,getGeneratedPosition:_e};function ee(Ne){let Te=S!==void 0?ih(S,Ne.generatedLine,Ne.generatedCharacter,!0):-1,Ze,Pe;if(e3t(Ne)){let Ke=s.getSourceFileLike(R[Ne.sourceIndex]);Ze=c.sources[Ne.sourceIndex],Pe=Ke!==void 0?ih(Ke,Ne.sourceLine,Ne.sourceCharacter,!0):-1}return{generatedPosition:Te,source:Ze,sourceIndex:Ne.sourceIndex,sourcePosition:Pe,nameIndex:Ne.nameIndex}}function re(){if(O===void 0){let Ne=ttt(c.mappings),Te=Do(Ne,ee);Ne.error!==void 0?(s.log&&s.log(`Encountered error while decoding sourcemap: ${Ne.error}`),O=E):O=Te}return O}function ge(Ne){if(M===void 0){let Te=[];for(let Ze of re()){if(!rrn(Ze))continue;let Pe=Te[Ze.sourceIndex];Pe||(Te[Ze.sourceIndex]=Pe=[]),Pe.push(Ze)}M=Te.map(Ze=>al(Ze,Ovs,nrn))}return M[Ne]}function Ie(){if(V===void 0){let Ne=[];for(let Te of re())Ne.push(Te);V=al(Ne,Pvs,nrn)}return V}function _e(Ne){let Te=T.get(s.getCanonicalFileName(Ne.fileName));if(Te===void 0)return Ne;let Ze=ge(Te);if(!zt(Ze))return Ne;let Pe=vg(Ze,Ne.pos,Mvs,Zt);Pe<0&&(Pe=~Pe);let Ke=Ze[Pe];return Ke===void 0||Ke.sourceIndex!==Te?Ne:{fileName:_,pos:Ke.generatedPosition}}function Ee(Ne){let Te=Ie();if(!zt(Te))return Ne;let Ze=vg(Te,Ne.pos,Hvs,Zt);Ze<0&&(Ze=~Ze);let Pe=Te[Ze];return Pe===void 0||!rrn(Pe)?Ne:{fileName:R[Pe.sourceIndex],pos:Pe.sourcePosition}}}var rtt={getSourcePosition:Zl,getGeneratedPosition:Zl};function Hy(s){return s=xd(s),s?id(s):0}function irn(s){return!s||!wN(s)&&!Ev(s)?!1:zt(s.elements,srn)}function srn(s){return pv(s.propertyName||s.name)}function cR(s,c){return g;function g(h){return h.kind===308?c(h):d(h)}function d(h){return s.factory.createBundle(lt(h.sourceFiles,c))}}function r3t(s){return!!aU(s)}function lVe(s){if(aU(s))return!0;let c=s.importClause&&s.importClause.namedBindings;if(!c||!wN(c))return!1;let g=0;for(let d of c.elements)srn(d)&&g++;return g>0&&g!==c.elements.length||!!(c.elements.length-g)&&B3(s)}function ntt(s){return!lVe(s)&&(B3(s)||!!s.importClause&&wN(s.importClause.namedBindings)&&irn(s.importClause.namedBindings))}function itt(s,c){let g=s.getEmitResolver(),d=s.getCompilerOptions(),h=[],_=new Yvs,S=[],R=new Map,T=new Set,O,V=!1,M,ee=!1,re=!1,ge=!1;for(let Ne of c.statements)switch(Ne.kind){case 273:h.push(Ne),!re&&lVe(Ne)&&(re=!0),!ge&&ntt(Ne)&&(ge=!0);break;case 272:Ne.moduleReference.kind===284&&h.push(Ne);break;case 279:if(Ne.moduleSpecifier)if(!Ne.exportClause)h.push(Ne),ee=!0;else if(h.push(Ne),Ev(Ne.exportClause))_e(Ne),ge||(ge=irn(Ne.exportClause));else{let Te=Ne.exportClause.name,Ze=KD(Te);R.get(Ze)||(Mde(S,Hy(Ne),Te),R.set(Ze,!0),O=Ft(O,Te)),re=!0}else _e(Ne);break;case 278:Ne.isExportEquals&&!M&&(M=Ne);break;case 244:if(Ga(Ne,32))for(let Te of Ne.declarationList.declarations)O=orn(Te,R,O,S);break;case 263:Ga(Ne,32)&&Ee(Ne,void 0,Ga(Ne,2048));break;case 264:if(Ga(Ne,32))if(Ga(Ne,2048))V||(Mde(S,Hy(Ne),s.factory.getDeclarationName(Ne)),V=!0);else{let Te=Ne.name;Te&&!R.get(Vo(Te))&&(Mde(S,Hy(Ne),Te),R.set(Vo(Te),!0),O=Ft(O,Te))}break}let Ie=j$e(s.factory,s.getEmitHelperFactory(),c,d,ee,re,ge);return Ie&&h.unshift(Ie),{externalImports:h,exportSpecifiers:_,exportEquals:M,hasExportStarsToExportValues:ee,exportedBindings:S,exportedNames:O,exportedFunctions:T,externalHelpersImportDeclaration:Ie};function _e(Ne){for(let Te of Ma(Ne.exportClause,Ev).elements){let Ze=KD(Te.name);if(!R.get(Ze)){let Pe=Te.propertyName||Te.name;if(Pe.kind!==11){Ne.moduleSpecifier||_.add(Pe,Te);let Ke=g.getReferencedImportDeclaration(Pe)||g.getReferencedValueDeclaration(Pe);if(Ke){if(Ke.kind===263){Ee(Ke,Te.name,pv(Te.name));continue}Mde(S,Hy(Ke),Te.name)}}R.set(Ze,!0),O=Ft(O,Te.name)}}}function Ee(Ne,Te,Ze){if(T.add(xd(Ne,ah)),Ze)V||(Mde(S,Hy(Ne),Te??s.factory.getDeclarationName(Ne)),V=!0);else{Te??(Te=Ne.name);let Pe=KD(Te);R.get(Pe)||(Mde(S,Hy(Ne),Te),R.set(Pe,!0))}}}function orn(s,c,g,d){if(Nu(s.name))for(let h of s.name.elements)Ep(h)||(g=orn(h,c,g,d));else if(!Gp(s.name)){let h=Vo(s.name);c.get(h)||(c.set(h,!0),g=Ft(g,s.name),QF(s.name)&&Mde(d,Hy(s),s.name))}return g}function Mde(s,c,g){let d=s[c];return d?d.push(g):s[c]=d=[g],d}var Jie=class qce{constructor(){this._map=new Map}get size(){return this._map.size}has(c){return this._map.has(qce.toKey(c))}get(c){return this._map.get(qce.toKey(c))}set(c,g){return this._map.set(qce.toKey(c),g),this}delete(c){var g;return((g=this._map)==null?void 0:g.delete(qce.toKey(c)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(c){if(ZL(c)||Gp(c)){let g=c.emitNode.autoGenerate;if((g.flags&7)===4){let d=ZEe(c),h=Bw(d)&&d!==c?qce.toKey(d):`(generated@${id(d)})`;return z3(!1,g.prefix,h,g.suffix,qce.toKey)}else{let d=`(auto@${g.id})`;return z3(!1,g.prefix,d,g.suffix,qce.toKey)}}return p(c)?Vo(c).slice(1):Vo(c)}},Yvs=class extends Jie{add(s,c){let g=this.get(s);return g?g.push(c):this.set(s,g=[c]),g}remove(s,c){let g=this.get(s);g&&(rf(g,c),g.length||this.delete(s))}};function yQ(s){return _A(s)||s.kind===9||T0(s.kind)||Ir(s)}function kN(s){return!Ir(s)&&yQ(s)}function Hde(s){return s>=65&&s<=79}function Yde(s){switch(s){case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 45;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 75:return 52;case 79:return 53;case 76:return 57;case 77:return 56;case 78:return 61}}function uVe(s){if(!PC(s))return;let c=JA(s.expression);return Gy(c)?c:void 0}function arn(s,c,g){for(let d=c;dXvs(d,c,g))}function Qvs(s){return Jvs(s)||dl(s)}function AVe(s){return Le(s.members,Qvs)}function Xvs(s,c,g){return pi(s)&&(!!s.initializer||!c)&&tm(s)===g}function Jvs(s){return pi(s)&&tm(s)}function r1e(s){return s.kind===173&&s.initializer!==void 0}function n3t(s){return!lg(s)&&(VL(s)||i0(s))&&p(s.name)}function i3t(s){let c;if(s){let g=s.parameters,d=g.length>0&&DF(g[0]),h=d?1:0,_=d?g.length-1:g.length;for(let S=0;S<_;S++){let R=g[S+h];(c||m1(R))&&(c||(c=new Array(_)),c[S]=kb(R))}}return c}function ott(s,c){let g=kb(s),d=c?i3t(fN(s)):void 0;if(!(!zt(g)&&!zt(d)))return{decorators:g,parameters:d}}function dVe(s,c,g){switch(s.kind){case 178:case 179:return g?Uvs(s,c,!0):crn(s,!1);case 175:return crn(s,g);case 173:return Kvs(s);default:return}}function Uvs(s,c,g){if(!s.body)return;let{firstAccessor:d,secondAccessor:h,getAccessor:_,setAccessor:S}=FW(c.members,s),R=m1(d)?d:h&&m1(h)?h:void 0;if(!R||s!==R)return;let T=kb(R),O=g?i3t(S):void 0;if(!(!zt(T)&&!zt(O)))return{decorators:T,parameters:O,getDecorators:_&&kb(_),setDecorators:S&&kb(S)}}function crn(s,c){if(!s.body)return;let g=kb(s),d=c?i3t(s):void 0;if(!(!zt(g)&&!zt(d)))return{decorators:g,parameters:d}}function Kvs(s){let c=kb(s);if(zt(c))return{decorators:c}}function jvs(s,c){for(;s;){let g=c(s);if(g!==void 0)return g;s=s.previous}}function s3t(s){return{data:s}}function att(s,c){var g,d;return ZL(c)?(g=s?.generatedIdentifiers)==null?void 0:g.get(ZEe(c)):(d=s?.identifiers)==null?void 0:d.get(c.escapedText)}function PU(s,c,g){ZL(c)?(s.generatedIdentifiers??(s.generatedIdentifiers=new Map),s.generatedIdentifiers.set(ZEe(c),g)):(s.identifiers??(s.identifiers=new Map),s.identifiers.set(c.escapedText,g))}function o3t(s,c){return jvs(s,g=>att(g.privateEnv,c))}function zvs(s){return!s.initializer&&Ir(s.name)}function n1e(s){return ue(s,zvs)}function Qz(s,c){if(!s||!Lg(s)||!vne(s.text,c))return s;let g=yN(s.text,u1e(s.text,c));return g!==s.text?ua(gn(me.createStringLiteral(g,s.singleQuote),s),s):s}var a3t=(s=>(s[s.All=0]="All",s[s.ObjectRest=1]="ObjectRest",s))(a3t||{});function MU(s,c,g,d,h,_){let S=s,R;if(Lx(s))for(R=s.right;ALe(s.left)||Sbe(s.left);)if(Lx(R))S=s=R,R=s.right;else return pe.checkDefined(Mr(R,c,un));let T,O={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:V,emitBindingOrAssignment:M,createArrayBindingOrAssignmentPattern:ee=>sBs(g.factory,ee),createObjectBindingOrAssignmentPattern:ee=>aBs(g.factory,ee),createArrayBindingOrAssignmentElement:lBs,visitor:c};if(R&&(R=Mr(R,c,un),pe.assert(R),Ir(R)&&c3t(s,R.escapedText)||l3t(s)?R=Xz(O,R,!1,S):h?R=Xz(O,R,!0,S):ap(s)&&(S=R)),Qde(O,s,R,S,Lx(s)),R&&h){if(!zt(T))return R;T.push(R)}return g.factory.inlineExpressions(T)||g.factory.createOmittedExpression();function V(ee){T=Ft(T,ee)}function M(ee,re,ge,Ie){pe.assertNode(ee,_?Ir:un);let _e=_?_(ee,re,ge):gn(g.factory.createAssignment(pe.checkDefined(Mr(ee,c,un)),re),ge);_e.original=Ie,V(_e)}}function c3t(s,c){let g=QW(s);return FJ(g)?qvs(g,c):Ir(g)?g.escapedText===c:!1}function qvs(s,c){let g=Lie(s);for(let d of g)if(c3t(d,c))return!0;return!1}function l3t(s){let c=N9e(s);if(c&&Un(c)&&!FL(c.expression))return!0;let g=QW(s);return!!g&&FJ(g)&&$vs(g)}function $vs(s){return!!F(Lie(s),l3t)}function bQ(s,c,g,d,h,_=!1,S){let R,T=[],O=[],V={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:_,emitExpression:M,emitBindingOrAssignment:ee,createArrayBindingOrAssignmentPattern:re=>iBs(g.factory,re),createObjectBindingOrAssignmentPattern:re=>oBs(g.factory,re),createArrayBindingOrAssignmentElement:re=>cBs(g.factory,re),visitor:c};if(nc(s)){let re=GEe(s);re&&(Ir(re)&&c3t(s,re.escapedText)||l3t(s))&&(re=Xz(V,pe.checkDefined(Mr(re,V.visitor,un)),!1,re),s=g.factory.updateVariableDeclaration(s,s.name,void 0,void 0,re))}if(Qde(V,s,h,s,S),R){let re=g.factory.createTempVariable(void 0);if(_){let ge=g.factory.inlineExpressions(R);R=void 0,ee(re,ge,void 0,void 0)}else{g.hoistVariableDeclaration(re);let ge=Ei(T);ge.pendingExpressions=Ft(ge.pendingExpressions,g.factory.createAssignment(re,ge.value)),Pr(ge.pendingExpressions,R),ge.value=re}}for(let{pendingExpressions:re,name:ge,value:Ie,location:_e,original:Ee}of T){let Ne=g.factory.createVariableDeclaration(ge,void 0,void 0,re?g.factory.inlineExpressions(Ft(re,Ie)):Ie);Ne.original=Ee,gn(Ne,_e),O.push(Ne)}return O;function M(re){R=Ft(R,re)}function ee(re,ge,Ie,_e){pe.assertNode(re,LL),R&&(ge=g.factory.inlineExpressions(Ft(R,ge)),R=void 0),T.push({pendingExpressions:R,name:re,value:ge,location:Ie,original:_e})}}function Qde(s,c,g,d,h){let _=QW(c);if(!h){let S=Mr(GEe(c),s.visitor,un);S?g?(g=rBs(s,g,S,d),!kN(S)&&FJ(_)&&(g=Xz(s,g,!0,d))):g=S:g||(g=s.context.factory.createVoidZero())}ZJ(_)?eBs(s,c,_,g,d):Pre(_)?tBs(s,c,_,g,d):s.emitBindingOrAssignment(_,g,d,c)}function eBs(s,c,g,d,h){let _=Lie(g),S=_.length;if(S!==1){let O=!CW(c)||S!==0;d=Xz(s,d,O,h)}let R,T;for(let O=0;O=1&&!(V.transformFlags&98304)&&!(QW(V).transformFlags&98304)&&!Un(M))R=Ft(R,Mr(V,s.visitor,GJ));else{R&&(s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g),R=void 0);let ee=nBs(s,d,M);Un(M)&&(T=Ft(T,ee.argumentExpression)),Qde(s,V,ee,V)}}}R&&s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g)}function tBs(s,c,g,d,h){let _=Lie(g),S=_.length;if(s.level<1&&s.downlevelIteration)d=Xz(s,gn(s.context.getEmitHelperFactory().createReadHelper(d,S>0&&R9e(_[S-1])?void 0:S),h),!1,h);else if(S!==1&&(s.level<1||S===0)||ue(_,Ep)){let O=!CW(c)||S!==0;d=Xz(s,d,O,h)}let R,T;for(let O=0;O=1)if(V.transformFlags&65536||s.hasTransformedPriorElement&&!lrn(V)){s.hasTransformedPriorElement=!0;let M=s.context.factory.createTempVariable(void 0);s.hoistTempVariables&&s.context.hoistVariableDeclaration(M),T=Ft(T,[M,V]),R=Ft(R,s.createArrayBindingOrAssignmentElement(M))}else R=Ft(R,V);else{if(Ep(V))continue;if(R9e(V)){if(O===S-1){let M=s.context.factory.createArraySliceCall(d,O);Qde(s,V,M,V)}}else{let M=s.context.factory.createElementAccessExpression(d,O);Qde(s,V,M,V)}}}if(R&&s.emitBindingOrAssignment(s.createArrayBindingOrAssignmentPattern(R),d,h,g),T)for(let[O,V]of T)Qde(s,V,O,V)}function lrn(s){let c=QW(s);if(!c||Ep(c))return!0;let g=N9e(s);if(g&&!Gw(g))return!1;let d=GEe(s);return d&&!kN(d)?!1:FJ(c)?ue(Lie(c),lrn):Ir(c)}function rBs(s,c,g,d){return c=Xz(s,c,!0,d),s.context.factory.createConditionalExpression(s.context.factory.createTypeCheck(c,"undefined"),void 0,g,void 0,c)}function nBs(s,c,g){let{factory:d}=s.context;if(Un(g)){let h=Xz(s,pe.checkDefined(Mr(g.expression,s.visitor,un)),!1,g);return s.context.factory.createElementAccessExpression(c,h)}else if(h1(g)||AQ(g)){let h=d.cloneNode(g);return s.context.factory.createElementAccessExpression(c,h)}else{let h=s.context.factory.createIdentifier(Vo(g));return s.context.factory.createPropertyAccessExpression(c,h)}}function Xz(s,c,g,d){if(Ir(c)&&g)return c;{let h=s.context.factory.createTempVariable(void 0);return s.hoistTempVariables?(s.context.hoistVariableDeclaration(h),s.emitExpression(gn(s.context.factory.createAssignment(h,c),d))):s.emitBindingOrAssignment(h,c,d,void 0),h}}function iBs(s,c){return pe.assertEachNode(c,f3),s.createArrayBindingPattern(c)}function sBs(s,c){return pe.assertEachNode(c,LJ),s.createArrayLiteralExpression(lt(c,s.converters.convertToArrayAssignmentElement))}function oBs(s,c){return pe.assertEachNode(c,mg),s.createObjectBindingPattern(c)}function aBs(s,c){return pe.assertEachNode(c,_W),s.createObjectLiteralExpression(lt(c,s.converters.convertToObjectAssignmentElement))}function cBs(s,c){return s.createBindingElement(void 0,void 0,c)}function lBs(s){return s}function uBs(s,c,g=s.createThis()){let d=s.createAssignment(c,g),h=s.createExpressionStatement(d),_=s.createBlock([h],!1),S=s.createClassStaticBlockDeclaration(_);return g_(S).classThis=c,S}function Xde(s){var c;if(!dl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return PC(g)&&zm(g.expression,!0)&&Ir(g.expression.left)&&((c=s.emitNode)==null?void 0:c.classThis)===g.expression.left&&g.expression.right.kind===110}function ctt(s){var c;return!!((c=s.emitNode)!=null&&c.classThis)&&zt(s.members,Xde)}function u3t(s,c,g,d){if(ctt(c))return c;let h=uBs(s,g,d);c.name&&Yg(h.body.statements[0],c.name);let _=s.createNodeArray([h,...c.members]);gn(_,c.members);let S=mm(c)?s.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_):s.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_);return g_(S).classThis=g,S}function pVe(s,c,g){let d=xd(XI(g));return(mm(d)||ah(d))&&!d.name&&Ga(d,2048)?s.createStringLiteral("default"):s.createStringLiteralFromNode(c)}function urn(s,c,g){let{factory:d}=s;if(g!==void 0)return{assignedName:d.createStringLiteral(g),name:c};if(Gw(c)||p(c))return{assignedName:d.createStringLiteralFromNode(c),name:c};if(Gw(c.expression)&&!Ir(c.expression))return{assignedName:d.createStringLiteralFromNode(c.expression),name:c};let h=d.getGeneratedNameForNode(c);s.hoistVariableDeclaration(h);let _=s.getEmitHelperFactory().createPropKeyHelper(c.expression),S=d.createAssignment(h,_),R=d.updateComputedPropertyName(c,S);return{assignedName:h,name:R}}function gBs(s,c,g=s.factory.createThis()){let{factory:d}=s,h=s.getEmitHelperFactory().createSetFunctionNameHelper(g,c),_=d.createExpressionStatement(h),S=d.createBlock([_],!1),R=d.createClassStaticBlockDeclaration(S);return g_(R).assignedName=c,R}function Jz(s){var c;if(!dl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return PC(g)&&ik(g.expression,"___setFunctionName")&&g.expression.arguments.length>=2&&g.expression.arguments[1]===((c=s.emitNode)==null?void 0:c.assignedName)}function fVe(s){var c;return!!((c=s.emitNode)!=null&&c.assignedName)&&zt(s.members,Jz)}function ltt(s){return!!s.name||fVe(s)}function IVe(s,c,g,d){if(fVe(c))return c;let{factory:h}=s,_=gBs(s,g,d);c.name&&Yg(_.body.statements[0],c.name);let S=Se(c.members,Xde)+1,R=c.members.slice(0,S),T=c.members.slice(S),O=h.createNodeArray([...R,_,...T]);return gn(O,c.members),c=mm(c)?h.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,O):h.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,O),g_(c).assignedName=g,c}function Uie(s,c,g,d){if(d&&Lg(g)&&Oye(g))return c;let{factory:h}=s,_=XI(c),S=wd(_)?Ma(IVe(s,_,g),wd):s.getEmitHelperFactory().createSetFunctionNameHelper(_,g);return h.restoreOuterExpressions(c,S)}function ABs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=urn(s,c.name,d),R=Uie(s,c.initializer,_,g);return h.updatePropertyAssignment(c,S,R)}function dBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.objectAssignmentInitializer),S=Uie(s,c.objectAssignmentInitializer,_,g);return h.updateShorthandPropertyAssignment(c,c.name,S)}function pBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.initializer),S=Uie(s,c.initializer,_,g);return h.updateVariableDeclaration(c,c.name,c.exclamationToken,c.type,S)}function fBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.initializer),S=Uie(s,c.initializer,_,g);return h.updateParameterDeclaration(c,c.modifiers,c.dotDotDotToken,c.name,c.questionToken,c.type,S)}function IBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.name,c.initializer),S=Uie(s,c.initializer,_,g);return h.updateBindingElement(c,c.dotDotDotToken,c.propertyName,c.name,S)}function hBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=urn(s,c.name,d),R=Uie(s,c.initializer,_,g);return h.updatePropertyDeclaration(c,c.modifiers,S,c.questionToken??c.exclamationToken,c.type,R)}function mBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):pVe(h,c.left,c.right),S=Uie(s,c.right,_,g);return h.updateBinaryExpression(c,c.left,c.operatorToken,S)}function CBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):h.createStringLiteral(c.isExportEquals?"":"default"),S=Uie(s,c.expression,_,g);return h.updateExportAssignment(c,c.modifiers,S)}function b1(s,c,g,d){switch(c.kind){case 304:return ABs(s,c,g,d);case 305:return dBs(s,c,g,d);case 261:return pBs(s,c,g,d);case 170:return fBs(s,c,g,d);case 209:return IBs(s,c,g,d);case 173:return hBs(s,c,g,d);case 227:return mBs(s,c,g,d);case 278:return CBs(s,c,g,d)}}var g3t=(s=>(s[s.LiftRestriction=0]="LiftRestriction",s[s.All=1]="All",s))(g3t||{});function utt(s,c,g,d,h,_){let S=Mr(c.tag,g,un);pe.assert(S);let R=[void 0],T=[],O=[],V=c.template;if(_===0&&!abe(V))return _s(c,g,s);let{factory:M}=s;if(HW(V))T.push(A3t(M,V)),O.push(d3t(M,V,d));else{T.push(A3t(M,V.head)),O.push(d3t(M,V.head,d));for(let re of V.templateSpans)T.push(A3t(M,re.literal)),O.push(d3t(M,re.literal,d)),R.push(pe.checkDefined(Mr(re.expression,g,un)))}let ee=s.getEmitHelperFactory().createTemplateObjectHelper(M.createArrayLiteralExpression(T),M.createArrayLiteralExpression(O));if(Lm(d)){let re=M.createUniqueName("templateObject");h(re),R[0]=M.createLogicalOr(re,M.createAssignment(re,ee))}else R[0]=ee;return M.createCallExpression(S,void 0,R)}function A3t(s,c){return c.templateFlags&26656?s.createVoidZero():s.createStringLiteral(c.text)}function d3t(s,c,g){let d=c.rawText;if(d===void 0){pe.assertIsDefined(g,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),d=vF(g,c);let h=c.kind===15||c.kind===18;d=d.substring(1,d.length-(h?1:2))}return d=d.replace(/\r\n?/g,` +`),gn(s.createStringLiteral(d),c)}var _Bs=!1;function p3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getEmitResolver(),T=s.getCompilerOptions(),O=Hg(T),V=a0(T),M=!!T.experimentalDecorators,ee=T.emitDecoratorMetadata?I3t(s):void 0,re=s.onEmitNode,ge=s.onSubstituteNode;s.onEmitNode=mS,s.onSubstituteNode=Au,s.enableSubstitution(212),s.enableSubstitution(213);let Ie,_e,Ee,Ne,Te,Ze=0,Pe;return Ke;function Ke(ve){return ve.kind===309?et(ve):Ye(ve)}function et(ve){return c.createBundle(ve.sourceFiles.map(Ye))}function Ye(ve){if(ve.isDeclarationFile)return ve;Ie=ve;let mr=Tt(ve,pr);return EN(mr,s.readEmitHelpers()),Ie=void 0,mr}function Tt(ve,mr){let ln=Ne,ni=Te;at(ve);let Ls=mr(ve);return Ne!==ln&&(Te=ni),Ne=ln,Ls}function at(ve){switch(ve.kind){case 308:case 270:case 269:case 242:Ne=ve,Te=void 0;break;case 264:case 263:if(Ga(ve,128))break;ve.name?fr(ve):pe.assert(ve.kind===264||Ga(ve,2048));break}}function Qe(ve){return Tt(ve,Ct)}function Ct(ve){return ve.transformFlags&1?dt(ve):ve}function mt(ve){return Tt(ve,yt)}function yt(ve){switch(ve.kind){case 273:case 272:case 278:case 279:return Lt(ve);default:return Ct(ve)}}function Rt(ve){let mr=eu(ve);if(mr===ve||yf(ve))return!1;if(!mr||mr.kind!==ve.kind)return!0;switch(ve.kind){case 273:if(pe.assertNode(mr,Yf),ve.importClause!==mr.importClause||ve.attributes!==mr.attributes)return!0;break;case 272:if(pe.assertNode(mr,Zm),ve.name!==mr.name||ve.isTypeOnly!==mr.isTypeOnly||ve.moduleReference!==mr.moduleReference&&(mC(ve.moduleReference)||mC(mr.moduleReference)))return!0;break;case 279:if(pe.assertNode(mr,Vh),ve.exportClause!==mr.exportClause||ve.attributes!==mr.attributes)return!0;break}return!1}function Lt(ve){if(Rt(ve))return ve.transformFlags&1?_s(ve,Qe,s):ve;switch(ve.kind){case 273:return oo(ve);case 272:return gs(ve);case 278:return Bn(ve);case 279:return Mn(ve);default:pe.fail("Unhandled ellided statement")}}function je(ve){return Tt(ve,Wt)}function Wt(ve){if(!(ve.kind===279||ve.kind===273||ve.kind===274||ve.kind===272&&ve.moduleReference.kind===284))return ve.transformFlags&1||Ga(ve,32)?dt(ve):ve}function _r(ve){return mr=>Tt(mr,ln=>Gt(ln,ve))}function Gt(ve,mr){switch(ve.kind){case 177:return hn(ve);case 173:return yr(ve,mr);case 178:return Qu(ve,mr);case 179:return Rg(ve,mr);case 175:return Pa(ve,mr);case 176:return _s(ve,Qe,s);case 241:return ve;case 182:return;default:return pe.failBadSyntaxKind(ve)}}function it(ve){return mr=>Tt(mr,ln=>Dt(ln,ve))}function Dt(ve,mr){switch(ve.kind){case 304:case 305:case 306:return Qe(ve);case 178:return Qu(ve,mr);case 179:return Rg(ve,mr);case 175:return Pa(ve,mr);default:return pe.failBadSyntaxKind(ve)}}function tr(ve){return Eo(ve)?void 0:Qe(ve)}function ur(ve){return hg(ve)?void 0:Qe(ve)}function Gr(ve){if(!Eo(ve)&&!(tQ(ve.kind)&28895)&&!(_e&&ve.kind===95))return ve}function dt(ve){if(Lc(ve)&&Ga(ve,128))return c.createNotEmittedStatement(ve);switch(ve.kind){case 95:case 90:return _e?void 0:ve;case 125:case 123:case 124:case 128:case 164:case 87:case 138:case 148:case 103:case 147:case 189:case 190:case 191:case 192:case 188:case 183:case 169:case 133:case 159:case 136:case 154:case 150:case 146:case 116:case 155:case 186:case 185:case 187:case 184:case 193:case 194:case 195:case 197:case 198:case 199:case 200:case 201:case 202:case 182:return;case 266:return c.createNotEmittedStatement(ve);case 271:return;case 265:return c.createNotEmittedStatement(ve);case 264:return Tr(ve);case 232:return mn(ve);case 299:return ba(ve);case 234:return Oo(ve);case 211:return ot(ve);case 177:case 173:case 175:case 178:case 179:case 176:return pe.fail("Class and object literal elements must be visited with their respective visitors");case 263:return Cs(ve);case 219:return Tu(ve);case 220:return Wr(ve);case 170:return Wn(ve);case 218:return nr(ve);case 217:case 235:return Zr(ve);case 239:return Dn(ve);case 214:return hr(ve);case 215:return En(ve);case 216:return Ni(ve);case 236:return Kr(ve);case 267:return ds(ve);case 244:return pt(ve);case 261:return st(ve);case 268:return Mt(ve);case 272:return gs(ve);case 286:return Gi(ve);case 287:return nn(ve);default:return _s(ve,Qe,s)}}function pr(ve){let mr=u_(T,"alwaysStrict")&&!(Lm(ve)&&V>=5)&&!Zu(ve);return c.updateSourceFile(ve,zet(ve.statements,mt,s,0,mr))}function ot(ve){return c.updateObjectLiteralExpression(ve,Os(ve.properties,it(ve),ww))}function ir(ve){let mr=0;zt(stt(ve,!0,!0))&&(mr|=1);let ln=kB(ve);return ln&&XI(ln.expression).kind!==106&&(mr|=64),Fx(M,ve)&&(mr|=2),nU(M,ve)&&(mr|=4),fs(ve)?mr|=8:Ag(ve)?mr|=32:mc(ve)&&(mr|=16),mr}function qt(ve){return!!(ve.transformFlags&8192)}function Yt(ve){return m1(ve)||zt(ve.typeParameters)||zt(ve.heritageClauses,qt)||zt(ve.members,qt)}function Tr(ve){let mr=ir(ve),ln=O<=1&&!!(mr&7);if(!Yt(ve)&&!Fx(M,ve)&&!fs(ve))return c.updateClassDeclaration(ve,Os(ve.modifiers,Gr,hg),ve.name,void 0,Os(ve.heritageClauses,Qe,y1),Os(ve.members,_r(ve),MI));ln&&s.startLexicalEnvironment();let ni=ln||mr&8,Ls=ni?Os(ve.modifiers,ur,fp):Os(ve.modifiers,Qe,fp);mr&2&&(Ls=Zi(Ls,ve));let Go=ni&&!ve.name||mr&4||mr&1?ve.name??c.getGeneratedNameForNode(ve):ve.name,Ss=c.updateClassDeclaration(ve,Ls,Go,void 0,Os(ve.heritageClauses,Qe,y1),jn(ve)),Uc=rA(ve);mr&1&&(Uc|=64),ti(Ss,Uc);let el;if(ln){let Fd=[Ss],Vg=qL(Yu(Ie.text,ve.members.end),20),Ef=c.getInternalName(ve),om=c.createPartiallyEmittedExpression(Ef);BU(om,Vg.end),ti(om,3072);let Sh=c.createReturnStatement(om);Cz(Sh,Vg.pos),ti(Sh,3840),Fd.push(Sh),Nw(Fd,s.endLexicalEnvironment());let Zp=c.createImmediatelyInvokedArrowFunction(Fd);_ie(Zp,1);let lh=c.createVariableDeclaration(c.getLocalName(ve,!1,!1),void 0,void 0,Zp);ua(lh,ve);let B1=c.createVariableStatement(void 0,c.createVariableDeclarationList([lh],1));ua(B1,ve),yh(B1,ve),Yg(B1,rk(ve)),x0(B1),el=B1}else el=Ss;if(ni){if(mr&8)return[el,dg(ve)];if(mr&32)return[el,c.createExportDefault(c.getLocalName(ve,!1,!0))];if(mr&16)return[el,c.createExternalModuleExport(c.getDeclarationName(ve,!1,!0))]}return el}function mn(ve){let mr=Os(ve.modifiers,ur,fp);return Fx(M,ve)&&(mr=Zi(mr,ve)),c.updateClassExpression(ve,mr,ve.name,void 0,Os(ve.heritageClauses,Qe,y1),jn(ve))}function jn(ve){let mr=Os(ve.members,_r(ve),MI),ln,ni=fN(ve),Ls=ni&&Le(ni.parameters,Za=>We(Za,ni));if(Ls)for(let Za of Ls){let Go=c.createPropertyDeclaration(void 0,Za.name,void 0,void 0,void 0);ua(Go,Za),ln=Ft(ln,Go)}return ln?(ln=Pr(ln,mr),gn(c.createNodeArray(ln),ve.members)):mr}function Zi(ve,mr){let ln=An(mr,mr);if(zt(ln)){let ni=[];Pr(ni,i_(ve,FEe)),Pr(ni,Le(ve,Eo)),Pr(ni,ln),Pr(ni,Le(up(ve,FEe),hg)),ve=gn(c.createNodeArray(ni),ve)}return ve}function Ns(ve,mr,ln){if(xa(ln)&&Wye(M,mr,ln)){let ni=An(mr,ln);if(zt(ni)){let Ls=[];Pr(Ls,Le(ve,Eo)),Pr(Ls,ni),Pr(Ls,Le(ve,hg)),ve=gn(c.createNodeArray(Ls),ve)}}return ve}function An(ve,mr){if(M)return _Bs?ks(ve,mr):si(ve,mr)}function si(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=g().createMetadataHelper("design:type",ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(Zn(ve)){let ni=g().createMetadataHelper("design:paramtypes",ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(ou(ve)){let ni=g().createMetadataHelper("design:returntype",ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve));ln=Ft(ln,c.createDecorator(ni))}return ln}}function ks(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=c.createPropertyAssignment("type",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(Zn(ve)){let ni=c.createPropertyAssignment("paramTypes",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(ou(ve)){let ni=c.createPropertyAssignment("returnType",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve)));ln=Ft(ln,ni)}if(ln){let ni=g().createMetadataHelper("design:typeinfo",c.createObjectLiteralExpression(ln,!0));return[c.createDecorator(ni)]}}}function Ic(ve){let mr=ve.kind;return mr===175||mr===178||mr===179||mr===173}function ou(ve){return ve.kind===175}function Zn(ve){switch(ve.kind){case 264:case 232:return fN(ve)!==void 0;case 175:case 178:case 179:return!0}return!1}function ya(ve,mr){let ln=ve.name;return p(ln)?c.createIdentifier(""):Un(ln)?mr&&!kN(ln.expression)?c.getGeneratedNameForNode(ln):ln.expression:Ir(ln)?c.createStringLiteral(Vo(ln)):c.cloneNode(ln)}function Fl(ve){let mr=ve.name;if(M&&Un(mr)&&m1(ve)){let ln=Mr(mr.expression,Qe,un);pe.assert(ln);let ni=u2(ln);if(!kN(ni)){let Ls=c.getGeneratedNameForNode(mr);return S(Ls),c.updateComputedPropertyName(mr,c.createAssignment(Ls,ln))}}return pe.checkDefined(Mr(mr,Qe,PI))}function ba(ve){if(ve.token!==119)return _s(ve,Qe,s)}function Oo(ve){return c.updateExpressionWithTypeArguments(ve,pe.checkDefined(Mr(ve.expression,Qe,G_)),void 0)}function hc(ve){return!af(ve.body)}function yr(ve,mr){let ln=ve.flags&33554432||Ga(ve,64);if(ln&&!(M&&m1(ve)))return;let ni=xa(mr)?ln?Os(ve.modifiers,ur,fp):Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ni=Ns(ni,ve,mr),ln?c.updatePropertyDeclaration(ve,Nn(ni,c.createModifiersFromModifierFlags(128)),pe.checkDefined(Mr(ve.name,Qe,PI)),void 0,void 0,void 0):c.updatePropertyDeclaration(ve,ni,Fl(ve),void 0,void 0,Mr(ve.initializer,Qe,un))}function hn(ve){if(hc(ve))return c.updateConstructorDeclaration(ve,void 0,wI(ve.parameters,Qe,s),co(ve.body,ve))}function Pi(ve,mr,ln,ni,Ls,Za){let Go=ni[Ls],Ss=mr[Go];if(Pr(ve,Os(mr,Qe,Lc,ln,Go-ln)),kU(Ss)){let Uc=[];Pi(Uc,Ss.tryBlock.statements,0,ni,Ls+1,Za);let el=c.createNodeArray(Uc);gn(el,Ss.tryBlock.statements),ve.push(c.updateTryStatement(Ss,c.updateBlock(Ss.tryBlock,Uc),Mr(Ss.catchClause,Qe,IQ),Mr(Ss.finallyBlock,Qe,eg)))}else Pr(ve,Os(mr,Qe,Lc,Go,1)),Pr(ve,Za);Pr(ve,Os(mr,Qe,Lc,Go+1))}function co(ve,mr){let ln=mr&&Le(mr.parameters,Uc=>We(Uc,mr));if(!zt(ln))return fS(ve,Qe,s);let ni=[];h();let Ls=c.copyPrologue(ve.statements,ni,!1,Qe),Za=gVe(ve.statements,Ls),Go=Xt(ln,pa);Za.length?Pi(ni,ve.statements,Ls,Za,0,Go):(Pr(ni,Go),Pr(ni,Os(ve.statements,Qe,Lc,Ls))),ni=c.mergeLexicalEnvironment(ni,_());let Ss=c.createBlock(gn(c.createNodeArray(ni),ve.statements),!0);return gn(Ss,ve),ua(Ss,ve),Ss}function pa(ve){let mr=ve.name;if(!Ir(mr))return;let ln=UA(gn(c.cloneNode(mr),mr),mr.parent);ti(ln,3168);let ni=UA(gn(c.cloneNode(mr),mr),mr.parent);return ti(ni,3072),x0(Rz(gn(ua(c.createExpressionStatement(c.createAssignment(gn(c.createPropertyAccessExpression(c.createThis(),ln),ve.name),ni)),ve),tk(ve,-1))))}function Pa(ve,mr){if(!(ve.transformFlags&1))return ve;if(!hc(ve))return;let ln=xa(mr)?Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ln=Ns(ln,ve,mr),c.updateMethodDeclaration(ve,ln,ve.asteriskToken,Fl(ve),void 0,void 0,wI(ve.parameters,Qe,s),void 0,fS(ve.body,Qe,s))}function $c(ve){return!(af(ve.body)&&Ga(ve,64))}function Qu(ve,mr){if(!(ve.transformFlags&1))return ve;if(!$c(ve))return;let ln=xa(mr)?Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ln=Ns(ln,ve,mr),c.updateGetAccessorDeclaration(ve,ln,Fl(ve),wI(ve.parameters,Qe,s),void 0,fS(ve.body,Qe,s)||c.createBlock([]))}function Rg(ve,mr){if(!(ve.transformFlags&1))return ve;if(!$c(ve))return;let ln=xa(mr)?Os(ve.modifiers,Qe,fp):Os(ve.modifiers,tr,fp);return ln=Ns(ln,ve,mr),c.updateSetAccessorDeclaration(ve,ln,Fl(ve),wI(ve.parameters,Qe,s),fS(ve.body,Qe,s)||c.createBlock([]))}function Cs(ve){if(!hc(ve))return c.createNotEmittedStatement(ve);let mr=c.updateFunctionDeclaration(ve,Os(ve.modifiers,Gr,hg),ve.asteriskToken,ve.name,void 0,wI(ve.parameters,Qe,s),void 0,fS(ve.body,Qe,s)||c.createBlock([]));if(fs(ve)){let ln=[mr];return yu(ln,ve),ln}return mr}function Tu(ve){return hc(ve)?c.updateFunctionExpression(ve,Os(ve.modifiers,Gr,hg),ve.asteriskToken,ve.name,void 0,wI(ve.parameters,Qe,s),void 0,fS(ve.body,Qe,s)||c.createBlock([])):c.createOmittedExpression()}function Wr(ve){return c.updateArrowFunction(ve,Os(ve.modifiers,Gr,hg),void 0,wI(ve.parameters,Qe,s),void 0,ve.equalsGreaterThanToken,fS(ve.body,Qe,s))}function Wn(ve){if(DF(ve))return;let mr=c.updateParameterDeclaration(ve,Os(ve.modifiers,ln=>Eo(ln)?Qe(ln):void 0,fp),ve.dotDotDotToken,pe.checkDefined(Mr(ve.name,Qe,LL)),void 0,void 0,Mr(ve.initializer,Qe,un));return mr!==ve&&(yh(mr,ve),gn(mr,hv(ve)),Yg(mr,hv(ve)),ti(mr.name,64)),mr}function pt(ve){if(fs(ve)){let mr=mU(ve.declarationList);return mr.length===0?void 0:gn(c.createExpressionStatement(c.inlineExpressions(lt(mr,on))),ve)}else return _s(ve,Qe,s)}function on(ve){let mr=ve.name;return Nu(mr)?MU(ve,Qe,s,0,!1,pI):gn(c.createAssignment(Ip(mr),pe.checkDefined(Mr(ve.initializer,Qe,un))),ve)}function st(ve){let mr=c.updateVariableDeclaration(ve,pe.checkDefined(Mr(ve.name,Qe,LL)),void 0,void 0,Mr(ve.initializer,Qe,un));return ve.type&&c9e(mr.name,ve.type),mr}function nr(ve){let mr=XI(ve.expression,-55);if(vd(mr)||Xg(mr)){let ln=Mr(ve.expression,Qe,un);return pe.assert(ln),c.createPartiallyEmittedExpression(ln,ve)}return _s(ve,Qe,s)}function Zr(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Kr(ve){let mr=Mr(ve.expression,Qe,G_);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Dn(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function hr(ve){return c.updateCallExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Os(ve.arguments,Qe,un))}function En(ve){return c.updateNewExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Os(ve.arguments,Qe,un))}function Ni(ve){return c.updateTaggedTemplateExpression(ve,pe.checkDefined(Mr(ve.tag,Qe,un)),void 0,pe.checkDefined(Mr(ve.template,Qe,yW)))}function Gi(ve){return c.updateJsxSelfClosingElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,OL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,fQ)))}function nn(ve){return c.updateJsxOpeningElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,OL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,fQ)))}function bn(ve){return!OA(ve)||Vb(T)}function ds(ve){if(!bn(ve))return c.createNotEmittedStatement(ve);let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=kl(ve),Za=bu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let el=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(el,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,Ht(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(VB(Uc,void 0),M3(Uc,void 0)),gn(Uc,ve),Ow(Uc,ln),mr.push(Uc),mr}function Ht(ve,mr){let ln=Ee;Ee=mr;let ni=[];d();let Ls=lt(ve.members,cn);return Nw(ni,_()),Pr(ni,Ls),Ee=ln,c.createBlock(gn(c.createNodeArray(ni),ve.members),!0)}function cn(ve){let mr=ya(ve,!1),ln=R.getEnumMemberValue(ve),ni=wt(ve,ln?.value),Ls=c.createAssignment(c.createElementAccessExpression(Ee,mr),ni),Za=typeof ln?.value=="string"||ln?.isSyntacticallyString?Ls:c.createAssignment(c.createElementAccessExpression(Ee,Ls),mr);return gn(c.createExpressionStatement(gn(Za,ve)),ve)}function wt(ve,mr){return mr!==void 0?typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr):(sm(),ve.initializer?pe.checkDefined(Mr(ve.initializer,Qe,un)):c.createVoidZero())}function xe(ve){let mr=eu(ve,Lh);return mr?Ket(mr,Vb(T)):!0}function fr(ve){Te||(Te=new Map);let mr=In(ve);Te.has(mr)||Te.set(mr,ve)}function Ue(ve){if(Te){let mr=In(ve);return Te.get(mr)===ve}return!0}function In(ve){return pe.assertNode(ve.name,Ir),ve.name.escapedText}function Hn(ve,mr){let ln=c.createVariableDeclaration(c.getLocalName(mr,!1,!0)),ni=Ne.kind===308?0:1,Ls=c.createVariableStatement(Os(mr.modifiers,Gr,hg),c.createVariableDeclarationList([ln],ni));return ua(ln,mr),VB(ln,void 0),M3(ln,void 0),ua(Ls,mr),fr(mr),Ue(mr)?(mr.kind===267?Yg(Ls.declarationList,mr):Yg(Ls,mr),yh(Ls,mr),Ow(Ls,2048),ve.push(Ls),!0):!1}function Mt(ve){if(!xe(ve))return c.createNotEmittedStatement(ve);pe.assertNode(ve.name,Ir,"A TypeScript namespace should have an Identifier name."),qp();let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=kl(ve),Za=bu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let el=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(el,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,$r(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(VB(Uc,void 0),M3(Uc,void 0)),gn(Uc,ve),Ow(Uc,ln),mr.push(Uc),mr}function $r(ve,mr){let ln=Ee,ni=_e,Ls=Te;Ee=mr,_e=ve,Te=void 0;let Za=[];d();let Go,Ss;if(ve.body)if(ve.body.kind===269)Tt(ve.body,el=>Pr(Za,Os(el.statements,je,Lc))),Go=ve.body.statements,Ss=ve.body;else{let el=Mt(ve.body);el&&(Ki(el)?Pr(Za,el):Za.push(el));let Fd=ri(ve).body;Go=tk(Fd.statements,-1)}Nw(Za,_()),Ee=ln,_e=ni,Te=Ls;let Uc=c.createBlock(gn(c.createNodeArray(Za),Go),!0);return gn(Uc,Ss),(!ve.body||ve.body.kind!==269)&&ti(Uc,rA(Uc)|3072),Uc}function ri(ve){if(ve.body.kind===268)return ri(ve.body)||ve.body}function oo(ve){if(!ve.importClause)return ve;if(ve.importClause.isTypeOnly)return;let mr=Mr(ve.importClause,Bs,Yw);return mr?c.updateImportDeclaration(ve,void 0,mr,ve.moduleSpecifier,ve.attributes):void 0}function Bs(ve){pe.assert(ve.phaseModifier!==156);let mr=UI(ve)?ve.name:void 0,ln=Mr(ve.namedBindings,Ys,xx);return mr||ln?c.updateImportClause(ve,ve.phaseModifier,mr,ln):void 0}function Ys(ve){if(ve.kind===275)return UI(ve)?ve:void 0;{let mr=T.verbatimModuleSyntax,ln=Os(ve.elements,tn,dy);return mr||zt(ln)?c.updateNamedImports(ve,ln):void 0}}function tn(ve){return!ve.isTypeOnly&&UI(ve)?ve:void 0}function Bn(ve){return T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve)?_s(ve,Qe,s):void 0}function Mn(ve){if(ve.isTypeOnly)return;if(!ve.exportClause||ak(ve.exportClause))return c.updateExportDeclaration(ve,ve.modifiers,ve.isTypeOnly,ve.exportClause,ve.moduleSpecifier,ve.attributes);let mr=!!T.verbatimModuleSyntax,ln=Mr(ve.exportClause,ni=>Oi(ni,mr),Zre);return ln?c.updateExportDeclaration(ve,void 0,ve.isTypeOnly,ln,ve.moduleSpecifier,ve.attributes):void 0}function ci(ve,mr){let ln=Os(ve.elements,Vn,k0);return mr||zt(ln)?c.updateNamedExports(ve,ln):void 0}function es(ve){return c.updateNamespaceExport(ve,pe.checkDefined(Mr(ve.name,Qe,Ir)))}function Oi(ve,mr){return ak(ve)?es(ve):ci(ve,mr)}function Vn(ve){return!ve.isTypeOnly&&(T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve))?ve:void 0}function Ui(ve){return UI(ve)||!Lm(Ie)&&R.isTopLevelValueImportEqualsWithEntityName(ve)}function gs(ve){if(ve.isTypeOnly)return;if(YL(ve))return UI(ve)?_s(ve,Qe,s):void 0;if(!Ui(ve))return;let mr=NEe(c,ve.moduleReference);return ti(mr,7168),mc(ve)||!fs(ve)?ua(gn(c.createVariableStatement(Os(ve.modifiers,Gr,hg),c.createVariableDeclarationList([ua(c.createVariableDeclaration(ve.name,void 0,void 0,mr),ve)])),ve),ve):ua(RI(ve.name,mr,ve),ve)}function fs(ve){return _e!==void 0&&Ga(ve,32)}function bi(ve){return _e===void 0&&Ga(ve,32)}function mc(ve){return bi(ve)&&!Ga(ve,2048)}function Ag(ve){return bi(ve)&&Ga(ve,2048)}function dg(ve){let mr=c.createAssignment(c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0),c.getLocalName(ve));Yg(mr,Ly(ve.name?ve.name.pos:ve.pos,ve.end));let ln=c.createExpressionStatement(mr);return Yg(ln,Ly(-1,ve.end)),ln}function yu(ve,mr){ve.push(dg(mr))}function RI(ve,mr,ln){return gn(c.createExpressionStatement(c.createAssignment(c.getNamespaceMemberName(Ee,ve,!1,!0),mr)),ln)}function pI(ve,mr,ln){return gn(c.createAssignment(Ip(ve),mr),ln)}function Ip(ve){return c.getNamespaceMemberName(Ee,ve,!1,!0)}function kl(ve){let mr=c.getGeneratedNameForNode(ve);return Yg(mr,ve.name),mr}function bu(ve){return c.getGeneratedNameForNode(ve)}function sm(){Ze&8||(Ze|=8,s.enableSubstitution(80))}function qp(){Ze&2||(Ze|=2,s.enableSubstitution(80),s.enableSubstitution(305),s.enableEmitNotification(268))}function Jg(ve){return xd(ve).kind===268}function ch(ve){return xd(ve).kind===267}function mS(ve,mr,ln){let ni=Pe,Ls=Ie;cl(mr)&&(Ie=mr),Ze&2&&Jg(mr)&&(Pe|=2),Ze&8&&ch(mr)&&(Pe|=8),re(ve,mr,ln),Pe=ni,Ie=Ls}function Au(ve,mr){return mr=ge(ve,mr),ve===1?zA(mr):u0(mr)?Eg(mr):mr}function Eg(ve){if(Ze&2){let mr=ve.name,ln=oi(mr);if(ln){if(ve.objectAssignmentInitializer){let ni=c.createAssignment(ln,ve.objectAssignmentInitializer);return gn(c.createPropertyAssignment(mr,ni),ve)}return gn(c.createPropertyAssignment(mr,ln),ve)}}return ve}function zA(ve){switch(ve.kind){case 80:return NA(ve);case 212:return tp(ve);case 213:return JI(ve)}return ve}function NA(ve){return oi(ve)||ve}function oi(ve){if(Ze&Pe&&!Gp(ve)&&!QF(ve)){let mr=R.getReferencedExportContainer(ve,!1);if(mr&&mr.kind!==308&&(Pe&2&&mr.kind===268||Pe&8&&mr.kind===267))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(mr),ve),ve)}}function tp(ve){return HC(ve)}function JI(ve){return HC(ve)}function Wh(ve){return ve.replace(/\*\//g,"*_/")}function HC(ve){let mr=bf(ve);if(mr!==void 0){o9e(ve,mr);let ln=typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr);if(!T.removeComments){let ni=xd(ve,bp);Dz(ln,3,` ${Wh(Fp(ni))} `)}return ln}return ve}function bf(ve){if(!uS(T))return jo(ve)||Qg(ve)?R.getConstantValue(ve):void 0}function UI(ve){return T.verbatimModuleSyntax||Bo(ve)||R.isReferencedAliasDeclaration(ve)}}function f3t(s){let{factory:c,getEmitHelperFactory:g,hoistVariableDeclaration:d,endLexicalEnvironment:h,startLexicalEnvironment:_,resumeLexicalEnvironment:S,addBlockScopedVariable:R}=s,T=s.getEmitResolver(),O=s.getCompilerOptions(),V=Hg(O),M=eie(O),ee=!!O.experimentalDecorators,re=!M,ge=M&&V<9,Ie=re||ge,_e=V<9,Ee=V<99?-1:M?0:3,Ne=V<9,Te=Ne&&V>=2,Ze=Ie||_e||Ee===-1,Pe=s.onSubstituteNode;s.onSubstituteNode=JI;let Ke=s.onEmitNode;s.onEmitNode=tp;let et=!1,Ye=0,Tt,at,Qe,Ct,mt=new Map,yt=new Set,Rt,Lt,je=!1,Wt=!1;return cR(s,_r);function _r(ve){if(ve.isDeclarationFile||(Ct=void 0,et=!!(f1(ve)&32),!Ze&&!et))return ve;let mr=_s(ve,it,s);return EN(mr,s.readEmitHelpers()),mr}function Gt(ve){switch(ve.kind){case 129:return hn()?void 0:ve;default:return Gs(ve,hg)}}function it(ve){if(!(ve.transformFlags&16777216)&&!(ve.transformFlags&134234112))return ve;switch(ve.kind){case 264:return bn(ve);case 232:return Ht(ve);case 176:case 173:return pe.fail("Use `classElementVisitor` instead.");case 304:return Yt(ve);case 244:return Tr(ve);case 261:return mn(ve);case 170:return jn(ve);case 209:return Zi(ve);case 278:return Ns(ve);case 81:return ir(ve);case 212:return Qu(ve);case 213:return Rg(ve);case 225:case 226:return Cs(ve,!1);case 227:return Zr(ve,!1);case 218:return Dn(ve,!1);case 214:return pt(ve);case 245:return Wr(ve);case 216:return on(ve);case 249:return Tu(ve);case 110:return xe(ve);case 263:case 219:return Zn(void 0,Dt,ve);case 177:case 175:case 178:case 179:return Zn(ve,Dt,ve);default:return Dt(ve)}}function Dt(ve){return _s(ve,it,s)}function tr(ve){switch(ve.kind){case 225:case 226:return Cs(ve,!0);case 227:return Zr(ve,!0);case 357:return Kr(ve,!0);case 218:return Dn(ve,!0);default:return it(ve)}}function ur(ve){switch(ve.kind){case 299:return _s(ve,ur,s);case 234:return Gi(ve);default:return it(ve)}}function Gr(ve){switch(ve.kind){case 211:case 210:return oi(ve);default:return it(ve)}}function dt(ve){switch(ve.kind){case 177:return Zn(ve,ks,ve);case 178:case 179:case 175:return Zn(ve,ou,ve);case 173:return Zn(ve,Pi,ve);case 176:return Zn(ve,wt,ve);case 168:return si(ve);case 241:return ve;default:return fp(ve)?Gt(ve):it(ve)}}function pr(ve){switch(ve.kind){case 168:return si(ve);default:return it(ve)}}function ot(ve){switch(ve.kind){case 173:return yr(ve);case 178:case 179:return dt(ve);default:pe.assertMissingNode(ve,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function ir(ve){return!_e||Lc(ve.parent)?ve:ua(c.createIdentifier(""),ve)}function qt(ve){let mr=bu(ve.left);if(mr){let ln=Mr(ve.right,it,un);return ua(g().createClassPrivateFieldInHelper(mr.brandCheckIdentifier,ln),ve)}return _s(ve,it,s)}function Yt(ve){return Fb(ve,nr)&&(ve=b1(s,ve)),_s(ve,it,s)}function Tr(ve){let mr=Qe;Qe=[];let ln=_s(ve,it,s),ni=zt(Qe)?[ln,...Qe]:ln;return Qe=mr,ni}function mn(ve){return Fb(ve,nr)&&(ve=b1(s,ve)),_s(ve,it,s)}function jn(ve){return Fb(ve,nr)&&(ve=b1(s,ve)),_s(ve,it,s)}function Zi(ve){return Fb(ve,nr)&&(ve=b1(s,ve)),_s(ve,it,s)}function Ns(ve){return Fb(ve,nr)&&(ve=b1(s,ve,!0,ve.isExportEquals?"":"default")),_s(ve,it,s)}function An(ve){return zt(at)&&(dI(ve)?(at.push(ve.expression),ve=c.updateParenthesizedExpression(ve,c.inlineExpressions(at))):(at.push(ve),ve=c.inlineExpressions(at)),at=void 0),ve}function si(ve){let mr=Mr(ve.expression,it,un);return c.updateComputedPropertyName(ve,An(mr))}function ks(ve){return Rt?In(ve,Rt):Dt(ve)}function Ic(ve){return!!(_e||tm(ve)&&f1(ve)&32)}function ou(ve){if(pe.assert(!m1(ve)),!hC(ve)||!Ic(ve))return _s(ve,dt,s);let mr=bu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;let ln=ya(ve);ln&&fs().push(c.createAssignment(ln,c.createFunctionExpression(Le(ve.modifiers,ni=>hg(ni)&&!Ge(ni)&&!ht(ni)),ve.asteriskToken,ln,void 0,wI(ve.parameters,it,s),void 0,fS(ve.body,it,s))))}function Zn(ve,mr,ln){if(ve!==Lt){let ni=Lt;Lt=ve;let Ls=mr(ln);return Lt=ni,Ls}return mr(ln)}function ya(ve){pe.assert(p(ve.name));let mr=bu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),mr.kind==="m")return mr.methodName;if(mr.kind==="a"){if(TB(ve))return mr.getterName;if(dv(ve))return mr.setterName}}function Fl(){let ve=Ui();return ve.classThis??ve.classConstructor??Rt?.name}function ba(ve){let mr=LB(ve),ln=qT(ve),ni=ve.name,Ls=ni,Za=ni;if(Un(ni)&&!kN(ni.expression)){let Ef=k9e(ni);if(Ef)Ls=c.updateComputedPropertyName(ni,Mr(ni.expression,it,un)),Za=c.updateComputedPropertyName(ni,Ef.left);else{let om=c.createTempVariable(d);Yg(om,ni.expression);let Sh=Mr(ni.expression,it,un),Zp=c.createAssignment(om,Sh);Yg(Zp,ni.expression),Ls=c.updateComputedPropertyName(ni,Zp),Za=c.updateComputedPropertyName(ni,om)}}let Go=Os(ve.modifiers,Gt,hg),Ss=ret(c,ve,Go,ve.initializer);ua(Ss,ve),ti(Ss,3072),Yg(Ss,ln);let Uc=lg(ve)?Fl()??c.createThis():c.createThis(),el=VOt(c,ve,Go,Ls,Uc);ua(el,ve),yh(el,mr),Yg(el,ln);let Fd=c.createModifiersFromModifierFlags(Lw(Go)),Vg=WOt(c,ve,Fd,Za,Uc);return ua(Vg,ve),ti(Vg,3072),Yg(Vg,ln),Pde([Ss,el,Vg],ot,MI)}function Oo(ve){if(Ic(ve)){let mr=bu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;if(mr.isStatic&&!_e){let ln=ri(ve,c.createThis());if(ln)return c.createClassStaticBlockDeclaration(c.createBlock([ln],!0))}return}return re&&!lg(ve)&&Ct?.data&&Ct.data.facts&16?c.updatePropertyDeclaration(ve,Os(ve.modifiers,it,fp),ve.name,void 0,void 0,void 0):(Fb(ve,nr)&&(ve=b1(s,ve)),c.updatePropertyDeclaration(ve,Os(ve.modifiers,Gt,hg),Mr(ve.name,pr,PI),void 0,void 0,Mr(ve.initializer,it,un)))}function hc(ve){if(Ie&&!i0(ve)){let mr=es(ve.name,!!ve.initializer||M);if(mr&&fs().push(...OOt(mr)),lg(ve)&&!_e){let ln=ri(ve,c.createThis());if(ln){let ni=c.createClassStaticBlockDeclaration(c.createBlock([ln]));return ua(ni,ve),yh(ni,ve),yh(ln,{pos:-1,end:-1}),VB(ln,void 0),M3(ln,void 0),ni}}return}return c.updatePropertyDeclaration(ve,Os(ve.modifiers,Gt,hg),Mr(ve.name,pr,PI),void 0,void 0,Mr(ve.initializer,it,un))}function yr(ve){return pe.assert(!m1(ve),"Decorators should already have been transformed and elided."),hC(ve)?Oo(ve):hc(ve)}function hn(){return Ee===-1||Ee===3&&!!Ct?.data&&!!(Ct.data.facts&16)}function Pi(ve){return i0(ve)&&(hn()||tm(ve)&&f1(ve)&32)?ba(ve):yr(ve)}function co(){return!!Lt&&tm(Lt)&&wB(Lt)&&i0(xd(Lt))}function pa(ve){if(co()){let mr=XI(ve);mr.kind===110&&yt.add(mr)}}function Pa(ve,mr){return mr=Mr(mr,it,un),pa(mr),$c(ve,mr)}function $c(ve,mr){switch(yh(mr,tk(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.getterName);case"m":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.methodName);case"f":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function Qu(ve){if(p(ve.name)){let mr=bu(ve.name);if(mr)return gn(ua(Pa(mr,ve.expression),ve),ve)}if(Te&&Lt&&Zy(ve)&&Ir(ve.name)&&Jde(Lt)&&Ct?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=Ct.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,c.createStringLiteralFromNode(ve.name),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,it,s)}function Rg(ve){if(Te&&Lt&&Zy(ve)&&Jde(Lt)&&Ct?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=Ct.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,Mr(ve.argumentExpression,it,un),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,it,s)}function Cs(ve,mr){if(ve.operator===46||ve.operator===47){let ln=JA(ve.operand);if(hW(ln)){let ni;if(ni=bu(ln.name)){let Ls=Mr(ln.expression,it,un);pa(Ls);let{readExpression:Za,initializeExpression:Go}=Wn(Ls),Ss=Pa(ni,Za),Uc=D0(ve)||mr?void 0:c.createTempVariable(d);return Ss=B9e(c,ve,Ss,d,Uc),Ss=hr(ni,Go||Za,Ss,64),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}else if(Te&&Lt&&Zy(ln)&&Jde(Lt)&&Ct?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=Ct.data;if(Za&1){let Go=ci(ln);return D0(ve)?c.updatePrefixUnaryExpression(ve,Go):c.updatePostfixUnaryExpression(ve,Go)}if(ni&&Ls){let Go,Ss;if(jo(ln)?Ir(ln.name)&&(Ss=Go=c.createStringLiteralFromNode(ln.name)):kN(ln.argumentExpression)?Ss=Go=ln.argumentExpression:(Ss=c.createTempVariable(d),Go=c.createAssignment(Ss,Mr(ln.argumentExpression,it,un))),Go&&Ss){let Uc=c.createReflectGetCall(Ls,Ss,ni);gn(Uc,ln);let el=mr?void 0:c.createTempVariable(d);return Uc=B9e(c,ve,Uc,d,el),Uc=c.createReflectSetCall(Ls,Go,Uc,ni),ua(Uc,ve),gn(Uc,ve),el&&(Uc=c.createComma(Uc,el),gn(Uc,ve)),Uc}}}}return _s(ve,it,s)}function Tu(ve){return c.updateForStatement(ve,Mr(ve.initializer,tr,yE),Mr(ve.condition,it,un),Mr(ve.incrementor,tr,un),My(ve.statement,it,s))}function Wr(ve){return c.updateExpressionStatement(ve,Mr(ve.expression,tr,un))}function Wn(ve){let mr=ap(ve)?ve:c.cloneNode(ve);if(ve.kind===110&&yt.has(ve)&&yt.add(mr),kN(ve))return{readExpression:mr,initializeExpression:void 0};let ln=c.createTempVariable(d),ni=c.createAssignment(ln,mr);return{readExpression:ln,initializeExpression:ni}}function pt(ve){var mr;if(hW(ve.expression)&&bu(ve.expression.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.expression,d,V);return BB(ve)?c.updateCallChain(ve,c.createPropertyAccessChain(Mr(ni,it,un),ve.questionDotToken,"call"),void 0,void 0,[Mr(ln,it,un),...Os(ve.arguments,it,un)]):c.updateCallExpression(ve,c.createPropertyAccessExpression(Mr(ni,it,un),"call"),void 0,[Mr(ln,it,un),...Os(ve.arguments,it,un)])}if(Te&&Lt&&Zy(ve.expression)&&Jde(Lt)&&((mr=Ct?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionCallCall(Mr(ve.expression,it,un),Ct.data.classConstructor,Os(ve.arguments,it,un));return ua(ln,ve),gn(ln,ve),ln}return _s(ve,it,s)}function on(ve){var mr;if(hW(ve.tag)&&bu(ve.tag.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.tag,d,V);return c.updateTaggedTemplateExpression(ve,c.createCallExpression(c.createPropertyAccessExpression(Mr(ni,it,un),"bind"),void 0,[Mr(ln,it,un)]),void 0,Mr(ve.template,it,yW))}if(Te&&Lt&&Zy(ve.tag)&&Jde(Lt)&&((mr=Ct?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionBindCall(Mr(ve.tag,it,un),Ct.data.classConstructor,[]);return ua(ln,ve),gn(ln,ve),c.updateTaggedTemplateExpression(ve,ln,void 0,Mr(ve.template,it,yW))}return _s(ve,it,s)}function st(ve){if(Ct&&mt.set(xd(ve),Ct),_e){if(Xde(ve)){let ni=Mr(ve.body.statements[0].expression,it,un);return zm(ni,!0)&&ni.left===ni.right?void 0:ni}if(Jz(ve))return Mr(ve.body.statements[0].expression,it,un);_();let mr=Zn(ve,ni=>Os(ni,it,Lc),ve.body.statements);mr=c.mergeLexicalEnvironment(mr,h());let ln=c.createImmediatelyInvokedArrowFunction(mr);return ua(JA(ln.expression),ve),Ow(JA(ln.expression),4),ua(ln,ve),gn(ln,ve),ln}}function nr(ve){if(wd(ve)&&!ve.name){let mr=AVe(ve);return zt(mr,Jz)?!1:(_e||!!f1(ve))&&zt(mr,ni=>dl(ni)||hC(ni)||Ie&&r1e(ni))}return!1}function Zr(ve,mr){if(Lx(ve)){let ln=at;at=void 0,ve=c.updateBinaryExpression(ve,Mr(ve.left,Gr,un),ve.operatorToken,Mr(ve.right,it,un));let ni=zt(at)?c.inlineExpressions(Hr([...at,ve])):ve;return at=ln,ni}if(zm(ve)){Fb(ve,nr)&&(ve=b1(s,ve),pe.assertNode(ve,zm));let ln=XI(ve.left,9);if(hW(ln)){let ni=bu(ln.name);if(ni)return gn(ua(hr(ni,ln.expression,ve.right,ve.operatorToken.kind),ve),ve)}else if(Te&&Lt&&Zy(ve.left)&&Jde(Lt)&&Ct?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=Ct.data;if(Za&1)return c.updateBinaryExpression(ve,ci(ve.left),ve.operatorToken,Mr(ve.right,it,un));if(ni&&Ls){let Go=Qg(ve.left)?Mr(ve.left.argumentExpression,it,un):Ir(ve.left.name)?c.createStringLiteralFromNode(ve.left.name):void 0;if(Go){let Ss=Mr(ve.right,it,un);if(Hde(ve.operatorToken.kind)){let el=Go;kN(Go)||(el=c.createTempVariable(d),Go=c.createAssignment(el,Go));let Fd=c.createReflectGetCall(Ls,el,ni);ua(Fd,ve.left),gn(Fd,ve.left),Ss=c.createBinaryExpression(Fd,Yde(ve.operatorToken.kind),Ss),gn(Ss,ve)}let Uc=mr?void 0:c.createTempVariable(d);return Uc&&(Ss=c.createAssignment(Uc,Ss),gn(Uc,ve)),Ss=c.createReflectSetCall(Ls,Go,Ss,ni),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}}}return vBs(ve)?qt(ve):_s(ve,it,s)}function Kr(ve,mr){let ln=mr?t1e(ve.elements,tr):t1e(ve.elements,it,tr);return c.updateCommaListExpression(ve,ln)}function Dn(ve,mr){let ln=mr?tr:it,ni=Mr(ve.expression,ln,un);return c.updateParenthesizedExpression(ve,ni)}function hr(ve,mr,ln,ni){if(mr=Mr(mr,it,un),ln=Mr(ln,it,un),pa(mr),Hde(ni)){let{readExpression:Ls,initializeExpression:Za}=Wn(mr);mr=Za||Ls,ln=c.createBinaryExpression($c(ve,Ls),Yde(ni),ln)}switch(yh(mr,tk(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.setterName);case"m":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,void 0);case"f":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function En(ve){return Le(ve.members,n3t)}function Ni(ve){var mr;let ln=0,ni=xd(ve);xa(ni)&&Fx(ee,ni)&&(ln|=1),_e&&(ctt(ve)||fVe(ve))&&(ln|=2);let Ls=!1,Za=!1,Go=!1,Ss=!1;for(let el of ve.members)lg(el)?((el.name&&(p(el.name)||i0(el))&&_e||i0(el)&&Ee===-1&&!ve.name&&!((mr=ve.emitNode)!=null&&mr.classThis))&&(ln|=2),(pi(el)||dl(el))&&(Ne&&el.transformFlags&16384&&(ln|=8,ln&1||(ln|=2)),Te&&el.transformFlags&134217728&&(ln&1||(ln|=6)))):ZW(xd(el))||(i0(el)?(Ss=!0,Go||(Go=hC(el))):hC(el)?(Go=!0,T.hasNodeCheckFlag(el,262144)&&(ln|=2)):pi(el)&&(Ls=!0,Za||(Za=!!el.initializer)));return(ge&&Ls||re&&Za||_e&&Go||_e&&Ss&&Ee===-1)&&(ln|=16),ln}function Gi(ve){var mr;if((((mr=Ct?.data)==null?void 0:mr.facts)||0)&4){let ni=c.createTempVariable(d,!0);return Ui().superClassReference=ni,c.updateExpressionWithTypeArguments(ve,c.createAssignment(ni,Mr(ve.expression,it,un)),void 0)}return _s(ve,it,s)}function nn(ve,mr){var ln;let ni=Rt,Ls=at,Za=Ct;Rt=ve,at=void 0,Oi();let Go=f1(ve)&32;if(_e||Go){let el=fl(ve);if(el&&Ir(el))gs().data.className=el;else if((ln=ve.emitNode)!=null&&ln.assignedName&&Lg(ve.emitNode.assignedName)){if(ve.emitNode.assignedName.textSourceNode&&Ir(ve.emitNode.assignedName.textSourceNode))gs().data.className=ve.emitNode.assignedName.textSourceNode;else if(qh(ve.emitNode.assignedName.text,V)){let Fd=c.createIdentifier(ve.emitNode.assignedName.text);gs().data.className=Fd}}}if(_e){let el=En(ve);zt(el)&&(gs().data.weakSetName=Ip("instances",el[0].name))}let Ss=Ni(ve);Ss&&(Ui().facts=Ss),Ss&8&&Bn();let Uc=mr(ve,Ss);return Vn(),pe.assert(Ct===Za),Rt=ni,at=Ls,Uc}function bn(ve){return nn(ve,ds)}function ds(ve,mr){var ln,ni;let Ls;if(mr&2)if(_e&&((ln=ve.emitNode)!=null&&ln.classThis))Ui().classConstructor=ve.emitNode.classThis,Ls=c.createAssignment(ve.emitNode.classThis,c.getInternalName(ve));else{let Zp=c.createTempVariable(d,!0);Ui().classConstructor=c.cloneNode(Zp),Ls=c.createAssignment(Zp,c.getInternalName(ve))}(ni=ve.emitNode)!=null&&ni.classThis&&(Ui().classThis=ve.emitNode.classThis);let Za=T.hasNodeCheckFlag(ve,262144),Go=Ga(ve,32),Ss=Ga(ve,2048),Uc=Os(ve.modifiers,Gt,hg),el=Os(ve.heritageClauses,ur,y1),{members:Fd,prologue:Vg}=fr(ve),Ef=[];if(Ls&&fs().unshift(Ls),zt(at)&&Ef.push(c.createExpressionStatement(c.inlineExpressions(at))),re||_e||f1(ve)&32){let Zp=AVe(ve);zt(Zp)&&$r(Ef,Zp,c.getInternalName(ve))}Ef.length>0&&Go&&Ss&&(Uc=Os(Uc,Zp=>FEe(Zp)?void 0:Zp,hg),Ef.push(c.createExportAssignment(void 0,!1,c.getLocalName(ve,!1,!0))));let om=Ui().classConstructor;Za&&om&&(tn(),Tt[Hy(ve)]=om);let Sh=c.updateClassDeclaration(ve,Uc,ve.name,void 0,el,Fd);return Ef.unshift(Sh),Vg&&Ef.unshift(c.createExpressionStatement(Vg)),Ef}function Ht(ve){return nn(ve,cn)}function cn(ve,mr){var ln,ni,Ls;let Za=!!(mr&1),Go=AVe(ve),Ss=T.hasNodeCheckFlag(ve,262144),Uc=T.hasNodeCheckFlag(ve,32768),el;function Fd(){var W_;if(_e&&((W_=ve.emitNode)!=null&&W_.classThis))return Ui().classConstructor=ve.emitNode.classThis;let b2=c.createTempVariable(Uc?R:d,!0);return Ui().classConstructor=c.cloneNode(b2),b2}(ln=ve.emitNode)!=null&&ln.classThis&&(Ui().classThis=ve.emitNode.classThis),mr&2&&(el??(el=Fd()));let Vg=Os(ve.modifiers,Gt,hg),Ef=Os(ve.heritageClauses,ur,y1),{members:om,prologue:Sh}=fr(ve),Zp=c.updateClassExpression(ve,Vg,ve.name,void 0,Ef,om),lh=[];if(Sh&&lh.push(Sh),(_e||f1(ve)&32)&&zt(Go,W_=>dl(W_)||hC(W_)||Ie&&r1e(W_))||zt(at))if(Za)pe.assertIsDefined(Qe,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),zt(at)&&Pr(Qe,lt(at,c.createExpressionStatement)),zt(Go)&&$r(Qe,Go,((ni=ve.emitNode)==null?void 0:ni.classThis)??c.getInternalName(ve)),el?lh.push(c.createAssignment(el,Zp)):_e&&((Ls=ve.emitNode)!=null&&Ls.classThis)?lh.push(c.createAssignment(ve.emitNode.classThis,Zp)):lh.push(Zp);else{if(el??(el=Fd()),Ss){tn();let W_=c.cloneNode(el);W_.emitNode.autoGenerate.flags&=-9,Tt[Hy(ve)]=W_}lh.push(c.createAssignment(el,Zp)),Pr(lh,at),Pr(lh,oo(Go,el)),lh.push(c.cloneNode(el))}else lh.push(Zp);return lh.length>1&&(Ow(Zp,131072),lh.forEach(x0)),c.inlineExpressions(lh)}function wt(ve){if(!_e)return _s(ve,it,s)}function xe(ve){if(Ne&&Lt&&dl(Lt)&&Ct?.data){let{classThis:mr,classConstructor:ln}=Ct.data;return mr??ln??ve}return ve}function fr(ve){let mr=!!(f1(ve)&32);if(_e||et){for(let Go of ve.members)if(hC(Go))if(Ic(Go))pI(Go,Go.name,bi);else{let Ss=gs();PU(Ss,Go.name,{kind:"untransformed"})}if(_e&&zt(En(ve))&&Ue(),hn()){for(let Go of ve.members)if(i0(Go)){let Ss=c.getGeneratedPrivateNameForNode(Go.name,void 0,"_accessor_storage");if(_e||mr&&tm(Go))pI(Go,Ss,mc);else{let Uc=gs();PU(Uc,Ss,{kind:"untransformed"})}}}}let ln=Os(ve.members,dt,MI),ni;zt(ln,Tc)||(ni=In(void 0,ve));let Ls,Za;if(!_e&&zt(at)){let Go=c.createExpressionStatement(c.inlineExpressions(at));if(Go.transformFlags&134234112){let Uc=c.createTempVariable(d),el=c.createArrowFunction(void 0,void 0,[],void 0,void 0,c.createBlock([Go]));Ls=c.createAssignment(Uc,el),Go=c.createExpressionStatement(c.createCallExpression(Uc,void 0,[]))}let Ss=c.createBlock([Go]);Za=c.createClassStaticBlockDeclaration(Ss),at=void 0}if(ni||Za){let Go,Ss=de(ln,Xde),Uc=de(ln,Jz);Go=Ft(Go,Ss),Go=Ft(Go,Uc),Go=Ft(Go,ni),Go=Ft(Go,Za);let el=Ss||Uc?Le(ln,Fd=>Fd!==Ss&&Fd!==Uc):ln;Go=Pr(Go,el),ln=gn(c.createNodeArray(Go),ve.members)}return{members:ln,prologue:Ls}}function Ue(){let{weakSetName:ve}=gs().data;pe.assert(ve,"weakSetName should be set in private identifier environment"),fs().push(c.createAssignment(ve,c.createNewExpression(c.createIdentifier("WeakSet"),void 0,[])))}function In(ve,mr){if(ve=Mr(ve,it,Tc),!Ct?.data||!(Ct.data.facts&16))return ve;let ln=kB(mr),ni=!!(ln&&XI(ln.expression).kind!==106),Ls=wI(ve?ve.parameters:void 0,it,s),Za=Mt(mr,ve,ni);return Za?ve?(pe.assert(Ls),c.updateConstructorDeclaration(ve,void 0,Ls,Za)):x0(ua(gn(c.createConstructorDeclaration(void 0,Ls??[],Za),ve||mr),ve)):ve}function Hn(ve,mr,ln,ni,Ls,Za,Go){let Ss=ni[Ls],Uc=mr[Ss];if(Pr(ve,Os(mr,it,Lc,ln,Ss-ln)),ln=Ss+1,kU(Uc)){let el=[];Hn(el,Uc.tryBlock.statements,0,ni,Ls+1,Za,Go);let Fd=c.createNodeArray(el);gn(Fd,Uc.tryBlock.statements),ve.push(c.updateTryStatement(Uc,c.updateBlock(Uc.tryBlock,el),Mr(Uc.catchClause,it,IQ),Mr(Uc.finallyBlock,it,eg)))}else{for(Pr(ve,Os(mr,it,Lc,Ss,1));ln!!Sh.initializer||p(Sh.name)||Zw(Sh)));let Go=En(ve),Ss=zt(Za)||zt(Go);if(!mr&&!Ss)return fS(void 0,it,s);S();let Uc=!mr&&ln,el=0,Fd=[],Vg=[],Ef=c.createThis();if(Mn(Vg,Go,Ef),mr){let Sh=Le(Ls,lh=>We(xd(lh),mr)),Zp=Le(Za,lh=>!We(xd(lh),mr));$r(Vg,Sh,Ef),$r(Vg,Zp,Ef)}else $r(Vg,Za,Ef);if(mr?.body){el=c.copyPrologue(mr.body.statements,Fd,!1,it);let Sh=gVe(mr.body.statements,el);if(Sh.length)Hn(Fd,mr.body.statements,el,Sh,0,Vg,mr);else{for(;el=Fd.length?mr.body.multiLine??Fd.length>0:Fd.length>0;return gn(c.createBlock(gn(c.createNodeArray(Fd),((ni=mr?.body)==null?void 0:ni.statements)??ve.members),om),mr?.body)}function $r(ve,mr,ln){for(let ni of mr){if(lg(ni)&&!_e)continue;let Ls=ri(ni,ln);Ls&&ve.push(Ls)}}function ri(ve,mr){let ln=dl(ve)?Zn(ve,st,ve):Bs(ve,mr);if(!ln)return;let ni=c.createExpressionStatement(ln);ua(ni,ve),Ow(ni,rA(ve)&3072),yh(ni,ve);let Ls=xd(ve);return Si(Ls)?(Yg(ni,Ls),Rz(ni)):Yg(ni,hv(ve)),VB(ln,void 0),M3(ln,void 0),Zw(Ls)&&Ow(ni,3072),ni}function oo(ve,mr){let ln=[];for(let ni of ve){let Ls=dl(ni)?Zn(ni,st,ni):Zn(ni,()=>Bs(ni,mr),void 0);Ls&&(x0(Ls),ua(Ls,ni),Ow(Ls,rA(ni)&3072),Yg(Ls,hv(ni)),yh(Ls,ni),ln.push(Ls))}return ln}function Bs(ve,mr){var ln;let ni=Lt,Ls=Ys(ve,mr);return Ls&&tm(ve)&&((ln=Ct?.data)!=null&&ln.facts)&&(ua(Ls,ve),Ow(Ls,4),Yg(Ls,qT(ve.name)),mt.set(xd(ve),Ct)),Lt=ni,Ls}function Ys(ve,mr){let ln=!M;Fb(ve,nr)&&(ve=b1(s,ve));let ni=Zw(ve)?c.getGeneratedPrivateNameForNode(ve.name):Un(ve.name)&&!kN(ve.name.expression)?c.updateComputedPropertyName(ve.name,c.getGeneratedNameForNode(ve.name)):ve.name;if(tm(ve)&&(Lt=ve),p(ni)&&Ic(ve)){let Go=bu(ni);if(Go)return Go.kind==="f"?Go.isStatic?yBs(c,Go.variableName,Mr(ve.initializer,it,un)):bBs(c,mr,Mr(ve.initializer,it,un),Go.brandCheckIdentifier):void 0;pe.fail("Undeclared private name for property declaration.")}if((p(ni)||tm(ve))&&!ve.initializer)return;let Ls=xd(ve);if(Ga(Ls,64))return;let Za=Mr(ve.initializer,it,un);if(We(Ls,Ls.parent)&&Ir(ni)){let Go=c.cloneNode(ni);Za?(dI(Za)&&DEe(Za.expression)&&ik(Za.expression.left,"___runInitializers")&&iR(Za.expression.right)&&yC(Za.expression.right.expression)&&(Za=Za.expression.left),Za=c.inlineExpressions([Za,Go])):Za=Go,ti(ni,3168),Yg(Go,Ls.name),ti(Go,3072)}else Za??(Za=c.createVoidZero());if(ln||p(ni)){let Go=LU(c,mr,ni,ni);return Ow(Go,1024),c.createAssignment(Go,Za)}else{let Go=Un(ni)?ni.expression:Ir(ni)?c.createStringLiteral(Bc(ni.escapedText)):ni,Ss=c.createPropertyDescriptor({value:Za,configurable:!0,writable:!0,enumerable:!0});return c.createObjectDefinePropertyCall(mr,Go,Ss)}}function tn(){Ye&1||(Ye|=1,s.enableSubstitution(80),Tt=[])}function Bn(){Ye&2||(Ye|=2,s.enableSubstitution(110),s.enableEmitNotification(263),s.enableEmitNotification(219),s.enableEmitNotification(177),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(175),s.enableEmitNotification(173),s.enableEmitNotification(168))}function Mn(ve,mr,ln){if(!_e||!zt(mr))return;let{weakSetName:ni}=gs().data;pe.assert(ni,"weakSetName should be set in private identifier environment"),ve.push(c.createExpressionStatement(EBs(c,ln,ni)))}function ci(ve){return jo(ve)?c.updatePropertyAccessExpression(ve,c.createVoidZero(),ve.name):c.updateElementAccessExpression(ve,c.createVoidZero(),Mr(ve.argumentExpression,it,un))}function es(ve,mr){if(Un(ve)){let ln=k9e(ve),ni=Mr(ve.expression,it,un),Ls=u2(ni),Za=kN(Ls);if(!(!!ln||zm(Ls)&&Gp(Ls.left))&&!Za&&mr){let Ss=c.getGeneratedNameForNode(ve);return T.hasNodeCheckFlag(ve,32768)?R(Ss):d(Ss),c.createAssignment(Ss,ni)}return Za||Ir(Ls)?void 0:ni}}function Oi(){Ct={previous:Ct,data:void 0}}function Vn(){Ct=Ct?.previous}function Ui(){return pe.assert(Ct),Ct.data??(Ct.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function gs(){return pe.assert(Ct),Ct.privateEnv??(Ct.privateEnv=s3t({className:void 0,weakSetName:void 0}))}function fs(){return at??(at=[])}function bi(ve,mr,ln,ni,Ls,Za,Go){i0(ve)?RI(ve,mr,ln,ni,Ls,Za,Go):pi(ve)?mc(ve,mr,ln,ni,Ls,Za,Go):gu(ve)?Ag(ve,mr,ln,ni,Ls,Za,Go):wg(ve)?dg(ve,mr,ln,ni,Ls,Za,Go):kg(ve)&&yu(ve,mr,ln,ni,Ls,Za,Go)}function mc(ve,mr,ln,ni,Ls,Za,Go){if(Ls){let Ss=pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"),Uc=kl(mr);PU(ni,mr,{kind:"f",isStatic:!0,brandCheckIdentifier:Ss,variableName:Uc,isValid:Za})}else{let Ss=kl(mr);PU(ni,mr,{kind:"f",isStatic:!1,brandCheckIdentifier:Ss,isValid:Za}),fs().push(c.createAssignment(Ss,c.createNewExpression(c.createIdentifier("WeakMap"),void 0,[])))}}function Ag(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");PU(ni,mr,{kind:"m",methodName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function dg(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr,"_get"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.getterName?Go.getterName=Ss:PU(ni,mr,{kind:"a",getterName:Ss,setterName:void 0,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function yu(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr,"_set"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.setterName?Go.setterName=Ss:PU(ni,mr,{kind:"a",getterName:void 0,setterName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function RI(ve,mr,ln,ni,Ls,Za,Go){let Ss=kl(mr,"_get"),Uc=kl(mr,"_set"),el=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");PU(ni,mr,{kind:"a",getterName:Ss,setterName:Uc,brandCheckIdentifier:el,isStatic:Ls,isValid:Za})}function pI(ve,mr,ln){let ni=Ui(),Ls=gs(),Za=att(Ls,mr),Go=tm(ve),Ss=!SBs(mr)&&Za===void 0;ln(ve,mr,ni,Ls,Go,Ss,Za)}function Ip(ve,mr,ln){let{className:ni}=gs().data,Ls=ni?{prefix:"_",node:ni,suffix:"_"}:"_",Za=typeof ve=="object"?c.getGeneratedNameForNode(ve,24,Ls,ln):typeof ve=="string"?c.createUniqueName(ve,16,Ls,ln):c.createTempVariable(void 0,!0,Ls,ln);return T.hasNodeCheckFlag(mr,32768)?R(Za):d(Za),Za}function kl(ve,mr){let ln=QY(ve);return Ip(ln?.substring(1)??ve,ve,mr)}function bu(ve){let mr=o3t(Ct,ve);return mr?.kind==="untransformed"?void 0:mr}function sm(ve){let mr=c.getGeneratedNameForNode(ve),ln=bu(ve.name);if(!ln)return _s(ve,it,s);let ni=ve.expression;return(pne(ve)||Zy(ve)||!yQ(ve.expression))&&(ni=c.createTempVariable(d,!0),fs().push(c.createBinaryExpression(ni,64,Mr(ve.expression,it,un)))),c.createAssignmentTargetWrapper(mr,hr(ln,ni,mr,64))}function qp(ve){if(ag(ve)||YI(ve))return oi(ve);if(hW(ve))return sm(ve);if(Te&&Lt&&Zy(ve)&&Jde(Lt)&&Ct?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=Ct.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=Qg(ve)?Mr(ve.argumentExpression,it,un):Ir(ve.name)?c.createStringLiteralFromNode(ve.name):void 0;if(Ls){let Za=c.createTempVariable(void 0);return c.createAssignmentTargetWrapper(Za,c.createReflectSetCall(ln,Ls,Za,mr))}}}return _s(ve,it,s)}function Jg(ve){if(Fb(ve,nr)&&(ve=b1(s,ve)),zm(ve,!0)){let mr=qp(ve.left),ln=Mr(ve.right,it,un);return c.updateBinaryExpression(ve,mr,ve.operatorToken,ln)}return qp(ve)}function ch(ve){if(G_(ve.expression)){let mr=qp(ve.expression);return c.updateSpreadElement(ve,mr)}return _s(ve,it,s)}function mS(ve){if(LJ(ve)){if(cf(ve))return ch(ve);if(!Ep(ve))return Jg(ve)}return _s(ve,it,s)}function Au(ve){let mr=Mr(ve.name,it,PI);if(zm(ve.initializer,!0)){let ln=Jg(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}if(G_(ve.initializer)){let ln=qp(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}return _s(ve,it,s)}function Eg(ve){return Fb(ve,nr)&&(ve=b1(s,ve)),_s(ve,it,s)}function zA(ve){if(G_(ve.expression)){let mr=qp(ve.expression);return c.updateSpreadAssignment(ve,mr)}return _s(ve,it,s)}function NA(ve){return pe.assertNode(ve,_W),Hx(ve)?zA(ve):u0(ve)?Eg(ve):Cm(ve)?Au(ve):_s(ve,it,s)}function oi(ve){return YI(ve)?c.updateArrayLiteralExpression(ve,Os(ve.elements,mS,un)):c.updateObjectLiteralExpression(ve,Os(ve.properties,NA,ww))}function tp(ve,mr,ln){let ni=xd(mr),Ls=mt.get(ni);if(Ls){let Za=Ct,Go=Wt;Ct=Ls,Wt=je,je=!dl(ni)||!(f1(ni)&32),Ke(ve,mr,ln),je=Wt,Wt=Go,Ct=Za;return}switch(mr.kind){case 219:if(gA(ni)||rA(mr)&524288)break;case 263:case 177:case 178:case 179:case 175:case 173:{let Za=Ct,Go=Wt;Ct=void 0,Wt=je,je=!1,Ke(ve,mr,ln),je=Wt,Wt=Go,Ct=Za;return}case 168:{let Za=Ct,Go=je;Ct=Ct?.previous,je=Wt,Ke(ve,mr,ln),je=Go,Ct=Za;return}}Ke(ve,mr,ln)}function JI(ve,mr){return mr=Pe(ve,mr),ve===1?Wh(mr):mr}function Wh(ve){switch(ve.kind){case 80:return bf(ve);case 110:return HC(ve)}return ve}function HC(ve){if(Ye&2&&Ct?.data&&!yt.has(ve)){let{facts:mr,classConstructor:ln,classThis:ni}=Ct.data,Ls=je?ni??ln:ln;if(Ls)return gn(ua(c.cloneNode(Ls),ve),ve);if(mr&1&&ee)return c.createParenthesizedExpression(c.createVoidZero())}return ve}function bf(ve){return UI(ve)||ve}function UI(ve){if(Ye&1&&T.hasNodeCheckFlag(ve,536870912)){let mr=T.getReferencedValueDeclaration(ve);if(mr){let ln=Tt[mr.id];if(ln){let ni=c.cloneNode(ln);return Yg(ni,ve),yh(ni,ve),ni}}}}}function yBs(s,c,g){return s.createAssignment(c,s.createObjectLiteralExpression([s.createPropertyAssignment("value",g||s.createVoidZero())]))}function bBs(s,c,g,d){return s.createCallExpression(s.createPropertyAccessExpression(d,"set"),void 0,[c,g||s.createVoidZero()])}function EBs(s,c,g){return s.createCallExpression(s.createPropertyAccessExpression(g,"add"),void 0,[c])}function SBs(s){return!ZL(s)&&s.escapedText==="#constructor"}function vBs(s){return p(s.left)&&s.operatorToken.kind===103}function BBs(s){return pi(s)&&tm(s)}function Jde(s){return dl(s)||BBs(s)}function I3t(s){let{factory:c,hoistVariableDeclaration:g}=s,d=s.getEmitResolver(),h=s.getCompilerOptions(),_=Hg(h),S=u_(h,"strictNullChecks"),R,T;return{serializeTypeNode:(at,Qe)=>O(at,Ie,Qe),serializeTypeOfNode:(at,Qe,Ct)=>O(at,M,Qe,Ct),serializeParameterTypesOfNode:(at,Qe,Ct)=>O(at,ee,Qe,Ct),serializeReturnTypeOfNode:(at,Qe)=>O(at,ge,Qe)};function O(at,Qe,Ct,mt){let yt=R,Rt=T;R=at.currentLexicalScope,T=at.currentNameScope;let Lt=mt===void 0?Qe(Ct):Qe(Ct,mt);return R=yt,T=Rt,Lt}function V(at,Qe){let Ct=FW(Qe.members,at);return Ct.setAccessor&&eLe(Ct.setAccessor)||Ct.getAccessor&&Zb(Ct.getAccessor)}function M(at,Qe){switch(at.kind){case 173:case 170:return Ie(at.type);case 179:case 178:return Ie(V(at,Qe));case 264:case 232:case 175:return c.createIdentifier("Function");default:return c.createVoidZero()}}function ee(at,Qe){let Ct=xa(at)?fN(at):Eu(at)&&p1(at.body)?at:void 0,mt=[];if(Ct){let yt=re(Ct,Qe),Rt=yt.length;for(let Lt=0;Ltyt.parent&&h2(yt.parent)&&(yt.parent.trueType===yt||yt.parent.falseType===yt)))return c.createIdentifier("Object");let Ct=Pe(at.typeName),mt=c.createTempVariable(g);return c.createConditionalExpression(c.createTypeCheck(c.createAssignment(mt,Ct),"function"),void 0,mt,void 0,c.createIdentifier("Object"));case 1:return Ke(at.typeName);case 2:return c.createVoidZero();case 4:return Tt("BigInt",7);case 6:return c.createIdentifier("Boolean");case 3:return c.createIdentifier("Number");case 5:return c.createIdentifier("String");case 7:return c.createIdentifier("Array");case 8:return Tt("Symbol",2);case 10:return c.createIdentifier("Function");case 9:return c.createIdentifier("Promise");case 11:return c.createIdentifier("Object");default:return pe.assertNever(Qe)}}function Ze(at,Qe){return c.createLogicalAnd(c.createStrictInequality(c.createTypeOfExpression(at),c.createStringLiteral("undefined")),Qe)}function Pe(at){if(at.kind===80){let mt=Ke(at);return Ze(mt,mt)}if(at.left.kind===80)return Ze(Ke(at.left),Ke(at));let Qe=Pe(at.left),Ct=c.createTempVariable(g);return c.createLogicalAnd(c.createLogicalAnd(Qe.left,c.createStrictInequality(c.createAssignment(Ct,Qe.right),c.createVoidZero())),c.createPropertyAccessExpression(Ct,at.right))}function Ke(at){switch(at.kind){case 80:let Qe=UA(gn(q3.cloneNode(at),at),at.parent);return Qe.original=void 0,UA(Qe,eu(R)),Qe;case 167:return et(at)}}function et(at){return c.createPropertyAccessExpression(Ke(at.left),at.right)}function Ye(at){return c.createConditionalExpression(c.createTypeCheck(c.createIdentifier(at),"function"),void 0,c.createIdentifier(at),void 0,c.createIdentifier("Object"))}function Tt(at,Qe){return _FEe(hn)||Eo(hn)?void 0:hn,fp),Ns=hv(Yt),An=ur(Yt),si=S<2?c.getInternalName(Yt,!1,!0):c.getLocalName(Yt,!1,!0),ks=Os(Yt.heritageClauses,M,y1),Ic=Os(Yt.members,M,MI),ou=[];({members:Ic,decorationStatements:ou}=_e(Yt,Ic));let Zn=S>=9&&!!An&&zt(Ic,hn=>pi(hn)&&Ga(hn,256)||dl(hn));Zn&&(Ic=gn(c.createNodeArray([c.createClassStaticBlockDeclaration(c.createBlock([c.createExpressionStatement(c.createAssignment(An,c.createThis()))])),...Ic]),Ic));let ya=c.createClassExpression(Zi,Tr&&Gp(Tr)?void 0:Tr,void 0,ks,Ic);ua(ya,Yt),gn(ya,Ns);let Fl=An&&!Zn?c.createAssignment(An,ya):ya,ba=c.createVariableDeclaration(si,void 0,void 0,Fl);ua(ba,Yt);let Oo=c.createVariableDeclarationList([ba],1),hc=c.createVariableStatement(void 0,Oo);ua(hc,Yt),gn(hc,Ns),yh(hc,Yt);let yr=[hc];if(Pr(yr,ou),Wt(yr,Yt),mn)if(jn){let hn=c.createExportDefault(si);yr.push(hn)}else{let hn=c.createExternalModuleExport(c.getDeclarationName(Yt));yr.push(hn)}return yr}function Te(Yt){return c.updateClassExpression(Yt,Os(Yt.modifiers,V,hg),Yt.name,void 0,Os(Yt.heritageClauses,M,y1),Os(Yt.members,M,MI))}function Ze(Yt){return c.updateConstructorDeclaration(Yt,Os(Yt.modifiers,V,hg),Os(Yt.parameters,M,Si),Mr(Yt.body,M,eg))}function Pe(Yt,Tr){return Yt!==Tr&&(yh(Yt,Tr),Yg(Yt,hv(Tr))),Yt}function Ke(Yt){return Pe(c.updateMethodDeclaration(Yt,Os(Yt.modifiers,V,hg),Yt.asteriskToken,pe.checkDefined(Mr(Yt.name,M,PI)),void 0,void 0,Os(Yt.parameters,M,Si),void 0,Mr(Yt.body,M,eg)),Yt)}function et(Yt){return Pe(c.updateGetAccessorDeclaration(Yt,Os(Yt.modifiers,V,hg),pe.checkDefined(Mr(Yt.name,M,PI)),Os(Yt.parameters,M,Si),void 0,Mr(Yt.body,M,eg)),Yt)}function Ye(Yt){return Pe(c.updateSetAccessorDeclaration(Yt,Os(Yt.modifiers,V,hg),pe.checkDefined(Mr(Yt.name,M,PI)),Os(Yt.parameters,M,Si),Mr(Yt.body,M,eg)),Yt)}function Tt(Yt){if(!(Yt.flags&33554432||Ga(Yt,128)))return Pe(c.updatePropertyDeclaration(Yt,Os(Yt.modifiers,V,hg),pe.checkDefined(Mr(Yt.name,M,PI)),void 0,void 0,Mr(Yt.initializer,M,un)),Yt)}function at(Yt){let Tr=c.updateParameterDeclaration(Yt,LOt(c,Yt.modifiers),Yt.dotDotDotToken,pe.checkDefined(Mr(Yt.name,M,LL)),void 0,void 0,Mr(Yt.initializer,M,un));return Tr!==Yt&&(yh(Tr,Yt),gn(Tr,hv(Yt)),Yg(Tr,hv(Yt)),ti(Tr.name,64)),Tr}function Qe(Yt){return ik(Yt.expression,"___metadata")}function Ct(Yt){if(!Yt)return;let{false:Tr,true:mn}=Ko(Yt.decorators,Qe),jn=[];return Pr(jn,lt(Tr,Gt)),Pr(jn,jt(Yt.parameters,it)),Pr(jn,lt(mn,Gt)),jn}function mt(Yt,Tr,mn){Pr(Yt,lt(Lt(Tr,mn),jn=>c.createExpressionStatement(jn)))}function yt(Yt,Tr,mn){return Ine(!0,Yt,mn)&&Tr===lg(Yt)}function Rt(Yt,Tr){return Le(Yt.members,mn=>yt(mn,Tr,Yt))}function Lt(Yt,Tr){let mn=Rt(Yt,Tr),jn;for(let Zi of mn)jn=Ft(jn,je(Yt,Zi));return jn}function je(Yt,Tr){let mn=dVe(Tr,Yt,!0),jn=Ct(mn);if(!jn)return;let Zi=dt(Yt,Tr),Ns=Dt(Tr,!Ga(Tr,128)),An=pi(Tr)&&!Zw(Tr)?c.createVoidZero():c.createNull(),si=g().createDecorateHelper(jn,Zi,Ns,An);return ti(si,3072),Yg(si,hv(Tr)),si}function Wt(Yt,Tr){let mn=_r(Tr);mn&&Yt.push(ua(c.createExpressionStatement(mn),Tr))}function _r(Yt){let Tr=ott(Yt,!0),mn=Ct(Tr);if(!mn)return;let jn=T&&T[Hy(Yt)],Zi=S<2?c.getInternalName(Yt,!1,!0):c.getDeclarationName(Yt,!1,!0),Ns=g().createDecorateHelper(mn,Zi),An=c.createAssignment(Zi,jn?c.createAssignment(jn,Ns):Ns);return ti(An,3072),Yg(An,hv(Yt)),An}function Gt(Yt){return pe.checkDefined(Mr(Yt.expression,M,un))}function it(Yt,Tr){let mn;if(Yt){mn=[];for(let jn of Yt){let Zi=g().createParamHelper(Gt(jn),Tr);gn(Zi,jn.expression),ti(Zi,3072),mn.push(Zi)}}return mn}function Dt(Yt,Tr){let mn=Yt.name;return p(mn)?c.createIdentifier(""):Un(mn)?Tr&&!kN(mn.expression)?c.getGeneratedNameForNode(mn):mn.expression:Ir(mn)?c.createStringLiteral(Vo(mn)):c.cloneNode(mn)}function tr(){T||(s.enableSubstitution(80),T=[])}function ur(Yt){if(h.hasNodeCheckFlag(Yt,262144)){tr();let Tr=c.createUniqueName(Yt.name&&!Gp(Yt.name)?Vo(Yt.name):"default");return T[Hy(Yt)]=Tr,d(Tr),Tr}}function Gr(Yt){return c.createPropertyAccessExpression(c.getDeclarationName(Yt),"prototype")}function dt(Yt,Tr){return lg(Tr)?c.getDeclarationName(Yt):Gr(Yt)}function pr(Yt,Tr){return Tr=R(Yt,Tr),Yt===1?ot(Tr):Tr}function ot(Yt){switch(Yt.kind){case 80:return ir(Yt)}return Yt}function ir(Yt){return qt(Yt)??Yt}function qt(Yt){if(T&&h.hasNodeCheckFlag(Yt,536870912)){let Tr=h.getReferencedValueDeclaration(Yt);if(Tr){let mn=T[Tr.id];if(mn){let jn=c.cloneNode(mn);return Yg(jn,Yt),yh(jn,Yt),jn}}}}}function m3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=Hg(s.getCompilerOptions()),R,T,O,V,M,ee;return cR(s,re);function re(xe){R=void 0,ee=!1;let fr=_s(xe,Ye,s);return EN(fr,s.readEmitHelpers()),ee&&(W3(fr,32),ee=!1),fr}function ge(){switch(T=void 0,O=void 0,V=void 0,R?.kind){case"class":T=R.classInfo;break;case"class-element":T=R.next.classInfo,O=R.classThis,V=R.classSuper;break;case"name":let xe=R.next.next.next;xe?.kind==="class-element"&&(T=xe.next.classInfo,O=xe.classThis,V=xe.classSuper);break}}function Ie(xe){R={kind:"class",next:R,classInfo:xe,savedPendingExpressions:M},M=void 0,ge()}function _e(){pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),M=R.savedPendingExpressions,R=R.next,ge()}function Ee(xe){var fr,Ue;pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),R={kind:"class-element",next:R},(dl(xe)||pi(xe)&&tm(xe))&&(R.classThis=(fr=R.next.classInfo)==null?void 0:fr.classThis,R.classSuper=(Ue=R.next.classInfo)==null?void 0:Ue.classSuper),ge()}function Ne(){var xe;pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),pe.assert(((xe=R.next)==null?void 0:xe.kind)==="class","Incorrect value for top.next.kind.",()=>{var fr;return`Expected top.next.kind to be 'class' but got '${(fr=R.next)==null?void 0:fr.kind}' instead.`}),R=R.next,ge()}function Te(){pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),R={kind:"name",next:R},ge()}function Ze(){pe.assert(R?.kind==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${R?.kind}' instead.`),R=R.next,ge()}function Pe(){R?.kind==="other"?(pe.assert(!M),R.depth++):(R={kind:"other",next:R,depth:0,savedPendingExpressions:M},M=void 0,ge())}function Ke(){pe.assert(R?.kind==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${R?.kind}' instead.`),R.depth>0?(pe.assert(!M),R.depth--):(M=R.savedPendingExpressions,R=R.next,ge())}function et(xe){return!!(xe.transformFlags&33554432)||!!O&&!!(xe.transformFlags&16384)||!!O&&!!V&&!!(xe.transformFlags&134217728)}function Ye(xe){if(!et(xe))return xe;switch(xe.kind){case 171:return pe.fail("Use `modifierVisitor` instead.");case 264:return _r(xe);case 232:return Gt(xe);case 177:case 173:case 176:return pe.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 170:return Ns(xe);case 227:return ou(xe,!1);case 304:return hc(xe);case 261:return yr(xe);case 209:return hn(xe);case 278:return Wr(xe);case 110:return Yt(xe);case 249:return ks(xe);case 245:return Ic(xe);case 357:return ya(xe,!1);case 218:return Wn(xe,!1);case 356:return pt(xe,!1);case 214:return Tr(xe);case 216:return mn(xe);case 225:case 226:return Zn(xe,!1);case 212:return jn(xe);case 213:return Zi(xe);case 168:return Oo(xe);case 175:case 179:case 178:case 219:case 263:{Pe();let fr=_s(xe,Tt,s);return Ke(),fr}default:return _s(xe,Tt,s)}}function Tt(xe){switch(xe.kind){case 171:return;default:return Ye(xe)}}function at(xe){switch(xe.kind){case 171:return;default:return xe}}function Qe(xe){switch(xe.kind){case 177:return tr(xe);case 175:return dt(xe);case 178:return pr(xe);case 179:return ot(xe);case 173:return qt(xe);case 176:return ir(xe);default:return Ye(xe)}}function Ct(xe){switch(xe.kind){case 225:case 226:return Zn(xe,!0);case 227:return ou(xe,!0);case 357:return ya(xe,!0);case 218:return Wn(xe,!0);default:return Ye(xe)}}function mt(xe){let fr=xe.name&&Ir(xe.name)&&!Gp(xe.name)?Vo(xe.name):xe.name&&p(xe.name)&&!Gp(xe.name)?Vo(xe.name).slice(1):xe.name&&Lg(xe.name)&&qh(xe.name.text,99)?xe.name.text:xa(xe)?"class":"member";return TB(xe)&&(fr=`get_${fr}`),dv(xe)&&(fr=`set_${fr}`),xe.name&&p(xe.name)&&(fr=`private_${fr}`),lg(xe)&&(fr=`static_${fr}`),"_"+fr}function yt(xe,fr){return c.createUniqueName(`${mt(xe)}_${fr}`,24)}function Rt(xe,fr){return c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(xe,void 0,void 0,fr)],1))}function Lt(xe){let fr=c.createUniqueName("_metadata",48),Ue,In,Hn=!1,Mt=!1,$r=!1,ri,oo,Bs;if(rU(!1,xe)){let Ys=zt(xe.members,tn=>(hC(tn)||i0(tn))&&tm(tn));ri=c.createUniqueName("_classThis",Ys?24:48)}for(let Ys of xe.members){if(VL(Ys)&&Ine(!1,Ys,xe))if(tm(Ys)){if(!In){In=c.createUniqueName("_staticExtraInitializers",48);let tn=g().createRunInitializersHelper(ri??c.createThis(),In);Yg(tn,xe.name??rk(xe)),oo??(oo=[]),oo.push(tn)}}else{if(!Ue){Ue=c.createUniqueName("_instanceExtraInitializers",48);let tn=g().createRunInitializersHelper(c.createThis(),Ue);Yg(tn,xe.name??rk(xe)),Bs??(Bs=[]),Bs.push(tn)}Ue??(Ue=c.createUniqueName("_instanceExtraInitializers",48))}if(dl(Ys)?Jz(Ys)||(Hn=!0):pi(Ys)&&(tm(Ys)?Hn||(Hn=!!Ys.initializer||m1(Ys)):Mt||(Mt=!qJ(Ys))),(hC(Ys)||i0(Ys))&&tm(Ys)&&($r=!0),In&&Ue&&Hn&&Mt&&$r)break}return{class:xe,classThis:ri,metadataReference:fr,instanceMethodExtraInitializersName:Ue,staticMethodExtraInitializersName:In,hasStaticInitializers:Hn,hasNonAmbientInstanceFields:Mt,hasStaticPrivateClassElements:$r,pendingStaticInitializers:oo,pendingInstanceInitializers:Bs}}function je(xe){d(),!ltt(xe)&&Fx(!1,xe)&&(xe=IVe(s,xe,c.createStringLiteral("")));let fr=c.getLocalName(xe,!1,!1,!0),Ue=Lt(xe),In=[],Hn,Mt,$r,ri,oo=!1,Bs=Zr(ott(xe,!1));Bs&&(Ue.classDecoratorsName=c.createUniqueName("_classDecorators",48),Ue.classDescriptorName=c.createUniqueName("_classDescriptor",48),Ue.classExtraInitializersName=c.createUniqueName("_classExtraInitializers",48),pe.assertIsDefined(Ue.classThis),In.push(Rt(Ue.classDecoratorsName,c.createArrayLiteralExpression(Bs)),Rt(Ue.classDescriptorName),Rt(Ue.classExtraInitializersName,c.createArrayLiteralExpression()),Rt(Ue.classThis)),Ue.hasStaticPrivateClassElements&&(oo=!0,ee=!0));let Ys=xne(xe.heritageClauses,96),tn=Ys&&Nc(Ys.types),Bn=tn&&Mr(tn.expression,Ye,un);if(Bn){Ue.classSuper=c.createUniqueName("_classSuper",48);let gs=XI(Bn),fs=wd(gs)&&!gs.name||jA(gs)&&!gs.name||gA(gs)?c.createComma(c.createNumericLiteral(0),Bn):Bn;In.push(Rt(Ue.classSuper,fs));let bi=c.updateExpressionWithTypeArguments(tn,Ue.classSuper,void 0),mc=c.updateHeritageClause(Ys,[bi]);ri=c.createNodeArray([mc])}let Mn=Ue.classThis??c.createThis();Ie(Ue),Hn=Ft(Hn,Ht(Ue.metadataReference,Ue.classSuper));let ci=xe.members;if(ci=Os(ci,gs=>Tc(gs)?gs:Qe(gs),MI),ci=Os(ci,gs=>Tc(gs)?Qe(gs):gs,MI),M){let gs;for(let fs of M){fs=Mr(fs,function mc(Ag){if(!(Ag.transformFlags&16384))return Ag;switch(Ag.kind){case 110:return gs||(gs=c.createUniqueName("_outerThis",16),In.unshift(Rt(gs,c.createThis()))),gs;default:return _s(Ag,mc,s)}},un);let bi=c.createExpressionStatement(fs);Hn=Ft(Hn,bi)}M=void 0}if(_e(),zt(Ue.pendingInstanceInitializers)&&!fN(xe)){let gs=it(xe,Ue);if(gs){let fs=kB(xe),bi=!!(fs&&XI(fs.expression).kind!==106),mc=[];if(bi){let dg=c.createSpreadElement(c.createIdentifier("arguments")),yu=c.createCallExpression(c.createSuper(),void 0,[dg]);mc.push(c.createExpressionStatement(yu))}Pr(mc,gs);let Ag=c.createBlock(mc,!0);$r=c.createConstructorDeclaration(void 0,[],Ag)}}if(Ue.staticMethodExtraInitializersName&&In.push(Rt(Ue.staticMethodExtraInitializersName,c.createArrayLiteralExpression())),Ue.instanceMethodExtraInitializersName&&In.push(Rt(Ue.instanceMethodExtraInitializersName,c.createArrayLiteralExpression())),Ue.memberInfos&&Fh(Ue.memberInfos,(gs,fs)=>{lg(fs)&&(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Ue.memberInfos&&Fh(Ue.memberInfos,(gs,fs)=>{lg(fs)||(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Hn=Pr(Hn,Ue.staticNonFieldDecorationStatements),Hn=Pr(Hn,Ue.nonStaticNonFieldDecorationStatements),Hn=Pr(Hn,Ue.staticFieldDecorationStatements),Hn=Pr(Hn,Ue.nonStaticFieldDecorationStatements),Ue.classDescriptorName&&Ue.classDecoratorsName&&Ue.classExtraInitializersName&&Ue.classThis){Hn??(Hn=[]);let gs=c.createPropertyAssignment("value",Mn),fs=c.createObjectLiteralExpression([gs]),bi=c.createAssignment(Ue.classDescriptorName,fs),mc=c.createPropertyAccessExpression(Mn,"name"),Ag=g().createESDecorateHelper(c.createNull(),bi,Ue.classDecoratorsName,{kind:"class",name:mc,metadata:Ue.metadataReference},c.createNull(),Ue.classExtraInitializersName),dg=c.createExpressionStatement(Ag);Yg(dg,rk(xe)),Hn.push(dg);let yu=c.createPropertyAccessExpression(Ue.classDescriptorName,"value"),RI=c.createAssignment(Ue.classThis,yu),pI=c.createAssignment(fr,RI);Hn.push(c.createExpressionStatement(pI))}if(Hn.push(cn(Mn,Ue.metadataReference)),zt(Ue.pendingStaticInitializers)){for(let gs of Ue.pendingStaticInitializers){let fs=c.createExpressionStatement(gs);Yg(fs,qT(gs)),Mt=Ft(Mt,fs)}Ue.pendingStaticInitializers=void 0}if(Ue.classExtraInitializersName){let gs=g().createRunInitializersHelper(Mn,Ue.classExtraInitializersName),fs=c.createExpressionStatement(gs);Yg(fs,xe.name??rk(xe)),Mt=Ft(Mt,fs)}Hn&&Mt&&!Ue.hasStaticInitializers&&(Pr(Hn,Mt),Mt=void 0);let es=Hn&&c.createClassStaticBlockDeclaration(c.createBlock(Hn,!0));es&&oo&&_ie(es,32);let Oi=Mt&&c.createClassStaticBlockDeclaration(c.createBlock(Mt,!0));if(es||$r||Oi){let gs=[],fs=ci.findIndex(Jz);es?(Pr(gs,ci,0,fs+1),gs.push(es),Pr(gs,ci,fs+1)):Pr(gs,ci),$r&&gs.push($r),Oi&&gs.push(Oi),ci=gn(c.createNodeArray(gs),ci)}let Vn=h(),Ui;if(Bs){Ui=c.createClassExpression(void 0,void 0,void 0,ri,ci),Ue.classThis&&(Ui=u3t(c,Ui,Ue.classThis));let gs=c.createVariableDeclaration(fr,void 0,void 0,Ui),fs=c.createVariableDeclarationList([gs]),bi=Ue.classThis?c.createAssignment(fr,Ue.classThis):fr;In.push(c.createVariableStatement(void 0,fs),c.createReturnStatement(bi))}else Ui=c.createClassExpression(void 0,xe.name,void 0,ri,ci),In.push(c.createReturnStatement(Ui));if(oo){W3(Ui,32);for(let gs of Ui.members)(hC(gs)||i0(gs))&&tm(gs)&&W3(gs,32)}return ua(Ui,xe),c.createImmediatelyInvokedArrowFunction(c.mergeLexicalEnvironment(In,Vn))}function Wt(xe){return Fx(!1,xe)||nU(!1,xe)}function _r(xe){if(Wt(xe)){let fr=[],Ue=xd(xe,xa)??xe,In=Ue.name?c.createStringLiteralFromNode(Ue.name):c.createStringLiteral("default"),Hn=Ga(xe,32),Mt=Ga(xe,2048);if(xe.name||(xe=IVe(s,xe,In)),Hn&&Mt){let $r=je(xe);if(xe.name){let ri=c.createVariableDeclaration(c.getLocalName(xe),void 0,void 0,$r);ua(ri,xe);let oo=c.createVariableDeclarationList([ri],1),Bs=c.createVariableStatement(void 0,oo);fr.push(Bs);let Ys=c.createExportDefault(c.getDeclarationName(xe));ua(Ys,xe),yh(Ys,LB(xe)),Yg(Ys,rk(xe)),fr.push(Ys)}else{let ri=c.createExportDefault($r);ua(ri,xe),yh(ri,LB(xe)),Yg(ri,rk(xe)),fr.push(ri)}}else{pe.assertIsDefined(xe.name,"A class declaration that is not a default export must have a name.");let $r=je(xe),ri=Hn?Mn=>y(Mn)?void 0:at(Mn):at,oo=Os(xe.modifiers,ri,hg),Bs=c.getLocalName(xe,!1,!0),Ys=c.createVariableDeclaration(Bs,void 0,void 0,$r);ua(Ys,xe);let tn=c.createVariableDeclarationList([Ys],1),Bn=c.createVariableStatement(oo,tn);if(ua(Bn,xe),yh(Bn,LB(xe)),fr.push(Bn),Hn){let Mn=c.createExternalModuleExport(Bs);ua(Mn,xe),fr.push(Mn)}}return ac(fr)}else{let fr=Os(xe.modifiers,at,hg),Ue=Os(xe.heritageClauses,Ye,y1);Ie(void 0);let In=Os(xe.members,Qe,MI);return _e(),c.updateClassDeclaration(xe,fr,xe.name,void 0,Ue,In)}}function Gt(xe){if(Wt(xe)){let fr=je(xe);return ua(fr,xe),fr}else{let fr=Os(xe.modifiers,at,hg),Ue=Os(xe.heritageClauses,Ye,y1);Ie(void 0);let In=Os(xe.members,Qe,MI);return _e(),c.updateClassExpression(xe,fr,xe.name,void 0,Ue,In)}}function it(xe,fr){if(zt(fr.pendingInstanceInitializers)){let Ue=[];return Ue.push(c.createExpressionStatement(c.inlineExpressions(fr.pendingInstanceInitializers))),fr.pendingInstanceInitializers=void 0,Ue}}function Dt(xe,fr,Ue,In,Hn,Mt){let $r=In[Hn],ri=fr[$r];if(Pr(xe,Os(fr,Ye,Lc,Ue,$r-Ue)),kU(ri)){let oo=[];Dt(oo,ri.tryBlock.statements,0,In,Hn+1,Mt);let Bs=c.createNodeArray(oo);gn(Bs,ri.tryBlock.statements),xe.push(c.updateTryStatement(ri,c.updateBlock(ri.tryBlock,oo),Mr(ri.catchClause,Ye,IQ),Mr(ri.finallyBlock,Ye,eg)))}else Pr(xe,Os(fr,Ye,Lc,$r,1)),Pr(xe,Mt);Pr(xe,Os(fr,Ye,Lc,$r+1))}function tr(xe){Ee(xe);let fr=Os(xe.modifiers,at,hg),Ue=Os(xe.parameters,Ye,Si),In;if(xe.body&&T){let Hn=it(T.class,T);if(Hn){let Mt=[],$r=c.copyPrologue(xe.body.statements,Mt,!1,Ye),ri=gVe(xe.body.statements,$r);ri.length>0?Dt(Mt,xe.body.statements,$r,ri,0,Hn):(Pr(Mt,Hn),Pr(Mt,Os(xe.body.statements,Ye,Lc))),In=c.createBlock(Mt,!0),ua(In,xe.body),gn(In,xe.body)}}return In??(In=Mr(xe.body,Ye,eg)),Ne(),c.updateConstructorDeclaration(xe,fr,Ue,In)}function ur(xe,fr){return xe!==fr&&(yh(xe,fr),Yg(xe,rk(fr))),xe}function Gr(xe,fr,Ue){let In,Hn,Mt,$r,ri,oo;if(!fr){let tn=Os(xe.modifiers,at,hg);return Te(),Hn=ba(xe.name),Ze(),{modifiers:tn,referencedName:In,name:Hn,initializersName:Mt,descriptorName:oo,thisArg:ri}}let Bs=Zr(dVe(xe,fr.class,!1)),Ys=Os(xe.modifiers,at,hg);if(Bs){let tn=yt(xe,"decorators"),Bn=c.createArrayLiteralExpression(Bs),Mn=c.createAssignment(tn,Bn),ci={memberDecoratorsName:tn};fr.memberInfos??(fr.memberInfos=new Map),fr.memberInfos.set(xe,ci),M??(M=[]),M.push(Mn);let es=VL(xe)||i0(xe)?lg(xe)?fr.staticNonFieldDecorationStatements??(fr.staticNonFieldDecorationStatements=[]):fr.nonStaticNonFieldDecorationStatements??(fr.nonStaticNonFieldDecorationStatements=[]):pi(xe)&&!i0(xe)?lg(xe)?fr.staticFieldDecorationStatements??(fr.staticFieldDecorationStatements=[]):fr.nonStaticFieldDecorationStatements??(fr.nonStaticFieldDecorationStatements=[]):pe.fail(),Oi=wg(xe)?"getter":kg(xe)?"setter":gu(xe)?"method":i0(xe)?"accessor":pi(xe)?"field":pe.fail(),Vn;if(Ir(xe.name)||p(xe.name))Vn={computed:!1,name:xe.name};else if(Gw(xe.name))Vn={computed:!0,name:c.createStringLiteralFromNode(xe.name)};else{let gs=xe.name.expression;Gw(gs)&&!Ir(gs)?Vn={computed:!0,name:c.createStringLiteralFromNode(gs)}:(Te(),{referencedName:In,name:Hn}=Fl(xe.name),Vn={computed:!0,name:In},Ze())}let Ui={kind:Oi,name:Vn,static:lg(xe),private:p(xe.name),access:{get:pi(xe)||wg(xe)||gu(xe),set:pi(xe)||kg(xe)},metadata:fr.metadataReference};if(VL(xe)){let gs=lg(xe)?fr.staticMethodExtraInitializersName:fr.instanceMethodExtraInitializersName;pe.assertIsDefined(gs);let fs;hC(xe)&&Ue&&(fs=Ue(xe,Os(Ys,Ag=>Gs(Ag,G),hg)),ci.memberDescriptorName=oo=yt(xe,"descriptor"),fs=c.createAssignment(oo,fs));let bi=g().createESDecorateHelper(c.createThis(),fs??c.createNull(),tn,Ui,c.createNull(),gs),mc=c.createExpressionStatement(bi);Yg(mc,rk(xe)),es.push(mc)}else if(pi(xe)){Mt=ci.memberInitializersName??(ci.memberInitializersName=yt(xe,"initializers")),$r=ci.memberExtraInitializersName??(ci.memberExtraInitializersName=yt(xe,"extraInitializers")),lg(xe)&&(ri=fr.classThis);let gs;hC(xe)&&Zw(xe)&&Ue&&(gs=Ue(xe,void 0),ci.memberDescriptorName=oo=yt(xe,"descriptor"),gs=c.createAssignment(oo,gs));let fs=g().createESDecorateHelper(i0(xe)?c.createThis():c.createNull(),gs??c.createNull(),tn,Ui,Mt,$r),bi=c.createExpressionStatement(fs);Yg(bi,rk(xe)),es.push(bi)}}return Hn===void 0&&(Te(),Hn=ba(xe.name),Ze()),!zt(Ys)&&(gu(xe)||pi(xe))&&ti(Hn,1024),{modifiers:Ys,referencedName:In,name:Hn,initializersName:Mt,extraInitializersName:$r,descriptorName:oo,thisArg:ri}}function dt(xe){Ee(xe);let{modifiers:fr,name:Ue,descriptorName:In}=Gr(xe,T,hr);if(In)return Ne(),ur(nn(fr,Ue,In),xe);{let Hn=Os(xe.parameters,Ye,Si),Mt=Mr(xe.body,Ye,eg);return Ne(),ur(c.updateMethodDeclaration(xe,fr,xe.asteriskToken,Ue,void 0,void 0,Hn,void 0,Mt),xe)}}function pr(xe){Ee(xe);let{modifiers:fr,name:Ue,descriptorName:In}=Gr(xe,T,En);if(In)return Ne(),ur(bn(fr,Ue,In),xe);{let Hn=Os(xe.parameters,Ye,Si),Mt=Mr(xe.body,Ye,eg);return Ne(),ur(c.updateGetAccessorDeclaration(xe,fr,Ue,Hn,void 0,Mt),xe)}}function ot(xe){Ee(xe);let{modifiers:fr,name:Ue,descriptorName:In}=Gr(xe,T,Ni);if(In)return Ne(),ur(ds(fr,Ue,In),xe);{let Hn=Os(xe.parameters,Ye,Si),Mt=Mr(xe.body,Ye,eg);return Ne(),ur(c.updateSetAccessorDeclaration(xe,fr,Ue,Hn,Mt),xe)}}function ir(xe){Ee(xe);let fr;if(Jz(xe))fr=_s(xe,Ye,s);else if(Xde(xe)){let Ue=O;O=void 0,fr=_s(xe,Ye,s),O=Ue}else if(xe=_s(xe,Ye,s),fr=xe,T&&(T.hasStaticInitializers=!0,zt(T.pendingStaticInitializers))){let Ue=[];for(let Mt of T.pendingStaticInitializers){let $r=c.createExpressionStatement(Mt);Yg($r,qT(Mt)),Ue.push($r)}let In=c.createBlock(Ue,!0);fr=[c.createClassStaticBlockDeclaration(In),fr],T.pendingStaticInitializers=void 0}return Ne(),fr}function qt(xe){Fb(xe,An)&&(xe=b1(s,xe,si(xe.initializer))),Ee(xe),pe.assert(!qJ(xe),"Not yet implemented.");let{modifiers:fr,name:Ue,initializersName:In,extraInitializersName:Hn,descriptorName:Mt,thisArg:$r}=Gr(xe,T,Zw(xe)?Gi:void 0);d();let ri=Mr(xe.initializer,Ye,un);In&&(ri=g().createRunInitializersHelper($r??c.createThis(),In,ri??c.createVoidZero())),lg(xe)&&T&&ri&&(T.hasStaticInitializers=!0);let oo=h();if(zt(oo)&&(ri=c.createImmediatelyInvokedArrowFunction([...oo,c.createReturnStatement(ri)])),T&&(lg(xe)?(ri=nr(T,!0,ri),Hn&&(T.pendingStaticInitializers??(T.pendingStaticInitializers=[]),T.pendingStaticInitializers.push(g().createRunInitializersHelper(T.classThis??c.createThis(),Hn)))):(ri=nr(T,!1,ri),Hn&&(T.pendingInstanceInitializers??(T.pendingInstanceInitializers=[]),T.pendingInstanceInitializers.push(g().createRunInitializersHelper(c.createThis(),Hn))))),Ne(),Zw(xe)&&Mt){let Bs=LB(xe),Ys=qT(xe),tn=xe.name,Bn=tn,Mn=tn;if(Un(tn)&&!kN(tn.expression)){let Ui=k9e(tn);if(Ui)Bn=c.updateComputedPropertyName(tn,Mr(tn.expression,Ye,un)),Mn=c.updateComputedPropertyName(tn,Ui.left);else{let gs=c.createTempVariable(_);Yg(gs,tn.expression);let fs=Mr(tn.expression,Ye,un),bi=c.createAssignment(gs,fs);Yg(bi,tn.expression),Bn=c.updateComputedPropertyName(tn,bi),Mn=c.updateComputedPropertyName(tn,gs)}}let ci=Os(fr,Ui=>Ui.kind!==129?Ui:void 0,hg),es=ret(c,xe,ci,ri);ua(es,xe),ti(es,3072),Yg(es,Ys),Yg(es.name,xe.name);let Oi=bn(ci,Bn,Mt);ua(Oi,xe),yh(Oi,Bs),Yg(Oi,Ys);let Vn=ds(ci,Mn,Mt);return ua(Vn,xe),ti(Vn,3072),Yg(Vn,Ys),[es,Oi,Vn]}return ur(c.updatePropertyDeclaration(xe,fr,Ue,void 0,void 0,ri),xe)}function Yt(xe){return O??xe}function Tr(xe){if(Zy(xe.expression)&&O){let fr=Mr(xe.expression,Ye,un),Ue=Os(xe.arguments,Ye,un),In=c.createFunctionCallCall(fr,O,Ue);return ua(In,xe),gn(In,xe),In}return _s(xe,Ye,s)}function mn(xe){if(Zy(xe.tag)&&O){let fr=Mr(xe.tag,Ye,un),Ue=c.createFunctionBindCall(fr,O,[]);ua(Ue,xe),gn(Ue,xe);let In=Mr(xe.template,Ye,yW);return c.updateTaggedTemplateExpression(xe,Ue,void 0,In)}return _s(xe,Ye,s)}function jn(xe){if(Zy(xe)&&Ir(xe.name)&&O&&V){let fr=c.createStringLiteralFromNode(xe.name),Ue=c.createReflectGetCall(V,fr,O);return ua(Ue,xe.expression),gn(Ue,xe.expression),Ue}return _s(xe,Ye,s)}function Zi(xe){if(Zy(xe)&&O&&V){let fr=Mr(xe.argumentExpression,Ye,un),Ue=c.createReflectGetCall(V,fr,O);return ua(Ue,xe.expression),gn(Ue,xe.expression),Ue}return _s(xe,Ye,s)}function Ns(xe){Fb(xe,An)&&(xe=b1(s,xe,si(xe.initializer)));let fr=c.updateParameterDeclaration(xe,void 0,xe.dotDotDotToken,Mr(xe.name,Ye,LL),void 0,void 0,Mr(xe.initializer,Ye,un));return fr!==xe&&(yh(fr,xe),gn(fr,hv(xe)),Yg(fr,hv(xe)),ti(fr.name,64)),fr}function An(xe){return wd(xe)&&!xe.name&&Wt(xe)}function si(xe){let fr=XI(xe);return wd(fr)&&!fr.name&&!Fx(!1,fr)}function ks(xe){return c.updateForStatement(xe,Mr(xe.initializer,Ct,yE),Mr(xe.condition,Ye,un),Mr(xe.incrementor,Ct,un),My(xe.statement,Ye,s))}function Ic(xe){return _s(xe,Ct,s)}function ou(xe,fr){if(Lx(xe)){let Ue=Tu(xe.left),In=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,Ue,xe.operatorToken,In)}if(zm(xe)){if(Fb(xe,An))return xe=b1(s,xe,si(xe.right)),_s(xe,Ye,s);if(Zy(xe.left)&&O&&V){let Ue=Qg(xe.left)?Mr(xe.left.argumentExpression,Ye,un):Ir(xe.left.name)?c.createStringLiteralFromNode(xe.left.name):void 0;if(Ue){let In=Mr(xe.right,Ye,un);if(Hde(xe.operatorToken.kind)){let Mt=Ue;kN(Ue)||(Mt=c.createTempVariable(_),Ue=c.createAssignment(Mt,Ue));let $r=c.createReflectGetCall(V,Mt,O);ua($r,xe.left),gn($r,xe.left),In=c.createBinaryExpression($r,Yde(xe.operatorToken.kind),In),gn(In,xe)}let Hn=fr?void 0:c.createTempVariable(_);return Hn&&(In=c.createAssignment(Hn,In),gn(Hn,xe)),In=c.createReflectSetCall(V,Ue,In,O),ua(In,xe),gn(In,xe),Hn&&(In=c.createComma(In,Hn),gn(In,xe)),In}}}if(xe.operatorToken.kind===28){let Ue=Mr(xe.left,Ct,un),In=Mr(xe.right,fr?Ct:Ye,un);return c.updateBinaryExpression(xe,Ue,xe.operatorToken,In)}return _s(xe,Ye,s)}function Zn(xe,fr){if(xe.operator===46||xe.operator===47){let Ue=JA(xe.operand);if(Zy(Ue)&&O&&V){let In=Qg(Ue)?Mr(Ue.argumentExpression,Ye,un):Ir(Ue.name)?c.createStringLiteralFromNode(Ue.name):void 0;if(In){let Hn=In;kN(In)||(Hn=c.createTempVariable(_),In=c.createAssignment(Hn,In));let Mt=c.createReflectGetCall(V,Hn,O);ua(Mt,xe),gn(Mt,xe);let $r=fr?void 0:c.createTempVariable(_);return Mt=B9e(c,xe,Mt,_,$r),Mt=c.createReflectSetCall(V,In,Mt,O),ua(Mt,xe),gn(Mt,xe),$r&&(Mt=c.createComma(Mt,$r),gn(Mt,xe)),Mt}}}return _s(xe,Ye,s)}function ya(xe,fr){let Ue=fr?t1e(xe.elements,Ct):t1e(xe.elements,Ye,Ct);return c.updateCommaListExpression(xe,Ue)}function Fl(xe){if(Gw(xe)||p(xe)){let Mt=c.createStringLiteralFromNode(xe),$r=Mr(xe,Ye,PI);return{referencedName:Mt,name:$r}}if(Gw(xe.expression)&&!Ir(xe.expression)){let Mt=c.createStringLiteralFromNode(xe.expression),$r=Mr(xe,Ye,PI);return{referencedName:Mt,name:$r}}let fr=c.getGeneratedNameForNode(xe);_(fr);let Ue=g().createPropKeyHelper(Mr(xe.expression,Ye,un)),In=c.createAssignment(fr,Ue),Hn=c.updateComputedPropertyName(xe,st(In));return{referencedName:fr,name:Hn}}function ba(xe){return Un(xe)?Oo(xe):Mr(xe,Ye,PI)}function Oo(xe){let fr=Mr(xe.expression,Ye,un);return kN(fr)||(fr=st(fr)),c.updateComputedPropertyName(xe,fr)}function hc(xe){return Fb(xe,An)&&(xe=b1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function yr(xe){return Fb(xe,An)&&(xe=b1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function hn(xe){return Fb(xe,An)&&(xe=b1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function Pi(xe){if(ag(xe)||YI(xe))return Tu(xe);if(Zy(xe)&&O&&V){let fr=Qg(xe)?Mr(xe.argumentExpression,Ye,un):Ir(xe.name)?c.createStringLiteralFromNode(xe.name):void 0;if(fr){let Ue=c.createTempVariable(void 0),In=c.createAssignmentTargetWrapper(Ue,c.createReflectSetCall(V,fr,Ue,O));return ua(In,xe),gn(In,xe),In}}return _s(xe,Ye,s)}function co(xe){if(zm(xe,!0)){Fb(xe,An)&&(xe=b1(s,xe,si(xe.right)));let fr=Pi(xe.left),Ue=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,fr,xe.operatorToken,Ue)}else return Pi(xe)}function pa(xe){if(G_(xe.expression)){let fr=Pi(xe.expression);return c.updateSpreadElement(xe,fr)}return _s(xe,Ye,s)}function Pa(xe){return pe.assertNode(xe,LJ),cf(xe)?pa(xe):Ep(xe)?_s(xe,Ye,s):co(xe)}function $c(xe){let fr=Mr(xe.name,Ye,PI);if(zm(xe.initializer,!0)){let Ue=co(xe.initializer);return c.updatePropertyAssignment(xe,fr,Ue)}if(G_(xe.initializer)){let Ue=Pi(xe.initializer);return c.updatePropertyAssignment(xe,fr,Ue)}return _s(xe,Ye,s)}function Qu(xe){return Fb(xe,An)&&(xe=b1(s,xe,si(xe.objectAssignmentInitializer))),_s(xe,Ye,s)}function Rg(xe){if(G_(xe.expression)){let fr=Pi(xe.expression);return c.updateSpreadAssignment(xe,fr)}return _s(xe,Ye,s)}function Cs(xe){return pe.assertNode(xe,_W),Hx(xe)?Rg(xe):u0(xe)?Qu(xe):Cm(xe)?$c(xe):_s(xe,Ye,s)}function Tu(xe){if(YI(xe)){let fr=Os(xe.elements,Pa,un);return c.updateArrayLiteralExpression(xe,fr)}else{let fr=Os(xe.properties,Cs,ww);return c.updateObjectLiteralExpression(xe,fr)}}function Wr(xe){return Fb(xe,An)&&(xe=b1(s,xe,si(xe.expression))),_s(xe,Ye,s)}function Wn(xe,fr){let Ue=fr?Ct:Ye,In=Mr(xe.expression,Ue,un);return c.updateParenthesizedExpression(xe,In)}function pt(xe,fr){let Ue=fr?Ct:Ye,In=Mr(xe.expression,Ue,un);return c.updatePartiallyEmittedExpression(xe,In)}function on(xe,fr){return zt(xe)&&(fr?dI(fr)?(xe.push(fr.expression),fr=c.updateParenthesizedExpression(fr,c.inlineExpressions(xe))):(xe.push(fr),fr=c.inlineExpressions(xe)):fr=c.inlineExpressions(xe)),fr}function st(xe){let fr=on(M,xe);return pe.assertIsDefined(fr),fr!==xe&&(M=void 0),fr}function nr(xe,fr,Ue){let In=on(fr?xe.pendingStaticInitializers:xe.pendingInstanceInitializers,Ue);return In!==Ue&&(fr?xe.pendingStaticInitializers=void 0:xe.pendingInstanceInitializers=void 0),In}function Zr(xe){if(!xe)return;let fr=[];return Pr(fr,lt(xe.decorators,Kr)),fr}function Kr(xe){let fr=Mr(xe.expression,Ye,un);ti(fr,3072);let Ue=XI(fr);if(bp(Ue)){let{target:In,thisArg:Hn}=c.createCallBinding(fr,_,S,!0);return c.restoreOuterExpressions(fr,c.createFunctionBindCall(In,Hn,[]))}return fr}function Dn(xe,fr,Ue,In,Hn,Mt,$r){let ri=c.createFunctionExpression(Ue,In,void 0,void 0,Mt,void 0,$r??c.createBlock([]));ua(ri,xe),Yg(ri,rk(xe)),ti(ri,3072);let oo=Hn==="get"||Hn==="set"?Hn:void 0,Bs=c.createStringLiteralFromNode(fr,void 0),Ys=g().createSetFunctionNameHelper(ri,Bs,oo),tn=c.createPropertyAssignment(c.createIdentifier(Hn),Ys);return ua(tn,xe),Yg(tn,rk(xe)),ti(tn,3072),tn}function hr(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,xe.asteriskToken,"value",Os(xe.parameters,Ye,Si),Mr(xe.body,Ye,eg))])}function En(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],Mr(xe.body,Ye,eg))])}function Ni(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"set",Os(xe.parameters,Ye,Si),Mr(xe.body,Ye,eg))])}function Gi(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)))])),Dn(xe,xe.name,fr,void 0,"set",[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)),c.createIdentifier("value")))]))])}function nn(xe,fr,Ue){return xe=Os(xe,In=>Ge(In)?In:void 0,hg),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(Ue,c.createIdentifier("value")))]))}function bn(xe,fr,Ue){return xe=Os(xe,In=>Ge(In)?In:void 0,hg),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Ue,c.createIdentifier("get")),c.createThis(),[]))]))}function ds(xe,fr,Ue){return xe=Os(xe,In=>Ge(In)?In:void 0,hg),c.createSetAccessorDeclaration(xe,fr,[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Ue,c.createIdentifier("set")),c.createThis(),[c.createIdentifier("value")]))]))}function Ht(xe,fr){let Ue=c.createVariableDeclaration(xe,void 0,void 0,c.createConditionalExpression(c.createLogicalAnd(c.createTypeCheck(c.createIdentifier("Symbol"),"function"),c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),c.createToken(58),c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"create"),void 0,[fr?wt(fr):c.createNull()]),c.createToken(59),c.createVoidZero()));return c.createVariableStatement(void 0,c.createVariableDeclarationList([Ue],2))}function cn(xe,fr){let Ue=c.createObjectDefinePropertyCall(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata"),c.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:fr},!0));return ti(c.createIfStatement(fr,c.createExpressionStatement(Ue)),1)}function wt(xe){return c.createBinaryExpression(c.createElementAccessExpression(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),61,c.createNull())}}function C3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Hg(R),O=0,V=0,M,ee,re,ge,Ie=[],_e=0,Ee=s.onEmitNode,Ne=s.onSubstituteNode;return s.onEmitNode=Ic,s.onSubstituteNode=ou,cR(s,Te);function Te(yr){if(yr.isDeclarationFile)return yr;Ze(1,!1),Ze(2,!cne(yr,R));let hn=_s(yr,Qe,s);return EN(hn,s.readEmitHelpers()),hn}function Ze(yr,hn){_e=hn?_e|yr:_e&~yr}function Pe(yr){return(_e&yr)!==0}function Ke(){return!Pe(1)}function et(){return Pe(2)}function Ye(yr,hn,Pi){let co=yr&~_e;if(co){Ze(co,!0);let pa=hn(Pi);return Ze(co,!1),pa}return hn(Pi)}function Tt(yr){return _s(yr,Qe,s)}function at(yr){switch(yr.kind){case 219:case 263:case 175:case 178:case 179:case 177:return yr;case 170:case 209:case 261:break;case 80:if(ge&&S.isArgumentsLocalBinding(yr))return ge;break}return _s(yr,at,s)}function Qe(yr){if(!(yr.transformFlags&256))return ge?at(yr):yr;switch(yr.kind){case 134:return;case 224:return Wt(yr);case 175:return Ye(3,Gt,yr);case 263:return Ye(3,tr,yr);case 219:return Ye(3,ur,yr);case 220:return Ye(1,Gr,yr);case 212:return ee&&jo(yr)&&yr.expression.kind===108&&ee.add(yr.name.escapedText),_s(yr,Qe,s);case 213:return ee&&yr.expression.kind===108&&(re=!0),_s(yr,Qe,s);case 178:return Ye(3,it,yr);case 179:return Ye(3,Dt,yr);case 177:return Ye(3,_r,yr);case 264:case 232:return Ye(3,Tt,yr);default:return _s(yr,Qe,s)}}function Ct(yr){if(MZe(yr))switch(yr.kind){case 244:return yt(yr);case 249:return je(yr);case 250:return Rt(yr);case 251:return Lt(yr);case 300:return mt(yr);case 242:case 256:case 270:case 297:case 298:case 259:case 247:case 248:case 246:case 255:case 257:return _s(yr,Ct,s);default:return pe.assertNever(yr,"Unhandled node.")}return Qe(yr)}function mt(yr){let hn=new Set;dt(yr.variableDeclaration,hn);let Pi;if(hn.forEach((co,pa)=>{M.has(pa)&&(Pi||(Pi=new Set(M)),Pi.delete(pa))}),Pi){let co=M;M=Pi;let pa=_s(yr,Ct,s);return M=co,pa}else return _s(yr,Ct,s)}function yt(yr){if(pr(yr.declarationList)){let hn=ot(yr.declarationList,!1);return hn?c.createExpressionStatement(hn):void 0}return _s(yr,Qe,s)}function Rt(yr){return c.updateForInStatement(yr,pr(yr.initializer)?ot(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,yE)),pe.checkDefined(Mr(yr.expression,Qe,un)),My(yr.statement,Ct,s))}function Lt(yr){return c.updateForOfStatement(yr,Mr(yr.awaitModifier,Qe,U),pr(yr.initializer)?ot(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,yE)),pe.checkDefined(Mr(yr.expression,Qe,un)),My(yr.statement,Ct,s))}function je(yr){let hn=yr.initializer;return c.updateForStatement(yr,pr(hn)?ot(hn,!1):Mr(yr.initializer,Qe,yE),Mr(yr.condition,Qe,un),Mr(yr.incrementor,Qe,un),My(yr.statement,Ct,s))}function Wt(yr){return Ke()?_s(yr,Qe,s):ua(gn(c.createYieldExpression(void 0,Mr(yr.expression,Qe,un)),yr),yr)}function _r(yr){let hn=ge;ge=void 0;let Pi=c.updateConstructorDeclaration(yr,Os(yr.modifiers,Qe,hg),wI(yr.parameters,Qe,s),mn(yr));return ge=hn,Pi}function Gt(yr){let hn,Pi=BI(yr),co=ge;ge=void 0;let pa=c.updateMethodDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.asteriskToken,yr.name,void 0,void 0,hn=Pi&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,Pi&2?Ns(yr,hn):mn(yr));return ge=co,pa}function it(yr){let hn=ge;ge=void 0;let Pi=c.updateGetAccessorDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.name,wI(yr.parameters,Qe,s),void 0,mn(yr));return ge=hn,Pi}function Dt(yr){let hn=ge;ge=void 0;let Pi=c.updateSetAccessorDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.name,wI(yr.parameters,Qe,s),mn(yr));return ge=hn,Pi}function tr(yr){let hn,Pi=ge;ge=void 0;let co=BI(yr),pa=c.updateFunctionDeclaration(yr,Os(yr.modifiers,Qe,fp),yr.asteriskToken,yr.name,void 0,hn=co&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,co&2?Ns(yr,hn):fS(yr.body,Qe,s));return ge=Pi,pa}function ur(yr){let hn,Pi=ge;ge=void 0;let co=BI(yr),pa=c.updateFunctionExpression(yr,Os(yr.modifiers,Qe,hg),yr.asteriskToken,yr.name,void 0,hn=co&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,co&2?Ns(yr,hn):fS(yr.body,Qe,s));return ge=Pi,pa}function Gr(yr){let hn,Pi=BI(yr);return c.updateArrowFunction(yr,Os(yr.modifiers,Qe,hg),void 0,hn=Pi&2?Zi(yr):wI(yr.parameters,Qe,s),void 0,yr.equalsGreaterThanToken,Pi&2?Ns(yr,hn):fS(yr.body,Qe,s))}function dt({name:yr},hn){if(Ir(yr))hn.add(yr.escapedText);else for(let Pi of yr.elements)Ep(Pi)||dt(Pi,hn)}function pr(yr){return!!yr&&d_(yr)&&!(yr.flags&7)&&yr.declarations.some(Tr)}function ot(yr,hn){ir(yr);let Pi=mU(yr);return Pi.length===0?hn?Mr(c.converters.convertToAssignmentElementTarget(yr.declarations[0].name),Qe,un):void 0:c.inlineExpressions(lt(Pi,Yt))}function ir(yr){F(yr.declarations,qt)}function qt({name:yr}){if(Ir(yr))_(yr);else for(let hn of yr.elements)Ep(hn)||qt(hn)}function Yt(yr){let hn=Yg(c.createAssignment(c.converters.convertToAssignmentElementTarget(yr.name),yr.initializer),yr);return pe.checkDefined(Mr(hn,Qe,un))}function Tr({name:yr}){if(Ir(yr))return M.has(yr.escapedText);for(let hn of yr.elements)if(!Ep(hn)&&Tr(hn))return!0;return!1}function mn(yr){pe.assertIsDefined(yr.body);let hn=ee,Pi=re;ee=new Set,re=!1;let co=fS(yr.body,Qe,s),pa=xd(yr,Gd);if(T>=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128))&&(BI(pa)&3)!==3){if(ks(),ee.size){let $c=hVe(c,S,yr,ee);Ie[id($c)]=!0;let Qu=co.statements.slice();Nw(Qu,[$c]),co=c.updateBlock(co,Qu)}re&&(S.hasNodeCheckFlag(yr,256)?gQ(co,VF):S.hasNodeCheckFlag(yr,128)&&gQ(co,Sie))}return ee=hn,re=Pi,co}function jn(){pe.assert(ge);let yr=c.createVariableDeclaration(ge,void 0,void 0,c.createIdentifier("arguments")),hn=c.createVariableStatement(void 0,[yr]);return x0(hn),Ow(hn,2097152),hn}function Zi(yr){if(n1e(yr.parameters))return wI(yr.parameters,Qe,s);let hn=[];for(let co of yr.parameters){if(co.initializer||co.dotDotDotToken){if(yr.kind===220){let Pa=c.createParameterDeclaration(void 0,c.createToken(26),c.createUniqueName("args",8));hn.push(Pa)}break}let pa=c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(co.name,8));hn.push(pa)}let Pi=c.createNodeArray(hn);return gn(Pi,yr.parameters),Pi}function Ns(yr,hn){let Pi=n1e(yr.parameters)?void 0:wI(yr.parameters,Qe,s);d();let pa=xd(yr,Eu).type,Pa=T<2?si(pa):void 0,$c=yr.kind===220,Qu=ge,Cs=S.hasNodeCheckFlag(yr,512)&&!ge;Cs&&(ge=c.createUniqueName("arguments"));let Tu;if(Pi)if($c){let Zr=[];pe.assert(hn.length<=yr.parameters.length);for(let Kr=0;Kr=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128));if(Kr&&(ks(),ee.size)){let hr=hVe(c,S,yr,ee);Ie[id(hr)]=!0,Nw(Zr,[hr])}Cs&&Nw(Zr,[jn()]);let Dn=c.createBlock(Zr,!0);gn(Dn,yr.body),Kr&&re&&(S.hasNodeCheckFlag(yr,256)?gQ(Dn,VF):S.hasNodeCheckFlag(yr,128)&&gQ(Dn,Sie)),nr=Dn}return M=Wr,$c||(ee=Wn,re=pt,ge=Qu),nr}function An(yr,hn){return eg(yr)?c.updateBlock(yr,Os(yr.statements,Ct,Lc,hn)):c.converters.convertToFunctionBlock(pe.checkDefined(Mr(yr,Ct,h7)))}function si(yr){let hn=yr&&fne(yr);if(hn&&mC(hn)){let Pi=S.getTypeReferenceSerializationKind(hn);if(Pi===1||Pi===0)return hn}}function ks(){O&1||(O|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Ic(yr,hn,Pi){if(O&1&&Oo(hn)){let co=(S.hasNodeCheckFlag(hn,128)?128:0)|(S.hasNodeCheckFlag(hn,256)?256:0);if(co!==V){let pa=V;V=co,Ee(yr,hn,Pi),V=pa;return}}else if(O&&Ie[id(hn)]){let co=V;V=0,Ee(yr,hn,Pi),V=co;return}Ee(yr,hn,Pi)}function ou(yr,hn){return hn=Ne(yr,hn),yr===1&&V?Zn(hn):hn}function Zn(yr){switch(yr.kind){case 212:return ya(yr);case 213:return Fl(yr);case 214:return ba(yr)}return yr}function ya(yr){return yr.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),yr.name),yr):yr}function Fl(yr){return yr.expression.kind===108?hc(yr.argumentExpression,yr):yr}function ba(yr){let hn=yr.expression;if(Zy(hn)){let Pi=jo(hn)?ya(hn):Fl(hn);return c.createCallExpression(c.createPropertyAccessExpression(Pi,"call"),void 0,[c.createThis(),...yr.arguments])}return yr}function Oo(yr){let hn=yr.kind;return hn===264||hn===177||hn===175||hn===178||hn===179}function hc(yr,hn){return V&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),"value"),hn):gn(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),hn)}}function hVe(s,c,g,d){let h=c.hasNodeCheckFlag(g,256),_=[];return d.forEach((S,R)=>{let T=Bc(R),O=[];O.push(s.createPropertyAssignment("get",s.createArrowFunction(void 0,void 0,[],void 0,void 0,ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8)))),h&&O.push(s.createPropertyAssignment("set",s.createArrowFunction(void 0,void 0,[s.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,s.createAssignment(ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8),s.createIdentifier("v"))))),_.push(s.createPropertyAssignment(T,s.createObjectLiteralExpression(O)))}),s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(s.createUniqueName("_super",48),void 0,void 0,s.createCallExpression(s.createPropertyAccessExpression(s.createIdentifier("Object"),"create"),void 0,[s.createNull(),s.createObjectLiteralExpression(_,!0)]))],2))}function _3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Hg(R),O=s.onEmitNode;s.onEmitNode=Qu;let V=s.onSubstituteNode;s.onSubstituteNode=Rg;let M=!1,ee=0,re,ge,Ie=0,_e=0,Ee,Ne,Te,Ze,Pe=[];return cR(s,at);function Ke(st,nr){return _e!==(_e&~st|nr)}function et(st,nr){let Zr=_e;return _e=(_e&~st|nr)&3,Zr}function Ye(st){_e=st}function Tt(st){Ne=Ft(Ne,c.createVariableDeclaration(st))}function at(st){if(st.isDeclarationFile)return st;Ee=st;let nr=Gr(st);return EN(nr,s.readEmitHelpers()),Ee=void 0,Ne=void 0,nr}function Qe(st){return Lt(st,!1)}function Ct(st){return Lt(st,!0)}function mt(st){if(st.kind!==134)return st}function yt(st,nr,Zr,Kr){if(Ke(Zr,Kr)){let Dn=et(Zr,Kr),hr=st(nr);return Ye(Dn),hr}return st(nr)}function Rt(st){return _s(st,Qe,s)}function Lt(st,nr){if(!(st.transformFlags&128))return st;switch(st.kind){case 224:return je(st);case 230:return Wt(st);case 254:return _r(st);case 257:return Gt(st);case 211:return Dt(st);case 227:return pr(st,nr);case 357:return ot(st,nr);case 300:return ir(st);case 244:return qt(st);case 261:return Yt(st);case 247:case 248:case 250:return yt(Rt,st,0,2);case 251:return Zi(st,void 0);case 249:return yt(mn,st,0,2);case 223:return jn(st);case 177:return yt(ya,st,2,1);case 175:return yt(Oo,st,2,1);case 178:return yt(Fl,st,2,1);case 179:return yt(ba,st,2,1);case 263:return yt(hc,st,2,1);case 219:return yt(hn,st,2,1);case 220:return yt(yr,st,2,0);case 170:return ou(st);case 245:return tr(st);case 218:return ur(st,nr);case 216:return dt(st);case 212:return Te&&jo(st)&&st.expression.kind===108&&Te.add(st.name.escapedText),_s(st,Qe,s);case 213:return Te&&st.expression.kind===108&&(Ze=!0),_s(st,Qe,s);case 264:case 232:return yt(Rt,st,2,1);default:return _s(st,Qe,s)}}function je(st){return re&2&&re&1?ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(Mr(st.expression,Qe,un))),st),st):_s(st,Qe,s)}function Wt(st){if(re&2&&re&1){if(st.asteriskToken){let nr=Mr(pe.checkDefined(st.expression),Qe,un);return ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(c.updateYieldExpression(st,st.asteriskToken,gn(g().createAsyncDelegatorHelper(gn(g().createAsyncValuesHelper(nr),nr)),nr)))),st),st)}return ua(gn(c.createYieldExpression(void 0,si(st.expression?Mr(st.expression,Qe,un):c.createVoidZero())),st),st)}return _s(st,Qe,s)}function _r(st){return re&2&&re&1?c.updateReturnStatement(st,si(st.expression?Mr(st.expression,Qe,un):c.createVoidZero())):_s(st,Qe,s)}function Gt(st){if(re&2){let nr=Vye(st);return nr.kind===251&&nr.awaitModifier?Zi(nr,st):c.restoreEnclosingLabel(Mr(nr,Qe,Lc,c.liftToBlock),st)}return _s(st,Qe,s)}function it(st){let nr,Zr=[];for(let Kr of st)if(Kr.kind===306){nr&&(Zr.push(c.createObjectLiteralExpression(nr)),nr=void 0);let Dn=Kr.expression;Zr.push(Mr(Dn,Qe,un))}else nr=Ft(nr,Kr.kind===304?c.createPropertyAssignment(Kr.name,Mr(Kr.initializer,Qe,un)):Mr(Kr,Qe,ww));return nr&&Zr.push(c.createObjectLiteralExpression(nr)),Zr}function Dt(st){if(st.transformFlags&65536){let nr=it(st.properties);nr.length&&nr[0].kind!==211&&nr.unshift(c.createObjectLiteralExpression());let Zr=nr[0];if(nr.length>1){for(let Kr=1;Kr=2&&(S.hasNodeCheckFlag(st,256)||S.hasNodeCheckFlag(st,128));if(Ni){$c();let nn=hVe(c,S,st,Te);Pe[id(nn)]=!0,Nw(Dn,[nn])}Dn.push(En);let Gi=c.updateBlock(st.body,Dn);return Ni&&Ze&&(S.hasNodeCheckFlag(st,256)?gQ(Gi,VF):S.hasNodeCheckFlag(st,128)&&gQ(Gi,Sie)),Te=Zr,Ze=Kr,Gi}function pa(st){d();let nr=0,Zr=[],Kr=Mr(st.body,Qe,h7)??c.createBlock([]);eg(Kr)&&(nr=c.copyPrologue(Kr.statements,Zr,!1,Qe)),Pr(Zr,Pa(void 0,st));let Dn=h();if(nr>0||zt(Zr)||zt(Dn)){let hr=c.converters.convertToFunctionBlock(Kr,!0);return Nw(Zr,Dn),Pr(Zr,hr.statements.slice(nr)),c.updateBlock(hr,gn(c.createNodeArray(Zr),hr.statements))}return Kr}function Pa(st,nr){let Zr=!1;for(let Kr of nr.parameters)if(Zr){if(Nu(Kr.name)){if(Kr.name.elements.length>0){let Dn=bQ(Kr,Qe,s,0,c.getGeneratedNameForNode(Kr));if(zt(Dn)){let hr=c.createVariableDeclarationList(Dn),En=c.createVariableStatement(void 0,hr);ti(En,2097152),st=Ft(st,En)}}else if(Kr.initializer){let Dn=c.getGeneratedNameForNode(Kr),hr=Mr(Kr.initializer,Qe,un),En=c.createAssignment(Dn,hr),Ni=c.createExpressionStatement(En);ti(Ni,2097152),st=Ft(st,Ni)}}else if(Kr.initializer){let Dn=c.cloneNode(Kr.name);gn(Dn,Kr.name),ti(Dn,96);let hr=Mr(Kr.initializer,Qe,un);Ow(hr,3168);let En=c.createAssignment(Dn,hr);gn(En,Kr),ti(En,3072);let Ni=c.createBlock([c.createExpressionStatement(En)]);gn(Ni,Kr),ti(Ni,3905);let Gi=c.createTypeCheck(c.cloneNode(Kr.name),"undefined"),nn=c.createIfStatement(Gi,Ni);x0(nn),gn(nn,Kr),ti(nn,2101056),st=Ft(st,nn)}}else if(Kr.transformFlags&65536){Zr=!0;let Dn=bQ(Kr,Qe,s,1,c.getGeneratedNameForNode(Kr),!1,!0);if(zt(Dn)){let hr=c.createVariableDeclarationList(Dn),En=c.createVariableStatement(void 0,hr);ti(En,2097152),st=Ft(st,En)}}return st}function $c(){ee&1||(ee|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Qu(st,nr,Zr){if(ee&1&&pt(nr)){let Kr=(S.hasNodeCheckFlag(nr,128)?128:0)|(S.hasNodeCheckFlag(nr,256)?256:0);if(Kr!==Ie){let Dn=Ie;Ie=Kr,O(st,nr,Zr),Ie=Dn;return}}else if(ee&&Pe[id(nr)]){let Kr=Ie;Ie=0,O(st,nr,Zr),Ie=Kr;return}O(st,nr,Zr)}function Rg(st,nr){return nr=V(st,nr),st===1&&Ie?Cs(nr):nr}function Cs(st){switch(st.kind){case 212:return Tu(st);case 213:return Wr(st);case 214:return Wn(st)}return st}function Tu(st){return st.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),st.name),st):st}function Wr(st){return st.expression.kind===108?on(st.argumentExpression,st):st}function Wn(st){let nr=st.expression;if(Zy(nr)){let Zr=jo(nr)?Tu(nr):Wr(nr);return c.createCallExpression(c.createPropertyAccessExpression(Zr,"call"),void 0,[c.createThis(),...st.arguments])}return st}function pt(st){let nr=st.kind;return nr===264||nr===177||nr===175||nr===178||nr===179}function on(st,nr){return Ie&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[st]),"value"),nr):gn(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[st]),nr)}}function y3t(s){let c=s.factory;return cR(s,g);function g(_){return _.isDeclarationFile?_:_s(_,d,s)}function d(_){if(!(_.transformFlags&64))return _;switch(_.kind){case 300:return h(_);default:return _s(_,d,s)}}function h(_){return _.variableDeclaration?_s(_,d,s):c.updateCatchClause(_,c.createVariableDeclaration(c.createTempVariable(void 0)),Mr(_.block,d,eg))}}function b3t(s){let{factory:c,hoistVariableDeclaration:g}=s;return cR(s,d);function d(ge){return ge.isDeclarationFile?ge:_s(ge,h,s)}function h(ge){if(!(ge.transformFlags&32))return ge;switch(ge.kind){case 214:{let Ie=T(ge,!1);return pe.assertNotNode(Ie,Fz),Ie}case 212:case 213:if(LC(ge)){let Ie=V(ge,!1,!1);return pe.assertNotNode(Ie,Fz),Ie}return _s(ge,h,s);case 227:return ge.operatorToken.kind===61?ee(ge):_s(ge,h,s);case 221:return re(ge);default:return _s(ge,h,s)}}function _(ge){pe.assertNotNode(ge,DJ);let Ie=[ge];for(;!ge.questionDotToken&&!QI(ge);)ge=Ma(u2(ge.expression),LC),pe.assertNotNode(ge,DJ),Ie.unshift(ge);return{expression:ge.expression,chain:Ie}}function S(ge,Ie,_e){let Ee=O(ge.expression,Ie,_e);return Fz(Ee)?c.createSyntheticReferenceExpression(c.updateParenthesizedExpression(ge,Ee.expression),Ee.thisArg):c.updateParenthesizedExpression(ge,Ee)}function R(ge,Ie,_e){if(LC(ge))return V(ge,Ie,_e);let Ee=Mr(ge.expression,h,un);pe.assertNotNode(Ee,Fz);let Ne;return Ie&&(yQ(Ee)?Ne=Ee:(Ne=c.createTempVariable(g),Ee=c.createAssignment(Ne,Ee))),Ee=ge.kind===212?c.updatePropertyAccessExpression(ge,Ee,Mr(ge.name,h,Ir)):c.updateElementAccessExpression(ge,Ee,Mr(ge.argumentExpression,h,un)),Ne?c.createSyntheticReferenceExpression(Ee,Ne):Ee}function T(ge,Ie){if(LC(ge))return V(ge,Ie,!1);if(dI(ge.expression)&&LC(JA(ge.expression))){let _e=S(ge.expression,!0,!1),Ee=Os(ge.arguments,h,un);return Fz(_e)?gn(c.createFunctionCallCall(_e.expression,_e.thisArg,Ee),ge):c.updateCallExpression(ge,_e,void 0,Ee)}return _s(ge,h,s)}function O(ge,Ie,_e){switch(ge.kind){case 218:return S(ge,Ie,_e);case 212:case 213:return R(ge,Ie,_e);case 214:return T(ge,Ie);default:return Mr(ge,h,un)}}function V(ge,Ie,_e){let{expression:Ee,chain:Ne}=_(ge),Te=O(u2(Ee),BB(Ne[0]),!1),Ze=Fz(Te)?Te.thisArg:void 0,Pe=Fz(Te)?Te.expression:Te,Ke=c.restoreOuterExpressions(Ee,Pe,8);yQ(Pe)||(Pe=c.createTempVariable(g),Ke=c.createAssignment(Pe,Ke));let et=Pe,Ye;for(let at=0;atLt&&Pr(je,Os(yt.statements,M,Lc,Lt,Wt-Lt));break}Wt++}pe.assert(Wt_e(je,Lt))))],Lt,Rt===2)}return _s(yt,M,s)}function Ne(yt,Rt,Lt,je,Wt){let _r=[];for(let Dt=Rt;Dtc&&(c=d)}return c}function TBs(s){let c=0;for(let g of s){let d=gtt(g.statements);if(d===2)return 2;d>c&&(c=d)}return c}function w3t(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getCompilerOptions(),h,_;return cR(s,M);function S(){if(_.filenameDeclaration)return _.filenameDeclaration.name;let dt=c.createVariableDeclaration(c.createUniqueName("_jsxFileName",48),void 0,void 0,c.createStringLiteral(h.fileName));return _.filenameDeclaration=dt,_.filenameDeclaration.name}function R(dt){return d.jsx===5?"jsxDEV":dt?"jsxs":"jsx"}function T(dt){let pr=R(dt);return V(pr)}function O(){return V("Fragment")}function V(dt){var pr,ot;let ir=dt==="createElement"?_.importSpecifier:nie(_.importSpecifier,d),qt=(ot=(pr=_.utilizedImplicitRuntimeImports)==null?void 0:pr.get(ir))==null?void 0:ot.get(dt);if(qt)return qt.name;_.utilizedImplicitRuntimeImports||(_.utilizedImplicitRuntimeImports=new Map);let Yt=_.utilizedImplicitRuntimeImports.get(ir);Yt||(Yt=new Map,_.utilizedImplicitRuntimeImports.set(ir,Yt));let Tr=c.createUniqueName(`_${dt}`,112),mn=c.createImportSpecifier(!1,c.createIdentifier(dt),Tr);return u9e(Tr,mn),Yt.set(dt,mn),Tr}function M(dt){if(dt.isDeclarationFile)return dt;h=dt,_={},_.importSpecifier=rie(d,dt);let pr=_s(dt,ee,s);EN(pr,s.readEmitHelpers());let ot=pr.statements;if(_.filenameDeclaration&&(ot=ML(ot.slice(),c.createVariableStatement(void 0,c.createVariableDeclarationList([_.filenameDeclaration],2)))),_.utilizedImplicitRuntimeImports){for(let[ir,qt]of Do(_.utilizedImplicitRuntimeImports.entries()))if(Lm(dt)){let Yt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports(Do(qt.values()))),c.createStringLiteral(ir),void 0);t9(Yt,!1),ot=ML(ot.slice(),Yt)}else if(Sl(dt)){let Yt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createObjectBindingPattern(Do(qt.values(),Tr=>c.createBindingElement(void 0,Tr.propertyName,Tr.name))),void 0,void 0,c.createCallExpression(c.createIdentifier("require"),void 0,[c.createStringLiteral(ir)]))],2));t9(Yt,!1),ot=ML(ot.slice(),Yt)}}return ot!==pr.statements&&(pr=c.updateSourceFile(pr,ot)),_=void 0,pr}function ee(dt){return dt.transformFlags&2?re(dt):dt}function re(dt){switch(dt.kind){case 285:return Ne(dt,!1);case 286:return Te(dt,!1);case 289:return Ze(dt,!1);case 295:return Gr(dt);default:return _s(dt,ee,s)}}function ge(dt){switch(dt.kind){case 12:return Wt(dt);case 295:return Gr(dt);case 285:return Ne(dt,!0);case 286:return Te(dt,!0);case 289:return Ze(dt,!0);default:return pe.failBadSyntaxKind(dt)}}function Ie(dt){return dt.properties.some(pr=>Cm(pr)&&(Ir(pr.name)&&Vo(pr.name)==="__proto__"||Lg(pr.name)&&pr.name.text==="__proto__"))}function _e(dt){let pr=!1;for(let ot of dt.attributes.properties)if(Zz(ot)&&(!ag(ot.expression)||ot.expression.properties.some(Hx)))pr=!0;else if(pr&&RN(ot)&&Ir(ot.name)&&ot.name.escapedText==="key")return!0;return!1}function Ee(dt){return _.importSpecifier===void 0||_e(dt)}function Ne(dt,pr){return(Ee(dt.openingElement)?Tt:et)(dt.openingElement,dt.children,pr,dt)}function Te(dt,pr){return(Ee(dt)?Tt:et)(dt,void 0,pr,dt)}function Ze(dt,pr){return(_.importSpecifier===void 0?Qe:at)(dt.openingFragment,dt.children,pr,dt)}function Pe(dt){let pr=Ke(dt);return pr&&c.createObjectLiteralExpression([pr])}function Ke(dt){let pr=dU(dt);if(B(pr)===1&&!pr[0].dotDotDotToken){let ir=ge(pr[0]);return ir&&c.createPropertyAssignment("children",ir)}let ot=Xt(dt,ge);return B(ot)?c.createPropertyAssignment("children",c.createArrayLiteralExpression(ot)):void 0}function et(dt,pr,ot,ir){let qt=tr(dt),Yt=pr&&pr.length?Ke(pr):void 0,Tr=de(dt.attributes.properties,Zi=>!!Zi.name&&Ir(Zi.name)&&Zi.name.escapedText==="key"),mn=Tr?Le(dt.attributes.properties,Zi=>Zi!==Tr):dt.attributes.properties,jn=B(mn)?mt(mn,Yt):c.createObjectLiteralExpression(Yt?[Yt]:E);return Ye(qt,jn,Tr,pr||E,ot,ir)}function Ye(dt,pr,ot,ir,qt,Yt){var Tr;let mn=dU(ir),jn=B(mn)>1||!!((Tr=mn[0])!=null&&Tr.dotDotDotToken),Zi=[dt,pr];if(ot&&Zi.push(je(ot.initializer)),d.jsx===5){let An=xd(h);if(An&&cl(An)){ot===void 0&&Zi.push(c.createVoidZero()),Zi.push(jn?c.createTrue():c.createFalse());let si=Ra(An,Yt.pos);Zi.push(c.createObjectLiteralExpression([c.createPropertyAssignment("fileName",S()),c.createPropertyAssignment("lineNumber",c.createNumericLiteral(si.line+1)),c.createPropertyAssignment("columnNumber",c.createNumericLiteral(si.character+1))])),Zi.push(c.createThis())}}let Ns=gn(c.createCallExpression(T(jn),void 0,Zi),Yt);return qt&&x0(Ns),Ns}function Tt(dt,pr,ot,ir){let qt=tr(dt),Yt=dt.attributes.properties,Tr=B(Yt)?mt(Yt):c.createNull(),mn=_.importSpecifier===void 0?Q$e(c,s.getEmitResolver().getJsxFactoryEntity(h),d.reactNamespace,dt):V("createElement"),jn=EOt(c,mn,qt,Tr,Xt(pr,ge),ir);return ot&&x0(jn),jn}function at(dt,pr,ot,ir){let qt;if(pr&&pr.length){let Yt=Pe(pr);Yt&&(qt=Yt)}return Ye(O(),qt||c.createObjectLiteralExpression([]),void 0,pr,ot,ir)}function Qe(dt,pr,ot,ir){let qt=SOt(c,s.getEmitResolver().getJsxFactoryEntity(h),s.getEmitResolver().getJsxFragmentFactoryEntity(h),d.reactNamespace,Xt(pr,ge),dt,ir);return ot&&x0(qt),qt}function Ct(dt){return ag(dt.expression)&&!Ie(dt.expression)?Er(dt.expression.properties,pr=>pe.checkDefined(Mr(pr,ee,ww))):c.createSpreadAssignment(pe.checkDefined(Mr(dt.expression,ee,un)))}function mt(dt,pr){let ot=Hg(d);return ot&&ot>=5?c.createObjectLiteralExpression(yt(dt,pr)):Rt(dt,pr)}function yt(dt,pr){let ot=Sr(_n(dt,Zz,(ir,qt)=>Sr(lt(ir,Yt=>qt?Ct(Yt):Lt(Yt)))));return pr&&ot.push(pr),ot}function Rt(dt,pr){let ot=[],ir=[];for(let Yt of dt){if(Zz(Yt)){if(ag(Yt.expression)&&!Ie(Yt.expression)){for(let Tr of Yt.expression.properties){if(Hx(Tr)){qt(),ot.push(pe.checkDefined(Mr(Tr.expression,ee,un)));continue}ir.push(pe.checkDefined(Mr(Tr,ee)))}continue}qt(),ot.push(pe.checkDefined(Mr(Yt.expression,ee,un)));continue}ir.push(Lt(Yt))}return pr&&ir.push(pr),qt(),ot.length&&!ag(ot[0])&&ot.unshift(c.createObjectLiteralExpression()),Ws(ot)||g().createAssignHelper(ot);function qt(){ir.length&&(ot.push(c.createObjectLiteralExpression(ir)),ir=[])}}function Lt(dt){let pr=ur(dt),ot=je(dt.initializer);return c.createPropertyAssignment(pr,ot)}function je(dt){if(dt===void 0)return c.createTrue();if(dt.kind===11){let pr=dt.singleQuote!==void 0?dt.singleQuote:!_ne(dt,h),ot=c.createStringLiteral(Dt(dt.text)||dt.text,pr);return gn(ot,dt)}return dt.kind===295?dt.expression===void 0?c.createTrue():pe.checkDefined(Mr(dt.expression,ee,un)):TN(dt)?Ne(dt,!1):GU(dt)?Te(dt,!1):U3(dt)?Ze(dt,!1):pe.failBadSyntaxKind(dt)}function Wt(dt){let pr=_r(dt.text);return pr===void 0?void 0:c.createStringLiteral(pr)}function _r(dt){let pr,ot=0,ir=-1;for(let qt=0;qt{if(Yt)return rN(parseInt(Yt,10));if(Tr)return rN(parseInt(Tr,16));{let jn=RBs.get(mn);return jn?rN(jn):pr}})}function Dt(dt){let pr=it(dt);return pr===dt?void 0:pr}function tr(dt){if(dt.kind===285)return tr(dt.openingElement);{let pr=dt.tagName;return Ir(pr)&&pU(pr.escapedText)?c.createStringLiteral(Vo(pr)):oR(pr)?c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name)):NEe(c,pr)}}function ur(dt){let pr=dt.name;if(Ir(pr)){let ot=Vo(pr);return/^[A-Z_]\w*$/i.test(ot)?pr:c.createStringLiteral(ot)}return c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name))}function Gr(dt){let pr=Mr(dt.expression,ee,un);return dt.dotDotDotToken?c.createSpreadElement(pr):pr}}var RBs=new Map(Object.entries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}));function T3t(s){let{factory:c,hoistVariableDeclaration:g}=s;return cR(s,d);function d(T){return T.isDeclarationFile?T:_s(T,h,s)}function h(T){if(!(T.transformFlags&512))return T;switch(T.kind){case 227:return _(T);default:return _s(T,h,s)}}function _(T){switch(T.operatorToken.kind){case 68:return S(T);case 43:return R(T);default:return _s(T,h,s)}}function S(T){let O,V,M=Mr(T.left,h,un),ee=Mr(T.right,h,un);if(Qg(M)){let re=c.createTempVariable(g),ge=c.createTempVariable(g);O=gn(c.createElementAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),gn(c.createAssignment(ge,M.argumentExpression),M.argumentExpression)),M),V=gn(c.createElementAccessExpression(re,ge),M)}else if(jo(M)){let re=c.createTempVariable(g);O=gn(c.createPropertyAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),M.name),M),V=gn(c.createPropertyAccessExpression(re,M.name),M)}else O=M,V=M;return gn(c.createAssignment(O,gn(c.createGlobalMethodCall("Math","pow",[V,ee]),T)),T)}function R(T){let O=Mr(T.left,h,un),V=Mr(T.right,h,un);return gn(c.createGlobalMethodCall("Math","pow",[O,V]),T)}}function drn(s,c){return{kind:s,expression:c}}function R3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=s.getEmitResolver(),O=s.onSubstituteNode,V=s.onEmitNode;s.onEmitNode=YC,s.onSubstituteNode=Bv;let M,ee,re,ge;function Ie(ct){ge=Ft(ge,c.createVariableDeclaration(ct))}let _e,Ee=0;return cR(s,Ne);function Ne(ct){if(ct.isDeclarationFile)return ct;M=ct,ee=ct.text;let en=mt(ct);return EN(en,s.readEmitHelpers()),M=void 0,ee=void 0,ge=void 0,re=0,en}function Te(ct,en){let gi=re;return re=(re&~ct|en)&32767,gi}function Ze(ct,en,gi){re=(re&~en|gi)&-32768|ct}function Pe(ct){return(re&8192)!==0&&ct.kind===254&&!ct.expression}function Ke(ct){return ct.transformFlags&4194304&&(_2(ct)||Q3(ct)||aOt(ct)||Sde(ct)||vde(ct)||Nie(ct)||Bde(ct)||kU(ct)||IQ(ct)||YW(ct)||YT(ct,!1)||eg(ct))}function et(ct){return(ct.transformFlags&1024)!==0||_e!==void 0||re&8192&&Ke(ct)||YT(ct,!1)&&kl(ct)||(f1(ct)&1)!==0}function Ye(ct){return et(ct)?Ct(ct,!1):ct}function Tt(ct){return et(ct)?Ct(ct,!0):ct}function at(ct){if(et(ct)){let en=xd(ct);if(pi(en)&&tm(en)){let gi=Te(32670,16449),_i=Ct(ct,!1);return Ze(gi,229376,0),_i}return Ct(ct,!1)}return ct}function Qe(ct){return ct.kind===108?E2(ct,!0):Ye(ct)}function Ct(ct,en){switch(ct.kind){case 126:return;case 264:return tr(ct);case 232:return ur(ct);case 170:return Rg(ct);case 263:return bn(ct);case 220:return Gi(ct);case 219:return nn(ct);case 261:return Bs(ct);case 80:return it(ct);case 262:return Mt(ct);case 256:return yt(ct);case 270:return Rt(ct);case 242:return cn(ct,!1);case 253:case 252:return Dt(ct);case 257:return Bn(ct);case 247:case 248:return es(ct,void 0);case 249:return Oi(ct,void 0);case 250:return Ui(ct,void 0);case 251:return gs(ct,void 0);case 245:return wt(ct);case 211:return dg(ct);case 300:return Uc(ct);case 305:return Ef(ct);case 168:return om(ct);case 210:return Zp(ct);case 214:return lh(ct);case 215:return b2(ct);case 218:return xe(ct,en);case 227:return fr(ct,en);case 357:return Ue(ct,en);case 15:case 16:case 17:case 18:return kA(ct);case 11:return AA(ct);case 9:return ym(ct);case 216:return lf(ct);case 229:return fI(ct);case 230:return Sh(ct);case 231:return DA(ct);case 108:return E2(ct,!1);case 110:return _r(ct);case 237:return I_(ct);case 175:return Fd(ct);case 178:case 179:return Vg(ct);case 244:return Hn(ct);case 254:return Wt(ct);case 223:return Gt(ct);default:return _s(ct,Ye,s)}}function mt(ct){let en=Te(8064,64),gi=[],_i=[];d();let ys=c.copyPrologue(ct.statements,gi,!1,Ye);return Pr(_i,Os(ct.statements,Ye,Lc,ys)),ge&&_i.push(c.createVariableStatement(void 0,c.createVariableDeclarationList(ge))),c.mergeLexicalEnvironment(gi,_()),st(gi,ct),Ze(en,0,0),c.updateSourceFile(ct,gn(c.createNodeArray(Nn(gi,_i)),ct.statements))}function yt(ct){if(_e!==void 0){let en=_e.allowedNonLabeledJumps;_e.allowedNonLabeledJumps|=2;let gi=_s(ct,Ye,s);return _e.allowedNonLabeledJumps=en,gi}return _s(ct,Ye,s)}function Rt(ct){let en=Te(7104,0),gi=_s(ct,Ye,s);return Ze(en,0,0),gi}function Lt(ct){return ua(c.createReturnStatement(je()),ct)}function je(){return c.createUniqueName("_this",48)}function Wt(ct){return _e?(_e.nonLocalJumps|=8,Pe(ct)&&(ct=Lt(ct)),c.createReturnStatement(c.createObjectLiteralExpression([c.createPropertyAssignment(c.createIdentifier("value"),ct.expression?pe.checkDefined(Mr(ct.expression,Ye,un)):c.createVoidZero())]))):Pe(ct)?Lt(ct):_s(ct,Ye,s)}function _r(ct){return re|=65536,re&2&&!(re&16384)&&(re|=131072),_e?re&2?(_e.containsLexicalThis=!0,ct):_e.thisName||(_e.thisName=c.createUniqueName("this")):ct}function Gt(ct){return _s(ct,Tt,s)}function it(ct){return _e&&T.isArgumentsLocalBinding(ct)?_e.argumentsName||(_e.argumentsName=c.createUniqueName("arguments")):ct.flags&256?ua(gn(c.createIdentifier(Bc(ct.escapedText)),ct),ct):ct}function Dt(ct){if(_e){let en=ct.kind===253?2:4;if(!(ct.label&&_e.labels&&_e.labels.get(Vo(ct.label))||!ct.label&&_e.allowedNonLabeledJumps&en)){let _i,ys=ct.label;ys?ct.kind===253?(_i=`break-${ys.escapedText}`,mr(_e,!0,Vo(ys),_i)):(_i=`continue-${ys.escapedText}`,mr(_e,!1,Vo(ys),_i)):ct.kind===253?(_e.nonLocalJumps|=2,_i="break"):(_e.nonLocalJumps|=4,_i="continue");let $s=c.createStringLiteral(_i);if(_e.loopOutParameters.length){let wa=_e.loopOutParameters,pc;for(let ll=0;llIr(en.name)&&!en.initializer)}function Tr(ct){if(Gy(ct))return!0;if(!(ct.transformFlags&134217728))return!1;switch(ct.kind){case 220:case 219:case 263:case 177:case 176:return!1;case 178:case 179:case 175:case 173:{let en=ct;return Un(en.name)?!!Lu(en.name,Tr):!1}}return!!Lu(ct,Tr)}function mn(ct,en,gi,_i){let ys=!!gi&&XI(gi.expression).kind!==106;if(!ct)return qt(en,ys);let $s=[],wa=[];h();let pc=c.copyStandardPrologue(ct.body.statements,$s,0);(_i||Tr(ct.body))&&(re|=8192),Pr(wa,Os(ct.body.statements,Ye,Lc,pc));let ll=ys||re&8192;Tu($s,ct),on($s,ct,_i),Zr($s,ct),ll?nr($s,ct,$c()):st($s,ct),c.mergeLexicalEnvironment($s,_()),ll&&!Pa(ct.body)&&wa.push(c.createReturnStatement(je()));let Fe=c.createBlock(gn(c.createNodeArray([...$s,...wa]),ct.body.statements),!0);return gn(Fe,ct.body),pa(Fe,ct.body,_i)}function jn(ct){return Gp(ct)&&Vo(ct)==="_this"}function Zi(ct){return Gp(ct)&&Vo(ct)==="_super"}function Ns(ct){return Eh(ct)&&ct.declarationList.declarations.length===1&&An(ct.declarationList.declarations[0])}function An(ct){return nc(ct)&&jn(ct.name)&&!!ct.initializer}function si(ct){return zm(ct,!0)&&jn(ct.left)}function ks(ct){return Ll(ct)&&jo(ct.expression)&&Zi(ct.expression.expression)&&Ir(ct.expression.name)&&(Vo(ct.expression.name)==="call"||Vo(ct.expression.name)==="apply")&&ct.arguments.length>=1&&ct.arguments[0].kind===110}function Ic(ct){return po(ct)&&ct.operatorToken.kind===57&&ct.right.kind===110&&ks(ct.left)}function ou(ct){return po(ct)&&ct.operatorToken.kind===56&&po(ct.left)&&ct.left.operatorToken.kind===38&&Zi(ct.left.left)&&ct.left.right.kind===106&&ks(ct.right)&&Vo(ct.right.expression.name)==="apply"}function Zn(ct){return po(ct)&&ct.operatorToken.kind===57&&ct.right.kind===110&&ou(ct.left)}function ya(ct){return si(ct)&&Ic(ct.right)}function Fl(ct){return si(ct)&&Zn(ct.right)}function ba(ct){return ks(ct)||Ic(ct)||ya(ct)||ou(ct)||Zn(ct)||Fl(ct)}function Oo(ct){for(let en=0;en0;_i--){let ys=ct.statements[_i];if(_2(ys)&&ys.expression&&jn(ys.expression)){let $s=ct.statements[_i-1],wa;if(PC($s)&&ya(XI($s.expression)))wa=$s.expression;else if(gi&&Ns($s)){let Fe=$s.declarationList.declarations[0];ba(XI(Fe.initializer))&&(wa=c.createAssignment(je(),Fe.initializer))}if(!wa)break;let pc=c.createReturnStatement(wa);ua(pc,$s),gn(pc,$s);let ll=c.createNodeArray([...ct.statements.slice(0,_i-1),pc,...ct.statements.slice(_i+1)]);return gn(ll,ct.statements),c.updateBlock(ct,ll)}}return ct}function yr(ct){if(Ns(ct)){if(ct.declarationList.declarations[0].initializer.kind===110)return}else if(si(ct))return c.createPartiallyEmittedExpression(ct.right,ct);switch(ct.kind){case 220:case 219:case 263:case 177:case 176:return ct;case 178:case 179:case 175:case 173:{let en=ct;return Un(en.name)?c.replacePropertyName(en,_s(en.name,yr,void 0)):ct}}return _s(ct,yr,void 0)}function hn(ct,en){if(en.transformFlags&16384||re&65536||re&131072)return ct;for(let gi of en.statements)if(gi.transformFlags&134217728&&!uVe(gi))return ct;return c.updateBlock(ct,Os(ct.statements,yr,Lc))}function Pi(ct){if(ks(ct)&&ct.arguments.length===2&&Ir(ct.arguments[1])&&Vo(ct.arguments[1])==="arguments")return c.createLogicalAnd(c.createStrictInequality(KI(),c.createNull()),ct);switch(ct.kind){case 220:case 219:case 263:case 177:case 176:return ct;case 178:case 179:case 175:case 173:{let en=ct;return Un(en.name)?c.replacePropertyName(en,_s(en.name,Pi,void 0)):ct}}return _s(ct,Pi,void 0)}function co(ct){return c.updateBlock(ct,Os(ct.statements,Pi,Lc))}function pa(ct,en,gi){let _i=ct;return ct=Oo(ct),ct=hc(ct,en),ct!==_i&&(ct=hn(ct,en)),gi&&(ct=co(ct)),ct}function Pa(ct){if(ct.kind===254)return!0;if(ct.kind===246){let en=ct;if(en.elseStatement)return Pa(en.thenStatement)&&Pa(en.elseStatement)}else if(ct.kind===242){let en=li(ct.statements);if(en&&Pa(en))return!0}return!1}function $c(){return ti(c.createThis(),8)}function Qu(){return c.createLogicalOr(c.createLogicalAnd(c.createStrictInequality(KI(),c.createNull()),c.createFunctionApplyCall(KI(),$c(),c.createIdentifier("arguments"))),$c())}function Rg(ct){if(!ct.dotDotDotToken)return Nu(ct.name)?ua(gn(c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(ct),void 0,void 0,void 0),ct),ct):ct.initializer?ua(gn(c.createParameterDeclaration(void 0,void 0,ct.name,void 0,void 0,void 0),ct),ct):ct}function Cs(ct){return ct.initializer!==void 0||Nu(ct.name)}function Tu(ct,en){if(!zt(en.parameters,Cs))return!1;let gi=!1;for(let _i of en.parameters){let{name:ys,initializer:$s,dotDotDotToken:wa}=_i;wa||(Nu(ys)?gi=Wr(ct,_i,ys,$s)||gi:$s&&(Wn(ct,_i,ys,$s),gi=!0))}return gi}function Wr(ct,en,gi,_i){return gi.elements.length>0?(ML(ct,ti(c.createVariableStatement(void 0,c.createVariableDeclarationList(bQ(en,Ye,s,0,c.getGeneratedNameForNode(en)))),2097152)),!0):_i?(ML(ct,ti(c.createExpressionStatement(c.createAssignment(c.getGeneratedNameForNode(en),pe.checkDefined(Mr(_i,Ye,un)))),2097152)),!0):!1}function Wn(ct,en,gi,_i){_i=pe.checkDefined(Mr(_i,Ye,un));let ys=c.createIfStatement(c.createTypeCheck(c.cloneNode(gi),"undefined"),ti(gn(c.createBlock([c.createExpressionStatement(ti(gn(c.createAssignment(ti(UA(gn(c.cloneNode(gi),gi),gi.parent),96),ti(_i,96|rA(_i)|3072)),en),3072))]),en),3905));x0(ys),gn(ys,en),ti(ys,2101056),ML(ct,ys)}function pt(ct,en){return!!(ct&&ct.dotDotDotToken&&!en)}function on(ct,en,gi){let _i=[],ys=li(en.parameters);if(!pt(ys,gi))return!1;let $s=ys.name.kind===80?UA(gn(c.cloneNode(ys.name),ys.name),ys.name.parent):c.createTempVariable(void 0);ti($s,96);let wa=ys.name.kind===80?c.cloneNode(ys.name):$s,pc=en.parameters.length-1,ll=c.createLoopVariable();_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration($s,void 0,void 0,c.createArrayLiteralExpression([]))])),ys),2097152));let Fe=c.createForStatement(gn(c.createVariableDeclarationList([c.createVariableDeclaration(ll,void 0,void 0,c.createNumericLiteral(pc))]),ys),gn(c.createLessThan(ll,c.createPropertyAccessExpression(c.createIdentifier("arguments"),"length")),ys),gn(c.createPostfixIncrement(ll),ys),c.createBlock([x0(gn(c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(wa,pc===0?ll:c.createSubtract(ll,c.createNumericLiteral(pc))),c.createElementAccessExpression(c.createIdentifier("arguments"),ll))),ys))]));return ti(Fe,2097152),x0(Fe),_i.push(Fe),ys.name.kind!==80&&_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList(bQ(ys,Ye,s,0,wa))),ys),2097152)),tne(ct,_i),!0}function st(ct,en){return re&131072&&en.kind!==220?(nr(ct,en,c.createThis()),!0):!1}function nr(ct,en,gi){py();let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(je(),void 0,void 0,gi)]));ti(_i,2100224),Yg(_i,en),ML(ct,_i)}function Zr(ct,en){if(re&32768){let gi;switch(en.kind){case 220:return ct;case 175:case 178:case 179:gi=c.createVoidZero();break;case 177:gi=c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor");break;case 263:case 219:gi=c.createConditionalExpression(c.createLogicalAnd(ti(c.createThis(),8),c.createBinaryExpression(ti(c.createThis(),8),104,c.getLocalName(en))),void 0,c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor"),void 0,c.createVoidZero());break;default:return pe.failBadSyntaxKind(en)}let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createUniqueName("_newTarget",48),void 0,void 0,gi)]));ti(_i,2100224),ML(ct,_i)}return ct}function Kr(ct,en){for(let gi of en.members)switch(gi.kind){case 241:ct.push(Dn(gi));break;case 175:ct.push(hr(CS(en,gi),gi,en));break;case 178:case 179:let _i=FW(en.members,gi);gi===_i.firstAccessor&&ct.push(En(CS(en,gi),_i,en));break;case 177:case 176:break;default:pe.failBadSyntaxKind(gi,M&&M.fileName);break}}function Dn(ct){return gn(c.createEmptyStatement(),ct)}function hr(ct,en,gi){let _i=LB(en),ys=qT(en),$s=ds(en,en,void 0,gi),wa=Mr(en.name,Ye,PI);pe.assert(wa);let pc;if(!p(wa)&&eie(s.getCompilerOptions())){let Fe=Un(wa)?wa.expression:Ir(wa)?c.createStringLiteral(Bc(wa.escapedText)):wa;pc=c.createObjectDefinePropertyCall(ct,Fe,c.createPropertyDescriptor({value:$s,enumerable:!1,writable:!0,configurable:!0}))}else{let Fe=LU(c,ct,wa,en.name);pc=c.createAssignment(Fe,$s)}ti($s,3072),Yg($s,ys);let ll=gn(c.createExpressionStatement(pc),en);return ua(ll,en),yh(ll,_i),ti(ll,96),ll}function En(ct,en,gi){let _i=c.createExpressionStatement(Ni(ct,en,gi,!1));return ti(_i,3072),Yg(_i,qT(en.firstAccessor)),_i}function Ni(ct,{firstAccessor:en,getAccessor:gi,setAccessor:_i},ys,$s){let wa=UA(gn(c.cloneNode(ct),ct),ct.parent);ti(wa,3136),Yg(wa,en.name);let pc=Mr(en.name,Ye,PI);if(pe.assert(pc),p(pc))return pe.failBadSyntaxKind(pc,"Encountered unhandled private identifier while transforming ES2015.");let ll=J$e(c,pc);ti(ll,3104),Yg(ll,en.name);let Fe=[];if(gi){let Ln=ds(gi,void 0,void 0,ys);Yg(Ln,qT(gi)),ti(Ln,1024);let bs=c.createPropertyAssignment("get",Ln);yh(bs,LB(gi)),Fe.push(bs)}if(_i){let Ln=ds(_i,void 0,void 0,ys);Yg(Ln,qT(_i)),ti(Ln,1024);let bs=c.createPropertyAssignment("set",Ln);yh(bs,LB(_i)),Fe.push(bs)}Fe.push(c.createPropertyAssignment("enumerable",gi||_i?c.createFalse():c.createTrue()),c.createPropertyAssignment("configurable",c.createTrue()));let gr=c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"defineProperty"),void 0,[wa,ll,c.createObjectLiteralExpression(Fe,!0)]);return $s&&x0(gr),gr}function Gi(ct){ct.transformFlags&16384&&!(re&16384)&&(re|=131072);let en=_e;_e=void 0;let gi=Te(15232,66),_i=c.createFunctionExpression(void 0,void 0,void 0,void 0,wI(ct.parameters,Ye,s),void 0,Ht(ct));return gn(_i,ct),ua(_i,ct),ti(_i,16),Ze(gi,0,0),_e=en,_i}function nn(ct){let en=rA(ct)&524288?Te(32662,69):Te(32670,65),gi=_e;_e=void 0;let _i=wI(ct.parameters,Ye,s),ys=Ht(ct),$s=re&32768?c.getLocalName(ct):ct.name;return Ze(en,229376,0),_e=gi,c.updateFunctionExpression(ct,void 0,ct.asteriskToken,$s,void 0,_i,void 0,ys)}function bn(ct){let en=_e;_e=void 0;let gi=Te(32670,65),_i=wI(ct.parameters,Ye,s),ys=Ht(ct),$s=re&32768?c.getLocalName(ct):ct.name;return Ze(gi,229376,0),_e=en,c.updateFunctionDeclaration(ct,Os(ct.modifiers,Ye,hg),ct.asteriskToken,$s,void 0,_i,void 0,ys)}function ds(ct,en,gi,_i){let ys=_e;_e=void 0;let $s=_i&&xa(_i)&&!lg(ct)?Te(32670,73):Te(32670,65),wa=wI(ct.parameters,Ye,s),pc=Ht(ct);return re&32768&&!gi&&(ct.kind===263||ct.kind===219)&&(gi=c.getGeneratedNameForNode(ct)),Ze($s,229376,0),_e=ys,ua(gn(c.createFunctionExpression(void 0,ct.asteriskToken,gi,void 0,wa,void 0,pc),en),ct)}function Ht(ct){let en=!1,gi=!1,_i,ys,$s=[],wa=[],pc=ct.body,ll;if(h(),eg(pc)&&(ll=c.copyStandardPrologue(pc.statements,$s,0,!1),ll=c.copyCustomPrologue(pc.statements,wa,ll,Ye,zge),ll=c.copyCustomPrologue(pc.statements,wa,ll,Ye,qge)),en=Tu(wa,ct)||en,en=on(wa,ct,!1)||en,eg(pc))ll=c.copyCustomPrologue(pc.statements,wa,ll,Ye),_i=pc.statements,Pr(wa,Os(pc.statements,Ye,Lc,ll)),!en&&pc.multiLine&&(en=!0);else{pe.assert(ct.kind===220),_i=GAe(pc,-1);let gr=ct.equalsGreaterThanToken;!ap(gr)&&!ap(pc)&&(Jne(gr,pc,M)?gi=!0:en=!0);let Ln=Mr(pc,Ye,un),bs=c.createReturnStatement(Ln);gn(bs,pc),i9e(bs,pc),ti(bs,2880),wa.push(bs),ys=pc}if(c.mergeLexicalEnvironment($s,_()),Zr($s,ct),st($s,ct),zt($s)&&(en=!0),wa.unshift(...$s),eg(pc)&&Sc(wa,pc.statements))return pc;let Fe=c.createBlock(gn(c.createNodeArray(wa),_i),en);return gn(Fe,ct.body),!en&&gi&&ti(Fe,1),ys&&hEe(Fe,20,ys),ua(Fe,ct.body),Fe}function cn(ct,en){if(en)return _s(ct,Ye,s);let gi=re&256?Te(7104,512):Te(6976,128),_i=_s(ct,Ye,s);return Ze(gi,0,0),_i}function wt(ct){return _s(ct,Tt,s)}function xe(ct,en){return _s(ct,en?Tt:Ye,s)}function fr(ct,en){return Lx(ct)?MU(ct,Ye,s,0,!en):ct.operatorToken.kind===28?c.updateBinaryExpression(ct,pe.checkDefined(Mr(ct.left,Tt,un)),ct.operatorToken,pe.checkDefined(Mr(ct.right,en?Tt:Ye,un))):_s(ct,Ye,s)}function Ue(ct,en){if(en)return _s(ct,Tt,s);let gi;for(let ys=0;ysll.name)),pc=_i?c.createYieldExpression(c.createToken(42),ti(wa,8388608)):wa;if($s)ys.push(c.createExpressionStatement(pc)),bf(en.loopOutParameters,1,0,ys);else{let ll=c.createUniqueName("state"),Fe=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(ll,void 0,void 0,pc)]));if(ys.push(Fe),bf(en.loopOutParameters,1,0,ys),en.nonLocalJumps&8){let gr;gi?(gi.nonLocalJumps|=8,gr=c.createReturnStatement(ll)):gr=c.createReturnStatement(c.createPropertyAccessExpression(ll,"value")),ys.push(c.createIfStatement(c.createTypeCheck(ll,"object"),gr))}if(en.nonLocalJumps&2&&ys.push(c.createIfStatement(c.createStrictEquality(ll,c.createStringLiteral("break")),c.createBreakStatement())),en.labeledNonLocalBreaks||en.labeledNonLocalContinues){let gr=[];ln(en.labeledNonLocalBreaks,!0,ll,gi,gr),ln(en.labeledNonLocalContinues,!1,ll,gi,gr),ys.push(c.createSwitchStatement(ll,c.createCaseBlock(gr)))}}return ys}function mr(ct,en,gi,_i){en?(ct.labeledNonLocalBreaks||(ct.labeledNonLocalBreaks=new Map),ct.labeledNonLocalBreaks.set(gi,_i)):(ct.labeledNonLocalContinues||(ct.labeledNonLocalContinues=new Map),ct.labeledNonLocalContinues.set(gi,_i))}function ln(ct,en,gi,_i,ys){ct&&ct.forEach(($s,wa)=>{let pc=[];if(!_i||_i.labels&&_i.labels.get(wa)){let ll=c.createIdentifier(wa);pc.push(en?c.createBreakStatement(ll):c.createContinueStatement(ll))}else mr(_i,en,wa,$s),pc.push(c.createReturnStatement(gi));ys.push(c.createCaseClause(c.createStringLiteral($s),pc))})}function ni(ct,en,gi,_i,ys){let $s=en.name;if(Nu($s))for(let wa of $s.elements)Ep(wa)||ni(ct,wa,gi,_i,ys);else{gi.push(c.createParameterDeclaration(void 0,void 0,$s));let wa=T.hasNodeCheckFlag(en,65536);if(wa||ys){let pc=c.createUniqueName("out_"+Vo($s)),ll=0;wa&&(ll|=1),X3(ct)&&(ct.initializer&&T.isBindingCapturedByNode(ct.initializer,en)&&(ll|=2),(ct.condition&&T.isBindingCapturedByNode(ct.condition,en)||ct.incrementor&&T.isBindingCapturedByNode(ct.incrementor,en))&&(ll|=1)),_i.push({flags:ll,originalName:$s,outParamName:pc})}}}function Ls(ct,en,gi,_i){let ys=en.properties,$s=ys.length;for(let wa=_i;wa<$s;wa++){let pc=ys[wa];switch(pc.kind){case 178:case 179:let ll=FW(en.properties,pc);pc===ll.firstAccessor&&ct.push(Ni(gi,ll,en,!!en.multiLine));break;case 175:ct.push(Ss(pc,gi,en,en.multiLine));break;case 304:ct.push(Za(pc,gi,en.multiLine));break;case 305:ct.push(Go(pc,gi,en.multiLine));break;default:pe.failBadSyntaxKind(en);break}}}function Za(ct,en,gi){let _i=c.createAssignment(LU(c,en,pe.checkDefined(Mr(ct.name,Ye,PI))),pe.checkDefined(Mr(ct.initializer,Ye,un)));return gn(_i,ct),gi&&x0(_i),_i}function Go(ct,en,gi){let _i=c.createAssignment(LU(c,en,pe.checkDefined(Mr(ct.name,Ye,PI))),c.cloneNode(ct.name));return gn(_i,ct),gi&&x0(_i),_i}function Ss(ct,en,gi,_i){let ys=c.createAssignment(LU(c,en,pe.checkDefined(Mr(ct.name,Ye,PI))),ds(ct,ct,void 0,gi));return gn(ys,ct),_i&&x0(ys),ys}function Uc(ct){let en=Te(7104,0),gi;if(pe.assert(!!ct.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),Nu(ct.variableDeclaration.name)){let _i=c.createTempVariable(void 0),ys=c.createVariableDeclaration(_i);gn(ys,ct.variableDeclaration);let $s=bQ(ct.variableDeclaration,Ye,s,0,_i),wa=c.createVariableDeclarationList($s);gn(wa,ct.variableDeclaration);let pc=c.createVariableStatement(void 0,wa);gi=c.updateCatchClause(ct,ys,el(ct.block,pc))}else gi=_s(ct,Ye,s);return Ze(en,0,0),gi}function el(ct,en){let gi=Os(ct.statements,Ye,Lc);return c.updateBlock(ct,[en,...gi])}function Fd(ct){pe.assert(!Un(ct.name));let en=ds(ct,tk(ct,-1),void 0,void 0);return ti(en,1024|rA(en)),gn(c.createPropertyAssignment(ct.name,en),ct)}function Vg(ct){pe.assert(!Un(ct.name));let en=_e;_e=void 0;let gi=Te(32670,65),_i,ys=wI(ct.parameters,Ye,s),$s=Ht(ct);return ct.kind===178?_i=c.updateGetAccessorDeclaration(ct,ct.modifiers,ct.name,ys,ct.type,$s):_i=c.updateSetAccessorDeclaration(ct,ct.modifiers,ct.name,ys,$s),Ze(gi,229376,0),_e=en,_i}function Ef(ct){return gn(c.createPropertyAssignment(ct.name,it(c.cloneNode(ct.name))),ct)}function om(ct){return _s(ct,Ye,s)}function Sh(ct){return _s(ct,Ye,s)}function Zp(ct){return zt(ct.elements,cf)?Pb(ct.elements,!1,!!ct.multiLine,!!ct.elements.hasTrailingComma):_s(ct,Ye,s)}function lh(ct){if(f1(ct)&1)return B1(ct);let en=XI(ct.expression);return en.kind===108||Zy(en)||zt(ct.arguments,cf)?W_(ct,!0):c.updateCallExpression(ct,pe.checkDefined(Mr(ct.expression,Qe,un)),void 0,Os(ct.arguments,Ye,un))}function B1(ct){let en=Ma(Ma(XI(ct.expression),gA).body,eg),gi=Ug=>Eh(Ug)&&!!ma(Ug.declarationList.declarations).initializer,_i=_e;_e=void 0;let ys=Os(en.statements,at,Lc);_e=_i;let $s=Le(ys,gi),wa=Le(ys,Ug=>!gi(Ug)),ll=Ma(ma($s),Eh).declarationList.declarations[0],Fe=XI(ll.initializer),gr=Gs(Fe,zm);!gr&&po(Fe)&&Fe.operatorToken.kind===28&&(gr=Gs(Fe.left,zm));let Ln=Ma(gr?XI(gr.right):Fe,Ll),bs=Ma(XI(Ln.expression),jA),Jl=bs.body.statements,tg=0,zl=-1,Su=[];if(gr){let Ug=Gs(Jl[tg],PC);Ug&&(Su.push(Ug),tg++),Su.push(Jl[tg]),tg++,Su.push(c.createExpressionStatement(c.createAssignment(gr.left,Ma(ll.name,Ir))))}for(;!_2(_g(Jl,zl));)zl--;Pr(Su,Jl,tg,zl),zl<-1&&Pr(Su,Jl,zl+1);let xf=Gs(_g(Jl,zl),_2);for(let Ug of wa)_2(Ug)&&xf?.expression&&!Ir(xf.expression)?Su.push(xf):Su.push(Ug);return Pr(Su,$s,1),c.restoreOuterExpressions(ct.expression,c.restoreOuterExpressions(ll.initializer,c.restoreOuterExpressions(gr&&gr.right,c.updateCallExpression(Ln,c.restoreOuterExpressions(Ln.expression,c.updateFunctionExpression(bs,void 0,void 0,void 0,void 0,bs.parameters,void 0,c.updateBlock(bs.body,Su))),void 0,Ln.arguments))))}function W_(ct,en){if(ct.transformFlags&32768||ct.expression.kind===108||Zy(XI(ct.expression))){let{target:gi,thisArg:_i}=c.createCallBinding(ct.expression,S);ct.expression.kind===108&&ti(_i,8);let ys;if(ct.transformFlags&32768?ys=c.createFunctionApplyCall(pe.checkDefined(Mr(gi,Qe,un)),ct.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Pb(ct.arguments,!0,!1,!1)):ys=gn(c.createFunctionCallCall(pe.checkDefined(Mr(gi,Qe,un)),ct.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Os(ct.arguments,Ye,un)),ct),ct.expression.kind===108){let $s=c.createLogicalOr(ys,$c());ys=en?c.createAssignment(je(),$s):$s}return ua(ys,ct)}return Gy(ct)&&(re|=131072),_s(ct,Ye,s)}function b2(ct){if(zt(ct.arguments,cf)){let{target:en,thisArg:gi}=c.createCallBinding(c.createPropertyAccessExpression(ct.expression,"bind"),S);return c.createNewExpression(c.createFunctionApplyCall(pe.checkDefined(Mr(en,Ye,un)),gi,Pb(c.createNodeArray([c.createVoidZero(),...ct.arguments]),!0,!1,!1)),void 0,[])}return _s(ct,Ye,s)}function Pb(ct,en,gi,_i){let ys=ct.length,$s=Sr(_n(ct,or,(Fe,gr,Ln,bs)=>gr(Fe,gi,_i&&bs===ys)));if($s.length===1){let Fe=$s[0];if(en&&!R.downlevelIteration||rEe(Fe.expression)||ik(Fe.expression,"___spreadArray"))return Fe.expression}let wa=g(),pc=$s[0].kind!==0,ll=pc?c.createArrayLiteralExpression():$s[0].expression;for(let Fe=pc?0:1;Fe<$s.length;Fe++){let gr=$s[Fe];ll=wa.createSpreadArrayHelper(ll,gr.expression,gr.kind===1&&!en)}return ll}function or(ct){return cf(ct)?qn:Yl}function qn(ct){return lt(ct,Js)}function Js(ct){pe.assertNode(ct,cf);let en=Mr(ct.expression,Ye,un);pe.assert(en);let gi=ik(en,"___read"),_i=gi||rEe(en)?2:1;return R.downlevelIteration&&_i===1&&!YI(en)&&!gi&&(en=g().createReadHelper(en,void 0),_i=2),drn(_i,en)}function Yl(ct,en,gi){let _i=c.createArrayLiteralExpression(Os(c.createNodeArray(ct,gi),Ye,un),en);return drn(0,_i)}function DA(ct){return Mr(ct.expression,Ye,un)}function kA(ct){return gn(c.createStringLiteral(ct.text),ct)}function AA(ct){return ct.hasExtendedUnicodeEscape?gn(c.createStringLiteral(ct.text),ct):ct}function ym(ct){return ct.numericLiteralFlags&384?gn(c.createNumericLiteral(ct.text),ct):ct}function lf(ct){return utt(s,ct,Ye,M,Ie,1)}function fI(ct){let en=c.createStringLiteral(ct.head.text);for(let gi of ct.templateSpans){let _i=[pe.checkDefined(Mr(gi.expression,Ye,un))];gi.literal.text.length>0&&_i.push(c.createStringLiteral(gi.literal.text)),en=c.createCallExpression(c.createPropertyAccessExpression(en,"concat"),void 0,_i)}return gn(en,ct)}function KI(){return c.createUniqueName("_super",48)}function E2(ct,en){let gi=re&8&&!en?c.createPropertyAccessExpression(ua(KI(),ct),"prototype"):KI();return ua(gi,ct),yh(gi,ct),Yg(gi,ct),gi}function I_(ct){return ct.keywordToken===105&&ct.name.escapedText==="target"?(re|=32768,c.createUniqueName("_newTarget",48)):ct}function YC(ct,en,gi){if(Ee&1&&Eu(en)){let _i=Te(32670,rA(en)&16?81:65);V(ct,en,gi),Ze(_i,0,0);return}V(ct,en,gi)}function w1(){Ee&2||(Ee|=2,s.enableSubstitution(80))}function py(){Ee&1||(Ee|=1,s.enableSubstitution(110),s.enableEmitNotification(177),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(220),s.enableEmitNotification(219),s.enableEmitNotification(263))}function Bv(ct,en){return en=O(ct,en),ct===1?Jx(en):Ir(en)?uk(en):en}function uk(ct){if(Ee&2&&!U$e(ct)){let en=eu(ct,Ir);if(en&&Xx(en))return gn(c.getGeneratedNameForNode(en),ct)}return ct}function Xx(ct){switch(ct.parent.kind){case 209:case 264:case 267:case 261:return ct.parent.name===ct&&T.isDeclarationWithCollidingName(ct.parent)}return!1}function Jx(ct){switch(ct.kind){case 80:return Mb(ct);case 110:return AR(ct)}return ct}function Mb(ct){if(Ee&2&&!U$e(ct)){let en=T.getReferencedDeclarationWithCollidingName(ct);if(en&&!(xa(en)&&rC(en,ct)))return gn(c.getGeneratedNameForNode(fl(en)),ct)}return ct}function rC(ct,en){let gi=eu(en);if(!gi||gi===ct||gi.end<=ct.pos||gi.pos>=ct.end)return!1;let _i=oS(ct);for(;gi;){if(gi===_i||gi===ct)return!1;if(MI(gi)&&gi.parent===ct)return!0;gi=gi.parent}return!1}function AR(ct){return Ee&1&&re&16?gn(je(),ct):ct}function CS(ct,en){return lg(en)?c.getInternalName(ct):c.createPropertyAccessExpression(c.getInternalName(ct),"prototype")}function WN(ct,en){if(!ct||!en||zt(ct.parameters))return!1;let gi=Nc(ct.body.statements);if(!gi||!ap(gi)||gi.kind!==245)return!1;let _i=gi.expression;if(!ap(_i)||_i.kind!==214)return!1;let ys=_i.expression;if(!ap(ys)||ys.kind!==108)return!1;let $s=Ws(_i.arguments);if(!$s||!ap($s)||$s.kind!==231)return!1;let wa=$s.expression;return Ir(wa)&&wa.escapedText==="arguments"}}function NBs(s){switch(s){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function N3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistFunctionDeclaration:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=Hg(R),O=s.getEmitResolver(),V=s.onSubstituteNode;s.onSubstituteNode=wt;let M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe=1,Ke,et,Ye,Tt,at=0,Qe=0,Ct,mt,yt,Rt,Lt,je,Wt,_r;return cR(s,Gt);function Gt(or){if(or.isDeclarationFile||!(or.transformFlags&2048))return or;let qn=_s(or,it,s);return EN(qn,s.readEmitHelpers()),qn}function it(or){let qn=or.transformFlags;return ge?Dt(or):re?tr(or):Gd(or)&&or.asteriskToken?Gr(or):qn&2048?_s(or,it,s):or}function Dt(or){switch(or.kind){case 247:return Qu(or);case 248:return Cs(or);case 256:return Ni(or);case 257:return nn(or);default:return tr(or)}}function tr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);case 178:case 179:return ot(or);case 244:return qt(or);case 249:return Wr(or);case 250:return pt(or);case 253:return Zr(or);case 252:return st(or);case 254:return Dn(or);default:return or.transformFlags&1048576?ur(or):or.transformFlags&4196352?_s(or,it,s):or}}function ur(or){switch(or.kind){case 227:return Yt(or);case 357:return Zi(or);case 228:return An(or);case 230:return si(or);case 210:return ks(or);case 211:return ou(or);case 213:return Zn(or);case 214:return ya(or);case 215:return Fl(or);default:return _s(or,it,s)}}function Gr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);default:return pe.failBadSyntaxKind(or)}}function dt(or){if(or.asteriskToken)or=ua(gn(c.createFunctionDeclaration(or.modifiers,void 0,or.name,void 0,wI(or.parameters,it,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,it,s),re=qn,ge=Js}if(re){_(or);return}else return or}function pr(or){if(or.asteriskToken)or=ua(gn(c.createFunctionExpression(void 0,void 0,or.name,void 0,wI(or.parameters,it,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,it,s),re=qn,ge=Js}return or}function ot(or){let qn=re,Js=ge;return re=!1,ge=!1,or=_s(or,it,s),re=qn,ge=Js,or}function ir(or){let qn=[],Js=re,Yl=ge,DA=Ie,kA=_e,AA=Ee,ym=Ne,lf=Te,fI=Ze,KI=Pe,E2=Ke,I_=et,YC=Ye,w1=Tt;re=!0,ge=!1,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Ze=void 0,Pe=1,Ke=void 0,et=void 0,Ye=void 0,Tt=c.createTempVariable(void 0),d();let py=c.copyPrologue(or.statements,qn,!1,it);ba(or.statements,py);let Bv=mr();return Nw(qn,h()),qn.push(c.createReturnStatement(Bv)),re=Js,ge=Yl,Ie=DA,_e=kA,Ee=AA,Ne=ym,Te=lf,Ze=fI,Pe=KI,Ke=E2,et=I_,Ye=YC,Tt=w1,gn(c.createBlock(qn,or.multiLine),or)}function qt(or){if(or.transformFlags&1048576){co(or.declarationList);return}else{if(rA(or)&2097152)return or;for(let Js of or.declarationList.declarations)S(Js.name);let qn=mU(or.declarationList);return qn.length===0?void 0:Yg(c.createExpressionStatement(c.inlineExpressions(lt(qn,pa))),or)}}function Yt(or){let qn=ibe(or);switch(qn){case 0:return mn(or);case 1:return Tr(or);default:return pe.assertNever(qn)}}function Tr(or){let{left:qn,right:Js}=or;if(Ht(Js)){let Yl;switch(qn.kind){case 212:Yl=c.updatePropertyAccessExpression(qn,Ue(pe.checkDefined(Mr(qn.expression,it,G_))),qn.name);break;case 213:Yl=c.updateElementAccessExpression(qn,Ue(pe.checkDefined(Mr(qn.expression,it,G_))),Ue(pe.checkDefined(Mr(qn.argumentExpression,it,un))));break;default:Yl=pe.checkDefined(Mr(qn,it,un));break}let DA=or.operatorToken.kind;return Hde(DA)?gn(c.createAssignment(Yl,gn(c.createBinaryExpression(Ue(Yl),Yde(DA),pe.checkDefined(Mr(Js,it,un))),or)),or):c.updateBinaryExpression(or,Yl,or.operatorToken,pe.checkDefined(Mr(Js,it,un)))}return _s(or,it,s)}function mn(or){return Ht(or.right)?lLe(or.operatorToken.kind)?Ns(or):or.operatorToken.kind===28?jn(or):c.updateBinaryExpression(or,Ue(pe.checkDefined(Mr(or.left,it,un))),or.operatorToken,pe.checkDefined(Mr(or.right,it,un))):_s(or,it,s)}function jn(or){let qn=[];return Js(or.left),Js(or.right),c.inlineExpressions(qn);function Js(Yl){po(Yl)&&Yl.operatorToken.kind===28?(Js(Yl.left),Js(Yl.right)):(Ht(Yl)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Yl,it,un))))}}function Zi(or){let qn=[];for(let Js of or.elements)po(Js)&&Js.operatorToken.kind===28?qn.push(jn(Js)):(Ht(Js)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Js,it,un))));return c.inlineExpressions(qn)}function Ns(or){let qn=Hn(),Js=In();return zA(Js,pe.checkDefined(Mr(or.left,it,un)),or.left),or.operatorToken.kind===56?tp(qn,Js,or.left):oi(qn,Js,or.left),zA(Js,pe.checkDefined(Mr(or.right,it,un)),or.right),Mt(qn),Js}function An(or){if(Ht(or.whenTrue)||Ht(or.whenFalse)){let qn=Hn(),Js=Hn(),Yl=In();return tp(qn,pe.checkDefined(Mr(or.condition,it,un)),or.condition),zA(Yl,pe.checkDefined(Mr(or.whenTrue,it,un)),or.whenTrue),NA(Js),Mt(qn),zA(Yl,pe.checkDefined(Mr(or.whenFalse,it,un)),or.whenFalse),Mt(Js),Yl}return _s(or,it,s)}function si(or){let qn=Hn(),Js=Mr(or.expression,it,un);if(or.asteriskToken){let Yl=rA(or.expression)&8388608?Js:gn(g().createValuesHelper(Js),or);JI(Yl,or)}else Wh(Js,or);return Mt(qn),mS(or)}function ks(or){return Ic(or.elements,void 0,void 0,or.multiLine)}function Ic(or,qn,Js,Yl){let DA=cn(or),kA;if(DA>0){kA=In();let lf=Os(or,it,un,0,DA);zA(kA,c.createArrayLiteralExpression(qn?[qn,...lf]:lf)),qn=void 0}let AA=Kl(or,ym,[],DA);return kA?c.createArrayConcatCall(kA,[c.createArrayLiteralExpression(AA,Yl)]):gn(c.createArrayLiteralExpression(qn?[qn,...AA]:AA,Yl),Js);function ym(lf,fI){if(Ht(fI)&&lf.length>0){let KI=kA!==void 0;kA||(kA=In()),zA(kA,KI?c.createArrayConcatCall(kA,[c.createArrayLiteralExpression(lf,Yl)]):c.createArrayLiteralExpression(qn?[qn,...lf]:lf,Yl)),qn=void 0,lf=[]}return lf.push(pe.checkDefined(Mr(fI,it,un))),lf}}function ou(or){let qn=or.properties,Js=or.multiLine,Yl=cn(qn),DA=In();zA(DA,c.createObjectLiteralExpression(Os(qn,it,ww,0,Yl),Js));let kA=Kl(qn,AA,[],Yl);return kA.push(Js?x0(UA(gn(c.cloneNode(DA),DA),DA.parent)):DA),c.inlineExpressions(kA);function AA(ym,lf){Ht(lf)&&ym.length>0&&(Eg(c.createExpressionStatement(c.inlineExpressions(ym))),ym=[]);let fI=vOt(c,or,lf,DA),KI=Mr(fI,it,un);return KI&&(Js&&x0(KI),ym.push(KI)),ym}}function Zn(or){return Ht(or.argumentExpression)?c.updateElementAccessExpression(or,Ue(pe.checkDefined(Mr(or.expression,it,G_))),pe.checkDefined(Mr(or.argumentExpression,it,un))):_s(or,it,s)}function ya(or){if(!jp(or)&&F(or.arguments,Ht)){let{target:qn,thisArg:Js}=c.createCallBinding(or.expression,S,T,!0);return ua(gn(c.createFunctionApplyCall(Ue(pe.checkDefined(Mr(qn,it,G_))),Js,Ic(or.arguments)),or),or)}return _s(or,it,s)}function Fl(or){if(F(or.arguments,Ht)){let{target:qn,thisArg:Js}=c.createCallBinding(c.createPropertyAccessExpression(or.expression,"bind"),S);return ua(gn(c.createNewExpression(c.createFunctionApplyCall(Ue(pe.checkDefined(Mr(qn,it,un))),Js,Ic(or.arguments,c.createVoidZero())),void 0,[]),or),or)}return _s(or,it,s)}function ba(or,qn=0){let Js=or.length;for(let Yl=qn;Yl0)break;DA.push(pa(AA))}DA.length&&(Eg(c.createExpressionStatement(c.inlineExpressions(DA))),Yl+=DA.length,DA=[])}}function pa(or){return Yg(c.createAssignment(Yg(c.cloneNode(or.name),or.name),pe.checkDefined(Mr(or.initializer,it,un))),or)}function Pa(or){if(Ht(or))if(Ht(or.thenStatement)||Ht(or.elseStatement)){let qn=Hn(),Js=or.elseStatement?Hn():void 0;tp(or.elseStatement?Js:qn,pe.checkDefined(Mr(or.expression,it,un)),or.expression),Oo(or.thenStatement),or.elseStatement&&(NA(qn),Mt(Js),Oo(or.elseStatement)),Mt(qn)}else Eg(Mr(or,it,Lc));else Eg(Mr(or,it,Lc))}function $c(or){if(Ht(or)){let qn=Hn(),Js=Hn();Vn(qn),Mt(Js),Oo(or.statement),Mt(qn),oi(Js,pe.checkDefined(Mr(or.expression,it,un))),Ui()}else Eg(Mr(or,it,Lc))}function Qu(or){return ge?(Oi(),or=_s(or,it,s),Ui(),or):_s(or,it,s)}function Rg(or){if(Ht(or)){let qn=Hn(),Js=Vn(qn);Mt(qn),tp(Js,pe.checkDefined(Mr(or.expression,it,un))),Oo(or.statement),NA(qn),Ui()}else Eg(Mr(or,it,Lc))}function Cs(or){return ge?(Oi(),or=_s(or,it,s),Ui(),or):_s(or,it,s)}function Tu(or){if(Ht(or)){let qn=Hn(),Js=Hn(),Yl=Vn(Js);if(or.initializer){let DA=or.initializer;d_(DA)?co(DA):Eg(gn(c.createExpressionStatement(pe.checkDefined(Mr(DA,it,un))),DA))}Mt(qn),or.condition&&tp(Yl,pe.checkDefined(Mr(or.condition,it,un))),Oo(or.statement),Mt(Js),or.incrementor&&Eg(gn(c.createExpressionStatement(pe.checkDefined(Mr(or.incrementor,it,un))),or.incrementor)),NA(qn),Ui()}else Eg(Mr(or,it,Lc))}function Wr(or){ge&&Oi();let qn=or.initializer;if(qn&&d_(qn)){for(let Yl of qn.declarations)S(Yl.name);let Js=mU(qn);or=c.updateForStatement(or,Js.length>0?c.inlineExpressions(lt(Js,pa)):void 0,Mr(or.condition,it,un),Mr(or.incrementor,it,un),My(or.statement,it,s))}else or=_s(or,it,s);return ge&&Ui(),or}function Wn(or){if(Ht(or)){let qn=In(),Js=In(),Yl=In(),DA=c.createLoopVariable(),kA=or.initializer;S(DA),zA(qn,pe.checkDefined(Mr(or.expression,it,un))),zA(Js,c.createArrayLiteralExpression()),Eg(c.createForInStatement(Yl,qn,c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(Js,"push"),void 0,[Yl])))),zA(DA,c.createNumericLiteral(0));let AA=Hn(),ym=Hn(),lf=Vn(ym);Mt(AA),tp(lf,c.createLessThan(DA,c.createPropertyAccessExpression(Js,"length"))),zA(Yl,c.createElementAccessExpression(Js,DA)),tp(ym,c.createBinaryExpression(Yl,103,qn));let fI;if(d_(kA)){for(let KI of kA.declarations)S(KI.name);fI=c.cloneNode(kA.declarations[0].name)}else fI=pe.checkDefined(Mr(kA,it,un)),pe.assert(G_(fI));zA(fI,Yl),Oo(or.statement),Mt(ym),Eg(c.createExpressionStatement(c.createPostfixIncrement(DA))),NA(AA),Ui()}else Eg(Mr(or,it,Lc))}function pt(or){ge&&Oi();let qn=or.initializer;if(d_(qn)){for(let Js of qn.declarations)S(Js.name);or=c.updateForInStatement(or,qn.declarations[0].name,pe.checkDefined(Mr(or.expression,it,un)),pe.checkDefined(Mr(or.statement,it,Lc,c.liftToBlock)))}else or=_s(or,it,s);return ge&&Ui(),or}function on(or){let qn=bu(or.label?Vo(or.label):void 0);qn>0?NA(qn,or):Eg(or)}function st(or){if(ge){let qn=bu(or.label&&Vo(or.label));if(qn>0)return Jg(qn,or)}return _s(or,it,s)}function nr(or){let qn=kl(or.label?Vo(or.label):void 0);qn>0?NA(qn,or):Eg(or)}function Zr(or){if(ge){let qn=kl(or.label&&Vo(or.label));if(qn>0)return Jg(qn,or)}return _s(or,it,s)}function Kr(or){HC(Mr(or.expression,it,un),or)}function Dn(or){return ch(Mr(or.expression,it,un),or)}function hr(or){Ht(or)?(Ys(Ue(pe.checkDefined(Mr(or.expression,it,un)))),Oo(or.statement),tn()):Eg(Mr(or,it,Lc))}function En(or){if(Ht(or.caseBlock)){let qn=or.caseBlock,Js=qn.clauses.length,Yl=fs(),DA=Ue(pe.checkDefined(Mr(or.expression,it,un))),kA=[],AA=-1;for(let fI=0;fI0)break;lf.push(c.createCaseClause(pe.checkDefined(Mr(E2.expression,it,un)),[Jg(kA[KI],E2.expression)]))}else fI++}lf.length&&(Eg(c.createSwitchStatement(DA,c.createCaseBlock(lf))),ym+=lf.length,lf=[]),fI>0&&(ym+=fI,fI=0)}AA>=0?NA(kA[AA]):NA(Yl);for(let fI=0;fI=0;Js--){let Yl=Ne[Js];if(RI(Yl)){if(Yl.labelText===or)return!0}else break}return!1}function kl(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(RI(Js)&&Js.labelText===or)return Js.breakLabel;if(yu(Js)&&Ip(or,qn-1))return Js.breakLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(yu(Js))return Js.breakLabel}return 0}function bu(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(pI(Js)&&Ip(or,qn-1))return Js.continueLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(pI(Js))return Js.continueLabel}return 0}function sm(or){if(or!==void 0&&or>0){Ze===void 0&&(Ze=[]);let qn=c.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Ze[or]===void 0?Ze[or]=[qn]:Ze[or].push(qn),qn}return c.createOmittedExpression()}function qp(or){let qn=c.createNumericLiteral(or);return Dz(qn,3,NBs(or)),qn}function Jg(or,qn){return pe.assertLessThan(0,or,"Invalid label"),gn(c.createReturnStatement(c.createArrayLiteralExpression([qp(3),sm(or)])),qn)}function ch(or,qn){return gn(c.createReturnStatement(c.createArrayLiteralExpression(or?[qp(2),or]:[qp(2)])),qn)}function mS(or){return gn(c.createCallExpression(c.createPropertyAccessExpression(Tt,"sent"),void 0,[]),or)}function Au(){ve(0)}function Eg(or){or?ve(1,[or]):Au()}function zA(or,qn,Js){ve(2,[or,qn],Js)}function NA(or,qn){ve(3,[or],qn)}function oi(or,qn,Js){ve(4,[or,qn],Js)}function tp(or,qn,Js){ve(5,[or,qn],Js)}function JI(or,qn){ve(7,[or],qn)}function Wh(or,qn){ve(6,[or],qn)}function HC(or,qn){ve(8,[or],qn)}function bf(or,qn){ve(9,[or],qn)}function UI(){ve(10)}function ve(or,qn,Js){Ke===void 0&&(Ke=[],et=[],Ye=[]),Te===void 0&&Mt(Hn());let Yl=Ke.length;Ke[Yl]=or,et[Yl]=qn,Ye[Yl]=Js}function mr(){at=0,Qe=0,Ct=void 0,mt=!1,yt=!1,Rt=void 0,Lt=void 0,je=void 0,Wt=void 0,_r=void 0;let or=ln();return g().createGeneratorHelper(ti(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Tt)],void 0,c.createBlock(or,or.length>0)),1048576))}function ln(){if(Ke){for(let or=0;or=0;qn--){let Js=_r[qn];Lt=[c.createWithStatement(Js.expression,c.createBlock(Lt))]}if(Wt){let{startLabel:qn,catchLabel:Js,finallyLabel:Yl,endLabel:DA}=Wt;Lt.unshift(c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createPropertyAccessExpression(Tt,"trys"),"push"),void 0,[c.createArrayLiteralExpression([sm(qn),sm(Js),sm(Yl),sm(DA)])]))),Wt=void 0}or&&Lt.push(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(Tt,"label"),c.createNumericLiteral(Qe+1))))}Rt.push(c.createCaseClause(c.createNumericLiteral(Qe),Lt||[])),Lt=void 0}function Ss(or){if(Te)for(let qn=0;qn{(!_A(Ue.arguments[0])||vne(Ue.arguments[0].text,R))&&(Ee=Ft(Ee,Ue))});let fr=c(M)(wt);return Ie=void 0,_e=void 0,Te=!1,fr}function Pe(){return _N(Ie.fileName)&&Ie.commonJsModuleIndicator&&(!Ie.externalModuleIndicator||Ie.externalModuleIndicator===!0)?!1:!!(!_e.exportEquals&&Lm(Ie))}function Ke(wt){h();let xe=[],fr=u_(R,"alwaysStrict")||Lm(Ie),Ue=g.copyPrologue(wt.statements,xe,fr&&!Zu(wt),mt);if(Pe()&&Ft(xe,nr()),zt(_e.exportedNames))for(let Mt=0;Mt<_e.exportedNames.length;Mt+=50)Ft(xe,g.createExpressionStatement(Kl(_e.exportedNames.slice(Mt,Mt+50),($r,ri)=>ri.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(ri.text)),$r):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(ri))),$r),g.createVoidZero())));for(let Hn of _e.exportedFunctions)pt(xe,Hn);Ft(xe,Mr(_e.externalHelpersImportDeclaration,mt,Lc)),Pr(xe,Os(wt.statements,mt,Lc,Ue)),Ct(xe,!1),Nw(xe,_());let In=g.updateSourceFile(wt,gn(g.createNodeArray(xe),wt.statements));return EN(In,s.readEmitHelpers()),In}function et(wt){let xe=g.createIdentifier("define"),fr=xEe(g,wt,O,R),Ue=Zu(wt)&&wt,{aliasedModuleNames:In,unaliasedModuleNames:Hn,importAliasNames:Mt}=Tt(wt,!0),$r=g.updateSourceFile(wt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(xe,void 0,[...fr?[fr]:[],g.createArrayLiteralExpression(Ue?E:[g.createStringLiteral("require"),g.createStringLiteral("exports"),...In,...Hn]),Ue?Ue.statements.length?Ue.statements[0].expression:g.createObjectLiteralExpression():g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Mt],void 0,Qe(wt))]))]),wt.statements));return EN($r,s.readEmitHelpers()),$r}function Ye(wt){let{aliasedModuleNames:xe,unaliasedModuleNames:fr,importAliasNames:Ue}=Tt(wt,!1),In=xEe(g,wt,O,R),Hn=g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"factory")],void 0,gn(g.createBlock([g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("module"),"object"),g.createTypeCheck(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),"object")),g.createBlock([g.createVariableStatement(void 0,[g.createVariableDeclaration("v",void 0,void 0,g.createCallExpression(g.createIdentifier("factory"),void 0,[g.createIdentifier("require"),g.createIdentifier("exports")]))]),ti(g.createIfStatement(g.createStrictInequality(g.createIdentifier("v"),g.createIdentifier("undefined")),g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),g.createIdentifier("v")))),1)]),g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("define"),"function"),g.createPropertyAccessExpression(g.createIdentifier("define"),"amd")),g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("define"),void 0,[...In?[In]:[],g.createArrayLiteralExpression([g.createStringLiteral("require"),g.createStringLiteral("exports"),...xe,...fr]),g.createIdentifier("factory")]))])))],!0),void 0)),Mt=g.updateSourceFile(wt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(Hn,void 0,[g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Ue],void 0,Qe(wt))]))]),wt.statements));return EN(Mt,s.readEmitHelpers()),Mt}function Tt(wt,xe){let fr=[],Ue=[],In=[];for(let Hn of wt.amdDependencies)Hn.name?(fr.push(g.createStringLiteral(Hn.path)),In.push(g.createParameterDeclaration(void 0,void 0,Hn.name))):Ue.push(g.createStringLiteral(Hn.path));for(let Hn of _e.externalImports){let Mt=Vz(g,Hn,Ie,O,T,R),$r=Zie(g,Hn,Ie);Mt&&(xe&&$r?(ti($r,8),fr.push(Mt),In.push(g.createParameterDeclaration(void 0,void 0,$r))):Ue.push(Mt))}return{aliasedModuleNames:fr,unaliasedModuleNames:Ue,importAliasNames:In}}function at(wt){if(Zm(wt)||Vh(wt)||!Vz(g,wt,Ie,O,T,R))return;let xe=Zie(g,wt,Ie),fr=ba(wt,xe);if(fr!==xe)return g.createExpressionStatement(g.createAssignment(xe,fr))}function Qe(wt){h();let xe=[],fr=g.copyPrologue(wt.statements,xe,!0,mt);Pe()&&Ft(xe,nr()),zt(_e.exportedNames)&&Ft(xe,g.createExpressionStatement(Kl(_e.exportedNames,(In,Hn)=>Hn.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(Hn.text)),In):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(Hn))),In),g.createVoidZero())));for(let In of _e.exportedFunctions)pt(xe,In);Ft(xe,Mr(_e.externalHelpersImportDeclaration,mt,Lc)),M===2&&Pr(xe,Xt(_e.externalImports,at)),Pr(xe,Os(wt.statements,mt,Lc,fr)),Ct(xe,!0),Nw(xe,_());let Ue=g.createBlock(xe,!0);return Te&&gQ(Ue,DBs),Ue}function Ct(wt,xe){if(_e.exportEquals){let fr=Mr(_e.exportEquals.expression,Lt,un);if(fr)if(xe){let Ue=g.createReturnStatement(fr);gn(Ue,_e.exportEquals),ti(Ue,3840),wt.push(Ue)}else{let Ue=g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),fr));gn(Ue,_e.exportEquals),ti(Ue,3072),wt.push(Ue)}}}function mt(wt){switch(wt.kind){case 273:return Oo(wt);case 272:return yr(wt);case 279:return hn(wt);case 278:return Pi(wt);default:return yt(wt)}}function yt(wt){switch(wt.kind){case 244:return Pa(wt);case 263:return co(wt);case 264:return pa(wt);case 249:return Gt(wt,!0);case 250:return it(wt);case 251:return Dt(wt);case 247:return tr(wt);case 248:return ur(wt);case 257:return Gr(wt);case 255:return dt(wt);case 246:return pr(wt);case 256:return ot(wt);case 270:return ir(wt);case 297:return qt(wt);case 298:return Yt(wt);case 259:return Tr(wt);case 300:return mn(wt);case 242:return jn(wt);default:return Lt(wt)}}function Rt(wt,xe){if(!(wt.transformFlags&276828160)&&!Ee?.length)return wt;switch(wt.kind){case 249:return Gt(wt,!1);case 245:return Zi(wt);case 218:return Ns(wt,xe);case 356:return An(wt,xe);case 214:let fr=wt===Nc(Ee);if(fr&&Ee.shift(),jp(wt)&&O.shouldTransformImportCall(Ie))return Ic(wt,fr);if(fr)return ks(wt);break;case 227:if(Lx(wt))return _r(wt,xe);break;case 225:case 226:return si(wt,xe)}return _s(wt,Lt,s)}function Lt(wt){return Rt(wt,!1)}function je(wt){return Rt(wt,!0)}function Wt(wt){if(ag(wt))for(let xe of wt.properties)switch(xe.kind){case 304:if(Wt(xe.initializer))return!0;break;case 305:if(Wt(xe.name))return!0;break;case 306:if(Wt(xe.expression))return!0;break;case 175:case 178:case 179:return!1;default:pe.assertNever(xe,"Unhandled object member kind")}else if(YI(wt)){for(let xe of wt.elements)if(cf(xe)){if(Wt(xe.expression))return!0}else if(Wt(xe))return!0}else if(Ir(wt))return B(cn(wt))>(w9e(wt)?1:0);return!1}function _r(wt,xe){return Wt(wt.left)?MU(wt,Lt,s,0,!xe,$c):_s(wt,Lt,s)}function Gt(wt,xe){if(xe&&wt.initializer&&d_(wt.initializer)&&!(wt.initializer.flags&7)){let fr=Wr(void 0,wt.initializer,!1);if(fr){let Ue=[],In=Mr(wt.initializer,je,d_),Hn=g.createVariableStatement(void 0,In);Ue.push(Hn),Pr(Ue,fr);let Mt=Mr(wt.condition,Lt,un),$r=Mr(wt.incrementor,je,un),ri=My(wt.statement,xe?yt:Lt,s);return Ue.push(g.updateForStatement(wt,void 0,Mt,$r,ri)),Ue}}return g.updateForStatement(wt,Mr(wt.initializer,je,yE),Mr(wt.condition,Lt,un),Mr(wt.incrementor,je,un),My(wt.statement,xe?yt:Lt,s))}function it(wt){if(d_(wt.initializer)&&!(wt.initializer.flags&7)){let xe=Wr(void 0,wt.initializer,!0);if(zt(xe)){let fr=Mr(wt.initializer,je,yE),Ue=Mr(wt.expression,Lt,un),In=My(wt.statement,yt,s),Hn=eg(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0);return g.updateForInStatement(wt,fr,Ue,Hn)}}return g.updateForInStatement(wt,Mr(wt.initializer,je,yE),Mr(wt.expression,Lt,un),My(wt.statement,yt,s))}function Dt(wt){if(d_(wt.initializer)&&!(wt.initializer.flags&7)){let xe=Wr(void 0,wt.initializer,!0),fr=Mr(wt.initializer,je,yE),Ue=Mr(wt.expression,Lt,un),In=My(wt.statement,yt,s);return zt(xe)&&(In=eg(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0)),g.updateForOfStatement(wt,wt.awaitModifier,fr,Ue,In)}return g.updateForOfStatement(wt,wt.awaitModifier,Mr(wt.initializer,je,yE),Mr(wt.expression,Lt,un),My(wt.statement,yt,s))}function tr(wt){return g.updateDoStatement(wt,My(wt.statement,yt,s),Mr(wt.expression,Lt,un))}function ur(wt){return g.updateWhileStatement(wt,Mr(wt.expression,Lt,un),My(wt.statement,yt,s))}function Gr(wt){return g.updateLabeledStatement(wt,wt.label,Mr(wt.statement,yt,Lc,g.liftToBlock)??gn(g.createEmptyStatement(),wt.statement))}function dt(wt){return g.updateWithStatement(wt,Mr(wt.expression,Lt,un),pe.checkDefined(Mr(wt.statement,yt,Lc,g.liftToBlock)))}function pr(wt){return g.updateIfStatement(wt,Mr(wt.expression,Lt,un),Mr(wt.thenStatement,yt,Lc,g.liftToBlock)??g.createBlock([]),Mr(wt.elseStatement,yt,Lc,g.liftToBlock))}function ot(wt){return g.updateSwitchStatement(wt,Mr(wt.expression,Lt,un),pe.checkDefined(Mr(wt.caseBlock,yt,vde)))}function ir(wt){return g.updateCaseBlock(wt,Os(wt.clauses,yt,HJ))}function qt(wt){return g.updateCaseClause(wt,Mr(wt.expression,Lt,un),Os(wt.statements,yt,Lc))}function Yt(wt){return _s(wt,yt,s)}function Tr(wt){return _s(wt,yt,s)}function mn(wt){return g.updateCatchClause(wt,wt.variableDeclaration,pe.checkDefined(Mr(wt.block,yt,eg)))}function jn(wt){return wt=_s(wt,yt,s),wt}function Zi(wt){return g.updateExpressionStatement(wt,Mr(wt.expression,je,un))}function Ns(wt,xe){return g.updateParenthesizedExpression(wt,Mr(wt.expression,xe?je:Lt,un))}function An(wt,xe){return g.updatePartiallyEmittedExpression(wt,Mr(wt.expression,xe?je:Lt,un))}function si(wt,xe){if((wt.operator===46||wt.operator===47)&&Ir(wt.operand)&&!Gp(wt.operand)&&!QF(wt.operand)&&!Rbe(wt.operand)){let fr=cn(wt.operand);if(fr){let Ue,In=Mr(wt.operand,Lt,un);D0(wt)?In=g.updatePrefixUnaryExpression(wt,In):(In=g.updatePostfixUnaryExpression(wt,In),xe||(Ue=g.createTempVariable(S),In=g.createAssignment(Ue,In),gn(In,wt)),In=g.createComma(In,g.cloneNode(wt.operand)),gn(In,wt));for(let Hn of fr)Ne[id(In)]=!0,In=Kr(Hn,In),gn(In,wt);return Ue&&(Ne[id(In)]=!0,In=g.createComma(In,Ue),gn(In,wt)),In}}return _s(wt,Lt,s)}function ks(wt){return g.updateCallExpression(wt,wt.expression,void 0,Os(wt.arguments,xe=>xe===wt.arguments[0]?_A(xe)?Qz(xe,R):d().createRewriteRelativeImportExtensionsHelper(xe):Lt(xe),un))}function Ic(wt,xe){if(M===0&&V>=7)return _s(wt,Lt,s);let fr=Vz(g,wt,Ie,O,T,R),Ue=Mr(Nc(wt.arguments),Lt,un),In=fr&&(!Ue||!Lg(Ue)||Ue.text!==fr.text)?fr:Ue&&xe?Lg(Ue)?Qz(Ue,R):d().createRewriteRelativeImportExtensionsHelper(Ue):Ue,Hn=!!(wt.transformFlags&16384);switch(R.module){case 2:return Zn(In,Hn);case 3:return ou(In??g.createVoidZero(),Hn);case 1:default:return ya(In)}}function ou(wt,xe){if(Te=!0,yQ(wt)){let fr=Gp(wt)?wt:Lg(wt)?g.createStringLiteralFromNode(wt):ti(gn(g.cloneNode(wt),wt),3072);return g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(wt),void 0,Zn(fr,xe))}else{let fr=g.createTempVariable(S);return g.createComma(g.createAssignment(fr,wt),g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(fr,!0),void 0,Zn(fr,xe)))}}function Zn(wt,xe){let fr=g.createUniqueName("resolve"),Ue=g.createUniqueName("reject"),In=[g.createParameterDeclaration(void 0,void 0,fr),g.createParameterDeclaration(void 0,void 0,Ue)],Hn=g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("require"),void 0,[g.createArrayLiteralExpression([wt||g.createOmittedExpression()]),fr,Ue]))]),Mt;V>=2?Mt=g.createArrowFunction(void 0,void 0,In,void 0,void 0,Hn):(Mt=g.createFunctionExpression(void 0,void 0,void 0,void 0,In,void 0,Hn),xe&&ti(Mt,16));let $r=g.createNewExpression(g.createIdentifier("Promise"),void 0,[Mt]);return Vw(R)?g.createCallExpression(g.createPropertyAccessExpression($r,g.createIdentifier("then")),void 0,[d().createImportStarCallbackHelper()]):$r}function ya(wt,xe){let fr=wt&&!kN(wt)&&!xe,Ue=g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Promise"),"resolve"),void 0,fr?V>=2?[g.createTemplateExpression(g.createTemplateHead(""),[g.createTemplateSpan(wt,g.createTemplateTail(""))])]:[g.createCallExpression(g.createPropertyAccessExpression(g.createStringLiteral(""),"concat"),void 0,[wt])]:[]),In=g.createCallExpression(g.createIdentifier("require"),void 0,fr?[g.createIdentifier("s")]:wt?[wt]:[]);Vw(R)&&(In=d().createImportStarHelper(In));let Hn=fr?[g.createParameterDeclaration(void 0,void 0,"s")]:[],Mt;return V>=2?Mt=g.createArrowFunction(void 0,void 0,Hn,void 0,void 0,In):Mt=g.createFunctionExpression(void 0,void 0,void 0,void 0,Hn,void 0,g.createBlock([g.createReturnStatement(In)])),g.createCallExpression(g.createPropertyAccessExpression(Ue,"then"),void 0,[Mt])}function Fl(wt,xe){return!Vw(R)||f1(wt)&2?xe:r3t(wt)?d().createImportStarHelper(xe):xe}function ba(wt,xe){return!Vw(R)||f1(wt)&2?xe:lVe(wt)?d().createImportStarHelper(xe):ntt(wt)?d().createImportDefaultHelper(xe):xe}function Oo(wt){let xe,fr=aU(wt);if(M!==2)if(wt.importClause){let Ue=[];fr&&!B3(wt)?Ue.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,ba(wt,hc(wt)))):(Ue.push(g.createVariableDeclaration(g.getGeneratedNameForNode(wt),void 0,void 0,ba(wt,hc(wt)))),fr&&B3(wt)&&Ue.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(wt)))),xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList(Ue,V>=2?2:0)),wt),wt))}else return ua(gn(g.createExpressionStatement(hc(wt)),wt),wt);else fr&&B3(wt)&&(xe=Ft(xe,g.createVariableStatement(void 0,g.createVariableDeclarationList([ua(gn(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(wt)),wt),wt)],V>=2?2:0))));return xe=Rg(xe,wt),ac(xe)}function hc(wt){let xe=Vz(g,wt,Ie,O,T,R),fr=[];return xe&&fr.push(Qz(xe,R)),g.createCallExpression(g.createIdentifier("require"),void 0,fr)}function yr(wt){pe.assert(YL(wt),"import= for internal module references should be handled in an earlier transformer.");let xe;return M!==2?Ga(wt,32)?xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(wt.name,hc(wt))),wt),wt)):xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(g.cloneNode(wt.name),void 0,void 0,hc(wt))],V>=2?2:0)),wt),wt)):Ga(wt,32)&&(xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(g.getExportName(wt),g.getLocalName(wt))),wt),wt))),xe=Cs(xe,wt),ac(xe)}function hn(wt){if(!wt.moduleSpecifier)return;let xe=g.getGeneratedNameForNode(wt);if(wt.exportClause&&Ev(wt.exportClause)){let fr=[];M!==2&&fr.push(ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(xe,void 0,void 0,hc(wt))])),wt),wt));for(let Ue of wt.exportClause.elements){let In=Ue.propertyName||Ue.name,Mt=!!Vw(R)&&!(f1(wt)&2)&&pv(In)?d().createImportDefaultHelper(xe):xe,$r=In.kind===11?g.createElementAccessExpression(Mt,In):g.createPropertyAccessExpression(Mt,In);fr.push(ua(gn(g.createExpressionStatement(Kr(Ue.name.kind===11?g.cloneNode(Ue.name):g.getExportName(Ue),$r,void 0,!0)),Ue),Ue))}return ac(fr)}else if(wt.exportClause){let fr=[];return fr.push(ua(gn(g.createExpressionStatement(Kr(g.cloneNode(wt.exportClause.name),Fl(wt,M!==2?hc(wt):WY(wt)||wt.exportClause.name.kind===11?xe:g.createIdentifier(Vo(wt.exportClause.name))))),wt),wt)),ac(fr)}else return ua(gn(g.createExpressionStatement(d().createExportStarHelper(M!==2?hc(wt):xe)),wt),wt)}function Pi(wt){if(!wt.isExportEquals)return Zr(g.createIdentifier("default"),Mr(wt.expression,Lt,un),wt,!0)}function co(wt){let xe;return Ga(wt,32)?xe=Ft(xe,ua(gn(g.createFunctionDeclaration(Os(wt.modifiers,Dn,hg),wt.asteriskToken,g.getDeclarationName(wt,!0,!0),void 0,Os(wt.parameters,Lt,Si),void 0,_s(wt.body,Lt,s)),wt),wt)):xe=Ft(xe,_s(wt,Lt,s)),ac(xe)}function pa(wt){let xe;return Ga(wt,32)?xe=Ft(xe,ua(gn(g.createClassDeclaration(Os(wt.modifiers,Dn,fp),g.getDeclarationName(wt,!0,!0),void 0,Os(wt.heritageClauses,Lt,y1),Os(wt.members,Lt,MI)),wt),wt)):xe=Ft(xe,_s(wt,Lt,s)),xe=pt(xe,wt),ac(xe)}function Pa(wt){let xe,fr,Ue;if(Ga(wt,32)){let In,Hn=!1;for(let Mt of wt.declarationList.declarations)if(Ir(Mt.name)&&QF(Mt.name))if(In||(In=Os(wt.modifiers,Dn,hg)),Mt.initializer){let $r=g.updateVariableDeclaration(Mt,Mt.name,void 0,void 0,Kr(Mt.name,Mr(Mt.initializer,Lt,un)));fr=Ft(fr,$r)}else fr=Ft(fr,Mt);else if(Mt.initializer)if(!Nu(Mt.name)&&(gA(Mt.initializer)||jA(Mt.initializer)||wd(Mt.initializer))){let $r=g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Mt.name),Mt.name),g.createIdentifier(A2(Mt.name))),ri=g.createVariableDeclaration(Mt.name,Mt.exclamationToken,Mt.type,Mr(Mt.initializer,Lt,un));fr=Ft(fr,ri),Ue=Ft(Ue,$r),Hn=!0}else Ue=Ft(Ue,Qu(Mt));if(fr&&(xe=Ft(xe,g.updateVariableStatement(wt,In,g.updateVariableDeclarationList(wt.declarationList,fr)))),Ue){let Mt=ua(gn(g.createExpressionStatement(g.inlineExpressions(Ue)),wt),wt);Hn&&Rz(Mt),xe=Ft(xe,Mt)}}else xe=Ft(xe,_s(wt,Lt,s));return xe=Tu(xe,wt),ac(xe)}function $c(wt,xe,fr){let Ue=cn(wt);if(Ue){let In=w9e(wt)?xe:g.createAssignment(wt,xe);for(let Hn of Ue)ti(In,8),In=Kr(Hn,In,fr);return In}return g.createAssignment(wt,xe)}function Qu(wt){return Nu(wt.name)?MU(Mr(wt,Lt,Une),Lt,s,0,!1,$c):g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),wt.name),wt.name),wt.initializer?Mr(wt.initializer,Lt,un):g.createVoidZero())}function Rg(wt,xe){if(_e.exportEquals)return wt;let fr=xe.importClause;if(!fr)return wt;let Ue=new Jie;fr.name&&(wt=on(wt,Ue,fr));let In=fr.namedBindings;if(In)switch(In.kind){case 275:wt=on(wt,Ue,In);break;case 276:for(let Hn of In.elements)wt=on(wt,Ue,Hn,!0);break}return wt}function Cs(wt,xe){return _e.exportEquals?wt:on(wt,new Jie,xe)}function Tu(wt,xe){return Wr(wt,xe.declarationList,!1)}function Wr(wt,xe,fr){if(_e.exportEquals)return wt;for(let Ue of xe.declarations)wt=Wn(wt,Ue,fr);return wt}function Wn(wt,xe,fr){if(_e.exportEquals)return wt;if(Nu(xe.name))for(let Ue of xe.name.elements)Ep(Ue)||(wt=Wn(wt,Ue,fr));else!Gp(xe.name)&&(!nc(xe)||xe.initializer||fr)&&(wt=on(wt,new Jie,xe));return wt}function pt(wt,xe){if(_e.exportEquals)return wt;let fr=new Jie;if(Ga(xe,32)){let Ue=Ga(xe,2048)?g.createIdentifier("default"):g.getDeclarationName(xe);wt=st(wt,fr,Ue,g.getLocalName(xe),xe)}return xe.name&&(wt=on(wt,fr,xe)),wt}function on(wt,xe,fr,Ue){let In=g.getDeclarationName(fr),Hn=_e.exportSpecifiers.get(In);if(Hn)for(let Mt of Hn)wt=st(wt,xe,Mt.name,In,Mt.name,void 0,Ue);return wt}function st(wt,xe,fr,Ue,In,Hn,Mt){if(fr.kind!==11){if(xe.has(fr))return wt;xe.set(fr,!0)}return wt=Ft(wt,Zr(fr,Ue,In,Hn,Mt)),wt}function nr(){let wt=g.createExpressionStatement(g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteral("__esModule"),g.createObjectLiteralExpression([g.createPropertyAssignment("value",g.createTrue())])]));return ti(wt,2097152),wt}function Zr(wt,xe,fr,Ue,In){let Hn=gn(g.createExpressionStatement(Kr(wt,xe,void 0,In)),fr);return x0(Hn),Ue||ti(Hn,3072),Hn}function Kr(wt,xe,fr,Ue){return gn(Ue?g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteralFromNode(wt),g.createObjectLiteralExpression([g.createPropertyAssignment("enumerable",g.createTrue()),g.createPropertyAssignment("get",g.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,g.createBlock([g.createReturnStatement(xe)])))])]):g.createAssignment(wt.kind===11?g.createElementAccessExpression(g.createIdentifier("exports"),g.cloneNode(wt)):g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(wt)),xe),fr)}function Dn(wt){switch(wt.kind){case 95:case 90:return}return wt}function hr(wt,xe,fr){xe.kind===308?(Ie=xe,_e=ge[Hy(Ie)],re(wt,xe,fr),Ie=void 0,_e=void 0):re(wt,xe,fr)}function En(wt,xe){return xe=ee(wt,xe),xe.id&&Ne[xe.id]?xe:wt===1?Gi(xe):u0(xe)?Ni(xe):xe}function Ni(wt){let xe=wt.name,fr=ds(xe);if(fr!==xe){if(wt.objectAssignmentInitializer){let Ue=g.createAssignment(fr,wt.objectAssignmentInitializer);return gn(g.createPropertyAssignment(xe,Ue),wt)}return gn(g.createPropertyAssignment(xe,fr),wt)}return wt}function Gi(wt){switch(wt.kind){case 80:return ds(wt);case 214:return nn(wt);case 216:return bn(wt);case 227:return Ht(wt)}return wt}function nn(wt){if(Ir(wt.expression)){let xe=ds(wt.expression);if(Ne[id(xe)]=!0,!Ir(xe)&&!(rA(wt.expression)&8192))return W3(g.updateCallExpression(wt,xe,void 0,wt.arguments),16)}return wt}function bn(wt){if(Ir(wt.tag)){let xe=ds(wt.tag);if(Ne[id(xe)]=!0,!Ir(xe)&&!(rA(wt.tag)&8192))return W3(g.updateTaggedTemplateExpression(wt,xe,void 0,wt.template),16)}return wt}function ds(wt){var xe,fr;if(rA(wt)&8192){let Ue=kEe(Ie);return Ue?g.createPropertyAccessExpression(Ue,wt):wt}else if(!(Gp(wt)&&!(wt.emitNode.autoGenerate.flags&64))&&!QF(wt)){let Ue=T.getReferencedExportContainer(wt,w9e(wt));if(Ue&&Ue.kind===308)return gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(wt)),wt);let In=T.getReferencedImportDeclaration(wt);if(In){if(Yw(In))return gn(g.createPropertyAccessExpression(g.getGeneratedNameForNode(In.parent),g.createIdentifier("default")),wt);if(dy(In)){let Hn=In.propertyName||In.name,Mt=g.getGeneratedNameForNode(((fr=(xe=In.parent)==null?void 0:xe.parent)==null?void 0:fr.parent)||In);return gn(Hn.kind===11?g.createElementAccessExpression(Mt,g.cloneNode(Hn)):g.createPropertyAccessExpression(Mt,g.cloneNode(Hn)),wt)}}}return wt}function Ht(wt){if(ek(wt.operatorToken.kind)&&Ir(wt.left)&&(!Gp(wt.left)||wY(wt.left))&&!QF(wt.left)){let xe=cn(wt.left);if(xe){let fr=wt;for(let Ue of xe)Ne[id(fr)]=!0,fr=Kr(Ue,fr,wt);return fr}}return wt}function cn(wt){if(Gp(wt)){if(wY(wt)){let xe=_e?.exportSpecifiers.get(wt);if(xe){let fr=[];for(let Ue of xe)fr.push(Ue.name);return fr}}}else{let xe=T.getReferencedImportDeclaration(wt);if(xe)return _e?.exportedBindings[Hy(xe)];let fr=new Set,Ue=T.getReferencedValueDeclarations(wt);if(Ue){for(let In of Ue){let Hn=_e?.exportedBindings[Hy(In)];if(Hn)for(let Mt of Hn)fr.add(Mt)}if(fr.size)return Do(fr)}}}}var DBs={name:"typescript:dynamicimport-sync-require",scoped:!0,text:` + var __syncRequire = typeof module === "object" && typeof module.exports === "object";`};function D3t(s){let{factory:c,startLexicalEnvironment:g,endLexicalEnvironment:d,hoistVariableDeclaration:h}=s,_=s.getCompilerOptions(),S=s.getEmitResolver(),R=s.getEmitHost(),T=s.onSubstituteNode,O=s.onEmitNode;s.onSubstituteNode=nr,s.onEmitNode=st,s.enableSubstitution(80),s.enableSubstitution(305),s.enableSubstitution(227),s.enableSubstitution(237),s.enableEmitNotification(308);let V=[],M=[],ee=[],re=[],ge,Ie,_e,Ee,Ne,Te,Ze;return cR(s,Pe);function Pe(Ht){if(Ht.isDeclarationFile||!(_3(Ht,_)||Ht.transformFlags&8388608))return Ht;let cn=Hy(Ht);ge=Ht,Te=Ht,Ie=V[cn]=itt(s,Ht),_e=c.createUniqueName("exports"),M[cn]=_e,Ee=re[cn]=c.createUniqueName("context");let wt=Ke(Ie.externalImports),xe=et(Ht,wt),fr=c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,_e),c.createParameterDeclaration(void 0,void 0,Ee)],void 0,xe),Ue=xEe(c,Ht,R,_),In=c.createArrayLiteralExpression(lt(wt,Mt=>Mt.name)),Hn=ti(c.updateSourceFile(Ht,gn(c.createNodeArray([c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("System"),"register"),void 0,Ue?[Ue,In,fr]:[In,fr]))]),Ht.statements)),2048);return _.outFile||a9e(Hn,xe,Mt=>!Mt.scoped),Ze&&(ee[cn]=Ze,Ze=void 0),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Hn}function Ke(Ht){let cn=new Map,wt=[];for(let xe of Ht){let fr=Vz(c,xe,ge,R,S,_);if(fr){let Ue=fr.text,In=cn.get(Ue);In!==void 0?wt[In].externalImports.push(xe):(cn.set(Ue,wt.length),wt.push({name:fr,externalImports:[xe]}))}}return wt}function et(Ht,cn){let wt=[];g();let xe=u_(_,"alwaysStrict")||Lm(ge),fr=c.copyPrologue(Ht.statements,wt,xe,Qe);wt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration("__moduleName",void 0,void 0,c.createLogicalAnd(Ee,c.createPropertyAccessExpression(Ee,"id")))]))),Mr(Ie.externalHelpersImportDeclaration,Qe,Lc);let Ue=Os(Ht.statements,Qe,Lc,fr);Pr(wt,Ne),Nw(wt,d());let In=Ye(wt),Hn=Ht.transformFlags&2097152?c.createModifiersFromModifierFlags(1024):void 0,Mt=c.createObjectLiteralExpression([c.createPropertyAssignment("setters",at(In,cn)),c.createPropertyAssignment("execute",c.createFunctionExpression(Hn,void 0,void 0,void 0,[],void 0,c.createBlock(Ue,!0)))],!0);return wt.push(c.createReturnStatement(Mt)),c.createBlock(wt,!0)}function Ye(Ht){if(!Ie.hasExportStarsToExportValues)return;if(!zt(Ie.exportedNames)&&Ie.exportedFunctions.size===0&&Ie.exportSpecifiers.size===0){let fr=!1;for(let Ue of Ie.externalImports)if(Ue.kind===279&&Ue.exportClause){fr=!0;break}if(!fr){let Ue=Tt(void 0);return Ht.push(Ue),Ue.name}}let cn=[];if(Ie.exportedNames)for(let fr of Ie.exportedNames)pv(fr)||cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr),c.createTrue()));for(let fr of Ie.exportedFunctions)Ga(fr,2048)||(pe.assert(!!fr.name),cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr.name),c.createTrue())));let wt=c.createUniqueName("exportedNames");Ht.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(wt,void 0,void 0,c.createObjectLiteralExpression(cn,!0))])));let xe=Tt(wt);return Ht.push(xe),xe.name}function Tt(Ht){let cn=c.createUniqueName("exportStar"),wt=c.createIdentifier("m"),xe=c.createIdentifier("n"),fr=c.createIdentifier("exports"),Ue=c.createStrictInequality(xe,c.createStringLiteral("default"));return Ht&&(Ue=c.createLogicalAnd(Ue,c.createLogicalNot(c.createCallExpression(c.createPropertyAccessExpression(Ht,"hasOwnProperty"),void 0,[xe])))),c.createFunctionDeclaration(void 0,void 0,cn,void 0,[c.createParameterDeclaration(void 0,void 0,wt)],void 0,c.createBlock([c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(fr,void 0,void 0,c.createObjectLiteralExpression([]))])),c.createForInStatement(c.createVariableDeclarationList([c.createVariableDeclaration(xe)]),wt,c.createBlock([ti(c.createIfStatement(Ue,c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(fr,xe),c.createElementAccessExpression(wt,xe)))),1)])),c.createExpressionStatement(c.createCallExpression(_e,void 0,[fr]))],!0))}function at(Ht,cn){let wt=[];for(let xe of cn){let fr=F(xe.externalImports,Hn=>Zie(c,Hn,ge)),Ue=fr?c.getGeneratedNameForNode(fr):c.createUniqueName(""),In=[];for(let Hn of xe.externalImports){let Mt=Zie(c,Hn,ge);switch(Hn.kind){case 273:if(!Hn.importClause)break;case 272:pe.assert(Mt!==void 0),In.push(c.createExpressionStatement(c.createAssignment(Mt,Ue))),Ga(Hn,32)&&In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(Vo(Mt)),Ue])));break;case 279:if(pe.assert(Mt!==void 0),Hn.exportClause)if(Ev(Hn.exportClause)){let $r=[];for(let ri of Hn.exportClause.elements)$r.push(c.createPropertyAssignment(c.createStringLiteral(KD(ri.name)),c.createElementAccessExpression(Ue,c.createStringLiteral(KD(ri.propertyName||ri.name)))));In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createObjectLiteralExpression($r,!0)])))}else In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(KD(Hn.exportClause.name)),Ue])));else In.push(c.createExpressionStatement(c.createCallExpression(Ht,void 0,[Ue])));break}}wt.push(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ue)],void 0,c.createBlock(In,!0)))}return c.createArrayLiteralExpression(wt,!0)}function Qe(Ht){switch(Ht.kind){case 273:return Ct(Ht);case 272:return yt(Ht);case 279:return mt(Ht);case 278:return Rt(Ht);default:return jn(Ht)}}function Ct(Ht){let cn;return Ht.importClause&&h(Zie(c,Ht,ge)),ac(Gr(cn,Ht))}function mt(Ht){pe.assertIsDefined(Ht)}function yt(Ht){pe.assert(YL(Ht),"import= for internal module references should be handled in an earlier transformer.");let cn;return h(Zie(c,Ht,ge)),ac(dt(cn,Ht))}function Rt(Ht){if(Ht.isExportEquals)return;let cn=Mr(Ht.expression,Pa,un);return Tr(c.createIdentifier("default"),cn,!0)}function Lt(Ht){Ga(Ht,32)?Ne=Ft(Ne,c.updateFunctionDeclaration(Ht,Os(Ht.modifiers,on,fp),Ht.asteriskToken,c.getDeclarationName(Ht,!0,!0),void 0,Os(Ht.parameters,Pa,Si),void 0,Mr(Ht.body,Pa,eg))):Ne=Ft(Ne,_s(Ht,Pa,s)),Ne=ir(Ne,Ht)}function je(Ht){let cn,wt=c.getLocalName(Ht);return h(wt),cn=Ft(cn,gn(c.createExpressionStatement(c.createAssignment(wt,gn(c.createClassExpression(Os(Ht.modifiers,on,fp),Ht.name,void 0,Os(Ht.heritageClauses,Pa,y1),Os(Ht.members,Pa,MI)),Ht))),Ht)),cn=ir(cn,Ht),ac(cn)}function Wt(Ht){if(!Gt(Ht.declarationList))return Mr(Ht,Pa,Lc);let cn;if(iI(Ht.declarationList)||Bd(Ht.declarationList)){let wt=Os(Ht.modifiers,on,fp),xe=[];for(let Ue of Ht.declarationList.declarations)xe.push(c.updateVariableDeclaration(Ue,c.getGeneratedNameForNode(Ue.name),void 0,void 0,it(Ue,!1)));let fr=c.updateVariableDeclarationList(Ht.declarationList,xe);cn=Ft(cn,c.updateVariableStatement(Ht,wt,fr))}else{let wt,xe=Ga(Ht,32);for(let fr of Ht.declarationList.declarations)fr.initializer?wt=Ft(wt,it(fr,xe)):_r(fr);wt&&(cn=Ft(cn,gn(c.createExpressionStatement(c.inlineExpressions(wt)),Ht)))}return cn=pr(cn,Ht,!1),ac(cn)}function _r(Ht){if(Nu(Ht.name))for(let cn of Ht.name.elements)Ep(cn)||_r(cn);else h(c.cloneNode(Ht.name))}function Gt(Ht){return(rA(Ht)&4194304)===0&&(Te.kind===308||(xd(Ht).flags&7)===0)}function it(Ht,cn){let wt=cn?Dt:tr;return Nu(Ht.name)?MU(Ht,Pa,s,0,!1,wt):Ht.initializer?wt(Ht.name,Mr(Ht.initializer,Pa,un)):Ht.name}function Dt(Ht,cn,wt){return ur(Ht,cn,wt,!0)}function tr(Ht,cn,wt){return ur(Ht,cn,wt,!1)}function ur(Ht,cn,wt,xe){return h(c.cloneNode(Ht)),xe?mn(Ht,bn(gn(c.createAssignment(Ht,cn),wt))):bn(gn(c.createAssignment(Ht,cn),wt))}function Gr(Ht,cn){if(Ie.exportEquals)return Ht;let wt=cn.importClause;if(!wt)return Ht;wt.name&&(Ht=qt(Ht,wt));let xe=wt.namedBindings;if(xe)switch(xe.kind){case 275:Ht=qt(Ht,xe);break;case 276:for(let fr of xe.elements)Ht=qt(Ht,fr);break}return Ht}function dt(Ht,cn){return Ie.exportEquals?Ht:qt(Ht,cn)}function pr(Ht,cn,wt){if(Ie.exportEquals)return Ht;for(let xe of cn.declarationList.declarations)(xe.initializer||wt)&&(Ht=ot(Ht,xe,wt));return Ht}function ot(Ht,cn,wt){if(Ie.exportEquals)return Ht;if(Nu(cn.name))for(let xe of cn.name.elements)Ep(xe)||(Ht=ot(Ht,xe,wt));else if(!Gp(cn.name)){let xe;wt&&(Ht=Yt(Ht,cn.name,c.getLocalName(cn)),xe=Vo(cn.name)),Ht=qt(Ht,cn,xe)}return Ht}function ir(Ht,cn){if(Ie.exportEquals)return Ht;let wt;if(Ga(cn,32)){let xe=Ga(cn,2048)?c.createStringLiteral("default"):cn.name;Ht=Yt(Ht,xe,c.getLocalName(cn)),wt=A2(xe)}return cn.name&&(Ht=qt(Ht,cn,wt)),Ht}function qt(Ht,cn,wt){if(Ie.exportEquals)return Ht;let xe=c.getDeclarationName(cn),fr=Ie.exportSpecifiers.get(xe);if(fr)for(let Ue of fr)KD(Ue.name)!==wt&&(Ht=Yt(Ht,Ue.name,xe));return Ht}function Yt(Ht,cn,wt,xe){return Ht=Ft(Ht,Tr(cn,wt,xe)),Ht}function Tr(Ht,cn,wt){let xe=c.createExpressionStatement(mn(Ht,cn));return x0(xe),wt||ti(xe,3072),xe}function mn(Ht,cn){let wt=Ir(Ht)?c.createStringLiteralFromNode(Ht):Ht;return ti(cn,rA(cn)|3072),yh(c.createCallExpression(_e,void 0,[wt,cn]),cn)}function jn(Ht){switch(Ht.kind){case 244:return Wt(Ht);case 263:return Lt(Ht);case 264:return je(Ht);case 249:return Zi(Ht,!0);case 250:return Ns(Ht);case 251:return An(Ht);case 247:return Ic(Ht);case 248:return ou(Ht);case 257:return Zn(Ht);case 255:return ya(Ht);case 246:return Fl(Ht);case 256:return ba(Ht);case 270:return Oo(Ht);case 297:return hc(Ht);case 298:return yr(Ht);case 259:return hn(Ht);case 300:return Pi(Ht);case 242:return co(Ht);default:return Pa(Ht)}}function Zi(Ht,cn){let wt=Te;return Te=Ht,Ht=c.updateForStatement(Ht,Mr(Ht.initializer,cn?ks:$c,yE),Mr(Ht.condition,Pa,un),Mr(Ht.incrementor,$c,un),My(Ht.statement,cn?jn:Pa,s)),Te=wt,Ht}function Ns(Ht){let cn=Te;return Te=Ht,Ht=c.updateForInStatement(Ht,ks(Ht.initializer),Mr(Ht.expression,Pa,un),My(Ht.statement,jn,s)),Te=cn,Ht}function An(Ht){let cn=Te;return Te=Ht,Ht=c.updateForOfStatement(Ht,Ht.awaitModifier,ks(Ht.initializer),Mr(Ht.expression,Pa,un),My(Ht.statement,jn,s)),Te=cn,Ht}function si(Ht){return d_(Ht)&&Gt(Ht)}function ks(Ht){if(si(Ht)){let cn;for(let wt of Ht.declarations)cn=Ft(cn,it(wt,!1)),wt.initializer||_r(wt);return cn?c.inlineExpressions(cn):c.createOmittedExpression()}else return Mr(Ht,$c,yE)}function Ic(Ht){return c.updateDoStatement(Ht,My(Ht.statement,jn,s),Mr(Ht.expression,Pa,un))}function ou(Ht){return c.updateWhileStatement(Ht,Mr(Ht.expression,Pa,un),My(Ht.statement,jn,s))}function Zn(Ht){return c.updateLabeledStatement(Ht,Ht.label,Mr(Ht.statement,jn,Lc,c.liftToBlock)??c.createExpressionStatement(c.createIdentifier("")))}function ya(Ht){return c.updateWithStatement(Ht,Mr(Ht.expression,Pa,un),pe.checkDefined(Mr(Ht.statement,jn,Lc,c.liftToBlock)))}function Fl(Ht){return c.updateIfStatement(Ht,Mr(Ht.expression,Pa,un),Mr(Ht.thenStatement,jn,Lc,c.liftToBlock)??c.createBlock([]),Mr(Ht.elseStatement,jn,Lc,c.liftToBlock))}function ba(Ht){return c.updateSwitchStatement(Ht,Mr(Ht.expression,Pa,un),pe.checkDefined(Mr(Ht.caseBlock,jn,vde)))}function Oo(Ht){let cn=Te;return Te=Ht,Ht=c.updateCaseBlock(Ht,Os(Ht.clauses,jn,HJ)),Te=cn,Ht}function hc(Ht){return c.updateCaseClause(Ht,Mr(Ht.expression,Pa,un),Os(Ht.statements,jn,Lc))}function yr(Ht){return _s(Ht,jn,s)}function hn(Ht){return _s(Ht,jn,s)}function Pi(Ht){let cn=Te;return Te=Ht,Ht=c.updateCatchClause(Ht,Ht.variableDeclaration,pe.checkDefined(Mr(Ht.block,jn,eg))),Te=cn,Ht}function co(Ht){let cn=Te;return Te=Ht,Ht=_s(Ht,jn,s),Te=cn,Ht}function pa(Ht,cn){if(!(Ht.transformFlags&276828160))return Ht;switch(Ht.kind){case 249:return Zi(Ht,!1);case 245:return Qu(Ht);case 218:return Rg(Ht,cn);case 356:return Cs(Ht,cn);case 227:if(Lx(Ht))return Wr(Ht,cn);break;case 214:if(jp(Ht))return Tu(Ht);break;case 225:case 226:return pt(Ht,cn)}return _s(Ht,Pa,s)}function Pa(Ht){return pa(Ht,!1)}function $c(Ht){return pa(Ht,!0)}function Qu(Ht){return c.updateExpressionStatement(Ht,Mr(Ht.expression,$c,un))}function Rg(Ht,cn){return c.updateParenthesizedExpression(Ht,Mr(Ht.expression,cn?$c:Pa,un))}function Cs(Ht,cn){return c.updatePartiallyEmittedExpression(Ht,Mr(Ht.expression,cn?$c:Pa,un))}function Tu(Ht){let cn=Vz(c,Ht,ge,R,S,_),wt=Mr(Nc(Ht.arguments),Pa,un),xe=cn&&(!wt||!Lg(wt)||wt.text!==cn.text)?cn:wt;return c.createCallExpression(c.createPropertyAccessExpression(Ee,c.createIdentifier("import")),void 0,xe?[xe]:[])}function Wr(Ht,cn){return Wn(Ht.left)?MU(Ht,Pa,s,0,!cn):_s(Ht,Pa,s)}function Wn(Ht){if(zm(Ht,!0))return Wn(Ht.left);if(cf(Ht))return Wn(Ht.expression);if(ag(Ht))return zt(Ht.properties,Wn);if(YI(Ht))return zt(Ht.elements,Wn);if(u0(Ht))return Wn(Ht.name);if(Cm(Ht))return Wn(Ht.initializer);if(Ir(Ht)){let cn=S.getReferencedExportContainer(Ht);return cn!==void 0&&cn.kind===308}else return!1}function pt(Ht,cn){if((Ht.operator===46||Ht.operator===47)&&Ir(Ht.operand)&&!Gp(Ht.operand)&&!QF(Ht.operand)&&!Rbe(Ht.operand)){let wt=Gi(Ht.operand);if(wt){let xe,fr=Mr(Ht.operand,Pa,un);D0(Ht)?fr=c.updatePrefixUnaryExpression(Ht,fr):(fr=c.updatePostfixUnaryExpression(Ht,fr),cn||(xe=c.createTempVariable(h),fr=c.createAssignment(xe,fr),gn(fr,Ht)),fr=c.createComma(fr,c.cloneNode(Ht.operand)),gn(fr,Ht));for(let Ue of wt)fr=mn(Ue,bn(fr));return xe&&(fr=c.createComma(fr,xe),gn(fr,Ht)),fr}}return _s(Ht,Pa,s)}function on(Ht){switch(Ht.kind){case 95:case 90:return}return Ht}function st(Ht,cn,wt){if(cn.kind===308){let xe=Hy(cn);ge=cn,Ie=V[xe],_e=M[xe],Ze=ee[xe],Ee=re[xe],Ze&&delete ee[xe],O(Ht,cn,wt),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ze=void 0}else O(Ht,cn,wt)}function nr(Ht,cn){return cn=T(Ht,cn),ds(cn)?cn:Ht===1?Dn(cn):Ht===4?Zr(cn):cn}function Zr(Ht){switch(Ht.kind){case 305:return Kr(Ht)}return Ht}function Kr(Ht){var cn,wt;let xe=Ht.name;if(!Gp(xe)&&!QF(xe)){let fr=S.getReferencedImportDeclaration(xe);if(fr){if(Yw(fr))return gn(c.createPropertyAssignment(c.cloneNode(xe),c.createPropertyAccessExpression(c.getGeneratedNameForNode(fr.parent),c.createIdentifier("default"))),Ht);if(dy(fr)){let Ue=fr.propertyName||fr.name,In=c.getGeneratedNameForNode(((wt=(cn=fr.parent)==null?void 0:cn.parent)==null?void 0:wt.parent)||fr);return gn(c.createPropertyAssignment(c.cloneNode(xe),Ue.kind===11?c.createElementAccessExpression(In,c.cloneNode(Ue)):c.createPropertyAccessExpression(In,c.cloneNode(Ue))),Ht)}}}return Ht}function Dn(Ht){switch(Ht.kind){case 80:return hr(Ht);case 227:return En(Ht);case 237:return Ni(Ht)}return Ht}function hr(Ht){var cn,wt;if(rA(Ht)&8192){let xe=kEe(ge);return xe?c.createPropertyAccessExpression(xe,Ht):Ht}if(!Gp(Ht)&&!QF(Ht)){let xe=S.getReferencedImportDeclaration(Ht);if(xe){if(Yw(xe))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(xe.parent),c.createIdentifier("default")),Ht);if(dy(xe)){let fr=xe.propertyName||xe.name,Ue=c.getGeneratedNameForNode(((wt=(cn=xe.parent)==null?void 0:cn.parent)==null?void 0:wt.parent)||xe);return gn(fr.kind===11?c.createElementAccessExpression(Ue,c.cloneNode(fr)):c.createPropertyAccessExpression(Ue,c.cloneNode(fr)),Ht)}}}return Ht}function En(Ht){if(ek(Ht.operatorToken.kind)&&Ir(Ht.left)&&(!Gp(Ht.left)||wY(Ht.left))&&!QF(Ht.left)){let cn=Gi(Ht.left);if(cn){let wt=Ht;for(let xe of cn)wt=mn(xe,bn(wt));return wt}}return Ht}function Ni(Ht){return fv(Ht)?c.createPropertyAccessExpression(Ee,c.createIdentifier("meta")):Ht}function Gi(Ht){let cn,wt=nn(Ht);if(wt){let xe=S.getReferencedExportContainer(Ht,!1);xe&&xe.kind===308&&(cn=Ft(cn,c.getDeclarationName(wt))),cn=Pr(cn,Ie?.exportedBindings[Hy(wt)])}else if(Gp(Ht)&&wY(Ht)){let xe=Ie?.exportSpecifiers.get(Ht);if(xe){let fr=[];for(let Ue of xe)fr.push(Ue.name);return fr}}return cn}function nn(Ht){if(!Gp(Ht)){let cn=S.getReferencedImportDeclaration(Ht);if(cn)return cn;let wt=S.getReferencedValueDeclaration(Ht);if(wt&&Ie?.exportedBindings[Hy(wt)])return wt;let xe=S.getReferencedValueDeclarations(Ht);if(xe){for(let fr of xe)if(fr!==wt&&Ie?.exportedBindings[Hy(fr)])return fr}return wt}}function bn(Ht){return Ze===void 0&&(Ze=[]),Ze[id(Ht)]=!0,Ht}function ds(Ht){return Ze&&Ht.id&&Ze[Ht.id]}}function dtt(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getEmitHost(),h=s.getEmitResolver(),_=s.getCompilerOptions(),S=Hg(_),R=s.onEmitNode,T=s.onSubstituteNode;s.onEmitNode=Ye,s.onSubstituteNode=Tt,s.enableEmitNotification(308),s.enableSubstitution(80);let O=new Set,V,M,ee,re;return cR(s,ge);function ge(Qe){if(Qe.isDeclarationFile)return Qe;if(Lm(Qe)||uS(_)){ee=Qe,re=void 0,_.rewriteRelativeImportExtensions&&(ee.flags&4194304||Bo(Qe))&&pie(Qe,!1,!1,mt=>{(!_A(mt.arguments[0])||vne(mt.arguments[0].text,_))&&(V=Ft(V,mt))});let Ct=Ie(Qe);return EN(Ct,s.readEmitHelpers()),ee=void 0,re&&(Ct=c.updateSourceFile(Ct,gn(c.createNodeArray(tne(Ct.statements.slice(),re)),Ct.statements))),!Lm(Qe)||a0(_)===200||zt(Ct.statements,QT)?Ct:c.updateSourceFile(Ct,gn(c.createNodeArray([...Ct.statements,REe(c)]),Ct.statements))}return Qe}function Ie(Qe){let Ct=j$e(c,g(),Qe,_);if(Ct){let mt=[],yt=c.copyPrologue(Qe.statements,mt);return Pr(mt,Pde([Ct],_e,Lc)),Pr(mt,Os(Qe.statements,_e,Lc,yt)),c.updateSourceFile(Qe,gn(c.createNodeArray(mt),Qe.statements))}else return _s(Qe,_e,s)}function _e(Qe){switch(Qe.kind){case 272:return a0(_)>=100?Ze(Qe):void 0;case 278:return Ke(Qe);case 279:return et(Qe);case 273:return Ee(Qe);case 214:if(Qe===V?.[0])return Ne(V.shift());default:if(V?.length&&gy(Qe,V[0]))return _s(Qe,_e,s)}return Qe}function Ee(Qe){if(!_.rewriteRelativeImportExtensions)return Qe;let Ct=Qz(Qe.moduleSpecifier,_);return Ct===Qe.moduleSpecifier?Qe:c.updateImportDeclaration(Qe,Qe.modifiers,Qe.importClause,Ct,Qe.attributes)}function Ne(Qe){return c.updateCallExpression(Qe,Qe.expression,Qe.typeArguments,[_A(Qe.arguments[0])?Qz(Qe.arguments[0],_):g().createRewriteRelativeImportExtensionsHelper(Qe.arguments[0]),...Qe.arguments.slice(1)])}function Te(Qe){let Ct=Vz(c,Qe,pe.checkDefined(ee),d,h,_),mt=[];if(Ct&&mt.push(Qz(Ct,_)),a0(_)===200)return c.createCallExpression(c.createIdentifier("require"),void 0,mt);if(!re){let Rt=c.createUniqueName("_createRequire",48),Lt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports([c.createImportSpecifier(!1,c.createIdentifier("createRequire"),Rt)])),c.createStringLiteral("module"),void 0),je=c.createUniqueName("__require",48),Wt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(je,void 0,void 0,c.createCallExpression(c.cloneNode(Rt),void 0,[c.createPropertyAccessExpression(c.createMetaProperty(102,c.createIdentifier("meta")),c.createIdentifier("url"))]))],S>=2?2:0));re=[Lt,Wt]}let yt=re[1].declarationList.declarations[0].name;return pe.assertNode(yt,Ir),c.createCallExpression(c.cloneNode(yt),void 0,mt)}function Ze(Qe){pe.assert(YL(Qe),"import= for internal module references should be handled in an earlier transformer.");let Ct;return Ct=Ft(Ct,ua(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.cloneNode(Qe.name),void 0,void 0,Te(Qe))],S>=2?2:0)),Qe),Qe)),Ct=Pe(Ct,Qe),ac(Ct)}function Pe(Qe,Ct){return Ga(Ct,32)&&(Qe=Ft(Qe,c.createExportDeclaration(void 0,Ct.isTypeOnly,c.createNamedExports([c.createExportSpecifier(!1,void 0,Vo(Ct.name))])))),Qe}function Ke(Qe){return Qe.isExportEquals?a0(_)===200?ua(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createIdentifier("module"),"exports"),Qe.expression)),Qe):void 0:Qe}function et(Qe){let Ct=Qz(Qe.moduleSpecifier,_);if(_.module!==void 0&&_.module>5||!Qe.exportClause||!ak(Qe.exportClause)||!Qe.moduleSpecifier)return!Qe.moduleSpecifier||Ct===Qe.moduleSpecifier?Qe:c.updateExportDeclaration(Qe,Qe.modifiers,Qe.isTypeOnly,Qe.exportClause,Ct,Qe.attributes);let mt=Qe.exportClause.name,yt=c.getGeneratedNameForNode(mt),Rt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamespaceImport(yt)),Ct,Qe.attributes);ua(Rt,Qe.exportClause);let Lt=WY(Qe)?c.createExportDefault(yt):c.createExportDeclaration(void 0,!1,c.createNamedExports([c.createExportSpecifier(!1,yt,mt)]));return ua(Lt,Qe),[Rt,Lt]}function Ye(Qe,Ct,mt){cl(Ct)?((Lm(Ct)||uS(_))&&_.importHelpers&&(M=new Map),ee=Ct,R(Qe,Ct,mt),ee=void 0,M=void 0):R(Qe,Ct,mt)}function Tt(Qe,Ct){return Ct=T(Qe,Ct),Ct.id&&O.has(Ct.id)?Ct:Ir(Ct)&&rA(Ct)&8192?at(Ct):Ct}function at(Qe){let Ct=ee&&kEe(ee);if(Ct)return O.add(id(Qe)),c.createPropertyAccessExpression(Ct,Qe);if(M){let mt=Vo(Qe),yt=M.get(mt);return yt||M.set(mt,yt=c.createUniqueName(mt,48)),yt}return Qe}}function k3t(s){let c=s.onSubstituteNode,g=s.onEmitNode,d=dtt(s),h=s.onSubstituteNode,_=s.onEmitNode;s.onSubstituteNode=c,s.onEmitNode=g;let S=Att(s),R=s.onSubstituteNode,T=s.onEmitNode,O=Ee=>s.getEmitHost().getEmitModuleFormatOfFile(Ee);s.onSubstituteNode=M,s.onEmitNode=ee,s.enableSubstitution(308),s.enableEmitNotification(308);let V;return Ie;function M(Ee,Ne){return cl(Ne)?(V=Ne,c(Ee,Ne)):V?O(V)>=5?h(Ee,Ne):R(Ee,Ne):c(Ee,Ne)}function ee(Ee,Ne,Te){return cl(Ne)&&(V=Ne),V?O(V)>=5?_(Ee,Ne,Te):T(Ee,Ne,Te):g(Ee,Ne,Te)}function re(Ee){return O(Ee)>=5?d:S}function ge(Ee){if(Ee.isDeclarationFile)return Ee;V=Ee;let Ne=re(Ee)(Ee);return V=void 0,pe.assert(cl(Ne)),Ne}function Ie(Ee){return Ee.kind===308?ge(Ee):_e(Ee)}function _e(Ee){return s.factory.createBundle(lt(Ee.sourceFiles,ge))}}function i1e(s){return nc(s)||pi(s)||ss(s)||mg(s)||dv(s)||TB(s)||im(s)||Tg(s)||gu(s)||Il(s)||ah(s)||Si(s)||Ds(s)||A_(s)||Zm(s)||PB(s)||Tc(s)||N0(s)||jo(s)||Qg(s)||po(s)||lS(s)}function x3t(s){if(dv(s)||TB(s))return c;return Il(s)||gu(s)?d:r5(s);function c(_){let S=g(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function g(_){return lg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function d(_){let S=h(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function h(_){return lg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_method_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function r5(s){if(nc(s)||pi(s)||ss(s)||jo(s)||Qg(s)||po(s)||mg(s)||Tc(s))return g;return dv(s)||TB(s)?d:im(s)||Tg(s)||gu(s)||Il(s)||ah(s)||N0(s)?h:Si(s)?We(s,s.parent)&&Ga(s.parent,2)?g:_:Ds(s)?R:A_(s)?T:Zm(s)?O:PB(s)||lS(s)?V:pe.assertNever(s,`Attempted to set a declaration diagnostic context for unhandled node kind: ${pe.formatSyntaxKind(s.kind)}`);function c(M){if(s.kind===261||s.kind===209)return M.errorModuleName?M.accessibility===2?Z.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Z.Exported_variable_0_has_or_is_using_private_name_1;if(s.kind===173||s.kind===212||s.kind===213||s.kind===227||s.kind===172||s.kind===170&&Ga(s.parent,2))return lg(s)?M.errorModuleName?M.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264||s.kind===170?M.errorModuleName?M.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function g(M){let ee=c(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function d(M){let ee;return s.kind===179?lg(s)?ee=M.errorModuleName?Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:lg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:ee,errorNode:s.name,typeName:s.name}}function h(M){let ee;switch(s.kind){case 181:ee=M.errorModuleName?Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 180:ee=M.errorModuleName?Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 182:ee=M.errorModuleName?Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 175:case 174:lg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:s.parent.kind===264?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:ee=M.errorModuleName?Z.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 263:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return pe.fail("This is unknown kind for signature: "+s.kind)}return{diagnosticMessage:ee,errorNode:s.name||s}}function _(M){let ee=S(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function S(M){switch(s.parent.kind){case 177:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 181:case 186:return M.errorModuleName?Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 180:return M.errorModuleName?Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 182:return M.errorModuleName?Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 175:case 174:return lg(s.parent)?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 263:case 185:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 179:case 178:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return pe.fail(`Unknown parent for parameter: ${pe.formatSyntaxKind(s.parent.kind)}`)}}function R(){let M;switch(s.parent.kind){case 264:M=Z.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 265:M=Z.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 201:M=Z.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 186:case 181:M=Z.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 180:M=Z.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 174:lg(s.parent)?M=Z.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M=Z.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M=Z.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 185:case 263:M=Z.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 196:M=Z.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 266:M=Z.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return pe.fail("This is unknown parent for type parameter: "+s.parent.kind)}return{diagnosticMessage:M,errorNode:s,typeName:s.name}}function T(){let M;return mm(s.parent.parent)?M=y1(s.parent)&&s.parent.token===119?Z.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:s.parent.parent.name?Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Z.extends_clause_of_exported_class_has_or_is_using_private_name_0:M=Z.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:M,errorNode:s,typeName:fl(s.parent.parent)}}function O(){return{diagnosticMessage:Z.Import_declaration_0_is_using_private_name_1,errorNode:s,typeName:s.name}}function V(M){return{diagnosticMessage:M.errorModuleName?Z.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Z.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:lS(s)?pe.checkDefined(s.typeExpression):s.type,typeName:lS(s)?fl(s):s.name}}}function G3t(s){let c={220:Z.Add_a_return_type_to_the_function_expression,219:Z.Add_a_return_type_to_the_function_expression,175:Z.Add_a_return_type_to_the_method,178:Z.Add_a_return_type_to_the_get_accessor_declaration,179:Z.Add_a_type_to_parameter_of_the_set_accessor_declaration,263:Z.Add_a_return_type_to_the_function_declaration,181:Z.Add_a_return_type_to_the_function_declaration,170:Z.Add_a_type_annotation_to_the_parameter_0,261:Z.Add_a_type_annotation_to_the_variable_0,173:Z.Add_a_type_annotation_to_the_property_0,172:Z.Add_a_type_annotation_to_the_property_0,278:Z.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},g={219:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,263:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,220:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,175:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,181:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,179:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,170:Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,261:Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,173:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,168:Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,306:Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,305:Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,210:Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,278:Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations,231:Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return d;function d(_e){if(ji(_e,y1))return ho(_e,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((xw(_e)||Pw(_e.parent))&&(mC(_e)||Hd(_e)))return ge(_e);switch(pe.type(_e),_e.kind){case 178:case 179:return _(_e);case 168:case 305:case 306:return R(_e);case 210:case 231:return T(_e);case 175:case 181:case 219:case 220:case 263:return O(_e);case 209:return V(_e);case 173:case 261:return M(_e);case 170:return ee(_e);case 304:return Ie(_e.initializer);case 232:return re(_e);default:return Ie(_e)}}function h(_e){let Ee=ji(_e,Ne=>yf(Ne)||Lc(Ne)||nc(Ne)||pi(Ne)||Si(Ne));if(Ee)return yf(Ee)?Ee:_2(Ee)?ji(Ee,Ne=>Gd(Ne)&&!Tc(Ne)):Lc(Ee)?void 0:Ee}function _(_e){let{getAccessor:Ee,setAccessor:Ne}=FW(_e.symbol.declarations,_e),Te=(dv(_e)?_e.parameters[0]:_e)??_e,Ze=ho(Te,g[_e.kind]);return Ne&&ug(Ze,ho(Ne,c[Ne.kind])),Ee&&ug(Ze,ho(Ee,c[Ee.kind])),Ze}function S(_e,Ee){let Ne=h(_e);if(Ne){let Te=yf(Ne)||!Ne.name?"":Fp(Ne.name,!1);ug(Ee,ho(Ne,c[Ne.kind],Te))}return Ee}function R(_e){let Ee=ho(_e,g[_e.kind]);return S(_e,Ee),Ee}function T(_e){let Ee=ho(_e,g[_e.kind]);return S(_e,Ee),Ee}function O(_e){let Ee=ho(_e,g[_e.kind]);return S(_e,Ee),ug(Ee,ho(_e,c[_e.kind])),Ee}function V(_e){return ho(_e,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}function M(_e){let Ee=ho(_e,g[_e.kind]),Ne=Fp(_e.name,!1);return ug(Ee,ho(_e,c[_e.kind],Ne)),Ee}function ee(_e){if(dv(_e.parent))return _(_e.parent);let Ee=s.requiresAddingImplicitUndefined(_e,_e.parent);if(!Ee&&_e.initializer)return Ie(_e.initializer);let Ne=Ee?Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:g[_e.kind],Te=ho(_e,Ne),Ze=Fp(_e.name,!1);return ug(Te,ho(_e,c[_e.kind],Ze)),Te}function re(_e){return Ie(_e,Z.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}function ge(_e){let Ee=ho(_e,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,Fp(_e,!1));return S(_e,Ee),Ee}function Ie(_e,Ee){let Ne=h(_e),Te;if(Ne){let Ze=yf(Ne)||!Ne.name?"":Fp(Ne.name,!1),Pe=ji(_e.parent,Ke=>yf(Ke)||(Lc(Ke)?"quit":!dI(Ke)&&!OF(Ke)&&!Xd(Ke)));Ne===Pe?(Te=ho(_e,Ee??g[Ne.kind]),ug(Te,ho(Ne,c[Ne.kind],Ze))):(Te=ho(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations),ug(Te,ho(Ne,c[Ne.kind],Ze)),ug(Te,ho(_e,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else Te=ho(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return Te}}function F3t(s,c,g){let d=s.getCompilerOptions(),h=Le(vAe(s,g),gAe);return k(h,g)?c1e(c,s,me,d,[g],[ptt],!1).diagnostics:void 0}var s1e=531469,o1e=8;function ptt(s){let c=()=>pe.fail("Diagnostic emitted without context"),g=c,d=!0,h=!1,_=!1,S=!1,R=!1,T,O,V,M,{factory:ee}=s,re=s.getEmitHost(),ge=()=>{},Ie={trackSymbol:yt,reportInaccessibleThisError:_r,reportInaccessibleUniqueSymbolError:je,reportCyclicStructureError:Wt,reportPrivateInBaseOfClassExpression:Rt,reportLikelyUnsafeImportRequiredError:Gt,reportTruncationError:it,moduleResolverHost:re,reportNonlocalAugmentation:Dt,reportNonSerializableProperty:tr,reportInferenceFallback:Ct,pushErrorFallbackNode(pt){let on=Ee,st=ge;ge=()=>{ge=st,Ee=on},Ee=pt},popErrorFallbackNode(){ge()}},_e,Ee,Ne,Te,Ze,Pe,Ke=s.getEmitResolver(),et=s.getCompilerOptions(),Ye=G3t(Ke),{stripInternal:Tt,isolatedDeclarations:at}=et;return Gr;function Qe(pt){Ke.getPropertiesOfContainerFunction(pt).forEach(on=>{if(cQ(on.valueDeclaration)){let st=po(on.valueDeclaration)?on.valueDeclaration.left:on.valueDeclaration;s.addDiagnostic(ho(st,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}})}function Ct(pt){!at||o0(Ne)||ms(pt)===Ne&&(nc(pt)&&Ke.isExpandoFunctionDeclaration(pt)?Qe(pt):s.addDiagnostic(Ye(pt)))}function mt(pt){if(pt.accessibility===0){if(pt.aliasesToMakeVisible)if(!O)O=pt.aliasesToMakeVisible;else for(let on of pt.aliasesToMakeVisible)Qi(O,on)}else if(pt.accessibility!==3){let on=g(pt);if(on)return on.typeName?s.addDiagnostic(ho(pt.errorNode||on.errorNode,on.diagnosticMessage,Fp(on.typeName),pt.errorSymbolName,pt.errorModuleName)):s.addDiagnostic(ho(pt.errorNode||on.errorNode,on.diagnosticMessage,pt.errorSymbolName,pt.errorModuleName)),!0}return!1}function yt(pt,on,st){return pt.flags&262144?!1:mt(Ke.isSymbolAccessible(pt,on,st,!0))}function Rt(pt){(_e||Ee)&&s.addDiagnostic(ug(ho(_e||Ee,Z.Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected,pt),...nc((_e||Ee).parent)?[ho(_e||Ee,Z.Add_a_type_annotation_to_the_variable_0,Lt())]:[]))}function Lt(){return _e?Md(_e):Ee&&fl(Ee)?Md(fl(Ee)):Ee&&yf(Ee)?Ee.isExportEquals?"export=":"default":"(Missing)"}function je(){(_e||Ee)&&s.addDiagnostic(ho(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"unique symbol"))}function Wt(){(_e||Ee)&&s.addDiagnostic(ho(_e||Ee,Z.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,Lt()))}function _r(){(_e||Ee)&&s.addDiagnostic(ho(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"this"))}function Gt(pt){(_e||Ee)&&s.addDiagnostic(ho(_e||Ee,Z.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,Lt(),pt))}function it(){(_e||Ee)&&s.addDiagnostic(ho(_e||Ee,Z.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function Dt(pt,on,st){var nr;let Zr=(nr=on.declarations)==null?void 0:nr.find(Dn=>ms(Dn)===pt),Kr=Le(st.declarations,Dn=>ms(Dn)!==pt);if(Zr&&Kr)for(let Dn of Kr)s.addDiagnostic(ug(ho(Dn,Z.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),ho(Zr,Z.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function tr(pt){(_e||Ee)&&s.addDiagnostic(ho(_e||Ee,Z.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,pt))}function ur(pt){let on=g;g=nr=>nr.errorNode&&i1e(nr.errorNode)?r5(nr.errorNode)(nr):{diagnosticMessage:nr.errorModuleName?Z.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Z.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:nr.errorNode||pt};let st=Ke.getDeclarationStatementsForSourceFile(pt,s1e,o1e,Ie);return g=on,st}function Gr(pt){if(pt.kind===308&&pt.isDeclarationFile)return pt;if(pt.kind===309){h=!0,Te=[],Ze=[],Pe=[];let En=!1,Ni=ee.createBundle(lt(pt.sourceFiles,nn=>{if(nn.isDeclarationFile)return;if(En=En||nn.hasNoDefaultLib,Ne=nn,T=nn,O=void 0,M=!1,V=new Map,g=c,S=!1,R=!1,nr(nn),Sl(nn)||Zu(nn)){_=!1,d=!1;let ds=o0(nn)?ee.createNodeArray(ur(nn)):Os(nn.statements,hc,Lc);return ee.updateSourceFile(nn,[ee.createModuleDeclaration([ee.createModifier(138)],ee.createStringLiteral(j7(s.getEmitHost(),nn)),ee.createModuleBlock(gn(ee.createNodeArray(Fl(ds)),nn.statements)))],!0,[],[],!1,[])}d=!0;let bn=o0(nn)?ee.createNodeArray(ur(nn)):Os(nn.statements,hc,Lc);return ee.updateSourceFile(nn,Fl(bn),!0,[],[],!1,[])})),Gi=Mo(xp(Kde(pt,re,!0).declarationFilePath));return Ni.syntheticFileReferences=hr(Gi),Ni.syntheticTypeReferences=Kr(),Ni.syntheticLibReferences=Dn(),Ni.hasNoDefaultLib=En,Ni}d=!0,S=!1,R=!1,T=pt,Ne=pt,g=c,h=!1,_=!1,M=!1,O=void 0,V=new Map,Te=[],Ze=[],Pe=[],nr(Ne);let on;if(o0(Ne))on=ee.createNodeArray(ur(pt));else{let En=Os(pt.statements,hc,Lc);on=gn(ee.createNodeArray(Fl(En)),pt.statements),Lm(pt)&&(!_||S&&!R)&&(on=gn(ee.createNodeArray([...on,REe(ee)]),on))}let st=Mo(xp(Kde(pt,re,!0).declarationFilePath));return ee.updateSourceFile(pt,on,!0,hr(st),Kr(),pt.hasNoDefaultLib,Dn());function nr(En){Te=Nn(Te,lt(En.referencedFiles,Ni=>[En,Ni])),Ze=Nn(Ze,En.typeReferenceDirectives),Pe=Nn(Pe,En.libReferenceDirectives)}function Zr(En){let Ni={...En};return Ni.pos=-1,Ni.end=-1,Ni}function Kr(){return Xt(Ze,En=>{if(En.preserve)return Zr(En)})}function Dn(){return Xt(Pe,En=>{if(En.preserve)return Zr(En)})}function hr(En){return Xt(Te,([Ni,Gi])=>{if(!Gi.preserve)return;let nn=re.getSourceFileFromReference(Ni,Gi);if(!nn)return;let bn;if(nn.isDeclarationFile)bn=nn.fileName;else{if(h&&k(pt.sourceFiles,nn))return;let cn=Kde(nn,re,!0);bn=cn.declarationFilePath||cn.jsFilePath||nn.fileName}if(!bn)return;let ds=Hf(En,bn,re.getCurrentDirectory(),re.getCanonicalFileName,!1),Ht=Zr(Gi);return Ht.fileName=ds,Ht})}}function dt(pt){if(pt.kind===80)return pt;return pt.kind===208?ee.updateArrayBindingPattern(pt,Os(pt.elements,on,f3)):ee.updateObjectBindingPattern(pt,Os(pt.elements,on,mg));function on(st){return st.kind===233?st:(st.propertyName&&Un(st.propertyName)&&Hd(st.propertyName.expression)&&si(st.propertyName.expression,T),ee.updateBindingElement(st,st.dotDotDotToken,st.propertyName,dt(st.name),void 0))}}function pr(pt,on){let st;M||(st=g,g=r5(pt));let nr=ee.updateParameterDeclaration(pt,xBs(ee,pt,on),pt.dotDotDotToken,dt(pt.name),Ke.isOptionalParameter(pt)?pt.questionToken||ee.createToken(58):void 0,qt(pt,!0),ir(pt));return M||(g=st),nr}function ot(pt){return frn(pt)&&!!pt.initializer&&Ke.isLiteralConstDeclaration(eu(pt))}function ir(pt){if(ot(pt)){let on=Ade(pt.initializer);return vz(on)||Ct(pt),Ke.createLiteralConstValue(eu(pt,frn),Ie)}}function qt(pt,on){if(!on&&Lb(pt,2)||ot(pt))return;if(!yf(pt)&&!mg(pt)&&pt.type&&(!Si(pt)||!Ke.requiresAddingImplicitUndefined(pt,T)))return Mr(pt.type,ba,uc);let st=_e;_e=pt.name;let nr;M||(nr=g,i1e(pt)&&(g=r5(pt)));let Zr;return dde(pt)?Zr=Ke.createTypeOfDeclaration(pt,T,s1e,o1e,Ie):Eu(pt)?Zr=Ke.createReturnTypeOfSignatureDeclaration(pt,T,s1e,o1e,Ie):pe.assertNever(pt),_e=st,M||(g=nr),Zr??ee.createKeywordTypeNode(133)}function Yt(pt){switch(pt=eu(pt),pt.kind){case 263:case 268:case 265:case 264:case 266:case 267:return!Ke.isDeclarationVisible(pt);case 261:return!mn(pt);case 272:case 273:case 279:case 278:return!1;case 176:return!0}return!1}function Tr(pt){var on;if(pt.body)return!0;let st=(on=pt.symbol.declarations)==null?void 0:on.filter(nr=>ah(nr)&&!nr.body);return!st||st.indexOf(pt)===st.length-1}function mn(pt){return Ep(pt)?!1:Nu(pt.name)?zt(pt.name.elements,mn):Ke.isDeclarationVisible(pt)}function jn(pt,on,st){if(Lb(pt,2))return ee.createNodeArray();let nr=lt(on,Zr=>pr(Zr,st));return nr?ee.createNodeArray(nr,on.hasTrailingComma):ee.createNodeArray()}function Zi(pt,on){let st;if(!on){let nr=GW(pt);nr&&(st=[pr(nr)])}if(kg(pt)){let nr;if(!on){let Zr=q7(pt);Zr&&(nr=pr(Zr))}nr||(nr=ee.createParameterDeclaration(void 0,void 0,"value")),st=Ft(st,nr)}return ee.createNodeArray(st||E)}function Ns(pt,on){return Lb(pt,2)?void 0:Os(on,ba,Ds)}function An(pt){return cl(pt)||PB(pt)||Lh(pt)||mm(pt)||p_(pt)||Eu(pt)||N0(pt)||OB(pt)}function si(pt,on){let st=Ke.isEntityNameVisible(pt,on);mt(st)}function ks(pt,on){return jm(pt)&&jm(on)&&(pt.jsDoc=on.jsDoc),yh(pt,LB(on))}function Ic(pt,on){if(on){if(_=_||pt.kind!==268&&pt.kind!==206,_A(on)&&h){let st=jZe(s.getEmitHost(),Ke,pt);if(st)return ee.createStringLiteral(st)}return on}}function ou(pt){if(Ke.isDeclarationVisible(pt))if(pt.moduleReference.kind===284){let on=F7(pt);return ee.updateImportEqualsDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.name,ee.updateExternalModuleReference(pt.moduleReference,Ic(pt,on)))}else{let on=g;return g=r5(pt),si(pt.moduleReference,T),g=on,pt}}function Zn(pt){if(!pt.importClause)return ee.updateImportDeclaration(pt,pt.modifiers,pt.importClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));let on=pt.importClause.phaseModifier===166?void 0:pt.importClause.phaseModifier,st=pt.importClause&&pt.importClause.name&&Ke.isDeclarationVisible(pt.importClause)?pt.importClause.name:void 0;if(!pt.importClause.namedBindings)return st&&ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,st,void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(pt.importClause.namedBindings.kind===275){let Zr=Ke.isDeclarationVisible(pt.importClause.namedBindings)?pt.importClause.namedBindings:void 0;return st||Zr?ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,st,Zr),Ic(pt,pt.moduleSpecifier),ya(pt.attributes)):void 0}let nr=Xt(pt.importClause.namedBindings.elements,Zr=>Ke.isDeclarationVisible(Zr)?Zr:void 0);if(nr&&nr.length||st)return ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,st,nr&&nr.length?ee.updateNamedImports(pt.importClause.namedBindings,nr):void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(Ke.isImportRequiredByAugmentation(pt))return at&&s.addDiagnostic(ho(pt,Z.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),ee.updateImportDeclaration(pt,pt.modifiers,void 0,Ic(pt,pt.moduleSpecifier),ya(pt.attributes))}function ya(pt){let on=Kie(pt);return pt&&on!==void 0?pt:void 0}function Fl(pt){for(;B(O);){let st=O.shift();if(!R7(st))return pe.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${pe.formatSyntaxKind(st.kind)}`);let nr=d;d=st.parent&&cl(st.parent)&&!(Lm(st.parent)&&h);let Zr=Pi(st);d=nr,V.set(Hy(st),Zr)}return Os(pt,on,Lc);function on(st){if(R7(st)){let nr=Hy(st);if(V.has(nr)){let Zr=V.get(nr);return V.delete(nr),Zr&&((Ki(Zr)?zt(Zr,I7):I7(Zr))&&(S=!0),cl(st.parent)&&(Ki(Zr)?zt(Zr,QT):QT(Zr))&&(_=!0)),Zr}}return st}}function ba(pt){if(Qu(pt))return;if(em(pt)){if(Yt(pt))return;if(qD(pt)){if(at){if(!Ke.isDefinitelyReferenceToGlobalSymbolObject(pt.name.expression)){if(mm(pt.parent)||ag(pt.parent)){s.addDiagnostic(ho(pt,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));return}else if((p_(pt.parent)||bh(pt.parent))&&!Hd(pt.name.expression)){s.addDiagnostic(ho(pt,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));return}}}else if(!Ke.isLateBound(eu(pt))||!Hd(pt.name.expression))return}}if(Eu(pt)&&Ke.isImplementationOfOverload(pt)||oOt(pt))return;let on;An(pt)&&(on=T,T=pt);let st=g,nr=i1e(pt),Zr=M,Kr=(pt.kind===188||pt.kind===201)&&pt.parent.kind!==266;if((gu(pt)||Il(pt))&&Lb(pt,2))return pt.symbol&&pt.symbol.declarations&&pt.symbol.declarations[0]!==pt?void 0:Dn(ee.createPropertyDeclaration(Tu(pt),pt.name,void 0,void 0,void 0));if(nr&&!M&&(g=r5(pt)),Pw(pt)&&si(pt.exprName,T),Kr&&(M=!0),FBs(pt))switch(pt.kind){case 234:{(mC(pt.expression)||Hd(pt.expression))&&si(pt.expression,T);let hr=_s(pt,ba,s);return Dn(ee.updateExpressionWithTypeArguments(hr,hr.expression,hr.typeArguments))}case 184:{si(pt.typeName,T);let hr=_s(pt,ba,s);return Dn(ee.updateTypeReferenceNode(hr,hr.typeName,hr.typeArguments))}case 181:return Dn(ee.updateConstructSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt)));case 177:{let hr=ee.createConstructorDeclaration(Tu(pt),jn(pt,pt.parameters,0),void 0);return Dn(hr)}case 175:{if(p(pt.name))return Dn(void 0);let hr=ee.createMethodDeclaration(Tu(pt),void 0,pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt),void 0);return Dn(hr)}case 178:return p(pt.name)?Dn(void 0):Dn(ee.updateGetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Lb(pt,2)),qt(pt),void 0));case 179:return p(pt.name)?Dn(void 0):Dn(ee.updateSetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Lb(pt,2)),void 0));case 173:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertyDeclaration(pt,Tu(pt),pt.name,pt.questionToken,qt(pt),ir(pt)));case 172:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertySignature(pt,Tu(pt),pt.name,pt.questionToken,qt(pt)));case 174:return p(pt.name)?Dn(void 0):Dn(ee.updateMethodSignature(pt,Tu(pt),pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt)));case 180:return Dn(ee.updateCallSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt)));case 182:return Dn(ee.updateIndexSignature(pt,Tu(pt),jn(pt,pt.parameters),Mr(pt.type,ba,uc)||ee.createKeywordTypeNode(133)));case 261:return Nu(pt.name)?pa(pt.name):(Kr=!0,M=!0,Dn(ee.updateVariableDeclaration(pt,pt.name,void 0,qt(pt),ir(pt))));case 169:return Oo(pt)&&(pt.default||pt.constraint)?Dn(ee.updateTypeParameterDeclaration(pt,pt.modifiers,pt.name,void 0,void 0)):Dn(_s(pt,ba,s));case 195:{let hr=Mr(pt.checkType,ba,uc),En=Mr(pt.extendsType,ba,uc),Ni=T;T=pt.trueType;let Gi=Mr(pt.trueType,ba,uc);T=Ni;let nn=Mr(pt.falseType,ba,uc);return pe.assert(hr),pe.assert(En),pe.assert(Gi),pe.assert(nn),Dn(ee.updateConditionalTypeNode(pt,hr,En,Gi,nn))}case 185:return Dn(ee.updateFunctionTypeNode(pt,Os(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 186:return Dn(ee.updateConstructorTypeNode(pt,Tu(pt),Os(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 206:return Fy(pt)?Dn(ee.updateImportTypeNode(pt,ee.updateLiteralTypeNode(pt.argument,Ic(pt,pt.argument.literal)),pt.attributes,pt.qualifier,Os(pt.typeArguments,ba,uc),pt.isTypeOf)):Dn(pt);default:pe.assertNever(pt,`Attempted to process unhandled node kind: ${pe.formatSyntaxKind(pt.kind)}`)}return Mw(pt)&&Ra(Ne,pt.pos).line===Ra(Ne,pt.end).line&&ti(pt,1),Dn(_s(pt,ba,s));function Dn(hr){return hr&&nr&&qD(pt)&&$c(pt),An(pt)&&(T=on),nr&&!M&&(g=st),Kr&&(M=Zr),hr===pt?hr:hr&&ua(ks(hr,pt),pt)}}function Oo(pt){return pt.parent.kind===175&&Lb(pt.parent,2)}function hc(pt){if(!GBs(pt)||Qu(pt))return;switch(pt.kind){case 279:return cl(pt.parent)&&(_=!0),R=!0,ee.updateExportDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.exportClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));case 278:{if(cl(pt.parent)&&(_=!0),R=!0,pt.expression.kind===80)return pt;{let st=ee.createUniqueName("_default",16);g=()=>({diagnosticMessage:Z.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:pt}),Ee=pt;let nr=qt(pt),Zr=ee.createVariableDeclaration(st,void 0,nr,void 0);Ee=void 0;let Kr=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([Zr],2));return ks(Kr,pt),Rz(pt),[Kr,ee.updateExportAssignment(pt,pt.modifiers,st)]}}}let on=Pi(pt);return V.set(Hy(pt),on),pt}function yr(pt){if(Zm(pt)||Lb(pt,2048)||!HB(pt))return pt;let on=ee.createModifiersFromModifierFlags(l_(pt)&131039);return ee.replaceModifiers(pt,on)}function hn(pt,on,st,nr){let Zr=ee.updateModuleDeclaration(pt,on,st,nr);if(c_(Zr)||Zr.flags&32)return Zr;let Kr=ee.createModuleDeclaration(Zr.modifiers,Zr.name,Zr.body,Zr.flags|32);return ua(Kr,Zr),gn(Kr,Zr),Kr}function Pi(pt){if(O)for(;Xl(O,pt););if(Qu(pt))return;switch(pt.kind){case 272:return ou(pt);case 273:return Zn(pt)}if(em(pt)&&Yt(pt)||NN(pt)||Eu(pt)&&Ke.isImplementationOfOverload(pt))return;let on;An(pt)&&(on=T,T=pt);let st=i1e(pt),nr=g;st&&(g=r5(pt));let Zr=d;switch(pt.kind){case 266:{d=!1;let Dn=Kr(ee.updateTypeAliasDeclaration(pt,Tu(pt),pt.name,Os(pt.typeParameters,ba,Ds),pe.checkDefined(Mr(pt.type,ba,uc))));return d=Zr,Dn}case 265:return Kr(ee.updateInterfaceDeclaration(pt,Tu(pt),pt.name,Ns(pt,pt.typeParameters),Wn(pt.heritageClauses),Os(pt.members,ba,kx)));case 263:{let Dn=Kr(ee.updateFunctionDeclaration(pt,Tu(pt),void 0,pt.name,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),qt(pt),void 0));if(Dn&&Ke.isExpandoFunctionDeclaration(pt)&&Tr(pt)){let hr=Ke.getPropertiesOfContainerFunction(pt);at&&Qe(pt);let En=q3.createModuleDeclaration(void 0,Dn.name||ee.createIdentifier("_default"),ee.createModuleBlock([]),32);UA(En,T),En.locals=$u(hr),En.symbol=hr[0].parent;let Ni=[],Gi=Xt(hr,wt=>{if(!cQ(wt.valueDeclaration))return;let xe=Bc(wt.escapedName);if(!qh(xe,99))return;g=r5(wt.valueDeclaration);let fr=Ke.createTypeOfDeclaration(wt.valueDeclaration,En,s1e,o1e|2,Ie);g=nr;let Ue=qY(xe),In=Ue?ee.getGeneratedNameForNode(wt.valueDeclaration):ee.createIdentifier(xe);Ue&&Ni.push([In,xe]);let Hn=ee.createVariableDeclaration(In,void 0,fr,void 0);return ee.createVariableStatement(Ue?void 0:[ee.createToken(95)],ee.createVariableDeclarationList([Hn]))});Ni.length?Gi.push(ee.createExportDeclaration(void 0,!1,ee.createNamedExports(lt(Ni,([wt,xe])=>ee.createExportSpecifier(!1,wt,xe))))):Gi=Xt(Gi,wt=>ee.replaceModifiers(wt,0));let nn=ee.createModuleDeclaration(Tu(pt),pt.name,ee.createModuleBlock(Gi),32);if(!Lb(Dn,2048))return[Dn,nn];let bn=ee.createModifiersFromModifierFlags(l_(Dn)&-2081|128),ds=ee.updateFunctionDeclaration(Dn,bn,void 0,Dn.name,Dn.typeParameters,Dn.parameters,Dn.type,void 0),Ht=ee.updateModuleDeclaration(nn,bn,nn.name,nn.body),cn=ee.createExportAssignment(void 0,!1,nn.name);return cl(pt.parent)&&(_=!0),R=!0,[ds,Ht,cn]}else return Dn}case 268:{d=!1;let Dn=pt.body;if(Dn&&Dn.kind===269){let hr=S,En=R;R=!1,S=!1;let Ni=Os(Dn.statements,hc,Lc),Gi=Fl(Ni);pt.flags&33554432&&(S=!1),!DB(pt)&&!Cs(Gi)&&!R&&(S?Gi=ee.createNodeArray([...Gi,REe(ee)]):Gi=Os(Gi,yr,Lc));let nn=ee.updateModuleBlock(Dn,Gi);d=Zr,S=hr,R=En;let bn=Tu(pt);return Kr(hn(pt,bn,wF(pt)?Ic(pt,pt.name):pt.name,nn))}else{d=Zr;let hr=Tu(pt);d=!1,Mr(Dn,hc);let En=Hy(Dn),Ni=V.get(En);return V.delete(En),Kr(hn(pt,hr,pt.name,Ni))}}case 264:{_e=pt.name,Ee=pt;let Dn=ee.createNodeArray(Tu(pt)),hr=Ns(pt,pt.typeParameters),En=fN(pt),Ni;if(En){let wt=g;Ni=Hr(jt(En.parameters,xe=>{if(!Ga(xe,31)||Qu(xe))return;if(g=r5(xe),xe.name.kind===80)return ks(ee.createPropertyDeclaration(Tu(xe),xe.name,xe.questionToken,qt(xe),ir(xe)),xe);return fr(xe.name);function fr(Ue){let In;for(let Hn of Ue.elements)Ep(Hn)||(Nu(Hn.name)&&(In=Nn(In,fr(Hn.name))),In=In||[],In.push(ee.createPropertyDeclaration(Tu(xe),Hn.name,void 0,qt(Hn),void 0)));return In}})),g=wt}let nn=zt(pt.members,wt=>!!wt.name&&p(wt.name))?[ee.createPropertyDeclaration(void 0,ee.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,bn=Ke.createLateBoundIndexSignatures(pt,T,s1e,o1e,Ie),ds=Nn(Nn(Nn(nn,bn),Ni),Os(pt.members,ba,MI)),Ht=ee.createNodeArray(ds),cn=kB(pt);if(cn&&!Hd(cn.expression)&&cn.expression.kind!==106){let wt=pt.name?Bc(pt.name.escapedText):"default",xe=ee.createUniqueName(`${wt}_base`,16);g=()=>({diagnosticMessage:Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:cn,typeName:pt.name});let fr=ee.createVariableDeclaration(xe,void 0,Ke.createTypeOfExpression(cn.expression,pt,s1e,o1e,Ie),void 0),Ue=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([fr],2)),In=ee.createNodeArray(lt(pt.heritageClauses,Hn=>{if(Hn.token===96){let Mt=g;g=r5(Hn.types[0]);let $r=ee.updateHeritageClause(Hn,lt(Hn.types,ri=>ee.updateExpressionWithTypeArguments(ri,xe,Os(ri.typeArguments,ba,uc))));return g=Mt,$r}return ee.updateHeritageClause(Hn,Os(ee.createNodeArray(Le(Hn.types,Mt=>Hd(Mt.expression)||Mt.expression.kind===106)),ba,A_))}));return[Ue,Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,In,Ht))]}else{let wt=Wn(pt.heritageClauses);return Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,wt,Ht))}}case 244:return Kr(co(pt));case 267:return Kr(ee.updateEnumDeclaration(pt,ee.createNodeArray(Tu(pt)),pt.name,ee.createNodeArray(Xt(pt.members,Dn=>{if(Qu(Dn))return;let hr=Ke.getEnumMemberValue(Dn),En=hr?.value;at&&Dn.initializer&&hr?.hasExternalReferences&&!Un(Dn.name)&&s.addDiagnostic(ho(Dn,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));let Ni=En===void 0?void 0:typeof En=="string"?ee.createStringLiteral(En):En<0?ee.createPrefixUnaryExpression(41,ee.createNumericLiteral(-En)):ee.createNumericLiteral(En);return ks(ee.updateEnumMember(Dn,Dn.name,Ni),Dn)}))))}return pe.assertNever(pt,`Unhandled top-level node in declaration emit: ${pe.formatSyntaxKind(pt.kind)}`);function Kr(Dn){return An(pt)&&(T=on),st&&(g=nr),pt.kind===268&&(d=Zr),Dn===pt?Dn:(Ee=void 0,_e=void 0,Dn&&ua(ks(Dn,pt),pt))}}function co(pt){if(!F(pt.declarationList.declarations,mn))return;let on=Os(pt.declarationList.declarations,ba,nc);if(!B(on))return;let st=ee.createNodeArray(Tu(pt)),nr;return iI(pt.declarationList)||Bd(pt.declarationList)?(nr=ee.createVariableDeclarationList(on,2),ua(nr,pt.declarationList),gn(nr,pt.declarationList),yh(nr,pt.declarationList)):nr=ee.updateVariableDeclarationList(pt.declarationList,on),ee.updateVariableStatement(pt,st,nr)}function pa(pt){return Sr(Xt(pt.elements,on=>Pa(on)))}function Pa(pt){if(pt.kind!==233&&pt.name)return mn(pt)?Nu(pt.name)?pa(pt.name):ee.createVariableDeclaration(pt.name,void 0,qt(pt),void 0):void 0}function $c(pt){let on;M||(on=g,g=x3t(pt)),_e=pt.name,pe.assert(qD(pt));let nr=pt.name.expression;si(nr,T),M||(g=on),_e=void 0}function Qu(pt){return!!Tt&&!!pt&&jre(pt,Ne)}function Rg(pt){return yf(pt)||Vh(pt)}function Cs(pt){return zt(pt,Rg)}function Tu(pt){let on=l_(pt),st=Wr(pt);return on===st?Pde(pt.modifiers,nr=>Gs(nr,hg),hg):ee.createModifiersFromModifierFlags(st)}function Wr(pt){let on=130030,st=d&&!kBs(pt)?128:0,nr=pt.parent.kind===308;return(!nr||h&&nr&&Lm(pt.parent))&&(on^=128,st=0),prn(pt,on,st)}function Wn(pt){return ee.createNodeArray(Le(lt(pt,on=>ee.updateHeritageClause(on,Os(ee.createNodeArray(Le(on.types,st=>Hd(st.expression)||on.token===96&&st.expression.kind===106)),ba,A_))),on=>on.types&&!!on.types.length))}}function kBs(s){return s.kind===265}function xBs(s,c,g,d){return s.createModifiersFromModifierFlags(prn(c,g,d))}function prn(s,c=131070,g=0){let d=l_(s)&c|g;return d&2048&&!(d&32)&&(d^=32),d&2048&&d&128&&(d^=128),d}function frn(s){switch(s.kind){case 173:case 172:return!Lb(s,2);case 170:case 261:return!0}return!1}function GBs(s){switch(s.kind){case 263:case 268:case 272:case 265:case 264:case 266:case 267:case 244:case 273:case 279:case 278:return!0}return!1}function FBs(s){switch(s.kind){case 181:case 177:case 175:case 178:case 179:case 173:case 172:case 174:case 180:case 182:case 261:case 169:case 234:case 184:case 195:case 185:case 186:case 206:return!0}return!1}function ZBs(s){switch(s){case 200:return dtt;case 99:case 7:case 6:case 5:case 100:case 101:case 102:case 199:case 1:return k3t;case 4:return D3t;default:return Att}}var Z3t={scriptTransformers:E,declarationTransformers:E};function L3t(s,c,g){return{scriptTransformers:LBs(s,c,g),declarationTransformers:VBs(c)}}function LBs(s,c,g){if(g)return E;let d=Hg(s),h=a0(s),_=eie(s),S=[];return Pr(S,c&<(c.before,hrn)),S.push(p3t),s.experimentalDecorators&&S.push(h3t),JAe(s)&&S.push(w3t),d<99&&S.push(S3t),!s.experimentalDecorators&&(d<99||!_)&&S.push(m3t),S.push(f3t),d<8&&S.push(E3t),d<7&&S.push(b3t),d<6&&S.push(y3t),d<5&&S.push(_3t),d<4&&S.push(C3t),d<3&&S.push(T3t),d<2&&(S.push(R3t),S.push(N3t)),S.push(ZBs(h)),Pr(S,c&<(c.after,hrn)),S}function VBs(s){let c=[];return c.push(ptt),Pr(c,s&<(s.afterDeclarations,OBs)),c}function WBs(s){return c=>AOt(c)?s.transformBundle(c):s.transformSourceFile(c)}function Irn(s,c){return g=>{let d=s(g);return typeof d=="function"?c(g,d):WBs(d)}}function hrn(s){return Irn(s,cR)}function OBs(s){return Irn(s,(c,g)=>g)}function Ude(s,c){return c}function a1e(s,c,g){g(s,c)}function c1e(s,c,g,d,h,_,S){var R,T;let O=new Array(359),V,M,ee,re=0,ge=[],Ie=[],_e=[],Ee=[],Ne=0,Te=!1,Ze=[],Pe=0,Ke,et,Ye=Ude,Tt=a1e,at=0,Qe=[],Ct={factory:g,getCompilerOptions:()=>d,getEmitResolver:()=>s,getEmitHost:()=>c,getEmitHelperFactory:LA(()=>d9e(Ct)),startLexicalEnvironment:dt,suspendLexicalEnvironment:pr,resumeLexicalEnvironment:ot,endLexicalEnvironment:ir,setLexicalEnvironmentFlags:qt,getLexicalEnvironmentFlags:Yt,hoistVariableDeclaration:tr,hoistFunctionDeclaration:ur,addInitializationStatement:Gr,startBlockScope:Tr,endBlockScope:mn,addBlockScopedVariable:jn,requestEmitHelper:Zi,readEmitHelpers:Ns,enableSubstitution:je,enableEmitNotification:Gt,isSubstitutionEnabled:Wt,isEmitNotificationEnabled:it,get onSubstituteNode(){return Ye},set onSubstituteNode(si){pe.assert(at<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Ye=si},get onEmitNode(){return Tt},set onEmitNode(si){pe.assert(at<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Tt=si},addDiagnostic(si){Qe.push(si)}};for(let si of h)ju(ms(eu(si)));Mc("beforeTransform");let mt=_.map(si=>si(Ct)),yt=si=>{for(let ks of mt)si=ks(si);return si};at=1;let Rt=[];for(let si of h)(R=ki)==null||R.push(ki.Phase.Emit,"transformNodes",si.kind===308?{path:si.path}:{kind:si.kind,pos:si.pos,end:si.end}),Rt.push((S?yt:Lt)(si)),(T=ki)==null||T.pop();return at=2,Mc("afterTransform"),Pf("transformTime","beforeTransform","afterTransform"),{transformed:Rt,substituteNode:_r,emitNodeWithNotification:Dt,isEmitNotificationEnabled:it,dispose:An,diagnostics:Qe};function Lt(si){return si&&(!cl(si)||!si.isDeclarationFile)?yt(si):si}function je(si){pe.assert(at<2,"Cannot modify the transformation context after transformation has completed."),O[si]|=1}function Wt(si){return(O[si.kind]&1)!==0&&(rA(si)&8)===0}function _r(si,ks){return pe.assert(at<3,"Cannot substitute a node after the result is disposed."),ks&&Wt(ks)&&Ye(si,ks)||ks}function Gt(si){pe.assert(at<2,"Cannot modify the transformation context after transformation has completed."),O[si]|=2}function it(si){return(O[si.kind]&2)!==0||(rA(si)&4)!==0}function Dt(si,ks,Ic){pe.assert(at<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),ks&&(it(ks)?Tt(si,ks,Ic):Ic(si,ks))}function tr(si){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed.");let ks=ti(g.createVariableDeclaration(si),128);V?V.push(ks):V=[ks],re&1&&(re|=2)}function ur(si){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),M?M.push(si):M=[si]}function Gr(si){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),ee?ee.push(si):ee=[si]}function dt(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended."),ge[Ne]=V,Ie[Ne]=M,_e[Ne]=ee,Ee[Ne]=re,Ne++,V=void 0,M=void 0,ee=void 0,re=0}function pr(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is already suspended."),Te=!0}function ot(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(Te,"Lexical environment is not suspended."),Te=!1}function ir(){pe.assert(at>0,"Cannot modify the lexical environment during initialization."),pe.assert(at<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended.");let si;if(V||M||ee){if(M&&(si=[...M]),V){let ks=g.createVariableStatement(void 0,g.createVariableDeclarationList(V));ti(ks,2097152),si?si.push(ks):si=[ks]}ee&&(si?si=[...si,...ee]:si=[...ee])}return Ne--,V=ge[Ne],M=Ie[Ne],ee=_e[Ne],re=Ee[Ne],Ne===0&&(ge=[],Ie=[],_e=[],Ee=[]),si}function qt(si,ks){re=ks?re|si:re&~si}function Yt(){return re}function Tr(){pe.assert(at>0,"Cannot start a block scope during initialization."),pe.assert(at<2,"Cannot start a block scope after transformation has completed."),Ze[Pe]=Ke,Pe++,Ke=void 0}function mn(){pe.assert(at>0,"Cannot end a block scope during initialization."),pe.assert(at<2,"Cannot end a block scope after transformation has completed.");let si=zt(Ke)?[g.createVariableStatement(void 0,g.createVariableDeclarationList(Ke.map(ks=>g.createVariableDeclaration(ks)),1))]:void 0;return Pe--,Ke=Ze[Pe],Pe===0&&(Ze=[]),si}function jn(si){pe.assert(Pe>0,"Cannot add a block scoped variable outside of an iteration body."),(Ke||(Ke=[])).push(si)}function Zi(si){if(pe.assert(at>0,"Cannot modify the transformation context during initialization."),pe.assert(at<2,"Cannot modify the transformation context after transformation has completed."),pe.assert(!si.scoped,"Cannot request a scoped emit helper."),si.dependencies)for(let ks of si.dependencies)Zi(ks);et=Ft(et,si)}function Ns(){pe.assert(at>0,"Cannot modify the transformation context during initialization."),pe.assert(at<2,"Cannot modify the transformation context after transformation has completed.");let si=et;return et=void 0,si}function An(){if(at<3){for(let si of h)ju(ms(eu(si)));V=void 0,ge=void 0,M=void 0,Ie=void 0,Ye=void 0,Tt=void 0,et=void 0,at=3}}}var l1e={factory:me,getCompilerOptions:()=>({}),getEmitResolver:rl,getEmitHost:rl,getEmitHelperFactory:rl,startLexicalEnvironment:Dc,resumeLexicalEnvironment:Dc,suspendLexicalEnvironment:Dc,endLexicalEnvironment:Am,setLexicalEnvironmentFlags:Dc,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:Dc,hoistFunctionDeclaration:Dc,addInitializationStatement:Dc,startBlockScope:Dc,endBlockScope:Am,addBlockScopedVariable:Dc,requestEmitHelper:Dc,readEmitHelpers:rl,enableSubstitution:Dc,enableEmitNotification:Dc,isSubstitutionEnabled:rl,isEmitNotificationEnabled:rl,onSubstituteNode:Ude,onEmitNode:a1e,addDiagnostic:Dc},mrn=MBs();function V3t(s){return lA(s,".tsbuildinfo")}function ftt(s,c,g,d=!1,h,_){let S=Ki(g)?g:vAe(s,g,d),R=s.getCompilerOptions();if(!h)if(R.outFile){if(S.length){let T=me.createBundle(S),O=c(Kde(T,s,d),T);if(O)return O}}else for(let T of S){let O=c(Kde(T,s,d),T);if(O)return O}if(_){let T=n5(R);if(T)return c({buildInfoPath:T},void 0)}}function n5(s){let c=s.configFilePath;if(!PBs(s))return;if(s.tsBuildInfoFile)return s.tsBuildInfoFile;let g=s.outFile,d;if(g)d=c0(g);else{if(!c)return;let h=c0(c);d=s.outDir?s.rootDir?IE(s.outDir,_p(s.rootDir,h,!0)):To(s.outDir,dp(h)):h}return d+".tsbuildinfo"}function PBs(s){return OW(s)||!!s.tscBuild}function W3t(s,c){let g=s.outFile,d=s.emitDeclarationOnly?void 0:g,h=d&&Crn(d,s),_=c||Oy(s)?c0(g)+".d.ts":void 0,S=_&&YAe(s)?_+".map":void 0;return{jsFilePath:d,sourceMapFilePath:h,declarationFilePath:_,declarationMapPath:S}}function Kde(s,c,g){let d=c.getCompilerOptions();if(s.kind===309)return W3t(d,g);{let h=zZe(s.fileName,c,u1e(s.fileName,d)),_=Zu(s),S=_&&tI(s.fileName,h,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0,R=d.emitDeclarationOnly||S?void 0:h,T=!R||Zu(s)?void 0:Crn(R,d),O=g||Oy(d)&&!_?qZe(s.fileName,c):void 0,V=O&&YAe(d)?O+".map":void 0;return{jsFilePath:R,sourceMapFilePath:T,declarationFilePath:O,declarationMapPath:V}}}function Crn(s,c){return c.sourceMap&&!c.inlineSourceMap?s+".map":void 0}function u1e(s,c){return lA(s,".json")?".json":c.jsx===1&&Iu(s,[".jsx",".tsx"])?".jsx":Iu(s,[".mts",".mjs"])?".mjs":Iu(s,[".cts",".cjs"])?".cjs":".js"}function _rn(s,c,g,d){return g?IE(g,_p(d(),s,c)):s}function jde(s,c,g,d=()=>HU(c,g)){return Itt(s,c.options,g,d)}function Itt(s,c,g,d){return yN(_rn(s,g,c.declarationDir||c.outDir,d),EAe(s))}function yrn(s,c,g,d=()=>HU(c,g)){if(c.options.emitDeclarationOnly)return;let h=lA(s,".json"),_=htt(s,c.options,g,d);return!h||tI(s,_,pe.checkDefined(c.options.configFilePath),g)!==0?_:void 0}function htt(s,c,g,d){return yN(_rn(s,g,c.outDir,d),u1e(s,c))}function brn(){let s;return{addOutput:c,getOutputs:g};function c(d){d&&(s||(s=[])).push(d)}function g(){return s||E}}function Ern(s,c){let{jsFilePath:g,sourceMapFilePath:d,declarationFilePath:h,declarationMapPath:_}=W3t(s.options,!1);c(g),c(d),c(h),c(_)}function Srn(s,c,g,d,h){if(MC(c))return;let _=yrn(c,s,g,h);if(d(_),!lA(c,".json")&&(_&&s.options.sourceMap&&d(`${_}.map`),Oy(s.options))){let S=jde(c,s,g,h);d(S),s.options.declarationMap&&d(`${S}.map`)}}function zde(s,c,g,d,h){let _;return s.rootDir?(_=Xc(s.rootDir,g),h?.(s.rootDir)):s.composite&&s.configFilePath?(_=Mo(xp(s.configFilePath)),h?.(_)):_=J3t(c(),g,d),_&&_[_.length-1]!==cg&&(_+=cg),_}function HU({options:s,fileNames:c},g){return zde(s,()=>Le(c,d=>!(s.noEmitForJsFiles&&Iu(d,SU))&&!MC(d)),Mo(xp(pe.checkDefined(s.configFilePath))),bd(!g))}function mVe(s,c){let{addOutput:g,getOutputs:d}=brn();if(s.options.outFile)Ern(s,g);else{let h=LA(()=>HU(s,c));for(let _ of s.fileNames)Srn(s,_,c,g,h)}return g(n5(s.options)),d()}function vrn(s,c,g){c=su(c),pe.assert(k(s.fileNames,c),"Expected fileName to be present in command line");let{addOutput:d,getOutputs:h}=brn();return s.options.outFile?Ern(s,d):Srn(s,c,g,d),h()}function mtt(s,c){if(s.options.outFile){let{jsFilePath:h,declarationFilePath:_}=W3t(s.options,!1);return pe.checkDefined(h||_,`project ${s.options.configFilePath} expected to have at least one output`)}let g=LA(()=>HU(s,c));for(let h of s.fileNames){if(MC(h))continue;let _=yrn(h,s,c,g);if(_)return _;if(!lA(h,".json")&&Oy(s.options))return jde(h,s,c,g)}let d=n5(s.options);return d||pe.fail(`project ${s.options.configFilePath} expected to have at least one output`)}function Ctt(s,c){return!!c&&!!s}function _tt(s,c,g,{scriptTransformers:d,declarationTransformers:h},_,S,R,T){var O=c.getCompilerOptions(),V=O.sourceMap||O.inlineSourceMap||YAe(O)?[]:void 0,M=O.listEmittedFiles?[]:void 0,ee=NF(),re=IN(O),ge=Pne(re),{enter:Ie,exit:_e}=z_("printTime","beforePrint","afterPrint"),Ee=!1;return Ie(),ftt(c,Ne,vAe(c,g,R),R,S,!g&&!T),_e(),{emitSkipped:Ee,diagnostics:ee.getDiagnostics(),emittedFiles:M,sourceMaps:V};function Ne({jsFilePath:mt,sourceMapFilePath:yt,declarationFilePath:Rt,declarationMapPath:Lt,buildInfoPath:je},Wt){var _r,Gt,it,Dt,tr,ur;(_r=ki)==null||_r.push(ki.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:mt}),Ze(Wt,mt,yt),(Gt=ki)==null||Gt.pop(),(it=ki)==null||it.push(ki.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:Rt}),Pe(Wt,Rt,Lt),(Dt=ki)==null||Dt.pop(),(tr=ki)==null||tr.push(ki.Phase.Emit,"emitBuildInfo",{buildInfoPath:je}),Te(je),(ur=ki)==null||ur.pop()}function Te(mt){if(!mt||g)return;if(c.isEmitBlocked(mt)){Ee=!0;return}let yt=c.getBuildInfo()||{version:C};wAe(c,ee,mt,O3t(yt),!1,void 0,{buildInfo:yt}),M?.push(mt)}function Ze(mt,yt,Rt){if(!mt||_||!yt)return;if(c.isEmitBlocked(yt)||O.noEmit){Ee=!0;return}(cl(mt)?[mt]:Le(mt.sourceFiles,gAe)).forEach(_r=>{(O.noCheck||!vU(_r,O))&&et(_r)});let Lt=c1e(s,c,me,O,[mt],d,!1),je={removeComments:O.removeComments,newLine:O.newLine,noEmitHelpers:O.noEmitHelpers,module:a0(O),moduleResolution:F_(O),target:Hg(O),sourceMap:O.sourceMap,inlineSourceMap:O.inlineSourceMap,inlineSources:O.inlineSources,extendedDiagnostics:O.extendedDiagnostics},Wt=zW(je,{hasGlobalName:s.hasGlobalName,onEmitNode:Lt.emitNodeWithNotification,isEmitNotificationEnabled:Lt.isEmitNotificationEnabled,substituteNode:Lt.substituteNode});pe.assert(Lt.transformed.length===1,"Should only see one output from the transform"),Ye(yt,Rt,Lt,Wt,O),Lt.dispose(),M&&(M.push(yt),Rt&&M.push(Rt))}function Pe(mt,yt,Rt){if(!mt||_===0)return;if(!yt){(_||O.emitDeclarationOnly)&&(Ee=!0);return}let Lt=cl(mt)?[mt]:mt.sourceFiles,je=R?Lt:Le(Lt,gAe),Wt=O.outFile?[me.createBundle(je)]:je;je.forEach(it=>{(_&&!Oy(O)||O.noCheck||Ctt(_,R)||!vU(it,O))&&Ke(it)});let _r=c1e(s,c,me,O,Wt,h,!1);if(B(_r.diagnostics))for(let it of _r.diagnostics)ee.add(it);let Gt=!!_r.diagnostics&&!!_r.diagnostics.length||!!c.isEmitBlocked(yt)||!!O.noEmit;if(Ee=Ee||Gt,!Gt||R){pe.assert(_r.transformed.length===1,"Should only see one output from the decl transform");let it={removeComments:O.removeComments,newLine:O.newLine,noEmitHelpers:!0,module:O.module,moduleResolution:O.moduleResolution,target:O.target,sourceMap:_!==2&&O.declarationMap,inlineSourceMap:O.inlineSourceMap,extendedDiagnostics:O.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0},Dt=zW(it,{hasGlobalName:s.hasGlobalName,onEmitNode:_r.emitNodeWithNotification,isEmitNotificationEnabled:_r.isEmitNotificationEnabled,substituteNode:_r.substituteNode}),tr=Ye(yt,Rt,_r,Dt,{sourceMap:it.sourceMap,sourceRoot:O.sourceRoot,mapRoot:O.mapRoot,extendedDiagnostics:O.extendedDiagnostics});M&&(tr&&M.push(yt),Rt&&M.push(Rt))}_r.dispose()}function Ke(mt){if(yf(mt)){mt.expression.kind===80&&s.collectLinkedAliases(mt.expression,!0);return}else if(k0(mt)){s.collectLinkedAliases(mt.propertyName||mt.name,!0);return}Lu(mt,Ke)}function et(mt){o0(mt)||Wz(mt,yt=>{if(Zm(yt)&&!(Zx(yt)&32)||Yf(yt))return"skip";s.markLinkedReferences(yt)})}function Ye(mt,yt,Rt,Lt,je){let Wt=Rt.transformed[0],_r=Wt.kind===309?Wt:void 0,Gt=Wt.kind===308?Wt:void 0,it=_r?_r.sourceFiles:[Gt],Dt;Tt(je,Wt)&&(Dt=jPt(c,dp(xp(mt)),at(je),Qe(je,mt,Gt),je)),_r?Lt.writeBundle(_r,ge,Dt):Lt.writeFile(Gt,ge,Dt);let tr;if(Dt){V&&V.push({inputSourceFileNames:Dt.getSources(),sourceMap:Dt.toJSON()});let dt=Ct(je,Dt,mt,yt,Gt);if(dt&&(ge.isAtStartOfLine()||ge.rawWrite(re),tr=ge.getTextPos(),ge.writeComment(`//# sourceMappingURL=${dt}`)),yt){let pr=Dt.toString();wAe(c,ee,yt,pr,!1,it)}}else ge.writeLine();let ur=ge.getText(),Gr={sourceMapUrlPos:tr,diagnostics:Rt.diagnostics};return wAe(c,ee,mt,ur,!!O.emitBOM,it,Gr),ge.clear(),!Gr.skippedDtsWrite}function Tt(mt,yt){return(mt.sourceMap||mt.inlineSourceMap)&&(yt.kind!==308||!lA(yt.fileName,".json"))}function at(mt){let yt=xp(mt.sourceRoot||"");return yt&&Cp(yt)}function Qe(mt,yt,Rt){if(mt.sourceRoot)return c.getCommonSourceDirectory();if(mt.mapRoot){let Lt=xp(mt.mapRoot);return Rt&&(Lt=Mo(BAe(Rt.fileName,c,Lt))),Mf(Lt)===0&&(Lt=To(c.getCommonSourceDirectory(),Lt)),Lt}return Mo(su(yt))}function Ct(mt,yt,Rt,Lt,je){if(mt.inlineSourceMap){let _r=yt.toString();return`data:application/json;base64,${Bbe(Ed,_r)}`}let Wt=dp(xp(pe.checkDefined(Lt)));if(mt.mapRoot){let _r=xp(mt.mapRoot);return je&&(_r=Mo(BAe(je.fileName,c,_r))),Mf(_r)===0?(_r=To(c.getCommonSourceDirectory(),_r),encodeURI(Hf(Mo(su(Rt)),To(_r,Wt),c.getCurrentDirectory(),c.getCanonicalFileName,!0))):encodeURI(To(_r,Wt))}return encodeURI(Wt)}}function O3t(s){return JSON.stringify(s)}function ytt(s,c){return wbe(s,c)}var P3t={hasGlobalName:rl,getReferencedExportContainer:rl,getReferencedImportDeclaration:rl,getReferencedDeclarationWithCollidingName:rl,isDeclarationWithCollidingName:rl,isValueAliasDeclaration:rl,isReferencedAliasDeclaration:rl,isTopLevelValueImportEqualsWithEntityName:rl,hasNodeCheckFlag:rl,isDeclarationVisible:rl,isLateBound:s=>!1,collectLinkedAliases:rl,markLinkedReferences:rl,isImplementationOfOverload:rl,requiresAddingImplicitUndefined:rl,isExpandoFunctionDeclaration:rl,getPropertiesOfContainerFunction:rl,createTypeOfDeclaration:rl,createReturnTypeOfSignatureDeclaration:rl,createTypeOfExpression:rl,createLiteralConstValue:rl,isSymbolAccessible:rl,isEntityNameVisible:rl,getConstantValue:rl,getEnumMemberValue:rl,getReferencedValueDeclaration:rl,getReferencedValueDeclarations:rl,getTypeReferenceSerializationKind:rl,isOptionalParameter:rl,isArgumentsLocalBinding:rl,getExternalModuleFileFromDeclaration:rl,isLiteralConstDeclaration:rl,getJsxFactoryEntity:rl,getJsxFragmentFactoryEntity:rl,isBindingCapturedByNode:rl,getDeclarationStatementsForSourceFile:rl,isImportRequiredByAugmentation:rl,isDefinitelyReferenceToGlobalSymbolObject:rl,createLateBoundIndexSignatures:rl,symbolToDeclarations:rl},M3t=LA(()=>zW({})),EQ=LA(()=>zW({removeComments:!0})),H3t=LA(()=>zW({removeComments:!0,neverAsciiEscape:!0})),btt=LA(()=>zW({removeComments:!0,omitTrailingSemicolon:!0}));function zW(s={},c={}){var{hasGlobalName:g,onEmitNode:d=a1e,isEmitNotificationEnabled:h,substituteNode:_=Ude,onBeforeEmitNode:S,onAfterEmitNode:R,onBeforeEmitNodeArray:T,onAfterEmitNodeArray:O,onBeforeEmitToken:V,onAfterEmitToken:M}=c,ee=!!s.extendedDiagnostics,re=!!s.omitBraceSourceMapPositions,ge=IN(s),Ie=a0(s),_e=new Map,Ee,Ne,Te,Ze,Pe,Ke,et,Ye,Tt,at,Qe,Ct,mt,yt,Rt,Lt=s.preserveSourceNewlines,je,Wt,_r,Gt=Dse,it,Dt=!0,tr,ur,Gr=-1,dt,pr=-1,ot=-1,ir=-1,qt=-1,Yt,Tr,mn=!1,jn=!!s.removeComments,Zi,Ns,{enter:An,exit:si}=K2(ee,"commentTime","beforeComment","afterComment"),ks=me.parenthesizer,Ic={select:Ae=>Ae===0?ks.parenthesizeLeadingTypeArgument:void 0},ou=ym();return Qu(),{printNode:Zn,printList:ya,printFile:ba,printBundle:Fl,writeNode:Oo,writeList:hc,writeFile:hn,writeBundle:yr};function Zn(Ae,vt,fn){switch(Ae){case 0:pe.assert(cl(vt),"Expected a SourceFile node.");break;case 2:pe.assert(Ir(vt),"Expected an Identifier node.");break;case 1:pe.assert(un(vt),"Expected an Expression node.");break}switch(vt.kind){case 308:return ba(vt);case 309:return Fl(vt)}return Oo(Ae,vt,fn,Pi()),co()}function ya(Ae,vt,fn){return hc(Ae,vt,fn,Pi()),co()}function Fl(Ae){return yr(Ae,Pi(),void 0),co()}function ba(Ae){return hn(Ae,Pi(),void 0),co()}function Oo(Ae,vt,fn,qi){let ic=Wt;$c(qi,void 0),pa(Ae,vt,fn),Qu(),Wt=ic}function hc(Ae,vt,fn,qi){let ic=Wt;$c(qi,void 0),fn&&Pa(fn),fa(void 0,vt,Ae),Qu(),Wt=ic}function yr(Ae,vt,fn){it=!1;let qi=Wt;$c(vt,fn),h9(Ae),Kw(Ae),bn(Ae),Lpe(Ae);for(let ic of Ae.sourceFiles)pa(0,ic,ic);Qu(),Wt=qi}function hn(Ae,vt,fn){it=!0;let qi=Wt;$c(vt,fn),h9(Ae),Kw(Ae),pa(0,Ae,Ae),Qu(),Wt=qi}function Pi(){return _r||(_r=Pne(ge))}function co(){let Ae=_r.getText();return _r.clear(),Ae}function pa(Ae,vt,fn){fn&&Pa(fn),st(Ae,vt,void 0)}function Pa(Ae){Ee=Ae,Yt=void 0,Tr=void 0,Ae&&YQ(Ae)}function $c(Ae,vt){Ae&&s.omitTrailingSemicolon&&(Ae=lbe(Ae)),Wt=Ae,tr=vt,Dt=!Wt||!tr}function Qu(){Ne=[],Te=[],Ze=[],Pe=new Set,Ke=[],et=new Map,Ye=[],Tt=0,at=[],Qe=0,Ct=[],mt=void 0,yt=[],Rt=void 0,Ee=void 0,Yt=void 0,Tr=void 0,$c(void 0,void 0)}function Rg(){return Yt||(Yt=rn(pe.checkDefined(Ee)))}function Cs(Ae,vt){Ae!==void 0&&st(4,Ae,vt)}function Tu(Ae){Ae!==void 0&&st(2,Ae,void 0)}function Wr(Ae,vt){Ae!==void 0&&st(1,Ae,vt)}function Wn(Ae){st(Lg(Ae)?6:4,Ae)}function pt(Ae){Lt&&f1(Ae)&4&&(Lt=!1)}function on(Ae){Lt=Ae}function st(Ae,vt,fn){Ns=fn,Kr(0,Ae,vt)(Ae,vt),Ns=void 0}function nr(Ae){return!jn&&!cl(Ae)}function Zr(Ae){return!Dt&&!cl(Ae)&&!uAe(Ae)}function Kr(Ae,vt,fn){switch(Ae){case 0:if(d!==a1e&&(!h||h(fn)))return hr;case 1:if(_!==Ude&&(Zi=_(vt,fn)||fn)!==fn)return Ns&&(Zi=Ns(Zi)),nn;case 2:if(nr(fn))return MQ;case 3:if(Zr(fn))return CK;case 4:return En;default:return pe.assertNever(Ae)}}function Dn(Ae,vt,fn){return Kr(Ae+1,vt,fn)}function hr(Ae,vt){let fn=Dn(0,Ae,vt);d(Ae,vt,fn)}function En(Ae,vt){if(S?.(vt),Lt){let fn=Lt;pt(vt),Ni(Ae,vt),on(fn)}else Ni(Ae,vt);R?.(vt),Ns=void 0}function Ni(Ae,vt,fn=!0){if(fn){let qi=CEe(vt);if(qi)return wt(Ae,vt,qi)}if(Ae===0)return b5(Ma(vt,cl));if(Ae===2)return Ue(Ma(vt,Ir));if(Ae===6)return cn(Ma(vt,Lg),!0);if(Ae===3)return Gi(Ma(vt,Ds));if(Ae===7)return ON(Ma(vt,xU));if(Ae===5)return pe.assertNode(vt,k$e),AR(!0);if(Ae===4){switch(vt.kind){case 16:case 17:case 18:return cn(vt,!1);case 80:return Ue(vt);case 81:return In(vt);case 167:return Hn(vt);case 168:return $r(vt);case 169:return ri(vt);case 170:return oo(vt);case 171:return Bs(vt);case 172:return Ys(vt);case 173:return tn(vt);case 174:return Bn(vt);case 175:return Mn(vt);case 176:return ci(vt);case 177:return es(vt);case 178:case 179:return Oi(vt);case 180:return Vn(vt);case 181:return Ui(vt);case 182:return gs(vt);case 183:return mc(vt);case 184:return Ag(vt);case 185:return dg(vt);case 186:return sm(vt);case 187:return qp(vt);case 188:return Jg(vt);case 189:return ch(vt);case 190:return Au(vt);case 191:return zA(vt);case 193:return NA(vt);case 194:return oi(vt);case 195:return tp(vt);case 196:return JI(vt);case 197:return Wh(vt);case 234:return YC(vt);case 198:return HC();case 199:return bf(vt);case 200:return UI(vt);case 201:return ve(vt);case 202:return mr(vt);case 203:return Eg(vt);case 204:return ln(vt);case 205:return fs(vt);case 206:return ni(vt);case 207:return Ls(vt);case 208:return Za(vt);case 209:return Go(vt);case 240:return Xx(vt);case 241:return bi();case 242:return Jx(vt);case 244:return rC(vt);case 243:return AR(!1);case 245:return CS(vt);case 246:return WN(vt);case 247:return en(vt);case 248:return gi(vt);case 249:return _i(vt);case 250:return ys(vt);case 251:return $s(vt);case 252:return pc(vt);case 253:return ll(vt);case 254:return tg(vt);case 255:return zl(vt);case 256:return Su(vt);case 257:return xf(vt);case 258:return Ug(vt);case 259:return QC(vt);case 260:return T1(vt);case 261:return _S(vt);case 262:return wv(vt);case 263:return $F(vt);case 264:return is(vt);case 265:return Po(vt);case 266:return Ps(vt);case 267:return ao(vt);case 268:return Yc(vt);case 269:return ru(vt);case 270:return $a(vt);case 271:return dk(vt);case 272:return nu(vt);case 273:return Gf(vt);case 274:return Hb(vt);case 275:return JB(vt);case 281:return Bse(vt);case 276:return h_(vt);case 277:return UB(vt);case 278:return R1(vt);case 279:return p5(vt);case 280:return Fpe(vt);case 282:return wse(vt);case 301:return Ak(vt);case 302:return f5(vt);case 283:return;case 284:return eK(vt);case 12:return rK(vt);case 287:case 290:return Zpe(vt);case 288:case 291:return pq(vt);case 292:return Tse(vt);case 293:return h5(vt);case 294:return nK(vt);case 295:return Iq(vt);case 296:return hq(vt);case 297:return sO(vt);case 298:return f9(vt);case 299:return tZ(vt);case 300:return rZ(vt);case 304:return oO(vt);case 305:return m5(vt);case 306:return iK(vt);case 307:return C5(vt);case 308:return b5(vt);case 309:return pe.fail("Bundles should be printed using printBundle");case 310:return y5(vt);case 311:return iZ(vt);case 313:return qo("*");case 314:return qo("?");case 315:return Ip(vt);case 316:return kl(vt);case 317:return bu(vt);case 318:return pI(vt);case 192:case 319:return mS(vt);case 320:return;case 321:return PA(vt);case 323:return fy(vt);case 324:return fk(vt);case 328:case 333:case 338:return _5(vt);case 329:case 330:return pk(vt);case 331:case 332:return;case 334:case 335:case 336:case 337:return;case 339:return Yb(vt);case 340:return d0(vt);case 342:case 349:return Xy(vt);case 341:case 343:case 344:case 345:case 350:case 351:return sK(vt);case 346:return Sf(vt);case 347:return A0(vt);case 348:return Rse(vt);case 352:return nZ(vt);case 354:case 355:return}if(un(vt)&&(Ae=1,_!==Ude)){let qi=_(Ae,vt)||vt;qi!==vt&&(vt=qi,Ns&&(vt=Ns(vt)))}}if(Ae===1)switch(vt.kind){case 9:case 10:return Ht(vt);case 11:case 14:case 15:return cn(vt,!1);case 80:return Ue(vt);case 81:return In(vt);case 210:return Ss(vt);case 211:return Uc(vt);case 212:return el(vt);case 213:return Vg(vt);case 214:return Ef(vt);case 215:return om(vt);case 216:return Sh(vt);case 217:return Zp(vt);case 218:return lh(vt);case 219:return B1(vt);case 220:return W_(vt);case 221:return or(vt);case 222:return qn(vt);case 223:return Js(vt);case 224:return Yl(vt);case 225:return DA(vt);case 226:return AA(vt);case 227:return ou(vt);case 228:return lf(vt);case 229:return fI(vt);case 230:return KI(vt);case 231:return E2(vt);case 232:return I_(vt);case 233:return;case 235:return w1(vt);case 236:return py(vt);case 234:return YC(vt);case 239:return Bv(vt);case 237:return uk(vt);case 238:return pe.fail("SyntheticExpression should never be printed.");case 283:return;case 285:return p9(vt);case 286:return tK(vt);case 289:return dq(vt);case 353:return pe.fail("SyntaxList should not be printed");case 354:return;case 356:return Br(vt);case 357:return oK(vt);case 358:return pe.fail("SyntheticReferenceExpression should not be printed")}if(T0(vt.kind))return uK(vt,mu);if(d7(vt.kind))return uK(vt,qo);pe.fail(`Unhandled SyntaxKind: ${pe.formatSyntaxKind(vt.kind)}.`)}function Gi(Ae){Cs(Ae.name),Fo(),mu("in"),Fo(),Cs(Ae.constraint)}function nn(Ae,vt){let fn=Dn(1,Ae,vt);pe.assertIsDefined(Zi),vt=Zi,Zi=void 0,fn(Ae,vt)}function bn(Ae){let vt=!1,fn=Ae.kind===309?Ae:void 0;if(fn&&Ie===0)return;let qi=fn?fn.sourceFiles.length:1;for(let ic=0;ic")}function RI(Ae){Fo(),Cs(Ae.type)}function pI(Ae){mu("function"),S5(Ae,Ae.parameters),qo(":"),Cs(Ae.type)}function Ip(Ae){qo("?"),Cs(Ae.type)}function kl(Ae){qo("!"),Cs(Ae.type)}function bu(Ae){Cs(Ae.type),qo("=")}function sm(Ae){pR(Ae,Ae.modifiers),mu("new"),Fo(),Qy(Ae,yu,RI)}function qp(Ae){mu("typeof"),Fo(),Cs(Ae.exprName),Tv(Ae,Ae.typeArguments)}function Jg(Ae){zw(Ae),F(Ae.members,PQ),qo("{");let vt=rA(Ae)&1?768:32897;fa(Ae,Ae.members,vt|524288),qo("}"),cZ(Ae)}function ch(Ae){Cs(Ae.elementType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),qo("]")}function mS(Ae){qo("..."),Cs(Ae.type)}function Au(Ae){Fe(23,Ae.pos,qo,Ae);let vt=rA(Ae)&1?528:657;fa(Ae,Ae.elements,vt|524288,ks.parenthesizeElementTypeOfTupleType),Fe(24,Ae.elements.end,qo,Ae)}function Eg(Ae){Cs(Ae.dotDotDotToken),Cs(Ae.name),Cs(Ae.questionToken),Fe(59,Ae.name.end,qo,Ae),Fo(),Cs(Ae.type)}function zA(Ae){Cs(Ae.type,ks.parenthesizeTypeOfOptionalType),qo("?")}function NA(Ae){fa(Ae,Ae.types,516,ks.parenthesizeConstituentTypeOfUnionType)}function oi(Ae){fa(Ae,Ae.types,520,ks.parenthesizeConstituentTypeOfIntersectionType)}function tp(Ae){Cs(Ae.checkType,ks.parenthesizeCheckTypeOfConditionalType),Fo(),mu("extends"),Fo(),Cs(Ae.extendsType,ks.parenthesizeExtendsTypeOfConditionalType),Fo(),qo("?"),Fo(),Cs(Ae.trueType),Fo(),qo(":"),Fo(),Cs(Ae.falseType)}function JI(Ae){mu("infer"),Fo(),Cs(Ae.typeParameter)}function Wh(Ae){qo("("),Cs(Ae.type),qo(")")}function HC(){mu("this")}function bf(Ae){uO(Ae.operator,mu),Fo();let vt=Ae.operator===148?ks.parenthesizeOperandOfReadonlyTypeOperator:ks.parenthesizeOperandOfTypeOperator;Cs(Ae.type,vt)}function UI(Ae){Cs(Ae.objectType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),Cs(Ae.indexType),qo("]")}function ve(Ae){let vt=rA(Ae);qo("{"),vt&1?Fo():(L0(),Ik()),Ae.readonlyToken&&(Cs(Ae.readonlyToken),Ae.readonlyToken.kind!==148&&mu("readonly"),Fo()),qo("["),st(3,Ae.typeParameter),Ae.nameType&&(Fo(),mu("as"),Fo(),Cs(Ae.nameType)),qo("]"),Ae.questionToken&&(Cs(Ae.questionToken),Ae.questionToken.kind!==58&&qo("?")),qo(":"),Fo(),Cs(Ae.type),hy(),vt&1?Fo():(L0(),fR()),fa(Ae,Ae.members,2),qo("}")}function mr(Ae){Wr(Ae.literal)}function ln(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function ni(Ae){Ae.isTypeOf&&(mu("typeof"),Fo()),mu("import"),qo("("),Cs(Ae.argument),Ae.attributes&&(qo(","),Fo(),st(7,Ae.attributes)),qo(")"),Ae.qualifier&&(qo("."),Cs(Ae.qualifier)),Tv(Ae,Ae.typeArguments)}function Ls(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function Za(Ae){qo("["),fa(Ae,Ae.elements,524880),qo("]")}function Go(Ae){Cs(Ae.dotDotDotToken),Ae.propertyName&&(Cs(Ae.propertyName),qo(":"),Fo()),Cs(Ae.name),E5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function Ss(Ae){let vt=Ae.elements,fn=Ae.multiLine?65536:0;sa(Ae,vt,8914|fn,ks.parenthesizeExpressionForDisallowedComma)}function Uc(Ae){zw(Ae),F(Ae.properties,PQ);let vt=rA(Ae)&131072;vt&&Ik();let fn=Ae.multiLine?65536:0,qi=Ee&&Ee.languageVersion>=1&&!Zu(Ee)?64:0;fa(Ae,Ae.properties,526226|qi|fn),vt&&fR(),cZ(Ae)}function el(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess);let vt=Ae.questionDotToken||GB(me.createToken(25),Ae.expression.end,Ae.name.pos),fn=MN(Ae,Ae.expression,vt),qi=MN(Ae,vt,Ae.name);Rv(fn,!1),vt.kind!==29&&Fd(Ae.expression)&&!Wt.hasTrailingComment()&&!Wt.hasTrailingWhitespace()&&qo("."),Ae.questionDotToken?Cs(vt):Fe(vt.kind,Ae.expression.end,qo,Ae),Rv(qi,!1),Cs(Ae.name),Qb(fn,qi)}function Fd(Ae){if(Ae=u2(Ae),yC(Ae)){let vt=dO(Ae,void 0,!0,!1);return!(Ae.numericLiteralFlags&448)&&!vt.includes(Vi(25))&&!vt.includes("E")&&!vt.includes("e")}else if(bp(Ae)){let vt=s9e(Ae);return typeof vt=="number"&&isFinite(vt)&&vt>=0&&Math.floor(vt)===vt}}function Vg(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Cs(Ae.questionDotToken),Fe(23,Ae.expression.end,qo,Ae),Wr(Ae.argumentExpression),Fe(24,Ae.argumentExpression.end,qo,Ae)}function Ef(Ae){let vt=f1(Ae)&16;vt&&(qo("("),oZ("0"),qo(","),Fo()),Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),vt&&qo(")"),Cs(Ae.questionDotToken),Tv(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,2576,ks.parenthesizeExpressionForDisallowedComma)}function om(Ae){Fe(105,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeExpressionOfNew),Tv(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,18960,ks.parenthesizeExpressionForDisallowedComma)}function Sh(Ae){let vt=f1(Ae)&16;vt&&(qo("("),oZ("0"),qo(","),Fo()),Wr(Ae.tag,ks.parenthesizeLeftSideOfAccess),vt&&qo(")"),Tv(Ae,Ae.typeArguments),Fo(),Wr(Ae.template)}function Zp(Ae){qo("<"),Cs(Ae.type),qo(">"),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function lh(Ae){let vt=Fe(21,Ae.pos,qo,Ae),fn=gO(Ae.expression,Ae);Wr(Ae.expression,void 0),_q(Ae.expression,Ae),Qb(fn),Fe(22,Ae.expression?Ae.expression.end:vt,qo,Ae)}function B1(Ae){qx(Ae.name),d9(Ae)}function W_(Ae){pR(Ae,Ae.modifiers),Qy(Ae,b2,Pb)}function b2(Ae){jx(Ae,Ae.typeParameters),PN(Ae,Ae.parameters),jB(Ae.type),Fo(),Cs(Ae.equalsGreaterThanToken)}function Pb(Ae){eg(Ae.body)?br(Ae.body):(Fo(),Wr(Ae.body,ks.parenthesizeConciseBodyOfArrowFunction))}function or(Ae){Fe(91,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function qn(Ae){Fe(114,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Js(Ae){Fe(116,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Yl(Ae){Fe(135,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function DA(Ae){uO(Ae.operator,RE),kA(Ae)&&Fo(),Wr(Ae.operand,ks.parenthesizeOperandOfPrefixUnary)}function kA(Ae){let vt=Ae.operand;return vt.kind===225&&(Ae.operator===40&&(vt.operator===40||vt.operator===46)||Ae.operator===41&&(vt.operator===41||vt.operator===47))}function AA(Ae){Wr(Ae.operand,ks.parenthesizeOperandOfPostfixUnary),uO(Ae.operator,RE)}function ym(){return D9e(Ae,vt,fn,qi,ic,void 0);function Ae(ql,Vc){if(Vc){Vc.stackIndex++,Vc.preserveSourceNewlinesStack[Vc.stackIndex]=Lt,Vc.containerPosStack[Vc.stackIndex]=ot,Vc.containerEndStack[Vc.stackIndex]=ir,Vc.declarationListContainerEndStack[Vc.stackIndex]=qt;let bA=Vc.shouldEmitCommentsStack[Vc.stackIndex]=nr(ql),Ph=Vc.shouldEmitSourceMapsStack[Vc.stackIndex]=Zr(ql);S?.(ql),bA&&IR(ql),Ph&&qA(ql),pt(ql)}else Vc={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return Vc}function vt(ql,Vc,bA){return Pc(ql,bA,"left")}function fn(ql,Vc,bA){let Ph=ql.kind!==28,p0=MN(bA,bA.left,ql),Jy=MN(bA,ql,bA.right);Rv(p0,Ph),eG(ql.pos),uK(ql,ql.kind===103?mu:RE),qw(ql.end,!0),Rv(Jy,!0)}function qi(ql,Vc,bA){return Pc(ql,bA,"right")}function ic(ql,Vc){let bA=MN(ql,ql.left,ql.operatorToken),Ph=MN(ql,ql.operatorToken,ql.right);if(Qb(bA,Ph),Vc.stackIndex>0){let p0=Vc.preserveSourceNewlinesStack[Vc.stackIndex],Jy=Vc.containerPosStack[Vc.stackIndex],F5=Vc.containerEndStack[Vc.stackIndex],Uy=Vc.declarationListContainerEndStack[Vc.stackIndex],IO=Vc.shouldEmitCommentsStack[Vc.stackIndex],Dq=Vc.shouldEmitSourceMapsStack[Vc.stackIndex];on(p0),Dq&&Uo(ql),IO&&fO(ql,Jy,F5,Uy),R?.(ql),Vc.stackIndex--}}function Pc(ql,Vc,bA){let Ph=bA==="left"?ks.getParenthesizeLeftSideOfBinaryForOperator(Vc.operatorToken.kind):ks.getParenthesizeRightSideOfBinaryForOperator(Vc.operatorToken.kind),p0=Kr(0,1,ql);if(p0===nn&&(pe.assertIsDefined(Zi),ql=Ph(Ma(Zi,un)),p0=Dn(1,1,ql),Zi=void 0),(p0===MQ||p0===CK||p0===En)&&po(ql))return ql;Ns=Ph,p0(1,ql)}}function lf(Ae){let vt=MN(Ae,Ae.condition,Ae.questionToken),fn=MN(Ae,Ae.questionToken,Ae.whenTrue),qi=MN(Ae,Ae.whenTrue,Ae.colonToken),ic=MN(Ae,Ae.colonToken,Ae.whenFalse);Wr(Ae.condition,ks.parenthesizeConditionOfConditionalExpression),Rv(vt,!0),Cs(Ae.questionToken),Rv(fn,!0),Wr(Ae.whenTrue,ks.parenthesizeBranchOfConditionalExpression),Qb(vt,fn),Rv(qi,!0),Cs(Ae.colonToken),Rv(ic,!0),Wr(Ae.whenFalse,ks.parenthesizeBranchOfConditionalExpression),Qb(qi,ic)}function fI(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function KI(Ae){Fe(127,Ae.pos,mu,Ae),Cs(Ae.asteriskToken),m9(Ae.expression&&bs(Ae.expression),Jl)}function E2(Ae){Fe(26,Ae.pos,qo,Ae),Wr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma)}function I_(Ae){qx(Ae.name),Qs(Ae)}function YC(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Tv(Ae,Ae.typeArguments)}function w1(Ae){Wr(Ae.expression,void 0),Ae.type&&(Fo(),mu("as"),Fo(),Cs(Ae.type))}function py(Ae){Wr(Ae.expression,ks.parenthesizeLeftSideOfAccess),RE("!")}function Bv(Ae){Wr(Ae.expression,void 0),Ae.type&&(Fo(),mu("satisfies"),Fo(),Cs(Ae.type))}function uk(Ae){lO(Ae.keywordToken,Ae.pos,qo),qo("."),Cs(Ae.name)}function Xx(Ae){Wr(Ae.expression),Cs(Ae.literal)}function Jx(Ae){Mb(Ae,!Ae.multiLine&&AO(Ae))}function Mb(Ae,vt){Fe(19,Ae.pos,qo,Ae);let fn=vt||rA(Ae)&1?768:129;fa(Ae,Ae.statements,fn),Fe(20,Ae.statements.end,qo,Ae,!!(fn&1))}function rC(Ae){Iy(Ae,Ae.modifiers,!1),Cs(Ae.declarationList),hy()}function AR(Ae){Ae?qo(";"):hy()}function CS(Ae){Wr(Ae.expression,ks.parenthesizeExpressionOfExpressionStatement),(!Ee||!Zu(Ee)||ap(Ae.expression))&&hy()}function WN(Ae){let vt=Fe(101,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),sZ(Ae,Ae.thenStatement),Ae.elseStatement&&(bS(Ae,Ae.thenStatement,Ae.elseStatement),Fe(93,Ae.thenStatement.end,mu,Ae),Ae.elseStatement.kind===246?(Fo(),Cs(Ae.elseStatement)):sZ(Ae,Ae.elseStatement))}function ct(Ae,vt){let fn=Fe(117,vt,mu,Ae);Fo(),Fe(21,fn,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae)}function en(Ae){Fe(92,Ae.pos,mu,Ae),sZ(Ae,Ae.statement),eg(Ae.statement)&&!Lt?Fo():bS(Ae,Ae.statement,Ae.expression),ct(Ae,Ae.statement.end),hy()}function gi(Ae){ct(Ae,Ae.pos),sZ(Ae,Ae.statement)}function _i(Ae){let vt=Fe(99,Ae.pos,mu,Ae);Fo();let fn=Fe(21,vt,qo,Ae);wa(Ae.initializer),fn=Fe(27,Ae.initializer?Ae.initializer.end:fn,qo,Ae),m9(Ae.condition),fn=Fe(27,Ae.condition?Ae.condition.end:fn,qo,Ae),m9(Ae.incrementor),Fe(22,Ae.incrementor?Ae.incrementor.end:fn,qo,Ae),sZ(Ae,Ae.statement)}function ys(Ae){let vt=Fe(99,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),wa(Ae.initializer),Fo(),Fe(103,Ae.initializer.end,mu,Ae),Fo(),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),sZ(Ae,Ae.statement)}function $s(Ae){let vt=Fe(99,Ae.pos,mu,Ae);Fo(),aK(Ae.awaitModifier),Fe(21,vt,qo,Ae),wa(Ae.initializer),Fo(),Fe(165,Ae.initializer.end,mu,Ae),Fo(),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),sZ(Ae,Ae.statement)}function wa(Ae){Ae!==void 0&&(Ae.kind===262?Cs(Ae):Wr(Ae))}function pc(Ae){Fe(88,Ae.pos,mu,Ae),yS(Ae.label),hy()}function ll(Ae){Fe(83,Ae.pos,mu,Ae),yS(Ae.label),hy()}function Fe(Ae,vt,fn,qi,ic){let Pc=eu(qi),ql=Pc&&Pc.kind===qi.kind,Vc=vt;if(ql&&Ee&&(vt=Yu(Ee.text,vt)),ql&&qi.pos!==Vc){let bA=ic&&Ee&&!vE(Vc,vt,Ee);bA&&Ik(),eG(Vc),bA&&fR()}if(!re&&(Ae===19||Ae===20)?vt=lO(Ae,vt,fn,qi):vt=uO(Ae,fn,vt),ql&&qi.end!==vt){let bA=qi.kind===295;qw(vt,!bA,bA)}return vt}function gr(Ae){return Ae.kind===2||!!Ae.hasTrailingNewLine}function Ln(Ae){if(!Ee)return!1;let vt=CE(Ee.text,Ae.pos);if(vt){let fn=eu(Ae);if(fn&&dI(fn.parent))return!0}return zt(vt,gr)||zt(P3(Ae),gr)?!0:Ay(Ae)?Ae.pos!==Ae.expression.pos&&zt(a2(Ee.text,Ae.expression.pos),gr)?!0:Ln(Ae.expression):!1}function bs(Ae){if(!jn)switch(Ae.kind){case 356:if(Ln(Ae)){let vt=eu(Ae);if(vt&&dI(vt)){let fn=me.createParenthesizedExpression(Ae.expression);return ua(fn,Ae),gn(fn,vt),fn}return me.createParenthesizedExpression(Ae)}return me.updatePartiallyEmittedExpression(Ae,bs(Ae.expression));case 212:return me.updatePropertyAccessExpression(Ae,bs(Ae.expression),Ae.name);case 213:return me.updateElementAccessExpression(Ae,bs(Ae.expression),Ae.argumentExpression);case 214:return me.updateCallExpression(Ae,bs(Ae.expression),Ae.typeArguments,Ae.arguments);case 216:return me.updateTaggedTemplateExpression(Ae,bs(Ae.tag),Ae.typeArguments,Ae.template);case 226:return me.updatePostfixUnaryExpression(Ae,bs(Ae.operand));case 227:return me.updateBinaryExpression(Ae,bs(Ae.left),Ae.operatorToken,Ae.right);case 228:return me.updateConditionalExpression(Ae,bs(Ae.condition),Ae.questionToken,Ae.whenTrue,Ae.colonToken,Ae.whenFalse);case 235:return me.updateAsExpression(Ae,bs(Ae.expression),Ae.type);case 239:return me.updateSatisfiesExpression(Ae,bs(Ae.expression),Ae.type);case 236:return me.updateNonNullExpression(Ae,bs(Ae.expression))}return Ae}function Jl(Ae){return bs(ks.parenthesizeExpressionForDisallowedComma(Ae))}function tg(Ae){Fe(107,Ae.pos,mu,Ae),m9(Ae.expression&&bs(Ae.expression),bs),hy()}function zl(Ae){let vt=Fe(118,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),sZ(Ae,Ae.statement)}function Su(Ae){let vt=Fe(109,Ae.pos,mu,Ae);Fo(),Fe(21,vt,qo,Ae),Wr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),Fo(),Cs(Ae.caseBlock)}function xf(Ae){Cs(Ae.label),Fe(59,Ae.label.end,qo,Ae),Fo(),Cs(Ae.statement)}function Ug(Ae){Fe(111,Ae.pos,mu,Ae),m9(bs(Ae.expression),bs),hy()}function QC(Ae){Fe(113,Ae.pos,mu,Ae),Fo(),Cs(Ae.tryBlock),Ae.catchClause&&(bS(Ae,Ae.tryBlock,Ae.catchClause),Cs(Ae.catchClause)),Ae.finallyBlock&&(bS(Ae,Ae.catchClause||Ae.tryBlock,Ae.finallyBlock),Fe(98,(Ae.catchClause||Ae.tryBlock).end,mu,Ae),Fo(),Cs(Ae.finallyBlock))}function T1(Ae){lO(89,Ae.pos,mu),hy()}function _S(Ae){var vt,fn,qi;Cs(Ae.name),Cs(Ae.exclamationToken),jB(Ae.type),E5(Ae.initializer,((vt=Ae.type)==null?void 0:vt.end)??((qi=(fn=Ae.name.emitNode)==null?void 0:fn.typeNode)==null?void 0:qi.end)??Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function wv(Ae){if(Bd(Ae))mu("await"),Fo(),mu("using");else{let vt=aS(Ae)?"let":sI(Ae)?"const":iI(Ae)?"using":"var";mu(vt)}Fo(),fa(Ae,Ae.declarations,528)}function $F(Ae){d9(Ae)}function d9(Ae){Iy(Ae,Ae.modifiers,!1),mu("function"),Cs(Ae.asteriskToken),Fo(),Tu(Ae.name),Qy(Ae,XB,gk)}function Qy(Ae,vt,fn){let qi=rA(Ae)&131072;qi&&Ik(),zw(Ae),F(Ae.parameters,XC),vt(Ae),fn(Ae),cZ(Ae),qi&&fR()}function gk(Ae){let vt=Ae.body;vt?br(vt):hy()}function dR(Ae){hy()}function XB(Ae){jx(Ae,Ae.typeParameters),S5(Ae,Ae.parameters),jB(Ae.type)}function nO(Ae){if(rA(Ae)&1)return!0;if(Ae.multiLine||!ap(Ae)&&Ee&&!x3(Ae,Ee)||_9(Ae,Nc(Ae.statements),2)||Cq(Ae,li(Ae.statements),2,Ae.statements))return!1;let vt;for(let fn of Ae.statements){if(B5(vt,fn,2)>0)return!1;vt=fn}return!0}function br(Ae){XC(Ae),S?.(Ae),Fo(),qo("{"),Ik();let vt=nO(Ae)?sn:ei;HQ(Ae,Ae.statements,vt),fR(),lO(20,Ae.statements.end,qo,Ae),R?.(Ae)}function sn(Ae){ei(Ae,!0)}function ei(Ae,vt){let fn=Kx(Ae.statements),qi=Wt.getTextPos();bn(Ae),fn===0&&qi===Wt.getTextPos()&&vt?(fR(),fa(Ae,Ae.statements,768),Ik()):fa(Ae,Ae.statements,1,void 0,fn)}function is(Ae){Qs(Ae)}function Qs(Ae){Iy(Ae,Ae.modifiers,!0),Fe(86,hv(Ae).pos,mu,Ae),Ae.name&&(Fo(),Tu(Ae.name));let vt=rA(Ae)&131072;vt&&Ik(),jx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,0),Fo(),qo("{"),zw(Ae),F(Ae.members,PQ),fa(Ae,Ae.members,129),cZ(Ae),qo("}"),vt&&fR()}function Po(Ae){Iy(Ae,Ae.modifiers,!1),mu("interface"),Fo(),Cs(Ae.name),jx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,512),Fo(),qo("{"),zw(Ae),F(Ae.members,PQ),fa(Ae,Ae.members,129),cZ(Ae),qo("}")}function Ps(Ae){Iy(Ae,Ae.modifiers,!1),mu("type"),Fo(),Cs(Ae.name),jx(Ae,Ae.typeParameters),Fo(),qo("="),Fo(),Cs(Ae.type),hy()}function ao(Ae){Iy(Ae,Ae.modifiers,!1),mu("enum"),Fo(),Cs(Ae.name),Fo(),qo("{"),fa(Ae,Ae.members,145),qo("}")}function Yc(Ae){Iy(Ae,Ae.modifiers,!1),~Ae.flags&2048&&(mu(Ae.flags&32?"namespace":"module"),Fo()),Cs(Ae.name);let vt=Ae.body;if(!vt)return hy();for(;vt&&Lh(vt);)qo("."),Cs(vt.name),vt=vt.body;Fo(),Cs(vt)}function ru(Ae){zw(Ae),F(Ae.statements,XC),Mb(Ae,AO(Ae)),cZ(Ae)}function $a(Ae){Fe(19,Ae.pos,qo,Ae),fa(Ae,Ae.clauses,129),Fe(20,Ae.clauses.end,qo,Ae,!0)}function nu(Ae){Iy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,mu,Ae),Fo(),Ae.isTypeOnly&&(Fe(156,Ae.pos,mu,Ae),Fo()),Cs(Ae.name),Fo(),Fe(64,Ae.name.end,qo,Ae),Fo(),ul(Ae.moduleReference),hy()}function ul(Ae){Ae.kind===80?Wr(Ae):Cs(Ae)}function Gf(Ae){Iy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,mu,Ae),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,mu,Ae),Fo()),Wr(Ae.moduleSpecifier),Ae.attributes&&yS(Ae.attributes),hy()}function Hb(Ae){Ae.phaseModifier!==void 0&&(Fe(Ae.phaseModifier,Ae.pos,mu,Ae),Fo()),Cs(Ae.name),Ae.name&&Ae.namedBindings&&(Fe(28,Ae.name.end,qo,Ae),Fo()),Cs(Ae.namedBindings)}function JB(Ae){let vt=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,vt,mu,Ae),Fo(),Cs(Ae.name)}function h_(Ae){Ux(Ae)}function UB(Ae){I5(Ae)}function R1(Ae){let vt=Fe(95,Ae.pos,mu,Ae);Fo(),Ae.isExportEquals?Fe(64,vt,RE,Ae):Fe(90,vt,mu,Ae),Fo(),Wr(Ae.expression,Ae.isExportEquals?ks.getParenthesizeRightSideOfBinaryForOperator(64):ks.parenthesizeExpressionOfExportDefault),hy()}function p5(Ae){Iy(Ae,Ae.modifiers,!1);let vt=Fe(95,Ae.pos,mu,Ae);if(Fo(),Ae.isTypeOnly&&(vt=Fe(156,vt,mu,Ae),Fo()),Ae.exportClause?Cs(Ae.exportClause):vt=Fe(42,vt,qo,Ae),Ae.moduleSpecifier){Fo();let fn=Ae.exportClause?Ae.exportClause.end:vt;Fe(161,fn,mu,Ae),Fo(),Wr(Ae.moduleSpecifier)}Ae.attributes&&yS(Ae.attributes),hy()}function ON(Ae){qo("{"),Fo(),mu(Ae.token===132?"assert":"with"),qo(":"),Fo();let vt=Ae.elements;fa(Ae,vt,526226),Fo(),qo("}")}function Ak(Ae){Fe(Ae.token,Ae.pos,mu,Ae),Fo();let vt=Ae.elements;fa(Ae,vt,526226)}function f5(Ae){Cs(Ae.name),qo(":"),Fo();let vt=Ae.value;if(!(rA(vt)&1024)){let fn=LB(vt);qw(fn.pos)}Cs(vt)}function dk(Ae){let vt=Fe(95,Ae.pos,mu,Ae);Fo(),vt=Fe(130,vt,mu,Ae),Fo(),vt=Fe(145,vt,mu,Ae),Fo(),Cs(Ae.name),hy()}function Bse(Ae){let vt=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,vt,mu,Ae),Fo(),Cs(Ae.name)}function Fpe(Ae){Ux(Ae)}function wse(Ae){I5(Ae)}function Ux(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function I5(Ae){Ae.isTypeOnly&&(mu("type"),Fo()),Ae.propertyName&&(Cs(Ae.propertyName),Fo(),Fe(130,Ae.propertyName.end,mu,Ae),Fo()),Cs(Ae.name)}function eK(Ae){mu("require"),qo("("),Wr(Ae.expression),qo(")")}function p9(Ae){Cs(Ae.openingElement),fa(Ae,Ae.children,262144),Cs(Ae.closingElement)}function tK(Ae){qo("<"),ZQ(Ae.tagName),Tv(Ae,Ae.typeArguments),Fo(),Cs(Ae.attributes),qo("/>")}function dq(Ae){Cs(Ae.openingFragment),fa(Ae,Ae.children,262144),Cs(Ae.closingFragment)}function Zpe(Ae){if(qo("<"),sR(Ae)){let vt=gO(Ae.tagName,Ae);ZQ(Ae.tagName),Tv(Ae,Ae.typeArguments),Ae.attributes.properties&&Ae.attributes.properties.length>0&&Fo(),Cs(Ae.attributes),_q(Ae.attributes,Ae),Qb(vt)}qo(">")}function rK(Ae){Wt.writeLiteral(Ae.text)}function pq(Ae){qo("")}function h5(Ae){fa(Ae,Ae.properties,262656)}function Tse(Ae){Cs(Ae.name),dA("=",qo,Ae.initializer,Wn)}function nK(Ae){qo("{..."),Wr(Ae.expression),qo("}")}function fq(Ae){let vt=!1;return _F(Ee?.text||"",Ae+1,()=>vt=!0),vt}function FQ(Ae){let vt=!1;return OD(Ee?.text||"",Ae+1,()=>vt=!0),vt}function iO(Ae){return fq(Ae)||FQ(Ae)}function Iq(Ae){var vt;if(Ae.expression||!jn&&!ap(Ae)&&iO(Ae.pos)){let fn=Ee&&!ap(Ae)&&Ra(Ee,Ae.pos).line!==Ra(Ee,Ae.end).line;fn&&Wt.increaseIndent();let qi=Fe(19,Ae.pos,qo,Ae);Cs(Ae.dotDotDotToken),Wr(Ae.expression),Fe(20,((vt=Ae.expression)==null?void 0:vt.end)||qi,qo,Ae),fn&&Wt.decreaseIndent()}}function hq(Ae){Tu(Ae.namespace),qo(":"),Tu(Ae.name)}function ZQ(Ae){Ae.kind===80?Wr(Ae):Cs(Ae)}function sO(Ae){Fe(84,Ae.pos,mu,Ae),Fo(),Wr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma),eZ(Ae,Ae.statements,Ae.expression.end)}function f9(Ae){let vt=Fe(90,Ae.pos,mu,Ae);eZ(Ae,Ae.statements,vt)}function eZ(Ae,vt,fn){let qi=vt.length===1&&(!Ee||ap(Ae)||ap(vt[0])||nz(Ae,vt[0],Ee)),ic=163969;qi?(lO(59,fn,qo,Ae),Fo(),ic&=-130):Fe(59,fn,qo,Ae),fa(Ae,vt,ic)}function tZ(Ae){Fo(),uO(Ae.token,mu),Fo(),fa(Ae,Ae.types,528)}function rZ(Ae){let vt=Fe(85,Ae.pos,mu,Ae);Fo(),Ae.variableDeclaration&&(Fe(21,vt,qo,Ae),Cs(Ae.variableDeclaration),Fe(22,Ae.variableDeclaration.end,qo,Ae),Fo()),Cs(Ae.block)}function oO(Ae){Cs(Ae.name),qo(":"),Fo();let vt=Ae.initializer;if(!(rA(vt)&1024)){let fn=LB(vt);qw(fn.pos)}Wr(vt,ks.parenthesizeExpressionForDisallowedComma)}function m5(Ae){Cs(Ae.name),Ae.objectAssignmentInitializer&&(Fo(),qo("="),Fo(),Wr(Ae.objectAssignmentInitializer,ks.parenthesizeExpressionForDisallowedComma))}function iK(Ae){Ae.expression&&(Fe(26,Ae.pos,qo,Ae),Wr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma))}function C5(Ae){Cs(Ae.name),E5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function PA(Ae){if(Gt("/**"),Ae.comment){let vt=TJ(Ae.comment);if(vt){let fn=vt.split(/\r\n?|\n/);for(let qi of fn)L0(),Fo(),qo("*"),Fo(),Gt(qi)}}Ae.tags&&(Ae.tags.length===1&&Ae.tags[0].kind===345&&!Ae.comment?(Fo(),Cs(Ae.tags[0])):fa(Ae,Ae.tags,33)),Fo(),Gt("*/")}function sK(Ae){KB(Ae.tagName),y5(Ae.typeExpression),Uw(Ae.comment)}function Rse(Ae){KB(Ae.tagName),Cs(Ae.name),Uw(Ae.comment)}function nZ(Ae){KB(Ae.tagName),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,mu,Ae),Fo()),Wr(Ae.moduleSpecifier),Ae.attributes&&yS(Ae.attributes),Uw(Ae.comment)}function iZ(Ae){Fo(),qo("{"),Cs(Ae.name),qo("}")}function pk(Ae){KB(Ae.tagName),Fo(),qo("{"),Cs(Ae.class),qo("}"),Uw(Ae.comment)}function Sf(Ae){KB(Ae.tagName),y5(Ae.constraint),Fo(),fa(Ae,Ae.typeParameters,528),Uw(Ae.comment)}function A0(Ae){KB(Ae.tagName),Ae.typeExpression&&(Ae.typeExpression.kind===310?y5(Ae.typeExpression):(Fo(),qo("{"),Gt("Object"),Ae.typeExpression.isArrayType&&(qo("["),qo("]")),qo("}"))),Ae.fullName&&(Fo(),Cs(Ae.fullName)),Uw(Ae.comment),Ae.typeExpression&&Ae.typeExpression.kind===323&&fy(Ae.typeExpression)}function Yb(Ae){KB(Ae.tagName),Ae.name&&(Fo(),Cs(Ae.name)),Uw(Ae.comment),fk(Ae.typeExpression)}function d0(Ae){Uw(Ae.comment),fk(Ae.typeExpression)}function _5(Ae){KB(Ae.tagName),Uw(Ae.comment)}function fy(Ae){fa(Ae,me.createNodeArray(Ae.jsDocPropertyTags),33)}function fk(Ae){Ae.typeParameters&&fa(Ae,me.createNodeArray(Ae.typeParameters),33),Ae.parameters&&fa(Ae,me.createNodeArray(Ae.parameters),33),Ae.type&&(L0(),Fo(),qo("*"),Fo(),Cs(Ae.type))}function Xy(Ae){KB(Ae.tagName),y5(Ae.typeExpression),Fo(),Ae.isBracketed&&qo("["),Cs(Ae.name),Ae.isBracketed&&qo("]"),Uw(Ae.comment)}function KB(Ae){qo("@"),Cs(Ae)}function Uw(Ae){let vt=TJ(Ae);vt&&(Fo(),Gt(vt))}function y5(Ae){Ae&&(Fo(),qo("{"),Cs(Ae.type),qo("}"))}function b5(Ae){L0();let vt=Ae.statements;if(vt.length===0||!cS(vt[0])||ap(vt[0])){HQ(Ae,vt,LQ);return}LQ(Ae)}function Lpe(Ae){I9(!!Ae.hasNoDefaultLib,Ae.syntheticFileReferences||[],Ae.syntheticTypeReferences||[],Ae.syntheticLibReferences||[])}function Nse(Ae){Ae.isDeclarationFile&&I9(Ae.hasNoDefaultLib,Ae.referencedFiles,Ae.typeReferenceDirectives,Ae.libReferenceDirectives)}function I9(Ae,vt,fn,qi){if(Ae&&(cO('/// '),L0()),Ee&&Ee.moduleName&&(cO(`/// `),L0()),Ee&&Ee.amdDependencies)for(let Pc of Ee.amdDependencies)Pc.name?cO(`/// `):cO(`/// `),L0();function ic(Pc,ql){for(let Vc of ql){let bA=Vc.resolutionMode?`resolution-mode="${Vc.resolutionMode===99?"import":"require"}" `:"",Ph=Vc.preserve?'preserve="true" ':"";cO(`/// `),L0()}}ic("path",vt),ic("types",fn),ic("lib",qi)}function LQ(Ae){let vt=Ae.statements;zw(Ae),F(Ae.statements,XC),bn(Ae);let fn=Se(vt,qi=>!cS(qi));Nse(Ae),fa(Ae,vt,1,void 0,fn===-1?vt.length:fn),cZ(Ae)}function Br(Ae){let vt=rA(Ae);!(vt&1024)&&Ae.pos!==Ae.expression.pos&&qw(Ae.expression.pos),Wr(Ae.expression),!(vt&2048)&&Ae.end!==Ae.expression.end&&eG(Ae.expression.end)}function oK(Ae){sa(Ae,Ae.elements,528,void 0)}function Kx(Ae,vt,fn){let qi=!!vt;for(let ic=0;ic=fn.length||ql===0;if(bA&&qi&32768){T?.(fn),O?.(fn);return}qi&15360&&(qo(HBs(qi)),bA&&fn&&qw(fn.pos,!0)),T?.(fn),bA?qi&1&&!(Lt&&(!vt||Ee&&x3(vt,Ee)))?L0():qi&256&&!(qi&524288)&&Fo():cK(Ae,vt,fn,qi,ic,Pc,ql,fn.hasTrailingComma,fn),O?.(fn),qi&15360&&(bA&&fn&&eG(fn.end),qo(YBs(qi)))}function cK(Ae,vt,fn,qi,ic,Pc,ql,Vc,bA){let Ph=(qi&262144)===0,p0=Ph,Jy=_9(vt,fn[Pc],qi);Jy?(L0(Jy),p0=!1):qi&256&&Fo(),qi&128&&Ik();let F5=UBs(Ae,ic),Uy,IO=!1;for(let S9=0;S90){if(qi&131||(Ik(),IO=!0),p0&&qi&60&&!xB($w.pos)){let QQ=LB($w);qw(QQ.pos,!!(qi&512),!0)}L0(v9),p0=!1}else Uy&&qi&512&&Fo()}if(p0){let v9=LB($w);qw(v9.pos)}else p0=Ph;je=$w.pos,F5($w,Ae,ic,S9),IO&&(fR(),IO=!1),Uy=$w}let Dq=Uy?rA(Uy):0,zB=jn||!!(Dq&2048),Qf=Vc&&qi&64&&qi&16;Qf&&(Uy&&!zB?Fe(28,Uy.end,qo,Uy):qo(",")),Uy&&(vt?vt.end:-1)!==Uy.end&&qi&60&&!zB&&eG(Qf&&bA?.end?bA.end:Uy.end),qi&128&&fR();let bK=Cq(vt,fn[Pc+ql-1],qi,bA);bK?L0(bK):qi&2097408&&Fo()}function oZ(Ae){Wt.writeLiteral(Ae)}function OQ(Ae){Wt.writeStringLiteral(Ae)}function Dse(Ae){Wt.write(Ae)}function Vpe(Ae,vt){Wt.writeSymbol(Ae,vt)}function qo(Ae){Wt.writePunctuation(Ae)}function hy(){Wt.writeTrailingSemicolon(";")}function mu(Ae){Wt.writeKeyword(Ae)}function RE(Ae){Wt.writeOperator(Ae)}function lK(Ae){Wt.writeParameter(Ae)}function cO(Ae){Wt.writeComment(Ae)}function Fo(){Wt.writeSpace(" ")}function kse(Ae){Wt.writeProperty(Ae)}function mq(Ae){Wt.nonEscapingWrite?Wt.nonEscapingWrite(Ae):Wt.write(Ae)}function L0(Ae=1){for(let vt=0;vt0)}function Ik(){Wt.increaseIndent()}function fR(){Wt.decreaseIndent()}function lO(Ae,vt,fn,qi){return Dt?uO(Ae,fn,vt):_K(qi,Ae,fn,vt,uO)}function uK(Ae,vt){V&&V(Ae),vt(Vi(Ae.kind)),M&&M(Ae)}function uO(Ae,vt,fn){let qi=Vi(Ae);return vt(qi),fn<0?fn:fn+qi.length}function bS(Ae,vt,fn){if(rA(Ae)&1)Fo();else if(Lt){let qi=MN(Ae,vt,fn);qi?L0(qi):Fo()}else L0()}function jw(Ae){let vt=Ae.split(/\r\n?|\n/),fn=Ure(vt);for(let qi of vt){let ic=fn?qi.slice(fn):qi;ic.length&&(L0(),Gt(ic))}}function Rv(Ae,vt){Ae?(Ik(),L0(Ae)):vt&&Fo()}function Qb(Ae,vt){Ae&&fR(),vt&&fR()}function _9(Ae,vt,fn){if(fn&2||Lt){if(fn&65536)return 1;if(vt===void 0)return!Ae||Ee&&x3(Ae,Ee)?0:1;if(vt.pos===je||vt.kind===12)return 0;if(Ee&&Ae&&!xB(Ae.pos)&&!ap(vt)&&(!vt.parent||xd(vt.parent)===xd(Ae)))return Lt?w5(qi=>hLe(vt.pos,Ae.pos,Ee,qi)):nz(Ae,vt,Ee)?0:1;if(aZ(vt,fn))return 1}return fn&1?1:0}function B5(Ae,vt,fn){if(fn&2||Lt){if(Ae===void 0||vt===void 0||vt.kind===12)return 0;if(Ee&&!ap(Ae)&&!ap(vt))return Lt&&V0(Ae,vt)?w5(qi=>G3(Ae,vt,Ee,qi)):!Lt&&Bq(Ae,vt)?Jne(Ae,vt,Ee)?0:1:fn&65536?1:0;if(aZ(Ae,fn)||aZ(vt,fn))return 1}else if(O3(vt))return 1;return fn&1?1:0}function Cq(Ae,vt,fn,qi){if(fn&2||Lt){if(fn&65536)return 1;if(vt===void 0)return!Ae||Ee&&x3(Ae,Ee)?0:1;if(Ee&&Ae&&!xB(Ae.pos)&&!ap(vt)&&(!vt.parent||vt.parent===Ae)){if(Lt){let ic=qi&&!xB(qi.end)?qi.end:vt.end;return w5(Pc=>Tbe(ic,Ae.end,Ee,Pc))}return pLe(Ae,vt,Ee)?0:1}if(aZ(vt,fn))return 1}return fn&1&&!(fn&131072)?1:0}function w5(Ae){pe.assert(!!Lt);let vt=Ae(!0);return vt===0?Ae(!1):vt}function gO(Ae,vt){let fn=Lt&&_9(vt,Ae,0);return fn&&Rv(fn,!1),!!fn}function _q(Ae,vt){let fn=Lt&&Cq(vt,Ae,0,void 0);fn&&L0(fn)}function aZ(Ae,vt){if(ap(Ae)){let fn=O3(Ae);return fn===void 0?(vt&65536)!==0:fn}return(vt&65536)!==0}function MN(Ae,vt,fn){return rA(Ae)&262144?0:(Ae=T5(Ae),vt=T5(vt),fn=T5(fn),O3(fn)?1:Ee&&!ap(Ae)&&!ap(vt)&&!ap(fn)?Lt?w5(qi=>G3(vt,fn,Ee,qi)):Jne(vt,fn,Ee)?0:1:0)}function AO(Ae){return Ae.statements.length===0&&(!Ee||Jne(Ae,Ae,Ee))}function T5(Ae){for(;Ae.kind===218&&ap(Ae);)Ae=Ae.expression;return Ae}function y9(Ae,vt){if(Gp(Ae)||ZL(Ae))return R5(Ae);if(Lg(Ae)&&Ae.textSourceNode)return y9(Ae.textSourceNode,vt);let fn=Ee,qi=!!fn&&!!Ae.parent&&!ap(Ae);if(Bw(Ae)){if(!qi||ms(Ae)!==xd(fn))return Vo(Ae)}else if(oR(Ae)){if(!qi||ms(Ae)!==xd(fn))return Sz(Ae)}else if(pe.assertNode(Ae,FL),!qi)return Ae.text;return vF(fn,Ae,vt)}function dO(Ae,vt=Ee,fn,qi){if(Ae.kind===11&&Ae.textSourceNode){let Pc=Ae.textSourceNode;if(Ir(Pc)||p(Pc)||yC(Pc)||oR(Pc)){let ql=yC(Pc)?Pc.text:y9(Pc);return qi?`"${cbe(ql)}"`:fn||rA(Ae)&16777216?`"${jT(ql)}"`:`"${Vne(ql)}"`}else return dO(Pc,ms(Pc),fn,qi)}let ic=(fn?1:0)|(qi?2:0)|(s.terminateUnterminatedLiterals?4:0)|(s.target&&s.target>=8?8:0);return Mge(Ae,vt,ic)}function zw(Ae){Ye.push(Tt),Tt=0,yt.push(Rt),!(Ae&&rA(Ae)&1048576)&&(at.push(Qe),Qe=0,Ke.push(et),et=void 0,Ct.push(mt))}function cZ(Ae){Tt=Ye.pop(),Rt=yt.pop(),!(Ae&&rA(Ae)&1048576)&&(Qe=at.pop(),et=Ke.pop(),mt=Ct.pop())}function zx(Ae){(!mt||mt===li(Ct))&&(mt=new Set),mt.add(Ae)}function pO(Ae){(!Rt||Rt===li(yt))&&(Rt=new Set),Rt.add(Ae)}function XC(Ae){if(Ae)switch(Ae.kind){case 242:F(Ae.statements,XC);break;case 257:case 255:case 247:case 248:XC(Ae.statement);break;case 246:XC(Ae.thenStatement),XC(Ae.elseStatement);break;case 249:case 251:case 250:XC(Ae.initializer),XC(Ae.statement);break;case 256:XC(Ae.caseBlock);break;case 270:F(Ae.clauses,XC);break;case 297:case 298:F(Ae.statements,XC);break;case 259:XC(Ae.tryBlock),XC(Ae.catchClause),XC(Ae.finallyBlock);break;case 300:XC(Ae.variableDeclaration),XC(Ae.block);break;case 244:XC(Ae.declarationList);break;case 262:F(Ae.declarations,XC);break;case 261:case 170:case 209:case 264:qx(Ae.name);break;case 263:qx(Ae.name),rA(Ae)&1048576&&(F(Ae.parameters,XC),XC(Ae.body));break;case 207:case 208:F(Ae.elements,XC);break;case 273:XC(Ae.importClause);break;case 274:qx(Ae.name),XC(Ae.namedBindings);break;case 275:qx(Ae.name);break;case 281:qx(Ae.name);break;case 276:F(Ae.elements,XC);break;case 277:qx(Ae.propertyName||Ae.name);break}}function PQ(Ae){if(Ae)switch(Ae.kind){case 304:case 305:case 173:case 172:case 175:case 174:case 178:case 179:qx(Ae.name);break}}function qx(Ae){Ae&&(Gp(Ae)||ZL(Ae)?R5(Ae):Nu(Ae)&&XC(Ae))}function R5(Ae){let vt=Ae.emitNode.autoGenerate;if((vt.flags&7)===4)return gK(ZEe(Ae),p(Ae),vt.flags,vt.prefix,vt.suffix);{let fn=vt.id;return Ze[fn]||(Ze[fn]=Nv(Ae))}}function gK(Ae,vt,fn,qi,ic){let Pc=id(Ae),ql=vt?Te:Ne;return ql[Pc]||(ql[Pc]=Xb(Ae,vt,fn??0,Vie(qi,R5),Vie(ic)))}function $x(Ae,vt){return yq(Ae,vt)&&!xse(Ae,vt)&&!Pe.has(Ae)}function xse(Ae,vt){let fn,qi;if(vt?(fn=Rt,qi=yt):(fn=mt,qi=Ct),fn?.has(Ae))return!0;for(let ic=qi.length-1;ic>=0;ic--)if(fn!==qi[ic]&&(fn=qi[ic],fn?.has(Ae)))return!0;return!1}function yq(Ae,vt){return Ee?v7(Ee,Ae,g):!0}function bq(Ae,vt){for(let fn=vt;fn&&kW(fn,vt);fn=fn.nextContainer)if(HI(fn)&&fn.locals){let qi=fn.locals.get(pp(Ae));if(qi&&qi.flags&3257279)return!1}return!0}function Wpe(Ae){switch(Ae){case"":return Qe;case"#":return Tt;default:return et?.get(Ae)??0}}function Eq(Ae,vt){switch(Ae){case"":Qe=vt;break;case"#":Tt=vt;break;default:et??(et=new Map),et.set(Ae,vt);break}}function N5(Ae,vt,fn,qi,ic){qi.length>0&&qi.charCodeAt(0)===35&&(qi=qi.slice(1));let Pc=z3(fn,qi,"",ic),ql=Wpe(Pc);if(Ae&&!(ql&Ae)){let bA=z3(fn,qi,Ae===268435456?"_i":"_n",ic);if($x(bA,fn))return ql|=Ae,fn?pO(bA):vt&&zx(bA),Eq(Pc,ql),bA}for(;;){let Vc=ql&268435455;if(ql++,Vc!==8&&Vc!==13){let bA=Vc<26?"_"+String.fromCharCode(97+Vc):"_"+(Vc-26),Ph=z3(fn,qi,bA,ic);if($x(Ph,fn))return fn?pO(Ph):vt&&zx(Ph),Eq(Pc,ql),Ph}}}function lZ(Ae,vt=$x,fn,qi,ic,Pc,ql){if(Ae.length>0&&Ae.charCodeAt(0)===35&&(Ae=Ae.slice(1)),Pc.length>0&&Pc.charCodeAt(0)===35&&(Pc=Pc.slice(1)),fn){let bA=z3(ic,Pc,Ae,ql);if(vt(bA,ic))return ic?pO(bA):qi?zx(bA):Pe.add(bA),bA}Ae.charCodeAt(Ae.length-1)!==95&&(Ae+="_");let Vc=1;for(;;){let bA=z3(ic,Pc,Ae+Vc,ql);if(vt(bA,ic))return ic?pO(bA):qi?zx(bA):Pe.add(bA),bA;Vc++}}function Gse(Ae){return lZ(Ae,yq,!0,!1,!1,"","")}function D5(Ae){let vt=y9(Ae.name);return bq(vt,Gs(Ae,HI))?vt:lZ(vt,$x,!1,!1,!1,"","")}function AK(Ae){let vt=KY(Ae),fn=Lg(vt)?Dw(vt.text):"module";return lZ(fn,$x,!1,!1,!1,"","")}function Oh(){return lZ("default",$x,!1,!1,!1,"","")}function JC(){return lZ("class",$x,!1,!1,!1,"","")}function Sq(Ae,vt,fn,qi){return Ir(Ae.name)?gK(Ae.name,vt):N5(0,!1,vt,fn,qi)}function Xb(Ae,vt,fn,qi,ic){switch(Ae.kind){case 80:case 81:return lZ(y9(Ae),$x,!!(fn&16),!!(fn&8),vt,qi,ic);case 268:case 267:return pe.assert(!qi&&!ic&&!vt),D5(Ae);case 273:case 279:return pe.assert(!qi&&!ic&&!vt),AK(Ae);case 263:case 264:{pe.assert(!qi&&!ic&&!vt);let Pc=Ae.name;return Pc&&!Gp(Pc)?Xb(Pc,!1,fn,qi,ic):Oh()}case 278:return pe.assert(!qi&&!ic&&!vt),Oh();case 232:return pe.assert(!qi&&!ic&&!vt),JC();case 175:case 178:case 179:return Sq(Ae,vt,qi,ic);case 168:return N5(0,!0,vt,qi,ic);default:return N5(0,!1,vt,qi,ic)}}function Nv(Ae){let vt=Ae.emitNode.autoGenerate,fn=Vie(vt.prefix,R5),qi=Vie(vt.suffix);switch(vt.flags&7){case 1:return N5(0,!!(vt.flags&8),p(Ae),fn,qi);case 2:return pe.assertNode(Ae,Ir),N5(268435456,!!(vt.flags&8),!1,fn,qi);case 3:return lZ(Vo(Ae),vt.flags&32?yq:$x,!!(vt.flags&16),!!(vt.flags&8),p(Ae),fn,qi)}return pe.fail(`Unsupported GeneratedIdentifierKind: ${pe.formatEnum(vt.flags&7,cd,!0)}.`)}function MQ(Ae,vt){let fn=Dn(2,Ae,vt),qi=ot,ic=ir,Pc=qt;IR(vt),fn(Ae,vt),fO(vt,qi,ic,Pc)}function IR(Ae){let vt=rA(Ae),fn=LB(Ae);b9(Ae,vt,fn.pos,fn.end),vt&4096&&(jn=!0)}function fO(Ae,vt,fn,qi){let ic=rA(Ae),Pc=LB(Ae);ic&4096&&(jn=!1),vq(Ae,ic,Pc.pos,Pc.end,vt,fn,qi);let ql=l9e(Ae);ql&&vq(Ae,ic,ql.pos,ql.end,vt,fn,qi)}function b9(Ae,vt,fn,qi){An(),mn=!1;let ic=fn<0||(vt&1024)!==0||Ae.kind===12,Pc=qi<0||(vt&2048)!==0||Ae.kind===12;(fn>0||qi>0)&&fn!==qi&&(ic||NE(fn,Ae.kind!==354),(!ic||fn>=0&&vt&1024)&&(ot=fn),(!Pc||qi>=0&&vt&2048)&&(ir=qi,Ae.kind===262&&(qt=qi))),F(P3(Ae),Ope),si()}function vq(Ae,vt,fn,qi,ic,Pc,ql){An();let Vc=qi<0||(vt&2048)!==0||Ae.kind===12;F(DU(Ae),NI),(fn>0||qi>0)&&fn!==qi&&(ot=ic,ir=Pc,qt=ql,!Vc&&Ae.kind!==354&&wq(qi)),si()}function Ope(Ae){(Ae.hasLeadingNewline||Ae.kind===2)&&Wt.writeLine(),Fse(Ae),Ae.hasTrailingNewLine||Ae.kind===2?Wt.writeLine():Wt.writeSpace(" ")}function NI(Ae){Wt.isAtStartOfLine()||Wt.writeSpace(" "),Fse(Ae),Ae.hasTrailingNewLine&&Wt.writeLine()}function Fse(Ae){let vt=dK(Ae),fn=Ae.kind===3?uA(vt):void 0;IU(vt,fn,Wt,0,vt.length,ge)}function dK(Ae){return Ae.kind===3?`/*${Ae.text}*/`:`//${Ae.text}`}function HQ(Ae,vt,fn){An();let{pos:qi,end:ic}=vt,Pc=rA(Ae),ql=qi<0||(Pc&1024)!==0,Vc=jn||ic<0||(Pc&2048)!==0;ql||N1(vt),si(),Pc&4096&&!jn?(jn=!0,fn(Ae),jn=!1):fn(Ae),An(),Vc||(NE(vt.end,!0),mn&&!Wt.isAtStartOfLine()&&Wt.writeLine()),si()}function Bq(Ae,vt){return Ae=xd(Ae),Ae.parent&&Ae.parent===xd(vt).parent}function V0(Ae,vt){if(vt.pos-1&&qi.indexOf(vt)===ic+1}function NE(Ae,vt){mn=!1,vt?Ae===0&&Ee?.isDeclarationFile?Rq(Ae,k5):Rq(Ae,fK):Ae===0&&Rq(Ae,pK)}function pK(Ae,vt,fn,qi,ic){mK(Ae,vt)&&fK(Ae,vt,fn,qi,ic)}function k5(Ae,vt,fn,qi,ic){mK(Ae,vt)||fK(Ae,vt,fn,qi,ic)}function DE(Ae,vt){return s.onlyPrintJsDocStyle?net(Ae,vt)||B7(Ae,vt):!0}function fK(Ae,vt,fn,qi,ic){!Ee||!DE(Ee.text,Ae)||(mn||(Ibe(Rg(),Wt,ic,Ae),mn=!0),nC(Ae),IU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),qi?Wt.writeLine():fn===3&&Wt.writeSpace(" "))}function eG(Ae){jn||Ae===-1||NE(Ae,!0)}function wq(Ae){hK(Ae,IK)}function IK(Ae,vt,fn,qi){!Ee||!DE(Ee.text,Ae)||(Wt.isAtStartOfLine()||Wt.writeSpace(" "),nC(Ae),IU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),qi&&Wt.writeLine())}function qw(Ae,vt,fn){jn||(An(),hK(Ae,vt?IK:fn?Tq:Zse),si())}function Tq(Ae,vt,fn){Ee&&(nC(Ae),IU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),fn===2&&Wt.writeLine())}function Zse(Ae,vt,fn,qi){Ee&&(nC(Ae),IU(Ee.text,Rg(),Wt,Ae,vt,ge),nC(vt),qi?Wt.writeLine():Wt.writeSpace(" "))}function Rq(Ae,vt){Ee&&(ot===-1||Ae!==ot)&&(Nq(Ae)?E9(vt):OD(Ee.text,Ae,vt,Ae))}function hK(Ae,vt){Ee&&(ir===-1||Ae!==ir&&Ae!==qt)&&_F(Ee.text,Ae,vt)}function Nq(Ae){return Tr!==void 0&&Ei(Tr).nodePos===Ae}function E9(Ae){if(!Ee)return;let vt=Ei(Tr).detachedCommentEndPos;Tr.length-1?Tr.pop():Tr=void 0,OD(Ee.text,vt,Ae,vt)}function N1(Ae){let vt=Ee&&rLe(Ee.text,Rg(),Wt,HN,Ae,ge,jn);vt&&(Tr?Tr.push(vt):Tr=[vt])}function HN(Ae,vt,fn,qi,ic,Pc){!Ee||!DE(Ee.text,qi)||(nC(qi),IU(Ae,vt,fn,qi,ic,Pc),nC(ic))}function mK(Ae,vt){return!!Ee&&rne(Ee.text,Ae,vt)}function CK(Ae,vt){let fn=Dn(3,Ae,vt);qA(vt),fn(Ae,vt),Uo(vt)}function qA(Ae){let vt=rA(Ae),fn=qT(Ae),qi=fn.source||ur;Ae.kind!==354&&!(vt&32)&&fn.pos>=0&&x5(fn.source||ur,ES(qi,fn.pos)),vt&128&&(Dt=!0)}function Uo(Ae){let vt=rA(Ae),fn=qT(Ae);vt&128&&(Dt=!1),Ae.kind!==354&&!(vt&64)&&fn.end>=0&&x5(fn.source||ur,fn.end)}function ES(Ae,vt){return Ae.skipTrivia?Ae.skipTrivia(vt):Yu(Ae.text,vt)}function nC(Ae){if(Dt||xB(Ae)||yK(ur))return;let{line:vt,character:fn}=Ra(ur,Ae);tr.addMapping(Wt.getLine(),Wt.getColumn(),Gr,vt,fn,void 0)}function x5(Ae,vt){if(Ae!==ur){let fn=ur,qi=Gr;YQ(Ae),nC(vt),G5(fn,qi)}else nC(vt)}function _K(Ae,vt,fn,qi,ic){if(Dt||Ae&&uAe(Ae))return ic(vt,fn,qi);let Pc=Ae&&Ae.emitNode,ql=Pc&&Pc.flags||0,Vc=Pc&&Pc.tokenSourceMapRanges&&Pc.tokenSourceMapRanges[vt],bA=Vc&&Vc.source||ur;return qi=ES(bA,Vc?Vc.pos:qi),!(ql&256)&&qi>=0&&x5(bA,qi),qi=ic(vt,fn,qi),Vc&&(qi=Vc.end),!(ql&512)&&qi>=0&&x5(bA,qi),qi}function YQ(Ae){if(!Dt){if(ur=Ae,Ae===dt){Gr=pr;return}yK(Ae)||(Gr=tr.addSource(Ae.fileName),s.inlineSources&&tr.setSourceContent(Gr,Ae.text),dt=Ae,pr=Gr)}}function G5(Ae,vt){ur=Ae,Gr=vt}function yK(Ae){return lA(Ae.fileName,".json")}}function MBs(){let s=[];return s[1024]=["{","}"],s[2048]=["(",")"],s[4096]=["<",">"],s[8192]=["[","]"],s}function HBs(s){return mrn[s&15360][0]}function YBs(s){return mrn[s&15360][1]}function QBs(s,c,g,d){c(s)}function XBs(s,c,g,d){c(s,g.select(d))}function JBs(s,c,g,d){c(s,g)}function UBs(s,c){return s.length===1?QBs:typeof c=="object"?XBs:JBs}function CVe(s,c,g){if(!s.getDirectories||!s.readDirectory)return;let d=new Map,h=bd(g);return{useCaseSensitiveFileNames:g,fileExists:re,readFile:(Ye,Tt)=>s.readFile(Ye,Tt),directoryExists:s.directoryExists&&ge,getDirectories:_e,readDirectory:Ee,createDirectory:s.createDirectory&&Ie,writeFile:s.writeFile&&ee,addOrDeleteFileOrDirectory:Ze,addOrDeleteFile:Pe,clearCache:et,realpath:s.realpath&&Ne};function _(Ye){return Pu(Ye,c,h)}function S(Ye){return d.get(Cp(Ye))}function R(Ye){let Tt=S(Mo(Ye));return Tt&&(Tt.sortedAndCanonicalizedFiles||(Tt.sortedAndCanonicalizedFiles=Tt.files.map(h).sort(),Tt.sortedAndCanonicalizedDirectories=Tt.directories.map(h).sort()),Tt)}function T(Ye){return dp(su(Ye))}function O(Ye,Tt){var at;if(!s.realpath||Cp(_(s.realpath(Ye)))===Tt){let Qe={files:lt(s.readDirectory(Ye,void 0,void 0,["*.*"]),T)||[],directories:s.getDirectories(Ye)||[]};return d.set(Cp(Tt),Qe),Qe}if((at=s.directoryExists)!=null&&at.call(s,Ye))return d.set(Tt,!1),!1}function V(Ye,Tt){Tt=Cp(Tt);let at=S(Tt);if(at)return at;try{return O(Ye,Tt)}catch{pe.assert(!d.has(Cp(Tt)));return}}function M(Ye,Tt){return Oc(Ye,Tt,Zl,Ca)>=0}function ee(Ye,Tt,at){let Qe=_(Ye),Ct=R(Qe);return Ct&&Ke(Ct,T(Ye),!0),s.writeFile(Ye,Tt,at)}function re(Ye){let Tt=_(Ye),at=R(Tt);return at&&M(at.sortedAndCanonicalizedFiles,h(T(Ye)))||s.fileExists(Ye)}function ge(Ye){let Tt=_(Ye);return d.has(Cp(Tt))||s.directoryExists(Ye)}function Ie(Ye){let Tt=_(Ye),at=R(Tt);if(at){let Qe=T(Ye),Ct=h(Qe),mt=at.sortedAndCanonicalizedDirectories;Gc(mt,Ct,Ca)&&at.directories.push(Qe)}s.createDirectory(Ye)}function _e(Ye){let Tt=_(Ye),at=V(Ye,Tt);return at?at.directories.slice():s.getDirectories(Ye)}function Ee(Ye,Tt,at,Qe,Ct){let mt=_(Ye),yt=V(Ye,mt),Rt;if(yt!==void 0)return Xbe(Ye,Tt,at,Qe,g,c,Ct,Lt,Ne);return s.readDirectory(Ye,Tt,at,Qe,Ct);function Lt(Wt){let _r=_(Wt);if(_r===mt)return yt||je(Wt,_r);let Gt=V(Wt,_r);return Gt!==void 0?Gt||je(Wt,_r):Kbe}function je(Wt,_r){if(Rt&&_r===mt)return Rt;let Gt={files:lt(s.readDirectory(Wt,void 0,void 0,["*.*"]),T)||E,directories:s.getDirectories(Wt)||E};return _r===mt&&(Rt=Gt),Gt}}function Ne(Ye){return s.realpath?s.realpath(Ye):Ye}function Te(Ye){mE(Mo(Ye),Tt=>d.delete(Cp(Tt))?!0:void 0)}function Ze(Ye,Tt){if(S(Tt)!==void 0){et();return}let Qe=R(Tt);if(!Qe){Te(Tt);return}if(!s.directoryExists){et();return}let Ct=T(Ye),mt={fileExists:s.fileExists(Ye),directoryExists:s.directoryExists(Ye)};return mt.directoryExists||M(Qe.sortedAndCanonicalizedDirectories,h(Ct))?et():Ke(Qe,Ct,mt.fileExists),mt}function Pe(Ye,Tt,at){if(at===1)return;let Qe=R(Tt);Qe?Ke(Qe,T(Ye),at===0):Te(Tt)}function Ke(Ye,Tt,at){let Qe=Ye.sortedAndCanonicalizedFiles,Ct=h(Tt);if(at)Gc(Qe,Ct,Ca)&&Ye.files.push(Tt);else{let mt=Oc(Qe,Ct,Zl,Ca);if(mt>=0){Qe.splice(mt,1);let yt=Ye.files.findIndex(Rt=>h(Rt)===Ct);Ye.files.splice(yt,1)}}}function et(){d.clear()}}var Y3t=(s=>(s[s.Update=0]="Update",s[s.RootNamesAndUpdate=1]="RootNamesAndUpdate",s[s.Full=2]="Full",s[s.Resolutions=3]="Resolutions",s))(Y3t||{});function _Ve(s,c,g,d,h){var _;let S=Ru(((_=c?.configFile)==null?void 0:_.extendedSourceFiles)||E,h);g.forEach((R,T)=>{S.has(T)||(R.projects.delete(s),R.close())}),S.forEach((R,T)=>{let O=g.get(T);O?O.projects.add(s):g.set(T,{projects:new Set([s]),watcher:d(R,T),close:()=>{let V=g.get(T);!V||V.projects.size!==0||(V.watcher.close(),g.delete(T))}})})}function Ett(s,c){c.forEach(g=>{g.projects.delete(s)&&g.close()})}function yVe(s,c,g){s.delete(c)&&s.forEach(({extendedResult:d},h)=>{var _;(_=d.extendedSourceFiles)!=null&&_.some(S=>g(S)===c)&&yVe(s,h,g)})}function Stt(s,c,g){oz(c,s.getMissingFilePaths(),{createNewValue:g,onDeleteValue:mv})}function g1e(s,c,g){c?oz(s,new Map(Object.entries(c)),{createNewValue:d,onDeleteValue:Sv,onExistingValue:h}):Vy(s,Sv);function d(_,S){return{watcher:g(_,S),flags:S}}function h(_,S,R){_.flags!==S&&(_.watcher.close(),s.set(R,d(R,S)))}}function A1e({watchedDirPath:s,fileOrDirectory:c,fileOrDirectoryPath:g,configFileName:d,options:h,program:_,extraFileExtensions:S,currentDirectory:R,useCaseSensitiveFileNames:T,writeLog:O,toPath:V,getScriptKind:M}){let ee=GVe(g);if(!ee)return O(`Project: ${d} Detected ignored path: ${c}`),!0;if(g=ee,g===s)return!1;if(B0(g)&&!(Ube(c,h,S)||Ee()))return O(`Project: ${d} Detected file add/remove of non supported extension: ${c}`),!0;if(gPt(c,h.configFile.configFileSpecs,Xc(Mo(d),R),T,R))return O(`Project: ${d} Detected excluded file: ${c}`),!0;if(!_||h.outFile||h.outDir)return!1;if(MC(g)){if(h.declarationDir)return!1}else if(!Iu(g,SU))return!1;let re=c0(g),ge=Ki(_)?void 0:ert(_)?_.getProgramOrUndefined():_,Ie=!ge&&!Ki(_)?_:void 0;if(_e(re+".ts")||_e(re+".tsx"))return O(`Project: ${d} Detected output file: ${c}`),!0;return!1;function _e(Ne){return ge?!!ge.getSourceFileByPath(Ne):Ie?Ie.state.fileInfos.has(Ne):!!de(_,Te=>V(Te)===Ne)}function Ee(){if(!M)return!1;switch(M(c)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return FF(h);case 6:return WW(h);case 0:return!1}}}function Q3t(s,c){return s?s.isEmittedFile(c):!1}var X3t=(s=>(s[s.None=0]="None",s[s.TriggerOnly=1]="TriggerOnly",s[s.Verbose=2]="Verbose",s))(X3t||{});function vtt(s,c,g,d){ZC(c===2?g:Dc);let h={watchFile:(Ie,_e,Ee,Ne)=>s.watchFile(Ie,_e,Ee,Ne),watchDirectory:(Ie,_e,Ee,Ne)=>s.watchDirectory(Ie,_e,(Ee&1)!==0,Ne)},_=c!==0?{watchFile:re("watchFile"),watchDirectory:re("watchDirectory")}:void 0,S=c===2?{watchFile:M,watchDirectory:ee}:_||h,R=c===2?V:rpe;return{watchFile:T("watchFile"),watchDirectory:T("watchDirectory")};function T(Ie){return(_e,Ee,Ne,Te,Ze,Pe)=>{var Ke;return U9e(_e,Ie==="watchFile"?Te?.excludeFiles:Te?.excludeDirectories,O(),((Ke=s.getCurrentDirectory)==null?void 0:Ke.call(s))||"")?R(_e,Ne,Te,Ze,Pe):S[Ie].call(void 0,_e,Ee,Ne,Te,Ze,Pe)}}function O(){return typeof s.useCaseSensitiveFileNames=="boolean"?s.useCaseSensitiveFileNames:s.useCaseSensitiveFileNames()}function V(Ie,_e,Ee,Ne,Te){return g(`ExcludeWatcher:: Added:: ${ge(Ie,_e,Ee,Ne,Te,d)}`),{close:()=>g(`ExcludeWatcher:: Close:: ${ge(Ie,_e,Ee,Ne,Te,d)}`)}}function M(Ie,_e,Ee,Ne,Te,Ze){g(`FileWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`);let Pe=_.watchFile(Ie,_e,Ee,Ne,Te,Ze);return{close:()=>{g(`FileWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`),Pe.close()}}}function ee(Ie,_e,Ee,Ne,Te,Ze){let Pe=`DirectoryWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(Pe);let Ke=Zg(),et=_.watchDirectory(Ie,_e,Ee,Ne,Te,Ze),Ye=Zg()-Ke;return g(`Elapsed:: ${Ye}ms ${Pe}`),{close:()=>{let Tt=`DirectoryWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(Tt);let at=Zg();et.close();let Qe=Zg()-at;g(`Elapsed:: ${Qe}ms ${Tt}`)}}}function re(Ie){return(_e,Ee,Ne,Te,Ze,Pe)=>h[Ie].call(void 0,_e,(...Ke)=>{let et=`${Ie==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${Ke[0]} ${Ke[1]!==void 0?Ke[1]:""}:: ${ge(_e,Ne,Te,Ze,Pe,d)}`;g(et);let Ye=Zg();Ee.call(void 0,...Ke);let Tt=Zg()-Ye;g(`Elapsed:: ${Tt}ms ${et}`)},Ne,Te,Ze,Pe)}function ge(Ie,_e,Ee,Ne,Te,Ze){return`WatchInfo: ${Ie} ${_e} ${JSON.stringify(Ee)} ${Ze?Ze(Ne,Te):Te===void 0?Ne:`${Ne} ${Te}`}`}}function d1e(s){let c=s?.fallbackPolling;return{watchFile:c!==void 0?c:1}}function Sv(s){s.watcher.close()}function Btt(s,c,g="tsconfig.json"){return mE(s,d=>{let h=To(d,g);return c(h)?h:void 0})}function wtt(s,c){let g=Mo(c),d=Up(s)?s:To(g,s);return su(d)}function J3t(s,c,g){let d;return F(s,_=>{let S=mB(_,c);if(S.pop(),!d){d=S;return}let R=Math.min(d.length,S.length);for(let T=0;T{let _;try{Mc("beforeIORead"),_=s(g),Mc("afterIORead"),Pf("I/O Read","beforeIORead","afterIORead")}catch(S){h&&h(S.message),_=""}return _!==void 0?Oz(g,_,d,c):void 0}}function Rtt(s,c,g){return(d,h,_,S)=>{try{Mc("beforeIOWrite"),dbe(d,h,_,s,c,g),Mc("afterIOWrite"),Pf("I/O Write","beforeIOWrite","afterIOWrite")}catch(R){S&&S(R.message)}}}function bVe(s,c,g=Ed){let d=new Map,h=bd(g.useCaseSensitiveFileNames);function _(V){return d.has(V)?!0:(O.directoryExists||g.directoryExists)(V)?(d.set(V,!0),!0):!1}function S(){return Mo(su(g.getExecutingFilePath()))}let R=IN(s),T=g.realpath&&(V=>g.realpath(V)),O={getSourceFile:Ttt(V=>O.readFile(V),c),getDefaultLibLocation:S,getDefaultLibFileName:V=>To(S(),Hs(V)),writeFile:Rtt((V,M,ee)=>g.writeFile(V,M,ee),V=>(O.createDirectory||g.createDirectory)(V),V=>_(V)),getCurrentDirectory:LA(()=>g.getCurrentDirectory()),useCaseSensitiveFileNames:()=>g.useCaseSensitiveFileNames,getCanonicalFileName:h,getNewLine:()=>R,fileExists:V=>g.fileExists(V),readFile:V=>g.readFile(V),trace:V=>g.write(V+R),directoryExists:V=>g.directoryExists(V),getEnvironmentVariable:V=>g.getEnvironmentVariable?g.getEnvironmentVariable(V):"",getDirectories:V=>g.getDirectories(V),realpath:T,readDirectory:(V,M,ee,re,ge)=>g.readDirectory(V,M,ee,re,ge),createDirectory:V=>g.createDirectory(V),createHash:$i(g,g.createHash)};return O}function qde(s,c,g){let d=s.readFile,h=s.fileExists,_=s.directoryExists,S=s.createDirectory,R=s.writeFile,T=new Map,O=new Map,V=new Map,M=new Map,ee=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:re(_e,Ie)},re=(Ie,_e)=>{let Ee=d.call(s,_e);return T.set(Ie,Ee!==void 0?Ee:!1),Ee};s.readFile=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:!lA(Ie,".json")&&!V3t(Ie)?d.call(s,Ie):re(_e,Ie)};let ge=g?(Ie,_e,Ee,Ne)=>{let Te=c(Ie),Ze=typeof _e=="object"?_e.impliedNodeFormat:void 0,Pe=M.get(Ze),Ke=Pe?.get(Te);if(Ke)return Ke;let et=g(Ie,_e,Ee,Ne);return et&&(MC(Ie)||lA(Ie,".json"))&&M.set(Ze,(Pe||new Map).set(Te,et)),et}:void 0;return s.fileExists=Ie=>{let _e=c(Ie),Ee=O.get(_e);if(Ee!==void 0)return Ee;let Ne=h.call(s,Ie);return O.set(_e,!!Ne),Ne},R&&(s.writeFile=(Ie,_e,...Ee)=>{let Ne=c(Ie);O.delete(Ne);let Te=T.get(Ne);Te!==void 0&&Te!==_e?(T.delete(Ne),M.forEach(Ze=>Ze.delete(Ne))):ge&&M.forEach(Ze=>{let Pe=Ze.get(Ne);Pe&&Pe.text!==_e&&Ze.delete(Ne)}),R.call(s,Ie,_e,...Ee)}),_&&(s.directoryExists=Ie=>{let _e=c(Ie),Ee=V.get(_e);if(Ee!==void 0)return Ee;let Ne=_.call(s,Ie);return V.set(_e,!!Ne),Ne},S&&(s.createDirectory=Ie=>{let _e=c(Ie);V.delete(_e),S.call(s,Ie)})),{originalReadFile:d,originalFileExists:h,originalDirectoryExists:_,originalCreateDirectory:S,originalWriteFile:R,getSourceFileWithCache:ge,readFileWithCache:ee}}function Brn(s,c,g){let d;return d=Pr(d,s.getConfigFileParsingDiagnostics()),d=Pr(d,s.getOptionsDiagnostics(g)),d=Pr(d,s.getSyntacticDiagnostics(c,g)),d=Pr(d,s.getGlobalDiagnostics(g)),d=Pr(d,s.getSemanticDiagnostics(c,g)),Oy(s.getCompilerOptions())&&(d=Pr(d,s.getDeclarationDiagnostics(c,g))),ui(d||E)}function wrn(s,c){let g="";for(let d of s)g+=Ntt(d,c);return g}function Ntt(s,c){let g=`${Eb(s)} TS${s.code}: ${xN(s.messageText,c.getNewLine())}${c.getNewLine()}`;if(s.file){let{line:d,character:h}=Ra(s.file,s.start),_=s.file.fileName;return`${o2(_,c.getCurrentDirectory(),R=>c.getCanonicalFileName(R))}(${d+1},${h+1}): `+g}return g}var K3t=(s=>(s.Grey="\x1B[90m",s.Red="\x1B[91m",s.Yellow="\x1B[93m",s.Blue="\x1B[94m",s.Cyan="\x1B[96m",s))(K3t||{}),j3t="\x1B[7m",z3t=" ",Trn="\x1B[0m",Rrn="...",KBs=" ",Nrn=" ";function Drn(s){switch(s){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return pe.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function SQ(s,c){return c+s+Trn}function krn(s,c,g,d,h,_){let{line:S,character:R}=Ra(s,c),{line:T,character:O}=Ra(s,c+g),V=Ra(s,s.text.length).line,M=T-S>=4,ee=(T+1+"").length;M&&(ee=Math.max(Rrn.length,ee));let re="";for(let ge=S;ge<=T;ge++){re+=_.getNewLine(),M&&S+1g.getCanonicalFileName(T)):s.fileName,R="";return R+=d(S,"\x1B[96m"),R+=":",R+=d(`${h+1}`,"\x1B[93m"),R+=":",R+=d(`${_+1}`,"\x1B[93m"),R}function q3t(s,c){let g="";for(let d of s){if(d.file){let{file:h,start:_}=d;g+=Dtt(h,_,c),g+=" - "}if(g+=SQ(Eb(d),Drn(d.category)),g+=SQ(` TS${d.code}: `,"\x1B[90m"),g+=xN(d.messageText,c.getNewLine()),d.file&&d.code!==Z.File_appears_to_be_binary.code&&(g+=c.getNewLine(),g+=krn(d.file,d.start,d.length,"",Drn(d.category),c)),d.relatedInformation){g+=c.getNewLine();for(let{file:h,start:_,length:S,messageText:R}of d.relatedInformation)h&&(g+=c.getNewLine(),g+=KBs+Dtt(h,_,c),g+=krn(h,_,S,Nrn,"\x1B[96m",c)),g+=c.getNewLine(),g+=Nrn+xN(R,c.getNewLine())}g+=c.getNewLine()}return g}function xN(s,c,g=0){if(Xs(s))return s;if(s===void 0)return"";let d="";if(g){d+=c;for(let h=0;hxtt(c,s,g)};function Gtt(s,c,g,d,h){return{nameAndMode:SVe,resolve:(_,S)=>OU(_,s,g,d,h,c,S)}}function t5t(s){return Xs(s)?s:s.fileName}var Zrn={getName:t5t,getMode:(s,c,g)=>$3t(s,c&&TVe(c,g))};function vVe(s,c,g,d,h){return{nameAndMode:Zrn,resolve:(_,S)=>_Pt(_,s,g,d,c,h,S)}}function p1e(s,c,g,d,h,_,S,R){if(s.length===0)return E;let T=[],O=new Map,V=R(c,g,d,_,S);for(let M of s){let ee=V.nameAndMode.getName(M),re=V.nameAndMode.getMode(M,h,g?.commandLine.options||d),ge=Lde(ee,re),Ie=O.get(ge);Ie||O.set(ge,Ie=V.resolve(ee,re)),T.push(Ie)}return T}var $de="__inferred type names__.ts";function BVe(s,c,g){let d=s.configFilePath?Mo(s.configFilePath):c;return To(d,`__lib_node_modules_lookup_${g}__.ts`)}function Ftt(s){let c=s.split("."),g=c[1],d=2;for(;c[d]&&c[d]!=="d";)g+=(d===2?"/":"-")+c[d],d++;return"@typescript/lib-"+g}function i5(s){switch(s?.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function jie(s){return s.pos!==void 0}function epe(s,c){var g,d,h,_;let S=pe.checkDefined(s.getSourceFileByPath(c.file)),{kind:R,index:T}=c,O,V,M;switch(R){case 3:let ee=h1e(S,T);if(M=(d=(g=s.getResolvedModuleFromModuleSpecifier(ee,S))==null?void 0:g.resolvedModule)==null?void 0:d.packageId,ee.pos===-1)return{file:S,packageId:M,text:ee.text};O=Yu(S.text,ee.pos),V=ee.end;break;case 4:({pos:O,end:V}=S.referencedFiles[T]);break;case 5:({pos:O,end:V}=S.typeReferenceDirectives[T]),M=(_=(h=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S.typeReferenceDirectives[T],S))==null?void 0:h.resolvedTypeReferenceDirective)==null?void 0:_.packageId;break;case 7:({pos:O,end:V}=S.libReferenceDirectives[T]);break;default:return pe.assertNever(R)}return{file:S,pos:O,end:V,packageId:M}}function Ztt(s,c,g,d,h,_,S,R,T,O){if(!s||R?.()||!Sc(s.getRootFileNames(),c))return!1;let V;if(!Sc(s.getProjectReferences(),O,Ie)||s.getSourceFiles().some(re))return!1;let M=s.getMissingFilePaths();if(M&&Fh(M,h))return!1;let ee=s.getCompilerOptions();if(!VAe(ee,g)||s.resolvedLibReferences&&Fh(s.resolvedLibReferences,(Ee,Ne)=>S(Ne)))return!1;if(ee.configFile&&g.configFile)return ee.configFile.text===g.configFile.text;return!0;function re(Ee){return!ge(Ee)||_(Ee.path)}function ge(Ee){return Ee.version===d(Ee.resolvedPath,Ee.fileName)}function Ie(Ee,Ne,Te){return $re(Ee,Ne)&&_e(s.getResolvedProjectReferences()[Te],Ee)}function _e(Ee,Ne){if(Ee){if(k(V,Ee))return!0;let Ze=Uz(Ne),Pe=T(Ze);return!Pe||Ee.commandLine.options.configFile!==Pe.options.configFile||!Sc(Ee.commandLine.fileNames,Pe.fileNames)?!1:((V||(V=[])).push(Ee),!F(Ee.references,(Ke,et)=>!_e(Ke,Ee.commandLine.projectReferences[et])))}let Te=Uz(Ne);return!T(Te)}}function vQ(s){return s.options.configFile?[...s.options.configFile.parseDiagnostics,...s.errors]:s.errors}function f1e(s,c,g,d){let h=wVe(s,c,g,d);return typeof h=="object"?h.impliedNodeFormat:h}function wVe(s,c,g,d){let h=F_(d),_=3<=h&&h<=99||KW(s);return Iu(s,[".d.mts",".mts",".mjs"])?99:Iu(s,[".d.cts",".cts",".cjs"])?1:_&&Iu(s,[".d.ts",".ts",".tsx",".js",".jsx"])?S():void 0;function S(){let R=Vde(c,g,d),T=[];R.failedLookupLocations=T,R.affectingLocations=T;let O=Wde(Mo(s),R);return{impliedNodeFormat:O?.contents.packageJsonContent.type==="module"?99:1,packageJsonLocations:T,packageJsonScope:O}}}var Lrn=new Set([Z.Cannot_redeclare_block_scoped_variable_0.code,Z.A_module_cannot_have_multiple_default_exports.code,Z.Another_export_default_is_here.code,Z.The_first_export_default_is_here.code,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,Z.constructor_is_a_reserved_word.code,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,Z.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.code,Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,Z.Invalid_use_of_0_in_strict_mode.code,Z.A_label_is_not_allowed_here.code,Z.with_statements_are_not_allowed_in_strict_mode.code,Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,Z.A_class_declaration_without_the_default_modifier_must_have_a_name.code,Z.A_class_member_cannot_have_the_0_keyword.code,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,Z.A_destructuring_declaration_must_have_an_initializer.code,Z.A_get_accessor_cannot_have_parameters.code,Z.A_rest_element_cannot_contain_a_binding_pattern.code,Z.A_rest_element_cannot_have_a_property_name.code,Z.A_rest_element_cannot_have_an_initializer.code,Z.A_rest_element_must_be_last_in_a_destructuring_pattern.code,Z.A_rest_parameter_cannot_have_an_initializer.code,Z.A_rest_parameter_must_be_last_in_a_parameter_list.code,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,Z.A_return_statement_cannot_be_used_inside_a_class_static_block.code,Z.A_set_accessor_cannot_have_rest_parameter.code,Z.A_set_accessor_must_have_exactly_one_parameter.code,Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_export_declaration_cannot_have_modifiers.code,Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_import_declaration_cannot_have_modifiers.code,Z.An_object_member_cannot_be_declared_optional.code,Z.Argument_of_dynamic_import_cannot_be_spread_element.code,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,Z.Cannot_redeclare_identifier_0_in_catch_clause.code,Z.Catch_clause_variable_cannot_have_an_initializer.code,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,Z.Classes_can_only_extend_a_single_class.code,Z.Classes_may_not_have_a_field_named_constructor.code,Z.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.code,Z.Duplicate_label_0.code,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,Z.for_await_loops_cannot_be_used_inside_a_class_static_block.code,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,Z.Jump_target_cannot_cross_function_boundary.code,Z.Line_terminator_not_permitted_before_arrow.code,Z.Modifiers_cannot_appear_here.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,Z.Private_identifiers_are_not_allowed_outside_class_bodies.code,Z.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.code,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,Z.Trailing_comma_not_allowed.code,Z.Variable_declaration_list_cannot_be_empty.code,Z._0_and_1_operations_cannot_be_mixed_without_parentheses.code,Z._0_expected.code,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,Z._0_list_cannot_be_empty.code,Z._0_modifier_already_seen.code,Z._0_modifier_cannot_appear_on_a_constructor_declaration.code,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,Z._0_modifier_cannot_appear_on_a_parameter.code,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,Z._0_modifier_cannot_be_used_here.code,Z._0_modifier_must_precede_1_modifier.code,Z._0_declarations_can_only_be_declared_inside_a_block.code,Z._0_declarations_must_be_initialized.code,Z.extends_clause_already_seen.code,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,Z.Class_constructor_may_not_be_a_generator.code,Z.Class_constructor_may_not_be_an_accessor.code,Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.Private_field_0_must_be_declared_in_an_enclosing_class.code,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function jBs(s,c){return s?w0(s.getCompilerOptions(),c,Aet):!1}function zBs(s,c,g,d,h,_){return{rootNames:s,options:c,host:g,oldProgram:d,configFileParsingDiagnostics:h,typeScriptVersion:_}}function I1e(s,c,g,d,h){var _,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze;let Pe=Ki(s)?zBs(s,c,g,d,h):s,{rootNames:Ke,options:et,configFileParsingDiagnostics:Ye,projectReferences:Tt,typeScriptVersion:at,host:Qe}=Pe,{oldProgram:Ct}=Pe;Pe=void 0,s=void 0;for(let br of $Ot)if(Da(et,br.name)&&typeof et[br.name]=="string")throw new Error(`${br.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);let mt=LA(()=>Ln("ignoreDeprecations",Z.Invalid_value_for_ignoreDeprecations)),yt,Rt,Lt,je,Wt,_r,Gt,it,Dt,tr=r5t(zl),ur,Gr,dt,pr,ot,ir,qt,Yt,Tr,mn=typeof et.maxNodeModuleJsDepth=="number"?et.maxNodeModuleJsDepth:0,jn=0,Zi=new Map,Ns=new Map;(_=ki)==null||_.push(ki.Phase.Program,"createProgram",{configFilePath:et.configFilePath,rootDir:et.rootDir},!0),Mc("beforeProgram");let An=Qe||U3t(et),si=NVe(An),ks=et.noLib,Ic=LA(()=>An.getDefaultLibFileName(et)),ou=An.getDefaultLibLocation?An.getDefaultLibLocation():Mo(Ic()),Zn=!1,ya=An.getCurrentDirectory(),Fl=Az(et),ba=dz(et,Fl),Oo=new Map,hc,yr,hn,Pi,co=An.hasInvalidatedResolutions||As;An.resolveModuleNameLiterals?(Pi=An.resolveModuleNameLiterals.bind(An),hn=(S=An.getModuleResolutionCache)==null?void 0:S.call(An)):An.resolveModuleNames?(Pi=(br,sn,ei,is,Qs,Po)=>An.resolveModuleNames(br.map(e5t),sn,Po?.map(e5t),ei,is,Qs).map(Ps=>Ps?Ps.extension!==void 0?{resolvedModule:Ps}:{resolvedModule:{...Ps,extension:Iz(Ps.resolvedFileName)}}:Frn),hn=(R=An.getModuleResolutionCache)==null?void 0:R.call(An)):(hn=Hie(ya,rC,et),Pi=(br,sn,ei,is,Qs)=>p1e(br,sn,ei,is,Qs,An,hn,Gtt));let pa;if(An.resolveTypeReferenceDirectiveReferences)pa=An.resolveTypeReferenceDirectiveReferences.bind(An);else if(An.resolveTypeReferenceDirectives)pa=(br,sn,ei,is,Qs)=>An.resolveTypeReferenceDirectives(br.map(t5t),sn,ei,is,Qs?.impliedNodeFormat).map(Po=>({resolvedTypeReferenceDirective:Po}));else{let br=eVe(ya,rC,void 0,hn?.getPackageJsonInfoCache(),hn?.optionsToRedirectsKey);pa=(sn,ei,is,Qs,Po)=>p1e(sn,ei,is,Qs,Po,An,br,vVe)}let Pa=An.hasInvalidatedLibResolutions||As,$c;if(An.resolveLibrary)$c=An.resolveLibrary.bind(An);else{let br=Hie(ya,rC,et,hn?.getPackageJsonInfoCache());$c=(sn,ei,is)=>tVe(sn,ei,is,An,br)}let Qu=new Map,Rg=new Map,Cs=Al(),Tu,Wr=new Map,Wn=new Map,pt=An.useCaseSensitiveFileNames()?new Map:void 0,on,st,nr,Zr,Kr=!!((T=An.useSourceOfProjectReferenceRedirect)!=null&&T.call(An))&&!et.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:Dn,fileExists:hr,directoryExists:En}=qBs({compilerHost:An,getSymlinkCache:_S,useSourceOfProjectReferenceRedirect:Kr,toPath:Mn,getResolvedProjectReferences:dg,getRedirectFromOutput:KI,forEachResolvedProjectReference:fI}),Ni=An.readFile.bind(An);(O=ki)==null||O.push(ki.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!Ct});let Gi=jBs(Ct,et);(V=ki)==null||V.pop();let nn;if((M=ki)==null||M.push(ki.Phase.Program,"tryReuseStructureFromOldProgram",{}),nn=fs(),(ee=ki)==null||ee.pop(),nn!==2){if(yt=[],Rt=[],Tt&&(on||(on=Tt.map(WN)),Ke.length&&on?.forEach((br,sn)=>{if(!br)return;let ei=br.commandLine.options.outFile;if(Kr){if(ei||a0(br.commandLine.options)===0)for(let is of br.commandLine.fileNames)Pb(is,{kind:1,index:sn})}else if(ei)Pb(yN(ei,".d.ts"),{kind:2,index:sn});else if(a0(br.commandLine.options)===0){let is=LA(()=>HU(br.commandLine,!An.useCaseSensitiveFileNames()));for(let Qs of br.commandLine.fileNames)!MC(Qs)&&!lA(Qs,".json")&&Pb(jde(Qs,br.commandLine,!An.useCaseSensitiveFileNames(),is),{kind:2,index:sn})}})),(re=ki)==null||re.push(ki.Phase.Program,"processRootFiles",{count:Ke.length}),F(Ke,(br,sn)=>Vg(br,!1,!1,{kind:0,index:sn})),(ge=ki)==null||ge.pop(),ur??(ur=Ke.length?q9e(et,An):E),Gr=Mie(),ur.length){(Ie=ki)==null||Ie.push(ki.Phase.Program,"processTypeReferences",{count:ur.length});let br=et.configFilePath?Mo(et.configFilePath):ya,sn=To(br,$de),ei=Vn(ur,sn);for(let is=0;is{Vg(Xx(sn),!0,!1,{kind:6,index:ei})})}Lt=yo(yt,tn).concat(Rt),yt=void 0,Rt=void 0,Gt=void 0}if(Ct&&An.onReleaseOldSourceFile){let br=Ct.getSourceFiles();for(let sn of br){let ei=Jg(sn.resolvedPath);(Gi||!ei||ei.impliedNodeFormat!==sn.impliedNodeFormat||sn.resolvedPath===sn.path&&ei.resolvedPath!==sn.path)&&An.onReleaseOldSourceFile(sn,Ct.getCompilerOptions(),!!Jg(sn.path),ei)}An.getParsedCommandLine||Ct.forEachResolvedProjectReference(sn=>{I_(sn.sourceFile.path)||An.onReleaseOldSourceFile(sn.sourceFile,Ct.getCompilerOptions(),!1,void 0)})}Ct&&An.onReleaseParsedCommandLine&&Bz(Ct.getProjectReferences(),Ct.getResolvedProjectReferences(),(br,sn,ei)=>{let is=sn?.commandLine.projectReferences[ei]||Ct.getProjectReferences()[ei],Qs=Uz(is);st?.has(Mn(Qs))||An.onReleaseParsedCommandLine(Qs,br,Ct.getCompilerOptions())}),Ct=void 0,pr=void 0,ir=void 0,Yt=void 0;let bn={getRootFileNames:()=>Ke,getSourceFile:qp,getSourceFileByPath:Jg,getSourceFiles:()=>Lt,getMissingFilePaths:()=>Wn,getModuleResolutionCache:()=>hn,getFilesByNameMap:()=>Wr,getCompilerOptions:()=>et,getSyntacticDiagnostics:mS,getOptionsDiagnostics:Ss,getGlobalDiagnostics:el,getSemanticDiagnostics:Au,getCachedSemanticDiagnostics:Eg,getSuggestionDiagnostics:mr,getDeclarationDiagnostics:oi,getBindAndCheckDiagnostics:zA,getProgramDiagnostics:NA,getTypeChecker:Ip,getClassifiableNames:es,getCommonSourceDirectory:ci,emit:kl,getCurrentDirectory:()=>ya,getNodeCount:()=>Ip().getNodeCount(),getIdentifierCount:()=>Ip().getIdentifierCount(),getSymbolCount:()=>Ip().getSymbolCount(),getTypeCount:()=>Ip().getTypeCount(),getInstantiationCount:()=>Ip().getInstantiationCount(),getRelationCacheSizes:()=>Ip().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>tr.getFileProcessingDiagnostics(),getAutomaticTypeDirectiveNames:()=>ur,getAutomaticTypeDirectiveResolutions:()=>Gr,isSourceFileFromExternalLibrary:RI,isSourceFileDefaultLibrary:pI,getModeForUsageLocation:wv,getEmitSyntaxForUsageLocation:$F,getModeForResolutionAtIndex:d9,getSourceFileFromReference:B1,getLibFileFromReference:lh,sourceFileToPackageName:Rg,redirectTargetsMap:Cs,usesUriStyleNodeCoreModules:Tu,resolvedModules:ot,resolvedTypeReferenceDirectiveNames:qt,resolvedLibReferences:dt,getProgramDiagnosticsContainer:()=>tr,getResolvedModule:ds,getResolvedModuleFromModuleSpecifier:Ht,getResolvedTypeReferenceDirective:cn,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:wt,forEachResolvedModule:xe,forEachResolvedTypeReferenceDirective:fr,getCurrentPackagesMap:()=>Tr,typesPackageExists:Hn,packageBundlesTypes:Mt,isEmittedFile:QC,getConfigFileParsingDiagnostics:Fd,getProjectReferences:yu,getResolvedProjectReferences:dg,getRedirectFromSourceFile:lf,getResolvedProjectReferenceByPath:I_,forEachResolvedProjectReference:fI,isSourceOfProjectReferenceRedirect:E2,getRedirectFromOutput:KI,getCompilerOptionsForFile:py,getDefaultResolutionModeForFile:Qy,getEmitModuleFormatOfFile:dR,getImpliedNodeFormatForEmit:gk,shouldTransformImportCall:XB,emitBuildInfo:Ag,fileExists:hr,readFile:Ni,directoryExists:En,getSymlinkCache:_S,realpath:(Te=An.realpath)==null?void 0:Te.bind(An),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getCanonicalFileName:rC,getFileIncludeReasons:()=>tr.getFileReasons(),structureIsReused:nn,writeFile:mc,getGlobalTypingsCacheLocation:$i(An,An.getGlobalTypingsCacheLocation)};return Dn(),Zn||ct(),Mc("afterProgram"),Pf("Program","beforeProgram","afterProgram"),(Ze=ki)==null||Ze.pop(),bn;function ds(br,sn,ei){var is;return(is=ot?.get(br.path))==null?void 0:is.get(sn,ei)}function Ht(br,sn){return sn??(sn=ms(br)),pe.assertIsDefined(sn,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),ds(sn,br.text,wv(sn,br))}function cn(br,sn,ei){var is;return(is=qt?.get(br.path))==null?void 0:is.get(sn,ei)}function wt(br,sn){return cn(sn,br.fileName,nO(br,sn))}function xe(br,sn){Ue(ot,br,sn)}function fr(br,sn){Ue(qt,br,sn)}function Ue(br,sn,ei){var is;ei?(is=br?.get(ei.path))==null||is.forEach((Qs,Po,Ps)=>sn(Qs,Po,Ps,ei.path)):br?.forEach((Qs,Po)=>Qs.forEach((Ps,ao,Yc)=>sn(Ps,ao,Yc,Po)))}function In(){return Tr||(Tr=new Map,xe(({resolvedModule:br})=>{br?.packageId&&Tr.set(br.packageId.name,br.extension===".d.ts"||!!Tr.get(br.packageId.name))}),Tr)}function Hn(br){return In().has(nVe(br))}function Mt(br){return!!In().get(br)}function $r(br){var sn;(sn=br.resolutionDiagnostics)!=null&&sn.length&&tr.addFileProcessingDiagnostic({kind:2,diagnostics:br.resolutionDiagnostics})}function ri(br,sn,ei,is){if(An.resolveModuleNameLiterals||!An.resolveModuleNames)return $r(ei);if(!hn||Xr(sn))return;let Qs=Xc(br.originalFileName,ya),Po=Mo(Qs),Ps=Ys(br),ao=hn.getFromNonRelativeNameCache(sn,is,Po,Ps);ao&&$r(ao)}function oo(br,sn,ei){var is,Qs;let Po=Xc(sn.originalFileName,ya),Ps=Ys(sn);(is=ki)==null||is.push(ki.Phase.Program,"resolveModuleNamesWorker",{containingFileName:Po}),Mc("beforeResolveModule");let ao=Pi(br,Po,Ps,et,sn,ei);return Mc("afterResolveModule"),Pf("ResolveModule","beforeResolveModule","afterResolveModule"),(Qs=ki)==null||Qs.pop(),ao}function Bs(br,sn,ei){var is,Qs;let Po=Xs(sn)?void 0:sn,Ps=Xs(sn)?sn:Xc(sn.originalFileName,ya),ao=Po&&Ys(Po);(is=ki)==null||is.push(ki.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:Ps}),Mc("beforeResolveTypeReference");let Yc=pa(br,Ps,ao,et,Po,ei);return Mc("afterResolveTypeReference"),Pf("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(Qs=ki)==null||Qs.pop(),Yc}function Ys(br){var sn,ei;let is=lf(br.originalFileName);if(is||!MC(br.originalFileName))return is?.resolvedRef;let Qs=(sn=KI(br.path))==null?void 0:sn.resolvedRef;if(Qs)return Qs;if(!An.realpath||!et.preserveSymlinks||!br.originalFileName.includes(Yx))return;let Po=Mn(An.realpath(br.originalFileName));return Po===br.path||(ei=KI(Po))==null?void 0:ei.resolvedRef}function tn(br,sn){return Zt(Bn(br),Bn(sn))}function Bn(br){if(zh(ou,br.fileName,!1)){let sn=dp(br.fileName);if(sn==="lib.d.ts"||sn==="lib.es6.d.ts")return 0;let ei=aa(Gm(sn,"lib."),".d.ts"),is=F9e.indexOf(ei);if(is!==-1)return is+1}return F9e.length+2}function Mn(br){return Pu(br,ya,rC)}function ci(){let br=tr.getCommonSourceDirectory();if(br!==void 0)return br;let sn=Le(Lt,ei=>xW(ei,bn));return br=zde(et,()=>Xt(sn,ei=>ei.isDeclarationFile?void 0:ei.fileName),ya,rC,ei=>CS(sn,ei)),tr.setCommonSourceDirectory(br),br}function es(){var br;if(!_r){Ip(),_r=new Set;for(let sn of Lt)(br=sn.classifiableNames)==null||br.forEach(ei=>_r.add(ei))}return _r}function Oi(br,sn){return Ui({entries:br,containingFile:sn,containingSourceFile:sn,redirectedReference:Ys(sn),nameAndModeGetter:SVe,resolutionWorker:oo,getResolutionFromOldProgram:(ei,is)=>Ct?.getResolvedModule(sn,ei,is),getResolved:PL,canReuseResolutionsInFile:()=>sn===Ct?.getSourceFile(sn.fileName)&&!co(sn.path),resolveToOwnAmbientModule:!0})}function Vn(br,sn){let ei=Xs(sn)?void 0:sn;return Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:ei&&Ys(ei),nameAndModeGetter:Zrn,resolutionWorker:Bs,getResolutionFromOldProgram:(is,Qs)=>{var Po;return ei?Ct?.getResolvedTypeReferenceDirective(ei,is,Qs):(Po=Ct?.getAutomaticTypeDirectiveResolutions())==null?void 0:Po.get(is,Qs)},getResolved:E7,canReuseResolutionsInFile:()=>ei?ei===Ct?.getSourceFile(ei.fileName)&&!co(ei.path):!co(Mn(sn))})}function Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:is,nameAndModeGetter:Qs,resolutionWorker:Po,getResolutionFromOldProgram:Ps,getResolved:ao,canReuseResolutionsInFile:Yc,resolveToOwnAmbientModule:ru}){if(!br.length)return E;if(nn===0&&(!ru||!ei.ambientModuleNames.length))return Po(br,sn,void 0);let $a,nu,ul,Gf,Hb=Yc();for(let h_=0;h_ul[nu[UB]]=h_),ul):JB}function gs(){return!Bz(Ct.getProjectReferences(),Ct.getResolvedProjectReferences(),(br,sn,ei)=>{let is=(sn?sn.commandLine.projectReferences:Tt)[ei],Qs=WN(is);return br?!Qs||Qs.sourceFile!==br.sourceFile||!Sc(br.commandLine.fileNames,Qs.commandLine.fileNames):Qs!==void 0},(br,sn)=>{let ei=sn?I_(sn.sourceFile.path).commandLine.projectReferences:Tt;return!Sc(br,ei,$re)})}function fs(){var br;if(!Ct)return 0;let sn=Ct.getCompilerOptions();if(YJ(sn,et))return 0;let ei=Ct.getRootFileNames();if(!Sc(ei,Ke)||!gs())return 0;Tt&&(on=Tt.map(WN));let is=[],Qs=[];if(nn=2,Fh(Ct.getMissingFilePaths(),$a=>An.fileExists($a)))return 0;let Po=Ct.getSourceFiles(),Ps;($a=>{$a[$a.Exists=0]="Exists",$a[$a.Modified=1]="Modified"})(Ps||(Ps={}));let ao=new Map;for(let $a of Po){let nu=Yl($a.fileName,hn,An,et),ul=An.getSourceFileByPath?An.getSourceFileByPath($a.fileName,$a.resolvedPath,nu,void 0,Gi):An.getSourceFile($a.fileName,nu,void 0,Gi);if(!ul)return 0;ul.packageJsonLocations=(br=nu.packageJsonLocations)!=null&&br.length?nu.packageJsonLocations:void 0,ul.packageJsonScope=nu.packageJsonScope,pe.assert(!ul.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let Gf;if($a.redirectInfo){if(ul!==$a.redirectInfo.unredirected)return 0;Gf=!1,ul=$a}else if(Ct.redirectTargetsMap.has($a.path)){if(ul!==$a)return 0;Gf=!1}else Gf=ul!==$a;ul.path=$a.path,ul.originalFileName=$a.originalFileName,ul.resolvedPath=$a.resolvedPath,ul.fileName=$a.fileName;let Hb=Ct.sourceFileToPackageName.get($a.path);if(Hb!==void 0){let JB=ao.get(Hb),h_=Gf?1:0;if(JB!==void 0&&h_===1||JB===1)return 0;ao.set(Hb,h_)}Gf?($a.impliedNodeFormat!==ul.impliedNodeFormat?nn=1:Sc($a.libReferenceDirectives,ul.libReferenceDirectives,Ef)?$a.hasNoDefaultLib!==ul.hasNoDefaultLib?nn=1:Sc($a.referencedFiles,ul.referencedFiles,Ef)?(Zp(ul),Sc($a.imports,ul.imports,om)&&Sc($a.moduleAugmentations,ul.moduleAugmentations,om)?($a.flags&12582912)!==(ul.flags&12582912)?nn=1:Sc($a.typeReferenceDirectives,ul.typeReferenceDirectives,Ef)||(nn=1):nn=1):nn=1:nn=1,Qs.push(ul)):co($a.path)&&(nn=1,Qs.push(ul)),is.push(ul)}if(nn!==2)return nn;for(let $a of Qs){let nu=Wrn($a),ul=Oi(nu,$a);(ir??(ir=new Map)).set($a.path,ul);let Gf=py($a);ene(nu,ul,R1=>Ct.getResolvedModule($a,R1.text,EVe($a,R1,Gf)),Gge)&&(nn=1);let JB=$a.typeReferenceDirectives,h_=Vn(JB,$a);(Yt??(Yt=new Map)).set($a.path,h_),ene(JB,h_,R1=>Ct.getResolvedTypeReferenceDirective($a,t5t(R1),nO(R1,$a)),Fge)&&(nn=1)}if(nn!==2)return nn;if(xge(sn,et)||Ct.resolvedLibReferences&&Fh(Ct.resolvedLibReferences,($a,nu)=>Jx(nu).actual!==$a.actual))return 1;if(An.hasChangedAutomaticTypeDirectiveNames){if(An.hasChangedAutomaticTypeDirectiveNames())return 1}else if(ur=q9e(et,An),!Sc(Ct.getAutomaticTypeDirectiveNames(),ur))return 1;Wn=Ct.getMissingFilePaths(),pe.assert(is.length===Ct.getSourceFiles().length);for(let $a of is)Wr.set($a.path,$a);Ct.getFilesByNameMap().forEach(($a,nu)=>{if(!$a){Wr.set(nu,$a);return}if($a.path===nu){Ct.isSourceFileFromExternalLibrary($a)&&Ns.set($a.path,!0);return}Wr.set(nu,Wr.get($a.path))});let ru=sn.configFile&&sn.configFile===et.configFile||!sn.configFile&&!et.configFile&&!w0(sn,et,Xw);return tr.reuseStateFromOldProgram(Ct.getProgramDiagnosticsContainer(),ru),Zn=ru,Lt=is,ur=Ct.getAutomaticTypeDirectiveNames(),Gr=Ct.getAutomaticTypeDirectiveResolutions(),Rg=Ct.sourceFileToPackageName,Cs=Ct.redirectTargetsMap,Tu=Ct.usesUriStyleNodeCoreModules,ot=Ct.resolvedModules,qt=Ct.resolvedTypeReferenceDirectiveNames,dt=Ct.resolvedLibReferences,Tr=Ct.getCurrentPackagesMap(),2}function bi(br){return{getCanonicalFileName:rC,getCommonSourceDirectory:bn.getCommonSourceDirectory,getCompilerOptions:bn.getCompilerOptions,getCurrentDirectory:()=>ya,getSourceFile:bn.getSourceFile,getSourceFileByPath:bn.getSourceFileByPath,getSourceFiles:bn.getSourceFiles,isSourceFileFromExternalLibrary:RI,getRedirectFromSourceFile:lf,isSourceOfProjectReferenceRedirect:E2,getSymlinkCache:_S,writeFile:br||mc,isEmitBlocked:bu,shouldTransformImportCall:XB,getEmitModuleFormatOfFile:dR,getDefaultResolutionModeForFile:Qy,getModeForResolutionAtIndex:d9,readFile:sn=>An.readFile(sn),fileExists:sn=>{let ei=Mn(sn);return Jg(ei)?!0:Wn.has(ei)?!1:An.fileExists(sn)},realpath:$i(An,An.realpath),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getBuildInfo:()=>{var sn;return(sn=bn.getBuildInfo)==null?void 0:sn.call(bn)},getSourceFileFromReference:(sn,ei)=>bn.getSourceFileFromReference(sn,ei),redirectTargetsMap:Cs,getFileIncludeReasons:bn.getFileIncludeReasons,createHash:$i(An,An.createHash),getModuleResolutionCache:()=>bn.getModuleResolutionCache(),trace:$i(An,An.trace),getGlobalTypingsCacheLocation:bn.getGlobalTypingsCacheLocation}}function mc(br,sn,ei,is,Qs,Po){An.writeFile(br,sn,ei,is,Qs,Po)}function Ag(br){var sn,ei;(sn=ki)==null||sn.push(ki.Phase.Emit,"emitBuildInfo",{},!0),Mc("beforeEmit");let is=_tt(P3t,bi(br),void 0,Z3t,!1,!0);return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),(ei=ki)==null||ei.pop(),is}function dg(){return on}function yu(){return Tt}function RI(br){return!!Ns.get(br.path)}function pI(br){if(!br.isDeclarationFile)return!1;if(br.hasNoDefaultLib)return!0;if(et.noLib)return!1;let sn=An.useCaseSensitiveFileNames()?YA:Yp;return et.lib?zt(et.lib,ei=>{let is=dt.get(ei);return!!is&&sn(br.fileName,is.actual)}):sn(br.fileName,Ic())}function Ip(){return Wt||(Wt=UPt(bn))}function kl(br,sn,ei,is,Qs,Po,Ps){var ao,Yc;(ao=ki)==null||ao.push(ki.Phase.Emit,"emit",{path:br?.path},!0);let ru=JI(()=>sm(bn,br,sn,ei,is,Qs,Po,Ps));return(Yc=ki)==null||Yc.pop(),ru}function bu(br){return Oo.has(Mn(br))}function sm(br,sn,ei,is,Qs,Po,Ps,ao){if(!Ps){let nu=Vtt(br,sn,ei,is);if(nu)return nu}let Yc=Ip(),ru=Yc.getEmitResolver(et.outFile?void 0:sn,is,Ctt(Qs,Ps));Mc("beforeEmit");let $a=Yc.runWithCancellationToken(is,()=>_tt(ru,bi(ei),sn,L3t(et,Po,Qs),Qs,!1,Ps,ao));return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),$a}function qp(br){return Jg(Mn(br))}function Jg(br){return Wr.get(br)||void 0}function ch(br,sn,ei){return ui(br?sn(br,ei):jt(bn.getSourceFiles(),is=>(ei&&ei.throwIfCancellationRequested(),sn(is,ei))))}function mS(br,sn){return ch(br,tp,sn)}function Au(br,sn,ei){return ch(br,(is,Qs)=>Wh(is,Qs,ei),sn)}function Eg(br){return it?.get(br.path)}function zA(br,sn){return HC(br,sn,void 0)}function NA(br){var sn;if(L3(br,et,bn))return E;let ei=tr.getCombinedDiagnostics(bn).getDiagnostics(br.fileName);return(sn=br.commentDirectives)!=null&&sn.length?ve(br,br.commentDirectives,ei).diagnostics:ei}function oi(br,sn){return ch(br,Go,sn)}function tp(br){return o0(br)?(br.additionalSyntacticDiagnostics||(br.additionalSyntacticDiagnostics=ni(br)),Nn(br.additionalSyntacticDiagnostics,br.parseDiagnostics)):br.parseDiagnostics}function JI(br){try{return br()}catch(sn){throw sn instanceof Ry&&(Wt=void 0),sn}}function Wh(br,sn,ei){return Nn(RVe(HC(br,sn,ei),et),NA(br))}function HC(br,sn,ei){if(ei)return bf(br,sn,ei);let is=it?.get(br.path);return is||(it??(it=new Map)).set(br.path,is=bf(br,sn)),is}function bf(br,sn,ei){return JI(()=>{if(L3(br,et,bn))return E;let is=Ip();pe.assert(!!br.bindDiagnostics);let Qs=br.scriptKind===1||br.scriptKind===2,Po=ZY(br,et.checkJs),Ps=Qs&&hz(br,et),ao=br.bindDiagnostics,Yc=is.getDiagnostics(br,sn,ei);return Po&&(ao=Le(ao,ru=>Lrn.has(ru.code)),Yc=Le(Yc,ru=>Lrn.has(ru.code))),UI(br,!Po,!!ei,ao,Yc,Ps?br.jsDocDiagnostics:void 0)})}function UI(br,sn,ei,...is){var Qs;let Po=Sr(is);if(!sn||!((Qs=br.commentDirectives)!=null&&Qs.length))return Po;let{diagnostics:Ps,directives:ao}=ve(br,br.commentDirectives,Po);if(ei)return Ps;for(let Yc of ao.getUnusedExpectations())Ps.push(kn(br,Yc.range,Z.Unused_ts_expect_error_directive));return Ps}function ve(br,sn,ei){let is=Oge(br,sn);return{diagnostics:ei.filter(Po=>ln(Po,is)===-1),directives:is}}function mr(br,sn){return JI(()=>Ip().getSuggestionDiagnostics(br,sn))}function ln(br,sn){let{file:ei,start:is}=br;if(!ei)return-1;let Qs=rn(ei),Po=Ci(Qs,is).line-1;for(;Po>=0;){if(sn.markUsed(Po))return Po;let Ps=ei.text.slice(Qs[Po],Qs[Po+1]).trim();if(Ps!==""&&!/^\s*\/\/.*$/.test(Ps))return-1;Po--}return-1}function ni(br){return JI(()=>{let sn=[];return ei(br,br),Wz(br,ei,is),sn;function ei(ao,Yc){switch(Yc.kind){case 170:case 173:case 175:if(Yc.questionToken===ao)return sn.push(Ps(ao,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 174:case 177:case 178:case 179:case 219:case 263:case 220:case 261:if(Yc.type===ao)return sn.push(Ps(ao,Z.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(ao.kind){case 274:if(ao.isTypeOnly)return sn.push(Ps(Yc,Z._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 279:if(ao.isTypeOnly)return sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 277:case 282:if(ao.isTypeOnly)return sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,dy(ao)?"import...type":"export...type")),"skip";break;case 272:return sn.push(Ps(ao,Z.import_can_only_be_used_in_TypeScript_files)),"skip";case 278:if(ao.isExportEquals)return sn.push(Ps(ao,Z.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 299:if(ao.token===119)return sn.push(Ps(ao,Z.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 265:let $a=Vi(120);return pe.assertIsDefined($a),sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,$a)),"skip";case 268:let nu=ao.flags&32?Vi(145):Vi(144);return pe.assertIsDefined(nu),sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,nu)),"skip";case 266:return sn.push(Ps(ao,Z.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 177:case 175:case 263:return ao.body?void 0:(sn.push(Ps(ao,Z.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 267:let ul=pe.checkDefined(Vi(94));return sn.push(Ps(ao,Z._0_declarations_can_only_be_used_in_TypeScript_files,ul)),"skip";case 236:return sn.push(Ps(ao,Z.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 235:return sn.push(Ps(ao.type,Z.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 239:return sn.push(Ps(ao.type,Z.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 217:pe.fail()}}function is(ao,Yc){if($$e(Yc)){let ru=de(Yc.modifiers,Eo);ru&&sn.push(Ps(ru,Z.Decorators_are_not_valid_here))}else if(mQ(Yc)&&Yc.modifiers){let ru=Se(Yc.modifiers,Eo);if(ru>=0){if(Si(Yc)&&!et.experimentalDecorators)sn.push(Ps(Yc.modifiers[ru],Z.Decorators_are_not_valid_here));else if(mm(Yc)){let $a=Se(Yc.modifiers,y);if($a>=0){let nu=Se(Yc.modifiers,w);if(ru>$a&&nu>=0&&ru=0&&ru<$a){let ul=Se(Yc.modifiers,Eo,$a);ul>=0&&sn.push(ug(Ps(Yc.modifiers[ul],Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Ps(Yc.modifiers[ru],Z.Decorator_used_before_export_here)))}}}}}switch(Yc.kind){case 264:case 232:case 175:case 177:case 178:case 179:case 219:case 263:case 220:if(ao===Yc.typeParameters)return sn.push(Po(ao,Z.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 244:if(ao===Yc.modifiers)return Qs(Yc.modifiers,Yc.kind===244),"skip";break;case 173:if(ao===Yc.modifiers){for(let ru of ao)hg(ru)&&ru.kind!==126&&ru.kind!==129&&sn.push(Ps(ru,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(ru.kind)));return"skip"}break;case 170:if(ao===Yc.modifiers&&zt(ao,hg))return sn.push(Po(ao,Z.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 214:case 215:case 234:case 286:case 287:case 216:if(ao===Yc.typeArguments)return sn.push(Po(ao,Z.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function Qs(ao,Yc){for(let ru of ao)switch(ru.kind){case 87:if(Yc)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:sn.push(Ps(ru,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(ru.kind)));break;case 126:case 95:case 90:case 129:}}function Po(ao,Yc,...ru){let $a=ao.pos;return rm(br,$a,ao.end-$a,Yc,...ru)}function Ps(ao,Yc,...ru){return SE(br,ao,Yc,...ru)}})}function Ls(br,sn){let ei=Dt?.get(br.path);return ei||(Dt??(Dt=new Map)).set(br.path,ei=Za(br,sn)),ei}function Za(br,sn){return JI(()=>{let ei=Ip().getEmitResolver(br,sn);return F3t(bi(Dc),ei,br)||E})}function Go(br,sn){return br.isDeclarationFile?E:Ls(br,sn)}function Ss(){return ui(Nn(tr.getCombinedDiagnostics(bn).getGlobalDiagnostics(),Uc()))}function Uc(){if(!et.configFile)return E;let br=tr.getCombinedDiagnostics(bn).getDiagnostics(et.configFile.fileName);return fI(sn=>{br=Nn(br,tr.getCombinedDiagnostics(bn).getDiagnostics(sn.sourceFile.fileName))}),br}function el(){return Ke.length?ui(Ip().getGlobalDiagnostics().slice()):E}function Fd(){return Ye||E}function Vg(br,sn,ei,is){b2(su(br),sn,ei,void 0,is)}function Ef(br,sn){return br.fileName===sn.fileName}function om(br,sn){return br.kind===80?sn.kind===80&&br.escapedText===sn.escapedText:sn.kind===11&&br.text===sn.text}function Sh(br,sn){let ei=me.createStringLiteral(br),is=me.createImportDeclaration(void 0,void 0,ei);return W3(is,2),UA(ei,is),UA(is,sn),ei.flags&=-17,is.flags&=-17,ei}function Zp(br){if(br.imports)return;let sn=o0(br),ei=Lm(br),is,Qs,Po;if(sn||!br.isDeclarationFile&&(uS(et)||Lm(br))){et.importHelpers&&(is=[Sh(QD,br)]);let ao=nie(rie(et,br),et);ao&&(is||(is=[])).push(Sh(ao,br))}for(let ao of br.statements)Ps(ao,!1);(br.flags&4194304||sn)&&pie(br,!0,!0,(ao,Yc)=>{t9(ao,!1),is=Ft(is,Yc)}),br.imports=is||E,br.moduleAugmentations=Qs||E,br.ambientModuleNames=Po||E;return;function Ps(ao,Yc){if(HY(ao)){let ru=KY(ao);ru&&Lg(ru)&&ru.text&&(!Yc||!Xr(ru.text))&&(t9(ao,!1),is=Ft(is,ru),!Tu&&jn===0&&!br.isDeclarationFile&&(Ac(ru.text,"node:")&&!pde.has(ru.text)?Tu=!0:Tu===void 0&&die.has(ru.text)&&(Tu=!1)))}else if(Lh(ao)&&c_(ao)&&(Yc||Ga(ao,128)||br.isDeclarationFile)){ao.name.parent=ao;let ru=A2(ao.name);if(ei||Yc&&!Xr(ru))(Qs||(Qs=[])).push(ao.name);else if(!Yc){br.isDeclarationFile&&(Po||(Po=[])).push(ru);let $a=ao.body;if($a)for(let nu of $a.statements)Ps(nu,!0)}}}}function lh(br){var sn;let ei=lEe(br),is=ei&&((sn=dt?.get(ei))==null?void 0:sn.actual);return is!==void 0?qp(is):void 0}function B1(br,sn){return W_(wtt(sn.fileName,br.fileName),qp)}function W_(br,sn,ei,is){if(B0(br)){let Qs=An.getCanonicalFileName(br);if(!et.allowNonTsExtensions&&!F(Sr(ba),Ps=>lA(Qs,Ps))){ei&&(_N(Qs)?ei(Z.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,br):ei(Z.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,br,"'"+Sr(Fl).join("', '")+"'"));return}let Po=sn(br);if(ei)if(Po)i5(is)&&Qs===An.getCanonicalFileName(Jg(is.file).fileName)&&ei(Z.A_file_cannot_have_a_reference_to_itself);else{let Ps=lf(br);Ps?.outputDts?ei(Z.Output_file_0_has_not_been_built_from_source_file_1,Ps.outputDts,br):ei(Z.File_0_not_found,br)}return Po}else{let Qs=et.allowNonTsExtensions&&sn(br);if(Qs)return Qs;if(ei&&et.allowNonTsExtensions){ei(Z.File_0_not_found,br);return}let Po=F(Fl[0],Ps=>sn(br+Ps));return ei&&!Po&&ei(Z.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,br,"'"+Sr(Fl).join("', '")+"'"),Po}}function b2(br,sn,ei,is,Qs){W_(br,Po=>Js(Po,sn,ei,Qs,is),(Po,...Ps)=>$s(void 0,Qs,Po,Ps),Qs)}function Pb(br,sn){return b2(br,!1,!1,void 0,sn)}function or(br,sn,ei){!i5(ei)&&zt(tr.getFileReasons().get(sn.path),i5)?$s(sn,ei,Z.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[sn.fileName,br]):$s(sn,ei,Z.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[br,sn.fileName])}function qn(br,sn,ei,is,Qs,Po,Ps){var ao;let Yc=q3.createRedirectedSourceFile({redirectTarget:br,unredirected:sn});return Yc.fileName=ei,Yc.path=is,Yc.resolvedPath=Qs,Yc.originalFileName=Po,Yc.packageJsonLocations=(ao=Ps.packageJsonLocations)!=null&&ao.length?Ps.packageJsonLocations:void 0,Yc.packageJsonScope=Ps.packageJsonScope,Ns.set(is,jn>0),Yc}function Js(br,sn,ei,is,Qs){var Po,Ps;(Po=ki)==null||Po.push(ki.Phase.Program,"findSourceFile",{fileName:br,isDefaultLib:sn||void 0,fileIncludeKind:ry[is.kind]});let ao=DA(br,sn,ei,is,Qs);return(Ps=ki)==null||Ps.pop(),ao}function Yl(br,sn,ei,is){let Qs=wVe(Xc(br,ya),sn?.getPackageJsonInfoCache(),ei,is),Po=Hg(is),Ps=qne(is);return typeof Qs=="object"?{...Qs,languageVersion:Po,setExternalModuleIndicator:Ps,jsDocParsingMode:ei.jsDocParsingMode}:{languageVersion:Po,impliedNodeFormat:Qs,setExternalModuleIndicator:Ps,jsDocParsingMode:ei.jsDocParsingMode}}function DA(br,sn,ei,is,Qs){var Po,Ps;let ao=Mn(br);if(Kr){let ul=KI(ao);if(!ul&&An.realpath&&et.preserveSymlinks&&MC(br)&&br.includes(Yx)){let Gf=Mn(An.realpath(br));Gf!==ao&&(ul=KI(Gf))}if(ul?.source){let Gf=Js(ul.source,sn,ei,is,Qs);return Gf&&AA(Gf,ao,br,void 0),Gf}}let Yc=br;if(Wr.has(ao)){let ul=Wr.get(ao),Gf=kA(ul||void 0,is,!0);if(ul&&Gf&&et.forceConsistentCasingInFileNames!==!1){let Hb=ul.fileName;Mn(Hb)!==Mn(br)&&(br=((Po=lf(br))==null?void 0:Po.outputDts)||br);let h_=tN(Hb,ya),UB=tN(br,ya);h_!==UB&&or(br,ul,is)}return ul&&Ns.get(ul.path)&&jn===0?(Ns.set(ul.path,!1),et.noResolve||(YC(ul,sn),w1(ul)),et.noLib||Mb(ul),Zi.set(ul.path,!1),AR(ul)):ul&&Zi.get(ul.path)&&jn$s(void 0,is,Z.Cannot_read_file_0_Colon_1,[br,ul]),Gi);if(Qs){let ul=AN(Qs),Gf=Qu.get(ul);if(Gf){let Hb=qn(Gf,nu,br,ao,Mn(br),Yc,$a);return Cs.add(Gf.path,br),AA(Hb,ao,br,ru),kA(Hb,is,!1),Rg.set(ao,JJ(Qs)),Rt.push(Hb),Hb}else nu&&(Qu.set(ul,nu),Rg.set(ao,JJ(Qs)))}if(AA(nu,ao,br,ru),nu){if(Ns.set(ao,jn>0),nu.fileName=br,nu.path=ao,nu.resolvedPath=Mn(br),nu.originalFileName=Yc,nu.packageJsonLocations=(Ps=$a.packageJsonLocations)!=null&&Ps.length?$a.packageJsonLocations:void 0,nu.packageJsonScope=$a.packageJsonScope,kA(nu,is,!1),An.useCaseSensitiveFileNames()){let ul=Qm(ao),Gf=pt.get(ul);Gf?or(br,Gf,is):pt.set(ul,nu)}ks=ks||nu.hasNoDefaultLib&&!ei,et.noResolve||(YC(nu,sn),w1(nu)),et.noLib||Mb(nu),AR(nu),sn?yt.push(nu):Rt.push(nu),(Gt??(Gt=new Set)).add(nu.path)}return nu}function kA(br,sn,ei){return br&&(!ei||!i5(sn)||!Gt?.has(sn.file))?(tr.getFileReasons().add(br.path,sn),!0):!1}function AA(br,sn,ei,is){is?(ym(ei,is,br),ym(ei,sn,br||!1)):ym(ei,sn,br)}function ym(br,sn,ei){Wr.set(sn,ei),ei!==void 0?Wn.delete(sn):Wn.set(sn,br)}function lf(br){return nr?.get(Mn(br))}function fI(br){return Iie(on,br)}function KI(br){return Zr?.get(br)}function E2(br){return Kr&&!!lf(br)}function I_(br){if(st)return st.get(br)||void 0}function YC(br,sn){F(br.referencedFiles,(ei,is)=>{b2(wtt(ei.fileName,br.fileName),sn,!1,void 0,{kind:4,file:br.path,index:is})})}function w1(br){let sn=br.typeReferenceDirectives;if(!sn.length)return;let ei=Yt?.get(br.path)||Vn(sn,br),is=Mie();(qt??(qt=new Map)).set(br.path,is);for(let Qs=0;Qs{let is=lEe(sn);is?Vg(Xx(is),!0,!0,{kind:7,file:br.path,index:ei}):tr.addFileProcessingDiagnostic({kind:0,reason:{kind:7,file:br.path,index:ei}})})}function rC(br){return An.getCanonicalFileName(br)}function AR(br){if(Zp(br),br.imports.length||br.moduleAugmentations.length){let sn=Wrn(br),ei=ir?.get(br.path)||Oi(sn,br);pe.assert(ei.length===sn.length);let is=py(br),Qs=Mie();(ot??(ot=new Map)).set(br.path,Qs);for(let Po=0;Pomn,Hb=ul&&!Wtt(is,Ps,br)&&!is.noResolve&&PoHU(Ps.commandLine,!An.useCaseSensitiveFileNames()));Qs.fileNames.forEach(ru=>{let $a=Mn(ru),nu;!MC(ru)&&!lA(ru,".json")&&(Qs.options.outFile?nu=ao:(nu=jde(ru,Ps.commandLine,!An.useCaseSensitiveFileNames(),Yc),Zr.set(Mn(nu),{resolvedRef:Ps,source:ru}))),nr.set($a,{resolvedRef:Ps,outputDts:nu})})}return Qs.projectReferences&&(Ps.references=Qs.projectReferences.map(WN)),Ps}function ct(){et.strictPropertyInitialization&&!u_(et,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks"),et.exactOptionalPropertyTypes&&!u_(et,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"exactOptionalPropertyTypes","strictNullChecks"),(et.isolatedModules||et.verbatimModuleSyntax)&&et.outFile&&gr(Z.Option_0_cannot_be_specified_with_option_1,"outFile",et.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules"),et.isolatedDeclarations&&(FF(et)&&gr(Z.Option_0_cannot_be_specified_with_option_1,"allowJs","isolatedDeclarations"),Oy(et)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"isolatedDeclarations","declaration","composite")),et.inlineSourceMap&&(et.sourceMap&&gr(Z.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),et.mapRoot&&gr(Z.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap")),et.composite&&(et.declaration===!1&&gr(Z.Composite_projects_may_not_disable_declaration_emit,"declaration"),et.incremental===!1&&gr(Z.Composite_projects_may_not_disable_incremental_compilation,"declaration"));let br=et.outFile;if(!et.tsBuildInfoFile&&et.incremental&&!br&&!et.configFilePath&&tr.addConfigDiagnostic(kf(Z.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified)),_i(),wa(),et.composite){let Ps=new Set(Ke.map(Mn));for(let ao of Lt)xW(ao,bn)&&!Ps.has(ao.path)&&tr.addLazyConfigDiagnostic(ao,Z.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,ao.fileName,et.configFilePath||"")}if(et.paths){for(let Ps in et.paths)if(Da(et.paths,Ps))if(Pbe(Ps)||ll(!0,Ps,Z.Pattern_0_can_have_at_most_one_Asterisk_character,Ps),Ki(et.paths[Ps])){let ao=et.paths[Ps].length;ao===0&&ll(!1,Ps,Z.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,Ps);for(let Yc=0;YcLm(Ps)&&!Ps.isDeclarationFile);if(et.isolatedModules||et.verbatimModuleSyntax)et.module===0&&sn<2&&et.isolatedModules&&gr(Z.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),et.preserveConstEnums===!1&&gr(Z.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,et.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(ei&&sn<2&&et.module===0){let Ps=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(rm(ei,Ps.start,Ps.length,Z.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(br&&!et.emitDeclarationOnly){if(et.module&&!(et.module===2||et.module===4))gr(Z.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if(et.module===void 0&&ei){let Ps=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(rm(ei,Ps.start,Ps.length,Z.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}}if(WW(et)&&(F_(et)===1?gr(Z.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):QAe(et)||gr(Z.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),et.outDir||et.rootDir||et.sourceRoot||et.mapRoot||Oy(et)&&et.declarationDir){let Ps=ci();et.outDir&&Ps===""&&Lt.some(ao=>Mf(ao.fileName)>1)&&gr(Z.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}et.checkJs&&!FF(et)&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"),et.emitDeclarationOnly&&(Oy(et)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite")),et.emitDecoratorMetadata&&!et.experimentalDecorators&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),et.jsxFactory?(et.reactNamespace&&gr(Z.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),(et.jsx===4||et.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",OEe.get(""+et.jsx)),Pz(et.jsxFactory,sn)||Ln("jsxFactory",Z.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,et.jsxFactory)):et.reactNamespace&&!qh(et.reactNamespace,sn)&&Ln("reactNamespace",Z.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,et.reactNamespace),et.jsxFragmentFactory&&(et.jsxFactory||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),(et.jsx===4||et.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",OEe.get(""+et.jsx)),Pz(et.jsxFragmentFactory,sn)||Ln("jsxFragmentFactory",Z.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,et.jsxFragmentFactory)),et.reactNamespace&&(et.jsx===4||et.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",OEe.get(""+et.jsx)),et.jsxImportSource&&et.jsx===2&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",OEe.get(""+et.jsx));let is=a0(et);et.verbatimModuleSyntax&&(is===2||is===3||is===4)&&gr(Z.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),et.allowImportingTsExtensions&&!(et.noEmit||et.emitDeclarationOnly||et.rewriteRelativeImportExtensions)&&Ln("allowImportingTsExtensions",Z.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);let Qs=F_(et);if(et.resolvePackageJsonExports&&!EU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),et.resolvePackageJsonImports&&!EU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),et.customConditions&&!EU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),Qs===100&&!tie(is)&&is!==200&&Ln("moduleResolution",Z.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),tv[is]&&100<=is&&is<=199&&!(3<=Qs&&Qs<=99)){let Ps=tv[is],ao=e0[Ps]?Ps:"Node16";Ln("moduleResolution",Z.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,ao,Ps)}else if(e0[Qs]&&3<=Qs&&Qs<=99&&!(100<=is&&is<=199)){let Ps=e0[Qs];Ln("module",Z.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,Ps,Ps)}if(!et.noEmit&&!et.suppressOutputPathCheck){let Ps=bi(),ao=new Set;ftt(Ps,Yc=>{et.emitDeclarationOnly||Po(Yc.jsFilePath,ao),Po(Yc.declarationFilePath,ao)})}function Po(Ps,ao){if(Ps){let Yc=Mn(Ps);if(Wr.has(Yc)){let $a;et.configFilePath||($a=wu(void 0,Z.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)),$a=wu($a,Z.Cannot_write_file_0_because_it_would_overwrite_input_file,Ps),Ug(Ps,MAe($a))}let ru=An.useCaseSensitiveFileNames()?Yc:Qm(Yc);ao.has(ru)?Ug(Ps,kf(Z.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,Ps)):ao.add(ru)}}}function en(){let br=et.ignoreDeprecations;if(br){if(br==="5.0")return new P(br);mt()}return P.zero}function gi(br,sn,ei,is){let Qs=new P(br),Po=new P(sn),Ps=new P(at||I),ao=en(),Yc=Po.compareTo(Ps)!==1,ru=!Yc&&ao.compareTo(Qs)===-1;(Yc||ru)&&is(($a,nu,ul)=>{Yc?nu===void 0?ei($a,nu,ul,Z.Option_0_has_been_removed_Please_remove_it_from_your_configuration,$a):ei($a,nu,ul,Z.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,$a,nu):nu===void 0?ei($a,nu,ul,Z.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,$a,sn,br):ei($a,nu,ul,Z.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,$a,nu,sn,br)})}function _i(){function br(sn,ei,is,Qs,...Po){if(is){let Ps=wu(void 0,Z.Use_0_instead,is),ao=wu(Ps,Qs,...Po);Jl(!ei,sn,void 0,ao)}else Jl(!ei,sn,void 0,Qs,...Po)}gi("5.0","5.5",br,sn=>{et.target===0&&sn("target","ES3"),et.noImplicitUseStrict&&sn("noImplicitUseStrict"),et.keyofStringsOnly&&sn("keyofStringsOnly"),et.suppressExcessPropertyErrors&&sn("suppressExcessPropertyErrors"),et.suppressImplicitAnyIndexErrors&&sn("suppressImplicitAnyIndexErrors"),et.noStrictGenericChecks&&sn("noStrictGenericChecks"),et.charset&&sn("charset"),et.out&&sn("out",void 0,"outFile"),et.importsNotUsedAsValues&&sn("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),et.preserveValueImports&&sn("preserveValueImports",void 0,"verbatimModuleSyntax")})}function ys(br,sn,ei){function is(Qs,Po,Ps,ao,...Yc){bs(sn,ei,ao,...Yc)}gi("5.0","5.5",is,Qs=>{br.prepend&&Qs("prepend")})}function $s(br,sn,ei,is){tr.addFileProcessingDiagnostic({kind:1,file:br&&br.path,fileProcessingReason:sn,diagnostic:ei,args:is})}function wa(){let br=et.suppressOutputPathCheck?void 0:n5(et);Bz(Tt,on,(sn,ei,is)=>{let Qs=(ei?ei.commandLine.projectReferences:Tt)[is],Po=ei&&ei.sourceFile;if(ys(Qs,Po,is),!sn){bs(Po,is,Z.File_0_not_found,Qs.path);return}let Ps=sn.commandLine.options;(!Ps.composite||Ps.noEmit)&&(ei?ei.commandLine.fileNames:Ke).length&&(Ps.composite||bs(Po,is,Z.Referenced_project_0_must_have_setting_composite_Colon_true,Qs.path),Ps.noEmit&&bs(Po,is,Z.Referenced_project_0_may_not_disable_emit,Qs.path)),!ei&&br&&br===n5(Ps)&&(bs(Po,is,Z.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,br,Qs.path),Oo.set(Mn(br),!0))})}function pc(br,sn,ei,...is){let Qs=!0;Fe(Po=>{ag(Po.initializer)&&eU(Po.initializer,br,Ps=>{let ao=Ps.initializer;YI(ao)&&ao.elements.length>sn&&(tr.addConfigDiagnostic(SE(et.configFile,ao.elements[sn],ei,...is)),Qs=!1)})}),Qs&&tg(ei,...is)}function ll(br,sn,ei,...is){let Qs=!0;Fe(Po=>{ag(Po.initializer)&&xf(Po.initializer,br,sn,void 0,ei,...is)&&(Qs=!1)}),Qs&&tg(ei,...is)}function Fe(br){return fde(zl(),"paths",br)}function gr(br,sn,ei,is){Jl(!0,sn,ei,br,sn,ei,is)}function Ln(br,sn,...ei){Jl(!1,br,void 0,sn,...ei)}function bs(br,sn,ei,...is){let Qs=Ane(br||et.configFile,"references",Po=>YI(Po.initializer)?Po.initializer:void 0);Qs&&Qs.elements.length>sn?tr.addConfigDiagnostic(SE(br||et.configFile,Qs.elements[sn],ei,...is)):tr.addConfigDiagnostic(kf(ei,...is))}function Jl(br,sn,ei,is,...Qs){let Po=zl();(!Po||!xf(Po,br,sn,ei,is,...Qs))&&tg(is,...Qs)}function tg(br,...sn){let ei=Su();ei?"messageText"in br?tr.addConfigDiagnostic(kw(et.configFile,ei.name,br)):tr.addConfigDiagnostic(SE(et.configFile,ei.name,br,...sn)):"messageText"in br?tr.addConfigDiagnostic(MAe(br)):tr.addConfigDiagnostic(kf(br,...sn))}function zl(){if(hc===void 0){let br=Su();hc=br&&Gs(br.initializer,ag)||!1}return hc||void 0}function Su(){return yr===void 0&&(yr=eU(x7(et.configFile),"compilerOptions",Zl)||!1),yr||void 0}function xf(br,sn,ei,is,Qs,...Po){let Ps=!1;return eU(br,ei,ao=>{"messageText"in Qs?tr.addConfigDiagnostic(kw(et.configFile,sn?ao.name:ao.initializer,Qs)):tr.addConfigDiagnostic(SE(et.configFile,sn?ao.name:ao.initializer,Qs,...Po)),Ps=!0},is),Ps}function Ug(br,sn){Oo.set(Mn(br),!0),tr.addConfigDiagnostic(sn)}function QC(br){if(et.noEmit)return!1;let sn=Mn(br);if(Jg(sn))return!1;let ei=et.outFile;if(ei)return T1(sn,ei)||T1(sn,c0(ei)+".d.ts");if(et.declarationDir&&zh(et.declarationDir,sn,ya,!An.useCaseSensitiveFileNames()))return!0;if(et.outDir)return zh(et.outDir,sn,ya,!An.useCaseSensitiveFileNames());if(Iu(sn,SU)||MC(sn)){let is=c0(sn);return!!Jg(is+".ts")||!!Jg(is+".tsx")}return!1}function T1(br,sn){return tI(br,sn,ya,!An.useCaseSensitiveFileNames())===0}function _S(){return An.getSymlinkCache?An.getSymlinkCache():(je||(je=Mbe(ya,rC)),Lt&&!je.hasProcessedResolutions()&&je.setSymlinksFromResolutions(xe,fr,Gr),je)}function wv(br,sn){return EVe(br,sn,py(br))}function $F(br,sn){return Grn(br,sn,py(br))}function d9(br,sn){return wv(br,h1e(br,sn))}function Qy(br){return TVe(br,py(br))}function gk(br){return YU(br,py(br))}function dR(br){return tpe(br,py(br))}function XB(br){return Vrn(br,py(br))}function nO(br,sn){return br.resolutionMode||Qy(sn)}}function Vrn(s,c){let g=a0(c);return 100<=g&&g<=199||g===200?!1:tpe(s,c)<5}function tpe(s,c){return YU(s,c)??a0(c)}function YU(s,c){var g,d;let h=a0(c);if(100<=h&&h<=199)return s.impliedNodeFormat;if(s.impliedNodeFormat===1&&(((g=s.packageJsonScope)==null?void 0:g.contents.packageJsonContent.type)==="commonjs"||Iu(s.fileName,[".cjs",".cts"])))return 1;if(s.impliedNodeFormat===99&&(((d=s.packageJsonScope)==null?void 0:d.contents.packageJsonContent.type)==="module"||Iu(s.fileName,[".mjs",".mts"])))return 99}function TVe(s,c){return Vbe(c)?YU(s,c):void 0}function qBs(s){let c,g=s.compilerHost.fileExists,d=s.compilerHost.directoryExists,h=s.compilerHost.getDirectories,_=s.compilerHost.realpath;if(!s.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:Dc,fileExists:T};s.compilerHost.fileExists=T;let S;return d&&(S=s.compilerHost.directoryExists=re=>d.call(s.compilerHost,re)?(M(re),!0):s.getResolvedProjectReferences()?(c||(c=new Set,s.forEachResolvedProjectReference(ge=>{let Ie=ge.commandLine.options.outFile;if(Ie)c.add(Mo(s.toPath(Ie)));else{let _e=ge.commandLine.options.declarationDir||ge.commandLine.options.outDir;_e&&c.add(s.toPath(_e))}})),ee(re,!1)):!1),h&&(s.compilerHost.getDirectories=re=>!s.getResolvedProjectReferences()||d&&d.call(s.compilerHost,re)?h.call(s.compilerHost,re):[]),_&&(s.compilerHost.realpath=re=>{var ge;return((ge=s.getSymlinkCache().getSymlinkedFiles())==null?void 0:ge.get(s.toPath(re)))||_.call(s.compilerHost,re)}),{onProgramCreateComplete:R,fileExists:T,directoryExists:S};function R(){s.compilerHost.fileExists=g,s.compilerHost.directoryExists=d,s.compilerHost.getDirectories=h}function T(re){return g.call(s.compilerHost,re)?!0:!s.getResolvedProjectReferences()||!MC(re)?!1:ee(re,!0)}function O(re){let ge=s.getRedirectFromOutput(s.toPath(re));return ge!==void 0?Xs(ge.source)?g.call(s.compilerHost,ge.source):!0:void 0}function V(re){let ge=s.toPath(re),Ie=`${ge}${cg}`;return NB(c,_e=>ge===_e||Ac(_e,Ie)||Ac(ge,`${_e}/`))}function M(re){var ge;if(!s.getResolvedProjectReferences()||_z(re)||!_||!re.includes(Yx))return;let Ie=s.getSymlinkCache(),_e=Cp(s.toPath(re));if((ge=Ie.getSymlinkedDirectories())!=null&&ge.has(_e))return;let Ee=su(_.call(s.compilerHost,re)),Ne;if(Ee===re||(Ne=Cp(s.toPath(Ee)))===_e){Ie.setSymlinkedDirectory(_e,!1);return}Ie.setSymlinkedDirectory(re,{real:Cp(Ee),realPath:Ne})}function ee(re,ge){var Ie;let _e=ge?O:V,Ee=_e(re);if(Ee!==void 0)return Ee;let Ne=s.getSymlinkCache(),Te=Ne.getSymlinkedDirectories();if(!Te)return!1;let Ze=s.toPath(re);return Ze.includes(Yx)?ge&&((Ie=Ne.getSymlinkedFiles())!=null&&Ie.has(Ze))?!0:ae(Te.entries(),([Pe,Ke])=>{if(!Ke||!Ac(Ze,Pe))return;let et=_e(Ze.replace(Pe,Ke.realPath));if(ge&&et){let Ye=Xc(re,s.compilerHost.getCurrentDirectory());Ne.setSymlinkedFile(Ze,`${Ke.real}${Ye.replace(new RegExp(Pe,"i"),"")}`)}return et})||!1:!1}}var Ltt={diagnostics:E,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function Vtt(s,c,g,d){let h=s.getCompilerOptions();if(h.noEmit)return c?Ltt:s.emitBuildInfo(g,d);if(!h.noEmitOnError)return;let _=[...s.getOptionsDiagnostics(d),...s.getSyntacticDiagnostics(c,d),...s.getGlobalDiagnostics(d),...s.getSemanticDiagnostics(c,d)];if(_.length===0&&Oy(s.getCompilerOptions())&&(_=s.getDeclarationDiagnostics(void 0,d)),!_.length)return;let S;if(!c){let R=s.emitBuildInfo(g,d);R.diagnostics&&(_=[..._,...R.diagnostics]),S=R.emittedFiles}return{diagnostics:_,sourceMaps:void 0,emittedFiles:S,emitSkipped:!0}}function RVe(s,c){return Le(s,g=>!g.skippedOn||!c[g.skippedOn])}function NVe(s,c=s){return{fileExists:g=>c.fileExists(g),readDirectory(g,d,h,_,S){return pe.assertIsDefined(c.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),c.readDirectory(g,d,h,_,S)},readFile:g=>c.readFile(g),directoryExists:$i(c,c.directoryExists),getDirectories:$i(c,c.getDirectories),realpath:$i(c,c.realpath),useCaseSensitiveFileNames:s.useCaseSensitiveFileNames(),getCurrentDirectory:()=>s.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:s.onUnRecoverableConfigFileDiagnostic||Am,trace:s.trace?g=>s.trace(g):void 0}}function Uz(s){return prt(s.path)}function Wtt(s,{extension:c},{isDeclarationFile:g}){switch(c){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return d();case".jsx":return d()||h();case".js":case".mjs":case".cjs":return h();case".json":return _();default:return S()}function d(){return s.jsx?void 0:Z.Module_0_was_resolved_to_1_but_jsx_is_not_set}function h(){return FF(s)||!u_(s,"noImplicitAny")?void 0:Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function _(){return WW(s)?void 0:Z.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function S(){return g||s.allowArbitraryExtensions?void 0:Z.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function Wrn({imports:s,moduleAugmentations:c}){let g=s.map(d=>d);for(let d of c)d.kind===11&&g.push(d);return g}function h1e({imports:s,moduleAugmentations:c},g){if(gc.add(ge)),d?.forEach(ge=>{switch(ge.kind){case 1:return c.add(V(re,ge.file&&re.getSourceFileByPath(ge.file),ge.fileProcessingReason,ge.diagnostic,ge.args||E));case 0:return c.add(O(re,ge));case 2:return ge.diagnostics.forEach(Ie=>c.add(Ie));default:pe.assertNever(ge)}}),S?.forEach(({file:ge,diagnostic:Ie,args:_e})=>c.add(V(re,ge,void 0,Ie,_e))),R=void 0,T=void 0,c)}};function O(re,{reason:ge}){let{file:Ie,pos:_e,end:Ee}=epe(re,ge),Ne=Ie.libReferenceDirectives[ge.index],Te=uQ(Ne),Ze=aa(Gm(Te,"lib."),".d.ts"),Pe=Dr(Ze,F9e,Zl);return rm(Ie,pe.checkDefined(_e),pe.checkDefined(Ee)-_e,Pe?Z.Cannot_find_lib_definition_for_0_Did_you_mean_1:Z.Cannot_find_lib_definition_for_0,Te,Pe)}function V(re,ge,Ie,_e,Ee){let Ne,Te,Ze,Pe,Ke,et,Ye=ge&&g.get(ge.path),Tt=i5(Ie)?Ie:void 0,at=ge&&R?.get(ge.path);at?(at.fileIncludeReasonDetails?(Ne=new Set(Ye),Ye?.forEach(yt)):Ye?.forEach(mt),Ke=at.redirectInfo):(Ye?.forEach(mt),Ke=ge&&rrt(ge,re.getCompilerOptionsForFile(ge))),Ie&&mt(Ie);let Qe=Ne?.size!==Ye?.length;Tt&&Ne?.size===1&&(Ne=void 0),Ne&&at&&(at.details&&!Qe?et=wu(at.details,_e,...Ee??E):at.fileIncludeReasonDetails&&(Qe?Rt()?Te=Ft(at.fileIncludeReasonDetails.next.slice(0,Ye.length),Te[0]):Te=[...at.fileIncludeReasonDetails.next,Te[0]]:Rt()?Te=at.fileIncludeReasonDetails.next.slice(0,Ye.length):Pe=at.fileIncludeReasonDetails)),et||(Pe||(Pe=Ne&&wu(Te,Z.The_file_is_in_the_program_because_Colon)),et=wu(Ke?Pe?[Pe,...Ke]:Ke:Pe,_e,...Ee||E)),ge&&(at?(!at.fileIncludeReasonDetails||!Qe&&Pe)&&(at.fileIncludeReasonDetails=Pe):(R??(R=new Map)).set(ge.path,at={fileIncludeReasonDetails:Pe,redirectInfo:Ke}),!at.details&&!Qe&&(at.details=et.next));let Ct=Tt&&epe(re,Tt);return Ct&&jie(Ct)?qe(Ct.file,Ct.pos,Ct.end-Ct.pos,et,Ze):MAe(et,Ze);function mt(Lt){Ne?.has(Lt)||((Ne??(Ne=new Set)).add(Lt),(Te??(Te=[])).push(srt(re,Lt)),yt(Lt))}function yt(Lt){!Tt&&i5(Lt)?Tt=Lt:Tt!==Lt&&(Ze=Ft(Ze,M(re,Lt)))}function Rt(){var Lt;return((Lt=at.fileIncludeReasonDetails.next)==null?void 0:Lt.length)!==Ye?.length}}function M(re,ge){let Ie=T?.get(ge);return Ie===void 0&&(T??(T=new Map)).set(ge,Ie=ee(re,ge)??!1),Ie||void 0}function ee(re,ge){if(i5(ge)){let Ze=epe(re,ge),Pe;switch(ge.kind){case 3:Pe=Z.File_is_included_via_import_here;break;case 4:Pe=Z.File_is_included_via_reference_here;break;case 5:Pe=Z.File_is_included_via_type_library_reference_here;break;case 7:Pe=Z.File_is_included_via_library_reference_here;break;default:pe.assertNever(ge)}return jie(Ze)?rm(Ze.file,Ze.pos,Ze.end-Ze.pos,Pe):void 0}let Ie=re.getCurrentDirectory(),_e=re.getRootFileNames(),Ee=re.getCompilerOptions();if(!Ee.configFile)return;let Ne,Te;switch(ge.kind){case 0:if(!Ee.configFile.configFileSpecs)return;let Ze=Xc(_e[ge.index],Ie),Pe=nrt(re,Ze);if(Pe){Ne=nAe(Ee.configFile,"files",Pe),Te=Z.File_is_matched_by_files_list_specified_here;break}let Ke=irt(re,Ze);if(!Ke||!Xs(Ke))return;Ne=nAe(Ee.configFile,"include",Ke),Te=Z.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:let et=re.getResolvedProjectReferences(),Ye=re.getProjectReferences(),Tt=pe.checkDefined(et?.[ge.index]),at=Bz(Ye,et,(Rt,Lt,je)=>Rt===Tt?{sourceFile:Lt?.sourceFile||Ee.configFile,index:je}:void 0);if(!at)return;let{sourceFile:Qe,index:Ct}=at,mt=Ane(Qe,"references",Rt=>YI(Rt.initializer)?Rt.initializer:void 0);return mt&&mt.elements.length>Ct?SE(Qe,mt.elements[Ct],ge.kind===2?Z.File_is_output_from_referenced_project_specified_here:Z.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!Ee.types)return;Ne=uEe(s(),"types",ge.typeReference),Te=Z.File_is_entry_point_of_type_library_specified_here;break;case 6:if(ge.index!==void 0){Ne=uEe(s(),"lib",Ee.lib[ge.index]),Te=Z.File_is_library_specified_here;break}let yt=XAe(Hg(Ee));Ne=yt?e9e(s(),"target",yt):void 0,Te=Z.File_is_default_library_for_target_specified_here;break;default:pe.assertNever(ge)}return Ne&&SE(Ee.configFile,Ne,Te)}}function n5t(s,c,g,d,h,_){let S=[],{emitSkipped:R,diagnostics:T}=s.emit(c,O,d,g,h,_);return{outputFiles:S,emitSkipped:R,diagnostics:T};function O(V,M,ee){S.push({name:V,writeByteOrderMark:ee,text:M})}}var i5t=(s=>(s[s.ComputedDts=0]="ComputedDts",s[s.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",s[s.UsedVersion=2]="UsedVersion",s))(i5t||{}),lR;(s=>{function c(){function at(Qe,Ct,mt){let yt={getKeys:Rt=>Ct.get(Rt),getValues:Rt=>Qe.get(Rt),keys:()=>Qe.keys(),size:()=>Qe.size,deleteKey:Rt=>{(mt||(mt=new Set)).add(Rt);let Lt=Qe.get(Rt);return Lt?(Lt.forEach(je=>d(Ct,je,Rt)),Qe.delete(Rt),!0):!1},set:(Rt,Lt)=>{mt?.delete(Rt);let je=Qe.get(Rt);return Qe.set(Rt,Lt),je?.forEach(Wt=>{Lt.has(Wt)||d(Ct,Wt,Rt)}),Lt.forEach(Wt=>{je?.has(Wt)||g(Ct,Wt,Rt)}),yt}};return yt}return at(new Map,new Map,void 0)}s.createManyToManyPathMap=c;function g(at,Qe,Ct){let mt=at.get(Qe);mt||(mt=new Set,at.set(Qe,mt)),mt.add(Ct)}function d(at,Qe,Ct){let mt=at.get(Qe);return mt?.delete(Ct)?(mt.size||at.delete(Qe),!0):!1}function h(at){return Xt(at.declarations,Qe=>{var Ct;return(Ct=ms(Qe))==null?void 0:Ct.resolvedPath})}function _(at,Qe){let Ct=at.getSymbolAtLocation(Qe);return Ct&&h(Ct)}function S(at,Qe,Ct,mt){var yt;return Pu(((yt=at.getRedirectFromSourceFile(Qe))==null?void 0:yt.outputDts)||Qe,Ct,mt)}function R(at,Qe,Ct){let mt;if(Qe.imports&&Qe.imports.length>0){let je=at.getTypeChecker();for(let Wt of Qe.imports){let _r=_(je,Wt);_r?.forEach(Lt)}}let yt=Mo(Qe.resolvedPath);if(Qe.referencedFiles&&Qe.referencedFiles.length>0)for(let je of Qe.referencedFiles){let Wt=S(at,je.fileName,yt,Ct);Lt(Wt)}if(at.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:je})=>{if(!je)return;let Wt=je.resolvedFileName,_r=S(at,Wt,yt,Ct);Lt(_r)},Qe),Qe.moduleAugmentations.length){let je=at.getTypeChecker();for(let Wt of Qe.moduleAugmentations){if(!Lg(Wt))continue;let _r=je.getSymbolAtLocation(Wt);_r&&Rt(_r)}}for(let je of at.getTypeChecker().getAmbientModules())je.declarations&&je.declarations.length>1&&Rt(je);return mt;function Rt(je){if(je.declarations)for(let Wt of je.declarations){let _r=ms(Wt);_r&&_r!==Qe&&Lt(_r.resolvedPath)}}function Lt(je){(mt||(mt=new Set)).add(je)}}function T(at,Qe){return Qe&&!Qe.referencedMap==!at}s.canReuseOldState=T;function O(at){return at.module!==0&&!at.outFile?c():void 0}s.createReferencedMap=O;function V(at,Qe,Ct){var mt,yt;let Rt=new Map,Lt=at.getCompilerOptions(),je=O(Lt),Wt=T(je,Qe);at.getTypeChecker();for(let _r of at.getSourceFiles()){let Gt=pe.checkDefined(_r.version,"Program intended to be used with Builder should have source files with versions set"),it=Wt?(mt=Qe.oldSignatures)==null?void 0:mt.get(_r.resolvedPath):void 0,Dt=it===void 0?Wt?(yt=Qe.fileInfos.get(_r.resolvedPath))==null?void 0:yt.signature:void 0:it||void 0;if(je){let tr=R(at,_r,at.getCanonicalFileName);tr&&je.set(_r.resolvedPath,tr)}Rt.set(_r.resolvedPath,{version:Gt,signature:Dt,affectsGlobalScope:Lt.outFile?void 0:Ke(_r)||void 0,impliedFormat:_r.impliedNodeFormat})}return{fileInfos:Rt,referencedMap:je,useFileVersionAsSignature:!Ct&&!Wt}}s.create=V;function M(at){at.allFilesExcludingDefaultLibraryFile=void 0,at.allFileNames=void 0}s.releaseCache=M;function ee(at,Qe,Ct,mt,yt){var Rt;let Lt=re(at,Qe,Ct,mt,yt);return(Rt=at.oldSignatures)==null||Rt.clear(),Lt}s.getFilesAffectedBy=ee;function re(at,Qe,Ct,mt,yt){let Rt=Qe.getSourceFileByPath(Ct);return Rt?_e(at,Qe,Rt,mt,yt)?(at.referencedMap?Tt:Ye)(at,Qe,Rt,mt,yt):[Rt]:E}s.getFilesAffectedByWithOldState=re;function ge(at,Qe,Ct){at.fileInfos.get(Ct).signature=Qe,(at.hasCalledUpdateShapeSignature||(at.hasCalledUpdateShapeSignature=new Set)).add(Ct)}s.updateSignatureOfFile=ge;function Ie(at,Qe,Ct,mt,yt){at.emit(Qe,(Rt,Lt,je,Wt,_r,Gt)=>{pe.assert(MC(Rt),`File extension for signature expected to be dts: Got:: ${Rt}`),yt(Mtt(at,Qe,Lt,mt,Gt),_r)},Ct,2,void 0,!0)}s.computeDtsSignature=Ie;function _e(at,Qe,Ct,mt,yt,Rt=at.useFileVersionAsSignature){var Lt;if((Lt=at.hasCalledUpdateShapeSignature)!=null&&Lt.has(Ct.resolvedPath))return!1;let je=at.fileInfos.get(Ct.resolvedPath),Wt=je.signature,_r;return!Ct.isDeclarationFile&&!Rt&&Ie(Qe,Ct,mt,yt,Gt=>{_r=Gt,yt.storeSignatureInfo&&(at.signatureInfo??(at.signatureInfo=new Map)).set(Ct.resolvedPath,0)}),_r===void 0&&(_r=Ct.version,yt.storeSignatureInfo&&(at.signatureInfo??(at.signatureInfo=new Map)).set(Ct.resolvedPath,2)),(at.oldSignatures||(at.oldSignatures=new Map)).set(Ct.resolvedPath,Wt||!1),(at.hasCalledUpdateShapeSignature||(at.hasCalledUpdateShapeSignature=new Set)).add(Ct.resolvedPath),je.signature=_r,_r!==Wt}s.updateShapeSignature=_e;function Ee(at,Qe,Ct){if(Qe.getCompilerOptions().outFile||!at.referencedMap||Ke(Ct))return Ne(at,Qe);let yt=new Set,Rt=[Ct.resolvedPath];for(;Rt.length;){let Lt=Rt.pop();if(!yt.has(Lt)){yt.add(Lt);let je=at.referencedMap.getValues(Lt);if(je)for(let Wt of je.keys())Rt.push(Wt)}}return Do(lr(yt.keys(),Lt=>{var je;return((je=Qe.getSourceFileByPath(Lt))==null?void 0:je.fileName)??Lt}))}s.getAllDependencies=Ee;function Ne(at,Qe){if(!at.allFileNames){let Ct=Qe.getSourceFiles();at.allFileNames=Ct===E?E:Ct.map(mt=>mt.fileName)}return at.allFileNames}function Te(at,Qe){let Ct=at.referencedMap.getKeys(Qe);return Ct?Do(Ct.keys()):[]}s.getReferencedByPaths=Te;function Ze(at){for(let Qe of at.statements)if(!PY(Qe))return!1;return!0}function Pe(at){return zt(at.moduleAugmentations,Qe=>DB(Qe.parent))}function Ke(at){return Pe(at)||!Sl(at)&&!Zu(at)&&!Ze(at)}function et(at,Qe,Ct){if(at.allFilesExcludingDefaultLibraryFile)return at.allFilesExcludingDefaultLibraryFile;let mt;Ct&&yt(Ct);for(let Rt of Qe.getSourceFiles())Rt!==Ct&&yt(Rt);return at.allFilesExcludingDefaultLibraryFile=mt||E,at.allFilesExcludingDefaultLibraryFile;function yt(Rt){Qe.isSourceFileDefaultLibrary(Rt)||(mt||(mt=[])).push(Rt)}}s.getAllFilesExcludingDefaultLibraryFile=et;function Ye(at,Qe,Ct){let mt=Qe.getCompilerOptions();return mt&&mt.outFile?[Ct]:et(at,Qe,Ct)}function Tt(at,Qe,Ct,mt,yt){if(Ke(Ct))return et(at,Qe,Ct);let Rt=Qe.getCompilerOptions();if(Rt&&(uS(Rt)||Rt.outFile))return[Ct];let Lt=new Map;Lt.set(Ct.resolvedPath,Ct);let je=Te(at,Ct.resolvedPath);for(;je.length>0;){let Wt=je.pop();if(!Lt.has(Wt)){let _r=Qe.getSourceFileByPath(Wt);Lt.set(Wt,_r),_r&&_e(at,Qe,_r,mt,yt)&&je.push(...Te(at,_r.resolvedPath))}}return Do(lr(Lt.values(),Wt=>Wt))}})(lR||(lR={}));var s5t=(s=>(s[s.None=0]="None",s[s.Js=1]="Js",s[s.JsMap=2]="JsMap",s[s.JsInlineMap=4]="JsInlineMap",s[s.DtsErrors=8]="DtsErrors",s[s.DtsEmit=16]="DtsEmit",s[s.DtsMap=32]="DtsMap",s[s.Dts=24]="Dts",s[s.AllJs=7]="AllJs",s[s.AllDtsEmit=48]="AllDtsEmit",s[s.AllDts=56]="AllDts",s[s.All=63]="All",s))(s5t||{});function zie(s){return s.program!==void 0}function $Bs(s){return pe.assert(zie(s)),s}function qW(s){let c=1;return s.sourceMap&&(c=c|2),s.inlineSourceMap&&(c=c|4),Oy(s)&&(c=c|24),s.declarationMap&&(c=c|32),s.emitDeclarationOnly&&(c=c&56),c}function DVe(s,c){let g=c&&(ws(c)?c:qW(c)),d=ws(s)?s:qW(s);if(g===d)return 0;if(!g||!d)return d;let h=g^d,_=0;return h&7&&(_=d&7),h&8&&(_=_|d&8),h&48&&(_=_|d&48),_}function ews(s,c){return s===c||s!==void 0&&c!==void 0&&s.size===c.size&&!NB(s,g=>!c.has(g))}function tws(s,c){var g,d;let h=lR.create(s,c,!1);h.program=s;let _=s.getCompilerOptions();h.compilerOptions=_;let S=_.outFile;h.semanticDiagnosticsPerFile=new Map,S&&_.composite&&c?.outSignature&&S===c.compilerOptions.outFile&&(h.outSignature=c.outSignature&&Orn(_,c.compilerOptions,c.outSignature)),h.changedFilesSet=new Set,h.latestChangedDtsFile=_.composite?c?.latestChangedDtsFile:void 0,h.checkPending=h.compilerOptions.noCheck?!0:void 0;let R=lR.canReuseOldState(h.referencedMap,c),T=R?c.compilerOptions:void 0,O=R&&!Obe(_,T),V=_.composite&&c?.emitSignatures&&!S&&!RLe(_,c.compilerOptions),M=!0;R?((g=c.changedFilesSet)==null||g.forEach(Ee=>h.changedFilesSet.add(Ee)),!S&&((d=c.affectedFilesPendingEmit)!=null&&d.size)&&(h.affectedFilesPendingEmit=new Map(c.affectedFilesPendingEmit),h.seenAffectedFiles=new Set),h.programEmitPending=c.programEmitPending,S&&h.changedFilesSet.size&&(O=!1,M=!1),h.hasErrorsFromOldState=c.hasErrors):h.buildInfoEmitPending=OW(_);let ee=h.referencedMap,re=R?c.referencedMap:void 0,ge=O&&!_.skipLibCheck==!T.skipLibCheck,Ie=ge&&!_.skipDefaultLibCheck==!T.skipDefaultLibCheck;if(h.fileInfos.forEach((Ee,Ne)=>{var Te;let Ze,Pe;if(!R||!(Ze=c.fileInfos.get(Ne))||Ze.version!==Ee.version||Ze.impliedFormat!==Ee.impliedFormat||!ews(Pe=ee&&ee.getValues(Ne),re&&re.getValues(Ne))||Pe&&NB(Pe,Ke=>!h.fileInfos.has(Ke)&&c.fileInfos.has(Ke)))_e(Ne);else{let Ke=s.getSourceFileByPath(Ne),et=M?(Te=c.emitDiagnosticsPerFile)==null?void 0:Te.get(Ne):void 0;if(et&&(h.emitDiagnosticsPerFile??(h.emitDiagnosticsPerFile=new Map)).set(Ne,c.hasReusableDiagnostic?Mrn(et,Ne,s):Prn(et,s)),O){if(Ke.isDeclarationFile&&!ge||Ke.hasNoDefaultLib&&!Ie)return;let Ye=c.semanticDiagnosticsPerFile.get(Ne);Ye&&(h.semanticDiagnosticsPerFile.set(Ne,c.hasReusableDiagnostic?Mrn(Ye,Ne,s):Prn(Ye,s)),(h.semanticDiagnosticsFromOldState??(h.semanticDiagnosticsFromOldState=new Set)).add(Ne))}}if(V){let Ke=c.emitSignatures.get(Ne);Ke&&(h.emitSignatures??(h.emitSignatures=new Map)).set(Ne,Orn(_,c.compilerOptions,Ke))}}),R&&Fh(c.fileInfos,(Ee,Ne)=>h.fileInfos.has(Ne)?!1:Ee.affectsGlobalScope?!0:(h.buildInfoEmitPending=!0,!!S)))lR.getAllFilesExcludingDefaultLibraryFile(h,s,void 0).forEach(Ee=>_e(Ee.resolvedPath));else if(T){let Ee=TLe(_,T)?qW(_):DVe(_,T);Ee!==0&&(S?h.changedFilesSet.size||(h.programEmitPending=h.programEmitPending?h.programEmitPending|Ee:Ee):(s.getSourceFiles().forEach(Ne=>{h.changedFilesSet.has(Ne.resolvedPath)||Ytt(h,Ne.resolvedPath,Ee)}),pe.assert(!h.seenAffectedFiles||!h.seenAffectedFiles.size),h.seenAffectedFiles=h.seenAffectedFiles||new Set),h.buildInfoEmitPending=!0)}return R&&h.semanticDiagnosticsPerFile.size!==h.fileInfos.size&&c.checkPending!==h.checkPending&&(h.buildInfoEmitPending=!0),h;function _e(Ee){h.changedFilesSet.add(Ee),S&&(O=!1,M=!1,h.semanticDiagnosticsFromOldState=void 0,h.semanticDiagnosticsPerFile.clear(),h.emitDiagnosticsPerFile=void 0),h.buildInfoEmitPending=!0,h.programEmitPending=void 0}}function Orn(s,c,g){return!!s.declarationMap==!!c.declarationMap?g:Xs(g)?[g]:g[0]}function Prn(s,c){return s.length?Er(s,g=>{if(Xs(g.messageText))return g;let d=o5t(g.messageText,g.file,c,h=>{var _;return(_=h.repopulateInfo)==null?void 0:_.call(h)});return d===g.messageText?g:{...g,messageText:d}}):s}function o5t(s,c,g,d){let h=d(s);if(h===!0)return{...S7(c),next:a5t(s.next,c,g,d)};if(h)return{...XJ(c,g,h.moduleReference,h.mode,h.packageName||h.moduleReference),next:a5t(s.next,c,g,d)};let _=a5t(s.next,c,g,d);return _===s.next?s:{...s,next:_}}function a5t(s,c,g,d){return Er(s,h=>o5t(h,c,g,d))}function Mrn(s,c,g){if(!s.length)return E;let d;return s.map(_=>{let S=Hrn(_,c,g,h);S.reportsUnnecessary=_.reportsUnnecessary,S.reportsDeprecated=_.reportDeprecated,S.source=_.source,S.skippedOn=_.skippedOn;let{relatedInformation:R}=_;return S.relatedInformation=R?R.length?R.map(T=>Hrn(T,c,g,h)):[]:void 0,S});function h(_){return d??(d=Mo(Xc(n5(g.getCompilerOptions()),g.getCurrentDirectory()))),Pu(_,d,g.getCanonicalFileName)}}function Hrn(s,c,g,d){let{file:h}=s,_=h!==!1?g.getSourceFileByPath(h?d(h):c):void 0;return{...s,file:_,messageText:Xs(s.messageText)?s.messageText:o5t(s.messageText,_,g,S=>S.info)}}function rws(s){lR.releaseCache(s),s.program=void 0}function c5t(s,c){pe.assert(!c||!s.affectedFiles||s.affectedFiles[s.affectedFilesIndex-1]!==c||!s.semanticDiagnosticsPerFile.has(c.resolvedPath))}function Yrn(s,c,g){for(var d;;){let{affectedFiles:h}=s;if(h){let R=s.seenAffectedFiles,T=s.affectedFilesIndex;for(;T{let R=g?_&55:_&7;R?s.affectedFilesPendingEmit.set(S,R):s.affectedFilesPendingEmit.delete(S)}),s.programEmitPending)){let _=g?s.programEmitPending&55:s.programEmitPending&7;_?s.programEmitPending=_:s.programEmitPending=void 0}}function kVe(s,c,g,d){let h=DVe(s,c);return g&&(h=h&56),d&&(h=h&8),h}function Ott(s){return s?8:56}function nws(s,c,g){var d;if((d=s.affectedFilesPendingEmit)!=null&&d.size)return Fh(s.affectedFilesPendingEmit,(h,_)=>{var S;let R=s.program.getSourceFileByPath(_);if(!R||!xW(R,s.program)){s.affectedFilesPendingEmit.delete(_);return}let T=(S=s.seenEmittedFiles)==null?void 0:S.get(R.resolvedPath),O=kVe(h,T,c,g);if(O)return{affectedFile:R,emitKind:O}})}function iws(s,c){var g;if((g=s.emitDiagnosticsPerFile)!=null&&g.size)return Fh(s.emitDiagnosticsPerFile,(d,h)=>{var _;let S=s.program.getSourceFileByPath(h);if(!S||!xW(S,s.program)){s.emitDiagnosticsPerFile.delete(h);return}let R=((_=s.seenEmittedFiles)==null?void 0:_.get(S.resolvedPath))||0;if(!(R&Ott(c)))return{affectedFile:S,diagnostics:d,seenKind:R}})}function Xrn(s){if(!s.cleanedDiagnosticsOfLibFiles){s.cleanedDiagnosticsOfLibFiles=!0;let c=s.program.getCompilerOptions();F(s.program.getSourceFiles(),g=>s.program.isSourceFileDefaultLibrary(g)&&!PLe(g,c,s.program)&&u5t(s,g.resolvedPath))}}function sws(s,c,g,d){if(u5t(s,c.resolvedPath),s.allFilesExcludingDefaultLibraryFile===s.affectedFiles){Xrn(s),lR.updateShapeSignature(s,s.program,c,g,d);return}s.compilerOptions.assumeChangesOnlyAffectDirectDependencies||ows(s,c,g,d)}function l5t(s,c,g,d,h){if(u5t(s,c),!s.changedFilesSet.has(c)){let _=s.program.getSourceFileByPath(c);_&&(lR.updateShapeSignature(s,s.program,_,d,h,!0),g?Ytt(s,c,qW(s.compilerOptions)):Oy(s.compilerOptions)&&Ytt(s,c,s.compilerOptions.declarationMap?56:24))}}function u5t(s,c){return s.semanticDiagnosticsFromOldState?(s.semanticDiagnosticsFromOldState.delete(c),s.semanticDiagnosticsPerFile.delete(c),!s.semanticDiagnosticsFromOldState.size):!0}function Jrn(s,c){let g=pe.checkDefined(s.oldSignatures).get(c)||void 0;return pe.checkDefined(s.fileInfos.get(c)).signature!==g}function g5t(s,c,g,d,h){var _;return(_=s.fileInfos.get(c))!=null&&_.affectsGlobalScope?(lR.getAllFilesExcludingDefaultLibraryFile(s,s.program,void 0).forEach(S=>l5t(s,S.resolvedPath,g,d,h)),Xrn(s),!0):!1}function ows(s,c,g,d){var h,_;if(!s.referencedMap||!s.changedFilesSet.has(c.resolvedPath)||!Jrn(s,c.resolvedPath))return;if(uS(s.compilerOptions)){let T=new Map;T.set(c.resolvedPath,!0);let O=lR.getReferencedByPaths(s,c.resolvedPath);for(;O.length>0;){let V=O.pop();if(!T.has(V)){if(T.set(V,!0),g5t(s,V,!1,g,d))return;if(l5t(s,V,!1,g,d),Jrn(s,V)){let M=s.program.getSourceFileByPath(V);O.push(...lR.getReferencedByPaths(s,M.resolvedPath))}}}}let S=new Set,R=!!((h=c.symbol)!=null&&h.exports)&&!!Fh(c.symbol.exports,T=>{if(T.flags&128)return!0;let O=VC(T,s.program.getTypeChecker());return O===T?!1:(O.flags&128)!==0&&zt(O.declarations,V=>ms(V)===c)});(_=s.referencedMap.getKeys(c.resolvedPath))==null||_.forEach(T=>{if(g5t(s,T,R,g,d))return!0;let O=s.referencedMap.getKeys(T);return O&&NB(O,V=>Urn(s,V,R,S,g,d))})}function Urn(s,c,g,d,h,_){var S;if(Ar(d,c)){if(g5t(s,c,g,h,_))return!0;l5t(s,c,g,h,_),(S=s.referencedMap.getKeys(c))==null||S.forEach(R=>Urn(s,R,g,d,h,_))}}function Ptt(s,c,g,d){return s.compilerOptions.noCheck?E:Nn(aws(s,c,g,d),s.program.getProgramDiagnostics(c))}function aws(s,c,g,d){d??(d=s.semanticDiagnosticsPerFile);let h=c.resolvedPath,_=d.get(h);if(_)return RVe(_,s.compilerOptions);let S=s.program.getBindAndCheckDiagnostics(c,g);return d.set(h,S),s.buildInfoEmitPending=!0,RVe(S,s.compilerOptions)}function A5t(s){var c;return!!((c=s.options)!=null&&c.outFile)}function m1e(s){return!!s.fileNames}function cws(s){return!m1e(s)&&!!s.root}function Krn(s){s.hasErrors===void 0&&(OW(s.compilerOptions)?s.hasErrors=!zt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return h===void 0||!!h.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})&&(jrn(s)||zt(s.program.getSourceFiles(),c=>!!s.program.getProgramDiagnostics(c).length)):s.hasErrors=zt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return!!h?.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})||jrn(s))}function jrn(s){return!!s.program.getConfigFileParsingDiagnostics().length||!!s.program.getSyntacticDiagnostics().length||!!s.program.getOptionsDiagnostics().length||!!s.program.getGlobalDiagnostics().length}function zrn(s){return Krn(s),s.buildInfoEmitPending??(s.buildInfoEmitPending=!!s.hasErrorsFromOldState!=!!s.hasErrors)}function lws(s){var c,g;let d=s.program.getCurrentDirectory(),h=Mo(Xc(n5(s.compilerOptions),d)),_=s.latestChangedDtsFile?Ne(s.latestChangedDtsFile):void 0,S=[],R=new Map,T=new Set(s.program.getRootFileNames().map(je=>Pu(je,d,s.program.getCanonicalFileName)));if(Krn(s),!OW(s.compilerOptions))return{root:Do(T,Wt=>Te(Wt)),errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};let O=[];if(s.compilerOptions.outFile){let je=Do(s.fileInfos.entries(),([_r,Gt])=>{let it=Ze(_r);return Ke(_r,it),Gt.impliedFormat?{version:Gt.version,impliedFormat:Gt.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:Gt.version});return{fileNames:S,fileInfos:je,root:O,resolvedRoot:et(),options:Ye(s.compilerOptions),semanticDiagnosticsPerFile:s.changedFilesSet.size?void 0:at(),emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),outSignature:s.outSignature,latestChangedDtsFile:_,pendingEmit:s.programEmitPending?s.programEmitPending===qW(s.compilerOptions)?!1:s.programEmitPending:void 0,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C}}let V,M,ee,re=Do(s.fileInfos.entries(),([je,Wt])=>{var _r,Gt;let it=Ze(je);Ke(je,it),pe.assert(S[it-1]===Te(je));let Dt=(_r=s.oldSignatures)==null?void 0:_r.get(je),tr=Dt!==void 0?Dt||void 0:Wt.signature;if(s.compilerOptions.composite){let ur=s.program.getSourceFileByPath(je);if(!Zu(ur)&&xW(ur,s.program)){let Gr=(Gt=s.emitSignatures)==null?void 0:Gt.get(je);Gr!==tr&&(ee=Ft(ee,Gr===void 0?it:[it,!Xs(Gr)&&Gr[0]===tr?E:Gr]))}}return Wt.version===tr?Wt.affectsGlobalScope||Wt.impliedFormat?{version:Wt.version,signature:void 0,affectsGlobalScope:Wt.affectsGlobalScope,impliedFormat:Wt.impliedFormat}:Wt.version:tr!==void 0?Dt===void 0?Wt:{version:Wt.version,signature:tr,affectsGlobalScope:Wt.affectsGlobalScope,impliedFormat:Wt.impliedFormat}:{version:Wt.version,signature:!1,affectsGlobalScope:Wt.affectsGlobalScope,impliedFormat:Wt.impliedFormat}}),ge;(c=s.referencedMap)!=null&&c.size()&&(ge=Do(s.referencedMap.keys()).sort(Ca).map(je=>[Ze(je),Pe(s.referencedMap.getValues(je))]));let Ie=at(),_e;if((g=s.affectedFilesPendingEmit)!=null&&g.size){let je=qW(s.compilerOptions),Wt=new Set;for(let _r of Do(s.affectedFilesPendingEmit.keys()).sort(Ca))if(Ar(Wt,_r)){let Gt=s.program.getSourceFileByPath(_r);if(!Gt||!xW(Gt,s.program))continue;let it=Ze(_r),Dt=s.affectedFilesPendingEmit.get(_r);_e=Ft(_e,Dt===je?it:Dt===24?[it]:[it,Dt])}}return{fileNames:S,fileIdsList:V,fileInfos:re,root:O,resolvedRoot:et(),options:Ye(s.compilerOptions),referencedMap:ge,semanticDiagnosticsPerFile:Ie,emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),affectedFilesPendingEmit:_e,emitSignatures:ee,latestChangedDtsFile:_,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};function Ne(je){return Te(Xc(je,d))}function Te(je){return Im(_p(h,je,s.program.getCanonicalFileName))}function Ze(je){let Wt=R.get(je);return Wt===void 0&&(S.push(Te(je)),R.set(je,Wt=S.length)),Wt}function Pe(je){let Wt=Do(je.keys(),Ze).sort(Zt),_r=Wt.join(),Gt=M?.get(_r);return Gt===void 0&&(V=Ft(V,Wt),(M??(M=new Map)).set(_r,Gt=V.length)),Gt}function Ke(je,Wt){let _r=s.program.getSourceFile(je);if(!s.program.getFileIncludeReasons().get(_r.path).some(tr=>tr.kind===0))return;if(!O.length)return O.push(Wt);let Gt=O[O.length-1],it=Ki(Gt);if(it&&Gt[1]===Wt-1)return Gt[1]=Wt;if(it||O.length===1||Gt!==Wt-1)return O.push(Wt);let Dt=O[O.length-2];return!ws(Dt)||Dt!==Gt-1?O.push(Wt):(O[O.length-2]=[Dt,Wt],O.length=O.length-1)}function et(){let je;return T.forEach(Wt=>{let _r=s.program.getSourceFileByPath(Wt);_r&&Wt!==_r.resolvedPath&&(je=Ft(je,[Ze(_r.resolvedPath),Ze(Wt)]))}),je}function Ye(je){let Wt,{optionsNameMap:_r}=Oie();for(let Gt of yg(je).sort(Ca)){let it=_r.get(Gt.toLowerCase());it?.affectsBuildInfo&&((Wt||(Wt={}))[Gt]=Tt(it,je[Gt]))}return Wt}function Tt(je,Wt){if(je){if(pe.assert(je.type!=="listOrElement"),je.type==="list"){let _r=Wt;if(je.element.isFilePath&&_r.length)return _r.map(Ne)}else if(je.isFilePath)return Ne(Wt)}return Wt}function at(){let je;return s.fileInfos.forEach((Wt,_r)=>{let Gt=s.semanticDiagnosticsPerFile.get(_r);Gt?Gt.length&&(je=Ft(je,[Ze(_r),Ct(Gt,_r)])):s.changedFilesSet.has(_r)||(je=Ft(je,Ze(_r)))}),je}function Qe(){var je;let Wt;if(!((je=s.emitDiagnosticsPerFile)!=null&&je.size))return Wt;for(let _r of Do(s.emitDiagnosticsPerFile.keys()).sort(Ca)){let Gt=s.emitDiagnosticsPerFile.get(_r);Wt=Ft(Wt,[Ze(_r),Ct(Gt,_r)])}return Wt}function Ct(je,Wt){return pe.assert(!!je.length),je.map(_r=>{let Gt=mt(_r,Wt);Gt.reportsUnnecessary=_r.reportsUnnecessary,Gt.reportDeprecated=_r.reportsDeprecated,Gt.source=_r.source,Gt.skippedOn=_r.skippedOn;let{relatedInformation:it}=_r;return Gt.relatedInformation=it?it.length?it.map(Dt=>mt(Dt,Wt)):[]:void 0,Gt})}function mt(je,Wt){let{file:_r}=je;return{...je,file:_r?_r.resolvedPath===Wt?void 0:Te(_r.resolvedPath):!1,messageText:Xs(je.messageText)?je.messageText:yt(je.messageText)}}function yt(je){if(je.repopulateInfo)return{info:je.repopulateInfo(),next:Rt(je.next)};let Wt=Rt(je.next);return Wt===je.next?je:{...je,next:Wt}}function Rt(je){return je&&(F(je,(Wt,_r)=>{let Gt=yt(Wt);if(Wt===Gt)return;let it=_r>0?je.slice(0,_r-1):[];it.push(Gt);for(let Dt=_r+1;Dt(s[s.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",s[s.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",s))(d5t||{});function xVe(s,c,g,d,h,_){let S,R,T;return s===void 0?(pe.assert(c===void 0),S=g,T=d,pe.assert(!!T),R=T.getProgram()):Ki(s)?(T=d,R=I1e({rootNames:s,options:c,host:g,oldProgram:T&&T.getProgramOrUndefined(),configFileParsingDiagnostics:h,projectReferences:_}),S=g):(R=s,S=c,T=g,h=d),{host:S,newProgram:R,oldProgram:T,configFileParsingDiagnostics:h||E}}function qrn(s,c){return c?.sourceMapUrlPos!==void 0?s.substring(0,c.sourceMapUrlPos):s}function Mtt(s,c,g,d,h){var _;g=qrn(g,h);let S;return(_=h?.diagnostics)!=null&&_.length&&(g+=h.diagnostics.map(O=>`${T(O)}${ev[O.category]}${O.code}: ${R(O.messageText)}`).join(` +`)),(d.createHash??sy)(g);function R(O){return Xs(O)?O:O===void 0?"":O.next?O.messageText+O.next.map(R).join(` +`):O.messageText}function T(O){return O.file.resolvedPath===c.resolvedPath?`(${O.start},${O.length})`:(S===void 0&&(S=Mo(c.resolvedPath)),`${Im(_p(S,O.file.resolvedPath,s.getCanonicalFileName))}(${O.start},${O.length})`)}}function uws(s,c,g){return(c.createHash??sy)(qrn(s,g))}function Htt(s,{newProgram:c,host:g,oldProgram:d,configFileParsingDiagnostics:h}){let _=d&&d.state;if(_&&c===_.program&&h===c.getConfigFileParsingDiagnostics())return c=void 0,_=void 0,d;let S=tws(c,_);c.getBuildInfo=()=>lws($Bs(S)),c=void 0,d=void 0,_=void 0;let R=Xtt(S,h);return R.state=S,R.hasChangedEmitSignature=()=>!!S.hasChangedEmitSignature,R.getAllDependencies=Ne=>lR.getAllDependencies(S,pe.checkDefined(S.program),Ne),R.getSemanticDiagnostics=Ee,R.getDeclarationDiagnostics=Ie,R.emit=re,R.releaseProgram=()=>rws(S),s===0?R.getSemanticDiagnosticsOfNextAffectedFile=_e:s===1?(R.getSemanticDiagnosticsOfNextAffectedFile=_e,R.emitNextAffectedFile=M,R.emitBuildInfo=T):rl(),R;function T(Ne,Te){if(pe.assert(zie(S)),zrn(S)){let Ze=S.program.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,Ze}return Ltt}function O(Ne,Te,Ze,Pe,Ke){var et,Ye,Tt,at;pe.assert(zie(S));let Qe=Yrn(S,Te,g),Ct=qW(S.compilerOptions),mt=Ke?8:Ze?Ct&56:Ct;if(!Qe){if(S.compilerOptions.outFile){if(S.programEmitPending&&(mt=kVe(S.programEmitPending,S.seenProgramEmit,Ze,Ke),mt&&(Qe=S.program)),!Qe&&((et=S.emitDiagnosticsPerFile)!=null&&et.size)){let Lt=S.seenProgramEmit||0;if(!(Lt&Ott(Ke))){S.seenProgramEmit=Ott(Ke)|Lt;let je=[];return S.emitDiagnosticsPerFile.forEach(Wt=>Pr(je,Wt)),{result:{emitSkipped:!0,diagnostics:je},affected:S.program}}}}else{let Lt=nws(S,Ze,Ke);if(Lt)({affectedFile:Qe,emitKind:mt}=Lt);else{let je=iws(S,Ke);if(je)return(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(je.affectedFile.resolvedPath,je.seenKind|Ott(Ke)),{result:{emitSkipped:!0,diagnostics:je.diagnostics},affected:je.affectedFile}}}if(!Qe){if(Ke||!zrn(S))return;let Lt=S.program,je=Lt.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,{result:je,affected:Lt}}}let yt;mt&7&&(yt=0),mt&56&&(yt=yt===void 0?1:void 0);let Rt=Ke?{emitSkipped:!0,diagnostics:S.program.getDeclarationDiagnostics(Qe===S.program?void 0:Qe,Te)}:S.program.emit(Qe===S.program?void 0:Qe,ee(Ne,Pe),Te,yt,Pe,void 0,!0);if(Qe!==S.program){let Lt=Qe;S.seenAffectedFiles.add(Lt.resolvedPath),S.affectedFilesIndex!==void 0&&S.affectedFilesIndex++,S.buildInfoEmitPending=!0;let je=((Ye=S.seenEmittedFiles)==null?void 0:Ye.get(Lt.resolvedPath))||0;(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Lt.resolvedPath,mt|je);let Wt=((Tt=S.affectedFilesPendingEmit)==null?void 0:Tt.get(Lt.resolvedPath))||Ct,_r=DVe(Wt,mt|je);_r?(S.affectedFilesPendingEmit??(S.affectedFilesPendingEmit=new Map)).set(Lt.resolvedPath,_r):(at=S.affectedFilesPendingEmit)==null||at.delete(Lt.resolvedPath),Rt.diagnostics.length&&(S.emitDiagnosticsPerFile??(S.emitDiagnosticsPerFile=new Map)).set(Lt.resolvedPath,Rt.diagnostics)}else S.changedFilesSet.clear(),S.programEmitPending=S.changedFilesSet.size?DVe(Ct,mt):S.programEmitPending?DVe(S.programEmitPending,mt):void 0,S.seenProgramEmit=mt|(S.seenProgramEmit||0),V(Rt.diagnostics),S.buildInfoEmitPending=!0;return{result:Rt,affected:Qe}}function V(Ne){let Te;Ne.forEach(Ze=>{if(!Ze.file)return;let Pe=Te?.get(Ze.file.resolvedPath);Pe||(Te??(Te=new Map)).set(Ze.file.resolvedPath,Pe=[]),Pe.push(Ze)}),Te&&(S.emitDiagnosticsPerFile=Te)}function M(Ne,Te,Ze,Pe){return O(Ne,Te,Ze,Pe,!1)}function ee(Ne,Te){return pe.assert(zie(S)),Oy(S.compilerOptions)?(Ze,Pe,Ke,et,Ye,Tt)=>{var at,Qe,Ct;if(MC(Ze))if(S.compilerOptions.outFile){if(S.compilerOptions.composite){let yt=mt(S.outSignature,void 0);if(!yt)return Tt.skippedDtsWrite=!0;S.outSignature=yt}}else{pe.assert(Ye?.length===1);let yt;if(!Te){let Rt=Ye[0],Lt=S.fileInfos.get(Rt.resolvedPath);if(Lt.signature===Rt.version){let je=Mtt(S.program,Rt,Pe,g,Tt);(at=Tt?.diagnostics)!=null&&at.length||(yt=je),je!==Rt.version&&(g.storeSignatureInfo&&(S.signatureInfo??(S.signatureInfo=new Map)).set(Rt.resolvedPath,1),S.affectedFiles&&((Qe=S.oldSignatures)==null?void 0:Qe.get(Rt.resolvedPath))===void 0&&(S.oldSignatures??(S.oldSignatures=new Map)).set(Rt.resolvedPath,Lt.signature||!1),Lt.signature=je)}}if(S.compilerOptions.composite){let Rt=Ye[0].resolvedPath;if(yt=mt((Ct=S.emitSignatures)==null?void 0:Ct.get(Rt),yt),!yt)return Tt.skippedDtsWrite=!0;(S.emitSignatures??(S.emitSignatures=new Map)).set(Rt,yt)}}Ne?Ne(Ze,Pe,Ke,et,Ye,Tt):g.writeFile?g.writeFile(Ze,Pe,Ke,et,Ye,Tt):S.program.writeFile(Ze,Pe,Ke,et,Ye,Tt);function mt(yt,Rt){let Lt=!yt||Xs(yt)?yt:yt[0];if(Rt??(Rt=uws(Pe,g,Tt)),Rt===Lt){if(yt===Lt)return;Tt?Tt.differsOnlyInMap=!0:Tt={differsOnlyInMap:!0}}else S.hasChangedEmitSignature=!0,S.latestChangedDtsFile=Ze;return Rt}}:Ne||$i(g,g.writeFile)}function re(Ne,Te,Ze,Pe,Ke){pe.assert(zie(S)),s===1&&c5t(S,Ne);let et=Vtt(R,Ne,Te,Ze);if(et)return et;if(!Ne)if(s===1){let Tt=[],at=!1,Qe,Ct=[],mt;for(;mt=M(Te,Ze,Pe,Ke);)at=at||mt.result.emitSkipped,Qe=Pr(Qe,mt.result.diagnostics),Ct=Pr(Ct,mt.result.emittedFiles),Tt=Pr(Tt,mt.result.sourceMaps);return{emitSkipped:at,diagnostics:Qe||E,emittedFiles:Ct,sourceMaps:Tt}}else Qrn(S,Pe,!1);let Ye=S.program.emit(Ne,ee(Te,Ke),Ze,Pe,Ke);return ge(Ne,Pe,!1,Ye.diagnostics),Ye}function ge(Ne,Te,Ze,Pe){!Ne&&s!==1&&(Qrn(S,Te,Ze),V(Pe))}function Ie(Ne,Te){var Ze;if(pe.assert(zie(S)),s===1){c5t(S,Ne);let Pe,Ke;for(;Pe=O(void 0,Te,void 0,void 0,!0);)Ne||(Ke=Pr(Ke,Pe.result.diagnostics));return(Ne?(Ze=S.emitDiagnosticsPerFile)==null?void 0:Ze.get(Ne.resolvedPath):Ke)||E}else{let Pe=S.program.getDeclarationDiagnostics(Ne,Te);return ge(Ne,void 0,!0,Pe),Pe}}function _e(Ne,Te){for(pe.assert(zie(S));;){let Ze=Yrn(S,Ne,g),Pe;if(Ze)if(Ze!==S.program){let Ke=Ze;if((!Te||!Te(Ke))&&(Pe=Ptt(S,Ke,Ne)),S.seenAffectedFiles.add(Ke.resolvedPath),S.affectedFilesIndex++,S.buildInfoEmitPending=!0,!Pe)continue}else{let Ke,et=new Map;S.program.getSourceFiles().forEach(Ye=>Ke=Pr(Ke,Ptt(S,Ye,Ne,et))),S.semanticDiagnosticsPerFile=et,Pe=Ke||E,S.changedFilesSet.clear(),S.programEmitPending=qW(S.compilerOptions),S.compilerOptions.noCheck||(S.checkPending=void 0),S.buildInfoEmitPending=!0}else{S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0);return}return{result:Pe,affected:Ze}}}function Ee(Ne,Te){if(pe.assert(zie(S)),c5t(S,Ne),Ne)return Ptt(S,Ne,Te);for(;;){let Pe=_e(Te);if(!Pe)break;if(Pe.affected===S.program)return Pe.result}let Ze;for(let Pe of S.program.getSourceFiles())Ze=Pr(Ze,Ptt(S,Pe,Te));return S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0),Ze||E}}function Ytt(s,c,g){var d,h;let _=((d=s.affectedFilesPendingEmit)==null?void 0:d.get(c))||0;(s.affectedFilesPendingEmit??(s.affectedFilesPendingEmit=new Map)).set(c,_|g),(h=s.emitDiagnosticsPerFile)==null||h.delete(c)}function p5t(s){return Xs(s)?{version:s,signature:s,affectsGlobalScope:void 0,impliedFormat:void 0}:Xs(s.signature)?s:{version:s.version,signature:s.signature===!1?void 0:s.version,affectsGlobalScope:s.affectsGlobalScope,impliedFormat:s.impliedFormat}}function f5t(s,c){return ws(s)?c:s[1]||24}function I5t(s,c){return s||qW(c||{})}function h5t(s,c,g){var d,h,_,S;let R=Mo(Xc(c,g.getCurrentDirectory())),T=bd(g.useCaseSensitiveFileNames()),O,V=(d=s.fileNames)==null?void 0:d.map(Ie),M,ee=s.latestChangedDtsFile?_e(s.latestChangedDtsFile):void 0,re=new Map,ge=new Set(lt(s.changeFileSet,Ee));if(A5t(s))s.fileInfos.forEach((Ke,et)=>{let Ye=Ee(et+1);re.set(Ye,Xs(Ke)?{version:Ke,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:Ke)}),O={fileInfos:re,compilerOptions:s.options?Y9e(s.options,_e):{},semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:Pe(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,latestChangedDtsFile:ee,outSignature:s.outSignature,programEmitPending:s.pendingEmit===void 0?void 0:I5t(s.pendingEmit,s.options),hasErrors:s.errors,checkPending:s.checkPending};else{M=(h=s.fileIdsList)==null?void 0:h.map(Ye=>new Set(Ye.map(Ee)));let Ke=(_=s.options)!=null&&_.composite&&!s.options.outFile?new Map:void 0;s.fileInfos.forEach((Ye,Tt)=>{let at=Ee(Tt+1),Qe=p5t(Ye);re.set(at,Qe),Ke&&Qe.signature&&Ke.set(at,Qe.signature)}),(S=s.emitSignatures)==null||S.forEach(Ye=>{if(ws(Ye))Ke.delete(Ee(Ye));else{let Tt=Ee(Ye[0]);Ke.set(Tt,!Xs(Ye[1])&&!Ye[1].length?[Ke.get(Tt)]:Ye[1])}});let et=s.affectedFilesPendingEmit?qW(s.options||{}):void 0;O={fileInfos:re,compilerOptions:s.options?Y9e(s.options,_e):{},referencedMap:Te(s.referencedMap,s.options??{}),semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:Pe(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,affectedFilesPendingEmit:s.affectedFilesPendingEmit&&Ru(s.affectedFilesPendingEmit,Ye=>Ee(ws(Ye)?Ye:Ye[0]),Ye=>f5t(Ye,et)),latestChangedDtsFile:ee,emitSignatures:Ke?.size?Ke:void 0,hasErrors:s.errors,checkPending:s.checkPending}}return{state:O,getProgram:rl,getProgramOrUndefined:Am,releaseProgram:Dc,getCompilerOptions:()=>O.compilerOptions,getSourceFile:rl,getSourceFiles:rl,getOptionsDiagnostics:rl,getGlobalDiagnostics:rl,getConfigFileParsingDiagnostics:rl,getSyntacticDiagnostics:rl,getDeclarationDiagnostics:rl,getSemanticDiagnostics:rl,emit:rl,getAllDependencies:rl,getCurrentDirectory:rl,emitNextAffectedFile:rl,getSemanticDiagnosticsOfNextAffectedFile:rl,emitBuildInfo:rl,close:Dc,hasChangedEmitSignature:As};function Ie(Ke){return Pu(Ke,R,T)}function _e(Ke){return Xc(Ke,R)}function Ee(Ke){return V[Ke-1]}function Ne(Ke){return M[Ke-1]}function Te(Ke,et){let Ye=lR.createReferencedMap(et);return!Ye||!Ke||Ke.forEach(([Tt,at])=>Ye.set(Ee(Tt),Ne(at))),Ye}function Ze(Ke){let et=new Map(lr(re.keys(),Ye=>ge.has(Ye)?void 0:[Ye,E]));return Ke?.forEach(Ye=>{ws(Ye)?et.delete(Ee(Ye)):et.set(Ee(Ye[0]),Ye[1])}),et}function Pe(Ke){return Ke&&Ru(Ke,et=>Ee(et[0]),et=>et[1])}}function Qtt(s,c,g){let d=Mo(Xc(c,g.getCurrentDirectory())),h=bd(g.useCaseSensitiveFileNames()),_=new Map,S=0,R=new Map,T=new Map(s.resolvedRoot);return s.fileInfos.forEach((V,M)=>{let ee=Pu(s.fileNames[M],d,h),re=Xs(V)?V:V.version;if(_.set(ee,re),SPu(_,d,h))}function Xtt(s,c){return{state:void 0,getProgram:g,getProgramOrUndefined:()=>s.program,releaseProgram:()=>s.program=void 0,getCompilerOptions:()=>s.compilerOptions,getSourceFile:d=>g().getSourceFile(d),getSourceFiles:()=>g().getSourceFiles(),getOptionsDiagnostics:d=>g().getOptionsDiagnostics(d),getGlobalDiagnostics:d=>g().getGlobalDiagnostics(d),getConfigFileParsingDiagnostics:()=>c,getSyntacticDiagnostics:(d,h)=>g().getSyntacticDiagnostics(d,h),getDeclarationDiagnostics:(d,h)=>g().getDeclarationDiagnostics(d,h),getSemanticDiagnostics:(d,h)=>g().getSemanticDiagnostics(d,h),emit:(d,h,_,S,R)=>g().emit(d,h,_,S,R),emitBuildInfo:(d,h)=>g().emitBuildInfo(d,h),getAllDependencies:rl,getCurrentDirectory:()=>g().getCurrentDirectory(),close:Dc};function g(){return pe.checkDefined(s.program)}}function $rn(s,c,g,d,h,_){return Htt(0,xVe(s,c,g,d,h,_))}function Jtt(s,c,g,d,h,_){return Htt(1,xVe(s,c,g,d,h,_))}function enn(s,c,g,d,h,_){let{newProgram:S,configFileParsingDiagnostics:R}=xVe(s,c,g,d,h,_);return Xtt({program:S,compilerOptions:S.getCompilerOptions()},R)}function GVe(s){return di(s,"/node_modules/.staging")?aa(s,"/.staging"):zt(Jp,c=>s.includes(c))?void 0:s}function C5t(s,c){if(c<=1)return 1;let g=1,d=s[0].search(/[a-z]:/i)===0;if(s[0]!==cg&&!d&&s[1].search(/[a-z]\$$/i)===0){if(c===2)return 2;g=2,d=!0}return d&&!s[g].match(/^users$/i)?g:s[g].match(/^workspaces$/i)?g+1:g+2}function Utt(s,c){if(c===void 0&&(c=s.length),c<=2)return!1;let g=C5t(s,c);return c>g+1}function C1e(s){return Utt(kp(s))}function _5t(s){return rnn(Mo(s))}function tnn(s,c){if(c.lengthh.length+1?b5t(O,T,Math.max(h.length+1,V+1),ee):{dir:g,dirPath:d,nonRecursive:!0}:nnn(O,T,T.length-1,V,M,h,ee,R)}function nnn(s,c,g,d,h,_,S,R){if(h!==-1)return b5t(s,c,h+1,S);let T=!0,O=g;if(!R){for(let V=0;V=g&&d+2gws(d,h,_,s,g,c,S)}}function gws(s,c,g,d,h,_,S){let R=FVe(s),T=OU(g,d,h,R,c,_,S);if(!s.getGlobalTypingsCacheLocation)return T;let O=s.getGlobalTypingsCacheLocation();if(O!==void 0&&!Xr(g)&&!(T.resolvedModule&&nde(T.resolvedModule.extension))){let{resolvedModule:V,failedLookupLocations:M,affectingLocations:ee,resolutionDiagnostics:re}=ZPt(pe.checkDefined(s.globalCacheResolutionModuleName)(g),s.projectName,h,R,O,c);if(V)return T.resolvedModule=V,T.failedLookupLocations=Pie(T.failedLookupLocations,M),T.affectingLocations=Pie(T.affectingLocations,ee),T.resolutionDiagnostics=Pie(T.resolutionDiagnostics,re),T}return T}function jtt(s,c,g){let d,h,_,S=new Set,R=new Set,T=new Set,O=new Map,V=new Map,M=!1,ee,re,ge,Ie,_e,Ee=!1,Ne=LA(()=>s.getCurrentDirectory()),Te=s.getCachedDirectoryStructureHost(),Ze=new Map,Pe=Hie(Ne(),s.getCanonicalFileName,s.getCompilationSettings()),Ke=new Map,et=eVe(Ne(),s.getCanonicalFileName,s.getCompilationSettings(),Pe.getPackageJsonInfoCache(),Pe.optionsToRedirectsKey),Ye=new Map,Tt=Hie(Ne(),s.getCanonicalFileName,Det(s.getCompilationSettings()),Pe.getPackageJsonInfoCache()),at=new Map,Qe=new Map,Ct=S5t(c,Ne),mt=s.toPath(Ct),yt=kp(mt),Rt=Utt(yt),Lt=new Map,je=new Map,Wt=new Map,_r=new Map;return{rootDirForResolution:c,resolvedModuleNames:Ze,resolvedTypeReferenceDirectives:Ke,resolvedLibraries:Ye,resolvedFileToResolution:O,resolutionsWithFailedLookups:R,resolutionsWithOnlyAffectingLocations:T,directoryWatchesOfFailedLookups:at,fileWatchesOfAffectingLocations:Qe,packageDirWatchers:je,dirPathToSymlinkPackageRefCount:Wt,watchFailedLookupLocationsOfExternalModuleResolutions:si,getModuleResolutionCache:()=>Pe,startRecordingFilesWithChangedResolutions:Dt,finishRecordingFilesWithChangedResolutions:tr,startCachingPerDirectoryResolution:dt,finishCachingPerDirectoryResolution:ot,resolveModuleNameLiterals:jn,resolveTypeReferenceDirectiveReferences:mn,resolveLibrary:Zi,resolveSingleModuleNameWithoutWatching:Ns,removeResolutionsFromProjectReferenceRedirects:Pa,removeResolutionsOfFile:$c,hasChangedAutomaticTypeDirectiveNames:()=>M,invalidateResolutionOfFile:Rg,invalidateResolutionsOfFailedLookupLocations:Wn,setFilesWithInvalidatedNonRelativeUnresolvedImports:Cs,createHasInvalidatedResolutions:Gr,isFileWithInvalidatedNonRelativeUnresolvedImports:ur,updateTypeRootsWatch:Kr,closeTypeRootsWatch:nr,clear:Gt,onChangesAffectModuleResolution:it};function Gt(){Vy(at,Sv),Vy(Qe,Sv),Lt.clear(),je.clear(),Wt.clear(),S.clear(),nr(),Ze.clear(),Ke.clear(),O.clear(),R.clear(),T.clear(),ge=void 0,Ie=void 0,_e=void 0,re=void 0,ee=void 0,Ee=!1,Pe.clear(),et.clear(),Pe.update(s.getCompilationSettings()),et.update(s.getCompilationSettings()),Tt.clear(),V.clear(),Ye.clear(),M=!1}function it(){Ee=!0,Pe.clearAllExceptPackageJsonInfoCache(),et.clearAllExceptPackageJsonInfoCache(),Pe.update(s.getCompilationSettings()),et.update(s.getCompilationSettings())}function Dt(){d=[]}function tr(){let hr=d;return d=void 0,hr}function ur(hr){if(!_)return!1;let En=_.get(hr);return!!En&&!!En.length}function Gr(hr,En){Wn();let Ni=h;return h=void 0,{hasInvalidatedResolutions:Gi=>hr(Gi)||Ee||!!Ni?.has(Gi)||ur(Gi),hasInvalidatedLibResolutions:Gi=>{var nn;return En(Gi)||!!((nn=Ye?.get(Gi))!=null&&nn.isInvalidated)}}}function dt(){Pe.isReadonly=void 0,et.isReadonly=void 0,Tt.isReadonly=void 0,Pe.getPackageJsonInfoCache().isReadonly=void 0,Pe.clearAllExceptPackageJsonInfoCache(),et.clearAllExceptPackageJsonInfoCache(),Tt.clearAllExceptPackageJsonInfoCache(),Fl(),Lt.clear()}function pr(hr){Ye.forEach((En,Ni)=>{var Gi;(Gi=hr?.resolvedLibReferences)!=null&&Gi.has(Ni)||(hn(En,s.toPath(BVe(s.getCompilationSettings(),Ne(),Ni)),PL),Ye.delete(Ni))})}function ot(hr,En){_=void 0,Ee=!1,Fl(),hr!==En&&(pr(hr),hr?.getSourceFiles().forEach(Ni=>{var Gi;let nn=((Gi=Ni.packageJsonLocations)==null?void 0:Gi.length)??0,bn=V.get(Ni.resolvedPath)??E;for(let ds=bn.length;dsnn)for(let ds=nn;ds{let nn=hr?.getSourceFileByPath(Gi);(!nn||nn.resolvedPath!==Gi)&&(Ni.forEach(bn=>Qe.get(bn).files--),V.delete(Gi))})),at.forEach(qt),Qe.forEach(Yt),je.forEach(ir),M=!1,Pe.isReadonly=!0,et.isReadonly=!0,Tt.isReadonly=!0,Pe.getPackageJsonInfoCache().isReadonly=!0,Lt.clear()}function ir(hr,En){hr.dirPathToWatcher.size===0&&je.delete(En)}function qt(hr,En){hr.refCount===0&&(at.delete(En),hr.watcher.close())}function Yt(hr,En){var Ni;hr.files===0&&hr.resolutions===0&&!((Ni=hr.symlinks)!=null&&Ni.size)&&(Qe.delete(En),hr.watcher.close())}function Tr({entries:hr,containingFile:En,containingSourceFile:Ni,redirectedReference:Gi,options:nn,perFileCache:bn,reusedNames:ds,loader:Ht,getResolutionWithResolvedFileName:cn,deferWatchingNonRelativeResolution:wt,shouldRetryResolution:xe,logChanges:fr}){var Ue;let In=s.toPath(En),Hn=bn.get(In)||bn.set(In,Mie()).get(In),Mt=[],$r=fr&&ur(In),ri=s.getCurrentProgram(),oo=ri&&((Ue=ri.getRedirectFromSourceFile(En))==null?void 0:Ue.resolvedRef),Bs=oo?!Gi||Gi.sourceFile.path!==oo.sourceFile.path:!!Gi,Ys=Mie();for(let Bn of hr){let Mn=Ht.nameAndMode.getName(Bn),ci=Ht.nameAndMode.getMode(Bn,Ni,Gi?.commandLine.options||nn),es=Hn.get(Mn,ci);if(!Ys.has(Mn,ci)&&(Ee||Bs||!es||es.isInvalidated||$r&&!Xr(Mn)&&xe(es))){let Oi=es;es=Ht.resolve(Mn,ci),s.onDiscoveredSymlink&&Aws(es)&&s.onDiscoveredSymlink(),Hn.set(Mn,ci,es),es!==Oi&&(si(Mn,es,In,cn,wt),Oi&&hn(Oi,In,cn)),fr&&d&&!tn(Oi,es)&&(d.push(In),fr=!1)}else{let Oi=FVe(s);if(JW(nn,Oi)&&!Ys.has(Mn,ci)){let Vn=cn(es);tu(Oi,bn===Ze?Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,Mn,En,Vn?.resolvedFileName,Vn?.packageId&&AN(Vn.packageId))}}pe.assert(es!==void 0&&!es.isInvalidated),Ys.set(Mn,ci,!0),Mt.push(es)}return ds?.forEach(Bn=>Ys.set(Ht.nameAndMode.getName(Bn),Ht.nameAndMode.getMode(Bn,Ni,Gi?.commandLine.options||nn),!0)),Hn.size()!==Ys.size()&&Hn.forEach((Bn,Mn,ci)=>{Ys.has(Mn,ci)||(hn(Bn,In,cn),Hn.delete(Mn,ci))}),Mt;function tn(Bn,Mn){if(Bn===Mn)return!0;if(!Bn||!Mn)return!1;let ci=cn(Bn),es=cn(Mn);return ci===es?!0:!ci||!es?!1:ci.resolvedFileName===es.resolvedFileName}}function mn(hr,En,Ni,Gi,nn,bn){return Tr({entries:hr,containingFile:En,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:bn,perFileCache:Ke,loader:vVe(En,Ni,Gi,FVe(s),et),getResolutionWithResolvedFileName:E7,shouldRetryResolution:ds=>ds.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function jn(hr,En,Ni,Gi,nn,bn){return Tr({entries:hr,containingFile:En,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:bn,perFileCache:Ze,loader:v5t(En,Ni,Gi,s,Pe),getResolutionWithResolvedFileName:PL,shouldRetryResolution:ds=>!ds.resolvedModule||!fz(ds.resolvedModule.extension),logChanges:g,deferWatchingNonRelativeResolution:!0})}function Zi(hr,En,Ni,Gi){let nn=FVe(s),bn=Ye?.get(Gi);if(!bn||bn.isInvalidated){let ds=bn;bn=tVe(hr,En,Ni,nn,Tt);let Ht=s.toPath(En);si(hr,bn,Ht,PL,!1),Ye.set(Gi,bn),ds&&hn(ds,Ht,PL)}else if(JW(Ni,nn)){let ds=PL(bn);tu(nn,ds?.resolvedFileName?ds.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,hr,En,ds?.resolvedFileName,ds?.packageId&&AN(ds.packageId))}return bn}function Ns(hr,En){var Ni,Gi;let nn=s.toPath(En),bn=Ze.get(nn),ds=bn?.get(hr,void 0);if(ds&&!ds.isInvalidated)return ds;let Ht=(Ni=s.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:Ni.call(s,Pe),cn=FVe(s),wt=OU(hr,En,s.getCompilationSettings(),cn,Pe);return(Gi=s.afterResolveSingleModuleNameWithoutWatching)==null||Gi.call(s,Pe,hr,En,wt,Ht),wt}function An(hr){return di(hr,"/node_modules/@types")}function si(hr,En,Ni,Gi,nn){if((En.files??(En.files=new Set)).add(Ni),En.files.size!==1)return;!nn||Xr(hr)?Ic(En):S.add(En);let bn=Gi(En);if(bn&&bn.resolvedFileName){let ds=s.toPath(bn.resolvedFileName),Ht=O.get(ds);Ht||O.set(ds,Ht=new Set),Ht.add(En)}}function ks(hr,En){let Ni=s.toPath(hr),Gi=Ktt(hr,Ni,Ct,mt,yt,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dir:nn,dirPath:bn,nonRecursive:ds,packageDir:Ht,packageDirPath:cn}=Gi;bn===mt?(pe.assert(ds),pe.assert(!Ht),En=!0):Oo(nn,bn,Ht,cn,ds)}return En}function Ic(hr){var En;pe.assert(!!((En=hr.files)!=null&&En.size));let{failedLookupLocations:Ni,affectingLocations:Gi,alternateResult:nn}=hr;if(!Ni?.length&&!Gi?.length&&!nn)return;(Ni?.length||nn)&&R.add(hr);let bn=!1;if(Ni)for(let ds of Ni)bn=ks(ds,bn);nn&&(bn=ks(nn,bn)),bn&&Oo(Ct,mt,void 0,void 0,!0),ou(hr,!Ni?.length&&!nn)}function ou(hr,En){var Ni;pe.assert(!!((Ni=hr.files)!=null&&Ni.size));let{affectingLocations:Gi}=hr;if(Gi?.length){En&&T.add(hr);for(let nn of Gi)Zn(nn,!0)}}function Zn(hr,En){let Ni=Qe.get(hr);if(Ni){En?Ni.resolutions++:Ni.files++;return}let Gi=hr,nn=!1,bn;s.realpath&&(Gi=s.realpath(hr),hr!==Gi&&(nn=!0,bn=Qe.get(Gi)));let ds=En?1:0,Ht=En?0:1;if(!nn||!bn){let cn={watcher:y5t(s.toPath(Gi))?s.watchAffectingFileLocation(Gi,(wt,xe)=>{Te?.addOrDeleteFile(wt,s.toPath(Gi),xe),ya(Gi,Pe.getPackageJsonInfoCache().getInternalMap()),s.scheduleInvalidateResolutionsOfFailedLookupLocations()}):$ie,resolutions:nn?0:ds,files:nn?0:Ht,symlinks:void 0};Qe.set(Gi,cn),nn&&(bn=cn)}if(nn){pe.assert(!!bn);let cn={watcher:{close:()=>{var wt;let xe=Qe.get(Gi);(wt=xe?.symlinks)!=null&&wt.delete(hr)&&!xe.symlinks.size&&!xe.resolutions&&!xe.files&&(Qe.delete(Gi),xe.watcher.close())}},resolutions:ds,files:Ht,symlinks:void 0};Qe.set(hr,cn),(bn.symlinks??(bn.symlinks=new Set)).add(hr)}}function ya(hr,En){var Ni;let Gi=Qe.get(hr);Gi?.resolutions&&(re??(re=new Set)).add(hr),Gi?.files&&(ee??(ee=new Set)).add(hr),(Ni=Gi?.symlinks)==null||Ni.forEach(nn=>ya(nn,En)),En?.delete(s.toPath(hr))}function Fl(){S.forEach(Ic),S.clear()}function ba(hr,En,Ni,Gi,nn){pe.assert(!nn);let bn=Lt.get(Gi),ds=je.get(Gi);if(bn===void 0){let wt=s.realpath(Ni);bn=wt!==Ni&&s.toPath(wt)!==Gi,Lt.set(Gi,bn),ds?ds.isSymlink!==bn&&(ds.dirPathToWatcher.forEach(xe=>{Pi(ds.isSymlink?Gi:En),xe.watcher=cn()}),ds.isSymlink=bn):je.set(Gi,ds={dirPathToWatcher:new Map,isSymlink:bn})}else pe.assertIsDefined(ds),pe.assert(bn===ds.isSymlink);let Ht=ds.dirPathToWatcher.get(En);Ht?Ht.refCount++:(ds.dirPathToWatcher.set(En,{watcher:cn(),refCount:1}),bn&&Wt.set(En,(Wt.get(En)??0)+1));function cn(){return bn?hc(Ni,Gi,nn):hc(hr,En,nn)}}function Oo(hr,En,Ni,Gi,nn){!Gi||!s.realpath?hc(hr,En,nn):ba(hr,En,Ni,Gi,nn)}function hc(hr,En,Ni){let Gi=at.get(En);return Gi?(pe.assert(!!Ni==!!Gi.nonRecursive),Gi.refCount++):at.set(En,Gi={watcher:co(hr,En,Ni),refCount:1,nonRecursive:Ni}),Gi}function yr(hr,En){let Ni=s.toPath(hr),Gi=Ktt(hr,Ni,Ct,mt,yt,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dirPath:nn,packageDirPath:bn}=Gi;if(nn===mt)En=!0;else if(bn&&s.realpath){let ds=je.get(bn),Ht=ds.dirPathToWatcher.get(nn);if(Ht.refCount--,Ht.refCount===0&&(Pi(ds.isSymlink?bn:nn),ds.dirPathToWatcher.delete(nn),ds.isSymlink)){let cn=Wt.get(nn)-1;cn===0?Wt.delete(nn):Wt.set(nn,cn)}}else Pi(nn)}return En}function hn(hr,En,Ni){if(pe.checkDefined(hr.files).delete(En),hr.files.size)return;hr.files=void 0;let Gi=Ni(hr);if(Gi&&Gi.resolvedFileName){let Ht=s.toPath(Gi.resolvedFileName),cn=O.get(Ht);cn?.delete(hr)&&!cn.size&&O.delete(Ht)}let{failedLookupLocations:nn,affectingLocations:bn,alternateResult:ds}=hr;if(R.delete(hr)){let Ht=!1;if(nn)for(let cn of nn)Ht=yr(cn,Ht);ds&&(Ht=yr(ds,Ht)),Ht&&Pi(mt)}else bn?.length&&T.delete(hr);if(bn)for(let Ht of bn){let cn=Qe.get(Ht);cn.resolutions--}}function Pi(hr){let En=at.get(hr);En.refCount--}function co(hr,En,Ni){return s.watchDirectoryOfFailedLookupLocation(hr,Gi=>{let nn=s.toPath(Gi);Te&&Te.addOrDeleteFileOrDirectory(Gi,nn),Tu(nn,En===nn)},Ni?0:1)}function pa(hr,En,Ni){let Gi=hr.get(En);Gi&&(Gi.forEach(nn=>hn(nn,En,Ni)),hr.delete(En))}function Pa(hr){if(!lA(hr,".json"))return;let En=s.getCurrentProgram();if(!En)return;let Ni=En.getResolvedProjectReferenceByPath(hr);Ni&&Ni.commandLine.fileNames.forEach(Gi=>$c(s.toPath(Gi)))}function $c(hr){pa(Ze,hr,PL),pa(Ke,hr,E7)}function Qu(hr,En){if(!hr)return!1;let Ni=!1;return hr.forEach(Gi=>{if(!(Gi.isInvalidated||!En(Gi))){Gi.isInvalidated=Ni=!0;for(let nn of pe.checkDefined(Gi.files))(h??(h=new Set)).add(nn),M=M||di(nn,$de)}}),Ni}function Rg(hr){$c(hr);let En=M;Qu(O.get(hr),Nf)&&M&&!En&&s.onChangedAutomaticTypeDirectiveNames()}function Cs(hr){pe.assert(_===hr||_===void 0),_=hr}function Tu(hr,En){if(En)(_e||(_e=new Set)).add(hr);else{let Ni=GVe(hr);if(!Ni||(hr=Ni,s.fileIsOpen(hr)))return!1;let Gi=Mo(hr);if(An(hr)||Od(hr)||An(Gi)||Od(Gi))(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);else{if(Q3t(s.getCurrentProgram(),hr)||lA(hr,".map"))return!1;(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);let nn=KEe(hr,!0);nn&&(Ie||(Ie=new Set)).add(nn)}}s.scheduleInvalidateResolutionsOfFailedLookupLocations()}function Wr(){let hr=Pe.getPackageJsonInfoCache().getInternalMap();hr&&(ge||Ie||_e)&&hr.forEach((En,Ni)=>on(Ni)?hr.delete(Ni):void 0)}function Wn(){var hr;if(Ee)return ee=void 0,Wr(),(ge||Ie||_e||re)&&Qu(Ye,pt),ge=void 0,Ie=void 0,_e=void 0,re=void 0,!0;let En=!1;return ee&&((hr=s.getCurrentProgram())==null||hr.getSourceFiles().forEach(Ni=>{zt(Ni.packageJsonLocations,Gi=>ee.has(Gi))&&((h??(h=new Set)).add(Ni.path),En=!0)}),ee=void 0),!ge&&!Ie&&!_e&&!re||(En=Qu(R,pt)||En,Wr(),ge=void 0,Ie=void 0,_e=void 0,En=Qu(T,st)||En,re=void 0),En}function pt(hr){var En;return st(hr)?!0:!ge&&!Ie&&!_e?!1:((En=hr.failedLookupLocations)==null?void 0:En.some(Ni=>on(s.toPath(Ni))))||!!hr.alternateResult&&on(s.toPath(hr.alternateResult))}function on(hr){return ge?.has(hr)||ae(Ie?.keys()||[],En=>Ac(hr,En)?!0:void 0)||ae(_e?.keys()||[],En=>hr.length>En.length&&Ac(hr,En)&&(AE(En)||hr[En.length]===cg)?!0:void 0)}function st(hr){var En;return!!re&&((En=hr.affectingLocations)==null?void 0:En.some(Ni=>re.has(Ni)))}function nr(){Vy(_r,mv)}function Zr(hr){return Dn(hr)?s.watchTypeRootsDirectory(hr,En=>{let Ni=s.toPath(En);Te&&Te.addOrDeleteFileOrDirectory(En,Ni),M=!0,s.onChangedAutomaticTypeDirectiveNames();let Gi=E5t(hr,s.toPath(hr),mt,yt,Rt,Ne,s.preferNonRecursiveWatch,nn=>at.has(nn)||Wt.has(nn));Gi&&Tu(Ni,Gi===Ni)},1):$ie}function Kr(){let hr=s.getCompilationSettings();if(hr.types){nr();return}let En=Zde(hr,{getCurrentDirectory:Ne});En?oz(_r,new Set(En),{createNewValue:Zr,onDeleteValue:mv}):nr()}function Dn(hr){return s.getCompilationSettings().typeRoots?!0:_5t(s.toPath(hr))}}function Aws(s){var c,g;return!!((c=s.resolvedModule)!=null&&c.originalPath||(g=s.resolvedTypeReferenceDirective)!=null&&g.originalPath)}var inn=Ed?{getCurrentDirectory:()=>Ed.getCurrentDirectory(),getNewLine:()=>Ed.newLine,getCanonicalFileName:bd(Ed.useCaseSensitiveFileNames)}:void 0;function Kz(s,c){let g=s===Ed&&inn?inn:{getCurrentDirectory:()=>s.getCurrentDirectory(),getNewLine:()=>s.newLine,getCanonicalFileName:bd(s.useCaseSensitiveFileNames)};if(!c)return h=>s.write(Ntt(h,g));let d=new Array(1);return h=>{d[0]=h,s.write(q3t(d,g)+g.getNewLine()),d[0]=void 0}}function snn(s,c,g){return s.clearScreen&&!g.preserveWatchOutput&&!g.extendedDiagnostics&&!g.diagnostics&&k(onn,c.code)?(s.clearScreen(),!0):!1}var onn=[Z.Starting_compilation_in_watch_mode.code,Z.File_change_detected_Starting_incremental_compilation.code];function dws(s,c){return k(onn,s.code)?c+c:c}function _1e(s){return s.now?s.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202F"," "):new Date().toLocaleTimeString()}function ztt(s,c){return c?(g,d,h)=>{snn(s,g,h);let _=`[${SQ(_1e(s),"\x1B[90m")}] `;_+=`${xN(g.messageText,s.newLine)}${d+d}`,s.write(_)}:(g,d,h)=>{let _="";snn(s,g,h)||(_+=d),_+=`${_1e(s)} - `,_+=`${xN(g.messageText,s.newLine)}${dws(g,d)}`,s.write(_)}}function B5t(s,c,g,d,h,_){let S=h;S.onUnRecoverableConfigFileDiagnostic=T=>lnn(h,_,T);let R=MEe(s,c,S,g,d);return S.onUnRecoverableConfigFileDiagnostic=void 0,R}function ZVe(s){return ze(s,c=>c.category===1)}function LVe(s){return Le(s,g=>g.category===1).map(g=>{if(g.file!==void 0)return`${g.file.fileName}`}).map(g=>{if(g===void 0)return;let d=de(s,h=>h.file!==void 0&&h.file.fileName===g);if(d!==void 0){let{line:h}=Ra(d.file,d.start);return{fileName:g,line:h+1}}})}function qtt(s){return s===1?Z.Found_1_error_Watching_for_file_changes:Z.Found_0_errors_Watching_for_file_changes}function ann(s,c){let g=SQ(":"+s.line,"\x1B[90m");return dE(s.fileName)&&dE(c)?_p(c,s.fileName,!1)+g:s.fileName+g}function $tt(s,c,g,d){if(s===0)return"";let h=c.filter(V=>V!==void 0),_=h.map(V=>`${V.fileName}:${V.line}`).filter((V,M,ee)=>ee.indexOf(V)===M),S=h[0]&&ann(h[0],d.getCurrentDirectory()),R;s===1?R=c[0]!==void 0?[Z.Found_1_error_in_0,S]:[Z.Found_1_error]:R=_.length===0?[Z.Found_0_errors,s]:_.length===1?[Z.Found_0_errors_in_the_same_file_starting_at_Colon_1,s,S]:[Z.Found_0_errors_in_1_files,s,_.length];let T=kf(...R),O=_.length>1?pws(h,d):"";return`${g}${xN(T.messageText,g)}${g}${g}${O}`}function pws(s,c){let g=s.filter((M,ee,re)=>ee===re.findIndex(ge=>ge?.fileName===M?.fileName));if(g.length===0)return"";let d=M=>Math.log(M)*Math.LOG10E+1,h=g.map(M=>[M,ze(s,ee=>ee.fileName===M.fileName)]),_=ls(h,0,M=>M[1]),S=Z.Errors_Files.message,R=S.split(" ")[0].length,T=Math.max(R,d(_)),O=Math.max(d(_)-R,0),V="";return V+=" ".repeat(O)+S+` +`,h.forEach(M=>{let[ee,re]=M,ge=Math.log(re)*Math.LOG10E+1|0,Ie=ge{c(d.fileName)})}function trt(s,c){var g,d;let h=s.getFileIncludeReasons(),_=S=>o2(S,s.getCurrentDirectory(),s.getCanonicalFileName);for(let S of s.getSourceFiles())c(`${qie(S,_)}`),(g=h.get(S.path))==null||g.forEach(R=>c(` ${srt(s,R,_).messageText}`)),(d=rrt(S,s.getCompilerOptionsForFile(S),_))==null||d.forEach(R=>c(` ${R.messageText}`))}function rrt(s,c,g){var d;let h;if(s.path!==s.resolvedPath&&(h??(h=[])).push(wu(void 0,Z.File_is_output_of_project_reference_source_0,qie(s.originalFileName,g))),s.redirectInfo&&(h??(h=[])).push(wu(void 0,Z.File_redirects_to_file_0,qie(s.redirectInfo.redirectTarget,g))),Sl(s))switch(YU(s,c)){case 99:s.packageJsonScope&&(h??(h=[])).push(wu(void 0,Z.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,qie(Ei(s.packageJsonLocations),g)));break;case 1:s.packageJsonScope?(h??(h=[])).push(wu(void 0,s.packageJsonScope.contents.packageJsonContent.type?Z.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Z.File_is_CommonJS_module_because_0_does_not_have_field_type,qie(Ei(s.packageJsonLocations),g))):(d=s.packageJsonLocations)!=null&&d.length&&(h??(h=[])).push(wu(void 0,Z.File_is_CommonJS_module_because_package_json_was_not_found));break}return h}function nrt(s,c){var g;let d=s.getCompilerOptions().configFile;if(!((g=d?.configFileSpecs)!=null&&g.validatedFilesSpec))return;let h=s.getCanonicalFileName(c),_=Mo(Xc(d.fileName,s.getCurrentDirectory())),S=Se(d.configFileSpecs.validatedFilesSpec,R=>s.getCanonicalFileName(Xc(R,_))===h);return S!==-1?d.configFileSpecs.validatedFilesSpecBeforeSubstitution[S]:void 0}function irt(s,c){var g,d;let h=s.getCompilerOptions().configFile;if(!((g=h?.configFileSpecs)!=null&&g.validatedIncludeSpecs))return;if(h.configFileSpecs.isDefaultIncludeSpec)return!0;let _=lA(c,".json"),S=Mo(Xc(h.fileName,s.getCurrentDirectory())),R=s.useCaseSensitiveFileNames(),T=Se((d=h?.configFileSpecs)==null?void 0:d.validatedIncludeSpecs,O=>{if(_&&!di(O,".json"))return!1;let V=Qbe(O,S,"files");return!!V&&nk(`(?:${V})$`,R).test(c)});return T!==-1?h.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[T]:void 0}function srt(s,c,g){var d,h;let _=s.getCompilerOptions();if(i5(c)){let S=epe(s,c),R=jie(S)?S.file.text.substring(S.pos,S.end):`"${S.text}"`,T;switch(pe.assert(jie(S)||c.kind===3,"Only synthetic references are imports"),c.kind){case 3:jie(S)?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2:Z.Imported_via_0_from_file_1:S.text===QD?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Z.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Z.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:pe.assert(!S.packageId),T=Z.Referenced_via_0_from_file_1;break;case 5:T=S.packageId?Z.Type_library_referenced_via_0_from_file_1_with_packageId_2:Z.Type_library_referenced_via_0_from_file_1;break;case 7:pe.assert(!S.packageId),T=Z.Library_referenced_via_0_from_file_1;break;default:pe.assertNever(c)}return wu(void 0,T,R,qie(S.file,g),S.packageId&&AN(S.packageId))}switch(c.kind){case 0:if(!((d=_.configFile)!=null&&d.configFileSpecs))return wu(void 0,Z.Root_file_specified_for_compilation);let S=Xc(s.getRootFileNames()[c.index],s.getCurrentDirectory());if(nrt(s,S))return wu(void 0,Z.Part_of_files_list_in_tsconfig_json);let T=irt(s,S);return Xs(T)?wu(void 0,Z.Matched_by_include_pattern_0_in_1,T,qie(_.configFile,g)):wu(void 0,T?Z.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Z.Root_file_specified_for_compilation);case 1:case 2:let O=c.kind===2,V=pe.checkDefined((h=s.getResolvedProjectReferences())==null?void 0:h[c.index]);return wu(void 0,_.outFile?O?Z.Output_from_referenced_project_0_included_because_1_specified:Z.Source_from_referenced_project_0_included_because_1_specified:O?Z.Output_from_referenced_project_0_included_because_module_is_specified_as_none:Z.Source_from_referenced_project_0_included_because_module_is_specified_as_none,qie(V.sourceFile.fileName,g),_.outFile?"--outFile":"--out");case 8:{let M=_.types?c.packageId?[Z.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,c.typeReference,AN(c.packageId)]:[Z.Entry_point_of_type_library_0_specified_in_compilerOptions,c.typeReference]:c.packageId?[Z.Entry_point_for_implicit_type_library_0_with_packageId_1,c.typeReference,AN(c.packageId)]:[Z.Entry_point_for_implicit_type_library_0,c.typeReference];return wu(void 0,...M)}case 6:{if(c.index!==void 0)return wu(void 0,Z.Library_0_specified_in_compilerOptions,_.lib[c.index]);let M=XAe(Hg(_)),ee=M?[Z.Default_library_for_target_0,M]:[Z.Default_library];return wu(void 0,...ee)}default:pe.assertNever(c)}}function qie(s,c){let g=Xs(s)?s:s.fileName;return c?c(g):g}function VVe(s,c,g,d,h,_,S,R){let T=s.getCompilerOptions(),O=s.getConfigFileParsingDiagnostics().slice(),V=O.length;Pr(O,s.getSyntacticDiagnostics(void 0,_)),O.length===V&&(Pr(O,s.getOptionsDiagnostics(_)),T.listFilesOnly||(Pr(O,s.getGlobalDiagnostics(_)),O.length===V&&Pr(O,s.getSemanticDiagnostics(void 0,_)),T.noEmit&&Oy(T)&&O.length===V&&Pr(O,s.getDeclarationDiagnostics(void 0,_))));let M=T.listFilesOnly?{emitSkipped:!0,diagnostics:E}:s.emit(void 0,h,_,S,R);Pr(O,M.diagnostics);let ee=ui(O);if(ee.forEach(c),g){let re=s.getCurrentDirectory();F(M.emittedFiles,ge=>{let Ie=Xc(ge,re);g(`TSFILE: ${Ie}`)}),fws(s,g)}return d&&d(ZVe(ee),LVe(ee)),{emitResult:M,diagnostics:ee}}function ort(s,c,g,d,h,_,S,R){let{emitResult:T,diagnostics:O}=VVe(s,c,g,d,h,_,S,R);return T.emitSkipped&&O.length>0?1:O.length>0?2:0}var $ie={close:Dc},rpe=()=>$ie;function art(s=Ed,c){return{onWatchStatusChange:c||ztt(s),watchFile:$i(s,s.watchFile)||rpe,watchDirectory:$i(s,s.watchDirectory)||rpe,setTimeout:$i(s,s.setTimeout)||Dc,clearTimeout:$i(s,s.clearTimeout)||Dc,preferNonRecursiveWatch:s.preferNonRecursiveWatch}}var eC={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation",TypingInstallerLocationFile:"File location for typing installer",TypingInstallerLocationDirectory:"Directory location for typing installer"};function crt(s,c){let g=s.trace?c.extendedDiagnostics?2:c.diagnostics?1:0:0,d=g!==0?_=>s.trace(_):Dc,h=vtt(s,g,d);return h.writeLog=d,h}function lrt(s,c,g=s){let d=s.useCaseSensitiveFileNames(),h={getSourceFile:Ttt((_,S)=>S?s.readFile(_,S):h.readFile(_),void 0),getDefaultLibLocation:$i(s,s.getDefaultLibLocation),getDefaultLibFileName:_=>s.getDefaultLibFileName(_),writeFile:Rtt((_,S,R)=>s.writeFile(_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_)),getCurrentDirectory:LA(()=>s.getCurrentDirectory()),useCaseSensitiveFileNames:()=>d,getCanonicalFileName:bd(d),getNewLine:()=>IN(c()),fileExists:_=>s.fileExists(_),readFile:_=>s.readFile(_),trace:$i(s,s.trace),directoryExists:$i(g,g.directoryExists),getDirectories:$i(g,g.getDirectories),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable)||(()=>""),createHash:$i(s,s.createHash),readDirectory:$i(s,s.readDirectory),storeSignatureInfo:s.storeSignatureInfo,jsDocParsingMode:s.jsDocParsingMode};return h}function WVe(s,c){if(c.match(zPt)){let g=c.length,d=g;for(let h=g-1;h>=0;h--){let _=c.charCodeAt(h);switch(_){case 10:h&&c.charCodeAt(h-1)===13&&h--;case 13:break;default:if(_<127||!ml(_)){d=h;continue}break}let S=c.substring(d,g);if(S.match(qet)){c=c.substring(0,d);break}else if(!S.match($et))break;g=d}}return(s.createHash||sy)(c)}function OVe(s){let c=s.getSourceFile;s.getSourceFile=(...g)=>{let d=c.call(s,...g);return d&&(d.version=WVe(s,d.text)),d}}function urt(s,c){let g=LA(()=>Mo(su(s.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames,getNewLine:()=>s.newLine,getCurrentDirectory:LA(()=>s.getCurrentDirectory()),getDefaultLibLocation:g,getDefaultLibFileName:d=>To(g(),Hs(d)),fileExists:d=>s.fileExists(d),readFile:(d,h)=>s.readFile(d,h),directoryExists:d=>s.directoryExists(d),getDirectories:d=>s.getDirectories(d),readDirectory:(d,h,_,S,R)=>s.readDirectory(d,h,_,S,R),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable),trace:d=>s.write(d+s.newLine),createDirectory:d=>s.createDirectory(d),writeFile:(d,h,_)=>s.writeFile(d,h,_),createHash:$i(s,s.createHash),createProgram:c||Jtt,storeSignatureInfo:s.storeSignatureInfo,now:$i(s,s.now)}}function cnn(s=Ed,c,g,d){let h=S=>s.write(S+s.newLine),_=urt(s,c);return ZA(_,art(s,d)),_.afterProgramCreate=S=>{let R=S.getCompilerOptions(),T=IN(R);VVe(S,g,h,O=>_.onWatchStatusChange(kf(qtt(O),O),T,R,O))},_}function lnn(s,c,g){c(g),s.exit(1)}function grt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:g,extraFileExtensions:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=S||Kz(h),O=cnn(h,_,T,R);return O.onUnRecoverableConfigFileDiagnostic=V=>lnn(h,T,V),O.configFileName=s,O.optionsToExtend=c,O.watchOptionsToExtend=g,O.extraFileExtensions=d,O}function Art({rootFiles:s,options:c,watchOptions:g,projectReferences:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=cnn(h,_,S||Kz(h),R);return T.rootFiles=s,T.options=c,T.watchOptions=g,T.projectReferences=d,T}function w5t(s){let c=s.system||Ed,g=s.host||(s.host=MVe(s.options,c)),d=T5t(s),h=ort(d,s.reportDiagnostic||Kz(c),_=>g.trace&&g.trace(_),s.reportErrorSummary||s.options.pretty?(_,S)=>c.write($tt(_,S,c.newLine,g)):void 0);return s.afterProgramEmitAndDiagnostics&&s.afterProgramEmitAndDiagnostics(d),h}function PVe(s,c){let g=n5(s);if(!g)return;let d;if(c.getBuildInfo)d=c.getBuildInfo(g,s.configFilePath);else{let h=c.readFile(g);if(!h)return;d=ytt(g,h)}if(!(!d||d.version!==C||!m1e(d)))return h5t(d,g,c)}function MVe(s,c=Ed){let g=bVe(s,void 0,c);return g.createHash=$i(c,c.createHash),g.storeSignatureInfo=c.storeSignatureInfo,OVe(g),qde(g,d=>Pu(d,g.getCurrentDirectory(),g.getCanonicalFileName)),g}function T5t({rootNames:s,options:c,configFileParsingDiagnostics:g,projectReferences:d,host:h,createProgram:_}){h=h||MVe(c),_=_||Jtt;let S=PVe(c,h);return _(s,c,h,S,g,d)}function unn(s,c,g,d,h,_,S,R){return Ki(s)?Art({rootFiles:s,options:c,watchOptions:R,projectReferences:S,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_}):grt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:S,extraFileExtensions:R,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_})}function drt(s){let c,g,d,h,_=new Map([[void 0,void 0]]),S,R,T,O,V=s.extendedConfigCache,M=!1,ee=new Map,re,ge=!1,Ie=s.useCaseSensitiveFileNames(),_e=s.getCurrentDirectory(),{configFileName:Ee,optionsToExtend:Ne={},watchOptionsToExtend:Te,extraFileExtensions:Ze,createProgram:Pe}=s,{rootFiles:Ke,options:et,watchOptions:Ye,projectReferences:Tt}=s,at,Qe,Ct=!1,mt=!1,yt=Ee===void 0?void 0:CVe(s,_e,Ie),Rt=yt||s,Lt=NVe(s,Rt),je=si();Ee&&s.configFileParsingResult&&(Wn(s.configFileParsingResult),je=si()),hc(Z.Starting_compilation_in_watch_mode),Ee&&!s.configFileParsingResult&&(je=IN(Ne),pe.assert(!Ke),Wr(),je=si()),pe.assert(et),pe.assert(Ke);let{watchFile:Wt,watchDirectory:_r,writeLog:Gt}=crt(s,et),it=bd(Ie);Gt(`Current directory: ${_e} CaseSensitiveFileNames: ${Ie}`);let Dt;Ee&&(Dt=Wt(Ee,Pa,2e3,Ye,eC.ConfigFile));let tr,ur=etn(__filename);ur&&(tr=Wt(ur,$c,2e3,Ye,eC.ConfigFile));let Gr=lrt(s,()=>et,Rt);OVe(Gr);let dt=Gr.getSourceFile;Gr.getSourceFile=(bn,...ds)=>ya(bn,ks(bn),...ds),Gr.getSourceFileByPath=ya,Gr.getNewLine=()=>je,Gr.fileExists=Zn,Gr.onReleaseOldSourceFile=Oo,Gr.onReleaseParsedCommandLine=st,Gr.toPath=ks,Gr.getCompilationSettings=()=>et,Gr.useSourceOfProjectReferenceRedirect=$i(s,s.useSourceOfProjectReferenceRedirect),Gr.preferNonRecursiveWatch=s.preferNonRecursiveWatch,Gr.watchDirectoryOfFailedLookupLocation=(bn,ds,Ht)=>_r(bn,ds,Ht,Ye,eC.FailedLookupLocations),Gr.watchAffectingFileLocation=(bn,ds)=>Wt(bn,ds,2e3,Ye,eC.AffectingFileLocation),Gr.watchTypeRootsDirectory=(bn,ds,Ht)=>_r(bn,ds,Ht,Ye,eC.TypeRoots),Gr.getCachedDirectoryStructureHost=()=>yt,Gr.scheduleInvalidateResolutionsOfFailedLookupLocations=Pi,Gr.onInvalidatedResolution=pa,Gr.onChangedAutomaticTypeDirectiveNames=pa,Gr.fileIsOpen=As,Gr.getCurrentProgram=jn,Gr.writeLog=Gt,Gr.getParsedCommandLine=pt;let pr=jtt(Gr,Ee?Mo(Xc(Ee,_e)):_e,!1);Gr.resolveModuleNameLiterals=$i(s,s.resolveModuleNameLiterals),Gr.resolveModuleNames=$i(s,s.resolveModuleNames),!Gr.resolveModuleNameLiterals&&!Gr.resolveModuleNames&&(Gr.resolveModuleNameLiterals=pr.resolveModuleNameLiterals.bind(pr)),Gr.resolveTypeReferenceDirectiveReferences=$i(s,s.resolveTypeReferenceDirectiveReferences),Gr.resolveTypeReferenceDirectives=$i(s,s.resolveTypeReferenceDirectives),!Gr.resolveTypeReferenceDirectiveReferences&&!Gr.resolveTypeReferenceDirectives&&(Gr.resolveTypeReferenceDirectiveReferences=pr.resolveTypeReferenceDirectiveReferences.bind(pr)),Gr.resolveLibrary=s.resolveLibrary?s.resolveLibrary.bind(s):pr.resolveLibrary.bind(pr),Gr.getModuleResolutionCache=s.resolveModuleNameLiterals||s.resolveModuleNames?$i(s,s.getModuleResolutionCache):()=>pr.getModuleResolutionCache();let ir=!!s.resolveModuleNameLiterals||!!s.resolveTypeReferenceDirectiveReferences||!!s.resolveModuleNames||!!s.resolveTypeReferenceDirectives?$i(s,s.hasInvalidatedResolutions)||Nf:As,qt=s.resolveLibrary?$i(s,s.hasInvalidatedLibResolutions)||Nf:As;return c=PVe(et,Gr),Zi(),Ee?{getCurrentProgram:mn,getProgram:Rg,close:Yt,getResolutionCache:Tr}:{getCurrentProgram:mn,getProgram:Rg,updateRootFileNames:An,close:Yt,getResolutionCache:Tr};function Yt(){hn(),pr.clear(),Vy(ee,bn=>{bn&&bn.fileWatcher&&(bn.fileWatcher.close(),bn.fileWatcher=void 0)}),Dt&&(Dt.close(),Dt=void 0),tr&&(tr.close(),tr=void 0),V?.clear(),V=void 0,O&&(Vy(O,Sv),O=void 0),h&&(Vy(h,Sv),h=void 0),d&&(Vy(d,mv),d=void 0),T&&(Vy(T,bn=>{var ds;(ds=bn.watcher)==null||ds.close(),bn.watcher=void 0,bn.watchedDirectories&&Vy(bn.watchedDirectories,Sv),bn.watchedDirectories=void 0}),T=void 0),c=void 0}function Tr(){return pr}function mn(){return c}function jn(){return c&&c.getProgramOrUndefined()}function Zi(bn=!1){Gt("Synchronizing program"),pe.assert(et),pe.assert(Ke),hn();let ds=mn();ge&&(je=si(),ds&&YJ(ds.getCompilerOptions(),et)&&pr.onChangesAffectModuleResolution());let{hasInvalidatedResolutions:Ht,hasInvalidatedLibResolutions:cn}=pr.createHasInvalidatedResolutions(bn?Nf:ir,qt),{originalReadFile:wt,originalFileExists:xe,originalDirectoryExists:fr,originalCreateDirectory:Ue,originalWriteFile:In,readFileWithCache:Hn}=qde(Gr,ks);return Ztt(jn(),Ke,et,Mt=>ba(Mt,Hn),Mt=>Gr.fileExists(Mt),Ht,cn,yr,pt,Tt)?mt&&(M&&hc(Z.File_change_detected_Starting_incremental_compilation),c=Pe(void 0,void 0,Gr,c,Qe,Tt),mt=!1):(M&&hc(Z.File_change_detected_Starting_incremental_compilation),Ns(Ht,cn)),M=!1,s.afterProgramCreate&&ds!==c&&s.afterProgramCreate(c),Gr.readFile=wt,Gr.fileExists=xe,Gr.directoryExists=fr,Gr.createDirectory=Ue,Gr.writeFile=In,_?.forEach((Mt,$r)=>{if(!$r)En(),Ee&&Gi(ks(Ee),et,Ye,eC.ExtendedConfigFile);else{let ri=T?.get($r);ri&&nn(Mt,$r,ri)}}),_=void 0,c}function Ns(bn,ds){Gt("CreatingProgramWith::"),Gt(` roots: ${JSON.stringify(Ke)}`),Gt(` options: ${JSON.stringify(et)}`),Tt&&Gt(` projectReferences: ${JSON.stringify(Tt)}`);let Ht=ge||!jn();ge=!1,mt=!1,pr.startCachingPerDirectoryResolution(),Gr.hasInvalidatedResolutions=bn,Gr.hasInvalidatedLibResolutions=ds,Gr.hasChangedAutomaticTypeDirectiveNames=yr;let cn=jn();if(c=Pe(Ke,et,Gr,c,Qe,Tt),pr.finishCachingPerDirectoryResolution(c.getProgram(),cn),Stt(c.getProgram(),d||(d=new Map),Dn),Ht&&pr.updateTypeRootsWatch(),re){for(let wt of re)d.has(wt)||ee.delete(wt);re=void 0}}function An(bn){pe.assert(!Ee,"Cannot update root file names with config file watch mode"),Ke=bn,pa()}function si(){return IN(et||Ne)}function ks(bn){return Pu(bn,_e,it)}function Ic(bn){return typeof bn=="boolean"}function ou(bn){return typeof bn.version=="boolean"}function Zn(bn){let ds=ks(bn);return Ic(ee.get(ds))?!1:Rt.fileExists(bn)}function ya(bn,ds,Ht,cn,wt){let xe=ee.get(ds);if(Ic(xe))return;let fr=typeof Ht=="object"?Ht.impliedNodeFormat:void 0;if(xe===void 0||wt||ou(xe)||xe.sourceFile.impliedNodeFormat!==fr){let Ue=dt(bn,Ht,cn);if(xe)Ue?(xe.sourceFile=Ue,xe.version=Ue.version,xe.fileWatcher||(xe.fileWatcher=nr(ds,bn,Zr,250,Ye,eC.SourceFile))):(xe.fileWatcher&&xe.fileWatcher.close(),ee.set(ds,!1));else if(Ue){let In=nr(ds,bn,Zr,250,Ye,eC.SourceFile);ee.set(ds,{sourceFile:Ue,version:Ue.version,fileWatcher:In})}else ee.set(ds,!1);return Ue}return xe.sourceFile}function Fl(bn){let ds=ee.get(bn);ds!==void 0&&(Ic(ds)?ee.set(bn,{version:!1}):ds.version=!1)}function ba(bn,ds){let Ht=ee.get(bn);if(!Ht)return;if(Ht.version)return Ht.version;let cn=ds(bn);return cn!==void 0?WVe(Gr,cn):void 0}function Oo(bn,ds,Ht){let cn=ee.get(bn.resolvedPath);cn!==void 0&&(Ic(cn)?(re||(re=[])).push(bn.path):cn.sourceFile===bn&&(cn.fileWatcher&&cn.fileWatcher.close(),ee.delete(bn.resolvedPath),Ht||pr.removeResolutionsOfFile(bn.path)))}function hc(bn){s.onWatchStatusChange&&s.onWatchStatusChange(kf(bn),je,et||Ne)}function yr(){return pr.hasChangedAutomaticTypeDirectiveNames()}function hn(){return R?(s.clearTimeout(R),R=void 0,!0):!1}function Pi(){if(!s.setTimeout||!s.clearTimeout)return pr.invalidateResolutionsOfFailedLookupLocations();let bn=hn();Gt(`Scheduling invalidateFailedLookup${bn?", Cancelled earlier one":""}`),R=s.setTimeout(co,250,"timerToInvalidateFailedLookupResolutions")}function co(){R=void 0,pr.invalidateResolutionsOfFailedLookupLocations()&&pa()}function pa(){!s.setTimeout||!s.clearTimeout||(S&&s.clearTimeout(S),Gt("Scheduling update"),S=s.setTimeout(Qu,250,"timerToUpdateProgram"))}function Pa(){pe.assert(!!Ee),g=2,pa()}function $c(){Gt("Clearing resolutions"),pr.clear(),g=3,pa()}function Qu(){S=void 0,M=!0,Rg()}function Rg(){switch(g){case 1:Cs();break;case 2:Tu();break;case 3:Zi(!0);break;default:Zi();break}return mn()}function Cs(){Gt("Reloading new file names and options"),pe.assert(et),pe.assert(Ee),g=0,Ke=Gde(et.configFile.configFileSpecs,Xc(Mo(Ee),_e),et,Lt,Ze),J9e(Ke,Xc(Ee,_e),et.configFile.configFileSpecs,Qe,Ct)&&(mt=!0),Zi()}function Tu(){pe.assert(Ee),Gt(`Reloading config file: ${Ee}`),g=0,yt&&yt.clearCache(),Wr(),ge=!0,(_??(_=new Map)).set(void 0,void 0),Zi()}function Wr(){pe.assert(Ee),Wn(MEe(Ee,Ne,Lt,V||(V=new Map),Te,Ze))}function Wn(bn){Ke=bn.fileNames,et=bn.options,Ye=bn.watchOptions,Tt=bn.projectReferences,at=bn.wildcardDirectories,Qe=vQ(bn).slice(),Ct=JEe(bn.raw),mt=!0}function pt(bn){let ds=ks(bn),Ht=T?.get(ds);if(Ht){if(!Ht.updateLevel)return Ht.parsedCommandLine;if(Ht.parsedCommandLine&&Ht.updateLevel===1&&!s.getParsedCommandLine){Gt("Reloading new file names and options"),pe.assert(et);let wt=Gde(Ht.parsedCommandLine.options.configFile.configFileSpecs,Xc(Mo(bn),_e),et,Lt);return Ht.parsedCommandLine={...Ht.parsedCommandLine,fileNames:wt},Ht.updateLevel=void 0,Ht.parsedCommandLine}}Gt(`Loading config file: ${bn}`);let cn=s.getParsedCommandLine?s.getParsedCommandLine(bn):on(bn);return Ht?(Ht.parsedCommandLine=cn,Ht.updateLevel=void 0):(T||(T=new Map)).set(ds,Ht={parsedCommandLine:cn}),(_??(_=new Map)).set(ds,bn),cn}function on(bn){let ds=Lt.onUnRecoverableConfigFileDiagnostic;Lt.onUnRecoverableConfigFileDiagnostic=Dc;let Ht=MEe(bn,void 0,Lt,V||(V=new Map),Te);return Lt.onUnRecoverableConfigFileDiagnostic=ds,Ht}function st(bn){var ds;let Ht=ks(bn),cn=T?.get(Ht);cn&&(T.delete(Ht),cn.watchedDirectories&&Vy(cn.watchedDirectories,Sv),(ds=cn.watcher)==null||ds.close(),Ett(Ht,O))}function nr(bn,ds,Ht,cn,wt,xe){return Wt(ds,(fr,Ue)=>Ht(fr,Ue,bn),cn,wt,xe)}function Zr(bn,ds,Ht){Kr(bn,Ht,ds),ds===2&&ee.has(Ht)&&pr.invalidateResolutionOfFile(Ht),Fl(Ht),pa()}function Kr(bn,ds,Ht){yt&&yt.addOrDeleteFile(bn,ds,Ht)}function Dn(bn,ds){return T?.has(bn)?$ie:nr(bn,ds,hr,500,Ye,eC.MissingFile)}function hr(bn,ds,Ht){Kr(bn,Ht,ds),ds===0&&d.has(Ht)&&(d.get(Ht).close(),d.delete(Ht),Fl(Ht),pa())}function En(){g1e(h||(h=new Map),at,Ni)}function Ni(bn,ds){return _r(bn,Ht=>{pe.assert(Ee),pe.assert(et);let cn=ks(Ht);yt&&yt.addOrDeleteFileOrDirectory(Ht,cn),Fl(cn),!A1e({watchedDirPath:ks(bn),fileOrDirectory:Ht,fileOrDirectoryPath:cn,configFileName:Ee,extraFileExtensions:Ze,options:et,program:mn()||Ke,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})&&g!==2&&(g=1,pa())},ds,Ye,eC.WildcardDirectory)}function Gi(bn,ds,Ht,cn){_Ve(bn,ds,O||(O=new Map),(wt,xe)=>Wt(wt,(fr,Ue)=>{var In;Kr(wt,xe,Ue),V&&yVe(V,xe,ks);let Hn=(In=O.get(xe))==null?void 0:In.projects;Hn?.size&&Hn.forEach(Mt=>{if(Ee&&ks(Ee)===Mt)g=2;else{let $r=T?.get(Mt);$r&&($r.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(Mt)}pa()})},2e3,Ht,cn),ks)}function nn(bn,ds,Ht){var cn,wt,xe,fr;Ht.watcher||(Ht.watcher=Wt(bn,(Ue,In)=>{Kr(bn,ds,In);let Hn=T?.get(ds);Hn&&(Hn.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(ds),pa()},2e3,((cn=Ht.parsedCommandLine)==null?void 0:cn.watchOptions)||Ye,eC.ConfigFileOfReferencedProject)),g1e(Ht.watchedDirectories||(Ht.watchedDirectories=new Map),(wt=Ht.parsedCommandLine)==null?void 0:wt.wildcardDirectories,(Ue,In)=>{var Hn;return _r(Ue,Mt=>{let $r=ks(Mt);yt&&yt.addOrDeleteFileOrDirectory(Mt,$r),Fl($r);let ri=T?.get(ds);ri?.parsedCommandLine&&(A1e({watchedDirPath:ks(Ue),fileOrDirectory:Mt,fileOrDirectoryPath:$r,configFileName:bn,options:ri.parsedCommandLine.options,program:ri.parsedCommandLine.fileNames,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})||ri.updateLevel!==2&&(ri.updateLevel=1,pa()))},In,((Hn=Ht.parsedCommandLine)==null?void 0:Hn.watchOptions)||Ye,eC.WildcardDirectoryOfReferencedProject)}),Gi(ds,(xe=Ht.parsedCommandLine)==null?void 0:xe.options,((fr=Ht.parsedCommandLine)==null?void 0:fr.watchOptions)||Ye,eC.ExtendedConfigOfReferencedProject)}}var R5t=(s=>(s[s.Unbuildable=0]="Unbuildable",s[s.UpToDate=1]="UpToDate",s[s.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",s[s.OutputMissing=3]="OutputMissing",s[s.ErrorReadingFile=4]="ErrorReadingFile",s[s.OutOfDateWithSelf=5]="OutOfDateWithSelf",s[s.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",s[s.OutOfDateBuildInfoWithPendingEmit=7]="OutOfDateBuildInfoWithPendingEmit",s[s.OutOfDateBuildInfoWithErrors=8]="OutOfDateBuildInfoWithErrors",s[s.OutOfDateOptions=9]="OutOfDateOptions",s[s.OutOfDateRoots=10]="OutOfDateRoots",s[s.UpstreamOutOfDate=11]="UpstreamOutOfDate",s[s.UpstreamBlocked=12]="UpstreamBlocked",s[s.ComputingUpstream=13]="ComputingUpstream",s[s.TsVersionOutputOfDate=14]="TsVersionOutputOfDate",s[s.UpToDateWithInputFileText=15]="UpToDateWithInputFileText",s[s.ContainerOnly=16]="ContainerOnly",s[s.ForceBuild=17]="ForceBuild",s))(R5t||{});function prt(s){return lA(s,".json")?s:To(s,"tsconfig.json")}var Iws=new Date(-864e13);function hws(s,c,g){let d=s.get(c),h;return d||(h=g(),s.set(c,h)),d||h}function N5t(s,c){return hws(s,c,()=>new Map)}function frt(s){return s.now?s.now():new Date}function jz(s){return!!s&&!!s.buildOrder}function y1e(s){return jz(s)?s.buildOrder:s}function HVe(s,c){return g=>{let d=c?`[${SQ(_1e(s),"\x1B[90m")}] `:`${_1e(s)} - `;d+=`${xN(g.messageText,s.newLine)}${s.newLine+s.newLine}`,s.write(d)}}function gnn(s,c,g,d){let h=urt(s,c);return h.getModifiedTime=s.getModifiedTime?_=>s.getModifiedTime(_):Am,h.setModifiedTime=s.setModifiedTime?(_,S)=>s.setModifiedTime(_,S):Dc,h.deleteFile=s.deleteFile?_=>s.deleteFile(_):Dc,h.reportDiagnostic=g||Kz(s),h.reportSolutionBuilderStatus=d||HVe(s),h.now=$i(s,s.now),h}function D5t(s=Ed,c,g,d,h){let _=gnn(s,c,g,d);return _.reportErrorSummary=h,_}function k5t(s=Ed,c,g,d,h){let _=gnn(s,c,g,d),S=art(s,h);return ZA(_,S),_}function mws(s){let c={};return Z9e.forEach(g=>{Da(s,g.name)&&(c[g.name]=s[g.name])}),c.tscBuild=!0,c}function x5t(s,c,g){return knn(!1,s,c,g)}function G5t(s,c,g,d){return knn(!0,s,c,g,d)}function Cws(s,c,g,d,h){let _=c,S=c,R=mws(d),T=lrt(_,()=>Ie.projectCompilerOptions);OVe(T),T.getParsedCommandLine=_e=>ese(Ie,_e,lk(Ie,_e)),T.resolveModuleNameLiterals=$i(_,_.resolveModuleNameLiterals),T.resolveTypeReferenceDirectiveReferences=$i(_,_.resolveTypeReferenceDirectiveReferences),T.resolveLibrary=$i(_,_.resolveLibrary),T.resolveModuleNames=$i(_,_.resolveModuleNames),T.resolveTypeReferenceDirectives=$i(_,_.resolveTypeReferenceDirectives),T.getModuleResolutionCache=$i(_,_.getModuleResolutionCache);let O,V;!T.resolveModuleNameLiterals&&!T.resolveModuleNames&&(O=Hie(T.getCurrentDirectory(),T.getCanonicalFileName),T.resolveModuleNameLiterals=(_e,Ee,Ne,Te,Ze)=>p1e(_e,Ee,Ne,Te,Ze,_,O,Gtt),T.getModuleResolutionCache=()=>O),!T.resolveTypeReferenceDirectiveReferences&&!T.resolveTypeReferenceDirectives&&(V=eVe(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,O?.getPackageJsonInfoCache(),O?.optionsToRedirectsKey),T.resolveTypeReferenceDirectiveReferences=(_e,Ee,Ne,Te,Ze)=>p1e(_e,Ee,Ne,Te,Ze,_,V,vVe));let M;T.resolveLibrary||(M=Hie(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,O?.getPackageJsonInfoCache()),T.resolveLibrary=(_e,Ee,Ne)=>tVe(_e,Ee,Ne,_,M)),T.getBuildInfo=(_e,Ee)=>Enn(Ie,_e,lk(Ie,Ee),void 0);let{watchFile:ee,watchDirectory:re,writeLog:ge}=crt(S,d),Ie={host:_,hostWithWatch:S,parseConfigFileHost:NVe(_),write:$i(_,_.trace),options:d,baseCompilerOptions:R,rootNames:g,baseWatchOptions:h,resolvedConfigFilePaths:new Map,configFileCache:new Map,projectStatus:new Map,extendedConfigCache:new Map,buildInfoCache:new Map,outputTimeStamps:new Map,builderPrograms:new Map,diagnostics:new Map,projectPendingBuild:new Map,projectErrorsReported:new Map,compilerHost:T,moduleResolutionCache:O,typeReferenceDirectiveResolutionCache:V,libraryResolutionCache:M,buildOrder:void 0,readFileWithCache:_e=>_.readFile(_e),projectCompilerOptions:R,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:s,watch:s,allWatchedWildcardDirectories:new Map,allWatchedInputFiles:new Map,allWatchedConfigFiles:new Map,allWatchedExtendedConfigFiles:new Map,allWatchedPackageJsonFiles:new Map,filesWatched:new Map,lastCachedPackageJsonLookups:new Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:ee,watchDirectory:re,writeLog:ge};return Ie}function Jw(s,c){return Pu(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function lk(s,c){let{resolvedConfigFilePaths:g}=s,d=g.get(c);if(d!==void 0)return d;let h=Jw(s,c);return g.set(c,h),h}function Ann(s){return!!s.options}function _ws(s,c){let g=s.configFileCache.get(c);return g&&Ann(g)?g:void 0}function ese(s,c,g){let{configFileCache:d}=s,h=d.get(g);if(h)return Ann(h)?h:void 0;Mc("SolutionBuilder::beforeConfigFileParsing");let _,{parseConfigFileHost:S,baseCompilerOptions:R,baseWatchOptions:T,extendedConfigCache:O,host:V}=s,M;return V.getParsedCommandLine?(M=V.getParsedCommandLine(c),M||(_=kf(Z.File_0_not_found,c))):(S.onUnRecoverableConfigFileDiagnostic=ee=>_=ee,M=MEe(c,R,S,O,T),S.onUnRecoverableConfigFileDiagnostic=Dc),d.set(g,M||_),Mc("SolutionBuilder::afterConfigFileParsing"),Pf("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),M}function b1e(s,c){return prt(IE(s.compilerHost.getCurrentDirectory(),c))}function dnn(s,c){let g=new Map,d=new Map,h=[],_,S;for(let T of c)R(T);return S?{buildOrder:_||E,circularDiagnostics:S}:_||E;function R(T,O){let V=lk(s,T);if(d.has(V))return;if(g.has(V)){O||(S||(S=[])).push(kf(Z.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,h.join(`\r +`)));return}g.set(V,!0),h.push(T);let M=ese(s,T,V);if(M&&M.projectReferences)for(let ee of M.projectReferences){let re=b1e(s,ee.path);R(re,O||ee.circular)}h.pop(),d.set(V,!0),(_||(_=[])).push(T)}}function YVe(s){return s.buildOrder||yws(s)}function yws(s){let c=dnn(s,s.rootNames.map(h=>b1e(s,h)));s.resolvedConfigFilePaths.clear();let g=new Set(y1e(c).map(h=>lk(s,h))),d={onDeleteValue:Dc};return hN(s.configFileCache,g,d),hN(s.projectStatus,g,d),hN(s.builderPrograms,g,d),hN(s.diagnostics,g,d),hN(s.projectPendingBuild,g,d),hN(s.projectErrorsReported,g,d),hN(s.buildInfoCache,g,d),hN(s.outputTimeStamps,g,d),hN(s.lastCachedPackageJsonLookups,g,d),s.watch&&(hN(s.allWatchedConfigFiles,g,{onDeleteValue:mv}),s.allWatchedExtendedConfigFiles.forEach(h=>{h.projects.forEach(_=>{g.has(_)||h.projects.delete(_)}),h.close()}),hN(s.allWatchedWildcardDirectories,g,{onDeleteValue:h=>h.forEach(Sv)}),hN(s.allWatchedInputFiles,g,{onDeleteValue:h=>h.forEach(mv)}),hN(s.allWatchedPackageJsonFiles,g,{onDeleteValue:h=>h.forEach(mv)})),s.buildOrder=c}function pnn(s,c,g){let d=c&&b1e(s,c),h=YVe(s);if(jz(h))return h;if(d){let S=lk(s,d);if(Se(h,T=>lk(s,T)===S)===-1)return}let _=d?dnn(s,[d]):h;return pe.assert(!jz(_)),pe.assert(!g||d!==void 0),pe.assert(!g||_[_.length-1]===d),g?_.slice(0,_.length-1):_}function fnn(s){s.cache&&F5t(s);let{compilerHost:c,host:g}=s,d=s.readFileWithCache,h=c.getSourceFile,{originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:O,getSourceFileWithCache:V,readFileWithCache:M}=qde(g,ee=>Jw(s,ee),(...ee)=>h.call(c,...ee));s.readFileWithCache=M,c.getSourceFile=V,s.cache={originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:O,originalReadFileWithCache:d,originalGetSourceFile:h}}function F5t(s){if(!s.cache)return;let{cache:c,host:g,compilerHost:d,extendedConfigCache:h,moduleResolutionCache:_,typeReferenceDirectiveResolutionCache:S,libraryResolutionCache:R}=s;g.readFile=c.originalReadFile,g.fileExists=c.originalFileExists,g.directoryExists=c.originalDirectoryExists,g.createDirectory=c.originalCreateDirectory,g.writeFile=c.originalWriteFile,d.getSourceFile=c.originalGetSourceFile,s.readFileWithCache=c.originalReadFileWithCache,h.clear(),_?.clear(),S?.clear(),R?.clear(),s.cache=void 0}function Inn(s,c){s.projectStatus.delete(c),s.diagnostics.delete(c)}function hnn({projectPendingBuild:s},c,g){let d=s.get(c);(d===void 0||ds.projectPendingBuild.set(lk(s,d),0)),c&&c.throwIfCancellationRequested()}var Z5t=(s=>(s[s.Build=0]="Build",s[s.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",s))(Z5t||{});function Cnn(s,c){return s.projectPendingBuild.delete(c),s.diagnostics.has(c)?1:0}function bws(s,c,g,d,h){let _=!0;return{kind:1,project:c,projectPath:g,buildOrder:h,getCompilerOptions:()=>d.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{vnn(s,d,g),_=!1},done:()=>(_&&vnn(s,d,g),Mc("SolutionBuilder::Timestamps only updates"),Cnn(s,g))}}function Ews(s,c,g,d,h,_,S){let R=0,T,O;return{kind:0,project:c,projectPath:g,buildOrder:S,getCompilerOptions:()=>h.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>M(Zl),getProgram:()=>M(_e=>_e.getProgramOrUndefined()),getSourceFile:_e=>M(Ee=>Ee.getSourceFile(_e)),getSourceFiles:()=>ee(_e=>_e.getSourceFiles()),getOptionsDiagnostics:_e=>ee(Ee=>Ee.getOptionsDiagnostics(_e)),getGlobalDiagnostics:_e=>ee(Ee=>Ee.getGlobalDiagnostics(_e)),getConfigFileParsingDiagnostics:()=>ee(_e=>_e.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSyntacticDiagnostics(_e,Ee)),getAllDependencies:_e=>ee(Ee=>Ee.getAllDependencies(_e)),getSemanticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSemanticDiagnostics(_e,Ee)),getSemanticDiagnosticsOfNextAffectedFile:(_e,Ee)=>M(Ne=>Ne.getSemanticDiagnosticsOfNextAffectedFile&&Ne.getSemanticDiagnosticsOfNextAffectedFile(_e,Ee)),emit:(_e,Ee,Ne,Te,Ze)=>_e||Te?M(Pe=>{var Ke,et;return Pe.emit(_e,Ee,Ne,Te,Ze||((et=(Ke=s.host).getCustomTransformers)==null?void 0:et.call(Ke,c)))}):(Ie(0,Ne),ge(Ee,Ne,Ze)),done:V};function V(_e,Ee,Ne){return Ie(3,_e,Ee,Ne),Mc("SolutionBuilder::Projects built"),Cnn(s,g)}function M(_e){return Ie(0),T&&_e(T)}function ee(_e){return M(_e)||E}function re(){var _e,Ee,Ne;if(pe.assert(T===void 0),s.options.dry){E1(s,Z.A_non_dry_build_would_build_project_0,c),O=1,R=2;return}if(s.options.verbose&&E1(s,Z.Building_project_0,c),h.fileNames.length===0){E1e(s,g,vQ(h)),O=0,R=2;return}let{host:Te,compilerHost:Ze}=s;if(s.projectCompilerOptions=h.options,(_e=s.moduleResolutionCache)==null||_e.update(h.options),(Ee=s.typeReferenceDirectiveResolutionCache)==null||Ee.update(h.options),T=Te.createProgram(h.fileNames,h.options,Ze,Sws(s,g,h),vQ(h),h.projectReferences),s.watch){let Pe=(Ne=s.moduleResolutionCache)==null?void 0:Ne.getPackageJsonInfoCache().getInternalMap();s.lastCachedPackageJsonLookups.set(g,Pe&&new Set(Do(Pe.values(),Ke=>s.host.realpath&&($9e(Ke)||Ke.directoryExists)?s.host.realpath(To(Ke.packageDirectory,"package.json")):To(Ke.packageDirectory,"package.json")))),s.builderPrograms.set(g,T)}R++}function ge(_e,Ee,Ne){var Te,Ze,Pe;pe.assertIsDefined(T),pe.assert(R===1);let{host:Ke,compilerHost:et}=s,Ye=new Map,Tt=T.getCompilerOptions(),at=OW(Tt),Qe,Ct,{emitResult:mt,diagnostics:yt}=VVe(T,Rt=>Ke.reportDiagnostic(Rt),s.write,void 0,(Rt,Lt,je,Wt,_r,Gt)=>{var it;let Dt=Jw(s,Rt);if(Ye.set(Jw(s,Rt),Rt),Gt?.buildInfo){Ct||(Ct=frt(s.host));let ur=(it=T.hasChangedEmitSignature)==null?void 0:it.call(T),Gr=mrt(s,Rt,g);Gr?(Gr.buildInfo=Gt.buildInfo,Gr.modifiedTime=Ct,ur&&(Gr.latestChangedDtsTime=Ct)):s.buildInfoCache.set(g,{path:Jw(s,Rt),buildInfo:Gt.buildInfo,modifiedTime:Ct,latestChangedDtsTime:ur?Ct:void 0})}let tr=Gt?.differsOnlyInMap?vb(s.host,Rt):void 0;(_e||et.writeFile)(Rt,Lt,je,Wt,_r,Gt),Gt?.differsOnlyInMap?s.host.setModifiedTime(Rt,tr):!at&&s.watch&&(Qe||(Qe=V5t(s,g))).set(Dt,Ct||(Ct=frt(s.host)))},Ee,void 0,Ne||((Ze=(Te=s.host).getCustomTransformers)==null?void 0:Ze.call(Te,c)));return(!Tt.noEmitOnError||!yt.length)&&(Ye.size||_.type!==8)&&Snn(s,h,g,Z.Updating_unchanged_output_timestamps_of_project_0,Ye),s.projectErrorsReported.set(g,!0),O=(Pe=T.hasChangedEmitSignature)!=null&&Pe.call(T)?0:2,yt.length?(s.diagnostics.set(g,yt),s.projectStatus.set(g,{type:0,reason:"it had errors"}),O|=4):(s.diagnostics.delete(g),s.projectStatus.set(g,{type:1,oldestOutputFileName:oA(Ye.values())??mtt(h,!Ke.useCaseSensitiveFileNames())})),vws(s,T),R=2,mt}function Ie(_e,Ee,Ne,Te){for(;R<=_e&&R<3;){let Ze=R;switch(R){case 0:re();break;case 1:ge(Ne,Ee,Te);break;case 2:Rws(s,c,g,d,h,S,pe.checkDefined(O)),R++;break;case 3:default:}pe.assert(R>Ze)}}}function _nn(s,c,g){if(!s.projectPendingBuild.size||jz(c))return;let{options:d,projectPendingBuild:h}=s;for(let _=0;_{let re=pe.checkDefined(s.filesWatched.get(R));pe.assert(Irt(re)),re.modifiedTime=ee,re.callbacks.forEach(ge=>ge(V,M,ee))},d,h,_,S);s.filesWatched.set(R,{callbacks:[g],watcher:O,modifiedTime:T})}return{close:()=>{let O=pe.checkDefined(s.filesWatched.get(R));pe.assert(Irt(O)),O.callbacks.length===1?(s.filesWatched.delete(R),Sv(O)):rf(O.callbacks,g)}}}function V5t(s,c){if(!s.watch)return;let g=s.outputTimeStamps.get(c);return g||s.outputTimeStamps.set(c,g=new Map),g}function mrt(s,c,g){let d=Jw(s,c),h=s.buildInfoCache.get(g);return h?.path===d?h:void 0}function Enn(s,c,g,d){let h=Jw(s,c),_=s.buildInfoCache.get(g);if(_!==void 0&&_.path===h)return _.buildInfo||void 0;let S=s.readFileWithCache(c),R=S?ytt(c,S):void 0;return s.buildInfoCache.set(g,{path:h,buildInfo:R||!1,modifiedTime:d||xh}),R}function W5t(s,c,g,d){let h=bnn(s,c);if(gZe&&(Te=yt,Ze=Rt),Ke.add(Lt)}let Ye;if(_e?(et||(et=Qtt(_e,M,V)),Ye=Fh(et.roots,(yt,Rt)=>Ke.has(Rt)?void 0:Rt)):Ye=F(m5t(Ie,M,V),yt=>Ke.has(yt)?void 0:yt),Ye)return{type:10,buildInfoFile:M,inputFile:Ye};if(!ee){let yt=mVe(c,!V.useCaseSensitiveFileNames()),Rt=V5t(s,g);for(let Lt of yt){if(Lt===M)continue;let je=Jw(s,Lt),Wt=Rt?.get(je);if(Wt||(Wt=vb(s.host,Lt),Rt?.set(je,Wt)),Wt===xh)return{type:3,missingOutputFileName:Lt};if(WtW5t(s,yt,Ee,Ne));if(Qe)return Qe;let Ct=s.lastCachedPackageJsonLookups.get(g),mt=Ct&&NB(Ct,yt=>W5t(s,yt,Ee,Ne));return mt||{type:Tt?2:Pe?15:1,newestInputFileTime:Ze,newestInputFileName:Te,oldestOutputFileName:Ne}}function wws(s,c,g){return s.buildInfoCache.get(g).path===c.path}function O5t(s,c,g){if(c===void 0)return{type:0,reason:"config file deleted mid-build"};let d=s.projectStatus.get(g);if(d!==void 0)return d;Mc("SolutionBuilder::beforeUpToDateCheck");let h=Bws(s,c,g);return Mc("SolutionBuilder::afterUpToDateCheck"),Pf("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),s.projectStatus.set(g,h),h}function Snn(s,c,g,d,h){if(c.options.noEmit)return;let _,S=n5(c.options),R=OW(c.options);if(S&&R){h?.has(Jw(s,S))||(s.options.verbose&&E1(s,d,c.options.configFilePath),s.host.setModifiedTime(S,_=frt(s.host)),mrt(s,S,g).modifiedTime=_),s.outputTimeStamps.delete(g);return}let{host:T}=s,O=mVe(c,!T.useCaseSensitiveFileNames()),V=V5t(s,g),M=V?new Set:void 0;if(!h||O.length!==h.size){let ee=!!s.options.verbose;for(let re of O){let ge=Jw(s,re);h?.has(ge)||(ee&&(ee=!1,E1(s,d,c.options.configFilePath)),T.setModifiedTime(re,_||(_=frt(s.host))),re===S?mrt(s,S,g).modifiedTime=_:V&&(V.set(ge,_),M.add(ge)))}}V?.forEach((ee,re)=>{!h?.has(re)&&!M.has(re)&&V.delete(re)})}function Tws(s,c,g){if(!c.composite)return;let d=pe.checkDefined(s.buildInfoCache.get(g));if(d.latestChangedDtsTime!==void 0)return d.latestChangedDtsTime||void 0;let h=d.buildInfo&&m1e(d.buildInfo)&&d.buildInfo.latestChangedDtsFile?s.host.getModifiedTime(Xc(d.buildInfo.latestChangedDtsFile,Mo(d.path))):void 0;return d.latestChangedDtsTime=h||!1,h}function vnn(s,c,g){if(s.options.dry)return E1(s,Z.A_non_dry_build_would_update_timestamps_for_output_of_project_0,c.options.configFilePath);Snn(s,c,g,Z.Updating_output_timestamps_of_project_0),s.projectStatus.set(g,{type:1,oldestOutputFileName:mtt(c,!s.host.useCaseSensitiveFileNames())})}function Rws(s,c,g,d,h,_,S){if(!(s.options.stopBuildOnErrors&&S&4)&&h.options.composite)for(let R=d+1;R<_.length;R++){let T=_[R],O=lk(s,T);if(s.projectPendingBuild.has(O))continue;let V=ese(s,T,O);if(!(!V||!V.projectReferences))for(let M of V.projectReferences){let ee=b1e(s,M.path);if(lk(s,ee)!==g)continue;let re=s.projectStatus.get(O);if(re)switch(re.type){case 1:if(S&2){re.type=2;break}case 15:case 2:S&2||s.projectStatus.set(O,{type:6,outOfDateOutputFileName:re.oldestOutputFileName,newerProjectName:c});break;case 12:lk(s,b1e(s,re.upstreamProjectName))===g&&Inn(s,O);break}hnn(s,O,0);break}}}function Bnn(s,c,g,d,h,_){Mc("SolutionBuilder::beforeBuild");let S=Nws(s,c,g,d,h,_);return Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),S}function Nws(s,c,g,d,h,_){let S=pnn(s,c,_);if(!S)return 3;mnn(s,g);let R=!0,T=0;for(;;){let O=L5t(s,S,R);if(!O)break;R=!1,O.done(g,d,h?.(O.project)),s.diagnostics.has(O.projectPath)||T++}return F5t(s),Gnn(s,S),Gws(s,S),jz(S)?4:S.some(O=>s.diagnostics.has(lk(s,O)))?T?2:1:0}function wnn(s,c,g){Mc("SolutionBuilder::beforeClean");let d=Dws(s,c,g);return Mc("SolutionBuilder::afterClean"),Pf("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),d}function Dws(s,c,g){let d=pnn(s,c,g);if(!d)return 3;if(jz(d))return Crt(s,d.circularDiagnostics),4;let{options:h,host:_}=s,S=h.dry?[]:void 0;for(let R of d){let T=lk(s,R),O=ese(s,R,T);if(O===void 0){xnn(s,T);continue}let V=mVe(O,!_.useCaseSensitiveFileNames());if(!V.length)continue;let M=new Set(O.fileNames.map(ee=>Jw(s,ee)));for(let ee of V)M.has(Jw(s,ee))||_.fileExists(ee)&&(S?S.push(ee):(_.deleteFile(ee),P5t(s,T,0)))}return S&&E1(s,Z.A_non_dry_build_would_delete_the_following_files_Colon_0,S.map(R=>`\r + * ${R}`).join("")),0}function P5t(s,c,g){s.host.getParsedCommandLine&&g===1&&(g=2),g===2&&(s.configFileCache.delete(c),s.buildOrder=void 0),s.needsSummary=!0,Inn(s,c),hnn(s,c,g),fnn(s)}function QVe(s,c,g){s.reportFileChangeDetected=!0,P5t(s,c,g),Tnn(s,250,!0)}function Tnn(s,c,g){let{hostWithWatch:d}=s;!d.setTimeout||!d.clearTimeout||(s.timerToBuildInvalidatedProject&&d.clearTimeout(s.timerToBuildInvalidatedProject),s.timerToBuildInvalidatedProject=d.setTimeout(kws,c,"timerToBuildInvalidatedProject",s,g))}function kws(s,c,g){Mc("SolutionBuilder::beforeBuild");let d=xws(c,g);Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),d&&Gnn(c,d)}function xws(s,c){s.timerToBuildInvalidatedProject=void 0,s.reportFileChangeDetected&&(s.reportFileChangeDetected=!1,s.projectErrorsReported.clear(),Y5t(s,Z.File_change_detected_Starting_incremental_compilation));let g=0,d=YVe(s),h=L5t(s,d,!1);if(h)for(h.done(),g++;s.projectPendingBuild.size;){if(s.timerToBuildInvalidatedProject)return;let _=_nn(s,d,!1);if(!_)break;if(_.kind!==1&&(c||g===5)){Tnn(s,100,!1);return}ynn(s,_,d).done(),_.kind!==1&&g++}return F5t(s),d}function Rnn(s,c,g,d){!s.watch||s.allWatchedConfigFiles.has(g)||s.allWatchedConfigFiles.set(g,hrt(s,c,()=>QVe(s,g,2),2e3,d?.watchOptions,eC.ConfigFile,c))}function Nnn(s,c,g){_Ve(c,g?.options,s.allWatchedExtendedConfigFiles,(d,h)=>hrt(s,d,()=>{var _;return(_=s.allWatchedExtendedConfigFiles.get(h))==null?void 0:_.projects.forEach(S=>QVe(s,S,2))},2e3,g?.watchOptions,eC.ExtendedConfigFile),d=>Jw(s,d))}function Dnn(s,c,g,d){s.watch&&g1e(N5t(s.allWatchedWildcardDirectories,g),d.wildcardDirectories,(h,_)=>s.watchDirectory(h,S=>{var R;A1e({watchedDirPath:Jw(s,h),fileOrDirectory:S,fileOrDirectoryPath:Jw(s,S),configFileName:c,currentDirectory:s.compilerHost.getCurrentDirectory(),options:d.options,program:s.builderPrograms.get(g)||((R=_ws(s,g))==null?void 0:R.fileNames),useCaseSensitiveFileNames:s.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:T=>s.writeLog(T),toPath:T=>Jw(s,T)})||QVe(s,g,1)},_,d?.watchOptions,eC.WildcardDirectory,c))}function M5t(s,c,g,d){s.watch&&oz(N5t(s.allWatchedInputFiles,g),new Set(d.fileNames),{createNewValue:h=>hrt(s,h,()=>QVe(s,g,0),250,d?.watchOptions,eC.SourceFile,c),onDeleteValue:mv})}function H5t(s,c,g,d){!s.watch||!s.lastCachedPackageJsonLookups||oz(N5t(s.allWatchedPackageJsonFiles,g),s.lastCachedPackageJsonLookups.get(g),{createNewValue:h=>hrt(s,h,()=>QVe(s,g,0),2e3,d?.watchOptions,eC.PackageJson,c),onDeleteValue:mv})}function Gws(s,c){if(s.watchAllProjectsPending){Mc("SolutionBuilder::beforeWatcherCreation"),s.watchAllProjectsPending=!1;for(let g of y1e(c)){let d=lk(s,g),h=ese(s,g,d);Rnn(s,g,d,h),Nnn(s,d,h),h&&(Dnn(s,g,d,h),M5t(s,g,d,h),H5t(s,g,d,h))}Mc("SolutionBuilder::afterWatcherCreation"),Pf("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function Fws(s){Vy(s.allWatchedConfigFiles,mv),Vy(s.allWatchedExtendedConfigFiles,Sv),Vy(s.allWatchedWildcardDirectories,c=>Vy(c,Sv)),Vy(s.allWatchedInputFiles,c=>Vy(c,mv)),Vy(s.allWatchedPackageJsonFiles,c=>Vy(c,mv))}function knn(s,c,g,d,h){let _=Cws(s,c,g,d,h);return{build:(S,R,T,O)=>Bnn(_,S,R,T,O),clean:S=>wnn(_,S),buildReferences:(S,R,T,O)=>Bnn(_,S,R,T,O,!0),cleanReferences:S=>wnn(_,S,!0),getNextInvalidatedProject:S=>(mnn(_,S),L5t(_,YVe(_),!1)),getBuildOrder:()=>YVe(_),getUpToDateStatusOfProject:S=>{let R=b1e(_,S),T=lk(_,R);return O5t(_,ese(_,R,T),T)},invalidateProject:(S,R)=>P5t(_,S,R||0),close:()=>Fws(_)}}function L_(s,c){return o2(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function E1(s,c,...g){s.host.reportSolutionBuilderStatus(kf(c,...g))}function Y5t(s,c,...g){var d,h;(h=(d=s.hostWithWatch).onWatchStatusChange)==null||h.call(d,kf(c,...g),s.host.getNewLine(),s.baseCompilerOptions)}function Crt({host:s},c){c.forEach(g=>s.reportDiagnostic(g))}function E1e(s,c,g){Crt(s,g),s.projectErrorsReported.set(c,!0),g.length&&s.diagnostics.set(c,g)}function xnn(s,c){E1e(s,c,[s.configFileCache.get(c)])}function Gnn(s,c){if(!s.needsSummary)return;s.needsSummary=!1;let g=s.watch||!!s.host.reportErrorSummary,{diagnostics:d}=s,h=0,_=[];jz(c)?(Fnn(s,c.buildOrder),Crt(s,c.circularDiagnostics),g&&(h+=ZVe(c.circularDiagnostics)),g&&(_=[..._,...LVe(c.circularDiagnostics)])):(c.forEach(S=>{let R=lk(s,S);s.projectErrorsReported.has(R)||Crt(s,d.get(R)||E)}),g&&d.forEach(S=>h+=ZVe(S)),g&&d.forEach(S=>[..._,...LVe(S)])),s.watch?Y5t(s,qtt(h),h):s.host.reportErrorSummary&&s.host.reportErrorSummary(h,_)}function Fnn(s,c){s.options.verbose&&E1(s,Z.Projects_in_this_build_Colon_0,c.map(g=>`\r + * `+L_(s,g)).join(""))}function Zws(s,c,g){switch(g.type){case 5:return E1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,L_(s,c),L_(s,g.outOfDateOutputFileName),L_(s,g.newerInputFileName));case 6:return E1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,L_(s,c),L_(s,g.outOfDateOutputFileName),L_(s,g.newerProjectName));case 3:return E1(s,Z.Project_0_is_out_of_date_because_output_file_1_does_not_exist,L_(s,c),L_(s,g.missingOutputFileName));case 4:return E1(s,Z.Project_0_is_out_of_date_because_there_was_error_reading_file_1,L_(s,c),L_(s,g.fileName));case 7:return E1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,L_(s,c),L_(s,g.buildInfoFile));case 8:return E1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors,L_(s,c),L_(s,g.buildInfoFile));case 9:return E1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,L_(s,c),L_(s,g.buildInfoFile));case 10:return E1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,L_(s,c),L_(s,g.buildInfoFile),L_(s,g.inputFile));case 1:if(g.newestInputFileTime!==void 0)return E1(s,Z.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,L_(s,c),L_(s,g.newestInputFileName||""),L_(s,g.oldestOutputFileName||""));break;case 2:return E1(s,Z.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,L_(s,c));case 15:return E1(s,Z.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,L_(s,c));case 11:return E1(s,Z.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,L_(s,c),L_(s,g.upstreamProjectName));case 12:return E1(s,g.upstreamProjectBlocked?Z.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Z.Project_0_can_t_be_built_because_its_dependency_1_has_errors,L_(s,c),L_(s,g.upstreamProjectName));case 0:return E1(s,Z.Project_0_is_out_of_date_because_1,L_(s,c),g.reason);case 14:return E1(s,Z.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,L_(s,c),g.version,C);case 17:return E1(s,Z.Project_0_is_being_forcibly_rebuilt,L_(s,c));case 16:case 13:break;default:}}function _rt(s,c,g){s.options.verbose&&Zws(s,c,g)}var Q5t=(s=>(s[s.time=0]="time",s[s.count=1]="count",s[s.memory=2]="memory",s))(Q5t||{});function Lws(s){let c=Vws();return F(s.getSourceFiles(),g=>{let d=Wws(s,g),h=rn(g).length;c.set(d,c.get(d)+h)}),c}function Vws(){let s=new Map;return s.set("Library",0),s.set("Definitions",0),s.set("TypeScript",0),s.set("JavaScript",0),s.set("JSON",0),s.set("Other",0),s}function Wws(s,c){if(s.isSourceFileDefaultLibrary(c))return"Library";if(c.isDeclarationFile)return"Definitions";let g=c.path;return Iu(g,Jbe)?"TypeScript":Iu(g,SU)?"JavaScript":lA(g,".json")?"JSON":"Other"}function yrt(s,c,g){return XVe(s,g)?Kz(s,!0):c}function Znn(s){return!!s.writeOutputIsTTY&&s.writeOutputIsTTY()&&!s.getEnvironmentVariable("NO_COLOR")}function XVe(s,c){return!c||typeof c.pretty>"u"?Znn(s):c.pretty}function Lnn(s){return s.options.all?yo(Xw.concat(VU),(c,g)=>Fs(c.name,g.name)):Le(Xw.concat(VU),c=>!!c.showInSimplifiedHelpView)}function brt(s){s.write(Wb(Z.Version_0,C)+s.newLine)}function Ert(s){if(!Znn(s))return{bold:V=>V,blue:V=>V,blueBackground:V=>V,brightWhite:V=>V};function g(V){return`\x1B[1m${V}\x1B[22m`}let d=s.getEnvironmentVariable("OS")&&s.getEnvironmentVariable("OS").toLowerCase().includes("windows"),h=s.getEnvironmentVariable("WT_SESSION"),_=s.getEnvironmentVariable("TERM_PROGRAM")&&s.getEnvironmentVariable("TERM_PROGRAM")==="vscode";function S(V){return d&&!h&&!_?O(V):`\x1B[94m${V}\x1B[39m`}let R=s.getEnvironmentVariable("COLORTERM")==="truecolor"||s.getEnvironmentVariable("TERM")==="xterm-256color";function T(V){return R?`\x1B[48;5;68m${V}\x1B[39;49m`:`\x1B[44m${V}\x1B[39;49m`}function O(V){return`\x1B[97m${V}\x1B[39m`}return{bold:g,blue:S,brightWhite:O,blueBackground:T}}function Vnn(s){return`--${s.name}${s.shortName?`, -${s.shortName}`:""}`}function Ows(s,c,g,d){var h;let _=[],S=Ert(s),R=Vnn(c),T=ge(c),O=typeof c.defaultValueDescription=="object"?Wb(c.defaultValueDescription):M(c.defaultValueDescription,c.type==="list"||c.type==="listOrElement"?c.element.type:c.type),V=((h=s.getWidthOfTerminal)==null?void 0:h.call(s))??0;if(V>=80){let Ie="";c.description&&(Ie=Wb(c.description)),_.push(...re(R,Ie,g,d,V,!0),s.newLine),ee(T,c)&&(T&&_.push(...re(T.valueType,T.possibleValues,g,d,V,!1),s.newLine),O&&_.push(...re(Wb(Z.default_Colon),O,g,d,V,!1),s.newLine)),_.push(s.newLine)}else{if(_.push(S.blue(R),s.newLine),c.description){let Ie=Wb(c.description);_.push(Ie)}if(_.push(s.newLine),ee(T,c)){if(T&&_.push(`${T.valueType} ${T.possibleValues}`),O){T&&_.push(s.newLine);let Ie=Wb(Z.default_Colon);_.push(`${Ie} ${O}`)}_.push(s.newLine)}_.push(s.newLine)}return _;function M(Ie,_e){return Ie!==void 0&&typeof _e=="object"?Do(_e.entries()).filter(([,Ee])=>Ee===Ie).map(([Ee])=>Ee).join("/"):String(Ie)}function ee(Ie,_e){let Ee=["string"],Ne=[void 0,"false","n/a"],Te=_e.defaultValueDescription;return!(_e.category===Z.Command_line_Options||k(Ee,Ie?.possibleValues)&&k(Ne,Te))}function re(Ie,_e,Ee,Ne,Te,Ze){let Pe=[],Ke=!0,et=_e,Ye=Te-Ne;for(;et.length>0;){let Tt="";Ke?(Tt=Ie.padStart(Ee),Tt=Tt.padEnd(Ne),Tt=Ze?S.blue(Tt):Tt):Tt="".padStart(Ne);let at=et.substr(0,Ye);et=et.slice(Ye),Pe.push(`${Tt}${at}`),Ke=!1}return Pe}function ge(Ie){if(Ie.type==="object")return;return{valueType:_e(Ie),possibleValues:Ee(Ie)};function _e(Ne){switch(pe.assert(Ne.type!=="listOrElement"),Ne.type){case"string":case"number":case"boolean":return Wb(Z.type_Colon);case"list":return Wb(Z.one_or_more_Colon);default:return Wb(Z.one_of_Colon)}}function Ee(Ne){let Te;switch(Ne.type){case"string":case"number":case"boolean":Te=Ne.type;break;case"list":case"listOrElement":Te=Ee(Ne.element);break;case"object":Te="";break;default:let Ze={};return Ne.type.forEach((Pe,Ke)=>{var et;(et=Ne.deprecatedKeys)!=null&&et.has(Ke)||(Ze[Pe]||(Ze[Pe]=[])).push(Ke)}),Object.entries(Ze).map(([,Pe])=>Pe.join("/")).join(", ")}return Te}}}function Wnn(s,c){let g=0;for(let S of c){let R=Vnn(S).length;g=g>R?g:R}let d=g+2,h=d+2,_=[];for(let S of c){let R=Ows(s,S,d,h);_=[..._,...R]}return _[_.length-2]!==s.newLine&&_.push(s.newLine),_}function S1e(s,c,g,d,h,_){let S=[];if(S.push(Ert(s).bold(c)+s.newLine+s.newLine),h&&S.push(h+s.newLine+s.newLine),!d)return S=[...S,...Wnn(s,g)],_&&S.push(_+s.newLine+s.newLine),S;let R=new Map;for(let T of g){if(!T.category)continue;let O=Wb(T.category),V=R.get(O)??[];V.push(T),R.set(O,V)}return R.forEach((T,O)=>{S.push(`### ${O}${s.newLine}${s.newLine}`),S=[...S,...Wnn(s,T)]}),_&&S.push(_+s.newLine+s.newLine),S}function Pws(s,c){let g=Ert(s),d=[...Srt(s,`${Wb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Wb(Z.Version_0,C)}`)];d.push(g.bold(Wb(Z.COMMON_COMMANDS))+s.newLine+s.newLine),S("tsc",Z.Compiles_the_current_project_tsconfig_json_in_the_working_directory),S("tsc app.ts util.ts",Z.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),S("tsc -b",Z.Build_a_composite_project_in_the_working_directory),S("tsc --init",Z.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),S("tsc -p ./path/to/tsconfig.json",Z.Compiles_the_TypeScript_project_located_at_the_specified_path),S("tsc --help --all",Z.An_expanded_version_of_this_information_showing_all_possible_compiler_options),S(["tsc --noEmit","tsc --target esnext"],Z.Compiles_the_current_project_with_additional_settings);let h=c.filter(R=>R.isCommandLineOnly||R.category===Z.Command_line_Options),_=c.filter(R=>!k(h,R));d=[...d,...S1e(s,Wb(Z.COMMAND_LINE_FLAGS),h,!1,void 0,void 0),...S1e(s,Wb(Z.COMMON_COMPILER_OPTIONS),_,!1,void 0,iQ(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(let R of d)s.write(R);function S(R,T){let O=typeof R=="string"?[R]:R;for(let V of O)d.push(" "+g.blue(V)+s.newLine);d.push(" "+Wb(T)+s.newLine+s.newLine)}}function Mws(s,c,g,d){let h=[...Srt(s,`${Wb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Wb(Z.Version_0,C)}`)];h=[...h,...S1e(s,Wb(Z.ALL_COMPILER_OPTIONS),c,!0,void 0,iQ(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],h=[...h,...S1e(s,Wb(Z.WATCH_OPTIONS),d,!1,Wb(Z.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],h=[...h,...S1e(s,Wb(Z.BUILD_OPTIONS),Le(g,_=>_!==VU),!1,iQ(Z.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,"https://aka.ms/tsc-composite-builds"))];for(let _ of h)s.write(_)}function Onn(s,c){let g=[...Srt(s,`${Wb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Wb(Z.Version_0,C)}`)];g=[...g,...S1e(s,Wb(Z.BUILD_OPTIONS),Le(c,d=>d!==VU),!1,iQ(Z.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,"https://aka.ms/tsc-composite-builds"))];for(let d of g)s.write(d)}function Srt(s,c){var g;let d=Ert(s),h=[],_=((g=s.getWidthOfTerminal)==null?void 0:g.call(s))??0,S=5,R=d.blueBackground("".padStart(S)),T=d.blueBackground(d.brightWhite("TS ".padStart(S)));if(_>=c.length+S){let V=(_>120?120:_)-S;h.push(c.padEnd(V)+R+s.newLine),h.push("".padStart(V)+T+s.newLine)}else h.push(c+s.newLine),h.push(s.newLine);return h}function Pnn(s,c){c.options.all?Mws(s,Lnn(c),det,Mz):Pws(s,Lnn(c))}function Mnn(s,c,g){let d=Kz(s),h;if(g.options.locale&&wx(g.options.locale,s,g.errors),g.errors.length>0)return g.errors.forEach(d),s.exit(1);if(g.options.init)return Xws(s,d,g.options),s.exit(0);if(g.options.version)return brt(s),s.exit(0);if(g.options.help||g.options.all)return Pnn(s,g),s.exit(0);if(g.options.watch&&g.options.listFilesOnly)return d(kf(Z.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),s.exit(1);if(g.options.project){if(g.fileNames.length!==0)return d(kf(Z.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),s.exit(1);let R=su(g.options.project);if(!R||s.directoryExists(R)){if(h=To(R,"tsconfig.json"),!s.fileExists(h))return d(kf(Z.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,g.options.project)),s.exit(1)}else if(h=R,!s.fileExists(h))return d(kf(Z.The_specified_path_does_not_exist_Colon_0,g.options.project)),s.exit(1)}else if(g.fileNames.length===0){let R=su(s.getCurrentDirectory());h=Btt(R,T=>s.fileExists(T))}if(g.fileNames.length===0&&!h)return g.options.showConfig?d(kf(Z.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,su(s.getCurrentDirectory()))):(brt(s),Pnn(s,g)),s.exit(1);let _=s.getCurrentDirectory(),S=Y9e(g.options,R=>Xc(R,_));if(h){let R=new Map,T=B5t(h,S,R,g.watchOptions,s,d);if(S.showConfig)return T.errors.length!==0?(d=yrt(s,d,T.options),T.errors.forEach(d),s.exit(1)):(s.write(JSON.stringify(_et(T,h,s),null,4)+s.newLine),s.exit(0));if(d=yrt(s,d,T.options),Nbe(T.options))return J5t(s,d)?void 0:Hws(s,c,d,T,S,g.watchOptions,R);OW(T.options)?Xnn(s,c,d,T):Qnn(s,c,d,T)}else{if(S.showConfig)return s.write(JSON.stringify(_et(g,To(_,"tsconfig.json"),s),null,4)+s.newLine),s.exit(0);if(d=yrt(s,d,S),Nbe(S))return J5t(s,d)?void 0:Yws(s,c,d,g.fileNames,S,g.watchOptions);OW(S)?Xnn(s,c,d,{...g,options:S}):Qnn(s,c,d,{...g,options:S})}}function X5t(s){if(s.length>0&&s[0].charCodeAt(0)===45){let c=s[0].slice(s[0].charCodeAt(1)===45?2:1).toLowerCase();return c===VU.name||c===VU.shortName}return!1}function Hnn(s,c,g){if(X5t(g)){let{buildOptions:h,watchOptions:_,projects:S,errors:R}=sPt(g);if(h.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(h.generateCpuProfile,()=>Ynn(s,c,h,_,S,R));else return Ynn(s,c,h,_,S,R)}let d=nPt(g,h=>s.readFile(h));if(d.options.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(d.options.generateCpuProfile,()=>Mnn(s,c,d));else return Mnn(s,c,d)}function J5t(s,c){return!s.watchFile||!s.watchDirectory?(c(kf(Z.The_current_host_does_not_support_the_0_option,"--watch")),s.exit(1),!0):!1}var JVe=2;function Ynn(s,c,g,d,h,_){let S=yrt(s,Kz(s),g);if(g.locale&&wx(g.locale,s,_),_.length>0)return _.forEach(S),s.exit(1);if(g.help||h.length===0)return brt(s),Onn(s,PEe),s.exit(0);if(!s.getModifiedTime||!s.setModifiedTime||g.clean&&!s.deleteFile)return S(kf(Z.The_current_host_does_not_support_the_0_option,"--build")),s.exit(1);if(g.watch){if(J5t(s,S))return;let M=k5t(s,void 0,S,HVe(s,XVe(s,g)),K5t(s,g));M.jsDocParsingMode=JVe;let ee=jnn(s,g);Jnn(s,c,M,ee);let re=M.onWatchStatusChange,ge=!1;M.onWatchStatusChange=(_e,Ee,Ne,Te)=>{re?.(_e,Ee,Ne,Te),ge&&(_e.code===Z.Found_0_errors_Watching_for_file_changes.code||_e.code===Z.Found_1_error_Watching_for_file_changes.code)&&j5t(Ie,ee)};let Ie=G5t(M,h,g,d);return Ie.build(),j5t(Ie,ee),ge=!0,Ie}let R=D5t(s,void 0,S,HVe(s,XVe(s,g)),U5t(s,g));R.jsDocParsingMode=JVe;let T=jnn(s,g);Jnn(s,c,R,T);let O=x5t(R,h,g),V=g.clean?O.clean():O.build();return j5t(O,T),$f(),s.exit(V)}function U5t(s,c){return XVe(s,c)?(g,d)=>s.write($tt(g,d,s.newLine,s)):void 0}function Qnn(s,c,g,d){let{fileNames:h,options:_,projectReferences:S}=d,R=bVe(_,void 0,s);R.jsDocParsingMode=JVe;let T=R.getCurrentDirectory(),O=bd(R.useCaseSensitiveFileNames());qde(R,re=>Pu(re,T,O)),z5t(s,_,!1);let V={rootNames:h,options:_,projectReferences:S,host:R,configFileParsingDiagnostics:vQ(d)},M=I1e(V),ee=ort(M,g,re=>s.write(re+s.newLine),U5t(s,_));return Brt(s,M,void 0),c(M),s.exit(ee)}function Xnn(s,c,g,d){let{options:h,fileNames:_,projectReferences:S}=d;z5t(s,h,!1);let R=MVe(h,s);R.jsDocParsingMode=JVe;let T=w5t({host:R,system:s,rootNames:_,options:h,configFileParsingDiagnostics:vQ(d),projectReferences:S,reportDiagnostic:g,reportErrorSummary:U5t(s,h),afterProgramEmitAndDiagnostics:O=>{Brt(s,O.getProgram(),void 0),c(O)}});return s.exit(T)}function Jnn(s,c,g,d){Unn(s,g,!0),g.afterProgramEmitAndDiagnostics=h=>{Brt(s,h.getProgram(),d),c(h)}}function Unn(s,c,g){let d=c.createProgram;c.createProgram=(h,_,S,R,T,O)=>(pe.assert(h!==void 0||_===void 0&&!!R),_!==void 0&&z5t(s,_,g),d(h,_,S,R,T,O))}function Knn(s,c,g){g.jsDocParsingMode=JVe,Unn(s,g,!1);let d=g.afterProgramCreate;g.afterProgramCreate=h=>{d(h),Brt(s,h.getProgram(),void 0),c(h)}}function K5t(s,c){return ztt(s,XVe(s,c))}function Hws(s,c,g,d,h,_,S){let R=grt({configFileName:d.options.configFilePath,optionsToExtend:h,watchOptionsToExtend:_,system:s,reportDiagnostic:g,reportWatchStatus:K5t(s,d.options)});return Knn(s,c,R),R.configFileParsingResult=d,R.extendedConfigCache=S,drt(R)}function Yws(s,c,g,d,h,_){let S=Art({rootFiles:d,options:h,watchOptions:_,system:s,reportDiagnostic:g,reportWatchStatus:K5t(s,h)});return Knn(s,c,S),drt(S)}function jnn(s,c){if(s===Ed&&c.extendedDiagnostics)return na(),Qws()}function Qws(){let s;return{addAggregateStatistic:c,forEachAggregateStatistics:g,clear:d};function c(h){let _=s?.get(h.name);_?_.type===2?_.value=Math.max(_.value,h.value):_.value+=h.value:(s??(s=new Map)).set(h.name,h)}function g(h){s?.forEach(h)}function d(){s=void 0}}function j5t(s,c){if(!c)return;if(!cs()){Ed.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` +`);return}let g=[];g.push({name:"Projects in scope",value:y1e(s.getBuildOrder()).length,type:1}),d("SolutionBuilder::Projects built"),d("SolutionBuilder::Timestamps only updates"),d("SolutionBuilder::Bundles updated"),c.forEachAggregateStatistics(_=>{_.name=`Aggregate ${_.name}`,g.push(_)}),jS((_,S)=>{vrt(_)&&g.push({name:`${h(_)} time`,value:S,type:0})}),ko(),na(),c.clear(),$nn(Ed,g);function d(_){let S=lE(_);S&&g.push({name:h(_),value:S,type:1})}function h(_){return _.replace("SolutionBuilder::","")}}function znn(s,c){return s===Ed&&(c.diagnostics||c.extendedDiagnostics)}function qnn(s,c){return s===Ed&&c.generateTrace}function z5t(s,c,g){znn(s,c)&&na(s),qnn(s,c)&&hd(g?"build":"project",c.generateTrace,c.configFilePath)}function vrt(s){return Ac(s,"SolutionBuilder::")}function Brt(s,c,g){var d;let h=c.getCompilerOptions();qnn(s,h)&&((d=ki)==null||d.stopTracing());let _;if(znn(s,h)){_=[];let O=s.getMemoryUsage?s.getMemoryUsage():-1;R("Files",c.getSourceFiles().length);let V=Lws(c);if(h.extendedDiagnostics)for(let[_e,Ee]of V.entries())R("Lines of "+_e,Ee);else R("Lines",ne(V.values(),(_e,Ee)=>_e+Ee,0));R("Identifiers",c.getIdentifierCount()),R("Symbols",c.getSymbolCount()),R("Types",c.getTypeCount()),R("Instantiations",c.getInstantiationCount()),O>=0&&S({name:"Memory used",value:O,type:2},!0);let M=cs(),ee=M?tA("Program"):0,re=M?tA("Bind"):0,ge=M?tA("Check"):0,Ie=M?tA("Emit"):0;if(h.extendedDiagnostics){let _e=c.getRelationCacheSizes();R("Assignability cache size",_e.assignable),R("Identity cache size",_e.identity),R("Subtype cache size",_e.subtype),R("Strict subtype cache size",_e.strictSubtype),M&&jS((Ee,Ne)=>{vrt(Ee)||T(`${Ee} time`,Ne,!0)})}else M&&(T("I/O read",tA("I/O Read"),!0),T("I/O write",tA("I/O Write"),!0),T("Parse time",ee,!0),T("Bind time",re,!0),T("Check time",ge,!0),T("Emit time",Ie,!0));M&&T("Total time",ee+re+ge+Ie,!1),$nn(s,_),M?g?(jS(_e=>{vrt(_e)||pm(_e)}),zS(_e=>{vrt(_e)||fm(_e)})):ko():s.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` +`)}function S(O,V){_.push(O),V&&g?.addAggregateStatistic(O)}function R(O,V){S({name:O,value:V,type:1},!0)}function T(O,V,M){S({name:O,value:V,type:0},M)}}function $nn(s,c){let g=0,d=0;for(let h of c){h.name.length>g&&(g=h.name.length);let _=ein(h);_.length>d&&(d=_.length)}for(let h of c)s.write(`${h.name}:`.padEnd(g+2)+ein(h).toString().padStart(d)+s.newLine)}function ein(s){switch(s.type){case 1:return""+s.value;case 0:return(s.value/1e3).toFixed(2)+"s";case 2:return Math.round(s.value/1e3)+"K";default:pe.assertNever(s.type)}}function Xws(s,c,g){let d=s.getCurrentDirectory(),h=su(To(d,"tsconfig.json"));if(s.fileExists(h))c(kf(Z.A_tsconfig_json_file_is_already_defined_at_Colon_0,h));else{s.writeFile(h,lPt(g,s.newLine));let _=[s.newLine,...Srt(s,"Created a new tsconfig.json")];_.push("You can learn more at https://aka.ms/tsconfig"+s.newLine);for(let S of _)s.write(S)}}function GN(s,c=!0){return{type:s,reportFallback:c}}var tin=GN(void 0,!1),rin=GN(void 0,!1),npe=GN(void 0,!0);function q5t(s,c){let g=u_(s,"strictNullChecks");return{serializeTypeOfDeclaration:V,serializeReturnTypeForSignature:ee,serializeTypeOfExpression:O,serializeTypeOfAccessor:T,tryReuseExistingTypeNode(ot,ir){if(c.canReuseTypeNode(ot,ir))return h(ot,ir)}};function d(ot,ir,qt=ir){return ir===void 0?void 0:c.markNodeReuse(ot,ir.flags&16?ir:me.cloneNode(ir),qt??ir)}function h(ot,ir){let{finalizeBoundary:qt,startRecoveryScope:Yt,hadError:Tr,markError:mn}=c.createRecoveryBoundary(ot),jn=Mr(ir,Zi,uc);if(!qt())return;return ot.approximateLength+=ir.end-ir.pos,jn;function Zi(Zn){if(Tr())return Zn;let ya=Yt(),Fl=fie(Zn)?c.enterNewScope(ot,Zn):void 0,ba=ou(Zn);return Fl?.(),Tr()?uc(Zn)&&!BE(Zn)?(ya(),c.serializeExistingTypeNode(ot,Zn)):Zn:ba?c.markNodeReuse(ot,ba,Zn):void 0}function Ns(Zn){let ya=M7(Zn);switch(ya.kind){case 184:return Ic(ya);case 187:return ks(ya);case 200:return An(ya);case 199:let Fl=ya;if(Fl.operator===143)return si(Fl)}return Mr(Zn,Zi,uc)}function An(Zn){let ya=Ns(Zn.objectType);if(ya!==void 0)return me.updateIndexedAccessTypeNode(Zn,ya,Mr(Zn.indexType,Zi,uc))}function si(Zn){pe.assertEqual(Zn.operator,143);let ya=Ns(Zn.type);if(ya!==void 0)return me.updateTypeOperatorNode(Zn,ya)}function ks(Zn){let{introducesError:ya,node:Fl}=c.trackExistingEntityName(ot,Zn.exprName);if(!ya)return me.updateTypeQueryNode(Zn,Fl,Os(Zn.typeArguments,Zi,uc));let ba=c.serializeTypeName(ot,Zn.exprName,!0);if(ba)return c.markNodeReuse(ot,ba,Zn.exprName)}function Ic(Zn){if(c.canReuseTypeNode(ot,Zn)){let{introducesError:ya,node:Fl}=c.trackExistingEntityName(ot,Zn.typeName),ba=Os(Zn.typeArguments,Zi,uc);if(ya){let Oo=c.serializeTypeName(ot,Zn.typeName,!1,ba);if(Oo)return c.markNodeReuse(ot,Oo,Zn.typeName)}else{let Oo=me.updateTypeReferenceNode(Zn,Fl,ba);return c.markNodeReuse(ot,Oo,Zn)}}}function ou(Zn){var ya;if(K3(Zn))return Mr(Zn.type,Zi,uc);if(fOt(Zn)||Zn.kind===320)return me.createKeywordTypeNode(133);if(IOt(Zn))return me.createKeywordTypeNode(159);if(Die(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createLiteralTypeNode(me.createNull())]);if(F$e(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createKeywordTypeNode(157)]);if(_9e(Zn))return Mr(Zn.type,Zi);if(y9e(Zn))return me.createArrayTypeNode(Mr(Zn.type,Zi,uc));if(FU(Zn))return me.createTypeLiteralNode(lt(Zn.jsDocPropertyTags,hn=>{let Pi=Mr(Ir(hn.name)?hn.name:hn.name.right,Zi,Ir),co=c.getJsDocPropertyOverride(ot,Zn,hn);return me.createPropertySignature(void 0,Pi,hn.isBracketed||hn.typeExpression&&F$e(hn.typeExpression.type)?me.createToken(58):void 0,co||hn.typeExpression&&Mr(hn.typeExpression.type,Zi,uc)||me.createKeywordTypeNode(133))}));if(oh(Zn)&&Ir(Zn.typeName)&&Zn.typeName.escapedText==="")return ua(me.createKeywordTypeNode(133),Zn);if((A_(Zn)||oh(Zn))&&AAe(Zn))return me.createTypeLiteralNode([me.createIndexSignature(void 0,[me.createParameterDeclaration(void 0,void 0,"x",void 0,Mr(Zn.typeArguments[0],Zi,uc))],Mr(Zn.typeArguments[1],Zi,uc))]);if(kie(Zn))if(zY(Zn)){let hn;return me.createConstructorTypeNode(void 0,Os(Zn.typeParameters,Zi,Ds),Xt(Zn.parameters,(Pi,co)=>Pi.name&&Ir(Pi.name)&&Pi.name.escapedText==="new"?(hn=Pi.type,void 0):me.createParameterDeclaration(void 0,Oo(Pi),c.markNodeReuse(ot,me.createIdentifier(hc(Pi,co)),Pi),me.cloneNode(Pi.questionToken),Mr(Pi.type,Zi,uc),void 0)),Mr(hn||Zn.type,Zi,uc)||me.createKeywordTypeNode(133))}else return me.createFunctionTypeNode(Os(Zn.typeParameters,Zi,Ds),lt(Zn.parameters,(hn,Pi)=>me.createParameterDeclaration(void 0,Oo(hn),c.markNodeReuse(ot,me.createIdentifier(hc(hn,Pi)),hn),me.cloneNode(hn.questionToken),Mr(hn.type,Zi,uc),void 0)),Mr(Zn.type,Zi,uc)||me.createKeywordTypeNode(133));if(Px(Zn))return c.canReuseTypeNode(ot,Zn)||mn(),Zn;if(Ds(Zn)){let{node:hn}=c.trackExistingEntityName(ot,Zn.name);return me.updateTypeParameterDeclaration(Zn,Os(Zn.modifiers,Zi,hg),hn,Mr(Zn.constraint,Zi,uc),Mr(Zn.default,Zi,uc))}if(yv(Zn)){let hn=An(Zn);return hn||(mn(),Zn)}if(oh(Zn)){let hn=Ic(Zn);return hn||(mn(),Zn)}if(Fy(Zn)){if(((ya=Zn.attributes)==null?void 0:ya.token)===132)return mn(),Zn;if(!c.canReuseTypeNode(ot,Zn))return c.serializeExistingTypeNode(ot,Zn);let hn=yr(Zn,Zn.argument.literal),Pi=hn===Zn.argument.literal?d(ot,Zn.argument.literal):hn;return me.updateImportTypeNode(Zn,Pi===Zn.argument.literal?d(ot,Zn.argument):me.createLiteralTypeNode(Pi),Mr(Zn.attributes,Zi,xU),Mr(Zn.qualifier,Zi,mC),Os(Zn.typeArguments,Zi,uc),Zn.isTypeOf)}if(sh(Zn)&&Zn.name.kind===168&&!c.hasLateBindableName(Zn)){if(!qD(Zn))return Fl(Zn,Zi);if(c.shouldRemoveDeclaration(ot,Zn))return}if(Eu(Zn)&&!Zn.type||pi(Zn)&&!Zn.type&&!Zn.initializer||ss(Zn)&&!Zn.type&&!Zn.initializer||Si(Zn)&&!Zn.type&&!Zn.initializer){let hn=Fl(Zn,Zi);return hn===Zn&&(hn=c.markNodeReuse(ot,me.cloneNode(Zn),Zn)),hn.type=me.createKeywordTypeNode(133),Si(Zn)&&(hn.modifiers=void 0),hn}if(Pw(Zn)){let hn=ks(Zn);return hn||(mn(),Zn)}if(Un(Zn)&&Hd(Zn.expression)){let{node:hn,introducesError:Pi}=c.trackExistingEntityName(ot,Zn.expression);if(Pi){let co=c.serializeTypeOfExpression(ot,Zn.expression),pa;if(wE(co))pa=co.literal;else{let Pa=c.evaluateEntityNameExpression(Zn.expression),$c=typeof Pa.value=="string"?me.createStringLiteral(Pa.value,void 0):typeof Pa.value=="number"?me.createNumericLiteral(Pa.value,0):void 0;if(!$c)return qm(co)&&c.trackComputedName(ot,Zn.expression),Zn;pa=$c}return pa.kind===11&&qh(pa.text,Hg(s))?me.createIdentifier(pa.text):pa.kind===9&&!pa.text.startsWith("-")?pa:me.updateComputedPropertyName(Zn,pa)}else return me.updateComputedPropertyName(Zn,hn)}if(BE(Zn)){let hn;if(Ir(Zn.parameterName)){let{node:Pi,introducesError:co}=c.trackExistingEntityName(ot,Zn.parameterName);co&&mn(),hn=Pi}else hn=me.cloneNode(Zn.parameterName);return me.updateTypePredicateNode(Zn,me.cloneNode(Zn.assertsModifier),hn,Mr(Zn.type,Zi,uc))}if(Mw(Zn)||bh(Zn)||OB(Zn)){let hn=Fl(Zn,Zi),Pi=c.markNodeReuse(ot,hn===Zn?me.cloneNode(Zn):hn,Zn),co=rA(Pi);return ti(Pi,co|(ot.flags&1024&&bh(Zn)?0:1)),Pi}if(Lg(Zn)&&ot.flags&268435456&&!Zn.singleQuote){let hn=me.cloneNode(Zn);return hn.singleQuote=!0,hn}if(h2(Zn)){let hn=Mr(Zn.checkType,Zi,uc),Pi=c.enterNewScope(ot,Zn),co=Mr(Zn.extendsType,Zi,uc),pa=Mr(Zn.trueType,Zi,uc);Pi();let Pa=Mr(Zn.falseType,Zi,uc);return me.updateConditionalTypeNode(Zn,hn,co,pa,Pa)}if(WB(Zn)){if(Zn.operator===158&&Zn.type.kind===155){if(!c.canReuseTypeNode(ot,Zn))return mn(),Zn}else if(Zn.operator===143){let hn=si(Zn);return hn||(mn(),Zn)}}return Fl(Zn,Zi);function Fl(hn,Pi){let co=!ot.enclosingFile||ot.enclosingFile!==ms(hn);return _s(hn,Pi,void 0,co?ba:void 0)}function ba(hn,Pi,co,pa,Pa){let $c=Os(hn,Pi,co,pa,Pa);return $c&&($c.pos!==-1||$c.end!==-1)&&($c===hn&&($c=me.createNodeArray(hn.slice(),hn.hasTrailingComma)),GB($c,-1,-1)),$c}function Oo(hn){return hn.dotDotDotToken||(hn.type&&y9e(hn.type)?me.createToken(26):void 0)}function hc(hn,Pi){return hn.name&&Ir(hn.name)&&hn.name.escapedText==="this"?"this":Oo(hn)?"args":`arg${Pi}`}function yr(hn,Pi){let co=c.getModuleSpecifierOverride(ot,hn,Pi);return co?ua(me.createStringLiteral(co),Pi):Pi}}}function _(ot,ir,qt){if(!ot)return;let Yt;return(!qt||ur(ot))&&c.canReuseTypeNode(ir,ot)&&(Yt=h(ir,ot),Yt!==void 0&&(Yt=tr(Yt,qt,void 0,ir))),Yt}function S(ot,ir,qt,Yt,Tr,mn=Tr!==void 0){if(!ot||!c.canReuseTypeNodeAnnotation(ir,qt,ot,Yt,Tr)&&(!Tr||!c.canReuseTypeNodeAnnotation(ir,qt,ot,Yt,!1)))return;let jn;return(!Tr||ur(ot))&&(jn=_(ot,ir,Tr)),jn!==void 0||!mn?jn:(ir.tracker.reportInferenceFallback(qt),c.serializeExistingTypeNode(ir,ot,Tr)??me.createKeywordTypeNode(133))}function R(ot,ir,qt,Yt){if(!ot)return;let Tr=_(ot,ir,qt);return Tr!==void 0?Tr:(ir.tracker.reportInferenceFallback(Yt??ot),c.serializeExistingTypeNode(ir,ot,qt)??me.createKeywordTypeNode(133))}function T(ot,ir,qt){return Ie(ot,ir,qt)??et(ot,c.getAllAccessorDeclarations(ot),qt,ir)}function O(ot,ir,qt,Yt){let Tr=at(ot,ir,!1,qt,Yt);return Tr.type!==void 0?Tr.type:Pe(ot,ir,Tr.reportFallback)}function V(ot,ir,qt){switch(ot.kind){case 170:case 342:return Ee(ot,ir,qt);case 261:return _e(ot,ir,qt);case 172:case 349:case 173:return Te(ot,ir,qt);case 209:return Ze(ot,ir,qt);case 278:return O(ot.expression,qt,void 0,!0);case 212:case 213:case 227:return Ne(ot,ir,qt);case 304:case 305:return M(ot,ir,qt);default:pe.assertNever(ot,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(ot.kind)}`)}}function M(ot,ir,qt){let Yt=Zh(ot),Tr;if(Yt&&c.canReuseTypeNodeAnnotation(qt,ot,Yt,ir)&&(Tr=_(Yt,qt)),!Tr&&ot.kind===304){let mn=ot.initializer,jn=hQ(mn)?Fie(mn):mn.kind===235||mn.kind===217?mn.type:void 0;jn&&!l2(jn)&&c.canReuseTypeNodeAnnotation(qt,ot,jn,ir)&&(Tr=_(jn,qt))}return Tr??Ze(ot,ir,qt,!1)}function ee(ot,ir,qt){switch(ot.kind){case 178:return T(ot,ir,qt);case 175:case 263:case 181:case 174:case 180:case 177:case 179:case 182:case 185:case 186:case 219:case 220:case 318:case 324:return Gr(ot,ir,qt);default:pe.assertNever(ot,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(ot.kind)}`)}}function re(ot){if(ot)return ot.kind===178?Bo(ot)&&oN(ot)||Zb(ot):fbe(ot)}function ge(ot,ir){let qt=re(ot);return!qt&&ot!==ir.firstAccessor&&(qt=re(ir.firstAccessor)),!qt&&ir.secondAccessor&&ot!==ir.secondAccessor&&(qt=re(ir.secondAccessor)),qt}function Ie(ot,ir,qt){let Yt=c.getAllAccessorDeclarations(ot),Tr=ge(ot,Yt);if(Tr&&!BE(Tr))return Ye(qt,ot,()=>S(Tr,qt,ot,ir)??Ze(ot,ir,qt));if(Yt.getAccessor)return Ye(qt,Yt.getAccessor,()=>Gr(Yt.getAccessor,ir,qt))}function _e(ot,ir,qt){var Yt;let Tr=Zh(ot),mn=npe;return Tr?mn=GN(S(Tr,qt,ot,ir)):ot.initializer&&(((Yt=ir.declarations)==null?void 0:Yt.length)===1||ze(ir.declarations,nc)===1)&&!c.isExpandoFunctionDeclaration(ot)&&!pr(ot)&&(mn=at(ot.initializer,qt,void 0,void 0,JT(ot))),mn.type!==void 0?mn.type:Ze(ot,ir,qt,mn.reportFallback)}function Ee(ot,ir,qt){let Yt=ot.parent;if(Yt.kind===179)return T(Yt,void 0,qt);let Tr=Zh(ot),mn=c.requiresAddingImplicitUndefined(ot,ir,qt.enclosingDeclaration),jn=npe;return Tr?jn=GN(S(Tr,qt,ot,ir,mn)):Si(ot)&&ot.initializer&&Ir(ot.name)&&!pr(ot)&&(jn=at(ot.initializer,qt,void 0,mn)),jn.type!==void 0?jn.type:Ze(ot,ir,qt,jn.reportFallback)}function Ne(ot,ir,qt){let Yt=Zh(ot),Tr;Yt&&(Tr=S(Yt,qt,ot,ir));let mn=qt.suppressReportInferenceFallback;qt.suppressReportInferenceFallback=!0;let jn=Tr??Ze(ot,ir,qt,!1);return qt.suppressReportInferenceFallback=mn,jn}function Te(ot,ir,qt){let Yt=Zh(ot),Tr=c.requiresAddingImplicitUndefined(ot,ir,qt.enclosingDeclaration),mn=npe;if(Yt)mn=GN(S(Yt,qt,ot,ir,Tr));else{let jn=pi(ot)?ot.initializer:void 0;if(jn&&!pr(ot)){let Zi=Cf(ot);mn=at(jn,qt,void 0,Tr,Zi)}}return mn.type!==void 0?mn.type:Ze(ot,ir,qt,mn.reportFallback)}function Ze(ot,ir,qt,Yt=!0){return Yt&&qt.tracker.reportInferenceFallback(ot),qt.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfDeclaration(qt,ot,ir)}function Pe(ot,ir,qt=!0,Yt){return pe.assert(!Yt),qt&&ir.tracker.reportInferenceFallback(ot),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfExpression(ir,ot)??me.createKeywordTypeNode(133)}function Ke(ot,ir,qt,Yt){return Yt&&ir.tracker.reportInferenceFallback(ot),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeReturnTypeForSignature(ir,ot,qt)??me.createKeywordTypeNode(133)}function et(ot,ir,qt,Yt,Tr=!0){return ot.kind===178?Gr(ot,Yt,qt,Tr):(Tr&&qt.tracker.reportInferenceFallback(ot),(ir.getAccessor&&Gr(ir.getAccessor,Yt,qt,Tr))??c.serializeTypeOfDeclaration(qt,ot,Yt)??me.createKeywordTypeNode(133))}function Ye(ot,ir,qt){let Yt=c.enterNewScope(ot,ir),Tr=qt();return Yt(),Tr}function Tt(ot,ir,qt,Yt){return l2(ir)?at(ot,qt,!0,Yt):GN(R(ir,qt,Yt))}function at(ot,ir,qt=!1,Yt=!1,Tr=!1){switch(ot.kind){case 218:return hQ(ot)?Tt(ot.expression,Fie(ot),ir,Yt):at(ot.expression,ir,qt,Yt);case 80:if(c.isUndefinedIdentifierExpression(ot))return GN(it());break;case 106:return GN(g?tr(me.createLiteralTypeNode(me.createNull()),Yt,ot,ir):me.createKeywordTypeNode(133));case 220:case 219:return pe.type(ot),Ye(ir,ot,()=>Qe(ot,ir));case 217:case 235:let mn=ot;return Tt(mn.expression,mn.type,ir,Yt);case 225:let jn=ot;if(vz(jn))return Dt(jn.operator===40?jn.operand:jn,jn.operand.kind===10?163:150,ir,qt||Tr,Yt);break;case 210:return mt(ot,ir,qt,Yt);case 211:return Rt(ot,ir,qt,Yt);case 232:return GN(Pe(ot,ir,!0,Yt));case 229:if(!qt&&!Tr)return GN(me.createKeywordTypeNode(154));break;default:let Zi,Ns=ot;switch(ot.kind){case 9:Zi=150;break;case 15:Ns=me.createStringLiteral(ot.text),Zi=154;break;case 11:Zi=154;break;case 10:Zi=163;break;case 112:case 97:Zi=136;break}if(Zi)return Dt(Ns,Zi,ir,qt||Tr,Yt)}return npe}function Qe(ot,ir){let qt=Gr(ot,void 0,ir),Yt=Wt(ot.typeParameters,ir),Tr=ot.parameters.map(mn=>je(mn,ir));return GN(me.createFunctionTypeNode(Yt,Tr,qt))}function Ct(ot,ir,qt){if(!qt)return ir.tracker.reportInferenceFallback(ot),!1;for(let Yt of ot.elements)if(Yt.kind===231)return ir.tracker.reportInferenceFallback(Yt),!1;return!0}function mt(ot,ir,qt,Yt){if(!Ct(ot,ir,qt))return Yt||em(Iv(ot).parent)?rin:GN(Pe(ot,ir,!1,Yt));let Tr=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[];for(let Zi of ot.elements)if(pe.assert(Zi.kind!==231),Zi.kind===233)mn.push(it());else{let Ns=at(Zi,ir,qt),An=Ns.type!==void 0?Ns.type:Pe(Zi,ir,Ns.reportFallback);mn.push(An)}let jn=me.createTupleTypeNode(mn);return jn.emitNode={flags:1,autoGenerate:void 0,internalFlags:0},ir.noInferenceFallback=Tr,tin}function yt(ot,ir){let qt=!0;for(let Yt of ot.properties){if(Yt.flags&262144){qt=!1;break}if(Yt.kind===305||Yt.kind===306)ir.tracker.reportInferenceFallback(Yt),qt=!1;else if(Yt.name.flags&262144){qt=!1;break}else if(Yt.name.kind===81)qt=!1;else if(Yt.name.kind===168){let Tr=Yt.name.expression;!vz(Tr,!1)&&!c.isDefinitelyReferenceToGlobalSymbolObject(Tr)&&(ir.tracker.reportInferenceFallback(Yt.name),qt=!1)}}return qt}function Rt(ot,ir,qt,Yt){if(!yt(ot,ir))return Yt||em(Iv(ot).parent)?rin:GN(Pe(ot,ir,!1,Yt));let Tr=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[],jn=ir.flags;ir.flags|=4194304;for(let Ns of ot.properties){pe.assert(!u0(Ns)&&!Hx(Ns));let An=Ns.name,si;switch(Ns.kind){case 175:si=Ye(ir,Ns,()=>_r(Ns,An,ir,qt));break;case 304:si=Lt(Ns,An,ir,qt);break;case 179:case 178:si=Gt(Ns,An,ir);break}si&&(yh(si,Ns),mn.push(si))}ir.flags=jn;let Zi=me.createTypeLiteralNode(mn);return ir.flags&1024||ti(Zi,1),ir.noInferenceFallback=Tr,tin}function Lt(ot,ir,qt,Yt){let Tr=Yt?[me.createModifier(148)]:[],mn=at(ot.initializer,qt,Yt),jn=mn.type!==void 0?mn.type:Ze(ot,void 0,qt,mn.reportFallback);return me.createPropertySignature(Tr,d(qt,ir),void 0,jn)}function je(ot,ir){return me.updateParameterDeclaration(ot,void 0,d(ir,ot.dotDotDotToken),c.serializeNameOfParameter(ir,ot),c.isOptionalParameter(ot)?me.createToken(58):void 0,Ee(ot,void 0,ir),void 0)}function Wt(ot,ir){return ot?.map(qt=>{var Yt;let{node:Tr}=c.trackExistingEntityName(ir,qt.name);return me.updateTypeParameterDeclaration(qt,(Yt=qt.modifiers)==null?void 0:Yt.map(mn=>d(ir,mn)),Tr,R(qt.constraint,ir),R(qt.default,ir))})}function _r(ot,ir,qt,Yt){let Tr=Gr(ot,void 0,qt),mn=Wt(ot.typeParameters,qt),jn=ot.parameters.map(Zi=>je(Zi,qt));return Yt?me.createPropertySignature([me.createModifier(148)],d(qt,ir),d(qt,ot.questionToken),me.createFunctionTypeNode(mn,jn,Tr)):(Ir(ir)&&ir.escapedText==="new"&&(ir=me.createStringLiteral("new")),me.createMethodSignature([],d(qt,ir),d(qt,ot.questionToken),mn,jn,Tr))}function Gt(ot,ir,qt){let Yt=c.getAllAccessorDeclarations(ot),Tr=Yt.getAccessor&&re(Yt.getAccessor),mn=Yt.setAccessor&&re(Yt.setAccessor);if(Tr!==void 0&&mn!==void 0)return Ye(qt,ot,()=>{let jn=ot.parameters.map(Zi=>je(Zi,qt));return TB(ot)?me.updateGetAccessorDeclaration(ot,[],d(qt,ir),jn,R(Tr,qt),void 0):me.updateSetAccessorDeclaration(ot,[],d(qt,ir),jn,void 0)});if(Yt.firstAccessor===ot){let Zi=(Tr?Ye(qt,Yt.getAccessor,()=>R(Tr,qt)):mn?Ye(qt,Yt.setAccessor,()=>R(mn,qt)):void 0)??et(ot,Yt,qt,void 0);return me.createPropertySignature(Yt.setAccessor===void 0?[me.createModifier(148)]:[],d(qt,ir),void 0,Zi)}}function it(){return g?me.createKeywordTypeNode(157):me.createKeywordTypeNode(133)}function Dt(ot,ir,qt,Yt,Tr){let mn;return Yt?(ot.kind===225&&ot.operator===40&&(mn=me.createLiteralTypeNode(d(qt,ot.operand))),mn=me.createLiteralTypeNode(d(qt,ot))):mn=me.createKeywordTypeNode(ir),GN(tr(mn,Tr,ot,qt))}function tr(ot,ir,qt,Yt){let Tr=qt&&Iv(qt).parent,mn=Tr&&em(Tr)&&FB(Tr);return!g||!(ir||mn)?ot:(ur(ot)||Yt.tracker.reportInferenceFallback(ot),AS(ot)?me.createUnionTypeNode([...ot.types,me.createKeywordTypeNode(157)]):me.createUnionTypeNode([ot,me.createKeywordTypeNode(157)]))}function ur(ot){return!g||T0(ot.kind)||ot.kind===202||ot.kind===185||ot.kind===186||ot.kind===189||ot.kind===190||ot.kind===188||ot.kind===204||ot.kind===198?!0:ot.kind===197?ur(ot.type):ot.kind===193||ot.kind===194?ot.types.every(ur):!1}function Gr(ot,ir,qt,Yt=!0){let Tr=npe,mn=zY(ot)?Zh(ot.parameters[0]):Zb(ot);return mn?Tr=GN(S(mn,qt,ot,ir)):T3(ot)&&(Tr=dt(ot,qt)),Tr.type!==void 0?Tr.type:Ke(ot,qt,ir,Yt&&Tr.reportFallback&&!mn)}function dt(ot,ir){let qt;if(ot&&!af(ot.body)){if(BI(ot)&3)return npe;let Tr=ot.body;Tr&&eg(Tr)?TF(Tr,mn=>{if(mn.parent!==Tr)return qt=void 0,!0;if(!qt)qt=mn.expression;else return qt=void 0,!0}):qt=Tr}if(qt)if(pr(qt)){let Yt=hQ(qt)?Fie(qt):Xd(qt)||OF(qt)?qt.type:void 0;if(Yt&&!l2(Yt))return GN(_(Yt,ir))}else return at(qt,ir);return npe}function pr(ot){return ji(ot.parent,ir=>Ll(ir)||!Gd(ir)&&!!Zh(ir)||TN(ir)||Rie(ir))}}var $W={};o($W,{NameValidationResult:()=>lin,discoverTypings:()=>Kws,isTypingUpToDate:()=>ain,loadSafeList:()=>Jws,loadTypesMap:()=>Uws,nonRelativeModuleNameForTypingCache:()=>cin,renderPackageNameValidationFailure:()=>zws,validatePackageName:()=>jws});var UVe="action::set",KVe="action::invalidate",jVe="action::packageInstalled",wrt="event::typesRegistry",Trt="event::beginInstallTypes",Rrt="event::endInstallTypes",$5t="event::initializationFailed",v1e="action::watchTypingLocations",Nrt;(s=>{s.GlobalCacheLocation="--globalTypingsCacheLocation",s.LogFile="--logFile",s.EnableTelemetry="--enableTelemetry",s.TypingSafeListLocation="--typingSafeListLocation",s.TypesMapLocation="--typesMapLocation",s.NpmLocation="--npmLocation",s.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(Nrt||(Nrt={}));function nin(s){return Ed.args.includes(s)}function iin(s){let c=Ed.args.indexOf(s);return c>=0&&cs.readFile(d));return new Map(Object.entries(g.config))}function Uws(s,c){var g;let d=HEe(c,h=>s.readFile(h));if((g=d.config)!=null&&g.simpleMap)return new Map(Object.entries(d.config.simpleMap))}function Kws(s,c,g,d,h,_,S,R,T,O){if(!S||!S.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};let V=new Map;g=Xt(g,Ze=>{let Pe=su(Ze);if(_N(Pe))return Pe});let M=[];S.include&&Ee(S.include,"Explicitly included types");let ee=S.exclude||[];if(!O.types){let Ze=new Set(g.map(Mo));Ze.add(d),Ze.forEach(Pe=>{Ne(Pe,"bower.json","bower_components",M),Ne(Pe,"package.json","node_modules",M)})}if(S.disableFilenameBasedTypeAcquisition||Te(g),R){let Ze=no(R.map(cin),YA,Ca);Ee(Ze,"Inferred typings from unresolved imports")}for(let Ze of ee)V.delete(Ze)&&c&&c(`Typing for ${Ze} is in exclude list, will be ignored.`);_.forEach((Ze,Pe)=>{let Ke=T.get(Pe);V.get(Pe)===!1&&Ke!==void 0&&ain(Ze,Ke)&&V.set(Pe,Ze.typingLocation)});let re=[],ge=[];V.forEach((Ze,Pe)=>{Ze?ge.push(Ze):re.push(Pe)});let Ie={cachedTypingPaths:ge,newTypingNames:re,filesToWatch:M};return c&&c(`Finished typings discovery:${s5(Ie)}`),Ie;function _e(Ze){V.has(Ze)||V.set(Ze,!1)}function Ee(Ze,Pe){c&&c(`${Pe}: ${JSON.stringify(Ze)}`),F(Ze,_e)}function Ne(Ze,Pe,Ke,et){let Ye=To(Ze,Pe),Tt,at;s.fileExists(Ye)&&(et.push(Ye),Tt=HEe(Ye,yt=>s.readFile(yt)).config,at=jt([Tt.dependencies,Tt.devDependencies,Tt.optionalDependencies,Tt.peerDependencies],yg),Ee(at,`Typing names in '${Ye}' dependencies`));let Qe=To(Ze,Ke);if(et.push(Qe),!s.directoryExists(Qe))return;let Ct=[],mt=at?at.map(yt=>To(Qe,yt,Pe)):s.readDirectory(Qe,[".json"],void 0,void 0,3).filter(yt=>{if(dp(yt)!==Pe)return!1;let Rt=kp(su(yt)),Lt=Rt[Rt.length-3][0]==="@";return Lt&&Qm(Rt[Rt.length-4])===Ke||!Lt&&Qm(Rt[Rt.length-3])===Ke});c&&c(`Searching for typing names in ${Qe}; all files: ${JSON.stringify(mt)}`);for(let yt of mt){let Rt=su(yt),je=HEe(Rt,_r=>s.readFile(_r)).config;if(!je.name)continue;let Wt=je.types||je.typings;if(Wt){let _r=Xc(Wt,Mo(Rt));s.fileExists(_r)?(c&&c(` Package '${je.name}' provides its own types.`),V.set(je.name,_r)):c&&c(` Package '${je.name}' provides its own types but they are missing.`)}else Ct.push(je.name)}Ee(Ct," Found package names")}function Te(Ze){let Pe=Xt(Ze,et=>{if(!_N(et))return;let Ye=c0(Qm(dp(et))),Tt=us(Ye);return h.get(Tt)});Pe.length&&Ee(Pe,"Inferred typings from file names"),zt(Ze,et=>lA(et,".jsx"))&&(c&&c("Inferred 'react' typings due to presence of '.jsx' extension"),_e("react"))}}var lin=(s=>(s[s.Ok=0]="Ok",s[s.EmptyName=1]="EmptyName",s[s.NameTooLong=2]="NameTooLong",s[s.NameStartsWithDot=3]="NameStartsWithDot",s[s.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",s[s.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",s))(lin||{}),uin=214;function jws(s){return eMt(s,!0)}function eMt(s,c){if(!s)return 1;if(s.length>uin)return 2;if(s.charCodeAt(0)===46)return 3;if(s.charCodeAt(0)===95)return 4;if(c){let g=/^@([^/]+)\/([^/]+)$/.exec(s);if(g){let d=eMt(g[1],!1);if(d!==0)return{name:g[1],isScopeName:!0,result:d};let h=eMt(g[2],!1);return h!==0?{name:g[2],isScopeName:!1,result:h}:0}}return encodeURIComponent(s)!==s?5:0}function zws(s,c){return typeof s=="object"?gin(c,s.result,s.name,s.isScopeName):gin(c,s,c,!1)}function gin(s,c,g,d){let h=d?"Scope":"Package";switch(c){case 1:return`'${s}':: ${h} name '${g}' cannot be empty`;case 2:return`'${s}':: ${h} name '${g}' should be less than ${uin} characters`;case 3:return`'${s}':: ${h} name '${g}' cannot start with '.'`;case 4:return`'${s}':: ${h} name '${g}' cannot start with '_'`;case 5:return`'${s}':: ${h} name '${g}' contains non URI safe characters`;case 0:return pe.fail();default:pe.assertNever(c)}}var zVe;(s=>{class c{constructor(h){this.text=h}getText(h,_){return h===0&&_===this.text.length?this.text:this.text.substring(h,_)}getLength(){return this.text.length}getChangeRange(){}}function g(d){return new c(d)}s.fromString=g})(zVe||(zVe={}));var tMt=(s=>(s[s.Dependencies=1]="Dependencies",s[s.DevDependencies=2]="DevDependencies",s[s.PeerDependencies=4]="PeerDependencies",s[s.OptionalDependencies=8]="OptionalDependencies",s[s.All=15]="All",s))(tMt||{}),rMt=(s=>(s[s.Off=0]="Off",s[s.On=1]="On",s[s.Auto=2]="Auto",s))(rMt||{}),nMt=(s=>(s[s.Semantic=0]="Semantic",s[s.PartialSemantic=1]="PartialSemantic",s[s.Syntactic=2]="Syntactic",s))(nMt||{}),YB={},iMt=(s=>(s.Original="original",s.TwentyTwenty="2020",s))(iMt||{}),Drt=(s=>(s.All="All",s.SortAndCombine="SortAndCombine",s.RemoveUnused="RemoveUnused",s))(Drt||{}),krt=(s=>(s[s.Invoked=1]="Invoked",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",s))(krt||{}),sMt=(s=>(s.Type="Type",s.Parameter="Parameter",s.Enum="Enum",s))(sMt||{}),oMt=(s=>(s.none="none",s.definition="definition",s.reference="reference",s.writtenReference="writtenReference",s))(oMt||{}),aMt=(s=>(s[s.None=0]="None",s[s.Block=1]="Block",s[s.Smart=2]="Smart",s))(aMt||{}),xrt=(s=>(s.Ignore="ignore",s.Insert="insert",s.Remove="remove",s))(xrt||{});function qVe(s){return{indentSize:4,tabSize:4,newLineCharacter:s||` +`,convertTabsToSpaces:!0,indentStyle:2,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:"ignore",trimTrailingWhitespace:!0,indentSwitchCase:!0}}var Ain=qVe(` +`),$Ve=(s=>(s[s.aliasName=0]="aliasName",s[s.className=1]="className",s[s.enumName=2]="enumName",s[s.fieldName=3]="fieldName",s[s.interfaceName=4]="interfaceName",s[s.keyword=5]="keyword",s[s.lineBreak=6]="lineBreak",s[s.numericLiteral=7]="numericLiteral",s[s.stringLiteral=8]="stringLiteral",s[s.localName=9]="localName",s[s.methodName=10]="methodName",s[s.moduleName=11]="moduleName",s[s.operator=12]="operator",s[s.parameterName=13]="parameterName",s[s.propertyName=14]="propertyName",s[s.punctuation=15]="punctuation",s[s.space=16]="space",s[s.text=17]="text",s[s.typeParameterName=18]="typeParameterName",s[s.enumMemberName=19]="enumMemberName",s[s.functionName=20]="functionName",s[s.regularExpressionLiteral=21]="regularExpressionLiteral",s[s.link=22]="link",s[s.linkName=23]="linkName",s[s.linkText=24]="linkText",s))($Ve||{}),cMt=(s=>(s[s.None=0]="None",s[s.MayIncludeAutoImports=1]="MayIncludeAutoImports",s[s.IsImportStatementCompletion=2]="IsImportStatementCompletion",s[s.IsContinuation=4]="IsContinuation",s[s.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",s[s.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",s[s.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",s))(cMt||{}),lMt=(s=>(s.Comment="comment",s.Region="region",s.Code="code",s.Imports="imports",s))(lMt||{}),uMt=(s=>(s[s.JavaScript=0]="JavaScript",s[s.SourceMap=1]="SourceMap",s[s.Declaration=2]="Declaration",s))(uMt||{}),gMt=(s=>(s[s.None=0]="None",s[s.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",s[s.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",s[s.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",s[s.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",s[s.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",s[s.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",s))(gMt||{}),AMt=(s=>(s[s.Punctuation=0]="Punctuation",s[s.Keyword=1]="Keyword",s[s.Operator=2]="Operator",s[s.Comment=3]="Comment",s[s.Whitespace=4]="Whitespace",s[s.Identifier=5]="Identifier",s[s.NumberLiteral=6]="NumberLiteral",s[s.BigIntLiteral=7]="BigIntLiteral",s[s.StringLiteral=8]="StringLiteral",s[s.RegExpLiteral=9]="RegExpLiteral",s))(AMt||{}),dMt=(s=>(s.unknown="",s.warning="warning",s.keyword="keyword",s.scriptElement="script",s.moduleElement="module",s.classElement="class",s.localClassElement="local class",s.interfaceElement="interface",s.typeElement="type",s.enumElement="enum",s.enumMemberElement="enum member",s.variableElement="var",s.localVariableElement="local var",s.variableUsingElement="using",s.variableAwaitUsingElement="await using",s.functionElement="function",s.localFunctionElement="local function",s.memberFunctionElement="method",s.memberGetAccessorElement="getter",s.memberSetAccessorElement="setter",s.memberVariableElement="property",s.memberAccessorVariableElement="accessor",s.constructorImplementationElement="constructor",s.callSignatureElement="call",s.indexSignatureElement="index",s.constructSignatureElement="construct",s.parameterElement="parameter",s.typeParameterElement="type parameter",s.primitiveType="primitive type",s.label="label",s.alias="alias",s.constElement="const",s.letElement="let",s.directory="directory",s.externalModuleName="external module name",s.jsxAttribute="JSX attribute",s.string="string",s.link="link",s.linkName="link name",s.linkText="link text",s))(dMt||{}),pMt=(s=>(s.none="",s.publicMemberModifier="public",s.privateMemberModifier="private",s.protectedMemberModifier="protected",s.exportedModifier="export",s.ambientModifier="declare",s.staticModifier="static",s.abstractModifier="abstract",s.optionalModifier="optional",s.deprecatedModifier="deprecated",s.dtsModifier=".d.ts",s.tsModifier=".ts",s.tsxModifier=".tsx",s.jsModifier=".js",s.jsxModifier=".jsx",s.jsonModifier=".json",s.dmtsModifier=".d.mts",s.mtsModifier=".mts",s.mjsModifier=".mjs",s.dctsModifier=".d.cts",s.ctsModifier=".cts",s.cjsModifier=".cjs",s))(pMt||{}),fMt=(s=>(s.comment="comment",s.identifier="identifier",s.keyword="keyword",s.numericLiteral="number",s.bigintLiteral="bigint",s.operator="operator",s.stringLiteral="string",s.whiteSpace="whitespace",s.text="text",s.punctuation="punctuation",s.className="class name",s.enumName="enum name",s.interfaceName="interface name",s.moduleName="module name",s.typeParameterName="type parameter name",s.typeAliasName="type alias name",s.parameterName="parameter name",s.docCommentTagName="doc comment tag name",s.jsxOpenTagName="jsx open tag name",s.jsxCloseTagName="jsx close tag name",s.jsxSelfClosingTagName="jsx self closing tag name",s.jsxAttribute="jsx attribute",s.jsxText="jsx text",s.jsxAttributeStringLiteralValue="jsx attribute string literal value",s))(fMt||{}),Grt=(s=>(s[s.comment=1]="comment",s[s.identifier=2]="identifier",s[s.keyword=3]="keyword",s[s.numericLiteral=4]="numericLiteral",s[s.operator=5]="operator",s[s.stringLiteral=6]="stringLiteral",s[s.regularExpressionLiteral=7]="regularExpressionLiteral",s[s.whiteSpace=8]="whiteSpace",s[s.text=9]="text",s[s.punctuation=10]="punctuation",s[s.className=11]="className",s[s.enumName=12]="enumName",s[s.interfaceName=13]="interfaceName",s[s.moduleName=14]="moduleName",s[s.typeParameterName=15]="typeParameterName",s[s.typeAliasName=16]="typeAliasName",s[s.parameterName=17]="parameterName",s[s.docCommentTagName=18]="docCommentTagName",s[s.jsxOpenTagName=19]="jsxOpenTagName",s[s.jsxCloseTagName=20]="jsxCloseTagName",s[s.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",s[s.jsxAttribute=22]="jsxAttribute",s[s.jsxText=23]="jsxText",s[s.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",s[s.bigintLiteral=25]="bigintLiteral",s))(Grt||{}),f_=Nb(99,!0),IMt=(s=>(s[s.None=0]="None",s[s.Value=1]="Value",s[s.Type=2]="Type",s[s.Namespace=4]="Namespace",s[s.All=7]="All",s))(IMt||{});function eWe(s){switch(s.kind){case 261:return Bo(s)&&g1(s)?7:1;case 170:case 209:case 173:case 172:case 304:case 305:case 175:case 174:case 177:case 178:case 179:case 263:case 219:case 220:case 300:case 292:return 1;case 169:case 265:case 266:case 188:return 2;case 347:return s.name===void 0?3:2;case 307:case 264:return 3;case 268:return c_(s)||XF(s)===1?5:4;case 267:case 276:case 277:case 272:case 273:case 278:case 279:return 7;case 308:return 5}return 7}function QU(s){s=Jrt(s);let c=s.parent;return s.kind===308?1:yf(c)||k0(c)||HF(c)||dy(c)||Yw(c)||Zm(c)&&s===c.name?7:tWe(s)?qws(s):KT(s)?eWe(c):mC(s)&&ji(s,Qp(wde,Gx,j3))?7:rTs(s)?2:$ws(s)?4:Ds(c)?(pe.assert(MB(c.parent)),2):wE(c)?3:1}function qws(s){let c=s.kind===167?s:zi(s.parent)&&s.parent.right===s?s.parent:void 0;return c&&c.parent.kind===272?7:4}function tWe(s){if(!s.parent)return!1;for(;s.parent.kind===167;)s=s.parent;return b3(s.parent)&&s.parent.moduleReference===s}function $ws(s){return eTs(s)||tTs(s)}function eTs(s){let c=s,g=!0;if(c.parent.kind===167){for(;c.parent&&c.parent.kind===167;)c=c.parent;g=c.right===s}return c.parent.kind===184&&!g}function tTs(s){let c=s,g=!0;if(c.parent.kind===212){for(;c.parent&&c.parent.kind===212;)c=c.parent;g=c.name===s}if(!g&&c.parent.kind===234&&c.parent.parent.kind===299){let d=c.parent.parent.parent;return d.kind===264&&c.parent.parent.token===119||d.kind===265&&c.parent.parent.token===96}return!1}function rTs(s){switch(ez(s)&&(s=s.parent),s.kind){case 110:return!UT(s);case 198:return!0}switch(s.parent.kind){case 184:return!0;case 206:return!s.parent.isTypeOf;case 234:return xw(s.parent)}return!1}function Frt(s,c=!1,g=!1){return B1e(s,Ll,Lrt,c,g)}function spe(s,c=!1,g=!1){return B1e(s,C2,Lrt,c,g)}function Zrt(s,c=!1,g=!1){return B1e(s,Av,Lrt,c,g)}function hMt(s,c=!1,g=!1){return B1e(s,QI,nTs,c,g)}function mMt(s,c=!1,g=!1){return B1e(s,Eo,Lrt,c,g)}function CMt(s,c=!1,g=!1){return B1e(s,nI,iTs,c,g)}function Lrt(s){return s.expression}function nTs(s){return s.tag}function iTs(s){return s.tagName}function B1e(s,c,g,d,h){let _=d?sTs(s):rWe(s);return h&&(_=XI(_)),!!_&&!!_.parent&&c(_.parent)&&g(_.parent)===_}function rWe(s){return tse(s)?s.parent:s}function sTs(s){return tse(s)||Prt(s)?s.parent:s}function nWe(s,c){for(;s;){if(s.kind===257&&s.label.escapedText===c)return s.label;s=s.parent}}function w1e(s,c){return jo(s.expression)?s.expression.name.text===c:!1}function T1e(s){var c;return Ir(s)&&((c=Gs(s.parent,SY))==null?void 0:c.label)===s}function Vrt(s){var c;return Ir(s)&&((c=Gs(s.parent,YW))==null?void 0:c.label)===s}function Wrt(s){return Vrt(s)||T1e(s)}function Ort(s){var c;return((c=Gs(s.parent,C3))==null?void 0:c.tagName)===s}function _Mt(s){var c;return((c=Gs(s.parent,zi))==null?void 0:c.right)===s}function tse(s){var c;return((c=Gs(s.parent,jo))==null?void 0:c.name)===s}function Prt(s){var c;return((c=Gs(s.parent,Qg))==null?void 0:c.argumentExpression)===s}function Mrt(s){var c;return((c=Gs(s.parent,Lh))==null?void 0:c.name)===s}function Hrt(s){var c;return Ir(s)&&((c=Gs(s.parent,Eu))==null?void 0:c.name)===s}function iWe(s){switch(s.parent.kind){case 173:case 172:case 304:case 307:case 175:case 174:case 178:case 179:case 268:return fl(s.parent)===s;case 213:return s.parent.argumentExpression===s;case 168:return!0;case 202:return s.parent.parent.kind===200;default:return!1}}function yMt(s){return YL(s.parent.parent)&&F7(s.parent.parent)===s}function XU(s){for(lS(s)&&(s=s.parent.parent);;){if(s=s.parent,!s)return;switch(s.kind){case 308:case 175:case 174:case 263:case 219:case 178:case 179:case 264:case 265:case 267:case 268:return s}}}function BQ(s){switch(s.kind){case 308:return Lm(s)?"module":"script";case 268:return"module";case 264:case 232:return"class";case 265:return"interface";case 266:case 339:case 347:return"type";case 267:return"enum";case 261:return c(s);case 209:return c(Fw(s));case 220:case 263:case 219:return"function";case 178:return"getter";case 179:return"setter";case 175:case 174:return"method";case 304:let{initializer:g}=s;return Eu(g)?"method":"property";case 173:case 172:case 305:case 306:return"property";case 182:return"index";case 181:return"construct";case 180:return"call";case 177:case 176:return"constructor";case 169:return"type parameter";case 307:return"enum member";case 170:return Ga(s,31)?"property":"parameter";case 272:case 277:case 282:case 275:case 281:return"alias";case 227:let d=oI(s),{right:h}=s;switch(d){case 7:case 8:case 9:case 0:return"";case 1:case 2:let S=BQ(h);return S===""?"const":S;case 3:return jA(h)?"method":"property";case 4:return"property";case 5:return jA(h)?"method":"property";case 6:return"local class";default:return""}case 80:return Yw(s.parent)?"alias":"";case 278:let _=BQ(s.expression);return _===""?"const":_;default:return""}function c(g){return sI(g)?"const":aS(g)?"let":"var"}}function rse(s){switch(s.kind){case 110:return!0;case 80:return pbe(s)&&s.parent.kind===170;default:return!1}}var oTs=/^\/\/\/\s*=g}function ope(s,c,g){return oWe(s.pos,s.end,c,g)}function sWe(s,c,g,d){return oWe(s.getStart(c),s.end,g,d)}function oWe(s,c,g,d){let h=Math.max(s,g),_=Math.min(c,d);return h<_}function Yrt(s,c,g){return pe.assert(s.pos<=c),cd.kind===c)}function aWe(s){let c=de(s.parent.getChildren(),g=>Gie(g)&&gy(g,s));return pe.assert(!c||k(c.getChildren(),s)),c}function din(s){return s.kind===90}function aTs(s){return s.kind===86}function cTs(s){return s.kind===100}function lTs(s){if(sh(s))return s.name;if(mm(s)){let c=s.modifiers&&de(s.modifiers,din);if(c)return c}if(wd(s)){let c=de(s.getChildren(),aTs);if(c)return c}}function uTs(s){if(sh(s))return s.name;if(ah(s)){let c=de(s.modifiers,din);if(c)return c}if(jA(s)){let c=de(s.getChildren(),cTs);if(c)return c}}function gTs(s){let c;return ji(s,g=>(uc(g)&&(c=g),!zi(g.parent)&&!uc(g.parent)&&!kx(g.parent))),c}function cWe(s,c){if(s.flags&16777216)return;let g=SWe(s,c);if(g)return g;let d=gTs(s);return d&&c.getTypeAtLocation(d)}function ATs(s,c){if(!c)switch(s.kind){case 264:case 232:return lTs(s);case 263:case 219:return uTs(s);case 177:return s}if(sh(s))return s.name}function pin(s,c){if(s.importClause){if(s.importClause.name&&s.importClause.namedBindings)return;if(s.importClause.name)return s.importClause.name;if(s.importClause.namedBindings){if(wN(s.importClause.namedBindings)){let g=Ws(s.importClause.namedBindings.elements);return g?g.name:void 0}else if(Mx(s.importClause.namedBindings))return s.importClause.namedBindings.name}}if(!c)return s.moduleSpecifier}function fin(s,c){if(s.exportClause){if(Ev(s.exportClause))return Ws(s.exportClause.elements)?s.exportClause.elements[0].name:void 0;if(ak(s.exportClause))return s.exportClause.name}if(!c)return s.moduleSpecifier}function dTs(s){if(s.types.length===1)return s.types[0].expression}function Iin(s,c){let{parent:g}=s;if(hg(s)&&(c||s.kind!==90)?HB(g)&&k(g.modifiers,s):s.kind===86?mm(g)||wd(s):s.kind===100?ah(g)||jA(s):s.kind===120?p_(g):s.kind===94?J3(g):s.kind===156?PB(g):s.kind===145||s.kind===144?Lh(g):s.kind===102?Zm(g):s.kind===139?wg(g):s.kind===153&&kg(g)){let d=ATs(g,c);if(d)return d}if((s.kind===115||s.kind===87||s.kind===121)&&d_(g)&&g.declarations.length===1){let d=g.declarations[0];if(Ir(d.name))return d.name}if(s.kind===156){if(Yw(g)&&g.isTypeOnly){let d=pin(g.parent,c);if(d)return d}if(Vh(g)&&g.isTypeOnly){let d=fin(g,c);if(d)return d}}if(s.kind===130){if(dy(g)&&g.propertyName||k0(g)&&g.propertyName||Mx(g)||ak(g))return g.name;if(Vh(g)&&g.exportClause&&ak(g.exportClause))return g.exportClause.name}if(s.kind===102&&Yf(g)){let d=pin(g,c);if(d)return d}if(s.kind===95){if(Vh(g)){let d=fin(g,c);if(d)return d}if(yf(g))return XI(g.expression)}if(s.kind===149&&HF(g))return g.expression;if(s.kind===161&&(Yf(g)||Vh(g))&&g.moduleSpecifier)return g.moduleSpecifier;if((s.kind===96||s.kind===119)&&y1(g)&&g.token===s.kind){let d=dTs(g);if(d)return d}if(s.kind===96){if(Ds(g)&&g.constraint&&oh(g.constraint))return g.constraint.typeName;if(h2(g)&&oh(g.extendsType))return g.extendsType.typeName}if(s.kind===140&&rR(g))return g.typeParameter.name;if(s.kind===103&&Ds(g)&&OB(g.parent))return g.name;if(s.kind===143&&WB(g)&&g.operator===143&&oh(g.type))return g.type.typeName;if(s.kind===148&&WB(g)&&g.operator===148&&WF(g.type)&&oh(g.type.elementType))return g.type.elementType.typeName;if(!c){if((s.kind===105&&C2(g)||s.kind===116&&iR(g)||s.kind===114&&vN(g)||s.kind===135&&_1(g)||s.kind===127&&Qd(g)||s.kind===91&&PF(g))&&g.expression)return XI(g.expression);if((s.kind===103||s.kind===104)&&po(g)&&g.operatorToken===s)return XI(g.right);if(s.kind===130&&Xd(g)&&oh(g.type))return g.type.typeName;if(s.kind===103&&m9e(g)||s.kind===165&&BEe(g))return XI(g.expression)}return s}function Jrt(s){return Iin(s,!1)}function lWe(s){return Iin(s,!0)}function Ob(s,c){return ise(s,c,g=>Gw(g)||T0(g.kind)||p(g))}function ise(s,c,g){return hin(s,c,!1,g,!1)}function Jc(s,c){return hin(s,c,!0,void 0,!1)}function hin(s,c,g,d,h){let _=s,S;e:for(;;){let T=_.getChildren(s),O=vg(T,c,(V,M)=>M,(V,M)=>{let ee=T[V].getEnd();if(eec?1:R(T[V],re,ee)?T[V-1]&&R(T[V-1])?1:0:d&&re===c&&T[V-1]&&T[V-1].getEnd()===c&&R(T[V-1])?1:-1});if(S)return S;if(O>=0&&T[O]){_=T[O];continue e}return _}function R(T,O,V){if(V??(V=T.getEnd()),Vc))return!1;if(cg.getStart(s)&&c(_.pos<=s.pos&&_.end>s.end||_.pos===s.end)&&NMt(_,g)?d(_):void 0)}}function Vm(s,c,g,d){let h=_(g||c);return pe.assert(!(h&&uWe(h))),h;function _(S){if(min(S)&&S.kind!==1)return S;let R=S.getChildren(c),T=vg(R,s,(V,M)=>M,(V,M)=>s=R[V-1].end?0:1:-1);if(T>=0&&R[T]){let V=R[T];if(s=s||!NMt(V,c)||uWe(V)){let re=BMt(R,T,c,S.kind);return re?!d&&C7(re)&&re.getChildren(c).length?_(re):vMt(re,c):void 0}else return _(V)}pe.assert(g!==void 0||S.kind===308||S.kind===1||C7(S));let O=BMt(R,R.length,c,S.kind);return O&&vMt(O,c)}}function min(s){return xL(s)&&!uWe(s)}function vMt(s,c){if(min(s))return s;let g=s.getChildren(c);if(g.length===0)return s;let d=BMt(g,g.length,c,s.kind);return d&&vMt(d,c)}function BMt(s,c,g,d){for(let h=c-1;h>=0;h--){let _=s[h];if(uWe(_))h===0&&(d===12||d===286)&&pe.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(NMt(s[h],g))return s[h]}}function zz(s,c,g=Vm(c,s)){if(g&&Vre(g)){let d=g.getStart(s),h=g.getEnd();if(dg.getStart(s)}function TMt(s,c){let g=Jc(s,c);return!!(r9(g)||g.kind===19&&Rie(g.parent)&&TN(g.parent.parent)||g.kind===30&&nI(g.parent)&&TN(g.parent.parent))}function gWe(s,c){function g(d){for(;d;)if(d.kind>=286&&d.kind<=295||d.kind===12||d.kind===30||d.kind===32||d.kind===80||d.kind===20||d.kind===19||d.kind===44)d=d.parent;else if(d.kind===285){if(c>d.getStart(s))return!0;d=d.parent}else return!1;return!1}return g(Jc(s,c))}function AWe(s,c,g){let d=Vi(s.kind),h=Vi(c),_=s.getFullStart(),S=g.text.lastIndexOf(h,_);if(S===-1)return;if(g.text.lastIndexOf(d,_-1)!!_.typeParameters&&_.typeParameters.length>=c)}function jrt(s,c){if(c.text.lastIndexOf("<",s?s.pos:c.text.length)===-1)return;let g=s,d=0,h=0;for(;g;){switch(g.kind){case 30:if(g=Vm(g.getFullStart(),c),g&&g.kind===29&&(g=Vm(g.getFullStart(),c)),!g||!Ir(g))return;if(!d)return KT(g)?void 0:{called:g,nTypeArguments:h};d--;break;case 50:d=3;break;case 49:d=2;break;case 32:d++;break;case 20:if(g=AWe(g,19,c),!g)return;break;case 22:if(g=AWe(g,21,c),!g)return;break;case 24:if(g=AWe(g,23,c),!g)return;break;case 28:h++;break;case 39:case 80:case 11:case 9:case 10:case 112:case 97:case 114:case 96:case 143:case 25:case 52:case 58:case 59:break;default:if(uc(g))break;return}g=Vm(g.getFullStart(),c)}}function o9(s,c,g){return _m.getRangeOfEnclosingComment(s,c,void 0,g)}function RMt(s,c){let g=Jc(s,c);return!!ji(g,aR)}function NMt(s,c){return s.kind===1?!!s.jsDoc:s.getWidth(c)!==0}function cpe(s,c=0){let g=[],d=em(s)?ld(s)&~c:0;return d&2&&g.push("private"),d&4&&g.push("protected"),d&1&&g.push("public"),(d&256||dl(s))&&g.push("static"),d&64&&g.push("abstract"),d&32&&g.push("export"),d&65536&&g.push("deprecated"),s.flags&33554432&&g.push("declare"),s.kind===278&&g.push("export"),g.length>0?g.join(","):""}function DMt(s){if(s.kind===184||s.kind===214)return s.typeArguments;if(Eu(s)||s.kind===264||s.kind===265)return s.typeParameters}function dWe(s){return s===2||s===3}function zrt(s){return!!(s===11||s===14||HD(s))}function Cin(s,c,g){return!!(c.flags&4)&&s.isEmptyAnonymousObjectType(g)}function kMt(s){if(!s.isIntersection())return!1;let{types:c,checker:g}=s;return c.length===2&&(Cin(g,c[0],c[1])||Cin(g,c[1],c[0]))}function k1e(s,c,g){return HD(s.kind)&&s.getStart(g){let g=id(c);return!s[g]&&(s[g]=!0)}}function qz(s){return s.getText(0,s.getLength())}function G1e(s,c){let g="";for(let d=0;d!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!(c.externalModuleIndicator||c.commonJsModuleIndicator))}function ZMt(s){return s.getSourceFiles().some(c=>!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!c.externalModuleIndicator)}function snt(s){return!!s.module||Hg(s)>=2||!!s.noEmit}function o5(s,c){return{fileExists:g=>s.fileExists(g),getCurrentDirectory:()=>c.getCurrentDirectory(),readFile:$i(c,c.readFile),useCaseSensitiveFileNames:$i(c,c.useCaseSensitiveFileNames)||s.useCaseSensitiveFileNames,getSymlinkCache:$i(c,c.getSymlinkCache)||s.getSymlinkCache,getModuleSpecifierCache:$i(c,c.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var g;return(g=s.getModuleResolutionCache())==null?void 0:g.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:$i(c,c.getGlobalTypingsCacheLocation),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:g=>s.getRedirectFromSourceFile(g),isSourceOfProjectReferenceRedirect:g=>s.isSourceOfProjectReferenceRedirect(g),getNearestAncestorDirectoryWithPackageJson:$i(c,c.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>s.getFileIncludeReasons(),getCommonSourceDirectory:()=>s.getCommonSourceDirectory(),getDefaultResolutionModeForFile:g=>s.getDefaultResolutionModeForFile(g),getModeForResolutionAtIndex:(g,d)=>s.getModeForResolutionAtIndex(g,d)}}function ont(s,c){return{...o5(s,c),getCommonSourceDirectory:()=>s.getCommonSourceDirectory()}}function hWe(s){return s===2||s>=3&&s<=99||s===100}function eO(s,c,g,d,h){return me.createImportDeclaration(void 0,s||c?me.createImportClause(h?156:void 0,s,c&&c.length?me.createNamedImports(c):void 0):void 0,typeof g=="string"?upe(g,d):g,void 0)}function upe(s,c){return me.createStringLiteral(s,c===0)}var LMt=(s=>(s[s.Single=0]="Single",s[s.Double=1]="Double",s))(LMt||{});function ant(s,c){return _ne(s,c)?1:0}function S1(s,c){if(c.quotePreference&&c.quotePreference!=="auto")return c.quotePreference==="single"?0:1;{let g=dN(s)&&s.imports&&de(s.imports,d=>Lg(d)&&!ap(d.parent));return g?ant(g,s):1}}function cnt(s){switch(s){case 0:return"'";case 1:return'"';default:return pe.assertNever(s)}}function lnt(s){let c=mWe(s);return c===void 0?void 0:Bc(c)}function mWe(s){return s.escapedName!=="default"?s.escapedName:J(s.declarations,c=>{let g=fl(c);return g&&g.kind===80?g.escapedText:void 0})}function CWe(s){return _A(s)&&(HF(s.parent)||Yf(s.parent)||NN(s.parent)||uy(s.parent,!1)&&s.parent.arguments[0]===s||jp(s.parent)&&s.parent.arguments[0]===s)}function Z1e(s){return mg(s)&&$m(s.parent)&&Ir(s.name)&&!s.propertyName}function _We(s,c){let g=s.getTypeAtLocation(c.parent);return g&&s.getPropertyOfType(g,c.name.text)}function L1e(s,c,g){if(s)for(;s.parent;){if(cl(s.parent)||!fTs(g,s.parent,c))return s;s=s.parent}}function fTs(s,c,g){return Io(s,c.getStart(g))&&c.getEnd()<=Rs(s)}function ose(s,c){return HB(s)?de(s.modifiers,g=>g.kind===c):void 0}function unt(s,c,g,d,h){var _;let R=(Ki(g)?g[0]:g).kind===244?mne:vW,T=Le(c.statements,R),{comparer:O,isSorted:V}=d5.getOrganizeImportsStringComparerWithDetection(T,h),M=Ki(g)?yo(g,(ee,re)=>d5.compareImportsOrRequireStatements(ee,re,O)):[g];if(!T?.length){if(dN(c))s.insertNodesAtTopOfFile(c,M,d);else for(let ee of M)s.insertStatementsInNewFile(c.fileName,[ee],(_=xd(ee))==null?void 0:_.getSourceFile());return}if(pe.assert(dN(c)),T&&V)for(let ee of M){let re=d5.getImportDeclarationInsertionIndex(T,ee,O);if(re===0){let ge=T[0]===c.statements[0]?{leadingTriviaOption:xo.LeadingTriviaOption.Exclude}:{};s.insertNodeBefore(c,T[0],ee,!1,ge)}else{let ge=T[re-1];s.insertNodeAfter(c,ge,ee)}}else{let ee=li(T);ee?s.insertNodesAfter(c,ee,M):s.insertNodesAtTopOfFile(c,M,d)}}function gnt(s,c){return pe.assert(s.isTypeOnly),Ma(s.getChildAt(0,c),yin)}function ase(s,c){return!!s&&!!c&&s.start===c.start&&s.length===c.length}function Ant(s,c,g){return(g?YA:Yp)(s.fileName,c.fileName)&&ase(s.textSpan,c.textSpan)}function dnt(s){return(c,g)=>Ant(c,g,s)}function pnt(s,c){if(s){for(let g=0;gSi(g)?!0:mg(g)||$m(g)||m2(g)?!1:"quit")}var WMt=new Map;function ITs(s){return s=s||FY,WMt.has(s)||WMt.set(s,hTs(s)),WMt.get(s)}function hTs(s){let c=s*10,g,d,h,_;M();let S=ee=>T(ee,17);return{displayParts:()=>{let ee=g.length&&g[g.length-1].text;return _>c&&ee&&ee!=="..."&&(dc(ee.charCodeAt(ee.length-1))||g.push(TE(" ",16)),g.push(TE("...",15))),g},writeKeyword:ee=>T(ee,5),writeOperator:ee=>T(ee,12),writePunctuation:ee=>T(ee,15),writeTrailingSemicolon:ee=>T(ee,15),writeSpace:ee=>T(ee,16),writeStringLiteral:ee=>T(ee,8),writeParameter:ee=>T(ee,13),writeProperty:ee=>T(ee,14),writeLiteral:ee=>T(ee,8),writeSymbol:O,writeLine:V,write:S,writeComment:S,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:rl,getIndent:()=>h,increaseIndent:()=>{h++},decreaseIndent:()=>{h--},clear:M};function R(){if(!(_>c)&&d){let ee=bAe(h);ee&&(_+=ee.length,g.push(TE(ee,16))),d=!1}}function T(ee,re){_>c||(R(),_+=ee.length,g.push(TE(ee,re)))}function O(ee,re){_>c||(R(),_+=ee.length,g.push(mTs(ee,re)))}function V(){_>c||(_+=1,g.push(cse()),d=!0)}function M(){g=[],d=!0,h=0,_=0}}function mTs(s,c){return TE(s,g(c));function g(d){let h=d.flags;return h&3?Int(d)?13:9:h&4||h&32768||h&65536?14:h&8?19:h&16?20:h&32?1:h&64?4:h&384?2:h&1536?11:h&8192?10:h&262144?18:h&524288||h&2097152?0:17}}function TE(s,c){return{text:s,kind:$Ve[c]}}function TI(){return TE(" ",16)}function v1(s){return TE(Vi(s),5)}function F0(s){return TE(Vi(s),15)}function Ape(s){return TE(Vi(s),12)}function OMt(s){return TE(s,13)}function PMt(s){return TE(s,14)}function hnt(s){let c=Ta(s);return c===void 0?IS(s):v1(c)}function IS(s){return TE(s,17)}function MMt(s){return TE(s,0)}function HMt(s){return TE(s,18)}function YMt(s){return TE(s,24)}function CTs(s,c){return{text:s,kind:$Ve[23],target:{fileName:ms(c).fileName,textSpan:Yy(c)}}}function bin(s){return TE(s,22)}function QMt(s,c){var g;let d=dOt(s)?"link":pOt(s)?"linkcode":"linkplain",h=[bin(`{@${d} `)];if(!s.name)s.text&&h.push(YMt(s.text));else{let _=c?.getSymbolAtLocation(s.name),S=_&&c?_nt(_,c):void 0,R=yTs(s.text),T=Fp(s.name)+s.text.slice(0,R),O=_Ts(s.text.slice(R)),V=S?.valueDeclaration||((g=S?.declarations)==null?void 0:g[0]);if(V)h.push(CTs(T,V)),O&&h.push(YMt(O));else{let M=R===0||s.text.charCodeAt(R)===124&&T.charCodeAt(T.length-1)!==32?" ":"";h.push(YMt(T+M+O))}}return h.push(bin("}")),h}function _Ts(s){let c=0;if(s.charCodeAt(c++)===124){for(;c"&&g--,d++,!g)return d}return 0}var bTs=` +`;function UF(s,c){var g;return c?.newLineCharacter||((g=s.getNewLine)==null?void 0:g.call(s))||bTs}function cse(){return TE(` +`,6)}function tO(s,c){let g=ITs(c);try{return s(g),g.displayParts()}finally{g.clear()}}function V1e(s,c,g,d=0,h,_,S){return tO(R=>{s.writeType(c,g,d|1024|16384,R,h,_,S)},h)}function dpe(s,c,g,d,h=0){return tO(_=>{s.writeSymbol(c,g,d,h|8,_)})}function mnt(s,c,g,d=0,h,_,S){return d|=25632,tO(R=>{s.writeSignature(c,g,d,void 0,R,h,_,S)},h)}function XMt(s){return!!s.parent&&sS(s.parent)&&s.parent.propertyName===s}function Cnt(s,c){return zAe(s,c.getScriptKind&&c.getScriptKind(s))}function _nt(s,c){let g=s;for(;ETs(g)||Tw(g)&&g.links.target;)Tw(g)&&g.links.target?g=g.links.target:g=VC(g,c);return g}function ETs(s){return(s.flags&2097152)!==0}function JMt(s,c){return xg(VC(s,c))}function UMt(s,c){for(;dc(s.charCodeAt(c));)c+=1;return c}function bWe(s,c){for(;c>-1&&hu(s.charCodeAt(c));)c-=1;return c+1}function JU(s,c){let g=s.getSourceFile(),d=g.text;STs(s,d)?lse(s,c,g):O1e(s,c,g),ppe(s,c,g)}function STs(s,c){let g=s.getFullStart(),d=s.getStart();for(let h=g;h=0),_}function lse(s,c,g,d,h){OD(g.text,s.pos,KMt(c,g,d,h,$T))}function ppe(s,c,g,d,h){_F(g.text,s.end,KMt(c,g,d,h,Dz))}function O1e(s,c,g,d,h){_F(g.text,s.pos,KMt(c,g,d,h,$T))}function KMt(s,c,g,d,h){return(_,S,R,T)=>{R===3?(_+=2,S-=2):_+=2,h(s,g||R,c.text.slice(_,S),d!==void 0?d:T)}}function vTs(s,c){if(Ac(s,c))return 0;let g=s.indexOf(" "+c);return g===-1&&(g=s.indexOf("."+c)),g===-1&&(g=s.indexOf('"'+c)),g===-1?-1:g+1}function EWe(s){return po(s)&&s.operatorToken.kind===28||ag(s)||(Xd(s)||Xg(s))&&ag(s.expression)}function SWe(s,c,g){let d=Iv(s.parent);switch(d.kind){case 215:return c.getContextualType(d,g);case 227:{let{left:h,operatorToken:_,right:S}=d;return vWe(_.kind)?c.getTypeAtLocation(s===S?h:S):c.getContextualType(s,g)}case 297:return bnt(d,c);default:return c.getContextualType(s,g)}}function fpe(s,c,g){let d=S1(s,c),h=JSON.stringify(g);return d===0?`'${d2(h).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:h}function vWe(s){switch(s){case 37:case 35:case 38:case 36:return!0;default:return!1}}function jMt(s){switch(s.kind){case 11:case 15:case 229:case 216:return!0;default:return!1}}function ynt(s){return!!s.getStringIndexType()||!!s.getNumberIndexType()}function bnt(s,c){return c.getTypeAtLocation(s.parent.parent.expression)}var Ent="anonymous function";function Ipe(s,c,g,d){let h=g.getTypeChecker(),_=!0,S=()=>_=!1,R=h.typeToTypeNode(s,c,1,8,{trackSymbol:(T,O,V)=>(_=_&&h.isSymbolAccessible(T,O,V,!1).accessibility===0,!_),reportInaccessibleThisError:S,reportPrivateInBaseOfClassExpression:S,reportInaccessibleUniqueSymbolError:S,moduleResolverHost:ont(g,d)});return _?R:void 0}function zMt(s){return s===180||s===181||s===182||s===172||s===174}function Ein(s){return s===263||s===177||s===175||s===178||s===179}function Sin(s){return s===268}function qMt(s){return s===244||s===245||s===247||s===252||s===253||s===254||s===258||s===260||s===173||s===266||s===273||s===272||s===279||s===271||s===278}var BTs=Qp(zMt,Ein,Sin,qMt);function wTs(s,c){let g=s.getLastToken(c);if(g&&g.kind===27)return!1;if(zMt(s.kind)){if(g&&g.kind===28)return!1}else if(Sin(s.kind)){let R=Ei(s.getChildren(c));if(R&&BN(R))return!1}else if(Ein(s.kind)){let R=Ei(s.getChildren(c));if(R&&wW(R))return!1}else if(!qMt(s.kind))return!1;if(s.kind===247)return!0;let d=ji(s,R=>!R.parent),h=wQ(s,d,c);if(!h||h.kind===20)return!0;let _=c.getLineAndCharacterOfPosition(s.getEnd()).line,S=c.getLineAndCharacterOfPosition(h.getStart(c)).line;return _!==S}function BWe(s,c,g){let d=ji(c,h=>h.end!==s?"quit":BTs(h.kind));return!!d&&wTs(d,g)}function P1e(s){let c=0,g=0,d=5;return Lu(s,function h(_){if(qMt(_.kind)){let S=_.getLastToken(s);S?.kind===27?c++:g++}else if(zMt(_.kind)){let S=_.getLastToken(s);if(S?.kind===27)c++;else if(S&&S.kind!==28){let R=Ra(s,S.getStart(s)).line,T=Ra(s,rs(s,S.end).start).line;R!==T&&g++}}return c+g>=d?!0:Lu(_,h)}),c===0&&g<=1?!0:c/g>1/d}function wWe(s,c){return $Mt(s,s.getDirectories,c)||[]}function Snt(s,c,g,d,h){return $Mt(s,s.readDirectory,c,g,d,h)||E}function use(s,c){return $Mt(s,s.fileExists,c)}function TWe(s,c){return RWe(()=>C1(c,s))||!1}function RWe(s){try{return s()}catch{return}}function $Mt(s,c,...g){return RWe(()=>c&&c.apply(s,g))}function vnt(s,c){let g=[];return DN(c,s,d=>{let h=To(d,"package.json");use(c,h)&&g.push(h)}),g}function eHt(s,c){let g;return DN(c,s,d=>{if(d==="node_modules"||(g=Btt(d,h=>use(c,h),"package.json"),g))return!0}),g}function TTs(s,c){if(!c.fileExists)return[];let g=[];return DN(c,Mo(s),d=>{let h=To(d,"package.json");if(c.fileExists(h)){let _=Bnt(h,c);_&&g.push(_)}}),g}function Bnt(s,c){if(!c.readFile)return;let g=["dependencies","devDependencies","optionalDependencies","peerDependencies"],d=c.readFile(s)||"",h=hU(d),_={};if(h)for(let T of g){let O=h[T];if(!O)continue;let V=new Map;for(let M in O)V.set(M,O[M]);_[T]=V}let S=[[1,_.dependencies],[2,_.devDependencies],[8,_.optionalDependencies],[4,_.peerDependencies]];return{..._,parseable:!!h,fileName:s,get:R,has(T,O){return!!R(T,O)}};function R(T,O=15){for(let[V,M]of S)if(M&&O&V){let ee=M.get(T);if(ee!==void 0)return ee}}}function gse(s,c,g){let d=(g.getPackageJsonsVisibleToFile&&g.getPackageJsonsVisibleToFile(s.fileName)||TTs(s.fileName,g)).filter(ge=>ge.parseable),h,_,S;return{allowsImportingAmbientModule:T,getSourceFileInfo:O,allowsImportingSpecifier:V};function R(ge){let Ie=re(ge);for(let _e of d)if(_e.has(Ie)||_e.has(nVe(Ie)))return!0;return!1}function T(ge,Ie){if(!d.length||!ge.valueDeclaration)return!0;if(!_)_=new Map;else{let Ze=_.get(ge);if(Ze!==void 0)return Ze}let _e=d2(ge.getName());if(M(_e))return _.set(ge,!0),!0;let Ee=ge.valueDeclaration.getSourceFile(),Ne=ee(Ee.fileName,Ie);if(typeof Ne>"u")return _.set(ge,!0),!0;let Te=R(Ne)||R(_e);return _.set(ge,Te),Te}function O(ge,Ie){if(!d.length)return{importable:!0,packageName:void 0};if(!S)S=new Map;else{let Te=S.get(ge);if(Te!==void 0)return Te}let _e=ee(ge.fileName,Ie);if(!_e){let Te={importable:!0,packageName:_e};return S.set(ge,Te),Te}let Ne={importable:R(_e),packageName:_e};return S.set(ge,Ne),Ne}function V(ge){return!d.length||M(ge)||mp(ge)||Up(ge)?!0:R(ge)}function M(ge){return!!(dN(s)&&o0(s)&&wU.has(ge)&&(h===void 0&&(h=NWe(s)),h))}function ee(ge,Ie){let _e=XW(ge);if(_e){let Ne=_e.findPackageLocator(s.fileName),Te=_e.findPackageLocator(ge);if(!(Ne&&Te))return}else if(!ge.includes("node_modules"))return;let Ee=JF.getNodeModulesPackageName(g.getCompilationSettings(),s,ge,Ie,c);if(Ee&&!mp(Ee)&&!Up(Ee))return re(Ee)}function re(ge){let Ie=kp(Ode(ge)).slice(1);return Ac(Ie[0],"@")?`${Ie[0]}/${Ie[1]}`:Ie[0]}}function NWe(s){return zt(s.imports,({text:c})=>wU.has(c))}function M1e(s){return k(kp(s),"node_modules")}function vin(s){return s.file!==void 0&&s.start!==void 0&&s.length!==void 0}function tHt(s,c){let g=Yy(s),d=vg(c,g,Zl,yn);if(d>=0){let h=c[d];return pe.assertEqual(h.file,s.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),Ma(h,vin)}}function rHt(s,c){var g;let d=vg(c,s.start,S=>S.start,Zt);for(d<0&&(d=~d);((g=c[d-1])==null?void 0:g.start)===s.start;)d--;let h=[],_=Rs(s);for(;;){let S=Gs(c[d],vin);if(!S||S.start>_)break;kd(s,S)&&h.push(S),d++}return h}function $z({startPosition:s,endPosition:c}){return RA(s,c===void 0?s:c)}function wnt(s,c){let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":un(h)&&ase(c,Yy(h,s)))}function Tnt(s,c,g=Zl){return s?Ki(s)?g(lt(s,c)):c(s,0):void 0}function Rnt(s){return Ki(s)?ma(s):s}function DWe(s,c,g){return s.escapedName==="export="||s.escapedName==="default"?Nnt(s)||H1e(RTs(s),c,!!g):s.name}function Nnt(s){return J(s.declarations,c=>{var g,d,h;if(yf(c))return(g=Gs(XI(c.expression),Ir))==null?void 0:g.text;if(k0(c)&&c.symbol.flags===2097152)return(d=Gs(c.propertyName,Ir))==null?void 0:d.text;let _=(h=Gs(fl(c),Ir))==null?void 0:h.text;if(_)return _;if(s.parent&&!XD(s.parent))return s.parent.getName()})}function RTs(s){var c;return pe.checkDefined(s.parent,`Symbol parent was undefined. Flags: ${pe.formatSymbolFlags(s.flags)}. Declarations: ${(c=s.declarations)==null?void 0:c.map(g=>{let d=pe.formatSyntaxKind(g.kind),h=Bo(g),{expression:_}=g;return(h?"[JS]":"")+d+(_?` (expression: ${pe.formatSyntaxKind(_.kind)})`:"")}).join(", ")}.`)}function H1e(s,c,g){return Y1e(c0(d2(s.name)),c,g)}function Y1e(s,c,g){let d=dp(aa(c0(s),"/index")),h="",_=!0,S=d.charCodeAt(0);Sd(S,c)?(h+=String.fromCharCode(S),g&&(h=h.toUpperCase())):_=!1;for(let R=1;Rs.length)return!1;for(let h=0;h(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.Namespace=2]="Namespace",s[s.CommonJS=3]="CommonJS",s))(iHt||{}),sHt=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s[s.UMD=3]="UMD",s[s.Module=4]="Module",s))(sHt||{});function Gnt(s){let c=1,g=Al(),d=new Map,h=new Map,_,S={isUsableByFile:re=>re===_,isEmpty:()=>!g.size,clear:()=>{g.clear(),d.clear(),_=void 0},add:(re,ge,Ie,_e,Ee,Ne,Te,Ze)=>{re!==_&&(S.clear(),_=re);let Pe;if(Ee){let Lt=ode(Ee.fileName);if(Lt){let{topLevelNodeModulesIndex:je,topLevelPackageNameIndex:Wt,packageRootIndex:_r}=Lt;if(Pe=qEe(Ode(Ee.fileName.substring(Wt+1,_r))),Ac(re,Ee.path.substring(0,je))){let Gt=h.get(Pe),it=Ee.fileName.substring(0,Wt+1);if(Gt){let Dt=Gt.indexOf(Yx);je>Dt&&h.set(Pe,it)}else h.set(Pe,it)}}}let et=Ne===1&&tz(ge)||ge,Ye=Ne===0||XD(et)?Bc(Ie):DTs(et,Ze,void 0),Tt=typeof Ye=="string"?Ye:Ye[0],at=typeof Ye=="string"?void 0:Ye[1],Qe=d2(_e.name),Ct=c++,mt=VC(ge,Ze),yt=ge.flags&33554432?void 0:ge,Rt=_e.flags&33554432?void 0:_e;(!yt||!Rt)&&d.set(Ct,[ge,_e]),g.add(T(Tt,ge,Xr(Qe)?void 0:Qe,Ze),{id:Ct,symbolTableKey:Ie,symbolName:Tt,capitalizedSymbolName:at,moduleName:Qe,moduleFile:Ee,moduleFileName:Ee?.fileName,packageName:Pe,exportKind:Ne,targetFlags:mt.flags,isFromPackageJson:Te,symbol:yt,moduleSymbol:Rt})},get:(re,ge)=>{if(re!==_)return;let Ie=g.get(ge);return Ie?.map(R)},search:(re,ge,Ie,_e)=>{if(re===_)return Fh(g,(Ee,Ne)=>{let{symbolName:Te,ambientModuleName:Ze}=O(Ne),Pe=ge&&Ee[0].capitalizedSymbolName||Te;if(Ie(Pe,Ee[0].targetFlags)){let et=Ee.map(R).filter((Ye,Tt)=>ee(Ye,Ee[Tt].packageName));if(et.length){let Ye=_e(et,Pe,!!Ze,Ne);if(Ye!==void 0)return Ye}}})},releaseSymbols:()=>{d.clear()},onFileChanged:(re,ge,Ie)=>V(re)&&V(ge)?!1:_&&_!==ge.path||Ie&&NWe(re)!==NWe(ge)||!Sc(re.moduleAugmentations,ge.moduleAugmentations)||!M(re,ge)?(S.clear(),!0):(_=ge.path,!1)};return pe.isDebugging&&Object.defineProperty(S,"__cache",{value:g}),S;function R(re){if(re.symbol&&re.moduleSymbol)return re;let{id:ge,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee,moduleFileName:Ne}=re,[Te,Ze]=d.get(ge)||E;if(Te&&Ze)return{symbol:Te,moduleSymbol:Ze,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee};let Pe=(Ee?s.getPackageJsonAutoImportProvider():s.getCurrentProgram()).getTypeChecker(),Ke=re.moduleSymbol||Ze||pe.checkDefined(re.moduleFile?Pe.getMergedSymbol(re.moduleFile.symbol):Pe.tryFindAmbientModule(re.moduleName)),et=re.symbol||Te||pe.checkDefined(Ie===2?Pe.resolveExternalModuleSymbol(Ke):Pe.tryGetMemberInModuleExportsAndProperties(Bc(re.symbolTableKey),Ke),`Could not find symbol '${re.symbolName}' by key '${re.symbolTableKey}' in module ${Ke.name}`);return d.set(ge,[et,Ke]),{symbol:et,moduleSymbol:Ke,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee}}function T(re,ge,Ie,_e){let Ee=Ie||"";return`${re.length} ${xg(VC(ge,_e))} ${re} ${Ee}`}function O(re){let ge=re.indexOf(" "),Ie=re.indexOf(" ",ge+1),_e=parseInt(re.substring(0,ge),10),Ee=re.substring(Ie+1),Ne=Ee.substring(0,_e),Te=Ee.substring(_e+1);return{symbolName:Ne,ambientModuleName:Te===""?void 0:Te}}function V(re){return!re.commonJsModuleIndicator&&!re.externalModuleIndicator&&!re.moduleAugmentations&&!re.ambientModuleNames}function M(re,ge){if(!Sc(re.ambientModuleNames,ge.ambientModuleNames))return!1;let Ie=-1,_e=-1;for(let Ee of ge.ambientModuleNames){let Ne=Te=>one(Te)&&Te.name.text===Ee;if(Ie=Se(re.statements,Ne,Ie+1),_e=Se(ge.statements,Ne,_e+1),re.statements[Ie]!==ge.statements[_e])return!1}return!0}function ee(re,ge){if(!ge||!re.moduleFileName)return!0;let Ie=s.getGlobalTypingsCacheLocation();if(Ie&&Ac(re.moduleFileName,Ie))return!0;let _e=h.get(ge);return!_e||Ac(re.moduleFileName,_e)}}function Fnt(s,c,g,d,h,_,S,R){var T;if(!g){let re,ge=d2(d.name);return wU.has(ge)&&(re=xWe(c,s))!==void 0?re===Ac(ge,"node:"):!_||_.allowsImportingAmbientModule(d,S)||oHt(c,ge)}if(pe.assertIsDefined(g),c===g)return!1;let O=R?.get(c.path,g.path,h,{});if(O?.isBlockedByPackageJsonDependencies!==void 0)return!O.isBlockedByPackageJsonDependencies||!!O.packageName&&oHt(c,O.packageName);let V=$D(S),M=(T=S.getGlobalTypingsCacheLocation)==null?void 0:T.call(S),ee=!!JF.forEachFileNameOfModule(c.fileName,g.fileName,S,!1,re=>{let ge=s.getSourceFile(re);return(ge===g||!ge)&&NTs(c.fileName,re,V,M,S)});if(_){let re=ee?_.getSourceFileInfo(g,S):void 0;return R?.setBlockedByPackageJsonDependencies(c.path,g.path,h,{},re?.packageName,!re?.importable),!!re?.importable||ee&&!!re?.packageName&&oHt(c,re.packageName)}return ee}function oHt(s,c){return s.imports&&s.imports.some(g=>g.text===c||g.text.startsWith(c+"/"))}function NTs(s,c,g,d,h){if(XW(s))return wSs(s,c);let _=DN(h,c,R=>dp(R)==="node_modules"?R:void 0),S=_&&Mo(g(_));return S===void 0||Ac(g(s),S)||!!d&&Ac(g(d),S)}function Znt(s,c,g,d,h){var _,S;let R=N3(c),T=g.autoImportFileExcludePatterns&&Bin(g,R);win(s.getTypeChecker(),s.getSourceFiles(),T,c,(V,M)=>h(V,M,s,!1));let O=d&&((_=c.getPackageJsonAutoImportProvider)==null?void 0:_.call(c));if(O){let V=Zg(),M=s.getTypeChecker();win(O.getTypeChecker(),O.getSourceFiles(),T,c,(ee,re)=>{(re&&!s.getSourceFile(re.fileName)||!re&&!M.resolveName(ee.name,void 0,1536,!1))&&h(ee,re,O,!0)}),(S=c.log)==null||S.call(c,`forEachExternalModuleToImportFrom autoImportProvider: ${Zg()-V}`)}}function Bin(s,c){return Xt(s.autoImportFileExcludePatterns,g=>{let d=KAe(g,"","exclude");return d?nk(d,c):void 0})}function win(s,c,g,d,h){var _;let S=g&&Tin(g,d);for(let R of s.getAmbientModules())!R.name.includes("*")&&!(g&&((_=R.declarations)!=null&&_.every(T=>S(T.getSourceFile()))))&&h(R,void 0);for(let R of c)Sl(R)&&!S?.(R)&&h(s.getMergedSymbol(R.symbol),R)}function Tin(s,c){var g;let d=(g=c.getSymlinkCache)==null?void 0:g.call(c).getSymlinkedDirectoriesByRealpath();return({fileName:h,path:_})=>{if(s.some(S=>S.test(h)))return!0;if(d?.size&&KW(h)){let S=Mo(h);return DN(c,Mo(_),R=>{let T=d.get(Cp(R));if(T)return T.some(O=>s.some(V=>V.test(h.replace(S,O))));S=Mo(S)})??!1}return!1}}function aHt(s,c){return c.autoImportFileExcludePatterns?Tin(Bin(c,N3(s)),s):()=>!1}function X1e(s,c,g,d,h){var _,S,R,T,O;let V=Zg();(_=c.getPackageJsonAutoImportProvider)==null||_.call(c);let M=((S=c.getCachedExportInfoMap)==null?void 0:S.call(c))||Gnt({getCurrentProgram:()=>g,getPackageJsonAutoImportProvider:()=>{var re;return(re=c.getPackageJsonAutoImportProvider)==null?void 0:re.call(c)},getGlobalTypingsCacheLocation:()=>{var re;return(re=c.getGlobalTypingsCacheLocation)==null?void 0:re.call(c)}});if(M.isUsableByFile(s.path))return(R=c.log)==null||R.call(c,"getExportInfoMap: cache hit"),M;(T=c.log)==null||T.call(c,"getExportInfoMap: cache miss or empty; calculating new results");let ee=0;try{Znt(g,c,d,!0,(re,ge,Ie,_e)=>{++ee%100===0&&h?.throwIfCancellationRequested();let Ee=new Set,Ne=Ie.getTypeChecker(),Te=LWe(re,Ne);Te&&Rin(Te.symbol,Ne)&&M.add(s.path,Te.symbol,Te.exportKind===1?"default":"export=",re,ge,Te.exportKind,_e,Ne),Ne.forEachExportAndPropertyOfModule(re,(Ze,Pe)=>{Ze!==Te?.symbol&&Rin(Ze,Ne)&&Wy(Ee,Pe)&&M.add(s.path,Ze,Pe,re,ge,0,_e,Ne)})})}catch(re){throw M.clear(),re}return(O=c.log)==null||O.call(c,`getExportInfoMap: done in ${Zg()-V} ms`),M}function LWe(s,c){let g=c.resolveExternalModuleSymbol(s);if(g!==s){let h=c.tryGetMemberInModuleExports("default",g);return h?{symbol:h,exportKind:1}:{symbol:g,exportKind:2}}let d=c.tryGetMemberInModuleExports("default",s);if(d)return{symbol:d,exportKind:1}}function Rin(s,c){return!c.isUndefinedSymbol(s)&&!c.isUnknownSymbol(s)&&!J7(s)&&!XZe(s)}function DTs(s,c,g){let d;return VWe(s,c,g,(h,_)=>(d=_?[h,_]:h,!0)),pe.checkDefined(d)}function VWe(s,c,g,d){let h,_=s,S=new Set;for(;_;){let R=Nnt(_);if(R){let T=d(R);if(T)return T}if(_.escapedName!=="default"&&_.escapedName!=="export="){let T=d(_.name);if(T)return T}if(h=Ft(h,_),!Wy(S,_))break;_=_.flags&2097152?c.getImmediateAliasedSymbol(_):void 0}for(let R of h??E)if(R.parent&&XD(R.parent)){let T=d(H1e(R.parent,g,!1),H1e(R.parent,g,!0));if(T)return T}}function Nin(){let s=Nb(99,!1);function c(d,h,_){return FTs(g(d,h,_),d)}function g(d,h,_){let S=0,R=0,T=[],{prefix:O,pushTemplate:V}=VTs(h);d=O+d;let M=O.length;V&&T.push(16),s.setText(d);let ee=0,re=[],ge=0;do{S=s.scan(),gU(S)||(Ie(),R=S);let _e=s.getTokenEnd();if(GTs(s.getTokenStart(),_e,M,PTs(S),re),_e>=d.length){let Ee=xTs(s,S,li(T));Ee!==void 0&&(ee=Ee)}}while(S!==1);function Ie(){switch(S){case 44:case 69:!kTs[R]&&s.reScanSlashToken()===14&&(S=14);break;case 30:R===80&&ge++;break;case 32:ge>0&&ge--;break;case 133:case 154:case 150:case 136:case 155:ge>0&&!_&&(S=80);break;case 16:T.push(S);break;case 19:T.length>0&&T.push(S);break;case 20:if(T.length>0){let _e=li(T);_e===16?(S=s.reScanTemplateToken(!1),S===18?T.pop():pe.assertEqual(S,17,"Should have been a template middle.")):(pe.assertEqual(_e,19,"Should have been an open brace"),T.pop())}break;default:if(!T0(S))break;(R===25||T0(R)&&T0(S)&&!LTs(R,S))&&(S=80)}}return{endOfLineState:ee,spans:re}}return{getClassificationsForLine:c,getEncodedLexicalClassifications:g}}var kTs=Vs([80,11,9,10,14,110,46,47,22,24,20,112,97],s=>s,()=>!0);function xTs(s,c,g){switch(c){case 11:{if(!s.isUnterminated())return;let d=s.getTokenText(),h=d.length-1,_=0;for(;d.charCodeAt(h-_)===92;)_++;return _&1?d.charCodeAt(0)===34?3:2:void 0}case 3:return s.isUnterminated()?1:void 0;default:if(HD(c)){if(!s.isUnterminated())return;switch(c){case 18:return 5;case 15:return 4;default:return pe.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+c)}}return g===16?6:void 0}}function GTs(s,c,g,d,h){if(d===8)return;s===0&&g>0&&(s+=g);let _=c-s;_>0&&h.push(s-g,_,d)}function FTs(s,c){let g=[],d=s.spans,h=0;for(let S=0;S=0){let V=R-h;V>0&&g.push({length:V,classification:4})}g.push({length:T,classification:ZTs(O)}),h=R+T}let _=c.length-h;return _>0&&g.push({length:_,classification:4}),{entries:g,finalLexState:s.endOfLineState}}function ZTs(s){switch(s){case 1:return 3;case 3:return 1;case 4:return 6;case 25:return 7;case 5:return 2;case 6:return 8;case 8:return 4;case 10:return 0;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return 5;default:return}}function LTs(s,c){if(!qrt(s))return!0;switch(c){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function VTs(s){switch(s){case 3:return{prefix:`"\\ `};case 2:return{prefix:`'\\ `};case 1:return{prefix:`/* `};case 4:return{prefix:"`\n"};case 5:return{prefix:`} -`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return pe.assertNever(s)}}function VTs(s){switch(s){case 42:case 44:case 45:case 40:case 41:case 48:case 49:case 50:case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:case 35:case 36:case 37:case 38:case 51:case 53:case 52:case 56:case 57:case 75:case 74:case 79:case 71:case 72:case 73:case 65:case 66:case 67:case 69:case 70:case 64:case 28:case 61:case 76:case 77:case 78:return!0;default:return!1}}function WTs(s){switch(s){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function OTs(s){if(w0(s))return 3;if(VTs(s)||WTs(s))return 5;if(s>=19&&s<=79)return 10;switch(s){case 9:return 4;case 10:return 25;case 11:return 6;case 14:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 80:default:return MD(s)?6:2}}function cHt(s,c,g,d,h){return win(Vnt(s,c,g,d,h))}function vin(s,c){switch(c){case 268:case 264:case 265:case 263:case 232:case 219:case 220:s.throwIfCancellationRequested()}}function Vnt(s,c,g,d,h){let _=[];return g.forEachChild(function R(T){if(!(!T||!rS(h,T.pos,T.getFullWidth()))){if(vin(c,T.kind),Ir(T)&&!af(T)&&d.has(T.escapedText)){let O=s.getSymbolAtLocation(T),V=O&&Bin(O,YU(T),s);V&&S(T.getStart(g),T.getEnd(),V)}T.forEachChild(R)}}),{spans:_,endOfLineState:0};function S(R,T,O){let V=T-R;pe.assert(V>0,`Classification had non-positive length of ${V}`),_.push(R),_.push(V),_.push(O)}}function Bin(s,c,g){let d=s.getFlags();if(d&2885600)return d&32?11:d&384?12:d&524288?16:d&1536?c&4||c&1&&PTs(s)?14:void 0:d&2097152?Bin(g.getAliasedSymbol(s),c,g):c&2?d&64?13:d&262144?15:void 0:void 0}function PTs(s){return zt(s.declarations,c=>Lh(c)&&QF(c)===1)}function MTs(s){switch(s){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function win(s){pe.assert(s.spans.length%3===0);let c=s.spans,g=[];for(let d=0;d])*)(\/>)?)?/m,Ye=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/g,Tt=c.text.substr(Pe,Ke),at=et.exec(Tt);if(!at||!at[3]||!(at[3]in n1))return!1;let Qe=Pe;M(Qe,at[1].length),Qe+=at[1].length,T(Qe,at[2].length,10),Qe+=at[2].length,T(Qe,at[3].length,21),Qe+=at[3].length;let Ct=at[4],mt=Qe;for(;;){let Rt=Ye.exec(Ct);if(!Rt)break;let Lt=Qe+Rt.index+Rt[1].length;Lt>mt&&(M(mt,Lt-mt),mt=Lt),T(mt,Rt[2].length,22),mt+=Rt[2].length,Rt[3].length&&(M(mt,Rt[3].length),mt+=Rt[3].length),T(mt,Rt[4].length,5),mt+=Rt[4].length,Rt[5].length&&(M(mt,Rt[5].length),mt+=Rt[5].length),T(mt,Rt[6].length,24),mt+=Rt[6].length}Qe+=at[4].length,Qe>mt&&M(mt,Qe-mt),at[5]&&(T(Qe,at[5].length,10),Qe+=at[5].length);let yt=Pe+Ke;return Qe=0),Ye>0){let Tt=Ke||Te(Pe.kind,Pe);Tt&&T(et,Ye,Tt)}return!0}function Ne(Pe){switch(Pe.parent&&Pe.parent.kind){case 287:if(Pe.parent.tagName===Pe)return 19;break;case 288:if(Pe.parent.tagName===Pe)return 20;break;case 286:if(Pe.parent.tagName===Pe)return 21;break;case 292:if(Pe.parent.name===Pe)return 22;break}}function Te(Pe,Ke){if(w0(Pe))return 3;if((Pe===30||Pe===32)&&Ke&&DMt(Ke.parent))return 10;if(qye(Pe)){if(Ke){let et=Ke.parent;if(Pe===64&&(et.kind===261||et.kind===173||et.kind===170||et.kind===292)||et.kind===227||et.kind===225||et.kind===226||et.kind===228)return 5}return 10}else{if(Pe===9)return 4;if(Pe===10)return 25;if(Pe===11)return Ke&&Ke.parent.kind===292?24:6;if(Pe===14)return 6;if(MD(Pe))return 6;if(Pe===12)return 23;if(Pe===80){if(Ke){switch(Ke.parent.kind){case 264:return Ke.parent.name===Ke?11:void 0;case 169:return Ke.parent.name===Ke?15:void 0;case 265:return Ke.parent.name===Ke?13:void 0;case 267:return Ke.parent.name===Ke?12:void 0;case 268:return Ke.parent.name===Ke?14:void 0;case 170:return Ke.parent.name===Ke?DF(Ke)?3:17:void 0}if(c2(Ke.parent))return 3}return 2}}}function Ze(Pe){if(Pe&&CE(d,h,Pe.pos,Pe.getFullWidth())){vin(s,Pe.kind);for(let Ke of Pe.getChildren(c))Ee(Ke)||Ze(Ke)}}}var WWe;(s=>{function c(Qe,Ct,mt,yt,Rt){let Lt=Wb(mt,yt);if(Lt.parent&&(iR(Lt.parent)&&Lt.parent.tagName===Lt||dQ(Lt.parent))){let{openingElement:je,closingElement:Wt}=Lt.parent.parent,_r=[je,Wt].map(({tagName:Gt})=>g(Gt,mt));return[{fileName:mt.fileName,highlightSpans:_r}]}return d(yt,Lt,Qe,Ct,Rt)||h(Lt,mt)}s.getDocumentHighlights=c;function g(Qe,Ct){return{fileName:Ct.fileName,textSpan:Hy(Qe,Ct),kind:"none"}}function d(Qe,Ct,mt,yt,Rt){let Lt=new Set(Rt.map(Gt=>Gt.fileName)),je=zp.getReferenceEntriesForNode(Qe,Ct,mt,Rt,yt,void 0,Lt);if(!je)return;let Wt=Uu(je.map(zp.toHighlightSpan),Gt=>Gt.fileName,Gt=>Gt.span),_r=bd(mt.useCaseSensitiveFileNames());return Do(lr(Wt.entries(),([Gt,it])=>{if(!Lt.has(Gt)){if(!mt.redirectTargetsMap.has(Pu(Gt,mt.getCurrentDirectory(),_r)))return;let kt=mt.getSourceFile(Gt);Gt=de(Rt,ur=>!!ur.redirectInfo&&ur.redirectInfo.redirectTarget===kt).fileName,pe.assert(Lt.has(Gt))}return{fileName:Gt,highlightSpans:it}}))}function h(Qe,Ct){let mt=_(Qe,Ct);return mt&&[{fileName:Ct.fileName,highlightSpans:mt}]}function _(Qe,Ct){switch(Qe.kind){case 101:case 93:return H3(Qe.parent)?Ye(Qe.parent,Ct):void 0;case 107:return yt(Qe.parent,C2,Ze);case 111:return yt(Qe.parent,F$e,Te);case 113:case 85:case 98:let Lt=Qe.kind===85?Qe.parent.parent:Qe.parent;return yt(Lt,DU,Ne);case 109:return yt(Qe.parent,Ede,Ee);case 84:case 90:return vde(Qe.parent)||Rie(Qe.parent)?yt(Qe.parent.parent.parent,Ede,Ee):void 0;case 83:case 88:return yt(Qe.parent,EY,_e);case 99:case 117:case 92:return yt(Qe.parent,je=>HT(je,!0),Ie);case 137:return mt(Tc,[137]);case 139:case 153:return mt(BB,[139,153]);case 135:return yt(Qe.parent,C1,Pe);case 134:return Rt(Pe(Qe));case 127:return Rt(Ke(Qe));case 103:case 147:return;default:return HD(Qe.kind)&&(em(Qe.parent)||Eh(Qe.parent))?Rt(ee(Qe.kind,Qe.parent)):void 0}function mt(Lt,je){return yt(Qe.parent,Lt,Wt=>{var _r;return Xt((_r=Gs(Wt,yE))==null?void 0:_r.symbol.declarations,Gt=>Lt(Gt)?de(Gt.getChildren(Ct),it=>k(je,it.kind)):void 0)})}function yt(Lt,je,Wt){return je(Lt)?Rt(Wt(Lt,Ct)):void 0}function Rt(Lt){return Lt&&Lt.map(je=>g(je,Ct))}}function S(Qe){return F$e(Qe)?[Qe]:DU(Qe)?Nn(Qe.catchClause?S(Qe.catchClause):Qe.tryBlock&&S(Qe.tryBlock),Qe.finallyBlock&&S(Qe.finallyBlock)):Eu(Qe)?void 0:O(Qe,S)}function R(Qe){let Ct=Qe;for(;Ct.parent;){let mt=Ct.parent;if(BW(mt)||mt.kind===308)return mt;if(DU(mt)&&mt.tryBlock===Ct&&mt.catchClause)return Ct;Ct=mt}}function T(Qe){return EY(Qe)?[Qe]:Eu(Qe)?void 0:O(Qe,T)}function O(Qe,Ct){let mt=[];return Qe.forEachChild(yt=>{let Rt=Ct(yt);Rt!==void 0&&mt.push(...cc(Rt))}),mt}function V(Qe,Ct){let mt=M(Ct);return!!mt&&mt===Qe}function M(Qe){return ji(Qe,Ct=>{switch(Ct.kind){case 256:if(Qe.kind===252)return!1;case 249:case 250:case 251:case 248:case 247:return!Qe.label||at(Ct,Qe.label.escapedText);default:return Eu(Ct)&&"quit"}})}function ee(Qe,Ct){return Xt(re(Ct,eQ(Qe)),mt=>sse(mt,Qe))}function re(Qe,Ct){let mt=Qe.parent;switch(mt.kind){case 269:case 308:case 242:case 297:case 298:return Ct&64&&mm(Qe)?[...Qe.members,Qe]:mt.statements;case 177:case 175:case 263:return[...mt.parameters,...xa(mt.parent)?mt.parent.members:[]];case 264:case 232:case 265:case 188:let yt=mt.members;if(Ct&15){let Rt=de(mt.members,Tc);if(Rt)return[...yt,...Rt.parameters]}else if(Ct&64)return[...yt,mt];return yt;default:return}}function ge(Qe,Ct,...mt){return Ct&&k(mt,Ct.kind)?(Qe.push(Ct),!0):!1}function Ie(Qe){let Ct=[];if(ge(Ct,Qe.getFirstToken(),99,117,92)&&Qe.kind===247){let mt=Qe.getChildren();for(let yt=mt.length-1;yt>=0&&!ge(Ct,mt[yt],117);yt--);}return F(T(Qe.statement),mt=>{V(Qe,mt)&&ge(Ct,mt.getFirstToken(),83,88)}),Ct}function _e(Qe){let Ct=M(Qe);if(Ct)switch(Ct.kind){case 249:case 250:case 251:case 247:case 248:return Ie(Ct);case 256:return Ee(Ct)}}function Ee(Qe){let Ct=[];return ge(Ct,Qe.getFirstToken(),109),F(Qe.caseBlock.clauses,mt=>{ge(Ct,mt.getFirstToken(),84,90),F(T(mt),yt=>{V(Qe,yt)&&ge(Ct,yt.getFirstToken(),83)})}),Ct}function Ne(Qe,Ct){let mt=[];if(ge(mt,Qe.getFirstToken(),113),Qe.catchClause&&ge(mt,Qe.catchClause.getFirstToken(),85),Qe.finallyBlock){let yt=ep(Qe,98,Ct);ge(mt,yt,98)}return mt}function Te(Qe,Ct){let mt=R(Qe);if(!mt)return;let yt=[];return F(S(mt),Rt=>{yt.push(ep(Rt,111,Ct))}),BW(mt)&&wF(mt,Rt=>{yt.push(ep(Rt,107,Ct))}),yt}function Ze(Qe,Ct){let mt=f1(Qe);if(!mt)return;let yt=[];return wF(Ma(mt.body,eg),Rt=>{yt.push(ep(Rt,107,Ct))}),F(S(mt.body),Rt=>{yt.push(ep(Rt,111,Ct))}),yt}function Pe(Qe){let Ct=f1(Qe);if(!Ct)return;let mt=[];return Ct.modifiers&&Ct.modifiers.forEach(yt=>{ge(mt,yt,134)}),Lu(Ct,yt=>{et(yt,Rt=>{C1(Rt)&&ge(mt,Rt.getFirstToken(),135)})}),mt}function Ke(Qe){let Ct=f1(Qe);if(!Ct)return;let mt=[];return Lu(Ct,yt=>{et(yt,Rt=>{Qd(Rt)&&ge(mt,Rt.getFirstToken(),127)})}),mt}function et(Qe,Ct){Ct(Qe),!Eu(Qe)&&!xa(Qe)&&!d_(Qe)&&!Lh(Qe)&&!OB(Qe)&&!uc(Qe)&&Lu(Qe,mt=>et(mt,Ct))}function Ye(Qe,Ct){let mt=Tt(Qe,Ct),yt=[];for(let Rt=0;Rt=Lt.end;_r--)if(!hu(Ct.text.charCodeAt(_r))){Wt=!1;break}if(Wt){yt.push({fileName:Ct.fileName,textSpan:RA(Lt.getStart(),je.end),kind:"reference"}),Rt++;continue}}yt.push(g(mt[Rt],Ct))}return yt}function Tt(Qe,Ct){let mt=[];for(;H3(Qe.parent)&&Qe.parent.elseStatement===Qe;)Qe=Qe.parent;for(;;){let yt=Qe.getChildren(Ct);ge(mt,yt[0],101);for(let Rt=yt.length-1;Rt>=0&&!ge(mt,yt[Rt],93);Rt--);if(!Qe.elseStatement||!H3(Qe.elseStatement))break;Qe=Qe.elseStatement}return mt}function at(Qe,Ct){return!!ji(Qe.parent,mt=>HW(mt)?mt.label.escapedText===Ct:"quit")}})(WWe||(WWe={}));function J1e(s){return!!s.sourceFile}function uHt(s,c,g){return Ont(s,c,g)}function Ont(s,c="",g,d){let h=new Map,_=bd(!!s);function S(){let _e=Do(h.keys()).filter(Ee=>Ee&&Ee.charAt(0)==="_").map(Ee=>{let Ne=h.get(Ee),Te=[];return Ne.forEach((Ze,Pe)=>{J1e(Ze)?Te.push({name:Pe,scriptKind:Ze.sourceFile.scriptKind,refCount:Ze.languageServiceRefCount}):Ze.forEach((Ke,et)=>Te.push({name:Pe,scriptKind:et,refCount:Ke.languageServiceRefCount}))}),Te.sort((Ze,Pe)=>Pe.refCount-Ze.refCount),{bucket:Ee,sourceFiles:Te}});return JSON.stringify(_e,void 0,2)}function R(_e){return typeof _e.getCompilationSettings=="function"?_e.getCompilationSettings():_e}function T(_e,Ee,Ne,Te,Ze,Pe){let Ke=Pu(_e,c,_),et=Pnt(R(Ee));return O(_e,Ke,Ee,et,Ne,Te,Ze,Pe)}function O(_e,Ee,Ne,Te,Ze,Pe,Ke,et){return re(_e,Ee,Ne,Te,Ze,Pe,!0,Ke,et)}function V(_e,Ee,Ne,Te,Ze,Pe){let Ke=Pu(_e,c,_),et=Pnt(R(Ee));return M(_e,Ke,Ee,et,Ne,Te,Ze,Pe)}function M(_e,Ee,Ne,Te,Ze,Pe,Ke,et){return re(_e,Ee,R(Ne),Te,Ze,Pe,!1,Ke,et)}function ee(_e,Ee){let Ne=J1e(_e)?_e:_e.get(pe.checkDefined(Ee,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return pe.assert(Ee===void 0||!Ne||Ne.sourceFile.scriptKind===Ee,`Script kind should match provided ScriptKind:${Ee} and sourceFile.scriptKind: ${Ne?.sourceFile.scriptKind}, !entry: ${!Ne}`),Ne}function re(_e,Ee,Ne,Te,Ze,Pe,Ke,et,Ye){var Tt,at,Qe,Ct;et=jAe(_e,et);let mt=R(Ne),yt=Ne===mt?void 0:Ne,Rt=et===6?100:Hg(mt),Lt=typeof Ye=="object"?Ye:{languageVersion:Rt,impliedNodeFormat:yt&&f1e(Ee,(Ct=(Qe=(at=(Tt=yt.getCompilerHost)==null?void 0:Tt.call(yt))==null?void 0:at.getModuleResolutionCache)==null?void 0:Qe.call(at))==null?void 0:Ct.getPackageJsonInfoCache(),yt,mt),setExternalModuleIndicator:zne(mt),jsDocParsingMode:g};Lt.languageVersion=Rt,pe.assertEqual(g,Lt.jsDocParsingMode);let je=h.size,Wt=gHt(Te,Lt.impliedNodeFormat),_r=cr(h,Wt,()=>new Map);if(ki){h.size>je&&ki.instant(ki.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:mt.configFilePath,key:Wt});let tr=!PC(Ee)&&Fh(h,(ur,Gr)=>Gr!==Wt&&ur.has(Ee)&&Gr);tr&&ki.instant(ki.Phase.Session,"documentRegistryBucketOverlap",{path:Ee,key1:tr,key2:Wt})}let Gt=_r.get(Ee),it=Gt&&ee(Gt,et);if(!it&&d){let tr=d.getDocument(Wt,Ee);tr&&tr.scriptKind===et&&tr.text===zz(Ze)&&(pe.assert(Ke),it={sourceFile:tr,languageServiceRefCount:0},kt())}if(it)it.sourceFile.version!==Pe&&(it.sourceFile=_it(it.sourceFile,Ze,Pe,Ze.getChangeRange(it.sourceFile.scriptSnapshot)),d&&d.setDocument(Wt,Ee,it.sourceFile)),Ke&&it.languageServiceRefCount++;else{let tr=tOe(_e,Ze,Lt,Pe,!1,et);d&&d.setDocument(Wt,Ee,tr),it={sourceFile:tr,languageServiceRefCount:1},kt()}return pe.assert(it.languageServiceRefCount!==0),it.sourceFile;function kt(){if(!Gt)_r.set(Ee,it);else if(J1e(Gt)){let tr=new Map;tr.set(Gt.sourceFile.scriptKind,Gt),tr.set(et,it),_r.set(Ee,tr)}else Gt.set(et,it)}}function ge(_e,Ee,Ne,Te){let Ze=Pu(_e,c,_),Pe=Pnt(Ee);return Ie(Ze,Pe,Ne,Te)}function Ie(_e,Ee,Ne,Te){let Ze=pe.checkDefined(h.get(gHt(Ee,Te))),Pe=Ze.get(_e),Ke=ee(Pe,Ne);Ke.languageServiceRefCount--,pe.assert(Ke.languageServiceRefCount>=0),Ke.languageServiceRefCount===0&&(J1e(Pe)?Ze.delete(_e):(Pe.delete(Ne),Pe.size===1&&Ze.set(_e,ae(Pe.values(),Zl))))}return{acquireDocument:T,acquireDocumentWithKey:O,updateDocument:V,updateDocumentWithKey:M,releaseDocument:ge,releaseDocumentWithKey:Ie,getKeyForCompilationSettings:Pnt,getDocumentRegistryBucketKeyWithMode:gHt,reportStats:S,getBuckets:()=>h}}function Pnt(s){return Det(s,det)}function gHt(s,c){return c?`${s}|${c}`:s}function AHt(s,c,g,d,h,_,S){let R=T3(d),T=bd(R),O=Mnt(c,g,T,S),V=Mnt(g,c,T,S);return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},M=>{YTs(s,M,O,c,g,d.getCurrentDirectory(),R),QTs(s,M,O,V,d,T)})}function Mnt(s,c,g,d){let h=g(s);return S=>{let R=d&&d.tryGetSourcePosition({fileName:S,pos:0}),T=_(R?R.fileName:S);return R?T===void 0?void 0:HTs(R.fileName,T,S,g):T};function _(S){if(g(S)===h)return c;let R=JAe(S,h,g);return R===void 0?void 0:c+"/"+R}}function HTs(s,c,g,d){let h=a1(s,c,d);return dHt(Mo(g),h)}function YTs(s,c,g,d,h,_,S){let{configFile:R}=s.getCompilerOptions();if(!R)return;let T=Mo(R.fileName),O=k7(R);if(!O)return;pHt(O,(re,ge)=>{switch(ge){case"files":case"include":case"exclude":{if(V(re)||ge!=="include"||!YI(re.initializer))return;let _e=Xt(re.initializer.elements,Ne=>Lg(Ne)?Ne.text:void 0);if(_e.length===0)return;let Ee=KAe(T,[],_e,S,_);rk(pe.checkDefined(Ee.includeFilePattern),S).test(d)&&!rk(pe.checkDefined(Ee.includeFilePattern),S).test(h)&&c.insertNodeAfter(R,Ei(re.initializer.elements),me.createStringLiteral(ee(h)));return}case"compilerOptions":pHt(re.initializer,(Ie,_e)=>{let Ee=Iet(_e);pe.assert(Ee?.type!=="listOrElement"),Ee&&(Ee.isFilePath||Ee.type==="list"&&Ee.element.isFilePath)?V(Ie):_e==="paths"&&pHt(Ie.initializer,Ne=>{if(YI(Ne.initializer))for(let Te of Ne.initializer.elements)M(Te)})});return}});function V(re){let ge=YI(re.initializer)?re.initializer.elements:[re.initializer],Ie=!1;for(let _e of ge)Ie=M(_e)||Ie;return Ie}function M(re){if(!Lg(re))return!1;let ge=dHt(T,re.text),Ie=g(ge);return Ie!==void 0?(c.replaceRangeWithText(R,Rin(re,R),ee(Ie)),!0):!1}function ee(re){return _p(T,re,!S)}}function QTs(s,c,g,d,h,_){let S=s.getSourceFiles();for(let R of S){let T=g(R.fileName),O=T??R.fileName,V=Mo(O),M=d(R.fileName),ee=M||R.fileName,re=Mo(ee),ge=T!==void 0||M!==void 0;UTs(R,c,Ie=>{if(!mp(Ie))return;let _e=dHt(re,Ie),Ee=g(_e);return Ee===void 0?void 0:Im(_p(V,Ee,_))},Ie=>{let _e=s.getTypeChecker().getSymbolAtLocation(Ie);if(_e?.declarations&&_e.declarations.some(Ne=>a_(Ne)))return;let Ee=M!==void 0?Tin(Ie,WU(Ie.text,ee,s.getCompilerOptions(),h),g,S):JTs(_e,Ie,R,s,h,g);return Ee!==void 0&&(Ee.updated||ge&&mp(Ie.text))?XF.updateModuleSpecifier(s.getCompilerOptions(),R,O,Ee.newFileName,i5(s,h),Ie.text):void 0})}}function XTs(s,c){return su(Ro(s,c))}function dHt(s,c){return Im(XTs(s,c))}function JTs(s,c,g,d,h,_){if(s){let S=de(s.declarations,al).fileName,R=_(S);return R===void 0?{newFileName:S,updated:!1}:{newFileName:R,updated:!0}}else{let S=d.getModeForUsageLocation(g,c),R=h.resolveModuleNameLiterals||!h.resolveModuleNames?d.getResolvedModuleFromModuleSpecifier(c,g):h.getResolvedModuleWithFailedLookupLocationsFromCache&&h.getResolvedModuleWithFailedLookupLocationsFromCache(c.text,g.fileName,S);return Tin(c,R,_,d.getSourceFiles())}}function Tin(s,c,g,d){if(!c)return;if(c.resolvedModule){let T=R(c.resolvedModule.resolvedFileName);if(T)return T}let h=F(c.failedLookupLocations,_)||mp(s.text)&&F(c.failedLookupLocations,S);if(h)return h;return c.resolvedModule&&{newFileName:c.resolvedModule.resolvedFileName,updated:!1};function _(T){let O=g(T);return O&&de(d,V=>V.fileName===O)?S(T):void 0}function S(T){return di(T,"/package.json")?void 0:R(T)}function R(T){let O=g(T);return O&&{newFileName:O,updated:!0}}}function UTs(s,c,g,d){for(let h of s.referencedFiles||E){let _=g(h.fileName);_!==void 0&&_!==s.text.slice(h.pos,h.end)&&c.replaceRangeWithText(s,h,_)}for(let h of s.imports){let _=d(h);_!==void 0&&_!==h.text&&c.replaceRangeWithText(s,Rin(h,s),_)}}function Rin(s,c){return Zy(s.getStart(c)+1,s.end-1)}function pHt(s,c){if(ag(s))for(let g of s.properties)Cm(g)&&Lg(g.name)&&c(g,g.name.text)}var Hnt=(s=>(s[s.exact=0]="exact",s[s.prefix=1]="prefix",s[s.substring=2]="substring",s[s.camelCase=3]="camelCase",s))(Hnt||{});function Ipe(s,c){return{kind:s,isCaseSensitive:c}}function fHt(s){let c=new Map,g=s.trim().split(".").map(d=>qTs(d.trim()));if(g.length===1&&g[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>Ipe(2,!0),getFullMatch:()=>Ipe(2,!0),patternContainsDots:!1};if(!g.some(d=>!d.subWordTextChunks.length))return{getFullMatch:(d,h)=>KTs(d,h,g,c),getMatchForLastSegmentOfPattern:d=>IHt(d,Ei(g),c),patternContainsDots:g.length>1}}function KTs(s,c,g,d){if(!IHt(c,Ei(g),d)||g.length-1>s.length)return;let _;for(let S=g.length-2,R=s.length-1;S>=0;S-=1,R-=1)_=kin(_,IHt(s[R],g[S],d));return _}function Nin(s,c){let g=c.get(s);return g||c.set(s,g=bHt(s)),g}function Din(s,c,g){let d=$Ts(s,c.textLowerCase);if(d===0)return Ipe(c.text.length===s.length?0:1,Ac(s,c.text));if(c.isLowerCase){if(d===-1)return;let h=Nin(s,g);for(let _ of h)if(hHt(s,_,c.text,!0))return Ipe(2,hHt(s,_,c.text,!1));if(c.text.length0)return Ipe(2,!0);if(c.characterSpans.length>0){let h=Nin(s,g),_=xin(s,h,c,!1)?!0:xin(s,h,c,!0)?!1:void 0;if(_!==void 0)return Ipe(3,_)}}}function IHt(s,c,g){if(Ynt(c.totalTextChunk.text,_=>_!==32&&_!==42)){let _=Din(s,c.totalTextChunk,g);if(_)return _}let d=c.subWordTextChunks,h;for(let _ of d)h=kin(h,Din(s,_,g));return h}function kin(s,c){return oa([s,c],jTs)}function jTs(s,c){return s===void 0?1:c===void 0?-1:Zt(s.kind,c.kind)||Hl(!s.isCaseSensitive,!c.isCaseSensitive)}function hHt(s,c,g,d,h={start:0,length:g.length}){return h.length<=c.length&&Lin(0,h.length,_=>zTs(g.charCodeAt(h.start+_),s.charCodeAt(c.start+_),d))}function zTs(s,c,g){return g?mHt(s)===mHt(c):s===c}function xin(s,c,g,d){let h=g.characterSpans,_=0,S=0,R,T;for(;;){if(S===h.length)return!0;if(_===c.length)return!1;let O=c[_],V=!1;for(;S=65&&s<=90)return!0;if(s<127||!It(s,99))return!1;let c=String.fromCharCode(s);return c===c.toUpperCase()}function Gin(s){if(s>=97&&s<=122)return!0;if(s<127||!It(s,99))return!1;let c=String.fromCharCode(s);return c===c.toLowerCase()}function $Ts(s,c){let g=s.length-c.length;for(let d=0;d<=g;d++)if(Ynt(c,(h,_)=>mHt(s.charCodeAt(_+d))===h))return d;return-1}function mHt(s){return s>=65&&s<=90?97+(s-65):s<127?s:String.fromCharCode(s).toLowerCase().charCodeAt(0)}function CHt(s){return s>=48&&s<=57}function eRs(s){return Ase(s)||Gin(s)||CHt(s)||s===95||s===36}function tRs(s){let c=[],g=0,d=0;for(let h=0;h0&&(c.push(_Ht(s.substr(g,d))),d=0)}return d>0&&c.push(_Ht(s.substr(g,d))),c}function _Ht(s){let c=s.toLowerCase();return{text:s,textLowerCase:c,isLowerCase:s===c,characterSpans:yHt(s)}}function yHt(s){return Fin(s,!1)}function bHt(s){return Fin(s,!0)}function Fin(s,c){let g=[],d=0;for(let h=1;hEHt(d)&&d!==95,c,g)}function rRs(s,c,g){return c!==g&&c+1c(s.charCodeAt(h),h))}function Vin(s,c=!0,g=!1){let d={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},h=[],_,S,R,T=0,O=!1;function V(){return S=R,R=p_.scan(),R===19?T++:R===20&&T--,R}function M(){let Pe=p_.getTokenValue(),Ke=p_.getTokenStart();return{fileName:Pe,pos:Ke,end:Ke+Pe.length}}function ee(){_||(_=[]),_.push({ref:M(),depth:T})}function re(){h.push(M()),ge()}function ge(){T===0&&(O=!0)}function Ie(){let Pe=p_.getToken();return Pe===138?(Pe=V(),Pe===144&&(Pe=V(),Pe===11&&ee()),!0):!1}function _e(){if(S===25)return!1;let Pe=p_.getToken();if(Pe===102){if(Pe=V(),Pe===21){if(Pe=V(),Pe===11||Pe===15)return re(),!0}else{if(Pe===11)return re(),!0;if(Pe===156&&p_.lookAhead(()=>{let et=p_.scan();return et!==161&&(et===42||et===19||et===80||w0(et))})&&(Pe=V()),Pe===80||w0(Pe))if(Pe=V(),Pe===161){if(Pe=V(),Pe===11)return re(),!0}else if(Pe===64){if(Ne(!0))return!0}else if(Pe===28)Pe=V();else return!0;if(Pe===19){for(Pe=V();Pe!==20&&Pe!==1;)Pe=V();Pe===20&&(Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re()))}else Pe===42&&(Pe=V(),Pe===130&&(Pe=V(),(Pe===80||w0(Pe))&&(Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re()))))}return!0}return!1}function Ee(){let Pe=p_.getToken();if(Pe===95){if(ge(),Pe=V(),Pe===156&&p_.lookAhead(()=>{let et=p_.scan();return et===42||et===19})&&(Pe=V()),Pe===19){for(Pe=V();Pe!==20&&Pe!==1;)Pe=V();Pe===20&&(Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re()))}else if(Pe===42)Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re());else if(Pe===102&&(Pe=V(),Pe===156&&p_.lookAhead(()=>{let et=p_.scan();return et===80||w0(et)})&&(Pe=V()),(Pe===80||w0(Pe))&&(Pe=V(),Pe===64&&Ne(!0))))return!0;return!0}return!1}function Ne(Pe,Ke=!1){let et=Pe?V():p_.getToken();return et===149?(et=V(),et===21&&(et=V(),(et===11||Ke&&et===15)&&re()),!0):!1}function Te(){let Pe=p_.getToken();if(Pe===80&&p_.getTokenValue()==="define"){if(Pe=V(),Pe!==21)return!0;if(Pe=V(),Pe===11||Pe===15)if(Pe=V(),Pe===28)Pe=V();else return!0;if(Pe!==23)return!0;for(Pe=V();Pe!==24&&Pe!==1;)(Pe===11||Pe===15)&&re(),Pe=V();return!0}return!1}function Ze(){for(p_.setText(s),V();p_.getToken()!==1;){if(p_.getToken()===16){let Pe=[p_.getToken()];e:for(;B(Pe);){let Ke=p_.scan();switch(Ke){case 1:break e;case 102:_e();break;case 16:Pe.push(Ke);break;case 19:B(Pe)&&Pe.push(Ke);break;case 20:B(Pe)&&(li(Pe)===16?p_.reScanTemplateToken(!1)===18&&Pe.pop():Pe.pop());break}}V()}Ie()||_e()||Ee()||g&&(Ne(!1,!0)||Te())||V()}p_.setText(void 0)}if(c&&Ze(),aet(d,s),cet(d,Dc),O){if(_)for(let Pe of _)h.push(Pe.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:void 0}}else{let Pe;if(_)for(let Ke of _)Ke.depth===0?(Pe||(Pe=[]),Pe.push(Ke.ref.fileName)):h.push(Ke.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:Pe}}}var iRs=/^data:(?:application\/json;charset=[uU][tT][fF]-8;base64,([A-Za-z0-9+/=]+)$)?/;function SHt(s){let c=bd(s.useCaseSensitiveFileNames()),g=s.getCurrentDirectory(),d=new Map,h=new Map;return{tryGetSourcePosition:R,tryGetGeneratedPosition:T,toLineColumnOffset:ee,clearCache:re,documentPositionMappers:h};function _(ge){return Pu(ge,g,c)}function S(ge,Ie){let _e=_(ge),Ee=h.get(_e);if(Ee)return Ee;let Ne;if(s.getDocumentPositionMapper)Ne=s.getDocumentPositionMapper(ge,Ie);else if(s.readFile){let Te=M(ge);Ne=Te&&Qnt({getSourceFileLike:M,getCanonicalFileName:c,log:Ze=>s.log(Ze)},ge,ttt(Te.text,rn(Te)),Ze=>!s.fileExists||s.fileExists(Ze)?s.readFile(Ze):void 0)}return h.set(_e,Ne||ntt),Ne||ntt}function R(ge){if(!PC(ge.fileName)||!O(ge.fileName))return;let _e=S(ge.fileName).getSourcePosition(ge);return!_e||_e===ge?void 0:R(_e)||_e}function T(ge){if(PC(ge.fileName))return;let Ie=O(ge.fileName);if(!Ie)return;let _e=s.getProgram();if(_e.isSourceOfProjectReferenceRedirect(Ie.fileName))return;let Ne=_e.getCompilerOptions().outFile,Te=Ne?a0(Ne)+".d.ts":Pne(ge.fileName,_e.getCompilerOptions(),_e);if(Te===void 0)return;let Ze=S(Te,ge.fileName).getGeneratedPosition(ge);return Ze===ge?void 0:Ze}function O(ge){let Ie=s.getProgram();if(!Ie)return;let _e=_(ge),Ee=Ie.getSourceFileByPath(_e);return Ee&&Ee.resolvedPath===_e?Ee:void 0}function V(ge){let Ie=_(ge),_e=d.get(Ie);if(_e!==void 0)return _e||void 0;if(!s.readFile||s.fileExists&&!s.fileExists(ge)){d.set(Ie,!1);return}let Ee=s.readFile(ge),Ne=Ee?sRs(Ee):!1;return d.set(Ie,Ne),Ne||void 0}function M(ge){return s.getSourceFileLike?s.getSourceFileLike(ge):O(ge)||V(ge)}function ee(ge,Ie){return M(ge).getLineAndCharacterOfPosition(Ie)}function re(){d.clear(),h.clear()}}function Qnt(s,c,g,d){let h=qPt(g);if(h){let R=iRs.exec(h);if(R){if(R[1]){let T=R[1];return Win(s,dLe(Ed,T),c)}h=void 0}}let _=[];h&&_.push(h),_.push(c+".map");let S=h&&Xc(h,Mo(c));for(let R of _){let T=Xc(R,Mo(c)),O=d(T,S);if(Xs(O))return Win(s,O,T);if(O!==void 0)return O||void 0}}function Win(s,c,g){let d=$Pt(c);if(!(!d||!d.sources||!d.file||!d.mappings)&&!(d.sourcesContent&&d.sourcesContent.some(Xs)))return t3t(s,d,g)}function sRs(s,c){return{text:s,lineMap:c,getLineAndCharacterOfPosition(g){return Ci(rn(this),g)}}}var vHt=new Map;function Xnt(s,c,g){var d;c.getSemanticDiagnostics(s,g);let h=[],_=c.getTypeChecker();!(c.getImpliedNodeFormatForEmit(s)===1||Iu(s.fileName,[".cts",".cjs"]))&&s.commonJsModuleIndicator&&(ZMt(c)||ont(c.getCompilerOptions()))&&oRs(s)&&h.push(mo(uRs(s.commonJsModuleIndicator),Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));let R=s0(s);if(vHt.clear(),T(s),iQ(c.getCompilerOptions()))for(let O of s.imports){let V=W7(O);if(Zm(V)&&Ga(V,32))continue;let M=aRs(V);if(!M)continue;let ee=(d=c.getResolvedModuleFromModuleSpecifier(O,s))==null?void 0:d.resolvedModule,re=ee&&c.getSourceFile(ee.resolvedFileName);re&&re.externalModuleIndicator&&re.externalModuleIndicator!==!0&&yf(re.externalModuleIndicator)&&re.externalModuleIndicator.isExportEquals&&h.push(mo(M,Z.Import_may_be_converted_to_a_default_import))}return Pr(h,s.bindSuggestionDiagnostics),Pr(h,c.getSuggestionDiagnostics(s,g)),h.sort((O,V)=>O.start-V.start),h;function T(O){if(R)ARs(O,_)&&h.push(mo(nc(O.parent)?O.parent.name:O,Z.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Eh(O)&&O.parent===s&&O.declarationList.flags&2&&O.declarationList.declarations.length===1){let M=O.declarationList.declarations[0].initializer;M&&ly(M,!0)&&h.push(mo(M,Z.require_call_may_be_converted_to_an_import))}let V=F0.getJSDocTypedefNodes(O);for(let M of V)h.push(mo(M,Z.JSDoc_typedef_may_be_converted_to_TypeScript_type));F0.parameterShouldGetTypeFromJSDoc(O)&&h.push(mo(O.name||O,Z.JSDoc_types_may_be_moved_to_TypeScript_types))}Knt(O)&&cRs(O,_,h),O.forEachChild(T)}}function oRs(s){return s.statements.some(c=>{switch(c.kind){case 244:return c.declarationList.declarations.some(g=>!!g.initializer&&ly(Oin(g.initializer),!0));case 245:{let{expression:g}=c;if(!po(g))return ly(g,!0);let d=oI(g);return d===1||d===2}default:return!1}})}function Oin(s){return jo(s)?Oin(s.expression):s}function aRs(s){switch(s.kind){case 273:let{importClause:c,moduleSpecifier:g}=s;return c&&!c.name&&c.namedBindings&&c.namedBindings.kind===275&&Lg(g)?c.namedBindings.name:void 0;case 272:return s.name;default:return}}function cRs(s,c,g){lRs(s,c)&&!vHt.has(Yin(s))&&g.push(mo(!s.name&&nc(s.parent)&&Ir(s.parent.name)?s.parent.name:s,Z.This_may_be_converted_to_an_async_function))}function lRs(s,c){return!Q7(s)&&s.body&&eg(s.body)&&gRs(s.body,c)&&Jnt(s,c)}function Jnt(s,c){let g=c.getSignatureFromDeclaration(s),d=g?c.getReturnTypeOfSignature(g):void 0;return!!d&&!!c.getPromisedTypeOfPromise(d)}function uRs(s){return po(s)?s.left:s}function gRs(s,c){return!!wF(s,g=>OWe(g,c))}function OWe(s,c){return C2(s)&&!!s.expression&&Unt(s.expression,c)}function Unt(s,c){if(!Pin(s)||!Min(s)||!s.arguments.every(d=>Hin(d,c)))return!1;let g=s.expression.expression;for(;Pin(g)||jo(g);)if(Ll(g)){if(!Min(g)||!g.arguments.every(d=>Hin(d,c)))return!1;g=g.expression.expression}else g=g.expression;return!0}function Pin(s){return Ll(s)&&(w1e(s,"then")||w1e(s,"catch")||w1e(s,"finally"))}function Min(s){let c=s.expression.name.text,g=c==="then"?2:c==="catch"||c==="finally"?1:0;return s.arguments.length>g?!1:s.arguments.lengthd.kind===106||Ir(d)&&d.text==="undefined")}function Hin(s,c){switch(s.kind){case 263:case 219:if(BI(s)&1)return!1;case 220:vHt.set(Yin(s),!0);case 106:return!0;case 80:case 212:{let d=c.getSymbolAtLocation(s);return d?c.isUndefinedSymbol(d)||zt(LC(d,c).declarations,h=>Eu(h)||QT(h)&&!!h.initializer&&Eu(h.initializer)):!1}default:return!1}}function Yin(s){return`${s.pos.toString()}:${s.end.toString()}`}function ARs(s,c){var g,d,h,_;if(jA(s)){if(nc(s.parent)&&((g=s.symbol.members)!=null&&g.size))return!0;let S=c.getSymbolOfExpando(s,!1);return!!(S&&((d=S.exports)!=null&&d.size||(h=S.members)!=null&&h.size))}return ah(s)?!!((_=s.symbol.members)!=null&&_.size):!1}function Knt(s){switch(s.kind){case 263:case 175:case 219:case 220:return!0;default:return!1}}var dRs=new Set(["isolatedModules"]);function BHt(s,c){return Xin(s,c,!1)}function Qin(s,c){return Xin(s,c,!0)}var pRs=`/// +`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return pe.assertNever(s)}}function WTs(s){switch(s){case 42:case 44:case 45:case 40:case 41:case 48:case 49:case 50:case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:case 35:case 36:case 37:case 38:case 51:case 53:case 52:case 56:case 57:case 75:case 74:case 79:case 71:case 72:case 73:case 65:case 66:case 67:case 69:case 70:case 64:case 28:case 61:case 76:case 77:case 78:return!0;default:return!1}}function OTs(s){switch(s){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function PTs(s){if(T0(s))return 3;if(WTs(s)||OTs(s))return 5;if(s>=19&&s<=79)return 10;switch(s){case 9:return 4;case 10:return 25;case 11:return 6;case 14:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 80:default:return HD(s)?6:2}}function cHt(s,c,g,d,h){return xin(Lnt(s,c,g,d,h))}function Din(s,c){switch(c){case 268:case 264:case 265:case 263:case 232:case 219:case 220:s.throwIfCancellationRequested()}}function Lnt(s,c,g,d,h){let _=[];return g.forEachChild(function R(T){if(!(!T||!nS(h,T.pos,T.getFullWidth()))){if(Din(c,T.kind),Ir(T)&&!af(T)&&d.has(T.escapedText)){let O=s.getSymbolAtLocation(T),V=O&&kin(O,QU(T),s);V&&S(T.getStart(g),T.getEnd(),V)}T.forEachChild(R)}}),{spans:_,endOfLineState:0};function S(R,T,O){let V=T-R;pe.assert(V>0,`Classification had non-positive length of ${V}`),_.push(R),_.push(V),_.push(O)}}function kin(s,c,g){let d=s.getFlags();if(d&2885600)return d&32?11:d&384?12:d&524288?16:d&1536?c&4||c&1&&MTs(s)?14:void 0:d&2097152?kin(g.getAliasedSymbol(s),c,g):c&2?d&64?13:d&262144?15:void 0:void 0}function MTs(s){return zt(s.declarations,c=>Lh(c)&&XF(c)===1)}function HTs(s){switch(s){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function xin(s){pe.assert(s.spans.length%3===0);let c=s.spans,g=[];for(let d=0;d])*)(\/>)?)?/m,Ye=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/g,Tt=c.text.substr(Pe,Ke),at=et.exec(Tt);if(!at||!at[3]||!(at[3]in i1))return!1;let Qe=Pe;M(Qe,at[1].length),Qe+=at[1].length,T(Qe,at[2].length,10),Qe+=at[2].length,T(Qe,at[3].length,21),Qe+=at[3].length;let Ct=at[4],mt=Qe;for(;;){let Rt=Ye.exec(Ct);if(!Rt)break;let Lt=Qe+Rt.index+Rt[1].length;Lt>mt&&(M(mt,Lt-mt),mt=Lt),T(mt,Rt[2].length,22),mt+=Rt[2].length,Rt[3].length&&(M(mt,Rt[3].length),mt+=Rt[3].length),T(mt,Rt[4].length,5),mt+=Rt[4].length,Rt[5].length&&(M(mt,Rt[5].length),mt+=Rt[5].length),T(mt,Rt[6].length,24),mt+=Rt[6].length}Qe+=at[4].length,Qe>mt&&M(mt,Qe-mt),at[5]&&(T(Qe,at[5].length,10),Qe+=at[5].length);let yt=Pe+Ke;return Qe=0),Ye>0){let Tt=Ke||Te(Pe.kind,Pe);Tt&&T(et,Ye,Tt)}return!0}function Ne(Pe){switch(Pe.parent&&Pe.parent.kind){case 287:if(Pe.parent.tagName===Pe)return 19;break;case 288:if(Pe.parent.tagName===Pe)return 20;break;case 286:if(Pe.parent.tagName===Pe)return 21;break;case 292:if(Pe.parent.name===Pe)return 22;break}}function Te(Pe,Ke){if(T0(Pe))return 3;if((Pe===30||Pe===32)&&Ke&&DMt(Ke.parent))return 10;if(qye(Pe)){if(Ke){let et=Ke.parent;if(Pe===64&&(et.kind===261||et.kind===173||et.kind===170||et.kind===292)||et.kind===227||et.kind===225||et.kind===226||et.kind===228)return 5}return 10}else{if(Pe===9)return 4;if(Pe===10)return 25;if(Pe===11)return Ke&&Ke.parent.kind===292?24:6;if(Pe===14)return 6;if(HD(Pe))return 6;if(Pe===12)return 23;if(Pe===80){if(Ke){switch(Ke.parent.kind){case 264:return Ke.parent.name===Ke?11:void 0;case 169:return Ke.parent.name===Ke?15:void 0;case 265:return Ke.parent.name===Ke?13:void 0;case 267:return Ke.parent.name===Ke?12:void 0;case 268:return Ke.parent.name===Ke?14:void 0;case 170:return Ke.parent.name===Ke?kF(Ke)?3:17:void 0}if(l2(Ke.parent))return 3}return 2}}}function Ze(Pe){if(Pe&&_E(d,h,Pe.pos,Pe.getFullWidth())){Din(s,Pe.kind);for(let Ke of Pe.getChildren(c))Ee(Ke)||Ze(Ke)}}}var WWe;(s=>{function c(Qe,Ct,mt,yt,Rt){let Lt=Ob(mt,yt);if(Lt.parent&&(sR(Lt.parent)&&Lt.parent.tagName===Lt||pQ(Lt.parent))){let{openingElement:je,closingElement:Wt}=Lt.parent.parent,_r=[je,Wt].map(({tagName:Gt})=>g(Gt,mt));return[{fileName:mt.fileName,highlightSpans:_r}]}return d(yt,Lt,Qe,Ct,Rt)||h(Lt,mt)}s.getDocumentHighlights=c;function g(Qe,Ct){return{fileName:Ct.fileName,textSpan:Yy(Qe,Ct),kind:"none"}}function d(Qe,Ct,mt,yt,Rt){let Lt=new Set(Rt.map(Gt=>Gt.fileName)),je=zp.getReferenceEntriesForNode(Qe,Ct,mt,Rt,yt,void 0,Lt);if(!je)return;let Wt=Uu(je.map(zp.toHighlightSpan),Gt=>Gt.fileName,Gt=>Gt.span),_r=bd(mt.useCaseSensitiveFileNames());return Do(lr(Wt.entries(),([Gt,it])=>{if(!Lt.has(Gt)){if(!mt.redirectTargetsMap.has(Pu(Gt,mt.getCurrentDirectory(),_r)))return;let Dt=mt.getSourceFile(Gt);Gt=de(Rt,ur=>!!ur.redirectInfo&&ur.redirectInfo.redirectTarget===Dt).fileName,pe.assert(Lt.has(Gt))}return{fileName:Gt,highlightSpans:it}}))}function h(Qe,Ct){let mt=_(Qe,Ct);return mt&&[{fileName:Ct.fileName,highlightSpans:mt}]}function _(Qe,Ct){switch(Qe.kind){case 101:case 93:return Q3(Qe.parent)?Ye(Qe.parent,Ct):void 0;case 107:return yt(Qe.parent,_2,Ze);case 111:return yt(Qe.parent,G$e,Te);case 113:case 85:case 98:let Lt=Qe.kind===85?Qe.parent.parent:Qe.parent;return yt(Lt,kU,Ne);case 109:return yt(Qe.parent,Sde,Ee);case 84:case 90:return Bde(Qe.parent)||Nie(Qe.parent)?yt(Qe.parent.parent.parent,Sde,Ee):void 0;case 83:case 88:return yt(Qe.parent,SY,_e);case 99:case 117:case 92:return yt(Qe.parent,je=>YT(je,!0),Ie);case 137:return mt(Tc,[137]);case 139:case 153:return mt(wB,[139,153]);case 135:return yt(Qe.parent,_1,Pe);case 134:return Rt(Pe(Qe));case 127:return Rt(Ke(Qe));case 103:case 147:return;default:return YD(Qe.kind)&&(em(Qe.parent)||Eh(Qe.parent))?Rt(ee(Qe.kind,Qe.parent)):void 0}function mt(Lt,je){return yt(Qe.parent,Lt,Wt=>{var _r;return Xt((_r=Gs(Wt,bE))==null?void 0:_r.symbol.declarations,Gt=>Lt(Gt)?de(Gt.getChildren(Ct),it=>k(je,it.kind)):void 0)})}function yt(Lt,je,Wt){return je(Lt)?Rt(Wt(Lt,Ct)):void 0}function Rt(Lt){return Lt&&Lt.map(je=>g(je,Ct))}}function S(Qe){return G$e(Qe)?[Qe]:kU(Qe)?Nn(Qe.catchClause?S(Qe.catchClause):Qe.tryBlock&&S(Qe.tryBlock),Qe.finallyBlock&&S(Qe.finallyBlock)):Eu(Qe)?void 0:O(Qe,S)}function R(Qe){let Ct=Qe;for(;Ct.parent;){let mt=Ct.parent;if(wW(mt)||mt.kind===308)return mt;if(kU(mt)&&mt.tryBlock===Ct&&mt.catchClause)return Ct;Ct=mt}}function T(Qe){return SY(Qe)?[Qe]:Eu(Qe)?void 0:O(Qe,T)}function O(Qe,Ct){let mt=[];return Qe.forEachChild(yt=>{let Rt=Ct(yt);Rt!==void 0&&mt.push(...cc(Rt))}),mt}function V(Qe,Ct){let mt=M(Ct);return!!mt&&mt===Qe}function M(Qe){return ji(Qe,Ct=>{switch(Ct.kind){case 256:if(Qe.kind===252)return!1;case 249:case 250:case 251:case 248:case 247:return!Qe.label||at(Ct,Qe.label.escapedText);default:return Eu(Ct)&&"quit"}})}function ee(Qe,Ct){return Xt(re(Ct,tQ(Qe)),mt=>ose(mt,Qe))}function re(Qe,Ct){let mt=Qe.parent;switch(mt.kind){case 269:case 308:case 242:case 297:case 298:return Ct&64&&mm(Qe)?[...Qe.members,Qe]:mt.statements;case 177:case 175:case 263:return[...mt.parameters,...xa(mt.parent)?mt.parent.members:[]];case 264:case 232:case 265:case 188:let yt=mt.members;if(Ct&15){let Rt=de(mt.members,Tc);if(Rt)return[...yt,...Rt.parameters]}else if(Ct&64)return[...yt,mt];return yt;default:return}}function ge(Qe,Ct,...mt){return Ct&&k(mt,Ct.kind)?(Qe.push(Ct),!0):!1}function Ie(Qe){let Ct=[];if(ge(Ct,Qe.getFirstToken(),99,117,92)&&Qe.kind===247){let mt=Qe.getChildren();for(let yt=mt.length-1;yt>=0&&!ge(Ct,mt[yt],117);yt--);}return F(T(Qe.statement),mt=>{V(Qe,mt)&&ge(Ct,mt.getFirstToken(),83,88)}),Ct}function _e(Qe){let Ct=M(Qe);if(Ct)switch(Ct.kind){case 249:case 250:case 251:case 247:case 248:return Ie(Ct);case 256:return Ee(Ct)}}function Ee(Qe){let Ct=[];return ge(Ct,Qe.getFirstToken(),109),F(Qe.caseBlock.clauses,mt=>{ge(Ct,mt.getFirstToken(),84,90),F(T(mt),yt=>{V(Qe,yt)&&ge(Ct,yt.getFirstToken(),83)})}),Ct}function Ne(Qe,Ct){let mt=[];if(ge(mt,Qe.getFirstToken(),113),Qe.catchClause&&ge(mt,Qe.catchClause.getFirstToken(),85),Qe.finallyBlock){let yt=ep(Qe,98,Ct);ge(mt,yt,98)}return mt}function Te(Qe,Ct){let mt=R(Qe);if(!mt)return;let yt=[];return F(S(mt),Rt=>{yt.push(ep(Rt,111,Ct))}),wW(mt)&&TF(mt,Rt=>{yt.push(ep(Rt,107,Ct))}),yt}function Ze(Qe,Ct){let mt=I1(Qe);if(!mt)return;let yt=[];return TF(Ma(mt.body,eg),Rt=>{yt.push(ep(Rt,107,Ct))}),F(S(mt.body),Rt=>{yt.push(ep(Rt,111,Ct))}),yt}function Pe(Qe){let Ct=I1(Qe);if(!Ct)return;let mt=[];return Ct.modifiers&&Ct.modifiers.forEach(yt=>{ge(mt,yt,134)}),Lu(Ct,yt=>{et(yt,Rt=>{_1(Rt)&&ge(mt,Rt.getFirstToken(),135)})}),mt}function Ke(Qe){let Ct=I1(Qe);if(!Ct)return;let mt=[];return Lu(Ct,yt=>{et(yt,Rt=>{Qd(Rt)&&ge(mt,Rt.getFirstToken(),127)})}),mt}function et(Qe,Ct){Ct(Qe),!Eu(Qe)&&!xa(Qe)&&!p_(Qe)&&!Lh(Qe)&&!PB(Qe)&&!uc(Qe)&&Lu(Qe,mt=>et(mt,Ct))}function Ye(Qe,Ct){let mt=Tt(Qe,Ct),yt=[];for(let Rt=0;Rt=Lt.end;_r--)if(!hu(Ct.text.charCodeAt(_r))){Wt=!1;break}if(Wt){yt.push({fileName:Ct.fileName,textSpan:RA(Lt.getStart(),je.end),kind:"reference"}),Rt++;continue}}yt.push(g(mt[Rt],Ct))}return yt}function Tt(Qe,Ct){let mt=[];for(;Q3(Qe.parent)&&Qe.parent.elseStatement===Qe;)Qe=Qe.parent;for(;;){let yt=Qe.getChildren(Ct);ge(mt,yt[0],101);for(let Rt=yt.length-1;Rt>=0&&!ge(mt,yt[Rt],93);Rt--);if(!Qe.elseStatement||!Q3(Qe.elseStatement))break;Qe=Qe.elseStatement}return mt}function at(Qe,Ct){return!!ji(Qe.parent,mt=>YW(mt)?mt.label.escapedText===Ct:"quit")}})(WWe||(WWe={}));function J1e(s){return!!s.sourceFile}function uHt(s,c,g){return Wnt(s,c,g)}function Wnt(s,c="",g,d){let h=new Map,_=bd(!!s);function S(){let _e=Do(h.keys()).filter(Ee=>Ee&&Ee.charAt(0)==="_").map(Ee=>{let Ne=h.get(Ee),Te=[];return Ne.forEach((Ze,Pe)=>{J1e(Ze)?Te.push({name:Pe,scriptKind:Ze.sourceFile.scriptKind,refCount:Ze.languageServiceRefCount}):Ze.forEach((Ke,et)=>Te.push({name:Pe,scriptKind:et,refCount:Ke.languageServiceRefCount}))}),Te.sort((Ze,Pe)=>Pe.refCount-Ze.refCount),{bucket:Ee,sourceFiles:Te}});return JSON.stringify(_e,void 0,2)}function R(_e){return typeof _e.getCompilationSettings=="function"?_e.getCompilationSettings():_e}function T(_e,Ee,Ne,Te,Ze,Pe){let Ke=Pu(_e,c,_),et=Ont(R(Ee));return O(_e,Ke,Ee,et,Ne,Te,Ze,Pe)}function O(_e,Ee,Ne,Te,Ze,Pe,Ke,et){return re(_e,Ee,Ne,Te,Ze,Pe,!0,Ke,et)}function V(_e,Ee,Ne,Te,Ze,Pe){let Ke=Pu(_e,c,_),et=Ont(R(Ee));return M(_e,Ke,Ee,et,Ne,Te,Ze,Pe)}function M(_e,Ee,Ne,Te,Ze,Pe,Ke,et){return re(_e,Ee,R(Ne),Te,Ze,Pe,!1,Ke,et)}function ee(_e,Ee){let Ne=J1e(_e)?_e:_e.get(pe.checkDefined(Ee,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return pe.assert(Ee===void 0||!Ne||Ne.sourceFile.scriptKind===Ee,`Script kind should match provided ScriptKind:${Ee} and sourceFile.scriptKind: ${Ne?.sourceFile.scriptKind}, !entry: ${!Ne}`),Ne}function re(_e,Ee,Ne,Te,Ze,Pe,Ke,et,Ye){var Tt,at,Qe,Ct;et=zAe(_e,et);let mt=R(Ne),yt=Ne===mt?void 0:Ne,Rt=et===6?100:Hg(mt),Lt=typeof Ye=="object"?Ye:{languageVersion:Rt,impliedNodeFormat:yt&&f1e(Ee,(Ct=(Qe=(at=(Tt=yt.getCompilerHost)==null?void 0:Tt.call(yt))==null?void 0:at.getModuleResolutionCache)==null?void 0:Qe.call(at))==null?void 0:Ct.getPackageJsonInfoCache(),yt,mt),setExternalModuleIndicator:qne(mt),jsDocParsingMode:g};Lt.languageVersion=Rt,pe.assertEqual(g,Lt.jsDocParsingMode);let je=h.size,Wt=gHt(Te,Lt.impliedNodeFormat),_r=cr(h,Wt,()=>new Map);if(ki){h.size>je&&ki.instant(ki.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:mt.configFilePath,key:Wt});let tr=!MC(Ee)&&Fh(h,(ur,Gr)=>Gr!==Wt&&ur.has(Ee)&&Gr);tr&&ki.instant(ki.Phase.Session,"documentRegistryBucketOverlap",{path:Ee,key1:tr,key2:Wt})}let Gt=_r.get(Ee),it=Gt&&ee(Gt,et);if(!it&&d){let tr=d.getDocument(Wt,Ee);tr&&tr.scriptKind===et&&tr.text===qz(Ze)&&(pe.assert(Ke),it={sourceFile:tr,languageServiceRefCount:0},Dt())}if(it)it.sourceFile.version!==Pe&&(it.sourceFile=Cit(it.sourceFile,Ze,Pe,Ze.getChangeRange(it.sourceFile.scriptSnapshot)),d&&d.setDocument(Wt,Ee,it.sourceFile)),Ke&&it.languageServiceRefCount++;else{let tr=tOe(_e,Ze,Lt,Pe,!1,et);d&&d.setDocument(Wt,Ee,tr),it={sourceFile:tr,languageServiceRefCount:1},Dt()}return pe.assert(it.languageServiceRefCount!==0),it.sourceFile;function Dt(){if(!Gt)_r.set(Ee,it);else if(J1e(Gt)){let tr=new Map;tr.set(Gt.sourceFile.scriptKind,Gt),tr.set(et,it),_r.set(Ee,tr)}else Gt.set(et,it)}}function ge(_e,Ee,Ne,Te){let Ze=Pu(_e,c,_),Pe=Ont(Ee);return Ie(Ze,Pe,Ne,Te)}function Ie(_e,Ee,Ne,Te){let Ze=pe.checkDefined(h.get(gHt(Ee,Te))),Pe=Ze.get(_e),Ke=ee(Pe,Ne);Ke.languageServiceRefCount--,pe.assert(Ke.languageServiceRefCount>=0),Ke.languageServiceRefCount===0&&(J1e(Pe)?Ze.delete(_e):(Pe.delete(Ne),Pe.size===1&&Ze.set(_e,ae(Pe.values(),Zl))))}return{acquireDocument:T,acquireDocumentWithKey:O,updateDocument:V,updateDocumentWithKey:M,releaseDocument:ge,releaseDocumentWithKey:Ie,getKeyForCompilationSettings:Ont,getDocumentRegistryBucketKeyWithMode:gHt,reportStats:S,getBuckets:()=>h}}function Ont(s){return Net(s,Aet)}function gHt(s,c){return c?`${s}|${c}`:s}function AHt(s,c,g,d,h,_,S){let R=N3(d),T=bd(R),O=Pnt(c,g,T,S),V=Pnt(g,c,T,S);return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},M=>{QTs(s,M,O,c,g,d.getCurrentDirectory(),R),XTs(s,M,O,V,d,T)})}function Pnt(s,c,g,d){let h=g(s);return S=>{let R=d&&d.tryGetSourcePosition({fileName:S,pos:0}),T=_(R?R.fileName:S);return R?T===void 0?void 0:YTs(R.fileName,T,S,g):T};function _(S){if(g(S)===h)return c;let R=UAe(S,h,g);return R===void 0?void 0:c+"/"+R}}function YTs(s,c,g,d){let h=c1(s,c,d);return dHt(Mo(g),h)}function QTs(s,c,g,d,h,_,S){let{configFile:R}=s.getCompilerOptions();if(!R)return;let T=Mo(R.fileName),O=x7(R);if(!O)return;pHt(O,(re,ge)=>{switch(ge){case"files":case"include":case"exclude":{if(V(re)||ge!=="include"||!YI(re.initializer))return;let _e=Xt(re.initializer.elements,Ne=>Lg(Ne)?Ne.text:void 0);if(_e.length===0)return;let Ee=jAe(T,[],_e,S,_);nk(pe.checkDefined(Ee.includeFilePattern),S).test(d)&&!nk(pe.checkDefined(Ee.includeFilePattern),S).test(h)&&c.insertNodeAfter(R,Ei(re.initializer.elements),me.createStringLiteral(ee(h)));return}case"compilerOptions":pHt(re.initializer,(Ie,_e)=>{let Ee=fet(_e);pe.assert(Ee?.type!=="listOrElement"),Ee&&(Ee.isFilePath||Ee.type==="list"&&Ee.element.isFilePath)?V(Ie):_e==="paths"&&pHt(Ie.initializer,Ne=>{if(YI(Ne.initializer))for(let Te of Ne.initializer.elements)M(Te)})});return}});function V(re){let ge=YI(re.initializer)?re.initializer.elements:[re.initializer],Ie=!1;for(let _e of ge)Ie=M(_e)||Ie;return Ie}function M(re){if(!Lg(re))return!1;let ge=dHt(T,re.text),Ie=g(ge);return Ie!==void 0?(c.replaceRangeWithText(R,Fin(re,R),ee(Ie)),!0):!1}function ee(re){return _p(T,re,!S)}}function XTs(s,c,g,d,h,_){let S=s.getSourceFiles();for(let R of S){let T=g(R.fileName),O=T??R.fileName,V=Mo(O),M=d(R.fileName),ee=M||R.fileName,re=Mo(ee),ge=T!==void 0||M!==void 0;KTs(R,c,Ie=>{if(!mp(Ie))return;let _e=dHt(re,Ie),Ee=g(_e);return Ee===void 0?void 0:Im(_p(V,Ee,_))},Ie=>{let _e=s.getTypeChecker().getSymbolAtLocation(Ie);if(_e?.declarations&&_e.declarations.some(Ne=>c_(Ne)))return;let Ee=M!==void 0?Gin(Ie,OU(Ie.text,ee,s.getCompilerOptions(),h),g,S):UTs(_e,Ie,R,s,h,g);return Ee!==void 0&&(Ee.updated||ge&&mp(Ie.text))?JF.updateModuleSpecifier(s.getCompilerOptions(),R,O,Ee.newFileName,o5(s,h),Ie.text):void 0})}}function JTs(s,c){return su(To(s,c))}function dHt(s,c){return Im(JTs(s,c))}function UTs(s,c,g,d,h,_){if(s){let S=de(s.declarations,cl).fileName,R=_(S);return R===void 0?{newFileName:S,updated:!1}:{newFileName:R,updated:!0}}else{let S=d.getModeForUsageLocation(g,c),R=h.resolveModuleNameLiterals||!h.resolveModuleNames?d.getResolvedModuleFromModuleSpecifier(c,g):h.getResolvedModuleWithFailedLookupLocationsFromCache&&h.getResolvedModuleWithFailedLookupLocationsFromCache(c.text,g.fileName,S);return Gin(c,R,_,d.getSourceFiles())}}function Gin(s,c,g,d){if(!c)return;if(c.resolvedModule){let T=R(c.resolvedModule.resolvedFileName);if(T)return T}let h=F(c.failedLookupLocations,_)||mp(s.text)&&F(c.failedLookupLocations,S);if(h)return h;return c.resolvedModule&&{newFileName:c.resolvedModule.resolvedFileName,updated:!1};function _(T){let O=g(T);return O&&de(d,V=>V.fileName===O)?S(T):void 0}function S(T){return di(T,"/package.json")?void 0:R(T)}function R(T){let O=g(T);return O&&{newFileName:O,updated:!0}}}function KTs(s,c,g,d){for(let h of s.referencedFiles||E){let _=g(h.fileName);_!==void 0&&_!==s.text.slice(h.pos,h.end)&&c.replaceRangeWithText(s,h,_)}for(let h of s.imports){let _=d(h);_!==void 0&&_!==h.text&&c.replaceRangeWithText(s,Fin(h,s),_)}}function Fin(s,c){return Ly(s.getStart(c)+1,s.end-1)}function pHt(s,c){if(ag(s))for(let g of s.properties)Cm(g)&&Lg(g.name)&&c(g,g.name.text)}var Mnt=(s=>(s[s.exact=0]="exact",s[s.prefix=1]="prefix",s[s.substring=2]="substring",s[s.camelCase=3]="camelCase",s))(Mnt||{});function hpe(s,c){return{kind:s,isCaseSensitive:c}}function fHt(s){let c=new Map,g=s.trim().split(".").map(d=>$Ts(d.trim()));if(g.length===1&&g[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>hpe(2,!0),getFullMatch:()=>hpe(2,!0),patternContainsDots:!1};if(!g.some(d=>!d.subWordTextChunks.length))return{getFullMatch:(d,h)=>jTs(d,h,g,c),getMatchForLastSegmentOfPattern:d=>IHt(d,Ei(g),c),patternContainsDots:g.length>1}}function jTs(s,c,g,d){if(!IHt(c,Ei(g),d)||g.length-1>s.length)return;let _;for(let S=g.length-2,R=s.length-1;S>=0;S-=1,R-=1)_=Vin(_,IHt(s[R],g[S],d));return _}function Zin(s,c){let g=c.get(s);return g||c.set(s,g=bHt(s)),g}function Lin(s,c,g){let d=eRs(s,c.textLowerCase);if(d===0)return hpe(c.text.length===s.length?0:1,Ac(s,c.text));if(c.isLowerCase){if(d===-1)return;let h=Zin(s,g);for(let _ of h)if(hHt(s,_,c.text,!0))return hpe(2,hHt(s,_,c.text,!1));if(c.text.length0)return hpe(2,!0);if(c.characterSpans.length>0){let h=Zin(s,g),_=Win(s,h,c,!1)?!0:Win(s,h,c,!0)?!1:void 0;if(_!==void 0)return hpe(3,_)}}}function IHt(s,c,g){if(Hnt(c.totalTextChunk.text,_=>_!==32&&_!==42)){let _=Lin(s,c.totalTextChunk,g);if(_)return _}let d=c.subWordTextChunks,h;for(let _ of d)h=Vin(h,Lin(s,_,g));return h}function Vin(s,c){return oa([s,c],zTs)}function zTs(s,c){return s===void 0?1:c===void 0?-1:Zt(s.kind,c.kind)||Hl(!s.isCaseSensitive,!c.isCaseSensitive)}function hHt(s,c,g,d,h={start:0,length:g.length}){return h.length<=c.length&&Hin(0,h.length,_=>qTs(g.charCodeAt(h.start+_),s.charCodeAt(c.start+_),d))}function qTs(s,c,g){return g?mHt(s)===mHt(c):s===c}function Win(s,c,g,d){let h=g.characterSpans,_=0,S=0,R,T;for(;;){if(S===h.length)return!0;if(_===c.length)return!1;let O=c[_],V=!1;for(;S=65&&s<=90)return!0;if(s<127||!It(s,99))return!1;let c=String.fromCharCode(s);return c===c.toUpperCase()}function Oin(s){if(s>=97&&s<=122)return!0;if(s<127||!It(s,99))return!1;let c=String.fromCharCode(s);return c===c.toLowerCase()}function eRs(s,c){let g=s.length-c.length;for(let d=0;d<=g;d++)if(Hnt(c,(h,_)=>mHt(s.charCodeAt(_+d))===h))return d;return-1}function mHt(s){return s>=65&&s<=90?97+(s-65):s<127?s:String.fromCharCode(s).toLowerCase().charCodeAt(0)}function CHt(s){return s>=48&&s<=57}function tRs(s){return dse(s)||Oin(s)||CHt(s)||s===95||s===36}function rRs(s){let c=[],g=0,d=0;for(let h=0;h0&&(c.push(_Ht(s.substr(g,d))),d=0)}return d>0&&c.push(_Ht(s.substr(g,d))),c}function _Ht(s){let c=s.toLowerCase();return{text:s,textLowerCase:c,isLowerCase:s===c,characterSpans:yHt(s)}}function yHt(s){return Pin(s,!1)}function bHt(s){return Pin(s,!0)}function Pin(s,c){let g=[],d=0;for(let h=1;hEHt(d)&&d!==95,c,g)}function nRs(s,c,g){return c!==g&&c+1c(s.charCodeAt(h),h))}function Yin(s,c=!0,g=!1){let d={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},h=[],_,S,R,T=0,O=!1;function V(){return S=R,R=f_.scan(),R===19?T++:R===20&&T--,R}function M(){let Pe=f_.getTokenValue(),Ke=f_.getTokenStart();return{fileName:Pe,pos:Ke,end:Ke+Pe.length}}function ee(){_||(_=[]),_.push({ref:M(),depth:T})}function re(){h.push(M()),ge()}function ge(){T===0&&(O=!0)}function Ie(){let Pe=f_.getToken();return Pe===138?(Pe=V(),Pe===144&&(Pe=V(),Pe===11&&ee()),!0):!1}function _e(){if(S===25)return!1;let Pe=f_.getToken();if(Pe===102){if(Pe=V(),Pe===21){if(Pe=V(),Pe===11||Pe===15)return re(),!0}else{if(Pe===11)return re(),!0;if(Pe===156&&f_.lookAhead(()=>{let et=f_.scan();return et!==161&&(et===42||et===19||et===80||T0(et))})&&(Pe=V()),Pe===80||T0(Pe))if(Pe=V(),Pe===161){if(Pe=V(),Pe===11)return re(),!0}else if(Pe===64){if(Ne(!0))return!0}else if(Pe===28)Pe=V();else return!0;if(Pe===19){for(Pe=V();Pe!==20&&Pe!==1;)Pe=V();Pe===20&&(Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re()))}else Pe===42&&(Pe=V(),Pe===130&&(Pe=V(),(Pe===80||T0(Pe))&&(Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re()))))}return!0}return!1}function Ee(){let Pe=f_.getToken();if(Pe===95){if(ge(),Pe=V(),Pe===156&&f_.lookAhead(()=>{let et=f_.scan();return et===42||et===19})&&(Pe=V()),Pe===19){for(Pe=V();Pe!==20&&Pe!==1;)Pe=V();Pe===20&&(Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re()))}else if(Pe===42)Pe=V(),Pe===161&&(Pe=V(),Pe===11&&re());else if(Pe===102&&(Pe=V(),Pe===156&&f_.lookAhead(()=>{let et=f_.scan();return et===80||T0(et)})&&(Pe=V()),(Pe===80||T0(Pe))&&(Pe=V(),Pe===64&&Ne(!0))))return!0;return!0}return!1}function Ne(Pe,Ke=!1){let et=Pe?V():f_.getToken();return et===149?(et=V(),et===21&&(et=V(),(et===11||Ke&&et===15)&&re()),!0):!1}function Te(){let Pe=f_.getToken();if(Pe===80&&f_.getTokenValue()==="define"){if(Pe=V(),Pe!==21)return!0;if(Pe=V(),Pe===11||Pe===15)if(Pe=V(),Pe===28)Pe=V();else return!0;if(Pe!==23)return!0;for(Pe=V();Pe!==24&&Pe!==1;)(Pe===11||Pe===15)&&re(),Pe=V();return!0}return!1}function Ze(){for(f_.setText(s),V();f_.getToken()!==1;){if(f_.getToken()===16){let Pe=[f_.getToken()];e:for(;B(Pe);){let Ke=f_.scan();switch(Ke){case 1:break e;case 102:_e();break;case 16:Pe.push(Ke);break;case 19:B(Pe)&&Pe.push(Ke);break;case 20:B(Pe)&&(li(Pe)===16?f_.reScanTemplateToken(!1)===18&&Pe.pop():Pe.pop());break}}V()}Ie()||_e()||Ee()||g&&(Ne(!1,!0)||Te())||V()}f_.setText(void 0)}if(c&&Ze(),oet(d,s),aet(d,Dc),O){if(_)for(let Pe of _)h.push(Pe.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:void 0}}else{let Pe;if(_)for(let Ke of _)Ke.depth===0?(Pe||(Pe=[]),Pe.push(Ke.ref.fileName)):h.push(Ke.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:Pe}}}var sRs=/^data:(?:application\/json;charset=[uU][tT][fF]-8;base64,([A-Za-z0-9+/=]+)$)?/;function SHt(s){let c=bd(s.useCaseSensitiveFileNames()),g=s.getCurrentDirectory(),d=new Map,h=new Map;return{tryGetSourcePosition:R,tryGetGeneratedPosition:T,toLineColumnOffset:ee,clearCache:re,documentPositionMappers:h};function _(ge){return Pu(ge,g,c)}function S(ge,Ie){let _e=_(ge),Ee=h.get(_e);if(Ee)return Ee;let Ne;if(s.getDocumentPositionMapper)Ne=s.getDocumentPositionMapper(ge,Ie);else if(s.readFile){let Te=M(ge);Ne=Te&&Ynt({getSourceFileLike:M,getCanonicalFileName:c,log:Ze=>s.log(Ze)},ge,ett(Te.text,rn(Te)),Ze=>!s.fileExists||s.fileExists(Ze)?s.readFile(Ze):void 0)}return h.set(_e,Ne||rtt),Ne||rtt}function R(ge){if(!MC(ge.fileName)||!O(ge.fileName))return;let _e=S(ge.fileName).getSourcePosition(ge);return!_e||_e===ge?void 0:R(_e)||_e}function T(ge){if(MC(ge.fileName))return;let Ie=O(ge.fileName);if(!Ie)return;let _e=s.getProgram();if(_e.isSourceOfProjectReferenceRedirect(Ie.fileName))return;let Ne=_e.getCompilerOptions().outFile,Te=Ne?c0(Ne)+".d.ts":Mne(ge.fileName,_e.getCompilerOptions(),_e);if(Te===void 0)return;let Ze=S(Te,ge.fileName).getGeneratedPosition(ge);return Ze===ge?void 0:Ze}function O(ge){let Ie=s.getProgram();if(!Ie)return;let _e=_(ge),Ee=Ie.getSourceFileByPath(_e);return Ee&&Ee.resolvedPath===_e?Ee:void 0}function V(ge){let Ie=_(ge),_e=d.get(Ie);if(_e!==void 0)return _e||void 0;if(!s.readFile||s.fileExists&&!s.fileExists(ge)){d.set(Ie,!1);return}let Ee=s.readFile(ge),Ne=Ee?oRs(Ee):!1;return d.set(Ie,Ne),Ne||void 0}function M(ge){return s.getSourceFileLike?s.getSourceFileLike(ge):O(ge)||V(ge)}function ee(ge,Ie){return M(ge).getLineAndCharacterOfPosition(Ie)}function re(){d.clear(),h.clear()}}function Ynt(s,c,g,d){let h=qPt(g);if(h){let R=sRs.exec(h);if(R){if(R[1]){let T=R[1];return Qin(s,dLe(Ed,T),c)}h=void 0}}let _=[];h&&_.push(h),_.push(c+".map");let S=h&&Xc(h,Mo(c));for(let R of _){let T=Xc(R,Mo(c)),O=d(T,S);if(Xs(O))return Qin(s,O,T);if(O!==void 0)return O||void 0}}function Qin(s,c,g){let d=$Pt(c);if(!(!d||!d.sources||!d.file||!d.mappings)&&!(d.sourcesContent&&d.sourcesContent.some(Xs)))return t3t(s,d,g)}function oRs(s,c){return{text:s,lineMap:c,getLineAndCharacterOfPosition(g){return Ci(rn(this),g)}}}var vHt=new Map;function Qnt(s,c,g){var d;c.getSemanticDiagnostics(s,g);let h=[],_=c.getTypeChecker();!(c.getImpliedNodeFormatForEmit(s)===1||Iu(s.fileName,[".cts",".cjs"]))&&s.commonJsModuleIndicator&&(ZMt(c)||snt(c.getCompilerOptions()))&&aRs(s)&&h.push(ho(gRs(s.commonJsModuleIndicator),Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));let R=o0(s);if(vHt.clear(),T(s),sQ(c.getCompilerOptions()))for(let O of s.imports){let V=O7(O);if(Zm(V)&&Ga(V,32))continue;let M=cRs(V);if(!M)continue;let ee=(d=c.getResolvedModuleFromModuleSpecifier(O,s))==null?void 0:d.resolvedModule,re=ee&&c.getSourceFile(ee.resolvedFileName);re&&re.externalModuleIndicator&&re.externalModuleIndicator!==!0&&yf(re.externalModuleIndicator)&&re.externalModuleIndicator.isExportEquals&&h.push(ho(M,Z.Import_may_be_converted_to_a_default_import))}return Pr(h,s.bindSuggestionDiagnostics),Pr(h,c.getSuggestionDiagnostics(s,g)),h.sort((O,V)=>O.start-V.start),h;function T(O){if(R)dRs(O,_)&&h.push(ho(nc(O.parent)?O.parent.name:O,Z.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Eh(O)&&O.parent===s&&O.declarationList.flags&2&&O.declarationList.declarations.length===1){let M=O.declarationList.declarations[0].initializer;M&&uy(M,!0)&&h.push(ho(M,Z.require_call_may_be_converted_to_an_import))}let V=Z0.getJSDocTypedefNodes(O);for(let M of V)h.push(ho(M,Z.JSDoc_typedef_may_be_converted_to_TypeScript_type));Z0.parameterShouldGetTypeFromJSDoc(O)&&h.push(ho(O.name||O,Z.JSDoc_types_may_be_moved_to_TypeScript_types))}Unt(O)&&lRs(O,_,h),O.forEachChild(T)}}function aRs(s){return s.statements.some(c=>{switch(c.kind){case 244:return c.declarationList.declarations.some(g=>!!g.initializer&&uy(Xin(g.initializer),!0));case 245:{let{expression:g}=c;if(!po(g))return uy(g,!0);let d=oI(g);return d===1||d===2}default:return!1}})}function Xin(s){return jo(s)?Xin(s.expression):s}function cRs(s){switch(s.kind){case 273:let{importClause:c,moduleSpecifier:g}=s;return c&&!c.name&&c.namedBindings&&c.namedBindings.kind===275&&Lg(g)?c.namedBindings.name:void 0;case 272:return s.name;default:return}}function lRs(s,c,g){uRs(s,c)&&!vHt.has(jin(s))&&g.push(ho(!s.name&&nc(s.parent)&&Ir(s.parent.name)?s.parent.name:s,Z.This_may_be_converted_to_an_async_function))}function uRs(s,c){return!X7(s)&&s.body&&eg(s.body)&&ARs(s.body,c)&&Xnt(s,c)}function Xnt(s,c){let g=c.getSignatureFromDeclaration(s),d=g?c.getReturnTypeOfSignature(g):void 0;return!!d&&!!c.getPromisedTypeOfPromise(d)}function gRs(s){return po(s)?s.left:s}function ARs(s,c){return!!TF(s,g=>OWe(g,c))}function OWe(s,c){return _2(s)&&!!s.expression&&Jnt(s.expression,c)}function Jnt(s,c){if(!Jin(s)||!Uin(s)||!s.arguments.every(d=>Kin(d,c)))return!1;let g=s.expression.expression;for(;Jin(g)||jo(g);)if(Ll(g)){if(!Uin(g)||!g.arguments.every(d=>Kin(d,c)))return!1;g=g.expression.expression}else g=g.expression;return!0}function Jin(s){return Ll(s)&&(w1e(s,"then")||w1e(s,"catch")||w1e(s,"finally"))}function Uin(s){let c=s.expression.name.text,g=c==="then"?2:c==="catch"||c==="finally"?1:0;return s.arguments.length>g?!1:s.arguments.lengthd.kind===106||Ir(d)&&d.text==="undefined")}function Kin(s,c){switch(s.kind){case 263:case 219:if(BI(s)&1)return!1;case 220:vHt.set(jin(s),!0);case 106:return!0;case 80:case 212:{let d=c.getSymbolAtLocation(s);return d?c.isUndefinedSymbol(d)||zt(VC(d,c).declarations,h=>Eu(h)||XT(h)&&!!h.initializer&&Eu(h.initializer)):!1}default:return!1}}function jin(s){return`${s.pos.toString()}:${s.end.toString()}`}function dRs(s,c){var g,d,h,_;if(jA(s)){if(nc(s.parent)&&((g=s.symbol.members)!=null&&g.size))return!0;let S=c.getSymbolOfExpando(s,!1);return!!(S&&((d=S.exports)!=null&&d.size||(h=S.members)!=null&&h.size))}return ah(s)?!!((_=s.symbol.members)!=null&&_.size):!1}function Unt(s){switch(s.kind){case 263:case 175:case 219:case 220:return!0;default:return!1}}var pRs=new Set(["isolatedModules"]);function BHt(s,c){return qin(s,c,!1)}function zin(s,c){return qin(s,c,!0)}var fRs=`/// interface Boolean {} interface Function {} interface CallableFunction {} @@ -1030,42 +1030,42 @@ interface SymbolConstructor { declare var Symbol: SymbolConstructor; interface Symbol { readonly [Symbol.toStringTag]: string; -}`,PWe="lib.d.ts",wHt;function Xin(s,c,g){wHt??(wHt=Wz(PWe,pRs,{languageVersion:99}));let d=[],h=c.compilerOptions?jnt(c.compilerOptions,d):{},_=eOe();for(let Ie in _)Da(_,Ie)&&h[Ie]===void 0&&(h[Ie]=_[Ie]);for(let Ie of qOt)h.verbatimModuleSyntax&&dRs.has(Ie.name)||(h[Ie.name]=Ie.transpileOptionValue);h.suppressOutputPathCheck=!0,h.allowNonTsExtensions=!0,g?(h.declaration=!0,h.emitDeclarationOnly=!0,h.isolatedDeclarations=!0):(h.declaration=!1,h.declarationMap=!1);let S=fN(h),R={getSourceFile:Ie=>Ie===su(T)?O:Ie===su(PWe)?wHt:void 0,writeFile:(Ie,_e)=>{cA(Ie,".map")?(pe.assertEqual(M,void 0,"Unexpected multiple source map outputs, file:",Ie),M=_e):(pe.assertEqual(V,void 0,"Unexpected multiple outputs, file:",Ie),V=_e)},getDefaultLibFileName:()=>PWe,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:Ie=>Ie,getCurrentDirectory:()=>"",getNewLine:()=>S,fileExists:Ie=>Ie===T||!!g&&Ie===PWe,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},T=c.fileName||(c.compilerOptions&&c.compilerOptions.jsx?"module.tsx":"module.ts"),O=Wz(T,s,{languageVersion:Hg(h),impliedNodeFormat:f1e(Pu(T,"",R.getCanonicalFileName),void 0,R,h),setExternalModuleIndicator:zne(h),jsDocParsingMode:c.jsDocParsingMode??0});c.moduleName&&(O.moduleName=c.moduleName),c.renamedDependencies&&(O.renamedDependencies=new Map(Object.entries(c.renamedDependencies)));let V,M,re=I1e(g?[T,PWe]:[T],h,R);c.reportDiagnostics&&(Pr(d,re.getSyntacticDiagnostics(O)),Pr(d,re.getOptionsDiagnostics()));let ge=re.emit(void 0,void 0,void 0,g,c.transformers,g);return Pr(d,ge.diagnostics),V===void 0?pe.fail("Output generation failed"):{outputText:V,diagnostics:d,sourceMapText:M}}function Jin(s,c,g,d,h){let _=BHt(s,{compilerOptions:c,fileName:g,reportDiagnostics:!!d,moduleName:h});return Pr(d,_.diagnostics),_.outputText}var THt;function jnt(s,c){THt=THt||Le(Qw,g=>typeof g.type=="object"&&!Fh(g.type,d=>typeof d!="number")),s=ent(s);for(let g of THt){if(!Da(s,g.name))continue;let d=s[g.name];Xs(d)?s[g.name]=W9e(g,d,c):Fh(g.type,h=>h===d)||c.push(ePt(g))}return s}var RHt={};o(RHt,{getNavigateToItems:()=>Uin});function Uin(s,c,g,d,h,_,S){let R=fHt(d);if(!R)return E;let T=[],O=s.length===1?s[0]:void 0;for(let V of s)g.throwIfCancellationRequested(),!(_&&V.isDeclarationFile)&&(Kin(V,!!S,O)||V.getNamedDeclarations().forEach((M,ee)=>{fRs(R,ee,M,c,V.fileName,!!S,O,T)}));return T.sort(CRs),(h===void 0?T:T.slice(0,h)).map(_Rs)}function Kin(s,c,g){return s!==g&&c&&(M1e(s.path)||s.hasNoDefaultLib)}function fRs(s,c,g,d,h,_,S,R){let T=s.getMatchForLastSegmentOfPattern(c);if(T){for(let O of g)if(IRs(O,d,_,S))if(s.patternContainsDots){let V=s.getFullMatch(mRs(O),c);V&&R.push({name:c,fileName:h,matchKind:V.kind,isCaseSensitive:V.isCaseSensitive,declaration:O})}else R.push({name:c,fileName:h,matchKind:T.kind,isCaseSensitive:T.isCaseSensitive,declaration:O})}}function IRs(s,c,g,d){var h;switch(s.kind){case 274:case 277:case 272:let _=c.getSymbolAtLocation(s.name),S=c.getAliasedSymbol(_);return _.escapedName!==S.escapedName&&!((h=S.declarations)!=null&&h.every(R=>Kin(R.getSourceFile(),g,d)));default:return!0}}function hRs(s,c){let g=fl(s);return!!g&&(jin(g,c)||g.kind===168&&NHt(g.expression,c))}function NHt(s,c){return jin(s,c)||jo(s)&&(c.push(s.name.text),!0)&&NHt(s.expression,c)}function jin(s,c){return xw(s)&&(c.push(g2(s)),!0)}function mRs(s){let c=[],g=fl(s);if(g&&g.kind===168&&!NHt(g.expression,c))return E;c.shift();let d=QU(s);for(;d;){if(!hRs(d,c))return E;d=QU(d)}return c.reverse(),c}function CRs(s,c){return Zt(s.matchKind,c.matchKind)||io(s.name,c.name)}function _Rs(s){let c=s.declaration,g=QU(c),d=g&&fl(g);return{name:s.name,kind:vQ(c),kindModifiers:ape(c),matchKind:Hnt[s.matchKind],isCaseSensitive:s.isCaseSensitive,fileName:s.fileName,textSpan:Hy(c),containerName:d?d.text:"",containerKind:d?vQ(g):""}}var DHt={};o(DHt,{getNavigationBarItems:()=>qin,getNavigationTree:()=>$in});var yRs=/\s+/g,kHt=150,znt,U1e,MWe=[],c9,zin=[],dse,xHt=[];function qin(s,c){znt=c,U1e=s;try{return lt(BRs(rsn(s)),wRs)}finally{esn()}}function $in(s,c){znt=c,U1e=s;try{return gsn(rsn(s))}finally{esn()}}function esn(){U1e=void 0,znt=void 0,MWe=[],c9=void 0,xHt=[]}function HWe(s){return hpe(s.getText(U1e))}function qnt(s){return s.node.kind}function tsn(s,c){s.children?s.children.push(c):s.children=[c]}function rsn(s){pe.assert(!MWe.length);let c={node:s,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};c9=c;for(let g of s.statements)eq(g);return s5(),pe.assert(!c9&&!MWe.length),c}function TQ(s,c){tsn(c9,GHt(s,c))}function GHt(s,c){return{node:s,name:c||(em(s)||un(s)?fl(s):void 0),additionalNodes:void 0,parent:c9,children:void 0,indent:c9.indent+1}}function nsn(s){dse||(dse=new Map),dse.set(s,!0)}function isn(s){for(let c=0;c0;d--){let h=g[d];RQ(s,h)}return[g.length-1,g[0]]}function RQ(s,c){let g=GHt(s,c);tsn(c9,g),MWe.push(c9),zin.push(dse),dse=void 0,c9=g}function s5(){c9.children&&($nt(c9.children,c9),LHt(c9.children)),c9=MWe.pop(),dse=zin.pop()}function o5(s,c,g){RQ(s,g),eq(c),s5()}function osn(s){s.initializer&&RRs(s.initializer)?(RQ(s),Lu(s.initializer,eq),s5()):o5(s,s.initializer)}function FHt(s){let c=fl(s);if(c===void 0)return!1;if(Un(c)){let g=c.expression;return Hd(g)||yC(g)||I1(g)}return!!c}function eq(s){if(znt.throwIfCancellationRequested(),!(!s||kL(s)))switch(s.kind){case 177:let c=s;o5(c,c.body);for(let S of c.parameters)We(S,c)&&TQ(S);break;case 175:case 178:case 179:case 174:FHt(s)&&o5(s,s.body);break;case 173:FHt(s)&&osn(s);break;case 172:FHt(s)&&TQ(s);break;case 274:let g=s;g.name&&TQ(g.name);let{namedBindings:d}=g;if(d)if(d.kind===275)TQ(d);else for(let S of d.elements)TQ(S);break;case 305:o5(s,s.name);break;case 306:let{expression:h}=s;Ir(h)?TQ(s,h):TQ(s);break;case 209:case 304:case 261:{let S=s;Nu(S.name)?eq(S.name):osn(S);break}case 263:let _=s.name;_&&Ir(_)&&nsn(_.text),o5(s,s.body);break;case 220:case 219:o5(s,s.body);break;case 267:RQ(s);for(let S of s.members)TRs(S)||TQ(S);s5();break;case 264:case 232:case 265:RQ(s);for(let S of s.members)eq(S);s5();break;case 268:o5(s,dsn(s).body);break;case 278:{let S=s.expression,R=ag(S)||Ll(S)?S:uA(S)||jA(S)?S.body:void 0;R?(RQ(s),eq(R),s5()):TQ(s);break}case 282:case 272:case 182:case 180:case 181:case 266:TQ(s);break;case 214:case 227:{let S=oI(s);switch(S){case 1:case 2:o5(s,s.right);return;case 6:case 3:{let R=s,T=R.left,O=S===3?T.expression:T,V=0,M;Ir(O.expression)?(nsn(O.expression.text),M=O.expression):[V,M]=ssn(R,O.expression),S===6?ag(R.right)&&R.right.properties.length>0&&(RQ(R,M),Lu(R.right,eq),s5()):jA(R.right)||uA(R.right)?o5(s,R.right,M):(RQ(R,M),o5(s,R.right,T.name),s5()),isn(V);return}case 7:case 9:{let R=s,T=S===7?R.arguments[0]:R.arguments[0].expression,O=R.arguments[1],[V,M]=ssn(s,T);RQ(s,M),RQ(s,gn(me.createIdentifier(O.text),O)),eq(s.arguments[2]),s5(),s5(),isn(V);return}case 5:{let R=s,T=R.left,O=T.expression;if(Ir(O)&&KD(T)!=="prototype"&&dse&&dse.has(O.text)){jA(R.right)||uA(R.right)?o5(s,R.right,O):RW(T)&&(RQ(R,O),o5(R.left,R.right,bne(T)),s5());return}break}case 4:case 0:case 8:break;default:pe.assertNever(S)}}default:jm(s)&&F(s.jsDoc,S=>{F(S.tags,R=>{cS(R)&&TQ(R)})}),Lu(s,eq)}}function $nt(s,c){let g=new Map;Je(s,(d,h)=>{let _=d.name||fl(d.node),S=_&&HWe(_);if(!S)return!0;let R=g.get(S);if(!R)return g.set(S,d),!0;if(R instanceof Array){for(let T of R)if(asn(T,d,h,c))return!1;return R.push(d),!0}else{let T=R;return asn(T,d,h,c)?!1:(g.set(S,[T,d]),!0)}})}var K1e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function bRs(s,c,g,d){function h(R){return jA(R)||ah(R)||nc(R)}let _=po(c.node)||Ll(c.node)?oI(c.node):0,S=po(s.node)||Ll(s.node)?oI(s.node):0;if(K1e[_]&&K1e[S]||h(s.node)&&K1e[_]||h(c.node)&&K1e[S]||mm(s.node)&&ZHt(s.node)&&K1e[_]||mm(c.node)&&K1e[S]||mm(s.node)&&ZHt(s.node)&&h(c.node)||mm(c.node)&&h(s.node)&&ZHt(s.node)){let R=s.additionalNodes&&li(s.additionalNodes)||s.node;if(!mm(s.node)&&!mm(c.node)||h(s.node)||h(c.node)){let O=h(s.node)?s.node:h(c.node)?c.node:void 0;if(O!==void 0){let V=gn(me.createConstructorDeclaration(void 0,[],void 0),O),M=GHt(V);M.indent=s.indent+1,M.children=s.node===O?s.children:c.children,s.children=s.node===O?Nn([M],c.children||[c]):Nn(s.children||[{...s}],[M])}else(s.children||c.children)&&(s.children=Nn(s.children||[{...s}],c.children||[c]),s.children&&($nt(s.children,s),LHt(s.children)));R=s.node=gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),s.node)}else s.children=Nn(s.children,c.children),s.children&&$nt(s.children,s);let T=c.node;return d.children[g-1].node.end===R.end?gn(R,{pos:R.pos,end:T.end}):(s.additionalNodes||(s.additionalNodes=[]),s.additionalNodes.push(gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),c.node))),!0}return _!==0}function asn(s,c,g,d){return bRs(s,c,g,d)?!0:ERs(s.node,c.node,d)?(SRs(s,c),!0):!1}function ERs(s,c,g){if(s.kind!==c.kind||s.parent!==c.parent&&!(csn(s,g)&&csn(c,g)))return!1;switch(s.kind){case 173:case 175:case 178:case 179:return lg(s)===lg(c);case 268:return lsn(s,c)&&OHt(s)===OHt(c);default:return!0}}function ZHt(s){return!!(s.flags&16)}function csn(s,c){if(s.parent===void 0)return!1;let g=vN(s.parent)?s.parent.parent:s.parent;return g===c.node||k(c.additionalNodes,g)}function lsn(s,c){return!s.body||!c.body?s.body===c.body:s.body.kind===c.body.kind&&(s.body.kind!==268||lsn(s.body,c.body))}function SRs(s,c){s.additionalNodes=s.additionalNodes||[],s.additionalNodes.push(c.node),c.additionalNodes&&s.additionalNodes.push(...c.additionalNodes),s.children=Nn(s.children,c.children),s.children&&($nt(s.children,s),LHt(s.children))}function LHt(s){s.sort(vRs)}function vRs(s,c){return io(usn(s.node),usn(c.node))||Zt(qnt(s),qnt(c))}function usn(s){if(s.kind===268)return Asn(s);let c=fl(s);if(c&&PI(c)){let g=w3(c);return g&&Bc(g)}switch(s.kind){case 219:case 220:case 232:return fsn(s);default:return}}function VHt(s,c){if(s.kind===268)return hpe(Asn(s));if(c){let g=Ir(c)?c.text:Qg(c)?`[${HWe(c.argumentExpression)}]`:HWe(c);if(g.length>0)return hpe(g)}switch(s.kind){case 308:let g=s;return Lm(g)?`"${KT(dp(a0(su(g.fileName))))}"`:"";case 278:return yf(s)&&s.isExportEquals?"export=":"default";case 220:case 263:case 219:case 264:case 232:return Fx(s)&2048?"default":fsn(s);case 177:return"constructor";case 181:return"new()";case 180:return"()";case 182:return"[]";default:return""}}function BRs(s){let c=[];function g(h){if(d(h)&&(c.push(h),h.children))for(let _ of h.children)g(_)}return g(s),c;function d(h){if(h.children)return!0;switch(qnt(h)){case 264:case 232:case 267:case 265:case 268:case 308:case 266:case 347:case 339:return!0;case 220:case 263:case 219:return _(h);default:return!1}function _(S){if(!S.node.body)return!1;switch(qnt(S.parent)){case 269:case 308:case 175:case 177:return!0;default:return!1}}}}function gsn(s){return{text:VHt(s.node,s.name),kind:vQ(s.node),kindModifiers:psn(s.node),spans:WHt(s),nameSpan:s.name&&PHt(s.name),childItems:lt(s.children,gsn)}}function wRs(s){return{text:VHt(s.node,s.name),kind:vQ(s.node),kindModifiers:psn(s.node),spans:WHt(s),childItems:lt(s.children,c)||xHt,indent:s.indent,bolded:!1,grayed:!1};function c(g){return{text:VHt(g.node,g.name),kind:vQ(g.node),kindModifiers:ape(g.node),spans:WHt(g),childItems:xHt,indent:0,bolded:!1,grayed:!1}}}function WHt(s){let c=[PHt(s.node)];if(s.additionalNodes)for(let g of s.additionalNodes)c.push(PHt(g));return c}function Asn(s){return a_(s)?Fp(s.name):OHt(s)}function OHt(s){let c=[g2(s.name)];for(;s.body&&s.body.kind===268;)s=s.body,c.push(g2(s.name));return c.join(".")}function dsn(s){return s.body&&Lh(s.body)?dsn(s.body):s}function TRs(s){return!s.name||s.name.kind===168}function PHt(s){return s.kind===308?a9(s):Hy(s,U1e)}function psn(s){return s.parent&&s.parent.kind===261&&(s=s.parent),ape(s)}function fsn(s){let{parent:c}=s;if(s.name&&YJ(s.name)>0)return hpe(Md(s.name));if(nc(c))return hpe(Md(c.name));if(po(c)&&c.operatorToken.kind===64)return HWe(c.left).replace(yRs,"");if(Cm(c))return HWe(c.name);if(Fx(s)&2048)return"default";if(xa(s))return"";if(Ll(c)){let g=Isn(c.expression);if(g!==void 0){if(g=hpe(g),g.length>kHt)return`${g} callback`;let d=hpe(Xt(c.arguments,h=>CA(h)||_W(h)?h.getText(U1e):void 0).join(", "));return`${g}(${d}) callback`}}return""}function Isn(s){if(Ir(s))return s.text;if(jo(s)){let c=Isn(s.expression),g=s.name.text;return c===void 0?g:`${c}.${g}`}else return}function RRs(s){switch(s.kind){case 220:case 219:case 232:return!0;default:return!1}}function hpe(s){return s=s.length>kHt?s.substring(0,kHt)+"...":s,s.replace(/\\?(?:\r?\n|[\r\u2028\u2029])/g,"")}var tq={};o(tq,{addExportsInOldFile:()=>qHt,addImportsForMovedSymbols:()=>$Ht,addNewFileToTsconfig:()=>zHt,addOrRemoveBracesToArrowFunction:()=>SNs,addTargetFileImports:()=>cYt,containsJsx:()=>rYt,convertArrowFunctionOrFunctionExpression:()=>RNs,convertParamsToDestructuredObject:()=>ONs,convertStringOrTemplateLiteral:()=>iDs,convertToOptionalChainExpression:()=>pDs,createNewFileName:()=>tYt,doChangeNamedToNamespaceOrDefault:()=>bsn,extractSymbol:()=>pon,generateGetAccessorAndSetAccessor:()=>zDs,getApplicableRefactors:()=>NRs,getEditsForRefactor:()=>DRs,getExistingLocals:()=>oYt,getIdentifierForNode:()=>aYt,getNewStatementsAndRemoveFromOldFile:()=>jHt,getStatementsToMove:()=>j1e,getUsageInfo:()=>YWe,inferFunctionReturnType:()=>qDs,isInImport:()=>cit,isRefactorErrorInfo:()=>UF,refactorKindBeginsWith:()=>a5,registerRefactor:()=>Yx});var MHt=new Map;function Yx(s,c){MHt.set(s,c)}function NRs(s,c){return Do(Dt(MHt.values(),g=>{var d;return s.cancellationToken&&s.cancellationToken.isCancellationRequested()||!((d=g.kinds)!=null&&d.some(h=>a5(h,s.kind)))?void 0:g.getAvailableActions(s,c)}))}function DRs(s,c,g,d){let h=MHt.get(c);return h&&h.getEditsForAction(s,g,d)}var HHt="Convert export",eit={name:"Convert default export to named export",description:Bu(Z.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},tit={name:"Convert named export to default export",description:Bu(Z.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};Yx(HHt,{kinds:[eit.kind,tit.kind],getAvailableActions:function(c){let g=hsn(c,c.triggerReason==="invoked");if(!g)return E;if(!UF(g)){let d=g.wasDefault?eit:tit;return[{name:HHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:HHt,description:Bu(Z.Convert_default_export_to_named_export),actions:[{...eit,notApplicableReason:g.error},{...tit,notApplicableReason:g.error}]}]:E},getEditsForAction:function(c,g){pe.assert(g===eit.name||g===tit.name,"Unexpected action name");let d=hsn(c);return pe.assert(d&&!UF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>kRs(c.file,c.program,d,_,c.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}});function hsn(s,c=!0){let{file:g,program:d}=s,h=qz(s),_=Jc(g,h.start),S=_.parent&&Fx(_.parent)&32&&c?_.parent:L1e(_,g,h);if(!S||!al(S.parent)&&!(vN(S.parent)&&a_(S.parent.parent)))return{error:Bu(Z.Could_not_find_export_statement)};let R=d.getTypeChecker(),T=LRs(S.parent,R),O=Fx(S)||(yf(S)&&!S.isExportEquals?2080:0),V=!!(O&2048);if(!(O&32)||!V&&T.exports.has("default"))return{error:Bu(Z.This_file_already_has_a_default_export)};let M=ee=>Ir(ee)&&R.getSymbolAtLocation(ee)?void 0:{error:Bu(Z.Can_only_convert_named_export)};switch(S.kind){case 263:case 264:case 265:case 267:case 266:case 268:{let ee=S;return ee.name?M(ee.name)||{exportNode:ee,exportName:ee.name,wasDefault:V,exportingModuleSymbol:T}:void 0}case 244:{let ee=S;if(!(ee.declarationList.flags&2)||ee.declarationList.declarations.length!==1)return;let re=ma(ee.declarationList.declarations);return re.initializer?(pe.assert(!V,"Can't have a default flag here"),M(re.name)||{exportNode:ee,exportName:re.name,wasDefault:V,exportingModuleSymbol:T}):void 0}case 278:{let ee=S;return ee.isExportEquals?void 0:M(ee.expression)||{exportNode:ee,exportName:ee.expression,wasDefault:V,exportingModuleSymbol:T}}default:return}}function kRs(s,c,g,d,h){xRs(s,g,d,c.getTypeChecker()),GRs(c,g,d,h)}function xRs(s,{wasDefault:c,exportNode:g,exportName:d},h,_){if(c)if(yf(g)&&!g.isExportEquals){let S=g.expression,R=msn(S.text,S.text);h.replaceNode(s,g,me.createExportDeclaration(void 0,!1,me.createNamedExports([R])))}else h.delete(s,pe.checkDefined(sse(g,90),"Should find a default keyword in modifier list"));else{let S=pe.checkDefined(sse(g,95),"Should find an export keyword in modifier list");switch(g.kind){case 263:case 264:case 265:h.insertNodeAfter(s,S,me.createToken(90));break;case 244:let R=ma(g.declarationList.declarations);if(!zp.Core.isSymbolReferencedInFile(d,_,s)&&!R.type){h.replaceNode(s,g,me.createExportDefault(pe.checkDefined(R.initializer,"Initializer was previously known to be present")));break}case 267:case 266:case 268:h.deleteModifier(s,S),h.insertNodeAfter(s,g,me.createExportDefault(me.createIdentifier(d.text)));break;default:pe.fail(`Unexpected exportNode kind ${g.kind}`)}}}function GRs(s,{wasDefault:c,exportName:g,exportingModuleSymbol:d},h,_){let S=s.getTypeChecker(),R=pe.checkDefined(S.getSymbolAtLocation(g),"Export name should resolve to a symbol");zp.Core.eachExportReference(s.getSourceFiles(),S,_,R,d,g.text,c,T=>{if(g===T)return;let O=T.getSourceFile();c?FRs(O,T,h,g.text):ZRs(O,T,h)})}function FRs(s,c,g,d){let{parent:h}=c;switch(h.kind){case 212:g.replaceNode(s,c,me.createIdentifier(d));break;case 277:case 282:{let S=h;g.replaceNode(s,S,YHt(d,S.name.text));break}case 274:{let S=h;pe.assert(S.name===c,"Import clause name should match provided ref");let R=YHt(d,c.text),{namedBindings:T}=S;if(!T)g.replaceNode(s,c,me.createNamedImports([R]));else if(T.kind===275){g.deleteRange(s,{pos:c.getStart(s),end:T.getStart(s)});let O=Lg(S.parent.moduleSpecifier)?cnt(S.parent.moduleSpecifier,s):1,V=$W(void 0,[YHt(d,c.text)],S.parent.moduleSpecifier,O);g.insertNodeAfter(s,S.parent,V)}else g.delete(s,c),g.insertNodeAtEndOfList(s,T.elements,R);break}case 206:let _=h;g.replaceNode(s,h,me.createImportTypeNode(_.argument,_.attributes,me.createIdentifier(d),_.typeArguments,_.isTypeOf));break;default:pe.failBadSyntaxKind(h)}}function ZRs(s,c,g){let d=c.parent;switch(d.kind){case 212:g.replaceNode(s,c,me.createIdentifier("default"));break;case 277:{let h=me.createIdentifier(d.name.text);d.parent.elements.length===1?g.replaceNode(s,d.parent,h):(g.delete(s,d),g.insertNodeBefore(s,d.parent,h));break}case 282:{g.replaceNode(s,d,msn("default",d.name.text));break}default:pe.assertNever(d,`Unexpected parent kind ${d.kind}`)}}function YHt(s,c){return me.createImportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function msn(s,c){return me.createExportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function LRs(s,c){if(al(s))return s.symbol;let g=s.parent.symbol;return g.valueDeclaration&&BF(g.valueDeclaration)?c.getMergedSymbol(g):g}var QHt="Convert import",rit={0:{name:"Convert namespace import to named imports",description:Bu(Z.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:Bu(Z.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:Bu(Z.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};Yx(QHt,{kinds:Kh(rit).map(s=>s.kind),getAvailableActions:function(c){let g=Csn(c,c.triggerReason==="invoked");if(!g)return E;if(!UF(g)){let d=rit[g.convertTo];return[{name:QHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?Kh(rit).map(d=>({name:QHt,description:d.description,actions:[{...d,notApplicableReason:g.error}]})):E},getEditsForAction:function(c,g){pe.assert(zt(Kh(rit),_=>_.name===g),"Unexpected action name");let d=Csn(c);return pe.assert(d&&!UF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>VRs(c.file,c.program,_,d)),renameFilename:void 0,renameLocation:void 0}}});function Csn(s,c=!0){let{file:g}=s,d=qz(s),h=Jc(g,d.start),_=c?ji(h,Qp(Yf,RN)):L1e(h,g,d);if(_===void 0||!(Yf(_)||RN(_)))return{error:"Selection is not an import declaration."};let S=d.start+d.length,R=BQ(_,_.parent,g);if(R&&S>R.getStart())return;let{importClause:T}=_;return T?T.namedBindings?T.namedBindings.kind===275?{convertTo:0,import:T.namedBindings}:_sn(s.program,T)?{convertTo:1,import:T.namedBindings}:{convertTo:2,import:T.namedBindings}:{error:Bu(Z.Could_not_find_namespace_import_or_named_imports)}:{error:Bu(Z.Could_not_find_import_clause)}}function _sn(s,c){return iQ(s.getCompilerOptions())&&PRs(c.parent.moduleSpecifier,s.getTypeChecker())}function VRs(s,c,g,d){let h=c.getTypeChecker();d.convertTo===0?WRs(s,h,g,d.import,iQ(c.getCompilerOptions())):bsn(s,c,g,d.import,d.convertTo===1)}function WRs(s,c,g,d,h){let _=!1,S=[],R=new Map;zp.Core.eachSymbolReferenceInFile(d.name,c,s,M=>{if(!LJ(M.parent))_=!0;else{let ee=ysn(M.parent).text;c.resolveName(ee,M,-1,!0)&&R.set(ee,!0),pe.assert(ORs(M.parent)===M,"Parent expression should match id"),S.push(M.parent)}});let T=new Map;for(let M of S){let ee=ysn(M).text,re=T.get(ee);re===void 0&&T.set(ee,re=R.has(ee)?JU(ee,s):ee),g.replaceNode(s,M,me.createIdentifier(re))}let O=[];T.forEach((M,ee)=>{O.push(me.createImportSpecifier(!1,M===ee?void 0:me.createIdentifier(ee),me.createIdentifier(M)))});let V=d.parent.parent;if(_&&!h&&Yf(V))g.insertNodeAfter(s,V,Esn(V,void 0,O));else{let M=_?me.createIdentifier(d.name.text):void 0;g.replaceNode(s,d.parent,Ssn(M,O))}}function ysn(s){return jo(s)?s.name:s.right}function ORs(s){return jo(s)?s.expression:s.left}function bsn(s,c,g,d,h=_sn(c,d.parent)){let _=c.getTypeChecker(),S=d.parent.parent,{moduleSpecifier:R}=S,T=new Set;d.elements.forEach(ge=>{let Ie=_.getSymbolAtLocation(ge.name);Ie&&T.add(Ie)});let O=R&&Lg(R)?Y1e(R.text,99):"module";function V(ge){return!!zp.Core.eachSymbolReferenceInFile(ge.name,_,s,Ie=>{let _e=_.resolveName(O,Ie,-1,!0);return _e?T.has(_e)?D0(Ie.parent):!0:!1})}let ee=d.elements.some(V)?JU(O,s):O,re=new Set;for(let ge of d.elements){let Ie=ge.propertyName||ge.name;zp.Core.eachSymbolReferenceInFile(ge.name,_,s,_e=>{let Ee=Ie.kind===11?me.createElementAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie)):me.createPropertyAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie));l0(_e.parent)?g.replaceNode(s,_e.parent,me.createPropertyAssignment(_e.text,Ee)):D0(_e.parent)?re.add(ge):g.replaceNode(s,_e,Ee)})}if(g.replaceNode(s,d,h?me.createIdentifier(ee):me.createNamespaceImport(me.createIdentifier(ee))),re.size&&Yf(S)){let ge=Do(re.values(),Ie=>me.createImportSpecifier(Ie.isTypeOnly,Ie.propertyName&&me.cloneNode(Ie.propertyName),me.cloneNode(Ie.name)));g.insertNodeAfter(s,d.parent.parent,Esn(S,void 0,ge))}}function PRs(s,c){let g=c.resolveExternalModuleName(s);if(!g)return!1;let d=c.resolveExternalModuleSymbol(g);return g!==d}function Esn(s,c,g){return me.createImportDeclaration(void 0,Ssn(c,g),s.moduleSpecifier,void 0)}function Ssn(s,c){return me.createImportClause(void 0,s,c&&c.length?me.createNamedImports(c):void 0)}var XHt="Extract type",nit={name:"Extract to type alias",description:Bu(Z.Extract_to_type_alias),kind:"refactor.extract.type"},iit={name:"Extract to interface",description:Bu(Z.Extract_to_interface),kind:"refactor.extract.interface"},sit={name:"Extract to typedef",description:Bu(Z.Extract_to_typedef),kind:"refactor.extract.typedef"};Yx(XHt,{kinds:[nit.kind,iit.kind,sit.kind],getAvailableActions:function(c){let{info:g,affectedTextRange:d}=vsn(c,c.triggerReason==="invoked");return g?UF(g)?c.preferences.provideRefactorNotApplicableReason?[{name:XHt,description:Bu(Z.Extract_type),actions:[{...sit,notApplicableReason:g.error},{...nit,notApplicableReason:g.error},{...iit,notApplicableReason:g.error}]}]:E:[{name:XHt,description:Bu(Z.Extract_type),actions:g.isJS?[sit]:Ft([nit],g.typeElements&&iit)}].map(_=>({..._,actions:_.actions.map(S=>({...S,range:d?{start:{line:Ra(c.file,d.pos).line,offset:Ra(c.file,d.pos).character},end:{line:Ra(c.file,d.end).line,offset:Ra(c.file,d.end).character}}:void 0}))})):E},getEditsForAction:function(c,g){let{file:d}=c,{info:h}=vsn(c);pe.assert(h&&!UF(h),"Expected to find a range to extract");let _=JU("NewType",d),S=xo.ChangeTracker.with(c,O=>{switch(g){case nit.name:return pe.assert(!h.isJS,"Invalid actionName/JS combo"),YRs(O,d,_,h);case sit.name:return pe.assert(h.isJS,"Invalid actionName/JS combo"),XRs(O,c,d,_,h);case iit.name:return pe.assert(!h.isJS&&!!h.typeElements,"Invalid actionName/JS combo"),QRs(O,d,_,h);default:pe.fail("Unexpected action name")}}),R=d.fileName,T=W1e(S,R,_,!1);return{edits:S,renameFilename:R,renameLocation:T}}});function vsn(s,c=!0){let{file:g,startPosition:d}=s,h=s0(g),_=pWe(qz(s)),S=_.pos===_.end&&c,R=MRs(g,d,_,S);if(!R||!uc(R))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let T=s.program.getTypeChecker(),O=JRs(R,h);if(O===void 0)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let V=URs(R,O);if(!uc(V))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let M=[];(gS(V.parent)||_f(V.parent))&&_.end>R.end&&Pr(M,V.parent.types.filter(_e=>sWe(_e,g,_.pos,_.end)));let ee=M.length>1?M:V,{typeParameters:re,affectedTextRange:ge}=HRs(T,ee,O,g);if(!re)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let Ie=oit(T,ee);return{info:{isJS:h,selection:ee,enclosingNode:O,typeParameters:re,typeElements:Ie},affectedTextRange:ge}}function MRs(s,c,g,d){let h=[()=>Jc(s,c),()=>nse(s,c,()=>!0)];for(let _ of h){let S=_(),R=sWe(S,s,g.pos,g.end),T=ji(S,O=>O.parent&&uc(O)&&!NQ(g,O.parent,s)&&(d||R));if(T)return T}}function oit(s,c){if(c){if(Ki(c)){let g=[];for(let d of c){let h=oit(s,d);if(!h)return;Pr(g,h)}return g}if(_f(c)){let g=[],d=new Set;for(let h of c.types){let _=oit(s,h);if(!_||!_.every(S=>S.name&&Vy(d,F1e(S.name))))return;Pr(g,_)}return g}else{if(Cv(c))return oit(s,c.type);if(bh(c))return c.members}}}function NQ(s,c,g){return N1e(s,Yu(g.text,c.pos),c.end)}function HRs(s,c,g,d){let h=[],_=cc(c),S={pos:_[0].getStart(d),end:_[_.length-1].end};for(let T of _)if(R(T))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:h,affectedTextRange:S};function R(T){if(oh(T)){if(Ir(T.typeName)){let O=T.typeName,V=s.resolveName(O.text,O,262144,!0);for(let M of V?.declarations||E)if(Ds(M)&&M.getSourceFile()===d){if(M.name.escapedText===O.escapedText&&NQ(M,S,d))return!0;if(NQ(g,M,d)&&!NQ(S,M,d)){Qi(h,M);break}}}}else if(tR(T)){let O=ji(T,V=>I2(V)&&NQ(V.extendsType,T,d));if(!O||!NQ(S,O,d))return!0}else if(vE(T)||Ox(T)){let O=ji(T.parent,Eu);if(O&&O.type&&NQ(O.type,T,d)&&!NQ(S,O,d))return!0}else if(Ow(T)){if(Ir(T.exprName)){let O=s.resolveName(T.exprName.text,T.exprName,111551,!1);if(O?.valueDeclaration&&NQ(g,O.valueDeclaration,d)&&!NQ(S,O.valueDeclaration,d))return!0}else if(DF(T.exprName.left)&&!NQ(S,T.parent,d))return!0}return d&&Pw(T)&&Ra(d,T.pos).line===Ra(d,T.end).line&&ti(T,1),Lu(T,R)}}function YRs(s,c,g,d){let{enclosingNode:h,typeParameters:_}=d,{firstTypeNode:S,lastTypeNode:R,newTypeNode:T}=JHt(d),O=me.createTypeAliasDeclaration(void 0,g,_.map(V=>me.updateTypeParameterDeclaration(V,V.modifiers,V.name,V.constraint,void 0)),T);s.insertNodeBefore(c,h,yEe(O),!0),s.replaceNodeRange(c,S,R,me.createTypeReferenceNode(g,_.map(V=>me.createTypeReferenceNode(V.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function QRs(s,c,g,d){var h;let{enclosingNode:_,typeParameters:S,typeElements:R}=d,T=me.createInterfaceDeclaration(void 0,g,S,void 0,R);gn(T,(h=R[0])==null?void 0:h.parent),s.insertNodeBefore(c,_,yEe(T),!0);let{firstTypeNode:O,lastTypeNode:V}=JHt(d);s.replaceNodeRange(c,O,V,me.createTypeReferenceNode(g,S.map(M=>me.createTypeReferenceNode(M.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function XRs(s,c,g,d,h){var _;cc(h.selection).forEach(ge=>{ti(ge,7168)});let{enclosingNode:S,typeParameters:R}=h,{firstTypeNode:T,lastTypeNode:O,newTypeNode:V}=JHt(h),M=me.createJSDocTypedefTag(me.createIdentifier("typedef"),me.createJSDocTypeExpression(V),me.createIdentifier(d)),ee=[];F(R,ge=>{let Ie=u3(ge),_e=me.createTypeParameterDeclaration(void 0,ge.name),Ee=me.createJSDocTemplateTag(me.createIdentifier("template"),Ie&&Ma(Ie,J3),[_e]);ee.push(Ee)});let re=me.createJSDocComment(void 0,me.createNodeArray(Nn(ee,[M])));if(oR(S)){let ge=S.getStart(g),Ie=JF(c.host,(_=c.formatContext)==null?void 0:_.options);s.insertNodeAt(g,S.getStart(g),re,{suffix:Ie+Ie+g.text.slice(bWe(g.text,ge-1),ge)})}else s.insertNodeBefore(g,S,re,!0);s.replaceNodeRange(g,T,O,me.createTypeReferenceNode(d,R.map(ge=>me.createTypeReferenceNode(ge.name,void 0))))}function JHt(s){return Ki(s.selection)?{firstTypeNode:s.selection[0],lastTypeNode:s.selection[s.selection.length-1],newTypeNode:gS(s.selection[0].parent)?me.createUnionTypeNode(s.selection):me.createIntersectionTypeNode(s.selection)}:{firstTypeNode:s.selection,lastTypeNode:s.selection,newTypeNode:s.selection}}function JRs(s,c){return ji(s,Lc)||(c?ji(s,oR):void 0)}function URs(s,c){return ji(s,g=>g===c?"quit":!!(gS(g.parent)||_f(g.parent)))??s}var ait="Move to file",UHt=Bu(Z.Move_to_file),KHt={name:"Move to file",description:UHt,kind:"refactor.move.file"};Yx(ait,{kinds:[KHt.kind],getAvailableActions:function(c,g){let d=c.file,h=j1e(c);if(!g)return E;if(c.triggerReason==="implicit"&&c.endPosition!==void 0){let _=ji(Jc(d,c.startPosition),$z),S=ji(Jc(d,c.endPosition),$z);if(_&&!al(_)&&S&&!al(S))return E}if(c.preferences.allowTextChangesInNewFiles&&h){let _={start:{line:Ra(d,h.all[0].getStart(d)).line,offset:Ra(d,h.all[0].getStart(d)).character},end:{line:Ra(d,Ei(h.all).end).line,offset:Ra(d,Ei(h.all).end).character}};return[{name:ait,description:UHt,actions:[{...KHt,range:_}]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:ait,description:UHt,actions:[{...KHt,notApplicableReason:Bu(Z.Selection_is_not_a_valid_statement_or_statements)}]}]:E},getEditsForAction:function(c,g,d){pe.assert(g===ait,"Wrong refactor invoked");let h=pe.checkDefined(j1e(c)),{host:_,program:S}=c;pe.assert(d,"No interactive refactor arguments available");let R=d.targetFile;return CN(R)||G3(R)?_.fileExists(R)&&S.getSourceFile(R)===void 0?Bsn(Bu(Z.Cannot_move_statements_to_the_selected_file)):{edits:xo.ChangeTracker.with(c,O=>KRs(c,c.file,d.targetFile,c.program,h,O,c.host,c.preferences)),renameFilename:void 0,renameLocation:void 0}:Bsn(Bu(Z.Cannot_move_to_file_selected_file_is_invalid))}});function Bsn(s){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:s}}function KRs(s,c,g,d,h,_,S,R){let T=d.getTypeChecker(),O=!S.fileExists(g),V=O?ZWe(g,c.externalModuleIndicator?99:c.commonJsModuleIndicator?1:void 0,d,S):pe.checkDefined(d.getSourceFile(g)),M=F0.createImportAdder(c,s.program,s.preferences,s.host),ee=F0.createImportAdder(V,s.program,s.preferences,s.host);jHt(c,V,YWe(c,h.all,T,O?void 0:oYt(V,h.all,T)),_,h,d,S,R,ee,M),O&&zHt(d,_,c.fileName,g,qD(S))}function jHt(s,c,g,d,h,_,S,R,T,O){let V=_.getTypeChecker(),M=n_(s.statements,aS),ee=!Gnt(c.fileName,_,S,!!s.commonJsModuleIndicator),re=E1(s,R);$Ht(g.oldFileImportsFromTargetFile,c.fileName,O,_),zRs(s,h.all,g.unusedImportsFromOldFile,O),O.writeFixes(d,re),jRs(s,h.ranges,d),qRs(d,_,S,s,g.movedSymbols,c.fileName,re),qHt(s,g.targetFileImportsFromOldFile,d,ee),cYt(s,g.oldImportsNeededByTargetFile,g.targetFileImportsFromOldFile,V,_,T),!AN(c)&&M.length&&d.insertStatementsInNewFile(c.fileName,M,s),T.writeFixes(d,re);let ge=iNs(s,h.all,Do(g.oldFileImportsFromTargetFile.keys()),ee);AN(c)&&c.statements.length>0?_Ns(d,_,ge,c,h):AN(c)?d.insertNodesAtEndOfFile(c,ge,!1):d.insertStatementsInNewFile(c.fileName,T.hasFixes()?[4,...ge]:ge,s)}function zHt(s,c,g,d,h){let _=s.getCompilerOptions().configFile;if(!_)return;let S=su(Ro(g,"..",d)),R=a1(_.fileName,S,h),T=_.statements[0]&&Gs(_.statements[0].expression,ag),O=T&&de(T.properties,V=>Cm(V)&&Lg(V.name)&&V.name.text==="files");O&&YI(O.initializer)&&c.insertNodeInListAfter(_,Ei(O.initializer.elements),me.createStringLiteral(R),O.initializer.elements)}function jRs(s,c,g){for(let{first:d,afterLast:h}of c)g.deleteNodeRangeExcludingEnd(s,d,h)}function zRs(s,c,g,d){for(let h of s.statements)k(c,h)||Tsn(h,_=>{Rsn(_,S=>{g.has(S.symbol)&&d.removeExistingImport(S)})})}function qHt(s,c,g,d){let h=ise();c.forEach((_,S)=>{if(S.declarations)for(let R of S.declarations){if(!sYt(R))continue;let T=ANs(R);if(!T)continue;let O=xsn(R);h(O)&&dNs(s,O,T,g,d)}})}function qRs(s,c,g,d,h,_,S){let R=c.getTypeChecker();for(let T of c.getSourceFiles())if(T!==d)for(let O of T.statements)Tsn(O,V=>{if(R.getSymbolAtLocation(rNs(V))!==d.symbol)return;let M=_e=>{let Ee=mg(_e.parent)?_We(R,_e.parent):LC(R.getSymbolAtLocation(_e),R);return!!Ee&&h.has(Ee)};sNs(T,V,s,M);let ee=fE(Mo(Xc(d.fileName,c.getCurrentDirectory())),_);if(gd(!c.useCaseSensitiveFileNames())(ee,T.fileName)===0)return;let re=XF.getModuleSpecifier(c.getCompilerOptions(),T,T.fileName,ee,i5(c,g)),ge=lNs(V,lpe(re,S),M);ge&&s.insertNodeAfter(T,O,ge);let Ie=$Rs(V);Ie&&eNs(s,T,R,h,re,Ie,V,S)})}function $Rs(s){switch(s.kind){case 273:return s.importClause&&s.importClause.namedBindings&&s.importClause.namedBindings.kind===275?s.importClause.namedBindings.name:void 0;case 272:return s.name;case 261:return Gs(s.name,Ir);default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function eNs(s,c,g,d,h,_,S,R){let T=Y1e(h,99),O=!1,V=[];if(zp.Core.eachSymbolReferenceInFile(_,g,c,M=>{jo(M.parent)&&(O=O||!!g.resolveName(T,M,-1,!0),d.has(g.getSymbolAtLocation(M.parent.name))&&V.push(M))}),V.length){let M=O?JU(T,c):T;for(let ee of V)s.replaceNode(c,ee,me.createIdentifier(M));s.insertNodeAfter(c,S,tNs(S,T,h,R))}}function tNs(s,c,g,d){let h=me.createIdentifier(c),_=lpe(g,d);switch(s.kind){case 273:return me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamespaceImport(h)),_,void 0);case 272:return me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(_));case 261:return me.createVariableDeclaration(h,void 0,void 0,wsn(_));default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function wsn(s){return me.createCallExpression(me.createIdentifier("require"),void 0,[s])}function rNs(s){return s.kind===273?s.moduleSpecifier:s.kind===272?s.moduleReference.expression:s.initializer.arguments[0]}function Tsn(s,c){if(Yf(s))Lg(s.moduleSpecifier)&&c(s);else if(Zm(s))MF(s.moduleReference)&&CA(s.moduleReference.expression)&&c(s);else if(Eh(s))for(let g of s.declarationList.declarations)g.initializer&&ly(g.initializer,!0)&&c(g)}function Rsn(s,c){var g,d,h,_,S;if(s.kind===273){if((g=s.importClause)!=null&&g.name&&c(s.importClause),((h=(d=s.importClause)==null?void 0:d.namedBindings)==null?void 0:h.kind)===275&&c(s.importClause.namedBindings),((S=(_=s.importClause)==null?void 0:_.namedBindings)==null?void 0:S.kind)===276)for(let R of s.importClause.namedBindings.elements)c(R)}else if(s.kind===272)c(s);else if(s.kind===261){if(s.name.kind===80)c(s);else if(s.name.kind===207)for(let R of s.name.elements)Ir(R.name)&&c(R)}}function $Ht(s,c,g,d){for(let[h,_]of s){let S=DWe(h,Hg(d.getCompilerOptions())),R=h.name==="default"&&h.parent?1:0;g.addImportForNonExistentExport(S,c,R,h.flags,_)}}function nNs(s,c,g,d=2){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(s,void 0,c,g)],d))}function iNs(s,c,g,d){return jt(c,h=>{if(Dsn(h)&&!Nsn(s,h,d)&&iYt(h,_=>{var S;return g.includes(pe.checkDefined((S=Gs(_,yE))==null?void 0:S.symbol))})){let _=oNs(KA(h),d);if(_)return _}return KA(h)})}function Nsn(s,c,g,d){var h;return g?!OC(c)&&Ga(c,32)||!!(d&&s.symbol&&((h=s.symbol.exports)!=null&&h.has(d.escapedText))):!!s.symbol&&!!s.symbol.exports&&eYt(c).some(_=>s.symbol.exports.has(pp(_)))}function sNs(s,c,g,d){if(c.kind===273&&c.importClause){let{name:h,namedBindings:_}=c.importClause;if((!h||d(h))&&(!_||_.kind===276&&_.elements.length!==0&&_.elements.every(S=>d(S.name))))return g.delete(s,c)}Rsn(c,h=>{h.name&&Ir(h.name)&&d(h.name)&&g.delete(s,h)})}function Dsn(s){return pe.assert(al(s.parent),"Node parent should be a SourceFile"),Zsn(s)||Eh(s)}function oNs(s,c){return c?[aNs(s)]:cNs(s)}function aNs(s){let c=MB(s)?Nn([me.createModifier(95)],iN(s)):void 0;switch(s.kind){case 263:return me.updateFunctionDeclaration(s,c,s.asteriskToken,s.name,s.typeParameters,s.parameters,s.type,s.body);case 264:let g=hQ(s)?Db(s):void 0;return me.updateClassDeclaration(s,Nn(g,c),s.name,s.typeParameters,s.heritageClauses,s.members);case 244:return me.updateVariableStatement(s,c,s.declarationList);case 268:return me.updateModuleDeclaration(s,c,s.name,s.body);case 267:return me.updateEnumDeclaration(s,c,s.name,s.members);case 266:return me.updateTypeAliasDeclaration(s,c,s.name,s.typeParameters,s.type);case 265:return me.updateInterfaceDeclaration(s,c,s.name,s.typeParameters,s.heritageClauses,s.members);case 272:return me.updateImportEqualsDeclaration(s,c,s.isTypeOnly,s.name,s.moduleReference);case 245:return pe.fail();default:return pe.assertNever(s,`Unexpected declaration kind ${s.kind}`)}}function cNs(s){return[s,...eYt(s).map(ksn)]}function ksn(s){return me.createExpressionStatement(me.createBinaryExpression(me.createPropertyAccessExpression(me.createIdentifier("exports"),me.createIdentifier(s)),64,me.createIdentifier(s)))}function eYt(s){switch(s.kind){case 263:case 264:return[s.name.text];case 244:return Xt(s.declarationList.declarations,c=>Ir(c.name)?c.name.text:void 0);case 268:case 267:case 266:case 265:case 272:return E;case 245:return pe.fail("Can't export an ExpressionStatement");default:return pe.assertNever(s,`Unexpected decl kind ${s.kind}`)}}function lNs(s,c,g){switch(s.kind){case 273:{let d=s.importClause;if(!d)return;let h=d.name&&g(d.name)?d.name:void 0,_=d.namedBindings&&uNs(d.namedBindings,g);return h||_?me.createImportDeclaration(void 0,me.createImportClause(d.phaseModifier,h,_),KA(c),void 0):void 0}case 272:return g(s.name)?s:void 0;case 261:{let d=gNs(s.name,g);return d?nNs(d,s.type,wsn(c),s.parent.flags):void 0}default:return pe.assertNever(s,`Unexpected import kind ${s.kind}`)}}function uNs(s,c){if(s.kind===275)return c(s.name)?s:void 0;{let g=s.elements.filter(d=>c(d.name));return g.length?me.createNamedImports(g):void 0}}function gNs(s,c){switch(s.kind){case 80:return c(s)?s:void 0;case 208:return s;case 207:{let g=s.elements.filter(d=>d.propertyName||!Ir(d.name)||c(d.name));return g.length?me.createObjectBindingPattern(g):void 0}}}function ANs(s){return OC(s)?Gs(s.expression.left.name,Ir):Gs(s.name,Ir)}function xsn(s){switch(s.kind){case 261:return s.parent.parent;case 209:return xsn(Ma(s.parent.parent,c=>nc(c)||mg(c)));default:return s}}function dNs(s,c,g,d,h){if(!Nsn(s,c,h,g))if(h)OC(c)||d.insertExportModifier(s,c);else{let _=eYt(c);_.length!==0&&d.insertNodesAfter(s,c,_.map(ksn))}}function tYt(s,c,g,d){let h=c.getTypeChecker();if(d){let _=YWe(s,d.all,h),S=Mo(s.fileName),R=fz(s.fileName);return Ro(S,hNs(mNs(_.oldFileImportsFromTargetFile,_.movedSymbols),R,S,g))+R}return""}function pNs(s){let{file:c}=s,g=pWe(qz(s)),{statements:d}=c,h=Se(d,O=>O.end>g.pos);if(h===-1)return;let _=d[h],S=Lsn(c,_);S&&(h=S.start);let R=Se(d,O=>O.end>=g.end,h);R!==-1&&g.end<=d[R].getStart()&&R--;let T=Lsn(c,d[R]);return T&&(R=T.end),{toMove:d.slice(h,R===-1?d.length:R+1),afterLast:R===-1?void 0:d[R+1]}}function j1e(s){let c=pNs(s);if(c===void 0)return;let g=[],d=[],{toMove:h,afterLast:_}=c;return Fn(h,fNs,(S,R)=>{for(let T=S;T!!(c.transformFlags&2))}function fNs(s){return!INs(s)&&!aS(s)}function INs(s){switch(s.kind){case 273:return!0;case 272:return!Ga(s,32);case 244:return s.declarationList.declarations.every(c=>!!c.initializer&&ly(c.initializer,!0));default:return!1}}function YWe(s,c,g,d=new Set,h){var _;let S=new Set,R=new Map,T=new Map,O=ee(rYt(c));O&&R.set(O,[!1,Gs((_=O.declarations)==null?void 0:_[0],re=>Ay(re)||Hw(re)||Px(re)||Zm(re)||mg(re)||nc(re))]);for(let re of c)iYt(re,ge=>{S.add(pe.checkDefined(OC(ge)?g.getSymbolAtLocation(ge.expression.left):ge.symbol,"Need a symbol here"))});let V=new Set;for(let re of c)nYt(re,g,h,(ge,Ie)=>{if(!zt(ge.declarations))return;if(d.has(LC(ge,g))){V.add(ge);return}let _e=de(ge.declarations,cit);if(_e){let Ee=R.get(ge);R.set(ge,[(Ee===void 0||Ee)&&Ie,Gs(_e,Ne=>Ay(Ne)||Hw(Ne)||Px(Ne)||Zm(Ne)||mg(Ne)||nc(Ne))])}else!S.has(ge)&&ue(ge.declarations,Ee=>sYt(Ee)&&CNs(Ee)===s)&&T.set(ge,Ie)});for(let re of R.keys())V.add(re);let M=new Map;for(let re of s.statements)k(c,re)||(O&&re.transformFlags&2&&V.delete(O),nYt(re,g,h,(ge,Ie)=>{S.has(ge)&&M.set(ge,Ie),V.delete(ge)}));return{movedSymbols:S,targetFileImportsFromOldFile:T,oldFileImportsFromTargetFile:M,oldImportsNeededByTargetFile:R,unusedImportsFromOldFile:V};function ee(re){if(re===void 0)return;let ge=g.getJsxNamespace(re),Ie=g.resolveName(ge,re,1920,!0);return Ie&&zt(Ie.declarations,cit)?Ie:void 0}}function hNs(s,c,g,d){let h=s;for(let _=1;;_++){let S=Ro(g,h+c);if(!d.fileExists(S))return h;h=`${s}.${_}`}}function mNs(s,c){return RB(s,unt)||RB(c,unt)||"newFile"}function nYt(s,c,g,d){s.forEachChild(function h(_){if(Ir(_)&&!UT(_)){if(g&&!uy(g,_))return;let S=c.getSymbolAtLocation(_);S&&d(S,$L(_))}else _.forEachChild(h)})}function iYt(s,c){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return c(s);case 244:return J(s.declarationList.declarations,g=>Fsn(g.name,c));case 245:{let{expression:g}=s;return po(g)&&oI(g)===1?c(s):void 0}}}function cit(s){switch(s.kind){case 272:case 277:case 274:case 275:return!0;case 261:return Gsn(s);case 209:return nc(s.parent.parent)&&Gsn(s.parent.parent);default:return!1}}function Gsn(s){return al(s.parent.parent.parent)&&!!s.initializer&&ly(s.initializer,!0)}function sYt(s){return Zsn(s)&&al(s.parent)||nc(s)&&al(s.parent.parent.parent)}function CNs(s){return nc(s)?s.parent.parent.parent:s.parent}function Fsn(s,c){switch(s.kind){case 80:return c(Ma(s.parent,g=>nc(g)||mg(g)));case 208:case 207:return J(s.elements,g=>Ep(g)?void 0:Fsn(g.name,c));default:return pe.assertNever(s,`Unexpected name kind ${s.kind}`)}}function Zsn(s){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return!0;default:return!1}}function _Ns(s,c,g,d,h){var _;let S=new Set,R=(_=d.symbol)==null?void 0:_.exports;if(R){let O=c.getTypeChecker(),V=new Map;for(let M of h.all)Dsn(M)&&Ga(M,32)&&iYt(M,ee=>{var re;let ge=yE(ee)?(re=R.get(ee.symbol.escapedName))==null?void 0:re.declarations:void 0,Ie=J(ge,_e=>Vh(_e)?_e:D0(_e)?Gs(_e.parent.parent,Vh):void 0);Ie&&Ie.moduleSpecifier&&V.set(Ie,(V.get(Ie)||new Set).add(ee))});for(let[M,ee]of Do(V))if(M.exportClause&&bv(M.exportClause)&&B(M.exportClause.elements)){let re=M.exportClause.elements,ge=Le(re,Ie=>de(LC(Ie.symbol,O).declarations,_e=>sYt(_e)&&ee.has(_e))===void 0);if(B(ge)===0){s.deleteNode(d,M),S.add(M);continue}B(ge)Vh(O)&&!!O.moduleSpecifier&&!S.has(O));T?s.insertNodesBefore(d,T,g,!0):s.insertNodesAfter(d,d.statements[d.statements.length-1],g)}function Lsn(s,c){if(Gd(c)){let g=c.symbol.declarations;if(g===void 0||B(g)<=1||!k(g,c))return;let d=g[0],h=g[B(g)-1],_=Xt(g,T=>ms(T)===s&&Lc(T)?T:void 0),S=Se(s.statements,T=>T.end>=h.end),R=Se(s.statements,T=>T.end>=d.end);return{toMove:_,start:R,end:S}}}function oYt(s,c,g){let d=new Set;for(let h of s.imports){let _=W7(h);if(Yf(_)&&_.importClause&&_.importClause.namedBindings&&BN(_.importClause.namedBindings))for(let S of _.importClause.namedBindings.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(LC(R,g))}if(F7(_.parent)&&$m(_.parent.name))for(let S of _.parent.name.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(LC(R,g))}}for(let h of c)nYt(h,g,void 0,_=>{let S=LC(_,g);S.valueDeclaration&&ms(S.valueDeclaration).path===s.path&&d.add(S)});return d}function UF(s){return s.error!==void 0}function a5(s,c){return c?s.substr(0,c.length)===c:!0}function aYt(s,c,g,d){return jo(s)&&!xa(c)&&!g.resolveName(s.name.text,s,111551,!1)&&!p(s.name)&&!cv(s.name)?s.name.text:JU(xa(c)?"newProperty":"newLocal",d)}function cYt(s,c,g,d,h,_){c.forEach(([S,R],T)=>{var O;let V=LC(T,d);d.isUnknownSymbol(V)?_.addVerbatimImport(pe.checkDefined(R??ji((O=T.declarations)==null?void 0:O[0],w7))):V.parent===void 0?(pe.assert(R!==void 0,"expected module symbol to have a declaration"),_.addImportForModuleSymbol(T,S,R)):_.addImportFromExportedSymbol(V,S,R)}),$Ht(g,s.fileName,_,h)}var QWe="Inline variable",lYt=Bu(Z.Inline_variable),uYt={name:QWe,description:lYt,kind:"refactor.inline.variable"};Yx(QWe,{kinds:[uYt.kind],getAvailableActions(s){let{file:c,program:g,preferences:d,startPosition:h,triggerReason:_}=s,S=Vsn(c,h,_==="invoked",g);return S?tq.isRefactorErrorInfo(S)?d.provideRefactorNotApplicableReason?[{name:QWe,description:lYt,actions:[{...uYt,notApplicableReason:S.error}]}]:E:[{name:QWe,description:lYt,actions:[uYt]}]:E},getEditsForAction(s,c){pe.assert(c===QWe,"Unexpected refactor invoked");let{file:g,program:d,startPosition:h}=s,_=Vsn(g,h,!0,d);if(!_||tq.isRefactorErrorInfo(_))return;let{references:S,declaration:R,replacement:T}=_;return{edits:xo.ChangeTracker.with(s,V=>{for(let M of S){let ee=Lg(T)&&Ir(M)&&fv(M.parent);ee&&wie(ee)&&!QI(ee.parent.parent)?bNs(V,g,ee,T):V.replaceNode(g,M,yNs(M,T))}V.delete(g,R)})}}});function Vsn(s,c,g,d){var h,_;let S=d.getTypeChecker(),R=Wb(s,c),T=R.parent;if(Ir(R)){if(Jne(T)&&D7(T)&&Ir(T.name)){if(((h=S.getMergedSymbol(T.symbol).declarations)==null?void 0:h.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};if(Wsn(T))return;let O=Osn(T,S,s);return O&&{references:O,declaration:T,replacement:T.initializer}}if(g){let O=S.resolveName(R.text,R,111551,!1);if(O=O&&S.getMergedSymbol(O),((_=O?.declarations)==null?void 0:_.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};let V=O.declarations[0];if(!Jne(V)||!D7(V)||!Ir(V.name)||Wsn(V))return;let M=Osn(V,S,s);return M&&{references:M,declaration:V,replacement:V.initializer}}return{error:Bu(Z.Could_not_find_variable_to_inline)}}}function Wsn(s){let c=Ma(s.parent.parent,Eh);return zt(c.modifiers,y)}function Osn(s,c,g){let d=[],h=zp.Core.eachSymbolReferenceInFile(s.name,c,g,_=>{if(zp.isWriteAccessForReference(_)&&!l0(_.parent)||D0(_.parent)||yf(_.parent)||Ow(_.parent)||nl(s,_.pos))return!0;d.push(_)});return d.length===0||h?void 0:d}function yNs(s,c){c=KA(c);let{parent:g}=s;return un(g)&&(J7(c)ENs(c.file,c.program,d,_,c.host,c,c.preferences)),renameFilename:void 0,renameLocation:void 0}}});function ENs(s,c,g,d,h,_,S){let R=c.getTypeChecker(),T=YWe(s,g.all,R),O=tYt(s,c,h,g),V=ZWe(O,s.externalModuleIndicator?99:s.commonJsModuleIndicator?1:void 0,c,h),M=F0.createImportAdder(s,_.program,_.preferences,_.host),ee=F0.createImportAdder(V,_.program,_.preferences,_.host);jHt(s,V,T,d,g,c,h,S,ee,M),zHt(c,d,s.fileName,O,qD(h))}var SNs={},dYt="Convert overload list to single signature",Psn=Bu(Z.Convert_overload_list_to_single_signature),Msn={name:dYt,description:Psn,kind:"refactor.rewrite.function.overloadList"};Yx(dYt,{kinds:[Msn.kind],getEditsForAction:BNs,getAvailableActions:vNs});function vNs(s){let{file:c,startPosition:g,program:d}=s;return Ysn(c,g,d)?[{name:dYt,description:Psn,actions:[Msn]}]:E}function BNs(s){let{file:c,startPosition:g,program:d}=s,h=Ysn(c,g,d);if(!h)return;let _=d.getTypeChecker(),S=h[h.length-1],R=S;switch(S.kind){case 174:{R=me.updateMethodSignature(S,S.modifiers,S.name,S.questionToken,S.typeParameters,O(h),S.type);break}case 175:{R=me.updateMethodDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.questionToken,S.typeParameters,O(h),S.type,S.body);break}case 180:{R=me.updateCallSignature(S,S.typeParameters,O(h),S.type);break}case 177:{R=me.updateConstructorDeclaration(S,S.modifiers,O(h),S.body);break}case 181:{R=me.updateConstructSignature(S,S.typeParameters,O(h),S.type);break}case 263:{R=me.updateFunctionDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.typeParameters,O(h),S.type,S.body);break}default:return pe.failBadSyntaxKind(S,"Unhandled signature kind in overload list conversion refactoring")}if(R===S)return;return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,ee=>{ee.replaceNodeRange(c,h[0],h[h.length-1],R)})};function O(ee){let re=ee[ee.length-1];return Gd(re)&&re.body&&(ee=ee.slice(0,ee.length-1)),me.createNodeArray([me.createParameterDeclaration(void 0,me.createToken(26),"args",void 0,me.createUnionTypeNode(lt(ee,V)))])}function V(ee){let re=lt(ee.parameters,M);return ti(me.createTupleTypeNode(re),zt(re,ge=>!!B(W3(ge)))?0:1)}function M(ee){pe.assert(Ir(ee.name));let re=gn(me.createNamedTupleMember(ee.dotDotDotToken,ee.name,ee.questionToken,ee.type||me.createKeywordTypeNode(133)),ee),ge=ee.symbol&&ee.symbol.getDocumentationComment(_);if(ge){let Ie=$1e(ge);Ie.length&&LB(re,[{text:`* +}`,PWe="lib.d.ts",wHt;function qin(s,c,g){wHt??(wHt=Oz(PWe,fRs,{languageVersion:99}));let d=[],h=c.compilerOptions?Knt(c.compilerOptions,d):{},_=eOe();for(let Ie in _)Da(_,Ie)&&h[Ie]===void 0&&(h[Ie]=_[Ie]);for(let Ie of qOt)h.verbatimModuleSyntax&&pRs.has(Ie.name)||(h[Ie.name]=Ie.transpileOptionValue);h.suppressOutputPathCheck=!0,h.allowNonTsExtensions=!0,g?(h.declaration=!0,h.emitDeclarationOnly=!0,h.isolatedDeclarations=!0):(h.declaration=!1,h.declarationMap=!1);let S=IN(h),R={getSourceFile:Ie=>Ie===su(T)?O:Ie===su(PWe)?wHt:void 0,writeFile:(Ie,_e)=>{lA(Ie,".map")?(pe.assertEqual(M,void 0,"Unexpected multiple source map outputs, file:",Ie),M=_e):(pe.assertEqual(V,void 0,"Unexpected multiple outputs, file:",Ie),V=_e)},getDefaultLibFileName:()=>PWe,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:Ie=>Ie,getCurrentDirectory:()=>"",getNewLine:()=>S,fileExists:Ie=>Ie===T||!!g&&Ie===PWe,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},T=c.fileName||(c.compilerOptions&&c.compilerOptions.jsx?"module.tsx":"module.ts"),O=Oz(T,s,{languageVersion:Hg(h),impliedNodeFormat:f1e(Pu(T,"",R.getCanonicalFileName),void 0,R,h),setExternalModuleIndicator:qne(h),jsDocParsingMode:c.jsDocParsingMode??0});c.moduleName&&(O.moduleName=c.moduleName),c.renamedDependencies&&(O.renamedDependencies=new Map(Object.entries(c.renamedDependencies)));let V,M,re=I1e(g?[T,PWe]:[T],h,R);c.reportDiagnostics&&(Pr(d,re.getSyntacticDiagnostics(O)),Pr(d,re.getOptionsDiagnostics()));let ge=re.emit(void 0,void 0,void 0,g,c.transformers,g);return Pr(d,ge.diagnostics),V===void 0?pe.fail("Output generation failed"):{outputText:V,diagnostics:d,sourceMapText:M}}function $in(s,c,g,d,h){let _=BHt(s,{compilerOptions:c,fileName:g,reportDiagnostics:!!d,moduleName:h});return Pr(d,_.diagnostics),_.outputText}var THt;function Knt(s,c){THt=THt||Le(Xw,g=>typeof g.type=="object"&&!Fh(g.type,d=>typeof d!="number")),s=$rt(s);for(let g of THt){if(!Da(s,g.name))continue;let d=s[g.name];Xs(d)?s[g.name]=W9e(g,d,c):Fh(g.type,h=>h===d)||c.push(ePt(g))}return s}var RHt={};o(RHt,{getNavigateToItems:()=>esn});function esn(s,c,g,d,h,_,S){let R=fHt(d);if(!R)return E;let T=[],O=s.length===1?s[0]:void 0;for(let V of s)g.throwIfCancellationRequested(),!(_&&V.isDeclarationFile)&&(tsn(V,!!S,O)||V.getNamedDeclarations().forEach((M,ee)=>{IRs(R,ee,M,c,V.fileName,!!S,O,T)}));return T.sort(_Rs),(h===void 0?T:T.slice(0,h)).map(yRs)}function tsn(s,c,g){return s!==g&&c&&(M1e(s.path)||s.hasNoDefaultLib)}function IRs(s,c,g,d,h,_,S,R){let T=s.getMatchForLastSegmentOfPattern(c);if(T){for(let O of g)if(hRs(O,d,_,S))if(s.patternContainsDots){let V=s.getFullMatch(CRs(O),c);V&&R.push({name:c,fileName:h,matchKind:V.kind,isCaseSensitive:V.isCaseSensitive,declaration:O})}else R.push({name:c,fileName:h,matchKind:T.kind,isCaseSensitive:T.isCaseSensitive,declaration:O})}}function hRs(s,c,g,d){var h;switch(s.kind){case 274:case 277:case 272:let _=c.getSymbolAtLocation(s.name),S=c.getAliasedSymbol(_);return _.escapedName!==S.escapedName&&!((h=S.declarations)!=null&&h.every(R=>tsn(R.getSourceFile(),g,d)));default:return!0}}function mRs(s,c){let g=fl(s);return!!g&&(rsn(g,c)||g.kind===168&&NHt(g.expression,c))}function NHt(s,c){return rsn(s,c)||jo(s)&&(c.push(s.name.text),!0)&&NHt(s.expression,c)}function rsn(s,c){return Gw(s)&&(c.push(A2(s)),!0)}function CRs(s){let c=[],g=fl(s);if(g&&g.kind===168&&!NHt(g.expression,c))return E;c.shift();let d=XU(s);for(;d;){if(!mRs(d,c))return E;d=XU(d)}return c.reverse(),c}function _Rs(s,c){return Zt(s.matchKind,c.matchKind)||io(s.name,c.name)}function yRs(s){let c=s.declaration,g=XU(c),d=g&&fl(g);return{name:s.name,kind:BQ(c),kindModifiers:cpe(c),matchKind:Mnt[s.matchKind],isCaseSensitive:s.isCaseSensitive,fileName:s.fileName,textSpan:Yy(c),containerName:d?d.text:"",containerKind:d?BQ(g):""}}var DHt={};o(DHt,{getNavigationBarItems:()=>isn,getNavigationTree:()=>ssn});var bRs=/\s+/g,kHt=150,jnt,U1e,MWe=[],l9,nsn=[],pse,xHt=[];function isn(s,c){jnt=c,U1e=s;try{return lt(wRs(csn(s)),TRs)}finally{osn()}}function ssn(s,c){jnt=c,U1e=s;try{return hsn(csn(s))}finally{osn()}}function osn(){U1e=void 0,jnt=void 0,MWe=[],l9=void 0,xHt=[]}function HWe(s){return mpe(s.getText(U1e))}function znt(s){return s.node.kind}function asn(s,c){s.children?s.children.push(c):s.children=[c]}function csn(s){pe.assert(!MWe.length);let c={node:s,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};l9=c;for(let g of s.statements)tq(g);return a5(),pe.assert(!l9&&!MWe.length),c}function RQ(s,c){asn(l9,GHt(s,c))}function GHt(s,c){return{node:s,name:c||(em(s)||un(s)?fl(s):void 0),additionalNodes:void 0,parent:l9,children:void 0,indent:l9.indent+1}}function lsn(s){pse||(pse=new Map),pse.set(s,!0)}function usn(s){for(let c=0;c0;d--){let h=g[d];NQ(s,h)}return[g.length-1,g[0]]}function NQ(s,c){let g=GHt(s,c);asn(l9,g),MWe.push(l9),nsn.push(pse),pse=void 0,l9=g}function a5(){l9.children&&(qnt(l9.children,l9),LHt(l9.children)),l9=MWe.pop(),pse=nsn.pop()}function c5(s,c,g){NQ(s,g),tq(c),a5()}function Asn(s){s.initializer&&NRs(s.initializer)?(NQ(s),Lu(s.initializer,tq),a5()):c5(s,s.initializer)}function FHt(s){let c=fl(s);if(c===void 0)return!1;if(Un(c)){let g=c.expression;return Hd(g)||yC(g)||h1(g)}return!!c}function tq(s){if(jnt.throwIfCancellationRequested(),!(!s||xL(s)))switch(s.kind){case 177:let c=s;c5(c,c.body);for(let S of c.parameters)We(S,c)&&RQ(S);break;case 175:case 178:case 179:case 174:FHt(s)&&c5(s,s.body);break;case 173:FHt(s)&&Asn(s);break;case 172:FHt(s)&&RQ(s);break;case 274:let g=s;g.name&&RQ(g.name);let{namedBindings:d}=g;if(d)if(d.kind===275)RQ(d);else for(let S of d.elements)RQ(S);break;case 305:c5(s,s.name);break;case 306:let{expression:h}=s;Ir(h)?RQ(s,h):RQ(s);break;case 209:case 304:case 261:{let S=s;Nu(S.name)?tq(S.name):Asn(S);break}case 263:let _=s.name;_&&Ir(_)&&lsn(_.text),c5(s,s.body);break;case 220:case 219:c5(s,s.body);break;case 267:NQ(s);for(let S of s.members)RRs(S)||RQ(S);a5();break;case 264:case 232:case 265:NQ(s);for(let S of s.members)tq(S);a5();break;case 268:c5(s,Csn(s).body);break;case 278:{let S=s.expression,R=ag(S)||Ll(S)?S:gA(S)||jA(S)?S.body:void 0;R?(NQ(s),tq(R),a5()):RQ(s);break}case 282:case 272:case 182:case 180:case 181:case 266:RQ(s);break;case 214:case 227:{let S=oI(s);switch(S){case 1:case 2:c5(s,s.right);return;case 6:case 3:{let R=s,T=R.left,O=S===3?T.expression:T,V=0,M;Ir(O.expression)?(lsn(O.expression.text),M=O.expression):[V,M]=gsn(R,O.expression),S===6?ag(R.right)&&R.right.properties.length>0&&(NQ(R,M),Lu(R.right,tq),a5()):jA(R.right)||gA(R.right)?c5(s,R.right,M):(NQ(R,M),c5(s,R.right,T.name),a5()),usn(V);return}case 7:case 9:{let R=s,T=S===7?R.arguments[0]:R.arguments[0].expression,O=R.arguments[1],[V,M]=gsn(s,T);NQ(s,M),NQ(s,gn(me.createIdentifier(O.text),O)),tq(s.arguments[2]),a5(),a5(),usn(V);return}case 5:{let R=s,T=R.left,O=T.expression;if(Ir(O)&&jD(T)!=="prototype"&&pse&&pse.has(O.text)){jA(R.right)||gA(R.right)?c5(s,R.right,O):NW(T)&&(NQ(R,O),c5(R.left,R.right,Ene(T)),a5());return}break}case 4:case 0:case 8:break;default:pe.assertNever(S)}}default:jm(s)&&F(s.jsDoc,S=>{F(S.tags,R=>{lS(R)&&RQ(R)})}),Lu(s,tq)}}function qnt(s,c){let g=new Map;Je(s,(d,h)=>{let _=d.name||fl(d.node),S=_&&HWe(_);if(!S)return!0;let R=g.get(S);if(!R)return g.set(S,d),!0;if(R instanceof Array){for(let T of R)if(dsn(T,d,h,c))return!1;return R.push(d),!0}else{let T=R;return dsn(T,d,h,c)?!1:(g.set(S,[T,d]),!0)}})}var K1e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function ERs(s,c,g,d){function h(R){return jA(R)||ah(R)||nc(R)}let _=po(c.node)||Ll(c.node)?oI(c.node):0,S=po(s.node)||Ll(s.node)?oI(s.node):0;if(K1e[_]&&K1e[S]||h(s.node)&&K1e[_]||h(c.node)&&K1e[S]||mm(s.node)&&ZHt(s.node)&&K1e[_]||mm(c.node)&&K1e[S]||mm(s.node)&&ZHt(s.node)&&h(c.node)||mm(c.node)&&h(s.node)&&ZHt(s.node)){let R=s.additionalNodes&&li(s.additionalNodes)||s.node;if(!mm(s.node)&&!mm(c.node)||h(s.node)||h(c.node)){let O=h(s.node)?s.node:h(c.node)?c.node:void 0;if(O!==void 0){let V=gn(me.createConstructorDeclaration(void 0,[],void 0),O),M=GHt(V);M.indent=s.indent+1,M.children=s.node===O?s.children:c.children,s.children=s.node===O?Nn([M],c.children||[c]):Nn(s.children||[{...s}],[M])}else(s.children||c.children)&&(s.children=Nn(s.children||[{...s}],c.children||[c]),s.children&&(qnt(s.children,s),LHt(s.children)));R=s.node=gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),s.node)}else s.children=Nn(s.children,c.children),s.children&&qnt(s.children,s);let T=c.node;return d.children[g-1].node.end===R.end?gn(R,{pos:R.pos,end:T.end}):(s.additionalNodes||(s.additionalNodes=[]),s.additionalNodes.push(gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),c.node))),!0}return _!==0}function dsn(s,c,g,d){return ERs(s,c,g,d)?!0:SRs(s.node,c.node,d)?(vRs(s,c),!0):!1}function SRs(s,c,g){if(s.kind!==c.kind||s.parent!==c.parent&&!(psn(s,g)&&psn(c,g)))return!1;switch(s.kind){case 173:case 175:case 178:case 179:return lg(s)===lg(c);case 268:return fsn(s,c)&&OHt(s)===OHt(c);default:return!0}}function ZHt(s){return!!(s.flags&16)}function psn(s,c){if(s.parent===void 0)return!1;let g=BN(s.parent)?s.parent.parent:s.parent;return g===c.node||k(c.additionalNodes,g)}function fsn(s,c){return!s.body||!c.body?s.body===c.body:s.body.kind===c.body.kind&&(s.body.kind!==268||fsn(s.body,c.body))}function vRs(s,c){s.additionalNodes=s.additionalNodes||[],s.additionalNodes.push(c.node),c.additionalNodes&&s.additionalNodes.push(...c.additionalNodes),s.children=Nn(s.children,c.children),s.children&&(qnt(s.children,s),LHt(s.children))}function LHt(s){s.sort(BRs)}function BRs(s,c){return io(Isn(s.node),Isn(c.node))||Zt(znt(s),znt(c))}function Isn(s){if(s.kind===268)return msn(s);let c=fl(s);if(c&&PI(c)){let g=R3(c);return g&&Bc(g)}switch(s.kind){case 219:case 220:case 232:return ysn(s);default:return}}function VHt(s,c){if(s.kind===268)return mpe(msn(s));if(c){let g=Ir(c)?c.text:Qg(c)?`[${HWe(c.argumentExpression)}]`:HWe(c);if(g.length>0)return mpe(g)}switch(s.kind){case 308:let g=s;return Lm(g)?`"${jT(dp(c0(su(g.fileName))))}"`:"";case 278:return yf(s)&&s.isExportEquals?"export=":"default";case 220:case 263:case 219:case 264:case 232:return Zx(s)&2048?"default":ysn(s);case 177:return"constructor";case 181:return"new()";case 180:return"()";case 182:return"[]";default:return""}}function wRs(s){let c=[];function g(h){if(d(h)&&(c.push(h),h.children))for(let _ of h.children)g(_)}return g(s),c;function d(h){if(h.children)return!0;switch(znt(h)){case 264:case 232:case 267:case 265:case 268:case 308:case 266:case 347:case 339:return!0;case 220:case 263:case 219:return _(h);default:return!1}function _(S){if(!S.node.body)return!1;switch(znt(S.parent)){case 269:case 308:case 175:case 177:return!0;default:return!1}}}}function hsn(s){return{text:VHt(s.node,s.name),kind:BQ(s.node),kindModifiers:_sn(s.node),spans:WHt(s),nameSpan:s.name&&PHt(s.name),childItems:lt(s.children,hsn)}}function TRs(s){return{text:VHt(s.node,s.name),kind:BQ(s.node),kindModifiers:_sn(s.node),spans:WHt(s),childItems:lt(s.children,c)||xHt,indent:s.indent,bolded:!1,grayed:!1};function c(g){return{text:VHt(g.node,g.name),kind:BQ(g.node),kindModifiers:cpe(g.node),spans:WHt(g),childItems:xHt,indent:0,bolded:!1,grayed:!1}}}function WHt(s){let c=[PHt(s.node)];if(s.additionalNodes)for(let g of s.additionalNodes)c.push(PHt(g));return c}function msn(s){return c_(s)?Fp(s.name):OHt(s)}function OHt(s){let c=[A2(s.name)];for(;s.body&&s.body.kind===268;)s=s.body,c.push(A2(s.name));return c.join(".")}function Csn(s){return s.body&&Lh(s.body)?Csn(s.body):s}function RRs(s){return!s.name||s.name.kind===168}function PHt(s){return s.kind===308?c9(s):Yy(s,U1e)}function _sn(s){return s.parent&&s.parent.kind===261&&(s=s.parent),cpe(s)}function ysn(s){let{parent:c}=s;if(s.name&&QJ(s.name)>0)return mpe(Md(s.name));if(nc(c))return mpe(Md(c.name));if(po(c)&&c.operatorToken.kind===64)return HWe(c.left).replace(bRs,"");if(Cm(c))return HWe(c.name);if(Zx(s)&2048)return"default";if(xa(s))return"";if(Ll(c)){let g=bsn(c.expression);if(g!==void 0){if(g=mpe(g),g.length>kHt)return`${g} callback`;let d=mpe(Xt(c.arguments,h=>_A(h)||yW(h)?h.getText(U1e):void 0).join(", "));return`${g}(${d}) callback`}}return""}function bsn(s){if(Ir(s))return s.text;if(jo(s)){let c=bsn(s.expression),g=s.name.text;return c===void 0?g:`${c}.${g}`}else return}function NRs(s){switch(s.kind){case 220:case 219:case 232:return!0;default:return!1}}function mpe(s){return s=s.length>kHt?s.substring(0,kHt)+"...":s,s.replace(/\\?(?:\r?\n|[\r\u2028\u2029])/g,"")}var rq={};o(rq,{addExportsInOldFile:()=>qHt,addImportsForMovedSymbols:()=>$Ht,addNewFileToTsconfig:()=>zHt,addOrRemoveBracesToArrowFunction:()=>vNs,addTargetFileImports:()=>cYt,containsJsx:()=>rYt,convertArrowFunctionOrFunctionExpression:()=>NNs,convertParamsToDestructuredObject:()=>PNs,convertStringOrTemplateLiteral:()=>sDs,convertToOptionalChainExpression:()=>fDs,createNewFileName:()=>tYt,doChangeNamedToNamespaceOrDefault:()=>Tsn,extractSymbol:()=>_on,generateGetAccessorAndSetAccessor:()=>qDs,getApplicableRefactors:()=>DRs,getEditsForRefactor:()=>kRs,getExistingLocals:()=>oYt,getIdentifierForNode:()=>aYt,getNewStatementsAndRemoveFromOldFile:()=>jHt,getStatementsToMove:()=>j1e,getUsageInfo:()=>YWe,inferFunctionReturnType:()=>$Ds,isInImport:()=>ait,isRefactorErrorInfo:()=>KF,refactorKindBeginsWith:()=>l5,registerRefactor:()=>Qx});var MHt=new Map;function Qx(s,c){MHt.set(s,c)}function DRs(s,c){return Do(Nt(MHt.values(),g=>{var d;return s.cancellationToken&&s.cancellationToken.isCancellationRequested()||!((d=g.kinds)!=null&&d.some(h=>l5(h,s.kind)))?void 0:g.getAvailableActions(s,c)}))}function kRs(s,c,g,d){let h=MHt.get(c);return h&&h.getEditsForAction(s,g,d)}var HHt="Convert export",$nt={name:"Convert default export to named export",description:Bu(Z.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},eit={name:"Convert named export to default export",description:Bu(Z.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};Qx(HHt,{kinds:[$nt.kind,eit.kind],getAvailableActions:function(c){let g=Esn(c,c.triggerReason==="invoked");if(!g)return E;if(!KF(g)){let d=g.wasDefault?$nt:eit;return[{name:HHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:HHt,description:Bu(Z.Convert_default_export_to_named_export),actions:[{...$nt,notApplicableReason:g.error},{...eit,notApplicableReason:g.error}]}]:E},getEditsForAction:function(c,g){pe.assert(g===$nt.name||g===eit.name,"Unexpected action name");let d=Esn(c);return pe.assert(d&&!KF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>xRs(c.file,c.program,d,_,c.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}});function Esn(s,c=!0){let{file:g,program:d}=s,h=$z(s),_=Jc(g,h.start),S=_.parent&&Zx(_.parent)&32&&c?_.parent:L1e(_,g,h);if(!S||!cl(S.parent)&&!(BN(S.parent)&&c_(S.parent.parent)))return{error:Bu(Z.Could_not_find_export_statement)};let R=d.getTypeChecker(),T=VRs(S.parent,R),O=Zx(S)||(yf(S)&&!S.isExportEquals?2080:0),V=!!(O&2048);if(!(O&32)||!V&&T.exports.has("default"))return{error:Bu(Z.This_file_already_has_a_default_export)};let M=ee=>Ir(ee)&&R.getSymbolAtLocation(ee)?void 0:{error:Bu(Z.Can_only_convert_named_export)};switch(S.kind){case 263:case 264:case 265:case 267:case 266:case 268:{let ee=S;return ee.name?M(ee.name)||{exportNode:ee,exportName:ee.name,wasDefault:V,exportingModuleSymbol:T}:void 0}case 244:{let ee=S;if(!(ee.declarationList.flags&2)||ee.declarationList.declarations.length!==1)return;let re=ma(ee.declarationList.declarations);return re.initializer?(pe.assert(!V,"Can't have a default flag here"),M(re.name)||{exportNode:ee,exportName:re.name,wasDefault:V,exportingModuleSymbol:T}):void 0}case 278:{let ee=S;return ee.isExportEquals?void 0:M(ee.expression)||{exportNode:ee,exportName:ee.expression,wasDefault:V,exportingModuleSymbol:T}}default:return}}function xRs(s,c,g,d,h){GRs(s,g,d,c.getTypeChecker()),FRs(c,g,d,h)}function GRs(s,{wasDefault:c,exportNode:g,exportName:d},h,_){if(c)if(yf(g)&&!g.isExportEquals){let S=g.expression,R=Ssn(S.text,S.text);h.replaceNode(s,g,me.createExportDeclaration(void 0,!1,me.createNamedExports([R])))}else h.delete(s,pe.checkDefined(ose(g,90),"Should find a default keyword in modifier list"));else{let S=pe.checkDefined(ose(g,95),"Should find an export keyword in modifier list");switch(g.kind){case 263:case 264:case 265:h.insertNodeAfter(s,S,me.createToken(90));break;case 244:let R=ma(g.declarationList.declarations);if(!zp.Core.isSymbolReferencedInFile(d,_,s)&&!R.type){h.replaceNode(s,g,me.createExportDefault(pe.checkDefined(R.initializer,"Initializer was previously known to be present")));break}case 267:case 266:case 268:h.deleteModifier(s,S),h.insertNodeAfter(s,g,me.createExportDefault(me.createIdentifier(d.text)));break;default:pe.fail(`Unexpected exportNode kind ${g.kind}`)}}}function FRs(s,{wasDefault:c,exportName:g,exportingModuleSymbol:d},h,_){let S=s.getTypeChecker(),R=pe.checkDefined(S.getSymbolAtLocation(g),"Export name should resolve to a symbol");zp.Core.eachExportReference(s.getSourceFiles(),S,_,R,d,g.text,c,T=>{if(g===T)return;let O=T.getSourceFile();c?ZRs(O,T,h,g.text):LRs(O,T,h)})}function ZRs(s,c,g,d){let{parent:h}=c;switch(h.kind){case 212:g.replaceNode(s,c,me.createIdentifier(d));break;case 277:case 282:{let S=h;g.replaceNode(s,S,YHt(d,S.name.text));break}case 274:{let S=h;pe.assert(S.name===c,"Import clause name should match provided ref");let R=YHt(d,c.text),{namedBindings:T}=S;if(!T)g.replaceNode(s,c,me.createNamedImports([R]));else if(T.kind===275){g.deleteRange(s,{pos:c.getStart(s),end:T.getStart(s)});let O=Lg(S.parent.moduleSpecifier)?ant(S.parent.moduleSpecifier,s):1,V=eO(void 0,[YHt(d,c.text)],S.parent.moduleSpecifier,O);g.insertNodeAfter(s,S.parent,V)}else g.delete(s,c),g.insertNodeAtEndOfList(s,T.elements,R);break}case 206:let _=h;g.replaceNode(s,h,me.createImportTypeNode(_.argument,_.attributes,me.createIdentifier(d),_.typeArguments,_.isTypeOf));break;default:pe.failBadSyntaxKind(h)}}function LRs(s,c,g){let d=c.parent;switch(d.kind){case 212:g.replaceNode(s,c,me.createIdentifier("default"));break;case 277:{let h=me.createIdentifier(d.name.text);d.parent.elements.length===1?g.replaceNode(s,d.parent,h):(g.delete(s,d),g.insertNodeBefore(s,d.parent,h));break}case 282:{g.replaceNode(s,d,Ssn("default",d.name.text));break}default:pe.assertNever(d,`Unexpected parent kind ${d.kind}`)}}function YHt(s,c){return me.createImportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function Ssn(s,c){return me.createExportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function VRs(s,c){if(cl(s))return s.symbol;let g=s.parent.symbol;return g.valueDeclaration&&wF(g.valueDeclaration)?c.getMergedSymbol(g):g}var QHt="Convert import",tit={0:{name:"Convert namespace import to named imports",description:Bu(Z.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:Bu(Z.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:Bu(Z.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};Qx(QHt,{kinds:Kh(tit).map(s=>s.kind),getAvailableActions:function(c){let g=vsn(c,c.triggerReason==="invoked");if(!g)return E;if(!KF(g)){let d=tit[g.convertTo];return[{name:QHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?Kh(tit).map(d=>({name:QHt,description:d.description,actions:[{...d,notApplicableReason:g.error}]})):E},getEditsForAction:function(c,g){pe.assert(zt(Kh(tit),_=>_.name===g),"Unexpected action name");let d=vsn(c);return pe.assert(d&&!KF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>WRs(c.file,c.program,_,d)),renameFilename:void 0,renameLocation:void 0}}});function vsn(s,c=!0){let{file:g}=s,d=$z(s),h=Jc(g,d.start),_=c?ji(h,Qp(Yf,NN)):L1e(h,g,d);if(_===void 0||!(Yf(_)||NN(_)))return{error:"Selection is not an import declaration."};let S=d.start+d.length,R=wQ(_,_.parent,g);if(R&&S>R.getStart())return;let{importClause:T}=_;return T?T.namedBindings?T.namedBindings.kind===275?{convertTo:0,import:T.namedBindings}:Bsn(s.program,T)?{convertTo:1,import:T.namedBindings}:{convertTo:2,import:T.namedBindings}:{error:Bu(Z.Could_not_find_namespace_import_or_named_imports)}:{error:Bu(Z.Could_not_find_import_clause)}}function Bsn(s,c){return sQ(s.getCompilerOptions())&&MRs(c.parent.moduleSpecifier,s.getTypeChecker())}function WRs(s,c,g,d){let h=c.getTypeChecker();d.convertTo===0?ORs(s,h,g,d.import,sQ(c.getCompilerOptions())):Tsn(s,c,g,d.import,d.convertTo===1)}function ORs(s,c,g,d,h){let _=!1,S=[],R=new Map;zp.Core.eachSymbolReferenceInFile(d.name,c,s,M=>{if(!VJ(M.parent))_=!0;else{let ee=wsn(M.parent).text;c.resolveName(ee,M,-1,!0)&&R.set(ee,!0),pe.assert(PRs(M.parent)===M,"Parent expression should match id"),S.push(M.parent)}});let T=new Map;for(let M of S){let ee=wsn(M).text,re=T.get(ee);re===void 0&&T.set(ee,re=R.has(ee)?UU(ee,s):ee),g.replaceNode(s,M,me.createIdentifier(re))}let O=[];T.forEach((M,ee)=>{O.push(me.createImportSpecifier(!1,M===ee?void 0:me.createIdentifier(ee),me.createIdentifier(M)))});let V=d.parent.parent;if(_&&!h&&Yf(V))g.insertNodeAfter(s,V,Rsn(V,void 0,O));else{let M=_?me.createIdentifier(d.name.text):void 0;g.replaceNode(s,d.parent,Nsn(M,O))}}function wsn(s){return jo(s)?s.name:s.right}function PRs(s){return jo(s)?s.expression:s.left}function Tsn(s,c,g,d,h=Bsn(c,d.parent)){let _=c.getTypeChecker(),S=d.parent.parent,{moduleSpecifier:R}=S,T=new Set;d.elements.forEach(ge=>{let Ie=_.getSymbolAtLocation(ge.name);Ie&&T.add(Ie)});let O=R&&Lg(R)?Y1e(R.text,99):"module";function V(ge){return!!zp.Core.eachSymbolReferenceInFile(ge.name,_,s,Ie=>{let _e=_.resolveName(O,Ie,-1,!0);return _e?T.has(_e)?k0(Ie.parent):!0:!1})}let ee=d.elements.some(V)?UU(O,s):O,re=new Set;for(let ge of d.elements){let Ie=ge.propertyName||ge.name;zp.Core.eachSymbolReferenceInFile(ge.name,_,s,_e=>{let Ee=Ie.kind===11?me.createElementAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie)):me.createPropertyAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie));u0(_e.parent)?g.replaceNode(s,_e.parent,me.createPropertyAssignment(_e.text,Ee)):k0(_e.parent)?re.add(ge):g.replaceNode(s,_e,Ee)})}if(g.replaceNode(s,d,h?me.createIdentifier(ee):me.createNamespaceImport(me.createIdentifier(ee))),re.size&&Yf(S)){let ge=Do(re.values(),Ie=>me.createImportSpecifier(Ie.isTypeOnly,Ie.propertyName&&me.cloneNode(Ie.propertyName),me.cloneNode(Ie.name)));g.insertNodeAfter(s,d.parent.parent,Rsn(S,void 0,ge))}}function MRs(s,c){let g=c.resolveExternalModuleName(s);if(!g)return!1;let d=c.resolveExternalModuleSymbol(g);return g!==d}function Rsn(s,c,g){return me.createImportDeclaration(void 0,Nsn(c,g),s.moduleSpecifier,void 0)}function Nsn(s,c){return me.createImportClause(void 0,s,c&&c.length?me.createNamedImports(c):void 0)}var XHt="Extract type",rit={name:"Extract to type alias",description:Bu(Z.Extract_to_type_alias),kind:"refactor.extract.type"},nit={name:"Extract to interface",description:Bu(Z.Extract_to_interface),kind:"refactor.extract.interface"},iit={name:"Extract to typedef",description:Bu(Z.Extract_to_typedef),kind:"refactor.extract.typedef"};Qx(XHt,{kinds:[rit.kind,nit.kind,iit.kind],getAvailableActions:function(c){let{info:g,affectedTextRange:d}=Dsn(c,c.triggerReason==="invoked");return g?KF(g)?c.preferences.provideRefactorNotApplicableReason?[{name:XHt,description:Bu(Z.Extract_type),actions:[{...iit,notApplicableReason:g.error},{...rit,notApplicableReason:g.error},{...nit,notApplicableReason:g.error}]}]:E:[{name:XHt,description:Bu(Z.Extract_type),actions:g.isJS?[iit]:Ft([rit],g.typeElements&&nit)}].map(_=>({..._,actions:_.actions.map(S=>({...S,range:d?{start:{line:Ra(c.file,d.pos).line,offset:Ra(c.file,d.pos).character},end:{line:Ra(c.file,d.end).line,offset:Ra(c.file,d.end).character}}:void 0}))})):E},getEditsForAction:function(c,g){let{file:d}=c,{info:h}=Dsn(c);pe.assert(h&&!KF(h),"Expected to find a range to extract");let _=UU("NewType",d),S=xo.ChangeTracker.with(c,O=>{switch(g){case rit.name:return pe.assert(!h.isJS,"Invalid actionName/JS combo"),QRs(O,d,_,h);case iit.name:return pe.assert(h.isJS,"Invalid actionName/JS combo"),JRs(O,c,d,_,h);case nit.name:return pe.assert(!h.isJS&&!!h.typeElements,"Invalid actionName/JS combo"),XRs(O,d,_,h);default:pe.fail("Unexpected action name")}}),R=d.fileName,T=W1e(S,R,_,!1);return{edits:S,renameFilename:R,renameLocation:T}}});function Dsn(s,c=!0){let{file:g,startPosition:d}=s,h=o0(g),_=pWe($z(s)),S=_.pos===_.end&&c,R=HRs(g,d,_,S);if(!R||!uc(R))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let T=s.program.getTypeChecker(),O=URs(R,h);if(O===void 0)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let V=KRs(R,O);if(!uc(V))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let M=[];(AS(V.parent)||_f(V.parent))&&_.end>R.end&&Pr(M,V.parent.types.filter(_e=>sWe(_e,g,_.pos,_.end)));let ee=M.length>1?M:V,{typeParameters:re,affectedTextRange:ge}=YRs(T,ee,O,g);if(!re)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let Ie=sit(T,ee);return{info:{isJS:h,selection:ee,enclosingNode:O,typeParameters:re,typeElements:Ie},affectedTextRange:ge}}function HRs(s,c,g,d){let h=[()=>Jc(s,c),()=>ise(s,c,()=>!0)];for(let _ of h){let S=_(),R=sWe(S,s,g.pos,g.end),T=ji(S,O=>O.parent&&uc(O)&&!DQ(g,O.parent,s)&&(d||R));if(T)return T}}function sit(s,c){if(c){if(Ki(c)){let g=[];for(let d of c){let h=sit(s,d);if(!h)return;Pr(g,h)}return g}if(_f(c)){let g=[],d=new Set;for(let h of c.types){let _=sit(s,h);if(!_||!_.every(S=>S.name&&Wy(d,F1e(S.name))))return;Pr(g,_)}return g}else{if(_v(c))return sit(s,c.type);if(bh(c))return c.members}}}function DQ(s,c,g){return N1e(s,Yu(g.text,c.pos),c.end)}function YRs(s,c,g,d){let h=[],_=cc(c),S={pos:_[0].getStart(d),end:_[_.length-1].end};for(let T of _)if(R(T))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:h,affectedTextRange:S};function R(T){if(oh(T)){if(Ir(T.typeName)){let O=T.typeName,V=s.resolveName(O.text,O,262144,!0);for(let M of V?.declarations||E)if(Ds(M)&&M.getSourceFile()===d){if(M.name.escapedText===O.escapedText&&DQ(M,S,d))return!0;if(DQ(g,M,d)&&!DQ(S,M,d)){Qi(h,M);break}}}}else if(rR(T)){let O=ji(T,V=>h2(V)&&DQ(V.extendsType,T,d));if(!O||!DQ(S,O,d))return!0}else if(BE(T)||Px(T)){let O=ji(T.parent,Eu);if(O&&O.type&&DQ(O.type,T,d)&&!DQ(S,O,d))return!0}else if(Pw(T)){if(Ir(T.exprName)){let O=s.resolveName(T.exprName.text,T.exprName,111551,!1);if(O?.valueDeclaration&&DQ(g,O.valueDeclaration,d)&&!DQ(S,O.valueDeclaration,d))return!0}else if(kF(T.exprName.left)&&!DQ(S,T.parent,d))return!0}return d&&Mw(T)&&Ra(d,T.pos).line===Ra(d,T.end).line&&ti(T,1),Lu(T,R)}}function QRs(s,c,g,d){let{enclosingNode:h,typeParameters:_}=d,{firstTypeNode:S,lastTypeNode:R,newTypeNode:T}=JHt(d),O=me.createTypeAliasDeclaration(void 0,g,_.map(V=>me.updateTypeParameterDeclaration(V,V.modifiers,V.name,V.constraint,void 0)),T);s.insertNodeBefore(c,h,yEe(O),!0),s.replaceNodeRange(c,S,R,me.createTypeReferenceNode(g,_.map(V=>me.createTypeReferenceNode(V.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function XRs(s,c,g,d){var h;let{enclosingNode:_,typeParameters:S,typeElements:R}=d,T=me.createInterfaceDeclaration(void 0,g,S,void 0,R);gn(T,(h=R[0])==null?void 0:h.parent),s.insertNodeBefore(c,_,yEe(T),!0);let{firstTypeNode:O,lastTypeNode:V}=JHt(d);s.replaceNodeRange(c,O,V,me.createTypeReferenceNode(g,S.map(M=>me.createTypeReferenceNode(M.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function JRs(s,c,g,d,h){var _;cc(h.selection).forEach(ge=>{ti(ge,7168)});let{enclosingNode:S,typeParameters:R}=h,{firstTypeNode:T,lastTypeNode:O,newTypeNode:V}=JHt(h),M=me.createJSDocTypedefTag(me.createIdentifier("typedef"),me.createJSDocTypeExpression(V),me.createIdentifier(d)),ee=[];F(R,ge=>{let Ie=A3(ge),_e=me.createTypeParameterDeclaration(void 0,ge.name),Ee=me.createJSDocTemplateTag(me.createIdentifier("template"),Ie&&Ma(Ie,K3),[_e]);ee.push(Ee)});let re=me.createJSDocComment(void 0,me.createNodeArray(Nn(ee,[M])));if(aR(S)){let ge=S.getStart(g),Ie=UF(c.host,(_=c.formatContext)==null?void 0:_.options);s.insertNodeAt(g,S.getStart(g),re,{suffix:Ie+Ie+g.text.slice(bWe(g.text,ge-1),ge)})}else s.insertNodeBefore(g,S,re,!0);s.replaceNodeRange(g,T,O,me.createTypeReferenceNode(d,R.map(ge=>me.createTypeReferenceNode(ge.name,void 0))))}function JHt(s){return Ki(s.selection)?{firstTypeNode:s.selection[0],lastTypeNode:s.selection[s.selection.length-1],newTypeNode:AS(s.selection[0].parent)?me.createUnionTypeNode(s.selection):me.createIntersectionTypeNode(s.selection)}:{firstTypeNode:s.selection,lastTypeNode:s.selection,newTypeNode:s.selection}}function URs(s,c){return ji(s,Lc)||(c?ji(s,aR):void 0)}function KRs(s,c){return ji(s,g=>g===c?"quit":!!(AS(g.parent)||_f(g.parent)))??s}var oit="Move to file",UHt=Bu(Z.Move_to_file),KHt={name:"Move to file",description:UHt,kind:"refactor.move.file"};Qx(oit,{kinds:[KHt.kind],getAvailableActions:function(c,g){let d=c.file,h=j1e(c);if(!g)return E;if(c.triggerReason==="implicit"&&c.endPosition!==void 0){let _=ji(Jc(d,c.startPosition),eq),S=ji(Jc(d,c.endPosition),eq);if(_&&!cl(_)&&S&&!cl(S))return E}if(c.preferences.allowTextChangesInNewFiles&&h){let _={start:{line:Ra(d,h.all[0].getStart(d)).line,offset:Ra(d,h.all[0].getStart(d)).character},end:{line:Ra(d,Ei(h.all).end).line,offset:Ra(d,Ei(h.all).end).character}};return[{name:oit,description:UHt,actions:[{...KHt,range:_}]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:oit,description:UHt,actions:[{...KHt,notApplicableReason:Bu(Z.Selection_is_not_a_valid_statement_or_statements)}]}]:E},getEditsForAction:function(c,g,d){pe.assert(g===oit,"Wrong refactor invoked");let h=pe.checkDefined(j1e(c)),{host:_,program:S}=c;pe.assert(d,"No interactive refactor arguments available");let R=d.targetFile;return _N(R)||Z3(R)?_.fileExists(R)&&S.getSourceFile(R)===void 0?ksn(Bu(Z.Cannot_move_statements_to_the_selected_file)):{edits:xo.ChangeTracker.with(c,O=>jRs(c,c.file,d.targetFile,c.program,h,O,c.host,c.preferences)),renameFilename:void 0,renameLocation:void 0}:ksn(Bu(Z.Cannot_move_to_file_selected_file_is_invalid))}});function ksn(s){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:s}}function jRs(s,c,g,d,h,_,S,R){let T=d.getTypeChecker(),O=!S.fileExists(g),V=O?ZWe(g,c.externalModuleIndicator?99:c.commonJsModuleIndicator?1:void 0,d,S):pe.checkDefined(d.getSourceFile(g)),M=Z0.createImportAdder(c,s.program,s.preferences,s.host),ee=Z0.createImportAdder(V,s.program,s.preferences,s.host);jHt(c,V,YWe(c,h.all,T,O?void 0:oYt(V,h.all,T)),_,h,d,S,R,ee,M),O&&zHt(d,_,c.fileName,g,$D(S))}function jHt(s,c,g,d,h,_,S,R,T,O){let V=_.getTypeChecker(),M=i_(s.statements,cS),ee=!xnt(c.fileName,_,S,!!s.commonJsModuleIndicator),re=S1(s,R);$Ht(g.oldFileImportsFromTargetFile,c.fileName,O,_),qRs(s,h.all,g.unusedImportsFromOldFile,O),O.writeFixes(d,re),zRs(s,h.ranges,d),$Rs(d,_,S,s,g.movedSymbols,c.fileName,re),qHt(s,g.targetFileImportsFromOldFile,d,ee),cYt(s,g.oldImportsNeededByTargetFile,g.targetFileImportsFromOldFile,V,_,T),!dN(c)&&M.length&&d.insertStatementsInNewFile(c.fileName,M,s),T.writeFixes(d,re);let ge=sNs(s,h.all,Do(g.oldFileImportsFromTargetFile.keys()),ee);dN(c)&&c.statements.length>0?yNs(d,_,ge,c,h):dN(c)?d.insertNodesAtEndOfFile(c,ge,!1):d.insertStatementsInNewFile(c.fileName,T.hasFixes()?[4,...ge]:ge,s)}function zHt(s,c,g,d,h){let _=s.getCompilerOptions().configFile;if(!_)return;let S=su(To(g,"..",d)),R=c1(_.fileName,S,h),T=_.statements[0]&&Gs(_.statements[0].expression,ag),O=T&&de(T.properties,V=>Cm(V)&&Lg(V.name)&&V.name.text==="files");O&&YI(O.initializer)&&c.insertNodeInListAfter(_,Ei(O.initializer.elements),me.createStringLiteral(R),O.initializer.elements)}function zRs(s,c,g){for(let{first:d,afterLast:h}of c)g.deleteNodeRangeExcludingEnd(s,d,h)}function qRs(s,c,g,d){for(let h of s.statements)k(c,h)||Gsn(h,_=>{Fsn(_,S=>{g.has(S.symbol)&&d.removeExistingImport(S)})})}function qHt(s,c,g,d){let h=sse();c.forEach((_,S)=>{if(S.declarations)for(let R of S.declarations){if(!sYt(R))continue;let T=dNs(R);if(!T)continue;let O=Wsn(R);h(O)&&pNs(s,O,T,g,d)}})}function $Rs(s,c,g,d,h,_,S){let R=c.getTypeChecker();for(let T of c.getSourceFiles())if(T!==d)for(let O of T.statements)Gsn(O,V=>{if(R.getSymbolAtLocation(nNs(V))!==d.symbol)return;let M=_e=>{let Ee=mg(_e.parent)?_We(R,_e.parent):VC(R.getSymbolAtLocation(_e),R);return!!Ee&&h.has(Ee)};oNs(T,V,s,M);let ee=IE(Mo(Xc(d.fileName,c.getCurrentDirectory())),_);if(gd(!c.useCaseSensitiveFileNames())(ee,T.fileName)===0)return;let re=JF.getModuleSpecifier(c.getCompilerOptions(),T,T.fileName,ee,o5(c,g)),ge=uNs(V,upe(re,S),M);ge&&s.insertNodeAfter(T,O,ge);let Ie=eNs(V);Ie&&tNs(s,T,R,h,re,Ie,V,S)})}function eNs(s){switch(s.kind){case 273:return s.importClause&&s.importClause.namedBindings&&s.importClause.namedBindings.kind===275?s.importClause.namedBindings.name:void 0;case 272:return s.name;case 261:return Gs(s.name,Ir);default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function tNs(s,c,g,d,h,_,S,R){let T=Y1e(h,99),O=!1,V=[];if(zp.Core.eachSymbolReferenceInFile(_,g,c,M=>{jo(M.parent)&&(O=O||!!g.resolveName(T,M,-1,!0),d.has(g.getSymbolAtLocation(M.parent.name))&&V.push(M))}),V.length){let M=O?UU(T,c):T;for(let ee of V)s.replaceNode(c,ee,me.createIdentifier(M));s.insertNodeAfter(c,S,rNs(S,T,h,R))}}function rNs(s,c,g,d){let h=me.createIdentifier(c),_=upe(g,d);switch(s.kind){case 273:return me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamespaceImport(h)),_,void 0);case 272:return me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(_));case 261:return me.createVariableDeclaration(h,void 0,void 0,xsn(_));default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function xsn(s){return me.createCallExpression(me.createIdentifier("require"),void 0,[s])}function nNs(s){return s.kind===273?s.moduleSpecifier:s.kind===272?s.moduleReference.expression:s.initializer.arguments[0]}function Gsn(s,c){if(Yf(s))Lg(s.moduleSpecifier)&&c(s);else if(Zm(s))HF(s.moduleReference)&&_A(s.moduleReference.expression)&&c(s);else if(Eh(s))for(let g of s.declarationList.declarations)g.initializer&&uy(g.initializer,!0)&&c(g)}function Fsn(s,c){var g,d,h,_,S;if(s.kind===273){if((g=s.importClause)!=null&&g.name&&c(s.importClause),((h=(d=s.importClause)==null?void 0:d.namedBindings)==null?void 0:h.kind)===275&&c(s.importClause.namedBindings),((S=(_=s.importClause)==null?void 0:_.namedBindings)==null?void 0:S.kind)===276)for(let R of s.importClause.namedBindings.elements)c(R)}else if(s.kind===272)c(s);else if(s.kind===261){if(s.name.kind===80)c(s);else if(s.name.kind===207)for(let R of s.name.elements)Ir(R.name)&&c(R)}}function $Ht(s,c,g,d){for(let[h,_]of s){let S=DWe(h,Hg(d.getCompilerOptions())),R=h.name==="default"&&h.parent?1:0;g.addImportForNonExistentExport(S,c,R,h.flags,_)}}function iNs(s,c,g,d=2){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(s,void 0,c,g)],d))}function sNs(s,c,g,d){return jt(c,h=>{if(Lsn(h)&&!Zsn(s,h,d)&&iYt(h,_=>{var S;return g.includes(pe.checkDefined((S=Gs(_,bE))==null?void 0:S.symbol))})){let _=aNs(KA(h),d);if(_)return _}return KA(h)})}function Zsn(s,c,g,d){var h;return g?!PC(c)&&Ga(c,32)||!!(d&&s.symbol&&((h=s.symbol.exports)!=null&&h.has(d.escapedText))):!!s.symbol&&!!s.symbol.exports&&eYt(c).some(_=>s.symbol.exports.has(pp(_)))}function oNs(s,c,g,d){if(c.kind===273&&c.importClause){let{name:h,namedBindings:_}=c.importClause;if((!h||d(h))&&(!_||_.kind===276&&_.elements.length!==0&&_.elements.every(S=>d(S.name))))return g.delete(s,c)}Fsn(c,h=>{h.name&&Ir(h.name)&&d(h.name)&&g.delete(s,h)})}function Lsn(s){return pe.assert(cl(s.parent),"Node parent should be a SourceFile"),Msn(s)||Eh(s)}function aNs(s,c){return c?[cNs(s)]:lNs(s)}function cNs(s){let c=HB(s)?Nn([me.createModifier(95)],sN(s)):void 0;switch(s.kind){case 263:return me.updateFunctionDeclaration(s,c,s.asteriskToken,s.name,s.typeParameters,s.parameters,s.type,s.body);case 264:let g=mQ(s)?kb(s):void 0;return me.updateClassDeclaration(s,Nn(g,c),s.name,s.typeParameters,s.heritageClauses,s.members);case 244:return me.updateVariableStatement(s,c,s.declarationList);case 268:return me.updateModuleDeclaration(s,c,s.name,s.body);case 267:return me.updateEnumDeclaration(s,c,s.name,s.members);case 266:return me.updateTypeAliasDeclaration(s,c,s.name,s.typeParameters,s.type);case 265:return me.updateInterfaceDeclaration(s,c,s.name,s.typeParameters,s.heritageClauses,s.members);case 272:return me.updateImportEqualsDeclaration(s,c,s.isTypeOnly,s.name,s.moduleReference);case 245:return pe.fail();default:return pe.assertNever(s,`Unexpected declaration kind ${s.kind}`)}}function lNs(s){return[s,...eYt(s).map(Vsn)]}function Vsn(s){return me.createExpressionStatement(me.createBinaryExpression(me.createPropertyAccessExpression(me.createIdentifier("exports"),me.createIdentifier(s)),64,me.createIdentifier(s)))}function eYt(s){switch(s.kind){case 263:case 264:return[s.name.text];case 244:return Xt(s.declarationList.declarations,c=>Ir(c.name)?c.name.text:void 0);case 268:case 267:case 266:case 265:case 272:return E;case 245:return pe.fail("Can't export an ExpressionStatement");default:return pe.assertNever(s,`Unexpected decl kind ${s.kind}`)}}function uNs(s,c,g){switch(s.kind){case 273:{let d=s.importClause;if(!d)return;let h=d.name&&g(d.name)?d.name:void 0,_=d.namedBindings&&gNs(d.namedBindings,g);return h||_?me.createImportDeclaration(void 0,me.createImportClause(d.phaseModifier,h,_),KA(c),void 0):void 0}case 272:return g(s.name)?s:void 0;case 261:{let d=ANs(s.name,g);return d?iNs(d,s.type,xsn(c),s.parent.flags):void 0}default:return pe.assertNever(s,`Unexpected import kind ${s.kind}`)}}function gNs(s,c){if(s.kind===275)return c(s.name)?s:void 0;{let g=s.elements.filter(d=>c(d.name));return g.length?me.createNamedImports(g):void 0}}function ANs(s,c){switch(s.kind){case 80:return c(s)?s:void 0;case 208:return s;case 207:{let g=s.elements.filter(d=>d.propertyName||!Ir(d.name)||c(d.name));return g.length?me.createObjectBindingPattern(g):void 0}}}function dNs(s){return PC(s)?Gs(s.expression.left.name,Ir):Gs(s.name,Ir)}function Wsn(s){switch(s.kind){case 261:return s.parent.parent;case 209:return Wsn(Ma(s.parent.parent,c=>nc(c)||mg(c)));default:return s}}function pNs(s,c,g,d,h){if(!Zsn(s,c,h,g))if(h)PC(c)||d.insertExportModifier(s,c);else{let _=eYt(c);_.length!==0&&d.insertNodesAfter(s,c,_.map(Vsn))}}function tYt(s,c,g,d){let h=c.getTypeChecker();if(d){let _=YWe(s,d.all,h),S=Mo(s.fileName),R=Iz(s.fileName);return To(S,mNs(CNs(_.oldFileImportsFromTargetFile,_.movedSymbols),R,S,g))+R}return""}function fNs(s){let{file:c}=s,g=pWe($z(s)),{statements:d}=c,h=Se(d,O=>O.end>g.pos);if(h===-1)return;let _=d[h],S=Hsn(c,_);S&&(h=S.start);let R=Se(d,O=>O.end>=g.end,h);R!==-1&&g.end<=d[R].getStart()&&R--;let T=Hsn(c,d[R]);return T&&(R=T.end),{toMove:d.slice(h,R===-1?d.length:R+1),afterLast:R===-1?void 0:d[R+1]}}function j1e(s){let c=fNs(s);if(c===void 0)return;let g=[],d=[],{toMove:h,afterLast:_}=c;return Fn(h,INs,(S,R)=>{for(let T=S;T!!(c.transformFlags&2))}function INs(s){return!hNs(s)&&!cS(s)}function hNs(s){switch(s.kind){case 273:return!0;case 272:return!Ga(s,32);case 244:return s.declarationList.declarations.every(c=>!!c.initializer&&uy(c.initializer,!0));default:return!1}}function YWe(s,c,g,d=new Set,h){var _;let S=new Set,R=new Map,T=new Map,O=ee(rYt(c));O&&R.set(O,[!1,Gs((_=O.declarations)==null?void 0:_[0],re=>dy(re)||Yw(re)||Mx(re)||Zm(re)||mg(re)||nc(re))]);for(let re of c)iYt(re,ge=>{S.add(pe.checkDefined(PC(ge)?g.getSymbolAtLocation(ge.expression.left):ge.symbol,"Need a symbol here"))});let V=new Set;for(let re of c)nYt(re,g,h,(ge,Ie)=>{if(!zt(ge.declarations))return;if(d.has(VC(ge,g))){V.add(ge);return}let _e=de(ge.declarations,ait);if(_e){let Ee=R.get(ge);R.set(ge,[(Ee===void 0||Ee)&&Ie,Gs(_e,Ne=>dy(Ne)||Yw(Ne)||Mx(Ne)||Zm(Ne)||mg(Ne)||nc(Ne))])}else!S.has(ge)&&ue(ge.declarations,Ee=>sYt(Ee)&&_Ns(Ee)===s)&&T.set(ge,Ie)});for(let re of R.keys())V.add(re);let M=new Map;for(let re of s.statements)k(c,re)||(O&&re.transformFlags&2&&V.delete(O),nYt(re,g,h,(ge,Ie)=>{S.has(ge)&&M.set(ge,Ie),V.delete(ge)}));return{movedSymbols:S,targetFileImportsFromOldFile:T,oldFileImportsFromTargetFile:M,oldImportsNeededByTargetFile:R,unusedImportsFromOldFile:V};function ee(re){if(re===void 0)return;let ge=g.getJsxNamespace(re),Ie=g.resolveName(ge,re,1920,!0);return Ie&&zt(Ie.declarations,ait)?Ie:void 0}}function mNs(s,c,g,d){let h=s;for(let _=1;;_++){let S=To(g,h+c);if(!d.fileExists(S))return h;h=`${s}.${_}`}}function CNs(s,c){return NB(s,lnt)||NB(c,lnt)||"newFile"}function nYt(s,c,g,d){s.forEachChild(function h(_){if(Ir(_)&&!KT(_)){if(g&&!gy(g,_))return;let S=c.getSymbolAtLocation(_);S&&d(S,e9(_))}else _.forEachChild(h)})}function iYt(s,c){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return c(s);case 244:return J(s.declarationList.declarations,g=>Psn(g.name,c));case 245:{let{expression:g}=s;return po(g)&&oI(g)===1?c(s):void 0}}}function ait(s){switch(s.kind){case 272:case 277:case 274:case 275:return!0;case 261:return Osn(s);case 209:return nc(s.parent.parent)&&Osn(s.parent.parent);default:return!1}}function Osn(s){return cl(s.parent.parent.parent)&&!!s.initializer&&uy(s.initializer,!0)}function sYt(s){return Msn(s)&&cl(s.parent)||nc(s)&&cl(s.parent.parent.parent)}function _Ns(s){return nc(s)?s.parent.parent.parent:s.parent}function Psn(s,c){switch(s.kind){case 80:return c(Ma(s.parent,g=>nc(g)||mg(g)));case 208:case 207:return J(s.elements,g=>Ep(g)?void 0:Psn(g.name,c));default:return pe.assertNever(s,`Unexpected name kind ${s.kind}`)}}function Msn(s){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return!0;default:return!1}}function yNs(s,c,g,d,h){var _;let S=new Set,R=(_=d.symbol)==null?void 0:_.exports;if(R){let O=c.getTypeChecker(),V=new Map;for(let M of h.all)Lsn(M)&&Ga(M,32)&&iYt(M,ee=>{var re;let ge=bE(ee)?(re=R.get(ee.symbol.escapedName))==null?void 0:re.declarations:void 0,Ie=J(ge,_e=>Vh(_e)?_e:k0(_e)?Gs(_e.parent.parent,Vh):void 0);Ie&&Ie.moduleSpecifier&&V.set(Ie,(V.get(Ie)||new Set).add(ee))});for(let[M,ee]of Do(V))if(M.exportClause&&Ev(M.exportClause)&&B(M.exportClause.elements)){let re=M.exportClause.elements,ge=Le(re,Ie=>de(VC(Ie.symbol,O).declarations,_e=>sYt(_e)&&ee.has(_e))===void 0);if(B(ge)===0){s.deleteNode(d,M),S.add(M);continue}B(ge)Vh(O)&&!!O.moduleSpecifier&&!S.has(O));T?s.insertNodesBefore(d,T,g,!0):s.insertNodesAfter(d,d.statements[d.statements.length-1],g)}function Hsn(s,c){if(Gd(c)){let g=c.symbol.declarations;if(g===void 0||B(g)<=1||!k(g,c))return;let d=g[0],h=g[B(g)-1],_=Xt(g,T=>ms(T)===s&&Lc(T)?T:void 0),S=Se(s.statements,T=>T.end>=h.end),R=Se(s.statements,T=>T.end>=d.end);return{toMove:_,start:R,end:S}}}function oYt(s,c,g){let d=new Set;for(let h of s.imports){let _=O7(h);if(Yf(_)&&_.importClause&&_.importClause.namedBindings&&wN(_.importClause.namedBindings))for(let S of _.importClause.namedBindings.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(VC(R,g))}if(Z7(_.parent)&&$m(_.parent.name))for(let S of _.parent.name.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(VC(R,g))}}for(let h of c)nYt(h,g,void 0,_=>{let S=VC(_,g);S.valueDeclaration&&ms(S.valueDeclaration).path===s.path&&d.add(S)});return d}function KF(s){return s.error!==void 0}function l5(s,c){return c?s.substr(0,c.length)===c:!0}function aYt(s,c,g,d){return jo(s)&&!xa(c)&&!g.resolveName(s.name.text,s,111551,!1)&&!p(s.name)&&!lv(s.name)?s.name.text:UU(xa(c)?"newProperty":"newLocal",d)}function cYt(s,c,g,d,h,_){c.forEach(([S,R],T)=>{var O;let V=VC(T,d);d.isUnknownSymbol(V)?_.addVerbatimImport(pe.checkDefined(R??ji((O=T.declarations)==null?void 0:O[0],T7))):V.parent===void 0?(pe.assert(R!==void 0,"expected module symbol to have a declaration"),_.addImportForModuleSymbol(T,S,R)):_.addImportFromExportedSymbol(V,S,R)}),$Ht(g,s.fileName,_,h)}var QWe="Inline variable",lYt=Bu(Z.Inline_variable),uYt={name:QWe,description:lYt,kind:"refactor.inline.variable"};Qx(QWe,{kinds:[uYt.kind],getAvailableActions(s){let{file:c,program:g,preferences:d,startPosition:h,triggerReason:_}=s,S=Ysn(c,h,_==="invoked",g);return S?rq.isRefactorErrorInfo(S)?d.provideRefactorNotApplicableReason?[{name:QWe,description:lYt,actions:[{...uYt,notApplicableReason:S.error}]}]:E:[{name:QWe,description:lYt,actions:[uYt]}]:E},getEditsForAction(s,c){pe.assert(c===QWe,"Unexpected refactor invoked");let{file:g,program:d,startPosition:h}=s,_=Ysn(g,h,!0,d);if(!_||rq.isRefactorErrorInfo(_))return;let{references:S,declaration:R,replacement:T}=_;return{edits:xo.ChangeTracker.with(s,V=>{for(let M of S){let ee=Lg(T)&&Ir(M)&&Iv(M.parent);ee&&Tie(ee)&&!QI(ee.parent.parent)?ENs(V,g,ee,T):V.replaceNode(g,M,bNs(M,T))}V.delete(g,R)})}}});function Ysn(s,c,g,d){var h,_;let S=d.getTypeChecker(),R=Ob(s,c),T=R.parent;if(Ir(R)){if(Une(T)&&k7(T)&&Ir(T.name)){if(((h=S.getMergedSymbol(T.symbol).declarations)==null?void 0:h.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};if(Qsn(T))return;let O=Xsn(T,S,s);return O&&{references:O,declaration:T,replacement:T.initializer}}if(g){let O=S.resolveName(R.text,R,111551,!1);if(O=O&&S.getMergedSymbol(O),((_=O?.declarations)==null?void 0:_.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};let V=O.declarations[0];if(!Une(V)||!k7(V)||!Ir(V.name)||Qsn(V))return;let M=Xsn(V,S,s);return M&&{references:M,declaration:V,replacement:V.initializer}}return{error:Bu(Z.Could_not_find_variable_to_inline)}}}function Qsn(s){let c=Ma(s.parent.parent,Eh);return zt(c.modifiers,y)}function Xsn(s,c,g){let d=[],h=zp.Core.eachSymbolReferenceInFile(s.name,c,g,_=>{if(zp.isWriteAccessForReference(_)&&!u0(_.parent)||k0(_.parent)||yf(_.parent)||Pw(_.parent)||nl(s,_.pos))return!0;d.push(_)});return d.length===0||h?void 0:d}function bNs(s,c){c=KA(c);let{parent:g}=s;return un(g)&&(U7(c)SNs(c.file,c.program,d,_,c.host,c,c.preferences)),renameFilename:void 0,renameLocation:void 0}}});function SNs(s,c,g,d,h,_,S){let R=c.getTypeChecker(),T=YWe(s,g.all,R),O=tYt(s,c,h,g),V=ZWe(O,s.externalModuleIndicator?99:s.commonJsModuleIndicator?1:void 0,c,h),M=Z0.createImportAdder(s,_.program,_.preferences,_.host),ee=Z0.createImportAdder(V,_.program,_.preferences,_.host);jHt(s,V,T,d,g,c,h,S,ee,M),zHt(c,d,s.fileName,O,$D(h))}var vNs={},dYt="Convert overload list to single signature",Jsn=Bu(Z.Convert_overload_list_to_single_signature),Usn={name:dYt,description:Jsn,kind:"refactor.rewrite.function.overloadList"};Qx(dYt,{kinds:[Usn.kind],getEditsForAction:wNs,getAvailableActions:BNs});function BNs(s){let{file:c,startPosition:g,program:d}=s;return jsn(c,g,d)?[{name:dYt,description:Jsn,actions:[Usn]}]:E}function wNs(s){let{file:c,startPosition:g,program:d}=s,h=jsn(c,g,d);if(!h)return;let _=d.getTypeChecker(),S=h[h.length-1],R=S;switch(S.kind){case 174:{R=me.updateMethodSignature(S,S.modifiers,S.name,S.questionToken,S.typeParameters,O(h),S.type);break}case 175:{R=me.updateMethodDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.questionToken,S.typeParameters,O(h),S.type,S.body);break}case 180:{R=me.updateCallSignature(S,S.typeParameters,O(h),S.type);break}case 177:{R=me.updateConstructorDeclaration(S,S.modifiers,O(h),S.body);break}case 181:{R=me.updateConstructSignature(S,S.typeParameters,O(h),S.type);break}case 263:{R=me.updateFunctionDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.typeParameters,O(h),S.type,S.body);break}default:return pe.failBadSyntaxKind(S,"Unhandled signature kind in overload list conversion refactoring")}if(R===S)return;return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,ee=>{ee.replaceNodeRange(c,h[0],h[h.length-1],R)})};function O(ee){let re=ee[ee.length-1];return Gd(re)&&re.body&&(ee=ee.slice(0,ee.length-1)),me.createNodeArray([me.createParameterDeclaration(void 0,me.createToken(26),"args",void 0,me.createUnionTypeNode(lt(ee,V)))])}function V(ee){let re=lt(ee.parameters,M);return ti(me.createTupleTypeNode(re),zt(re,ge=>!!B(P3(ge)))?0:1)}function M(ee){pe.assert(Ir(ee.name));let re=gn(me.createNamedTupleMember(ee.dotDotDotToken,ee.name,ee.questionToken,ee.type||me.createKeywordTypeNode(133)),ee),ge=ee.symbol&&ee.symbol.getDocumentationComment(_);if(ge){let Ie=$1e(ge);Ie.length&&VB(re,[{text:`* ${Ie.split(` `).map(_e=>` * ${_e}`).join(` `)} - `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return re}}function Hsn(s){switch(s.kind){case 174:case 175:case 180:case 177:case 181:case 263:return!0}return!1}function Ysn(s,c,g){let d=Jc(s,c),h=ji(d,Hsn);if(!h||Gd(h)&&h.body&&rse(h.body,c))return;let _=g.getTypeChecker(),S=h.symbol;if(!S)return;let R=S.declarations;if(B(R)<=1||!ue(R,ee=>ms(ee)===s)||!Hsn(R[0]))return;let T=R[0].kind;if(!ue(R,ee=>ee.kind===T))return;let O=R;if(zt(O,ee=>!!ee.typeParameters||zt(ee.parameters,re=>!!re.modifiers||!Ir(re.name))))return;let V=Xt(O,ee=>_.getSignatureFromDeclaration(ee));if(B(V)!==B(R))return;let M=_.getReturnTypeOfSignature(V[0]);if(ue(V,ee=>_.getReturnTypeOfSignature(ee)===M))return O}var pYt="Add or remove braces in an arrow function",Qsn=Bu(Z.Add_or_remove_braces_in_an_arrow_function),lit={name:"Add braces to arrow function",description:Bu(Z.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},JWe={name:"Remove braces from arrow function",description:Bu(Z.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};Yx(pYt,{kinds:[JWe.kind],getEditsForAction:TNs,getAvailableActions:wNs});function wNs(s){let{file:c,startPosition:g,triggerReason:d}=s,h=Xsn(c,g,d==="invoked");return h?UF(h)?s.preferences.provideRefactorNotApplicableReason?[{name:pYt,description:Qsn,actions:[{...lit,notApplicableReason:h.error},{...JWe,notApplicableReason:h.error}]}]:E:[{name:pYt,description:Qsn,actions:[h.addBraces?lit:JWe]}]:E}function TNs(s,c){let{file:g,startPosition:d}=s,h=Xsn(g,d);pe.assert(h&&!UF(h),"Expected applicable refactor info");let{expression:_,returnStatement:S,func:R}=h,T;if(c===lit.name){let V=me.createReturnStatement(_);T=me.createBlock([V],!0),cse(_,V,g,3,!0)}else if(c===JWe.name&&S){let V=_||me.createVoidZero();T=EWe(V)?me.createParenthesizedExpression(V):V,O1e(S,T,g,3,!1),cse(S,T,g,3,!1),dpe(S,T,g,3,!1)}else pe.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>{V.replaceNode(g,R.body,T)})}}function Xsn(s,c,g=!0,d){let h=Jc(s,c),_=f1(h);if(!_)return{error:Bu(Z.Could_not_find_a_containing_arrow_function)};if(!uA(_))return{error:Bu(Z.Containing_function_is_not_an_arrow_function)};if(!(!uy(_,h)||uy(_.body,h)&&!g)){if(a5(lit.kind,d)&&un(_.body))return{func:_,addBraces:!0,expression:_.body};if(a5(JWe.kind,d)&&eg(_.body)&&_.body.statements.length===1){let S=ma(_.body.statements);if(C2(S)){let R=S.expression&&ag(_U(S.expression,!1))?me.createParenthesizedExpression(S.expression):S.expression;return{func:_,addBraces:!1,expression:R,returnStatement:S}}}}}var RNs={},Jsn="Convert arrow function or function expression",NNs=Bu(Z.Convert_arrow_function_or_function_expression),UWe={name:"Convert to anonymous function",description:Bu(Z.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},KWe={name:"Convert to named function",description:Bu(Z.Convert_to_named_function),kind:"refactor.rewrite.function.named"},jWe={name:"Convert to arrow function",description:Bu(Z.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};Yx(Jsn,{kinds:[UWe.kind,KWe.kind,jWe.kind],getEditsForAction:kNs,getAvailableActions:DNs});function DNs(s){let{file:c,startPosition:g,program:d,kind:h}=s,_=Ksn(c,g,d);if(!_)return E;let{selectedVariableDeclaration:S,func:R}=_,T=[],O=[];if(a5(KWe.kind,h)){let V=S||uA(R)&&nc(R.parent)?void 0:Bu(Z.Could_not_convert_to_named_function);V?O.push({...KWe,notApplicableReason:V}):T.push(KWe)}if(a5(UWe.kind,h)){let V=!S&&uA(R)?void 0:Bu(Z.Could_not_convert_to_anonymous_function);V?O.push({...UWe,notApplicableReason:V}):T.push(UWe)}if(a5(jWe.kind,h)){let V=jA(R)?void 0:Bu(Z.Could_not_convert_to_arrow_function);V?O.push({...jWe,notApplicableReason:V}):T.push(jWe)}return[{name:Jsn,description:NNs,actions:T.length===0&&s.preferences.provideRefactorNotApplicableReason?O:T}]}function kNs(s,c){let{file:g,startPosition:d,program:h}=s,_=Ksn(g,d,h);if(!_)return;let{func:S}=_,R=[];switch(c){case UWe.name:R.push(...ZNs(s,S));break;case KWe.name:let T=FNs(S);if(!T)return;R.push(...LNs(s,S,T));break;case jWe.name:if(!jA(S))return;R.push(...VNs(s,S));break;default:return pe.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:R}}function Usn(s){let c=!1;return s.forEachChild(function g(d){if(tse(d)){c=!0;return}!xa(d)&&!ah(d)&&!jA(d)&&Lu(d,g)}),c}function Ksn(s,c,g){let d=Jc(s,c),h=g.getTypeChecker(),_=GNs(s,h,d.parent);if(_&&!Usn(_.body)&&!h.containsArgumentsReference(_))return{selectedVariableDeclaration:!0,func:_};let S=f1(d);if(S&&(jA(S)||uA(S))&&!uy(S.body,d)&&!Usn(S.body)&&!h.containsArgumentsReference(S))return jA(S)&&zsn(s,h,S)?void 0:{selectedVariableDeclaration:!1,func:S}}function xNs(s){return nc(s)||A_(s)&&s.declarations.length===1}function GNs(s,c,g){if(!xNs(g))return;let h=(nc(g)?g:ma(g.declarations)).initializer;if(h&&(uA(h)||jA(h)&&!zsn(s,c,h)))return h}function jsn(s){if(un(s)){let c=me.createReturnStatement(s),g=s.getSourceFile();return gn(c,s),Oy(c),O1e(s,c,g,void 0,!0),me.createBlock([c],!0)}else return s}function FNs(s){let c=s.parent;if(!nc(c)||!D7(c))return;let g=c.parent,d=g.parent;if(!(!A_(g)||!Eh(d)||!Ir(c.name)))return{variableDeclaration:c,variableDeclarationList:g,statement:d,name:c.name}}function ZNs(s,c){let{file:g}=s,d=jsn(c.body),h=me.createFunctionExpression(c.modifiers,c.asteriskToken,void 0,c.typeParameters,c.parameters,c.type,d);return xo.ChangeTracker.with(s,_=>_.replaceNode(g,c,h))}function LNs(s,c,g){let{file:d}=s,h=jsn(c.body),{variableDeclaration:_,variableDeclarationList:S,statement:R,name:T}=g;gEe(R);let O=Hc(_)&32|c_(c),V=me.createModifiersFromModifierFlags(O),M=me.createFunctionDeclaration(B(V)?V:void 0,c.asteriskToken,T,c.typeParameters,c.parameters,c.type,h);return S.declarations.length===1?xo.ChangeTracker.with(s,ee=>ee.replaceNode(d,R,M)):xo.ChangeTracker.with(s,ee=>{ee.delete(d,_),ee.insertNodeAfter(d,R,M)})}function VNs(s,c){let{file:g}=s,h=c.body.statements[0],_;WNs(c.body,h)?(_=h.expression,Oy(_),XU(h,_)):_=c.body;let S=me.createArrowFunction(c.modifiers,c.typeParameters,c.parameters,c.type,me.createToken(39),_);return xo.ChangeTracker.with(s,R=>R.replaceNode(g,c,S))}function WNs(s,c){return s.statements.length===1&&C2(c)&&!!c.expression}function zsn(s,c,g){return!!g.name&&zp.Core.isSymbolReferencedInFile(g.name,c,s)}var ONs={},uit="Convert parameters to destructured object",PNs=1,qsn=Bu(Z.Convert_parameters_to_destructured_object),$sn={name:uit,description:qsn,kind:"refactor.rewrite.parameters.toDestructured"};Yx(uit,{kinds:[$sn.kind],getEditsForAction:HNs,getAvailableActions:MNs});function MNs(s){let{file:c,startPosition:g}=s;return s0(c)||!ron(c,g,s.program.getTypeChecker())?E:[{name:uit,description:qsn,actions:[$sn]}]}function HNs(s,c){pe.assert(c===uit,"Unexpected action name");let{file:g,startPosition:d,program:h,cancellationToken:_,host:S}=s,R=ron(g,d,h.getTypeChecker());if(!R||!_)return;let T=QNs(R,h,_);return T.valid?{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>YNs(g,h,S,V,R,T))}:{edits:[]}}function YNs(s,c,g,d,h,_){let S=_.signature,R=lt(oon(h,c,g),V=>KA(V));if(S){let V=lt(oon(S,c,g),M=>KA(M));O(S,V)}O(h,R);let T=ol(_.functionCalls,(V,M)=>Zt(V.pos,M.pos));for(let V of T)if(V.arguments&&V.arguments.length){let M=KA(tDs(h,V.arguments),!0);d.replaceNodeRange(ms(V),ma(V.arguments),Ei(V.arguments),M,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}function O(V,M){d.replaceNodeRangeWithNodes(s,ma(V.parameters),Ei(V.parameters),M,{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}}function QNs(s,c,g){let d=nDs(s),h=Tc(s)?rDs(s):[],_=no([...d,...h],bg),S=c.getTypeChecker(),R=jt(_,M=>zp.getReferenceEntriesForNode(-1,M,c,c.getSourceFiles(),g)),T=O(R);return ue(T.declarations,M=>k(_,M))||(T.valid=!1),T;function O(M){let ee={accessExpressions:[],typeUsages:[]},re={functionCalls:[],declarations:[],classReferences:ee,valid:!0},ge=lt(d,V),Ie=lt(h,V),_e=Tc(s),Ee=lt(d,Ne=>fYt(Ne,S));for(let Ne of M){if(Ne.kind===zp.EntryKind.Span){re.valid=!1;continue}if(k(Ee,V(Ne.node))){if(KNs(Ne.node.parent)){re.signature=Ne.node.parent;continue}let Ze=ton(Ne);if(Ze){re.functionCalls.push(Ze);continue}}let Te=fYt(Ne.node,S);if(Te&&k(Ee,Te)){let Ze=IYt(Ne);if(Ze){re.declarations.push(Ze);continue}}if(k(ge,V(Ne.node))||ipe(Ne.node)){if(eon(Ne))continue;let Pe=IYt(Ne);if(Pe){re.declarations.push(Pe);continue}let Ke=ton(Ne);if(Ke){re.functionCalls.push(Ke);continue}}if(_e&&k(Ie,V(Ne.node))){if(eon(Ne))continue;let Pe=IYt(Ne);if(Pe){re.declarations.push(Pe);continue}let Ke=XNs(Ne);if(Ke){ee.accessExpressions.push(Ke);continue}if(mm(s.parent)){let et=JNs(Ne);if(et){ee.typeUsages.push(et);continue}}}re.valid=!1}return re}function V(M){let ee=S.getSymbolAtLocation(M);return ee&&ynt(ee,S)}}function fYt(s,c){let g=e2e(s);if(g){let d=c.getContextualTypeForObjectLiteralElement(g),h=d?.getSymbol();if(h&&!(aI(h)&6))return h}}function eon(s){let c=s.node;if(Ay(c.parent)||Hw(c.parent)||Zm(c.parent)||Px(c.parent)||D0(c.parent)||yf(c.parent))return c}function IYt(s){if(em(s.node.parent))return s.node}function ton(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 214:case 215:let d=Gs(g,gv);if(d&&d.expression===c)return d;break;case 212:let h=Gs(g,jo);if(h&&h.parent&&h.name===c){let S=Gs(h.parent,gv);if(S&&S.expression===h)return S}break;case 213:let _=Gs(g,Qg);if(_&&_.parent&&_.argumentExpression===c){let S=Gs(_.parent,gv);if(S&&S.expression===_)return S}break}}}function XNs(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 212:let d=Gs(g,jo);if(d&&d.expression===c)return d;break;case 213:let h=Gs(g,Qg);if(h&&h.expression===c)return h;break}}}function JNs(s){let c=s.node;if(YU(c)===2||NAe(c.parent))return c}function ron(s,c,g){let d=nse(s,c),h=nAe(d);if(!UNs(d)&&h&&jNs(h,g)&&uy(h,d)&&!(h.body&&uy(h.body,d)))return h}function UNs(s){let c=ji(s,I3);if(c){let g=ji(c,d=>!I3(d));return!!g&&Gd(g)}return!1}function KNs(s){return Il(s)&&(d_(s.parent)||bh(s.parent))}function jNs(s,c){var g;if(!zNs(s.parameters,c))return!1;switch(s.kind){case 263:return non(s)&&zWe(s,c);case 175:if(ag(s.parent)){let d=fYt(s.name,c);return((g=d?.declarations)==null?void 0:g.length)===1&&zWe(s,c)}return zWe(s,c);case 177:return mm(s.parent)?non(s.parent)&&zWe(s,c):ion(s.parent.parent)&&zWe(s,c);case 219:case 220:return ion(s.parent)}return!1}function zWe(s,c){return!!s.body&&!c.isImplementationOfOverload(s)}function non(s){return s.name?!0:!!sse(s,90)}function zNs(s,c){return $Ns(s)>=PNs&&ue(s,g=>qNs(g,c))}function qNs(s,c){if(TB(s)){let g=c.getTypeAtLocation(s);if(!c.isArrayType(g)&&!c.isTupleType(g))return!1}return!s.modifiers&&Ir(s.name)}function ion(s){return nc(s)&&sI(s)&&Ir(s.name)&&!s.type}function hYt(s){return s.length>0&&tse(s[0].name)}function $Ns(s){return hYt(s)?s.length-1:s.length}function son(s){return hYt(s)&&(s=me.createNodeArray(s.slice(1),s.hasTrailingComma)),s}function eDs(s,c){return Ir(c)&&g2(c)===s?me.createShorthandPropertyAssignment(s):me.createPropertyAssignment(s,c)}function tDs(s,c){let g=son(s.parameters),d=TB(Ei(g)),h=d?c.slice(0,g.length-1):c,_=lt(h,(R,T)=>{let O=git(g[T]),V=eDs(O,R);return Oy(V.name),Cm(V)&&Oy(V.initializer),XU(R,V),V});if(d&&c.length>=g.length){let R=c.slice(g.length-1),T=me.createPropertyAssignment(git(Ei(g)),me.createArrayLiteralExpression(R));_.push(T)}return me.createObjectLiteralExpression(_,!1)}function oon(s,c,g){let d=c.getTypeChecker(),h=son(s.parameters),_=lt(h,V),S=me.createObjectBindingPattern(_),R=M(h),T;ue(h,ge)&&(T=me.createObjectLiteralExpression());let O=me.createParameterDeclaration(void 0,void 0,S,void 0,R,T);if(hYt(s.parameters)){let Ie=s.parameters[0],_e=me.createParameterDeclaration(void 0,void 0,Ie.name,void 0,Ie.type);return Oy(_e.name),XU(Ie.name,_e.name),Ie.type&&(Oy(_e.type),XU(Ie.type,_e.type)),me.createNodeArray([_e,O])}return me.createNodeArray([O]);function V(Ie){let _e=me.createBindingElement(void 0,void 0,git(Ie),TB(Ie)&&ge(Ie)?me.createArrayLiteralExpression():Ie.initializer);return Oy(_e),Ie.initializer&&_e.initializer&&XU(Ie.initializer,_e.initializer),_e}function M(Ie){let _e=lt(Ie,ee);return Ww(me.createTypeLiteralNode(_e),1)}function ee(Ie){let _e=Ie.type;!_e&&(Ie.initializer||TB(Ie))&&(_e=re(Ie));let Ee=me.createPropertySignature(void 0,git(Ie),ge(Ie)?me.createToken(58):Ie.questionToken,_e);return Oy(Ee),XU(Ie.name,Ee.name),Ie.type&&Ee.type&&XU(Ie.type,Ee.type),Ee}function re(Ie){let _e=d.getTypeAtLocation(Ie);return fpe(_e,Ie,c,g)}function ge(Ie){if(TB(Ie)){let _e=d.getTypeAtLocation(Ie);return!d.isTupleType(_e)}return d.isOptionalParameter(Ie)}}function git(s){return g2(s.name)}function rDs(s){switch(s.parent.kind){case 264:let c=s.parent;return c.name?[c.name]:[pe.checkDefined(sse(c,90),"Nameless class declaration should be a default export")];case 232:let d=s.parent,h=s.parent.parent,_=d.name;return _?[_,h.name]:[h.name]}}function nDs(s){switch(s.kind){case 263:return s.name?[s.name]:[pe.checkDefined(sse(s,90),"Nameless function declaration should be a default export")];case 175:return[s.name];case 177:let g=pe.checkDefined(ep(s,137,s.getSourceFile()),"Constructor declaration should have constructor keyword");return s.parent.kind===232?[s.parent.parent.name,g]:[g];case 220:return[s.parent.name];case 219:return s.name?[s.name,s.parent.name]:[s.parent.name];default:return pe.assertNever(s,`Unexpected function declaration kind ${s.kind}`)}}var iDs={},mYt="Convert to template string",CYt=Bu(Z.Convert_to_template_string),_Yt={name:mYt,description:CYt,kind:"refactor.rewrite.string"};Yx(mYt,{kinds:[_Yt.kind],getEditsForAction:oDs,getAvailableActions:sDs});function sDs(s){let{file:c,startPosition:g}=s,d=aon(c,g),h=yYt(d),_=Lg(h),S={name:mYt,description:CYt,actions:[]};return _&&s.triggerReason!=="invoked"?E:JT(h)&&(_||po(h)&&bYt(h).isValidConcatenation)?(S.actions.push(_Yt),[S]):s.preferences.provideRefactorNotApplicableReason?(S.actions.push({..._Yt,notApplicableReason:Bu(Z.Can_only_convert_string_concatenations_and_string_literals)}),[S]):E}function aon(s,c){let g=Jc(s,c),d=yYt(g);return!bYt(d).isValidConcatenation&&dI(d.parent)&&po(d.parent.parent)?d.parent.parent:g}function oDs(s,c){let{file:g,startPosition:d}=s,h=aon(g,d);switch(c){case CYt:return{edits:aDs(s,h)};default:return pe.fail("invalid action")}}function aDs(s,c){let g=yYt(c),d=s.file,h=ADs(bYt(g),d),_=o2(d.text,g.end);if(_){let S=_[_.length-1],R={pos:_[0].pos,end:S.end};return xo.ChangeTracker.with(s,T=>{T.deleteRange(d,R),T.replaceNode(d,g,h)})}else return xo.ChangeTracker.with(s,S=>S.replaceNode(d,g,h))}function cDs(s){return!(s.operatorToken.kind===64||s.operatorToken.kind===65)}function yYt(s){return ji(s.parent,g=>{switch(g.kind){case 212:case 213:return!1;case 229:case 227:return!(po(g.parent)&&cDs(g.parent));default:return"quit"}})||s}function bYt(s){let c=S=>{if(!po(S))return{nodes:[S],operators:[],validOperators:!0,hasString:Lg(S)||MW(S)};let{nodes:R,operators:T,hasString:O,validOperators:V}=c(S.left);if(!(O||Lg(S.right)||PF(S.right)))return{nodes:[S],operators:[],hasString:!1,validOperators:!0};let M=S.operatorToken.kind===40,ee=V&&M;return R.push(S.right),T.push(S.operatorToken),{nodes:R,operators:T,hasString:!0,validOperators:ee}},{nodes:g,operators:d,validOperators:h,hasString:_}=c(s);return{nodes:g,operators:d,isValidConcatenation:h&&_}}var lDs=(s,c)=>(g,d)=>{g(d,h)=>{for(;d.length>0;){let _=d.shift();dpe(s[_],h,c,3,!1),g(_,h)}};function gDs(s){return s.replace(/\\.|[$`]/g,c=>c[0]==="\\"?c:"\\"+c)}function con(s){let c=AQ(s)||Sie(s)?-2:-1;return Fp(s).slice(1,c)}function lon(s,c){let g=[],d="",h="";for(;s{uon(Te);let Pe=Ze===ee.templateSpans.length-1,Ke=Te.literal.text+(Pe?ge:""),et=con(Te.literal)+(Pe?Ie:"");return me.createTemplateSpan(Te.expression,Ee&&Pe?me.createTemplateTail(Ke,et):me.createTemplateMiddle(Ke,et))});O.push(...Ne)}else{let Ne=Ee?me.createTemplateTail(ge,Ie):me.createTemplateMiddle(ge,Ie);h(_e,Ne),O.push(me.createTemplateSpan(ee,Ne))}}return me.createTemplateExpression(V,O)}function uon(s){let c=s.getSourceFile();dpe(s,s.expression,c,3,!1),O1e(s.expression,s.expression,c,3,!1)}function dDs(s){return dI(s)&&(uon(s),s=s.expression),s}var pDs={},Ait="Convert to optional chain expression",EYt=Bu(Z.Convert_to_optional_chain_expression),SYt={name:Ait,description:EYt,kind:"refactor.rewrite.expression.optionalChain"};Yx(Ait,{kinds:[SYt.kind],getEditsForAction:IDs,getAvailableActions:fDs});function fDs(s){let c=gon(s,s.triggerReason==="invoked");return c?UF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Ait,description:EYt,actions:[{...SYt,notApplicableReason:c.error}]}]:E:[{name:Ait,description:EYt,actions:[SYt]}]:E}function IDs(s,c){let g=gon(s);return pe.assert(g&&!UF(g),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(s,h=>SDs(s.file,s.program.getTypeChecker(),h,g,c)),renameFilename:void 0,renameLocation:void 0}}function dit(s){return po(s)||Mw(s)}function hDs(s){return OC(s)||C2(s)||Eh(s)}function pit(s){return dit(s)||hDs(s)}function gon(s,c=!0){let{file:g,program:d}=s,h=qz(s),_=h.length===0;if(_&&!c)return;let S=Jc(g,h.start),R=ope(g,h.start+h.length),T=RA(S.pos,R&&R.end>=S.pos?R.getEnd():S.getEnd()),O=_?bDs(S):yDs(S,T),V=O&&pit(O)?EDs(O):void 0;if(!V)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let M=d.getTypeChecker();return Mw(V)?mDs(V,M):CDs(V)}function mDs(s,c){let g=s.condition,d=BYt(s.whenTrue);if(!d||c.isNullableType(c.getTypeAtLocation(d)))return{error:Bu(Z.Could_not_find_convertible_access_expression)};if((jo(g)||Ir(g))&&vYt(g,d.expression))return{finalExpression:d,occurrences:[g],expression:s};if(po(g)){let h=Aon(d.expression,g);return h?{finalExpression:d,occurrences:h,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}}function CDs(s){if(s.operatorToken.kind!==56)return{error:Bu(Z.Can_only_convert_logical_AND_access_chains)};let c=BYt(s.right);if(!c)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let g=Aon(c.expression,s.left);return g?{finalExpression:c,occurrences:g,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}function Aon(s,c){let g=[];for(;po(c)&&c.operatorToken.kind===56;){let h=vYt(JA(s),JA(c.right));if(!h)break;g.push(h),s=h,c=c.left}let d=vYt(s,c);return d&&g.push(d),g.length>0?g:void 0}function vYt(s,c){if(!(!Ir(c)&&!jo(c)&&!Qg(c)))return _Ds(s,c)?c:void 0}function _Ds(s,c){for(;(Ll(s)||jo(s)||Qg(s))&&z1e(s)!==z1e(c);)s=s.expression;for(;jo(s)&&jo(c)||Qg(s)&&Qg(c);){if(z1e(s)!==z1e(c))return!1;s=s.expression,c=c.expression}return Ir(s)&&Ir(c)&&s.getText()===c.getText()}function z1e(s){if(Ir(s)||I1(s))return s.getText();if(jo(s))return z1e(s.name);if(Qg(s))return z1e(s.argumentExpression)}function yDs(s,c){for(;s.parent;){if(pit(s)&&c.length!==0&&s.end>=c.start+c.length)return s;s=s.parent}}function bDs(s){for(;s.parent;){if(pit(s)&&!pit(s.parent))return s;s=s.parent}}function EDs(s){if(dit(s))return s;if(Eh(s)){let c=v3(s),g=c?.initializer;return g&&dit(g)?g:void 0}return s.expression&&dit(s.expression)?s.expression:void 0}function BYt(s){if(s=JA(s),po(s))return BYt(s.left);if((jo(s)||Qg(s)||Ll(s))&&!ZC(s))return s}function don(s,c,g){if(jo(c)||Qg(c)||Ll(c)){let d=don(s,c.expression,g),h=g.length>0?g[g.length-1]:void 0,_=h?.getText()===c.expression.getText();if(_&&g.pop(),Ll(c))return _?me.createCallChain(d,me.createToken(29),c.typeArguments,c.arguments):me.createCallChain(d,c.questionDotToken,c.typeArguments,c.arguments);if(jo(c))return _?me.createPropertyAccessChain(d,me.createToken(29),c.name):me.createPropertyAccessChain(d,c.questionDotToken,c.name);if(Qg(c))return _?me.createElementAccessChain(d,me.createToken(29),c.argumentExpression):me.createElementAccessChain(d,c.questionDotToken,c.argumentExpression)}return c}function SDs(s,c,g,d,h){let{finalExpression:_,occurrences:S,expression:R}=d,T=S[S.length-1],O=don(c,_,S);O&&(jo(O)||Qg(O)||Ll(O))&&(po(R)?g.replaceNodeRange(s,T,_,O):Mw(R)&&g.replaceNode(s,R,me.createBinaryExpression(O,me.createToken(61),R.whenFalse)))}var pon={};o(pon,{Messages:()=>L_,RangeFacts:()=>hon,getRangeToExtract:()=>wYt,getRefactorActionsToExtractSymbol:()=>fon,getRefactorEditsToExtractSymbol:()=>Ion});var mpe="Extract Symbol",Cpe={name:"Extract Constant",description:Bu(Z.Extract_constant),kind:"refactor.extract.constant"},_pe={name:"Extract Function",description:Bu(Z.Extract_function),kind:"refactor.extract.function"};Yx(mpe,{kinds:[Cpe.kind,_pe.kind],getEditsForAction:Ion,getAvailableActions:fon});function fon(s){let c=s.kind,g=wYt(s.file,qz(s),s.triggerReason==="invoked"),d=g.targetRange;if(d===void 0){if(!g.errors||g.errors.length===0||!s.preferences.provideRefactorNotApplicableReason)return E;let Ie=[];return a5(_pe.kind,c)&&Ie.push({name:mpe,description:_pe.description,actions:[{..._pe,notApplicableReason:ge(g.errors)}]}),a5(Cpe.kind,c)&&Ie.push({name:mpe,description:Cpe.description,actions:[{...Cpe,notApplicableReason:ge(g.errors)}]}),Ie}let{affectedTextRange:h,extractions:_}=NDs(d,s);if(_===void 0)return E;let S=[],R=new Map,T,O=[],V=new Map,M,ee=0;for(let{functionExtraction:Ie,constantExtraction:_e}of _){if(a5(_pe.kind,c)){let Ee=Ie.description;Ie.errors.length===0?R.has(Ee)||(R.set(Ee,!0),S.push({description:Ee,name:`function_scope_${ee}`,kind:_pe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):T||(T={description:Ee,name:`function_scope_${ee}`,notApplicableReason:ge(Ie.errors),kind:_pe.kind})}if(a5(Cpe.kind,c)){let Ee=_e.description;_e.errors.length===0?V.has(Ee)||(V.set(Ee,!0),O.push({description:Ee,name:`constant_scope_${ee}`,kind:Cpe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):M||(M={description:Ee,name:`constant_scope_${ee}`,notApplicableReason:ge(_e.errors),kind:Cpe.kind})}ee++}let re=[];return S.length?re.push({name:mpe,description:Bu(Z.Extract_function),actions:S}):s.preferences.provideRefactorNotApplicableReason&&T&&re.push({name:mpe,description:Bu(Z.Extract_function),actions:[T]}),O.length?re.push({name:mpe,description:Bu(Z.Extract_constant),actions:O}):s.preferences.provideRefactorNotApplicableReason&&M&&re.push({name:mpe,description:Bu(Z.Extract_constant),actions:[M]}),re.length?re:E;function ge(Ie){let _e=Ie[0].messageText;return typeof _e!="string"&&(_e=_e.messageText),_e}}function Ion(s,c){let d=wYt(s.file,qz(s)).targetRange,h=/^function_scope_(\d+)$/.exec(c);if(h){let S=+h[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the function scope index"),TDs(d,s,S)}let _=/^constant_scope_(\d+)$/.exec(c);if(_){let S=+_[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the constant scope index"),RDs(d,s,S)}pe.fail("Unrecognized action name")}var L_;(s=>{function c(g){return{message:g,code:0,category:3,key:g}}s.cannotExtractRange=c("Cannot extract range."),s.cannotExtractImport=c("Cannot extract import statement."),s.cannotExtractSuper=c("Cannot extract super call."),s.cannotExtractJSDoc=c("Cannot extract JSDoc."),s.cannotExtractEmpty=c("Cannot extract empty range."),s.expressionExpected=c("expression expected."),s.uselessConstantType=c("No reason to extract constant of type."),s.statementOrExpressionExpected=c("Statement or expression expected."),s.cannotExtractRangeContainingConditionalBreakOrContinueStatements=c("Cannot extract range containing conditional break or continue statements."),s.cannotExtractRangeContainingConditionalReturnStatement=c("Cannot extract range containing conditional return statement."),s.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=c("Cannot extract range containing labeled break or continue with target outside of the range."),s.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=c("Cannot extract range containing writes to references located outside of the target range in generators."),s.typeWillNotBeVisibleInTheNewScope=c("Type will not visible in the new scope."),s.functionWillNotBeVisibleInTheNewScope=c("Function will not visible in the new scope."),s.cannotExtractIdentifier=c("Select more than a single identifier."),s.cannotExtractExportedEntity=c("Cannot extract exported declaration"),s.cannotWriteInExpression=c("Cannot write back side-effects when extracting an expression"),s.cannotExtractReadonlyPropertyInitializerOutsideConstructor=c("Cannot move initialization of read-only class property outside of the constructor"),s.cannotExtractAmbientBlock=c("Cannot extract code from ambient contexts"),s.cannotAccessVariablesFromNestedScopes=c("Cannot access variables from nested scopes"),s.cannotExtractToJSClass=c("Cannot extract constant to a class scope in JS"),s.cannotExtractToExpressionArrowFunction=c("Cannot extract constant to an arrow function without a block"),s.cannotExtractFunctionsContainingThisToMethod=c("Cannot extract functions containing this to method")})(L_||(L_={}));var hon=(s=>(s[s.None=0]="None",s[s.HasReturn=1]="HasReturn",s[s.IsGenerator=2]="IsGenerator",s[s.IsAsyncFunction=4]="IsAsyncFunction",s[s.UsesThis=8]="UsesThis",s[s.UsesThisInFunction=16]="UsesThisInFunction",s[s.InStaticRegion=32]="InStaticRegion",s))(hon||{});function wYt(s,c,g=!0){let{length:d}=c;if(d===0&&!g)return{errors:[rm(s,c.start,d,L_.cannotExtractEmpty)]};let h=d===0&&g,_=SMt(s,c.start),S=ope(s,Rs(c)),R=_&&S&&g?vDs(_,S,s):c,T=h?jDs(_):L1e(_,s,R),O=h?T:L1e(S,s,R),V=0,M;if(!T||!O)return{errors:[rm(s,c.start,d,L_.cannotExtractRange)]};if(T.flags&16777216)return{errors:[rm(s,c.start,d,L_.cannotExtractJSDoc)]};if(T.parent!==O.parent)return{errors:[rm(s,c.start,d,L_.cannotExtractRange)]};if(T!==O){if(!$z(T.parent))return{errors:[rm(s,c.start,d,L_.cannotExtractRange)]};let Ne=[];for(let Te of T.parent.statements){if(Te===T||Ne.length){let Ze=Ee(Te);if(Ze)return{errors:Ze};Ne.push(Te)}if(Te===O)break}return Ne.length?{targetRange:{range:Ne,facts:V,thisNode:M}}:{errors:[rm(s,c.start,d,L_.cannotExtractRange)]}}if(C2(T)&&!T.expression)return{errors:[rm(s,c.start,d,L_.cannotExtractRange)]};let ee=ge(T),re=Ie(ee)||Ee(ee);if(re)return{errors:re};return{targetRange:{range:BDs(ee),facts:V,thisNode:M}};function ge(Ne){if(C2(Ne)){if(Ne.expression)return Ne.expression}else if(Eh(Ne)||A_(Ne)){let Te=Eh(Ne)?Ne.declarationList.declarations:Ne.declarations,Ze=0,Pe;for(let Ke of Te)Ke.initializer&&(Ze++,Pe=Ke.initializer);if(Ze===1)return Pe}else if(nc(Ne)&&Ne.initializer)return Ne.initializer;return Ne}function Ie(Ne){if(Ir(OC(Ne)?Ne.expression:Ne))return[mo(Ne,L_.cannotExtractIdentifier)]}function _e(Ne,Te){let Ze=Ne;for(;Ze!==Te;){if(Ze.kind===173){lg(Ze)&&(V|=32);break}else if(Ze.kind===170){f1(Ze).kind===177&&(V|=32);break}else Ze.kind===175&&lg(Ze)&&(V|=32);Ze=Ze.parent}}function Ee(Ne){let Te;if((Tt=>{Tt[Tt.None=0]="None",Tt[Tt.Break=1]="Break",Tt[Tt.Continue=2]="Continue",Tt[Tt.Return=4]="Return"})(Te||(Te={})),pe.assert(Ne.pos<=Ne.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),pe.assert(!kB(Ne.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!Lc(Ne)&&!(JT(Ne)&&mon(Ne))&&!kYt(Ne))return[mo(Ne,L_.statementOrExpressionExpected)];if(Ne.flags&33554432)return[mo(Ne,L_.cannotExtractAmbientBlock)];let Ze=_C(Ne);Ze&&_e(Ne,Ze);let Pe,Ke=4,et;if(Ye(Ne),V&8){let Tt=i0(Ne,!1,!1);(Tt.kind===263||Tt.kind===175&&Tt.parent.kind===211||Tt.kind===219)&&(V|=16)}return Pe;function Ye(Tt){if(Pe)return!0;if(em(Tt)){let Qe=Tt.kind===261?Tt.parent.parent:Tt;if(Ga(Qe,32))return(Pe||(Pe=[])).push(mo(Tt,L_.cannotExtractExportedEntity)),!0}switch(Tt.kind){case 273:return(Pe||(Pe=[])).push(mo(Tt,L_.cannotExtractImport)),!0;case 278:return(Pe||(Pe=[])).push(mo(Tt,L_.cannotExtractExportedEntity)),!0;case 108:if(Tt.parent.kind===214){let Qe=_C(Tt);if(Qe===void 0||Qe.pos=c.start+c.length)return(Pe||(Pe=[])).push(mo(Tt,L_.cannotExtractSuper)),!0}else V|=8,M=Tt;break;case 220:Lu(Tt,function Qe(Ct){if(tse(Ct))V|=8,M=Tt;else{if(xa(Ct)||Eu(Ct)&&!uA(Ct))return!1;Lu(Ct,Qe)}});case 264:case 263:al(Tt.parent)&&Tt.parent.externalModuleIndicator===void 0&&(Pe||(Pe=[])).push(mo(Tt,L_.functionWillNotBeVisibleInTheNewScope));case 232:case 219:case 175:case 177:case 178:case 179:return!1}let at=Ke;switch(Tt.kind){case 246:Ke&=-5;break;case 259:Ke=0;break;case 242:Tt.parent&&Tt.parent.kind===259&&Tt.parent.finallyBlock===Tt&&(Ke=4);break;case 298:case 297:Ke|=1;break;default:HT(Tt,!1)&&(Ke|=3);break}switch(Tt.kind){case 198:case 110:V|=8,M=Tt;break;case 257:{let Qe=Tt.label;(et||(et=[])).push(Qe.escapedText),Lu(Tt,Ye),et.pop();break}case 253:case 252:{let Qe=Tt.label;Qe?k(et,Qe.escapedText)||(Pe||(Pe=[])).push(mo(Tt,L_.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):Ke&(Tt.kind===253?1:2)||(Pe||(Pe=[])).push(mo(Tt,L_.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 224:V|=4;break;case 230:V|=2;break;case 254:Ke&4?V|=1:(Pe||(Pe=[])).push(mo(Tt,L_.cannotExtractRangeContainingConditionalReturnStatement));break;default:Lu(Tt,Ye);break}Ke=at}}}function vDs(s,c,g){let d=s.getStart(g),h=c.getEnd();return g.text.charCodeAt(h)===59&&h++,{start:d,length:h-d}}function BDs(s){if(Lc(s))return[s];if(JT(s))return OC(s.parent)?[s.parent]:s;if(kYt(s))return s}function TYt(s){return uA(s)?h7(s.body):Gd(s)||al(s)||vN(s)||xa(s)}function wDs(s){let c=l9(s.range)?ma(s.range):s.range;if(s.facts&8&&!(s.facts&16)){let d=_C(c);if(d){let h=ji(c,Gd);return h?[h,d]:[d]}}let g=[];for(;;)if(c=c.parent,c.kind===170&&(c=ji(c,d=>Gd(d)).parent),TYt(c)&&(g.push(c),c.kind===308))return g}function TDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,functionErrorsPerScope:S,exposedVariableDeclarations:R}}=RYt(s,c);return pe.assert(!S[g].length,"The extraction went missing? How?"),c.cancellationToken.throwIfCancellationRequested(),ZDs(h,d[g],_[g],R,s,c)}function RDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,constantErrorsPerScope:S,exposedVariableDeclarations:R}}=RYt(s,c);pe.assert(!S[g].length,"The extraction went missing? How?"),pe.assert(R.length===0,"Extract constant accepted a range containing a variable declaration?"),c.cancellationToken.throwIfCancellationRequested();let T=un(h)?h:h.statements[0].expression;return LDs(T,d[g],_[g],s.facts,c)}function NDs(s,c){let{scopes:g,affectedTextRange:d,readsAndWrites:{functionErrorsPerScope:h,constantErrorsPerScope:_}}=RYt(s,c),S=g.map((R,T)=>{let O=DDs(R),V=kDs(R),M=Gd(R)?xDs(R):xa(R)?GDs(R):FDs(R),ee,re;return M===1?(ee=mN(Bu(Z.Extract_to_0_in_1_scope),[O,"global"]),re=mN(Bu(Z.Extract_to_0_in_1_scope),[V,"global"])):M===0?(ee=mN(Bu(Z.Extract_to_0_in_1_scope),[O,"module"]),re=mN(Bu(Z.Extract_to_0_in_1_scope),[V,"module"])):(ee=mN(Bu(Z.Extract_to_0_in_1),[O,M]),re=mN(Bu(Z.Extract_to_0_in_1),[V,M])),T===0&&!xa(R)&&(re=mN(Bu(Z.Extract_to_0_in_enclosing_scope),[V])),{functionExtraction:{description:ee,errors:h[T]},constantExtraction:{description:re,errors:_[T]}}});return{affectedTextRange:d,extractions:S}}function RYt(s,c){let{file:g}=c,d=wDs(s),h=UDs(s,g),_=KDs(s,d,h,g,c.program.getTypeChecker(),c.cancellationToken);return{scopes:d,affectedTextRange:h,readsAndWrites:_}}function DDs(s){return Gd(s)?"inner function":xa(s)?"method":"function"}function kDs(s){return xa(s)?"readonly field":"constant"}function xDs(s){switch(s.kind){case 177:return"constructor";case 219:case 263:return s.name?`function '${s.name.text}'`:Snt;case 220:return"arrow function";case 175:return`method '${s.name.getText()}'`;case 178:return`'get ${s.name.getText()}'`;case 179:return`'set ${s.name.getText()}'`;default:pe.assertNever(s,`Unexpected scope kind ${s.kind}`)}}function GDs(s){return s.kind===264?s.name?`class '${s.name.text}'`:"anonymous class declaration":s.name?`class expression '${s.name.text}'`:"anonymous class expression"}function FDs(s){return s.kind===269?`namespace '${s.parent.name.getText()}'`:s.externalModuleIndicator?0:1}function ZDs(s,c,{usages:g,typeParameterUsages:d,substitutions:h},_,S,R){let T=R.program.getTypeChecker(),O=Hg(R.program.getCompilerOptions()),V=F0.createImportAdder(R.file,R.program,R.preferences,R.host),M=c.getSourceFile(),ee=JU(xa(c)?"newMethod":"newFunction",M),re=wo(c),ge=me.createIdentifier(ee),Ie,_e=[],Ee=[],Ne;g.forEach((it,kt)=>{let tr;if(!re){let Gr=T.getTypeOfSymbolAtLocation(it.symbol,it.node);Gr=T.getBaseTypeOfLiteralType(Gr),tr=F0.typeToAutoImportableTypeNode(T,V,Gr,c,O,1,8)}let ur=me.createParameterDeclaration(void 0,void 0,kt,void 0,tr);_e.push(ur),it.usage===2&&(Ne||(Ne=[])).push(it),Ee.push(me.createIdentifier(kt))});let Te=Do(d.values(),it=>({type:it,declaration:WDs(it,R.startPosition)}));Te.sort(ODs);let Ze=Te.length===0?void 0:Xt(Te,({declaration:it})=>it),Pe=Ze!==void 0?Ze.map(it=>me.createTypeReferenceNode(it.name,void 0)):void 0;if(un(s)&&!re){let it=T.getContextualType(s);Ie=T.typeToTypeNode(it,c,1,8)}let{body:Ke,returnValueProperty:et}=MDs(s,_,Ne,h,!!(S.facts&1));Oy(Ke);let Ye,Tt=!!(S.facts&16);if(xa(c)){let it=re?[]:[me.createModifier(123)];S.facts&32&&it.push(me.createModifier(126)),S.facts&4&&it.push(me.createModifier(134)),Ye=me.createMethodDeclaration(it.length?it:void 0,S.facts&2?me.createToken(42):void 0,ge,void 0,Ze,_e,Ie,Ke)}else Tt&&_e.unshift(me.createParameterDeclaration(void 0,void 0,"this",void 0,T.typeToTypeNode(T.getTypeAtLocation(S.thisNode),c,1,8),void 0)),Ye=me.createFunctionDeclaration(S.facts&4?[me.createToken(134)]:void 0,S.facts&2?me.createToken(42):void 0,ge,Ze,_e,Ie,Ke);let at=xo.ChangeTracker.fromContext(R),Qe=(l9(S.range)?Ei(S.range):S.range).end,Ct=QDs(Qe,c);Ct?at.insertNodeBefore(R.file,Ct,Ye,!0):at.insertNodeAtEndOfScope(R.file,c,Ye),V.writeFixes(at);let mt=[],yt=PDs(c,S,ee);Tt&&Ee.unshift(me.createIdentifier("this"));let Rt=me.createCallExpression(Tt?me.createPropertyAccessExpression(yt,"call"):yt,Pe,Ee);if(S.facts&2&&(Rt=me.createYieldExpression(me.createToken(42),Rt)),S.facts&4&&(Rt=me.createAwaitExpression(Rt)),DYt(s)&&(Rt=me.createJsxExpression(void 0,Rt)),_.length&&!Ne)if(pe.assert(!et,"Expected no returnValueProperty"),pe.assert(!(S.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),_.length===1){let it=_[0];mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(KA(it.name),void 0,KA(it.type),Rt)],it.parent.flags)))}else{let it=[],kt=[],tr=_[0].parent.flags,ur=!1;for(let dt of _){it.push(me.createBindingElement(void 0,void 0,KA(dt.name)));let pr=T.typeToTypeNode(T.getBaseTypeOfLiteralType(T.getTypeAtLocation(dt)),c,1,8);kt.push(me.createPropertySignature(void 0,dt.symbol.name,void 0,pr)),ur=ur||dt.type!==void 0,tr=tr&dt.parent.flags}let Gr=ur?me.createTypeLiteralNode(kt):void 0;Gr&&ti(Gr,1),mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(me.createObjectBindingPattern(it),void 0,Gr,Rt)],tr)))}else if(_.length||Ne){if(_.length)for(let kt of _){let tr=kt.parent.flags;tr&2&&(tr=tr&-3|1),mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(kt.symbol.name,void 0,Gt(kt.type))],tr)))}et&&mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(et,void 0,Gt(Ie))],1)));let it=NYt(_,Ne);et&&it.unshift(me.createShorthandPropertyAssignment(et)),it.length===1?(pe.assert(!et,"Shouldn't have returnValueProperty here"),mt.push(me.createExpressionStatement(me.createAssignment(it[0].name,Rt))),S.facts&1&&mt.push(me.createReturnStatement())):(mt.push(me.createExpressionStatement(me.createAssignment(me.createObjectLiteralExpression(it),Rt))),et&&mt.push(me.createReturnStatement(me.createIdentifier(et))))}else S.facts&1?mt.push(me.createReturnStatement(Rt)):l9(S.range)?mt.push(me.createExpressionStatement(Rt)):mt.push(Rt);l9(S.range)?at.replaceNodeRangeWithNodes(R.file,ma(S.range),Ei(S.range),mt):at.replaceNodeWithNodes(R.file,S.range,mt);let Lt=at.getChanges(),Wt=(l9(S.range)?ma(S.range):S.range).getSourceFile().fileName,_r=W1e(Lt,Wt,ee,!1);return{renameFilename:Wt,renameLocation:_r,edits:Lt};function Gt(it){if(it===void 0)return;let kt=KA(it),tr=kt;for(;Cv(tr);)tr=tr.type;return gS(tr)&&de(tr.types,ur=>ur.kind===157)?kt:me.createUnionTypeNode([kt,me.createKeywordTypeNode(157)])}}function LDs(s,c,{substitutions:g},d,h){let _=h.program.getTypeChecker(),S=c.getSourceFile(),R=aYt(s,c,_,S),T=wo(c),O=T||!_.isContextSensitive(s)?void 0:_.typeToTypeNode(_.getContextualType(s),c,1,8),V=HDs(JA(s),g);({variableType:O,initializer:V}=Ie(O,V)),Oy(V);let M=xo.ChangeTracker.fromContext(h);if(xa(c)){pe.assert(!T,"Cannot extract to a JS class");let _e=[];_e.push(me.createModifier(123)),d&32&&_e.push(me.createModifier(126)),_e.push(me.createModifier(148));let Ee=me.createPropertyDeclaration(_e,R,void 0,O,V),Ne=me.createPropertyAccessExpression(d&32?me.createIdentifier(c.name.getText()):me.createThis(),me.createIdentifier(R));DYt(s)&&(Ne=me.createJsxExpression(void 0,Ne));let Te=s.pos,Ze=XDs(Te,c);M.insertNodeBefore(h.file,Ze,Ee,!0),M.replaceNode(h.file,s,Ne)}else{let _e=me.createVariableDeclaration(R,void 0,O,V),Ee=VDs(s,c);if(Ee){M.insertNodeBefore(h.file,Ee,_e);let Ne=me.createIdentifier(R);M.replaceNode(h.file,s,Ne)}else if(s.parent.kind===245&&c===ji(s,TYt)){let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2));M.replaceNode(h.file,s.parent,Ne)}else{let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2)),Te=JDs(s,c);if(Te.pos===0?M.insertNodeAtTopOfFile(h.file,Ne,!1):M.insertNodeBefore(h.file,Te,Ne,!1),s.parent.kind===245)M.delete(h.file,s.parent);else{let Ze=me.createIdentifier(R);DYt(s)&&(Ze=me.createJsxExpression(void 0,Ze)),M.replaceNode(h.file,s,Ze)}}}let ee=M.getChanges(),re=s.getSourceFile().fileName,ge=W1e(ee,re,R,!0);return{renameFilename:re,renameLocation:ge,edits:ee};function Ie(_e,Ee){if(_e===void 0)return{variableType:_e,initializer:Ee};if(!jA(Ee)&&!uA(Ee)||Ee.typeParameters)return{variableType:_e,initializer:Ee};let Ne=_.getTypeAtLocation(s),Te=Ws(_.getSignaturesOfType(Ne,0));if(!Te)return{variableType:_e,initializer:Ee};if(Te.getTypeParameters())return{variableType:_e,initializer:Ee};let Ze=[],Pe=!1;for(let Ke of Ee.parameters)if(Ke.type)Ze.push(Ke);else{let et=_.getTypeAtLocation(Ke);et===_.getAnyType()&&(Pe=!0),Ze.push(me.updateParameterDeclaration(Ke,Ke.modifiers,Ke.dotDotDotToken,Ke.name,Ke.questionToken,Ke.type||_.typeToTypeNode(et,c,1,8),Ke.initializer))}if(Pe)return{variableType:_e,initializer:Ee};if(_e=void 0,uA(Ee))Ee=me.updateArrowFunction(Ee,MB(s)?iN(s):void 0,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1,8),Ee.equalsGreaterThanToken,Ee.body);else{if(Te&&Te.thisParameter){let Ke=Nc(Ze);if(!Ke||Ir(Ke.name)&&Ke.name.escapedText!=="this"){let et=_.getTypeOfSymbolAtLocation(Te.thisParameter,s);Ze.splice(0,0,me.createParameterDeclaration(void 0,void 0,"this",void 0,_.typeToTypeNode(et,c,1,8)))}}Ee=me.updateFunctionExpression(Ee,MB(s)?iN(s):void 0,Ee.asteriskToken,Ee.name,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1),Ee.body)}return{variableType:_e,initializer:Ee}}}function VDs(s,c){let g;for(;s!==void 0&&s!==c;){if(nc(s)&&s.initializer===g&&A_(s.parent)&&s.parent.declarations.length>1)return s;g=s,s=s.parent}}function WDs(s,c){let g,d=s.symbol;if(d&&d.declarations)for(let h of d.declarations)(g===void 0||h.pos0;if(eg(s)&&!_&&d.size===0)return{body:me.createBlock(s.statements,!0),returnValueProperty:void 0};let S,R=!1,T=me.createNodeArray(eg(s)?s.statements.slice(0):[Lc(s)?s:me.createReturnStatement(JA(s))]);if(_||d.size){let V=Os(T,O,Lc).slice();if(_&&!h&&Lc(s)){let M=NYt(c,g);M.length===1?V.push(me.createReturnStatement(M[0].name)):V.push(me.createReturnStatement(me.createObjectLiteralExpression(M)))}return{body:me.createBlock(V,!0),returnValueProperty:S}}else return{body:me.createBlock(T,!0),returnValueProperty:void 0};function O(V){if(!R&&C2(V)&&_){let M=NYt(c,g);return V.expression&&(S||(S="__return"),M.unshift(me.createPropertyAssignment(S,Mr(V.expression,O,un)))),M.length===1?me.createReturnStatement(M[0].name):me.createReturnStatement(me.createObjectLiteralExpression(M))}else{let M=R;R=R||Gd(V)||xa(V);let ee=d.get(id(V).toString()),re=ee?KA(ee):_s(V,O,void 0);return R=M,re}}}function HDs(s,c){return c.size?g(s):s;function g(d){let h=c.get(id(d).toString());return h?KA(h):_s(d,g,void 0)}}function YDs(s){if(Gd(s)){let c=s.body;if(eg(c))return c.statements}else{if(vN(s)||al(s))return s.statements;if(xa(s))return s.members;}return E}function QDs(s,c){return de(YDs(c),g=>g.pos>=s&&Gd(g)&&!Tc(g))}function XDs(s,c){let g=c.members;pe.assert(g.length>0,"Found no members");let d,h=!0;for(let _ of g){if(_.pos>s)return d||g[0];if(h&&!pi(_)){if(d!==void 0)return _;h=!1}d=_}return d===void 0?pe.fail():d}function JDs(s,c){pe.assert(!xa(c));let g;for(let d=s;d!==c;d=d.parent)TYt(d)&&(g=d);for(let d=(g||s).parent;;d=d.parent){if($z(d)){let h;for(let _ of d.statements){if(_.pos>s.pos)break;h=_}return!h&&Rie(d)?(pe.assert(Ede(d.parent.parent),"Grandparent isn't a switch statement"),d.parent.parent):pe.checkDefined(h,"prevStatement failed to get set")}pe.assert(d!==c,"Didn't encounter a block-like before encountering scope")}}function NYt(s,c){let g=lt(s,h=>me.createShorthandPropertyAssignment(h.symbol.name)),d=lt(c,h=>me.createShorthandPropertyAssignment(h.symbol.name));return g===void 0?d:d===void 0?g:g.concat(d)}function l9(s){return Ki(s)}function UDs(s,c){return l9(s.range)?{pos:ma(s.range).getStart(c),end:Ei(s.range).getEnd()}:s.range}function KDs(s,c,g,d,h,_){let S=new Map,R=[],T=[],O=[],V=[],M=[],ee=new Map,re=[],ge,Ie=l9(s.range)?s.range.length===1&&OC(s.range[0])?s.range[0].expression:void 0:s.range,_e;if(Ie===void 0){let mt=s.range,yt=ma(mt).getStart(),Rt=Ei(mt).end;_e=rm(d,yt,Rt-yt,L_.expressionExpected)}else h.getTypeAtLocation(Ie).flags&147456&&(_e=mo(Ie,L_.uselessConstantType));for(let mt of c){R.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),T.push(new Map),O.push([]);let yt=[];_e&&yt.push(_e),xa(mt)&&wo(mt)&&yt.push(mo(mt,L_.cannotExtractToJSClass)),uA(mt)&&!eg(mt.body)&&yt.push(mo(mt,L_.cannotExtractToExpressionArrowFunction)),V.push(yt)}let Ee=new Map,Ne=l9(s.range)?me.createBlock(s.range):s.range,Te=l9(s.range)?ma(s.range):s.range,Ze=Pe(Te);if(et(Ne),Ze&&!l9(s.range)&&!TN(s.range)){let mt=h.getContextualType(s.range);Ke(mt)}if(S.size>0){let mt=new Map,yt=0;for(let Rt=Te;Rt!==void 0&&yt{R[yt].typeParameterUsages.set(je,Lt)}),yt++),cne(Rt))for(let Lt of PD(Rt)){let je=h.getTypeAtLocation(Lt);S.has(je.id.toString())&&mt.set(je.id.toString(),je)}pe.assert(yt===c.length,"Should have iterated all scopes")}if(M.length){let mt=qJ(c[0],c[0].parent)?c[0]:sS(c[0]);Lu(mt,at)}for(let mt=0;mt0&&(yt.usages.size>0||yt.typeParameterUsages.size>0)){let je=l9(s.range)?s.range[0]:s.range;V[mt].push(mo(je,L_.cannotAccessVariablesFromNestedScopes))}s.facts&16&&xa(c[mt])&&O[mt].push(mo(s.thisNode,L_.cannotExtractFunctionsContainingThisToMethod));let Rt=!1,Lt;if(R[mt].usages.forEach(je=>{je.usage===2&&(Rt=!0,je.symbol.flags&106500&&je.symbol.valueDeclaration&&Zb(je.symbol.valueDeclaration,8)&&(Lt=je.symbol.valueDeclaration))}),pe.assert(l9(s.range)||re.length===0,"No variable declarations expected if something was extracted"),Rt&&!l9(s.range)){let je=mo(s.range,L_.cannotWriteInExpression);O[mt].push(je),V[mt].push(je)}else if(Lt&&mt>0){let je=mo(Lt,L_.cannotExtractReadonlyPropertyInitializerOutsideConstructor);O[mt].push(je),V[mt].push(je)}else if(ge){let je=mo(ge,L_.cannotExtractExportedEntity);O[mt].push(je),V[mt].push(je)}}return{target:Ne,usagesPerScope:R,functionErrorsPerScope:O,constantErrorsPerScope:V,exposedVariableDeclarations:re};function Pe(mt){return!!ji(mt,yt=>cne(yt)&&PD(yt).length!==0)}function Ke(mt){let yt=h.getSymbolWalker(()=>(_.throwIfCancellationRequested(),!0)),{visitedTypes:Rt}=yt.walkType(mt);for(let Lt of Rt)Lt.isTypeParameter()&&S.set(Lt.id.toString(),Lt)}function et(mt,yt=1){if(Ze){let Rt=h.getTypeAtLocation(mt);Ke(Rt)}if(em(mt)&&mt.symbol&&M.push(mt),zm(mt))et(mt.left,2),et(mt.right);else if(lN(mt))et(mt.operand,2);else if(jo(mt)||Qg(mt))Lu(mt,et);else if(Ir(mt)){if(!mt.parent||zi(mt.parent)&&mt!==mt.parent.left||jo(mt.parent)&&mt!==mt.parent.expression)return;Ye(mt,yt,kw(mt))}else Lu(mt,et)}function Ye(mt,yt,Rt){let Lt=Tt(mt,yt,Rt);if(Lt)for(let je=0;je=yt)return je;if(Ee.set(je,yt),Wt){for(let it of R)it.usages.get(mt.text)&&it.usages.set(mt.text,{usage:yt,symbol:Lt,node:mt});return je}let _r=Lt.getDeclarations(),Gt=_r&&de(_r,it=>it.getSourceFile()===d);if(Gt&&!N1e(g,Gt.getStart(),Gt.end)){if(s.facts&2&&yt===2){let it=mo(mt,L_.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(let kt of O)kt.push(it);for(let kt of V)kt.push(it)}for(let it=0;itLt.symbol===yt);if(Rt)if(nc(Rt)){let Lt=Rt.symbol.id.toString();ee.has(Lt)||(re.push(Rt),ee.set(Lt,!0))}else ge=ge||Rt}Lu(mt,at)}function Qe(mt){return mt.parent&&l0(mt.parent)&&mt.parent.name===mt?h.getShorthandAssignmentValueSymbol(mt.parent):h.getSymbolAtLocation(mt)}function Ct(mt,yt,Rt){if(!mt)return;let Lt=mt.getDeclarations();if(Lt&&Lt.some(Wt=>Wt.parent===yt))return me.createIdentifier(mt.name);let je=Ct(mt.parent,yt,Rt);if(je!==void 0)return Rt?me.createQualifiedName(je,me.createIdentifier(mt.name)):me.createPropertyAccessExpression(je,mt.name)}}function jDs(s){return ji(s,c=>c.parent&&mon(c)&&!po(c.parent))}function mon(s){let{parent:c}=s;switch(c.kind){case 307:return!1}switch(s.kind){case 11:return c.kind!==273&&c.kind!==277;case 231:case 207:case 209:return!1;case 80:return c.kind!==209&&c.kind!==277&&c.kind!==282}return!0}function DYt(s){return kYt(s)||(wN(s)||xU(s)||X3(s))&&(wN(s.parent)||X3(s.parent))}function kYt(s){return Lg(s)&&s.parent&&TN(s.parent)}var zDs={},fit="Generate 'get' and 'set' accessors",xYt=Bu(Z.Generate_get_and_set_accessors),GYt={name:fit,description:xYt,kind:"refactor.rewrite.property.generateAccessors"};Yx(fit,{kinds:[GYt.kind],getEditsForAction:function(c,g){if(!c.endPosition)return;let d=F0.getAccessorConvertiblePropertyAtPosition(c.file,c.program,c.startPosition,c.endPosition);pe.assert(d&&!UF(d),"Expected applicable refactor info");let h=F0.generateAccessorFromProperty(c.file,c.program,c.startPosition,c.endPosition,c,g);if(!h)return;let _=c.file.fileName,S=d.renameAccessor?d.accessorName:d.fieldName,T=(Ir(S)?0:-1)+W1e(h,_,S.text,Si(d.declaration));return{renameFilename:_,renameLocation:T,edits:h}},getAvailableActions(s){if(!s.endPosition)return E;let c=F0.getAccessorConvertiblePropertyAtPosition(s.file,s.program,s.startPosition,s.endPosition,s.triggerReason==="invoked");return c?UF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:fit,description:xYt,actions:[{...GYt,notApplicableReason:c.error}]}]:E:[{name:fit,description:xYt,actions:[GYt]}]:E}});var qDs={},Iit="Infer function return type",FYt=Bu(Z.Infer_function_return_type),hit={name:Iit,description:FYt,kind:"refactor.rewrite.function.returnType"};Yx(Iit,{kinds:[hit.kind],getEditsForAction:$Ds,getAvailableActions:eks});function $Ds(s){let c=Con(s);if(c&&!UF(c))return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,d=>tks(s.file,d,c.declaration,c.returnTypeNode))}}function eks(s){let c=Con(s);return c?UF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Iit,description:FYt,actions:[{...hit,notApplicableReason:c.error}]}]:E:[{name:Iit,description:FYt,actions:[hit]}]:E}function tks(s,c,g,d){let h=ep(g,22,s),_=uA(g)&&h===void 0,S=_?ma(g.parameters):h;S&&(_&&(c.insertNodeBefore(s,S,me.createToken(21)),c.insertNodeAfter(s,S,me.createToken(22))),c.insertNodeAt(s,S.end,d,{prefix:": "}))}function Con(s){if(wo(s.file)||!a5(hit.kind,s.kind))return;let c=Wb(s.file,s.startPosition),g=ji(c,S=>eg(S)||S.parent&&uA(S.parent)&&(S.kind===39||S.parent.body===S)?"quit":rks(S));if(!g||!g.body||g.type)return{error:Bu(Z.Return_type_must_be_inferred_from_a_function)};let d=s.program.getTypeChecker(),h;if(d.isImplementationOfOverload(g)){let S=d.getTypeAtLocation(g).getCallSignatures();S.length>1&&(h=d.getUnionType(Xt(S,R=>R.getReturnType())))}if(!h){let S=d.getSignatureFromDeclaration(g);if(S){let R=d.getTypePredicateOfSignature(S);if(R&&R.type){let T=d.typePredicateToTypePredicateNode(R,g,1,8);if(T)return{declaration:g,returnTypeNode:T}}else h=d.getReturnTypeOfSignature(S)}}if(!h)return{error:Bu(Z.Could_not_determine_function_return_type)};let _=d.typeToTypeNode(h,g,1,8);if(_)return{declaration:g,returnTypeNode:_}}function rks(s){switch(s.kind){case 263:case 219:case 220:case 175:return!0;default:return!1}}var _on=(s=>(s[s.typeOffset=8]="typeOffset",s[s.modifierMask=255]="modifierMask",s))(_on||{}),yon=(s=>(s[s.class=0]="class",s[s.enum=1]="enum",s[s.interface=2]="interface",s[s.namespace=3]="namespace",s[s.typeParameter=4]="typeParameter",s[s.type=5]="type",s[s.parameter=6]="parameter",s[s.variable=7]="variable",s[s.enumMember=8]="enumMember",s[s.property=9]="property",s[s.function=10]="function",s[s.member=11]="member",s))(yon||{}),bon=(s=>(s[s.declaration=0]="declaration",s[s.static=1]="static",s[s.async=2]="async",s[s.readonly=3]="readonly",s[s.defaultLibrary=4]="defaultLibrary",s[s.local=5]="local",s))(bon||{});function Eon(s,c,g,d){let h=ZYt(s,c,g,d);pe.assert(h.spans.length%3===0);let _=h.spans,S=[];for(let R=0;R<_.length;R+=3)S.push({textSpan:$d(_[R],_[R+1]),classificationType:_[R+2]});return S}function ZYt(s,c,g,d){return{spans:nks(s,g,d,c),endOfLineState:0}}function nks(s,c,g,d){let h=[];return s&&c&&iks(s,c,g,(S,R,T)=>{h.push(S.getStart(c),S.getWidth(c),(R+1<<8)+T)},d),h}function iks(s,c,g,d,h){let _=s.getTypeChecker(),S=!1;function R(T){switch(T.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 220:h.throwIfCancellationRequested()}if(!T||!rS(g,T.pos,T.getFullWidth())||T.getFullWidth()===0)return;let O=S;if((wN(T)||xU(T))&&(S=!0),Tie(T)&&(S=!1),Ir(T)&&!S&&!cks(T)&&!_z(T.escapedText)){let V=_.getSymbolAtLocation(T);if(V){V.flags&2097152&&(V=_.getAliasedSymbol(V));let M=sks(V,YU(T));if(M!==void 0){let ee=0;T.parent&&(mg(T.parent)||Bon.get(T.parent.kind)===M)&&T.parent.name===T&&(ee=1),M===6&&von(T)&&(M=9),M=oks(_,T,M);let re=V.valueDeclaration;if(re){let ge=Hc(re),Ie=hm(re);ge&256&&(ee|=2),ge&1024&&(ee|=4),M!==0&&M!==2&&(ge&8||Ie&2||V.getFlags()&8)&&(ee|=8),(M===7||M===10)&&aks(re,c)&&(ee|=32),s.isSourceFileDefaultLibrary(re.getSourceFile())&&(ee|=16)}else V.declarations&&V.declarations.some(ge=>s.isSourceFileDefaultLibrary(ge.getSourceFile()))&&(ee|=16);d(T,M,ee)}}}Lu(T,R),S=O}R(c)}function sks(s,c){let g=s.getFlags();if(g&32)return 0;if(g&384)return 1;if(g&524288)return 5;if(g&64){if(c&2)return 2}else if(g&262144)return 4;let d=s.valueDeclaration||s.declarations&&s.declarations[0];return d&&mg(d)&&(d=Son(d)),d&&Bon.get(d.kind)}function oks(s,c,g){if(g===7||g===9||g===6){let d=s.getTypeAtLocation(c);if(d){let h=_=>_(d)||d.isUnion()&&d.types.some(_);if(g!==6&&h(_=>_.getConstructSignatures().length>0))return 0;if(h(_=>_.getCallSignatures().length>0)&&!h(_=>_.getProperties().length>0)||lks(c))return g===9?11:10}}return g}function aks(s,c){return mg(s)&&(s=Son(s)),nc(s)?(!al(s.parent.parent.parent)||fQ(s.parent))&&s.getSourceFile()===c:ah(s)?!al(s.parent)&&s.getSourceFile()===c:!1}function Son(s){for(;;)if(mg(s.parent.parent))s=s.parent.parent;else return s.parent.parent}function cks(s){let c=s.parent;return c&&(Hw(c)||Ay(c)||Px(c))}function lks(s){for(;von(s);)s=s.parent;return Ll(s.parent)&&s.parent.expression===s}function von(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s}var Bon=new Map([[261,7],[170,6],[173,9],[268,3],[267,1],[307,8],[264,0],[175,11],[263,10],[219,10],[174,11],[178,9],[179,9],[172,9],[265,2],[266,5],[169,4],[304,9],[305,9]]),won="0.8";function Ton(s,c,g,d){let h=g7(s)?new LYt(s,c,g):s===80?new Non(80,c,g):s===81?new Don(81,c,g):new Ron(s,c,g);return h.parent=d,h.flags=d.flags&101441536,h}var LYt=class{constructor(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}assertHasRealPosition(s){pe.assert(!kB(this.pos)&&!kB(this.end),s||"Node must have a real position for this operation")}getSourceFile(){return ms(this)}getStart(s,c){return this.assertHasRealPosition(),JD(this,s,c)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(s){return this.assertHasRealPosition(),this.getEnd()-this.getStart(s)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(s){return this.assertHasRealPosition(),this.getStart(s)-this.pos}getFullText(s){return this.assertHasRealPosition(),(s||this.getSourceFile()).text.substring(this.pos,this.end)}getText(s){return this.assertHasRealPosition(),s||(s=this.getSourceFile()),s.text.substring(this.getStart(s),this.getEnd())}getChildCount(s){return this.getChildren(s).length}getChildAt(s,c){return this.getChildren(c)[s]}getChildren(s=ms(this)){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"),Y$e(this,s)??COt(this,s,uks(this,s))}getFirstToken(s){this.assertHasRealPosition();let c=this.getChildren(s);if(!c.length)return;let g=de(c,d=>d.kind<310||d.kind>352);return g.kind<167?g:g.getFirstToken(s)}getLastToken(s){this.assertHasRealPosition();let c=this.getChildren(s),g=li(c);if(g)return g.kind<167?g:g.getLastToken(s)}forEachChild(s,c){return Lu(this,s,c)}};function uks(s,c){let g=[];if(m7(s))return s.forEachChild(S=>{g.push(S)}),g;p_.setText((c||s.getSourceFile()).text);let d=s.pos,h=S=>{qWe(g,d,S.pos,s),g.push(S),d=S.end},_=S=>{qWe(g,d,S.pos,s),g.push(gks(S,s)),d=S.end};return F(s.jsDoc,h),d=s.pos,s.forEachChild(h,_),qWe(g,d,s.end,s),p_.setText(void 0),g}function qWe(s,c,g,d){for(p_.resetTokenState(c);cc.tagName.text==="inheritDoc"||c.tagName.text==="inheritdoc")}function mit(s,c){if(!s)return E;let g=u5.getJsDocTagsFromDeclarations(s,c);if(c&&(g.length===0||s.some(kon))){let d=new Set;for(let h of s){let _=xon(c,h,S=>{var R;if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualJsDocTags(h,c):((R=S.declarations)==null?void 0:R.length)===1?S.getJsDocTags(c):void 0});_&&(g=[..._,...g])}}return g}function $We(s,c){if(!s)return E;let g=u5.getJsDocCommentsFromDeclarations(s,c);if(c&&(g.length===0||s.some(kon))){let d=new Set;for(let h of s){let _=xon(c,h,S=>{if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualDocumentationComment(h,c):S.getDocumentationComment(c)});_&&(g=g.length===0?_.slice():_.concat(ase(),g))}}return g}function xon(s,c,g){var d;let h=((d=c.parent)==null?void 0:d.kind)===177?c.parent.parent:c.parent;if(!h)return;let _=tm(c);return J(H7(h),S=>{let R=s.getTypeAtLocation(S),T=_&&R.symbol?s.getTypeOfSymbol(R.symbol):R,O=s.getPropertyOfType(T,c.symbol.name);return O?g(O):void 0})}var fks=class extends LYt{constructor(s,c,g){super(s,c,g)}update(s,c){return set(this,s,c)}getLineAndCharacterOfPosition(s){return Ra(this,s)}getLineStarts(){return rn(this)}getPositionOfLineAndCharacter(s,c,g){return xn(rn(this),s,c,this.text,g)}getLineEndOfPosition(s){let{line:c}=this.getLineAndCharacterOfPosition(s),g=this.getLineStarts(),d;c+1>=g.length&&(d=this.getEnd()),d||(d=g[c+1]-1);let h=this.getFullText();return h[d]===` -`&&h[d-1]==="\r"?d-1:d}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let s=gl();return this.forEachChild(h),s;function c(_){let S=d(_);S&&s.add(S,_)}function g(_){let S=s.get(_);return S||s.set(_,S=[]),S}function d(_){let S=Sw(_);return S&&(Un(S)&&jo(S.expression)?S.expression.name.text:PI(S)?F1e(S):void 0)}function h(_){switch(_.kind){case 263:case 219:case 175:case 174:let S=_,R=d(S);if(R){let V=g(R),M=li(V);M&&S.parent===M.parent&&S.symbol===M.symbol?S.body&&!M.body&&(V[V.length-1]=S):V.push(S)}Lu(_,h);break;case 264:case 232:case 265:case 266:case 267:case 268:case 272:case 282:case 277:case 274:case 275:case 178:case 179:case 188:c(_),Lu(_,h);break;case 170:if(!Ga(_,31))break;case 261:case 209:{let V=_;if(Nu(V.name)){Lu(V.name,h);break}V.initializer&&h(V.initializer)}case 307:case 173:case 172:c(_);break;case 279:let T=_;T.exportClause&&(bv(T.exportClause)?F(T.exportClause.elements,h):h(T.exportClause.name));break;case 273:let O=_.importClause;O&&(O.name&&c(O.name),O.namedBindings&&(O.namedBindings.kind===275?c(O.namedBindings):F(O.namedBindings.elements,h)));break;case 227:oI(_)!==0&&c(_);default:Lu(_,h)}}}},Iks=class{constructor(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}getLineAndCharacterOfPosition(s){return Ra(this,s)}};function hks(){return{getNodeConstructor:()=>LYt,getTokenConstructor:()=>Ron,getIdentifierConstructor:()=>Non,getPrivateIdentifierConstructor:()=>Don,getSourceFileConstructor:()=>fks,getSymbolConstructor:()=>Aks,getTypeConstructor:()=>dks,getSignatureConstructor:()=>pks,getSourceMapSourceConstructor:()=>Iks}}function q1e(s){let c=!0;for(let d in s)if(Da(s,d)&&!Gon(d)){c=!1;break}if(c)return s;let g={};for(let d in s)if(Da(s,d)){let h=Gon(d)?d:d.charAt(0).toLowerCase()+d.substr(1);g[h]=s[d]}return g}function Gon(s){return!s.length||s.charAt(0)===s.charAt(0).toLowerCase()}function $1e(s){return s?lt(s,c=>c.text).join(""):""}function eOe(){return{target:1,jsx:1}}function Cit(){return F0.getSupportedErrorCodes()}var mks=class{constructor(s){this.host=s}getCurrentSourceFile(s){var c,g,d,h,_,S,R,T;let O=this.host.getScriptSnapshot(s);if(!O)throw new Error("Could not find file: '"+s+"'.");let V=_nt(s,this.host),M=this.host.getScriptVersion(s),ee;if(this.currentFileName!==s){let re={languageVersion:99,impliedNodeFormat:f1e(Pu(s,this.host.getCurrentDirectory(),((d=(g=(c=this.host).getCompilerHost)==null?void 0:g.call(c))==null?void 0:d.getCanonicalFileName)||qD(this.host)),(T=(R=(S=(_=(h=this.host).getCompilerHost)==null?void 0:_.call(h))==null?void 0:S.getModuleResolutionCache)==null?void 0:R.call(S))==null?void 0:T.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:zne(this.host.getCompilationSettings()),jsDocParsingMode:0};ee=tOe(s,O,re,M,!0,V)}else if(this.currentFileVersion!==M){let re=O.getChangeRange(this.currentFileScriptSnapshot);ee=_it(this.currentSourceFile,O,M,re)}return ee&&(this.currentFileVersion=M,this.currentFileName=s,this.currentFileScriptSnapshot=O,this.currentSourceFile=ee),this.currentSourceFile}};function Fon(s,c,g){s.version=g,s.scriptSnapshot=c}function tOe(s,c,g,d,h,_){let S=Wz(s,zz(c),g,h,_);return Fon(S,c,d),S}function _it(s,c,g,d,h){if(d&&g!==s.version){let S,R=d.span.start!==0?s.text.substr(0,d.span.start):"",T=Rs(d.span)!==s.text.length?s.text.substr(Rs(d.span)):"";if(d.newLength===0)S=R&&T?R+T:R||T;else{let V=c.getText(d.span.start,d.span.start+d.newLength);S=R&&T?R+V+T:R?R+V:V+T}let O=set(s,S,d,h);return Fon(O,c,g),O.nameTable=void 0,s!==O&&s.scriptSnapshot&&(s.scriptSnapshot.dispose&&s.scriptSnapshot.dispose(),s.scriptSnapshot=void 0),O}let _={languageVersion:s.languageVersion,impliedNodeFormat:s.impliedNodeFormat,setExternalModuleIndicator:s.setExternalModuleIndicator,jsDocParsingMode:s.jsDocParsingMode};return tOe(s.fileName,c,_,g,!0,s.scriptKind)}var Cks={isCancellationRequested:As,throwIfCancellationRequested:Dc},_ks=class{constructor(s){this.cancellationToken=s}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new Ty}},WYt=class{constructor(s,c=20){this.hostCancellationToken=s,this.throttleWaitMilliseconds=c,this.lastCancellationCheckTime=0}isCancellationRequested(){let s=Zg();return Math.abs(s-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=s,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new Ty}},Zon=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],yks=[...Zon,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];function OYt(s,c=uHt(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames(),s.getCurrentDirectory(),s.jsDocParsingMode),g){var d;let h;g===void 0?h=0:typeof g=="boolean"?h=g?2:0:h=g;let _=new mks(s),S,R,T=0,O=s.getCancellationToken?new _ks(s.getCancellationToken()):Cks,V=s.getCurrentDirectory();yLe((d=s.getLocalizedDiagnosticMessages)==null?void 0:d.bind(s));function M(tn){s.log&&s.log(tn)}let ee=T3(s),re=bd(ee),ge=SHt({useCaseSensitiveFileNames:()=>ee,getCurrentDirectory:()=>V,getProgram:Ne,fileExists:$i(s,s.fileExists),readFile:$i(s,s.readFile),getDocumentPositionMapper:$i(s,s.getDocumentPositionMapper),getSourceFileLike:$i(s,s.getSourceFileLike),log:M});function Ie(tn){let wn=S.getSourceFile(tn);if(!wn){let Mn=new Error(`Could not find source file: '${tn}'.`);throw Mn.ProgramFiles=S.getSourceFiles().map(ci=>ci.fileName),Mn}return wn}function _e(){s.updateFromProject&&!s.updateFromProjectInProgress?s.updateFromProject():Ee()}function Ee(){var tn,wn,Mn;if(pe.assert(h!==2),s.getProjectVersion){let Au=s.getProjectVersion();if(Au){if(R===Au&&!((tn=s.hasChangedAutomaticTypeDirectiveNames)!=null&&tn.call(s)))return;R=Au}}let ci=s.getTypeRootsVersion?s.getTypeRootsVersion():0;T!==ci&&(M("TypeRoots version has changed; provide new program"),S=void 0,T=ci);let es=s.getScriptFileNames().slice(),Oi=s.getCompilationSettings()||eOe(),Vn=s.hasInvalidatedResolutions||As,Ui=$i(s,s.hasInvalidatedLibResolutions)||As,gs=$i(s,s.hasChangedAutomaticTypeDirectiveNames),fs=(wn=s.getProjectReferences)==null?void 0:wn.call(s),bi,mc={getSourceFile:ch,getSourceFileByPath:hS,getCancellationToken:()=>O,getCanonicalFileName:re,useCaseSensitiveFileNames:()=>ee,getNewLine:()=>fN(Oi),getDefaultLibFileName:Au=>s.getDefaultLibFileName(Au),writeFile:Dc,getCurrentDirectory:()=>V,fileExists:Au=>s.fileExists(Au),readFile:Au=>s.readFile&&s.readFile(Au),getSymlinkCache:$i(s,s.getSymlinkCache),realpath:$i(s,s.realpath),directoryExists:Au=>m1(Au,s),getDirectories:Au=>s.getDirectories?s.getDirectories(Au):[],readDirectory:(Au,Eg,zA,NA,oi)=>(pe.checkDefined(s.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),s.readDirectory(Au,Eg,zA,NA,oi)),onReleaseOldSourceFile:Jg,onReleaseParsedCommandLine:sm,hasInvalidatedResolutions:Vn,hasInvalidatedLibResolutions:Ui,hasChangedAutomaticTypeDirectiveNames:gs,trace:$i(s,s.trace),resolveModuleNames:$i(s,s.resolveModuleNames),getModuleResolutionCache:$i(s,s.getModuleResolutionCache),createHash:$i(s,s.createHash),resolveTypeReferenceDirectives:$i(s,s.resolveTypeReferenceDirectives),resolveModuleNameLiterals:$i(s,s.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:$i(s,s.resolveTypeReferenceDirectiveReferences),resolveLibrary:$i(s,s.resolveLibrary),useSourceOfProjectReferenceRedirect:$i(s,s.useSourceOfProjectReferenceRedirect),getParsedCommandLine:kl,jsDocParsingMode:s.jsDocParsingMode,getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)},Ag=mc.getSourceFile,{getSourceFileWithCache:dg}=zde(mc,Au=>Pu(Au,V,re),(...Au)=>Ag.call(mc,...Au));mc.getSourceFile=dg,(Mn=s.setCompilerHost)==null||Mn.call(s,mc);let yu={useCaseSensitiveFileNames:ee,fileExists:Au=>mc.fileExists(Au),readFile:Au=>mc.readFile(Au),directoryExists:Au=>mc.directoryExists(Au),getDirectories:Au=>mc.getDirectories(Au),realpath:mc.realpath,readDirectory:(...Au)=>mc.readDirectory(...Au),trace:mc.trace,getCurrentDirectory:mc.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:Dc},RI=c.getKeyForCompilationSettings(Oi),pI=new Set;if(Ltt(S,es,Oi,(Au,Eg)=>s.getScriptVersion(Eg),Au=>mc.fileExists(Au),Vn,Ui,gs,kl,fs)){mc=void 0,bi=void 0,pI=void 0;return}S=I1e({rootNames:es,options:Oi,host:mc,oldProgram:S,projectReferences:fs}),mc=void 0,bi=void 0,pI=void 0,ge.clearCache(),S.getTypeChecker();return;function kl(Au){let Eg=Pu(Au,V,re),zA=bi?.get(Eg);if(zA!==void 0)return zA||void 0;let NA=s.getParsedCommandLine?s.getParsedCommandLine(Au):bu(Au);return(bi||(bi=new Map)).set(Eg,NA||!1),NA}function bu(Au){let Eg=ch(Au,100);if(Eg)return Eg.path=Pu(Au,V,re),Eg.resolvedPath=Eg.path,Eg.originalFileName=Eg.fileName,QEe(Eg,yu,Xc(Mo(Au),V),void 0,Xc(Au,V))}function sm(Au,Eg,zA){var NA;s.getParsedCommandLine?(NA=s.onReleaseParsedCommandLine)==null||NA.call(s,Au,Eg,zA):Eg&&qp(Eg.sourceFile,zA)}function qp(Au,Eg){let zA=c.getKeyForCompilationSettings(Eg);c.releaseDocumentWithKey(Au.resolvedPath,zA,Au.scriptKind,Au.impliedNodeFormat)}function Jg(Au,Eg,zA,NA){var oi;qp(Au,Eg),(oi=s.onReleaseOldSourceFile)==null||oi.call(s,Au,Eg,zA,NA)}function ch(Au,Eg,zA,NA){return hS(Au,Pu(Au,V,re),Eg,zA,NA)}function hS(Au,Eg,zA,NA,oi){pe.assert(mc,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let tp=s.getScriptSnapshot(Au);if(!tp)return;let JI=_nt(Au,s),Wh=s.getScriptVersion(Au);if(!oi){let MC=S&&S.getSourceFileByPath(Eg);if(MC){if(JI===MC.scriptKind||pI.has(MC.resolvedPath))return c.updateDocumentWithKey(Au,Eg,s,RI,tp,Wh,JI,zA);c.releaseDocumentWithKey(MC.resolvedPath,c.getKeyForCompilationSettings(S.getCompilerOptions()),MC.scriptKind,MC.impliedNodeFormat),pI.add(MC.resolvedPath)}}return c.acquireDocumentWithKey(Au,Eg,s,RI,tp,Wh,JI,zA)}}function Ne(){if(h===2){pe.assert(S===void 0);return}return _e(),S}function Te(){var tn;return(tn=s.getPackageJsonAutoImportProvider)==null?void 0:tn.call(s)}function Ze(tn,wn){let Mn=S.getTypeChecker(),ci=es();if(!ci)return!1;for(let Vn of tn)for(let Ui of Vn.references){let gs=Oi(Ui);if(pe.assertIsDefined(gs),wn.has(Ui)||zp.isDeclarationOfSymbol(gs,ci)){wn.add(Ui),Ui.isDefinition=!0;let fs=yWe(Ui,ge,$i(s,s.fileExists));fs&&wn.add(fs)}else Ui.isDefinition=!1}return!0;function es(){for(let Vn of tn)for(let Ui of Vn.references){if(wn.has(Ui)){let fs=Oi(Ui);return pe.assertIsDefined(fs),Mn.getSymbolAtLocation(fs)}let gs=yWe(Ui,ge,$i(s,s.fileExists));if(gs&&wn.has(gs)){let fs=Oi(gs);if(fs)return Mn.getSymbolAtLocation(fs)}}}function Oi(Vn){let Ui=S.getSourceFile(Vn.fileName);if(!Ui)return;let gs=Wb(Ui,Vn.textSpan.start);return zp.Core.getAdjustedNode(gs,{use:zp.FindReferencesUse.References})}}function Pe(){if(S){let tn=c.getKeyForCompilationSettings(S.getCompilerOptions());F(S.getSourceFiles(),wn=>c.releaseDocumentWithKey(wn.resolvedPath,tn,wn.scriptKind,wn.impliedNodeFormat)),S=void 0}}function Ke(){Pe(),s=void 0}function et(tn){return _e(),S.getSyntacticDiagnostics(Ie(tn),O).slice()}function Ye(tn){_e();let wn=Ie(tn),Mn=S.getSemanticDiagnostics(wn,O);if(!Wy(S.getCompilerOptions()))return Mn.slice();let ci=S.getDeclarationDiagnostics(wn,O);return[...Mn,...ci]}function Tt(tn,wn){_e();let Mn=Ie(tn),ci=S.getCompilerOptions();if(F3(Mn,ci,S)||!SU(Mn,ci)||S.getCachedSemanticDiagnostics(Mn))return;let es=at(Mn,wn);if(!es)return;let Oi=vI(es.map(Ui=>RA(Ui.getFullStart(),Ui.getEnd())));return{diagnostics:S.getSemanticDiagnostics(Mn,O,es).slice(),spans:Oi}}function at(tn,wn){let Mn=[],ci=vI(wn.map(es=>a9(es)));for(let es of ci){let Oi=Qe(tn,es);if(!Oi)return;Mn.push(...Oi)}if(Mn.length)return Mn}function Qe(tn,wn){if(rd(wn,tn))return;let Mn=ope(tn,Rs(wn))||tn,ci=ji(Mn,Oi=>Mg(Oi,wn)),es=[];if(Ct(wn,ci,es),tn.end===wn.start+wn.length&&es.push(tn.endOfFileToken),!zt(es,al))return es}function Ct(tn,wn,Mn){return mt(wn,tn)?rd(tn,wn)?(yt(wn,Mn),!0):$z(wn)?Rt(tn,wn,Mn):xa(wn)?Lt(tn,wn,Mn):(yt(wn,Mn),!0):!1}function mt(tn,wn){let Mn=wn.start+wn.length;return tn.poswn.start}function yt(tn,wn){for(;tn.parent&&!qLe(tn);)tn=tn.parent;wn.push(tn)}function Rt(tn,wn,Mn){let ci=[];return wn.statements.filter(Oi=>Ct(tn,Oi,ci)).length===wn.statements.length?(yt(wn,Mn),!0):(Mn.push(...ci),!1)}function Lt(tn,wn,Mn){var ci,es,Oi;let Vn=fs=>a3(fs,tn);if((ci=wn.modifiers)!=null&&ci.some(Vn)||wn.name&&Vn(wn.name)||(es=wn.typeParameters)!=null&&es.some(Vn)||(Oi=wn.heritageClauses)!=null&&Oi.some(Vn))return yt(wn,Mn),!0;let Ui=[];return wn.members.filter(fs=>Ct(tn,fs,Ui)).length===wn.members.length?(yt(wn,Mn),!0):(Mn.push(...Ui),!1)}function je(tn){return _e(),Xnt(Ie(tn),S,O)}function Wt(){return _e(),[...S.getOptionsDiagnostics(O),...S.getGlobalDiagnostics(O)]}function _r(tn,wn,Mn=HB,ci){let es={...Mn,includeCompletionsForModuleExports:Mn.includeCompletionsForModuleExports||Mn.includeExternalModuleExports,includeCompletionsWithInsertText:Mn.includeCompletionsWithInsertText||Mn.includeInsertTextCompletions};return _e(),aq.getCompletionsAtPosition(s,S,M,Ie(tn),wn,es,Mn.triggerCharacter,Mn.triggerKind,O,ci&&_m.getFormatContext(ci,s),Mn.includeSymbol)}function Gt(tn,wn,Mn,ci,es,Oi=HB,Vn){return _e(),aq.getCompletionEntryDetails(S,M,Ie(tn),wn,{name:Mn,source:es,data:Vn},s,ci&&_m.getFormatContext(ci,s),Oi,O)}function it(tn,wn,Mn,ci,es=HB){return _e(),aq.getCompletionEntrySymbol(S,M,Ie(tn),wn,{name:Mn,source:ci},s,es)}function kt(tn,wn,Mn,ci){_e();let es=Ie(tn),Oi=Wb(es,wn);if(Oi===es)return;let Vn=S.getTypeChecker(),Ui=Gr(Oi),gs=vks(Ui,Vn);if(!gs||Vn.isUnknownSymbol(gs)){let yu=dt(es,Ui,wn)?Vn.getTypeAtLocation(Ui):void 0;return yu&&{kind:"",kindModifiers:"",textSpan:Hy(Ui,es),displayParts:Vn.runWithCancellationToken(O,RI=>V1e(RI,yu,QU(Ui),void 0,ci)),documentation:yu.symbol?yu.symbol.getDocumentationComment(Vn):void 0,tags:yu.symbol?yu.symbol.getJsDocTags(Vn):void 0}}let{symbolKind:fs,displayParts:bi,documentation:mc,tags:Ag,canIncreaseVerbosityLevel:dg}=Vn.runWithCancellationToken(O,yu=>u9.getSymbolDisplayPartsDocumentationAndSymbolKind(yu,gs,es,QU(Ui),Ui,void 0,void 0,Mn??Rge,ci));return{kind:fs,kindModifiers:u9.getSymbolModifiers(Vn,gs),textSpan:Hy(Ui,es),displayParts:bi,documentation:mc,tags:Ag,canIncreaseVerbosityLevel:dg}}function tr(tn,wn){return _e(),Dst.preparePasteEdits(Ie(tn),wn,S.getTypeChecker())}function ur(tn,wn){return _e(),kst.pasteEditsProvider(Ie(tn.targetFile),tn.pastedText,tn.pasteLocations,tn.copiedFrom?{file:Ie(tn.copiedFrom.file),range:tn.copiedFrom.range}:void 0,s,tn.preferences,_m.getFormatContext(wn,s),O)}function Gr(tn){return m2(tn.parent)&&tn.pos===tn.parent.pos?tn.parent.expression:eR(tn.parent)&&tn.pos===tn.parent.pos||pv(tn.parent)&&tn.parent.name===tn||sR(tn.parent)?tn.parent:tn}function dt(tn,wn,Mn){switch(wn.kind){case 80:return wn.flags&16777216&&!wo(wn)&&(wn.parent.kind===172&&wn.parent.name===wn||ji(wn,ci=>ci.kind===170))?!1:!Ort(wn)&&!Prt(wn)&&!c2(wn.parent);case 212:case 167:return!s9(tn,Mn);case 110:case 198:case 108:case 203:return!0;case 237:return pv(wn);default:return!1}}function pr(tn,wn,Mn,ci){return _e(),hse.getDefinitionAtPosition(S,Ie(tn),wn,Mn,ci)}function ot(tn,wn){return _e(),hse.getDefinitionAndBoundSpan(S,Ie(tn),wn)}function ir(tn,wn){return _e(),hse.getTypeDefinitionAtPosition(S.getTypeChecker(),Ie(tn),wn)}function qt(tn,wn){return _e(),zp.getImplementationsAtPosition(S,O,S.getSourceFiles(),Ie(tn),wn)}function Yt(tn,wn,Mn){let ci=su(tn);pe.assert(Mn.some(Vn=>su(Vn)===ci)),_e();let es=Xt(Mn,Vn=>S.getSourceFile(Vn)),Oi=Ie(tn);return WWe.getDocumentHighlights(S,O,Oi,wn,es)}function Tr(tn,wn,Mn,ci,es){_e();let Oi=Ie(tn),Vn=lWe(Wb(Oi,wn));if(bOe.nodeIsEligibleForRename(Vn))if(Ir(Vn)&&(iR(Vn.parent)||dQ(Vn.parent))&&dU(Vn.escapedText)){let{openingElement:Ui,closingElement:gs}=Vn.parent.parent;return[Ui,gs].map(fs=>{let bi=Hy(fs.tagName,Oi);return{fileName:Oi.fileName,textSpan:bi,...zp.toContextSpan(bi,Oi,fs.parent)}})}else{let Ui=E1(Oi,es??HB),gs=typeof es=="boolean"?es:es?.providePrefixAndSuffixTextForRename;return jn(Vn,wn,{findInStrings:Mn,findInComments:ci,providePrefixAndSuffixTextForRename:gs,use:zp.FindReferencesUse.Rename},(fs,bi,mc)=>zp.toRenameLocation(fs,bi,mc,gs||!1,Ui))}}function Cn(tn,wn){return _e(),jn(Wb(Ie(tn),wn),wn,{use:zp.FindReferencesUse.References},zp.toReferenceEntry)}function jn(tn,wn,Mn,ci){_e();let es=Mn&&Mn.use===zp.FindReferencesUse.Rename?S.getSourceFiles().filter(Oi=>!S.isSourceFileDefaultLibrary(Oi)):S.getSourceFiles();return zp.findReferenceOrRenameEntries(S,O,es,tn,wn,Mn,ci)}function Zi(tn,wn){return _e(),zp.findReferencedSymbols(S,O,S.getSourceFiles(),Ie(tn),wn)}function Ns(tn){return _e(),zp.Core.getReferencesForFileName(tn,S,S.getSourceFiles()).map(zp.toReferenceEntry)}function An(tn,wn,Mn,ci=!1,es=!1){_e();let Oi=Mn?[Ie(Mn)]:S.getSourceFiles();return Uin(Oi,S.getTypeChecker(),O,tn,wn,ci,es)}function si(tn,wn,Mn){_e();let ci=Ie(tn),es=s.getCustomTransformers&&s.getCustomTransformers();return n5t(S,ci,!!wn,O,es,Mn)}function ks(tn,wn,{triggerReason:Mn}=HB){_e();let ci=Ie(tn);return p2e.getSignatureHelpItems(S,ci,wn,Mn,O)}function Ic(tn){return _.getCurrentSourceFile(tn)}function ou(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=Wb(ci,wn);if(es===ci)return;switch(es.kind){case 212:case 167:case 11:case 97:case 112:case 106:case 108:case 110:case 198:case 80:break;default:return}let Oi=es;for(;;)if(ese(Oi)||_Mt(Oi))Oi=Oi.parent;else if(Hrt(Oi))if(Oi.parent.parent.kind===268&&Oi.parent.parent.body===Oi.parent)Oi=Oi.parent.parent.name;else break;else break;return RA(Oi.getStart(),es.getEnd())}function Zn(tn,wn){let Mn=_.getCurrentSourceFile(tn);return bit.spanInSourceFileAtLocation(Mn,wn)}function ya(tn){return qin(_.getCurrentSourceFile(tn),O)}function Fl(tn){return $in(_.getCurrentSourceFile(tn),O)}function ba(tn,wn,Mn){return _e(),(Mn||"original")==="2020"?Eon(S,O,Ie(tn),wn):cHt(S.getTypeChecker(),O,Ie(tn),S.getClassifiableNames(),wn)}function Oo(tn,wn,Mn){return _e(),(Mn||"original")==="original"?Vnt(S.getTypeChecker(),O,Ie(tn),S.getClassifiableNames(),wn):ZYt(S,O,Ie(tn),wn)}function hc(tn,wn){return lHt(O,_.getCurrentSourceFile(tn),wn)}function yr(tn,wn){return Wnt(O,_.getCurrentSourceFile(tn),wn)}function hn(tn){let wn=_.getCurrentSourceFile(tn);return Ist.collectElements(wn,O)}let Pi=new Map(Object.entries({19:20,21:22,23:24,32:30}));Pi.forEach((tn,wn)=>Pi.set(tn.toString(),Number(wn)));function co(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=nse(Mn,wn),es=ci.getStart(Mn)===wn?Pi.get(ci.kind.toString()):void 0,Oi=es&&ep(ci.parent,es,Mn);return Oi?[Hy(ci,Mn),Hy(Oi,Mn)].sort((Vn,Ui)=>Vn.start-Ui.start):E}function pa(tn,wn,Mn){let ci=Zg(),es=q1e(Mn),Oi=_.getCurrentSourceFile(tn);M("getIndentationAtPosition: getCurrentSourceFile: "+(Zg()-ci)),ci=Zg();let Vn=_m.SmartIndenter.getIndentation(wn,Oi,es);return M("getIndentationAtPosition: computeIndentation : "+(Zg()-ci)),Vn}function Pa(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn);return _m.formatSelection(wn,Mn,es,_m.getFormatContext(q1e(ci),s))}function $c(tn,wn){return _m.formatDocument(_.getCurrentSourceFile(tn),_m.getFormatContext(q1e(wn),s))}function Qu(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn),Oi=_m.getFormatContext(q1e(ci),s);if(!s9(es,wn))switch(Mn){case"{":return _m.formatOnOpeningCurly(wn,es,Oi);case"}":return _m.formatOnClosingCurly(wn,es,Oi);case";":return _m.formatOnSemicolon(wn,es,Oi);case` -`:return _m.formatOnEnter(wn,es,Oi)}return[]}function Rg(tn,wn,Mn,ci,es,Oi=HB){_e();let Vn=Ie(tn),Ui=RA(wn,Mn),gs=_m.getFormatContext(es,s);return jt(no(ci,bg,Zt),fs=>(O.throwIfCancellationRequested(),F0.getFixes({errorCode:fs,sourceFile:Vn,span:Ui,program:S,host:s,cancellationToken:O,formatContext:gs,preferences:Oi})))}function Cs(tn,wn,Mn,ci=HB){_e(),pe.assert(tn.type==="file");let es=Ie(tn.fileName),Oi=_m.getFormatContext(Mn,s);return F0.getAllFixes({fixId:wn,sourceFile:es,program:S,host:s,cancellationToken:O,formatContext:Oi,preferences:ci})}function Tu(tn,wn,Mn=HB){_e(),pe.assert(tn.type==="file");let ci=Ie(tn.fileName);if(bW(ci))return E;let es=_m.getFormatContext(wn,s),Oi=tn.mode??(tn.skipDestructiveCodeActions?"SortAndCombine":"All");return g5.organizeImports(ci,es,s,S,Mn,Oi)}function Wr(tn,wn,Mn,ci=HB){return AHt(Ne(),tn,wn,s,_m.getFormatContext(Mn,s),ci,ge)}function Wn(tn,wn){let Mn=typeof tn=="string"?wn:tn;return Ki(Mn)?Promise.all(Mn.map(ci=>pt(ci))):pt(Mn)}function pt(tn){let wn=Mn=>Pu(Mn,V,re);return pe.assertEqual(tn.type,"install package"),s.installPackage?s.installPackage({fileName:wn(tn.file),packageName:tn.packageName}):Promise.reject("Host does not implement `installPackage`")}function on(tn,wn,Mn,ci){let es=ci?_m.getFormatContext(ci,s).options:void 0;return u5.getDocCommentTemplateAtPosition(JF(s,es),_.getCurrentSourceFile(tn),wn,Mn)}function st(tn,wn,Mn){if(Mn===60)return!1;let ci=_.getCurrentSourceFile(tn);if(jz(ci,wn))return!1;if(wMt(ci,wn))return Mn===123;if(Krt(ci,wn))return!1;switch(Mn){case 39:case 34:case 96:return!s9(ci,wn)}return!0}function nr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Vm(wn,Mn);if(!ci)return;let es=ci.kind===32&&iR(ci.parent)?ci.parent.parent:t9(ci)&&wN(ci.parent)?ci.parent:void 0;if(es&&Gi(es))return{newText:``};let Oi=ci.kind===32&&Yw(ci.parent)?ci.parent.parent:t9(ci)&&X3(ci.parent)?ci.parent:void 0;if(Oi&&nn(Oi))return{newText:""}}function Zr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Vm(wn,Mn);if(!ci||ci.parent.kind===308)return;let es="[a-zA-Z0-9:\\-\\._$]*";if(X3(ci.parent.parent)){let Oi=ci.parent.parent.openingFragment,Vn=ci.parent.parent.closingFragment;if(bW(Oi)||bW(Vn))return;let Ui=Oi.getStart(Mn)+1,gs=Vn.getStart(Mn)+2;return wn!==Ui&&wn!==gs?void 0:{ranges:[{start:Ui,length:0},{start:gs,length:0}],wordPattern:es}}else{let Oi=ji(ci.parent,dg=>!!(iR(dg)||dQ(dg)));if(!Oi)return;pe.assert(iR(Oi)||dQ(Oi),"tag should be opening or closing element");let Vn=Oi.parent.openingElement,Ui=Oi.parent.closingElement,gs=Vn.tagName.getStart(Mn),fs=Vn.tagName.end,bi=Ui.tagName.getStart(Mn),mc=Ui.tagName.end;return gs===Vn.getStart(Mn)||bi===Ui.getStart(Mn)||fs===Vn.getEnd()||mc===Ui.getEnd()||!(gs<=wn&&wn<=fs||bi<=wn&&wn<=mc)||Vn.tagName.getText(Mn)!==Ui.tagName.getText(Mn)?void 0:{ranges:[{start:gs,length:fs-gs},{start:bi,length:mc-bi}],wordPattern:es}}}function Kr(tn,wn){return{lineStarts:tn.getLineStarts(),firstLine:tn.getLineAndCharacterOfPosition(wn.pos).line,lastLine:tn.getLineAndCharacterOfPosition(wn.end).line}}function Dn(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=[],{lineStarts:Oi,firstLine:Vn,lastLine:Ui}=Kr(ci,wn),gs=Mn||!1,fs=Number.MAX_VALUE,bi=new Map,mc=new RegExp(/\S/),Ag=gWe(ci,Oi[Vn]),dg=Ag?"{/*":"//";for(let yu=Vn;yu<=Ui;yu++){let RI=ci.text.substring(Oi[yu],ci.getLineEndOfPosition(Oi[yu])),pI=mc.exec(RI);pI&&(fs=Math.min(fs,pI.index),bi.set(yu.toString(),pI.index),RI.substr(pI.index,dg.length)!==dg&&(gs=Mn===void 0||Mn))}for(let yu=Vn;yu<=Ui;yu++){if(Vn!==Ui&&Oi[yu]===wn.end)continue;let RI=bi.get(yu.toString());RI!==void 0&&(Ag?es.push(...hr(tn,{pos:Oi[yu]+fs,end:ci.getLineEndOfPosition(Oi[yu])},gs,Ag)):gs?es.push({newText:dg,span:{length:0,start:Oi[yu]+fs}}):ci.text.substr(Oi[yu]+RI,dg.length)===dg&&es.push({newText:"",span:{length:dg.length,start:Oi[yu]+RI}}))}return es}function hr(tn,wn,Mn,ci){var es;let Oi=_.getCurrentSourceFile(tn),Vn=[],{text:Ui}=Oi,gs=!1,fs=Mn||!1,bi=[],{pos:mc}=wn,Ag=ci!==void 0?ci:gWe(Oi,mc),dg=Ag?"{/*":"/*",yu=Ag?"*/}":"*/",RI=Ag?"\\{\\/\\*":"\\/\\*",pI=Ag?"\\*\\/\\}":"\\*\\/";for(;mc<=wn.end;){let Ip=Ui.substr(mc,dg.length)===dg?dg.length:0,kl=s9(Oi,mc+Ip);if(kl)Ag&&(kl.pos--,kl.end++),bi.push(kl.pos),kl.kind===3&&bi.push(kl.end),gs=!0,mc=kl.end+1;else{let bu=Ui.substring(mc,wn.end).search(`(${RI})|(${pI})`);fs=Mn!==void 0?Mn:fs||!VMt(Ui,mc,bu===-1?wn.end:mc+bu),mc=bu===-1?wn.end+1:mc+bu+yu.length}}if(fs||!gs){((es=s9(Oi,wn.pos))==null?void 0:es.kind)!==2&&Gc(bi,wn.pos,Zt),Gc(bi,wn.end,Zt);let Ip=bi[0];Ui.substr(Ip,dg.length)!==dg&&Vn.push({newText:dg,span:{length:0,start:Ip}});for(let kl=1;kl0?Ip-yu.length:0,bu=Ui.substr(kl,yu.length)===yu?yu.length:0;Vn.push({newText:"",span:{length:dg.length,start:Ip-bu}})}return Vn}function Sn(tn,wn){let Mn=_.getCurrentSourceFile(tn),{firstLine:ci,lastLine:es}=Kr(Mn,wn);return ci===es&&wn.pos!==wn.end?hr(tn,wn,!0):Dn(tn,wn,!0)}function Ni(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=[],{pos:es}=wn,{end:Oi}=wn;es===Oi&&(Oi+=gWe(Mn,es)?2:1);for(let Vn=es;Vn<=Oi;Vn++){let Ui=s9(Mn,Vn);if(Ui){switch(Ui.kind){case 2:ci.push(...Dn(tn,{end:Ui.end,pos:Ui.pos+1},!1));break;case 3:ci.push(...hr(tn,{end:Ui.end,pos:Ui.pos+1},!1))}Vn=Ui.end+1}}return ci}function Gi({openingElement:tn,closingElement:wn,parent:Mn}){return!q3(tn.tagName,wn.tagName)||wN(Mn)&&q3(tn.tagName,Mn.openingElement.tagName)&&Gi(Mn)}function nn({closingFragment:tn,parent:wn}){return!!(tn.flags&262144)||X3(wn)&&nn(wn)}function En(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=_m.getRangeOfEnclosingComment(ci,wn);return es&&(!Mn||es.kind===3)?a9(es):void 0}function ds(tn,wn){_e();let Mn=Ie(tn);O.throwIfCancellationRequested();let ci=Mn.text,es=[];if(wn.length>0&&!gs(Mn.fileName)){let fs=Vn(),bi;for(;bi=fs.exec(ci);){O.throwIfCancellationRequested();let mc=3;pe.assert(bi.length===wn.length+mc);let Ag=bi[1],dg=bi.index+Ag.length;if(!s9(Mn,dg))continue;let yu;for(let pI=0;pI"("+Oi(kl.text)+")").join("|")+")",yu=/(?:$|\*\/)/.source,RI=/(?:.*?)/.source,pI="("+dg+RI+")",Ip=Ag+pI+yu;return new RegExp(Ip,"gim")}function Ui(fs){return fs>=97&&fs<=122||fs>=65&&fs<=90||fs>=48&&fs<=57}function gs(fs){return fs.includes("/node_modules/")}}function Ht(tn,wn,Mn){return _e(),bOe.getRenameInfo(S,Ie(tn),wn,Mn||{})}function cn(tn,wn,Mn,ci,es,Oi){let[Vn,Ui]=typeof wn=="number"?[wn,void 0]:[wn.pos,wn.end];return{file:tn,startPosition:Vn,endPosition:Ui,program:Ne(),host:s,formatContext:_m.getFormatContext(ci,s),cancellationToken:O,preferences:Mn,triggerReason:es,kind:Oi}}function wt(tn,wn,Mn){return{file:tn,program:Ne(),host:s,span:wn,preferences:Mn,cancellationToken:O}}function xe(tn,wn){return Cst.getSmartSelectionRange(wn,_.getCurrentSourceFile(tn))}function fr(tn,wn,Mn=HB,ci,es,Oi){_e();let Vn=Ie(tn);return tq.getApplicableRefactors(cn(Vn,wn,Mn,HB,ci,es),Oi)}function Ue(tn,wn,Mn=HB){_e();let ci=Ie(tn),es=pe.checkDefined(S.getSourceFiles()),Oi=fz(tn),Vn=j1e(cn(ci,wn,Mn,HB)),Ui=rYt(Vn?.all),gs=Xt(es,fs=>{let bi=fz(fs.fileName);return!S?.isSourceFileFromExternalLibrary(ci)&&!(ci===Ie(fs.fileName)||Oi===".ts"&&bi===".d.ts"||Oi===".d.ts"&&Ac(dp(fs.fileName),"lib.")&&bi===".d.ts")&&(Oi===bi||(Oi===".tsx"&&bi===".ts"||Oi===".jsx"&&bi===".js")&&!Ui)?fs.fileName:void 0});return{newFileName:tYt(ci,S,s,Vn),files:gs}}function In(tn,wn,Mn,ci,es,Oi=HB,Vn){_e();let Ui=Ie(tn);return tq.getEditsForRefactor(cn(Ui,Mn,Oi,wn),ci,es,Vn)}function Hn(tn,wn){return wn===0?{line:0,character:0}:ge.toLineColumnOffset(tn,wn)}function Mt(tn,wn){_e();let Mn=rq.resolveCallHierarchyDeclaration(S,Wb(Ie(tn),wn));return Mn&&Rnt(Mn,ci=>rq.createCallHierarchyItem(S,ci))}function $r(tn,wn){_e();let Mn=Ie(tn),ci=Nnt(rq.resolveCallHierarchyDeclaration(S,wn===0?Mn:Wb(Mn,wn)));return ci?rq.getIncomingCalls(S,ci,O):[]}function ri(tn,wn){_e();let Mn=Ie(tn),ci=Nnt(rq.resolveCallHierarchyDeclaration(S,wn===0?Mn:Wb(Mn,wn)));return ci?rq.getOutgoingCalls(S,ci):[]}function oo(tn,wn,Mn=HB){_e();let ci=Ie(tn);return dst.provideInlayHints(wt(ci,wn,Mn))}function Bs(tn,wn,Mn,ci,es){return pst.mapCode(_.getCurrentSourceFile(tn),wn,Mn,s,_m.getFormatContext(ci,s),es)}let Ys={dispose:Ke,cleanupSemanticCache:Pe,getSyntacticDiagnostics:et,getSemanticDiagnostics:Ye,getRegionSemanticDiagnostics:Tt,getSuggestionDiagnostics:je,getCompilerOptionsDiagnostics:Wt,getSyntacticClassifications:hc,getSemanticClassifications:ba,getEncodedSyntacticClassifications:yr,getEncodedSemanticClassifications:Oo,getCompletionsAtPosition:_r,getCompletionEntryDetails:Gt,getCompletionEntrySymbol:it,getSignatureHelpItems:ks,getQuickInfoAtPosition:kt,getDefinitionAtPosition:pr,getDefinitionAndBoundSpan:ot,getImplementationAtPosition:qt,getTypeDefinitionAtPosition:ir,getReferencesAtPosition:Cn,findReferences:Zi,getFileReferences:Ns,getDocumentHighlights:Yt,getNameOrDottedNameSpan:ou,getBreakpointStatementAtPosition:Zn,getNavigateToItems:An,getRenameInfo:Ht,getSmartSelectionRange:xe,findRenameLocations:Tr,getNavigationBarItems:ya,getNavigationTree:Fl,getOutliningSpans:hn,getTodoComments:ds,getBraceMatchingAtPosition:co,getIndentationAtPosition:pa,getFormattingEditsForRange:Pa,getFormattingEditsForDocument:$c,getFormattingEditsAfterKeystroke:Qu,getDocCommentTemplateAtPosition:on,isValidBraceCompletionAtPosition:st,getJsxClosingTagAtPosition:nr,getLinkedEditingRangeAtPosition:Zr,getSpanOfEnclosingComment:En,getCodeFixesAtPosition:Rg,getCombinedCodeFix:Cs,applyCodeActionCommand:Wn,organizeImports:Tu,getEditsForFileRename:Wr,getEmitOutput:si,getNonBoundSourceFile:Ic,getProgram:Ne,getCurrentProgram:()=>S,getAutoImportProvider:Te,updateIsDefinitionOfReferencedSymbols:Ze,getApplicableRefactors:fr,getEditsForRefactor:In,getMoveToRefactoringFileSuggestions:Ue,toLineColumnOffset:Hn,getSourceMapper:()=>ge,clearSourceMapperCache:()=>ge.clearCache(),prepareCallHierarchy:Mt,provideCallHierarchyIncomingCalls:$r,provideCallHierarchyOutgoingCalls:ri,toggleLineComment:Dn,toggleMultilineComment:hr,commentSelection:Sn,uncommentSelection:Ni,provideInlayHints:oo,getSupportedCodeFixes:Cit,preparePasteEditsForFile:tr,getPasteEdits:ur,mapCode:Bs};switch(h){case 0:break;case 1:Zon.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:yks.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.Syntactic`)});break;default:pe.assertNever(h)}return Ys}function yit(s){return s.nameTable||bks(s),s.nameTable}function bks(s){let c=s.nameTable=new Map;s.forEachChild(function g(d){if(Ir(d)&&!Prt(d)&&d.escapedText||I1(d)&&Eks(d)){let h=gU(d);c.set(h,c.get(h)===void 0?d.pos:-1)}else if(p(d)){let h=d.escapedText;c.set(h,c.get(h)===void 0?d.pos:-1)}if(Lu(d,g),jm(d))for(let h of d.jsDoc)Lu(h,g)})}function Eks(s){return UT(s)||s.parent.kind===284||Bks(s)||Rne(s)}function e2e(s){let c=Sks(s);return c&&(ag(c.parent)||pQ(c.parent))?c:void 0}function Sks(s){switch(s.kind){case 11:case 15:case 9:if(s.parent.kind===168)return xY(s.parent.parent)?s.parent.parent:void 0;case 80:case 296:return xY(s.parent)&&(s.parent.parent.kind===211||s.parent.parent.kind===293)&&s.parent.name===s?s.parent:void 0}}function vks(s,c){let g=e2e(s);if(g){let d=c.getContextualType(g.parent),h=d&&rOe(g,c,d,!1);if(h&&h.length===1)return ma(h)}return c.getSymbolAtLocation(s)}function rOe(s,c,g,d){let h=F1e(s.name);if(!h)return E;if(!g.isUnion()){let R=g.getProperty(h);return R?[R]:E}let _=ag(s.parent)||pQ(s.parent)?Le(g.types,R=>!c.isTypeInvalidDueToUnionDiscriminant(R,s.parent)):g.types,S=Xt(_,R=>R.getProperty(h));if(d&&(S.length===0||S.length===g.types.length)){let R=g.getProperty(h);if(R)return[R]}return!_.length&&!S.length?Xt(g.types,R=>R.getProperty(h)):no(S,bg)}function Bks(s){return s&&s.parent&&s.parent.kind===213&&s.parent.argumentExpression===s}function PYt(s){if(Ed)return Ro(Mo(su(Ed.getExecutingFilePath())),Hs(s));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}_Le(hks());function Lon(s,c,g){let d=[];g=jnt(g,d);let h=Ki(s)?s:[s],_=c1e(void 0,void 0,me,g,h,c,!0);return _.diagnostics=Nn(_.diagnostics,d),_}var bit={};o(bit,{spanInSourceFileAtLocation:()=>wks});function wks(s,c){if(s.isDeclarationFile)return;let g=Jc(s,c),d=s.getLineAndCharacterOfPosition(c).line;if(s.getLineAndCharacterOfPosition(g.getStart(s)).line>d){let M=Vm(g.pos,s);if(!M||s.getLineAndCharacterOfPosition(M.getEnd()).line!==d)return;g=M}if(g.flags&33554432)return;return V(g);function h(M,ee){let re=hQ(M)?be(M.modifiers,So):void 0,ge=re?Yu(s.text,re.end):M.getStart(s);return RA(ge,(ee||M).getEnd())}function _(M,ee){return h(M,BQ(ee,ee.parent,s))}function S(M,ee){return M&&d===s.getLineAndCharacterOfPosition(M.getStart(s)).line?V(M):V(ee)}function R(M,ee,re){if(M){let ge=M.indexOf(ee);if(ge>=0){let Ie=ge,_e=ge+1;for(;Ie>0&&re(M[Ie-1]);)Ie--;for(;_e0)return V(Wt.declarations[0])}else return V(je.initializer)}function Pe(je){if(je.initializer)return Ze(je);if(je.condition)return h(je.condition);if(je.incrementor)return h(je.incrementor)}function Ke(je){let Wt=F(je.elements,_r=>_r.kind!==233?_r:void 0);return Wt?V(Wt):je.parent.kind===209?h(je.parent):ee(je.parent)}function et(je){pe.assert(je.kind!==208&&je.kind!==207);let Wt=je.kind===210?je.elements:je.properties,_r=F(Wt,Gt=>Gt.kind!==233?Gt:void 0);return _r?V(_r):h(je.parent.kind===227?je.parent:je)}function Ye(je){switch(je.parent.kind){case 267:let Wt=je.parent;return S(Vm(je.pos,s,je.parent),Wt.members.length?Wt.members[0]:Wt.getLastToken(s));case 264:let _r=je.parent;return S(Vm(je.pos,s,je.parent),_r.members.length?_r.members[0]:_r.getLastToken(s));case 270:return S(je.parent.parent,je.parent.clauses[0])}return V(je.parent)}function Tt(je){switch(je.parent.kind){case 269:if(QF(je.parent.parent)!==1)return;case 267:case 264:return h(je);case 242:if(BW(je.parent))return h(je);case 300:return V(li(je.parent.statements));case 270:let Wt=je.parent,_r=li(Wt.clauses);return _r?V(li(_r.statements)):void 0;case 207:let Gt=je.parent;return V(li(Gt.elements)||Gt);default:if(o9(je.parent)){let it=je.parent;return h(li(it.properties)||it)}return V(je.parent)}}function at(je){switch(je.parent.kind){case 208:let Wt=je.parent;return h(li(Wt.elements)||Wt);default:if(o9(je.parent)){let _r=je.parent;return h(li(_r.elements)||_r)}return V(je.parent)}}function Qe(je){return je.parent.kind===247||je.parent.kind===214||je.parent.kind===215?T(je):je.parent.kind===218?O(je):V(je.parent)}function Ct(je){switch(je.parent.kind){case 219:case 263:case 220:case 175:case 174:case 178:case 179:case 177:case 248:case 247:case 249:case 251:case 214:case 215:case 218:return T(je);default:return V(je.parent)}}function mt(je){return Eu(je.parent)||je.parent.kind===304||je.parent.kind===170?T(je):V(je.parent)}function yt(je){return je.parent.kind===217?O(je):V(je.parent)}function Rt(je){return je.parent.kind===247?_(je,je.parent.expression):V(je.parent)}function Lt(je){return je.parent.kind===251?O(je):V(je.parent)}}}var rq={};o(rq,{createCallHierarchyItem:()=>MYt,getIncomingCalls:()=>Fks,getOutgoingCalls:()=>Qks,resolveCallHierarchyDeclaration:()=>Qon});function Tks(s){return(jA(s)||wd(s))&&sh(s)}function Von(s){return pi(s)||nc(s)}function t2e(s){return(jA(s)||uA(s)||wd(s))&&Von(s.parent)&&s===s.parent.initializer&&Ir(s.parent.name)&&(!!(hm(s.parent)&2)||pi(s.parent))}function Won(s){return al(s)||Lh(s)||ah(s)||jA(s)||mm(s)||wd(s)||Al(s)||gu(s)||Il(s)||wg(s)||kg(s)}function pse(s){return al(s)||Lh(s)&&Ir(s.name)||ah(s)||mm(s)||Al(s)||gu(s)||Il(s)||wg(s)||kg(s)||Tks(s)||t2e(s)}function Oon(s){return al(s)?s:sh(s)?s.name:t2e(s)?s.parent.name:pe.checkDefined(s.modifiers&&de(s.modifiers,Pon))}function Pon(s){return s.kind===90}function Mon(s,c){let g=Oon(c);return g&&s.getSymbolAtLocation(g)}function Rks(s,c){if(al(c))return{text:c.fileName,pos:0,end:0};if((ah(c)||mm(c))&&!sh(c)){let h=c.modifiers&&de(c.modifiers,Pon);if(h)return{text:"default",pos:h.getStart(),end:h.getEnd()}}if(Al(c)){let h=c.getSourceFile(),_=Yu(h.text,Iv(c).pos),S=_+6,R=s.getTypeChecker(),T=R.getSymbolAtLocation(c.parent);return{text:`${T?`${R.symbolToString(T,c.parent)} `:""}static {}`,pos:_,end:S}}let g=t2e(c)?c.parent.name:pe.checkDefined(fl(c),"Expected call hierarchy item to have a name"),d=Ir(g)?Vo(g):I1(g)?g.text:Un(g)&&I1(g.expression)?g.expression.text:void 0;if(d===void 0){let h=s.getTypeChecker(),_=h.getSymbolAtLocation(g);_&&(d=h.symbolToString(_,c))}if(d===void 0){let h=Ett();d=yW(_=>h.writeNode(4,c,c.getSourceFile(),_))}return{text:d,pos:g.getStart(),end:g.getEnd()}}function Nks(s){var c,g,d,h;if(t2e(s))return pi(s.parent)&&xa(s.parent.parent)?wd(s.parent.parent)?(c=SB(s.parent.parent))==null?void 0:c.getText():(g=s.parent.parent.name)==null?void 0:g.getText():vN(s.parent.parent.parent.parent)&&Ir(s.parent.parent.parent.parent.parent.name)?s.parent.parent.parent.parent.parent.name.getText():void 0;switch(s.kind){case 178:case 179:case 175:return s.parent.kind===211?(d=SB(s.parent))==null?void 0:d.getText():(h=fl(s.parent))==null?void 0:h.getText();case 263:case 264:case 268:if(vN(s.parent)&&Ir(s.parent.parent.name))return s.parent.parent.name.getText()}}function Hon(s,c){if(c.body)return c;if(Tc(c))return pN(c.parent);if(ah(c)||gu(c)){let g=Mon(s,c);return g&&g.valueDeclaration&&Gd(g.valueDeclaration)&&g.valueDeclaration.body?g.valueDeclaration:void 0}return c}function Yon(s,c){let g=Mon(s,c),d;if(g&&g.declarations){let h=Ao(g.declarations),_=lt(g.declarations,T=>({file:T.getSourceFile().fileName,pos:T.pos}));h.sort((T,O)=>Ca(_[T].file,_[O].file)||_[T].pos-_[O].pos);let S=lt(h,T=>g.declarations[T]),R;for(let T of S)pse(T)&&((!R||R.parent!==T.parent||R.end!==T.pos)&&(d=Ft(d,T)),R=T)}return d}function Eit(s,c){return Al(c)?c:Gd(c)?Hon(s,c)??Yon(s,c)??c:Yon(s,c)??c}function Qon(s,c){let g=s.getTypeChecker(),d=!1;for(;;){if(pse(c))return Eit(g,c);if(Won(c)){let h=ji(c,pse);return h&&Eit(g,h)}if(UT(c)){if(pse(c.parent))return Eit(g,c.parent);if(Won(c.parent)){let h=ji(c.parent,pse);return h&&Eit(g,h)}return Von(c.parent)&&c.parent.initializer&&t2e(c.parent.initializer)?c.parent.initializer:void 0}if(Tc(c))return pse(c.parent)?c.parent:void 0;if(c.kind===126&&Al(c.parent)){c=c.parent;continue}if(nc(c)&&c.initializer&&t2e(c.initializer))return c.initializer;if(!d){let h=g.getSymbolAtLocation(c);if(h&&(h.flags&2097152&&(h=g.getAliasedSymbol(h)),h.valueDeclaration)){d=!0,c=h.valueDeclaration;continue}}return}}function MYt(s,c){let g=c.getSourceFile(),d=Rks(s,c),h=Nks(c),_=vQ(c),S=ape(c),R=RA(Yu(g.text,c.getFullStart(),!1,!0),c.getEnd()),T=RA(d.pos,d.end);return{file:g.fileName,kind:_,kindModifiers:S,name:d.text,containerName:h,span:R,selectionSpan:T}}function Dks(s){return s!==void 0}function kks(s){if(s.kind===zp.EntryKind.Node){let{node:c}=s;if(Lrt(c,!0,!0)||hMt(c,!0,!0)||mMt(c,!0,!0)||CMt(c,!0,!0)||ese(c)||Mrt(c)){let g=c.getSourceFile();return{declaration:ji(c,pse)||g,range:nnt(c,g)}}}}function Xon(s){return id(s.declaration)}function xks(s,c){return{from:s,fromSpans:c}}function Gks(s,c){return xks(MYt(s,c[0].declaration),lt(c,g=>a9(g.range)))}function Fks(s,c,g){if(al(c)||Lh(c)||Al(c))return[];let d=Oon(c),h=Le(zp.findReferenceOrRenameEntries(s,g,s.getSourceFiles(),d,0,{use:zp.FindReferencesUse.References},kks),Dks);return h?Yn(h,Xon,_=>Gks(s,_)):[]}function Zks(s,c){function g(h){let _=QI(h)?h.tag:nI(h)?h.tagName:bp(h)||Al(h)?h:h.expression,S=Qon(s,_);if(S){let R=nnt(_,h.getSourceFile());if(Ki(S))for(let T of S)c.push({declaration:T,range:R});else c.push({declaration:S,range:R})}}function d(h){if(h&&!(h.flags&33554432)){if(pse(h)){if(xa(h))for(let _ of h.members)_.name&&Un(_.name)&&d(_.name.expression);return}switch(h.kind){case 80:case 272:case 273:case 279:case 265:case 266:return;case 176:g(h);return;case 217:case 235:d(h.expression);return;case 261:case 170:d(h.name),d(h.initializer);return;case 214:g(h),d(h.expression),F(h.arguments,d);return;case 215:g(h),d(h.expression),F(h.arguments,d);return;case 216:g(h),d(h.tag),d(h.template);return;case 287:case 286:g(h),d(h.tagName),d(h.attributes);return;case 171:g(h),d(h.expression);return;case 212:case 213:g(h),Lu(h,d);break;case 239:d(h.expression);return}kw(h)||Lu(h,d)}}return d}function Lks(s,c){F(s.statements,c)}function Vks(s,c){!Ga(s,128)&&s.body&&vN(s.body)&&F(s.body.statements,c)}function Wks(s,c,g){let d=Hon(s,c);d&&(F(d.parameters,g),g(d.body))}function Oks(s,c){c(s.body)}function Pks(s,c){F(s.modifiers,c);let g=JL(s);g&&c(g.expression);for(let d of s.members)MB(d)&&F(d.modifiers,c),pi(d)?c(d.initializer):Tc(d)&&d.body?(F(d.parameters,c),c(d.body)):Al(d)&&c(d)}function Mks(s,c){let g=[],d=Zks(s,g);switch(c.kind){case 308:Lks(c,d);break;case 268:Vks(c,d);break;case 263:case 219:case 220:case 175:case 178:case 179:Wks(s.getTypeChecker(),c,d);break;case 264:case 232:Pks(c,d);break;case 176:Oks(c,d);break;default:pe.assertNever(c)}return g}function Hks(s,c){return{to:s,fromSpans:c}}function Yks(s,c){return Hks(MYt(s,c[0].declaration),lt(c,g=>a9(g.range)))}function Qks(s,c){return c.flags&33554432||Il(c)?[]:Yn(Mks(s,c),Xon,g=>Yks(s,g))}var HYt={};o(HYt,{v2020:()=>Jon});var Jon={};o(Jon,{TokenEncodingConsts:()=>_on,TokenModifier:()=>bon,TokenType:()=>yon,getEncodedSemanticClassifications:()=>ZYt,getSemanticClassifications:()=>Eon});var F0={};o(F0,{PreserveOptionalFlags:()=>cgn,addNewNodeForMemberSymbol:()=>lgn,codeFixAll:()=>Jd,createCodeFixAction:()=>gg,createCodeFixActionMaybeFixAll:()=>XYt,createCodeFixActionWithoutFixAll:()=>uR,createCombinedCodeActions:()=>nq,createFileTextChanges:()=>Uon,createImportAdder:()=>kQ,createImportSpecifierResolver:()=>eGs,createMissingMemberNodes:()=>dXt,createSignatureDeclarationFromCallExpression:()=>pXt,createSignatureDeclarationFromSignature:()=>Kit,createStubbedBody:()=>lOe,eachDiagnostic:()=>iq,findAncestorMatchingSpan:()=>yXt,generateAccessorFromProperty:()=>hgn,getAccessorConvertiblePropertyAtPosition:()=>_gn,getAllFixes:()=>Kks,getFixes:()=>Uks,getImportCompletionAction:()=>tGs,getImportKind:()=>Git,getJSDocTypedefNodes:()=>qxs,getNoopSymbolTrackerWithResolver:()=>Ise,getPromoteTypeOnlyCompletionAction:()=>rGs,getSupportedErrorCodes:()=>Xks,importFixName:()=>Icn,importSymbols:()=>UU,parameterShouldGetTypeFromJSDoc:()=>van,registerCodeFix:()=>Gg,setJsonCompilerOptionValue:()=>CXt,setJsonCompilerOptionValues:()=>mXt,tryGetAutoImportableReferenceFromTypeNode:()=>xQ,typeNodeToAutoImportableTypeNode:()=>fXt,typePredicateToAutoImportableTypeNode:()=>Agn,typeToAutoImportableTypeNode:()=>jit,typeToMinimizedReferenceType:()=>ggn});var YYt=gl(),QYt=new Map;function uR(s,c,g){return JYt(s,wQ(g),c,void 0,void 0)}function gg(s,c,g,d,h,_){return JYt(s,wQ(g),c,d,wQ(h),_)}function XYt(s,c,g,d,h,_){return JYt(s,wQ(g),c,d,h&&wQ(h),_)}function JYt(s,c,g,d,h,_){return{fixName:s,description:c,changes:g,fixId:d,fixAllDescription:h,commands:_?[_]:void 0}}function Gg(s){for(let c of s.errorCodes)UYt=void 0,YYt.add(String(c),s);if(s.fixIds)for(let c of s.fixIds)pe.assert(!QYt.has(c)),QYt.set(c,s)}var UYt;function Xks(){return UYt??(UYt=Do(YYt.keys()))}function Jks(s,c){let{errorCodes:g}=s,d=0;for(let _ of c)if(k(g,_.code)&&d++,d>1)break;let h=d<2;return({fixId:_,fixAllDescription:S,...R})=>h?R:{...R,fixId:_,fixAllDescription:S}}function Uks(s){let c=Kon(s),g=YYt.get(String(s.errorCode));return jt(g,d=>lt(d.getCodeActions(s),Jks(d,c)))}function Kks(s){return QYt.get(Ma(s.fixId,Xs)).getAllCodeActions(s)}function nq(s,c){return{changes:s,commands:c}}function Uon(s,c){return{fileName:s,textChanges:c}}function Jd(s,c,g){let d=[],h=xo.ChangeTracker.with(s,_=>iq(s,c,S=>g(_,S,d)));return nq(h,d.length===0?void 0:d)}function iq(s,c,g){for(let d of Kon(s))k(c,d.code)&&g(d)}function Kon({program:s,sourceFile:c,cancellationToken:g}){let d=[...s.getSemanticDiagnostics(c,g),...s.getSyntacticDiagnostics(c,g),...Xnt(c,s,g)];return Wy(s.getCompilerOptions())&&d.push(...s.getDeclarationDiagnostics(c,g)),d}var KYt="addConvertToUnknownForNonOverlappingTypes",jon=[Z.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.code];Gg({errorCodes:jon,getCodeActions:function(c){let g=qon(c.sourceFile,c.span.start);if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>zon(h,c.sourceFile,g));return[gg(KYt,d,Z.Add_unknown_conversion_for_non_overlapping_types,KYt,Z.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[KYt],getAllCodeActions:s=>Jd(s,jon,(c,g)=>{let d=qon(g.file,g.start);d&&zon(c,g.file,d)})});function zon(s,c,g){let d=Xd(g)?me.createAsExpression(g.expression,me.createKeywordTypeNode(159)):me.createTypeAssertion(me.createKeywordTypeNode(159),g.expression);s.replaceNode(c,g.expression,d)}function qon(s,c){if(!wo(s))return ji(Jc(s,c),g=>Xd(g)||WF(g))}Gg({errorCodes:[Z.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.code,Z.await_using_statements_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.code,Z.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.code],getCodeActions:function(c){let{sourceFile:g}=c,d=xo.ChangeTracker.with(c,h=>{let _=me.createExportDeclaration(void 0,!1,me.createNamedExports([]),void 0);h.insertNodeAtEndOfScope(g,g,_)});return[uR("addEmptyExportDeclaration",d,Z.Add_export_to_make_this_file_into_a_module)]}});var jYt="addMissingAsync",$on=[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_comparable_to_type_1.code];Gg({fixIds:[jYt],errorCodes:$on,getCodeActions:function(c){let{sourceFile:g,errorCode:d,cancellationToken:h,program:_,span:S}=c,R=de(_.getTypeChecker().getDiagnostics(g,h),zks(S,d)),T=R&&R.relatedInformation&&de(R.relatedInformation,M=>M.code===Z.Did_you_mean_to_mark_this_function_as_async.code),O=tan(g,T);return O?[ean(c,O,M=>xo.ChangeTracker.with(c,M))]:void 0},getAllCodeActions:s=>{let{sourceFile:c}=s,g=new Set;return Jd(s,$on,(d,h)=>{let _=h.relatedInformation&&de(h.relatedInformation,T=>T.code===Z.Did_you_mean_to_mark_this_function_as_async.code),S=tan(c,_);return S?ean(s,S,T=>(T(d),[]),g):void 0})}});function ean(s,c,g,d){let h=g(_=>jks(_,s.sourceFile,c,d));return gg(jYt,h,Z.Add_async_modifier_to_containing_function,jYt,Z.Add_all_missing_async_modifiers)}function jks(s,c,g,d){if(d&&d.has(id(g)))return;d?.add(id(g));let h=me.replaceModifiers(KA(g,!0),me.createNodeArray(me.createModifiersFromModifierFlags(Fx(g)|1024)));s.replaceNode(c,g,h)}function tan(s,c){if(!c)return;let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":(uA(h)||gu(h)||jA(h)||ah(h))&&ose(c,Hy(h,s)))}function zks(s,c){return({start:g,length:d,relatedInformation:h,code:_})=>ws(g)&&ws(d)&&ose({start:g,length:d},s)&&_===c&&!!h&&zt(h,S=>S.code===Z.Did_you_mean_to_mark_this_function_as_async.code)}var zYt="addMissingAwait",ran=Z.Property_0_does_not_exist_on_type_1.code,nan=[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],qYt=[Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.Operator_0_cannot_be_applied_to_type_1.code,Z.Operator_0_cannot_be_applied_to_types_1_and_2.code,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,Z.This_condition_will_always_return_true_since_this_0_is_always_defined.code,Z.Type_0_is_not_an_array_type.code,Z.Type_0_is_not_an_array_type_or_a_string_type.code,Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,ran,...nan];Gg({fixIds:[zYt],errorCodes:qYt,getCodeActions:function(c){let{sourceFile:g,errorCode:d,span:h,cancellationToken:_,program:S}=c,R=ian(g,d,h,_,S);if(!R)return;let T=c.program.getTypeChecker(),O=V=>xo.ChangeTracker.with(c,V);return Hr([san(c,R,d,T,O),oan(c,R,d,T,O)])},getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=s.program.getTypeChecker(),_=new Set;return Jd(s,qYt,(S,R)=>{let T=ian(c,R.code,R,d,g);if(!T)return;let O=V=>(V(S),[]);return san(s,T,R.code,h,O,_)||oan(s,T,R.code,h,O,_)})}});function ian(s,c,g,d,h){let _=Tnt(s,g);return _&&qks(s,c,g,d,h)&&aan(_)?_:void 0}function san(s,c,g,d,h,_){let{sourceFile:S,program:R,cancellationToken:T}=s,O=$ks(c,S,T,R,d);if(O){let V=h(M=>{F(O.initializers,({expression:ee})=>$Yt(M,g,S,d,ee,_)),_&&O.needsSecondPassForFixAll&&$Yt(M,g,S,d,c,_)});return uR("addMissingAwaitToInitializer",V,O.initializers.length===1?[Z.Add_await_to_initializer_for_0,O.initializers[0].declarationSymbol.name]:Z.Add_await_to_initializers)}}function oan(s,c,g,d,h,_){let S=h(R=>$Yt(R,g,s.sourceFile,d,c,_));return gg(zYt,S,Z.Add_await,zYt,Z.Fix_all_expressions_possibly_missing_await)}function qks(s,c,g,d,h){let S=h.getTypeChecker().getDiagnostics(s,d);return zt(S,({start:R,length:T,relatedInformation:O,code:V})=>ws(R)&&ws(T)&&ose({start:R,length:T},g)&&V===c&&!!O&&zt(O,M=>M.code===Z.Did_you_forget_to_use_await.code))}function $ks(s,c,g,d,h){let _=exs(s,h);if(!_)return;let S=_.isCompleteFix,R;for(let T of _.identifiers){let O=h.getSymbolAtLocation(T);if(!O)continue;let V=Gs(O.valueDeclaration,nc),M=V&&Gs(V.name,Ir),ee=UL(V,244);if(!V||!ee||V.type||!V.initializer||ee.getSourceFile()!==c||Ga(ee,32)||!M||!aan(V.initializer)){S=!1;continue}let re=d.getSemanticDiagnostics(c,g);if(zp.Core.eachSymbolReferenceInFile(M,h,c,Ie=>T!==Ie&&!txs(Ie,re,c,h))){S=!1;continue}(R||(R=[])).push({expression:V.initializer,declarationSymbol:O})}return R&&{initializers:R,needsSecondPassForFixAll:!S}}function exs(s,c){if(jo(s.parent)&&Ir(s.parent.expression))return{identifiers:[s.parent.expression],isCompleteFix:!0};if(Ir(s))return{identifiers:[s],isCompleteFix:!0};if(po(s)){let g,d=!0;for(let h of[s.left,s.right]){let _=c.getTypeAtLocation(h);if(c.getPromisedTypeOfPromise(_)){if(!Ir(h)){d=!1;continue}(g||(g=[])).push(h)}}return g&&{identifiers:g,isCompleteFix:d}}}function txs(s,c,g,d){let h=jo(s.parent)?s.parent.name:po(s.parent)?s.parent:s,_=de(c,S=>S.start===h.getStart(g)&&S.start+S.length===h.getEnd());return _&&k(qYt,_.code)||d.getTypeAtLocation(h).flags&1}function aan(s){return s.flags&65536||!!ji(s,c=>c.parent&&uA(c.parent)&&c.parent.body===c||eg(c)&&(c.parent.kind===263||c.parent.kind===219||c.parent.kind===220||c.parent.kind===175))}function $Yt(s,c,g,d,h,_){if(BEe(h.parent)&&!h.parent.awaitModifier){let S=d.getTypeAtLocation(h),R=d.getAnyAsyncIterableType();if(R&&d.isTypeAssignableTo(S,R)){let T=h.parent;s.replaceNode(g,T,me.updateForOfStatement(T,me.createToken(135),T.initializer,T.expression,T.statement));return}}if(po(h))for(let S of[h.left,h.right]){if(_&&Ir(S)){let O=d.getSymbolAtLocation(S);if(O&&_.has(xg(O)))continue}let R=d.getTypeAtLocation(S),T=d.getPromisedTypeOfPromise(R)?me.createAwaitExpression(S):S;s.replaceNode(g,S,T)}else if(c===ran&&jo(h.parent)){if(_&&Ir(h.parent.expression)){let S=d.getSymbolAtLocation(h.parent.expression);if(S&&_.has(xg(S)))return}s.replaceNode(g,h.parent.expression,me.createParenthesizedExpression(me.createAwaitExpression(h.parent.expression))),can(s,h.parent.expression,g)}else if(k(nan,c)&&gv(h.parent)){if(_&&Ir(h)){let S=d.getSymbolAtLocation(h);if(S&&_.has(xg(S)))return}s.replaceNode(g,h,me.createParenthesizedExpression(me.createAwaitExpression(h))),can(s,h,g)}else{if(_&&nc(h.parent)&&Ir(h.parent.name)){let S=d.getSymbolAtLocation(h.parent.name);if(S&&!Ar(_,xg(S)))return}s.replaceNode(g,h,me.createAwaitExpression(h))}}function can(s,c,g){let d=Vm(c.pos,g);d&&BWe(d.end,d.parent,g)&&s.insertText(g,c.getStart(g),";")}var eQt="addMissingConst",lan=[Z.Cannot_find_name_0.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];Gg({errorCodes:lan,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>uan(d,c.sourceFile,c.span.start,c.program));if(g.length>0)return[gg(eQt,g,Z.Add_const_to_unresolved_variable,eQt,Z.Add_const_to_all_unresolved_variables)]},fixIds:[eQt],getAllCodeActions:s=>{let c=new Set;return Jd(s,lan,(g,d)=>uan(g,d.file,d.start,s.program,c))}});function uan(s,c,g,d,h){let _=Jc(c,g),S=ji(_,O=>VL(O.parent)?O.parent.initializer===O:rxs(O)?!1:"quit");if(S)return Sit(s,S,c,h);let R=_.parent;if(po(R)&&R.operatorToken.kind===64&&OC(R.parent))return Sit(s,_,c,h);if(YI(R)){let O=d.getTypeChecker();return ue(R.elements,V=>nxs(V,O))?Sit(s,R,c,h):void 0}let T=ji(_,O=>OC(O.parent)?!0:ixs(O)?!1:"quit");if(T){let O=d.getTypeChecker();return gan(T,O)?Sit(s,T,c,h):void 0}}function Sit(s,c,g,d){(!d||Ar(d,c))&&s.insertModifierBefore(g,87,c)}function rxs(s){switch(s.kind){case 80:case 210:case 211:case 304:case 305:return!0;default:return!1}}function nxs(s,c){let g=Ir(s)?s:zm(s,!0)&&Ir(s.left)?s.left:void 0;return!!g&&!c.getSymbolAtLocation(g)}function ixs(s){switch(s.kind){case 80:case 227:case 28:return!0;default:return!1}}function gan(s,c){return po(s)?s.operatorToken.kind===28?ue([s.left,s.right],g=>gan(g,c)):s.operatorToken.kind===64&&Ir(s.left)&&!c.getSymbolAtLocation(s.left):!1}var tQt="addMissingDeclareProperty",Aan=[Z.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.code];Gg({errorCodes:Aan,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>dan(d,c.sourceFile,c.span.start));if(g.length>0)return[gg(tQt,g,Z.Prefix_with_declare,tQt,Z.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[tQt],getAllCodeActions:s=>{let c=new Set;return Jd(s,Aan,(g,d)=>dan(g,d.file,d.start,c))}});function dan(s,c,g,d){let h=Jc(c,g);if(!Ir(h))return;let _=h.parent;_.kind===173&&(!d||Ar(d,_))&&s.insertModifierBefore(c,138,_)}var rQt="addMissingInvocationForDecorator",pan=[Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];Gg({errorCodes:pan,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>fan(d,c.sourceFile,c.span.start));return[gg(rQt,g,Z.Call_decorator_expression,rQt,Z.Add_to_all_uncalled_decorators)]},fixIds:[rQt],getAllCodeActions:s=>Jd(s,pan,(c,g)=>fan(c,g.file,g.start))});function fan(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createCallExpression(h.expression,void 0,void 0);s.replaceNode(c,h.expression,_)}var nQt="addMissingResolutionModeImportAttribute",Ian=[Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code,Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code];Gg({errorCodes:Ian,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>han(d,c.sourceFile,c.span.start,c.program,c.host,c.preferences));return[gg(nQt,g,Z.Add_resolution_mode_import_attribute,nQt,Z.Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it)]},fixIds:[nQt],getAllCodeActions:s=>Jd(s,Ian,(c,g)=>han(c,g.file,g.start,s.program,s.host,s.preferences))});function han(s,c,g,d,h,_){var S,R,T;let O=Jc(c,g),V=ji(O,Qp(Yf,qm));pe.assert(!!V,"Expected position to be owned by an ImportDeclaration or ImportType.");let M=E1(c,_)===0,ee=JY(V),re=!ee||((S=WU(ee.text,c.fileName,d.getCompilerOptions(),h,d.getModuleResolutionCache(),void 0,99).resolvedModule)==null?void 0:S.resolvedFileName)===((T=(R=d.getResolvedModuleFromModuleSpecifier(ee,c))==null?void 0:R.resolvedModule)==null?void 0:T.resolvedFileName),ge=V.attributes?me.updateImportAttributes(V.attributes,me.createNodeArray([...V.attributes.elements,me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))],V.attributes.elements.hasTrailingComma),V.attributes.multiLine):me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))]));V.kind===273?s.replaceNode(c,V,me.updateImportDeclaration(V,V.modifiers,V.importClause,V.moduleSpecifier,ge)):s.replaceNode(c,V,me.updateImportTypeNode(V,V.argument,ge,V.qualifier,V.typeArguments))}var iQt="addNameToNamelessParameter",man=[Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];Gg({errorCodes:man,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Can(d,c.sourceFile,c.span.start));return[gg(iQt,g,Z.Add_parameter_name,iQt,Z.Add_names_to_all_parameters_without_names)]},fixIds:[iQt],getAllCodeActions:s=>Jd(s,man,(c,g)=>Can(c,g.file,g.start))});function Can(s,c,g){let d=Jc(c,g),h=d.parent;if(!Si(h))return pe.fail("Tried to add a parameter name to a non-parameter: "+pe.formatSyntaxKind(d.kind));let _=h.parent.parameters.indexOf(h);pe.assert(!h.type,"Tried to add a parameter name to a parameter that already had one."),pe.assert(_>-1,"Parameter not found in parent parameter list.");let S=h.name.getEnd(),R=me.createTypeReferenceNode(h.name,void 0),T=_an(c,h);for(;T;)R=me.createArrayTypeNode(R),S=T.getEnd(),T=_an(c,T);let O=me.createParameterDeclaration(h.modifiers,h.dotDotDotToken,"arg"+_,h.questionToken,h.dotDotDotToken&&!VF(R)?me.createArrayTypeNode(R):R,h.initializer);s.replaceRange(c,Zy(h.getStart(c),S),O)}function _an(s,c){let g=BQ(c.name,c.parent,s);if(g&&g.kind===23&&h2(g.parent)&&Si(g.parent.parent))return g.parent.parent}var yan="addOptionalPropertyUndefined",sxs=[Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.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.code];Gg({errorCodes:sxs,getCodeActions(s){let c=s.program.getTypeChecker(),g=oxs(s.sourceFile,s.span,c);if(!g.length)return;let d=xo.ChangeTracker.with(s,h=>cxs(h,g));return[uR(yan,d,Z.Add_undefined_to_optional_property_type)]},fixIds:[yan]});function oxs(s,c,g){var d,h;let _=ban(Tnt(s,c),g);if(!_)return E;let{source:S,target:R}=_,T=axs(S,R,g)?g.getTypeAtLocation(R.expression):g.getTypeAtLocation(R);return(h=(d=T.symbol)==null?void 0:d.declarations)!=null&&h.some(O=>ms(O).fileName.match(/\.d\.ts$/))?E:g.getExactOptionalProperties(T)}function axs(s,c,g){return jo(c)&&!!g.getExactOptionalProperties(g.getTypeAtLocation(c.expression)).length&&g.getTypeAtLocation(s)===g.getUndefinedType()}function ban(s,c){var g;if(s){if(po(s.parent)&&s.parent.operatorToken.kind===64)return{source:s.parent.right,target:s.parent.left};if(nc(s.parent)&&s.parent.initializer)return{source:s.parent.initializer,target:s.parent.name};if(Ll(s.parent)){let d=c.getSymbolAtLocation(s.parent.expression);if(!d?.valueDeclaration||!hW(d.valueDeclaration.kind)||!un(s))return;let h=s.parent.arguments.indexOf(s);if(h===-1)return;let _=d.valueDeclaration.parameters[h].name;if(Ir(_))return{source:s,target:_}}else if(Cm(s.parent)&&Ir(s.parent.name)||l0(s.parent)){let d=ban(s.parent.parent,c);if(!d)return;let h=c.getPropertyOfType(c.getTypeAtLocation(d.target),s.parent.name.text),_=(g=h?.declarations)==null?void 0:g[0];return _?{source:Cm(s.parent)?s.parent.initializer:s.parent.name,target:_}:void 0}}else return}function cxs(s,c){for(let g of c){let d=g.valueDeclaration;if(d&&(ss(d)||pi(d))&&d.type){let h=me.createUnionTypeNode([...d.type.kind===193?d.type.types:[d.type],me.createTypeReferenceNode("undefined")]);s.replaceNode(d.getSourceFile(),d.type,h)}}}var sQt="annotateWithTypeFromJSDoc",Ean=[Z.JSDoc_types_may_be_moved_to_TypeScript_types.code];Gg({errorCodes:Ean,getCodeActions(s){let c=San(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,d=>wan(d,s.sourceFile,c));return[gg(sQt,g,Z.Annotate_with_type_from_JSDoc,sQt,Z.Annotate_everything_with_types_from_JSDoc)]},fixIds:[sQt],getAllCodeActions:s=>Jd(s,Ean,(c,g)=>{let d=San(g.file,g.start);d&&wan(c,g.file,d)})});function San(s,c){let g=Jc(s,c);return Gs(Si(g.parent)?g.parent.parent:g.parent,van)}function van(s){return lxs(s)&&Ban(s)}function Ban(s){return Gd(s)?s.parameters.some(Ban)||!s.type&&!!vJ(s):!s.type&&!!sN(s)}function wan(s,c,g){if(Gd(g)&&(vJ(g)||g.parameters.some(d=>!!sN(d)))){if(!g.typeParameters){let h=wAe(g);h.length&&s.insertTypeParameters(c,g,h)}let d=uA(g)&&!ep(g,21,c);d&&s.insertNodeBefore(c,ma(g.parameters),me.createToken(21));for(let h of g.parameters)if(!h.type){let _=sN(h);_&&s.tryInsertTypeAnnotation(c,h,Mr(_,DQ,uc))}if(d&&s.insertNodeAfter(c,Ei(g.parameters),me.createToken(22)),!g.type){let h=vJ(g);h&&s.tryInsertTypeAnnotation(c,g,Mr(h,DQ,uc))}}else{let d=pe.checkDefined(sN(g),"A JSDocType for this declaration should exist");pe.assert(!g.type,"The JSDocType decl should have a type"),s.tryInsertTypeAnnotation(c,g,Mr(d,DQ,uc))}}function lxs(s){return Gd(s)||s.kind===261||s.kind===172||s.kind===173}function DQ(s){switch(s.kind){case 313:case 314:return me.createTypeReferenceNode("any",E);case 317:return gxs(s);case 316:return DQ(s.type);case 315:return Axs(s);case 319:return dxs(s);case 318:return pxs(s);case 184:return Ixs(s);case 323:return uxs(s);default:let c=_s(s,DQ,void 0);return ti(c,1),c}}function uxs(s){let c=me.createTypeLiteralNode(lt(s.jsDocPropertyTags,g=>me.createPropertySignature(void 0,Ir(g.name)?g.name:g.name.right,uie(g)?me.createToken(58):void 0,g.typeExpression&&Mr(g.typeExpression.type,DQ,uc)||me.createKeywordTypeNode(133))));return ti(c,1),c}function gxs(s){return me.createUnionTypeNode([Mr(s.type,DQ,uc),me.createTypeReferenceNode("undefined",E)])}function Axs(s){return me.createUnionTypeNode([Mr(s.type,DQ,uc),me.createTypeReferenceNode("null",E)])}function dxs(s){return me.createArrayTypeNode(Mr(s.type,DQ,uc))}function pxs(s){return me.createFunctionTypeNode(E,s.parameters.map(fxs),s.type??me.createKeywordTypeNode(133))}function fxs(s){let c=s.parent.parameters.indexOf(s),g=s.type.kind===319&&c===s.parent.parameters.length-1,d=s.name||(g?"rest":"arg"+c),h=g?me.createToken(26):s.dotDotDotToken;return me.createParameterDeclaration(s.modifiers,h,d,s.questionToken,Mr(s.type,DQ,uc),s.initializer)}function Ixs(s){let c=s.typeName,g=s.typeArguments;if(Ir(s.typeName)){if(gAe(s))return hxs(s);let d=s.typeName.text;switch(s.typeName.text){case"String":case"Boolean":case"Object":case"Number":d=d.toLowerCase();break;case"array":case"date":case"promise":d=d[0].toUpperCase()+d.slice(1);break}c=me.createIdentifier(d),(d==="Array"||d==="Promise")&&!s.typeArguments?g=me.createNodeArray([me.createTypeReferenceNode("any",E)]):g=Os(s.typeArguments,DQ,uc)}return me.createTypeReferenceNode(c,g)}function hxs(s){let c=me.createParameterDeclaration(void 0,void 0,s.typeArguments[0].kind===150?"n":"s",void 0,me.createTypeReferenceNode(s.typeArguments[0].kind===150?"number":"string",[]),void 0),g=me.createTypeLiteralNode([me.createIndexSignature(void 0,[c],s.typeArguments[1])]);return ti(g,1),g}var oQt="convertFunctionToEs6Class",Tan=[Z.This_constructor_function_may_be_converted_to_a_class_declaration.code];Gg({errorCodes:Tan,getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>Ran(g,s.sourceFile,s.span.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()));return[gg(oQt,c,Z.Convert_function_to_an_ES2015_class,oQt,Z.Convert_all_constructor_functions_to_classes)]},fixIds:[oQt],getAllCodeActions:s=>Jd(s,Tan,(c,g)=>Ran(c,g.file,g.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()))});function Ran(s,c,g,d,h,_){let S=d.getSymbolAtLocation(Jc(c,g));if(!S||!S.valueDeclaration||!(S.flags&19))return;let R=S.valueDeclaration;if(ah(R)||jA(R))s.replaceNode(c,R,V(R));else if(nc(R)){let M=O(R);if(!M)return;let ee=R.parent.parent;A_(R.parent)&&R.parent.declarations.length>1?(s.delete(c,R),s.insertNodeAfter(c,ee,M)):s.replaceNode(c,ee,M)}function T(M){let ee=[];return M.exports&&M.exports.forEach(Ie=>{if(Ie.name==="prototype"&&Ie.declarations){let _e=Ie.declarations[0];if(Ie.declarations.length===1&&jo(_e)&&po(_e.parent)&&_e.parent.operatorToken.kind===64&&ag(_e.parent.right)){let Ee=_e.parent.right;ge(Ee.symbol,void 0,ee)}}else ge(Ie,[me.createToken(126)],ee)}),M.members&&M.members.forEach((Ie,_e)=>{var Ee,Ne,Te,Ze;if(_e==="constructor"&&Ie.valueDeclaration){let Pe=(Ze=(Te=(Ne=(Ee=M.exports)==null?void 0:Ee.get("prototype"))==null?void 0:Ne.declarations)==null?void 0:Te[0])==null?void 0:Ze.parent;Pe&&po(Pe)&&ag(Pe.right)&&zt(Pe.right.properties,Bit)||s.delete(c,Ie.valueDeclaration.parent);return}ge(Ie,void 0,ee)}),ee;function re(Ie,_e){return bp(Ie)?jo(Ie)&&Bit(Ie)?!0:Eu(_e):ue(Ie.properties,Ee=>!!(gu(Ee)||TJ(Ee)||Cm(Ee)&&jA(Ee.initializer)&&Ee.name||Bit(Ee)))}function ge(Ie,_e,Ee){if(!(Ie.flags&8192)&&!(Ie.flags&4096))return;let Ne=Ie.valueDeclaration,Te=Ne.parent,Ze=Te.right;if(!re(Ne,Ze)||zt(Ee,Tt=>{let at=fl(Tt);return!!(at&&Ir(at)&&Vo(at)===of(Ie))}))return;let Pe=Te.parent&&Te.parent.kind===245?Te.parent:Te;if(s.delete(c,Pe),!Ze){Ee.push(me.createPropertyDeclaration(_e,Ie.name,void 0,void 0,void 0));return}if(bp(Ne)&&(jA(Ze)||uA(Ze))){let Tt=E1(c,h),at=mxs(Ne,_,Tt);at&&Ke(Ee,Ze,at);return}else if(ag(Ze)){F(Ze.properties,Tt=>{(gu(Tt)||TJ(Tt))&&Ee.push(Tt),Cm(Tt)&&jA(Tt.initializer)&&Ke(Ee,Tt.initializer,Tt.name),Bit(Tt)});return}else{if(s0(c)||!jo(Ne))return;let Tt=me.createPropertyDeclaration(_e,Ne.name,void 0,void 0,Ze);cse(Te.parent,Tt,c),Ee.push(Tt);return}function Ke(Tt,at,Qe){return jA(at)?et(Tt,at,Qe):Ye(Tt,at,Qe)}function et(Tt,at,Qe){let Ct=Nn(_e,vit(at,134)),mt=me.createMethodDeclaration(Ct,void 0,Qe,void 0,void 0,at.parameters,void 0,at.body);cse(Te,mt,c),Tt.push(mt)}function Ye(Tt,at,Qe){let Ct=at.body,mt;Ct.kind===242?mt=Ct:mt=me.createBlock([me.createReturnStatement(Ct)]);let yt=Nn(_e,vit(at,134)),Rt=me.createMethodDeclaration(yt,void 0,Qe,void 0,void 0,at.parameters,void 0,mt);cse(Te,Rt,c),Tt.push(Rt)}}}function O(M){let ee=M.initializer;if(!ee||!jA(ee)||!Ir(M.name))return;let re=T(M.symbol);ee.body&&re.unshift(me.createConstructorDeclaration(void 0,ee.parameters,ee.body));let ge=vit(M.parent.parent,95);return me.createClassDeclaration(ge,M.name,void 0,void 0,re)}function V(M){let ee=T(S);M.body&&ee.unshift(me.createConstructorDeclaration(void 0,M.parameters,M.body));let re=vit(M,95);return me.createClassDeclaration(re,M.name,void 0,void 0,ee)}}function vit(s,c){return MB(s)?Le(s.modifiers,g=>g.kind===c):void 0}function Bit(s){return s.name?!!(Ir(s.name)&&s.name.text==="constructor"):!1}function mxs(s,c,g){if(jo(s))return s.name;let d=s.argumentExpression;if(yC(d))return d;if(CA(d))return qh(d.text,Hg(c))?me.createIdentifier(d.text):MW(d)?me.createStringLiteral(d.text,g===0):d}var aQt="convertToAsyncFunction",Nan=[Z.This_may_be_converted_to_an_async_function.code],wit=!0;Gg({errorCodes:Nan,getCodeActions(s){wit=!0;let c=xo.ChangeTracker.with(s,g=>Dan(g,s.sourceFile,s.span.start,s.program.getTypeChecker()));return wit?[gg(aQt,c,Z.Convert_to_async_function,aQt,Z.Convert_all_to_async_functions)]:[]},fixIds:[aQt],getAllCodeActions:s=>Jd(s,Nan,(c,g)=>Dan(c,g.file,g.start,s.program.getTypeChecker()))});function Dan(s,c,g,d){let h=Jc(c,g),_;if(Ir(h)&&nc(h.parent)&&h.parent.initializer&&Gd(h.parent.initializer)?_=h.parent.initializer:_=Gs(f1(Jc(c,g)),Knt),!_)return;let S=new Map,R=wo(_),T=_xs(_,d),O=yxs(_,d,S);if(!Jnt(O,d))return;let V=O.body&&eg(O.body)?Cxs(O.body,d):E,M={checker:d,synthNamesMap:S,setOfExpressionsToReturn:T,isInJSFile:R};if(!V.length)return;let ee=Yu(c.text,Iv(_).pos);s.insertModifierAt(c,ee,134,{suffix:" "});for(let re of V)if(Lu(re,function ge(Ie){if(Ll(Ie)){let _e=fse(Ie,Ie,M,!1);if(sq())return!0;s.replaceNodeWithNodes(c,re,_e)}else if(!Eu(Ie)&&(Lu(Ie,ge),sq()))return!0}),sq())return}function Cxs(s,c){let g=[];return wF(s,d=>{OWe(d,c)&&g.push(d)}),g}function _xs(s,c){if(!s.body)return new Set;let g=new Set;return Lu(s.body,function d(h){r2e(h,c,"then")?(g.add(id(h)),F(h.arguments,d)):r2e(h,c,"catch")||r2e(h,c,"finally")?(g.add(id(h)),Lu(h,d)):xan(h,c)?g.add(id(h)):Lu(h,d)}),g}function r2e(s,c,g){if(!Ll(s))return!1;let h=w1e(s,g)&&c.getTypeAtLocation(s);return!!(h&&c.getPromisedTypeOfPromise(h))}function kan(s,c){return(la(s)&4)!==0&&s.target===c}function Tit(s,c,g){if(s.expression.name.escapedText==="finally")return;let d=g.getTypeAtLocation(s.expression.expression);if(kan(d,g.getPromiseType())||kan(d,g.getPromiseLikeType()))if(s.expression.name.escapedText==="then"){if(c===_g(s.arguments,0))return _g(s.typeArguments,0);if(c===_g(s.arguments,1))return _g(s.typeArguments,1)}else return _g(s.typeArguments,0)}function xan(s,c){return un(s)?!!c.getPromisedTypeOfPromise(c.getTypeAtLocation(s)):!1}function yxs(s,c,g){let d=new Map,h=gl();return Lu(s,function _(S){if(!Ir(S)){Lu(S,_);return}let R=c.getSymbolAtLocation(S);if(R){let T=c.getTypeAtLocation(S),O=Wan(T,c),V=xg(R).toString();if(O&&!Si(S.parent)&&!Gd(S.parent)&&!g.has(V)){let M=Nc(O.parameters),ee=M?.valueDeclaration&&Si(M.valueDeclaration)&&Gs(M.valueDeclaration.name,Ir)||me.createUniqueName("result",16),re=Gan(ee,h);g.set(V,re),h.add(ee.text,R)}else if(S.parent&&(Si(S.parent)||nc(S.parent)||mg(S.parent))){let M=S.text,ee=h.get(M);if(ee&&ee.some(re=>re!==R)){let re=Gan(S,h);d.set(V,re.identifier),g.set(V,re),h.add(M,R)}else{let re=KA(S);g.set(V,ype(re)),h.add(M,R)}}}}),Iie(s,!0,_=>{if(mg(_)&&Ir(_.name)&&$m(_.parent)){let S=c.getSymbolAtLocation(_.name),R=S&&d.get(String(xg(S)));if(R&&R.text!==(_.name||_.propertyName).getText())return me.createBindingElement(_.dotDotDotToken,_.propertyName||_.name,R,_.initializer)}else if(Ir(_)){let S=c.getSymbolAtLocation(_),R=S&&d.get(String(xg(S)));if(R)return me.createIdentifier(R.text)}})}function Gan(s,c){let g=(c.get(s.text)||E).length,d=g===0?s:me.createIdentifier(s.text+"_"+g);return ype(d)}function sq(){return!wit}function c5(){return wit=!1,E}function fse(s,c,g,d,h){if(r2e(c,g.checker,"then"))return Sxs(c,_g(c.arguments,0),_g(c.arguments,1),g,d,h);if(r2e(c,g.checker,"catch"))return Lan(c,_g(c.arguments,0),g,d,h);if(r2e(c,g.checker,"finally"))return Exs(c,_g(c.arguments,0),g,d,h);if(jo(c))return fse(s,c.expression,g,d,h);let _=g.checker.getTypeAtLocation(c);return _&&g.checker.getPromisedTypeOfPromise(_)?(pe.assertNode(xd(c).parent,jo),vxs(s,c,g,d,h)):c5()}function Rit({checker:s},c){if(c.kind===106)return!0;if(Ir(c)&&!Gp(c)&&Vo(c)==="undefined"){let g=s.getSymbolAtLocation(c);return!g||s.isUndefinedSymbol(g)}return!1}function bxs(s){let c=me.createUniqueName(s.identifier.text,16);return ype(c)}function Fan(s,c,g){let d;return g&&!i2e(s,c)&&(n2e(g)?(d=g,c.synthNamesMap.forEach((h,_)=>{if(h.identifier.text===g.identifier.text){let S=bxs(g);c.synthNamesMap.set(_,S)}})):d=ype(me.createUniqueName("result",16),g.types),gQt(d)),d}function Zan(s,c,g,d,h){let _=[],S;if(d&&!i2e(s,c)){S=KA(gQt(d));let R=d.types,T=c.checker.getUnionType(R,2),O=c.isInJSFile?void 0:c.checker.typeToTypeNode(T,void 0,void 0),V=[me.createVariableDeclaration(S,void 0,O)],M=me.createVariableStatement(void 0,me.createVariableDeclarationList(V,1));_.push(M)}return _.push(g),h&&S&&Txs(h)&&_.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(KA(Han(h)),void 0,void 0,S)],2))),_}function Exs(s,c,g,d,h){if(!c||Rit(g,c))return fse(s,s.expression.expression,g,d,h);let _=Fan(s,g,h),S=fse(s,s.expression.expression,g,!0,_);if(sq())return c5();let R=lQt(c,d,void 0,void 0,s,g);if(sq())return c5();let T=me.createBlock(S),O=me.createBlock(R),V=me.createTryStatement(T,void 0,O);return Zan(s,g,V,_,h)}function Lan(s,c,g,d,h){if(!c||Rit(g,c))return fse(s,s.expression.expression,g,d,h);let _=Pan(c,g),S=Fan(s,g,h),R=fse(s,s.expression.expression,g,!0,S);if(sq())return c5();let T=lQt(c,d,S,_,s,g);if(sq())return c5();let O=me.createBlock(R),V=me.createCatchClause(_&&KA(nOe(_)),me.createBlock(T)),M=me.createTryStatement(O,V,void 0);return Zan(s,g,M,S,h)}function Sxs(s,c,g,d,h,_){if(!c||Rit(d,c))return Lan(s,g,d,h,_);if(g&&!Rit(d,g))return c5();let S=Pan(c,d),R=fse(s.expression.expression,s.expression.expression,d,!0,S);if(sq())return c5();let T=lQt(c,h,_,S,s,d);return sq()?c5():Nn(R,T)}function vxs(s,c,g,d,h){if(i2e(s,g)){let _=KA(c);return d&&(_=me.createAwaitExpression(_)),[me.createReturnStatement(_)]}return Nit(h,me.createAwaitExpression(c),void 0)}function Nit(s,c,g){return!s||Man(s)?[me.createExpressionStatement(c)]:n2e(s)&&s.hasBeenDeclared?[me.createExpressionStatement(me.createAssignment(KA(uQt(s)),c))]:[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(KA(nOe(s)),void 0,g,c)],2))]}function cQt(s,c){if(c&&s){let g=me.createUniqueName("result",16);return[...Nit(ype(g),s,c),me.createReturnStatement(g)]}return[me.createReturnStatement(s)]}function lQt(s,c,g,d,h,_){var S;switch(s.kind){case 106:break;case 212:case 80:if(!d)break;let R=me.createCallExpression(KA(s),void 0,n2e(d)?[uQt(d)]:[]);if(i2e(h,_))return cQt(R,Tit(h,s,_.checker));let T=_.checker.getTypeAtLocation(s),O=_.checker.getSignaturesOfType(T,0);if(!O.length)return c5();let V=O[0].getReturnType(),M=Nit(g,me.createAwaitExpression(R),Tit(h,s,_.checker));return g&&g.types.push(_.checker.getAwaitedType(V)||V),M;case 219:case 220:{let ee=s.body,re=(S=Wan(_.checker.getTypeAtLocation(s),_.checker))==null?void 0:S.getReturnType();if(eg(ee)){let ge=[],Ie=!1;for(let _e of ee.statements)if(C2(_e))if(Ie=!0,OWe(_e,_.checker))ge=ge.concat(Oan(_,_e,c,g));else{let Ee=re&&_e.expression?Van(_.checker,re,_e.expression):_e.expression;ge.push(...cQt(Ee,Tit(h,s,_.checker)))}else{if(c&&wF(_e,Nf))return c5();ge.push(_e)}return i2e(h,_)?ge.map(_e=>KA(_e)):Bxs(ge,g,_,Ie)}else{let ge=Unt(ee,_.checker)?Oan(_,me.createReturnStatement(ee),c,g):E;if(ge.length>0)return ge;if(re){let Ie=Van(_.checker,re,ee);if(i2e(h,_))return cQt(Ie,Tit(h,s,_.checker));{let _e=Nit(g,Ie,void 0);return g&&g.types.push(_.checker.getAwaitedType(re)||re),_e}}else return c5()}}default:return c5()}return E}function Van(s,c,g){let d=KA(g);return s.getPromisedTypeOfPromise(c)?me.createAwaitExpression(d):d}function Wan(s,c){let g=c.getSignaturesOfType(s,0);return li(g)}function Bxs(s,c,g,d){let h=[];for(let _ of s)if(C2(_)){if(_.expression){let S=xan(_.expression,g.checker)?me.createAwaitExpression(_.expression):_.expression;c===void 0?h.push(me.createExpressionStatement(S)):n2e(c)&&c.hasBeenDeclared?h.push(me.createExpressionStatement(me.createAssignment(uQt(c),S))):h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(nOe(c),void 0,void 0,S)],2)))}}else h.push(KA(_));return!d&&c!==void 0&&h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(nOe(c),void 0,void 0,me.createIdentifier("undefined"))],2))),h}function Oan(s,c,g,d){let h=[];return Lu(c,function _(S){if(Ll(S)){let R=fse(S,S,s,g,d);if(h=h.concat(R),h.length>0)return}else Eu(S)||Lu(S,_)}),h}function Pan(s,c){let g=[],d;if(Gd(s)){if(s.parameters.length>0){let T=s.parameters[0].name;d=h(T)}}else Ir(s)?d=_(s):jo(s)&&Ir(s.name)&&(d=_(s.name));if(!d||"identifier"in d&&d.identifier.text==="undefined")return;return d;function h(T){if(Ir(T))return _(T);let O=jt(T.elements,V=>Ep(V)?[]:[h(V.name)]);return wxs(T,O)}function _(T){let O=R(T),V=S(O);return V&&c.synthNamesMap.get(xg(V).toString())||ype(T,g)}function S(T){var O;return((O=Gs(T,yE))==null?void 0:O.symbol)??c.checker.getSymbolAtLocation(T)}function R(T){return T.original?T.original:T}}function Man(s){return s?n2e(s)?!s.identifier.text:ue(s.elements,Man):!0}function ype(s,c=[]){return{kind:0,identifier:s,types:c,hasBeenDeclared:!1,hasBeenReferenced:!1}}function wxs(s,c=E,g=[]){return{kind:1,bindingPattern:s,elements:c,types:g}}function uQt(s){return s.hasBeenReferenced=!0,s.identifier}function nOe(s){return n2e(s)?gQt(s):Han(s)}function Han(s){for(let c of s.elements)nOe(c);return s.bindingPattern}function gQt(s){return s.hasBeenDeclared=!0,s.identifier}function n2e(s){return s.kind===0}function Txs(s){return s.kind===1}function i2e(s,c){return!!s.original&&c.setOfExpressionsToReturn.has(id(s.original))}Gg({errorCodes:[Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(s){let{sourceFile:c,program:g,preferences:d}=s,h=xo.ChangeTracker.with(s,_=>{if(Nxs(c,g.getTypeChecker(),_,Hg(g.getCompilerOptions()),E1(c,d)))for(let R of g.getSourceFiles())Rxs(R,c,g,_,E1(R,d))});return[uR("convertToEsModule",h,Z.Convert_to_ES_module)]}});function Rxs(s,c,g,d,h){var _;for(let S of s.imports){let R=(_=g.getResolvedModuleFromModuleSpecifier(S,s))==null?void 0:_.resolvedModule;if(!R||R.resolvedFileName!==c.fileName)continue;let T=W7(S);switch(T.kind){case 272:d.replaceNode(s,T,$W(T.name,void 0,S,h));break;case 214:ly(T,!1)&&d.replaceNode(s,T,me.createPropertyAccessExpression(KA(T),"default"));break}}}function Nxs(s,c,g,d,h){let _={original:Hxs(s),additional:new Set},S=Dxs(s,c,_);kxs(s,S,g);let R=!1,T;for(let O of Le(s.statements,Eh)){let V=Qan(s,O,g,c,_,d,h);V&&y7(V,T??(T=new Map))}for(let O of Le(s.statements,V=>!Eh(V))){let V=xxs(s,O,c,g,_,d,S,T,h);R=R||V}return T?.forEach((O,V)=>{g.replaceNode(s,V,O)}),R}function Dxs(s,c,g){let d=new Map;return Yan(s,h=>{let{text:_}=h.name;!d.has(_)&&(ebe(h.name)||c.resolveName(_,h,111551,!0))&&d.set(_,Dit(`_${_}`,g))}),d}function kxs(s,c,g){Yan(s,(d,h)=>{if(h)return;let{text:_}=d.name;g.replaceNode(s,d,me.createIdentifier(c.get(_)||_))})}function Yan(s,c){s.forEachChild(function g(d){if(jo(d)&&CQ(s,d.expression)&&Ir(d.name)){let{parent:h}=d;c(d,po(h)&&h.left===d&&h.operatorToken.kind===64)}d.forEachChild(g)})}function xxs(s,c,g,d,h,_,S,R,T){switch(c.kind){case 244:return Qan(s,c,d,g,h,_,T),!1;case 245:{let{expression:O}=c;switch(O.kind){case 214:return ly(O,!0)&&d.replaceNode(s,c,$W(void 0,void 0,O.arguments[0],T)),!1;case 227:{let{operatorToken:V}=O;return V.kind===64&&Fxs(s,g,O,d,S,R)}}}default:return!1}}function Qan(s,c,g,d,h,_,S){let{declarationList:R}=c,T=!1,O=lt(R.declarations,V=>{let{name:M,initializer:ee}=V;if(ee){if(CQ(s,ee))return T=!0,bpe([]);if(ly(ee,!0))return T=!0,Pxs(M,ee.arguments[0],d,h,_,S);if(jo(ee)&&ly(ee.expression,!0))return T=!0,Gxs(M,ee.name.text,ee.expression.arguments[0],h,S)}return bpe([me.createVariableStatement(void 0,me.createVariableDeclarationList([V],R.flags))])});if(T){g.replaceNodeWithNodes(s,c,jt(O,M=>M.newImports));let V;return F(O,M=>{M.useSitesToUnqualify&&y7(M.useSitesToUnqualify,V??(V=new Map))}),V}}function Gxs(s,c,g,d,h){switch(s.kind){case 207:case 208:{let _=Dit(c,d);return bpe([Kan(_,c,g,h),kit(void 0,s,me.createIdentifier(_))])}case 80:return bpe([Kan(s.text,c,g,h)]);default:return pe.assertNever(s,`Convert to ES module got invalid syntax form ${s.kind}`)}}function Fxs(s,c,g,d,h,_){let{left:S,right:R}=g;if(!jo(S))return!1;if(CQ(s,S))if(CQ(s,R))d.delete(s,g.parent);else{let T=ag(R)?Zxs(R,_):ly(R,!0)?Vxs(R.arguments[0],c):void 0;return T?(d.replaceNodeWithNodes(s,g.parent,T[0]),T[1]):(d.replaceRangeWithText(s,Zy(S.getStart(s),R.pos),"export default"),!0)}else CQ(s,S.expression)&&Lxs(s,g,d,h);return!1}function Zxs(s,c){let g=$t(s.properties,d=>{switch(d.kind){case 178:case 179:case 305:case 306:return;case 304:return Ir(d.name)?Oxs(d.name.text,d.initializer,c):void 0;case 175:return Ir(d.name)?Uan(d.name.text,[me.createToken(95)],d,c):void 0;default:pe.assertNever(d,`Convert to ES6 got invalid prop kind ${d.kind}`)}});return g&&[g,!1]}function Lxs(s,c,g,d){let{text:h}=c.left.name,_=d.get(h);if(_!==void 0){let S=[kit(void 0,_,c.right),pQt([me.createExportSpecifier(!1,_,h)])];g.replaceNodeWithNodes(s,c.parent,S)}else Wxs(c,s,g)}function Vxs(s,c){let g=s.text,d=c.getSymbolAtLocation(s),h=d?d.exports:N;return h.has("export=")?[[AQt(g)],!0]:h.has("default")?h.size>1?[[Xan(g),AQt(g)],!0]:[[AQt(g)],!0]:[[Xan(g)],!1]}function Xan(s){return pQt(void 0,s)}function AQt(s){return pQt([me.createExportSpecifier(!1,void 0,"default")],s)}function Wxs({left:s,right:c,parent:g},d,h){let _=s.name.text;if((jA(c)||uA(c)||wd(c))&&(!c.name||c.name.text===_)){h.replaceRange(d,{pos:s.getStart(d),end:c.getStart(d)},me.createToken(95),{suffix:" "}),c.name||h.insertName(d,c,_);let S=ep(g,27,d);S&&h.delete(d,S)}else h.replaceNodeRangeWithNodes(d,s.expression,ep(s,25,d),[me.createToken(95),me.createToken(87)],{joiner:" ",suffix:" "})}function Oxs(s,c,g){let d=[me.createToken(95)];switch(c.kind){case 219:{let{name:_}=c;if(_&&_.text!==s)return h()}case 220:return Uan(s,d,c,g);case 232:return Qxs(s,d,c,g);default:return h()}function h(){return kit(d,me.createIdentifier(s),dQt(c,g))}}function dQt(s,c){if(!c||!zt(Do(c.keys()),d=>uy(s,d)))return s;return Ki(s)?fde(s,!0,g):Iie(s,!0,g);function g(d){if(d.kind===212){let h=c.get(d);return c.delete(d),h}}}function Pxs(s,c,g,d,h,_){switch(s.kind){case 207:{let S=$t(s.elements,R=>R.dotDotDotToken||R.initializer||R.propertyName&&!Ir(R.propertyName)||!Ir(R.name)?void 0:jan(R.propertyName&&R.propertyName.text,R.name.text));if(S)return bpe([$W(void 0,S,c,_)])}case 208:{let S=Dit(Y1e(c.text,h),d);return bpe([$W(me.createIdentifier(S),void 0,c,_),kit(void 0,KA(s),me.createIdentifier(S))])}case 80:return Mxs(s,c,g,d,_);default:return pe.assertNever(s,`Convert to ES module got invalid name kind ${s.kind}`)}}function Mxs(s,c,g,d,h){let _=g.getSymbolAtLocation(s),S=new Map,R=!1,T;for(let V of d.original.get(s.text)){if(g.getSymbolAtLocation(V)!==_||V===s)continue;let{parent:M}=V;if(jo(M)){let{name:{text:ee}}=M;if(ee==="default"){R=!0;let re=V.getText();(T??(T=new Map)).set(M,me.createIdentifier(re))}else{pe.assert(M.expression===V,"Didn't expect expression === use");let re=S.get(ee);re===void 0&&(re=Dit(ee,d),S.set(ee,re)),(T??(T=new Map)).set(M,me.createIdentifier(re))}}else R=!0}let O=S.size===0?void 0:Do(Ot(S.entries(),([V,M])=>me.createImportSpecifier(!1,V===M?void 0:me.createIdentifier(V),me.createIdentifier(M))));return O||(R=!0),bpe([$W(R?KA(s):void 0,O,c,h)],T)}function Dit(s,c){for(;c.original.has(s)||c.additional.has(s);)s=`_${s}`;return c.additional.add(s),s}function Hxs(s){let c=gl();return Jan(s,g=>c.add(g.text,g)),c}function Jan(s,c){Ir(s)&&Yxs(s)&&c(s),s.forEachChild(g=>Jan(g,c))}function Yxs(s){let{parent:c}=s;switch(c.kind){case 212:return c.name!==s;case 209:return c.propertyName!==s;case 277:return c.propertyName!==s;default:return!0}}function Uan(s,c,g,d){return me.createFunctionDeclaration(Nn(c,c0(g.modifiers)),KA(g.asteriskToken),s,c0(g.typeParameters),c0(g.parameters),KA(g.type),me.converters.convertToFunctionBlock(dQt(g.body,d)))}function Qxs(s,c,g,d){return me.createClassDeclaration(Nn(c,c0(g.modifiers)),s,c0(g.typeParameters),c0(g.heritageClauses),dQt(g.members,d))}function Kan(s,c,g,d){return c==="default"?$W(me.createIdentifier(s),void 0,g,d):$W(void 0,[jan(c,s)],g,d)}function jan(s,c){return me.createImportSpecifier(!1,s!==void 0&&s!==c?me.createIdentifier(s):void 0,me.createIdentifier(c))}function kit(s,c,g){return me.createVariableStatement(s,me.createVariableDeclarationList([me.createVariableDeclaration(c,void 0,void 0,g)],2))}function pQt(s,c){return me.createExportDeclaration(void 0,!1,s&&me.createNamedExports(s),c===void 0?void 0:me.createStringLiteral(c))}function bpe(s,c){return{newImports:s,useSitesToUnqualify:c}}var fQt="correctQualifiedNameToIndexedAccessType",zan=[Z.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.code];Gg({errorCodes:zan,getCodeActions(s){let c=qan(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,h=>$an(h,s.sourceFile,c)),d=`${c.left.text}["${c.right.text}"]`;return[gg(fQt,g,[Z.Rewrite_as_the_indexed_access_type_0,d],fQt,Z.Rewrite_all_as_indexed_access_types)]},fixIds:[fQt],getAllCodeActions:s=>Jd(s,zan,(c,g)=>{let d=qan(g.file,g.start);d&&$an(c,g.file,d)})});function qan(s,c){let g=ji(Jc(s,c),zi);return pe.assert(!!g,"Expected position to be owned by a qualified name."),Ir(g.left)?g:void 0}function $an(s,c,g){let d=g.right.text,h=me.createIndexedAccessTypeNode(me.createTypeReferenceNode(g.left,void 0),me.createLiteralTypeNode(me.createStringLiteral(d)));s.replaceNode(c,g,h)}var IQt=[Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],hQt="convertToTypeOnlyExport";Gg({errorCodes:IQt,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>tcn(d,ecn(c.span,c.sourceFile),c));if(g.length)return[gg(hQt,g,Z.Convert_to_type_only_export,hQt,Z.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[hQt],getAllCodeActions:function(c){let g=new Set;return Jd(c,IQt,(d,h)=>{let _=ecn(h,c.sourceFile);_&&Vy(g,id(_.parent.parent))&&tcn(d,_,c)})}});function ecn(s,c){return Gs(Jc(c,s.start).parent,D0)}function tcn(s,c,g){if(!c)return;let d=c.parent,h=d.parent,_=Xxs(c,g);if(_.length===d.elements.length)s.insertModifierBefore(g.sourceFile,156,d);else{let S=me.updateExportDeclaration(h,h.modifiers,!1,me.updateNamedExports(d,Le(d.elements,T=>!k(_,T))),h.moduleSpecifier,void 0),R=me.createExportDeclaration(void 0,!0,me.createNamedExports(_),h.moduleSpecifier,void 0);s.replaceNode(g.sourceFile,h,S,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Exclude}),s.insertNodeAfter(g.sourceFile,h,R)}}function Xxs(s,c){let g=s.parent;if(g.elements.length===1)return g.elements;let d=rHt(Hy(g),c.program.getSemanticDiagnostics(c.sourceFile,c.cancellationToken));return Le(g.elements,h=>{var _;return h===s||((_=tHt(h,d))==null?void 0:_.code)===IQt[0]})}var rcn=[Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],xit="convertToTypeOnlyImport";Gg({errorCodes:rcn,getCodeActions:function(c){var g;let d=ncn(c.sourceFile,c.span.start);if(d){let h=xo.ChangeTracker.with(c,R=>iOe(R,c.sourceFile,d)),_=d.kind===277&&Yf(d.parent.parent.parent)&&icn(d,c.sourceFile,c.program)?xo.ChangeTracker.with(c,R=>iOe(R,c.sourceFile,d.parent.parent.parent)):void 0,S=gg(xit,h,d.kind===277?[Z.Use_type_0,((g=d.propertyName)==null?void 0:g.text)??d.name.text]:Z.Use_import_type,xit,Z.Fix_all_with_type_only_imports);return zt(_)?[uR(xit,_,Z.Use_import_type),S]:[S]}},fixIds:[xit],getAllCodeActions:function(c){let g=new Set;return Jd(c,rcn,(d,h)=>{let _=ncn(h.file,h.start);_?.kind===273&&!g.has(_)?(iOe(d,h.file,_),g.add(_)):_?.kind===277&&Yf(_.parent.parent.parent)&&!g.has(_.parent.parent.parent)&&icn(_,h.file,c.program)?(iOe(d,h.file,_.parent.parent.parent),g.add(_.parent.parent.parent)):_?.kind===277&&iOe(d,h.file,_)})}});function ncn(s,c){let{parent:g}=Jc(s,c);return Ay(g)||Yf(g)&&g.importClause?g:void 0}function icn(s,c,g){if(s.parent.parent.name)return!1;let d=s.parent.elements.filter(_=>!_.isTypeOnly);if(d.length===1)return!0;let h=g.getTypeChecker();for(let _ of d)if(zp.Core.eachSymbolReferenceInFile(_.name,h,c,R=>{let T=h.getSymbolAtLocation(R);return!!T&&h.symbolIsValue(T)||!$L(R)}))return!1;return!0}function iOe(s,c,g){var d;if(Ay(g))s.replaceNode(c,g,me.updateImportSpecifier(g,!0,g.propertyName,g.name));else{let h=g.importClause;if(h.name&&h.namedBindings)s.replaceNodeWithNodes(c,g,[me.createImportDeclaration(c0(g.modifiers,!0),me.createImportClause(156,KA(h.name,!0),void 0),KA(g.moduleSpecifier,!0),KA(g.attributes,!0)),me.createImportDeclaration(c0(g.modifiers,!0),me.createImportClause(156,void 0,KA(h.namedBindings,!0)),KA(g.moduleSpecifier,!0),KA(g.attributes,!0))]);else{let _=((d=h.namedBindings)==null?void 0:d.kind)===276?me.updateNamedImports(h.namedBindings,Er(h.namedBindings.elements,R=>me.updateImportSpecifier(R,!1,R.propertyName,R.name))):h.namedBindings,S=me.updateImportDeclaration(g,g.modifiers,me.updateImportClause(h,156,h.name,_),g.moduleSpecifier,g.attributes);s.replaceNode(c,g,S)}}}var mQt="convertTypedefToType",scn=[Z.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];Gg({fixIds:[mQt],errorCodes:scn,getCodeActions(s){let c=JF(s.host,s.formatContext.options),g=Jc(s.sourceFile,s.span.start);if(!g)return;let d=xo.ChangeTracker.with(s,h=>ocn(h,g,s.sourceFile,c));if(d.length>0)return[gg(mQt,d,Z.Convert_typedef_to_TypeScript_type,mQt,Z.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:s=>Jd(s,scn,(c,g)=>{let d=JF(s.host,s.formatContext.options),h=Jc(g.file,g.start);h&&ocn(c,h,g.file,d,!0)})});function ocn(s,c,g,d,h=!1){if(!FU(c))return;let _=Uxs(c);if(!_)return;let S=c.parent,{leftSibling:R,rightSibling:T}=Jxs(c),O=S.getStart(),V="";!R&&S.comment&&(O=acn(S,S.getStart(),c.getStart()),V=`${d} */${d}`),R&&(h&&FU(R)?(O=c.getStart(),V=""):(O=acn(S,R.getStart(),c.getStart()),V=`${d} */${d}`));let M=S.getEnd(),ee="";T&&(h&&FU(T)?(M=T.getStart(),ee=`${d}${d}`):(M=T.getStart(),ee=`${d}/**${d} * `)),s.replaceRange(g,{pos:O,end:M},_,{prefix:V,suffix:ee})}function Jxs(s){let c=s.parent,g=c.getChildCount()-1,d=c.getChildren().findIndex(S=>S.getStart()===s.getStart()&&S.getEnd()===s.getEnd()),h=d>0?c.getChildAt(d-1):void 0,_=d0;h--)if(!/[*/\s]/.test(d.substring(h-1,h)))return c+h;return g}function Uxs(s){var c;let{typeExpression:g}=s;if(!g)return;let d=(c=s.name)==null?void 0:c.getText();if(d){if(g.kind===323)return Kxs(d,g);if(g.kind===310)return jxs(d,g)}}function Kxs(s,c){let g=ccn(c);if(zt(g))return me.createInterfaceDeclaration(void 0,s,void 0,void 0,g)}function jxs(s,c){let g=KA(c.type);if(g)return me.createTypeAliasDeclaration(void 0,me.createIdentifier(s),void 0,g)}function ccn(s){let c=s.jsDocPropertyTags;return zt(c)?Xt(c,d=>{var h;let _=zxs(d),S=(h=d.typeExpression)==null?void 0:h.type,R=d.isBracketed,T;if(S&&GU(S)){let O=ccn(S);T=me.createTypeLiteralNode(O)}else S&&(T=KA(S));if(T&&_){let O=R?me.createToken(58):void 0;return me.createPropertySignature(void 0,_,O,T)}}):void 0}function zxs(s){return s.name.kind===80?s.name.text:s.name.right.text}function qxs(s){return jm(s)?jt(s.jsDoc,c=>{var g;return(g=c.tags)==null?void 0:g.filter(d=>FU(d))}):[]}var CQt="convertLiteralTypeToMappedType",lcn=[Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];Gg({errorCodes:lcn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=ucn(g,d.start);if(!h)return;let{name:_,constraint:S}=h,R=xo.ChangeTracker.with(c,T=>gcn(T,g,h));return[gg(CQt,R,[Z.Convert_0_to_1_in_0,S,_],CQt,Z.Convert_all_type_literals_to_mapped_type)]},fixIds:[CQt],getAllCodeActions:s=>Jd(s,lcn,(c,g)=>{let d=ucn(g.file,g.start);d&&gcn(c,g.file,d)})});function ucn(s,c){let g=Jc(s,c);if(Ir(g)){let d=Ma(g.parent.parent,ss),h=g.getText(s);return{container:Ma(d.parent,bh),typeNode:d.type,constraint:h,name:h==="K"?"P":"K"}}}function gcn(s,c,{container:g,typeNode:d,constraint:h,name:_}){s.replaceNode(c,g,me.createMappedTypeNode(void 0,me.createTypeParameterDeclaration(void 0,_,me.createTypeReferenceNode(h)),void 0,void 0,d,void 0))}var Acn=[Z.Class_0_incorrectly_implements_interface_1.code,Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],_Qt="fixClassIncorrectlyImplementsInterface";Gg({errorCodes:Acn,getCodeActions(s){let{sourceFile:c,span:g}=s,d=dcn(c,g.start);return Xt(lU(d),h=>{let _=xo.ChangeTracker.with(s,S=>fcn(s,h,c,d,S,s.preferences));return _.length===0?void 0:gg(_Qt,_,[Z.Implement_interface_0,h.getText(c)],_Qt,Z.Implement_all_unimplemented_interfaces)})},fixIds:[_Qt],getAllCodeActions(s){let c=new Set;return Jd(s,Acn,(g,d)=>{let h=dcn(d.file,d.start);if(Vy(c,id(h)))for(let _ of lU(h))fcn(s,_,d.file,h,g,s.preferences)})}});function dcn(s,c){return pe.checkDefined(_C(Jc(s,c)),"There should be a containing class")}function pcn(s){return!s.valueDeclaration||!(c_(s.valueDeclaration)&2)}function fcn(s,c,g,d,h,_){let S=s.program.getTypeChecker(),R=$xs(d,S),T=S.getTypeAtLocation(c),V=S.getPropertiesOfType(T).filter(hh(pcn,_e=>!R.has(_e.escapedName))),M=S.getTypeAtLocation(d),ee=de(d.members,_e=>Tc(_e));M.getNumberIndexType()||ge(T,1),M.getStringIndexType()||ge(T,0);let re=kQ(g,s.program,_,s.host);dXt(d,V,g,s,_,re,_e=>Ie(g,d,_e)),re.writeFixes(h);function ge(_e,Ee){let Ne=S.getIndexInfoOfType(_e,Ee);Ne&&Ie(g,d,S.indexInfoToIndexSignatureDeclaration(Ne,d,void 0,void 0,Ise(s)))}function Ie(_e,Ee,Ne){ee?h.insertNodeAfter(_e,ee,Ne):h.insertMemberAtStart(_e,Ee,Ne)}}function $xs(s,c){let g=DB(s);if(!g)return $u();let d=c.getTypeAtLocation(g),h=c.getPropertiesOfType(d);return $u(h.filter(pcn))}var Icn="import",hcn="fixMissingImport",mcn=[Z.Cannot_find_name_0.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z.Cannot_find_namespace_0.code,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,Z.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.code,Z.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,Z.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.code,Z.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.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,Z.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.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code,Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found.code];Gg({errorCodes:mcn,getCodeActions(s){let{errorCode:c,preferences:g,sourceFile:d,span:h,program:_}=s,S=Scn(s,c,h.start,!0);if(S)return S.map(({fix:R,symbolName:T,errorIdentifierText:O})=>EQt(s,d,T,R,T!==O,_,g))},fixIds:[hcn],getAllCodeActions:s=>{let{sourceFile:c,program:g,preferences:d,host:h,cancellationToken:_}=s,S=Ccn(c,g,!0,d,h,_);return iq(s,mcn,R=>S.addImportFromDiagnostic(R,s)),nq(xo.ChangeTracker.with(s,S.writeFixes))}});function kQ(s,c,g,d,h){return Ccn(s,c,!1,g,d,h)}function Ccn(s,c,g,d,h,_){let S=c.getCompilerOptions(),R=[],T=[],O=new Map,V=new Set,M=new Set,ee=new Map;return{addImportFromDiagnostic:Ie,addImportFromExportedSymbol:_e,addImportForModuleSymbol:Ee,writeFixes:Pe,hasFixes:et,addImportForUnresolvedIdentifier:ge,addImportForNonExistentExport:Ne,removeExistingImport:Te,addVerbatimImport:re};function re(Ye){M.add(Ye)}function ge(Ye,Tt,at){let Qe=uGs(Ye,Tt,at);!Qe||!Qe.length||Ze(ma(Qe))}function Ie(Ye,Tt){let at=Scn(Tt,Ye.code,Ye.start,g);!at||!at.length||Ze(ma(at))}function _e(Ye,Tt,at){var Qe,Ct;let mt=pe.checkDefined(Ye.parent,"Expected exported symbol to have module symbol as parent"),yt=DWe(Ye,Hg(S)),Rt=c.getTypeChecker(),Lt=Rt.getMergedSymbol(LC(Ye,Rt)),je=ycn(s,Lt,yt,mt,!1,c,h,d,_);if(!je){pe.assert((Qe=d.autoImportFileExcludePatterns)==null?void 0:Qe.length);return}let Wt=s2e(s,c),_r=yQt(s,je,c,void 0,!!Tt,Wt,h,d);if(_r){let Gt=((Ct=Gs(at?.name,Ir))==null?void 0:Ct.text)??yt,it,kt;at&&aN(at)&&(_r.kind===3||_r.kind===2)&&_r.addAsTypeOnly===1&&(it=2),Ye.name!==Gt&&(kt=Ye.name),_r={..._r,...it===void 0?{}:{addAsTypeOnly:it},...kt===void 0?{}:{propertyName:kt}},Ze({fix:_r,symbolName:Gt??yt,errorIdentifierText:void 0})}}function Ee(Ye,Tt,at){var Qe,Ct,mt;let yt=c.getTypeChecker(),Rt=yt.getAliasedSymbol(Ye);pe.assert(Rt.flags&1536,"Expected symbol to be a module");let Lt=i5(c,h),je=XF.getModuleSpecifiersWithCacheInfo(Rt,yt,S,s,Lt,d,void 0,!0),Wt=s2e(s,c),_r=oOe(Tt,!0,void 0,Ye.flags,c.getTypeChecker(),S);_r=_r===1&&aN(at)?2:1;let Gt=Yf(at)?S3(at)?1:2:Ay(at)?0:Hw(at)&&at.name?1:2,it=[{symbol:Ye,moduleSymbol:Rt,moduleFileName:(mt=(Ct=(Qe=Rt.declarations)==null?void 0:Qe[0])==null?void 0:Ct.getSourceFile())==null?void 0:mt.fileName,exportKind:4,targetFlags:Ye.flags,isFromPackageJson:!1}],kt=yQt(s,it,c,void 0,!!Tt,Wt,h,d),tr;kt&&Gt!==2&&kt.kind!==0&&kt.kind!==1?tr={...kt,addAsTypeOnly:_r,importKind:Gt}:tr={kind:3,moduleSpecifierKind:kt!==void 0?kt.moduleSpecifierKind:je.kind,moduleSpecifier:kt!==void 0?kt.moduleSpecifier:ma(je.moduleSpecifiers),importKind:Gt,addAsTypeOnly:_r,useRequire:Wt},Ze({fix:tr,symbolName:Ye.name,errorIdentifierText:void 0})}function Ne(Ye,Tt,at,Qe,Ct){let mt=c.getSourceFile(Tt),yt=s2e(s,c);if(mt&&mt.symbol){let{fixes:Rt}=sOe([{exportKind:at,isFromPackageJson:!1,moduleFileName:Tt,moduleSymbol:mt.symbol,targetFlags:Qe}],void 0,Ct,yt,c,s,h,d);Rt.length&&Ze({fix:Rt[0],symbolName:Ye,errorIdentifierText:Ye})}else{let Rt=ZWe(Tt,99,c,h),Lt=XF.getLocalModuleSpecifierBetweenFileNames(s,Tt,S,i5(c,h),d),je=Git(Rt,at,c),Wt=oOe(Ct,!0,void 0,Qe,c.getTypeChecker(),S);Ze({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:Lt,importKind:je,addAsTypeOnly:Wt,useRequire:yt},symbolName:Ye,errorIdentifierText:Ye})}}function Te(Ye){Ye.kind===274&&pe.assertIsDefined(Ye.name,"ImportClause should have a name if it's being removed"),V.add(Ye)}function Ze(Ye){var Tt,at,Qe;let{fix:Ct,symbolName:mt}=Ye;switch(Ct.kind){case 0:R.push(Ct);break;case 1:T.push(Ct);break;case 2:{let{importClauseOrBindingPattern:je,importKind:Wt,addAsTypeOnly:_r,propertyName:Gt}=Ct,it=O.get(je);if(it||O.set(je,it={importClauseOrBindingPattern:je,defaultImport:void 0,namedImports:new Map}),Wt===0){let kt=(Tt=it?.namedImports.get(mt))==null?void 0:Tt.addAsTypeOnly;it.namedImports.set(mt,{addAsTypeOnly:yt(kt,_r),propertyName:Gt})}else pe.assert(it.defaultImport===void 0||it.defaultImport.name===mt,"(Add to Existing) Default import should be missing or match symbolName"),it.defaultImport={name:mt,addAsTypeOnly:yt((at=it.defaultImport)==null?void 0:at.addAsTypeOnly,_r)};break}case 3:{let{moduleSpecifier:je,importKind:Wt,useRequire:_r,addAsTypeOnly:Gt,propertyName:it}=Ct,kt=Rt(je,Wt,_r,Gt);switch(pe.assert(kt.useRequire===_r,"(Add new) Tried to add an `import` and a `require` for the same module"),Wt){case 1:pe.assert(kt.defaultImport===void 0||kt.defaultImport.name===mt,"(Add new) Default import should be missing or match symbolName"),kt.defaultImport={name:mt,addAsTypeOnly:yt((Qe=kt.defaultImport)==null?void 0:Qe.addAsTypeOnly,Gt)};break;case 0:let tr=(kt.namedImports||(kt.namedImports=new Map)).get(mt);kt.namedImports.set(mt,[yt(tr,Gt),it]);break;case 3:if(S.verbatimModuleSyntax){let ur=(kt.namedImports||(kt.namedImports=new Map)).get(mt);kt.namedImports.set(mt,[yt(ur,Gt),it])}else pe.assert(kt.namespaceLikeImport===void 0||kt.namespaceLikeImport.name===mt,"Namespacelike import shoudl be missing or match symbolName"),kt.namespaceLikeImport={importKind:Wt,name:mt,addAsTypeOnly:Gt};break;case 2:pe.assert(kt.namespaceLikeImport===void 0||kt.namespaceLikeImport.name===mt,"Namespacelike import shoudl be missing or match symbolName"),kt.namespaceLikeImport={importKind:Wt,name:mt,addAsTypeOnly:Gt};break}break}case 4:break;default:pe.assertNever(Ct,`fix wasn't never - got kind ${Ct.kind}`)}function yt(je,Wt){return Math.max(je??0,Wt)}function Rt(je,Wt,_r,Gt){let it=Lt(je,!0),kt=Lt(je,!1),tr=ee.get(it),ur=ee.get(kt),Gr={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:_r};return Wt===1&&Gt===2?tr||(ee.set(it,Gr),Gr):Gt===1&&(tr||ur)?tr||ur:ur||(ee.set(kt,Gr),Gr)}function Lt(je,Wt){return`${Wt?1:0}|${je}`}}function Pe(Ye,Tt){var at,Qe;let Ct;s.imports!==void 0&&s.imports.length===0&&Tt!==void 0?Ct=Tt:Ct=E1(s,d);for(let Rt of R)SQt(Ye,s,Rt);for(let Rt of T)xcn(Ye,s,Rt,Ct);let mt;if(V.size){pe.assert(AN(s),"Cannot remove imports from a future source file");let Rt=new Set(Xt([...V],Gt=>ji(Gt,Yf))),Lt=new Set(Xt([...V],Gt=>ji(Gt,F7))),je=[...Rt].filter(Gt=>{var it,kt,tr;return!O.has(Gt.importClause)&&(!((it=Gt.importClause)!=null&&it.name)||V.has(Gt.importClause))&&(!Gs((kt=Gt.importClause)==null?void 0:kt.namedBindings,Px)||V.has(Gt.importClause.namedBindings))&&(!Gs((tr=Gt.importClause)==null?void 0:tr.namedBindings,BN)||ue(Gt.importClause.namedBindings.elements,ur=>V.has(ur)))}),Wt=[...Lt].filter(Gt=>(Gt.name.kind!==207||!O.has(Gt.name))&&(Gt.name.kind!==207||ue(Gt.name.elements,it=>V.has(it)))),_r=[...Rt].filter(Gt=>{var it,kt;return((it=Gt.importClause)==null?void 0:it.namedBindings)&&je.indexOf(Gt)===-1&&!((kt=O.get(Gt.importClause))!=null&&kt.namedImports)&&(Gt.importClause.namedBindings.kind===275||ue(Gt.importClause.namedBindings.elements,tr=>V.has(tr)))});for(let Gt of[...je,...Wt])Ye.delete(s,Gt);for(let Gt of _r)Ye.replaceNode(s,Gt.importClause,me.updateImportClause(Gt.importClause,Gt.importClause.phaseModifier,Gt.importClause.name,void 0));for(let Gt of V){let it=ji(Gt,Yf);it&&je.indexOf(it)===-1&&_r.indexOf(it)===-1?Gt.kind===274?Ye.delete(s,Gt.name):(pe.assert(Gt.kind===277,"NamespaceImport should have been handled earlier"),(at=O.get(it.importClause))!=null&&at.namedImports?(mt??(mt=new Set)).add(Gt):Ye.delete(s,Gt)):Gt.kind===209?(Qe=O.get(Gt.parent))!=null&&Qe.namedImports?(mt??(mt=new Set)).add(Gt):Ye.delete(s,Gt):Gt.kind===272&&Ye.delete(s,Gt)}}O.forEach(({importClauseOrBindingPattern:Rt,defaultImport:Lt,namedImports:je})=>{kcn(Ye,s,Rt,Lt,Do(je.entries(),([Wt,{addAsTypeOnly:_r,propertyName:Gt}])=>({addAsTypeOnly:_r,propertyName:Gt,name:Wt})),mt,d)});let yt;ee.forEach(({useRequire:Rt,defaultImport:Lt,namedImports:je,namespaceLikeImport:Wt},_r)=>{let Gt=_r.slice(2),kt=(Rt?Zcn:Fcn)(Gt,Ct,Lt,je&&Do(je.entries(),([tr,[ur,Gr]])=>({addAsTypeOnly:ur,propertyName:Gr,name:tr})),Wt,S,d);yt=zr(yt,kt)}),yt=zr(yt,Ke()),yt&&gnt(Ye,s,yt,!0,d)}function Ke(){if(!M.size)return;let Ye=new Set(Xt([...M],at=>ji(at,Yf))),Tt=new Set(Xt([...M],at=>ji(at,hne)));return[...Xt([...M],at=>at.kind===272?KA(at,!0):void 0),...[...Ye].map(at=>{var Qe;return M.has(at)?KA(at,!0):KA(me.updateImportDeclaration(at,at.modifiers,at.importClause&&me.updateImportClause(at.importClause,at.importClause.phaseModifier,M.has(at.importClause)?at.importClause.name:void 0,M.has(at.importClause.namedBindings)?at.importClause.namedBindings:(Qe=Gs(at.importClause.namedBindings,BN))!=null&&Qe.elements.some(Ct=>M.has(Ct))?me.updateNamedImports(at.importClause.namedBindings,at.importClause.namedBindings.elements.filter(Ct=>M.has(Ct))):void 0),at.moduleSpecifier,at.attributes),!0)}),...[...Tt].map(at=>M.has(at)?KA(at,!0):KA(me.updateVariableStatement(at,at.modifiers,me.updateVariableDeclarationList(at.declarationList,Xt(at.declarationList.declarations,Qe=>M.has(Qe)?Qe:me.updateVariableDeclaration(Qe,Qe.name.kind===207?me.updateObjectBindingPattern(Qe.name,Qe.name.elements.filter(Ct=>M.has(Ct))):Qe.name,Qe.exclamationToken,Qe.type,Qe.initializer)))),!0))]}function et(){return R.length>0||T.length>0||O.size>0||ee.size>0||M.size>0||V.size>0}}function eGs(s,c,g,d){let h=use(s,d,g),_=bcn(s,c);return{getModuleSpecifierForBestExportInfo:S};function S(R,T,O,V){let{fixes:M,computedWithoutCacheCount:ee}=sOe(R,T,O,!1,c,s,g,d,_,V),re=Bcn(M,s,c,h,g,d);return re&&{...re,computedWithoutCacheCount:ee}}}function tGs(s,c,g,d,h,_,S,R,T,O,V,M){let ee;g?(ee=X1e(d,S,R,V,M).get(d.path,g),pe.assertIsDefined(ee,"Some exportInfo should match the specified exportMapKey")):(ee=jh(A2(c.name))?[nGs(s,h,c,R,S)]:ycn(d,s,h,c,_,R,S,V,M),pe.assertIsDefined(ee,"Some exportInfo should match the specified symbol / moduleSymbol"));let re=s2e(d,R),ge=$L(Jc(d,O)),Ie=pe.checkDefined(yQt(d,ee,R,O,ge,re,S,V));return{moduleSpecifier:Ie.moduleSpecifier,codeAction:_cn(EQt({host:S,formatContext:T,preferences:V},d,h,Ie,!1,R,V))}}function rGs(s,c,g,d,h,_){let S=g.getCompilerOptions(),R=Xa(bQt(s,g.getTypeChecker(),c,S)),T=Ncn(s,c,R,g),O=R!==c.text;return T&&_cn(EQt({host:d,formatContext:h,preferences:_},s,R,T,O,g,_))}function yQt(s,c,g,d,h,_,S,R){let T=use(s,R,S);return Bcn(sOe(c,d,h,_,g,s,S,R).fixes,s,g,T,S,R)}function _cn({description:s,changes:c,commands:g}){return{description:s,changes:c,commands:g}}function ycn(s,c,g,d,h,_,S,R,T){let O=Ecn(_,S),V=R.autoImportFileExcludePatterns&&aHt(S,R),M=_.getTypeChecker().getMergedSymbol(d),ee=V&&M.declarations&&yp(M,308),re=ee&&V(ee);return X1e(s,S,_,R,T).search(s.path,h,ge=>ge===g,ge=>{let Ie=O(ge[0].isFromPackageJson);if(Ie.getMergedSymbol(LC(ge[0].symbol,Ie))===c&&(re||ge.some(_e=>Ie.getMergedSymbol(_e.moduleSymbol)===d||_e.symbol.parent===d)))return ge})}function nGs(s,c,g,d,h){var _,S;let R=O(d.getTypeChecker(),!1);if(R)return R;let T=(S=(_=h.getPackageJsonAutoImportProvider)==null?void 0:_.call(h))==null?void 0:S.getTypeChecker();return pe.checkDefined(T&&O(T,!0),"Could not find symbol in specified module for code actions");function O(V,M){let ee=LWe(g,V);if(ee&&LC(ee.symbol,V)===s)return{symbol:ee.symbol,moduleSymbol:g,moduleFileName:void 0,exportKind:ee.exportKind,targetFlags:LC(s,V).flags,isFromPackageJson:M};let re=V.tryGetMemberInModuleExportsAndProperties(c,g);if(re&&LC(re,V)===s)return{symbol:re,moduleSymbol:g,moduleFileName:void 0,exportKind:0,targetFlags:LC(s,V).flags,isFromPackageJson:M}}}function sOe(s,c,g,d,h,_,S,R,T=AN(_)?bcn(_,h):void 0,O){let V=h.getTypeChecker(),M=T?jt(s,T.getImportsForExportInfo):E,ee=c!==void 0&&iGs(M,c),re=oGs(M,g,V,h.getCompilerOptions());if(re)return{computedWithoutCacheCount:0,fixes:[...ee?[ee]:E,re]};let{fixes:ge,computedWithoutCacheCount:Ie=0}=cGs(s,M,h,_,c,g,d,S,R,O);return{computedWithoutCacheCount:Ie,fixes:[...ee?[ee]:E,...ge]}}function iGs(s,c){return J(s,({declaration:g,importKind:d})=>{var h;if(d!==0)return;let _=sGs(g),S=_&&((h=JY(g))==null?void 0:h.text);if(S)return{kind:0,namespacePrefix:_,usagePosition:c,moduleSpecifierKind:void 0,moduleSpecifier:S}})}function sGs(s){var c,g,d;switch(s.kind){case 261:return(c=Gs(s.name,Ir))==null?void 0:c.text;case 272:return s.name.text;case 352:case 273:return(d=Gs((g=s.importClause)==null?void 0:g.namedBindings,Px))==null?void 0:d.name.text;default:return pe.assertNever(s)}}function oOe(s,c,g,d,h,_){return s?g&&_.verbatimModuleSyntax&&(!(d&111551)||h.getTypeOnlyAliasDeclaration(g))?2:1:4}function oGs(s,c,g,d){let h;for(let S of s){let R=_(S);if(!R)continue;let T=aN(R.importClauseOrBindingPattern);if(R.addAsTypeOnly!==4&&T||R.addAsTypeOnly===4&&!T)return R;h??(h=R)}return h;function _({declaration:S,importKind:R,symbol:T,targetFlags:O}){if(R===3||R===2||S.kind===272)return;if(S.kind===261)return(R===0||R===1)&&S.name.kind===207?{kind:2,importClauseOrBindingPattern:S.name,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;let{importClause:V}=S;if(!V||!CA(S.moduleSpecifier))return;let{name:M,namedBindings:ee}=V;if(V.isTypeOnly&&!(R===0&&ee))return;let re=oOe(c,!1,T,O,g,d);if(!(R===1&&(M||re===2&&ee))&&!(R===0&&ee?.kind===275))return{kind:2,importClauseOrBindingPattern:V,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.moduleSpecifier.text,addAsTypeOnly:re}}}function bcn(s,c){let g=c.getTypeChecker(),d;for(let h of s.imports){let _=W7(h);if(F7(_.parent)){let S=g.resolveExternalModuleName(h);S&&(d||(d=gl())).add(xg(S),_.parent)}else if(_.kind===273||_.kind===272||_.kind===352){let S=g.getSymbolAtLocation(h);S&&(d||(d=gl())).add(xg(S),_)}}return{getImportsForExportInfo:({moduleSymbol:h,exportKind:_,targetFlags:S,symbol:R})=>{let T=d?.get(xg(h));if(!T||s0(s)&&!(S&111551)&&!ue(T,RN))return E;let O=Git(s,_,c);return T.map(V=>({declaration:V,importKind:O,symbol:R,targetFlags:S}))}}}function s2e(s,c){if(!CN(s.fileName))return!1;if(s.commonJsModuleIndicator&&!s.externalModuleIndicator)return!0;if(s.externalModuleIndicator&&!s.commonJsModuleIndicator)return!1;let g=c.getCompilerOptions();if(g.configFile)return o0(g)<5;if(BQt(s,c)===1)return!0;if(BQt(s,c)===99)return!1;for(let d of c.getSourceFiles())if(!(d===s||!s0(d)||c.isSourceFileFromExternalLibrary(d))){if(d.commonJsModuleIndicator&&!d.externalModuleIndicator)return!0;if(d.externalModuleIndicator&&!d.commonJsModuleIndicator)return!1}return!0}function Ecn(s,c){return VA(g=>g?c.getPackageJsonAutoImportProvider().getTypeChecker():s.getTypeChecker())}function aGs(s,c,g,d,h,_,S,R,T){let O=CN(c.fileName),V=s.getCompilerOptions(),M=i5(s,S),ee=Ecn(s,S),re=G_(V),ge=hWe(re),Ie=T?Ne=>XF.tryGetModuleSpecifiersFromCache(Ne.moduleSymbol,c,M,R):(Ne,Te)=>XF.getModuleSpecifiersWithCacheInfo(Ne.moduleSymbol,Te,V,c,M,R,void 0,!0),_e=0,Ee=jt(_,(Ne,Te)=>{let Ze=ee(Ne.isFromPackageJson),{computedWithoutCache:Pe,moduleSpecifiers:Ke,kind:et}=Ie(Ne,Ze)??{},Ye=!!(Ne.targetFlags&111551),Tt=oOe(d,!0,Ne.symbol,Ne.targetFlags,Ze,V);return _e+=Pe?1:0,Xt(Ke,at=>{if(ge&&UW(at))return;if(!Ye&&O&&g!==void 0)return{kind:1,moduleSpecifierKind:et,moduleSpecifier:at,usagePosition:g,exportInfo:Ne,isReExport:Te>0};let Qe=Git(c,Ne.exportKind,s),Ct;if(g!==void 0&&Qe===3&&Ne.exportKind===0){let mt=Ze.resolveExternalModuleSymbol(Ne.moduleSymbol),yt;mt!==Ne.moduleSymbol&&(yt=VWe(mt,Ze,Hg(V),Zl)),yt||(yt=H1e(Ne.moduleSymbol,Hg(V),!1)),Ct={namespacePrefix:yt,usagePosition:g}}return{kind:3,moduleSpecifierKind:et,moduleSpecifier:at,importKind:Qe,useRequire:h,addAsTypeOnly:Tt,exportInfo:Ne,isReExport:Te>0,qualification:Ct}})});return{computedWithoutCacheCount:_e,fixes:Ee}}function cGs(s,c,g,d,h,_,S,R,T,O){let V=J(c,M=>lGs(M,_,S,g.getTypeChecker(),g.getCompilerOptions()));return V?{fixes:[V]}:aGs(g,d,h,_,S,s,R,T,O)}function lGs({declaration:s,importKind:c,symbol:g,targetFlags:d},h,_,S,R){var T;let O=(T=JY(s))==null?void 0:T.text;if(O){let V=_?4:oOe(h,!0,g,d,S,R);return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:O,importKind:c,addAsTypeOnly:V,useRequire:_}}}function Scn(s,c,g,d){let h=Jc(s.sourceFile,g),_;if(c===Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)_=pGs(s,h);else if(Ir(h))if(c===Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){let R=Xa(bQt(s.sourceFile,s.program.getTypeChecker(),h,s.program.getCompilerOptions())),T=Ncn(s.sourceFile,h,R,s.program);return T&&[{fix:T,symbolName:R,errorIdentifierText:h.text}]}else _=Rcn(s,h,d);else return;let S=use(s.sourceFile,s.preferences,s.host);return _&&vcn(_,s.sourceFile,s.program,S,s.host,s.preferences)}function vcn(s,c,g,d,h,_){let S=R=>Pu(R,h.getCurrentDirectory(),qD(h));return bo(s,(R,T)=>Hl(!!R.isJsxNamespaceFix,!!T.isJsxNamespaceFix)||Zt(R.fix.kind,T.fix.kind)||wcn(R.fix,T.fix,c,g,_,d.allowsImportingSpecifier,S))}function uGs(s,c,g){let d=Rcn(s,c,g),h=use(s.sourceFile,s.preferences,s.host);return d&&vcn(d,s.sourceFile,s.program,h,s.host,s.preferences)}function Bcn(s,c,g,d,h,_){if(zt(s))return s[0].kind===0||s[0].kind===2?s[0]:s.reduce((S,R)=>wcn(R,S,c,g,_,d.allowsImportingSpecifier,T=>Pu(T,h.getCurrentDirectory(),qD(h)))===-1?R:S)}function wcn(s,c,g,d,h,_,S){return s.kind!==0&&c.kind!==0?Hl(c.moduleSpecifierKind!=="node_modules"||_(c.moduleSpecifier),s.moduleSpecifierKind!=="node_modules"||_(s.moduleSpecifier))||gGs(s,c,h)||dGs(s.moduleSpecifier,c.moduleSpecifier,g,d)||Hl(Tcn(s,g.path,S),Tcn(c,g.path,S))||sie(s.moduleSpecifier,c.moduleSpecifier):0}function gGs(s,c,g){return g.importModuleSpecifierPreference==="non-relative"||g.importModuleSpecifierPreference==="project-relative"?Hl(s.moduleSpecifierKind==="relative",c.moduleSpecifierKind==="relative"):0}function Tcn(s,c,g){var d;if(s.isReExport&&((d=s.exportInfo)!=null&&d.moduleFileName)&&AGs(s.exportInfo.moduleFileName)){let h=g(Mo(s.exportInfo.moduleFileName));return Ac(c,h)}return!1}function AGs(s){return dp(s,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function dGs(s,c,g,d){return Ac(s,"node:")&&!Ac(c,"node:")?xWe(g,d)?-1:1:Ac(c,"node:")&&!Ac(s,"node:")?xWe(g,d)?1:-1:0}function pGs({sourceFile:s,program:c,host:g,preferences:d},h){let _=c.getTypeChecker(),S=fGs(h,_);if(!S)return;let R=_.getAliasedSymbol(S),T=S.name,O=[{symbol:S,moduleSymbol:R,moduleFileName:void 0,exportKind:3,targetFlags:R.flags,isFromPackageJson:!1}],V=s2e(s,c);return sOe(O,void 0,!1,V,c,s,g,d).fixes.map(ee=>{var re;return{fix:ee,symbolName:T,errorIdentifierText:(re=Gs(h,Ir))==null?void 0:re.text}})}function fGs(s,c){let g=Ir(s)?c.getSymbolAtLocation(s):void 0;if(VAe(g))return g;let{parent:d}=s;if(nI(d)&&d.tagName===s||Yw(d)){let h=c.resolveName(c.getJsxNamespace(d),nI(d)?s:d,111551,!1);if(VAe(h))return h}}function Git(s,c,g,d){if(g.getCompilerOptions().verbatimModuleSyntax&&bGs(s,g)===1)return 3;switch(c){case 0:return 0;case 1:return 1;case 2:return CGs(s,g.getCompilerOptions(),!!d);case 3:return IGs(s,g,!!d);case 4:return 2;default:return pe.assertNever(c)}}function IGs(s,c,g){if(iQ(c.getCompilerOptions()))return 1;let d=o0(c.getCompilerOptions());switch(d){case 2:case 1:case 3:return CN(s.fileName)&&(s.externalModuleIndicator||g)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 101:case 102:case 199:return BQt(s,c)===99?2:3;default:return pe.assertNever(d,`Unexpected moduleKind ${d}`)}}function Rcn({sourceFile:s,program:c,cancellationToken:g,host:d,preferences:h},_,S){let R=c.getTypeChecker(),T=c.getCompilerOptions();return jt(bQt(s,R,_,T),O=>{if(O==="default")return;let V=$L(_),M=s2e(s,c),ee=mGs(O,nU(_),YU(_),g,s,c,S,d,h);return Do(Dt(ee.values(),re=>sOe(re,_.getStart(s),V,M,c,s,d,h).fixes),re=>({fix:re,symbolName:O,errorIdentifierText:_.text,isJsxNamespaceFix:O!==_.text}))})}function Ncn(s,c,g,d){let h=d.getTypeChecker(),_=h.resolveName(g,c,111551,!0);if(!_)return;let S=h.getTypeOnlyAliasDeclaration(_);if(!(!S||ms(S)!==s))return{kind:4,typeOnlyAliasDeclaration:S}}function bQt(s,c,g,d){let h=g.parent;if((nI(h)||dQ(h))&&h.tagName===g&&xnt(d.jsx)){let _=c.getJsxNamespace(s);if(hGs(_,g,c))return!dU(g.text)&&!c.resolveName(g.text,g,111551,!1)?[g.text,_]:[_]}return[g.text]}function hGs(s,c,g){if(dU(c.text))return!0;let d=g.resolveName(s,c,111551,!0);return!d||zt(d.declarations,cN)&&!(d.flags&111551)}function mGs(s,c,g,d,h,_,S,R,T){var O;let V=gl(),M=use(h,T,R),ee=(O=R.getModuleSpecifierCache)==null?void 0:O.call(R),re=VA(Ie=>i5(Ie?R.getPackageJsonAutoImportProvider():_,R));function ge(Ie,_e,Ee,Ne,Te,Ze){let Pe=re(Ze);if(Znt(Te,h,_e,Ie,T,M,Pe,ee)){let Ke=Te.getTypeChecker();V.add(JMt(Ee,Ke).toString(),{symbol:Ee,moduleSymbol:Ie,moduleFileName:_e?.fileName,exportKind:Ne,targetFlags:LC(Ee,Ke).flags,isFromPackageJson:Ze})}}return Lnt(_,R,T,S,(Ie,_e,Ee,Ne)=>{let Te=Ee.getTypeChecker();d.throwIfCancellationRequested();let Ze=Ee.getCompilerOptions(),Pe=LWe(Ie,Te);Pe&&Vcn(Te.getSymbolFlags(Pe.symbol),g)&&VWe(Pe.symbol,Te,Hg(Ze),(et,Ye)=>(c?Ye??et:et)===s)&&ge(Ie,_e,Pe.symbol,Pe.exportKind,Ee,Ne);let Ke=Te.tryGetMemberInModuleExportsAndProperties(s,Ie);Ke&&Vcn(Te.getSymbolFlags(Ke),g)&&ge(Ie,_e,Ke,0,Ee,Ne)}),V}function CGs(s,c,g){let d=iQ(c),h=CN(s.fileName);if(!h&&o0(c)>=5)return d?1:2;if(h)return s.externalModuleIndicator||g?d?1:2:3;for(let _ of s.statements??E)if(Zm(_)&&!af(_.moduleReference))return 3;return d?1:3}function EQt(s,c,g,d,h,_,S){let R,T=xo.ChangeTracker.with(s,O=>{R=_Gs(O,c,g,d,h,_,S)});return gg(Icn,T,R,hcn,Z.Add_all_missing_imports)}function _Gs(s,c,g,d,h,_,S){let R=E1(c,S);switch(d.kind){case 0:return SQt(s,c,d),[Z.Change_0_to_1,g,`${d.namespacePrefix}.${g}`];case 1:return xcn(s,c,d,R),[Z.Change_0_to_1,g,Gcn(d.moduleSpecifier,R)+g];case 2:{let{importClauseOrBindingPattern:T,importKind:O,addAsTypeOnly:V,moduleSpecifier:M}=d;kcn(s,c,T,O===1?{name:g,addAsTypeOnly:V}:void 0,O===0?[{name:g,addAsTypeOnly:V}]:E,void 0,S);let ee=A2(M);return h?[Z.Import_0_from_1,g,ee]:[Z.Update_import_from_0,ee]}case 3:{let{importKind:T,moduleSpecifier:O,addAsTypeOnly:V,useRequire:M,qualification:ee}=d,re=M?Zcn:Fcn,ge=T===1?{name:g,addAsTypeOnly:V}:void 0,Ie=T===0?[{name:g,addAsTypeOnly:V}]:void 0,_e=T===2||T===3?{importKind:T,name:ee?.namespacePrefix||g,addAsTypeOnly:V}:void 0;return gnt(s,c,re(O,R,ge,Ie,_e,_.getCompilerOptions(),S),!0,S),ee&&SQt(s,c,ee),h?[Z.Import_0_from_1,g,O]:[Z.Add_import_from_0,O]}case 4:{let{typeOnlyAliasDeclaration:T}=d,O=yGs(s,T,_,c,S);return O.kind===277?[Z.Remove_type_from_import_of_0_from_1,g,Dcn(O.parent.parent)]:[Z.Remove_type_from_import_declaration_from_0,Dcn(O)]}default:return pe.assertNever(d,`Unexpected fix kind ${d.kind}`)}}function Dcn(s){var c,g;return s.kind===272?((g=Gs((c=Gs(s.moduleReference,MF))==null?void 0:c.expression,CA))==null?void 0:g.text)||s.moduleReference.getText():Ma(s.parent.moduleSpecifier,Lg).text}function yGs(s,c,g,d,h){let _=g.getCompilerOptions(),S=_.verbatimModuleSyntax;switch(c.kind){case 277:if(c.isTypeOnly){if(c.parent.elements.length>1){let T=me.updateImportSpecifier(c,!1,c.propertyName,c.name),{specifierComparer:O}=g5.getNamedImportSpecifierComparerWithDetection(c.parent.parent.parent,h,d),V=g5.getImportSpecifierInsertionIndex(c.parent.elements,T,O);if(V!==c.parent.elements.indexOf(c))return s.delete(d,c),s.insertImportSpecifierAtIndex(d,T,c.parent,V),c}return s.deleteRange(d,{pos:JD(c.getFirstToken()),end:JD(c.propertyName??c.name)}),c}else return pe.assert(c.parent.parent.isTypeOnly),R(c.parent.parent),c.parent.parent;case 274:return R(c),c;case 275:return R(c.parent),c.parent;case 272:return s.deleteRange(d,c.getChildAt(1)),c;default:pe.failBadSyntaxKind(c)}function R(T){var O;if(s.delete(d,Ant(T,d)),!_.allowImportingTsExtensions){let V=JY(T.parent),M=V&&((O=g.getResolvedModuleFromModuleSpecifier(V,d))==null?void 0:O.resolvedModule);if(M?.resolvedUsingTsExtension){let ee=$2(V.text,u1e(V.text,_));s.replaceNode(d,V,me.createStringLiteral(ee))}}if(S){let V=Gs(T.namedBindings,BN);if(V&&V.elements.length>1){g5.getNamedImportSpecifierComparerWithDetection(T.parent,h,d).isSorted!==!1&&c.kind===277&&V.elements.indexOf(c)!==0&&(s.delete(d,c),s.insertImportSpecifierAtIndex(d,c,V,0));for(let ee of V.elements)ee!==c&&!ee.isTypeOnly&&s.insertModifierBefore(d,156,ee)}}}}function kcn(s,c,g,d,h,_,S){var R;if(g.kind===207){if(_&&g.elements.some(M=>_.has(M))){s.replaceNode(c,g,me.createObjectBindingPattern([...g.elements.filter(M=>!_.has(M)),...d?[me.createBindingElement(void 0,"default",d.name)]:E,...h.map(M=>me.createBindingElement(void 0,M.propertyName,M.name))]));return}d&&V(g,d.name,"default");for(let M of h)V(g,M.name,M.propertyName);return}let T=g.isTypeOnly&&zt([d,...h],M=>M?.addAsTypeOnly===4),O=g.namedBindings&&((R=Gs(g.namedBindings,BN))==null?void 0:R.elements);if(d&&(pe.assert(!g.name,"Cannot add a default import to an import clause that already has one"),s.insertNodeAt(c,g.getStart(c),me.createIdentifier(d.name),{suffix:", "})),h.length){let{specifierComparer:M,isSorted:ee}=g5.getNamedImportSpecifierComparerWithDetection(g.parent,S,c),re=bo(h.map(ge=>me.createImportSpecifier((!g.isTypeOnly||T)&&Fit(ge,S),ge.propertyName===void 0?void 0:me.createIdentifier(ge.propertyName),me.createIdentifier(ge.name))),M);if(_)s.replaceNode(c,g.namedBindings,me.updateNamedImports(g.namedBindings,bo([...O.filter(ge=>!_.has(ge)),...re],M)));else if(O?.length&&ee!==!1){let ge=T&&O?me.updateNamedImports(g.namedBindings,Er(O,Ie=>me.updateImportSpecifier(Ie,!0,Ie.propertyName,Ie.name))).elements:O;for(let Ie of re){let _e=g5.getImportSpecifierInsertionIndex(ge,Ie,M);s.insertImportSpecifierAtIndex(c,Ie,g.namedBindings,_e)}}else if(O?.length)for(let ge of re)s.insertNodeInListAfter(c,Ei(O),ge,O);else if(re.length){let ge=me.createNamedImports(re);g.namedBindings?s.replaceNode(c,g.namedBindings,ge):s.insertNodeAfter(c,pe.checkDefined(g.name,"Import clause must have either named imports or a default import"),ge)}}if(T&&(s.delete(c,Ant(g,c)),O))for(let M of O)s.insertModifierBefore(c,156,M);function V(M,ee,re){let ge=me.createBindingElement(void 0,re,ee);M.elements.length?s.insertNodeInListAfter(c,Ei(M.elements),ge):s.replaceNode(c,M,me.createObjectBindingPattern([ge]))}}function SQt(s,c,{namespacePrefix:g,usagePosition:d}){s.insertText(c,d,g+".")}function xcn(s,c,{moduleSpecifier:g,usagePosition:d},h){s.insertText(c,d,Gcn(g,h))}function Gcn(s,c){let g=lnt(c);return`import(${g}${s}${g}).`}function vQt({addAsTypeOnly:s}){return s===2}function Fit(s,c){return vQt(s)||!!c.preferTypeOnlyAutoImports&&s.addAsTypeOnly!==4}function Fcn(s,c,g,d,h,_,S){let R=lpe(s,c),T;if(g!==void 0||d?.length){let O=(!g||vQt(g))&&ue(d,vQt)||(_.verbatimModuleSyntax||S.preferTypeOnlyAutoImports)&&g?.addAsTypeOnly!==4&&!zt(d,V=>V.addAsTypeOnly===4);T=zr(T,$W(g&&me.createIdentifier(g.name),d?.map(V=>me.createImportSpecifier(!O&&Fit(V,S),V.propertyName===void 0?void 0:me.createIdentifier(V.propertyName),me.createIdentifier(V.name))),s,c,O))}if(h){let O=h.importKind===3?me.createImportEqualsDeclaration(void 0,Fit(h,S),me.createIdentifier(h.name),me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(Fit(h,S)?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(h.name))),R,void 0);T=zr(T,O)}return pe.checkDefined(T)}function Zcn(s,c,g,d,h){let _=lpe(s,c),S;if(g||d?.length){let R=d?.map(({name:O,propertyName:V})=>me.createBindingElement(void 0,V,O))||[];g&&R.unshift(me.createBindingElement(void 0,"default",g.name));let T=Lcn(me.createObjectBindingPattern(R),_);S=zr(S,T)}if(h){let R=Lcn(h.name,_);S=zr(S,R)}return pe.checkDefined(S)}function Lcn(s,c){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(typeof s=="string"?me.createIdentifier(s):s,void 0,void 0,me.createCallExpression(me.createIdentifier("require"),void 0,[c]))],2))}function Vcn(s,c){return c===7?!0:c&1?!!(s&111551):c&2?!!(s&788968):c&4?!!(s&1920):!1}function BQt(s,c){return AN(s)?c.getImpliedNodeFormatForEmit(s):HU(s,c.getCompilerOptions())}function bGs(s,c){return AN(s)?c.getEmitModuleFormatOfFile(s):epe(s,c.getCompilerOptions())}var wQt="addMissingConstraint",Wcn=[Z.Type_0_is_not_comparable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.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.code,Z.Property_0_is_incompatible_with_index_signature.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Type_0_does_not_satisfy_the_constraint_1.code];Gg({errorCodes:Wcn,getCodeActions(s){let{sourceFile:c,span:g,program:d,preferences:h,host:_}=s,S=Ocn(d,c,g);if(S===void 0)return;let R=xo.ChangeTracker.with(s,T=>Pcn(T,d,h,_,c,S));return[gg(wQt,R,Z.Add_extends_constraint,wQt,Z.Add_extends_constraint_to_all_type_parameters)]},fixIds:[wQt],getAllCodeActions:s=>{let{program:c,preferences:g,host:d}=s,h=new Set;return nq(xo.ChangeTracker.with(s,_=>{iq(s,Wcn,S=>{let R=Ocn(c,S.file,$d(S.start,S.length));if(R&&Vy(h,id(R.declaration)))return Pcn(_,c,g,d,S.file,R)})}))}});function Ocn(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.This_type_parameter_might_need_an_extends_0_constraint.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=yXt(h.file,$d(h.start,h.length));if(_!==void 0&&(Ir(_)&&Ds(_.parent)&&(_=_.parent),Ds(_))){if(WB(_.parent))return;let S=Jc(c,g.start),R=s.getTypeChecker();return{constraint:SGs(R,S)||EGs(h.messageText),declaration:_,token:S}}}function Pcn(s,c,g,d,h,_){let{declaration:S,constraint:R}=_,T=c.getTypeChecker();if(Xs(R))s.insertText(h,S.name.end,` extends ${R}`);else{let O=Hg(c.getCompilerOptions()),V=Ise({program:c,host:d}),M=kQ(h,c,g,d),ee=jit(T,M,R,void 0,O,void 0,void 0,V);ee&&(s.replaceNode(h,S,me.updateTypeParameterDeclaration(S,void 0,S.name,ee,S.default)),M.writeFixes(s))}}function EGs(s){let[,c]=kN(s,` -`,0).match(/`extends (.*)`/)||[];return c}function SGs(s,c){return uc(c.parent)?s.getTypeArgumentConstraint(c.parent):(un(c)?s.getContextualType(c):void 0)||s.getTypeAtLocation(c)}var Mcn="fixOverrideModifier",o2e="fixAddOverrideModifier",aOe="fixRemoveOverrideModifier",Hcn=[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],Ycn={[Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_override_modifier},[Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers}};Gg({errorCodes:Hcn,getCodeActions:function(c){let{errorCode:g,span:d}=c,h=Ycn[g];if(!h)return E;let{descriptions:_,fixId:S,fixAllDescriptions:R}=h,T=xo.ChangeTracker.with(c,O=>Qcn(O,c,g,d.start));return[XYt(Mcn,T,_,S,R)]},fixIds:[Mcn,o2e,aOe],getAllCodeActions:s=>Jd(s,Hcn,(c,g)=>{let{code:d,start:h}=g,_=Ycn[d];!_||_.fixId!==s.fixId||Qcn(c,s,d,h)})});function Qcn(s,c,g,d){switch(g){case Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return vGs(s,c.sourceFile,d);case Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return BGs(s,c.sourceFile,d);default:pe.fail("Unexpected error code: "+g)}}function vGs(s,c,g){let d=Jcn(c,g);if(s0(c)){s.addJSDocTags(c,d,[me.createJSDocOverrideTag(me.createIdentifier("override"))]);return}let h=d.modifiers||E,_=de(h,Ge),S=de(h,Xe),R=de(h,M=>$rt(M.kind)),T=be(h,So),O=S?S.end:_?_.end:R?R.end:T?Yu(c.text,T.end):d.getStart(c),V=R||_||S?{prefix:" "}:{suffix:" "};s.insertModifierAt(c,O,164,V)}function BGs(s,c,g){let d=Jcn(c,g);if(s0(c)){s.filterJSDocTags(c,d,dC(b9e));return}let h=de(d.modifiers,St);pe.assertIsDefined(h),s.deleteModifier(c,h)}function Xcn(s){switch(s.kind){case 177:case 173:case 175:case 178:case 179:return!0;case 170:return We(s,s.parent);default:return!1}}function Jcn(s,c){let g=Jc(s,c),d=ji(g,h=>xa(h)?"quit":Xcn(h));return pe.assert(d&&Xcn(d)),d}var TQt="fixNoPropertyAccessFromIndexSignature",Ucn=[Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];Gg({errorCodes:Ucn,fixIds:[TQt],getCodeActions(s){let{sourceFile:c,span:g,preferences:d}=s,h=jcn(c,g.start),_=xo.ChangeTracker.with(s,S=>Kcn(S,s.sourceFile,h,d));return[gg(TQt,_,[Z.Use_element_access_for_0,h.name.text],TQt,Z.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:s=>Jd(s,Ucn,(c,g)=>Kcn(c,g.file,jcn(g.file,g.start),s.preferences))});function Kcn(s,c,g,d){let h=E1(c,d),_=me.createStringLiteral(g.name.text,h===0);s.replaceNode(c,g,Nx(g)?me.createElementAccessChain(g.expression,g.questionDotToken,_):me.createElementAccessExpression(g.expression,_))}function jcn(s,c){return Ma(Jc(s,c).parent,jo)}var RQt="fixImplicitThis",zcn=[Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];Gg({errorCodes:zcn,getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_,S=xo.ChangeTracker.with(c,R=>{_=qcn(R,g,h.start,d.getTypeChecker())});return _?[gg(RQt,S,_,RQt,Z.Fix_all_implicit_this_errors)]:E},fixIds:[RQt],getAllCodeActions:s=>Jd(s,zcn,(c,g)=>{qcn(c,g.file,g.start,s.program.getTypeChecker())})});function qcn(s,c,g,d){let h=Jc(c,g);if(!tse(h))return;let _=i0(h,!1,!1);if(!(!ah(_)&&!jA(_))&&!al(i0(_,!1,!1))){let S=pe.checkDefined(ep(_,100,c)),{name:R}=_,T=pe.checkDefined(_.body);return jA(_)?R&&zp.Core.isSymbolReferencedInFile(R,d,c,T)?void 0:(s.delete(c,S),R&&s.delete(c,R),s.insertText(c,T.pos," =>"),[Z.Convert_function_expression_0_to_arrow_function,R?R.text:Snt]):(s.replaceNode(c,S,me.createToken(87)),s.insertText(c,R.end," = "),s.insertText(c,T.pos," =>"),[Z.Convert_function_declaration_0_to_arrow_function,R.text])}}var NQt="fixImportNonExportedMember",$cn=[Z.Module_0_declares_1_locally_but_it_is_not_exported.code];Gg({errorCodes:$cn,fixIds:[NQt],getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=eln(c,g.start,d);if(h===void 0)return;let _=xo.ChangeTracker.with(s,S=>wGs(S,d,h));return[gg(NQt,_,[Z.Export_0_from_module_1,h.exportName.node.text,h.moduleSpecifier],NQt,Z.Export_all_referenced_locals)]},getAllCodeActions(s){let{program:c}=s;return nq(xo.ChangeTracker.with(s,g=>{let d=new Map;iq(s,$cn,h=>{let _=eln(h.file,h.start,c);if(_===void 0)return;let{exportName:S,node:R,moduleSourceFile:T}=_;if(Zit(T,S.isTypeOnly)===void 0&&lie(R))g.insertExportModifier(T,R);else{let O=d.get(T)||{typeOnlyExports:[],exports:[]};S.isTypeOnly?O.typeOnlyExports.push(S):O.exports.push(S),d.set(T,O)}}),d.forEach((h,_)=>{let S=Zit(_,!0);S&&S.isTypeOnly?(DQt(g,c,_,h.typeOnlyExports,S),DQt(g,c,_,h.exports,Zit(_,!1))):DQt(g,c,_,[...h.exports,...h.typeOnlyExports],S)})}))}});function eln(s,c,g){var d,h;let _=Jc(s,c);if(Ir(_)){let S=ji(_,Yf);if(S===void 0)return;let R=Lg(S.moduleSpecifier)?S.moduleSpecifier:void 0;if(R===void 0)return;let T=(d=g.getResolvedModuleFromModuleSpecifier(R,s))==null?void 0:d.resolvedModule;if(T===void 0)return;let O=g.getSourceFile(T.resolvedFileName);if(O===void 0||gse(g,O))return;let V=O.symbol,M=(h=Gs(V.valueDeclaration,HI))==null?void 0:h.locals;if(M===void 0)return;let ee=M.get(_.escapedText);if(ee===void 0)return;let re=TGs(ee);return re===void 0?void 0:{exportName:{node:_,isTypeOnly:oQ(re)},node:re,moduleSourceFile:O,moduleSpecifier:R.text}}}function wGs(s,c,{exportName:g,node:d,moduleSourceFile:h}){let _=Zit(h,g.isTypeOnly);_?tln(s,c,h,_,[g]):lie(d)?s.insertExportModifier(h,d):rln(s,c,h,[g])}function DQt(s,c,g,d,h){B(d)&&(h?tln(s,c,g,h,d):rln(s,c,g,d))}function Zit(s,c){let g=d=>Vh(d)&&(c&&d.isTypeOnly||!d.isTypeOnly);return be(s.statements,g)}function tln(s,c,g,d,h){let _=d.exportClause&&bv(d.exportClause)?d.exportClause.elements:me.createNodeArray([]),S=!d.isTypeOnly&&!!(lS(c.getCompilerOptions())||de(_,R=>R.isTypeOnly));s.replaceNode(g,d,me.updateExportDeclaration(d,d.modifiers,d.isTypeOnly,me.createNamedExports(me.createNodeArray([..._,...nln(h,S)],_.hasTrailingComma)),d.moduleSpecifier,d.attributes))}function rln(s,c,g,d){s.insertNodeAtEndOfScope(g,g,me.createExportDeclaration(void 0,!1,me.createNamedExports(nln(d,lS(c.getCompilerOptions()))),void 0,void 0))}function nln(s,c){return me.createNodeArray(lt(s,g=>me.createExportSpecifier(c&&g.isTypeOnly,void 0,g.node)))}function TGs(s){if(s.valueDeclaration===void 0)return Nc(s.declarations);let c=s.valueDeclaration,g=nc(c)?Gs(c.parent.parent,Eh):void 0;return g&&B(g.declarationList.declarations)===1?g:c}var kQt="fixIncorrectNamedTupleSyntax",RGs=[Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];Gg({errorCodes:RGs,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=NGs(g,d.start),_=xo.ChangeTracker.with(c,S=>DGs(S,g,h));return[gg(kQt,_,Z.Move_labeled_tuple_element_modifiers_to_labels,kQt,Z.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[kQt]});function NGs(s,c){let g=Jc(s,c);return ji(g,d=>d.kind===203)}function DGs(s,c,g){if(!g)return;let d=g.type,h=!1,_=!1;for(;d.kind===191||d.kind===192||d.kind===197;)d.kind===191?h=!0:d.kind===192&&(_=!0),d=d.type;let S=me.updateNamedTupleMember(g,g.dotDotDotToken||(_?me.createToken(26):void 0),g.name,g.questionToken||(h?me.createToken(58):void 0),d);S!==g&&s.replaceNode(c,g,S)}var iln="fixSpelling",sln=[Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Could_not_find_name_0_Did_you_mean_1.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z._0_has_no_exported_member_named_1_Did_you_mean_2.code,Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.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.code,Z.No_overload_matches_this_call.code,Z.Type_0_is_not_assignable_to_type_1.code];Gg({errorCodes:sln,getCodeActions(s){let{sourceFile:c,errorCode:g}=s,d=oln(c,s.span.start,s,g);if(!d)return;let{node:h,suggestedSymbol:_}=d,S=Hg(s.host.getCompilationSettings()),R=xo.ChangeTracker.with(s,T=>aln(T,c,h,_,S));return[gg("spelling",R,[Z.Change_spelling_to_0,of(_)],iln,Z.Fix_all_detected_spelling_errors)]},fixIds:[iln],getAllCodeActions:s=>Jd(s,sln,(c,g)=>{let d=oln(g.file,g.start,s,g.code),h=Hg(s.host.getCompilationSettings());d&&aln(c,s.sourceFile,d.node,d.suggestedSymbol,h)})});function oln(s,c,g,d){let h=Jc(s,c),_=h.parent;if((d===Z.No_overload_matches_this_call.code||d===Z.Type_0_is_not_assignable_to_type_1.code)&&!TN(_))return;let S=g.program.getTypeChecker(),R;if(jo(_)&&_.name===h){pe.assert(vw(h),"Expected an identifier for spelling (property access)");let T=S.getTypeAtLocation(_.expression);_.flags&64&&(T=S.getNonNullableType(T)),R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(po(_)&&_.operatorToken.kind===103&&_.left===h&&p(h)){let T=S.getTypeAtLocation(_.right);R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(zi(_)&&_.right===h){let T=S.getSymbolAtLocation(_.left);T&&T.flags&1536&&(R=S.getSuggestedSymbolForNonexistentModule(_.right,T))}else if(Ay(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for spelling (import)");let T=ji(h,Yf),O=xGs(g,T,s);O&&O.symbol&&(R=S.getSuggestedSymbolForNonexistentModule(h,O.symbol))}else if(TN(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for JSX attribute");let T=ji(h,nI),O=S.getContextualTypeForArgumentAtIndex(T,0);R=S.getSuggestedSymbolForNonexistentJSXAttribute(h,O)}else if(Mne(_)&&MI(_)&&_.name===h){let T=ji(h,xa),O=T?DB(T):void 0,V=O?S.getTypeAtLocation(O):void 0;V&&(R=S.getSuggestedSymbolForNonexistentClassMember(Fp(h),V))}else{let T=YU(h),O=Fp(h);pe.assert(O!==void 0,"name should be defined"),R=S.getSuggestedSymbolForNonexistentSymbol(h,O,kGs(T))}return R===void 0?void 0:{node:h,suggestedSymbol:R}}function aln(s,c,g,d,h){let _=of(d);if(!qh(_,h)&&jo(g.parent)){let S=d.valueDeclaration;S&&sh(S)&&p(S.name)?s.replaceNode(c,g,me.createIdentifier(_)):s.replaceNode(c,g.parent,me.createElementAccessExpression(g.parent.expression,me.createStringLiteral(_)))}else s.replaceNode(c,g,me.createIdentifier(_))}function kGs(s){let c=0;return s&4&&(c|=1920),s&2&&(c|=788968),s&1&&(c|=111551),c}function xGs(s,c,g){var d;if(!c||!CA(c.moduleSpecifier))return;let h=(d=s.program.getResolvedModuleFromModuleSpecifier(c.moduleSpecifier,g))==null?void 0:d.resolvedModule;if(h)return s.program.getSourceFile(h.resolvedFileName)}var xQt="returnValueCorrect",GQt="fixAddReturnStatement",FQt="fixRemoveBracesFromArrowFunctionBody",ZQt="fixWrapTheBlockWithParen",cln=[Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];Gg({errorCodes:cln,fixIds:[GQt,FQt,ZQt],getCodeActions:function(c){let{program:g,sourceFile:d,span:{start:h},errorCode:_}=c,S=uln(g.getTypeChecker(),d,h,_);if(S)return S.kind===0?Ft([FGs(c,S.expression,S.statement)],uA(S.declaration)?ZGs(c,S.declaration,S.expression,S.commentSource):void 0):[LGs(c,S.declaration,S.expression)]},getAllCodeActions:s=>Jd(s,cln,(c,g)=>{let d=uln(s.program.getTypeChecker(),g.file,g.start,g.code);if(d)switch(s.fixId){case GQt:gln(c,g.file,d.expression,d.statement);break;case FQt:if(!uA(d.declaration))return;Aln(c,g.file,d.declaration,d.expression,d.commentSource,!1);break;case ZQt:if(!uA(d.declaration))return;dln(c,g.file,d.declaration,d.expression);break;default:pe.fail(JSON.stringify(s.fixId))}})});function lln(s,c,g){let d=s.createSymbol(4,c.escapedText);d.links.type=s.getTypeAtLocation(g);let h=$u([d]);return s.createAnonymousType(void 0,h,[],[],[])}function LQt(s,c,g,d){if(!c.body||!eg(c.body)||B(c.body.statements)!==1)return;let h=ma(c.body.statements);if(OC(h)&&VQt(s,c,s.getTypeAtLocation(h.expression),g,d))return{declaration:c,kind:0,expression:h.expression,statement:h,commentSource:h.expression};if(HW(h)&&OC(h.statement)){let _=me.createObjectLiteralExpression([me.createPropertyAssignment(h.label,h.statement.expression)]),S=lln(s,h.label,h.statement.expression);if(VQt(s,c,S,g,d))return uA(c)?{declaration:c,kind:1,expression:_,statement:h,commentSource:h.statement.expression}:{declaration:c,kind:0,expression:_,statement:h,commentSource:h.statement.expression}}else if(eg(h)&&B(h.statements)===1){let _=ma(h.statements);if(HW(_)&&OC(_.statement)){let S=me.createObjectLiteralExpression([me.createPropertyAssignment(_.label,_.statement.expression)]),R=lln(s,_.label,_.statement.expression);if(VQt(s,c,R,g,d))return{declaration:c,kind:0,expression:S,statement:h,commentSource:_}}}}function VQt(s,c,g,d,h){if(h){let _=s.getSignatureFromDeclaration(c);if(_){Ga(c,1024)&&(g=s.createPromiseType(g));let S=s.createSignature(c,_.typeParameters,_.thisParameter,_.parameters,g,void 0,_.minArgumentCount,_.flags);g=s.createAnonymousType(void 0,$u(),[S],[],[])}else g=s.getAnyType()}return s.isTypeAssignableTo(g,d)}function uln(s,c,g,d){let h=Jc(c,g);if(!h.parent)return;let _=ji(h.parent,Gd);switch(d){case Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!_||!_.body||!_.type||!uy(_.type,h)?void 0:LQt(s,_,s.getTypeFromTypeNode(_.type),!1);case Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!_||!Ll(_.parent)||!_.body)return;let S=_.parent.arguments.indexOf(_);if(S===-1)return;let R=s.getContextualTypeForArgumentAtIndex(_.parent,S);return R?LQt(s,_,R,!0):void 0;case Z.Type_0_is_not_assignable_to_type_1.code:if(!UT(h)||!N7(h.parent)&&!TN(h.parent))return;let T=GGs(h.parent);return!T||!Gd(T)||!T.body?void 0:LQt(s,T,s.getTypeAtLocation(h.parent),!0)}}function GGs(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:return s.initializer;case 292:return s.initializer&&(Tie(s.initializer)?s.initializer.expression:void 0);case 305:case 172:case 307:case 349:case 342:return}}function gln(s,c,g,d){Oy(g);let h=P1e(c);s.replaceNode(c,d,me.createReturnStatement(g),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,suffix:h?";":void 0})}function Aln(s,c,g,d,h,_){let S=_||EWe(d)?me.createParenthesizedExpression(d):d;Oy(h),XU(h,S),s.replaceNode(c,g.body,S)}function dln(s,c,g,d){s.replaceNode(c,g.body,me.createParenthesizedExpression(d))}function FGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>gln(h,s.sourceFile,c,g));return gg(xQt,d,Z.Add_a_return_statement,GQt,Z.Add_all_missing_return_statement)}function ZGs(s,c,g,d){let h=xo.ChangeTracker.with(s,_=>Aln(_,s.sourceFile,c,g,d,!1));return gg(xQt,h,Z.Remove_braces_from_arrow_function_body,FQt,Z.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function LGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>dln(h,s.sourceFile,c,g));return gg(xQt,d,Z.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,ZQt,Z.Wrap_all_object_literal_with_parentheses)}var l5="fixMissingMember",Lit="fixMissingProperties",Vit="fixMissingAttributes",Wit="fixMissingFunctionDeclaration",pln=[Z.Property_0_does_not_exist_on_type_1.code,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_is_missing_in_type_1_but_required_in_type_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Cannot_find_name_0.code,Z.Type_0_does_not_satisfy_the_expected_type_1.code];Gg({errorCodes:pln,getCodeActions(s){let c=s.program.getTypeChecker(),g=fln(s.sourceFile,s.span.start,s.errorCode,c,s.program);if(g){if(g.kind===3){let d=xo.ChangeTracker.with(s,h=>vln(h,s,g));return[gg(Lit,d,Z.Add_missing_properties,Lit,Z.Add_all_missing_properties)]}if(g.kind===4){let d=xo.ChangeTracker.with(s,h=>Sln(h,s,g));return[gg(Vit,d,Z.Add_missing_attributes,Vit,Z.Add_all_missing_attributes)]}if(g.kind===2||g.kind===5){let d=xo.ChangeTracker.with(s,h=>Eln(h,s,g));return[gg(Wit,d,[Z.Add_missing_function_declaration_0,g.token.text],Wit,Z.Add_all_missing_function_declarations)]}if(g.kind===1){let d=xo.ChangeTracker.with(s,h=>bln(h,s.program.getTypeChecker(),g));return[gg(l5,d,[Z.Add_missing_enum_member_0,g.token.text],l5,Z.Add_all_missing_members)]}return Nn(MGs(s,g),VGs(s,g))}},fixIds:[l5,Wit,Lit,Vit],getAllCodeActions:s=>{let{program:c,fixId:g}=s,d=c.getTypeChecker(),h=new Set,_=new Map;return nq(xo.ChangeTracker.with(s,S=>{iq(s,pln,R=>{let T=fln(R.file,R.start,R.code,d,s.program);if(T===void 0)return;let O=id(T.parentDeclaration)+"#"+(T.kind===3?T.identifier||id(T.token):T.token.text);if(Vy(h,O)){if(g===Wit&&(T.kind===2||T.kind===5))Eln(S,s,T);else if(g===Lit&&T.kind===3)vln(S,s,T);else if(g===Vit&&T.kind===4)Sln(S,s,T);else if(T.kind===1&&bln(S,d,T),T.kind===0){let{parentDeclaration:V,token:M}=T,ee=cr(_,V,()=>[]);ee.some(re=>re.token.text===M.text)||ee.push(T)}}}),_.forEach((R,T)=>{let O=bh(T)?void 0:JGs(T,d);for(let V of R){if(O?.some(Ee=>{let Ne=_.get(Ee);return!!Ne&&Ne.some(({token:Te})=>Te.text===V.token.text)}))continue;let{parentDeclaration:M,declSourceFile:ee,modifierFlags:re,token:ge,call:Ie,isJSFile:_e}=V;if(Ie&&!p(ge))yln(s,S,Ie,ge,re&256,M,ee);else if(_e&&!d_(M)&&!bh(M))Iln(S,ee,M,ge,!!(re&256));else{let Ee=mln(d,M,ge);Cln(S,ee,M,ge.text,Ee,re&256)}}})}))}});function fln(s,c,g,d,h){var _,S;let R=Jc(s,c),T=R.parent;if(g===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(R.kind===19&&ag(T)&&Ll(T.parent)))return;let ge=Se(T.parent.arguments,Ne=>Ne===T);if(ge<0)return;let Ie=d.getResolvedSignature(T.parent);if(!(Ie&&Ie.declaration&&Ie.parameters[ge]))return;let _e=Ie.parameters[ge].valueDeclaration;if(!(_e&&Si(_e)&&Ir(_e.name)))return;let Ee=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),d.getParameterType(Ie,ge).getNonNullableType(),!1,!1));return B(Ee)?{kind:3,token:_e.name,identifier:_e.name.text,properties:Ee,parentDeclaration:T}:void 0}if(R.kind===19||Xg(T)||C2(T)){let ge=(Xg(T)||C2(T))&&T.expression?T.expression:T;if(ag(ge)){let Ie=Xg(T)?d.getTypeFromTypeNode(T.type):d.getContextualType(ge)||d.getTypeAtLocation(ge),_e=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),Ie.getNonNullableType(),!1,!1));return B(_e)?{kind:3,token:T,identifier:void 0,properties:_e,parentDeclaration:ge,indentation:C2(ge.parent)||Qd(ge.parent)?0:void 0}:void 0}}if(!vw(R))return;if(Ir(R)&&QT(T)&&T.initializer&&ag(T.initializer)){let ge=(_=d.getContextualType(R)||d.getTypeAtLocation(R))==null?void 0:_.getNonNullableType(),Ie=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T.initializer),ge,!1,!1));return B(Ie)?{kind:3,token:R,identifier:R.text,properties:Ie,parentDeclaration:T.initializer}:void 0}if(Ir(R)&&nI(R.parent)){let ge=Hg(h.getCompilerOptions()),Ie=YGs(d,ge,R.parent);return B(Ie)?{kind:4,token:R,attributes:Ie,parentDeclaration:R.parent}:void 0}if(Ir(R)){let ge=(S=d.getContextualType(R))==null?void 0:S.getNonNullableType();if(ge&&la(ge)&16){let Ie=Nc(d.getSignaturesOfType(ge,0));return Ie===void 0?void 0:{kind:5,token:R,signature:Ie,sourceFile:s,parentDeclaration:Bln(R)}}if(Ll(T)&&T.expression===R)return{kind:2,token:R,call:T,sourceFile:s,modifierFlags:0,parentDeclaration:Bln(R)}}if(!jo(T))return;let O=snt(d.getTypeAtLocation(T.expression)),V=O.symbol;if(!V||!V.declarations)return;if(Ir(R)&&Ll(T.parent)){let ge=de(V.declarations,Lh),Ie=ge?.getSourceFile();if(ge&&Ie&&!gse(h,Ie))return{kind:2,token:R,call:T.parent,sourceFile:Ie,modifierFlags:32,parentDeclaration:ge};let _e=de(V.declarations,al);if(s.commonJsModuleIndicator)return;if(_e&&!gse(h,_e))return{kind:2,token:R,call:T.parent,sourceFile:_e,modifierFlags:32,parentDeclaration:_e}}let M=de(V.declarations,xa);if(!M&&p(R))return;let ee=M||de(V.declarations,ge=>d_(ge)||bh(ge));if(ee&&!gse(h,ee.getSourceFile())){let ge=!bh(ee)&&(O.target||O)!==d.getDeclaredTypeOfSymbol(V);if(ge&&(p(R)||d_(ee)))return;let Ie=ee.getSourceFile(),_e=bh(ee)?0:(ge?256:0)|(knt(R.text)?2:0),Ee=s0(Ie),Ne=Gs(T.parent,Ll);return{kind:0,token:R,call:Ne,modifierFlags:_e,parentDeclaration:ee,declSourceFile:Ie,isJSFile:Ee}}let re=de(V.declarations,Q3);if(re&&!(O.flags&1056)&&!p(R)&&!gse(h,re.getSourceFile()))return{kind:1,token:R,parentDeclaration:re}}function VGs(s,c){return c.isJSFile?K_(WGs(s,c)):OGs(s,c)}function WGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){if(d_(c)||bh(c))return;let _=xo.ChangeTracker.with(s,R=>Iln(R,g,c,h,!!(d&256)));if(_.length===0)return;let S=d&256?Z.Initialize_static_property_0:p(h)?Z.Declare_a_private_field_named_0:Z.Initialize_property_0_in_the_constructor;return gg(l5,_,[S,h.text],l5,Z.Add_all_missing_members)}function Iln(s,c,g,d,h){let _=d.text;if(h){if(g.kind===232)return;let S=g.name.getText(),R=hln(me.createIdentifier(S),_);s.insertNodeAfter(c,g,R)}else if(p(d)){let S=me.createPropertyDeclaration(void 0,_,void 0,void 0,void 0),R=_ln(g);R?s.insertNodeAfter(c,R,S):s.insertMemberAtStart(c,g,S)}else{let S=pN(g);if(!S)return;let R=hln(me.createThis(),_);s.insertNodeAtConstructorEnd(c,S,R)}}function hln(s,c){return me.createExpressionStatement(me.createAssignment(me.createPropertyAccessExpression(s,c),oq()))}function OGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){let _=h.text,S=d&256,R=mln(s.program.getTypeChecker(),c,h),T=V=>xo.ChangeTracker.with(s,M=>Cln(M,g,c,_,R,V)),O=[gg(l5,T(d&256),[S?Z.Declare_static_property_0:Z.Declare_property_0,_],l5,Z.Add_all_missing_members)];return S||p(h)||(d&2&&O.unshift(uR(l5,T(2),[Z.Declare_private_property_0,_])),O.push(PGs(s,g,c,h.text,R))),O}function mln(s,c,g){let d;if(g.parent.parent.kind===227){let h=g.parent.parent,_=g.parent===h.left?h.right:h.left,S=s.getWidenedType(s.getBaseTypeOfLiteralType(s.getTypeAtLocation(_)));d=s.typeToTypeNode(S,c,1,8)}else{let h=s.getContextualType(g.parent);d=h?s.typeToTypeNode(h,void 0,1,8):void 0}return d||me.createKeywordTypeNode(133)}function Cln(s,c,g,d,h,_){let S=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,R=xa(g)?me.createPropertyDeclaration(S,d,void 0,h,void 0):me.createPropertySignature(void 0,d,void 0,h),T=_ln(g);T?s.insertNodeAfter(c,T,R):s.insertMemberAtStart(c,g,R)}function _ln(s){let c;for(let g of s.members){if(!pi(g))break;c=g}return c}function PGs(s,c,g,d,h){let _=me.createKeywordTypeNode(154),S=me.createParameterDeclaration(void 0,void 0,"x",void 0,_,void 0),R=me.createIndexSignature(void 0,[S],h),T=xo.ChangeTracker.with(s,O=>O.insertMemberAtStart(c,g,R));return uR(l5,T,[Z.Add_index_signature_for_property_0,d])}function MGs(s,c){let{parentDeclaration:g,declSourceFile:d,modifierFlags:h,token:_,call:S}=c;if(S===void 0)return;let R=_.text,T=V=>xo.ChangeTracker.with(s,M=>yln(s,M,S,_,V,g,d)),O=[gg(l5,T(h&256),[h&256?Z.Declare_static_method_0:Z.Declare_method_0,R],l5,Z.Add_all_missing_members)];return h&2&&O.unshift(uR(l5,T(2),[Z.Declare_private_method_0,R])),O}function yln(s,c,g,d,h,_,S){let R=kQ(S,s.program,s.preferences,s.host),T=xa(_)?175:174,O=pXt(T,s,R,g,d,h,_),V=QGs(_,g);V?c.insertNodeAfter(S,V,O):c.insertMemberAtStart(S,_,O),R.writeFixes(c)}function bln(s,c,{token:g,parentDeclaration:d}){let h=zt(d.members,T=>{let O=c.getTypeAtLocation(T);return!!(O&&O.flags&402653316)}),_=d.getSourceFile(),S=me.createEnumMember(g,h?me.createStringLiteral(g.text):void 0),R=li(d.members);R?s.insertNodeInListAfter(_,R,S,d.members):s.insertMemberAtStart(_,d,S)}function Eln(s,c,g){let d=E1(c.sourceFile,c.preferences),h=kQ(c.sourceFile,c.program,c.preferences,c.host),_=g.kind===2?pXt(263,c,h,g.call,Vo(g.token),g.modifierFlags,g.parentDeclaration):Kit(263,c,d,g.signature,lOe(Z.Function_not_implemented.message,d),g.token,void 0,void 0,void 0,h);_===void 0&&pe.fail("fixMissingFunctionDeclaration codefix got unexpected error."),C2(g.parentDeclaration)?s.insertNodeBefore(g.sourceFile,g.parentDeclaration,_,!0):s.insertNodeAtEndOfScope(g.sourceFile,g.parentDeclaration,_),h.writeFixes(s)}function Sln(s,c,g){let d=kQ(c.sourceFile,c.program,c.preferences,c.host),h=E1(c.sourceFile,c.preferences),_=c.program.getTypeChecker(),S=g.parentDeclaration.attributes,R=zt(S.properties,Fz),T=lt(g.attributes,M=>{let ee=Oit(c,_,d,h,_.getTypeOfSymbol(M),g.parentDeclaration),re=me.createIdentifier(M.name),ge=me.createJsxAttribute(re,me.createJsxExpression(void 0,ee));return UA(re,ge),ge}),O=me.createJsxAttributes(R?[...T,...S.properties]:[...S.properties,...T]),V={prefix:S.pos===S.end?" ":void 0};s.replaceNode(c.sourceFile,S,O,V),d.writeFixes(s)}function vln(s,c,g){let d=kQ(c.sourceFile,c.program,c.preferences,c.host),h=E1(c.sourceFile,c.preferences),_=Hg(c.program.getCompilerOptions()),S=c.program.getTypeChecker(),R=lt(g.properties,O=>{let V=Oit(c,S,d,h,S.getTypeOfSymbol(O),g.parentDeclaration);return me.createPropertyAssignment(XGs(O,_,h,S),V)}),T={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,indentation:g.indentation};s.replaceNode(c.sourceFile,g.parentDeclaration,me.createObjectLiteralExpression([...g.parentDeclaration.properties,...R],!0),T),d.writeFixes(s)}function Oit(s,c,g,d,h,_){if(h.flags&3)return oq();if(h.flags&134217732)return me.createStringLiteral("",d===0);if(h.flags&8)return me.createNumericLiteral(0);if(h.flags&64)return me.createBigIntLiteral("0n");if(h.flags&16)return me.createFalse();if(h.flags&1056){let S=h.symbol.exports?sA(h.symbol.exports.values()):h.symbol,R=h.symbol.parent&&h.symbol.parent.flags&256?h.symbol.parent:h.symbol,T=c.symbolToExpression(R,111551,void 0,64);return S===void 0||T===void 0?me.createNumericLiteral(0):me.createPropertyAccessExpression(T,c.symbolToString(S))}if(h.flags&256)return me.createNumericLiteral(h.value);if(h.flags&2048)return me.createBigIntLiteral(h.value);if(h.flags&128)return me.createStringLiteral(h.value,d===0);if(h.flags&512)return h===c.getFalseType()||h===c.getFalseType(!0)?me.createFalse():me.createTrue();if(h.flags&65536)return me.createNull();if(h.flags&1048576)return J(h.types,R=>Oit(s,c,g,d,R,_))??oq();if(c.isArrayLikeType(h))return me.createArrayLiteralExpression();if(HGs(h)){let S=lt(c.getPropertiesOfType(h),R=>{let T=Oit(s,c,g,d,c.getTypeOfSymbol(R),_);return me.createPropertyAssignment(R.name,T)});return me.createObjectLiteralExpression(S,!0)}if(la(h)&16){if(de(h.symbol.declarations||E,Qp(F_,Il,gu))===void 0)return oq();let R=c.getSignaturesOfType(h,0);return R===void 0?oq():Kit(219,s,d,R[0],lOe(Z.Function_not_implemented.message,d),void 0,void 0,void 0,_,g)??oq()}if(la(h)&1){let S=hN(h.symbol);if(S===void 0||FW(S))return oq();let R=pN(S);return R&&B(R.parameters)?oq():me.createNewExpression(me.createIdentifier(h.symbol.name),void 0,void 0)}return oq()}function oq(){return me.createIdentifier("undefined")}function HGs(s){return s.flags&524288&&(la(s)&128||s.symbol&&Gs(Ws(s.symbol.declarations),bh))}function YGs(s,c,g){let d=s.getContextualType(g.attributes);if(d===void 0)return E;let h=d.getProperties();if(!B(h))return E;let _=new Set;for(let S of g.attributes.properties)if(TN(S)&&_.add(bz(S.name)),Fz(S)){let R=s.getTypeAtLocation(S.expression);for(let T of R.getProperties())_.add(T.escapedName)}return Le(h,S=>qh(S.name,c,1)&&!(S.flags&16777216||aI(S)&48||_.has(S.escapedName)))}function QGs(s,c){if(bh(s))return;let g=ji(c,d=>gu(d)||Tc(d));return g&&g.parent===s?g:void 0}function XGs(s,c,g,d){if(ww(s)){let h=d.symbolToNode(s,111551,void 0,void 0,1);if(h&&Un(h))return h}return cie(s.name,c,g===0,!1,!1)}function Bln(s){if(ji(s,Tie)){let c=ji(s.parent,C2);if(c)return c}return ms(s)}function JGs(s,c){let g=[];for(;s;){let d=JL(s),h=d&&c.getSymbolAtLocation(d.expression);if(!h)break;let _=h.flags&2097152?c.getAliasedSymbol(h):h,S=_.declarations&&de(_.declarations,xa);if(!S)break;g.push(S),s=S}return g}var WQt="addMissingNewOperator",wln=[Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];Gg({errorCodes:wln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=xo.ChangeTracker.with(s,h=>Tln(h,c,g));return[gg(WQt,d,Z.Add_missing_new_operator_to_call,WQt,Z.Add_missing_new_operator_to_all_calls)]},fixIds:[WQt],getAllCodeActions:s=>Jd(s,wln,(c,g)=>Tln(c,s.sourceFile,g))});function Tln(s,c,g){let d=Ma(UGs(c,g),Ll),h=me.createNewExpression(d.expression,d.typeArguments,d.arguments);s.replaceNode(c,d,h)}function UGs(s,c){let g=Jc(s,c.start),d=Rs(c);for(;g.endHit(R,s.program,s.preferences,s.host,d,h)),[B(h)>1?Z.Add_missing_parameters_to_0:Z.Add_missing_parameter_to_0,g],Pit,Z.Add_all_missing_parameters)),B(_)&&Ft(S,gg(Mit,xo.ChangeTracker.with(s,R=>Hit(R,s.program,s.preferences,s.host,d,_)),[B(_)>1?Z.Add_optional_parameters_to_0:Z.Add_optional_parameter_to_0,g],Mit,Z.Add_all_optional_parameters)),S},getAllCodeActions:s=>Jd(s,Rln,(c,g)=>{let d=Nln(s.sourceFile,s.program,g.start);if(d){let{declarations:h,newParameters:_,newOptionalParameters:S}=d;s.fixId===Pit&&Hit(c,s.program,s.preferences,s.host,h,_),s.fixId===Mit&&Hit(c,s.program,s.preferences,s.host,h,S)}})});function Nln(s,c,g){let d=Jc(s,g),h=ji(d,Ll);if(h===void 0||B(h.arguments)===0)return;let _=c.getTypeChecker(),S=_.getTypeAtLocation(h.expression),R=Le(S.symbol.declarations,Dln);if(R===void 0)return;let T=li(R);if(T===void 0||T.body===void 0||gse(c,T.getSourceFile()))return;let O=KGs(T);if(O===void 0)return;let V=[],M=[],ee=B(T.parameters),re=B(h.arguments);if(ee>re)return;let ge=[T,...zGs(T,R)];for(let Ie=0,_e=0,Ee=0;Ie{let T=ms(R),O=kQ(T,c,g,d);B(R.parameters)?s.replaceNodeRangeWithNodes(T,ma(R.parameters),Ei(R.parameters),kln(O,S,R,_),{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include}):F(kln(O,S,R,_),(V,M)=>{B(R.parameters)===0&&M===0?s.insertNodeAt(T,R.parameters.end,V):s.insertNodeAtEndOfList(T,R.parameters,V)}),O.writeFixes(s)})}function Dln(s){switch(s.kind){case 263:case 219:case 175:case 220:return!0;default:return!1}}function kln(s,c,g,d){let h=lt(g.parameters,_=>me.createParameterDeclaration(_.modifiers,_.dotDotDotToken,_.name,_.questionToken,_.type,_.initializer));for(let{pos:_,declaration:S}of d){let R=_>0?h[_-1]:void 0;h.splice(_,0,me.updateParameterDeclaration(S,S.modifiers,S.dotDotDotToken,S.name,R&&R.questionToken?me.createToken(58):S.questionToken,eFs(s,S.type,c),S.initializer))}return h}function zGs(s,c){let g=[];for(let d of c)if(qGs(d)){if(B(d.parameters)===B(s.parameters)){g.push(d);continue}if(B(d.parameters)>B(s.parameters))return[]}return g}function qGs(s){return Dln(s)&&s.body===void 0}function xln(s,c,g){return me.createParameterDeclaration(void 0,void 0,s,g,c,void 0)}function $Gs(s,c){return B(s)&&zt(s,g=>cJd(s,Zln,(c,g,d)=>{let h=Vln(g.file,g.start);if(h!==void 0)switch(s.fixId){case OQt:{let _=Wln(h,s.host,g.code);_&&d.push(Lln(g.file.fileName,_));break}default:pe.fail(`Bad fixId: ${s.fixId}`)}})});function Lln(s,c){return{type:"install package",file:s,packageName:c}}function Vln(s,c){let g=Gs(Jc(s,c),Lg);if(!g)return;let d=g.text,{packageName:h}=jEe(d);return Xr(h)?void 0:h}function Wln(s,c,g){var d;return g===Gln?BU.has(s)?"@types/node":void 0:(d=c.isKnownTypesPackageName)!=null&&d.call(c,s)?nVe(s):void 0}var Oln=[Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],PQt="fixClassDoesntImplementInheritedAbstractMember";Gg({errorCodes:Oln,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=xo.ChangeTracker.with(c,_=>Mln(Pln(g,d.start),g,c,_,c.preferences));return h.length===0?void 0:[gg(PQt,h,Z.Implement_inherited_abstract_class,PQt,Z.Implement_all_inherited_abstract_classes)]},fixIds:[PQt],getAllCodeActions:function(c){let g=new Set;return Jd(c,Oln,(d,h)=>{let _=Pln(h.file,h.start);Vy(g,id(_))&&Mln(_,c.sourceFile,c,d,c.preferences)})}});function Pln(s,c){let g=Jc(s,c);return Ma(g.parent,xa)}function Mln(s,c,g,d,h){let _=DB(s),S=g.program.getTypeChecker(),R=S.getTypeAtLocation(_),T=S.getPropertiesOfType(R).filter(rFs),O=kQ(c,g.program,h,g.host);dXt(s,T,c,g,h,O,V=>d.insertMemberAtStart(c,s,V)),O.writeFixes(d)}function rFs(s){let c=Fx(ma(s.getDeclarations()));return!(c&2)&&!!(c&64)}var MQt="classSuperMustPrecedeThisAccess",Hln=[Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];Gg({errorCodes:Hln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Qln(c,g.start);if(!d)return;let{constructor:h,superCall:_}=d,S=xo.ChangeTracker.with(s,R=>Yln(R,c,h,_));return[gg(MQt,S,Z.Make_super_call_the_first_statement_in_the_constructor,MQt,Z.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[MQt],getAllCodeActions(s){let{sourceFile:c}=s,g=new Set;return Jd(s,Hln,(d,h)=>{let _=Qln(h.file,h.start);if(!_)return;let{constructor:S,superCall:R}=_;Vy(g,id(S.parent))&&Yln(d,c,S,R)})}});function Yln(s,c,g,d){s.insertNodeAtConstructorStart(c,g,d),s.delete(c,d)}function Qln(s,c){let g=Jc(s,c);if(g.kind!==110)return;let d=f1(g),h=Xln(d.body);return h&&!h.expression.arguments.some(_=>jo(_)&&_.expression===g)?{constructor:d,superCall:h}:void 0}function Xln(s){return OC(s)&&xy(s.expression)?s:Eu(s)?void 0:Lu(s,Xln)}var HQt="constructorForDerivedNeedSuperCall",Jln=[Z.Constructors_for_derived_classes_must_contain_a_super_call.code];Gg({errorCodes:Jln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Uln(c,g.start),h=xo.ChangeTracker.with(s,_=>Kln(_,c,d));return[gg(HQt,h,Z.Add_missing_super_call,HQt,Z.Add_all_missing_super_calls)]},fixIds:[HQt],getAllCodeActions:s=>Jd(s,Jln,(c,g)=>Kln(c,s.sourceFile,Uln(g.file,g.start)))});function Uln(s,c){let g=Jc(s,c);return pe.assert(Tc(g.parent),"token should be at the constructor declaration"),g.parent}function Kln(s,c,g){let d=me.createExpressionStatement(me.createCallExpression(me.createSuper(),void 0,E));s.insertNodeAtConstructorStart(c,g,d)}var jln="fixEnableJsxFlag",zln=[Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];Gg({errorCodes:zln,getCodeActions:function(c){let{configFile:g}=c.program.getCompilerOptions();if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>qln(h,g));return[uR(jln,d,Z.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[jln],getAllCodeActions:s=>Jd(s,zln,c=>{let{configFile:g}=s.program.getCompilerOptions();g!==void 0&&qln(c,g)})});function qln(s,c){CXt(s,c,"jsx",me.createStringLiteral("react"))}var YQt="fixNaNEquality",$ln=[Z.This_condition_will_always_return_0.code];Gg({errorCodes:$ln,getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=eun(d,c,g);if(h===void 0)return;let{suggestion:_,expression:S,arg:R}=h,T=xo.ChangeTracker.with(s,O=>tun(O,c,R,S));return[gg(YQt,T,[Z.Use_0,_],YQt,Z.Use_Number_isNaN_in_all_conditions)]},fixIds:[YQt],getAllCodeActions:s=>Jd(s,$ln,(c,g)=>{let d=eun(s.program,g.file,$d(g.start,g.length));d&&tun(c,g.file,d.arg,d.expression)})});function eun(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.Did_you_mean_0.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=yXt(h.file,$d(h.start,h.length));if(_!==void 0&&un(_)&&po(_.parent))return{suggestion:nFs(h.messageText),expression:_.parent,arg:_}}function tun(s,c,g,d){let h=me.createCallExpression(me.createPropertyAccessExpression(me.createIdentifier("Number"),me.createIdentifier("isNaN")),void 0,[g]),_=d.operatorToken.kind;s.replaceNode(c,d,_===38||_===36?me.createPrefixUnaryExpression(54,h):h)}function nFs(s){let[,c]=kN(s,` -`,0).match(/'(.*)'/)||[];return c}Gg({errorCodes:[Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(c){let g=c.program.getCompilerOptions(),{configFile:d}=g;if(d===void 0)return;let h=[],_=o0(g);if(_>=5&&_<99){let O=xo.ChangeTracker.with(c,V=>{CXt(V,d,"module",me.createStringLiteral("esnext"))});h.push(uR("fixModuleOption",O,[Z.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}let R=Hg(g);if(R<4||R>99){let O=xo.ChangeTracker.with(c,V=>{if(!k7(d))return;let ee=[["target",me.createStringLiteral("es2017")]];_===1&&ee.push(["module",me.createStringLiteral("commonjs")]),mXt(V,d,ee)});h.push(uR("fixTargetOption",O,[Z.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return h.length?h:void 0}});var QQt="fixPropertyAssignment",nun=[Z.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.code];Gg({errorCodes:nun,fixIds:[QQt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=sun(c,g.start),h=xo.ChangeTracker.with(s,_=>iun(_,s.sourceFile,d));return[gg(QQt,h,[Z.Change_0_to_1,"=",":"],QQt,[Z.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:s=>Jd(s,nun,(c,g)=>iun(c,g.file,sun(g.file,g.start)))});function iun(s,c,g){s.replaceNode(c,g,me.createPropertyAssignment(g.name,g.objectAssignmentInitializer))}function sun(s,c){return Ma(Jc(s,c).parent,l0)}var XQt="extendsInterfaceBecomesImplements",oun=[Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code];Gg({errorCodes:oun,getCodeActions(s){let{sourceFile:c}=s,g=aun(c,s.span.start);if(!g)return;let{extendsToken:d,heritageClauses:h}=g,_=xo.ChangeTracker.with(s,S=>cun(S,c,d,h));return[gg(XQt,_,Z.Change_extends_to_implements,XQt,Z.Change_all_extended_interfaces_to_implements)]},fixIds:[XQt],getAllCodeActions:s=>Jd(s,oun,(c,g)=>{let d=aun(g.file,g.start);d&&cun(c,g.file,d.extendsToken,d.heritageClauses)})});function aun(s,c){let g=Jc(s,c),d=_C(g).heritageClauses,h=d[0].getFirstToken();return h.kind===96?{extendsToken:h,heritageClauses:d}:void 0}function cun(s,c,g,d){if(s.replaceNode(c,g,me.createToken(119)),d.length===2&&d[0].token===96&&d[1].token===119){let h=d[1].getFirstToken(),_=h.getFullStart();s.replaceRange(c,{pos:_,end:_},me.createToken(28));let S=c.text,R=h.end;for(;RAun(h,c,g));return[gg(JQt,d,[Z.Add_0_to_unresolved_variable,g.className||"this"],JQt,Z.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[JQt],getAllCodeActions:s=>Jd(s,uun,(c,g)=>{let d=gun(g.file,g.start,g.code);d&&Aun(c,s.sourceFile,d)})});function gun(s,c,g){let d=Jc(s,c);if(Ir(d)||p(d))return{node:d,className:g===lun?_C(d).name.text:void 0}}function Aun(s,c,{node:g,className:d}){Oy(g),s.replaceNode(c,g,me.createPropertyAccessExpression(d?me.createIdentifier(d):me.createThis(),g))}var UQt="fixInvalidJsxCharacters_expression",Yit="fixInvalidJsxCharacters_htmlEntity",dun=[Z.Unexpected_token_Did_you_mean_or_gt.code,Z.Unexpected_token_Did_you_mean_or_rbrace.code];Gg({errorCodes:dun,fixIds:[UQt,Yit],getCodeActions(s){let{sourceFile:c,preferences:g,span:d}=s,h=xo.ChangeTracker.with(s,S=>KQt(S,g,c,d.start,!1)),_=xo.ChangeTracker.with(s,S=>KQt(S,g,c,d.start,!0));return[gg(UQt,h,Z.Wrap_invalid_character_in_an_expression_container,UQt,Z.Wrap_all_invalid_characters_in_an_expression_container),gg(Yit,_,Z.Convert_invalid_character_to_its_html_entity_code,Yit,Z.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(s){return Jd(s,dun,(c,g)=>KQt(c,s.preferences,g.file,g.start,s.fixId===Yit))}});var pun={">":">","}":"}"};function iFs(s){return Da(pun,s)}function KQt(s,c,g,d,h){let _=g.getText()[d];if(!iFs(_))return;let S=h?pun[_]:`{${ppe(g,c,_)}}`;s.replaceRangeWithText(g,{pos:d,end:d+1},S)}var Qit="deleteUnmatchedParameter",fun="renameUnmatchedParameter",Iun=[Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];Gg({fixIds:[Qit,fun],errorCodes:Iun,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=[],_=hun(g,d.start);if(_)return Ft(h,sFs(c,_)),Ft(h,oFs(c,_)),h},getAllCodeActions:function(c){let g=new Map;return nq(xo.ChangeTracker.with(c,d=>{iq(c,Iun,({file:h,start:_})=>{let S=hun(h,_);S&&g.set(S.signature,Ft(g.get(S.signature),S.jsDocParameterTag))}),g.forEach((h,_)=>{if(c.fixId===Qit){let S=new Set(h);d.filterJSDocTags(_.getSourceFile(),_,R=>!S.has(R))}})}))}});function sFs(s,{name:c,jsDocHost:g,jsDocParameterTag:d}){let h=xo.ChangeTracker.with(s,_=>_.filterJSDocTags(s.sourceFile,g,S=>S!==d));return gg(Qit,h,[Z.Delete_unused_param_tag_0,c.getText(s.sourceFile)],Qit,Z.Delete_all_unused_param_tags)}function oFs(s,{name:c,jsDocHost:g,signature:d,jsDocParameterTag:h}){if(!B(d.parameters))return;let _=s.sourceFile,S=Rx(d),R=new Set;for(let M of S)AS(M)&&Ir(M.name)&&R.add(M.name.escapedText);let T=J(d.parameters,M=>Ir(M.name)&&!R.has(M.name.escapedText)?M.name.getText(_):void 0);if(T===void 0)return;let O=me.updateJSDocParameterTag(h,h.tagName,me.createIdentifier(T),h.isBracketed,h.typeExpression,h.isNameFirst,h.comment),V=xo.ChangeTracker.with(s,M=>M.replaceJSDocComment(_,g,lt(S,ee=>ee===h?O:ee)));return uR(fun,V,[Z.Rename_param_tag_name_0_to_1,c.getText(_),T])}function hun(s,c){let g=Jc(s,c);if(g.parent&&AS(g.parent)&&Ir(g.parent.name)){let d=g.parent,h=NW(d),_=QL(d);if(h&&_)return{jsDocHost:h,signature:_,name:g.parent.name,jsDocParameterTag:d}}}var jQt="fixUnreferenceableDecoratorMetadata",aFs=[Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code];Gg({errorCodes:aFs,getCodeActions:s=>{let c=cFs(s.sourceFile,s.program,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,_=>c.kind===277&&uFs(_,s.sourceFile,c,s.program)),d=xo.ChangeTracker.with(s,_=>lFs(_,s.sourceFile,c,s.program)),h;return g.length&&(h=Ft(h,uR(jQt,g,Z.Convert_named_imports_to_namespace_import))),d.length&&(h=Ft(h,uR(jQt,d,Z.Use_import_type))),h},fixIds:[jQt]});function cFs(s,c,g){let d=Gs(Jc(s,g),Ir);if(!d||d.parent.kind!==184)return;let _=c.getTypeChecker().getSymbolAtLocation(d);return de(_?.declarations||E,Qp(Hw,Ay,Zm))}function lFs(s,c,g,d){if(g.kind===272){s.insertModifierBefore(c,156,g.name);return}let h=g.kind===274?g:g.parent.parent;if(h.name&&h.namedBindings)return;let _=d.getTypeChecker();LZe(h,R=>{if(LC(R.symbol,_).flags&111551)return!0})||s.insertModifierBefore(c,156,h)}function uFs(s,c,g,d){tq.doChangeNamedToNamespaceOrDefault(c,d,s,g.parent)}var cOe="unusedIdentifier",zQt="unusedIdentifier_prefix",qQt="unusedIdentifier_delete",Xit="unusedIdentifier_deleteImports",$Qt="unusedIdentifier_infer",mun=[Z._0_is_declared_but_its_value_is_never_read.code,Z._0_is_declared_but_never_used.code,Z.Property_0_is_declared_but_its_value_is_never_read.code,Z.All_imports_in_import_declaration_are_unused.code,Z.All_destructured_elements_are_unused.code,Z.All_variables_are_unused.code,Z.All_type_parameters_are_unused.code];Gg({errorCodes:mun,getCodeActions(s){let{errorCode:c,sourceFile:g,program:d,cancellationToken:h}=s,_=d.getTypeChecker(),S=d.getSourceFiles(),R=Jc(g,s.span.start);if(PB(R))return[Epe(xo.ChangeTracker.with(s,M=>M.delete(g,R)),Z.Remove_template_tag)];if(R.kind===30){let M=xo.ChangeTracker.with(s,ee=>_un(ee,g,R));return[Epe(M,Z.Remove_type_parameters)]}let T=yun(R);if(T){let M=xo.ChangeTracker.with(s,ee=>ee.delete(g,T));return[gg(cOe,M,[Z.Remove_import_from_0,mLe(T)],Xit,Z.Delete_all_unused_imports)]}else if(eXt(R)){let M=xo.ChangeTracker.with(s,ee=>Jit(g,R,ee,_,S,d,h,!1));if(M.length)return[gg(cOe,M,[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)],Xit,Z.Delete_all_unused_imports)]}if($m(R.parent)||h2(R.parent)){if(Si(R.parent.parent)){let M=R.parent.elements,ee=[M.length>1?Z.Remove_unused_declarations_for_Colon_0:Z.Remove_unused_declaration_for_Colon_0,lt(M,re=>re.getText(g)).join(", ")];return[Epe(xo.ChangeTracker.with(s,re=>gFs(re,g,R.parent)),ee)]}return[Epe(xo.ChangeTracker.with(s,M=>AFs(s,M,g,R.parent)),Z.Remove_unused_destructuring_declaration)]}if(bun(g,R))return[Epe(xo.ChangeTracker.with(s,M=>Eun(M,g,R.parent)),Z.Remove_variable_statement)];if(Ir(R)&&ah(R.parent))return[Epe(xo.ChangeTracker.with(s,M=>wun(M,g,R.parent)),[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)])];let O=[];if(R.kind===140){let M=xo.ChangeTracker.with(s,re=>Cun(re,g,R)),ee=Ma(R.parent,tR).typeParameter.name.text;O.push(gg(cOe,M,[Z.Replace_infer_0_with_unknown,ee],$Qt,Z.Replace_all_unused_infer_with_unknown))}else{let M=xo.ChangeTracker.with(s,ee=>Jit(g,R,ee,_,S,d,h,!1));if(M.length){let ee=Un(R.parent)?R.parent:R;O.push(Epe(M,[Z.Remove_unused_declaration_for_Colon_0,ee.getText(g)]))}}let V=xo.ChangeTracker.with(s,M=>Sun(M,c,g,R));return V.length&&O.push(gg(cOe,V,[Z.Prefix_0_with_an_underscore,R.getText(g)],zQt,Z.Prefix_all_unused_declarations_with_where_possible)),O},fixIds:[zQt,qQt,Xit,$Qt],getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=g.getTypeChecker(),_=g.getSourceFiles();return Jd(s,mun,(S,R)=>{let T=Jc(c,R.start);switch(s.fixId){case zQt:Sun(S,R.code,c,T);break;case Xit:{let O=yun(T);O?S.delete(c,O):eXt(T)&&Jit(c,T,S,h,_,g,d,!0);break}case qQt:{if(T.kind===140||eXt(T))break;if(PB(T))S.delete(c,T);else if(T.kind===30)_un(S,c,T);else if($m(T.parent)){if(T.parent.parent.initializer)break;(!Si(T.parent.parent)||vun(T.parent.parent,h,_))&&S.delete(c,T.parent.parent)}else{if(h2(T.parent.parent)&&T.parent.parent.parent.initializer)break;bun(c,T)?Eun(S,c,T.parent):Ir(T)&&ah(T.parent)?wun(S,c,T.parent):Jit(c,T,S,h,_,g,d,!0)}break}case $Qt:T.kind===140&&Cun(S,c,T);break;default:pe.fail(JSON.stringify(s.fixId))}})}});function Cun(s,c,g){s.replaceNode(c,g.parent,me.createKeywordTypeNode(159))}function Epe(s,c){return gg(cOe,s,c,qQt,Z.Delete_all_unused_declarations)}function _un(s,c,g){s.delete(c,pe.checkDefined(Ma(g.parent,lne).typeParameters,"The type parameter to delete should exist"))}function eXt(s){return s.kind===102||s.kind===80&&(s.parent.kind===277||s.parent.kind===274)}function yun(s){return s.kind===102?Gs(s.parent,Yf):void 0}function bun(s,c){return A_(c.parent)&&ma(c.parent.getChildren(s))===c}function Eun(s,c,g){s.delete(c,g.parent.kind===244?g.parent:g)}function gFs(s,c,g){F(g.elements,d=>s.delete(c,d))}function AFs(s,c,g,{parent:d}){if(nc(d)&&d.initializer&&EF(d.initializer))if(A_(d.parent)&&B(d.parent.declarations)>1){let h=d.parent.parent,_=h.getStart(g),S=h.end;c.delete(g,d),c.insertNodeAt(g,S,d.initializer,{prefix:JF(s.host,s.formatContext.options)+g.text.slice(bWe(g.text,_-1),_),suffix:P1e(g)?";":""})}else c.replaceNode(g,d.parent,d.initializer);else c.delete(g,d)}function Sun(s,c,g,d){c!==Z.Property_0_is_declared_but_its_value_is_never_read.code&&(d.kind===140&&(d=Ma(d.parent,tR).typeParameter.name),Ir(d)&&dFs(d)&&(s.replaceNode(g,d,me.createIdentifier(`_${d.text}`)),Si(d.parent)&&DL(d.parent).forEach(h=>{Ir(h.name)&&s.replaceNode(g,h.name,me.createIdentifier(`_${h.name.text}`))})))}function dFs(s){switch(s.parent.kind){case 170:case 169:return!0;case 261:switch(s.parent.parent.parent.kind){case 251:case 250:return!0}}return!1}function Jit(s,c,g,d,h,_,S,R){pFs(c,g,s,d,h,_,S,R),Ir(c)&&zp.Core.eachSymbolReferenceInFile(c,d,s,T=>{jo(T.parent)&&T.parent.name===T&&(T=T.parent),!R&&mFs(T)&&g.delete(s,T.parent.parent)})}function pFs(s,c,g,d,h,_,S,R){let{parent:T}=s;if(Si(T))fFs(c,g,T,d,h,_,S,R);else if(!(R&&Ir(s)&&zp.Core.isSymbolReferencedInFile(s,d,g))){let O=Hw(T)?s:Un(T)?T.parent:T;pe.assert(O!==g,"should not delete whole source file"),c.delete(g,O)}}function fFs(s,c,g,d,h,_,S,R=!1){if(IFs(d,c,g,h,_,S,R))if(g.modifiers&&g.modifiers.length>0&&(!Ir(g.name)||zp.Core.isSymbolReferencedInFile(g.name,d,c)))for(let T of g.modifiers)hg(T)&&s.deleteModifier(c,T);else!g.initializer&&vun(g,d,h)&&s.delete(c,g)}function vun(s,c,g){let d=s.parent.parameters.indexOf(s);return!zp.Core.someSignatureUsage(s.parent,g,c,(h,_)=>!_||_.arguments.length>d)}function IFs(s,c,g,d,h,_,S){let{parent:R}=g;switch(R.kind){case 175:case 177:let T=R.parameters.indexOf(g),O=gu(R)?R.name:R,V=zp.Core.getReferencedSymbolsForNode(R.pos,O,h,d,_);if(V){for(let M of V)for(let ee of M.references)if(ee.kind===zp.EntryKind.Node){let re=rr(ee.node)&&Ll(ee.node.parent)&&ee.node.parent.arguments.length>T,ge=jo(ee.node.parent)&&rr(ee.node.parent.expression)&&Ll(ee.node.parent.parent)&&ee.node.parent.parent.arguments.length>T,Ie=(gu(ee.node.parent)||Il(ee.node.parent))&&ee.node.parent!==g.parent&&ee.node.parent.parameters.length>T;if(re||ge||Ie)return!1}}return!0;case 263:return R.name&&hFs(s,c,R.name)?Bun(R,g,S):!0;case 219:case 220:return Bun(R,g,S);case 179:return!1;case 178:return!0;default:return pe.failBadSyntaxKind(R)}}function hFs(s,c,g){return!!zp.Core.eachSymbolReferenceInFile(g,s,c,d=>Ir(d)&&Ll(d.parent)&&d.parent.arguments.includes(d))}function Bun(s,c,g){let d=s.parameters,h=d.indexOf(c);return pe.assert(h!==-1,"The parameter should already be in the list"),g?d.slice(h+1).every(_=>Ir(_.name)&&!_.symbol.isReferenced):h===d.length-1}function mFs(s){return(po(s.parent)&&s.parent.left===s||(sk(s.parent)||N0(s.parent))&&s.parent.operand===s)&&OC(s.parent.parent)}function wun(s,c,g){let d=g.symbol.declarations;if(d)for(let h of d)s.delete(c,h)}var tXt="fixUnreachableCode",Tun=[Z.Unreachable_code_detected.code];Gg({errorCodes:Tun,getCodeActions(s){if(s.program.getSyntacticDiagnostics(s.sourceFile,s.cancellationToken).length)return;let g=xo.ChangeTracker.with(s,d=>Run(d,s.sourceFile,s.span.start,s.span.length,s.errorCode));return[gg(tXt,g,Z.Remove_unreachable_code,tXt,Z.Remove_all_unreachable_code)]},fixIds:[tXt],getAllCodeActions:s=>Jd(s,Tun,(c,g)=>Run(c,g.file,g.start,g.length,g.code))});function Run(s,c,g,d,h){let _=Jc(c,g),S=ji(_,Lc);if(S.getStart(c)!==_.getStart(c)){let T=JSON.stringify({statementKind:pe.formatSyntaxKind(S.kind),tokenKind:pe.formatSyntaxKind(_.kind),errorCode:h,start:g,length:d});pe.fail("Token and statement should start at the same point. "+T)}let R=(eg(S.parent)?S.parent:S).parent;if(!eg(S.parent)||S===ma(S.parent.statements))switch(R.kind){case 246:if(R.elseStatement){if(eg(S.parent))break;s.replaceNode(c,S,me.createBlock(E));return}case 248:case 249:s.delete(c,R);return}if(eg(S.parent)){let T=g+d,O=pe.checkDefined(CFs(zbe(S.parent.statements,S),V=>V.posDun(g,s.sourceFile,s.span.start));return[gg(rXt,c,Z.Remove_unused_label,rXt,Z.Remove_all_unused_labels)]},fixIds:[rXt],getAllCodeActions:s=>Jd(s,Nun,(c,g)=>Dun(c,g.file,g.start))});function Dun(s,c,g){let d=Jc(c,g),h=Ma(d.parent,HW),_=d.getStart(c),S=h.statement.getStart(c),R=SE(_,S,c)?S:Yu(c.text,ep(h,59,c).end,!0);s.deleteRange(c,{pos:_,end:R})}var kun="fixJSDocTypes_plain",nXt="fixJSDocTypes_nullable",xun=[Z.JSDoc_types_can_only_be_used_inside_documentation_comments.code,Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];Gg({errorCodes:xun,getCodeActions(s){let{sourceFile:c}=s,g=s.program.getTypeChecker(),d=Fun(c,s.span.start,g);if(!d)return;let{typeNode:h,type:_}=d,S=h.getText(c),R=[T(_,kun,Z.Change_all_jsdoc_style_types_to_TypeScript)];return h.kind===315&&R.push(T(_,nXt,Z.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),R;function T(O,V,M){let ee=xo.ChangeTracker.with(s,re=>Gun(re,c,h,O,g));return gg("jdocTypes",ee,[Z.Change_0_to_1,S,g.typeToString(O)],V,M)}},fixIds:[kun,nXt],getAllCodeActions(s){let{fixId:c,program:g,sourceFile:d}=s,h=g.getTypeChecker();return Jd(s,xun,(_,S)=>{let R=Fun(S.file,S.start,h);if(!R)return;let{typeNode:T,type:O}=R,V=T.kind===315&&c===nXt?h.getNullableType(O,32768):O;Gun(_,d,T,V,h)})}});function Gun(s,c,g,d,h){s.replaceNode(c,g,h.typeToTypeNode(d,g,void 0))}function Fun(s,c,g){let d=ji(Jc(s,c),_Fs),h=d&&d.type;return h&&{typeNode:h,type:yFs(g,h)}}function _Fs(s){switch(s.kind){case 235:case 180:case 181:case 263:case 178:case 182:case 201:case 175:case 174:case 170:case 173:case 172:case 179:case 266:case 217:case 261:return!0;default:return!1}}function yFs(s,c){if(Nie(c)){let g=s.getTypeFromTypeNode(c.type);return g===s.getNeverType()||g===s.getVoidType()?g:s.getUnionType(Ft([g,s.getUndefinedType()],c.postfix?void 0:s.getNullType()))}return s.getTypeFromTypeNode(c)}var iXt="fixMissingCallParentheses",Zun=[Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];Gg({errorCodes:Zun,fixIds:[iXt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=Vun(c,g.start);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Lun(_,s.sourceFile,d));return[gg(iXt,h,Z.Add_missing_call_parentheses,iXt,Z.Add_all_missing_call_parentheses)]},getAllCodeActions:s=>Jd(s,Zun,(c,g)=>{let d=Vun(g.file,g.start);d&&Lun(c,g.file,d)})});function Lun(s,c,g){s.replaceNodeWithText(c,g,`${g.text}()`)}function Vun(s,c){let g=Jc(s,c);if(jo(g.parent)){let d=g.parent;for(;jo(d.parent);)d=d.parent;return d.name}if(Ir(g))return g}var Wun="fixMissingTypeAnnotationOnExports",sXt="add-annotation",oXt="add-type-assertion",bFs="extract-expression",Oun=[Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations.code,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],EFs=new Set([178,175,173,263,219,220,261,170,278,264,207,208]),Pun=531469,Mun=1;Gg({errorCodes:Oun,fixIds:[Wun],getCodeActions(s){let c=[];return Spe(sXt,c,s,0,g=>g.addTypeAnnotation(s.span)),Spe(sXt,c,s,1,g=>g.addTypeAnnotation(s.span)),Spe(sXt,c,s,2,g=>g.addTypeAnnotation(s.span)),Spe(oXt,c,s,0,g=>g.addInlineAssertion(s.span)),Spe(oXt,c,s,1,g=>g.addInlineAssertion(s.span)),Spe(oXt,c,s,2,g=>g.addInlineAssertion(s.span)),Spe(bFs,c,s,0,g=>g.extractAsVariable(s.span)),c},getAllCodeActions:s=>{let c=Hun(s,0,g=>{iq(s,Oun,d=>{g.addTypeAnnotation(d)})});return nq(c.textChanges)}});function Spe(s,c,g,d,h){let _=Hun(g,d,h);_.result&&_.textChanges.length&&c.push(gg(s,_.textChanges,_.result,Wun,Z.Add_all_missing_type_annotations))}function Hun(s,c,g){let d={typeNode:void 0,mutatedTarget:!1},h=xo.ChangeTracker.fromContext(s),_=s.sourceFile,S=s.program,R=S.getTypeChecker(),T=Hg(S.getCompilerOptions()),O=kQ(s.sourceFile,s.program,s.preferences,s.host),V=new Set,M=new Set,ee=jW({preserveSourceNewlines:!1}),re=g({addTypeAnnotation:ge,addInlineAssertion:Te,extractAsVariable:Ze});return O.writeFixes(h),{result:re,textChanges:h.getChanges()};function ge(ot){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,ot.start),qt=Pe(ir);if(qt)return ah(qt)?Ie(qt):Ke(qt);let Yt=dt(ir);if(Yt)return Ke(Yt)}function Ie(ot){var ir;if(M?.has(ot))return;M?.add(ot);let qt=R.getTypeAtLocation(ot),Yt=R.getPropertiesOfType(qt);if(!ot.name||Yt.length===0)return;let Tr=[];for(let Zi of Yt)qh(Zi.name,Hg(S.getCompilerOptions()))&&(Zi.valueDeclaration&&nc(Zi.valueDeclaration)||Tr.push(me.createVariableStatement([me.createModifier(95)],me.createVariableDeclarationList([me.createVariableDeclaration(Zi.name,void 0,kt(R.getTypeOfSymbol(Zi),ot),void 0)]))));if(Tr.length===0)return;let Cn=[];(ir=ot.modifiers)!=null&&ir.some(Zi=>Zi.kind===95)&&Cn.push(me.createModifier(95)),Cn.push(me.createModifier(138));let jn=me.createModuleDeclaration(Cn,ot.name,me.createModuleBlock(Tr),101441696);return h.insertNodeAfter(_,ot,jn),[Z.Annotate_types_of_properties_expando_function_in_a_namespace]}function _e(ot){return!Hd(ot)&&!Ll(ot)&&!ag(ot)&&!YI(ot)}function Ee(ot,ir){return _e(ot)&&(ot=me.createParenthesizedExpression(ot)),me.createAsExpression(ot,ir)}function Ne(ot,ir){return _e(ot)&&(ot=me.createParenthesizedExpression(ot)),me.createAsExpression(me.createSatisfiesExpression(ot,KA(ir)),ir)}function Te(ot){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,ot.start);if(Pe(ir))return;let Yt=pr(ir,ot);if(!Yt||B3(Yt)||B3(Yt.parent))return;let Tr=un(Yt),Cn=l0(Yt);if(!Cn&&em(Yt)||ji(Yt,Nu)||ji(Yt,HF)||Tr&&(ji(Yt,_1)||ji(Yt,uc))||cf(Yt))return;let jn=ji(Yt,nc),Zi=jn&&R.getTypeAtLocation(jn);if(Zi&&Zi.flags&8192||!(Tr||Cn))return;let{typeNode:Ns,mutatedTarget:An}=Rt(Yt,Zi);if(!(!Ns||An))return Cn?h.insertNodeAt(_,Yt.end,Ee(KA(Yt.name),Ns),{prefix:": "}):Tr?h.replaceNode(_,Yt,Ne(KA(Yt),Ns)):pe.assertNever(Yt),[Z.Add_satisfies_and_an_inline_type_assertion_with_0,Gr(Ns)]}function Ze(ot){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,ot.start),qt=pr(ir,ot);if(!qt||B3(qt)||B3(qt.parent)||!un(qt))return;if(YI(qt))return h.replaceNode(_,qt,Ee(qt,me.createTypeReferenceNode("const"))),[Z.Mark_array_literal_as_const];let Tr=ji(qt,Cm);if(Tr){if(Tr===qt.parent&&Hd(qt))return;let Cn=me.createUniqueName(aYt(qt,_,R,_),16),jn=qt,Zi=qt;if(cf(jn)&&(jn=fv(jn.parent),Gt(jn.parent)?Zi=jn=jn.parent:Zi=Ee(jn,me.createTypeReferenceNode("const"))),Hd(jn))return;let Ns=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Cn,void 0,void 0,Zi)],2)),An=ji(qt,Lc);return h.insertNodeBefore(_,An,Ns),h.replaceNode(_,jn,me.createAsExpression(me.cloneNode(Cn),me.createTypeQueryNode(me.cloneNode(Cn)))),[Z.Extract_to_variable_and_replace_with_0_as_typeof_0,Gr(Cn)]}}function Pe(ot){let ir=ji(ot,qt=>Lc(qt)?"quit":aQ(qt));if(ir&&aQ(ir)){let qt=ir;if(po(qt)&&(qt=qt.left,!aQ(qt)))return;let Yt=R.getTypeAtLocation(qt.expression);if(!Yt)return;let Tr=R.getPropertiesOfType(Yt);if(zt(Tr,Cn=>Cn.valueDeclaration===ir||Cn.valueDeclaration===ir.parent)){let Cn=Yt.symbol.valueDeclaration;if(Cn){if(FF(Cn)&&nc(Cn.parent))return Cn.parent;if(ah(Cn))return Cn}}}}function Ke(ot){if(!V?.has(ot))switch(V?.add(ot),ot.kind){case 170:case 173:case 261:return ur(ot);case 220:case 219:case 263:case 175:case 178:return et(ot,_);case 278:return Ye(ot);case 264:return Tt(ot);case 207:case 208:return Qe(ot);default:throw new Error(`Cannot find a fix for the given node ${ot.kind}`)}}function et(ot,ir){if(ot.type)return;let{typeNode:qt}=Rt(ot);if(qt)return h.tryInsertTypeAnnotation(ir,ot,qt),[Z.Add_return_type_0,Gr(qt)]}function Ye(ot){if(ot.isExportEquals)return;let{typeNode:ir}=Rt(ot.expression);if(!ir)return;let qt=me.createUniqueName("_default");return h.replaceNodeWithNodes(_,ot,[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(qt,void 0,ir,ot.expression)],2)),me.updateExportAssignment(ot,ot?.modifiers,qt)]),[Z.Extract_default_export_to_variable]}function Tt(ot){var ir,qt;let Yt=(ir=ot.heritageClauses)==null?void 0:ir.find(si=>si.token===96),Tr=Yt?.types[0];if(!Tr)return;let{typeNode:Cn}=Rt(Tr.expression);if(!Cn)return;let jn=me.createUniqueName(ot.name?ot.name.text+"Base":"Anonymous",16),Zi=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(jn,void 0,Cn,Tr.expression)],2));h.insertNodeBefore(_,ot,Zi);let Ns=o2(_.text,Tr.end),An=((qt=Ns?.[Ns.length-1])==null?void 0:qt.end)??Tr.end;return h.replaceRange(_,{pos:Tr.getFullStart(),end:An},jn,{prefix:" "}),[Z.Extract_base_class_to_variable]}let at;(ot=>{ot[ot.Text=0]="Text",ot[ot.Computed=1]="Computed",ot[ot.ArrayAccess=2]="ArrayAccess",ot[ot.Identifier=3]="Identifier"})(at||(at={}));function Qe(ot){var ir;let qt=ot.parent,Yt=ot.parent.parent.parent;if(!qt.initializer)return;let Tr,Cn=[];if(Ir(qt.initializer))Tr={expression:{kind:3,identifier:qt.initializer}};else{let Ns=me.createUniqueName("dest",16);Tr={expression:{kind:3,identifier:Ns}},Cn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Ns,void 0,void 0,qt.initializer)],2)))}let jn=[];h2(ot)?Ct(ot,jn,Tr):mt(ot,jn,Tr);let Zi=new Map;for(let Ns of jn){if(Ns.element.propertyName&&Un(Ns.element.propertyName)){let si=Ns.element.propertyName.expression,ks=me.getGeneratedNameForNode(si),Ic=me.createVariableDeclaration(ks,void 0,void 0,si),ou=me.createVariableDeclarationList([Ic],2),Zn=me.createVariableStatement(void 0,ou);Cn.push(Zn),Zi.set(si,ks)}let An=Ns.element.name;if(h2(An))Ct(An,jn,Ns);else if($m(An))mt(An,jn,Ns);else{let{typeNode:si}=Rt(An),ks=yt(Ns,Zi);if(Ns.element.initializer){let ou=(ir=Ns.element)==null?void 0:ir.propertyName,Zn=me.createUniqueName(ou&&Ir(ou)?ou.text:"temp",16);Cn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zn,void 0,void 0,ks)],2))),ks=me.createConditionalExpression(me.createBinaryExpression(Zn,me.createToken(37),me.createIdentifier("undefined")),me.createToken(58),Ns.element.initializer,me.createToken(59),ks)}let Ic=Ga(Yt,32)?[me.createToken(95)]:void 0;Cn.push(me.createVariableStatement(Ic,me.createVariableDeclarationList([me.createVariableDeclaration(An,void 0,si,ks)],2)))}}return Yt.declarationList.declarations.length>1&&Cn.push(me.updateVariableStatement(Yt,Yt.modifiers,me.updateVariableDeclarationList(Yt.declarationList,Yt.declarationList.declarations.filter(Ns=>Ns!==ot.parent)))),h.replaceNodeWithNodes(_,Yt,Cn),[Z.Extract_binding_expressions_to_variable]}function Ct(ot,ir,qt){for(let Yt=0;Yt=0;--Tr){let Cn=qt[Tr].expression;Cn.kind===0?Yt=me.createPropertyAccessChain(Yt,void 0,me.createIdentifier(Cn.text)):Cn.kind===1?Yt=me.createElementAccessExpression(Yt,ir.get(Cn.computed)):Cn.kind===2&&(Yt=me.createElementAccessExpression(Yt,Cn.arrayIndex))}return Yt}function Rt(ot,ir){if(c===1)return it(ot);let qt;if(B3(ot)){let Cn=R.getSignatureFromDeclaration(ot);if(Cn){let jn=R.getTypePredicateOfSignature(Cn);if(jn)return jn.type?{typeNode:tr(jn,ji(ot,em)??_,Tr(jn.type)),mutatedTarget:!1}:d;qt=R.getReturnTypeOfSignature(Cn)}}else qt=R.getTypeAtLocation(ot);if(!qt)return d;if(c===2){ir&&(qt=ir);let Cn=R.getWidenedLiteralType(qt);if(R.isTypeAssignableTo(Cn,qt))return d;qt=Cn}let Yt=ji(ot,em)??_;return Si(ot)&&R.requiresAddingImplicitUndefined(ot,Yt)&&(qt=R.getUnionType([R.getUndefinedType(),qt],0)),{typeNode:kt(qt,Yt,Tr(qt)),mutatedTarget:!1};function Tr(Cn){return(nc(ot)||pi(ot)&&Ga(ot,264))&&Cn.flags&8192?1048576:0}}function Lt(ot){return me.createTypeQueryNode(KA(ot))}function je(ot,ir="temp"){let qt=!!ji(ot,Gt);return qt?_r(ot,ir,qt,Yt=>Yt.elements,cf,me.createSpreadElement,Yt=>me.createArrayLiteralExpression(Yt,!0),Yt=>me.createTupleTypeNode(Yt.map(me.createRestTypeNode))):d}function Wt(ot,ir="temp"){let qt=!!ji(ot,Gt);return _r(ot,ir,qt,Yt=>Yt.properties,Mx,me.createSpreadAssignment,Yt=>me.createObjectLiteralExpression(Yt,!0),me.createIntersectionTypeNode)}function _r(ot,ir,qt,Yt,Tr,Cn,jn,Zi){let Ns=[],An=[],si,ks=ji(ot,Lc);for(let Zn of Yt(ot))Tr(Zn)?(ou(),Hd(Zn.expression)?(Ns.push(Lt(Zn.expression)),An.push(Zn)):Ic(Zn.expression)):(si??(si=[])).push(Zn);if(An.length===0)return d;return ou(),h.replaceNode(_,ot,jn(An)),{typeNode:Zi(Ns),mutatedTarget:!0};function Ic(Zn){let ya=me.createUniqueName(ir+"_Part"+(An.length+1),16),Fl=qt?me.createAsExpression(Zn,me.createTypeReferenceNode("const")):Zn,ba=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(ya,void 0,void 0,Fl)],2));h.insertNodeBefore(_,ks,ba),Ns.push(Lt(ya)),An.push(Cn(ya))}function ou(){si&&(Ic(jn(si)),si=void 0)}}function Gt(ot){return vd(ot)&&c2(ot.type)}function it(ot){if(Si(ot))return d;if(l0(ot))return{typeNode:Lt(ot.name),mutatedTarget:!1};if(Hd(ot))return{typeNode:Lt(ot),mutatedTarget:!1};if(Gt(ot))return it(ot.expression);if(YI(ot)){let ir=ji(ot,nc),qt=ir&&Ir(ir.name)?ir.name.text:void 0;return je(ot,qt)}if(ag(ot)){let ir=ji(ot,nc),qt=ir&&Ir(ir.name)?ir.name.text:void 0;return Wt(ot,qt)}if(nc(ot)&&ot.initializer)return it(ot.initializer);if(Mw(ot)){let{typeNode:ir,mutatedTarget:qt}=it(ot.whenTrue);if(!ir)return d;let{typeNode:Yt,mutatedTarget:Tr}=it(ot.whenFalse);return Yt?{typeNode:me.createUnionTypeNode([ir,Yt]),mutatedTarget:qt||Tr}:d}return d}function kt(ot,ir,qt=0){let Yt=!1,Tr=ggn(R,ot,ir,Pun|qt,Mun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Yt=!0}});if(!Tr)return;let Cn=fXt(Tr,O,T);return Yt?me.createKeywordTypeNode(133):Cn}function tr(ot,ir,qt=0){let Yt=!1,Tr=Agn(R,O,ot,ir,T,Pun|qt,Mun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Yt=!0}});return Yt?me.createKeywordTypeNode(133):Tr}function ur(ot){let{typeNode:ir}=Rt(ot);if(ir)return ot.type?h.replaceNode(ms(ot),ot.type,ir):h.tryInsertTypeAnnotation(ms(ot),ot,ir),[Z.Add_annotation_of_type_0,Gr(ir)]}function Gr(ot){ti(ot,1);let ir=ee.printNode(4,ot,_);return ir.length>GY?ir.substring(0,GY-3)+"...":(ti(ot,0),ir)}function dt(ot){return ji(ot,ir=>EFs.has(ir.kind)&&(!$m(ir)&&!h2(ir)||nc(ir.parent)))}function pr(ot,ir){for(;ot&&ot.endXun(_,c,d));return[gg(aXt,h,Z.Add_async_modifier_to_containing_function,aXt,Z.Add_all_missing_async_modifiers)]},fixIds:[aXt],getAllCodeActions:function(c){let g=new Set;return Jd(c,Yun,(d,h)=>{let _=Qun(h.file,h.start);!_||!Vy(g,id(_.insertBefore))||Xun(d,c.sourceFile,_)})}});function SFs(s){if(s.type)return s.type;if(nc(s.parent)&&s.parent.type&&F_(s.parent.type))return s.parent.type.type}function Qun(s,c){let g=Jc(s,c),d=f1(g);if(!d)return;let h;switch(d.kind){case 175:h=d.name;break;case 263:case 219:h=ep(d,100,s);break;case 220:let _=d.typeParameters?30:21;h=ep(d,_,s)||ma(d.parameters);break;default:return}return h&&{insertBefore:h,returnType:SFs(d)}}function Xun(s,c,{insertBefore:g,returnType:d}){if(d){let h=pne(d);(!h||h.kind!==80||h.text!=="Promise")&&s.replaceNode(c,d,me.createTypeReferenceNode("Promise",me.createNodeArray([d])))}s.insertModifierBefore(c,134,g)}var Jun=[Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],cXt="fixPropertyOverrideAccessor";Gg({errorCodes:Jun,getCodeActions(s){let c=Uun(s.sourceFile,s.span.start,s.span.length,s.errorCode,s);if(c)return[gg(cXt,c,Z.Generate_get_and_set_accessors,cXt,Z.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[cXt],getAllCodeActions:s=>Jd(s,Jun,(c,g)=>{let d=Uun(g.file,g.start,g.length,g.code,s);if(d)for(let h of d)c.pushRaw(s.sourceFile,h)})});function Uun(s,c,g,d,h){let _,S;if(d===Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)_=c,S=c+g;else if(d===Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){let R=h.program.getTypeChecker(),T=Jc(s,c).parent;if(Un(T))return;pe.assert(BB(T),"error span of fixPropertyOverrideAccessor should only be on an accessor");let O=T.parent;pe.assert(xa(O),"erroneous accessors should only be inside classes");let V=DB(O);if(!V)return;let M=JA(V.expression),ee=wd(M)?M.symbol:R.getSymbolAtLocation(M);if(!ee)return;let re=R.getDeclaredTypeOfSymbol(ee),ge=R.getPropertyOfType(re,Bc(vW(T.name)));if(!ge||!ge.valueDeclaration)return;_=ge.valueDeclaration.pos,S=ge.valueDeclaration.end,s=ms(ge.valueDeclaration)}else pe.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+d);return hgn(s,h.program,_,S,h,Z.Generate_get_and_set_accessors.message)}var lXt="inferFromUsage",Kun=[Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,Z.Variable_0_implicitly_has_an_1_type.code,Z.Parameter_0_implicitly_has_an_1_type.code,Z.Rest_parameter_0_implicitly_has_an_any_type.code,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,Z.Member_0_implicitly_has_an_1_type.code,Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];Gg({errorCodes:Kun,getCodeActions(s){let{sourceFile:c,program:g,span:{start:d},errorCode:h,cancellationToken:_,host:S,preferences:R}=s,T=Jc(c,d),O,V=xo.ChangeTracker.with(s,ee=>{O=jun(ee,c,T,h,g,_,Nf,S,R)}),M=O&&fl(O);return!M||V.length===0?void 0:[gg(lXt,V,[vFs(h,T),Fp(M)],lXt,Z.Infer_all_types_from_usage)]},fixIds:[lXt],getAllCodeActions(s){let{sourceFile:c,program:g,cancellationToken:d,host:h,preferences:_}=s,S=ise();return Jd(s,Kun,(R,T)=>{jun(R,c,Jc(T.file,T.start),T.code,g,d,S,h,_)})}});function vFs(s,c){switch(s){case Z.Parameter_0_implicitly_has_an_1_type.code:case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return kg(f1(c))?Z.Infer_type_of_0_from_usage:Z.Infer_parameter_types_from_usage;case Z.Rest_parameter_0_implicitly_has_an_any_type.code:case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Infer_parameter_types_from_usage;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return Z.Infer_this_type_of_0_from_usage;default:return Z.Infer_type_of_0_from_usage}}function BFs(s){switch(s){case Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_an_1_type.code;case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Parameter_0_implicitly_has_an_1_type.code;case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Rest_parameter_0_implicitly_has_an_any_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Member_0_implicitly_has_an_1_type.code}return s}function jun(s,c,g,d,h,_,S,R,T){if(!wY(g.kind)&&g.kind!==80&&g.kind!==26&&g.kind!==110)return;let{parent:O}=g,V=kQ(c,h,T,R);switch(d=BFs(d),d){case Z.Member_0_implicitly_has_an_1_type.code:case Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(nc(O)&&S(O)||pi(O)||ss(O))return zun(s,V,c,O,h,R,_),V.writeFixes(s),O;if(jo(O)){let re=a2e(O.name,h,_),ge=fpe(re,O,h,R);if(ge){let Ie=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(ge),void 0);s.addJSDocTags(c,Ma(O.parent.parent,OC),[Ie])}return V.writeFixes(s),O}return;case Z.Variable_0_implicitly_has_an_1_type.code:{let re=h.getTypeChecker().getSymbolAtLocation(g);return re&&re.valueDeclaration&&nc(re.valueDeclaration)&&S(re.valueDeclaration)?(zun(s,V,ms(re.valueDeclaration),re.valueDeclaration,h,R,_),V.writeFixes(s),re.valueDeclaration):void 0}}let M=f1(g);if(M===void 0)return;let ee;switch(d){case Z.Parameter_0_implicitly_has_an_1_type.code:if(kg(M)){qun(s,V,c,M,h,R,_),ee=M;break}case Z.Rest_parameter_0_implicitly_has_an_any_type.code:if(S(M)){let re=Ma(O,Si);wFs(s,V,c,re,M,h,R,_),ee=re}break;case Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:wg(M)&&Ir(M.name)&&(Uit(s,V,c,M,a2e(M.name,h,_),h,R),ee=M);break;case Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:kg(M)&&(qun(s,V,c,M,h,R,_),ee=M);break;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:xo.isThisTypeAnnotatable(M)&&S(M)&&(TFs(s,c,M,h,R,_),ee=M);break;default:return pe.fail(String(d))}return V.writeFixes(s),ee}function zun(s,c,g,d,h,_,S){Ir(d.name)&&Uit(s,c,g,d,a2e(d.name,h,S),h,_)}function wFs(s,c,g,d,h,_,S,R){if(!Ir(d.name))return;let T=DFs(h,g,_,R);if(pe.assert(h.parameters.length===T.length,"Parameter count and inference count should match"),wo(h))$un(s,g,T,_,S);else{let O=uA(h)&&!ep(h,21,g);O&&s.insertNodeBefore(g,ma(h.parameters),me.createToken(21));for(let{declaration:V,type:M}of T)V&&!V.type&&!V.initializer&&Uit(s,c,g,V,M,_,S);O&&s.insertNodeAfter(g,Ei(h.parameters),me.createToken(22))}}function TFs(s,c,g,d,h,_){let S=egn(g,c,d,_);if(!S||!S.length)return;let R=gXt(d,S,_).thisParameter(),T=fpe(R,g,d,h);T&&(wo(g)?RFs(s,c,g,T):s.tryInsertThisTypeAnnotation(c,g,T))}function RFs(s,c,g,d){s.addJSDocTags(c,g,[me.createJSDocThisTag(void 0,me.createJSDocTypeExpression(d))])}function qun(s,c,g,d,h,_,S){let R=Nc(d.parameters);if(R&&Ir(d.name)&&Ir(R.name)){let T=a2e(d.name,h,S);T===h.getTypeChecker().getAnyType()&&(T=a2e(R.name,h,S)),wo(d)?$un(s,g,[{declaration:R,type:T}],h,_):Uit(s,c,g,R,T,h,_)}}function Uit(s,c,g,d,h,_,S){let R=fpe(h,d,_,S);if(R)if(wo(g)&&d.kind!==172){let T=nc(d)?Gs(d.parent.parent,Eh):d;if(!T)return;let O=me.createJSDocTypeExpression(R),V=wg(d)?me.createJSDocReturnTag(void 0,O,void 0):me.createJSDocTypeTag(void 0,O,void 0);s.addJSDocTags(g,T,[V])}else NFs(R,d,g,s,c,Hg(_.getCompilerOptions()))||s.tryInsertTypeAnnotation(g,d,R)}function NFs(s,c,g,d,h,_){let S=xQ(s,_);return S&&d.tryInsertTypeAnnotation(g,c,S.typeNode)?(F(S.symbols,R=>h.addImportFromExportedSymbol(R,!0)),!0):!1}function $un(s,c,g,d,h){let _=g.length&&g[0].declaration.parent;if(!_)return;let S=Xt(g,R=>{let T=R.declaration;if(T.initializer||sN(T)||!Ir(T.name))return;let O=R.type&&fpe(R.type,T,d,h);if(O){let V=me.cloneNode(T.name);return ti(V,7168),{name:me.cloneNode(T.name),param:T,isOptional:!!R.isOptional,typeNode:O}}});if(S.length)if(uA(_)||jA(_)){let R=uA(_)&&!ep(_,21,c);R&&s.insertNodeBefore(c,ma(_.parameters),me.createToken(21)),F(S,({typeNode:T,param:O})=>{let V=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(T)),M=me.createJSDocComment(void 0,[V]);s.insertNodeAt(c,O.getStart(c),M,{suffix:" "})}),R&&s.insertNodeAfter(c,Ei(_.parameters),me.createToken(22))}else{let R=lt(S,({name:T,typeNode:O,isOptional:V})=>me.createJSDocParameterTag(void 0,T,!!V,me.createJSDocTypeExpression(O),!1,void 0));s.addJSDocTags(c,_,R)}}function uXt(s,c,g){return Xt(zp.getReferenceEntriesForNode(-1,s,c,c.getSourceFiles(),g),d=>d.kind!==zp.EntryKind.Span?Gs(d.node,Ir):void 0)}function a2e(s,c,g){let d=uXt(s,c,g);return gXt(c,d,g).single()}function DFs(s,c,g,d){let h=egn(s,c,g,d);return h&&gXt(g,h,d).parameters(s)||s.parameters.map(_=>({declaration:_,type:Ir(_.name)?a2e(_.name,g,d):g.getTypeChecker().getAnyType()}))}function egn(s,c,g,d){let h;switch(s.kind){case 177:h=ep(s,137,c);break;case 220:case 219:let _=s.parent;h=(nc(_)||pi(_))&&Ir(_.name)?_.name:s.name;break;case 263:case 175:case 174:h=s.name;break}if(h)return uXt(h,g,d)}function gXt(s,c,g){let d=s.getTypeChecker(),h={string:()=>d.getStringType(),number:()=>d.getNumberType(),Array:kt=>d.createArrayType(kt),Promise:kt=>d.createPromiseType(kt)},_=[d.getStringType(),d.getNumberType(),d.createArrayType(d.getAnyType()),d.createPromiseType(d.getAnyType())];return{single:T,parameters:O,thisParameter:V};function S(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function R(kt){let tr=new Map;for(let Gr of kt)Gr.properties&&Gr.properties.forEach((dt,pr)=>{tr.has(pr)||tr.set(pr,[]),tr.get(pr).push(dt)});let ur=new Map;return tr.forEach((Gr,dt)=>{ur.set(dt,R(Gr))}),{isNumber:kt.some(Gr=>Gr.isNumber),isString:kt.some(Gr=>Gr.isString),isNumberOrString:kt.some(Gr=>Gr.isNumberOrString),candidateTypes:jt(kt,Gr=>Gr.candidateTypes),properties:ur,calls:jt(kt,Gr=>Gr.calls),constructs:jt(kt,Gr=>Gr.constructs),numberIndex:F(kt,Gr=>Gr.numberIndex),stringIndex:F(kt,Gr=>Gr.stringIndex),candidateThisTypes:jt(kt,Gr=>Gr.candidateThisTypes),inferredTypes:void 0}}function T(){return Tt(M(c))}function O(kt){if(c.length===0||!kt.parameters)return;let tr=S();for(let Gr of c)g.throwIfCancellationRequested(),ee(Gr,tr);let ur=[...tr.constructs||[],...tr.calls||[]];return kt.parameters.map((Gr,dt)=>{let pr=[],ot=TB(Gr),ir=!1;for(let Yt of ur)if(Yt.argumentTypes.length<=dt)ir=wo(kt),pr.push(d.getUndefinedType());else if(ot)for(let Tr=dt;Trur.every(dt=>!dt(Gr)))}function Ye(kt){return Tt(Qe(kt))}function Tt(kt){if(!kt.length)return d.getAnyType();let tr=d.getUnionType([d.getStringType(),d.getNumberType()]),Gr=et(kt,[{high:pr=>pr===d.getStringType()||pr===d.getNumberType(),low:pr=>pr===tr},{high:pr=>!(pr.flags&16385),low:pr=>!!(pr.flags&16385)},{high:pr=>!(pr.flags&114689)&&!(la(pr)&16),low:pr=>!!(la(pr)&16)}]),dt=Gr.filter(pr=>la(pr)&16);return dt.length&&(Gr=Gr.filter(pr=>!(la(pr)&16)),Gr.push(at(dt))),d.getWidenedType(d.getUnionType(Gr.map(d.getBaseTypeOfLiteralType),2))}function at(kt){if(kt.length===1)return kt[0];let tr=[],ur=[],Gr=[],dt=[],pr=!1,ot=!1,ir=gl();for(let Tr of kt){for(let Zi of d.getPropertiesOfType(Tr))ir.add(Zi.escapedName,Zi.valueDeclaration?d.getTypeOfSymbolAtLocation(Zi,Zi.valueDeclaration):d.getAnyType());tr.push(...d.getSignaturesOfType(Tr,0)),ur.push(...d.getSignaturesOfType(Tr,1));let Cn=d.getIndexInfoOfType(Tr,0);Cn&&(Gr.push(Cn.type),pr=pr||Cn.isReadonly);let jn=d.getIndexInfoOfType(Tr,1);jn&&(dt.push(jn.type),ot=ot||jn.isReadonly)}let qt=ke(ir,(Tr,Cn)=>{let jn=Cn.lengthd.getBaseTypeOfLiteralType(ir)),ot=(Gr=kt.calls)!=null&&Gr.length?Ct(kt):void 0;return ot&&pr?dt.push(d.getUnionType([ot,...pr],2)):(ot&&dt.push(ot),B(pr)&&dt.push(...pr)),dt.push(...mt(kt)),dt}function Ct(kt){let tr=new Map;kt.properties&&kt.properties.forEach((pr,ot)=>{let ir=d.createSymbol(4,ot);ir.links.type=Ye(pr),tr.set(ot,ir)});let ur=kt.calls?[_r(kt.calls)]:[],Gr=kt.constructs?[_r(kt.constructs)]:[],dt=kt.stringIndex?[d.createIndexInfo(d.getStringType(),Ye(kt.stringIndex),!1)]:[];return d.createAnonymousType(void 0,tr,ur,Gr,dt)}function mt(kt){if(!kt.properties||!kt.properties.size)return[];let tr=_.filter(ur=>yt(ur,kt));return 0Rt(ur,kt)):[]}function yt(kt,tr){return tr.properties?!Fh(tr.properties,(ur,Gr)=>{let dt=d.getTypeOfPropertyOfType(kt,Gr);return dt?ur.calls?!d.getSignaturesOfType(dt,0).length||!d.isTypeAssignableTo(dt,Wt(ur.calls)):!d.isTypeAssignableTo(dt,Ye(ur)):!0}):!1}function Rt(kt,tr){if(!(la(kt)&4)||!tr.properties)return kt;let ur=kt.target,Gr=Ws(ur.typeParameters);if(!Gr)return kt;let dt=[];return tr.properties.forEach((pr,ot)=>{let ir=d.getTypeOfPropertyOfType(ur,ot);pe.assert(!!ir,"generic should have all the properties of its reference."),dt.push(...Lt(ir,Ye(pr),Gr))}),h[kt.symbol.escapedName](Tt(dt))}function Lt(kt,tr,ur){if(kt===ur)return[tr];if(kt.flags&3145728)return jt(kt.types,pr=>Lt(pr,tr,ur));if(la(kt)&4&&la(tr)&4){let pr=d.getTypeArguments(kt),ot=d.getTypeArguments(tr),ir=[];if(pr&&ot)for(let qt=0;qtdt.argumentTypes.length));for(let dt=0;dtot.argumentTypes[dt]||d.getUndefinedType())),kt.some(ot=>ot.argumentTypes[dt]===void 0)&&(pr.flags|=16777216),tr.push(pr)}let Gr=Ye(R(kt.map(dt=>dt.return_)));return d.createSignature(void 0,void 0,void 0,tr,Gr,void 0,ur,0)}function Gt(kt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(kt.candidateTypes||(kt.candidateTypes=[])).push(tr)}function it(kt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(kt.candidateThisTypes||(kt.candidateThisTypes=[])).push(tr)}}var AXt="fixReturnTypeInAsyncFunction",tgn=[Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];Gg({errorCodes:tgn,fixIds:[AXt],getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_=d.getTypeChecker(),S=rgn(g,d.getTypeChecker(),h.start);if(!S)return;let{returnTypeNode:R,returnType:T,promisedTypeNode:O,promisedType:V}=S,M=xo.ChangeTracker.with(c,ee=>ngn(ee,g,R,O));return[gg(AXt,M,[Z.Replace_0_with_Promise_1,_.typeToString(T),_.typeToString(V)],AXt,Z.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:s=>Jd(s,tgn,(c,g)=>{let d=rgn(g.file,s.program.getTypeChecker(),g.start);d&&ngn(c,g.file,d.returnTypeNode,d.promisedTypeNode)})});function rgn(s,c,g){if(wo(s))return;let d=Jc(s,g),h=ji(d,Gd),_=h?.type;if(!_)return;let S=c.getTypeFromTypeNode(_),R=c.getAwaitedType(S)||c.getVoidType(),T=c.typeToTypeNode(R,_,void 0);if(T)return{returnTypeNode:_,returnType:S,promisedTypeNode:T,promisedType:R}}function ngn(s,c,g,d){s.replaceNode(c,g,me.createTypeReferenceNode("Promise",[d]))}var ign="disableJsDiagnostics",sgn="disableJsDiagnostics",ogn=Xt(Object.keys(Z),s=>{let c=Z[s];return c.category===1?c.code:void 0});Gg({errorCodes:ogn,getCodeActions:function(c){let{sourceFile:g,program:d,span:h,host:_,formatContext:S}=c;if(!wo(g)||!Iz(g,d.getCompilerOptions()))return;let R=g.checkJsDirective?"":JF(_,S.options),T=[uR(ign,[Uon(g.fileName,[x1e(g.checkJsDirective?RA(g.checkJsDirective.pos,g.checkJsDirective.end):$d(0,0),`// @ts-nocheck${R}`)])],Z.Disable_checking_for_this_file)];return xo.isValidLocationToAddComment(g,h.start)&&T.unshift(gg(ign,xo.ChangeTracker.with(c,O=>agn(O,g,h.start)),Z.Ignore_this_error_message,sgn,Z.Add_ts_ignore_to_all_error_messages)),T},fixIds:[sgn],getAllCodeActions:s=>{let c=new Set;return Jd(s,ogn,(g,d)=>{xo.isValidLocationToAddComment(d.file,d.start)&&agn(g,d.file,d.start,c)})}});function agn(s,c,g,d){let{line:h}=Ra(c,g);(!d||Ar(d,h))&&s.insertCommentBeforeLine(c,h,g," @ts-ignore")}function dXt(s,c,g,d,h,_,S){let R=s.symbol.members;for(let T of c)R.has(T.escapedName)||lgn(T,s,g,d,h,_,S,void 0)}function Ise(s){return{trackSymbol:()=>!1,moduleResolverHost:ant(s.program,s.host)}}var cgn=(s=>(s[s.Method=1]="Method",s[s.Property=2]="Property",s[s.All=3]="All",s))(cgn||{});function lgn(s,c,g,d,h,_,S,R,T=3,O=!1){let V=s.getDeclarations(),M=Nc(V),ee=d.program.getTypeChecker(),re=Hg(d.program.getCompilerOptions()),ge=M?.kind??172,Ie=yt(s,M),_e=M?c_(M):0,Ee=_e&256;Ee|=_e&1?1:_e&4?4:0,M&&n0(M)&&(Ee|=512);let Ne=Tt(),Te=ee.getWidenedType(ee.getTypeOfSymbolAtLocation(s,c)),Ze=!!(s.flags&16777216),Pe=!!(c.flags&33554432)||O,Ke=E1(g,h),et=1|(Ke===0?268435456:0);switch(ge){case 172:case 173:let Rt=ee.typeToTypeNode(Te,c,et,8,Ise(d));if(_){let je=xQ(Rt,re);je&&(Rt=je.typeNode,UU(_,je.symbols))}S(me.createPropertyDeclaration(Ne,M?Qe(Ie):s.getName(),Ze&&T&2?me.createToken(58):void 0,Rt,void 0));break;case 178:case 179:{pe.assertIsDefined(V);let je=ee.typeToTypeNode(Te,c,et,void 0,Ise(d)),Wt=GW(V,M),_r=Wt.secondAccessor?[Wt.firstAccessor,Wt.secondAccessor]:[Wt.firstAccessor];if(_){let Gt=xQ(je,re);Gt&&(je=Gt.typeNode,UU(_,Gt.symbols))}for(let Gt of _r)if(wg(Gt))S(me.createGetAccessorDeclaration(Ne,Qe(Ie),E,mt(je),Ct(R,Ke,Pe)));else{pe.assertNode(Gt,kg,"The counterpart to a getter should be a setter");let it=z7(Gt),kt=it&&Ir(it.name)?Vo(it.name):void 0;S(me.createSetAccessorDeclaration(Ne,Qe(Ie),IXt(1,[kt],[mt(je)],1,!1),Ct(R,Ke,Pe)))}break}case 174:case 175:pe.assertIsDefined(V);let Lt=Te.isUnion()?jt(Te.types,je=>je.getCallSignatures()):Te.getCallSignatures();if(!zt(Lt))break;if(V.length===1){pe.assert(Lt.length===1,"One declaration implies one signature");let je=Lt[0];Ye(Ke,je,Ne,Qe(Ie),Ct(R,Ke,Pe));break}for(let je of Lt)je.declaration&&je.declaration.flags&33554432||Ye(Ke,je,Ne,Qe(Ie));if(!Pe)if(V.length>Lt.length){let je=ee.getSignatureFromDeclaration(V[V.length-1]);Ye(Ke,je,Ne,Qe(Ie),Ct(R,Ke))}else pe.assert(V.length===Lt.length,"Declarations and signatures should match count"),S(ZFs(ee,d,c,Lt,Qe(Ie),Ze&&!!(T&1),Ne,Ke,R));break}function Ye(Rt,Lt,je,Wt,_r){let Gt=Kit(175,d,Rt,Lt,_r,Wt,je,Ze&&!!(T&1),c,_);Gt&&S(Gt)}function Tt(){let Rt;return Ee&&(Rt=zr(Rt,me.createModifiersFromModifierFlags(Ee))),at()&&(Rt=Ft(Rt,me.createToken(164))),Rt&&me.createNodeArray(Rt)}function at(){return!!(d.program.getCompilerOptions().noImplicitOverride&&M&&FW(M))}function Qe(Rt){return Ir(Rt)&&Rt.escapedText==="constructor"?me.createComputedPropertyName(me.createStringLiteral(Vo(Rt),Ke===0)):KA(Rt,!1)}function Ct(Rt,Lt,je){return je?void 0:KA(Rt,!1)||hXt(Lt)}function mt(Rt){return KA(Rt,!1)}function yt(Rt,Lt){if(aI(Rt)&262144){let je=Rt.links.nameType;if(je&&p2(je))return me.createIdentifier(Bc(f2(je)))}return KA(fl(Lt),!1)}}function Kit(s,c,g,d,h,_,S,R,T,O){let V=c.program,M=V.getTypeChecker(),ee=Hg(V.getCompilerOptions()),re=wo(T),ge=524545|(g===0?268435456:0),Ie=M.signatureToSignatureDeclaration(d,s,T,ge,8,Ise(c));if(!Ie)return;let _e=re?void 0:Ie.typeParameters,Ee=Ie.parameters,Ne=re?void 0:KA(Ie.type);if(O){if(_e){let Ke=Er(_e,et=>{let Ye=et.constraint,Tt=et.default;if(Ye){let at=xQ(Ye,ee);at&&(Ye=at.typeNode,UU(O,at.symbols))}if(Tt){let at=xQ(Tt,ee);at&&(Tt=at.typeNode,UU(O,at.symbols))}return me.updateTypeParameterDeclaration(et,et.modifiers,et.name,Ye,Tt)});_e!==Ke&&(_e=gn(me.createNodeArray(Ke,_e.hasTrailingComma),_e))}let Pe=Er(Ee,Ke=>{let et=re?void 0:Ke.type;if(et){let Ye=xQ(et,ee);Ye&&(et=Ye.typeNode,UU(O,Ye.symbols))}return me.updateParameterDeclaration(Ke,Ke.modifiers,Ke.dotDotDotToken,Ke.name,re?void 0:Ke.questionToken,et,Ke.initializer)});if(Ee!==Pe&&(Ee=gn(me.createNodeArray(Pe,Ee.hasTrailingComma),Ee)),Ne){let Ke=xQ(Ne,ee);Ke&&(Ne=Ke.typeNode,UU(O,Ke.symbols))}}let Te=R?me.createToken(58):void 0,Ze=Ie.asteriskToken;if(jA(Ie))return me.updateFunctionExpression(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body);if(uA(Ie))return me.updateArrowFunction(Ie,S,_e,Ee,Ne,Ie.equalsGreaterThanToken,h??Ie.body);if(gu(Ie))return me.updateMethodDeclaration(Ie,S,Ze,_??me.createIdentifier(""),Te,_e,Ee,Ne,h);if(ah(Ie))return me.updateFunctionDeclaration(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body)}function pXt(s,c,g,d,h,_,S){let R=E1(c.sourceFile,c.preferences),T=Hg(c.program.getCompilerOptions()),O=Ise(c),V=c.program.getTypeChecker(),M=wo(S),{typeArguments:ee,arguments:re,parent:ge}=d,Ie=M?void 0:V.getContextualType(d),_e=lt(re,Tt=>Ir(Tt)?Tt.text:jo(Tt)&&Ir(Tt.name)?Tt.name.text:void 0),Ee=M?[]:lt(re,Tt=>V.getTypeAtLocation(Tt)),{argumentTypeNodes:Ne,argumentTypeParameters:Te}=GFs(V,g,Ee,S,T,1,8,O),Ze=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,Pe=Qd(ge)?me.createToken(42):void 0,Ke=M?void 0:kFs(V,Te,ee),et=IXt(re.length,_e,Ne,void 0,M),Ye=M||Ie===void 0?void 0:V.typeToTypeNode(Ie,S,void 0,void 0,O);switch(s){case 175:return me.createMethodDeclaration(Ze,Pe,h,void 0,Ke,et,Ye,hXt(R));case 174:return me.createMethodSignature(Ze,h,void 0,Ke,et,Ye===void 0?me.createKeywordTypeNode(159):Ye);case 263:return pe.assert(typeof h=="string"||Ir(h),"Unexpected name"),me.createFunctionDeclaration(Ze,Pe,h,Ke,et,Ye,lOe(Z.Function_not_implemented.message,R));default:pe.fail("Unexpected kind")}}function kFs(s,c,g){let d=new Set(c.map(_=>_[0])),h=new Map(c);if(g){let _=g.filter(R=>!c.some(T=>{var O;return s.getTypeAtLocation(R)===((O=T[1])==null?void 0:O.argumentType)})),S=d.size+_.length;for(let R=0;d.size{var S;return me.createTypeParameterDeclaration(void 0,_,(S=h.get(_))==null?void 0:S.constraint)})}function ugn(s){return 84+s<=90?String.fromCharCode(84+s):`T${s}`}function jit(s,c,g,d,h,_,S,R){let T=s.typeToTypeNode(g,d,_,S,R);if(T)return fXt(T,c,h)}function fXt(s,c,g){let d=xQ(s,g);return d&&(UU(c,d.symbols),s=d.typeNode),KA(s)}function xFs(s,c){var g;pe.assert(c.typeArguments);let d=c.typeArguments,h=c.target;for(let _=0;_T===d[O]))return _}return d.length}function ggn(s,c,g,d,h,_){let S=s.typeToTypeNode(c,g,d,h,_);if(S){if(oh(S)){let R=c;if(R.typeArguments&&S.typeArguments){let T=xFs(s,R);if(T=d?me.createToken(58):void 0,h?void 0:g?.[R]||me.createKeywordTypeNode(159),void 0);_.push(V)}return _}function ZFs(s,c,g,d,h,_,S,R,T){let O=d[0],V=d[0].minArgumentCount,M=!1;for(let Ie of d)V=Math.min(Ie.minArgumentCount,V),x0(Ie)&&(M=!0),Ie.parameters.length>=O.parameters.length&&(!x0(Ie)||x0(O))&&(O=Ie);let ee=O.parameters.length-(x0(O)?1:0),re=O.parameters.map(Ie=>Ie.name),ge=IXt(ee,re,void 0,V,!1);if(M){let Ie=me.createParameterDeclaration(void 0,me.createToken(26),re[ee]||"rest",ee>=V?me.createToken(58):void 0,me.createArrayTypeNode(me.createKeywordTypeNode(159)),void 0);ge.push(Ie)}return VFs(S,h,_,void 0,ge,LFs(d,s,c,g),R,T)}function LFs(s,c,g,d){if(B(s)){let h=c.getUnionType(lt(s,c.getReturnTypeOfSignature));return c.typeToTypeNode(h,d,1,8,Ise(g))}}function VFs(s,c,g,d,h,_,S,R){return me.createMethodDeclaration(s,void 0,c,g?me.createToken(58):void 0,d,h,_,R||hXt(S))}function hXt(s){return lOe(Z.Method_not_implemented.message,s)}function lOe(s,c){return me.createBlock([me.createThrowStatement(me.createNewExpression(me.createIdentifier("Error"),void 0,[me.createStringLiteral(s,c===0)]))],!0)}function mXt(s,c,g){let d=k7(c);if(!d)return;let h=fgn(d,"compilerOptions");if(h===void 0){s.insertNodeAtObjectStart(c,d,_Xt("compilerOptions",me.createObjectLiteralExpression(g.map(([S,R])=>_Xt(S,R)),!0)));return}let _=h.initializer;if(ag(_))for(let[S,R]of g){let T=fgn(_,S);T===void 0?s.insertNodeAtObjectStart(c,_,_Xt(S,R)):s.replaceNode(c,T.initializer,R)}}function CXt(s,c,g,d){mXt(s,c,[[g,d]])}function _Xt(s,c){return me.createPropertyAssignment(me.createStringLiteral(s),c)}function fgn(s,c){return de(s.properties,g=>Cm(g)&&!!g.name&&Lg(g.name)&&g.name.text===c)}function xQ(s,c){let g,d=Mr(s,h,uc);if(g&&d)return{typeNode:d,symbols:g};function h(_){if(Gy(_)&&_.qualifier){let S=T0(_.qualifier);if(!S.symbol)return _s(_,h,void 0);let R=DWe(S.symbol,c),T=R!==S.text?Ign(_.qualifier,me.createIdentifier(R)):_.qualifier;g=Ft(g,S.symbol);let O=Os(_.typeArguments,h,uc);return me.createTypeReferenceNode(T,O)}return _s(_,h,void 0)}}function Ign(s,c){return s.kind===80?c:me.createQualifiedName(Ign(s.left,c),s.right)}function UU(s,c){c.forEach(g=>s.addImportFromExportedSymbol(g,!0))}function yXt(s,c){let g=Rs(c),d=Jc(s,c.start);for(;d.end_.replaceNode(c,g,d));return uR(bgn,h,[Z.Replace_import_with_0,h[0].textChanges[0].newText])}Gg({errorCodes:[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],getCodeActions:zFs});function zFs(s){let c=s.sourceFile,g=Z.This_expression_is_not_callable.code===s.errorCode?214:215,d=ji(Jc(c,s.span.start),_=>_.kind===g);if(!d)return[];let h=d.expression;return Sgn(s,h)}Gg({errorCodes:[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_does_not_satisfy_the_constraint_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_predicate_0_is_not_assignable_to_1.code,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,Z._0_index_type_1_is_not_assignable_to_2_index_type_3.code,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:qFs});function qFs(s){let c=s.sourceFile,g=ji(Jc(c,s.span.start),d=>d.getStart()===s.span.start&&d.getEnd()===s.span.start+s.span.length);return g?Sgn(s,g):[]}function Sgn(s,c){let g=s.program.getTypeChecker().getTypeAtLocation(c);if(!(g.symbol&&ww(g.symbol)&&g.symbol.links.originatingImport))return[];let d=[],h=g.symbol.links.originatingImport;if(jp(h)||Pr(d,jFs(s,h)),un(c)&&!(sh(c.parent)&&c.parent.name===c)){let _=s.sourceFile,S=xo.ChangeTracker.with(s,R=>R.replaceNode(_,c,me.createPropertyAccessExpression(c,"default"),{}));d.push(uR(bgn,S,Z.Use_synthetic_default_member))}return d}var bXt="strictClassInitialization",EXt="addMissingPropertyDefiniteAssignmentAssertions",SXt="addMissingPropertyUndefinedType",vXt="addMissingPropertyInitializer",vgn=[Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];Gg({errorCodes:vgn,getCodeActions:function(c){let g=Bgn(c.sourceFile,c.span.start);if(!g)return;let d=[];return Ft(d,eZs(c,g)),Ft(d,$Fs(c,g)),Ft(d,tZs(c,g)),d},fixIds:[EXt,SXt,vXt],getAllCodeActions:s=>Jd(s,vgn,(c,g)=>{let d=Bgn(g.file,g.start);if(d)switch(s.fixId){case EXt:wgn(c,g.file,d.prop);break;case SXt:Tgn(c,g.file,d);break;case vXt:let h=s.program.getTypeChecker(),_=Ngn(h,d.prop);if(!_)return;Rgn(c,g.file,d.prop,_);break;default:pe.fail(JSON.stringify(s.fixId))}})});function Bgn(s,c){let g=Jc(s,c);if(Ir(g)&&pi(g.parent)){let d=Zh(g.parent);if(d)return{type:d,prop:g.parent,isJs:wo(g.parent)}}}function $Fs(s,c){if(c.isJs)return;let g=xo.ChangeTracker.with(s,d=>wgn(d,s.sourceFile,c.prop));return gg(bXt,g,[Z.Add_definite_assignment_assertion_to_property_0,c.prop.getText()],EXt,Z.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function wgn(s,c,g){Oy(g);let d=me.updatePropertyDeclaration(g,g.modifiers,g.name,me.createToken(54),g.type,g.initializer);s.replaceNode(c,g,d)}function eZs(s,c){let g=xo.ChangeTracker.with(s,d=>Tgn(d,s.sourceFile,c));return gg(bXt,g,[Z.Add_undefined_type_to_property_0,c.prop.name.getText()],SXt,Z.Add_undefined_type_to_all_uninitialized_properties)}function Tgn(s,c,g){let d=me.createKeywordTypeNode(157),h=gS(g.type)?g.type.types.concat(d):[g.type,d],_=me.createUnionTypeNode(h);g.isJs?s.addJSDocTags(c,g.prop,[me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(_))]):s.replaceNode(c,g.type,_)}function tZs(s,c){if(c.isJs)return;let g=s.program.getTypeChecker(),d=Ngn(g,c.prop);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Rgn(_,s.sourceFile,c.prop,d));return gg(bXt,h,[Z.Add_initializer_to_property_0,c.prop.name.getText()],vXt,Z.Add_initializers_to_all_uninitialized_properties)}function Rgn(s,c,g,d){Oy(g);let h=me.updatePropertyDeclaration(g,g.modifiers,g.name,g.questionToken,g.type,d);s.replaceNode(c,g,h)}function Ngn(s,c){return Dgn(s,s.getTypeFromTypeNode(c.type))}function Dgn(s,c){if(c.flags&512)return c===s.getFalseType()||c===s.getFalseType(!0)?me.createFalse():me.createTrue();if(c.isStringLiteral())return me.createStringLiteral(c.value);if(c.isNumberLiteral())return me.createNumericLiteral(c.value);if(c.flags&2048)return me.createBigIntLiteral(c.value);if(c.isUnion())return J(c.types,g=>Dgn(s,g));if(c.isClass()){let g=hN(c.symbol);if(!g||Ga(g,64))return;let d=pN(g);return d&&d.parameters.length?void 0:me.createNewExpression(me.createIdentifier(c.symbol.name),void 0,void 0)}else if(s.isArrayLikeType(c))return me.createArrayLiteralExpression()}var BXt="requireInTs",kgn=[Z.require_call_may_be_converted_to_an_import.code];Gg({errorCodes:kgn,getCodeActions(s){let c=Ggn(s.sourceFile,s.program,s.span.start,s.preferences);if(!c)return;let g=xo.ChangeTracker.with(s,d=>xgn(d,s.sourceFile,c));return[gg(BXt,g,Z.Convert_require_to_import,BXt,Z.Convert_all_require_to_import)]},fixIds:[BXt],getAllCodeActions:s=>Jd(s,kgn,(c,g)=>{let d=Ggn(g.file,s.program,g.start,s.preferences);d&&xgn(c,s.sourceFile,d)})});function xgn(s,c,g){let{allowSyntheticDefaults:d,defaultImportName:h,namedImports:_,statement:S,moduleSpecifier:R}=g;s.replaceNode(c,S,h&&!d?me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(void 0,h,_),R,void 0))}function Ggn(s,c,g,d){let{parent:h}=Jc(s,g);ly(h,!0)||pe.failBadSyntaxKind(h);let _=Ma(h.parent,nc),S=E1(s,d),R=Gs(_.name,Ir),T=$m(_.name)?rZs(_.name):void 0;if(R||T){let O=ma(h.arguments);return{allowSyntheticDefaults:iQ(c.getCompilerOptions()),defaultImportName:R,namedImports:T,statement:Ma(_.parent.parent,Eh),moduleSpecifier:MW(O)?me.createStringLiteral(O.text,S===0):O}}}function rZs(s){let c=[];for(let g of s.elements){if(!Ir(g.name)||g.initializer)return;c.push(me.createImportSpecifier(!1,Gs(g.propertyName,Ir),g.name))}if(c.length)return me.createNamedImports(c)}var wXt="useDefaultImport",Fgn=[Z.Import_may_be_converted_to_a_default_import.code];Gg({errorCodes:Fgn,getCodeActions(s){let{sourceFile:c,span:{start:g}}=s,d=Zgn(c,g);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Lgn(_,c,d,s.preferences));return[gg(wXt,h,Z.Convert_to_default_import,wXt,Z.Convert_all_to_default_imports)]},fixIds:[wXt],getAllCodeActions:s=>Jd(s,Fgn,(c,g)=>{let d=Zgn(g.file,g.start);d&&Lgn(c,g.file,d,s.preferences)})});function Zgn(s,c){let g=Jc(s,c);if(!Ir(g))return;let{parent:d}=g;if(Zm(d)&&MF(d.moduleReference))return{importNode:d,name:g,moduleSpecifier:d.moduleReference.expression};if(Px(d)&&Yf(d.parent.parent)){let h=d.parent.parent;return{importNode:h,name:g,moduleSpecifier:h.moduleSpecifier}}}function Lgn(s,c,g,d){s.replaceNode(c,g.importNode,$W(g.name,void 0,g.moduleSpecifier,E1(c,d)))}var TXt="useBigintLiteral",Vgn=[Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];Gg({errorCodes:Vgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Wgn(d,c.sourceFile,c.span));if(g.length>0)return[gg(TXt,g,Z.Convert_to_a_bigint_numeric_literal,TXt,Z.Convert_all_to_bigint_numeric_literals)]},fixIds:[TXt],getAllCodeActions:s=>Jd(s,Vgn,(c,g)=>Wgn(c,g.file,g))});function Wgn(s,c,g){let d=Gs(Jc(c,g.start),yC);if(!d)return;let h=d.getText(c)+"n";s.replaceNode(c,d,me.createBigIntLiteral(h))}var nZs="fixAddModuleReferTypeMissingTypeof",RXt=nZs,Ogn=[Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];Gg({errorCodes:Ogn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Pgn(g,d.start),_=xo.ChangeTracker.with(c,S=>Mgn(S,g,h));return[gg(RXt,_,Z.Add_missing_typeof,RXt,Z.Add_missing_typeof)]},fixIds:[RXt],getAllCodeActions:s=>Jd(s,Ogn,(c,g)=>Mgn(c,s.sourceFile,Pgn(g.file,g.start)))});function Pgn(s,c){let g=Jc(s,c);return pe.assert(g.kind===102,"This token should be an ImportKeyword"),pe.assert(g.parent.kind===206,"Token parent should be an ImportType"),g.parent}function Mgn(s,c,g){let d=me.updateImportTypeNode(g,g.argument,g.attributes,g.qualifier,g.typeArguments,!0);s.replaceNode(c,g,d)}var NXt="wrapJsxInFragment",Hgn=[Z.JSX_expressions_must_have_one_parent_element.code];Gg({errorCodes:Hgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Ygn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,S=>Qgn(S,g,h));return[gg(NXt,_,Z.Wrap_in_JSX_fragment,NXt,Z.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[NXt],getAllCodeActions:s=>Jd(s,Hgn,(c,g)=>{let d=Ygn(s.sourceFile,g.start);d&&Qgn(c,s.sourceFile,d)})});function Ygn(s,c){let h=Jc(s,c).parent.parent;if(!(!po(h)&&(h=h.parent,!po(h)))&&af(h.operatorToken))return h}function Qgn(s,c,g){let d=iZs(g);d&&s.replaceNode(c,g,me.createJsxFragment(me.createJsxOpeningFragment(),d,me.createJsxJsxClosingFragment()))}function iZs(s){let c=[],g=s;for(;;)if(po(g)&&af(g.operatorToken)&&g.operatorToken.kind===28){if(c.push(g.left),WJ(g.right))return c.push(g.right),c;if(po(g.right)){g=g.right;continue}else return}else return}var DXt="wrapDecoratorInParentheses",Xgn=[Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];Gg({errorCodes:Xgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Jgn(d,c.sourceFile,c.span.start));return[gg(DXt,g,Z.Wrap_in_parentheses,DXt,Z.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[DXt],getAllCodeActions:s=>Jd(s,Xgn,(c,g)=>Jgn(c,g.file,g.start))});function Jgn(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createParenthesizedExpression(h.expression);s.replaceNode(c,h.expression,_)}var kXt="fixConvertToMappedObjectType",Ugn=[Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];Gg({errorCodes:Ugn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Kgn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,R=>jgn(R,g,h)),S=Vo(h.container.name);return[gg(kXt,_,[Z.Convert_0_to_mapped_object_type,S],kXt,[Z.Convert_0_to_mapped_object_type,S])]},fixIds:[kXt],getAllCodeActions:s=>Jd(s,Ugn,(c,g)=>{let d=Kgn(g.file,g.start);d&&jgn(c,g.file,d)})});function Kgn(s,c){let g=Jc(s,c),d=Gs(g.parent.parent,R0);if(!d)return;let h=d_(d.parent)?d.parent:Gs(d.parent.parent,OB);if(h)return{indexSignature:d,container:h}}function sZs(s,c){return me.createTypeAliasDeclaration(s.modifiers,s.name,s.typeParameters,c)}function jgn(s,c,{indexSignature:g,container:d}){let _=(d_(d)?d.members:d.type.members).filter(V=>!R0(V)),S=ma(g.parameters),R=me.createTypeParameterDeclaration(void 0,Ma(S.name,Ir),S.type),T=me.createMappedTypeNode(R3(g)?me.createModifier(148):void 0,R,void 0,g.questionToken,g.type,void 0),O=me.createIntersectionTypeNode([...H7(d),T,..._.length?[me.createTypeLiteralNode(_)]:E]);s.replaceNode(c,d,sZs(d,O))}var zgn="removeAccidentalCallParentheses",oZs=[Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];Gg({errorCodes:oZs,getCodeActions(s){let c=ji(Jc(s.sourceFile,s.span.start),Ll);if(!c)return;let g=xo.ChangeTracker.with(s,d=>{d.deleteRange(s.sourceFile,{pos:c.expression.end,end:c.end})});return[uR(zgn,g,Z.Remove_parentheses)]},fixIds:[zgn]});var xXt="removeUnnecessaryAwait",qgn=[Z.await_has_no_effect_on_the_type_of_this_expression.code];Gg({errorCodes:qgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>$gn(d,c.sourceFile,c.span));if(g.length>0)return[gg(xXt,g,Z.Remove_unnecessary_await,xXt,Z.Remove_all_unnecessary_uses_of_await)]},fixIds:[xXt],getAllCodeActions:s=>Jd(s,qgn,(c,g)=>$gn(c,g.file,g))});function $gn(s,c,g){let d=Gs(Jc(c,g.start),R=>R.kind===135),h=d&&Gs(d.parent,C1);if(!h)return;let _=h;if(dI(h.parent)){let R=_U(h.expression,!1);if(Ir(R)){let T=Vm(h.parent.pos,c);T&&T.kind!==105&&(_=h.parent)}}s.replaceNode(c,_,h.expression)}var eAn=[Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],GXt="splitTypeOnlyImport";Gg({errorCodes:eAn,fixIds:[GXt],getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>rAn(d,tAn(c.sourceFile,c.span),c));if(g.length)return[gg(GXt,g,Z.Split_into_two_separate_import_declarations,GXt,Z.Split_all_invalid_type_only_imports)]},getAllCodeActions:s=>Jd(s,eAn,(c,g)=>{rAn(c,tAn(s.sourceFile,g),s)})});function tAn(s,c){return ji(Jc(s,c.start),Yf)}function rAn(s,c,g){if(!c)return;let d=pe.checkDefined(c.importClause);s.replaceNode(g.sourceFile,c,me.updateImportDeclaration(c,c.modifiers,me.updateImportClause(d,d.phaseModifier,d.name,void 0),c.moduleSpecifier,c.attributes)),s.insertNodeAfter(g.sourceFile,c,me.createImportDeclaration(void 0,me.updateImportClause(d,d.phaseModifier,void 0,d.namedBindings),c.moduleSpecifier,c.attributes))}var FXt="fixConvertConstToLet",nAn=[Z.Cannot_assign_to_0_because_it_is_a_constant.code];Gg({errorCodes:nAn,getCodeActions:function(c){let{sourceFile:g,span:d,program:h}=c,_=iAn(g,d.start,h);if(_===void 0)return;let S=xo.ChangeTracker.with(c,R=>sAn(R,g,_.token));return[XYt(FXt,S,Z.Convert_const_to_let,FXt,Z.Convert_all_const_to_let)]},getAllCodeActions:s=>{let{program:c}=s,g=new Set;return nq(xo.ChangeTracker.with(s,d=>{iq(s,nAn,h=>{let _=iAn(h.file,h.start,c);if(_&&Vy(g,xg(_.symbol)))return sAn(d,h.file,_.token)})}))},fixIds:[FXt]});function iAn(s,c,g){var d;let _=g.getTypeChecker().getSymbolAtLocation(Jc(s,c));if(_===void 0)return;let S=Gs((d=_?.valueDeclaration)==null?void 0:d.parent,A_);if(S===void 0)return;let R=ep(S,87,s);if(R!==void 0)return{symbol:_,token:R}}function sAn(s,c,g){s.replaceNode(c,g,me.createToken(121))}var ZXt="fixExpectedComma",aZs=Z._0_expected.code,oAn=[aZs];Gg({errorCodes:oAn,getCodeActions(s){let{sourceFile:c}=s,g=aAn(c,s.span.start,s.errorCode);if(!g)return;let d=xo.ChangeTracker.with(s,h=>cAn(h,c,g));return[gg(ZXt,d,[Z.Change_0_to_1,";",","],ZXt,[Z.Change_0_to_1,";",","])]},fixIds:[ZXt],getAllCodeActions:s=>Jd(s,oAn,(c,g)=>{let d=aAn(g.file,g.start,g.code);d&&cAn(c,s.sourceFile,d)})});function aAn(s,c,g){let d=Jc(s,c);return d.kind===27&&d.parent&&(ag(d.parent)||YI(d.parent))?{node:d}:void 0}function cAn(s,c,{node:g}){let d=me.createToken(28);s.replaceNode(c,g,d)}var cZs="addVoidToPromise",lAn="addVoidToPromise",uAn=[Z.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,Z.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];Gg({errorCodes:uAn,fixIds:[lAn],getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>gAn(g,s.sourceFile,s.span,s.program));if(c.length>0)return[gg(cZs,c,Z.Add_void_to_Promise_resolved_without_a_value,lAn,Z.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(s){return Jd(s,uAn,(c,g)=>gAn(c,g.file,g,s.program,new Set))}});function gAn(s,c,g,d,h){let _=Jc(c,g.start);if(!Ir(_)||!Ll(_.parent)||_.parent.expression!==_||_.parent.arguments.length!==0)return;let S=d.getTypeChecker(),R=S.getSymbolAtLocation(_),T=R?.valueDeclaration;if(!T||!Si(T)||!m2(T.parent.parent)||h?.has(T))return;h?.add(T);let O=lZs(T.parent.parent);if(zt(O)){let V=O[0],M=!gS(V)&&!Cv(V)&&Cv(me.createUnionTypeNode([V,me.createKeywordTypeNode(116)]).types[0]);M&&s.insertText(c,V.pos,"("),s.insertText(c,V.end,M?") | void":" | void")}else{let V=S.getResolvedSignature(_.parent),M=V?.parameters[0],ee=M&&S.getTypeOfSymbolAtLocation(M,T.parent.parent);wo(T)?(!ee||ee.flags&3)&&(s.insertText(c,T.parent.parent.end,")"),s.insertText(c,Yu(c.text,T.parent.parent.pos),"/** @type {Promise} */(")):(!ee||ee.flags&2)&&s.insertText(c,T.parent.parent.expression.end,"")}}function lZs(s){var c;if(wo(s)){if(dI(s.parent)){let g=(c=uv(s.parent))==null?void 0:c.typeExpression.type;if(g&&oh(g)&&Ir(g.typeName)&&Vo(g.typeName)==="Promise")return g.typeArguments}}else return s.typeArguments}var aq={};o(aq,{CompletionKind:()=>TAn,CompletionSource:()=>dAn,SortText:()=>u0,StringCompletions:()=>cst,SymbolOriginInfoKind:()=>pAn,createCompletionDetails:()=>AOe,createCompletionDetailsForSymbol:()=>QXt,getCompletionEntriesFromSymbols:()=>HXt,getCompletionEntryDetails:()=>OZs,getCompletionEntrySymbol:()=>MZs,getCompletionsAtPosition:()=>hZs,getDefaultCommitCharacters:()=>KU,getPropertiesForObjectExpression:()=>sst,moduleSpecifierResolutionCacheAttemptLimit:()=>AAn,moduleSpecifierResolutionLimit:()=>LXt});var LXt=100,AAn=1e3,u0={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(s){return"z"+s},ObjectLiteralProperty(s,c){return`${s}\0${c}\0`},SortBelow(s){return s+"1"}},GN=[".",",",";"],zit=[".",";"],dAn=(s=>(s.ThisProperty="ThisProperty/",s.ClassMemberSnippet="ClassMemberSnippet/",s.TypeOnlyAlias="TypeOnlyAlias/",s.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",s.SwitchCases="SwitchCases/",s.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",s))(dAn||{}),pAn=(s=>(s[s.ThisType=1]="ThisType",s[s.SymbolMember=2]="SymbolMember",s[s.Export=4]="Export",s[s.Promise=8]="Promise",s[s.Nullable=16]="Nullable",s[s.ResolvedExport=32]="ResolvedExport",s[s.TypeOnlyAlias=64]="TypeOnlyAlias",s[s.ObjectLiteralMethod=128]="ObjectLiteralMethod",s[s.Ignore=256]="Ignore",s[s.ComputedPropertyName=512]="ComputedPropertyName",s[s.SymbolMemberNoExport=2]="SymbolMemberNoExport",s[s.SymbolMemberExport=6]="SymbolMemberExport",s))(pAn||{});function uZs(s){return!!(s.kind&1)}function gZs(s){return!!(s.kind&2)}function uOe(s){return!!(s&&s.kind&4)}function vpe(s){return!!(s&&s.kind===32)}function AZs(s){return uOe(s)||vpe(s)||VXt(s)}function dZs(s){return(uOe(s)||vpe(s))&&!!s.isFromPackageJson}function pZs(s){return!!(s.kind&8)}function fZs(s){return!!(s.kind&16)}function fAn(s){return!!(s&&s.kind&64)}function IAn(s){return!!(s&&s.kind&128)}function IZs(s){return!!(s&&s.kind&256)}function VXt(s){return!!(s&&s.kind&512)}function hAn(s,c,g,d,h,_,S,R,T){var O,V,M,ee;let re=Zg(),ge=S||cz(d.getCompilerOptions())||((O=_.autoImportSpecifierExcludeRegexes)==null?void 0:O.length),Ie=!1,_e=0,Ee=0,Ne=0,Te=0,Ze=T({tryResolve:Ke,skippedAny:()=>Ie,resolvedAny:()=>Ee>0,resolvedBeyondLimit:()=>Ee>LXt}),Pe=Te?` (${(Ne/Te*100).toFixed(1)}% hit rate)`:"";return(V=c.log)==null||V.call(c,`${s}: resolved ${Ee} module specifiers, plus ${_e} ambient and ${Ne} from cache${Pe}`),(M=c.log)==null||M.call(c,`${s}: response is ${Ie?"incomplete":"complete"}`),(ee=c.log)==null||ee.call(c,`${s}: ${Zg()-re}`),Ze;function Ke(et,Ye){if(Ye){let Ct=g.getModuleSpecifierForBestExportInfo(et,h,R);return Ct&&_e++,Ct||"failed"}let Tt=ge||_.allowIncompleteCompletions&&Ee{let ge=Xt(T.entries,Ie=>{var _e;if(!Ie.hasAction||!Ie.source||!Ie.data||mAn(Ie.data))return Ie;if(!YAn(Ie.name,V))return;let{origin:Ee}=pe.checkDefined(NAn(Ie.name,Ie.data,d,h)),Ne=M.get(c.path,Ie.data.exportMapKey),Te=Ne&&re.tryResolve(Ne,!Xr(A2(Ee.moduleSymbol.name)));if(Te==="skipped")return Ie;if(!Te||Te==="failed"){(_e=h.log)==null||_e.call(h,`Unexpected failure resolving auto import for '${Ie.name}' from '${Ie.source}'`);return}let Ze={...Ee,kind:32,moduleSpecifier:Te.moduleSpecifier};return Ie.data=BAn(Ze),Ie.source=MXt(Ze),Ie.sourceDisplay=[fS(Ze.moduleSpecifier)],Ie});return re.skippedAny()||(T.isIncomplete=void 0),ge});return T.entries=ee,T.flags=(T.flags||0)|4,T.optionalReplacementSpan=bAn(O),T}function WXt(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:s,defaultCommitCharacters:KU(!1)}}function CAn(s,c,g,d,h,_){let S=Jc(s,c);if(!h3(S)&&!oR(S))return[];let R=oR(S)?S:S.parent;if(!oR(R))return[];let T=R.parent;if(!Eu(T))return[];let O=s0(s),V=h.includeCompletionsWithSnippetText||void 0,M=ze(R.tags,ee=>AS(ee)&&ee.getEnd()<=c);return Xt(T.parameters,ee=>{if(!DL(ee).length){if(Ir(ee.name)){let re={tabstop:1},ge=ee.name.text,Ie=c2e(ge,ee.initializer,ee.dotDotDotToken,O,!1,!1,g,d,h),_e=V?c2e(ge,ee.initializer,ee.dotDotDotToken,O,!1,!0,g,d,h,re):void 0;return _&&(Ie=Ie.slice(1),_e&&(_e=_e.slice(1))),{name:Ie,kind:"parameter",sortText:u0.LocationPriority,insertText:V?_e:void 0,isSnippet:V}}else if(ee.parent.parameters.indexOf(ee)===M){let re=`param${M}`,ge=_An(re,ee.name,ee.initializer,ee.dotDotDotToken,O,!1,g,d,h),Ie=V?_An(re,ee.name,ee.initializer,ee.dotDotDotToken,O,!0,g,d,h):void 0,_e=ge.join(fN(d)+"* "),Ee=Ie?.join(fN(d)+"* ");return _&&(_e=_e.slice(1),Ee&&(Ee=Ee.slice(1))),{name:_e,kind:"parameter",sortText:u0.LocationPriority,insertText:V?Ee:void 0,isSnippet:V}}}})}function _An(s,c,g,d,h,_,S,R,T){if(!h)return[c2e(s,g,d,h,!1,_,S,R,T,{tabstop:1})];return O(s,c,g,d,{tabstop:1});function O(M,ee,re,ge,Ie){if($m(ee)&&!ge){let Ee={tabstop:Ie.tabstop},Ne=c2e(M,re,ge,h,!0,_,S,R,T,Ee),Te=[];for(let Ze of ee.elements){let Pe=V(M,Ze,Ee);if(Pe)Te.push(...Pe);else{Te=void 0;break}}if(Te)return Ie.tabstop=Ee.tabstop,[Ne,...Te]}return[c2e(M,re,ge,h,!1,_,S,R,T,Ie)]}function V(M,ee,re){if(!ee.propertyName&&Ir(ee.name)||Ir(ee.name)){let ge=ee.propertyName?YY(ee.propertyName):ee.name.text;if(!ge)return;let Ie=`${M}.${ge}`;return[c2e(Ie,ee.initializer,ee.dotDotDotToken,h,!1,_,S,R,T,re)]}else if(ee.propertyName){let ge=YY(ee.propertyName);return ge&&O(`${M}.${ge}`,ee.name,ee.initializer,ee.dotDotDotToken,re)}}}function c2e(s,c,g,d,h,_,S,R,T,O){if(_&&pe.assertIsDefined(O),c&&(s=CZs(s,c)),_&&(s=PW(s)),d){let V="*";if(h)pe.assert(!g,"Cannot annotate a rest parameter with type 'Object'."),V="Object";else{if(c){let re=S.getTypeAtLocation(c.parent);if(!(re.flags&16385)){let ge=c.getSourceFile(),_e=E1(ge,T)===0?268435456:0,Ee=S.typeToTypeNode(re,ji(c,Eu),_e);if(Ee){let Ne=_?est({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target}):jW({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target});ti(Ee,1),V=Ne.printNode(4,Ee,ge)}}}_&&V==="*"&&(V=`\${${O.tabstop++}:${V}}`)}let M=!h&&g?"...":"",ee=_?`\${${O.tabstop++}}`:"";return`@param {${M}${V}} ${s} ${ee}`}else{let V=_?`\${${O.tabstop++}}`:"";return`@param ${s} ${V}`}}function CZs(s,c){let g=c.getText().trim();return g.includes(` -`)||g.length>80?`[${s}]`:`[${s}=${g}]`}function _Zs(s){return{name:Vi(s),kind:"keyword",kindModifiers:"",sortText:u0.GlobalsOrKeywords}}function yZs(s,c){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:c,entries:s.slice(),defaultCommitCharacters:KU(c)}}function yAn(s,c,g){return{kind:4,keywordCompletions:kAn(s,c),isNewIdentifierLocation:g}}function bZs(s){switch(s){case 156:return 8;default:pe.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function bAn(s){return s?.kind===80?Hy(s):void 0}function EZs(s,c,g,d,h,_,S,R,T,O){let{symbols:V,contextToken:M,completionKind:ee,isInSnippetScope:re,isNewIdentifierLocation:ge,location:Ie,propertyAccessToConvert:_e,keywordFilters:Ee,symbolToOriginInfoMap:Ne,recommendedCompletion:Te,isJsxInitializer:Ze,isTypeOnlyLocation:Pe,isJsxIdentifierExpected:Ke,isRightOfOpenTag:et,isRightOfDotOrQuestionDot:Ye,importStatementCompletion:Tt,insideJsDocTagTypeExpression:at,symbolToSortTextMap:Qe,hasUnresolvedAutoImports:Ct,defaultCommitCharacters:mt}=_,yt=_.literals,Rt=g.getTypeChecker();if(jne(s.scriptKind)===1){let it=vZs(Ie,s);if(it)return it}let Lt=ji(M,Rie);if(Lt&&(Ks(M)||DW(M,Lt.expression))){let it=FWe(Rt,Lt.parent.clauses);yt=yt.filter(kt=>!it.hasValue(kt)),V.forEach((kt,tr)=>{if(kt.valueDeclaration&&HF(kt.valueDeclaration)){let ur=Rt.getConstantValue(kt.valueDeclaration);ur!==void 0&&it.hasValue(ur)&&(Ne[tr]={kind:256})}})}let je=Ya(),Wt=EAn(s,d);if(Wt&&!ge&&(!V||V.length===0)&&Ee===0)return;let _r=HXt(V,je,void 0,M,Ie,T,s,c,g,Hg(d),h,ee,S,d,R,Pe,_e,Ke,Ze,Tt,Te,Ne,Qe,Ke,et,O);if(Ee!==0)for(let it of kAn(Ee,!at&&s0(s)))(Pe&&cpe(Ta(it.name))||!Pe&&cLs(it.name)||!_r.has(it.name))&&(_r.add(it.name),Gc(je,it,gOe,void 0,!0));for(let it of UZs(M,T))_r.has(it.name)||(_r.add(it.name),Gc(je,it,gOe,void 0,!0));for(let it of yt){let kt=wZs(s,S,it);_r.add(kt.name),Gc(je,kt,gOe,void 0,!0)}Wt||BZs(s,Ie.pos,_r,Hg(d),je);let Gt;if(S.includeCompletionsWithInsertText&&M&&!et&&!Ye&&(Gt=ji(M,Sde))){let it=SAn(Gt,s,S,d,c,g,R);it&&je.push(it.entry)}return{flags:_.flags,isGlobalCompletion:re,isIncomplete:S.allowIncompleteCompletions&&Ct?!0:void 0,isMemberCompletion:SZs(ee),isNewIdentifierLocation:ge,optionalReplacementSpan:bAn(Ie),entries:je,defaultCommitCharacters:mt??KU(ge)}}function EAn(s,c){return!s0(s)||!!Iz(s,c)}function SAn(s,c,g,d,h,_,S){let R=s.clauses,T=_.getTypeChecker(),O=T.getTypeAtLocation(s.parent.expression);if(O&&O.isUnion()&&ue(O.types,V=>V.isLiteral())){let V=FWe(T,R),M=Hg(d),ee=E1(c,g),re=F0.createImportAdder(c,_,g,h),ge=[];for(let Pe of O.types)if(Pe.flags&1024){pe.assert(Pe.symbol,"An enum member type should have a symbol"),pe.assert(Pe.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");let Ke=Pe.symbol.valueDeclaration&&T.getConstantValue(Pe.symbol.valueDeclaration);if(Ke!==void 0){if(V.hasValue(Ke))continue;V.addValue(Ke)}let et=F0.typeToAutoImportableTypeNode(T,re,Pe,s,M);if(!et)return;let Ye=qit(et,M,ee);if(!Ye)return;ge.push(Ye)}else if(!V.hasValue(Pe.value))switch(typeof Pe.value){case"object":ge.push(Pe.value.negative?me.createPrefixUnaryExpression(41,me.createBigIntLiteral({negative:!1,base10Value:Pe.value.base10Value})):me.createBigIntLiteral(Pe.value));break;case"number":ge.push(Pe.value<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-Pe.value)):me.createNumericLiteral(Pe.value));break;case"string":ge.push(me.createStringLiteral(Pe.value,ee===0));break}if(ge.length===0)return;let Ie=lt(ge,Pe=>me.createCaseClause(Pe,[])),_e=JF(h,S?.options),Ee=est({removeComments:!0,module:d.module,moduleResolution:d.moduleResolution,target:d.target,newLine:Q1e(_e)}),Ne=S?Pe=>Ee.printAndFormatNode(4,Pe,c,S):Pe=>Ee.printNode(4,Pe,c),Te=lt(Ie,(Pe,Ke)=>g.includeCompletionsWithSnippetText?`${Ne(Pe)}$${Ke+1}`:`${Ne(Pe)}`).join(_e);return{entry:{name:`${Ee.printNode(4,Ie[0],c)} ...`,kind:"",sortText:u0.GlobalsOrKeywords,insertText:Te,hasAction:re.hasFixes()||void 0,source:"SwitchCases/",isSnippet:g.includeCompletionsWithSnippetText?!0:void 0},importAdder:re}}}function qit(s,c,g){switch(s.kind){case 184:let d=s.typeName;return $it(d,c,g);case 200:let h=qit(s.objectType,c,g),_=qit(s.indexType,c,g);return h&&_&&me.createElementAccessExpression(h,_);case 202:let S=s.literal;switch(S.kind){case 11:return me.createStringLiteral(S.text,g===0);case 9:return me.createNumericLiteral(S.text,S.numericLiteralFlags)}return;case 197:let R=qit(s.type,c,g);return R&&(Ir(R)?R:me.createParenthesizedExpression(R));case 187:return $it(s.exprName,c,g);case 206:pe.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function $it(s,c,g){if(Ir(s))return s;let d=Bc(s.right.escapedText);return nEe(d,c)?me.createPropertyAccessExpression($it(s.left,c,g),d):me.createElementAccessExpression($it(s.left,c,g),me.createStringLiteral(d,g===0))}function SZs(s){switch(s){case 0:case 3:case 2:return!0;default:return!1}}function vZs(s,c){let g=ji(s,d=>{switch(d.kind){case 288:return!0;case 44:case 32:case 80:case 212:return!1;default:return"quit"}});if(g){let d=!!ep(g,32,c),S=g.parent.openingElement.tagName.getText(c)+(d?"":">"),R=Hy(g.tagName),T={name:S,kind:"class",kindModifiers:void 0,sortText:u0.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:R,entries:[T],defaultCommitCharacters:KU(!1)}}}function BZs(s,c,g,d,h){yit(s).forEach((_,S)=>{if(_===c)return;let R=Bc(S);!g.has(R)&&qh(R,d)&&(g.add(R),Gc(h,{name:R,kind:"warning",kindModifiers:"",sortText:u0.JavascriptIdentifiers,isFromUncheckedFile:!0,commitCharacters:[]},gOe))})}function OXt(s,c,g){return typeof g=="object"?OW(g)+"n":Xs(g)?ppe(s,c,g):JSON.stringify(g)}function wZs(s,c,g){return{name:OXt(s,c,g),kind:"string",kindModifiers:"",sortText:u0.LocationPriority,commitCharacters:[]}}function TZs(s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe,Ke,et){var Ye,Tt;let at,Qe,Ct=tnt(g,_),mt,yt,Rt=MXt(M),Lt,je,Wt,_r=T.getTypeChecker(),Gt=M&&fZs(M),it=M&&gZs(M)||V;if(M&&uZs(M))at=V?`this${Gt?"?.":""}[${PXt(S,Ne,O)}]`:`this${Gt?"?.":"."}${O}`;else if((it||Gt)&&re){at=it?V?`[${PXt(S,Ne,O)}]`:`[${O}]`:O,(Gt||re.questionDotToken)&&(at=`?.${at}`);let Gr=ep(re,25,S)||ep(re,29,S);if(!Gr)return;let dt=Ac(O,re.name.text)?re.name.end:Gr.end;Ct=RA(Gr.getStart(S),dt)}if(ge&&(at===void 0&&(at=O),at=`{${at}}`,typeof ge!="boolean"&&(Ct=Hy(ge,S))),M&&pZs(M)&&re){at===void 0&&(at=O);let Gr=Vm(re.pos,S),dt="";Gr&&BWe(Gr.end,Gr.parent,S)&&(dt=";"),dt+=`(await ${re.expression.getText()})`,at=V?`${dt}${at}`:`${dt}${Gt?"?.":"."}${at}`;let ot=Gs(re.parent,C1)?re.parent:re.expression;Ct=RA(ot.getStart(S),re.end)}if(vpe(M)&&(Lt=[fS(M.moduleSpecifier)],Ie&&({insertText:at,replacementSpan:Ct}=ZZs(O,Ie,M,_e,S,T,Ne),yt=Ne.includeCompletionsWithSnippetText?!0:void 0)),M?.kind===64&&(je=!0),Te===0&&d&&((Ye=Vm(d.pos,S,d))==null?void 0:Ye.kind)!==28&&(gu(d.parent.parent)||wg(d.parent.parent)||kg(d.parent.parent)||Mx(d.parent)||((Tt=ji(d.parent,Cm))==null?void 0:Tt.getLastToken(S))===d||l0(d.parent)&&Ra(S,d.getEnd()).line!==Ra(S,_).line)&&(Rt="ObjectLiteralMemberWithComma/",je=!0),Ne.includeCompletionsWithClassMemberSnippets&&Ne.includeCompletionsWithInsertText&&Te===3&&NZs(s,h,S)){let Gr,dt=vAn(R,T,Ee,Ne,O,s,h,_,d,Ze);if(dt)({insertText:at,filterText:Qe,isSnippet:yt,importAdder:Gr}=dt),(Gr?.hasFixes()||dt.eraseRange)&&(je=!0,Rt="ClassMemberSnippet/");else return}if(M&&IAn(M)&&({insertText:at,isSnippet:yt,labelDetails:Wt}=M,Ne.useLabelDetailsInCompletionEntries||(O=O+Wt.detail,Wt=void 0),Rt="ObjectLiteralMethodSnippet/",c=u0.SortBelow(c)),Pe&&!Ke&&Ne.includeCompletionsWithSnippetText&&Ne.jsxAttributeCompletionStyle&&Ne.jsxAttributeCompletionStyle!=="none"&&!(TN(h.parent)&&h.parent.initializer)){let Gr=Ne.jsxAttributeCompletionStyle==="braces",dt=_r.getTypeOfSymbolAtLocation(s,h);Ne.jsxAttributeCompletionStyle==="auto"&&!(dt.flags&528)&&!(dt.flags&1048576&&de(dt.types,pr=>!!(pr.flags&528)))&&(dt.flags&402653316||dt.flags&1048576&&ue(dt.types,pr=>!!(pr.flags&402686084||kMt(pr)))?(at=`${PW(O)}=${ppe(S,Ne,"$1")}`,yt=!0):Gr=!0),Gr&&(at=`${PW(O)}={$1}`,yt=!0)}if(at!==void 0&&!Ne.includeCompletionsWithInsertText)return;(uOe(M)||vpe(M))&&(mt=BAn(M),je=!Ie);let kt=ji(h,Une);if(kt){let Gr=Hg(R.getCompilationSettings());if(!qh(O,Gr))at=PXt(S,Ne,O),kt.kind===276&&(p_.setText(S.text),p_.resetTokenState(_),p_.scan()===130&&p_.scan()===80||(at+=" as "+RZs(O,Gr)));else if(kt.kind===276){let dt=Ta(O);dt&&(dt===135||$ye(dt))&&(at=`${O} as ${O}_`)}}let tr=u9.getSymbolKind(_r,s,h),ur=tr==="warning"||tr==="string"?[]:void 0;return{name:O,kind:tr,kindModifiers:u9.getSymbolModifiers(_r,s),sortText:c,source:Rt,hasAction:je?!0:void 0,isRecommended:LZs(s,ee,_r)||void 0,insertText:at,filterText:Qe,replacementSpan:Ct,sourceDisplay:Lt,labelDetails:Wt,isSnippet:yt,isPackageJsonImport:dZs(M)||void 0,isImportStatementCompletion:!!Ie||void 0,data:mt,commitCharacters:ur,...et?{symbol:s}:void 0}}function RZs(s,c){let g=!1,d="",h;for(let _=0;_=65536?2:1)h=s.codePointAt(_),h!==void 0&&(_===0?Sd(h,c):c1(h,c))?(g&&(d+="_"),d+=String.fromCodePoint(h),g=!1):g=!0;return g&&(d+="_"),d||"_"}function NZs(s,c,g){return wo(c)?!1:!!(s.flags&106500)&&(xa(c)||c.parent&&c.parent.parent&&MI(c.parent)&&c===c.parent.name&&c.parent.getLastToken(g)===c.parent.name&&xa(c.parent.parent)||c.parent&&xie(c)&&xa(c.parent))}function vAn(s,c,g,d,h,_,S,R,T,O){let V=ji(S,xa);if(!V)return;let M,ee=h,re=h,ge=c.getTypeChecker(),Ie=S.getSourceFile(),_e=est({removeComments:!0,module:g.module,moduleResolution:g.moduleResolution,target:g.target,omitTrailingSemicolon:!1,newLine:Q1e(JF(s,O?.options))}),Ee=F0.createImportAdder(Ie,c,d,s),Ne;if(d.includeCompletionsWithSnippetText){M=!0;let Tt=me.createEmptyStatement();Ne=me.createBlock([Tt],!0),_Ee(Tt,{kind:0,order:0})}else Ne=me.createBlock([],!0);let Te=0,{modifiers:Ze,range:Pe,decorators:Ke}=DZs(T,Ie,R),et=Ze&64&&V.modifierFlagsCache&64,Ye=[];if(F0.addNewNodeForMemberSymbol(_,V,Ie,{program:c,host:s},d,Ee,Tt=>{let at=0;et&&(at|=64),MI(Tt)&&ge.getMemberOverrideModifierStatus(V,Tt,_)===1&&(at|=16),Ye.length||(Te=Tt.modifierFlagsCache|at),Tt=me.replaceModifiers(Tt,Te),Ye.push(Tt)},Ne,F0.PreserveOptionalFlags.Property,!!et),Ye.length){let Tt=_.flags&8192,at=Te|16|1;Tt?at|=1024:at|=136;let Qe=Ze&at;if(Ze&~at)return;if(Te&4&&Qe&1&&(Te&=-5),Qe!==0&&!(Qe&1)&&(Te&=-2),Te|=Qe,Ye=Ye.map(mt=>me.replaceModifiers(mt,Te)),Ke?.length){let mt=Ye[Ye.length-1];hQ(mt)&&(Ye[Ye.length-1]=me.replaceDecoratorsAndModifiers(mt,Ke.concat(iN(mt)||[])))}let Ct=131073;O?ee=_e.printAndFormatSnippetList(Ct,me.createNodeArray(Ye),Ie,O):ee=_e.printSnippetList(Ct,me.createNodeArray(Ye),Ie)}return{insertText:ee,filterText:re,isSnippet:M,importAdder:Ee,eraseRange:Pe}}function DZs(s,c,g){if(!s||Ra(c,g).line>Ra(c,s.getEnd()).line)return{modifiers:0};let d=0,h,_,S={pos:g,end:g};if(pi(s.parent)&&(_=kZs(s))){s.parent.modifiers&&(d|=Zw(s.parent.modifiers)&98303,h=s.parent.modifiers.filter(So)||[],S.pos=Math.min(...s.parent.modifiers.map(T=>T.getStart(c))));let R=eQ(_);d&R||(d|=R,S.pos=Math.min(S.pos,s.getStart(c))),s.parent.name!==s&&(S.end=s.parent.name.getStart(c))}return{modifiers:d,decorators:h,range:S.posR.getSignaturesOfType(Te,0).length>0);if(Ne.length===1)re=Ne[0];else return}if(R.getSignaturesOfType(re,0).length!==1)return;let Ie=R.typeToTypeNode(re,c,ee,void 0,F0.getNoopSymbolTrackerWithResolver({program:d,host:h}));if(!Ie||!F_(Ie))return;let _e;if(_.includeCompletionsWithSnippetText){let Ne=me.createEmptyStatement();_e=me.createBlock([Ne],!0),_Ee(Ne,{kind:0,order:0})}else _e=me.createBlock([],!0);let Ee=Ie.parameters.map(Ne=>me.createParameterDeclaration(void 0,Ne.dotDotDotToken,Ne.name,void 0,void 0,Ne.initializer));return me.createMethodDeclaration(void 0,void 0,O,void 0,void 0,Ee,void 0,_e)}default:return}}function est(s){let c,g=xo.createWriter(fN(s)),d=jW(s,g),h={...g,write:ee=>_(ee,()=>g.write(ee)),nonEscapingWrite:g.write,writeLiteral:ee=>_(ee,()=>g.writeLiteral(ee)),writeStringLiteral:ee=>_(ee,()=>g.writeStringLiteral(ee)),writeSymbol:(ee,re)=>_(ee,()=>g.writeSymbol(ee,re)),writeParameter:ee=>_(ee,()=>g.writeParameter(ee)),writeComment:ee=>_(ee,()=>g.writeComment(ee)),writeProperty:ee=>_(ee,()=>g.writeProperty(ee))};return{printSnippetList:S,printAndFormatSnippetList:T,printNode:O,printAndFormatNode:M};function _(ee,re){let ge=PW(ee);if(ge!==ee){let Ie=g.getTextPos();re();let _e=g.getTextPos();c=Ft(c||(c=[]),{newText:ge,span:{start:Ie,length:_e-Ie}})}else re()}function S(ee,re,ge){let Ie=R(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function R(ee,re,ge){return c=void 0,h.clear(),d.writeList(ee,re,ge,h),h.getText()}function T(ee,re,ge,Ie){let _e={text:R(ee,re,ge),getLineAndCharacterOfPosition(Ze){return Ra(this,Ze)}},Ee=GWe(Ie,ge),Ne=jt(re,Ze=>{let Pe=xo.assignPositionsToNode(Ze);return _m.formatNodeGivenIndentation(Pe,_e,ge.languageVariant,0,0,{...Ie,options:Ee})}),Te=c?bo(Nn(Ne,c),(Ze,Pe)=>bn(Ze.span,Pe.span)):Ne;return xo.applyChanges(_e.text,Te)}function O(ee,re,ge){let Ie=V(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function V(ee,re,ge){return c=void 0,h.clear(),d.writeNode(ee,re,ge,h),h.getText()}function M(ee,re,ge,Ie){let _e={text:V(ee,re,ge),getLineAndCharacterOfPosition(Pe){return Ra(this,Pe)}},Ee=GWe(Ie,ge),Ne=xo.assignPositionsToNode(re),Te=_m.formatNodeGivenIndentation(Ne,_e,ge.languageVariant,0,0,{...Ie,options:Ee}),Ze=c?bo(Nn(Te,c),(Pe,Ke)=>bn(Pe.span,Ke.span)):Te;return xo.applyChanges(_e.text,Ze)}}function BAn(s){let c=s.fileName?void 0:A2(s.moduleSymbol.name),g=s.isFromPackageJson?!0:void 0;return vpe(s)?{exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,ambientModuleName:c,fileName:s.fileName,isPackageJsonImport:g}:{exportName:s.exportName,exportMapKey:s.exportMapKey,fileName:s.fileName,ambientModuleName:s.fileName?void 0:A2(s.moduleSymbol.name),isPackageJsonImport:s.isFromPackageJson?!0:void 0}}function FZs(s,c,g){let d=s.exportName==="default",h=!!s.isPackageJsonImport;return mAn(s)?{kind:32,exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}:{kind:4,exportName:s.exportName,exportMapKey:s.exportMapKey,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}}function ZZs(s,c,g,d,h,_,S){let R=c.replacementSpan,T=PW(ppe(h,S,g.moduleSpecifier)),O=g.isDefaultExport?1:g.exportName==="export="?2:0,V=S.includeCompletionsWithSnippetText?"$1":"",M=F0.getImportKind(h,O,_,!0),ee=c.couldBeTypeOnlyImportSpecifier,re=c.isTopLevelTypeOnly?` ${Vi(156)} `:" ",ge=ee?`${Vi(156)} `:"",Ie=d?";":"";switch(M){case 3:return{replacementSpan:R,insertText:`import${re}${PW(s)}${V} = require(${T})${Ie}`};case 1:return{replacementSpan:R,insertText:`import${re}${PW(s)}${V} from ${T}${Ie}`};case 2:return{replacementSpan:R,insertText:`import${re}* as ${PW(s)} from ${T}${Ie}`};case 0:return{replacementSpan:R,insertText:`import${re}{ ${ge}${PW(s)}${V} } from ${T}${Ie}`}}}function PXt(s,c,g){return/^\d+$/.test(g)?g:ppe(s,c,g)}function LZs(s,c,g){return s===c||!!(s.flags&1048576)&&g.getExportSymbolOfSymbol(s)===c}function MXt(s){if(uOe(s))return A2(s.moduleSymbol.name);if(vpe(s))return s.moduleSpecifier;if(s?.kind===1)return"ThisProperty/";if(s?.kind===64)return"TypeOnlyAlias/"}function HXt(s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe,Ke,et,Ye,Tt=!1){let at=Zg(),Qe=iLs(d,h),Ct=P1e(S),mt=T.getTypeChecker(),yt=new Map;for(let je=0;jepr.getSourceFile()===h.getSourceFile()));yt.set(it,dt),Gc(c,Gr,gOe,void 0,!0)}return V("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(Zg()-at)),{has:je=>yt.has(je),add:je=>yt.set(je,!0)};function Rt(je,Wt){var _r;let Gt=je.flags;if(h.parent&&yf(h.parent))return!0;if(Qe&&Gs(Qe,nc)&&(je.valueDeclaration===Qe||Nu(Qe.name)&&Qe.name.elements.some(tr=>tr===je.valueDeclaration)))return!1;let it=je.valueDeclaration??((_r=je.declarations)==null?void 0:_r[0]);if(Qe&&it){if(Si(Qe)&&Si(it)){let tr=Qe.parent.parameters;if(it.pos>=Qe.pos&&it.pos=Qe.pos&&it.posOXt(g,S,Te)===h.name);return Ne!==void 0?{type:"literal",literal:Ne}:J(O,(Te,Ze)=>{let Pe=re[Ze],Ke=rst(Te,Hg(R),Pe,ee,T.isJsxIdentifierExpected);return Ke&&Ke.name===h.name&&(h.source==="ClassMemberSnippet/"&&Te.flags&106500||h.source==="ObjectLiteralMethodSnippet/"&&Te.flags&8196||MXt(Pe)===h.source||h.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:Te,location:M,origin:Pe,contextToken:ge,previousToken:Ie,isJsxInitializer:_e,isTypeOnlyLocation:Ee}:void 0})||{type:"none"}}function OZs(s,c,g,d,h,_,S,R,T){let O=s.getTypeChecker(),V=s.getCompilerOptions(),{name:M,source:ee,data:re}=h,{previousToken:ge,contextToken:Ie}=tst(d,g);if(jz(g,d,ge))return cst.getStringLiteralCompletionDetails(M,g,d,ge,s,_,T,R);let _e=wAn(s,c,g,d,h,_,R);switch(_e.type){case"request":{let{request:Ee}=_e;switch(Ee.kind){case 1:return u5.getJSDocTagNameCompletionDetails(M);case 2:return u5.getJSDocTagCompletionDetails(M);case 3:return u5.getJSDocParameterNameCompletionDetails(M);case 4:return zt(Ee.keywordCompletions,Ne=>Ne.name===M)?YXt(M,"keyword",5):void 0;default:return pe.assertNever(Ee)}}case"symbol":{let{symbol:Ee,location:Ne,contextToken:Te,origin:Ze,previousToken:Pe}=_e,{codeActions:Ke,sourceDisplay:et}=PZs(M,Ne,Te,Ze,Ee,s,_,V,g,d,Pe,S,R,re,ee,T),Ye=VXt(Ze)?Ze.symbolName:Ee.name;return QXt(Ee,Ye,O,g,Ne,T,Ke,et)}case"literal":{let{literal:Ee}=_e;return YXt(OXt(g,R,Ee),"string",typeof Ee=="string"?8:7)}case"cases":{let Ee=SAn(Ie.parent,g,R,s.getCompilerOptions(),_,s,void 0);if(Ee?.importAdder.hasFixes()){let{entry:Ne,importAdder:Te}=Ee,Ze=xo.ChangeTracker.with({host:_,formatContext:S,preferences:R},Te.writeFixes);return{name:Ne.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Ze,description:wQ([Z.Includes_imports_of_types_referenced_by_0,M])}]}}return{name:M,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return DAn().some(Ee=>Ee.name===M)?YXt(M,"keyword",5):void 0;default:pe.assertNever(_e)}}function YXt(s,c,g){return AOe(s,"",c,[wE(s,g)])}function QXt(s,c,g,d,h,_,S,R){let{displayParts:T,documentation:O,symbolKind:V,tags:M}=g.runWithCancellationToken(_,ee=>u9.getSymbolDisplayPartsDocumentationAndSymbolKind(ee,s,d,h,h,7));return AOe(c,u9.getSymbolModifiers(g,s),V,T,O,M,S,R)}function AOe(s,c,g,d,h,_,S,R){return{name:s,kindModifiers:c,kind:g,displayParts:d,documentation:h,tags:_,codeActions:S,source:R,sourceDisplay:R}}function PZs(s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie){if(re?.moduleSpecifier&&V&&WAn(g||V,T).replacementSpan)return{codeActions:void 0,sourceDisplay:[fS(re.moduleSpecifier)]};if(ge==="ClassMemberSnippet/"){let{importAdder:Ke,eraseRange:et}=vAn(S,_,R,ee,s,h,c,O,g,M);if(Ke?.hasFixes()||et)return{sourceDisplay:void 0,codeActions:[{changes:xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},Tt=>{Ke&&Ke.writeFixes(Tt),et&&Tt.deleteRange(T,et)}),description:Ke?.hasFixes()?wQ([Z.Includes_imports_of_types_referenced_by_0,s]):wQ([Z.Update_modifiers_of_0,s])}]}}if(fAn(d)){let Ke=F0.getPromoteTypeOnlyCompletionAction(T,d.declaration.name,_,S,M,ee);return pe.assertIsDefined(Ke,"Expected to have a code action for promoting type-only alias"),{codeActions:[Ke],sourceDisplay:void 0}}if(ge==="ObjectLiteralMemberWithComma/"&&g){let Ke=xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},et=>et.insertText(T,g.end,","));if(Ke)return{sourceDisplay:void 0,codeActions:[{changes:Ke,description:wQ([Z.Add_missing_comma_for_object_member_completion_0,s])}]}}if(!d||!(uOe(d)||vpe(d)))return{codeActions:void 0,sourceDisplay:void 0};let _e=d.isFromPackageJson?S.getPackageJsonAutoImportProvider().getTypeChecker():_.getTypeChecker(),{moduleSymbol:Ee}=d,Ne=_e.getMergedSymbol(LC(h.exportSymbol||h,_e)),Te=g?.kind===30&&nI(g.parent),{moduleSpecifier:Ze,codeAction:Pe}=F0.getImportCompletionAction(Ne,Ee,re?.exportMapKey,T,s,Te,S,_,M,V&&Ir(V)?V.getStart(T):O,ee,Ie);return pe.assert(!re?.moduleSpecifier||Ze===re.moduleSpecifier),{sourceDisplay:[fS(Ze)],codeActions:[Pe]}}function MZs(s,c,g,d,h,_,S){let R=wAn(s,c,g,d,h,_,S);return R.type==="symbol"?R.symbol:void 0}var TAn=(s=>(s[s.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",s[s.Global=1]="Global",s[s.PropertyAccess=2]="PropertyAccess",s[s.MemberLike=3]="MemberLike",s[s.String=4]="String",s[s.None=5]="None",s))(TAn||{});function HZs(s,c,g){return J(c&&(c.isUnion()?c.types:[c]),d=>{let h=d&&d.symbol;return h&&h.flags&424&&!Dbe(h)?XXt(h,s,g):void 0})}function YZs(s,c,g,d){let{parent:h}=s;switch(s.kind){case 80:return SWe(s,d);case 64:switch(h.kind){case 261:return d.getContextualType(h.initializer);case 227:return d.getTypeAtLocation(h.left);case 292:return d.getContextualTypeForJsxAttribute(h);default:return}case 105:return d.getContextualType(h);case 84:let _=Gs(h,Rie);return _?Ent(_,d):void 0;case 19:return Tie(h)&&!wN(h.parent)&&!X3(h.parent)?d.getContextualTypeForJsxAttribute(h.parent):void 0;default:let S=p2e.getArgumentInfoForCompletions(s,c,g,d);return S?d.getContextualTypeForArgumentAtIndex(S.invocation,S.argumentIndex):vWe(s.kind)&&po(h)&&vWe(h.operatorToken.kind)?d.getTypeAtLocation(h.left):d.getContextualType(s,4)||d.getContextualType(s)}}function XXt(s,c,g){let d=g.getAccessibleSymbolChain(s,c,-1,!1);return d?ma(d):s.parent&&(QZs(s.parent)?s:XXt(s.parent,c,g))}function QZs(s){var c;return!!((c=s.declarations)!=null&&c.some(g=>g.kind===308))}function RAn(s,c,g,d,h,_,S,R,T,O){let V=s.getTypeChecker(),M=EAn(g,d),ee=Zg(),re=Jc(g,h);c("getCompletionData: Get current token: "+(Zg()-ee)),ee=Zg();let ge=s9(g,h,re);c("getCompletionData: Is inside comment: "+(Zg()-ee));let Ie=!1,_e=!1,Ee=!1;if(ge){if(RMt(g,h)){if(g.text.charCodeAt(h-1)===64)return{kind:1};{let $r=YB(h,g);if(!/[^*|\s(/)]/.test(g.text.substring($r,h)))return{kind:2}}}let Mt=KZs(re,h);if(Mt){if(Mt.tagName.pos<=h&&h<=Mt.tagName.end)return{kind:1};if(RN(Mt))_e=!0;else{let $r=Zi(Mt);if($r&&(re=Jc(g,h),(!re||!UT(re)&&(re.parent.kind!==349||re.parent.name!==re))&&(Ie=Hn($r))),!Ie&&AS(Mt)&&(af(Mt.name)||Mt.name.pos<=h&&h<=Mt.name.end))return{kind:3,tag:Mt}}}if(!Ie&&!_e){c("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}ee=Zg();let Ne=!Ie&&!_e&&s0(g),Te=tst(h,g),Ze=Te.previousToken,Pe=Te.contextToken;c("getCompletionData: Get previous token: "+(Zg()-ee));let Ke=re,et,Ye=!1,Tt=!1,at=!1,Qe=!1,Ct=!1,mt=!1,yt,Rt=Wb(g,h),Lt=0,je=!1,Wt=0,_r;if(Pe){let Mt=WAn(Pe,g);if(Mt.keywordCompletion){if(Mt.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[_Zs(Mt.keywordCompletion)],isNewIdentifierLocation:Mt.isNewIdentifierLocation};Lt=bZs(Mt.keywordCompletion)}if(Mt.replacementSpan&&_.includeCompletionsForImportStatements&&_.includeCompletionsWithInsertText&&(Wt|=2,yt=Mt,je=Mt.isNewIdentifierLocation),!Mt.replacementSpan&&Qu(Pe))return c("Returning an empty list because completion was requested in an invalid position."),Lt?yAn(Lt,Ne,Cs().isNewIdentifierLocation):void 0;let $r=Pe.parent;if(Pe.kind===25||Pe.kind===29)switch(Ye=Pe.kind===25,Tt=Pe.kind===29,$r.kind){case 212:et=$r,Ke=et.expression;let ri=CU(et);if(af(ri)||(Ll(Ke)||Eu(Ke))&&Ke.end===Pe.pos&&Ke.getChildCount(g)&&Ei(Ke.getChildren(g)).kind!==22)return;break;case 167:Ke=$r.left;break;case 268:Ke=$r.name;break;case 206:Ke=$r;break;case 237:Ke=$r.getFirstToken(g),pe.assert(Ke.kind===102||Ke.kind===105);break;default:return}else if(!yt){if($r&&$r.kind===212&&(Pe=$r,$r=$r.parent),re.parent===Rt)switch(re.kind){case 32:(re.parent.kind===285||re.parent.kind===287)&&(Rt=re);break;case 44:re.parent.kind===286&&(Rt=re);break}switch($r.kind){case 288:Pe.kind===44&&(Qe=!0,Rt=Pe);break;case 227:if(!VAn($r))break;case 286:case 285:case 287:mt=!0,Pe.kind===30&&(at=!0,Rt=Pe);break;case 295:case 294:(Ze.kind===20||Ze.kind===80&&Ze.parent.kind===292)&&(mt=!0);break;case 292:if($r.initializer===Ze&&Ze.endi5(Mt?R.getPackageJsonAutoImportProvider():s,R));if(Ye||Tt)Ns();else if(at)tr=V.getJsxIntrinsicTagNamesAt(Rt),pe.assertEachIsDefined(tr,"getJsxIntrinsicTagNames() should all be defined"),Ic(),it=1,Lt=0;else if(Qe){let Mt=Pe.parent.parent.openingElement.tagName,$r=V.getSymbolAtLocation(Mt);$r&&(tr=[$r]),it=1,Lt=0}else if(!Ic())return Lt?yAn(Lt,Ne,je):void 0;c("getCompletionData: Semantic work: "+(Zg()-Gt));let qt=Ze&&YZs(Ze,h,g,V),Tr=!Gs(Ze,CA)&&!mt?Xt(qt&&(qt.isUnion()?qt.types:[qt]),Mt=>Mt.isLiteral()&&!(Mt.flags&1024)?Mt.value:void 0):[],Cn=Ze&&qt&&HZs(Ze,qt,V);return{kind:0,symbols:tr,completionKind:it,isInSnippetScope:Ee,propertyAccessToConvert:et,isNewIdentifierLocation:je,location:Rt,keywordFilters:Lt,literals:Tr,symbolToOriginInfoMap:Gr,recommendedCompletion:Cn,previousToken:Ze,contextToken:Pe,isJsxInitializer:Ct,insideJsDocTagTypeExpression:Ie,symbolToSortTextMap:dt,isTypeOnlyLocation:ot,isJsxIdentifierExpected:mt,isRightOfOpenTag:at,isRightOfDotOrQuestionDot:Ye||Tt,importStatementCompletion:yt,hasUnresolvedAutoImports:kt,flags:Wt,defaultCommitCharacters:_r};function jn(Mt){switch(Mt.kind){case 342:case 349:case 343:case 345:case 347:case 350:case 351:return!0;case 346:return!!Mt.constraint;default:return!1}}function Zi(Mt){if(jn(Mt)){let $r=PB(Mt)?Mt.constraint:Mt.typeExpression;return $r&&$r.kind===310?$r:void 0}if(Zz(Mt)||S9e(Mt))return Mt.class}function Ns(){it=2;let Mt=Gy(Ke),$r=Mt&&!Ke.isTypeOf||kw(Ke.parent)||D1e(Pe,g,V),ri=tWe(Ke);if(mC(Ke)||Mt||jo(Ke)){let oo=Lh(Ke.parent);oo&&(je=!0,_r=[]);let Bs=V.getSymbolAtLocation(Ke);if(Bs&&(Bs=LC(Bs,V),Bs.flags&1920)){let Ys=V.getExportsOfModule(Bs);pe.assertEachIsDefined(Ys,"getExportsOfModule() should all be defined");let tn=ci=>V.isValidPropertyAccess(Mt?Ke:Ke.parent,ci.name),wn=ci=>UXt(ci,V),Mn=oo?ci=>{var es;return!!(ci.flags&1920)&&!((es=ci.declarations)!=null&&es.every(Oi=>Oi.parent===Ke.parent))}:ri?ci=>wn(ci)||tn(ci):$r||Ie?wn:tn;for(let ci of Ys)Mn(ci)&&tr.push(ci);if(!$r&&!Ie&&Bs.declarations&&Bs.declarations.some(ci=>ci.kind!==308&&ci.kind!==268&&ci.kind!==267)){let ci=V.getTypeOfSymbolAtLocation(Bs,Ke).getNonOptionalType(),es=!1;if(ci.isNullableType()){let Oi=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Oi||Tt)&&(ci=ci.getNonNullableType(),Oi&&(es=!0))}An(ci,!!(Ke.flags&65536),es)}return}}if(!$r||qY(Ke)){V.tryGetThisTypeAt(Ke,!1);let oo=V.getTypeAtLocation(Ke).getNonOptionalType();if($r)An(oo.getNonNullableType(),!1,!1);else{let Bs=!1;if(oo.isNullableType()){let Ys=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Ys||Tt)&&(oo=oo.getNonNullableType(),Ys&&(Bs=!0))}An(oo,!!(Ke.flags&65536),Bs)}}}function An(Mt,$r,ri){Mt.getStringIndexType()&&(je=!0,_r=[]),Tt&&zt(Mt.getCallSignatures())&&(je=!0,_r??(_r=GN));let oo=Ke.kind===206?Ke:Ke.parent;if(M)for(let Bs of Mt.getApparentProperties())V.isValidPropertyAccessForCompletions(oo,Mt,Bs)&&si(Bs,!1,ri);else tr.push(...Le(ost(Mt,V),Bs=>V.isValidPropertyAccessForCompletions(oo,Mt,Bs)));if($r&&_.includeCompletionsWithInsertText){let Bs=V.getPromisedTypeOfPromise(Mt);if(Bs)for(let Ys of Bs.getApparentProperties())V.isValidPropertyAccessForCompletions(oo,Bs,Ys)&&si(Ys,!0,ri)}}function si(Mt,$r,ri){var oo;let Bs=J(Mt.declarations,Mn=>Gs(fl(Mn),Un));if(Bs){let Mn=ks(Bs.expression),ci=Mn&&V.getSymbolAtLocation(Mn),es=ci&&XXt(ci,Pe,V),Oi=es&&xg(es);if(Oi&&Vy(pr,Oi)){let Vn=tr.length;tr.push(es),dt[xg(es)]=u0.GlobalsOrKeywords;let Ui=es.parent;if(!Ui||!QD(Ui)||V.tryGetMemberInModuleExportsAndProperties(es.name,Ui)!==es)Gr[Vn]={kind:wn(2)};else{let gs=Xr(A2(Ui.name))?(oo=UJ(Ui))==null?void 0:oo.fileName:void 0,{moduleSpecifier:fs}=(ur||(ur=F0.createImportSpecifierResolver(g,s,R,_))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:gs,isFromPackageJson:!1,moduleSymbol:Ui,symbol:es,targetFlags:LC(es,V).flags}],h,$L(Rt))||{};if(fs){let bi={kind:wn(6),moduleSymbol:Ui,isDefaultExport:!1,symbolName:es.name,exportName:es.name,fileName:gs,moduleSpecifier:fs};Gr[Vn]=bi}}}else if(_.includeCompletionsWithInsertText){if(Oi&&pr.has(Oi))return;tn(Mt),Ys(Mt),tr.push(Mt)}}else tn(Mt),Ys(Mt),tr.push(Mt);function Ys(Mn){tLs(Mn)&&(dt[xg(Mn)]=u0.LocalDeclarationPriority)}function tn(Mn){_.includeCompletionsWithInsertText&&($r&&Vy(pr,xg(Mn))?Gr[tr.length]={kind:wn(8)}:ri&&(Gr[tr.length]={kind:16}))}function wn(Mn){return ri?Mn|16:Mn}}function ks(Mt){return Ir(Mt)?Mt:jo(Mt)?ks(Mt.expression):void 0}function Ic(){return(Wr()||Wn()||ya()||pt()||on()||st()||ou()||nr()||Zn()||(Fl(),1))===1}function ou(){return Kr(Pe)?(it=5,je=!0,Lt=4,1):0}function Zn(){let Mt=hr(Pe),$r=Mt&&V.getContextualType(Mt.attributes);if(!$r)return 0;let ri=Mt&&V.getContextualType(Mt.attributes,4);return tr=Nn(tr,In(sst($r,ri,Mt.attributes,V),Mt.attributes.properties)),wt(),it=3,je=!1,1}function ya(){return yt?(je=!0,Pi(),1):0}function Fl(){Lt=Dn(Pe)?5:1,it=1,{isNewIdentifierLocation:je,defaultCommitCharacters:_r}=Cs(),Ze!==Pe&&pe.assert(!!Ze,"Expected 'contextToken' to be defined when different from 'previousToken'.");let Mt=Ze!==Pe?Ze.getStart():h,$r=$c(Pe,Mt,g)||g;Ee=Oo($r);let ri=(ot?0:111551)|788968|1920|2097152,oo=Ze&&!$L(Ze);tr=Nn(tr,V.getSymbolsInScope($r,ri)),pe.assertEachIsDefined(tr,"getSymbolsInScope() should all be defined");for(let Bs=0;Bstn.getSourceFile()===g)&&(dt[xg(Ys)]=u0.GlobalsOrKeywords),oo&&!(Ys.flags&111551)){let tn=Ys.declarations&&de(Ys.declarations,aN);if(tn){let wn={kind:64,declaration:tn};Gr[Bs]=wn}}}if(_.includeCompletionsWithInsertText&&$r.kind!==308){let Bs=V.tryGetThisTypeAt($r,!1,xa($r.parent)?$r:void 0);if(Bs&&!eLs(Bs,g,V))for(let Ys of ost(Bs,V))Gr[tr.length]={kind:1},tr.push(Ys),dt[xg(Ys)]=u0.SuggestedClassMembers}Pi(),ot&&(Lt=Pe&&vd(Pe.parent)?6:7)}function ba(){var Mt;return yt?!0:_.includeCompletionsForModuleExports?g.externalModuleIndicator||g.commonJsModuleIndicator||ont(s.getCompilerOptions())?!0:((Mt=s.getSymlinkCache)==null?void 0:Mt.call(s).hasAnySymlinks())||!!s.getCompilerOptions().paths||FMt(s):!1}function Oo(Mt){switch(Mt.kind){case 308:case 229:case 295:case 242:return!0;default:return Lc(Mt)}}function hc(){return Ie||_e||!!yt&&cN(Rt.parent)||!yr(Pe)&&(D1e(Pe,g,V)||kw(Rt)||hn(Pe))}function yr(Mt){return Mt&&(Mt.kind===114&&(Mt.parent.kind===187||SN(Mt.parent))||Mt.kind===131&&Mt.parent.kind===183)}function hn(Mt){if(Mt){let $r=Mt.parent.kind;switch(Mt.kind){case 59:return $r===173||$r===172||$r===170||$r===261||hW($r);case 64:return $r===266||$r===169;case 130:return $r===235;case 30:return $r===184||$r===217;case 96:return $r===169;case 152:return $r===239}}return!1}function Pi(){var Mt,$r;if(!ba()||(pe.assert(!S?.data,"Should not run 'collectAutoImports' when faster path is available via `data`"),S&&!S.source))return;Wt|=1;let oo=Ze===Pe&&yt?"":Ze&&Ir(Ze)?Ze.text.toLowerCase():"",Bs=(Mt=R.getModuleSpecifierCache)==null?void 0:Mt.call(R),Ys=X1e(g,R,s,_,O),tn=($r=R.getPackageJsonAutoImportProvider)==null?void 0:$r.call(R),wn=S?void 0:use(g,_,R);hAn("collectAutoImports",R,ur||(ur=F0.createImportSpecifierResolver(g,s,R,_)),s,h,_,!!yt,$L(Rt),ci=>{Ys.search(g.path,at,(es,Oi)=>{if(!qh(es,Hg(R.getCompilationSettings()))||!S&&zY(es)||!ot&&!yt&&!(Oi&111551)||ot&&!(Oi&790504))return!1;let Vn=es.charCodeAt(0);return at&&(Vn<65||Vn>90)?!1:S?!0:YAn(es,oo)},(es,Oi,Vn,Ui)=>{if(S&&!zt(es,dg=>S.source===A2(dg.moduleSymbol.name))||(es=Le(es,Mn),!es.length))return;let gs=ci.tryResolve(es,Vn)||{};if(gs==="failed")return;let fs=es[0],bi;gs!=="skipped"&&({exportInfo:fs=es[0],moduleSpecifier:bi}=gs);let mc=fs.exportKind===1,Ag=mc&&ez(pe.checkDefined(fs.symbol))||pe.checkDefined(fs.symbol);co(Ag,{kind:bi?32:4,moduleSpecifier:bi,symbolName:Oi,exportMapKey:Ui,exportName:fs.exportKind===2?"export=":pe.checkDefined(fs.symbol).name,fileName:fs.moduleFileName,isDefaultExport:mc,moduleSymbol:fs.moduleSymbol,isFromPackageJson:fs.isFromPackageJson})}),kt=ci.skippedAny(),Wt|=ci.resolvedAny()?8:0,Wt|=ci.resolvedBeyondLimit()?16:0});function Mn(ci){return Znt(ci.isFromPackageJson?tn:s,g,Gs(ci.moduleSymbol.valueDeclaration,al),ci.moduleSymbol,_,wn,ir(ci.isFromPackageJson),Bs)}}function co(Mt,$r){let ri=xg(Mt);dt[ri]!==u0.GlobalsOrKeywords&&(Gr[tr.length]=$r,dt[ri]=yt?u0.LocationPriority:u0.AutoImportSuggestions,tr.push(Mt))}function pa(Mt,$r){wo(Rt)||Mt.forEach(ri=>{if(!Pa(ri))return;let oo=rst(ri,Hg(d),void 0,0,!1);if(!oo)return;let{name:Bs}=oo,Ys=xZs(ri,Bs,$r,s,R,d,_,T);if(!Ys)return;let tn={kind:128,...Ys};Wt|=32,Gr[tr.length]=tn,tr.push(ri)})}function Pa(Mt){return!!(Mt.flags&8196)}function $c(Mt,$r,ri){let oo=Mt;for(;oo&&!Qrt(oo,$r,ri);)oo=oo.parent;return oo}function Qu(Mt){let $r=Zg(),ri=Tu(Mt)||Ni(Mt)||En(Mt)||Rg(Mt)||gQ(Mt);return c("getCompletionsAtPosition: isCompletionListBlocker: "+(Zg()-$r)),ri}function Rg(Mt){if(Mt.kind===12)return!0;if(Mt.kind===32&&Mt.parent){if(Rt===Mt.parent&&(Rt.kind===287||Rt.kind===286))return!1;if(Mt.parent.kind===287)return Rt.parent.kind!==287;if(Mt.parent.kind===288||Mt.parent.kind===286)return!!Mt.parent.parent&&Mt.parent.parent.kind===285}return!1}function Cs(){if(Pe){let Mt=Pe.parent.kind,$r=ist(Pe);switch($r){case 28:switch(Mt){case 214:case 215:{let ri=Pe.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:zit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:GN,isNewIdentifierLocation:!0}}case 227:return{defaultCommitCharacters:zit,isNewIdentifierLocation:!0};case 177:case 185:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 210:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}case 21:switch(Mt){case 214:case 215:{let ri=Pe.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:zit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:GN,isNewIdentifierLocation:!0}}case 218:return{defaultCommitCharacters:zit,isNewIdentifierLocation:!0};case 177:case 197:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}case 23:switch(Mt){case 210:case 182:case 190:case 168:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}case 144:case 145:case 102:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 25:switch(Mt){case 268:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}case 19:switch(Mt){case 264:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}case 64:switch(Mt){case 261:case 227:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}case 16:return{defaultCommitCharacters:GN,isNewIdentifierLocation:Mt===229};case 17:return{defaultCommitCharacters:GN,isNewIdentifierLocation:Mt===240};case 134:return Mt===175||Mt===305?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:GN,isNewIdentifierLocation:!1};case 42:return Mt===175?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}if(dOe($r))return{defaultCommitCharacters:[],isNewIdentifierLocation:!0}}return{defaultCommitCharacters:GN,isNewIdentifierLocation:!1}}function Tu(Mt){return(EEe(Mt)||Lre(Mt))&&(R1e(Mt,h)||h===Mt.end&&(!!Mt.isUnterminated||EEe(Mt)))}function Wr(){let Mt=qZs(Pe);if(!Mt)return 0;let ri=(_f(Mt.parent)?Mt.parent:void 0)||Mt,oo=LAn(ri,V);if(!oo)return 0;let Bs=V.getTypeFromTypeNode(ri),Ys=ost(oo,V),tn=ost(Bs,V),wn=new Set;return tn.forEach(Mn=>wn.add(Mn.escapedName)),tr=Nn(tr,Le(Ys,Mn=>!wn.has(Mn.escapedName))),it=0,je=!0,1}function Wn(){if(Pe?.kind===26)return 0;let Mt=tr.length,$r=XZs(Pe,h,g);if(!$r)return 0;it=0;let ri,oo;if($r.kind===211){let Bs=rLs($r,V);if(Bs===void 0)return $r.flags&67108864?2:0;let Ys=V.getContextualType($r,4),tn=(Ys||Bs).getStringIndexType(),wn=(Ys||Bs).getNumberIndexType();if(je=!!tn||!!wn,ri=sst(Bs,Ys,$r,V),oo=$r.properties,ri.length===0&&!wn)return 0}else{pe.assert($r.kind===207),je=!1;let Bs=Gw($r.parent);if(!N7(Bs))return pe.fail("Root declaration is not variable-like.");let Ys=QT(Bs)||!!Zh(Bs)||Bs.parent.parent.kind===251;if(!Ys&&Bs.kind===170&&(un(Bs.parent)?Ys=!!V.getContextualType(Bs.parent):(Bs.parent.kind===175||Bs.parent.kind===179)&&(Ys=un(Bs.parent.parent)&&!!V.getContextualType(Bs.parent.parent))),Ys){let tn=V.getTypeAtLocation($r);if(!tn)return 2;ri=V.getPropertiesOfType(tn).filter(wn=>V.isPropertyAccessible($r,!1,!1,tn,wn)),oo=$r.elements}}if(ri&&ri.length>0){let Bs=Ht(ri,pe.checkDefined(oo));tr=Nn(tr,Bs),wt(),$r.kind===211&&_.includeCompletionsWithObjectLiteralMethodSnippets&&_.includeCompletionsWithInsertText&&(fr(Mt),pa(Bs,$r))}return 1}function pt(){if(!Pe)return 0;let Mt=Pe.kind===19||Pe.kind===28?Gs(Pe.parent,Une):IWe(Pe)?Gs(Pe.parent.parent,Une):void 0;if(!Mt)return 0;IWe(Pe)||(Lt=8);let{moduleSpecifier:$r}=Mt.kind===276?Mt.parent.parent:Mt.parent;if(!$r)return je=!0,Mt.kind===276?2:0;let ri=V.getSymbolAtLocation($r);if(!ri)return je=!0,2;it=3,je=!1;let oo=V.getExportsAndPropertiesOfModule(ri),Bs=new Set(Mt.elements.filter(tn=>!Hn(tn)).map(tn=>vF(tn.propertyName||tn.name))),Ys=oo.filter(tn=>tn.escapedName!=="default"&&!Bs.has(tn.escapedName));return tr=Nn(tr,Ys),Ys.length||(Lt=0),1}function on(){if(Pe===void 0)return 0;let Mt=Pe.kind===19||Pe.kind===28?Gs(Pe.parent,kU):Pe.kind===59?Gs(Pe.parent.parent,kU):void 0;if(Mt===void 0)return 0;let $r=new Set(Mt.elements.map(lde));return tr=Le(V.getTypeAtLocation(Mt).getApparentProperties(),ri=>!$r.has(ri.escapedName)),1}function st(){var Mt;let $r=Pe&&(Pe.kind===19||Pe.kind===28)?Gs(Pe.parent,bv):void 0;if(!$r)return 0;let ri=ji($r,Qp(al,Lh));return it=5,je=!1,(Mt=ri.locals)==null||Mt.forEach((oo,Bs)=>{var Ys,tn;tr.push(oo),(tn=(Ys=ri.symbol)==null?void 0:Ys.exports)!=null&&tn.has(Bs)&&(dt[xg(oo)]=u0.OptionalMember)}),1}function nr(){let Mt=zZs(g,Pe,Rt,h);if(!Mt)return 0;if(it=3,je=!0,Lt=Pe.kind===42?0:xa(Mt)?2:3,!xa(Mt))return 1;let $r=Pe.kind===27?Pe.parent.parent:Pe.parent,ri=MI($r)?c_($r):0;if(Pe.kind===80&&!Hn(Pe))switch(Pe.getText()){case"private":ri=ri|2;break;case"static":ri=ri|256;break;case"override":ri=ri|16;break}if(Al($r)&&(ri|=256),!(ri&2)){let oo=xa(Mt)&&ri&16?K_(DB(Mt)):H7(Mt),Bs=jt(oo,Ys=>{let tn=V.getTypeAtLocation(Ys);return ri&256?tn?.symbol&&V.getPropertiesOfType(V.getTypeOfSymbolAtLocation(tn.symbol,Mt)):tn&&V.getPropertiesOfType(tn)});tr=Nn(tr,Ue(Bs,Mt.members,ri)),F(tr,(Ys,tn)=>{let wn=Ys?.valueDeclaration;if(wn&&MI(wn)&&wn.name&&Un(wn.name)){let Mn={kind:512,symbolName:V.symbolToString(Ys)};Gr[tn]=Mn}})}return 1}function Zr(Mt){return!!Mt.parent&&Si(Mt.parent)&&Tc(Mt.parent.parent)&&(wY(Mt.kind)||UT(Mt))}function Kr(Mt){if(Mt){let $r=Mt.parent;switch(Mt.kind){case 21:case 28:return Tc(Mt.parent)?Mt.parent:void 0;default:if(Zr(Mt))return $r.parent}}}function Dn(Mt){if(Mt){let $r,ri=ji(Mt.parent,oo=>xa(oo)?"quit":Gd(oo)&&$r===oo.body?!0:($r=oo,!1));return ri&&ri}}function hr(Mt){if(Mt){let $r=Mt.parent;switch(Mt.kind){case 32:case 31:case 44:case 80:case 212:case 293:case 292:case 294:if($r&&($r.kind===286||$r.kind===287)){if(Mt.kind===32){let ri=Vm(Mt.pos,g,void 0);if(!$r.typeArguments||ri&&ri.kind===44)break}return $r}else if($r.kind===292)return $r.parent.parent;break;case 11:if($r&&($r.kind===292||$r.kind===294))return $r.parent.parent;break;case 20:if($r&&$r.kind===295&&$r.parent&&$r.parent.kind===292)return $r.parent.parent.parent;if($r&&$r.kind===294)return $r.parent.parent;break}}}function Sn(Mt,$r){return g.getLineEndOfPosition(Mt.getEnd())<$r}function Ni(Mt){let $r=Mt.parent,ri=$r.kind;switch(Mt.kind){case 28:return ri===261||ds(Mt)||ri===244||ri===267||nn(ri)||ri===265||ri===208||ri===266||xa($r)&&!!$r.typeParameters&&$r.typeParameters.end>=Mt.pos;case 25:return ri===208;case 59:return ri===209;case 23:return ri===208;case 21:return ri===300||nn(ri);case 19:return ri===267;case 30:return ri===264||ri===232||ri===265||ri===266||hW(ri);case 126:return ri===173&&!xa($r.parent);case 26:return ri===170||!!$r.parent&&$r.parent.kind===208;case 125:case 123:case 124:return ri===170&&!Tc($r.parent);case 130:return ri===277||ri===282||ri===275;case 139:case 153:return!ast(Mt);case 80:{if((ri===277||ri===282)&&Mt===$r.name&&Mt.text==="type"||ji(Mt.parent,nc)&&Sn(Mt,h))return!1;break}case 86:case 94:case 120:case 100:case 115:case 102:case 121:case 87:case 140:return!0;case 156:return ri!==277;case 42:return Eu(Mt.parent)&&!gu(Mt.parent)}if(dOe(ist(Mt))&&ast(Mt)||Zr(Mt)&&(!Ir(Mt)||wY(ist(Mt))||Hn(Mt)))return!1;switch(ist(Mt)){case 128:case 86:case 87:case 138:case 94:case 100:case 120:case 121:case 123:case 124:case 125:case 126:case 115:return!0;case 134:return pi(Mt.parent)}if(ji(Mt.parent,xa)&&Mt===Ze&&Gi(Mt,h))return!1;let Bs=UL(Mt.parent,173);if(Bs&&Mt!==Ze&&xa(Ze.parent.parent)&&h<=Ze.end){if(Gi(Mt,Ze.end))return!1;if(Mt.kind!==64&&(r1e(Bs)||mf(Bs)))return!0}return UT(Mt)&&!l0(Mt.parent)&&!TN(Mt.parent)&&!((xa(Mt.parent)||d_(Mt.parent)||Ds(Mt.parent))&&(Mt!==Ze||h>Ze.end))}function Gi(Mt,$r){return Mt.kind!==64&&(Mt.kind===27||!SE(Mt.end,$r,g))}function nn(Mt){return hW(Mt)&&Mt!==177}function En(Mt){if(Mt.kind===9){let $r=Mt.getFullText();return $r.charAt($r.length-1)==="."}return!1}function ds(Mt){return Mt.parent.kind===262&&!D1e(Mt,g,V)}function Ht(Mt,$r){if($r.length===0)return Mt;let ri=new Set,oo=new Set;for(let Ys of $r){if(Ys.kind!==304&&Ys.kind!==305&&Ys.kind!==209&&Ys.kind!==175&&Ys.kind!==178&&Ys.kind!==179&&Ys.kind!==306||Hn(Ys))continue;let tn;if(Mx(Ys))cn(Ys,ri);else if(mg(Ys)&&Ys.propertyName)Ys.propertyName.kind===80&&(tn=Ys.propertyName.escapedText);else{let wn=fl(Ys);tn=wn&&xw(wn)?gU(wn):void 0}tn!==void 0&&oo.add(tn)}let Bs=Mt.filter(Ys=>!oo.has(Ys.escapedName));return xe(ri,Bs),Bs}function cn(Mt,$r){let ri=Mt.expression,oo=V.getSymbolAtLocation(ri),Bs=oo&&V.getTypeOfSymbolAtLocation(oo,ri),Ys=Bs&&Bs.properties;Ys&&Ys.forEach(tn=>{$r.add(tn.name)})}function wt(){tr.forEach(Mt=>{if(Mt.flags&16777216){let $r=xg(Mt);dt[$r]=dt[$r]??u0.OptionalMember}})}function xe(Mt,$r){if(Mt.size!==0)for(let ri of $r)Mt.has(ri.name)&&(dt[xg(ri)]=u0.MemberDeclaredBySpreadAssignment)}function fr(Mt){for(let $r=Mt;$r!oo.has(Bs.escapedName)&&!!Bs.declarations&&!(d2(Bs)&2)&&!(Bs.valueDeclaration&&hC(Bs.valueDeclaration)))}function In(Mt,$r){let ri=new Set,oo=new Set;for(let Ys of $r)Hn(Ys)||(Ys.kind===292?ri.add(bz(Ys.name)):Fz(Ys)&&cn(Ys,oo));let Bs=Mt.filter(Ys=>!ri.has(Ys.escapedName));return xe(oo,Bs),Bs}function Hn(Mt){return Mt.getStart(g)<=h&&h<=Mt.getEnd()}}function XZs(s,c,g){var d;if(s){let{parent:h}=s;switch(s.kind){case 19:case 28:if(ag(h)||$m(h))return h;break;case 42:return gu(h)?Gs(h.parent,ag):void 0;case 134:return Gs(h.parent,ag);case 80:if(s.text==="async"&&l0(s.parent))return s.parent.parent;{if(ag(s.parent.parent)&&(Mx(s.parent)||l0(s.parent)&&Ra(g,s.getEnd()).line!==Ra(g,c).line))return s.parent.parent;let S=ji(h,Cm);if(S?.getLastToken(g)===s&&ag(S.parent))return S.parent}break;default:if((d=h.parent)!=null&&d.parent&&(gu(h.parent)||wg(h.parent)||kg(h.parent))&&ag(h.parent.parent))return h.parent.parent;if(Mx(h)&&ag(h.parent))return h.parent;let _=ji(h,Cm);if(s.kind!==59&&_?.getLastToken(g)===s&&ag(_.parent))return _.parent}}}function tst(s,c){let g=Vm(s,c);return g&&s<=g.end&&(vw(g)||w0(g.kind))?{contextToken:Vm(g.getFullStart(),c,void 0),previousToken:g}:{contextToken:g,previousToken:g}}function NAn(s,c,g,d){let h=c.isPackageJsonImport?d.getPackageJsonAutoImportProvider():g,_=h.getTypeChecker(),S=c.ambientModuleName?_.tryFindAmbientModule(c.ambientModuleName):c.fileName?_.getMergedSymbol(pe.checkDefined(h.getSourceFile(c.fileName)).symbol):void 0;if(!S)return;let R=c.exportName==="export="?_.resolveExternalModuleSymbol(S):_.tryGetMemberInModuleExportsAndProperties(c.exportName,S);return R?(R=c.exportName==="default"&&ez(R)||R,{symbol:R,origin:FZs(c,s,S)}):void 0}function rst(s,c,g,d,h){if(IZs(g))return;let _=AZs(g)?g.symbolName:s.name;if(_===void 0||s.flags&1536&&mne(_.charCodeAt(0))||X7(s))return;let S={name:_,needsConvertPropertyAccess:!1};if(qh(_,c,h?1:0)||s.valueDeclaration&&hC(s.valueDeclaration))return S;if(s.flags&2097152)return{name:_,needsConvertPropertyAccess:!0};switch(d){case 3:return VXt(g)?{name:g.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(_),needsConvertPropertyAccess:!1};case 2:case 1:return _.charCodeAt(0)===32?void 0:{name:_,needsConvertPropertyAccess:!0};case 5:case 4:return S;default:pe.assertNever(d)}}var nst=[],DAn=LA(()=>{let s=[];for(let c=83;c<=166;c++)s.push({name:Vi(c),kind:"keyword",kindModifiers:"",sortText:u0.GlobalsOrKeywords});return s});function kAn(s,c){if(!c)return xAn(s);let g=s+8+1;return nst[g]||(nst[g]=xAn(s).filter(d=>!JZs(Ta(d.name))))}function xAn(s){return nst[s]||(nst[s]=DAn().filter(c=>{let g=Ta(c.name);switch(s){case 0:return!1;case 1:return FAn(g)||g===138||g===144||g===156||g===145||g===128||cpe(g)&&g!==157;case 5:return FAn(g);case 2:return dOe(g);case 3:return GAn(g);case 4:return wY(g);case 6:return cpe(g)||g===87;case 7:return cpe(g);case 8:return g===156;default:return pe.assertNever(s)}}))}function JZs(s){switch(s){case 128:case 133:case 163:case 136:case 138:case 94:case 162:case 119:case 140:case 120:case 142:case 143:case 144:case 145:case 146:case 150:case 151:case 164:case 123:case 124:case 125:case 148:case 154:case 155:case 156:case 158:case 159:return!0;default:return!1}}function GAn(s){return s===148}function dOe(s){switch(s){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return Vre(s)}}function FAn(s){return s===134||s===135||s===160||s===130||s===152||s===156||!mAe(s)&&!dOe(s)}function ist(s){return Ir(s)?cv(s)??0:s.kind}function UZs(s,c){let g=[];if(s){let d=s.getSourceFile(),h=s.parent,_=d.getLineAndCharacterOfPosition(s.end).line,S=d.getLineAndCharacterOfPosition(c).line;(Yf(h)||Vh(h)&&h.moduleSpecifier)&&s===h.moduleSpecifier&&_===S&&g.push({name:Vi(132),kind:"keyword",kindModifiers:"",sortText:u0.GlobalsOrKeywords})}return g}function KZs(s,c){return ji(s,g=>h3(g)&&rse(g,c)?!0:oR(g)?"quit":!1)}function sst(s,c,g,d){let h=c&&c!==s,_=d.getUnionType(Le(s.flags&1048576?s.types:[s],O=>!d.getPromisedTypeOfPromise(O))),S=h&&!(c.flags&3)?d.getUnionType([_,c]):_,R=jZs(S,g,d);return S.isClass()&&ZAn(R)?[]:h?Le(R,T):R;function T(O){return B(O.declarations)?zt(O.declarations,V=>V.parent!==g):!0}}function jZs(s,c,g){return s.isUnion()?g.getAllPossiblePropertiesOfTypes(Le(s.types,d=>!(d.flags&402784252||g.isArrayLikeType(d)||g.isTypeInvalidDueToUnionDiscriminant(d,c)||g.typeHasCallOrConstructSignatures(d)||d.isClass()&&ZAn(d.getApparentProperties())))):s.getApparentProperties()}function ZAn(s){return zt(s,c=>!!(d2(c)&6))}function ost(s,c){return s.isUnion()?pe.checkEachDefined(c.getAllPossiblePropertiesOfTypes(s.types),"getAllPossiblePropertiesOfTypes() should all be defined"):pe.checkEachDefined(s.getApparentProperties(),"getApparentProperties() should all be defined")}function zZs(s,c,g,d){switch(g.kind){case 353:return Gs(g.parent,tQ);case 1:let h=Gs(li(Ma(g.parent,al).statements),tQ);if(h&&!ep(h,20,s))return h;break;case 81:if(Gs(g.parent,pi))return ji(g,xa);break;case 80:{if(cv(g)||pi(g.parent)&&g.parent.initializer===g)return;if(ast(g))return ji(g,tQ)}}if(c){if(g.kind===137||Ir(c)&&pi(c.parent)&&xa(g))return ji(c,xa);switch(c.kind){case 64:return;case 27:case 20:return ast(g)&&g.parent.name===g?g.parent.parent:Gs(g,tQ);case 19:case 28:return Gs(c.parent,tQ);default:if(tQ(g)){if(Ra(s,c.getEnd()).line!==Ra(s,d).line)return g;let h=xa(c.parent.parent)?dOe:GAn;return h(c.kind)||c.kind===42||Ir(c)&&h(cv(c)??0)?c.parent.parent:void 0}return}}}function qZs(s){if(!s)return;let c=s.parent;switch(s.kind){case 19:if(bh(c))return c;break;case 27:case 28:case 80:if(c.kind===172&&bh(c.parent))return c.parent;break}}function LAn(s,c){if(!s)return;if(uc(s)&&C7(s.parent))return c.getTypeArgumentConstraint(s);let g=LAn(s.parent,c);if(g)switch(s.kind){case 172:return c.getTypeOfPropertyOfContextualType(g,s.symbol.escapedName);case 194:case 188:case 193:return g}}function ast(s){return s.parent&&RY(s.parent)&&tQ(s.parent.parent)}function $Zs(s,c,g,d){switch(c){case".":case"@":return!0;case'"':case"'":case"`":return!!g&&jMt(g)&&d===g.getStart(s)+1;case"#":return!!g&&p(g)&&!!_C(g);case"<":return!!g&&g.kind===30&&(!po(g.parent)||VAn(g.parent));case"/":return!!g&&(CA(g)?!!O7(g):g.kind===44&&dQ(g.parent));case" ":return!!g&&an(g)&&g.parent.kind===308;default:return pe.assertNever(c)}}function VAn({left:s}){return af(s)}function eLs(s,c,g){let d=g.resolveName("self",void 0,111551,!1);if(d&&g.getTypeOfSymbolAtLocation(d,c)===s)return!0;let h=g.resolveName("global",void 0,111551,!1);if(h&&g.getTypeOfSymbolAtLocation(h,c)===s)return!0;let _=g.resolveName("globalThis",void 0,111551,!1);return!!(_&&g.getTypeOfSymbolAtLocation(_,c)===s)}function tLs(s){return!!(s.valueDeclaration&&c_(s.valueDeclaration)&256&&xa(s.valueDeclaration.parent))}function rLs(s,c){let g=c.getContextualType(s);if(g)return g;let d=fv(s.parent);if(po(d)&&d.operatorToken.kind===64&&s===d.left)return c.getTypeAtLocation(d);if(un(d))return c.getContextualType(d)}function WAn(s,c){var g,d,h;let _,S=!1,R=T();return{isKeywordOnlyCompletion:S,keywordCompletion:_,isNewIdentifierLocation:!!(R||_===156),isTopLevelTypeOnly:!!((d=(g=Gs(R,Yf))==null?void 0:g.importClause)!=null&&d.isTypeOnly)||!!((h=Gs(R,Zm))!=null&&h.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!R&&PAn(R,s),replacementSpan:nLs(R)};function T(){let O=s.parent;if(Zm(O)){let V=O.getLastToken(c);if(Ir(s)&&V!==s){_=161,S=!0;return}return _=s.kind===156?void 0:156,JXt(O.moduleReference)?O:void 0}if(PAn(O,s)&&MAn(O.parent))return O;if(BN(O)||Px(O)){if(!O.parent.isTypeOnly&&(s.kind===19||s.kind===102||s.kind===28)&&(_=156),MAn(O))if(s.kind===20||s.kind===80)S=!0,_=161;else return O.parent.parent;return}if(Vh(O)&&s.kind===42||bv(O)&&s.kind===20){S=!0,_=161;return}if(an(s)&&al(O))return _=156,s;if(an(s)&&Yf(O))return _=156,JXt(O.moduleSpecifier)?O:void 0}}function nLs(s){var c;if(!s)return;let g=ji(s,Qp(Yf,Zm,RN))??s,d=g.getSourceFile();if(D3(g,d))return Hy(g,d);pe.assert(g.kind!==102&&g.kind!==277);let h=g.kind===273||g.kind===352?OAn((c=g.importClause)==null?void 0:c.namedBindings)??g.moduleSpecifier:g.moduleReference,_={pos:g.getFirstToken().getStart(),end:h.pos};if(D3(_,d))return a9(_)}function OAn(s){var c;return de((c=Gs(s,BN))==null?void 0:c.elements,g=>{var d;return!g.propertyName&&zY(g.name.text)&&((d=Vm(g.name.pos,s.getSourceFile(),s))==null?void 0:d.kind)!==28})}function PAn(s,c){return Ay(s)&&(s.isTypeOnly||c===s.name&&IWe(c))}function MAn(s){if(!JXt(s.parent.parent.moduleSpecifier)||s.parent.name)return!1;if(BN(s)){let c=OAn(s);return(c?s.elements.indexOf(c):s.elements.length)<2}return!0}function JXt(s){var c;return af(s)?!0:!((c=Gs(MF(s)?s.expression:s,CA))!=null&&c.text)}function iLs(s,c){if(!s)return;let g=ji(s,d=>BW(d)||HAn(d)||Nu(d)?"quit":(Si(d)||Ds(d))&&!R0(d.parent));return g||(g=ji(c,d=>BW(d)||HAn(d)||Nu(d)?"quit":nc(d))),g}function sLs(s){if(!s)return!1;let c=s,g=s.parent;for(;g;){if(Ds(g))return g.default===c||c.kind===64;c=g,g=g.parent}return!1}function HAn(s){return s.parent&&uA(s.parent)&&(s.parent.body===s||s.kind===39)}function UXt(s,c,g=new Set){return d(s)||d(LC(s.exportSymbol||s,c));function d(h){return!!(h.flags&788968)||c.isUnknownSymbol(h)||!!(h.flags&1536)&&Vy(g,h)&&c.getExportsOfModule(h).some(_=>UXt(_,c,g))}}function oLs(s,c){let g=LC(s,c).declarations;return!!B(g)&&ue(g,kWe)}function YAn(s,c){if(c.length===0)return!0;let g=!1,d,h=0,_=s.length;for(let S=0;S<_;S++){let R=s.charCodeAt(S),T=c.charCodeAt(h);if((R===T||R===aLs(T))&&(g||(g=d===void 0||97<=d&&d<=122&&65<=R&&R<=90||d===95&&R!==95),g&&h++,h===c.length))return!0;d=R}return!1}function aLs(s){return 97<=s&&s<=122?s-32:s}function cLs(s){return s==="abstract"||s==="async"||s==="await"||s==="declare"||s==="module"||s==="namespace"||s==="type"||s==="satisfies"||s==="as"}var cst={};o(cst,{getStringLiteralCompletionDetails:()=>gLs,getStringLiteralCompletions:()=>lLs});var QAn={directory:0,script:1,"external module name":2};function KXt(){let s=new Map;function c(g){let d=s.get(g.name);(!d||QAn[d.kind]({name:KT(re.value,M),kindModifiers:"",kind:"string",sortText:u0.LocationPriority,replacementSpan:tnt(c,T),commitCharacters:[]}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:s.isNewIdentifier,optionalReplacementSpan:V,entries:ee,defaultCommitCharacters:KU(s.isNewIdentifier)}}default:return pe.assertNever(s)}}function gLs(s,c,g,d,h,_,S,R){if(!d||!CA(d))return;let T=UAn(c,d,g,h,_,R);return T&&ALs(s,d,T,c,h.getTypeChecker(),S)}function ALs(s,c,g,d,h,_){switch(g.kind){case 0:{let S=de(g.paths,R=>R.name===s);return S&&AOe(s,JAn(S.extension),S.kind,[fS(s)])}case 1:{let S=de(g.symbols,R=>R.name===s);return S&&QXt(S,S.name,h,d,c,_)}case 2:return de(g.types,S=>S.value===s)?AOe(s,"","string",[fS(s)]):void 0;default:return pe.assertNever(g)}}function XAn(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:s.map(({name:h,kind:_,span:S,extension:R})=>({name:h,kind:_,kindModifiers:JAn(R),sortText:u0.LocationPriority,replacementSpan:S})),defaultCommitCharacters:KU(!0)}}function JAn(s){switch(s){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".d.mts":return".d.mts";case".mjs":return".mjs";case".mts":return".mts";case".d.cts":return".d.cts";case".cjs":return".cjs";case".cts":return".cts";case".tsbuildinfo":return pe.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return pe.assertNever(s)}}function UAn(s,c,g,d,h,_){let S=d.getTypeChecker(),R=jXt(c.parent);switch(R.kind){case 202:{let Ze=jXt(R.parent);return Ze.kind===206?{kind:0,paths:zAn(s,c,d,h,_)}:T(Ze)}case 304:return ag(R.parent)&&R.name===c?fLs(S,R.parent):O()||O(0);case 213:{let{expression:Ze,argumentExpression:Pe}=R;return c===JA(Pe)?KAn(S.getTypeAtLocation(Ze)):void 0}case 214:case 215:case 292:if(!DLs(c)&&!jp(R)){let Ze=p2e.getArgumentInfoForCompletions(R.kind===292?R.parent:c,g,s,S);return Ze&&pLs(Ze.invocation,c,Ze,S)||O(0)}case 273:case 279:case 284:case 352:return{kind:0,paths:zAn(s,c,d,h,_)};case 297:let V=FWe(S,R.parent.clauses),M=O();return M?{kind:2,types:M.types.filter(Ze=>!V.hasValue(Ze.value)),isNewIdentifier:!1}:void 0;case 277:case 282:let re=R;if(re.propertyName&&c!==re.propertyName)return;let ge=re.parent,{moduleSpecifier:Ie}=ge.kind===276?ge.parent.parent:ge.parent;if(!Ie)return;let _e=S.getSymbolAtLocation(Ie);if(!_e)return;let Ee=S.getExportsAndPropertiesOfModule(_e),Ne=new Set(ge.elements.map(Ze=>vF(Ze.propertyName||Ze.name)));return{kind:1,symbols:Ee.filter(Ze=>Ze.escapedName!=="default"&&!Ne.has(Ze.escapedName)),hasIndexSignature:!1};case 227:if(R.operatorToken.kind===103){let Ze=S.getTypeAtLocation(R.right);return{kind:1,symbols:(Ze.isUnion()?S.getAllPossiblePropertiesOfTypes(Ze.types):Ze.getApparentProperties()).filter(Ke=>!Ke.valueDeclaration||!hC(Ke.valueDeclaration)),hasIndexSignature:!1}}return O(0);default:return O()||O(0)}function T(V){switch(V.kind){case 234:case 184:{let re=ji(R,ge=>ge.parent===V);return re?{kind:2,types:lst(S.getTypeArgumentConstraint(re)),isNewIdentifier:!1}:void 0}case 200:let{indexType:M,objectType:ee}=V;return rse(M,g)?KAn(S.getTypeFromTypeNode(ee)):void 0;case 193:{let re=T(jXt(V.parent));if(!re)return;let ge=dLs(V,R);return re.kind===1?{kind:1,symbols:re.symbols.filter(Ie=>!k(ge,Ie.name)),hasIndexSignature:re.hasIndexSignature}:{kind:2,types:re.types.filter(Ie=>!k(ge,Ie.value)),isNewIdentifier:!1}}default:return}}function O(V=4){let M=lst(SWe(c,S,V));if(M.length)return{kind:2,types:M,isNewIdentifier:!1}}}function jXt(s){switch(s.kind){case 197:return Tne(s);case 218:return fv(s);default:return s}}function dLs(s,c){return Xt(s.types,g=>g!==c&&BE(g)&&Lg(g.literal)?g.literal.text:void 0)}function pLs(s,c,g,d){let h=!1,_=new Set,S=nI(s)?pe.checkDefined(ji(c.parent,TN)):c,R=d.getCandidateSignaturesForStringLiteralCompletions(s,S),T=jt(R,O=>{if(!x0(O)&&g.argumentCount>O.parameters.length)return;let V=O.getTypeParameterAtPosition(g.argumentIndex);if(nI(s)){let M=d.getTypeOfPropertyOfType(V,Vw(S.name));M&&(V=M)}return h=h||!!(V.flags&4),lst(V,_)});return B(T)?{kind:2,types:T,isNewIdentifier:h}:void 0}function KAn(s){return s&&{kind:1,symbols:Le(s.getApparentProperties(),c=>!(c.valueDeclaration&&hC(c.valueDeclaration))),hasIndexSignature:bnt(s)}}function fLs(s,c){let g=s.getContextualType(c);if(!g)return;let d=s.getContextualType(c,4);return{kind:1,symbols:sst(g,d,c,s),hasIndexSignature:bnt(g)}}function lst(s,c=new Set){return s?(s=snt(s),s.isUnion()?jt(s.types,g=>lst(g,c)):s.isStringLiteral()&&!(s.flags&1024)&&Vy(c,s.value)?[s]:E):E}function Bpe(s,c,g){return{name:s,kind:c,extension:g}}function zXt(s){return Bpe(s,"directory",void 0)}function jAn(s,c,g){let d=wLs(s,c),h=s.length===0?void 0:$d(c,s.length);return g.map(({name:_,kind:S,extension:R})=>_.includes(cg)||_.includes(vb)?{name:_,kind:S,extension:R,span:h}:{name:_,kind:S,extension:R,span:d})}function zAn(s,c,g,d,h){return jAn(c.text,c.getStart(s)+1,ILs(s,c,g,d,h))}function ILs(s,c,g,d,h){let _=xp(c.text),S=CA(c)?g.getModeForUsageLocation(s,c):void 0,R=s.path,T=Mo(R),O=g.getCompilerOptions(),V=g.getTypeChecker(),M=i5(g,d),ee=qXt(O,1,s,V,h,S);return TLs(_)||!O.baseUrl&&!O.paths&&(Up(_)||s_(_))?hLs(_,T,g,d,M,R,ee):yLs(_,T,S,g,d,M,ee)}function qXt(s,c,g,d,h,_){return{extensionsToSearch:Sr(mLs(s,d)),referenceKind:c,importingSourceFile:g,endingPreference:h?.importModuleSpecifierEnding,resolutionMode:_}}function hLs(s,c,g,d,h,_,S){let R=g.getCompilerOptions();return R.rootDirs?_Ls(R.rootDirs,s,c,S,g,d,h,_):Do(wpe(s,c,S,g,d,h,!0,_).values())}function mLs(s,c){let g=c?Xt(c.getAmbientModules(),_=>{let S=_.name.slice(1,-1);if(!(!S.startsWith("*.")||S.includes("/")))return S.slice(1)}):[],d=[...gz(s),g],h=G_(s);return hWe(h)?Az(s,d):d}function CLs(s,c,g,d){s=s.map(_=>Cp(su(Up(_)?_:Ro(c,_))));let h=J(s,_=>zh(_,g,c,d)?g.substr(_.length):void 0);return no([...s.map(_=>Ro(_,h)),g].map(_=>sy(_)),YA,Ca)}function _Ls(s,c,g,d,h,_,S,R){let O=h.getCompilerOptions().project||_.getCurrentDirectory(),V=!(_.useCaseSensitiveFileNames&&_.useCaseSensitiveFileNames()),M=CLs(s,O,g,V);return no(jt(M,ee=>Do(wpe(c,ee,d,h,_,S,!0,R).values())),(ee,re)=>ee.name===re.name&&ee.kind===re.kind&&ee.extension===re.extension)}function wpe(s,c,g,d,h,_,S,R,T=KXt()){var O;s===void 0&&(s=""),s=xp(s),Kp(s)||(s=Mo(s)),s===""&&(s="."+cg),s=Cp(s);let V=fE(c,s),M=Kp(V)?V:Mo(V);if(!S){let Ie=eHt(M,h);if(Ie){let Ee=N3(Ie,h).typesVersions;if(typeof Ee=="object"){let Ne=(O=z9e(Ee))==null?void 0:O.paths;if(Ne){let Te=Mo(Ie),Ze=V.slice(Cp(Te).length);if($An(T,Ze,Te,g,d,h,_,Ne))return T}}}}let ee=!(h.useCaseSensitiveFileNames&&h.useCaseSensitiveFileNames());if(!TWe(h,M))return T;let re=vnt(h,M,g.extensionsToSearch,void 0,["./*"]);if(re)for(let Ie of re){if(Ie=su(Ie),R&&tI(Ie,R,c,ee)===0)continue;let{name:_e,extension:Ee}=qAn(dp(Ie),d,g,!1);T.add(Bpe(_e,"script",Ee))}let ge=wWe(h,M);if(ge)for(let Ie of ge){let _e=dp(su(Ie));_e!=="@types"&&T.add(zXt(_e))}return T}function qAn(s,c,g,d){let h=XF.tryGetRealFileNameForNonJsDeclarationFileName(s);if(h)return{name:h,extension:jT(h)};if(g.referenceKind===0)return{name:s,extension:jT(s)};let _=XF.getModuleSpecifierPreferences({importModuleSpecifierEnding:g.endingPreference},c,c.getCompilerOptions(),g.importingSourceFile).getAllowedEndingsInPreferredOrder(g.resolutionMode);if(d&&(_=_.filter(R=>R!==0&&R!==1)),_[0]===3){if(Iu(s,iie))return{name:s,extension:jT(s)};let R=XF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return R?{name:_N(s,R),extension:R}:{name:s,extension:jT(s)}}if(!d&&(_[0]===0||_[0]===1)&&Iu(s,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:a0(s),extension:jT(s)};let S=XF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return S?{name:_N(s,S),extension:S}:{name:s,extension:jT(s)}}function $An(s,c,g,d,h,_,S,R){let T=V=>R[V],O=(V,M)=>{let ee=sQ(V),re=sQ(M),ge=typeof ee=="object"?ee.prefix.length:V.length,Ie=typeof re=="object"?re.prefix.length:M.length;return Zt(Ie,ge)};return edn(s,!1,!1,c,g,d,h,_,S,yg(R),T,O)}function edn(s,c,g,d,h,_,S,R,T,O,V,M){let ee=[],re;for(let ge of O){if(ge===".")continue;let Ie=ge.replace(/^\.\//,"")+((c||g)&&di(ge,"/")?"*":""),_e=V(ge);if(_e){let Ee=sQ(Ie);if(!Ee)continue;let Ne=typeof Ee=="object"&&qd(Ee,d);Ne&&(re===void 0||M(Ie,re)===-1)&&(re=Ie,ee=ee.filter(Ze=>!Ze.matchedPattern)),(typeof Ee=="string"||re===void 0||M(Ie,re)!==1)&&ee.push({matchedPattern:Ne,results:bLs(Ie,_e,d,h,_,c,g,S,R,T).map(({name:Ze,kind:Pe,extension:Ke})=>Bpe(Ze,Pe,Ke))})}}return ee.forEach(ge=>ge.results.forEach(Ie=>s.add(Ie))),re!==void 0}function yLs(s,c,g,d,h,_,S){let R=d.getTypeChecker(),T=d.getCompilerOptions(),{baseUrl:O,paths:V}=T,M=KXt(),ee=G_(T);if(O){let Ie=su(Ro(h.getCurrentDirectory(),O));wpe(s,Ie,S,d,h,_,!1,void 0,M)}if(V){let Ie=EAe(T,h);$An(M,s,Ie,S,d,h,_,V)}let re=rdn(s);for(let Ie of SLs(s,re,R))M.add(Bpe(Ie,"external module name",void 0));if(sdn(d,h,_,c,re,S,M),hWe(ee)){let Ie=!1;if(re===void 0)for(let _e of BLs(h,c)){let Ee=Bpe(_e,"external module name",void 0);M.has(Ee.name)||(Ie=!0,M.add(Ee))}if(!Ie){let _e=cz(T),Ee=qne(T),Ne=!1,Te=Ke=>{if(Ee&&!Ne){let et=Ro(Ke,"package.json");if(Ne=lse(h,et)){let Ye=N3(et,h);ge(Ye.imports,s,Ke,!1,!0)}}},Ze=Ke=>{let et=Ro(Ke,"node_modules");TWe(h,et)&&wpe(s,et,S,d,h,_,!1,void 0,M),Te(Ke)};if(re&&_e){let Ke=Ze;Ze=et=>{let Ye=kp(s);Ye.shift();let Tt=Ye.shift();if(!Tt)return Ke(et);if(Ac(Tt,"@")){let Ct=Ye.shift();if(!Ct)return Ke(et);Tt=Ro(Tt,Ct)}if(Ee&&Ac(Tt,"#"))return Te(et);let at=Ro(et,"node_modules",Tt),Qe=Ro(at,"package.json");if(lse(h,Qe)){let Ct=N3(Qe,h),mt=Ye.join("/")+(Ye.length&&Kp(s)?"/":"");ge(Ct.exports,mt,at,!0,!1);return}return Ke(et)}}let Pe=QW(c);if(Pe){let Ke=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/,et=s.match(Ke);if(et){let[,Ye,Tt]=et;if(Ac(Ye,"#"))NN(h,c,Ze);else{let at;try{at=Pe.resolveToUnqualified(Ye,c,{considerBuiltins:!1})}catch{}if(at){let Qe=su(at),Ct=!0;if(re&&_e){let mt=Ro(Qe,"package.json");if(lse(h,mt)){let yt=N3(mt,h);ge(yt.exports,Tt,Qe,!0,!1),Ct=!1}}Ct&&wpe(Tt,Qe,S,d,h,_,!1,void 0,M)}}}}else NN(h,c,Ze)}}return Do(M.values());function ge(Ie,_e,Ee,Ne,Te){if(typeof Ie!="object"||Ie===null)return;let Ze=yg(Ie),Pe=JW(T,g);edn(M,Ne,Te,_e,Ee,S,d,h,_,Ze,Ke=>{let et=tdn(Ie[Ke],Pe);if(et!==void 0)return K_(di(Ke,"/")&&di(et,"/")?et+"*":et)},Wet)}}function tdn(s,c){if(typeof s=="string")return s;if(s&&typeof s=="object"&&!Ki(s)){for(let g in s)if(g==="default"||c.includes(g)||zEe(c,g)){let d=s[g];return tdn(d,c)}}}function rdn(s){return $Xt(s)?Kp(s)?s:Mo(s):void 0}function bLs(s,c,g,d,h,_,S,R,T,O){let V=sQ(s);if(!V)return E;if(typeof V=="string")return ee(s,"script");let M=JS(g,V.prefix);if(M===void 0)return di(s,"/*")?ee(V.prefix,"directory"):jt(c,ge=>{var Ie;return(Ie=ndn("",d,ge,h,_,S,R,T,O))==null?void 0:Ie.map(({name:_e,...Ee})=>({name:V.prefix+_e+V.suffix,...Ee}))});return jt(c,re=>ndn(M,d,re,h,_,S,R,T,O));function ee(re,ge){return Ac(re,g)?[{name:sy(re),kind:ge,extension:void 0}]:E}}function ndn(s,c,g,d,h,_,S,R,T){if(!R.readDirectory)return;let O=sQ(g);if(O===void 0||Xs(O))return;let V=fE(O.prefix),M=Kp(O.prefix)?V:Mo(V),ee=Kp(O.prefix)?"":dp(V),re=$Xt(s),ge=re?Kp(s)?s:Mo(s):void 0,Ie=()=>T.getCommonSourceDirectory(),_e=!T3(T),Ee=S.getCompilerOptions().outDir,Ne=S.getCompilerOptions().declarationDir,Te=re?Ro(M,ee+ge):M,Ze=su(Ro(c,Te)),Pe=_&&Ee&&Abe(Ze,_e,Ee,Ie),Ke=_&&Ne&&Abe(Ze,_e,Ne,Ie),et=su(O.suffix),Ye=et&&bAe("_"+et),Tt=et?gbe("_"+et):void 0,at=[Ye&&_N(et,Ye),...Tt?Tt.map(je=>_N(et,je)):[],et].filter(Xs),Qe=et?at.map(je=>"**/*"+je):["./*"],Ct=(h||_)&&di(g,"/*"),mt=yt(Ze);return Pe&&(mt=Nn(mt,yt(Pe))),Ke&&(mt=Nn(mt,yt(Ke))),et||(mt=Nn(mt,Rt(Ze)),Pe&&(mt=Nn(mt,Rt(Pe))),Ke&&(mt=Nn(mt,Rt(Ke)))),mt;function yt(je){let Wt=re?je:Cp(je)+ee;return Xt(vnt(R,je,d.extensionsToSearch,void 0,Qe),_r=>{let Gt=Lt(_r,Wt);if(Gt){if($Xt(Gt))return zXt(kp(idn(Gt))[1]);let{name:it,extension:kt}=qAn(Gt,S,d,Ct);return Bpe(it,"script",kt)}})}function Rt(je){return Xt(wWe(R,je),Wt=>Wt==="node_modules"?void 0:zXt(Wt))}function Lt(je,Wt){return J(at,_r=>{let Gt=ELs(su(je),Wt,_r);return Gt===void 0?void 0:idn(Gt)})}}function ELs(s,c,g){return Ac(s,c)&&di(s,g)?s.slice(c.length,s.length-g.length):void 0}function idn(s){return s[0]===cg?s.slice(1):s}function SLs(s,c,g){let h=g.getAmbientModules().map(_=>A2(_.name)).filter(_=>Ac(_,s)&&!_.includes("*"));if(c!==void 0){let _=Cp(c);return h.map(S=>Gm(S,_))}return h}function vLs(s,c,g,d,h){let _=g.getCompilerOptions(),S=Jc(s,c),R=mE(s.text,S.pos),T=R&&de(R,_e=>c>=_e.pos&&c<=_e.end);if(!T)return;let O=s.text.slice(T.pos,c),V=RLs.exec(O);if(!V)return;let[,M,ee,re]=V,ge=Mo(s.path),Ie=ee==="path"?wpe(re,ge,qXt(_,0,s),g,d,h,!0,s.path):ee==="types"?sdn(g,d,h,ge,rdn(re),qXt(_,1,s)):pe.fail();return jAn(re,T.pos+M.length,Do(Ie.values()))}function sdn(s,c,g,d,h,_,S=KXt()){let R=s.getCompilerOptions(),T=new Map,O=RWe(()=>Fde(R,c))||E;for(let M of O)V(M);if(QW(d))for(let M of Ken(d))V(M);else for(let M of Bnt(d,c)){let ee=Ro(Mo(M),"node_modules/@types");V(ee)}return S;function V(M){if(TWe(c,M))for(let ee of wWe(c,M)){let re=qEe(ee);if(!(R.types&&!k(R.types,re)))if(h===void 0)T.has(re)||(S.add(Bpe(re,"external module name",void 0)),T.set(re,!0));else{let ge=Ro(M,ee),Ie=JAe(h,re,qD(c));Ie!==void 0&&wpe(Ie,ge,_,s,c,g,!1,void 0,S)}}}}function BLs(s,c){if(!s.readFile||!s.fileExists)return E;let g=[];for(let d of Bnt(c,s)){let h=N3(d,s);for(let _ of NLs){let S=h[_];if(S)for(let R in S)Da(S,R)&&!Ac(R,"@types/")&&g.push(R)}}return g}function wLs(s,c){let g=Math.max(s.lastIndexOf(cg),s.lastIndexOf(vb)),d=g!==-1?g+1:0,h=s.length-d;return h===0||qh(s.substr(d,h),99)?void 0:$d(c+d,h)}function TLs(s){if(s&&s.length>=2&&s.charCodeAt(0)===46){let c=s.length>=3&&s.charCodeAt(1)===46?2:1,g=s.charCodeAt(c);return g===47||g===92}return!1}var RLs=/^(\/\/\/\s*cq,DefinitionKind:()=>Adn,EntryKind:()=>ddn,ExportKind:()=>odn,FindReferencesUse:()=>pdn,ImportExport:()=>adn,createImportTracker:()=>e4t,findModuleReferences:()=>cdn,findReferenceOrRenameEntries:()=>QLs,findReferencedSymbols:()=>MLs,getContextNode:()=>jU,getExportInfo:()=>t4t,getImplementationsAtPosition:()=>YLs,getImportOrExportSymbol:()=>gdn,getReferenceEntriesForNode:()=>Idn,isContextWithStartAndEndNode:()=>n4t,isDeclarationOfSymbol:()=>ydn,isWriteAccessForReference:()=>s4t,toContextSpan:()=>i4t,toHighlightSpan:()=>qLs,toReferenceEntry:()=>Cdn,toRenameLocation:()=>JLs});function e4t(s,c,g,d){let h=FLs(s,g,d);return(_,S,R)=>{let{directImports:T,indirectUsers:O}=kLs(s,c,h,S,g,d);return{indirectUsers:O,...xLs(T,_,S.exportKind,g,R)}}}var odn=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s))(odn||{}),adn=(s=>(s[s.Import=0]="Import",s[s.Export=1]="Export",s))(adn||{});function kLs(s,c,g,{exportingModuleSymbol:d,exportKind:h},_,S){let R=ise(),T=ise(),O=[],V=!!d.globalExports,M=V?void 0:[];return re(d),{directImports:O,indirectUsers:ee()};function ee(){if(V)return s;if(d.declarations)for(let Te of d.declarations)BF(Te)&&c.has(Te.getSourceFile().fileName)&&Ee(Te);return M.map(ms)}function re(Te){let Ze=Ne(Te);if(Ze){for(let Pe of Ze)if(R(Pe))switch(S&&S.throwIfCancellationRequested(),Pe.kind){case 214:if(jp(Pe)){ge(Pe);break}if(!V){let et=Pe.parent;if(h===2&&et.kind===261){let{name:Ye}=et;if(Ye.kind===80){O.push(Ye);break}}}break;case 80:break;case 272:_e(Pe,Pe.name,Ga(Pe,32),!1);break;case 273:case 352:O.push(Pe);let Ke=Pe.importClause&&Pe.importClause.namedBindings;Ke&&Ke.kind===275?_e(Pe,Ke.name,!1,!0):!V&&S3(Pe)&&Ee(pOe(Pe));break;case 279:Pe.exportClause?Pe.exportClause.kind===281?Ee(pOe(Pe),!0):O.push(Pe):re(OLs(Pe,_));break;case 206:!V&&Pe.isTypeOf&&!Pe.qualifier&&Ie(Pe)&&Ee(Pe.getSourceFile(),!0),O.push(Pe);break;default:pe.failBadSyntaxKind(Pe,"Unexpected import kind.")}}}function ge(Te){let Ze=ji(Te,ust)||Te.getSourceFile();Ee(Ze,!!Ie(Te,!0))}function Ie(Te,Ze=!1){return ji(Te,Pe=>Ze&&ust(Pe)?"quit":MB(Pe)&&zt(Pe.modifiers,y))}function _e(Te,Ze,Pe,Ke){if(h===2)Ke||O.push(Te);else if(!V){let et=pOe(Te);pe.assert(et.kind===308||et.kind===268),Pe||GLs(et,Ze,_)?Ee(et,!0):Ee(et)}}function Ee(Te,Ze=!1){if(pe.assert(!V),!T(Te)||(M.push(Te),!Ze))return;let Ke=_.getMergedSymbol(Te.symbol);if(!Ke)return;pe.assert(!!(Ke.flags&1536));let et=Ne(Ke);if(et)for(let Ye of et)qm(Ye)||Ee(pOe(Ye),!0)}function Ne(Te){return g.get(xg(Te).toString())}}function xLs(s,c,g,d,h){let _=[],S=[];function R(ee,re){_.push([ee,re])}if(s)for(let ee of s)T(ee);return{importSearches:_,singleReferences:S};function T(ee){if(ee.kind===272){r4t(ee)&&O(ee.name);return}if(ee.kind===80){O(ee);return}if(ee.kind===206){if(ee.qualifier){let Ie=T0(ee.qualifier);Ie.escapedText===of(c)&&S.push(Ie)}else g===2&&S.push(ee.argument.literal);return}if(ee.moduleSpecifier.kind!==11)return;if(ee.kind===279){ee.exportClause&&bv(ee.exportClause)&&V(ee.exportClause);return}let{name:re,namedBindings:ge}=ee.importClause||{name:void 0,namedBindings:void 0};if(ge)switch(ge.kind){case 275:O(ge.name);break;case 276:(g===0||g===1)&&V(ge);break;default:pe.assertNever(ge)}if(re&&(g===1||g===2)&&(!h||re.escapedText===mWe(c))){let Ie=d.getSymbolAtLocation(re);R(re,Ie)}}function O(ee){g===2&&(!h||M(ee.escapedText))&&R(ee,d.getSymbolAtLocation(ee))}function V(ee){if(ee)for(let re of ee.elements){let{name:ge,propertyName:Ie}=re;if(M(vF(Ie||ge)))if(Ie)S.push(Ie),(!h||vF(ge)===c.escapedName)&&R(ge,d.getSymbolAtLocation(ge));else{let _e=re.kind===282&&re.propertyName?d.getExportSpecifierLocalTargetSymbol(re):d.getSymbolAtLocation(ge);R(ge,_e)}}}function M(ee){return ee===c.escapedName||g!==0&&ee==="default"}}function GLs(s,c,g){let d=g.getSymbolAtLocation(c);return!!ldn(s,h=>{if(!Vh(h))return;let{exportClause:_,moduleSpecifier:S}=h;return!S&&_&&bv(_)&&_.elements.some(R=>g.getExportSpecifierLocalTargetSymbol(R)===d)})}function cdn(s,c,g){var d;let h=[],_=s.getTypeChecker();for(let S of c){let R=g.valueDeclaration;if(R?.kind===308){for(let T of S.referencedFiles)s.getSourceFileFromReference(S,T)===R&&h.push({kind:"reference",referencingFile:S,ref:T});for(let T of S.typeReferenceDirectives){let O=(d=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(T,S))==null?void 0:d.resolvedTypeReferenceDirective;O!==void 0&&O.resolvedFileName===R.fileName&&h.push({kind:"reference",referencingFile:S,ref:T})}}udn(S,(T,O)=>{_.getSymbolAtLocation(O)===g&&h.push(ap(T)?{kind:"implicit",literal:O,referencingFile:S}:{kind:"import",literal:O})})}return h}function FLs(s,c,g){let d=new Map;for(let h of s)g&&g.throwIfCancellationRequested(),udn(h,(_,S)=>{let R=c.getSymbolAtLocation(S);if(R){let T=xg(R).toString(),O=d.get(T);O||d.set(T,O=[]),O.push(_)}});return d}function ldn(s,c){return F(s.kind===308?s.statements:s.body.statements,g=>c(g)||ust(g)&&F(g.body&&g.body.statements,c))}function udn(s,c){if(s.externalModuleIndicator||s.imports!==void 0)for(let g of s.imports)c(W7(g),g);else ldn(s,g=>{switch(g.kind){case 279:case 273:{let d=g;d.moduleSpecifier&&Lg(d.moduleSpecifier)&&c(d,d.moduleSpecifier);break}case 272:{let d=g;r4t(d)&&c(d,d.moduleReference.expression);break}}})}function gdn(s,c,g,d){return d?h():h()||_();function h(){var T;let{parent:O}=s,V=O.parent;if(c.exportSymbol)return O.kind===212?(T=c.declarations)!=null&&T.some(re=>re===O)&&po(V)?ee(V,!1):void 0:S(c.exportSymbol,R(O));{let re=LLs(O,s);if(re&&Ga(re,32))return Zm(re)&&re.moduleReference===s?d?void 0:{kind:0,symbol:g.getSymbolAtLocation(re.name)}:S(c,R(re));if(ok(O))return S(c,0);if(yf(O))return M(O);if(yf(V))return M(V);if(po(O))return ee(O,!0);if(po(V))return ee(V,!0);if(FU(O)||L$e(O))return S(c,0)}function M(re){if(!re.symbol.parent)return;let ge=re.isExportEquals?2:1;return{kind:1,symbol:c,exportInfo:{exportingModuleSymbol:re.symbol.parent,exportKind:ge}}}function ee(re,ge){let Ie;switch(oI(re)){case 1:Ie=0;break;case 2:Ie=2;break;default:return}let _e=ge?g.getSymbolAtLocation(xbe(Ma(re.left,bp))):c;return _e&&S(_e,Ie)}}function _(){if(!VLs(s))return;let O=g.getImmediateAliasedSymbol(c);if(!O||(O=WLs(O,g),O.escapedName==="export="&&(O=ZLs(O,g),O===void 0)))return;let V=mWe(O);if(V===void 0||V==="default"||V===c.escapedName)return{kind:0,symbol:O}}function S(T,O){let V=t4t(T,O,g);return V&&{kind:1,symbol:T,exportInfo:V}}function R(T){return Ga(T,2048)?1:0}}function ZLs(s,c){var g,d;if(s.flags&2097152)return c.getImmediateAliasedSymbol(s);let h=pe.checkDefined(s.valueDeclaration);if(yf(h))return(g=Gs(h.expression,yE))==null?void 0:g.symbol;if(po(h))return(d=Gs(h.right,yE))==null?void 0:d.symbol;if(al(h))return h.symbol}function LLs(s,c){let g=nc(s)?s:mg(s)?ai(s):void 0;return g?s.name!==c||fQ(g.parent)?void 0:Eh(g.parent.parent)?g.parent.parent:void 0:s}function VLs(s){let{parent:c}=s;switch(c.kind){case 272:return c.name===s&&r4t(c);case 277:return!c.propertyName;case 274:case 275:return pe.assert(c.name===s),!0;case 209:return wo(s)&&wW(c.parent.parent);default:return!1}}function t4t(s,c,g){let d=s.parent;if(!d)return;let h=g.getMergedSymbol(d);return QD(h)?{exportingModuleSymbol:h,exportKind:c}:void 0}function WLs(s,c){if(s.declarations)for(let g of s.declarations){if(D0(g)&&!g.propertyName&&!g.parent.parent.moduleSpecifier)return c.getExportSpecifierLocalTargetSymbol(g)||s;if(jo(g)&&dN(g.expression)&&!p(g.name))return c.getSymbolAtLocation(g);if(l0(g)&&po(g.parent.parent)&&oI(g.parent.parent)===2)return c.getExportSpecifierLocalTargetSymbol(g.name)}return s}function OLs(s,c){return c.getMergedSymbol(pOe(s).symbol)}function pOe(s){if(s.kind===214||s.kind===352)return s.getSourceFile();let{parent:c}=s;return c.kind===308?c:(pe.assert(c.kind===269),Ma(c.parent,ust))}function ust(s){return s.kind===268&&s.name.kind===11}function r4t(s){return s.moduleReference.kind===284&&s.moduleReference.expression.kind===11}var Adn=(s=>(s[s.Symbol=0]="Symbol",s[s.Label=1]="Label",s[s.Keyword=2]="Keyword",s[s.This=3]="This",s[s.String=4]="String",s[s.TripleSlashReference=5]="TripleSlashReference",s))(Adn||{}),ddn=(s=>(s[s.Span=0]="Span",s[s.Node=1]="Node",s[s.StringLiteral=2]="StringLiteral",s[s.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",s[s.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",s))(ddn||{});function KF(s,c=1){return{kind:c,node:s.name||s,context:PLs(s)}}function n4t(s){return s&&s.kind===void 0}function PLs(s){if(em(s))return jU(s);if(s.parent){if(!em(s.parent)&&!yf(s.parent)){if(wo(s)){let g=po(s.parent)?s.parent:bp(s.parent)&&po(s.parent.parent)&&s.parent.parent.left===s.parent?s.parent.parent:void 0;if(g&&oI(g)!==0)return jU(g)}if(iR(s.parent)||dQ(s.parent))return s.parent.parent;if(xU(s.parent)||HW(s.parent)||EY(s.parent))return s.parent;if(CA(s)){let g=O7(s);if(g){let d=ji(g,h=>em(h)||Lc(h)||h3(h));return em(d)?jU(d):d}}let c=ji(s,Un);return c?jU(c.parent):void 0}if(s.parent.name===s||Tc(s.parent)||yf(s.parent)||(iS(s.parent)||mg(s.parent))&&s.parent.propertyName===s||s.kind===90&&Ga(s.parent,2080))return jU(s.parent)}}function jU(s){if(s)switch(s.kind){case 261:return!A_(s.parent)||s.parent.declarations.length!==1?s:Eh(s.parent.parent)?s.parent.parent:VL(s.parent.parent)?jU(s.parent.parent):s.parent;case 209:return jU(s.parent.parent);case 277:return s.parent.parent.parent;case 282:case 275:return s.parent.parent;case 274:case 281:return s.parent;case 227:return OC(s.parent)?s.parent:s;case 251:case 250:return{start:s.initializer,end:s.expression};case 304:case 305:return o9(s.parent)?jU(ji(s.parent,c=>po(c)||VL(c))):s;case 256:return{start:de(s.getChildren(s.getSourceFile()),c=>c.kind===109),end:s.caseBlock};default:return s}}function i4t(s,c,g){if(!g)return;let d=n4t(g)?IOe(g.start,c,g.end):IOe(g,c);return d.start!==s.start||d.length!==s.length?{contextSpan:d}:void 0}var pdn=(s=>(s[s.Other=0]="Other",s[s.References=1]="References",s[s.Rename=2]="Rename",s))(pdn||{});function MLs(s,c,g,d,h){let _=Wb(d,h),S={use:1},R=cq.getReferencedSymbolsForNode(h,_,s,g,c,S),T=s.getTypeChecker(),O=cq.getAdjustedNode(_,S),V=HLs(O)?T.getSymbolAtLocation(O):void 0;return!R||!R.length?void 0:Xt(R,({definition:M,references:ee})=>M&&{definition:T.runWithCancellationToken(c,re=>XLs(M,re,_)),references:ee.map(re=>ULs(re,V))})}function HLs(s){return s.kind===90||!!M7(s)||Rne(s)||s.kind===137&&Tc(s.parent)}function YLs(s,c,g,d,h){let _=Wb(d,h),S,R=fdn(s,c,g,_,h);if(_.parent.kind===212||_.parent.kind===209||_.parent.kind===213||_.kind===108)S=R&&[...R];else if(R){let O=aA(R),V=new Set;for(;!O.isEmpty();){let M=O.dequeue();if(!Vy(V,id(M.node)))continue;S=Ft(S,M);let ee=fdn(s,c,g,M.node,M.node.pos);ee&&O.enqueue(...ee)}}let T=s.getTypeChecker();return lt(S,O=>jLs(O,T))}function fdn(s,c,g,d,h){if(d.kind===308)return;let _=s.getTypeChecker();if(d.parent.kind===305){let S=[];return cq.getReferenceEntriesForShorthandPropertyAssignment(d,_,R=>S.push(KF(R))),S}else if(d.kind===108||Fy(d.parent)){let S=_.getSymbolAtLocation(d);return S.valueDeclaration&&[KF(S.valueDeclaration)]}else return Idn(h,d,s,g,c,{implementations:!0,use:1})}function QLs(s,c,g,d,h,_,S){return lt(hdn(cq.getReferencedSymbolsForNode(h,d,s,g,c,_)),R=>S(R,d,s.getTypeChecker()))}function Idn(s,c,g,d,h,_={},S=new Set(d.map(R=>R.fileName))){return hdn(cq.getReferencedSymbolsForNode(s,c,g,d,h,_,S))}function hdn(s){return s&&jt(s,c=>c.references)}function XLs(s,c,g){let d=(()=>{switch(s.type){case 0:{let{symbol:V}=s,{displayParts:M,kind:ee}=mdn(V,c,g),re=M.map(_e=>_e.text).join(""),ge=V.declarations&&Nc(V.declarations),Ie=ge?fl(ge)||ge:g;return{...fOe(Ie),name:re,kind:ee,displayParts:M,context:jU(ge)}}case 1:{let{node:V}=s;return{...fOe(V),name:V.text,kind:"label",displayParts:[wE(V.text,17)]}}case 2:{let{node:V}=s,M=Vi(V.kind);return{...fOe(V),name:M,kind:"keyword",displayParts:[{text:M,kind:"keyword"}]}}case 3:{let{node:V}=s,M=c.getSymbolAtLocation(V),ee=M&&u9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,M,V.getSourceFile(),QU(V),V).displayParts||[fS("this")];return{...fOe(V),name:"this",kind:"var",displayParts:ee}}case 4:{let{node:V}=s;return{...fOe(V),name:V.text,kind:"var",displayParts:[wE(Fp(V),8)]}}case 5:return{textSpan:a9(s.reference),sourceFile:s.file,name:s.reference.fileName,kind:"string",displayParts:[wE(`"${s.reference.fileName}"`,8)]};default:return pe.assertNever(s)}})(),{sourceFile:h,textSpan:_,name:S,kind:R,displayParts:T,context:O}=d;return{containerKind:"",containerName:"",fileName:h.fileName,kind:R,name:S,textSpan:_,displayParts:T,...i4t(_,h,O)}}function fOe(s){let c=s.getSourceFile();return{sourceFile:c,textSpan:IOe(Un(s)?s.expression:s,c)}}function mdn(s,c,g){let d=cq.getIntersectingMeaningFromDeclarations(g,s),h=s.declarations&&Nc(s.declarations)||g,{displayParts:_,symbolKind:S}=u9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,s,h.getSourceFile(),h,h,d);return{displayParts:_,kind:S}}function JLs(s,c,g,d,h){return{...gst(s),...d&&KLs(s,c,g,h)}}function ULs(s,c){let g=Cdn(s);return c?{...g,isDefinition:s.kind!==0&&ydn(s.node,c)}:g}function Cdn(s){let c=gst(s);if(s.kind===0)return{...c,isWriteAccess:!1};let{kind:g,node:d}=s;return{...c,isWriteAccess:s4t(d),isInString:g===2?!0:void 0}}function gst(s){if(s.kind===0)return{textSpan:s.textSpan,fileName:s.fileName};{let c=s.node.getSourceFile(),g=IOe(s.node,c);return{textSpan:g,fileName:c.fileName,...i4t(g,c,s.context)}}}function KLs(s,c,g,d){if(s.kind!==0&&(Ir(c)||CA(c))){let{node:h,kind:_}=s,S=h.parent,R=c.text,T=l0(S);if(T||Z1e(S)&&S.name===h&&S.dotDotDotToken===void 0){let O={prefixText:R+": "},V={suffixText:": "+R};if(_===3)return O;if(_===4)return V;if(T){let M=S.parent;return ag(M)&&po(M.parent)&&dN(M.parent.left)?O:V}else return O}else if(Ay(S)&&!S.propertyName){let O=D0(c.parent)?g.getExportSpecifierLocalTargetSymbol(c.parent):g.getSymbolAtLocation(c);return k(O.declarations,S)?{prefixText:R+" as "}:HB}else if(D0(S)&&!S.propertyName)return c===s.node||g.getSymbolAtLocation(c)===g.getSymbolAtLocation(s.node)?{prefixText:R+" as "}:{suffixText:" as "+R}}if(s.kind!==0&&yC(s.node)&&bp(s.node.parent)){let h=lnt(d);return{prefixText:h,suffixText:h}}return HB}function jLs(s,c){let g=gst(s);if(s.kind!==0){let{node:d}=s;return{...g,...zLs(d,c)}}else return{...g,kind:"",displayParts:[]}}function zLs(s,c){let g=c.getSymbolAtLocation(em(s)&&s.name?s.name:s);return g?mdn(g,c,s):s.kind===211?{kind:"interface",displayParts:[G0(21),fS("object literal"),G0(22)]}:s.kind===232?{kind:"local class",displayParts:[G0(21),fS("anonymous local class"),G0(22)]}:{kind:vQ(s),displayParts:[]}}function qLs(s){let c=gst(s);if(s.kind===0)return{fileName:c.fileName,span:{textSpan:c.textSpan,kind:"reference"}};let g=s4t(s.node),d={textSpan:c.textSpan,kind:g?"writtenReference":"reference",isInString:s.kind===2?!0:void 0,...c.contextSpan&&{contextSpan:c.contextSpan}};return{fileName:c.fileName,span:d}}function IOe(s,c,g){let d=s.getStart(c),h=(g||s).getEnd();return CA(s)&&h-d>2&&(pe.assert(g===void 0),d+=1,h-=1),g?.kind===270&&(h=g.getFullStart()),RA(d,h)}function _dn(s){return s.kind===0?s.textSpan:IOe(s.node,s.node.getSourceFile())}function s4t(s){let c=M7(s);return!!c&&$Ls(c)||s.kind===90||x3(s)}function ydn(s,c){var g;if(!c)return!1;let d=M7(s)||(s.kind===90?s.parent:Rne(s)||s.kind===137&&Tc(s.parent)?s.parent.parent:void 0),h=d&&po(d)?d.left:void 0;return!!(d&&((g=c.declarations)!=null&&g.some(_=>_===d||_===h)))}function $Ls(s){if(s.flags&33554432)return!0;switch(s.kind){case 227:case 209:case 264:case 232:case 90:case 267:case 307:case 282:case 274:case 272:case 277:case 265:case 339:case 347:case 292:case 268:case 271:case 275:case 281:case 170:case 305:case 266:case 169:return!0;case 304:return!o9(s.parent);case 263:case 219:case 177:case 175:case 178:case 179:return!!s.body;case 261:case 173:return!!s.initializer||fQ(s.parent);case 174:case 172:case 349:case 342:return!1;default:return pe.failBadSyntaxKind(s)}}var cq;(s=>{function c(Wr,Wn,pt,on,st,nr={},Zr=new Set(on.map(Kr=>Kr.fileName))){var Kr,Dn;if(Wn=g(Wn,nr),al(Wn)){let ds=hse.getReferenceAtPosition(Wn,Wr,pt);if(!ds?.file)return;let Ht=pt.getTypeChecker().getMergedSymbol(ds.file.symbol);if(Ht)return O(pt,Ht,!1,on,Zr);let cn=pt.getFileIncludeReasons();return cn?[{definition:{type:5,reference:ds.reference,file:Wn},references:h(ds.file,cn,pt)||E}]:void 0}if(!nr.implementations){let ds=M(Wn,on,st);if(ds)return ds}let hr=pt.getTypeChecker(),Sn=hr.getSymbolAtLocation(Tc(Wn)&&Wn.parent.name||Wn);if(!Sn){if(!nr.implementations&&CA(Wn)){if(CWe(Wn)){let ds=pt.getFileIncludeReasons(),Ht=(Dn=(Kr=pt.getResolvedModuleFromModuleSpecifier(Wn))==null?void 0:Kr.resolvedModule)==null?void 0:Dn.resolvedFileName,cn=Ht?pt.getSourceFile(Ht):void 0;if(cn)return[{definition:{type:4,node:Wn},references:h(cn,ds,pt)||E}]}return ba(Wn,on,hr,st)}return}if(Sn.escapedName==="export=")return O(pt,Sn.parent,!1,on,Zr);let Ni=S(Sn,pt,on,st,nr,Zr);if(Ni&&!(Sn.flags&33554432))return Ni;let Gi=_(Wn,Sn,hr),nn=Gi&&S(Gi,pt,on,st,nr,Zr),En=ee(Sn,Wn,on,Zr,hr,st,nr);return R(pt,Ni,En,nn)}s.getReferencedSymbolsForNode=c;function g(Wr,Wn){return Wn.use===1?Wr=Urt(Wr):Wn.use===2&&(Wr=lWe(Wr)),Wr}s.getAdjustedNode=g;function d(Wr,Wn,pt,on=new Set(pt.map(st=>st.fileName))){var st,nr;let Zr=(st=Wn.getSourceFile(Wr))==null?void 0:st.symbol;if(Zr)return((nr=O(Wn,Zr,!1,pt,on)[0])==null?void 0:nr.references)||E;let Kr=Wn.getFileIncludeReasons(),Dn=Wn.getSourceFile(Wr);return Dn&&Kr&&h(Dn,Kr,Wn)||E}s.getReferencesForFileName=d;function h(Wr,Wn,pt){let on,st=Wn.get(Wr.path)||E;for(let nr of st)if(r5(nr)){let Zr=pt.getSourceFileByPath(nr.file),Kr=$de(pt,nr);Kie(Kr)&&(on=Ft(on,{kind:0,fileName:Zr.fileName,textSpan:a9(Kr)}))}return on}function _(Wr,Wn,pt){if(Wr.parent&&wEe(Wr.parent)){let on=pt.getAliasedSymbol(Wn),st=pt.getMergedSymbol(on);if(on!==st)return st}}function S(Wr,Wn,pt,on,st,nr){let Zr=Wr.flags&1536&&Wr.declarations&&de(Wr.declarations,al);if(!Zr)return;let Kr=Wr.exports.get("export="),Dn=O(Wn,Wr,!!Kr,pt,nr);if(!Kr||!nr.has(Zr.fileName))return Dn;let hr=Wn.getTypeChecker();return Wr=LC(Kr,hr),R(Wn,Dn,ee(Wr,void 0,pt,nr,hr,on,st))}function R(Wr,...Wn){let pt;for(let on of Wn)if(!(!on||!on.length)){if(!pt){pt=on;continue}for(let st of on){if(!st.definition||st.definition.type!==0){pt.push(st);continue}let nr=st.definition.symbol,Zr=Se(pt,Dn=>!!Dn.definition&&Dn.definition.type===0&&Dn.definition.symbol===nr);if(Zr===-1){pt.push(st);continue}let Kr=pt[Zr];pt[Zr]={definition:Kr.definition,references:Kr.references.concat(st.references).sort((Dn,hr)=>{let Sn=T(Wr,Dn),Ni=T(Wr,hr);if(Sn!==Ni)return Zt(Sn,Ni);let Gi=_dn(Dn),nn=_dn(hr);return Gi.start!==nn.start?Zt(Gi.start,nn.start):Zt(Gi.length,nn.length)})}}}return pt}function T(Wr,Wn){let pt=Wn.kind===0?Wr.getSourceFile(Wn.fileName):Wn.node.getSourceFile();return Wr.getSourceFiles().indexOf(pt)}function O(Wr,Wn,pt,on,st){pe.assert(!!Wn.valueDeclaration);let nr=Xt(cdn(Wr,on,Wn),Kr=>{if(Kr.kind==="import"){let Dn=Kr.literal.parent;if(BE(Dn)){let hr=Ma(Dn.parent,qm);if(pt&&!hr.qualifier)return}return KF(Kr.literal)}else if(Kr.kind==="implicit"){let Dn=Kr.literal.text!==YD&&Vz(Kr.referencingFile,hr=>hr.transformFlags&2?wN(hr)||xU(hr)||X3(hr)?hr:void 0:"skip")||Kr.referencingFile.statements[0]||Kr.referencingFile;return KF(Dn)}else return{kind:0,fileName:Kr.referencingFile.fileName,textSpan:a9(Kr.ref)}});if(Wn.declarations)for(let Kr of Wn.declarations)switch(Kr.kind){case 308:break;case 268:st.has(Kr.getSourceFile().fileName)&&nr.push(KF(Kr.name));break;default:pe.assert(!!(Wn.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let Zr=Wn.exports.get("export=");if(Zr?.declarations)for(let Kr of Zr.declarations){let Dn=Kr.getSourceFile();if(st.has(Dn.fileName)){let hr=po(Kr)&&jo(Kr.left)?Kr.left.expression:yf(Kr)?pe.checkDefined(ep(Kr,95,Dn)):fl(Kr)||Kr;nr.push(KF(hr))}}return nr.length?[{definition:{type:0,symbol:Wn},references:nr}]:E}function V(Wr){return Wr.kind===148&&VB(Wr.parent)&&Wr.parent.operator===148}function M(Wr,Wn,pt){if(cpe(Wr.kind))return Wr.kind===116&&nR(Wr.parent)||Wr.kind===148&&!V(Wr)?void 0:_r(Wn,Wr.kind,pt,Wr.kind===148?V:void 0);if(pv(Wr.parent)&&Wr.parent.name===Wr)return Wt(Wn,pt);if(Ge(Wr)&&Al(Wr.parent))return[{definition:{type:2,node:Wr},references:[KF(Wr)]}];if(T1e(Wr)){let on=nWe(Wr.parent,Wr.text);return on&&Lt(on.parent,on)}else if(Wrt(Wr))return Lt(Wr.parent,Wr);if(tse(Wr))return Fl(Wr,Wn,pt);if(Wr.kind===108)return Zn(Wr)}function ee(Wr,Wn,pt,on,st,nr,Zr){let Kr=Wn&&Ie(Wr,Wn,st,!Tu(Zr))||Wr,Dn=Wn&&Zr.use!==2?pa(Wn,Kr):7,hr=[],Sn=new Ne(pt,on,Wn?ge(Wn):0,st,nr,Dn,Zr,hr),Ni=!Tu(Zr)||!Kr.declarations?void 0:de(Kr.declarations,D0);if(Ni)Gr(Ni.name,Kr,Ni,Sn.createSearch(Wn,Wr,void 0),Sn,!0,!0);else if(Wn&&Wn.kind===90&&Kr.escapedName==="default"&&Kr.parent)qt(Wn,Kr,Sn),Te(Wn,Kr,{exportingModuleSymbol:Kr.parent,exportKind:1},Sn);else{let Gi=Sn.createSearch(Wn,Kr,void 0,{allSearchSymbols:Wn?hc(Kr,Wn,st,Zr.use===2,!!Zr.providePrefixAndSuffixTextForRename,!!Zr.implementations):[Kr]});re(Kr,Sn,Gi)}return hr}function re(Wr,Wn,pt){let on=Tt(Wr);if(on)it(on,on.getSourceFile(),pt,Wn,!(al(on)&&!k(Wn.sourceFiles,on)));else for(let st of Wn.sourceFiles)Wn.cancellationToken.throwIfCancellationRequested(),et(st,pt,Wn)}function ge(Wr){switch(Wr.kind){case 177:case 137:return 1;case 80:if(xa(Wr.parent))return pe.assert(Wr.parent.name===Wr),2;default:return 0}}function Ie(Wr,Wn,pt,on){let{parent:st}=Wn;return D0(st)&&on?dt(Wn,Wr,st,pt):J(Wr.declarations,nr=>{if(!nr.parent){if(Wr.flags&33554432)return;pe.fail(`Unexpected symbol at ${pe.formatSyntaxKind(Wn.kind)}: ${pe.formatSymbol(Wr)}`)}return bh(nr.parent)&&gS(nr.parent.parent)?pt.getPropertyOfType(pt.getTypeFromTypeNode(nr.parent.parent),Wr.name):void 0})}let _e;(Wr=>{Wr[Wr.None=0]="None",Wr[Wr.Constructor=1]="Constructor",Wr[Wr.Class=2]="Class"})(_e||(_e={}));function Ee(Wr){if(!(Wr.flags&33555968))return;let Wn=Wr.declarations&&de(Wr.declarations,pt=>!al(pt)&&!Lh(pt));return Wn&&Wn.symbol}class Ne{constructor(Wn,pt,on,st,nr,Zr,Kr,Dn){this.sourceFiles=Wn,this.sourceFilesSet=pt,this.specialSearchKind=on,this.checker=st,this.cancellationToken=nr,this.searchMeaning=Zr,this.options=Kr,this.result=Dn,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=ise(),this.markSeenReExportRHS=ise(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(Wn){return this.sourceFilesSet.has(Wn.fileName)}getImportSearches(Wn,pt){return this.importTracker||(this.importTracker=e4t(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(Wn,pt,this.options.use===2)}createSearch(Wn,pt,on,st={}){let{text:nr=A2(of(ez(pt)||Ee(pt)||pt)),allSearchSymbols:Zr=[pt]}=st,Kr=pp(nr),Dn=this.options.implementations&&Wn?Cs(Wn,pt,this.checker):void 0;return{symbol:pt,comingFrom:on,text:nr,escapedText:Kr,parents:Dn,allSearchSymbols:Zr,includes:hr=>k(Zr,hr)}}referenceAdder(Wn){let pt=xg(Wn),on=this.symbolIdToReferences[pt];return on||(on=this.symbolIdToReferences[pt]=[],this.result.push({definition:{type:0,symbol:Wn},references:on})),(st,nr)=>on.push(KF(st,nr))}addStringOrCommentReference(Wn,pt){this.result.push({definition:void 0,references:[{kind:0,fileName:Wn,textSpan:pt}]})}markSearchedSymbols(Wn,pt){let on=id(Wn),st=this.sourceFileToSeenSymbols[on]||(this.sourceFileToSeenSymbols[on]=new Set),nr=!1;for(let Zr of pt)nr=Ar(st,xg(Zr))||nr;return nr}}function Te(Wr,Wn,pt,on){let{importSearches:st,singleReferences:nr,indirectUsers:Zr}=on.getImportSearches(Wn,pt);if(nr.length){let Kr=on.referenceAdder(Wn);for(let Dn of nr)Pe(Dn,on)&&Kr(Dn)}for(let[Kr,Dn]of st)Gt(Kr.getSourceFile(),on.createSearch(Kr,Dn,1),on);if(Zr.length){let Kr;switch(pt.exportKind){case 0:Kr=on.createSearch(Wr,Wn,1);break;case 1:Kr=on.options.use===2?void 0:on.createSearch(Wr,Wn,1,{text:"default"});break;case 2:break}if(Kr)for(let Dn of Zr)et(Dn,Kr,on)}}function Ze(Wr,Wn,pt,on,st,nr,Zr,Kr){let Dn=e4t(Wr,new Set(Wr.map(Gi=>Gi.fileName)),Wn,pt),{importSearches:hr,indirectUsers:Sn,singleReferences:Ni}=Dn(on,{exportKind:Zr?1:0,exportingModuleSymbol:st},!1);for(let[Gi]of hr)Kr(Gi);for(let Gi of Ni)Ir(Gi)&&qm(Gi.parent)&&Kr(Gi);for(let Gi of Sn)for(let nn of yt(Gi,Zr?"default":nr)){let En=Wn.getSymbolAtLocation(nn),ds=zt(En?.declarations,Ht=>!!Gs(Ht,yf));Ir(nn)&&!iS(nn.parent)&&(En===on||ds)&&Kr(nn)}}s.eachExportReference=Ze;function Pe(Wr,Wn){return kt(Wr,Wn)?Wn.options.use!==2?!0:!Ir(Wr)&&!iS(Wr.parent)?!1:!(iS(Wr.parent)&&dv(Wr)):!1}function Ke(Wr,Wn){if(Wr.declarations)for(let pt of Wr.declarations){let on=pt.getSourceFile();Gt(on,Wn.createSearch(pt,Wr,0),Wn,Wn.includesSourceFile(on))}}function et(Wr,Wn,pt){yit(Wr).get(Wn.escapedText)!==void 0&&Gt(Wr,Wn,pt)}function Ye(Wr,Wn){return o9(Wr.parent.parent)?Wn.getPropertySymbolOfDestructuringAssignment(Wr):void 0}function Tt(Wr){let{declarations:Wn,flags:pt,parent:on,valueDeclaration:st}=Wr;if(st&&(st.kind===219||st.kind===232))return st;if(!Wn)return;if(pt&8196){let Kr=de(Wn,Dn=>Zb(Dn,2)||hC(Dn));return Kr?UL(Kr,264):void 0}if(Wn.some(Z1e))return;let nr=on&&!(Wr.flags&262144);if(nr&&!(QD(on)&&!on.globalExports))return;let Zr;for(let Kr of Wn){let Dn=QU(Kr);if(Zr&&Zr!==Dn||!Dn||Dn.kind===308&&!Sl(Dn))return;if(Zr=Dn,jA(Zr)){let hr;for(;hr=Jye(Zr);)Zr=hr}}return nr?Zr.getSourceFile():Zr}function at(Wr,Wn,pt,on=pt){return Qe(Wr,Wn,pt,()=>!0,on)||!1}s.isSymbolReferencedInFile=at;function Qe(Wr,Wn,pt,on,st=pt){let nr=We(Wr.parent,Wr.parent.parent)?ma(Wn.getSymbolsOfParameterPropertyDeclaration(Wr.parent,Wr.text)):Wn.getSymbolAtLocation(Wr);if(nr)for(let Zr of yt(pt,nr.name,st)){if(!Ir(Zr)||Zr===Wr||Zr.escapedText!==Wr.escapedText)continue;let Kr=Wn.getSymbolAtLocation(Zr);if(Kr===nr||Wn.getShorthandAssignmentValueSymbol(Zr.parent)===nr||D0(Zr.parent)&&dt(Zr,Kr,Zr.parent,Wn)===nr){let Dn=on(Zr);if(Dn)return Dn}}}s.eachSymbolReferenceInFile=Qe;function Ct(Wr,Wn){return Le(yt(Wn,Wr),st=>!!M7(st)).reduce((st,nr)=>{let Zr=on(nr);return!zt(st.declarationNames)||Zr===st.depth?(st.declarationNames.push(nr),st.depth=Zr):ZrSn===st)&&on(Zr,Dn))return!0}return!1}s.someSignatureUsage=mt;function yt(Wr,Wn,pt=Wr){return Xt(Rt(Wr,Wn,pt),on=>{let st=Wb(Wr,on);return st===Wr?void 0:st})}function Rt(Wr,Wn,pt=Wr){let on=[];if(!Wn||!Wn.length)return on;let st=Wr.text,nr=st.length,Zr=Wn.length,Kr=st.indexOf(Wn,pt.pos);for(;Kr>=0&&!(Kr>pt.end);){let Dn=Kr+Zr;(Kr===0||!c1(st.charCodeAt(Kr-1),99))&&(Dn===nr||!c1(st.charCodeAt(Dn),99))&&on.push(Kr),Kr=st.indexOf(Wn,Kr+Zr+1)}return on}function Lt(Wr,Wn){let pt=Wr.getSourceFile(),on=Wn.text,st=Xt(yt(pt,on,Wr),nr=>nr===Wn||T1e(nr)&&nWe(nr,on)===Wn?KF(nr):void 0);return[{definition:{type:1,node:Wn},references:st}]}function je(Wr,Wn){switch(Wr.kind){case 81:if(U3(Wr.parent))return!0;case 80:return Wr.text.length===Wn.length;case 15:case 11:{let pt=Wr;return pt.text.length===Wn.length&&(iWe(pt)||Hrt(Wr)||yMt(Wr)||Ll(Wr.parent)&&b3(Wr.parent)&&Wr.parent.arguments[1]===Wr||iS(Wr.parent))}case 9:return iWe(Wr)&&Wr.text.length===Wn.length;case 90:return Wn.length===7;default:return!1}}function Wt(Wr,Wn){let pt=jt(Wr,on=>(Wn.throwIfCancellationRequested(),Xt(yt(on,"meta",on),st=>{let nr=st.parent;if(pv(nr))return KF(nr)})));return pt.length?[{definition:{type:2,node:pt[0].node},references:pt}]:void 0}function _r(Wr,Wn,pt,on){let st=jt(Wr,nr=>(pt.throwIfCancellationRequested(),Xt(yt(nr,Vi(Wn),nr),Zr=>{if(Zr.kind===Wn&&(!on||on(Zr)))return KF(Zr)})));return st.length?[{definition:{type:2,node:st[0].node},references:st}]:void 0}function Gt(Wr,Wn,pt,on=!0){return pt.cancellationToken.throwIfCancellationRequested(),it(Wr,Wr,Wn,pt,on)}function it(Wr,Wn,pt,on,st){if(on.markSearchedSymbols(Wn,pt.allSearchSymbols))for(let nr of Rt(Wn,pt.text,Wr))tr(Wn,nr,pt,on,st)}function kt(Wr,Wn){return!!(YU(Wr)&Wn.searchMeaning)}function tr(Wr,Wn,pt,on,st){let nr=Wb(Wr,Wn);if(!je(nr,pt.text)){!on.options.implementations&&(on.options.findInStrings&&jz(Wr,Wn)||on.options.findInComments&&GMt(Wr,Wn))&&on.addStringOrCommentReference(Wr.fileName,$d(Wn,pt.text.length));return}if(!kt(nr,on))return;let Zr=on.checker.getSymbolAtLocation(nr);if(!Zr)return;let Kr=nr.parent;if(Ay(Kr)&&Kr.propertyName===nr)return;if(D0(Kr)){pe.assert(nr.kind===80||nr.kind===11),Gr(nr,Zr,Kr,pt,on,st);return}if(SY(Kr)&&Kr.isNameFirst&&Kr.typeExpression&&GU(Kr.typeExpression.type)&&Kr.typeExpression.type.jsDocPropertyTags&&B(Kr.typeExpression.type.jsDocPropertyTags)){ur(Kr.typeExpression.type.jsDocPropertyTags,nr,pt,on);return}let Dn=co(pt,Zr,nr,on);if(!Dn){ir(Zr,pt,on);return}switch(on.specialSearchKind){case 0:st&&qt(nr,Dn,on);break;case 1:Yt(nr,Wr,pt,on);break;case 2:Tr(nr,pt,on);break;default:pe.assertNever(on.specialSearchKind)}wo(nr)&&mg(nr.parent)&&wW(nr.parent.parent.parent)&&(Zr=nr.parent.symbol,!Zr)||ot(nr,Zr,pt,on)}function ur(Wr,Wn,pt,on){let st=on.referenceAdder(pt.symbol);qt(Wn,pt.symbol,on),F(Wr,nr=>{zi(nr.name)&&st(nr.name.left)})}function Gr(Wr,Wn,pt,on,st,nr,Zr){pe.assert(!Zr||!!st.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");let{parent:Kr,propertyName:Dn,name:hr}=pt,Sn=Kr.parent,Ni=dt(Wr,Wn,pt,st.checker);if(!Zr&&!on.includes(Ni))return;if(Dn?Wr===Dn?(Sn.moduleSpecifier||Gi(),nr&&st.options.use!==2&&st.markSeenReExportRHS(hr)&&qt(hr,pe.checkDefined(pt.symbol),st)):st.markSeenReExportRHS(Wr)&&Gi():st.options.use===2&&dv(hr)||Gi(),!Tu(st.options)||Zr){let En=dv(Wr)||dv(pt.name)?1:0,ds=pe.checkDefined(pt.symbol),Ht=t4t(ds,En,st.checker);Ht&&Te(Wr,ds,Ht,st)}if(on.comingFrom!==1&&Sn.moduleSpecifier&&!Dn&&!Tu(st.options)){let nn=st.checker.getExportSpecifierLocalTargetSymbol(pt);nn&&Ke(nn,st)}function Gi(){nr&&qt(Wr,Ni,st)}}function dt(Wr,Wn,pt,on){return pr(Wr,pt)&&on.getExportSpecifierLocalTargetSymbol(pt)||Wn}function pr(Wr,Wn){let{parent:pt,propertyName:on,name:st}=Wn;return pe.assert(on===Wr||st===Wr),on?on===Wr:!pt.parent.moduleSpecifier}function ot(Wr,Wn,pt,on){let st=gdn(Wr,Wn,on.checker,pt.comingFrom===1);if(!st)return;let{symbol:nr}=st;st.kind===0?Tu(on.options)||Ke(nr,on):Te(Wr,nr,st.exportInfo,on)}function ir({flags:Wr,valueDeclaration:Wn},pt,on){let st=on.checker.getShorthandAssignmentValueSymbol(Wn),nr=Wn&&fl(Wn);!(Wr&33554432)&&nr&&pt.includes(st)&&qt(nr,st,on)}function qt(Wr,Wn,pt){let{kind:on,symbol:st}="kind"in Wn?Wn:{kind:void 0,symbol:Wn};if(pt.options.use===2&&Wr.kind===90)return;let nr=pt.referenceAdder(st);pt.options.implementations?si(Wr,nr,pt):nr(Wr,on)}function Yt(Wr,Wn,pt,on){ipe(Wr)&&qt(Wr,pt.symbol,on);let st=()=>on.referenceAdder(pt.symbol);if(xa(Wr.parent))pe.assert(Wr.kind===90||Wr.parent.name===Wr),Cn(pt.symbol,Wn,st());else{let nr=Rg(Wr);nr&&(Zi(nr,st()),An(nr,on))}}function Tr(Wr,Wn,pt){qt(Wr,Wn.symbol,pt);let on=Wr.parent;if(pt.options.use===2||!xa(on))return;pe.assert(on.name===Wr);let st=pt.referenceAdder(Wn.symbol);for(let nr of on.members)LL(nr)&&lg(nr)&&nr.body&&nr.body.forEachChild(function Zr(Kr){Kr.kind===110?st(Kr):!Eu(Kr)&&!xa(Kr)&&Kr.forEachChild(Zr)})}function Cn(Wr,Wn,pt){let on=jn(Wr);if(on&&on.declarations)for(let st of on.declarations){let nr=ep(st,137,Wn);pe.assert(st.kind===177&&!!nr),pt(nr)}Wr.exports&&Wr.exports.forEach(st=>{let nr=st.valueDeclaration;if(nr&&nr.kind===175){let Zr=nr.body;Zr&&Qu(Zr,110,Kr=>{ipe(Kr)&&pt(Kr)})}})}function jn(Wr){return Wr.members&&Wr.members.get("__constructor")}function Zi(Wr,Wn){let pt=jn(Wr.symbol);if(pt&&pt.declarations)for(let on of pt.declarations){pe.assert(on.kind===177);let st=on.body;st&&Qu(st,108,nr=>{Zrt(nr)&&Wn(nr)})}}function Ns(Wr){return!!jn(Wr.symbol)}function An(Wr,Wn){if(Ns(Wr))return;let pt=Wr.symbol,on=Wn.createSearch(void 0,pt,void 0);re(pt,Wn,on)}function si(Wr,Wn,pt){if(UT(Wr)&&Pa(Wr.parent)){Wn(Wr);return}if(Wr.kind!==80)return;Wr.parent.kind===305&&$c(Wr,pt.checker,Wn);let on=ks(Wr);if(on){Wn(on);return}let st=ji(Wr,Kr=>!zi(Kr.parent)&&!uc(Kr.parent)&&!Dx(Kr.parent)),nr=st.parent;if(mf(nr)&&nr.type===st&&pt.markSeenContainingTypeReference(nr))if(QT(nr))Zr(nr.initializer);else if(Eu(nr)&&nr.body){let Kr=nr.body;Kr.kind===242?wF(Kr,Dn=>{Dn.expression&&Zr(Dn.expression)}):Zr(Kr)}else(vd(nr)||Xg(nr))&&Zr(nr.expression);function Zr(Kr){Ic(Kr)&&Wn(Kr)}}function ks(Wr){return Ir(Wr)||jo(Wr)?ks(Wr.parent):g_(Wr)?Gs(Wr.parent.parent,Qp(xa,d_)):void 0}function Ic(Wr){switch(Wr.kind){case 218:return Ic(Wr.expression);case 220:case 219:case 211:case 232:case 210:return!0;default:return!1}}function ou(Wr,Wn,pt,on){if(Wr===Wn)return!0;let st=xg(Wr)+","+xg(Wn),nr=pt.get(st);if(nr!==void 0)return nr;pt.set(st,!1);let Zr=!!Wr.declarations&&Wr.declarations.some(Kr=>H7(Kr).some(Dn=>{let hr=on.getTypeAtLocation(Dn);return!!hr&&!!hr.symbol&&ou(hr.symbol,Wn,pt,on)}));return pt.set(st,Zr),Zr}function Zn(Wr){let Wn=x7(Wr,!1);if(!Wn)return;let pt=256;switch(Wn.kind){case 173:case 172:case 175:case 174:case 177:case 178:case 179:pt&=Fx(Wn),Wn=Wn.parent;break;default:return}let on=Wn.getSourceFile(),st=Xt(yt(on,"super",Wn),nr=>{if(nr.kind!==108)return;let Zr=x7(nr,!1);return Zr&&lg(Zr)===!!pt&&Zr.parent.symbol===Wn.symbol?KF(nr):void 0});return[{definition:{type:0,symbol:Wn.symbol},references:st}]}function ya(Wr){return Wr.kind===80&&Wr.parent.kind===170&&Wr.parent.name===Wr}function Fl(Wr,Wn,pt){let on=i0(Wr,!1,!1),st=256;switch(on.kind){case 175:case 174:if(u2(on)){st&=Fx(on),on=on.parent;break}case 173:case 172:case 177:case 178:case 179:st&=Fx(on),on=on.parent;break;case 308:if(Lm(on)||ya(Wr))return;case 263:case 219:break;default:return}let nr=jt(on.kind===308?Wn:[on.getSourceFile()],Kr=>(pt.throwIfCancellationRequested(),yt(Kr,"this",al(on)?Kr:on).filter(Dn=>{if(!tse(Dn))return!1;let hr=i0(Dn,!1,!1);if(!yE(hr))return!1;switch(on.kind){case 219:case 263:return on.symbol===hr.symbol;case 175:case 174:return u2(on)&&on.symbol===hr.symbol;case 232:case 264:case 211:return hr.parent&&yE(hr.parent)&&on.symbol===hr.parent.symbol&&lg(hr)===!!st;case 308:return hr.kind===308&&!Lm(hr)&&!ya(Dn)}}))).map(Kr=>KF(Kr));return[{definition:{type:3,node:J(nr,Kr=>Si(Kr.node.parent)?Kr.node:void 0)||Wr},references:nr}]}function ba(Wr,Wn,pt,on){let st=cWe(Wr,pt),nr=jt(Wn,Zr=>(on.throwIfCancellationRequested(),Xt(yt(Zr,Wr.text),Kr=>{if(CA(Kr)&&Kr.text===Wr.text)if(st){let Dn=cWe(Kr,pt);if(st!==pt.getStringType()&&(st===Dn||Oo(Kr,pt)))return KF(Kr,2)}else return MW(Kr)&&!D3(Kr,Zr)?void 0:KF(Kr,2)})));return[{definition:{type:4,node:Wr},references:nr}]}function Oo(Wr,Wn){if(ss(Wr.parent))return Wn.getPropertyOfType(Wn.getTypeAtLocation(Wr.parent.parent),Wr.text)}function hc(Wr,Wn,pt,on,st,nr){let Zr=[];return yr(Wr,Wn,pt,on,!(on&&st),(Kr,Dn,hr)=>{hr&&Pi(Wr)!==Pi(hr)&&(hr=void 0),Zr.push(hr||Dn||Kr)},()=>!nr),Zr}function yr(Wr,Wn,pt,on,st,nr,Zr){let Kr=e2e(Wn);if(Kr){let En=pt.getShorthandAssignmentValueSymbol(Wn.parent);if(En&&on)return nr(En,void 0,void 0,3);let ds=pt.getContextualType(Kr.parent),Ht=ds&&J(rOe(Kr,pt,ds,!0),fr=>Gi(fr,4));if(Ht)return Ht;let cn=Ye(Wn,pt),wt=cn&&nr(cn,void 0,void 0,4);if(wt)return wt;let xe=En&&nr(En,void 0,void 0,3);if(xe)return xe}let Dn=_(Wn,Wr,pt);if(Dn){let En=nr(Dn,void 0,void 0,1);if(En)return En}let hr=Gi(Wr);if(hr)return hr;if(Wr.valueDeclaration&&We(Wr.valueDeclaration,Wr.valueDeclaration.parent)){let En=pt.getSymbolsOfParameterPropertyDeclaration(Ma(Wr.valueDeclaration,Si),Wr.name);return pe.assert(En.length===2&&!!(En[0].flags&1)&&!!(En[1].flags&4)),Gi(Wr.flags&1?En[1]:En[0])}let Sn=yp(Wr,282);if(!on||Sn&&!Sn.propertyName){let En=Sn&&pt.getExportSpecifierLocalTargetSymbol(Sn);if(En){let ds=nr(En,void 0,void 0,1);if(ds)return ds}}if(!on){let En;return st?En=Z1e(Wn.parent)?_We(pt,Wn.parent):void 0:En=nn(Wr,pt),En&&Gi(En,4)}if(pe.assert(on),st){let En=nn(Wr,pt);return En&&Gi(En,4)}function Gi(En,ds){return J(pt.getRootSymbols(En),Ht=>nr(En,Ht,void 0,ds)||(Ht.parent&&Ht.parent.flags&96&&Zr(Ht)?hn(Ht.parent,Ht.name,pt,cn=>nr(En,Ht,cn,ds)):void 0))}function nn(En,ds){let Ht=yp(En,209);if(Ht&&Z1e(Ht))return _We(ds,Ht)}}function hn(Wr,Wn,pt,on){let st=new Set;return nr(Wr);function nr(Zr){if(!(!(Zr.flags&96)||!Vy(st,Zr)))return J(Zr.declarations,Kr=>J(H7(Kr),Dn=>{let hr=pt.getTypeAtLocation(Dn),Sn=hr.symbol&&pt.getPropertyOfType(hr,Wn);return Sn&&J(pt.getRootSymbols(Sn),on)||hr.symbol&&nr(hr.symbol)}))}}function Pi(Wr){return Wr.valueDeclaration?!!(c_(Wr.valueDeclaration)&256):!1}function co(Wr,Wn,pt,on){let{checker:st}=on;return yr(Wn,pt,st,!1,on.options.use!==2||!!on.options.providePrefixAndSuffixTextForRename,(nr,Zr,Kr,Dn)=>(Kr&&Pi(Wn)!==Pi(Kr)&&(Kr=void 0),Wr.includes(Kr||Zr||nr)?{symbol:Zr&&!(aI(nr)&6)?Zr:nr,kind:Dn}:void 0),nr=>!(Wr.parents&&!Wr.parents.some(Zr=>ou(nr.parent,Zr,on.inheritsFromCache,st))))}function pa(Wr,Wn){let pt=YU(Wr),{declarations:on}=Wn;if(on){let st;do{st=pt;for(let nr of on){let Zr=eWe(nr);Zr&pt&&(pt|=Zr)}}while(pt!==st)}return pt}s.getIntersectingMeaningFromDeclarations=pa;function Pa(Wr){return Wr.flags&33554432?!(d_(Wr)||OB(Wr)):N7(Wr)?QT(Wr):Gd(Wr)?!!Wr.body:xa(Wr)||p3(Wr)}function $c(Wr,Wn,pt){let on=Wn.getSymbolAtLocation(Wr),st=Wn.getShorthandAssignmentValueSymbol(on.valueDeclaration);if(st)for(let nr of st.getDeclarations())eWe(nr)&1&&pt(nr)}s.getReferenceEntriesForShorthandPropertyAssignment=$c;function Qu(Wr,Wn,pt){Lu(Wr,on=>{on.kind===Wn&&pt(on),Qu(on,Wn,pt)})}function Rg(Wr){return ybe(rWe(Wr).parent)}function Cs(Wr,Wn,pt){let on=ese(Wr)?Wr.parent:void 0,st=on&&pt.getTypeAtLocation(on.expression),nr=Xt(st&&(st.isUnionOrIntersection()?st.types:st.symbol===Wn.parent?void 0:[st]),Zr=>Zr.symbol&&Zr.symbol.flags&96?Zr.symbol:void 0);return nr.length===0?void 0:nr}function Tu(Wr){return Wr.use===2&&Wr.providePrefixAndSuffixTextForRename}})(cq||(cq={}));var hse={};o(hse,{createDefinitionInfo:()=>u2e,getDefinitionAndBoundSpan:()=>o9s,getDefinitionAtPosition:()=>bdn,getReferenceAtPosition:()=>Sdn,getTypeDefinitionAtPosition:()=>i9s});function bdn(s,c,g,d,h){var _;let S=Sdn(c,g,s),R=S&&[g9s(S.reference.fileName,S.fileName,S.unverified)]||E;if(S?.file)return R;let T=Wb(c,g);if(T===c)return;let{parent:O}=T,V=s.getTypeChecker();if(T.kind===164||Ir(T)&&b9e(O)&&O.tagName===T){let Ee=t9s(V,T);if(Ee!==void 0||T.kind!==164)return Ee||E}if(T1e(T)){let Ee=nWe(T.parent,T.text);return Ee?[o4t(V,Ee,"label",T.text,void 0)]:void 0}switch(T.kind){case 90:if(!vde(T.parent))break;case 84:let Ee=ji(T.parent,Ede);if(Ee)return[u9s(Ee,c)];break}let M;switch(T.kind){case 107:case 135:case 127:M=Gd;let Ee=ji(T,M);return Ee?[c4t(V,Ee)]:void 0}if(Ge(T)&&Al(T.parent)){let Ee=T.parent.parent,{symbol:Ne,failedAliasResolution:Te}=Ast(Ee,V,h),Ze=Le(Ee.members,Al),Pe=Ne?V.symbolToString(Ne,Ee):"",Ke=T.getSourceFile();return lt(Ze,et=>{let{pos:Ye}=Iv(et);return Ye=Yu(Ke.text,Ye),o4t(V,et,"constructor","static {}",Pe,!1,Te,{start:Ye,length:6})})}let{symbol:ee,failedAliasResolution:re}=Ast(T,V,h),ge=T;if(d&&re){let Ee=F([T,...ee?.declarations||E],Te=>ji(Te,Xge)),Ne=Ee&&JY(Ee);Ne&&({symbol:ee,failedAliasResolution:re}=Ast(Ne,V,h),ge=Ne)}if(!ee&&CWe(ge)){let Ee=(_=s.getResolvedModuleFromModuleSpecifier(ge,c))==null?void 0:_.resolvedModule;if(Ee)return[{name:ge.text,fileName:Ee.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:$d(0,0),failedAliasResolution:re,isAmbient:PC(Ee.resolvedFileName),unverified:ge!==T}]}if(hg(T)&&(MI(O)||sh(O))&&(ee=O.symbol),!ee)return Nn(R,a9s(T,V));if(d&&ue(ee.declarations,Ee=>Ee.getSourceFile().fileName===c.fileName))return;let Ie=d9s(V,T);if(Ie&&!(nI(T.parent)&&p9s(Ie))){let Ee=c4t(V,Ie,re),Ne=Ze=>Ze!==Ie;if(V.getRootSymbols(ee).some(Ze=>e9s(Ze,Ie))){if(!Tc(Ie))return[Ee];Ne=Ze=>Ze!==Ie&&(mm(Ze)||wd(Ze))}let Te=Tpe(V,ee,T,re,Ne)||E;return T.kind===108?[Ee,...Te]:[...Te,Ee]}if(T.parent.kind===305){let Ee=V.getShorthandAssignmentValueSymbol(ee.valueDeclaration),Ne=Ee?.declarations?Ee.declarations.map(Te=>u2e(Te,V,Ee,T,!1,re)):E;return Nn(Ne,Edn(V,T))}if(PI(T)&&mg(O)&&$m(O.parent)&&T===(O.propertyName||O.name)){let Ee=F1e(T),Ne=V.getTypeAtLocation(O.parent);return Ee===void 0?E:jt(Ne.isUnion()?Ne.types:[Ne],Te=>{let Ze=Te.getProperty(Ee);return Ze&&Tpe(V,Ze,T)})}let _e=Edn(V,T);return Nn(R,_e.length?_e:Tpe(V,ee,T,re))}function e9s(s,c){var g;return s===c.symbol||s===c.symbol.parent||zm(c.parent)||!EF(c.parent)&&s===((g=Gs(c.parent,yE))==null?void 0:g.symbol)}function Edn(s,c){let g=e2e(c);if(g){let d=g&&s.getContextualType(g.parent);if(d)return jt(rOe(g,s,d,!1),h=>Tpe(s,h,c))}return E}function t9s(s,c){let g=ji(c,MI);if(!(g&&g.name))return;let d=ji(g,xa);if(!d)return;let h=DB(d);if(!h)return;let _=JA(h.expression),S=wd(_)?_.symbol:s.getSymbolAtLocation(_);if(!S)return;let R=tm(g)?s.getTypeOfSymbol(S):s.getDeclaredTypeOfSymbol(S),T;if(Un(g.name)){let O=s.getSymbolAtLocation(g.name);if(!O)return;X7(O)?T=de(s.getPropertiesOfType(R),V=>V.escapedName===O.escapedName):T=s.getPropertyOfType(R,Bc(O.escapedName))}else T=s.getPropertyOfType(R,Bc(vW(g.name)));if(T)return Tpe(s,T,c)}function Sdn(s,c,g){var d,h;let _=g2e(s.referencedFiles,c);if(_){let T=g.getSourceFileFromReference(s,_);return T&&{reference:_,fileName:T.fileName,file:T,unverified:!1}}let S=g2e(s.typeReferenceDirectives,c);if(S){let T=(d=g.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S,s))==null?void 0:d.resolvedTypeReferenceDirective,O=T&&g.getSourceFile(T.resolvedFileName);return O&&{reference:S,fileName:O.fileName,file:O,unverified:!1}}let R=g2e(s.libReferenceDirectives,c);if(R){let T=g.getLibFileFromReference(R);return T&&{reference:R,fileName:T.fileName,file:T,unverified:!1}}if(s.imports.length||s.moduleAugmentations.length){let T=nse(s,c),O;if(CWe(T)&&Xr(T.text)&&(O=g.getResolvedModuleFromModuleSpecifier(T,s))){let V=(h=O.resolvedModule)==null?void 0:h.resolvedFileName,M=V||fE(Mo(s.fileName),T.text);return{file:g.getSourceFile(M),fileName:M,reference:{pos:T.getStart(),end:T.getEnd(),fileName:T.text},unverified:!V}}}}var vdn=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function r9s(s,c){let g=c.symbol.name;if(!vdn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.target.symbol}function Bdn(s,c){if(!c.aliasSymbol)return!1;let g=c.aliasSymbol.name;if(!vdn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.aliasSymbol}function n9s(s,c,g,d){var h,_;if(la(c)&4&&r9s(s,c))return l2e(s.getTypeArguments(c)[0],s,g,d);if(Bdn(s,c)&&c.aliasTypeArguments)return l2e(c.aliasTypeArguments[0],s,g,d);if(la(c)&32&&c.target&&Bdn(s,c.target)){let S=(_=(h=c.aliasSymbol)==null?void 0:h.declarations)==null?void 0:_[0];if(S&&OB(S)&&oh(S.type)&&S.type.typeArguments)return l2e(s.getTypeAtLocation(S.type.typeArguments[0]),s,g,d)}return[]}function i9s(s,c,g){let d=Wb(c,g);if(d===c)return;if(pv(d.parent)&&d.parent.name===d)return l2e(s.getTypeAtLocation(d.parent),s,d.parent,!1);let{symbol:h,failedAliasResolution:_}=Ast(d,s,!1);if(hg(d)&&(MI(d.parent)||sh(d.parent))&&(h=d.parent.symbol,_=!1),!h)return;let S=s.getTypeOfSymbolAtLocation(h,d),R=s9s(h,S,s),T=R&&l2e(R,s,d,_),[O,V]=T&&T.length!==0?[R,T]:[S,l2e(S,s,d,_)];return V.length?[...n9s(s,O,d,_),...V]:!(h.flags&111551)&&h.flags&788968?Tpe(s,LC(h,s),d,_):void 0}function l2e(s,c,g,d){return jt(s.isUnion()&&!(s.flags&32)?s.types:[s],h=>h.symbol&&Tpe(c,h.symbol,g,d))}function s9s(s,c,g){if(c.symbol===s||s.valueDeclaration&&c.symbol&&nc(s.valueDeclaration)&&s.valueDeclaration.initializer===c.symbol.valueDeclaration){let d=c.getCallSignatures();if(d.length===1)return g.getReturnTypeOfSignature(ma(d))}}function o9s(s,c,g){let d=bdn(s,c,g);if(!d||d.length===0)return;let h=g2e(c.referencedFiles,g)||g2e(c.typeReferenceDirectives,g)||g2e(c.libReferenceDirectives,g);if(h)return{definitions:d,textSpan:a9(h)};let _=Wb(c,g),S=$d(_.getStart(),_.getWidth());return{definitions:d,textSpan:S}}function a9s(s,c){return Xt(c.getIndexInfosAtLocation(s),g=>g.declaration&&c4t(c,g.declaration))}function Ast(s,c,g){let d=c.getSymbolAtLocation(s),h=!1;if(d?.declarations&&d.flags&2097152&&!g&&c9s(s,d.declarations[0])){let _=c.getAliasedSymbol(d);if(_.declarations)return{symbol:_};h=!0}return{symbol:d,failedAliasResolution:h}}function c9s(s,c){return s.kind!==80&&(s.kind!==11||!iS(s.parent))?!1:s.parent===c?!0:c.kind!==275}function l9s(s){if(!Z7(s))return!1;let c=ji(s,g=>zm(g)?!0:Z7(g)?!1:"quit");return!!c&&oI(c)===5}function Tpe(s,c,g,d,h){let _=h!==void 0?Le(c.declarations,h):c.declarations,S=!h&&(O()||V());if(S)return S;let R=Le(_,ee=>!l9s(ee)),T=zt(R)?R:_;return lt(T,ee=>u2e(ee,s,c,g,!1,d));function O(){if(c.flags&32&&!(c.flags&19)&&(ipe(g)||g.kind===137)){let ee=de(_,xa);return ee&&M(ee.members,!0)}}function V(){return Lrt(g)||Yrt(g)?M(_,!1):void 0}function M(ee,re){if(!ee)return;let ge=ee.filter(re?Tc:Eu),Ie=ge.filter(_e=>!!_e.body);return ge.length?Ie.length!==0?Ie.map(_e=>u2e(_e,s,c,g)):[u2e(Ei(ge),s,c,g,!1,d)]:void 0}}function u2e(s,c,g,d,h,_){let S=c.symbolToString(g),R=u9.getSymbolKind(c,g,d),T=g.parent?c.symbolToString(g.parent,d):"";return o4t(c,s,R,S,T,h,_)}function o4t(s,c,g,d,h,_,S,R){let T=c.getSourceFile();if(!R){let O=fl(c)||c;R=Hy(O,T)}return{fileName:T.fileName,textSpan:R,kind:g,name:d,containerKind:void 0,containerName:h,...zp.toContextSpan(R,T,zp.getContextNode(c)),isLocal:!a4t(s,c),isAmbient:!!(c.flags&33554432),unverified:_,failedAliasResolution:S}}function u9s(s,c){let g=zp.getContextNode(s),d=Hy(n4t(g)?g.start:g,c);return{fileName:c.fileName,textSpan:d,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...zp.toContextSpan(d,c,g),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function a4t(s,c){if(s.isDeclarationVisible(c))return!0;if(!c.parent)return!1;if(QT(c.parent)&&c.parent.initializer===c)return a4t(s,c.parent);switch(c.kind){case 173:case 178:case 179:case 175:if(Zb(c,2))return!1;case 177:case 304:case 305:case 211:case 232:case 220:case 219:return a4t(s,c.parent);default:return!1}}function c4t(s,c,g){return u2e(c,s,c.symbol,c,!1,g)}function g2e(s,c){return de(s,g=>nl(g,c))}function g9s(s,c,g){return{fileName:c,textSpan:RA(0,0),kind:"script",name:s,containerName:void 0,containerKind:void 0,unverified:g}}function A9s(s){let c=ji(s,d=>!ese(d)),g=c?.parent;return g&&EF(g)&&aAe(g)===c?g:void 0}function d9s(s,c){let g=A9s(c),d=g&&s.getResolvedSignature(g);return Gs(d&&d.declaration,h=>Eu(h)&&!F_(h))}function p9s(s){switch(s.kind){case 177:case 186:case 180:case 181:return!0;default:return!1}}var dst={};o(dst,{provideInlayHints:()=>m9s});var f9s=s=>new RegExp(`^\\s?/\\*\\*?\\s?${s}\\s?\\*\\/\\s?$`);function I9s(s){return s.includeInlayParameterNameHints==="literals"||s.includeInlayParameterNameHints==="all"}function h9s(s){return s.includeInlayParameterNameHints==="literals"}function l4t(s){return s.interactiveInlayHints===!0}function m9s(s){let{file:c,program:g,span:d,cancellationToken:h,preferences:_}=s,S=c.text,R=g.getCompilerOptions(),T=E1(c,_),O=g.getTypeChecker(),V=[];return M(c),V;function M(Gt){if(!(!Gt||Gt.getFullWidth()===0)){switch(Gt.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 175:case 220:h.throwIfCancellationRequested()}if(rS(d,Gt.pos,Gt.getFullWidth())&&!(uc(Gt)&&!g_(Gt)))return _.includeInlayVariableTypeHints&&nc(Gt)||_.includeInlayPropertyDeclarationTypeHints&&pi(Gt)?Ne(Gt):_.includeInlayEnumMemberValueHints&&HF(Gt)?_e(Gt):I9s(_)&&(Ll(Gt)||m2(Gt))?Te(Gt):(_.includeInlayFunctionParameterTypeHints&&Gd(Gt)&&ide(Gt)&&Tt(Gt),_.includeInlayFunctionLikeReturnTypeHints&&ee(Gt)&&et(Gt)),Lu(Gt,M)}}function ee(Gt){return uA(Gt)||jA(Gt)||ah(Gt)||gu(Gt)||wg(Gt)}function re(Gt,it,kt,tr){let ur=`${tr?"...":""}${Gt}`,Gr;l4t(_)?(Gr=[_r(ur,it),{text:":"}],ur=""):ur+=":",V.push({text:ur,position:kt,kind:"Parameter",whitespaceAfter:!0,displayParts:Gr})}function ge(Gt,it){V.push({text:typeof Gt=="string"?`: ${Gt}`:"",displayParts:typeof Gt=="string"?void 0:[{text:": "},...Gt],position:it,kind:"Type",whitespaceBefore:!0})}function Ie(Gt,it){V.push({text:`= ${Gt}`,position:it,kind:"Enum",whitespaceBefore:!0})}function _e(Gt){if(Gt.initializer)return;let it=O.getConstantValue(Gt);it!==void 0&&Ie(it.toString(),Gt.end)}function Ee(Gt){return Gt.symbol&&Gt.symbol.flags&1536}function Ne(Gt){if(Gt.initializer===void 0&&!(pi(Gt)&&!(O.getTypeAtLocation(Gt).flags&1))||Nu(Gt.name)||nc(Gt)&&!Wt(Gt)||Zh(Gt))return;let kt=O.getTypeAtLocation(Gt);if(Ee(kt))return;let tr=yt(kt);if(tr){let ur=typeof tr=="string"?tr:tr.map(dt=>dt.text).join("");if(_.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&Yp(Gt.name.getText(),ur))return;ge(tr,Gt.name.end)}}function Te(Gt){let it=Gt.arguments;if(!it||!it.length)return;let kt=O.getResolvedSignature(Gt);if(kt===void 0)return;let tr=0;for(let ur of it){let Gr=JA(ur);if(h9s(_)&&!Ke(Gr)){tr++;continue}let dt=0;if(cf(Gr)){let ot=O.getTypeAtLocation(Gr.expression);if(O.isTupleType(ot)){let{elementFlags:ir,fixedLength:qt}=ot.target;if(qt===0)continue;let Yt=Se(ir,Cn=>!(Cn&1));(Yt<0?qt:Yt)>0&&(dt=Yt<0?qt:Yt)}}let pr=O.getParameterIdentifierInfoAtPosition(kt,tr);if(tr=tr+(dt||1),pr){let{parameter:ot,parameterName:ir,isRestParameter:qt}=pr;if(!(_.includeInlayParameterNameHintsWhenArgumentMatchesName||!Ze(Gr,ir))&&!qt)continue;let Tr=Bc(ir);if(Pe(Gr,Tr))continue;re(Tr,ot,ur.getStart(),qt)}}}function Ze(Gt,it){return Ir(Gt)?Gt.text===it:jo(Gt)?Gt.name.text===it:!1}function Pe(Gt,it){if(!qh(it,Hg(R),jne(c.scriptKind)))return!1;let kt=mE(S,Gt.pos);if(!kt?.length)return!1;let tr=f9s(it);return zt(kt,ur=>tr.test(S.substring(ur.pos,ur.end)))}function Ke(Gt){switch(Gt.kind){case 225:{let it=Gt.operand;return xL(it)||Ir(it)&&_z(it.escapedText)}case 112:case 97:case 106:case 15:case 229:return!0;case 80:{let it=Gt.escapedText;return je(it)||_z(it)}}return xL(Gt)}function et(Gt){if(uA(Gt)&&!ep(Gt,21,c)||Fb(Gt)||!Gt.body)return;let kt=O.getSignatureFromDeclaration(Gt);if(!kt)return;let tr=O.getTypePredicateOfSignature(kt);if(tr?.type){let dt=Rt(tr);if(dt){ge(dt,Ye(Gt));return}}let ur=O.getReturnTypeOfSignature(kt);if(Ee(ur))return;let Gr=yt(ur);Gr&&ge(Gr,Ye(Gt))}function Ye(Gt){let it=ep(Gt,22,c);return it?it.end:Gt.parameters.end}function Tt(Gt){let it=O.getSignatureFromDeclaration(Gt);if(!it)return;let kt=0;for(let tr of Gt.parameters)Wt(tr)&&at(tr,NF(tr)?it.thisParameter:it.parameters[kt]),!NF(tr)&&kt++}function at(Gt,it){if(Zh(Gt)||it===void 0)return;let tr=Qe(it);tr!==void 0&&ge(tr,Gt.questionToken?Gt.questionToken.end:Gt.name.end)}function Qe(Gt){let it=Gt.valueDeclaration;if(!it||!Si(it))return;let kt=O.getTypeOfSymbolAtLocation(Gt,it);if(!Ee(kt))return yt(kt)}function Ct(Gt){let kt=bQ();return yW(tr=>{let ur=O.typeToTypeNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typenode"),kt.writeNode(4,ur,c,tr)})}function mt(Gt){let kt=bQ();return yW(tr=>{let ur=O.typePredicateToTypePredicateNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typePredicateNode"),kt.writeNode(4,ur,c,tr)})}function yt(Gt){if(!l4t(_))return Ct(Gt);let kt=O.typeToTypeNode(Gt,void 0,71286784);return pe.assertIsDefined(kt,"should always get typeNode"),Lt(kt)}function Rt(Gt){if(!l4t(_))return mt(Gt);let kt=O.typePredicateToTypePredicateNode(Gt,void 0,71286784);return pe.assertIsDefined(kt,"should always get typenode"),Lt(kt)}function Lt(Gt){let it=[];return kt(Gt),it;function kt(dt){var pr,ot;if(!dt)return;let ir=Vi(dt.kind);if(ir){it.push({text:ir});return}if(xL(dt)){it.push({text:Gr(dt)});return}switch(dt.kind){case 80:pe.assertNode(dt,Ir);let qt=Vo(dt),Yt=dt.symbol&&dt.symbol.declarations&&dt.symbol.declarations.length&&fl(dt.symbol.declarations[0]);Yt?it.push(_r(qt,Yt)):it.push({text:qt});break;case 167:pe.assertNode(dt,zi),kt(dt.left),it.push({text:"."}),kt(dt.right);break;case 183:pe.assertNode(dt,vE),dt.assertsModifier&&it.push({text:"asserts "}),kt(dt.parameterName),dt.type&&(it.push({text:" is "}),kt(dt.type));break;case 184:pe.assertNode(dt,oh),kt(dt.typeName),dt.typeArguments&&(it.push({text:"<"}),ur(dt.typeArguments,", "),it.push({text:">"}));break;case 169:pe.assertNode(dt,Ds),dt.modifiers&&ur(dt.modifiers," "),kt(dt.name),dt.constraint&&(it.push({text:" extends "}),kt(dt.constraint)),dt.default&&(it.push({text:" = "}),kt(dt.default));break;case 170:pe.assertNode(dt,Si),dt.modifiers&&ur(dt.modifiers," "),dt.dotDotDotToken&&it.push({text:"..."}),kt(dt.name),dt.questionToken&&it.push({text:"?"}),dt.type&&(it.push({text:": "}),kt(dt.type));break;case 186:pe.assertNode(dt,ik),it.push({text:"new "}),tr(dt),it.push({text:" => "}),kt(dt.type);break;case 187:pe.assertNode(dt,Ow),it.push({text:"typeof "}),kt(dt.exprName),dt.typeArguments&&(it.push({text:"<"}),ur(dt.typeArguments,", "),it.push({text:">"}));break;case 188:pe.assertNode(dt,bh),it.push({text:"{"}),dt.members.length&&(it.push({text:" "}),ur(dt.members,"; "),it.push({text:" "})),it.push({text:"}"});break;case 189:pe.assertNode(dt,VF),kt(dt.elementType),it.push({text:"[]"});break;case 190:pe.assertNode(dt,Pw),it.push({text:"["}),ur(dt.elements,", "),it.push({text:"]"});break;case 203:pe.assertNode(dt,eR),dt.dotDotDotToken&&it.push({text:"..."}),kt(dt.name),dt.questionToken&&it.push({text:"?"}),it.push({text:": "}),kt(dt.type);break;case 191:pe.assertNode(dt,r9),kt(dt.type),it.push({text:"?"});break;case 192:pe.assertNode(dt,n9),it.push({text:"..."}),kt(dt.type);break;case 193:pe.assertNode(dt,gS),ur(dt.types," | ");break;case 194:pe.assertNode(dt,_f),ur(dt.types," & ");break;case 195:pe.assertNode(dt,I2),kt(dt.checkType),it.push({text:" extends "}),kt(dt.extendsType),it.push({text:" ? "}),kt(dt.trueType),it.push({text:" : "}),kt(dt.falseType);break;case 196:pe.assertNode(dt,tR),it.push({text:"infer "}),kt(dt.typeParameter);break;case 197:pe.assertNode(dt,Cv),it.push({text:"("}),kt(dt.type),it.push({text:")"});break;case 199:pe.assertNode(dt,VB),it.push({text:`${Vi(dt.operator)} `}),kt(dt.type);break;case 200:pe.assertNode(dt,_v),kt(dt.objectType),it.push({text:"["}),kt(dt.indexType),it.push({text:"]"});break;case 201:pe.assertNode(dt,WB),it.push({text:"{ "}),dt.readonlyToken&&(dt.readonlyToken.kind===40?it.push({text:"+"}):dt.readonlyToken.kind===41&&it.push({text:"-"}),it.push({text:"readonly "})),it.push({text:"["}),kt(dt.typeParameter),dt.nameType&&(it.push({text:" as "}),kt(dt.nameType)),it.push({text:"]"}),dt.questionToken&&(dt.questionToken.kind===40?it.push({text:"+"}):dt.questionToken.kind===41&&it.push({text:"-"}),it.push({text:"?"})),it.push({text:": "}),dt.type&&kt(dt.type),it.push({text:"; }"});break;case 202:pe.assertNode(dt,BE),kt(dt.literal);break;case 185:pe.assertNode(dt,F_),tr(dt),it.push({text:" => "}),kt(dt.type);break;case 206:pe.assertNode(dt,qm),dt.isTypeOf&&it.push({text:"typeof "}),it.push({text:"import("}),kt(dt.argument),dt.assertions&&(it.push({text:", { assert: "}),ur(dt.assertions.assertClause.elements,", "),it.push({text:" }"})),it.push({text:")"}),dt.qualifier&&(it.push({text:"."}),kt(dt.qualifier)),dt.typeArguments&&(it.push({text:"<"}),ur(dt.typeArguments,", "),it.push({text:">"}));break;case 172:pe.assertNode(dt,ss),(pr=dt.modifiers)!=null&&pr.length&&(ur(dt.modifiers," "),it.push({text:" "})),kt(dt.name),dt.questionToken&&it.push({text:"?"}),dt.type&&(it.push({text:": "}),kt(dt.type));break;case 182:pe.assertNode(dt,R0),it.push({text:"["}),ur(dt.parameters,", "),it.push({text:"]"}),dt.type&&(it.push({text:": "}),kt(dt.type));break;case 174:pe.assertNode(dt,Il),(ot=dt.modifiers)!=null&&ot.length&&(ur(dt.modifiers," "),it.push({text:" "})),kt(dt.name),dt.questionToken&&it.push({text:"?"}),tr(dt),dt.type&&(it.push({text:": "}),kt(dt.type));break;case 180:pe.assertNode(dt,Tg),tr(dt),dt.type&&(it.push({text:": "}),kt(dt.type));break;case 181:pe.assertNode(dt,im),it.push({text:"new "}),tr(dt),dt.type&&(it.push({text:": "}),kt(dt.type));break;case 208:pe.assertNode(dt,h2),it.push({text:"["}),ur(dt.elements,", "),it.push({text:"]"});break;case 207:pe.assertNode(dt,$m),it.push({text:"{"}),dt.elements.length&&(it.push({text:" "}),ur(dt.elements,", "),it.push({text:" "})),it.push({text:"}"});break;case 209:pe.assertNode(dt,mg),kt(dt.name);break;case 225:pe.assertNode(dt,N0),it.push({text:Vi(dt.operator)}),kt(dt.operand);break;case 204:pe.assertNode(dt,rR),kt(dt.head),dt.templateSpans.forEach(kt);break;case 16:pe.assertNode(dt,AQ),it.push({text:Gr(dt)});break;case 205:pe.assertNode(dt,EN),kt(dt.type),kt(dt.literal);break;case 17:pe.assertNode(dt,Sie),it.push({text:Gr(dt)});break;case 18:pe.assertNode(dt,Cde),it.push({text:Gr(dt)});break;case 198:pe.assertNode(dt,Ox),it.push({text:"this"});break;case 168:pe.assertNode(dt,Un),it.push({text:"["}),kt(dt.expression),it.push({text:"]"});break;default:pe.failBadSyntaxKind(dt)}}function tr(dt){dt.typeParameters&&(it.push({text:"<"}),ur(dt.typeParameters,", "),it.push({text:">"})),it.push({text:"("}),ur(dt.parameters,", "),it.push({text:")"})}function ur(dt,pr){dt.forEach((ot,ir)=>{ir>0&&it.push({text:pr}),kt(ot)})}function Gr(dt){switch(dt.kind){case 11:return T===0?`'${KT(dt.text,39)}'`:`"${KT(dt.text,34)}"`;case 16:case 17:case 18:{let pr=dt.rawText??obe(KT(dt.text,96));switch(dt.kind){case 16:return"`"+pr+"${";case 17:return"}"+pr+"${";case 18:return"}"+pr+"`"}}}return dt.text}}function je(Gt){return Gt==="undefined"}function Wt(Gt){if((KL(Gt)||nc(Gt)&&sI(Gt))&&Gt.initializer){let it=JA(Gt.initializer);return!(Ke(it)||m2(it)||ag(it)||vd(it))}return!0}function _r(Gt,it){let kt=it.getSourceFile();return{text:Gt,span:Hy(it,kt),file:kt.fileName}}}var u5={};o(u5,{getDocCommentTemplateAtPosition:()=>R9s,getJSDocParameterNameCompletionDetails:()=>T9s,getJSDocParameterNameCompletions:()=>w9s,getJSDocTagCompletionDetails:()=>xdn,getJSDocTagCompletions:()=>B9s,getJSDocTagNameCompletionDetails:()=>v9s,getJSDocTagNameCompletions:()=>S9s,getJsDocCommentsFromDeclarations:()=>C9s,getJsDocTagsFromDeclarations:()=>b9s});var wdn=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","import","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"],Tdn,Rdn;function C9s(s,c){let g=[];return fnt(s,d=>{for(let h of y9s(d)){let _=oR(h)&&h.tags&&de(h.tags,R=>R.kind===328&&(R.tagName.escapedText==="inheritDoc"||R.tagName.escapedText==="inheritdoc"));if(h.comment===void 0&&!_||oR(h)&&d.kind!==347&&d.kind!==339&&h.tags&&h.tags.some(R=>R.kind===347||R.kind===339)&&!h.tags.some(R=>R.kind===342||R.kind===343))continue;let S=h.comment?mse(h.comment,c):[];_&&_.comment&&(S=S.concat(mse(_.comment,c))),k(g,S,_9s)||g.push(S)}}),Sr(fe(g,[ase()]))}function _9s(s,c){return Sc(s,c,(g,d)=>g.kind===d.kind&&g.text===d.text)}function y9s(s){switch(s.kind){case 342:case 349:return[s];case 339:case 347:return[s,s.parent];case 324:if(kie(s.parent))return[s.parent.parent];default:return Xye(s)}}function b9s(s,c){let g=[];return fnt(s,d=>{let h=Rx(d);if(!(h.some(_=>_.kind===347||_.kind===339)&&!h.some(_=>_.kind===342||_.kind===343)))for(let _ of h)g.push({name:_.tagName.text,text:kdn(_,c)}),g.push(...Ndn(Ddn(_),c))}),g}function Ndn(s,c){return jt(s,g=>Nn([{name:g.tagName.text,text:kdn(g,c)}],Ndn(Ddn(g),c)))}function Ddn(s){return SY(s)&&s.isNameFirst&&s.typeExpression&&GU(s.typeExpression.type)?s.typeExpression.type.jsDocPropertyTags:void 0}function mse(s,c){return typeof s=="string"?[fS(s)]:jt(s,g=>g.kind===322?[fS(g.text)]:QMt(g,c))}function kdn(s,c){let{comment:g,kind:d}=s,h=E9s(d);switch(d){case 350:let R=s.typeExpression;return R?_(R):g===void 0?void 0:mse(g,c);case 330:return _(s.class);case 329:return _(s.class);case 346:let T=s,O=[];if(T.constraint&&O.push(fS(T.constraint.getText())),B(T.typeParameters)){B(O)&&O.push(TI());let M=T.typeParameters[T.typeParameters.length-1];F(T.typeParameters,ee=>{O.push(h(ee.getText())),M!==ee&&O.push(G0(28),TI())})}return g&&O.push(TI(),...mse(g,c)),O;case 345:case 351:return _(s.typeExpression);case 347:case 339:case 349:case 342:case 348:let{name:V}=s;return V?_(V):g===void 0?void 0:mse(g,c);default:return g===void 0?void 0:mse(g,c)}function _(R){return S(R.getText())}function S(R){return g?R.match(/^https?$/)?[fS(R),...mse(g,c)]:[h(R),TI(),...mse(g,c)]:[fS(R)]}}function E9s(s){switch(s){case 342:return OMt;case 349:return PMt;case 346:return HMt;case 347:case 339:return MMt;default:return fS}}function S9s(){return Tdn||(Tdn=lt(wdn,s=>({name:s,kind:"keyword",kindModifiers:"",sortText:aq.SortText.LocationPriority})))}var v9s=xdn;function B9s(){return Rdn||(Rdn=lt(wdn,s=>({name:`@${s}`,kind:"keyword",kindModifiers:"",sortText:aq.SortText.LocationPriority})))}function xdn(s){return{name:s,kind:"",kindModifiers:"",displayParts:[fS(s)],documentation:E,tags:void 0,codeActions:void 0}}function w9s(s){if(!Ir(s.name))return E;let c=s.name.text,g=s.parent,d=g.parent;return Eu(d)?Xt(d.parameters,h=>{if(!Ir(h.name))return;let _=h.name.text;if(!(g.tags.some(S=>S!==s&&AS(S)&&Ir(S.name)&&S.name.escapedText===_)||c!==void 0&&!Ac(_,c)))return{name:_,kind:"parameter",kindModifiers:"",sortText:aq.SortText.LocationPriority}}):[]}function T9s(s){return{name:s,kind:"parameter",kindModifiers:"",displayParts:[fS(s)],documentation:E,tags:void 0,codeActions:void 0}}function R9s(s,c,g,d){let h=Jc(c,g),_=ji(h,oR);if(_&&(_.comment!==void 0||B(_.tags)))return;let S=h.getStart(c);if(!_&&S0;if(Ie&&!Ne){let Te=_e+s+re+" * ",Ze=S===g?s+re:"";return{newText:Te+s+Ie+re+Ee+Ze,caretOffset:Te.length}}return{newText:_e+Ee,caretOffset:3}}function N9s(s,c){let{text:g}=s,d=YB(c,s),h=d;for(;h<=c&&hu(g.charCodeAt(h));h++);return g.slice(d,h)}function D9s(s,c,g,d){return s.map(({name:h,dotDotDotToken:_},S)=>{let R=h.kind===80?h.text:"param"+S;return`${g} * @param ${c?_?"{...any} ":"{any} ":""}${R}${d}`}).join("")}function k9s(s,c){return`${s} * @returns${c}`}function x9s(s,c){return Tw(s,g=>u4t(g,c))}function u4t(s,c){switch(s.kind){case 263:case 219:case 175:case 177:case 174:case 220:let g=s;return{commentOwner:s,parameters:g.parameters,hasReturn:hOe(g,c)};case 304:return u4t(s.initializer,c);case 264:case 265:case 267:case 307:case 266:return{commentOwner:s};case 172:{let h=s;return h.type&&F_(h.type)?{commentOwner:s,parameters:h.type.parameters,hasReturn:hOe(h.type,c)}:{commentOwner:s}}case 244:{let _=s.declarationList.declarations,S=_.length===1&&_[0].initializer?G9s(_[0].initializer):void 0;return S?{commentOwner:s,parameters:S.parameters,hasReturn:hOe(S,c)}:{commentOwner:s}}case 308:return"quit";case 268:return s.parent.kind===268?void 0:{commentOwner:s};case 245:return u4t(s.expression,c);case 227:{let h=s;return oI(h)===0?"quit":Eu(h.right)?{commentOwner:s,parameters:h.right.parameters,hasReturn:hOe(h.right,c)}:{commentOwner:s}}case 173:let d=s.initializer;if(d&&(jA(d)||uA(d)))return{commentOwner:s,parameters:d.parameters,hasReturn:hOe(d,c)}}}function hOe(s,c){return!!c?.generateReturnInDocTemplate&&(F_(s)||uA(s)&&un(s.body)||Gd(s)&&s.body&&eg(s.body)&&!!wF(s.body,g=>g))}function G9s(s){for(;s.kind===218;)s=s.expression;switch(s.kind){case 219:case 220:return s;case 232:return de(s.members,Tc)}}var pst={};o(pst,{mapCode:()=>F9s});function F9s(s,c,g,d,h,_){return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},S=>{let R=c.map(O=>Z9s(s,O)),T=g&&Sr(g);for(let O of R)L9s(s,S,O,T)})}function Z9s(s,c){let g=[{parse:()=>Wz("__mapcode_content_nodes.ts",c,s.languageVersion,!0,s.scriptKind),body:_=>_.statements},{parse:()=>Wz("__mapcode_class_content_nodes.ts",`class __class { + `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return re}}function Ksn(s){switch(s.kind){case 174:case 175:case 180:case 177:case 181:case 263:return!0}return!1}function jsn(s,c,g){let d=Jc(s,c),h=ji(d,Ksn);if(!h||Gd(h)&&h.body&&nse(h.body,c))return;let _=g.getTypeChecker(),S=h.symbol;if(!S)return;let R=S.declarations;if(B(R)<=1||!ue(R,ee=>ms(ee)===s)||!Ksn(R[0]))return;let T=R[0].kind;if(!ue(R,ee=>ee.kind===T))return;let O=R;if(zt(O,ee=>!!ee.typeParameters||zt(ee.parameters,re=>!!re.modifiers||!Ir(re.name))))return;let V=Xt(O,ee=>_.getSignatureFromDeclaration(ee));if(B(V)!==B(R))return;let M=_.getReturnTypeOfSignature(V[0]);if(ue(V,ee=>_.getReturnTypeOfSignature(ee)===M))return O}var pYt="Add or remove braces in an arrow function",zsn=Bu(Z.Add_or_remove_braces_in_an_arrow_function),cit={name:"Add braces to arrow function",description:Bu(Z.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},JWe={name:"Remove braces from arrow function",description:Bu(Z.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};Qx(pYt,{kinds:[JWe.kind],getEditsForAction:RNs,getAvailableActions:TNs});function TNs(s){let{file:c,startPosition:g,triggerReason:d}=s,h=qsn(c,g,d==="invoked");return h?KF(h)?s.preferences.provideRefactorNotApplicableReason?[{name:pYt,description:zsn,actions:[{...cit,notApplicableReason:h.error},{...JWe,notApplicableReason:h.error}]}]:E:[{name:pYt,description:zsn,actions:[h.addBraces?cit:JWe]}]:E}function RNs(s,c){let{file:g,startPosition:d}=s,h=qsn(g,d);pe.assert(h&&!KF(h),"Expected applicable refactor info");let{expression:_,returnStatement:S,func:R}=h,T;if(c===cit.name){let V=me.createReturnStatement(_);T=me.createBlock([V],!0),lse(_,V,g,3,!0)}else if(c===JWe.name&&S){let V=_||me.createVoidZero();T=EWe(V)?me.createParenthesizedExpression(V):V,O1e(S,T,g,3,!1),lse(S,T,g,3,!1),ppe(S,T,g,3,!1)}else pe.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>{V.replaceNode(g,R.body,T)})}}function qsn(s,c,g=!0,d){let h=Jc(s,c),_=I1(h);if(!_)return{error:Bu(Z.Could_not_find_a_containing_arrow_function)};if(!gA(_))return{error:Bu(Z.Containing_function_is_not_an_arrow_function)};if(!(!gy(_,h)||gy(_.body,h)&&!g)){if(l5(cit.kind,d)&&un(_.body))return{func:_,addBraces:!0,expression:_.body};if(l5(JWe.kind,d)&&eg(_.body)&&_.body.statements.length===1){let S=ma(_.body.statements);if(_2(S)){let R=S.expression&&ag(yU(S.expression,!1))?me.createParenthesizedExpression(S.expression):S.expression;return{func:_,addBraces:!1,expression:R,returnStatement:S}}}}}var NNs={},$sn="Convert arrow function or function expression",DNs=Bu(Z.Convert_arrow_function_or_function_expression),UWe={name:"Convert to anonymous function",description:Bu(Z.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},KWe={name:"Convert to named function",description:Bu(Z.Convert_to_named_function),kind:"refactor.rewrite.function.named"},jWe={name:"Convert to arrow function",description:Bu(Z.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};Qx($sn,{kinds:[UWe.kind,KWe.kind,jWe.kind],getEditsForAction:xNs,getAvailableActions:kNs});function kNs(s){let{file:c,startPosition:g,program:d,kind:h}=s,_=ton(c,g,d);if(!_)return E;let{selectedVariableDeclaration:S,func:R}=_,T=[],O=[];if(l5(KWe.kind,h)){let V=S||gA(R)&&nc(R.parent)?void 0:Bu(Z.Could_not_convert_to_named_function);V?O.push({...KWe,notApplicableReason:V}):T.push(KWe)}if(l5(UWe.kind,h)){let V=!S&&gA(R)?void 0:Bu(Z.Could_not_convert_to_anonymous_function);V?O.push({...UWe,notApplicableReason:V}):T.push(UWe)}if(l5(jWe.kind,h)){let V=jA(R)?void 0:Bu(Z.Could_not_convert_to_arrow_function);V?O.push({...jWe,notApplicableReason:V}):T.push(jWe)}return[{name:$sn,description:DNs,actions:T.length===0&&s.preferences.provideRefactorNotApplicableReason?O:T}]}function xNs(s,c){let{file:g,startPosition:d,program:h}=s,_=ton(g,d,h);if(!_)return;let{func:S}=_,R=[];switch(c){case UWe.name:R.push(...LNs(s,S));break;case KWe.name:let T=ZNs(S);if(!T)return;R.push(...VNs(s,S,T));break;case jWe.name:if(!jA(S))return;R.push(...WNs(s,S));break;default:return pe.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:R}}function eon(s){let c=!1;return s.forEachChild(function g(d){if(rse(d)){c=!0;return}!xa(d)&&!ah(d)&&!jA(d)&&Lu(d,g)}),c}function ton(s,c,g){let d=Jc(s,c),h=g.getTypeChecker(),_=FNs(s,h,d.parent);if(_&&!eon(_.body)&&!h.containsArgumentsReference(_))return{selectedVariableDeclaration:!0,func:_};let S=I1(d);if(S&&(jA(S)||gA(S))&&!gy(S.body,d)&&!eon(S.body)&&!h.containsArgumentsReference(S))return jA(S)&&non(s,h,S)?void 0:{selectedVariableDeclaration:!1,func:S}}function GNs(s){return nc(s)||d_(s)&&s.declarations.length===1}function FNs(s,c,g){if(!GNs(g))return;let h=(nc(g)?g:ma(g.declarations)).initializer;if(h&&(gA(h)||jA(h)&&!non(s,c,h)))return h}function ron(s){if(un(s)){let c=me.createReturnStatement(s),g=s.getSourceFile();return gn(c,s),Py(c),O1e(s,c,g,void 0,!0),me.createBlock([c],!0)}else return s}function ZNs(s){let c=s.parent;if(!nc(c)||!k7(c))return;let g=c.parent,d=g.parent;if(!(!d_(g)||!Eh(d)||!Ir(c.name)))return{variableDeclaration:c,variableDeclarationList:g,statement:d,name:c.name}}function LNs(s,c){let{file:g}=s,d=ron(c.body),h=me.createFunctionExpression(c.modifiers,c.asteriskToken,void 0,c.typeParameters,c.parameters,c.type,d);return xo.ChangeTracker.with(s,_=>_.replaceNode(g,c,h))}function VNs(s,c,g){let{file:d}=s,h=ron(c.body),{variableDeclaration:_,variableDeclarationList:S,statement:R,name:T}=g;gEe(R);let O=Hc(_)&32|l_(c),V=me.createModifiersFromModifierFlags(O),M=me.createFunctionDeclaration(B(V)?V:void 0,c.asteriskToken,T,c.typeParameters,c.parameters,c.type,h);return S.declarations.length===1?xo.ChangeTracker.with(s,ee=>ee.replaceNode(d,R,M)):xo.ChangeTracker.with(s,ee=>{ee.delete(d,_),ee.insertNodeAfter(d,R,M)})}function WNs(s,c){let{file:g}=s,h=c.body.statements[0],_;ONs(c.body,h)?(_=h.expression,Py(_),JU(h,_)):_=c.body;let S=me.createArrowFunction(c.modifiers,c.typeParameters,c.parameters,c.type,me.createToken(39),_);return xo.ChangeTracker.with(s,R=>R.replaceNode(g,c,S))}function ONs(s,c){return s.statements.length===1&&_2(c)&&!!c.expression}function non(s,c,g){return!!g.name&&zp.Core.isSymbolReferencedInFile(g.name,c,s)}var PNs={},lit="Convert parameters to destructured object",MNs=1,ion=Bu(Z.Convert_parameters_to_destructured_object),son={name:lit,description:ion,kind:"refactor.rewrite.parameters.toDestructured"};Qx(lit,{kinds:[son.kind],getEditsForAction:YNs,getAvailableActions:HNs});function HNs(s){let{file:c,startPosition:g}=s;return o0(c)||!con(c,g,s.program.getTypeChecker())?E:[{name:lit,description:ion,actions:[son]}]}function YNs(s,c){pe.assert(c===lit,"Unexpected action name");let{file:g,startPosition:d,program:h,cancellationToken:_,host:S}=s,R=con(g,d,h.getTypeChecker());if(!R||!_)return;let T=XNs(R,h,_);return T.valid?{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>QNs(g,h,S,V,R,T))}:{edits:[]}}function QNs(s,c,g,d,h,_){let S=_.signature,R=lt(Aon(h,c,g),V=>KA(V));if(S){let V=lt(Aon(S,c,g),M=>KA(M));O(S,V)}O(h,R);let T=al(_.functionCalls,(V,M)=>Zt(V.pos,M.pos));for(let V of T)if(V.arguments&&V.arguments.length){let M=KA(rDs(h,V.arguments),!0);d.replaceNodeRange(ms(V),ma(V.arguments),Ei(V.arguments),M,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}function O(V,M){d.replaceNodeRangeWithNodes(s,ma(V.parameters),Ei(V.parameters),M,{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}}function XNs(s,c,g){let d=iDs(s),h=Tc(s)?nDs(s):[],_=no([...d,...h],bg),S=c.getTypeChecker(),R=jt(_,M=>zp.getReferenceEntriesForNode(-1,M,c,c.getSourceFiles(),g)),T=O(R);return ue(T.declarations,M=>k(_,M))||(T.valid=!1),T;function O(M){let ee={accessExpressions:[],typeUsages:[]},re={functionCalls:[],declarations:[],classReferences:ee,valid:!0},ge=lt(d,V),Ie=lt(h,V),_e=Tc(s),Ee=lt(d,Ne=>fYt(Ne,S));for(let Ne of M){if(Ne.kind===zp.EntryKind.Span){re.valid=!1;continue}if(k(Ee,V(Ne.node))){if(jNs(Ne.node.parent)){re.signature=Ne.node.parent;continue}let Ze=aon(Ne);if(Ze){re.functionCalls.push(Ze);continue}}let Te=fYt(Ne.node,S);if(Te&&k(Ee,Te)){let Ze=IYt(Ne);if(Ze){re.declarations.push(Ze);continue}}if(k(ge,V(Ne.node))||spe(Ne.node)){if(oon(Ne))continue;let Pe=IYt(Ne);if(Pe){re.declarations.push(Pe);continue}let Ke=aon(Ne);if(Ke){re.functionCalls.push(Ke);continue}}if(_e&&k(Ie,V(Ne.node))){if(oon(Ne))continue;let Pe=IYt(Ne);if(Pe){re.declarations.push(Pe);continue}let Ke=JNs(Ne);if(Ke){ee.accessExpressions.push(Ke);continue}if(mm(s.parent)){let et=UNs(Ne);if(et){ee.typeUsages.push(et);continue}}}re.valid=!1}return re}function V(M){let ee=S.getSymbolAtLocation(M);return ee&&_nt(ee,S)}}function fYt(s,c){let g=e2e(s);if(g){let d=c.getContextualTypeForObjectLiteralElement(g),h=d?.getSymbol();if(h&&!(aI(h)&6))return h}}function oon(s){let c=s.node;if(dy(c.parent)||Yw(c.parent)||Zm(c.parent)||Mx(c.parent)||k0(c.parent)||yf(c.parent))return c}function IYt(s){if(em(s.node.parent))return s.node}function aon(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 214:case 215:let d=Gs(g,Av);if(d&&d.expression===c)return d;break;case 212:let h=Gs(g,jo);if(h&&h.parent&&h.name===c){let S=Gs(h.parent,Av);if(S&&S.expression===h)return S}break;case 213:let _=Gs(g,Qg);if(_&&_.parent&&_.argumentExpression===c){let S=Gs(_.parent,Av);if(S&&S.expression===_)return S}break}}}function JNs(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 212:let d=Gs(g,jo);if(d&&d.expression===c)return d;break;case 213:let h=Gs(g,Qg);if(h&&h.expression===c)return h;break}}}function UNs(s){let c=s.node;if(QU(c)===2||DAe(c.parent))return c}function con(s,c,g){let d=ise(s,c),h=iAe(d);if(!KNs(d)&&h&&zNs(h,g)&&gy(h,d)&&!(h.body&&gy(h.body,d)))return h}function KNs(s){let c=ji(s,m3);if(c){let g=ji(c,d=>!m3(d));return!!g&&Gd(g)}return!1}function jNs(s){return Il(s)&&(p_(s.parent)||bh(s.parent))}function zNs(s,c){var g;if(!qNs(s.parameters,c))return!1;switch(s.kind){case 263:return lon(s)&&zWe(s,c);case 175:if(ag(s.parent)){let d=fYt(s.name,c);return((g=d?.declarations)==null?void 0:g.length)===1&&zWe(s,c)}return zWe(s,c);case 177:return mm(s.parent)?lon(s.parent)&&zWe(s,c):uon(s.parent.parent)&&zWe(s,c);case 219:case 220:return uon(s.parent)}return!1}function zWe(s,c){return!!s.body&&!c.isImplementationOfOverload(s)}function lon(s){return s.name?!0:!!ose(s,90)}function qNs(s,c){return eDs(s)>=MNs&&ue(s,g=>$Ns(g,c))}function $Ns(s,c){if(RB(s)){let g=c.getTypeAtLocation(s);if(!c.isArrayType(g)&&!c.isTupleType(g))return!1}return!s.modifiers&&Ir(s.name)}function uon(s){return nc(s)&&sI(s)&&Ir(s.name)&&!s.type}function hYt(s){return s.length>0&&rse(s[0].name)}function eDs(s){return hYt(s)?s.length-1:s.length}function gon(s){return hYt(s)&&(s=me.createNodeArray(s.slice(1),s.hasTrailingComma)),s}function tDs(s,c){return Ir(c)&&A2(c)===s?me.createShorthandPropertyAssignment(s):me.createPropertyAssignment(s,c)}function rDs(s,c){let g=gon(s.parameters),d=RB(Ei(g)),h=d?c.slice(0,g.length-1):c,_=lt(h,(R,T)=>{let O=uit(g[T]),V=tDs(O,R);return Py(V.name),Cm(V)&&Py(V.initializer),JU(R,V),V});if(d&&c.length>=g.length){let R=c.slice(g.length-1),T=me.createPropertyAssignment(uit(Ei(g)),me.createArrayLiteralExpression(R));_.push(T)}return me.createObjectLiteralExpression(_,!1)}function Aon(s,c,g){let d=c.getTypeChecker(),h=gon(s.parameters),_=lt(h,V),S=me.createObjectBindingPattern(_),R=M(h),T;ue(h,ge)&&(T=me.createObjectLiteralExpression());let O=me.createParameterDeclaration(void 0,void 0,S,void 0,R,T);if(hYt(s.parameters)){let Ie=s.parameters[0],_e=me.createParameterDeclaration(void 0,void 0,Ie.name,void 0,Ie.type);return Py(_e.name),JU(Ie.name,_e.name),Ie.type&&(Py(_e.type),JU(Ie.type,_e.type)),me.createNodeArray([_e,O])}return me.createNodeArray([O]);function V(Ie){let _e=me.createBindingElement(void 0,void 0,uit(Ie),RB(Ie)&&ge(Ie)?me.createArrayLiteralExpression():Ie.initializer);return Py(_e),Ie.initializer&&_e.initializer&&JU(Ie.initializer,_e.initializer),_e}function M(Ie){let _e=lt(Ie,ee);return Ow(me.createTypeLiteralNode(_e),1)}function ee(Ie){let _e=Ie.type;!_e&&(Ie.initializer||RB(Ie))&&(_e=re(Ie));let Ee=me.createPropertySignature(void 0,uit(Ie),ge(Ie)?me.createToken(58):Ie.questionToken,_e);return Py(Ee),JU(Ie.name,Ee.name),Ie.type&&Ee.type&&JU(Ie.type,Ee.type),Ee}function re(Ie){let _e=d.getTypeAtLocation(Ie);return Ipe(_e,Ie,c,g)}function ge(Ie){if(RB(Ie)){let _e=d.getTypeAtLocation(Ie);return!d.isTupleType(_e)}return d.isOptionalParameter(Ie)}}function uit(s){return A2(s.name)}function nDs(s){switch(s.parent.kind){case 264:let c=s.parent;return c.name?[c.name]:[pe.checkDefined(ose(c,90),"Nameless class declaration should be a default export")];case 232:let d=s.parent,h=s.parent.parent,_=d.name;return _?[_,h.name]:[h.name]}}function iDs(s){switch(s.kind){case 263:return s.name?[s.name]:[pe.checkDefined(ose(s,90),"Nameless function declaration should be a default export")];case 175:return[s.name];case 177:let g=pe.checkDefined(ep(s,137,s.getSourceFile()),"Constructor declaration should have constructor keyword");return s.parent.kind===232?[s.parent.parent.name,g]:[g];case 220:return[s.parent.name];case 219:return s.name?[s.name,s.parent.name]:[s.parent.name];default:return pe.assertNever(s,`Unexpected function declaration kind ${s.kind}`)}}var sDs={},mYt="Convert to template string",CYt=Bu(Z.Convert_to_template_string),_Yt={name:mYt,description:CYt,kind:"refactor.rewrite.string"};Qx(mYt,{kinds:[_Yt.kind],getEditsForAction:aDs,getAvailableActions:oDs});function oDs(s){let{file:c,startPosition:g}=s,d=don(c,g),h=yYt(d),_=Lg(h),S={name:mYt,description:CYt,actions:[]};return _&&s.triggerReason!=="invoked"?E:UT(h)&&(_||po(h)&&bYt(h).isValidConcatenation)?(S.actions.push(_Yt),[S]):s.preferences.provideRefactorNotApplicableReason?(S.actions.push({..._Yt,notApplicableReason:Bu(Z.Can_only_convert_string_concatenations_and_string_literals)}),[S]):E}function don(s,c){let g=Jc(s,c),d=yYt(g);return!bYt(d).isValidConcatenation&&dI(d.parent)&&po(d.parent.parent)?d.parent.parent:g}function aDs(s,c){let{file:g,startPosition:d}=s,h=don(g,d);switch(c){case CYt:return{edits:cDs(s,h)};default:return pe.fail("invalid action")}}function cDs(s,c){let g=yYt(c),d=s.file,h=dDs(bYt(g),d),_=a2(d.text,g.end);if(_){let S=_[_.length-1],R={pos:_[0].pos,end:S.end};return xo.ChangeTracker.with(s,T=>{T.deleteRange(d,R),T.replaceNode(d,g,h)})}else return xo.ChangeTracker.with(s,S=>S.replaceNode(d,g,h))}function lDs(s){return!(s.operatorToken.kind===64||s.operatorToken.kind===65)}function yYt(s){return ji(s.parent,g=>{switch(g.kind){case 212:case 213:return!1;case 229:case 227:return!(po(g.parent)&&lDs(g.parent));default:return"quit"}})||s}function bYt(s){let c=S=>{if(!po(S))return{nodes:[S],operators:[],validOperators:!0,hasString:Lg(S)||HW(S)};let{nodes:R,operators:T,hasString:O,validOperators:V}=c(S.left);if(!(O||Lg(S.right)||MF(S.right)))return{nodes:[S],operators:[],hasString:!1,validOperators:!0};let M=S.operatorToken.kind===40,ee=V&&M;return R.push(S.right),T.push(S.operatorToken),{nodes:R,operators:T,hasString:!0,validOperators:ee}},{nodes:g,operators:d,validOperators:h,hasString:_}=c(s);return{nodes:g,operators:d,isValidConcatenation:h&&_}}var uDs=(s,c)=>(g,d)=>{g(d,h)=>{for(;d.length>0;){let _=d.shift();ppe(s[_],h,c,3,!1),g(_,h)}};function ADs(s){return s.replace(/\\.|[$`]/g,c=>c[0]==="\\"?c:"\\"+c)}function pon(s){let c=dQ(s)||vie(s)?-2:-1;return Fp(s).slice(1,c)}function fon(s,c){let g=[],d="",h="";for(;s{Ion(Te);let Pe=Ze===ee.templateSpans.length-1,Ke=Te.literal.text+(Pe?ge:""),et=pon(Te.literal)+(Pe?Ie:"");return me.createTemplateSpan(Te.expression,Ee&&Pe?me.createTemplateTail(Ke,et):me.createTemplateMiddle(Ke,et))});O.push(...Ne)}else{let Ne=Ee?me.createTemplateTail(ge,Ie):me.createTemplateMiddle(ge,Ie);h(_e,Ne),O.push(me.createTemplateSpan(ee,Ne))}}return me.createTemplateExpression(V,O)}function Ion(s){let c=s.getSourceFile();ppe(s,s.expression,c,3,!1),O1e(s.expression,s.expression,c,3,!1)}function pDs(s){return dI(s)&&(Ion(s),s=s.expression),s}var fDs={},git="Convert to optional chain expression",EYt=Bu(Z.Convert_to_optional_chain_expression),SYt={name:git,description:EYt,kind:"refactor.rewrite.expression.optionalChain"};Qx(git,{kinds:[SYt.kind],getEditsForAction:hDs,getAvailableActions:IDs});function IDs(s){let c=hon(s,s.triggerReason==="invoked");return c?KF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:git,description:EYt,actions:[{...SYt,notApplicableReason:c.error}]}]:E:[{name:git,description:EYt,actions:[SYt]}]:E}function hDs(s,c){let g=hon(s);return pe.assert(g&&!KF(g),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(s,h=>vDs(s.file,s.program.getTypeChecker(),h,g,c)),renameFilename:void 0,renameLocation:void 0}}function Ait(s){return po(s)||Hw(s)}function mDs(s){return PC(s)||_2(s)||Eh(s)}function dit(s){return Ait(s)||mDs(s)}function hon(s,c=!0){let{file:g,program:d}=s,h=$z(s),_=h.length===0;if(_&&!c)return;let S=Jc(g,h.start),R=ape(g,h.start+h.length),T=RA(S.pos,R&&R.end>=S.pos?R.getEnd():S.getEnd()),O=_?EDs(S):bDs(S,T),V=O&&dit(O)?SDs(O):void 0;if(!V)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let M=d.getTypeChecker();return Hw(V)?CDs(V,M):_Ds(V)}function CDs(s,c){let g=s.condition,d=BYt(s.whenTrue);if(!d||c.isNullableType(c.getTypeAtLocation(d)))return{error:Bu(Z.Could_not_find_convertible_access_expression)};if((jo(g)||Ir(g))&&vYt(g,d.expression))return{finalExpression:d,occurrences:[g],expression:s};if(po(g)){let h=mon(d.expression,g);return h?{finalExpression:d,occurrences:h,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}}function _Ds(s){if(s.operatorToken.kind!==56)return{error:Bu(Z.Can_only_convert_logical_AND_access_chains)};let c=BYt(s.right);if(!c)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let g=mon(c.expression,s.left);return g?{finalExpression:c,occurrences:g,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}function mon(s,c){let g=[];for(;po(c)&&c.operatorToken.kind===56;){let h=vYt(JA(s),JA(c.right));if(!h)break;g.push(h),s=h,c=c.left}let d=vYt(s,c);return d&&g.push(d),g.length>0?g:void 0}function vYt(s,c){if(!(!Ir(c)&&!jo(c)&&!Qg(c)))return yDs(s,c)?c:void 0}function yDs(s,c){for(;(Ll(s)||jo(s)||Qg(s))&&z1e(s)!==z1e(c);)s=s.expression;for(;jo(s)&&jo(c)||Qg(s)&&Qg(c);){if(z1e(s)!==z1e(c))return!1;s=s.expression,c=c.expression}return Ir(s)&&Ir(c)&&s.getText()===c.getText()}function z1e(s){if(Ir(s)||h1(s))return s.getText();if(jo(s))return z1e(s.name);if(Qg(s))return z1e(s.argumentExpression)}function bDs(s,c){for(;s.parent;){if(dit(s)&&c.length!==0&&s.end>=c.start+c.length)return s;s=s.parent}}function EDs(s){for(;s.parent;){if(dit(s)&&!dit(s.parent))return s;s=s.parent}}function SDs(s){if(Ait(s))return s;if(Eh(s)){let c=w3(s),g=c?.initializer;return g&&Ait(g)?g:void 0}return s.expression&&Ait(s.expression)?s.expression:void 0}function BYt(s){if(s=JA(s),po(s))return BYt(s.left);if((jo(s)||Qg(s)||Ll(s))&&!LC(s))return s}function Con(s,c,g){if(jo(c)||Qg(c)||Ll(c)){let d=Con(s,c.expression,g),h=g.length>0?g[g.length-1]:void 0,_=h?.getText()===c.expression.getText();if(_&&g.pop(),Ll(c))return _?me.createCallChain(d,me.createToken(29),c.typeArguments,c.arguments):me.createCallChain(d,c.questionDotToken,c.typeArguments,c.arguments);if(jo(c))return _?me.createPropertyAccessChain(d,me.createToken(29),c.name):me.createPropertyAccessChain(d,c.questionDotToken,c.name);if(Qg(c))return _?me.createElementAccessChain(d,me.createToken(29),c.argumentExpression):me.createElementAccessChain(d,c.questionDotToken,c.argumentExpression)}return c}function vDs(s,c,g,d,h){let{finalExpression:_,occurrences:S,expression:R}=d,T=S[S.length-1],O=Con(c,_,S);O&&(jo(O)||Qg(O)||Ll(O))&&(po(R)?g.replaceNodeRange(s,T,_,O):Hw(R)&&g.replaceNode(s,R,me.createBinaryExpression(O,me.createToken(61),R.whenFalse)))}var _on={};o(_on,{Messages:()=>V_,RangeFacts:()=>Eon,getRangeToExtract:()=>wYt,getRefactorActionsToExtractSymbol:()=>yon,getRefactorEditsToExtractSymbol:()=>bon});var Cpe="Extract Symbol",_pe={name:"Extract Constant",description:Bu(Z.Extract_constant),kind:"refactor.extract.constant"},ype={name:"Extract Function",description:Bu(Z.Extract_function),kind:"refactor.extract.function"};Qx(Cpe,{kinds:[_pe.kind,ype.kind],getEditsForAction:bon,getAvailableActions:yon});function yon(s){let c=s.kind,g=wYt(s.file,$z(s),s.triggerReason==="invoked"),d=g.targetRange;if(d===void 0){if(!g.errors||g.errors.length===0||!s.preferences.provideRefactorNotApplicableReason)return E;let Ie=[];return l5(ype.kind,c)&&Ie.push({name:Cpe,description:ype.description,actions:[{...ype,notApplicableReason:ge(g.errors)}]}),l5(_pe.kind,c)&&Ie.push({name:Cpe,description:_pe.description,actions:[{..._pe,notApplicableReason:ge(g.errors)}]}),Ie}let{affectedTextRange:h,extractions:_}=DDs(d,s);if(_===void 0)return E;let S=[],R=new Map,T,O=[],V=new Map,M,ee=0;for(let{functionExtraction:Ie,constantExtraction:_e}of _){if(l5(ype.kind,c)){let Ee=Ie.description;Ie.errors.length===0?R.has(Ee)||(R.set(Ee,!0),S.push({description:Ee,name:`function_scope_${ee}`,kind:ype.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):T||(T={description:Ee,name:`function_scope_${ee}`,notApplicableReason:ge(Ie.errors),kind:ype.kind})}if(l5(_pe.kind,c)){let Ee=_e.description;_e.errors.length===0?V.has(Ee)||(V.set(Ee,!0),O.push({description:Ee,name:`constant_scope_${ee}`,kind:_pe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):M||(M={description:Ee,name:`constant_scope_${ee}`,notApplicableReason:ge(_e.errors),kind:_pe.kind})}ee++}let re=[];return S.length?re.push({name:Cpe,description:Bu(Z.Extract_function),actions:S}):s.preferences.provideRefactorNotApplicableReason&&T&&re.push({name:Cpe,description:Bu(Z.Extract_function),actions:[T]}),O.length?re.push({name:Cpe,description:Bu(Z.Extract_constant),actions:O}):s.preferences.provideRefactorNotApplicableReason&&M&&re.push({name:Cpe,description:Bu(Z.Extract_constant),actions:[M]}),re.length?re:E;function ge(Ie){let _e=Ie[0].messageText;return typeof _e!="string"&&(_e=_e.messageText),_e}}function bon(s,c){let d=wYt(s.file,$z(s)).targetRange,h=/^function_scope_(\d+)$/.exec(c);if(h){let S=+h[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the function scope index"),RDs(d,s,S)}let _=/^constant_scope_(\d+)$/.exec(c);if(_){let S=+_[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the constant scope index"),NDs(d,s,S)}pe.fail("Unrecognized action name")}var V_;(s=>{function c(g){return{message:g,code:0,category:3,key:g}}s.cannotExtractRange=c("Cannot extract range."),s.cannotExtractImport=c("Cannot extract import statement."),s.cannotExtractSuper=c("Cannot extract super call."),s.cannotExtractJSDoc=c("Cannot extract JSDoc."),s.cannotExtractEmpty=c("Cannot extract empty range."),s.expressionExpected=c("expression expected."),s.uselessConstantType=c("No reason to extract constant of type."),s.statementOrExpressionExpected=c("Statement or expression expected."),s.cannotExtractRangeContainingConditionalBreakOrContinueStatements=c("Cannot extract range containing conditional break or continue statements."),s.cannotExtractRangeContainingConditionalReturnStatement=c("Cannot extract range containing conditional return statement."),s.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=c("Cannot extract range containing labeled break or continue with target outside of the range."),s.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=c("Cannot extract range containing writes to references located outside of the target range in generators."),s.typeWillNotBeVisibleInTheNewScope=c("Type will not visible in the new scope."),s.functionWillNotBeVisibleInTheNewScope=c("Function will not visible in the new scope."),s.cannotExtractIdentifier=c("Select more than a single identifier."),s.cannotExtractExportedEntity=c("Cannot extract exported declaration"),s.cannotWriteInExpression=c("Cannot write back side-effects when extracting an expression"),s.cannotExtractReadonlyPropertyInitializerOutsideConstructor=c("Cannot move initialization of read-only class property outside of the constructor"),s.cannotExtractAmbientBlock=c("Cannot extract code from ambient contexts"),s.cannotAccessVariablesFromNestedScopes=c("Cannot access variables from nested scopes"),s.cannotExtractToJSClass=c("Cannot extract constant to a class scope in JS"),s.cannotExtractToExpressionArrowFunction=c("Cannot extract constant to an arrow function without a block"),s.cannotExtractFunctionsContainingThisToMethod=c("Cannot extract functions containing this to method")})(V_||(V_={}));var Eon=(s=>(s[s.None=0]="None",s[s.HasReturn=1]="HasReturn",s[s.IsGenerator=2]="IsGenerator",s[s.IsAsyncFunction=4]="IsAsyncFunction",s[s.UsesThis=8]="UsesThis",s[s.UsesThisInFunction=16]="UsesThisInFunction",s[s.InStaticRegion=32]="InStaticRegion",s))(Eon||{});function wYt(s,c,g=!0){let{length:d}=c;if(d===0&&!g)return{errors:[rm(s,c.start,d,V_.cannotExtractEmpty)]};let h=d===0&&g,_=SMt(s,c.start),S=ape(s,Rs(c)),R=_&&S&&g?BDs(_,S,s):c,T=h?zDs(_):L1e(_,s,R),O=h?T:L1e(S,s,R),V=0,M;if(!T||!O)return{errors:[rm(s,c.start,d,V_.cannotExtractRange)]};if(T.flags&16777216)return{errors:[rm(s,c.start,d,V_.cannotExtractJSDoc)]};if(T.parent!==O.parent)return{errors:[rm(s,c.start,d,V_.cannotExtractRange)]};if(T!==O){if(!eq(T.parent))return{errors:[rm(s,c.start,d,V_.cannotExtractRange)]};let Ne=[];for(let Te of T.parent.statements){if(Te===T||Ne.length){let Ze=Ee(Te);if(Ze)return{errors:Ze};Ne.push(Te)}if(Te===O)break}return Ne.length?{targetRange:{range:Ne,facts:V,thisNode:M}}:{errors:[rm(s,c.start,d,V_.cannotExtractRange)]}}if(_2(T)&&!T.expression)return{errors:[rm(s,c.start,d,V_.cannotExtractRange)]};let ee=ge(T),re=Ie(ee)||Ee(ee);if(re)return{errors:re};return{targetRange:{range:wDs(ee),facts:V,thisNode:M}};function ge(Ne){if(_2(Ne)){if(Ne.expression)return Ne.expression}else if(Eh(Ne)||d_(Ne)){let Te=Eh(Ne)?Ne.declarationList.declarations:Ne.declarations,Ze=0,Pe;for(let Ke of Te)Ke.initializer&&(Ze++,Pe=Ke.initializer);if(Ze===1)return Pe}else if(nc(Ne)&&Ne.initializer)return Ne.initializer;return Ne}function Ie(Ne){if(Ir(PC(Ne)?Ne.expression:Ne))return[ho(Ne,V_.cannotExtractIdentifier)]}function _e(Ne,Te){let Ze=Ne;for(;Ze!==Te;){if(Ze.kind===173){lg(Ze)&&(V|=32);break}else if(Ze.kind===170){I1(Ze).kind===177&&(V|=32);break}else Ze.kind===175&&lg(Ze)&&(V|=32);Ze=Ze.parent}}function Ee(Ne){let Te;if((Tt=>{Tt[Tt.None=0]="None",Tt[Tt.Break=1]="Break",Tt[Tt.Continue=2]="Continue",Tt[Tt.Return=4]="Return"})(Te||(Te={})),pe.assert(Ne.pos<=Ne.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),pe.assert(!xB(Ne.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!Lc(Ne)&&!(UT(Ne)&&Son(Ne))&&!kYt(Ne))return[ho(Ne,V_.statementOrExpressionExpected)];if(Ne.flags&33554432)return[ho(Ne,V_.cannotExtractAmbientBlock)];let Ze=_C(Ne);Ze&&_e(Ne,Ze);let Pe,Ke=4,et;if(Ye(Ne),V&8){let Tt=s0(Ne,!1,!1);(Tt.kind===263||Tt.kind===175&&Tt.parent.kind===211||Tt.kind===219)&&(V|=16)}return Pe;function Ye(Tt){if(Pe)return!0;if(em(Tt)){let Qe=Tt.kind===261?Tt.parent.parent:Tt;if(Ga(Qe,32))return(Pe||(Pe=[])).push(ho(Tt,V_.cannotExtractExportedEntity)),!0}switch(Tt.kind){case 273:return(Pe||(Pe=[])).push(ho(Tt,V_.cannotExtractImport)),!0;case 278:return(Pe||(Pe=[])).push(ho(Tt,V_.cannotExtractExportedEntity)),!0;case 108:if(Tt.parent.kind===214){let Qe=_C(Tt);if(Qe===void 0||Qe.pos=c.start+c.length)return(Pe||(Pe=[])).push(ho(Tt,V_.cannotExtractSuper)),!0}else V|=8,M=Tt;break;case 220:Lu(Tt,function Qe(Ct){if(rse(Ct))V|=8,M=Tt;else{if(xa(Ct)||Eu(Ct)&&!gA(Ct))return!1;Lu(Ct,Qe)}});case 264:case 263:cl(Tt.parent)&&Tt.parent.externalModuleIndicator===void 0&&(Pe||(Pe=[])).push(ho(Tt,V_.functionWillNotBeVisibleInTheNewScope));case 232:case 219:case 175:case 177:case 178:case 179:return!1}let at=Ke;switch(Tt.kind){case 246:Ke&=-5;break;case 259:Ke=0;break;case 242:Tt.parent&&Tt.parent.kind===259&&Tt.parent.finallyBlock===Tt&&(Ke=4);break;case 298:case 297:Ke|=1;break;default:YT(Tt,!1)&&(Ke|=3);break}switch(Tt.kind){case 198:case 110:V|=8,M=Tt;break;case 257:{let Qe=Tt.label;(et||(et=[])).push(Qe.escapedText),Lu(Tt,Ye),et.pop();break}case 253:case 252:{let Qe=Tt.label;Qe?k(et,Qe.escapedText)||(Pe||(Pe=[])).push(ho(Tt,V_.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):Ke&(Tt.kind===253?1:2)||(Pe||(Pe=[])).push(ho(Tt,V_.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 224:V|=4;break;case 230:V|=2;break;case 254:Ke&4?V|=1:(Pe||(Pe=[])).push(ho(Tt,V_.cannotExtractRangeContainingConditionalReturnStatement));break;default:Lu(Tt,Ye);break}Ke=at}}}function BDs(s,c,g){let d=s.getStart(g),h=c.getEnd();return g.text.charCodeAt(h)===59&&h++,{start:d,length:h-d}}function wDs(s){if(Lc(s))return[s];if(UT(s))return PC(s.parent)?[s.parent]:s;if(kYt(s))return s}function TYt(s){return gA(s)?m7(s.body):Gd(s)||cl(s)||BN(s)||xa(s)}function TDs(s){let c=u9(s.range)?ma(s.range):s.range;if(s.facts&8&&!(s.facts&16)){let d=_C(c);if(d){let h=ji(c,Gd);return h?[h,d]:[d]}}let g=[];for(;;)if(c=c.parent,c.kind===170&&(c=ji(c,d=>Gd(d)).parent),TYt(c)&&(g.push(c),c.kind===308))return g}function RDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,functionErrorsPerScope:S,exposedVariableDeclarations:R}}=RYt(s,c);return pe.assert(!S[g].length,"The extraction went missing? How?"),c.cancellationToken.throwIfCancellationRequested(),LDs(h,d[g],_[g],R,s,c)}function NDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,constantErrorsPerScope:S,exposedVariableDeclarations:R}}=RYt(s,c);pe.assert(!S[g].length,"The extraction went missing? How?"),pe.assert(R.length===0,"Extract constant accepted a range containing a variable declaration?"),c.cancellationToken.throwIfCancellationRequested();let T=un(h)?h:h.statements[0].expression;return VDs(T,d[g],_[g],s.facts,c)}function DDs(s,c){let{scopes:g,affectedTextRange:d,readsAndWrites:{functionErrorsPerScope:h,constantErrorsPerScope:_}}=RYt(s,c),S=g.map((R,T)=>{let O=kDs(R),V=xDs(R),M=Gd(R)?GDs(R):xa(R)?FDs(R):ZDs(R),ee,re;return M===1?(ee=CN(Bu(Z.Extract_to_0_in_1_scope),[O,"global"]),re=CN(Bu(Z.Extract_to_0_in_1_scope),[V,"global"])):M===0?(ee=CN(Bu(Z.Extract_to_0_in_1_scope),[O,"module"]),re=CN(Bu(Z.Extract_to_0_in_1_scope),[V,"module"])):(ee=CN(Bu(Z.Extract_to_0_in_1),[O,M]),re=CN(Bu(Z.Extract_to_0_in_1),[V,M])),T===0&&!xa(R)&&(re=CN(Bu(Z.Extract_to_0_in_enclosing_scope),[V])),{functionExtraction:{description:ee,errors:h[T]},constantExtraction:{description:re,errors:_[T]}}});return{affectedTextRange:d,extractions:S}}function RYt(s,c){let{file:g}=c,d=TDs(s),h=KDs(s,g),_=jDs(s,d,h,g,c.program.getTypeChecker(),c.cancellationToken);return{scopes:d,affectedTextRange:h,readsAndWrites:_}}function kDs(s){return Gd(s)?"inner function":xa(s)?"method":"function"}function xDs(s){return xa(s)?"readonly field":"constant"}function GDs(s){switch(s.kind){case 177:return"constructor";case 219:case 263:return s.name?`function '${s.name.text}'`:Ent;case 220:return"arrow function";case 175:return`method '${s.name.getText()}'`;case 178:return`'get ${s.name.getText()}'`;case 179:return`'set ${s.name.getText()}'`;default:pe.assertNever(s,`Unexpected scope kind ${s.kind}`)}}function FDs(s){return s.kind===264?s.name?`class '${s.name.text}'`:"anonymous class declaration":s.name?`class expression '${s.name.text}'`:"anonymous class expression"}function ZDs(s){return s.kind===269?`namespace '${s.parent.name.getText()}'`:s.externalModuleIndicator?0:1}function LDs(s,c,{usages:g,typeParameterUsages:d,substitutions:h},_,S,R){let T=R.program.getTypeChecker(),O=Hg(R.program.getCompilerOptions()),V=Z0.createImportAdder(R.file,R.program,R.preferences,R.host),M=c.getSourceFile(),ee=UU(xa(c)?"newMethod":"newFunction",M),re=Bo(c),ge=me.createIdentifier(ee),Ie,_e=[],Ee=[],Ne;g.forEach((it,Dt)=>{let tr;if(!re){let Gr=T.getTypeOfSymbolAtLocation(it.symbol,it.node);Gr=T.getBaseTypeOfLiteralType(Gr),tr=Z0.typeToAutoImportableTypeNode(T,V,Gr,c,O,1,8)}let ur=me.createParameterDeclaration(void 0,void 0,Dt,void 0,tr);_e.push(ur),it.usage===2&&(Ne||(Ne=[])).push(it),Ee.push(me.createIdentifier(Dt))});let Te=Do(d.values(),it=>({type:it,declaration:ODs(it,R.startPosition)}));Te.sort(PDs);let Ze=Te.length===0?void 0:Xt(Te,({declaration:it})=>it),Pe=Ze!==void 0?Ze.map(it=>me.createTypeReferenceNode(it.name,void 0)):void 0;if(un(s)&&!re){let it=T.getContextualType(s);Ie=T.typeToTypeNode(it,c,1,8)}let{body:Ke,returnValueProperty:et}=HDs(s,_,Ne,h,!!(S.facts&1));Py(Ke);let Ye,Tt=!!(S.facts&16);if(xa(c)){let it=re?[]:[me.createModifier(123)];S.facts&32&&it.push(me.createModifier(126)),S.facts&4&&it.push(me.createModifier(134)),Ye=me.createMethodDeclaration(it.length?it:void 0,S.facts&2?me.createToken(42):void 0,ge,void 0,Ze,_e,Ie,Ke)}else Tt&&_e.unshift(me.createParameterDeclaration(void 0,void 0,"this",void 0,T.typeToTypeNode(T.getTypeAtLocation(S.thisNode),c,1,8),void 0)),Ye=me.createFunctionDeclaration(S.facts&4?[me.createToken(134)]:void 0,S.facts&2?me.createToken(42):void 0,ge,Ze,_e,Ie,Ke);let at=xo.ChangeTracker.fromContext(R),Qe=(u9(S.range)?Ei(S.range):S.range).end,Ct=XDs(Qe,c);Ct?at.insertNodeBefore(R.file,Ct,Ye,!0):at.insertNodeAtEndOfScope(R.file,c,Ye),V.writeFixes(at);let mt=[],yt=MDs(c,S,ee);Tt&&Ee.unshift(me.createIdentifier("this"));let Rt=me.createCallExpression(Tt?me.createPropertyAccessExpression(yt,"call"):yt,Pe,Ee);if(S.facts&2&&(Rt=me.createYieldExpression(me.createToken(42),Rt)),S.facts&4&&(Rt=me.createAwaitExpression(Rt)),DYt(s)&&(Rt=me.createJsxExpression(void 0,Rt)),_.length&&!Ne)if(pe.assert(!et,"Expected no returnValueProperty"),pe.assert(!(S.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),_.length===1){let it=_[0];mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(KA(it.name),void 0,KA(it.type),Rt)],it.parent.flags)))}else{let it=[],Dt=[],tr=_[0].parent.flags,ur=!1;for(let dt of _){it.push(me.createBindingElement(void 0,void 0,KA(dt.name)));let pr=T.typeToTypeNode(T.getBaseTypeOfLiteralType(T.getTypeAtLocation(dt)),c,1,8);Dt.push(me.createPropertySignature(void 0,dt.symbol.name,void 0,pr)),ur=ur||dt.type!==void 0,tr=tr&dt.parent.flags}let Gr=ur?me.createTypeLiteralNode(Dt):void 0;Gr&&ti(Gr,1),mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(me.createObjectBindingPattern(it),void 0,Gr,Rt)],tr)))}else if(_.length||Ne){if(_.length)for(let Dt of _){let tr=Dt.parent.flags;tr&2&&(tr=tr&-3|1),mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Dt.symbol.name,void 0,Gt(Dt.type))],tr)))}et&&mt.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(et,void 0,Gt(Ie))],1)));let it=NYt(_,Ne);et&&it.unshift(me.createShorthandPropertyAssignment(et)),it.length===1?(pe.assert(!et,"Shouldn't have returnValueProperty here"),mt.push(me.createExpressionStatement(me.createAssignment(it[0].name,Rt))),S.facts&1&&mt.push(me.createReturnStatement())):(mt.push(me.createExpressionStatement(me.createAssignment(me.createObjectLiteralExpression(it),Rt))),et&&mt.push(me.createReturnStatement(me.createIdentifier(et))))}else S.facts&1?mt.push(me.createReturnStatement(Rt)):u9(S.range)?mt.push(me.createExpressionStatement(Rt)):mt.push(Rt);u9(S.range)?at.replaceNodeRangeWithNodes(R.file,ma(S.range),Ei(S.range),mt):at.replaceNodeWithNodes(R.file,S.range,mt);let Lt=at.getChanges(),Wt=(u9(S.range)?ma(S.range):S.range).getSourceFile().fileName,_r=W1e(Lt,Wt,ee,!1);return{renameFilename:Wt,renameLocation:_r,edits:Lt};function Gt(it){if(it===void 0)return;let Dt=KA(it),tr=Dt;for(;_v(tr);)tr=tr.type;return AS(tr)&&de(tr.types,ur=>ur.kind===157)?Dt:me.createUnionTypeNode([Dt,me.createKeywordTypeNode(157)])}}function VDs(s,c,{substitutions:g},d,h){let _=h.program.getTypeChecker(),S=c.getSourceFile(),R=aYt(s,c,_,S),T=Bo(c),O=T||!_.isContextSensitive(s)?void 0:_.typeToTypeNode(_.getContextualType(s),c,1,8),V=YDs(JA(s),g);({variableType:O,initializer:V}=Ie(O,V)),Py(V);let M=xo.ChangeTracker.fromContext(h);if(xa(c)){pe.assert(!T,"Cannot extract to a JS class");let _e=[];_e.push(me.createModifier(123)),d&32&&_e.push(me.createModifier(126)),_e.push(me.createModifier(148));let Ee=me.createPropertyDeclaration(_e,R,void 0,O,V),Ne=me.createPropertyAccessExpression(d&32?me.createIdentifier(c.name.getText()):me.createThis(),me.createIdentifier(R));DYt(s)&&(Ne=me.createJsxExpression(void 0,Ne));let Te=s.pos,Ze=JDs(Te,c);M.insertNodeBefore(h.file,Ze,Ee,!0),M.replaceNode(h.file,s,Ne)}else{let _e=me.createVariableDeclaration(R,void 0,O,V),Ee=WDs(s,c);if(Ee){M.insertNodeBefore(h.file,Ee,_e);let Ne=me.createIdentifier(R);M.replaceNode(h.file,s,Ne)}else if(s.parent.kind===245&&c===ji(s,TYt)){let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2));M.replaceNode(h.file,s.parent,Ne)}else{let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2)),Te=UDs(s,c);if(Te.pos===0?M.insertNodeAtTopOfFile(h.file,Ne,!1):M.insertNodeBefore(h.file,Te,Ne,!1),s.parent.kind===245)M.delete(h.file,s.parent);else{let Ze=me.createIdentifier(R);DYt(s)&&(Ze=me.createJsxExpression(void 0,Ze)),M.replaceNode(h.file,s,Ze)}}}let ee=M.getChanges(),re=s.getSourceFile().fileName,ge=W1e(ee,re,R,!0);return{renameFilename:re,renameLocation:ge,edits:ee};function Ie(_e,Ee){if(_e===void 0)return{variableType:_e,initializer:Ee};if(!jA(Ee)&&!gA(Ee)||Ee.typeParameters)return{variableType:_e,initializer:Ee};let Ne=_.getTypeAtLocation(s),Te=Ws(_.getSignaturesOfType(Ne,0));if(!Te)return{variableType:_e,initializer:Ee};if(Te.getTypeParameters())return{variableType:_e,initializer:Ee};let Ze=[],Pe=!1;for(let Ke of Ee.parameters)if(Ke.type)Ze.push(Ke);else{let et=_.getTypeAtLocation(Ke);et===_.getAnyType()&&(Pe=!0),Ze.push(me.updateParameterDeclaration(Ke,Ke.modifiers,Ke.dotDotDotToken,Ke.name,Ke.questionToken,Ke.type||_.typeToTypeNode(et,c,1,8),Ke.initializer))}if(Pe)return{variableType:_e,initializer:Ee};if(_e=void 0,gA(Ee))Ee=me.updateArrowFunction(Ee,HB(s)?sN(s):void 0,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1,8),Ee.equalsGreaterThanToken,Ee.body);else{if(Te&&Te.thisParameter){let Ke=Nc(Ze);if(!Ke||Ir(Ke.name)&&Ke.name.escapedText!=="this"){let et=_.getTypeOfSymbolAtLocation(Te.thisParameter,s);Ze.splice(0,0,me.createParameterDeclaration(void 0,void 0,"this",void 0,_.typeToTypeNode(et,c,1,8)))}}Ee=me.updateFunctionExpression(Ee,HB(s)?sN(s):void 0,Ee.asteriskToken,Ee.name,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1),Ee.body)}return{variableType:_e,initializer:Ee}}}function WDs(s,c){let g;for(;s!==void 0&&s!==c;){if(nc(s)&&s.initializer===g&&d_(s.parent)&&s.parent.declarations.length>1)return s;g=s,s=s.parent}}function ODs(s,c){let g,d=s.symbol;if(d&&d.declarations)for(let h of d.declarations)(g===void 0||h.pos0;if(eg(s)&&!_&&d.size===0)return{body:me.createBlock(s.statements,!0),returnValueProperty:void 0};let S,R=!1,T=me.createNodeArray(eg(s)?s.statements.slice(0):[Lc(s)?s:me.createReturnStatement(JA(s))]);if(_||d.size){let V=Os(T,O,Lc).slice();if(_&&!h&&Lc(s)){let M=NYt(c,g);M.length===1?V.push(me.createReturnStatement(M[0].name)):V.push(me.createReturnStatement(me.createObjectLiteralExpression(M)))}return{body:me.createBlock(V,!0),returnValueProperty:S}}else return{body:me.createBlock(T,!0),returnValueProperty:void 0};function O(V){if(!R&&_2(V)&&_){let M=NYt(c,g);return V.expression&&(S||(S="__return"),M.unshift(me.createPropertyAssignment(S,Mr(V.expression,O,un)))),M.length===1?me.createReturnStatement(M[0].name):me.createReturnStatement(me.createObjectLiteralExpression(M))}else{let M=R;R=R||Gd(V)||xa(V);let ee=d.get(id(V).toString()),re=ee?KA(ee):_s(V,O,void 0);return R=M,re}}}function YDs(s,c){return c.size?g(s):s;function g(d){let h=c.get(id(d).toString());return h?KA(h):_s(d,g,void 0)}}function QDs(s){if(Gd(s)){let c=s.body;if(eg(c))return c.statements}else{if(BN(s)||cl(s))return s.statements;if(xa(s))return s.members;}return E}function XDs(s,c){return de(QDs(c),g=>g.pos>=s&&Gd(g)&&!Tc(g))}function JDs(s,c){let g=c.members;pe.assert(g.length>0,"Found no members");let d,h=!0;for(let _ of g){if(_.pos>s)return d||g[0];if(h&&!pi(_)){if(d!==void 0)return _;h=!1}d=_}return d===void 0?pe.fail():d}function UDs(s,c){pe.assert(!xa(c));let g;for(let d=s;d!==c;d=d.parent)TYt(d)&&(g=d);for(let d=(g||s).parent;;d=d.parent){if(eq(d)){let h;for(let _ of d.statements){if(_.pos>s.pos)break;h=_}return!h&&Nie(d)?(pe.assert(Sde(d.parent.parent),"Grandparent isn't a switch statement"),d.parent.parent):pe.checkDefined(h,"prevStatement failed to get set")}pe.assert(d!==c,"Didn't encounter a block-like before encountering scope")}}function NYt(s,c){let g=lt(s,h=>me.createShorthandPropertyAssignment(h.symbol.name)),d=lt(c,h=>me.createShorthandPropertyAssignment(h.symbol.name));return g===void 0?d:d===void 0?g:g.concat(d)}function u9(s){return Ki(s)}function KDs(s,c){return u9(s.range)?{pos:ma(s.range).getStart(c),end:Ei(s.range).getEnd()}:s.range}function jDs(s,c,g,d,h,_){let S=new Map,R=[],T=[],O=[],V=[],M=[],ee=new Map,re=[],ge,Ie=u9(s.range)?s.range.length===1&&PC(s.range[0])?s.range[0].expression:void 0:s.range,_e;if(Ie===void 0){let mt=s.range,yt=ma(mt).getStart(),Rt=Ei(mt).end;_e=rm(d,yt,Rt-yt,V_.expressionExpected)}else h.getTypeAtLocation(Ie).flags&147456&&(_e=ho(Ie,V_.uselessConstantType));for(let mt of c){R.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),T.push(new Map),O.push([]);let yt=[];_e&&yt.push(_e),xa(mt)&&Bo(mt)&&yt.push(ho(mt,V_.cannotExtractToJSClass)),gA(mt)&&!eg(mt.body)&&yt.push(ho(mt,V_.cannotExtractToExpressionArrowFunction)),V.push(yt)}let Ee=new Map,Ne=u9(s.range)?me.createBlock(s.range):s.range,Te=u9(s.range)?ma(s.range):s.range,Ze=Pe(Te);if(et(Ne),Ze&&!u9(s.range)&&!RN(s.range)){let mt=h.getContextualType(s.range);Ke(mt)}if(S.size>0){let mt=new Map,yt=0;for(let Rt=Te;Rt!==void 0&&yt{R[yt].typeParameterUsages.set(je,Lt)}),yt++),lne(Rt))for(let Lt of MD(Rt)){let je=h.getTypeAtLocation(Lt);S.has(je.id.toString())&&mt.set(je.id.toString(),je)}pe.assert(yt===c.length,"Should have iterated all scopes")}if(M.length){let mt=$J(c[0],c[0].parent)?c[0]:oS(c[0]);Lu(mt,at)}for(let mt=0;mt0&&(yt.usages.size>0||yt.typeParameterUsages.size>0)){let je=u9(s.range)?s.range[0]:s.range;V[mt].push(ho(je,V_.cannotAccessVariablesFromNestedScopes))}s.facts&16&&xa(c[mt])&&O[mt].push(ho(s.thisNode,V_.cannotExtractFunctionsContainingThisToMethod));let Rt=!1,Lt;if(R[mt].usages.forEach(je=>{je.usage===2&&(Rt=!0,je.symbol.flags&106500&&je.symbol.valueDeclaration&&Lb(je.symbol.valueDeclaration,8)&&(Lt=je.symbol.valueDeclaration))}),pe.assert(u9(s.range)||re.length===0,"No variable declarations expected if something was extracted"),Rt&&!u9(s.range)){let je=ho(s.range,V_.cannotWriteInExpression);O[mt].push(je),V[mt].push(je)}else if(Lt&&mt>0){let je=ho(Lt,V_.cannotExtractReadonlyPropertyInitializerOutsideConstructor);O[mt].push(je),V[mt].push(je)}else if(ge){let je=ho(ge,V_.cannotExtractExportedEntity);O[mt].push(je),V[mt].push(je)}}return{target:Ne,usagesPerScope:R,functionErrorsPerScope:O,constantErrorsPerScope:V,exposedVariableDeclarations:re};function Pe(mt){return!!ji(mt,yt=>lne(yt)&&MD(yt).length!==0)}function Ke(mt){let yt=h.getSymbolWalker(()=>(_.throwIfCancellationRequested(),!0)),{visitedTypes:Rt}=yt.walkType(mt);for(let Lt of Rt)Lt.isTypeParameter()&&S.set(Lt.id.toString(),Lt)}function et(mt,yt=1){if(Ze){let Rt=h.getTypeAtLocation(mt);Ke(Rt)}if(em(mt)&&mt.symbol&&M.push(mt),zm(mt))et(mt.left,2),et(mt.right);else if(uN(mt))et(mt.operand,2);else if(jo(mt)||Qg(mt))Lu(mt,et);else if(Ir(mt)){if(!mt.parent||zi(mt.parent)&&mt!==mt.parent.left||jo(mt.parent)&&mt!==mt.parent.expression)return;Ye(mt,yt,xw(mt))}else Lu(mt,et)}function Ye(mt,yt,Rt){let Lt=Tt(mt,yt,Rt);if(Lt)for(let je=0;je=yt)return je;if(Ee.set(je,yt),Wt){for(let it of R)it.usages.get(mt.text)&&it.usages.set(mt.text,{usage:yt,symbol:Lt,node:mt});return je}let _r=Lt.getDeclarations(),Gt=_r&&de(_r,it=>it.getSourceFile()===d);if(Gt&&!N1e(g,Gt.getStart(),Gt.end)){if(s.facts&2&&yt===2){let it=ho(mt,V_.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(let Dt of O)Dt.push(it);for(let Dt of V)Dt.push(it)}for(let it=0;itLt.symbol===yt);if(Rt)if(nc(Rt)){let Lt=Rt.symbol.id.toString();ee.has(Lt)||(re.push(Rt),ee.set(Lt,!0))}else ge=ge||Rt}Lu(mt,at)}function Qe(mt){return mt.parent&&u0(mt.parent)&&mt.parent.name===mt?h.getShorthandAssignmentValueSymbol(mt.parent):h.getSymbolAtLocation(mt)}function Ct(mt,yt,Rt){if(!mt)return;let Lt=mt.getDeclarations();if(Lt&&Lt.some(Wt=>Wt.parent===yt))return me.createIdentifier(mt.name);let je=Ct(mt.parent,yt,Rt);if(je!==void 0)return Rt?me.createQualifiedName(je,me.createIdentifier(mt.name)):me.createPropertyAccessExpression(je,mt.name)}}function zDs(s){return ji(s,c=>c.parent&&Son(c)&&!po(c.parent))}function Son(s){let{parent:c}=s;switch(c.kind){case 307:return!1}switch(s.kind){case 11:return c.kind!==273&&c.kind!==277;case 231:case 207:case 209:return!1;case 80:return c.kind!==209&&c.kind!==277&&c.kind!==282}return!0}function DYt(s){return kYt(s)||(TN(s)||GU(s)||U3(s))&&(TN(s.parent)||U3(s.parent))}function kYt(s){return Lg(s)&&s.parent&&RN(s.parent)}var qDs={},pit="Generate 'get' and 'set' accessors",xYt=Bu(Z.Generate_get_and_set_accessors),GYt={name:pit,description:xYt,kind:"refactor.rewrite.property.generateAccessors"};Qx(pit,{kinds:[GYt.kind],getEditsForAction:function(c,g){if(!c.endPosition)return;let d=Z0.getAccessorConvertiblePropertyAtPosition(c.file,c.program,c.startPosition,c.endPosition);pe.assert(d&&!KF(d),"Expected applicable refactor info");let h=Z0.generateAccessorFromProperty(c.file,c.program,c.startPosition,c.endPosition,c,g);if(!h)return;let _=c.file.fileName,S=d.renameAccessor?d.accessorName:d.fieldName,T=(Ir(S)?0:-1)+W1e(h,_,S.text,Si(d.declaration));return{renameFilename:_,renameLocation:T,edits:h}},getAvailableActions(s){if(!s.endPosition)return E;let c=Z0.getAccessorConvertiblePropertyAtPosition(s.file,s.program,s.startPosition,s.endPosition,s.triggerReason==="invoked");return c?KF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:pit,description:xYt,actions:[{...GYt,notApplicableReason:c.error}]}]:E:[{name:pit,description:xYt,actions:[GYt]}]:E}});var $Ds={},fit="Infer function return type",FYt=Bu(Z.Infer_function_return_type),Iit={name:fit,description:FYt,kind:"refactor.rewrite.function.returnType"};Qx(fit,{kinds:[Iit.kind],getEditsForAction:eks,getAvailableActions:tks});function eks(s){let c=von(s);if(c&&!KF(c))return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,d=>rks(s.file,d,c.declaration,c.returnTypeNode))}}function tks(s){let c=von(s);return c?KF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:fit,description:FYt,actions:[{...Iit,notApplicableReason:c.error}]}]:E:[{name:fit,description:FYt,actions:[Iit]}]:E}function rks(s,c,g,d){let h=ep(g,22,s),_=gA(g)&&h===void 0,S=_?ma(g.parameters):h;S&&(_&&(c.insertNodeBefore(s,S,me.createToken(21)),c.insertNodeAfter(s,S,me.createToken(22))),c.insertNodeAt(s,S.end,d,{prefix:": "}))}function von(s){if(Bo(s.file)||!l5(Iit.kind,s.kind))return;let c=Ob(s.file,s.startPosition),g=ji(c,S=>eg(S)||S.parent&&gA(S.parent)&&(S.kind===39||S.parent.body===S)?"quit":nks(S));if(!g||!g.body||g.type)return{error:Bu(Z.Return_type_must_be_inferred_from_a_function)};let d=s.program.getTypeChecker(),h;if(d.isImplementationOfOverload(g)){let S=d.getTypeAtLocation(g).getCallSignatures();S.length>1&&(h=d.getUnionType(Xt(S,R=>R.getReturnType())))}if(!h){let S=d.getSignatureFromDeclaration(g);if(S){let R=d.getTypePredicateOfSignature(S);if(R&&R.type){let T=d.typePredicateToTypePredicateNode(R,g,1,8);if(T)return{declaration:g,returnTypeNode:T}}else h=d.getReturnTypeOfSignature(S)}}if(!h)return{error:Bu(Z.Could_not_determine_function_return_type)};let _=d.typeToTypeNode(h,g,1,8);if(_)return{declaration:g,returnTypeNode:_}}function nks(s){switch(s.kind){case 263:case 219:case 220:case 175:return!0;default:return!1}}var Bon=(s=>(s[s.typeOffset=8]="typeOffset",s[s.modifierMask=255]="modifierMask",s))(Bon||{}),won=(s=>(s[s.class=0]="class",s[s.enum=1]="enum",s[s.interface=2]="interface",s[s.namespace=3]="namespace",s[s.typeParameter=4]="typeParameter",s[s.type=5]="type",s[s.parameter=6]="parameter",s[s.variable=7]="variable",s[s.enumMember=8]="enumMember",s[s.property=9]="property",s[s.function=10]="function",s[s.member=11]="member",s))(won||{}),Ton=(s=>(s[s.declaration=0]="declaration",s[s.static=1]="static",s[s.async=2]="async",s[s.readonly=3]="readonly",s[s.defaultLibrary=4]="defaultLibrary",s[s.local=5]="local",s))(Ton||{});function Ron(s,c,g,d){let h=ZYt(s,c,g,d);pe.assert(h.spans.length%3===0);let _=h.spans,S=[];for(let R=0;R<_.length;R+=3)S.push({textSpan:$d(_[R],_[R+1]),classificationType:_[R+2]});return S}function ZYt(s,c,g,d){return{spans:iks(s,g,d,c),endOfLineState:0}}function iks(s,c,g,d){let h=[];return s&&c&&sks(s,c,g,(S,R,T)=>{h.push(S.getStart(c),S.getWidth(c),(R+1<<8)+T)},d),h}function sks(s,c,g,d,h){let _=s.getTypeChecker(),S=!1;function R(T){switch(T.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 220:h.throwIfCancellationRequested()}if(!T||!nS(g,T.pos,T.getFullWidth())||T.getFullWidth()===0)return;let O=S;if((TN(T)||GU(T))&&(S=!0),Rie(T)&&(S=!1),Ir(T)&&!S&&!lks(T)&&!yz(T.escapedText)){let V=_.getSymbolAtLocation(T);if(V){V.flags&2097152&&(V=_.getAliasedSymbol(V));let M=oks(V,QU(T));if(M!==void 0){let ee=0;T.parent&&(mg(T.parent)||kon.get(T.parent.kind)===M)&&T.parent.name===T&&(ee=1),M===6&&Don(T)&&(M=9),M=aks(_,T,M);let re=V.valueDeclaration;if(re){let ge=Hc(re),Ie=hm(re);ge&256&&(ee|=2),ge&1024&&(ee|=4),M!==0&&M!==2&&(ge&8||Ie&2||V.getFlags()&8)&&(ee|=8),(M===7||M===10)&&cks(re,c)&&(ee|=32),s.isSourceFileDefaultLibrary(re.getSourceFile())&&(ee|=16)}else V.declarations&&V.declarations.some(ge=>s.isSourceFileDefaultLibrary(ge.getSourceFile()))&&(ee|=16);d(T,M,ee)}}}Lu(T,R),S=O}R(c)}function oks(s,c){let g=s.getFlags();if(g&32)return 0;if(g&384)return 1;if(g&524288)return 5;if(g&64){if(c&2)return 2}else if(g&262144)return 4;let d=s.valueDeclaration||s.declarations&&s.declarations[0];return d&&mg(d)&&(d=Non(d)),d&&kon.get(d.kind)}function aks(s,c,g){if(g===7||g===9||g===6){let d=s.getTypeAtLocation(c);if(d){let h=_=>_(d)||d.isUnion()&&d.types.some(_);if(g!==6&&h(_=>_.getConstructSignatures().length>0))return 0;if(h(_=>_.getCallSignatures().length>0)&&!h(_=>_.getProperties().length>0)||uks(c))return g===9?11:10}}return g}function cks(s,c){return mg(s)&&(s=Non(s)),nc(s)?(!cl(s.parent.parent.parent)||IQ(s.parent))&&s.getSourceFile()===c:ah(s)?!cl(s.parent)&&s.getSourceFile()===c:!1}function Non(s){for(;;)if(mg(s.parent.parent))s=s.parent.parent;else return s.parent.parent}function lks(s){let c=s.parent;return c&&(Yw(c)||dy(c)||Mx(c))}function uks(s){for(;Don(s);)s=s.parent;return Ll(s.parent)&&s.parent.expression===s}function Don(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s}var kon=new Map([[261,7],[170,6],[173,9],[268,3],[267,1],[307,8],[264,0],[175,11],[263,10],[219,10],[174,11],[178,9],[179,9],[172,9],[265,2],[266,5],[169,4],[304,9],[305,9]]),xon="0.8";function Gon(s,c,g,d){let h=A7(s)?new LYt(s,c,g):s===80?new Zon(80,c,g):s===81?new Lon(81,c,g):new Fon(s,c,g);return h.parent=d,h.flags=d.flags&101441536,h}var LYt=class{constructor(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}assertHasRealPosition(s){pe.assert(!xB(this.pos)&&!xB(this.end),s||"Node must have a real position for this operation")}getSourceFile(){return ms(this)}getStart(s,c){return this.assertHasRealPosition(),UD(this,s,c)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(s){return this.assertHasRealPosition(),this.getEnd()-this.getStart(s)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(s){return this.assertHasRealPosition(),this.getStart(s)-this.pos}getFullText(s){return this.assertHasRealPosition(),(s||this.getSourceFile()).text.substring(this.pos,this.end)}getText(s){return this.assertHasRealPosition(),s||(s=this.getSourceFile()),s.text.substring(this.getStart(s),this.getEnd())}getChildCount(s){return this.getChildren(s).length}getChildAt(s,c){return this.getChildren(c)[s]}getChildren(s=ms(this)){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"),H$e(this,s)??COt(this,s,gks(this,s))}getFirstToken(s){this.assertHasRealPosition();let c=this.getChildren(s);if(!c.length)return;let g=de(c,d=>d.kind<310||d.kind>352);return g.kind<167?g:g.getFirstToken(s)}getLastToken(s){this.assertHasRealPosition();let c=this.getChildren(s),g=li(c);if(g)return g.kind<167?g:g.getLastToken(s)}forEachChild(s,c){return Lu(this,s,c)}};function gks(s,c){let g=[];if(C7(s))return s.forEachChild(S=>{g.push(S)}),g;f_.setText((c||s.getSourceFile()).text);let d=s.pos,h=S=>{qWe(g,d,S.pos,s),g.push(S),d=S.end},_=S=>{qWe(g,d,S.pos,s),g.push(Aks(S,s)),d=S.end};return F(s.jsDoc,h),d=s.pos,s.forEachChild(h,_),qWe(g,d,s.end,s),f_.setText(void 0),g}function qWe(s,c,g,d){for(f_.resetTokenState(c);cc.tagName.text==="inheritDoc"||c.tagName.text==="inheritdoc")}function hit(s,c){if(!s)return E;let g=A5.getJsDocTagsFromDeclarations(s,c);if(c&&(g.length===0||s.some(Von))){let d=new Set;for(let h of s){let _=Won(c,h,S=>{var R;if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualJsDocTags(h,c):((R=S.declarations)==null?void 0:R.length)===1?S.getJsDocTags(c):void 0});_&&(g=[..._,...g])}}return g}function $We(s,c){if(!s)return E;let g=A5.getJsDocCommentsFromDeclarations(s,c);if(c&&(g.length===0||s.some(Von))){let d=new Set;for(let h of s){let _=Won(c,h,S=>{if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualDocumentationComment(h,c):S.getDocumentationComment(c)});_&&(g=g.length===0?_.slice():_.concat(cse(),g))}}return g}function Won(s,c,g){var d;let h=((d=c.parent)==null?void 0:d.kind)===177?c.parent.parent:c.parent;if(!h)return;let _=tm(c);return J(Y7(h),S=>{let R=s.getTypeAtLocation(S),T=_&&R.symbol?s.getTypeOfSymbol(R.symbol):R,O=s.getPropertyOfType(T,c.symbol.name);return O?g(O):void 0})}var Iks=class extends LYt{constructor(s,c,g){super(s,c,g)}update(s,c){return iet(this,s,c)}getLineAndCharacterOfPosition(s){return Ra(this,s)}getLineStarts(){return rn(this)}getPositionOfLineAndCharacter(s,c,g){return xn(rn(this),s,c,this.text,g)}getLineEndOfPosition(s){let{line:c}=this.getLineAndCharacterOfPosition(s),g=this.getLineStarts(),d;c+1>=g.length&&(d=this.getEnd()),d||(d=g[c+1]-1);let h=this.getFullText();return h[d]===` +`&&h[d-1]==="\r"?d-1:d}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let s=Al();return this.forEachChild(h),s;function c(_){let S=d(_);S&&s.add(S,_)}function g(_){let S=s.get(_);return S||s.set(_,S=[]),S}function d(_){let S=vw(_);return S&&(Un(S)&&jo(S.expression)?S.expression.name.text:PI(S)?F1e(S):void 0)}function h(_){switch(_.kind){case 263:case 219:case 175:case 174:let S=_,R=d(S);if(R){let V=g(R),M=li(V);M&&S.parent===M.parent&&S.symbol===M.symbol?S.body&&!M.body&&(V[V.length-1]=S):V.push(S)}Lu(_,h);break;case 264:case 232:case 265:case 266:case 267:case 268:case 272:case 282:case 277:case 274:case 275:case 178:case 179:case 188:c(_),Lu(_,h);break;case 170:if(!Ga(_,31))break;case 261:case 209:{let V=_;if(Nu(V.name)){Lu(V.name,h);break}V.initializer&&h(V.initializer)}case 307:case 173:case 172:c(_);break;case 279:let T=_;T.exportClause&&(Ev(T.exportClause)?F(T.exportClause.elements,h):h(T.exportClause.name));break;case 273:let O=_.importClause;O&&(O.name&&c(O.name),O.namedBindings&&(O.namedBindings.kind===275?c(O.namedBindings):F(O.namedBindings.elements,h)));break;case 227:oI(_)!==0&&c(_);default:Lu(_,h)}}}},hks=class{constructor(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}getLineAndCharacterOfPosition(s){return Ra(this,s)}};function mks(){return{getNodeConstructor:()=>LYt,getTokenConstructor:()=>Fon,getIdentifierConstructor:()=>Zon,getPrivateIdentifierConstructor:()=>Lon,getSourceFileConstructor:()=>Iks,getSymbolConstructor:()=>dks,getTypeConstructor:()=>pks,getSignatureConstructor:()=>fks,getSourceMapSourceConstructor:()=>hks}}function q1e(s){let c=!0;for(let d in s)if(Da(s,d)&&!Oon(d)){c=!1;break}if(c)return s;let g={};for(let d in s)if(Da(s,d)){let h=Oon(d)?d:d.charAt(0).toLowerCase()+d.substr(1);g[h]=s[d]}return g}function Oon(s){return!s.length||s.charAt(0)===s.charAt(0).toLowerCase()}function $1e(s){return s?lt(s,c=>c.text).join(""):""}function eOe(){return{target:1,jsx:1}}function mit(){return Z0.getSupportedErrorCodes()}var Cks=class{constructor(s){this.host=s}getCurrentSourceFile(s){var c,g,d,h,_,S,R,T;let O=this.host.getScriptSnapshot(s);if(!O)throw new Error("Could not find file: '"+s+"'.");let V=Cnt(s,this.host),M=this.host.getScriptVersion(s),ee;if(this.currentFileName!==s){let re={languageVersion:99,impliedNodeFormat:f1e(Pu(s,this.host.getCurrentDirectory(),((d=(g=(c=this.host).getCompilerHost)==null?void 0:g.call(c))==null?void 0:d.getCanonicalFileName)||$D(this.host)),(T=(R=(S=(_=(h=this.host).getCompilerHost)==null?void 0:_.call(h))==null?void 0:S.getModuleResolutionCache)==null?void 0:R.call(S))==null?void 0:T.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:qne(this.host.getCompilationSettings()),jsDocParsingMode:0};ee=tOe(s,O,re,M,!0,V)}else if(this.currentFileVersion!==M){let re=O.getChangeRange(this.currentFileScriptSnapshot);ee=Cit(this.currentSourceFile,O,M,re)}return ee&&(this.currentFileVersion=M,this.currentFileName=s,this.currentFileScriptSnapshot=O,this.currentSourceFile=ee),this.currentSourceFile}};function Pon(s,c,g){s.version=g,s.scriptSnapshot=c}function tOe(s,c,g,d,h,_){let S=Oz(s,qz(c),g,h,_);return Pon(S,c,d),S}function Cit(s,c,g,d,h){if(d&&g!==s.version){let S,R=d.span.start!==0?s.text.substr(0,d.span.start):"",T=Rs(d.span)!==s.text.length?s.text.substr(Rs(d.span)):"";if(d.newLength===0)S=R&&T?R+T:R||T;else{let V=c.getText(d.span.start,d.span.start+d.newLength);S=R&&T?R+V+T:R?R+V:V+T}let O=iet(s,S,d,h);return Pon(O,c,g),O.nameTable=void 0,s!==O&&s.scriptSnapshot&&(s.scriptSnapshot.dispose&&s.scriptSnapshot.dispose(),s.scriptSnapshot=void 0),O}let _={languageVersion:s.languageVersion,impliedNodeFormat:s.impliedNodeFormat,setExternalModuleIndicator:s.setExternalModuleIndicator,jsDocParsingMode:s.jsDocParsingMode};return tOe(s.fileName,c,_,g,!0,s.scriptKind)}var _ks={isCancellationRequested:As,throwIfCancellationRequested:Dc},yks=class{constructor(s){this.cancellationToken=s}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new Ry}},WYt=class{constructor(s,c=20){this.hostCancellationToken=s,this.throttleWaitMilliseconds=c,this.lastCancellationCheckTime=0}isCancellationRequested(){let s=Zg();return Math.abs(s-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=s,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new Ry}},Mon=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],bks=[...Mon,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];function OYt(s,c=uHt(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames(),s.getCurrentDirectory(),s.jsDocParsingMode),g){var d;let h;g===void 0?h=0:typeof g=="boolean"?h=g?2:0:h=g;let _=new Cks(s),S,R,T=0,O=s.getCancellationToken?new yks(s.getCancellationToken()):_ks,V=s.getCurrentDirectory();yLe((d=s.getLocalizedDiagnosticMessages)==null?void 0:d.bind(s));function M(tn){s.log&&s.log(tn)}let ee=N3(s),re=bd(ee),ge=SHt({useCaseSensitiveFileNames:()=>ee,getCurrentDirectory:()=>V,getProgram:Ne,fileExists:$i(s,s.fileExists),readFile:$i(s,s.readFile),getDocumentPositionMapper:$i(s,s.getDocumentPositionMapper),getSourceFileLike:$i(s,s.getSourceFileLike),log:M});function Ie(tn){let Bn=S.getSourceFile(tn);if(!Bn){let Mn=new Error(`Could not find source file: '${tn}'.`);throw Mn.ProgramFiles=S.getSourceFiles().map(ci=>ci.fileName),Mn}return Bn}function _e(){s.updateFromProject&&!s.updateFromProjectInProgress?s.updateFromProject():Ee()}function Ee(){var tn,Bn,Mn;if(pe.assert(h!==2),s.getProjectVersion){let Au=s.getProjectVersion();if(Au){if(R===Au&&!((tn=s.hasChangedAutomaticTypeDirectiveNames)!=null&&tn.call(s)))return;R=Au}}let ci=s.getTypeRootsVersion?s.getTypeRootsVersion():0;T!==ci&&(M("TypeRoots version has changed; provide new program"),S=void 0,T=ci);let es=s.getScriptFileNames().slice(),Oi=s.getCompilationSettings()||eOe(),Vn=s.hasInvalidatedResolutions||As,Ui=$i(s,s.hasInvalidatedLibResolutions)||As,gs=$i(s,s.hasChangedAutomaticTypeDirectiveNames),fs=(Bn=s.getProjectReferences)==null?void 0:Bn.call(s),bi,mc={getSourceFile:ch,getSourceFileByPath:mS,getCancellationToken:()=>O,getCanonicalFileName:re,useCaseSensitiveFileNames:()=>ee,getNewLine:()=>IN(Oi),getDefaultLibFileName:Au=>s.getDefaultLibFileName(Au),writeFile:Dc,getCurrentDirectory:()=>V,fileExists:Au=>s.fileExists(Au),readFile:Au=>s.readFile&&s.readFile(Au),getSymlinkCache:$i(s,s.getSymlinkCache),realpath:$i(s,s.realpath),directoryExists:Au=>C1(Au,s),getDirectories:Au=>s.getDirectories?s.getDirectories(Au):[],readDirectory:(Au,Eg,zA,NA,oi)=>(pe.checkDefined(s.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),s.readDirectory(Au,Eg,zA,NA,oi)),onReleaseOldSourceFile:Jg,onReleaseParsedCommandLine:sm,hasInvalidatedResolutions:Vn,hasInvalidatedLibResolutions:Ui,hasChangedAutomaticTypeDirectiveNames:gs,trace:$i(s,s.trace),resolveModuleNames:$i(s,s.resolveModuleNames),getModuleResolutionCache:$i(s,s.getModuleResolutionCache),createHash:$i(s,s.createHash),resolveTypeReferenceDirectives:$i(s,s.resolveTypeReferenceDirectives),resolveModuleNameLiterals:$i(s,s.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:$i(s,s.resolveTypeReferenceDirectiveReferences),resolveLibrary:$i(s,s.resolveLibrary),useSourceOfProjectReferenceRedirect:$i(s,s.useSourceOfProjectReferenceRedirect),getParsedCommandLine:kl,jsDocParsingMode:s.jsDocParsingMode,getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)},Ag=mc.getSourceFile,{getSourceFileWithCache:dg}=qde(mc,Au=>Pu(Au,V,re),(...Au)=>Ag.call(mc,...Au));mc.getSourceFile=dg,(Mn=s.setCompilerHost)==null||Mn.call(s,mc);let yu={useCaseSensitiveFileNames:ee,fileExists:Au=>mc.fileExists(Au),readFile:Au=>mc.readFile(Au),directoryExists:Au=>mc.directoryExists(Au),getDirectories:Au=>mc.getDirectories(Au),realpath:mc.realpath,readDirectory:(...Au)=>mc.readDirectory(...Au),trace:mc.trace,getCurrentDirectory:mc.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:Dc},RI=c.getKeyForCompilationSettings(Oi),pI=new Set;if(Ztt(S,es,Oi,(Au,Eg)=>s.getScriptVersion(Eg),Au=>mc.fileExists(Au),Vn,Ui,gs,kl,fs)){mc=void 0,bi=void 0,pI=void 0;return}S=I1e({rootNames:es,options:Oi,host:mc,oldProgram:S,projectReferences:fs}),mc=void 0,bi=void 0,pI=void 0,ge.clearCache(),S.getTypeChecker();return;function kl(Au){let Eg=Pu(Au,V,re),zA=bi?.get(Eg);if(zA!==void 0)return zA||void 0;let NA=s.getParsedCommandLine?s.getParsedCommandLine(Au):bu(Au);return(bi||(bi=new Map)).set(Eg,NA||!1),NA}function bu(Au){let Eg=ch(Au,100);if(Eg)return Eg.path=Pu(Au,V,re),Eg.resolvedPath=Eg.path,Eg.originalFileName=Eg.fileName,QEe(Eg,yu,Xc(Mo(Au),V),void 0,Xc(Au,V))}function sm(Au,Eg,zA){var NA;s.getParsedCommandLine?(NA=s.onReleaseParsedCommandLine)==null||NA.call(s,Au,Eg,zA):Eg&&qp(Eg.sourceFile,zA)}function qp(Au,Eg){let zA=c.getKeyForCompilationSettings(Eg);c.releaseDocumentWithKey(Au.resolvedPath,zA,Au.scriptKind,Au.impliedNodeFormat)}function Jg(Au,Eg,zA,NA){var oi;qp(Au,Eg),(oi=s.onReleaseOldSourceFile)==null||oi.call(s,Au,Eg,zA,NA)}function ch(Au,Eg,zA,NA){return mS(Au,Pu(Au,V,re),Eg,zA,NA)}function mS(Au,Eg,zA,NA,oi){pe.assert(mc,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let tp=s.getScriptSnapshot(Au);if(!tp)return;let JI=Cnt(Au,s),Wh=s.getScriptVersion(Au);if(!oi){let HC=S&&S.getSourceFileByPath(Eg);if(HC){if(JI===HC.scriptKind||pI.has(HC.resolvedPath))return c.updateDocumentWithKey(Au,Eg,s,RI,tp,Wh,JI,zA);c.releaseDocumentWithKey(HC.resolvedPath,c.getKeyForCompilationSettings(S.getCompilerOptions()),HC.scriptKind,HC.impliedNodeFormat),pI.add(HC.resolvedPath)}}return c.acquireDocumentWithKey(Au,Eg,s,RI,tp,Wh,JI,zA)}}function Ne(){if(h===2){pe.assert(S===void 0);return}return _e(),S}function Te(){var tn;return(tn=s.getPackageJsonAutoImportProvider)==null?void 0:tn.call(s)}function Ze(tn,Bn){let Mn=S.getTypeChecker(),ci=es();if(!ci)return!1;for(let Vn of tn)for(let Ui of Vn.references){let gs=Oi(Ui);if(pe.assertIsDefined(gs),Bn.has(Ui)||zp.isDeclarationOfSymbol(gs,ci)){Bn.add(Ui),Ui.isDefinition=!0;let fs=yWe(Ui,ge,$i(s,s.fileExists));fs&&Bn.add(fs)}else Ui.isDefinition=!1}return!0;function es(){for(let Vn of tn)for(let Ui of Vn.references){if(Bn.has(Ui)){let fs=Oi(Ui);return pe.assertIsDefined(fs),Mn.getSymbolAtLocation(fs)}let gs=yWe(Ui,ge,$i(s,s.fileExists));if(gs&&Bn.has(gs)){let fs=Oi(gs);if(fs)return Mn.getSymbolAtLocation(fs)}}}function Oi(Vn){let Ui=S.getSourceFile(Vn.fileName);if(!Ui)return;let gs=Ob(Ui,Vn.textSpan.start);return zp.Core.getAdjustedNode(gs,{use:zp.FindReferencesUse.References})}}function Pe(){if(S){let tn=c.getKeyForCompilationSettings(S.getCompilerOptions());F(S.getSourceFiles(),Bn=>c.releaseDocumentWithKey(Bn.resolvedPath,tn,Bn.scriptKind,Bn.impliedNodeFormat)),S=void 0}}function Ke(){Pe(),s=void 0}function et(tn){return _e(),S.getSyntacticDiagnostics(Ie(tn),O).slice()}function Ye(tn){_e();let Bn=Ie(tn),Mn=S.getSemanticDiagnostics(Bn,O);if(!Oy(S.getCompilerOptions()))return Mn.slice();let ci=S.getDeclarationDiagnostics(Bn,O);return[...Mn,...ci]}function Tt(tn,Bn){_e();let Mn=Ie(tn),ci=S.getCompilerOptions();if(L3(Mn,ci,S)||!vU(Mn,ci)||S.getCachedSemanticDiagnostics(Mn))return;let es=at(Mn,Bn);if(!es)return;let Oi=vI(es.map(Ui=>RA(Ui.getFullStart(),Ui.getEnd())));return{diagnostics:S.getSemanticDiagnostics(Mn,O,es).slice(),spans:Oi}}function at(tn,Bn){let Mn=[],ci=vI(Bn.map(es=>c9(es)));for(let es of ci){let Oi=Qe(tn,es);if(!Oi)return;Mn.push(...Oi)}if(Mn.length)return Mn}function Qe(tn,Bn){if(rd(Bn,tn))return;let Mn=ape(tn,Rs(Bn))||tn,ci=ji(Mn,Oi=>Mg(Oi,Bn)),es=[];if(Ct(Bn,ci,es),tn.end===Bn.start+Bn.length&&es.push(tn.endOfFileToken),!zt(es,cl))return es}function Ct(tn,Bn,Mn){return mt(Bn,tn)?rd(tn,Bn)?(yt(Bn,Mn),!0):eq(Bn)?Rt(tn,Bn,Mn):xa(Bn)?Lt(tn,Bn,Mn):(yt(Bn,Mn),!0):!1}function mt(tn,Bn){let Mn=Bn.start+Bn.length;return tn.posBn.start}function yt(tn,Bn){for(;tn.parent&&!qLe(tn);)tn=tn.parent;Bn.push(tn)}function Rt(tn,Bn,Mn){let ci=[];return Bn.statements.filter(Oi=>Ct(tn,Oi,ci)).length===Bn.statements.length?(yt(Bn,Mn),!0):(Mn.push(...ci),!1)}function Lt(tn,Bn,Mn){var ci,es,Oi;let Vn=fs=>l3(fs,tn);if((ci=Bn.modifiers)!=null&&ci.some(Vn)||Bn.name&&Vn(Bn.name)||(es=Bn.typeParameters)!=null&&es.some(Vn)||(Oi=Bn.heritageClauses)!=null&&Oi.some(Vn))return yt(Bn,Mn),!0;let Ui=[];return Bn.members.filter(fs=>Ct(tn,fs,Ui)).length===Bn.members.length?(yt(Bn,Mn),!0):(Mn.push(...Ui),!1)}function je(tn){return _e(),Qnt(Ie(tn),S,O)}function Wt(){return _e(),[...S.getOptionsDiagnostics(O),...S.getGlobalDiagnostics(O)]}function _r(tn,Bn,Mn=YB,ci){let es={...Mn,includeCompletionsForModuleExports:Mn.includeCompletionsForModuleExports||Mn.includeExternalModuleExports,includeCompletionsWithInsertText:Mn.includeCompletionsWithInsertText||Mn.includeInsertTextCompletions};return _e(),cq.getCompletionsAtPosition(s,S,M,Ie(tn),Bn,es,Mn.triggerCharacter,Mn.triggerKind,O,ci&&_m.getFormatContext(ci,s),Mn.includeSymbol)}function Gt(tn,Bn,Mn,ci,es,Oi=YB,Vn){return _e(),cq.getCompletionEntryDetails(S,M,Ie(tn),Bn,{name:Mn,source:es,data:Vn},s,ci&&_m.getFormatContext(ci,s),Oi,O)}function it(tn,Bn,Mn,ci,es=YB){return _e(),cq.getCompletionEntrySymbol(S,M,Ie(tn),Bn,{name:Mn,source:ci},s,es)}function Dt(tn,Bn,Mn,ci){_e();let es=Ie(tn),Oi=Ob(es,Bn);if(Oi===es)return;let Vn=S.getTypeChecker(),Ui=Gr(Oi),gs=Bks(Ui,Vn);if(!gs||Vn.isUnknownSymbol(gs)){let yu=dt(es,Ui,Bn)?Vn.getTypeAtLocation(Ui):void 0;return yu&&{kind:"",kindModifiers:"",textSpan:Yy(Ui,es),displayParts:Vn.runWithCancellationToken(O,RI=>V1e(RI,yu,XU(Ui),void 0,ci)),documentation:yu.symbol?yu.symbol.getDocumentationComment(Vn):void 0,tags:yu.symbol?yu.symbol.getJsDocTags(Vn):void 0}}let{symbolKind:fs,displayParts:bi,documentation:mc,tags:Ag,canIncreaseVerbosityLevel:dg}=Vn.runWithCancellationToken(O,yu=>g9.getSymbolDisplayPartsDocumentationAndSymbolKind(yu,gs,es,XU(Ui),Ui,void 0,void 0,Mn??Nge,ci));return{kind:fs,kindModifiers:g9.getSymbolModifiers(Vn,gs),textSpan:Yy(Ui,es),displayParts:bi,documentation:mc,tags:Ag,canIncreaseVerbosityLevel:dg}}function tr(tn,Bn){return _e(),Nst.preparePasteEdits(Ie(tn),Bn,S.getTypeChecker())}function ur(tn,Bn){return _e(),Dst.pasteEditsProvider(Ie(tn.targetFile),tn.pastedText,tn.pasteLocations,tn.copiedFrom?{file:Ie(tn.copiedFrom.file),range:tn.copiedFrom.range}:void 0,s,tn.preferences,_m.getFormatContext(Bn,s),O)}function Gr(tn){return C2(tn.parent)&&tn.pos===tn.parent.pos?tn.parent.expression:tR(tn.parent)&&tn.pos===tn.parent.pos||fv(tn.parent)&&tn.parent.name===tn||oR(tn.parent)?tn.parent:tn}function dt(tn,Bn,Mn){switch(Bn.kind){case 80:return Bn.flags&16777216&&!Bo(Bn)&&(Bn.parent.kind===172&&Bn.parent.name===Bn||ji(Bn,ci=>ci.kind===170))?!1:!Wrt(Bn)&&!Ort(Bn)&&!l2(Bn.parent);case 212:case 167:return!o9(tn,Mn);case 110:case 198:case 108:case 203:return!0;case 237:return fv(Bn);default:return!1}}function pr(tn,Bn,Mn,ci){return _e(),mse.getDefinitionAtPosition(S,Ie(tn),Bn,Mn,ci)}function ot(tn,Bn){return _e(),mse.getDefinitionAndBoundSpan(S,Ie(tn),Bn)}function ir(tn,Bn){return _e(),mse.getTypeDefinitionAtPosition(S.getTypeChecker(),Ie(tn),Bn)}function qt(tn,Bn){return _e(),zp.getImplementationsAtPosition(S,O,S.getSourceFiles(),Ie(tn),Bn)}function Yt(tn,Bn,Mn){let ci=su(tn);pe.assert(Mn.some(Vn=>su(Vn)===ci)),_e();let es=Xt(Mn,Vn=>S.getSourceFile(Vn)),Oi=Ie(tn);return WWe.getDocumentHighlights(S,O,Oi,Bn,es)}function Tr(tn,Bn,Mn,ci,es){_e();let Oi=Ie(tn),Vn=lWe(Ob(Oi,Bn));if(bOe.nodeIsEligibleForRename(Vn))if(Ir(Vn)&&(sR(Vn.parent)||pQ(Vn.parent))&&pU(Vn.escapedText)){let{openingElement:Ui,closingElement:gs}=Vn.parent.parent;return[Ui,gs].map(fs=>{let bi=Yy(fs.tagName,Oi);return{fileName:Oi.fileName,textSpan:bi,...zp.toContextSpan(bi,Oi,fs.parent)}})}else{let Ui=S1(Oi,es??YB),gs=typeof es=="boolean"?es:es?.providePrefixAndSuffixTextForRename;return jn(Vn,Bn,{findInStrings:Mn,findInComments:ci,providePrefixAndSuffixTextForRename:gs,use:zp.FindReferencesUse.Rename},(fs,bi,mc)=>zp.toRenameLocation(fs,bi,mc,gs||!1,Ui))}}function mn(tn,Bn){return _e(),jn(Ob(Ie(tn),Bn),Bn,{use:zp.FindReferencesUse.References},zp.toReferenceEntry)}function jn(tn,Bn,Mn,ci){_e();let es=Mn&&Mn.use===zp.FindReferencesUse.Rename?S.getSourceFiles().filter(Oi=>!S.isSourceFileDefaultLibrary(Oi)):S.getSourceFiles();return zp.findReferenceOrRenameEntries(S,O,es,tn,Bn,Mn,ci)}function Zi(tn,Bn){return _e(),zp.findReferencedSymbols(S,O,S.getSourceFiles(),Ie(tn),Bn)}function Ns(tn){return _e(),zp.Core.getReferencesForFileName(tn,S,S.getSourceFiles()).map(zp.toReferenceEntry)}function An(tn,Bn,Mn,ci=!1,es=!1){_e();let Oi=Mn?[Ie(Mn)]:S.getSourceFiles();return esn(Oi,S.getTypeChecker(),O,tn,Bn,ci,es)}function si(tn,Bn,Mn){_e();let ci=Ie(tn),es=s.getCustomTransformers&&s.getCustomTransformers();return n5t(S,ci,!!Bn,O,es,Mn)}function ks(tn,Bn,{triggerReason:Mn}=YB){_e();let ci=Ie(tn);return p2e.getSignatureHelpItems(S,ci,Bn,Mn,O)}function Ic(tn){return _.getCurrentSourceFile(tn)}function ou(tn,Bn,Mn){let ci=_.getCurrentSourceFile(tn),es=Ob(ci,Bn);if(es===ci)return;switch(es.kind){case 212:case 167:case 11:case 97:case 112:case 106:case 108:case 110:case 198:case 80:break;default:return}let Oi=es;for(;;)if(tse(Oi)||_Mt(Oi))Oi=Oi.parent;else if(Mrt(Oi))if(Oi.parent.parent.kind===268&&Oi.parent.parent.body===Oi.parent)Oi=Oi.parent.parent.name;else break;else break;return RA(Oi.getStart(),es.getEnd())}function Zn(tn,Bn){let Mn=_.getCurrentSourceFile(tn);return yit.spanInSourceFileAtLocation(Mn,Bn)}function ya(tn){return isn(_.getCurrentSourceFile(tn),O)}function Fl(tn){return ssn(_.getCurrentSourceFile(tn),O)}function ba(tn,Bn,Mn){return _e(),(Mn||"original")==="2020"?Ron(S,O,Ie(tn),Bn):cHt(S.getTypeChecker(),O,Ie(tn),S.getClassifiableNames(),Bn)}function Oo(tn,Bn,Mn){return _e(),(Mn||"original")==="original"?Lnt(S.getTypeChecker(),O,Ie(tn),S.getClassifiableNames(),Bn):ZYt(S,O,Ie(tn),Bn)}function hc(tn,Bn){return lHt(O,_.getCurrentSourceFile(tn),Bn)}function yr(tn,Bn){return Vnt(O,_.getCurrentSourceFile(tn),Bn)}function hn(tn){let Bn=_.getCurrentSourceFile(tn);return fst.collectElements(Bn,O)}let Pi=new Map(Object.entries({19:20,21:22,23:24,32:30}));Pi.forEach((tn,Bn)=>Pi.set(tn.toString(),Number(Bn)));function co(tn,Bn){let Mn=_.getCurrentSourceFile(tn),ci=ise(Mn,Bn),es=ci.getStart(Mn)===Bn?Pi.get(ci.kind.toString()):void 0,Oi=es&&ep(ci.parent,es,Mn);return Oi?[Yy(ci,Mn),Yy(Oi,Mn)].sort((Vn,Ui)=>Vn.start-Ui.start):E}function pa(tn,Bn,Mn){let ci=Zg(),es=q1e(Mn),Oi=_.getCurrentSourceFile(tn);M("getIndentationAtPosition: getCurrentSourceFile: "+(Zg()-ci)),ci=Zg();let Vn=_m.SmartIndenter.getIndentation(Bn,Oi,es);return M("getIndentationAtPosition: computeIndentation : "+(Zg()-ci)),Vn}function Pa(tn,Bn,Mn,ci){let es=_.getCurrentSourceFile(tn);return _m.formatSelection(Bn,Mn,es,_m.getFormatContext(q1e(ci),s))}function $c(tn,Bn){return _m.formatDocument(_.getCurrentSourceFile(tn),_m.getFormatContext(q1e(Bn),s))}function Qu(tn,Bn,Mn,ci){let es=_.getCurrentSourceFile(tn),Oi=_m.getFormatContext(q1e(ci),s);if(!o9(es,Bn))switch(Mn){case"{":return _m.formatOnOpeningCurly(Bn,es,Oi);case"}":return _m.formatOnClosingCurly(Bn,es,Oi);case";":return _m.formatOnSemicolon(Bn,es,Oi);case` +`:return _m.formatOnEnter(Bn,es,Oi)}return[]}function Rg(tn,Bn,Mn,ci,es,Oi=YB){_e();let Vn=Ie(tn),Ui=RA(Bn,Mn),gs=_m.getFormatContext(es,s);return jt(no(ci,bg,Zt),fs=>(O.throwIfCancellationRequested(),Z0.getFixes({errorCode:fs,sourceFile:Vn,span:Ui,program:S,host:s,cancellationToken:O,formatContext:gs,preferences:Oi})))}function Cs(tn,Bn,Mn,ci=YB){_e(),pe.assert(tn.type==="file");let es=Ie(tn.fileName),Oi=_m.getFormatContext(Mn,s);return Z0.getAllFixes({fixId:Bn,sourceFile:es,program:S,host:s,cancellationToken:O,formatContext:Oi,preferences:ci})}function Tu(tn,Bn,Mn=YB){_e(),pe.assert(tn.type==="file");let ci=Ie(tn.fileName);if(EW(ci))return E;let es=_m.getFormatContext(Bn,s),Oi=tn.mode??(tn.skipDestructiveCodeActions?"SortAndCombine":"All");return d5.organizeImports(ci,es,s,S,Mn,Oi)}function Wr(tn,Bn,Mn,ci=YB){return AHt(Ne(),tn,Bn,s,_m.getFormatContext(Mn,s),ci,ge)}function Wn(tn,Bn){let Mn=typeof tn=="string"?Bn:tn;return Ki(Mn)?Promise.all(Mn.map(ci=>pt(ci))):pt(Mn)}function pt(tn){let Bn=Mn=>Pu(Mn,V,re);return pe.assertEqual(tn.type,"install package"),s.installPackage?s.installPackage({fileName:Bn(tn.file),packageName:tn.packageName}):Promise.reject("Host does not implement `installPackage`")}function on(tn,Bn,Mn,ci){let es=ci?_m.getFormatContext(ci,s).options:void 0;return A5.getDocCommentTemplateAtPosition(UF(s,es),_.getCurrentSourceFile(tn),Bn,Mn)}function st(tn,Bn,Mn){if(Mn===60)return!1;let ci=_.getCurrentSourceFile(tn);if(zz(ci,Bn))return!1;if(wMt(ci,Bn))return Mn===123;if(Urt(ci,Bn))return!1;switch(Mn){case 39:case 34:case 96:return!o9(ci,Bn)}return!0}function nr(tn,Bn){let Mn=_.getCurrentSourceFile(tn),ci=Vm(Bn,Mn);if(!ci)return;let es=ci.kind===32&&sR(ci.parent)?ci.parent.parent:r9(ci)&&TN(ci.parent)?ci.parent:void 0;if(es&&Gi(es))return{newText:``};let Oi=ci.kind===32&&Qw(ci.parent)?ci.parent.parent:r9(ci)&&U3(ci.parent)?ci.parent:void 0;if(Oi&&nn(Oi))return{newText:""}}function Zr(tn,Bn){let Mn=_.getCurrentSourceFile(tn),ci=Vm(Bn,Mn);if(!ci||ci.parent.kind===308)return;let es="[a-zA-Z0-9:\\-\\._$]*";if(U3(ci.parent.parent)){let Oi=ci.parent.parent.openingFragment,Vn=ci.parent.parent.closingFragment;if(EW(Oi)||EW(Vn))return;let Ui=Oi.getStart(Mn)+1,gs=Vn.getStart(Mn)+2;return Bn!==Ui&&Bn!==gs?void 0:{ranges:[{start:Ui,length:0},{start:gs,length:0}],wordPattern:es}}else{let Oi=ji(ci.parent,dg=>!!(sR(dg)||pQ(dg)));if(!Oi)return;pe.assert(sR(Oi)||pQ(Oi),"tag should be opening or closing element");let Vn=Oi.parent.openingElement,Ui=Oi.parent.closingElement,gs=Vn.tagName.getStart(Mn),fs=Vn.tagName.end,bi=Ui.tagName.getStart(Mn),mc=Ui.tagName.end;return gs===Vn.getStart(Mn)||bi===Ui.getStart(Mn)||fs===Vn.getEnd()||mc===Ui.getEnd()||!(gs<=Bn&&Bn<=fs||bi<=Bn&&Bn<=mc)||Vn.tagName.getText(Mn)!==Ui.tagName.getText(Mn)?void 0:{ranges:[{start:gs,length:fs-gs},{start:bi,length:mc-bi}],wordPattern:es}}}function Kr(tn,Bn){return{lineStarts:tn.getLineStarts(),firstLine:tn.getLineAndCharacterOfPosition(Bn.pos).line,lastLine:tn.getLineAndCharacterOfPosition(Bn.end).line}}function Dn(tn,Bn,Mn){let ci=_.getCurrentSourceFile(tn),es=[],{lineStarts:Oi,firstLine:Vn,lastLine:Ui}=Kr(ci,Bn),gs=Mn||!1,fs=Number.MAX_VALUE,bi=new Map,mc=new RegExp(/\S/),Ag=gWe(ci,Oi[Vn]),dg=Ag?"{/*":"//";for(let yu=Vn;yu<=Ui;yu++){let RI=ci.text.substring(Oi[yu],ci.getLineEndOfPosition(Oi[yu])),pI=mc.exec(RI);pI&&(fs=Math.min(fs,pI.index),bi.set(yu.toString(),pI.index),RI.substr(pI.index,dg.length)!==dg&&(gs=Mn===void 0||Mn))}for(let yu=Vn;yu<=Ui;yu++){if(Vn!==Ui&&Oi[yu]===Bn.end)continue;let RI=bi.get(yu.toString());RI!==void 0&&(Ag?es.push(...hr(tn,{pos:Oi[yu]+fs,end:ci.getLineEndOfPosition(Oi[yu])},gs,Ag)):gs?es.push({newText:dg,span:{length:0,start:Oi[yu]+fs}}):ci.text.substr(Oi[yu]+RI,dg.length)===dg&&es.push({newText:"",span:{length:dg.length,start:Oi[yu]+RI}}))}return es}function hr(tn,Bn,Mn,ci){var es;let Oi=_.getCurrentSourceFile(tn),Vn=[],{text:Ui}=Oi,gs=!1,fs=Mn||!1,bi=[],{pos:mc}=Bn,Ag=ci!==void 0?ci:gWe(Oi,mc),dg=Ag?"{/*":"/*",yu=Ag?"*/}":"*/",RI=Ag?"\\{\\/\\*":"\\/\\*",pI=Ag?"\\*\\/\\}":"\\*\\/";for(;mc<=Bn.end;){let Ip=Ui.substr(mc,dg.length)===dg?dg.length:0,kl=o9(Oi,mc+Ip);if(kl)Ag&&(kl.pos--,kl.end++),bi.push(kl.pos),kl.kind===3&&bi.push(kl.end),gs=!0,mc=kl.end+1;else{let bu=Ui.substring(mc,Bn.end).search(`(${RI})|(${pI})`);fs=Mn!==void 0?Mn:fs||!VMt(Ui,mc,bu===-1?Bn.end:mc+bu),mc=bu===-1?Bn.end+1:mc+bu+yu.length}}if(fs||!gs){((es=o9(Oi,Bn.pos))==null?void 0:es.kind)!==2&&Gc(bi,Bn.pos,Zt),Gc(bi,Bn.end,Zt);let Ip=bi[0];Ui.substr(Ip,dg.length)!==dg&&Vn.push({newText:dg,span:{length:0,start:Ip}});for(let kl=1;kl0?Ip-yu.length:0,bu=Ui.substr(kl,yu.length)===yu?yu.length:0;Vn.push({newText:"",span:{length:dg.length,start:Ip-bu}})}return Vn}function En(tn,Bn){let Mn=_.getCurrentSourceFile(tn),{firstLine:ci,lastLine:es}=Kr(Mn,Bn);return ci===es&&Bn.pos!==Bn.end?hr(tn,Bn,!0):Dn(tn,Bn,!0)}function Ni(tn,Bn){let Mn=_.getCurrentSourceFile(tn),ci=[],{pos:es}=Bn,{end:Oi}=Bn;es===Oi&&(Oi+=gWe(Mn,es)?2:1);for(let Vn=es;Vn<=Oi;Vn++){let Ui=o9(Mn,Vn);if(Ui){switch(Ui.kind){case 2:ci.push(...Dn(tn,{end:Ui.end,pos:Ui.pos+1},!1));break;case 3:ci.push(...hr(tn,{end:Ui.end,pos:Ui.pos+1},!1))}Vn=Ui.end+1}}return ci}function Gi({openingElement:tn,closingElement:Bn,parent:Mn}){return!e5(tn.tagName,Bn.tagName)||TN(Mn)&&e5(tn.tagName,Mn.openingElement.tagName)&&Gi(Mn)}function nn({closingFragment:tn,parent:Bn}){return!!(tn.flags&262144)||U3(Bn)&&nn(Bn)}function bn(tn,Bn,Mn){let ci=_.getCurrentSourceFile(tn),es=_m.getRangeOfEnclosingComment(ci,Bn);return es&&(!Mn||es.kind===3)?c9(es):void 0}function ds(tn,Bn){_e();let Mn=Ie(tn);O.throwIfCancellationRequested();let ci=Mn.text,es=[];if(Bn.length>0&&!gs(Mn.fileName)){let fs=Vn(),bi;for(;bi=fs.exec(ci);){O.throwIfCancellationRequested();let mc=3;pe.assert(bi.length===Bn.length+mc);let Ag=bi[1],dg=bi.index+Ag.length;if(!o9(Mn,dg))continue;let yu;for(let pI=0;pI"("+Oi(kl.text)+")").join("|")+")",yu=/(?:$|\*\/)/.source,RI=/(?:.*?)/.source,pI="("+dg+RI+")",Ip=Ag+pI+yu;return new RegExp(Ip,"gim")}function Ui(fs){return fs>=97&&fs<=122||fs>=65&&fs<=90||fs>=48&&fs<=57}function gs(fs){return fs.includes("/node_modules/")}}function Ht(tn,Bn,Mn){return _e(),bOe.getRenameInfo(S,Ie(tn),Bn,Mn||{})}function cn(tn,Bn,Mn,ci,es,Oi){let[Vn,Ui]=typeof Bn=="number"?[Bn,void 0]:[Bn.pos,Bn.end];return{file:tn,startPosition:Vn,endPosition:Ui,program:Ne(),host:s,formatContext:_m.getFormatContext(ci,s),cancellationToken:O,preferences:Mn,triggerReason:es,kind:Oi}}function wt(tn,Bn,Mn){return{file:tn,program:Ne(),host:s,span:Bn,preferences:Mn,cancellationToken:O}}function xe(tn,Bn){return mst.getSmartSelectionRange(Bn,_.getCurrentSourceFile(tn))}function fr(tn,Bn,Mn=YB,ci,es,Oi){_e();let Vn=Ie(tn);return rq.getApplicableRefactors(cn(Vn,Bn,Mn,YB,ci,es),Oi)}function Ue(tn,Bn,Mn=YB){_e();let ci=Ie(tn),es=pe.checkDefined(S.getSourceFiles()),Oi=Iz(tn),Vn=j1e(cn(ci,Bn,Mn,YB)),Ui=rYt(Vn?.all),gs=Xt(es,fs=>{let bi=Iz(fs.fileName);return!S?.isSourceFileFromExternalLibrary(ci)&&!(ci===Ie(fs.fileName)||Oi===".ts"&&bi===".d.ts"||Oi===".d.ts"&&Ac(dp(fs.fileName),"lib.")&&bi===".d.ts")&&(Oi===bi||(Oi===".tsx"&&bi===".ts"||Oi===".jsx"&&bi===".js")&&!Ui)?fs.fileName:void 0});return{newFileName:tYt(ci,S,s,Vn),files:gs}}function In(tn,Bn,Mn,ci,es,Oi=YB,Vn){_e();let Ui=Ie(tn);return rq.getEditsForRefactor(cn(Ui,Mn,Oi,Bn),ci,es,Vn)}function Hn(tn,Bn){return Bn===0?{line:0,character:0}:ge.toLineColumnOffset(tn,Bn)}function Mt(tn,Bn){_e();let Mn=nq.resolveCallHierarchyDeclaration(S,Ob(Ie(tn),Bn));return Mn&&Tnt(Mn,ci=>nq.createCallHierarchyItem(S,ci))}function $r(tn,Bn){_e();let Mn=Ie(tn),ci=Rnt(nq.resolveCallHierarchyDeclaration(S,Bn===0?Mn:Ob(Mn,Bn)));return ci?nq.getIncomingCalls(S,ci,O):[]}function ri(tn,Bn){_e();let Mn=Ie(tn),ci=Rnt(nq.resolveCallHierarchyDeclaration(S,Bn===0?Mn:Ob(Mn,Bn)));return ci?nq.getOutgoingCalls(S,ci):[]}function oo(tn,Bn,Mn=YB){_e();let ci=Ie(tn);return Ast.provideInlayHints(wt(ci,Bn,Mn))}function Bs(tn,Bn,Mn,ci,es){return dst.mapCode(_.getCurrentSourceFile(tn),Bn,Mn,s,_m.getFormatContext(ci,s),es)}let Ys={dispose:Ke,cleanupSemanticCache:Pe,getSyntacticDiagnostics:et,getSemanticDiagnostics:Ye,getRegionSemanticDiagnostics:Tt,getSuggestionDiagnostics:je,getCompilerOptionsDiagnostics:Wt,getSyntacticClassifications:hc,getSemanticClassifications:ba,getEncodedSyntacticClassifications:yr,getEncodedSemanticClassifications:Oo,getCompletionsAtPosition:_r,getCompletionEntryDetails:Gt,getCompletionEntrySymbol:it,getSignatureHelpItems:ks,getQuickInfoAtPosition:Dt,getDefinitionAtPosition:pr,getDefinitionAndBoundSpan:ot,getImplementationAtPosition:qt,getTypeDefinitionAtPosition:ir,getReferencesAtPosition:mn,findReferences:Zi,getFileReferences:Ns,getDocumentHighlights:Yt,getNameOrDottedNameSpan:ou,getBreakpointStatementAtPosition:Zn,getNavigateToItems:An,getRenameInfo:Ht,getSmartSelectionRange:xe,findRenameLocations:Tr,getNavigationBarItems:ya,getNavigationTree:Fl,getOutliningSpans:hn,getTodoComments:ds,getBraceMatchingAtPosition:co,getIndentationAtPosition:pa,getFormattingEditsForRange:Pa,getFormattingEditsForDocument:$c,getFormattingEditsAfterKeystroke:Qu,getDocCommentTemplateAtPosition:on,isValidBraceCompletionAtPosition:st,getJsxClosingTagAtPosition:nr,getLinkedEditingRangeAtPosition:Zr,getSpanOfEnclosingComment:bn,getCodeFixesAtPosition:Rg,getCombinedCodeFix:Cs,applyCodeActionCommand:Wn,organizeImports:Tu,getEditsForFileRename:Wr,getEmitOutput:si,getNonBoundSourceFile:Ic,getProgram:Ne,getCurrentProgram:()=>S,getAutoImportProvider:Te,updateIsDefinitionOfReferencedSymbols:Ze,getApplicableRefactors:fr,getEditsForRefactor:In,getMoveToRefactoringFileSuggestions:Ue,toLineColumnOffset:Hn,getSourceMapper:()=>ge,clearSourceMapperCache:()=>ge.clearCache(),prepareCallHierarchy:Mt,provideCallHierarchyIncomingCalls:$r,provideCallHierarchyOutgoingCalls:ri,toggleLineComment:Dn,toggleMultilineComment:hr,commentSelection:En,uncommentSelection:Ni,provideInlayHints:oo,getSupportedCodeFixes:mit,preparePasteEditsForFile:tr,getPasteEdits:ur,mapCode:Bs};switch(h){case 0:break;case 1:Mon.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:bks.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.Syntactic`)});break;default:pe.assertNever(h)}return Ys}function _it(s){return s.nameTable||Eks(s),s.nameTable}function Eks(s){let c=s.nameTable=new Map;s.forEachChild(function g(d){if(Ir(d)&&!Ort(d)&&d.escapedText||h1(d)&&Sks(d)){let h=AU(d);c.set(h,c.get(h)===void 0?d.pos:-1)}else if(p(d)){let h=d.escapedText;c.set(h,c.get(h)===void 0?d.pos:-1)}if(Lu(d,g),jm(d))for(let h of d.jsDoc)Lu(h,g)})}function Sks(s){return KT(s)||s.parent.kind===284||wks(s)||Nne(s)}function e2e(s){let c=vks(s);return c&&(ag(c.parent)||fQ(c.parent))?c:void 0}function vks(s){switch(s.kind){case 11:case 15:case 9:if(s.parent.kind===168)return GY(s.parent.parent)?s.parent.parent:void 0;case 80:case 296:return GY(s.parent)&&(s.parent.parent.kind===211||s.parent.parent.kind===293)&&s.parent.name===s?s.parent:void 0}}function Bks(s,c){let g=e2e(s);if(g){let d=c.getContextualType(g.parent),h=d&&rOe(g,c,d,!1);if(h&&h.length===1)return ma(h)}return c.getSymbolAtLocation(s)}function rOe(s,c,g,d){let h=F1e(s.name);if(!h)return E;if(!g.isUnion()){let R=g.getProperty(h);return R?[R]:E}let _=ag(s.parent)||fQ(s.parent)?Le(g.types,R=>!c.isTypeInvalidDueToUnionDiscriminant(R,s.parent)):g.types,S=Xt(_,R=>R.getProperty(h));if(d&&(S.length===0||S.length===g.types.length)){let R=g.getProperty(h);if(R)return[R]}return!_.length&&!S.length?Xt(g.types,R=>R.getProperty(h)):no(S,bg)}function wks(s){return s&&s.parent&&s.parent.kind===213&&s.parent.argumentExpression===s}function PYt(s){if(Ed)return To(Mo(su(Ed.getExecutingFilePath())),Hs(s));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}_Le(mks());function Hon(s,c,g){let d=[];g=Knt(g,d);let h=Ki(s)?s:[s],_=c1e(void 0,void 0,me,g,h,c,!0);return _.diagnostics=Nn(_.diagnostics,d),_}var yit={};o(yit,{spanInSourceFileAtLocation:()=>Tks});function Tks(s,c){if(s.isDeclarationFile)return;let g=Jc(s,c),d=s.getLineAndCharacterOfPosition(c).line;if(s.getLineAndCharacterOfPosition(g.getStart(s)).line>d){let M=Vm(g.pos,s);if(!M||s.getLineAndCharacterOfPosition(M.getEnd()).line!==d)return;g=M}if(g.flags&33554432)return;return V(g);function h(M,ee){let re=mQ(M)?be(M.modifiers,Eo):void 0,ge=re?Yu(s.text,re.end):M.getStart(s);return RA(ge,(ee||M).getEnd())}function _(M,ee){return h(M,wQ(ee,ee.parent,s))}function S(M,ee){return M&&d===s.getLineAndCharacterOfPosition(M.getStart(s)).line?V(M):V(ee)}function R(M,ee,re){if(M){let ge=M.indexOf(ee);if(ge>=0){let Ie=ge,_e=ge+1;for(;Ie>0&&re(M[Ie-1]);)Ie--;for(;_e0)return V(Wt.declarations[0])}else return V(je.initializer)}function Pe(je){if(je.initializer)return Ze(je);if(je.condition)return h(je.condition);if(je.incrementor)return h(je.incrementor)}function Ke(je){let Wt=F(je.elements,_r=>_r.kind!==233?_r:void 0);return Wt?V(Wt):je.parent.kind===209?h(je.parent):ee(je.parent)}function et(je){pe.assert(je.kind!==208&&je.kind!==207);let Wt=je.kind===210?je.elements:je.properties,_r=F(Wt,Gt=>Gt.kind!==233?Gt:void 0);return _r?V(_r):h(je.parent.kind===227?je.parent:je)}function Ye(je){switch(je.parent.kind){case 267:let Wt=je.parent;return S(Vm(je.pos,s,je.parent),Wt.members.length?Wt.members[0]:Wt.getLastToken(s));case 264:let _r=je.parent;return S(Vm(je.pos,s,je.parent),_r.members.length?_r.members[0]:_r.getLastToken(s));case 270:return S(je.parent.parent,je.parent.clauses[0])}return V(je.parent)}function Tt(je){switch(je.parent.kind){case 269:if(XF(je.parent.parent)!==1)return;case 267:case 264:return h(je);case 242:if(wW(je.parent))return h(je);case 300:return V(li(je.parent.statements));case 270:let Wt=je.parent,_r=li(Wt.clauses);return _r?V(li(_r.statements)):void 0;case 207:let Gt=je.parent;return V(li(Gt.elements)||Gt);default:if(a9(je.parent)){let it=je.parent;return h(li(it.properties)||it)}return V(je.parent)}}function at(je){switch(je.parent.kind){case 208:let Wt=je.parent;return h(li(Wt.elements)||Wt);default:if(a9(je.parent)){let _r=je.parent;return h(li(_r.elements)||_r)}return V(je.parent)}}function Qe(je){return je.parent.kind===247||je.parent.kind===214||je.parent.kind===215?T(je):je.parent.kind===218?O(je):V(je.parent)}function Ct(je){switch(je.parent.kind){case 219:case 263:case 220:case 175:case 174:case 178:case 179:case 177:case 248:case 247:case 249:case 251:case 214:case 215:case 218:return T(je);default:return V(je.parent)}}function mt(je){return Eu(je.parent)||je.parent.kind===304||je.parent.kind===170?T(je):V(je.parent)}function yt(je){return je.parent.kind===217?O(je):V(je.parent)}function Rt(je){return je.parent.kind===247?_(je,je.parent.expression):V(je.parent)}function Lt(je){return je.parent.kind===251?O(je):V(je.parent)}}}var nq={};o(nq,{createCallHierarchyItem:()=>MYt,getIncomingCalls:()=>Zks,getOutgoingCalls:()=>Xks,resolveCallHierarchyDeclaration:()=>zon});function Rks(s){return(jA(s)||wd(s))&&sh(s)}function Yon(s){return pi(s)||nc(s)}function t2e(s){return(jA(s)||gA(s)||wd(s))&&Yon(s.parent)&&s===s.parent.initializer&&Ir(s.parent.name)&&(!!(hm(s.parent)&2)||pi(s.parent))}function Qon(s){return cl(s)||Lh(s)||ah(s)||jA(s)||mm(s)||wd(s)||dl(s)||gu(s)||Il(s)||wg(s)||kg(s)}function fse(s){return cl(s)||Lh(s)&&Ir(s.name)||ah(s)||mm(s)||dl(s)||gu(s)||Il(s)||wg(s)||kg(s)||Rks(s)||t2e(s)}function Xon(s){return cl(s)?s:sh(s)?s.name:t2e(s)?s.parent.name:pe.checkDefined(s.modifiers&&de(s.modifiers,Jon))}function Jon(s){return s.kind===90}function Uon(s,c){let g=Xon(c);return g&&s.getSymbolAtLocation(g)}function Nks(s,c){if(cl(c))return{text:c.fileName,pos:0,end:0};if((ah(c)||mm(c))&&!sh(c)){let h=c.modifiers&&de(c.modifiers,Jon);if(h)return{text:"default",pos:h.getStart(),end:h.getEnd()}}if(dl(c)){let h=c.getSourceFile(),_=Yu(h.text,hv(c).pos),S=_+6,R=s.getTypeChecker(),T=R.getSymbolAtLocation(c.parent);return{text:`${T?`${R.symbolToString(T,c.parent)} `:""}static {}`,pos:_,end:S}}let g=t2e(c)?c.parent.name:pe.checkDefined(fl(c),"Expected call hierarchy item to have a name"),d=Ir(g)?Vo(g):h1(g)?g.text:Un(g)&&h1(g.expression)?g.expression.text:void 0;if(d===void 0){let h=s.getTypeChecker(),_=h.getSymbolAtLocation(g);_&&(d=h.symbolToString(_,c))}if(d===void 0){let h=btt();d=bW(_=>h.writeNode(4,c,c.getSourceFile(),_))}return{text:d,pos:g.getStart(),end:g.getEnd()}}function Dks(s){var c,g,d,h;if(t2e(s))return pi(s.parent)&&xa(s.parent.parent)?wd(s.parent.parent)?(c=vB(s.parent.parent))==null?void 0:c.getText():(g=s.parent.parent.name)==null?void 0:g.getText():BN(s.parent.parent.parent.parent)&&Ir(s.parent.parent.parent.parent.parent.name)?s.parent.parent.parent.parent.parent.name.getText():void 0;switch(s.kind){case 178:case 179:case 175:return s.parent.kind===211?(d=vB(s.parent))==null?void 0:d.getText():(h=fl(s.parent))==null?void 0:h.getText();case 263:case 264:case 268:if(BN(s.parent)&&Ir(s.parent.parent.name))return s.parent.parent.name.getText()}}function Kon(s,c){if(c.body)return c;if(Tc(c))return fN(c.parent);if(ah(c)||gu(c)){let g=Uon(s,c);return g&&g.valueDeclaration&&Gd(g.valueDeclaration)&&g.valueDeclaration.body?g.valueDeclaration:void 0}return c}function jon(s,c){let g=Uon(s,c),d;if(g&&g.declarations){let h=Ao(g.declarations),_=lt(g.declarations,T=>({file:T.getSourceFile().fileName,pos:T.pos}));h.sort((T,O)=>Ca(_[T].file,_[O].file)||_[T].pos-_[O].pos);let S=lt(h,T=>g.declarations[T]),R;for(let T of S)fse(T)&&((!R||R.parent!==T.parent||R.end!==T.pos)&&(d=Ft(d,T)),R=T)}return d}function bit(s,c){return dl(c)?c:Gd(c)?Kon(s,c)??jon(s,c)??c:jon(s,c)??c}function zon(s,c){let g=s.getTypeChecker(),d=!1;for(;;){if(fse(c))return bit(g,c);if(Qon(c)){let h=ji(c,fse);return h&&bit(g,h)}if(KT(c)){if(fse(c.parent))return bit(g,c.parent);if(Qon(c.parent)){let h=ji(c.parent,fse);return h&&bit(g,h)}return Yon(c.parent)&&c.parent.initializer&&t2e(c.parent.initializer)?c.parent.initializer:void 0}if(Tc(c))return fse(c.parent)?c.parent:void 0;if(c.kind===126&&dl(c.parent)){c=c.parent;continue}if(nc(c)&&c.initializer&&t2e(c.initializer))return c.initializer;if(!d){let h=g.getSymbolAtLocation(c);if(h&&(h.flags&2097152&&(h=g.getAliasedSymbol(h)),h.valueDeclaration)){d=!0,c=h.valueDeclaration;continue}}return}}function MYt(s,c){let g=c.getSourceFile(),d=Nks(s,c),h=Dks(c),_=BQ(c),S=cpe(c),R=RA(Yu(g.text,c.getFullStart(),!1,!0),c.getEnd()),T=RA(d.pos,d.end);return{file:g.fileName,kind:_,kindModifiers:S,name:d.text,containerName:h,span:R,selectionSpan:T}}function kks(s){return s!==void 0}function xks(s){if(s.kind===zp.EntryKind.Node){let{node:c}=s;if(Zrt(c,!0,!0)||hMt(c,!0,!0)||mMt(c,!0,!0)||CMt(c,!0,!0)||tse(c)||Prt(c)){let g=c.getSourceFile();return{declaration:ji(c,fse)||g,range:rnt(c,g)}}}}function qon(s){return id(s.declaration)}function Gks(s,c){return{from:s,fromSpans:c}}function Fks(s,c){return Gks(MYt(s,c[0].declaration),lt(c,g=>c9(g.range)))}function Zks(s,c,g){if(cl(c)||Lh(c)||dl(c))return[];let d=Xon(c),h=Le(zp.findReferenceOrRenameEntries(s,g,s.getSourceFiles(),d,0,{use:zp.FindReferencesUse.References},xks),kks);return h?Yn(h,qon,_=>Fks(s,_)):[]}function Lks(s,c){function g(h){let _=QI(h)?h.tag:nI(h)?h.tagName:bp(h)||dl(h)?h:h.expression,S=zon(s,_);if(S){let R=rnt(_,h.getSourceFile());if(Ki(S))for(let T of S)c.push({declaration:T,range:R});else c.push({declaration:S,range:R})}}function d(h){if(h&&!(h.flags&33554432)){if(fse(h)){if(xa(h))for(let _ of h.members)_.name&&Un(_.name)&&d(_.name.expression);return}switch(h.kind){case 80:case 272:case 273:case 279:case 265:case 266:return;case 176:g(h);return;case 217:case 235:d(h.expression);return;case 261:case 170:d(h.name),d(h.initializer);return;case 214:g(h),d(h.expression),F(h.arguments,d);return;case 215:g(h),d(h.expression),F(h.arguments,d);return;case 216:g(h),d(h.tag),d(h.template);return;case 287:case 286:g(h),d(h.tagName),d(h.attributes);return;case 171:g(h),d(h.expression);return;case 212:case 213:g(h),Lu(h,d);break;case 239:d(h.expression);return}xw(h)||Lu(h,d)}}return d}function Vks(s,c){F(s.statements,c)}function Wks(s,c){!Ga(s,128)&&s.body&&BN(s.body)&&F(s.body.statements,c)}function Oks(s,c,g){let d=Kon(s,c);d&&(F(d.parameters,g),g(d.body))}function Pks(s,c){c(s.body)}function Mks(s,c){F(s.modifiers,c);let g=UL(s);g&&c(g.expression);for(let d of s.members)HB(d)&&F(d.modifiers,c),pi(d)?c(d.initializer):Tc(d)&&d.body?(F(d.parameters,c),c(d.body)):dl(d)&&c(d)}function Hks(s,c){let g=[],d=Lks(s,g);switch(c.kind){case 308:Vks(c,d);break;case 268:Wks(c,d);break;case 263:case 219:case 220:case 175:case 178:case 179:Oks(s.getTypeChecker(),c,d);break;case 264:case 232:Mks(c,d);break;case 176:Pks(c,d);break;default:pe.assertNever(c)}return g}function Yks(s,c){return{to:s,fromSpans:c}}function Qks(s,c){return Yks(MYt(s,c[0].declaration),lt(c,g=>c9(g.range)))}function Xks(s,c){return c.flags&33554432||Il(c)?[]:Yn(Hks(s,c),qon,g=>Qks(s,g))}var HYt={};o(HYt,{v2020:()=>$on});var $on={};o($on,{TokenEncodingConsts:()=>Bon,TokenModifier:()=>Ton,TokenType:()=>won,getEncodedSemanticClassifications:()=>ZYt,getSemanticClassifications:()=>Ron});var Z0={};o(Z0,{PreserveOptionalFlags:()=>pgn,addNewNodeForMemberSymbol:()=>fgn,codeFixAll:()=>Jd,createCodeFixAction:()=>gg,createCodeFixActionMaybeFixAll:()=>XYt,createCodeFixActionWithoutFixAll:()=>gR,createCombinedCodeActions:()=>iq,createFileTextChanges:()=>ean,createImportAdder:()=>xQ,createImportSpecifierResolver:()=>tGs,createMissingMemberNodes:()=>dXt,createSignatureDeclarationFromCallExpression:()=>pXt,createSignatureDeclarationFromSignature:()=>Uit,createStubbedBody:()=>lOe,eachDiagnostic:()=>sq,findAncestorMatchingSpan:()=>yXt,generateAccessorFromProperty:()=>Egn,getAccessorConvertiblePropertyAtPosition:()=>Bgn,getAllFixes:()=>jks,getFixes:()=>Kks,getImportCompletionAction:()=>rGs,getImportKind:()=>xit,getJSDocTypedefNodes:()=>$xs,getNoopSymbolTrackerWithResolver:()=>hse,getPromoteTypeOnlyCompletionAction:()=>nGs,getSupportedErrorCodes:()=>Jks,importFixName:()=>bcn,importSymbols:()=>KU,parameterShouldGetTypeFromJSDoc:()=>Dan,registerCodeFix:()=>Gg,setJsonCompilerOptionValue:()=>CXt,setJsonCompilerOptionValues:()=>mXt,tryGetAutoImportableReferenceFromTypeNode:()=>GQ,typeNodeToAutoImportableTypeNode:()=>fXt,typePredicateToAutoImportableTypeNode:()=>mgn,typeToAutoImportableTypeNode:()=>Kit,typeToMinimizedReferenceType:()=>hgn});var YYt=Al(),QYt=new Map;function gR(s,c,g){return JYt(s,TQ(g),c,void 0,void 0)}function gg(s,c,g,d,h,_){return JYt(s,TQ(g),c,d,TQ(h),_)}function XYt(s,c,g,d,h,_){return JYt(s,TQ(g),c,d,h&&TQ(h),_)}function JYt(s,c,g,d,h,_){return{fixName:s,description:c,changes:g,fixId:d,fixAllDescription:h,commands:_?[_]:void 0}}function Gg(s){for(let c of s.errorCodes)UYt=void 0,YYt.add(String(c),s);if(s.fixIds)for(let c of s.fixIds)pe.assert(!QYt.has(c)),QYt.set(c,s)}var UYt;function Jks(){return UYt??(UYt=Do(YYt.keys()))}function Uks(s,c){let{errorCodes:g}=s,d=0;for(let _ of c)if(k(g,_.code)&&d++,d>1)break;let h=d<2;return({fixId:_,fixAllDescription:S,...R})=>h?R:{...R,fixId:_,fixAllDescription:S}}function Kks(s){let c=tan(s),g=YYt.get(String(s.errorCode));return jt(g,d=>lt(d.getCodeActions(s),Uks(d,c)))}function jks(s){return QYt.get(Ma(s.fixId,Xs)).getAllCodeActions(s)}function iq(s,c){return{changes:s,commands:c}}function ean(s,c){return{fileName:s,textChanges:c}}function Jd(s,c,g){let d=[],h=xo.ChangeTracker.with(s,_=>sq(s,c,S=>g(_,S,d)));return iq(h,d.length===0?void 0:d)}function sq(s,c,g){for(let d of tan(s))k(c,d.code)&&g(d)}function tan({program:s,sourceFile:c,cancellationToken:g}){let d=[...s.getSemanticDiagnostics(c,g),...s.getSyntacticDiagnostics(c,g),...Qnt(c,s,g)];return Oy(s.getCompilerOptions())&&d.push(...s.getDeclarationDiagnostics(c,g)),d}var KYt="addConvertToUnknownForNonOverlappingTypes",ran=[Z.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.code];Gg({errorCodes:ran,getCodeActions:function(c){let g=ian(c.sourceFile,c.span.start);if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>nan(h,c.sourceFile,g));return[gg(KYt,d,Z.Add_unknown_conversion_for_non_overlapping_types,KYt,Z.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[KYt],getAllCodeActions:s=>Jd(s,ran,(c,g)=>{let d=ian(g.file,g.start);d&&nan(c,g.file,d)})});function nan(s,c,g){let d=Xd(g)?me.createAsExpression(g.expression,me.createKeywordTypeNode(159)):me.createTypeAssertion(me.createKeywordTypeNode(159),g.expression);s.replaceNode(c,g.expression,d)}function ian(s,c){if(!Bo(s))return ji(Jc(s,c),g=>Xd(g)||OF(g))}Gg({errorCodes:[Z.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.code,Z.await_using_statements_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.code,Z.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.code],getCodeActions:function(c){let{sourceFile:g}=c,d=xo.ChangeTracker.with(c,h=>{let _=me.createExportDeclaration(void 0,!1,me.createNamedExports([]),void 0);h.insertNodeAtEndOfScope(g,g,_)});return[gR("addEmptyExportDeclaration",d,Z.Add_export_to_make_this_file_into_a_module)]}});var jYt="addMissingAsync",san=[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_comparable_to_type_1.code];Gg({fixIds:[jYt],errorCodes:san,getCodeActions:function(c){let{sourceFile:g,errorCode:d,cancellationToken:h,program:_,span:S}=c,R=de(_.getTypeChecker().getDiagnostics(g,h),qks(S,d)),T=R&&R.relatedInformation&&de(R.relatedInformation,M=>M.code===Z.Did_you_mean_to_mark_this_function_as_async.code),O=aan(g,T);return O?[oan(c,O,M=>xo.ChangeTracker.with(c,M))]:void 0},getAllCodeActions:s=>{let{sourceFile:c}=s,g=new Set;return Jd(s,san,(d,h)=>{let _=h.relatedInformation&&de(h.relatedInformation,T=>T.code===Z.Did_you_mean_to_mark_this_function_as_async.code),S=aan(c,_);return S?oan(s,S,T=>(T(d),[]),g):void 0})}});function oan(s,c,g,d){let h=g(_=>zks(_,s.sourceFile,c,d));return gg(jYt,h,Z.Add_async_modifier_to_containing_function,jYt,Z.Add_all_missing_async_modifiers)}function zks(s,c,g,d){if(d&&d.has(id(g)))return;d?.add(id(g));let h=me.replaceModifiers(KA(g,!0),me.createNodeArray(me.createModifiersFromModifierFlags(Zx(g)|1024)));s.replaceNode(c,g,h)}function aan(s,c){if(!c)return;let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":(gA(h)||gu(h)||jA(h)||ah(h))&&ase(c,Yy(h,s)))}function qks(s,c){return({start:g,length:d,relatedInformation:h,code:_})=>ws(g)&&ws(d)&&ase({start:g,length:d},s)&&_===c&&!!h&&zt(h,S=>S.code===Z.Did_you_mean_to_mark_this_function_as_async.code)}var zYt="addMissingAwait",can=Z.Property_0_does_not_exist_on_type_1.code,lan=[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],qYt=[Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.Operator_0_cannot_be_applied_to_type_1.code,Z.Operator_0_cannot_be_applied_to_types_1_and_2.code,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,Z.This_condition_will_always_return_true_since_this_0_is_always_defined.code,Z.Type_0_is_not_an_array_type.code,Z.Type_0_is_not_an_array_type_or_a_string_type.code,Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,can,...lan];Gg({fixIds:[zYt],errorCodes:qYt,getCodeActions:function(c){let{sourceFile:g,errorCode:d,span:h,cancellationToken:_,program:S}=c,R=uan(g,d,h,_,S);if(!R)return;let T=c.program.getTypeChecker(),O=V=>xo.ChangeTracker.with(c,V);return Hr([gan(c,R,d,T,O),Aan(c,R,d,T,O)])},getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=s.program.getTypeChecker(),_=new Set;return Jd(s,qYt,(S,R)=>{let T=uan(c,R.code,R,d,g);if(!T)return;let O=V=>(V(S),[]);return gan(s,T,R.code,h,O,_)||Aan(s,T,R.code,h,O,_)})}});function uan(s,c,g,d,h){let _=wnt(s,g);return _&&$ks(s,c,g,d,h)&&dan(_)?_:void 0}function gan(s,c,g,d,h,_){let{sourceFile:S,program:R,cancellationToken:T}=s,O=exs(c,S,T,R,d);if(O){let V=h(M=>{F(O.initializers,({expression:ee})=>$Yt(M,g,S,d,ee,_)),_&&O.needsSecondPassForFixAll&&$Yt(M,g,S,d,c,_)});return gR("addMissingAwaitToInitializer",V,O.initializers.length===1?[Z.Add_await_to_initializer_for_0,O.initializers[0].declarationSymbol.name]:Z.Add_await_to_initializers)}}function Aan(s,c,g,d,h,_){let S=h(R=>$Yt(R,g,s.sourceFile,d,c,_));return gg(zYt,S,Z.Add_await,zYt,Z.Fix_all_expressions_possibly_missing_await)}function $ks(s,c,g,d,h){let S=h.getTypeChecker().getDiagnostics(s,d);return zt(S,({start:R,length:T,relatedInformation:O,code:V})=>ws(R)&&ws(T)&&ase({start:R,length:T},g)&&V===c&&!!O&&zt(O,M=>M.code===Z.Did_you_forget_to_use_await.code))}function exs(s,c,g,d,h){let _=txs(s,h);if(!_)return;let S=_.isCompleteFix,R;for(let T of _.identifiers){let O=h.getSymbolAtLocation(T);if(!O)continue;let V=Gs(O.valueDeclaration,nc),M=V&&Gs(V.name,Ir),ee=KL(V,244);if(!V||!ee||V.type||!V.initializer||ee.getSourceFile()!==c||Ga(ee,32)||!M||!dan(V.initializer)){S=!1;continue}let re=d.getSemanticDiagnostics(c,g);if(zp.Core.eachSymbolReferenceInFile(M,h,c,Ie=>T!==Ie&&!rxs(Ie,re,c,h))){S=!1;continue}(R||(R=[])).push({expression:V.initializer,declarationSymbol:O})}return R&&{initializers:R,needsSecondPassForFixAll:!S}}function txs(s,c){if(jo(s.parent)&&Ir(s.parent.expression))return{identifiers:[s.parent.expression],isCompleteFix:!0};if(Ir(s))return{identifiers:[s],isCompleteFix:!0};if(po(s)){let g,d=!0;for(let h of[s.left,s.right]){let _=c.getTypeAtLocation(h);if(c.getPromisedTypeOfPromise(_)){if(!Ir(h)){d=!1;continue}(g||(g=[])).push(h)}}return g&&{identifiers:g,isCompleteFix:d}}}function rxs(s,c,g,d){let h=jo(s.parent)?s.parent.name:po(s.parent)?s.parent:s,_=de(c,S=>S.start===h.getStart(g)&&S.start+S.length===h.getEnd());return _&&k(qYt,_.code)||d.getTypeAtLocation(h).flags&1}function dan(s){return s.flags&65536||!!ji(s,c=>c.parent&&gA(c.parent)&&c.parent.body===c||eg(c)&&(c.parent.kind===263||c.parent.kind===219||c.parent.kind===220||c.parent.kind===175))}function $Yt(s,c,g,d,h,_){if(BEe(h.parent)&&!h.parent.awaitModifier){let S=d.getTypeAtLocation(h),R=d.getAnyAsyncIterableType();if(R&&d.isTypeAssignableTo(S,R)){let T=h.parent;s.replaceNode(g,T,me.updateForOfStatement(T,me.createToken(135),T.initializer,T.expression,T.statement));return}}if(po(h))for(let S of[h.left,h.right]){if(_&&Ir(S)){let O=d.getSymbolAtLocation(S);if(O&&_.has(xg(O)))continue}let R=d.getTypeAtLocation(S),T=d.getPromisedTypeOfPromise(R)?me.createAwaitExpression(S):S;s.replaceNode(g,S,T)}else if(c===can&&jo(h.parent)){if(_&&Ir(h.parent.expression)){let S=d.getSymbolAtLocation(h.parent.expression);if(S&&_.has(xg(S)))return}s.replaceNode(g,h.parent.expression,me.createParenthesizedExpression(me.createAwaitExpression(h.parent.expression))),pan(s,h.parent.expression,g)}else if(k(lan,c)&&Av(h.parent)){if(_&&Ir(h)){let S=d.getSymbolAtLocation(h);if(S&&_.has(xg(S)))return}s.replaceNode(g,h,me.createParenthesizedExpression(me.createAwaitExpression(h))),pan(s,h,g)}else{if(_&&nc(h.parent)&&Ir(h.parent.name)){let S=d.getSymbolAtLocation(h.parent.name);if(S&&!Ar(_,xg(S)))return}s.replaceNode(g,h,me.createAwaitExpression(h))}}function pan(s,c,g){let d=Vm(c.pos,g);d&&BWe(d.end,d.parent,g)&&s.insertText(g,c.getStart(g),";")}var eQt="addMissingConst",fan=[Z.Cannot_find_name_0.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];Gg({errorCodes:fan,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Ian(d,c.sourceFile,c.span.start,c.program));if(g.length>0)return[gg(eQt,g,Z.Add_const_to_unresolved_variable,eQt,Z.Add_const_to_all_unresolved_variables)]},fixIds:[eQt],getAllCodeActions:s=>{let c=new Set;return Jd(s,fan,(g,d)=>Ian(g,d.file,d.start,s.program,c))}});function Ian(s,c,g,d,h){let _=Jc(c,g),S=ji(_,O=>WL(O.parent)?O.parent.initializer===O:nxs(O)?!1:"quit");if(S)return Eit(s,S,c,h);let R=_.parent;if(po(R)&&R.operatorToken.kind===64&&PC(R.parent))return Eit(s,_,c,h);if(YI(R)){let O=d.getTypeChecker();return ue(R.elements,V=>ixs(V,O))?Eit(s,R,c,h):void 0}let T=ji(_,O=>PC(O.parent)?!0:sxs(O)?!1:"quit");if(T){let O=d.getTypeChecker();return han(T,O)?Eit(s,T,c,h):void 0}}function Eit(s,c,g,d){(!d||Ar(d,c))&&s.insertModifierBefore(g,87,c)}function nxs(s){switch(s.kind){case 80:case 210:case 211:case 304:case 305:return!0;default:return!1}}function ixs(s,c){let g=Ir(s)?s:zm(s,!0)&&Ir(s.left)?s.left:void 0;return!!g&&!c.getSymbolAtLocation(g)}function sxs(s){switch(s.kind){case 80:case 227:case 28:return!0;default:return!1}}function han(s,c){return po(s)?s.operatorToken.kind===28?ue([s.left,s.right],g=>han(g,c)):s.operatorToken.kind===64&&Ir(s.left)&&!c.getSymbolAtLocation(s.left):!1}var tQt="addMissingDeclareProperty",man=[Z.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.code];Gg({errorCodes:man,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Can(d,c.sourceFile,c.span.start));if(g.length>0)return[gg(tQt,g,Z.Prefix_with_declare,tQt,Z.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[tQt],getAllCodeActions:s=>{let c=new Set;return Jd(s,man,(g,d)=>Can(g,d.file,d.start,c))}});function Can(s,c,g,d){let h=Jc(c,g);if(!Ir(h))return;let _=h.parent;_.kind===173&&(!d||Ar(d,_))&&s.insertModifierBefore(c,138,_)}var rQt="addMissingInvocationForDecorator",_an=[Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];Gg({errorCodes:_an,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>yan(d,c.sourceFile,c.span.start));return[gg(rQt,g,Z.Call_decorator_expression,rQt,Z.Add_to_all_uncalled_decorators)]},fixIds:[rQt],getAllCodeActions:s=>Jd(s,_an,(c,g)=>yan(c,g.file,g.start))});function yan(s,c,g){let d=Jc(c,g),h=ji(d,Eo);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createCallExpression(h.expression,void 0,void 0);s.replaceNode(c,h.expression,_)}var nQt="addMissingResolutionModeImportAttribute",ban=[Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code,Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code];Gg({errorCodes:ban,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Ean(d,c.sourceFile,c.span.start,c.program,c.host,c.preferences));return[gg(nQt,g,Z.Add_resolution_mode_import_attribute,nQt,Z.Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it)]},fixIds:[nQt],getAllCodeActions:s=>Jd(s,ban,(c,g)=>Ean(c,g.file,g.start,s.program,s.host,s.preferences))});function Ean(s,c,g,d,h,_){var S,R,T;let O=Jc(c,g),V=ji(O,Qp(Yf,qm));pe.assert(!!V,"Expected position to be owned by an ImportDeclaration or ImportType.");let M=S1(c,_)===0,ee=UY(V),re=!ee||((S=OU(ee.text,c.fileName,d.getCompilerOptions(),h,d.getModuleResolutionCache(),void 0,99).resolvedModule)==null?void 0:S.resolvedFileName)===((T=(R=d.getResolvedModuleFromModuleSpecifier(ee,c))==null?void 0:R.resolvedModule)==null?void 0:T.resolvedFileName),ge=V.attributes?me.updateImportAttributes(V.attributes,me.createNodeArray([...V.attributes.elements,me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))],V.attributes.elements.hasTrailingComma),V.attributes.multiLine):me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))]));V.kind===273?s.replaceNode(c,V,me.updateImportDeclaration(V,V.modifiers,V.importClause,V.moduleSpecifier,ge)):s.replaceNode(c,V,me.updateImportTypeNode(V,V.argument,ge,V.qualifier,V.typeArguments))}var iQt="addNameToNamelessParameter",San=[Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];Gg({errorCodes:San,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>van(d,c.sourceFile,c.span.start));return[gg(iQt,g,Z.Add_parameter_name,iQt,Z.Add_names_to_all_parameters_without_names)]},fixIds:[iQt],getAllCodeActions:s=>Jd(s,San,(c,g)=>van(c,g.file,g.start))});function van(s,c,g){let d=Jc(c,g),h=d.parent;if(!Si(h))return pe.fail("Tried to add a parameter name to a non-parameter: "+pe.formatSyntaxKind(d.kind));let _=h.parent.parameters.indexOf(h);pe.assert(!h.type,"Tried to add a parameter name to a parameter that already had one."),pe.assert(_>-1,"Parameter not found in parent parameter list.");let S=h.name.getEnd(),R=me.createTypeReferenceNode(h.name,void 0),T=Ban(c,h);for(;T;)R=me.createArrayTypeNode(R),S=T.getEnd(),T=Ban(c,T);let O=me.createParameterDeclaration(h.modifiers,h.dotDotDotToken,"arg"+_,h.questionToken,h.dotDotDotToken&&!WF(R)?me.createArrayTypeNode(R):R,h.initializer);s.replaceRange(c,Ly(h.getStart(c),S),O)}function Ban(s,c){let g=wQ(c.name,c.parent,s);if(g&&g.kind===23&&m2(g.parent)&&Si(g.parent.parent))return g.parent.parent}var wan="addOptionalPropertyUndefined",oxs=[Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.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.code];Gg({errorCodes:oxs,getCodeActions(s){let c=s.program.getTypeChecker(),g=axs(s.sourceFile,s.span,c);if(!g.length)return;let d=xo.ChangeTracker.with(s,h=>lxs(h,g));return[gR(wan,d,Z.Add_undefined_to_optional_property_type)]},fixIds:[wan]});function axs(s,c,g){var d,h;let _=Tan(wnt(s,c),g);if(!_)return E;let{source:S,target:R}=_,T=cxs(S,R,g)?g.getTypeAtLocation(R.expression):g.getTypeAtLocation(R);return(h=(d=T.symbol)==null?void 0:d.declarations)!=null&&h.some(O=>ms(O).fileName.match(/\.d\.ts$/))?E:g.getExactOptionalProperties(T)}function cxs(s,c,g){return jo(c)&&!!g.getExactOptionalProperties(g.getTypeAtLocation(c.expression)).length&&g.getTypeAtLocation(s)===g.getUndefinedType()}function Tan(s,c){var g;if(s){if(po(s.parent)&&s.parent.operatorToken.kind===64)return{source:s.parent.right,target:s.parent.left};if(nc(s.parent)&&s.parent.initializer)return{source:s.parent.initializer,target:s.parent.name};if(Ll(s.parent)){let d=c.getSymbolAtLocation(s.parent.expression);if(!d?.valueDeclaration||!mW(d.valueDeclaration.kind)||!un(s))return;let h=s.parent.arguments.indexOf(s);if(h===-1)return;let _=d.valueDeclaration.parameters[h].name;if(Ir(_))return{source:s,target:_}}else if(Cm(s.parent)&&Ir(s.parent.name)||u0(s.parent)){let d=Tan(s.parent.parent,c);if(!d)return;let h=c.getPropertyOfType(c.getTypeAtLocation(d.target),s.parent.name.text),_=(g=h?.declarations)==null?void 0:g[0];return _?{source:Cm(s.parent)?s.parent.initializer:s.parent.name,target:_}:void 0}}else return}function lxs(s,c){for(let g of c){let d=g.valueDeclaration;if(d&&(ss(d)||pi(d))&&d.type){let h=me.createUnionTypeNode([...d.type.kind===193?d.type.types:[d.type],me.createTypeReferenceNode("undefined")]);s.replaceNode(d.getSourceFile(),d.type,h)}}}var sQt="annotateWithTypeFromJSDoc",Ran=[Z.JSDoc_types_may_be_moved_to_TypeScript_types.code];Gg({errorCodes:Ran,getCodeActions(s){let c=Nan(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,d=>xan(d,s.sourceFile,c));return[gg(sQt,g,Z.Annotate_with_type_from_JSDoc,sQt,Z.Annotate_everything_with_types_from_JSDoc)]},fixIds:[sQt],getAllCodeActions:s=>Jd(s,Ran,(c,g)=>{let d=Nan(g.file,g.start);d&&xan(c,g.file,d)})});function Nan(s,c){let g=Jc(s,c);return Gs(Si(g.parent)?g.parent.parent:g.parent,Dan)}function Dan(s){return uxs(s)&&kan(s)}function kan(s){return Gd(s)?s.parameters.some(kan)||!s.type&&!!BJ(s):!s.type&&!!oN(s)}function xan(s,c,g){if(Gd(g)&&(BJ(g)||g.parameters.some(d=>!!oN(d)))){if(!g.typeParameters){let h=TAe(g);h.length&&s.insertTypeParameters(c,g,h)}let d=gA(g)&&!ep(g,21,c);d&&s.insertNodeBefore(c,ma(g.parameters),me.createToken(21));for(let h of g.parameters)if(!h.type){let _=oN(h);_&&s.tryInsertTypeAnnotation(c,h,Mr(_,kQ,uc))}if(d&&s.insertNodeAfter(c,Ei(g.parameters),me.createToken(22)),!g.type){let h=BJ(g);h&&s.tryInsertTypeAnnotation(c,g,Mr(h,kQ,uc))}}else{let d=pe.checkDefined(oN(g),"A JSDocType for this declaration should exist");pe.assert(!g.type,"The JSDocType decl should have a type"),s.tryInsertTypeAnnotation(c,g,Mr(d,kQ,uc))}}function uxs(s){return Gd(s)||s.kind===261||s.kind===172||s.kind===173}function kQ(s){switch(s.kind){case 313:case 314:return me.createTypeReferenceNode("any",E);case 317:return Axs(s);case 316:return kQ(s.type);case 315:return dxs(s);case 319:return pxs(s);case 318:return fxs(s);case 184:return hxs(s);case 323:return gxs(s);default:let c=_s(s,kQ,void 0);return ti(c,1),c}}function gxs(s){let c=me.createTypeLiteralNode(lt(s.jsDocPropertyTags,g=>me.createPropertySignature(void 0,Ir(g.name)?g.name:g.name.right,gie(g)?me.createToken(58):void 0,g.typeExpression&&Mr(g.typeExpression.type,kQ,uc)||me.createKeywordTypeNode(133))));return ti(c,1),c}function Axs(s){return me.createUnionTypeNode([Mr(s.type,kQ,uc),me.createTypeReferenceNode("undefined",E)])}function dxs(s){return me.createUnionTypeNode([Mr(s.type,kQ,uc),me.createTypeReferenceNode("null",E)])}function pxs(s){return me.createArrayTypeNode(Mr(s.type,kQ,uc))}function fxs(s){return me.createFunctionTypeNode(E,s.parameters.map(Ixs),s.type??me.createKeywordTypeNode(133))}function Ixs(s){let c=s.parent.parameters.indexOf(s),g=s.type.kind===319&&c===s.parent.parameters.length-1,d=s.name||(g?"rest":"arg"+c),h=g?me.createToken(26):s.dotDotDotToken;return me.createParameterDeclaration(s.modifiers,h,d,s.questionToken,Mr(s.type,kQ,uc),s.initializer)}function hxs(s){let c=s.typeName,g=s.typeArguments;if(Ir(s.typeName)){if(AAe(s))return mxs(s);let d=s.typeName.text;switch(s.typeName.text){case"String":case"Boolean":case"Object":case"Number":d=d.toLowerCase();break;case"array":case"date":case"promise":d=d[0].toUpperCase()+d.slice(1);break}c=me.createIdentifier(d),(d==="Array"||d==="Promise")&&!s.typeArguments?g=me.createNodeArray([me.createTypeReferenceNode("any",E)]):g=Os(s.typeArguments,kQ,uc)}return me.createTypeReferenceNode(c,g)}function mxs(s){let c=me.createParameterDeclaration(void 0,void 0,s.typeArguments[0].kind===150?"n":"s",void 0,me.createTypeReferenceNode(s.typeArguments[0].kind===150?"number":"string",[]),void 0),g=me.createTypeLiteralNode([me.createIndexSignature(void 0,[c],s.typeArguments[1])]);return ti(g,1),g}var oQt="convertFunctionToEs6Class",Gan=[Z.This_constructor_function_may_be_converted_to_a_class_declaration.code];Gg({errorCodes:Gan,getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>Fan(g,s.sourceFile,s.span.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()));return[gg(oQt,c,Z.Convert_function_to_an_ES2015_class,oQt,Z.Convert_all_constructor_functions_to_classes)]},fixIds:[oQt],getAllCodeActions:s=>Jd(s,Gan,(c,g)=>Fan(c,g.file,g.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()))});function Fan(s,c,g,d,h,_){let S=d.getSymbolAtLocation(Jc(c,g));if(!S||!S.valueDeclaration||!(S.flags&19))return;let R=S.valueDeclaration;if(ah(R)||jA(R))s.replaceNode(c,R,V(R));else if(nc(R)){let M=O(R);if(!M)return;let ee=R.parent.parent;d_(R.parent)&&R.parent.declarations.length>1?(s.delete(c,R),s.insertNodeAfter(c,ee,M)):s.replaceNode(c,ee,M)}function T(M){let ee=[];return M.exports&&M.exports.forEach(Ie=>{if(Ie.name==="prototype"&&Ie.declarations){let _e=Ie.declarations[0];if(Ie.declarations.length===1&&jo(_e)&&po(_e.parent)&&_e.parent.operatorToken.kind===64&&ag(_e.parent.right)){let Ee=_e.parent.right;ge(Ee.symbol,void 0,ee)}}else ge(Ie,[me.createToken(126)],ee)}),M.members&&M.members.forEach((Ie,_e)=>{var Ee,Ne,Te,Ze;if(_e==="constructor"&&Ie.valueDeclaration){let Pe=(Ze=(Te=(Ne=(Ee=M.exports)==null?void 0:Ee.get("prototype"))==null?void 0:Ne.declarations)==null?void 0:Te[0])==null?void 0:Ze.parent;Pe&&po(Pe)&&ag(Pe.right)&&zt(Pe.right.properties,vit)||s.delete(c,Ie.valueDeclaration.parent);return}ge(Ie,void 0,ee)}),ee;function re(Ie,_e){return bp(Ie)?jo(Ie)&&vit(Ie)?!0:Eu(_e):ue(Ie.properties,Ee=>!!(gu(Ee)||RJ(Ee)||Cm(Ee)&&jA(Ee.initializer)&&Ee.name||vit(Ee)))}function ge(Ie,_e,Ee){if(!(Ie.flags&8192)&&!(Ie.flags&4096))return;let Ne=Ie.valueDeclaration,Te=Ne.parent,Ze=Te.right;if(!re(Ne,Ze)||zt(Ee,Tt=>{let at=fl(Tt);return!!(at&&Ir(at)&&Vo(at)===of(Ie))}))return;let Pe=Te.parent&&Te.parent.kind===245?Te.parent:Te;if(s.delete(c,Pe),!Ze){Ee.push(me.createPropertyDeclaration(_e,Ie.name,void 0,void 0,void 0));return}if(bp(Ne)&&(jA(Ze)||gA(Ze))){let Tt=S1(c,h),at=Cxs(Ne,_,Tt);at&&Ke(Ee,Ze,at);return}else if(ag(Ze)){F(Ze.properties,Tt=>{(gu(Tt)||RJ(Tt))&&Ee.push(Tt),Cm(Tt)&&jA(Tt.initializer)&&Ke(Ee,Tt.initializer,Tt.name),vit(Tt)});return}else{if(o0(c)||!jo(Ne))return;let Tt=me.createPropertyDeclaration(_e,Ne.name,void 0,void 0,Ze);lse(Te.parent,Tt,c),Ee.push(Tt);return}function Ke(Tt,at,Qe){return jA(at)?et(Tt,at,Qe):Ye(Tt,at,Qe)}function et(Tt,at,Qe){let Ct=Nn(_e,Sit(at,134)),mt=me.createMethodDeclaration(Ct,void 0,Qe,void 0,void 0,at.parameters,void 0,at.body);lse(Te,mt,c),Tt.push(mt)}function Ye(Tt,at,Qe){let Ct=at.body,mt;Ct.kind===242?mt=Ct:mt=me.createBlock([me.createReturnStatement(Ct)]);let yt=Nn(_e,Sit(at,134)),Rt=me.createMethodDeclaration(yt,void 0,Qe,void 0,void 0,at.parameters,void 0,mt);lse(Te,Rt,c),Tt.push(Rt)}}}function O(M){let ee=M.initializer;if(!ee||!jA(ee)||!Ir(M.name))return;let re=T(M.symbol);ee.body&&re.unshift(me.createConstructorDeclaration(void 0,ee.parameters,ee.body));let ge=Sit(M.parent.parent,95);return me.createClassDeclaration(ge,M.name,void 0,void 0,re)}function V(M){let ee=T(S);M.body&&ee.unshift(me.createConstructorDeclaration(void 0,M.parameters,M.body));let re=Sit(M,95);return me.createClassDeclaration(re,M.name,void 0,void 0,ee)}}function Sit(s,c){return HB(s)?Le(s.modifiers,g=>g.kind===c):void 0}function vit(s){return s.name?!!(Ir(s.name)&&s.name.text==="constructor"):!1}function Cxs(s,c,g){if(jo(s))return s.name;let d=s.argumentExpression;if(yC(d))return d;if(_A(d))return qh(d.text,Hg(c))?me.createIdentifier(d.text):HW(d)?me.createStringLiteral(d.text,g===0):d}var aQt="convertToAsyncFunction",Zan=[Z.This_may_be_converted_to_an_async_function.code],Bit=!0;Gg({errorCodes:Zan,getCodeActions(s){Bit=!0;let c=xo.ChangeTracker.with(s,g=>Lan(g,s.sourceFile,s.span.start,s.program.getTypeChecker()));return Bit?[gg(aQt,c,Z.Convert_to_async_function,aQt,Z.Convert_all_to_async_functions)]:[]},fixIds:[aQt],getAllCodeActions:s=>Jd(s,Zan,(c,g)=>Lan(c,g.file,g.start,s.program.getTypeChecker()))});function Lan(s,c,g,d){let h=Jc(c,g),_;if(Ir(h)&&nc(h.parent)&&h.parent.initializer&&Gd(h.parent.initializer)?_=h.parent.initializer:_=Gs(I1(Jc(c,g)),Unt),!_)return;let S=new Map,R=Bo(_),T=yxs(_,d),O=bxs(_,d,S);if(!Xnt(O,d))return;let V=O.body&&eg(O.body)?_xs(O.body,d):E,M={checker:d,synthNamesMap:S,setOfExpressionsToReturn:T,isInJSFile:R};if(!V.length)return;let ee=Yu(c.text,hv(_).pos);s.insertModifierAt(c,ee,134,{suffix:" "});for(let re of V)if(Lu(re,function ge(Ie){if(Ll(Ie)){let _e=Ise(Ie,Ie,M,!1);if(oq())return!0;s.replaceNodeWithNodes(c,re,_e)}else if(!Eu(Ie)&&(Lu(Ie,ge),oq()))return!0}),oq())return}function _xs(s,c){let g=[];return TF(s,d=>{OWe(d,c)&&g.push(d)}),g}function yxs(s,c){if(!s.body)return new Set;let g=new Set;return Lu(s.body,function d(h){r2e(h,c,"then")?(g.add(id(h)),F(h.arguments,d)):r2e(h,c,"catch")||r2e(h,c,"finally")?(g.add(id(h)),Lu(h,d)):Wan(h,c)?g.add(id(h)):Lu(h,d)}),g}function r2e(s,c,g){if(!Ll(s))return!1;let h=w1e(s,g)&&c.getTypeAtLocation(s);return!!(h&&c.getPromisedTypeOfPromise(h))}function Van(s,c){return(la(s)&4)!==0&&s.target===c}function wit(s,c,g){if(s.expression.name.escapedText==="finally")return;let d=g.getTypeAtLocation(s.expression.expression);if(Van(d,g.getPromiseType())||Van(d,g.getPromiseLikeType()))if(s.expression.name.escapedText==="then"){if(c===_g(s.arguments,0))return _g(s.typeArguments,0);if(c===_g(s.arguments,1))return _g(s.typeArguments,1)}else return _g(s.typeArguments,0)}function Wan(s,c){return un(s)?!!c.getPromisedTypeOfPromise(c.getTypeAtLocation(s)):!1}function bxs(s,c,g){let d=new Map,h=Al();return Lu(s,function _(S){if(!Ir(S)){Lu(S,_);return}let R=c.getSymbolAtLocation(S);if(R){let T=c.getTypeAtLocation(S),O=Qan(T,c),V=xg(R).toString();if(O&&!Si(S.parent)&&!Gd(S.parent)&&!g.has(V)){let M=Nc(O.parameters),ee=M?.valueDeclaration&&Si(M.valueDeclaration)&&Gs(M.valueDeclaration.name,Ir)||me.createUniqueName("result",16),re=Oan(ee,h);g.set(V,re),h.add(ee.text,R)}else if(S.parent&&(Si(S.parent)||nc(S.parent)||mg(S.parent))){let M=S.text,ee=h.get(M);if(ee&&ee.some(re=>re!==R)){let re=Oan(S,h);d.set(V,re.identifier),g.set(V,re),h.add(M,R)}else{let re=KA(S);g.set(V,bpe(re)),h.add(M,R)}}}}),hie(s,!0,_=>{if(mg(_)&&Ir(_.name)&&$m(_.parent)){let S=c.getSymbolAtLocation(_.name),R=S&&d.get(String(xg(S)));if(R&&R.text!==(_.name||_.propertyName).getText())return me.createBindingElement(_.dotDotDotToken,_.propertyName||_.name,R,_.initializer)}else if(Ir(_)){let S=c.getSymbolAtLocation(_),R=S&&d.get(String(xg(S)));if(R)return me.createIdentifier(R.text)}})}function Oan(s,c){let g=(c.get(s.text)||E).length,d=g===0?s:me.createIdentifier(s.text+"_"+g);return bpe(d)}function oq(){return!Bit}function u5(){return Bit=!1,E}function Ise(s,c,g,d,h){if(r2e(c,g.checker,"then"))return vxs(c,_g(c.arguments,0),_g(c.arguments,1),g,d,h);if(r2e(c,g.checker,"catch"))return Han(c,_g(c.arguments,0),g,d,h);if(r2e(c,g.checker,"finally"))return Sxs(c,_g(c.arguments,0),g,d,h);if(jo(c))return Ise(s,c.expression,g,d,h);let _=g.checker.getTypeAtLocation(c);return _&&g.checker.getPromisedTypeOfPromise(_)?(pe.assertNode(xd(c).parent,jo),Bxs(s,c,g,d,h)):u5()}function Tit({checker:s},c){if(c.kind===106)return!0;if(Ir(c)&&!Gp(c)&&Vo(c)==="undefined"){let g=s.getSymbolAtLocation(c);return!g||s.isUndefinedSymbol(g)}return!1}function Exs(s){let c=me.createUniqueName(s.identifier.text,16);return bpe(c)}function Pan(s,c,g){let d;return g&&!i2e(s,c)&&(n2e(g)?(d=g,c.synthNamesMap.forEach((h,_)=>{if(h.identifier.text===g.identifier.text){let S=Exs(g);c.synthNamesMap.set(_,S)}})):d=bpe(me.createUniqueName("result",16),g.types),gQt(d)),d}function Man(s,c,g,d,h){let _=[],S;if(d&&!i2e(s,c)){S=KA(gQt(d));let R=d.types,T=c.checker.getUnionType(R,2),O=c.isInJSFile?void 0:c.checker.typeToTypeNode(T,void 0,void 0),V=[me.createVariableDeclaration(S,void 0,O)],M=me.createVariableStatement(void 0,me.createVariableDeclarationList(V,1));_.push(M)}return _.push(g),h&&S&&Rxs(h)&&_.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(KA(Kan(h)),void 0,void 0,S)],2))),_}function Sxs(s,c,g,d,h){if(!c||Tit(g,c))return Ise(s,s.expression.expression,g,d,h);let _=Pan(s,g,h),S=Ise(s,s.expression.expression,g,!0,_);if(oq())return u5();let R=lQt(c,d,void 0,void 0,s,g);if(oq())return u5();let T=me.createBlock(S),O=me.createBlock(R),V=me.createTryStatement(T,void 0,O);return Man(s,g,V,_,h)}function Han(s,c,g,d,h){if(!c||Tit(g,c))return Ise(s,s.expression.expression,g,d,h);let _=Jan(c,g),S=Pan(s,g,h),R=Ise(s,s.expression.expression,g,!0,S);if(oq())return u5();let T=lQt(c,d,S,_,s,g);if(oq())return u5();let O=me.createBlock(R),V=me.createCatchClause(_&&KA(nOe(_)),me.createBlock(T)),M=me.createTryStatement(O,V,void 0);return Man(s,g,M,S,h)}function vxs(s,c,g,d,h,_){if(!c||Tit(d,c))return Han(s,g,d,h,_);if(g&&!Tit(d,g))return u5();let S=Jan(c,d),R=Ise(s.expression.expression,s.expression.expression,d,!0,S);if(oq())return u5();let T=lQt(c,h,_,S,s,d);return oq()?u5():Nn(R,T)}function Bxs(s,c,g,d,h){if(i2e(s,g)){let _=KA(c);return d&&(_=me.createAwaitExpression(_)),[me.createReturnStatement(_)]}return Rit(h,me.createAwaitExpression(c),void 0)}function Rit(s,c,g){return!s||Uan(s)?[me.createExpressionStatement(c)]:n2e(s)&&s.hasBeenDeclared?[me.createExpressionStatement(me.createAssignment(KA(uQt(s)),c))]:[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(KA(nOe(s)),void 0,g,c)],2))]}function cQt(s,c){if(c&&s){let g=me.createUniqueName("result",16);return[...Rit(bpe(g),s,c),me.createReturnStatement(g)]}return[me.createReturnStatement(s)]}function lQt(s,c,g,d,h,_){var S;switch(s.kind){case 106:break;case 212:case 80:if(!d)break;let R=me.createCallExpression(KA(s),void 0,n2e(d)?[uQt(d)]:[]);if(i2e(h,_))return cQt(R,wit(h,s,_.checker));let T=_.checker.getTypeAtLocation(s),O=_.checker.getSignaturesOfType(T,0);if(!O.length)return u5();let V=O[0].getReturnType(),M=Rit(g,me.createAwaitExpression(R),wit(h,s,_.checker));return g&&g.types.push(_.checker.getAwaitedType(V)||V),M;case 219:case 220:{let ee=s.body,re=(S=Qan(_.checker.getTypeAtLocation(s),_.checker))==null?void 0:S.getReturnType();if(eg(ee)){let ge=[],Ie=!1;for(let _e of ee.statements)if(_2(_e))if(Ie=!0,OWe(_e,_.checker))ge=ge.concat(Xan(_,_e,c,g));else{let Ee=re&&_e.expression?Yan(_.checker,re,_e.expression):_e.expression;ge.push(...cQt(Ee,wit(h,s,_.checker)))}else{if(c&&TF(_e,Nf))return u5();ge.push(_e)}return i2e(h,_)?ge.map(_e=>KA(_e)):wxs(ge,g,_,Ie)}else{let ge=Jnt(ee,_.checker)?Xan(_,me.createReturnStatement(ee),c,g):E;if(ge.length>0)return ge;if(re){let Ie=Yan(_.checker,re,ee);if(i2e(h,_))return cQt(Ie,wit(h,s,_.checker));{let _e=Rit(g,Ie,void 0);return g&&g.types.push(_.checker.getAwaitedType(re)||re),_e}}else return u5()}}default:return u5()}return E}function Yan(s,c,g){let d=KA(g);return s.getPromisedTypeOfPromise(c)?me.createAwaitExpression(d):d}function Qan(s,c){let g=c.getSignaturesOfType(s,0);return li(g)}function wxs(s,c,g,d){let h=[];for(let _ of s)if(_2(_)){if(_.expression){let S=Wan(_.expression,g.checker)?me.createAwaitExpression(_.expression):_.expression;c===void 0?h.push(me.createExpressionStatement(S)):n2e(c)&&c.hasBeenDeclared?h.push(me.createExpressionStatement(me.createAssignment(uQt(c),S))):h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(nOe(c),void 0,void 0,S)],2)))}}else h.push(KA(_));return!d&&c!==void 0&&h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(nOe(c),void 0,void 0,me.createIdentifier("undefined"))],2))),h}function Xan(s,c,g,d){let h=[];return Lu(c,function _(S){if(Ll(S)){let R=Ise(S,S,s,g,d);if(h=h.concat(R),h.length>0)return}else Eu(S)||Lu(S,_)}),h}function Jan(s,c){let g=[],d;if(Gd(s)){if(s.parameters.length>0){let T=s.parameters[0].name;d=h(T)}}else Ir(s)?d=_(s):jo(s)&&Ir(s.name)&&(d=_(s.name));if(!d||"identifier"in d&&d.identifier.text==="undefined")return;return d;function h(T){if(Ir(T))return _(T);let O=jt(T.elements,V=>Ep(V)?[]:[h(V.name)]);return Txs(T,O)}function _(T){let O=R(T),V=S(O);return V&&c.synthNamesMap.get(xg(V).toString())||bpe(T,g)}function S(T){var O;return((O=Gs(T,bE))==null?void 0:O.symbol)??c.checker.getSymbolAtLocation(T)}function R(T){return T.original?T.original:T}}function Uan(s){return s?n2e(s)?!s.identifier.text:ue(s.elements,Uan):!0}function bpe(s,c=[]){return{kind:0,identifier:s,types:c,hasBeenDeclared:!1,hasBeenReferenced:!1}}function Txs(s,c=E,g=[]){return{kind:1,bindingPattern:s,elements:c,types:g}}function uQt(s){return s.hasBeenReferenced=!0,s.identifier}function nOe(s){return n2e(s)?gQt(s):Kan(s)}function Kan(s){for(let c of s.elements)nOe(c);return s.bindingPattern}function gQt(s){return s.hasBeenDeclared=!0,s.identifier}function n2e(s){return s.kind===0}function Rxs(s){return s.kind===1}function i2e(s,c){return!!s.original&&c.setOfExpressionsToReturn.has(id(s.original))}Gg({errorCodes:[Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(s){let{sourceFile:c,program:g,preferences:d}=s,h=xo.ChangeTracker.with(s,_=>{if(Dxs(c,g.getTypeChecker(),_,Hg(g.getCompilerOptions()),S1(c,d)))for(let R of g.getSourceFiles())Nxs(R,c,g,_,S1(R,d))});return[gR("convertToEsModule",h,Z.Convert_to_ES_module)]}});function Nxs(s,c,g,d,h){var _;for(let S of s.imports){let R=(_=g.getResolvedModuleFromModuleSpecifier(S,s))==null?void 0:_.resolvedModule;if(!R||R.resolvedFileName!==c.fileName)continue;let T=O7(S);switch(T.kind){case 272:d.replaceNode(s,T,eO(T.name,void 0,S,h));break;case 214:uy(T,!1)&&d.replaceNode(s,T,me.createPropertyAccessExpression(KA(T),"default"));break}}}function Dxs(s,c,g,d,h){let _={original:Yxs(s),additional:new Set},S=kxs(s,c,_);xxs(s,S,g);let R=!1,T;for(let O of Le(s.statements,Eh)){let V=zan(s,O,g,c,_,d,h);V&&b7(V,T??(T=new Map))}for(let O of Le(s.statements,V=>!Eh(V))){let V=Gxs(s,O,c,g,_,d,S,T,h);R=R||V}return T?.forEach((O,V)=>{g.replaceNode(s,V,O)}),R}function kxs(s,c,g){let d=new Map;return jan(s,h=>{let{text:_}=h.name;!d.has(_)&&(ebe(h.name)||c.resolveName(_,h,111551,!0))&&d.set(_,Nit(`_${_}`,g))}),d}function xxs(s,c,g){jan(s,(d,h)=>{if(h)return;let{text:_}=d.name;g.replaceNode(s,d,me.createIdentifier(c.get(_)||_))})}function jan(s,c){s.forEachChild(function g(d){if(jo(d)&&_Q(s,d.expression)&&Ir(d.name)){let{parent:h}=d;c(d,po(h)&&h.left===d&&h.operatorToken.kind===64)}d.forEachChild(g)})}function Gxs(s,c,g,d,h,_,S,R,T){switch(c.kind){case 244:return zan(s,c,d,g,h,_,T),!1;case 245:{let{expression:O}=c;switch(O.kind){case 214:return uy(O,!0)&&d.replaceNode(s,c,eO(void 0,void 0,O.arguments[0],T)),!1;case 227:{let{operatorToken:V}=O;return V.kind===64&&Zxs(s,g,O,d,S,R)}}}default:return!1}}function zan(s,c,g,d,h,_,S){let{declarationList:R}=c,T=!1,O=lt(R.declarations,V=>{let{name:M,initializer:ee}=V;if(ee){if(_Q(s,ee))return T=!0,Epe([]);if(uy(ee,!0))return T=!0,Mxs(M,ee.arguments[0],d,h,_,S);if(jo(ee)&&uy(ee.expression,!0))return T=!0,Fxs(M,ee.name.text,ee.expression.arguments[0],h,S)}return Epe([me.createVariableStatement(void 0,me.createVariableDeclarationList([V],R.flags))])});if(T){g.replaceNodeWithNodes(s,c,jt(O,M=>M.newImports));let V;return F(O,M=>{M.useSitesToUnqualify&&b7(M.useSitesToUnqualify,V??(V=new Map))}),V}}function Fxs(s,c,g,d,h){switch(s.kind){case 207:case 208:{let _=Nit(c,d);return Epe([tcn(_,c,g,h),Dit(void 0,s,me.createIdentifier(_))])}case 80:return Epe([tcn(s.text,c,g,h)]);default:return pe.assertNever(s,`Convert to ES module got invalid syntax form ${s.kind}`)}}function Zxs(s,c,g,d,h,_){let{left:S,right:R}=g;if(!jo(S))return!1;if(_Q(s,S))if(_Q(s,R))d.delete(s,g.parent);else{let T=ag(R)?Lxs(R,_):uy(R,!0)?Wxs(R.arguments[0],c):void 0;return T?(d.replaceNodeWithNodes(s,g.parent,T[0]),T[1]):(d.replaceRangeWithText(s,Ly(S.getStart(s),R.pos),"export default"),!0)}else _Q(s,S.expression)&&Vxs(s,g,d,h);return!1}function Lxs(s,c){let g=$t(s.properties,d=>{switch(d.kind){case 178:case 179:case 305:case 306:return;case 304:return Ir(d.name)?Pxs(d.name.text,d.initializer,c):void 0;case 175:return Ir(d.name)?ecn(d.name.text,[me.createToken(95)],d,c):void 0;default:pe.assertNever(d,`Convert to ES6 got invalid prop kind ${d.kind}`)}});return g&&[g,!1]}function Vxs(s,c,g,d){let{text:h}=c.left.name,_=d.get(h);if(_!==void 0){let S=[Dit(void 0,_,c.right),pQt([me.createExportSpecifier(!1,_,h)])];g.replaceNodeWithNodes(s,c.parent,S)}else Oxs(c,s,g)}function Wxs(s,c){let g=s.text,d=c.getSymbolAtLocation(s),h=d?d.exports:N;return h.has("export=")?[[AQt(g)],!0]:h.has("default")?h.size>1?[[qan(g),AQt(g)],!0]:[[AQt(g)],!0]:[[qan(g)],!1]}function qan(s){return pQt(void 0,s)}function AQt(s){return pQt([me.createExportSpecifier(!1,void 0,"default")],s)}function Oxs({left:s,right:c,parent:g},d,h){let _=s.name.text;if((jA(c)||gA(c)||wd(c))&&(!c.name||c.name.text===_)){h.replaceRange(d,{pos:s.getStart(d),end:c.getStart(d)},me.createToken(95),{suffix:" "}),c.name||h.insertName(d,c,_);let S=ep(g,27,d);S&&h.delete(d,S)}else h.replaceNodeRangeWithNodes(d,s.expression,ep(s,25,d),[me.createToken(95),me.createToken(87)],{joiner:" ",suffix:" "})}function Pxs(s,c,g){let d=[me.createToken(95)];switch(c.kind){case 219:{let{name:_}=c;if(_&&_.text!==s)return h()}case 220:return ecn(s,d,c,g);case 232:return Xxs(s,d,c,g);default:return h()}function h(){return Dit(d,me.createIdentifier(s),dQt(c,g))}}function dQt(s,c){if(!c||!zt(Do(c.keys()),d=>gy(s,d)))return s;return Ki(s)?Ide(s,!0,g):hie(s,!0,g);function g(d){if(d.kind===212){let h=c.get(d);return c.delete(d),h}}}function Mxs(s,c,g,d,h,_){switch(s.kind){case 207:{let S=$t(s.elements,R=>R.dotDotDotToken||R.initializer||R.propertyName&&!Ir(R.propertyName)||!Ir(R.name)?void 0:rcn(R.propertyName&&R.propertyName.text,R.name.text));if(S)return Epe([eO(void 0,S,c,_)])}case 208:{let S=Nit(Y1e(c.text,h),d);return Epe([eO(me.createIdentifier(S),void 0,c,_),Dit(void 0,KA(s),me.createIdentifier(S))])}case 80:return Hxs(s,c,g,d,_);default:return pe.assertNever(s,`Convert to ES module got invalid name kind ${s.kind}`)}}function Hxs(s,c,g,d,h){let _=g.getSymbolAtLocation(s),S=new Map,R=!1,T;for(let V of d.original.get(s.text)){if(g.getSymbolAtLocation(V)!==_||V===s)continue;let{parent:M}=V;if(jo(M)){let{name:{text:ee}}=M;if(ee==="default"){R=!0;let re=V.getText();(T??(T=new Map)).set(M,me.createIdentifier(re))}else{pe.assert(M.expression===V,"Didn't expect expression === use");let re=S.get(ee);re===void 0&&(re=Nit(ee,d),S.set(ee,re)),(T??(T=new Map)).set(M,me.createIdentifier(re))}}else R=!0}let O=S.size===0?void 0:Do(Ot(S.entries(),([V,M])=>me.createImportSpecifier(!1,V===M?void 0:me.createIdentifier(V),me.createIdentifier(M))));return O||(R=!0),Epe([eO(R?KA(s):void 0,O,c,h)],T)}function Nit(s,c){for(;c.original.has(s)||c.additional.has(s);)s=`_${s}`;return c.additional.add(s),s}function Yxs(s){let c=Al();return $an(s,g=>c.add(g.text,g)),c}function $an(s,c){Ir(s)&&Qxs(s)&&c(s),s.forEachChild(g=>$an(g,c))}function Qxs(s){let{parent:c}=s;switch(c.kind){case 212:return c.name!==s;case 209:return c.propertyName!==s;case 277:return c.propertyName!==s;default:return!0}}function ecn(s,c,g,d){return me.createFunctionDeclaration(Nn(c,l0(g.modifiers)),KA(g.asteriskToken),s,l0(g.typeParameters),l0(g.parameters),KA(g.type),me.converters.convertToFunctionBlock(dQt(g.body,d)))}function Xxs(s,c,g,d){return me.createClassDeclaration(Nn(c,l0(g.modifiers)),s,l0(g.typeParameters),l0(g.heritageClauses),dQt(g.members,d))}function tcn(s,c,g,d){return c==="default"?eO(me.createIdentifier(s),void 0,g,d):eO(void 0,[rcn(c,s)],g,d)}function rcn(s,c){return me.createImportSpecifier(!1,s!==void 0&&s!==c?me.createIdentifier(s):void 0,me.createIdentifier(c))}function Dit(s,c,g){return me.createVariableStatement(s,me.createVariableDeclarationList([me.createVariableDeclaration(c,void 0,void 0,g)],2))}function pQt(s,c){return me.createExportDeclaration(void 0,!1,s&&me.createNamedExports(s),c===void 0?void 0:me.createStringLiteral(c))}function Epe(s,c){return{newImports:s,useSitesToUnqualify:c}}var fQt="correctQualifiedNameToIndexedAccessType",ncn=[Z.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.code];Gg({errorCodes:ncn,getCodeActions(s){let c=icn(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,h=>scn(h,s.sourceFile,c)),d=`${c.left.text}["${c.right.text}"]`;return[gg(fQt,g,[Z.Rewrite_as_the_indexed_access_type_0,d],fQt,Z.Rewrite_all_as_indexed_access_types)]},fixIds:[fQt],getAllCodeActions:s=>Jd(s,ncn,(c,g)=>{let d=icn(g.file,g.start);d&&scn(c,g.file,d)})});function icn(s,c){let g=ji(Jc(s,c),zi);return pe.assert(!!g,"Expected position to be owned by a qualified name."),Ir(g.left)?g:void 0}function scn(s,c,g){let d=g.right.text,h=me.createIndexedAccessTypeNode(me.createTypeReferenceNode(g.left,void 0),me.createLiteralTypeNode(me.createStringLiteral(d)));s.replaceNode(c,g,h)}var IQt=[Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],hQt="convertToTypeOnlyExport";Gg({errorCodes:IQt,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>acn(d,ocn(c.span,c.sourceFile),c));if(g.length)return[gg(hQt,g,Z.Convert_to_type_only_export,hQt,Z.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[hQt],getAllCodeActions:function(c){let g=new Set;return Jd(c,IQt,(d,h)=>{let _=ocn(h,c.sourceFile);_&&Wy(g,id(_.parent.parent))&&acn(d,_,c)})}});function ocn(s,c){return Gs(Jc(c,s.start).parent,k0)}function acn(s,c,g){if(!c)return;let d=c.parent,h=d.parent,_=Jxs(c,g);if(_.length===d.elements.length)s.insertModifierBefore(g.sourceFile,156,d);else{let S=me.updateExportDeclaration(h,h.modifiers,!1,me.updateNamedExports(d,Le(d.elements,T=>!k(_,T))),h.moduleSpecifier,void 0),R=me.createExportDeclaration(void 0,!0,me.createNamedExports(_),h.moduleSpecifier,void 0);s.replaceNode(g.sourceFile,h,S,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Exclude}),s.insertNodeAfter(g.sourceFile,h,R)}}function Jxs(s,c){let g=s.parent;if(g.elements.length===1)return g.elements;let d=rHt(Yy(g),c.program.getSemanticDiagnostics(c.sourceFile,c.cancellationToken));return Le(g.elements,h=>{var _;return h===s||((_=tHt(h,d))==null?void 0:_.code)===IQt[0]})}var ccn=[Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],kit="convertToTypeOnlyImport";Gg({errorCodes:ccn,getCodeActions:function(c){var g;let d=lcn(c.sourceFile,c.span.start);if(d){let h=xo.ChangeTracker.with(c,R=>iOe(R,c.sourceFile,d)),_=d.kind===277&&Yf(d.parent.parent.parent)&&ucn(d,c.sourceFile,c.program)?xo.ChangeTracker.with(c,R=>iOe(R,c.sourceFile,d.parent.parent.parent)):void 0,S=gg(kit,h,d.kind===277?[Z.Use_type_0,((g=d.propertyName)==null?void 0:g.text)??d.name.text]:Z.Use_import_type,kit,Z.Fix_all_with_type_only_imports);return zt(_)?[gR(kit,_,Z.Use_import_type),S]:[S]}},fixIds:[kit],getAllCodeActions:function(c){let g=new Set;return Jd(c,ccn,(d,h)=>{let _=lcn(h.file,h.start);_?.kind===273&&!g.has(_)?(iOe(d,h.file,_),g.add(_)):_?.kind===277&&Yf(_.parent.parent.parent)&&!g.has(_.parent.parent.parent)&&ucn(_,h.file,c.program)?(iOe(d,h.file,_.parent.parent.parent),g.add(_.parent.parent.parent)):_?.kind===277&&iOe(d,h.file,_)})}});function lcn(s,c){let{parent:g}=Jc(s,c);return dy(g)||Yf(g)&&g.importClause?g:void 0}function ucn(s,c,g){if(s.parent.parent.name)return!1;let d=s.parent.elements.filter(_=>!_.isTypeOnly);if(d.length===1)return!0;let h=g.getTypeChecker();for(let _ of d)if(zp.Core.eachSymbolReferenceInFile(_.name,h,c,R=>{let T=h.getSymbolAtLocation(R);return!!T&&h.symbolIsValue(T)||!e9(R)}))return!1;return!0}function iOe(s,c,g){var d;if(dy(g))s.replaceNode(c,g,me.updateImportSpecifier(g,!0,g.propertyName,g.name));else{let h=g.importClause;if(h.name&&h.namedBindings)s.replaceNodeWithNodes(c,g,[me.createImportDeclaration(l0(g.modifiers,!0),me.createImportClause(156,KA(h.name,!0),void 0),KA(g.moduleSpecifier,!0),KA(g.attributes,!0)),me.createImportDeclaration(l0(g.modifiers,!0),me.createImportClause(156,void 0,KA(h.namedBindings,!0)),KA(g.moduleSpecifier,!0),KA(g.attributes,!0))]);else{let _=((d=h.namedBindings)==null?void 0:d.kind)===276?me.updateNamedImports(h.namedBindings,Er(h.namedBindings.elements,R=>me.updateImportSpecifier(R,!1,R.propertyName,R.name))):h.namedBindings,S=me.updateImportDeclaration(g,g.modifiers,me.updateImportClause(h,156,h.name,_),g.moduleSpecifier,g.attributes);s.replaceNode(c,g,S)}}}var mQt="convertTypedefToType",gcn=[Z.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];Gg({fixIds:[mQt],errorCodes:gcn,getCodeActions(s){let c=UF(s.host,s.formatContext.options),g=Jc(s.sourceFile,s.span.start);if(!g)return;let d=xo.ChangeTracker.with(s,h=>Acn(h,g,s.sourceFile,c));if(d.length>0)return[gg(mQt,d,Z.Convert_typedef_to_TypeScript_type,mQt,Z.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:s=>Jd(s,gcn,(c,g)=>{let d=UF(s.host,s.formatContext.options),h=Jc(g.file,g.start);h&&Acn(c,h,g.file,d,!0)})});function Acn(s,c,g,d,h=!1){if(!ZU(c))return;let _=Kxs(c);if(!_)return;let S=c.parent,{leftSibling:R,rightSibling:T}=Uxs(c),O=S.getStart(),V="";!R&&S.comment&&(O=dcn(S,S.getStart(),c.getStart()),V=`${d} */${d}`),R&&(h&&ZU(R)?(O=c.getStart(),V=""):(O=dcn(S,R.getStart(),c.getStart()),V=`${d} */${d}`));let M=S.getEnd(),ee="";T&&(h&&ZU(T)?(M=T.getStart(),ee=`${d}${d}`):(M=T.getStart(),ee=`${d}/**${d} * `)),s.replaceRange(g,{pos:O,end:M},_,{prefix:V,suffix:ee})}function Uxs(s){let c=s.parent,g=c.getChildCount()-1,d=c.getChildren().findIndex(S=>S.getStart()===s.getStart()&&S.getEnd()===s.getEnd()),h=d>0?c.getChildAt(d-1):void 0,_=d0;h--)if(!/[*/\s]/.test(d.substring(h-1,h)))return c+h;return g}function Kxs(s){var c;let{typeExpression:g}=s;if(!g)return;let d=(c=s.name)==null?void 0:c.getText();if(d){if(g.kind===323)return jxs(d,g);if(g.kind===310)return zxs(d,g)}}function jxs(s,c){let g=pcn(c);if(zt(g))return me.createInterfaceDeclaration(void 0,s,void 0,void 0,g)}function zxs(s,c){let g=KA(c.type);if(g)return me.createTypeAliasDeclaration(void 0,me.createIdentifier(s),void 0,g)}function pcn(s){let c=s.jsDocPropertyTags;return zt(c)?Xt(c,d=>{var h;let _=qxs(d),S=(h=d.typeExpression)==null?void 0:h.type,R=d.isBracketed,T;if(S&&FU(S)){let O=pcn(S);T=me.createTypeLiteralNode(O)}else S&&(T=KA(S));if(T&&_){let O=R?me.createToken(58):void 0;return me.createPropertySignature(void 0,_,O,T)}}):void 0}function qxs(s){return s.name.kind===80?s.name.text:s.name.right.text}function $xs(s){return jm(s)?jt(s.jsDoc,c=>{var g;return(g=c.tags)==null?void 0:g.filter(d=>ZU(d))}):[]}var CQt="convertLiteralTypeToMappedType",fcn=[Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];Gg({errorCodes:fcn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Icn(g,d.start);if(!h)return;let{name:_,constraint:S}=h,R=xo.ChangeTracker.with(c,T=>hcn(T,g,h));return[gg(CQt,R,[Z.Convert_0_to_1_in_0,S,_],CQt,Z.Convert_all_type_literals_to_mapped_type)]},fixIds:[CQt],getAllCodeActions:s=>Jd(s,fcn,(c,g)=>{let d=Icn(g.file,g.start);d&&hcn(c,g.file,d)})});function Icn(s,c){let g=Jc(s,c);if(Ir(g)){let d=Ma(g.parent.parent,ss),h=g.getText(s);return{container:Ma(d.parent,bh),typeNode:d.type,constraint:h,name:h==="K"?"P":"K"}}}function hcn(s,c,{container:g,typeNode:d,constraint:h,name:_}){s.replaceNode(c,g,me.createMappedTypeNode(void 0,me.createTypeParameterDeclaration(void 0,_,me.createTypeReferenceNode(h)),void 0,void 0,d,void 0))}var mcn=[Z.Class_0_incorrectly_implements_interface_1.code,Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],_Qt="fixClassIncorrectlyImplementsInterface";Gg({errorCodes:mcn,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Ccn(c,g.start);return Xt(uU(d),h=>{let _=xo.ChangeTracker.with(s,S=>ycn(s,h,c,d,S,s.preferences));return _.length===0?void 0:gg(_Qt,_,[Z.Implement_interface_0,h.getText(c)],_Qt,Z.Implement_all_unimplemented_interfaces)})},fixIds:[_Qt],getAllCodeActions(s){let c=new Set;return Jd(s,mcn,(g,d)=>{let h=Ccn(d.file,d.start);if(Wy(c,id(h)))for(let _ of uU(h))ycn(s,_,d.file,h,g,s.preferences)})}});function Ccn(s,c){return pe.checkDefined(_C(Jc(s,c)),"There should be a containing class")}function _cn(s){return!s.valueDeclaration||!(l_(s.valueDeclaration)&2)}function ycn(s,c,g,d,h,_){let S=s.program.getTypeChecker(),R=eGs(d,S),T=S.getTypeAtLocation(c),V=S.getPropertiesOfType(T).filter(hh(_cn,_e=>!R.has(_e.escapedName))),M=S.getTypeAtLocation(d),ee=de(d.members,_e=>Tc(_e));M.getNumberIndexType()||ge(T,1),M.getStringIndexType()||ge(T,0);let re=xQ(g,s.program,_,s.host);dXt(d,V,g,s,_,re,_e=>Ie(g,d,_e)),re.writeFixes(h);function ge(_e,Ee){let Ne=S.getIndexInfoOfType(_e,Ee);Ne&&Ie(g,d,S.indexInfoToIndexSignatureDeclaration(Ne,d,void 0,void 0,hse(s)))}function Ie(_e,Ee,Ne){ee?h.insertNodeAfter(_e,ee,Ne):h.insertMemberAtStart(_e,Ee,Ne)}}function eGs(s,c){let g=kB(s);if(!g)return $u();let d=c.getTypeAtLocation(g),h=c.getPropertiesOfType(d);return $u(h.filter(_cn))}var bcn="import",Ecn="fixMissingImport",Scn=[Z.Cannot_find_name_0.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z.Cannot_find_namespace_0.code,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,Z.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.code,Z.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,Z.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.code,Z.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.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,Z.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.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code,Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found.code];Gg({errorCodes:Scn,getCodeActions(s){let{errorCode:c,preferences:g,sourceFile:d,span:h,program:_}=s,S=Ncn(s,c,h.start,!0);if(S)return S.map(({fix:R,symbolName:T,errorIdentifierText:O})=>EQt(s,d,T,R,T!==O,_,g))},fixIds:[Ecn],getAllCodeActions:s=>{let{sourceFile:c,program:g,preferences:d,host:h,cancellationToken:_}=s,S=vcn(c,g,!0,d,h,_);return sq(s,Scn,R=>S.addImportFromDiagnostic(R,s)),iq(xo.ChangeTracker.with(s,S.writeFixes))}});function xQ(s,c,g,d,h){return vcn(s,c,!1,g,d,h)}function vcn(s,c,g,d,h,_){let S=c.getCompilerOptions(),R=[],T=[],O=new Map,V=new Set,M=new Set,ee=new Map;return{addImportFromDiagnostic:Ie,addImportFromExportedSymbol:_e,addImportForModuleSymbol:Ee,writeFixes:Pe,hasFixes:et,addImportForUnresolvedIdentifier:ge,addImportForNonExistentExport:Ne,removeExistingImport:Te,addVerbatimImport:re};function re(Ye){M.add(Ye)}function ge(Ye,Tt,at){let Qe=gGs(Ye,Tt,at);!Qe||!Qe.length||Ze(ma(Qe))}function Ie(Ye,Tt){let at=Ncn(Tt,Ye.code,Ye.start,g);!at||!at.length||Ze(ma(at))}function _e(Ye,Tt,at){var Qe,Ct;let mt=pe.checkDefined(Ye.parent,"Expected exported symbol to have module symbol as parent"),yt=DWe(Ye,Hg(S)),Rt=c.getTypeChecker(),Lt=Rt.getMergedSymbol(VC(Ye,Rt)),je=wcn(s,Lt,yt,mt,!1,c,h,d,_);if(!je){pe.assert((Qe=d.autoImportFileExcludePatterns)==null?void 0:Qe.length);return}let Wt=s2e(s,c),_r=yQt(s,je,c,void 0,!!Tt,Wt,h,d);if(_r){let Gt=((Ct=Gs(at?.name,Ir))==null?void 0:Ct.text)??yt,it,Dt;at&&cN(at)&&(_r.kind===3||_r.kind===2)&&_r.addAsTypeOnly===1&&(it=2),Ye.name!==Gt&&(Dt=Ye.name),_r={..._r,...it===void 0?{}:{addAsTypeOnly:it},...Dt===void 0?{}:{propertyName:Dt}},Ze({fix:_r,symbolName:Gt??yt,errorIdentifierText:void 0})}}function Ee(Ye,Tt,at){var Qe,Ct,mt;let yt=c.getTypeChecker(),Rt=yt.getAliasedSymbol(Ye);pe.assert(Rt.flags&1536,"Expected symbol to be a module");let Lt=o5(c,h),je=JF.getModuleSpecifiersWithCacheInfo(Rt,yt,S,s,Lt,d,void 0,!0),Wt=s2e(s,c),_r=oOe(Tt,!0,void 0,Ye.flags,c.getTypeChecker(),S);_r=_r===1&&cN(at)?2:1;let Gt=Yf(at)?B3(at)?1:2:dy(at)?0:Yw(at)&&at.name?1:2,it=[{symbol:Ye,moduleSymbol:Rt,moduleFileName:(mt=(Ct=(Qe=Rt.declarations)==null?void 0:Qe[0])==null?void 0:Ct.getSourceFile())==null?void 0:mt.fileName,exportKind:4,targetFlags:Ye.flags,isFromPackageJson:!1}],Dt=yQt(s,it,c,void 0,!!Tt,Wt,h,d),tr;Dt&&Gt!==2&&Dt.kind!==0&&Dt.kind!==1?tr={...Dt,addAsTypeOnly:_r,importKind:Gt}:tr={kind:3,moduleSpecifierKind:Dt!==void 0?Dt.moduleSpecifierKind:je.kind,moduleSpecifier:Dt!==void 0?Dt.moduleSpecifier:ma(je.moduleSpecifiers),importKind:Gt,addAsTypeOnly:_r,useRequire:Wt},Ze({fix:tr,symbolName:Ye.name,errorIdentifierText:void 0})}function Ne(Ye,Tt,at,Qe,Ct){let mt=c.getSourceFile(Tt),yt=s2e(s,c);if(mt&&mt.symbol){let{fixes:Rt}=sOe([{exportKind:at,isFromPackageJson:!1,moduleFileName:Tt,moduleSymbol:mt.symbol,targetFlags:Qe}],void 0,Ct,yt,c,s,h,d);Rt.length&&Ze({fix:Rt[0],symbolName:Ye,errorIdentifierText:Ye})}else{let Rt=ZWe(Tt,99,c,h),Lt=JF.getLocalModuleSpecifierBetweenFileNames(s,Tt,S,o5(c,h),d),je=xit(Rt,at,c),Wt=oOe(Ct,!0,void 0,Qe,c.getTypeChecker(),S);Ze({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:Lt,importKind:je,addAsTypeOnly:Wt,useRequire:yt},symbolName:Ye,errorIdentifierText:Ye})}}function Te(Ye){Ye.kind===274&&pe.assertIsDefined(Ye.name,"ImportClause should have a name if it's being removed"),V.add(Ye)}function Ze(Ye){var Tt,at,Qe;let{fix:Ct,symbolName:mt}=Ye;switch(Ct.kind){case 0:R.push(Ct);break;case 1:T.push(Ct);break;case 2:{let{importClauseOrBindingPattern:je,importKind:Wt,addAsTypeOnly:_r,propertyName:Gt}=Ct,it=O.get(je);if(it||O.set(je,it={importClauseOrBindingPattern:je,defaultImport:void 0,namedImports:new Map}),Wt===0){let Dt=(Tt=it?.namedImports.get(mt))==null?void 0:Tt.addAsTypeOnly;it.namedImports.set(mt,{addAsTypeOnly:yt(Dt,_r),propertyName:Gt})}else pe.assert(it.defaultImport===void 0||it.defaultImport.name===mt,"(Add to Existing) Default import should be missing or match symbolName"),it.defaultImport={name:mt,addAsTypeOnly:yt((at=it.defaultImport)==null?void 0:at.addAsTypeOnly,_r)};break}case 3:{let{moduleSpecifier:je,importKind:Wt,useRequire:_r,addAsTypeOnly:Gt,propertyName:it}=Ct,Dt=Rt(je,Wt,_r,Gt);switch(pe.assert(Dt.useRequire===_r,"(Add new) Tried to add an `import` and a `require` for the same module"),Wt){case 1:pe.assert(Dt.defaultImport===void 0||Dt.defaultImport.name===mt,"(Add new) Default import should be missing or match symbolName"),Dt.defaultImport={name:mt,addAsTypeOnly:yt((Qe=Dt.defaultImport)==null?void 0:Qe.addAsTypeOnly,Gt)};break;case 0:let tr=(Dt.namedImports||(Dt.namedImports=new Map)).get(mt);Dt.namedImports.set(mt,[yt(tr,Gt),it]);break;case 3:if(S.verbatimModuleSyntax){let ur=(Dt.namedImports||(Dt.namedImports=new Map)).get(mt);Dt.namedImports.set(mt,[yt(ur,Gt),it])}else pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===mt,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Wt,name:mt,addAsTypeOnly:Gt};break;case 2:pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===mt,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Wt,name:mt,addAsTypeOnly:Gt};break}break}case 4:break;default:pe.assertNever(Ct,`fix wasn't never - got kind ${Ct.kind}`)}function yt(je,Wt){return Math.max(je??0,Wt)}function Rt(je,Wt,_r,Gt){let it=Lt(je,!0),Dt=Lt(je,!1),tr=ee.get(it),ur=ee.get(Dt),Gr={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:_r};return Wt===1&&Gt===2?tr||(ee.set(it,Gr),Gr):Gt===1&&(tr||ur)?tr||ur:ur||(ee.set(Dt,Gr),Gr)}function Lt(je,Wt){return`${Wt?1:0}|${je}`}}function Pe(Ye,Tt){var at,Qe;let Ct;s.imports!==void 0&&s.imports.length===0&&Tt!==void 0?Ct=Tt:Ct=S1(s,d);for(let Rt of R)SQt(Ye,s,Rt);for(let Rt of T)Wcn(Ye,s,Rt,Ct);let mt;if(V.size){pe.assert(dN(s),"Cannot remove imports from a future source file");let Rt=new Set(Xt([...V],Gt=>ji(Gt,Yf))),Lt=new Set(Xt([...V],Gt=>ji(Gt,Z7))),je=[...Rt].filter(Gt=>{var it,Dt,tr;return!O.has(Gt.importClause)&&(!((it=Gt.importClause)!=null&&it.name)||V.has(Gt.importClause))&&(!Gs((Dt=Gt.importClause)==null?void 0:Dt.namedBindings,Mx)||V.has(Gt.importClause.namedBindings))&&(!Gs((tr=Gt.importClause)==null?void 0:tr.namedBindings,wN)||ue(Gt.importClause.namedBindings.elements,ur=>V.has(ur)))}),Wt=[...Lt].filter(Gt=>(Gt.name.kind!==207||!O.has(Gt.name))&&(Gt.name.kind!==207||ue(Gt.name.elements,it=>V.has(it)))),_r=[...Rt].filter(Gt=>{var it,Dt;return((it=Gt.importClause)==null?void 0:it.namedBindings)&&je.indexOf(Gt)===-1&&!((Dt=O.get(Gt.importClause))!=null&&Dt.namedImports)&&(Gt.importClause.namedBindings.kind===275||ue(Gt.importClause.namedBindings.elements,tr=>V.has(tr)))});for(let Gt of[...je,...Wt])Ye.delete(s,Gt);for(let Gt of _r)Ye.replaceNode(s,Gt.importClause,me.updateImportClause(Gt.importClause,Gt.importClause.phaseModifier,Gt.importClause.name,void 0));for(let Gt of V){let it=ji(Gt,Yf);it&&je.indexOf(it)===-1&&_r.indexOf(it)===-1?Gt.kind===274?Ye.delete(s,Gt.name):(pe.assert(Gt.kind===277,"NamespaceImport should have been handled earlier"),(at=O.get(it.importClause))!=null&&at.namedImports?(mt??(mt=new Set)).add(Gt):Ye.delete(s,Gt)):Gt.kind===209?(Qe=O.get(Gt.parent))!=null&&Qe.namedImports?(mt??(mt=new Set)).add(Gt):Ye.delete(s,Gt):Gt.kind===272&&Ye.delete(s,Gt)}}O.forEach(({importClauseOrBindingPattern:Rt,defaultImport:Lt,namedImports:je})=>{Vcn(Ye,s,Rt,Lt,Do(je.entries(),([Wt,{addAsTypeOnly:_r,propertyName:Gt}])=>({addAsTypeOnly:_r,propertyName:Gt,name:Wt})),mt,d)});let yt;ee.forEach(({useRequire:Rt,defaultImport:Lt,namedImports:je,namespaceLikeImport:Wt},_r)=>{let Gt=_r.slice(2),Dt=(Rt?Mcn:Pcn)(Gt,Ct,Lt,je&&Do(je.entries(),([tr,[ur,Gr]])=>({addAsTypeOnly:ur,propertyName:Gr,name:tr})),Wt,S,d);yt=zr(yt,Dt)}),yt=zr(yt,Ke()),yt&&unt(Ye,s,yt,!0,d)}function Ke(){if(!M.size)return;let Ye=new Set(Xt([...M],at=>ji(at,Yf))),Tt=new Set(Xt([...M],at=>ji(at,mne)));return[...Xt([...M],at=>at.kind===272?KA(at,!0):void 0),...[...Ye].map(at=>{var Qe;return M.has(at)?KA(at,!0):KA(me.updateImportDeclaration(at,at.modifiers,at.importClause&&me.updateImportClause(at.importClause,at.importClause.phaseModifier,M.has(at.importClause)?at.importClause.name:void 0,M.has(at.importClause.namedBindings)?at.importClause.namedBindings:(Qe=Gs(at.importClause.namedBindings,wN))!=null&&Qe.elements.some(Ct=>M.has(Ct))?me.updateNamedImports(at.importClause.namedBindings,at.importClause.namedBindings.elements.filter(Ct=>M.has(Ct))):void 0),at.moduleSpecifier,at.attributes),!0)}),...[...Tt].map(at=>M.has(at)?KA(at,!0):KA(me.updateVariableStatement(at,at.modifiers,me.updateVariableDeclarationList(at.declarationList,Xt(at.declarationList.declarations,Qe=>M.has(Qe)?Qe:me.updateVariableDeclaration(Qe,Qe.name.kind===207?me.updateObjectBindingPattern(Qe.name,Qe.name.elements.filter(Ct=>M.has(Ct))):Qe.name,Qe.exclamationToken,Qe.type,Qe.initializer)))),!0))]}function et(){return R.length>0||T.length>0||O.size>0||ee.size>0||M.size>0||V.size>0}}function tGs(s,c,g,d){let h=gse(s,d,g),_=Tcn(s,c);return{getModuleSpecifierForBestExportInfo:S};function S(R,T,O,V){let{fixes:M,computedWithoutCacheCount:ee}=sOe(R,T,O,!1,c,s,g,d,_,V),re=kcn(M,s,c,h,g,d);return re&&{...re,computedWithoutCacheCount:ee}}}function rGs(s,c,g,d,h,_,S,R,T,O,V,M){let ee;g?(ee=X1e(d,S,R,V,M).get(d.path,g),pe.assertIsDefined(ee,"Some exportInfo should match the specified exportMapKey")):(ee=jh(d2(c.name))?[iGs(s,h,c,R,S)]:wcn(d,s,h,c,_,R,S,V,M),pe.assertIsDefined(ee,"Some exportInfo should match the specified symbol / moduleSymbol"));let re=s2e(d,R),ge=e9(Jc(d,O)),Ie=pe.checkDefined(yQt(d,ee,R,O,ge,re,S,V));return{moduleSpecifier:Ie.moduleSpecifier,codeAction:Bcn(EQt({host:S,formatContext:T,preferences:V},d,h,Ie,!1,R,V))}}function nGs(s,c,g,d,h,_){let S=g.getCompilerOptions(),R=Xa(bQt(s,g.getTypeChecker(),c,S)),T=Zcn(s,c,R,g),O=R!==c.text;return T&&Bcn(EQt({host:d,formatContext:h,preferences:_},s,R,T,O,g,_))}function yQt(s,c,g,d,h,_,S,R){let T=gse(s,R,S);return kcn(sOe(c,d,h,_,g,s,S,R).fixes,s,g,T,S,R)}function Bcn({description:s,changes:c,commands:g}){return{description:s,changes:c,commands:g}}function wcn(s,c,g,d,h,_,S,R,T){let O=Rcn(_,S),V=R.autoImportFileExcludePatterns&&aHt(S,R),M=_.getTypeChecker().getMergedSymbol(d),ee=V&&M.declarations&&yp(M,308),re=ee&&V(ee);return X1e(s,S,_,R,T).search(s.path,h,ge=>ge===g,ge=>{let Ie=O(ge[0].isFromPackageJson);if(Ie.getMergedSymbol(VC(ge[0].symbol,Ie))===c&&(re||ge.some(_e=>Ie.getMergedSymbol(_e.moduleSymbol)===d||_e.symbol.parent===d)))return ge})}function iGs(s,c,g,d,h){var _,S;let R=O(d.getTypeChecker(),!1);if(R)return R;let T=(S=(_=h.getPackageJsonAutoImportProvider)==null?void 0:_.call(h))==null?void 0:S.getTypeChecker();return pe.checkDefined(T&&O(T,!0),"Could not find symbol in specified module for code actions");function O(V,M){let ee=LWe(g,V);if(ee&&VC(ee.symbol,V)===s)return{symbol:ee.symbol,moduleSymbol:g,moduleFileName:void 0,exportKind:ee.exportKind,targetFlags:VC(s,V).flags,isFromPackageJson:M};let re=V.tryGetMemberInModuleExportsAndProperties(c,g);if(re&&VC(re,V)===s)return{symbol:re,moduleSymbol:g,moduleFileName:void 0,exportKind:0,targetFlags:VC(s,V).flags,isFromPackageJson:M}}}function sOe(s,c,g,d,h,_,S,R,T=dN(_)?Tcn(_,h):void 0,O){let V=h.getTypeChecker(),M=T?jt(s,T.getImportsForExportInfo):E,ee=c!==void 0&&sGs(M,c),re=aGs(M,g,V,h.getCompilerOptions());if(re)return{computedWithoutCacheCount:0,fixes:[...ee?[ee]:E,re]};let{fixes:ge,computedWithoutCacheCount:Ie=0}=lGs(s,M,h,_,c,g,d,S,R,O);return{computedWithoutCacheCount:Ie,fixes:[...ee?[ee]:E,...ge]}}function sGs(s,c){return J(s,({declaration:g,importKind:d})=>{var h;if(d!==0)return;let _=oGs(g),S=_&&((h=UY(g))==null?void 0:h.text);if(S)return{kind:0,namespacePrefix:_,usagePosition:c,moduleSpecifierKind:void 0,moduleSpecifier:S}})}function oGs(s){var c,g,d;switch(s.kind){case 261:return(c=Gs(s.name,Ir))==null?void 0:c.text;case 272:return s.name.text;case 352:case 273:return(d=Gs((g=s.importClause)==null?void 0:g.namedBindings,Mx))==null?void 0:d.name.text;default:return pe.assertNever(s)}}function oOe(s,c,g,d,h,_){return s?g&&_.verbatimModuleSyntax&&(!(d&111551)||h.getTypeOnlyAliasDeclaration(g))?2:1:4}function aGs(s,c,g,d){let h;for(let S of s){let R=_(S);if(!R)continue;let T=cN(R.importClauseOrBindingPattern);if(R.addAsTypeOnly!==4&&T||R.addAsTypeOnly===4&&!T)return R;h??(h=R)}return h;function _({declaration:S,importKind:R,symbol:T,targetFlags:O}){if(R===3||R===2||S.kind===272)return;if(S.kind===261)return(R===0||R===1)&&S.name.kind===207?{kind:2,importClauseOrBindingPattern:S.name,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;let{importClause:V}=S;if(!V||!_A(S.moduleSpecifier))return;let{name:M,namedBindings:ee}=V;if(V.isTypeOnly&&!(R===0&&ee))return;let re=oOe(c,!1,T,O,g,d);if(!(R===1&&(M||re===2&&ee))&&!(R===0&&ee?.kind===275))return{kind:2,importClauseOrBindingPattern:V,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.moduleSpecifier.text,addAsTypeOnly:re}}}function Tcn(s,c){let g=c.getTypeChecker(),d;for(let h of s.imports){let _=O7(h);if(Z7(_.parent)){let S=g.resolveExternalModuleName(h);S&&(d||(d=Al())).add(xg(S),_.parent)}else if(_.kind===273||_.kind===272||_.kind===352){let S=g.getSymbolAtLocation(h);S&&(d||(d=Al())).add(xg(S),_)}}return{getImportsForExportInfo:({moduleSymbol:h,exportKind:_,targetFlags:S,symbol:R})=>{let T=d?.get(xg(h));if(!T||o0(s)&&!(S&111551)&&!ue(T,NN))return E;let O=xit(s,_,c);return T.map(V=>({declaration:V,importKind:O,symbol:R,targetFlags:S}))}}}function s2e(s,c){if(!_N(s.fileName))return!1;if(s.commonJsModuleIndicator&&!s.externalModuleIndicator)return!0;if(s.externalModuleIndicator&&!s.commonJsModuleIndicator)return!1;let g=c.getCompilerOptions();if(g.configFile)return a0(g)<5;if(BQt(s,c)===1)return!0;if(BQt(s,c)===99)return!1;for(let d of c.getSourceFiles())if(!(d===s||!o0(d)||c.isSourceFileFromExternalLibrary(d))){if(d.commonJsModuleIndicator&&!d.externalModuleIndicator)return!0;if(d.externalModuleIndicator&&!d.commonJsModuleIndicator)return!1}return!0}function Rcn(s,c){return VA(g=>g?c.getPackageJsonAutoImportProvider().getTypeChecker():s.getTypeChecker())}function cGs(s,c,g,d,h,_,S,R,T){let O=_N(c.fileName),V=s.getCompilerOptions(),M=o5(s,S),ee=Rcn(s,S),re=F_(V),ge=hWe(re),Ie=T?Ne=>JF.tryGetModuleSpecifiersFromCache(Ne.moduleSymbol,c,M,R):(Ne,Te)=>JF.getModuleSpecifiersWithCacheInfo(Ne.moduleSymbol,Te,V,c,M,R,void 0,!0),_e=0,Ee=jt(_,(Ne,Te)=>{let Ze=ee(Ne.isFromPackageJson),{computedWithoutCache:Pe,moduleSpecifiers:Ke,kind:et}=Ie(Ne,Ze)??{},Ye=!!(Ne.targetFlags&111551),Tt=oOe(d,!0,Ne.symbol,Ne.targetFlags,Ze,V);return _e+=Pe?1:0,Xt(Ke,at=>{if(ge&&KW(at))return;if(!Ye&&O&&g!==void 0)return{kind:1,moduleSpecifierKind:et,moduleSpecifier:at,usagePosition:g,exportInfo:Ne,isReExport:Te>0};let Qe=xit(c,Ne.exportKind,s),Ct;if(g!==void 0&&Qe===3&&Ne.exportKind===0){let mt=Ze.resolveExternalModuleSymbol(Ne.moduleSymbol),yt;mt!==Ne.moduleSymbol&&(yt=VWe(mt,Ze,Hg(V),Zl)),yt||(yt=H1e(Ne.moduleSymbol,Hg(V),!1)),Ct={namespacePrefix:yt,usagePosition:g}}return{kind:3,moduleSpecifierKind:et,moduleSpecifier:at,importKind:Qe,useRequire:h,addAsTypeOnly:Tt,exportInfo:Ne,isReExport:Te>0,qualification:Ct}})});return{computedWithoutCacheCount:_e,fixes:Ee}}function lGs(s,c,g,d,h,_,S,R,T,O){let V=J(c,M=>uGs(M,_,S,g.getTypeChecker(),g.getCompilerOptions()));return V?{fixes:[V]}:cGs(g,d,h,_,S,s,R,T,O)}function uGs({declaration:s,importKind:c,symbol:g,targetFlags:d},h,_,S,R){var T;let O=(T=UY(s))==null?void 0:T.text;if(O){let V=_?4:oOe(h,!0,g,d,S,R);return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:O,importKind:c,addAsTypeOnly:V,useRequire:_}}}function Ncn(s,c,g,d){let h=Jc(s.sourceFile,g),_;if(c===Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)_=fGs(s,h);else if(Ir(h))if(c===Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){let R=Xa(bQt(s.sourceFile,s.program.getTypeChecker(),h,s.program.getCompilerOptions())),T=Zcn(s.sourceFile,h,R,s.program);return T&&[{fix:T,symbolName:R,errorIdentifierText:h.text}]}else _=Fcn(s,h,d);else return;let S=gse(s.sourceFile,s.preferences,s.host);return _&&Dcn(_,s.sourceFile,s.program,S,s.host,s.preferences)}function Dcn(s,c,g,d,h,_){let S=R=>Pu(R,h.getCurrentDirectory(),$D(h));return yo(s,(R,T)=>Hl(!!R.isJsxNamespaceFix,!!T.isJsxNamespaceFix)||Zt(R.fix.kind,T.fix.kind)||xcn(R.fix,T.fix,c,g,_,d.allowsImportingSpecifier,S))}function gGs(s,c,g){let d=Fcn(s,c,g),h=gse(s.sourceFile,s.preferences,s.host);return d&&Dcn(d,s.sourceFile,s.program,h,s.host,s.preferences)}function kcn(s,c,g,d,h,_){if(zt(s))return s[0].kind===0||s[0].kind===2?s[0]:s.reduce((S,R)=>xcn(R,S,c,g,_,d.allowsImportingSpecifier,T=>Pu(T,h.getCurrentDirectory(),$D(h)))===-1?R:S)}function xcn(s,c,g,d,h,_,S){return s.kind!==0&&c.kind!==0?Hl(c.moduleSpecifierKind!=="node_modules"||_(c.moduleSpecifier),s.moduleSpecifierKind!=="node_modules"||_(s.moduleSpecifier))||AGs(s,c,h)||pGs(s.moduleSpecifier,c.moduleSpecifier,g,d)||Hl(Gcn(s,g.path,S),Gcn(c,g.path,S))||oie(s.moduleSpecifier,c.moduleSpecifier):0}function AGs(s,c,g){return g.importModuleSpecifierPreference==="non-relative"||g.importModuleSpecifierPreference==="project-relative"?Hl(s.moduleSpecifierKind==="relative",c.moduleSpecifierKind==="relative"):0}function Gcn(s,c,g){var d;if(s.isReExport&&((d=s.exportInfo)!=null&&d.moduleFileName)&&dGs(s.exportInfo.moduleFileName)){let h=g(Mo(s.exportInfo.moduleFileName));return Ac(c,h)}return!1}function dGs(s){return dp(s,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function pGs(s,c,g,d){return Ac(s,"node:")&&!Ac(c,"node:")?xWe(g,d)?-1:1:Ac(c,"node:")&&!Ac(s,"node:")?xWe(g,d)?1:-1:0}function fGs({sourceFile:s,program:c,host:g,preferences:d},h){let _=c.getTypeChecker(),S=IGs(h,_);if(!S)return;let R=_.getAliasedSymbol(S),T=S.name,O=[{symbol:S,moduleSymbol:R,moduleFileName:void 0,exportKind:3,targetFlags:R.flags,isFromPackageJson:!1}],V=s2e(s,c);return sOe(O,void 0,!1,V,c,s,g,d).fixes.map(ee=>{var re;return{fix:ee,symbolName:T,errorIdentifierText:(re=Gs(h,Ir))==null?void 0:re.text}})}function IGs(s,c){let g=Ir(s)?c.getSymbolAtLocation(s):void 0;if(WAe(g))return g;let{parent:d}=s;if(nI(d)&&d.tagName===s||Qw(d)){let h=c.resolveName(c.getJsxNamespace(d),nI(d)?s:d,111551,!1);if(WAe(h))return h}}function xit(s,c,g,d){if(g.getCompilerOptions().verbatimModuleSyntax&&EGs(s,g)===1)return 3;switch(c){case 0:return 0;case 1:return 1;case 2:return _Gs(s,g.getCompilerOptions(),!!d);case 3:return hGs(s,g,!!d);case 4:return 2;default:return pe.assertNever(c)}}function hGs(s,c,g){if(sQ(c.getCompilerOptions()))return 1;let d=a0(c.getCompilerOptions());switch(d){case 2:case 1:case 3:return _N(s.fileName)&&(s.externalModuleIndicator||g)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 101:case 102:case 199:return BQt(s,c)===99?2:3;default:return pe.assertNever(d,`Unexpected moduleKind ${d}`)}}function Fcn({sourceFile:s,program:c,cancellationToken:g,host:d,preferences:h},_,S){let R=c.getTypeChecker(),T=c.getCompilerOptions();return jt(bQt(s,R,_,T),O=>{if(O==="default")return;let V=e9(_),M=s2e(s,c),ee=CGs(O,iU(_),QU(_),g,s,c,S,d,h);return Do(Nt(ee.values(),re=>sOe(re,_.getStart(s),V,M,c,s,d,h).fixes),re=>({fix:re,symbolName:O,errorIdentifierText:_.text,isJsxNamespaceFix:O!==_.text}))})}function Zcn(s,c,g,d){let h=d.getTypeChecker(),_=h.resolveName(g,c,111551,!0);if(!_)return;let S=h.getTypeOnlyAliasDeclaration(_);if(!(!S||ms(S)!==s))return{kind:4,typeOnlyAliasDeclaration:S}}function bQt(s,c,g,d){let h=g.parent;if((nI(h)||pQ(h))&&h.tagName===g&&knt(d.jsx)){let _=c.getJsxNamespace(s);if(mGs(_,g,c))return!pU(g.text)&&!c.resolveName(g.text,g,111551,!1)?[g.text,_]:[_]}return[g.text]}function mGs(s,c,g){if(pU(c.text))return!0;let d=g.resolveName(s,c,111551,!0);return!d||zt(d.declarations,lN)&&!(d.flags&111551)}function CGs(s,c,g,d,h,_,S,R,T){var O;let V=Al(),M=gse(h,T,R),ee=(O=R.getModuleSpecifierCache)==null?void 0:O.call(R),re=VA(Ie=>o5(Ie?R.getPackageJsonAutoImportProvider():_,R));function ge(Ie,_e,Ee,Ne,Te,Ze){let Pe=re(Ze);if(Fnt(Te,h,_e,Ie,T,M,Pe,ee)){let Ke=Te.getTypeChecker();V.add(JMt(Ee,Ke).toString(),{symbol:Ee,moduleSymbol:Ie,moduleFileName:_e?.fileName,exportKind:Ne,targetFlags:VC(Ee,Ke).flags,isFromPackageJson:Ze})}}return Znt(_,R,T,S,(Ie,_e,Ee,Ne)=>{let Te=Ee.getTypeChecker();d.throwIfCancellationRequested();let Ze=Ee.getCompilerOptions(),Pe=LWe(Ie,Te);Pe&&Ycn(Te.getSymbolFlags(Pe.symbol),g)&&VWe(Pe.symbol,Te,Hg(Ze),(et,Ye)=>(c?Ye??et:et)===s)&&ge(Ie,_e,Pe.symbol,Pe.exportKind,Ee,Ne);let Ke=Te.tryGetMemberInModuleExportsAndProperties(s,Ie);Ke&&Ycn(Te.getSymbolFlags(Ke),g)&&ge(Ie,_e,Ke,0,Ee,Ne)}),V}function _Gs(s,c,g){let d=sQ(c),h=_N(s.fileName);if(!h&&a0(c)>=5)return d?1:2;if(h)return s.externalModuleIndicator||g?d?1:2:3;for(let _ of s.statements??E)if(Zm(_)&&!af(_.moduleReference))return 3;return d?1:3}function EQt(s,c,g,d,h,_,S){let R,T=xo.ChangeTracker.with(s,O=>{R=yGs(O,c,g,d,h,_,S)});return gg(bcn,T,R,Ecn,Z.Add_all_missing_imports)}function yGs(s,c,g,d,h,_,S){let R=S1(c,S);switch(d.kind){case 0:return SQt(s,c,d),[Z.Change_0_to_1,g,`${d.namespacePrefix}.${g}`];case 1:return Wcn(s,c,d,R),[Z.Change_0_to_1,g,Ocn(d.moduleSpecifier,R)+g];case 2:{let{importClauseOrBindingPattern:T,importKind:O,addAsTypeOnly:V,moduleSpecifier:M}=d;Vcn(s,c,T,O===1?{name:g,addAsTypeOnly:V}:void 0,O===0?[{name:g,addAsTypeOnly:V}]:E,void 0,S);let ee=d2(M);return h?[Z.Import_0_from_1,g,ee]:[Z.Update_import_from_0,ee]}case 3:{let{importKind:T,moduleSpecifier:O,addAsTypeOnly:V,useRequire:M,qualification:ee}=d,re=M?Mcn:Pcn,ge=T===1?{name:g,addAsTypeOnly:V}:void 0,Ie=T===0?[{name:g,addAsTypeOnly:V}]:void 0,_e=T===2||T===3?{importKind:T,name:ee?.namespacePrefix||g,addAsTypeOnly:V}:void 0;return unt(s,c,re(O,R,ge,Ie,_e,_.getCompilerOptions(),S),!0,S),ee&&SQt(s,c,ee),h?[Z.Import_0_from_1,g,O]:[Z.Add_import_from_0,O]}case 4:{let{typeOnlyAliasDeclaration:T}=d,O=bGs(s,T,_,c,S);return O.kind===277?[Z.Remove_type_from_import_of_0_from_1,g,Lcn(O.parent.parent)]:[Z.Remove_type_from_import_declaration_from_0,Lcn(O)]}default:return pe.assertNever(d,`Unexpected fix kind ${d.kind}`)}}function Lcn(s){var c,g;return s.kind===272?((g=Gs((c=Gs(s.moduleReference,HF))==null?void 0:c.expression,_A))==null?void 0:g.text)||s.moduleReference.getText():Ma(s.parent.moduleSpecifier,Lg).text}function bGs(s,c,g,d,h){let _=g.getCompilerOptions(),S=_.verbatimModuleSyntax;switch(c.kind){case 277:if(c.isTypeOnly){if(c.parent.elements.length>1){let T=me.updateImportSpecifier(c,!1,c.propertyName,c.name),{specifierComparer:O}=d5.getNamedImportSpecifierComparerWithDetection(c.parent.parent.parent,h,d),V=d5.getImportSpecifierInsertionIndex(c.parent.elements,T,O);if(V!==c.parent.elements.indexOf(c))return s.delete(d,c),s.insertImportSpecifierAtIndex(d,T,c.parent,V),c}return s.deleteRange(d,{pos:UD(c.getFirstToken()),end:UD(c.propertyName??c.name)}),c}else return pe.assert(c.parent.parent.isTypeOnly),R(c.parent.parent),c.parent.parent;case 274:return R(c),c;case 275:return R(c.parent),c.parent;case 272:return s.deleteRange(d,c.getChildAt(1)),c;default:pe.failBadSyntaxKind(c)}function R(T){var O;if(s.delete(d,gnt(T,d)),!_.allowImportingTsExtensions){let V=UY(T.parent),M=V&&((O=g.getResolvedModuleFromModuleSpecifier(V,d))==null?void 0:O.resolvedModule);if(M?.resolvedUsingTsExtension){let ee=eS(V.text,u1e(V.text,_));s.replaceNode(d,V,me.createStringLiteral(ee))}}if(S){let V=Gs(T.namedBindings,wN);if(V&&V.elements.length>1){d5.getNamedImportSpecifierComparerWithDetection(T.parent,h,d).isSorted!==!1&&c.kind===277&&V.elements.indexOf(c)!==0&&(s.delete(d,c),s.insertImportSpecifierAtIndex(d,c,V,0));for(let ee of V.elements)ee!==c&&!ee.isTypeOnly&&s.insertModifierBefore(d,156,ee)}}}}function Vcn(s,c,g,d,h,_,S){var R;if(g.kind===207){if(_&&g.elements.some(M=>_.has(M))){s.replaceNode(c,g,me.createObjectBindingPattern([...g.elements.filter(M=>!_.has(M)),...d?[me.createBindingElement(void 0,"default",d.name)]:E,...h.map(M=>me.createBindingElement(void 0,M.propertyName,M.name))]));return}d&&V(g,d.name,"default");for(let M of h)V(g,M.name,M.propertyName);return}let T=g.isTypeOnly&&zt([d,...h],M=>M?.addAsTypeOnly===4),O=g.namedBindings&&((R=Gs(g.namedBindings,wN))==null?void 0:R.elements);if(d&&(pe.assert(!g.name,"Cannot add a default import to an import clause that already has one"),s.insertNodeAt(c,g.getStart(c),me.createIdentifier(d.name),{suffix:", "})),h.length){let{specifierComparer:M,isSorted:ee}=d5.getNamedImportSpecifierComparerWithDetection(g.parent,S,c),re=yo(h.map(ge=>me.createImportSpecifier((!g.isTypeOnly||T)&&Git(ge,S),ge.propertyName===void 0?void 0:me.createIdentifier(ge.propertyName),me.createIdentifier(ge.name))),M);if(_)s.replaceNode(c,g.namedBindings,me.updateNamedImports(g.namedBindings,yo([...O.filter(ge=>!_.has(ge)),...re],M)));else if(O?.length&&ee!==!1){let ge=T&&O?me.updateNamedImports(g.namedBindings,Er(O,Ie=>me.updateImportSpecifier(Ie,!0,Ie.propertyName,Ie.name))).elements:O;for(let Ie of re){let _e=d5.getImportSpecifierInsertionIndex(ge,Ie,M);s.insertImportSpecifierAtIndex(c,Ie,g.namedBindings,_e)}}else if(O?.length)for(let ge of re)s.insertNodeInListAfter(c,Ei(O),ge,O);else if(re.length){let ge=me.createNamedImports(re);g.namedBindings?s.replaceNode(c,g.namedBindings,ge):s.insertNodeAfter(c,pe.checkDefined(g.name,"Import clause must have either named imports or a default import"),ge)}}if(T&&(s.delete(c,gnt(g,c)),O))for(let M of O)s.insertModifierBefore(c,156,M);function V(M,ee,re){let ge=me.createBindingElement(void 0,re,ee);M.elements.length?s.insertNodeInListAfter(c,Ei(M.elements),ge):s.replaceNode(c,M,me.createObjectBindingPattern([ge]))}}function SQt(s,c,{namespacePrefix:g,usagePosition:d}){s.insertText(c,d,g+".")}function Wcn(s,c,{moduleSpecifier:g,usagePosition:d},h){s.insertText(c,d,Ocn(g,h))}function Ocn(s,c){let g=cnt(c);return`import(${g}${s}${g}).`}function vQt({addAsTypeOnly:s}){return s===2}function Git(s,c){return vQt(s)||!!c.preferTypeOnlyAutoImports&&s.addAsTypeOnly!==4}function Pcn(s,c,g,d,h,_,S){let R=upe(s,c),T;if(g!==void 0||d?.length){let O=(!g||vQt(g))&&ue(d,vQt)||(_.verbatimModuleSyntax||S.preferTypeOnlyAutoImports)&&g?.addAsTypeOnly!==4&&!zt(d,V=>V.addAsTypeOnly===4);T=zr(T,eO(g&&me.createIdentifier(g.name),d?.map(V=>me.createImportSpecifier(!O&&Git(V,S),V.propertyName===void 0?void 0:me.createIdentifier(V.propertyName),me.createIdentifier(V.name))),s,c,O))}if(h){let O=h.importKind===3?me.createImportEqualsDeclaration(void 0,Git(h,S),me.createIdentifier(h.name),me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(Git(h,S)?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(h.name))),R,void 0);T=zr(T,O)}return pe.checkDefined(T)}function Mcn(s,c,g,d,h){let _=upe(s,c),S;if(g||d?.length){let R=d?.map(({name:O,propertyName:V})=>me.createBindingElement(void 0,V,O))||[];g&&R.unshift(me.createBindingElement(void 0,"default",g.name));let T=Hcn(me.createObjectBindingPattern(R),_);S=zr(S,T)}if(h){let R=Hcn(h.name,_);S=zr(S,R)}return pe.checkDefined(S)}function Hcn(s,c){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(typeof s=="string"?me.createIdentifier(s):s,void 0,void 0,me.createCallExpression(me.createIdentifier("require"),void 0,[c]))],2))}function Ycn(s,c){return c===7?!0:c&1?!!(s&111551):c&2?!!(s&788968):c&4?!!(s&1920):!1}function BQt(s,c){return dN(s)?c.getImpliedNodeFormatForEmit(s):YU(s,c.getCompilerOptions())}function EGs(s,c){return dN(s)?c.getEmitModuleFormatOfFile(s):tpe(s,c.getCompilerOptions())}var wQt="addMissingConstraint",Qcn=[Z.Type_0_is_not_comparable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.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.code,Z.Property_0_is_incompatible_with_index_signature.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Type_0_does_not_satisfy_the_constraint_1.code];Gg({errorCodes:Qcn,getCodeActions(s){let{sourceFile:c,span:g,program:d,preferences:h,host:_}=s,S=Xcn(d,c,g);if(S===void 0)return;let R=xo.ChangeTracker.with(s,T=>Jcn(T,d,h,_,c,S));return[gg(wQt,R,Z.Add_extends_constraint,wQt,Z.Add_extends_constraint_to_all_type_parameters)]},fixIds:[wQt],getAllCodeActions:s=>{let{program:c,preferences:g,host:d}=s,h=new Set;return iq(xo.ChangeTracker.with(s,_=>{sq(s,Qcn,S=>{let R=Xcn(c,S.file,$d(S.start,S.length));if(R&&Wy(h,id(R.declaration)))return Jcn(_,c,g,d,S.file,R)})}))}});function Xcn(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.This_type_parameter_might_need_an_extends_0_constraint.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=yXt(h.file,$d(h.start,h.length));if(_!==void 0&&(Ir(_)&&Ds(_.parent)&&(_=_.parent),Ds(_))){if(OB(_.parent))return;let S=Jc(c,g.start),R=s.getTypeChecker();return{constraint:vGs(R,S)||SGs(h.messageText),declaration:_,token:S}}}function Jcn(s,c,g,d,h,_){let{declaration:S,constraint:R}=_,T=c.getTypeChecker();if(Xs(R))s.insertText(h,S.name.end,` extends ${R}`);else{let O=Hg(c.getCompilerOptions()),V=hse({program:c,host:d}),M=xQ(h,c,g,d),ee=Kit(T,M,R,void 0,O,void 0,void 0,V);ee&&(s.replaceNode(h,S,me.updateTypeParameterDeclaration(S,void 0,S.name,ee,S.default)),M.writeFixes(s))}}function SGs(s){let[,c]=xN(s,` +`,0).match(/`extends (.*)`/)||[];return c}function vGs(s,c){return uc(c.parent)?s.getTypeArgumentConstraint(c.parent):(un(c)?s.getContextualType(c):void 0)||s.getTypeAtLocation(c)}var Ucn="fixOverrideModifier",o2e="fixAddOverrideModifier",aOe="fixRemoveOverrideModifier",Kcn=[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],jcn={[Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_override_modifier},[Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:o2e,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:aOe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers}};Gg({errorCodes:Kcn,getCodeActions:function(c){let{errorCode:g,span:d}=c,h=jcn[g];if(!h)return E;let{descriptions:_,fixId:S,fixAllDescriptions:R}=h,T=xo.ChangeTracker.with(c,O=>zcn(O,c,g,d.start));return[XYt(Ucn,T,_,S,R)]},fixIds:[Ucn,o2e,aOe],getAllCodeActions:s=>Jd(s,Kcn,(c,g)=>{let{code:d,start:h}=g,_=jcn[d];!_||_.fixId!==s.fixId||zcn(c,s,d,h)})});function zcn(s,c,g,d){switch(g){case Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return BGs(s,c.sourceFile,d);case Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return wGs(s,c.sourceFile,d);default:pe.fail("Unexpected error code: "+g)}}function BGs(s,c,g){let d=$cn(c,g);if(o0(c)){s.addJSDocTags(c,d,[me.createJSDocOverrideTag(me.createIdentifier("override"))]);return}let h=d.modifiers||E,_=de(h,Ge),S=de(h,Xe),R=de(h,M=>qrt(M.kind)),T=be(h,Eo),O=S?S.end:_?_.end:R?R.end:T?Yu(c.text,T.end):d.getStart(c),V=R||_||S?{prefix:" "}:{suffix:" "};s.insertModifierAt(c,O,164,V)}function wGs(s,c,g){let d=$cn(c,g);if(o0(c)){s.filterJSDocTags(c,d,dC(b9e));return}let h=de(d.modifiers,St);pe.assertIsDefined(h),s.deleteModifier(c,h)}function qcn(s){switch(s.kind){case 177:case 173:case 175:case 178:case 179:return!0;case 170:return We(s,s.parent);default:return!1}}function $cn(s,c){let g=Jc(s,c),d=ji(g,h=>xa(h)?"quit":qcn(h));return pe.assert(d&&qcn(d)),d}var TQt="fixNoPropertyAccessFromIndexSignature",eln=[Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];Gg({errorCodes:eln,fixIds:[TQt],getCodeActions(s){let{sourceFile:c,span:g,preferences:d}=s,h=rln(c,g.start),_=xo.ChangeTracker.with(s,S=>tln(S,s.sourceFile,h,d));return[gg(TQt,_,[Z.Use_element_access_for_0,h.name.text],TQt,Z.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:s=>Jd(s,eln,(c,g)=>tln(c,g.file,rln(g.file,g.start),s.preferences))});function tln(s,c,g,d){let h=S1(c,d),_=me.createStringLiteral(g.name.text,h===0);s.replaceNode(c,g,Dx(g)?me.createElementAccessChain(g.expression,g.questionDotToken,_):me.createElementAccessExpression(g.expression,_))}function rln(s,c){return Ma(Jc(s,c).parent,jo)}var RQt="fixImplicitThis",nln=[Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];Gg({errorCodes:nln,getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_,S=xo.ChangeTracker.with(c,R=>{_=iln(R,g,h.start,d.getTypeChecker())});return _?[gg(RQt,S,_,RQt,Z.Fix_all_implicit_this_errors)]:E},fixIds:[RQt],getAllCodeActions:s=>Jd(s,nln,(c,g)=>{iln(c,g.file,g.start,s.program.getTypeChecker())})});function iln(s,c,g,d){let h=Jc(c,g);if(!rse(h))return;let _=s0(h,!1,!1);if(!(!ah(_)&&!jA(_))&&!cl(s0(_,!1,!1))){let S=pe.checkDefined(ep(_,100,c)),{name:R}=_,T=pe.checkDefined(_.body);return jA(_)?R&&zp.Core.isSymbolReferencedInFile(R,d,c,T)?void 0:(s.delete(c,S),R&&s.delete(c,R),s.insertText(c,T.pos," =>"),[Z.Convert_function_expression_0_to_arrow_function,R?R.text:Ent]):(s.replaceNode(c,S,me.createToken(87)),s.insertText(c,R.end," = "),s.insertText(c,T.pos," =>"),[Z.Convert_function_declaration_0_to_arrow_function,R.text])}}var NQt="fixImportNonExportedMember",sln=[Z.Module_0_declares_1_locally_but_it_is_not_exported.code];Gg({errorCodes:sln,fixIds:[NQt],getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=oln(c,g.start,d);if(h===void 0)return;let _=xo.ChangeTracker.with(s,S=>TGs(S,d,h));return[gg(NQt,_,[Z.Export_0_from_module_1,h.exportName.node.text,h.moduleSpecifier],NQt,Z.Export_all_referenced_locals)]},getAllCodeActions(s){let{program:c}=s;return iq(xo.ChangeTracker.with(s,g=>{let d=new Map;sq(s,sln,h=>{let _=oln(h.file,h.start,c);if(_===void 0)return;let{exportName:S,node:R,moduleSourceFile:T}=_;if(Fit(T,S.isTypeOnly)===void 0&&uie(R))g.insertExportModifier(T,R);else{let O=d.get(T)||{typeOnlyExports:[],exports:[]};S.isTypeOnly?O.typeOnlyExports.push(S):O.exports.push(S),d.set(T,O)}}),d.forEach((h,_)=>{let S=Fit(_,!0);S&&S.isTypeOnly?(DQt(g,c,_,h.typeOnlyExports,S),DQt(g,c,_,h.exports,Fit(_,!1))):DQt(g,c,_,[...h.exports,...h.typeOnlyExports],S)})}))}});function oln(s,c,g){var d,h;let _=Jc(s,c);if(Ir(_)){let S=ji(_,Yf);if(S===void 0)return;let R=Lg(S.moduleSpecifier)?S.moduleSpecifier:void 0;if(R===void 0)return;let T=(d=g.getResolvedModuleFromModuleSpecifier(R,s))==null?void 0:d.resolvedModule;if(T===void 0)return;let O=g.getSourceFile(T.resolvedFileName);if(O===void 0||Ase(g,O))return;let V=O.symbol,M=(h=Gs(V.valueDeclaration,HI))==null?void 0:h.locals;if(M===void 0)return;let ee=M.get(_.escapedText);if(ee===void 0)return;let re=RGs(ee);return re===void 0?void 0:{exportName:{node:_,isTypeOnly:aQ(re)},node:re,moduleSourceFile:O,moduleSpecifier:R.text}}}function TGs(s,c,{exportName:g,node:d,moduleSourceFile:h}){let _=Fit(h,g.isTypeOnly);_?aln(s,c,h,_,[g]):uie(d)?s.insertExportModifier(h,d):cln(s,c,h,[g])}function DQt(s,c,g,d,h){B(d)&&(h?aln(s,c,g,h,d):cln(s,c,g,d))}function Fit(s,c){let g=d=>Vh(d)&&(c&&d.isTypeOnly||!d.isTypeOnly);return be(s.statements,g)}function aln(s,c,g,d,h){let _=d.exportClause&&Ev(d.exportClause)?d.exportClause.elements:me.createNodeArray([]),S=!d.isTypeOnly&&!!(uS(c.getCompilerOptions())||de(_,R=>R.isTypeOnly));s.replaceNode(g,d,me.updateExportDeclaration(d,d.modifiers,d.isTypeOnly,me.createNamedExports(me.createNodeArray([..._,...lln(h,S)],_.hasTrailingComma)),d.moduleSpecifier,d.attributes))}function cln(s,c,g,d){s.insertNodeAtEndOfScope(g,g,me.createExportDeclaration(void 0,!1,me.createNamedExports(lln(d,uS(c.getCompilerOptions()))),void 0,void 0))}function lln(s,c){return me.createNodeArray(lt(s,g=>me.createExportSpecifier(c&&g.isTypeOnly,void 0,g.node)))}function RGs(s){if(s.valueDeclaration===void 0)return Nc(s.declarations);let c=s.valueDeclaration,g=nc(c)?Gs(c.parent.parent,Eh):void 0;return g&&B(g.declarationList.declarations)===1?g:c}var kQt="fixIncorrectNamedTupleSyntax",NGs=[Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];Gg({errorCodes:NGs,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=DGs(g,d.start),_=xo.ChangeTracker.with(c,S=>kGs(S,g,h));return[gg(kQt,_,Z.Move_labeled_tuple_element_modifiers_to_labels,kQt,Z.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[kQt]});function DGs(s,c){let g=Jc(s,c);return ji(g,d=>d.kind===203)}function kGs(s,c,g){if(!g)return;let d=g.type,h=!1,_=!1;for(;d.kind===191||d.kind===192||d.kind===197;)d.kind===191?h=!0:d.kind===192&&(_=!0),d=d.type;let S=me.updateNamedTupleMember(g,g.dotDotDotToken||(_?me.createToken(26):void 0),g.name,g.questionToken||(h?me.createToken(58):void 0),d);S!==g&&s.replaceNode(c,g,S)}var uln="fixSpelling",gln=[Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Could_not_find_name_0_Did_you_mean_1.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z._0_has_no_exported_member_named_1_Did_you_mean_2.code,Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.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.code,Z.No_overload_matches_this_call.code,Z.Type_0_is_not_assignable_to_type_1.code];Gg({errorCodes:gln,getCodeActions(s){let{sourceFile:c,errorCode:g}=s,d=Aln(c,s.span.start,s,g);if(!d)return;let{node:h,suggestedSymbol:_}=d,S=Hg(s.host.getCompilationSettings()),R=xo.ChangeTracker.with(s,T=>dln(T,c,h,_,S));return[gg("spelling",R,[Z.Change_spelling_to_0,of(_)],uln,Z.Fix_all_detected_spelling_errors)]},fixIds:[uln],getAllCodeActions:s=>Jd(s,gln,(c,g)=>{let d=Aln(g.file,g.start,s,g.code),h=Hg(s.host.getCompilationSettings());d&&dln(c,s.sourceFile,d.node,d.suggestedSymbol,h)})});function Aln(s,c,g,d){let h=Jc(s,c),_=h.parent;if((d===Z.No_overload_matches_this_call.code||d===Z.Type_0_is_not_assignable_to_type_1.code)&&!RN(_))return;let S=g.program.getTypeChecker(),R;if(jo(_)&&_.name===h){pe.assert(Bw(h),"Expected an identifier for spelling (property access)");let T=S.getTypeAtLocation(_.expression);_.flags&64&&(T=S.getNonNullableType(T)),R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(po(_)&&_.operatorToken.kind===103&&_.left===h&&p(h)){let T=S.getTypeAtLocation(_.right);R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(zi(_)&&_.right===h){let T=S.getSymbolAtLocation(_.left);T&&T.flags&1536&&(R=S.getSuggestedSymbolForNonexistentModule(_.right,T))}else if(dy(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for spelling (import)");let T=ji(h,Yf),O=GGs(g,T,s);O&&O.symbol&&(R=S.getSuggestedSymbolForNonexistentModule(h,O.symbol))}else if(RN(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for JSX attribute");let T=ji(h,nI),O=S.getContextualTypeForArgumentAtIndex(T,0);R=S.getSuggestedSymbolForNonexistentJSXAttribute(h,O)}else if(Hne(_)&&MI(_)&&_.name===h){let T=ji(h,xa),O=T?kB(T):void 0,V=O?S.getTypeAtLocation(O):void 0;V&&(R=S.getSuggestedSymbolForNonexistentClassMember(Fp(h),V))}else{let T=QU(h),O=Fp(h);pe.assert(O!==void 0,"name should be defined"),R=S.getSuggestedSymbolForNonexistentSymbol(h,O,xGs(T))}return R===void 0?void 0:{node:h,suggestedSymbol:R}}function dln(s,c,g,d,h){let _=of(d);if(!qh(_,h)&&jo(g.parent)){let S=d.valueDeclaration;S&&sh(S)&&p(S.name)?s.replaceNode(c,g,me.createIdentifier(_)):s.replaceNode(c,g.parent,me.createElementAccessExpression(g.parent.expression,me.createStringLiteral(_)))}else s.replaceNode(c,g,me.createIdentifier(_))}function xGs(s){let c=0;return s&4&&(c|=1920),s&2&&(c|=788968),s&1&&(c|=111551),c}function GGs(s,c,g){var d;if(!c||!_A(c.moduleSpecifier))return;let h=(d=s.program.getResolvedModuleFromModuleSpecifier(c.moduleSpecifier,g))==null?void 0:d.resolvedModule;if(h)return s.program.getSourceFile(h.resolvedFileName)}var xQt="returnValueCorrect",GQt="fixAddReturnStatement",FQt="fixRemoveBracesFromArrowFunctionBody",ZQt="fixWrapTheBlockWithParen",pln=[Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];Gg({errorCodes:pln,fixIds:[GQt,FQt,ZQt],getCodeActions:function(c){let{program:g,sourceFile:d,span:{start:h},errorCode:_}=c,S=Iln(g.getTypeChecker(),d,h,_);if(S)return S.kind===0?Ft([ZGs(c,S.expression,S.statement)],gA(S.declaration)?LGs(c,S.declaration,S.expression,S.commentSource):void 0):[VGs(c,S.declaration,S.expression)]},getAllCodeActions:s=>Jd(s,pln,(c,g)=>{let d=Iln(s.program.getTypeChecker(),g.file,g.start,g.code);if(d)switch(s.fixId){case GQt:hln(c,g.file,d.expression,d.statement);break;case FQt:if(!gA(d.declaration))return;mln(c,g.file,d.declaration,d.expression,d.commentSource,!1);break;case ZQt:if(!gA(d.declaration))return;Cln(c,g.file,d.declaration,d.expression);break;default:pe.fail(JSON.stringify(s.fixId))}})});function fln(s,c,g){let d=s.createSymbol(4,c.escapedText);d.links.type=s.getTypeAtLocation(g);let h=$u([d]);return s.createAnonymousType(void 0,h,[],[],[])}function LQt(s,c,g,d){if(!c.body||!eg(c.body)||B(c.body.statements)!==1)return;let h=ma(c.body.statements);if(PC(h)&&VQt(s,c,s.getTypeAtLocation(h.expression),g,d))return{declaration:c,kind:0,expression:h.expression,statement:h,commentSource:h.expression};if(YW(h)&&PC(h.statement)){let _=me.createObjectLiteralExpression([me.createPropertyAssignment(h.label,h.statement.expression)]),S=fln(s,h.label,h.statement.expression);if(VQt(s,c,S,g,d))return gA(c)?{declaration:c,kind:1,expression:_,statement:h,commentSource:h.statement.expression}:{declaration:c,kind:0,expression:_,statement:h,commentSource:h.statement.expression}}else if(eg(h)&&B(h.statements)===1){let _=ma(h.statements);if(YW(_)&&PC(_.statement)){let S=me.createObjectLiteralExpression([me.createPropertyAssignment(_.label,_.statement.expression)]),R=fln(s,_.label,_.statement.expression);if(VQt(s,c,R,g,d))return{declaration:c,kind:0,expression:S,statement:h,commentSource:_}}}}function VQt(s,c,g,d,h){if(h){let _=s.getSignatureFromDeclaration(c);if(_){Ga(c,1024)&&(g=s.createPromiseType(g));let S=s.createSignature(c,_.typeParameters,_.thisParameter,_.parameters,g,void 0,_.minArgumentCount,_.flags);g=s.createAnonymousType(void 0,$u(),[S],[],[])}else g=s.getAnyType()}return s.isTypeAssignableTo(g,d)}function Iln(s,c,g,d){let h=Jc(c,g);if(!h.parent)return;let _=ji(h.parent,Gd);switch(d){case Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!_||!_.body||!_.type||!gy(_.type,h)?void 0:LQt(s,_,s.getTypeFromTypeNode(_.type),!1);case Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!_||!Ll(_.parent)||!_.body)return;let S=_.parent.arguments.indexOf(_);if(S===-1)return;let R=s.getContextualTypeForArgumentAtIndex(_.parent,S);return R?LQt(s,_,R,!0):void 0;case Z.Type_0_is_not_assignable_to_type_1.code:if(!KT(h)||!D7(h.parent)&&!RN(h.parent))return;let T=FGs(h.parent);return!T||!Gd(T)||!T.body?void 0:LQt(s,T,s.getTypeAtLocation(h.parent),!0)}}function FGs(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:return s.initializer;case 292:return s.initializer&&(Rie(s.initializer)?s.initializer.expression:void 0);case 305:case 172:case 307:case 349:case 342:return}}function hln(s,c,g,d){Py(g);let h=P1e(c);s.replaceNode(c,d,me.createReturnStatement(g),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,suffix:h?";":void 0})}function mln(s,c,g,d,h,_){let S=_||EWe(d)?me.createParenthesizedExpression(d):d;Py(h),JU(h,S),s.replaceNode(c,g.body,S)}function Cln(s,c,g,d){s.replaceNode(c,g.body,me.createParenthesizedExpression(d))}function ZGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>hln(h,s.sourceFile,c,g));return gg(xQt,d,Z.Add_a_return_statement,GQt,Z.Add_all_missing_return_statement)}function LGs(s,c,g,d){let h=xo.ChangeTracker.with(s,_=>mln(_,s.sourceFile,c,g,d,!1));return gg(xQt,h,Z.Remove_braces_from_arrow_function_body,FQt,Z.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function VGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>Cln(h,s.sourceFile,c,g));return gg(xQt,d,Z.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,ZQt,Z.Wrap_all_object_literal_with_parentheses)}var g5="fixMissingMember",Zit="fixMissingProperties",Lit="fixMissingAttributes",Vit="fixMissingFunctionDeclaration",_ln=[Z.Property_0_does_not_exist_on_type_1.code,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_is_missing_in_type_1_but_required_in_type_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Cannot_find_name_0.code,Z.Type_0_does_not_satisfy_the_expected_type_1.code];Gg({errorCodes:_ln,getCodeActions(s){let c=s.program.getTypeChecker(),g=yln(s.sourceFile,s.span.start,s.errorCode,c,s.program);if(g){if(g.kind===3){let d=xo.ChangeTracker.with(s,h=>Dln(h,s,g));return[gg(Zit,d,Z.Add_missing_properties,Zit,Z.Add_all_missing_properties)]}if(g.kind===4){let d=xo.ChangeTracker.with(s,h=>Nln(h,s,g));return[gg(Lit,d,Z.Add_missing_attributes,Lit,Z.Add_all_missing_attributes)]}if(g.kind===2||g.kind===5){let d=xo.ChangeTracker.with(s,h=>Rln(h,s,g));return[gg(Vit,d,[Z.Add_missing_function_declaration_0,g.token.text],Vit,Z.Add_all_missing_function_declarations)]}if(g.kind===1){let d=xo.ChangeTracker.with(s,h=>Tln(h,s.program.getTypeChecker(),g));return[gg(g5,d,[Z.Add_missing_enum_member_0,g.token.text],g5,Z.Add_all_missing_members)]}return Nn(HGs(s,g),WGs(s,g))}},fixIds:[g5,Vit,Zit,Lit],getAllCodeActions:s=>{let{program:c,fixId:g}=s,d=c.getTypeChecker(),h=new Set,_=new Map;return iq(xo.ChangeTracker.with(s,S=>{sq(s,_ln,R=>{let T=yln(R.file,R.start,R.code,d,s.program);if(T===void 0)return;let O=id(T.parentDeclaration)+"#"+(T.kind===3?T.identifier||id(T.token):T.token.text);if(Wy(h,O)){if(g===Vit&&(T.kind===2||T.kind===5))Rln(S,s,T);else if(g===Zit&&T.kind===3)Dln(S,s,T);else if(g===Lit&&T.kind===4)Nln(S,s,T);else if(T.kind===1&&Tln(S,d,T),T.kind===0){let{parentDeclaration:V,token:M}=T,ee=cr(_,V,()=>[]);ee.some(re=>re.token.text===M.text)||ee.push(T)}}}),_.forEach((R,T)=>{let O=bh(T)?void 0:UGs(T,d);for(let V of R){if(O?.some(Ee=>{let Ne=_.get(Ee);return!!Ne&&Ne.some(({token:Te})=>Te.text===V.token.text)}))continue;let{parentDeclaration:M,declSourceFile:ee,modifierFlags:re,token:ge,call:Ie,isJSFile:_e}=V;if(Ie&&!p(ge))wln(s,S,Ie,ge,re&256,M,ee);else if(_e&&!p_(M)&&!bh(M))bln(S,ee,M,ge,!!(re&256));else{let Ee=Sln(d,M,ge);vln(S,ee,M,ge.text,Ee,re&256)}}})}))}});function yln(s,c,g,d,h){var _,S;let R=Jc(s,c),T=R.parent;if(g===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(R.kind===19&&ag(T)&&Ll(T.parent)))return;let ge=Se(T.parent.arguments,Ne=>Ne===T);if(ge<0)return;let Ie=d.getResolvedSignature(T.parent);if(!(Ie&&Ie.declaration&&Ie.parameters[ge]))return;let _e=Ie.parameters[ge].valueDeclaration;if(!(_e&&Si(_e)&&Ir(_e.name)))return;let Ee=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),d.getParameterType(Ie,ge).getNonNullableType(),!1,!1));return B(Ee)?{kind:3,token:_e.name,identifier:_e.name.text,properties:Ee,parentDeclaration:T}:void 0}if(R.kind===19||Xg(T)||_2(T)){let ge=(Xg(T)||_2(T))&&T.expression?T.expression:T;if(ag(ge)){let Ie=Xg(T)?d.getTypeFromTypeNode(T.type):d.getContextualType(ge)||d.getTypeAtLocation(ge),_e=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),Ie.getNonNullableType(),!1,!1));return B(_e)?{kind:3,token:T,identifier:void 0,properties:_e,parentDeclaration:ge,indentation:_2(ge.parent)||Qd(ge.parent)?0:void 0}:void 0}}if(!Bw(R))return;if(Ir(R)&&XT(T)&&T.initializer&&ag(T.initializer)){let ge=(_=d.getContextualType(R)||d.getTypeAtLocation(R))==null?void 0:_.getNonNullableType(),Ie=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T.initializer),ge,!1,!1));return B(Ie)?{kind:3,token:R,identifier:R.text,properties:Ie,parentDeclaration:T.initializer}:void 0}if(Ir(R)&&nI(R.parent)){let ge=Hg(h.getCompilerOptions()),Ie=QGs(d,ge,R.parent);return B(Ie)?{kind:4,token:R,attributes:Ie,parentDeclaration:R.parent}:void 0}if(Ir(R)){let ge=(S=d.getContextualType(R))==null?void 0:S.getNonNullableType();if(ge&&la(ge)&16){let Ie=Nc(d.getSignaturesOfType(ge,0));return Ie===void 0?void 0:{kind:5,token:R,signature:Ie,sourceFile:s,parentDeclaration:kln(R)}}if(Ll(T)&&T.expression===R)return{kind:2,token:R,call:T,sourceFile:s,modifierFlags:0,parentDeclaration:kln(R)}}if(!jo(T))return;let O=int(d.getTypeAtLocation(T.expression)),V=O.symbol;if(!V||!V.declarations)return;if(Ir(R)&&Ll(T.parent)){let ge=de(V.declarations,Lh),Ie=ge?.getSourceFile();if(ge&&Ie&&!Ase(h,Ie))return{kind:2,token:R,call:T.parent,sourceFile:Ie,modifierFlags:32,parentDeclaration:ge};let _e=de(V.declarations,cl);if(s.commonJsModuleIndicator)return;if(_e&&!Ase(h,_e))return{kind:2,token:R,call:T.parent,sourceFile:_e,modifierFlags:32,parentDeclaration:_e}}let M=de(V.declarations,xa);if(!M&&p(R))return;let ee=M||de(V.declarations,ge=>p_(ge)||bh(ge));if(ee&&!Ase(h,ee.getSourceFile())){let ge=!bh(ee)&&(O.target||O)!==d.getDeclaredTypeOfSymbol(V);if(ge&&(p(R)||p_(ee)))return;let Ie=ee.getSourceFile(),_e=bh(ee)?0:(ge?256:0)|(Dnt(R.text)?2:0),Ee=o0(Ie),Ne=Gs(T.parent,Ll);return{kind:0,token:R,call:Ne,modifierFlags:_e,parentDeclaration:ee,declSourceFile:Ie,isJSFile:Ee}}let re=de(V.declarations,J3);if(re&&!(O.flags&1056)&&!p(R)&&!Ase(h,re.getSourceFile()))return{kind:1,token:R,parentDeclaration:re}}function WGs(s,c){return c.isJSFile?j_(OGs(s,c)):PGs(s,c)}function OGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){if(p_(c)||bh(c))return;let _=xo.ChangeTracker.with(s,R=>bln(R,g,c,h,!!(d&256)));if(_.length===0)return;let S=d&256?Z.Initialize_static_property_0:p(h)?Z.Declare_a_private_field_named_0:Z.Initialize_property_0_in_the_constructor;return gg(g5,_,[S,h.text],g5,Z.Add_all_missing_members)}function bln(s,c,g,d,h){let _=d.text;if(h){if(g.kind===232)return;let S=g.name.getText(),R=Eln(me.createIdentifier(S),_);s.insertNodeAfter(c,g,R)}else if(p(d)){let S=me.createPropertyDeclaration(void 0,_,void 0,void 0,void 0),R=Bln(g);R?s.insertNodeAfter(c,R,S):s.insertMemberAtStart(c,g,S)}else{let S=fN(g);if(!S)return;let R=Eln(me.createThis(),_);s.insertNodeAtConstructorEnd(c,S,R)}}function Eln(s,c){return me.createExpressionStatement(me.createAssignment(me.createPropertyAccessExpression(s,c),aq()))}function PGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){let _=h.text,S=d&256,R=Sln(s.program.getTypeChecker(),c,h),T=V=>xo.ChangeTracker.with(s,M=>vln(M,g,c,_,R,V)),O=[gg(g5,T(d&256),[S?Z.Declare_static_property_0:Z.Declare_property_0,_],g5,Z.Add_all_missing_members)];return S||p(h)||(d&2&&O.unshift(gR(g5,T(2),[Z.Declare_private_property_0,_])),O.push(MGs(s,g,c,h.text,R))),O}function Sln(s,c,g){let d;if(g.parent.parent.kind===227){let h=g.parent.parent,_=g.parent===h.left?h.right:h.left,S=s.getWidenedType(s.getBaseTypeOfLiteralType(s.getTypeAtLocation(_)));d=s.typeToTypeNode(S,c,1,8)}else{let h=s.getContextualType(g.parent);d=h?s.typeToTypeNode(h,void 0,1,8):void 0}return d||me.createKeywordTypeNode(133)}function vln(s,c,g,d,h,_){let S=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,R=xa(g)?me.createPropertyDeclaration(S,d,void 0,h,void 0):me.createPropertySignature(void 0,d,void 0,h),T=Bln(g);T?s.insertNodeAfter(c,T,R):s.insertMemberAtStart(c,g,R)}function Bln(s){let c;for(let g of s.members){if(!pi(g))break;c=g}return c}function MGs(s,c,g,d,h){let _=me.createKeywordTypeNode(154),S=me.createParameterDeclaration(void 0,void 0,"x",void 0,_,void 0),R=me.createIndexSignature(void 0,[S],h),T=xo.ChangeTracker.with(s,O=>O.insertMemberAtStart(c,g,R));return gR(g5,T,[Z.Add_index_signature_for_property_0,d])}function HGs(s,c){let{parentDeclaration:g,declSourceFile:d,modifierFlags:h,token:_,call:S}=c;if(S===void 0)return;let R=_.text,T=V=>xo.ChangeTracker.with(s,M=>wln(s,M,S,_,V,g,d)),O=[gg(g5,T(h&256),[h&256?Z.Declare_static_method_0:Z.Declare_method_0,R],g5,Z.Add_all_missing_members)];return h&2&&O.unshift(gR(g5,T(2),[Z.Declare_private_method_0,R])),O}function wln(s,c,g,d,h,_,S){let R=xQ(S,s.program,s.preferences,s.host),T=xa(_)?175:174,O=pXt(T,s,R,g,d,h,_),V=XGs(_,g);V?c.insertNodeAfter(S,V,O):c.insertMemberAtStart(S,_,O),R.writeFixes(c)}function Tln(s,c,{token:g,parentDeclaration:d}){let h=zt(d.members,T=>{let O=c.getTypeAtLocation(T);return!!(O&&O.flags&402653316)}),_=d.getSourceFile(),S=me.createEnumMember(g,h?me.createStringLiteral(g.text):void 0),R=li(d.members);R?s.insertNodeInListAfter(_,R,S,d.members):s.insertMemberAtStart(_,d,S)}function Rln(s,c,g){let d=S1(c.sourceFile,c.preferences),h=xQ(c.sourceFile,c.program,c.preferences,c.host),_=g.kind===2?pXt(263,c,h,g.call,Vo(g.token),g.modifierFlags,g.parentDeclaration):Uit(263,c,d,g.signature,lOe(Z.Function_not_implemented.message,d),g.token,void 0,void 0,void 0,h);_===void 0&&pe.fail("fixMissingFunctionDeclaration codefix got unexpected error."),_2(g.parentDeclaration)?s.insertNodeBefore(g.sourceFile,g.parentDeclaration,_,!0):s.insertNodeAtEndOfScope(g.sourceFile,g.parentDeclaration,_),h.writeFixes(s)}function Nln(s,c,g){let d=xQ(c.sourceFile,c.program,c.preferences,c.host),h=S1(c.sourceFile,c.preferences),_=c.program.getTypeChecker(),S=g.parentDeclaration.attributes,R=zt(S.properties,Zz),T=lt(g.attributes,M=>{let ee=Wit(c,_,d,h,_.getTypeOfSymbol(M),g.parentDeclaration),re=me.createIdentifier(M.name),ge=me.createJsxAttribute(re,me.createJsxExpression(void 0,ee));return UA(re,ge),ge}),O=me.createJsxAttributes(R?[...T,...S.properties]:[...S.properties,...T]),V={prefix:S.pos===S.end?" ":void 0};s.replaceNode(c.sourceFile,S,O,V),d.writeFixes(s)}function Dln(s,c,g){let d=xQ(c.sourceFile,c.program,c.preferences,c.host),h=S1(c.sourceFile,c.preferences),_=Hg(c.program.getCompilerOptions()),S=c.program.getTypeChecker(),R=lt(g.properties,O=>{let V=Wit(c,S,d,h,S.getTypeOfSymbol(O),g.parentDeclaration);return me.createPropertyAssignment(JGs(O,_,h,S),V)}),T={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,indentation:g.indentation};s.replaceNode(c.sourceFile,g.parentDeclaration,me.createObjectLiteralExpression([...g.parentDeclaration.properties,...R],!0),T),d.writeFixes(s)}function Wit(s,c,g,d,h,_){if(h.flags&3)return aq();if(h.flags&134217732)return me.createStringLiteral("",d===0);if(h.flags&8)return me.createNumericLiteral(0);if(h.flags&64)return me.createBigIntLiteral("0n");if(h.flags&16)return me.createFalse();if(h.flags&1056){let S=h.symbol.exports?oA(h.symbol.exports.values()):h.symbol,R=h.symbol.parent&&h.symbol.parent.flags&256?h.symbol.parent:h.symbol,T=c.symbolToExpression(R,111551,void 0,64);return S===void 0||T===void 0?me.createNumericLiteral(0):me.createPropertyAccessExpression(T,c.symbolToString(S))}if(h.flags&256)return me.createNumericLiteral(h.value);if(h.flags&2048)return me.createBigIntLiteral(h.value);if(h.flags&128)return me.createStringLiteral(h.value,d===0);if(h.flags&512)return h===c.getFalseType()||h===c.getFalseType(!0)?me.createFalse():me.createTrue();if(h.flags&65536)return me.createNull();if(h.flags&1048576)return J(h.types,R=>Wit(s,c,g,d,R,_))??aq();if(c.isArrayLikeType(h))return me.createArrayLiteralExpression();if(YGs(h)){let S=lt(c.getPropertiesOfType(h),R=>{let T=Wit(s,c,g,d,c.getTypeOfSymbol(R),_);return me.createPropertyAssignment(R.name,T)});return me.createObjectLiteralExpression(S,!0)}if(la(h)&16){if(de(h.symbol.declarations||E,Qp(Z_,Il,gu))===void 0)return aq();let R=c.getSignaturesOfType(h,0);return R===void 0?aq():Uit(219,s,d,R[0],lOe(Z.Function_not_implemented.message,d),void 0,void 0,void 0,_,g)??aq()}if(la(h)&1){let S=mN(h.symbol);if(S===void 0||ZW(S))return aq();let R=fN(S);return R&&B(R.parameters)?aq():me.createNewExpression(me.createIdentifier(h.symbol.name),void 0,void 0)}return aq()}function aq(){return me.createIdentifier("undefined")}function YGs(s){return s.flags&524288&&(la(s)&128||s.symbol&&Gs(Ws(s.symbol.declarations),bh))}function QGs(s,c,g){let d=s.getContextualType(g.attributes);if(d===void 0)return E;let h=d.getProperties();if(!B(h))return E;let _=new Set;for(let S of g.attributes.properties)if(RN(S)&&_.add(Ez(S.name)),Zz(S)){let R=s.getTypeAtLocation(S.expression);for(let T of R.getProperties())_.add(T.escapedName)}return Le(h,S=>qh(S.name,c,1)&&!(S.flags&16777216||aI(S)&48||_.has(S.escapedName)))}function XGs(s,c){if(bh(s))return;let g=ji(c,d=>gu(d)||Tc(d));return g&&g.parent===s?g:void 0}function JGs(s,c,g,d){if(Tw(s)){let h=d.symbolToNode(s,111551,void 0,void 0,1);if(h&&Un(h))return h}return lie(s.name,c,g===0,!1,!1)}function kln(s){if(ji(s,Rie)){let c=ji(s.parent,_2);if(c)return c}return ms(s)}function UGs(s,c){let g=[];for(;s;){let d=UL(s),h=d&&c.getSymbolAtLocation(d.expression);if(!h)break;let _=h.flags&2097152?c.getAliasedSymbol(h):h,S=_.declarations&&de(_.declarations,xa);if(!S)break;g.push(S),s=S}return g}var WQt="addMissingNewOperator",xln=[Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];Gg({errorCodes:xln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=xo.ChangeTracker.with(s,h=>Gln(h,c,g));return[gg(WQt,d,Z.Add_missing_new_operator_to_call,WQt,Z.Add_missing_new_operator_to_all_calls)]},fixIds:[WQt],getAllCodeActions:s=>Jd(s,xln,(c,g)=>Gln(c,s.sourceFile,g))});function Gln(s,c,g){let d=Ma(KGs(c,g),Ll),h=me.createNewExpression(d.expression,d.typeArguments,d.arguments);s.replaceNode(c,d,h)}function KGs(s,c){let g=Jc(s,c.start),d=Rs(c);for(;g.endMit(R,s.program,s.preferences,s.host,d,h)),[B(h)>1?Z.Add_missing_parameters_to_0:Z.Add_missing_parameter_to_0,g],Oit,Z.Add_all_missing_parameters)),B(_)&&Ft(S,gg(Pit,xo.ChangeTracker.with(s,R=>Mit(R,s.program,s.preferences,s.host,d,_)),[B(_)>1?Z.Add_optional_parameters_to_0:Z.Add_optional_parameter_to_0,g],Pit,Z.Add_all_optional_parameters)),S},getAllCodeActions:s=>Jd(s,Fln,(c,g)=>{let d=Zln(s.sourceFile,s.program,g.start);if(d){let{declarations:h,newParameters:_,newOptionalParameters:S}=d;s.fixId===Oit&&Mit(c,s.program,s.preferences,s.host,h,_),s.fixId===Pit&&Mit(c,s.program,s.preferences,s.host,h,S)}})});function Zln(s,c,g){let d=Jc(s,g),h=ji(d,Ll);if(h===void 0||B(h.arguments)===0)return;let _=c.getTypeChecker(),S=_.getTypeAtLocation(h.expression),R=Le(S.symbol.declarations,Lln);if(R===void 0)return;let T=li(R);if(T===void 0||T.body===void 0||Ase(c,T.getSourceFile()))return;let O=jGs(T);if(O===void 0)return;let V=[],M=[],ee=B(T.parameters),re=B(h.arguments);if(ee>re)return;let ge=[T,...qGs(T,R)];for(let Ie=0,_e=0,Ee=0;Ie{let T=ms(R),O=xQ(T,c,g,d);B(R.parameters)?s.replaceNodeRangeWithNodes(T,ma(R.parameters),Ei(R.parameters),Vln(O,S,R,_),{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include}):F(Vln(O,S,R,_),(V,M)=>{B(R.parameters)===0&&M===0?s.insertNodeAt(T,R.parameters.end,V):s.insertNodeAtEndOfList(T,R.parameters,V)}),O.writeFixes(s)})}function Lln(s){switch(s.kind){case 263:case 219:case 175:case 220:return!0;default:return!1}}function Vln(s,c,g,d){let h=lt(g.parameters,_=>me.createParameterDeclaration(_.modifiers,_.dotDotDotToken,_.name,_.questionToken,_.type,_.initializer));for(let{pos:_,declaration:S}of d){let R=_>0?h[_-1]:void 0;h.splice(_,0,me.updateParameterDeclaration(S,S.modifiers,S.dotDotDotToken,S.name,R&&R.questionToken?me.createToken(58):S.questionToken,tFs(s,S.type,c),S.initializer))}return h}function qGs(s,c){let g=[];for(let d of c)if($Gs(d)){if(B(d.parameters)===B(s.parameters)){g.push(d);continue}if(B(d.parameters)>B(s.parameters))return[]}return g}function $Gs(s){return Lln(s)&&s.body===void 0}function Wln(s,c,g){return me.createParameterDeclaration(void 0,void 0,s,g,c,void 0)}function eFs(s,c){return B(s)&&zt(s,g=>cJd(s,Mln,(c,g,d)=>{let h=Yln(g.file,g.start);if(h!==void 0)switch(s.fixId){case OQt:{let _=Qln(h,s.host,g.code);_&&d.push(Hln(g.file.fileName,_));break}default:pe.fail(`Bad fixId: ${s.fixId}`)}})});function Hln(s,c){return{type:"install package",file:s,packageName:c}}function Yln(s,c){let g=Gs(Jc(s,c),Lg);if(!g)return;let d=g.text,{packageName:h}=jEe(d);return Xr(h)?void 0:h}function Qln(s,c,g){var d;return g===Oln?wU.has(s)?"@types/node":void 0:(d=c.isKnownTypesPackageName)!=null&&d.call(c,s)?nVe(s):void 0}var Xln=[Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],PQt="fixClassDoesntImplementInheritedAbstractMember";Gg({errorCodes:Xln,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=xo.ChangeTracker.with(c,_=>Uln(Jln(g,d.start),g,c,_,c.preferences));return h.length===0?void 0:[gg(PQt,h,Z.Implement_inherited_abstract_class,PQt,Z.Implement_all_inherited_abstract_classes)]},fixIds:[PQt],getAllCodeActions:function(c){let g=new Set;return Jd(c,Xln,(d,h)=>{let _=Jln(h.file,h.start);Wy(g,id(_))&&Uln(_,c.sourceFile,c,d,c.preferences)})}});function Jln(s,c){let g=Jc(s,c);return Ma(g.parent,xa)}function Uln(s,c,g,d,h){let _=kB(s),S=g.program.getTypeChecker(),R=S.getTypeAtLocation(_),T=S.getPropertiesOfType(R).filter(nFs),O=xQ(c,g.program,h,g.host);dXt(s,T,c,g,h,O,V=>d.insertMemberAtStart(c,s,V)),O.writeFixes(d)}function nFs(s){let c=Zx(ma(s.getDeclarations()));return!(c&2)&&!!(c&64)}var MQt="classSuperMustPrecedeThisAccess",Kln=[Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];Gg({errorCodes:Kln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=zln(c,g.start);if(!d)return;let{constructor:h,superCall:_}=d,S=xo.ChangeTracker.with(s,R=>jln(R,c,h,_));return[gg(MQt,S,Z.Make_super_call_the_first_statement_in_the_constructor,MQt,Z.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[MQt],getAllCodeActions(s){let{sourceFile:c}=s,g=new Set;return Jd(s,Kln,(d,h)=>{let _=zln(h.file,h.start);if(!_)return;let{constructor:S,superCall:R}=_;Wy(g,id(S.parent))&&jln(d,c,S,R)})}});function jln(s,c,g,d){s.insertNodeAtConstructorStart(c,g,d),s.delete(c,d)}function zln(s,c){let g=Jc(s,c);if(g.kind!==110)return;let d=I1(g),h=qln(d.body);return h&&!h.expression.arguments.some(_=>jo(_)&&_.expression===g)?{constructor:d,superCall:h}:void 0}function qln(s){return PC(s)&&Gy(s.expression)?s:Eu(s)?void 0:Lu(s,qln)}var HQt="constructorForDerivedNeedSuperCall",$ln=[Z.Constructors_for_derived_classes_must_contain_a_super_call.code];Gg({errorCodes:$ln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=eun(c,g.start),h=xo.ChangeTracker.with(s,_=>tun(_,c,d));return[gg(HQt,h,Z.Add_missing_super_call,HQt,Z.Add_all_missing_super_calls)]},fixIds:[HQt],getAllCodeActions:s=>Jd(s,$ln,(c,g)=>tun(c,s.sourceFile,eun(g.file,g.start)))});function eun(s,c){let g=Jc(s,c);return pe.assert(Tc(g.parent),"token should be at the constructor declaration"),g.parent}function tun(s,c,g){let d=me.createExpressionStatement(me.createCallExpression(me.createSuper(),void 0,E));s.insertNodeAtConstructorStart(c,g,d)}var nun="fixEnableJsxFlag",iun=[Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];Gg({errorCodes:iun,getCodeActions:function(c){let{configFile:g}=c.program.getCompilerOptions();if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>sun(h,g));return[gR(nun,d,Z.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[nun],getAllCodeActions:s=>Jd(s,iun,c=>{let{configFile:g}=s.program.getCompilerOptions();g!==void 0&&sun(c,g)})});function sun(s,c){CXt(s,c,"jsx",me.createStringLiteral("react"))}var YQt="fixNaNEquality",oun=[Z.This_condition_will_always_return_0.code];Gg({errorCodes:oun,getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=aun(d,c,g);if(h===void 0)return;let{suggestion:_,expression:S,arg:R}=h,T=xo.ChangeTracker.with(s,O=>cun(O,c,R,S));return[gg(YQt,T,[Z.Use_0,_],YQt,Z.Use_Number_isNaN_in_all_conditions)]},fixIds:[YQt],getAllCodeActions:s=>Jd(s,oun,(c,g)=>{let d=aun(s.program,g.file,$d(g.start,g.length));d&&cun(c,g.file,d.arg,d.expression)})});function aun(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.Did_you_mean_0.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=yXt(h.file,$d(h.start,h.length));if(_!==void 0&&un(_)&&po(_.parent))return{suggestion:iFs(h.messageText),expression:_.parent,arg:_}}function cun(s,c,g,d){let h=me.createCallExpression(me.createPropertyAccessExpression(me.createIdentifier("Number"),me.createIdentifier("isNaN")),void 0,[g]),_=d.operatorToken.kind;s.replaceNode(c,d,_===38||_===36?me.createPrefixUnaryExpression(54,h):h)}function iFs(s){let[,c]=xN(s,` +`,0).match(/'(.*)'/)||[];return c}Gg({errorCodes:[Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(c){let g=c.program.getCompilerOptions(),{configFile:d}=g;if(d===void 0)return;let h=[],_=a0(g);if(_>=5&&_<99){let O=xo.ChangeTracker.with(c,V=>{CXt(V,d,"module",me.createStringLiteral("esnext"))});h.push(gR("fixModuleOption",O,[Z.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}let R=Hg(g);if(R<4||R>99){let O=xo.ChangeTracker.with(c,V=>{if(!x7(d))return;let ee=[["target",me.createStringLiteral("es2017")]];_===1&&ee.push(["module",me.createStringLiteral("commonjs")]),mXt(V,d,ee)});h.push(gR("fixTargetOption",O,[Z.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return h.length?h:void 0}});var QQt="fixPropertyAssignment",lun=[Z.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.code];Gg({errorCodes:lun,fixIds:[QQt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=gun(c,g.start),h=xo.ChangeTracker.with(s,_=>uun(_,s.sourceFile,d));return[gg(QQt,h,[Z.Change_0_to_1,"=",":"],QQt,[Z.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:s=>Jd(s,lun,(c,g)=>uun(c,g.file,gun(g.file,g.start)))});function uun(s,c,g){s.replaceNode(c,g,me.createPropertyAssignment(g.name,g.objectAssignmentInitializer))}function gun(s,c){return Ma(Jc(s,c).parent,u0)}var XQt="extendsInterfaceBecomesImplements",Aun=[Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code];Gg({errorCodes:Aun,getCodeActions(s){let{sourceFile:c}=s,g=dun(c,s.span.start);if(!g)return;let{extendsToken:d,heritageClauses:h}=g,_=xo.ChangeTracker.with(s,S=>pun(S,c,d,h));return[gg(XQt,_,Z.Change_extends_to_implements,XQt,Z.Change_all_extended_interfaces_to_implements)]},fixIds:[XQt],getAllCodeActions:s=>Jd(s,Aun,(c,g)=>{let d=dun(g.file,g.start);d&&pun(c,g.file,d.extendsToken,d.heritageClauses)})});function dun(s,c){let g=Jc(s,c),d=_C(g).heritageClauses,h=d[0].getFirstToken();return h.kind===96?{extendsToken:h,heritageClauses:d}:void 0}function pun(s,c,g,d){if(s.replaceNode(c,g,me.createToken(119)),d.length===2&&d[0].token===96&&d[1].token===119){let h=d[1].getFirstToken(),_=h.getFullStart();s.replaceRange(c,{pos:_,end:_},me.createToken(28));let S=c.text,R=h.end;for(;Rmun(h,c,g));return[gg(JQt,d,[Z.Add_0_to_unresolved_variable,g.className||"this"],JQt,Z.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[JQt],getAllCodeActions:s=>Jd(s,Iun,(c,g)=>{let d=hun(g.file,g.start,g.code);d&&mun(c,s.sourceFile,d)})});function hun(s,c,g){let d=Jc(s,c);if(Ir(d)||p(d))return{node:d,className:g===fun?_C(d).name.text:void 0}}function mun(s,c,{node:g,className:d}){Py(g),s.replaceNode(c,g,me.createPropertyAccessExpression(d?me.createIdentifier(d):me.createThis(),g))}var UQt="fixInvalidJsxCharacters_expression",Hit="fixInvalidJsxCharacters_htmlEntity",Cun=[Z.Unexpected_token_Did_you_mean_or_gt.code,Z.Unexpected_token_Did_you_mean_or_rbrace.code];Gg({errorCodes:Cun,fixIds:[UQt,Hit],getCodeActions(s){let{sourceFile:c,preferences:g,span:d}=s,h=xo.ChangeTracker.with(s,S=>KQt(S,g,c,d.start,!1)),_=xo.ChangeTracker.with(s,S=>KQt(S,g,c,d.start,!0));return[gg(UQt,h,Z.Wrap_invalid_character_in_an_expression_container,UQt,Z.Wrap_all_invalid_characters_in_an_expression_container),gg(Hit,_,Z.Convert_invalid_character_to_its_html_entity_code,Hit,Z.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(s){return Jd(s,Cun,(c,g)=>KQt(c,s.preferences,g.file,g.start,s.fixId===Hit))}});var _un={">":">","}":"}"};function sFs(s){return Da(_un,s)}function KQt(s,c,g,d,h){let _=g.getText()[d];if(!sFs(_))return;let S=h?_un[_]:`{${fpe(g,c,_)}}`;s.replaceRangeWithText(g,{pos:d,end:d+1},S)}var Yit="deleteUnmatchedParameter",yun="renameUnmatchedParameter",bun=[Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];Gg({fixIds:[Yit,yun],errorCodes:bun,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=[],_=Eun(g,d.start);if(_)return Ft(h,oFs(c,_)),Ft(h,aFs(c,_)),h},getAllCodeActions:function(c){let g=new Map;return iq(xo.ChangeTracker.with(c,d=>{sq(c,bun,({file:h,start:_})=>{let S=Eun(h,_);S&&g.set(S.signature,Ft(g.get(S.signature),S.jsDocParameterTag))}),g.forEach((h,_)=>{if(c.fixId===Yit){let S=new Set(h);d.filterJSDocTags(_.getSourceFile(),_,R=>!S.has(R))}})}))}});function oFs(s,{name:c,jsDocHost:g,jsDocParameterTag:d}){let h=xo.ChangeTracker.with(s,_=>_.filterJSDocTags(s.sourceFile,g,S=>S!==d));return gg(Yit,h,[Z.Delete_unused_param_tag_0,c.getText(s.sourceFile)],Yit,Z.Delete_all_unused_param_tags)}function aFs(s,{name:c,jsDocHost:g,signature:d,jsDocParameterTag:h}){if(!B(d.parameters))return;let _=s.sourceFile,S=Nx(d),R=new Set;for(let M of S)dS(M)&&Ir(M.name)&&R.add(M.name.escapedText);let T=J(d.parameters,M=>Ir(M.name)&&!R.has(M.name.escapedText)?M.name.getText(_):void 0);if(T===void 0)return;let O=me.updateJSDocParameterTag(h,h.tagName,me.createIdentifier(T),h.isBracketed,h.typeExpression,h.isNameFirst,h.comment),V=xo.ChangeTracker.with(s,M=>M.replaceJSDocComment(_,g,lt(S,ee=>ee===h?O:ee)));return gR(yun,V,[Z.Rename_param_tag_name_0_to_1,c.getText(_),T])}function Eun(s,c){let g=Jc(s,c);if(g.parent&&dS(g.parent)&&Ir(g.parent.name)){let d=g.parent,h=DW(d),_=XL(d);if(h&&_)return{jsDocHost:h,signature:_,name:g.parent.name,jsDocParameterTag:d}}}var jQt="fixUnreferenceableDecoratorMetadata",cFs=[Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code];Gg({errorCodes:cFs,getCodeActions:s=>{let c=lFs(s.sourceFile,s.program,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,_=>c.kind===277&&gFs(_,s.sourceFile,c,s.program)),d=xo.ChangeTracker.with(s,_=>uFs(_,s.sourceFile,c,s.program)),h;return g.length&&(h=Ft(h,gR(jQt,g,Z.Convert_named_imports_to_namespace_import))),d.length&&(h=Ft(h,gR(jQt,d,Z.Use_import_type))),h},fixIds:[jQt]});function lFs(s,c,g){let d=Gs(Jc(s,g),Ir);if(!d||d.parent.kind!==184)return;let _=c.getTypeChecker().getSymbolAtLocation(d);return de(_?.declarations||E,Qp(Yw,dy,Zm))}function uFs(s,c,g,d){if(g.kind===272){s.insertModifierBefore(c,156,g.name);return}let h=g.kind===274?g:g.parent.parent;if(h.name&&h.namedBindings)return;let _=d.getTypeChecker();LZe(h,R=>{if(VC(R.symbol,_).flags&111551)return!0})||s.insertModifierBefore(c,156,h)}function gFs(s,c,g,d){rq.doChangeNamedToNamespaceOrDefault(c,d,s,g.parent)}var cOe="unusedIdentifier",zQt="unusedIdentifier_prefix",qQt="unusedIdentifier_delete",Qit="unusedIdentifier_deleteImports",$Qt="unusedIdentifier_infer",Sun=[Z._0_is_declared_but_its_value_is_never_read.code,Z._0_is_declared_but_never_used.code,Z.Property_0_is_declared_but_its_value_is_never_read.code,Z.All_imports_in_import_declaration_are_unused.code,Z.All_destructured_elements_are_unused.code,Z.All_variables_are_unused.code,Z.All_type_parameters_are_unused.code];Gg({errorCodes:Sun,getCodeActions(s){let{errorCode:c,sourceFile:g,program:d,cancellationToken:h}=s,_=d.getTypeChecker(),S=d.getSourceFiles(),R=Jc(g,s.span.start);if(MB(R))return[Spe(xo.ChangeTracker.with(s,M=>M.delete(g,R)),Z.Remove_template_tag)];if(R.kind===30){let M=xo.ChangeTracker.with(s,ee=>Bun(ee,g,R));return[Spe(M,Z.Remove_type_parameters)]}let T=wun(R);if(T){let M=xo.ChangeTracker.with(s,ee=>ee.delete(g,T));return[gg(cOe,M,[Z.Remove_import_from_0,mLe(T)],Qit,Z.Delete_all_unused_imports)]}else if(eXt(R)){let M=xo.ChangeTracker.with(s,ee=>Xit(g,R,ee,_,S,d,h,!1));if(M.length)return[gg(cOe,M,[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)],Qit,Z.Delete_all_unused_imports)]}if($m(R.parent)||m2(R.parent)){if(Si(R.parent.parent)){let M=R.parent.elements,ee=[M.length>1?Z.Remove_unused_declarations_for_Colon_0:Z.Remove_unused_declaration_for_Colon_0,lt(M,re=>re.getText(g)).join(", ")];return[Spe(xo.ChangeTracker.with(s,re=>AFs(re,g,R.parent)),ee)]}return[Spe(xo.ChangeTracker.with(s,M=>dFs(s,M,g,R.parent)),Z.Remove_unused_destructuring_declaration)]}if(Tun(g,R))return[Spe(xo.ChangeTracker.with(s,M=>Run(M,g,R.parent)),Z.Remove_variable_statement)];if(Ir(R)&&ah(R.parent))return[Spe(xo.ChangeTracker.with(s,M=>xun(M,g,R.parent)),[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)])];let O=[];if(R.kind===140){let M=xo.ChangeTracker.with(s,re=>vun(re,g,R)),ee=Ma(R.parent,rR).typeParameter.name.text;O.push(gg(cOe,M,[Z.Replace_infer_0_with_unknown,ee],$Qt,Z.Replace_all_unused_infer_with_unknown))}else{let M=xo.ChangeTracker.with(s,ee=>Xit(g,R,ee,_,S,d,h,!1));if(M.length){let ee=Un(R.parent)?R.parent:R;O.push(Spe(M,[Z.Remove_unused_declaration_for_Colon_0,ee.getText(g)]))}}let V=xo.ChangeTracker.with(s,M=>Nun(M,c,g,R));return V.length&&O.push(gg(cOe,V,[Z.Prefix_0_with_an_underscore,R.getText(g)],zQt,Z.Prefix_all_unused_declarations_with_where_possible)),O},fixIds:[zQt,qQt,Qit,$Qt],getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=g.getTypeChecker(),_=g.getSourceFiles();return Jd(s,Sun,(S,R)=>{let T=Jc(c,R.start);switch(s.fixId){case zQt:Nun(S,R.code,c,T);break;case Qit:{let O=wun(T);O?S.delete(c,O):eXt(T)&&Xit(c,T,S,h,_,g,d,!0);break}case qQt:{if(T.kind===140||eXt(T))break;if(MB(T))S.delete(c,T);else if(T.kind===30)Bun(S,c,T);else if($m(T.parent)){if(T.parent.parent.initializer)break;(!Si(T.parent.parent)||Dun(T.parent.parent,h,_))&&S.delete(c,T.parent.parent)}else{if(m2(T.parent.parent)&&T.parent.parent.parent.initializer)break;Tun(c,T)?Run(S,c,T.parent):Ir(T)&&ah(T.parent)?xun(S,c,T.parent):Xit(c,T,S,h,_,g,d,!0)}break}case $Qt:T.kind===140&&vun(S,c,T);break;default:pe.fail(JSON.stringify(s.fixId))}})}});function vun(s,c,g){s.replaceNode(c,g.parent,me.createKeywordTypeNode(159))}function Spe(s,c){return gg(cOe,s,c,qQt,Z.Delete_all_unused_declarations)}function Bun(s,c,g){s.delete(c,pe.checkDefined(Ma(g.parent,une).typeParameters,"The type parameter to delete should exist"))}function eXt(s){return s.kind===102||s.kind===80&&(s.parent.kind===277||s.parent.kind===274)}function wun(s){return s.kind===102?Gs(s.parent,Yf):void 0}function Tun(s,c){return d_(c.parent)&&ma(c.parent.getChildren(s))===c}function Run(s,c,g){s.delete(c,g.parent.kind===244?g.parent:g)}function AFs(s,c,g){F(g.elements,d=>s.delete(c,d))}function dFs(s,c,g,{parent:d}){if(nc(d)&&d.initializer&&SF(d.initializer))if(d_(d.parent)&&B(d.parent.declarations)>1){let h=d.parent.parent,_=h.getStart(g),S=h.end;c.delete(g,d),c.insertNodeAt(g,S,d.initializer,{prefix:UF(s.host,s.formatContext.options)+g.text.slice(bWe(g.text,_-1),_),suffix:P1e(g)?";":""})}else c.replaceNode(g,d.parent,d.initializer);else c.delete(g,d)}function Nun(s,c,g,d){c!==Z.Property_0_is_declared_but_its_value_is_never_read.code&&(d.kind===140&&(d=Ma(d.parent,rR).typeParameter.name),Ir(d)&&pFs(d)&&(s.replaceNode(g,d,me.createIdentifier(`_${d.text}`)),Si(d.parent)&&kL(d.parent).forEach(h=>{Ir(h.name)&&s.replaceNode(g,h.name,me.createIdentifier(`_${h.name.text}`))})))}function pFs(s){switch(s.parent.kind){case 170:case 169:return!0;case 261:switch(s.parent.parent.parent.kind){case 251:case 250:return!0}}return!1}function Xit(s,c,g,d,h,_,S,R){fFs(c,g,s,d,h,_,S,R),Ir(c)&&zp.Core.eachSymbolReferenceInFile(c,d,s,T=>{jo(T.parent)&&T.parent.name===T&&(T=T.parent),!R&&CFs(T)&&g.delete(s,T.parent.parent)})}function fFs(s,c,g,d,h,_,S,R){let{parent:T}=s;if(Si(T))IFs(c,g,T,d,h,_,S,R);else if(!(R&&Ir(s)&&zp.Core.isSymbolReferencedInFile(s,d,g))){let O=Yw(T)?s:Un(T)?T.parent:T;pe.assert(O!==g,"should not delete whole source file"),c.delete(g,O)}}function IFs(s,c,g,d,h,_,S,R=!1){if(hFs(d,c,g,h,_,S,R))if(g.modifiers&&g.modifiers.length>0&&(!Ir(g.name)||zp.Core.isSymbolReferencedInFile(g.name,d,c)))for(let T of g.modifiers)hg(T)&&s.deleteModifier(c,T);else!g.initializer&&Dun(g,d,h)&&s.delete(c,g)}function Dun(s,c,g){let d=s.parent.parameters.indexOf(s);return!zp.Core.someSignatureUsage(s.parent,g,c,(h,_)=>!_||_.arguments.length>d)}function hFs(s,c,g,d,h,_,S){let{parent:R}=g;switch(R.kind){case 175:case 177:let T=R.parameters.indexOf(g),O=gu(R)?R.name:R,V=zp.Core.getReferencedSymbolsForNode(R.pos,O,h,d,_);if(V){for(let M of V)for(let ee of M.references)if(ee.kind===zp.EntryKind.Node){let re=rr(ee.node)&&Ll(ee.node.parent)&&ee.node.parent.arguments.length>T,ge=jo(ee.node.parent)&&rr(ee.node.parent.expression)&&Ll(ee.node.parent.parent)&&ee.node.parent.parent.arguments.length>T,Ie=(gu(ee.node.parent)||Il(ee.node.parent))&&ee.node.parent!==g.parent&&ee.node.parent.parameters.length>T;if(re||ge||Ie)return!1}}return!0;case 263:return R.name&&mFs(s,c,R.name)?kun(R,g,S):!0;case 219:case 220:return kun(R,g,S);case 179:return!1;case 178:return!0;default:return pe.failBadSyntaxKind(R)}}function mFs(s,c,g){return!!zp.Core.eachSymbolReferenceInFile(g,s,c,d=>Ir(d)&&Ll(d.parent)&&d.parent.arguments.includes(d))}function kun(s,c,g){let d=s.parameters,h=d.indexOf(c);return pe.assert(h!==-1,"The parameter should already be in the list"),g?d.slice(h+1).every(_=>Ir(_.name)&&!_.symbol.isReferenced):h===d.length-1}function CFs(s){return(po(s.parent)&&s.parent.left===s||(ok(s.parent)||D0(s.parent))&&s.parent.operand===s)&&PC(s.parent.parent)}function xun(s,c,g){let d=g.symbol.declarations;if(d)for(let h of d)s.delete(c,h)}var tXt="fixUnreachableCode",Gun=[Z.Unreachable_code_detected.code];Gg({errorCodes:Gun,getCodeActions(s){if(s.program.getSyntacticDiagnostics(s.sourceFile,s.cancellationToken).length)return;let g=xo.ChangeTracker.with(s,d=>Fun(d,s.sourceFile,s.span.start,s.span.length,s.errorCode));return[gg(tXt,g,Z.Remove_unreachable_code,tXt,Z.Remove_all_unreachable_code)]},fixIds:[tXt],getAllCodeActions:s=>Jd(s,Gun,(c,g)=>Fun(c,g.file,g.start,g.length,g.code))});function Fun(s,c,g,d,h){let _=Jc(c,g),S=ji(_,Lc);if(S.getStart(c)!==_.getStart(c)){let T=JSON.stringify({statementKind:pe.formatSyntaxKind(S.kind),tokenKind:pe.formatSyntaxKind(_.kind),errorCode:h,start:g,length:d});pe.fail("Token and statement should start at the same point. "+T)}let R=(eg(S.parent)?S.parent:S).parent;if(!eg(S.parent)||S===ma(S.parent.statements))switch(R.kind){case 246:if(R.elseStatement){if(eg(S.parent))break;s.replaceNode(c,S,me.createBlock(E));return}case 248:case 249:s.delete(c,R);return}if(eg(S.parent)){let T=g+d,O=pe.checkDefined(_Fs(zbe(S.parent.statements,S),V=>V.posLun(g,s.sourceFile,s.span.start));return[gg(rXt,c,Z.Remove_unused_label,rXt,Z.Remove_all_unused_labels)]},fixIds:[rXt],getAllCodeActions:s=>Jd(s,Zun,(c,g)=>Lun(c,g.file,g.start))});function Lun(s,c,g){let d=Jc(c,g),h=Ma(d.parent,YW),_=d.getStart(c),S=h.statement.getStart(c),R=vE(_,S,c)?S:Yu(c.text,ep(h,59,c).end,!0);s.deleteRange(c,{pos:_,end:R})}var Vun="fixJSDocTypes_plain",nXt="fixJSDocTypes_nullable",Wun=[Z.JSDoc_types_can_only_be_used_inside_documentation_comments.code,Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];Gg({errorCodes:Wun,getCodeActions(s){let{sourceFile:c}=s,g=s.program.getTypeChecker(),d=Pun(c,s.span.start,g);if(!d)return;let{typeNode:h,type:_}=d,S=h.getText(c),R=[T(_,Vun,Z.Change_all_jsdoc_style_types_to_TypeScript)];return h.kind===315&&R.push(T(_,nXt,Z.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),R;function T(O,V,M){let ee=xo.ChangeTracker.with(s,re=>Oun(re,c,h,O,g));return gg("jdocTypes",ee,[Z.Change_0_to_1,S,g.typeToString(O)],V,M)}},fixIds:[Vun,nXt],getAllCodeActions(s){let{fixId:c,program:g,sourceFile:d}=s,h=g.getTypeChecker();return Jd(s,Wun,(_,S)=>{let R=Pun(S.file,S.start,h);if(!R)return;let{typeNode:T,type:O}=R,V=T.kind===315&&c===nXt?h.getNullableType(O,32768):O;Oun(_,d,T,V,h)})}});function Oun(s,c,g,d,h){s.replaceNode(c,g,h.typeToTypeNode(d,g,void 0))}function Pun(s,c,g){let d=ji(Jc(s,c),yFs),h=d&&d.type;return h&&{typeNode:h,type:bFs(g,h)}}function yFs(s){switch(s.kind){case 235:case 180:case 181:case 263:case 178:case 182:case 201:case 175:case 174:case 170:case 173:case 172:case 179:case 266:case 217:case 261:return!0;default:return!1}}function bFs(s,c){if(Die(c)){let g=s.getTypeFromTypeNode(c.type);return g===s.getNeverType()||g===s.getVoidType()?g:s.getUnionType(Ft([g,s.getUndefinedType()],c.postfix?void 0:s.getNullType()))}return s.getTypeFromTypeNode(c)}var iXt="fixMissingCallParentheses",Mun=[Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];Gg({errorCodes:Mun,fixIds:[iXt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=Yun(c,g.start);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Hun(_,s.sourceFile,d));return[gg(iXt,h,Z.Add_missing_call_parentheses,iXt,Z.Add_all_missing_call_parentheses)]},getAllCodeActions:s=>Jd(s,Mun,(c,g)=>{let d=Yun(g.file,g.start);d&&Hun(c,g.file,d)})});function Hun(s,c,g){s.replaceNodeWithText(c,g,`${g.text}()`)}function Yun(s,c){let g=Jc(s,c);if(jo(g.parent)){let d=g.parent;for(;jo(d.parent);)d=d.parent;return d.name}if(Ir(g))return g}var Qun="fixMissingTypeAnnotationOnExports",sXt="add-annotation",oXt="add-type-assertion",EFs="extract-expression",Xun=[Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations.code,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],SFs=new Set([178,175,173,263,219,220,261,170,278,264,207,208]),Jun=531469,Uun=1;Gg({errorCodes:Xun,fixIds:[Qun],getCodeActions(s){let c=[];return vpe(sXt,c,s,0,g=>g.addTypeAnnotation(s.span)),vpe(sXt,c,s,1,g=>g.addTypeAnnotation(s.span)),vpe(sXt,c,s,2,g=>g.addTypeAnnotation(s.span)),vpe(oXt,c,s,0,g=>g.addInlineAssertion(s.span)),vpe(oXt,c,s,1,g=>g.addInlineAssertion(s.span)),vpe(oXt,c,s,2,g=>g.addInlineAssertion(s.span)),vpe(EFs,c,s,0,g=>g.extractAsVariable(s.span)),c},getAllCodeActions:s=>{let c=Kun(s,0,g=>{sq(s,Xun,d=>{g.addTypeAnnotation(d)})});return iq(c.textChanges)}});function vpe(s,c,g,d,h){let _=Kun(g,d,h);_.result&&_.textChanges.length&&c.push(gg(s,_.textChanges,_.result,Qun,Z.Add_all_missing_type_annotations))}function Kun(s,c,g){let d={typeNode:void 0,mutatedTarget:!1},h=xo.ChangeTracker.fromContext(s),_=s.sourceFile,S=s.program,R=S.getTypeChecker(),T=Hg(S.getCompilerOptions()),O=xQ(s.sourceFile,s.program,s.preferences,s.host),V=new Set,M=new Set,ee=zW({preserveSourceNewlines:!1}),re=g({addTypeAnnotation:ge,addInlineAssertion:Te,extractAsVariable:Ze});return O.writeFixes(h),{result:re,textChanges:h.getChanges()};function ge(ot){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,ot.start),qt=Pe(ir);if(qt)return ah(qt)?Ie(qt):Ke(qt);let Yt=dt(ir);if(Yt)return Ke(Yt)}function Ie(ot){var ir;if(M?.has(ot))return;M?.add(ot);let qt=R.getTypeAtLocation(ot),Yt=R.getPropertiesOfType(qt);if(!ot.name||Yt.length===0)return;let Tr=[];for(let Zi of Yt)qh(Zi.name,Hg(S.getCompilerOptions()))&&(Zi.valueDeclaration&&nc(Zi.valueDeclaration)||Tr.push(me.createVariableStatement([me.createModifier(95)],me.createVariableDeclarationList([me.createVariableDeclaration(Zi.name,void 0,Dt(R.getTypeOfSymbol(Zi),ot),void 0)]))));if(Tr.length===0)return;let mn=[];(ir=ot.modifiers)!=null&&ir.some(Zi=>Zi.kind===95)&&mn.push(me.createModifier(95)),mn.push(me.createModifier(138));let jn=me.createModuleDeclaration(mn,ot.name,me.createModuleBlock(Tr),101441696);return h.insertNodeAfter(_,ot,jn),[Z.Annotate_types_of_properties_expando_function_in_a_namespace]}function _e(ot){return!Hd(ot)&&!Ll(ot)&&!ag(ot)&&!YI(ot)}function Ee(ot,ir){return _e(ot)&&(ot=me.createParenthesizedExpression(ot)),me.createAsExpression(ot,ir)}function Ne(ot,ir){return _e(ot)&&(ot=me.createParenthesizedExpression(ot)),me.createAsExpression(me.createSatisfiesExpression(ot,KA(ir)),ir)}function Te(ot){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,ot.start);if(Pe(ir))return;let Yt=pr(ir,ot);if(!Yt||T3(Yt)||T3(Yt.parent))return;let Tr=un(Yt),mn=u0(Yt);if(!mn&&em(Yt)||ji(Yt,Nu)||ji(Yt,YF)||Tr&&(ji(Yt,y1)||ji(Yt,uc))||cf(Yt))return;let jn=ji(Yt,nc),Zi=jn&&R.getTypeAtLocation(jn);if(Zi&&Zi.flags&8192||!(Tr||mn))return;let{typeNode:Ns,mutatedTarget:An}=Rt(Yt,Zi);if(!(!Ns||An))return mn?h.insertNodeAt(_,Yt.end,Ee(KA(Yt.name),Ns),{prefix:": "}):Tr?h.replaceNode(_,Yt,Ne(KA(Yt),Ns)):pe.assertNever(Yt),[Z.Add_satisfies_and_an_inline_type_assertion_with_0,Gr(Ns)]}function Ze(ot){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,ot.start),qt=pr(ir,ot);if(!qt||T3(qt)||T3(qt.parent)||!un(qt))return;if(YI(qt))return h.replaceNode(_,qt,Ee(qt,me.createTypeReferenceNode("const"))),[Z.Mark_array_literal_as_const];let Tr=ji(qt,Cm);if(Tr){if(Tr===qt.parent&&Hd(qt))return;let mn=me.createUniqueName(aYt(qt,_,R,_),16),jn=qt,Zi=qt;if(cf(jn)&&(jn=Iv(jn.parent),Gt(jn.parent)?Zi=jn=jn.parent:Zi=Ee(jn,me.createTypeReferenceNode("const"))),Hd(jn))return;let Ns=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(mn,void 0,void 0,Zi)],2)),An=ji(qt,Lc);return h.insertNodeBefore(_,An,Ns),h.replaceNode(_,jn,me.createAsExpression(me.cloneNode(mn),me.createTypeQueryNode(me.cloneNode(mn)))),[Z.Extract_to_variable_and_replace_with_0_as_typeof_0,Gr(mn)]}}function Pe(ot){let ir=ji(ot,qt=>Lc(qt)?"quit":cQ(qt));if(ir&&cQ(ir)){let qt=ir;if(po(qt)&&(qt=qt.left,!cQ(qt)))return;let Yt=R.getTypeAtLocation(qt.expression);if(!Yt)return;let Tr=R.getPropertiesOfType(Yt);if(zt(Tr,mn=>mn.valueDeclaration===ir||mn.valueDeclaration===ir.parent)){let mn=Yt.symbol.valueDeclaration;if(mn){if(ZF(mn)&&nc(mn.parent))return mn.parent;if(ah(mn))return mn}}}}function Ke(ot){if(!V?.has(ot))switch(V?.add(ot),ot.kind){case 170:case 173:case 261:return ur(ot);case 220:case 219:case 263:case 175:case 178:return et(ot,_);case 278:return Ye(ot);case 264:return Tt(ot);case 207:case 208:return Qe(ot);default:throw new Error(`Cannot find a fix for the given node ${ot.kind}`)}}function et(ot,ir){if(ot.type)return;let{typeNode:qt}=Rt(ot);if(qt)return h.tryInsertTypeAnnotation(ir,ot,qt),[Z.Add_return_type_0,Gr(qt)]}function Ye(ot){if(ot.isExportEquals)return;let{typeNode:ir}=Rt(ot.expression);if(!ir)return;let qt=me.createUniqueName("_default");return h.replaceNodeWithNodes(_,ot,[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(qt,void 0,ir,ot.expression)],2)),me.updateExportAssignment(ot,ot?.modifiers,qt)]),[Z.Extract_default_export_to_variable]}function Tt(ot){var ir,qt;let Yt=(ir=ot.heritageClauses)==null?void 0:ir.find(si=>si.token===96),Tr=Yt?.types[0];if(!Tr)return;let{typeNode:mn}=Rt(Tr.expression);if(!mn)return;let jn=me.createUniqueName(ot.name?ot.name.text+"Base":"Anonymous",16),Zi=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(jn,void 0,mn,Tr.expression)],2));h.insertNodeBefore(_,ot,Zi);let Ns=a2(_.text,Tr.end),An=((qt=Ns?.[Ns.length-1])==null?void 0:qt.end)??Tr.end;return h.replaceRange(_,{pos:Tr.getFullStart(),end:An},jn,{prefix:" "}),[Z.Extract_base_class_to_variable]}let at;(ot=>{ot[ot.Text=0]="Text",ot[ot.Computed=1]="Computed",ot[ot.ArrayAccess=2]="ArrayAccess",ot[ot.Identifier=3]="Identifier"})(at||(at={}));function Qe(ot){var ir;let qt=ot.parent,Yt=ot.parent.parent.parent;if(!qt.initializer)return;let Tr,mn=[];if(Ir(qt.initializer))Tr={expression:{kind:3,identifier:qt.initializer}};else{let Ns=me.createUniqueName("dest",16);Tr={expression:{kind:3,identifier:Ns}},mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Ns,void 0,void 0,qt.initializer)],2)))}let jn=[];m2(ot)?Ct(ot,jn,Tr):mt(ot,jn,Tr);let Zi=new Map;for(let Ns of jn){if(Ns.element.propertyName&&Un(Ns.element.propertyName)){let si=Ns.element.propertyName.expression,ks=me.getGeneratedNameForNode(si),Ic=me.createVariableDeclaration(ks,void 0,void 0,si),ou=me.createVariableDeclarationList([Ic],2),Zn=me.createVariableStatement(void 0,ou);mn.push(Zn),Zi.set(si,ks)}let An=Ns.element.name;if(m2(An))Ct(An,jn,Ns);else if($m(An))mt(An,jn,Ns);else{let{typeNode:si}=Rt(An),ks=yt(Ns,Zi);if(Ns.element.initializer){let ou=(ir=Ns.element)==null?void 0:ir.propertyName,Zn=me.createUniqueName(ou&&Ir(ou)?ou.text:"temp",16);mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zn,void 0,void 0,ks)],2))),ks=me.createConditionalExpression(me.createBinaryExpression(Zn,me.createToken(37),me.createIdentifier("undefined")),me.createToken(58),Ns.element.initializer,me.createToken(59),ks)}let Ic=Ga(Yt,32)?[me.createToken(95)]:void 0;mn.push(me.createVariableStatement(Ic,me.createVariableDeclarationList([me.createVariableDeclaration(An,void 0,si,ks)],2)))}}return Yt.declarationList.declarations.length>1&&mn.push(me.updateVariableStatement(Yt,Yt.modifiers,me.updateVariableDeclarationList(Yt.declarationList,Yt.declarationList.declarations.filter(Ns=>Ns!==ot.parent)))),h.replaceNodeWithNodes(_,Yt,mn),[Z.Extract_binding_expressions_to_variable]}function Ct(ot,ir,qt){for(let Yt=0;Yt=0;--Tr){let mn=qt[Tr].expression;mn.kind===0?Yt=me.createPropertyAccessChain(Yt,void 0,me.createIdentifier(mn.text)):mn.kind===1?Yt=me.createElementAccessExpression(Yt,ir.get(mn.computed)):mn.kind===2&&(Yt=me.createElementAccessExpression(Yt,mn.arrayIndex))}return Yt}function Rt(ot,ir){if(c===1)return it(ot);let qt;if(T3(ot)){let mn=R.getSignatureFromDeclaration(ot);if(mn){let jn=R.getTypePredicateOfSignature(mn);if(jn)return jn.type?{typeNode:tr(jn,ji(ot,em)??_,Tr(jn.type)),mutatedTarget:!1}:d;qt=R.getReturnTypeOfSignature(mn)}}else qt=R.getTypeAtLocation(ot);if(!qt)return d;if(c===2){ir&&(qt=ir);let mn=R.getWidenedLiteralType(qt);if(R.isTypeAssignableTo(mn,qt))return d;qt=mn}let Yt=ji(ot,em)??_;return Si(ot)&&R.requiresAddingImplicitUndefined(ot,Yt)&&(qt=R.getUnionType([R.getUndefinedType(),qt],0)),{typeNode:Dt(qt,Yt,Tr(qt)),mutatedTarget:!1};function Tr(mn){return(nc(ot)||pi(ot)&&Ga(ot,264))&&mn.flags&8192?1048576:0}}function Lt(ot){return me.createTypeQueryNode(KA(ot))}function je(ot,ir="temp"){let qt=!!ji(ot,Gt);return qt?_r(ot,ir,qt,Yt=>Yt.elements,cf,me.createSpreadElement,Yt=>me.createArrayLiteralExpression(Yt,!0),Yt=>me.createTupleTypeNode(Yt.map(me.createRestTypeNode))):d}function Wt(ot,ir="temp"){let qt=!!ji(ot,Gt);return _r(ot,ir,qt,Yt=>Yt.properties,Hx,me.createSpreadAssignment,Yt=>me.createObjectLiteralExpression(Yt,!0),me.createIntersectionTypeNode)}function _r(ot,ir,qt,Yt,Tr,mn,jn,Zi){let Ns=[],An=[],si,ks=ji(ot,Lc);for(let Zn of Yt(ot))Tr(Zn)?(ou(),Hd(Zn.expression)?(Ns.push(Lt(Zn.expression)),An.push(Zn)):Ic(Zn.expression)):(si??(si=[])).push(Zn);if(An.length===0)return d;return ou(),h.replaceNode(_,ot,jn(An)),{typeNode:Zi(Ns),mutatedTarget:!0};function Ic(Zn){let ya=me.createUniqueName(ir+"_Part"+(An.length+1),16),Fl=qt?me.createAsExpression(Zn,me.createTypeReferenceNode("const")):Zn,ba=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(ya,void 0,void 0,Fl)],2));h.insertNodeBefore(_,ks,ba),Ns.push(Lt(ya)),An.push(mn(ya))}function ou(){si&&(Ic(jn(si)),si=void 0)}}function Gt(ot){return vd(ot)&&l2(ot.type)}function it(ot){if(Si(ot))return d;if(u0(ot))return{typeNode:Lt(ot.name),mutatedTarget:!1};if(Hd(ot))return{typeNode:Lt(ot),mutatedTarget:!1};if(Gt(ot))return it(ot.expression);if(YI(ot)){let ir=ji(ot,nc),qt=ir&&Ir(ir.name)?ir.name.text:void 0;return je(ot,qt)}if(ag(ot)){let ir=ji(ot,nc),qt=ir&&Ir(ir.name)?ir.name.text:void 0;return Wt(ot,qt)}if(nc(ot)&&ot.initializer)return it(ot.initializer);if(Hw(ot)){let{typeNode:ir,mutatedTarget:qt}=it(ot.whenTrue);if(!ir)return d;let{typeNode:Yt,mutatedTarget:Tr}=it(ot.whenFalse);return Yt?{typeNode:me.createUnionTypeNode([ir,Yt]),mutatedTarget:qt||Tr}:d}return d}function Dt(ot,ir,qt=0){let Yt=!1,Tr=hgn(R,ot,ir,Jun|qt,Uun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Yt=!0}});if(!Tr)return;let mn=fXt(Tr,O,T);return Yt?me.createKeywordTypeNode(133):mn}function tr(ot,ir,qt=0){let Yt=!1,Tr=mgn(R,O,ot,ir,T,Jun|qt,Uun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Yt=!0}});return Yt?me.createKeywordTypeNode(133):Tr}function ur(ot){let{typeNode:ir}=Rt(ot);if(ir)return ot.type?h.replaceNode(ms(ot),ot.type,ir):h.tryInsertTypeAnnotation(ms(ot),ot,ir),[Z.Add_annotation_of_type_0,Gr(ir)]}function Gr(ot){ti(ot,1);let ir=ee.printNode(4,ot,_);return ir.length>FY?ir.substring(0,FY-3)+"...":(ti(ot,0),ir)}function dt(ot){return ji(ot,ir=>SFs.has(ir.kind)&&(!$m(ir)&&!m2(ir)||nc(ir.parent)))}function pr(ot,ir){for(;ot&&ot.endqun(_,c,d));return[gg(aXt,h,Z.Add_async_modifier_to_containing_function,aXt,Z.Add_all_missing_async_modifiers)]},fixIds:[aXt],getAllCodeActions:function(c){let g=new Set;return Jd(c,jun,(d,h)=>{let _=zun(h.file,h.start);!_||!Wy(g,id(_.insertBefore))||qun(d,c.sourceFile,_)})}});function vFs(s){if(s.type)return s.type;if(nc(s.parent)&&s.parent.type&&Z_(s.parent.type))return s.parent.type.type}function zun(s,c){let g=Jc(s,c),d=I1(g);if(!d)return;let h;switch(d.kind){case 175:h=d.name;break;case 263:case 219:h=ep(d,100,s);break;case 220:let _=d.typeParameters?30:21;h=ep(d,_,s)||ma(d.parameters);break;default:return}return h&&{insertBefore:h,returnType:vFs(d)}}function qun(s,c,{insertBefore:g,returnType:d}){if(d){let h=fne(d);(!h||h.kind!==80||h.text!=="Promise")&&s.replaceNode(c,d,me.createTypeReferenceNode("Promise",me.createNodeArray([d])))}s.insertModifierBefore(c,134,g)}var $un=[Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],cXt="fixPropertyOverrideAccessor";Gg({errorCodes:$un,getCodeActions(s){let c=egn(s.sourceFile,s.span.start,s.span.length,s.errorCode,s);if(c)return[gg(cXt,c,Z.Generate_get_and_set_accessors,cXt,Z.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[cXt],getAllCodeActions:s=>Jd(s,$un,(c,g)=>{let d=egn(g.file,g.start,g.length,g.code,s);if(d)for(let h of d)c.pushRaw(s.sourceFile,h)})});function egn(s,c,g,d,h){let _,S;if(d===Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)_=c,S=c+g;else if(d===Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){let R=h.program.getTypeChecker(),T=Jc(s,c).parent;if(Un(T))return;pe.assert(wB(T),"error span of fixPropertyOverrideAccessor should only be on an accessor");let O=T.parent;pe.assert(xa(O),"erroneous accessors should only be inside classes");let V=kB(O);if(!V)return;let M=JA(V.expression),ee=wd(M)?M.symbol:R.getSymbolAtLocation(M);if(!ee)return;let re=R.getDeclaredTypeOfSymbol(ee),ge=R.getPropertyOfType(re,Bc(BW(T.name)));if(!ge||!ge.valueDeclaration)return;_=ge.valueDeclaration.pos,S=ge.valueDeclaration.end,s=ms(ge.valueDeclaration)}else pe.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+d);return Egn(s,h.program,_,S,h,Z.Generate_get_and_set_accessors.message)}var lXt="inferFromUsage",tgn=[Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,Z.Variable_0_implicitly_has_an_1_type.code,Z.Parameter_0_implicitly_has_an_1_type.code,Z.Rest_parameter_0_implicitly_has_an_any_type.code,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,Z.Member_0_implicitly_has_an_1_type.code,Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];Gg({errorCodes:tgn,getCodeActions(s){let{sourceFile:c,program:g,span:{start:d},errorCode:h,cancellationToken:_,host:S,preferences:R}=s,T=Jc(c,d),O,V=xo.ChangeTracker.with(s,ee=>{O=rgn(ee,c,T,h,g,_,Nf,S,R)}),M=O&&fl(O);return!M||V.length===0?void 0:[gg(lXt,V,[BFs(h,T),Fp(M)],lXt,Z.Infer_all_types_from_usage)]},fixIds:[lXt],getAllCodeActions(s){let{sourceFile:c,program:g,cancellationToken:d,host:h,preferences:_}=s,S=sse();return Jd(s,tgn,(R,T)=>{rgn(R,c,Jc(T.file,T.start),T.code,g,d,S,h,_)})}});function BFs(s,c){switch(s){case Z.Parameter_0_implicitly_has_an_1_type.code:case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return kg(I1(c))?Z.Infer_type_of_0_from_usage:Z.Infer_parameter_types_from_usage;case Z.Rest_parameter_0_implicitly_has_an_any_type.code:case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Infer_parameter_types_from_usage;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return Z.Infer_this_type_of_0_from_usage;default:return Z.Infer_type_of_0_from_usage}}function wFs(s){switch(s){case Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_an_1_type.code;case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Parameter_0_implicitly_has_an_1_type.code;case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Rest_parameter_0_implicitly_has_an_any_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Member_0_implicitly_has_an_1_type.code}return s}function rgn(s,c,g,d,h,_,S,R,T){if(!TY(g.kind)&&g.kind!==80&&g.kind!==26&&g.kind!==110)return;let{parent:O}=g,V=xQ(c,h,T,R);switch(d=wFs(d),d){case Z.Member_0_implicitly_has_an_1_type.code:case Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(nc(O)&&S(O)||pi(O)||ss(O))return ngn(s,V,c,O,h,R,_),V.writeFixes(s),O;if(jo(O)){let re=a2e(O.name,h,_),ge=Ipe(re,O,h,R);if(ge){let Ie=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(ge),void 0);s.addJSDocTags(c,Ma(O.parent.parent,PC),[Ie])}return V.writeFixes(s),O}return;case Z.Variable_0_implicitly_has_an_1_type.code:{let re=h.getTypeChecker().getSymbolAtLocation(g);return re&&re.valueDeclaration&&nc(re.valueDeclaration)&&S(re.valueDeclaration)?(ngn(s,V,ms(re.valueDeclaration),re.valueDeclaration,h,R,_),V.writeFixes(s),re.valueDeclaration):void 0}}let M=I1(g);if(M===void 0)return;let ee;switch(d){case Z.Parameter_0_implicitly_has_an_1_type.code:if(kg(M)){ign(s,V,c,M,h,R,_),ee=M;break}case Z.Rest_parameter_0_implicitly_has_an_any_type.code:if(S(M)){let re=Ma(O,Si);TFs(s,V,c,re,M,h,R,_),ee=re}break;case Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:wg(M)&&Ir(M.name)&&(Jit(s,V,c,M,a2e(M.name,h,_),h,R),ee=M);break;case Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:kg(M)&&(ign(s,V,c,M,h,R,_),ee=M);break;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:xo.isThisTypeAnnotatable(M)&&S(M)&&(RFs(s,c,M,h,R,_),ee=M);break;default:return pe.fail(String(d))}return V.writeFixes(s),ee}function ngn(s,c,g,d,h,_,S){Ir(d.name)&&Jit(s,c,g,d,a2e(d.name,h,S),h,_)}function TFs(s,c,g,d,h,_,S,R){if(!Ir(d.name))return;let T=kFs(h,g,_,R);if(pe.assert(h.parameters.length===T.length,"Parameter count and inference count should match"),Bo(h))sgn(s,g,T,_,S);else{let O=gA(h)&&!ep(h,21,g);O&&s.insertNodeBefore(g,ma(h.parameters),me.createToken(21));for(let{declaration:V,type:M}of T)V&&!V.type&&!V.initializer&&Jit(s,c,g,V,M,_,S);O&&s.insertNodeAfter(g,Ei(h.parameters),me.createToken(22))}}function RFs(s,c,g,d,h,_){let S=ogn(g,c,d,_);if(!S||!S.length)return;let R=gXt(d,S,_).thisParameter(),T=Ipe(R,g,d,h);T&&(Bo(g)?NFs(s,c,g,T):s.tryInsertThisTypeAnnotation(c,g,T))}function NFs(s,c,g,d){s.addJSDocTags(c,g,[me.createJSDocThisTag(void 0,me.createJSDocTypeExpression(d))])}function ign(s,c,g,d,h,_,S){let R=Nc(d.parameters);if(R&&Ir(d.name)&&Ir(R.name)){let T=a2e(d.name,h,S);T===h.getTypeChecker().getAnyType()&&(T=a2e(R.name,h,S)),Bo(d)?sgn(s,g,[{declaration:R,type:T}],h,_):Jit(s,c,g,R,T,h,_)}}function Jit(s,c,g,d,h,_,S){let R=Ipe(h,d,_,S);if(R)if(Bo(g)&&d.kind!==172){let T=nc(d)?Gs(d.parent.parent,Eh):d;if(!T)return;let O=me.createJSDocTypeExpression(R),V=wg(d)?me.createJSDocReturnTag(void 0,O,void 0):me.createJSDocTypeTag(void 0,O,void 0);s.addJSDocTags(g,T,[V])}else DFs(R,d,g,s,c,Hg(_.getCompilerOptions()))||s.tryInsertTypeAnnotation(g,d,R)}function DFs(s,c,g,d,h,_){let S=GQ(s,_);return S&&d.tryInsertTypeAnnotation(g,c,S.typeNode)?(F(S.symbols,R=>h.addImportFromExportedSymbol(R,!0)),!0):!1}function sgn(s,c,g,d,h){let _=g.length&&g[0].declaration.parent;if(!_)return;let S=Xt(g,R=>{let T=R.declaration;if(T.initializer||oN(T)||!Ir(T.name))return;let O=R.type&&Ipe(R.type,T,d,h);if(O){let V=me.cloneNode(T.name);return ti(V,7168),{name:me.cloneNode(T.name),param:T,isOptional:!!R.isOptional,typeNode:O}}});if(S.length)if(gA(_)||jA(_)){let R=gA(_)&&!ep(_,21,c);R&&s.insertNodeBefore(c,ma(_.parameters),me.createToken(21)),F(S,({typeNode:T,param:O})=>{let V=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(T)),M=me.createJSDocComment(void 0,[V]);s.insertNodeAt(c,O.getStart(c),M,{suffix:" "})}),R&&s.insertNodeAfter(c,Ei(_.parameters),me.createToken(22))}else{let R=lt(S,({name:T,typeNode:O,isOptional:V})=>me.createJSDocParameterTag(void 0,T,!!V,me.createJSDocTypeExpression(O),!1,void 0));s.addJSDocTags(c,_,R)}}function uXt(s,c,g){return Xt(zp.getReferenceEntriesForNode(-1,s,c,c.getSourceFiles(),g),d=>d.kind!==zp.EntryKind.Span?Gs(d.node,Ir):void 0)}function a2e(s,c,g){let d=uXt(s,c,g);return gXt(c,d,g).single()}function kFs(s,c,g,d){let h=ogn(s,c,g,d);return h&&gXt(g,h,d).parameters(s)||s.parameters.map(_=>({declaration:_,type:Ir(_.name)?a2e(_.name,g,d):g.getTypeChecker().getAnyType()}))}function ogn(s,c,g,d){let h;switch(s.kind){case 177:h=ep(s,137,c);break;case 220:case 219:let _=s.parent;h=(nc(_)||pi(_))&&Ir(_.name)?_.name:s.name;break;case 263:case 175:case 174:h=s.name;break}if(h)return uXt(h,g,d)}function gXt(s,c,g){let d=s.getTypeChecker(),h={string:()=>d.getStringType(),number:()=>d.getNumberType(),Array:Dt=>d.createArrayType(Dt),Promise:Dt=>d.createPromiseType(Dt)},_=[d.getStringType(),d.getNumberType(),d.createArrayType(d.getAnyType()),d.createPromiseType(d.getAnyType())];return{single:T,parameters:O,thisParameter:V};function S(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function R(Dt){let tr=new Map;for(let Gr of Dt)Gr.properties&&Gr.properties.forEach((dt,pr)=>{tr.has(pr)||tr.set(pr,[]),tr.get(pr).push(dt)});let ur=new Map;return tr.forEach((Gr,dt)=>{ur.set(dt,R(Gr))}),{isNumber:Dt.some(Gr=>Gr.isNumber),isString:Dt.some(Gr=>Gr.isString),isNumberOrString:Dt.some(Gr=>Gr.isNumberOrString),candidateTypes:jt(Dt,Gr=>Gr.candidateTypes),properties:ur,calls:jt(Dt,Gr=>Gr.calls),constructs:jt(Dt,Gr=>Gr.constructs),numberIndex:F(Dt,Gr=>Gr.numberIndex),stringIndex:F(Dt,Gr=>Gr.stringIndex),candidateThisTypes:jt(Dt,Gr=>Gr.candidateThisTypes),inferredTypes:void 0}}function T(){return Tt(M(c))}function O(Dt){if(c.length===0||!Dt.parameters)return;let tr=S();for(let Gr of c)g.throwIfCancellationRequested(),ee(Gr,tr);let ur=[...tr.constructs||[],...tr.calls||[]];return Dt.parameters.map((Gr,dt)=>{let pr=[],ot=RB(Gr),ir=!1;for(let Yt of ur)if(Yt.argumentTypes.length<=dt)ir=Bo(Dt),pr.push(d.getUndefinedType());else if(ot)for(let Tr=dt;Trur.every(dt=>!dt(Gr)))}function Ye(Dt){return Tt(Qe(Dt))}function Tt(Dt){if(!Dt.length)return d.getAnyType();let tr=d.getUnionType([d.getStringType(),d.getNumberType()]),Gr=et(Dt,[{high:pr=>pr===d.getStringType()||pr===d.getNumberType(),low:pr=>pr===tr},{high:pr=>!(pr.flags&16385),low:pr=>!!(pr.flags&16385)},{high:pr=>!(pr.flags&114689)&&!(la(pr)&16),low:pr=>!!(la(pr)&16)}]),dt=Gr.filter(pr=>la(pr)&16);return dt.length&&(Gr=Gr.filter(pr=>!(la(pr)&16)),Gr.push(at(dt))),d.getWidenedType(d.getUnionType(Gr.map(d.getBaseTypeOfLiteralType),2))}function at(Dt){if(Dt.length===1)return Dt[0];let tr=[],ur=[],Gr=[],dt=[],pr=!1,ot=!1,ir=Al();for(let Tr of Dt){for(let Zi of d.getPropertiesOfType(Tr))ir.add(Zi.escapedName,Zi.valueDeclaration?d.getTypeOfSymbolAtLocation(Zi,Zi.valueDeclaration):d.getAnyType());tr.push(...d.getSignaturesOfType(Tr,0)),ur.push(...d.getSignaturesOfType(Tr,1));let mn=d.getIndexInfoOfType(Tr,0);mn&&(Gr.push(mn.type),pr=pr||mn.isReadonly);let jn=d.getIndexInfoOfType(Tr,1);jn&&(dt.push(jn.type),ot=ot||jn.isReadonly)}let qt=ke(ir,(Tr,mn)=>{let jn=mn.lengthd.getBaseTypeOfLiteralType(ir)),ot=(Gr=Dt.calls)!=null&&Gr.length?Ct(Dt):void 0;return ot&&pr?dt.push(d.getUnionType([ot,...pr],2)):(ot&&dt.push(ot),B(pr)&&dt.push(...pr)),dt.push(...mt(Dt)),dt}function Ct(Dt){let tr=new Map;Dt.properties&&Dt.properties.forEach((pr,ot)=>{let ir=d.createSymbol(4,ot);ir.links.type=Ye(pr),tr.set(ot,ir)});let ur=Dt.calls?[_r(Dt.calls)]:[],Gr=Dt.constructs?[_r(Dt.constructs)]:[],dt=Dt.stringIndex?[d.createIndexInfo(d.getStringType(),Ye(Dt.stringIndex),!1)]:[];return d.createAnonymousType(void 0,tr,ur,Gr,dt)}function mt(Dt){if(!Dt.properties||!Dt.properties.size)return[];let tr=_.filter(ur=>yt(ur,Dt));return 0Rt(ur,Dt)):[]}function yt(Dt,tr){return tr.properties?!Fh(tr.properties,(ur,Gr)=>{let dt=d.getTypeOfPropertyOfType(Dt,Gr);return dt?ur.calls?!d.getSignaturesOfType(dt,0).length||!d.isTypeAssignableTo(dt,Wt(ur.calls)):!d.isTypeAssignableTo(dt,Ye(ur)):!0}):!1}function Rt(Dt,tr){if(!(la(Dt)&4)||!tr.properties)return Dt;let ur=Dt.target,Gr=Ws(ur.typeParameters);if(!Gr)return Dt;let dt=[];return tr.properties.forEach((pr,ot)=>{let ir=d.getTypeOfPropertyOfType(ur,ot);pe.assert(!!ir,"generic should have all the properties of its reference."),dt.push(...Lt(ir,Ye(pr),Gr))}),h[Dt.symbol.escapedName](Tt(dt))}function Lt(Dt,tr,ur){if(Dt===ur)return[tr];if(Dt.flags&3145728)return jt(Dt.types,pr=>Lt(pr,tr,ur));if(la(Dt)&4&&la(tr)&4){let pr=d.getTypeArguments(Dt),ot=d.getTypeArguments(tr),ir=[];if(pr&&ot)for(let qt=0;qtdt.argumentTypes.length));for(let dt=0;dtot.argumentTypes[dt]||d.getUndefinedType())),Dt.some(ot=>ot.argumentTypes[dt]===void 0)&&(pr.flags|=16777216),tr.push(pr)}let Gr=Ye(R(Dt.map(dt=>dt.return_)));return d.createSignature(void 0,void 0,void 0,tr,Gr,void 0,ur,0)}function Gt(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateTypes||(Dt.candidateTypes=[])).push(tr)}function it(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateThisTypes||(Dt.candidateThisTypes=[])).push(tr)}}var AXt="fixReturnTypeInAsyncFunction",agn=[Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];Gg({errorCodes:agn,fixIds:[AXt],getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_=d.getTypeChecker(),S=cgn(g,d.getTypeChecker(),h.start);if(!S)return;let{returnTypeNode:R,returnType:T,promisedTypeNode:O,promisedType:V}=S,M=xo.ChangeTracker.with(c,ee=>lgn(ee,g,R,O));return[gg(AXt,M,[Z.Replace_0_with_Promise_1,_.typeToString(T),_.typeToString(V)],AXt,Z.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:s=>Jd(s,agn,(c,g)=>{let d=cgn(g.file,s.program.getTypeChecker(),g.start);d&&lgn(c,g.file,d.returnTypeNode,d.promisedTypeNode)})});function cgn(s,c,g){if(Bo(s))return;let d=Jc(s,g),h=ji(d,Gd),_=h?.type;if(!_)return;let S=c.getTypeFromTypeNode(_),R=c.getAwaitedType(S)||c.getVoidType(),T=c.typeToTypeNode(R,_,void 0);if(T)return{returnTypeNode:_,returnType:S,promisedTypeNode:T,promisedType:R}}function lgn(s,c,g,d){s.replaceNode(c,g,me.createTypeReferenceNode("Promise",[d]))}var ugn="disableJsDiagnostics",ggn="disableJsDiagnostics",Agn=Xt(Object.keys(Z),s=>{let c=Z[s];return c.category===1?c.code:void 0});Gg({errorCodes:Agn,getCodeActions:function(c){let{sourceFile:g,program:d,span:h,host:_,formatContext:S}=c;if(!Bo(g)||!hz(g,d.getCompilerOptions()))return;let R=g.checkJsDirective?"":UF(_,S.options),T=[gR(ugn,[ean(g.fileName,[x1e(g.checkJsDirective?RA(g.checkJsDirective.pos,g.checkJsDirective.end):$d(0,0),`// @ts-nocheck${R}`)])],Z.Disable_checking_for_this_file)];return xo.isValidLocationToAddComment(g,h.start)&&T.unshift(gg(ugn,xo.ChangeTracker.with(c,O=>dgn(O,g,h.start)),Z.Ignore_this_error_message,ggn,Z.Add_ts_ignore_to_all_error_messages)),T},fixIds:[ggn],getAllCodeActions:s=>{let c=new Set;return Jd(s,Agn,(g,d)=>{xo.isValidLocationToAddComment(d.file,d.start)&&dgn(g,d.file,d.start,c)})}});function dgn(s,c,g,d){let{line:h}=Ra(c,g);(!d||Ar(d,h))&&s.insertCommentBeforeLine(c,h,g," @ts-ignore")}function dXt(s,c,g,d,h,_,S){let R=s.symbol.members;for(let T of c)R.has(T.escapedName)||fgn(T,s,g,d,h,_,S,void 0)}function hse(s){return{trackSymbol:()=>!1,moduleResolverHost:ont(s.program,s.host)}}var pgn=(s=>(s[s.Method=1]="Method",s[s.Property=2]="Property",s[s.All=3]="All",s))(pgn||{});function fgn(s,c,g,d,h,_,S,R,T=3,O=!1){let V=s.getDeclarations(),M=Nc(V),ee=d.program.getTypeChecker(),re=Hg(d.program.getCompilerOptions()),ge=M?.kind??172,Ie=yt(s,M),_e=M?l_(M):0,Ee=_e&256;Ee|=_e&1?1:_e&4?4:0,M&&i0(M)&&(Ee|=512);let Ne=Tt(),Te=ee.getWidenedType(ee.getTypeOfSymbolAtLocation(s,c)),Ze=!!(s.flags&16777216),Pe=!!(c.flags&33554432)||O,Ke=S1(g,h),et=1|(Ke===0?268435456:0);switch(ge){case 172:case 173:let Rt=ee.typeToTypeNode(Te,c,et,8,hse(d));if(_){let je=GQ(Rt,re);je&&(Rt=je.typeNode,KU(_,je.symbols))}S(me.createPropertyDeclaration(Ne,M?Qe(Ie):s.getName(),Ze&&T&2?me.createToken(58):void 0,Rt,void 0));break;case 178:case 179:{pe.assertIsDefined(V);let je=ee.typeToTypeNode(Te,c,et,void 0,hse(d)),Wt=FW(V,M),_r=Wt.secondAccessor?[Wt.firstAccessor,Wt.secondAccessor]:[Wt.firstAccessor];if(_){let Gt=GQ(je,re);Gt&&(je=Gt.typeNode,KU(_,Gt.symbols))}for(let Gt of _r)if(wg(Gt))S(me.createGetAccessorDeclaration(Ne,Qe(Ie),E,mt(je),Ct(R,Ke,Pe)));else{pe.assertNode(Gt,kg,"The counterpart to a getter should be a setter");let it=q7(Gt),Dt=it&&Ir(it.name)?Vo(it.name):void 0;S(me.createSetAccessorDeclaration(Ne,Qe(Ie),IXt(1,[Dt],[mt(je)],1,!1),Ct(R,Ke,Pe)))}break}case 174:case 175:pe.assertIsDefined(V);let Lt=Te.isUnion()?jt(Te.types,je=>je.getCallSignatures()):Te.getCallSignatures();if(!zt(Lt))break;if(V.length===1){pe.assert(Lt.length===1,"One declaration implies one signature");let je=Lt[0];Ye(Ke,je,Ne,Qe(Ie),Ct(R,Ke,Pe));break}for(let je of Lt)je.declaration&&je.declaration.flags&33554432||Ye(Ke,je,Ne,Qe(Ie));if(!Pe)if(V.length>Lt.length){let je=ee.getSignatureFromDeclaration(V[V.length-1]);Ye(Ke,je,Ne,Qe(Ie),Ct(R,Ke))}else pe.assert(V.length===Lt.length,"Declarations and signatures should match count"),S(LFs(ee,d,c,Lt,Qe(Ie),Ze&&!!(T&1),Ne,Ke,R));break}function Ye(Rt,Lt,je,Wt,_r){let Gt=Uit(175,d,Rt,Lt,_r,Wt,je,Ze&&!!(T&1),c,_);Gt&&S(Gt)}function Tt(){let Rt;return Ee&&(Rt=zr(Rt,me.createModifiersFromModifierFlags(Ee))),at()&&(Rt=Ft(Rt,me.createToken(164))),Rt&&me.createNodeArray(Rt)}function at(){return!!(d.program.getCompilerOptions().noImplicitOverride&&M&&ZW(M))}function Qe(Rt){return Ir(Rt)&&Rt.escapedText==="constructor"?me.createComputedPropertyName(me.createStringLiteral(Vo(Rt),Ke===0)):KA(Rt,!1)}function Ct(Rt,Lt,je){return je?void 0:KA(Rt,!1)||hXt(Lt)}function mt(Rt){return KA(Rt,!1)}function yt(Rt,Lt){if(aI(Rt)&262144){let je=Rt.links.nameType;if(je&&f2(je))return me.createIdentifier(Bc(I2(je)))}return KA(fl(Lt),!1)}}function Uit(s,c,g,d,h,_,S,R,T,O){let V=c.program,M=V.getTypeChecker(),ee=Hg(V.getCompilerOptions()),re=Bo(T),ge=524545|(g===0?268435456:0),Ie=M.signatureToSignatureDeclaration(d,s,T,ge,8,hse(c));if(!Ie)return;let _e=re?void 0:Ie.typeParameters,Ee=Ie.parameters,Ne=re?void 0:KA(Ie.type);if(O){if(_e){let Ke=Er(_e,et=>{let Ye=et.constraint,Tt=et.default;if(Ye){let at=GQ(Ye,ee);at&&(Ye=at.typeNode,KU(O,at.symbols))}if(Tt){let at=GQ(Tt,ee);at&&(Tt=at.typeNode,KU(O,at.symbols))}return me.updateTypeParameterDeclaration(et,et.modifiers,et.name,Ye,Tt)});_e!==Ke&&(_e=gn(me.createNodeArray(Ke,_e.hasTrailingComma),_e))}let Pe=Er(Ee,Ke=>{let et=re?void 0:Ke.type;if(et){let Ye=GQ(et,ee);Ye&&(et=Ye.typeNode,KU(O,Ye.symbols))}return me.updateParameterDeclaration(Ke,Ke.modifiers,Ke.dotDotDotToken,Ke.name,re?void 0:Ke.questionToken,et,Ke.initializer)});if(Ee!==Pe&&(Ee=gn(me.createNodeArray(Pe,Ee.hasTrailingComma),Ee)),Ne){let Ke=GQ(Ne,ee);Ke&&(Ne=Ke.typeNode,KU(O,Ke.symbols))}}let Te=R?me.createToken(58):void 0,Ze=Ie.asteriskToken;if(jA(Ie))return me.updateFunctionExpression(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body);if(gA(Ie))return me.updateArrowFunction(Ie,S,_e,Ee,Ne,Ie.equalsGreaterThanToken,h??Ie.body);if(gu(Ie))return me.updateMethodDeclaration(Ie,S,Ze,_??me.createIdentifier(""),Te,_e,Ee,Ne,h);if(ah(Ie))return me.updateFunctionDeclaration(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body)}function pXt(s,c,g,d,h,_,S){let R=S1(c.sourceFile,c.preferences),T=Hg(c.program.getCompilerOptions()),O=hse(c),V=c.program.getTypeChecker(),M=Bo(S),{typeArguments:ee,arguments:re,parent:ge}=d,Ie=M?void 0:V.getContextualType(d),_e=lt(re,Tt=>Ir(Tt)?Tt.text:jo(Tt)&&Ir(Tt.name)?Tt.name.text:void 0),Ee=M?[]:lt(re,Tt=>V.getTypeAtLocation(Tt)),{argumentTypeNodes:Ne,argumentTypeParameters:Te}=FFs(V,g,Ee,S,T,1,8,O),Ze=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,Pe=Qd(ge)?me.createToken(42):void 0,Ke=M?void 0:xFs(V,Te,ee),et=IXt(re.length,_e,Ne,void 0,M),Ye=M||Ie===void 0?void 0:V.typeToTypeNode(Ie,S,void 0,void 0,O);switch(s){case 175:return me.createMethodDeclaration(Ze,Pe,h,void 0,Ke,et,Ye,hXt(R));case 174:return me.createMethodSignature(Ze,h,void 0,Ke,et,Ye===void 0?me.createKeywordTypeNode(159):Ye);case 263:return pe.assert(typeof h=="string"||Ir(h),"Unexpected name"),me.createFunctionDeclaration(Ze,Pe,h,Ke,et,Ye,lOe(Z.Function_not_implemented.message,R));default:pe.fail("Unexpected kind")}}function xFs(s,c,g){let d=new Set(c.map(_=>_[0])),h=new Map(c);if(g){let _=g.filter(R=>!c.some(T=>{var O;return s.getTypeAtLocation(R)===((O=T[1])==null?void 0:O.argumentType)})),S=d.size+_.length;for(let R=0;d.size{var S;return me.createTypeParameterDeclaration(void 0,_,(S=h.get(_))==null?void 0:S.constraint)})}function Ign(s){return 84+s<=90?String.fromCharCode(84+s):`T${s}`}function Kit(s,c,g,d,h,_,S,R){let T=s.typeToTypeNode(g,d,_,S,R);if(T)return fXt(T,c,h)}function fXt(s,c,g){let d=GQ(s,g);return d&&(KU(c,d.symbols),s=d.typeNode),KA(s)}function GFs(s,c){var g;pe.assert(c.typeArguments);let d=c.typeArguments,h=c.target;for(let _=0;_T===d[O]))return _}return d.length}function hgn(s,c,g,d,h,_){let S=s.typeToTypeNode(c,g,d,h,_);if(S){if(oh(S)){let R=c;if(R.typeArguments&&S.typeArguments){let T=GFs(s,R);if(T=d?me.createToken(58):void 0,h?void 0:g?.[R]||me.createKeywordTypeNode(159),void 0);_.push(V)}return _}function LFs(s,c,g,d,h,_,S,R,T){let O=d[0],V=d[0].minArgumentCount,M=!1;for(let Ie of d)V=Math.min(Ie.minArgumentCount,V),G0(Ie)&&(M=!0),Ie.parameters.length>=O.parameters.length&&(!G0(Ie)||G0(O))&&(O=Ie);let ee=O.parameters.length-(G0(O)?1:0),re=O.parameters.map(Ie=>Ie.name),ge=IXt(ee,re,void 0,V,!1);if(M){let Ie=me.createParameterDeclaration(void 0,me.createToken(26),re[ee]||"rest",ee>=V?me.createToken(58):void 0,me.createArrayTypeNode(me.createKeywordTypeNode(159)),void 0);ge.push(Ie)}return WFs(S,h,_,void 0,ge,VFs(d,s,c,g),R,T)}function VFs(s,c,g,d){if(B(s)){let h=c.getUnionType(lt(s,c.getReturnTypeOfSignature));return c.typeToTypeNode(h,d,1,8,hse(g))}}function WFs(s,c,g,d,h,_,S,R){return me.createMethodDeclaration(s,void 0,c,g?me.createToken(58):void 0,d,h,_,R||hXt(S))}function hXt(s){return lOe(Z.Method_not_implemented.message,s)}function lOe(s,c){return me.createBlock([me.createThrowStatement(me.createNewExpression(me.createIdentifier("Error"),void 0,[me.createStringLiteral(s,c===0)]))],!0)}function mXt(s,c,g){let d=x7(c);if(!d)return;let h=ygn(d,"compilerOptions");if(h===void 0){s.insertNodeAtObjectStart(c,d,_Xt("compilerOptions",me.createObjectLiteralExpression(g.map(([S,R])=>_Xt(S,R)),!0)));return}let _=h.initializer;if(ag(_))for(let[S,R]of g){let T=ygn(_,S);T===void 0?s.insertNodeAtObjectStart(c,_,_Xt(S,R)):s.replaceNode(c,T.initializer,R)}}function CXt(s,c,g,d){mXt(s,c,[[g,d]])}function _Xt(s,c){return me.createPropertyAssignment(me.createStringLiteral(s),c)}function ygn(s,c){return de(s.properties,g=>Cm(g)&&!!g.name&&Lg(g.name)&&g.name.text===c)}function GQ(s,c){let g,d=Mr(s,h,uc);if(g&&d)return{typeNode:d,symbols:g};function h(_){if(Fy(_)&&_.qualifier){let S=R0(_.qualifier);if(!S.symbol)return _s(_,h,void 0);let R=DWe(S.symbol,c),T=R!==S.text?bgn(_.qualifier,me.createIdentifier(R)):_.qualifier;g=Ft(g,S.symbol);let O=Os(_.typeArguments,h,uc);return me.createTypeReferenceNode(T,O)}return _s(_,h,void 0)}}function bgn(s,c){return s.kind===80?c:me.createQualifiedName(bgn(s.left,c),s.right)}function KU(s,c){c.forEach(g=>s.addImportFromExportedSymbol(g,!0))}function yXt(s,c){let g=Rs(c),d=Jc(s,c.start);for(;d.end_.replaceNode(c,g,d));return gR(Tgn,h,[Z.Replace_import_with_0,h[0].textChanges[0].newText])}Gg({errorCodes:[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],getCodeActions:qFs});function qFs(s){let c=s.sourceFile,g=Z.This_expression_is_not_callable.code===s.errorCode?214:215,d=ji(Jc(c,s.span.start),_=>_.kind===g);if(!d)return[];let h=d.expression;return Ngn(s,h)}Gg({errorCodes:[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_does_not_satisfy_the_constraint_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_predicate_0_is_not_assignable_to_1.code,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,Z._0_index_type_1_is_not_assignable_to_2_index_type_3.code,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:$Fs});function $Fs(s){let c=s.sourceFile,g=ji(Jc(c,s.span.start),d=>d.getStart()===s.span.start&&d.getEnd()===s.span.start+s.span.length);return g?Ngn(s,g):[]}function Ngn(s,c){let g=s.program.getTypeChecker().getTypeAtLocation(c);if(!(g.symbol&&Tw(g.symbol)&&g.symbol.links.originatingImport))return[];let d=[],h=g.symbol.links.originatingImport;if(jp(h)||Pr(d,zFs(s,h)),un(c)&&!(sh(c.parent)&&c.parent.name===c)){let _=s.sourceFile,S=xo.ChangeTracker.with(s,R=>R.replaceNode(_,c,me.createPropertyAccessExpression(c,"default"),{}));d.push(gR(Tgn,S,Z.Use_synthetic_default_member))}return d}var bXt="strictClassInitialization",EXt="addMissingPropertyDefiniteAssignmentAssertions",SXt="addMissingPropertyUndefinedType",vXt="addMissingPropertyInitializer",Dgn=[Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];Gg({errorCodes:Dgn,getCodeActions:function(c){let g=kgn(c.sourceFile,c.span.start);if(!g)return;let d=[];return Ft(d,tZs(c,g)),Ft(d,eZs(c,g)),Ft(d,rZs(c,g)),d},fixIds:[EXt,SXt,vXt],getAllCodeActions:s=>Jd(s,Dgn,(c,g)=>{let d=kgn(g.file,g.start);if(d)switch(s.fixId){case EXt:xgn(c,g.file,d.prop);break;case SXt:Ggn(c,g.file,d);break;case vXt:let h=s.program.getTypeChecker(),_=Zgn(h,d.prop);if(!_)return;Fgn(c,g.file,d.prop,_);break;default:pe.fail(JSON.stringify(s.fixId))}})});function kgn(s,c){let g=Jc(s,c);if(Ir(g)&&pi(g.parent)){let d=Zh(g.parent);if(d)return{type:d,prop:g.parent,isJs:Bo(g.parent)}}}function eZs(s,c){if(c.isJs)return;let g=xo.ChangeTracker.with(s,d=>xgn(d,s.sourceFile,c.prop));return gg(bXt,g,[Z.Add_definite_assignment_assertion_to_property_0,c.prop.getText()],EXt,Z.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function xgn(s,c,g){Py(g);let d=me.updatePropertyDeclaration(g,g.modifiers,g.name,me.createToken(54),g.type,g.initializer);s.replaceNode(c,g,d)}function tZs(s,c){let g=xo.ChangeTracker.with(s,d=>Ggn(d,s.sourceFile,c));return gg(bXt,g,[Z.Add_undefined_type_to_property_0,c.prop.name.getText()],SXt,Z.Add_undefined_type_to_all_uninitialized_properties)}function Ggn(s,c,g){let d=me.createKeywordTypeNode(157),h=AS(g.type)?g.type.types.concat(d):[g.type,d],_=me.createUnionTypeNode(h);g.isJs?s.addJSDocTags(c,g.prop,[me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(_))]):s.replaceNode(c,g.type,_)}function rZs(s,c){if(c.isJs)return;let g=s.program.getTypeChecker(),d=Zgn(g,c.prop);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Fgn(_,s.sourceFile,c.prop,d));return gg(bXt,h,[Z.Add_initializer_to_property_0,c.prop.name.getText()],vXt,Z.Add_initializers_to_all_uninitialized_properties)}function Fgn(s,c,g,d){Py(g);let h=me.updatePropertyDeclaration(g,g.modifiers,g.name,g.questionToken,g.type,d);s.replaceNode(c,g,h)}function Zgn(s,c){return Lgn(s,s.getTypeFromTypeNode(c.type))}function Lgn(s,c){if(c.flags&512)return c===s.getFalseType()||c===s.getFalseType(!0)?me.createFalse():me.createTrue();if(c.isStringLiteral())return me.createStringLiteral(c.value);if(c.isNumberLiteral())return me.createNumericLiteral(c.value);if(c.flags&2048)return me.createBigIntLiteral(c.value);if(c.isUnion())return J(c.types,g=>Lgn(s,g));if(c.isClass()){let g=mN(c.symbol);if(!g||Ga(g,64))return;let d=fN(g);return d&&d.parameters.length?void 0:me.createNewExpression(me.createIdentifier(c.symbol.name),void 0,void 0)}else if(s.isArrayLikeType(c))return me.createArrayLiteralExpression()}var BXt="requireInTs",Vgn=[Z.require_call_may_be_converted_to_an_import.code];Gg({errorCodes:Vgn,getCodeActions(s){let c=Ogn(s.sourceFile,s.program,s.span.start,s.preferences);if(!c)return;let g=xo.ChangeTracker.with(s,d=>Wgn(d,s.sourceFile,c));return[gg(BXt,g,Z.Convert_require_to_import,BXt,Z.Convert_all_require_to_import)]},fixIds:[BXt],getAllCodeActions:s=>Jd(s,Vgn,(c,g)=>{let d=Ogn(g.file,s.program,g.start,s.preferences);d&&Wgn(c,s.sourceFile,d)})});function Wgn(s,c,g){let{allowSyntheticDefaults:d,defaultImportName:h,namedImports:_,statement:S,moduleSpecifier:R}=g;s.replaceNode(c,S,h&&!d?me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(void 0,h,_),R,void 0))}function Ogn(s,c,g,d){let{parent:h}=Jc(s,g);uy(h,!0)||pe.failBadSyntaxKind(h);let _=Ma(h.parent,nc),S=S1(s,d),R=Gs(_.name,Ir),T=$m(_.name)?nZs(_.name):void 0;if(R||T){let O=ma(h.arguments);return{allowSyntheticDefaults:sQ(c.getCompilerOptions()),defaultImportName:R,namedImports:T,statement:Ma(_.parent.parent,Eh),moduleSpecifier:HW(O)?me.createStringLiteral(O.text,S===0):O}}}function nZs(s){let c=[];for(let g of s.elements){if(!Ir(g.name)||g.initializer)return;c.push(me.createImportSpecifier(!1,Gs(g.propertyName,Ir),g.name))}if(c.length)return me.createNamedImports(c)}var wXt="useDefaultImport",Pgn=[Z.Import_may_be_converted_to_a_default_import.code];Gg({errorCodes:Pgn,getCodeActions(s){let{sourceFile:c,span:{start:g}}=s,d=Mgn(c,g);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Hgn(_,c,d,s.preferences));return[gg(wXt,h,Z.Convert_to_default_import,wXt,Z.Convert_all_to_default_imports)]},fixIds:[wXt],getAllCodeActions:s=>Jd(s,Pgn,(c,g)=>{let d=Mgn(g.file,g.start);d&&Hgn(c,g.file,d,s.preferences)})});function Mgn(s,c){let g=Jc(s,c);if(!Ir(g))return;let{parent:d}=g;if(Zm(d)&&HF(d.moduleReference))return{importNode:d,name:g,moduleSpecifier:d.moduleReference.expression};if(Mx(d)&&Yf(d.parent.parent)){let h=d.parent.parent;return{importNode:h,name:g,moduleSpecifier:h.moduleSpecifier}}}function Hgn(s,c,g,d){s.replaceNode(c,g.importNode,eO(g.name,void 0,g.moduleSpecifier,S1(c,d)))}var TXt="useBigintLiteral",Ygn=[Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];Gg({errorCodes:Ygn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Qgn(d,c.sourceFile,c.span));if(g.length>0)return[gg(TXt,g,Z.Convert_to_a_bigint_numeric_literal,TXt,Z.Convert_all_to_bigint_numeric_literals)]},fixIds:[TXt],getAllCodeActions:s=>Jd(s,Ygn,(c,g)=>Qgn(c,g.file,g))});function Qgn(s,c,g){let d=Gs(Jc(c,g.start),yC);if(!d)return;let h=d.getText(c)+"n";s.replaceNode(c,d,me.createBigIntLiteral(h))}var iZs="fixAddModuleReferTypeMissingTypeof",RXt=iZs,Xgn=[Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];Gg({errorCodes:Xgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Jgn(g,d.start),_=xo.ChangeTracker.with(c,S=>Ugn(S,g,h));return[gg(RXt,_,Z.Add_missing_typeof,RXt,Z.Add_missing_typeof)]},fixIds:[RXt],getAllCodeActions:s=>Jd(s,Xgn,(c,g)=>Ugn(c,s.sourceFile,Jgn(g.file,g.start)))});function Jgn(s,c){let g=Jc(s,c);return pe.assert(g.kind===102,"This token should be an ImportKeyword"),pe.assert(g.parent.kind===206,"Token parent should be an ImportType"),g.parent}function Ugn(s,c,g){let d=me.updateImportTypeNode(g,g.argument,g.attributes,g.qualifier,g.typeArguments,!0);s.replaceNode(c,g,d)}var NXt="wrapJsxInFragment",Kgn=[Z.JSX_expressions_must_have_one_parent_element.code];Gg({errorCodes:Kgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=jgn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,S=>zgn(S,g,h));return[gg(NXt,_,Z.Wrap_in_JSX_fragment,NXt,Z.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[NXt],getAllCodeActions:s=>Jd(s,Kgn,(c,g)=>{let d=jgn(s.sourceFile,g.start);d&&zgn(c,s.sourceFile,d)})});function jgn(s,c){let h=Jc(s,c).parent.parent;if(!(!po(h)&&(h=h.parent,!po(h)))&&af(h.operatorToken))return h}function zgn(s,c,g){let d=sZs(g);d&&s.replaceNode(c,g,me.createJsxFragment(me.createJsxOpeningFragment(),d,me.createJsxJsxClosingFragment()))}function sZs(s){let c=[],g=s;for(;;)if(po(g)&&af(g.operatorToken)&&g.operatorToken.kind===28){if(c.push(g.left),OJ(g.right))return c.push(g.right),c;if(po(g.right)){g=g.right;continue}else return}else return}var DXt="wrapDecoratorInParentheses",qgn=[Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];Gg({errorCodes:qgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>$gn(d,c.sourceFile,c.span.start));return[gg(DXt,g,Z.Wrap_in_parentheses,DXt,Z.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[DXt],getAllCodeActions:s=>Jd(s,qgn,(c,g)=>$gn(c,g.file,g.start))});function $gn(s,c,g){let d=Jc(c,g),h=ji(d,Eo);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createParenthesizedExpression(h.expression);s.replaceNode(c,h.expression,_)}var kXt="fixConvertToMappedObjectType",eAn=[Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];Gg({errorCodes:eAn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=tAn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,R=>rAn(R,g,h)),S=Vo(h.container.name);return[gg(kXt,_,[Z.Convert_0_to_mapped_object_type,S],kXt,[Z.Convert_0_to_mapped_object_type,S])]},fixIds:[kXt],getAllCodeActions:s=>Jd(s,eAn,(c,g)=>{let d=tAn(g.file,g.start);d&&rAn(c,g.file,d)})});function tAn(s,c){let g=Jc(s,c),d=Gs(g.parent.parent,N0);if(!d)return;let h=p_(d.parent)?d.parent:Gs(d.parent.parent,PB);if(h)return{indexSignature:d,container:h}}function oZs(s,c){return me.createTypeAliasDeclaration(s.modifiers,s.name,s.typeParameters,c)}function rAn(s,c,{indexSignature:g,container:d}){let _=(p_(d)?d.members:d.type.members).filter(V=>!N0(V)),S=ma(g.parameters),R=me.createTypeParameterDeclaration(void 0,Ma(S.name,Ir),S.type),T=me.createMappedTypeNode(D3(g)?me.createModifier(148):void 0,R,void 0,g.questionToken,g.type,void 0),O=me.createIntersectionTypeNode([...Y7(d),T,..._.length?[me.createTypeLiteralNode(_)]:E]);s.replaceNode(c,d,oZs(d,O))}var nAn="removeAccidentalCallParentheses",aZs=[Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];Gg({errorCodes:aZs,getCodeActions(s){let c=ji(Jc(s.sourceFile,s.span.start),Ll);if(!c)return;let g=xo.ChangeTracker.with(s,d=>{d.deleteRange(s.sourceFile,{pos:c.expression.end,end:c.end})});return[gR(nAn,g,Z.Remove_parentheses)]},fixIds:[nAn]});var xXt="removeUnnecessaryAwait",iAn=[Z.await_has_no_effect_on_the_type_of_this_expression.code];Gg({errorCodes:iAn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>sAn(d,c.sourceFile,c.span));if(g.length>0)return[gg(xXt,g,Z.Remove_unnecessary_await,xXt,Z.Remove_all_unnecessary_uses_of_await)]},fixIds:[xXt],getAllCodeActions:s=>Jd(s,iAn,(c,g)=>sAn(c,g.file,g))});function sAn(s,c,g){let d=Gs(Jc(c,g.start),R=>R.kind===135),h=d&&Gs(d.parent,_1);if(!h)return;let _=h;if(dI(h.parent)){let R=yU(h.expression,!1);if(Ir(R)){let T=Vm(h.parent.pos,c);T&&T.kind!==105&&(_=h.parent)}}s.replaceNode(c,_,h.expression)}var oAn=[Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],GXt="splitTypeOnlyImport";Gg({errorCodes:oAn,fixIds:[GXt],getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>cAn(d,aAn(c.sourceFile,c.span),c));if(g.length)return[gg(GXt,g,Z.Split_into_two_separate_import_declarations,GXt,Z.Split_all_invalid_type_only_imports)]},getAllCodeActions:s=>Jd(s,oAn,(c,g)=>{cAn(c,aAn(s.sourceFile,g),s)})});function aAn(s,c){return ji(Jc(s,c.start),Yf)}function cAn(s,c,g){if(!c)return;let d=pe.checkDefined(c.importClause);s.replaceNode(g.sourceFile,c,me.updateImportDeclaration(c,c.modifiers,me.updateImportClause(d,d.phaseModifier,d.name,void 0),c.moduleSpecifier,c.attributes)),s.insertNodeAfter(g.sourceFile,c,me.createImportDeclaration(void 0,me.updateImportClause(d,d.phaseModifier,void 0,d.namedBindings),c.moduleSpecifier,c.attributes))}var FXt="fixConvertConstToLet",lAn=[Z.Cannot_assign_to_0_because_it_is_a_constant.code];Gg({errorCodes:lAn,getCodeActions:function(c){let{sourceFile:g,span:d,program:h}=c,_=uAn(g,d.start,h);if(_===void 0)return;let S=xo.ChangeTracker.with(c,R=>gAn(R,g,_.token));return[XYt(FXt,S,Z.Convert_const_to_let,FXt,Z.Convert_all_const_to_let)]},getAllCodeActions:s=>{let{program:c}=s,g=new Set;return iq(xo.ChangeTracker.with(s,d=>{sq(s,lAn,h=>{let _=uAn(h.file,h.start,c);if(_&&Wy(g,xg(_.symbol)))return gAn(d,h.file,_.token)})}))},fixIds:[FXt]});function uAn(s,c,g){var d;let _=g.getTypeChecker().getSymbolAtLocation(Jc(s,c));if(_===void 0)return;let S=Gs((d=_?.valueDeclaration)==null?void 0:d.parent,d_);if(S===void 0)return;let R=ep(S,87,s);if(R!==void 0)return{symbol:_,token:R}}function gAn(s,c,g){s.replaceNode(c,g,me.createToken(121))}var ZXt="fixExpectedComma",cZs=Z._0_expected.code,AAn=[cZs];Gg({errorCodes:AAn,getCodeActions(s){let{sourceFile:c}=s,g=dAn(c,s.span.start,s.errorCode);if(!g)return;let d=xo.ChangeTracker.with(s,h=>pAn(h,c,g));return[gg(ZXt,d,[Z.Change_0_to_1,";",","],ZXt,[Z.Change_0_to_1,";",","])]},fixIds:[ZXt],getAllCodeActions:s=>Jd(s,AAn,(c,g)=>{let d=dAn(g.file,g.start,g.code);d&&pAn(c,s.sourceFile,d)})});function dAn(s,c,g){let d=Jc(s,c);return d.kind===27&&d.parent&&(ag(d.parent)||YI(d.parent))?{node:d}:void 0}function pAn(s,c,{node:g}){let d=me.createToken(28);s.replaceNode(c,g,d)}var lZs="addVoidToPromise",fAn="addVoidToPromise",IAn=[Z.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,Z.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];Gg({errorCodes:IAn,fixIds:[fAn],getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>hAn(g,s.sourceFile,s.span,s.program));if(c.length>0)return[gg(lZs,c,Z.Add_void_to_Promise_resolved_without_a_value,fAn,Z.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(s){return Jd(s,IAn,(c,g)=>hAn(c,g.file,g,s.program,new Set))}});function hAn(s,c,g,d,h){let _=Jc(c,g.start);if(!Ir(_)||!Ll(_.parent)||_.parent.expression!==_||_.parent.arguments.length!==0)return;let S=d.getTypeChecker(),R=S.getSymbolAtLocation(_),T=R?.valueDeclaration;if(!T||!Si(T)||!C2(T.parent.parent)||h?.has(T))return;h?.add(T);let O=uZs(T.parent.parent);if(zt(O)){let V=O[0],M=!AS(V)&&!_v(V)&&_v(me.createUnionTypeNode([V,me.createKeywordTypeNode(116)]).types[0]);M&&s.insertText(c,V.pos,"("),s.insertText(c,V.end,M?") | void":" | void")}else{let V=S.getResolvedSignature(_.parent),M=V?.parameters[0],ee=M&&S.getTypeOfSymbolAtLocation(M,T.parent.parent);Bo(T)?(!ee||ee.flags&3)&&(s.insertText(c,T.parent.parent.end,")"),s.insertText(c,Yu(c.text,T.parent.parent.pos),"/** @type {Promise} */(")):(!ee||ee.flags&2)&&s.insertText(c,T.parent.parent.expression.end,"")}}function uZs(s){var c;if(Bo(s)){if(dI(s.parent)){let g=(c=gv(s.parent))==null?void 0:c.typeExpression.type;if(g&&oh(g)&&Ir(g.typeName)&&Vo(g.typeName)==="Promise")return g.typeArguments}}else return s.typeArguments}var cq={};o(cq,{CompletionKind:()=>GAn,CompletionSource:()=>CAn,SortText:()=>g0,StringCompletions:()=>ast,SymbolOriginInfoKind:()=>_An,createCompletionDetails:()=>AOe,createCompletionDetailsForSymbol:()=>QXt,getCompletionEntriesFromSymbols:()=>HXt,getCompletionEntryDetails:()=>PZs,getCompletionEntrySymbol:()=>HZs,getCompletionsAtPosition:()=>mZs,getDefaultCommitCharacters:()=>jU,getPropertiesForObjectExpression:()=>ist,moduleSpecifierResolutionCacheAttemptLimit:()=>mAn,moduleSpecifierResolutionLimit:()=>LXt});var LXt=100,mAn=1e3,g0={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(s){return"z"+s},ObjectLiteralProperty(s,c){return`${s}\0${c}\0`},SortBelow(s){return s+"1"}},FN=[".",",",";"],jit=[".",";"],CAn=(s=>(s.ThisProperty="ThisProperty/",s.ClassMemberSnippet="ClassMemberSnippet/",s.TypeOnlyAlias="TypeOnlyAlias/",s.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",s.SwitchCases="SwitchCases/",s.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",s))(CAn||{}),_An=(s=>(s[s.ThisType=1]="ThisType",s[s.SymbolMember=2]="SymbolMember",s[s.Export=4]="Export",s[s.Promise=8]="Promise",s[s.Nullable=16]="Nullable",s[s.ResolvedExport=32]="ResolvedExport",s[s.TypeOnlyAlias=64]="TypeOnlyAlias",s[s.ObjectLiteralMethod=128]="ObjectLiteralMethod",s[s.Ignore=256]="Ignore",s[s.ComputedPropertyName=512]="ComputedPropertyName",s[s.SymbolMemberNoExport=2]="SymbolMemberNoExport",s[s.SymbolMemberExport=6]="SymbolMemberExport",s))(_An||{});function gZs(s){return!!(s.kind&1)}function AZs(s){return!!(s.kind&2)}function uOe(s){return!!(s&&s.kind&4)}function Bpe(s){return!!(s&&s.kind===32)}function dZs(s){return uOe(s)||Bpe(s)||VXt(s)}function pZs(s){return(uOe(s)||Bpe(s))&&!!s.isFromPackageJson}function fZs(s){return!!(s.kind&8)}function IZs(s){return!!(s.kind&16)}function yAn(s){return!!(s&&s.kind&64)}function bAn(s){return!!(s&&s.kind&128)}function hZs(s){return!!(s&&s.kind&256)}function VXt(s){return!!(s&&s.kind&512)}function EAn(s,c,g,d,h,_,S,R,T){var O,V,M,ee;let re=Zg(),ge=S||lz(d.getCompilerOptions())||((O=_.autoImportSpecifierExcludeRegexes)==null?void 0:O.length),Ie=!1,_e=0,Ee=0,Ne=0,Te=0,Ze=T({tryResolve:Ke,skippedAny:()=>Ie,resolvedAny:()=>Ee>0,resolvedBeyondLimit:()=>Ee>LXt}),Pe=Te?` (${(Ne/Te*100).toFixed(1)}% hit rate)`:"";return(V=c.log)==null||V.call(c,`${s}: resolved ${Ee} module specifiers, plus ${_e} ambient and ${Ne} from cache${Pe}`),(M=c.log)==null||M.call(c,`${s}: response is ${Ie?"incomplete":"complete"}`),(ee=c.log)==null||ee.call(c,`${s}: ${Zg()-re}`),Ze;function Ke(et,Ye){if(Ye){let Ct=g.getModuleSpecifierForBestExportInfo(et,h,R);return Ct&&_e++,Ct||"failed"}let Tt=ge||_.allowIncompleteCompletions&&Ee{let ge=Xt(T.entries,Ie=>{var _e;if(!Ie.hasAction||!Ie.source||!Ie.data||SAn(Ie.data))return Ie;if(!jAn(Ie.name,V))return;let{origin:Ee}=pe.checkDefined(ZAn(Ie.name,Ie.data,d,h)),Ne=M.get(c.path,Ie.data.exportMapKey),Te=Ne&&re.tryResolve(Ne,!Xr(d2(Ee.moduleSymbol.name)));if(Te==="skipped")return Ie;if(!Te||Te==="failed"){(_e=h.log)==null||_e.call(h,`Unexpected failure resolving auto import for '${Ie.name}' from '${Ie.source}'`);return}let Ze={...Ee,kind:32,moduleSpecifier:Te.moduleSpecifier};return Ie.data=kAn(Ze),Ie.source=MXt(Ze),Ie.sourceDisplay=[IS(Ze.moduleSpecifier)],Ie});return re.skippedAny()||(T.isIncomplete=void 0),ge});return T.entries=ee,T.flags=(T.flags||0)|4,T.optionalReplacementSpan=TAn(O),T}function WXt(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:s,defaultCommitCharacters:jU(!1)}}function vAn(s,c,g,d,h,_){let S=Jc(s,c);if(!C3(S)&&!aR(S))return[];let R=aR(S)?S:S.parent;if(!aR(R))return[];let T=R.parent;if(!Eu(T))return[];let O=o0(s),V=h.includeCompletionsWithSnippetText||void 0,M=ze(R.tags,ee=>dS(ee)&&ee.getEnd()<=c);return Xt(T.parameters,ee=>{if(!kL(ee).length){if(Ir(ee.name)){let re={tabstop:1},ge=ee.name.text,Ie=c2e(ge,ee.initializer,ee.dotDotDotToken,O,!1,!1,g,d,h),_e=V?c2e(ge,ee.initializer,ee.dotDotDotToken,O,!1,!0,g,d,h,re):void 0;return _&&(Ie=Ie.slice(1),_e&&(_e=_e.slice(1))),{name:Ie,kind:"parameter",sortText:g0.LocationPriority,insertText:V?_e:void 0,isSnippet:V}}else if(ee.parent.parameters.indexOf(ee)===M){let re=`param${M}`,ge=BAn(re,ee.name,ee.initializer,ee.dotDotDotToken,O,!1,g,d,h),Ie=V?BAn(re,ee.name,ee.initializer,ee.dotDotDotToken,O,!0,g,d,h):void 0,_e=ge.join(IN(d)+"* "),Ee=Ie?.join(IN(d)+"* ");return _&&(_e=_e.slice(1),Ee&&(Ee=Ee.slice(1))),{name:_e,kind:"parameter",sortText:g0.LocationPriority,insertText:V?Ee:void 0,isSnippet:V}}}})}function BAn(s,c,g,d,h,_,S,R,T){if(!h)return[c2e(s,g,d,h,!1,_,S,R,T,{tabstop:1})];return O(s,c,g,d,{tabstop:1});function O(M,ee,re,ge,Ie){if($m(ee)&&!ge){let Ee={tabstop:Ie.tabstop},Ne=c2e(M,re,ge,h,!0,_,S,R,T,Ee),Te=[];for(let Ze of ee.elements){let Pe=V(M,Ze,Ee);if(Pe)Te.push(...Pe);else{Te=void 0;break}}if(Te)return Ie.tabstop=Ee.tabstop,[Ne,...Te]}return[c2e(M,re,ge,h,!1,_,S,R,T,Ie)]}function V(M,ee,re){if(!ee.propertyName&&Ir(ee.name)||Ir(ee.name)){let ge=ee.propertyName?QY(ee.propertyName):ee.name.text;if(!ge)return;let Ie=`${M}.${ge}`;return[c2e(Ie,ee.initializer,ee.dotDotDotToken,h,!1,_,S,R,T,re)]}else if(ee.propertyName){let ge=QY(ee.propertyName);return ge&&O(`${M}.${ge}`,ee.name,ee.initializer,ee.dotDotDotToken,re)}}}function c2e(s,c,g,d,h,_,S,R,T,O){if(_&&pe.assertIsDefined(O),c&&(s=_Zs(s,c)),_&&(s=MW(s)),d){let V="*";if(h)pe.assert(!g,"Cannot annotate a rest parameter with type 'Object'."),V="Object";else{if(c){let re=S.getTypeAtLocation(c.parent);if(!(re.flags&16385)){let ge=c.getSourceFile(),_e=S1(ge,T)===0?268435456:0,Ee=S.typeToTypeNode(re,ji(c,Eu),_e);if(Ee){let Ne=_?$it({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target}):zW({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target});ti(Ee,1),V=Ne.printNode(4,Ee,ge)}}}_&&V==="*"&&(V=`\${${O.tabstop++}:${V}}`)}let M=!h&&g?"...":"",ee=_?`\${${O.tabstop++}}`:"";return`@param {${M}${V}} ${s} ${ee}`}else{let V=_?`\${${O.tabstop++}}`:"";return`@param ${s} ${V}`}}function _Zs(s,c){let g=c.getText().trim();return g.includes(` +`)||g.length>80?`[${s}]`:`[${s}=${g}]`}function yZs(s){return{name:Vi(s),kind:"keyword",kindModifiers:"",sortText:g0.GlobalsOrKeywords}}function bZs(s,c){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:c,entries:s.slice(),defaultCommitCharacters:jU(c)}}function wAn(s,c,g){return{kind:4,keywordCompletions:VAn(s,c),isNewIdentifierLocation:g}}function EZs(s){switch(s){case 156:return 8;default:pe.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function TAn(s){return s?.kind===80?Yy(s):void 0}function SZs(s,c,g,d,h,_,S,R,T,O){let{symbols:V,contextToken:M,completionKind:ee,isInSnippetScope:re,isNewIdentifierLocation:ge,location:Ie,propertyAccessToConvert:_e,keywordFilters:Ee,symbolToOriginInfoMap:Ne,recommendedCompletion:Te,isJsxInitializer:Ze,isTypeOnlyLocation:Pe,isJsxIdentifierExpected:Ke,isRightOfOpenTag:et,isRightOfDotOrQuestionDot:Ye,importStatementCompletion:Tt,insideJsDocTagTypeExpression:at,symbolToSortTextMap:Qe,hasUnresolvedAutoImports:Ct,defaultCommitCharacters:mt}=_,yt=_.literals,Rt=g.getTypeChecker();if(zne(s.scriptKind)===1){let it=BZs(Ie,s);if(it)return it}let Lt=ji(M,Nie);if(Lt&&(Ks(M)||kW(M,Lt.expression))){let it=FWe(Rt,Lt.parent.clauses);yt=yt.filter(Dt=>!it.hasValue(Dt)),V.forEach((Dt,tr)=>{if(Dt.valueDeclaration&&YF(Dt.valueDeclaration)){let ur=Rt.getConstantValue(Dt.valueDeclaration);ur!==void 0&&it.hasValue(ur)&&(Ne[tr]={kind:256})}})}let je=Ya(),Wt=RAn(s,d);if(Wt&&!ge&&(!V||V.length===0)&&Ee===0)return;let _r=HXt(V,je,void 0,M,Ie,T,s,c,g,Hg(d),h,ee,S,d,R,Pe,_e,Ke,Ze,Tt,Te,Ne,Qe,Ke,et,O);if(Ee!==0)for(let it of VAn(Ee,!at&&o0(s)))(Pe&&lpe(Ta(it.name))||!Pe&&lLs(it.name)||!_r.has(it.name))&&(_r.add(it.name),Gc(je,it,gOe,void 0,!0));for(let it of KZs(M,T))_r.has(it.name)||(_r.add(it.name),Gc(je,it,gOe,void 0,!0));for(let it of yt){let Dt=TZs(s,S,it);_r.add(Dt.name),Gc(je,Dt,gOe,void 0,!0)}Wt||wZs(s,Ie.pos,_r,Hg(d),je);let Gt;if(S.includeCompletionsWithInsertText&&M&&!et&&!Ye&&(Gt=ji(M,vde))){let it=NAn(Gt,s,S,d,c,g,R);it&&je.push(it.entry)}return{flags:_.flags,isGlobalCompletion:re,isIncomplete:S.allowIncompleteCompletions&&Ct?!0:void 0,isMemberCompletion:vZs(ee),isNewIdentifierLocation:ge,optionalReplacementSpan:TAn(Ie),entries:je,defaultCommitCharacters:mt??jU(ge)}}function RAn(s,c){return!o0(s)||!!hz(s,c)}function NAn(s,c,g,d,h,_,S){let R=s.clauses,T=_.getTypeChecker(),O=T.getTypeAtLocation(s.parent.expression);if(O&&O.isUnion()&&ue(O.types,V=>V.isLiteral())){let V=FWe(T,R),M=Hg(d),ee=S1(c,g),re=Z0.createImportAdder(c,_,g,h),ge=[];for(let Pe of O.types)if(Pe.flags&1024){pe.assert(Pe.symbol,"An enum member type should have a symbol"),pe.assert(Pe.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");let Ke=Pe.symbol.valueDeclaration&&T.getConstantValue(Pe.symbol.valueDeclaration);if(Ke!==void 0){if(V.hasValue(Ke))continue;V.addValue(Ke)}let et=Z0.typeToAutoImportableTypeNode(T,re,Pe,s,M);if(!et)return;let Ye=zit(et,M,ee);if(!Ye)return;ge.push(Ye)}else if(!V.hasValue(Pe.value))switch(typeof Pe.value){case"object":ge.push(Pe.value.negative?me.createPrefixUnaryExpression(41,me.createBigIntLiteral({negative:!1,base10Value:Pe.value.base10Value})):me.createBigIntLiteral(Pe.value));break;case"number":ge.push(Pe.value<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-Pe.value)):me.createNumericLiteral(Pe.value));break;case"string":ge.push(me.createStringLiteral(Pe.value,ee===0));break}if(ge.length===0)return;let Ie=lt(ge,Pe=>me.createCaseClause(Pe,[])),_e=UF(h,S?.options),Ee=$it({removeComments:!0,module:d.module,moduleResolution:d.moduleResolution,target:d.target,newLine:Q1e(_e)}),Ne=S?Pe=>Ee.printAndFormatNode(4,Pe,c,S):Pe=>Ee.printNode(4,Pe,c),Te=lt(Ie,(Pe,Ke)=>g.includeCompletionsWithSnippetText?`${Ne(Pe)}$${Ke+1}`:`${Ne(Pe)}`).join(_e);return{entry:{name:`${Ee.printNode(4,Ie[0],c)} ...`,kind:"",sortText:g0.GlobalsOrKeywords,insertText:Te,hasAction:re.hasFixes()||void 0,source:"SwitchCases/",isSnippet:g.includeCompletionsWithSnippetText?!0:void 0},importAdder:re}}}function zit(s,c,g){switch(s.kind){case 184:let d=s.typeName;return qit(d,c,g);case 200:let h=zit(s.objectType,c,g),_=zit(s.indexType,c,g);return h&&_&&me.createElementAccessExpression(h,_);case 202:let S=s.literal;switch(S.kind){case 11:return me.createStringLiteral(S.text,g===0);case 9:return me.createNumericLiteral(S.text,S.numericLiteralFlags)}return;case 197:let R=zit(s.type,c,g);return R&&(Ir(R)?R:me.createParenthesizedExpression(R));case 187:return qit(s.exprName,c,g);case 206:pe.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function qit(s,c,g){if(Ir(s))return s;let d=Bc(s.right.escapedText);return nEe(d,c)?me.createPropertyAccessExpression(qit(s.left,c,g),d):me.createElementAccessExpression(qit(s.left,c,g),me.createStringLiteral(d,g===0))}function vZs(s){switch(s){case 0:case 3:case 2:return!0;default:return!1}}function BZs(s,c){let g=ji(s,d=>{switch(d.kind){case 288:return!0;case 44:case 32:case 80:case 212:return!1;default:return"quit"}});if(g){let d=!!ep(g,32,c),S=g.parent.openingElement.tagName.getText(c)+(d?"":">"),R=Yy(g.tagName),T={name:S,kind:"class",kindModifiers:void 0,sortText:g0.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:R,entries:[T],defaultCommitCharacters:jU(!1)}}}function wZs(s,c,g,d,h){_it(s).forEach((_,S)=>{if(_===c)return;let R=Bc(S);!g.has(R)&&qh(R,d)&&(g.add(R),Gc(h,{name:R,kind:"warning",kindModifiers:"",sortText:g0.JavascriptIdentifiers,isFromUncheckedFile:!0,commitCharacters:[]},gOe))})}function OXt(s,c,g){return typeof g=="object"?PW(g)+"n":Xs(g)?fpe(s,c,g):JSON.stringify(g)}function TZs(s,c,g){return{name:OXt(s,c,g),kind:"string",kindModifiers:"",sortText:g0.LocationPriority,commitCharacters:[]}}function RZs(s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe,Ke,et){var Ye,Tt;let at,Qe,Ct=ent(g,_),mt,yt,Rt=MXt(M),Lt,je,Wt,_r=T.getTypeChecker(),Gt=M&&IZs(M),it=M&&AZs(M)||V;if(M&&gZs(M))at=V?`this${Gt?"?.":""}[${PXt(S,Ne,O)}]`:`this${Gt?"?.":"."}${O}`;else if((it||Gt)&&re){at=it?V?`[${PXt(S,Ne,O)}]`:`[${O}]`:O,(Gt||re.questionDotToken)&&(at=`?.${at}`);let Gr=ep(re,25,S)||ep(re,29,S);if(!Gr)return;let dt=Ac(O,re.name.text)?re.name.end:Gr.end;Ct=RA(Gr.getStart(S),dt)}if(ge&&(at===void 0&&(at=O),at=`{${at}}`,typeof ge!="boolean"&&(Ct=Yy(ge,S))),M&&fZs(M)&&re){at===void 0&&(at=O);let Gr=Vm(re.pos,S),dt="";Gr&&BWe(Gr.end,Gr.parent,S)&&(dt=";"),dt+=`(await ${re.expression.getText()})`,at=V?`${dt}${at}`:`${dt}${Gt?"?.":"."}${at}`;let ot=Gs(re.parent,_1)?re.parent:re.expression;Ct=RA(ot.getStart(S),re.end)}if(Bpe(M)&&(Lt=[IS(M.moduleSpecifier)],Ie&&({insertText:at,replacementSpan:Ct}=LZs(O,Ie,M,_e,S,T,Ne),yt=Ne.includeCompletionsWithSnippetText?!0:void 0)),M?.kind===64&&(je=!0),Te===0&&d&&((Ye=Vm(d.pos,S,d))==null?void 0:Ye.kind)!==28&&(gu(d.parent.parent)||wg(d.parent.parent)||kg(d.parent.parent)||Hx(d.parent)||((Tt=ji(d.parent,Cm))==null?void 0:Tt.getLastToken(S))===d||u0(d.parent)&&Ra(S,d.getEnd()).line!==Ra(S,_).line)&&(Rt="ObjectLiteralMemberWithComma/",je=!0),Ne.includeCompletionsWithClassMemberSnippets&&Ne.includeCompletionsWithInsertText&&Te===3&&DZs(s,h,S)){let Gr,dt=DAn(R,T,Ee,Ne,O,s,h,_,d,Ze);if(dt)({insertText:at,filterText:Qe,isSnippet:yt,importAdder:Gr}=dt),(Gr?.hasFixes()||dt.eraseRange)&&(je=!0,Rt="ClassMemberSnippet/");else return}if(M&&bAn(M)&&({insertText:at,isSnippet:yt,labelDetails:Wt}=M,Ne.useLabelDetailsInCompletionEntries||(O=O+Wt.detail,Wt=void 0),Rt="ObjectLiteralMethodSnippet/",c=g0.SortBelow(c)),Pe&&!Ke&&Ne.includeCompletionsWithSnippetText&&Ne.jsxAttributeCompletionStyle&&Ne.jsxAttributeCompletionStyle!=="none"&&!(RN(h.parent)&&h.parent.initializer)){let Gr=Ne.jsxAttributeCompletionStyle==="braces",dt=_r.getTypeOfSymbolAtLocation(s,h);Ne.jsxAttributeCompletionStyle==="auto"&&!(dt.flags&528)&&!(dt.flags&1048576&&de(dt.types,pr=>!!(pr.flags&528)))&&(dt.flags&402653316||dt.flags&1048576&&ue(dt.types,pr=>!!(pr.flags&402686084||kMt(pr)))?(at=`${MW(O)}=${fpe(S,Ne,"$1")}`,yt=!0):Gr=!0),Gr&&(at=`${MW(O)}={$1}`,yt=!0)}if(at!==void 0&&!Ne.includeCompletionsWithInsertText)return;(uOe(M)||Bpe(M))&&(mt=kAn(M),je=!Ie);let Dt=ji(h,Kne);if(Dt){let Gr=Hg(R.getCompilationSettings());if(!qh(O,Gr))at=PXt(S,Ne,O),Dt.kind===276&&(f_.setText(S.text),f_.resetTokenState(_),f_.scan()===130&&f_.scan()===80||(at+=" as "+NZs(O,Gr)));else if(Dt.kind===276){let dt=Ta(O);dt&&(dt===135||$ye(dt))&&(at=`${O} as ${O}_`)}}let tr=g9.getSymbolKind(_r,s,h),ur=tr==="warning"||tr==="string"?[]:void 0;return{name:O,kind:tr,kindModifiers:g9.getSymbolModifiers(_r,s),sortText:c,source:Rt,hasAction:je?!0:void 0,isRecommended:VZs(s,ee,_r)||void 0,insertText:at,filterText:Qe,replacementSpan:Ct,sourceDisplay:Lt,labelDetails:Wt,isSnippet:yt,isPackageJsonImport:pZs(M)||void 0,isImportStatementCompletion:!!Ie||void 0,data:mt,commitCharacters:ur,...et?{symbol:s}:void 0}}function NZs(s,c){let g=!1,d="",h;for(let _=0;_=65536?2:1)h=s.codePointAt(_),h!==void 0&&(_===0?Sd(h,c):l1(h,c))?(g&&(d+="_"),d+=String.fromCodePoint(h),g=!1):g=!0;return g&&(d+="_"),d||"_"}function DZs(s,c,g){return Bo(c)?!1:!!(s.flags&106500)&&(xa(c)||c.parent&&c.parent.parent&&MI(c.parent)&&c===c.parent.name&&c.parent.getLastToken(g)===c.parent.name&&xa(c.parent.parent)||c.parent&&Gie(c)&&xa(c.parent))}function DAn(s,c,g,d,h,_,S,R,T,O){let V=ji(S,xa);if(!V)return;let M,ee=h,re=h,ge=c.getTypeChecker(),Ie=S.getSourceFile(),_e=$it({removeComments:!0,module:g.module,moduleResolution:g.moduleResolution,target:g.target,omitTrailingSemicolon:!1,newLine:Q1e(UF(s,O?.options))}),Ee=Z0.createImportAdder(Ie,c,d,s),Ne;if(d.includeCompletionsWithSnippetText){M=!0;let Tt=me.createEmptyStatement();Ne=me.createBlock([Tt],!0),_Ee(Tt,{kind:0,order:0})}else Ne=me.createBlock([],!0);let Te=0,{modifiers:Ze,range:Pe,decorators:Ke}=kZs(T,Ie,R),et=Ze&64&&V.modifierFlagsCache&64,Ye=[];if(Z0.addNewNodeForMemberSymbol(_,V,Ie,{program:c,host:s},d,Ee,Tt=>{let at=0;et&&(at|=64),MI(Tt)&&ge.getMemberOverrideModifierStatus(V,Tt,_)===1&&(at|=16),Ye.length||(Te=Tt.modifierFlagsCache|at),Tt=me.replaceModifiers(Tt,Te),Ye.push(Tt)},Ne,Z0.PreserveOptionalFlags.Property,!!et),Ye.length){let Tt=_.flags&8192,at=Te|16|1;Tt?at|=1024:at|=136;let Qe=Ze&at;if(Ze&~at)return;if(Te&4&&Qe&1&&(Te&=-5),Qe!==0&&!(Qe&1)&&(Te&=-2),Te|=Qe,Ye=Ye.map(mt=>me.replaceModifiers(mt,Te)),Ke?.length){let mt=Ye[Ye.length-1];mQ(mt)&&(Ye[Ye.length-1]=me.replaceDecoratorsAndModifiers(mt,Ke.concat(sN(mt)||[])))}let Ct=131073;O?ee=_e.printAndFormatSnippetList(Ct,me.createNodeArray(Ye),Ie,O):ee=_e.printSnippetList(Ct,me.createNodeArray(Ye),Ie)}return{insertText:ee,filterText:re,isSnippet:M,importAdder:Ee,eraseRange:Pe}}function kZs(s,c,g){if(!s||Ra(c,g).line>Ra(c,s.getEnd()).line)return{modifiers:0};let d=0,h,_,S={pos:g,end:g};if(pi(s.parent)&&(_=xZs(s))){s.parent.modifiers&&(d|=Lw(s.parent.modifiers)&98303,h=s.parent.modifiers.filter(Eo)||[],S.pos=Math.min(...s.parent.modifiers.map(T=>T.getStart(c))));let R=tQ(_);d&R||(d|=R,S.pos=Math.min(S.pos,s.getStart(c))),s.parent.name!==s&&(S.end=s.parent.name.getStart(c))}return{modifiers:d,decorators:h,range:S.posR.getSignaturesOfType(Te,0).length>0);if(Ne.length===1)re=Ne[0];else return}if(R.getSignaturesOfType(re,0).length!==1)return;let Ie=R.typeToTypeNode(re,c,ee,void 0,Z0.getNoopSymbolTrackerWithResolver({program:d,host:h}));if(!Ie||!Z_(Ie))return;let _e;if(_.includeCompletionsWithSnippetText){let Ne=me.createEmptyStatement();_e=me.createBlock([Ne],!0),_Ee(Ne,{kind:0,order:0})}else _e=me.createBlock([],!0);let Ee=Ie.parameters.map(Ne=>me.createParameterDeclaration(void 0,Ne.dotDotDotToken,Ne.name,void 0,void 0,Ne.initializer));return me.createMethodDeclaration(void 0,void 0,O,void 0,void 0,Ee,void 0,_e)}default:return}}function $it(s){let c,g=xo.createWriter(IN(s)),d=zW(s,g),h={...g,write:ee=>_(ee,()=>g.write(ee)),nonEscapingWrite:g.write,writeLiteral:ee=>_(ee,()=>g.writeLiteral(ee)),writeStringLiteral:ee=>_(ee,()=>g.writeStringLiteral(ee)),writeSymbol:(ee,re)=>_(ee,()=>g.writeSymbol(ee,re)),writeParameter:ee=>_(ee,()=>g.writeParameter(ee)),writeComment:ee=>_(ee,()=>g.writeComment(ee)),writeProperty:ee=>_(ee,()=>g.writeProperty(ee))};return{printSnippetList:S,printAndFormatSnippetList:T,printNode:O,printAndFormatNode:M};function _(ee,re){let ge=MW(ee);if(ge!==ee){let Ie=g.getTextPos();re();let _e=g.getTextPos();c=Ft(c||(c=[]),{newText:ge,span:{start:Ie,length:_e-Ie}})}else re()}function S(ee,re,ge){let Ie=R(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function R(ee,re,ge){return c=void 0,h.clear(),d.writeList(ee,re,ge,h),h.getText()}function T(ee,re,ge,Ie){let _e={text:R(ee,re,ge),getLineAndCharacterOfPosition(Ze){return Ra(this,Ze)}},Ee=GWe(Ie,ge),Ne=jt(re,Ze=>{let Pe=xo.assignPositionsToNode(Ze);return _m.formatNodeGivenIndentation(Pe,_e,ge.languageVariant,0,0,{...Ie,options:Ee})}),Te=c?yo(Nn(Ne,c),(Ze,Pe)=>yn(Ze.span,Pe.span)):Ne;return xo.applyChanges(_e.text,Te)}function O(ee,re,ge){let Ie=V(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function V(ee,re,ge){return c=void 0,h.clear(),d.writeNode(ee,re,ge,h),h.getText()}function M(ee,re,ge,Ie){let _e={text:V(ee,re,ge),getLineAndCharacterOfPosition(Pe){return Ra(this,Pe)}},Ee=GWe(Ie,ge),Ne=xo.assignPositionsToNode(re),Te=_m.formatNodeGivenIndentation(Ne,_e,ge.languageVariant,0,0,{...Ie,options:Ee}),Ze=c?yo(Nn(Te,c),(Pe,Ke)=>yn(Pe.span,Ke.span)):Te;return xo.applyChanges(_e.text,Ze)}}function kAn(s){let c=s.fileName?void 0:d2(s.moduleSymbol.name),g=s.isFromPackageJson?!0:void 0;return Bpe(s)?{exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,ambientModuleName:c,fileName:s.fileName,isPackageJsonImport:g}:{exportName:s.exportName,exportMapKey:s.exportMapKey,fileName:s.fileName,ambientModuleName:s.fileName?void 0:d2(s.moduleSymbol.name),isPackageJsonImport:s.isFromPackageJson?!0:void 0}}function ZZs(s,c,g){let d=s.exportName==="default",h=!!s.isPackageJsonImport;return SAn(s)?{kind:32,exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}:{kind:4,exportName:s.exportName,exportMapKey:s.exportMapKey,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}}function LZs(s,c,g,d,h,_,S){let R=c.replacementSpan,T=MW(fpe(h,S,g.moduleSpecifier)),O=g.isDefaultExport?1:g.exportName==="export="?2:0,V=S.includeCompletionsWithSnippetText?"$1":"",M=Z0.getImportKind(h,O,_,!0),ee=c.couldBeTypeOnlyImportSpecifier,re=c.isTopLevelTypeOnly?` ${Vi(156)} `:" ",ge=ee?`${Vi(156)} `:"",Ie=d?";":"";switch(M){case 3:return{replacementSpan:R,insertText:`import${re}${MW(s)}${V} = require(${T})${Ie}`};case 1:return{replacementSpan:R,insertText:`import${re}${MW(s)}${V} from ${T}${Ie}`};case 2:return{replacementSpan:R,insertText:`import${re}* as ${MW(s)} from ${T}${Ie}`};case 0:return{replacementSpan:R,insertText:`import${re}{ ${ge}${MW(s)}${V} } from ${T}${Ie}`}}}function PXt(s,c,g){return/^\d+$/.test(g)?g:fpe(s,c,g)}function VZs(s,c,g){return s===c||!!(s.flags&1048576)&&g.getExportSymbolOfSymbol(s)===c}function MXt(s){if(uOe(s))return d2(s.moduleSymbol.name);if(Bpe(s))return s.moduleSpecifier;if(s?.kind===1)return"ThisProperty/";if(s?.kind===64)return"TypeOnlyAlias/"}function HXt(s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,Pe,Ke,et,Ye,Tt=!1){let at=Zg(),Qe=sLs(d,h),Ct=P1e(S),mt=T.getTypeChecker(),yt=new Map;for(let je=0;jepr.getSourceFile()===h.getSourceFile()));yt.set(it,dt),Gc(c,Gr,gOe,void 0,!0)}return V("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(Zg()-at)),{has:je=>yt.has(je),add:je=>yt.set(je,!0)};function Rt(je,Wt){var _r;let Gt=je.flags;if(h.parent&&yf(h.parent))return!0;if(Qe&&Gs(Qe,nc)&&(je.valueDeclaration===Qe||Nu(Qe.name)&&Qe.name.elements.some(tr=>tr===je.valueDeclaration)))return!1;let it=je.valueDeclaration??((_r=je.declarations)==null?void 0:_r[0]);if(Qe&&it){if(Si(Qe)&&Si(it)){let tr=Qe.parent.parameters;if(it.pos>=Qe.pos&&it.pos=Qe.pos&&it.posOXt(g,S,Te)===h.name);return Ne!==void 0?{type:"literal",literal:Ne}:J(O,(Te,Ze)=>{let Pe=re[Ze],Ke=tst(Te,Hg(R),Pe,ee,T.isJsxIdentifierExpected);return Ke&&Ke.name===h.name&&(h.source==="ClassMemberSnippet/"&&Te.flags&106500||h.source==="ObjectLiteralMethodSnippet/"&&Te.flags&8196||MXt(Pe)===h.source||h.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:Te,location:M,origin:Pe,contextToken:ge,previousToken:Ie,isJsxInitializer:_e,isTypeOnlyLocation:Ee}:void 0})||{type:"none"}}function PZs(s,c,g,d,h,_,S,R,T){let O=s.getTypeChecker(),V=s.getCompilerOptions(),{name:M,source:ee,data:re}=h,{previousToken:ge,contextToken:Ie}=est(d,g);if(zz(g,d,ge))return ast.getStringLiteralCompletionDetails(M,g,d,ge,s,_,T,R);let _e=xAn(s,c,g,d,h,_,R);switch(_e.type){case"request":{let{request:Ee}=_e;switch(Ee.kind){case 1:return A5.getJSDocTagNameCompletionDetails(M);case 2:return A5.getJSDocTagCompletionDetails(M);case 3:return A5.getJSDocParameterNameCompletionDetails(M);case 4:return zt(Ee.keywordCompletions,Ne=>Ne.name===M)?YXt(M,"keyword",5):void 0;default:return pe.assertNever(Ee)}}case"symbol":{let{symbol:Ee,location:Ne,contextToken:Te,origin:Ze,previousToken:Pe}=_e,{codeActions:Ke,sourceDisplay:et}=MZs(M,Ne,Te,Ze,Ee,s,_,V,g,d,Pe,S,R,re,ee,T),Ye=VXt(Ze)?Ze.symbolName:Ee.name;return QXt(Ee,Ye,O,g,Ne,T,Ke,et)}case"literal":{let{literal:Ee}=_e;return YXt(OXt(g,R,Ee),"string",typeof Ee=="string"?8:7)}case"cases":{let Ee=NAn(Ie.parent,g,R,s.getCompilerOptions(),_,s,void 0);if(Ee?.importAdder.hasFixes()){let{entry:Ne,importAdder:Te}=Ee,Ze=xo.ChangeTracker.with({host:_,formatContext:S,preferences:R},Te.writeFixes);return{name:Ne.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Ze,description:TQ([Z.Includes_imports_of_types_referenced_by_0,M])}]}}return{name:M,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return LAn().some(Ee=>Ee.name===M)?YXt(M,"keyword",5):void 0;default:pe.assertNever(_e)}}function YXt(s,c,g){return AOe(s,"",c,[TE(s,g)])}function QXt(s,c,g,d,h,_,S,R){let{displayParts:T,documentation:O,symbolKind:V,tags:M}=g.runWithCancellationToken(_,ee=>g9.getSymbolDisplayPartsDocumentationAndSymbolKind(ee,s,d,h,h,7));return AOe(c,g9.getSymbolModifiers(g,s),V,T,O,M,S,R)}function AOe(s,c,g,d,h,_,S,R){return{name:s,kindModifiers:c,kind:g,displayParts:d,documentation:h,tags:_,codeActions:S,source:R,sourceDisplay:R}}function MZs(s,c,g,d,h,_,S,R,T,O,V,M,ee,re,ge,Ie){if(re?.moduleSpecifier&&V&&QAn(g||V,T).replacementSpan)return{codeActions:void 0,sourceDisplay:[IS(re.moduleSpecifier)]};if(ge==="ClassMemberSnippet/"){let{importAdder:Ke,eraseRange:et}=DAn(S,_,R,ee,s,h,c,O,g,M);if(Ke?.hasFixes()||et)return{sourceDisplay:void 0,codeActions:[{changes:xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},Tt=>{Ke&&Ke.writeFixes(Tt),et&&Tt.deleteRange(T,et)}),description:Ke?.hasFixes()?TQ([Z.Includes_imports_of_types_referenced_by_0,s]):TQ([Z.Update_modifiers_of_0,s])}]}}if(yAn(d)){let Ke=Z0.getPromoteTypeOnlyCompletionAction(T,d.declaration.name,_,S,M,ee);return pe.assertIsDefined(Ke,"Expected to have a code action for promoting type-only alias"),{codeActions:[Ke],sourceDisplay:void 0}}if(ge==="ObjectLiteralMemberWithComma/"&&g){let Ke=xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},et=>et.insertText(T,g.end,","));if(Ke)return{sourceDisplay:void 0,codeActions:[{changes:Ke,description:TQ([Z.Add_missing_comma_for_object_member_completion_0,s])}]}}if(!d||!(uOe(d)||Bpe(d)))return{codeActions:void 0,sourceDisplay:void 0};let _e=d.isFromPackageJson?S.getPackageJsonAutoImportProvider().getTypeChecker():_.getTypeChecker(),{moduleSymbol:Ee}=d,Ne=_e.getMergedSymbol(VC(h.exportSymbol||h,_e)),Te=g?.kind===30&&nI(g.parent),{moduleSpecifier:Ze,codeAction:Pe}=Z0.getImportCompletionAction(Ne,Ee,re?.exportMapKey,T,s,Te,S,_,M,V&&Ir(V)?V.getStart(T):O,ee,Ie);return pe.assert(!re?.moduleSpecifier||Ze===re.moduleSpecifier),{sourceDisplay:[IS(Ze)],codeActions:[Pe]}}function HZs(s,c,g,d,h,_,S){let R=xAn(s,c,g,d,h,_,S);return R.type==="symbol"?R.symbol:void 0}var GAn=(s=>(s[s.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",s[s.Global=1]="Global",s[s.PropertyAccess=2]="PropertyAccess",s[s.MemberLike=3]="MemberLike",s[s.String=4]="String",s[s.None=5]="None",s))(GAn||{});function YZs(s,c,g){return J(c&&(c.isUnion()?c.types:[c]),d=>{let h=d&&d.symbol;return h&&h.flags&424&&!Dbe(h)?XXt(h,s,g):void 0})}function QZs(s,c,g,d){let{parent:h}=s;switch(s.kind){case 80:return SWe(s,d);case 64:switch(h.kind){case 261:return d.getContextualType(h.initializer);case 227:return d.getTypeAtLocation(h.left);case 292:return d.getContextualTypeForJsxAttribute(h);default:return}case 105:return d.getContextualType(h);case 84:let _=Gs(h,Nie);return _?bnt(_,d):void 0;case 19:return Rie(h)&&!TN(h.parent)&&!U3(h.parent)?d.getContextualTypeForJsxAttribute(h.parent):void 0;default:let S=p2e.getArgumentInfoForCompletions(s,c,g,d);return S?d.getContextualTypeForArgumentAtIndex(S.invocation,S.argumentIndex):vWe(s.kind)&&po(h)&&vWe(h.operatorToken.kind)?d.getTypeAtLocation(h.left):d.getContextualType(s,4)||d.getContextualType(s)}}function XXt(s,c,g){let d=g.getAccessibleSymbolChain(s,c,-1,!1);return d?ma(d):s.parent&&(XZs(s.parent)?s:XXt(s.parent,c,g))}function XZs(s){var c;return!!((c=s.declarations)!=null&&c.some(g=>g.kind===308))}function FAn(s,c,g,d,h,_,S,R,T,O){let V=s.getTypeChecker(),M=RAn(g,d),ee=Zg(),re=Jc(g,h);c("getCompletionData: Get current token: "+(Zg()-ee)),ee=Zg();let ge=o9(g,h,re);c("getCompletionData: Is inside comment: "+(Zg()-ee));let Ie=!1,_e=!1,Ee=!1;if(ge){if(RMt(g,h)){if(g.text.charCodeAt(h-1)===64)return{kind:1};{let $r=QB(h,g);if(!/[^*|\s(/)]/.test(g.text.substring($r,h)))return{kind:2}}}let Mt=jZs(re,h);if(Mt){if(Mt.tagName.pos<=h&&h<=Mt.tagName.end)return{kind:1};if(NN(Mt))_e=!0;else{let $r=Zi(Mt);if($r&&(re=Jc(g,h),(!re||!KT(re)&&(re.parent.kind!==349||re.parent.name!==re))&&(Ie=Hn($r))),!Ie&&dS(Mt)&&(af(Mt.name)||Mt.name.pos<=h&&h<=Mt.name.end))return{kind:3,tag:Mt}}}if(!Ie&&!_e){c("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}ee=Zg();let Ne=!Ie&&!_e&&o0(g),Te=est(h,g),Ze=Te.previousToken,Pe=Te.contextToken;c("getCompletionData: Get previous token: "+(Zg()-ee));let Ke=re,et,Ye=!1,Tt=!1,at=!1,Qe=!1,Ct=!1,mt=!1,yt,Rt=Ob(g,h),Lt=0,je=!1,Wt=0,_r;if(Pe){let Mt=QAn(Pe,g);if(Mt.keywordCompletion){if(Mt.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[yZs(Mt.keywordCompletion)],isNewIdentifierLocation:Mt.isNewIdentifierLocation};Lt=EZs(Mt.keywordCompletion)}if(Mt.replacementSpan&&_.includeCompletionsForImportStatements&&_.includeCompletionsWithInsertText&&(Wt|=2,yt=Mt,je=Mt.isNewIdentifierLocation),!Mt.replacementSpan&&Qu(Pe))return c("Returning an empty list because completion was requested in an invalid position."),Lt?wAn(Lt,Ne,Cs().isNewIdentifierLocation):void 0;let $r=Pe.parent;if(Pe.kind===25||Pe.kind===29)switch(Ye=Pe.kind===25,Tt=Pe.kind===29,$r.kind){case 212:et=$r,Ke=et.expression;let ri=_U(et);if(af(ri)||(Ll(Ke)||Eu(Ke))&&Ke.end===Pe.pos&&Ke.getChildCount(g)&&Ei(Ke.getChildren(g)).kind!==22)return;break;case 167:Ke=$r.left;break;case 268:Ke=$r.name;break;case 206:Ke=$r;break;case 237:Ke=$r.getFirstToken(g),pe.assert(Ke.kind===102||Ke.kind===105);break;default:return}else if(!yt){if($r&&$r.kind===212&&(Pe=$r,$r=$r.parent),re.parent===Rt)switch(re.kind){case 32:(re.parent.kind===285||re.parent.kind===287)&&(Rt=re);break;case 44:re.parent.kind===286&&(Rt=re);break}switch($r.kind){case 288:Pe.kind===44&&(Qe=!0,Rt=Pe);break;case 227:if(!YAn($r))break;case 286:case 285:case 287:mt=!0,Pe.kind===30&&(at=!0,Rt=Pe);break;case 295:case 294:(Ze.kind===20||Ze.kind===80&&Ze.parent.kind===292)&&(mt=!0);break;case 292:if($r.initializer===Ze&&Ze.endo5(Mt?R.getPackageJsonAutoImportProvider():s,R));if(Ye||Tt)Ns();else if(at)tr=V.getJsxIntrinsicTagNamesAt(Rt),pe.assertEachIsDefined(tr,"getJsxIntrinsicTagNames() should all be defined"),Ic(),it=1,Lt=0;else if(Qe){let Mt=Pe.parent.parent.openingElement.tagName,$r=V.getSymbolAtLocation(Mt);$r&&(tr=[$r]),it=1,Lt=0}else if(!Ic())return Lt?wAn(Lt,Ne,je):void 0;c("getCompletionData: Semantic work: "+(Zg()-Gt));let qt=Ze&&QZs(Ze,h,g,V),Tr=!Gs(Ze,_A)&&!mt?Xt(qt&&(qt.isUnion()?qt.types:[qt]),Mt=>Mt.isLiteral()&&!(Mt.flags&1024)?Mt.value:void 0):[],mn=Ze&&qt&&YZs(Ze,qt,V);return{kind:0,symbols:tr,completionKind:it,isInSnippetScope:Ee,propertyAccessToConvert:et,isNewIdentifierLocation:je,location:Rt,keywordFilters:Lt,literals:Tr,symbolToOriginInfoMap:Gr,recommendedCompletion:mn,previousToken:Ze,contextToken:Pe,isJsxInitializer:Ct,insideJsDocTagTypeExpression:Ie,symbolToSortTextMap:dt,isTypeOnlyLocation:ot,isJsxIdentifierExpected:mt,isRightOfOpenTag:at,isRightOfDotOrQuestionDot:Ye||Tt,importStatementCompletion:yt,hasUnresolvedAutoImports:Dt,flags:Wt,defaultCommitCharacters:_r};function jn(Mt){switch(Mt.kind){case 342:case 349:case 343:case 345:case 347:case 350:case 351:return!0;case 346:return!!Mt.constraint;default:return!1}}function Zi(Mt){if(jn(Mt)){let $r=MB(Mt)?Mt.constraint:Mt.typeExpression;return $r&&$r.kind===310?$r:void 0}if(Lz(Mt)||S9e(Mt))return Mt.class}function Ns(){it=2;let Mt=Fy(Ke),$r=Mt&&!Ke.isTypeOf||xw(Ke.parent)||D1e(Pe,g,V),ri=tWe(Ke);if(mC(Ke)||Mt||jo(Ke)){let oo=Lh(Ke.parent);oo&&(je=!0,_r=[]);let Bs=V.getSymbolAtLocation(Ke);if(Bs&&(Bs=VC(Bs,V),Bs.flags&1920)){let Ys=V.getExportsOfModule(Bs);pe.assertEachIsDefined(Ys,"getExportsOfModule() should all be defined");let tn=ci=>V.isValidPropertyAccess(Mt?Ke:Ke.parent,ci.name),Bn=ci=>UXt(ci,V),Mn=oo?ci=>{var es;return!!(ci.flags&1920)&&!((es=ci.declarations)!=null&&es.every(Oi=>Oi.parent===Ke.parent))}:ri?ci=>Bn(ci)||tn(ci):$r||Ie?Bn:tn;for(let ci of Ys)Mn(ci)&&tr.push(ci);if(!$r&&!Ie&&Bs.declarations&&Bs.declarations.some(ci=>ci.kind!==308&&ci.kind!==268&&ci.kind!==267)){let ci=V.getTypeOfSymbolAtLocation(Bs,Ke).getNonOptionalType(),es=!1;if(ci.isNullableType()){let Oi=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Oi||Tt)&&(ci=ci.getNonNullableType(),Oi&&(es=!0))}An(ci,!!(Ke.flags&65536),es)}return}}if(!$r||$Y(Ke)){V.tryGetThisTypeAt(Ke,!1);let oo=V.getTypeAtLocation(Ke).getNonOptionalType();if($r)An(oo.getNonNullableType(),!1,!1);else{let Bs=!1;if(oo.isNullableType()){let Ys=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Ys||Tt)&&(oo=oo.getNonNullableType(),Ys&&(Bs=!0))}An(oo,!!(Ke.flags&65536),Bs)}}}function An(Mt,$r,ri){Mt.getStringIndexType()&&(je=!0,_r=[]),Tt&&zt(Mt.getCallSignatures())&&(je=!0,_r??(_r=FN));let oo=Ke.kind===206?Ke:Ke.parent;if(M)for(let Bs of Mt.getApparentProperties())V.isValidPropertyAccessForCompletions(oo,Mt,Bs)&&si(Bs,!1,ri);else tr.push(...Le(sst(Mt,V),Bs=>V.isValidPropertyAccessForCompletions(oo,Mt,Bs)));if($r&&_.includeCompletionsWithInsertText){let Bs=V.getPromisedTypeOfPromise(Mt);if(Bs)for(let Ys of Bs.getApparentProperties())V.isValidPropertyAccessForCompletions(oo,Bs,Ys)&&si(Ys,!0,ri)}}function si(Mt,$r,ri){var oo;let Bs=J(Mt.declarations,Mn=>Gs(fl(Mn),Un));if(Bs){let Mn=ks(Bs.expression),ci=Mn&&V.getSymbolAtLocation(Mn),es=ci&&XXt(ci,Pe,V),Oi=es&&xg(es);if(Oi&&Wy(pr,Oi)){let Vn=tr.length;tr.push(es),dt[xg(es)]=g0.GlobalsOrKeywords;let Ui=es.parent;if(!Ui||!XD(Ui)||V.tryGetMemberInModuleExportsAndProperties(es.name,Ui)!==es)Gr[Vn]={kind:Bn(2)};else{let gs=Xr(d2(Ui.name))?(oo=KJ(Ui))==null?void 0:oo.fileName:void 0,{moduleSpecifier:fs}=(ur||(ur=Z0.createImportSpecifierResolver(g,s,R,_))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:gs,isFromPackageJson:!1,moduleSymbol:Ui,symbol:es,targetFlags:VC(es,V).flags}],h,e9(Rt))||{};if(fs){let bi={kind:Bn(6),moduleSymbol:Ui,isDefaultExport:!1,symbolName:es.name,exportName:es.name,fileName:gs,moduleSpecifier:fs};Gr[Vn]=bi}}}else if(_.includeCompletionsWithInsertText){if(Oi&&pr.has(Oi))return;tn(Mt),Ys(Mt),tr.push(Mt)}}else tn(Mt),Ys(Mt),tr.push(Mt);function Ys(Mn){rLs(Mn)&&(dt[xg(Mn)]=g0.LocalDeclarationPriority)}function tn(Mn){_.includeCompletionsWithInsertText&&($r&&Wy(pr,xg(Mn))?Gr[tr.length]={kind:Bn(8)}:ri&&(Gr[tr.length]={kind:16}))}function Bn(Mn){return ri?Mn|16:Mn}}function ks(Mt){return Ir(Mt)?Mt:jo(Mt)?ks(Mt.expression):void 0}function Ic(){return(Wr()||Wn()||ya()||pt()||on()||st()||ou()||nr()||Zn()||(Fl(),1))===1}function ou(){return Kr(Pe)?(it=5,je=!0,Lt=4,1):0}function Zn(){let Mt=hr(Pe),$r=Mt&&V.getContextualType(Mt.attributes);if(!$r)return 0;let ri=Mt&&V.getContextualType(Mt.attributes,4);return tr=Nn(tr,In(ist($r,ri,Mt.attributes,V),Mt.attributes.properties)),wt(),it=3,je=!1,1}function ya(){return yt?(je=!0,Pi(),1):0}function Fl(){Lt=Dn(Pe)?5:1,it=1,{isNewIdentifierLocation:je,defaultCommitCharacters:_r}=Cs(),Ze!==Pe&&pe.assert(!!Ze,"Expected 'contextToken' to be defined when different from 'previousToken'.");let Mt=Ze!==Pe?Ze.getStart():h,$r=$c(Pe,Mt,g)||g;Ee=Oo($r);let ri=(ot?0:111551)|788968|1920|2097152,oo=Ze&&!e9(Ze);tr=Nn(tr,V.getSymbolsInScope($r,ri)),pe.assertEachIsDefined(tr,"getSymbolsInScope() should all be defined");for(let Bs=0;Bstn.getSourceFile()===g)&&(dt[xg(Ys)]=g0.GlobalsOrKeywords),oo&&!(Ys.flags&111551)){let tn=Ys.declarations&&de(Ys.declarations,cN);if(tn){let Bn={kind:64,declaration:tn};Gr[Bs]=Bn}}}if(_.includeCompletionsWithInsertText&&$r.kind!==308){let Bs=V.tryGetThisTypeAt($r,!1,xa($r.parent)?$r:void 0);if(Bs&&!tLs(Bs,g,V))for(let Ys of sst(Bs,V))Gr[tr.length]={kind:1},tr.push(Ys),dt[xg(Ys)]=g0.SuggestedClassMembers}Pi(),ot&&(Lt=Pe&&vd(Pe.parent)?6:7)}function ba(){var Mt;return yt?!0:_.includeCompletionsForModuleExports?g.externalModuleIndicator||g.commonJsModuleIndicator||snt(s.getCompilerOptions())?!0:((Mt=s.getSymlinkCache)==null?void 0:Mt.call(s).hasAnySymlinks())||!!s.getCompilerOptions().paths||FMt(s):!1}function Oo(Mt){switch(Mt.kind){case 308:case 229:case 295:case 242:return!0;default:return Lc(Mt)}}function hc(){return Ie||_e||!!yt&&lN(Rt.parent)||!yr(Pe)&&(D1e(Pe,g,V)||xw(Rt)||hn(Pe))}function yr(Mt){return Mt&&(Mt.kind===114&&(Mt.parent.kind===187||vN(Mt.parent))||Mt.kind===131&&Mt.parent.kind===183)}function hn(Mt){if(Mt){let $r=Mt.parent.kind;switch(Mt.kind){case 59:return $r===173||$r===172||$r===170||$r===261||mW($r);case 64:return $r===266||$r===169;case 130:return $r===235;case 30:return $r===184||$r===217;case 96:return $r===169;case 152:return $r===239}}return!1}function Pi(){var Mt,$r;if(!ba()||(pe.assert(!S?.data,"Should not run 'collectAutoImports' when faster path is available via `data`"),S&&!S.source))return;Wt|=1;let oo=Ze===Pe&&yt?"":Ze&&Ir(Ze)?Ze.text.toLowerCase():"",Bs=(Mt=R.getModuleSpecifierCache)==null?void 0:Mt.call(R),Ys=X1e(g,R,s,_,O),tn=($r=R.getPackageJsonAutoImportProvider)==null?void 0:$r.call(R),Bn=S?void 0:gse(g,_,R);EAn("collectAutoImports",R,ur||(ur=Z0.createImportSpecifierResolver(g,s,R,_)),s,h,_,!!yt,e9(Rt),ci=>{Ys.search(g.path,at,(es,Oi)=>{if(!qh(es,Hg(R.getCompilationSettings()))||!S&&qY(es)||!ot&&!yt&&!(Oi&111551)||ot&&!(Oi&790504))return!1;let Vn=es.charCodeAt(0);return at&&(Vn<65||Vn>90)?!1:S?!0:jAn(es,oo)},(es,Oi,Vn,Ui)=>{if(S&&!zt(es,dg=>S.source===d2(dg.moduleSymbol.name))||(es=Le(es,Mn),!es.length))return;let gs=ci.tryResolve(es,Vn)||{};if(gs==="failed")return;let fs=es[0],bi;gs!=="skipped"&&({exportInfo:fs=es[0],moduleSpecifier:bi}=gs);let mc=fs.exportKind===1,Ag=mc&&tz(pe.checkDefined(fs.symbol))||pe.checkDefined(fs.symbol);co(Ag,{kind:bi?32:4,moduleSpecifier:bi,symbolName:Oi,exportMapKey:Ui,exportName:fs.exportKind===2?"export=":pe.checkDefined(fs.symbol).name,fileName:fs.moduleFileName,isDefaultExport:mc,moduleSymbol:fs.moduleSymbol,isFromPackageJson:fs.isFromPackageJson})}),Dt=ci.skippedAny(),Wt|=ci.resolvedAny()?8:0,Wt|=ci.resolvedBeyondLimit()?16:0});function Mn(ci){return Fnt(ci.isFromPackageJson?tn:s,g,Gs(ci.moduleSymbol.valueDeclaration,cl),ci.moduleSymbol,_,Bn,ir(ci.isFromPackageJson),Bs)}}function co(Mt,$r){let ri=xg(Mt);dt[ri]!==g0.GlobalsOrKeywords&&(Gr[tr.length]=$r,dt[ri]=yt?g0.LocationPriority:g0.AutoImportSuggestions,tr.push(Mt))}function pa(Mt,$r){Bo(Rt)||Mt.forEach(ri=>{if(!Pa(ri))return;let oo=tst(ri,Hg(d),void 0,0,!1);if(!oo)return;let{name:Bs}=oo,Ys=GZs(ri,Bs,$r,s,R,d,_,T);if(!Ys)return;let tn={kind:128,...Ys};Wt|=32,Gr[tr.length]=tn,tr.push(ri)})}function Pa(Mt){return!!(Mt.flags&8196)}function $c(Mt,$r,ri){let oo=Mt;for(;oo&&!Yrt(oo,$r,ri);)oo=oo.parent;return oo}function Qu(Mt){let $r=Zg(),ri=Tu(Mt)||Ni(Mt)||bn(Mt)||Rg(Mt)||AQ(Mt);return c("getCompletionsAtPosition: isCompletionListBlocker: "+(Zg()-$r)),ri}function Rg(Mt){if(Mt.kind===12)return!0;if(Mt.kind===32&&Mt.parent){if(Rt===Mt.parent&&(Rt.kind===287||Rt.kind===286))return!1;if(Mt.parent.kind===287)return Rt.parent.kind!==287;if(Mt.parent.kind===288||Mt.parent.kind===286)return!!Mt.parent.parent&&Mt.parent.parent.kind===285}return!1}function Cs(){if(Pe){let Mt=Pe.parent.kind,$r=nst(Pe);switch($r){case 28:switch(Mt){case 214:case 215:{let ri=Pe.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:jit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:FN,isNewIdentifierLocation:!0}}case 227:return{defaultCommitCharacters:jit,isNewIdentifierLocation:!0};case 177:case 185:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 210:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}case 21:switch(Mt){case 214:case 215:{let ri=Pe.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:jit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:FN,isNewIdentifierLocation:!0}}case 218:return{defaultCommitCharacters:jit,isNewIdentifierLocation:!0};case 177:case 197:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}case 23:switch(Mt){case 210:case 182:case 190:case 168:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}case 144:case 145:case 102:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 25:switch(Mt){case 268:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}case 19:switch(Mt){case 264:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}case 64:switch(Mt){case 261:case 227:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}case 16:return{defaultCommitCharacters:FN,isNewIdentifierLocation:Mt===229};case 17:return{defaultCommitCharacters:FN,isNewIdentifierLocation:Mt===240};case 134:return Mt===175||Mt===305?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:FN,isNewIdentifierLocation:!1};case 42:return Mt===175?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}if(dOe($r))return{defaultCommitCharacters:[],isNewIdentifierLocation:!0}}return{defaultCommitCharacters:FN,isNewIdentifierLocation:!1}}function Tu(Mt){return(EEe(Mt)||Vre(Mt))&&(R1e(Mt,h)||h===Mt.end&&(!!Mt.isUnterminated||EEe(Mt)))}function Wr(){let Mt=$Zs(Pe);if(!Mt)return 0;let ri=(_f(Mt.parent)?Mt.parent:void 0)||Mt,oo=HAn(ri,V);if(!oo)return 0;let Bs=V.getTypeFromTypeNode(ri),Ys=sst(oo,V),tn=sst(Bs,V),Bn=new Set;return tn.forEach(Mn=>Bn.add(Mn.escapedName)),tr=Nn(tr,Le(Ys,Mn=>!Bn.has(Mn.escapedName))),it=0,je=!0,1}function Wn(){if(Pe?.kind===26)return 0;let Mt=tr.length,$r=JZs(Pe,h,g);if(!$r)return 0;it=0;let ri,oo;if($r.kind===211){let Bs=nLs($r,V);if(Bs===void 0)return $r.flags&67108864?2:0;let Ys=V.getContextualType($r,4),tn=(Ys||Bs).getStringIndexType(),Bn=(Ys||Bs).getNumberIndexType();if(je=!!tn||!!Bn,ri=ist(Bs,Ys,$r,V),oo=$r.properties,ri.length===0&&!Bn)return 0}else{pe.assert($r.kind===207),je=!1;let Bs=Fw($r.parent);if(!D7(Bs))return pe.fail("Root declaration is not variable-like.");let Ys=XT(Bs)||!!Zh(Bs)||Bs.parent.parent.kind===251;if(!Ys&&Bs.kind===170&&(un(Bs.parent)?Ys=!!V.getContextualType(Bs.parent):(Bs.parent.kind===175||Bs.parent.kind===179)&&(Ys=un(Bs.parent.parent)&&!!V.getContextualType(Bs.parent.parent))),Ys){let tn=V.getTypeAtLocation($r);if(!tn)return 2;ri=V.getPropertiesOfType(tn).filter(Bn=>V.isPropertyAccessible($r,!1,!1,tn,Bn)),oo=$r.elements}}if(ri&&ri.length>0){let Bs=Ht(ri,pe.checkDefined(oo));tr=Nn(tr,Bs),wt(),$r.kind===211&&_.includeCompletionsWithObjectLiteralMethodSnippets&&_.includeCompletionsWithInsertText&&(fr(Mt),pa(Bs,$r))}return 1}function pt(){if(!Pe)return 0;let Mt=Pe.kind===19||Pe.kind===28?Gs(Pe.parent,Kne):IWe(Pe)?Gs(Pe.parent.parent,Kne):void 0;if(!Mt)return 0;IWe(Pe)||(Lt=8);let{moduleSpecifier:$r}=Mt.kind===276?Mt.parent.parent:Mt.parent;if(!$r)return je=!0,Mt.kind===276?2:0;let ri=V.getSymbolAtLocation($r);if(!ri)return je=!0,2;it=3,je=!1;let oo=V.getExportsAndPropertiesOfModule(ri),Bs=new Set(Mt.elements.filter(tn=>!Hn(tn)).map(tn=>BF(tn.propertyName||tn.name))),Ys=oo.filter(tn=>tn.escapedName!=="default"&&!Bs.has(tn.escapedName));return tr=Nn(tr,Ys),Ys.length||(Lt=0),1}function on(){if(Pe===void 0)return 0;let Mt=Pe.kind===19||Pe.kind===28?Gs(Pe.parent,xU):Pe.kind===59?Gs(Pe.parent.parent,xU):void 0;if(Mt===void 0)return 0;let $r=new Set(Mt.elements.map(ude));return tr=Le(V.getTypeAtLocation(Mt).getApparentProperties(),ri=>!$r.has(ri.escapedName)),1}function st(){var Mt;let $r=Pe&&(Pe.kind===19||Pe.kind===28)?Gs(Pe.parent,Ev):void 0;if(!$r)return 0;let ri=ji($r,Qp(cl,Lh));return it=5,je=!1,(Mt=ri.locals)==null||Mt.forEach((oo,Bs)=>{var Ys,tn;tr.push(oo),(tn=(Ys=ri.symbol)==null?void 0:Ys.exports)!=null&&tn.has(Bs)&&(dt[xg(oo)]=g0.OptionalMember)}),1}function nr(){let Mt=qZs(g,Pe,Rt,h);if(!Mt)return 0;if(it=3,je=!0,Lt=Pe.kind===42?0:xa(Mt)?2:3,!xa(Mt))return 1;let $r=Pe.kind===27?Pe.parent.parent:Pe.parent,ri=MI($r)?l_($r):0;if(Pe.kind===80&&!Hn(Pe))switch(Pe.getText()){case"private":ri=ri|2;break;case"static":ri=ri|256;break;case"override":ri=ri|16;break}if(dl($r)&&(ri|=256),!(ri&2)){let oo=xa(Mt)&&ri&16?j_(kB(Mt)):Y7(Mt),Bs=jt(oo,Ys=>{let tn=V.getTypeAtLocation(Ys);return ri&256?tn?.symbol&&V.getPropertiesOfType(V.getTypeOfSymbolAtLocation(tn.symbol,Mt)):tn&&V.getPropertiesOfType(tn)});tr=Nn(tr,Ue(Bs,Mt.members,ri)),F(tr,(Ys,tn)=>{let Bn=Ys?.valueDeclaration;if(Bn&&MI(Bn)&&Bn.name&&Un(Bn.name)){let Mn={kind:512,symbolName:V.symbolToString(Ys)};Gr[tn]=Mn}})}return 1}function Zr(Mt){return!!Mt.parent&&Si(Mt.parent)&&Tc(Mt.parent.parent)&&(TY(Mt.kind)||KT(Mt))}function Kr(Mt){if(Mt){let $r=Mt.parent;switch(Mt.kind){case 21:case 28:return Tc(Mt.parent)?Mt.parent:void 0;default:if(Zr(Mt))return $r.parent}}}function Dn(Mt){if(Mt){let $r,ri=ji(Mt.parent,oo=>xa(oo)?"quit":Gd(oo)&&$r===oo.body?!0:($r=oo,!1));return ri&&ri}}function hr(Mt){if(Mt){let $r=Mt.parent;switch(Mt.kind){case 32:case 31:case 44:case 80:case 212:case 293:case 292:case 294:if($r&&($r.kind===286||$r.kind===287)){if(Mt.kind===32){let ri=Vm(Mt.pos,g,void 0);if(!$r.typeArguments||ri&&ri.kind===44)break}return $r}else if($r.kind===292)return $r.parent.parent;break;case 11:if($r&&($r.kind===292||$r.kind===294))return $r.parent.parent;break;case 20:if($r&&$r.kind===295&&$r.parent&&$r.parent.kind===292)return $r.parent.parent.parent;if($r&&$r.kind===294)return $r.parent.parent;break}}}function En(Mt,$r){return g.getLineEndOfPosition(Mt.getEnd())<$r}function Ni(Mt){let $r=Mt.parent,ri=$r.kind;switch(Mt.kind){case 28:return ri===261||ds(Mt)||ri===244||ri===267||nn(ri)||ri===265||ri===208||ri===266||xa($r)&&!!$r.typeParameters&&$r.typeParameters.end>=Mt.pos;case 25:return ri===208;case 59:return ri===209;case 23:return ri===208;case 21:return ri===300||nn(ri);case 19:return ri===267;case 30:return ri===264||ri===232||ri===265||ri===266||mW(ri);case 126:return ri===173&&!xa($r.parent);case 26:return ri===170||!!$r.parent&&$r.parent.kind===208;case 125:case 123:case 124:return ri===170&&!Tc($r.parent);case 130:return ri===277||ri===282||ri===275;case 139:case 153:return!ost(Mt);case 80:{if((ri===277||ri===282)&&Mt===$r.name&&Mt.text==="type"||ji(Mt.parent,nc)&&En(Mt,h))return!1;break}case 86:case 94:case 120:case 100:case 115:case 102:case 121:case 87:case 140:return!0;case 156:return ri!==277;case 42:return Eu(Mt.parent)&&!gu(Mt.parent)}if(dOe(nst(Mt))&&ost(Mt)||Zr(Mt)&&(!Ir(Mt)||TY(nst(Mt))||Hn(Mt)))return!1;switch(nst(Mt)){case 128:case 86:case 87:case 138:case 94:case 100:case 120:case 121:case 123:case 124:case 125:case 126:case 115:return!0;case 134:return pi(Mt.parent)}if(ji(Mt.parent,xa)&&Mt===Ze&&Gi(Mt,h))return!1;let Bs=KL(Mt.parent,173);if(Bs&&Mt!==Ze&&xa(Ze.parent.parent)&&h<=Ze.end){if(Gi(Mt,Ze.end))return!1;if(Mt.kind!==64&&(r1e(Bs)||mf(Bs)))return!0}return KT(Mt)&&!u0(Mt.parent)&&!RN(Mt.parent)&&!((xa(Mt.parent)||p_(Mt.parent)||Ds(Mt.parent))&&(Mt!==Ze||h>Ze.end))}function Gi(Mt,$r){return Mt.kind!==64&&(Mt.kind===27||!vE(Mt.end,$r,g))}function nn(Mt){return mW(Mt)&&Mt!==177}function bn(Mt){if(Mt.kind===9){let $r=Mt.getFullText();return $r.charAt($r.length-1)==="."}return!1}function ds(Mt){return Mt.parent.kind===262&&!D1e(Mt,g,V)}function Ht(Mt,$r){if($r.length===0)return Mt;let ri=new Set,oo=new Set;for(let Ys of $r){if(Ys.kind!==304&&Ys.kind!==305&&Ys.kind!==209&&Ys.kind!==175&&Ys.kind!==178&&Ys.kind!==179&&Ys.kind!==306||Hn(Ys))continue;let tn;if(Hx(Ys))cn(Ys,ri);else if(mg(Ys)&&Ys.propertyName)Ys.propertyName.kind===80&&(tn=Ys.propertyName.escapedText);else{let Bn=fl(Ys);tn=Bn&&Gw(Bn)?AU(Bn):void 0}tn!==void 0&&oo.add(tn)}let Bs=Mt.filter(Ys=>!oo.has(Ys.escapedName));return xe(ri,Bs),Bs}function cn(Mt,$r){let ri=Mt.expression,oo=V.getSymbolAtLocation(ri),Bs=oo&&V.getTypeOfSymbolAtLocation(oo,ri),Ys=Bs&&Bs.properties;Ys&&Ys.forEach(tn=>{$r.add(tn.name)})}function wt(){tr.forEach(Mt=>{if(Mt.flags&16777216){let $r=xg(Mt);dt[$r]=dt[$r]??g0.OptionalMember}})}function xe(Mt,$r){if(Mt.size!==0)for(let ri of $r)Mt.has(ri.name)&&(dt[xg(ri)]=g0.MemberDeclaredBySpreadAssignment)}function fr(Mt){for(let $r=Mt;$r!oo.has(Bs.escapedName)&&!!Bs.declarations&&!(p2(Bs)&2)&&!(Bs.valueDeclaration&&hC(Bs.valueDeclaration)))}function In(Mt,$r){let ri=new Set,oo=new Set;for(let Ys of $r)Hn(Ys)||(Ys.kind===292?ri.add(Ez(Ys.name)):Zz(Ys)&&cn(Ys,oo));let Bs=Mt.filter(Ys=>!ri.has(Ys.escapedName));return xe(oo,Bs),Bs}function Hn(Mt){return Mt.getStart(g)<=h&&h<=Mt.getEnd()}}function JZs(s,c,g){var d;if(s){let{parent:h}=s;switch(s.kind){case 19:case 28:if(ag(h)||$m(h))return h;break;case 42:return gu(h)?Gs(h.parent,ag):void 0;case 134:return Gs(h.parent,ag);case 80:if(s.text==="async"&&u0(s.parent))return s.parent.parent;{if(ag(s.parent.parent)&&(Hx(s.parent)||u0(s.parent)&&Ra(g,s.getEnd()).line!==Ra(g,c).line))return s.parent.parent;let S=ji(h,Cm);if(S?.getLastToken(g)===s&&ag(S.parent))return S.parent}break;default:if((d=h.parent)!=null&&d.parent&&(gu(h.parent)||wg(h.parent)||kg(h.parent))&&ag(h.parent.parent))return h.parent.parent;if(Hx(h)&&ag(h.parent))return h.parent;let _=ji(h,Cm);if(s.kind!==59&&_?.getLastToken(g)===s&&ag(_.parent))return _.parent}}}function est(s,c){let g=Vm(s,c);return g&&s<=g.end&&(Bw(g)||T0(g.kind))?{contextToken:Vm(g.getFullStart(),c,void 0),previousToken:g}:{contextToken:g,previousToken:g}}function ZAn(s,c,g,d){let h=c.isPackageJsonImport?d.getPackageJsonAutoImportProvider():g,_=h.getTypeChecker(),S=c.ambientModuleName?_.tryFindAmbientModule(c.ambientModuleName):c.fileName?_.getMergedSymbol(pe.checkDefined(h.getSourceFile(c.fileName)).symbol):void 0;if(!S)return;let R=c.exportName==="export="?_.resolveExternalModuleSymbol(S):_.tryGetMemberInModuleExportsAndProperties(c.exportName,S);return R?(R=c.exportName==="default"&&tz(R)||R,{symbol:R,origin:ZZs(c,s,S)}):void 0}function tst(s,c,g,d,h){if(hZs(g))return;let _=dZs(g)?g.symbolName:s.name;if(_===void 0||s.flags&1536&&Cne(_.charCodeAt(0))||J7(s))return;let S={name:_,needsConvertPropertyAccess:!1};if(qh(_,c,h?1:0)||s.valueDeclaration&&hC(s.valueDeclaration))return S;if(s.flags&2097152)return{name:_,needsConvertPropertyAccess:!0};switch(d){case 3:return VXt(g)?{name:g.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(_),needsConvertPropertyAccess:!1};case 2:case 1:return _.charCodeAt(0)===32?void 0:{name:_,needsConvertPropertyAccess:!0};case 5:case 4:return S;default:pe.assertNever(d)}}var rst=[],LAn=LA(()=>{let s=[];for(let c=83;c<=166;c++)s.push({name:Vi(c),kind:"keyword",kindModifiers:"",sortText:g0.GlobalsOrKeywords});return s});function VAn(s,c){if(!c)return WAn(s);let g=s+8+1;return rst[g]||(rst[g]=WAn(s).filter(d=>!UZs(Ta(d.name))))}function WAn(s){return rst[s]||(rst[s]=LAn().filter(c=>{let g=Ta(c.name);switch(s){case 0:return!1;case 1:return PAn(g)||g===138||g===144||g===156||g===145||g===128||lpe(g)&&g!==157;case 5:return PAn(g);case 2:return dOe(g);case 3:return OAn(g);case 4:return TY(g);case 6:return lpe(g)||g===87;case 7:return lpe(g);case 8:return g===156;default:return pe.assertNever(s)}}))}function UZs(s){switch(s){case 128:case 133:case 163:case 136:case 138:case 94:case 162:case 119:case 140:case 120:case 142:case 143:case 144:case 145:case 146:case 150:case 151:case 164:case 123:case 124:case 125:case 148:case 154:case 155:case 156:case 158:case 159:return!0;default:return!1}}function OAn(s){return s===148}function dOe(s){switch(s){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return Wre(s)}}function PAn(s){return s===134||s===135||s===160||s===130||s===152||s===156||!CAe(s)&&!dOe(s)}function nst(s){return Ir(s)?lv(s)??0:s.kind}function KZs(s,c){let g=[];if(s){let d=s.getSourceFile(),h=s.parent,_=d.getLineAndCharacterOfPosition(s.end).line,S=d.getLineAndCharacterOfPosition(c).line;(Yf(h)||Vh(h)&&h.moduleSpecifier)&&s===h.moduleSpecifier&&_===S&&g.push({name:Vi(132),kind:"keyword",kindModifiers:"",sortText:g0.GlobalsOrKeywords})}return g}function jZs(s,c){return ji(s,g=>C3(g)&&nse(g,c)?!0:aR(g)?"quit":!1)}function ist(s,c,g,d){let h=c&&c!==s,_=d.getUnionType(Le(s.flags&1048576?s.types:[s],O=>!d.getPromisedTypeOfPromise(O))),S=h&&!(c.flags&3)?d.getUnionType([_,c]):_,R=zZs(S,g,d);return S.isClass()&&MAn(R)?[]:h?Le(R,T):R;function T(O){return B(O.declarations)?zt(O.declarations,V=>V.parent!==g):!0}}function zZs(s,c,g){return s.isUnion()?g.getAllPossiblePropertiesOfTypes(Le(s.types,d=>!(d.flags&402784252||g.isArrayLikeType(d)||g.isTypeInvalidDueToUnionDiscriminant(d,c)||g.typeHasCallOrConstructSignatures(d)||d.isClass()&&MAn(d.getApparentProperties())))):s.getApparentProperties()}function MAn(s){return zt(s,c=>!!(p2(c)&6))}function sst(s,c){return s.isUnion()?pe.checkEachDefined(c.getAllPossiblePropertiesOfTypes(s.types),"getAllPossiblePropertiesOfTypes() should all be defined"):pe.checkEachDefined(s.getApparentProperties(),"getApparentProperties() should all be defined")}function qZs(s,c,g,d){switch(g.kind){case 353:return Gs(g.parent,rQ);case 1:let h=Gs(li(Ma(g.parent,cl).statements),rQ);if(h&&!ep(h,20,s))return h;break;case 81:if(Gs(g.parent,pi))return ji(g,xa);break;case 80:{if(lv(g)||pi(g.parent)&&g.parent.initializer===g)return;if(ost(g))return ji(g,rQ)}}if(c){if(g.kind===137||Ir(c)&&pi(c.parent)&&xa(g))return ji(c,xa);switch(c.kind){case 64:return;case 27:case 20:return ost(g)&&g.parent.name===g?g.parent.parent:Gs(g,rQ);case 19:case 28:return Gs(c.parent,rQ);default:if(rQ(g)){if(Ra(s,c.getEnd()).line!==Ra(s,d).line)return g;let h=xa(c.parent.parent)?dOe:OAn;return h(c.kind)||c.kind===42||Ir(c)&&h(lv(c)??0)?c.parent.parent:void 0}return}}}function $Zs(s){if(!s)return;let c=s.parent;switch(s.kind){case 19:if(bh(c))return c;break;case 27:case 28:case 80:if(c.kind===172&&bh(c.parent))return c.parent;break}}function HAn(s,c){if(!s)return;if(uc(s)&&_7(s.parent))return c.getTypeArgumentConstraint(s);let g=HAn(s.parent,c);if(g)switch(s.kind){case 172:return c.getTypeOfPropertyOfContextualType(g,s.symbol.escapedName);case 194:case 188:case 193:return g}}function ost(s){return s.parent&&NY(s.parent)&&rQ(s.parent.parent)}function eLs(s,c,g,d){switch(c){case".":case"@":return!0;case'"':case"'":case"`":return!!g&&jMt(g)&&d===g.getStart(s)+1;case"#":return!!g&&p(g)&&!!_C(g);case"<":return!!g&&g.kind===30&&(!po(g.parent)||YAn(g.parent));case"/":return!!g&&(_A(g)?!!P7(g):g.kind===44&&pQ(g.parent));case" ":return!!g&&an(g)&&g.parent.kind===308;default:return pe.assertNever(c)}}function YAn({left:s}){return af(s)}function tLs(s,c,g){let d=g.resolveName("self",void 0,111551,!1);if(d&&g.getTypeOfSymbolAtLocation(d,c)===s)return!0;let h=g.resolveName("global",void 0,111551,!1);if(h&&g.getTypeOfSymbolAtLocation(h,c)===s)return!0;let _=g.resolveName("globalThis",void 0,111551,!1);return!!(_&&g.getTypeOfSymbolAtLocation(_,c)===s)}function rLs(s){return!!(s.valueDeclaration&&l_(s.valueDeclaration)&256&&xa(s.valueDeclaration.parent))}function nLs(s,c){let g=c.getContextualType(s);if(g)return g;let d=Iv(s.parent);if(po(d)&&d.operatorToken.kind===64&&s===d.left)return c.getTypeAtLocation(d);if(un(d))return c.getContextualType(d)}function QAn(s,c){var g,d,h;let _,S=!1,R=T();return{isKeywordOnlyCompletion:S,keywordCompletion:_,isNewIdentifierLocation:!!(R||_===156),isTopLevelTypeOnly:!!((d=(g=Gs(R,Yf))==null?void 0:g.importClause)!=null&&d.isTypeOnly)||!!((h=Gs(R,Zm))!=null&&h.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!R&&JAn(R,s),replacementSpan:iLs(R)};function T(){let O=s.parent;if(Zm(O)){let V=O.getLastToken(c);if(Ir(s)&&V!==s){_=161,S=!0;return}return _=s.kind===156?void 0:156,JXt(O.moduleReference)?O:void 0}if(JAn(O,s)&&UAn(O.parent))return O;if(wN(O)||Mx(O)){if(!O.parent.isTypeOnly&&(s.kind===19||s.kind===102||s.kind===28)&&(_=156),UAn(O))if(s.kind===20||s.kind===80)S=!0,_=161;else return O.parent.parent;return}if(Vh(O)&&s.kind===42||Ev(O)&&s.kind===20){S=!0,_=161;return}if(an(s)&&cl(O))return _=156,s;if(an(s)&&Yf(O))return _=156,JXt(O.moduleSpecifier)?O:void 0}}function iLs(s){var c;if(!s)return;let g=ji(s,Qp(Yf,Zm,NN))??s,d=g.getSourceFile();if(x3(g,d))return Yy(g,d);pe.assert(g.kind!==102&&g.kind!==277);let h=g.kind===273||g.kind===352?XAn((c=g.importClause)==null?void 0:c.namedBindings)??g.moduleSpecifier:g.moduleReference,_={pos:g.getFirstToken().getStart(),end:h.pos};if(x3(_,d))return c9(_)}function XAn(s){var c;return de((c=Gs(s,wN))==null?void 0:c.elements,g=>{var d;return!g.propertyName&&qY(g.name.text)&&((d=Vm(g.name.pos,s.getSourceFile(),s))==null?void 0:d.kind)!==28})}function JAn(s,c){return dy(s)&&(s.isTypeOnly||c===s.name&&IWe(c))}function UAn(s){if(!JXt(s.parent.parent.moduleSpecifier)||s.parent.name)return!1;if(wN(s)){let c=XAn(s);return(c?s.elements.indexOf(c):s.elements.length)<2}return!0}function JXt(s){var c;return af(s)?!0:!((c=Gs(HF(s)?s.expression:s,_A))!=null&&c.text)}function sLs(s,c){if(!s)return;let g=ji(s,d=>wW(d)||KAn(d)||Nu(d)?"quit":(Si(d)||Ds(d))&&!N0(d.parent));return g||(g=ji(c,d=>wW(d)||KAn(d)||Nu(d)?"quit":nc(d))),g}function oLs(s){if(!s)return!1;let c=s,g=s.parent;for(;g;){if(Ds(g))return g.default===c||c.kind===64;c=g,g=g.parent}return!1}function KAn(s){return s.parent&&gA(s.parent)&&(s.parent.body===s||s.kind===39)}function UXt(s,c,g=new Set){return d(s)||d(VC(s.exportSymbol||s,c));function d(h){return!!(h.flags&788968)||c.isUnknownSymbol(h)||!!(h.flags&1536)&&Wy(g,h)&&c.getExportsOfModule(h).some(_=>UXt(_,c,g))}}function aLs(s,c){let g=VC(s,c).declarations;return!!B(g)&&ue(g,kWe)}function jAn(s,c){if(c.length===0)return!0;let g=!1,d,h=0,_=s.length;for(let S=0;S<_;S++){let R=s.charCodeAt(S),T=c.charCodeAt(h);if((R===T||R===cLs(T))&&(g||(g=d===void 0||97<=d&&d<=122&&65<=R&&R<=90||d===95&&R!==95),g&&h++,h===c.length))return!0;d=R}return!1}function cLs(s){return 97<=s&&s<=122?s-32:s}function lLs(s){return s==="abstract"||s==="async"||s==="await"||s==="declare"||s==="module"||s==="namespace"||s==="type"||s==="satisfies"||s==="as"}var ast={};o(ast,{getStringLiteralCompletionDetails:()=>ALs,getStringLiteralCompletions:()=>uLs});var zAn={directory:0,script:1,"external module name":2};function KXt(){let s=new Map;function c(g){let d=s.get(g.name);(!d||zAn[d.kind]({name:jT(re.value,M),kindModifiers:"",kind:"string",sortText:g0.LocationPriority,replacementSpan:ent(c,T),commitCharacters:[]}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:s.isNewIdentifier,optionalReplacementSpan:V,entries:ee,defaultCommitCharacters:jU(s.isNewIdentifier)}}default:return pe.assertNever(s)}}function ALs(s,c,g,d,h,_,S,R){if(!d||!_A(d))return;let T=edn(c,d,g,h,_,R);return T&&dLs(s,d,T,c,h.getTypeChecker(),S)}function dLs(s,c,g,d,h,_){switch(g.kind){case 0:{let S=de(g.paths,R=>R.name===s);return S&&AOe(s,$An(S.extension),S.kind,[IS(s)])}case 1:{let S=de(g.symbols,R=>R.name===s);return S&&QXt(S,S.name,h,d,c,_)}case 2:return de(g.types,S=>S.value===s)?AOe(s,"","string",[IS(s)]):void 0;default:return pe.assertNever(g)}}function qAn(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:s.map(({name:h,kind:_,span:S,extension:R})=>({name:h,kind:_,kindModifiers:$An(R),sortText:g0.LocationPriority,replacementSpan:S})),defaultCommitCharacters:jU(!0)}}function $An(s){switch(s){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".d.mts":return".d.mts";case".mjs":return".mjs";case".mts":return".mts";case".d.cts":return".d.cts";case".cjs":return".cjs";case".cts":return".cts";case".tsbuildinfo":return pe.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return pe.assertNever(s)}}function edn(s,c,g,d,h,_){let S=d.getTypeChecker(),R=jXt(c.parent);switch(R.kind){case 202:{let Ze=jXt(R.parent);return Ze.kind===206?{kind:0,paths:ndn(s,c,d,h,_)}:T(Ze)}case 304:return ag(R.parent)&&R.name===c?ILs(S,R.parent):O()||O(0);case 213:{let{expression:Ze,argumentExpression:Pe}=R;return c===JA(Pe)?tdn(S.getTypeAtLocation(Ze)):void 0}case 214:case 215:case 292:if(!kLs(c)&&!jp(R)){let Ze=p2e.getArgumentInfoForCompletions(R.kind===292?R.parent:c,g,s,S);return Ze&&fLs(Ze.invocation,c,Ze,S)||O(0)}case 273:case 279:case 284:case 352:return{kind:0,paths:ndn(s,c,d,h,_)};case 297:let V=FWe(S,R.parent.clauses),M=O();return M?{kind:2,types:M.types.filter(Ze=>!V.hasValue(Ze.value)),isNewIdentifier:!1}:void 0;case 277:case 282:let re=R;if(re.propertyName&&c!==re.propertyName)return;let ge=re.parent,{moduleSpecifier:Ie}=ge.kind===276?ge.parent.parent:ge.parent;if(!Ie)return;let _e=S.getSymbolAtLocation(Ie);if(!_e)return;let Ee=S.getExportsAndPropertiesOfModule(_e),Ne=new Set(ge.elements.map(Ze=>BF(Ze.propertyName||Ze.name)));return{kind:1,symbols:Ee.filter(Ze=>Ze.escapedName!=="default"&&!Ne.has(Ze.escapedName)),hasIndexSignature:!1};case 227:if(R.operatorToken.kind===103){let Ze=S.getTypeAtLocation(R.right);return{kind:1,symbols:(Ze.isUnion()?S.getAllPossiblePropertiesOfTypes(Ze.types):Ze.getApparentProperties()).filter(Ke=>!Ke.valueDeclaration||!hC(Ke.valueDeclaration)),hasIndexSignature:!1}}return O(0);default:return O()||O(0)}function T(V){switch(V.kind){case 234:case 184:{let re=ji(R,ge=>ge.parent===V);return re?{kind:2,types:cst(S.getTypeArgumentConstraint(re)),isNewIdentifier:!1}:void 0}case 200:let{indexType:M,objectType:ee}=V;return nse(M,g)?tdn(S.getTypeFromTypeNode(ee)):void 0;case 193:{let re=T(jXt(V.parent));if(!re)return;let ge=pLs(V,R);return re.kind===1?{kind:1,symbols:re.symbols.filter(Ie=>!k(ge,Ie.name)),hasIndexSignature:re.hasIndexSignature}:{kind:2,types:re.types.filter(Ie=>!k(ge,Ie.value)),isNewIdentifier:!1}}default:return}}function O(V=4){let M=cst(SWe(c,S,V));if(M.length)return{kind:2,types:M,isNewIdentifier:!1}}}function jXt(s){switch(s.kind){case 197:return Rne(s);case 218:return Iv(s);default:return s}}function pLs(s,c){return Xt(s.types,g=>g!==c&&wE(g)&&Lg(g.literal)?g.literal.text:void 0)}function fLs(s,c,g,d){let h=!1,_=new Set,S=nI(s)?pe.checkDefined(ji(c.parent,RN)):c,R=d.getCandidateSignaturesForStringLiteralCompletions(s,S),T=jt(R,O=>{if(!G0(O)&&g.argumentCount>O.parameters.length)return;let V=O.getTypeParameterAtPosition(g.argumentIndex);if(nI(s)){let M=d.getTypeOfPropertyOfType(V,Ww(S.name));M&&(V=M)}return h=h||!!(V.flags&4),cst(V,_)});return B(T)?{kind:2,types:T,isNewIdentifier:h}:void 0}function tdn(s){return s&&{kind:1,symbols:Le(s.getApparentProperties(),c=>!(c.valueDeclaration&&hC(c.valueDeclaration))),hasIndexSignature:ynt(s)}}function ILs(s,c){let g=s.getContextualType(c);if(!g)return;let d=s.getContextualType(c,4);return{kind:1,symbols:ist(g,d,c,s),hasIndexSignature:ynt(g)}}function cst(s,c=new Set){return s?(s=int(s),s.isUnion()?jt(s.types,g=>cst(g,c)):s.isStringLiteral()&&!(s.flags&1024)&&Wy(c,s.value)?[s]:E):E}function wpe(s,c,g){return{name:s,kind:c,extension:g}}function zXt(s){return wpe(s,"directory",void 0)}function rdn(s,c,g){let d=TLs(s,c),h=s.length===0?void 0:$d(c,s.length);return g.map(({name:_,kind:S,extension:R})=>_.includes(cg)||_.includes(Bb)?{name:_,kind:S,extension:R,span:h}:{name:_,kind:S,extension:R,span:d})}function ndn(s,c,g,d,h){return rdn(c.text,c.getStart(s)+1,hLs(s,c,g,d,h))}function hLs(s,c,g,d,h){let _=xp(c.text),S=_A(c)?g.getModeForUsageLocation(s,c):void 0,R=s.path,T=Mo(R),O=g.getCompilerOptions(),V=g.getTypeChecker(),M=o5(g,d),ee=qXt(O,1,s,V,h,S);return RLs(_)||!O.baseUrl&&!O.paths&&(Up(_)||o_(_))?mLs(_,T,g,d,M,R,ee):bLs(_,T,S,g,d,M,ee)}function qXt(s,c,g,d,h,_){return{extensionsToSearch:Sr(CLs(s,d)),referenceKind:c,importingSourceFile:g,endingPreference:h?.importModuleSpecifierEnding,resolutionMode:_}}function mLs(s,c,g,d,h,_,S){let R=g.getCompilerOptions();return R.rootDirs?yLs(R.rootDirs,s,c,S,g,d,h,_):Do(Tpe(s,c,S,g,d,h,!0,_).values())}function CLs(s,c){let g=c?Xt(c.getAmbientModules(),_=>{let S=_.name.slice(1,-1);if(!(!S.startsWith("*.")||S.includes("/")))return S.slice(1)}):[],d=[...Az(s),g],h=F_(s);return hWe(h)?dz(s,d):d}function _Ls(s,c,g,d){s=s.map(_=>Cp(su(Up(_)?_:To(c,_))));let h=J(s,_=>zh(_,g,c,d)?g.substr(_.length):void 0);return no([...s.map(_=>To(_,h)),g].map(_=>oy(_)),YA,Ca)}function yLs(s,c,g,d,h,_,S,R){let O=h.getCompilerOptions().project||_.getCurrentDirectory(),V=!(_.useCaseSensitiveFileNames&&_.useCaseSensitiveFileNames()),M=_Ls(s,O,g,V);return no(jt(M,ee=>Do(Tpe(c,ee,d,h,_,S,!0,R).values())),(ee,re)=>ee.name===re.name&&ee.kind===re.kind&&ee.extension===re.extension)}function Tpe(s,c,g,d,h,_,S,R,T=KXt()){var O;s===void 0&&(s=""),s=xp(s),Kp(s)||(s=Mo(s)),s===""&&(s="."+cg),s=Cp(s);let V=IE(c,s),M=Kp(V)?V:Mo(V);if(!S){let Ie=eHt(M,h);if(Ie){let Ee=k3(Ie,h).typesVersions;if(typeof Ee=="object"){let Ne=(O=z9e(Ee))==null?void 0:O.paths;if(Ne){let Te=Mo(Ie),Ze=V.slice(Cp(Te).length);if(sdn(T,Ze,Te,g,d,h,_,Ne))return T}}}}let ee=!(h.useCaseSensitiveFileNames&&h.useCaseSensitiveFileNames());if(!TWe(h,M))return T;let re=Snt(h,M,g.extensionsToSearch,void 0,["./*"]);if(re)for(let Ie of re){if(Ie=su(Ie),R&&tI(Ie,R,c,ee)===0)continue;let{name:_e,extension:Ee}=idn(dp(Ie),d,g,!1);T.add(wpe(_e,"script",Ee))}let ge=wWe(h,M);if(ge)for(let Ie of ge){let _e=dp(su(Ie));_e!=="@types"&&T.add(zXt(_e))}return T}function idn(s,c,g,d){let h=JF.tryGetRealFileNameForNonJsDeclarationFileName(s);if(h)return{name:h,extension:zT(h)};if(g.referenceKind===0)return{name:s,extension:zT(s)};let _=JF.getModuleSpecifierPreferences({importModuleSpecifierEnding:g.endingPreference},c,c.getCompilerOptions(),g.importingSourceFile).getAllowedEndingsInPreferredOrder(g.resolutionMode);if(d&&(_=_.filter(R=>R!==0&&R!==1)),_[0]===3){if(Iu(s,sie))return{name:s,extension:zT(s)};let R=JF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return R?{name:yN(s,R),extension:R}:{name:s,extension:zT(s)}}if(!d&&(_[0]===0||_[0]===1)&&Iu(s,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:c0(s),extension:zT(s)};let S=JF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return S?{name:yN(s,S),extension:S}:{name:s,extension:zT(s)}}function sdn(s,c,g,d,h,_,S,R){let T=V=>R[V],O=(V,M)=>{let ee=oQ(V),re=oQ(M),ge=typeof ee=="object"?ee.prefix.length:V.length,Ie=typeof re=="object"?re.prefix.length:M.length;return Zt(Ie,ge)};return odn(s,!1,!1,c,g,d,h,_,S,yg(R),T,O)}function odn(s,c,g,d,h,_,S,R,T,O,V,M){let ee=[],re;for(let ge of O){if(ge===".")continue;let Ie=ge.replace(/^\.\//,"")+((c||g)&&di(ge,"/")?"*":""),_e=V(ge);if(_e){let Ee=oQ(Ie);if(!Ee)continue;let Ne=typeof Ee=="object"&&qd(Ee,d);Ne&&(re===void 0||M(Ie,re)===-1)&&(re=Ie,ee=ee.filter(Ze=>!Ze.matchedPattern)),(typeof Ee=="string"||re===void 0||M(Ie,re)!==1)&&ee.push({matchedPattern:Ne,results:ELs(Ie,_e,d,h,_,c,g,S,R,T).map(({name:Ze,kind:Pe,extension:Ke})=>wpe(Ze,Pe,Ke))})}}return ee.forEach(ge=>ge.results.forEach(Ie=>s.add(Ie))),re!==void 0}function bLs(s,c,g,d,h,_,S){let R=d.getTypeChecker(),T=d.getCompilerOptions(),{baseUrl:O,paths:V}=T,M=KXt(),ee=F_(T);if(O){let Ie=su(To(h.getCurrentDirectory(),O));Tpe(s,Ie,S,d,h,_,!1,void 0,M)}if(V){let Ie=SAe(T,h);sdn(M,s,Ie,S,d,h,_,V)}let re=cdn(s);for(let Ie of vLs(s,re,R))M.add(wpe(Ie,"external module name",void 0));if(gdn(d,h,_,c,re,S,M),hWe(ee)){let Ie=!1;if(re===void 0)for(let _e of wLs(h,c)){let Ee=wpe(_e,"external module name",void 0);M.has(Ee.name)||(Ie=!0,M.add(Ee))}if(!Ie){let _e=lz(T),Ee=$ne(T),Ne=!1,Te=Ke=>{if(Ee&&!Ne){let et=To(Ke,"package.json");if(Ne=use(h,et)){let Ye=k3(et,h);ge(Ye.imports,s,Ke,!1,!0)}}},Ze=Ke=>{let et=To(Ke,"node_modules");TWe(h,et)&&Tpe(s,et,S,d,h,_,!1,void 0,M),Te(Ke)};if(re&&_e){let Ke=Ze;Ze=et=>{let Ye=kp(s);Ye.shift();let Tt=Ye.shift();if(!Tt)return Ke(et);if(Ac(Tt,"@")){let Ct=Ye.shift();if(!Ct)return Ke(et);Tt=To(Tt,Ct)}if(Ee&&Ac(Tt,"#"))return Te(et);let at=To(et,"node_modules",Tt),Qe=To(at,"package.json");if(use(h,Qe)){let Ct=k3(Qe,h),mt=Ye.join("/")+(Ye.length&&Kp(s)?"/":"");ge(Ct.exports,mt,at,!0,!1);return}return Ke(et)}}let Pe=XW(c);if(Pe){let Ke=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/,et=s.match(Ke);if(et){let[,Ye,Tt]=et;if(Ac(Ye,"#"))DN(h,c,Ze);else{let at;try{at=Pe.resolveToUnqualified(Ye,c,{considerBuiltins:!1})}catch{}if(at){let Qe=su(at),Ct=!0;if(re&&_e){let mt=To(Qe,"package.json");if(use(h,mt)){let yt=k3(mt,h);ge(yt.exports,Tt,Qe,!0,!1),Ct=!1}}Ct&&Tpe(Tt,Qe,S,d,h,_,!1,void 0,M)}}}}else DN(h,c,Ze)}}return Do(M.values());function ge(Ie,_e,Ee,Ne,Te){if(typeof Ie!="object"||Ie===null)return;let Ze=yg(Ie),Pe=UW(T,g);odn(M,Ne,Te,_e,Ee,S,d,h,_,Ze,Ke=>{let et=adn(Ie[Ke],Pe);if(et!==void 0)return j_(di(Ke,"/")&&di(et,"/")?et+"*":et)},Vet)}}function adn(s,c){if(typeof s=="string")return s;if(s&&typeof s=="object"&&!Ki(s)){for(let g in s)if(g==="default"||c.includes(g)||zEe(c,g)){let d=s[g];return adn(d,c)}}}function cdn(s){return $Xt(s)?Kp(s)?s:Mo(s):void 0}function ELs(s,c,g,d,h,_,S,R,T,O){let V=oQ(s);if(!V)return E;if(typeof V=="string")return ee(s,"script");let M=US(g,V.prefix);if(M===void 0)return di(s,"/*")?ee(V.prefix,"directory"):jt(c,ge=>{var Ie;return(Ie=ldn("",d,ge,h,_,S,R,T,O))==null?void 0:Ie.map(({name:_e,...Ee})=>({name:V.prefix+_e+V.suffix,...Ee}))});return jt(c,re=>ldn(M,d,re,h,_,S,R,T,O));function ee(re,ge){return Ac(re,g)?[{name:oy(re),kind:ge,extension:void 0}]:E}}function ldn(s,c,g,d,h,_,S,R,T){if(!R.readDirectory)return;let O=oQ(g);if(O===void 0||Xs(O))return;let V=IE(O.prefix),M=Kp(O.prefix)?V:Mo(V),ee=Kp(O.prefix)?"":dp(V),re=$Xt(s),ge=re?Kp(s)?s:Mo(s):void 0,Ie=()=>T.getCommonSourceDirectory(),_e=!N3(T),Ee=S.getCompilerOptions().outDir,Ne=S.getCompilerOptions().declarationDir,Te=re?To(M,ee+ge):M,Ze=su(To(c,Te)),Pe=_&&Ee&&Abe(Ze,_e,Ee,Ie),Ke=_&&Ne&&Abe(Ze,_e,Ne,Ie),et=su(O.suffix),Ye=et&&EAe("_"+et),Tt=et?gbe("_"+et):void 0,at=[Ye&&yN(et,Ye),...Tt?Tt.map(je=>yN(et,je)):[],et].filter(Xs),Qe=et?at.map(je=>"**/*"+je):["./*"],Ct=(h||_)&&di(g,"/*"),mt=yt(Ze);return Pe&&(mt=Nn(mt,yt(Pe))),Ke&&(mt=Nn(mt,yt(Ke))),et||(mt=Nn(mt,Rt(Ze)),Pe&&(mt=Nn(mt,Rt(Pe))),Ke&&(mt=Nn(mt,Rt(Ke)))),mt;function yt(je){let Wt=re?je:Cp(je)+ee;return Xt(Snt(R,je,d.extensionsToSearch,void 0,Qe),_r=>{let Gt=Lt(_r,Wt);if(Gt){if($Xt(Gt))return zXt(kp(udn(Gt))[1]);let{name:it,extension:Dt}=idn(Gt,S,d,Ct);return wpe(it,"script",Dt)}})}function Rt(je){return Xt(wWe(R,je),Wt=>Wt==="node_modules"?void 0:zXt(Wt))}function Lt(je,Wt){return J(at,_r=>{let Gt=SLs(su(je),Wt,_r);return Gt===void 0?void 0:udn(Gt)})}}function SLs(s,c,g){return Ac(s,c)&&di(s,g)?s.slice(c.length,s.length-g.length):void 0}function udn(s){return s[0]===cg?s.slice(1):s}function vLs(s,c,g){let h=g.getAmbientModules().map(_=>d2(_.name)).filter(_=>Ac(_,s)&&!_.includes("*"));if(c!==void 0){let _=Cp(c);return h.map(S=>Gm(S,_))}return h}function BLs(s,c,g,d,h){let _=g.getCompilerOptions(),S=Jc(s,c),R=CE(s.text,S.pos),T=R&&de(R,_e=>c>=_e.pos&&c<=_e.end);if(!T)return;let O=s.text.slice(T.pos,c),V=NLs.exec(O);if(!V)return;let[,M,ee,re]=V,ge=Mo(s.path),Ie=ee==="path"?Tpe(re,ge,qXt(_,0,s),g,d,h,!0,s.path):ee==="types"?gdn(g,d,h,ge,cdn(re),qXt(_,1,s)):pe.fail();return rdn(re,T.pos+M.length,Do(Ie.values()))}function gdn(s,c,g,d,h,_,S=KXt()){let R=s.getCompilerOptions(),T=new Map,O=RWe(()=>Zde(R,c))||E;for(let M of O)V(M);if(XW(d))for(let M of ttn(d))V(M);else for(let M of vnt(d,c)){let ee=To(Mo(M),"node_modules/@types");V(ee)}return S;function V(M){if(TWe(c,M))for(let ee of wWe(c,M)){let re=qEe(ee);if(!(R.types&&!k(R.types,re)))if(h===void 0)T.has(re)||(S.add(wpe(re,"external module name",void 0)),T.set(re,!0));else{let ge=To(M,ee),Ie=UAe(h,re,$D(c));Ie!==void 0&&Tpe(Ie,ge,_,s,c,g,!1,void 0,S)}}}}function wLs(s,c){if(!s.readFile||!s.fileExists)return E;let g=[];for(let d of vnt(c,s)){let h=k3(d,s);for(let _ of DLs){let S=h[_];if(S)for(let R in S)Da(S,R)&&!Ac(R,"@types/")&&g.push(R)}}return g}function TLs(s,c){let g=Math.max(s.lastIndexOf(cg),s.lastIndexOf(Bb)),d=g!==-1?g+1:0,h=s.length-d;return h===0||qh(s.substr(d,h),99)?void 0:$d(c+d,h)}function RLs(s){if(s&&s.length>=2&&s.charCodeAt(0)===46){let c=s.length>=3&&s.charCodeAt(1)===46?2:1,g=s.charCodeAt(c);return g===47||g===92}return!1}var NLs=/^(\/\/\/\s*lq,DefinitionKind:()=>mdn,EntryKind:()=>Cdn,ExportKind:()=>Adn,FindReferencesUse:()=>_dn,ImportExport:()=>ddn,createImportTracker:()=>e4t,findModuleReferences:()=>pdn,findReferenceOrRenameEntries:()=>XLs,findReferencedSymbols:()=>HLs,getContextNode:()=>zU,getExportInfo:()=>t4t,getImplementationsAtPosition:()=>QLs,getImportOrExportSymbol:()=>hdn,getReferenceEntriesForNode:()=>bdn,isContextWithStartAndEndNode:()=>n4t,isDeclarationOfSymbol:()=>wdn,isWriteAccessForReference:()=>s4t,toContextSpan:()=>i4t,toHighlightSpan:()=>$Ls,toReferenceEntry:()=>vdn,toRenameLocation:()=>ULs});function e4t(s,c,g,d){let h=ZLs(s,g,d);return(_,S,R)=>{let{directImports:T,indirectUsers:O}=xLs(s,c,h,S,g,d);return{indirectUsers:O,...GLs(T,_,S.exportKind,g,R)}}}var Adn=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s))(Adn||{}),ddn=(s=>(s[s.Import=0]="Import",s[s.Export=1]="Export",s))(ddn||{});function xLs(s,c,g,{exportingModuleSymbol:d,exportKind:h},_,S){let R=sse(),T=sse(),O=[],V=!!d.globalExports,M=V?void 0:[];return re(d),{directImports:O,indirectUsers:ee()};function ee(){if(V)return s;if(d.declarations)for(let Te of d.declarations)wF(Te)&&c.has(Te.getSourceFile().fileName)&&Ee(Te);return M.map(ms)}function re(Te){let Ze=Ne(Te);if(Ze){for(let Pe of Ze)if(R(Pe))switch(S&&S.throwIfCancellationRequested(),Pe.kind){case 214:if(jp(Pe)){ge(Pe);break}if(!V){let et=Pe.parent;if(h===2&&et.kind===261){let{name:Ye}=et;if(Ye.kind===80){O.push(Ye);break}}}break;case 80:break;case 272:_e(Pe,Pe.name,Ga(Pe,32),!1);break;case 273:case 352:O.push(Pe);let Ke=Pe.importClause&&Pe.importClause.namedBindings;Ke&&Ke.kind===275?_e(Pe,Ke.name,!1,!0):!V&&B3(Pe)&&Ee(pOe(Pe));break;case 279:Pe.exportClause?Pe.exportClause.kind===281?Ee(pOe(Pe),!0):O.push(Pe):re(PLs(Pe,_));break;case 206:!V&&Pe.isTypeOf&&!Pe.qualifier&&Ie(Pe)&&Ee(Pe.getSourceFile(),!0),O.push(Pe);break;default:pe.failBadSyntaxKind(Pe,"Unexpected import kind.")}}}function ge(Te){let Ze=ji(Te,lst)||Te.getSourceFile();Ee(Ze,!!Ie(Te,!0))}function Ie(Te,Ze=!1){return ji(Te,Pe=>Ze&&lst(Pe)?"quit":HB(Pe)&&zt(Pe.modifiers,y))}function _e(Te,Ze,Pe,Ke){if(h===2)Ke||O.push(Te);else if(!V){let et=pOe(Te);pe.assert(et.kind===308||et.kind===268),Pe||FLs(et,Ze,_)?Ee(et,!0):Ee(et)}}function Ee(Te,Ze=!1){if(pe.assert(!V),!T(Te)||(M.push(Te),!Ze))return;let Ke=_.getMergedSymbol(Te.symbol);if(!Ke)return;pe.assert(!!(Ke.flags&1536));let et=Ne(Ke);if(et)for(let Ye of et)qm(Ye)||Ee(pOe(Ye),!0)}function Ne(Te){return g.get(xg(Te).toString())}}function GLs(s,c,g,d,h){let _=[],S=[];function R(ee,re){_.push([ee,re])}if(s)for(let ee of s)T(ee);return{importSearches:_,singleReferences:S};function T(ee){if(ee.kind===272){r4t(ee)&&O(ee.name);return}if(ee.kind===80){O(ee);return}if(ee.kind===206){if(ee.qualifier){let Ie=R0(ee.qualifier);Ie.escapedText===of(c)&&S.push(Ie)}else g===2&&S.push(ee.argument.literal);return}if(ee.moduleSpecifier.kind!==11)return;if(ee.kind===279){ee.exportClause&&Ev(ee.exportClause)&&V(ee.exportClause);return}let{name:re,namedBindings:ge}=ee.importClause||{name:void 0,namedBindings:void 0};if(ge)switch(ge.kind){case 275:O(ge.name);break;case 276:(g===0||g===1)&&V(ge);break;default:pe.assertNever(ge)}if(re&&(g===1||g===2)&&(!h||re.escapedText===mWe(c))){let Ie=d.getSymbolAtLocation(re);R(re,Ie)}}function O(ee){g===2&&(!h||M(ee.escapedText))&&R(ee,d.getSymbolAtLocation(ee))}function V(ee){if(ee)for(let re of ee.elements){let{name:ge,propertyName:Ie}=re;if(M(BF(Ie||ge)))if(Ie)S.push(Ie),(!h||BF(ge)===c.escapedName)&&R(ge,d.getSymbolAtLocation(ge));else{let _e=re.kind===282&&re.propertyName?d.getExportSpecifierLocalTargetSymbol(re):d.getSymbolAtLocation(ge);R(ge,_e)}}}function M(ee){return ee===c.escapedName||g!==0&&ee==="default"}}function FLs(s,c,g){let d=g.getSymbolAtLocation(c);return!!fdn(s,h=>{if(!Vh(h))return;let{exportClause:_,moduleSpecifier:S}=h;return!S&&_&&Ev(_)&&_.elements.some(R=>g.getExportSpecifierLocalTargetSymbol(R)===d)})}function pdn(s,c,g){var d;let h=[],_=s.getTypeChecker();for(let S of c){let R=g.valueDeclaration;if(R?.kind===308){for(let T of S.referencedFiles)s.getSourceFileFromReference(S,T)===R&&h.push({kind:"reference",referencingFile:S,ref:T});for(let T of S.typeReferenceDirectives){let O=(d=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(T,S))==null?void 0:d.resolvedTypeReferenceDirective;O!==void 0&&O.resolvedFileName===R.fileName&&h.push({kind:"reference",referencingFile:S,ref:T})}}Idn(S,(T,O)=>{_.getSymbolAtLocation(O)===g&&h.push(ap(T)?{kind:"implicit",literal:O,referencingFile:S}:{kind:"import",literal:O})})}return h}function ZLs(s,c,g){let d=new Map;for(let h of s)g&&g.throwIfCancellationRequested(),Idn(h,(_,S)=>{let R=c.getSymbolAtLocation(S);if(R){let T=xg(R).toString(),O=d.get(T);O||d.set(T,O=[]),O.push(_)}});return d}function fdn(s,c){return F(s.kind===308?s.statements:s.body.statements,g=>c(g)||lst(g)&&F(g.body&&g.body.statements,c))}function Idn(s,c){if(s.externalModuleIndicator||s.imports!==void 0)for(let g of s.imports)c(O7(g),g);else fdn(s,g=>{switch(g.kind){case 279:case 273:{let d=g;d.moduleSpecifier&&Lg(d.moduleSpecifier)&&c(d,d.moduleSpecifier);break}case 272:{let d=g;r4t(d)&&c(d,d.moduleReference.expression);break}}})}function hdn(s,c,g,d){return d?h():h()||_();function h(){var T;let{parent:O}=s,V=O.parent;if(c.exportSymbol)return O.kind===212?(T=c.declarations)!=null&&T.some(re=>re===O)&&po(V)?ee(V,!1):void 0:S(c.exportSymbol,R(O));{let re=VLs(O,s);if(re&&Ga(re,32))return Zm(re)&&re.moduleReference===s?d?void 0:{kind:0,symbol:g.getSymbolAtLocation(re.name)}:S(c,R(re));if(ak(O))return S(c,0);if(yf(O))return M(O);if(yf(V))return M(V);if(po(O))return ee(O,!0);if(po(V))return ee(V,!0);if(ZU(O)||Z$e(O))return S(c,0)}function M(re){if(!re.symbol.parent)return;let ge=re.isExportEquals?2:1;return{kind:1,symbol:c,exportInfo:{exportingModuleSymbol:re.symbol.parent,exportKind:ge}}}function ee(re,ge){let Ie;switch(oI(re)){case 1:Ie=0;break;case 2:Ie=2;break;default:return}let _e=ge?g.getSymbolAtLocation(xbe(Ma(re.left,bp))):c;return _e&&S(_e,Ie)}}function _(){if(!WLs(s))return;let O=g.getImmediateAliasedSymbol(c);if(!O||(O=OLs(O,g),O.escapedName==="export="&&(O=LLs(O,g),O===void 0)))return;let V=mWe(O);if(V===void 0||V==="default"||V===c.escapedName)return{kind:0,symbol:O}}function S(T,O){let V=t4t(T,O,g);return V&&{kind:1,symbol:T,exportInfo:V}}function R(T){return Ga(T,2048)?1:0}}function LLs(s,c){var g,d;if(s.flags&2097152)return c.getImmediateAliasedSymbol(s);let h=pe.checkDefined(s.valueDeclaration);if(yf(h))return(g=Gs(h.expression,bE))==null?void 0:g.symbol;if(po(h))return(d=Gs(h.right,bE))==null?void 0:d.symbol;if(cl(h))return h.symbol}function VLs(s,c){let g=nc(s)?s:mg(s)?ai(s):void 0;return g?s.name!==c||IQ(g.parent)?void 0:Eh(g.parent.parent)?g.parent.parent:void 0:s}function WLs(s){let{parent:c}=s;switch(c.kind){case 272:return c.name===s&&r4t(c);case 277:return!c.propertyName;case 274:case 275:return pe.assert(c.name===s),!0;case 209:return Bo(s)&&TW(c.parent.parent);default:return!1}}function t4t(s,c,g){let d=s.parent;if(!d)return;let h=g.getMergedSymbol(d);return XD(h)?{exportingModuleSymbol:h,exportKind:c}:void 0}function OLs(s,c){if(s.declarations)for(let g of s.declarations){if(k0(g)&&!g.propertyName&&!g.parent.parent.moduleSpecifier)return c.getExportSpecifierLocalTargetSymbol(g)||s;if(jo(g)&&pN(g.expression)&&!p(g.name))return c.getSymbolAtLocation(g);if(u0(g)&&po(g.parent.parent)&&oI(g.parent.parent)===2)return c.getExportSpecifierLocalTargetSymbol(g.name)}return s}function PLs(s,c){return c.getMergedSymbol(pOe(s).symbol)}function pOe(s){if(s.kind===214||s.kind===352)return s.getSourceFile();let{parent:c}=s;return c.kind===308?c:(pe.assert(c.kind===269),Ma(c.parent,lst))}function lst(s){return s.kind===268&&s.name.kind===11}function r4t(s){return s.moduleReference.kind===284&&s.moduleReference.expression.kind===11}var mdn=(s=>(s[s.Symbol=0]="Symbol",s[s.Label=1]="Label",s[s.Keyword=2]="Keyword",s[s.This=3]="This",s[s.String=4]="String",s[s.TripleSlashReference=5]="TripleSlashReference",s))(mdn||{}),Cdn=(s=>(s[s.Span=0]="Span",s[s.Node=1]="Node",s[s.StringLiteral=2]="StringLiteral",s[s.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",s[s.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",s))(Cdn||{});function jF(s,c=1){return{kind:c,node:s.name||s,context:MLs(s)}}function n4t(s){return s&&s.kind===void 0}function MLs(s){if(em(s))return zU(s);if(s.parent){if(!em(s.parent)&&!yf(s.parent)){if(Bo(s)){let g=po(s.parent)?s.parent:bp(s.parent)&&po(s.parent.parent)&&s.parent.parent.left===s.parent?s.parent.parent:void 0;if(g&&oI(g)!==0)return zU(g)}if(sR(s.parent)||pQ(s.parent))return s.parent.parent;if(GU(s.parent)||YW(s.parent)||SY(s.parent))return s.parent;if(_A(s)){let g=P7(s);if(g){let d=ji(g,h=>em(h)||Lc(h)||C3(h));return em(d)?zU(d):d}}let c=ji(s,Un);return c?zU(c.parent):void 0}if(s.parent.name===s||Tc(s.parent)||yf(s.parent)||(sS(s.parent)||mg(s.parent))&&s.parent.propertyName===s||s.kind===90&&Ga(s.parent,2080))return zU(s.parent)}}function zU(s){if(s)switch(s.kind){case 261:return!d_(s.parent)||s.parent.declarations.length!==1?s:Eh(s.parent.parent)?s.parent.parent:WL(s.parent.parent)?zU(s.parent.parent):s.parent;case 209:return zU(s.parent.parent);case 277:return s.parent.parent.parent;case 282:case 275:return s.parent.parent;case 274:case 281:return s.parent;case 227:return PC(s.parent)?s.parent:s;case 251:case 250:return{start:s.initializer,end:s.expression};case 304:case 305:return a9(s.parent)?zU(ji(s.parent,c=>po(c)||WL(c))):s;case 256:return{start:de(s.getChildren(s.getSourceFile()),c=>c.kind===109),end:s.caseBlock};default:return s}}function i4t(s,c,g){if(!g)return;let d=n4t(g)?IOe(g.start,c,g.end):IOe(g,c);return d.start!==s.start||d.length!==s.length?{contextSpan:d}:void 0}var _dn=(s=>(s[s.Other=0]="Other",s[s.References=1]="References",s[s.Rename=2]="Rename",s))(_dn||{});function HLs(s,c,g,d,h){let _=Ob(d,h),S={use:1},R=lq.getReferencedSymbolsForNode(h,_,s,g,c,S),T=s.getTypeChecker(),O=lq.getAdjustedNode(_,S),V=YLs(O)?T.getSymbolAtLocation(O):void 0;return!R||!R.length?void 0:Xt(R,({definition:M,references:ee})=>M&&{definition:T.runWithCancellationToken(c,re=>JLs(M,re,_)),references:ee.map(re=>KLs(re,V))})}function YLs(s){return s.kind===90||!!H7(s)||Nne(s)||s.kind===137&&Tc(s.parent)}function QLs(s,c,g,d,h){let _=Ob(d,h),S,R=ydn(s,c,g,_,h);if(_.parent.kind===212||_.parent.kind===209||_.parent.kind===213||_.kind===108)S=R&&[...R];else if(R){let O=cA(R),V=new Set;for(;!O.isEmpty();){let M=O.dequeue();if(!Wy(V,id(M.node)))continue;S=Ft(S,M);let ee=ydn(s,c,g,M.node,M.node.pos);ee&&O.enqueue(...ee)}}let T=s.getTypeChecker();return lt(S,O=>zLs(O,T))}function ydn(s,c,g,d,h){if(d.kind===308)return;let _=s.getTypeChecker();if(d.parent.kind===305){let S=[];return lq.getReferenceEntriesForShorthandPropertyAssignment(d,_,R=>S.push(jF(R))),S}else if(d.kind===108||Zy(d.parent)){let S=_.getSymbolAtLocation(d);return S.valueDeclaration&&[jF(S.valueDeclaration)]}else return bdn(h,d,s,g,c,{implementations:!0,use:1})}function XLs(s,c,g,d,h,_,S){return lt(Edn(lq.getReferencedSymbolsForNode(h,d,s,g,c,_)),R=>S(R,d,s.getTypeChecker()))}function bdn(s,c,g,d,h,_={},S=new Set(d.map(R=>R.fileName))){return Edn(lq.getReferencedSymbolsForNode(s,c,g,d,h,_,S))}function Edn(s){return s&&jt(s,c=>c.references)}function JLs(s,c,g){let d=(()=>{switch(s.type){case 0:{let{symbol:V}=s,{displayParts:M,kind:ee}=Sdn(V,c,g),re=M.map(_e=>_e.text).join(""),ge=V.declarations&&Nc(V.declarations),Ie=ge?fl(ge)||ge:g;return{...fOe(Ie),name:re,kind:ee,displayParts:M,context:zU(ge)}}case 1:{let{node:V}=s;return{...fOe(V),name:V.text,kind:"label",displayParts:[TE(V.text,17)]}}case 2:{let{node:V}=s,M=Vi(V.kind);return{...fOe(V),name:M,kind:"keyword",displayParts:[{text:M,kind:"keyword"}]}}case 3:{let{node:V}=s,M=c.getSymbolAtLocation(V),ee=M&&g9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,M,V.getSourceFile(),XU(V),V).displayParts||[IS("this")];return{...fOe(V),name:"this",kind:"var",displayParts:ee}}case 4:{let{node:V}=s;return{...fOe(V),name:V.text,kind:"var",displayParts:[TE(Fp(V),8)]}}case 5:return{textSpan:c9(s.reference),sourceFile:s.file,name:s.reference.fileName,kind:"string",displayParts:[TE(`"${s.reference.fileName}"`,8)]};default:return pe.assertNever(s)}})(),{sourceFile:h,textSpan:_,name:S,kind:R,displayParts:T,context:O}=d;return{containerKind:"",containerName:"",fileName:h.fileName,kind:R,name:S,textSpan:_,displayParts:T,...i4t(_,h,O)}}function fOe(s){let c=s.getSourceFile();return{sourceFile:c,textSpan:IOe(Un(s)?s.expression:s,c)}}function Sdn(s,c,g){let d=lq.getIntersectingMeaningFromDeclarations(g,s),h=s.declarations&&Nc(s.declarations)||g,{displayParts:_,symbolKind:S}=g9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,s,h.getSourceFile(),h,h,d);return{displayParts:_,kind:S}}function ULs(s,c,g,d,h){return{...ust(s),...d&&jLs(s,c,g,h)}}function KLs(s,c){let g=vdn(s);return c?{...g,isDefinition:s.kind!==0&&wdn(s.node,c)}:g}function vdn(s){let c=ust(s);if(s.kind===0)return{...c,isWriteAccess:!1};let{kind:g,node:d}=s;return{...c,isWriteAccess:s4t(d),isInString:g===2?!0:void 0}}function ust(s){if(s.kind===0)return{textSpan:s.textSpan,fileName:s.fileName};{let c=s.node.getSourceFile(),g=IOe(s.node,c);return{textSpan:g,fileName:c.fileName,...i4t(g,c,s.context)}}}function jLs(s,c,g,d){if(s.kind!==0&&(Ir(c)||_A(c))){let{node:h,kind:_}=s,S=h.parent,R=c.text,T=u0(S);if(T||Z1e(S)&&S.name===h&&S.dotDotDotToken===void 0){let O={prefixText:R+": "},V={suffixText:": "+R};if(_===3)return O;if(_===4)return V;if(T){let M=S.parent;return ag(M)&&po(M.parent)&&pN(M.parent.left)?O:V}else return O}else if(dy(S)&&!S.propertyName){let O=k0(c.parent)?g.getExportSpecifierLocalTargetSymbol(c.parent):g.getSymbolAtLocation(c);return k(O.declarations,S)?{prefixText:R+" as "}:YB}else if(k0(S)&&!S.propertyName)return c===s.node||g.getSymbolAtLocation(c)===g.getSymbolAtLocation(s.node)?{prefixText:R+" as "}:{suffixText:" as "+R}}if(s.kind!==0&&yC(s.node)&&bp(s.node.parent)){let h=cnt(d);return{prefixText:h,suffixText:h}}return YB}function zLs(s,c){let g=ust(s);if(s.kind!==0){let{node:d}=s;return{...g,...qLs(d,c)}}else return{...g,kind:"",displayParts:[]}}function qLs(s,c){let g=c.getSymbolAtLocation(em(s)&&s.name?s.name:s);return g?Sdn(g,c,s):s.kind===211?{kind:"interface",displayParts:[F0(21),IS("object literal"),F0(22)]}:s.kind===232?{kind:"local class",displayParts:[F0(21),IS("anonymous local class"),F0(22)]}:{kind:BQ(s),displayParts:[]}}function $Ls(s){let c=ust(s);if(s.kind===0)return{fileName:c.fileName,span:{textSpan:c.textSpan,kind:"reference"}};let g=s4t(s.node),d={textSpan:c.textSpan,kind:g?"writtenReference":"reference",isInString:s.kind===2?!0:void 0,...c.contextSpan&&{contextSpan:c.contextSpan}};return{fileName:c.fileName,span:d}}function IOe(s,c,g){let d=s.getStart(c),h=(g||s).getEnd();return _A(s)&&h-d>2&&(pe.assert(g===void 0),d+=1,h-=1),g?.kind===270&&(h=g.getFullStart()),RA(d,h)}function Bdn(s){return s.kind===0?s.textSpan:IOe(s.node,s.node.getSourceFile())}function s4t(s){let c=H7(s);return!!c&&e9s(c)||s.kind===90||F3(s)}function wdn(s,c){var g;if(!c)return!1;let d=H7(s)||(s.kind===90?s.parent:Nne(s)||s.kind===137&&Tc(s.parent)?s.parent.parent:void 0),h=d&&po(d)?d.left:void 0;return!!(d&&((g=c.declarations)!=null&&g.some(_=>_===d||_===h)))}function e9s(s){if(s.flags&33554432)return!0;switch(s.kind){case 227:case 209:case 264:case 232:case 90:case 267:case 307:case 282:case 274:case 272:case 277:case 265:case 339:case 347:case 292:case 268:case 271:case 275:case 281:case 170:case 305:case 266:case 169:return!0;case 304:return!a9(s.parent);case 263:case 219:case 177:case 175:case 178:case 179:return!!s.body;case 261:case 173:return!!s.initializer||IQ(s.parent);case 174:case 172:case 349:case 342:return!1;default:return pe.failBadSyntaxKind(s)}}var lq;(s=>{function c(Wr,Wn,pt,on,st,nr={},Zr=new Set(on.map(Kr=>Kr.fileName))){var Kr,Dn;if(Wn=g(Wn,nr),cl(Wn)){let ds=mse.getReferenceAtPosition(Wn,Wr,pt);if(!ds?.file)return;let Ht=pt.getTypeChecker().getMergedSymbol(ds.file.symbol);if(Ht)return O(pt,Ht,!1,on,Zr);let cn=pt.getFileIncludeReasons();return cn?[{definition:{type:5,reference:ds.reference,file:Wn},references:h(ds.file,cn,pt)||E}]:void 0}if(!nr.implementations){let ds=M(Wn,on,st);if(ds)return ds}let hr=pt.getTypeChecker(),En=hr.getSymbolAtLocation(Tc(Wn)&&Wn.parent.name||Wn);if(!En){if(!nr.implementations&&_A(Wn)){if(CWe(Wn)){let ds=pt.getFileIncludeReasons(),Ht=(Dn=(Kr=pt.getResolvedModuleFromModuleSpecifier(Wn))==null?void 0:Kr.resolvedModule)==null?void 0:Dn.resolvedFileName,cn=Ht?pt.getSourceFile(Ht):void 0;if(cn)return[{definition:{type:4,node:Wn},references:h(cn,ds,pt)||E}]}return ba(Wn,on,hr,st)}return}if(En.escapedName==="export=")return O(pt,En.parent,!1,on,Zr);let Ni=S(En,pt,on,st,nr,Zr);if(Ni&&!(En.flags&33554432))return Ni;let Gi=_(Wn,En,hr),nn=Gi&&S(Gi,pt,on,st,nr,Zr),bn=ee(En,Wn,on,Zr,hr,st,nr);return R(pt,Ni,bn,nn)}s.getReferencedSymbolsForNode=c;function g(Wr,Wn){return Wn.use===1?Wr=Jrt(Wr):Wn.use===2&&(Wr=lWe(Wr)),Wr}s.getAdjustedNode=g;function d(Wr,Wn,pt,on=new Set(pt.map(st=>st.fileName))){var st,nr;let Zr=(st=Wn.getSourceFile(Wr))==null?void 0:st.symbol;if(Zr)return((nr=O(Wn,Zr,!1,pt,on)[0])==null?void 0:nr.references)||E;let Kr=Wn.getFileIncludeReasons(),Dn=Wn.getSourceFile(Wr);return Dn&&Kr&&h(Dn,Kr,Wn)||E}s.getReferencesForFileName=d;function h(Wr,Wn,pt){let on,st=Wn.get(Wr.path)||E;for(let nr of st)if(i5(nr)){let Zr=pt.getSourceFileByPath(nr.file),Kr=epe(pt,nr);jie(Kr)&&(on=Ft(on,{kind:0,fileName:Zr.fileName,textSpan:c9(Kr)}))}return on}function _(Wr,Wn,pt){if(Wr.parent&&wEe(Wr.parent)){let on=pt.getAliasedSymbol(Wn),st=pt.getMergedSymbol(on);if(on!==st)return st}}function S(Wr,Wn,pt,on,st,nr){let Zr=Wr.flags&1536&&Wr.declarations&&de(Wr.declarations,cl);if(!Zr)return;let Kr=Wr.exports.get("export="),Dn=O(Wn,Wr,!!Kr,pt,nr);if(!Kr||!nr.has(Zr.fileName))return Dn;let hr=Wn.getTypeChecker();return Wr=VC(Kr,hr),R(Wn,Dn,ee(Wr,void 0,pt,nr,hr,on,st))}function R(Wr,...Wn){let pt;for(let on of Wn)if(!(!on||!on.length)){if(!pt){pt=on;continue}for(let st of on){if(!st.definition||st.definition.type!==0){pt.push(st);continue}let nr=st.definition.symbol,Zr=Se(pt,Dn=>!!Dn.definition&&Dn.definition.type===0&&Dn.definition.symbol===nr);if(Zr===-1){pt.push(st);continue}let Kr=pt[Zr];pt[Zr]={definition:Kr.definition,references:Kr.references.concat(st.references).sort((Dn,hr)=>{let En=T(Wr,Dn),Ni=T(Wr,hr);if(En!==Ni)return Zt(En,Ni);let Gi=Bdn(Dn),nn=Bdn(hr);return Gi.start!==nn.start?Zt(Gi.start,nn.start):Zt(Gi.length,nn.length)})}}}return pt}function T(Wr,Wn){let pt=Wn.kind===0?Wr.getSourceFile(Wn.fileName):Wn.node.getSourceFile();return Wr.getSourceFiles().indexOf(pt)}function O(Wr,Wn,pt,on,st){pe.assert(!!Wn.valueDeclaration);let nr=Xt(pdn(Wr,on,Wn),Kr=>{if(Kr.kind==="import"){let Dn=Kr.literal.parent;if(wE(Dn)){let hr=Ma(Dn.parent,qm);if(pt&&!hr.qualifier)return}return jF(Kr.literal)}else if(Kr.kind==="implicit"){let Dn=Kr.literal.text!==QD&&Wz(Kr.referencingFile,hr=>hr.transformFlags&2?TN(hr)||GU(hr)||U3(hr)?hr:void 0:"skip")||Kr.referencingFile.statements[0]||Kr.referencingFile;return jF(Dn)}else return{kind:0,fileName:Kr.referencingFile.fileName,textSpan:c9(Kr.ref)}});if(Wn.declarations)for(let Kr of Wn.declarations)switch(Kr.kind){case 308:break;case 268:st.has(Kr.getSourceFile().fileName)&&nr.push(jF(Kr.name));break;default:pe.assert(!!(Wn.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let Zr=Wn.exports.get("export=");if(Zr?.declarations)for(let Kr of Zr.declarations){let Dn=Kr.getSourceFile();if(st.has(Dn.fileName)){let hr=po(Kr)&&jo(Kr.left)?Kr.left.expression:yf(Kr)?pe.checkDefined(ep(Kr,95,Dn)):fl(Kr)||Kr;nr.push(jF(hr))}}return nr.length?[{definition:{type:0,symbol:Wn},references:nr}]:E}function V(Wr){return Wr.kind===148&&WB(Wr.parent)&&Wr.parent.operator===148}function M(Wr,Wn,pt){if(lpe(Wr.kind))return Wr.kind===116&&iR(Wr.parent)||Wr.kind===148&&!V(Wr)?void 0:_r(Wn,Wr.kind,pt,Wr.kind===148?V:void 0);if(fv(Wr.parent)&&Wr.parent.name===Wr)return Wt(Wn,pt);if(Ge(Wr)&&dl(Wr.parent))return[{definition:{type:2,node:Wr},references:[jF(Wr)]}];if(T1e(Wr)){let on=nWe(Wr.parent,Wr.text);return on&&Lt(on.parent,on)}else if(Vrt(Wr))return Lt(Wr.parent,Wr);if(rse(Wr))return Fl(Wr,Wn,pt);if(Wr.kind===108)return Zn(Wr)}function ee(Wr,Wn,pt,on,st,nr,Zr){let Kr=Wn&&Ie(Wr,Wn,st,!Tu(Zr))||Wr,Dn=Wn&&Zr.use!==2?pa(Wn,Kr):7,hr=[],En=new Ne(pt,on,Wn?ge(Wn):0,st,nr,Dn,Zr,hr),Ni=!Tu(Zr)||!Kr.declarations?void 0:de(Kr.declarations,k0);if(Ni)Gr(Ni.name,Kr,Ni,En.createSearch(Wn,Wr,void 0),En,!0,!0);else if(Wn&&Wn.kind===90&&Kr.escapedName==="default"&&Kr.parent)qt(Wn,Kr,En),Te(Wn,Kr,{exportingModuleSymbol:Kr.parent,exportKind:1},En);else{let Gi=En.createSearch(Wn,Kr,void 0,{allSearchSymbols:Wn?hc(Kr,Wn,st,Zr.use===2,!!Zr.providePrefixAndSuffixTextForRename,!!Zr.implementations):[Kr]});re(Kr,En,Gi)}return hr}function re(Wr,Wn,pt){let on=Tt(Wr);if(on)it(on,on.getSourceFile(),pt,Wn,!(cl(on)&&!k(Wn.sourceFiles,on)));else for(let st of Wn.sourceFiles)Wn.cancellationToken.throwIfCancellationRequested(),et(st,pt,Wn)}function ge(Wr){switch(Wr.kind){case 177:case 137:return 1;case 80:if(xa(Wr.parent))return pe.assert(Wr.parent.name===Wr),2;default:return 0}}function Ie(Wr,Wn,pt,on){let{parent:st}=Wn;return k0(st)&&on?dt(Wn,Wr,st,pt):J(Wr.declarations,nr=>{if(!nr.parent){if(Wr.flags&33554432)return;pe.fail(`Unexpected symbol at ${pe.formatSyntaxKind(Wn.kind)}: ${pe.formatSymbol(Wr)}`)}return bh(nr.parent)&&AS(nr.parent.parent)?pt.getPropertyOfType(pt.getTypeFromTypeNode(nr.parent.parent),Wr.name):void 0})}let _e;(Wr=>{Wr[Wr.None=0]="None",Wr[Wr.Constructor=1]="Constructor",Wr[Wr.Class=2]="Class"})(_e||(_e={}));function Ee(Wr){if(!(Wr.flags&33555968))return;let Wn=Wr.declarations&&de(Wr.declarations,pt=>!cl(pt)&&!Lh(pt));return Wn&&Wn.symbol}class Ne{constructor(Wn,pt,on,st,nr,Zr,Kr,Dn){this.sourceFiles=Wn,this.sourceFilesSet=pt,this.specialSearchKind=on,this.checker=st,this.cancellationToken=nr,this.searchMeaning=Zr,this.options=Kr,this.result=Dn,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=sse(),this.markSeenReExportRHS=sse(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(Wn){return this.sourceFilesSet.has(Wn.fileName)}getImportSearches(Wn,pt){return this.importTracker||(this.importTracker=e4t(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(Wn,pt,this.options.use===2)}createSearch(Wn,pt,on,st={}){let{text:nr=d2(of(tz(pt)||Ee(pt)||pt)),allSearchSymbols:Zr=[pt]}=st,Kr=pp(nr),Dn=this.options.implementations&&Wn?Cs(Wn,pt,this.checker):void 0;return{symbol:pt,comingFrom:on,text:nr,escapedText:Kr,parents:Dn,allSearchSymbols:Zr,includes:hr=>k(Zr,hr)}}referenceAdder(Wn){let pt=xg(Wn),on=this.symbolIdToReferences[pt];return on||(on=this.symbolIdToReferences[pt]=[],this.result.push({definition:{type:0,symbol:Wn},references:on})),(st,nr)=>on.push(jF(st,nr))}addStringOrCommentReference(Wn,pt){this.result.push({definition:void 0,references:[{kind:0,fileName:Wn,textSpan:pt}]})}markSearchedSymbols(Wn,pt){let on=id(Wn),st=this.sourceFileToSeenSymbols[on]||(this.sourceFileToSeenSymbols[on]=new Set),nr=!1;for(let Zr of pt)nr=Ar(st,xg(Zr))||nr;return nr}}function Te(Wr,Wn,pt,on){let{importSearches:st,singleReferences:nr,indirectUsers:Zr}=on.getImportSearches(Wn,pt);if(nr.length){let Kr=on.referenceAdder(Wn);for(let Dn of nr)Pe(Dn,on)&&Kr(Dn)}for(let[Kr,Dn]of st)Gt(Kr.getSourceFile(),on.createSearch(Kr,Dn,1),on);if(Zr.length){let Kr;switch(pt.exportKind){case 0:Kr=on.createSearch(Wr,Wn,1);break;case 1:Kr=on.options.use===2?void 0:on.createSearch(Wr,Wn,1,{text:"default"});break;case 2:break}if(Kr)for(let Dn of Zr)et(Dn,Kr,on)}}function Ze(Wr,Wn,pt,on,st,nr,Zr,Kr){let Dn=e4t(Wr,new Set(Wr.map(Gi=>Gi.fileName)),Wn,pt),{importSearches:hr,indirectUsers:En,singleReferences:Ni}=Dn(on,{exportKind:Zr?1:0,exportingModuleSymbol:st},!1);for(let[Gi]of hr)Kr(Gi);for(let Gi of Ni)Ir(Gi)&&qm(Gi.parent)&&Kr(Gi);for(let Gi of En)for(let nn of yt(Gi,Zr?"default":nr)){let bn=Wn.getSymbolAtLocation(nn),ds=zt(bn?.declarations,Ht=>!!Gs(Ht,yf));Ir(nn)&&!sS(nn.parent)&&(bn===on||ds)&&Kr(nn)}}s.eachExportReference=Ze;function Pe(Wr,Wn){return Dt(Wr,Wn)?Wn.options.use!==2?!0:!Ir(Wr)&&!sS(Wr.parent)?!1:!(sS(Wr.parent)&&pv(Wr)):!1}function Ke(Wr,Wn){if(Wr.declarations)for(let pt of Wr.declarations){let on=pt.getSourceFile();Gt(on,Wn.createSearch(pt,Wr,0),Wn,Wn.includesSourceFile(on))}}function et(Wr,Wn,pt){_it(Wr).get(Wn.escapedText)!==void 0&&Gt(Wr,Wn,pt)}function Ye(Wr,Wn){return a9(Wr.parent.parent)?Wn.getPropertySymbolOfDestructuringAssignment(Wr):void 0}function Tt(Wr){let{declarations:Wn,flags:pt,parent:on,valueDeclaration:st}=Wr;if(st&&(st.kind===219||st.kind===232))return st;if(!Wn)return;if(pt&8196){let Kr=de(Wn,Dn=>Lb(Dn,2)||hC(Dn));return Kr?KL(Kr,264):void 0}if(Wn.some(Z1e))return;let nr=on&&!(Wr.flags&262144);if(nr&&!(XD(on)&&!on.globalExports))return;let Zr;for(let Kr of Wn){let Dn=XU(Kr);if(Zr&&Zr!==Dn||!Dn||Dn.kind===308&&!Sl(Dn))return;if(Zr=Dn,jA(Zr)){let hr;for(;hr=Jye(Zr);)Zr=hr}}return nr?Zr.getSourceFile():Zr}function at(Wr,Wn,pt,on=pt){return Qe(Wr,Wn,pt,()=>!0,on)||!1}s.isSymbolReferencedInFile=at;function Qe(Wr,Wn,pt,on,st=pt){let nr=We(Wr.parent,Wr.parent.parent)?ma(Wn.getSymbolsOfParameterPropertyDeclaration(Wr.parent,Wr.text)):Wn.getSymbolAtLocation(Wr);if(nr)for(let Zr of yt(pt,nr.name,st)){if(!Ir(Zr)||Zr===Wr||Zr.escapedText!==Wr.escapedText)continue;let Kr=Wn.getSymbolAtLocation(Zr);if(Kr===nr||Wn.getShorthandAssignmentValueSymbol(Zr.parent)===nr||k0(Zr.parent)&&dt(Zr,Kr,Zr.parent,Wn)===nr){let Dn=on(Zr);if(Dn)return Dn}}}s.eachSymbolReferenceInFile=Qe;function Ct(Wr,Wn){return Le(yt(Wn,Wr),st=>!!H7(st)).reduce((st,nr)=>{let Zr=on(nr);return!zt(st.declarationNames)||Zr===st.depth?(st.declarationNames.push(nr),st.depth=Zr):ZrEn===st)&&on(Zr,Dn))return!0}return!1}s.someSignatureUsage=mt;function yt(Wr,Wn,pt=Wr){return Xt(Rt(Wr,Wn,pt),on=>{let st=Ob(Wr,on);return st===Wr?void 0:st})}function Rt(Wr,Wn,pt=Wr){let on=[];if(!Wn||!Wn.length)return on;let st=Wr.text,nr=st.length,Zr=Wn.length,Kr=st.indexOf(Wn,pt.pos);for(;Kr>=0&&!(Kr>pt.end);){let Dn=Kr+Zr;(Kr===0||!l1(st.charCodeAt(Kr-1),99))&&(Dn===nr||!l1(st.charCodeAt(Dn),99))&&on.push(Kr),Kr=st.indexOf(Wn,Kr+Zr+1)}return on}function Lt(Wr,Wn){let pt=Wr.getSourceFile(),on=Wn.text,st=Xt(yt(pt,on,Wr),nr=>nr===Wn||T1e(nr)&&nWe(nr,on)===Wn?jF(nr):void 0);return[{definition:{type:1,node:Wn},references:st}]}function je(Wr,Wn){switch(Wr.kind){case 81:if(j3(Wr.parent))return!0;case 80:return Wr.text.length===Wn.length;case 15:case 11:{let pt=Wr;return pt.text.length===Wn.length&&(iWe(pt)||Mrt(Wr)||yMt(Wr)||Ll(Wr.parent)&&S3(Wr.parent)&&Wr.parent.arguments[1]===Wr||sS(Wr.parent))}case 9:return iWe(Wr)&&Wr.text.length===Wn.length;case 90:return Wn.length===7;default:return!1}}function Wt(Wr,Wn){let pt=jt(Wr,on=>(Wn.throwIfCancellationRequested(),Xt(yt(on,"meta",on),st=>{let nr=st.parent;if(fv(nr))return jF(nr)})));return pt.length?[{definition:{type:2,node:pt[0].node},references:pt}]:void 0}function _r(Wr,Wn,pt,on){let st=jt(Wr,nr=>(pt.throwIfCancellationRequested(),Xt(yt(nr,Vi(Wn),nr),Zr=>{if(Zr.kind===Wn&&(!on||on(Zr)))return jF(Zr)})));return st.length?[{definition:{type:2,node:st[0].node},references:st}]:void 0}function Gt(Wr,Wn,pt,on=!0){return pt.cancellationToken.throwIfCancellationRequested(),it(Wr,Wr,Wn,pt,on)}function it(Wr,Wn,pt,on,st){if(on.markSearchedSymbols(Wn,pt.allSearchSymbols))for(let nr of Rt(Wn,pt.text,Wr))tr(Wn,nr,pt,on,st)}function Dt(Wr,Wn){return!!(QU(Wr)&Wn.searchMeaning)}function tr(Wr,Wn,pt,on,st){let nr=Ob(Wr,Wn);if(!je(nr,pt.text)){!on.options.implementations&&(on.options.findInStrings&&zz(Wr,Wn)||on.options.findInComments&&GMt(Wr,Wn))&&on.addStringOrCommentReference(Wr.fileName,$d(Wn,pt.text.length));return}if(!Dt(nr,on))return;let Zr=on.checker.getSymbolAtLocation(nr);if(!Zr)return;let Kr=nr.parent;if(dy(Kr)&&Kr.propertyName===nr)return;if(k0(Kr)){pe.assert(nr.kind===80||nr.kind===11),Gr(nr,Zr,Kr,pt,on,st);return}if(vY(Kr)&&Kr.isNameFirst&&Kr.typeExpression&&FU(Kr.typeExpression.type)&&Kr.typeExpression.type.jsDocPropertyTags&&B(Kr.typeExpression.type.jsDocPropertyTags)){ur(Kr.typeExpression.type.jsDocPropertyTags,nr,pt,on);return}let Dn=co(pt,Zr,nr,on);if(!Dn){ir(Zr,pt,on);return}switch(on.specialSearchKind){case 0:st&&qt(nr,Dn,on);break;case 1:Yt(nr,Wr,pt,on);break;case 2:Tr(nr,pt,on);break;default:pe.assertNever(on.specialSearchKind)}Bo(nr)&&mg(nr.parent)&&TW(nr.parent.parent.parent)&&(Zr=nr.parent.symbol,!Zr)||ot(nr,Zr,pt,on)}function ur(Wr,Wn,pt,on){let st=on.referenceAdder(pt.symbol);qt(Wn,pt.symbol,on),F(Wr,nr=>{zi(nr.name)&&st(nr.name.left)})}function Gr(Wr,Wn,pt,on,st,nr,Zr){pe.assert(!Zr||!!st.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");let{parent:Kr,propertyName:Dn,name:hr}=pt,En=Kr.parent,Ni=dt(Wr,Wn,pt,st.checker);if(!Zr&&!on.includes(Ni))return;if(Dn?Wr===Dn?(En.moduleSpecifier||Gi(),nr&&st.options.use!==2&&st.markSeenReExportRHS(hr)&&qt(hr,pe.checkDefined(pt.symbol),st)):st.markSeenReExportRHS(Wr)&&Gi():st.options.use===2&&pv(hr)||Gi(),!Tu(st.options)||Zr){let bn=pv(Wr)||pv(pt.name)?1:0,ds=pe.checkDefined(pt.symbol),Ht=t4t(ds,bn,st.checker);Ht&&Te(Wr,ds,Ht,st)}if(on.comingFrom!==1&&En.moduleSpecifier&&!Dn&&!Tu(st.options)){let nn=st.checker.getExportSpecifierLocalTargetSymbol(pt);nn&&Ke(nn,st)}function Gi(){nr&&qt(Wr,Ni,st)}}function dt(Wr,Wn,pt,on){return pr(Wr,pt)&&on.getExportSpecifierLocalTargetSymbol(pt)||Wn}function pr(Wr,Wn){let{parent:pt,propertyName:on,name:st}=Wn;return pe.assert(on===Wr||st===Wr),on?on===Wr:!pt.parent.moduleSpecifier}function ot(Wr,Wn,pt,on){let st=hdn(Wr,Wn,on.checker,pt.comingFrom===1);if(!st)return;let{symbol:nr}=st;st.kind===0?Tu(on.options)||Ke(nr,on):Te(Wr,nr,st.exportInfo,on)}function ir({flags:Wr,valueDeclaration:Wn},pt,on){let st=on.checker.getShorthandAssignmentValueSymbol(Wn),nr=Wn&&fl(Wn);!(Wr&33554432)&&nr&&pt.includes(st)&&qt(nr,st,on)}function qt(Wr,Wn,pt){let{kind:on,symbol:st}="kind"in Wn?Wn:{kind:void 0,symbol:Wn};if(pt.options.use===2&&Wr.kind===90)return;let nr=pt.referenceAdder(st);pt.options.implementations?si(Wr,nr,pt):nr(Wr,on)}function Yt(Wr,Wn,pt,on){spe(Wr)&&qt(Wr,pt.symbol,on);let st=()=>on.referenceAdder(pt.symbol);if(xa(Wr.parent))pe.assert(Wr.kind===90||Wr.parent.name===Wr),mn(pt.symbol,Wn,st());else{let nr=Rg(Wr);nr&&(Zi(nr,st()),An(nr,on))}}function Tr(Wr,Wn,pt){qt(Wr,Wn.symbol,pt);let on=Wr.parent;if(pt.options.use===2||!xa(on))return;pe.assert(on.name===Wr);let st=pt.referenceAdder(Wn.symbol);for(let nr of on.members)VL(nr)&&lg(nr)&&nr.body&&nr.body.forEachChild(function Zr(Kr){Kr.kind===110?st(Kr):!Eu(Kr)&&!xa(Kr)&&Kr.forEachChild(Zr)})}function mn(Wr,Wn,pt){let on=jn(Wr);if(on&&on.declarations)for(let st of on.declarations){let nr=ep(st,137,Wn);pe.assert(st.kind===177&&!!nr),pt(nr)}Wr.exports&&Wr.exports.forEach(st=>{let nr=st.valueDeclaration;if(nr&&nr.kind===175){let Zr=nr.body;Zr&&Qu(Zr,110,Kr=>{spe(Kr)&&pt(Kr)})}})}function jn(Wr){return Wr.members&&Wr.members.get("__constructor")}function Zi(Wr,Wn){let pt=jn(Wr.symbol);if(pt&&pt.declarations)for(let on of pt.declarations){pe.assert(on.kind===177);let st=on.body;st&&Qu(st,108,nr=>{Frt(nr)&&Wn(nr)})}}function Ns(Wr){return!!jn(Wr.symbol)}function An(Wr,Wn){if(Ns(Wr))return;let pt=Wr.symbol,on=Wn.createSearch(void 0,pt,void 0);re(pt,Wn,on)}function si(Wr,Wn,pt){if(KT(Wr)&&Pa(Wr.parent)){Wn(Wr);return}if(Wr.kind!==80)return;Wr.parent.kind===305&&$c(Wr,pt.checker,Wn);let on=ks(Wr);if(on){Wn(on);return}let st=ji(Wr,Kr=>!zi(Kr.parent)&&!uc(Kr.parent)&&!kx(Kr.parent)),nr=st.parent;if(mf(nr)&&nr.type===st&&pt.markSeenContainingTypeReference(nr))if(XT(nr))Zr(nr.initializer);else if(Eu(nr)&&nr.body){let Kr=nr.body;Kr.kind===242?TF(Kr,Dn=>{Dn.expression&&Zr(Dn.expression)}):Zr(Kr)}else(vd(nr)||Xg(nr))&&Zr(nr.expression);function Zr(Kr){Ic(Kr)&&Wn(Kr)}}function ks(Wr){return Ir(Wr)||jo(Wr)?ks(Wr.parent):A_(Wr)?Gs(Wr.parent.parent,Qp(xa,p_)):void 0}function Ic(Wr){switch(Wr.kind){case 218:return Ic(Wr.expression);case 220:case 219:case 211:case 232:case 210:return!0;default:return!1}}function ou(Wr,Wn,pt,on){if(Wr===Wn)return!0;let st=xg(Wr)+","+xg(Wn),nr=pt.get(st);if(nr!==void 0)return nr;pt.set(st,!1);let Zr=!!Wr.declarations&&Wr.declarations.some(Kr=>Y7(Kr).some(Dn=>{let hr=on.getTypeAtLocation(Dn);return!!hr&&!!hr.symbol&&ou(hr.symbol,Wn,pt,on)}));return pt.set(st,Zr),Zr}function Zn(Wr){let Wn=G7(Wr,!1);if(!Wn)return;let pt=256;switch(Wn.kind){case 173:case 172:case 175:case 174:case 177:case 178:case 179:pt&=Zx(Wn),Wn=Wn.parent;break;default:return}let on=Wn.getSourceFile(),st=Xt(yt(on,"super",Wn),nr=>{if(nr.kind!==108)return;let Zr=G7(nr,!1);return Zr&&lg(Zr)===!!pt&&Zr.parent.symbol===Wn.symbol?jF(nr):void 0});return[{definition:{type:0,symbol:Wn.symbol},references:st}]}function ya(Wr){return Wr.kind===80&&Wr.parent.kind===170&&Wr.parent.name===Wr}function Fl(Wr,Wn,pt){let on=s0(Wr,!1,!1),st=256;switch(on.kind){case 175:case 174:if(g2(on)){st&=Zx(on),on=on.parent;break}case 173:case 172:case 177:case 178:case 179:st&=Zx(on),on=on.parent;break;case 308:if(Lm(on)||ya(Wr))return;case 263:case 219:break;default:return}let nr=jt(on.kind===308?Wn:[on.getSourceFile()],Kr=>(pt.throwIfCancellationRequested(),yt(Kr,"this",cl(on)?Kr:on).filter(Dn=>{if(!rse(Dn))return!1;let hr=s0(Dn,!1,!1);if(!bE(hr))return!1;switch(on.kind){case 219:case 263:return on.symbol===hr.symbol;case 175:case 174:return g2(on)&&on.symbol===hr.symbol;case 232:case 264:case 211:return hr.parent&&bE(hr.parent)&&on.symbol===hr.parent.symbol&&lg(hr)===!!st;case 308:return hr.kind===308&&!Lm(hr)&&!ya(Dn)}}))).map(Kr=>jF(Kr));return[{definition:{type:3,node:J(nr,Kr=>Si(Kr.node.parent)?Kr.node:void 0)||Wr},references:nr}]}function ba(Wr,Wn,pt,on){let st=cWe(Wr,pt),nr=jt(Wn,Zr=>(on.throwIfCancellationRequested(),Xt(yt(Zr,Wr.text),Kr=>{if(_A(Kr)&&Kr.text===Wr.text)if(st){let Dn=cWe(Kr,pt);if(st!==pt.getStringType()&&(st===Dn||Oo(Kr,pt)))return jF(Kr,2)}else return HW(Kr)&&!x3(Kr,Zr)?void 0:jF(Kr,2)})));return[{definition:{type:4,node:Wr},references:nr}]}function Oo(Wr,Wn){if(ss(Wr.parent))return Wn.getPropertyOfType(Wn.getTypeAtLocation(Wr.parent.parent),Wr.text)}function hc(Wr,Wn,pt,on,st,nr){let Zr=[];return yr(Wr,Wn,pt,on,!(on&&st),(Kr,Dn,hr)=>{hr&&Pi(Wr)!==Pi(hr)&&(hr=void 0),Zr.push(hr||Dn||Kr)},()=>!nr),Zr}function yr(Wr,Wn,pt,on,st,nr,Zr){let Kr=e2e(Wn);if(Kr){let bn=pt.getShorthandAssignmentValueSymbol(Wn.parent);if(bn&&on)return nr(bn,void 0,void 0,3);let ds=pt.getContextualType(Kr.parent),Ht=ds&&J(rOe(Kr,pt,ds,!0),fr=>Gi(fr,4));if(Ht)return Ht;let cn=Ye(Wn,pt),wt=cn&&nr(cn,void 0,void 0,4);if(wt)return wt;let xe=bn&&nr(bn,void 0,void 0,3);if(xe)return xe}let Dn=_(Wn,Wr,pt);if(Dn){let bn=nr(Dn,void 0,void 0,1);if(bn)return bn}let hr=Gi(Wr);if(hr)return hr;if(Wr.valueDeclaration&&We(Wr.valueDeclaration,Wr.valueDeclaration.parent)){let bn=pt.getSymbolsOfParameterPropertyDeclaration(Ma(Wr.valueDeclaration,Si),Wr.name);return pe.assert(bn.length===2&&!!(bn[0].flags&1)&&!!(bn[1].flags&4)),Gi(Wr.flags&1?bn[1]:bn[0])}let En=yp(Wr,282);if(!on||En&&!En.propertyName){let bn=En&&pt.getExportSpecifierLocalTargetSymbol(En);if(bn){let ds=nr(bn,void 0,void 0,1);if(ds)return ds}}if(!on){let bn;return st?bn=Z1e(Wn.parent)?_We(pt,Wn.parent):void 0:bn=nn(Wr,pt),bn&&Gi(bn,4)}if(pe.assert(on),st){let bn=nn(Wr,pt);return bn&&Gi(bn,4)}function Gi(bn,ds){return J(pt.getRootSymbols(bn),Ht=>nr(bn,Ht,void 0,ds)||(Ht.parent&&Ht.parent.flags&96&&Zr(Ht)?hn(Ht.parent,Ht.name,pt,cn=>nr(bn,Ht,cn,ds)):void 0))}function nn(bn,ds){let Ht=yp(bn,209);if(Ht&&Z1e(Ht))return _We(ds,Ht)}}function hn(Wr,Wn,pt,on){let st=new Set;return nr(Wr);function nr(Zr){if(!(!(Zr.flags&96)||!Wy(st,Zr)))return J(Zr.declarations,Kr=>J(Y7(Kr),Dn=>{let hr=pt.getTypeAtLocation(Dn),En=hr.symbol&&pt.getPropertyOfType(hr,Wn);return En&&J(pt.getRootSymbols(En),on)||hr.symbol&&nr(hr.symbol)}))}}function Pi(Wr){return Wr.valueDeclaration?!!(l_(Wr.valueDeclaration)&256):!1}function co(Wr,Wn,pt,on){let{checker:st}=on;return yr(Wn,pt,st,!1,on.options.use!==2||!!on.options.providePrefixAndSuffixTextForRename,(nr,Zr,Kr,Dn)=>(Kr&&Pi(Wn)!==Pi(Kr)&&(Kr=void 0),Wr.includes(Kr||Zr||nr)?{symbol:Zr&&!(aI(nr)&6)?Zr:nr,kind:Dn}:void 0),nr=>!(Wr.parents&&!Wr.parents.some(Zr=>ou(nr.parent,Zr,on.inheritsFromCache,st))))}function pa(Wr,Wn){let pt=QU(Wr),{declarations:on}=Wn;if(on){let st;do{st=pt;for(let nr of on){let Zr=eWe(nr);Zr&pt&&(pt|=Zr)}}while(pt!==st)}return pt}s.getIntersectingMeaningFromDeclarations=pa;function Pa(Wr){return Wr.flags&33554432?!(p_(Wr)||PB(Wr)):D7(Wr)?XT(Wr):Gd(Wr)?!!Wr.body:xa(Wr)||I3(Wr)}function $c(Wr,Wn,pt){let on=Wn.getSymbolAtLocation(Wr),st=Wn.getShorthandAssignmentValueSymbol(on.valueDeclaration);if(st)for(let nr of st.getDeclarations())eWe(nr)&1&&pt(nr)}s.getReferenceEntriesForShorthandPropertyAssignment=$c;function Qu(Wr,Wn,pt){Lu(Wr,on=>{on.kind===Wn&&pt(on),Qu(on,Wn,pt)})}function Rg(Wr){return ybe(rWe(Wr).parent)}function Cs(Wr,Wn,pt){let on=tse(Wr)?Wr.parent:void 0,st=on&&pt.getTypeAtLocation(on.expression),nr=Xt(st&&(st.isUnionOrIntersection()?st.types:st.symbol===Wn.parent?void 0:[st]),Zr=>Zr.symbol&&Zr.symbol.flags&96?Zr.symbol:void 0);return nr.length===0?void 0:nr}function Tu(Wr){return Wr.use===2&&Wr.providePrefixAndSuffixTextForRename}})(lq||(lq={}));var mse={};o(mse,{createDefinitionInfo:()=>u2e,getDefinitionAndBoundSpan:()=>a9s,getDefinitionAtPosition:()=>Tdn,getReferenceAtPosition:()=>Ndn,getTypeDefinitionAtPosition:()=>s9s});function Tdn(s,c,g,d,h){var _;let S=Ndn(c,g,s),R=S&&[A9s(S.reference.fileName,S.fileName,S.unverified)]||E;if(S?.file)return R;let T=Ob(c,g);if(T===c)return;let{parent:O}=T,V=s.getTypeChecker();if(T.kind===164||Ir(T)&&b9e(O)&&O.tagName===T){let Ee=r9s(V,T);if(Ee!==void 0||T.kind!==164)return Ee||E}if(T1e(T)){let Ee=nWe(T.parent,T.text);return Ee?[o4t(V,Ee,"label",T.text,void 0)]:void 0}switch(T.kind){case 90:if(!Bde(T.parent))break;case 84:let Ee=ji(T.parent,Sde);if(Ee)return[g9s(Ee,c)];break}let M;switch(T.kind){case 107:case 135:case 127:M=Gd;let Ee=ji(T,M);return Ee?[c4t(V,Ee)]:void 0}if(Ge(T)&&dl(T.parent)){let Ee=T.parent.parent,{symbol:Ne,failedAliasResolution:Te}=gst(Ee,V,h),Ze=Le(Ee.members,dl),Pe=Ne?V.symbolToString(Ne,Ee):"",Ke=T.getSourceFile();return lt(Ze,et=>{let{pos:Ye}=hv(et);return Ye=Yu(Ke.text,Ye),o4t(V,et,"constructor","static {}",Pe,!1,Te,{start:Ye,length:6})})}let{symbol:ee,failedAliasResolution:re}=gst(T,V,h),ge=T;if(d&&re){let Ee=F([T,...ee?.declarations||E],Te=>ji(Te,Jge)),Ne=Ee&&UY(Ee);Ne&&({symbol:ee,failedAliasResolution:re}=gst(Ne,V,h),ge=Ne)}if(!ee&&CWe(ge)){let Ee=(_=s.getResolvedModuleFromModuleSpecifier(ge,c))==null?void 0:_.resolvedModule;if(Ee)return[{name:ge.text,fileName:Ee.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:$d(0,0),failedAliasResolution:re,isAmbient:MC(Ee.resolvedFileName),unverified:ge!==T}]}if(hg(T)&&(MI(O)||sh(O))&&(ee=O.symbol),!ee)return Nn(R,c9s(T,V));if(d&&ue(ee.declarations,Ee=>Ee.getSourceFile().fileName===c.fileName))return;let Ie=p9s(V,T);if(Ie&&!(nI(T.parent)&&f9s(Ie))){let Ee=c4t(V,Ie,re),Ne=Ze=>Ze!==Ie;if(V.getRootSymbols(ee).some(Ze=>t9s(Ze,Ie))){if(!Tc(Ie))return[Ee];Ne=Ze=>Ze!==Ie&&(mm(Ze)||wd(Ze))}let Te=Rpe(V,ee,T,re,Ne)||E;return T.kind===108?[Ee,...Te]:[...Te,Ee]}if(T.parent.kind===305){let Ee=V.getShorthandAssignmentValueSymbol(ee.valueDeclaration),Ne=Ee?.declarations?Ee.declarations.map(Te=>u2e(Te,V,Ee,T,!1,re)):E;return Nn(Ne,Rdn(V,T))}if(PI(T)&&mg(O)&&$m(O.parent)&&T===(O.propertyName||O.name)){let Ee=F1e(T),Ne=V.getTypeAtLocation(O.parent);return Ee===void 0?E:jt(Ne.isUnion()?Ne.types:[Ne],Te=>{let Ze=Te.getProperty(Ee);return Ze&&Rpe(V,Ze,T)})}let _e=Rdn(V,T);return Nn(R,_e.length?_e:Rpe(V,ee,T,re))}function t9s(s,c){var g;return s===c.symbol||s===c.symbol.parent||zm(c.parent)||!SF(c.parent)&&s===((g=Gs(c.parent,bE))==null?void 0:g.symbol)}function Rdn(s,c){let g=e2e(c);if(g){let d=g&&s.getContextualType(g.parent);if(d)return jt(rOe(g,s,d,!1),h=>Rpe(s,h,c))}return E}function r9s(s,c){let g=ji(c,MI);if(!(g&&g.name))return;let d=ji(g,xa);if(!d)return;let h=kB(d);if(!h)return;let _=JA(h.expression),S=wd(_)?_.symbol:s.getSymbolAtLocation(_);if(!S)return;let R=tm(g)?s.getTypeOfSymbol(S):s.getDeclaredTypeOfSymbol(S),T;if(Un(g.name)){let O=s.getSymbolAtLocation(g.name);if(!O)return;J7(O)?T=de(s.getPropertiesOfType(R),V=>V.escapedName===O.escapedName):T=s.getPropertyOfType(R,Bc(O.escapedName))}else T=s.getPropertyOfType(R,Bc(BW(g.name)));if(T)return Rpe(s,T,c)}function Ndn(s,c,g){var d,h;let _=g2e(s.referencedFiles,c);if(_){let T=g.getSourceFileFromReference(s,_);return T&&{reference:_,fileName:T.fileName,file:T,unverified:!1}}let S=g2e(s.typeReferenceDirectives,c);if(S){let T=(d=g.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S,s))==null?void 0:d.resolvedTypeReferenceDirective,O=T&&g.getSourceFile(T.resolvedFileName);return O&&{reference:S,fileName:O.fileName,file:O,unverified:!1}}let R=g2e(s.libReferenceDirectives,c);if(R){let T=g.getLibFileFromReference(R);return T&&{reference:R,fileName:T.fileName,file:T,unverified:!1}}if(s.imports.length||s.moduleAugmentations.length){let T=ise(s,c),O;if(CWe(T)&&Xr(T.text)&&(O=g.getResolvedModuleFromModuleSpecifier(T,s))){let V=(h=O.resolvedModule)==null?void 0:h.resolvedFileName,M=V||IE(Mo(s.fileName),T.text);return{file:g.getSourceFile(M),fileName:M,reference:{pos:T.getStart(),end:T.getEnd(),fileName:T.text},unverified:!V}}}}var Ddn=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function n9s(s,c){let g=c.symbol.name;if(!Ddn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.target.symbol}function kdn(s,c){if(!c.aliasSymbol)return!1;let g=c.aliasSymbol.name;if(!Ddn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.aliasSymbol}function i9s(s,c,g,d){var h,_;if(la(c)&4&&n9s(s,c))return l2e(s.getTypeArguments(c)[0],s,g,d);if(kdn(s,c)&&c.aliasTypeArguments)return l2e(c.aliasTypeArguments[0],s,g,d);if(la(c)&32&&c.target&&kdn(s,c.target)){let S=(_=(h=c.aliasSymbol)==null?void 0:h.declarations)==null?void 0:_[0];if(S&&PB(S)&&oh(S.type)&&S.type.typeArguments)return l2e(s.getTypeAtLocation(S.type.typeArguments[0]),s,g,d)}return[]}function s9s(s,c,g){let d=Ob(c,g);if(d===c)return;if(fv(d.parent)&&d.parent.name===d)return l2e(s.getTypeAtLocation(d.parent),s,d.parent,!1);let{symbol:h,failedAliasResolution:_}=gst(d,s,!1);if(hg(d)&&(MI(d.parent)||sh(d.parent))&&(h=d.parent.symbol,_=!1),!h)return;let S=s.getTypeOfSymbolAtLocation(h,d),R=o9s(h,S,s),T=R&&l2e(R,s,d,_),[O,V]=T&&T.length!==0?[R,T]:[S,l2e(S,s,d,_)];return V.length?[...i9s(s,O,d,_),...V]:!(h.flags&111551)&&h.flags&788968?Rpe(s,VC(h,s),d,_):void 0}function l2e(s,c,g,d){return jt(s.isUnion()&&!(s.flags&32)?s.types:[s],h=>h.symbol&&Rpe(c,h.symbol,g,d))}function o9s(s,c,g){if(c.symbol===s||s.valueDeclaration&&c.symbol&&nc(s.valueDeclaration)&&s.valueDeclaration.initializer===c.symbol.valueDeclaration){let d=c.getCallSignatures();if(d.length===1)return g.getReturnTypeOfSignature(ma(d))}}function a9s(s,c,g){let d=Tdn(s,c,g);if(!d||d.length===0)return;let h=g2e(c.referencedFiles,g)||g2e(c.typeReferenceDirectives,g)||g2e(c.libReferenceDirectives,g);if(h)return{definitions:d,textSpan:c9(h)};let _=Ob(c,g),S=$d(_.getStart(),_.getWidth());return{definitions:d,textSpan:S}}function c9s(s,c){return Xt(c.getIndexInfosAtLocation(s),g=>g.declaration&&c4t(c,g.declaration))}function gst(s,c,g){let d=c.getSymbolAtLocation(s),h=!1;if(d?.declarations&&d.flags&2097152&&!g&&l9s(s,d.declarations[0])){let _=c.getAliasedSymbol(d);if(_.declarations)return{symbol:_};h=!0}return{symbol:d,failedAliasResolution:h}}function l9s(s,c){return s.kind!==80&&(s.kind!==11||!sS(s.parent))?!1:s.parent===c?!0:c.kind!==275}function u9s(s){if(!L7(s))return!1;let c=ji(s,g=>zm(g)?!0:L7(g)?!1:"quit");return!!c&&oI(c)===5}function Rpe(s,c,g,d,h){let _=h!==void 0?Le(c.declarations,h):c.declarations,S=!h&&(O()||V());if(S)return S;let R=Le(_,ee=>!u9s(ee)),T=zt(R)?R:_;return lt(T,ee=>u2e(ee,s,c,g,!1,d));function O(){if(c.flags&32&&!(c.flags&19)&&(spe(g)||g.kind===137)){let ee=de(_,xa);return ee&&M(ee.members,!0)}}function V(){return Zrt(g)||Hrt(g)?M(_,!1):void 0}function M(ee,re){if(!ee)return;let ge=ee.filter(re?Tc:Eu),Ie=ge.filter(_e=>!!_e.body);return ge.length?Ie.length!==0?Ie.map(_e=>u2e(_e,s,c,g)):[u2e(Ei(ge),s,c,g,!1,d)]:void 0}}function u2e(s,c,g,d,h,_){let S=c.symbolToString(g),R=g9.getSymbolKind(c,g,d),T=g.parent?c.symbolToString(g.parent,d):"";return o4t(c,s,R,S,T,h,_)}function o4t(s,c,g,d,h,_,S,R){let T=c.getSourceFile();if(!R){let O=fl(c)||c;R=Yy(O,T)}return{fileName:T.fileName,textSpan:R,kind:g,name:d,containerKind:void 0,containerName:h,...zp.toContextSpan(R,T,zp.getContextNode(c)),isLocal:!a4t(s,c),isAmbient:!!(c.flags&33554432),unverified:_,failedAliasResolution:S}}function g9s(s,c){let g=zp.getContextNode(s),d=Yy(n4t(g)?g.start:g,c);return{fileName:c.fileName,textSpan:d,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...zp.toContextSpan(d,c,g),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function a4t(s,c){if(s.isDeclarationVisible(c))return!0;if(!c.parent)return!1;if(XT(c.parent)&&c.parent.initializer===c)return a4t(s,c.parent);switch(c.kind){case 173:case 178:case 179:case 175:if(Lb(c,2))return!1;case 177:case 304:case 305:case 211:case 232:case 220:case 219:return a4t(s,c.parent);default:return!1}}function c4t(s,c,g){return u2e(c,s,c.symbol,c,!1,g)}function g2e(s,c){return de(s,g=>nl(g,c))}function A9s(s,c,g){return{fileName:c,textSpan:RA(0,0),kind:"script",name:s,containerName:void 0,containerKind:void 0,unverified:g}}function d9s(s){let c=ji(s,d=>!tse(d)),g=c?.parent;return g&&SF(g)&&cAe(g)===c?g:void 0}function p9s(s,c){let g=d9s(c),d=g&&s.getResolvedSignature(g);return Gs(d&&d.declaration,h=>Eu(h)&&!Z_(h))}function f9s(s){switch(s.kind){case 177:case 186:case 180:case 181:return!0;default:return!1}}var Ast={};o(Ast,{provideInlayHints:()=>C9s});var I9s=s=>new RegExp(`^\\s?/\\*\\*?\\s?${s}\\s?\\*\\/\\s?$`);function h9s(s){return s.includeInlayParameterNameHints==="literals"||s.includeInlayParameterNameHints==="all"}function m9s(s){return s.includeInlayParameterNameHints==="literals"}function l4t(s){return s.interactiveInlayHints===!0}function C9s(s){let{file:c,program:g,span:d,cancellationToken:h,preferences:_}=s,S=c.text,R=g.getCompilerOptions(),T=S1(c,_),O=g.getTypeChecker(),V=[];return M(c),V;function M(Gt){if(!(!Gt||Gt.getFullWidth()===0)){switch(Gt.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 175:case 220:h.throwIfCancellationRequested()}if(nS(d,Gt.pos,Gt.getFullWidth())&&!(uc(Gt)&&!A_(Gt)))return _.includeInlayVariableTypeHints&&nc(Gt)||_.includeInlayPropertyDeclarationTypeHints&&pi(Gt)?Ne(Gt):_.includeInlayEnumMemberValueHints&&YF(Gt)?_e(Gt):h9s(_)&&(Ll(Gt)||C2(Gt))?Te(Gt):(_.includeInlayFunctionParameterTypeHints&&Gd(Gt)&&sde(Gt)&&Tt(Gt),_.includeInlayFunctionLikeReturnTypeHints&&ee(Gt)&&et(Gt)),Lu(Gt,M)}}function ee(Gt){return gA(Gt)||jA(Gt)||ah(Gt)||gu(Gt)||wg(Gt)}function re(Gt,it,Dt,tr){let ur=`${tr?"...":""}${Gt}`,Gr;l4t(_)?(Gr=[_r(ur,it),{text:":"}],ur=""):ur+=":",V.push({text:ur,position:Dt,kind:"Parameter",whitespaceAfter:!0,displayParts:Gr})}function ge(Gt,it){V.push({text:typeof Gt=="string"?`: ${Gt}`:"",displayParts:typeof Gt=="string"?void 0:[{text:": "},...Gt],position:it,kind:"Type",whitespaceBefore:!0})}function Ie(Gt,it){V.push({text:`= ${Gt}`,position:it,kind:"Enum",whitespaceBefore:!0})}function _e(Gt){if(Gt.initializer)return;let it=O.getConstantValue(Gt);it!==void 0&&Ie(it.toString(),Gt.end)}function Ee(Gt){return Gt.symbol&&Gt.symbol.flags&1536}function Ne(Gt){if(Gt.initializer===void 0&&!(pi(Gt)&&!(O.getTypeAtLocation(Gt).flags&1))||Nu(Gt.name)||nc(Gt)&&!Wt(Gt)||Zh(Gt))return;let Dt=O.getTypeAtLocation(Gt);if(Ee(Dt))return;let tr=yt(Dt);if(tr){let ur=typeof tr=="string"?tr:tr.map(dt=>dt.text).join("");if(_.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&Yp(Gt.name.getText(),ur))return;ge(tr,Gt.name.end)}}function Te(Gt){let it=Gt.arguments;if(!it||!it.length)return;let Dt=O.getResolvedSignature(Gt);if(Dt===void 0)return;let tr=0;for(let ur of it){let Gr=JA(ur);if(m9s(_)&&!Ke(Gr)){tr++;continue}let dt=0;if(cf(Gr)){let ot=O.getTypeAtLocation(Gr.expression);if(O.isTupleType(ot)){let{elementFlags:ir,fixedLength:qt}=ot.target;if(qt===0)continue;let Yt=Se(ir,mn=>!(mn&1));(Yt<0?qt:Yt)>0&&(dt=Yt<0?qt:Yt)}}let pr=O.getParameterIdentifierInfoAtPosition(Dt,tr);if(tr=tr+(dt||1),pr){let{parameter:ot,parameterName:ir,isRestParameter:qt}=pr;if(!(_.includeInlayParameterNameHintsWhenArgumentMatchesName||!Ze(Gr,ir))&&!qt)continue;let Tr=Bc(ir);if(Pe(Gr,Tr))continue;re(Tr,ot,ur.getStart(),qt)}}}function Ze(Gt,it){return Ir(Gt)?Gt.text===it:jo(Gt)?Gt.name.text===it:!1}function Pe(Gt,it){if(!qh(it,Hg(R),zne(c.scriptKind)))return!1;let Dt=CE(S,Gt.pos);if(!Dt?.length)return!1;let tr=I9s(it);return zt(Dt,ur=>tr.test(S.substring(ur.pos,ur.end)))}function Ke(Gt){switch(Gt.kind){case 225:{let it=Gt.operand;return FL(it)||Ir(it)&&yz(it.escapedText)}case 112:case 97:case 106:case 15:case 229:return!0;case 80:{let it=Gt.escapedText;return je(it)||yz(it)}}return FL(Gt)}function et(Gt){if(gA(Gt)&&!ep(Gt,21,c)||Zb(Gt)||!Gt.body)return;let Dt=O.getSignatureFromDeclaration(Gt);if(!Dt)return;let tr=O.getTypePredicateOfSignature(Dt);if(tr?.type){let dt=Rt(tr);if(dt){ge(dt,Ye(Gt));return}}let ur=O.getReturnTypeOfSignature(Dt);if(Ee(ur))return;let Gr=yt(ur);Gr&&ge(Gr,Ye(Gt))}function Ye(Gt){let it=ep(Gt,22,c);return it?it.end:Gt.parameters.end}function Tt(Gt){let it=O.getSignatureFromDeclaration(Gt);if(!it)return;let Dt=0;for(let tr of Gt.parameters)Wt(tr)&&at(tr,DF(tr)?it.thisParameter:it.parameters[Dt]),!DF(tr)&&Dt++}function at(Gt,it){if(Zh(Gt)||it===void 0)return;let tr=Qe(it);tr!==void 0&&ge(tr,Gt.questionToken?Gt.questionToken.end:Gt.name.end)}function Qe(Gt){let it=Gt.valueDeclaration;if(!it||!Si(it))return;let Dt=O.getTypeOfSymbolAtLocation(Gt,it);if(!Ee(Dt))return yt(Dt)}function Ct(Gt){let Dt=EQ();return bW(tr=>{let ur=O.typeToTypeNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typenode"),Dt.writeNode(4,ur,c,tr)})}function mt(Gt){let Dt=EQ();return bW(tr=>{let ur=O.typePredicateToTypePredicateNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typePredicateNode"),Dt.writeNode(4,ur,c,tr)})}function yt(Gt){if(!l4t(_))return Ct(Gt);let Dt=O.typeToTypeNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typeNode"),Lt(Dt)}function Rt(Gt){if(!l4t(_))return mt(Gt);let Dt=O.typePredicateToTypePredicateNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typenode"),Lt(Dt)}function Lt(Gt){let it=[];return Dt(Gt),it;function Dt(dt){var pr,ot;if(!dt)return;let ir=Vi(dt.kind);if(ir){it.push({text:ir});return}if(FL(dt)){it.push({text:Gr(dt)});return}switch(dt.kind){case 80:pe.assertNode(dt,Ir);let qt=Vo(dt),Yt=dt.symbol&&dt.symbol.declarations&&dt.symbol.declarations.length&&fl(dt.symbol.declarations[0]);Yt?it.push(_r(qt,Yt)):it.push({text:qt});break;case 167:pe.assertNode(dt,zi),Dt(dt.left),it.push({text:"."}),Dt(dt.right);break;case 183:pe.assertNode(dt,BE),dt.assertsModifier&&it.push({text:"asserts "}),Dt(dt.parameterName),dt.type&&(it.push({text:" is "}),Dt(dt.type));break;case 184:pe.assertNode(dt,oh),Dt(dt.typeName),dt.typeArguments&&(it.push({text:"<"}),ur(dt.typeArguments,", "),it.push({text:">"}));break;case 169:pe.assertNode(dt,Ds),dt.modifiers&&ur(dt.modifiers," "),Dt(dt.name),dt.constraint&&(it.push({text:" extends "}),Dt(dt.constraint)),dt.default&&(it.push({text:" = "}),Dt(dt.default));break;case 170:pe.assertNode(dt,Si),dt.modifiers&&ur(dt.modifiers," "),dt.dotDotDotToken&&it.push({text:"..."}),Dt(dt.name),dt.questionToken&&it.push({text:"?"}),dt.type&&(it.push({text:": "}),Dt(dt.type));break;case 186:pe.assertNode(dt,sk),it.push({text:"new "}),tr(dt),it.push({text:" => "}),Dt(dt.type);break;case 187:pe.assertNode(dt,Pw),it.push({text:"typeof "}),Dt(dt.exprName),dt.typeArguments&&(it.push({text:"<"}),ur(dt.typeArguments,", "),it.push({text:">"}));break;case 188:pe.assertNode(dt,bh),it.push({text:"{"}),dt.members.length&&(it.push({text:" "}),ur(dt.members,"; "),it.push({text:" "})),it.push({text:"}"});break;case 189:pe.assertNode(dt,WF),Dt(dt.elementType),it.push({text:"[]"});break;case 190:pe.assertNode(dt,Mw),it.push({text:"["}),ur(dt.elements,", "),it.push({text:"]"});break;case 203:pe.assertNode(dt,tR),dt.dotDotDotToken&&it.push({text:"..."}),Dt(dt.name),dt.questionToken&&it.push({text:"?"}),it.push({text:": "}),Dt(dt.type);break;case 191:pe.assertNode(dt,n9),Dt(dt.type),it.push({text:"?"});break;case 192:pe.assertNode(dt,i9),it.push({text:"..."}),Dt(dt.type);break;case 193:pe.assertNode(dt,AS),ur(dt.types," | ");break;case 194:pe.assertNode(dt,_f),ur(dt.types," & ");break;case 195:pe.assertNode(dt,h2),Dt(dt.checkType),it.push({text:" extends "}),Dt(dt.extendsType),it.push({text:" ? "}),Dt(dt.trueType),it.push({text:" : "}),Dt(dt.falseType);break;case 196:pe.assertNode(dt,rR),it.push({text:"infer "}),Dt(dt.typeParameter);break;case 197:pe.assertNode(dt,_v),it.push({text:"("}),Dt(dt.type),it.push({text:")"});break;case 199:pe.assertNode(dt,WB),it.push({text:`${Vi(dt.operator)} `}),Dt(dt.type);break;case 200:pe.assertNode(dt,yv),Dt(dt.objectType),it.push({text:"["}),Dt(dt.indexType),it.push({text:"]"});break;case 201:pe.assertNode(dt,OB),it.push({text:"{ "}),dt.readonlyToken&&(dt.readonlyToken.kind===40?it.push({text:"+"}):dt.readonlyToken.kind===41&&it.push({text:"-"}),it.push({text:"readonly "})),it.push({text:"["}),Dt(dt.typeParameter),dt.nameType&&(it.push({text:" as "}),Dt(dt.nameType)),it.push({text:"]"}),dt.questionToken&&(dt.questionToken.kind===40?it.push({text:"+"}):dt.questionToken.kind===41&&it.push({text:"-"}),it.push({text:"?"})),it.push({text:": "}),dt.type&&Dt(dt.type),it.push({text:"; }"});break;case 202:pe.assertNode(dt,wE),Dt(dt.literal);break;case 185:pe.assertNode(dt,Z_),tr(dt),it.push({text:" => "}),Dt(dt.type);break;case 206:pe.assertNode(dt,qm),dt.isTypeOf&&it.push({text:"typeof "}),it.push({text:"import("}),Dt(dt.argument),dt.assertions&&(it.push({text:", { assert: "}),ur(dt.assertions.assertClause.elements,", "),it.push({text:" }"})),it.push({text:")"}),dt.qualifier&&(it.push({text:"."}),Dt(dt.qualifier)),dt.typeArguments&&(it.push({text:"<"}),ur(dt.typeArguments,", "),it.push({text:">"}));break;case 172:pe.assertNode(dt,ss),(pr=dt.modifiers)!=null&&pr.length&&(ur(dt.modifiers," "),it.push({text:" "})),Dt(dt.name),dt.questionToken&&it.push({text:"?"}),dt.type&&(it.push({text:": "}),Dt(dt.type));break;case 182:pe.assertNode(dt,N0),it.push({text:"["}),ur(dt.parameters,", "),it.push({text:"]"}),dt.type&&(it.push({text:": "}),Dt(dt.type));break;case 174:pe.assertNode(dt,Il),(ot=dt.modifiers)!=null&&ot.length&&(ur(dt.modifiers," "),it.push({text:" "})),Dt(dt.name),dt.questionToken&&it.push({text:"?"}),tr(dt),dt.type&&(it.push({text:": "}),Dt(dt.type));break;case 180:pe.assertNode(dt,Tg),tr(dt),dt.type&&(it.push({text:": "}),Dt(dt.type));break;case 181:pe.assertNode(dt,im),it.push({text:"new "}),tr(dt),dt.type&&(it.push({text:": "}),Dt(dt.type));break;case 208:pe.assertNode(dt,m2),it.push({text:"["}),ur(dt.elements,", "),it.push({text:"]"});break;case 207:pe.assertNode(dt,$m),it.push({text:"{"}),dt.elements.length&&(it.push({text:" "}),ur(dt.elements,", "),it.push({text:" "})),it.push({text:"}"});break;case 209:pe.assertNode(dt,mg),Dt(dt.name);break;case 225:pe.assertNode(dt,D0),it.push({text:Vi(dt.operator)}),Dt(dt.operand);break;case 204:pe.assertNode(dt,nR),Dt(dt.head),dt.templateSpans.forEach(Dt);break;case 16:pe.assertNode(dt,dQ),it.push({text:Gr(dt)});break;case 205:pe.assertNode(dt,SN),Dt(dt.type),Dt(dt.literal);break;case 17:pe.assertNode(dt,vie),it.push({text:Gr(dt)});break;case 18:pe.assertNode(dt,_de),it.push({text:Gr(dt)});break;case 198:pe.assertNode(dt,Px),it.push({text:"this"});break;case 168:pe.assertNode(dt,Un),it.push({text:"["}),Dt(dt.expression),it.push({text:"]"});break;default:pe.failBadSyntaxKind(dt)}}function tr(dt){dt.typeParameters&&(it.push({text:"<"}),ur(dt.typeParameters,", "),it.push({text:">"})),it.push({text:"("}),ur(dt.parameters,", "),it.push({text:")"})}function ur(dt,pr){dt.forEach((ot,ir)=>{ir>0&&it.push({text:pr}),Dt(ot)})}function Gr(dt){switch(dt.kind){case 11:return T===0?`'${jT(dt.text,39)}'`:`"${jT(dt.text,34)}"`;case 16:case 17:case 18:{let pr=dt.rawText??obe(jT(dt.text,96));switch(dt.kind){case 16:return"`"+pr+"${";case 17:return"}"+pr+"${";case 18:return"}"+pr+"`"}}}return dt.text}}function je(Gt){return Gt==="undefined"}function Wt(Gt){if((jL(Gt)||nc(Gt)&&sI(Gt))&&Gt.initializer){let it=JA(Gt.initializer);return!(Ke(it)||C2(it)||ag(it)||vd(it))}return!0}function _r(Gt,it){let Dt=it.getSourceFile();return{text:Gt,span:Yy(it,Dt),file:Dt.fileName}}}var A5={};o(A5,{getDocCommentTemplateAtPosition:()=>N9s,getJSDocParameterNameCompletionDetails:()=>R9s,getJSDocParameterNameCompletions:()=>T9s,getJSDocTagCompletionDetails:()=>Wdn,getJSDocTagCompletions:()=>w9s,getJSDocTagNameCompletionDetails:()=>B9s,getJSDocTagNameCompletions:()=>v9s,getJsDocCommentsFromDeclarations:()=>_9s,getJsDocTagsFromDeclarations:()=>E9s});var xdn=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","import","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"],Gdn,Fdn;function _9s(s,c){let g=[];return pnt(s,d=>{for(let h of b9s(d)){let _=aR(h)&&h.tags&&de(h.tags,R=>R.kind===328&&(R.tagName.escapedText==="inheritDoc"||R.tagName.escapedText==="inheritdoc"));if(h.comment===void 0&&!_||aR(h)&&d.kind!==347&&d.kind!==339&&h.tags&&h.tags.some(R=>R.kind===347||R.kind===339)&&!h.tags.some(R=>R.kind===342||R.kind===343))continue;let S=h.comment?Cse(h.comment,c):[];_&&_.comment&&(S=S.concat(Cse(_.comment,c))),k(g,S,y9s)||g.push(S)}}),Sr(fe(g,[cse()]))}function y9s(s,c){return Sc(s,c,(g,d)=>g.kind===d.kind&&g.text===d.text)}function b9s(s){switch(s.kind){case 342:case 349:return[s];case 339:case 347:return[s,s.parent];case 324:if(xie(s.parent))return[s.parent.parent];default:return Xye(s)}}function E9s(s,c){let g=[];return pnt(s,d=>{let h=Nx(d);if(!(h.some(_=>_.kind===347||_.kind===339)&&!h.some(_=>_.kind===342||_.kind===343)))for(let _ of h)g.push({name:_.tagName.text,text:Vdn(_,c)}),g.push(...Zdn(Ldn(_),c))}),g}function Zdn(s,c){return jt(s,g=>Nn([{name:g.tagName.text,text:Vdn(g,c)}],Zdn(Ldn(g),c)))}function Ldn(s){return vY(s)&&s.isNameFirst&&s.typeExpression&&FU(s.typeExpression.type)?s.typeExpression.type.jsDocPropertyTags:void 0}function Cse(s,c){return typeof s=="string"?[IS(s)]:jt(s,g=>g.kind===322?[IS(g.text)]:QMt(g,c))}function Vdn(s,c){let{comment:g,kind:d}=s,h=S9s(d);switch(d){case 350:let R=s.typeExpression;return R?_(R):g===void 0?void 0:Cse(g,c);case 330:return _(s.class);case 329:return _(s.class);case 346:let T=s,O=[];if(T.constraint&&O.push(IS(T.constraint.getText())),B(T.typeParameters)){B(O)&&O.push(TI());let M=T.typeParameters[T.typeParameters.length-1];F(T.typeParameters,ee=>{O.push(h(ee.getText())),M!==ee&&O.push(F0(28),TI())})}return g&&O.push(TI(),...Cse(g,c)),O;case 345:case 351:return _(s.typeExpression);case 347:case 339:case 349:case 342:case 348:let{name:V}=s;return V?_(V):g===void 0?void 0:Cse(g,c);default:return g===void 0?void 0:Cse(g,c)}function _(R){return S(R.getText())}function S(R){return g?R.match(/^https?$/)?[IS(R),...Cse(g,c)]:[h(R),TI(),...Cse(g,c)]:[IS(R)]}}function S9s(s){switch(s){case 342:return OMt;case 349:return PMt;case 346:return HMt;case 347:case 339:return MMt;default:return IS}}function v9s(){return Gdn||(Gdn=lt(xdn,s=>({name:s,kind:"keyword",kindModifiers:"",sortText:cq.SortText.LocationPriority})))}var B9s=Wdn;function w9s(){return Fdn||(Fdn=lt(xdn,s=>({name:`@${s}`,kind:"keyword",kindModifiers:"",sortText:cq.SortText.LocationPriority})))}function Wdn(s){return{name:s,kind:"",kindModifiers:"",displayParts:[IS(s)],documentation:E,tags:void 0,codeActions:void 0}}function T9s(s){if(!Ir(s.name))return E;let c=s.name.text,g=s.parent,d=g.parent;return Eu(d)?Xt(d.parameters,h=>{if(!Ir(h.name))return;let _=h.name.text;if(!(g.tags.some(S=>S!==s&&dS(S)&&Ir(S.name)&&S.name.escapedText===_)||c!==void 0&&!Ac(_,c)))return{name:_,kind:"parameter",kindModifiers:"",sortText:cq.SortText.LocationPriority}}):[]}function R9s(s){return{name:s,kind:"parameter",kindModifiers:"",displayParts:[IS(s)],documentation:E,tags:void 0,codeActions:void 0}}function N9s(s,c,g,d){let h=Jc(c,g),_=ji(h,aR);if(_&&(_.comment!==void 0||B(_.tags)))return;let S=h.getStart(c);if(!_&&S0;if(Ie&&!Ne){let Te=_e+s+re+" * ",Ze=S===g?s+re:"";return{newText:Te+s+Ie+re+Ee+Ze,caretOffset:Te.length}}return{newText:_e+Ee,caretOffset:3}}function D9s(s,c){let{text:g}=s,d=QB(c,s),h=d;for(;h<=c&&hu(g.charCodeAt(h));h++);return g.slice(d,h)}function k9s(s,c,g,d){return s.map(({name:h,dotDotDotToken:_},S)=>{let R=h.kind===80?h.text:"param"+S;return`${g} * @param ${c?_?"{...any} ":"{any} ":""}${R}${d}`}).join("")}function x9s(s,c){return`${s} * @returns${c}`}function G9s(s,c){return Rw(s,g=>u4t(g,c))}function u4t(s,c){switch(s.kind){case 263:case 219:case 175:case 177:case 174:case 220:let g=s;return{commentOwner:s,parameters:g.parameters,hasReturn:hOe(g,c)};case 304:return u4t(s.initializer,c);case 264:case 265:case 267:case 307:case 266:return{commentOwner:s};case 172:{let h=s;return h.type&&Z_(h.type)?{commentOwner:s,parameters:h.type.parameters,hasReturn:hOe(h.type,c)}:{commentOwner:s}}case 244:{let _=s.declarationList.declarations,S=_.length===1&&_[0].initializer?F9s(_[0].initializer):void 0;return S?{commentOwner:s,parameters:S.parameters,hasReturn:hOe(S,c)}:{commentOwner:s}}case 308:return"quit";case 268:return s.parent.kind===268?void 0:{commentOwner:s};case 245:return u4t(s.expression,c);case 227:{let h=s;return oI(h)===0?"quit":Eu(h.right)?{commentOwner:s,parameters:h.right.parameters,hasReturn:hOe(h.right,c)}:{commentOwner:s}}case 173:let d=s.initializer;if(d&&(jA(d)||gA(d)))return{commentOwner:s,parameters:d.parameters,hasReturn:hOe(d,c)}}}function hOe(s,c){return!!c?.generateReturnInDocTemplate&&(Z_(s)||gA(s)&&un(s.body)||Gd(s)&&s.body&&eg(s.body)&&!!TF(s.body,g=>g))}function F9s(s){for(;s.kind===218;)s=s.expression;switch(s.kind){case 219:case 220:return s;case 232:return de(s.members,Tc)}}var dst={};o(dst,{mapCode:()=>Z9s});function Z9s(s,c,g,d,h,_){return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},S=>{let R=c.map(O=>L9s(s,O)),T=g&&Sr(g);for(let O of R)V9s(s,S,O,T)})}function L9s(s,c){let g=[{parse:()=>Oz("__mapcode_content_nodes.ts",c,s.languageVersion,!0,s.scriptKind),body:_=>_.statements},{parse:()=>Oz("__mapcode_class_content_nodes.ts",`class __class { ${c} -}`,s.languageVersion,!0,s.scriptKind),body:_=>_.statements[0].members}],d=[];for(let{parse:_,body:S}of g){let R=_(),T=S(R);if(T.length&&R.parseDiagnostics.length===0)return T;T.length&&d.push({sourceFile:R,body:T})}d.sort((_,S)=>_.sourceFile.parseDiagnostics.length-S.sourceFile.parseDiagnostics.length);let{body:h}=d[0];return h}function L9s(s,c,g,d){MI(g[0])||Dx(g[0])?V9s(s,c,g,d):W9s(s,c,g,d)}function V9s(s,c,g,d){let h;if(!d||!d.length?h=de(s.statements,Qp(xa,d_)):h=F(d,S=>ji(Jc(s,S.start),Qp(xa,d_))),!h)return;let _=h.members.find(S=>g.some(R=>mOe(R,S)));if(_){let S=be(h.members,R=>g.some(T=>mOe(T,R)));F(g,fst),c.replaceNodeRangeWithNodes(s,_,S,g);return}F(g,fst),c.insertNodesAfter(s,h.members[h.members.length-1],g)}function W9s(s,c,g,d){if(!d?.length){c.insertNodesAtEndOfFile(s,g,!1);return}for(let _ of d){let S=ji(Jc(s,_.start),R=>Qp(eg,al)(R)&&zt(R.statements,T=>g.some(O=>mOe(O,T))));if(S){let R=S.statements.find(T=>g.some(O=>mOe(O,T)));if(R){let T=be(S.statements,O=>g.some(V=>mOe(V,O)));F(g,fst),c.replaceNodeRangeWithNodes(s,R,T,g);return}}}let h=s.statements;for(let _ of d){let S=ji(Jc(s,_.start),eg);if(S){h=S.statements;break}}F(g,fst),c.insertNodesAfter(s,h[h.length-1],g)}function mOe(s,c){var g,d,h,_,S,R;return s.kind!==c.kind?!1:s.kind===177?s.kind===c.kind:sh(s)&&sh(c)?s.name.getText()===c.name.getText():H3(s)&&H3(c)||G$e(s)&&G$e(c)?s.expression.getText()===c.expression.getText():Y3(s)&&Y3(c)?((g=s.initializer)==null?void 0:g.getText())===((d=c.initializer)==null?void 0:d.getText())&&((h=s.incrementor)==null?void 0:h.getText())===((_=c.incrementor)==null?void 0:_.getText())&&((S=s.condition)==null?void 0:S.getText())===((R=c.condition)==null?void 0:R.getText()):VL(s)&&VL(c)?s.expression.getText()===c.expression.getText()&&s.initializer.getText()===c.initializer.getText():HW(s)&&HW(c)?s.label.getText()===c.label.getText():s.getText()===c.getText()}function fst(s){Gdn(s),s.parent=void 0}function Gdn(s){s.pos=-1,s.end=-1,s.forEachChild(Gdn)}var g5={};o(g5,{compareImportsOrRequireStatements:()=>m4t,compareModuleSpecifiers:()=>iVs,getImportDeclarationInsertionIndex:()=>eVs,getImportSpecifierInsertionIndex:()=>tVs,getNamedImportSpecifierComparerWithDetection:()=>$9s,getOrganizeImportsStringComparerWithDetection:()=>q9s,organizeImports:()=>O9s,testCoalesceExports:()=>nVs,testCoalesceImports:()=>rVs});function O9s(s,c,g,d,h,_){let S=xo.ChangeTracker.fromContext({host:g,formatContext:c,preferences:h}),R=_==="SortAndCombine"||_==="All",T=R,O=_==="RemoveUnused"||_==="All",V=s.statements.filter(Yf),M=A4t(s,V),{comparersToTest:ee,typeOrdersToTest:re}=g4t(h),ge=ee[0],Ie={moduleSpecifierComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,namedImportComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,typeOrder:h.organizeImportsTypeOrder};if(typeof h.organizeImportsIgnoreCase!="boolean"&&({comparer:Ie.moduleSpecifierComparer}=Ldn(M,ee)),!Ie.typeOrder||typeof h.organizeImportsIgnoreCase!="boolean"){let Te=I4t(V,ee,re);if(Te){let{namedImportComparer:Ze,typeOrder:Pe}=Te;Ie.namedImportComparer=Ie.namedImportComparer??Ze,Ie.typeOrder=Ie.typeOrder??Pe}}M.forEach(Te=>Ee(Te,Ie)),_!=="RemoveUnused"&&M9s(s).forEach(Te=>Ne(Te,Ie.namedImportComparer));for(let Te of s.statements.filter(a_)){if(!Te.body)continue;if(A4t(s,Te.body.statements.filter(Yf)).forEach(Pe=>Ee(Pe,Ie)),_!=="RemoveUnused"){let Pe=Te.body.statements.filter(Vh);Ne(Pe,Ie.namedImportComparer)}}return S.getChanges();function _e(Te,Ze){if(B(Te)===0)return;ti(Te[0],1024);let Pe=T?Yn(Te,Ye=>COe(Ye.moduleSpecifier)):[Te],Ke=R?bo(Pe,(Ye,Tt)=>p4t(Ye[0].moduleSpecifier,Tt[0].moduleSpecifier,Ie.moduleSpecifierComparer??ge)):Pe,et=jt(Ke,Ye=>COe(Ye[0].moduleSpecifier)||Ye[0].moduleSpecifier===void 0?Ze(Ye):Ye);if(et.length===0)S.deleteNodes(s,Te,{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include},!0);else{let Ye={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include,suffix:JF(g,c.options)};S.replaceNodeWithNodes(s,Te[0],et,Ye);let Tt=S.nodeHasTrailingComment(s,Te[0],Ye);S.deleteNodes(s,Te.slice(1),{trailingTriviaOption:xo.TrailingTriviaOption.Include},Tt)}}function Ee(Te,Ze){let Pe=Ze.moduleSpecifierComparer??ge,Ke=Ze.namedImportComparer??ge,et=Ze.typeOrder??"last",Ye=d2e({organizeImportsTypeOrder:et},Ke);_e(Te,at=>(O&&(at=H9s(at,s,d)),T&&(at=Fdn(at,Pe,Ye,s)),R&&(at=bo(at,(Qe,Ct)=>m4t(Qe,Ct,Pe))),at))}function Ne(Te,Ze){let Pe=d2e(h,Ze);_e(Te,Ke=>Zdn(Ke,Pe))}}function g4t(s){return{comparersToTest:typeof s.organizeImportsIgnoreCase=="boolean"?[h4t(s,s.organizeImportsIgnoreCase)]:[h4t(s,!0),h4t(s,!1)],typeOrdersToTest:s.organizeImportsTypeOrder?[s.organizeImportsTypeOrder]:["last","inline","first"]}}function A4t(s,c){let g=Rb(s.languageVersion,!1,s.languageVariant),d=[],h=0;for(let _ of c)d[h]&&P9s(s,_,g)&&h++,d[h]||(d[h]=[]),d[h].push(_);return d}function P9s(s,c,g){let d=c.getFullStart(),h=c.getStart();g.setText(s.text,d,h-d);let _=0;for(;g.getTokenStart()=2))return!0;return!1}function M9s(s){let c=[],g=s.statements,d=B(g),h=0,_=0;for(;hA4t(s,S))}function H9s(s,c,g){let d=g.getTypeChecker(),h=g.getCompilerOptions(),_=d.getJsxNamespace(c),S=d.getJsxFragmentFactory(c),R=!!(c.transformFlags&2),T=[];for(let V of s){let{importClause:M,moduleSpecifier:ee}=V;if(!M){T.push(V);continue}let{name:re,namedBindings:ge}=M;if(re&&!O(re)&&(re=void 0),ge)if(Px(ge))O(ge.name)||(ge=void 0);else{let Ie=ge.elements.filter(_e=>O(_e.name));Ie.length{if(S.attributes){let R=S.attributes.token+" ";for(let T of bo(S.attributes.elements,(O,V)=>Ca(O.name.text,V.name.text)))R+=T.name.text+":",R+=CA(T.value)?`"${T.value.text}"`:T.value.getText()+" ";return R}return""}),_=[];for(let S in h){let R=h[S],{importWithoutClause:T,typeOnlyImports:O,regularImports:V}=Y9s(R);T&&_.push(T);for(let M of[V,O]){let ee=M===O,{defaultImports:re,namespaceImports:ge,namedImports:Ie}=M;if(!ee&&re.length===1&&ge.length===1&&Ie.length===0){let Ye=re[0];_.push(A2e(Ye,Ye.importClause.name,ge[0].importClause.namedBindings));continue}let _e=bo(ge,(Ye,Tt)=>c(Ye.importClause.namedBindings.name.text,Tt.importClause.namedBindings.name.text));for(let Ye of _e)_.push(A2e(Ye,void 0,Ye.importClause.namedBindings));let Ee=Nc(re),Ne=Nc(Ie),Te=Ee??Ne;if(!Te)continue;let Ze,Pe=[];if(re.length===1)Ze=re[0].importClause.name;else for(let Ye of re)Pe.push(me.createImportSpecifier(!1,me.createIdentifier("default"),Ye.importClause.name));Pe.push(...J9s(Ie));let Ke=me.createNodeArray(bo(Pe,g),Ne?.importClause.namedBindings.elements.hasTrailingComma),et=Ke.length===0?Ze?void 0:me.createNamedImports(E):Ne?me.updateNamedImports(Ne.importClause.namedBindings,Ke):me.createNamedImports(Ke);d&&et&&Ne?.importClause.namedBindings&&!D3(Ne.importClause.namedBindings,d)&&ti(et,2),ee&&Ze&&et?(_.push(A2e(Te,Ze,void 0)),_.push(A2e(Ne??Te,void 0,et))):_.push(A2e(Te,Ze,et))}}return _}function Zdn(s,c){if(s.length===0)return s;let{exportWithoutClause:g,namedExports:d,typeOnlyExports:h}=S(s),_=[];g&&_.push(g);for(let R of[d,h]){if(R.length===0)continue;let T=[];T.push(...jt(R,M=>M.exportClause&&bv(M.exportClause)?M.exportClause.elements:E));let O=bo(T,c),V=R[0];_.push(me.updateExportDeclaration(V,V.modifiers,V.isTypeOnly,V.exportClause&&(bv(V.exportClause)?me.updateNamedExports(V.exportClause,O):me.updateNamespaceExport(V.exportClause,V.exportClause.name)),V.moduleSpecifier,V.attributes))}return _;function S(R){let T,O=[],V=[];for(let M of R)M.exportClause===void 0?T=T||M:M.isTypeOnly?V.push(M):O.push(M);return{exportWithoutClause:T,namedExports:O,typeOnlyExports:V}}}function A2e(s,c,g){return me.updateImportDeclaration(s,s.modifiers,me.updateImportClause(s.importClause,s.importClause.phaseModifier,c,g),s.moduleSpecifier,s.attributes)}function d4t(s,c,g,d){switch(d?.organizeImportsTypeOrder){case"first":return Hl(c.isTypeOnly,s.isTypeOnly)||g(s.name.text,c.name.text);case"inline":return g(s.name.text,c.name.text);default:return Hl(s.isTypeOnly,c.isTypeOnly)||g(s.name.text,c.name.text)}}function p4t(s,c,g){let d=s===void 0?void 0:COe(s),h=c===void 0?void 0:COe(c);return Hl(d===void 0,h===void 0)||Hl(Xr(d),Xr(h))||g(d,h)}function Q9s(s){return s.map(c=>COe(f4t(c))||"")}function f4t(s){var c;switch(s.kind){case 272:return(c=Gs(s.moduleReference,MF))==null?void 0:c.expression;case 273:return s.moduleSpecifier;case 244:return s.declarationList.declarations[0].initializer.arguments[0]}}function X9s(s,c){let g=Lg(c)&&c.text;return Xs(g)&&zt(s.moduleAugmentations,d=>Lg(d)&&d.text===g)}function J9s(s){return jt(s,c=>lt(U9s(c),g=>g.name&&g.propertyName&&vF(g.name)===vF(g.propertyName)?me.updateImportSpecifier(g,g.isTypeOnly,void 0,g.name):g))}function U9s(s){var c;return(c=s.importClause)!=null&&c.namedBindings&&BN(s.importClause.namedBindings)?s.importClause.namedBindings.elements:void 0}function Ldn(s,c){let g=[];return s.forEach(d=>{g.push(Q9s(d))}),Wdn(g,c)}function I4t(s,c,g){let d=!1,h=s.filter(T=>{var O,V;let M=(V=Gs((O=T.importClause)==null?void 0:O.namedBindings,BN))==null?void 0:V.elements;return M?.length?(!d&&M.some(ee=>ee.isTypeOnly)&&M.some(ee=>!ee.isTypeOnly)&&(d=!0),!0):!1});if(h.length===0)return;let _=h.map(T=>{var O,V;return(V=Gs((O=T.importClause)==null?void 0:O.namedBindings,BN))==null?void 0:V.elements}).filter(T=>T!==void 0);if(!d||g.length===0){let T=Wdn(_.map(O=>O.map(V=>V.name.text)),c);return{namedImportComparer:T.comparer,typeOrder:g.length===1?g[0]:void 0,isSorted:T.isSorted}}let S={first:1/0,last:1/0,inline:1/0},R={first:c[0],last:c[0],inline:c[0]};for(let T of c){let O={first:0,last:0,inline:0};for(let V of _)for(let M of g)O[M]=(O[M]??0)+Vdn(V,(ee,re)=>d4t(ee,re,T,{organizeImportsTypeOrder:M}));for(let V of g){let M=V;O[M]0&&g++;return g}function Wdn(s,c){let g,d=1/0;for(let h of c){let _=0;for(let S of s){if(S.length<=1)continue;let R=Vdn(S,h);_+=R}_d4t(d,h,g,s)}function $9s(s,c,g){let{comparersToTest:d,typeOrdersToTest:h}=g4t(c),_=I4t([s],d,h),S=d2e(c,d[0]),R;if(typeof c.organizeImportsIgnoreCase!="boolean"||!c.organizeImportsTypeOrder){if(_){let{namedImportComparer:T,typeOrder:O,isSorted:V}=_;R=V,S=d2e({organizeImportsTypeOrder:O},T)}else if(g){let T=I4t(g.statements.filter(Yf),d,h);if(T){let{namedImportComparer:O,typeOrder:V,isSorted:M}=T;R=M,S=d2e({organizeImportsTypeOrder:V},O)}}}return{specifierComparer:S,isSorted:R}}function eVs(s,c,g){let d=Oc(s,c,Zl,(h,_)=>m4t(h,_,g));return d<0?~d:d}function tVs(s,c,g){let d=Oc(s,c,Zl,g);return d<0?~d:d}function m4t(s,c,g){return p4t(f4t(s),f4t(c),g)||K9s(s,c)}function rVs(s,c,g,d){let h=_Oe(c),_=d2e({organizeImportsTypeOrder:d?.organizeImportsTypeOrder},h);return Fdn(s,h,_,g)}function nVs(s,c,g){return Zdn(s,(h,_)=>d4t(h,_,_Oe(c),{organizeImportsTypeOrder:g?.organizeImportsTypeOrder??"last"}))}function iVs(s,c,g){let d=_Oe(!!g);return p4t(s,c,d)}var Ist={};o(Ist,{collectElements:()=>sVs});function sVs(s,c){let g=[];return oVs(s,c,g),aVs(s,g),g.sort((d,h)=>d.textSpan.start-h.textSpan.start),g}function oVs(s,c,g){let d=40,h=0,_=s.statements,S=_.length;for(;h1&&d.push(yOe(_,S,"comment"))}}function Mdn(s,c,g,d){t9(s)||C4t(s.pos,c,g,d)}function yOe(s,c,g){return lq(RA(s,c),g)}function lVs(s,c){switch(s.kind){case 242:if(Eu(s.parent))return uVs(s.parent,s,c);switch(s.parent.kind){case 247:case 250:case 251:case 249:case 246:case 248:case 255:case 300:return V(s.parent);case 259:let re=s.parent;if(re.tryBlock===s)return V(s.parent);if(re.finallyBlock===s){let ge=ep(re,98,c);if(ge)return V(ge)}default:return lq(Hy(s,c),"code")}case 269:return V(s.parent);case 264:case 232:case 265:case 267:case 270:case 188:case 207:return V(s);case 190:return V(s,!1,!Pw(s.parent),23);case 297:case 298:return M(s.statements);case 211:return O(s);case 210:return O(s,23);case 285:return _(s);case 289:return S(s);case 286:case 287:return R(s.attributes);case 229:case 15:return T(s);case 208:return V(s,!1,!mg(s.parent),23);case 220:return h(s);case 214:return d(s);case 218:return ee(s);case 276:case 280:case 301:return g(s)}function g(re){if(!re.elements.length)return;let ge=ep(re,19,c),Ie=ep(re,20,c);if(!(!ge||!Ie||SE(ge.pos,Ie.pos,c)))return hst(ge,Ie,re,c,!1,!1)}function d(re){if(!re.arguments.length)return;let ge=ep(re,21,c),Ie=ep(re,22,c);if(!(!ge||!Ie||SE(ge.pos,Ie.pos,c)))return hst(ge,Ie,re,c,!1,!0)}function h(re){if(eg(re.body)||dI(re.body)||SE(re.body.getFullStart(),re.body.getEnd(),c))return;let ge=RA(re.body.getFullStart(),re.body.getEnd());return lq(ge,"code",Hy(re))}function _(re){let ge=RA(re.openingElement.getStart(c),re.closingElement.getEnd()),Ie=re.openingElement.tagName.getText(c),_e="<"+Ie+">...";return lq(ge,"code",ge,!1,_e)}function S(re){let ge=RA(re.openingFragment.getStart(c),re.closingFragment.getEnd());return lq(ge,"code",ge,!1,"<>...")}function R(re){if(re.properties.length!==0)return yOe(re.getStart(c),re.getEnd(),"code")}function T(re){if(!(re.kind===15&&re.text.length===0))return yOe(re.getStart(c),re.getEnd(),"code")}function O(re,ge=19){return V(re,!1,!YI(re.parent)&&!Ll(re.parent),ge)}function V(re,ge=!1,Ie=!0,_e=19,Ee=_e===19?20:24){let Ne=ep(s,_e,c),Te=ep(s,Ee,c);return Ne&&Te&&hst(Ne,Te,re,c,ge,Ie)}function M(re){return re.length?lq(a9(re),"code"):void 0}function ee(re){if(SE(re.getStart(),re.getEnd(),c))return;let ge=RA(re.getStart(),re.getEnd());return lq(ge,"code",Hy(re))}}function uVs(s,c,g){let d=gVs(s,c,g),h=ep(c,20,g);return d&&h&&hst(d,h,s,g,s.kind!==220)}function hst(s,c,g,d,h=!1,_=!0){let S=RA(_?s.getFullStart():s.getStart(d),c.getEnd());return lq(S,"code",Hy(g,d),h)}function lq(s,c,g=s,d=!1,h="..."){return{textSpan:s,kind:c,hintSpan:g,bannerText:h,autoCollapse:d}}function gVs(s,c,g){if(GAe(s.parameters,g)){let d=ep(s,21,g);if(d)return d}return ep(c,19,g)}var bOe={};o(bOe,{getRenameInfo:()=>AVs,nodeIsEligibleForRename:()=>Ydn});function AVs(s,c,g,d){let h=lWe(Wb(c,g));if(Ydn(h)){let _=dVs(h,s.getTypeChecker(),c,s,d);if(_)return _}return mst(Z.You_cannot_rename_this_element)}function dVs(s,c,g,d,h){let _=c.getSymbolAtLocation(s);if(!_){if(CA(s)){let ee=cWe(s,c);if(ee&&(ee.flags&128||ee.flags&1048576&&ue(ee.types,re=>!!(re.flags&128))))return _4t(s.text,s.text,"string","",s,g)}else if(Ort(s)){let ee=Fp(s);return _4t(ee,ee,"label","",s,g)}return}let{declarations:S}=_;if(!S||S.length===0)return;if(S.some(ee=>pVs(d,ee)))return mst(Z.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(Ir(s)&&s.escapedText==="default"&&_.parent&&_.parent.flags&1536)return;if(CA(s)&&O7(s))return h.allowRenameOfImportPath?IVs(s,g,_):void 0;let R=fVs(g,_,c,h);if(R)return mst(R);let T=u9.getSymbolKind(c,_,s),O=XMt(s)||I1(s)&&s.parent.kind===168?A2(g2(s)):void 0,V=O||c.symbolToString(_),M=O||c.getFullyQualifiedName(_);return _4t(V,M,T,u9.getSymbolModifiers(c,_),s,g)}function pVs(s,c){let g=c.getSourceFile();return s.isSourceFileDefaultLibrary(g)&&cA(g.fileName,".d.ts")}function fVs(s,c,g,d){if(!d.providePrefixAndSuffixTextForRename&&c.flags&2097152){let S=c.declarations&&de(c.declarations,R=>Ay(R));S&&!S.propertyName&&(c=g.getAliasedSymbol(c))}let{declarations:h}=c;if(!h)return;let _=Hdn(s.path);if(_===void 0)return zt(h,S=>M1e(S.getSourceFile().path))?Z.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(let S of h){let R=Hdn(S.getSourceFile().path);if(R){let T=Math.min(_.length,R.length);for(let O=0;O<=T;O++)if(Ca(_[O],R[O])!==0)return Z.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function Hdn(s){let c=kp(s),g=c.lastIndexOf("node_modules");if(g!==-1)return c.slice(0,g+2)}function IVs(s,c,g){if(!Xr(s.text))return mst(Z.You_cannot_rename_a_module_via_a_global_import);let d=g.declarations&&de(g.declarations,al);if(!d)return;let h=di(s.text,"/index")||di(s.text,"/index.js")?void 0:Bo(a0(d.fileName),"/index"),_=h===void 0?d.fileName:h,S=h===void 0?"module":"directory",R=s.text.lastIndexOf("/")+1,T=$d(s.getStart(c)+1+R,s.text.length-R);return{canRename:!0,fileToRename:_,kind:S,displayName:_,fullDisplayName:s.text,kindModifiers:"",triggerSpan:T}}function _4t(s,c,g,d,h,_){return{canRename:!0,fileToRename:void 0,kind:g,displayName:s,fullDisplayName:c,kindModifiers:d,triggerSpan:hVs(h,_)}}function mst(s){return{canRename:!1,localizedErrorMessage:Bu(s)}}function hVs(s,c){let g=s.getStart(c),d=s.getWidth(c);return CA(s)&&(g+=1,d-=2),$d(g,d)}function Ydn(s){switch(s.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return iWe(s);default:return!1}}var p2e={};o(p2e,{getArgumentInfoForCompletions:()=>bVs,getSignatureHelpItems:()=>mVs});function mVs(s,c,g,d,h){let _=s.getTypeChecker(),S=ope(c,g);if(!S)return;let R=!!d&&d.kind==="characterTyped";if(R&&(jz(c,g,S)||s9(c,g)))return;let T=!!d&&d.kind==="invoked",O=FVs(S,g,c,_,T);if(!O)return;h.throwIfCancellationRequested();let V=CVs(O,_,c,S,R);return h.throwIfCancellationRequested(),V?_.runWithCancellationToken(h,M=>V.kind===0?qdn(V.candidates,V.resolvedSignature,O,c,M):LVs(V.symbol,O,c,M)):s0(c)?yVs(O,s,h):void 0}function CVs({invocation:s,argumentCount:c},g,d,h,_){switch(s.kind){case 0:{if(_&&!_Vs(h,s.node,d))return;let S=[],R=g.getResolvedSignatureForSignatureHelp(s.node,S,c);return S.length===0?void 0:{kind:0,candidates:S,resolvedSignature:R}}case 1:{let{called:S}=s;if(_&&!Qdn(h,d,Ir(S)?S.parent:S))return;let R=jrt(S,c,g);if(R.length!==0)return{kind:0,candidates:R,resolvedSignature:ma(R)};let T=g.getSymbolAtLocation(S);return T&&{kind:1,symbol:T}}case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return pe.assertNever(s)}}function _Vs(s,c,g){if(!gv(c))return!1;let d=c.getChildren(g);switch(s.kind){case 21:return k(d,s);case 28:{let h=aWe(s);return!!h&&k(d,h)}case 30:return Qdn(s,g,c.expression);default:return!1}}function yVs(s,c,g){if(s.invocation.kind===2)return;let d=jdn(s.invocation),h=jo(d)?d.name.text:void 0,_=c.getTypeChecker();return h===void 0?void 0:J(c.getSourceFiles(),S=>J(S.getNamedDeclarations().get(h),R=>{let T=R.symbol&&_.getTypeOfSymbolAtLocation(R.symbol,R),O=T&&T.getCallSignatures();if(O&&O.length)return _.runWithCancellationToken(g,V=>qdn(O,O[0],s,S,V,!0))}))}function Qdn(s,c,g){let d=s.getFullStart(),h=s.parent;for(;h;){let _=Vm(d,c,h,!0);if(_)return uy(g,_);h=h.parent}return pe.fail("Could not find preceding token")}function bVs(s,c,g,d){let h=Jdn(s,c,g,d);return!h||h.isTypeParameterList||h.invocation.kind!==0?void 0:{invocation:h.invocation.node,argumentCount:h.argumentCount,argumentIndex:h.argumentIndex}}function Xdn(s,c,g,d){let h=EVs(s,g,d);if(!h)return;let{list:_,argumentIndex:S}=h,R=DVs(d,_),T=xVs(_,g);return{list:_,argumentIndex:S,argumentCount:R,argumentsSpan:T}}function EVs(s,c,g){if(s.kind===30||s.kind===21)return{list:ZVs(s.parent,s,c),argumentIndex:0};{let d=aWe(s);return d&&{list:d,argumentIndex:NVs(g,d,s)}}}function Jdn(s,c,g,d){let{parent:h}=s;if(gv(h)){let _=h,S=Xdn(s,c,g,d);if(!S)return;let{list:R,argumentIndex:T,argumentCount:O,argumentsSpan:V}=S;return{isTypeParameterList:!!h.typeArguments&&h.typeArguments.pos===R.pos,invocation:{kind:0,node:_},argumentsSpan:V,argumentIndex:T,argumentCount:O}}else{if(MW(s)&&QI(h))return k1e(s,c,g)?b4t(h,0,g):void 0;if(AQ(s)&&h.parent.kind===216){let _=h,S=_.parent;pe.assert(_.kind===229);let R=k1e(s,c,g)?0:1;return b4t(S,R,g)}else if(wie(h)&&QI(h.parent.parent)){let _=h,S=h.parent.parent;if(Cde(s)&&!k1e(s,c,g))return;let R=_.parent.templateSpans.indexOf(_),T=kVs(R,s,c,g);return b4t(S,T,g)}else if(nI(h)){let _=h.attributes.pos,S=Yu(g.text,h.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:h},argumentsSpan:$d(_,S-_),argumentIndex:0,argumentCount:1}}else{let _=zrt(s,g);if(_){let{called:S,nTypeArguments:R}=_,T={kind:1,called:S},O=RA(S.getStart(g),s.end);return{isTypeParameterList:!0,invocation:T,argumentsSpan:O,argumentIndex:R,argumentCount:R+1}}return}}}function SVs(s,c,g,d){return vVs(s,c,g,d)||Jdn(s,c,g,d)}function Udn(s){return po(s.parent)?Udn(s.parent):s}function y4t(s){return po(s.left)?y4t(s.left)+1:2}function vVs(s,c,g,d){let h=BVs(s);if(h===void 0)return;let _=wVs(h,g,c,d);if(_===void 0)return;let{contextualType:S,argumentIndex:R,argumentCount:T,argumentsSpan:O}=_,V=S.getNonNullableType(),M=V.symbol;if(M===void 0)return;let ee=li(V.getCallSignatures());return ee===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:ee,node:s,symbol:TVs(M)},argumentsSpan:O,argumentIndex:R,argumentCount:T}}function BVs(s){switch(s.kind){case 21:case 28:return s;default:return ji(s.parent,c=>Si(c)?!0:mg(c)||$m(c)||h2(c)?!1:"quit")}}function wVs(s,c,g,d){let{parent:h}=s;switch(h.kind){case 218:case 175:case 219:case 220:let _=Xdn(s,g,c,d);if(!_)return;let{argumentIndex:S,argumentCount:R,argumentsSpan:T}=_,O=gu(h)?d.getContextualTypeForObjectLiteralElement(h):d.getContextualType(h);return O&&{contextualType:O,argumentIndex:S,argumentCount:R,argumentsSpan:T};case 227:{let V=Udn(h),M=d.getContextualType(V),ee=s.kind===21?0:y4t(h)-1,re=y4t(V);return M&&{contextualType:M,argumentIndex:ee,argumentCount:re,argumentsSpan:Hy(h)}}default:return}}function TVs(s){return s.name==="__type"&&J(s.declarations,c=>{var g;return F_(c)?(g=Gs(c.parent,yE))==null?void 0:g.symbol:void 0})||s}function RVs(s,c){let g=c.getTypeAtLocation(s.expression);if(c.isTupleType(g)){let{elementFlags:d,fixedLength:h}=g.target;if(h===0)return 0;let _=Se(d,S=>!(S&1));return _<0?h:_}return 0}function NVs(s,c,g){return Kdn(s,c,g)}function DVs(s,c){return Kdn(s,c,void 0)}function Kdn(s,c,g){let d=c.getChildren(),h=0,_=!1;for(let S of d){if(g&&S===g)return!_&&S.kind===28&&h++,h;if(cf(S)){h+=RVs(S,s),_=!0;continue}if(S.kind!==28){h++,_=!0;continue}if(_){_=!1;continue}h++}return g?h:d.length&&Ei(d).kind===28?h+1:h}function kVs(s,c,g,d){return pe.assert(g>=c.getStart(),"Assumed 'position' could not occur before node."),yge(c)?k1e(c,g,d)?0:s+2:s+1}function b4t(s,c,g){let d=MW(s.template)?1:s.template.templateSpans.length+1;return c!==0&&pe.assertLessThan(c,d),{isTypeParameterList:!1,invocation:{kind:0,node:s},argumentsSpan:GVs(s,g),argumentIndex:c,argumentCount:d}}function xVs(s,c){let g=s.getFullStart(),d=Yu(c.text,s.getEnd(),!1);return $d(g,d-g)}function GVs(s,c){let g=s.template,d=g.getStart(),h=g.getEnd();return g.kind===229&&Ei(g.templateSpans).literal.getFullWidth()===0&&(h=Yu(c.text,h,!1)),$d(d,h-d)}function FVs(s,c,g,d,h){for(let _=s;!al(_)&&(h||!eg(_));_=_.parent){pe.assert(uy(_.parent,_),"Not a subspan",()=>`Child: ${pe.formatSyntaxKind(_.kind)}, parent: ${pe.formatSyntaxKind(_.parent.kind)}`);let S=SVs(_,c,g,d);if(S)return S}}function ZVs(s,c,g){let d=s.getChildren(g),h=d.indexOf(c);return pe.assert(h>=0&&d.length>h+1),d[h+1]}function jdn(s){return s.kind===0?aAe(s.node):s.called}function zdn(s){return s.kind===0?s.node:s.kind===1?s.called:s.node}var EOe=70246400;function qdn(s,c,{isTypeParameterList:g,argumentCount:d,argumentsSpan:h,invocation:_,argumentIndex:S},R,T,O){var V;let M=zdn(_),ee=_.kind===2?_.symbol:T.getSymbolAtLocation(jdn(_))||O&&((V=c.declaration)==null?void 0:V.symbol),re=ee?Ape(T,ee,O?R:void 0,void 0):E,ge=lt(s,Te=>WVs(Te,re,g,T,M,R)),Ie=0,_e=0;for(let Te=0;Te1)){let Pe=0;for(let Ke of Ze){if(Ke.isVariadic||Ke.parameters.length>=d){Ie=_e+Pe;break}Pe++}}_e+=Ze.length}pe.assert(Ie!==-1);let Ee={items:Bt(ge,Zl),applicableSpan:h,selectedItemIndex:Ie,argumentIndex:S,argumentCount:d},Ne=Ee.items[Ie];if(Ne.isVariadic){let Te=Se(Ne.parameters,Ze=>!!Ze.isRest);-1epn(M,g,d,h,S)),T=s.getDocumentationComment(g),O=s.getJsDocTags(g);return{isVariadic:!1,prefixDisplayParts:[..._,G0(30)],suffixDisplayParts:[G0(32)],separatorDisplayParts:$dn,parameters:R,documentation:T,tags:O}}var $dn=[G0(28),TI()];function WVs(s,c,g,d,h,_){let S=(g?PVs:MVs)(s,d,h,_);return lt(S,({isVariadic:R,parameters:T,prefix:O,suffix:V})=>{let M=[...c,...O],ee=[...V,...OVs(s,h,d)],re=s.getDocumentationComment(d),ge=s.getJsDocTags();return{isVariadic:R,prefixDisplayParts:M,suffixDisplayParts:ee,separatorDisplayParts:$dn,parameters:T,documentation:re,tags:ge}})}function OVs(s,c,g){return eO(d=>{d.writePunctuation(":"),d.writeSpace(" ");let h=g.getTypePredicateOfSignature(s);h?g.writeTypePredicate(h,c,void 0,d):g.writeType(g.getReturnTypeOfSignature(s),c,void 0,d)})}function PVs(s,c,g,d){let h=(s.target||s).typeParameters,_=bQ(),S=(h||E).map(T=>epn(T,c,g,d,_)),R=s.thisParameter?[c.symbolToParameterDeclaration(s.thisParameter,g,EOe)]:[];return c.getExpandedParameters(s).map(T=>{let O=me.createNodeArray([...R,...lt(T,M=>c.symbolToParameterDeclaration(M,g,EOe))]),V=eO(M=>{_.writeList(2576,O,d,M)});return{isVariadic:!1,parameters:S,prefix:[G0(30)],suffix:[G0(32),...V]}})}function MVs(s,c,g,d){let h=bQ(),_=eO(T=>{if(s.typeParameters&&s.typeParameters.length){let O=me.createNodeArray(s.typeParameters.map(V=>c.typeParameterToDeclaration(V,g,EOe)));h.writeList(53776,O,d,T)}}),S=c.getExpandedParameters(s),R=c.hasEffectiveRestParameter(s)?S.length===1?T=>!0:T=>{var O;return!!(T.length&&((O=Gs(T[T.length-1],ww))==null?void 0:O.links.checkFlags)&32768)}:T=>!1;return S.map(T=>({isVariadic:R(T),parameters:T.map(O=>HVs(O,c,g,d,h)),prefix:[..._,G0(21)],suffix:[G0(22)]}))}function HVs(s,c,g,d,h){let _=eO(T=>{let O=c.symbolToParameterDeclaration(s,g,EOe);h.writeNode(4,O,d,T)}),S=c.isOptionalParameter(s.valueDeclaration),R=ww(s)&&!!(s.links.checkFlags&32768);return{name:s.name,documentation:s.getDocumentationComment(c),displayParts:_,isOptional:S,isRest:R}}function epn(s,c,g,d,h){let _=eO(S=>{let R=c.typeParameterToDeclaration(s,g,EOe);h.writeNode(4,R,d,S)});return{name:s.symbol.name,documentation:s.symbol.getDocumentationComment(c),displayParts:_,isOptional:!1,isRest:!1}}var Cst={};o(Cst,{getSmartSelectionRange:()=>YVs});function YVs(s,c){var g,d;let h={textSpan:RA(c.getFullStart(),c.getEnd())},_=c;e:for(;;){let T=JVs(_);if(!T.length)break;for(let O=0;Os)break e;let re=Ws(o2(c.text,M.end));if(re&&re.kind===2&&R(re.pos,re.end),QVs(c,s,M)){if(h7(M)&&Gd(_)&&!SE(M.getStart(c),M.getEnd(),c)&&S(M.getStart(c),M.getEnd()),eg(M)||wie(M)||AQ(M)||Cde(M)||V&&AQ(V)||A_(M)&&Eh(_)||xie(M)&&A_(_)||nc(M)&&xie(_)&&T.length===1||J3(M)||i9(M)||GU(M)){_=M;break}if(wie(_)&&ee&&d7(ee)){let Ee=M.getFullStart()-2,Ne=ee.getStart()+1;S(Ee,Ne)}let ge=xie(M)&&UVs(V)&&KVs(ee)&&!SE(V.getStart(),ee.getStart(),c),Ie=ge?V.getEnd():M.getStart(),_e=ge?ee.getStart():jVs(c,M);if(jm(M)&&((g=M.jsDoc)!=null&&g.length)&&S(ma(M.jsDoc).getStart(),_e),xie(M)){let Ee=M.getChildren()[0];Ee&&jm(Ee)&&((d=Ee.jsDoc)!=null&&d.length)&&Ee.getStart()!==M.pos&&(Ie=Math.min(Ie,ma(Ee.jsDoc).getStart()))}S(Ie,_e),(Lg(M)||_W(M))&&S(Ie+1,_e-1),_=M;break}if(O===T.length-1)break e}}return h;function S(T,O){if(T!==O){let V=RA(T,O);(!h||!ose(V,h.textSpan)&&rN(V,s))&&(h={textSpan:V,...h&&{parent:h}})}}function R(T,O){S(T,O);let V=T;for(;c.text.charCodeAt(V)===47;)V++;S(V,O)}}function QVs(s,c,g){return pe.assert(g.pos<=c),cR===s.readonlyToken||R.kind===148||R===s.questionToken||R.kind===58),S=f2e(_,({kind:R})=>R===23||R===169||R===24);return[g,I2e(_st(S,({kind:R})=>R===59)),h]}if(ss(s)){let g=f2e(s.getChildren(),S=>S===s.name||k(s.modifiers,S)),d=((c=g[0])==null?void 0:c.kind)===321?g[0]:void 0,h=d?g.slice(1):g,_=_st(h,({kind:S})=>S===59);return d?[d,I2e(_)]:_}if(Si(s)){let g=f2e(s.getChildren(),h=>h===s.dotDotDotToken||h===s.name),d=f2e(g,h=>h===g[0]||h===s.questionToken);return _st(d,({kind:h})=>h===64)}return mg(s)?_st(s.getChildren(),({kind:g})=>g===64):s.getChildren()}function f2e(s,c){let g=[],d;for(let h of s)c(h)?(d=d||[],d.push(h)):(d&&(g.push(I2e(d)),d=void 0),g.push(h));return d&&g.push(I2e(d)),g}function _st(s,c,g=!0){if(s.length<2)return s;let d=Se(s,c);if(d===-1)return s;let h=s.slice(0,d),_=s[d],S=Ei(s),R=g&&S.kind===27,T=s.slice(d+1,R?s.length-1:void 0),O=Hr([h.length?I2e(h):void 0,_,T.length?I2e(T):void 0]);return R?O.concat(S):O}function I2e(s){return pe.assertGreaterThanOrEqual(s.length,1),xB(j3.createSyntaxList(s),s[0].pos,Ei(s).end)}function UVs(s){let c=s&&s.kind;return c===19||c===23||c===21||c===287}function KVs(s){let c=s&&s.kind;return c===20||c===24||c===22||c===288}function jVs(s,c){switch(c.kind){case 342:case 339:case 349:case 347:case 344:return s.getLineEndOfPosition(c.getStart());default:return c.getEnd()}}var u9={};o(u9,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>qVs,getSymbolKind:()=>rpn,getSymbolModifiers:()=>zVs});var tpn=70246400;function rpn(s,c,g){let d=npn(s,c,g);if(d!=="")return d;let h=mU(c);return h&32?yp(c,232)?"local class":"class":h&384?"enum":h&524288?"type":h&64?"interface":h&262144?"type parameter":h&8?"enum member":h&2097152?"alias":h&1536?"module":d}function npn(s,c,g){let d=s.getRootSymbols(c);if(d.length===1&&ma(d).flags&8192&&s.getTypeOfSymbolAtLocation(c,g).getNonNullableType().getCallSignatures().length!==0)return"method";if(s.isUndefinedSymbol(c))return"var";if(s.isArgumentsSymbol(c))return"local var";if(g.kind===110&&un(g)||jL(g))return"parameter";let h=mU(c);if(h&3)return hnt(c)?"parameter":c.valueDeclaration&&sI(c.valueDeclaration)?"const":c.valueDeclaration&&iI(c.valueDeclaration)?"using":c.valueDeclaration&&Bd(c.valueDeclaration)?"await using":F(c.declarations,oS)?"let":opn(c)?"local var":"var";if(h&16)return opn(c)?"local function":"function";if(h&32768)return"getter";if(h&65536)return"setter";if(h&8192)return"method";if(h&16384)return"constructor";if(h&131072)return"index";if(h&4){if(h&33554432&&c.links.checkFlags&6){let _=F(s.getRootSymbols(c),S=>{if(S.getFlags()&98311)return"property"});return _||(s.getTypeOfSymbolAtLocation(c,g).getCallSignatures().length?"method":"property")}return"property"}return""}function ipn(s){if(s.declarations&&s.declarations.length){let[c,...g]=s.declarations,d=B(g)&&kWe(c)&&zt(g,_=>!kWe(_))?65536:0,h=ape(c,d);if(h)return h.split(",")}return[]}function zVs(s,c){if(!c)return"";let g=new Set(ipn(c));if(c.flags&2097152){let d=s.getAliasedSymbol(c);d!==c&&F(ipn(d),h=>{g.add(h)})}return c.flags&16777216&&g.add("optional"),g.size>0?Do(g.values()).join(","):""}function spn(s,c,g,d,h,_,S,R,T,O){var V;let M=[],ee=[],re=[],ge=mU(c),Ie=S&1?npn(s,c,h):"",_e=!1,Ee=h.kind===110&&Ine(h)||jL(h),Ne,Te,Ze=!1,Pe={canIncreaseExpansionDepth:!1,truncated:!1},Ke=!1;if(h.kind===110&&!Ee)return{displayParts:[S1(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(Ie!==""||ge&32||ge&2097152){if(Ie==="getter"||Ie==="setter"){let kt=de(c.declarations,tr=>tr.name===h&&tr.kind!==212);if(kt)switch(kt.kind){case 178:Ie="getter";break;case 179:Ie="setter";break;case 173:Ie="accessor";break;default:pe.assertNever(kt)}else Ie="property"}let Gt;if(_??(_=Ee?s.getTypeAtLocation(h):s.getTypeOfSymbolAtLocation(c,h)),h.parent&&h.parent.kind===212){let kt=h.parent.name;(kt===h||kt&&kt.getFullWidth()===0)&&(h=h.parent)}let it;if(gv(h)?it=h:(Zrt(h)||ipe(h)||h.parent&&(nI(h.parent)||QI(h.parent))&&Eu(c.valueDeclaration))&&(it=h.parent),it){Gt=s.getResolvedSignature(it);let kt=it.kind===215||Ll(it)&&it.expression.kind===108,tr=kt?_.getConstructSignatures():_.getCallSignatures();if(Gt&&!k(tr,Gt.target)&&!k(tr,Gt)&&(Gt=tr.length?tr[0]:void 0),Gt){switch(kt&&ge&32?(Ie="constructor",Lt(_.symbol,Ie)):ge&2097152?(Ie="alias",je(Ie),M.push(TI()),kt&&(Gt.flags&4&&(M.push(S1(128)),M.push(TI())),M.push(S1(105)),M.push(TI())),Rt(c)):Lt(c,Ie),Ie){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":M.push(G0(59)),M.push(TI()),!(la(_)&16)&&_.symbol&&(Pr(M,Ape(s,_.symbol,d,void 0,5)),M.push(ase())),kt&&(Gt.flags&4&&(M.push(S1(128)),M.push(TI())),M.push(S1(105)),M.push(TI())),Wt(Gt,tr,262144);break;default:Wt(Gt,tr)}_e=!0,Ze=tr.length>1}}else if(Yrt(h)&&!(ge&98304)||h.kind===137&&h.parent.kind===177){let kt=h.parent;if(c.declarations&&de(c.declarations,ur=>ur===(h.kind===137?kt.parent:kt))){let ur=kt.kind===177?_.getNonNullableType().getConstructSignatures():_.getNonNullableType().getCallSignatures();s.isImplementationOfOverload(kt)?Gt=ur[0]:Gt=s.getSignatureFromDeclaration(kt),kt.kind===177?(Ie="constructor",Lt(_.symbol,Ie)):Lt(kt.kind===180&&!(_.symbol.flags&2048||_.symbol.flags&4096)?_.symbol:c,Ie),Gt&&Wt(Gt,ur),_e=!0,Ze=ur.length>1}}}if(ge&32&&!_e&&!Ee){at();let Gt=yp(c,232);Gt&&(je("local class"),M.push(TI())),yt(c,S)||(Gt||(M.push(S1(86)),M.push(TI())),Rt(c),_r(c,g))}if(ge&64&&S&2&&(Tt(),yt(c,S)||(M.push(S1(120)),M.push(TI()),Rt(c),_r(c,g))),ge&524288&&S&2&&(Tt(),M.push(S1(156)),M.push(TI()),Rt(c),_r(c,g),M.push(TI()),M.push(gpe(64)),M.push(TI()),Pr(M,V1e(s,h.parent&&c2(h.parent)?s.getTypeAtLocation(h.parent):s.getDeclaredTypeOfSymbol(c),d,8388608,T,O,Pe))),ge&384&&(Tt(),yt(c,S)||(zt(c.declarations,Gt=>Q3(Gt)&&OA(Gt))&&(M.push(S1(87)),M.push(TI())),M.push(S1(94)),M.push(TI()),Rt(c,void 0))),ge&1536&&!Ee&&(Tt(),!yt(c,S))){let Gt=yp(c,268),it=Gt&&Gt.name&&Gt.name.kind===80;M.push(S1(it?145:144)),M.push(TI()),Rt(c)}if(ge&262144&&S&2)if(Tt(),M.push(G0(21)),M.push(fS("type parameter")),M.push(G0(22)),M.push(TI()),Rt(c),c.parent)Qe(),Rt(c.parent,d),_r(c.parent,d);else{let Gt=yp(c,169);if(Gt===void 0)return pe.fail();let it=Gt.parent;if(it)if(Eu(it)){Qe();let kt=s.getSignatureFromDeclaration(it);it.kind===181?(M.push(S1(105)),M.push(TI())):it.kind!==180&&it.name&&Rt(it.symbol),Pr(M,Cnt(s,kt,g,32))}else OB(it)&&(Qe(),M.push(S1(156)),M.push(TI()),Rt(it.symbol),_r(it.symbol,g))}if(ge&8){Ie="enum member",Lt(c,"enum member");let Gt=(V=c.declarations)==null?void 0:V[0];if(Gt?.kind===307){let it=s.getConstantValue(Gt);it!==void 0&&(M.push(TI()),M.push(gpe(64)),M.push(TI()),M.push(wE(Mge(it),typeof it=="number"?7:8)))}}if(c.flags&2097152){if(Tt(),!_e||ee.length===0&&re.length===0){let Gt=s.getAliasedSymbol(c);if(Gt!==c&&Gt.declarations&&Gt.declarations.length>0){let it=Gt.declarations[0],kt=fl(it);if(kt&&!_e){let tr=OY(it)&&Ga(it,128),ur=c.name!=="default"&&!tr,Gr=spn(s,Gt,ms(it),d,kt,_,S,ur?c:Gt,T,O);M.push(...Gr.displayParts),M.push(ase()),Ne=Gr.documentation,Te=Gr.tags,Pe&&Gr.canIncreaseVerbosityLevel&&(Pe.canIncreaseExpansionDepth=!0)}else Ne=Gt.getContextualDocumentationComment(it,s),Te=Gt.getJsDocTags(s)}}if(c.declarations)switch(c.declarations[0].kind){case 271:M.push(S1(95)),M.push(TI()),M.push(S1(145));break;case 278:M.push(S1(95)),M.push(TI()),M.push(S1(c.declarations[0].isExportEquals?64:90));break;case 282:M.push(S1(95));break;default:M.push(S1(102))}M.push(TI()),Rt(c),F(c.declarations,Gt=>{if(Gt.kind===272){let it=Gt;if(HL(it))M.push(TI()),M.push(gpe(64)),M.push(TI()),M.push(S1(149)),M.push(G0(21)),M.push(wE(Fp(G7(it)),8)),M.push(G0(22));else{let kt=s.getSymbolAtLocation(it.moduleReference);kt&&(M.push(TI()),M.push(gpe(64)),M.push(TI()),Rt(kt,d))}return!0}})}if(!_e)if(Ie!==""){if(_){if(Ee?(Tt(),M.push(S1(110))):Lt(c,Ie),Ie==="property"||Ie==="accessor"||Ie==="getter"||Ie==="setter"||Ie==="JSX attribute"||ge&3||Ie==="local var"||Ie==="index"||Ie==="using"||Ie==="await using"||Ee){if(M.push(G0(59)),M.push(TI()),_.symbol&&_.symbol.flags&262144&&Ie!=="index"){let Gt=eO(it=>{let kt=s.typeParameterToDeclaration(_,d,tpn,void 0,void 0,T,O,Pe);Ye().writeNode(4,kt,ms(eu(d)),it)},T);Pr(M,Gt)}else Pr(M,V1e(s,_,d,void 0,T,O,Pe));if(ww(c)&&c.links.target&&ww(c.links.target)&&c.links.target.links.tupleLabelDeclaration){let Gt=c.links.target.links.tupleLabelDeclaration;pe.assertNode(Gt.name,Ir),M.push(TI()),M.push(G0(21)),M.push(fS(Vo(Gt.name))),M.push(G0(22))}}else if(ge&16||ge&8192||ge&16384||ge&131072||ge&98304||Ie==="method"){let Gt=_.getNonNullableType().getCallSignatures();Gt.length&&(Wt(Gt[0],Gt),Ze=Gt.length>1)}}}else Ie=rpn(s,c,h);if(ee.length===0&&!Ze&&(ee=c.getContextualDocumentationComment(d,s)),ee.length===0&&ge&4&&c.parent&&c.declarations&&F(c.parent.declarations,Gt=>Gt.kind===308))for(let Gt of c.declarations){if(!Gt.parent||Gt.parent.kind!==227)continue;let it=s.getSymbolAtLocation(Gt.parent.right);if(it&&(ee=it.getDocumentationComment(s),re=it.getJsDocTags(s),ee.length>0))break}if(ee.length===0&&Ir(h)&&c.valueDeclaration&&mg(c.valueDeclaration)){let Gt=c.valueDeclaration,it=Gt.parent,kt=Gt.propertyName||Gt.name;if(Ir(kt)&&$m(it)){let tr=g2(kt),ur=s.getTypeAtLocation(it);ee=J(ur.isUnion()?ur.types:[ur],Gr=>{let dt=Gr.getProperty(tr);return dt?dt.getDocumentationComment(s):void 0})||E}}re.length===0&&!Ze&&!QY(h)&&(re=c.getContextualJsDocTags(d,s)),ee.length===0&&Ne&&(ee=Ne),re.length===0&&Te&&(re=Te);let et=!Pe.truncated&&Pe.canIncreaseExpansionDepth;return{displayParts:M,documentation:ee,symbolKind:Ie,tags:re.length===0?void 0:re,canIncreaseVerbosityLevel:O!==void 0?et:void 0};function Ye(){return bQ()}function Tt(){M.length&&M.push(ase()),at()}function at(){R&&(je("alias"),M.push(TI()))}function Qe(){M.push(TI()),M.push(S1(103)),M.push(TI())}function Ct(Gt,it){if(O===void 0)return!1;let kt=Gt.flags&96?s.getDeclaredTypeOfSymbol(Gt):s.getTypeOfSymbolAtLocation(Gt,h);return!kt||s.isLibType(kt)?!1:0{let Gr=s.getEmitResolver().symbolToDeclarations(Gt,kt,17408,T,O!==void 0?O-1:void 0,Pe),dt=Ye(),pr=Gt.valueDeclaration&&ms(Gt.valueDeclaration);Gr.forEach((ot,ir)=>{ir>0&&ur.writeLine(),dt.writeNode(4,ot,pr,ur)})},T);return Pr(M,tr),Ke=!0,!0}return!1}function Rt(Gt,it){let kt;R&&Gt===c&&(Gt=R),Ie==="index"&&(kt=s.getIndexInfosOfIndexSymbol(Gt));let tr=[];Gt.flags&131072&&kt?(Gt.parent&&(tr=Ape(s,Gt.parent)),tr.push(G0(23)),kt.forEach((ur,Gr)=>{tr.push(...V1e(s,ur.keyType)),Gr!==kt.length-1&&(tr.push(TI()),tr.push(G0(52)),tr.push(TI()))}),tr.push(G0(24))):tr=Ape(s,Gt,it||g,void 0,7),Pr(M,tr),c.flags&16777216&&M.push(G0(58))}function Lt(Gt,it){Tt(),it&&(je(it),Gt&&!zt(Gt.declarations,kt=>uA(kt)||(jA(kt)||wd(kt))&&!kt.name)&&(M.push(TI()),Rt(Gt)))}function je(Gt){switch(Gt){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":M.push(mnt(Gt));return;default:M.push(G0(21)),M.push(mnt(Gt)),M.push(G0(22));return}}function Wt(Gt,it,kt=0){Pr(M,Cnt(s,Gt,d,kt|32,T,O,Pe)),it.length>1&&(M.push(TI()),M.push(G0(21)),M.push(gpe(40)),M.push(wE((it.length-1).toString(),7)),M.push(TI()),M.push(fS(it.length===2?"overload":"overloads")),M.push(G0(22))),ee=Gt.getDocumentationComment(s),re=Gt.getJsDocTags(),it.length>1&&ee.length===0&&re.length===0&&(ee=it[0].getDocumentationComment(s),re=it[0].getJsDocTags().filter(tr=>tr.name!=="deprecated"))}function _r(Gt,it){let kt=eO(tr=>{let ur=s.symbolToTypeParameterDeclarations(Gt,it,tpn);Ye().writeList(53776,ur,ms(eu(it)),tr)});Pr(M,kt)}}function qVs(s,c,g,d,h,_=YU(h),S,R,T){return spn(s,c,g,d,h,void 0,_,S,R,T)}function opn(s){return s.parent?!1:F(s.declarations,c=>{if(c.kind===219)return!0;if(c.kind!==261&&c.kind!==263)return!1;for(let g=c.parent;!BW(g);g=g.parent)if(g.kind===308||g.kind===269)return!1;return!0})}var xo={};o(xo,{ChangeTracker:()=>tWs,LeadingTriviaOption:()=>lpn,TrailingTriviaOption:()=>upn,applyChanges:()=>w4t,assignPositionsToNode:()=>Sst,createWriter:()=>Apn,deleteNode:()=>jF,getAdjustedEndPosition:()=>uq,isThisTypeAnnotatable:()=>eWs,isValidLocationToAddComment:()=>dpn});function apn(s){let c=s.__pos;return pe.assert(typeof c=="number"),c}function E4t(s,c){pe.assert(typeof c=="number"),s.__pos=c}function cpn(s){let c=s.__end;return pe.assert(typeof c=="number"),c}function S4t(s,c){pe.assert(typeof c=="number"),s.__end=c}var lpn=(s=>(s[s.Exclude=0]="Exclude",s[s.IncludeAll=1]="IncludeAll",s[s.JSDoc=2]="JSDoc",s[s.StartLine=3]="StartLine",s))(lpn||{}),upn=(s=>(s[s.Exclude=0]="Exclude",s[s.ExcludeWhitespace=1]="ExcludeWhitespace",s[s.Include=2]="Include",s))(upn||{});function gpn(s,c){return Yu(s,c,!1,!0)}function $Vs(s,c){let g=c;for(;g0?1:0,ee=XD(j7(s,O)+M,s);return ee=gpn(s.text,ee),XD(j7(s,ee),s)}function v4t(s,c,g){let{end:d}=c,{trailingTriviaOption:h}=g;if(h===2){let _=o2(s.text,d);if(_){let S=j7(s,c.end);for(let R of _){if(R.kind===2||j7(s,R.pos)>S)break;if(j7(s,R.end)>S)return Yu(s.text,R.end,!0,!0)}}}}function uq(s,c,g){var d;let{end:h}=c,{trailingTriviaOption:_}=g;if(_===0)return h;if(_===1){let T=Nn(o2(s.text,h),mE(s.text,h)),O=(d=T?.[T.length-1])==null?void 0:d.end;return O||h}let S=v4t(s,c,g);if(S)return S;let R=Yu(s.text,h,!0);return R!==h&&(_===2||ml(s.text.charCodeAt(R-1)))?R:h}function yst(s,c){return!!c&&!!s.parent&&(c.kind===28||c.kind===27&&s.parent.kind===211)}function eWs(s){return jA(s)||ah(s)}var tWs=class Zxr{constructor(c,g){this.newLineCharacter=c,this.formatContext=g,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(c){return new Zxr(JF(c.host,c.formatContext.options),c.formatContext)}static with(c,g){let d=Zxr.fromContext(c);return g(d),d.getChanges()}pushRaw(c,g){pe.assertEqual(c.fileName,g.fileName);for(let d of g.textChanges)this.changes.push({kind:3,sourceFile:c,text:d.newText,range:pWe(d.span)})}deleteRange(c,g){this.changes.push({kind:0,sourceFile:c,range:g})}delete(c,g){this.deletedNodes.push({sourceFile:c,node:g})}deleteNode(c,g,d={leadingTriviaOption:1}){this.deleteRange(c,m2e(c,g,g,d))}deleteNodes(c,g,d={leadingTriviaOption:1},h){for(let _ of g){let S=zU(c,_,d,h),R=uq(c,_,d);this.deleteRange(c,{pos:S,end:R}),h=!!v4t(c,_,d)}}deleteModifier(c,g){this.deleteRange(c,{pos:g.getStart(c),end:Yu(c.text,g.end,!0)})}deleteNodeRange(c,g,d,h={leadingTriviaOption:1}){let _=zU(c,g,h),S=uq(c,d,h);this.deleteRange(c,{pos:_,end:S})}deleteNodeRangeExcludingEnd(c,g,d,h={leadingTriviaOption:1}){let _=zU(c,g,h),S=d===void 0?c.text.length:zU(c,d,h);this.deleteRange(c,{pos:_,end:S})}replaceRange(c,g,d,h={}){this.changes.push({kind:1,sourceFile:c,range:g,options:h,node:d})}replaceNode(c,g,d,h=h2e){this.replaceRange(c,m2e(c,g,g,h),d,h)}replaceNodeRange(c,g,d,h,_=h2e){this.replaceRange(c,m2e(c,g,d,_),h,_)}replaceRangeWithNodes(c,g,d,h={}){this.changes.push({kind:2,sourceFile:c,range:g,options:h,nodes:d})}replaceNodeWithNodes(c,g,d,h=h2e){this.replaceRangeWithNodes(c,m2e(c,g,g,h),d,h)}replaceNodeWithText(c,g,d){this.replaceRangeWithText(c,m2e(c,g,g,h2e),d)}replaceNodeRangeWithNodes(c,g,d,h,_=h2e){this.replaceRangeWithNodes(c,m2e(c,g,d,_),h,_)}nodeHasTrailingComment(c,g,d=h2e){return!!v4t(c,g,d)}nextCommaToken(c,g){let d=BQ(g,g.parent,c);return d&&d.kind===28?d:void 0}replacePropertyAssignment(c,g,d){let h=this.nextCommaToken(c,g)?"":","+this.newLineCharacter;this.replaceNode(c,g,d,{suffix:h})}insertNodeAt(c,g,d,h={}){this.replaceRange(c,Zy(g),d,h)}insertNodesAt(c,g,d,h={}){this.replaceRangeWithNodes(c,Zy(g),d,h)}insertNodeAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertNodesAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertAtTopOfFile(c,g,d){let h=lWs(c),_={prefix:h===0?void 0:this.newLineCharacter,suffix:(ml(c.text.charCodeAt(h))?"":this.newLineCharacter)+(d?this.newLineCharacter:"")};Ki(g)?this.insertNodesAt(c,h,g,_):this.insertNodeAt(c,h,g,_)}insertNodesAtEndOfFile(c,g,d){this.insertAtEndOfFile(c,g,d)}insertAtEndOfFile(c,g,d){let h=c.end+1,_={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(d?this.newLineCharacter:"")};this.insertNodesAt(c,h,g,_)}insertStatementsInNewFile(c,g,d){this.newFileChanges||(this.newFileChanges=gl()),this.newFileChanges.add(c,{oldFile:d,statements:g})}insertFirstParameter(c,g,d){let h=Nc(g);h?this.insertNodeBefore(c,h,d):this.insertNodeAt(c,g.pos,d)}insertNodeBefore(c,g,d,h=!1,_={}){this.insertNodeAt(c,zU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,d,h))}insertNodesBefore(c,g,d,h=!1,_={}){this.insertNodesAt(c,zU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,ma(d),h))}insertModifierAt(c,g,d,h={}){this.insertNodeAt(c,g,me.createToken(d),h)}insertModifierBefore(c,g,d){return this.insertModifierAt(c,d.getStart(c),g,{suffix:" "})}insertCommentBeforeLine(c,g,d,h){let _=XD(g,c),S=UMt(c.text,_),R=dpn(c,S),T=nse(c,R?S:d),O=c.text.slice(_,S),V=`${R?"":this.newLineCharacter}//${h}${this.newLineCharacter}${O}`;this.insertText(c,T.getStart(c),V)}insertJsdocCommentBefore(c,g,d){let h=g.getStart(c);if(g.jsDoc)for(let R of g.jsDoc)this.deleteRange(c,{pos:YB(R.getStart(c),c),end:uq(c,R,{})});let _=bWe(c.text,h-1),S=c.text.slice(_,h);this.insertNodeAt(c,h,d,{suffix:this.newLineCharacter+S})}createJSDocText(c,g){let d=jt(g.jsDoc,_=>Xs(_.comment)?me.createJSDocText(_.comment):_.comment),h=Ws(g.jsDoc);return h&&SE(h.pos,h.end,c)&&B(d)===0?void 0:me.createNodeArray(fe(d,me.createJSDocText(` -`)))}replaceJSDocComment(c,g,d){this.insertJsdocCommentBefore(c,rWs(g),me.createJSDocComment(this.createJSDocText(c,g),me.createNodeArray(d)))}addJSDocTags(c,g,d){let h=Bt(g.jsDoc,S=>S.tags),_=d.filter(S=>!h.some((R,T)=>{let O=nWs(R,S);return O&&(h[T]=O),!!O}));this.replaceJSDocComment(c,g,[...h,..._])}filterJSDocTags(c,g,d){this.replaceJSDocComment(c,g,Le(Bt(g.jsDoc,h=>h.tags),d))}replaceRangeWithText(c,g,d){this.changes.push({kind:3,sourceFile:c,range:g,text:d})}insertText(c,g,d){this.replaceRangeWithText(c,Zy(g),d)}tryInsertTypeAnnotation(c,g,d){let h;if(Eu(g)){if(h=ep(g,22,c),!h){if(!uA(g))return!1;h=ma(g.parameters)}}else h=(g.kind===261?g.exclamationToken:g.questionToken)??g.name;return this.insertNodeAt(c,h.end,d,{prefix:": "}),!0}tryInsertThisTypeAnnotation(c,g,d){let h=ep(g,21,c).getStart(c)+1,_=g.parameters.length?", ":"";this.insertNodeAt(c,h,d,{prefix:"this: ",suffix:_})}insertTypeParameters(c,g,d){let h=(ep(g,21,c)||ma(g.parameters)).getStart(c);this.insertNodesAt(c,h,d,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(c,g,d){return Lc(c)||MI(c)?{suffix:d?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:nc(c)?{suffix:", "}:Si(c)?Si(g)?{suffix:", "}:{}:Lg(c)&&Yf(c.parent)||BN(c)?{suffix:", "}:Ay(c)?{suffix:","+(d?this.newLineCharacter:" ")}:pe.failBadSyntaxKind(c)}insertNodeAtConstructorStart(c,g,d){let h=Nc(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[d,...g.body.statements]):this.insertNodeBefore(c,h,d)}insertNodeAtConstructorStartAfterSuperCall(c,g,d){let h=de(g.body.statements,_=>OC(_)&&xy(_.expression));!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}insertNodeAtConstructorEnd(c,g,d){let h=li(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}replaceConstructorBody(c,g,d){this.replaceNode(c,g.body,me.createBlock(d,!0))}insertNodeAtEndOfScope(c,g,d){let h=zU(c,g.getLastToken(),{});this.insertNodeAt(c,h,d,{prefix:ml(c.text.charCodeAt(g.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtObjectStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtStartWorker(c,g,d){let h=this.guessIndentationFromExistingMembers(c,g)??this.computeIndentationForNewMember(c,g);this.insertNodeAt(c,bst(g).pos,d,this.getInsertNodeAtStartInsertOptions(c,g,h))}guessIndentationFromExistingMembers(c,g){let d,h=g;for(let _ of bst(g)){if(rz(h,_,c))return;let S=_.getStart(c),R=_m.SmartIndenter.findFirstNonWhitespaceColumn(YB(S,c),S,c,this.formatContext.options);if(d===void 0)d=R;else if(R!==d)return;h=_}return d}computeIndentationForNewMember(c,g){let d=g.getStart(c);return _m.SmartIndenter.findFirstNonWhitespaceColumn(YB(d,c),d,c,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(c,g,d){let _=bst(g).length===0,S=!this.classesWithNodesInsertedAtStart.has(id(g));S&&this.classesWithNodesInsertedAtStart.set(id(g),{node:g,sourceFile:c});let R=ag(g)&&(!Zu(c)||!_),T=ag(g)&&Zu(c)&&_&&!S;return{indentation:d,prefix:(T?",":"")+this.newLineCharacter,suffix:R?",":d_(g)&&_?";":""}}insertNodeAfterComma(c,g,d){let h=this.insertNodeAfterWorker(c,this.nextCommaToken(c,g)||g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAtEndOfList(c,g,d){this.insertNodeAt(c,g.end,d,{prefix:", "})}insertNodesAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,ma(d));this.insertNodesAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfterWorker(c,g,d){return uWs(g,d)&&c.text.charCodeAt(g.end-1)!==59&&this.replaceRange(c,Zy(g.end),me.createToken(27)),uq(c,g,{})}getInsertNodeAfterOptions(c,g){let d=this.getInsertNodeAfterOptionsWorker(g);return{...d,prefix:g.end===c.end&&Lc(g)?d.prefix?` +}`,s.languageVersion,!0,s.scriptKind),body:_=>_.statements[0].members}],d=[];for(let{parse:_,body:S}of g){let R=_(),T=S(R);if(T.length&&R.parseDiagnostics.length===0)return T;T.length&&d.push({sourceFile:R,body:T})}d.sort((_,S)=>_.sourceFile.parseDiagnostics.length-S.sourceFile.parseDiagnostics.length);let{body:h}=d[0];return h}function V9s(s,c,g,d){MI(g[0])||kx(g[0])?W9s(s,c,g,d):O9s(s,c,g,d)}function W9s(s,c,g,d){let h;if(!d||!d.length?h=de(s.statements,Qp(xa,p_)):h=F(d,S=>ji(Jc(s,S.start),Qp(xa,p_))),!h)return;let _=h.members.find(S=>g.some(R=>mOe(R,S)));if(_){let S=be(h.members,R=>g.some(T=>mOe(T,R)));F(g,pst),c.replaceNodeRangeWithNodes(s,_,S,g);return}F(g,pst),c.insertNodesAfter(s,h.members[h.members.length-1],g)}function O9s(s,c,g,d){if(!d?.length){c.insertNodesAtEndOfFile(s,g,!1);return}for(let _ of d){let S=ji(Jc(s,_.start),R=>Qp(eg,cl)(R)&&zt(R.statements,T=>g.some(O=>mOe(O,T))));if(S){let R=S.statements.find(T=>g.some(O=>mOe(O,T)));if(R){let T=be(S.statements,O=>g.some(V=>mOe(V,O)));F(g,pst),c.replaceNodeRangeWithNodes(s,R,T,g);return}}}let h=s.statements;for(let _ of d){let S=ji(Jc(s,_.start),eg);if(S){h=S.statements;break}}F(g,pst),c.insertNodesAfter(s,h[h.length-1],g)}function mOe(s,c){var g,d,h,_,S,R;return s.kind!==c.kind?!1:s.kind===177?s.kind===c.kind:sh(s)&&sh(c)?s.name.getText()===c.name.getText():Q3(s)&&Q3(c)||x$e(s)&&x$e(c)?s.expression.getText()===c.expression.getText():X3(s)&&X3(c)?((g=s.initializer)==null?void 0:g.getText())===((d=c.initializer)==null?void 0:d.getText())&&((h=s.incrementor)==null?void 0:h.getText())===((_=c.incrementor)==null?void 0:_.getText())&&((S=s.condition)==null?void 0:S.getText())===((R=c.condition)==null?void 0:R.getText()):WL(s)&&WL(c)?s.expression.getText()===c.expression.getText()&&s.initializer.getText()===c.initializer.getText():YW(s)&&YW(c)?s.label.getText()===c.label.getText():s.getText()===c.getText()}function pst(s){Odn(s),s.parent=void 0}function Odn(s){s.pos=-1,s.end=-1,s.forEachChild(Odn)}var d5={};o(d5,{compareImportsOrRequireStatements:()=>m4t,compareModuleSpecifiers:()=>sVs,getImportDeclarationInsertionIndex:()=>tVs,getImportSpecifierInsertionIndex:()=>rVs,getNamedImportSpecifierComparerWithDetection:()=>eVs,getOrganizeImportsStringComparerWithDetection:()=>$9s,organizeImports:()=>P9s,testCoalesceExports:()=>iVs,testCoalesceImports:()=>nVs});function P9s(s,c,g,d,h,_){let S=xo.ChangeTracker.fromContext({host:g,formatContext:c,preferences:h}),R=_==="SortAndCombine"||_==="All",T=R,O=_==="RemoveUnused"||_==="All",V=s.statements.filter(Yf),M=A4t(s,V),{comparersToTest:ee,typeOrdersToTest:re}=g4t(h),ge=ee[0],Ie={moduleSpecifierComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,namedImportComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,typeOrder:h.organizeImportsTypeOrder};if(typeof h.organizeImportsIgnoreCase!="boolean"&&({comparer:Ie.moduleSpecifierComparer}=Hdn(M,ee)),!Ie.typeOrder||typeof h.organizeImportsIgnoreCase!="boolean"){let Te=I4t(V,ee,re);if(Te){let{namedImportComparer:Ze,typeOrder:Pe}=Te;Ie.namedImportComparer=Ie.namedImportComparer??Ze,Ie.typeOrder=Ie.typeOrder??Pe}}M.forEach(Te=>Ee(Te,Ie)),_!=="RemoveUnused"&&H9s(s).forEach(Te=>Ne(Te,Ie.namedImportComparer));for(let Te of s.statements.filter(c_)){if(!Te.body)continue;if(A4t(s,Te.body.statements.filter(Yf)).forEach(Pe=>Ee(Pe,Ie)),_!=="RemoveUnused"){let Pe=Te.body.statements.filter(Vh);Ne(Pe,Ie.namedImportComparer)}}return S.getChanges();function _e(Te,Ze){if(B(Te)===0)return;ti(Te[0],1024);let Pe=T?Yn(Te,Ye=>COe(Ye.moduleSpecifier)):[Te],Ke=R?yo(Pe,(Ye,Tt)=>p4t(Ye[0].moduleSpecifier,Tt[0].moduleSpecifier,Ie.moduleSpecifierComparer??ge)):Pe,et=jt(Ke,Ye=>COe(Ye[0].moduleSpecifier)||Ye[0].moduleSpecifier===void 0?Ze(Ye):Ye);if(et.length===0)S.deleteNodes(s,Te,{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include},!0);else{let Ye={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include,suffix:UF(g,c.options)};S.replaceNodeWithNodes(s,Te[0],et,Ye);let Tt=S.nodeHasTrailingComment(s,Te[0],Ye);S.deleteNodes(s,Te.slice(1),{trailingTriviaOption:xo.TrailingTriviaOption.Include},Tt)}}function Ee(Te,Ze){let Pe=Ze.moduleSpecifierComparer??ge,Ke=Ze.namedImportComparer??ge,et=Ze.typeOrder??"last",Ye=d2e({organizeImportsTypeOrder:et},Ke);_e(Te,at=>(O&&(at=Y9s(at,s,d)),T&&(at=Pdn(at,Pe,Ye,s)),R&&(at=yo(at,(Qe,Ct)=>m4t(Qe,Ct,Pe))),at))}function Ne(Te,Ze){let Pe=d2e(h,Ze);_e(Te,Ke=>Mdn(Ke,Pe))}}function g4t(s){return{comparersToTest:typeof s.organizeImportsIgnoreCase=="boolean"?[h4t(s,s.organizeImportsIgnoreCase)]:[h4t(s,!0),h4t(s,!1)],typeOrdersToTest:s.organizeImportsTypeOrder?[s.organizeImportsTypeOrder]:["last","inline","first"]}}function A4t(s,c){let g=Nb(s.languageVersion,!1,s.languageVariant),d=[],h=0;for(let _ of c)d[h]&&M9s(s,_,g)&&h++,d[h]||(d[h]=[]),d[h].push(_);return d}function M9s(s,c,g){let d=c.getFullStart(),h=c.getStart();g.setText(s.text,d,h-d);let _=0;for(;g.getTokenStart()=2))return!0;return!1}function H9s(s){let c=[],g=s.statements,d=B(g),h=0,_=0;for(;hA4t(s,S))}function Y9s(s,c,g){let d=g.getTypeChecker(),h=g.getCompilerOptions(),_=d.getJsxNamespace(c),S=d.getJsxFragmentFactory(c),R=!!(c.transformFlags&2),T=[];for(let V of s){let{importClause:M,moduleSpecifier:ee}=V;if(!M){T.push(V);continue}let{name:re,namedBindings:ge}=M;if(re&&!O(re)&&(re=void 0),ge)if(Mx(ge))O(ge.name)||(ge=void 0);else{let Ie=ge.elements.filter(_e=>O(_e.name));Ie.length{if(S.attributes){let R=S.attributes.token+" ";for(let T of yo(S.attributes.elements,(O,V)=>Ca(O.name.text,V.name.text)))R+=T.name.text+":",R+=_A(T.value)?`"${T.value.text}"`:T.value.getText()+" ";return R}return""}),_=[];for(let S in h){let R=h[S],{importWithoutClause:T,typeOnlyImports:O,regularImports:V}=Q9s(R);T&&_.push(T);for(let M of[V,O]){let ee=M===O,{defaultImports:re,namespaceImports:ge,namedImports:Ie}=M;if(!ee&&re.length===1&&ge.length===1&&Ie.length===0){let Ye=re[0];_.push(A2e(Ye,Ye.importClause.name,ge[0].importClause.namedBindings));continue}let _e=yo(ge,(Ye,Tt)=>c(Ye.importClause.namedBindings.name.text,Tt.importClause.namedBindings.name.text));for(let Ye of _e)_.push(A2e(Ye,void 0,Ye.importClause.namedBindings));let Ee=Nc(re),Ne=Nc(Ie),Te=Ee??Ne;if(!Te)continue;let Ze,Pe=[];if(re.length===1)Ze=re[0].importClause.name;else for(let Ye of re)Pe.push(me.createImportSpecifier(!1,me.createIdentifier("default"),Ye.importClause.name));Pe.push(...U9s(Ie));let Ke=me.createNodeArray(yo(Pe,g),Ne?.importClause.namedBindings.elements.hasTrailingComma),et=Ke.length===0?Ze?void 0:me.createNamedImports(E):Ne?me.updateNamedImports(Ne.importClause.namedBindings,Ke):me.createNamedImports(Ke);d&&et&&Ne?.importClause.namedBindings&&!x3(Ne.importClause.namedBindings,d)&&ti(et,2),ee&&Ze&&et?(_.push(A2e(Te,Ze,void 0)),_.push(A2e(Ne??Te,void 0,et))):_.push(A2e(Te,Ze,et))}}return _}function Mdn(s,c){if(s.length===0)return s;let{exportWithoutClause:g,namedExports:d,typeOnlyExports:h}=S(s),_=[];g&&_.push(g);for(let R of[d,h]){if(R.length===0)continue;let T=[];T.push(...jt(R,M=>M.exportClause&&Ev(M.exportClause)?M.exportClause.elements:E));let O=yo(T,c),V=R[0];_.push(me.updateExportDeclaration(V,V.modifiers,V.isTypeOnly,V.exportClause&&(Ev(V.exportClause)?me.updateNamedExports(V.exportClause,O):me.updateNamespaceExport(V.exportClause,V.exportClause.name)),V.moduleSpecifier,V.attributes))}return _;function S(R){let T,O=[],V=[];for(let M of R)M.exportClause===void 0?T=T||M:M.isTypeOnly?V.push(M):O.push(M);return{exportWithoutClause:T,namedExports:O,typeOnlyExports:V}}}function A2e(s,c,g){return me.updateImportDeclaration(s,s.modifiers,me.updateImportClause(s.importClause,s.importClause.phaseModifier,c,g),s.moduleSpecifier,s.attributes)}function d4t(s,c,g,d){switch(d?.organizeImportsTypeOrder){case"first":return Hl(c.isTypeOnly,s.isTypeOnly)||g(s.name.text,c.name.text);case"inline":return g(s.name.text,c.name.text);default:return Hl(s.isTypeOnly,c.isTypeOnly)||g(s.name.text,c.name.text)}}function p4t(s,c,g){let d=s===void 0?void 0:COe(s),h=c===void 0?void 0:COe(c);return Hl(d===void 0,h===void 0)||Hl(Xr(d),Xr(h))||g(d,h)}function X9s(s){return s.map(c=>COe(f4t(c))||"")}function f4t(s){var c;switch(s.kind){case 272:return(c=Gs(s.moduleReference,HF))==null?void 0:c.expression;case 273:return s.moduleSpecifier;case 244:return s.declarationList.declarations[0].initializer.arguments[0]}}function J9s(s,c){let g=Lg(c)&&c.text;return Xs(g)&&zt(s.moduleAugmentations,d=>Lg(d)&&d.text===g)}function U9s(s){return jt(s,c=>lt(K9s(c),g=>g.name&&g.propertyName&&BF(g.name)===BF(g.propertyName)?me.updateImportSpecifier(g,g.isTypeOnly,void 0,g.name):g))}function K9s(s){var c;return(c=s.importClause)!=null&&c.namedBindings&&wN(s.importClause.namedBindings)?s.importClause.namedBindings.elements:void 0}function Hdn(s,c){let g=[];return s.forEach(d=>{g.push(X9s(d))}),Qdn(g,c)}function I4t(s,c,g){let d=!1,h=s.filter(T=>{var O,V;let M=(V=Gs((O=T.importClause)==null?void 0:O.namedBindings,wN))==null?void 0:V.elements;return M?.length?(!d&&M.some(ee=>ee.isTypeOnly)&&M.some(ee=>!ee.isTypeOnly)&&(d=!0),!0):!1});if(h.length===0)return;let _=h.map(T=>{var O,V;return(V=Gs((O=T.importClause)==null?void 0:O.namedBindings,wN))==null?void 0:V.elements}).filter(T=>T!==void 0);if(!d||g.length===0){let T=Qdn(_.map(O=>O.map(V=>V.name.text)),c);return{namedImportComparer:T.comparer,typeOrder:g.length===1?g[0]:void 0,isSorted:T.isSorted}}let S={first:1/0,last:1/0,inline:1/0},R={first:c[0],last:c[0],inline:c[0]};for(let T of c){let O={first:0,last:0,inline:0};for(let V of _)for(let M of g)O[M]=(O[M]??0)+Ydn(V,(ee,re)=>d4t(ee,re,T,{organizeImportsTypeOrder:M}));for(let V of g){let M=V;O[M]0&&g++;return g}function Qdn(s,c){let g,d=1/0;for(let h of c){let _=0;for(let S of s){if(S.length<=1)continue;let R=Ydn(S,h);_+=R}_d4t(d,h,g,s)}function eVs(s,c,g){let{comparersToTest:d,typeOrdersToTest:h}=g4t(c),_=I4t([s],d,h),S=d2e(c,d[0]),R;if(typeof c.organizeImportsIgnoreCase!="boolean"||!c.organizeImportsTypeOrder){if(_){let{namedImportComparer:T,typeOrder:O,isSorted:V}=_;R=V,S=d2e({organizeImportsTypeOrder:O},T)}else if(g){let T=I4t(g.statements.filter(Yf),d,h);if(T){let{namedImportComparer:O,typeOrder:V,isSorted:M}=T;R=M,S=d2e({organizeImportsTypeOrder:V},O)}}}return{specifierComparer:S,isSorted:R}}function tVs(s,c,g){let d=Oc(s,c,Zl,(h,_)=>m4t(h,_,g));return d<0?~d:d}function rVs(s,c,g){let d=Oc(s,c,Zl,g);return d<0?~d:d}function m4t(s,c,g){return p4t(f4t(s),f4t(c),g)||j9s(s,c)}function nVs(s,c,g,d){let h=_Oe(c),_=d2e({organizeImportsTypeOrder:d?.organizeImportsTypeOrder},h);return Pdn(s,h,_,g)}function iVs(s,c,g){return Mdn(s,(h,_)=>d4t(h,_,_Oe(c),{organizeImportsTypeOrder:g?.organizeImportsTypeOrder??"last"}))}function sVs(s,c,g){let d=_Oe(!!g);return p4t(s,c,d)}var fst={};o(fst,{collectElements:()=>oVs});function oVs(s,c){let g=[];return aVs(s,c,g),cVs(s,g),g.sort((d,h)=>d.textSpan.start-h.textSpan.start),g}function aVs(s,c,g){let d=40,h=0,_=s.statements,S=_.length;for(;h1&&d.push(yOe(_,S,"comment"))}}function Udn(s,c,g,d){r9(s)||C4t(s.pos,c,g,d)}function yOe(s,c,g){return uq(RA(s,c),g)}function uVs(s,c){switch(s.kind){case 242:if(Eu(s.parent))return gVs(s.parent,s,c);switch(s.parent.kind){case 247:case 250:case 251:case 249:case 246:case 248:case 255:case 300:return V(s.parent);case 259:let re=s.parent;if(re.tryBlock===s)return V(s.parent);if(re.finallyBlock===s){let ge=ep(re,98,c);if(ge)return V(ge)}default:return uq(Yy(s,c),"code")}case 269:return V(s.parent);case 264:case 232:case 265:case 267:case 270:case 188:case 207:return V(s);case 190:return V(s,!1,!Mw(s.parent),23);case 297:case 298:return M(s.statements);case 211:return O(s);case 210:return O(s,23);case 285:return _(s);case 289:return S(s);case 286:case 287:return R(s.attributes);case 229:case 15:return T(s);case 208:return V(s,!1,!mg(s.parent),23);case 220:return h(s);case 214:return d(s);case 218:return ee(s);case 276:case 280:case 301:return g(s)}function g(re){if(!re.elements.length)return;let ge=ep(re,19,c),Ie=ep(re,20,c);if(!(!ge||!Ie||vE(ge.pos,Ie.pos,c)))return Ist(ge,Ie,re,c,!1,!1)}function d(re){if(!re.arguments.length)return;let ge=ep(re,21,c),Ie=ep(re,22,c);if(!(!ge||!Ie||vE(ge.pos,Ie.pos,c)))return Ist(ge,Ie,re,c,!1,!0)}function h(re){if(eg(re.body)||dI(re.body)||vE(re.body.getFullStart(),re.body.getEnd(),c))return;let ge=RA(re.body.getFullStart(),re.body.getEnd());return uq(ge,"code",Yy(re))}function _(re){let ge=RA(re.openingElement.getStart(c),re.closingElement.getEnd()),Ie=re.openingElement.tagName.getText(c),_e="<"+Ie+">...";return uq(ge,"code",ge,!1,_e)}function S(re){let ge=RA(re.openingFragment.getStart(c),re.closingFragment.getEnd());return uq(ge,"code",ge,!1,"<>...")}function R(re){if(re.properties.length!==0)return yOe(re.getStart(c),re.getEnd(),"code")}function T(re){if(!(re.kind===15&&re.text.length===0))return yOe(re.getStart(c),re.getEnd(),"code")}function O(re,ge=19){return V(re,!1,!YI(re.parent)&&!Ll(re.parent),ge)}function V(re,ge=!1,Ie=!0,_e=19,Ee=_e===19?20:24){let Ne=ep(s,_e,c),Te=ep(s,Ee,c);return Ne&&Te&&Ist(Ne,Te,re,c,ge,Ie)}function M(re){return re.length?uq(c9(re),"code"):void 0}function ee(re){if(vE(re.getStart(),re.getEnd(),c))return;let ge=RA(re.getStart(),re.getEnd());return uq(ge,"code",Yy(re))}}function gVs(s,c,g){let d=AVs(s,c,g),h=ep(c,20,g);return d&&h&&Ist(d,h,s,g,s.kind!==220)}function Ist(s,c,g,d,h=!1,_=!0){let S=RA(_?s.getFullStart():s.getStart(d),c.getEnd());return uq(S,"code",Yy(g,d),h)}function uq(s,c,g=s,d=!1,h="..."){return{textSpan:s,kind:c,hintSpan:g,bannerText:h,autoCollapse:d}}function AVs(s,c,g){if(FAe(s.parameters,g)){let d=ep(s,21,g);if(d)return d}return ep(c,19,g)}var bOe={};o(bOe,{getRenameInfo:()=>dVs,nodeIsEligibleForRename:()=>jdn});function dVs(s,c,g,d){let h=lWe(Ob(c,g));if(jdn(h)){let _=pVs(h,s.getTypeChecker(),c,s,d);if(_)return _}return hst(Z.You_cannot_rename_this_element)}function pVs(s,c,g,d,h){let _=c.getSymbolAtLocation(s);if(!_){if(_A(s)){let ee=cWe(s,c);if(ee&&(ee.flags&128||ee.flags&1048576&&ue(ee.types,re=>!!(re.flags&128))))return _4t(s.text,s.text,"string","",s,g)}else if(Wrt(s)){let ee=Fp(s);return _4t(ee,ee,"label","",s,g)}return}let{declarations:S}=_;if(!S||S.length===0)return;if(S.some(ee=>fVs(d,ee)))return hst(Z.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(Ir(s)&&s.escapedText==="default"&&_.parent&&_.parent.flags&1536)return;if(_A(s)&&P7(s))return h.allowRenameOfImportPath?hVs(s,g,_):void 0;let R=IVs(g,_,c,h);if(R)return hst(R);let T=g9.getSymbolKind(c,_,s),O=XMt(s)||h1(s)&&s.parent.kind===168?d2(A2(s)):void 0,V=O||c.symbolToString(_),M=O||c.getFullyQualifiedName(_);return _4t(V,M,T,g9.getSymbolModifiers(c,_),s,g)}function fVs(s,c){let g=c.getSourceFile();return s.isSourceFileDefaultLibrary(g)&&lA(g.fileName,".d.ts")}function IVs(s,c,g,d){if(!d.providePrefixAndSuffixTextForRename&&c.flags&2097152){let S=c.declarations&&de(c.declarations,R=>dy(R));S&&!S.propertyName&&(c=g.getAliasedSymbol(c))}let{declarations:h}=c;if(!h)return;let _=Kdn(s.path);if(_===void 0)return zt(h,S=>M1e(S.getSourceFile().path))?Z.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(let S of h){let R=Kdn(S.getSourceFile().path);if(R){let T=Math.min(_.length,R.length);for(let O=0;O<=T;O++)if(Ca(_[O],R[O])!==0)return Z.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function Kdn(s){let c=kp(s),g=c.lastIndexOf("node_modules");if(g!==-1)return c.slice(0,g+2)}function hVs(s,c,g){if(!Xr(s.text))return hst(Z.You_cannot_rename_a_module_via_a_global_import);let d=g.declarations&&de(g.declarations,cl);if(!d)return;let h=di(s.text,"/index")||di(s.text,"/index.js")?void 0:vo(c0(d.fileName),"/index"),_=h===void 0?d.fileName:h,S=h===void 0?"module":"directory",R=s.text.lastIndexOf("/")+1,T=$d(s.getStart(c)+1+R,s.text.length-R);return{canRename:!0,fileToRename:_,kind:S,displayName:_,fullDisplayName:s.text,kindModifiers:"",triggerSpan:T}}function _4t(s,c,g,d,h,_){return{canRename:!0,fileToRename:void 0,kind:g,displayName:s,fullDisplayName:c,kindModifiers:d,triggerSpan:mVs(h,_)}}function hst(s){return{canRename:!1,localizedErrorMessage:Bu(s)}}function mVs(s,c){let g=s.getStart(c),d=s.getWidth(c);return _A(s)&&(g+=1,d-=2),$d(g,d)}function jdn(s){switch(s.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return iWe(s);default:return!1}}var p2e={};o(p2e,{getArgumentInfoForCompletions:()=>EVs,getSignatureHelpItems:()=>CVs});function CVs(s,c,g,d,h){let _=s.getTypeChecker(),S=ape(c,g);if(!S)return;let R=!!d&&d.kind==="characterTyped";if(R&&(zz(c,g,S)||o9(c,g)))return;let T=!!d&&d.kind==="invoked",O=ZVs(S,g,c,_,T);if(!O)return;h.throwIfCancellationRequested();let V=_Vs(O,_,c,S,R);return h.throwIfCancellationRequested(),V?_.runWithCancellationToken(h,M=>V.kind===0?ipn(V.candidates,V.resolvedSignature,O,c,M):VVs(V.symbol,O,c,M)):o0(c)?bVs(O,s,h):void 0}function _Vs({invocation:s,argumentCount:c},g,d,h,_){switch(s.kind){case 0:{if(_&&!yVs(h,s.node,d))return;let S=[],R=g.getResolvedSignatureForSignatureHelp(s.node,S,c);return S.length===0?void 0:{kind:0,candidates:S,resolvedSignature:R}}case 1:{let{called:S}=s;if(_&&!zdn(h,d,Ir(S)?S.parent:S))return;let R=Krt(S,c,g);if(R.length!==0)return{kind:0,candidates:R,resolvedSignature:ma(R)};let T=g.getSymbolAtLocation(S);return T&&{kind:1,symbol:T}}case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return pe.assertNever(s)}}function yVs(s,c,g){if(!Av(c))return!1;let d=c.getChildren(g);switch(s.kind){case 21:return k(d,s);case 28:{let h=aWe(s);return!!h&&k(d,h)}case 30:return zdn(s,g,c.expression);default:return!1}}function bVs(s,c,g){if(s.invocation.kind===2)return;let d=rpn(s.invocation),h=jo(d)?d.name.text:void 0,_=c.getTypeChecker();return h===void 0?void 0:J(c.getSourceFiles(),S=>J(S.getNamedDeclarations().get(h),R=>{let T=R.symbol&&_.getTypeOfSymbolAtLocation(R.symbol,R),O=T&&T.getCallSignatures();if(O&&O.length)return _.runWithCancellationToken(g,V=>ipn(O,O[0],s,S,V,!0))}))}function zdn(s,c,g){let d=s.getFullStart(),h=s.parent;for(;h;){let _=Vm(d,c,h,!0);if(_)return gy(g,_);h=h.parent}return pe.fail("Could not find preceding token")}function EVs(s,c,g,d){let h=$dn(s,c,g,d);return!h||h.isTypeParameterList||h.invocation.kind!==0?void 0:{invocation:h.invocation.node,argumentCount:h.argumentCount,argumentIndex:h.argumentIndex}}function qdn(s,c,g,d){let h=SVs(s,g,d);if(!h)return;let{list:_,argumentIndex:S}=h,R=kVs(d,_),T=GVs(_,g);return{list:_,argumentIndex:S,argumentCount:R,argumentsSpan:T}}function SVs(s,c,g){if(s.kind===30||s.kind===21)return{list:LVs(s.parent,s,c),argumentIndex:0};{let d=aWe(s);return d&&{list:d,argumentIndex:DVs(g,d,s)}}}function $dn(s,c,g,d){let{parent:h}=s;if(Av(h)){let _=h,S=qdn(s,c,g,d);if(!S)return;let{list:R,argumentIndex:T,argumentCount:O,argumentsSpan:V}=S;return{isTypeParameterList:!!h.typeArguments&&h.typeArguments.pos===R.pos,invocation:{kind:0,node:_},argumentsSpan:V,argumentIndex:T,argumentCount:O}}else{if(HW(s)&&QI(h))return k1e(s,c,g)?b4t(h,0,g):void 0;if(dQ(s)&&h.parent.kind===216){let _=h,S=_.parent;pe.assert(_.kind===229);let R=k1e(s,c,g)?0:1;return b4t(S,R,g)}else if(Tie(h)&&QI(h.parent.parent)){let _=h,S=h.parent.parent;if(_de(s)&&!k1e(s,c,g))return;let R=_.parent.templateSpans.indexOf(_),T=xVs(R,s,c,g);return b4t(S,T,g)}else if(nI(h)){let _=h.attributes.pos,S=Yu(g.text,h.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:h},argumentsSpan:$d(_,S-_),argumentIndex:0,argumentCount:1}}else{let _=jrt(s,g);if(_){let{called:S,nTypeArguments:R}=_,T={kind:1,called:S},O=RA(S.getStart(g),s.end);return{isTypeParameterList:!0,invocation:T,argumentsSpan:O,argumentIndex:R,argumentCount:R+1}}return}}}function vVs(s,c,g,d){return BVs(s,c,g,d)||$dn(s,c,g,d)}function epn(s){return po(s.parent)?epn(s.parent):s}function y4t(s){return po(s.left)?y4t(s.left)+1:2}function BVs(s,c,g,d){let h=wVs(s);if(h===void 0)return;let _=TVs(h,g,c,d);if(_===void 0)return;let{contextualType:S,argumentIndex:R,argumentCount:T,argumentsSpan:O}=_,V=S.getNonNullableType(),M=V.symbol;if(M===void 0)return;let ee=li(V.getCallSignatures());return ee===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:ee,node:s,symbol:RVs(M)},argumentsSpan:O,argumentIndex:R,argumentCount:T}}function wVs(s){switch(s.kind){case 21:case 28:return s;default:return ji(s.parent,c=>Si(c)?!0:mg(c)||$m(c)||m2(c)?!1:"quit")}}function TVs(s,c,g,d){let{parent:h}=s;switch(h.kind){case 218:case 175:case 219:case 220:let _=qdn(s,g,c,d);if(!_)return;let{argumentIndex:S,argumentCount:R,argumentsSpan:T}=_,O=gu(h)?d.getContextualTypeForObjectLiteralElement(h):d.getContextualType(h);return O&&{contextualType:O,argumentIndex:S,argumentCount:R,argumentsSpan:T};case 227:{let V=epn(h),M=d.getContextualType(V),ee=s.kind===21?0:y4t(h)-1,re=y4t(V);return M&&{contextualType:M,argumentIndex:ee,argumentCount:re,argumentsSpan:Yy(h)}}default:return}}function RVs(s){return s.name==="__type"&&J(s.declarations,c=>{var g;return Z_(c)?(g=Gs(c.parent,bE))==null?void 0:g.symbol:void 0})||s}function NVs(s,c){let g=c.getTypeAtLocation(s.expression);if(c.isTupleType(g)){let{elementFlags:d,fixedLength:h}=g.target;if(h===0)return 0;let _=Se(d,S=>!(S&1));return _<0?h:_}return 0}function DVs(s,c,g){return tpn(s,c,g)}function kVs(s,c){return tpn(s,c,void 0)}function tpn(s,c,g){let d=c.getChildren(),h=0,_=!1;for(let S of d){if(g&&S===g)return!_&&S.kind===28&&h++,h;if(cf(S)){h+=NVs(S,s),_=!0;continue}if(S.kind!==28){h++,_=!0;continue}if(_){_=!1;continue}h++}return g?h:d.length&&Ei(d).kind===28?h+1:h}function xVs(s,c,g,d){return pe.assert(g>=c.getStart(),"Assumed 'position' could not occur before node."),bge(c)?k1e(c,g,d)?0:s+2:s+1}function b4t(s,c,g){let d=HW(s.template)?1:s.template.templateSpans.length+1;return c!==0&&pe.assertLessThan(c,d),{isTypeParameterList:!1,invocation:{kind:0,node:s},argumentsSpan:FVs(s,g),argumentIndex:c,argumentCount:d}}function GVs(s,c){let g=s.getFullStart(),d=Yu(c.text,s.getEnd(),!1);return $d(g,d-g)}function FVs(s,c){let g=s.template,d=g.getStart(),h=g.getEnd();return g.kind===229&&Ei(g.templateSpans).literal.getFullWidth()===0&&(h=Yu(c.text,h,!1)),$d(d,h-d)}function ZVs(s,c,g,d,h){for(let _=s;!cl(_)&&(h||!eg(_));_=_.parent){pe.assert(gy(_.parent,_),"Not a subspan",()=>`Child: ${pe.formatSyntaxKind(_.kind)}, parent: ${pe.formatSyntaxKind(_.parent.kind)}`);let S=vVs(_,c,g,d);if(S)return S}}function LVs(s,c,g){let d=s.getChildren(g),h=d.indexOf(c);return pe.assert(h>=0&&d.length>h+1),d[h+1]}function rpn(s){return s.kind===0?cAe(s.node):s.called}function npn(s){return s.kind===0?s.node:s.kind===1?s.called:s.node}var EOe=70246400;function ipn(s,c,{isTypeParameterList:g,argumentCount:d,argumentsSpan:h,invocation:_,argumentIndex:S},R,T,O){var V;let M=npn(_),ee=_.kind===2?_.symbol:T.getSymbolAtLocation(rpn(_))||O&&((V=c.declaration)==null?void 0:V.symbol),re=ee?dpe(T,ee,O?R:void 0,void 0):E,ge=lt(s,Te=>OVs(Te,re,g,T,M,R)),Ie=0,_e=0;for(let Te=0;Te1)){let Pe=0;for(let Ke of Ze){if(Ke.isVariadic||Ke.parameters.length>=d){Ie=_e+Pe;break}Pe++}}_e+=Ze.length}pe.assert(Ie!==-1);let Ee={items:Bt(ge,Zl),applicableSpan:h,selectedItemIndex:Ie,argumentIndex:S,argumentCount:d},Ne=Ee.items[Ie];if(Ne.isVariadic){let Te=Se(Ne.parameters,Ze=>!!Ze.isRest);-1opn(M,g,d,h,S)),T=s.getDocumentationComment(g),O=s.getJsDocTags(g);return{isVariadic:!1,prefixDisplayParts:[..._,F0(30)],suffixDisplayParts:[F0(32)],separatorDisplayParts:spn,parameters:R,documentation:T,tags:O}}var spn=[F0(28),TI()];function OVs(s,c,g,d,h,_){let S=(g?MVs:HVs)(s,d,h,_);return lt(S,({isVariadic:R,parameters:T,prefix:O,suffix:V})=>{let M=[...c,...O],ee=[...V,...PVs(s,h,d)],re=s.getDocumentationComment(d),ge=s.getJsDocTags();return{isVariadic:R,prefixDisplayParts:M,suffixDisplayParts:ee,separatorDisplayParts:spn,parameters:T,documentation:re,tags:ge}})}function PVs(s,c,g){return tO(d=>{d.writePunctuation(":"),d.writeSpace(" ");let h=g.getTypePredicateOfSignature(s);h?g.writeTypePredicate(h,c,void 0,d):g.writeType(g.getReturnTypeOfSignature(s),c,void 0,d)})}function MVs(s,c,g,d){let h=(s.target||s).typeParameters,_=EQ(),S=(h||E).map(T=>opn(T,c,g,d,_)),R=s.thisParameter?[c.symbolToParameterDeclaration(s.thisParameter,g,EOe)]:[];return c.getExpandedParameters(s).map(T=>{let O=me.createNodeArray([...R,...lt(T,M=>c.symbolToParameterDeclaration(M,g,EOe))]),V=tO(M=>{_.writeList(2576,O,d,M)});return{isVariadic:!1,parameters:S,prefix:[F0(30)],suffix:[F0(32),...V]}})}function HVs(s,c,g,d){let h=EQ(),_=tO(T=>{if(s.typeParameters&&s.typeParameters.length){let O=me.createNodeArray(s.typeParameters.map(V=>c.typeParameterToDeclaration(V,g,EOe)));h.writeList(53776,O,d,T)}}),S=c.getExpandedParameters(s),R=c.hasEffectiveRestParameter(s)?S.length===1?T=>!0:T=>{var O;return!!(T.length&&((O=Gs(T[T.length-1],Tw))==null?void 0:O.links.checkFlags)&32768)}:T=>!1;return S.map(T=>({isVariadic:R(T),parameters:T.map(O=>YVs(O,c,g,d,h)),prefix:[..._,F0(21)],suffix:[F0(22)]}))}function YVs(s,c,g,d,h){let _=tO(T=>{let O=c.symbolToParameterDeclaration(s,g,EOe);h.writeNode(4,O,d,T)}),S=c.isOptionalParameter(s.valueDeclaration),R=Tw(s)&&!!(s.links.checkFlags&32768);return{name:s.name,documentation:s.getDocumentationComment(c),displayParts:_,isOptional:S,isRest:R}}function opn(s,c,g,d,h){let _=tO(S=>{let R=c.typeParameterToDeclaration(s,g,EOe);h.writeNode(4,R,d,S)});return{name:s.symbol.name,documentation:s.symbol.getDocumentationComment(c),displayParts:_,isOptional:!1,isRest:!1}}var mst={};o(mst,{getSmartSelectionRange:()=>QVs});function QVs(s,c){var g,d;let h={textSpan:RA(c.getFullStart(),c.getEnd())},_=c;e:for(;;){let T=UVs(_);if(!T.length)break;for(let O=0;Os)break e;let re=Ws(a2(c.text,M.end));if(re&&re.kind===2&&R(re.pos,re.end),XVs(c,s,M)){if(m7(M)&&Gd(_)&&!vE(M.getStart(c),M.getEnd(),c)&&S(M.getStart(c),M.getEnd()),eg(M)||Tie(M)||dQ(M)||_de(M)||V&&dQ(V)||d_(M)&&Eh(_)||Gie(M)&&d_(_)||nc(M)&&Gie(_)&&T.length===1||K3(M)||s9(M)||FU(M)){_=M;break}if(Tie(_)&&ee&&p7(ee)){let Ee=M.getFullStart()-2,Ne=ee.getStart()+1;S(Ee,Ne)}let ge=Gie(M)&&KVs(V)&&jVs(ee)&&!vE(V.getStart(),ee.getStart(),c),Ie=ge?V.getEnd():M.getStart(),_e=ge?ee.getStart():zVs(c,M);if(jm(M)&&((g=M.jsDoc)!=null&&g.length)&&S(ma(M.jsDoc).getStart(),_e),Gie(M)){let Ee=M.getChildren()[0];Ee&&jm(Ee)&&((d=Ee.jsDoc)!=null&&d.length)&&Ee.getStart()!==M.pos&&(Ie=Math.min(Ie,ma(Ee.jsDoc).getStart()))}S(Ie,_e),(Lg(M)||yW(M))&&S(Ie+1,_e-1),_=M;break}if(O===T.length-1)break e}}return h;function S(T,O){if(T!==O){let V=RA(T,O);(!h||!ase(V,h.textSpan)&&nN(V,s))&&(h={textSpan:V,...h&&{parent:h}})}}function R(T,O){S(T,O);let V=T;for(;c.text.charCodeAt(V)===47;)V++;S(V,O)}}function XVs(s,c,g){return pe.assert(g.pos<=c),cR===s.readonlyToken||R.kind===148||R===s.questionToken||R.kind===58),S=f2e(_,({kind:R})=>R===23||R===169||R===24);return[g,I2e(Cst(S,({kind:R})=>R===59)),h]}if(ss(s)){let g=f2e(s.getChildren(),S=>S===s.name||k(s.modifiers,S)),d=((c=g[0])==null?void 0:c.kind)===321?g[0]:void 0,h=d?g.slice(1):g,_=Cst(h,({kind:S})=>S===59);return d?[d,I2e(_)]:_}if(Si(s)){let g=f2e(s.getChildren(),h=>h===s.dotDotDotToken||h===s.name),d=f2e(g,h=>h===g[0]||h===s.questionToken);return Cst(d,({kind:h})=>h===64)}return mg(s)?Cst(s.getChildren(),({kind:g})=>g===64):s.getChildren()}function f2e(s,c){let g=[],d;for(let h of s)c(h)?(d=d||[],d.push(h)):(d&&(g.push(I2e(d)),d=void 0),g.push(h));return d&&g.push(I2e(d)),g}function Cst(s,c,g=!0){if(s.length<2)return s;let d=Se(s,c);if(d===-1)return s;let h=s.slice(0,d),_=s[d],S=Ei(s),R=g&&S.kind===27,T=s.slice(d+1,R?s.length-1:void 0),O=Hr([h.length?I2e(h):void 0,_,T.length?I2e(T):void 0]);return R?O.concat(S):O}function I2e(s){return pe.assertGreaterThanOrEqual(s.length,1),GB(q3.createSyntaxList(s),s[0].pos,Ei(s).end)}function KVs(s){let c=s&&s.kind;return c===19||c===23||c===21||c===287}function jVs(s){let c=s&&s.kind;return c===20||c===24||c===22||c===288}function zVs(s,c){switch(c.kind){case 342:case 339:case 349:case 347:case 344:return s.getLineEndOfPosition(c.getStart());default:return c.getEnd()}}var g9={};o(g9,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>$Vs,getSymbolKind:()=>cpn,getSymbolModifiers:()=>qVs});var apn=70246400;function cpn(s,c,g){let d=lpn(s,c,g);if(d!=="")return d;let h=CU(c);return h&32?yp(c,232)?"local class":"class":h&384?"enum":h&524288?"type":h&64?"interface":h&262144?"type parameter":h&8?"enum member":h&2097152?"alias":h&1536?"module":d}function lpn(s,c,g){let d=s.getRootSymbols(c);if(d.length===1&&ma(d).flags&8192&&s.getTypeOfSymbolAtLocation(c,g).getNonNullableType().getCallSignatures().length!==0)return"method";if(s.isUndefinedSymbol(c))return"var";if(s.isArgumentsSymbol(c))return"local var";if(g.kind===110&&un(g)||zL(g))return"parameter";let h=CU(c);if(h&3)return Int(c)?"parameter":c.valueDeclaration&&sI(c.valueDeclaration)?"const":c.valueDeclaration&&iI(c.valueDeclaration)?"using":c.valueDeclaration&&Bd(c.valueDeclaration)?"await using":F(c.declarations,aS)?"let":Apn(c)?"local var":"var";if(h&16)return Apn(c)?"local function":"function";if(h&32768)return"getter";if(h&65536)return"setter";if(h&8192)return"method";if(h&16384)return"constructor";if(h&131072)return"index";if(h&4){if(h&33554432&&c.links.checkFlags&6){let _=F(s.getRootSymbols(c),S=>{if(S.getFlags()&98311)return"property"});return _||(s.getTypeOfSymbolAtLocation(c,g).getCallSignatures().length?"method":"property")}return"property"}return""}function upn(s){if(s.declarations&&s.declarations.length){let[c,...g]=s.declarations,d=B(g)&&kWe(c)&&zt(g,_=>!kWe(_))?65536:0,h=cpe(c,d);if(h)return h.split(",")}return[]}function qVs(s,c){if(!c)return"";let g=new Set(upn(c));if(c.flags&2097152){let d=s.getAliasedSymbol(c);d!==c&&F(upn(d),h=>{g.add(h)})}return c.flags&16777216&&g.add("optional"),g.size>0?Do(g.values()).join(","):""}function gpn(s,c,g,d,h,_,S,R,T,O){var V;let M=[],ee=[],re=[],ge=CU(c),Ie=S&1?lpn(s,c,h):"",_e=!1,Ee=h.kind===110&&hne(h)||zL(h),Ne,Te,Ze=!1,Pe={canIncreaseExpansionDepth:!1,truncated:!1},Ke=!1;if(h.kind===110&&!Ee)return{displayParts:[v1(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(Ie!==""||ge&32||ge&2097152){if(Ie==="getter"||Ie==="setter"){let Dt=de(c.declarations,tr=>tr.name===h&&tr.kind!==212);if(Dt)switch(Dt.kind){case 178:Ie="getter";break;case 179:Ie="setter";break;case 173:Ie="accessor";break;default:pe.assertNever(Dt)}else Ie="property"}let Gt;if(_??(_=Ee?s.getTypeAtLocation(h):s.getTypeOfSymbolAtLocation(c,h)),h.parent&&h.parent.kind===212){let Dt=h.parent.name;(Dt===h||Dt&&Dt.getFullWidth()===0)&&(h=h.parent)}let it;if(Av(h)?it=h:(Frt(h)||spe(h)||h.parent&&(nI(h.parent)||QI(h.parent))&&Eu(c.valueDeclaration))&&(it=h.parent),it){Gt=s.getResolvedSignature(it);let Dt=it.kind===215||Ll(it)&&it.expression.kind===108,tr=Dt?_.getConstructSignatures():_.getCallSignatures();if(Gt&&!k(tr,Gt.target)&&!k(tr,Gt)&&(Gt=tr.length?tr[0]:void 0),Gt){switch(Dt&&ge&32?(Ie="constructor",Lt(_.symbol,Ie)):ge&2097152?(Ie="alias",je(Ie),M.push(TI()),Dt&&(Gt.flags&4&&(M.push(v1(128)),M.push(TI())),M.push(v1(105)),M.push(TI())),Rt(c)):Lt(c,Ie),Ie){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":M.push(F0(59)),M.push(TI()),!(la(_)&16)&&_.symbol&&(Pr(M,dpe(s,_.symbol,d,void 0,5)),M.push(cse())),Dt&&(Gt.flags&4&&(M.push(v1(128)),M.push(TI())),M.push(v1(105)),M.push(TI())),Wt(Gt,tr,262144);break;default:Wt(Gt,tr)}_e=!0,Ze=tr.length>1}}else if(Hrt(h)&&!(ge&98304)||h.kind===137&&h.parent.kind===177){let Dt=h.parent;if(c.declarations&&de(c.declarations,ur=>ur===(h.kind===137?Dt.parent:Dt))){let ur=Dt.kind===177?_.getNonNullableType().getConstructSignatures():_.getNonNullableType().getCallSignatures();s.isImplementationOfOverload(Dt)?Gt=ur[0]:Gt=s.getSignatureFromDeclaration(Dt),Dt.kind===177?(Ie="constructor",Lt(_.symbol,Ie)):Lt(Dt.kind===180&&!(_.symbol.flags&2048||_.symbol.flags&4096)?_.symbol:c,Ie),Gt&&Wt(Gt,ur),_e=!0,Ze=ur.length>1}}}if(ge&32&&!_e&&!Ee){at();let Gt=yp(c,232);Gt&&(je("local class"),M.push(TI())),yt(c,S)||(Gt||(M.push(v1(86)),M.push(TI())),Rt(c),_r(c,g))}if(ge&64&&S&2&&(Tt(),yt(c,S)||(M.push(v1(120)),M.push(TI()),Rt(c),_r(c,g))),ge&524288&&S&2&&(Tt(),M.push(v1(156)),M.push(TI()),Rt(c),_r(c,g),M.push(TI()),M.push(Ape(64)),M.push(TI()),Pr(M,V1e(s,h.parent&&l2(h.parent)?s.getTypeAtLocation(h.parent):s.getDeclaredTypeOfSymbol(c),d,8388608,T,O,Pe))),ge&384&&(Tt(),yt(c,S)||(zt(c.declarations,Gt=>J3(Gt)&&OA(Gt))&&(M.push(v1(87)),M.push(TI())),M.push(v1(94)),M.push(TI()),Rt(c,void 0))),ge&1536&&!Ee&&(Tt(),!yt(c,S))){let Gt=yp(c,268),it=Gt&&Gt.name&&Gt.name.kind===80;M.push(v1(it?145:144)),M.push(TI()),Rt(c)}if(ge&262144&&S&2)if(Tt(),M.push(F0(21)),M.push(IS("type parameter")),M.push(F0(22)),M.push(TI()),Rt(c),c.parent)Qe(),Rt(c.parent,d),_r(c.parent,d);else{let Gt=yp(c,169);if(Gt===void 0)return pe.fail();let it=Gt.parent;if(it)if(Eu(it)){Qe();let Dt=s.getSignatureFromDeclaration(it);it.kind===181?(M.push(v1(105)),M.push(TI())):it.kind!==180&&it.name&&Rt(it.symbol),Pr(M,mnt(s,Dt,g,32))}else PB(it)&&(Qe(),M.push(v1(156)),M.push(TI()),Rt(it.symbol),_r(it.symbol,g))}if(ge&8){Ie="enum member",Lt(c,"enum member");let Gt=(V=c.declarations)==null?void 0:V[0];if(Gt?.kind===307){let it=s.getConstantValue(Gt);it!==void 0&&(M.push(TI()),M.push(Ape(64)),M.push(TI()),M.push(TE(Hge(it),typeof it=="number"?7:8)))}}if(c.flags&2097152){if(Tt(),!_e||ee.length===0&&re.length===0){let Gt=s.getAliasedSymbol(c);if(Gt!==c&&Gt.declarations&&Gt.declarations.length>0){let it=Gt.declarations[0],Dt=fl(it);if(Dt&&!_e){let tr=PY(it)&&Ga(it,128),ur=c.name!=="default"&&!tr,Gr=gpn(s,Gt,ms(it),d,Dt,_,S,ur?c:Gt,T,O);M.push(...Gr.displayParts),M.push(cse()),Ne=Gr.documentation,Te=Gr.tags,Pe&&Gr.canIncreaseVerbosityLevel&&(Pe.canIncreaseExpansionDepth=!0)}else Ne=Gt.getContextualDocumentationComment(it,s),Te=Gt.getJsDocTags(s)}}if(c.declarations)switch(c.declarations[0].kind){case 271:M.push(v1(95)),M.push(TI()),M.push(v1(145));break;case 278:M.push(v1(95)),M.push(TI()),M.push(v1(c.declarations[0].isExportEquals?64:90));break;case 282:M.push(v1(95));break;default:M.push(v1(102))}M.push(TI()),Rt(c),F(c.declarations,Gt=>{if(Gt.kind===272){let it=Gt;if(YL(it))M.push(TI()),M.push(Ape(64)),M.push(TI()),M.push(v1(149)),M.push(F0(21)),M.push(TE(Fp(F7(it)),8)),M.push(F0(22));else{let Dt=s.getSymbolAtLocation(it.moduleReference);Dt&&(M.push(TI()),M.push(Ape(64)),M.push(TI()),Rt(Dt,d))}return!0}})}if(!_e)if(Ie!==""){if(_){if(Ee?(Tt(),M.push(v1(110))):Lt(c,Ie),Ie==="property"||Ie==="accessor"||Ie==="getter"||Ie==="setter"||Ie==="JSX attribute"||ge&3||Ie==="local var"||Ie==="index"||Ie==="using"||Ie==="await using"||Ee){if(M.push(F0(59)),M.push(TI()),_.symbol&&_.symbol.flags&262144&&Ie!=="index"){let Gt=tO(it=>{let Dt=s.typeParameterToDeclaration(_,d,apn,void 0,void 0,T,O,Pe);Ye().writeNode(4,Dt,ms(eu(d)),it)},T);Pr(M,Gt)}else Pr(M,V1e(s,_,d,void 0,T,O,Pe));if(Tw(c)&&c.links.target&&Tw(c.links.target)&&c.links.target.links.tupleLabelDeclaration){let Gt=c.links.target.links.tupleLabelDeclaration;pe.assertNode(Gt.name,Ir),M.push(TI()),M.push(F0(21)),M.push(IS(Vo(Gt.name))),M.push(F0(22))}}else if(ge&16||ge&8192||ge&16384||ge&131072||ge&98304||Ie==="method"){let Gt=_.getNonNullableType().getCallSignatures();Gt.length&&(Wt(Gt[0],Gt),Ze=Gt.length>1)}}}else Ie=cpn(s,c,h);if(ee.length===0&&!Ze&&(ee=c.getContextualDocumentationComment(d,s)),ee.length===0&&ge&4&&c.parent&&c.declarations&&F(c.parent.declarations,Gt=>Gt.kind===308))for(let Gt of c.declarations){if(!Gt.parent||Gt.parent.kind!==227)continue;let it=s.getSymbolAtLocation(Gt.parent.right);if(it&&(ee=it.getDocumentationComment(s),re=it.getJsDocTags(s),ee.length>0))break}if(ee.length===0&&Ir(h)&&c.valueDeclaration&&mg(c.valueDeclaration)){let Gt=c.valueDeclaration,it=Gt.parent,Dt=Gt.propertyName||Gt.name;if(Ir(Dt)&&$m(it)){let tr=A2(Dt),ur=s.getTypeAtLocation(it);ee=J(ur.isUnion()?ur.types:[ur],Gr=>{let dt=Gr.getProperty(tr);return dt?dt.getDocumentationComment(s):void 0})||E}}re.length===0&&!Ze&&!XY(h)&&(re=c.getContextualJsDocTags(d,s)),ee.length===0&&Ne&&(ee=Ne),re.length===0&&Te&&(re=Te);let et=!Pe.truncated&&Pe.canIncreaseExpansionDepth;return{displayParts:M,documentation:ee,symbolKind:Ie,tags:re.length===0?void 0:re,canIncreaseVerbosityLevel:O!==void 0?et:void 0};function Ye(){return EQ()}function Tt(){M.length&&M.push(cse()),at()}function at(){R&&(je("alias"),M.push(TI()))}function Qe(){M.push(TI()),M.push(v1(103)),M.push(TI())}function Ct(Gt,it){if(O===void 0)return!1;let Dt=Gt.flags&96?s.getDeclaredTypeOfSymbol(Gt):s.getTypeOfSymbolAtLocation(Gt,h);return!Dt||s.isLibType(Dt)?!1:0{let Gr=s.getEmitResolver().symbolToDeclarations(Gt,Dt,17408,T,O!==void 0?O-1:void 0,Pe),dt=Ye(),pr=Gt.valueDeclaration&&ms(Gt.valueDeclaration);Gr.forEach((ot,ir)=>{ir>0&&ur.writeLine(),dt.writeNode(4,ot,pr,ur)})},T);return Pr(M,tr),Ke=!0,!0}return!1}function Rt(Gt,it){let Dt;R&&Gt===c&&(Gt=R),Ie==="index"&&(Dt=s.getIndexInfosOfIndexSymbol(Gt));let tr=[];Gt.flags&131072&&Dt?(Gt.parent&&(tr=dpe(s,Gt.parent)),tr.push(F0(23)),Dt.forEach((ur,Gr)=>{tr.push(...V1e(s,ur.keyType)),Gr!==Dt.length-1&&(tr.push(TI()),tr.push(F0(52)),tr.push(TI()))}),tr.push(F0(24))):tr=dpe(s,Gt,it||g,void 0,7),Pr(M,tr),c.flags&16777216&&M.push(F0(58))}function Lt(Gt,it){Tt(),it&&(je(it),Gt&&!zt(Gt.declarations,Dt=>gA(Dt)||(jA(Dt)||wd(Dt))&&!Dt.name)&&(M.push(TI()),Rt(Gt)))}function je(Gt){switch(Gt){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":M.push(hnt(Gt));return;default:M.push(F0(21)),M.push(hnt(Gt)),M.push(F0(22));return}}function Wt(Gt,it,Dt=0){Pr(M,mnt(s,Gt,d,Dt|32,T,O,Pe)),it.length>1&&(M.push(TI()),M.push(F0(21)),M.push(Ape(40)),M.push(TE((it.length-1).toString(),7)),M.push(TI()),M.push(IS(it.length===2?"overload":"overloads")),M.push(F0(22))),ee=Gt.getDocumentationComment(s),re=Gt.getJsDocTags(),it.length>1&&ee.length===0&&re.length===0&&(ee=it[0].getDocumentationComment(s),re=it[0].getJsDocTags().filter(tr=>tr.name!=="deprecated"))}function _r(Gt,it){let Dt=tO(tr=>{let ur=s.symbolToTypeParameterDeclarations(Gt,it,apn);Ye().writeList(53776,ur,ms(eu(it)),tr)});Pr(M,Dt)}}function $Vs(s,c,g,d,h,_=QU(h),S,R,T){return gpn(s,c,g,d,h,void 0,_,S,R,T)}function Apn(s){return s.parent?!1:F(s.declarations,c=>{if(c.kind===219)return!0;if(c.kind!==261&&c.kind!==263)return!1;for(let g=c.parent;!wW(g);g=g.parent)if(g.kind===308||g.kind===269)return!1;return!0})}var xo={};o(xo,{ChangeTracker:()=>rWs,LeadingTriviaOption:()=>fpn,TrailingTriviaOption:()=>Ipn,applyChanges:()=>w4t,assignPositionsToNode:()=>Est,createWriter:()=>mpn,deleteNode:()=>zF,getAdjustedEndPosition:()=>gq,isThisTypeAnnotatable:()=>tWs,isValidLocationToAddComment:()=>Cpn});function dpn(s){let c=s.__pos;return pe.assert(typeof c=="number"),c}function E4t(s,c){pe.assert(typeof c=="number"),s.__pos=c}function ppn(s){let c=s.__end;return pe.assert(typeof c=="number"),c}function S4t(s,c){pe.assert(typeof c=="number"),s.__end=c}var fpn=(s=>(s[s.Exclude=0]="Exclude",s[s.IncludeAll=1]="IncludeAll",s[s.JSDoc=2]="JSDoc",s[s.StartLine=3]="StartLine",s))(fpn||{}),Ipn=(s=>(s[s.Exclude=0]="Exclude",s[s.ExcludeWhitespace=1]="ExcludeWhitespace",s[s.Include=2]="Include",s))(Ipn||{});function hpn(s,c){return Yu(s,c,!1,!0)}function eWs(s,c){let g=c;for(;g0?1:0,ee=JD(z7(s,O)+M,s);return ee=hpn(s.text,ee),JD(z7(s,ee),s)}function v4t(s,c,g){let{end:d}=c,{trailingTriviaOption:h}=g;if(h===2){let _=a2(s.text,d);if(_){let S=z7(s,c.end);for(let R of _){if(R.kind===2||z7(s,R.pos)>S)break;if(z7(s,R.end)>S)return Yu(s.text,R.end,!0,!0)}}}}function gq(s,c,g){var d;let{end:h}=c,{trailingTriviaOption:_}=g;if(_===0)return h;if(_===1){let T=Nn(a2(s.text,h),CE(s.text,h)),O=(d=T?.[T.length-1])==null?void 0:d.end;return O||h}let S=v4t(s,c,g);if(S)return S;let R=Yu(s.text,h,!0);return R!==h&&(_===2||ml(s.text.charCodeAt(R-1)))?R:h}function _st(s,c){return!!c&&!!s.parent&&(c.kind===28||c.kind===27&&s.parent.kind===211)}function tWs(s){return jA(s)||ah(s)}var rWs=class Wxr{constructor(c,g){this.newLineCharacter=c,this.formatContext=g,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(c){return new Wxr(UF(c.host,c.formatContext.options),c.formatContext)}static with(c,g){let d=Wxr.fromContext(c);return g(d),d.getChanges()}pushRaw(c,g){pe.assertEqual(c.fileName,g.fileName);for(let d of g.textChanges)this.changes.push({kind:3,sourceFile:c,text:d.newText,range:pWe(d.span)})}deleteRange(c,g){this.changes.push({kind:0,sourceFile:c,range:g})}delete(c,g){this.deletedNodes.push({sourceFile:c,node:g})}deleteNode(c,g,d={leadingTriviaOption:1}){this.deleteRange(c,m2e(c,g,g,d))}deleteNodes(c,g,d={leadingTriviaOption:1},h){for(let _ of g){let S=qU(c,_,d,h),R=gq(c,_,d);this.deleteRange(c,{pos:S,end:R}),h=!!v4t(c,_,d)}}deleteModifier(c,g){this.deleteRange(c,{pos:g.getStart(c),end:Yu(c.text,g.end,!0)})}deleteNodeRange(c,g,d,h={leadingTriviaOption:1}){let _=qU(c,g,h),S=gq(c,d,h);this.deleteRange(c,{pos:_,end:S})}deleteNodeRangeExcludingEnd(c,g,d,h={leadingTriviaOption:1}){let _=qU(c,g,h),S=d===void 0?c.text.length:qU(c,d,h);this.deleteRange(c,{pos:_,end:S})}replaceRange(c,g,d,h={}){this.changes.push({kind:1,sourceFile:c,range:g,options:h,node:d})}replaceNode(c,g,d,h=h2e){this.replaceRange(c,m2e(c,g,g,h),d,h)}replaceNodeRange(c,g,d,h,_=h2e){this.replaceRange(c,m2e(c,g,d,_),h,_)}replaceRangeWithNodes(c,g,d,h={}){this.changes.push({kind:2,sourceFile:c,range:g,options:h,nodes:d})}replaceNodeWithNodes(c,g,d,h=h2e){this.replaceRangeWithNodes(c,m2e(c,g,g,h),d,h)}replaceNodeWithText(c,g,d){this.replaceRangeWithText(c,m2e(c,g,g,h2e),d)}replaceNodeRangeWithNodes(c,g,d,h,_=h2e){this.replaceRangeWithNodes(c,m2e(c,g,d,_),h,_)}nodeHasTrailingComment(c,g,d=h2e){return!!v4t(c,g,d)}nextCommaToken(c,g){let d=wQ(g,g.parent,c);return d&&d.kind===28?d:void 0}replacePropertyAssignment(c,g,d){let h=this.nextCommaToken(c,g)?"":","+this.newLineCharacter;this.replaceNode(c,g,d,{suffix:h})}insertNodeAt(c,g,d,h={}){this.replaceRange(c,Ly(g),d,h)}insertNodesAt(c,g,d,h={}){this.replaceRangeWithNodes(c,Ly(g),d,h)}insertNodeAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertNodesAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertAtTopOfFile(c,g,d){let h=uWs(c),_={prefix:h===0?void 0:this.newLineCharacter,suffix:(ml(c.text.charCodeAt(h))?"":this.newLineCharacter)+(d?this.newLineCharacter:"")};Ki(g)?this.insertNodesAt(c,h,g,_):this.insertNodeAt(c,h,g,_)}insertNodesAtEndOfFile(c,g,d){this.insertAtEndOfFile(c,g,d)}insertAtEndOfFile(c,g,d){let h=c.end+1,_={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(d?this.newLineCharacter:"")};this.insertNodesAt(c,h,g,_)}insertStatementsInNewFile(c,g,d){this.newFileChanges||(this.newFileChanges=Al()),this.newFileChanges.add(c,{oldFile:d,statements:g})}insertFirstParameter(c,g,d){let h=Nc(g);h?this.insertNodeBefore(c,h,d):this.insertNodeAt(c,g.pos,d)}insertNodeBefore(c,g,d,h=!1,_={}){this.insertNodeAt(c,qU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,d,h))}insertNodesBefore(c,g,d,h=!1,_={}){this.insertNodesAt(c,qU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,ma(d),h))}insertModifierAt(c,g,d,h={}){this.insertNodeAt(c,g,me.createToken(d),h)}insertModifierBefore(c,g,d){return this.insertModifierAt(c,d.getStart(c),g,{suffix:" "})}insertCommentBeforeLine(c,g,d,h){let _=JD(g,c),S=UMt(c.text,_),R=Cpn(c,S),T=ise(c,R?S:d),O=c.text.slice(_,S),V=`${R?"":this.newLineCharacter}//${h}${this.newLineCharacter}${O}`;this.insertText(c,T.getStart(c),V)}insertJsdocCommentBefore(c,g,d){let h=g.getStart(c);if(g.jsDoc)for(let R of g.jsDoc)this.deleteRange(c,{pos:QB(R.getStart(c),c),end:gq(c,R,{})});let _=bWe(c.text,h-1),S=c.text.slice(_,h);this.insertNodeAt(c,h,d,{suffix:this.newLineCharacter+S})}createJSDocText(c,g){let d=jt(g.jsDoc,_=>Xs(_.comment)?me.createJSDocText(_.comment):_.comment),h=Ws(g.jsDoc);return h&&vE(h.pos,h.end,c)&&B(d)===0?void 0:me.createNodeArray(fe(d,me.createJSDocText(` +`)))}replaceJSDocComment(c,g,d){this.insertJsdocCommentBefore(c,nWs(g),me.createJSDocComment(this.createJSDocText(c,g),me.createNodeArray(d)))}addJSDocTags(c,g,d){let h=Bt(g.jsDoc,S=>S.tags),_=d.filter(S=>!h.some((R,T)=>{let O=iWs(R,S);return O&&(h[T]=O),!!O}));this.replaceJSDocComment(c,g,[...h,..._])}filterJSDocTags(c,g,d){this.replaceJSDocComment(c,g,Le(Bt(g.jsDoc,h=>h.tags),d))}replaceRangeWithText(c,g,d){this.changes.push({kind:3,sourceFile:c,range:g,text:d})}insertText(c,g,d){this.replaceRangeWithText(c,Ly(g),d)}tryInsertTypeAnnotation(c,g,d){let h;if(Eu(g)){if(h=ep(g,22,c),!h){if(!gA(g))return!1;h=ma(g.parameters)}}else h=(g.kind===261?g.exclamationToken:g.questionToken)??g.name;return this.insertNodeAt(c,h.end,d,{prefix:": "}),!0}tryInsertThisTypeAnnotation(c,g,d){let h=ep(g,21,c).getStart(c)+1,_=g.parameters.length?", ":"";this.insertNodeAt(c,h,d,{prefix:"this: ",suffix:_})}insertTypeParameters(c,g,d){let h=(ep(g,21,c)||ma(g.parameters)).getStart(c);this.insertNodesAt(c,h,d,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(c,g,d){return Lc(c)||MI(c)?{suffix:d?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:nc(c)?{suffix:", "}:Si(c)?Si(g)?{suffix:", "}:{}:Lg(c)&&Yf(c.parent)||wN(c)?{suffix:", "}:dy(c)?{suffix:","+(d?this.newLineCharacter:" ")}:pe.failBadSyntaxKind(c)}insertNodeAtConstructorStart(c,g,d){let h=Nc(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[d,...g.body.statements]):this.insertNodeBefore(c,h,d)}insertNodeAtConstructorStartAfterSuperCall(c,g,d){let h=de(g.body.statements,_=>PC(_)&&Gy(_.expression));!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}insertNodeAtConstructorEnd(c,g,d){let h=li(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}replaceConstructorBody(c,g,d){this.replaceNode(c,g.body,me.createBlock(d,!0))}insertNodeAtEndOfScope(c,g,d){let h=qU(c,g.getLastToken(),{});this.insertNodeAt(c,h,d,{prefix:ml(c.text.charCodeAt(g.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtObjectStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtStartWorker(c,g,d){let h=this.guessIndentationFromExistingMembers(c,g)??this.computeIndentationForNewMember(c,g);this.insertNodeAt(c,yst(g).pos,d,this.getInsertNodeAtStartInsertOptions(c,g,h))}guessIndentationFromExistingMembers(c,g){let d,h=g;for(let _ of yst(g)){if(nz(h,_,c))return;let S=_.getStart(c),R=_m.SmartIndenter.findFirstNonWhitespaceColumn(QB(S,c),S,c,this.formatContext.options);if(d===void 0)d=R;else if(R!==d)return;h=_}return d}computeIndentationForNewMember(c,g){let d=g.getStart(c);return _m.SmartIndenter.findFirstNonWhitespaceColumn(QB(d,c),d,c,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(c,g,d){let _=yst(g).length===0,S=!this.classesWithNodesInsertedAtStart.has(id(g));S&&this.classesWithNodesInsertedAtStart.set(id(g),{node:g,sourceFile:c});let R=ag(g)&&(!Zu(c)||!_),T=ag(g)&&Zu(c)&&_&&!S;return{indentation:d,prefix:(T?",":"")+this.newLineCharacter,suffix:R?",":p_(g)&&_?";":""}}insertNodeAfterComma(c,g,d){let h=this.insertNodeAfterWorker(c,this.nextCommaToken(c,g)||g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAtEndOfList(c,g,d){this.insertNodeAt(c,g.end,d,{prefix:", "})}insertNodesAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,ma(d));this.insertNodesAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfterWorker(c,g,d){return gWs(g,d)&&c.text.charCodeAt(g.end-1)!==59&&this.replaceRange(c,Ly(g.end),me.createToken(27)),gq(c,g,{})}getInsertNodeAfterOptions(c,g){let d=this.getInsertNodeAfterOptionsWorker(g);return{...d,prefix:g.end===c.end&&Lc(g)?d.prefix?` ${d.prefix}`:` -`:d.prefix}}getInsertNodeAfterOptionsWorker(c){switch(c.kind){case 264:case 268:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 261:case 11:case 80:return{prefix:", "};case 304:return{suffix:","+this.newLineCharacter};case 95:return{prefix:" "};case 170:return{};default:return pe.assert(Lc(c)||RY(c)),{suffix:this.newLineCharacter}}}insertName(c,g,d){if(pe.assert(!g.name),g.kind===220){let h=ep(g,39,c),_=ep(g,21,c);_?(this.insertNodesAt(c,_.getStart(c),[me.createToken(100),me.createIdentifier(d)],{joiner:" "}),jF(this,c,h)):(this.insertText(c,ma(g.parameters).getStart(c),`function ${d}(`),this.replaceRange(c,h,me.createToken(22))),g.body.kind!==242&&(this.insertNodesAt(c,g.body.getStart(c),[me.createToken(19),me.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(c,g.body.end,[me.createToken(27),me.createToken(20)],{joiner:" "}))}else{let h=ep(g,g.kind===219?100:86,c).end;this.insertNodeAt(c,h,me.createIdentifier(d),{prefix:" "})}}insertExportModifier(c,g){this.insertText(c,g.getStart(c),"export ")}insertImportSpecifierAtIndex(c,g,d,h){let _=d.elements[h-1];_?this.insertNodeInListAfter(c,_,g):this.insertNodeBefore(c,d.elements[0],g,!SE(d.elements[0].getStart(),d.parent.parent.getStart(),c))}insertNodeInListAfter(c,g,d,h=_m.SmartIndenter.getContainingList(g,c)){if(!h){pe.fail("node is not a list element");return}let _=EW(h,g);if(_<0)return;let S=g.getEnd();if(_!==h.length-1){let R=Jc(c,g.end);if(R&&yst(g,R)){let T=h[_+1],O=gpn(c.text,T.getFullStart()),V=`${Vi(R.kind)}${c.text.substring(R.end,O)}`;this.insertNodesAt(c,O,[d],{suffix:V})}}else{let R=g.getStart(c),T=YB(R,c),O,V=!1;if(h.length===1)O=28;else{let M=Vm(g.pos,c);O=yst(g,M)?M.kind:28,V=YB(h[_-1].getStart(c),c)!==T}if(($Vs(c.text,g.end)||!SE(h.pos,h.end,c))&&(V=!0),V){this.replaceRange(c,Zy(S),me.createToken(O));let M=_m.SmartIndenter.findFirstNonWhitespaceColumn(T,R,c,this.formatContext.options),ee=Yu(c.text,S,!0,!1);for(;ee!==S&&ml(c.text.charCodeAt(ee-1));)ee--;this.replaceRange(c,Zy(ee),d,{indentation:M,prefix:this.newLineCharacter})}else this.replaceRange(c,Zy(S),d,{prefix:`${Vi(O)} `})}}parenthesizeExpression(c,g){this.replaceRange(c,qbe(g),me.createParenthesizedExpression(g))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:c,sourceFile:g})=>{let[d,h]=sWs(c,g);if(d!==void 0&&h!==void 0){let _=bst(c).length===0,S=SE(d,h,g);_&&S&&d!==h-1&&this.deleteRange(g,Zy(d,h-1)),S&&this.insertText(g,h-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let c=new Set;for(let{sourceFile:g,node:d}of this.deletedNodes)this.deletedNodes.some(h=>h.sourceFile===g&&bMt(h.node,d))||(Ki(d)?this.deleteRange(g,$be(g,d)):T4t.deleteDeclaration(this,c,g,d));c.forEach(g=>{let d=g.getSourceFile(),h=_m.SmartIndenter.getContainingList(g,d);if(g!==Ei(h))return;let _=De(h,S=>!c.has(S),h.length-2);_!==-1&&this.deleteRange(d,{pos:h[_].end,end:B4t(d,h[_+1])})})}getChanges(c){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let g=Est.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,c);return this.newFileChanges&&this.newFileChanges.forEach((d,h)=>{g.push(Est.newFileChanges(h,d,this.newLineCharacter,this.formatContext))}),g}createNewFile(c,g,d){this.insertStatementsInNewFile(g,d,c)}};function rWs(s){if(s.kind!==220)return s;let c=s.parent.kind===173?s.parent:s.parent.parent;return c.jsDoc=s.jsDoc,c}function nWs(s,c){if(s.kind===c.kind)switch(s.kind){case 342:{let g=s,d=c;return Ir(g.name)&&Ir(d.name)&&g.name.escapedText===d.name.escapedText?me.createJSDocParameterTag(void 0,d.name,!1,d.typeExpression,d.isNameFirst,g.comment):void 0}case 343:return me.createJSDocReturnTag(void 0,c.typeExpression,s.comment);case 345:return me.createJSDocTypeTag(void 0,c.typeExpression,s.comment)}}function B4t(s,c){return Yu(s.text,zU(s,c,{leadingTriviaOption:1}),!1,!0)}function iWs(s,c,g,d){let h=B4t(s,d);if(g===void 0||SE(uq(s,c,{}),h,s))return h;let _=Vm(d.getStart(s),s);if(yst(c,_)){let S=Vm(c.getStart(s),s);if(yst(g,S)){let R=Yu(s.text,_.getEnd(),!0,!0);if(SE(S.getStart(s),_.getStart(s),s))return ml(s.text.charCodeAt(R-1))?R-1:R;if(ml(s.text.charCodeAt(R)))return R}}return h}function sWs(s,c){let g=ep(s,19,c),d=ep(s,20,c);return[g?.end,d?.end]}function bst(s){return ag(s)?s.properties:s.members}var Est;(s=>{function c(R,T,O,V){return Xt(Yn(R,M=>M.sourceFile.path),M=>{let ee=M[0].sourceFile,re=bo(M,(Ie,_e)=>Ie.range.pos-_e.range.pos||Ie.range.end-_e.range.end);for(let Ie=0;Ie`${JSON.stringify(re[Ie].range)} and ${JSON.stringify(re[Ie+1].range)}`);let ge=Xt(re,Ie=>{let _e=a9(Ie.range),Ee=Ie.kind===1?ms(xd(Ie.node))??Ie.sourceFile:Ie.kind===2?ms(xd(Ie.nodes[0]))??Ie.sourceFile:Ie.sourceFile,Ne=h(Ie,Ee,ee,T,O,V);if(!(_e.length===Ne.length&&nHt(Ee.text,Ne,_e.start)))return x1e(_e,Ne)});return ge.length>0?{fileName:ee.fileName,textChanges:ge}:void 0})}s.getTextChangesFromChanges=c;function g(R,T,O,V){let M=d(zAe(R),T,O,V);return{fileName:R,textChanges:[x1e($d(0,0),M)],isNewFile:!0}}s.newFileChanges=g;function d(R,T,O,V){let M=jt(T,ge=>ge.statements.map(Ie=>Ie===4?"":S(Ie,ge.oldFile,O).text)).join(O),ee=Wz("any file name",M,{languageVersion:99,jsDocParsingMode:1},!0,R),re=_m.formatDocument(ee,V);return w4t(M,re)+O}s.newFileChangesWorker=d;function h(R,T,O,V,M,ee){var re;if(R.kind===0)return"";if(R.kind===3)return R.text;let{options:ge={},range:{pos:Ie}}=R,_e=Te=>_(Te,T,O,Ie,ge,V,M,ee),Ee=R.kind===2?R.nodes.map(Te=>aa(_e(Te),V)).join(((re=R.options)==null?void 0:re.joiner)||V):_e(R.node),Ne=ge.indentation!==void 0||YB(Ie,T)===Ie?Ee:Ee.replace(/^\s+/,"");return(ge.prefix||"")+Ne+(!ge.suffix||di(Ne,ge.suffix)?"":ge.suffix)}function _(R,T,O,V,{indentation:M,prefix:ee,delta:re},ge,Ie,_e){let{node:Ee,text:Ne}=S(R,T,ge);_e&&_e(Ee,Ne);let Te=GWe(Ie,T),Ze=M!==void 0?M:_m.SmartIndenter.getIndentation(V,O,Te,ee===ge||YB(V,T)===V);re===void 0&&(re=_m.SmartIndenter.shouldIndentChildNode(Te,R)&&Te.indentSize||0);let Pe={text:Ne,getLineAndCharacterOfPosition(et){return Ra(this,et)}},Ke=_m.formatNodeGivenIndentation(Ee,Pe,T.languageVariant,Ze,re,{...Ie,options:Te});return w4t(Ne,Ke)}function S(R,T,O){let V=Apn(O),M=Q1e(O);return jW({newLine:M,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},V).writeNode(4,R,T,V),{text:V.getText(),node:Sst(R)}}s.getNonformattedText=S})(Est||(Est={}));function w4t(s,c){for(let g=c.length-1;g>=0;g--){let{span:d,newText:h}=c[g];s=`${s.substring(0,d.start)}${h}${s.substring(Rs(d))}`}return s}function oWs(s){return Yu(s,0)===s.length}var aWs={...l1e,factory:hie(l1e.factory.flags|1,l1e.factory.baseFactory)};function Sst(s){let c=_s(s,Sst,aWs,cWs,Sst),g=ap(c)?c:Object.create(c);return xB(g,apn(s),cpn(s)),g}function cWs(s,c,g,d,h){let _=Os(s,c,g,d,h);if(!_)return _;pe.assert(s);let S=_===s?me.createNodeArray(_.slice(0)):_;return xB(S,apn(s),cpn(s)),S}function Apn(s){let c=0,g=One(s),d=je=>{je&&E4t(je,c)},h=je=>{je&&S4t(je,c)},_=je=>{je&&E4t(je,c)},S=je=>{je&&S4t(je,c)},R=je=>{je&&E4t(je,c)},T=je=>{je&&S4t(je,c)};function O(je,Wt){if(Wt||!oWs(je)){c=g.getTextPos();let _r=0;for(;dc(je.charCodeAt(je.length-_r-1));)_r++;c-=_r}}function V(je){g.write(je),O(je,!1)}function M(je){g.writeComment(je)}function ee(je){g.writeKeyword(je),O(je,!1)}function re(je){g.writeOperator(je),O(je,!1)}function ge(je){g.writePunctuation(je),O(je,!1)}function Ie(je){g.writeTrailingSemicolon(je),O(je,!1)}function _e(je){g.writeParameter(je),O(je,!1)}function Ee(je){g.writeProperty(je),O(je,!1)}function Ne(je){g.writeSpace(je),O(je,!1)}function Te(je){g.writeStringLiteral(je),O(je,!1)}function Ze(je,Wt){g.writeSymbol(je,Wt),O(je,!1)}function Pe(je){g.writeLine(je)}function Ke(){g.increaseIndent()}function et(){g.decreaseIndent()}function Ye(){return g.getText()}function Tt(je){g.rawWrite(je),O(je,!1)}function at(je){g.writeLiteral(je),O(je,!0)}function Qe(){return g.getTextPos()}function Ct(){return g.getLine()}function mt(){return g.getColumn()}function yt(){return g.getIndent()}function Rt(){return g.isAtStartOfLine()}function Lt(){g.clear(),c=0}return{onBeforeEmitNode:d,onAfterEmitNode:h,onBeforeEmitNodeArray:_,onAfterEmitNodeArray:S,onBeforeEmitToken:R,onAfterEmitToken:T,write:V,writeComment:M,writeKeyword:ee,writeOperator:re,writePunctuation:ge,writeTrailingSemicolon:Ie,writeParameter:_e,writeProperty:Ee,writeSpace:Ne,writeStringLiteral:Te,writeSymbol:Ze,writeLine:Pe,increaseIndent:Ke,decreaseIndent:et,getText:Ye,rawWrite:Tt,writeLiteral:at,getTextPos:Qe,getLine:Ct,getColumn:mt,getIndent:yt,isAtStartOfLine:Rt,hasTrailingComment:()=>g.hasTrailingComment(),hasTrailingWhitespace:()=>g.hasTrailingWhitespace(),clear:Lt}}function lWs(s){let c;for(let O of s.statements)if(aS(O))c=O;else break;let g=0,d=s.text;if(c)return g=c.end,T(),g;let h=EB(d);h!==void 0&&(g=h.length,T());let _=mE(d,g);if(!_)return g;let S,R;for(let O of _){if(O.kind===3){if(v7(d,O.pos)){S={range:O,pinnedOrTripleSlash:!0};continue}}else if(tne(d,O.pos,O.end)){S={range:O,pinnedOrTripleSlash:!0};continue}if(S){if(S.pinnedOrTripleSlash)break;let V=s.getLineAndCharacterOfPosition(O.pos).line,M=s.getLineAndCharacterOfPosition(S.range.end).line;if(V>=M+2)break}if(s.statements.length){R===void 0&&(R=s.getLineAndCharacterOfPosition(s.statements[0].getStart()).line);let V=s.getLineAndCharacterOfPosition(O.end).line;if(R{function c(_,S,R,T){switch(T.kind){case 170:{let re=T.parent;uA(re)&&re.parameters.length===1&&!ep(re,21,R)?_.replaceNodeWithText(R,T,"()"):C2e(_,S,R,T);break}case 273:case 272:let O=R.imports.length&&T===ma(R.imports).parent||T===de(R.statements,SW);jF(_,R,T,{leadingTriviaOption:O?0:jm(T)?2:3});break;case 209:let V=T.parent;V.kind===208&&T!==Ei(V.elements)?jF(_,R,T):C2e(_,S,R,T);break;case 261:h(_,S,R,T);break;case 169:C2e(_,S,R,T);break;case 277:let ee=T.parent;ee.elements.length===1?d(_,R,ee):C2e(_,S,R,T);break;case 275:d(_,R,T);break;case 27:jF(_,R,T,{trailingTriviaOption:0});break;case 100:jF(_,R,T,{leadingTriviaOption:0});break;case 264:case 263:jF(_,R,T,{leadingTriviaOption:jm(T)?2:3});break;default:T.parent?Hw(T.parent)&&T.parent.name===T?g(_,R,T.parent):Ll(T.parent)&&k(T.parent.arguments,T)?C2e(_,S,R,T):jF(_,R,T):jF(_,R,T)}}s.deleteDeclaration=c;function g(_,S,R){if(!R.namedBindings)jF(_,S,R.parent);else{let T=R.name.getStart(S),O=Jc(S,R.name.end);if(O&&O.kind===28){let V=Yu(S.text,O.end,!1,!0);_.deleteRange(S,{pos:T,end:V})}else jF(_,S,R.name)}}function d(_,S,R){if(R.parent.name){let T=pe.checkDefined(Jc(S,R.pos-1));_.deleteRange(S,{pos:T.getStart(S),end:R.end})}else{let T=UL(R,273);jF(_,S,T)}}function h(_,S,R,T){let{parent:O}=T;if(O.kind===300){_.deleteNodeRange(R,ep(O,21,R),ep(O,22,R));return}if(O.declarations.length!==1){C2e(_,S,R,T);return}let V=O.parent;switch(V.kind){case 251:case 250:_.replaceNode(R,T,me.createObjectLiteralExpression());break;case 249:jF(_,R,O);break;case 244:jF(_,R,V,{leadingTriviaOption:jm(V)?2:3});break;default:pe.assertNever(V)}}})(T4t||(T4t={}));function jF(s,c,g,d={leadingTriviaOption:1}){let h=zU(c,g,d),_=uq(c,g,d);s.deleteRange(c,{pos:h,end:_})}function C2e(s,c,g,d){let h=pe.checkDefined(_m.SmartIndenter.getContainingList(d,g)),_=EW(h,d);if(pe.assert(_!==-1),h.length===1){jF(s,g,d);return}pe.assert(!c.has(d),"Deleting a node twice"),c.add(d),s.deleteRange(g,{pos:B4t(g,d),end:_===h.length-1?uq(g,d,{}):iWs(g,d,h[_-1],h[_+1])})}var _m={};o(_m,{FormattingContext:()=>fpn,FormattingRequestKind:()=>ppn,RuleAction:()=>Ipn,RuleFlags:()=>hpn,SmartIndenter:()=>ZN,anyContext:()=>vst,createTextRangeWithKind:()=>Rst,formatDocument:()=>tOs,formatNodeGivenIndentation:()=>cOs,formatOnClosingCurly:()=>eOs,formatOnEnter:()=>zWs,formatOnOpeningCurly:()=>$Ws,formatOnSemicolon:()=>qWs,formatSelection:()=>rOs,getAllRules:()=>mpn,getFormatContext:()=>HWs,getFormattingScanner:()=>R4t,getIndentationString:()=>H4t,getRangeOfEnclosingComment:()=>Hpn});var ppn=(s=>(s[s.FormatDocument=0]="FormatDocument",s[s.FormatSelection=1]="FormatSelection",s[s.FormatOnEnter=2]="FormatOnEnter",s[s.FormatOnSemicolon=3]="FormatOnSemicolon",s[s.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",s[s.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",s))(ppn||{}),fpn=class{constructor(s,c,g){this.sourceFile=s,this.formattingRequestKind=c,this.options=g}updateContext(s,c,g,d,h){this.currentTokenSpan=pe.checkDefined(s),this.currentTokenParent=pe.checkDefined(c),this.nextTokenSpan=pe.checkDefined(g),this.nextTokenParent=pe.checkDefined(d),this.contextNode=pe.checkDefined(h),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let s=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,c=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=s===c}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(s){let c=this.sourceFile.getLineAndCharacterOfPosition(s.getStart(this.sourceFile)).line,g=this.sourceFile.getLineAndCharacterOfPosition(s.getEnd()).line;return c===g}BlockIsOnOneLine(s){let c=ep(s,19,this.sourceFile),g=ep(s,20,this.sourceFile);if(c&&g){let d=this.sourceFile.getLineAndCharacterOfPosition(c.getEnd()).line,h=this.sourceFile.getLineAndCharacterOfPosition(g.getStart(this.sourceFile)).line;return d===h}return!1}},gWs=Rb(99,!1,0),AWs=Rb(99,!1,1);function R4t(s,c,g,d,h){let _=c===1?AWs:gWs;_.setText(s),_.resetTokenState(g);let S=!0,R,T,O,V,M,ee=h({advance:re,readTokenInfo:Pe,readEOFTokenRange:et,isOnToken:Ye,isOnEOF:Tt,getCurrentLeadingTrivia:()=>R,lastTrailingTriviaWasNewLine:()=>S,skipToEndOf:Qe,skipToStartOf:Ct,getTokenFullStart:()=>M?.token.pos??_.getTokenStart(),getStartPos:()=>M?.token.pos??_.getTokenStart()});return M=void 0,_.setText(void 0),ee;function re(){M=void 0,_.getTokenFullStart()!==g?S=!!T&&Ei(T).kind===4:_.scan(),R=void 0,T=void 0;let yt=_.getTokenFullStart();for(;yt(s[s.None=0]="None",s[s.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",s[s.StopProcessingTokenActions=2]="StopProcessingTokenActions",s[s.InsertSpace=4]="InsertSpace",s[s.InsertNewLine=8]="InsertNewLine",s[s.DeleteSpace=16]="DeleteSpace",s[s.DeleteToken=32]="DeleteToken",s[s.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",s[s.StopAction=3]="StopAction",s[s.ModifySpaceAction=28]="ModifySpaceAction",s[s.ModifyTokenAction=96]="ModifyTokenAction",s))(Ipn||{}),hpn=(s=>(s[s.None=0]="None",s[s.CanDeleteNewLines=1]="CanDeleteNewLines",s))(hpn||{});function mpn(){let s=[];for(let Ke=0;Ke<=166;Ke++)Ke!==1&&s.push(Ke);function c(...Ke){return{tokens:s.filter(et=>!Ke.some(Ye=>Ye===et)),isSpecific:!1}}let g={tokens:s,isSpecific:!1},d=Rpe([...s,3]),h=Rpe([...s,1]),_=_pn(83,166),S=_pn(30,79),R=[103,104,165,130,142,152],T=[46,47,55,54],O=[9,10,80,21,23,19,110,105],V=[80,21,110,105],M=[80,22,24,105],ee=[80,21,110,105],re=[80,22,24,105],ge=[2,3],Ie=[80,...int],_e=d,Ee=Rpe([80,32,3,86,95,102]),Ne=Rpe([22,3,92,113,98,93,85]),Te=[Fa("IgnoreBeforeComment",g,ge,vst,1),Fa("IgnoreAfterLineComment",2,g,vst,1),Fa("NotSpaceBeforeColon",g,59,[hl,SOe,Epn],16),Fa("SpaceAfterColon",59,g,[hl,SOe,RWs],4),Fa("NoSpaceBeforeQuestionMark",g,58,[hl,SOe,Epn],16),Fa("SpaceAfterQuestionMarkInConditionalOperator",58,g,[hl,IWs],4),Fa("NoSpaceAfterQuestionMark",58,g,[hl,fWs],16),Fa("NoSpaceBeforeDot",g,[25,29],[hl,MWs],16),Fa("NoSpaceAfterDot",[25,29],g,[hl],16),Fa("NoSpaceBetweenImportParenInImportType",102,21,[hl,wWs],16),Fa("NoSpaceAfterUnaryPrefixOperator",T,O,[hl,SOe],16),Fa("NoSpaceAfterUnaryPreincrementOperator",46,V,[hl],16),Fa("NoSpaceAfterUnaryPredecrementOperator",47,ee,[hl],16),Fa("NoSpaceBeforeUnaryPostincrementOperator",M,46,[hl,Wpn],16),Fa("NoSpaceBeforeUnaryPostdecrementOperator",re,47,[hl,Wpn],16),Fa("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[hl,tO],4),Fa("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[hl,tO],4),Fa("SpaceAfterAddWhenFollowedByPreincrement",40,46,[hl,tO],4),Fa("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[hl,tO],4),Fa("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[hl,tO],4),Fa("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[hl,tO],4),Fa("NoSpaceAfterCloseBrace",20,[28,27],[hl],16),Fa("NewLineBeforeCloseBraceInBlockContext",d,20,[vpn],8),Fa("SpaceAfterCloseBrace",20,c(22),[hl,CWs],4),Fa("SpaceBetweenCloseBraceAndElse",20,93,[hl],4),Fa("SpaceBetweenCloseBraceAndWhile",20,117,[hl],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[hl,Dpn],16),Fa("SpaceAfterConditionalClosingParen",22,23,[vOe],4),Fa("NoSpaceBetweenFunctionKeywordAndStar",100,42,[Tpn],16),Fa("SpaceAfterStarInGeneratorDeclaration",42,80,[Tpn],4),Fa("SpaceAfterFunctionInFuncDecl",100,g,[qU],4),Fa("NewLineAfterOpenBraceInBlockContext",19,g,[vpn],8),Fa("SpaceAfterGetSetInMember",[139,153],80,[qU],4),Fa("NoSpaceBetweenYieldKeywordAndStar",127,42,[hl,Vpn],16),Fa("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],g,[hl,Vpn],4),Fa("NoSpaceBetweenReturnAndSemicolon",107,27,[hl],16),Fa("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],g,[hl],4),Fa("SpaceAfterLetConstInVariableDeclaration",[121,87],g,[hl,kWs],4),Fa("NoSpaceBeforeOpenParenInFuncCall",g,21,[hl,bWs,EWs],16),Fa("SpaceBeforeBinaryKeywordOperator",g,R,[hl,tO],4),Fa("SpaceAfterBinaryKeywordOperator",R,g,[hl,tO],4),Fa("SpaceAfterVoidOperator",116,g,[hl,LWs],4),Fa("SpaceBetweenAsyncAndOpenParen",134,21,[BWs,hl],4),Fa("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[hl],4),Fa("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[hl],16),Fa("SpaceBeforeJsxAttribute",g,80,[TWs,hl],4),Fa("SpaceBeforeSlashInJsxOpeningElement",g,44,[Fpn,hl],4),Fa("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[Fpn,hl],16),Fa("NoSpaceBeforeEqualInJsxAttribute",g,64,[xpn,hl],16),Fa("NoSpaceAfterEqualInJsxAttribute",64,g,[xpn,hl],16),Fa("NoSpaceBeforeJsxNamespaceColon",80,59,[Gpn],16),Fa("NoSpaceAfterJsxNamespaceColon",59,80,[Gpn],16),Fa("NoSpaceAfterModuleImport",[144,149],21,[hl],16),Fa("SpaceAfterCertainTypeScriptKeywords",[128,129,86,138,90,94,95,96,139,119,102,120,144,145,123,125,124,148,153,126,156,161,143,140],g,[hl],4),Fa("SpaceBeforeCertainTypeScriptKeywords",g,[96,119,161],[hl],4),Fa("SpaceAfterModuleName",11,19,[xWs],4),Fa("SpaceBeforeArrow",g,39,[hl],4),Fa("SpaceAfterArrow",39,g,[hl],4),Fa("NoSpaceAfterEllipsis",26,80,[hl],16),Fa("NoSpaceAfterOptionalParameters",58,[22,28],[hl,SOe],16),Fa("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[hl,GWs],16),Fa("NoSpaceBeforeOpenAngularBracket",Ie,30,[hl,BOe],16),Fa("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[hl,BOe],16),Fa("NoSpaceAfterOpenAngularBracket",30,g,[hl,BOe],16),Fa("NoSpaceBeforeCloseAngularBracket",g,32,[hl,BOe],16),Fa("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[hl,BOe,mWs,ZWs],16),Fa("SpaceBeforeAt",[22,80],60,[hl],4),Fa("NoSpaceAfterAt",60,g,[hl],16),Fa("SpaceAfterDecorator",g,[128,80,95,90,86,126,125,123,124,139,153,23,42],[DWs],4),Fa("NoSpaceBeforeNonNullAssertionOperator",g,54,[hl,VWs],16),Fa("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[hl,FWs],16),Fa("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[hl],4)],Ze=[Fa("SpaceAfterConstructor",137,21,[IS("insertSpaceAfterConstructor"),hl],4),Fa("NoSpaceAfterConstructor",137,21,[FN("insertSpaceAfterConstructor"),hl],16),Fa("SpaceAfterComma",28,g,[IS("insertSpaceAfterCommaDelimiter"),hl,Z4t,SWs,vWs],4),Fa("NoSpaceAfterComma",28,g,[FN("insertSpaceAfterCommaDelimiter"),hl,Z4t],16),Fa("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[IS("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),qU],4),Fa("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[FN("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),qU],16),Fa("SpaceAfterKeywordInControl",_,21,[IS("insertSpaceAfterKeywordsInControlFlowStatements"),vOe],4),Fa("NoSpaceAfterKeywordInControl",_,21,[FN("insertSpaceAfterKeywordsInControlFlowStatements"),vOe],16),Fa("SpaceAfterOpenParen",21,g,[IS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],4),Fa("SpaceBeforeCloseParen",g,22,[IS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],4),Fa("SpaceBetweenOpenParens",21,21,[IS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],4),Fa("NoSpaceBetweenParens",21,22,[hl],16),Fa("NoSpaceAfterOpenParen",21,g,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],16),Fa("NoSpaceBeforeCloseParen",g,22,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],16),Fa("SpaceAfterOpenBracket",23,g,[IS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],4),Fa("SpaceBeforeCloseBracket",g,24,[IS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],4),Fa("NoSpaceBetweenBrackets",23,24,[hl],16),Fa("NoSpaceAfterOpenBracket",23,g,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],16),Fa("NoSpaceBeforeCloseBracket",g,24,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],16),Fa("SpaceAfterOpenBrace",19,g,[bpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Spn],4),Fa("SpaceBeforeCloseBrace",g,20,[bpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Spn],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[hl,Dpn],16),Fa("NoSpaceAfterOpenBrace",19,g,[N4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),hl],16),Fa("NoSpaceBeforeCloseBrace",g,20,[N4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),hl],16),Fa("SpaceBetweenEmptyBraceBrackets",19,20,[IS("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[N4t("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),hl],16),Fa("SpaceAfterTemplateHeadAndMiddle",[16,17],g,[IS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),kpn],4,1),Fa("SpaceBeforeTemplateMiddleAndTail",g,[17,18],[IS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),hl],4),Fa("NoSpaceAfterTemplateHeadAndMiddle",[16,17],g,[FN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),kpn],16,1),Fa("NoSpaceBeforeTemplateMiddleAndTail",g,[17,18],[FN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),hl],16),Fa("SpaceAfterOpenBraceInJsxExpression",19,g,[IS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,wst],4),Fa("SpaceBeforeCloseBraceInJsxExpression",g,20,[IS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,wst],4),Fa("NoSpaceAfterOpenBraceInJsxExpression",19,g,[FN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,wst],16),Fa("NoSpaceBeforeCloseBraceInJsxExpression",g,20,[FN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,wst],16),Fa("SpaceAfterSemicolonInFor",27,g,[IS("insertSpaceAfterSemicolonInForStatements"),hl,k4t],4),Fa("NoSpaceAfterSemicolonInFor",27,g,[FN("insertSpaceAfterSemicolonInForStatements"),hl,k4t],16),Fa("SpaceBeforeBinaryOperator",g,S,[IS("insertSpaceBeforeAndAfterBinaryOperators"),hl,tO],4),Fa("SpaceAfterBinaryOperator",S,g,[IS("insertSpaceBeforeAndAfterBinaryOperators"),hl,tO],4),Fa("NoSpaceBeforeBinaryOperator",g,S,[FN("insertSpaceBeforeAndAfterBinaryOperators"),hl,tO],16),Fa("NoSpaceAfterBinaryOperator",S,g,[FN("insertSpaceBeforeAndAfterBinaryOperators"),hl,tO],16),Fa("SpaceBeforeOpenParenInFuncDecl",g,21,[IS("insertSpaceBeforeFunctionParenthesis"),hl,qU],4),Fa("NoSpaceBeforeOpenParenInFuncDecl",g,21,[FN("insertSpaceBeforeFunctionParenthesis"),hl,qU],16),Fa("NewLineBeforeOpenBraceInControl",Ne,19,[IS("placeOpenBraceOnNewLineForControlBlocks"),vOe,F4t],8,1),Fa("NewLineBeforeOpenBraceInFunction",_e,19,[IS("placeOpenBraceOnNewLineForFunctions"),qU,F4t],8,1),Fa("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[IS("placeOpenBraceOnNewLineForFunctions"),Rpn,F4t],8,1),Fa("SpaceAfterTypeAssertion",32,g,[IS("insertSpaceAfterTypeAssertion"),hl,V4t],4),Fa("NoSpaceAfterTypeAssertion",32,g,[FN("insertSpaceAfterTypeAssertion"),hl,V4t],16),Fa("SpaceBeforeTypeAnnotation",g,[58,59],[IS("insertSpaceBeforeTypeAnnotation"),hl,x4t],4),Fa("NoSpaceBeforeTypeAnnotation",g,[58,59],[FN("insertSpaceBeforeTypeAnnotation"),hl,x4t],16),Fa("NoOptionalSemicolon",27,h,[ypn("semicolons","remove"),OWs],32),Fa("OptionalSemicolon",g,h,[ypn("semicolons","insert"),PWs],64)],Pe=[Fa("NoSpaceBeforeSemicolon",g,27,[hl],16),Fa("SpaceBeforeOpenBraceInControl",Ne,19,[D4t("placeOpenBraceOnNewLineForControlBlocks"),vOe,L4t,G4t],4,1),Fa("SpaceBeforeOpenBraceInFunction",_e,19,[D4t("placeOpenBraceOnNewLineForFunctions"),qU,Bst,L4t,G4t],4,1),Fa("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[D4t("placeOpenBraceOnNewLineForFunctions"),Rpn,L4t,G4t],4,1),Fa("NoSpaceBeforeComma",g,28,[hl],16),Fa("NoSpaceBeforeOpenBracket",c(134,84),23,[hl],16),Fa("NoSpaceAfterCloseBracket",24,g,[hl,NWs],16),Fa("SpaceAfterSemicolon",27,g,[hl],4),Fa("SpaceBetweenForAndAwaitKeyword",99,135,[hl],4),Fa("SpaceBetweenDotDotDotAndTypeName",26,Ie,[hl],16),Fa("SpaceBetweenStatements",[22,92,93,84],g,[hl,Z4t,dWs],4),Fa("SpaceAfterTryCatchFinally",[113,85,98],19,[hl],4)];return[...Te,...Ze,...Pe]}function Fa(s,c,g,d,h,_=0){return{leftTokenRange:Cpn(c),rightTokenRange:Cpn(g),rule:{debugName:s,context:d,action:h,flags:_}}}function Rpe(s){return{tokens:s,isSpecific:!0}}function Cpn(s){return typeof s=="number"?Rpe([s]):Ki(s)?Rpe(s):s}function _pn(s,c,g=[]){let d=[];for(let h=s;h<=c;h++)k(g,h)||d.push(h);return Rpe(d)}function ypn(s,c){return g=>g.options&&g.options[s]===c}function IS(s){return c=>c.options&&Da(c.options,s)&&!!c.options[s]}function N4t(s){return c=>c.options&&Da(c.options,s)&&!c.options[s]}function FN(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]}function D4t(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]||c.TokensAreOnSameLine()}function bpn(s){return c=>!c.options||!Da(c.options,s)||!!c.options[s]}function k4t(s){return s.contextNode.kind===249}function dWs(s){return!k4t(s)}function tO(s){switch(s.contextNode.kind){case 227:return s.contextNode.operatorToken.kind!==28;case 228:case 195:case 235:case 282:case 277:case 183:case 193:case 194:case 239:return!0;case 209:case 266:case 272:case 278:case 261:case 170:case 307:case 173:case 172:return s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 250:case 169:return s.currentTokenSpan.kind===103||s.nextTokenSpan.kind===103||s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 251:return s.currentTokenSpan.kind===165||s.nextTokenSpan.kind===165}return!1}function SOe(s){return!tO(s)}function Epn(s){return!x4t(s)}function x4t(s){let c=s.contextNode.kind;return c===173||c===172||c===170||c===261||hW(c)}function pWs(s){return pi(s.contextNode)&&s.contextNode.questionToken}function fWs(s){return!pWs(s)}function IWs(s){return s.contextNode.kind===228||s.contextNode.kind===195}function G4t(s){return s.TokensAreOnSameLine()||Bst(s)}function Spn(s){return s.contextNode.kind===207||s.contextNode.kind===201||hWs(s)}function F4t(s){return Bst(s)&&!(s.NextNodeAllOnSameLine()||s.NextNodeBlockIsOnOneLine())}function vpn(s){return Bpn(s)&&!(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function hWs(s){return Bpn(s)&&(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function Bpn(s){return wpn(s.contextNode)}function Bst(s){return wpn(s.nextTokenParent)}function wpn(s){if(Npn(s))return!0;switch(s.kind){case 242:case 270:case 211:case 269:return!0}return!1}function qU(s){switch(s.contextNode.kind){case 263:case 175:case 174:case 178:case 179:case 180:case 219:case 177:case 220:case 265:return!0}return!1}function mWs(s){return!qU(s)}function Tpn(s){return s.contextNode.kind===263||s.contextNode.kind===219}function Rpn(s){return Npn(s.contextNode)}function Npn(s){switch(s.kind){case 264:case 232:case 265:case 267:case 188:case 268:case 279:case 280:case 273:case 276:return!0}return!1}function CWs(s){switch(s.currentTokenParent.kind){case 264:case 268:case 267:case 300:case 269:case 256:return!0;case 242:{let c=s.currentTokenParent.parent;if(!c||c.kind!==220&&c.kind!==219)return!0}}return!1}function vOe(s){switch(s.contextNode.kind){case 246:case 256:case 249:case 250:case 251:case 248:case 259:case 247:case 255:case 300:return!0;default:return!1}}function Dpn(s){return s.contextNode.kind===211}function _Ws(s){return s.contextNode.kind===214}function yWs(s){return s.contextNode.kind===215}function bWs(s){return _Ws(s)||yWs(s)}function EWs(s){return s.currentTokenSpan.kind!==28}function SWs(s){return s.nextTokenSpan.kind!==24}function vWs(s){return s.nextTokenSpan.kind!==22}function BWs(s){return s.contextNode.kind===220}function wWs(s){return s.contextNode.kind===206}function hl(s){return s.TokensAreOnSameLine()&&s.contextNode.kind!==12}function kpn(s){return s.contextNode.kind!==12}function Z4t(s){return s.contextNode.kind!==285&&s.contextNode.kind!==289}function wst(s){return s.contextNode.kind===295||s.contextNode.kind===294}function TWs(s){return s.nextTokenParent.kind===292||s.nextTokenParent.kind===296&&s.nextTokenParent.parent.kind===292}function xpn(s){return s.contextNode.kind===292}function RWs(s){return s.nextTokenParent.kind!==296}function Gpn(s){return s.nextTokenParent.kind===296}function Fpn(s){return s.contextNode.kind===286}function NWs(s){return!qU(s)&&!Bst(s)}function DWs(s){return s.TokensAreOnSameLine()&&h1(s.contextNode)&&Zpn(s.currentTokenParent)&&!Zpn(s.nextTokenParent)}function Zpn(s){for(;s&&un(s);)s=s.parent;return s&&s.kind===171}function kWs(s){return s.currentTokenParent.kind===262&&s.currentTokenParent.getStart(s.sourceFile)===s.currentTokenSpan.pos}function L4t(s){return s.formattingRequestKind!==2}function xWs(s){return s.contextNode.kind===268}function GWs(s){return s.contextNode.kind===188}function FWs(s){return s.contextNode.kind===181}function Lpn(s,c){if(s.kind!==30&&s.kind!==32)return!1;switch(c.kind){case 184:case 217:case 266:case 264:case 232:case 265:case 263:case 219:case 220:case 175:case 174:case 180:case 181:case 214:case 215:case 234:return!0;default:return!1}}function BOe(s){return Lpn(s.currentTokenSpan,s.currentTokenParent)||Lpn(s.nextTokenSpan,s.nextTokenParent)}function V4t(s){return s.contextNode.kind===217}function ZWs(s){return!V4t(s)}function LWs(s){return s.currentTokenSpan.kind===116&&s.currentTokenParent.kind===223}function Vpn(s){return s.contextNode.kind===230&&s.contextNode.expression!==void 0}function VWs(s){return s.contextNode.kind===236}function Wpn(s){return!WWs(s)}function WWs(s){switch(s.contextNode.kind){case 246:case 249:case 250:case 251:case 247:case 248:return!0;default:return!1}}function OWs(s){let c=s.nextTokenSpan.kind,g=s.nextTokenSpan.pos;if(uU(c)){let _=s.nextTokenParent===s.currentTokenParent?BQ(s.currentTokenParent,ji(s.currentTokenParent,S=>!S.parent),s.sourceFile):s.nextTokenParent.getFirstToken(s.sourceFile);if(!_)return!0;c=_.kind,g=_.getStart(s.sourceFile)}let d=s.sourceFile.getLineAndCharacterOfPosition(s.currentTokenSpan.pos).line,h=s.sourceFile.getLineAndCharacterOfPosition(g).line;return d===h?c===20||c===1:c===27&&s.currentTokenSpan.kind===27?!0:c===241||c===27?!1:s.contextNode.kind===265||s.contextNode.kind===266?!ss(s.currentTokenParent)||!!s.currentTokenParent.type||c!==21:pi(s.currentTokenParent)?!s.currentTokenParent.initializer:s.currentTokenParent.kind!==249&&s.currentTokenParent.kind!==243&&s.currentTokenParent.kind!==241&&c!==23&&c!==21&&c!==40&&c!==41&&c!==44&&c!==14&&c!==28&&c!==229&&c!==16&&c!==15&&c!==25}function PWs(s){return BWe(s.currentTokenSpan.end,s.currentTokenParent,s.sourceFile)}function MWs(s){return!jo(s.contextNode)||!yC(s.contextNode.expression)||s.contextNode.expression.getText().includes(".")}function HWs(s,c){return{options:s,getRules:YWs(),host:c}}var W4t;function YWs(){return W4t===void 0&&(W4t=XWs(mpn())),W4t}function QWs(s){let c=0;return s&1&&(c|=28),s&2&&(c|=96),s&28&&(c|=28),s&96&&(c|=96),c}function XWs(s){let c=JWs(s);return g=>{let d=c[Opn(g.currentTokenSpan.kind,g.nextTokenSpan.kind)];if(d){let h=[],_=0;for(let S of d){let R=~QWs(_);S.action&R&&ue(S.context,T=>T(g))&&(h.push(S),_|=S.action)}if(h.length)return h}}}function JWs(s){let c=new Array(O4t*O4t),g=new Array(c.length);for(let d of s){let h=d.leftTokenRange.isSpecific&&d.rightTokenRange.isSpecific;for(let _ of d.leftTokenRange.tokens)for(let S of d.rightTokenRange.tokens){let R=Opn(_,S),T=c[R];T===void 0&&(T=c[R]=[]),UWs(T,d.rule,h,g,R)}}return c}function Opn(s,c){return pe.assert(s<=166&&c<=166,"Must compute formatting context from tokens"),s*O4t+c}var Npe=5,Tst=31,O4t=167,_2e=(s=>(s[s.StopRulesSpecific=0]="StopRulesSpecific",s[s.StopRulesAny=Npe*1]="StopRulesAny",s[s.ContextRulesSpecific=Npe*2]="ContextRulesSpecific",s[s.ContextRulesAny=Npe*3]="ContextRulesAny",s[s.NoContextRulesSpecific=Npe*4]="NoContextRulesSpecific",s[s.NoContextRulesAny=Npe*5]="NoContextRulesAny",s))(_2e||{});function UWs(s,c,g,d,h){let _=c.action&3?g?0:_2e.StopRulesAny:c.context!==vst?g?_2e.ContextRulesSpecific:_2e.ContextRulesAny:g?_2e.NoContextRulesSpecific:_2e.NoContextRulesAny,S=d[h]||0;s.splice(KWs(S,_),0,c),d[h]=jWs(S,_)}function KWs(s,c){let g=0;for(let d=0;d<=c;d+=Npe)g+=s&Tst,s>>=Npe;return g}function jWs(s,c){let g=(s>>c&Tst)+1;return pe.assert((g&Tst)===g,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),s&~(Tst<pe.formatSyntaxKind(g)}),d}function zWs(s,c,g){let d=c.getLineAndCharacterOfPosition(s).line;if(d===0)return[];let h=ZY(d,c);for(;hu(c.text.charCodeAt(h));)h--;ml(c.text.charCodeAt(h))&&h--;let _={pos:XD(d-1,c),end:h+1};return wOe(_,c,g,2)}function qWs(s,c,g){let d=P4t(s,27,c);return Ppn(M4t(d),c,g,3)}function $Ws(s,c,g){let d=P4t(s,19,c);if(!d)return[];let h=d.parent,_=M4t(h),S={pos:YB(_.getStart(c),c),end:s};return wOe(S,c,g,4)}function eOs(s,c,g){let d=P4t(s,20,c);return Ppn(M4t(d),c,g,5)}function tOs(s,c){let g={pos:0,end:s.text.length};return wOe(g,s,c,0)}function rOs(s,c,g,d){let h={pos:YB(s,g),end:c};return wOe(h,g,d,1)}function P4t(s,c,g){let d=Vm(s,g);return d&&d.kind===c&&s===d.getEnd()?d:void 0}function M4t(s){let c=s;for(;c&&c.parent&&c.parent.end===s.end&&!nOs(c.parent,c);)c=c.parent;return c}function nOs(s,c){switch(s.kind){case 264:case 265:return uy(s.members,c);case 268:let g=s.body;return!!g&&g.kind===269&&uy(g.statements,c);case 308:case 242:case 269:return uy(s.statements,c);case 300:return uy(s.block.statements,c)}return!1}function iOs(s,c){return g(c);function g(d){let h=Lu(d,_=>FAe(_.getStart(c),_.end,s)&&_);if(h){let _=g(h);if(_)return _}return d}}function sOs(s,c){if(!s.length)return h;let g=s.filter(_=>spe(c,_.start,_.start+_.length)).sort((_,S)=>_.start-S.start);if(!g.length)return h;let d=0;return _=>{for(;;){if(d>=g.length)return!1;let S=g[d];if(_.end<=S.start)return!1;if(oWe(_.pos,_.end,S.start,S.start+S.length))return!0;d++}};function h(){return!1}}function oOs(s,c,g){let d=s.getStart(g);if(d===c.pos&&s.end===c.end)return d;let h=Vm(c.pos,g);return!h||h.end>=c.pos?s.pos:h.end}function aOs(s,c,g){let d=-1,h;for(;s;){let _=g.getLineAndCharacterOfPosition(s.getStart(g)).line;if(d!==-1&&_!==d)break;if(ZN.shouldIndentChildNode(c,s,h,g))return c.indentSize;d=_,h=s,s=s.parent}return 0}function cOs(s,c,g,d,h,_){let S={pos:s.pos,end:s.end};return R4t(c.text,g,S.pos,S.end,R=>Mpn(S,s,d,h,R,_,1,T=>!1,c))}function Ppn(s,c,g,d){if(!s)return[];let h={pos:YB(s.getStart(c),c),end:s.end};return wOe(h,c,g,d)}function wOe(s,c,g,d){let h=iOs(s,c);return R4t(c.text,c.languageVariant,oOs(h,s,c),s.end,_=>Mpn(s,h,ZN.getIndentationForNode(h,s,c,g.options),aOs(h,g.options,c),_,g,d,sOs(c.parseDiagnostics,s),c))}function Mpn(s,c,g,d,h,{options:_,getRules:S,host:R},T,O,V){var M;let ee=new fpn(V,T,_),re,ge,Ie,_e,Ee,Ne=-1,Te=[];if(h.advance(),h.isOnToken()){let dt=V.getLineAndCharacterOfPosition(c.getStart(V)).line,pr=dt;h1(c)&&(pr=V.getLineAndCharacterOfPosition(rne(c,V)).line),Tt(c,c,dt,pr,g,d)}let Ze=h.getCurrentLeadingTrivia();if(Ze){let dt=ZN.nodeWillIndentChild(_,c,void 0,V,!1)?g+_.indentSize:g;at(Ze,dt,!0,pr=>{Ct(pr,V.getLineAndCharacterOfPosition(pr.pos),c,c,void 0),yt(pr.pos,dt,!1)}),_.trimTrailingWhitespace!==!1&&Gt(Ze)}if(ge&&h.getTokenFullStart()>=s.end){let dt=h.isOnEOF()?h.readEOFTokenRange():h.isOnToken()?h.readTokenInfo(c).token:void 0;if(dt&&dt.pos===re){let pr=((M=Vm(dt.end,V,c))==null?void 0:M.parent)||Ie;mt(dt,V.getLineAndCharacterOfPosition(dt.pos).line,pr,ge,_e,Ie,pr,void 0)}}return Te;function Pe(dt,pr,ot,ir,qt){if(spe(ir,dt,pr)||N1e(ir,dt,pr)){if(qt!==-1)return qt}else{let Yt=V.getLineAndCharacterOfPosition(dt).line,Tr=YB(dt,V),Cn=ZN.findFirstNonWhitespaceColumn(Tr,dt,V,_);if(Yt!==ot||dt===Cn){let jn=ZN.getBaseIndentation(_);return jn>Cn?jn:Cn}}return-1}function Ke(dt,pr,ot,ir,qt,Yt){let Tr=ZN.shouldIndentChildNode(_,dt)?_.indentSize:0;return Yt===pr?{indentation:pr===Ee?Ne:qt.getIndentation(),delta:Math.min(_.indentSize,qt.getDelta(dt)+Tr)}:ot===-1?dt.kind===21&&pr===Ee?{indentation:Ne,delta:qt.getDelta(dt)}:ZN.childStartsOnTheSameLineWithElseInIfStatement(ir,dt,pr,V)||ZN.childIsUnindentedBranchOfConditionalExpression(ir,dt,pr,V)||ZN.argumentStartsOnSameLineAsPreviousArgument(ir,dt,pr,V)?{indentation:qt.getIndentation(),delta:Tr}:{indentation:qt.getIndentation()+qt.getDelta(dt),delta:Tr}:{indentation:ot,delta:Tr}}function et(dt){if(MB(dt)){let pr=de(dt.modifiers,hg,Se(dt.modifiers,So));if(pr)return pr.kind}switch(dt.kind){case 264:return 86;case 265:return 120;case 263:return 100;case 267:return 267;case 178:return 139;case 179:return 153;case 175:if(dt.asteriskToken)return 42;case 173:case 170:let pr=fl(dt);if(pr)return pr.kind}}function Ye(dt,pr,ot,ir){return{getIndentationForComment:(Tr,Cn,jn)=>{switch(Tr){case 20:case 24:case 22:return ot+Yt(jn)}return Cn!==-1?Cn:ot},getIndentationForToken:(Tr,Cn,jn,Zi)=>!Zi&&qt(Tr,Cn,jn)?ot+Yt(jn):ot,getIndentation:()=>ot,getDelta:Yt,recomputeIndentation:(Tr,Cn)=>{ZN.shouldIndentChildNode(_,Cn,dt,V)&&(ot+=Tr?_.indentSize:-_.indentSize,ir=ZN.shouldIndentChildNode(_,dt)?_.indentSize:0)}};function qt(Tr,Cn,jn){switch(Cn){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(jn.kind){case 287:case 288:case 286:return!1}break;case 23:case 24:if(jn.kind!==201)return!1;break}return pr!==Tr&&!(h1(dt)&&Cn===et(dt))}function Yt(Tr){return ZN.nodeWillIndentChild(_,dt,Tr,V,!0)?ir:0}}function Tt(dt,pr,ot,ir,qt,Yt){if(!spe(s,dt.getStart(V),dt.getEnd()))return;let Tr=Ye(dt,ot,qt,Yt),Cn=pr;for(Lu(dt,An=>{jn(An,-1,dt,Tr,ot,ir,!1)},An=>{Zi(An,dt,ot,Tr)});h.isOnToken()&&h.getTokenFullStart()Math.min(dt.end,s.end))break;Ns(An,dt,Tr,dt)}function jn(An,si,ks,Ic,ou,Zn,ya,Fl){if(pe.assert(!ap(An)),af(An)||Lge(ks,An))return si;let ba=An.getStart(V),Oo=V.getLineAndCharacterOfPosition(ba).line,hc=Oo;h1(An)&&(hc=V.getLineAndCharacterOfPosition(rne(An,V)).line);let yr=-1;if(ya&&uy(s,ks)&&(yr=Pe(ba,An.end,ou,s,si),yr!==-1&&(si=yr)),!spe(s,An.pos,An.end))return An.ends.end)return si;if(co.token.end>ba){co.token.pos>ba&&h.skipToStartOf(An);break}Ns(co,dt,Ic,dt)}if(!h.isOnToken()||h.getTokenFullStart()>=s.end)return si;if(kL(An)){let co=h.readTokenInfo(An);if(An.kind!==12)return pe.assert(co.token.end===An.end,"Token end is child end"),Ns(co,dt,Ic,An),si}let hn=An.kind===171?Oo:Zn,Pi=Ke(An,Oo,yr,dt,Ic,hn);return Tt(An,Cn,Oo,hc,Pi.indentation,Pi.delta),Cn=dt,Fl&&ks.kind===210&&si===-1&&(si=Pi.indentation),si}function Zi(An,si,ks,Ic){pe.assert(oN(An)),pe.assert(!ap(An));let ou=lOs(si,An),Zn=Ic,ya=ks;if(!spe(s,An.pos,An.end)){An.endAn.pos)break;if(Oo.token.kind===ou){ya=V.getLineAndCharacterOfPosition(Oo.token.pos).line,Ns(Oo,si,Ic,si);let hc;if(Ne!==-1)hc=Ne;else{let yr=YB(Oo.token.pos,V);hc=ZN.findFirstNonWhitespaceColumn(yr,Oo.token.pos,V,_)}Zn=Ye(si,ks,hc,_.indentSize)}else Ns(Oo,si,Ic,si)}let Fl=-1;for(let Oo=0;Ooyt(Pi.pos,hn,!1))}hc!==-1&&yr&&(yt(An.token.pos,hc,Fl===1),Ee=Oo.line,Ne=hc)}h.advance(),Cn=si}}function at(dt,pr,ot,ir){for(let qt of dt){let Yt=uy(s,qt);switch(qt.kind){case 3:Yt&&je(qt,pr,!ot),ot=!1;break;case 2:ot&&Yt&&ir(qt),ot=!1;break;case 4:ot=!0;break}}return ot}function Qe(dt,pr,ot,ir){for(let qt of dt)if(dWe(qt.kind)&&uy(s,qt)){let Yt=V.getLineAndCharacterOfPosition(qt.pos);Ct(qt,Yt,pr,ot,ir)}}function Ct(dt,pr,ot,ir,qt){let Yt=O(dt),Tr=0;if(!Yt)if(ge)Tr=mt(dt,pr.line,ot,ge,_e,Ie,ir,qt);else{let Cn=V.getLineAndCharacterOfPosition(s.pos);Wt(Cn.line,pr.line)}return ge=dt,re=dt.end,Ie=ot,_e=pr.line,Tr}function mt(dt,pr,ot,ir,qt,Yt,Tr,Cn){ee.updateContext(ir,Yt,dt,ot,Tr);let jn=S(ee),Zi=ee.options.trimTrailingWhitespace!==!1,Ns=0;return jn?Q(jn,An=>{if(Ns=Gr(An,ir,qt,dt,pr),Cn)switch(Ns){case 2:ot.getStart(V)===dt.pos&&Cn.recomputeIndentation(!1,Tr);break;case 1:ot.getStart(V)===dt.pos&&Cn.recomputeIndentation(!0,Tr);break;default:pe.assert(Ns===0)}Zi=Zi&&!(An.action&16)&&An.flags!==1}):Zi=Zi&&dt.kind!==1,pr!==qt&&Zi&&Wt(qt,pr,ir),Ns}function yt(dt,pr,ot){let ir=H4t(pr,_);if(ot)tr(dt,0,ir);else{let qt=V.getLineAndCharacterOfPosition(dt),Yt=XD(qt.line,V);(pr!==Rt(Yt,qt.character)||Lt(ir,Yt))&&tr(Yt,qt.character,ir)}}function Rt(dt,pr){let ot=0;for(let ir=0;ir0){let Zn=H4t(ou,_);tr(ks,Ic.character,Zn)}else kt(ks,Ic.character)}}function Wt(dt,pr,ot){for(let ir=dt;irYt)continue;let Tr=_r(qt,Yt);Tr!==-1&&(pe.assert(Tr===qt||!hu(V.text.charCodeAt(Tr-1))),kt(Tr,Yt+1-Tr))}}function _r(dt,pr){let ot=pr;for(;ot>=dt&&hu(V.text.charCodeAt(ot));)ot--;return ot!==pr?ot+1:-1}function Gt(dt){let pr=ge?ge.end:s.pos;for(let ot of dt)dWe(ot.kind)&&(prR1e(O,c)||c===O.end&&(O.kind===2||c===s.getFullWidth()))}function lOs(s,c){switch(s.kind){case 177:case 263:case 219:case 175:case 174:case 220:case 180:case 181:case 185:case 186:case 178:case 179:if(s.typeParameters===c)return 30;if(s.parameters===c)return 21;break;case 214:case 215:if(s.typeArguments===c)return 30;if(s.arguments===c)return 21;break;case 264:case 232:case 265:case 266:if(s.typeParameters===c)return 30;break;case 184:case 216:case 187:case 234:case 206:if(s.typeArguments===c)return 30;break;case 188:return 19}return 0}function uOs(s){switch(s){case 21:return 22;case 30:return 32;case 19:return 20}return 0}var Nst,y2e,b2e;function H4t(s,c){if((!Nst||Nst.tabSize!==c.tabSize||Nst.indentSize!==c.indentSize)&&(Nst={tabSize:c.tabSize,indentSize:c.indentSize},y2e=b2e=void 0),c.convertTabsToSpaces){let d,h=Math.floor(s/c.indentSize),_=s%c.indentSize;return b2e||(b2e=[]),b2e[h]===void 0?(d=G1e(" ",c.indentSize*h),b2e[h]=d):d=b2e[h],_?d+G1e(" ",_):d}else{let d=Math.floor(s/c.tabSize),h=s-d*c.tabSize,_;return y2e||(y2e=[]),y2e[d]===void 0?y2e[d]=_=G1e(" ",d):_=y2e[d],h?_+G1e(" ",h):_}}var ZN;(s=>{let c;(je=>{je[je.Unknown=-1]="Unknown"})(c||(c={}));function g(je,Wt,_r,Gt=!1){if(je>Wt.text.length)return R(_r);if(_r.indentStyle===0)return 0;let it=Vm(je,Wt,void 0,!0),kt=Hpn(Wt,je,it||null);if(kt&&kt.kind===3)return d(Wt,je,_r,kt);if(!it)return R(_r);if(qrt(it.kind)&&it.getStart(Wt)<=je&&je=0),it<=kt)return Ct(XD(kt,je),Wt,je,_r);let tr=XD(it,je),{column:ur,character:Gr}=Qe(tr,Wt,je,_r);return ur===0?ur:je.text.charCodeAt(tr+Gr)===42?ur-1:ur}function h(je,Wt,_r){let Gt=Wt;for(;Gt>0;){let kt=je.text.charCodeAt(Gt);if(!dc(kt))break;Gt--}let it=YB(Gt,je);return Ct(it,Gt,je,_r)}function _(je,Wt,_r,Gt,it,kt){let tr,ur=_r;for(;ur;){if(Qrt(ur,Wt,je)&&Rt(kt,ur,tr,je,!0)){let dt=ge(ur,je),pr=re(_r,ur,Gt,je),ot=pr!==0?it&&pr===2?kt.indentSize:0:Gt!==dt.line?kt.indentSize:0;return T(ur,dt,void 0,ot,je,!0,kt)}let Gr=Ye(ur,je,kt,!0);if(Gr!==-1)return Gr;tr=ur,ur=ur.parent}return R(kt)}function S(je,Wt,_r,Gt){let it=_r.getLineAndCharacterOfPosition(je.getStart(_r));return T(je,it,Wt,0,_r,!1,Gt)}s.getIndentationForNode=S;function R(je){return je.baseIndentSize||0}s.getBaseIndentation=R;function T(je,Wt,_r,Gt,it,kt,tr){var ur;let Gr=je.parent;for(;Gr;){let dt=!0;if(_r){let qt=je.getStart(it);dt=qt<_r.pos||qt>_r.end}let pr=O(Gr,je,it),ot=pr.line===Wt.line||_e(Gr,je,Wt.line,it);if(dt){let qt=(ur=Te(je,it))==null?void 0:ur[0],Yt=!!qt&&ge(qt,it).line>pr.line,Tr=Ye(je,it,tr,Yt);if(Tr!==-1||(Tr=M(je,Gr,Wt,ot,it,tr),Tr!==-1))return Tr+Gt}Rt(tr,Gr,je,it,kt)&&!ot&&(Gt+=tr.indentSize);let ir=Ie(Gr,je,Wt.line,it);je=Gr,Gr=je.parent,Wt=ir?it.getLineAndCharacterOfPosition(je.getStart(it)):pr}return Gt+R(tr)}function O(je,Wt,_r){let Gt=Te(Wt,_r),it=Gt?Gt.pos:je.getStart(_r);return _r.getLineAndCharacterOfPosition(it)}function V(je,Wt,_r){let Gt=EMt(je);return Gt&&Gt.listItemIndex>0?Tt(Gt.list.getChildren(),Gt.listItemIndex-1,Wt,_r):-1}function M(je,Wt,_r,Gt,it,kt){return(em(je)||VJ(je))&&(Wt.kind===308||!Gt)?at(_r,it,kt):-1}let ee;(je=>{je[je.Unknown=0]="Unknown",je[je.OpenBrace=1]="OpenBrace",je[je.CloseBrace=2]="CloseBrace"})(ee||(ee={}));function re(je,Wt,_r,Gt){let it=BQ(je,Wt,Gt);if(!it)return 0;if(it.kind===19)return 1;if(it.kind===20){let kt=ge(it,Gt).line;return _r===kt?2:0}return 0}function ge(je,Wt){return Wt.getLineAndCharacterOfPosition(je.getStart(Wt))}function Ie(je,Wt,_r,Gt){if(!(Ll(je)&&k(je.arguments,Wt)))return!1;let it=je.expression.getEnd();return Ra(Gt,it).line===_r}s.isArgumentAndStartLineOverlapsExpressionBeingCalled=Ie;function _e(je,Wt,_r,Gt){if(je.kind===246&&je.elseStatement===Wt){let it=ep(je,93,Gt);return pe.assert(it!==void 0),ge(it,Gt).line===_r}return!1}s.childStartsOnTheSameLineWithElseInIfStatement=_e;function Ee(je,Wt,_r,Gt){if(Mw(je)&&(Wt===je.whenTrue||Wt===je.whenFalse)){let it=Ra(Gt,je.condition.end).line;if(Wt===je.whenTrue)return _r===it;{let kt=ge(je.whenTrue,Gt).line,tr=Ra(Gt,je.whenTrue.end).line;return it===kt&&tr===_r}}return!1}s.childIsUnindentedBranchOfConditionalExpression=Ee;function Ne(je,Wt,_r,Gt){if(gv(je)){if(!je.arguments)return!1;let it=de(je.arguments,Gr=>Gr.pos===Wt.pos);if(!it)return!1;let kt=je.arguments.indexOf(it);if(kt===0)return!1;let tr=je.arguments[kt-1],ur=Ra(Gt,tr.getEnd()).line;if(_r===ur)return!0}return!1}s.argumentStartsOnSameLineAsPreviousArgument=Ne;function Te(je,Wt){return je.parent&&Pe(je.getStart(Wt),je.getEnd(),je.parent,Wt)}s.getContainingList=Te;function Ze(je,Wt,_r){return Wt&&Pe(je,je,Wt,_r)}function Pe(je,Wt,_r,Gt){switch(_r.kind){case 184:return it(_r.typeArguments);case 211:return it(_r.properties);case 210:return it(_r.elements);case 188:return it(_r.members);case 263:case 219:case 220:case 175:case 174:case 180:case 177:case 186:case 181:return it(_r.typeParameters)||it(_r.parameters);case 178:return it(_r.parameters);case 264:case 232:case 265:case 266:case 346:return it(_r.typeParameters);case 215:case 214:return it(_r.typeArguments)||it(_r.arguments);case 262:return it(_r.declarations);case 276:case 280:return it(_r.elements);case 207:case 208:return it(_r.elements)}function it(kt){return kt&&N1e(Ke(_r,kt,Gt),je,Wt)?kt:void 0}}function Ke(je,Wt,_r){let Gt=je.getChildren(_r);for(let it=1;it=0&&Wt=0;tr--){if(je[tr].kind===28)continue;if(_r.getLineAndCharacterOfPosition(je[tr].end).line!==kt.line)return at(kt,_r,Gt);kt=ge(je[tr],_r)}return-1}function at(je,Wt,_r){let Gt=Wt.getPositionOfLineAndCharacter(je.line,0);return Ct(Gt,Gt+je.character,Wt,_r)}function Qe(je,Wt,_r,Gt){let it=0,kt=0;for(let tr=je;trgOs});function gOs(s,c,g){let d=!1;return c.forEach(h=>{let _=ji(Jc(s,h.pos),S=>uy(S,h));_&&Lu(_,function S(R){var T;if(!d){if(Ir(R)&&rse(h,R.getStart(s))){let O=g.resolveName(R.text,R,-1,!1);if(O&&O.declarations){for(let V of O.declarations)if(cit(V)||R.text&&s.symbol&&((T=s.symbol.exports)!=null&&T.has(R.escapedText))){d=!0;return}}}R.forEachChild(S)}})}),d}var kst={};o(kst,{pasteEditsProvider:()=>dOs});var AOs="providePostPasteEdits";function dOs(s,c,g,d,h,_,S,R){return{edits:xo.ChangeTracker.with({host:h,formatContext:S,preferences:_},O=>pOs(s,c,g,d,h,_,S,R,O)),fixId:AOs}}function pOs(s,c,g,d,h,_,S,R,T){let O;c.length!==g.length&&(O=c.length===1?c[0]:c.join(JF(S.host,S.options)));let V=[],M=s.text;for(let re=g.length-1;re>=0;re--){let{pos:ge,end:Ie}=g[re];M=O?M.slice(0,ge)+O+M.slice(Ie):M.slice(0,ge)+c[re]+M.slice(Ie)}let ee;pe.checkDefined(h.runWithTemporaryFileUpdate).call(h,s.fileName,M,(re,ge,Ie)=>{if(ee=F0.createImportAdder(Ie,re,_,h),d?.range){pe.assert(d.range.length===c.length),d.range.forEach(Ze=>{let Pe=d.file.statements,Ke=Se(Pe,Ye=>Ye.end>Ze.pos);if(Ke===-1)return;let et=Se(Pe,Ye=>Ye.end>=Ze.end,Ke);et!==-1&&Ze.end<=Pe[et].getStart()&&et--,V.push(...Pe.slice(Ke,et===-1?Pe.length:et+1))}),pe.assertIsDefined(ge,"no original program found");let _e=ge.getTypeChecker(),Ee=fOs(d),Ne=YWe(d.file,V,_e,oYt(Ie,V,_e),Ee),Te=!Gnt(s.fileName,ge,h,!!d.file.commonJsModuleIndicator);qHt(d.file,Ne.targetFileImportsFromOldFile,T,Te),cYt(d.file,Ne.oldImportsNeededByTargetFile,Ne.targetFileImportsFromOldFile,_e,re,ee)}else{let _e={sourceFile:Ie,program:ge,cancellationToken:R,host:h,preferences:_,formatContext:S},Ee=0;g.forEach((Ne,Te)=>{let Ze=Ne.end-Ne.pos,Pe=O??c[Te],Ke=Ne.pos+Ee,et=Ke+Pe.length,Ye={pos:Ke,end:et};Ee+=Pe.length-Ze;let Tt=ji(Jc(_e.sourceFile,Ye.pos),at=>uy(at,Ye));Tt&&Lu(Tt,function at(Qe){if(Ir(Qe)&&rse(Ye,Qe.getStart(Ie))&&!re?.getTypeChecker().resolveName(Qe.text,Qe,-1,!1))return ee.addImportForUnresolvedIdentifier(_e,Qe,!0);Qe.forEachChild(at)})})}ee.writeFixes(T,E1(d?d.file:s,_))}),ee.hasFixes()&&g.forEach((re,ge)=>{T.replaceRangeWithText(s,{pos:re.pos,end:re.end},O??c[ge])})}function fOs({file:s,range:c}){let g=c[0].pos,d=c[c.length-1].end,h=Jc(s,g),_=ope(s,g)??Jc(s,d);return{pos:Ir(h)&&g<=h.getStart(s)?h.getFullStart():g,end:Ir(_)&&d===_.getEnd()?xo.getAdjustedEndPosition(s,_,{}):d}}var Ypn={};o(Ypn,{ANONYMOUS:()=>Snt,AccessFlags:()=>Ny,AssertionLevel:()=>bl,AssignmentDeclarationKind:()=>Dy,AssignmentKind:()=>OZe,Associativity:()=>JZe,BreakpointResolver:()=>bit,BuilderFileEmit:()=>s5t,BuilderProgramKind:()=>d5t,BuilderState:()=>cR,CallHierarchy:()=>rq,CharacterCodes:()=>z2,CheckFlags:()=>uB,CheckMode:()=>Jet,ClassificationType:()=>Frt,ClassificationTypeNames:()=>fMt,CommentDirectiveType:()=>zS,Comparison:()=>b,CompletionInfoFlags:()=>cMt,CompletionTriggerKind:()=>xrt,Completions:()=>aq,ContainerFlags:()=>WPt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>$S,Diagnostics:()=>Z,DocumentHighlights:()=>WWe,ElementFlags:()=>nf,EmitFlags:()=>dB,EmitHint:()=>ny,EmitOnly:()=>K2,EndOfLineState:()=>gMt,ExitStatus:()=>gt,ExportKind:()=>sHt,Extension:()=>ry,ExternalEmitHelpers:()=>qR,FileIncludeKind:()=>ty,FilePreprocessingDiagnosticsKind:()=>_w,FileSystemEntryKind:()=>s1,FileWatcherEventKind:()=>Eb,FindAllReferences:()=>zp,FlattenLevel:()=>a3t,FlowFlags:()=>Xp,ForegroundColorEscapeSequences:()=>K3t,FunctionFlags:()=>QZe,GeneratedIdentifierFlags:()=>cd,GetLiteralTextFlags:()=>B7,GoToDefinition:()=>hse,HighlightSpanKind:()=>oMt,IdentifierNameMap:()=>Xie,ImportKind:()=>iHt,ImportsNotUsedAsValues:()=>tv,IndentStyle:()=>aMt,IndexFlags:()=>qS,IndexKind:()=>Km,InferenceFlags:()=>D_,InferencePriority:()=>_b,InlayHintKind:()=>sMt,InlayHints:()=>dst,InternalEmitFlags:()=>GD,InternalNodeBuilderFlags:()=>Bg,InternalSymbolName:()=>GT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>Z5t,JSDocParsingMode:()=>i1,JsDoc:()=>u5,JsTyping:()=>qW,JsxEmit:()=>zR,JsxFlags:()=>Um,JsxReferenceKind:()=>rh,LanguageFeatureMinimumTarget:()=>Dd,LanguageServiceMode:()=>nMt,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>r2,ListFormat:()=>r1,LogLevel:()=>hb,MapCode:()=>pst,MemberOverrideStatus:()=>ar,ModifierFlags:()=>jE,ModuleDetectionKind:()=>e1,ModuleInstanceState:()=>LPt,ModuleKind:()=>ev,ModuleResolutionKind:()=>$_,ModuleSpecifierEnding:()=>ZLe,NavigateTo:()=>RHt,NavigationBar:()=>DHt,NewLineKind:()=>t1,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>Ry,NodeFactoryFlags:()=>fEe,NodeFlags:()=>fC,NodeResolutionFeatures:()=>vPt,ObjectFlags:()=>q_,OperationCanceledException:()=>Ty,OperatorPrecedence:()=>UZe,OrganizeImports:()=>g5,OrganizeImportsMode:()=>krt,OuterExpressionKinds:()=>pF,OutliningElementsCollector:()=>Ist,OutliningSpanKind:()=>lMt,OutputFileType:()=>uMt,PackageJsonAutoImportPreference:()=>rMt,PackageJsonDependencyGroup:()=>tMt,PatternMatchKind:()=>Hnt,PollingInterval:()=>i_,PollingWatchKind:()=>AB,PragmaKindFlags:()=>k_,PredicateSemantics:()=>z_,PreparePasteEdits:()=>Dst,PrivateIdentifierKind:()=>A9e,ProcessLevel:()=>g3t,ProgramUpdateLevel:()=>Y3t,QuotePreference:()=>LMt,RegularExpressionFlags:()=>zE,RelationComparisonResult:()=>wy,Rename:()=>bOe,ScriptElementKind:()=>dMt,ScriptElementKindModifier:()=>pMt,ScriptKind:()=>j2,ScriptSnapshot:()=>zVe,ScriptTarget:()=>LT,SemanticClassificationFormat:()=>iMt,SemanticMeaning:()=>IMt,SemicolonPreference:()=>Grt,SignatureCheckMode:()=>Uet,SignatureFlags:()=>td,SignatureHelp:()=>p2e,SignatureInfo:()=>i5t,SignatureKind:()=>TA,SmartSelectionRange:()=>Cst,SnippetKind:()=>yw,StatisticType:()=>Q5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>AI,SymbolDisplay:()=>u9,SymbolDisplayPartKind:()=>$Ve,SymbolFlags:()=>xT,SymbolFormatFlags:()=>Df,SyntaxKind:()=>Wd,Ternary:()=>yb,ThrottledCancellationToken:()=>WYt,TokenClass:()=>AMt,TokenFlags:()=>qE,TransformFlags:()=>Ap,TypeFacts:()=>Xet,TypeFlags:()=>$E,TypeFormatFlags:()=>Dg,TypeMapKind:()=>eI,TypePredicateKind:()=>kh,TypeReferenceSerializationKind:()=>lE,UnionReduction:()=>Jr,UpToDateStatusType:()=>R5t,VarianceFlags:()=>FT,Version:()=>P,VersionRange:()=>At,WatchDirectoryFlags:()=>t2,WatchDirectoryKind:()=>ZT,WatchFileKind:()=>gB,WatchLogLevel:()=>X3t,WatchType:()=>eC,accessPrivateIdentifier:()=>o3t,addEmitFlags:()=>Ww,addEmitHelper:()=>uQ,addEmitHelpers:()=>bN,addInternalEmitFlags:()=>L3,addNodeFactoryPatcher:()=>y$e,addObjectAllocatorPatcher:()=>s$e,addRange:()=>Pr,addRelatedInfo:()=>ug,addSyntheticLeadingComment:()=>qT,addSyntheticTrailingComment:()=>Nz,addToSeen:()=>Vy,advancedAsyncSuperHelper:()=>LF,affectsDeclarationPathOptionDeclarations:()=>jOt,affectsEmitOptionDeclarations:()=>KOt,allKeysStartWithDot:()=>rVe,altDirectorySeparator:()=>vb,and:()=>hh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>YLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Uu,arrayToNumericMap:()=>Vs,assertType:()=>oE,assign:()=>Pt,asyncSuperHelper:()=>Eie,attachFileToDiagnostics:()=>qL,base64decode:()=>dLe,base64encode:()=>Bbe,binarySearch:()=>Oc,binarySearchKey:()=>vg,bindSourceFile:()=>OPt,breakIntoCharacterSpans:()=>yHt,breakIntoWordSpans:()=>bHt,buildLinkParts:()=>QMt,buildOpts:()=>PEe,buildOverload:()=>Jpn,bundlerModuleNameResolver:()=>BPt,canBeConvertedToAsync:()=>Knt,canHaveDecorators:()=>hQ,canHaveExportModifier:()=>lie,canHaveFlowNode:()=>aU,canHaveIllegalDecorators:()=>eet,canHaveIllegalModifiers:()=>NOt,canHaveIllegalType:()=>N$r,canHaveIllegalTypeParameters:()=>ROt,canHaveJSDoc:()=>Bne,canHaveLocals:()=>HI,canHaveModifiers:()=>MB,canHaveModuleSpecifier:()=>ZZe,canHaveSymbol:()=>yE,canIncludeBindAndCheckDiagnostics:()=>SU,canJsonReportNoInputFiles:()=>JEe,canProduceDiagnostics:()=>i1e,canUsePropertyAccess:()=>nEe,canWatchAffectingLocation:()=>y5t,canWatchAtTypes:()=>_5t,canWatchDirectoryOrFile:()=>Ktt,canWatchDirectoryOrFilePath:()=>C1e,cartesianProduct:()=>KE,cast:()=>Ma,chainBundle:()=>aR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>$2,changeCompilerHostLikeToUseCache:()=>zde,changeExtension:()=>_N,changeFullExtension:()=>o_,changesAffectModuleResolution:()=>HJ,changesAffectingProgramStructure:()=>kge,characterCodeToRegularExpressionFlag:()=>Pg,childIsDecorated:()=>rU,classElementOrClassElementParameterIsDecorated:()=>Wye,classHasClassThisAssignment:()=>ltt,classHasDeclaredOrExplicitlyAssignedName:()=>utt,classHasExplicitlyAssignedName:()=>fVe,classOrConstructorParameterIsDecorated:()=>Gx,classicNameResolver:()=>FPt,classifier:()=>HYt,cleanExtendedConfigCache:()=>yVe,clear:()=>ft,clearMap:()=>Ly,clearSharedExtendedConfigFileWatcher:()=>Stt,climbPastPropertyAccess:()=>rWe,clone:()=>Sg,cloneCompilerOptions:()=>ent,closeFileWatcher:()=>hv,closeFileWatcherOf:()=>Ev,codefix:()=>F0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>stt,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>$Ot,commentPragmas:()=>n1,commonOptionsWithBuild:()=>Z9e,compact:()=>Hr,compareBooleans:()=>Hl,compareDataObjects:()=>LAe,compareDiagnostics:()=>oz,compareEmitHelpers:()=>p9e,compareNumberOfDirectorySeparators:()=>sie,comparePaths:()=>tI,comparePathsCaseInsensitive:()=>CB,comparePathsCaseSensitive:()=>Sx,comparePatternKeys:()=>Wet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Oa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>io,compareTextSpans:()=>bn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>RLe,compilerOptionsAffectEmit:()=>TLe,compilerOptionsAffectSemanticDiagnostics:()=>Obe,compilerOptionsDidYouMeanDiagnostics:()=>O9e,compilerOptionsIndicateEsModules:()=>ont,computeCommonSourceDirectoryOfFilenames:()=>J3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Wo,computeLineStarts:()=>lA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>Htt,computeSuggestionDiagnostics:()=>Xnt,computedOptions:()=>az,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Kne,consumesNodeCoreModules:()=>NWe,contains:()=>k,containsIgnoredPath:()=>Cz,containsObjectRestOrSpread:()=>LEe,containsParseError:()=>bW,containsPath:()=>zh,convertCompilerOptionsForTelemetry:()=>pPt,convertCompilerOptionsFromJson:()=>Wen,convertJsonOption:()=>VU,convertToBase64:()=>vbe,convertToJson:()=>YEe,convertToObject:()=>cPt,convertToOptionsWithAbsolutePaths:()=>Y9e,convertToRelativePath:()=>s2,convertToTSConfig:()=>yet,convertTypeAcquisitionFromJson:()=>Oen,copyComments:()=>XU,copyEntries:()=>y7,copyLeadingComments:()=>cse,copyProperties:()=>ZA,copyTrailingAsLeadingComments:()=>O1e,copyTrailingComments:()=>dpe,couldStartTrivia:()=>sv,countWhere:()=>ze,createAbstractBuilder:()=>Urn,createAccessorPropertyBackingField:()=>net,createAccessorPropertyGetRedirector:()=>VOt,createAccessorPropertySetRedirector:()=>WOt,createBaseNodeFactory:()=>r9e,createBinaryExpressionTrampoline:()=>D9e,createBuilderProgram:()=>Ytt,createBuilderProgramUsingIncrementalBuildInfo:()=>h5t,createBuilderStatusReporter:()=>HVe,createCacheableExportInfoMap:()=>Fnt,createCachedDirectoryStructureHost:()=>CVe,createClassifier:()=>Sin,createCommentDirectivesMap:()=>Wge,createCompilerDiagnostic:()=>kf,createCompilerDiagnosticForInvalidCustomType:()=>ePt,createCompilerDiagnosticFromMessageChain:()=>PAe,createCompilerHost:()=>U3t,createCompilerHostFromProgramHost:()=>urt,createCompilerHostWorker:()=>bVe,createDetachedDiagnostic:()=>rQ,createDiagnosticCollection:()=>RF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>C3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Dw,createDiagnosticForNodeInSourceFile:()=>EE,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Uz,createDocumentPositionMapper:()=>t3t,createDocumentRegistry:()=>uHt,createDocumentRegistryInternal:()=>Ont,createEmitAndSemanticDiagnosticsBuilderProgram:()=>Utt,createEmitHelperFactory:()=>d9e,createEmptyExports:()=>REe,createEvaluator:()=>$Le,createExpressionForJsxElement:()=>EOt,createExpressionForJsxFragment:()=>SOt,createExpressionForObjectLiteralElementLike:()=>vOt,createExpressionForPropertyName:()=>U$e,createExpressionFromEntityName:()=>NEe,createExternalHelpersImportDeclarationIfNeeded:()=>z$e,createFileDiagnostic:()=>rm,createFileDiagnosticFromMessageChain:()=>qe,createFlowNode:()=>ak,createForOfBindingStatement:()=>J$e,createFutureSourceFile:()=>ZWe,createGetCanonicalFileName:()=>bd,createGetIsolatedDeclarationErrors:()=>G3t,createGetSourceFile:()=>Rtt,createGetSymbolAccessibilityDiagnosticForNode:()=>e5,createGetSymbolAccessibilityDiagnosticForNodeName:()=>x3t,createGetSymbolWalker:()=>PPt,createIncrementalCompilerHost:()=>MVe,createIncrementalProgram:()=>T5t,createJsxFactoryExpression:()=>X$e,createLanguageService:()=>OYt,createLanguageServiceSourceFile:()=>tOe,createMemberAccessForPropertyName:()=>ZU,createModeAwareCache:()=>Pie,createModeAwareCacheKey:()=>Zde,createModeMismatchDetails:()=>E7,createModuleNotFoundChain:()=>QJ,createModuleResolutionCache:()=>Mie,createModuleResolutionLoader:()=>Ftt,createModuleResolutionLoaderUsingGlobalCache:()=>v5t,createModuleSpecifierResolutionHost:()=>i5,createMultiMap:()=>gl,createNameResolver:()=>ude,createNodeConverters:()=>n9e,createNodeFactory:()=>hie,createOptionNameMap:()=>V9e,createOverload:()=>xst,createPackageJsonImportFilter:()=>use,createPackageJsonInfo:()=>wnt,createParenthesizerRules:()=>mv,createPatternMatcher:()=>fHt,createPrinter:()=>jW,createPrinterWithDefaults:()=>M3t,createPrinterWithRemoveComments:()=>bQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>H3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Ett,createProgram:()=>I1e,createProgramDiagnostics:()=>r5t,createProgramHost:()=>grt,createPropertyNameNodeForIdentifierOrLiteral:()=>cie,createQueue:()=>aA,createRange:()=>Zy,createRedirectedBuilderProgram:()=>Jtt,createResolutionCache:()=>ztt,createRuntimeTypeSerializer:()=>I3t,createScanner:()=>Rb,createSemanticDiagnosticsBuilderProgram:()=>Jrn,createSet:()=>so,createSolutionBuilder:()=>x5t,createSolutionBuilderHost:()=>D5t,createSolutionBuilderWithWatch:()=>G5t,createSolutionBuilderWithWatchHost:()=>k5t,createSortedArray:()=>Ya,createSourceFile:()=>Wz,createSourceMapGenerator:()=>jPt,createSourceMapSource:()=>S$e,createSuperAccessVariableStatement:()=>hVe,createSymbolTable:()=>$u,createSymlinkCache:()=>Mbe,createSyntacticTypeNodeBuilder:()=>q5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>x1e,createTextChangeFromStartLength:()=>fWe,createTextChangeRange:()=>nS,createTextRangeFromNode:()=>nnt,createTextRangeFromSpan:()=>pWe,createTextSpan:()=>$d,createTextSpanFromBounds:()=>RA,createTextSpanFromNode:()=>Hy,createTextSpanFromRange:()=>a9,createTextSpanFromStringLiteralLikeContent:()=>rnt,createTextWriter:()=>One,createTokenRange:()=>zL,createTypeChecker:()=>UPt,createTypeReferenceDirectiveResolutionCache:()=>eVe,createTypeReferenceResolutionLoader:()=>vVe,createWatchCompilerHost:()=>inn,createWatchCompilerHostOfConfigFile:()=>Art,createWatchCompilerHostOfFilesAndCompilerOptions:()=>drt,createWatchFactory:()=>lrt,createWatchHost:()=>crt,createWatchProgram:()=>prt,createWatchStatusReporter:()=>qtt,createWriteFileMeasuringIO:()=>Ntt,declarationNameToString:()=>Md,decodeMappings:()=>rtt,decodedTextSpanIntersectsWith:()=>CE,deduplicate:()=>no,defaultHoverMaximumTruncationLength:()=>Rge,defaultInitCompilerOptions:()=>sen,defaultMaximumTruncationLength:()=>GY,diagnosticCategoryName:()=>bb,diagnosticToString:()=>wQ,diagnosticsEqualityComparer:()=>MAe,directoryProbablyExists:()=>m1,directorySeparator:()=>cg,displayPart:()=>wE,displayPartsToString:()=>$1e,disposeEmitNodes:()=>ju,documentSpansEqual:()=>dnt,dumpTracingLegend:()=>$f,elementAt:()=>_g,elideNodes:()=>LOt,emitDetachedComments:()=>rLe,emitFiles:()=>ytt,emitFilesAndReportErrors:()=>VVe,emitFilesAndReportErrorsAndGetExitStatus:()=>art,emitModuleKindIsNonNodeESM:()=>eie,emitNewLineBeforeLeadingCommentOfPosition:()=>Ibe,emitResolverSkipsTypeChecking:()=>_tt,emitSkippedWithNoDiagnostics:()=>Vtt,emptyArray:()=>E,emptyFileSystemEntries:()=>Kbe,emptyMap:()=>N,emptyOptions:()=>HB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Im,ensureScriptKind:()=>jAe,ensureTrailingDirectorySeparator:()=>Cp,entityNameToString:()=>cy,enumerateInsertsAndDeletes:()=>ey,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Yp,equateStringsCaseSensitive:()=>YA,equateValues:()=>bg,escapeJsxAttributeString:()=>cbe,escapeLeadingUnderscores:()=>pp,escapeNonAsciiString:()=>Lne,escapeSnippetText:()=>PW,escapeString:()=>KT,escapeTemplateSubstitution:()=>obe,evaluatorResult:()=>nm,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>dde,executeCommandLine:()=>Lnn,expandPreOrPostfixIncrementOrDecrementExpression:()=>B9e,explainFiles:()=>rrt,explainIfFileIsRedirectAndImpliedFormat:()=>nrt,exportAssignmentIsAlias:()=>Nne,expressionResultIsUnused:()=>XLe,extend:()=>HA,extensionFromPath:()=>fz,extensionIsTS:()=>rde,extensionsNotSupportingExtensionlessResolution:()=>tde,externalHelpersModuleNameText:()=>YD,factory:()=>me,fileExtensionIs:()=>cA,fileExtensionIsOneOf:()=>Iu,fileIncludeReasonToDiagnostics:()=>ort,fileShouldUseJavaScriptRequire:()=>Gnt,filter:()=>Le,filterMutate:()=>Je,filterSemanticDiagnostics:()=>RVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>XA,findChildOfKind:()=>ep,findComputedPropertyNameCacheAssignment:()=>k9e,findConfigFile:()=>wtt,findConstructorDeclaration:()=>cQ,findContainingList:()=>aWe,findDiagnosticForNode:()=>tHt,findFirstNonJsxWhitespaceToken:()=>SMt,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>EMt,findModifier:()=>sse,findNextToken:()=>BQ,findPackageJson:()=>eHt,findPackageJsons:()=>Bnt,findPrecedingMatchingToken:()=>AWe,findPrecedingToken:()=>Vm,findSuperStatementIndexPath:()=>gVe,findTokenOnLeftOfPosition:()=>ope,findUseStrictPrologue:()=>j$e,first:()=>ma,firstDefined:()=>J,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>Nnt,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>sA,fixupCompilerOptions:()=>jnt,flatMap:()=>jt,flatMapIterator:()=>Dt,flatMapToMutable:()=>Bt,flatten:()=>Sr,flattenCommaList:()=>OOt,flattenDestructuringAssignment:()=>PU,flattenDestructuringBinding:()=>yQ,flattenDiagnosticMessageText:()=>kN,forEach:()=>F,forEachAncestor:()=>Tw,forEachAncestorDirectory:()=>hE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>NN,forEachChild:()=>Lu,forEachChildRecursively:()=>Vz,forEachDynamicImportOrRequireCall:()=>die,forEachEmittedFile:()=>Itt,forEachEnclosingBlockScopeContainer:()=>Uge,forEachEntry:()=>Fh,forEachExternalModuleToImportFrom:()=>Lnt,forEachImportClauseDeclaration:()=>LZe,forEachKey:()=>RB,forEachLeadingCommentRange:()=>WD,forEachNameInAccessChainWalkingLeft:()=>CLe,forEachNameOfDefaultExport:()=>VWe,forEachOptionsSyntaxByName:()=>pde,forEachProjectReference:()=>vz,forEachPropertyAssignment:()=>$J,forEachResolvedProjectReference:()=>fie,forEachReturnStatement:()=>wF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>CF,forEachTsConfigPropArray:()=>gne,forEachUnique:()=>fnt,forEachYieldExpression:()=>bZe,formatColorAndReset:()=>EQ,formatDiagnostic:()=>Dtt,formatDiagnostics:()=>yrn,formatDiagnosticsWithColorAndContext:()=>q3t,formatGeneratedName:()=>K3,formatGeneratedNamePart:()=>Lie,formatLocation:()=>ktt,formatMessage:()=>nQ,formatStringFromArgs:()=>mN,formatting:()=>_m,generateDjb2Hash:()=>iy,generateTSConfig:()=>lPt,getAdjustedReferenceLocation:()=>Urt,getAdjustedRenameLocation:()=>lWe,getAliasDeclarationFromName:()=>zye,getAllAccessorDeclarations:()=>GW,getAllDecoratorsOfClass:()=>att,getAllDecoratorsOfClassElement:()=>dVe,getAllJSDocTags:()=>BJ,getAllJSDocTagsOfKind:()=>Sye,getAllKeys:()=>_I,getAllProjectOutputs:()=>mVe,getAllSuperTypeNodes:()=>H7,getAllowImportingTsExtensions:()=>ELe,getAllowJSCompilerOption:()=>GF,getAllowSyntheticDefaultImports:()=>iQ,getAncestor:()=>UL,getAnyExtensionFromPath:()=>pE,getAreDeclarationMapsEnabled:()=>HAe,getAssignedExpandoInitializer:()=>XY,getAssignedName:()=>SB,getAssignmentDeclarationKind:()=>oI,getAssignmentDeclarationPropertyAccessKind:()=>sU,getAssignmentTargetKind:()=>jD,getAutomaticTypeDirectiveNames:()=>q9e,getBaseFileName:()=>dp,getBinaryOperatorPrecedence:()=>Zne,getBuildInfo:()=>btt,getBuildInfoFileVersionMap:()=>Xtt,getBuildInfoText:()=>O3t,getBuildOrderFromAnyBuildOrder:()=>y1e,getBuilderCreationParameters:()=>xVe,getBuilderFileEmit:()=>zW,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>aI,getClassExtendsHeritageElement:()=>JL,getClassLikeDeclarationOfSymbol:()=>hN,getCombinedLocalAndExportSymbolFlags:()=>mU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>hm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ld,getCommentRange:()=>ZB,getCommonSourceDirectory:()=>jde,getCommonSourceDirectoryOfConfig:()=>MU,getCompilerOptionValue:()=>lz,getConditions:()=>JW,getConfigFileParsingDiagnostics:()=>SQ,getConstantValue:()=>s9e,getContainerFlags:()=>Pet,getContainerNode:()=>QU,getContainingClass:()=>_C,getContainingClassExcludingClassDecorators:()=>iAe,getContainingClassStaticBlock:()=>wZe,getContainingFunction:()=>f1,getContainingFunctionDeclaration:()=>nAe,getContainingFunctionOrClassStaticBlock:()=>Ane,getContainingNodeArray:()=>JLe,getContainingObjectLiteralElement:()=>e2e,getContextualTypeFromParent:()=>SWe,getContextualTypeFromParentOrAncestorTypeNode:()=>cWe,getDeclarationDiagnostics:()=>F3t,getDeclarationEmitExtensionForPath:()=>bAe,getDeclarationEmitOutputFilePath:()=>qZe,getDeclarationEmitOutputFilePathWorker:()=>Pne,getDeclarationFileExtension:()=>G9e,getDeclarationFromName:()=>M7,getDeclarationModifierFlagsFromSymbol:()=>d2,getDeclarationOfKind:()=>yp,getDeclarationsOfKind:()=>Nge,getDeclaredExpandoInitializer:()=>L7,getDecorators:()=>Db,getDefaultCompilerOptions:()=>eOe,getDefaultFormatCodeSettings:()=>qVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>PYt,getDefaultLikeExportInfo:()=>LWe,getDefaultLikeExportNameFromDeclaration:()=>Dnt,getDefaultResolutionModeForFileWorker:()=>TVe,getDiagnosticText:()=>Vb,getDiagnosticsWithinSpan:()=>rHt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>jtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>E5t,getDocumentPositionMapper:()=>Qnt,getDocumentSpansEqualityComparer:()=>pnt,getESModuleInterop:()=>Lw,getEditsForFileRename:()=>AHt,getEffectiveBaseTypeNode:()=>DB,getEffectiveConstraintOfTypeParameter:()=>u3,getEffectiveContainerForJSDocTemplateTag:()=>pAe,getEffectiveImplementsTypeNodes:()=>lU,getEffectiveInitializer:()=>_ne,getEffectiveJSDocHost:()=>XL,getEffectiveModifierFlags:()=>c_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>aLe,getEffectiveModifierFlagsNoCache:()=>Cbe,getEffectiveReturnTypeNode:()=>Fb,getEffectiveSetAccessorTypeAnnotationNode:()=>fbe,getEffectiveTypeAnnotationNode:()=>Zh,getEffectiveTypeParameterDeclarations:()=>PD,getEffectiveTypeRoots:()=>Fde,getElementOrPropertyAccessArgumentExpressionOrName:()=>dAe,getElementOrPropertyAccessName:()=>KD,getElementsOfBindingOrAssignmentPattern:()=>Zie,getEmitDeclarations:()=>Wy,getEmitFlags:()=>rA,getEmitHelpers:()=>mEe,getEmitModuleDetectionKind:()=>SLe,getEmitModuleFormatOfFileWorker:()=>epe,getEmitModuleKind:()=>o0,getEmitModuleResolutionKind:()=>G_,getEmitScriptTarget:()=>Hg,getEmitStandardClassFields:()=>Wbe,getEnclosingBlockScopeContainer:()=>sS,getEnclosingContainer:()=>R7,getEncodedSemanticClassifications:()=>Vnt,getEncodedSyntacticClassifications:()=>Wnt,getEndLinePosition:()=>ZY,getEntityNameFromTypeNode:()=>pne,getEntrypointsFromPackageJsonInfo:()=>Zet,getErrorCountForSummary:()=>ZVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>ert,getEscapedTextOfIdentifierOrLiteral:()=>gU,getEscapedTextOfJsxAttributeName:()=>bz,getEscapedTextOfJsxNamespacedName:()=>uS,getExpandoInitializer:()=>YL,getExportAssignmentExpression:()=>Dne,getExportInfoMap:()=>X1e,getExportNeedsImportStarHelper:()=>r3t,getExpressionAssociativity:()=>ibe,getExpressionPrecedence:()=>J7,getExternalHelpersModuleName:()=>kEe,getExternalModuleImportEqualsDeclarationExpression:()=>G7,getExternalModuleName:()=>UY,getExternalModuleNameFromDeclaration:()=>jZe,getExternalModuleNameFromPath:()=>ube,getExternalModuleNameLiteral:()=>Lz,getExternalModuleRequireArgument:()=>Pye,getFallbackOptions:()=>d1e,getFileEmitOutput:()=>n5t,getFileMatcherPatterns:()=>KAe,getFileNamesFromConfigSpecs:()=>xde,getFileWatcherEventKind:()=>rv,getFilesInErrorForSummary:()=>LVe,getFirstConstructorWithBody:()=>pN,getFirstIdentifier:()=>T0,getFirstNonSpaceCharacterPosition:()=>UMt,getFirstProjectOutput:()=>Ctt,getFixableErrorSpanExpression:()=>Tnt,getFormatCodeSettingsForWriting:()=>GWe,getFullWidth:()=>YJ,getFunctionFlags:()=>BI,getHeritageClause:()=>kne,getHostSignatureFromJSDoc:()=>QL,getIdentifierAutoGenerate:()=>w$e,getIdentifierGeneratedImportReference:()=>g9e,getIdentifierTypeArguments:()=>P3,getImmediatelyInvokedFunctionExpression:()=>ML,getImpliedNodeFormatForEmitWorker:()=>HU,getImpliedNodeFormatForFile:()=>f1e,getImpliedNodeFormatForFileWorker:()=>wVe,getImportNeedsImportDefaultHelper:()=>itt,getImportNeedsImportStarHelper:()=>lVe,getIndentString:()=>yAe,getInferredLibraryNameResolveFrom:()=>BVe,getInitializedVariables:()=>hU,getInitializerOfBinaryExpression:()=>Yye,getInitializerOfBindingOrAssignmentElement:()=>GEe,getInterfaceBaseTypeNodes:()=>Y7,getInternalEmitFlags:()=>p1,getInvokedExpression:()=>aAe,getIsFileExcluded:()=>aHt,getIsolatedModules:()=>lS,getJSDocAugmentsTag:()=>l7,getJSDocClassTag:()=>wx,getJSDocCommentRanges:()=>Fye,getJSDocCommentsAndTags:()=>Xye,getJSDocDeprecatedTag:()=>$h,getJSDocDeprecatedTagNoCache:()=>a2,getJSDocEnumTag:()=>u1,getJSDocHost:()=>NW,getJSDocImplementsTags:()=>yY,getJSDocOverloadTags:()=>Uye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>DL,getJSDocParameterTagsNoCache:()=>EJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>Gre,getJSDocPublicTagNoCache:()=>Tx,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>mA,getJSDocReturnTag:()=>lv,getJSDocReturnType:()=>vJ,getJSDocRoot:()=>cU,getJSDocSatisfiesExpressionType:()=>sEe,getJSDocSatisfiesTag:()=>yF,getJSDocTags:()=>Rx,getJSDocTemplateTag:()=>pW,getJSDocThisTag:()=>kb,getJSDocType:()=>sN,getJSDocTypeAliasName:()=>$$e,getJSDocTypeAssertionType:()=>Gie,getJSDocTypeParameterDeclarations:()=>wAe,getJSDocTypeParameterTags:()=>l3,getJSDocTypeParameterTagsNoCache:()=>c7,getJSDocTypeTag:()=>uv,getJSXImplicitImportBase:()=>tie,getJSXRuntimeImport:()=>rie,getJSXTransformEnabled:()=>XAe,getKeyForCompilerOptions:()=>Det,getLanguageVariant:()=>jne,getLastChild:()=>kbe,getLeadingCommentRanges:()=>mE,getLeadingCommentRangesOfNode:()=>qge,getLeftmostAccessExpression:()=>CU,getLeftmostExpression:()=>_U,getLibFileNameFromLibReference:()=>lEe,getLibNameFromLibReference:()=>lQ,getLibraryNameFromLibFileName:()=>Ztt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ttt,getLineOfLocalPosition:()=>j7,getLineStartPositionForPosition:()=>YB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>Tbe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>hLe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>k3,getLinesBetweenRangeEndPositions:()=>ILe,getLiteralText:()=>Pge,getLocalNameForExternalImport:()=>Fie,getLocalSymbolForExportDefault:()=>ez,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>_1e,getMappedContextSpan:()=>Int,getMappedDocumentSpan:()=>yWe,getMappedLocation:()=>upe,getMatchedFileSpec:()=>irt,getMatchedIncludeSpec:()=>srt,getMeaningFromDeclaration:()=>eWe,getMeaningFromLocation:()=>YU,getMembersOfDeclaration:()=>$ge,getModeForFileReference:()=>$3t,getModeForResolutionAtIndex:()=>wrn,getModeForUsageLocation:()=>Gtt,getModifiedTime:()=>Sb,getModifiers:()=>iN,getModuleInstanceState:()=>QF,getModuleNameStringLiteralAt:()=>h1e,getModuleSpecifierEndingPreference:()=>LLe,getModuleSpecifierResolverHost:()=>ant,getNameForExportedSymbol:()=>DWe,getNameFromImportAttribute:()=>lde,getNameFromIndexInfo:()=>Kge,getNameFromPropertyName:()=>F1e,getNameOfAccessExpression:()=>xbe,getNameOfCompilerOptionValue:()=>H9e,getNameOfDeclaration:()=>fl,getNameOfExpando:()=>Mye,getNameOfJSDocTypedef:()=>_F,getNameOfScriptTarget:()=>QAe,getNameOrArgument:()=>bne,getNameTable:()=>yit,getNamespaceDeclarationNode:()=>oU,getNewLineCharacter:()=>fN,getNewLineKind:()=>Q1e,getNewLineOrDefaultFromHost:()=>JF,getNewTargetContainer:()=>RZe,getNextJSDocCommentLocation:()=>Jye,getNodeChildren:()=>Y$e,getNodeForGeneratedName:()=>ZEe,getNodeId:()=>id,getNodeKind:()=>vQ,getNodeModifiers:()=>ape,getNodeModulePathParts:()=>sde,getNonAssignedNameOfDeclaration:()=>Sw,getNonAssignmentOperatorForCompoundAssignment:()=>Hde,getNonAugmentationDeclaration:()=>jJ,getNonDecoratorTokenPosOfNode:()=>rne,getNonIncrementalBuildInfoRoots:()=>m5t,getNonModifierTokenPosOfNode:()=>Oge,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>eN,getNormalizedPathComponents:()=>hB,getObjectFlags:()=>la,getOperatorAssociativity:()=>sbe,getOperatorPrecedence:()=>Fne,getOptionFromName:()=>Iet,getOptionsForLibraryResolution:()=>ket,getOptionsNameMap:()=>Wie,getOptionsSyntaxByArrayElementValue:()=>uEe,getOptionsSyntaxByValue:()=>e9e,getOrCreateEmitNode:()=>u_,getOrUpdate:()=>cr,getOriginalNode:()=>xd,getOriginalNodeId:()=>My,getOutputDeclarationFileName:()=>Kde,getOutputDeclarationFileNameWorker:()=>htt,getOutputExtension:()=>u1e,getOutputFileNames:()=>Crn,getOutputJSFileNameWorker:()=>mtt,getOutputPathsFor:()=>Ude,getOwnEmitOutputFilePath:()=>zZe,getOwnKeys:()=>yg,getOwnValues:()=>Kh,getPackageJsonTypesVersionsPaths:()=>z9e,getPackageNameFromTypesPackageName:()=>Wde,getPackageScopeForPath:()=>Vde,getParameterSymbolFromJSDoc:()=>wne,getParentNodeInSpan:()=>L1e,getParseTreeNode:()=>eu,getParsedCommandLineOfConfigFile:()=>MEe,getPathComponents:()=>kp,getPathFromPathComponents:()=>Fm,getPathUpdater:()=>Mnt,getPathsBasePath:()=>EAe,getPatternFromSpec:()=>Qbe,getPendingEmitKindWithSeen:()=>kVe,getPositionOfLineAndCharacter:()=>ih,getPossibleGenericSignatures:()=>jrt,getPossibleOriginalInputExtensionForExtension:()=>gbe,getPossibleOriginalInputPathWithoutChangingExt:()=>Abe,getPossibleTypeArgumentsInfo:()=>zrt,getPreEmitDiagnostics:()=>_rn,getPrecedingNonSpaceCharacterPosition:()=>bWe,getPrivateIdentifier:()=>ctt,getProperties:()=>ott,getProperty:()=>fu,getPropertyAssignmentAliasLikeExpression:()=>YZe,getPropertyNameForPropertyNameNode:()=>w3,getPropertyNameFromType:()=>f2,getPropertyNameOfBindingOrAssignmentElement:()=>q$e,getPropertySymbolFromBindingElement:()=>_We,getPropertySymbolsFromContextualType:()=>rOe,getQuoteFromPreference:()=>lnt,getQuotePreference:()=>E1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>qz,getReferencedFileLocation:()=>$de,getRegexFromPattern:()=>rk,getRegularExpressionForWildcard:()=>uz,getRegularExpressionsForWildcards:()=>nie,getRelativePathFromDirectory:()=>_p,getRelativePathFromFile:()=>a1,getRelativePathToDirectoryOrUrl:()=>Hf,getRenameLocation:()=>W1e,getReplacementSpanForContextToken:()=>tnt,getResolutionDiagnostic:()=>Ott,getResolutionModeOverride:()=>Uie,getResolveJsonModule:()=>VW,getResolvePackageJsonExports:()=>cz,getResolvePackageJsonImports:()=>qne,getResolvedExternalModuleName:()=>K7,getResolvedModuleFromResolution:()=>OL,getResolvedTypeReferenceDirectiveFromResolution:()=>b7,getRestIndicatorOfBindingOrAssignmentElement:()=>R9e,getRestParameterElementType:()=>Zye,getRightMostAssignedExpression:()=>yne,getRootDeclaration:()=>Gw,getRootDirectoryOfResolutionCache:()=>S5t,getRootLength:()=>Mf,getScriptKind:()=>_nt,getScriptKindFromFileName:()=>zAe,getScriptTargetFeatures:()=>nne,getSelectedEffectiveModifierFlags:()=>$Y,getSelectedSyntacticModifierFlags:()=>sLe,getSemanticClassifications:()=>cHt,getSemanticJsxChildren:()=>AU,getSetAccessorTypeAnnotationNode:()=>eLe,getSetAccessorValueParameter:()=>z7,getSetExternalModuleIndicator:()=>zne,getShebang:()=>EB,getSingleVariableOfVariableStatement:()=>v3,getSnapshotText:()=>zz,getSnippetElement:()=>CEe,getSourceFileOfModule:()=>UJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>vAe,getSourceFileVersionAsHashFromText:()=>WVe,getSourceFilesToEmit:()=>SAe,getSourceMapRange:()=>zT,getSourceMapper:()=>SHt,getSourceTextOfNodeFromSourceFile:()=>SF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>XD,getStartPositionOfRange:()=>nz,getStartsOnNewLine:()=>V3,getStaticPropertiesAndClassStaticBlock:()=>AVe,getStrictOptionValue:()=>l_,getStringComparer:()=>gd,getSubPatternFromSpec:()=>UAe,getSuperCallFromStatement:()=>uVe,getSuperContainer:()=>x7,getSupportedCodeFixes:()=>Cit,getSupportedExtensions:()=>gz,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Az,getSwitchedType:()=>Ent,getSymbolId:()=>xg,getSymbolNameForPrivateIdentifier:()=>Gne,getSymbolTarget:()=>ynt,getSyntacticClassifications:()=>lHt,getSyntacticModifierFlags:()=>Fx,getSyntacticModifierFlagsNoCache:()=>_be,getSynthesizedDeepClone:()=>KA,getSynthesizedDeepCloneWithReplacements:()=>Iie,getSynthesizedDeepClones:()=>c0,getSynthesizedDeepClonesWithReplacements:()=>fde,getSyntheticLeadingComments:()=>W3,getSyntheticTrailingComments:()=>NU,getTargetLabel:()=>nWe,getTargetOfBindingOrAssignmentElement:()=>YW,getTemporaryModuleResolutionState:()=>Lde,getTextOfConstantValue:()=>Mge,getTextOfIdentifierOrLiteral:()=>g2,getTextOfJSDocComment:()=>wJ,getTextOfJsxAttributeName:()=>Vw,getTextOfJsxNamespacedName:()=>Ez,getTextOfNode:()=>Fp,getTextOfNodeFromSourceText:()=>WY,getTextOfPropertyName:()=>vW,getThisContainer:()=>i0,getThisParameter:()=>xW,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>JD,getTokenSourceMapRange:()=>Rz,getTouchingPropertyName:()=>Wb,getTouchingToken:()=>nse,getTrailingCommentRanges:()=>o2,getTrailingSemicolonDeferringWriter:()=>lbe,getTransformers:()=>L3t,getTsBuildInfoEmitOutputFilePath:()=>t5,getTsConfigObjectLiteralExpression:()=>k7,getTsConfigPropArrayElementValue:()=>rAe,getTypeAnnotationNode:()=>tLe,getTypeArgumentOrTypeParameterList:()=>DMt,getTypeKeywordOfTypeOnlyImport:()=>Ant,getTypeNode:()=>l9e,getTypeNodeIfAccessible:()=>fpe,getTypeParameterFromJsDoc:()=>WZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>nVe,getUILocale:()=>ff,getUniqueName:()=>JU,getUniqueSymbolId:()=>JMt,getUseDefineForClassFields:()=>$ne,getWatchErrorSummaryDiagnosticMessage:()=>$tt,getWatchFactory:()=>Btt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>Jre,handleNoEmitOptions:()=>Wtt,handleWatchOptionsConfigDirTemplateSubstitution:()=>Q9e,hasAbstractModifier:()=>FW,hasAccessorModifier:()=>Fw,hasAmbientModifier:()=>mbe,hasChangesInResolutions:()=>$re,hasContextSensitiveParameters:()=>ide,hasDecorators:()=>h1,hasDocComment:()=>RMt,hasDynamicName:()=>zD,hasEffectiveModifier:()=>Zb,hasEffectiveModifiers:()=>hbe,hasEffectiveReadonlyModifier:()=>R3,hasExtension:()=>v0,hasImplementationTSFileExtension:()=>FLe,hasIndexSignature:()=>bnt,hasInferredType:()=>Ade,hasInitializer:()=>QT,hasInvalidEscape:()=>abe,hasJSDocNodes:()=>jm,hasJSDocParameterTags:()=>SJ,hasJSFileExtension:()=>CN,hasJsonModuleEmitEnabled:()=>YAe,hasOnlyExpressionInitializer:()=>A1,hasOverrideModifier:()=>Mne,hasPossibleExternalModuleReference:()=>Jge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>w1e,hasQuestionToken:()=>KY,hasRecordedExternalHelpers:()=>TOt,hasResolutionModeOverride:()=>zLe,hasRestParameter:()=>Ure,hasScopeMarker:()=>xb,hasStaticModifier:()=>tm,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>iLe,hasTSFileExtension:()=>G3,hasTabstop:()=>KLe,hasTrailingDirectorySeparator:()=>Kp,hasType:()=>mf,hasTypeArguments:()=>Qqe,hasZeroOrOneAsteriskCharacter:()=>Pbe,hostGetCanonicalFileName:()=>qD,hostUsesCaseSensitiveFileNames:()=>T3,idText:()=>Vo,identifierIsThisKeyword:()=>pbe,identifierToKeywordKind:()=>cv,identity:()=>Zl,identitySourceMapConsumer:()=>ntt,ignoreSourceNewlines:()=>yEe,ignoredPaths:()=>Jp,importFromModuleSpecifier:()=>W7,importSyntaxAffectsModuleResolution:()=>Vbe,indexOfAnyCharCode:()=>tt,indexOfNode:()=>EW,indicesOf:()=>Ao,inferredTypesContainingFile:()=>qde,injectClassNamedEvaluationHelperBlockIfMissing:()=>IVe,injectClassThisAssignmentIfMissing:()=>u3t,insertImports:()=>gnt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>PL,insertStatementAfterStandardPrologue:()=>Vge,insertStatementsAfterCustomPrologue:()=>ene,insertStatementsAfterStandardPrologue:()=>Rw,intersperse:()=>fe,intrinsicTagNameToString:()=>oEe,introducesArgumentsExoticObject:()=>SZe,inverseJsxOptionMap:()=>OEe,isAbstractConstructorSymbol:()=>Dbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>bp,isAccessibilityModifier:()=>$rt,isAccessor:()=>BB,isAccessorModifier:()=>ht,isAliasableExpression:()=>IAe,isAmbientModule:()=>a_,isAmbientPropertyDeclaration:()=>zJ,isAnyDirectorySeparator:()=>r0,isAnyImportOrBareOrAccessedRequire:()=>Xge,isAnyImportOrReExport:()=>MY,isAnyImportOrRequireStatement:()=>w7,isAnyImportSyntax:()=>SW,isAnySupportedFileExtension:()=>I$e,isApplicableVersionedTypesKey:()=>zEe,isArgumentExpressionOfElementAccess:()=>Mrt,isArray:()=>Ki,isArrayBindingElement:()=>d3,isArrayBindingOrAssignmentElement:()=>ZJ,isArrayBindingOrAssignmentPattern:()=>Ore,isArrayBindingPattern:()=>h2,isArrayLiteralExpression:()=>YI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>o9,isArrayTypeNode:()=>VF,isArrowFunction:()=>uA,isAsExpression:()=>Xd,isAssertClause:()=>cOt,isAssertEntry:()=>_$r,isAssertionExpression:()=>vd,isAssertsKeyword:()=>X,isAssignmentDeclaration:()=>Z7,isAssignmentExpression:()=>zm,isAssignmentOperator:()=>$D,isAssignmentPattern:()=>NY,isAssignmentTarget:()=>TF,isAsteriskToken:()=>vie,isAsyncFunction:()=>Q7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>n0,isAwaitExpression:()=>C1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>gQ,isBinaryExpression:()=>po,isBinaryLogicalOperator:()=>Hne,isBinaryOperatorToken:()=>ZOt,isBindableObjectDefinePropertyCall:()=>b3,isBindableStaticAccessExpression:()=>RW,isBindableStaticElementAccessExpression:()=>AAe,isBindableStaticNameExpression:()=>E3,isBindingElement:()=>mg,isBindingElementOfBareOrAccessedRequire:()=>kZe,isBindingName:()=>ZL,isBindingOrAssignmentElement:()=>xJ,isBindingOrAssignmentPattern:()=>GJ,isBindingPattern:()=>Nu,isBlock:()=>eg,isBlockLike:()=>$z,isBlockOrCatchScoped:()=>KJ,isBlockScope:()=>qJ,isBlockScopedContainerTopLevel:()=>Qge,isBooleanLiteral:()=>TY,isBreakOrContinueStatement:()=>EY,isBreakStatement:()=>h$r,isBuildCommand:()=>X5t,isBuildInfoFile:()=>V3t,isBuilderProgram:()=>trt,isBundle:()=>AOt,isCallChain:()=>vB,isCallExpression:()=>Ll,isCallExpressionTarget:()=>Zrt,isCallLikeExpression:()=>EF,isCallLikeOrFunctionLikeExpression:()=>Mre,isCallOrNewExpression:()=>gv,isCallOrNewExpressionTarget:()=>Lrt,isCallSignatureDeclaration:()=>Tg,isCallToHelper:()=>nk,isCaseBlock:()=>Sde,isCaseClause:()=>Rie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>MJ,isCatchClause:()=>fQ,isCatchClauseVariableDeclaration:()=>ULe,isCatchClauseVariableDeclarationOrBindingElement:()=>ine,isCheckJsEnabledForFile:()=>Iz,isCircularBuildOrder:()=>Kz,isClassDeclaration:()=>mm,isClassElement:()=>MI,isClassExpression:()=>wd,isClassInstanceProperty:()=>Wre,isClassLike:()=>xa,isClassMemberModifier:()=>Vre,isClassNamedEvaluationHelperBlock:()=>Xz,isClassOrTypeElement:()=>RY,isClassStaticBlockDeclaration:()=>Al,isClassThisAssignmentBlock:()=>Qde,isColonToken:()=>vEe,isCommaExpression:()=>DEe,isCommaListExpression:()=>bde,isCommaSequence:()=>Rde,isCommaToken:()=>SEe,isComment:()=>dWe,isCommonJsExportPropertyAssignment:()=>eAe,isCommonJsExportedExpression:()=>Lye,isCompoundAssignment:()=>Mde,isComputedNonLiteralName:()=>HY,isComputedPropertyName:()=>Un,isConciseBody:()=>I7,isConditionalExpression:()=>Mw,isConditionalTypeNode:()=>I2,isConstAssertion:()=>aEe,isConstTypeReference:()=>c2,isConstructSignatureDeclaration:()=>im,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>ik,isContextualKeyword:()=>mAe,isContinueStatement:()=>I$r,isCustomPrologue:()=>une,isDebuggerStatement:()=>m$r,isDeclaration:()=>em,isDeclarationBindingElement:()=>mW,isDeclarationFileName:()=>PC,isDeclarationName:()=>UT,isDeclarationNameOfEnumOrNamespace:()=>Rbe,isDeclarationReadonly:()=>Cf,isDeclarationStatement:()=>wge,isDeclarationWithTypeParameterChildren:()=>lne,isDeclarationWithTypeParameters:()=>cne,isDecorator:()=>So,isDecoratorTarget:()=>mMt,isDefaultClause:()=>vde,isDefaultImport:()=>S3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>xZe,isDeleteExpression:()=>OF,isDeleteTarget:()=>jye,isDeprecatedDeclaration:()=>kWe,isDestructuringAssignment:()=>Zx,isDiskPathRoot:()=>gE,isDoStatement:()=>f$r,isDocumentRegistryEntry:()=>J1e,isDotDotDotToken:()=>_de,isDottedName:()=>Qne,isDynamicName:()=>CAe,isEffectiveExternalModule:()=>m3,isEffectiveStrictModeSourceFile:()=>ane,isElementAccessChain:()=>bF,isElementAccessExpression:()=>Qg,isEmittedFileOfProgram:()=>Q3t,isEmptyArrayLiteral:()=>ALe,isEmptyBindingElement:()=>Rr,isEmptyBindingPattern:()=>_t,isEmptyObjectLiteral:()=>Sbe,isEmptyStatement:()=>x$e,isEmptyStringLiteral:()=>Oye,isEntityName:()=>mC,isEntityNameExpression:()=>Hd,isEnumConst:()=>OA,isEnumDeclaration:()=>Q3,isEnumMember:()=>HF,isEqualityOperatorKind:()=>vWe,isEqualsGreaterThanToken:()=>h9e,isExclamationToken:()=>xz,isExcludedFile:()=>gPt,isExclusivelyTypeOnlyImportOrExport:()=>xtt,isExpandoPropertyDeclaration:()=>aQ,isExportAssignment:()=>yf,isExportDeclaration:()=>Vh,isExportModifier:()=>y,isExportName:()=>w9e,isExportNamespaceAsDefaultDeclaration:()=>VY,isExportOrDefaultModifier:()=>FEe,isExportSpecifier:()=>D0,isExportsIdentifier:()=>y3,isExportsOrModuleExportsOrAlias:()=>CQ,isExpression:()=>un,isExpressionNode:()=>JT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>yMt,isExpressionOfOptionalChainRoot:()=>bY,isExpressionStatement:()=>OC,isExpressionWithTypeArguments:()=>g_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>NAe,isExternalModule:()=>Lm,isExternalModuleAugmentation:()=>BF,isExternalModuleImportEqualsDeclaration:()=>HL,isExternalModuleIndicator:()=>YT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>MF,isExternalModuleSymbol:()=>QD,isExternalOrCommonJsModule:()=>Sl,isFileLevelReservedGeneratedIdentifier:()=>BY,isFileLevelUniqueName:()=>S7,isFileProbablyExternalModule:()=>VEe,isFirstDeclarationOfSymbolParameter:()=>hnt,isFixablePromiseHandler:()=>Unt,isForInOrOfStatement:()=>VL,isForInStatement:()=>m9e,isForInitializer:()=>_E,isForOfStatement:()=>BEe,isForStatement:()=>Y3,isFullSourceFile:()=>AN,isFunctionBlock:()=>BW,isFunctionBody:()=>h7,isFunctionDeclaration:()=>ah,isFunctionExpression:()=>jA,isFunctionExpressionOrArrowFunction:()=>FF,isFunctionLike:()=>Eu,isFunctionLikeDeclaration:()=>Gd,isFunctionLikeKind:()=>hW,isFunctionLikeOrClassStaticBlockDeclaration:()=>A3,isFunctionOrConstructorTypeNode:()=>Ege,isFunctionOrModuleBlock:()=>kJ,isFunctionSymbol:()=>FZe,isFunctionTypeNode:()=>F_,isGeneratedIdentifier:()=>Gp,isGeneratedPrivateIdentifier:()=>FL,isGetAccessor:()=>wB,isGetAccessorDeclaration:()=>wg,isGetOrSetAccessorDeclaration:()=>TJ,isGlobalScopeAugmentation:()=>NB,isGlobalSourceFile:()=>fc,isGrammarError:()=>Lge,isHeritageClause:()=>_1,isHoistedFunction:()=>jge,isHoistedVariableStatement:()=>zge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>ebe,isIdentifierName:()=>HZe,isIdentifierOrThisTypeNode:()=>kOt,isIdentifierPart:()=>c1,isIdentifierStart:()=>Sd,isIdentifierText:()=>qh,isIdentifierTypePredicate:()=>vZe,isIdentifierTypeReference:()=>HLe,isIfStatement:()=>H3,isIgnoredFileFromWildCardWatching:()=>A1e,isImplicitGlob:()=>Ybe,isImportAttribute:()=>lOt,isImportAttributeName:()=>p7,isImportAttributes:()=>kU,isImportCall:()=>jp,isImportClause:()=>Hw,isImportDeclaration:()=>Yf,isImportEqualsDeclaration:()=>Zm,isImportKeyword:()=>an,isImportMeta:()=>pv,isImportOrExportSpecifier:()=>iS,isImportOrExportSpecifierName:()=>XMt,isImportSpecifier:()=>Ay,isImportTypeAssertionContainer:()=>C$r,isImportTypeNode:()=>qm,isImportable:()=>Znt,isInComment:()=>s9,isInCompoundLikeAssignment:()=>fAe,isInExpressionContext:()=>Ine,isInJSDoc:()=>QY,isInJSFile:()=>wo,isInJSXText:()=>TMt,isInJsonFile:()=>lAe,isInNonReferenceComment:()=>GMt,isInReferenceComment:()=>xMt,isInRightSideOfInternalImportEqualsDeclaration:()=>tWe,isInString:()=>jz,isInTemplateString:()=>Krt,isInTopLevelContext:()=>sAe,isInTypeQuery:()=>qY,isIncrementalBuildInfo:()=>m1e,isIncrementalBundleEmitBuildInfo:()=>A5t,isIncrementalCompilation:()=>WW,isIndexSignatureDeclaration:()=>R0,isIndexedAccessTypeNode:()=>_v,isInferTypeNode:()=>tR,isInfinityOrNaNString:()=>_z,isInitializedProperty:()=>r1e,isInitializedVariable:()=>Jne,isInsideJsxElement:()=>gWe,isInsideJsxElementOrAttribute:()=>wMt,isInsideNodeModules:()=>M1e,isInsideTemplateLiteral:()=>k1e,isInstanceOfExpression:()=>DAe,isInstantiatedModule:()=>jet,isInterfaceDeclaration:()=>d_,isInternalDeclaration:()=>Kre,isInternalModuleImportEqualsDeclaration:()=>_3,isInternalName:()=>K$e,isIntersectionTypeNode:()=>_f,isIntrinsicJsxName:()=>dU,isIterationStatement:()=>HT,isJSDoc:()=>oR,isJSDocAllType:()=>fOt,isJSDocAugmentsTag:()=>Zz,isJSDocAuthorTag:()=>S$r,isJSDocCallbackTag:()=>L$e,isJSDocClassTag:()=>hOt,isJSDocCommentContainingNode:()=>m7,isJSDocConstructSignature:()=>jY,isJSDocDeprecatedTag:()=>M$e,isJSDocEnumTag:()=>TEe,isJSDocFunctionType:()=>Die,isJSDocImplementsTag:()=>S9e,isJSDocImportTag:()=>RN,isJSDocIndexSignature:()=>gAe,isJSDocLikeText:()=>iet,isJSDocLink:()=>dOt,isJSDocLinkCode:()=>pOt,isJSDocLinkLike:()=>xx,isJSDocLinkPlain:()=>b$r,isJSDocMemberName:()=>U3,isJSDocNameReference:()=>Bde,isJSDocNamepathType:()=>E$r,isJSDocNamespaceBody:()=>Tye,isJSDocNode:()=>I3,isJSDocNonNullableType:()=>_9e,isJSDocNullableType:()=>Nie,isJSDocOptionalParameter:()=>ode,isJSDocOptionalType:()=>Z$e,isJSDocOverloadTag:()=>kie,isJSDocOverrideTag:()=>b9e,isJSDocParameterTag:()=>AS,isJSDocPrivateTag:()=>W$e,isJSDocPropertyLikeTag:()=>SY,isJSDocPropertyTag:()=>mOt,isJSDocProtectedTag:()=>O$e,isJSDocPublicTag:()=>V$e,isJSDocReadonlyTag:()=>P$e,isJSDocReturnTag:()=>E9e,isJSDocSatisfiesExpression:()=>iEe,isJSDocSatisfiesTag:()=>v9e,isJSDocSeeTag:()=>v$r,isJSDocSignature:()=>i9,isJSDocTag:()=>h3,isJSDocTemplateTag:()=>PB,isJSDocThisTag:()=>H$e,isJSDocThrowsTag:()=>w$r,isJSDocTypeAlias:()=>cS,isJSDocTypeAssertion:()=>IQ,isJSDocTypeExpression:()=>J3,isJSDocTypeLiteral:()=>GU,isJSDocTypeTag:()=>wde,isJSDocTypedefTag:()=>FU,isJSDocUnknownTag:()=>B$r,isJSDocUnknownType:()=>IOt,isJSDocVariadicType:()=>y9e,isJSXTagName:()=>nU,isJsonEqual:()=>nde,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>TN,isJsxAttributeLike:()=>OJ,isJsxAttributeName:()=>jLe,isJsxAttributes:()=>pQ,isJsxCallLike:()=>f3,isJsxChild:()=>WJ,isJsxClosingElement:()=>dQ,isJsxClosingFragment:()=>gOt,isJsxElement:()=>wN,isJsxExpression:()=>Tie,isJsxFragment:()=>X3,isJsxNamespacedName:()=>sR,isJsxOpeningElement:()=>iR,isJsxOpeningFragment:()=>Yw,isJsxOpeningLikeElement:()=>nI,isJsxOpeningLikeElementTagName:()=>CMt,isJsxSelfClosingElement:()=>xU,isJsxSpreadAttribute:()=>Fz,isJsxTagNameExpression:()=>WL,isJsxText:()=>t9,isJumpStatementTarget:()=>T1e,isKeyword:()=>w0,isKeywordOrPunctuation:()=>hAe,isKnownSymbol:()=>X7,isLabelName:()=>Ort,isLabelOfLabeledStatement:()=>Wrt,isLabeledStatement:()=>HW,isLateVisibilityPaintedStatement:()=>T7,isLeftHandSideExpression:()=>x_,isLet:()=>oS,isLineBreak:()=>ml,isLiteralComputedPropertyDeclarationName:()=>Rne,isLiteralExpression:()=>xL,isLiteralExpressionOfObject:()=>Zre,isLiteralImportTypeNode:()=>Gy,isLiteralKind:()=>vY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>iWe,isLiteralTypeLiteral:()=>Sge,isLiteralTypeNode:()=>BE,isLocalName:()=>YF,isLogicalOperator:()=>lLe,isLogicalOrCoalescingAssignmentExpression:()=>TAe,isLogicalOrCoalescingAssignmentOperator:()=>q7,isLogicalOrCoalescingBinaryExpression:()=>Yne,isLogicalOrCoalescingBinaryOperator:()=>RAe,isMappedTypeNode:()=>WB,isMemberName:()=>vw,isMetaProperty:()=>Du,isMethodDeclaration:()=>gu,isMethodOrAccessor:()=>LL,isMethodSignature:()=>Il,isMinusToken:()=>yde,isMissingDeclaration:()=>y$r,isMissingPackageJsonInfo:()=>bPt,isModifier:()=>hg,isModifierKind:()=>HD,isModifierLike:()=>fp,isModuleAugmentationExternal:()=>one,isModuleBlock:()=>vN,isModuleBody:()=>vge,isModuleDeclaration:()=>Lh,isModuleExportName:()=>C9e,isModuleExportsAccessExpression:()=>dN,isModuleIdentifier:()=>TW,isModuleName:()=>FOt,isModuleOrEnumDeclaration:()=>p3,isModuleReference:()=>kY,isModuleSpecifierLike:()=>CWe,isModuleWithStringLiteralName:()=>OY,isNameOfFunctionDeclaration:()=>Yrt,isNameOfModuleDeclaration:()=>Hrt,isNamedDeclaration:()=>sh,isNamedEvaluation:()=>Gb,isNamedEvaluationSource:()=>tbe,isNamedExportBindings:()=>Fre,isNamedExports:()=>bv,isNamedImportBindings:()=>kx,isNamedImports:()=>BN,isNamedImportsOrExports:()=>Une,isNamedTupleMember:()=>eR,isNamespaceBody:()=>Yre,isNamespaceExport:()=>ok,isNamespaceExportDeclaration:()=>wEe,isNamespaceImport:()=>Px,isNamespaceReexportDeclaration:()=>DZe,isNewExpression:()=>m2,isNewExpressionTarget:()=>ipe,isNewScopeNode:()=>pie,isNoSubstitutionTemplateLiteral:()=>MW,isNodeArray:()=>oN,isNodeArrayMultiLine:()=>GAe,isNodeDescendantOf:()=>DW,isNodeKind:()=>g7,isNodeLikeSystem:()=>Xm,isNodeModulesDirectory:()=>Od,isNodeWithPossibleHoistedDeclaration:()=>MZe,isNonContextualKeyword:()=>$ye,isNonGlobalAmbientModule:()=>sne,isNonNullAccess:()=>ade,isNonNullChain:()=>NJ,isNonNullExpression:()=>yv,isNonStaticMethodOrAccessorWithPrivateName:()=>n3t,isNotEmittedStatement:()=>uOt,isNullishCoalesce:()=>RJ,isNumber:()=>ws,isNumericLiteral:()=>yC,isNumericLiteralName:()=>yN,isObjectBindingElementWithoutPropertyName:()=>Z1e,isObjectBindingOrAssignmentElement:()=>CW,isObjectBindingOrAssignmentPattern:()=>FJ,isObjectBindingPattern:()=>$m,isObjectLiteralElement:()=>xY,isObjectLiteralElementLike:()=>Bw,isObjectLiteralExpression:()=>ag,isObjectLiteralMethod:()=>u2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>tAe,isObjectTypeDeclaration:()=>tQ,isOmittedExpression:()=>Ep,isOptionalChain:()=>ZC,isOptionalChainRoot:()=>fW,isOptionalDeclaration:()=>GB,isOptionalJSDocPropertyLikeTag:()=>uie,isOptionalTypeNode:()=>r9,isOuterExpression:()=>T9e,isOutermostOptionalChain:()=>g3,isOverrideModifier:()=>St,isPackageJsonInfo:()=>$9e,isPackedArrayLiteral:()=>rEe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>We,isParameterPropertyModifier:()=>wY,isParenthesizedExpression:()=>dI,isParenthesizedTypeNode:()=>Cv,isParseTreeNode:()=>NL,isPartOfParameterDeclaration:()=>KL,isPartOfTypeNode:()=>kw,isPartOfTypeOnlyImportOrExportDeclaration:()=>bge,isPartOfTypeQuery:()=>cAe,isPartiallyEmittedExpression:()=>gy,isPatternMatch:()=>qd,isPinnedComment:()=>v7,isPlainJsFile:()=>FY,isPlusToken:()=>kz,isPossiblyTypeArgumentPosition:()=>D1e,isPostfixUnaryExpression:()=>sk,isPrefixUnaryExpression:()=>N0,isPrimitiveLiteralValue:()=>Sz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>hC,isPrivateIdentifierPropertyAccessExpression:()=>IW,isPrivateIdentifierSymbol:()=>XZe,isProgramUptoDate:()=>Ltt,isPrologueDirective:()=>aS,isPropertyAccessChain:()=>Nx,isPropertyAccessEntityNameExpression:()=>kF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>LJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Pre,isPropertyAssignment:()=>Cm,isPropertyDeclaration:()=>pi,isPropertyName:()=>PI,isPropertyNameLiteral:()=>xw,isPropertySignature:()=>ss,isPrototypeAccess:()=>xF,isPrototypePropertyAssignment:()=>Ene,isPunctuation:()=>qye,isPushOrUnshiftIdentifier:()=>rbe,isQualifiedName:()=>zi,isQuestionDotToken:()=>Bie,isQuestionOrExclamationToken:()=>DOt,isQuestionOrPlusOrMinusToken:()=>GOt,isQuestionToken:()=>$T,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>xOt,isRecognizedTripleSlashComment:()=>tne,isReferenceFileLocation:()=>Kie,isReferencedFile:()=>r5,isRegularExpressionLiteral:()=>EEe,isRequireCall:()=>ly,isRequireVariableStatement:()=>hne,isRestParameter:()=>TB,isRestTypeNode:()=>n9,isReturnStatement:()=>C2,isReturnStatementWithFixablePromiseHandler:()=>OWe,isRightSideOfAccessExpression:()=>Ebe,isRightSideOfInstanceofExpression:()=>gLe,isRightSideOfPropertyAccess:()=>ese,isRightSideOfQualifiedName:()=>_Mt,isRightSideOfQualifiedNameOrPropertyAccess:()=>$7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>uLe,isRootedDiskPath:()=>Up,isSameEntityName:()=>iU,isSatisfiesExpression:()=>Xg,isSemicolonClassElement:()=>oOt,isSetAccessor:()=>Av,isSetAccessorDeclaration:()=>kg,isShiftOperatorOrHigher:()=>tet,isShorthandAmbientModuleSymbol:()=>PY,isShorthandPropertyAssignment:()=>l0,isSideEffectImport:()=>cEe,isSignedNumericLiteral:()=>xne,isSimpleCopiableExpression:()=>_Q,isSimpleInlineableExpression:()=>DN,isSimpleParameterList:()=>n1e,isSingleOrDoubleQuote:()=>mne,isSolutionConfig:()=>Bet,isSourceElement:()=>qLe,isSourceFile:()=>al,isSourceFileFromLibrary:()=>gse,isSourceFileJS:()=>s0,isSourceFileNotJson:()=>uAe,isSourceMapping:()=>e3t,isSpecialPropertyDeclaration:()=>Qye,isSpreadAssignment:()=>Mx,isSpreadElement:()=>cf,isStatement:()=>Lc,isStatementButNotDeclaration:()=>VJ,isStatementOrBlock:()=>Xre,isStatementWithLocals:()=>Fge,isStatic:()=>lg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>zY,isStringAndEmptyAnonymousObjectIntersection:()=>kMt,isStringDoubleQuoted:()=>Cne,isStringLiteral:()=>Lg,isStringLiteralLike:()=>CA,isStringLiteralOrJsxExpression:()=>PJ,isStringLiteralOrTemplate:()=>jMt,isStringOrNumericLiteralLike:()=>I1,isStringOrRegularExpressionOrTemplateLiteral:()=>qrt,isStringTextContainingNode:()=>Lre,isSuperCall:()=>xy,isSuperKeyword:()=>rr,isSuperProperty:()=>Fy,isSupportedSourceFileName:()=>Ube,isSwitchStatement:()=>Ede,isSyntaxList:()=>xie,isSyntheticExpression:()=>M3,isSyntheticReference:()=>Gz,isTagName:()=>Prt,isTaggedTemplateExpression:()=>QI,isTaggedTemplateTag:()=>hMt,isTemplateExpression:()=>PF,isTemplateHead:()=>AQ,isTemplateLiteral:()=>_W,isTemplateLiteralKind:()=>MD,isTemplateLiteralToken:()=>yge,isTemplateLiteralTypeNode:()=>rR,isTemplateLiteralTypeSpan:()=>EN,isTemplateMiddle:()=>Sie,isTemplateMiddleOrTemplateTail:()=>d7,isTemplateSpan:()=>wie,isTemplateTail:()=>Cde,isTextWhiteSpaceLike:()=>VMt,isThis:()=>tse,isThisContainerOrFunctionBlock:()=>TZe,isThisIdentifier:()=>DF,isThisInTypeQuery:()=>jL,isThisInitializedDeclaration:()=>oAe,isThisInitializedObjectBindingExpression:()=>NZe,isThisProperty:()=>dne,isThisTypeNode:()=>Ox,isThisTypeParameter:()=>yz,isThisTypePredicate:()=>BZe,isThrowStatement:()=>F$e,isToken:()=>kL,isTokenKind:()=>A7,isTraceEnabled:()=>XW,isTransientSymbol:()=>ww,isTrivia:()=>uU,isTryStatement:()=>DU,isTupleTypeNode:()=>Pw,isTypeAlias:()=>vne,isTypeAliasDeclaration:()=>OB,isTypeAssertionExpression:()=>WF,isTypeDeclaration:()=>oQ,isTypeElement:()=>Dx,isTypeKeyword:()=>cpe,isTypeKeywordTokenOrIdentifier:()=>IWe,isTypeLiteralNode:()=>bh,isTypeNode:()=>uc,isTypeNodeKind:()=>WAe,isTypeOfExpression:()=>SN,isTypeOnlyExportDeclaration:()=>DJ,isTypeOnlyImportDeclaration:()=>aN,isTypeOnlyImportOrExportDeclaration:()=>cN,isTypeOperatorNode:()=>VB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>vE,isTypeQueryNode:()=>Ow,isTypeReferenceNode:()=>oh,isTypeReferenceType:()=>C7,isTypeUsableAsPropertyName:()=>p2,isUMDExportSymbol:()=>VAe,isUnaryExpression:()=>Hre,isUnaryExpressionWithWrite:()=>lN,isUnicodeIdentifierStart:()=>It,isUnionTypeNode:()=>gS,isUrl:()=>s_,isValidBigIntString:()=>aie,isValidESSymbolDeclaration:()=>EZe,isValidTypeOnlyAliasUseSite:()=>$L,isValueSignatureDeclaration:()=>B3,isVarAwaitUsing:()=>Bd,isVarConst:()=>sI,isVarConstLike:()=>XT,isVarUsing:()=>iI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>D7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>wW,isVariableDeclarationInitializedToRequire:()=>F7,isVariableDeclarationList:()=>A_,isVariableLike:()=>N7,isVariableStatement:()=>Eh,isVoidExpression:()=>nR,isWatchSet:()=>Nbe,isWhileStatement:()=>G$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>hu,isWithStatement:()=>aOt,isWriteAccess:()=>x3,isWriteOnlyAccess:()=>ZAe,isYieldExpression:()=>Qd,jsxModeNeedsExplicitImport:()=>xnt,keywordPart:()=>S1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>uet,libs:()=>F9e,lineBreakPart:()=>ase,loadModuleFromGlobalCache:()=>ZPt,loadWithModeAwareCache:()=>p1e,makeIdentifierFromModuleName:()=>Nw,makeImport:()=>$W,makeStringLiteral:()=>lpe,mangleScopedPackageName:()=>Yie,map:()=>lt,mapAllOrFail:()=>$t,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Ot,mapOneOrMany:()=>Rnt,mapToDisplayParts:()=>eO,matchFiles:()=>Xbe,matchPatternOrExact:()=>jbe,matchedText:()=>Cw,matchesExclude:()=>U9e,matchesExcludeWorker:()=>K9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>yLe,memoize:()=>LA,memoizeOne:()=>VA,min:()=>oa,minAndMax:()=>OLe,missingFileModifiedTime:()=>xh,modifierToFlag:()=>eQ,modifiersToFlags:()=>Zw,moduleExportNameIsDefault:()=>dv,moduleExportNameTextEscaped:()=>vF,moduleExportNameTextUnescaped:()=>UD,moduleOptionDeclaration:()=>JOt,moduleResolutionIsEqualTo:()=>xge,moduleResolutionNameAndModeGetter:()=>SVe,moduleResolutionOptionDeclarations:()=>Aet,moduleResolutionSupportsPackageJsonExportsAndImports:()=>bU,moduleResolutionUsesNodeModules:()=>hWe,moduleSpecifierToValidIdentifier:()=>Y1e,moduleSpecifiers:()=>XF,moduleSupportsImportAttributes:()=>wLe,moduleSymbolToValidIdentifier:()=>H1e,moveEmitHelpers:()=>a9e,moveRangeEnd:()=>xAe,moveRangePastDecorators:()=>tk,moveRangePastModifiers:()=>Iv,moveRangePos:()=>ek,moveSyntheticComments:()=>i9e,mutateMap:()=>sz,mutateMapSkippingNewValues:()=>IN,needsParentheses:()=>EWe,needsScopeMarker:()=>f7,newCaseClauseTracker:()=>FWe,newPrivateEnvironment:()=>s3t,noEmitNotification:()=>a1e,noEmitSubstitution:()=>Jde,noTransformers:()=>Z3t,noTruncationMaximumTruncationLength:()=>zre,nodeCanBeDecorated:()=>eU,nodeCoreModules:()=>BU,nodeHasName:()=>c3,nodeIsDecorated:()=>tU,nodeIsMissing:()=>af,nodeIsPresent:()=>d1,nodeIsSynthesized:()=>ap,nodeModuleNameResolver:()=>wPt,nodeModulesPathPart:()=>Hx,nodeNextJsonConfigResolver:()=>TPt,nodeOrChildIsDecorated:()=>fne,nodeOverlapsWithStartEnd:()=>sWe,nodePosToString:()=>Zge,nodeSeenTracker:()=>ise,nodeStartsNewLexicalEnvironment:()=>nbe,noop:()=>Dc,noopFileWatcher:()=>qie,normalizePath:()=>su,normalizeSlashes:()=>xp,normalizeSpans:()=>vI,not:()=>dC,notImplemented:()=>rl,notImplementedResolver:()=>P3t,nullNodeConverters:()=>dEe,nullParenthesizerRules:()=>AEe,nullTransformationContext:()=>l1e,objectAllocator:()=>VC,operatorPart:()=>gpe,optionDeclarations:()=>Qw,optionMapToObject:()=>M9e,optionsAffectingProgramStructure:()=>zOt,optionsForBuild:()=>pet,optionsForWatch:()=>Pz,optionsHaveChanges:()=>B0,or:()=>Qp,orderedRemoveItem:()=>Xl,orderedRemoveItemAt:()=>WA,packageIdToPackageName:()=>XJ,packageIdToString:()=>gN,parameterIsThisKeyword:()=>NF,parameterNamePart:()=>OMt,parseBaseNodeFactory:()=>POt,parseBigInt:()=>MLe,parseBuildCommand:()=>sPt,parseCommandLine:()=>nPt,parseCommandLineWorker:()=>fet,parseConfigFileTextToJson:()=>het,parseConfigFileWithSystem:()=>B5t,parseConfigHostFromCompilerHostLike:()=>NVe,parseCustomTypeOption:()=>W9e,parseIsolatedEntityName:()=>Oz,parseIsolatedJSDocComment:()=>HOt,parseJSDocTypeExpressionForTests:()=>z$r,parseJsonConfigFileContent:()=>wen,parseJsonSourceFileConfigFileContent:()=>QEe,parseJsonText:()=>WEe,parseListTypeOption:()=>tPt,parseNodeFactory:()=>j3,parseNodeModuleFromPath:()=>KEe,parsePackageName:()=>jEe,parsePseudoBigInt:()=>hz,parseValidBigInt:()=>eEe,pasteEdits:()=>kst,patchWriteFileEnsuringDirectory:()=>n2,pathContainsNodeModules:()=>UW,pathIsAbsolute:()=>AE,pathIsBareSpecifier:()=>jh,pathIsRelative:()=>mp,patternText:()=>$1,performIncrementalCompilation:()=>w5t,performance:()=>Cb,positionBelongsToNode:()=>Qrt,positionIsASICandidate:()=>BWe,positionIsSynthesized:()=>kB,positionsAreOnSameLine:()=>SE,preProcessFile:()=>Vin,probablyUsesSemicolons:()=>P1e,processCommentPragmas:()=>aet,processPragmasIntoFields:()=>cet,processTaggedTemplateExpression:()=>gtt,programContainsEsModules:()=>ZMt,programContainsModules:()=>FMt,projectReferenceIsEqualTo:()=>qre,propertyNamePart:()=>PMt,pseudoBigIntToString:()=>OW,punctuationPart:()=>G0,pushIfUnique:()=>Qi,quote:()=>ppe,quotePreferenceFromString:()=>cnt,rangeContainsPosition:()=>rse,rangeContainsPositionExclusive:()=>R1e,rangeContainsRange:()=>uy,rangeContainsRangeExclusive:()=>bMt,rangeContainsStartEnd:()=>N1e,rangeEndIsOnSameLineAsRangeStart:()=>Xne,rangeEndPositionsAreOnSameLine:()=>pLe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>D3,rangeOfNode:()=>qbe,rangeOfTypeParameters:()=>$be,rangeOverlapsWithStartEnd:()=>spe,rangeStartIsOnSameLineAsRangeEnd:()=>fLe,rangeStartPositionsAreOnSameLine:()=>rz,readBuilderProgram:()=>PVe,readConfigFile:()=>HEe,readJson:()=>N3,readJsonConfigFile:()=>oPt,readJsonOrUndefined:()=>wbe,reduceEachLeadingCommentRange:()=>RL,reduceEachTrailingCommentRange:()=>hf,reduceLeft:()=>Kl,reduceLeftIterator:()=>ne,reducePathComponents:()=>i2,refactor:()=>tq,regExpEscape:()=>g$e,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Or,removeAllComments:()=>Tz,removeEmitHelper:()=>B$e,removeExtension:()=>oie,removeFileExtension:()=>a0,removeIgnoredPath:()=>GVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Gm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>sy,repeatString:()=>G1e,replaceElement:()=>Ql,replaceFirstStar:()=>Z3,resolutionExtensionIsTSOrJson:()=>pz,resolveConfigFileProjectName:()=>frt,resolveJSModule:()=>SPt,resolveLibrary:()=>tVe,resolveModuleName:()=>WU,resolveModuleNameFromCache:()=>stn,resolvePackageNameToPackageJson:()=>Net,resolvePath:()=>fE,resolveProjectReferencePath:()=>Jz,resolveTripleslashReference:()=>Ttt,resolveTypeReferenceDirective:()=>_Pt,resolvingEmptyArray:()=>jre,returnFalse:()=>As,returnNoopFileWatcher:()=>tpe,returnTrue:()=>Nf,returnUndefined:()=>Am,returnsPromise:()=>Jnt,rewriteModuleSpecifier:()=>Yz,sameFlatMap:()=>Fr,sameMap:()=>Er,sameMapping:()=>Ktn,scanTokenAtPosition:()=>qs,scanner:()=>p_,semanticDiagnosticsOptionDeclarations:()=>UOt,serializeCompilerOptions:()=>bet,server:()=>Upn,servicesVersion:()=>won,setCommentRange:()=>yh,setConfigFileInOptions:()=>Eet,setConstantValue:()=>o9e,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>OVe,setIdentifierAutoGenerate:()=>_ie,setIdentifierGeneratedImportReference:()=>u9e,setIdentifierTypeArguments:()=>Vx,setInternalEmitFlags:()=>Cie,setLocalizedDiagnosticMessages:()=>yU,setNodeChildren:()=>COt,setNodeFlags:()=>QLe,setObjectAllocator:()=>_Le,setOriginalNode:()=>ua,setParent:()=>UA,setParentRecursive:()=>e9,setPrivateIdentifier:()=>OU,setSnippetElement:()=>_Ee,setSourceMapRange:()=>Yg,setStackTraceLimit:()=>VT,setStartsOnNewLine:()=>Yd,setSyntheticLeadingComments:()=>LB,setSyntheticTrailingComments:()=>O3,setSys:()=>SI,setSysLog:()=>FC,setTextRange:()=>gn,setTextRangeEnd:()=>vU,setTextRangePos:()=>mz,setTextRangePosEnd:()=>xB,setTextRangePosWidth:()=>tEe,setTokenSourceMapRange:()=>hEe,setTypeNode:()=>c9e,setUILocale:()=>Zs,setValueDeclaration:()=>V7,shouldAllowImportingTsExtension:()=>Qie,shouldPreserveConstEnums:()=>Lb,shouldRewriteModuleSpecifier:()=>Sne,shouldUseUriStyleNodeCoreModules:()=>xWe,showModuleSpecifier:()=>mLe,signatureHasRestParameter:()=>x0,signatureToDisplayParts:()=>Cnt,single:()=>Xa,singleElementArray:()=>K_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ws,skipAlias:()=>LC,skipConstraint:()=>snt,skipOuterExpressions:()=>XI,skipParentheses:()=>JA,skipPartiallyEmittedExpressions:()=>l2,skipTrivia:()=>Yu,skipTypeChecking:()=>F3,skipTypeCheckingIgnoringNoCheck:()=>PLe,skipTypeParentheses:()=>P7,skipWhile:()=>up,sliceAfter:()=>zbe,some:()=>zt,sortAndDeduplicate:()=>ol,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>det,sourceFileMayBeEmitted:()=>kW,sourceMapCommentRegExp:()=>$et,sourceMapCommentRegExpDontCareLineStart:()=>zPt,spacePart:()=>TI,spanMap:()=>yn,startEndContainsRange:()=>FAe,startEndOverlapsWithStartEnd:()=>oWe,startOnNewLine:()=>k0,startTracing:()=>hd,startsWith:()=>Ac,startsWithDirectory:()=>nv,startsWithUnderscore:()=>knt,startsWithUseStrict:()=>BOt,stringContainsAt:()=>nHt,stringToToken:()=>Ta,stripQuotes:()=>A2,supportedDeclarationExtensions:()=>ede,supportedJSExtensionsFlat:()=>EU,supportedLocaleDirectories:()=>av,supportedTSExtensionsFlat:()=>Jbe,supportedTSImplementationExtensions:()=>iie,suppressLeadingAndTrailingTrivia:()=>Oy,suppressLeadingTrivia:()=>gEe,suppressTrailingTrivia:()=>t9e,symbolEscapedNameNoDefault:()=>mWe,symbolName:()=>of,symbolNameNoDefault:()=>unt,symbolToDisplayParts:()=>Ape,sys:()=>Ed,sysLog:()=>_h,tagNamesAreEquivalent:()=>q3,takeWhile:()=>n_,targetOptionDeclaration:()=>get,targetToLibMap:()=>Is,testFormatSettings:()=>oin,textChangeRangeIsUnchanged:()=>ay,textChangeRangeNewSpan:()=>nN,textChanges:()=>xo,textOrKeywordPart:()=>mnt,textPart:()=>fS,textRangeContainsPositionInclusive:()=>nl,textRangeContainsTextSpan:()=>Mg,textRangeIntersectsWithTextSpan:()=>a3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>rd,textSpanContainsTextSpan:()=>kd,textSpanEnd:()=>Rs,textSpanIntersection:()=>hA,textSpanIntersectsWith:()=>rS,textSpanIntersectsWithPosition:()=>rN,textSpanIntersectsWithTextSpan:()=>Nb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>l1,textSpanOverlapsWith:()=>Gh,textSpansEqual:()=>ose,textToKeywordObj:()=>iv,timestamp:()=>Zg,toArray:()=>cc,toBuilderFileEmit:()=>f5t,toBuilderStateFileInfoForMultiEmit:()=>p5t,toEditorSettings:()=>q1e,toFileNameLowerCase:()=>Qm,toPath:()=>Pu,toProgramEmitPending:()=>I5t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>md,tokenIsIdentifierOrKeywordOrGreaterThan:()=>_B,tokenToString:()=>Vi,trace:()=>tu,tracing:()=>ki,tracingEnabled:()=>jl,transferSourceFileChildren:()=>_Ot,transform:()=>Lon,transformClassFields:()=>f3t,transformDeclarations:()=>ftt,transformECMAScriptModule:()=>ptt,transformES2015:()=>R3t,transformES2016:()=>T3t,transformES2017:()=>C3t,transformES2018:()=>_3t,transformES2019:()=>y3t,transformES2020:()=>b3t,transformES2021:()=>E3t,transformESDecorators:()=>m3t,transformESNext:()=>S3t,transformGenerators:()=>N3t,transformImpliedNodeFormatDependentModule:()=>k3t,transformJsx:()=>w3t,transformLegacyDecorators:()=>h3t,transformModule:()=>dtt,transformNamedEvaluation:()=>y1,transformNodes:()=>c1e,transformSystemModule:()=>D3t,transformTypeScript:()=>p3t,transpile:()=>Jin,transpileDeclaration:()=>Qin,transpileModule:()=>BHt,transpileOptionValueCompilerOptions:()=>qOt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>RWe,tryCast:()=>Gs,tryDirectoryExists:()=>TWe,tryExtractTSExtension:()=>tz,tryFileExists:()=>lse,tryGetClassExtendingExpressionWithTypeArguments:()=>ybe,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>bbe,tryGetDirectories:()=>wWe,tryGetExtensionFromPath:()=>jT,tryGetImportFromModuleSpecifier:()=>O7,tryGetJSDocSatisfiesTypeNode:()=>cde,tryGetModuleNameFromFile:()=>xEe,tryGetModuleSpecifierFromDeclaration:()=>JY,tryGetNativePerformanceHooks:()=>US,tryGetPropertyAccessOrIdentifierToString:()=>ZW,tryGetPropertyNameOfBindingOrAssignmentElement:()=>N9e,tryGetSourceMappingURL:()=>qPt,tryGetTextOfPropertyName:()=>YY,tryParseJson:()=>IU,tryParsePattern:()=>sQ,tryParsePatterns:()=>dz,tryParseRawSourceMap:()=>$Pt,tryReadDirectory:()=>vnt,tryReadFile:()=>kde,tryRemoveDirectoryPrefix:()=>JAe,tryRemoveExtension:()=>WLe,tryRemovePrefix:()=>JS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>LU,typeAcquisitionDeclarations:()=>L9e,typeAliasNamePart:()=>MMt,typeDirectiveIsEqualTo:()=>Gge,typeKeywords:()=>int,typeParameterNamePart:()=>HMt,typeToDisplayParts:()=>V1e,unchangedPollThresholds:()=>e0,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>qEe,unorderedRemoveItem:()=>rf,unprefixedNodeCoreModules:()=>Aie,unreachableCodeIsError:()=>vLe,unsetNodeChildren:()=>Q$e,unusedLabelIsError:()=>BLe,unwrapInnermostStatementOfLabel:()=>Vye,unwrapParenthesizedExpression:()=>gde,updateErrorForNoInputFiles:()=>J9e,updateLanguageServiceSourceFile:()=>_it,updateMissingFilePathsWatch:()=>vtt,updateResolutionField:()=>Oie,updateSharedExtendedConfigFileWatcher:()=>_Ve,updateSourceFile:()=>set,updateWatchingWildcardDirectories:()=>g1e,usingSingleLineStringWriter:()=>yW,utf16EncodeAsString:()=>tN,validateLocaleAndSetLanguage:()=>Bx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Ode,visitCommaListElements:()=>t1e,visitEachChild:()=>_s,visitFunctionBody:()=>pS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>qet,visitNode:()=>Mr,visitNodes:()=>Os,visitParameterList:()=>wI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>wOt,walkUpParenthesizedExpressions:()=>fv,walkUpParenthesizedTypes:()=>Tne,walkUpParenthesizedTypesAndGetParentAndChild:()=>Kye,whitespaceOrMapCommentRegExp:()=>ett,writeCommentRange:()=>fU,writeFile:()=>BAe,writeFileEnsuringDirectories:()=>dbe,zipWith:()=>ce});var IOs=!0,Qpn;function hOs(){return Qpn??(Qpn=new P(C))}function Xpn(s,c,g,d,h){let _=c?"DeprecationError: ":"DeprecationWarning: ";return _+=`'${s}' `,_+=d?`has been deprecated since v${d}`:"is deprecated",_+=c?" and can no longer be used.":g?` and will no longer be usable after v${g}.`:".",_+=h?` ${mN(h,[s])}`:"",_}function mOs(s,c,g,d){let h=Xpn(s,!0,c,g,d);return()=>{throw new TypeError(h)}}function COs(s,c,g,d){let h=!1;return()=>{IOs&&!h&&(pe.log.warn(Xpn(s,!1,c,g,d)),h=!0)}}function _Os(s,c={}){let g=typeof c.typeScriptVersion=="string"?new P(c.typeScriptVersion):c.typeScriptVersion??hOs(),d=typeof c.errorAfter=="string"?new P(c.errorAfter):c.errorAfter,h=typeof c.warnAfter=="string"?new P(c.warnAfter):c.warnAfter,_=typeof c.since=="string"?new P(c.since):c.since??h,S=c.error||d&&g.compareTo(d)>=0,R=!h||g.compareTo(h)>=0;return S?mOs(s,d,_,c.message):R?COs(s,d,_,c.message):Dc}function yOs(s,c){return function(){return s(),c.apply(this,arguments)}}function bOs(s,c){let g=_Os(c?.name??pe.getFunctionName(s),c);return yOs(g,s)}function xst(s,c,g,d){if(Object.defineProperty(_,"name",{...Object.getOwnPropertyDescriptor(_,"name"),value:s}),d)for(let S of Object.keys(d)){let R=+S;!isNaN(R)&&Da(c,`${R}`)&&(c[R]=bOs(c[R],{...d[R],name:s}))}let h=EOs(c,g);return _;function _(...S){let R=h(S),T=R!==void 0?c[R]:void 0;if(typeof T=="function")return T(...S);throw new TypeError("Invalid arguments")}}function EOs(s,c){return g=>{for(let d=0;Da(s,`${d}`)&&Da(c,`${d}`);d++){let h=c[d];if(h(g))return d}}}function Jpn(s){return{overload:c=>({bind:g=>({finish:()=>xst(s,c,g),deprecate:d=>({finish:()=>xst(s,c,g,d)})})})}}var Upn={};o(Upn,{ActionInvalidate:()=>KVe,ActionPackageInstalled:()=>jVe,ActionSet:()=>UVe,ActionWatchTypingLocations:()=>v1e,Arguments:()=>Drt,AutoImportProviderProject:()=>pJt,AuxiliaryProject:()=>AJt,CharRangeSection:()=>OJt,CloseFileWatcherEvent:()=>Xst,CommandNames:()=>Bfn,ConfigFileDiagEvent:()=>Pst,ConfiguredProject:()=>fJt,ConfiguredProjectLoadKind:()=>yJt,CreateDirectoryWatcherEvent:()=>Qst,CreateFileWatcherEvent:()=>Yst,Errors:()=>zF,EventBeginInstallTypes:()=>Rrt,EventEndInstallTypes:()=>Nrt,EventInitializationFailed:()=>$5t,EventTypesRegistry:()=>Trt,ExternalProject:()=>Fst,GcTimer:()=>eJt,InferredProject:()=>gJt,LargeFileReferencedEvent:()=>Ost,LineIndex:()=>R2e,LineLeaf:()=>DOe,LineNode:()=>Sse,LogLevel:()=>Q4t,Msg:()=>X4t,OpenFileInfoTelemetryEvent:()=>IJt,Project:()=>gq,ProjectInfoTelemetryEvent:()=>Hst,ProjectKind:()=>kpe,ProjectLanguageServiceStateEvent:()=>Mst,ProjectLoadingFinishEvent:()=>Wst,ProjectLoadingStartEvent:()=>Vst,ProjectService:()=>NJt,ProjectsUpdatedInBackgroundEvent:()=>TOe,ScriptInfo:()=>iJt,ScriptVersionCache:()=>iot,Session:()=>Gfn,TextStorage:()=>nJt,ThrottledOperations:()=>$4t,TypingsInstallerAdapter:()=>Ofn,allFilesAreJsOrDts:()=>cJt,allRootFilesAreJsOrDts:()=>aJt,asNormalizedPath:()=>qpn,convertCompilerOptions:()=>ROe,convertFormatOptions:()=>yse,convertScriptKindName:()=>Ust,convertTypeAcquisition:()=>mJt,convertUserPreferences:()=>CJt,convertWatchOptions:()=>w2e,countEachFileTypes:()=>E2e,createInstallTypingsRequest:()=>J4t,createModuleSpecifierCache:()=>xJt,createNormalizedPathMap:()=>$pn,createPackageJsonCache:()=>GJt,createSortedArray:()=>q4t,emptyArray:()=>tC,findArgument:()=>qnn,formatDiagnosticToProtocol:()=>T2e,formatMessage:()=>FJt,getBaseConfigFileName:()=>Gst,getDetailWatchInfo:()=>qst,getLocationInNewDocument:()=>WJt,hasArgument:()=>znn,hasNoTypeScriptSource:()=>lJt,indent:()=>npe,isBackgroundProject:()=>v2e,isConfigFile:()=>DJt,isConfiguredProject:()=>g9,isDynamicFileName:()=>Dpe,isExternalProject:()=>S2e,isInferredProject:()=>_se,isInferredProjectName:()=>U4t,isProjectDeferredClose:()=>B2e,makeAutoImportProviderProjectName:()=>j4t,makeAuxiliaryProjectName:()=>z4t,makeInferredProjectName:()=>K4t,maxFileSize:()=>Lst,maxProgramSizeForNonTsFiles:()=>Zst,normalizedPathToPath:()=>Cse,nowString:()=>$nn,nullCancellationToken:()=>Efn,nullTypingsInstaller:()=>NOe,protocol:()=>tJt,scriptInfoIsContainedByBackgroundProject:()=>sJt,scriptInfoIsContainedByDeferredClosedProject:()=>oJt,stringifyIndented:()=>n5,toEvent:()=>ZJt,toNormalizedPath:()=>cp,tryConvertScriptKindName:()=>Jst,typingsInstaller:()=>Y4t,updateProjectIfDirty:()=>Sv});var Y4t={};o(Y4t,{TypingsInstaller:()=>BOs,getNpmCommandForInstallation:()=>jpn,installNpmPackages:()=>vOs,typingsName:()=>zpn});var SOs={isEnabled:()=>!1,writeLine:Dc};function Kpn(s,c,g,d){try{let h=WU(c,Ro(s,"index.d.ts"),{moduleResolution:2},g);return h.resolvedModule&&h.resolvedModule.resolvedFileName}catch(h){d.isEnabled()&&d.writeLine(`Failed to resolve ${c} in folder '${s}': ${h.message}`);return}}function vOs(s,c,g,d){let h=!1;for(let _=g.length;_>0;){let S=jpn(s,c,g,_);_=S.remaining,h=d(S.command)||h}return h}function jpn(s,c,g,d){let h=g.length-d,_,S=d;for(;_=`${s} install --ignore-scripts ${(S===g.length?g:g.slice(h,h+S)).join(" ")} --save-dev --user-agent="typesInstaller/${c}"`,!(_.length<8e3);)S=S-Math.floor(S/2);return{command:_,remaining:d-S}}var BOs=class{constructor(s,c,g,d,h,_=SOs){this.installTypingHost=s,this.globalCachePath=c,this.safeListPath=g,this.typesMapLocation=d,this.throttleLimit=h,this.log=_,this.packageNameToTypingLocation=new Map,this.missingTypingsSet=new Set,this.knownCachesSet=new Set,this.projectWatchers=new Map,this.pendingRunRequests=[],this.installRunCount=1,this.inFlightRequestCount=0,this.latestDistTag="latest",this.log.isEnabled()&&this.log.writeLine(`Global cache location '${c}', safe file path '${g}', types map path ${d}`),this.processCacheLocation(this.globalCachePath)}handleRequest(s){switch(s.kind){case"discover":this.install(s);break;case"closeProject":this.closeProject(s);break;case"typesRegistry":{let c={};this.typesRegistry.forEach((d,h)=>{c[h]=d});let g={kind:Trt,typesRegistry:c};this.sendResponse(g);break}case"installPackage":{this.installPackage(s);break}default:pe.assertNever(s)}}closeProject(s){this.closeWatchers(s.projectName)}closeWatchers(s){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}'`),!this.projectWatchers.get(s)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${s}'`);return}this.projectWatchers.delete(s),this.sendResponse({kind:v1e,projectName:s,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}' - done.`)}install(s){this.log.isEnabled()&&this.log.writeLine(`Got install request${n5(s)}`),s.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${s.cachePath}', loading cached information...`),this.processCacheLocation(s.cachePath)),this.safeList===void 0&&this.initializeSafeList();let c=qW.discoverTypings(this.installTypingHost,this.log.isEnabled()?g=>this.log.writeLine(g):void 0,s.fileNames,s.projectRootPath,this.safeList,this.packageNameToTypingLocation,s.typeAcquisition,s.unresolvedImports,this.typesRegistry,s.compilerOptions);this.watchFiles(s.projectName,c.filesToWatch),c.newTypingNames.length?this.installTypings(s,s.cachePath||this.globalCachePath,c.cachedTypingPaths,c.newTypingNames):(this.sendResponse(this.createSetTypings(s,c.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(s){let{fileName:c,packageName:g,projectName:d,projectRootPath:h,id:_}=s,S=hE(Mo(c),R=>{if(this.installTypingHost.fileExists(Ro(R,"package.json")))return R})||h;if(S)this.installWorker(-1,[g],S,R=>{let T=R?`Package ${g} installed.`:`There was an error installing ${g}.`,O={kind:jVe,projectName:d,id:_,success:R,message:T};this.sendResponse(O)});else{let R={kind:jVe,projectName:d,id:_,success:!1,message:"Could not determine a project root path."};this.sendResponse(R)}}initializeSafeList(){if(this.typesMapLocation){let s=qW.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(s){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=s;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=qW.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(s){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${s}'`),this.knownCachesSet.has(s)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}let c=Ro(s,"package.json"),g=Ro(s,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${c}'...`),this.installTypingHost.fileExists(c)&&this.installTypingHost.fileExists(g)){let d=JSON.parse(this.installTypingHost.readFile(c)),h=JSON.parse(this.installTypingHost.readFile(g));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${c}':${n5(d)}`),this.log.writeLine(`Loaded content of '${g}':${n5(h)}`)),d.devDependencies&&(h.packages||h.dependencies))for(let _ in d.devDependencies){if(h.packages&&!Da(h.packages,`node_modules/${_}`)||h.dependencies&&!Da(h.dependencies,_))continue;let S=dp(_);if(!S)continue;let R=Kpn(s,S,this.installTypingHost,this.log);if(!R){this.missingTypingsSet.add(S);continue}let T=this.packageNameToTypingLocation.get(S);if(T){if(T.typingLocation===R)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${S} from '${R}' conflicts with existing typing file '${T}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${S}' => '${R}'`);let O=h.packages&&fu(h.packages,`node_modules/${_}`)||fu(h.dependencies,_),V=O&&O.version;if(!V)continue;let M={typingLocation:R,version:new P(V)};this.packageNameToTypingLocation.set(S,M)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${s}'`),this.knownCachesSet.add(s)}filterTypings(s){return Xt(s,c=>{let g=Yie(c);if(this.missingTypingsSet.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' is in missingTypingsSet - skipping...`);return}let d=qW.validatePackageName(c);if(d!==qW.NameValidationResult.Ok){this.missingTypingsSet.add(g),this.log.isEnabled()&&this.log.writeLine(qW.renderPackageNameValidationFailure(d,c));return}if(!this.typesRegistry.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: Entry for package '${g}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(g)&&qW.isTypingUpToDate(this.packageNameToTypingLocation.get(g),this.typesRegistry.get(g))){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' already has an up-to-date typing - skipping...`);return}return g})}ensurePackageDirectoryExists(s){let c=Ro(s,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${c}`),this.installTypingHost.fileExists(c)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${c}' is missing, creating new one...`),this.ensureDirectoryExists(s,this.installTypingHost),this.installTypingHost.writeFile(c,'{ "private": true }'))}installTypings(s,c,g,d){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(d)}`);let h=this.filterTypings(d);if(h.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(s,g));return}this.ensurePackageDirectoryExists(c);let _=this.installRunCount;this.installRunCount++,this.sendResponse({kind:Rrt,eventId:_,typingsInstallerVersion:C,projectName:s.projectName});let S=h.map(zpn);this.installTypingsAsync(_,S,c,R=>{try{if(!R){this.log.isEnabled()&&this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(h)}`);for(let O of h)this.missingTypingsSet.add(O);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(S)}`);let T=[];for(let O of h){let V=Kpn(c,O,this.installTypingHost,this.log);if(!V){this.missingTypingsSet.add(O);continue}let M=this.typesRegistry.get(O),ee=new P(M[`ts${I}`]||M[this.latestDistTag]),re={typingLocation:V,version:ee};this.packageNameToTypingLocation.set(O,re),T.push(V)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(T)}`),this.sendResponse(this.createSetTypings(s,g.concat(T)))}finally{let T={kind:Nrt,eventId:_,projectName:s.projectName,packagesToInstall:S,installSuccess:R,typingsInstallerVersion:C};this.sendResponse(T)}})}ensureDirectoryExists(s,c){let g=Mo(s);c.directoryExists(g)||this.ensureDirectoryExists(g,c),c.directoryExists(s)||c.createDirectory(s)}watchFiles(s,c){if(!c.length){this.closeWatchers(s);return}let g=this.projectWatchers.get(s),d=new Set(c);!g||RB(d,h=>!g.has(h))||RB(g,h=>!d.has(h))?(this.projectWatchers.set(s,d),this.sendResponse({kind:v1e,projectName:s,files:c})):this.sendResponse({kind:v1e,projectName:s,files:void 0})}createSetTypings(s,c){return{projectName:s.projectName,typeAcquisition:s.typeAcquisition,compilerOptions:s.compilerOptions,typings:c,unresolvedImports:s.unresolvedImports,kind:UVe}}installTypingsAsync(s,c,g,d){this.pendingRunRequests.unshift({requestId:s,packageNames:c,cwd:g,onRequestCompleted:d}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount{this.inFlightRequestCount--,s.onRequestCompleted(c),this.executeWithThrottling()})}}};function zpn(s){return`@types/${s}@ts${I}`}var Q4t=(s=>(s[s.terse=0]="terse",s[s.normal=1]="normal",s[s.requestTime=2]="requestTime",s[s.verbose=3]="verbose",s))(Q4t||{}),tC=q4t(),X4t=(s=>(s.Err="Err",s.Info="Info",s.Perf="Perf",s))(X4t||{});function J4t(s,c,g,d){return{projectName:s.getProjectName(),fileNames:s.getFileNames(!0,!0).concat(s.getExcludedFiles()),compilerOptions:s.getCompilationSettings(),typeAcquisition:c,unresolvedImports:g,projectRootPath:s.getCurrentDirectory(),cachePath:d,kind:"discover"}}var zF;(s=>{function c(){throw new Error("No Project.")}s.ThrowNoProject=c;function g(){throw new Error("The project's language service is disabled.")}s.ThrowProjectLanguageServiceDisabled=g;function d(h,_){throw new Error(`Project '${_.getProjectName()}' does not contain document '${h}'`)}s.ThrowProjectDoesNotContainDocument=d})(zF||(zF={}));function cp(s){return su(s)}function Cse(s,c,g){let d=Up(s)?s:Xc(s,c);return g(d)}function qpn(s){return s}function $pn(){let s=new Map;return{get(c){return s.get(c)},set(c,g){s.set(c,g)},contains(c){return s.has(c)},remove(c){s.delete(c)}}}function U4t(s){return/dev\/null\/inferredProject\d+\*/.test(s)}function K4t(s){return`/dev/null/inferredProject${s}*`}function j4t(s){return`/dev/null/autoImportProviderProject${s}*`}function z4t(s){return`/dev/null/auxiliaryProject${s}*`}function q4t(){return[]}var $4t=class Bki{constructor(c,g){this.host=c,this.pendingTimeouts=new Map,this.logger=g.hasLevel(3)?g:void 0}schedule(c,g,d){let h=this.pendingTimeouts.get(c);h&&this.host.clearTimeout(h),this.pendingTimeouts.set(c,this.host.setTimeout(Bki.run,g,c,this,d)),this.logger&&this.logger.info(`Scheduled: ${c}${h?", Cancelled earlier one":""}`)}cancel(c){let g=this.pendingTimeouts.get(c);return g?(this.host.clearTimeout(g),this.pendingTimeouts.delete(c)):!1}static run(c,g,d){g.pendingTimeouts.delete(c),g.logger&&g.logger.info(`Running: ${c}`),d()}},eJt=class wki{constructor(c,g,d){this.host=c,this.delay=g,this.logger=d}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(wki.run,this.delay,this))}static run(c){c.timerId=void 0;let g=c.logger.hasLevel(2),d=g&&c.host.getMemoryUsage();if(c.host.gc(),g){let h=c.host.getMemoryUsage();c.logger.perftrc(`GC::before ${d}, after ${h}`)}}};function Gst(s){let c=dp(s);return c==="tsconfig.json"||c==="jsconfig.json"?c:void 0}var tJt={};o(tJt,{ClassificationType:()=>Frt,CommandTypes:()=>rJt,CompletionTriggerKind:()=>xrt,IndentStyle:()=>nfn,JsxEmit:()=>ifn,ModuleKind:()=>sfn,ModuleResolutionKind:()=>ofn,NewLineKind:()=>afn,OrganizeImportsMode:()=>krt,PollingWatchKind:()=>rfn,ScriptTarget:()=>cfn,SemicolonPreference:()=>Grt,WatchDirectoryKind:()=>tfn,WatchFileKind:()=>efn});var rJt=(s=>(s.JsxClosingTag="jsxClosingTag",s.LinkedEditingRange="linkedEditingRange",s.Brace="brace",s.BraceFull="brace-full",s.BraceCompletion="braceCompletion",s.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",s.Change="change",s.Close="close",s.Completions="completions",s.CompletionInfo="completionInfo",s.CompletionsFull="completions-full",s.CompletionDetails="completionEntryDetails",s.CompletionDetailsFull="completionEntryDetails-full",s.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",s.CompileOnSaveEmitFile="compileOnSaveEmitFile",s.Configure="configure",s.Definition="definition",s.DefinitionFull="definition-full",s.DefinitionAndBoundSpan="definitionAndBoundSpan",s.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",s.Implementation="implementation",s.ImplementationFull="implementation-full",s.EmitOutput="emit-output",s.Exit="exit",s.FileReferences="fileReferences",s.FileReferencesFull="fileReferences-full",s.Format="format",s.Formatonkey="formatonkey",s.FormatFull="format-full",s.FormatonkeyFull="formatonkey-full",s.FormatRangeFull="formatRange-full",s.Geterr="geterr",s.GeterrForProject="geterrForProject",s.SemanticDiagnosticsSync="semanticDiagnosticsSync",s.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",s.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",s.NavBar="navbar",s.NavBarFull="navbar-full",s.Navto="navto",s.NavtoFull="navto-full",s.NavTree="navtree",s.NavTreeFull="navtree-full",s.DocumentHighlights="documentHighlights",s.DocumentHighlightsFull="documentHighlights-full",s.Open="open",s.Quickinfo="quickinfo",s.QuickinfoFull="quickinfo-full",s.References="references",s.ReferencesFull="references-full",s.Reload="reload",s.Rename="rename",s.RenameInfoFull="rename-full",s.RenameLocationsFull="renameLocations-full",s.Saveto="saveto",s.SignatureHelp="signatureHelp",s.SignatureHelpFull="signatureHelp-full",s.FindSourceDefinition="findSourceDefinition",s.Status="status",s.TypeDefinition="typeDefinition",s.ProjectInfo="projectInfo",s.ReloadProjects="reloadProjects",s.Unknown="unknown",s.OpenExternalProject="openExternalProject",s.OpenExternalProjects="openExternalProjects",s.CloseExternalProject="closeExternalProject",s.SynchronizeProjectList="synchronizeProjectList",s.ApplyChangedToOpenFiles="applyChangedToOpenFiles",s.UpdateOpen="updateOpen",s.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",s.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",s.Cleanup="cleanup",s.GetOutliningSpans="getOutliningSpans",s.GetOutliningSpansFull="outliningSpans",s.TodoComments="todoComments",s.Indentation="indentation",s.DocCommentTemplate="docCommentTemplate",s.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",s.NameOrDottedNameSpan="nameOrDottedNameSpan",s.BreakpointStatement="breakpointStatement",s.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",s.GetCodeFixes="getCodeFixes",s.GetCodeFixesFull="getCodeFixes-full",s.GetCombinedCodeFix="getCombinedCodeFix",s.GetCombinedCodeFixFull="getCombinedCodeFix-full",s.ApplyCodeActionCommand="applyCodeActionCommand",s.GetSupportedCodeFixes="getSupportedCodeFixes",s.GetApplicableRefactors="getApplicableRefactors",s.GetEditsForRefactor="getEditsForRefactor",s.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",s.PreparePasteEdits="preparePasteEdits",s.GetPasteEdits="getPasteEdits",s.GetEditsForRefactorFull="getEditsForRefactor-full",s.OrganizeImports="organizeImports",s.OrganizeImportsFull="organizeImports-full",s.GetEditsForFileRename="getEditsForFileRename",s.GetEditsForFileRenameFull="getEditsForFileRename-full",s.ConfigurePlugin="configurePlugin",s.SelectionRange="selectionRange",s.SelectionRangeFull="selectionRange-full",s.ToggleLineComment="toggleLineComment",s.ToggleLineCommentFull="toggleLineComment-full",s.ToggleMultilineComment="toggleMultilineComment",s.ToggleMultilineCommentFull="toggleMultilineComment-full",s.CommentSelection="commentSelection",s.CommentSelectionFull="commentSelection-full",s.UncommentSelection="uncommentSelection",s.UncommentSelectionFull="uncommentSelection-full",s.PrepareCallHierarchy="prepareCallHierarchy",s.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",s.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",s.ProvideInlayHints="provideInlayHints",s.WatchChange="watchChange",s.MapCode="mapCode",s.CopilotRelated="copilotRelated",s))(rJt||{}),efn=(s=>(s.FixedPollingInterval="FixedPollingInterval",s.PriorityPollingInterval="PriorityPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s.UseFsEvents="UseFsEvents",s.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",s))(efn||{}),tfn=(s=>(s.UseFsEvents="UseFsEvents",s.FixedPollingInterval="FixedPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s))(tfn||{}),rfn=(s=>(s.FixedInterval="FixedInterval",s.PriorityInterval="PriorityInterval",s.DynamicPriority="DynamicPriority",s.FixedChunkSize="FixedChunkSize",s))(rfn||{}),nfn=(s=>(s.None="None",s.Block="Block",s.Smart="Smart",s))(nfn||{}),ifn=(s=>(s.None="none",s.Preserve="preserve",s.ReactNative="react-native",s.React="react",s.ReactJSX="react-jsx",s.ReactJSXDev="react-jsxdev",s))(ifn||{}),sfn=(s=>(s.None="none",s.CommonJS="commonjs",s.AMD="amd",s.UMD="umd",s.System="system",s.ES6="es6",s.ES2015="es2015",s.ES2020="es2020",s.ES2022="es2022",s.ESNext="esnext",s.Node16="node16",s.Node18="node18",s.Node20="node20",s.NodeNext="nodenext",s.Preserve="preserve",s))(sfn||{}),ofn=(s=>(s.Classic="classic",s.Node="node",s.NodeJs="node",s.Node10="node10",s.Node16="node16",s.NodeNext="nodenext",s.Bundler="bundler",s))(ofn||{}),afn=(s=>(s.Crlf="Crlf",s.Lf="Lf",s))(afn||{}),cfn=(s=>(s.ES3="es3",s.ES5="es5",s.ES6="es6",s.ES2015="es2015",s.ES2016="es2016",s.ES2017="es2017",s.ES2018="es2018",s.ES2019="es2019",s.ES2020="es2020",s.ES2021="es2021",s.ES2022="es2022",s.ES2023="es2023",s.ES2024="es2024",s.ESNext="esnext",s.JSON="json",s.Latest="esnext",s))(cfn||{}),nJt=class{constructor(s,c,g){this.host=s,this.info=c,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=g||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}resetSourceMapInfo(){this.info.sourceFileLike=void 0,this.info.closeSourceMapFileWatcher(),this.info.sourceMapFilePath=void 0,this.info.declarationInfoPath=void 0,this.info.sourceInfos=void 0,this.info.documentPositionMapper=void 0}useText(s){this.svc=void 0,this.text=s,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(s,c,g){this.switchToScriptVersionCache().edit(s,c-s,g),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(s){return pe.assert(s!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=zz(this.svc.getSnapshot())),this.text!==s?(this.useText(s),this.ownFileText=!1,!0):!1}reloadWithFileText(s){let{text:c,fileSize:g}=s||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(s):{text:"",fileSize:void 0},d=this.reload(c);return this.fileSize=g,this.ownFileText=!s||s===this.info.fileName,this.ownFileText&&this.info.mTime===xh.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||xh).getTime()),d}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}delayReloadFromFileIntoText(){this.pendingReloadFromDisk=!0}getTelemetryFileSize(){return this.fileSize?this.fileSize:this.text?this.text.length:this.svc?this.svc.getSnapshot().getLength():this.getSnapshot().getLength()}getSnapshot(){var s;return((s=this.tryUseScriptVersionCache())==null?void 0:s.getSnapshot())||(this.textSnapshot??(this.textSnapshot=zVe.fromString(pe.checkDefined(this.text))))}getAbsolutePositionAndLineText(s){let c=this.tryUseScriptVersionCache();if(c)return c.getAbsolutePositionAndLineText(s);let g=this.getLineMap();return s<=g.length?{absolutePosition:g[s-1],lineText:this.text.substring(g[s-1],g[s])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(s){let c=this.tryUseScriptVersionCache();if(c)return c.lineToTextSpan(s);let g=this.getLineMap(),d=g[s],h=s+1c===void 0?c=this.host.readFile(g)||"":c;if(!G3(this.info.fileName)){let h=this.host.getFileSize?this.host.getFileSize(g):d().length;if(h>Lst)return pe.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${g} for info ${this.info.fileName}: fileSize: ${h}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(g,h),{text:"",fileSize:h}}return{text:d()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=iot.fromString(this.getOrLoadText()),this.textSnapshot=void 0,this.version++),this.svc}tryUseScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&this.getOrLoadText(),this.isOpen?(!this.svc&&!this.textSnapshot&&(this.svc=iot.fromString(pe.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(pe.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return pe.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=lA(pe.checkDefined(this.text)))}getLineInfo(){let s=this.tryUseScriptVersionCache();if(s)return{getLineCount:()=>s.getLineCount(),getLineText:g=>s.getAbsolutePositionAndLineText(g+1).lineText};let c=this.getLineMap();return ttt(this.text,c)}};function Dpe(s){return s[0]==="^"||(s.includes("walkThroughSnippet:/")||s.includes("untitled:/"))&&dp(s)[0]==="^"||s.includes(":^")&&!s.includes(cg)}var iJt=class{constructor(s,c,g,d,h,_){this.host=s,this.fileName=c,this.scriptKind=g,this.hasMixedContent=d,this.path=h,this.containingProjects=[],this.isDynamic=Dpe(c),this.textStorage=new nJt(s,this,_),(d||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=g||zAe(c)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(s){this.textStorage.isOpen=!0,s!==void 0&&this.textStorage.reload(s)&&this.markContainingProjectsAsDirty()}close(s=!0){this.textStorage.isOpen=!1,s&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){pe.assert(!!this.containingProjects.length);let s=this.containingProjects[0],c=this.host.realpath(this.path);c&&(this.realpath=s.toPath(c),this.realpath!==this.path&&s.projectService.realpathToScriptInfos.add(this.realpath,this))}}getRealpathIfDifferent(){return this.realpath&&this.realpath!==this.path?this.realpath:void 0}isSymlink(){return this.realpath&&this.realpath!==this.path}getFormatCodeSettings(){return this.formatSettings}getPreferences(){return this.preferences}attachToProject(s){let c=!this.isAttached(s);return c&&(this.containingProjects.push(s),s.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),s.onFileAddedOrRemoved(this.isSymlink())),c}isAttached(s){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===s;case 2:return this.containingProjects[0]===s||this.containingProjects[1]===s;default:return k(this.containingProjects,s)}}detachFromProject(s){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===s?(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:Xl(this.containingProjects,s)&&s.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(let s of this.containingProjects){g9(s)&&s.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);let c=s.getRootFilesMap().get(this.path);s.removeFile(this,!1,!1),s.onFileAddedOrRemoved(this.isSymlink()),c&&!_se(s)&&s.addMissingFileRoot(c.fileName)}ft(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return zF.ThrowNoProject();case 1:return B2e(this.containingProjects[0])||v2e(this.containingProjects[0])?zF.ThrowNoProject():this.containingProjects[0];default:let s,c,g,d;for(let h=0;h!s.isOrphan())}lineToTextSpan(s){return this.textStorage.lineToTextSpan(s)}lineOffsetToPosition(s,c,g){return this.textStorage.lineOffsetToPosition(s,c,g)}positionToLineOffset(s){wOs(s);let c=this.textStorage.positionToLineOffset(s);return TOs(c),c}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Xs(this.sourceMapFilePath)&&(Ev(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};function wOs(s){pe.assert(typeof s=="number",`Expected position ${s} to be a number.`),pe.assert(s>=0,"Expected position to be non-negative.")}function TOs(s){pe.assert(typeof s.line=="number",`Expected line ${s.line} to be a number.`),pe.assert(typeof s.offset=="number",`Expected offset ${s.offset} to be a number.`),pe.assert(s.line>0,`Expected line to be non-${s.line===0?"zero":"negative"}`),pe.assert(s.offset>0,`Expected offset to be non-${s.offset===0?"zero":"negative"}`)}function sJt(s){return zt(s.containingProjects,v2e)}function oJt(s){return zt(s.containingProjects,B2e)}var kpe=(s=>(s[s.Inferred=0]="Inferred",s[s.Configured=1]="Configured",s[s.External=2]="External",s[s.AutoImportProvider=3]="AutoImportProvider",s[s.Auxiliary=4]="Auxiliary",s))(kpe||{});function E2e(s,c=!1){let g={js:0,jsSize:0,jsx:0,jsxSize:0,ts:0,tsSize:0,tsx:0,tsxSize:0,dts:0,dtsSize:0,deferred:0,deferredSize:0};for(let d of s){let h=c?d.textStorage.getTelemetryFileSize():0;switch(d.scriptKind){case 1:g.js+=1,g.jsSize+=h;break;case 2:g.jsx+=1,g.jsxSize+=h;break;case 3:PC(d.fileName)?(g.dts+=1,g.dtsSize+=h):(g.ts+=1,g.tsSize+=h);break;case 4:g.tsx+=1,g.tsxSize+=h;break;case 7:g.deferred+=1,g.deferredSize+=h;break}}return g}function ROs(s){let c=E2e(s.getScriptInfos());return c.js>0&&c.ts===0&&c.tsx===0}function aJt(s){let c=E2e(s.getRootScriptInfos());return c.ts===0&&c.tsx===0}function cJt(s){let c=E2e(s.getScriptInfos());return c.ts===0&&c.tsx===0}function lJt(s){return!s.some(c=>cA(c,".ts")&&!PC(c)||cA(c,".tsx"))}function uJt(s){return s.generatedFilePath!==void 0}function lfn(s,c){if(s===c||(s||tC).length===0&&(c||tC).length===0)return!0;let g=new Map,d=0;for(let h of s)g.get(h)!==!0&&(g.set(h,!0),d++);for(let h of c){let _=g.get(h);if(_===void 0)return!1;_===!0&&(g.set(h,!1),d--)}return d===0}function NOs(s,c){return s.enable!==c.enable||!lfn(s.include,c.include)||!lfn(s.exclude,c.exclude)}function DOs(s,c){return GF(s)!==GF(c)}function kOs(s,c){return s===c?!1:!Sc(s,c)}var gq=class Tki{constructor(c,g,d,h,_,S,R,T,O,V){switch(this.projectKind=g,this.projectService=d,this.compilerOptions=S,this.compileOnSaveEnabled=R,this.watchOptions=T,this.rootFilesMap=new Map,this.plugins=[],this.cachedUnresolvedImportsPerFile=new Map,this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1,this.lastReportedVersion=0,this.projectProgramVersion=0,this.projectStateVersion=0,this.initialLoadPending=!1,this.dirty=!1,this.typingFiles=tC,this.moduleSpecifierCache=xJt(this),this.createHash=$i(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=qW.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,d.logger.info(`Creating ${kpe[g]}Project: ${c}, currentDirectory: ${V}`),this.projectName=c,this.directoryStructureHost=O,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(V),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new WYt(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(h||GF(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=eOe(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),d.serverMode){case 0:this.languageServiceEnabled=!0;break;case 1:this.languageServiceEnabled=!0,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;case 2:this.languageServiceEnabled=!1,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;default:pe.assertNever(d.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();let M=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=ee=>this.writeLog(ee):M.trace&&(this.trace=ee=>M.trace(ee)),this.realpath=$i(M,M.realpath),this.preferNonRecursiveWatch=this.projectService.canUseWatchEvents||M.preferNonRecursiveWatch,this.resolutionCache=ztt(this,this.currentDirectory,!0),this.languageService=OYt(this,this.projectService.documentRegistry,this.projectService.serverMode),_&&this.disableLanguageService(_),this.markAsDirty(),v2e(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getRedirectFromSourceFile(c){}isNonTsProject(){return Sv(this),cJt(this)}isJsOnlyProject(){return Sv(this),ROs(this)}static resolveModule(c,g,d,h){return Tki.importServicePluginSync({name:c},[g],d,h).resolvedModule}static importServicePluginSync(c,g,d,h){pe.assertIsDefined(d.require);let _,S;for(let R of g){let T=xp(d.resolvePath(Ro(R,"node_modules")));h(`Loading ${c.name} from ${R} (resolved to ${T})`);let O=d.require(T,c.name);if(!O.error){S=O.module;break}let V=O.error.stack||O.error.message||JSON.stringify(O.error);(_??(_=[])).push(`Failed to load module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}static async importServicePluginAsync(c,g,d,h){pe.assertIsDefined(d.importPlugin);let _,S;for(let R of g){let T=Ro(R,"node_modules");h(`Dynamically importing ${c.name} from ${R} (resolved to ${T})`);let O;try{O=await d.importPlugin(T,c.name)}catch(M){O={module:void 0,error:M}}if(!O.error){S=O.module;break}let V=O.error.stack||O.error.message||JSON.stringify(O.error);(_??(_=[])).push(`Failed to dynamically import module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}isKnownTypesPackageName(c){return this.projectService.typingsInstaller.isKnownTypesPackageName(c)}installPackage(c){return this.projectService.typingsInstaller.installPackage({...c,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}getSymlinkCache(){return this.symlinks||(this.symlinks=Mbe(this.getCurrentDirectory(),this.getCanonicalFileName)),this.program&&!this.symlinks.hasProcessedResolutions()&&this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule,this.program.forEachResolvedTypeReferenceDirective,this.program.getAutomaticTypeDirectiveResolutions()),this.symlinks}getCompilationSettings(){return this.compilerOptions}getCompilerOptions(){return this.getCompilationSettings()}getNewLine(){return this.projectService.host.newLine}getProjectVersion(){return this.projectStateVersion.toString()}getProjectReferences(){}getScriptFileNames(){if(!this.rootFilesMap.size)return E;let c;return this.rootFilesMap.forEach(g=>{(this.languageServiceEnabled||g.info&&g.info.isScriptOpen())&&(c||(c=[])).push(g.fileName)}),Pr(c,this.typingFiles)||E}getOrCreateScriptInfoAndAttachToProject(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);if(g){let d=this.rootFilesMap.get(g.path);d&&d.info!==g&&(d.info=g),g.attachToProject(this)}return g}getScriptKind(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&g.scriptKind}getScriptVersion(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);return g&&g.getLatestVersion()}getScriptSnapshot(c){let g=this.getOrCreateScriptInfoAndAttachToProject(c);if(g)return g.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){let c=Mo(su(this.projectService.getExecutingFilePath()));return Ro(c,Hs(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(c,g,d,h,_){return this.directoryStructureHost.readDirectory(c,g,d,h,_)}readFile(c){return this.projectService.host.readFile(c)}writeFile(c,g){return this.projectService.host.writeFile(c,g)}fileExists(c){let g=this.toPath(c);return!!this.projectService.getScriptInfoForPath(g)||!this.isWatchedMissingFile(g)&&this.directoryStructureHost.fileExists(c)}resolveModuleNameLiterals(c,g,d,h,_,S){return this.resolutionCache.resolveModuleNameLiterals(c,g,d,h,_,S)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S)}resolveLibrary(c,g,d,h){return this.resolutionCache.resolveLibrary(c,g,d,h)}directoryExists(c){return this.directoryStructureHost.directoryExists(c)}getDirectories(c){return this.directoryStructureHost.getDirectories(c)}getCachedDirectoryStructureHost(){}toPath(c){return Pu(c,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),eC.FailedLookupLocations,this)}watchAffectingFileLocation(c,g){return this.projectService.watchFactory.watchFile(c,g,2e3,this.projectService.getWatchOptions(this),eC.AffectingFileLocation,this)}clearInvalidateResolutionOfFailedLookupTimer(){return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`)}scheduleInvalidateResolutionsOfFailedLookupLocations(){this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`,1e3,()=>{this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)})}invalidateResolutionsOfFailedLookupLocations(){this.clearInvalidateResolutionOfFailedLookupTimer()&&this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&(this.markAsDirty(),this.projectService.delayEnsureProjectForOpenFiles())}onInvalidatedResolution(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}watchTypeRootsDirectory(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),eC.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}fileIsOpen(c){return this.projectService.openFiles.has(c)}writeLog(c){this.projectService.logger.info(c)}log(c){this.writeLog(c)}error(c){this.projectService.logger.msg(c,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return Le(this.projectErrors,c=>!c.file)||tC}getAllProjectErrors(){return this.projectErrors||tC}setProjectErrors(c){this.projectErrors=c}getLanguageService(c=!0){return c&&Sv(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(c,g){return this.projectService.getDocumentPositionMapper(this,c,g)}getSourceFileLike(c){return this.projectService.getSourceFileLike(c,this)}shouldEmitFile(c){return c&&!c.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(c.path)}getCompileOnSaveAffectedFileList(c){return this.languageServiceEnabled?(Sv(this),this.builderState=cR.create(this.program,this.builderState,!0),Xt(cR.getFilesAffectedBy(this.builderState,this.program,c.path,this.cancellationToken,this.projectService.host),g=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(g.path))?g.fileName:void 0)):[]}emitFile(c,g){if(!this.languageServiceEnabled||!this.shouldEmitFile(c))return{emitSkipped:!0,diagnostics:tC};let{emitSkipped:d,diagnostics:h,outputFiles:_}=this.getLanguageService().getEmitOutput(c.fileName);if(!d){for(let S of _){let R=Xc(S.name,this.currentDirectory);g(R,S.text,S.writeByteOrderMark)}if(this.builderState&&Wy(this.compilerOptions)){let S=_.filter(R=>PC(R.name));if(S.length===1){let R=this.program.getSourceFile(c.fileName),T=this.projectService.host.createHash?this.projectService.host.createHash(S[0].text):iy(S[0].text);cR.updateSignatureOfFile(this.builderState,T,R.resolvedPath)}}}return{emitSkipped:d,diagnostics:h}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(let c of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(c.fileName);this.program.forEachResolvedProjectReference(c=>this.detachScriptInfoFromProject(c.sourceFile.fileName)),this.program=void 0}}disableLanguageService(c){this.languageServiceEnabled&&(pe.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=c,this.builderState=void 0,this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.resolutionCache.closeTypeRootsWatch(),this.clearGeneratedFileWatch(),this.projectService.verifyDocumentRegistry(),this.projectService.onUpdateLanguageServiceStateForProject(this,!1))}getProjectName(){return this.projectName}removeLocalTypingsFromTypeAcquisition(c){return!c.enable||!c.include?c:{...c,include:this.removeExistingTypings(c.include)}}getExternalFiles(c){return bo(jt(this.plugins,g=>{if(typeof g.module.getExternalFiles=="function")try{return g.module.getExternalFiles(this,c||0)}catch(d){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${d}`),d.stack&&this.projectService.logger.info(d.stack)}}))}getSourceFile(c){if(this.program)return this.program.getSourceFileByPath(c)}getSourceFileOrConfigFile(c){let g=this.program.getCompilerOptions();return c===g.configFilePath?g.configFile:this.getSourceFile(c)}close(){var c;this.typingsCache&&this.projectService.typingsInstaller.onProjectClosed(this),this.typingsCache=void 0,this.closeWatchingTypingLocations(),this.cleanupProgram(),F(this.externalFiles,g=>this.detachScriptInfoIfNotRoot(g)),this.rootFilesMap.forEach(g=>{var d;return(d=g.info)==null?void 0:d.detachFromProject(this)}),this.projectService.pendingEnsureProjectForOpenFiles=!0,this.rootFilesMap=void 0,this.externalFiles=void 0,this.program=void 0,this.builderState=void 0,this.resolutionCache.clear(),this.resolutionCache=void 0,this.cachedUnresolvedImportsPerFile=void 0,(c=this.packageJsonWatches)==null||c.forEach(g=>{g.projects.delete(this),g.close()}),this.packageJsonWatches=void 0,this.moduleSpecifierCache.clear(),this.moduleSpecifierCache=void 0,this.directoryStructureHost=void 0,this.exportMapCache=void 0,this.projectErrors=void 0,this.plugins.length=0,this.missingFilesMap&&(Ly(this.missingFilesMap,hv),this.missingFilesMap=void 0),this.clearGeneratedFileWatch(),this.clearInvalidateResolutionOfFailedLookupTimer(),this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.noDtsResolutionProject&&this.noDtsResolutionProject.close(),this.noDtsResolutionProject=void 0,this.languageService.dispose(),this.languageService=void 0}detachScriptInfoIfNotRoot(c){let g=this.projectService.getScriptInfo(c);g&&!this.isRoot(g)&&g.detachFromProject(this)}isClosed(){return this.rootFilesMap===void 0}hasRoots(){var c;return!!((c=this.rootFilesMap)!=null&&c.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&Do(lr(this.rootFilesMap.values(),c=>{var g;return(g=c.info)==null?void 0:g.fileName}))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return Do(lr(this.rootFilesMap.values(),c=>c.info))}getScriptInfos(){return this.languageServiceEnabled?lt(this.program.getSourceFiles(),c=>{let g=this.projectService.getScriptInfoForPath(c.resolvedPath);return pe.assert(!!g,"getScriptInfo",()=>`scriptInfo for a file '${c.fileName}' Path: '${c.path}' / '${c.resolvedPath}' is missing.`),g}):this.getRootScriptInfos()}getExcludedFiles(){return tC}getFileNames(c,g){if(!this.program)return[];if(!this.languageServiceEnabled){let h=this.getRootFiles();if(this.compilerOptions){let _=PYt(this.compilerOptions);_&&(h||(h=[])).push(_)}return h}let d=[];for(let h of this.program.getSourceFiles())c&&this.program.isSourceFileFromExternalLibrary(h)||d.push(h.fileName);if(!g){let h=this.program.getCompilerOptions().configFile;if(h&&(d.push(h.fileName),h.extendedSourceFiles))for(let _ of h.extendedSourceFiles)d.push(_)}return d}getFileNamesWithRedirectInfo(c){return this.getFileNames().map(g=>({fileName:g,isSourceOfProjectReferenceRedirect:c&&this.isSourceOfProjectReferenceRedirect(g)}))}hasConfigFile(c){if(this.program&&this.languageServiceEnabled){let g=this.program.getCompilerOptions().configFile;if(g){if(c===g.fileName)return!0;if(g.extendedSourceFiles){for(let d of g.extendedSourceFiles)if(c===d)return!0}}}return!1}containsScriptInfo(c){if(this.isRoot(c))return!0;if(!this.program)return!1;let g=this.program.getSourceFileByPath(c.path);return!!g&&g.resolvedPath===c.path}containsFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(c);return d&&(d.isScriptOpen()||!g)?this.containsScriptInfo(d):!1}isRoot(c){var g,d;return((d=(g=this.rootFilesMap)==null?void 0:g.get(c.path))==null?void 0:d.info)===c}addRoot(c,g){pe.assert(!this.isRoot(c)),this.rootFilesMap.set(c.path,{fileName:g||c.fileName,info:c}),c.attachToProject(this),this.markAsDirty()}addMissingFileRoot(c){let g=this.projectService.toPath(c);this.rootFilesMap.set(g,{fileName:c}),this.markAsDirty()}removeFile(c,g,d){this.isRoot(c)&&this.removeRoot(c),g?this.resolutionCache.removeResolutionsOfFile(c.path):this.resolutionCache.invalidateResolutionOfFile(c.path),this.cachedUnresolvedImportsPerFile.delete(c.path),d&&c.detachFromProject(this),this.markAsDirty()}registerFileUpdate(c){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(c)}markFileAsDirty(c){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(c)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var c;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(c=this.autoImportProviderHost)==null||c.markAsDirty()}onAutoImportProviderSettingsChanged(){this.markAutoImportProviderAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.markAutoImportProviderAsDirty()}onFileAddedOrRemoved(c){this.hasAddedorRemovedFiles=!0,c&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}onReleaseOldSourceFile(c,g,d,h){(!h||c.resolvedPath===c.path&&h.resolvedPath!==c.path)&&this.detachScriptInfoFromProject(c.fileName,d)}updateFromProject(){Sv(this)}updateGraph(){var c,g;(c=ki)==null||c.push(ki.Phase.Session,"updateGraph",{name:this.projectName,kind:kpe[this.projectKind]}),this.resolutionCache.startRecordingFilesWithChangedResolutions();let d=this.updateGraphWorker(),h=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;let _=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||tC;for(let R of _)this.cachedUnresolvedImportsPerFile.delete(R);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((d||_.length)&&(this.lastCachedUnresolvedImportsList=xOs(this.program,this.cachedUnresolvedImportsPerFile)),this.enqueueInstallTypingsForProject(h)):this.lastCachedUnresolvedImportsList=void 0;let S=this.projectProgramVersion===0&&d;return d&&this.projectProgramVersion++,h&&this.markAutoImportProviderAsDirty(),S&&this.getPackageJsonAutoImportProvider(),(g=ki)==null||g.pop(),!d}enqueueInstallTypingsForProject(c){let g=this.getTypeAcquisition();if(!g||!g.enable||this.projectService.typingsInstaller===NOe)return;let d=this.typingsCache;(c||!d||NOs(g,d.typeAcquisition)||DOs(this.getCompilationSettings(),d.compilerOptions)||kOs(this.lastCachedUnresolvedImportsList,d.unresolvedImports))&&(this.typingsCache={compilerOptions:this.getCompilationSettings(),typeAcquisition:g,unresolvedImports:this.lastCachedUnresolvedImportsList},this.projectService.typingsInstaller.enqueueInstallTypingsRequest(this,g,this.lastCachedUnresolvedImportsList))}updateTypingFiles(c,g,d,h){this.typingsCache={compilerOptions:c,typeAcquisition:g,unresolvedImports:d};let _=!g||!g.enable?tC:bo(h);ey(_,this.typingFiles,gd(!this.useCaseSensitiveFileNames()),Dc,S=>this.detachScriptInfoFromProject(S))&&(this.typingFiles=_,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Ly(this.typingWatchers,hv),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:KVe})}watchTypingLocations(c){if(!c){this.typingWatchers.isInvoked=!1;return}if(!c.length){this.closeWatchingTypingLocations();return}let g=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;let d=(h,_)=>{let S=this.toPath(h);if(g.delete(S),!this.typingWatchers.has(S)){let R=_==="FileWatcher"?eC.TypingInstallerLocationFile:eC.TypingInstallerLocationDirectory;this.typingWatchers.set(S,C1e(S)?_==="FileWatcher"?this.projectService.watchFactory.watchFile(h,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),R,this):this.projectService.watchFactory.watchDirectory(h,T=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!cA(T,".json"))return this.writeLog("Ignoring files that are not *.json");if(tI(T,Ro(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),R,this):(this.writeLog(`Skipping watcher creation at ${h}:: ${qst(R,this)}`),qie))}};for(let h of c){let _=dp(h);if(_==="package.json"||_==="bower.json"){d(h,"FileWatcher");continue}if(zh(this.currentDirectory,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){let S=h.indexOf(cg,this.currentDirectory.length+1);d(S!==-1?h.substr(0,S):h,"DirectoryWatcher");continue}if(zh(this.projectService.typingsInstaller.globalTypingsCacheLocation,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){d(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}d(h,"DirectoryWatcher")}g.forEach((h,_)=>{h.close(),this.typingWatchers.delete(_)})}getCurrentProgram(){return this.program}removeExistingTypings(c){if(!c.length)return c;let g=q9e(this.getCompilerOptions(),this);return Le(c,d=>!g.includes(d))}updateGraphWorker(){var c,g;let d=this.languageService.getCurrentProgram();pe.assert(d===this.program),pe.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);let h=Zg(),{hasInvalidatedResolutions:_,hasInvalidatedLibResolutions:S}=this.resolutionCache.createHasInvalidatedResolutions(As,As);this.hasInvalidatedResolutions=_,this.hasInvalidatedLibResolutions=S,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(c=ki)==null||c.push(ki.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,d),(g=ki)==null||g.pop(),pe.assert(d===void 0||this.program!==void 0);let R=!1;if(this.program&&(!d||this.program!==d&&this.program.structureIsReused!==2)){if(R=!0,this.rootFilesMap.forEach((V,M)=>{var ee;let re=this.program.getSourceFileByPath(M),ge=V.info;!re||((ee=V.info)==null?void 0:ee.path)===re.resolvedPath||(V.info=this.projectService.getScriptInfo(re.fileName),pe.assert(V.info.isAttached(this)),ge?.detachFromProject(this))}),vtt(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(V,M)=>this.addMissingFileWatcher(V,M)),this.generatedFilesMap){let V=this.compilerOptions.outFile;uJt(this.generatedFilesMap)?(!V||!this.isValidGeneratedFileWatcher(a0(V)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():V?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((M,ee)=>{let re=this.program.getSourceFileByPath(ee);(!re||re.resolvedPath!==ee||!this.isValidGeneratedFileWatcher(Pne(re.fileName,this.compilerOptions,this.program),M))&&(Ev(M),this.generatedFilesMap.delete(ee))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||d&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&d&&this.program&&RB(this.changedFilesForExportMapCache,V=>{let M=d.getSourceFileByPath(V),ee=this.program.getSourceFileByPath(V);return!M||!ee?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(M,ee,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());let T=this.externalFiles||tC;this.externalFiles=this.getExternalFiles(),ey(this.externalFiles,T,gd(!this.useCaseSensitiveFileNames()),V=>{let M=this.projectService.getOrCreateScriptInfoNotOpenedByClient(V,this.currentDirectory,this.directoryStructureHost,!1);M?.attachToProject(this)},V=>this.detachScriptInfoFromProject(V));let O=Zg()-h;return this.sendPerformanceEvent("UpdateGraph",O),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${R}${this.program?` structureIsReused:: ${xc[this.program.structureIsReused]}`:""} Elapsed: ${O}ms`),this.projectService.logger.isTestLogger?this.program!==d?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==d&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),R}sendPerformanceEvent(c,g){this.projectService.sendPerformanceEvent(c,g)}detachScriptInfoFromProject(c,g){let d=this.projectService.getScriptInfo(c);d&&(d.detachFromProject(this),g||this.resolutionCache.removeResolutionsOfFile(d.path))}addMissingFileWatcher(c,g){var d;if(g9(this)){let _=this.projectService.configFileExistenceInfoCache.get(c);if((d=_?.config)!=null&&d.projects.has(this.canonicalConfigFilePath))return qie}let h=this.projectService.watchFactory.watchFile(Xc(g,this.currentDirectory),(_,S)=>{g9(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(_,c,S),S===0&&this.missingFilesMap.has(c)&&(this.missingFilesMap.delete(c),h.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),eC.MissingFile,this);return h}isWatchedMissingFile(c){return!!this.missingFilesMap&&this.missingFilesMap.has(c)}addGeneratedFileWatch(c,g){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(c));else{let d=this.toPath(g);if(this.generatedFilesMap){if(uJt(this.generatedFilesMap)){pe.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(d))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(d,this.createGeneratedFileWatcher(c))}}createGeneratedFileWatcher(c){return{generatedFilePath:this.toPath(c),watcher:this.projectService.watchFactory.watchFile(c,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),eC.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(c,g){return this.toPath(c)===g.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(uJt(this.generatedFilesMap)?Ev(this.generatedFilesMap):Ly(this.generatedFilesMap,Ev),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&!g.isAttached(this)?zF.ThrowProjectDoesNotContainDocument(c,this):g}getScriptInfo(c){return this.projectService.getScriptInfo(c)}filesToString(c){return this.filesToStringWorker(c,!0,!1)}filesToStringWorker(c,g,d){if(this.initialLoadPending)return` Files (0) InitialLoadPending +`:d.prefix}}getInsertNodeAfterOptionsWorker(c){switch(c.kind){case 264:case 268:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 261:case 11:case 80:return{prefix:", "};case 304:return{suffix:","+this.newLineCharacter};case 95:return{prefix:" "};case 170:return{};default:return pe.assert(Lc(c)||NY(c)),{suffix:this.newLineCharacter}}}insertName(c,g,d){if(pe.assert(!g.name),g.kind===220){let h=ep(g,39,c),_=ep(g,21,c);_?(this.insertNodesAt(c,_.getStart(c),[me.createToken(100),me.createIdentifier(d)],{joiner:" "}),zF(this,c,h)):(this.insertText(c,ma(g.parameters).getStart(c),`function ${d}(`),this.replaceRange(c,h,me.createToken(22))),g.body.kind!==242&&(this.insertNodesAt(c,g.body.getStart(c),[me.createToken(19),me.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(c,g.body.end,[me.createToken(27),me.createToken(20)],{joiner:" "}))}else{let h=ep(g,g.kind===219?100:86,c).end;this.insertNodeAt(c,h,me.createIdentifier(d),{prefix:" "})}}insertExportModifier(c,g){this.insertText(c,g.getStart(c),"export ")}insertImportSpecifierAtIndex(c,g,d,h){let _=d.elements[h-1];_?this.insertNodeInListAfter(c,_,g):this.insertNodeBefore(c,d.elements[0],g,!vE(d.elements[0].getStart(),d.parent.parent.getStart(),c))}insertNodeInListAfter(c,g,d,h=_m.SmartIndenter.getContainingList(g,c)){if(!h){pe.fail("node is not a list element");return}let _=SW(h,g);if(_<0)return;let S=g.getEnd();if(_!==h.length-1){let R=Jc(c,g.end);if(R&&_st(g,R)){let T=h[_+1],O=hpn(c.text,T.getFullStart()),V=`${Vi(R.kind)}${c.text.substring(R.end,O)}`;this.insertNodesAt(c,O,[d],{suffix:V})}}else{let R=g.getStart(c),T=QB(R,c),O,V=!1;if(h.length===1)O=28;else{let M=Vm(g.pos,c);O=_st(g,M)?M.kind:28,V=QB(h[_-1].getStart(c),c)!==T}if((eWs(c.text,g.end)||!vE(h.pos,h.end,c))&&(V=!0),V){this.replaceRange(c,Ly(S),me.createToken(O));let M=_m.SmartIndenter.findFirstNonWhitespaceColumn(T,R,c,this.formatContext.options),ee=Yu(c.text,S,!0,!1);for(;ee!==S&&ml(c.text.charCodeAt(ee-1));)ee--;this.replaceRange(c,Ly(ee),d,{indentation:M,prefix:this.newLineCharacter})}else this.replaceRange(c,Ly(S),d,{prefix:`${Vi(O)} `})}}parenthesizeExpression(c,g){this.replaceRange(c,qbe(g),me.createParenthesizedExpression(g))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:c,sourceFile:g})=>{let[d,h]=oWs(c,g);if(d!==void 0&&h!==void 0){let _=yst(c).length===0,S=vE(d,h,g);_&&S&&d!==h-1&&this.deleteRange(g,Ly(d,h-1)),S&&this.insertText(g,h-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let c=new Set;for(let{sourceFile:g,node:d}of this.deletedNodes)this.deletedNodes.some(h=>h.sourceFile===g&&bMt(h.node,d))||(Ki(d)?this.deleteRange(g,$be(g,d)):T4t.deleteDeclaration(this,c,g,d));c.forEach(g=>{let d=g.getSourceFile(),h=_m.SmartIndenter.getContainingList(g,d);if(g!==Ei(h))return;let _=De(h,S=>!c.has(S),h.length-2);_!==-1&&this.deleteRange(d,{pos:h[_].end,end:B4t(d,h[_+1])})})}getChanges(c){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let g=bst.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,c);return this.newFileChanges&&this.newFileChanges.forEach((d,h)=>{g.push(bst.newFileChanges(h,d,this.newLineCharacter,this.formatContext))}),g}createNewFile(c,g,d){this.insertStatementsInNewFile(g,d,c)}};function nWs(s){if(s.kind!==220)return s;let c=s.parent.kind===173?s.parent:s.parent.parent;return c.jsDoc=s.jsDoc,c}function iWs(s,c){if(s.kind===c.kind)switch(s.kind){case 342:{let g=s,d=c;return Ir(g.name)&&Ir(d.name)&&g.name.escapedText===d.name.escapedText?me.createJSDocParameterTag(void 0,d.name,!1,d.typeExpression,d.isNameFirst,g.comment):void 0}case 343:return me.createJSDocReturnTag(void 0,c.typeExpression,s.comment);case 345:return me.createJSDocTypeTag(void 0,c.typeExpression,s.comment)}}function B4t(s,c){return Yu(s.text,qU(s,c,{leadingTriviaOption:1}),!1,!0)}function sWs(s,c,g,d){let h=B4t(s,d);if(g===void 0||vE(gq(s,c,{}),h,s))return h;let _=Vm(d.getStart(s),s);if(_st(c,_)){let S=Vm(c.getStart(s),s);if(_st(g,S)){let R=Yu(s.text,_.getEnd(),!0,!0);if(vE(S.getStart(s),_.getStart(s),s))return ml(s.text.charCodeAt(R-1))?R-1:R;if(ml(s.text.charCodeAt(R)))return R}}return h}function oWs(s,c){let g=ep(s,19,c),d=ep(s,20,c);return[g?.end,d?.end]}function yst(s){return ag(s)?s.properties:s.members}var bst;(s=>{function c(R,T,O,V){return Xt(Yn(R,M=>M.sourceFile.path),M=>{let ee=M[0].sourceFile,re=yo(M,(Ie,_e)=>Ie.range.pos-_e.range.pos||Ie.range.end-_e.range.end);for(let Ie=0;Ie`${JSON.stringify(re[Ie].range)} and ${JSON.stringify(re[Ie+1].range)}`);let ge=Xt(re,Ie=>{let _e=c9(Ie.range),Ee=Ie.kind===1?ms(xd(Ie.node))??Ie.sourceFile:Ie.kind===2?ms(xd(Ie.nodes[0]))??Ie.sourceFile:Ie.sourceFile,Ne=h(Ie,Ee,ee,T,O,V);if(!(_e.length===Ne.length&&nHt(Ee.text,Ne,_e.start)))return x1e(_e,Ne)});return ge.length>0?{fileName:ee.fileName,textChanges:ge}:void 0})}s.getTextChangesFromChanges=c;function g(R,T,O,V){let M=d(qAe(R),T,O,V);return{fileName:R,textChanges:[x1e($d(0,0),M)],isNewFile:!0}}s.newFileChanges=g;function d(R,T,O,V){let M=jt(T,ge=>ge.statements.map(Ie=>Ie===4?"":S(Ie,ge.oldFile,O).text)).join(O),ee=Oz("any file name",M,{languageVersion:99,jsDocParsingMode:1},!0,R),re=_m.formatDocument(ee,V);return w4t(M,re)+O}s.newFileChangesWorker=d;function h(R,T,O,V,M,ee){var re;if(R.kind===0)return"";if(R.kind===3)return R.text;let{options:ge={},range:{pos:Ie}}=R,_e=Te=>_(Te,T,O,Ie,ge,V,M,ee),Ee=R.kind===2?R.nodes.map(Te=>aa(_e(Te),V)).join(((re=R.options)==null?void 0:re.joiner)||V):_e(R.node),Ne=ge.indentation!==void 0||QB(Ie,T)===Ie?Ee:Ee.replace(/^\s+/,"");return(ge.prefix||"")+Ne+(!ge.suffix||di(Ne,ge.suffix)?"":ge.suffix)}function _(R,T,O,V,{indentation:M,prefix:ee,delta:re},ge,Ie,_e){let{node:Ee,text:Ne}=S(R,T,ge);_e&&_e(Ee,Ne);let Te=GWe(Ie,T),Ze=M!==void 0?M:_m.SmartIndenter.getIndentation(V,O,Te,ee===ge||QB(V,T)===V);re===void 0&&(re=_m.SmartIndenter.shouldIndentChildNode(Te,R)&&Te.indentSize||0);let Pe={text:Ne,getLineAndCharacterOfPosition(et){return Ra(this,et)}},Ke=_m.formatNodeGivenIndentation(Ee,Pe,T.languageVariant,Ze,re,{...Ie,options:Te});return w4t(Ne,Ke)}function S(R,T,O){let V=mpn(O),M=Q1e(O);return zW({newLine:M,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},V).writeNode(4,R,T,V),{text:V.getText(),node:Est(R)}}s.getNonformattedText=S})(bst||(bst={}));function w4t(s,c){for(let g=c.length-1;g>=0;g--){let{span:d,newText:h}=c[g];s=`${s.substring(0,d.start)}${h}${s.substring(Rs(d))}`}return s}function aWs(s){return Yu(s,0)===s.length}var cWs={...l1e,factory:mie(l1e.factory.flags|1,l1e.factory.baseFactory)};function Est(s){let c=_s(s,Est,cWs,lWs,Est),g=ap(c)?c:Object.create(c);return GB(g,dpn(s),ppn(s)),g}function lWs(s,c,g,d,h){let _=Os(s,c,g,d,h);if(!_)return _;pe.assert(s);let S=_===s?me.createNodeArray(_.slice(0)):_;return GB(S,dpn(s),ppn(s)),S}function mpn(s){let c=0,g=Pne(s),d=je=>{je&&E4t(je,c)},h=je=>{je&&S4t(je,c)},_=je=>{je&&E4t(je,c)},S=je=>{je&&S4t(je,c)},R=je=>{je&&E4t(je,c)},T=je=>{je&&S4t(je,c)};function O(je,Wt){if(Wt||!aWs(je)){c=g.getTextPos();let _r=0;for(;dc(je.charCodeAt(je.length-_r-1));)_r++;c-=_r}}function V(je){g.write(je),O(je,!1)}function M(je){g.writeComment(je)}function ee(je){g.writeKeyword(je),O(je,!1)}function re(je){g.writeOperator(je),O(je,!1)}function ge(je){g.writePunctuation(je),O(je,!1)}function Ie(je){g.writeTrailingSemicolon(je),O(je,!1)}function _e(je){g.writeParameter(je),O(je,!1)}function Ee(je){g.writeProperty(je),O(je,!1)}function Ne(je){g.writeSpace(je),O(je,!1)}function Te(je){g.writeStringLiteral(je),O(je,!1)}function Ze(je,Wt){g.writeSymbol(je,Wt),O(je,!1)}function Pe(je){g.writeLine(je)}function Ke(){g.increaseIndent()}function et(){g.decreaseIndent()}function Ye(){return g.getText()}function Tt(je){g.rawWrite(je),O(je,!1)}function at(je){g.writeLiteral(je),O(je,!0)}function Qe(){return g.getTextPos()}function Ct(){return g.getLine()}function mt(){return g.getColumn()}function yt(){return g.getIndent()}function Rt(){return g.isAtStartOfLine()}function Lt(){g.clear(),c=0}return{onBeforeEmitNode:d,onAfterEmitNode:h,onBeforeEmitNodeArray:_,onAfterEmitNodeArray:S,onBeforeEmitToken:R,onAfterEmitToken:T,write:V,writeComment:M,writeKeyword:ee,writeOperator:re,writePunctuation:ge,writeTrailingSemicolon:Ie,writeParameter:_e,writeProperty:Ee,writeSpace:Ne,writeStringLiteral:Te,writeSymbol:Ze,writeLine:Pe,increaseIndent:Ke,decreaseIndent:et,getText:Ye,rawWrite:Tt,writeLiteral:at,getTextPos:Qe,getLine:Ct,getColumn:mt,getIndent:yt,isAtStartOfLine:Rt,hasTrailingComment:()=>g.hasTrailingComment(),hasTrailingWhitespace:()=>g.hasTrailingWhitespace(),clear:Lt}}function uWs(s){let c;for(let O of s.statements)if(cS(O))c=O;else break;let g=0,d=s.text;if(c)return g=c.end,T(),g;let h=SB(d);h!==void 0&&(g=h.length,T());let _=CE(d,g);if(!_)return g;let S,R;for(let O of _){if(O.kind===3){if(B7(d,O.pos)){S={range:O,pinnedOrTripleSlash:!0};continue}}else if(rne(d,O.pos,O.end)){S={range:O,pinnedOrTripleSlash:!0};continue}if(S){if(S.pinnedOrTripleSlash)break;let V=s.getLineAndCharacterOfPosition(O.pos).line,M=s.getLineAndCharacterOfPosition(S.range.end).line;if(V>=M+2)break}if(s.statements.length){R===void 0&&(R=s.getLineAndCharacterOfPosition(s.statements[0].getStart()).line);let V=s.getLineAndCharacterOfPosition(O.end).line;if(R{function c(_,S,R,T){switch(T.kind){case 170:{let re=T.parent;gA(re)&&re.parameters.length===1&&!ep(re,21,R)?_.replaceNodeWithText(R,T,"()"):C2e(_,S,R,T);break}case 273:case 272:let O=R.imports.length&&T===ma(R.imports).parent||T===de(R.statements,vW);zF(_,R,T,{leadingTriviaOption:O?0:jm(T)?2:3});break;case 209:let V=T.parent;V.kind===208&&T!==Ei(V.elements)?zF(_,R,T):C2e(_,S,R,T);break;case 261:h(_,S,R,T);break;case 169:C2e(_,S,R,T);break;case 277:let ee=T.parent;ee.elements.length===1?d(_,R,ee):C2e(_,S,R,T);break;case 275:d(_,R,T);break;case 27:zF(_,R,T,{trailingTriviaOption:0});break;case 100:zF(_,R,T,{leadingTriviaOption:0});break;case 264:case 263:zF(_,R,T,{leadingTriviaOption:jm(T)?2:3});break;default:T.parent?Yw(T.parent)&&T.parent.name===T?g(_,R,T.parent):Ll(T.parent)&&k(T.parent.arguments,T)?C2e(_,S,R,T):zF(_,R,T):zF(_,R,T)}}s.deleteDeclaration=c;function g(_,S,R){if(!R.namedBindings)zF(_,S,R.parent);else{let T=R.name.getStart(S),O=Jc(S,R.name.end);if(O&&O.kind===28){let V=Yu(S.text,O.end,!1,!0);_.deleteRange(S,{pos:T,end:V})}else zF(_,S,R.name)}}function d(_,S,R){if(R.parent.name){let T=pe.checkDefined(Jc(S,R.pos-1));_.deleteRange(S,{pos:T.getStart(S),end:R.end})}else{let T=KL(R,273);zF(_,S,T)}}function h(_,S,R,T){let{parent:O}=T;if(O.kind===300){_.deleteNodeRange(R,ep(O,21,R),ep(O,22,R));return}if(O.declarations.length!==1){C2e(_,S,R,T);return}let V=O.parent;switch(V.kind){case 251:case 250:_.replaceNode(R,T,me.createObjectLiteralExpression());break;case 249:zF(_,R,O);break;case 244:zF(_,R,V,{leadingTriviaOption:jm(V)?2:3});break;default:pe.assertNever(V)}}})(T4t||(T4t={}));function zF(s,c,g,d={leadingTriviaOption:1}){let h=qU(c,g,d),_=gq(c,g,d);s.deleteRange(c,{pos:h,end:_})}function C2e(s,c,g,d){let h=pe.checkDefined(_m.SmartIndenter.getContainingList(d,g)),_=SW(h,d);if(pe.assert(_!==-1),h.length===1){zF(s,g,d);return}pe.assert(!c.has(d),"Deleting a node twice"),c.add(d),s.deleteRange(g,{pos:B4t(g,d),end:_===h.length-1?gq(g,d,{}):sWs(g,d,h[_-1],h[_+1])})}var _m={};o(_m,{FormattingContext:()=>ypn,FormattingRequestKind:()=>_pn,RuleAction:()=>bpn,RuleFlags:()=>Epn,SmartIndenter:()=>LN,anyContext:()=>Sst,createTextRangeWithKind:()=>Tst,formatDocument:()=>rOs,formatNodeGivenIndentation:()=>lOs,formatOnClosingCurly:()=>tOs,formatOnEnter:()=>qWs,formatOnOpeningCurly:()=>eOs,formatOnSemicolon:()=>$Ws,formatSelection:()=>nOs,getAllRules:()=>Spn,getFormatContext:()=>YWs,getFormattingScanner:()=>R4t,getIndentationString:()=>H4t,getRangeOfEnclosingComment:()=>Kpn});var _pn=(s=>(s[s.FormatDocument=0]="FormatDocument",s[s.FormatSelection=1]="FormatSelection",s[s.FormatOnEnter=2]="FormatOnEnter",s[s.FormatOnSemicolon=3]="FormatOnSemicolon",s[s.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",s[s.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",s))(_pn||{}),ypn=class{constructor(s,c,g){this.sourceFile=s,this.formattingRequestKind=c,this.options=g}updateContext(s,c,g,d,h){this.currentTokenSpan=pe.checkDefined(s),this.currentTokenParent=pe.checkDefined(c),this.nextTokenSpan=pe.checkDefined(g),this.nextTokenParent=pe.checkDefined(d),this.contextNode=pe.checkDefined(h),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let s=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,c=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=s===c}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(s){let c=this.sourceFile.getLineAndCharacterOfPosition(s.getStart(this.sourceFile)).line,g=this.sourceFile.getLineAndCharacterOfPosition(s.getEnd()).line;return c===g}BlockIsOnOneLine(s){let c=ep(s,19,this.sourceFile),g=ep(s,20,this.sourceFile);if(c&&g){let d=this.sourceFile.getLineAndCharacterOfPosition(c.getEnd()).line,h=this.sourceFile.getLineAndCharacterOfPosition(g.getStart(this.sourceFile)).line;return d===h}return!1}},AWs=Nb(99,!1,0),dWs=Nb(99,!1,1);function R4t(s,c,g,d,h){let _=c===1?dWs:AWs;_.setText(s),_.resetTokenState(g);let S=!0,R,T,O,V,M,ee=h({advance:re,readTokenInfo:Pe,readEOFTokenRange:et,isOnToken:Ye,isOnEOF:Tt,getCurrentLeadingTrivia:()=>R,lastTrailingTriviaWasNewLine:()=>S,skipToEndOf:Qe,skipToStartOf:Ct,getTokenFullStart:()=>M?.token.pos??_.getTokenStart(),getStartPos:()=>M?.token.pos??_.getTokenStart()});return M=void 0,_.setText(void 0),ee;function re(){M=void 0,_.getTokenFullStart()!==g?S=!!T&&Ei(T).kind===4:_.scan(),R=void 0,T=void 0;let yt=_.getTokenFullStart();for(;yt(s[s.None=0]="None",s[s.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",s[s.StopProcessingTokenActions=2]="StopProcessingTokenActions",s[s.InsertSpace=4]="InsertSpace",s[s.InsertNewLine=8]="InsertNewLine",s[s.DeleteSpace=16]="DeleteSpace",s[s.DeleteToken=32]="DeleteToken",s[s.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",s[s.StopAction=3]="StopAction",s[s.ModifySpaceAction=28]="ModifySpaceAction",s[s.ModifyTokenAction=96]="ModifyTokenAction",s))(bpn||{}),Epn=(s=>(s[s.None=0]="None",s[s.CanDeleteNewLines=1]="CanDeleteNewLines",s))(Epn||{});function Spn(){let s=[];for(let Ke=0;Ke<=166;Ke++)Ke!==1&&s.push(Ke);function c(...Ke){return{tokens:s.filter(et=>!Ke.some(Ye=>Ye===et)),isSpecific:!1}}let g={tokens:s,isSpecific:!1},d=Npe([...s,3]),h=Npe([...s,1]),_=Bpn(83,166),S=Bpn(30,79),R=[103,104,165,130,142,152],T=[46,47,55,54],O=[9,10,80,21,23,19,110,105],V=[80,21,110,105],M=[80,22,24,105],ee=[80,21,110,105],re=[80,22,24,105],ge=[2,3],Ie=[80,...nnt],_e=d,Ee=Npe([80,32,3,86,95,102]),Ne=Npe([22,3,92,113,98,93,85]),Te=[Fa("IgnoreBeforeComment",g,ge,Sst,1),Fa("IgnoreAfterLineComment",2,g,Sst,1),Fa("NotSpaceBeforeColon",g,59,[hl,SOe,Rpn],16),Fa("SpaceAfterColon",59,g,[hl,SOe,NWs],4),Fa("NoSpaceBeforeQuestionMark",g,58,[hl,SOe,Rpn],16),Fa("SpaceAfterQuestionMarkInConditionalOperator",58,g,[hl,hWs],4),Fa("NoSpaceAfterQuestionMark",58,g,[hl,IWs],16),Fa("NoSpaceBeforeDot",g,[25,29],[hl,HWs],16),Fa("NoSpaceAfterDot",[25,29],g,[hl],16),Fa("NoSpaceBetweenImportParenInImportType",102,21,[hl,TWs],16),Fa("NoSpaceAfterUnaryPrefixOperator",T,O,[hl,SOe],16),Fa("NoSpaceAfterUnaryPreincrementOperator",46,V,[hl],16),Fa("NoSpaceAfterUnaryPredecrementOperator",47,ee,[hl],16),Fa("NoSpaceBeforeUnaryPostincrementOperator",M,46,[hl,Qpn],16),Fa("NoSpaceBeforeUnaryPostdecrementOperator",re,47,[hl,Qpn],16),Fa("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[hl,rO],4),Fa("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[hl,rO],4),Fa("SpaceAfterAddWhenFollowedByPreincrement",40,46,[hl,rO],4),Fa("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[hl,rO],4),Fa("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[hl,rO],4),Fa("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[hl,rO],4),Fa("NoSpaceAfterCloseBrace",20,[28,27],[hl],16),Fa("NewLineBeforeCloseBraceInBlockContext",d,20,[Dpn],8),Fa("SpaceAfterCloseBrace",20,c(22),[hl,_Ws],4),Fa("SpaceBetweenCloseBraceAndElse",20,93,[hl],4),Fa("SpaceBetweenCloseBraceAndWhile",20,117,[hl],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[hl,Lpn],16),Fa("SpaceAfterConditionalClosingParen",22,23,[vOe],4),Fa("NoSpaceBetweenFunctionKeywordAndStar",100,42,[Gpn],16),Fa("SpaceAfterStarInGeneratorDeclaration",42,80,[Gpn],4),Fa("SpaceAfterFunctionInFuncDecl",100,g,[$U],4),Fa("NewLineAfterOpenBraceInBlockContext",19,g,[Dpn],8),Fa("SpaceAfterGetSetInMember",[139,153],80,[$U],4),Fa("NoSpaceBetweenYieldKeywordAndStar",127,42,[hl,Ypn],16),Fa("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],g,[hl,Ypn],4),Fa("NoSpaceBetweenReturnAndSemicolon",107,27,[hl],16),Fa("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],g,[hl],4),Fa("SpaceAfterLetConstInVariableDeclaration",[121,87],g,[hl,xWs],4),Fa("NoSpaceBeforeOpenParenInFuncCall",g,21,[hl,EWs,SWs],16),Fa("SpaceBeforeBinaryKeywordOperator",g,R,[hl,rO],4),Fa("SpaceAfterBinaryKeywordOperator",R,g,[hl,rO],4),Fa("SpaceAfterVoidOperator",116,g,[hl,VWs],4),Fa("SpaceBetweenAsyncAndOpenParen",134,21,[wWs,hl],4),Fa("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[hl],4),Fa("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[hl],16),Fa("SpaceBeforeJsxAttribute",g,80,[RWs,hl],4),Fa("SpaceBeforeSlashInJsxOpeningElement",g,44,[Ppn,hl],4),Fa("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[Ppn,hl],16),Fa("NoSpaceBeforeEqualInJsxAttribute",g,64,[Wpn,hl],16),Fa("NoSpaceAfterEqualInJsxAttribute",64,g,[Wpn,hl],16),Fa("NoSpaceBeforeJsxNamespaceColon",80,59,[Opn],16),Fa("NoSpaceAfterJsxNamespaceColon",59,80,[Opn],16),Fa("NoSpaceAfterModuleImport",[144,149],21,[hl],16),Fa("SpaceAfterCertainTypeScriptKeywords",[128,129,86,138,90,94,95,96,139,119,102,120,144,145,123,125,124,148,153,126,156,161,143,140],g,[hl],4),Fa("SpaceBeforeCertainTypeScriptKeywords",g,[96,119,161],[hl],4),Fa("SpaceAfterModuleName",11,19,[GWs],4),Fa("SpaceBeforeArrow",g,39,[hl],4),Fa("SpaceAfterArrow",39,g,[hl],4),Fa("NoSpaceAfterEllipsis",26,80,[hl],16),Fa("NoSpaceAfterOptionalParameters",58,[22,28],[hl,SOe],16),Fa("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[hl,FWs],16),Fa("NoSpaceBeforeOpenAngularBracket",Ie,30,[hl,BOe],16),Fa("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[hl,BOe],16),Fa("NoSpaceAfterOpenAngularBracket",30,g,[hl,BOe],16),Fa("NoSpaceBeforeCloseAngularBracket",g,32,[hl,BOe],16),Fa("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[hl,BOe,CWs,LWs],16),Fa("SpaceBeforeAt",[22,80],60,[hl],4),Fa("NoSpaceAfterAt",60,g,[hl],16),Fa("SpaceAfterDecorator",g,[128,80,95,90,86,126,125,123,124,139,153,23,42],[kWs],4),Fa("NoSpaceBeforeNonNullAssertionOperator",g,54,[hl,WWs],16),Fa("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[hl,ZWs],16),Fa("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[hl],4)],Ze=[Fa("SpaceAfterConstructor",137,21,[hS("insertSpaceAfterConstructor"),hl],4),Fa("NoSpaceAfterConstructor",137,21,[ZN("insertSpaceAfterConstructor"),hl],16),Fa("SpaceAfterComma",28,g,[hS("insertSpaceAfterCommaDelimiter"),hl,Z4t,vWs,BWs],4),Fa("NoSpaceAfterComma",28,g,[ZN("insertSpaceAfterCommaDelimiter"),hl,Z4t],16),Fa("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[hS("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),$U],4),Fa("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[ZN("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),$U],16),Fa("SpaceAfterKeywordInControl",_,21,[hS("insertSpaceAfterKeywordsInControlFlowStatements"),vOe],4),Fa("NoSpaceAfterKeywordInControl",_,21,[ZN("insertSpaceAfterKeywordsInControlFlowStatements"),vOe],16),Fa("SpaceAfterOpenParen",21,g,[hS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],4),Fa("SpaceBeforeCloseParen",g,22,[hS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],4),Fa("SpaceBetweenOpenParens",21,21,[hS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],4),Fa("NoSpaceBetweenParens",21,22,[hl],16),Fa("NoSpaceAfterOpenParen",21,g,[ZN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],16),Fa("NoSpaceBeforeCloseParen",g,22,[ZN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),hl],16),Fa("SpaceAfterOpenBracket",23,g,[hS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],4),Fa("SpaceBeforeCloseBracket",g,24,[hS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],4),Fa("NoSpaceBetweenBrackets",23,24,[hl],16),Fa("NoSpaceAfterOpenBracket",23,g,[ZN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],16),Fa("NoSpaceBeforeCloseBracket",g,24,[ZN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),hl],16),Fa("SpaceAfterOpenBrace",19,g,[Tpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Npn],4),Fa("SpaceBeforeCloseBrace",g,20,[Tpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Npn],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[hl,Lpn],16),Fa("NoSpaceAfterOpenBrace",19,g,[N4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),hl],16),Fa("NoSpaceBeforeCloseBrace",g,20,[N4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),hl],16),Fa("SpaceBetweenEmptyBraceBrackets",19,20,[hS("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[N4t("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),hl],16),Fa("SpaceAfterTemplateHeadAndMiddle",[16,17],g,[hS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Vpn],4,1),Fa("SpaceBeforeTemplateMiddleAndTail",g,[17,18],[hS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),hl],4),Fa("NoSpaceAfterTemplateHeadAndMiddle",[16,17],g,[ZN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Vpn],16,1),Fa("NoSpaceBeforeTemplateMiddleAndTail",g,[17,18],[ZN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),hl],16),Fa("SpaceAfterOpenBraceInJsxExpression",19,g,[hS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,Bst],4),Fa("SpaceBeforeCloseBraceInJsxExpression",g,20,[hS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,Bst],4),Fa("NoSpaceAfterOpenBraceInJsxExpression",19,g,[ZN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,Bst],16),Fa("NoSpaceBeforeCloseBraceInJsxExpression",g,20,[ZN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),hl,Bst],16),Fa("SpaceAfterSemicolonInFor",27,g,[hS("insertSpaceAfterSemicolonInForStatements"),hl,k4t],4),Fa("NoSpaceAfterSemicolonInFor",27,g,[ZN("insertSpaceAfterSemicolonInForStatements"),hl,k4t],16),Fa("SpaceBeforeBinaryOperator",g,S,[hS("insertSpaceBeforeAndAfterBinaryOperators"),hl,rO],4),Fa("SpaceAfterBinaryOperator",S,g,[hS("insertSpaceBeforeAndAfterBinaryOperators"),hl,rO],4),Fa("NoSpaceBeforeBinaryOperator",g,S,[ZN("insertSpaceBeforeAndAfterBinaryOperators"),hl,rO],16),Fa("NoSpaceAfterBinaryOperator",S,g,[ZN("insertSpaceBeforeAndAfterBinaryOperators"),hl,rO],16),Fa("SpaceBeforeOpenParenInFuncDecl",g,21,[hS("insertSpaceBeforeFunctionParenthesis"),hl,$U],4),Fa("NoSpaceBeforeOpenParenInFuncDecl",g,21,[ZN("insertSpaceBeforeFunctionParenthesis"),hl,$U],16),Fa("NewLineBeforeOpenBraceInControl",Ne,19,[hS("placeOpenBraceOnNewLineForControlBlocks"),vOe,F4t],8,1),Fa("NewLineBeforeOpenBraceInFunction",_e,19,[hS("placeOpenBraceOnNewLineForFunctions"),$U,F4t],8,1),Fa("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[hS("placeOpenBraceOnNewLineForFunctions"),Fpn,F4t],8,1),Fa("SpaceAfterTypeAssertion",32,g,[hS("insertSpaceAfterTypeAssertion"),hl,V4t],4),Fa("NoSpaceAfterTypeAssertion",32,g,[ZN("insertSpaceAfterTypeAssertion"),hl,V4t],16),Fa("SpaceBeforeTypeAnnotation",g,[58,59],[hS("insertSpaceBeforeTypeAnnotation"),hl,x4t],4),Fa("NoSpaceBeforeTypeAnnotation",g,[58,59],[ZN("insertSpaceBeforeTypeAnnotation"),hl,x4t],16),Fa("NoOptionalSemicolon",27,h,[wpn("semicolons","remove"),PWs],32),Fa("OptionalSemicolon",g,h,[wpn("semicolons","insert"),MWs],64)],Pe=[Fa("NoSpaceBeforeSemicolon",g,27,[hl],16),Fa("SpaceBeforeOpenBraceInControl",Ne,19,[D4t("placeOpenBraceOnNewLineForControlBlocks"),vOe,L4t,G4t],4,1),Fa("SpaceBeforeOpenBraceInFunction",_e,19,[D4t("placeOpenBraceOnNewLineForFunctions"),$U,vst,L4t,G4t],4,1),Fa("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[D4t("placeOpenBraceOnNewLineForFunctions"),Fpn,L4t,G4t],4,1),Fa("NoSpaceBeforeComma",g,28,[hl],16),Fa("NoSpaceBeforeOpenBracket",c(134,84),23,[hl],16),Fa("NoSpaceAfterCloseBracket",24,g,[hl,DWs],16),Fa("SpaceAfterSemicolon",27,g,[hl],4),Fa("SpaceBetweenForAndAwaitKeyword",99,135,[hl],4),Fa("SpaceBetweenDotDotDotAndTypeName",26,Ie,[hl],16),Fa("SpaceBetweenStatements",[22,92,93,84],g,[hl,Z4t,pWs],4),Fa("SpaceAfterTryCatchFinally",[113,85,98],19,[hl],4)];return[...Te,...Ze,...Pe]}function Fa(s,c,g,d,h,_=0){return{leftTokenRange:vpn(c),rightTokenRange:vpn(g),rule:{debugName:s,context:d,action:h,flags:_}}}function Npe(s){return{tokens:s,isSpecific:!0}}function vpn(s){return typeof s=="number"?Npe([s]):Ki(s)?Npe(s):s}function Bpn(s,c,g=[]){let d=[];for(let h=s;h<=c;h++)k(g,h)||d.push(h);return Npe(d)}function wpn(s,c){return g=>g.options&&g.options[s]===c}function hS(s){return c=>c.options&&Da(c.options,s)&&!!c.options[s]}function N4t(s){return c=>c.options&&Da(c.options,s)&&!c.options[s]}function ZN(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]}function D4t(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]||c.TokensAreOnSameLine()}function Tpn(s){return c=>!c.options||!Da(c.options,s)||!!c.options[s]}function k4t(s){return s.contextNode.kind===249}function pWs(s){return!k4t(s)}function rO(s){switch(s.contextNode.kind){case 227:return s.contextNode.operatorToken.kind!==28;case 228:case 195:case 235:case 282:case 277:case 183:case 193:case 194:case 239:return!0;case 209:case 266:case 272:case 278:case 261:case 170:case 307:case 173:case 172:return s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 250:case 169:return s.currentTokenSpan.kind===103||s.nextTokenSpan.kind===103||s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 251:return s.currentTokenSpan.kind===165||s.nextTokenSpan.kind===165}return!1}function SOe(s){return!rO(s)}function Rpn(s){return!x4t(s)}function x4t(s){let c=s.contextNode.kind;return c===173||c===172||c===170||c===261||mW(c)}function fWs(s){return pi(s.contextNode)&&s.contextNode.questionToken}function IWs(s){return!fWs(s)}function hWs(s){return s.contextNode.kind===228||s.contextNode.kind===195}function G4t(s){return s.TokensAreOnSameLine()||vst(s)}function Npn(s){return s.contextNode.kind===207||s.contextNode.kind===201||mWs(s)}function F4t(s){return vst(s)&&!(s.NextNodeAllOnSameLine()||s.NextNodeBlockIsOnOneLine())}function Dpn(s){return kpn(s)&&!(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function mWs(s){return kpn(s)&&(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function kpn(s){return xpn(s.contextNode)}function vst(s){return xpn(s.nextTokenParent)}function xpn(s){if(Zpn(s))return!0;switch(s.kind){case 242:case 270:case 211:case 269:return!0}return!1}function $U(s){switch(s.contextNode.kind){case 263:case 175:case 174:case 178:case 179:case 180:case 219:case 177:case 220:case 265:return!0}return!1}function CWs(s){return!$U(s)}function Gpn(s){return s.contextNode.kind===263||s.contextNode.kind===219}function Fpn(s){return Zpn(s.contextNode)}function Zpn(s){switch(s.kind){case 264:case 232:case 265:case 267:case 188:case 268:case 279:case 280:case 273:case 276:return!0}return!1}function _Ws(s){switch(s.currentTokenParent.kind){case 264:case 268:case 267:case 300:case 269:case 256:return!0;case 242:{let c=s.currentTokenParent.parent;if(!c||c.kind!==220&&c.kind!==219)return!0}}return!1}function vOe(s){switch(s.contextNode.kind){case 246:case 256:case 249:case 250:case 251:case 248:case 259:case 247:case 255:case 300:return!0;default:return!1}}function Lpn(s){return s.contextNode.kind===211}function yWs(s){return s.contextNode.kind===214}function bWs(s){return s.contextNode.kind===215}function EWs(s){return yWs(s)||bWs(s)}function SWs(s){return s.currentTokenSpan.kind!==28}function vWs(s){return s.nextTokenSpan.kind!==24}function BWs(s){return s.nextTokenSpan.kind!==22}function wWs(s){return s.contextNode.kind===220}function TWs(s){return s.contextNode.kind===206}function hl(s){return s.TokensAreOnSameLine()&&s.contextNode.kind!==12}function Vpn(s){return s.contextNode.kind!==12}function Z4t(s){return s.contextNode.kind!==285&&s.contextNode.kind!==289}function Bst(s){return s.contextNode.kind===295||s.contextNode.kind===294}function RWs(s){return s.nextTokenParent.kind===292||s.nextTokenParent.kind===296&&s.nextTokenParent.parent.kind===292}function Wpn(s){return s.contextNode.kind===292}function NWs(s){return s.nextTokenParent.kind!==296}function Opn(s){return s.nextTokenParent.kind===296}function Ppn(s){return s.contextNode.kind===286}function DWs(s){return!$U(s)&&!vst(s)}function kWs(s){return s.TokensAreOnSameLine()&&m1(s.contextNode)&&Mpn(s.currentTokenParent)&&!Mpn(s.nextTokenParent)}function Mpn(s){for(;s&&un(s);)s=s.parent;return s&&s.kind===171}function xWs(s){return s.currentTokenParent.kind===262&&s.currentTokenParent.getStart(s.sourceFile)===s.currentTokenSpan.pos}function L4t(s){return s.formattingRequestKind!==2}function GWs(s){return s.contextNode.kind===268}function FWs(s){return s.contextNode.kind===188}function ZWs(s){return s.contextNode.kind===181}function Hpn(s,c){if(s.kind!==30&&s.kind!==32)return!1;switch(c.kind){case 184:case 217:case 266:case 264:case 232:case 265:case 263:case 219:case 220:case 175:case 174:case 180:case 181:case 214:case 215:case 234:return!0;default:return!1}}function BOe(s){return Hpn(s.currentTokenSpan,s.currentTokenParent)||Hpn(s.nextTokenSpan,s.nextTokenParent)}function V4t(s){return s.contextNode.kind===217}function LWs(s){return!V4t(s)}function VWs(s){return s.currentTokenSpan.kind===116&&s.currentTokenParent.kind===223}function Ypn(s){return s.contextNode.kind===230&&s.contextNode.expression!==void 0}function WWs(s){return s.contextNode.kind===236}function Qpn(s){return!OWs(s)}function OWs(s){switch(s.contextNode.kind){case 246:case 249:case 250:case 251:case 247:case 248:return!0;default:return!1}}function PWs(s){let c=s.nextTokenSpan.kind,g=s.nextTokenSpan.pos;if(gU(c)){let _=s.nextTokenParent===s.currentTokenParent?wQ(s.currentTokenParent,ji(s.currentTokenParent,S=>!S.parent),s.sourceFile):s.nextTokenParent.getFirstToken(s.sourceFile);if(!_)return!0;c=_.kind,g=_.getStart(s.sourceFile)}let d=s.sourceFile.getLineAndCharacterOfPosition(s.currentTokenSpan.pos).line,h=s.sourceFile.getLineAndCharacterOfPosition(g).line;return d===h?c===20||c===1:c===27&&s.currentTokenSpan.kind===27?!0:c===241||c===27?!1:s.contextNode.kind===265||s.contextNode.kind===266?!ss(s.currentTokenParent)||!!s.currentTokenParent.type||c!==21:pi(s.currentTokenParent)?!s.currentTokenParent.initializer:s.currentTokenParent.kind!==249&&s.currentTokenParent.kind!==243&&s.currentTokenParent.kind!==241&&c!==23&&c!==21&&c!==40&&c!==41&&c!==44&&c!==14&&c!==28&&c!==229&&c!==16&&c!==15&&c!==25}function MWs(s){return BWe(s.currentTokenSpan.end,s.currentTokenParent,s.sourceFile)}function HWs(s){return!jo(s.contextNode)||!yC(s.contextNode.expression)||s.contextNode.expression.getText().includes(".")}function YWs(s,c){return{options:s,getRules:QWs(),host:c}}var W4t;function QWs(){return W4t===void 0&&(W4t=JWs(Spn())),W4t}function XWs(s){let c=0;return s&1&&(c|=28),s&2&&(c|=96),s&28&&(c|=28),s&96&&(c|=96),c}function JWs(s){let c=UWs(s);return g=>{let d=c[Xpn(g.currentTokenSpan.kind,g.nextTokenSpan.kind)];if(d){let h=[],_=0;for(let S of d){let R=~XWs(_);S.action&R&&ue(S.context,T=>T(g))&&(h.push(S),_|=S.action)}if(h.length)return h}}}function UWs(s){let c=new Array(O4t*O4t),g=new Array(c.length);for(let d of s){let h=d.leftTokenRange.isSpecific&&d.rightTokenRange.isSpecific;for(let _ of d.leftTokenRange.tokens)for(let S of d.rightTokenRange.tokens){let R=Xpn(_,S),T=c[R];T===void 0&&(T=c[R]=[]),KWs(T,d.rule,h,g,R)}}return c}function Xpn(s,c){return pe.assert(s<=166&&c<=166,"Must compute formatting context from tokens"),s*O4t+c}var Dpe=5,wst=31,O4t=167,_2e=(s=>(s[s.StopRulesSpecific=0]="StopRulesSpecific",s[s.StopRulesAny=Dpe*1]="StopRulesAny",s[s.ContextRulesSpecific=Dpe*2]="ContextRulesSpecific",s[s.ContextRulesAny=Dpe*3]="ContextRulesAny",s[s.NoContextRulesSpecific=Dpe*4]="NoContextRulesSpecific",s[s.NoContextRulesAny=Dpe*5]="NoContextRulesAny",s))(_2e||{});function KWs(s,c,g,d,h){let _=c.action&3?g?0:_2e.StopRulesAny:c.context!==Sst?g?_2e.ContextRulesSpecific:_2e.ContextRulesAny:g?_2e.NoContextRulesSpecific:_2e.NoContextRulesAny,S=d[h]||0;s.splice(jWs(S,_),0,c),d[h]=zWs(S,_)}function jWs(s,c){let g=0;for(let d=0;d<=c;d+=Dpe)g+=s&wst,s>>=Dpe;return g}function zWs(s,c){let g=(s>>c&wst)+1;return pe.assert((g&wst)===g,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),s&~(wst<pe.formatSyntaxKind(g)}),d}function qWs(s,c,g){let d=c.getLineAndCharacterOfPosition(s).line;if(d===0)return[];let h=LY(d,c);for(;hu(c.text.charCodeAt(h));)h--;ml(c.text.charCodeAt(h))&&h--;let _={pos:JD(d-1,c),end:h+1};return wOe(_,c,g,2)}function $Ws(s,c,g){let d=P4t(s,27,c);return Jpn(M4t(d),c,g,3)}function eOs(s,c,g){let d=P4t(s,19,c);if(!d)return[];let h=d.parent,_=M4t(h),S={pos:QB(_.getStart(c),c),end:s};return wOe(S,c,g,4)}function tOs(s,c,g){let d=P4t(s,20,c);return Jpn(M4t(d),c,g,5)}function rOs(s,c){let g={pos:0,end:s.text.length};return wOe(g,s,c,0)}function nOs(s,c,g,d){let h={pos:QB(s,g),end:c};return wOe(h,g,d,1)}function P4t(s,c,g){let d=Vm(s,g);return d&&d.kind===c&&s===d.getEnd()?d:void 0}function M4t(s){let c=s;for(;c&&c.parent&&c.parent.end===s.end&&!iOs(c.parent,c);)c=c.parent;return c}function iOs(s,c){switch(s.kind){case 264:case 265:return gy(s.members,c);case 268:let g=s.body;return!!g&&g.kind===269&&gy(g.statements,c);case 308:case 242:case 269:return gy(s.statements,c);case 300:return gy(s.block.statements,c)}return!1}function sOs(s,c){return g(c);function g(d){let h=Lu(d,_=>ZAe(_.getStart(c),_.end,s)&&_);if(h){let _=g(h);if(_)return _}return d}}function oOs(s,c){if(!s.length)return h;let g=s.filter(_=>ope(c,_.start,_.start+_.length)).sort((_,S)=>_.start-S.start);if(!g.length)return h;let d=0;return _=>{for(;;){if(d>=g.length)return!1;let S=g[d];if(_.end<=S.start)return!1;if(oWe(_.pos,_.end,S.start,S.start+S.length))return!0;d++}};function h(){return!1}}function aOs(s,c,g){let d=s.getStart(g);if(d===c.pos&&s.end===c.end)return d;let h=Vm(c.pos,g);return!h||h.end>=c.pos?s.pos:h.end}function cOs(s,c,g){let d=-1,h;for(;s;){let _=g.getLineAndCharacterOfPosition(s.getStart(g)).line;if(d!==-1&&_!==d)break;if(LN.shouldIndentChildNode(c,s,h,g))return c.indentSize;d=_,h=s,s=s.parent}return 0}function lOs(s,c,g,d,h,_){let S={pos:s.pos,end:s.end};return R4t(c.text,g,S.pos,S.end,R=>Upn(S,s,d,h,R,_,1,T=>!1,c))}function Jpn(s,c,g,d){if(!s)return[];let h={pos:QB(s.getStart(c),c),end:s.end};return wOe(h,c,g,d)}function wOe(s,c,g,d){let h=sOs(s,c);return R4t(c.text,c.languageVariant,aOs(h,s,c),s.end,_=>Upn(s,h,LN.getIndentationForNode(h,s,c,g.options),cOs(h,g.options,c),_,g,d,oOs(c.parseDiagnostics,s),c))}function Upn(s,c,g,d,h,{options:_,getRules:S,host:R},T,O,V){var M;let ee=new ypn(V,T,_),re,ge,Ie,_e,Ee,Ne=-1,Te=[];if(h.advance(),h.isOnToken()){let dt=V.getLineAndCharacterOfPosition(c.getStart(V)).line,pr=dt;m1(c)&&(pr=V.getLineAndCharacterOfPosition(nne(c,V)).line),Tt(c,c,dt,pr,g,d)}let Ze=h.getCurrentLeadingTrivia();if(Ze){let dt=LN.nodeWillIndentChild(_,c,void 0,V,!1)?g+_.indentSize:g;at(Ze,dt,!0,pr=>{Ct(pr,V.getLineAndCharacterOfPosition(pr.pos),c,c,void 0),yt(pr.pos,dt,!1)}),_.trimTrailingWhitespace!==!1&&Gt(Ze)}if(ge&&h.getTokenFullStart()>=s.end){let dt=h.isOnEOF()?h.readEOFTokenRange():h.isOnToken()?h.readTokenInfo(c).token:void 0;if(dt&&dt.pos===re){let pr=((M=Vm(dt.end,V,c))==null?void 0:M.parent)||Ie;mt(dt,V.getLineAndCharacterOfPosition(dt.pos).line,pr,ge,_e,Ie,pr,void 0)}}return Te;function Pe(dt,pr,ot,ir,qt){if(ope(ir,dt,pr)||N1e(ir,dt,pr)){if(qt!==-1)return qt}else{let Yt=V.getLineAndCharacterOfPosition(dt).line,Tr=QB(dt,V),mn=LN.findFirstNonWhitespaceColumn(Tr,dt,V,_);if(Yt!==ot||dt===mn){let jn=LN.getBaseIndentation(_);return jn>mn?jn:mn}}return-1}function Ke(dt,pr,ot,ir,qt,Yt){let Tr=LN.shouldIndentChildNode(_,dt)?_.indentSize:0;return Yt===pr?{indentation:pr===Ee?Ne:qt.getIndentation(),delta:Math.min(_.indentSize,qt.getDelta(dt)+Tr)}:ot===-1?dt.kind===21&&pr===Ee?{indentation:Ne,delta:qt.getDelta(dt)}:LN.childStartsOnTheSameLineWithElseInIfStatement(ir,dt,pr,V)||LN.childIsUnindentedBranchOfConditionalExpression(ir,dt,pr,V)||LN.argumentStartsOnSameLineAsPreviousArgument(ir,dt,pr,V)?{indentation:qt.getIndentation(),delta:Tr}:{indentation:qt.getIndentation()+qt.getDelta(dt),delta:Tr}:{indentation:ot,delta:Tr}}function et(dt){if(HB(dt)){let pr=de(dt.modifiers,hg,Se(dt.modifiers,Eo));if(pr)return pr.kind}switch(dt.kind){case 264:return 86;case 265:return 120;case 263:return 100;case 267:return 267;case 178:return 139;case 179:return 153;case 175:if(dt.asteriskToken)return 42;case 173:case 170:let pr=fl(dt);if(pr)return pr.kind}}function Ye(dt,pr,ot,ir){return{getIndentationForComment:(Tr,mn,jn)=>{switch(Tr){case 20:case 24:case 22:return ot+Yt(jn)}return mn!==-1?mn:ot},getIndentationForToken:(Tr,mn,jn,Zi)=>!Zi&&qt(Tr,mn,jn)?ot+Yt(jn):ot,getIndentation:()=>ot,getDelta:Yt,recomputeIndentation:(Tr,mn)=>{LN.shouldIndentChildNode(_,mn,dt,V)&&(ot+=Tr?_.indentSize:-_.indentSize,ir=LN.shouldIndentChildNode(_,dt)?_.indentSize:0)}};function qt(Tr,mn,jn){switch(mn){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(jn.kind){case 287:case 288:case 286:return!1}break;case 23:case 24:if(jn.kind!==201)return!1;break}return pr!==Tr&&!(m1(dt)&&mn===et(dt))}function Yt(Tr){return LN.nodeWillIndentChild(_,dt,Tr,V,!0)?ir:0}}function Tt(dt,pr,ot,ir,qt,Yt){if(!ope(s,dt.getStart(V),dt.getEnd()))return;let Tr=Ye(dt,ot,qt,Yt),mn=pr;for(Lu(dt,An=>{jn(An,-1,dt,Tr,ot,ir,!1)},An=>{Zi(An,dt,ot,Tr)});h.isOnToken()&&h.getTokenFullStart()Math.min(dt.end,s.end))break;Ns(An,dt,Tr,dt)}function jn(An,si,ks,Ic,ou,Zn,ya,Fl){if(pe.assert(!ap(An)),af(An)||Vge(ks,An))return si;let ba=An.getStart(V),Oo=V.getLineAndCharacterOfPosition(ba).line,hc=Oo;m1(An)&&(hc=V.getLineAndCharacterOfPosition(nne(An,V)).line);let yr=-1;if(ya&&gy(s,ks)&&(yr=Pe(ba,An.end,ou,s,si),yr!==-1&&(si=yr)),!ope(s,An.pos,An.end))return An.ends.end)return si;if(co.token.end>ba){co.token.pos>ba&&h.skipToStartOf(An);break}Ns(co,dt,Ic,dt)}if(!h.isOnToken()||h.getTokenFullStart()>=s.end)return si;if(xL(An)){let co=h.readTokenInfo(An);if(An.kind!==12)return pe.assert(co.token.end===An.end,"Token end is child end"),Ns(co,dt,Ic,An),si}let hn=An.kind===171?Oo:Zn,Pi=Ke(An,Oo,yr,dt,Ic,hn);return Tt(An,mn,Oo,hc,Pi.indentation,Pi.delta),mn=dt,Fl&&ks.kind===210&&si===-1&&(si=Pi.indentation),si}function Zi(An,si,ks,Ic){pe.assert(aN(An)),pe.assert(!ap(An));let ou=uOs(si,An),Zn=Ic,ya=ks;if(!ope(s,An.pos,An.end)){An.endAn.pos)break;if(Oo.token.kind===ou){ya=V.getLineAndCharacterOfPosition(Oo.token.pos).line,Ns(Oo,si,Ic,si);let hc;if(Ne!==-1)hc=Ne;else{let yr=QB(Oo.token.pos,V);hc=LN.findFirstNonWhitespaceColumn(yr,Oo.token.pos,V,_)}Zn=Ye(si,ks,hc,_.indentSize)}else Ns(Oo,si,Ic,si)}let Fl=-1;for(let Oo=0;Ooyt(Pi.pos,hn,!1))}hc!==-1&&yr&&(yt(An.token.pos,hc,Fl===1),Ee=Oo.line,Ne=hc)}h.advance(),mn=si}}function at(dt,pr,ot,ir){for(let qt of dt){let Yt=gy(s,qt);switch(qt.kind){case 3:Yt&&je(qt,pr,!ot),ot=!1;break;case 2:ot&&Yt&&ir(qt),ot=!1;break;case 4:ot=!0;break}}return ot}function Qe(dt,pr,ot,ir){for(let qt of dt)if(dWe(qt.kind)&&gy(s,qt)){let Yt=V.getLineAndCharacterOfPosition(qt.pos);Ct(qt,Yt,pr,ot,ir)}}function Ct(dt,pr,ot,ir,qt){let Yt=O(dt),Tr=0;if(!Yt)if(ge)Tr=mt(dt,pr.line,ot,ge,_e,Ie,ir,qt);else{let mn=V.getLineAndCharacterOfPosition(s.pos);Wt(mn.line,pr.line)}return ge=dt,re=dt.end,Ie=ot,_e=pr.line,Tr}function mt(dt,pr,ot,ir,qt,Yt,Tr,mn){ee.updateContext(ir,Yt,dt,ot,Tr);let jn=S(ee),Zi=ee.options.trimTrailingWhitespace!==!1,Ns=0;return jn?Q(jn,An=>{if(Ns=Gr(An,ir,qt,dt,pr),mn)switch(Ns){case 2:ot.getStart(V)===dt.pos&&mn.recomputeIndentation(!1,Tr);break;case 1:ot.getStart(V)===dt.pos&&mn.recomputeIndentation(!0,Tr);break;default:pe.assert(Ns===0)}Zi=Zi&&!(An.action&16)&&An.flags!==1}):Zi=Zi&&dt.kind!==1,pr!==qt&&Zi&&Wt(qt,pr,ir),Ns}function yt(dt,pr,ot){let ir=H4t(pr,_);if(ot)tr(dt,0,ir);else{let qt=V.getLineAndCharacterOfPosition(dt),Yt=JD(qt.line,V);(pr!==Rt(Yt,qt.character)||Lt(ir,Yt))&&tr(Yt,qt.character,ir)}}function Rt(dt,pr){let ot=0;for(let ir=0;ir0){let Zn=H4t(ou,_);tr(ks,Ic.character,Zn)}else Dt(ks,Ic.character)}}function Wt(dt,pr,ot){for(let ir=dt;irYt)continue;let Tr=_r(qt,Yt);Tr!==-1&&(pe.assert(Tr===qt||!hu(V.text.charCodeAt(Tr-1))),Dt(Tr,Yt+1-Tr))}}function _r(dt,pr){let ot=pr;for(;ot>=dt&&hu(V.text.charCodeAt(ot));)ot--;return ot!==pr?ot+1:-1}function Gt(dt){let pr=ge?ge.end:s.pos;for(let ot of dt)dWe(ot.kind)&&(prR1e(O,c)||c===O.end&&(O.kind===2||c===s.getFullWidth()))}function uOs(s,c){switch(s.kind){case 177:case 263:case 219:case 175:case 174:case 220:case 180:case 181:case 185:case 186:case 178:case 179:if(s.typeParameters===c)return 30;if(s.parameters===c)return 21;break;case 214:case 215:if(s.typeArguments===c)return 30;if(s.arguments===c)return 21;break;case 264:case 232:case 265:case 266:if(s.typeParameters===c)return 30;break;case 184:case 216:case 187:case 234:case 206:if(s.typeArguments===c)return 30;break;case 188:return 19}return 0}function gOs(s){switch(s){case 21:return 22;case 30:return 32;case 19:return 20}return 0}var Rst,y2e,b2e;function H4t(s,c){if((!Rst||Rst.tabSize!==c.tabSize||Rst.indentSize!==c.indentSize)&&(Rst={tabSize:c.tabSize,indentSize:c.indentSize},y2e=b2e=void 0),c.convertTabsToSpaces){let d,h=Math.floor(s/c.indentSize),_=s%c.indentSize;return b2e||(b2e=[]),b2e[h]===void 0?(d=G1e(" ",c.indentSize*h),b2e[h]=d):d=b2e[h],_?d+G1e(" ",_):d}else{let d=Math.floor(s/c.tabSize),h=s-d*c.tabSize,_;return y2e||(y2e=[]),y2e[d]===void 0?y2e[d]=_=G1e(" ",d):_=y2e[d],h?_+G1e(" ",h):_}}var LN;(s=>{let c;(je=>{je[je.Unknown=-1]="Unknown"})(c||(c={}));function g(je,Wt,_r,Gt=!1){if(je>Wt.text.length)return R(_r);if(_r.indentStyle===0)return 0;let it=Vm(je,Wt,void 0,!0),Dt=Kpn(Wt,je,it||null);if(Dt&&Dt.kind===3)return d(Wt,je,_r,Dt);if(!it)return R(_r);if(zrt(it.kind)&&it.getStart(Wt)<=je&&je=0),it<=Dt)return Ct(JD(Dt,je),Wt,je,_r);let tr=JD(it,je),{column:ur,character:Gr}=Qe(tr,Wt,je,_r);return ur===0?ur:je.text.charCodeAt(tr+Gr)===42?ur-1:ur}function h(je,Wt,_r){let Gt=Wt;for(;Gt>0;){let Dt=je.text.charCodeAt(Gt);if(!dc(Dt))break;Gt--}let it=QB(Gt,je);return Ct(it,Gt,je,_r)}function _(je,Wt,_r,Gt,it,Dt){let tr,ur=_r;for(;ur;){if(Yrt(ur,Wt,je)&&Rt(Dt,ur,tr,je,!0)){let dt=ge(ur,je),pr=re(_r,ur,Gt,je),ot=pr!==0?it&&pr===2?Dt.indentSize:0:Gt!==dt.line?Dt.indentSize:0;return T(ur,dt,void 0,ot,je,!0,Dt)}let Gr=Ye(ur,je,Dt,!0);if(Gr!==-1)return Gr;tr=ur,ur=ur.parent}return R(Dt)}function S(je,Wt,_r,Gt){let it=_r.getLineAndCharacterOfPosition(je.getStart(_r));return T(je,it,Wt,0,_r,!1,Gt)}s.getIndentationForNode=S;function R(je){return je.baseIndentSize||0}s.getBaseIndentation=R;function T(je,Wt,_r,Gt,it,Dt,tr){var ur;let Gr=je.parent;for(;Gr;){let dt=!0;if(_r){let qt=je.getStart(it);dt=qt<_r.pos||qt>_r.end}let pr=O(Gr,je,it),ot=pr.line===Wt.line||_e(Gr,je,Wt.line,it);if(dt){let qt=(ur=Te(je,it))==null?void 0:ur[0],Yt=!!qt&&ge(qt,it).line>pr.line,Tr=Ye(je,it,tr,Yt);if(Tr!==-1||(Tr=M(je,Gr,Wt,ot,it,tr),Tr!==-1))return Tr+Gt}Rt(tr,Gr,je,it,Dt)&&!ot&&(Gt+=tr.indentSize);let ir=Ie(Gr,je,Wt.line,it);je=Gr,Gr=je.parent,Wt=ir?it.getLineAndCharacterOfPosition(je.getStart(it)):pr}return Gt+R(tr)}function O(je,Wt,_r){let Gt=Te(Wt,_r),it=Gt?Gt.pos:je.getStart(_r);return _r.getLineAndCharacterOfPosition(it)}function V(je,Wt,_r){let Gt=EMt(je);return Gt&&Gt.listItemIndex>0?Tt(Gt.list.getChildren(),Gt.listItemIndex-1,Wt,_r):-1}function M(je,Wt,_r,Gt,it,Dt){return(em(je)||WJ(je))&&(Wt.kind===308||!Gt)?at(_r,it,Dt):-1}let ee;(je=>{je[je.Unknown=0]="Unknown",je[je.OpenBrace=1]="OpenBrace",je[je.CloseBrace=2]="CloseBrace"})(ee||(ee={}));function re(je,Wt,_r,Gt){let it=wQ(je,Wt,Gt);if(!it)return 0;if(it.kind===19)return 1;if(it.kind===20){let Dt=ge(it,Gt).line;return _r===Dt?2:0}return 0}function ge(je,Wt){return Wt.getLineAndCharacterOfPosition(je.getStart(Wt))}function Ie(je,Wt,_r,Gt){if(!(Ll(je)&&k(je.arguments,Wt)))return!1;let it=je.expression.getEnd();return Ra(Gt,it).line===_r}s.isArgumentAndStartLineOverlapsExpressionBeingCalled=Ie;function _e(je,Wt,_r,Gt){if(je.kind===246&&je.elseStatement===Wt){let it=ep(je,93,Gt);return pe.assert(it!==void 0),ge(it,Gt).line===_r}return!1}s.childStartsOnTheSameLineWithElseInIfStatement=_e;function Ee(je,Wt,_r,Gt){if(Hw(je)&&(Wt===je.whenTrue||Wt===je.whenFalse)){let it=Ra(Gt,je.condition.end).line;if(Wt===je.whenTrue)return _r===it;{let Dt=ge(je.whenTrue,Gt).line,tr=Ra(Gt,je.whenTrue.end).line;return it===Dt&&tr===_r}}return!1}s.childIsUnindentedBranchOfConditionalExpression=Ee;function Ne(je,Wt,_r,Gt){if(Av(je)){if(!je.arguments)return!1;let it=de(je.arguments,Gr=>Gr.pos===Wt.pos);if(!it)return!1;let Dt=je.arguments.indexOf(it);if(Dt===0)return!1;let tr=je.arguments[Dt-1],ur=Ra(Gt,tr.getEnd()).line;if(_r===ur)return!0}return!1}s.argumentStartsOnSameLineAsPreviousArgument=Ne;function Te(je,Wt){return je.parent&&Pe(je.getStart(Wt),je.getEnd(),je.parent,Wt)}s.getContainingList=Te;function Ze(je,Wt,_r){return Wt&&Pe(je,je,Wt,_r)}function Pe(je,Wt,_r,Gt){switch(_r.kind){case 184:return it(_r.typeArguments);case 211:return it(_r.properties);case 210:return it(_r.elements);case 188:return it(_r.members);case 263:case 219:case 220:case 175:case 174:case 180:case 177:case 186:case 181:return it(_r.typeParameters)||it(_r.parameters);case 178:return it(_r.parameters);case 264:case 232:case 265:case 266:case 346:return it(_r.typeParameters);case 215:case 214:return it(_r.typeArguments)||it(_r.arguments);case 262:return it(_r.declarations);case 276:case 280:return it(_r.elements);case 207:case 208:return it(_r.elements)}function it(Dt){return Dt&&N1e(Ke(_r,Dt,Gt),je,Wt)?Dt:void 0}}function Ke(je,Wt,_r){let Gt=je.getChildren(_r);for(let it=1;it=0&&Wt=0;tr--){if(je[tr].kind===28)continue;if(_r.getLineAndCharacterOfPosition(je[tr].end).line!==Dt.line)return at(Dt,_r,Gt);Dt=ge(je[tr],_r)}return-1}function at(je,Wt,_r){let Gt=Wt.getPositionOfLineAndCharacter(je.line,0);return Ct(Gt,Gt+je.character,Wt,_r)}function Qe(je,Wt,_r,Gt){let it=0,Dt=0;for(let tr=je;trAOs});function AOs(s,c,g){let d=!1;return c.forEach(h=>{let _=ji(Jc(s,h.pos),S=>gy(S,h));_&&Lu(_,function S(R){var T;if(!d){if(Ir(R)&&nse(h,R.getStart(s))){let O=g.resolveName(R.text,R,-1,!1);if(O&&O.declarations){for(let V of O.declarations)if(ait(V)||R.text&&s.symbol&&((T=s.symbol.exports)!=null&&T.has(R.escapedText))){d=!0;return}}}R.forEachChild(S)}})}),d}var Dst={};o(Dst,{pasteEditsProvider:()=>pOs});var dOs="providePostPasteEdits";function pOs(s,c,g,d,h,_,S,R){return{edits:xo.ChangeTracker.with({host:h,formatContext:S,preferences:_},O=>fOs(s,c,g,d,h,_,S,R,O)),fixId:dOs}}function fOs(s,c,g,d,h,_,S,R,T){let O;c.length!==g.length&&(O=c.length===1?c[0]:c.join(UF(S.host,S.options)));let V=[],M=s.text;for(let re=g.length-1;re>=0;re--){let{pos:ge,end:Ie}=g[re];M=O?M.slice(0,ge)+O+M.slice(Ie):M.slice(0,ge)+c[re]+M.slice(Ie)}let ee;pe.checkDefined(h.runWithTemporaryFileUpdate).call(h,s.fileName,M,(re,ge,Ie)=>{if(ee=Z0.createImportAdder(Ie,re,_,h),d?.range){pe.assert(d.range.length===c.length),d.range.forEach(Ze=>{let Pe=d.file.statements,Ke=Se(Pe,Ye=>Ye.end>Ze.pos);if(Ke===-1)return;let et=Se(Pe,Ye=>Ye.end>=Ze.end,Ke);et!==-1&&Ze.end<=Pe[et].getStart()&&et--,V.push(...Pe.slice(Ke,et===-1?Pe.length:et+1))}),pe.assertIsDefined(ge,"no original program found");let _e=ge.getTypeChecker(),Ee=IOs(d),Ne=YWe(d.file,V,_e,oYt(Ie,V,_e),Ee),Te=!xnt(s.fileName,ge,h,!!d.file.commonJsModuleIndicator);qHt(d.file,Ne.targetFileImportsFromOldFile,T,Te),cYt(d.file,Ne.oldImportsNeededByTargetFile,Ne.targetFileImportsFromOldFile,_e,re,ee)}else{let _e={sourceFile:Ie,program:ge,cancellationToken:R,host:h,preferences:_,formatContext:S},Ee=0;g.forEach((Ne,Te)=>{let Ze=Ne.end-Ne.pos,Pe=O??c[Te],Ke=Ne.pos+Ee,et=Ke+Pe.length,Ye={pos:Ke,end:et};Ee+=Pe.length-Ze;let Tt=ji(Jc(_e.sourceFile,Ye.pos),at=>gy(at,Ye));Tt&&Lu(Tt,function at(Qe){if(Ir(Qe)&&nse(Ye,Qe.getStart(Ie))&&!re?.getTypeChecker().resolveName(Qe.text,Qe,-1,!1))return ee.addImportForUnresolvedIdentifier(_e,Qe,!0);Qe.forEachChild(at)})})}ee.writeFixes(T,S1(d?d.file:s,_))}),ee.hasFixes()&&g.forEach((re,ge)=>{T.replaceRangeWithText(s,{pos:re.pos,end:re.end},O??c[ge])})}function IOs({file:s,range:c}){let g=c[0].pos,d=c[c.length-1].end,h=Jc(s,g),_=ape(s,g)??Jc(s,d);return{pos:Ir(h)&&g<=h.getStart(s)?h.getFullStart():g,end:Ir(_)&&d===_.getEnd()?xo.getAdjustedEndPosition(s,_,{}):d}}var jpn={};o(jpn,{ANONYMOUS:()=>Ent,AccessFlags:()=>Dy,AssertionLevel:()=>bl,AssignmentDeclarationKind:()=>ky,AssignmentKind:()=>OZe,Associativity:()=>JZe,BreakpointResolver:()=>yit,BuilderFileEmit:()=>s5t,BuilderProgramKind:()=>d5t,BuilderState:()=>lR,CallHierarchy:()=>nq,CharacterCodes:()=>q2,CheckFlags:()=>gB,CheckMode:()=>Xet,ClassificationType:()=>Grt,ClassificationTypeNames:()=>fMt,CommentDirectiveType:()=>qS,Comparison:()=>b,CompletionInfoFlags:()=>cMt,CompletionTriggerKind:()=>krt,Completions:()=>cq,ContainerFlags:()=>WPt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>ev,Diagnostics:()=>Z,DocumentHighlights:()=>WWe,ElementFlags:()=>nf,EmitFlags:()=>pB,EmitHint:()=>iy,EmitOnly:()=>j2,EndOfLineState:()=>gMt,ExitStatus:()=>gt,ExportKind:()=>sHt,Extension:()=>ny,ExternalEmitHelpers:()=>$R,FileIncludeKind:()=>ry,FilePreprocessingDiagnosticsKind:()=>yw,FileSystemEntryKind:()=>o1,FileWatcherEventKind:()=>Sb,FindAllReferences:()=>zp,FlattenLevel:()=>a3t,FlowFlags:()=>Xp,ForegroundColorEscapeSequences:()=>K3t,FunctionFlags:()=>QZe,GeneratedIdentifierFlags:()=>cd,GetLiteralTextFlags:()=>w7,GoToDefinition:()=>mse,HighlightSpanKind:()=>oMt,IdentifierNameMap:()=>Jie,ImportKind:()=>iHt,ImportsNotUsedAsValues:()=>rv,IndentStyle:()=>aMt,IndexFlags:()=>$S,IndexKind:()=>Km,InferenceFlags:()=>k_,InferencePriority:()=>yb,InlayHintKind:()=>sMt,InlayHints:()=>Ast,InternalEmitFlags:()=>FD,InternalNodeBuilderFlags:()=>Bg,InternalSymbolName:()=>FT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>Z5t,JSDocParsingMode:()=>s1,JsDoc:()=>A5,JsTyping:()=>$W,JsxEmit:()=>qR,JsxFlags:()=>Um,JsxReferenceKind:()=>rh,LanguageFeatureMinimumTarget:()=>Dd,LanguageServiceMode:()=>nMt,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>n2,ListFormat:()=>n1,LogLevel:()=>mb,MapCode:()=>dst,MemberOverrideStatus:()=>ar,ModifierFlags:()=>zE,ModuleDetectionKind:()=>t1,ModuleInstanceState:()=>LPt,ModuleKind:()=>tv,ModuleResolutionKind:()=>e0,ModuleSpecifierEnding:()=>ZLe,NavigateTo:()=>RHt,NavigationBar:()=>DHt,NewLineKind:()=>r1,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>Ny,NodeFactoryFlags:()=>fEe,NodeFlags:()=>fC,NodeResolutionFeatures:()=>vPt,ObjectFlags:()=>$_,OperationCanceledException:()=>Ry,OperatorPrecedence:()=>UZe,OrganizeImports:()=>d5,OrganizeImportsMode:()=>Drt,OuterExpressionKinds:()=>fF,OutliningElementsCollector:()=>fst,OutliningSpanKind:()=>lMt,OutputFileType:()=>uMt,PackageJsonAutoImportPreference:()=>rMt,PackageJsonDependencyGroup:()=>tMt,PatternMatchKind:()=>Mnt,PollingInterval:()=>s_,PollingWatchKind:()=>dB,PragmaKindFlags:()=>x_,PredicateSemantics:()=>q_,PreparePasteEdits:()=>Nst,PrivateIdentifierKind:()=>A9e,ProcessLevel:()=>g3t,ProgramUpdateLevel:()=>Y3t,QuotePreference:()=>LMt,RegularExpressionFlags:()=>qE,RelationComparisonResult:()=>Ty,Rename:()=>bOe,ScriptElementKind:()=>dMt,ScriptElementKindModifier:()=>pMt,ScriptKind:()=>z2,ScriptSnapshot:()=>zVe,ScriptTarget:()=>VT,SemanticClassificationFormat:()=>iMt,SemanticMeaning:()=>IMt,SemicolonPreference:()=>xrt,SignatureCheckMode:()=>Jet,SignatureFlags:()=>td,SignatureHelp:()=>p2e,SignatureInfo:()=>i5t,SignatureKind:()=>TA,SmartSelectionRange:()=>mst,SnippetKind:()=>bw,StatisticType:()=>Q5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>AI,SymbolDisplay:()=>g9,SymbolDisplayPartKind:()=>$Ve,SymbolFlags:()=>GT,SymbolFormatFlags:()=>Df,SyntaxKind:()=>Wd,Ternary:()=>bb,ThrottledCancellationToken:()=>WYt,TokenClass:()=>AMt,TokenFlags:()=>$E,TransformFlags:()=>Ap,TypeFacts:()=>Qet,TypeFlags:()=>e1,TypeFormatFlags:()=>Dg,TypeMapKind:()=>eI,TypePredicateKind:()=>kh,TypeReferenceSerializationKind:()=>uE,UnionReduction:()=>Jr,UpToDateStatusType:()=>R5t,VarianceFlags:()=>ZT,Version:()=>P,VersionRange:()=>At,WatchDirectoryFlags:()=>r2,WatchDirectoryKind:()=>LT,WatchFileKind:()=>AB,WatchLogLevel:()=>X3t,WatchType:()=>eC,accessPrivateIdentifier:()=>o3t,addEmitFlags:()=>Ow,addEmitHelper:()=>gQ,addEmitHelpers:()=>EN,addInternalEmitFlags:()=>W3,addNodeFactoryPatcher:()=>_$e,addObjectAllocatorPatcher:()=>i$e,addRange:()=>Pr,addRelatedInfo:()=>ug,addSyntheticLeadingComment:()=>$T,addSyntheticTrailingComment:()=>Dz,addToSeen:()=>Wy,advancedAsyncSuperHelper:()=>VF,affectsDeclarationPathOptionDeclarations:()=>jOt,affectsEmitOptionDeclarations:()=>KOt,allKeysStartWithDot:()=>rVe,altDirectorySeparator:()=>Bb,and:()=>hh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>YLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Uu,arrayToNumericMap:()=>Vs,assertType:()=>aE,assign:()=>Pt,asyncSuperHelper:()=>Sie,attachFileToDiagnostics:()=>$L,base64decode:()=>dLe,base64encode:()=>Bbe,binarySearch:()=>Oc,binarySearchKey:()=>vg,bindSourceFile:()=>OPt,breakIntoCharacterSpans:()=>yHt,breakIntoWordSpans:()=>bHt,buildLinkParts:()=>QMt,buildOpts:()=>PEe,buildOverload:()=>$pn,bundlerModuleNameResolver:()=>BPt,canBeConvertedToAsync:()=>Unt,canHaveDecorators:()=>mQ,canHaveExportModifier:()=>uie,canHaveFlowNode:()=>cU,canHaveIllegalDecorators:()=>$$e,canHaveIllegalModifiers:()=>NOt,canHaveIllegalType:()=>Z$r,canHaveIllegalTypeParameters:()=>ROt,canHaveJSDoc:()=>wne,canHaveLocals:()=>HI,canHaveModifiers:()=>HB,canHaveModuleSpecifier:()=>ZZe,canHaveSymbol:()=>bE,canIncludeBindAndCheckDiagnostics:()=>vU,canJsonReportNoInputFiles:()=>JEe,canProduceDiagnostics:()=>i1e,canUsePropertyAccess:()=>nEe,canWatchAffectingLocation:()=>y5t,canWatchAtTypes:()=>_5t,canWatchDirectoryOrFile:()=>Utt,canWatchDirectoryOrFilePath:()=>C1e,cartesianProduct:()=>jE,cast:()=>Ma,chainBundle:()=>cR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>eS,changeCompilerHostLikeToUseCache:()=>qde,changeExtension:()=>yN,changeFullExtension:()=>a_,changesAffectModuleResolution:()=>YJ,changesAffectingProgramStructure:()=>xge,characterCodeToRegularExpressionFlag:()=>Pg,childIsDecorated:()=>nU,classElementOrClassElementParameterIsDecorated:()=>Wye,classHasClassThisAssignment:()=>ctt,classHasDeclaredOrExplicitlyAssignedName:()=>ltt,classHasExplicitlyAssignedName:()=>fVe,classOrConstructorParameterIsDecorated:()=>Fx,classicNameResolver:()=>FPt,classifier:()=>HYt,cleanExtendedConfigCache:()=>yVe,clear:()=>ft,clearMap:()=>Vy,clearSharedExtendedConfigFileWatcher:()=>Ett,climbPastPropertyAccess:()=>rWe,clone:()=>Sg,cloneCompilerOptions:()=>$rt,closeFileWatcher:()=>mv,closeFileWatcherOf:()=>Sv,codefix:()=>Z0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>itt,combine:()=>zr,combinePaths:()=>To,commandLineOptionOfCustomType:()=>$Ot,commentPragmas:()=>i1,commonOptionsWithBuild:()=>Z9e,compact:()=>Hr,compareBooleans:()=>Hl,compareDataObjects:()=>VAe,compareDiagnostics:()=>az,compareEmitHelpers:()=>p9e,compareNumberOfDirectorySeparators:()=>oie,comparePaths:()=>tI,comparePathsCaseInsensitive:()=>_B,comparePathsCaseSensitive:()=>vx,comparePatternKeys:()=>Vet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Oa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>io,compareTextSpans:()=>yn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>RLe,compilerOptionsAffectEmit:()=>TLe,compilerOptionsAffectSemanticDiagnostics:()=>Obe,compilerOptionsDidYouMeanDiagnostics:()=>O9e,compilerOptionsIndicateEsModules:()=>snt,computeCommonSourceDirectoryOfFilenames:()=>J3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Wo,computeLineStarts:()=>uA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>Mtt,computeSuggestionDiagnostics:()=>Qnt,computedOptions:()=>cz,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>jne,consumesNodeCoreModules:()=>NWe,contains:()=>k,containsIgnoredPath:()=>_z,containsObjectRestOrSpread:()=>LEe,containsParseError:()=>EW,containsPath:()=>zh,convertCompilerOptionsForTelemetry:()=>pPt,convertCompilerOptionsFromJson:()=>Qen,convertJsonOption:()=>WU,convertToBase64:()=>vbe,convertToJson:()=>YEe,convertToObject:()=>cPt,convertToOptionsWithAbsolutePaths:()=>Y9e,convertToRelativePath:()=>o2,convertToTSConfig:()=>_et,convertTypeAcquisitionFromJson:()=>Xen,copyComments:()=>JU,copyEntries:()=>b7,copyLeadingComments:()=>lse,copyProperties:()=>ZA,copyTrailingAsLeadingComments:()=>O1e,copyTrailingComments:()=>ppe,couldStartTrivia:()=>ov,countWhere:()=>ze,createAbstractBuilder:()=>enn,createAccessorPropertyBackingField:()=>ret,createAccessorPropertyGetRedirector:()=>VOt,createAccessorPropertySetRedirector:()=>WOt,createBaseNodeFactory:()=>r9e,createBinaryExpressionTrampoline:()=>D9e,createBuilderProgram:()=>Htt,createBuilderProgramUsingIncrementalBuildInfo:()=>h5t,createBuilderStatusReporter:()=>HVe,createCacheableExportInfoMap:()=>Gnt,createCachedDirectoryStructureHost:()=>CVe,createClassifier:()=>Nin,createCommentDirectivesMap:()=>Oge,createCompilerDiagnostic:()=>kf,createCompilerDiagnosticForInvalidCustomType:()=>ePt,createCompilerDiagnosticFromMessageChain:()=>MAe,createCompilerHost:()=>U3t,createCompilerHostFromProgramHost:()=>lrt,createCompilerHostWorker:()=>bVe,createDetachedDiagnostic:()=>nQ,createDiagnosticCollection:()=>NF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>ho,createDiagnosticForNodeArray:()=>y3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>kw,createDiagnosticForNodeInSourceFile:()=>SE,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Kz,createDocumentPositionMapper:()=>t3t,createDocumentRegistry:()=>uHt,createDocumentRegistryInternal:()=>Wnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>Jtt,createEmitHelperFactory:()=>d9e,createEmptyExports:()=>REe,createEvaluator:()=>$Le,createExpressionForJsxElement:()=>EOt,createExpressionForJsxFragment:()=>SOt,createExpressionForObjectLiteralElementLike:()=>vOt,createExpressionForPropertyName:()=>J$e,createExpressionFromEntityName:()=>NEe,createExternalHelpersImportDeclarationIfNeeded:()=>j$e,createFileDiagnostic:()=>rm,createFileDiagnosticFromMessageChain:()=>qe,createFlowNode:()=>ck,createForOfBindingStatement:()=>X$e,createFutureSourceFile:()=>ZWe,createGetCanonicalFileName:()=>bd,createGetIsolatedDeclarationErrors:()=>G3t,createGetSourceFile:()=>Ttt,createGetSymbolAccessibilityDiagnosticForNode:()=>r5,createGetSymbolAccessibilityDiagnosticForNodeName:()=>x3t,createGetSymbolWalker:()=>PPt,createIncrementalCompilerHost:()=>MVe,createIncrementalProgram:()=>T5t,createJsxFactoryExpression:()=>Q$e,createLanguageService:()=>OYt,createLanguageServiceSourceFile:()=>tOe,createMemberAccessForPropertyName:()=>LU,createModeAwareCache:()=>Mie,createModeAwareCacheKey:()=>Lde,createModeMismatchDetails:()=>S7,createModuleNotFoundChain:()=>XJ,createModuleResolutionCache:()=>Hie,createModuleResolutionLoader:()=>Gtt,createModuleResolutionLoaderUsingGlobalCache:()=>v5t,createModuleSpecifierResolutionHost:()=>o5,createMultiMap:()=>Al,createNameResolver:()=>gde,createNodeConverters:()=>n9e,createNodeFactory:()=>mie,createOptionNameMap:()=>V9e,createOverload:()=>kst,createPackageJsonImportFilter:()=>gse,createPackageJsonInfo:()=>Bnt,createParenthesizerRules:()=>Cv,createPatternMatcher:()=>fHt,createPrinter:()=>zW,createPrinterWithDefaults:()=>M3t,createPrinterWithRemoveComments:()=>EQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>H3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>btt,createProgram:()=>I1e,createProgramDiagnostics:()=>r5t,createProgramHost:()=>urt,createPropertyNameNodeForIdentifierOrLiteral:()=>lie,createQueue:()=>cA,createRange:()=>Ly,createRedirectedBuilderProgram:()=>Xtt,createResolutionCache:()=>jtt,createRuntimeTypeSerializer:()=>I3t,createScanner:()=>Nb,createSemanticDiagnosticsBuilderProgram:()=>$rn,createSet:()=>so,createSolutionBuilder:()=>x5t,createSolutionBuilderHost:()=>D5t,createSolutionBuilderWithWatch:()=>G5t,createSolutionBuilderWithWatchHost:()=>k5t,createSortedArray:()=>Ya,createSourceFile:()=>Oz,createSourceMapGenerator:()=>jPt,createSourceMapSource:()=>E$e,createSuperAccessVariableStatement:()=>hVe,createSymbolTable:()=>$u,createSymlinkCache:()=>Mbe,createSyntacticTypeNodeBuilder:()=>q5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>x1e,createTextChangeFromStartLength:()=>fWe,createTextChangeRange:()=>iS,createTextRangeFromNode:()=>rnt,createTextRangeFromSpan:()=>pWe,createTextSpan:()=>$d,createTextSpanFromBounds:()=>RA,createTextSpanFromNode:()=>Yy,createTextSpanFromRange:()=>c9,createTextSpanFromStringLiteralLikeContent:()=>tnt,createTextWriter:()=>Pne,createTokenRange:()=>qL,createTypeChecker:()=>UPt,createTypeReferenceDirectiveResolutionCache:()=>eVe,createTypeReferenceResolutionLoader:()=>vVe,createWatchCompilerHost:()=>unn,createWatchCompilerHostOfConfigFile:()=>grt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Art,createWatchFactory:()=>crt,createWatchHost:()=>art,createWatchProgram:()=>drt,createWatchStatusReporter:()=>ztt,createWriteFileMeasuringIO:()=>Rtt,declarationNameToString:()=>Md,decodeMappings:()=>ttt,decodedTextSpanIntersectsWith:()=>_E,deduplicate:()=>no,defaultHoverMaximumTruncationLength:()=>Nge,defaultInitCompilerOptions:()=>gen,defaultMaximumTruncationLength:()=>FY,diagnosticCategoryName:()=>Eb,diagnosticToString:()=>TQ,diagnosticsEqualityComparer:()=>HAe,directoryProbablyExists:()=>C1,directorySeparator:()=>cg,displayPart:()=>TE,displayPartsToString:()=>$1e,disposeEmitNodes:()=>ju,documentSpansEqual:()=>Ant,dumpTracingLegend:()=>$f,elementAt:()=>_g,elideNodes:()=>LOt,emitDetachedComments:()=>rLe,emitFiles:()=>_tt,emitFilesAndReportErrors:()=>VVe,emitFilesAndReportErrorsAndGetExitStatus:()=>ort,emitModuleKindIsNonNodeESM:()=>tie,emitNewLineBeforeLeadingCommentOfPosition:()=>Ibe,emitResolverSkipsTypeChecking:()=>Ctt,emitSkippedWithNoDiagnostics:()=>Ltt,emptyArray:()=>E,emptyFileSystemEntries:()=>Kbe,emptyMap:()=>N,emptyOptions:()=>YB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Im,ensureScriptKind:()=>zAe,ensureTrailingDirectorySeparator:()=>Cp,entityNameToString:()=>ly,enumerateInsertsAndDeletes:()=>ty,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Yp,equateStringsCaseSensitive:()=>YA,equateValues:()=>bg,escapeJsxAttributeString:()=>cbe,escapeLeadingUnderscores:()=>pp,escapeNonAsciiString:()=>Vne,escapeSnippetText:()=>MW,escapeString:()=>jT,escapeTemplateSubstitution:()=>obe,evaluatorResult:()=>nm,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>pde,executeCommandLine:()=>Hnn,expandPreOrPostfixIncrementOrDecrementExpression:()=>B9e,explainFiles:()=>trt,explainIfFileIsRedirectAndImpliedFormat:()=>rrt,exportAssignmentIsAlias:()=>Dne,expressionResultIsUnused:()=>XLe,extend:()=>HA,extensionFromPath:()=>Iz,extensionIsTS:()=>nde,extensionsNotSupportingExtensionlessResolution:()=>rde,externalHelpersModuleNameText:()=>QD,factory:()=>me,fileExtensionIs:()=>lA,fileExtensionIsOneOf:()=>Iu,fileIncludeReasonToDiagnostics:()=>srt,fileShouldUseJavaScriptRequire:()=>xnt,filter:()=>Le,filterMutate:()=>Je,filterSemanticDiagnostics:()=>RVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>XA,findChildOfKind:()=>ep,findComputedPropertyNameCacheAssignment:()=>k9e,findConfigFile:()=>Btt,findConstructorDeclaration:()=>lQ,findContainingList:()=>aWe,findDiagnosticForNode:()=>tHt,findFirstNonJsxWhitespaceToken:()=>SMt,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>EMt,findModifier:()=>ose,findNextToken:()=>wQ,findPackageJson:()=>eHt,findPackageJsons:()=>vnt,findPrecedingMatchingToken:()=>AWe,findPrecedingToken:()=>Vm,findSuperStatementIndexPath:()=>gVe,findTokenOnLeftOfPosition:()=>ape,findUseStrictPrologue:()=>K$e,first:()=>ma,firstDefined:()=>J,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>Rnt,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>oA,fixupCompilerOptions:()=>Knt,flatMap:()=>jt,flatMapIterator:()=>Nt,flatMapToMutable:()=>Bt,flatten:()=>Sr,flattenCommaList:()=>OOt,flattenDestructuringAssignment:()=>MU,flattenDestructuringBinding:()=>bQ,flattenDiagnosticMessageText:()=>xN,forEach:()=>F,forEachAncestor:()=>Rw,forEachAncestorDirectory:()=>mE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>DN,forEachChild:()=>Lu,forEachChildRecursively:()=>Wz,forEachDynamicImportOrRequireCall:()=>pie,forEachEmittedFile:()=>ftt,forEachEnclosingBlockScopeContainer:()=>Kge,forEachEntry:()=>Fh,forEachExternalModuleToImportFrom:()=>Znt,forEachImportClauseDeclaration:()=>LZe,forEachKey:()=>NB,forEachLeadingCommentRange:()=>OD,forEachNameInAccessChainWalkingLeft:()=>CLe,forEachNameOfDefaultExport:()=>VWe,forEachOptionsSyntaxByName:()=>fde,forEachProjectReference:()=>Bz,forEachPropertyAssignment:()=>eU,forEachResolvedProjectReference:()=>Iie,forEachReturnStatement:()=>TF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>_F,forEachTsConfigPropArray:()=>Ane,forEachUnique:()=>pnt,forEachYieldExpression:()=>bZe,formatColorAndReset:()=>SQ,formatDiagnostic:()=>Ntt,formatDiagnostics:()=>wrn,formatDiagnosticsWithColorAndContext:()=>q3t,formatGeneratedName:()=>z3,formatGeneratedNamePart:()=>Vie,formatLocation:()=>Dtt,formatMessage:()=>iQ,formatStringFromArgs:()=>CN,formatting:()=>_m,generateDjb2Hash:()=>sy,generateTSConfig:()=>lPt,getAdjustedReferenceLocation:()=>Jrt,getAdjustedRenameLocation:()=>lWe,getAliasDeclarationFromName:()=>zye,getAllAccessorDeclarations:()=>FW,getAllDecoratorsOfClass:()=>ott,getAllDecoratorsOfClassElement:()=>dVe,getAllJSDocTags:()=>wJ,getAllJSDocTagsOfKind:()=>Sye,getAllKeys:()=>_I,getAllProjectOutputs:()=>mVe,getAllSuperTypeNodes:()=>Y7,getAllowImportingTsExtensions:()=>ELe,getAllowJSCompilerOption:()=>FF,getAllowSyntheticDefaultImports:()=>sQ,getAncestor:()=>KL,getAnyExtensionFromPath:()=>fE,getAreDeclarationMapsEnabled:()=>YAe,getAssignedExpandoInitializer:()=>JY,getAssignedName:()=>vB,getAssignmentDeclarationKind:()=>oI,getAssignmentDeclarationPropertyAccessKind:()=>oU,getAssignmentTargetKind:()=>zD,getAutomaticTypeDirectiveNames:()=>q9e,getBaseFileName:()=>dp,getBinaryOperatorPrecedence:()=>Lne,getBuildInfo:()=>ytt,getBuildInfoFileVersionMap:()=>Qtt,getBuildInfoText:()=>O3t,getBuildOrderFromAnyBuildOrder:()=>y1e,getBuilderCreationParameters:()=>xVe,getBuilderFileEmit:()=>qW,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>aI,getClassExtendsHeritageElement:()=>UL,getClassLikeDeclarationOfSymbol:()=>mN,getCombinedLocalAndExportSymbolFlags:()=>CU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>hm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ld,getCommentRange:()=>LB,getCommonSourceDirectory:()=>zde,getCommonSourceDirectoryOfConfig:()=>HU,getCompilerOptionValue:()=>uz,getConditions:()=>UW,getConfigFileParsingDiagnostics:()=>vQ,getConstantValue:()=>s9e,getContainerFlags:()=>Oet,getContainerNode:()=>XU,getContainingClass:()=>_C,getContainingClassExcludingClassDecorators:()=>sAe,getContainingClassStaticBlock:()=>wZe,getContainingFunction:()=>I1,getContainingFunctionDeclaration:()=>iAe,getContainingFunctionOrClassStaticBlock:()=>dne,getContainingNodeArray:()=>JLe,getContainingObjectLiteralElement:()=>e2e,getContextualTypeFromParent:()=>SWe,getContextualTypeFromParentOrAncestorTypeNode:()=>cWe,getDeclarationDiagnostics:()=>F3t,getDeclarationEmitExtensionForPath:()=>EAe,getDeclarationEmitOutputFilePath:()=>qZe,getDeclarationEmitOutputFilePathWorker:()=>Mne,getDeclarationFileExtension:()=>G9e,getDeclarationFromName:()=>H7,getDeclarationModifierFlagsFromSymbol:()=>p2,getDeclarationOfKind:()=>yp,getDeclarationsOfKind:()=>Dge,getDeclaredExpandoInitializer:()=>V7,getDecorators:()=>kb,getDefaultCompilerOptions:()=>eOe,getDefaultFormatCodeSettings:()=>qVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>PYt,getDefaultLikeExportInfo:()=>LWe,getDefaultLikeExportNameFromDeclaration:()=>Nnt,getDefaultResolutionModeForFileWorker:()=>TVe,getDiagnosticText:()=>Wb,getDiagnosticsWithinSpan:()=>rHt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>Ktt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>E5t,getDocumentPositionMapper:()=>Ynt,getDocumentSpansEqualityComparer:()=>dnt,getESModuleInterop:()=>Vw,getEditsForFileRename:()=>AHt,getEffectiveBaseTypeNode:()=>kB,getEffectiveConstraintOfTypeParameter:()=>A3,getEffectiveContainerForJSDocTemplateTag:()=>fAe,getEffectiveImplementsTypeNodes:()=>uU,getEffectiveInitializer:()=>yne,getEffectiveJSDocHost:()=>JL,getEffectiveModifierFlags:()=>l_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>aLe,getEffectiveModifierFlagsNoCache:()=>Cbe,getEffectiveReturnTypeNode:()=>Zb,getEffectiveSetAccessorTypeAnnotationNode:()=>fbe,getEffectiveTypeAnnotationNode:()=>Zh,getEffectiveTypeParameterDeclarations:()=>MD,getEffectiveTypeRoots:()=>Zde,getElementOrPropertyAccessArgumentExpressionOrName:()=>pAe,getElementOrPropertyAccessName:()=>jD,getElementsOfBindingOrAssignmentPattern:()=>Lie,getEmitDeclarations:()=>Oy,getEmitFlags:()=>rA,getEmitHelpers:()=>mEe,getEmitModuleDetectionKind:()=>SLe,getEmitModuleFormatOfFileWorker:()=>tpe,getEmitModuleKind:()=>a0,getEmitModuleResolutionKind:()=>F_,getEmitScriptTarget:()=>Hg,getEmitStandardClassFields:()=>Wbe,getEnclosingBlockScopeContainer:()=>oS,getEnclosingContainer:()=>N7,getEncodedSemanticClassifications:()=>Lnt,getEncodedSyntacticClassifications:()=>Vnt,getEndLinePosition:()=>LY,getEntityNameFromTypeNode:()=>fne,getEntrypointsFromPackageJsonInfo:()=>Fet,getErrorCountForSummary:()=>ZVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>$tt,getEscapedTextOfIdentifierOrLiteral:()=>AU,getEscapedTextOfJsxAttributeName:()=>Ez,getEscapedTextOfJsxNamespacedName:()=>gS,getExpandoInitializer:()=>QL,getExportAssignmentExpression:()=>kne,getExportInfoMap:()=>X1e,getExportNeedsImportStarHelper:()=>r3t,getExpressionAssociativity:()=>ibe,getExpressionPrecedence:()=>U7,getExternalHelpersModuleName:()=>kEe,getExternalModuleImportEqualsDeclarationExpression:()=>F7,getExternalModuleName:()=>KY,getExternalModuleNameFromDeclaration:()=>jZe,getExternalModuleNameFromPath:()=>ube,getExternalModuleNameLiteral:()=>Vz,getExternalModuleRequireArgument:()=>Pye,getFallbackOptions:()=>d1e,getFileEmitOutput:()=>n5t,getFileMatcherPatterns:()=>jAe,getFileNamesFromConfigSpecs:()=>Gde,getFileWatcherEventKind:()=>nv,getFilesInErrorForSummary:()=>LVe,getFirstConstructorWithBody:()=>fN,getFirstIdentifier:()=>R0,getFirstNonSpaceCharacterPosition:()=>UMt,getFirstProjectOutput:()=>mtt,getFixableErrorSpanExpression:()=>wnt,getFormatCodeSettingsForWriting:()=>GWe,getFullWidth:()=>QJ,getFunctionFlags:()=>BI,getHeritageClause:()=>xne,getHostSignatureFromJSDoc:()=>XL,getIdentifierAutoGenerate:()=>B$e,getIdentifierGeneratedImportReference:()=>g9e,getIdentifierTypeArguments:()=>H3,getImmediatelyInvokedFunctionExpression:()=>HL,getImpliedNodeFormatForEmitWorker:()=>YU,getImpliedNodeFormatForFile:()=>f1e,getImpliedNodeFormatForFileWorker:()=>wVe,getImportNeedsImportDefaultHelper:()=>ntt,getImportNeedsImportStarHelper:()=>lVe,getIndentString:()=>bAe,getInferredLibraryNameResolveFrom:()=>BVe,getInitializedVariables:()=>mU,getInitializerOfBinaryExpression:()=>Yye,getInitializerOfBindingOrAssignmentElement:()=>GEe,getInterfaceBaseTypeNodes:()=>Q7,getInternalEmitFlags:()=>f1,getInvokedExpression:()=>cAe,getIsFileExcluded:()=>aHt,getIsolatedModules:()=>uS,getJSDocAugmentsTag:()=>u7,getJSDocClassTag:()=>Tx,getJSDocCommentRanges:()=>Fye,getJSDocCommentsAndTags:()=>Xye,getJSDocDeprecatedTag:()=>$h,getJSDocDeprecatedTagNoCache:()=>c2,getJSDocEnumTag:()=>g1,getJSDocHost:()=>DW,getJSDocImplementsTags:()=>bY,getJSDocOverloadTags:()=>Uye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>kL,getJSDocParameterTagsNoCache:()=>SJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>Fre,getJSDocPublicTagNoCache:()=>Rx,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>CA,getJSDocReturnTag:()=>uv,getJSDocReturnType:()=>BJ,getJSDocRoot:()=>lU,getJSDocSatisfiesExpressionType:()=>sEe,getJSDocSatisfiesTag:()=>bF,getJSDocTags:()=>Nx,getJSDocTemplateTag:()=>fW,getJSDocThisTag:()=>xb,getJSDocType:()=>oN,getJSDocTypeAliasName:()=>q$e,getJSDocTypeAssertionType:()=>Fie,getJSDocTypeParameterDeclarations:()=>TAe,getJSDocTypeParameterTags:()=>g3,getJSDocTypeParameterTagsNoCache:()=>l7,getJSDocTypeTag:()=>gv,getJSXImplicitImportBase:()=>rie,getJSXRuntimeImport:()=>nie,getJSXTransformEnabled:()=>JAe,getKeyForCompilerOptions:()=>Net,getLanguageVariant:()=>zne,getLastChild:()=>kbe,getLeadingCommentRanges:()=>CE,getLeadingCommentRangesOfNode:()=>$ge,getLeftmostAccessExpression:()=>_U,getLeftmostExpression:()=>yU,getLibFileNameFromLibReference:()=>lEe,getLibNameFromLibReference:()=>uQ,getLibraryNameFromLibFileName:()=>Ftt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ett,getLineOfLocalPosition:()=>z7,getLineStartPositionForPosition:()=>QB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>Tbe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>hLe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>G3,getLinesBetweenRangeEndPositions:()=>ILe,getLiteralText:()=>Mge,getLocalNameForExternalImport:()=>Zie,getLocalSymbolForExportDefault:()=>tz,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>_1e,getMappedContextSpan:()=>fnt,getMappedDocumentSpan:()=>yWe,getMappedLocation:()=>gpe,getMatchedFileSpec:()=>nrt,getMatchedIncludeSpec:()=>irt,getMeaningFromDeclaration:()=>eWe,getMeaningFromLocation:()=>QU,getMembersOfDeclaration:()=>eAe,getModeForFileReference:()=>$3t,getModeForResolutionAtIndex:()=>xrn,getModeForUsageLocation:()=>xtt,getModifiedTime:()=>vb,getModifiers:()=>sN,getModuleInstanceState:()=>XF,getModuleNameStringLiteralAt:()=>h1e,getModuleSpecifierEndingPreference:()=>LLe,getModuleSpecifierResolverHost:()=>ont,getNameForExportedSymbol:()=>DWe,getNameFromImportAttribute:()=>ude,getNameFromIndexInfo:()=>jge,getNameFromPropertyName:()=>F1e,getNameOfAccessExpression:()=>xbe,getNameOfCompilerOptionValue:()=>H9e,getNameOfDeclaration:()=>fl,getNameOfExpando:()=>Mye,getNameOfJSDocTypedef:()=>yF,getNameOfScriptTarget:()=>XAe,getNameOrArgument:()=>Ene,getNameTable:()=>_it,getNamespaceDeclarationNode:()=>aU,getNewLineCharacter:()=>IN,getNewLineKind:()=>Q1e,getNewLineOrDefaultFromHost:()=>UF,getNewTargetContainer:()=>RZe,getNextJSDocCommentLocation:()=>Jye,getNodeChildren:()=>H$e,getNodeForGeneratedName:()=>ZEe,getNodeId:()=>id,getNodeKind:()=>BQ,getNodeModifiers:()=>cpe,getNodeModulePathParts:()=>ode,getNonAssignedNameOfDeclaration:()=>vw,getNonAssignmentOperatorForCompoundAssignment:()=>Yde,getNonAugmentationDeclaration:()=>zJ,getNonDecoratorTokenPosOfNode:()=>nne,getNonIncrementalBuildInfoRoots:()=>m5t,getNonModifierTokenPosOfNode:()=>Pge,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>tN,getNormalizedPathComponents:()=>mB,getObjectFlags:()=>la,getOperatorAssociativity:()=>sbe,getOperatorPrecedence:()=>Zne,getOptionFromName:()=>fet,getOptionsForLibraryResolution:()=>Det,getOptionsNameMap:()=>Oie,getOptionsSyntaxByArrayElementValue:()=>uEe,getOptionsSyntaxByValue:()=>e9e,getOrCreateEmitNode:()=>g_,getOrUpdate:()=>cr,getOriginalNode:()=>xd,getOriginalNodeId:()=>Hy,getOutputDeclarationFileName:()=>jde,getOutputDeclarationFileNameWorker:()=>Itt,getOutputExtension:()=>u1e,getOutputFileNames:()=>vrn,getOutputJSFileNameWorker:()=>htt,getOutputPathsFor:()=>Kde,getOwnEmitOutputFilePath:()=>zZe,getOwnKeys:()=>yg,getOwnValues:()=>Kh,getPackageJsonTypesVersionsPaths:()=>z9e,getPackageNameFromTypesPackageName:()=>Ode,getPackageScopeForPath:()=>Wde,getParameterSymbolFromJSDoc:()=>Tne,getParentNodeInSpan:()=>L1e,getParseTreeNode:()=>eu,getParsedCommandLineOfConfigFile:()=>MEe,getPathComponents:()=>kp,getPathFromPathComponents:()=>Fm,getPathUpdater:()=>Pnt,getPathsBasePath:()=>SAe,getPatternFromSpec:()=>Qbe,getPendingEmitKindWithSeen:()=>kVe,getPositionOfLineAndCharacter:()=>ih,getPossibleGenericSignatures:()=>Krt,getPossibleOriginalInputExtensionForExtension:()=>gbe,getPossibleOriginalInputPathWithoutChangingExt:()=>Abe,getPossibleTypeArgumentsInfo:()=>jrt,getPreEmitDiagnostics:()=>Brn,getPrecedingNonSpaceCharacterPosition:()=>bWe,getPrivateIdentifier:()=>att,getProperties:()=>stt,getProperty:()=>fu,getPropertyAssignmentAliasLikeExpression:()=>YZe,getPropertyNameForPropertyNameNode:()=>R3,getPropertyNameFromType:()=>I2,getPropertyNameOfBindingOrAssignmentElement:()=>z$e,getPropertySymbolFromBindingElement:()=>_We,getPropertySymbolsFromContextualType:()=>rOe,getQuoteFromPreference:()=>cnt,getQuotePreference:()=>S1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>$z,getReferencedFileLocation:()=>epe,getRegexFromPattern:()=>nk,getRegularExpressionForWildcard:()=>gz,getRegularExpressionsForWildcards:()=>iie,getRelativePathFromDirectory:()=>_p,getRelativePathFromFile:()=>c1,getRelativePathToDirectoryOrUrl:()=>Hf,getRenameLocation:()=>W1e,getReplacementSpanForContextToken:()=>ent,getResolutionDiagnostic:()=>Wtt,getResolutionModeOverride:()=>Kie,getResolveJsonModule:()=>WW,getResolvePackageJsonExports:()=>lz,getResolvePackageJsonImports:()=>$ne,getResolvedExternalModuleName:()=>j7,getResolvedModuleFromResolution:()=>PL,getResolvedTypeReferenceDirectiveFromResolution:()=>E7,getRestIndicatorOfBindingOrAssignmentElement:()=>R9e,getRestParameterElementType:()=>Zye,getRightMostAssignedExpression:()=>bne,getRootDeclaration:()=>Fw,getRootDirectoryOfResolutionCache:()=>S5t,getRootLength:()=>Mf,getScriptKind:()=>Cnt,getScriptKindFromFileName:()=>qAe,getScriptTargetFeatures:()=>ine,getSelectedEffectiveModifierFlags:()=>eQ,getSelectedSyntacticModifierFlags:()=>sLe,getSemanticClassifications:()=>cHt,getSemanticJsxChildren:()=>dU,getSetAccessorTypeAnnotationNode:()=>eLe,getSetAccessorValueParameter:()=>q7,getSetExternalModuleIndicator:()=>qne,getShebang:()=>SB,getSingleVariableOfVariableStatement:()=>w3,getSnapshotText:()=>qz,getSnippetElement:()=>CEe,getSourceFileOfModule:()=>KJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>BAe,getSourceFileVersionAsHashFromText:()=>WVe,getSourceFilesToEmit:()=>vAe,getSourceMapRange:()=>qT,getSourceMapper:()=>SHt,getSourceTextOfNodeFromSourceFile:()=>vF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>JD,getStartPositionOfRange:()=>iz,getStartsOnNewLine:()=>O3,getStaticPropertiesAndClassStaticBlock:()=>AVe,getStrictOptionValue:()=>u_,getStringComparer:()=>gd,getSubPatternFromSpec:()=>KAe,getSuperCallFromStatement:()=>uVe,getSuperContainer:()=>G7,getSupportedCodeFixes:()=>mit,getSupportedExtensions:()=>Az,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>dz,getSwitchedType:()=>bnt,getSymbolId:()=>xg,getSymbolNameForPrivateIdentifier:()=>Fne,getSymbolTarget:()=>_nt,getSyntacticClassifications:()=>lHt,getSyntacticModifierFlags:()=>Zx,getSyntacticModifierFlagsNoCache:()=>_be,getSynthesizedDeepClone:()=>KA,getSynthesizedDeepCloneWithReplacements:()=>hie,getSynthesizedDeepClones:()=>l0,getSynthesizedDeepClonesWithReplacements:()=>Ide,getSyntheticLeadingComments:()=>P3,getSyntheticTrailingComments:()=>DU,getTargetLabel:()=>nWe,getTargetOfBindingOrAssignmentElement:()=>QW,getTemporaryModuleResolutionState:()=>Vde,getTextOfConstantValue:()=>Hge,getTextOfIdentifierOrLiteral:()=>A2,getTextOfJSDocComment:()=>TJ,getTextOfJsxAttributeName:()=>Ww,getTextOfJsxNamespacedName:()=>Sz,getTextOfNode:()=>Fp,getTextOfNodeFromSourceText:()=>OY,getTextOfPropertyName:()=>BW,getThisContainer:()=>s0,getThisParameter:()=>GW,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>UD,getTokenSourceMapRange:()=>Nz,getTouchingPropertyName:()=>Ob,getTouchingToken:()=>ise,getTrailingCommentRanges:()=>a2,getTrailingSemicolonDeferringWriter:()=>lbe,getTransformers:()=>L3t,getTsBuildInfoEmitOutputFilePath:()=>n5,getTsConfigObjectLiteralExpression:()=>x7,getTsConfigPropArrayElementValue:()=>nAe,getTypeAnnotationNode:()=>tLe,getTypeArgumentOrTypeParameterList:()=>DMt,getTypeKeywordOfTypeOnlyImport:()=>gnt,getTypeNode:()=>l9e,getTypeNodeIfAccessible:()=>Ipe,getTypeParameterFromJsDoc:()=>WZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>nVe,getUILocale:()=>ff,getUniqueName:()=>UU,getUniqueSymbolId:()=>JMt,getUseDefineForClassFields:()=>eie,getWatchErrorSummaryDiagnosticMessage:()=>qtt,getWatchFactory:()=>vtt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>Ure,handleNoEmitOptions:()=>Vtt,handleWatchOptionsConfigDirTemplateSubstitution:()=>Q9e,hasAbstractModifier:()=>ZW,hasAccessorModifier:()=>Zw,hasAmbientModifier:()=>mbe,hasChangesInResolutions:()=>ene,hasContextSensitiveParameters:()=>sde,hasDecorators:()=>m1,hasDocComment:()=>RMt,hasDynamicName:()=>qD,hasEffectiveModifier:()=>Lb,hasEffectiveModifiers:()=>hbe,hasEffectiveReadonlyModifier:()=>D3,hasExtension:()=>B0,hasImplementationTSFileExtension:()=>FLe,hasIndexSignature:()=>ynt,hasInferredType:()=>dde,hasInitializer:()=>XT,hasInvalidEscape:()=>abe,hasJSDocNodes:()=>jm,hasJSDocParameterTags:()=>vJ,hasJSFileExtension:()=>_N,hasJsonModuleEmitEnabled:()=>QAe,hasOnlyExpressionInitializer:()=>d1,hasOverrideModifier:()=>Hne,hasPossibleExternalModuleReference:()=>Uge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>w1e,hasQuestionToken:()=>jY,hasRecordedExternalHelpers:()=>TOt,hasResolutionModeOverride:()=>zLe,hasRestParameter:()=>Kre,hasScopeMarker:()=>Gb,hasStaticModifier:()=>tm,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>iLe,hasTSFileExtension:()=>Z3,hasTabstop:()=>KLe,hasTrailingDirectorySeparator:()=>Kp,hasType:()=>mf,hasTypeArguments:()=>Yqe,hasZeroOrOneAsteriskCharacter:()=>Pbe,hostGetCanonicalFileName:()=>$D,hostUsesCaseSensitiveFileNames:()=>N3,idText:()=>Vo,identifierIsThisKeyword:()=>pbe,identifierToKeywordKind:()=>lv,identity:()=>Zl,identitySourceMapConsumer:()=>rtt,ignoreSourceNewlines:()=>yEe,ignoredPaths:()=>Jp,importFromModuleSpecifier:()=>O7,importSyntaxAffectsModuleResolution:()=>Vbe,indexOfAnyCharCode:()=>tt,indexOfNode:()=>SW,indicesOf:()=>Ao,inferredTypesContainingFile:()=>$de,injectClassNamedEvaluationHelperBlockIfMissing:()=>IVe,injectClassThisAssignmentIfMissing:()=>u3t,insertImports:()=>unt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>ML,insertStatementAfterStandardPrologue:()=>Wge,insertStatementsAfterCustomPrologue:()=>tne,insertStatementsAfterStandardPrologue:()=>Nw,intersperse:()=>fe,intrinsicTagNameToString:()=>oEe,introducesArgumentsExoticObject:()=>SZe,inverseJsxOptionMap:()=>OEe,isAbstractConstructorSymbol:()=>Dbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>bp,isAccessibilityModifier:()=>qrt,isAccessor:()=>wB,isAccessorModifier:()=>ht,isAliasableExpression:()=>hAe,isAmbientModule:()=>c_,isAmbientPropertyDeclaration:()=>qJ,isAnyDirectorySeparator:()=>n0,isAnyImportOrBareOrAccessedRequire:()=>Jge,isAnyImportOrReExport:()=>HY,isAnyImportOrRequireStatement:()=>T7,isAnyImportSyntax:()=>vW,isAnySupportedFileExtension:()=>f$e,isApplicableVersionedTypesKey:()=>zEe,isArgumentExpressionOfElementAccess:()=>Prt,isArray:()=>Ki,isArrayBindingElement:()=>f3,isArrayBindingOrAssignmentElement:()=>LJ,isArrayBindingOrAssignmentPattern:()=>Pre,isArrayBindingPattern:()=>m2,isArrayLiteralExpression:()=>YI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>a9,isArrayTypeNode:()=>WF,isArrowFunction:()=>gA,isAsExpression:()=>Xd,isAssertClause:()=>cOt,isAssertEntry:()=>B$r,isAssertionExpression:()=>vd,isAssertsKeyword:()=>X,isAssignmentDeclaration:()=>L7,isAssignmentExpression:()=>zm,isAssignmentOperator:()=>ek,isAssignmentPattern:()=>DY,isAssignmentTarget:()=>RF,isAsteriskToken:()=>Bie,isAsyncFunction:()=>X7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>i0,isAwaitExpression:()=>_1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>AQ,isBinaryExpression:()=>po,isBinaryLogicalOperator:()=>Yne,isBinaryOperatorToken:()=>ZOt,isBindableObjectDefinePropertyCall:()=>S3,isBindableStaticAccessExpression:()=>NW,isBindableStaticElementAccessExpression:()=>dAe,isBindableStaticNameExpression:()=>v3,isBindingElement:()=>mg,isBindingElementOfBareOrAccessedRequire:()=>kZe,isBindingName:()=>LL,isBindingOrAssignmentElement:()=>GJ,isBindingOrAssignmentPattern:()=>FJ,isBindingPattern:()=>Nu,isBlock:()=>eg,isBlockLike:()=>eq,isBlockOrCatchScoped:()=>jJ,isBlockScope:()=>$J,isBlockScopedContainerTopLevel:()=>Xge,isBooleanLiteral:()=>RY,isBreakOrContinueStatement:()=>SY,isBreakStatement:()=>E$r,isBuildCommand:()=>X5t,isBuildInfoFile:()=>V3t,isBuilderProgram:()=>ert,isBundle:()=>AOt,isCallChain:()=>BB,isCallExpression:()=>Ll,isCallExpressionTarget:()=>Frt,isCallLikeExpression:()=>SF,isCallLikeOrFunctionLikeExpression:()=>Hre,isCallOrNewExpression:()=>Av,isCallOrNewExpressionTarget:()=>Zrt,isCallSignatureDeclaration:()=>Tg,isCallToHelper:()=>ik,isCaseBlock:()=>vde,isCaseClause:()=>Nie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>HJ,isCatchClause:()=>IQ,isCatchClauseVariableDeclaration:()=>ULe,isCatchClauseVariableDeclarationOrBindingElement:()=>sne,isCheckJsEnabledForFile:()=>hz,isCircularBuildOrder:()=>jz,isClassDeclaration:()=>mm,isClassElement:()=>MI,isClassExpression:()=>wd,isClassInstanceProperty:()=>Ore,isClassLike:()=>xa,isClassMemberModifier:()=>Wre,isClassNamedEvaluationHelperBlock:()=>Jz,isClassOrTypeElement:()=>NY,isClassStaticBlockDeclaration:()=>dl,isClassThisAssignmentBlock:()=>Xde,isColonToken:()=>vEe,isCommaExpression:()=>DEe,isCommaListExpression:()=>Ede,isCommaSequence:()=>Nde,isCommaToken:()=>SEe,isComment:()=>dWe,isCommonJsExportPropertyAssignment:()=>tAe,isCommonJsExportedExpression:()=>Lye,isCompoundAssignment:()=>Hde,isComputedNonLiteralName:()=>YY,isComputedPropertyName:()=>Un,isConciseBody:()=>h7,isConditionalExpression:()=>Hw,isConditionalTypeNode:()=>h2,isConstAssertion:()=>aEe,isConstTypeReference:()=>l2,isConstructSignatureDeclaration:()=>im,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>sk,isContextualKeyword:()=>CAe,isContinueStatement:()=>b$r,isCustomPrologue:()=>gne,isDebuggerStatement:()=>S$r,isDeclaration:()=>em,isDeclarationBindingElement:()=>CW,isDeclarationFileName:()=>MC,isDeclarationName:()=>KT,isDeclarationNameOfEnumOrNamespace:()=>Rbe,isDeclarationReadonly:()=>Cf,isDeclarationStatement:()=>Tge,isDeclarationWithTypeParameterChildren:()=>une,isDeclarationWithTypeParameters:()=>lne,isDecorator:()=>Eo,isDecoratorTarget:()=>mMt,isDefaultClause:()=>Bde,isDefaultImport:()=>B3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>xZe,isDeleteExpression:()=>PF,isDeleteTarget:()=>jye,isDeprecatedDeclaration:()=>kWe,isDestructuringAssignment:()=>Lx,isDiskPathRoot:()=>AE,isDoStatement:()=>y$r,isDocumentRegistryEntry:()=>J1e,isDotDotDotToken:()=>yde,isDottedName:()=>Xne,isDynamicName:()=>_Ae,isEffectiveExternalModule:()=>_3,isEffectiveStrictModeSourceFile:()=>cne,isElementAccessChain:()=>EF,isElementAccessExpression:()=>Qg,isEmittedFileOfProgram:()=>Q3t,isEmptyArrayLiteral:()=>ALe,isEmptyBindingElement:()=>Rr,isEmptyBindingPattern:()=>_t,isEmptyObjectLiteral:()=>Sbe,isEmptyStatement:()=>k$e,isEmptyStringLiteral:()=>Oye,isEntityName:()=>mC,isEntityNameExpression:()=>Hd,isEnumConst:()=>OA,isEnumDeclaration:()=>J3,isEnumMember:()=>YF,isEqualityOperatorKind:()=>vWe,isEqualsGreaterThanToken:()=>h9e,isExclamationToken:()=>Gz,isExcludedFile:()=>gPt,isExclusivelyTypeOnlyImportOrExport:()=>ktt,isExpandoPropertyDeclaration:()=>cQ,isExportAssignment:()=>yf,isExportDeclaration:()=>Vh,isExportModifier:()=>y,isExportName:()=>w9e,isExportNamespaceAsDefaultDeclaration:()=>WY,isExportOrDefaultModifier:()=>FEe,isExportSpecifier:()=>k0,isExportsIdentifier:()=>E3,isExportsOrModuleExportsOrAlias:()=>_Q,isExpression:()=>un,isExpressionNode:()=>UT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>yMt,isExpressionOfOptionalChainRoot:()=>EY,isExpressionStatement:()=>PC,isExpressionWithTypeArguments:()=>A_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>DAe,isExternalModule:()=>Lm,isExternalModuleAugmentation:()=>wF,isExternalModuleImportEqualsDeclaration:()=>YL,isExternalModuleIndicator:()=>QT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>HF,isExternalModuleSymbol:()=>XD,isExternalOrCommonJsModule:()=>Sl,isFileLevelReservedGeneratedIdentifier:()=>wY,isFileLevelUniqueName:()=>v7,isFileProbablyExternalModule:()=>VEe,isFirstDeclarationOfSymbolParameter:()=>Int,isFixablePromiseHandler:()=>Jnt,isForInOrOfStatement:()=>WL,isForInStatement:()=>m9e,isForInitializer:()=>yE,isForOfStatement:()=>BEe,isForStatement:()=>X3,isFullSourceFile:()=>dN,isFunctionBlock:()=>wW,isFunctionBody:()=>m7,isFunctionDeclaration:()=>ah,isFunctionExpression:()=>jA,isFunctionExpressionOrArrowFunction:()=>ZF,isFunctionLike:()=>Eu,isFunctionLikeDeclaration:()=>Gd,isFunctionLikeKind:()=>mW,isFunctionLikeOrClassStaticBlockDeclaration:()=>p3,isFunctionOrConstructorTypeNode:()=>Sge,isFunctionOrModuleBlock:()=>xJ,isFunctionSymbol:()=>FZe,isFunctionTypeNode:()=>Z_,isGeneratedIdentifier:()=>Gp,isGeneratedPrivateIdentifier:()=>ZL,isGetAccessor:()=>TB,isGetAccessorDeclaration:()=>wg,isGetOrSetAccessorDeclaration:()=>RJ,isGlobalScopeAugmentation:()=>DB,isGlobalSourceFile:()=>fc,isGrammarError:()=>Vge,isHeritageClause:()=>y1,isHoistedFunction:()=>zge,isHoistedVariableStatement:()=>qge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>ebe,isIdentifierName:()=>HZe,isIdentifierOrThisTypeNode:()=>kOt,isIdentifierPart:()=>l1,isIdentifierStart:()=>Sd,isIdentifierText:()=>qh,isIdentifierTypePredicate:()=>vZe,isIdentifierTypeReference:()=>HLe,isIfStatement:()=>Q3,isIgnoredFileFromWildCardWatching:()=>A1e,isImplicitGlob:()=>Ybe,isImportAttribute:()=>lOt,isImportAttributeName:()=>f7,isImportAttributes:()=>xU,isImportCall:()=>jp,isImportClause:()=>Yw,isImportDeclaration:()=>Yf,isImportEqualsDeclaration:()=>Zm,isImportKeyword:()=>an,isImportMeta:()=>fv,isImportOrExportSpecifier:()=>sS,isImportOrExportSpecifierName:()=>XMt,isImportSpecifier:()=>dy,isImportTypeAssertionContainer:()=>v$r,isImportTypeNode:()=>qm,isImportable:()=>Fnt,isInComment:()=>o9,isInCompoundLikeAssignment:()=>IAe,isInExpressionContext:()=>hne,isInJSDoc:()=>XY,isInJSFile:()=>Bo,isInJSXText:()=>TMt,isInJsonFile:()=>uAe,isInNonReferenceComment:()=>GMt,isInReferenceComment:()=>xMt,isInRightSideOfInternalImportEqualsDeclaration:()=>tWe,isInString:()=>zz,isInTemplateString:()=>Urt,isInTopLevelContext:()=>oAe,isInTypeQuery:()=>$Y,isIncrementalBuildInfo:()=>m1e,isIncrementalBundleEmitBuildInfo:()=>A5t,isIncrementalCompilation:()=>OW,isIndexSignatureDeclaration:()=>N0,isIndexedAccessTypeNode:()=>yv,isInferTypeNode:()=>rR,isInfinityOrNaNString:()=>yz,isInitializedProperty:()=>r1e,isInitializedVariable:()=>Une,isInsideJsxElement:()=>gWe,isInsideJsxElementOrAttribute:()=>wMt,isInsideNodeModules:()=>M1e,isInsideTemplateLiteral:()=>k1e,isInstanceOfExpression:()=>kAe,isInstantiatedModule:()=>Ket,isInterfaceDeclaration:()=>p_,isInternalDeclaration:()=>jre,isInternalModuleImportEqualsDeclaration:()=>b3,isInternalName:()=>U$e,isIntersectionTypeNode:()=>_f,isIntrinsicJsxName:()=>pU,isIterationStatement:()=>YT,isJSDoc:()=>aR,isJSDocAllType:()=>fOt,isJSDocAugmentsTag:()=>Lz,isJSDocAuthorTag:()=>N$r,isJSDocCallbackTag:()=>Z$e,isJSDocClassTag:()=>hOt,isJSDocCommentContainingNode:()=>C7,isJSDocConstructSignature:()=>zY,isJSDocDeprecatedTag:()=>P$e,isJSDocEnumTag:()=>TEe,isJSDocFunctionType:()=>kie,isJSDocImplementsTag:()=>S9e,isJSDocImportTag:()=>NN,isJSDocIndexSignature:()=>AAe,isJSDocLikeText:()=>net,isJSDocLink:()=>dOt,isJSDocLinkCode:()=>pOt,isJSDocLinkLike:()=>Gx,isJSDocLinkPlain:()=>T$r,isJSDocMemberName:()=>j3,isJSDocNameReference:()=>wde,isJSDocNamepathType:()=>R$r,isJSDocNamespaceBody:()=>Tye,isJSDocNode:()=>m3,isJSDocNonNullableType:()=>_9e,isJSDocNullableType:()=>Die,isJSDocOptionalParameter:()=>ade,isJSDocOptionalType:()=>F$e,isJSDocOverloadTag:()=>xie,isJSDocOverrideTag:()=>b9e,isJSDocParameterTag:()=>dS,isJSDocPrivateTag:()=>V$e,isJSDocPropertyLikeTag:()=>vY,isJSDocPropertyTag:()=>mOt,isJSDocProtectedTag:()=>W$e,isJSDocPublicTag:()=>L$e,isJSDocReadonlyTag:()=>O$e,isJSDocReturnTag:()=>E9e,isJSDocSatisfiesExpression:()=>iEe,isJSDocSatisfiesTag:()=>v9e,isJSDocSeeTag:()=>D$r,isJSDocSignature:()=>s9,isJSDocTag:()=>C3,isJSDocTemplateTag:()=>MB,isJSDocThisTag:()=>M$e,isJSDocThrowsTag:()=>x$r,isJSDocTypeAlias:()=>lS,isJSDocTypeAssertion:()=>hQ,isJSDocTypeExpression:()=>K3,isJSDocTypeLiteral:()=>FU,isJSDocTypeTag:()=>Tde,isJSDocTypedefTag:()=>ZU,isJSDocUnknownTag:()=>k$r,isJSDocUnknownType:()=>IOt,isJSDocVariadicType:()=>y9e,isJSXTagName:()=>iU,isJsonEqual:()=>ide,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>RN,isJsxAttributeLike:()=>PJ,isJsxAttributeName:()=>jLe,isJsxAttributes:()=>fQ,isJsxCallLike:()=>h3,isJsxChild:()=>OJ,isJsxClosingElement:()=>pQ,isJsxClosingFragment:()=>gOt,isJsxElement:()=>TN,isJsxExpression:()=>Rie,isJsxFragment:()=>U3,isJsxNamespacedName:()=>oR,isJsxOpeningElement:()=>sR,isJsxOpeningFragment:()=>Qw,isJsxOpeningLikeElement:()=>nI,isJsxOpeningLikeElementTagName:()=>CMt,isJsxSelfClosingElement:()=>GU,isJsxSpreadAttribute:()=>Zz,isJsxTagNameExpression:()=>OL,isJsxText:()=>r9,isJumpStatementTarget:()=>T1e,isKeyword:()=>T0,isKeywordOrPunctuation:()=>mAe,isKnownSymbol:()=>J7,isLabelName:()=>Wrt,isLabelOfLabeledStatement:()=>Vrt,isLabeledStatement:()=>YW,isLateVisibilityPaintedStatement:()=>R7,isLeftHandSideExpression:()=>G_,isLet:()=>aS,isLineBreak:()=>ml,isLiteralComputedPropertyDeclarationName:()=>Nne,isLiteralExpression:()=>FL,isLiteralExpressionOfObject:()=>Lre,isLiteralImportTypeNode:()=>Fy,isLiteralKind:()=>BY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>iWe,isLiteralTypeLiteral:()=>vge,isLiteralTypeNode:()=>wE,isLocalName:()=>QF,isLogicalOperator:()=>lLe,isLogicalOrCoalescingAssignmentExpression:()=>RAe,isLogicalOrCoalescingAssignmentOperator:()=>$7,isLogicalOrCoalescingBinaryExpression:()=>Qne,isLogicalOrCoalescingBinaryOperator:()=>NAe,isMappedTypeNode:()=>OB,isMemberName:()=>Bw,isMetaProperty:()=>Du,isMethodDeclaration:()=>gu,isMethodOrAccessor:()=>VL,isMethodSignature:()=>Il,isMinusToken:()=>bde,isMissingDeclaration:()=>w$r,isMissingPackageJsonInfo:()=>bPt,isModifier:()=>hg,isModifierKind:()=>YD,isModifierLike:()=>fp,isModuleAugmentationExternal:()=>ane,isModuleBlock:()=>BN,isModuleBody:()=>Bge,isModuleDeclaration:()=>Lh,isModuleExportName:()=>C9e,isModuleExportsAccessExpression:()=>pN,isModuleIdentifier:()=>RW,isModuleName:()=>FOt,isModuleOrEnumDeclaration:()=>I3,isModuleReference:()=>xY,isModuleSpecifierLike:()=>CWe,isModuleWithStringLiteralName:()=>PY,isNameOfFunctionDeclaration:()=>Hrt,isNameOfModuleDeclaration:()=>Mrt,isNamedDeclaration:()=>sh,isNamedEvaluation:()=>Fb,isNamedEvaluationSource:()=>tbe,isNamedExportBindings:()=>Zre,isNamedExports:()=>Ev,isNamedImportBindings:()=>xx,isNamedImports:()=>wN,isNamedImportsOrExports:()=>Kne,isNamedTupleMember:()=>tR,isNamespaceBody:()=>Qre,isNamespaceExport:()=>ak,isNamespaceExportDeclaration:()=>wEe,isNamespaceImport:()=>Mx,isNamespaceReexportDeclaration:()=>DZe,isNewExpression:()=>C2,isNewExpressionTarget:()=>spe,isNewScopeNode:()=>fie,isNoSubstitutionTemplateLiteral:()=>HW,isNodeArray:()=>aN,isNodeArrayMultiLine:()=>FAe,isNodeDescendantOf:()=>kW,isNodeKind:()=>A7,isNodeLikeSystem:()=>Xm,isNodeModulesDirectory:()=>Od,isNodeWithPossibleHoistedDeclaration:()=>MZe,isNonContextualKeyword:()=>$ye,isNonGlobalAmbientModule:()=>one,isNonNullAccess:()=>cde,isNonNullChain:()=>DJ,isNonNullExpression:()=>bv,isNonStaticMethodOrAccessorWithPrivateName:()=>n3t,isNotEmittedStatement:()=>uOt,isNullishCoalesce:()=>NJ,isNumber:()=>ws,isNumericLiteral:()=>yC,isNumericLiteralName:()=>bN,isObjectBindingElementWithoutPropertyName:()=>Z1e,isObjectBindingOrAssignmentElement:()=>_W,isObjectBindingOrAssignmentPattern:()=>ZJ,isObjectBindingPattern:()=>$m,isObjectLiteralElement:()=>GY,isObjectLiteralElementLike:()=>ww,isObjectLiteralExpression:()=>ag,isObjectLiteralMethod:()=>g2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>rAe,isObjectTypeDeclaration:()=>rQ,isOmittedExpression:()=>Ep,isOptionalChain:()=>LC,isOptionalChainRoot:()=>IW,isOptionalDeclaration:()=>FB,isOptionalJSDocPropertyLikeTag:()=>gie,isOptionalTypeNode:()=>n9,isOuterExpression:()=>T9e,isOutermostOptionalChain:()=>d3,isOverrideModifier:()=>St,isPackageJsonInfo:()=>$9e,isPackedArrayLiteral:()=>rEe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>We,isParameterPropertyModifier:()=>TY,isParenthesizedExpression:()=>dI,isParenthesizedTypeNode:()=>_v,isParseTreeNode:()=>DL,isPartOfParameterDeclaration:()=>jL,isPartOfTypeNode:()=>xw,isPartOfTypeOnlyImportOrExportDeclaration:()=>Ege,isPartOfTypeQuery:()=>lAe,isPartiallyEmittedExpression:()=>Ay,isPatternMatch:()=>qd,isPinnedComment:()=>B7,isPlainJsFile:()=>ZY,isPlusToken:()=>xz,isPossiblyTypeArgumentPosition:()=>D1e,isPostfixUnaryExpression:()=>ok,isPrefixUnaryExpression:()=>D0,isPrimitiveLiteralValue:()=>vz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>hC,isPrivateIdentifierPropertyAccessExpression:()=>hW,isPrivateIdentifierSymbol:()=>XZe,isProgramUptoDate:()=>Ztt,isPrologueDirective:()=>cS,isPropertyAccessChain:()=>Dx,isPropertyAccessEntityNameExpression:()=>xF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>VJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Mre,isPropertyAssignment:()=>Cm,isPropertyDeclaration:()=>pi,isPropertyName:()=>PI,isPropertyNameLiteral:()=>Gw,isPropertySignature:()=>ss,isPrototypeAccess:()=>GF,isPrototypePropertyAssignment:()=>Sne,isPunctuation:()=>qye,isPushOrUnshiftIdentifier:()=>rbe,isQualifiedName:()=>zi,isQuestionDotToken:()=>wie,isQuestionOrExclamationToken:()=>DOt,isQuestionOrPlusOrMinusToken:()=>GOt,isQuestionToken:()=>eR,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>xOt,isRecognizedTripleSlashComment:()=>rne,isReferenceFileLocation:()=>jie,isReferencedFile:()=>i5,isRegularExpressionLiteral:()=>EEe,isRequireCall:()=>uy,isRequireVariableStatement:()=>mne,isRestParameter:()=>RB,isRestTypeNode:()=>i9,isReturnStatement:()=>_2,isReturnStatementWithFixablePromiseHandler:()=>OWe,isRightSideOfAccessExpression:()=>Ebe,isRightSideOfInstanceofExpression:()=>gLe,isRightSideOfPropertyAccess:()=>tse,isRightSideOfQualifiedName:()=>_Mt,isRightSideOfQualifiedNameOrPropertyAccess:()=>ez,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>uLe,isRootedDiskPath:()=>Up,isSameEntityName:()=>sU,isSatisfiesExpression:()=>Xg,isSemicolonClassElement:()=>oOt,isSetAccessor:()=>dv,isSetAccessorDeclaration:()=>kg,isShiftOperatorOrHigher:()=>eet,isShorthandAmbientModuleSymbol:()=>MY,isShorthandPropertyAssignment:()=>u0,isSideEffectImport:()=>cEe,isSignedNumericLiteral:()=>Gne,isSimpleCopiableExpression:()=>yQ,isSimpleInlineableExpression:()=>kN,isSimpleParameterList:()=>n1e,isSingleOrDoubleQuote:()=>Cne,isSolutionConfig:()=>vet,isSourceElement:()=>qLe,isSourceFile:()=>cl,isSourceFileFromLibrary:()=>Ase,isSourceFileJS:()=>o0,isSourceFileNotJson:()=>gAe,isSourceMapping:()=>e3t,isSpecialPropertyDeclaration:()=>Qye,isSpreadAssignment:()=>Hx,isSpreadElement:()=>cf,isStatement:()=>Lc,isStatementButNotDeclaration:()=>WJ,isStatementOrBlock:()=>Jre,isStatementWithLocals:()=>Zge,isStatic:()=>lg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>qY,isStringAndEmptyAnonymousObjectIntersection:()=>kMt,isStringDoubleQuoted:()=>_ne,isStringLiteral:()=>Lg,isStringLiteralLike:()=>_A,isStringLiteralOrJsxExpression:()=>MJ,isStringLiteralOrTemplate:()=>jMt,isStringOrNumericLiteralLike:()=>h1,isStringOrRegularExpressionOrTemplateLiteral:()=>zrt,isStringTextContainingNode:()=>Vre,isSuperCall:()=>Gy,isSuperKeyword:()=>rr,isSuperProperty:()=>Zy,isSupportedSourceFileName:()=>Ube,isSwitchStatement:()=>Sde,isSyntaxList:()=>Gie,isSyntheticExpression:()=>Y3,isSyntheticReference:()=>Fz,isTagName:()=>Ort,isTaggedTemplateExpression:()=>QI,isTaggedTemplateTag:()=>hMt,isTemplateExpression:()=>MF,isTemplateHead:()=>dQ,isTemplateLiteral:()=>yW,isTemplateLiteralKind:()=>HD,isTemplateLiteralToken:()=>bge,isTemplateLiteralTypeNode:()=>nR,isTemplateLiteralTypeSpan:()=>SN,isTemplateMiddle:()=>vie,isTemplateMiddleOrTemplateTail:()=>p7,isTemplateSpan:()=>Tie,isTemplateTail:()=>_de,isTextWhiteSpaceLike:()=>VMt,isThis:()=>rse,isThisContainerOrFunctionBlock:()=>TZe,isThisIdentifier:()=>kF,isThisInTypeQuery:()=>zL,isThisInitializedDeclaration:()=>aAe,isThisInitializedObjectBindingExpression:()=>NZe,isThisProperty:()=>pne,isThisTypeNode:()=>Px,isThisTypeParameter:()=>bz,isThisTypePredicate:()=>BZe,isThrowStatement:()=>G$e,isToken:()=>xL,isTokenKind:()=>d7,isTraceEnabled:()=>JW,isTransientSymbol:()=>Tw,isTrivia:()=>gU,isTryStatement:()=>kU,isTupleTypeNode:()=>Mw,isTypeAlias:()=>Bne,isTypeAliasDeclaration:()=>PB,isTypeAssertionExpression:()=>OF,isTypeDeclaration:()=>aQ,isTypeElement:()=>kx,isTypeKeyword:()=>lpe,isTypeKeywordTokenOrIdentifier:()=>IWe,isTypeLiteralNode:()=>bh,isTypeNode:()=>uc,isTypeNodeKind:()=>OAe,isTypeOfExpression:()=>vN,isTypeOnlyExportDeclaration:()=>kJ,isTypeOnlyImportDeclaration:()=>cN,isTypeOnlyImportOrExportDeclaration:()=>lN,isTypeOperatorNode:()=>WB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>BE,isTypeQueryNode:()=>Pw,isTypeReferenceNode:()=>oh,isTypeReferenceType:()=>_7,isTypeUsableAsPropertyName:()=>f2,isUMDExportSymbol:()=>WAe,isUnaryExpression:()=>Yre,isUnaryExpressionWithWrite:()=>uN,isUnicodeIdentifierStart:()=>It,isUnionTypeNode:()=>AS,isUrl:()=>o_,isValidBigIntString:()=>cie,isValidESSymbolDeclaration:()=>EZe,isValidTypeOnlyAliasUseSite:()=>e9,isValueSignatureDeclaration:()=>T3,isVarAwaitUsing:()=>Bd,isVarConst:()=>sI,isVarConstLike:()=>JT,isVarUsing:()=>iI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>k7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>TW,isVariableDeclarationInitializedToRequire:()=>Z7,isVariableDeclarationList:()=>d_,isVariableLike:()=>D7,isVariableStatement:()=>Eh,isVoidExpression:()=>iR,isWatchSet:()=>Nbe,isWhileStatement:()=>x$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>hu,isWithStatement:()=>aOt,isWriteAccess:()=>F3,isWriteOnlyAccess:()=>LAe,isYieldExpression:()=>Qd,jsxModeNeedsExplicitImport:()=>knt,keywordPart:()=>v1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>cet,libs:()=>F9e,lineBreakPart:()=>cse,loadModuleFromGlobalCache:()=>ZPt,loadWithModeAwareCache:()=>p1e,makeIdentifierFromModuleName:()=>Dw,makeImport:()=>eO,makeStringLiteral:()=>upe,mangleScopedPackageName:()=>Qie,map:()=>lt,mapAllOrFail:()=>$t,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Ot,mapOneOrMany:()=>Tnt,mapToDisplayParts:()=>tO,matchFiles:()=>Xbe,matchPatternOrExact:()=>jbe,matchedText:()=>_w,matchesExclude:()=>U9e,matchesExcludeWorker:()=>K9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>yLe,memoize:()=>LA,memoizeOne:()=>VA,min:()=>oa,minAndMax:()=>OLe,missingFileModifiedTime:()=>xh,modifierToFlag:()=>tQ,modifiersToFlags:()=>Lw,moduleExportNameIsDefault:()=>pv,moduleExportNameTextEscaped:()=>BF,moduleExportNameTextUnescaped:()=>KD,moduleOptionDeclaration:()=>JOt,moduleResolutionIsEqualTo:()=>Gge,moduleResolutionNameAndModeGetter:()=>SVe,moduleResolutionOptionDeclarations:()=>get,moduleResolutionSupportsPackageJsonExportsAndImports:()=>EU,moduleResolutionUsesNodeModules:()=>hWe,moduleSpecifierToValidIdentifier:()=>Y1e,moduleSpecifiers:()=>JF,moduleSupportsImportAttributes:()=>wLe,moduleSymbolToValidIdentifier:()=>H1e,moveEmitHelpers:()=>a9e,moveRangeEnd:()=>GAe,moveRangePastDecorators:()=>rk,moveRangePastModifiers:()=>hv,moveRangePos:()=>tk,moveSyntheticComments:()=>i9e,mutateMap:()=>oz,mutateMapSkippingNewValues:()=>hN,needsParentheses:()=>EWe,needsScopeMarker:()=>I7,newCaseClauseTracker:()=>FWe,newPrivateEnvironment:()=>s3t,noEmitNotification:()=>a1e,noEmitSubstitution:()=>Ude,noTransformers:()=>Z3t,noTruncationMaximumTruncationLength:()=>qre,nodeCanBeDecorated:()=>tU,nodeCoreModules:()=>wU,nodeHasName:()=>u3,nodeIsDecorated:()=>rU,nodeIsMissing:()=>af,nodeIsPresent:()=>p1,nodeIsSynthesized:()=>ap,nodeModuleNameResolver:()=>wPt,nodeModulesPathPart:()=>Yx,nodeNextJsonConfigResolver:()=>TPt,nodeOrChildIsDecorated:()=>Ine,nodeOverlapsWithStartEnd:()=>sWe,nodePosToString:()=>Lge,nodeSeenTracker:()=>sse,nodeStartsNewLexicalEnvironment:()=>nbe,noop:()=>Dc,noopFileWatcher:()=>$ie,normalizePath:()=>su,normalizeSlashes:()=>xp,normalizeSpans:()=>vI,not:()=>dC,notImplemented:()=>rl,notImplementedResolver:()=>P3t,nullNodeConverters:()=>dEe,nullParenthesizerRules:()=>AEe,nullTransformationContext:()=>l1e,objectAllocator:()=>WC,operatorPart:()=>Ape,optionDeclarations:()=>Xw,optionMapToObject:()=>M9e,optionsAffectingProgramStructure:()=>zOt,optionsForBuild:()=>det,optionsForWatch:()=>Mz,optionsHaveChanges:()=>w0,or:()=>Qp,orderedRemoveItem:()=>Xl,orderedRemoveItemAt:()=>WA,packageIdToPackageName:()=>JJ,packageIdToString:()=>AN,parameterIsThisKeyword:()=>DF,parameterNamePart:()=>OMt,parseBaseNodeFactory:()=>POt,parseBigInt:()=>MLe,parseBuildCommand:()=>sPt,parseCommandLine:()=>nPt,parseCommandLineWorker:()=>pet,parseConfigFileTextToJson:()=>Iet,parseConfigFileWithSystem:()=>B5t,parseConfigHostFromCompilerHostLike:()=>NVe,parseCustomTypeOption:()=>W9e,parseIsolatedEntityName:()=>Pz,parseIsolatedJSDocComment:()=>HOt,parseJSDocTypeExpressionForTests:()=>nen,parseJsonConfigFileContent:()=>xen,parseJsonSourceFileConfigFileContent:()=>QEe,parseJsonText:()=>WEe,parseListTypeOption:()=>tPt,parseNodeFactory:()=>q3,parseNodeModuleFromPath:()=>KEe,parsePackageName:()=>jEe,parsePseudoBigInt:()=>mz,parseValidBigInt:()=>eEe,pasteEdits:()=>Dst,patchWriteFileEnsuringDirectory:()=>i2,pathContainsNodeModules:()=>KW,pathIsAbsolute:()=>dE,pathIsBareSpecifier:()=>jh,pathIsRelative:()=>mp,patternText:()=>e2,performIncrementalCompilation:()=>w5t,performance:()=>_b,positionBelongsToNode:()=>Yrt,positionIsASICandidate:()=>BWe,positionIsSynthesized:()=>xB,positionsAreOnSameLine:()=>vE,preProcessFile:()=>Yin,probablyUsesSemicolons:()=>P1e,processCommentPragmas:()=>oet,processPragmasIntoFields:()=>aet,processTaggedTemplateExpression:()=>utt,programContainsEsModules:()=>ZMt,programContainsModules:()=>FMt,projectReferenceIsEqualTo:()=>$re,propertyNamePart:()=>PMt,pseudoBigIntToString:()=>PW,punctuationPart:()=>F0,pushIfUnique:()=>Qi,quote:()=>fpe,quotePreferenceFromString:()=>ant,rangeContainsPosition:()=>nse,rangeContainsPositionExclusive:()=>R1e,rangeContainsRange:()=>gy,rangeContainsRangeExclusive:()=>bMt,rangeContainsStartEnd:()=>N1e,rangeEndIsOnSameLineAsRangeStart:()=>Jne,rangeEndPositionsAreOnSameLine:()=>pLe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>x3,rangeOfNode:()=>qbe,rangeOfTypeParameters:()=>$be,rangeOverlapsWithStartEnd:()=>ope,rangeStartIsOnSameLineAsRangeEnd:()=>fLe,rangeStartPositionsAreOnSameLine:()=>nz,readBuilderProgram:()=>PVe,readConfigFile:()=>HEe,readJson:()=>k3,readJsonConfigFile:()=>oPt,readJsonOrUndefined:()=>wbe,reduceEachLeadingCommentRange:()=>NL,reduceEachTrailingCommentRange:()=>hf,reduceLeft:()=>Kl,reduceLeftIterator:()=>ne,reducePathComponents:()=>s2,refactor:()=>rq,regExpEscape:()=>u$e,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Or,removeAllComments:()=>Rz,removeEmitHelper:()=>v$e,removeExtension:()=>aie,removeFileExtension:()=>c0,removeIgnoredPath:()=>GVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Gm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>oy,repeatString:()=>G1e,replaceElement:()=>Ql,replaceFirstStar:()=>V3,resolutionExtensionIsTSOrJson:()=>fz,resolveConfigFileProjectName:()=>prt,resolveJSModule:()=>SPt,resolveLibrary:()=>tVe,resolveModuleName:()=>OU,resolveModuleNameFromCache:()=>gtn,resolvePackageNameToPackageJson:()=>Ret,resolvePath:()=>IE,resolveProjectReferencePath:()=>Uz,resolveTripleslashReference:()=>wtt,resolveTypeReferenceDirective:()=>_Pt,resolvingEmptyArray:()=>zre,returnFalse:()=>As,returnNoopFileWatcher:()=>rpe,returnTrue:()=>Nf,returnUndefined:()=>Am,returnsPromise:()=>Xnt,rewriteModuleSpecifier:()=>Qz,sameFlatMap:()=>Fr,sameMap:()=>Er,sameMapping:()=>trn,scanTokenAtPosition:()=>qs,scanner:()=>f_,semanticDiagnosticsOptionDeclarations:()=>UOt,serializeCompilerOptions:()=>yet,server:()=>efn,servicesVersion:()=>xon,setCommentRange:()=>yh,setConfigFileInOptions:()=>bet,setConstantValue:()=>o9e,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>OVe,setIdentifierAutoGenerate:()=>yie,setIdentifierGeneratedImportReference:()=>u9e,setIdentifierTypeArguments:()=>Wx,setInternalEmitFlags:()=>_ie,setLocalizedDiagnosticMessages:()=>bU,setNodeChildren:()=>COt,setNodeFlags:()=>QLe,setObjectAllocator:()=>_Le,setOriginalNode:()=>ua,setParent:()=>UA,setParentRecursive:()=>t9,setPrivateIdentifier:()=>PU,setSnippetElement:()=>_Ee,setSourceMapRange:()=>Yg,setStackTraceLimit:()=>WT,setStartsOnNewLine:()=>Yd,setSyntheticLeadingComments:()=>VB,setSyntheticTrailingComments:()=>M3,setSys:()=>SI,setSysLog:()=>ZC,setTextRange:()=>gn,setTextRangeEnd:()=>BU,setTextRangePos:()=>Cz,setTextRangePosEnd:()=>GB,setTextRangePosWidth:()=>tEe,setTokenSourceMapRange:()=>hEe,setTypeNode:()=>c9e,setUILocale:()=>Zs,setValueDeclaration:()=>W7,shouldAllowImportingTsExtension:()=>Xie,shouldPreserveConstEnums:()=>Vb,shouldRewriteModuleSpecifier:()=>vne,shouldUseUriStyleNodeCoreModules:()=>xWe,showModuleSpecifier:()=>mLe,signatureHasRestParameter:()=>G0,signatureToDisplayParts:()=>mnt,single:()=>Xa,singleElementArray:()=>j_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ws,skipAlias:()=>VC,skipConstraint:()=>int,skipOuterExpressions:()=>XI,skipParentheses:()=>JA,skipPartiallyEmittedExpressions:()=>u2,skipTrivia:()=>Yu,skipTypeChecking:()=>L3,skipTypeCheckingIgnoringNoCheck:()=>PLe,skipTypeParentheses:()=>M7,skipWhile:()=>up,sliceAfter:()=>zbe,some:()=>zt,sortAndDeduplicate:()=>al,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>Aet,sourceFileMayBeEmitted:()=>xW,sourceMapCommentRegExp:()=>qet,sourceMapCommentRegExpDontCareLineStart:()=>zPt,spacePart:()=>TI,spanMap:()=>_n,startEndContainsRange:()=>ZAe,startEndOverlapsWithStartEnd:()=>oWe,startOnNewLine:()=>x0,startTracing:()=>hd,startsWith:()=>Ac,startsWithDirectory:()=>iv,startsWithUnderscore:()=>Dnt,startsWithUseStrict:()=>BOt,stringContainsAt:()=>nHt,stringToToken:()=>Ta,stripQuotes:()=>d2,supportedDeclarationExtensions:()=>tde,supportedJSExtensionsFlat:()=>SU,supportedLocaleDirectories:()=>cv,supportedTSExtensionsFlat:()=>Jbe,supportedTSImplementationExtensions:()=>sie,suppressLeadingAndTrailingTrivia:()=>Py,suppressLeadingTrivia:()=>gEe,suppressTrailingTrivia:()=>t9e,symbolEscapedNameNoDefault:()=>mWe,symbolName:()=>of,symbolNameNoDefault:()=>lnt,symbolToDisplayParts:()=>dpe,sys:()=>Ed,sysLog:()=>_h,tagNamesAreEquivalent:()=>e5,takeWhile:()=>i_,targetOptionDeclaration:()=>uet,targetToLibMap:()=>Is,testFormatSettings:()=>Ain,textChangeRangeIsUnchanged:()=>cy,textChangeRangeNewSpan:()=>iN,textChanges:()=>xo,textOrKeywordPart:()=>hnt,textPart:()=>IS,textRangeContainsPositionInclusive:()=>nl,textRangeContainsTextSpan:()=>Mg,textRangeIntersectsWithTextSpan:()=>l3,textSpanContainsPosition:()=>Io,textSpanContainsTextRange:()=>rd,textSpanContainsTextSpan:()=>kd,textSpanEnd:()=>Rs,textSpanIntersection:()=>mA,textSpanIntersectsWith:()=>nS,textSpanIntersectsWithPosition:()=>nN,textSpanIntersectsWithTextSpan:()=>Db,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>u1,textSpanOverlapsWith:()=>Gh,textSpansEqual:()=>ase,textToKeywordObj:()=>sv,timestamp:()=>Zg,toArray:()=>cc,toBuilderFileEmit:()=>f5t,toBuilderStateFileInfoForMultiEmit:()=>p5t,toEditorSettings:()=>q1e,toFileNameLowerCase:()=>Qm,toPath:()=>Pu,toProgramEmitPending:()=>I5t,toSorted:()=>yo,tokenIsIdentifierOrKeyword:()=>md,tokenIsIdentifierOrKeywordOrGreaterThan:()=>yB,tokenToString:()=>Vi,trace:()=>tu,tracing:()=>ki,tracingEnabled:()=>jl,transferSourceFileChildren:()=>_Ot,transform:()=>Hon,transformClassFields:()=>f3t,transformDeclarations:()=>ptt,transformECMAScriptModule:()=>dtt,transformES2015:()=>R3t,transformES2016:()=>T3t,transformES2017:()=>C3t,transformES2018:()=>_3t,transformES2019:()=>y3t,transformES2020:()=>b3t,transformES2021:()=>E3t,transformESDecorators:()=>m3t,transformESNext:()=>S3t,transformGenerators:()=>N3t,transformImpliedNodeFormatDependentModule:()=>k3t,transformJsx:()=>w3t,transformLegacyDecorators:()=>h3t,transformModule:()=>Att,transformNamedEvaluation:()=>b1,transformNodes:()=>c1e,transformSystemModule:()=>D3t,transformTypeScript:()=>p3t,transpile:()=>$in,transpileDeclaration:()=>zin,transpileModule:()=>BHt,transpileOptionValueCompilerOptions:()=>qOt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>RWe,tryCast:()=>Gs,tryDirectoryExists:()=>TWe,tryExtractTSExtension:()=>rz,tryFileExists:()=>use,tryGetClassExtendingExpressionWithTypeArguments:()=>ybe,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>bbe,tryGetDirectories:()=>wWe,tryGetExtensionFromPath:()=>zT,tryGetImportFromModuleSpecifier:()=>P7,tryGetJSDocSatisfiesTypeNode:()=>lde,tryGetModuleNameFromFile:()=>xEe,tryGetModuleSpecifierFromDeclaration:()=>UY,tryGetNativePerformanceHooks:()=>KS,tryGetPropertyAccessOrIdentifierToString:()=>LW,tryGetPropertyNameOfBindingOrAssignmentElement:()=>N9e,tryGetSourceMappingURL:()=>qPt,tryGetTextOfPropertyName:()=>QY,tryParseJson:()=>hU,tryParsePattern:()=>oQ,tryParsePatterns:()=>pz,tryParseRawSourceMap:()=>$Pt,tryReadDirectory:()=>Snt,tryReadFile:()=>xde,tryRemoveDirectoryPrefix:()=>UAe,tryRemoveExtension:()=>WLe,tryRemovePrefix:()=>US,tryRemoveSuffix:()=>vo,tscBuildOption:()=>VU,typeAcquisitionDeclarations:()=>L9e,typeAliasNamePart:()=>MMt,typeDirectiveIsEqualTo:()=>Fge,typeKeywords:()=>nnt,typeParameterNamePart:()=>HMt,typeToDisplayParts:()=>V1e,unchangedPollThresholds:()=>t0,unchangedTextChangeRange:()=>bo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>qEe,unorderedRemoveItem:()=>rf,unprefixedNodeCoreModules:()=>die,unreachableCodeIsError:()=>vLe,unsetNodeChildren:()=>Y$e,unusedLabelIsError:()=>BLe,unwrapInnermostStatementOfLabel:()=>Vye,unwrapParenthesizedExpression:()=>Ade,updateErrorForNoInputFiles:()=>J9e,updateLanguageServiceSourceFile:()=>Cit,updateMissingFilePathsWatch:()=>Stt,updateResolutionField:()=>Pie,updateSharedExtendedConfigFileWatcher:()=>_Ve,updateSourceFile:()=>iet,updateWatchingWildcardDirectories:()=>g1e,usingSingleLineStringWriter:()=>bW,utf16EncodeAsString:()=>rN,validateLocaleAndSetLanguage:()=>wx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Pde,visitCommaListElements:()=>t1e,visitEachChild:()=>_s,visitFunctionBody:()=>fS,visitIterationBody:()=>My,visitLexicalEnvironment:()=>zet,visitNode:()=>Mr,visitNodes:()=>Os,visitParameterList:()=>wI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>wOt,walkUpParenthesizedExpressions:()=>Iv,walkUpParenthesizedTypes:()=>Rne,walkUpParenthesizedTypesAndGetParentAndChild:()=>Kye,whitespaceOrMapCommentRegExp:()=>$et,writeCommentRange:()=>IU,writeFile:()=>wAe,writeFileEnsuringDirectories:()=>dbe,zipWith:()=>ce});var hOs=!0,zpn;function mOs(){return zpn??(zpn=new P(C))}function qpn(s,c,g,d,h){let _=c?"DeprecationError: ":"DeprecationWarning: ";return _+=`'${s}' `,_+=d?`has been deprecated since v${d}`:"is deprecated",_+=c?" and can no longer be used.":g?` and will no longer be usable after v${g}.`:".",_+=h?` ${CN(h,[s])}`:"",_}function COs(s,c,g,d){let h=qpn(s,!0,c,g,d);return()=>{throw new TypeError(h)}}function _Os(s,c,g,d){let h=!1;return()=>{hOs&&!h&&(pe.log.warn(qpn(s,!1,c,g,d)),h=!0)}}function yOs(s,c={}){let g=typeof c.typeScriptVersion=="string"?new P(c.typeScriptVersion):c.typeScriptVersion??mOs(),d=typeof c.errorAfter=="string"?new P(c.errorAfter):c.errorAfter,h=typeof c.warnAfter=="string"?new P(c.warnAfter):c.warnAfter,_=typeof c.since=="string"?new P(c.since):c.since??h,S=c.error||d&&g.compareTo(d)>=0,R=!h||g.compareTo(h)>=0;return S?COs(s,d,_,c.message):R?_Os(s,d,_,c.message):Dc}function bOs(s,c){return function(){return s(),c.apply(this,arguments)}}function EOs(s,c){let g=yOs(c?.name??pe.getFunctionName(s),c);return bOs(g,s)}function kst(s,c,g,d){if(Object.defineProperty(_,"name",{...Object.getOwnPropertyDescriptor(_,"name"),value:s}),d)for(let S of Object.keys(d)){let R=+S;!isNaN(R)&&Da(c,`${R}`)&&(c[R]=EOs(c[R],{...d[R],name:s}))}let h=SOs(c,g);return _;function _(...S){let R=h(S),T=R!==void 0?c[R]:void 0;if(typeof T=="function")return T(...S);throw new TypeError("Invalid arguments")}}function SOs(s,c){return g=>{for(let d=0;Da(s,`${d}`)&&Da(c,`${d}`);d++){let h=c[d];if(h(g))return d}}}function $pn(s){return{overload:c=>({bind:g=>({finish:()=>kst(s,c,g),deprecate:d=>({finish:()=>kst(s,c,g,d)})})})}}var efn={};o(efn,{ActionInvalidate:()=>KVe,ActionPackageInstalled:()=>jVe,ActionSet:()=>UVe,ActionWatchTypingLocations:()=>v1e,Arguments:()=>Nrt,AutoImportProviderProject:()=>pJt,AuxiliaryProject:()=>AJt,CharRangeSection:()=>OJt,CloseFileWatcherEvent:()=>Qst,CommandNames:()=>kfn,ConfigFileDiagEvent:()=>Ost,ConfiguredProject:()=>fJt,ConfiguredProjectLoadKind:()=>yJt,CreateDirectoryWatcherEvent:()=>Yst,CreateFileWatcherEvent:()=>Hst,Errors:()=>qF,EventBeginInstallTypes:()=>Trt,EventEndInstallTypes:()=>Rrt,EventInitializationFailed:()=>$5t,EventTypesRegistry:()=>wrt,ExternalProject:()=>Gst,GcTimer:()=>eJt,InferredProject:()=>gJt,LargeFileReferencedEvent:()=>Wst,LineIndex:()=>R2e,LineLeaf:()=>DOe,LineNode:()=>vse,LogLevel:()=>Q4t,Msg:()=>X4t,OpenFileInfoTelemetryEvent:()=>IJt,Project:()=>Aq,ProjectInfoTelemetryEvent:()=>Mst,ProjectKind:()=>xpe,ProjectLanguageServiceStateEvent:()=>Pst,ProjectLoadingFinishEvent:()=>Vst,ProjectLoadingStartEvent:()=>Lst,ProjectService:()=>NJt,ProjectsUpdatedInBackgroundEvent:()=>TOe,ScriptInfo:()=>iJt,ScriptVersionCache:()=>not,Session:()=>Ofn,TextStorage:()=>nJt,ThrottledOperations:()=>$4t,TypingsInstallerAdapter:()=>Xfn,allFilesAreJsOrDts:()=>cJt,allRootFilesAreJsOrDts:()=>aJt,asNormalizedPath:()=>ifn,convertCompilerOptions:()=>ROe,convertFormatOptions:()=>bse,convertScriptKindName:()=>Jst,convertTypeAcquisition:()=>mJt,convertUserPreferences:()=>CJt,convertWatchOptions:()=>w2e,countEachFileTypes:()=>E2e,createInstallTypingsRequest:()=>J4t,createModuleSpecifierCache:()=>xJt,createNormalizedPathMap:()=>sfn,createPackageJsonCache:()=>GJt,createSortedArray:()=>q4t,emptyArray:()=>tC,findArgument:()=>iin,formatDiagnosticToProtocol:()=>T2e,formatMessage:()=>FJt,getBaseConfigFileName:()=>xst,getDetailWatchInfo:()=>zst,getLocationInNewDocument:()=>WJt,hasArgument:()=>nin,hasNoTypeScriptSource:()=>lJt,indent:()=>ipe,isBackgroundProject:()=>v2e,isConfigFile:()=>DJt,isConfiguredProject:()=>A9,isDynamicFileName:()=>kpe,isExternalProject:()=>S2e,isInferredProject:()=>yse,isInferredProjectName:()=>U4t,isProjectDeferredClose:()=>B2e,makeAutoImportProviderProjectName:()=>j4t,makeAuxiliaryProjectName:()=>z4t,makeInferredProjectName:()=>K4t,maxFileSize:()=>Zst,maxProgramSizeForNonTsFiles:()=>Fst,normalizedPathToPath:()=>_se,nowString:()=>sin,nullCancellationToken:()=>Rfn,nullTypingsInstaller:()=>NOe,protocol:()=>tJt,scriptInfoIsContainedByBackgroundProject:()=>sJt,scriptInfoIsContainedByDeferredClosedProject:()=>oJt,stringifyIndented:()=>s5,toEvent:()=>ZJt,toNormalizedPath:()=>cp,tryConvertScriptKindName:()=>Xst,typingsInstaller:()=>Y4t,updateProjectIfDirty:()=>vv});var Y4t={};o(Y4t,{TypingsInstaller:()=>wOs,getNpmCommandForInstallation:()=>rfn,installNpmPackages:()=>BOs,typingsName:()=>nfn});var vOs={isEnabled:()=>!1,writeLine:Dc};function tfn(s,c,g,d){try{let h=OU(c,To(s,"index.d.ts"),{moduleResolution:2},g);return h.resolvedModule&&h.resolvedModule.resolvedFileName}catch(h){d.isEnabled()&&d.writeLine(`Failed to resolve ${c} in folder '${s}': ${h.message}`);return}}function BOs(s,c,g,d){let h=!1;for(let _=g.length;_>0;){let S=rfn(s,c,g,_);_=S.remaining,h=d(S.command)||h}return h}function rfn(s,c,g,d){let h=g.length-d,_,S=d;for(;_=`${s} install --ignore-scripts ${(S===g.length?g:g.slice(h,h+S)).join(" ")} --save-dev --user-agent="typesInstaller/${c}"`,!(_.length<8e3);)S=S-Math.floor(S/2);return{command:_,remaining:d-S}}var wOs=class{constructor(s,c,g,d,h,_=vOs){this.installTypingHost=s,this.globalCachePath=c,this.safeListPath=g,this.typesMapLocation=d,this.throttleLimit=h,this.log=_,this.packageNameToTypingLocation=new Map,this.missingTypingsSet=new Set,this.knownCachesSet=new Set,this.projectWatchers=new Map,this.pendingRunRequests=[],this.installRunCount=1,this.inFlightRequestCount=0,this.latestDistTag="latest",this.log.isEnabled()&&this.log.writeLine(`Global cache location '${c}', safe file path '${g}', types map path ${d}`),this.processCacheLocation(this.globalCachePath)}handleRequest(s){switch(s.kind){case"discover":this.install(s);break;case"closeProject":this.closeProject(s);break;case"typesRegistry":{let c={};this.typesRegistry.forEach((d,h)=>{c[h]=d});let g={kind:wrt,typesRegistry:c};this.sendResponse(g);break}case"installPackage":{this.installPackage(s);break}default:pe.assertNever(s)}}closeProject(s){this.closeWatchers(s.projectName)}closeWatchers(s){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}'`),!this.projectWatchers.get(s)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${s}'`);return}this.projectWatchers.delete(s),this.sendResponse({kind:v1e,projectName:s,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}' - done.`)}install(s){this.log.isEnabled()&&this.log.writeLine(`Got install request${s5(s)}`),s.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${s.cachePath}', loading cached information...`),this.processCacheLocation(s.cachePath)),this.safeList===void 0&&this.initializeSafeList();let c=$W.discoverTypings(this.installTypingHost,this.log.isEnabled()?g=>this.log.writeLine(g):void 0,s.fileNames,s.projectRootPath,this.safeList,this.packageNameToTypingLocation,s.typeAcquisition,s.unresolvedImports,this.typesRegistry,s.compilerOptions);this.watchFiles(s.projectName,c.filesToWatch),c.newTypingNames.length?this.installTypings(s,s.cachePath||this.globalCachePath,c.cachedTypingPaths,c.newTypingNames):(this.sendResponse(this.createSetTypings(s,c.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(s){let{fileName:c,packageName:g,projectName:d,projectRootPath:h,id:_}=s,S=mE(Mo(c),R=>{if(this.installTypingHost.fileExists(To(R,"package.json")))return R})||h;if(S)this.installWorker(-1,[g],S,R=>{let T=R?`Package ${g} installed.`:`There was an error installing ${g}.`,O={kind:jVe,projectName:d,id:_,success:R,message:T};this.sendResponse(O)});else{let R={kind:jVe,projectName:d,id:_,success:!1,message:"Could not determine a project root path."};this.sendResponse(R)}}initializeSafeList(){if(this.typesMapLocation){let s=$W.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(s){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=s;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=$W.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(s){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${s}'`),this.knownCachesSet.has(s)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}let c=To(s,"package.json"),g=To(s,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${c}'...`),this.installTypingHost.fileExists(c)&&this.installTypingHost.fileExists(g)){let d=JSON.parse(this.installTypingHost.readFile(c)),h=JSON.parse(this.installTypingHost.readFile(g));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${c}':${s5(d)}`),this.log.writeLine(`Loaded content of '${g}':${s5(h)}`)),d.devDependencies&&(h.packages||h.dependencies))for(let _ in d.devDependencies){if(h.packages&&!Da(h.packages,`node_modules/${_}`)||h.dependencies&&!Da(h.dependencies,_))continue;let S=dp(_);if(!S)continue;let R=tfn(s,S,this.installTypingHost,this.log);if(!R){this.missingTypingsSet.add(S);continue}let T=this.packageNameToTypingLocation.get(S);if(T){if(T.typingLocation===R)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${S} from '${R}' conflicts with existing typing file '${T}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${S}' => '${R}'`);let O=h.packages&&fu(h.packages,`node_modules/${_}`)||fu(h.dependencies,_),V=O&&O.version;if(!V)continue;let M={typingLocation:R,version:new P(V)};this.packageNameToTypingLocation.set(S,M)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${s}'`),this.knownCachesSet.add(s)}filterTypings(s){return Xt(s,c=>{let g=Qie(c);if(this.missingTypingsSet.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' is in missingTypingsSet - skipping...`);return}let d=$W.validatePackageName(c);if(d!==$W.NameValidationResult.Ok){this.missingTypingsSet.add(g),this.log.isEnabled()&&this.log.writeLine($W.renderPackageNameValidationFailure(d,c));return}if(!this.typesRegistry.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: Entry for package '${g}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(g)&&$W.isTypingUpToDate(this.packageNameToTypingLocation.get(g),this.typesRegistry.get(g))){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' already has an up-to-date typing - skipping...`);return}return g})}ensurePackageDirectoryExists(s){let c=To(s,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${c}`),this.installTypingHost.fileExists(c)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${c}' is missing, creating new one...`),this.ensureDirectoryExists(s,this.installTypingHost),this.installTypingHost.writeFile(c,'{ "private": true }'))}installTypings(s,c,g,d){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(d)}`);let h=this.filterTypings(d);if(h.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(s,g));return}this.ensurePackageDirectoryExists(c);let _=this.installRunCount;this.installRunCount++,this.sendResponse({kind:Trt,eventId:_,typingsInstallerVersion:C,projectName:s.projectName});let S=h.map(nfn);this.installTypingsAsync(_,S,c,R=>{try{if(!R){this.log.isEnabled()&&this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(h)}`);for(let O of h)this.missingTypingsSet.add(O);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(S)}`);let T=[];for(let O of h){let V=tfn(c,O,this.installTypingHost,this.log);if(!V){this.missingTypingsSet.add(O);continue}let M=this.typesRegistry.get(O),ee=new P(M[`ts${I}`]||M[this.latestDistTag]),re={typingLocation:V,version:ee};this.packageNameToTypingLocation.set(O,re),T.push(V)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(T)}`),this.sendResponse(this.createSetTypings(s,g.concat(T)))}finally{let T={kind:Rrt,eventId:_,projectName:s.projectName,packagesToInstall:S,installSuccess:R,typingsInstallerVersion:C};this.sendResponse(T)}})}ensureDirectoryExists(s,c){let g=Mo(s);c.directoryExists(g)||this.ensureDirectoryExists(g,c),c.directoryExists(s)||c.createDirectory(s)}watchFiles(s,c){if(!c.length){this.closeWatchers(s);return}let g=this.projectWatchers.get(s),d=new Set(c);!g||NB(d,h=>!g.has(h))||NB(g,h=>!d.has(h))?(this.projectWatchers.set(s,d),this.sendResponse({kind:v1e,projectName:s,files:c})):this.sendResponse({kind:v1e,projectName:s,files:void 0})}createSetTypings(s,c){return{projectName:s.projectName,typeAcquisition:s.typeAcquisition,compilerOptions:s.compilerOptions,typings:c,unresolvedImports:s.unresolvedImports,kind:UVe}}installTypingsAsync(s,c,g,d){this.pendingRunRequests.unshift({requestId:s,packageNames:c,cwd:g,onRequestCompleted:d}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount{this.inFlightRequestCount--,s.onRequestCompleted(c),this.executeWithThrottling()})}}};function nfn(s){return`@types/${s}@ts${I}`}var Q4t=(s=>(s[s.terse=0]="terse",s[s.normal=1]="normal",s[s.requestTime=2]="requestTime",s[s.verbose=3]="verbose",s))(Q4t||{}),tC=q4t(),X4t=(s=>(s.Err="Err",s.Info="Info",s.Perf="Perf",s))(X4t||{});function J4t(s,c,g,d){return{projectName:s.getProjectName(),fileNames:s.getFileNames(!0,!0).concat(s.getExcludedFiles()),compilerOptions:s.getCompilationSettings(),typeAcquisition:c,unresolvedImports:g,projectRootPath:s.getCurrentDirectory(),cachePath:d,kind:"discover"}}var qF;(s=>{function c(){throw new Error("No Project.")}s.ThrowNoProject=c;function g(){throw new Error("The project's language service is disabled.")}s.ThrowProjectLanguageServiceDisabled=g;function d(h,_){throw new Error(`Project '${_.getProjectName()}' does not contain document '${h}'`)}s.ThrowProjectDoesNotContainDocument=d})(qF||(qF={}));function cp(s){return su(s)}function _se(s,c,g){let d=Up(s)?s:Xc(s,c);return g(d)}function ifn(s){return s}function sfn(){let s=new Map;return{get(c){return s.get(c)},set(c,g){s.set(c,g)},contains(c){return s.has(c)},remove(c){s.delete(c)}}}function U4t(s){return/dev\/null\/inferredProject\d+\*/.test(s)}function K4t(s){return`/dev/null/inferredProject${s}*`}function j4t(s){return`/dev/null/autoImportProviderProject${s}*`}function z4t(s){return`/dev/null/auxiliaryProject${s}*`}function q4t(){return[]}var $4t=class Lki{constructor(c,g){this.host=c,this.pendingTimeouts=new Map,this.logger=g.hasLevel(3)?g:void 0}schedule(c,g,d){let h=this.pendingTimeouts.get(c);h&&this.host.clearTimeout(h),this.pendingTimeouts.set(c,this.host.setTimeout(Lki.run,g,c,this,d)),this.logger&&this.logger.info(`Scheduled: ${c}${h?", Cancelled earlier one":""}`)}cancel(c){let g=this.pendingTimeouts.get(c);return g?(this.host.clearTimeout(g),this.pendingTimeouts.delete(c)):!1}static run(c,g,d){g.pendingTimeouts.delete(c),g.logger&&g.logger.info(`Running: ${c}`),d()}},eJt=class Vki{constructor(c,g,d){this.host=c,this.delay=g,this.logger=d}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(Vki.run,this.delay,this))}static run(c){c.timerId=void 0;let g=c.logger.hasLevel(2),d=g&&c.host.getMemoryUsage();if(c.host.gc(),g){let h=c.host.getMemoryUsage();c.logger.perftrc(`GC::before ${d}, after ${h}`)}}};function xst(s){let c=dp(s);return c==="tsconfig.json"||c==="jsconfig.json"?c:void 0}var tJt={};o(tJt,{ClassificationType:()=>Grt,CommandTypes:()=>rJt,CompletionTriggerKind:()=>krt,IndentStyle:()=>lfn,JsxEmit:()=>ufn,ModuleKind:()=>gfn,ModuleResolutionKind:()=>Afn,NewLineKind:()=>dfn,OrganizeImportsMode:()=>Drt,PollingWatchKind:()=>cfn,ScriptTarget:()=>pfn,SemicolonPreference:()=>xrt,WatchDirectoryKind:()=>afn,WatchFileKind:()=>ofn});var rJt=(s=>(s.JsxClosingTag="jsxClosingTag",s.LinkedEditingRange="linkedEditingRange",s.Brace="brace",s.BraceFull="brace-full",s.BraceCompletion="braceCompletion",s.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",s.Change="change",s.Close="close",s.Completions="completions",s.CompletionInfo="completionInfo",s.CompletionsFull="completions-full",s.CompletionDetails="completionEntryDetails",s.CompletionDetailsFull="completionEntryDetails-full",s.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",s.CompileOnSaveEmitFile="compileOnSaveEmitFile",s.Configure="configure",s.Definition="definition",s.DefinitionFull="definition-full",s.DefinitionAndBoundSpan="definitionAndBoundSpan",s.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",s.Implementation="implementation",s.ImplementationFull="implementation-full",s.EmitOutput="emit-output",s.Exit="exit",s.FileReferences="fileReferences",s.FileReferencesFull="fileReferences-full",s.Format="format",s.Formatonkey="formatonkey",s.FormatFull="format-full",s.FormatonkeyFull="formatonkey-full",s.FormatRangeFull="formatRange-full",s.Geterr="geterr",s.GeterrForProject="geterrForProject",s.SemanticDiagnosticsSync="semanticDiagnosticsSync",s.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",s.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",s.NavBar="navbar",s.NavBarFull="navbar-full",s.Navto="navto",s.NavtoFull="navto-full",s.NavTree="navtree",s.NavTreeFull="navtree-full",s.DocumentHighlights="documentHighlights",s.DocumentHighlightsFull="documentHighlights-full",s.Open="open",s.Quickinfo="quickinfo",s.QuickinfoFull="quickinfo-full",s.References="references",s.ReferencesFull="references-full",s.Reload="reload",s.Rename="rename",s.RenameInfoFull="rename-full",s.RenameLocationsFull="renameLocations-full",s.Saveto="saveto",s.SignatureHelp="signatureHelp",s.SignatureHelpFull="signatureHelp-full",s.FindSourceDefinition="findSourceDefinition",s.Status="status",s.TypeDefinition="typeDefinition",s.ProjectInfo="projectInfo",s.ReloadProjects="reloadProjects",s.Unknown="unknown",s.OpenExternalProject="openExternalProject",s.OpenExternalProjects="openExternalProjects",s.CloseExternalProject="closeExternalProject",s.SynchronizeProjectList="synchronizeProjectList",s.ApplyChangedToOpenFiles="applyChangedToOpenFiles",s.UpdateOpen="updateOpen",s.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",s.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",s.Cleanup="cleanup",s.GetOutliningSpans="getOutliningSpans",s.GetOutliningSpansFull="outliningSpans",s.TodoComments="todoComments",s.Indentation="indentation",s.DocCommentTemplate="docCommentTemplate",s.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",s.NameOrDottedNameSpan="nameOrDottedNameSpan",s.BreakpointStatement="breakpointStatement",s.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",s.GetCodeFixes="getCodeFixes",s.GetCodeFixesFull="getCodeFixes-full",s.GetCombinedCodeFix="getCombinedCodeFix",s.GetCombinedCodeFixFull="getCombinedCodeFix-full",s.ApplyCodeActionCommand="applyCodeActionCommand",s.GetSupportedCodeFixes="getSupportedCodeFixes",s.GetApplicableRefactors="getApplicableRefactors",s.GetEditsForRefactor="getEditsForRefactor",s.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",s.PreparePasteEdits="preparePasteEdits",s.GetPasteEdits="getPasteEdits",s.GetEditsForRefactorFull="getEditsForRefactor-full",s.OrganizeImports="organizeImports",s.OrganizeImportsFull="organizeImports-full",s.GetEditsForFileRename="getEditsForFileRename",s.GetEditsForFileRenameFull="getEditsForFileRename-full",s.ConfigurePlugin="configurePlugin",s.SelectionRange="selectionRange",s.SelectionRangeFull="selectionRange-full",s.ToggleLineComment="toggleLineComment",s.ToggleLineCommentFull="toggleLineComment-full",s.ToggleMultilineComment="toggleMultilineComment",s.ToggleMultilineCommentFull="toggleMultilineComment-full",s.CommentSelection="commentSelection",s.CommentSelectionFull="commentSelection-full",s.UncommentSelection="uncommentSelection",s.UncommentSelectionFull="uncommentSelection-full",s.PrepareCallHierarchy="prepareCallHierarchy",s.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",s.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",s.ProvideInlayHints="provideInlayHints",s.WatchChange="watchChange",s.MapCode="mapCode",s.CopilotRelated="copilotRelated",s))(rJt||{}),ofn=(s=>(s.FixedPollingInterval="FixedPollingInterval",s.PriorityPollingInterval="PriorityPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s.UseFsEvents="UseFsEvents",s.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",s))(ofn||{}),afn=(s=>(s.UseFsEvents="UseFsEvents",s.FixedPollingInterval="FixedPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s))(afn||{}),cfn=(s=>(s.FixedInterval="FixedInterval",s.PriorityInterval="PriorityInterval",s.DynamicPriority="DynamicPriority",s.FixedChunkSize="FixedChunkSize",s))(cfn||{}),lfn=(s=>(s.None="None",s.Block="Block",s.Smart="Smart",s))(lfn||{}),ufn=(s=>(s.None="none",s.Preserve="preserve",s.ReactNative="react-native",s.React="react",s.ReactJSX="react-jsx",s.ReactJSXDev="react-jsxdev",s))(ufn||{}),gfn=(s=>(s.None="none",s.CommonJS="commonjs",s.AMD="amd",s.UMD="umd",s.System="system",s.ES6="es6",s.ES2015="es2015",s.ES2020="es2020",s.ES2022="es2022",s.ESNext="esnext",s.Node16="node16",s.Node18="node18",s.Node20="node20",s.NodeNext="nodenext",s.Preserve="preserve",s))(gfn||{}),Afn=(s=>(s.Classic="classic",s.Node="node",s.NodeJs="node",s.Node10="node10",s.Node16="node16",s.NodeNext="nodenext",s.Bundler="bundler",s))(Afn||{}),dfn=(s=>(s.Crlf="Crlf",s.Lf="Lf",s))(dfn||{}),pfn=(s=>(s.ES3="es3",s.ES5="es5",s.ES6="es6",s.ES2015="es2015",s.ES2016="es2016",s.ES2017="es2017",s.ES2018="es2018",s.ES2019="es2019",s.ES2020="es2020",s.ES2021="es2021",s.ES2022="es2022",s.ES2023="es2023",s.ES2024="es2024",s.ESNext="esnext",s.JSON="json",s.Latest="esnext",s))(pfn||{}),nJt=class{constructor(s,c,g){this.host=s,this.info=c,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=g||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}resetSourceMapInfo(){this.info.sourceFileLike=void 0,this.info.closeSourceMapFileWatcher(),this.info.sourceMapFilePath=void 0,this.info.declarationInfoPath=void 0,this.info.sourceInfos=void 0,this.info.documentPositionMapper=void 0}useText(s){this.svc=void 0,this.text=s,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(s,c,g){this.switchToScriptVersionCache().edit(s,c-s,g),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(s){return pe.assert(s!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=qz(this.svc.getSnapshot())),this.text!==s?(this.useText(s),this.ownFileText=!1,!0):!1}reloadWithFileText(s){let{text:c,fileSize:g}=s||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(s):{text:"",fileSize:void 0},d=this.reload(c);return this.fileSize=g,this.ownFileText=!s||s===this.info.fileName,this.ownFileText&&this.info.mTime===xh.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||xh).getTime()),d}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}delayReloadFromFileIntoText(){this.pendingReloadFromDisk=!0}getTelemetryFileSize(){return this.fileSize?this.fileSize:this.text?this.text.length:this.svc?this.svc.getSnapshot().getLength():this.getSnapshot().getLength()}getSnapshot(){var s;return((s=this.tryUseScriptVersionCache())==null?void 0:s.getSnapshot())||(this.textSnapshot??(this.textSnapshot=zVe.fromString(pe.checkDefined(this.text))))}getAbsolutePositionAndLineText(s){let c=this.tryUseScriptVersionCache();if(c)return c.getAbsolutePositionAndLineText(s);let g=this.getLineMap();return s<=g.length?{absolutePosition:g[s-1],lineText:this.text.substring(g[s-1],g[s])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(s){let c=this.tryUseScriptVersionCache();if(c)return c.lineToTextSpan(s);let g=this.getLineMap(),d=g[s],h=s+1c===void 0?c=this.host.readFile(g)||"":c;if(!Z3(this.info.fileName)){let h=this.host.getFileSize?this.host.getFileSize(g):d().length;if(h>Zst)return pe.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${g} for info ${this.info.fileName}: fileSize: ${h}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(g,h),{text:"",fileSize:h}}return{text:d()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=not.fromString(this.getOrLoadText()),this.textSnapshot=void 0,this.version++),this.svc}tryUseScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&this.getOrLoadText(),this.isOpen?(!this.svc&&!this.textSnapshot&&(this.svc=not.fromString(pe.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(pe.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return pe.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=uA(pe.checkDefined(this.text)))}getLineInfo(){let s=this.tryUseScriptVersionCache();if(s)return{getLineCount:()=>s.getLineCount(),getLineText:g=>s.getAbsolutePositionAndLineText(g+1).lineText};let c=this.getLineMap();return ett(this.text,c)}};function kpe(s){return s[0]==="^"||(s.includes("walkThroughSnippet:/")||s.includes("untitled:/"))&&dp(s)[0]==="^"||s.includes(":^")&&!s.includes(cg)}var iJt=class{constructor(s,c,g,d,h,_){this.host=s,this.fileName=c,this.scriptKind=g,this.hasMixedContent=d,this.path=h,this.containingProjects=[],this.isDynamic=kpe(c),this.textStorage=new nJt(s,this,_),(d||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=g||qAe(c)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(s){this.textStorage.isOpen=!0,s!==void 0&&this.textStorage.reload(s)&&this.markContainingProjectsAsDirty()}close(s=!0){this.textStorage.isOpen=!1,s&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){pe.assert(!!this.containingProjects.length);let s=this.containingProjects[0],c=this.host.realpath(this.path);c&&(this.realpath=s.toPath(c),this.realpath!==this.path&&s.projectService.realpathToScriptInfos.add(this.realpath,this))}}getRealpathIfDifferent(){return this.realpath&&this.realpath!==this.path?this.realpath:void 0}isSymlink(){return this.realpath&&this.realpath!==this.path}getFormatCodeSettings(){return this.formatSettings}getPreferences(){return this.preferences}attachToProject(s){let c=!this.isAttached(s);return c&&(this.containingProjects.push(s),s.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),s.onFileAddedOrRemoved(this.isSymlink())),c}isAttached(s){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===s;case 2:return this.containingProjects[0]===s||this.containingProjects[1]===s;default:return k(this.containingProjects,s)}}detachFromProject(s){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===s?(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:Xl(this.containingProjects,s)&&s.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(let s of this.containingProjects){A9(s)&&s.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);let c=s.getRootFilesMap().get(this.path);s.removeFile(this,!1,!1),s.onFileAddedOrRemoved(this.isSymlink()),c&&!yse(s)&&s.addMissingFileRoot(c.fileName)}ft(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return qF.ThrowNoProject();case 1:return B2e(this.containingProjects[0])||v2e(this.containingProjects[0])?qF.ThrowNoProject():this.containingProjects[0];default:let s,c,g,d;for(let h=0;h!s.isOrphan())}lineToTextSpan(s){return this.textStorage.lineToTextSpan(s)}lineOffsetToPosition(s,c,g){return this.textStorage.lineOffsetToPosition(s,c,g)}positionToLineOffset(s){TOs(s);let c=this.textStorage.positionToLineOffset(s);return ROs(c),c}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Xs(this.sourceMapFilePath)&&(Sv(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};function TOs(s){pe.assert(typeof s=="number",`Expected position ${s} to be a number.`),pe.assert(s>=0,"Expected position to be non-negative.")}function ROs(s){pe.assert(typeof s.line=="number",`Expected line ${s.line} to be a number.`),pe.assert(typeof s.offset=="number",`Expected offset ${s.offset} to be a number.`),pe.assert(s.line>0,`Expected line to be non-${s.line===0?"zero":"negative"}`),pe.assert(s.offset>0,`Expected offset to be non-${s.offset===0?"zero":"negative"}`)}function sJt(s){return zt(s.containingProjects,v2e)}function oJt(s){return zt(s.containingProjects,B2e)}var xpe=(s=>(s[s.Inferred=0]="Inferred",s[s.Configured=1]="Configured",s[s.External=2]="External",s[s.AutoImportProvider=3]="AutoImportProvider",s[s.Auxiliary=4]="Auxiliary",s))(xpe||{});function E2e(s,c=!1){let g={js:0,jsSize:0,jsx:0,jsxSize:0,ts:0,tsSize:0,tsx:0,tsxSize:0,dts:0,dtsSize:0,deferred:0,deferredSize:0};for(let d of s){let h=c?d.textStorage.getTelemetryFileSize():0;switch(d.scriptKind){case 1:g.js+=1,g.jsSize+=h;break;case 2:g.jsx+=1,g.jsxSize+=h;break;case 3:MC(d.fileName)?(g.dts+=1,g.dtsSize+=h):(g.ts+=1,g.tsSize+=h);break;case 4:g.tsx+=1,g.tsxSize+=h;break;case 7:g.deferred+=1,g.deferredSize+=h;break}}return g}function NOs(s){let c=E2e(s.getScriptInfos());return c.js>0&&c.ts===0&&c.tsx===0}function aJt(s){let c=E2e(s.getRootScriptInfos());return c.ts===0&&c.tsx===0}function cJt(s){let c=E2e(s.getScriptInfos());return c.ts===0&&c.tsx===0}function lJt(s){return!s.some(c=>lA(c,".ts")&&!MC(c)||lA(c,".tsx"))}function uJt(s){return s.generatedFilePath!==void 0}function ffn(s,c){if(s===c||(s||tC).length===0&&(c||tC).length===0)return!0;let g=new Map,d=0;for(let h of s)g.get(h)!==!0&&(g.set(h,!0),d++);for(let h of c){let _=g.get(h);if(_===void 0)return!1;_===!0&&(g.set(h,!1),d--)}return d===0}function DOs(s,c){return s.enable!==c.enable||!ffn(s.include,c.include)||!ffn(s.exclude,c.exclude)}function kOs(s,c){return FF(s)!==FF(c)}function xOs(s,c){return s===c?!1:!Sc(s,c)}var Aq=class Wki{constructor(c,g,d,h,_,S,R,T,O,V){switch(this.projectKind=g,this.projectService=d,this.compilerOptions=S,this.compileOnSaveEnabled=R,this.watchOptions=T,this.rootFilesMap=new Map,this.plugins=[],this.cachedUnresolvedImportsPerFile=new Map,this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1,this.lastReportedVersion=0,this.projectProgramVersion=0,this.projectStateVersion=0,this.initialLoadPending=!1,this.dirty=!1,this.typingFiles=tC,this.moduleSpecifierCache=xJt(this),this.createHash=$i(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=$W.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,d.logger.info(`Creating ${xpe[g]}Project: ${c}, currentDirectory: ${V}`),this.projectName=c,this.directoryStructureHost=O,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(V),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new WYt(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(h||FF(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=eOe(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),d.serverMode){case 0:this.languageServiceEnabled=!0;break;case 1:this.languageServiceEnabled=!0,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;case 2:this.languageServiceEnabled=!1,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;default:pe.assertNever(d.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();let M=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=ee=>this.writeLog(ee):M.trace&&(this.trace=ee=>M.trace(ee)),this.realpath=$i(M,M.realpath),this.preferNonRecursiveWatch=this.projectService.canUseWatchEvents||M.preferNonRecursiveWatch,this.resolutionCache=jtt(this,this.currentDirectory,!0),this.languageService=OYt(this,this.projectService.documentRegistry,this.projectService.serverMode),_&&this.disableLanguageService(_),this.markAsDirty(),v2e(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getRedirectFromSourceFile(c){}isNonTsProject(){return vv(this),cJt(this)}isJsOnlyProject(){return vv(this),NOs(this)}static resolveModule(c,g,d,h){return Wki.importServicePluginSync({name:c},[g],d,h).resolvedModule}static importServicePluginSync(c,g,d,h){pe.assertIsDefined(d.require);let _,S;for(let R of g){let T=xp(d.resolvePath(To(R,"node_modules")));h(`Loading ${c.name} from ${R} (resolved to ${T})`);let O=d.require(T,c.name);if(!O.error){S=O.module;break}let V=O.error.stack||O.error.message||JSON.stringify(O.error);(_??(_=[])).push(`Failed to load module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}static async importServicePluginAsync(c,g,d,h){pe.assertIsDefined(d.importPlugin);let _,S;for(let R of g){let T=To(R,"node_modules");h(`Dynamically importing ${c.name} from ${R} (resolved to ${T})`);let O;try{O=await d.importPlugin(T,c.name)}catch(M){O={module:void 0,error:M}}if(!O.error){S=O.module;break}let V=O.error.stack||O.error.message||JSON.stringify(O.error);(_??(_=[])).push(`Failed to dynamically import module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}isKnownTypesPackageName(c){return this.projectService.typingsInstaller.isKnownTypesPackageName(c)}installPackage(c){return this.projectService.typingsInstaller.installPackage({...c,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}getSymlinkCache(){return this.symlinks||(this.symlinks=Mbe(this.getCurrentDirectory(),this.getCanonicalFileName)),this.program&&!this.symlinks.hasProcessedResolutions()&&this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule,this.program.forEachResolvedTypeReferenceDirective,this.program.getAutomaticTypeDirectiveResolutions()),this.symlinks}getCompilationSettings(){return this.compilerOptions}getCompilerOptions(){return this.getCompilationSettings()}getNewLine(){return this.projectService.host.newLine}getProjectVersion(){return this.projectStateVersion.toString()}getProjectReferences(){}getScriptFileNames(){if(!this.rootFilesMap.size)return E;let c;return this.rootFilesMap.forEach(g=>{(this.languageServiceEnabled||g.info&&g.info.isScriptOpen())&&(c||(c=[])).push(g.fileName)}),Pr(c,this.typingFiles)||E}getOrCreateScriptInfoAndAttachToProject(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);if(g){let d=this.rootFilesMap.get(g.path);d&&d.info!==g&&(d.info=g),g.attachToProject(this)}return g}getScriptKind(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&g.scriptKind}getScriptVersion(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);return g&&g.getLatestVersion()}getScriptSnapshot(c){let g=this.getOrCreateScriptInfoAndAttachToProject(c);if(g)return g.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){let c=Mo(su(this.projectService.getExecutingFilePath()));return To(c,Hs(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(c,g,d,h,_){return this.directoryStructureHost.readDirectory(c,g,d,h,_)}readFile(c){return this.projectService.host.readFile(c)}writeFile(c,g){return this.projectService.host.writeFile(c,g)}fileExists(c){let g=this.toPath(c);return!!this.projectService.getScriptInfoForPath(g)||!this.isWatchedMissingFile(g)&&this.directoryStructureHost.fileExists(c)}resolveModuleNameLiterals(c,g,d,h,_,S){return this.resolutionCache.resolveModuleNameLiterals(c,g,d,h,_,S)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S)}resolveLibrary(c,g,d,h){return this.resolutionCache.resolveLibrary(c,g,d,h)}directoryExists(c){return this.directoryStructureHost.directoryExists(c)}getDirectories(c){return this.directoryStructureHost.getDirectories(c)}getCachedDirectoryStructureHost(){}toPath(c){return Pu(c,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),eC.FailedLookupLocations,this)}watchAffectingFileLocation(c,g){return this.projectService.watchFactory.watchFile(c,g,2e3,this.projectService.getWatchOptions(this),eC.AffectingFileLocation,this)}clearInvalidateResolutionOfFailedLookupTimer(){return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`)}scheduleInvalidateResolutionsOfFailedLookupLocations(){this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`,1e3,()=>{this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)})}invalidateResolutionsOfFailedLookupLocations(){this.clearInvalidateResolutionOfFailedLookupTimer()&&this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&(this.markAsDirty(),this.projectService.delayEnsureProjectForOpenFiles())}onInvalidatedResolution(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}watchTypeRootsDirectory(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),eC.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}fileIsOpen(c){return this.projectService.openFiles.has(c)}writeLog(c){this.projectService.logger.info(c)}log(c){this.writeLog(c)}error(c){this.projectService.logger.msg(c,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return Le(this.projectErrors,c=>!c.file)||tC}getAllProjectErrors(){return this.projectErrors||tC}setProjectErrors(c){this.projectErrors=c}getLanguageService(c=!0){return c&&vv(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(c,g){return this.projectService.getDocumentPositionMapper(this,c,g)}getSourceFileLike(c){return this.projectService.getSourceFileLike(c,this)}shouldEmitFile(c){return c&&!c.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(c.path)}getCompileOnSaveAffectedFileList(c){return this.languageServiceEnabled?(vv(this),this.builderState=lR.create(this.program,this.builderState,!0),Xt(lR.getFilesAffectedBy(this.builderState,this.program,c.path,this.cancellationToken,this.projectService.host),g=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(g.path))?g.fileName:void 0)):[]}emitFile(c,g){if(!this.languageServiceEnabled||!this.shouldEmitFile(c))return{emitSkipped:!0,diagnostics:tC};let{emitSkipped:d,diagnostics:h,outputFiles:_}=this.getLanguageService().getEmitOutput(c.fileName);if(!d){for(let S of _){let R=Xc(S.name,this.currentDirectory);g(R,S.text,S.writeByteOrderMark)}if(this.builderState&&Oy(this.compilerOptions)){let S=_.filter(R=>MC(R.name));if(S.length===1){let R=this.program.getSourceFile(c.fileName),T=this.projectService.host.createHash?this.projectService.host.createHash(S[0].text):sy(S[0].text);lR.updateSignatureOfFile(this.builderState,T,R.resolvedPath)}}}return{emitSkipped:d,diagnostics:h}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(let c of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(c.fileName);this.program.forEachResolvedProjectReference(c=>this.detachScriptInfoFromProject(c.sourceFile.fileName)),this.program=void 0}}disableLanguageService(c){this.languageServiceEnabled&&(pe.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=c,this.builderState=void 0,this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.resolutionCache.closeTypeRootsWatch(),this.clearGeneratedFileWatch(),this.projectService.verifyDocumentRegistry(),this.projectService.onUpdateLanguageServiceStateForProject(this,!1))}getProjectName(){return this.projectName}removeLocalTypingsFromTypeAcquisition(c){return!c.enable||!c.include?c:{...c,include:this.removeExistingTypings(c.include)}}getExternalFiles(c){return yo(jt(this.plugins,g=>{if(typeof g.module.getExternalFiles=="function")try{return g.module.getExternalFiles(this,c||0)}catch(d){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${d}`),d.stack&&this.projectService.logger.info(d.stack)}}))}getSourceFile(c){if(this.program)return this.program.getSourceFileByPath(c)}getSourceFileOrConfigFile(c){let g=this.program.getCompilerOptions();return c===g.configFilePath?g.configFile:this.getSourceFile(c)}close(){var c;this.typingsCache&&this.projectService.typingsInstaller.onProjectClosed(this),this.typingsCache=void 0,this.closeWatchingTypingLocations(),this.cleanupProgram(),F(this.externalFiles,g=>this.detachScriptInfoIfNotRoot(g)),this.rootFilesMap.forEach(g=>{var d;return(d=g.info)==null?void 0:d.detachFromProject(this)}),this.projectService.pendingEnsureProjectForOpenFiles=!0,this.rootFilesMap=void 0,this.externalFiles=void 0,this.program=void 0,this.builderState=void 0,this.resolutionCache.clear(),this.resolutionCache=void 0,this.cachedUnresolvedImportsPerFile=void 0,(c=this.packageJsonWatches)==null||c.forEach(g=>{g.projects.delete(this),g.close()}),this.packageJsonWatches=void 0,this.moduleSpecifierCache.clear(),this.moduleSpecifierCache=void 0,this.directoryStructureHost=void 0,this.exportMapCache=void 0,this.projectErrors=void 0,this.plugins.length=0,this.missingFilesMap&&(Vy(this.missingFilesMap,mv),this.missingFilesMap=void 0),this.clearGeneratedFileWatch(),this.clearInvalidateResolutionOfFailedLookupTimer(),this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.noDtsResolutionProject&&this.noDtsResolutionProject.close(),this.noDtsResolutionProject=void 0,this.languageService.dispose(),this.languageService=void 0}detachScriptInfoIfNotRoot(c){let g=this.projectService.getScriptInfo(c);g&&!this.isRoot(g)&&g.detachFromProject(this)}isClosed(){return this.rootFilesMap===void 0}hasRoots(){var c;return!!((c=this.rootFilesMap)!=null&&c.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&Do(lr(this.rootFilesMap.values(),c=>{var g;return(g=c.info)==null?void 0:g.fileName}))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return Do(lr(this.rootFilesMap.values(),c=>c.info))}getScriptInfos(){return this.languageServiceEnabled?lt(this.program.getSourceFiles(),c=>{let g=this.projectService.getScriptInfoForPath(c.resolvedPath);return pe.assert(!!g,"getScriptInfo",()=>`scriptInfo for a file '${c.fileName}' Path: '${c.path}' / '${c.resolvedPath}' is missing.`),g}):this.getRootScriptInfos()}getExcludedFiles(){return tC}getFileNames(c,g){if(!this.program)return[];if(!this.languageServiceEnabled){let h=this.getRootFiles();if(this.compilerOptions){let _=PYt(this.compilerOptions);_&&(h||(h=[])).push(_)}return h}let d=[];for(let h of this.program.getSourceFiles())c&&this.program.isSourceFileFromExternalLibrary(h)||d.push(h.fileName);if(!g){let h=this.program.getCompilerOptions().configFile;if(h&&(d.push(h.fileName),h.extendedSourceFiles))for(let _ of h.extendedSourceFiles)d.push(_)}return d}getFileNamesWithRedirectInfo(c){return this.getFileNames().map(g=>({fileName:g,isSourceOfProjectReferenceRedirect:c&&this.isSourceOfProjectReferenceRedirect(g)}))}hasConfigFile(c){if(this.program&&this.languageServiceEnabled){let g=this.program.getCompilerOptions().configFile;if(g){if(c===g.fileName)return!0;if(g.extendedSourceFiles){for(let d of g.extendedSourceFiles)if(c===d)return!0}}}return!1}containsScriptInfo(c){if(this.isRoot(c))return!0;if(!this.program)return!1;let g=this.program.getSourceFileByPath(c.path);return!!g&&g.resolvedPath===c.path}containsFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(c);return d&&(d.isScriptOpen()||!g)?this.containsScriptInfo(d):!1}isRoot(c){var g,d;return((d=(g=this.rootFilesMap)==null?void 0:g.get(c.path))==null?void 0:d.info)===c}addRoot(c,g){pe.assert(!this.isRoot(c)),this.rootFilesMap.set(c.path,{fileName:g||c.fileName,info:c}),c.attachToProject(this),this.markAsDirty()}addMissingFileRoot(c){let g=this.projectService.toPath(c);this.rootFilesMap.set(g,{fileName:c}),this.markAsDirty()}removeFile(c,g,d){this.isRoot(c)&&this.removeRoot(c),g?this.resolutionCache.removeResolutionsOfFile(c.path):this.resolutionCache.invalidateResolutionOfFile(c.path),this.cachedUnresolvedImportsPerFile.delete(c.path),d&&c.detachFromProject(this),this.markAsDirty()}registerFileUpdate(c){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(c)}markFileAsDirty(c){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(c)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var c;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(c=this.autoImportProviderHost)==null||c.markAsDirty()}onAutoImportProviderSettingsChanged(){this.markAutoImportProviderAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.markAutoImportProviderAsDirty()}onFileAddedOrRemoved(c){this.hasAddedorRemovedFiles=!0,c&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}onReleaseOldSourceFile(c,g,d,h){(!h||c.resolvedPath===c.path&&h.resolvedPath!==c.path)&&this.detachScriptInfoFromProject(c.fileName,d)}updateFromProject(){vv(this)}updateGraph(){var c,g;(c=ki)==null||c.push(ki.Phase.Session,"updateGraph",{name:this.projectName,kind:xpe[this.projectKind]}),this.resolutionCache.startRecordingFilesWithChangedResolutions();let d=this.updateGraphWorker(),h=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;let _=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||tC;for(let R of _)this.cachedUnresolvedImportsPerFile.delete(R);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((d||_.length)&&(this.lastCachedUnresolvedImportsList=GOs(this.program,this.cachedUnresolvedImportsPerFile)),this.enqueueInstallTypingsForProject(h)):this.lastCachedUnresolvedImportsList=void 0;let S=this.projectProgramVersion===0&&d;return d&&this.projectProgramVersion++,h&&this.markAutoImportProviderAsDirty(),S&&this.getPackageJsonAutoImportProvider(),(g=ki)==null||g.pop(),!d}enqueueInstallTypingsForProject(c){let g=this.getTypeAcquisition();if(!g||!g.enable||this.projectService.typingsInstaller===NOe)return;let d=this.typingsCache;(c||!d||DOs(g,d.typeAcquisition)||kOs(this.getCompilationSettings(),d.compilerOptions)||xOs(this.lastCachedUnresolvedImportsList,d.unresolvedImports))&&(this.typingsCache={compilerOptions:this.getCompilationSettings(),typeAcquisition:g,unresolvedImports:this.lastCachedUnresolvedImportsList},this.projectService.typingsInstaller.enqueueInstallTypingsRequest(this,g,this.lastCachedUnresolvedImportsList))}updateTypingFiles(c,g,d,h){this.typingsCache={compilerOptions:c,typeAcquisition:g,unresolvedImports:d};let _=!g||!g.enable?tC:yo(h);ty(_,this.typingFiles,gd(!this.useCaseSensitiveFileNames()),Dc,S=>this.detachScriptInfoFromProject(S))&&(this.typingFiles=_,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Vy(this.typingWatchers,mv),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:KVe})}watchTypingLocations(c){if(!c){this.typingWatchers.isInvoked=!1;return}if(!c.length){this.closeWatchingTypingLocations();return}let g=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;let d=(h,_)=>{let S=this.toPath(h);if(g.delete(S),!this.typingWatchers.has(S)){let R=_==="FileWatcher"?eC.TypingInstallerLocationFile:eC.TypingInstallerLocationDirectory;this.typingWatchers.set(S,C1e(S)?_==="FileWatcher"?this.projectService.watchFactory.watchFile(h,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),R,this):this.projectService.watchFactory.watchDirectory(h,T=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!lA(T,".json"))return this.writeLog("Ignoring files that are not *.json");if(tI(T,To(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),R,this):(this.writeLog(`Skipping watcher creation at ${h}:: ${zst(R,this)}`),$ie))}};for(let h of c){let _=dp(h);if(_==="package.json"||_==="bower.json"){d(h,"FileWatcher");continue}if(zh(this.currentDirectory,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){let S=h.indexOf(cg,this.currentDirectory.length+1);d(S!==-1?h.substr(0,S):h,"DirectoryWatcher");continue}if(zh(this.projectService.typingsInstaller.globalTypingsCacheLocation,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){d(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}d(h,"DirectoryWatcher")}g.forEach((h,_)=>{h.close(),this.typingWatchers.delete(_)})}getCurrentProgram(){return this.program}removeExistingTypings(c){if(!c.length)return c;let g=q9e(this.getCompilerOptions(),this);return Le(c,d=>!g.includes(d))}updateGraphWorker(){var c,g;let d=this.languageService.getCurrentProgram();pe.assert(d===this.program),pe.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);let h=Zg(),{hasInvalidatedResolutions:_,hasInvalidatedLibResolutions:S}=this.resolutionCache.createHasInvalidatedResolutions(As,As);this.hasInvalidatedResolutions=_,this.hasInvalidatedLibResolutions=S,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(c=ki)==null||c.push(ki.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,d),(g=ki)==null||g.pop(),pe.assert(d===void 0||this.program!==void 0);let R=!1;if(this.program&&(!d||this.program!==d&&this.program.structureIsReused!==2)){if(R=!0,this.rootFilesMap.forEach((V,M)=>{var ee;let re=this.program.getSourceFileByPath(M),ge=V.info;!re||((ee=V.info)==null?void 0:ee.path)===re.resolvedPath||(V.info=this.projectService.getScriptInfo(re.fileName),pe.assert(V.info.isAttached(this)),ge?.detachFromProject(this))}),Stt(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(V,M)=>this.addMissingFileWatcher(V,M)),this.generatedFilesMap){let V=this.compilerOptions.outFile;uJt(this.generatedFilesMap)?(!V||!this.isValidGeneratedFileWatcher(c0(V)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():V?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((M,ee)=>{let re=this.program.getSourceFileByPath(ee);(!re||re.resolvedPath!==ee||!this.isValidGeneratedFileWatcher(Mne(re.fileName,this.compilerOptions,this.program),M))&&(Sv(M),this.generatedFilesMap.delete(ee))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||d&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&d&&this.program&&NB(this.changedFilesForExportMapCache,V=>{let M=d.getSourceFileByPath(V),ee=this.program.getSourceFileByPath(V);return!M||!ee?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(M,ee,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());let T=this.externalFiles||tC;this.externalFiles=this.getExternalFiles(),ty(this.externalFiles,T,gd(!this.useCaseSensitiveFileNames()),V=>{let M=this.projectService.getOrCreateScriptInfoNotOpenedByClient(V,this.currentDirectory,this.directoryStructureHost,!1);M?.attachToProject(this)},V=>this.detachScriptInfoFromProject(V));let O=Zg()-h;return this.sendPerformanceEvent("UpdateGraph",O),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${R}${this.program?` structureIsReused:: ${xc[this.program.structureIsReused]}`:""} Elapsed: ${O}ms`),this.projectService.logger.isTestLogger?this.program!==d?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==d&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),R}sendPerformanceEvent(c,g){this.projectService.sendPerformanceEvent(c,g)}detachScriptInfoFromProject(c,g){let d=this.projectService.getScriptInfo(c);d&&(d.detachFromProject(this),g||this.resolutionCache.removeResolutionsOfFile(d.path))}addMissingFileWatcher(c,g){var d;if(A9(this)){let _=this.projectService.configFileExistenceInfoCache.get(c);if((d=_?.config)!=null&&d.projects.has(this.canonicalConfigFilePath))return $ie}let h=this.projectService.watchFactory.watchFile(Xc(g,this.currentDirectory),(_,S)=>{A9(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(_,c,S),S===0&&this.missingFilesMap.has(c)&&(this.missingFilesMap.delete(c),h.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),eC.MissingFile,this);return h}isWatchedMissingFile(c){return!!this.missingFilesMap&&this.missingFilesMap.has(c)}addGeneratedFileWatch(c,g){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(c));else{let d=this.toPath(g);if(this.generatedFilesMap){if(uJt(this.generatedFilesMap)){pe.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(d))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(d,this.createGeneratedFileWatcher(c))}}createGeneratedFileWatcher(c){return{generatedFilePath:this.toPath(c),watcher:this.projectService.watchFactory.watchFile(c,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),eC.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(c,g){return this.toPath(c)===g.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(uJt(this.generatedFilesMap)?Sv(this.generatedFilesMap):Vy(this.generatedFilesMap,Sv),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&!g.isAttached(this)?qF.ThrowProjectDoesNotContainDocument(c,this):g}getScriptInfo(c){return this.projectService.getScriptInfo(c)}filesToString(c){return this.filesToStringWorker(c,!0,!1)}filesToStringWorker(c,g,d){if(this.initialLoadPending)return` Files (0) InitialLoadPending `;if(!this.program)return` Files (0) NoProgram `;let h=this.program.getSourceFiles(),_=` Files (${h.length}) `;if(c){for(let S of h)_+=` ${S.fileName}${d?` ${S.version} ${JSON.stringify(S.text)}`:""} `;g&&(_+=` -`,rrt(this.program,S=>_+=` ${S} -`))}return _}print(c,g,d){var h;this.writeLog(`Project '${this.projectName}' (${kpe[this.projectKind]})`),this.writeLog(this.filesToStringWorker(c&&this.projectService.logger.hasLevel(3),g&&this.projectService.logger.hasLevel(3),d&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(h=this.noDtsResolutionProject)==null||h.print(!1,!1,!1)}setCompilerOptions(c){var g;if(c){c.allowNonTsExtensions=!0;let d=this.compilerOptions;this.compilerOptions=c,this.setInternalCompilerOptionsForEmittingJsFiles(),(g=this.noDtsResolutionProject)==null||g.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),HJ(d,c)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(c){this.watchOptions=c}getWatchOptions(){return this.watchOptions}setTypeAcquisition(c){c&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(c))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(c,g){var d,h;let _=g?T=>Do(T.entries(),([O,V])=>({fileName:O,isSourceOfProjectReferenceRedirect:V})):T=>Do(T.keys());this.initialLoadPending||Sv(this);let S={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:_se(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},R=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&c===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!R)return{info:S,projectErrors:this.getGlobalProjectErrors()};let T=this.lastReportedFileNames,O=((d=this.externalFiles)==null?void 0:d.map(Ie=>({fileName:cp(Ie),isSourceOfProjectReferenceRedirect:!1})))||tC,V=Ru(this.getFileNamesWithRedirectInfo(!!g).concat(O),Ie=>Ie.fileName,Ie=>Ie.isSourceOfProjectReferenceRedirect),M=new Map,ee=new Map,re=R?Do(R.keys()):[],ge=[];return Fh(V,(Ie,_e)=>{T.has(_e)?g&&Ie!==T.get(_e)&&ge.push({fileName:_e,isSourceOfProjectReferenceRedirect:Ie}):M.set(_e,Ie)}),Fh(T,(Ie,_e)=>{V.has(_e)||ee.set(_e,Ie)}),this.lastReportedFileNames=V,this.lastReportedVersion=this.projectProgramVersion,{info:S,changes:{added:_(M),removed:_(ee),updated:g?re.map(Ie=>({fileName:Ie,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(Ie)})):re,updatedRedirects:g?ge:void 0},projectErrors:this.getGlobalProjectErrors()}}else{let T=this.getFileNamesWithRedirectInfo(!!g),O=((h=this.externalFiles)==null?void 0:h.map(M=>({fileName:cp(M),isSourceOfProjectReferenceRedirect:!1})))||tC,V=T.concat(O);return this.lastReportedFileNames=Ru(V,M=>M.fileName,M=>M.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:S,files:g?V:V.map(M=>M.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(c){this.rootFilesMap.delete(c.path)}isSourceOfProjectReferenceRedirect(c){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(c)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,Ro(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(c){if(!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();for(let h of this.projectService.globalPlugins)h&&(c.plugins&&c.plugins.some(_=>_.name===h)||(this.projectService.logger.info(`Loading global plugin ${h}`),this.enablePlugin({name:h,global:!0},d)))}enablePlugin(c,g){this.projectService.requestEnablePlugin(this,c,g)}enableProxy(c,g){try{if(typeof c!="function"){this.projectService.logger.info(`Skipped loading plugin ${g.name} because it did not expose a proper factory function`);return}let d={config:g,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},h=c({typescript:Ypn}),_=h.create(d);for(let S of Object.keys(this.languageService))S in _||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${S} in created LS. Patching.`),_[S]=this.languageService[S]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=_,this.plugins.push({name:g.name,module:h})}catch(d){this.projectService.logger.info(`Plugin activation failed: ${d}`)}}onPluginConfigurationChanged(c,g){this.plugins.filter(d=>d.name===c).forEach(d=>{d.module.onConfigurationChanged&&d.module.onConfigurationChanged(g)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(c,g){return this.projectService.serverMode!==0?tC:this.projectService.getPackageJsonsVisibleToFile(c,this,g)}getNearestAncestorDirectoryWithPackageJson(c){return this.projectService.getNearestAncestorDirectoryWithPackageJson(c,this)}getPackageJsonsForAutoImport(c){return this.getPackageJsonsVisibleToFile(Ro(this.currentDirectory,qde),c)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=Fnt(this))}clearCachedExportInfoMap(){var c;(c=this.exportMapCache)==null||c.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||M1e(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var c,g;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((c=this.projectService.host.realpath)==null?void 0:c.bind(this.projectService.host)),getCurrentDirectory:this.getCurrentDirectory.bind(this),readFile:this.projectService.host.readFile.bind(this.projectService.host),getDirectories:this.projectService.host.getDirectories.bind(this.projectService.host),trace:(g=this.projectService.host.trace)==null?void 0:g.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var c,g,d;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(Sv(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}let h=this.includePackageJsonAutoImports();if(h){(c=ki)==null||c.push(ki.Phase.Session,"getPackageJsonAutoImportProvider");let _=Zg();if(this.autoImportProviderHost=pJt.create(h,this,this.getHostForAutoImportProvider())??!1,this.autoImportProviderHost)return Sv(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",Zg()-_),(g=ki)==null||g.pop(),this.autoImportProviderHost.getCurrentProgram();(d=ki)==null||d.pop()}}isDefaultProjectForOpenFiles(){return!!Fh(this.projectService.openFiles,(c,g)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(g))===this)}watchNodeModulesForPackageJsonChanges(c){return this.projectService.watchPackageJsonsInNodeModules(c,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(c){return pe.assert(this.projectService.serverMode===0),this.noDtsResolutionProject??(this.noDtsResolutionProject=new AJt(this)),this.noDtsResolutionProject.rootFile!==c&&(this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[c]),this.noDtsResolutionProject.rootFile=c),this.noDtsResolutionProject}runWithTemporaryFileUpdate(c,g,d){var h,_,S,R;let T=this.program,O=pe.checkDefined((h=this.program)==null?void 0:h.getSourceFile(c),"Expected file to be part of program"),V=pe.checkDefined(O.getFullText());(_=this.getScriptInfo(c))==null||_.editContent(0,V.length,g),this.updateGraph();try{d(this.program,T,(S=this.program)==null?void 0:S.getSourceFile(c))}finally{(R=this.getScriptInfo(c))==null||R.editContent(0,g.length,V)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0}}};function xOs(s,c){var g,d;let h=s.getSourceFiles();(g=ki)==null||g.push(ki.Phase.Session,"getUnresolvedImports",{count:h.length});let _=s.getTypeChecker().getAmbientModules().map(R=>A2(R.getName())),S=ol(jt(h,R=>GOs(s,R,_,c)));return(d=ki)==null||d.pop(),S}function GOs(s,c,g,d){return cr(d,c.path,()=>{let h;return s.forEachResolvedModule(({resolvedModule:_},S)=>{(!_||!pz(_.extension))&&!Xr(S)&&!g.some(R=>R===S)&&(h=Ft(h,jEe(S).packageName))},c),h||tC})}var gJt=class extends gq{constructor(s,c,g,d,h,_){super(s.newInferredProjectName(),0,s,!1,void 0,c,!1,g,s.host,h),this._isJsInferredProject=!1,this.typeAcquisition=_,this.projectRootPath=d&&s.toCanonicalFileName(d),!d&&!s.useSingleInferredProject&&(this.canonicalCurrentDirectory=s.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(s){s!==this._isJsInferredProject&&(this._isJsInferredProject=s,this.setCompilerOptions())}setCompilerOptions(s){if(!s&&!this.getCompilationSettings())return;let c=ent(s||this.getCompilationSettings());this._isJsInferredProject&&typeof c.maxNodeModuleJsDepth!="number"?c.maxNodeModuleJsDepth=2:this._isJsInferredProject||(c.maxNodeModuleJsDepth=void 0),c.allowJs=!0,super.setCompilerOptions(c)}addRoot(s){pe.assert(s.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(s),!this._isJsInferredProject&&s.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!s.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(s)}removeRoot(s){this.projectService.stopWatchingConfigFilesForScriptInfo(s),super.removeRoot(s),!this.isOrphan()&&this._isJsInferredProject&&s.isJavaScript()&&ue(this.getRootScriptInfos(),c=>!c.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){F(this.getRootScriptInfos(),s=>this.projectService.stopWatchingConfigFilesForScriptInfo(s)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:aJt(this),include:E,exclude:E}}},AJt=class extends gq{constructor(s){super(s.projectService.newAuxiliaryProjectName(),4,s.projectService,!1,void 0,s.getCompilerOptionsForNoDtsResolutionProject(),!1,void 0,s.projectService.host,s.currentDirectory)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},dJt=class Lxr extends gq{constructor(c,g,d){super(c.projectService.newAutoImportProviderProjectName(),3,c.projectService,!1,void 0,d,!1,c.getWatchOptions(),c.projectService.host,c.currentDirectory),this.hostProject=c,this.rootFileNames=g,this.useSourceOfProjectReferenceRedirect=$i(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=$i(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(c,g,d,h){var _,S;if(!c)return E;let R=g.getCurrentProgram();if(!R)return E;let T=Zg(),O,V,M=Ro(g.currentDirectory,qde),ee=g.getPackageJsonsForAutoImport(Ro(g.currentDirectory,M));for(let Ze of ee)(_=Ze.dependencies)==null||_.forEach((Pe,Ke)=>Ee(Ke)),(S=Ze.peerDependencies)==null||S.forEach((Pe,Ke)=>Ee(Ke));let re=0;if(O){let Ze=g.getSymlinkCache();for(let Pe of Do(O.keys())){if(c===2&&re>=this.maxDependencies)return g.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),E;let Ke=Net(Pe,g.currentDirectory,h,d,R.getModuleResolutionCache());if(Ke){let Ye=Ne(Ke,R,Ze);if(Ye){re+=_e(Ye);continue}}if(!F([g.currentDirectory,g.getGlobalTypingsCacheLocation()],Ye=>{if(Ye){let Tt=Net(`@types/${Pe}`,Ye,h,d,R.getModuleResolutionCache());if(Tt){let at=Ne(Tt,R,Ze);return re+=_e(at),!0}}})&&Ke&&h.allowJs&&h.maxNodeModuleJsDepth){let Ye=Ne(Ke,R,Ze,!0);re+=_e(Ye)}}}let ge=R.getResolvedProjectReferences(),Ie=0;return ge?.length&&g.projectService.getHostPreferences().includeCompletionsForModuleExports&&ge.forEach(Ze=>{if(Ze?.commandLine.options.outFile)Ie+=_e(Te([_N(Ze.commandLine.options.outFile,".d.ts")]));else if(Ze){let Pe=LA(()=>MU(Ze.commandLine,!g.useCaseSensitiveFileNames()));Ie+=_e(Te(Xt(Ze.commandLine.fileNames,Ke=>!PC(Ke)&&!cA(Ke,".json")&&!R.getSourceFile(Ke)?Kde(Ke,Ze.commandLine,!g.useCaseSensitiveFileNames(),Pe):void 0)))}}),V?.size&&g.log(`AutoImportProviderProject: found ${V.size} root files in ${re} dependencies ${Ie} referenced projects in ${Zg()-T} ms`),V?Do(V.values()):E;function _e(Ze){return Ze?.length?(V??(V=new Set),Ze.forEach(Pe=>V.add(Pe)),1):0}function Ee(Ze){Ac(Ze,"@types/")||(O||(O=new Set)).add(Ze)}function Ne(Ze,Pe,Ke,et){var Ye;let Tt=Zet(Ze,h,d,Pe.getModuleResolutionCache(),et);if(Tt){let at=(Ye=d.realpath)==null?void 0:Ye.call(d,Ze.packageDirectory),Qe=at?g.toPath(at):void 0,Ct=Qe&&Qe!==g.toPath(Ze.packageDirectory);return Ct&&Ke.setSymlinkedDirectory(Ze.packageDirectory,{real:Cp(at),realPath:Cp(Qe)}),Te(Tt,Ct?mt=>mt.replace(Ze.packageDirectory,at):void 0)}}function Te(Ze,Pe){return Xt(Ze,Ke=>{let et=Pe?Pe(Ke):Ke;if(!R.getSourceFile(et)&&!(Pe&&R.getSourceFile(Ke)))return et})}}static create(c,g,d){if(c===0)return;let h={...g.getCompilerOptions(),...this.compilerOptionsOverrides},_=this.getRootFileNames(c,g,d,h);if(_.length)return new Lxr(g,_,h)}isEmpty(){return!zt(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let c=this.rootFileNames;c||(c=Lxr.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this,c),this.rootFileNames=c;let g=this.getCurrentProgram(),d=super.updateGraph();return g&&g!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),d}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var c;return!!((c=this.rootFileNames)!=null&&c.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||E}getLanguageService(){throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.")}onAutoImportProviderSettingsChanged(){throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.")}onPackageJsonChange(){throw new Error("package.json changes should be notified on an AutoImportProvider's host project")}getHostForAutoImportProvider(){throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.")}getProjectReferences(){return this.hostProject.getProjectReferences()}includePackageJsonAutoImports(){return 0}getSymlinkCache(){return this.hostProject.getSymlinkCache()}getModuleResolutionCache(){var c;return(c=this.hostProject.getCurrentProgram())==null?void 0:c.getModuleResolutionCache()}};dJt.maxDependencies=10,dJt.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0};var pJt=dJt,fJt=class extends gq{constructor(s,c,g,d,h){super(s,1,g,!1,void 0,{},!1,void 0,d,Mo(s)),this.canonicalConfigFilePath=c,this.openFileWatchTriggered=new Map,this.initialLoadPending=!0,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=h}setCompilerHost(s){this.compilerHost=s}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(s){let c=cp(s),g=this.projectService.toCanonicalFileName(c),d=this.projectService.configFileExistenceInfoCache.get(g);return d||this.projectService.configFileExistenceInfoCache.set(g,d={exists:this.projectService.host.fileExists(c)}),this.projectService.ensureParsedConfigUptoDate(c,g,d,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(c,d,this),d.exists?d.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(s){this.releaseParsedConfig(this.projectService.toCanonicalFileName(cp(s)))}releaseParsedConfig(s){this.projectService.stopWatchingWildCards(s,this),this.projectService.releaseParsedConfig(s,this)}updateGraph(){if(this.deferredClose)return!1;let s=this.dirty;this.initialLoadPending=!1;let c=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let g;switch(c){case 1:this.openFileWatchTriggered.clear(),g=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();let d=pe.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,d),g=!0;break;default:g=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),c===2||g&&(!s||!this.triggerFileForConfigFileDiag||this.getCurrentProgram().structureIsReused===2)?this.triggerFileForConfigFileDiag=void 0:this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1),g}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(s){if(typeof process.versions.pnp<"u"){let c=this.getCurrentDirectory(),g=d=>{try{let h=QW(`${d}/`);if(!h)return d;let _=h.findPackageLocator(`${d}/`),{packageLocation:S}=h.getPackageInformation(_),R=Ro(_.name,_p(S,d,!1));return h.resolveToUnqualified(R,`${c}/`)}catch{return d}};s=s?.map(d=>({...d,path:g(d.path)}))}this.projectReferences=s,this.potentialProjectReferences=void 0}setPotentialProjectReference(s){pe.assert(this.initialLoadPending),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(s)}getRedirectFromSourceFile(s){let c=this.getCurrentProgram();return c&&c.getRedirectFromSourceFile(s)}forEachResolvedProjectReference(s){var c;return(c=this.getCurrentProgram())==null?void 0:c.forEachResolvedProjectReference(s)}enablePluginsWithOptions(s){var c;if(this.plugins.length=0,!((c=s.plugins)!=null&&c.length)&&!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){let h=Mo(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${h} to search paths`),d.unshift(h)}if(s.plugins)for(let h of s.plugins)this.enablePlugin(h,d);return this.enableGlobalPlugins(s)}getGlobalProjectErrors(){return Le(this.projectErrors,s=>!s.file)||tC}getAllProjectErrors(){return this.projectErrors||tC}setProjectErrors(s){this.projectErrors=s}close(){this.projectService.configFileExistenceInfoCache.forEach((s,c)=>this.releaseParsedConfig(c)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return Fde(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(s){this.parsedCommandLine=s,J9e(s.fileNames,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,JEe(s.raw))}},Fst=class extends gq{constructor(s,c,g,d,h,_,S){super(s,2,c,!0,d,g,h,S,c.host,Mo(_||xp(s))),this.externalProjectName=s,this.compileOnSaveEnabled=h,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){let s=super.updateGraph();return this.projectService.sendProjectTelemetry(this),s}getExcludedFiles(){return this.excludedFiles}};function _se(s){return s.projectKind===0}function g9(s){return s.projectKind===1}function S2e(s){return s.projectKind===2}function v2e(s){return s.projectKind===3||s.projectKind===4}function B2e(s){return g9(s)&&!!s.deferredClose}var Zst=20*1024*1024,Lst=4*1024*1024,TOe="projectsUpdatedInBackground",Vst="projectLoadingStart",Wst="projectLoadingFinish",Ost="largeFileReferenced",Pst="configFileDiag",Mst="projectLanguageServiceState",Hst="projectInfo",IJt="openFileInfo",Yst="createFileWatcher",Qst="createDirectoryWatcher",Xst="closeFileWatcher",ufn="*ensureProjectForOpenFiles*";function gfn(s){let c=new Map;for(let g of s)if(typeof g.type=="object"){let d=g.type;d.forEach(h=>{pe.assert(typeof h=="number")}),c.set(g.name,d)}return c}var FOs=gfn(Qw),ZOs=gfn(Pz),LOs=new Map(Object.entries({none:0,block:1,smart:2})),hJt={jquery:{match:/jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,types:["jquery"]},WinJS:{match:/^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,exclude:[["^",1,"/.*"]],types:["winjs"]},Kendo:{match:/^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,exclude:[["^",1,"/.*"]],types:["kendo-ui"]},"Office Nuget":{match:/^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,exclude:[["^",1,"/.*"]],types:["office"]},References:{match:/^(.*\/_references\.js)$/i,exclude:[["^",1,"$"]]}};function yse(s){return Xs(s.indentStyle)&&(s.indentStyle=LOs.get(s.indentStyle.toLowerCase()),pe.assert(s.indentStyle!==void 0)),s}function ROe(s){return FOs.forEach((c,g)=>{let d=s[g];Xs(d)&&(s[g]=c.get(d.toLowerCase()))}),s}function w2e(s,c){let g,d;return Pz.forEach(h=>{let _=s[h.name];if(_===void 0)return;let S=ZOs.get(h.name);(g||(g={}))[h.name]=S?Xs(_)?S.get(_.toLowerCase()):_:VU(h,_,c||"",d||(d=[]))}),g&&{watchOptions:g,errors:d}}function mJt(s){let c;return L9e.forEach(g=>{let d=s[g.name];d!==void 0&&((c||(c={}))[g.name]=d)}),c}function Jst(s){return Xs(s)?Ust(s):s}function Ust(s){switch(s){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function CJt(s){let{lazyConfiguredProjectsFromExternalProject:c,...g}=s;return g}var Kst={getFileName:s=>s,getScriptKind:(s,c)=>{let g;if(c){let d=pE(s);d&&zt(c,h=>h.extension===d?(g=h.scriptKind,!0):!1)}return g},hasMixedContent:(s,c)=>zt(c,g=>g.isMixedContent&&cA(s,g.extension))},jst={getFileName:s=>s.fileName,getScriptKind:s=>Jst(s.scriptKind),hasMixedContent:s=>!!s.hasMixedContent};function Afn(s,c){for(let g of c)if(g.getProjectName()===s)return g}var NOe={isKnownTypesPackageName:As,installPackage:rl,enqueueInstallTypingsRequest:Dc,attach:Dc,onProjectClosed:Dc,globalTypingsCacheLocation:void 0},_Jt={close:Dc};function dfn(s,c){if(!c)return;let g=c.get(s.path);if(g!==void 0)return zst(s)?g&&!Xs(g)?g.get(s.fileName):void 0:Xs(g)||!g?g:g.get(!1)}function pfn(s){return!!s.containingProjects}function zst(s){return!!s.configFileInfo}var yJt=(s=>(s[s.FindOptimized=0]="FindOptimized",s[s.Find=1]="Find",s[s.CreateReplayOptimized=2]="CreateReplayOptimized",s[s.CreateReplay=3]="CreateReplay",s[s.CreateOptimized=4]="CreateOptimized",s[s.Create=5]="Create",s[s.ReloadOptimized=6]="ReloadOptimized",s[s.Reload=7]="Reload",s))(yJt||{});function ffn(s){return s-1}function Ifn(s,c,g,d,h,_,S,R,T){for(var O;;){if(c.parsedCommandLine&&(R&&!c.parsedCommandLine.options.composite||c.parsedCommandLine.options.disableSolutionSearching))return;let V=c.projectService.getConfigFileNameForFile({fileName:c.getConfigFilePath(),path:s.path,configFileInfo:!0,isForDefaultProject:!R},d<=3);if(!V)return;let M=c.projectService.findCreateOrReloadConfiguredProject(V,d,h,_,R?void 0:s.fileName,S,R,T);if(!M)return;!M.project.parsedCommandLine&&((O=c.parsedCommandLine)!=null&&O.options.composite)&&M.project.setPotentialProjectReference(c.canonicalConfigFilePath);let ee=g(M);if(ee)return ee;c=M.project}}function hfn(s,c,g,d,h,_,S,R){let T=c.options.disableReferencedProjectLoad?0:d,O;return F(c.projectReferences,V=>{var M;let ee=cp(Jz(V)),re=s.projectService.toCanonicalFileName(ee),ge=R?.get(re);if(ge!==void 0&&ge>=T)return;let Ie=s.projectService.configFileExistenceInfoCache.get(re),_e=T===0?Ie?.exists||(M=s.resolvedChildConfigs)!=null&&M.has(re)?Ie.config.parsedCommandLine:void 0:s.getParsedCommandLine(ee);if(_e&&T!==d&&T>2&&(_e=s.getParsedCommandLine(ee)),!_e)return;let Ee=s.projectService.findConfiguredProjectByProjectName(ee,_);if(!(T===2&&!Ie&&!Ee)){switch(T){case 6:Ee&&Ee.projectService.reloadConfiguredProjectOptimized(Ee,h,S);case 4:(s.resolvedChildConfigs??(s.resolvedChildConfigs=new Set)).add(re);case 2:case 0:if(Ee||T!==0){let Ne=g(Ie??s.projectService.configFileExistenceInfoCache.get(re),Ee,ee,h,s,re);if(Ne)return Ne}break;default:pe.assertNever(T)}(R??(R=new Map)).set(re,T),(O??(O=[])).push(_e)}})||F(O,V=>V.projectReferences&&hfn(s,V,g,T,h,_,S,R))}function bJt(s,c,g,d,h){let _=!1,S;switch(c){case 2:case 3:BJt(s)&&(S=s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath));break;case 4:if(S=vJt(s),S)break;case 5:_=WOs(s,g);break;case 6:if(s.projectService.reloadConfiguredProjectOptimized(s,d,h),S=vJt(s),S)break;case 7:_=s.projectService.reloadConfiguredProjectClearingSemanticCache(s,d,h);break;case 0:case 1:break;default:pe.assertNever(c)}return{project:s,sentConfigFileDiag:_,configFileExistenceInfo:S,reason:d}}function mfn(s,c){return s.initialLoadPending?(s.potentialProjectReferences&&RB(s.potentialProjectReferences,c))??(s.resolvedChildConfigs&&RB(s.resolvedChildConfigs,c)):void 0}function VOs(s,c,g,d){return s.getCurrentProgram()?s.forEachResolvedProjectReference(c):s.initialLoadPending?mfn(s,d):F(s.getProjectReferences(),g)}function EJt(s,c,g){let d=g&&s.projectService.configuredProjects.get(g);return d&&c(d)}function Cfn(s,c){return VOs(s,g=>EJt(s,c,g.sourceFile.path),g=>EJt(s,c,s.toPath(Jz(g))),g=>EJt(s,c,g))}function qst(s,c){return`${Xs(c)?`Config: ${c} `:c?`Project: ${c.getProjectName()} `:""}WatchType: ${s}`}function SJt(s){return!s.isScriptOpen()&&s.mTime!==void 0}function Sv(s){return s.invalidateResolutionsOfFailedLookupLocations(),s.dirty&&!s.updateGraph()}function _fn(s,c,g){if(!g&&(s.invalidateResolutionsOfFailedLookupLocations(),!s.dirty))return!1;s.triggerFileForConfigFileDiag=c;let d=s.pendingUpdateLevel;if(s.updateGraph(),!s.triggerFileForConfigFileDiag&&!g)return d===2;let h=s.projectService.sendConfigFileDiagEvent(s,c,g);return s.triggerFileForConfigFileDiag=void 0,h}function WOs(s,c){if(c){if(_fn(s,c,!1))return!0}else Sv(s);return!1}function vJt(s){let c=cp(s.getConfigFilePath()),g=s.projectService.ensureParsedConfigUptoDate(c,s.canonicalConfigFilePath,s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath),s),d=g.config.parsedCommandLine;if(s.parsedCommandLine=d,s.resolvedChildConfigs=void 0,s.updateReferences(d.projectReferences),BJt(s))return g}function BJt(s){return!!s.parsedCommandLine&&(!!s.parsedCommandLine.options.composite||!!Bet(s.parsedCommandLine))}function OOs(s){return BJt(s)?s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath):void 0}function POs(s){return`Creating possible configured project for ${s.fileName} to open`}function $st(s){return`User requested reload projects: ${s}`}function wJt(s){g9(s)&&(s.projectOptions=!0)}function TJt(s){let c=1;return()=>s(c++)}function RJt(){return{idToCallbacks:new Map,pathToId:new Map}}function yfn(s,c){return!!c&&!!s.eventHandler&&!!s.session}function MOs(s,c){if(!yfn(s,c))return;let g=RJt(),d=RJt(),h=RJt(),_=1;return s.session.addProtocolHandler("watchChange",re=>(O(re.arguments),{responseRequired:!1})),{watchFile:S,watchDirectory:R,getCurrentDirectory:()=>s.host.getCurrentDirectory(),useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames};function S(re,ge){return T(g,re,ge,Ie=>({eventName:Yst,data:{id:Ie,path:re}}))}function R(re,ge,Ie){return T(Ie?h:d,re,ge,_e=>({eventName:Qst,data:{id:_e,path:re,recursive:!!Ie,ignoreUpdate:re.endsWith("/node_modules")?void 0:!0}}))}function T({pathToId:re,idToCallbacks:ge},Ie,_e,Ee){let Ne=s.toPath(Ie),Te=re.get(Ne);Te||re.set(Ne,Te=_++);let Ze=ge.get(Te);return Ze||(ge.set(Te,Ze=new Set),s.eventHandler(Ee(Te))),Ze.add(_e),{close(){let Pe=ge.get(Te);Pe?.delete(_e)&&(Pe.size||(ge.delete(Te),re.delete(Ne),s.eventHandler({eventName:Xst,data:{id:Te}})))}}}function O(re){Ki(re)?re.forEach(V):V(re)}function V({id:re,created:ge,deleted:Ie,updated:_e}){M(re,ge,0),M(re,Ie,2),M(re,_e,1)}function M(re,ge,Ie){ge?.length&&(ee(g,re,ge,(_e,Ee)=>_e(Ee,Ie)),ee(d,re,ge,(_e,Ee)=>_e(Ee)),ee(h,re,ge,(_e,Ee)=>_e(Ee)))}function ee(re,ge,Ie,_e){var Ee;(Ee=re.idToCallbacks.get(ge))==null||Ee.forEach(Ne=>{Ie.forEach(Te=>_e(Ne,xp(Te)))})}}var bfn=class Vxr{constructor(c){this.filenameToScriptInfo=new Map,this.nodeModulesWatchers=new Map,this.filenameToScriptInfoVersion=new Map,this.allJsFilesForOpenFileTelemetry=new Set,this.externalProjectToConfiguredProjectMap=new Map,this.externalProjects=[],this.inferredProjects=[],this.configuredProjects=new Map,this.newInferredProjectName=TJt(K4t),this.newAutoImportProviderProjectName=TJt(j4t),this.newAuxiliaryProjectName=TJt(z4t),this.openFiles=new Map,this.configFileForOpenFiles=new Map,this.rootOfInferredProjects=new Set,this.openFilesWithNonRootedDiskPath=new Map,this.compilerOptionsForInferredProjectsPerProjectRoot=new Map,this.watchOptionsForInferredProjectsPerProjectRoot=new Map,this.typeAcquisitionForInferredProjectsPerProjectRoot=new Map,this.projectToSizeMap=new Map,this.configFileExistenceInfoCache=new Map,this.safelist=hJt,this.legacySafelist=new Map,this.pendingProjectUpdates=new Map,this.pendingEnsureProjectForOpenFiles=!1,this.seenProjects=new Map,this.sharedExtendedConfigFileWatchers=new Map,this.extendedConfigCache=new Map,this.baseline=Dc,this.verifyDocumentRegistry=Dc,this.verifyProgram=Dc,this.onProjectCreation=Dc;var g;this.host=c.host,this.logger=c.logger,this.cancellationToken=c.cancellationToken,this.useSingleInferredProject=c.useSingleInferredProject,this.useInferredProjectPerProjectRoot=c.useInferredProjectPerProjectRoot,this.typingsInstaller=c.typingsInstaller||NOe,this.throttleWaitMilliseconds=c.throttleWaitMilliseconds,this.eventHandler=c.eventHandler,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.globalPlugins=c.globalPlugins||tC,this.pluginProbeLocations=c.pluginProbeLocations||tC,this.allowLocalPluginLoads=!!c.allowLocalPluginLoads,this.typesMapLocation=c.typesMapLocation===void 0?Ro(Mo(this.getExecutingFilePath()),"typesMap.json"):c.typesMapLocation,this.session=c.session,this.jsDocParsingMode=c.jsDocParsingMode,c.serverMode!==void 0?this.serverMode=c.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=gl()),this.currentDirectory=cp(this.host.getCurrentDirectory()),this.toCanonicalFileName=bd(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?Cp(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new $4t(this.host,this.logger),this.logger.info(`currentDirectory:: ${this.host.getCurrentDirectory()} useCaseSensitiveFileNames:: ${this.host.useCaseSensitiveFileNames}`),this.logger.info(`libs Location:: ${Mo(this.host.getExecutingFilePath())}`),this.logger.info(`globalTypingsCacheLocation:: ${this.typingsInstaller.globalTypingsCacheLocation}`),this.typesMapLocation?this.loadTypesMap():this.logger.info("No types map provided; using the default"),this.typingsInstaller.attach(this),this.hostConfiguration={formatCodeOptions:qVe(this.host.newLine),preferences:HB,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=Ont(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);let d=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,h=d!==0?_=>this.logger.info(_):Dc;this.packageJsonCache=GJt(this),this.watchFactory=this.serverMode!==0?{watchFile:tpe,watchDirectory:tpe}:Btt(MOs(this,c.canUseWatchEvents)||this.host,d,h,qst),this.canUseWatchEvents=yfn(this,c.canUseWatchEvents),this.pnpWatcher=this.watchPnpFile(),(g=c.incrementalVerifier)==null||g.call(c,this)}toPath(c){return Pu(c,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(c){return Xc(c,this.host.getCurrentDirectory())}setDocument(c,g,d){let h=pe.checkDefined(this.getScriptInfoForPath(g));h.cacheSourceFile={key:c,sourceFile:d}}getDocument(c,g){let d=this.getScriptInfoForPath(g);return d&&d.cacheSourceFile&&d.cacheSourceFile.key===c?d.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(c,g){if(!this.eventHandler)return;let d={eventName:Mst,data:{project:c,languageServiceEnabled:g}};this.eventHandler(d)}loadTypesMap(){try{let c=this.host.readFile(this.typesMapLocation);if(c===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}let g=JSON.parse(c);for(let d of Object.keys(g.typesMap))g.typesMap[d].match=new RegExp(g.typesMap[d].match,"i");this.safelist=g.typesMap;for(let d in g.simpleMap)Da(g.simpleMap,d)&&this.legacySafelist.set(d,g.simpleMap[d].toLowerCase())}catch(c){this.logger.info(`Error loading types map: ${c}`),this.safelist=hJt,this.legacySafelist.clear()}}updateTypingsForProject(c){let g=this.findProject(c.projectName);if(g)switch(c.kind){case UVe:g.updateTypingFiles(c.compilerOptions,c.typeAcquisition,c.unresolvedImports,c.typings);return;case KVe:g.enqueueInstallTypingsForProject(!0);return}}watchTypingLocations(c){var g;(g=this.findProject(c.projectName))==null||g.watchTypingLocations(c.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(ufn,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(c){if(B2e(c)||(c.markAsDirty(),v2e(c)))return;let g=c.getProjectName();this.pendingProjectUpdates.set(g,c),this.throttledOperations.schedule(g,250,()=>{this.pendingProjectUpdates.delete(g)&&Sv(c)})}hasPendingProjectUpdate(c){return this.pendingProjectUpdates.has(c.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;let c={eventName:TOe,data:{openFiles:Do(this.openFiles.keys(),g=>this.getScriptInfoForPath(g).fileName)}};this.eventHandler(c)}sendLargeFileReferencedEvent(c,g){if(!this.eventHandler)return;let d={eventName:Ost,data:{file:c,fileSize:g,maxFileSize:Lst}};this.eventHandler(d)}sendProjectLoadingStartEvent(c,g){if(!this.eventHandler)return;c.sendLoadingProjectFinish=!0;let d={eventName:Vst,data:{project:c,reason:g}};this.eventHandler(d)}sendProjectLoadingFinishEvent(c){if(!this.eventHandler||!c.sendLoadingProjectFinish)return;c.sendLoadingProjectFinish=!1;let g={eventName:Wst,data:{project:c}};this.eventHandler(g)}sendPerformanceEvent(c,g){this.performanceEventHandler&&this.performanceEventHandler({kind:c,durationMs:g})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(c){this.delayUpdateProjectGraph(c),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(c,g){if(c.length){for(let d of c)g&&d.clearSourceMapperCache(),this.delayUpdateProjectGraph(d);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(c,g){pe.assert(g===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");let d=ROe(c),h=w2e(c,g),_=mJt(c);d.allowNonTsExtensions=!0;let S=g&&this.toCanonicalFileName(g);S?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(S,d),this.watchOptionsForInferredProjectsPerProjectRoot.set(S,h||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(S,_)):(this.compilerOptionsForInferredProjects=d,this.watchOptionsForInferredProjects=h,this.typeAcquisitionForInferredProjects=_);for(let R of this.inferredProjects)(S?R.projectRootPath===S:!R.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(R.projectRootPath))&&(R.setCompilerOptions(d),R.setTypeAcquisition(_),R.setWatchOptions(h?.watchOptions),R.setProjectErrors(h?.errors),R.compileOnSaveEnabled=d.compileOnSave,R.markAsDirty(),this.delayUpdateProjectGraph(R));this.delayEnsureProjectForOpenFiles()}findProject(c){if(c!==void 0)return U4t(c)?Afn(c,this.inferredProjects):this.findExternalProjectByProjectName(c)||this.findConfiguredProjectByProjectName(cp(c))}forEachProject(c){this.externalProjects.forEach(c),this.configuredProjects.forEach(c),this.inferredProjects.forEach(c)}forEachEnabledProject(c){this.forEachProject(g=>{!g.isOrphan()&&g.languageServiceEnabled&&c(g)})}getDefaultProjectForFile(c,g){return g?this.ensureDefaultProjectForFile(c):this.tryGetDefaultProjectForFile(c)}tryGetDefaultProjectForFile(c){let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g&&!g.isOrphan()?g.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c){var g;let d=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;if(d)return(g=this.pendingOpenFileProjectUpdates)!=null&&g.delete(d.path)&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(d,5),d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,this.openFiles.get(d.path))),this.tryGetDefaultProjectForFile(d)}ensureDefaultProjectForFile(c){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c)||this.doEnsureDefaultProjectForFile(c)}doEnsureDefaultProjectForFile(c){this.ensureProjectStructuresUptoDate();let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g?g.getDefaultProject():(this.logErrorForScriptInfoNotFound(Xs(c)?c:c.fileName),zF.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(c){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(c)}ensureProjectStructuresUptoDate(){let c=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();let g=d=>{c=Sv(d)||c};this.externalProjects.forEach(g),this.configuredProjects.forEach(g),this.inferredProjects.forEach(g),c&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(c){let g=this.getScriptInfoForNormalizedPath(c);return g&&g.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(c){let g=this.getScriptInfoForNormalizedPath(c);return{...this.hostConfiguration.preferences,...g&&g.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(c,g){pe.assert(!c.isScriptOpen()),g===2?this.handleDeletedFile(c,!0):(c.deferredDelete&&(c.deferredDelete=void 0),c.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c))}handleSourceMapProjects(c){if(c.sourceMapFilePath)if(Xs(c.sourceMapFilePath)){let g=this.getScriptInfoForPath(c.sourceMapFilePath);this.delayUpdateSourceInfoProjects(g?.sourceInfos)}else this.delayUpdateSourceInfoProjects(c.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(c.sourceInfos),c.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(c.declarationInfoPath)}delayUpdateSourceInfoProjects(c){c&&c.forEach((g,d)=>this.delayUpdateProjectsOfScriptInfoPath(d))}delayUpdateProjectsOfScriptInfoPath(c){let g=this.getScriptInfoForPath(c);g&&this.delayUpdateProjectGraphs(g.containingProjects,!0)}handleDeletedFile(c,g){pe.assert(!c.isScriptOpen()),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c),c.detachAllProjects(),g?(c.delayReloadNonMixedContentFile(),c.deferredDelete=!0):this.deleteScriptInfo(c)}watchWildcardDirectory(c,g,d,h){let _=this.watchFactory.watchDirectory(c,R=>this.onWildCardDirectoryWatcherInvoke(c,d,h,S,R),g,this.getWatchOptionsFromProjectWatchOptions(h.parsedCommandLine.watchOptions,Mo(d)),eC.WildcardDirectory,d),S={packageJsonWatches:void 0,close(){var R;_&&(_.close(),_=void 0,(R=S.packageJsonWatches)==null||R.forEach(T=>{T.projects.delete(S),T.close()}),S.packageJsonWatches=void 0)}};return S}onWildCardDirectoryWatcherInvoke(c,g,d,h,_){let S=this.toPath(_),R=d.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(_,S);if(dp(S)==="package.json"&&!M1e(S)&&(R&&R.fileExists||!R&&this.host.fileExists(_))){let O=this.getNormalizedAbsolutePath(_);this.logger.info(`Config: ${g} Detected new package.json: ${O}`),this.packageJsonCache.addOrUpdate(O,S),this.watchPackageJsonFile(O,S,h)}R?.fileExists||this.sendSourceFileChange(S);let T=this.findConfiguredProjectByProjectName(g);A1e({watchedDirPath:this.toPath(c),fileOrDirectory:_,fileOrDirectoryPath:S,configFileName:g,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:d.parsedCommandLine.options,program:T?.getCurrentProgram()||d.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:O=>this.logger.info(O),toPath:O=>this.toPath(O),getScriptKind:T?O=>T.getScriptKind(O):void 0})||(d.updateLevel!==2&&(d.updateLevel=1),d.projects.forEach((O,V)=>{var M;if(!O)return;let ee=this.getConfiguredProjectByCanonicalConfigFilePath(V);if(!ee)return;if(T!==ee&&this.getHostPreferences().includeCompletionsForModuleExports){let ge=this.toPath(g);de((M=ee.getCurrentProgram())==null?void 0:M.getResolvedProjectReferences(),Ie=>Ie?.sourceFile.path===ge)&&ee.markAutoImportProviderAsDirty()}let re=T===ee?1:0;if(!(ee.pendingUpdateLevel>re))if(this.openFiles.has(S))if(pe.checkDefined(this.getScriptInfoForPath(S)).isAttached(ee)){let Ie=Math.max(re,ee.openFileWatchTriggered.get(S)||0);ee.openFileWatchTriggered.set(S,Ie)}else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee);else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee)}))}delayUpdateProjectsFromParsedConfigOnConfigFileChange(c,g){let d=this.configFileExistenceInfoCache.get(c);if(!d?.config)return!1;let h=!1;return d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache(),d.config.projects.forEach((_,S)=>{var R,T,O;let V=this.getConfiguredProjectByCanonicalConfigFilePath(S);if(V)if(h=!0,S===c){if(V.initialLoadPending)return;V.pendingUpdateLevel=2,V.pendingUpdateReason=g,this.delayUpdateProjectGraph(V),V.markAutoImportProviderAsDirty()}else{if(V.initialLoadPending){(T=(R=this.configFileExistenceInfoCache.get(S))==null?void 0:R.openFilesImpactedByConfigFile)==null||T.forEach(ee=>{var re;(re=this.pendingOpenFileProjectUpdates)!=null&&re.has(ee)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(ee,this.configFileForOpenFiles.get(ee))});return}let M=this.toPath(c);V.resolutionCache.removeResolutionsFromProjectReferenceRedirects(M),this.delayUpdateProjectGraph(V),this.getHostPreferences().includeCompletionsForModuleExports&&de((O=V.getCurrentProgram())==null?void 0:O.getResolvedProjectReferences(),ee=>ee?.sourceFile.path===M)&&V.markAutoImportProviderAsDirty()}}),h}onConfigFileChanged(c,g,d){let h=this.configFileExistenceInfoCache.get(g),_=this.getConfiguredProjectByCanonicalConfigFilePath(g),S=_?.deferredClose;d===2?(h.exists=!1,_&&(_.deferredClose=!0)):(h.exists=!0,S&&(_.deferredClose=void 0,_.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(g,"Change in config file detected"),this.openFiles.forEach((R,T)=>{var O,V;let M=this.configFileForOpenFiles.get(T);if(!((O=h.openFilesImpactedByConfigFile)!=null&&O.has(T)))return;this.configFileForOpenFiles.delete(T);let ee=this.getScriptInfoForPath(T);this.getConfigFileNameForFile(ee,!1)&&((V=this.pendingOpenFileProjectUpdates)!=null&&V.has(T)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(T,M))}),this.delayEnsureProjectForOpenFiles()}removeProject(c){switch(this.logger.info("`remove Project::"),c.print(!0,!0,!1),c.close(),pe.shouldAssert(1)&&this.filenameToScriptInfo.forEach(g=>pe.assert(!g.isAttached(c),"Found script Info still attached to project",()=>`${c.projectName}: ScriptInfos still attached: ${JSON.stringify(Do(lr(this.filenameToScriptInfo.values(),d=>d.isAttached(c)?{fileName:d.fileName,projects:d.containingProjects.map(h=>h.projectName),hasMixedContent:d.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(c.getProjectName()),c.projectKind){case 2:rf(this.externalProjects,c),this.projectToSizeMap.delete(c.getProjectName());break;case 1:this.configuredProjects.delete(c.canonicalConfigFilePath),this.projectToSizeMap.delete(c.canonicalConfigFilePath);break;case 0:rf(this.inferredProjects,c);break}}assignOrphanScriptInfoToInferredProject(c,g){pe.assert(c.isOrphan());let d=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(c.isDynamic?g||this.currentDirectory:Mo(Up(c.fileName)?c.fileName:Xc(c.fileName,g?this.getNormalizedAbsolutePath(g):this.currentDirectory)));if(d.addRoot(c),c.containingProjects[0]!==d&&(Xl(c.containingProjects,d),c.containingProjects.unshift(d)),d.updateGraph(),!this.useSingleInferredProject&&!d.projectRootPath)for(let h of this.inferredProjects){if(h===d||h.isOrphan())continue;let _=h.getRootScriptInfos();pe.assert(_.length===1||!!h.projectRootPath),_.length===1&&F(_[0].containingProjects,S=>S!==_[0].containingProjects[0]&&!S.isOrphan())&&h.removeFile(_[0],!0,!0)}return d}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,c)})}closeOpenFile(c,g){var d;let h=c.isDynamic?!1:this.host.fileExists(c.fileName);c.close(h),this.stopWatchingConfigFilesForScriptInfo(c);let _=this.toCanonicalFileName(c.fileName);this.openFilesWithNonRootedDiskPath.get(_)===c&&this.openFilesWithNonRootedDiskPath.delete(_);let S=!1;for(let R of c.containingProjects){if(g9(R)){c.hasMixedContent&&c.registerFileUpdate();let T=R.openFileWatchTriggered.get(c.path);T!==void 0&&(R.openFileWatchTriggered.delete(c.path),R.pendingUpdateLevelthis.onConfigFileChanged(c,g,T),2e3,this.getWatchOptionsFromProjectWatchOptions((_=(h=S?.config)==null?void 0:h.parsedCommandLine)==null?void 0:_.watchOptions,Mo(c)),eC.ConfigFile,d)),this.ensureConfigFileWatcherForProject(S,d)}ensureConfigFileWatcherForProject(c,g){let d=c.config.projects;d.set(g.canonicalConfigFilePath,d.get(g.canonicalConfigFilePath)||!1)}releaseParsedConfig(c,g){var d,h,_;let S=this.configFileExistenceInfoCache.get(c);(d=S.config)!=null&&d.projects.delete(g.canonicalConfigFilePath)&&((h=S.config)!=null&&h.projects.size||(S.config=void 0,Stt(c,this.sharedExtendedConfigFileWatchers),pe.checkDefined(S.watcher),(_=S.openFilesImpactedByConfigFile)!=null&&_.size?S.inferredProjectRoots?C1e(Mo(c))||(S.watcher.close(),S.watcher=_Jt):(S.watcher.close(),S.watcher=void 0):(S.watcher.close(),this.configFileExistenceInfoCache.delete(c))))}stopWatchingConfigFilesForScriptInfo(c){if(this.serverMode!==0)return;let g=this.rootOfInferredProjects.delete(c),d=c.isScriptOpen();d&&!g||this.forEachConfigFileLocation(c,h=>{var _,S,R;let T=this.configFileExistenceInfoCache.get(h);if(T){if(d){if(!((_=T?.openFilesImpactedByConfigFile)!=null&&_.has(c.path)))return}else if(!((S=T.openFilesImpactedByConfigFile)!=null&&S.delete(c.path)))return;g&&(T.inferredProjectRoots--,T.watcher&&!T.config&&!T.inferredProjectRoots&&(T.watcher.close(),T.watcher=void 0)),!((R=T.openFilesImpactedByConfigFile)!=null&&R.size)&&!T.config&&(pe.assert(!T.watcher),this.configFileExistenceInfoCache.delete(h))}})}startWatchingConfigFilesForInferredProjectRoot(c){this.serverMode===0&&(pe.assert(c.isScriptOpen()),this.rootOfInferredProjects.add(c),this.forEachConfigFileLocation(c,(g,d)=>{let h=this.configFileExistenceInfoCache.get(g);h?h.inferredProjectRoots=(h.inferredProjectRoots??0)+1:(h={exists:this.host.fileExists(d),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(g,h)),(h.openFilesImpactedByConfigFile??(h.openFilesImpactedByConfigFile=new Set)).add(c.path),h.watcher||(h.watcher=C1e(Mo(g))?this.watchFactory.watchFile(d,(_,S)=>this.onConfigFileChanged(d,g,S),2e3,this.hostConfiguration.watchOptions,eC.ConfigFileForInferredRoot):_Jt)}))}forEachConfigFileLocation(c,g){if(this.serverMode!==0)return;pe.assert(!pfn(c)||this.openFiles.has(c.path));let d=this.openFiles.get(c.path);if(pe.checkDefined(this.getScriptInfo(c.path)).isDynamic)return;let _=Mo(c.fileName),S=()=>zh(d,_,this.currentDirectory,!this.host.useCaseSensitiveFileNames),R=!d||!S(),T=!0,O=!0;zst(c)&&(di(c.fileName,"tsconfig.json")?T=!1:T=O=!1);do{let V=Cse(_,this.currentDirectory,this.toCanonicalFileName);if(T){let ee=Ro(_,"tsconfig.json");if(g(Ro(V,"tsconfig.json"),ee))return ee}if(O){let ee=Ro(_,"jsconfig.json");if(g(Ro(V,"jsconfig.json"),ee))return ee}if(Od(V))break;let M=Mo(_);if(M===_)break;_=M,T=O=!0}while(R||S())}findDefaultConfiguredProject(c){var g;return(g=this.findDefaultConfiguredProjectWorker(c,1))==null?void 0:g.defaultProject}findDefaultConfiguredProjectWorker(c,g){return c.isScriptOpen()?this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g):void 0}getConfigFileNameForFileFromCache(c,g){if(g){let d=dfn(c,this.pendingOpenFileProjectUpdates);if(d!==void 0)return d}return dfn(c,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(c,g){if(!this.openFiles.has(c.path))return;let d=g||!1;if(!zst(c))this.configFileForOpenFiles.set(c.path,d);else{let h=this.configFileForOpenFiles.get(c.path);(!h||Xs(h))&&this.configFileForOpenFiles.set(c.path,h=new Map().set(!1,h)),h.set(c.fileName,d)}}getConfigFileNameForFile(c,g){let d=this.getConfigFileNameForFileFromCache(c,g);if(d!==void 0)return d||void 0;if(g)return;let h=this.forEachConfigFileLocation(c,(_,S)=>this.configFileExists(S,_,c));return this.logger.info(`getConfigFileNameForFile:: File: ${c.fileName} ProjectRootPath: ${this.openFiles.get(c.path)}:: Result: ${h}`),this.setConfigFileNameForFileInCache(c,h),h}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(kJt),this.configuredProjects.forEach(kJt),this.inferredProjects.forEach(kJt),this.logger.info("Open files: "),this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);this.logger.info(` FileName: ${d.fileName} ProjectRootPath: ${c}`),this.logger.info(` Projects: ${d.containingProjects.map(h=>h.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(c,g){let d=this.toCanonicalFileName(c),h=this.getConfiguredProjectByCanonicalConfigFilePath(d);return g?h:h?.deferredClose?void 0:h}getConfiguredProjectByCanonicalConfigFilePath(c){return this.configuredProjects.get(c)}findExternalProjectByProjectName(c){return Afn(c,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(c,g,d,h){if(g&&g.disableSizeLimit||!this.host.getFileSize)return;let _=Zst;this.projectToSizeMap.set(c,0),this.projectToSizeMap.forEach(R=>_-=R||0);let S=0;for(let R of d){let T=h.getFileName(R);if(!G3(T)&&(S+=this.host.getFileSize(T),S>Zst||S>_)){let O=d.map(V=>h.getFileName(V)).filter(V=>!G3(V)).map(V=>({name:V,size:this.host.getFileSize(V)})).sort((V,M)=>M.size-V.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${S}). Largest files: ${O.map(V=>`${V.name}:${V.size}`).join(", ")}`),T}}this.projectToSizeMap.set(c,S)}createExternalProject(c,g,d,h,_){let S=ROe(d),R=w2e(d,Mo(xp(c))),T=new Fst(c,this,S,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c,S,g,jst),d.compileOnSave===void 0?!0:d.compileOnSave,void 0,R?.watchOptions);return T.setProjectErrors(R?.errors),T.excludedFiles=_,this.addFilesToNonInferredProject(T,g,jst,h),this.externalProjects.push(T),T}sendProjectTelemetry(c){if(this.seenProjects.has(c.projectName)){wJt(c);return}if(this.seenProjects.set(c.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){wJt(c);return}let g=g9(c)?c.projectOptions:void 0;wJt(c);let d={projectId:this.host.createSHA256Hash(c.projectName),fileStats:E2e(c.getScriptInfos(),!0),compilerOptions:pPt(c.getCompilationSettings()),typeAcquisition:_(c.getTypeAcquisition()),extends:g&&g.configHasExtendsProperty,files:g&&g.configHasFilesProperty,include:g&&g.configHasIncludeProperty,exclude:g&&g.configHasExcludeProperty,compileOnSave:c.compileOnSaveEnabled,configFileName:h(),projectType:c instanceof Fst?"external":"configured",languageServiceEnabled:c.languageServiceEnabled,version:C};this.eventHandler({eventName:Hst,data:d});function h(){return g9(c)&&Gst(c.getConfigFilePath())||"other"}function _({enable:S,include:R,exclude:T}){return{enable:S,include:R!==void 0&&R.length!==0,exclude:T!==void 0&&T.length!==0}}}addFilesToNonInferredProject(c,g,d,h){this.updateNonInferredProjectFiles(c,g,d),c.setTypeAcquisition(h),c.markAsDirty()}createConfiguredProject(c,g){var d;(d=ki)==null||d.instant(ki.Phase.Session,"createConfiguredProject",{configFilePath:c});let h=this.toCanonicalFileName(c),_=this.configFileExistenceInfoCache.get(h);_?_.exists=!0:this.configFileExistenceInfoCache.set(h,_={exists:!0}),_.config||(_.config={cachedDirectoryStructureHost:CVe(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});let S=new fJt(c,h,this,_.config.cachedDirectoryStructureHost,g);return pe.assert(!this.configuredProjects.has(h)),this.configuredProjects.set(h,S),this.createConfigFileWatcherForParsedConfig(c,h,S),S}loadConfiguredProject(c,g){var d,h;(d=ki)==null||d.push(ki.Phase.Session,"loadConfiguredProject",{configFilePath:c.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(c,g);let _=cp(c.getConfigFilePath()),S=this.ensureParsedConfigUptoDate(_,c.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath),c),R=S.config.parsedCommandLine;pe.assert(!!R.fileNames);let T=R.options;c.projectOptions||(c.projectOptions={configHasExtendsProperty:R.raw.extends!==void 0,configHasFilesProperty:R.raw.files!==void 0,configHasIncludeProperty:R.raw.include!==void 0,configHasExcludeProperty:R.raw.exclude!==void 0}),c.parsedCommandLine=R,c.setProjectErrors(R.options.configFile.parseDiagnostics),c.updateReferences(R.projectReferences);let O=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.canonicalConfigFilePath,T,R.fileNames,Kst);O?(c.disableLanguageService(O),this.configFileExistenceInfoCache.forEach((M,ee)=>this.stopWatchingWildCards(ee,c))):(c.setCompilerOptions(T),c.setWatchOptions(R.watchOptions),c.enableLanguageService(),this.watchWildcards(_,S,c)),c.enablePluginsWithOptions(T);let V=R.fileNames.concat(c.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(c,V,Kst,T,R.typeAcquisition,R.compileOnSave,R.watchOptions),(h=ki)==null||h.pop()}ensureParsedConfigUptoDate(c,g,d,h){var _,S,R;if(d.config&&(d.config.updateLevel===1&&this.reloadFileNamesOfParsedConfig(c,d.config),!d.config.updateLevel))return this.ensureConfigFileWatcherForProject(d,h),d;if(!d.exists&&d.config)return d.config.updateLevel=void 0,this.ensureConfigFileWatcherForProject(d,h),d;let T=((_=d.config)==null?void 0:_.cachedDirectoryStructureHost)||CVe(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),O=kde(c,Ie=>this.host.readFile(Ie)),V=WEe(c,Xs(O)?O:""),M=V.parseDiagnostics;Xs(O)||M.push(O);let ee=Mo(c),re=QEe(V,T,ee,void 0,c,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);re.errors.length&&M.push(...re.errors),this.logger.info(`Config: ${c} : ${JSON.stringify({rootNames:re.fileNames,options:re.options,watchOptions:re.watchOptions,projectReferences:re.projectReferences},void 0," ")}`);let ge=(S=d.config)==null?void 0:S.parsedCommandLine;return d.config?(d.config.parsedCommandLine=re,d.config.watchedDirectoriesStale=!0,d.config.updateLevel=void 0):d.config={parsedCommandLine:re,cachedDirectoryStructureHost:T,projects:new Map},!ge&&!nde(this.getWatchOptionsFromProjectWatchOptions(void 0,ee),this.getWatchOptionsFromProjectWatchOptions(re.watchOptions,ee))&&((R=d.watcher)==null||R.close(),d.watcher=void 0),this.createConfigFileWatcherForParsedConfig(c,g,h),_Ve(g,re.options,this.sharedExtendedConfigFileWatchers,(Ie,_e)=>this.watchFactory.watchFile(Ie,()=>{var Ee;yVe(this.extendedConfigCache,_e,Te=>this.toPath(Te));let Ne=!1;(Ee=this.sharedExtendedConfigFileWatchers.get(_e))==null||Ee.projects.forEach(Te=>{Ne=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(Te,`Change in extended config file ${Ie} detected`)||Ne}),Ne&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,eC.ExtendedConfigFile,c),Ie=>this.toPath(Ie)),d}watchWildcards(c,{exists:g,config:d},h){if(d.projects.set(h.canonicalConfigFilePath,!0),g){if(d.watchedDirectories&&!d.watchedDirectoriesStale)return;d.watchedDirectoriesStale=!1,g1e(d.watchedDirectories||(d.watchedDirectories=new Map),d.parsedCommandLine.wildcardDirectories,(_,S)=>this.watchWildcardDirectory(_,S,c,d))}else{if(d.watchedDirectoriesStale=!1,!d.watchedDirectories)return;Ly(d.watchedDirectories,Ev),d.watchedDirectories=void 0}}stopWatchingWildCards(c,g){let d=this.configFileExistenceInfoCache.get(c);!d.config||!d.config.projects.get(g.canonicalConfigFilePath)||(d.config.projects.set(g.canonicalConfigFilePath,!1),!Fh(d.config.projects,Zl)&&(d.config.watchedDirectories&&(Ly(d.config.watchedDirectories,Ev),d.config.watchedDirectories=void 0),d.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(c,g,d){var h;let _=c.getRootFilesMap(),S=new Map;for(let R of g){let T=d.getFileName(R),O=cp(T),V=Dpe(O),M;if(!V&&!c.fileExists(T)){M=Cse(O,this.currentDirectory,this.toCanonicalFileName);let ee=_.get(M);ee?(((h=ee.info)==null?void 0:h.path)===M&&(c.removeFile(ee.info,!1,!0),ee.info=void 0),ee.fileName=O):_.set(M,{fileName:O})}else{let ee=d.getScriptKind(R,this.hostConfiguration.extraFileExtensions),re=d.hasMixedContent(R,this.hostConfiguration.extraFileExtensions),ge=pe.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(O,c.currentDirectory,ee,re,c.directoryStructureHost,!1));M=ge.path;let Ie=_.get(M);!Ie||Ie.info!==ge?(c.addRoot(ge,O),ge.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(ge)):Ie.fileName=O}S.set(M,!0)}_.size>S.size&&_.forEach((R,T)=>{S.has(T)||(R.info?c.removeFile(R.info,c.fileExists(R.info.fileName),!0):_.delete(T))})}updateRootAndOptionsOfNonInferredProject(c,g,d,h,_,S,R){c.setCompilerOptions(h),c.setWatchOptions(R),S!==void 0&&(c.compileOnSaveEnabled=S),this.addFilesToNonInferredProject(c,g,d,_)}reloadFileNamesOfConfiguredProject(c){let g=this.reloadFileNamesOfParsedConfig(c.getConfigFilePath(),this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath).config);return c.updateErrorOnNoInputFiles(g),this.updateNonInferredProjectFiles(c,g.fileNames.concat(c.getExternalFiles(1)),Kst),c.markAsDirty(),c.updateGraph()}reloadFileNamesOfParsedConfig(c,g){if(g.updateLevel===void 0)return g.parsedCommandLine;pe.assert(g.updateLevel===1);let d=g.parsedCommandLine.options.configFile.configFileSpecs,h=xde(d,Mo(c),g.parsedCommandLine.options,g.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return g.parsedCommandLine={...g.parsedCommandLine,fileNames:h},g.updateLevel=void 0,g.parsedCommandLine}setFileNamesOfAutoImportProviderOrAuxillaryProject(c,g){this.updateNonInferredProjectFiles(c,g,Kst)}reloadConfiguredProjectOptimized(c,g,d){d.has(c)||(d.set(c,6),c.initialLoadPending||this.setProjectForReload(c,2,g))}reloadConfiguredProjectClearingSemanticCache(c,g,d){return d.get(c)===7?!1:(d.set(c,7),this.clearSemanticCache(c),this.reloadConfiguredProject(c,$st(g)),!0)}setProjectForReload(c,g,d){g===2&&this.clearSemanticCache(c),c.pendingUpdateReason=d&&$st(d),c.pendingUpdateLevel=g}reloadConfiguredProject(c,g){c.initialLoadPending=!1,this.setProjectForReload(c,0),this.loadConfiguredProject(c,g),_fn(c,c.triggerFileForConfigFileDiag??c.getConfigFilePath(),!0)}clearSemanticCache(c){c.originalConfiguredProjects=void 0,c.resolutionCache.clear(),c.getLanguageService(!1).cleanupSemanticCache(),c.cleanupProgram(),c.markAsDirty()}sendConfigFileDiagEvent(c,g,d){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;let h=c.getLanguageService().getCompilerOptionsDiagnostics();return h.push(...c.getAllProjectErrors()),!d&&h.length===(c.configDiagDiagnosticsReported??0)?!1:(c.configDiagDiagnosticsReported=h.length,this.eventHandler({eventName:Pst,data:{configFileName:c.getConfigFilePath(),diagnostics:h,triggerFile:g??c.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g){if(!this.useInferredProjectPerProjectRoot||c.isDynamic&&g===void 0)return;if(g){let h=this.toCanonicalFileName(g);for(let _ of this.inferredProjects)if(_.projectRootPath===h)return _;return this.createInferredProject(g,!1,g)}let d;for(let h of this.inferredProjects)h.projectRootPath&&zh(h.projectRootPath,c.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(d&&d.projectRootPath.length>h.projectRootPath.length||(d=h));return d}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject(this.currentDirectory,!0,void 0)}getOrCreateSingleInferredWithoutProjectRoot(c){pe.assert(!this.useSingleInferredProject);let g=this.toCanonicalFileName(this.getNormalizedAbsolutePath(c));for(let d of this.inferredProjects)if(!d.projectRootPath&&d.isOrphan()&&d.canonicalCurrentDirectory===g)return d;return this.createInferredProject(c,!1,void 0)}createInferredProject(c,g,d){let h=d&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(d)||this.compilerOptionsForInferredProjects,_,S;d&&(_=this.watchOptionsForInferredProjectsPerProjectRoot.get(d),S=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(d)),_===void 0&&(_=this.watchOptionsForInferredProjects),S===void 0&&(S=this.typeAcquisitionForInferredProjects),_=_||void 0;let R=new gJt(this,h,_?.watchOptions,d,c,S);return R.setProjectErrors(_?.errors),g?this.inferredProjects.unshift(R):this.inferredProjects.push(R),R}getOrCreateScriptInfoNotOpenedByClient(c,g,d,h){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(cp(c),g,void 0,void 0,d,h)}getScriptInfo(c){return this.getScriptInfoForNormalizedPath(cp(c))}getScriptInfoOrConfig(c){let g=cp(c),d=this.getScriptInfoForNormalizedPath(g);if(d)return d;let h=this.configuredProjects.get(this.toPath(c));return h&&h.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(c){let g=Do(lr(this.filenameToScriptInfo.entries(),d=>d[1].deferredDelete?void 0:d),([d,h])=>({path:d,fileName:h.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(c)}. -All files are: ${JSON.stringify(g)}`,"Err")}getSymlinkedProjects(c){let g;if(this.realpathToScriptInfos){let h=c.getRealpathIfDifferent();h&&F(this.realpathToScriptInfos.get(h),d),F(this.realpathToScriptInfos.get(c.path),d)}return g;function d(h){if(h!==c)for(let _ of h.containingProjects)_.languageServiceEnabled&&!_.isOrphan()&&!_.getCompilerOptions().preserveSymlinks&&!c.isAttached(_)&&(g?Fh(g,(S,R)=>R===h.path?!1:k(S,_))||g.add(h.path,_):(g=gl(),g.add(h.path,_)))}}watchClosedScriptInfo(c){if(pe.assert(!c.fileWatcher),!c.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!Ac(c.path,this.globalCacheLocationDirectoryPath))){let g=c.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||g===-1?c.fileWatcher=this.watchFactory.watchFile(c.fileName,(d,h)=>this.onSourceFileChanged(c,h),500,this.hostConfiguration.watchOptions,eC.ClosedScriptInfo):(c.mTime=this.getModifiedTime(c),c.fileWatcher=this.watchClosedScriptInfoInNodeModules(c.fileName.substring(0,g)))}}createNodeModulesWatcher(c,g){let d=this.watchFactory.watchDirectory(c,_=>{var S;let R=GVe(this.toPath(_));if(!R)return;let T=dp(R);if((S=h.affectedModuleSpecifierCacheProjects)!=null&&S.size&&(T==="package.json"||T==="node_modules")&&h.affectedModuleSpecifierCacheProjects.forEach(O=>{var V;(V=O.getModuleSpecifierCache())==null||V.clear()}),h.refreshScriptInfoRefCount)if(g===R)this.refreshScriptInfosInDirectory(g);else{let O=this.filenameToScriptInfo.get(R);O?SJt(O)&&this.refreshScriptInfo(O):v0(R)||this.refreshScriptInfosInDirectory(R)}},1,this.hostConfiguration.watchOptions,eC.NodeModules),h={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var _;d&&!h.refreshScriptInfoRefCount&&!((_=h.affectedModuleSpecifierCacheProjects)!=null&&_.size)&&(d.close(),d=void 0,this.nodeModulesWatchers.delete(g))}};return this.nodeModulesWatchers.set(g,h),h}watchPackageJsonsInNodeModules(c,g){var d;let h=this.toPath(c),_=this.nodeModulesWatchers.get(h)||this.createNodeModulesWatcher(c,h);return pe.assert(!((d=_.affectedModuleSpecifierCacheProjects)!=null&&d.has(g))),(_.affectedModuleSpecifierCacheProjects||(_.affectedModuleSpecifierCacheProjects=new Set)).add(g),{close:()=>{var S;(S=_.affectedModuleSpecifierCacheProjects)==null||S.delete(g),_.close()}}}watchClosedScriptInfoInNodeModules(c){let g=c+"/node_modules",d=this.toPath(g),h=this.nodeModulesWatchers.get(d)||this.createNodeModulesWatcher(g,d);return h.refreshScriptInfoRefCount++,{close:()=>{h.refreshScriptInfoRefCount--,h.close()}}}getModifiedTime(c){return(this.host.getModifiedTime(c.fileName)||xh).getTime()}refreshScriptInfo(c){let g=this.getModifiedTime(c);if(g!==c.mTime){let d=rv(c.mTime,g);c.mTime=g,this.onSourceFileChanged(c,d)}}refreshScriptInfosInDirectory(c){c=c+cg,this.filenameToScriptInfo.forEach(g=>{SJt(g)&&Ac(g.path,c)&&this.refreshScriptInfo(g)})}stopWatchingScriptInfo(c){c.fileWatcher&&(c.fileWatcher.close(),c.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(c,g,d,h,_,S){if(Up(c)||Dpe(c))return this.getOrCreateScriptInfoWorker(c,g,!1,void 0,d,!!h,_,S);let R=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c));if(R)return R}getOrCreateScriptInfoForNormalizedPath(c,g,d,h,_,S){return this.getOrCreateScriptInfoWorker(c,this.currentDirectory,g,d,h,!!_,S,!1)}getOrCreateScriptInfoWorker(c,g,d,h,_,S,R,T){pe.assert(h===void 0||d,"ScriptInfo needs to be opened by client to be able to set its user defined content");let O=Cse(c,g,this.toCanonicalFileName),V=this.filenameToScriptInfo.get(O);if(V){if(V.deferredDelete){if(pe.assert(!V.isDynamic),!d&&!(R||this.host).fileExists(c))return T?V:void 0;V.deferredDelete=void 0}}else{let M=Dpe(c);if(pe.assert(Up(c)||M||d,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} +`,trt(this.program,S=>_+=` ${S} +`))}return _}print(c,g,d){var h;this.writeLog(`Project '${this.projectName}' (${xpe[this.projectKind]})`),this.writeLog(this.filesToStringWorker(c&&this.projectService.logger.hasLevel(3),g&&this.projectService.logger.hasLevel(3),d&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(h=this.noDtsResolutionProject)==null||h.print(!1,!1,!1)}setCompilerOptions(c){var g;if(c){c.allowNonTsExtensions=!0;let d=this.compilerOptions;this.compilerOptions=c,this.setInternalCompilerOptionsForEmittingJsFiles(),(g=this.noDtsResolutionProject)==null||g.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),YJ(d,c)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(c){this.watchOptions=c}getWatchOptions(){return this.watchOptions}setTypeAcquisition(c){c&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(c))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(c,g){var d,h;let _=g?T=>Do(T.entries(),([O,V])=>({fileName:O,isSourceOfProjectReferenceRedirect:V})):T=>Do(T.keys());this.initialLoadPending||vv(this);let S={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:yse(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},R=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&c===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!R)return{info:S,projectErrors:this.getGlobalProjectErrors()};let T=this.lastReportedFileNames,O=((d=this.externalFiles)==null?void 0:d.map(Ie=>({fileName:cp(Ie),isSourceOfProjectReferenceRedirect:!1})))||tC,V=Ru(this.getFileNamesWithRedirectInfo(!!g).concat(O),Ie=>Ie.fileName,Ie=>Ie.isSourceOfProjectReferenceRedirect),M=new Map,ee=new Map,re=R?Do(R.keys()):[],ge=[];return Fh(V,(Ie,_e)=>{T.has(_e)?g&&Ie!==T.get(_e)&&ge.push({fileName:_e,isSourceOfProjectReferenceRedirect:Ie}):M.set(_e,Ie)}),Fh(T,(Ie,_e)=>{V.has(_e)||ee.set(_e,Ie)}),this.lastReportedFileNames=V,this.lastReportedVersion=this.projectProgramVersion,{info:S,changes:{added:_(M),removed:_(ee),updated:g?re.map(Ie=>({fileName:Ie,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(Ie)})):re,updatedRedirects:g?ge:void 0},projectErrors:this.getGlobalProjectErrors()}}else{let T=this.getFileNamesWithRedirectInfo(!!g),O=((h=this.externalFiles)==null?void 0:h.map(M=>({fileName:cp(M),isSourceOfProjectReferenceRedirect:!1})))||tC,V=T.concat(O);return this.lastReportedFileNames=Ru(V,M=>M.fileName,M=>M.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:S,files:g?V:V.map(M=>M.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(c){this.rootFilesMap.delete(c.path)}isSourceOfProjectReferenceRedirect(c){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(c)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,To(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(c){if(!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();for(let h of this.projectService.globalPlugins)h&&(c.plugins&&c.plugins.some(_=>_.name===h)||(this.projectService.logger.info(`Loading global plugin ${h}`),this.enablePlugin({name:h,global:!0},d)))}enablePlugin(c,g){this.projectService.requestEnablePlugin(this,c,g)}enableProxy(c,g){try{if(typeof c!="function"){this.projectService.logger.info(`Skipped loading plugin ${g.name} because it did not expose a proper factory function`);return}let d={config:g,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},h=c({typescript:jpn}),_=h.create(d);for(let S of Object.keys(this.languageService))S in _||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${S} in created LS. Patching.`),_[S]=this.languageService[S]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=_,this.plugins.push({name:g.name,module:h})}catch(d){this.projectService.logger.info(`Plugin activation failed: ${d}`)}}onPluginConfigurationChanged(c,g){this.plugins.filter(d=>d.name===c).forEach(d=>{d.module.onConfigurationChanged&&d.module.onConfigurationChanged(g)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(c,g){return this.projectService.serverMode!==0?tC:this.projectService.getPackageJsonsVisibleToFile(c,this,g)}getNearestAncestorDirectoryWithPackageJson(c){return this.projectService.getNearestAncestorDirectoryWithPackageJson(c,this)}getPackageJsonsForAutoImport(c){return this.getPackageJsonsVisibleToFile(To(this.currentDirectory,$de),c)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=Gnt(this))}clearCachedExportInfoMap(){var c;(c=this.exportMapCache)==null||c.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||M1e(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var c,g;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((c=this.projectService.host.realpath)==null?void 0:c.bind(this.projectService.host)),getCurrentDirectory:this.getCurrentDirectory.bind(this),readFile:this.projectService.host.readFile.bind(this.projectService.host),getDirectories:this.projectService.host.getDirectories.bind(this.projectService.host),trace:(g=this.projectService.host.trace)==null?void 0:g.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var c,g,d;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(vv(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}let h=this.includePackageJsonAutoImports();if(h){(c=ki)==null||c.push(ki.Phase.Session,"getPackageJsonAutoImportProvider");let _=Zg();if(this.autoImportProviderHost=pJt.create(h,this,this.getHostForAutoImportProvider())??!1,this.autoImportProviderHost)return vv(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",Zg()-_),(g=ki)==null||g.pop(),this.autoImportProviderHost.getCurrentProgram();(d=ki)==null||d.pop()}}isDefaultProjectForOpenFiles(){return!!Fh(this.projectService.openFiles,(c,g)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(g))===this)}watchNodeModulesForPackageJsonChanges(c){return this.projectService.watchPackageJsonsInNodeModules(c,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(c){return pe.assert(this.projectService.serverMode===0),this.noDtsResolutionProject??(this.noDtsResolutionProject=new AJt(this)),this.noDtsResolutionProject.rootFile!==c&&(this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[c]),this.noDtsResolutionProject.rootFile=c),this.noDtsResolutionProject}runWithTemporaryFileUpdate(c,g,d){var h,_,S,R;let T=this.program,O=pe.checkDefined((h=this.program)==null?void 0:h.getSourceFile(c),"Expected file to be part of program"),V=pe.checkDefined(O.getFullText());(_=this.getScriptInfo(c))==null||_.editContent(0,V.length,g),this.updateGraph();try{d(this.program,T,(S=this.program)==null?void 0:S.getSourceFile(c))}finally{(R=this.getScriptInfo(c))==null||R.editContent(0,g.length,V)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0}}};function GOs(s,c){var g,d;let h=s.getSourceFiles();(g=ki)==null||g.push(ki.Phase.Session,"getUnresolvedImports",{count:h.length});let _=s.getTypeChecker().getAmbientModules().map(R=>d2(R.getName())),S=al(jt(h,R=>FOs(s,R,_,c)));return(d=ki)==null||d.pop(),S}function FOs(s,c,g,d){return cr(d,c.path,()=>{let h;return s.forEachResolvedModule(({resolvedModule:_},S)=>{(!_||!fz(_.extension))&&!Xr(S)&&!g.some(R=>R===S)&&(h=Ft(h,jEe(S).packageName))},c),h||tC})}var gJt=class extends Aq{constructor(s,c,g,d,h,_){super(s.newInferredProjectName(),0,s,!1,void 0,c,!1,g,s.host,h),this._isJsInferredProject=!1,this.typeAcquisition=_,this.projectRootPath=d&&s.toCanonicalFileName(d),!d&&!s.useSingleInferredProject&&(this.canonicalCurrentDirectory=s.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(s){s!==this._isJsInferredProject&&(this._isJsInferredProject=s,this.setCompilerOptions())}setCompilerOptions(s){if(!s&&!this.getCompilationSettings())return;let c=$rt(s||this.getCompilationSettings());this._isJsInferredProject&&typeof c.maxNodeModuleJsDepth!="number"?c.maxNodeModuleJsDepth=2:this._isJsInferredProject||(c.maxNodeModuleJsDepth=void 0),c.allowJs=!0,super.setCompilerOptions(c)}addRoot(s){pe.assert(s.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(s),!this._isJsInferredProject&&s.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!s.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(s)}removeRoot(s){this.projectService.stopWatchingConfigFilesForScriptInfo(s),super.removeRoot(s),!this.isOrphan()&&this._isJsInferredProject&&s.isJavaScript()&&ue(this.getRootScriptInfos(),c=>!c.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){F(this.getRootScriptInfos(),s=>this.projectService.stopWatchingConfigFilesForScriptInfo(s)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:aJt(this),include:E,exclude:E}}},AJt=class extends Aq{constructor(s){super(s.projectService.newAuxiliaryProjectName(),4,s.projectService,!1,void 0,s.getCompilerOptionsForNoDtsResolutionProject(),!1,void 0,s.projectService.host,s.currentDirectory)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},dJt=class Oxr extends Aq{constructor(c,g,d){super(c.projectService.newAutoImportProviderProjectName(),3,c.projectService,!1,void 0,d,!1,c.getWatchOptions(),c.projectService.host,c.currentDirectory),this.hostProject=c,this.rootFileNames=g,this.useSourceOfProjectReferenceRedirect=$i(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=$i(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(c,g,d,h){var _,S;if(!c)return E;let R=g.getCurrentProgram();if(!R)return E;let T=Zg(),O,V,M=To(g.currentDirectory,$de),ee=g.getPackageJsonsForAutoImport(To(g.currentDirectory,M));for(let Ze of ee)(_=Ze.dependencies)==null||_.forEach((Pe,Ke)=>Ee(Ke)),(S=Ze.peerDependencies)==null||S.forEach((Pe,Ke)=>Ee(Ke));let re=0;if(O){let Ze=g.getSymlinkCache();for(let Pe of Do(O.keys())){if(c===2&&re>=this.maxDependencies)return g.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),E;let Ke=Ret(Pe,g.currentDirectory,h,d,R.getModuleResolutionCache());if(Ke){let Ye=Ne(Ke,R,Ze);if(Ye){re+=_e(Ye);continue}}if(!F([g.currentDirectory,g.getGlobalTypingsCacheLocation()],Ye=>{if(Ye){let Tt=Ret(`@types/${Pe}`,Ye,h,d,R.getModuleResolutionCache());if(Tt){let at=Ne(Tt,R,Ze);return re+=_e(at),!0}}})&&Ke&&h.allowJs&&h.maxNodeModuleJsDepth){let Ye=Ne(Ke,R,Ze,!0);re+=_e(Ye)}}}let ge=R.getResolvedProjectReferences(),Ie=0;return ge?.length&&g.projectService.getHostPreferences().includeCompletionsForModuleExports&&ge.forEach(Ze=>{if(Ze?.commandLine.options.outFile)Ie+=_e(Te([yN(Ze.commandLine.options.outFile,".d.ts")]));else if(Ze){let Pe=LA(()=>HU(Ze.commandLine,!g.useCaseSensitiveFileNames()));Ie+=_e(Te(Xt(Ze.commandLine.fileNames,Ke=>!MC(Ke)&&!lA(Ke,".json")&&!R.getSourceFile(Ke)?jde(Ke,Ze.commandLine,!g.useCaseSensitiveFileNames(),Pe):void 0)))}}),V?.size&&g.log(`AutoImportProviderProject: found ${V.size} root files in ${re} dependencies ${Ie} referenced projects in ${Zg()-T} ms`),V?Do(V.values()):E;function _e(Ze){return Ze?.length?(V??(V=new Set),Ze.forEach(Pe=>V.add(Pe)),1):0}function Ee(Ze){Ac(Ze,"@types/")||(O||(O=new Set)).add(Ze)}function Ne(Ze,Pe,Ke,et){var Ye;let Tt=Fet(Ze,h,d,Pe.getModuleResolutionCache(),et);if(Tt){let at=(Ye=d.realpath)==null?void 0:Ye.call(d,Ze.packageDirectory),Qe=at?g.toPath(at):void 0,Ct=Qe&&Qe!==g.toPath(Ze.packageDirectory);return Ct&&Ke.setSymlinkedDirectory(Ze.packageDirectory,{real:Cp(at),realPath:Cp(Qe)}),Te(Tt,Ct?mt=>mt.replace(Ze.packageDirectory,at):void 0)}}function Te(Ze,Pe){return Xt(Ze,Ke=>{let et=Pe?Pe(Ke):Ke;if(!R.getSourceFile(et)&&!(Pe&&R.getSourceFile(Ke)))return et})}}static create(c,g,d){if(c===0)return;let h={...g.getCompilerOptions(),...this.compilerOptionsOverrides},_=this.getRootFileNames(c,g,d,h);if(_.length)return new Oxr(g,_,h)}isEmpty(){return!zt(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let c=this.rootFileNames;c||(c=Oxr.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this,c),this.rootFileNames=c;let g=this.getCurrentProgram(),d=super.updateGraph();return g&&g!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),d}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var c;return!!((c=this.rootFileNames)!=null&&c.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||E}getLanguageService(){throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.")}onAutoImportProviderSettingsChanged(){throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.")}onPackageJsonChange(){throw new Error("package.json changes should be notified on an AutoImportProvider's host project")}getHostForAutoImportProvider(){throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.")}getProjectReferences(){return this.hostProject.getProjectReferences()}includePackageJsonAutoImports(){return 0}getSymlinkCache(){return this.hostProject.getSymlinkCache()}getModuleResolutionCache(){var c;return(c=this.hostProject.getCurrentProgram())==null?void 0:c.getModuleResolutionCache()}};dJt.maxDependencies=10,dJt.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0};var pJt=dJt,fJt=class extends Aq{constructor(s,c,g,d,h){super(s,1,g,!1,void 0,{},!1,void 0,d,Mo(s)),this.canonicalConfigFilePath=c,this.openFileWatchTriggered=new Map,this.initialLoadPending=!0,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=h}setCompilerHost(s){this.compilerHost=s}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(s){let c=cp(s),g=this.projectService.toCanonicalFileName(c),d=this.projectService.configFileExistenceInfoCache.get(g);return d||this.projectService.configFileExistenceInfoCache.set(g,d={exists:this.projectService.host.fileExists(c)}),this.projectService.ensureParsedConfigUptoDate(c,g,d,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(c,d,this),d.exists?d.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(s){this.releaseParsedConfig(this.projectService.toCanonicalFileName(cp(s)))}releaseParsedConfig(s){this.projectService.stopWatchingWildCards(s,this),this.projectService.releaseParsedConfig(s,this)}updateGraph(){if(this.deferredClose)return!1;let s=this.dirty;this.initialLoadPending=!1;let c=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let g;switch(c){case 1:this.openFileWatchTriggered.clear(),g=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();let d=pe.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,d),g=!0;break;default:g=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),c===2||g&&(!s||!this.triggerFileForConfigFileDiag||this.getCurrentProgram().structureIsReused===2)?this.triggerFileForConfigFileDiag=void 0:this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1),g}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(s){if(typeof process.versions.pnp<"u"){let c=this.getCurrentDirectory(),g=d=>{try{let h=XW(`${d}/`);if(!h)return d;let _=h.findPackageLocator(`${d}/`),{packageLocation:S}=h.getPackageInformation(_),R=To(_.name,_p(S,d,!1));return h.resolveToUnqualified(R,`${c}/`)}catch{return d}};s=s?.map(d=>({...d,path:g(d.path)}))}this.projectReferences=s,this.potentialProjectReferences=void 0}setPotentialProjectReference(s){pe.assert(this.initialLoadPending),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(s)}getRedirectFromSourceFile(s){let c=this.getCurrentProgram();return c&&c.getRedirectFromSourceFile(s)}forEachResolvedProjectReference(s){var c;return(c=this.getCurrentProgram())==null?void 0:c.forEachResolvedProjectReference(s)}enablePluginsWithOptions(s){var c;if(this.plugins.length=0,!((c=s.plugins)!=null&&c.length)&&!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){let h=Mo(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${h} to search paths`),d.unshift(h)}if(s.plugins)for(let h of s.plugins)this.enablePlugin(h,d);return this.enableGlobalPlugins(s)}getGlobalProjectErrors(){return Le(this.projectErrors,s=>!s.file)||tC}getAllProjectErrors(){return this.projectErrors||tC}setProjectErrors(s){this.projectErrors=s}close(){this.projectService.configFileExistenceInfoCache.forEach((s,c)=>this.releaseParsedConfig(c)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return Zde(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(s){this.parsedCommandLine=s,J9e(s.fileNames,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,JEe(s.raw))}},Gst=class extends Aq{constructor(s,c,g,d,h,_,S){super(s,2,c,!0,d,g,h,S,c.host,Mo(_||xp(s))),this.externalProjectName=s,this.compileOnSaveEnabled=h,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){let s=super.updateGraph();return this.projectService.sendProjectTelemetry(this),s}getExcludedFiles(){return this.excludedFiles}};function yse(s){return s.projectKind===0}function A9(s){return s.projectKind===1}function S2e(s){return s.projectKind===2}function v2e(s){return s.projectKind===3||s.projectKind===4}function B2e(s){return A9(s)&&!!s.deferredClose}var Fst=20*1024*1024,Zst=4*1024*1024,TOe="projectsUpdatedInBackground",Lst="projectLoadingStart",Vst="projectLoadingFinish",Wst="largeFileReferenced",Ost="configFileDiag",Pst="projectLanguageServiceState",Mst="projectInfo",IJt="openFileInfo",Hst="createFileWatcher",Yst="createDirectoryWatcher",Qst="closeFileWatcher",Ifn="*ensureProjectForOpenFiles*";function hfn(s){let c=new Map;for(let g of s)if(typeof g.type=="object"){let d=g.type;d.forEach(h=>{pe.assert(typeof h=="number")}),c.set(g.name,d)}return c}var ZOs=hfn(Xw),LOs=hfn(Mz),VOs=new Map(Object.entries({none:0,block:1,smart:2})),hJt={jquery:{match:/jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,types:["jquery"]},WinJS:{match:/^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,exclude:[["^",1,"/.*"]],types:["winjs"]},Kendo:{match:/^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,exclude:[["^",1,"/.*"]],types:["kendo-ui"]},"Office Nuget":{match:/^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,exclude:[["^",1,"/.*"]],types:["office"]},References:{match:/^(.*\/_references\.js)$/i,exclude:[["^",1,"$"]]}};function bse(s){return Xs(s.indentStyle)&&(s.indentStyle=VOs.get(s.indentStyle.toLowerCase()),pe.assert(s.indentStyle!==void 0)),s}function ROe(s){return ZOs.forEach((c,g)=>{let d=s[g];Xs(d)&&(s[g]=c.get(d.toLowerCase()))}),s}function w2e(s,c){let g,d;return Mz.forEach(h=>{let _=s[h.name];if(_===void 0)return;let S=LOs.get(h.name);(g||(g={}))[h.name]=S?Xs(_)?S.get(_.toLowerCase()):_:WU(h,_,c||"",d||(d=[]))}),g&&{watchOptions:g,errors:d}}function mJt(s){let c;return L9e.forEach(g=>{let d=s[g.name];d!==void 0&&((c||(c={}))[g.name]=d)}),c}function Xst(s){return Xs(s)?Jst(s):s}function Jst(s){switch(s){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function CJt(s){let{lazyConfiguredProjectsFromExternalProject:c,...g}=s;return g}var Ust={getFileName:s=>s,getScriptKind:(s,c)=>{let g;if(c){let d=fE(s);d&&zt(c,h=>h.extension===d?(g=h.scriptKind,!0):!1)}return g},hasMixedContent:(s,c)=>zt(c,g=>g.isMixedContent&&lA(s,g.extension))},Kst={getFileName:s=>s.fileName,getScriptKind:s=>Xst(s.scriptKind),hasMixedContent:s=>!!s.hasMixedContent};function mfn(s,c){for(let g of c)if(g.getProjectName()===s)return g}var NOe={isKnownTypesPackageName:As,installPackage:rl,enqueueInstallTypingsRequest:Dc,attach:Dc,onProjectClosed:Dc,globalTypingsCacheLocation:void 0},_Jt={close:Dc};function Cfn(s,c){if(!c)return;let g=c.get(s.path);if(g!==void 0)return jst(s)?g&&!Xs(g)?g.get(s.fileName):void 0:Xs(g)||!g?g:g.get(!1)}function _fn(s){return!!s.containingProjects}function jst(s){return!!s.configFileInfo}var yJt=(s=>(s[s.FindOptimized=0]="FindOptimized",s[s.Find=1]="Find",s[s.CreateReplayOptimized=2]="CreateReplayOptimized",s[s.CreateReplay=3]="CreateReplay",s[s.CreateOptimized=4]="CreateOptimized",s[s.Create=5]="Create",s[s.ReloadOptimized=6]="ReloadOptimized",s[s.Reload=7]="Reload",s))(yJt||{});function yfn(s){return s-1}function bfn(s,c,g,d,h,_,S,R,T){for(var O;;){if(c.parsedCommandLine&&(R&&!c.parsedCommandLine.options.composite||c.parsedCommandLine.options.disableSolutionSearching))return;let V=c.projectService.getConfigFileNameForFile({fileName:c.getConfigFilePath(),path:s.path,configFileInfo:!0,isForDefaultProject:!R},d<=3);if(!V)return;let M=c.projectService.findCreateOrReloadConfiguredProject(V,d,h,_,R?void 0:s.fileName,S,R,T);if(!M)return;!M.project.parsedCommandLine&&((O=c.parsedCommandLine)!=null&&O.options.composite)&&M.project.setPotentialProjectReference(c.canonicalConfigFilePath);let ee=g(M);if(ee)return ee;c=M.project}}function Efn(s,c,g,d,h,_,S,R){let T=c.options.disableReferencedProjectLoad?0:d,O;return F(c.projectReferences,V=>{var M;let ee=cp(Uz(V)),re=s.projectService.toCanonicalFileName(ee),ge=R?.get(re);if(ge!==void 0&&ge>=T)return;let Ie=s.projectService.configFileExistenceInfoCache.get(re),_e=T===0?Ie?.exists||(M=s.resolvedChildConfigs)!=null&&M.has(re)?Ie.config.parsedCommandLine:void 0:s.getParsedCommandLine(ee);if(_e&&T!==d&&T>2&&(_e=s.getParsedCommandLine(ee)),!_e)return;let Ee=s.projectService.findConfiguredProjectByProjectName(ee,_);if(!(T===2&&!Ie&&!Ee)){switch(T){case 6:Ee&&Ee.projectService.reloadConfiguredProjectOptimized(Ee,h,S);case 4:(s.resolvedChildConfigs??(s.resolvedChildConfigs=new Set)).add(re);case 2:case 0:if(Ee||T!==0){let Ne=g(Ie??s.projectService.configFileExistenceInfoCache.get(re),Ee,ee,h,s,re);if(Ne)return Ne}break;default:pe.assertNever(T)}(R??(R=new Map)).set(re,T),(O??(O=[])).push(_e)}})||F(O,V=>V.projectReferences&&Efn(s,V,g,T,h,_,S,R))}function bJt(s,c,g,d,h){let _=!1,S;switch(c){case 2:case 3:BJt(s)&&(S=s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath));break;case 4:if(S=vJt(s),S)break;case 5:_=OOs(s,g);break;case 6:if(s.projectService.reloadConfiguredProjectOptimized(s,d,h),S=vJt(s),S)break;case 7:_=s.projectService.reloadConfiguredProjectClearingSemanticCache(s,d,h);break;case 0:case 1:break;default:pe.assertNever(c)}return{project:s,sentConfigFileDiag:_,configFileExistenceInfo:S,reason:d}}function Sfn(s,c){return s.initialLoadPending?(s.potentialProjectReferences&&NB(s.potentialProjectReferences,c))??(s.resolvedChildConfigs&&NB(s.resolvedChildConfigs,c)):void 0}function WOs(s,c,g,d){return s.getCurrentProgram()?s.forEachResolvedProjectReference(c):s.initialLoadPending?Sfn(s,d):F(s.getProjectReferences(),g)}function EJt(s,c,g){let d=g&&s.projectService.configuredProjects.get(g);return d&&c(d)}function vfn(s,c){return WOs(s,g=>EJt(s,c,g.sourceFile.path),g=>EJt(s,c,s.toPath(Uz(g))),g=>EJt(s,c,g))}function zst(s,c){return`${Xs(c)?`Config: ${c} `:c?`Project: ${c.getProjectName()} `:""}WatchType: ${s}`}function SJt(s){return!s.isScriptOpen()&&s.mTime!==void 0}function vv(s){return s.invalidateResolutionsOfFailedLookupLocations(),s.dirty&&!s.updateGraph()}function Bfn(s,c,g){if(!g&&(s.invalidateResolutionsOfFailedLookupLocations(),!s.dirty))return!1;s.triggerFileForConfigFileDiag=c;let d=s.pendingUpdateLevel;if(s.updateGraph(),!s.triggerFileForConfigFileDiag&&!g)return d===2;let h=s.projectService.sendConfigFileDiagEvent(s,c,g);return s.triggerFileForConfigFileDiag=void 0,h}function OOs(s,c){if(c){if(Bfn(s,c,!1))return!0}else vv(s);return!1}function vJt(s){let c=cp(s.getConfigFilePath()),g=s.projectService.ensureParsedConfigUptoDate(c,s.canonicalConfigFilePath,s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath),s),d=g.config.parsedCommandLine;if(s.parsedCommandLine=d,s.resolvedChildConfigs=void 0,s.updateReferences(d.projectReferences),BJt(s))return g}function BJt(s){return!!s.parsedCommandLine&&(!!s.parsedCommandLine.options.composite||!!vet(s.parsedCommandLine))}function POs(s){return BJt(s)?s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath):void 0}function MOs(s){return`Creating possible configured project for ${s.fileName} to open`}function qst(s){return`User requested reload projects: ${s}`}function wJt(s){A9(s)&&(s.projectOptions=!0)}function TJt(s){let c=1;return()=>s(c++)}function RJt(){return{idToCallbacks:new Map,pathToId:new Map}}function wfn(s,c){return!!c&&!!s.eventHandler&&!!s.session}function HOs(s,c){if(!wfn(s,c))return;let g=RJt(),d=RJt(),h=RJt(),_=1;return s.session.addProtocolHandler("watchChange",re=>(O(re.arguments),{responseRequired:!1})),{watchFile:S,watchDirectory:R,getCurrentDirectory:()=>s.host.getCurrentDirectory(),useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames};function S(re,ge){return T(g,re,ge,Ie=>({eventName:Hst,data:{id:Ie,path:re}}))}function R(re,ge,Ie){return T(Ie?h:d,re,ge,_e=>({eventName:Yst,data:{id:_e,path:re,recursive:!!Ie,ignoreUpdate:re.endsWith("/node_modules")?void 0:!0}}))}function T({pathToId:re,idToCallbacks:ge},Ie,_e,Ee){let Ne=s.toPath(Ie),Te=re.get(Ne);Te||re.set(Ne,Te=_++);let Ze=ge.get(Te);return Ze||(ge.set(Te,Ze=new Set),s.eventHandler(Ee(Te))),Ze.add(_e),{close(){let Pe=ge.get(Te);Pe?.delete(_e)&&(Pe.size||(ge.delete(Te),re.delete(Ne),s.eventHandler({eventName:Qst,data:{id:Te}})))}}}function O(re){Ki(re)?re.forEach(V):V(re)}function V({id:re,created:ge,deleted:Ie,updated:_e}){M(re,ge,0),M(re,Ie,2),M(re,_e,1)}function M(re,ge,Ie){ge?.length&&(ee(g,re,ge,(_e,Ee)=>_e(Ee,Ie)),ee(d,re,ge,(_e,Ee)=>_e(Ee)),ee(h,re,ge,(_e,Ee)=>_e(Ee)))}function ee(re,ge,Ie,_e){var Ee;(Ee=re.idToCallbacks.get(ge))==null||Ee.forEach(Ne=>{Ie.forEach(Te=>_e(Ne,xp(Te)))})}}var Tfn=class Pxr{constructor(c){this.filenameToScriptInfo=new Map,this.nodeModulesWatchers=new Map,this.filenameToScriptInfoVersion=new Map,this.allJsFilesForOpenFileTelemetry=new Set,this.externalProjectToConfiguredProjectMap=new Map,this.externalProjects=[],this.inferredProjects=[],this.configuredProjects=new Map,this.newInferredProjectName=TJt(K4t),this.newAutoImportProviderProjectName=TJt(j4t),this.newAuxiliaryProjectName=TJt(z4t),this.openFiles=new Map,this.configFileForOpenFiles=new Map,this.rootOfInferredProjects=new Set,this.openFilesWithNonRootedDiskPath=new Map,this.compilerOptionsForInferredProjectsPerProjectRoot=new Map,this.watchOptionsForInferredProjectsPerProjectRoot=new Map,this.typeAcquisitionForInferredProjectsPerProjectRoot=new Map,this.projectToSizeMap=new Map,this.configFileExistenceInfoCache=new Map,this.safelist=hJt,this.legacySafelist=new Map,this.pendingProjectUpdates=new Map,this.pendingEnsureProjectForOpenFiles=!1,this.seenProjects=new Map,this.sharedExtendedConfigFileWatchers=new Map,this.extendedConfigCache=new Map,this.baseline=Dc,this.verifyDocumentRegistry=Dc,this.verifyProgram=Dc,this.onProjectCreation=Dc;var g;this.host=c.host,this.logger=c.logger,this.cancellationToken=c.cancellationToken,this.useSingleInferredProject=c.useSingleInferredProject,this.useInferredProjectPerProjectRoot=c.useInferredProjectPerProjectRoot,this.typingsInstaller=c.typingsInstaller||NOe,this.throttleWaitMilliseconds=c.throttleWaitMilliseconds,this.eventHandler=c.eventHandler,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.globalPlugins=c.globalPlugins||tC,this.pluginProbeLocations=c.pluginProbeLocations||tC,this.allowLocalPluginLoads=!!c.allowLocalPluginLoads,this.typesMapLocation=c.typesMapLocation===void 0?To(Mo(this.getExecutingFilePath()),"typesMap.json"):c.typesMapLocation,this.session=c.session,this.jsDocParsingMode=c.jsDocParsingMode,c.serverMode!==void 0?this.serverMode=c.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=Al()),this.currentDirectory=cp(this.host.getCurrentDirectory()),this.toCanonicalFileName=bd(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?Cp(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new $4t(this.host,this.logger),this.logger.info(`currentDirectory:: ${this.host.getCurrentDirectory()} useCaseSensitiveFileNames:: ${this.host.useCaseSensitiveFileNames}`),this.logger.info(`libs Location:: ${Mo(this.host.getExecutingFilePath())}`),this.logger.info(`globalTypingsCacheLocation:: ${this.typingsInstaller.globalTypingsCacheLocation}`),this.typesMapLocation?this.loadTypesMap():this.logger.info("No types map provided; using the default"),this.typingsInstaller.attach(this),this.hostConfiguration={formatCodeOptions:qVe(this.host.newLine),preferences:YB,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=Wnt(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);let d=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,h=d!==0?_=>this.logger.info(_):Dc;this.packageJsonCache=GJt(this),this.watchFactory=this.serverMode!==0?{watchFile:rpe,watchDirectory:rpe}:vtt(HOs(this,c.canUseWatchEvents)||this.host,d,h,zst),this.canUseWatchEvents=wfn(this,c.canUseWatchEvents),this.pnpWatcher=this.watchPnpFile(),(g=c.incrementalVerifier)==null||g.call(c,this)}toPath(c){return Pu(c,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(c){return Xc(c,this.host.getCurrentDirectory())}setDocument(c,g,d){let h=pe.checkDefined(this.getScriptInfoForPath(g));h.cacheSourceFile={key:c,sourceFile:d}}getDocument(c,g){let d=this.getScriptInfoForPath(g);return d&&d.cacheSourceFile&&d.cacheSourceFile.key===c?d.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(c,g){if(!this.eventHandler)return;let d={eventName:Pst,data:{project:c,languageServiceEnabled:g}};this.eventHandler(d)}loadTypesMap(){try{let c=this.host.readFile(this.typesMapLocation);if(c===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}let g=JSON.parse(c);for(let d of Object.keys(g.typesMap))g.typesMap[d].match=new RegExp(g.typesMap[d].match,"i");this.safelist=g.typesMap;for(let d in g.simpleMap)Da(g.simpleMap,d)&&this.legacySafelist.set(d,g.simpleMap[d].toLowerCase())}catch(c){this.logger.info(`Error loading types map: ${c}`),this.safelist=hJt,this.legacySafelist.clear()}}updateTypingsForProject(c){let g=this.findProject(c.projectName);if(g)switch(c.kind){case UVe:g.updateTypingFiles(c.compilerOptions,c.typeAcquisition,c.unresolvedImports,c.typings);return;case KVe:g.enqueueInstallTypingsForProject(!0);return}}watchTypingLocations(c){var g;(g=this.findProject(c.projectName))==null||g.watchTypingLocations(c.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(Ifn,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(c){if(B2e(c)||(c.markAsDirty(),v2e(c)))return;let g=c.getProjectName();this.pendingProjectUpdates.set(g,c),this.throttledOperations.schedule(g,250,()=>{this.pendingProjectUpdates.delete(g)&&vv(c)})}hasPendingProjectUpdate(c){return this.pendingProjectUpdates.has(c.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;let c={eventName:TOe,data:{openFiles:Do(this.openFiles.keys(),g=>this.getScriptInfoForPath(g).fileName)}};this.eventHandler(c)}sendLargeFileReferencedEvent(c,g){if(!this.eventHandler)return;let d={eventName:Wst,data:{file:c,fileSize:g,maxFileSize:Zst}};this.eventHandler(d)}sendProjectLoadingStartEvent(c,g){if(!this.eventHandler)return;c.sendLoadingProjectFinish=!0;let d={eventName:Lst,data:{project:c,reason:g}};this.eventHandler(d)}sendProjectLoadingFinishEvent(c){if(!this.eventHandler||!c.sendLoadingProjectFinish)return;c.sendLoadingProjectFinish=!1;let g={eventName:Vst,data:{project:c}};this.eventHandler(g)}sendPerformanceEvent(c,g){this.performanceEventHandler&&this.performanceEventHandler({kind:c,durationMs:g})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(c){this.delayUpdateProjectGraph(c),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(c,g){if(c.length){for(let d of c)g&&d.clearSourceMapperCache(),this.delayUpdateProjectGraph(d);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(c,g){pe.assert(g===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");let d=ROe(c),h=w2e(c,g),_=mJt(c);d.allowNonTsExtensions=!0;let S=g&&this.toCanonicalFileName(g);S?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(S,d),this.watchOptionsForInferredProjectsPerProjectRoot.set(S,h||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(S,_)):(this.compilerOptionsForInferredProjects=d,this.watchOptionsForInferredProjects=h,this.typeAcquisitionForInferredProjects=_);for(let R of this.inferredProjects)(S?R.projectRootPath===S:!R.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(R.projectRootPath))&&(R.setCompilerOptions(d),R.setTypeAcquisition(_),R.setWatchOptions(h?.watchOptions),R.setProjectErrors(h?.errors),R.compileOnSaveEnabled=d.compileOnSave,R.markAsDirty(),this.delayUpdateProjectGraph(R));this.delayEnsureProjectForOpenFiles()}findProject(c){if(c!==void 0)return U4t(c)?mfn(c,this.inferredProjects):this.findExternalProjectByProjectName(c)||this.findConfiguredProjectByProjectName(cp(c))}forEachProject(c){this.externalProjects.forEach(c),this.configuredProjects.forEach(c),this.inferredProjects.forEach(c)}forEachEnabledProject(c){this.forEachProject(g=>{!g.isOrphan()&&g.languageServiceEnabled&&c(g)})}getDefaultProjectForFile(c,g){return g?this.ensureDefaultProjectForFile(c):this.tryGetDefaultProjectForFile(c)}tryGetDefaultProjectForFile(c){let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g&&!g.isOrphan()?g.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c){var g;let d=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;if(d)return(g=this.pendingOpenFileProjectUpdates)!=null&&g.delete(d.path)&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(d,5),d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,this.openFiles.get(d.path))),this.tryGetDefaultProjectForFile(d)}ensureDefaultProjectForFile(c){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c)||this.doEnsureDefaultProjectForFile(c)}doEnsureDefaultProjectForFile(c){this.ensureProjectStructuresUptoDate();let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g?g.getDefaultProject():(this.logErrorForScriptInfoNotFound(Xs(c)?c:c.fileName),qF.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(c){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(c)}ensureProjectStructuresUptoDate(){let c=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();let g=d=>{c=vv(d)||c};this.externalProjects.forEach(g),this.configuredProjects.forEach(g),this.inferredProjects.forEach(g),c&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(c){let g=this.getScriptInfoForNormalizedPath(c);return g&&g.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(c){let g=this.getScriptInfoForNormalizedPath(c);return{...this.hostConfiguration.preferences,...g&&g.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(c,g){pe.assert(!c.isScriptOpen()),g===2?this.handleDeletedFile(c,!0):(c.deferredDelete&&(c.deferredDelete=void 0),c.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c))}handleSourceMapProjects(c){if(c.sourceMapFilePath)if(Xs(c.sourceMapFilePath)){let g=this.getScriptInfoForPath(c.sourceMapFilePath);this.delayUpdateSourceInfoProjects(g?.sourceInfos)}else this.delayUpdateSourceInfoProjects(c.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(c.sourceInfos),c.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(c.declarationInfoPath)}delayUpdateSourceInfoProjects(c){c&&c.forEach((g,d)=>this.delayUpdateProjectsOfScriptInfoPath(d))}delayUpdateProjectsOfScriptInfoPath(c){let g=this.getScriptInfoForPath(c);g&&this.delayUpdateProjectGraphs(g.containingProjects,!0)}handleDeletedFile(c,g){pe.assert(!c.isScriptOpen()),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c),c.detachAllProjects(),g?(c.delayReloadNonMixedContentFile(),c.deferredDelete=!0):this.deleteScriptInfo(c)}watchWildcardDirectory(c,g,d,h){let _=this.watchFactory.watchDirectory(c,R=>this.onWildCardDirectoryWatcherInvoke(c,d,h,S,R),g,this.getWatchOptionsFromProjectWatchOptions(h.parsedCommandLine.watchOptions,Mo(d)),eC.WildcardDirectory,d),S={packageJsonWatches:void 0,close(){var R;_&&(_.close(),_=void 0,(R=S.packageJsonWatches)==null||R.forEach(T=>{T.projects.delete(S),T.close()}),S.packageJsonWatches=void 0)}};return S}onWildCardDirectoryWatcherInvoke(c,g,d,h,_){let S=this.toPath(_),R=d.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(_,S);if(dp(S)==="package.json"&&!M1e(S)&&(R&&R.fileExists||!R&&this.host.fileExists(_))){let O=this.getNormalizedAbsolutePath(_);this.logger.info(`Config: ${g} Detected new package.json: ${O}`),this.packageJsonCache.addOrUpdate(O,S),this.watchPackageJsonFile(O,S,h)}R?.fileExists||this.sendSourceFileChange(S);let T=this.findConfiguredProjectByProjectName(g);A1e({watchedDirPath:this.toPath(c),fileOrDirectory:_,fileOrDirectoryPath:S,configFileName:g,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:d.parsedCommandLine.options,program:T?.getCurrentProgram()||d.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:O=>this.logger.info(O),toPath:O=>this.toPath(O),getScriptKind:T?O=>T.getScriptKind(O):void 0})||(d.updateLevel!==2&&(d.updateLevel=1),d.projects.forEach((O,V)=>{var M;if(!O)return;let ee=this.getConfiguredProjectByCanonicalConfigFilePath(V);if(!ee)return;if(T!==ee&&this.getHostPreferences().includeCompletionsForModuleExports){let ge=this.toPath(g);de((M=ee.getCurrentProgram())==null?void 0:M.getResolvedProjectReferences(),Ie=>Ie?.sourceFile.path===ge)&&ee.markAutoImportProviderAsDirty()}let re=T===ee?1:0;if(!(ee.pendingUpdateLevel>re))if(this.openFiles.has(S))if(pe.checkDefined(this.getScriptInfoForPath(S)).isAttached(ee)){let Ie=Math.max(re,ee.openFileWatchTriggered.get(S)||0);ee.openFileWatchTriggered.set(S,Ie)}else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee);else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee)}))}delayUpdateProjectsFromParsedConfigOnConfigFileChange(c,g){let d=this.configFileExistenceInfoCache.get(c);if(!d?.config)return!1;let h=!1;return d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache(),d.config.projects.forEach((_,S)=>{var R,T,O;let V=this.getConfiguredProjectByCanonicalConfigFilePath(S);if(V)if(h=!0,S===c){if(V.initialLoadPending)return;V.pendingUpdateLevel=2,V.pendingUpdateReason=g,this.delayUpdateProjectGraph(V),V.markAutoImportProviderAsDirty()}else{if(V.initialLoadPending){(T=(R=this.configFileExistenceInfoCache.get(S))==null?void 0:R.openFilesImpactedByConfigFile)==null||T.forEach(ee=>{var re;(re=this.pendingOpenFileProjectUpdates)!=null&&re.has(ee)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(ee,this.configFileForOpenFiles.get(ee))});return}let M=this.toPath(c);V.resolutionCache.removeResolutionsFromProjectReferenceRedirects(M),this.delayUpdateProjectGraph(V),this.getHostPreferences().includeCompletionsForModuleExports&&de((O=V.getCurrentProgram())==null?void 0:O.getResolvedProjectReferences(),ee=>ee?.sourceFile.path===M)&&V.markAutoImportProviderAsDirty()}}),h}onConfigFileChanged(c,g,d){let h=this.configFileExistenceInfoCache.get(g),_=this.getConfiguredProjectByCanonicalConfigFilePath(g),S=_?.deferredClose;d===2?(h.exists=!1,_&&(_.deferredClose=!0)):(h.exists=!0,S&&(_.deferredClose=void 0,_.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(g,"Change in config file detected"),this.openFiles.forEach((R,T)=>{var O,V;let M=this.configFileForOpenFiles.get(T);if(!((O=h.openFilesImpactedByConfigFile)!=null&&O.has(T)))return;this.configFileForOpenFiles.delete(T);let ee=this.getScriptInfoForPath(T);this.getConfigFileNameForFile(ee,!1)&&((V=this.pendingOpenFileProjectUpdates)!=null&&V.has(T)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(T,M))}),this.delayEnsureProjectForOpenFiles()}removeProject(c){switch(this.logger.info("`remove Project::"),c.print(!0,!0,!1),c.close(),pe.shouldAssert(1)&&this.filenameToScriptInfo.forEach(g=>pe.assert(!g.isAttached(c),"Found script Info still attached to project",()=>`${c.projectName}: ScriptInfos still attached: ${JSON.stringify(Do(lr(this.filenameToScriptInfo.values(),d=>d.isAttached(c)?{fileName:d.fileName,projects:d.containingProjects.map(h=>h.projectName),hasMixedContent:d.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(c.getProjectName()),c.projectKind){case 2:rf(this.externalProjects,c),this.projectToSizeMap.delete(c.getProjectName());break;case 1:this.configuredProjects.delete(c.canonicalConfigFilePath),this.projectToSizeMap.delete(c.canonicalConfigFilePath);break;case 0:rf(this.inferredProjects,c);break}}assignOrphanScriptInfoToInferredProject(c,g){pe.assert(c.isOrphan());let d=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(c.isDynamic?g||this.currentDirectory:Mo(Up(c.fileName)?c.fileName:Xc(c.fileName,g?this.getNormalizedAbsolutePath(g):this.currentDirectory)));if(d.addRoot(c),c.containingProjects[0]!==d&&(Xl(c.containingProjects,d),c.containingProjects.unshift(d)),d.updateGraph(),!this.useSingleInferredProject&&!d.projectRootPath)for(let h of this.inferredProjects){if(h===d||h.isOrphan())continue;let _=h.getRootScriptInfos();pe.assert(_.length===1||!!h.projectRootPath),_.length===1&&F(_[0].containingProjects,S=>S!==_[0].containingProjects[0]&&!S.isOrphan())&&h.removeFile(_[0],!0,!0)}return d}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,c)})}closeOpenFile(c,g){var d;let h=c.isDynamic?!1:this.host.fileExists(c.fileName);c.close(h),this.stopWatchingConfigFilesForScriptInfo(c);let _=this.toCanonicalFileName(c.fileName);this.openFilesWithNonRootedDiskPath.get(_)===c&&this.openFilesWithNonRootedDiskPath.delete(_);let S=!1;for(let R of c.containingProjects){if(A9(R)){c.hasMixedContent&&c.registerFileUpdate();let T=R.openFileWatchTriggered.get(c.path);T!==void 0&&(R.openFileWatchTriggered.delete(c.path),R.pendingUpdateLevelthis.onConfigFileChanged(c,g,T),2e3,this.getWatchOptionsFromProjectWatchOptions((_=(h=S?.config)==null?void 0:h.parsedCommandLine)==null?void 0:_.watchOptions,Mo(c)),eC.ConfigFile,d)),this.ensureConfigFileWatcherForProject(S,d)}ensureConfigFileWatcherForProject(c,g){let d=c.config.projects;d.set(g.canonicalConfigFilePath,d.get(g.canonicalConfigFilePath)||!1)}releaseParsedConfig(c,g){var d,h,_;let S=this.configFileExistenceInfoCache.get(c);(d=S.config)!=null&&d.projects.delete(g.canonicalConfigFilePath)&&((h=S.config)!=null&&h.projects.size||(S.config=void 0,Ett(c,this.sharedExtendedConfigFileWatchers),pe.checkDefined(S.watcher),(_=S.openFilesImpactedByConfigFile)!=null&&_.size?S.inferredProjectRoots?C1e(Mo(c))||(S.watcher.close(),S.watcher=_Jt):(S.watcher.close(),S.watcher=void 0):(S.watcher.close(),this.configFileExistenceInfoCache.delete(c))))}stopWatchingConfigFilesForScriptInfo(c){if(this.serverMode!==0)return;let g=this.rootOfInferredProjects.delete(c),d=c.isScriptOpen();d&&!g||this.forEachConfigFileLocation(c,h=>{var _,S,R;let T=this.configFileExistenceInfoCache.get(h);if(T){if(d){if(!((_=T?.openFilesImpactedByConfigFile)!=null&&_.has(c.path)))return}else if(!((S=T.openFilesImpactedByConfigFile)!=null&&S.delete(c.path)))return;g&&(T.inferredProjectRoots--,T.watcher&&!T.config&&!T.inferredProjectRoots&&(T.watcher.close(),T.watcher=void 0)),!((R=T.openFilesImpactedByConfigFile)!=null&&R.size)&&!T.config&&(pe.assert(!T.watcher),this.configFileExistenceInfoCache.delete(h))}})}startWatchingConfigFilesForInferredProjectRoot(c){this.serverMode===0&&(pe.assert(c.isScriptOpen()),this.rootOfInferredProjects.add(c),this.forEachConfigFileLocation(c,(g,d)=>{let h=this.configFileExistenceInfoCache.get(g);h?h.inferredProjectRoots=(h.inferredProjectRoots??0)+1:(h={exists:this.host.fileExists(d),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(g,h)),(h.openFilesImpactedByConfigFile??(h.openFilesImpactedByConfigFile=new Set)).add(c.path),h.watcher||(h.watcher=C1e(Mo(g))?this.watchFactory.watchFile(d,(_,S)=>this.onConfigFileChanged(d,g,S),2e3,this.hostConfiguration.watchOptions,eC.ConfigFileForInferredRoot):_Jt)}))}forEachConfigFileLocation(c,g){if(this.serverMode!==0)return;pe.assert(!_fn(c)||this.openFiles.has(c.path));let d=this.openFiles.get(c.path);if(pe.checkDefined(this.getScriptInfo(c.path)).isDynamic)return;let _=Mo(c.fileName),S=()=>zh(d,_,this.currentDirectory,!this.host.useCaseSensitiveFileNames),R=!d||!S(),T=!0,O=!0;jst(c)&&(di(c.fileName,"tsconfig.json")?T=!1:T=O=!1);do{let V=_se(_,this.currentDirectory,this.toCanonicalFileName);if(T){let ee=To(_,"tsconfig.json");if(g(To(V,"tsconfig.json"),ee))return ee}if(O){let ee=To(_,"jsconfig.json");if(g(To(V,"jsconfig.json"),ee))return ee}if(Od(V))break;let M=Mo(_);if(M===_)break;_=M,T=O=!0}while(R||S())}findDefaultConfiguredProject(c){var g;return(g=this.findDefaultConfiguredProjectWorker(c,1))==null?void 0:g.defaultProject}findDefaultConfiguredProjectWorker(c,g){return c.isScriptOpen()?this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g):void 0}getConfigFileNameForFileFromCache(c,g){if(g){let d=Cfn(c,this.pendingOpenFileProjectUpdates);if(d!==void 0)return d}return Cfn(c,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(c,g){if(!this.openFiles.has(c.path))return;let d=g||!1;if(!jst(c))this.configFileForOpenFiles.set(c.path,d);else{let h=this.configFileForOpenFiles.get(c.path);(!h||Xs(h))&&this.configFileForOpenFiles.set(c.path,h=new Map().set(!1,h)),h.set(c.fileName,d)}}getConfigFileNameForFile(c,g){let d=this.getConfigFileNameForFileFromCache(c,g);if(d!==void 0)return d||void 0;if(g)return;let h=this.forEachConfigFileLocation(c,(_,S)=>this.configFileExists(S,_,c));return this.logger.info(`getConfigFileNameForFile:: File: ${c.fileName} ProjectRootPath: ${this.openFiles.get(c.path)}:: Result: ${h}`),this.setConfigFileNameForFileInCache(c,h),h}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(kJt),this.configuredProjects.forEach(kJt),this.inferredProjects.forEach(kJt),this.logger.info("Open files: "),this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);this.logger.info(` FileName: ${d.fileName} ProjectRootPath: ${c}`),this.logger.info(` Projects: ${d.containingProjects.map(h=>h.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(c,g){let d=this.toCanonicalFileName(c),h=this.getConfiguredProjectByCanonicalConfigFilePath(d);return g?h:h?.deferredClose?void 0:h}getConfiguredProjectByCanonicalConfigFilePath(c){return this.configuredProjects.get(c)}findExternalProjectByProjectName(c){return mfn(c,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(c,g,d,h){if(g&&g.disableSizeLimit||!this.host.getFileSize)return;let _=Fst;this.projectToSizeMap.set(c,0),this.projectToSizeMap.forEach(R=>_-=R||0);let S=0;for(let R of d){let T=h.getFileName(R);if(!Z3(T)&&(S+=this.host.getFileSize(T),S>Fst||S>_)){let O=d.map(V=>h.getFileName(V)).filter(V=>!Z3(V)).map(V=>({name:V,size:this.host.getFileSize(V)})).sort((V,M)=>M.size-V.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${S}). Largest files: ${O.map(V=>`${V.name}:${V.size}`).join(", ")}`),T}}this.projectToSizeMap.set(c,S)}createExternalProject(c,g,d,h,_){let S=ROe(d),R=w2e(d,Mo(xp(c))),T=new Gst(c,this,S,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c,S,g,Kst),d.compileOnSave===void 0?!0:d.compileOnSave,void 0,R?.watchOptions);return T.setProjectErrors(R?.errors),T.excludedFiles=_,this.addFilesToNonInferredProject(T,g,Kst,h),this.externalProjects.push(T),T}sendProjectTelemetry(c){if(this.seenProjects.has(c.projectName)){wJt(c);return}if(this.seenProjects.set(c.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){wJt(c);return}let g=A9(c)?c.projectOptions:void 0;wJt(c);let d={projectId:this.host.createSHA256Hash(c.projectName),fileStats:E2e(c.getScriptInfos(),!0),compilerOptions:pPt(c.getCompilationSettings()),typeAcquisition:_(c.getTypeAcquisition()),extends:g&&g.configHasExtendsProperty,files:g&&g.configHasFilesProperty,include:g&&g.configHasIncludeProperty,exclude:g&&g.configHasExcludeProperty,compileOnSave:c.compileOnSaveEnabled,configFileName:h(),projectType:c instanceof Gst?"external":"configured",languageServiceEnabled:c.languageServiceEnabled,version:C};this.eventHandler({eventName:Mst,data:d});function h(){return A9(c)&&xst(c.getConfigFilePath())||"other"}function _({enable:S,include:R,exclude:T}){return{enable:S,include:R!==void 0&&R.length!==0,exclude:T!==void 0&&T.length!==0}}}addFilesToNonInferredProject(c,g,d,h){this.updateNonInferredProjectFiles(c,g,d),c.setTypeAcquisition(h),c.markAsDirty()}createConfiguredProject(c,g){var d;(d=ki)==null||d.instant(ki.Phase.Session,"createConfiguredProject",{configFilePath:c});let h=this.toCanonicalFileName(c),_=this.configFileExistenceInfoCache.get(h);_?_.exists=!0:this.configFileExistenceInfoCache.set(h,_={exists:!0}),_.config||(_.config={cachedDirectoryStructureHost:CVe(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});let S=new fJt(c,h,this,_.config.cachedDirectoryStructureHost,g);return pe.assert(!this.configuredProjects.has(h)),this.configuredProjects.set(h,S),this.createConfigFileWatcherForParsedConfig(c,h,S),S}loadConfiguredProject(c,g){var d,h;(d=ki)==null||d.push(ki.Phase.Session,"loadConfiguredProject",{configFilePath:c.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(c,g);let _=cp(c.getConfigFilePath()),S=this.ensureParsedConfigUptoDate(_,c.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath),c),R=S.config.parsedCommandLine;pe.assert(!!R.fileNames);let T=R.options;c.projectOptions||(c.projectOptions={configHasExtendsProperty:R.raw.extends!==void 0,configHasFilesProperty:R.raw.files!==void 0,configHasIncludeProperty:R.raw.include!==void 0,configHasExcludeProperty:R.raw.exclude!==void 0}),c.parsedCommandLine=R,c.setProjectErrors(R.options.configFile.parseDiagnostics),c.updateReferences(R.projectReferences);let O=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.canonicalConfigFilePath,T,R.fileNames,Ust);O?(c.disableLanguageService(O),this.configFileExistenceInfoCache.forEach((M,ee)=>this.stopWatchingWildCards(ee,c))):(c.setCompilerOptions(T),c.setWatchOptions(R.watchOptions),c.enableLanguageService(),this.watchWildcards(_,S,c)),c.enablePluginsWithOptions(T);let V=R.fileNames.concat(c.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(c,V,Ust,T,R.typeAcquisition,R.compileOnSave,R.watchOptions),(h=ki)==null||h.pop()}ensureParsedConfigUptoDate(c,g,d,h){var _,S,R;if(d.config&&(d.config.updateLevel===1&&this.reloadFileNamesOfParsedConfig(c,d.config),!d.config.updateLevel))return this.ensureConfigFileWatcherForProject(d,h),d;if(!d.exists&&d.config)return d.config.updateLevel=void 0,this.ensureConfigFileWatcherForProject(d,h),d;let T=((_=d.config)==null?void 0:_.cachedDirectoryStructureHost)||CVe(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),O=xde(c,Ie=>this.host.readFile(Ie)),V=WEe(c,Xs(O)?O:""),M=V.parseDiagnostics;Xs(O)||M.push(O);let ee=Mo(c),re=QEe(V,T,ee,void 0,c,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);re.errors.length&&M.push(...re.errors),this.logger.info(`Config: ${c} : ${JSON.stringify({rootNames:re.fileNames,options:re.options,watchOptions:re.watchOptions,projectReferences:re.projectReferences},void 0," ")}`);let ge=(S=d.config)==null?void 0:S.parsedCommandLine;return d.config?(d.config.parsedCommandLine=re,d.config.watchedDirectoriesStale=!0,d.config.updateLevel=void 0):d.config={parsedCommandLine:re,cachedDirectoryStructureHost:T,projects:new Map},!ge&&!ide(this.getWatchOptionsFromProjectWatchOptions(void 0,ee),this.getWatchOptionsFromProjectWatchOptions(re.watchOptions,ee))&&((R=d.watcher)==null||R.close(),d.watcher=void 0),this.createConfigFileWatcherForParsedConfig(c,g,h),_Ve(g,re.options,this.sharedExtendedConfigFileWatchers,(Ie,_e)=>this.watchFactory.watchFile(Ie,()=>{var Ee;yVe(this.extendedConfigCache,_e,Te=>this.toPath(Te));let Ne=!1;(Ee=this.sharedExtendedConfigFileWatchers.get(_e))==null||Ee.projects.forEach(Te=>{Ne=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(Te,`Change in extended config file ${Ie} detected`)||Ne}),Ne&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,eC.ExtendedConfigFile,c),Ie=>this.toPath(Ie)),d}watchWildcards(c,{exists:g,config:d},h){if(d.projects.set(h.canonicalConfigFilePath,!0),g){if(d.watchedDirectories&&!d.watchedDirectoriesStale)return;d.watchedDirectoriesStale=!1,g1e(d.watchedDirectories||(d.watchedDirectories=new Map),d.parsedCommandLine.wildcardDirectories,(_,S)=>this.watchWildcardDirectory(_,S,c,d))}else{if(d.watchedDirectoriesStale=!1,!d.watchedDirectories)return;Vy(d.watchedDirectories,Sv),d.watchedDirectories=void 0}}stopWatchingWildCards(c,g){let d=this.configFileExistenceInfoCache.get(c);!d.config||!d.config.projects.get(g.canonicalConfigFilePath)||(d.config.projects.set(g.canonicalConfigFilePath,!1),!Fh(d.config.projects,Zl)&&(d.config.watchedDirectories&&(Vy(d.config.watchedDirectories,Sv),d.config.watchedDirectories=void 0),d.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(c,g,d){var h;let _=c.getRootFilesMap(),S=new Map;for(let R of g){let T=d.getFileName(R),O=cp(T),V=kpe(O),M;if(!V&&!c.fileExists(T)){M=_se(O,this.currentDirectory,this.toCanonicalFileName);let ee=_.get(M);ee?(((h=ee.info)==null?void 0:h.path)===M&&(c.removeFile(ee.info,!1,!0),ee.info=void 0),ee.fileName=O):_.set(M,{fileName:O})}else{let ee=d.getScriptKind(R,this.hostConfiguration.extraFileExtensions),re=d.hasMixedContent(R,this.hostConfiguration.extraFileExtensions),ge=pe.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(O,c.currentDirectory,ee,re,c.directoryStructureHost,!1));M=ge.path;let Ie=_.get(M);!Ie||Ie.info!==ge?(c.addRoot(ge,O),ge.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(ge)):Ie.fileName=O}S.set(M,!0)}_.size>S.size&&_.forEach((R,T)=>{S.has(T)||(R.info?c.removeFile(R.info,c.fileExists(R.info.fileName),!0):_.delete(T))})}updateRootAndOptionsOfNonInferredProject(c,g,d,h,_,S,R){c.setCompilerOptions(h),c.setWatchOptions(R),S!==void 0&&(c.compileOnSaveEnabled=S),this.addFilesToNonInferredProject(c,g,d,_)}reloadFileNamesOfConfiguredProject(c){let g=this.reloadFileNamesOfParsedConfig(c.getConfigFilePath(),this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath).config);return c.updateErrorOnNoInputFiles(g),this.updateNonInferredProjectFiles(c,g.fileNames.concat(c.getExternalFiles(1)),Ust),c.markAsDirty(),c.updateGraph()}reloadFileNamesOfParsedConfig(c,g){if(g.updateLevel===void 0)return g.parsedCommandLine;pe.assert(g.updateLevel===1);let d=g.parsedCommandLine.options.configFile.configFileSpecs,h=Gde(d,Mo(c),g.parsedCommandLine.options,g.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return g.parsedCommandLine={...g.parsedCommandLine,fileNames:h},g.updateLevel=void 0,g.parsedCommandLine}setFileNamesOfAutoImportProviderOrAuxillaryProject(c,g){this.updateNonInferredProjectFiles(c,g,Ust)}reloadConfiguredProjectOptimized(c,g,d){d.has(c)||(d.set(c,6),c.initialLoadPending||this.setProjectForReload(c,2,g))}reloadConfiguredProjectClearingSemanticCache(c,g,d){return d.get(c)===7?!1:(d.set(c,7),this.clearSemanticCache(c),this.reloadConfiguredProject(c,qst(g)),!0)}setProjectForReload(c,g,d){g===2&&this.clearSemanticCache(c),c.pendingUpdateReason=d&&qst(d),c.pendingUpdateLevel=g}reloadConfiguredProject(c,g){c.initialLoadPending=!1,this.setProjectForReload(c,0),this.loadConfiguredProject(c,g),Bfn(c,c.triggerFileForConfigFileDiag??c.getConfigFilePath(),!0)}clearSemanticCache(c){c.originalConfiguredProjects=void 0,c.resolutionCache.clear(),c.getLanguageService(!1).cleanupSemanticCache(),c.cleanupProgram(),c.markAsDirty()}sendConfigFileDiagEvent(c,g,d){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;let h=c.getLanguageService().getCompilerOptionsDiagnostics();return h.push(...c.getAllProjectErrors()),!d&&h.length===(c.configDiagDiagnosticsReported??0)?!1:(c.configDiagDiagnosticsReported=h.length,this.eventHandler({eventName:Ost,data:{configFileName:c.getConfigFilePath(),diagnostics:h,triggerFile:g??c.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g){if(!this.useInferredProjectPerProjectRoot||c.isDynamic&&g===void 0)return;if(g){let h=this.toCanonicalFileName(g);for(let _ of this.inferredProjects)if(_.projectRootPath===h)return _;return this.createInferredProject(g,!1,g)}let d;for(let h of this.inferredProjects)h.projectRootPath&&zh(h.projectRootPath,c.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(d&&d.projectRootPath.length>h.projectRootPath.length||(d=h));return d}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject(this.currentDirectory,!0,void 0)}getOrCreateSingleInferredWithoutProjectRoot(c){pe.assert(!this.useSingleInferredProject);let g=this.toCanonicalFileName(this.getNormalizedAbsolutePath(c));for(let d of this.inferredProjects)if(!d.projectRootPath&&d.isOrphan()&&d.canonicalCurrentDirectory===g)return d;return this.createInferredProject(c,!1,void 0)}createInferredProject(c,g,d){let h=d&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(d)||this.compilerOptionsForInferredProjects,_,S;d&&(_=this.watchOptionsForInferredProjectsPerProjectRoot.get(d),S=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(d)),_===void 0&&(_=this.watchOptionsForInferredProjects),S===void 0&&(S=this.typeAcquisitionForInferredProjects),_=_||void 0;let R=new gJt(this,h,_?.watchOptions,d,c,S);return R.setProjectErrors(_?.errors),g?this.inferredProjects.unshift(R):this.inferredProjects.push(R),R}getOrCreateScriptInfoNotOpenedByClient(c,g,d,h){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(cp(c),g,void 0,void 0,d,h)}getScriptInfo(c){return this.getScriptInfoForNormalizedPath(cp(c))}getScriptInfoOrConfig(c){let g=cp(c),d=this.getScriptInfoForNormalizedPath(g);if(d)return d;let h=this.configuredProjects.get(this.toPath(c));return h&&h.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(c){let g=Do(lr(this.filenameToScriptInfo.entries(),d=>d[1].deferredDelete?void 0:d),([d,h])=>({path:d,fileName:h.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(c)}. +All files are: ${JSON.stringify(g)}`,"Err")}getSymlinkedProjects(c){let g;if(this.realpathToScriptInfos){let h=c.getRealpathIfDifferent();h&&F(this.realpathToScriptInfos.get(h),d),F(this.realpathToScriptInfos.get(c.path),d)}return g;function d(h){if(h!==c)for(let _ of h.containingProjects)_.languageServiceEnabled&&!_.isOrphan()&&!_.getCompilerOptions().preserveSymlinks&&!c.isAttached(_)&&(g?Fh(g,(S,R)=>R===h.path?!1:k(S,_))||g.add(h.path,_):(g=Al(),g.add(h.path,_)))}}watchClosedScriptInfo(c){if(pe.assert(!c.fileWatcher),!c.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!Ac(c.path,this.globalCacheLocationDirectoryPath))){let g=c.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||g===-1?c.fileWatcher=this.watchFactory.watchFile(c.fileName,(d,h)=>this.onSourceFileChanged(c,h),500,this.hostConfiguration.watchOptions,eC.ClosedScriptInfo):(c.mTime=this.getModifiedTime(c),c.fileWatcher=this.watchClosedScriptInfoInNodeModules(c.fileName.substring(0,g)))}}createNodeModulesWatcher(c,g){let d=this.watchFactory.watchDirectory(c,_=>{var S;let R=GVe(this.toPath(_));if(!R)return;let T=dp(R);if((S=h.affectedModuleSpecifierCacheProjects)!=null&&S.size&&(T==="package.json"||T==="node_modules")&&h.affectedModuleSpecifierCacheProjects.forEach(O=>{var V;(V=O.getModuleSpecifierCache())==null||V.clear()}),h.refreshScriptInfoRefCount)if(g===R)this.refreshScriptInfosInDirectory(g);else{let O=this.filenameToScriptInfo.get(R);O?SJt(O)&&this.refreshScriptInfo(O):B0(R)||this.refreshScriptInfosInDirectory(R)}},1,this.hostConfiguration.watchOptions,eC.NodeModules),h={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var _;d&&!h.refreshScriptInfoRefCount&&!((_=h.affectedModuleSpecifierCacheProjects)!=null&&_.size)&&(d.close(),d=void 0,this.nodeModulesWatchers.delete(g))}};return this.nodeModulesWatchers.set(g,h),h}watchPackageJsonsInNodeModules(c,g){var d;let h=this.toPath(c),_=this.nodeModulesWatchers.get(h)||this.createNodeModulesWatcher(c,h);return pe.assert(!((d=_.affectedModuleSpecifierCacheProjects)!=null&&d.has(g))),(_.affectedModuleSpecifierCacheProjects||(_.affectedModuleSpecifierCacheProjects=new Set)).add(g),{close:()=>{var S;(S=_.affectedModuleSpecifierCacheProjects)==null||S.delete(g),_.close()}}}watchClosedScriptInfoInNodeModules(c){let g=c+"/node_modules",d=this.toPath(g),h=this.nodeModulesWatchers.get(d)||this.createNodeModulesWatcher(g,d);return h.refreshScriptInfoRefCount++,{close:()=>{h.refreshScriptInfoRefCount--,h.close()}}}getModifiedTime(c){return(this.host.getModifiedTime(c.fileName)||xh).getTime()}refreshScriptInfo(c){let g=this.getModifiedTime(c);if(g!==c.mTime){let d=nv(c.mTime,g);c.mTime=g,this.onSourceFileChanged(c,d)}}refreshScriptInfosInDirectory(c){c=c+cg,this.filenameToScriptInfo.forEach(g=>{SJt(g)&&Ac(g.path,c)&&this.refreshScriptInfo(g)})}stopWatchingScriptInfo(c){c.fileWatcher&&(c.fileWatcher.close(),c.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(c,g,d,h,_,S){if(Up(c)||kpe(c))return this.getOrCreateScriptInfoWorker(c,g,!1,void 0,d,!!h,_,S);let R=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c));if(R)return R}getOrCreateScriptInfoForNormalizedPath(c,g,d,h,_,S){return this.getOrCreateScriptInfoWorker(c,this.currentDirectory,g,d,h,!!_,S,!1)}getOrCreateScriptInfoWorker(c,g,d,h,_,S,R,T){pe.assert(h===void 0||d,"ScriptInfo needs to be opened by client to be able to set its user defined content");let O=_se(c,g,this.toCanonicalFileName),V=this.filenameToScriptInfo.get(O);if(V){if(V.deferredDelete){if(pe.assert(!V.isDynamic),!d&&!(R||this.host).fileExists(c))return T?V:void 0;V.deferredDelete=void 0}}else{let M=kpe(c);if(pe.assert(Up(c)||M||d,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} Script info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`),pe.assert(!Up(c)||this.currentDirectory===g||!this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(c)),"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} Open script files with non rooted disk path opened with current directory context cannot have same canonical names`),pe.assert(!M||this.currentDirectory===g||this.useInferredProjectPerProjectRoot,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} -Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`),!d&&!M&&!(R||this.host).fileExists(c))return;V=new iJt(this.host,c,_,S,O,this.filenameToScriptInfoVersion.get(O)),this.filenameToScriptInfo.set(V.path,V),this.filenameToScriptInfoVersion.delete(V.path),d?!Up(c)&&(!M||this.currentDirectory!==g)&&this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(c),V):this.watchClosedScriptInfo(V)}return d&&(this.stopWatchingScriptInfo(V),V.open(h),S&&V.registerFileUpdate()),V}getScriptInfoForNormalizedPath(c){return!Up(c)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c))||this.getScriptInfoForPath(Cse(c,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(c){let g=this.filenameToScriptInfo.get(c);return!g||!g.deferredDelete?g:void 0}getDocumentPositionMapper(c,g,d){let h=this.getOrCreateScriptInfoNotOpenedByClient(g,c.currentDirectory,this.host,!1);if(!h){d&&c.addGeneratedFileWatch(g,d);return}if(h.getSnapshot(),Xs(h.sourceMapFilePath)){let O=this.getScriptInfoForPath(h.sourceMapFilePath);if(O&&(O.getSnapshot(),O.documentPositionMapper!==void 0))return O.sourceInfos=this.addSourceInfoToSourceMap(d,c,O.sourceInfos),O.documentPositionMapper?O.documentPositionMapper:void 0;h.sourceMapFilePath=void 0}else if(h.sourceMapFilePath){h.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(d,c,h.sourceMapFilePath.sourceInfos);return}else if(h.sourceMapFilePath!==void 0)return;let _,S=(O,V)=>{let M=this.getOrCreateScriptInfoNotOpenedByClient(O,c.currentDirectory,this.host,!0);if(_=M||V,!M||M.deferredDelete)return;let ee=M.getSnapshot();return M.documentPositionMapper!==void 0?M.documentPositionMapper:zz(ee)},R=c.projectName,T=Qnt({getCanonicalFileName:this.toCanonicalFileName,log:O=>this.logger.info(O),getSourceFileLike:O=>this.getSourceFileLike(O,R,h)},h.fileName,h.textStorage.getLineInfo(),S);return S=void 0,_?Xs(_)?h.sourceMapFilePath={watcher:this.addMissingSourceMapFile(c.currentDirectory===this.currentDirectory?_:Xc(_,c.currentDirectory),h.path),sourceInfos:this.addSourceInfoToSourceMap(d,c)}:(h.sourceMapFilePath=_.path,_.declarationInfoPath=h.path,_.deferredDelete||(_.documentPositionMapper=T||!1),_.sourceInfos=this.addSourceInfoToSourceMap(d,c,_.sourceInfos)):h.sourceMapFilePath=!1,T}addSourceInfoToSourceMap(c,g,d){if(c){let h=this.getOrCreateScriptInfoNotOpenedByClient(c,g.currentDirectory,g.directoryStructureHost,!1);(d||(d=new Set)).add(h.path)}return d}addMissingSourceMapFile(c,g){return this.watchFactory.watchFile(c,()=>{let h=this.getScriptInfoForPath(g);h&&h.sourceMapFilePath&&!Xs(h.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(h.containingProjects,!0),this.delayUpdateSourceInfoProjects(h.sourceMapFilePath.sourceInfos),h.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,eC.MissingSourceMapFile)}getSourceFileLike(c,g,d){let h=g.projectName?g:this.findProject(g);if(h){let S=h.toPath(c),R=h.getSourceFile(S);if(R&&R.resolvedPath===S)return R}let _=this.getOrCreateScriptInfoNotOpenedByClient(c,(h||this).currentDirectory,h?h.directoryStructureHost:this.host,!1);if(_){if(d&&Xs(d.sourceMapFilePath)&&_!==d){let S=this.getScriptInfoForPath(d.sourceMapFilePath);S&&(S.sourceInfos??(S.sourceInfos=new Set)).add(_.path)}return _.cacheSourceFile?_.cacheSourceFile.sourceFile:(_.sourceFileLike||(_.sourceFileLike={get text(){return pe.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:S=>{let R=_.positionToLineOffset(S);return{line:R.line-1,character:R.offset-1}},getPositionOfLineAndCharacter:(S,R,T)=>_.lineOffsetToPosition(S+1,R+1,T)}),_.sourceFileLike)}}setPerformanceEventHandler(c){this.performanceEventHandler=c}setHostConfiguration(c){var g,d;if(c.file){let h=this.getScriptInfoForNormalizedPath(cp(c.file));h&&(h.setOptions(yse(c.formatOptions),c.preferences),this.logger.info(`Host configuration update for file ${c.file}`))}else{if(c.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=c.hostInfo,this.logger.info(`Host information ${c.hostInfo}`)),c.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...yse(c.formatOptions)},this.logger.info("Format host information updated")),c.preferences){let{lazyConfiguredProjectsFromExternalProject:h,includePackageJsonAutoImports:_,includeCompletionsForModuleExports:S}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...c.preferences},h&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(R=>R.forEach(T=>{!T.deferredClose&&!T.isClosed()&&T.pendingUpdateLevel===2&&!this.hasPendingProjectUpdate(T)&&T.updateGraph()})),(_!==c.preferences.includePackageJsonAutoImports||!!S!=!!c.preferences.includeCompletionsForModuleExports)&&this.forEachProject(R=>{R.onAutoImportProviderSettingsChanged()})}if(c.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=c.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),c.watchOptions){let h=(g=w2e(c.watchOptions))==null?void 0:g.watchOptions,_=Q9e(h,this.currentDirectory);this.hostConfiguration.watchOptions=_,this.hostConfiguration.beforeSubstitution=_===h?void 0:h,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`),(d=this.pnpWatcher)==null||d.close(),this.watchPnpFile()}}}getWatchOptions(c){return this.getWatchOptionsFromProjectWatchOptions(c.getWatchOptions(),c.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(c,g){let d=this.hostConfiguration.beforeSubstitution?Q9e(this.hostConfiguration.beforeSubstitution,g):this.hostConfiguration.watchOptions;return c&&d?{...d,...c}:c||d}closeLog(){this.logger.close()}sendSourceFileChange(c){this.filenameToScriptInfo.forEach(g=>{if(this.openFiles.has(g.path)||!g.fileWatcher)return;let d=LA(()=>this.host.fileExists(g.fileName)?g.deferredDelete?0:1:2);if(c){if(SJt(g)||!g.path.startsWith(c)||d()===2&&g.deferredDelete)return;this.logger.info(`Invoking sourceFileChange on ${g.fileName}:: ${d()}`)}this.onSourceFileChanged(g,d())})}reloadProjects(){this.logger.info("reload projects."),this.sendSourceFileChange(void 0),this.pendingProjectUpdates.forEach((d,h)=>{this.throttledOperations.cancel(h),this.pendingProjectUpdates.delete(h)}),this.throttledOperations.cancel(ufn),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(d=>{d.config&&(d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache())}),this.configFileForOpenFiles.clear(),this.externalProjects.forEach(d=>{this.clearSemanticCache(d),d.updateGraph()});let c=new Map,g=new Set;this.externalProjectToConfiguredProjectMap.forEach((d,h)=>{let _=`Reloading configured project in external project: ${h}`;d.forEach(S=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?this.reloadConfiguredProjectOptimized(S,_,c):this.reloadConfiguredProjectClearingSemanticCache(S,_,c)})}),this.openFiles.forEach((d,h)=>{let _=this.getScriptInfoForPath(h);de(_.containingProjects,S2e)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(_,7,c,g)}),g.forEach(d=>c.set(d,7)),this.inferredProjects.forEach(d=>this.clearSemanticCache(d)),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(c,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(c){pe.assert(c.containingProjects.length>0);let g=c.containingProjects[0];!g.isOrphan()&&_se(g)&&g.isRoot(c)&&F(c.containingProjects,d=>d!==g&&!d.isOrphan())&&g.removeFile(c,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();let c=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,c?.forEach((g,d)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(d),5)),this.openFiles.forEach((g,d)=>{let h=this.getScriptInfoForPath(d);h.isOrphan()?this.assignOrphanScriptInfoToInferredProject(h,g):this.removeRootOfInferredProjectIfNowPartOfOtherProject(h)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(Sv),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(c,g,d,h){return this.openClientFileWithNormalizedPath(cp(c),g,d,!1,h?cp(h):void 0)}getOriginalLocationEnsuringConfiguredProject(c,g){let d=c.isSourceOfProjectReferenceRedirect(g.fileName),h=d?g:c.getSourceMapper().tryGetSourcePosition(g);if(!h)return;let{fileName:_}=h,S=this.getScriptInfo(_);if(!S&&!this.host.fileExists(_))return;let R={fileName:cp(_),path:this.toPath(_)},T=this.getConfigFileNameForFile(R,!1);if(!T)return;let O=this.findConfiguredProjectByProjectName(T);if(!O){if(c.getCompilerOptions().disableReferencedProjectLoad)return d?g:S?.containingProjects.length?h:g;O=this.createConfiguredProject(T,`Creating project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`)}let V=this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(R,5,bJt(O,4),re=>`Creating project referenced in solution ${re.projectName} to find possible configured project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`);if(!V.defaultProject)return;if(V.defaultProject===c)return h;ee(V.defaultProject);let M=this.getScriptInfo(_);if(!M||!M.containingProjects.length)return;return M.containingProjects.forEach(re=>{g9(re)&&ee(re)}),h;function ee(re){(c.originalConfiguredProjects??(c.originalConfiguredProjects=new Set)).add(re.canonicalConfigFilePath)}}fileExists(c){return!!this.getScriptInfoForNormalizedPath(c)||this.host.fileExists(c)}findExternalProjectContainingOpenScriptInfo(c){return de(this.externalProjects,g=>(Sv(g),g.containsScriptInfo(c)))}getOrCreateOpenScriptInfo(c,g,d,h,_){let S=this.getOrCreateScriptInfoWorker(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,!0,g,d,!!h,void 0,!0);return this.openFiles.set(S.path,_),S}assignProjectToOpenedScriptInfo(c){let g,d,h=this.findExternalProjectContainingOpenScriptInfo(c),_,S;if(!h&&this.serverMode===0){let R=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,5);R&&(_=R.seenProjects,S=R.sentConfigDiag,R.defaultProject&&(g=R.defaultProject.getConfigFilePath(),d=R.defaultProject.getAllProjectErrors()))}return c.containingProjects.forEach(Sv),c.isOrphan()&&(_?.forEach((R,T)=>{R!==4&&!S.has(T)&&this.sendConfigFileDiagEvent(T,c.fileName,!0)}),pe.assert(this.openFiles.has(c.path)),this.assignOrphanScriptInfoToInferredProject(c,this.openFiles.get(c.path))),pe.assert(!c.isOrphan()),{configFileName:g,configFileErrors:d,retainProjects:_}}findCreateOrReloadConfiguredProject(c,g,d,h,_,S,R,T,O){let V=O??this.findConfiguredProjectByProjectName(c,h),M=!1,ee;switch(g){case 0:case 1:case 3:if(!V)return;break;case 2:if(!V)return;ee=OOs(V);break;case 4:case 5:V??(V=this.createConfiguredProject(c,d)),R||({sentConfigFileDiag:M,configFileExistenceInfo:ee}=bJt(V,g,_));break;case 6:if(V??(V=this.createConfiguredProject(c,$st(d))),V.projectService.reloadConfiguredProjectOptimized(V,d,S),ee=vJt(V),ee)break;case 7:V??(V=this.createConfiguredProject(c,$st(d))),M=!T&&this.reloadConfiguredProjectClearingSemanticCache(V,d,S),T&&!T.has(V)&&!S.has(V)&&(this.setProjectForReload(V,2,d),T.add(V));break;default:pe.assertNever(g)}return{project:V,sentConfigFileDiag:M,configFileExistenceInfo:ee,reason:d}}tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,d,h){let _=this.getConfigFileNameForFile(c,g<=3);if(!_)return;let S=ffn(g),R=this.findCreateOrReloadConfiguredProject(_,S,POs(c),d,c.fileName,h);return R&&this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,R,T=>`Creating project referenced in solution ${T.projectName} to find possible configured project for ${c.fileName} to open`,d,h)}isMatchedByConfig(c,g,d){if(g.fileNames.some(T=>this.toPath(T)===d.path))return!0;if(Ube(d.fileName,g.options,this.hostConfiguration.extraFileExtensions))return!1;let{validatedFilesSpec:h,validatedIncludeSpecs:_,validatedExcludeSpecs:S}=g.options.configFile.configFileSpecs,R=cp(Xc(Mo(c),this.currentDirectory));return h?.some(T=>this.toPath(Xc(T,R))===d.path)?!0:!_?.length||K9e(d.fileName,S,this.host.useCaseSensitiveFileNames,this.currentDirectory,R)?!1:_?.some(T=>{let O=Qbe(T,R,"files");return!!O&&rk(`(${O})$`,this.host.useCaseSensitiveFileNames).test(d.fileName)})}tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,d,h,_,S){let R=pfn(c),T=ffn(g),O=new Map,V,M=new Set,ee,re,ge,Ie;return _e(d),{defaultProject:ee??re,tsconfigProject:ge??Ie,sentConfigDiag:M,seenProjects:O,seenConfigs:V};function _e(Ke){return Te(Ke,Ke.project)??Ze(Ke.project)??Pe(Ke.project)}function Ee(Ke,et,Ye,Tt,at,Qe){if(et){if(O.has(et))return;O.set(et,T)}else{if(V?.has(Qe))return;(V??(V=new Set)).add(Qe)}if(!at.projectService.isMatchedByConfig(Ye,Ke.config.parsedCommandLine,c)){at.languageServiceEnabled&&at.projectService.watchWildcards(Ye,Ke,at);return}let Ct=et?bJt(et,g,c.fileName,Tt,S):at.projectService.findCreateOrReloadConfiguredProject(Ye,g,Tt,_,c.fileName,S);if(!Ct){pe.assert(g===3);return}return O.set(Ct.project,T),Ct.sentConfigFileDiag&&M.add(Ct.project),Ne(Ct.project,at)}function Ne(Ke,et){if(O.get(Ke)===g)return;O.set(Ke,g);let Ye=R?c:Ke.projectService.getScriptInfo(c.fileName),Tt=Ye&&Ke.containsScriptInfo(Ye);if(Tt&&!Ke.isSourceOfProjectReferenceRedirect(Ye.path))return ge=et,ee=Ke;!re&&R&&Tt&&(Ie=et,re=Ke)}function Te(Ke,et){return Ke.sentConfigFileDiag&&M.add(Ke.project),Ke.configFileExistenceInfo?Ee(Ke.configFileExistenceInfo,Ke.project,cp(Ke.project.getConfigFilePath()),Ke.reason,Ke.project,Ke.project.canonicalConfigFilePath):Ne(Ke.project,et)}function Ze(Ke){return Ke.parsedCommandLine&&hfn(Ke,Ke.parsedCommandLine,Ee,T,h(Ke),_,S)}function Pe(Ke){return R?Ifn(c,Ke,_e,T,`Creating possible configured project for ${c.fileName} to open`,_,S,!1):void 0}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,g,d,h){let _=g===1,S=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,_,d);if(!S)return;let{defaultProject:R,tsconfigProject:T,seenProjects:O}=S;return R&&Ifn(c,T,V=>{O.set(V.project,g)},g,`Creating project possibly referencing default composite project ${R.getProjectName()} of open file ${c.fileName}`,_,d,!0,h),S}loadAncestorProjectTree(c){c??(c=new Set(lr(this.configuredProjects.entries(),([h,_])=>_.initialLoadPending?void 0:h)));let g=new Set,d=Do(this.configuredProjects.values());for(let h of d)mfn(h,_=>c.has(_))&&Sv(h),this.ensureProjectChildren(h,c,g)}ensureProjectChildren(c,g,d){var h;if(!Ar(d,c.canonicalConfigFilePath)||c.getCompilerOptions().disableReferencedProjectLoad)return;let _=(h=c.getCurrentProgram())==null?void 0:h.getResolvedProjectReferences();if(_)for(let S of _){if(!S)continue;let R=fie(S.references,V=>g.has(V.sourceFile.path)?V:void 0);if(!R)continue;let T=cp(S.sourceFile.fileName),O=this.findConfiguredProjectByProjectName(T)??this.createConfiguredProject(T,`Creating project referenced by : ${c.projectName} as it references project ${R.sourceFile.fileName}`);Sv(O),this.ensureProjectChildren(O,g,d)}}cleanupConfiguredProjects(c,g,d){this.getOrphanConfiguredProjects(c,d,g).forEach(h=>this.removeProject(h))}cleanupProjectsAndScriptInfos(c,g,d){this.cleanupConfiguredProjects(c,d,g);for(let h of this.inferredProjects.slice())h.isOrphan()&&this.removeProject(h);this.removeOrphanScriptInfos()}tryInvokeWildCardDirectories(c){this.configFileExistenceInfoCache.forEach((g,d)=>{var h,_;!((h=g.config)!=null&&h.parsedCommandLine)||k(g.config.parsedCommandLine.fileNames,c.fileName,this.host.useCaseSensitiveFileNames?YA:Yp)||(_=g.config.watchedDirectories)==null||_.forEach((S,R)=>{zh(R,c.fileName,!this.host.useCaseSensitiveFileNames)&&(this.logger.info(`Invoking ${d}:: wildcard for open scriptInfo:: ${c.fileName}`),this.onWildCardDirectoryWatcherInvoke(R,d,g.config,S.watcher,c.fileName))})})}openClientFileWithNormalizedPath(c,g,d,h,_){let S=this.getScriptInfoForPath(Cse(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,this.toCanonicalFileName)),R=this.getOrCreateOpenScriptInfo(c,g,d,h,_);!S&&R&&!R.isDynamic&&this.tryInvokeWildCardDirectories(R);let{retainProjects:T,...O}=this.assignProjectToOpenedScriptInfo(R);return this.cleanupProjectsAndScriptInfos(T,new Set([R.path]),void 0),this.telemetryOnOpenFile(R),this.printProjects(),O}getOrphanConfiguredProjects(c,g,d){let h=new Set(this.configuredProjects.values()),_=O=>{O.originalConfiguredProjects&&(g9(O)||!O.isOrphan())&&O.originalConfiguredProjects.forEach((V,M)=>{let ee=this.getConfiguredProjectByCanonicalConfigFilePath(M);return ee&&T(ee)})};if(c?.forEach((O,V)=>T(V)),!h.size||(this.inferredProjects.forEach(_),this.externalProjects.forEach(_),this.externalProjectToConfiguredProjectMap.forEach((O,V)=>{d?.has(V)||O.forEach(T)}),!h.size)||(Fh(this.openFiles,(O,V)=>{if(g?.has(V))return;let M=this.getScriptInfoForPath(V);if(de(M.containingProjects,S2e))return;let ee=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(M,1);if(ee?.defaultProject&&(ee?.seenProjects.forEach((re,ge)=>T(ge)),!h.size))return h}),!h.size))return h;return Fh(this.configuredProjects,O=>{if(h.has(O)&&(R(O)||Cfn(O,S))&&(T(O),!h.size))return h}),h;function S(O){return!h.has(O)||R(O)}function R(O){var V,M;return(O.deferredClose||O.projectService.hasPendingProjectUpdate(O))&&!!((M=(V=O.projectService.configFileExistenceInfoCache.get(O.canonicalConfigFilePath))==null?void 0:V.openFilesImpactedByConfigFile)!=null&&M.size)}function T(O){h.delete(O)&&(_(O),Cfn(O,T))}}removeOrphanScriptInfos(){let c=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(g=>{if(!g.deferredDelete){if(!g.isScriptOpen()&&g.isOrphan()&&!oJt(g)&&!sJt(g)){if(!g.sourceMapFilePath)return;let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;if(!d||!RB(d,h=>{let _=this.getScriptInfoForPath(h);return!!_&&(_.isScriptOpen()||!_.isOrphan())}))return}if(c.delete(g.path),g.sourceMapFilePath){let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);h?.deferredDelete?g.sourceMapFilePath={watcher:this.addMissingSourceMapFile(h.fileName,g.path),sourceInfos:h.sourceInfos}:c.delete(g.sourceMapFilePath),d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;d&&d.forEach((h,_)=>c.delete(_))}}}),c.forEach(g=>this.deleteScriptInfo(g))}telemetryOnOpenFile(c){if(this.serverMode!==0||!this.eventHandler||!c.isJavaScript()||!Vy(this.allJsFilesForOpenFileTelemetry,c.path))return;let g=this.ensureDefaultProjectForFile(c);if(!g.languageServiceEnabled)return;let d=g.getSourceFile(c.path),h=!!d&&!!d.checkJsDirective;this.eventHandler({eventName:IJt,data:{info:{checkJs:h}}})}closeClientFile(c,g){let d=this.getScriptInfoForNormalizedPath(cp(c)),h=d?this.closeOpenFile(d,g):!1;return g||this.printProjects(),h}collectChanges(c,g,d,h){for(let _ of g){let S=de(c,R=>R.projectName===_.getProjectName());h.push(_.getChangesSinceVersion(S&&S.version,d))}}synchronizeProjectList(c,g){let d=[];return this.collectChanges(c,this.externalProjects,g,d),this.collectChanges(c,lr(this.configuredProjects.values(),h=>h.deferredClose?void 0:h),g,d),this.collectChanges(c,this.inferredProjects,g,d),d}applyChangesInOpenFiles(c,g,d){let h,_,S=!1;if(c)for(let T of c){(h??(h=[])).push(this.getScriptInfoForPath(Cse(cp(T.fileName),T.projectRootPath?this.getNormalizedAbsolutePath(T.projectRootPath):this.currentDirectory,this.toCanonicalFileName)));let O=this.getOrCreateOpenScriptInfo(cp(T.fileName),T.content,Jst(T.scriptKind),T.hasMixedContent,T.projectRootPath?cp(T.projectRootPath):void 0);(_||(_=[])).push(O)}if(g)for(let T of g){let O=this.getScriptInfo(T.fileName);pe.assert(!!O),this.applyChangesToFile(O,T.changes)}if(d)for(let T of d)S=this.closeClientFile(T,!0)||S;let R;F(h,(T,O)=>!T&&_[O]&&!_[O].isDynamic?this.tryInvokeWildCardDirectories(_[O]):void 0),_?.forEach(T=>{var O;return(O=this.assignProjectToOpenedScriptInfo(T).retainProjects)==null?void 0:O.forEach((V,M)=>(R??(R=new Map)).set(M,V))}),S&&this.assignOrphanScriptInfosToInferredProject(),_?(this.cleanupProjectsAndScriptInfos(R,new Set(_.map(T=>T.path)),void 0),_.forEach(T=>this.telemetryOnOpenFile(T)),this.printProjects()):B(d)&&this.printProjects()}applyChangesToFile(c,g){for(let d of g)c.editContent(d.span.start,d.span.start+d.span.length,d.newText)}closeExternalProject(c,g){let d=cp(c);if(this.externalProjectToConfiguredProjectMap.get(d))this.externalProjectToConfiguredProjectMap.delete(d);else{let _=this.findExternalProjectByProjectName(c);_&&this.removeProject(_)}g&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(c){let g=new Set(this.externalProjects.map(d=>d.getProjectName()));this.externalProjectToConfiguredProjectMap.forEach((d,h)=>g.add(h));for(let d of c)this.openExternalProject(d,!1),g.delete(d.projectFileName);g.forEach(d=>this.closeExternalProject(d,!1)),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(c){return c.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=hJt}applySafeList(c){let g=c.typeAcquisition;pe.assert(!!g,"proj.typeAcquisition should be set by now");let d=this.applySafeListWorker(c,c.rootFiles,g);return d?.excludedFiles??[]}applySafeListWorker(c,g,d){if(d.enable===!1||d.disableFilenameBasedTypeAcquisition)return;let h=d.include||(d.include=[]),_=[],S=g.map(M=>xp(M.fileName));for(let M of Object.keys(this.safelist)){let ee=this.safelist[M];for(let re of S)if(ee.match.test(re)){if(this.logger.info(`Excluding files based on rule ${M} matching file '${re}'`),ee.types)for(let ge of ee.types)h.includes(ge)||h.push(ge);if(ee.exclude)for(let ge of ee.exclude){let Ie=re.replace(ee.match,(..._e)=>ge.map(Ee=>typeof Ee=="number"?Xs(_e[Ee])?Vxr.escapeFilenameForRegex(_e[Ee]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${M} - not enough groups`),"\\*"):Ee).join(""));_.includes(Ie)||_.push(Ie)}else{let ge=Vxr.escapeFilenameForRegex(re);_.includes(ge)||_.push(ge)}}}let R=_.map(M=>new RegExp(M,"i")),T,O;for(let M=0;Mee.test(S[M])))V(M);else{if(d.enable){let ee=dp(Qm(S[M]));if(cA(ee,"js")){let re=a0(ee),ge=us(re),Ie=this.legacySafelist.get(ge);if(Ie!==void 0){this.logger.info(`Excluded '${S[M]}' because it matched ${ge} from the legacy safelist`),V(M),h.includes(Ie)||h.push(Ie);continue}}}/^.+[.-]min\.js$/.test(S[M])?V(M):T?.push(g[M])}return O?{rootFiles:T,excludedFiles:O}:void 0;function V(M){O||(pe.assert(!T),T=g.slice(0,M),O=[]),O.push(S[M])}}openExternalProject(c,g){let d=this.findExternalProjectByProjectName(c.projectFileName),h,_=[];for(let S of c.rootFiles){let R=cp(S.fileName);if(Gst(R)){if(this.serverMode===0&&this.host.fileExists(R)){let T=this.findConfiguredProjectByProjectName(R);T||(T=this.createConfiguredProject(R,`Creating configured project in external project: ${c.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||T.updateGraph()),(h??(h=new Set)).add(T),pe.assert(!T.isClosed())}}else _.push(S)}if(h)this.externalProjectToConfiguredProjectMap.set(c.projectFileName,h),d&&this.removeProject(d);else{this.externalProjectToConfiguredProjectMap.delete(c.projectFileName);let S=c.typeAcquisition||{};S.include=S.include||[],S.exclude=S.exclude||[],S.enable===void 0&&(S.enable=lJt(_.map(O=>O.fileName)));let R=this.applySafeListWorker(c,_,S),T=R?.excludedFiles??[];if(_=R?.rootFiles??_,d){d.excludedFiles=T;let O=ROe(c.options),V=w2e(c.options,d.getCurrentDirectory()),M=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.projectFileName,O,_,jst);M?d.disableLanguageService(M):d.enableLanguageService(),d.setProjectErrors(V?.errors),this.updateRootAndOptionsOfNonInferredProject(d,_,jst,O,S,c.options.compileOnSave,V?.watchOptions),d.updateGraph()}else this.createExternalProject(c.projectFileName,_,c.options,S,T).updateGraph()}g&&(this.cleanupConfiguredProjects(h,new Set([c.projectFileName])),this.printProjects())}hasDeferredExtension(){for(let c of this.hostConfiguration.extraFileExtensions)if(c.scriptKind===7)return!0;return!1}requestEnablePlugin(c,g,d){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${g.name} from candidate paths: ${d.join(",")}`),!g.name||Xr(g.name)||/[\\/]\.\.?(?:$|[\\/])/.test(g.name)){this.logger.info(`Skipped loading plugin ${g.name||JSON.stringify(g)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){let h=gq.importServicePluginAsync(g,d,this.host,S=>this.logger.info(S));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let _=this.pendingPluginEnablements.get(c);_||this.pendingPluginEnablements.set(c,_=[]),_.push(h);return}this.endEnablePlugin(c,gq.importServicePluginSync(g,d,this.host,h=>this.logger.info(h)))}endEnablePlugin(c,{pluginConfigEntry:g,resolvedModule:d,errorLogs:h}){var _;if(d){let S=(_=this.currentPluginConfigOverrides)==null?void 0:_.get(g.name);if(S){let R=g.name;g=S,g.name=R}c.enableProxy(d,g)}else F(h,S=>this.logger.info(S)),this.logger.info(`Couldn't find ${g.name}`)}hasNewPluginEnablementRequests(){return!!this.pendingPluginEnablements}hasPendingPluginEnablements(){return!!this.currentPluginEnablementPromise}async waitForPendingPlugins(){for(;this.currentPluginEnablementPromise;)await this.currentPluginEnablementPromise}enableRequestedPlugins(){this.pendingPluginEnablements&&this.enableRequestedPluginsAsync()}async enableRequestedPluginsAsync(){if(this.currentPluginEnablementPromise&&await this.waitForPendingPlugins(),!this.pendingPluginEnablements)return;let c=Do(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(c),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(c){pe.assert(this.currentPluginEnablementPromise===void 0);let g=!1;await Promise.all(lt(c,async([d,h])=>{let _=await Promise.all(h);if(d.isClosed()||B2e(d)){this.logger.info(`Cancelling plugin enabling for ${d.getProjectName()} as it is ${d.isClosed()?"closed":"deferred close"}`);return}g=!0;for(let S of _)this.endEnablePlugin(d,S);this.delayUpdateProjectGraph(d)})),this.currentPluginEnablementPromise=void 0,g&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(c){this.forEachEnabledProject(g=>g.onPluginConfigurationChanged(c.pluginName,c.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(c.pluginName,c.configuration)}getPackageJsonsVisibleToFile(c,g,d){let h=this.packageJsonCache,_=d&&this.toPath(d),S=[],R=T=>{switch(h.directoryHasPackageJson(T)){case 3:return h.searchDirectoryAndAncestors(T,g),R(T);case-1:let O=Ro(T,"package.json");this.watchPackageJsonFile(O,this.toPath(O),g);let V=h.getInDirectory(T);V&&S.push(V)}if(_&&_===T)return!0};return NN(g,Mo(c),R),S}getNearestAncestorDirectoryWithPackageJson(c,g){return NN(g,c,d=>{switch(this.packageJsonCache.directoryHasPackageJson(d)){case-1:return d;case 0:return;case 3:return this.host.fileExists(Ro(d,"package.json"))?d:void 0}})}watchPnpFile(){let c=Uen(__filename);if(c)return this.watchFactory.watchFile(c,()=>{this.forEachProject(g=>{for(let d of g.getScriptInfos())g.resolutionCache.invalidateResolutionOfFile(d.path);g.markAsDirty(),Sv(g)}),this.delayEnsureProjectForOpenFiles()},250,this.hostConfiguration.watchOptions,eC.ConfigFile)}watchPackageJsonFile(c,g,d){pe.assert(d!==void 0);let h=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(g);if(!h){let _=this.watchFactory.watchFile(c,(S,R)=>{switch(R){case 0:case 1:this.packageJsonCache.addOrUpdate(S,g),this.onPackageJsonChange(h);break;case 2:this.packageJsonCache.delete(g),this.onPackageJsonChange(h),h.projects.clear(),h.close()}},250,this.hostConfiguration.watchOptions,eC.PackageJson);h={projects:new Set,close:()=>{var S;h.projects.size||!_||(_.close(),_=void 0,(S=this.packageJsonFilesMap)==null||S.delete(g),this.packageJsonCache.invalidate(g))}},this.packageJsonFilesMap.set(g,h)}h.projects.add(d),(d.packageJsonWatches??(d.packageJsonWatches=new Set)).add(h)}onPackageJsonChange(c){c.projects.forEach(g=>{var d;return(d=g.onPackageJsonChange)==null?void 0:d.call(g)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=HOs())}};bfn.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var NJt=bfn;function HOs(){let s;return{get(){return s},set(c){s=c},clear(){s=void 0}}}function DJt(s){return s.kind!==void 0}function kJt(s){s.print(!1,!1,!1)}function xJt(s){let c,g,d,h={get(T,O,V,M){if(!(!g||d!==S(T,V,M)))return g.get(O)},set(T,O,V,M,ee,re,ge){if(_(T,V,M).set(O,R(ee,re,ge,void 0,!1)),ge){for(let Ie of re)if(Ie.isInNodeModules){let _e=Ie.path.substring(0,Ie.path.indexOf(Hx)+Hx.length-1),Ee=s.toPath(_e);c?.has(Ee)||(c||(c=new Map)).set(Ee,s.watchNodeModulesForPackageJsonChanges(_e))}}},setModulePaths(T,O,V,M,ee){let re=_(T,V,M),ge=re.get(O);ge?ge.modulePaths=ee:re.set(O,R(void 0,ee,void 0,void 0,void 0))},setBlockedByPackageJsonDependencies(T,O,V,M,ee,re){let ge=_(T,V,M),Ie=ge.get(O);Ie?(Ie.isBlockedByPackageJsonDependencies=re,Ie.packageName=ee):ge.set(O,R(void 0,void 0,void 0,ee,re))},clear(){c?.forEach(hv),g?.clear(),c?.clear(),d=void 0},count(){return g?g.size:0}};return pe.isDebugging&&Object.defineProperty(h,"__cache",{get:()=>g}),h;function _(T,O,V){let M=S(T,O,V);return g&&d!==M&&h.clear(),d=M,g||(g=new Map)}function S(T,O,V){return`${T},${O.importModuleSpecifierEnding},${O.importModuleSpecifierPreference},${V.overrideImportMode}`}function R(T,O,V,M,ee){return{kind:T,modulePaths:O,moduleSpecifiers:V,packageName:M,isBlockedByPackageJsonDependencies:ee}}}function GJt(s){let c=new Map,g=new Map;return{addOrUpdate:d,invalidate:h,delete:S=>{c.delete(S),g.set(Mo(S),!0)},getInDirectory:S=>c.get(s.toPath(Ro(S,"package.json")))||void 0,directoryHasPackageJson:S=>_(s.toPath(S)),searchDirectoryAndAncestors:(S,R)=>{NN(R,S,T=>{let O=s.toPath(T);if(_(O)!==3)return!0;let V=Ro(T,"package.json");lse(s,V)?d(V,Ro(O,"package.json")):g.set(O,!0)})}};function d(S,R){let T=pe.checkDefined(wnt(S,s.host));c.set(R,T),g.delete(Mo(R))}function h(S){c.delete(S),g.delete(Mo(S))}function _(S){return c.has(Ro(S,"package.json"))?-1:g.has(S)?0:3}}var Efn={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function YOs(s){let c=s[0],g=s[1];return(1e9*c+g)/1e6}function Sfn(s,c){if((_se(s)||S2e(s))&&s.isJsOnlyProject()){let g=s.getScriptInfoForNormalizedPath(c);return g&&!g.isJavaScript()}return!1}function QOs(s){return Wy(s)||!!s.emitDecoratorMetadata}function vfn(s,c,g){let d=c.getScriptInfoForNormalizedPath(s);return{start:d.positionToLineOffset(g.start),end:d.positionToLineOffset(g.start+g.length),text:kN(g.messageText,` -`),code:g.code,category:bb(g),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,source:g.source,relatedInformation:lt(g.relatedInformation,eot)}}function eot(s){return s.file?{span:{start:bse(Ra(s.file,s.start)),end:bse(Ra(s.file,s.start+s.length)),file:s.file.fileName},message:kN(s.messageText,` -`),category:bb(s),code:s.code}:{message:kN(s.messageText,` -`),category:bb(s),code:s.code}}function bse(s){return{line:s.line+1,offset:s.character+1}}function T2e(s,c){let g=s.file&&bse(Ra(s.file,s.start)),d=s.file&&bse(Ra(s.file,s.start+s.length)),h=kN(s.messageText,` -`),{code:_,source:S}=s,R=bb(s),T={start:g,end:d,text:h,code:_,category:R,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated,source:S,relatedInformation:lt(s.relatedInformation,eot)};return c?{...T,fileName:s.file&&s.file.fileName}:T}function XOs(s,c){return s.every(g=>Rs(g.span){let M=this.getOrCreateScriptInfoNotOpenedByClient(O,c.currentDirectory,this.host,!0);if(_=M||V,!M||M.deferredDelete)return;let ee=M.getSnapshot();return M.documentPositionMapper!==void 0?M.documentPositionMapper:qz(ee)},R=c.projectName,T=Ynt({getCanonicalFileName:this.toCanonicalFileName,log:O=>this.logger.info(O),getSourceFileLike:O=>this.getSourceFileLike(O,R,h)},h.fileName,h.textStorage.getLineInfo(),S);return S=void 0,_?Xs(_)?h.sourceMapFilePath={watcher:this.addMissingSourceMapFile(c.currentDirectory===this.currentDirectory?_:Xc(_,c.currentDirectory),h.path),sourceInfos:this.addSourceInfoToSourceMap(d,c)}:(h.sourceMapFilePath=_.path,_.declarationInfoPath=h.path,_.deferredDelete||(_.documentPositionMapper=T||!1),_.sourceInfos=this.addSourceInfoToSourceMap(d,c,_.sourceInfos)):h.sourceMapFilePath=!1,T}addSourceInfoToSourceMap(c,g,d){if(c){let h=this.getOrCreateScriptInfoNotOpenedByClient(c,g.currentDirectory,g.directoryStructureHost,!1);(d||(d=new Set)).add(h.path)}return d}addMissingSourceMapFile(c,g){return this.watchFactory.watchFile(c,()=>{let h=this.getScriptInfoForPath(g);h&&h.sourceMapFilePath&&!Xs(h.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(h.containingProjects,!0),this.delayUpdateSourceInfoProjects(h.sourceMapFilePath.sourceInfos),h.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,eC.MissingSourceMapFile)}getSourceFileLike(c,g,d){let h=g.projectName?g:this.findProject(g);if(h){let S=h.toPath(c),R=h.getSourceFile(S);if(R&&R.resolvedPath===S)return R}let _=this.getOrCreateScriptInfoNotOpenedByClient(c,(h||this).currentDirectory,h?h.directoryStructureHost:this.host,!1);if(_){if(d&&Xs(d.sourceMapFilePath)&&_!==d){let S=this.getScriptInfoForPath(d.sourceMapFilePath);S&&(S.sourceInfos??(S.sourceInfos=new Set)).add(_.path)}return _.cacheSourceFile?_.cacheSourceFile.sourceFile:(_.sourceFileLike||(_.sourceFileLike={get text(){return pe.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:S=>{let R=_.positionToLineOffset(S);return{line:R.line-1,character:R.offset-1}},getPositionOfLineAndCharacter:(S,R,T)=>_.lineOffsetToPosition(S+1,R+1,T)}),_.sourceFileLike)}}setPerformanceEventHandler(c){this.performanceEventHandler=c}setHostConfiguration(c){var g,d;if(c.file){let h=this.getScriptInfoForNormalizedPath(cp(c.file));h&&(h.setOptions(bse(c.formatOptions),c.preferences),this.logger.info(`Host configuration update for file ${c.file}`))}else{if(c.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=c.hostInfo,this.logger.info(`Host information ${c.hostInfo}`)),c.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...bse(c.formatOptions)},this.logger.info("Format host information updated")),c.preferences){let{lazyConfiguredProjectsFromExternalProject:h,includePackageJsonAutoImports:_,includeCompletionsForModuleExports:S}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...c.preferences},h&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(R=>R.forEach(T=>{!T.deferredClose&&!T.isClosed()&&T.pendingUpdateLevel===2&&!this.hasPendingProjectUpdate(T)&&T.updateGraph()})),(_!==c.preferences.includePackageJsonAutoImports||!!S!=!!c.preferences.includeCompletionsForModuleExports)&&this.forEachProject(R=>{R.onAutoImportProviderSettingsChanged()})}if(c.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=c.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),c.watchOptions){let h=(g=w2e(c.watchOptions))==null?void 0:g.watchOptions,_=Q9e(h,this.currentDirectory);this.hostConfiguration.watchOptions=_,this.hostConfiguration.beforeSubstitution=_===h?void 0:h,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`),(d=this.pnpWatcher)==null||d.close(),this.watchPnpFile()}}}getWatchOptions(c){return this.getWatchOptionsFromProjectWatchOptions(c.getWatchOptions(),c.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(c,g){let d=this.hostConfiguration.beforeSubstitution?Q9e(this.hostConfiguration.beforeSubstitution,g):this.hostConfiguration.watchOptions;return c&&d?{...d,...c}:c||d}closeLog(){this.logger.close()}sendSourceFileChange(c){this.filenameToScriptInfo.forEach(g=>{if(this.openFiles.has(g.path)||!g.fileWatcher)return;let d=LA(()=>this.host.fileExists(g.fileName)?g.deferredDelete?0:1:2);if(c){if(SJt(g)||!g.path.startsWith(c)||d()===2&&g.deferredDelete)return;this.logger.info(`Invoking sourceFileChange on ${g.fileName}:: ${d()}`)}this.onSourceFileChanged(g,d())})}reloadProjects(){this.logger.info("reload projects."),this.sendSourceFileChange(void 0),this.pendingProjectUpdates.forEach((d,h)=>{this.throttledOperations.cancel(h),this.pendingProjectUpdates.delete(h)}),this.throttledOperations.cancel(Ifn),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(d=>{d.config&&(d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache())}),this.configFileForOpenFiles.clear(),this.externalProjects.forEach(d=>{this.clearSemanticCache(d),d.updateGraph()});let c=new Map,g=new Set;this.externalProjectToConfiguredProjectMap.forEach((d,h)=>{let _=`Reloading configured project in external project: ${h}`;d.forEach(S=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?this.reloadConfiguredProjectOptimized(S,_,c):this.reloadConfiguredProjectClearingSemanticCache(S,_,c)})}),this.openFiles.forEach((d,h)=>{let _=this.getScriptInfoForPath(h);de(_.containingProjects,S2e)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(_,7,c,g)}),g.forEach(d=>c.set(d,7)),this.inferredProjects.forEach(d=>this.clearSemanticCache(d)),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(c,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(c){pe.assert(c.containingProjects.length>0);let g=c.containingProjects[0];!g.isOrphan()&&yse(g)&&g.isRoot(c)&&F(c.containingProjects,d=>d!==g&&!d.isOrphan())&&g.removeFile(c,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();let c=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,c?.forEach((g,d)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(d),5)),this.openFiles.forEach((g,d)=>{let h=this.getScriptInfoForPath(d);h.isOrphan()?this.assignOrphanScriptInfoToInferredProject(h,g):this.removeRootOfInferredProjectIfNowPartOfOtherProject(h)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(vv),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(c,g,d,h){return this.openClientFileWithNormalizedPath(cp(c),g,d,!1,h?cp(h):void 0)}getOriginalLocationEnsuringConfiguredProject(c,g){let d=c.isSourceOfProjectReferenceRedirect(g.fileName),h=d?g:c.getSourceMapper().tryGetSourcePosition(g);if(!h)return;let{fileName:_}=h,S=this.getScriptInfo(_);if(!S&&!this.host.fileExists(_))return;let R={fileName:cp(_),path:this.toPath(_)},T=this.getConfigFileNameForFile(R,!1);if(!T)return;let O=this.findConfiguredProjectByProjectName(T);if(!O){if(c.getCompilerOptions().disableReferencedProjectLoad)return d?g:S?.containingProjects.length?h:g;O=this.createConfiguredProject(T,`Creating project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`)}let V=this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(R,5,bJt(O,4),re=>`Creating project referenced in solution ${re.projectName} to find possible configured project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`);if(!V.defaultProject)return;if(V.defaultProject===c)return h;ee(V.defaultProject);let M=this.getScriptInfo(_);if(!M||!M.containingProjects.length)return;return M.containingProjects.forEach(re=>{A9(re)&&ee(re)}),h;function ee(re){(c.originalConfiguredProjects??(c.originalConfiguredProjects=new Set)).add(re.canonicalConfigFilePath)}}fileExists(c){return!!this.getScriptInfoForNormalizedPath(c)||this.host.fileExists(c)}findExternalProjectContainingOpenScriptInfo(c){return de(this.externalProjects,g=>(vv(g),g.containsScriptInfo(c)))}getOrCreateOpenScriptInfo(c,g,d,h,_){let S=this.getOrCreateScriptInfoWorker(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,!0,g,d,!!h,void 0,!0);return this.openFiles.set(S.path,_),S}assignProjectToOpenedScriptInfo(c){let g,d,h=this.findExternalProjectContainingOpenScriptInfo(c),_,S;if(!h&&this.serverMode===0){let R=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,5);R&&(_=R.seenProjects,S=R.sentConfigDiag,R.defaultProject&&(g=R.defaultProject.getConfigFilePath(),d=R.defaultProject.getAllProjectErrors()))}return c.containingProjects.forEach(vv),c.isOrphan()&&(_?.forEach((R,T)=>{R!==4&&!S.has(T)&&this.sendConfigFileDiagEvent(T,c.fileName,!0)}),pe.assert(this.openFiles.has(c.path)),this.assignOrphanScriptInfoToInferredProject(c,this.openFiles.get(c.path))),pe.assert(!c.isOrphan()),{configFileName:g,configFileErrors:d,retainProjects:_}}findCreateOrReloadConfiguredProject(c,g,d,h,_,S,R,T,O){let V=O??this.findConfiguredProjectByProjectName(c,h),M=!1,ee;switch(g){case 0:case 1:case 3:if(!V)return;break;case 2:if(!V)return;ee=POs(V);break;case 4:case 5:V??(V=this.createConfiguredProject(c,d)),R||({sentConfigFileDiag:M,configFileExistenceInfo:ee}=bJt(V,g,_));break;case 6:if(V??(V=this.createConfiguredProject(c,qst(d))),V.projectService.reloadConfiguredProjectOptimized(V,d,S),ee=vJt(V),ee)break;case 7:V??(V=this.createConfiguredProject(c,qst(d))),M=!T&&this.reloadConfiguredProjectClearingSemanticCache(V,d,S),T&&!T.has(V)&&!S.has(V)&&(this.setProjectForReload(V,2,d),T.add(V));break;default:pe.assertNever(g)}return{project:V,sentConfigFileDiag:M,configFileExistenceInfo:ee,reason:d}}tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,d,h){let _=this.getConfigFileNameForFile(c,g<=3);if(!_)return;let S=yfn(g),R=this.findCreateOrReloadConfiguredProject(_,S,MOs(c),d,c.fileName,h);return R&&this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,R,T=>`Creating project referenced in solution ${T.projectName} to find possible configured project for ${c.fileName} to open`,d,h)}isMatchedByConfig(c,g,d){if(g.fileNames.some(T=>this.toPath(T)===d.path))return!0;if(Ube(d.fileName,g.options,this.hostConfiguration.extraFileExtensions))return!1;let{validatedFilesSpec:h,validatedIncludeSpecs:_,validatedExcludeSpecs:S}=g.options.configFile.configFileSpecs,R=cp(Xc(Mo(c),this.currentDirectory));return h?.some(T=>this.toPath(Xc(T,R))===d.path)?!0:!_?.length||K9e(d.fileName,S,this.host.useCaseSensitiveFileNames,this.currentDirectory,R)?!1:_?.some(T=>{let O=Qbe(T,R,"files");return!!O&&nk(`(${O})$`,this.host.useCaseSensitiveFileNames).test(d.fileName)})}tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,d,h,_,S){let R=_fn(c),T=yfn(g),O=new Map,V,M=new Set,ee,re,ge,Ie;return _e(d),{defaultProject:ee??re,tsconfigProject:ge??Ie,sentConfigDiag:M,seenProjects:O,seenConfigs:V};function _e(Ke){return Te(Ke,Ke.project)??Ze(Ke.project)??Pe(Ke.project)}function Ee(Ke,et,Ye,Tt,at,Qe){if(et){if(O.has(et))return;O.set(et,T)}else{if(V?.has(Qe))return;(V??(V=new Set)).add(Qe)}if(!at.projectService.isMatchedByConfig(Ye,Ke.config.parsedCommandLine,c)){at.languageServiceEnabled&&at.projectService.watchWildcards(Ye,Ke,at);return}let Ct=et?bJt(et,g,c.fileName,Tt,S):at.projectService.findCreateOrReloadConfiguredProject(Ye,g,Tt,_,c.fileName,S);if(!Ct){pe.assert(g===3);return}return O.set(Ct.project,T),Ct.sentConfigFileDiag&&M.add(Ct.project),Ne(Ct.project,at)}function Ne(Ke,et){if(O.get(Ke)===g)return;O.set(Ke,g);let Ye=R?c:Ke.projectService.getScriptInfo(c.fileName),Tt=Ye&&Ke.containsScriptInfo(Ye);if(Tt&&!Ke.isSourceOfProjectReferenceRedirect(Ye.path))return ge=et,ee=Ke;!re&&R&&Tt&&(Ie=et,re=Ke)}function Te(Ke,et){return Ke.sentConfigFileDiag&&M.add(Ke.project),Ke.configFileExistenceInfo?Ee(Ke.configFileExistenceInfo,Ke.project,cp(Ke.project.getConfigFilePath()),Ke.reason,Ke.project,Ke.project.canonicalConfigFilePath):Ne(Ke.project,et)}function Ze(Ke){return Ke.parsedCommandLine&&Efn(Ke,Ke.parsedCommandLine,Ee,T,h(Ke),_,S)}function Pe(Ke){return R?bfn(c,Ke,_e,T,`Creating possible configured project for ${c.fileName} to open`,_,S,!1):void 0}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,g,d,h){let _=g===1,S=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,_,d);if(!S)return;let{defaultProject:R,tsconfigProject:T,seenProjects:O}=S;return R&&bfn(c,T,V=>{O.set(V.project,g)},g,`Creating project possibly referencing default composite project ${R.getProjectName()} of open file ${c.fileName}`,_,d,!0,h),S}loadAncestorProjectTree(c){c??(c=new Set(lr(this.configuredProjects.entries(),([h,_])=>_.initialLoadPending?void 0:h)));let g=new Set,d=Do(this.configuredProjects.values());for(let h of d)Sfn(h,_=>c.has(_))&&vv(h),this.ensureProjectChildren(h,c,g)}ensureProjectChildren(c,g,d){var h;if(!Ar(d,c.canonicalConfigFilePath)||c.getCompilerOptions().disableReferencedProjectLoad)return;let _=(h=c.getCurrentProgram())==null?void 0:h.getResolvedProjectReferences();if(_)for(let S of _){if(!S)continue;let R=Iie(S.references,V=>g.has(V.sourceFile.path)?V:void 0);if(!R)continue;let T=cp(S.sourceFile.fileName),O=this.findConfiguredProjectByProjectName(T)??this.createConfiguredProject(T,`Creating project referenced by : ${c.projectName} as it references project ${R.sourceFile.fileName}`);vv(O),this.ensureProjectChildren(O,g,d)}}cleanupConfiguredProjects(c,g,d){this.getOrphanConfiguredProjects(c,d,g).forEach(h=>this.removeProject(h))}cleanupProjectsAndScriptInfos(c,g,d){this.cleanupConfiguredProjects(c,d,g);for(let h of this.inferredProjects.slice())h.isOrphan()&&this.removeProject(h);this.removeOrphanScriptInfos()}tryInvokeWildCardDirectories(c){this.configFileExistenceInfoCache.forEach((g,d)=>{var h,_;!((h=g.config)!=null&&h.parsedCommandLine)||k(g.config.parsedCommandLine.fileNames,c.fileName,this.host.useCaseSensitiveFileNames?YA:Yp)||(_=g.config.watchedDirectories)==null||_.forEach((S,R)=>{zh(R,c.fileName,!this.host.useCaseSensitiveFileNames)&&(this.logger.info(`Invoking ${d}:: wildcard for open scriptInfo:: ${c.fileName}`),this.onWildCardDirectoryWatcherInvoke(R,d,g.config,S.watcher,c.fileName))})})}openClientFileWithNormalizedPath(c,g,d,h,_){let S=this.getScriptInfoForPath(_se(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,this.toCanonicalFileName)),R=this.getOrCreateOpenScriptInfo(c,g,d,h,_);!S&&R&&!R.isDynamic&&this.tryInvokeWildCardDirectories(R);let{retainProjects:T,...O}=this.assignProjectToOpenedScriptInfo(R);return this.cleanupProjectsAndScriptInfos(T,new Set([R.path]),void 0),this.telemetryOnOpenFile(R),this.printProjects(),O}getOrphanConfiguredProjects(c,g,d){let h=new Set(this.configuredProjects.values()),_=O=>{O.originalConfiguredProjects&&(A9(O)||!O.isOrphan())&&O.originalConfiguredProjects.forEach((V,M)=>{let ee=this.getConfiguredProjectByCanonicalConfigFilePath(M);return ee&&T(ee)})};if(c?.forEach((O,V)=>T(V)),!h.size||(this.inferredProjects.forEach(_),this.externalProjects.forEach(_),this.externalProjectToConfiguredProjectMap.forEach((O,V)=>{d?.has(V)||O.forEach(T)}),!h.size)||(Fh(this.openFiles,(O,V)=>{if(g?.has(V))return;let M=this.getScriptInfoForPath(V);if(de(M.containingProjects,S2e))return;let ee=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(M,1);if(ee?.defaultProject&&(ee?.seenProjects.forEach((re,ge)=>T(ge)),!h.size))return h}),!h.size))return h;return Fh(this.configuredProjects,O=>{if(h.has(O)&&(R(O)||vfn(O,S))&&(T(O),!h.size))return h}),h;function S(O){return!h.has(O)||R(O)}function R(O){var V,M;return(O.deferredClose||O.projectService.hasPendingProjectUpdate(O))&&!!((M=(V=O.projectService.configFileExistenceInfoCache.get(O.canonicalConfigFilePath))==null?void 0:V.openFilesImpactedByConfigFile)!=null&&M.size)}function T(O){h.delete(O)&&(_(O),vfn(O,T))}}removeOrphanScriptInfos(){let c=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(g=>{if(!g.deferredDelete){if(!g.isScriptOpen()&&g.isOrphan()&&!oJt(g)&&!sJt(g)){if(!g.sourceMapFilePath)return;let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;if(!d||!NB(d,h=>{let _=this.getScriptInfoForPath(h);return!!_&&(_.isScriptOpen()||!_.isOrphan())}))return}if(c.delete(g.path),g.sourceMapFilePath){let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);h?.deferredDelete?g.sourceMapFilePath={watcher:this.addMissingSourceMapFile(h.fileName,g.path),sourceInfos:h.sourceInfos}:c.delete(g.sourceMapFilePath),d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;d&&d.forEach((h,_)=>c.delete(_))}}}),c.forEach(g=>this.deleteScriptInfo(g))}telemetryOnOpenFile(c){if(this.serverMode!==0||!this.eventHandler||!c.isJavaScript()||!Wy(this.allJsFilesForOpenFileTelemetry,c.path))return;let g=this.ensureDefaultProjectForFile(c);if(!g.languageServiceEnabled)return;let d=g.getSourceFile(c.path),h=!!d&&!!d.checkJsDirective;this.eventHandler({eventName:IJt,data:{info:{checkJs:h}}})}closeClientFile(c,g){let d=this.getScriptInfoForNormalizedPath(cp(c)),h=d?this.closeOpenFile(d,g):!1;return g||this.printProjects(),h}collectChanges(c,g,d,h){for(let _ of g){let S=de(c,R=>R.projectName===_.getProjectName());h.push(_.getChangesSinceVersion(S&&S.version,d))}}synchronizeProjectList(c,g){let d=[];return this.collectChanges(c,this.externalProjects,g,d),this.collectChanges(c,lr(this.configuredProjects.values(),h=>h.deferredClose?void 0:h),g,d),this.collectChanges(c,this.inferredProjects,g,d),d}applyChangesInOpenFiles(c,g,d){let h,_,S=!1;if(c)for(let T of c){(h??(h=[])).push(this.getScriptInfoForPath(_se(cp(T.fileName),T.projectRootPath?this.getNormalizedAbsolutePath(T.projectRootPath):this.currentDirectory,this.toCanonicalFileName)));let O=this.getOrCreateOpenScriptInfo(cp(T.fileName),T.content,Xst(T.scriptKind),T.hasMixedContent,T.projectRootPath?cp(T.projectRootPath):void 0);(_||(_=[])).push(O)}if(g)for(let T of g){let O=this.getScriptInfo(T.fileName);pe.assert(!!O),this.applyChangesToFile(O,T.changes)}if(d)for(let T of d)S=this.closeClientFile(T,!0)||S;let R;F(h,(T,O)=>!T&&_[O]&&!_[O].isDynamic?this.tryInvokeWildCardDirectories(_[O]):void 0),_?.forEach(T=>{var O;return(O=this.assignProjectToOpenedScriptInfo(T).retainProjects)==null?void 0:O.forEach((V,M)=>(R??(R=new Map)).set(M,V))}),S&&this.assignOrphanScriptInfosToInferredProject(),_?(this.cleanupProjectsAndScriptInfos(R,new Set(_.map(T=>T.path)),void 0),_.forEach(T=>this.telemetryOnOpenFile(T)),this.printProjects()):B(d)&&this.printProjects()}applyChangesToFile(c,g){for(let d of g)c.editContent(d.span.start,d.span.start+d.span.length,d.newText)}closeExternalProject(c,g){let d=cp(c);if(this.externalProjectToConfiguredProjectMap.get(d))this.externalProjectToConfiguredProjectMap.delete(d);else{let _=this.findExternalProjectByProjectName(c);_&&this.removeProject(_)}g&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(c){let g=new Set(this.externalProjects.map(d=>d.getProjectName()));this.externalProjectToConfiguredProjectMap.forEach((d,h)=>g.add(h));for(let d of c)this.openExternalProject(d,!1),g.delete(d.projectFileName);g.forEach(d=>this.closeExternalProject(d,!1)),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(c){return c.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=hJt}applySafeList(c){let g=c.typeAcquisition;pe.assert(!!g,"proj.typeAcquisition should be set by now");let d=this.applySafeListWorker(c,c.rootFiles,g);return d?.excludedFiles??[]}applySafeListWorker(c,g,d){if(d.enable===!1||d.disableFilenameBasedTypeAcquisition)return;let h=d.include||(d.include=[]),_=[],S=g.map(M=>xp(M.fileName));for(let M of Object.keys(this.safelist)){let ee=this.safelist[M];for(let re of S)if(ee.match.test(re)){if(this.logger.info(`Excluding files based on rule ${M} matching file '${re}'`),ee.types)for(let ge of ee.types)h.includes(ge)||h.push(ge);if(ee.exclude)for(let ge of ee.exclude){let Ie=re.replace(ee.match,(..._e)=>ge.map(Ee=>typeof Ee=="number"?Xs(_e[Ee])?Pxr.escapeFilenameForRegex(_e[Ee]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${M} - not enough groups`),"\\*"):Ee).join(""));_.includes(Ie)||_.push(Ie)}else{let ge=Pxr.escapeFilenameForRegex(re);_.includes(ge)||_.push(ge)}}}let R=_.map(M=>new RegExp(M,"i")),T,O;for(let M=0;Mee.test(S[M])))V(M);else{if(d.enable){let ee=dp(Qm(S[M]));if(lA(ee,"js")){let re=c0(ee),ge=us(re),Ie=this.legacySafelist.get(ge);if(Ie!==void 0){this.logger.info(`Excluded '${S[M]}' because it matched ${ge} from the legacy safelist`),V(M),h.includes(Ie)||h.push(Ie);continue}}}/^.+[.-]min\.js$/.test(S[M])?V(M):T?.push(g[M])}return O?{rootFiles:T,excludedFiles:O}:void 0;function V(M){O||(pe.assert(!T),T=g.slice(0,M),O=[]),O.push(S[M])}}openExternalProject(c,g){let d=this.findExternalProjectByProjectName(c.projectFileName),h,_=[];for(let S of c.rootFiles){let R=cp(S.fileName);if(xst(R)){if(this.serverMode===0&&this.host.fileExists(R)){let T=this.findConfiguredProjectByProjectName(R);T||(T=this.createConfiguredProject(R,`Creating configured project in external project: ${c.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||T.updateGraph()),(h??(h=new Set)).add(T),pe.assert(!T.isClosed())}}else _.push(S)}if(h)this.externalProjectToConfiguredProjectMap.set(c.projectFileName,h),d&&this.removeProject(d);else{this.externalProjectToConfiguredProjectMap.delete(c.projectFileName);let S=c.typeAcquisition||{};S.include=S.include||[],S.exclude=S.exclude||[],S.enable===void 0&&(S.enable=lJt(_.map(O=>O.fileName)));let R=this.applySafeListWorker(c,_,S),T=R?.excludedFiles??[];if(_=R?.rootFiles??_,d){d.excludedFiles=T;let O=ROe(c.options),V=w2e(c.options,d.getCurrentDirectory()),M=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.projectFileName,O,_,Kst);M?d.disableLanguageService(M):d.enableLanguageService(),d.setProjectErrors(V?.errors),this.updateRootAndOptionsOfNonInferredProject(d,_,Kst,O,S,c.options.compileOnSave,V?.watchOptions),d.updateGraph()}else this.createExternalProject(c.projectFileName,_,c.options,S,T).updateGraph()}g&&(this.cleanupConfiguredProjects(h,new Set([c.projectFileName])),this.printProjects())}hasDeferredExtension(){for(let c of this.hostConfiguration.extraFileExtensions)if(c.scriptKind===7)return!0;return!1}requestEnablePlugin(c,g,d){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${g.name} from candidate paths: ${d.join(",")}`),!g.name||Xr(g.name)||/[\\/]\.\.?(?:$|[\\/])/.test(g.name)){this.logger.info(`Skipped loading plugin ${g.name||JSON.stringify(g)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){let h=Aq.importServicePluginAsync(g,d,this.host,S=>this.logger.info(S));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let _=this.pendingPluginEnablements.get(c);_||this.pendingPluginEnablements.set(c,_=[]),_.push(h);return}this.endEnablePlugin(c,Aq.importServicePluginSync(g,d,this.host,h=>this.logger.info(h)))}endEnablePlugin(c,{pluginConfigEntry:g,resolvedModule:d,errorLogs:h}){var _;if(d){let S=(_=this.currentPluginConfigOverrides)==null?void 0:_.get(g.name);if(S){let R=g.name;g=S,g.name=R}c.enableProxy(d,g)}else F(h,S=>this.logger.info(S)),this.logger.info(`Couldn't find ${g.name}`)}hasNewPluginEnablementRequests(){return!!this.pendingPluginEnablements}hasPendingPluginEnablements(){return!!this.currentPluginEnablementPromise}async waitForPendingPlugins(){for(;this.currentPluginEnablementPromise;)await this.currentPluginEnablementPromise}enableRequestedPlugins(){this.pendingPluginEnablements&&this.enableRequestedPluginsAsync()}async enableRequestedPluginsAsync(){if(this.currentPluginEnablementPromise&&await this.waitForPendingPlugins(),!this.pendingPluginEnablements)return;let c=Do(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(c),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(c){pe.assert(this.currentPluginEnablementPromise===void 0);let g=!1;await Promise.all(lt(c,async([d,h])=>{let _=await Promise.all(h);if(d.isClosed()||B2e(d)){this.logger.info(`Cancelling plugin enabling for ${d.getProjectName()} as it is ${d.isClosed()?"closed":"deferred close"}`);return}g=!0;for(let S of _)this.endEnablePlugin(d,S);this.delayUpdateProjectGraph(d)})),this.currentPluginEnablementPromise=void 0,g&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(c){this.forEachEnabledProject(g=>g.onPluginConfigurationChanged(c.pluginName,c.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(c.pluginName,c.configuration)}getPackageJsonsVisibleToFile(c,g,d){let h=this.packageJsonCache,_=d&&this.toPath(d),S=[],R=T=>{switch(h.directoryHasPackageJson(T)){case 3:return h.searchDirectoryAndAncestors(T,g),R(T);case-1:let O=To(T,"package.json");this.watchPackageJsonFile(O,this.toPath(O),g);let V=h.getInDirectory(T);V&&S.push(V)}if(_&&_===T)return!0};return DN(g,Mo(c),R),S}getNearestAncestorDirectoryWithPackageJson(c,g){return DN(g,c,d=>{switch(this.packageJsonCache.directoryHasPackageJson(d)){case-1:return d;case 0:return;case 3:return this.host.fileExists(To(d,"package.json"))?d:void 0}})}watchPnpFile(){let c=etn(__filename);if(c)return this.watchFactory.watchFile(c,()=>{this.forEachProject(g=>{for(let d of g.getScriptInfos())g.resolutionCache.invalidateResolutionOfFile(d.path);g.markAsDirty(),vv(g)}),this.delayEnsureProjectForOpenFiles()},250,this.hostConfiguration.watchOptions,eC.ConfigFile)}watchPackageJsonFile(c,g,d){pe.assert(d!==void 0);let h=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(g);if(!h){let _=this.watchFactory.watchFile(c,(S,R)=>{switch(R){case 0:case 1:this.packageJsonCache.addOrUpdate(S,g),this.onPackageJsonChange(h);break;case 2:this.packageJsonCache.delete(g),this.onPackageJsonChange(h),h.projects.clear(),h.close()}},250,this.hostConfiguration.watchOptions,eC.PackageJson);h={projects:new Set,close:()=>{var S;h.projects.size||!_||(_.close(),_=void 0,(S=this.packageJsonFilesMap)==null||S.delete(g),this.packageJsonCache.invalidate(g))}},this.packageJsonFilesMap.set(g,h)}h.projects.add(d),(d.packageJsonWatches??(d.packageJsonWatches=new Set)).add(h)}onPackageJsonChange(c){c.projects.forEach(g=>{var d;return(d=g.onPackageJsonChange)==null?void 0:d.call(g)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=YOs())}};Tfn.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var NJt=Tfn;function YOs(){let s;return{get(){return s},set(c){s=c},clear(){s=void 0}}}function DJt(s){return s.kind!==void 0}function kJt(s){s.print(!1,!1,!1)}function xJt(s){let c,g,d,h={get(T,O,V,M){if(!(!g||d!==S(T,V,M)))return g.get(O)},set(T,O,V,M,ee,re,ge){if(_(T,V,M).set(O,R(ee,re,ge,void 0,!1)),ge){for(let Ie of re)if(Ie.isInNodeModules){let _e=Ie.path.substring(0,Ie.path.indexOf(Yx)+Yx.length-1),Ee=s.toPath(_e);c?.has(Ee)||(c||(c=new Map)).set(Ee,s.watchNodeModulesForPackageJsonChanges(_e))}}},setModulePaths(T,O,V,M,ee){let re=_(T,V,M),ge=re.get(O);ge?ge.modulePaths=ee:re.set(O,R(void 0,ee,void 0,void 0,void 0))},setBlockedByPackageJsonDependencies(T,O,V,M,ee,re){let ge=_(T,V,M),Ie=ge.get(O);Ie?(Ie.isBlockedByPackageJsonDependencies=re,Ie.packageName=ee):ge.set(O,R(void 0,void 0,void 0,ee,re))},clear(){c?.forEach(mv),g?.clear(),c?.clear(),d=void 0},count(){return g?g.size:0}};return pe.isDebugging&&Object.defineProperty(h,"__cache",{get:()=>g}),h;function _(T,O,V){let M=S(T,O,V);return g&&d!==M&&h.clear(),d=M,g||(g=new Map)}function S(T,O,V){return`${T},${O.importModuleSpecifierEnding},${O.importModuleSpecifierPreference},${V.overrideImportMode}`}function R(T,O,V,M,ee){return{kind:T,modulePaths:O,moduleSpecifiers:V,packageName:M,isBlockedByPackageJsonDependencies:ee}}}function GJt(s){let c=new Map,g=new Map;return{addOrUpdate:d,invalidate:h,delete:S=>{c.delete(S),g.set(Mo(S),!0)},getInDirectory:S=>c.get(s.toPath(To(S,"package.json")))||void 0,directoryHasPackageJson:S=>_(s.toPath(S)),searchDirectoryAndAncestors:(S,R)=>{DN(R,S,T=>{let O=s.toPath(T);if(_(O)!==3)return!0;let V=To(T,"package.json");use(s,V)?d(V,To(O,"package.json")):g.set(O,!0)})}};function d(S,R){let T=pe.checkDefined(Bnt(S,s.host));c.set(R,T),g.delete(Mo(R))}function h(S){c.delete(S),g.delete(Mo(S))}function _(S){return c.has(To(S,"package.json"))?-1:g.has(S)?0:3}}var Rfn={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function QOs(s){let c=s[0],g=s[1];return(1e9*c+g)/1e6}function Nfn(s,c){if((yse(s)||S2e(s))&&s.isJsOnlyProject()){let g=s.getScriptInfoForNormalizedPath(c);return g&&!g.isJavaScript()}return!1}function XOs(s){return Oy(s)||!!s.emitDecoratorMetadata}function Dfn(s,c,g){let d=c.getScriptInfoForNormalizedPath(s);return{start:d.positionToLineOffset(g.start),end:d.positionToLineOffset(g.start+g.length),text:xN(g.messageText,` +`),code:g.code,category:Eb(g),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,source:g.source,relatedInformation:lt(g.relatedInformation,$st)}}function $st(s){return s.file?{span:{start:Ese(Ra(s.file,s.start)),end:Ese(Ra(s.file,s.start+s.length)),file:s.file.fileName},message:xN(s.messageText,` +`),category:Eb(s),code:s.code}:{message:xN(s.messageText,` +`),category:Eb(s),code:s.code}}function Ese(s){return{line:s.line+1,offset:s.character+1}}function T2e(s,c){let g=s.file&&Ese(Ra(s.file,s.start)),d=s.file&&Ese(Ra(s.file,s.start+s.length)),h=xN(s.messageText,` +`),{code:_,source:S}=s,R=Eb(s),T={start:g,end:d,text:h,code:_,category:R,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated,source:S,relatedInformation:lt(s.relatedInformation,$st)};return c?{...T,fileName:s.file&&s.file.fileName}:T}function JOs(s,c){return s.every(g=>Rs(g.span){this.immediateId=void 0,this.operationHost.executeWithRequestId(g,()=>this.executeAction(c),this.performanceData)},s))}delay(s,c,g){let d=this.requestId;pe.assert(d===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(d,()=>this.executeAction(g),this.performanceData)},c,s))}executeAction(s){var c,g,d,h,_,S;let R=!1;try{this.operationHost.isCancellationRequested()?(R=!0,(c=ki)==null||c.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((g=ki)==null||g.push(ki.Phase.Session,"stepAction",{seq:this.requestId}),s(this),(d=ki)==null||d.pop())}catch(T){(h=ki)==null||h.popAll(),R=!0,T instanceof Ty?(_=ki)==null||_.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId}):((S=ki)==null||S.instant(ki.Phase.Session,"stepError",{seq:this.requestId,message:T.message}),this.operationHost.logError(T,`delayed processing of request ${this.requestId}`))}this.performanceData=this.operationHost.getPerformanceData(),(R||!this.hasPendingWork())&&this.complete()}setTimerHandle(s){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=s}setImmediateId(s){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=s}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function ZJt(s,c){return{seq:0,type:"event",event:s,body:c}}function UOs(s,c,g,d){let h=Bt(Ki(g)?g:g.projects,_=>d(_,s));return!Ki(g)&&g.symLinkedProjects&&g.symLinkedProjects.forEach((_,S)=>{let R=c(S);h.push(...jt(_,T=>d(T,R)))}),no(h,bg)}function tot(s){return so(({textSpan:c})=>c.start+100003*c.length,pnt(s))}function KOs(s,c,g,d,h,_,S){let R=LJt(s,c,g,wfn(c,g,!0),Nfn,(V,M)=>V.getLanguageService().findRenameLocations(M.fileName,M.pos,d,h,_),(V,M)=>M(xpe(V)));if(Ki(R))return R;let T=[],O=tot(S);return R.forEach((V,M)=>{for(let ee of V)!O.has(ee)&&!rot(xpe(ee),M)&&(T.push(ee),O.add(ee))}),T}function wfn(s,c,g){let d=s.getLanguageService().getDefinitionAtPosition(c.fileName,c.pos,!1,g),h=d&&Nc(d);return h&&!h.isLocal?{fileName:h.fileName,pos:h.textSpan.start}:void 0}function jOs(s,c,g,d,h){var _,S;let R=LJt(s,c,g,wfn(c,g,!1),Nfn,(M,ee)=>(h.info(`Finding references to ${ee.fileName} position ${ee.pos} in project ${M.getProjectName()}`),M.getLanguageService().findReferences(ee.fileName,ee.pos)),(M,ee)=>{ee(xpe(M.definition));for(let re of M.references)ee(xpe(re))});if(Ki(R))return R;let T=R.get(c);if(((S=(_=T?.[0])==null?void 0:_.references[0])==null?void 0:S.isDefinition)===void 0)R.forEach(M=>{for(let ee of M)for(let re of ee.references)delete re.isDefinition});else{let M=tot(d);for(let re of T)for(let ge of re.references)if(ge.isDefinition){M.add(ge);break}let ee=new Set;for(;;){let re=!1;if(R.forEach((ge,Ie)=>{if(ee.has(Ie))return;Ie.getLanguageService().updateIsDefinitionOfReferencedSymbols(ge,M)&&(ee.add(Ie),re=!0)}),!re)break}R.forEach((re,ge)=>{if(!ee.has(ge))for(let Ie of re)for(let _e of Ie.references)_e.isDefinition=!1})}let O=[],V=tot(d);return R.forEach((M,ee)=>{for(let re of M){let ge=rot(xpe(re.definition),ee),Ie=ge===void 0?re.definition:{...re.definition,textSpan:$d(ge.pos,re.definition.textSpan.length),fileName:ge.fileName,contextSpan:qOs(re.definition,ee)},_e=de(O,Ee=>dnt(Ee.definition,Ie,d));_e||(_e={definition:Ie,references:[]},O.push(_e));for(let Ee of re.references)!V.has(Ee)&&!rot(xpe(Ee),ee)&&(V.add(Ee),_e.references.push(Ee))}}),O.filter(M=>M.references.length!==0)}function Tfn(s,c,g){for(let d of Ki(s)?s:s.projects)g(d,c);!Ki(s)&&s.symLinkedProjects&&s.symLinkedProjects.forEach((d,h)=>{for(let _ of d)g(_,h)})}function LJt(s,c,g,d,h,_,S){let R=new Map,T=aA();T.enqueue({project:c,location:g}),Tfn(s,g.fileName,(Ie,_e)=>{let Ee={fileName:_e,pos:g.pos};T.enqueue({project:Ie,location:Ee})});let O=c.projectService,V=c.getCancellationToken(),M=LA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetGeneratedPosition(d)),ee=LA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetSourcePosition(d)),re=new Set;e:for(;!T.isEmpty();){for(;!T.isEmpty();){if(V.isCancellationRequested())break e;let{project:Ie,location:_e}=T.dequeue();if(R.has(Ie)||Dfn(Ie,_e)||(Sv(Ie),!Ie.containsFile(cp(_e.fileName))))continue;let Ee=ge(Ie,_e);R.set(Ie,Ee??tC),re.add(zOs(Ie))}d&&(O.loadAncestorProjectTree(re),O.forEachEnabledProject(Ie=>{if(V.isCancellationRequested()||R.has(Ie))return;let _e=h(d,Ie,M,ee);_e&&T.enqueue({project:Ie,location:_e})}))}if(R.size===1)return vu(R.values());return R;function ge(Ie,_e){let Ee=_(Ie,_e);if(!Ee||!S)return Ee;for(let Ne of Ee)S(Ne,Te=>{let Ze=O.getOriginalLocationEnsuringConfiguredProject(Ie,Te);if(!Ze)return;let Pe=O.getScriptInfo(Ze.fileName);for(let et of Pe.containingProjects)!et.isOrphan()&&!R.has(et)&&T.enqueue({project:et,location:Ze});let Ke=O.getSymlinkedProjects(Pe);Ke&&Ke.forEach((et,Ye)=>{for(let Tt of et)!Tt.isOrphan()&&!R.has(Tt)&&T.enqueue({project:Tt,location:{fileName:Ye,pos:Ze.pos}})})});return Ee}}function Rfn(s,c){if(c.containsFile(cp(s.fileName))&&!Dfn(c,s))return s}function Nfn(s,c,g,d){let h=Rfn(s,c);if(h)return h;let _=g();if(_&&c.containsFile(cp(_.fileName)))return _;let S=d();return S&&c.containsFile(cp(S.fileName))?S:void 0}function Dfn(s,c){if(!c)return!1;let g=s.getLanguageService().getProgram();if(!g)return!1;let d=g.getSourceFile(c.fileName);return!!d&&d.resolvedPath!==d.path&&d.resolvedPath!==s.toPath(c.fileName)}function zOs(s){return g9(s)?s.canonicalConfigFilePath:s.getProjectName()}function xpe({fileName:s,textSpan:c}){return{fileName:s,pos:c.start}}function rot(s,c){return upe(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function kfn(s,c){return yWe(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function qOs(s,c){return Int(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}var xfn=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","getPasteEdits","copilotRelated"],$Os=[...xfn,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full","preparePasteEdits"],Gfn=class B1t{constructor(c){this.changeSeq=0,this.regionDiagLineCountThreshold=500,this.handlers=new Map(Object.entries({status:()=>{let _={version:C};return this.requiredResponse(_)},openExternalProject:_=>(this.projectService.openExternalProject(_.arguments,!0),this.requiredResponse(!0)),openExternalProjects:_=>(this.projectService.openExternalProjects(_.arguments.projects),this.requiredResponse(!0)),closeExternalProject:_=>(this.projectService.closeExternalProject(_.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:_=>{let S=this.projectService.synchronizeProjectList(_.arguments.knownProjects,_.arguments.includeProjectReferenceRedirectInfo);if(!S.some(T=>T.projectErrors&&T.projectErrors.length!==0))return this.requiredResponse(S);let R=lt(S,T=>!T.projectErrors||T.projectErrors.length===0?T:{info:T.info,changes:T.changes,files:T.files,projectErrors:this.convertToDiagnosticsWithLinePosition(T.projectErrors,void 0)});return this.requiredResponse(R)},updateOpen:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles&&Ot(_.arguments.openFiles,S=>({fileName:S.file,content:S.fileContent,scriptKind:S.scriptKindName,projectRootPath:S.projectRootPath})),_.arguments.changedFiles&&Ot(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:lr(Qa(S.textChanges),R=>{let T=pe.checkDefined(this.projectService.getScriptInfo(S.fileName)),O=T.lineOffsetToPosition(R.start.line,R.start.offset),V=T.lineOffsetToPosition(R.end.line,R.end.offset);return O>=0?{span:{start:O,length:V-O},newText:R.newText}:void 0})})),_.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles,_.arguments.changedFiles&&Ot(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:Qa(S.changes)})),_.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired(void 0)),definition:_=>this.requiredResponse(this.getDefinition(_.arguments,!0)),"definition-full":_=>this.requiredResponse(this.getDefinition(_.arguments,!1)),definitionAndBoundSpan:_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!0)),"definitionAndBoundSpan-full":_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!1)),findSourceDefinition:_=>this.requiredResponse(this.findSourceDefinition(_.arguments)),"emit-output":_=>this.requiredResponse(this.getEmitOutput(_.arguments)),typeDefinition:_=>this.requiredResponse(this.getTypeDefinition(_.arguments)),implementation:_=>this.requiredResponse(this.getImplementation(_.arguments,!0)),"implementation-full":_=>this.requiredResponse(this.getImplementation(_.arguments,!1)),references:_=>this.requiredResponse(this.getReferences(_.arguments,!0)),"references-full":_=>this.requiredResponse(this.getReferences(_.arguments,!1)),rename:_=>this.requiredResponse(this.getRenameLocations(_.arguments,!0)),"renameLocations-full":_=>this.requiredResponse(this.getRenameLocations(_.arguments,!1)),"rename-full":_=>this.requiredResponse(this.getRenameInfo(_.arguments)),open:_=>(this.openClientFile(cp(_.arguments.file),_.arguments.fileContent,Ust(_.arguments.scriptKindName),_.arguments.projectRootPath?cp(_.arguments.projectRootPath):void 0),this.notRequired(_)),quickinfo:_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!0)),"quickinfo-full":_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!1)),getOutliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!0)),outliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!1)),todoComments:_=>this.requiredResponse(this.getTodoComments(_.arguments)),indentation:_=>this.requiredResponse(this.getIndentation(_.arguments)),nameOrDottedNameSpan:_=>this.requiredResponse(this.getNameOrDottedNameSpan(_.arguments)),breakpointStatement:_=>this.requiredResponse(this.getBreakpointStatement(_.arguments)),braceCompletion:_=>this.requiredResponse(this.isValidBraceCompletion(_.arguments)),docCommentTemplate:_=>this.requiredResponse(this.getDocCommentTemplate(_.arguments)),getSpanOfEnclosingComment:_=>this.requiredResponse(this.getSpanOfEnclosingComment(_.arguments)),fileReferences:_=>this.requiredResponse(this.getFileReferences(_.arguments,!0)),"fileReferences-full":_=>this.requiredResponse(this.getFileReferences(_.arguments,!1)),format:_=>this.requiredResponse(this.getFormattingEditsForRange(_.arguments)),formatonkey:_=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(_.arguments)),"format-full":_=>this.requiredResponse(this.getFormattingEditsForDocumentFull(_.arguments)),"formatonkey-full":_=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(_.arguments)),"formatRange-full":_=>this.requiredResponse(this.getFormattingEditsForRangeFull(_.arguments)),completionInfo:_=>this.requiredResponse(this.getCompletions(_.arguments,"completionInfo")),completions:_=>this.requiredResponse(this.getCompletions(_.arguments,"completions")),"completions-full":_=>this.requiredResponse(this.getCompletions(_.arguments,"completions-full")),completionEntryDetails:_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!1)),"completionEntryDetails-full":_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!0)),compileOnSaveAffectedFileList:_=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(_.arguments)),compileOnSaveEmitFile:_=>this.requiredResponse(this.emitFile(_.arguments)),signatureHelp:_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!0)),"signatureHelp-full":_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!1)),"compilerOptionsDiagnostics-full":_=>this.requiredResponse(this.getCompilerOptionsDiagnostics(_.arguments)),"encodedSyntacticClassifications-full":_=>this.requiredResponse(this.getEncodedSyntacticClassifications(_.arguments)),"encodedSemanticClassifications-full":_=>this.requiredResponse(this.getEncodedSemanticClassifications(_.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:_=>this.requiredResponse(this.getSemanticDiagnosticsSync(_.arguments)),syntacticDiagnosticsSync:_=>this.requiredResponse(this.getSyntacticDiagnosticsSync(_.arguments)),suggestionDiagnosticsSync:_=>this.requiredResponse(this.getSuggestionDiagnosticsSync(_.arguments)),geterr:_=>(this.errorCheck.startNew(S=>this.getDiagnostics(S,_.arguments.delay,_.arguments.files)),this.notRequired(void 0)),geterrForProject:_=>(this.errorCheck.startNew(S=>this.getDiagnosticsForProject(S,_.arguments.delay,_.arguments.file)),this.notRequired(void 0)),change:_=>(this.change(_.arguments),this.notRequired(_)),configure:_=>(this.projectService.setHostConfiguration(_.arguments),this.notRequired(_)),reload:_=>(this.reload(_.arguments),this.requiredResponse({reloadFinished:!0})),saveto:_=>{let S=_.arguments;return this.saveToTmp(S.file,S.tmpfile),this.notRequired(_)},close:_=>{let S=_.arguments;return this.closeClientFile(S.file),this.notRequired(_)},navto:_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!0)),"navto-full":_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!1)),brace:_=>this.requiredResponse(this.getBraceMatching(_.arguments,!0)),"brace-full":_=>this.requiredResponse(this.getBraceMatching(_.arguments,!1)),navbar:_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!0)),"navbar-full":_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!1)),navtree:_=>this.requiredResponse(this.getNavigationTree(_.arguments,!0)),"navtree-full":_=>this.requiredResponse(this.getNavigationTree(_.arguments,!1)),documentHighlights:_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!0)),"documentHighlights-full":_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!1)),compilerOptionsForInferredProjects:_=>(this.setCompilerOptionsForInferredProjects(_.arguments),this.requiredResponse(!0)),projectInfo:_=>this.requiredResponse(this.getProjectInfo(_.arguments)),reloadProjects:_=>(this.projectService.reloadProjects(),this.notRequired(_)),jsxClosingTag:_=>this.requiredResponse(this.getJsxClosingTag(_.arguments)),linkedEditingRange:_=>this.requiredResponse(this.getLinkedEditingRange(_.arguments)),getCodeFixes:_=>this.requiredResponse(this.getCodeFixes(_.arguments,!0)),"getCodeFixes-full":_=>this.requiredResponse(this.getCodeFixes(_.arguments,!1)),getCombinedCodeFix:_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!0)),"getCombinedCodeFix-full":_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!1)),applyCodeActionCommand:_=>this.requiredResponse(this.applyCodeActionCommand(_.arguments)),getSupportedCodeFixes:_=>this.requiredResponse(this.getSupportedCodeFixes(_.arguments)),getApplicableRefactors:_=>this.requiredResponse(this.getApplicableRefactors(_.arguments)),getEditsForRefactor:_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!0)),getMoveToRefactoringFileSuggestions:_=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(_.arguments)),preparePasteEdits:_=>this.requiredResponse(this.preparePasteEdits(_.arguments)),getPasteEdits:_=>this.requiredResponse(this.getPasteEdits(_.arguments)),"getEditsForRefactor-full":_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!1)),organizeImports:_=>this.requiredResponse(this.organizeImports(_.arguments,!0)),"organizeImports-full":_=>this.requiredResponse(this.organizeImports(_.arguments,!1)),getEditsForFileRename:_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!0)),"getEditsForFileRename-full":_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!1)),configurePlugin:_=>(this.configurePlugin(_.arguments),this.notRequired(_)),selectionRange:_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!0)),"selectionRange-full":_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!1)),prepareCallHierarchy:_=>this.requiredResponse(this.prepareCallHierarchy(_.arguments)),provideCallHierarchyIncomingCalls:_=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(_.arguments)),provideCallHierarchyOutgoingCalls:_=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(_.arguments)),toggleLineComment:_=>this.requiredResponse(this.toggleLineComment(_.arguments,!0)),"toggleLineComment-full":_=>this.requiredResponse(this.toggleLineComment(_.arguments,!1)),toggleMultilineComment:_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!0)),"toggleMultilineComment-full":_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!1)),commentSelection:_=>this.requiredResponse(this.commentSelection(_.arguments,!0)),"commentSelection-full":_=>this.requiredResponse(this.commentSelection(_.arguments,!1)),uncommentSelection:_=>this.requiredResponse(this.uncommentSelection(_.arguments,!0)),"uncommentSelection-full":_=>this.requiredResponse(this.uncommentSelection(_.arguments,!1)),provideInlayHints:_=>this.requiredResponse(this.provideInlayHints(_.arguments)),mapCode:_=>this.requiredResponse(this.mapCode(_.arguments)),copilotRelated:()=>this.requiredResponse(this.getCopilotRelatedInfo())})),this.host=c.host,this.cancellationToken=c.cancellationToken,this.typingsInstaller=c.typingsInstaller||NOe,this.byteLength=c.byteLength,this.hrtime=c.hrtime,this.logger=c.logger,this.canUseEvents=c.canUseEvents,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=c.noGetErrOnBackgroundUpdate;let{throttleWaitMilliseconds:g}=c;this.eventHandler=this.canUseEvents?c.eventHandler||(_=>this.defaultEventHandler(_)):void 0;let d={executeWithRequestId:(_,S,R)=>this.executeWithRequestId(_,S,R),getCurrentRequestId:()=>this.currentRequestId,getPerformanceData:()=>this.performanceData,getServerHost:()=>this.host,logError:(_,S)=>this.logError(_,S),sendRequestCompletedEvent:(_,S)=>this.sendRequestCompletedEvent(_,S),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new JOs(d);let h={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:c.useSingleInferredProject,useInferredProjectPerProjectRoot:c.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:g,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:c.globalPlugins,pluginProbeLocations:c.pluginProbeLocations,allowLocalPluginLoads:c.allowLocalPluginLoads,typesMapLocation:c.typesMapLocation,serverMode:c.serverMode,session:this,canUseWatchEvents:c.canUseWatchEvents,incrementalVerifier:c.incrementalVerifier};switch(this.projectService=new NJt(h),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new eJt(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:xfn.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:$Os.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:pe.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(c,g){this.event({request_seq:c,performanceData:g&&Ffn(g)},"requestCompleted")}addPerformanceData(c,g){this.performanceData||(this.performanceData={}),this.performanceData[c]=(this.performanceData[c]??0)+g}addDiagnosticsPerformanceData(c,g,d){var h,_;this.performanceData||(this.performanceData={});let S=(h=this.performanceData.diagnosticsDuration)==null?void 0:h.get(c);S||((_=this.performanceData).diagnosticsDuration??(_.diagnosticsDuration=new Map)).set(c,S={}),S[g]=d}performanceEventHandler(c){switch(c.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",c.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",c.durationMs);break}}defaultEventHandler(c){switch(c.eventName){case TOe:this.projectsUpdatedInBackgroundEvent(c.data.openFiles);break;case Vst:this.event({projectName:c.data.project.getProjectName(),reason:c.data.reason},c.eventName);break;case Wst:this.event({projectName:c.data.project.getProjectName()},c.eventName);break;case Ost:case Yst:case Qst:case Xst:this.event(c.data,c.eventName);break;case Pst:this.event({triggerFile:c.data.triggerFile,configFile:c.data.configFileName,diagnostics:lt(c.data.diagnostics,g=>T2e(g,!0))},c.eventName);break;case Mst:{this.event({projectName:c.data.project.getProjectName(),languageServiceEnabled:c.data.languageServiceEnabled},c.eventName);break}case Hst:{this.event({telemetryEventName:c.eventName,payload:c.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(c){this.projectService.logger.info(`got projects updated in background ${c}`),c.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${c}`),this.errorCheck.startNew(g=>this.updateErrorCheck(g,c,100,!0))),this.event({openFiles:c},TOe))}logError(c,g){this.logErrorWorker(c,g)}logErrorWorker(c,g,d){let h="Exception on executing command "+g;if(c.message&&(h+=`: -`+npe(c.message),c.stack&&(h+=` -`+npe(c.stack))),this.logger.hasLevel(3)){if(d)try{let{file:_,project:S}=this.getFileAndProject(d),R=S.getScriptInfoForNormalizedPath(_);if(R){let T=zz(R.getSnapshot());h+=` +${_}${d}`}var UOs=class{constructor(s){this.operationHost=s}startNew(s){this.complete(),this.requestId=this.operationHost.getCurrentRequestId(),this.executeAction(s)}complete(){this.requestId!==void 0&&(this.operationHost.sendRequestCompletedEvent(this.requestId,this.performanceData),this.requestId=void 0),this.setTimerHandle(void 0),this.setImmediateId(void 0),this.performanceData=void 0}immediate(s,c){let g=this.requestId;pe.assert(g===this.operationHost.getCurrentRequestId(),"immediate: incorrect request id"),this.setImmediateId(this.operationHost.getServerHost().setImmediate(()=>{this.immediateId=void 0,this.operationHost.executeWithRequestId(g,()=>this.executeAction(c),this.performanceData)},s))}delay(s,c,g){let d=this.requestId;pe.assert(d===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(d,()=>this.executeAction(g),this.performanceData)},c,s))}executeAction(s){var c,g,d,h,_,S;let R=!1;try{this.operationHost.isCancellationRequested()?(R=!0,(c=ki)==null||c.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((g=ki)==null||g.push(ki.Phase.Session,"stepAction",{seq:this.requestId}),s(this),(d=ki)==null||d.pop())}catch(T){(h=ki)==null||h.popAll(),R=!0,T instanceof Ry?(_=ki)==null||_.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId}):((S=ki)==null||S.instant(ki.Phase.Session,"stepError",{seq:this.requestId,message:T.message}),this.operationHost.logError(T,`delayed processing of request ${this.requestId}`))}this.performanceData=this.operationHost.getPerformanceData(),(R||!this.hasPendingWork())&&this.complete()}setTimerHandle(s){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=s}setImmediateId(s){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=s}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function ZJt(s,c){return{seq:0,type:"event",event:s,body:c}}function KOs(s,c,g,d){let h=Bt(Ki(g)?g:g.projects,_=>d(_,s));return!Ki(g)&&g.symLinkedProjects&&g.symLinkedProjects.forEach((_,S)=>{let R=c(S);h.push(...jt(_,T=>d(T,R)))}),no(h,bg)}function eot(s){return so(({textSpan:c})=>c.start+100003*c.length,dnt(s))}function jOs(s,c,g,d,h,_,S){let R=LJt(s,c,g,xfn(c,g,!0),Zfn,(V,M)=>V.getLanguageService().findRenameLocations(M.fileName,M.pos,d,h,_),(V,M)=>M(Gpe(V)));if(Ki(R))return R;let T=[],O=eot(S);return R.forEach((V,M)=>{for(let ee of V)!O.has(ee)&&!tot(Gpe(ee),M)&&(T.push(ee),O.add(ee))}),T}function xfn(s,c,g){let d=s.getLanguageService().getDefinitionAtPosition(c.fileName,c.pos,!1,g),h=d&&Nc(d);return h&&!h.isLocal?{fileName:h.fileName,pos:h.textSpan.start}:void 0}function zOs(s,c,g,d,h){var _,S;let R=LJt(s,c,g,xfn(c,g,!1),Zfn,(M,ee)=>(h.info(`Finding references to ${ee.fileName} position ${ee.pos} in project ${M.getProjectName()}`),M.getLanguageService().findReferences(ee.fileName,ee.pos)),(M,ee)=>{ee(Gpe(M.definition));for(let re of M.references)ee(Gpe(re))});if(Ki(R))return R;let T=R.get(c);if(((S=(_=T?.[0])==null?void 0:_.references[0])==null?void 0:S.isDefinition)===void 0)R.forEach(M=>{for(let ee of M)for(let re of ee.references)delete re.isDefinition});else{let M=eot(d);for(let re of T)for(let ge of re.references)if(ge.isDefinition){M.add(ge);break}let ee=new Set;for(;;){let re=!1;if(R.forEach((ge,Ie)=>{if(ee.has(Ie))return;Ie.getLanguageService().updateIsDefinitionOfReferencedSymbols(ge,M)&&(ee.add(Ie),re=!0)}),!re)break}R.forEach((re,ge)=>{if(!ee.has(ge))for(let Ie of re)for(let _e of Ie.references)_e.isDefinition=!1})}let O=[],V=eot(d);return R.forEach((M,ee)=>{for(let re of M){let ge=tot(Gpe(re.definition),ee),Ie=ge===void 0?re.definition:{...re.definition,textSpan:$d(ge.pos,re.definition.textSpan.length),fileName:ge.fileName,contextSpan:$Os(re.definition,ee)},_e=de(O,Ee=>Ant(Ee.definition,Ie,d));_e||(_e={definition:Ie,references:[]},O.push(_e));for(let Ee of re.references)!V.has(Ee)&&!tot(Gpe(Ee),ee)&&(V.add(Ee),_e.references.push(Ee))}}),O.filter(M=>M.references.length!==0)}function Gfn(s,c,g){for(let d of Ki(s)?s:s.projects)g(d,c);!Ki(s)&&s.symLinkedProjects&&s.symLinkedProjects.forEach((d,h)=>{for(let _ of d)g(_,h)})}function LJt(s,c,g,d,h,_,S){let R=new Map,T=cA();T.enqueue({project:c,location:g}),Gfn(s,g.fileName,(Ie,_e)=>{let Ee={fileName:_e,pos:g.pos};T.enqueue({project:Ie,location:Ee})});let O=c.projectService,V=c.getCancellationToken(),M=LA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetGeneratedPosition(d)),ee=LA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetSourcePosition(d)),re=new Set;e:for(;!T.isEmpty();){for(;!T.isEmpty();){if(V.isCancellationRequested())break e;let{project:Ie,location:_e}=T.dequeue();if(R.has(Ie)||Lfn(Ie,_e)||(vv(Ie),!Ie.containsFile(cp(_e.fileName))))continue;let Ee=ge(Ie,_e);R.set(Ie,Ee??tC),re.add(qOs(Ie))}d&&(O.loadAncestorProjectTree(re),O.forEachEnabledProject(Ie=>{if(V.isCancellationRequested()||R.has(Ie))return;let _e=h(d,Ie,M,ee);_e&&T.enqueue({project:Ie,location:_e})}))}if(R.size===1)return vu(R.values());return R;function ge(Ie,_e){let Ee=_(Ie,_e);if(!Ee||!S)return Ee;for(let Ne of Ee)S(Ne,Te=>{let Ze=O.getOriginalLocationEnsuringConfiguredProject(Ie,Te);if(!Ze)return;let Pe=O.getScriptInfo(Ze.fileName);for(let et of Pe.containingProjects)!et.isOrphan()&&!R.has(et)&&T.enqueue({project:et,location:Ze});let Ke=O.getSymlinkedProjects(Pe);Ke&&Ke.forEach((et,Ye)=>{for(let Tt of et)!Tt.isOrphan()&&!R.has(Tt)&&T.enqueue({project:Tt,location:{fileName:Ye,pos:Ze.pos}})})});return Ee}}function Ffn(s,c){if(c.containsFile(cp(s.fileName))&&!Lfn(c,s))return s}function Zfn(s,c,g,d){let h=Ffn(s,c);if(h)return h;let _=g();if(_&&c.containsFile(cp(_.fileName)))return _;let S=d();return S&&c.containsFile(cp(S.fileName))?S:void 0}function Lfn(s,c){if(!c)return!1;let g=s.getLanguageService().getProgram();if(!g)return!1;let d=g.getSourceFile(c.fileName);return!!d&&d.resolvedPath!==d.path&&d.resolvedPath!==s.toPath(c.fileName)}function qOs(s){return A9(s)?s.canonicalConfigFilePath:s.getProjectName()}function Gpe({fileName:s,textSpan:c}){return{fileName:s,pos:c.start}}function tot(s,c){return gpe(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function Vfn(s,c){return yWe(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function $Os(s,c){return fnt(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}var Wfn=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","getPasteEdits","copilotRelated"],ePs=[...Wfn,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full","preparePasteEdits"],Ofn=class S1t{constructor(c){this.changeSeq=0,this.regionDiagLineCountThreshold=500,this.handlers=new Map(Object.entries({status:()=>{let _={version:C};return this.requiredResponse(_)},openExternalProject:_=>(this.projectService.openExternalProject(_.arguments,!0),this.requiredResponse(!0)),openExternalProjects:_=>(this.projectService.openExternalProjects(_.arguments.projects),this.requiredResponse(!0)),closeExternalProject:_=>(this.projectService.closeExternalProject(_.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:_=>{let S=this.projectService.synchronizeProjectList(_.arguments.knownProjects,_.arguments.includeProjectReferenceRedirectInfo);if(!S.some(T=>T.projectErrors&&T.projectErrors.length!==0))return this.requiredResponse(S);let R=lt(S,T=>!T.projectErrors||T.projectErrors.length===0?T:{info:T.info,changes:T.changes,files:T.files,projectErrors:this.convertToDiagnosticsWithLinePosition(T.projectErrors,void 0)});return this.requiredResponse(R)},updateOpen:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles&&Ot(_.arguments.openFiles,S=>({fileName:S.file,content:S.fileContent,scriptKind:S.scriptKindName,projectRootPath:S.projectRootPath})),_.arguments.changedFiles&&Ot(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:lr(Qa(S.textChanges),R=>{let T=pe.checkDefined(this.projectService.getScriptInfo(S.fileName)),O=T.lineOffsetToPosition(R.start.line,R.start.offset),V=T.lineOffsetToPosition(R.end.line,R.end.offset);return O>=0?{span:{start:O,length:V-O},newText:R.newText}:void 0})})),_.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles,_.arguments.changedFiles&&Ot(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:Qa(S.changes)})),_.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired(void 0)),definition:_=>this.requiredResponse(this.getDefinition(_.arguments,!0)),"definition-full":_=>this.requiredResponse(this.getDefinition(_.arguments,!1)),definitionAndBoundSpan:_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!0)),"definitionAndBoundSpan-full":_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!1)),findSourceDefinition:_=>this.requiredResponse(this.findSourceDefinition(_.arguments)),"emit-output":_=>this.requiredResponse(this.getEmitOutput(_.arguments)),typeDefinition:_=>this.requiredResponse(this.getTypeDefinition(_.arguments)),implementation:_=>this.requiredResponse(this.getImplementation(_.arguments,!0)),"implementation-full":_=>this.requiredResponse(this.getImplementation(_.arguments,!1)),references:_=>this.requiredResponse(this.getReferences(_.arguments,!0)),"references-full":_=>this.requiredResponse(this.getReferences(_.arguments,!1)),rename:_=>this.requiredResponse(this.getRenameLocations(_.arguments,!0)),"renameLocations-full":_=>this.requiredResponse(this.getRenameLocations(_.arguments,!1)),"rename-full":_=>this.requiredResponse(this.getRenameInfo(_.arguments)),open:_=>(this.openClientFile(cp(_.arguments.file),_.arguments.fileContent,Jst(_.arguments.scriptKindName),_.arguments.projectRootPath?cp(_.arguments.projectRootPath):void 0),this.notRequired(_)),quickinfo:_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!0)),"quickinfo-full":_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!1)),getOutliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!0)),outliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!1)),todoComments:_=>this.requiredResponse(this.getTodoComments(_.arguments)),indentation:_=>this.requiredResponse(this.getIndentation(_.arguments)),nameOrDottedNameSpan:_=>this.requiredResponse(this.getNameOrDottedNameSpan(_.arguments)),breakpointStatement:_=>this.requiredResponse(this.getBreakpointStatement(_.arguments)),braceCompletion:_=>this.requiredResponse(this.isValidBraceCompletion(_.arguments)),docCommentTemplate:_=>this.requiredResponse(this.getDocCommentTemplate(_.arguments)),getSpanOfEnclosingComment:_=>this.requiredResponse(this.getSpanOfEnclosingComment(_.arguments)),fileReferences:_=>this.requiredResponse(this.getFileReferences(_.arguments,!0)),"fileReferences-full":_=>this.requiredResponse(this.getFileReferences(_.arguments,!1)),format:_=>this.requiredResponse(this.getFormattingEditsForRange(_.arguments)),formatonkey:_=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(_.arguments)),"format-full":_=>this.requiredResponse(this.getFormattingEditsForDocumentFull(_.arguments)),"formatonkey-full":_=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(_.arguments)),"formatRange-full":_=>this.requiredResponse(this.getFormattingEditsForRangeFull(_.arguments)),completionInfo:_=>this.requiredResponse(this.getCompletions(_.arguments,"completionInfo")),completions:_=>this.requiredResponse(this.getCompletions(_.arguments,"completions")),"completions-full":_=>this.requiredResponse(this.getCompletions(_.arguments,"completions-full")),completionEntryDetails:_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!1)),"completionEntryDetails-full":_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!0)),compileOnSaveAffectedFileList:_=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(_.arguments)),compileOnSaveEmitFile:_=>this.requiredResponse(this.emitFile(_.arguments)),signatureHelp:_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!0)),"signatureHelp-full":_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!1)),"compilerOptionsDiagnostics-full":_=>this.requiredResponse(this.getCompilerOptionsDiagnostics(_.arguments)),"encodedSyntacticClassifications-full":_=>this.requiredResponse(this.getEncodedSyntacticClassifications(_.arguments)),"encodedSemanticClassifications-full":_=>this.requiredResponse(this.getEncodedSemanticClassifications(_.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:_=>this.requiredResponse(this.getSemanticDiagnosticsSync(_.arguments)),syntacticDiagnosticsSync:_=>this.requiredResponse(this.getSyntacticDiagnosticsSync(_.arguments)),suggestionDiagnosticsSync:_=>this.requiredResponse(this.getSuggestionDiagnosticsSync(_.arguments)),geterr:_=>(this.errorCheck.startNew(S=>this.getDiagnostics(S,_.arguments.delay,_.arguments.files)),this.notRequired(void 0)),geterrForProject:_=>(this.errorCheck.startNew(S=>this.getDiagnosticsForProject(S,_.arguments.delay,_.arguments.file)),this.notRequired(void 0)),change:_=>(this.change(_.arguments),this.notRequired(_)),configure:_=>(this.projectService.setHostConfiguration(_.arguments),this.notRequired(_)),reload:_=>(this.reload(_.arguments),this.requiredResponse({reloadFinished:!0})),saveto:_=>{let S=_.arguments;return this.saveToTmp(S.file,S.tmpfile),this.notRequired(_)},close:_=>{let S=_.arguments;return this.closeClientFile(S.file),this.notRequired(_)},navto:_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!0)),"navto-full":_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!1)),brace:_=>this.requiredResponse(this.getBraceMatching(_.arguments,!0)),"brace-full":_=>this.requiredResponse(this.getBraceMatching(_.arguments,!1)),navbar:_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!0)),"navbar-full":_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!1)),navtree:_=>this.requiredResponse(this.getNavigationTree(_.arguments,!0)),"navtree-full":_=>this.requiredResponse(this.getNavigationTree(_.arguments,!1)),documentHighlights:_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!0)),"documentHighlights-full":_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!1)),compilerOptionsForInferredProjects:_=>(this.setCompilerOptionsForInferredProjects(_.arguments),this.requiredResponse(!0)),projectInfo:_=>this.requiredResponse(this.getProjectInfo(_.arguments)),reloadProjects:_=>(this.projectService.reloadProjects(),this.notRequired(_)),jsxClosingTag:_=>this.requiredResponse(this.getJsxClosingTag(_.arguments)),linkedEditingRange:_=>this.requiredResponse(this.getLinkedEditingRange(_.arguments)),getCodeFixes:_=>this.requiredResponse(this.getCodeFixes(_.arguments,!0)),"getCodeFixes-full":_=>this.requiredResponse(this.getCodeFixes(_.arguments,!1)),getCombinedCodeFix:_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!0)),"getCombinedCodeFix-full":_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!1)),applyCodeActionCommand:_=>this.requiredResponse(this.applyCodeActionCommand(_.arguments)),getSupportedCodeFixes:_=>this.requiredResponse(this.getSupportedCodeFixes(_.arguments)),getApplicableRefactors:_=>this.requiredResponse(this.getApplicableRefactors(_.arguments)),getEditsForRefactor:_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!0)),getMoveToRefactoringFileSuggestions:_=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(_.arguments)),preparePasteEdits:_=>this.requiredResponse(this.preparePasteEdits(_.arguments)),getPasteEdits:_=>this.requiredResponse(this.getPasteEdits(_.arguments)),"getEditsForRefactor-full":_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!1)),organizeImports:_=>this.requiredResponse(this.organizeImports(_.arguments,!0)),"organizeImports-full":_=>this.requiredResponse(this.organizeImports(_.arguments,!1)),getEditsForFileRename:_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!0)),"getEditsForFileRename-full":_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!1)),configurePlugin:_=>(this.configurePlugin(_.arguments),this.notRequired(_)),selectionRange:_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!0)),"selectionRange-full":_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!1)),prepareCallHierarchy:_=>this.requiredResponse(this.prepareCallHierarchy(_.arguments)),provideCallHierarchyIncomingCalls:_=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(_.arguments)),provideCallHierarchyOutgoingCalls:_=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(_.arguments)),toggleLineComment:_=>this.requiredResponse(this.toggleLineComment(_.arguments,!0)),"toggleLineComment-full":_=>this.requiredResponse(this.toggleLineComment(_.arguments,!1)),toggleMultilineComment:_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!0)),"toggleMultilineComment-full":_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!1)),commentSelection:_=>this.requiredResponse(this.commentSelection(_.arguments,!0)),"commentSelection-full":_=>this.requiredResponse(this.commentSelection(_.arguments,!1)),uncommentSelection:_=>this.requiredResponse(this.uncommentSelection(_.arguments,!0)),"uncommentSelection-full":_=>this.requiredResponse(this.uncommentSelection(_.arguments,!1)),provideInlayHints:_=>this.requiredResponse(this.provideInlayHints(_.arguments)),mapCode:_=>this.requiredResponse(this.mapCode(_.arguments)),copilotRelated:()=>this.requiredResponse(this.getCopilotRelatedInfo())})),this.host=c.host,this.cancellationToken=c.cancellationToken,this.typingsInstaller=c.typingsInstaller||NOe,this.byteLength=c.byteLength,this.hrtime=c.hrtime,this.logger=c.logger,this.canUseEvents=c.canUseEvents,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=c.noGetErrOnBackgroundUpdate;let{throttleWaitMilliseconds:g}=c;this.eventHandler=this.canUseEvents?c.eventHandler||(_=>this.defaultEventHandler(_)):void 0;let d={executeWithRequestId:(_,S,R)=>this.executeWithRequestId(_,S,R),getCurrentRequestId:()=>this.currentRequestId,getPerformanceData:()=>this.performanceData,getServerHost:()=>this.host,logError:(_,S)=>this.logError(_,S),sendRequestCompletedEvent:(_,S)=>this.sendRequestCompletedEvent(_,S),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new UOs(d);let h={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:c.useSingleInferredProject,useInferredProjectPerProjectRoot:c.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:g,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:c.globalPlugins,pluginProbeLocations:c.pluginProbeLocations,allowLocalPluginLoads:c.allowLocalPluginLoads,typesMapLocation:c.typesMapLocation,serverMode:c.serverMode,session:this,canUseWatchEvents:c.canUseWatchEvents,incrementalVerifier:c.incrementalVerifier};switch(this.projectService=new NJt(h),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new eJt(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:Wfn.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:ePs.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:pe.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(c,g){this.event({request_seq:c,performanceData:g&&Pfn(g)},"requestCompleted")}addPerformanceData(c,g){this.performanceData||(this.performanceData={}),this.performanceData[c]=(this.performanceData[c]??0)+g}addDiagnosticsPerformanceData(c,g,d){var h,_;this.performanceData||(this.performanceData={});let S=(h=this.performanceData.diagnosticsDuration)==null?void 0:h.get(c);S||((_=this.performanceData).diagnosticsDuration??(_.diagnosticsDuration=new Map)).set(c,S={}),S[g]=d}performanceEventHandler(c){switch(c.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",c.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",c.durationMs);break}}defaultEventHandler(c){switch(c.eventName){case TOe:this.projectsUpdatedInBackgroundEvent(c.data.openFiles);break;case Lst:this.event({projectName:c.data.project.getProjectName(),reason:c.data.reason},c.eventName);break;case Vst:this.event({projectName:c.data.project.getProjectName()},c.eventName);break;case Wst:case Hst:case Yst:case Qst:this.event(c.data,c.eventName);break;case Ost:this.event({triggerFile:c.data.triggerFile,configFile:c.data.configFileName,diagnostics:lt(c.data.diagnostics,g=>T2e(g,!0))},c.eventName);break;case Pst:{this.event({projectName:c.data.project.getProjectName(),languageServiceEnabled:c.data.languageServiceEnabled},c.eventName);break}case Mst:{this.event({telemetryEventName:c.eventName,payload:c.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(c){this.projectService.logger.info(`got projects updated in background ${c}`),c.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${c}`),this.errorCheck.startNew(g=>this.updateErrorCheck(g,c,100,!0))),this.event({openFiles:c},TOe))}logError(c,g){this.logErrorWorker(c,g)}logErrorWorker(c,g,d){let h="Exception on executing command "+g;if(c.message&&(h+=`: +`+ipe(c.message),c.stack&&(h+=` +`+ipe(c.stack))),this.logger.hasLevel(3)){if(d)try{let{file:_,project:S}=this.getFileAndProject(d),R=S.getScriptInfoForNormalizedPath(_);if(R){let T=qz(R.getSnapshot());h+=` -File text of ${d.file}:${npe(T)} +File text of ${d.file}:${ipe(T)} `}}catch{}if(c.ProgramFiles){h+=` Program files: ${JSON.stringify(c.ProgramFiles)} @@ -1073,23 +1073,23 @@ Program files: ${JSON.stringify(c.ProgramFiles)} Projects:: `;let _=0,S=R=>{h+=` -Project '${R.projectName}' (${kpe[R.projectKind]}) ${_} +Project '${R.projectName}' (${xpe[R.projectKind]}) ${_} `,h+=R.filesToString(!0),h+=` ----------------------------------------------- -`,_++};this.projectService.externalProjects.forEach(S),this.projectService.configuredProjects.forEach(S),this.projectService.inferredProjects.forEach(S)}}this.logger.msg(h,"Err")}send(c){if(c.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${n5(c)}`);return}this.writeMessage(c)}writeMessage(c){let g=FJt(c,this.logger,this.byteLength,this.host.newLine);this.host.write(g)}event(c,g){this.send(ZJt(g,c))}doOutput(c,g,d,h,_,S){let R={seq:0,type:"response",command:g,request_seq:d,success:h,performanceData:_&&Ffn(_)};if(h){let T;if(Ki(c))R.body=c,T=c.metadata,delete c.metadata;else if(typeof c=="object")if(c.metadata){let{metadata:O,...V}=c;R.body=V,T=O}else R.body=c;else R.body=c;T&&(R.metadata=T)}else pe.assert(c===void 0);S&&(R.message=S),this.send(R)}semanticCheck(c,g){var d,h;let _=Zg();(d=ki)==null||d.push(ki.Phase.Session,"semanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let S=Sfn(g,c)?tC:g.getLanguageService().getSemanticDiagnostics(c).filter(R=>!!R.file);this.sendDiagnosticsEvent(c,g,S,"semanticDiag",_),(h=ki)==null||h.pop()}syntacticCheck(c,g){var d,h;let _=Zg();(d=ki)==null||d.push(ki.Phase.Session,"syntacticCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSyntacticDiagnostics(c),"syntaxDiag",_),(h=ki)==null||h.pop()}suggestionCheck(c,g){var d,h;let _=Zg();(d=ki)==null||d.push(ki.Phase.Session,"suggestionCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSuggestionDiagnostics(c),"suggestionDiag",_),(h=ki)==null||h.pop()}regionSemanticCheck(c,g,d){var h,_,S;let R=Zg();(h=ki)==null||h.push(ki.Phase.Session,"regionSemanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let T;if(!this.shouldDoRegionCheck(c)||!(T=g.getLanguageService().getRegionSemanticDiagnostics(c,d))){(_=ki)==null||_.pop();return}this.sendDiagnosticsEvent(c,g,T.diagnostics,"regionSemanticDiag",R,T.spans),(S=ki)==null||S.pop()}shouldDoRegionCheck(c){var g;let d=(g=this.projectService.getScriptInfoForNormalizedPath(c))==null?void 0:g.textStorage.getLineInfo().getLineCount();return!!(d&&d>=this.regionDiagLineCountThreshold)}sendDiagnosticsEvent(c,g,d,h,_,S){try{let R=pe.checkDefined(g.getScriptInfo(c)),T=Zg()-_,O={file:c,diagnostics:d.map(V=>vfn(c,g,V)),spans:S?.map(V=>LN(V,R))};this.event(O,h),this.addDiagnosticsPerformanceData(c,h,T)}catch(R){this.logError(R,h)}}updateErrorCheck(c,g,d,h=!0){if(g.length===0)return;pe.assert(!this.suppressDiagnosticEvents);let _=this.changeSeq,S=Math.min(d,200),R=0,T=()=>{if(R++,g.length>R)return c.delay("checkOne",S,V)},O=(M,ee)=>{if(this.semanticCheck(M,ee),this.changeSeq===_){if(this.getPreferences(M).disableSuggestions)return T();c.immediate("suggestionCheck",()=>{this.suggestionCheck(M,ee),T()})}},V=()=>{if(this.changeSeq!==_)return;let M,ee=g[R];if(Xs(ee)?ee=this.toPendingErrorCheck(ee):"ranges"in ee&&(M=ee.ranges,ee=this.toPendingErrorCheck(ee.file)),!ee)return T();let{fileName:re,project:ge}=ee;if(Sv(ge),!!ge.containsFile(re,h)&&(this.syntacticCheck(re,ge),this.changeSeq===_)){if(ge.projectService.serverMode!==0)return T();if(M)return c.immediate("regionSemanticCheck",()=>{let Ie=this.projectService.getScriptInfoForNormalizedPath(re);Ie&&this.regionSemanticCheck(re,ge,M.map(_e=>this.getRange({file:re,..._e},Ie))),this.changeSeq===_&&c.immediate("semanticCheck",()=>O(re,ge))});c.immediate("semanticCheck",()=>O(re,ge))}};g.length>R&&this.changeSeq===_&&c.delay("checkOne",d,V)}cleanProjects(c,g){if(g){this.logger.info(`cleaning ${c}`);for(let d of g)d.getLanguageService(!1).cleanupSemanticCache(),d.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",Do(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c);return d.getEncodedSyntacticClassifications(g,c)}getEncodedSemanticClassifications(c){let{file:g,project:d}=this.getFileAndProject(c),h=c.format==="2020"?"2020":"original";return d.getLanguageService().getEncodedSemanticClassifications(g,c,h)}getProject(c){return c===void 0?void 0:this.projectService.findProject(c)}getConfigFileAndProject(c){let g=this.getProject(c.projectFileName),d=cp(c.file);return{configFile:g&&g.hasConfigFile(d)?d:void 0,project:g}}getConfigFileDiagnostics(c,g,d){let h=g.getAllProjectErrors(),_=g.getLanguageService().getCompilerOptionsDiagnostics(),S=Le(Nn(h,_),R=>!!R.file&&R.file.fileName===c);return d?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):lt(S,R=>T2e(R,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(c){return c.map(g=>({message:kN(g.messageText,this.host.newLine),start:g.start,length:g.length,category:bb(g),code:g.code,source:g.source,startLocation:g.file&&bse(Ra(g.file,g.start)),endLocation:g.file&&bse(Ra(g.file,g.start+g.length)),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,relatedInformation:lt(g.relatedInformation,eot)}))}getCompilerOptionsDiagnostics(c){let g=this.getProject(c.projectFileName);return this.convertToDiagnosticsWithLinePosition(Le(g.getLanguageService().getCompilerOptionsDiagnostics(),d=>!d.file),void 0)}convertToDiagnosticsWithLinePosition(c,g){return c.map(d=>({message:kN(d.messageText,this.host.newLine),start:d.start,length:d.length,category:bb(d),code:d.code,source:d.source,startLocation:g&&g.positionToLineOffset(d.start),endLocation:g&&g.positionToLineOffset(d.start+d.length),reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated,relatedInformation:lt(d.relatedInformation,eot)}))}getDiagnosticsWorker(c,g,d,h){let{project:_,file:S}=this.getFileAndProject(c);if(g&&Sfn(_,S))return tC;let R=_.getScriptInfoForNormalizedPath(S),T=d(_,S);return h?this.convertToDiagnosticsWithLinePosition(T,R):T.map(O=>vfn(S,_,O))}getDefinition(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapDefinitionInfoLocations(h.getLanguageService().getDefinitionAtPosition(d,_)||tC,h);return g?this.mapDefinitionInfo(S,h):S.map(B1t.mapToOriginalLocation)}mapDefinitionInfoLocations(c,g){return c.map(d=>{let h=kfn(d,g);return h?{...h,containerKind:d.containerKind,containerName:d.containerName,kind:d.kind,name:d.name,failedAliasResolution:d.failedAliasResolution,...d.unverified&&{unverified:d.unverified}}:d})}getDefinitionAndBoundSpan(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=pe.checkDefined(h.getScriptInfo(d)),R=h.getLanguageService().getDefinitionAndBoundSpan(d,_);if(!R||!R.definitions)return{definitions:tC,textSpan:void 0};let T=this.mapDefinitionInfoLocations(R.definitions,h),{textSpan:O}=R;return g?{definitions:this.mapDefinitionInfo(T,h),textSpan:LN(O,S)}:{definitions:T.map(B1t.mapToOriginalLocation),textSpan:O}}findSourceDefinition(c){var g;let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDefinitionAtPosition(d,_),R=this.mapDefinitionInfoLocations(S||tC,h).slice();if(this.projectService.serverMode===0&&(!zt(R,re=>cp(re.fileName)!==d&&!re.isAmbient)||zt(R,re=>!!re.failedAliasResolution))){let re=so(Ee=>Ee.textSpan.start,pnt(this.host.useCaseSensitiveFileNames));R?.forEach(Ee=>re.add(Ee));let ge=h.getNoDtsResolutionProject(d),Ie=ge.getLanguageService(),_e=(g=Ie.getDefinitionAtPosition(d,_,!0,!1))==null?void 0:g.filter(Ee=>cp(Ee.fileName)!==d);if(zt(_e))for(let Ee of _e){if(Ee.unverified){let Ne=M(Ee,h.getLanguageService().getProgram(),Ie.getProgram());if(zt(Ne)){for(let Te of Ne)re.add(Te);continue}}re.add(Ee)}else{let Ee=R.filter(Ne=>cp(Ne.fileName)!==d&&Ne.isAmbient);for(let Ne of zt(Ee)?Ee:V()){let Te=O(Ne.fileName,d,ge);if(!Te)continue;let Ze=this.projectService.getOrCreateScriptInfoNotOpenedByClient(Te,ge.currentDirectory,ge.directoryStructureHost,!1);if(!Ze)continue;ge.containsScriptInfo(Ze)||(ge.addRoot(Ze),ge.updateGraph());let Pe=Ie.getProgram(),Ke=pe.checkDefined(Pe.getSourceFile(Te));for(let et of ee(Ne.name,Ke,Pe))re.add(et)}}R=Do(re.values())}return R=R.filter(re=>!re.isAmbient&&!re.failedAliasResolution),this.mapDefinitionInfo(R,h);function O(re,ge,Ie){var _e,Ee,Ne;let Te=sde(re);if(Te&&re.lastIndexOf(Hx)===Te.topLevelNodeModulesIndex){let Ze=re.substring(0,Te.packageRootIndex),Pe=(_e=h.getModuleResolutionCache())==null?void 0:_e.getPackageJsonInfoCache(),Ke=h.getCompilationSettings(),et=Vde(Xc(Ze,h.getCurrentDirectory()),Lde(Pe,h,Ke));if(!et)return;let Ye=Zet(et,{moduleResolution:2},h,h.getModuleResolutionCache()),Tt=re.substring(Te.topLevelPackageNameIndex+1,Te.packageRootIndex),at=Wde(qEe(Tt)),Qe=h.toPath(re);if(Ye&&zt(Ye,Ct=>h.toPath(Ct)===Qe))return(Ee=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(at,ge).resolvedModule)==null?void 0:Ee.resolvedFileName;{let Ct=re.substring(Te.packageRootIndex+1),mt=`${at}/${a0(Ct)}`;return(Ne=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(mt,ge).resolvedModule)==null?void 0:Ne.resolvedFileName}}}function V(){let re=h.getLanguageService(),ge=re.getProgram(),Ie=Wb(ge.getSourceFile(d),_);return(CA(Ie)||Ir(Ie))&&bp(Ie.parent)&&CLe(Ie,_e=>{var Ee;if(_e===Ie)return;let Ne=(Ee=re.getDefinitionAtPosition(d,_e.getStart(),!0,!1))==null?void 0:Ee.filter(Te=>cp(Te.fileName)!==d&&Te.isAmbient).map(Te=>({fileName:Te.fileName,name:g2(Ie)}));if(zt(Ne))return Ne})||tC}function M(re,ge,Ie){var _e;let Ee=Ie.getSourceFile(re.fileName);if(!Ee)return;let Ne=Wb(ge.getSourceFile(d),_),Te=ge.getTypeChecker().getSymbolAtLocation(Ne),Ze=Te&&yp(Te,277);if(!Ze)return;let Pe=((_e=Ze.propertyName)==null?void 0:_e.text)||Ze.name.text;return ee(Pe,Ee,Ie)}function ee(re,ge,Ie){let _e=zp.Core.getTopMostDeclarationNamesInFile(re,ge);return Xt(_e,Ee=>{let Ne=Ie.getTypeChecker().getSymbolAtLocation(Ee),Te=M7(Ee);if(Ne&&Te)return hse.createDefinitionInfo(Te,Ie.getTypeChecker(),Ne,Te,!0)})}}getEmitOutput(c){let{file:g,project:d}=this.getFileAndProject(c);if(!d.shouldEmitFile(d.getScriptInfo(g)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let h=d.getLanguageService().getEmitOutput(g);return c.richResponse?{...h,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(h.diagnostics):h.diagnostics.map(_=>T2e(_,!0))}:h}mapJSDocTagInfo(c,g,d){return c?c.map(h=>{var _;return{...h,text:d?this.mapDisplayParts(h.text,g):(_=h.text)==null?void 0:_.map(S=>S.text).join("")}}):[]}mapDisplayParts(c,g){return c?c.map(d=>d.kind!=="linkName"?d:{...d,target:this.toFileSpan(d.target.fileName,d.target.textSpan,g)}):[]}mapSignatureHelpItems(c,g,d){return c.map(h=>({...h,documentation:this.mapDisplayParts(h.documentation,g),parameters:h.parameters.map(_=>({..._,documentation:this.mapDisplayParts(_.documentation,g)})),tags:this.mapJSDocTagInfo(h.tags,g,d)}))}mapDefinitionInfo(c,g){return c.map(d=>({...this.toFileSpanWithContext(d.fileName,d.textSpan,d.contextSpan,g),...d.unverified&&{unverified:d.unverified}}))}static mapToOriginalLocation(c){return c.originalFileName?(pe.assert(c.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...c,fileName:c.originalFileName,textSpan:c.originalTextSpan,targetFileName:c.fileName,targetTextSpan:c.textSpan,contextSpan:c.originalContextSpan,targetContextSpan:c.contextSpan}):c}toFileSpan(c,g,d){let h=d.getLanguageService(),_=h.toLineColumnOffset(c,g.start),S=h.toLineColumnOffset(c,Rs(g));return{file:c,start:{line:_.line+1,offset:_.character+1},end:{line:S.line+1,offset:S.character+1}}}toFileSpanWithContext(c,g,d,h){let _=this.toFileSpan(c,g,h),S=d&&this.toFileSpan(c,d,h);return S?{..._,contextStart:S.start,contextEnd:S.end}:_}getTypeDefinition(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.mapDefinitionInfoLocations(d.getLanguageService().getTypeDefinitionAtPosition(g,h)||tC,d);return this.mapDefinitionInfo(_,d)}mapImplementationLocations(c,g){return c.map(d=>{let h=kfn(d,g);return h?{...h,kind:d.kind,displayParts:d.displayParts}:d})}getImplementation(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapImplementationLocations(h.getLanguageService().getImplementationAtPosition(d,_)||tC,h);return g?S.map(({fileName:R,textSpan:T,contextSpan:O})=>this.toFileSpanWithContext(R,T,O,h)):S.map(B1t.mapToOriginalLocation)}getSyntacticDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?tC:this.getDiagnosticsWorker(c,!1,(d,h)=>d.getLanguageService().getSyntacticDiagnostics(h),!!c.includeLinePosition)}getSemanticDiagnosticsSync(c){let{configFile:g,project:d}=this.getConfigFileAndProject(c);return g?this.getConfigFileDiagnostics(g,d,!!c.includeLinePosition):this.getDiagnosticsWorker(c,!0,(h,_)=>h.getLanguageService().getSemanticDiagnostics(_).filter(S=>!!S.file),!!c.includeLinePosition)}getSuggestionDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?tC:this.getDiagnosticsWorker(c,!0,(d,h)=>d.getLanguageService().getSuggestionDiagnostics(h),!!c.includeLinePosition)}getJsxClosingTag(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getJsxClosingTagAtPosition(g,h);return _===void 0?void 0:{newText:_.newText,caretOffset:0}}getLinkedEditingRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getLinkedEditingRangeAtPosition(g,h),S=this.projectService.getScriptInfoForNormalizedPath(g);if(!(S===void 0||_===void 0))return tPs(_,S)}getDocumentHighlights(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDocumentHighlights(d,_,c.filesToSearch);return S?g?S.map(({fileName:R,highlightSpans:T})=>{let O=h.getScriptInfo(R);return{file:R,highlightSpans:T.map(({textSpan:V,kind:M,contextSpan:ee})=>({...VJt(V,ee,O),kind:M}))}}):S:tC}provideInlayHints(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);return d.getLanguageService().provideInlayHints(g,c,this.getPreferences(g)).map(S=>{let{position:R,displayParts:T}=S;return{...S,position:h.positionToLineOffset(R),displayParts:T?.map(({text:O,span:V,file:M})=>{if(V){pe.assertIsDefined(M,"Target file should be defined together with its span.");let ee=this.projectService.getScriptInfo(M);return{text:O,span:{start:ee.positionToLineOffset(V.start),end:ee.positionToLineOffset(V.start+V.length),file:M}}}else return{text:O}})}})}mapCode(c){var g;let d=this.getHostFormatOptions(),h=this.getHostPreferences(),{file:_,languageService:S}=this.getFileAndLanguageServiceForSyntacticOperation(c),R=this.projectService.getScriptInfoForNormalizedPath(_),T=(g=c.mapping.focusLocations)==null?void 0:g.map(V=>V.map(M=>{let ee=R.lineOffsetToPosition(M.start.line,M.start.offset),re=R.lineOffsetToPosition(M.end.line,M.end.offset);return{start:ee,length:re-ee}})),O=S.mapCode(_,c.mapping.contents,T,d,h);return this.mapTextChangesToCodeEdits(O)}getCopilotRelatedInfo(){return{relatedFiles:[]}}setCompilerOptionsForInferredProjects(c){this.projectService.setCompilerOptionsForInferredProjects(c.options,c.projectRootPath)}getProjectInfo(c){return this.getProjectInfoWorker(c.file,c.projectFileName,c.needFileNameList,c.needDefaultConfiguredProjectInfo,!1)}getProjectInfoWorker(c,g,d,h,_){let{project:S}=this.getFileAndProjectWorker(c,g);return Sv(S),{configFileName:S.getProjectName(),languageServiceDisabled:!S.languageServiceEnabled,fileNames:d?S.getFileNames(!1,_):void 0,configuredProjectInfo:h?this.getDefaultConfiguredProjectInfo(c):void 0}}getDefaultConfiguredProjectInfo(c){var g;let d=this.projectService.getScriptInfo(c);if(!d)return;let h=this.projectService.findDefaultConfiguredProjectWorker(d,3);if(!h)return;let _,S;return h.seenProjects.forEach((R,T)=>{T!==h.defaultProject&&(R!==3?(_??(_=[])).push(cp(T.getConfigFilePath())):(S??(S=[])).push(cp(T.getConfigFilePath())))}),(g=h.seenConfigs)==null||g.forEach(R=>(_??(_=[])).push(R)),{notMatchedByConfig:_,notInProject:S,defaultProject:h.defaultProject&&cp(h.defaultProject.getConfigFilePath())}}getRenameInfo(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.getPreferences(g);return d.getLanguageService().getRenameInfo(g,h,_)}getProjects(c,g,d){let h,_;if(c.projectFileName){let S=this.getProject(c.projectFileName);S&&(h=[S])}else{let S=g?this.projectService.getScriptInfoEnsuringProjectsUptoDate(c.file):this.projectService.getScriptInfo(c.file);if(S)g||this.projectService.ensureDefaultProjectForFile(S);else return d?tC:(this.projectService.logErrorForScriptInfoNotFound(c.file),zF.ThrowNoProject());h=S.containingProjects,_=this.projectService.getSymlinkedProjects(S)}return h=Le(h,S=>S.languageServiceEnabled&&!S.isOrphan()),!d&&(!h||!h.length)&&!_?(this.projectService.logErrorForScriptInfoNotFound(c.file??c.projectFileName),zF.ThrowNoProject()):_?{projects:h,symLinkedProjects:_}:h}getDefaultProject(c){if(c.projectFileName){let d=this.getProject(c.projectFileName);if(d)return d;if(!c.file)return zF.ThrowNoProject()}return this.projectService.getScriptInfo(c.file).getDefaultProject()}getRenameLocations(c,g){let d=cp(c.file),h=this.getPositionInFile(c,d),_=this.getProjects(c),S=this.getDefaultProject(c),R=this.getPreferences(d),T=this.mapRenameInfo(S.getLanguageService().getRenameInfo(d,h,R),pe.checkDefined(this.projectService.getScriptInfo(d)));if(!T.canRename)return g?{info:T,locs:[]}:[];let O=KOs(_,S,{fileName:c.file,pos:h},!!c.findInStrings,!!c.findInComments,R,this.host.useCaseSensitiveFileNames);return g?{info:T,locs:this.toSpanGroups(O)}:O}mapRenameInfo(c,g){if(c.canRename){let{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:O}=c;return{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:LN(O,g)}}else return c}toSpanGroups(c){let g=new Map;for(let{fileName:d,textSpan:h,contextSpan:_,originalContextSpan:S,originalTextSpan:R,originalFileName:T,...O}of c){let V=g.get(d);V||g.set(d,V={file:d,locs:[]});let M=pe.checkDefined(this.projectService.getScriptInfo(d));V.locs.push({...VJt(h,_,M),...O})}return Do(g.values())}getReferences(c,g){let d=cp(c.file),h=this.getProjects(c),_=this.getPositionInFile(c,d),S=jOs(h,this.getDefaultProject(c),{fileName:c.file,pos:_},this.host.useCaseSensitiveFileNames,this.logger);if(!g)return S;let R=this.getPreferences(d),T=this.getDefaultProject(c),O=T.getScriptInfoForNormalizedPath(d),V=T.getLanguageService().getQuickInfoAtPosition(d,_),M=V?$1e(V.displayParts):"",ee=V&&V.textSpan,re=ee?O.positionToLineOffset(ee.start).offset:0,ge=ee?O.getSnapshot().getText(ee.start,Rs(ee)):"";return{refs:jt(S,_e=>_e.references.map(Ee=>Lfn(this.projectService,Ee,R))),symbolName:ge,symbolStartOffset:re,symbolDisplayString:M}}getFileReferences(c,g){let d=this.getProjects(c),h=cp(c.file),_=this.getPreferences(h),S={fileName:h,pos:0},R=LJt(d,this.getDefaultProject(c),S,S,Rfn,V=>(this.logger.info(`Finding references to file ${h} in project ${V.getProjectName()}`),V.getLanguageService().getFileReferences(h))),T;if(Ki(R))T=R;else{T=[];let V=tot(this.host.useCaseSensitiveFileNames);R.forEach(M=>{for(let ee of M)V.has(ee)||(T.push(ee),V.add(ee))})}return g?{refs:T.map(V=>Lfn(this.projectService,V,_)),symbolName:`"${c.file}"`}:T}openClientFile(c,g,d,h){this.projectService.openClientFileWithNormalizedPath(c,g,d,!1,h)}getPosition(c,g){return c.position!==void 0?c.position:g.lineOffsetToPosition(c.line,c.offset)}getPositionInFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(g);return this.getPosition(c,d)}getFileAndProject(c){return this.getFileAndProjectWorker(c.file,c.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(c){let{file:g,project:d}=this.getFileAndProject(c);return{file:g,languageService:d.getLanguageService(!1)}}getFileAndProjectWorker(c,g){let d=cp(c),h=this.getProject(g)||this.projectService.ensureDefaultProjectForFile(d);return{file:d,project:h}}getOutliningSpans(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getOutliningSpans(d);if(g){let S=this.projectService.getScriptInfoForNormalizedPath(d);return _.map(R=>({textSpan:LN(R.textSpan,S),hintSpan:LN(R.hintSpan,S),bannerText:R.bannerText,autoCollapse:R.autoCollapse,kind:R.kind}))}else return _}getTodoComments(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().getTodoComments(g,c.descriptors)}getDocCommentTemplate(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getDocCommentTemplateAtPosition(g,h,this.getPreferences(g),this.getFormatOptions(g))}getSpanOfEnclosingComment(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.onlyMultiLine,_=this.getPositionInFile(c,g);return d.getSpanOfEnclosingComment(g,_,h)}getIndentation(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=c.options?yse(c.options):this.getFormatOptions(g),S=d.getIndentationAtPosition(g,h,_);return{position:h,indentation:S}}getBreakpointStatement(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getBreakpointStatementAtPosition(g,h)}getNameOrDottedNameSpan(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getNameOrDottedNameSpan(g,h,h)}isValidBraceCompletion(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.isValidBraceCompletionAtPosition(g,h,c.openingBrace.charCodeAt(0))}getQuickInfoWorker(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPreferences(d),R=h.getLanguageService().getQuickInfoAtPosition(d,this.getPosition(c,_),S.maximumHoverLength,c.verbosityLevel);if(!R)return;let T=!!S.displayPartsForJSDoc;if(g){let O=$1e(R.displayParts);return{kind:R.kind,kindModifiers:R.kindModifiers,start:_.positionToLineOffset(R.textSpan.start),end:_.positionToLineOffset(Rs(R.textSpan)),displayString:O,documentation:T?this.mapDisplayParts(R.documentation,h):$1e(R.documentation),tags:this.mapJSDocTagInfo(R.tags,h,T),canIncreaseVerbosityLevel:R.canIncreaseVerbosityLevel}}else return T?R:{...R,tags:this.mapJSDocTagInfo(R.tags,h,!1)}}getFormattingEditsForRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=h.lineOffsetToPosition(c.endLine,c.endOffset),R=d.getFormattingEditsForRange(g,_,S,this.getFormatOptions(g));if(R)return R.map(T=>this.convertTextChangeToCodeEdit(T,h))}getFormattingEditsForRangeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?yse(c.options):this.getFormatOptions(g);return d.getFormattingEditsForRange(g,c.position,c.endPosition,h)}getFormattingEditsForDocumentFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?yse(c.options):this.getFormatOptions(g);return d.getFormattingEditsForDocument(g,h)}getFormattingEditsAfterKeystrokeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?yse(c.options):this.getFormatOptions(g);return d.getFormattingEditsAfterKeystroke(g,c.position,c.key,h)}getFormattingEditsAfterKeystroke(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=this.getFormatOptions(g),R=d.getFormattingEditsAfterKeystroke(g,_,c.key,S);if(c.key===` -`&&(!R||R.length===0||XOs(R,_))){let{lineText:T,absolutePosition:O}=h.textStorage.getAbsolutePositionAndLineText(c.line);if(T&&T.search("\\S")<0){let V=d.getIndentationAtPosition(g,_,S),M=0,ee,re;for(ee=0,re=T.length;ee({start:h.positionToLineOffset(T.span.start),end:h.positionToLineOffset(Rs(T.span)),newText:T.newText?T.newText:""}))}getCompletions(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getCompletionsAtPosition(d,S,{...CJt(this.getPreferences(d)),triggerCharacter:c.triggerCharacter,triggerKind:c.triggerKind,includeExternalModuleExports:c.includeExternalModuleExports,includeInsertTextCompletions:c.includeInsertTextCompletions},h.projectService.getFormatCodeOptions(d));if(R===void 0)return;if(g==="completions-full")return R;let T=c.prefix||"",O=Xt(R.entries,M=>{if(R.isMemberCompletion||Ac(M.name.toLowerCase(),T.toLowerCase())){let ee=M.replacementSpan?LN(M.replacementSpan,_):void 0;return{...M,replacementSpan:ee,hasAction:M.hasAction||void 0,symbol:void 0}}});return g==="completions"?(R.metadata&&(O.metadata=R.metadata),O):{...R,optionalReplacementSpan:R.optionalReplacementSpan&&LN(R.optionalReplacementSpan,_),entries:O}}getCompletionEntryDetails(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.projectService.getFormatCodeOptions(d),T=!!this.getPreferences(d).displayPartsForJSDoc,O=Xt(c.entryNames,V=>{let{name:M,source:ee,data:re}=typeof V=="string"?{name:V,source:void 0,data:void 0}:V;return h.getLanguageService().getCompletionEntryDetails(d,S,M,R,ee,this.getPreferences(d),re?Ma(re,oPs):void 0)});return g?T?O:O.map(V=>({...V,tags:this.mapJSDocTagInfo(V.tags,h,!1)})):O.map(V=>({...V,codeActions:lt(V.codeActions,M=>this.mapCodeAction(M)),documentation:this.mapDisplayParts(V.documentation,h),tags:this.mapJSDocTagInfo(V.tags,h,T)}))}getCompileOnSaveAffectedFileList(c){let g=this.getProjects(c,!0,!0),d=this.projectService.getScriptInfo(c.file);return d?UOs(d,h=>this.projectService.getScriptInfoForPath(h),g,(h,_)=>{if(!h.compileOnSaveEnabled||!h.languageServiceEnabled||h.isOrphan())return;let S=h.getCompilationSettings();if(!(S.noEmit||PC(_.fileName)&&!QOs(S)))return{projectFileName:h.getProjectName(),fileNames:h.getCompileOnSaveAffectedFileList(_),projectUsesOutFile:!!S.outFile}}):tC}emitFile(c){let{file:g,project:d}=this.getFileAndProject(c);if(d||zF.ThrowNoProject(),!d.languageServiceEnabled)return c.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let h=d.getScriptInfo(g),{emitSkipped:_,diagnostics:S}=d.emitFile(h,(R,T,O)=>this.host.writeFile(R,T,O));return c.richResponse?{emitSkipped:_,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):S.map(R=>T2e(R,!0))}:!_}getSignatureHelpItems(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getSignatureHelpItems(d,S,c),T=!!this.getPreferences(d).displayPartsForJSDoc;if(R&&g){let O=R.applicableSpan;return{...R,applicableSpan:{start:_.positionToLineOffset(O.start),end:_.positionToLineOffset(O.start+O.length)},items:this.mapSignatureHelpItems(R.items,h,T)}}else return T||!R?R:{...R,items:R.items.map(O=>({...O,tags:this.mapJSDocTagInfo(O.tags,h,!1)}))}}toPendingErrorCheck(c){let g=cp(c),d=this.projectService.tryGetDefaultProjectForFile(g);return d&&{fileName:g,project:d}}getDiagnostics(c,g,d){this.suppressDiagnosticEvents||d.length>0&&this.updateErrorCheck(c,d,g)}change(c){let g=this.projectService.getScriptInfo(c.file);pe.assert(!!g),g.textStorage.switchToScriptVersionCache();let d=g.lineOffsetToPosition(c.line,c.offset),h=g.lineOffsetToPosition(c.endLine,c.endOffset);d>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(g,qr({span:{start:d,length:h-d},newText:c.insertString})))}reload(c){let g=cp(c.file),d=c.tmpfile===void 0?void 0:cp(c.tmpfile),h=this.projectService.getScriptInfoForNormalizedPath(g);h&&(this.changeSeq++,h.reloadFromFile(d))}saveToTmp(c,g){let d=this.projectService.getScriptInfo(c);d&&d.saveTo(g)}closeClientFile(c){if(!c)return;let g=su(c);this.projectService.closeClientFile(g)}mapLocationNavigationBarItems(c,g){return lt(c,d=>({text:d.text,kind:d.kind,kindModifiers:d.kindModifiers,spans:d.spans.map(h=>LN(h,g)),childItems:this.mapLocationNavigationBarItems(d.childItems,g),indent:d.indent}))}getNavigationBarItems(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationBarItems(d);return _?g?this.mapLocationNavigationBarItems(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}toLocationNavigationTree(c,g){return{text:c.text,kind:c.kind,kindModifiers:c.kindModifiers,spans:c.spans.map(d=>LN(d,g)),nameSpan:c.nameSpan&&LN(c.nameSpan,g),childItems:lt(c.childItems,d=>this.toLocationNavigationTree(d,g))}}getNavigationTree(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationTree(d);return _?g?this.toLocationNavigationTree(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}getNavigateToItems(c,g){let d=this.getFullNavigateToItems(c);return g?jt(d,({project:h,navigateToItems:_})=>_.map(S=>{let R=h.getScriptInfo(S.fileName),T={name:S.name,kind:S.kind,kindModifiers:S.kindModifiers,isCaseSensitive:S.isCaseSensitive,matchKind:S.matchKind,file:S.fileName,start:R.positionToLineOffset(S.textSpan.start),end:R.positionToLineOffset(Rs(S.textSpan))};return S.kindModifiers&&S.kindModifiers!==""&&(T.kindModifiers=S.kindModifiers),S.containerName&&S.containerName.length>0&&(T.containerName=S.containerName),S.containerKind&&S.containerKind.length>0&&(T.containerKind=S.containerKind),T})):jt(d,({navigateToItems:h})=>h)}getFullNavigateToItems(c){let{currentFileOnly:g,searchValue:d,maxResultCount:h,projectFileName:_}=c;if(g){pe.assertIsDefined(c.file);let{file:ee,project:re}=this.getFileAndProject(c);return[{project:re,navigateToItems:re.getLanguageService().getNavigateToItems(d,h,ee)}]}let S=this.getHostPreferences(),R=[],T=new Map;if(!c.file&&!_)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(ee=>O(ee));else{let ee=this.getProjects(c);Tfn(ee,void 0,re=>O(re))}return R;function O(ee){let re=ee.getLanguageService().getNavigateToItems(d,h,void 0,ee.isNonTsProject(),S.excludeLibrarySymbolsInNavTo),ge=Le(re,Ie=>V(Ie)&&!rot(xpe(Ie),ee));ge.length&&R.push({project:ee,navigateToItems:ge})}function V(ee){let re=ee.name;if(!T.has(re))return T.set(re,[ee]),!0;let ge=T.get(re);for(let Ie of ge)if(M(Ie,ee))return!1;return ge.push(ee),!0}function M(ee,re){return ee===re?!0:!ee||!re?!1:ee.containerKind===re.containerKind&&ee.containerName===re.containerName&&ee.fileName===re.fileName&&ee.isCaseSensitive===re.isCaseSensitive&&ee.kind===re.kind&&ee.kindModifiers===re.kindModifiers&&ee.matchKind===re.matchKind&&ee.name===re.name&&ee.textSpan.start===re.textSpan.start&&ee.textSpan.length===re.textSpan.length}}getSupportedCodeFixes(c){if(!c)return Cit();if(c.file){let{file:d,project:h}=this.getFileAndProject(c);return h.getLanguageService().getSupportedCodeFixes(d)}let g=this.getProject(c.projectFileName);return g||zF.ThrowNoProject(),g.getLanguageService().getSupportedCodeFixes()}isLocation(c){return c.line!==void 0}extractPositionOrRange(c,g){let d,h;return this.isLocation(c)?d=_(c):h=this.getRange(c,g),pe.checkDefined(d===void 0?h:d);function _(S){return S.position!==void 0?S.position:g.lineOffsetToPosition(S.line,S.offset)}}getRange(c,g){let{startPosition:d,endPosition:h}=this.getStartAndEndPosition(c,g);return{pos:d,end:h}}getApplicableRefactors(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getApplicableRefactors(g,this.extractPositionOrRange(c,h),this.getPreferences(g),c.triggerReason,c.kind,c.includeInteractiveActions).map(S=>({...S,actions:S.actions.map(R=>({...R,range:R.range?{start:bse({line:R.range.start.line,character:R.range.start.offset}),end:bse({line:R.range.end.line,character:R.range.end.offset})}:void 0}))}))}getEditsForRefactor(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),S=h.getLanguageService().getEditsForRefactor(d,this.getFormatOptions(d),this.extractPositionOrRange(c,_),c.refactor,c.action,this.getPreferences(d),c.interactiveRefactorArguments);if(S===void 0)return{edits:[]};if(g){let{renameFilename:R,renameLocation:T,edits:O}=S,V;if(R!==void 0&&T!==void 0){let M=h.getScriptInfoForNormalizedPath(cp(R));V=WJt(zz(M.getSnapshot()),R,T,O)}return{renameLocation:V,renameFilename:R,edits:this.mapTextChangesToCodeEdits(O),notApplicableReason:S.notApplicableReason}}return S}getMoveToRefactoringFileSuggestions(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getMoveToRefactoringFileSuggestions(g,this.extractPositionOrRange(c,h),this.getPreferences(g))}preparePasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().preparePasteEditsForFile(g,c.copiedTextSpan.map(h=>this.getRange({file:g,startLine:h.start.line,startOffset:h.start.offset,endLine:h.end.line,endOffset:h.end.offset},this.projectService.getScriptInfoForNormalizedPath(g))))}getPasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);if(Dpe(g))return;let h=c.copiedFrom?{file:c.copiedFrom.file,range:c.copiedFrom.spans.map(S=>this.getRange({file:c.copiedFrom.file,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(cp(c.copiedFrom.file))))}:void 0,_=d.getLanguageService().getPasteEdits({targetFile:g,pastedText:c.pastedText,pasteLocations:c.pasteLocations.map(S=>this.getRange({file:g,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(g))),copiedFrom:h,preferences:this.getPreferences(g)},this.getFormatOptions(g));return _&&this.mapPasteEditsAction(_)}organizeImports(c,g){pe.assert(c.scope.type==="file");let{file:d,project:h}=this.getFileAndProject(c.scope.args),_=h.getLanguageService().organizeImports({fileName:d,mode:c.mode??(c.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(d),this.getPreferences(d));return g?this.mapTextChangesToCodeEdits(_):_}getEditsForFileRename(c,g){let d=cp(c.oldFilePath),h=cp(c.newFilePath),_=this.getHostFormatOptions(),S=this.getHostPreferences(),R=new Set,T=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(O=>{let V=O.getLanguageService().getEditsForFileRename(d,h,_,S),M=[];for(let ee of V)R.has(ee.fileName)||(T.push(ee),M.push(ee.fileName));for(let ee of M)R.add(ee)}),g?T.map(O=>this.mapTextChangeToCodeEdit(O)):T}getCodeFixes(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),{startPosition:S,endPosition:R}=this.getStartAndEndPosition(c,_),T;try{T=h.getLanguageService().getCodeFixesAtPosition(d,S,R,c.errorCodes,this.getFormatOptions(d),this.getPreferences(d))}catch(O){let V=O instanceof Error?O:new Error(O),M=h.getLanguageService(),ee=[...M.getSyntacticDiagnostics(d),...M.getSemanticDiagnostics(d),...M.getSuggestionDiagnostics(d)].filter(ge=>CE(S,R-S,ge.start,ge.length)).map(ge=>ge.code),re=c.errorCodes.find(ge=>!ee.includes(ge));throw re!==void 0&&(V.message+=` -Additional information: BADCLIENT: Bad error code, ${re} not found in range ${S}..${R} (found: ${ee.join(", ")})`),V}return g?T.map(O=>this.mapCodeFixAction(O)):T}getCombinedCodeFix({scope:c,fixId:g},d){pe.assert(c.type==="file");let{file:h,project:_}=this.getFileAndProject(c.args),S=_.getLanguageService().getCombinedCodeFix({type:"file",fileName:h},g,this.getFormatOptions(h),this.getPreferences(h));return d?{changes:this.mapTextChangesToCodeEdits(S.changes),commands:S.commands}:S}applyCodeActionCommand(c){let g=c.command;for(let d of cc(g)){let{file:h,project:_}=this.getFileAndProject(d);_.getLanguageService().applyCodeActionCommand(d,this.getFormatOptions(h)).then(S=>{},S=>{})}return{}}getStartAndEndPosition(c,g){let d,h;return c.startPosition!==void 0?d=c.startPosition:(d=g.lineOffsetToPosition(c.startLine,c.startOffset),c.startPosition=d),c.endPosition!==void 0?h=c.endPosition:(h=g.lineOffsetToPosition(c.endLine,c.endOffset),c.endPosition=h),{startPosition:d,endPosition:h}}mapCodeAction({description:c,changes:g,commands:d}){return{description:c,changes:this.mapTextChangesToCodeEdits(g),commands:d}}mapCodeFixAction({fixName:c,description:g,changes:d,commands:h,fixId:_,fixAllDescription:S}){return{fixName:c,description:g,changes:this.mapTextChangesToCodeEdits(d),commands:h,fixId:_,fixAllDescription:S}}mapPasteEditsAction({edits:c,fixId:g}){return{edits:this.mapTextChangesToCodeEdits(c),fixId:g}}mapTextChangesToCodeEdits(c){return c.map(g=>this.mapTextChangeToCodeEdit(g))}mapTextChangeToCodeEdit(c){let g=this.projectService.getScriptInfoOrConfig(c.fileName);return!!c.isNewFile==!!g&&(g||this.projectService.logErrorForScriptInfoNotFound(c.fileName),pe.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!c.isNewFile,hasScriptInfo:!!g}))),g?{fileName:c.fileName,textChanges:c.textChanges.map(d=>ePs(d,g))}:nPs(c)}convertTextChangeToCodeEdit(c,g){return{start:g.positionToLineOffset(c.span.start),end:g.positionToLineOffset(c.span.start+c.span.length),newText:c.newText?c.newText:""}}getBraceMatching(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getBraceMatchingAtPosition(d,S);return R?g?R.map(T=>LN(T,_)):R:void 0}getDiagnosticsForProject(c,g,d){if(this.suppressDiagnosticEvents)return;let{fileNames:h,languageServiceDisabled:_}=this.getProjectInfoWorker(d,void 0,!0,void 0,!0);if(_)return;let S=h.filter(Ie=>!Ie.includes("lib.d.ts"));if(S.length===0)return;let R=[],T=[],O=[],V=[],M=cp(d),ee=this.projectService.ensureDefaultProjectForFile(M);for(let Ie of S)this.getCanonicalFileName(Ie)===this.getCanonicalFileName(d)?R.push(Ie):this.projectService.getScriptInfo(Ie).isScriptOpen()?T.push(Ie):PC(Ie)?V.push(Ie):O.push(Ie);let ge=[...R,...T,...O,...V].map(Ie=>({fileName:Ie,project:ee}));this.updateErrorCheck(c,ge,g,!1)}configurePlugin(c){this.projectService.configurePlugin(c)}getSmartSelectionRange(c,g){let{locations:d}=c,{file:h,languageService:_}=this.getFileAndLanguageServiceForSyntacticOperation(c),S=pe.checkDefined(this.projectService.getScriptInfo(h));return lt(d,R=>{let T=this.getPosition(R,S),O=_.getSmartSelectionRange(h,T);return g?this.mapSelectionRange(O,S):O})}toggleLineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfo(d),S=this.getRange(c,_),R=h.toggleLineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}toggleMultilineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.toggleMultilineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}commentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.commentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}uncommentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.uncommentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}mapSelectionRange(c,g){let d={textSpan:LN(c.textSpan,g)};return c.parent&&(d.parent=this.mapSelectionRange(c.parent,g)),d}getScriptInfoFromProjectService(c){let g=cp(c),d=this.projectService.getScriptInfoForNormalizedPath(g);return d||(this.projectService.logErrorForScriptInfoNotFound(g),zF.ThrowNoProject())}toProtocolCallHierarchyItem(c){let g=this.getScriptInfoFromProjectService(c.file);return{name:c.name,kind:c.kind,kindModifiers:c.kindModifiers,file:c.file,containerName:c.containerName,span:LN(c.span,g),selectionSpan:LN(c.selectionSpan,g)}}toProtocolCallHierarchyIncomingCall(c){let g=this.getScriptInfoFromProjectService(c.from.file);return{from:this.toProtocolCallHierarchyItem(c.from),fromSpans:c.fromSpans.map(d=>LN(d,g))}}toProtocolCallHierarchyOutgoingCall(c,g){return{to:this.toProtocolCallHierarchyItem(c.to),fromSpans:c.fromSpans.map(d=>LN(d,g))}}prepareCallHierarchy(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);if(h){let _=this.getPosition(c,h),S=d.getLanguageService().prepareCallHierarchy(g,_);return S&&Rnt(S,R=>this.toProtocolCallHierarchyItem(R))}}provideCallHierarchyIncomingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyIncomingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyIncomingCall(S))}provideCallHierarchyOutgoingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyOutgoingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyOutgoingCall(S,h))}getCanonicalFileName(c){let g=this.host.useCaseSensitiveFileNames?c:Qm(c);return su(g)}exit(){}notRequired(c){return c&&this.doOutput(void 0,c.command,c.seq,!0,this.performanceData),{responseRequired:!1,performanceData:this.performanceData}}requiredResponse(c){return{response:c,responseRequired:!0,performanceData:this.performanceData}}addProtocolHandler(c,g){if(this.handlers.has(c))throw new Error(`Protocol handler already exists for command "${c}"`);this.handlers.set(c,g)}setCurrentRequest(c){pe.assert(this.currentRequestId===void 0),this.currentRequestId=c,this.cancellationToken.setRequest(c)}resetCurrentRequest(c){pe.assert(this.currentRequestId===c),this.currentRequestId=void 0,this.cancellationToken.resetRequest(c)}executeWithRequestId(c,g,d){let h=this.performanceData;try{return this.performanceData=d,this.setCurrentRequest(c),g()}finally{this.resetCurrentRequest(c),this.performanceData=h}}executeCommand(c){let g=this.handlers.get(c.command);if(g){let d=this.executeWithRequestId(c.seq,()=>g(c),void 0);return this.projectService.enableRequestedPlugins(),d}else return this.logger.msg(`Unrecognized JSON command:${n5(c)}`,"Err"),this.doOutput(void 0,"unknown",c.seq,!1,void 0,`Unrecognized JSON command: ${c.command}`),{responseRequired:!1}}onMessage(c){var g,d,h,_,S,R,T;this.gcTimer.scheduleCollect();let O,V=this.performanceData;this.logger.hasLevel(2)&&(O=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${npe(this.toStringMessage(c))}`));let M,ee;try{M=this.parseMessage(c),ee=M.arguments&&M.arguments.file?M.arguments:void 0,(g=ki)==null||g.instant(ki.Phase.Session,"request",{seq:M.seq,command:M.command}),(d=ki)==null||d.push(ki.Phase.Session,"executeCommand",{seq:M.seq,command:M.command},!0);let{response:re,responseRequired:ge,performanceData:Ie}=this.executeCommand(M);if((h=ki)==null||h.pop(),this.logger.hasLevel(2)){let _e=YOs(this.hrtime(O)).toFixed(4);ge?this.logger.perftrc(`${M.seq}::${M.command}: elapsed time (in milliseconds) ${_e}`):this.logger.perftrc(`${M.seq}::${M.command}: async elapsed time (in milliseconds) ${_e}`)}(_=ki)==null||_.instant(ki.Phase.Session,"response",{seq:M.seq,command:M.command,success:!!re}),re?this.doOutput(re,M.command,M.seq,!0,Ie):ge&&this.doOutput(void 0,M.command,M.seq,!1,Ie,"No content available.")}catch(re){if((S=ki)==null||S.popAll(),re instanceof Ty){(R=ki)==null||R.instant(ki.Phase.Session,"commandCanceled",{seq:M?.seq,command:M?.command}),this.doOutput({canceled:!0},M.command,M.seq,!0,this.performanceData);return}this.logErrorWorker(re,this.toStringMessage(c),ee),(T=ki)==null||T.instant(ki.Phase.Session,"commandError",{seq:M?.seq,command:M?.command,message:re.message}),this.doOutput(void 0,M?M.command:"unknown",M?M.seq:0,!1,this.performanceData,"Error processing request. "+re.message+` -`+re.stack)}finally{this.performanceData=V}}parseMessage(c){return JSON.parse(c)}toStringMessage(c){return c}getFormatOptions(c){return this.projectService.getFormatCodeOptions(c)}getPreferences(c){return this.projectService.getPreferences(c)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function Ffn(s){let c=s.diagnosticsDuration&&Do(s.diagnosticsDuration,([g,d])=>({...d,file:g}));return{...s,diagnosticsDuration:c}}function LN(s,c){return{start:c.positionToLineOffset(s.start),end:c.positionToLineOffset(Rs(s))}}function VJt(s,c,g){let d=LN(s,g),h=c&&LN(c,g);return h?{...d,contextStart:h.start,contextEnd:h.end}:d}function ePs(s,c){return{start:Zfn(c,s.span.start),end:Zfn(c,Rs(s.span)),newText:s.newText}}function Zfn(s,c){return DJt(s)?rPs(s.getLineAndCharacterOfPosition(c)):s.positionToLineOffset(c)}function tPs(s,c){let g=s.ranges.map(d=>({start:c.positionToLineOffset(d.start),end:c.positionToLineOffset(d.start+d.length)}));return s.wordPattern?{ranges:g,wordPattern:s.wordPattern}:{ranges:g}}function rPs(s){return{line:s.line+1,offset:s.character+1}}function nPs(s){pe.assert(s.textChanges.length===1);let c=ma(s.textChanges);return pe.assert(c.span.start===0&&c.span.length===0),{fileName:s.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:c.newText}]}}function WJt(s,c,g,d){let h=iPs(s,c,d),{line:_,character:S}=Ci(lA(h),g);return{line:_+1,offset:S+1}}function iPs(s,c,g){for(let{fileName:d,textChanges:h}of g)if(d===c)for(let _=h.length-1;_>=0;_--){let{newText:S,span:{start:R,length:T}}=h[_];s=s.slice(0,R)+S+s.slice(R+T)}return s}function Lfn(s,{fileName:c,textSpan:g,contextSpan:d,isWriteAccess:h,isDefinition:_},{disableLineTextInReferences:S}){let R=pe.checkDefined(s.getScriptInfo(c)),T=VJt(g,d,R),O=S?void 0:sPs(R,T);return{file:c,...T,lineText:O,isWriteAccess:h,isDefinition:_}}function sPs(s,c){let g=s.lineToTextSpan(c.start.line-1);return s.getSnapshot().getText(g.start,Rs(g)).replace(/\r|\n/g,"")}function oPs(s){return s===void 0||s&&typeof s=="object"&&typeof s.exportName=="string"&&(s.fileName===void 0||typeof s.fileName=="string")&&(s.ambientModuleName===void 0||typeof s.ambientModuleName=="string"&&(s.isPackageJsonImport===void 0||typeof s.isPackageJsonImport=="boolean"))}var Ese=4,OJt=(s=>(s[s.PreStart=0]="PreStart",s[s.Start=1]="Start",s[s.Entire=2]="Entire",s[s.Mid=3]="Mid",s[s.End=4]="End",s[s.PostEnd=5]="PostEnd",s))(OJt||{}),aPs=class{constructor(){this.goSubtree=!0,this.lineIndex=new R2e,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new Sse,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(s,c){c&&(this.trailingText=""),s?s=this.initialText+s+this.trailingText:s=this.initialText+this.trailingText;let d=R2e.linesFromText(s).lines;d.length>1&&d[d.length-1]===""&&d.pop();let h,_;for(let R=this.endBranch.length-1;R>=0;R--)this.endBranch[R].updateCounts(),this.endBranch[R].charCount()===0&&(_=this.endBranch[R],R>0?h=this.endBranch[R-1]:h=this.branchNode);_&&h.remove(_);let S=this.startPath[this.startPath.length-1];if(d.length>0)if(S.text=d[0],d.length>1){let R=new Array(d.length-1),T=S;for(let M=1;M=0;){let M=this.startPath[O];R=M.insertAt(T,R),O--,T=M}let V=R.length;for(;V>0;){let M=new Sse;M.add(this.lineIndex.root),R=M.insertAt(this.lineIndex.root,R),V=R.length,this.lineIndex.root=M}this.lineIndex.root.updateCounts()}else for(let R=this.startPath.length-2;R>=0;R--)this.startPath[R].updateCounts();else{this.startPath[this.startPath.length-2].remove(S);for(let T=this.startPath.length-2;T>=0;T--)this.startPath[T].updateCounts()}return this.lineIndex}post(s,c,g){g===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(s,c,g,d,h){let _=this.stack[this.stack.length-1];this.state===2&&h===1&&(this.state=1,this.branchNode=_,this.lineCollectionAtBranch=g);let S;function R(T){return T.isLeaf()?new DOe(""):new Sse}switch(h){case 0:this.goSubtree=!1,this.state!==4&&_.add(g);break;case 1:this.state===4?this.goSubtree=!1:(S=R(g),_.add(S),this.startPath.push(S));break;case 2:this.state!==4?(S=R(g),_.add(S),this.startPath.push(S)):g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 5:this.goSubtree=!1,this.state!==1&&_.add(g);break}this.goSubtree&&this.stack.push(S)}leaf(s,c,g){this.state===1?this.initialText=g.text.substring(0,s):this.state===2?(this.initialText=g.text.substring(0,s),this.trailingText=g.text.substring(s+c)):this.trailingText=g.text.substring(s+c)}},cPs=class{constructor(s,c,g){this.pos=s,this.deleteLen=c,this.insertedText=g}getTextChangeRange(){return nS($d(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},not=class F6{constructor(){this.changes=[],this.versions=new Array(F6.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(c){if(!(cthis.currentVersion))return c%F6.maxVersions}currentVersionToIndex(){return this.currentVersion%F6.maxVersions}edit(c,g,d){this.changes.push(new cPs(c,g,d)),(this.changes.length>F6.changeNumberThreshold||g>F6.changeLengthThreshold||d&&d.length>F6.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let c=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let g=c.index;for(let d of this.changes)g=g.edit(d.pos,d.deleteLen,d.insertedText);c=new Vfn(this.currentVersion+1,this,g,this.changes),this.currentVersion=c.version,this.versions[this.currentVersionToIndex()]=c,this.changes=[],this.currentVersion-this.minVersion>=F6.maxVersions&&(this.minVersion=this.currentVersion-F6.maxVersions+1)}return c}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(c){return this._getSnapshot().index.lineNumberToInfo(c)}lineOffsetToPosition(c,g){return this._getSnapshot().index.absolutePositionOfStartOfLine(c)+(g-1)}positionToLineOffset(c){return this._getSnapshot().index.positionToLineOffset(c)}lineToTextSpan(c){let g=this._getSnapshot().index,{lineText:d,absolutePosition:h}=g.lineNumberToInfo(c+1),_=d!==void 0?d.length:g.absolutePositionOfStartOfLine(c+2)-h;return $d(h,_)}getTextChangesBetweenVersions(c,g){if(c=this.minVersion){let d=[];for(let h=c+1;h<=g;h++){let _=this.versions[this.versionToIndex(h)];for(let S of _.changesSincePreviousVersion)d.push(S.getTextChangeRange())}return z(d)}else return;else return Eo}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(c){let g=new F6,d=new Vfn(0,g,new R2e);g.versions[g.currentVersion]=d;let h=R2e.linesFromText(c);return d.index.load(h.lines),g}};not.changeNumberThreshold=8,not.changeLengthThreshold=256,not.maxVersions=8;var iot=not,Vfn=class Rki{constructor(c,g,d,h=tC){this.version=c,this.cache=g,this.index=d,this.changesSincePreviousVersion=h}getText(c,g){return this.index.getText(c,g-c)}getLength(){return this.index.getLength()}getChangeRange(c){if(c instanceof Rki&&this.cache===c.cache)return this.version<=c.version?Eo:this.cache.getTextChangesBetweenVersions(c.version,this.version)}},R2e=class Wxr{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(c){return this.lineNumberToInfo(c).absolutePosition}positionToLineOffset(c){let{oneBasedLine:g,zeroBasedColumn:d}=this.root.charOffsetToLineInfo(1,c);return{line:g,offset:d+1}}positionToColumnAndLineText(c){return this.root.charOffsetToLineInfo(1,c)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(c){let g=this.getLineCount();if(c<=g){let{position:d,leaf:h}=this.root.lineNumberToInfo(c,0);return{absolutePosition:d,lineText:h&&h.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(c){if(c.length>0){let g=[];for(let d=0;d0&&c{d=d.concat(S.text.substring(h,h+_))}}),d}getLength(){return this.root.charCount()}every(c,g,d){d||(d=this.root.charCount());let h={goSubtree:!0,done:!1,leaf(_,S,R){c(R,_,S)||(this.done=!0)}};return this.walk(g,d-g,h),!h.done}edit(c,g,d){if(this.root.charCount()===0)return pe.assert(g===0),d!==void 0?(this.load(Wxr.linesFromText(d).lines),this):void 0;{let h;if(this.checkEdits){let R=this.getText(0,this.root.charCount());h=R.slice(0,c)+d+R.slice(c+g)}let _=new aPs,S=!1;if(c>=this.root.charCount()){c=this.root.charCount()-1;let R=this.getText(c,1);d?d=R+d:d=R,g=0,S=!0}else if(g>0){let R=c+g,{zeroBasedColumn:T,lineText:O}=this.positionToColumnAndLineText(R);T===0&&(g+=O.length,d=d?d+O:O)}if(this.root.walk(c,g,_),_.insertLines(d,S),this.checkEdits){let R=_.lineIndex.getText(0,_.lineIndex.getLength());pe.assert(h===R,"buffer edit mismatch")}return _.lineIndex}}static buildTreeFromBottom(c){if(c.length0?d[h]=_:d.pop(),{lines:d,lineMap:g}}},Sse=class Oxr{constructor(c=[]){this.children=c,this.totalChars=0,this.totalLines=0,c.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let c of this.children)this.totalChars+=c.charCount(),this.totalLines+=c.lineCount()}execWalk(c,g,d,h,_){return d.pre&&d.pre(c,g,this.children[h],this,_),d.goSubtree?(this.children[h].walk(c,g,d),d.post&&d.post(c,g,this.children[h],this,_)):d.goSubtree=!0,d.done}skipChild(c,g,d,h,_){h.pre&&!h.done&&(h.pre(c,g,this.children[d],this,_),h.goSubtree=!0)}walk(c,g,d){if(this.children.length===0)return;let h=0,_=this.children[h].charCount(),S=c;for(;S>=_;)this.skipChild(S,g,h,d,0),S-=_,h++,_=this.children[h].charCount();if(S+g<=_){if(this.execWalk(S,g,d,h,2))return}else{if(this.execWalk(S,_-S,d,h,1))return;let R=g-(_-S);for(h++,_=this.children[h].charCount();R>_;){if(this.execWalk(0,_,d,h,3))return;R-=_,h++,_=this.children[h].charCount()}if(R>0&&this.execWalk(0,R,d,h,4))return}if(d.pre){let R=this.children.length;if(hg)return _.isLeaf()?{oneBasedLine:c,zeroBasedColumn:g,lineText:_.text}:_.charOffsetToLineInfo(c,g);g-=_.charCount(),c+=_.lineCount()}let d=this.lineCount();if(d===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let h=pe.checkDefined(this.lineNumberToInfo(d,0).leaf);return{oneBasedLine:d,zeroBasedColumn:h.charCount(),lineText:void 0}}lineNumberToInfo(c,g){for(let d of this.children){let h=d.lineCount();if(h>=c)return d.isLeaf()?{position:g,leaf:d}:d.lineNumberToInfo(c,g);c-=h,g+=d.charCount()}return{position:g,leaf:void 0}}splitAfter(c){let g,d=this.children.length;c++;let h=c;if(c=0;ee--)T[ee].children.length===0&&T.pop()}S&&T.push(S),this.updateCounts();for(let V=0;V{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:h,reject:_})});return this.installer.send(g),d}attach(c){this.projectService=c,this.installer=this.createInstallerProcess()}onProjectClosed(c){this.installer.send({projectName:c.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(c,g,d){let h=J4t(c,g,d);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${n5(h)}`),this.activeRequestCount0?this.activeRequestCount--:pe.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){let h=this.requestQueue.dequeue();if(this.requestMap.get(h.projectName)===h){this.requestMap.delete(h.projectName),this.scheduleRequest(h);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${h.projectName}`)}this.projectService.updateTypingsForProject(c),this.event(c,"setTypings");break}case v1e:this.projectService.watchTypingLocations(c);break;default:}}scheduleRequest(c){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${c.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${n5(c)}`),this.installer.send(c)},Nki.requestDelayMillis,`${c.projectName}::${c.kind}`)}};Wfn.requestDelayMillis=100;var Ofn=Wfn,Pfn={};o(Pfn,{ActionInvalidate:()=>KVe,ActionPackageInstalled:()=>jVe,ActionSet:()=>UVe,ActionWatchTypingLocations:()=>v1e,Arguments:()=>Drt,AutoImportProviderProject:()=>pJt,AuxiliaryProject:()=>AJt,CharRangeSection:()=>OJt,CloseFileWatcherEvent:()=>Xst,CommandNames:()=>Bfn,ConfigFileDiagEvent:()=>Pst,ConfiguredProject:()=>fJt,ConfiguredProjectLoadKind:()=>yJt,CreateDirectoryWatcherEvent:()=>Qst,CreateFileWatcherEvent:()=>Yst,Errors:()=>zF,EventBeginInstallTypes:()=>Rrt,EventEndInstallTypes:()=>Nrt,EventInitializationFailed:()=>$5t,EventTypesRegistry:()=>Trt,ExternalProject:()=>Fst,GcTimer:()=>eJt,InferredProject:()=>gJt,LargeFileReferencedEvent:()=>Ost,LineIndex:()=>R2e,LineLeaf:()=>DOe,LineNode:()=>Sse,LogLevel:()=>Q4t,Msg:()=>X4t,OpenFileInfoTelemetryEvent:()=>IJt,Project:()=>gq,ProjectInfoTelemetryEvent:()=>Hst,ProjectKind:()=>kpe,ProjectLanguageServiceStateEvent:()=>Mst,ProjectLoadingFinishEvent:()=>Wst,ProjectLoadingStartEvent:()=>Vst,ProjectService:()=>NJt,ProjectsUpdatedInBackgroundEvent:()=>TOe,ScriptInfo:()=>iJt,ScriptVersionCache:()=>iot,Session:()=>Gfn,TextStorage:()=>nJt,ThrottledOperations:()=>$4t,TypingsInstallerAdapter:()=>Ofn,allFilesAreJsOrDts:()=>cJt,allRootFilesAreJsOrDts:()=>aJt,asNormalizedPath:()=>qpn,convertCompilerOptions:()=>ROe,convertFormatOptions:()=>yse,convertScriptKindName:()=>Ust,convertTypeAcquisition:()=>mJt,convertUserPreferences:()=>CJt,convertWatchOptions:()=>w2e,countEachFileTypes:()=>E2e,createInstallTypingsRequest:()=>J4t,createModuleSpecifierCache:()=>xJt,createNormalizedPathMap:()=>$pn,createPackageJsonCache:()=>GJt,createSortedArray:()=>q4t,emptyArray:()=>tC,findArgument:()=>qnn,formatDiagnosticToProtocol:()=>T2e,formatMessage:()=>FJt,getBaseConfigFileName:()=>Gst,getDetailWatchInfo:()=>qst,getLocationInNewDocument:()=>WJt,hasArgument:()=>znn,hasNoTypeScriptSource:()=>lJt,indent:()=>npe,isBackgroundProject:()=>v2e,isConfigFile:()=>DJt,isConfiguredProject:()=>g9,isDynamicFileName:()=>Dpe,isExternalProject:()=>S2e,isInferredProject:()=>_se,isInferredProjectName:()=>U4t,isProjectDeferredClose:()=>B2e,makeAutoImportProviderProjectName:()=>j4t,makeAuxiliaryProjectName:()=>z4t,makeInferredProjectName:()=>K4t,maxFileSize:()=>Lst,maxProgramSizeForNonTsFiles:()=>Zst,normalizedPathToPath:()=>Cse,nowString:()=>$nn,nullCancellationToken:()=>Efn,nullTypingsInstaller:()=>NOe,protocol:()=>tJt,scriptInfoIsContainedByBackgroundProject:()=>sJt,scriptInfoIsContainedByDeferredClosedProject:()=>oJt,stringifyIndented:()=>n5,toEvent:()=>ZJt,toNormalizedPath:()=>cp,tryConvertScriptKindName:()=>Jst,typingsInstaller:()=>Y4t,updateProjectIfDirty:()=>Sv}),typeof console<"u"&&(pe.loggingHost={log(s,c){switch(s){case 1:return console.error(c);case 2:return console.warn(c);case 3:return console.log(c);case 4:return console.log(c)}}})})({get exports(){return Eki},set exports(e){Eki=e,typeof w1t<"u"&&w1t.exports&&(w1t.exports=e)}})});var lGi=H((yGu,cGi)=>{"use strict";var oGi=Et("path"),rpc=bjt(),npc=Sjt();function aGi(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=rpc.sync(e.command,{path:r[npc({env:r})],pathExt:t?oGi.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=oGi.resolve(a?e.options.cwd:"",l)),l}function ipc(e){return aGi(e)||aGi(e,!0)}cGi.exports=ipc});var uGi=H((bGu,dGr)=>{"use strict";var AGr=/([()\][%!^"`<>&|;, *?])/g;function spc(e){return e=e.replace(AGr,"^$1"),e}function opc(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace(AGr,"^$1"),t&&(e=e.replace(AGr,"^$1")),e}dGr.exports.command=spc;dGr.exports.argument=opc});var AGi=H((EGu,gGi)=>{"use strict";var pGr=Et("fs"),apc=wjt();function cpc(e){let r=Buffer.alloc(150),n;try{n=pGr.openSync(e,"r"),pGr.readSync(n,r,0,150,0),pGr.closeSync(n)}catch{}return apc(r.toString())}gGi.exports=cpc});var IGi=H((SGu,fGi)=>{"use strict";var lpc=Et("path"),dGi=lGi(),pGi=uGi(),upc=AGi(),gpc=process.platform==="win32",Apc=/\.(?:com|exe)$/i,dpc=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function ppc(e){e.file=dGi(e);let t=e.file&&upc(e.file);return t?(e.args.unshift(e.file),e.command=t,dGi(e)):e.file}function fpc(e){if(!gpc)return e;let t=ppc(e),r=!Apc.test(t);if(e.options.forceShell||r){let n=dpc.test(t);e.command=lpc.normalize(e.command),e.command=pGi.command(e.command),e.args=e.args.map(o=>pGi.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function Ipc(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:fpc(n)}fGi.exports=Ipc});var CGi=H((vGu,mGi)=>{"use strict";var fGr=process.platform==="win32";function IGr(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function hpc(e,t){if(!fGr)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=hGi(a,t,"spawn");if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function hGi(e,t){return fGr&&e===1&&!t.file?IGr(t.original,"spawn"):null}function mpc(e,t){return fGr&&e===1&&!t.file?IGr(t.original,"spawnSync"):null}mGi.exports={hookChildProcess:hpc,verifyENOENT:hGi,verifyENOENTSync:mpc,notFoundError:IGr}});var bGi=H((BGu,vDe)=>{"use strict";var _Gi=Et("child_process"),hGr=IGi(),mGr=CGi();function yGi(e,t,r){let n=hGr(e,t,r),a=_Gi.spawn(n.command,n.args,n.options);return mGr.hookChildProcess(a,n),a}function Cpc(e,t,r){let n=hGr(e,t,r),a=_Gi.spawnSync(n.command,n.args,n.options);return a.error=a.error||mGr.verifyENOENTSync(a.status,n),a}vDe.exports=yGi;vDe.exports.spawn=yGi;vDe.exports.sync=Cpc;vDe.exports._parse=hGr;vDe.exports._enoent=mGr});var CGr=H((wGu,EGi)=>{"use strict";EGi.exports=function(t,r){return function(){for(var a=new Array(arguments.length),o=0;o{"use strict";var _pc=CGr(),LCe=Object.prototype.toString;function bGr(e){return LCe.call(e)==="[object Array]"}function _Gr(e){return typeof e>"u"}function ypc(e){return e!==null&&!_Gr(e)&&e.constructor!==null&&!_Gr(e.constructor)&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function bpc(e){return LCe.call(e)==="[object ArrayBuffer]"}function Epc(e){return typeof FormData<"u"&&e instanceof FormData}function Spc(e){var t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function vpc(e){return typeof e=="string"}function Bpc(e){return typeof e=="number"}function SGi(e){return e!==null&&typeof e=="object"}function V1t(e){if(LCe.call(e)!=="[object Object]")return!1;var t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function wpc(e){return LCe.call(e)==="[object Date]"}function Tpc(e){return LCe.call(e)==="[object File]"}function Rpc(e){return LCe.call(e)==="[object Blob]"}function vGi(e){return LCe.call(e)==="[object Function]"}function Npc(e){return SGi(e)&&vGi(e.pipe)}function Dpc(e){return typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function kpc(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function xpc(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function EGr(e,t){if(!(e===null||typeof e>"u"))if(typeof e!="object"&&(e=[e]),bGr(e))for(var r=0,n=e.length;r{"use strict";var BDe=iL();function wGi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}TGi.exports=function(t,r,n){if(!r)return t;var a;if(n)a=n(r);else if(BDe.isURLSearchParams(r))a=r.toString();else{var o=[];BDe.forEach(r,function(f,I){f===null||typeof f>"u"||(BDe.isArray(f)?I=I+"[]":f=[f],BDe.forEach(f,function(b){BDe.isDate(b)?b=b.toISOString():BDe.isObject(b)&&(b=JSON.stringify(b)),o.push(wGi(I)+"="+wGi(b))}))}),a=o.join("&")}if(a){var l=t.indexOf("#");l!==-1&&(t=t.slice(0,l)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}});var NGi=H((NGu,RGi)=>{"use strict";var Zpc=iL();function O1t(){this.handlers=[]}O1t.prototype.use=function(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1};O1t.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)};O1t.prototype.forEach=function(t){Zpc.forEach(this.handlers,function(n){n!==null&&t(n)})};RGi.exports=O1t});var kGi=H((DGu,DGi)=>{"use strict";var Lpc=iL();DGi.exports=function(t,r){Lpc.forEach(t,function(a,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(t[r]=a,delete t[o])})}});var P1t=H((kGu,xGi)=>{"use strict";xGi.exports=function(t,r,n,a,o){return t.config=r,n&&(t.code=n),t.request=a,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}});var M1t=H((xGu,GGi)=>{"use strict";var Vpc=P1t();GGi.exports=function(t,r,n,a,o){var l=new Error(t);return Vpc(l,r,n,a,o)}});var SGr=H((GGu,FGi)=>{"use strict";var Wpc=M1t();FGi.exports=function(t,r,n){var a=n.config.validateStatus;!n.status||!a||a(n.status)?t(n):r(Wpc("Request failed with status code "+n.status,n.config,null,n.request,n))}});var LGi=H((FGu,ZGi)=>{"use strict";var H1t=iL();ZGi.exports=H1t.isStandardBrowserEnv()?function(){return{write:function(r,n,a,o,l,A){var f=[];f.push(r+"="+encodeURIComponent(n)),H1t.isNumber(a)&&f.push("expires="+new Date(a).toGMTString()),H1t.isString(o)&&f.push("path="+o),H1t.isString(l)&&f.push("domain="+l),A===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var WGi=H((ZGu,VGi)=>{"use strict";VGi.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}});var PGi=H((LGu,OGi)=>{"use strict";OGi.exports=function(t,r){return r?t.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):t}});var vGr=H((VGu,MGi)=>{"use strict";var Opc=WGi(),Ppc=PGi();MGi.exports=function(t,r){return t&&!Opc(r)?Ppc(t,r):r}});var YGi=H((WGu,HGi)=>{"use strict";var BGr=iL(),Mpc=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];HGi.exports=function(t){var r={},n,a,o;return t&&BGr.forEach(t.split(` -`),function(A){if(o=A.indexOf(":"),n=BGr.trim(A.substr(0,o)).toLowerCase(),a=BGr.trim(A.substr(o+1)),n){if(r[n]&&Mpc.indexOf(n)>=0)return;n==="set-cookie"?r[n]=(r[n]?r[n]:[]).concat([a]):r[n]=r[n]?r[n]+", "+a:a}}),r}});var JGi=H((OGu,XGi)=>{"use strict";var QGi=iL();XGi.exports=QGi.isStandardBrowserEnv()?function(){var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function a(o){var l=o;return t&&(r.setAttribute("href",l),l=r.href),r.setAttribute("href",l),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=a(window.location.href),function(l){var A=QGi.isString(l)?a(l):l;return A.protocol===n.protocol&&A.host===n.host}}():function(){return function(){return!0}}()});var KGi=H((PGu,UGi)=>{"use strict";var Y1t=iL(),Hpc=SGr(),Ypc=LGi(),Qpc=W1t(),Xpc=vGr(),Jpc=YGi(),Upc=JGi(),wGr=M1t();UGi.exports=function(t){return new Promise(function(n,a){var o=t.data,l=t.headers,A=t.responseType;Y1t.isFormData(o)&&delete l["Content-Type"];var f=new XMLHttpRequest;if(t.auth){var I=t.auth.username||"",C=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";l.Authorization="Basic "+btoa(I+":"+C)}var b=Xpc(t.baseURL,t.url);f.open(t.method.toUpperCase(),Qpc(b,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function E(){if(f){var B="getAllResponseHeaders"in f?Jpc(f.getAllResponseHeaders()):null,F=!A||A==="text"||A==="json"?f.responseText:f.response,Q={data:F,status:f.status,statusText:f.statusText,headers:B,config:t,request:f};Hpc(n,a,Q),f=null}}if("onloadend"in f?f.onloadend=E:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(E)},f.onabort=function(){f&&(a(wGr("Request aborted",t,"ECONNABORTED",f)),f=null)},f.onerror=function(){a(wGr("Network Error",t,null,f)),f=null},f.ontimeout=function(){var F="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(F=t.timeoutErrorMessage),a(wGr(F,t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",f)),f=null},Y1t.isStandardBrowserEnv()){var N=(t.withCredentials||Upc(b))&&t.xsrfCookieName?Ypc.read(t.xsrfCookieName):void 0;N&&(l[t.xsrfHeaderName]=N)}"setRequestHeader"in f&&Y1t.forEach(l,function(F,Q){typeof o>"u"&&Q.toLowerCase()==="content-type"?delete l[Q]:f.setRequestHeader(Q,F)}),Y1t.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),A&&A!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",t.onDownloadProgress),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(F){f&&(f.abort(),a(F),f=null)}),o||(o=null),f.send(o)})}});var zGi=H((MGu,jGi)=>{var ZUe;jGi.exports=function(){if(!ZUe){try{ZUe=Et("debug")("follow-redirects")}catch{}typeof ZUe!="function"&&(ZUe=function(){})}ZUe.apply(null,arguments)}});var OGr=H((HGu,WGr)=>{var VUe=Et("url"),LUe=VUe.URL,Kpc=Et("http"),jpc=Et("https"),kGr=Et("stream").Writable,xGr=Et("assert"),qGi=zGi();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=WCe(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var GGr=!1;try{xGr(new LUe(""))}catch(e){GGr=e.code==="ERR_INVALID_URL"}var zpc=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],FGr=["abort","aborted","connect","error","socket","timeout"],ZGr=Object.create(null);FGr.forEach(function(e){ZGr[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var RGr=WUe("ERR_INVALID_URL","Invalid URL",TypeError),NGr=WUe("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),qpc=WUe("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",NGr),$pc=WUe("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),efc=WUe("ERR_STREAM_WRITE_AFTER_END","write after end"),tfc=kGr.prototype.destroy||eFi;function GV(e,t){kGr.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(a){r.emit("error",a instanceof NGr?a:new NGr({cause:a}))}},this._performRequest()}GV.prototype=Object.create(kGr.prototype);GV.prototype.abort=function(){VGr(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};GV.prototype.destroy=function(e){return VGr(this._currentRequest,e),tfc.call(this,e),this};GV.prototype.write=function(e,t,r){if(this._ending)throw new efc;if(!VCe(e)&&!ifc(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(WCe(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new $pc),this.abort())};GV.prototype.end=function(e,t,r){if(WCe(e)?(r=e,e=t=null):WCe(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,a=this._currentRequest;this.write(e,t,function(){n._ended=!0,a.end(null,null,r)}),this._ending=!0}};GV.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};GV.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};GV.prototype.setTimeout=function(e,t){var r=this;function n(l){l.setTimeout(e),l.removeListener("timeout",l.destroy),l.addListener("timeout",l.destroy)}function a(l){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),o()},e),n(l)}function o(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",o),r.removeListener("error",o),r.removeListener("response",o),r.removeListener("close",o),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",a)}return t&&this.on("timeout",t),this.socket?a(this.socket):this._currentRequest.once("socket",a),this.on("socket",n),this.on("abort",o),this.on("error",o),this.on("response",o),this.on("close",o),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){GV.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(GV.prototype,e,{get:function(){return this._currentRequest[e]}})});GV.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};GV.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var a of FGr)n.on(a,ZGr[a]);if(this._currentUrl=/^\//.test(this._options.path)?VUe.format(this._options):this._options.path,this._isRedirect){var o=0,l=this,A=this._requestBodyBuffers;(function f(I){if(n===l._currentRequest)if(I)l.emit("error",I);else if(o=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(VGr(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new qpc;var n,a=this._options.beforeRedirect;a&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var o=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],TGr(/^content-/i,this._options.headers));var l=TGr(/^host$/i,this._options.headers),A=LGr(this._currentUrl),f=l||A.host,I=/^\w+:/.test(r)?this._currentUrl:VUe.format(Object.assign(A,{host:f})),C=rfc(r,I);if(qGi("redirecting to",C.href),this._isRedirect=!0,DGr(C,this._options),(C.protocol!==A.protocol&&C.protocol!=="https:"||C.host!==f&&!nfc(C.host,f))&&TGr(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),WCe(a)){var b={headers:e.headers,statusCode:t},E={url:I,method:o,headers:n};a(this._options,b,E),this._sanitizeOptions(this._options)}this._performRequest()};function $Gi(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var a=n+":",o=r[a]=e[n],l=t[n]=Object.create(o);function A(I,C,b){return sfc(I)?I=DGr(I):VCe(I)?I=DGr(LGr(I)):(b=C,C=tFi(I),I={protocol:a}),WCe(C)&&(b=C,C=null),C=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},I,C),C.nativeProtocols=r,!VCe(C.host)&&!VCe(C.hostname)&&(C.hostname="::1"),xGr.equal(C.protocol,a,"protocol mismatch"),qGi("options",C),new GV(C,b)}function f(I,C,b){var E=l.request(I,C,b);return E.end(),E}Object.defineProperties(l,{request:{value:A,configurable:!0,enumerable:!0,writable:!0},get:{value:f,configurable:!0,enumerable:!0,writable:!0}})}),t}function eFi(){}function LGr(e){var t;if(GGr)t=new LUe(e);else if(t=tFi(VUe.parse(e)),!VCe(t.protocol))throw new RGr({input:e});return t}function rfc(e,t){return GGr?new LUe(e,t):LGr(VUe.resolve(t,e))}function tFi(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new RGr({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new RGr({input:e.href||e});return e}function DGr(e,t){var r=t||{};for(var n of zpc)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function TGr(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function WUe(e,t,r){function n(a){WCe(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,a||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function VGr(e,t){for(var r of FGr)e.removeListener(r,ZGr[r]);e.on("error",eFi),e.destroy(t)}function nfc(e,t){xGr(VCe(e)&&VCe(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function VCe(e){return typeof e=="string"||e instanceof String}function WCe(e){return typeof e=="function"}function ifc(e){return typeof e=="object"&&"length"in e}function sfc(e){return LUe&&e instanceof LUe}WGr.exports=$Gi({http:Kpc,https:jpc});WGr.exports.wrap=$Gi});var PGr=H((YGu,ofc)=>{ofc.exports={name:"axios",version:"0.21.4",description:"Promise based HTTP client for the browser and node.js",main:"index.js",scripts:{test:"grunt test",start:"node ./sandbox/server.js",build:"NODE_ENV=production grunt build",preversion:"npm test",version:"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",postversion:"git push && git push --tags",examples:"node ./examples/server.js",coveralls:"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",fix:"eslint --fix lib/**/*.js"},repository:{type:"git",url:"https://github.com/axios/axios.git"},keywords:["xhr","http","ajax","promise","node"],author:"Matt Zabriskie",license:"MIT",bugs:{url:"https://github.com/axios/axios/issues"},homepage:"https://axios-http.com",devDependencies:{coveralls:"^3.0.0","es6-promise":"^4.2.4",grunt:"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1",karma:"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2",minimist:"^1.2.0",mocha:"^8.2.1",sinon:"^4.5.0","terser-webpack-plugin":"^4.2.3",typescript:"^4.0.5","url-search-params":"^0.10.0",webpack:"^4.44.2","webpack-dev-server":"^3.11.0"},browser:{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},jsdelivr:"dist/axios.min.js",unpkg:"dist/axios.min.js",typings:"./index.d.ts",dependencies:{"follow-redirects":"^1.14.0"},bundlesize:[{path:"./dist/axios.min.js",threshold:"5kB"}]}});var aFi=H((QGu,oFi)=>{"use strict";var OUe=iL(),rFi=SGr(),afc=vGr(),cfc=W1t(),lfc=Et("http"),ufc=Et("https"),gfc=OGr().http,Afc=OGr().https,nFi=Et("url"),dfc=Et("zlib"),pfc=PGr(),Q1t=M1t(),MGr=P1t(),iFi=/https:?/;function sFi(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var n=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+n}e.beforeRedirect=function(o){o.headers.host=o.host,sFi(o,t,o.href)}}oFi.exports=function(t){return new Promise(function(n,a){var o=function(Ot){n(Ot)},l=function(Ot){a(Ot)},A=t.data,f=t.headers;if("User-Agent"in f||"user-agent"in f?!f["User-Agent"]&&!f["user-agent"]&&(delete f["User-Agent"],delete f["user-agent"]):f["User-Agent"]="axios/"+pfc.version,A&&!OUe.isStream(A)){if(!Buffer.isBuffer(A))if(OUe.isArrayBuffer(A))A=Buffer.from(new Uint8Array(A));else if(OUe.isString(A))A=Buffer.from(A,"utf-8");else return l(Q1t("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",t));f["Content-Length"]=A.length}var I=void 0;if(t.auth){var C=t.auth.username||"",b=t.auth.password||"";I=C+":"+b}var E=afc(t.baseURL,t.url),N=nFi.parse(E),B=N.protocol||"http:";if(!I&&N.auth){var F=N.auth.split(":"),Q=F[0]||"",J=F[1]||"";I=Q+":"+J}I&&delete f.Authorization;var ae=iFi.test(B),ne=ae?t.httpsAgent:t.httpAgent,ce={path:cfc(N.path,t.params,t.paramsSerializer).replace(/^\?/,""),method:t.method.toUpperCase(),headers:f,agent:ne,agents:{http:t.httpAgent,https:t.httpsAgent},auth:I};t.socketPath?ce.socketPath=t.socketPath:(ce.hostname=N.hostname,ce.port=N.port);var fe=t.proxy;if(!fe&&fe!==!1){var ue=B.slice(0,-1)+"_proxy",de=process.env[ue]||process.env[ue.toUpperCase()];if(de){var be=nFi.parse(de),Se=process.env.no_proxy||process.env.NO_PROXY,De=!0;if(Se){var k=Se.split(",").map(function(Ot){return Ot.trim()});De=!k.some(function(Ot){return Ot?Ot==="*"||Ot[0]==="."&&N.hostname.substr(N.hostname.length-Ot.length)===Ot?!0:N.hostname===Ot:!1})}if(De&&(fe={host:be.hostname,port:be.port,protocol:be.protocol},be.auth)){var tt=be.auth.split(":");fe.auth={username:tt[0],password:tt[1]}}}}fe&&(ce.headers.host=N.hostname+(N.port?":"+N.port:""),sFi(ce,fe,B+"//"+N.hostname+(N.port?":"+N.port:"")+ce.path));var ze,Le=ae&&(fe?iFi.test(fe.protocol):!0);t.transport?ze=t.transport:t.maxRedirects===0?ze=Le?ufc:lfc:(t.maxRedirects&&(ce.maxRedirects=t.maxRedirects),ze=Le?Afc:gfc),t.maxBodyLength>-1&&(ce.maxBodyLength=t.maxBodyLength);var Je=ze.request(ce,function(Ot){if(!Je.aborted){var Er=Ot,Sr=Ot.req||Je;if(Ot.statusCode!==204&&Sr.method!=="HEAD"&&t.decompress!==!1)switch(Ot.headers["content-encoding"]){case"gzip":case"compress":case"deflate":Er=Er.pipe(dfc.createUnzip()),delete Ot.headers["content-encoding"];break}var jt={status:Ot.statusCode,statusText:Ot.statusMessage,headers:Ot.headers,config:t,request:Sr};if(t.responseType==="stream")jt.data=Er,rFi(o,l,jt);else{var Bt=[],Dt=0;Er.on("data",function($t){Bt.push($t),Dt+=$t.length,t.maxContentLength>-1&&Dt>t.maxContentLength&&(Er.destroy(),l(Q1t("maxContentLength size of "+t.maxContentLength+" exceeded",t,null,Sr)))}),Er.on("error",function($t){Je.aborted||l(MGr($t,t,null,Sr))}),Er.on("end",function(){var $t=Buffer.concat(Bt);t.responseType!=="arraybuffer"&&($t=$t.toString(t.responseEncoding),(!t.responseEncoding||t.responseEncoding==="utf8")&&($t=OUe.stripBOM($t))),jt.data=$t,rFi(o,l,jt)})}}});if(Je.on("error",function(Ot){Je.aborted&&Ot.code!=="ERR_FR_TOO_MANY_REDIRECTS"||l(MGr(Ot,t,null,Je))}),t.timeout){var ft=parseInt(t.timeout,10);if(isNaN(ft)){l(Q1t("error trying to parse `config.timeout` to int",t,"ERR_PARSE_TIMEOUT",Je));return}Je.setTimeout(ft,function(){Je.abort(),l(Q1t("timeout of "+ft+"ms exceeded",t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",Je))})}t.cancelToken&&t.cancelToken.promise.then(function(Ot){Je.aborted||(Je.abort(),l(Ot))}),OUe.isStream(A)?A.on("error",function(Ot){l(MGr(Ot,t,null,Je))}).pipe(Je):Je.end(A)})}});var J1t=H((XGu,uFi)=>{"use strict";var zk=iL(),cFi=kGi(),ffc=P1t(),Ifc={"Content-Type":"application/x-www-form-urlencoded"};function lFi(e,t){!zk.isUndefined(e)&&zk.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function hfc(){var e;return typeof XMLHttpRequest<"u"?e=KGi():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(e=aFi()),e}function mfc(e,t,r){if(zk.isString(e))try{return(t||JSON.parse)(e),zk.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var X1t={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:hfc(),transformRequest:[function(t,r){return cFi(r,"Accept"),cFi(r,"Content-Type"),zk.isFormData(t)||zk.isArrayBuffer(t)||zk.isBuffer(t)||zk.isStream(t)||zk.isFile(t)||zk.isBlob(t)?t:zk.isArrayBufferView(t)?t.buffer:zk.isURLSearchParams(t)?(lFi(r,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):zk.isObject(t)||r&&r["Content-Type"]==="application/json"?(lFi(r,"application/json"),mfc(t)):t}],transformResponse:[function(t){var r=this.transitional,n=r&&r.silentJSONParsing,a=r&&r.forcedJSONParsing,o=!n&&this.responseType==="json";if(o||a&&zk.isString(t)&&t.length)try{return JSON.parse(t)}catch(l){if(o)throw l.name==="SyntaxError"?ffc(l,this,"E_JSON_PARSE"):l}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300}};X1t.headers={common:{Accept:"application/json, text/plain, */*"}};zk.forEach(["delete","get","head"],function(t){X1t.headers[t]={}});zk.forEach(["post","put","patch"],function(t){X1t.headers[t]=zk.merge(Ifc)});uFi.exports=X1t});var AFi=H((JGu,gFi)=>{"use strict";var Cfc=iL(),_fc=J1t();gFi.exports=function(t,r,n){var a=this||_fc;return Cfc.forEach(n,function(l){t=l.call(a,t,r)}),t}});var HGr=H((UGu,dFi)=>{"use strict";dFi.exports=function(t){return!!(t&&t.__CANCEL__)}});var IFi=H((KGu,fFi)=>{"use strict";var pFi=iL(),YGr=AFi(),yfc=HGr(),bfc=J1t();function QGr(e){e.cancelToken&&e.cancelToken.throwIfRequested()}fFi.exports=function(t){QGr(t),t.headers=t.headers||{},t.data=YGr.call(t,t.data,t.headers,t.transformRequest),t.headers=pFi.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),pFi.forEach(["delete","get","head","post","put","patch","common"],function(a){delete t.headers[a]});var r=t.adapter||bfc.adapter;return r(t).then(function(a){return QGr(t),a.data=YGr.call(t,a.data,a.headers,t.transformResponse),a},function(a){return yfc(a)||(QGr(t),a&&a.response&&(a.response.data=YGr.call(t,a.response.data,a.response.headers,t.transformResponse))),Promise.reject(a)})}});var XGr=H((jGu,hFi)=>{"use strict";var OG=iL();hFi.exports=function(t,r){r=r||{};var n={},a=["url","method","data"],o=["headers","auth","proxy","params"],l=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],A=["validateStatus"];function f(E,N){return OG.isPlainObject(E)&&OG.isPlainObject(N)?OG.merge(E,N):OG.isPlainObject(N)?OG.merge({},N):OG.isArray(N)?N.slice():N}function I(E){OG.isUndefined(r[E])?OG.isUndefined(t[E])||(n[E]=f(void 0,t[E])):n[E]=f(t[E],r[E])}OG.forEach(a,function(N){OG.isUndefined(r[N])||(n[N]=f(void 0,r[N]))}),OG.forEach(o,I),OG.forEach(l,function(N){OG.isUndefined(r[N])?OG.isUndefined(t[N])||(n[N]=f(void 0,t[N])):n[N]=f(void 0,r[N])}),OG.forEach(A,function(N){N in r?n[N]=f(t[N],r[N]):N in t&&(n[N]=f(void 0,t[N]))});var C=a.concat(o).concat(l).concat(A),b=Object.keys(t).concat(Object.keys(r)).filter(function(N){return C.indexOf(N)===-1});return OG.forEach(b,I),n}});var bFi=H((zGu,yFi)=>{"use strict";var CFi=PGr(),JGr={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){JGr[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});var mFi={},Efc=CFi.version.split(".");function _Fi(e,t){for(var r=t?t.split("."):Efc,n=e.split("."),a=0;a<3;a++){if(r[a]>n[a])return!0;if(r[a]0;){var o=n[a],l=t[o];if(l){var A=e[o],f=A===void 0||l(A,o,e);if(f!==!0)throw new TypeError("option "+o+" must be "+f);continue}if(r!==!0)throw Error("Unknown option "+o)}}yFi.exports={isOlderVersion:_Fi,assertOptions:Sfc,validators:JGr}});var TFi=H((qGu,wFi)=>{"use strict";var vFi=iL(),vfc=W1t(),EFi=NGi(),SFi=IFi(),U1t=XGr(),BFi=bFi(),wDe=BFi.validators;function PUe(e){this.defaults=e,this.interceptors={request:new EFi,response:new EFi}}PUe.prototype.request=function(t){typeof t=="string"?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=U1t(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var r=t.transitional;r!==void 0&&BFi.assertOptions(r,{silentJSONParsing:wDe.transitional(wDe.boolean,"1.0.0"),forcedJSONParsing:wDe.transitional(wDe.boolean,"1.0.0"),clarifyTimeoutError:wDe.transitional(wDe.boolean,"1.0.0")},!1);var n=[],a=!0;this.interceptors.request.forEach(function(E){typeof E.runWhen=="function"&&E.runWhen(t)===!1||(a=a&&E.synchronous,n.unshift(E.fulfilled,E.rejected))});var o=[];this.interceptors.response.forEach(function(E){o.push(E.fulfilled,E.rejected)});var l;if(!a){var A=[SFi,void 0];for(Array.prototype.unshift.apply(A,n),A=A.concat(o),l=Promise.resolve(t);A.length;)l=l.then(A.shift(),A.shift());return l}for(var f=t;n.length;){var I=n.shift(),C=n.shift();try{f=I(f)}catch(b){C(b);break}}try{l=SFi(f)}catch(b){return Promise.reject(b)}for(;o.length;)l=l.then(o.shift(),o.shift());return l};PUe.prototype.getUri=function(t){return t=U1t(this.defaults,t),vfc(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")};vFi.forEach(["delete","get","head","options"],function(t){PUe.prototype[t]=function(r,n){return this.request(U1t(n||{},{method:t,url:r,data:(n||{}).data}))}});vFi.forEach(["post","put","patch"],function(t){PUe.prototype[t]=function(r,n,a){return this.request(U1t(a||{},{method:t,url:r,data:n}))}});wFi.exports=PUe});var KGr=H(($Gu,RFi)=>{"use strict";function UGr(e){this.message=e}UGr.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")};UGr.prototype.__CANCEL__=!0;RFi.exports=UGr});var DFi=H((eFu,NFi)=>{"use strict";var Bfc=KGr();function K1t(e){if(typeof e!="function")throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(a){t=a});var r=this;e(function(a){r.reason||(r.reason=new Bfc(a),t(r.reason))})}K1t.prototype.throwIfRequested=function(){if(this.reason)throw this.reason};K1t.source=function(){var t,r=new K1t(function(a){t=a});return{token:r,cancel:t}};NFi.exports=K1t});var xFi=H((tFu,kFi)=>{"use strict";kFi.exports=function(t){return function(n){return t.apply(null,n)}}});var FFi=H((rFu,GFi)=>{"use strict";GFi.exports=function(t){return typeof t=="object"&&t.isAxiosError===!0}});var VFi=H((nFu,jGr)=>{"use strict";var ZFi=iL(),wfc=CGr(),j1t=TFi(),Tfc=XGr(),Rfc=J1t();function LFi(e){var t=new j1t(e),r=wfc(j1t.prototype.request,t);return ZFi.extend(r,j1t.prototype,t),ZFi.extend(r,t),r}var b4=LFi(Rfc);b4.Axios=j1t;b4.create=function(t){return LFi(Tfc(b4.defaults,t))};b4.Cancel=KGr();b4.CancelToken=DFi();b4.isCancel=HGr();b4.all=function(t){return Promise.all(t)};b4.spread=xFi();b4.isAxiosError=FFi();jGr.exports=b4;jGr.exports.default=b4});var OFi=H((iFu,WFi)=>{WFi.exports=VFi()});var MFi=H((sFu,PFi)=>{var TDe=1e3,RDe=TDe*60,NDe=RDe*60,OCe=NDe*24,Nfc=OCe*7,Dfc=OCe*365.25;PFi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return kfc(e);if(r==="number"&&isFinite(e))return t.long?Gfc(e):xfc(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function kfc(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Dfc;case"weeks":case"week":case"w":return r*Nfc;case"days":case"day":case"d":return r*OCe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*NDe;case"minutes":case"minute":case"mins":case"min":case"m":return r*RDe;case"seconds":case"second":case"secs":case"sec":case"s":return r*TDe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function xfc(e){var t=Math.abs(e);return t>=OCe?Math.round(e/OCe)+"d":t>=NDe?Math.round(e/NDe)+"h":t>=RDe?Math.round(e/RDe)+"m":t>=TDe?Math.round(e/TDe)+"s":e+"ms"}function Gfc(e){var t=Math.abs(e);return t>=OCe?z1t(e,t,OCe,"day"):t>=NDe?z1t(e,t,NDe,"hour"):t>=RDe?z1t(e,t,RDe,"minute"):t>=TDe?z1t(e,t,TDe,"second"):e+" ms"}function z1t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var zGr=H((oFu,HFi)=>{function Ffc(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=MFi(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(J,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(J,Q),(J.log||r.log).apply(J,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{wP.formatArgs=Lfc;wP.save=Vfc;wP.load=Wfc;wP.useColors=Zfc;wP.storage=Ofc();wP.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();wP.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Zfc(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Lfc(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+q1t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}wP.log=console.debug||console.log||(()=>{});function Vfc(e){try{e?wP.storage.setItem("debug",e):wP.storage.removeItem("debug")}catch{}}function Wfc(){let e;try{e=wP.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function Ofc(){try{return localStorage}catch{}}q1t.exports=zGr()(wP);var{formatters:Pfc}=q1t.exports;Pfc.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var XFi=H((qk,e2t)=>{var Mfc=Et("tty"),$1t=Et("util");qk.init=Kfc;qk.log=Xfc;qk.formatArgs=Yfc;qk.save=Jfc;qk.load=Ufc;qk.useColors=Hfc;qk.destroy=$1t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");qk.colors=[6,2,3,4,5,1];try{let e=Et("supports-color");e&&(e.stderr||e).level>=2&&(qk.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}qk.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function Hfc(){return"colors"in qk.inspectOpts?!!qk.inspectOpts.colors:Mfc.isatty(process.stderr.fd)}function Yfc(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +`,_++};this.projectService.externalProjects.forEach(S),this.projectService.configuredProjects.forEach(S),this.projectService.inferredProjects.forEach(S)}}this.logger.msg(h,"Err")}send(c){if(c.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${s5(c)}`);return}this.writeMessage(c)}writeMessage(c){let g=FJt(c,this.logger,this.byteLength,this.host.newLine);this.host.write(g)}event(c,g){this.send(ZJt(g,c))}doOutput(c,g,d,h,_,S){let R={seq:0,type:"response",command:g,request_seq:d,success:h,performanceData:_&&Pfn(_)};if(h){let T;if(Ki(c))R.body=c,T=c.metadata,delete c.metadata;else if(typeof c=="object")if(c.metadata){let{metadata:O,...V}=c;R.body=V,T=O}else R.body=c;else R.body=c;T&&(R.metadata=T)}else pe.assert(c===void 0);S&&(R.message=S),this.send(R)}semanticCheck(c,g){var d,h;let _=Zg();(d=ki)==null||d.push(ki.Phase.Session,"semanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let S=Nfn(g,c)?tC:g.getLanguageService().getSemanticDiagnostics(c).filter(R=>!!R.file);this.sendDiagnosticsEvent(c,g,S,"semanticDiag",_),(h=ki)==null||h.pop()}syntacticCheck(c,g){var d,h;let _=Zg();(d=ki)==null||d.push(ki.Phase.Session,"syntacticCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSyntacticDiagnostics(c),"syntaxDiag",_),(h=ki)==null||h.pop()}suggestionCheck(c,g){var d,h;let _=Zg();(d=ki)==null||d.push(ki.Phase.Session,"suggestionCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSuggestionDiagnostics(c),"suggestionDiag",_),(h=ki)==null||h.pop()}regionSemanticCheck(c,g,d){var h,_,S;let R=Zg();(h=ki)==null||h.push(ki.Phase.Session,"regionSemanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let T;if(!this.shouldDoRegionCheck(c)||!(T=g.getLanguageService().getRegionSemanticDiagnostics(c,d))){(_=ki)==null||_.pop();return}this.sendDiagnosticsEvent(c,g,T.diagnostics,"regionSemanticDiag",R,T.spans),(S=ki)==null||S.pop()}shouldDoRegionCheck(c){var g;let d=(g=this.projectService.getScriptInfoForNormalizedPath(c))==null?void 0:g.textStorage.getLineInfo().getLineCount();return!!(d&&d>=this.regionDiagLineCountThreshold)}sendDiagnosticsEvent(c,g,d,h,_,S){try{let R=pe.checkDefined(g.getScriptInfo(c)),T=Zg()-_,O={file:c,diagnostics:d.map(V=>Dfn(c,g,V)),spans:S?.map(V=>VN(V,R))};this.event(O,h),this.addDiagnosticsPerformanceData(c,h,T)}catch(R){this.logError(R,h)}}updateErrorCheck(c,g,d,h=!0){if(g.length===0)return;pe.assert(!this.suppressDiagnosticEvents);let _=this.changeSeq,S=Math.min(d,200),R=0,T=()=>{if(R++,g.length>R)return c.delay("checkOne",S,V)},O=(M,ee)=>{if(this.semanticCheck(M,ee),this.changeSeq===_){if(this.getPreferences(M).disableSuggestions)return T();c.immediate("suggestionCheck",()=>{this.suggestionCheck(M,ee),T()})}},V=()=>{if(this.changeSeq!==_)return;let M,ee=g[R];if(Xs(ee)?ee=this.toPendingErrorCheck(ee):"ranges"in ee&&(M=ee.ranges,ee=this.toPendingErrorCheck(ee.file)),!ee)return T();let{fileName:re,project:ge}=ee;if(vv(ge),!!ge.containsFile(re,h)&&(this.syntacticCheck(re,ge),this.changeSeq===_)){if(ge.projectService.serverMode!==0)return T();if(M)return c.immediate("regionSemanticCheck",()=>{let Ie=this.projectService.getScriptInfoForNormalizedPath(re);Ie&&this.regionSemanticCheck(re,ge,M.map(_e=>this.getRange({file:re,..._e},Ie))),this.changeSeq===_&&c.immediate("semanticCheck",()=>O(re,ge))});c.immediate("semanticCheck",()=>O(re,ge))}};g.length>R&&this.changeSeq===_&&c.delay("checkOne",d,V)}cleanProjects(c,g){if(g){this.logger.info(`cleaning ${c}`);for(let d of g)d.getLanguageService(!1).cleanupSemanticCache(),d.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",Do(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c);return d.getEncodedSyntacticClassifications(g,c)}getEncodedSemanticClassifications(c){let{file:g,project:d}=this.getFileAndProject(c),h=c.format==="2020"?"2020":"original";return d.getLanguageService().getEncodedSemanticClassifications(g,c,h)}getProject(c){return c===void 0?void 0:this.projectService.findProject(c)}getConfigFileAndProject(c){let g=this.getProject(c.projectFileName),d=cp(c.file);return{configFile:g&&g.hasConfigFile(d)?d:void 0,project:g}}getConfigFileDiagnostics(c,g,d){let h=g.getAllProjectErrors(),_=g.getLanguageService().getCompilerOptionsDiagnostics(),S=Le(Nn(h,_),R=>!!R.file&&R.file.fileName===c);return d?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):lt(S,R=>T2e(R,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(c){return c.map(g=>({message:xN(g.messageText,this.host.newLine),start:g.start,length:g.length,category:Eb(g),code:g.code,source:g.source,startLocation:g.file&&Ese(Ra(g.file,g.start)),endLocation:g.file&&Ese(Ra(g.file,g.start+g.length)),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,relatedInformation:lt(g.relatedInformation,$st)}))}getCompilerOptionsDiagnostics(c){let g=this.getProject(c.projectFileName);return this.convertToDiagnosticsWithLinePosition(Le(g.getLanguageService().getCompilerOptionsDiagnostics(),d=>!d.file),void 0)}convertToDiagnosticsWithLinePosition(c,g){return c.map(d=>({message:xN(d.messageText,this.host.newLine),start:d.start,length:d.length,category:Eb(d),code:d.code,source:d.source,startLocation:g&&g.positionToLineOffset(d.start),endLocation:g&&g.positionToLineOffset(d.start+d.length),reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated,relatedInformation:lt(d.relatedInformation,$st)}))}getDiagnosticsWorker(c,g,d,h){let{project:_,file:S}=this.getFileAndProject(c);if(g&&Nfn(_,S))return tC;let R=_.getScriptInfoForNormalizedPath(S),T=d(_,S);return h?this.convertToDiagnosticsWithLinePosition(T,R):T.map(O=>Dfn(S,_,O))}getDefinition(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapDefinitionInfoLocations(h.getLanguageService().getDefinitionAtPosition(d,_)||tC,h);return g?this.mapDefinitionInfo(S,h):S.map(S1t.mapToOriginalLocation)}mapDefinitionInfoLocations(c,g){return c.map(d=>{let h=Vfn(d,g);return h?{...h,containerKind:d.containerKind,containerName:d.containerName,kind:d.kind,name:d.name,failedAliasResolution:d.failedAliasResolution,...d.unverified&&{unverified:d.unverified}}:d})}getDefinitionAndBoundSpan(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=pe.checkDefined(h.getScriptInfo(d)),R=h.getLanguageService().getDefinitionAndBoundSpan(d,_);if(!R||!R.definitions)return{definitions:tC,textSpan:void 0};let T=this.mapDefinitionInfoLocations(R.definitions,h),{textSpan:O}=R;return g?{definitions:this.mapDefinitionInfo(T,h),textSpan:VN(O,S)}:{definitions:T.map(S1t.mapToOriginalLocation),textSpan:O}}findSourceDefinition(c){var g;let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDefinitionAtPosition(d,_),R=this.mapDefinitionInfoLocations(S||tC,h).slice();if(this.projectService.serverMode===0&&(!zt(R,re=>cp(re.fileName)!==d&&!re.isAmbient)||zt(R,re=>!!re.failedAliasResolution))){let re=so(Ee=>Ee.textSpan.start,dnt(this.host.useCaseSensitiveFileNames));R?.forEach(Ee=>re.add(Ee));let ge=h.getNoDtsResolutionProject(d),Ie=ge.getLanguageService(),_e=(g=Ie.getDefinitionAtPosition(d,_,!0,!1))==null?void 0:g.filter(Ee=>cp(Ee.fileName)!==d);if(zt(_e))for(let Ee of _e){if(Ee.unverified){let Ne=M(Ee,h.getLanguageService().getProgram(),Ie.getProgram());if(zt(Ne)){for(let Te of Ne)re.add(Te);continue}}re.add(Ee)}else{let Ee=R.filter(Ne=>cp(Ne.fileName)!==d&&Ne.isAmbient);for(let Ne of zt(Ee)?Ee:V()){let Te=O(Ne.fileName,d,ge);if(!Te)continue;let Ze=this.projectService.getOrCreateScriptInfoNotOpenedByClient(Te,ge.currentDirectory,ge.directoryStructureHost,!1);if(!Ze)continue;ge.containsScriptInfo(Ze)||(ge.addRoot(Ze),ge.updateGraph());let Pe=Ie.getProgram(),Ke=pe.checkDefined(Pe.getSourceFile(Te));for(let et of ee(Ne.name,Ke,Pe))re.add(et)}}R=Do(re.values())}return R=R.filter(re=>!re.isAmbient&&!re.failedAliasResolution),this.mapDefinitionInfo(R,h);function O(re,ge,Ie){var _e,Ee,Ne;let Te=ode(re);if(Te&&re.lastIndexOf(Yx)===Te.topLevelNodeModulesIndex){let Ze=re.substring(0,Te.packageRootIndex),Pe=(_e=h.getModuleResolutionCache())==null?void 0:_e.getPackageJsonInfoCache(),Ke=h.getCompilationSettings(),et=Wde(Xc(Ze,h.getCurrentDirectory()),Vde(Pe,h,Ke));if(!et)return;let Ye=Fet(et,{moduleResolution:2},h,h.getModuleResolutionCache()),Tt=re.substring(Te.topLevelPackageNameIndex+1,Te.packageRootIndex),at=Ode(qEe(Tt)),Qe=h.toPath(re);if(Ye&&zt(Ye,Ct=>h.toPath(Ct)===Qe))return(Ee=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(at,ge).resolvedModule)==null?void 0:Ee.resolvedFileName;{let Ct=re.substring(Te.packageRootIndex+1),mt=`${at}/${c0(Ct)}`;return(Ne=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(mt,ge).resolvedModule)==null?void 0:Ne.resolvedFileName}}}function V(){let re=h.getLanguageService(),ge=re.getProgram(),Ie=Ob(ge.getSourceFile(d),_);return(_A(Ie)||Ir(Ie))&&bp(Ie.parent)&&CLe(Ie,_e=>{var Ee;if(_e===Ie)return;let Ne=(Ee=re.getDefinitionAtPosition(d,_e.getStart(),!0,!1))==null?void 0:Ee.filter(Te=>cp(Te.fileName)!==d&&Te.isAmbient).map(Te=>({fileName:Te.fileName,name:A2(Ie)}));if(zt(Ne))return Ne})||tC}function M(re,ge,Ie){var _e;let Ee=Ie.getSourceFile(re.fileName);if(!Ee)return;let Ne=Ob(ge.getSourceFile(d),_),Te=ge.getTypeChecker().getSymbolAtLocation(Ne),Ze=Te&&yp(Te,277);if(!Ze)return;let Pe=((_e=Ze.propertyName)==null?void 0:_e.text)||Ze.name.text;return ee(Pe,Ee,Ie)}function ee(re,ge,Ie){let _e=zp.Core.getTopMostDeclarationNamesInFile(re,ge);return Xt(_e,Ee=>{let Ne=Ie.getTypeChecker().getSymbolAtLocation(Ee),Te=H7(Ee);if(Ne&&Te)return mse.createDefinitionInfo(Te,Ie.getTypeChecker(),Ne,Te,!0)})}}getEmitOutput(c){let{file:g,project:d}=this.getFileAndProject(c);if(!d.shouldEmitFile(d.getScriptInfo(g)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let h=d.getLanguageService().getEmitOutput(g);return c.richResponse?{...h,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(h.diagnostics):h.diagnostics.map(_=>T2e(_,!0))}:h}mapJSDocTagInfo(c,g,d){return c?c.map(h=>{var _;return{...h,text:d?this.mapDisplayParts(h.text,g):(_=h.text)==null?void 0:_.map(S=>S.text).join("")}}):[]}mapDisplayParts(c,g){return c?c.map(d=>d.kind!=="linkName"?d:{...d,target:this.toFileSpan(d.target.fileName,d.target.textSpan,g)}):[]}mapSignatureHelpItems(c,g,d){return c.map(h=>({...h,documentation:this.mapDisplayParts(h.documentation,g),parameters:h.parameters.map(_=>({..._,documentation:this.mapDisplayParts(_.documentation,g)})),tags:this.mapJSDocTagInfo(h.tags,g,d)}))}mapDefinitionInfo(c,g){return c.map(d=>({...this.toFileSpanWithContext(d.fileName,d.textSpan,d.contextSpan,g),...d.unverified&&{unverified:d.unverified}}))}static mapToOriginalLocation(c){return c.originalFileName?(pe.assert(c.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...c,fileName:c.originalFileName,textSpan:c.originalTextSpan,targetFileName:c.fileName,targetTextSpan:c.textSpan,contextSpan:c.originalContextSpan,targetContextSpan:c.contextSpan}):c}toFileSpan(c,g,d){let h=d.getLanguageService(),_=h.toLineColumnOffset(c,g.start),S=h.toLineColumnOffset(c,Rs(g));return{file:c,start:{line:_.line+1,offset:_.character+1},end:{line:S.line+1,offset:S.character+1}}}toFileSpanWithContext(c,g,d,h){let _=this.toFileSpan(c,g,h),S=d&&this.toFileSpan(c,d,h);return S?{..._,contextStart:S.start,contextEnd:S.end}:_}getTypeDefinition(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.mapDefinitionInfoLocations(d.getLanguageService().getTypeDefinitionAtPosition(g,h)||tC,d);return this.mapDefinitionInfo(_,d)}mapImplementationLocations(c,g){return c.map(d=>{let h=Vfn(d,g);return h?{...h,kind:d.kind,displayParts:d.displayParts}:d})}getImplementation(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapImplementationLocations(h.getLanguageService().getImplementationAtPosition(d,_)||tC,h);return g?S.map(({fileName:R,textSpan:T,contextSpan:O})=>this.toFileSpanWithContext(R,T,O,h)):S.map(S1t.mapToOriginalLocation)}getSyntacticDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?tC:this.getDiagnosticsWorker(c,!1,(d,h)=>d.getLanguageService().getSyntacticDiagnostics(h),!!c.includeLinePosition)}getSemanticDiagnosticsSync(c){let{configFile:g,project:d}=this.getConfigFileAndProject(c);return g?this.getConfigFileDiagnostics(g,d,!!c.includeLinePosition):this.getDiagnosticsWorker(c,!0,(h,_)=>h.getLanguageService().getSemanticDiagnostics(_).filter(S=>!!S.file),!!c.includeLinePosition)}getSuggestionDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?tC:this.getDiagnosticsWorker(c,!0,(d,h)=>d.getLanguageService().getSuggestionDiagnostics(h),!!c.includeLinePosition)}getJsxClosingTag(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getJsxClosingTagAtPosition(g,h);return _===void 0?void 0:{newText:_.newText,caretOffset:0}}getLinkedEditingRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getLinkedEditingRangeAtPosition(g,h),S=this.projectService.getScriptInfoForNormalizedPath(g);if(!(S===void 0||_===void 0))return rPs(_,S)}getDocumentHighlights(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDocumentHighlights(d,_,c.filesToSearch);return S?g?S.map(({fileName:R,highlightSpans:T})=>{let O=h.getScriptInfo(R);return{file:R,highlightSpans:T.map(({textSpan:V,kind:M,contextSpan:ee})=>({...VJt(V,ee,O),kind:M}))}}):S:tC}provideInlayHints(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);return d.getLanguageService().provideInlayHints(g,c,this.getPreferences(g)).map(S=>{let{position:R,displayParts:T}=S;return{...S,position:h.positionToLineOffset(R),displayParts:T?.map(({text:O,span:V,file:M})=>{if(V){pe.assertIsDefined(M,"Target file should be defined together with its span.");let ee=this.projectService.getScriptInfo(M);return{text:O,span:{start:ee.positionToLineOffset(V.start),end:ee.positionToLineOffset(V.start+V.length),file:M}}}else return{text:O}})}})}mapCode(c){var g;let d=this.getHostFormatOptions(),h=this.getHostPreferences(),{file:_,languageService:S}=this.getFileAndLanguageServiceForSyntacticOperation(c),R=this.projectService.getScriptInfoForNormalizedPath(_),T=(g=c.mapping.focusLocations)==null?void 0:g.map(V=>V.map(M=>{let ee=R.lineOffsetToPosition(M.start.line,M.start.offset),re=R.lineOffsetToPosition(M.end.line,M.end.offset);return{start:ee,length:re-ee}})),O=S.mapCode(_,c.mapping.contents,T,d,h);return this.mapTextChangesToCodeEdits(O)}getCopilotRelatedInfo(){return{relatedFiles:[]}}setCompilerOptionsForInferredProjects(c){this.projectService.setCompilerOptionsForInferredProjects(c.options,c.projectRootPath)}getProjectInfo(c){return this.getProjectInfoWorker(c.file,c.projectFileName,c.needFileNameList,c.needDefaultConfiguredProjectInfo,!1)}getProjectInfoWorker(c,g,d,h,_){let{project:S}=this.getFileAndProjectWorker(c,g);return vv(S),{configFileName:S.getProjectName(),languageServiceDisabled:!S.languageServiceEnabled,fileNames:d?S.getFileNames(!1,_):void 0,configuredProjectInfo:h?this.getDefaultConfiguredProjectInfo(c):void 0}}getDefaultConfiguredProjectInfo(c){var g;let d=this.projectService.getScriptInfo(c);if(!d)return;let h=this.projectService.findDefaultConfiguredProjectWorker(d,3);if(!h)return;let _,S;return h.seenProjects.forEach((R,T)=>{T!==h.defaultProject&&(R!==3?(_??(_=[])).push(cp(T.getConfigFilePath())):(S??(S=[])).push(cp(T.getConfigFilePath())))}),(g=h.seenConfigs)==null||g.forEach(R=>(_??(_=[])).push(R)),{notMatchedByConfig:_,notInProject:S,defaultProject:h.defaultProject&&cp(h.defaultProject.getConfigFilePath())}}getRenameInfo(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.getPreferences(g);return d.getLanguageService().getRenameInfo(g,h,_)}getProjects(c,g,d){let h,_;if(c.projectFileName){let S=this.getProject(c.projectFileName);S&&(h=[S])}else{let S=g?this.projectService.getScriptInfoEnsuringProjectsUptoDate(c.file):this.projectService.getScriptInfo(c.file);if(S)g||this.projectService.ensureDefaultProjectForFile(S);else return d?tC:(this.projectService.logErrorForScriptInfoNotFound(c.file),qF.ThrowNoProject());h=S.containingProjects,_=this.projectService.getSymlinkedProjects(S)}return h=Le(h,S=>S.languageServiceEnabled&&!S.isOrphan()),!d&&(!h||!h.length)&&!_?(this.projectService.logErrorForScriptInfoNotFound(c.file??c.projectFileName),qF.ThrowNoProject()):_?{projects:h,symLinkedProjects:_}:h}getDefaultProject(c){if(c.projectFileName){let d=this.getProject(c.projectFileName);if(d)return d;if(!c.file)return qF.ThrowNoProject()}return this.projectService.getScriptInfo(c.file).getDefaultProject()}getRenameLocations(c,g){let d=cp(c.file),h=this.getPositionInFile(c,d),_=this.getProjects(c),S=this.getDefaultProject(c),R=this.getPreferences(d),T=this.mapRenameInfo(S.getLanguageService().getRenameInfo(d,h,R),pe.checkDefined(this.projectService.getScriptInfo(d)));if(!T.canRename)return g?{info:T,locs:[]}:[];let O=jOs(_,S,{fileName:c.file,pos:h},!!c.findInStrings,!!c.findInComments,R,this.host.useCaseSensitiveFileNames);return g?{info:T,locs:this.toSpanGroups(O)}:O}mapRenameInfo(c,g){if(c.canRename){let{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:O}=c;return{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:VN(O,g)}}else return c}toSpanGroups(c){let g=new Map;for(let{fileName:d,textSpan:h,contextSpan:_,originalContextSpan:S,originalTextSpan:R,originalFileName:T,...O}of c){let V=g.get(d);V||g.set(d,V={file:d,locs:[]});let M=pe.checkDefined(this.projectService.getScriptInfo(d));V.locs.push({...VJt(h,_,M),...O})}return Do(g.values())}getReferences(c,g){let d=cp(c.file),h=this.getProjects(c),_=this.getPositionInFile(c,d),S=zOs(h,this.getDefaultProject(c),{fileName:c.file,pos:_},this.host.useCaseSensitiveFileNames,this.logger);if(!g)return S;let R=this.getPreferences(d),T=this.getDefaultProject(c),O=T.getScriptInfoForNormalizedPath(d),V=T.getLanguageService().getQuickInfoAtPosition(d,_),M=V?$1e(V.displayParts):"",ee=V&&V.textSpan,re=ee?O.positionToLineOffset(ee.start).offset:0,ge=ee?O.getSnapshot().getText(ee.start,Rs(ee)):"";return{refs:jt(S,_e=>_e.references.map(Ee=>Hfn(this.projectService,Ee,R))),symbolName:ge,symbolStartOffset:re,symbolDisplayString:M}}getFileReferences(c,g){let d=this.getProjects(c),h=cp(c.file),_=this.getPreferences(h),S={fileName:h,pos:0},R=LJt(d,this.getDefaultProject(c),S,S,Ffn,V=>(this.logger.info(`Finding references to file ${h} in project ${V.getProjectName()}`),V.getLanguageService().getFileReferences(h))),T;if(Ki(R))T=R;else{T=[];let V=eot(this.host.useCaseSensitiveFileNames);R.forEach(M=>{for(let ee of M)V.has(ee)||(T.push(ee),V.add(ee))})}return g?{refs:T.map(V=>Hfn(this.projectService,V,_)),symbolName:`"${c.file}"`}:T}openClientFile(c,g,d,h){this.projectService.openClientFileWithNormalizedPath(c,g,d,!1,h)}getPosition(c,g){return c.position!==void 0?c.position:g.lineOffsetToPosition(c.line,c.offset)}getPositionInFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(g);return this.getPosition(c,d)}getFileAndProject(c){return this.getFileAndProjectWorker(c.file,c.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(c){let{file:g,project:d}=this.getFileAndProject(c);return{file:g,languageService:d.getLanguageService(!1)}}getFileAndProjectWorker(c,g){let d=cp(c),h=this.getProject(g)||this.projectService.ensureDefaultProjectForFile(d);return{file:d,project:h}}getOutliningSpans(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getOutliningSpans(d);if(g){let S=this.projectService.getScriptInfoForNormalizedPath(d);return _.map(R=>({textSpan:VN(R.textSpan,S),hintSpan:VN(R.hintSpan,S),bannerText:R.bannerText,autoCollapse:R.autoCollapse,kind:R.kind}))}else return _}getTodoComments(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().getTodoComments(g,c.descriptors)}getDocCommentTemplate(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getDocCommentTemplateAtPosition(g,h,this.getPreferences(g),this.getFormatOptions(g))}getSpanOfEnclosingComment(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.onlyMultiLine,_=this.getPositionInFile(c,g);return d.getSpanOfEnclosingComment(g,_,h)}getIndentation(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=c.options?bse(c.options):this.getFormatOptions(g),S=d.getIndentationAtPosition(g,h,_);return{position:h,indentation:S}}getBreakpointStatement(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getBreakpointStatementAtPosition(g,h)}getNameOrDottedNameSpan(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getNameOrDottedNameSpan(g,h,h)}isValidBraceCompletion(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.isValidBraceCompletionAtPosition(g,h,c.openingBrace.charCodeAt(0))}getQuickInfoWorker(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPreferences(d),R=h.getLanguageService().getQuickInfoAtPosition(d,this.getPosition(c,_),S.maximumHoverLength,c.verbosityLevel);if(!R)return;let T=!!S.displayPartsForJSDoc;if(g){let O=$1e(R.displayParts);return{kind:R.kind,kindModifiers:R.kindModifiers,start:_.positionToLineOffset(R.textSpan.start),end:_.positionToLineOffset(Rs(R.textSpan)),displayString:O,documentation:T?this.mapDisplayParts(R.documentation,h):$1e(R.documentation),tags:this.mapJSDocTagInfo(R.tags,h,T),canIncreaseVerbosityLevel:R.canIncreaseVerbosityLevel}}else return T?R:{...R,tags:this.mapJSDocTagInfo(R.tags,h,!1)}}getFormattingEditsForRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=h.lineOffsetToPosition(c.endLine,c.endOffset),R=d.getFormattingEditsForRange(g,_,S,this.getFormatOptions(g));if(R)return R.map(T=>this.convertTextChangeToCodeEdit(T,h))}getFormattingEditsForRangeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?bse(c.options):this.getFormatOptions(g);return d.getFormattingEditsForRange(g,c.position,c.endPosition,h)}getFormattingEditsForDocumentFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?bse(c.options):this.getFormatOptions(g);return d.getFormattingEditsForDocument(g,h)}getFormattingEditsAfterKeystrokeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?bse(c.options):this.getFormatOptions(g);return d.getFormattingEditsAfterKeystroke(g,c.position,c.key,h)}getFormattingEditsAfterKeystroke(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=this.getFormatOptions(g),R=d.getFormattingEditsAfterKeystroke(g,_,c.key,S);if(c.key===` +`&&(!R||R.length===0||JOs(R,_))){let{lineText:T,absolutePosition:O}=h.textStorage.getAbsolutePositionAndLineText(c.line);if(T&&T.search("\\S")<0){let V=d.getIndentationAtPosition(g,_,S),M=0,ee,re;for(ee=0,re=T.length;ee({start:h.positionToLineOffset(T.span.start),end:h.positionToLineOffset(Rs(T.span)),newText:T.newText?T.newText:""}))}getCompletions(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getCompletionsAtPosition(d,S,{...CJt(this.getPreferences(d)),triggerCharacter:c.triggerCharacter,triggerKind:c.triggerKind,includeExternalModuleExports:c.includeExternalModuleExports,includeInsertTextCompletions:c.includeInsertTextCompletions},h.projectService.getFormatCodeOptions(d));if(R===void 0)return;if(g==="completions-full")return R;let T=c.prefix||"",O=Xt(R.entries,M=>{if(R.isMemberCompletion||Ac(M.name.toLowerCase(),T.toLowerCase())){let ee=M.replacementSpan?VN(M.replacementSpan,_):void 0;return{...M,replacementSpan:ee,hasAction:M.hasAction||void 0,symbol:void 0}}});return g==="completions"?(R.metadata&&(O.metadata=R.metadata),O):{...R,optionalReplacementSpan:R.optionalReplacementSpan&&VN(R.optionalReplacementSpan,_),entries:O}}getCompletionEntryDetails(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.projectService.getFormatCodeOptions(d),T=!!this.getPreferences(d).displayPartsForJSDoc,O=Xt(c.entryNames,V=>{let{name:M,source:ee,data:re}=typeof V=="string"?{name:V,source:void 0,data:void 0}:V;return h.getLanguageService().getCompletionEntryDetails(d,S,M,R,ee,this.getPreferences(d),re?Ma(re,aPs):void 0)});return g?T?O:O.map(V=>({...V,tags:this.mapJSDocTagInfo(V.tags,h,!1)})):O.map(V=>({...V,codeActions:lt(V.codeActions,M=>this.mapCodeAction(M)),documentation:this.mapDisplayParts(V.documentation,h),tags:this.mapJSDocTagInfo(V.tags,h,T)}))}getCompileOnSaveAffectedFileList(c){let g=this.getProjects(c,!0,!0),d=this.projectService.getScriptInfo(c.file);return d?KOs(d,h=>this.projectService.getScriptInfoForPath(h),g,(h,_)=>{if(!h.compileOnSaveEnabled||!h.languageServiceEnabled||h.isOrphan())return;let S=h.getCompilationSettings();if(!(S.noEmit||MC(_.fileName)&&!XOs(S)))return{projectFileName:h.getProjectName(),fileNames:h.getCompileOnSaveAffectedFileList(_),projectUsesOutFile:!!S.outFile}}):tC}emitFile(c){let{file:g,project:d}=this.getFileAndProject(c);if(d||qF.ThrowNoProject(),!d.languageServiceEnabled)return c.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let h=d.getScriptInfo(g),{emitSkipped:_,diagnostics:S}=d.emitFile(h,(R,T,O)=>this.host.writeFile(R,T,O));return c.richResponse?{emitSkipped:_,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):S.map(R=>T2e(R,!0))}:!_}getSignatureHelpItems(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getSignatureHelpItems(d,S,c),T=!!this.getPreferences(d).displayPartsForJSDoc;if(R&&g){let O=R.applicableSpan;return{...R,applicableSpan:{start:_.positionToLineOffset(O.start),end:_.positionToLineOffset(O.start+O.length)},items:this.mapSignatureHelpItems(R.items,h,T)}}else return T||!R?R:{...R,items:R.items.map(O=>({...O,tags:this.mapJSDocTagInfo(O.tags,h,!1)}))}}toPendingErrorCheck(c){let g=cp(c),d=this.projectService.tryGetDefaultProjectForFile(g);return d&&{fileName:g,project:d}}getDiagnostics(c,g,d){this.suppressDiagnosticEvents||d.length>0&&this.updateErrorCheck(c,d,g)}change(c){let g=this.projectService.getScriptInfo(c.file);pe.assert(!!g),g.textStorage.switchToScriptVersionCache();let d=g.lineOffsetToPosition(c.line,c.offset),h=g.lineOffsetToPosition(c.endLine,c.endOffset);d>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(g,qr({span:{start:d,length:h-d},newText:c.insertString})))}reload(c){let g=cp(c.file),d=c.tmpfile===void 0?void 0:cp(c.tmpfile),h=this.projectService.getScriptInfoForNormalizedPath(g);h&&(this.changeSeq++,h.reloadFromFile(d))}saveToTmp(c,g){let d=this.projectService.getScriptInfo(c);d&&d.saveTo(g)}closeClientFile(c){if(!c)return;let g=su(c);this.projectService.closeClientFile(g)}mapLocationNavigationBarItems(c,g){return lt(c,d=>({text:d.text,kind:d.kind,kindModifiers:d.kindModifiers,spans:d.spans.map(h=>VN(h,g)),childItems:this.mapLocationNavigationBarItems(d.childItems,g),indent:d.indent}))}getNavigationBarItems(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationBarItems(d);return _?g?this.mapLocationNavigationBarItems(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}toLocationNavigationTree(c,g){return{text:c.text,kind:c.kind,kindModifiers:c.kindModifiers,spans:c.spans.map(d=>VN(d,g)),nameSpan:c.nameSpan&&VN(c.nameSpan,g),childItems:lt(c.childItems,d=>this.toLocationNavigationTree(d,g))}}getNavigationTree(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationTree(d);return _?g?this.toLocationNavigationTree(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}getNavigateToItems(c,g){let d=this.getFullNavigateToItems(c);return g?jt(d,({project:h,navigateToItems:_})=>_.map(S=>{let R=h.getScriptInfo(S.fileName),T={name:S.name,kind:S.kind,kindModifiers:S.kindModifiers,isCaseSensitive:S.isCaseSensitive,matchKind:S.matchKind,file:S.fileName,start:R.positionToLineOffset(S.textSpan.start),end:R.positionToLineOffset(Rs(S.textSpan))};return S.kindModifiers&&S.kindModifiers!==""&&(T.kindModifiers=S.kindModifiers),S.containerName&&S.containerName.length>0&&(T.containerName=S.containerName),S.containerKind&&S.containerKind.length>0&&(T.containerKind=S.containerKind),T})):jt(d,({navigateToItems:h})=>h)}getFullNavigateToItems(c){let{currentFileOnly:g,searchValue:d,maxResultCount:h,projectFileName:_}=c;if(g){pe.assertIsDefined(c.file);let{file:ee,project:re}=this.getFileAndProject(c);return[{project:re,navigateToItems:re.getLanguageService().getNavigateToItems(d,h,ee)}]}let S=this.getHostPreferences(),R=[],T=new Map;if(!c.file&&!_)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(ee=>O(ee));else{let ee=this.getProjects(c);Gfn(ee,void 0,re=>O(re))}return R;function O(ee){let re=ee.getLanguageService().getNavigateToItems(d,h,void 0,ee.isNonTsProject(),S.excludeLibrarySymbolsInNavTo),ge=Le(re,Ie=>V(Ie)&&!tot(Gpe(Ie),ee));ge.length&&R.push({project:ee,navigateToItems:ge})}function V(ee){let re=ee.name;if(!T.has(re))return T.set(re,[ee]),!0;let ge=T.get(re);for(let Ie of ge)if(M(Ie,ee))return!1;return ge.push(ee),!0}function M(ee,re){return ee===re?!0:!ee||!re?!1:ee.containerKind===re.containerKind&&ee.containerName===re.containerName&&ee.fileName===re.fileName&&ee.isCaseSensitive===re.isCaseSensitive&&ee.kind===re.kind&&ee.kindModifiers===re.kindModifiers&&ee.matchKind===re.matchKind&&ee.name===re.name&&ee.textSpan.start===re.textSpan.start&&ee.textSpan.length===re.textSpan.length}}getSupportedCodeFixes(c){if(!c)return mit();if(c.file){let{file:d,project:h}=this.getFileAndProject(c);return h.getLanguageService().getSupportedCodeFixes(d)}let g=this.getProject(c.projectFileName);return g||qF.ThrowNoProject(),g.getLanguageService().getSupportedCodeFixes()}isLocation(c){return c.line!==void 0}extractPositionOrRange(c,g){let d,h;return this.isLocation(c)?d=_(c):h=this.getRange(c,g),pe.checkDefined(d===void 0?h:d);function _(S){return S.position!==void 0?S.position:g.lineOffsetToPosition(S.line,S.offset)}}getRange(c,g){let{startPosition:d,endPosition:h}=this.getStartAndEndPosition(c,g);return{pos:d,end:h}}getApplicableRefactors(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getApplicableRefactors(g,this.extractPositionOrRange(c,h),this.getPreferences(g),c.triggerReason,c.kind,c.includeInteractiveActions).map(S=>({...S,actions:S.actions.map(R=>({...R,range:R.range?{start:Ese({line:R.range.start.line,character:R.range.start.offset}),end:Ese({line:R.range.end.line,character:R.range.end.offset})}:void 0}))}))}getEditsForRefactor(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),S=h.getLanguageService().getEditsForRefactor(d,this.getFormatOptions(d),this.extractPositionOrRange(c,_),c.refactor,c.action,this.getPreferences(d),c.interactiveRefactorArguments);if(S===void 0)return{edits:[]};if(g){let{renameFilename:R,renameLocation:T,edits:O}=S,V;if(R!==void 0&&T!==void 0){let M=h.getScriptInfoForNormalizedPath(cp(R));V=WJt(qz(M.getSnapshot()),R,T,O)}return{renameLocation:V,renameFilename:R,edits:this.mapTextChangesToCodeEdits(O),notApplicableReason:S.notApplicableReason}}return S}getMoveToRefactoringFileSuggestions(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getMoveToRefactoringFileSuggestions(g,this.extractPositionOrRange(c,h),this.getPreferences(g))}preparePasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().preparePasteEditsForFile(g,c.copiedTextSpan.map(h=>this.getRange({file:g,startLine:h.start.line,startOffset:h.start.offset,endLine:h.end.line,endOffset:h.end.offset},this.projectService.getScriptInfoForNormalizedPath(g))))}getPasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);if(kpe(g))return;let h=c.copiedFrom?{file:c.copiedFrom.file,range:c.copiedFrom.spans.map(S=>this.getRange({file:c.copiedFrom.file,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(cp(c.copiedFrom.file))))}:void 0,_=d.getLanguageService().getPasteEdits({targetFile:g,pastedText:c.pastedText,pasteLocations:c.pasteLocations.map(S=>this.getRange({file:g,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(g))),copiedFrom:h,preferences:this.getPreferences(g)},this.getFormatOptions(g));return _&&this.mapPasteEditsAction(_)}organizeImports(c,g){pe.assert(c.scope.type==="file");let{file:d,project:h}=this.getFileAndProject(c.scope.args),_=h.getLanguageService().organizeImports({fileName:d,mode:c.mode??(c.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(d),this.getPreferences(d));return g?this.mapTextChangesToCodeEdits(_):_}getEditsForFileRename(c,g){let d=cp(c.oldFilePath),h=cp(c.newFilePath),_=this.getHostFormatOptions(),S=this.getHostPreferences(),R=new Set,T=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(O=>{let V=O.getLanguageService().getEditsForFileRename(d,h,_,S),M=[];for(let ee of V)R.has(ee.fileName)||(T.push(ee),M.push(ee.fileName));for(let ee of M)R.add(ee)}),g?T.map(O=>this.mapTextChangeToCodeEdit(O)):T}getCodeFixes(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),{startPosition:S,endPosition:R}=this.getStartAndEndPosition(c,_),T;try{T=h.getLanguageService().getCodeFixesAtPosition(d,S,R,c.errorCodes,this.getFormatOptions(d),this.getPreferences(d))}catch(O){let V=O instanceof Error?O:new Error(O),M=h.getLanguageService(),ee=[...M.getSyntacticDiagnostics(d),...M.getSemanticDiagnostics(d),...M.getSuggestionDiagnostics(d)].filter(ge=>_E(S,R-S,ge.start,ge.length)).map(ge=>ge.code),re=c.errorCodes.find(ge=>!ee.includes(ge));throw re!==void 0&&(V.message+=` +Additional information: BADCLIENT: Bad error code, ${re} not found in range ${S}..${R} (found: ${ee.join(", ")})`),V}return g?T.map(O=>this.mapCodeFixAction(O)):T}getCombinedCodeFix({scope:c,fixId:g},d){pe.assert(c.type==="file");let{file:h,project:_}=this.getFileAndProject(c.args),S=_.getLanguageService().getCombinedCodeFix({type:"file",fileName:h},g,this.getFormatOptions(h),this.getPreferences(h));return d?{changes:this.mapTextChangesToCodeEdits(S.changes),commands:S.commands}:S}applyCodeActionCommand(c){let g=c.command;for(let d of cc(g)){let{file:h,project:_}=this.getFileAndProject(d);_.getLanguageService().applyCodeActionCommand(d,this.getFormatOptions(h)).then(S=>{},S=>{})}return{}}getStartAndEndPosition(c,g){let d,h;return c.startPosition!==void 0?d=c.startPosition:(d=g.lineOffsetToPosition(c.startLine,c.startOffset),c.startPosition=d),c.endPosition!==void 0?h=c.endPosition:(h=g.lineOffsetToPosition(c.endLine,c.endOffset),c.endPosition=h),{startPosition:d,endPosition:h}}mapCodeAction({description:c,changes:g,commands:d}){return{description:c,changes:this.mapTextChangesToCodeEdits(g),commands:d}}mapCodeFixAction({fixName:c,description:g,changes:d,commands:h,fixId:_,fixAllDescription:S}){return{fixName:c,description:g,changes:this.mapTextChangesToCodeEdits(d),commands:h,fixId:_,fixAllDescription:S}}mapPasteEditsAction({edits:c,fixId:g}){return{edits:this.mapTextChangesToCodeEdits(c),fixId:g}}mapTextChangesToCodeEdits(c){return c.map(g=>this.mapTextChangeToCodeEdit(g))}mapTextChangeToCodeEdit(c){let g=this.projectService.getScriptInfoOrConfig(c.fileName);return!!c.isNewFile==!!g&&(g||this.projectService.logErrorForScriptInfoNotFound(c.fileName),pe.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!c.isNewFile,hasScriptInfo:!!g}))),g?{fileName:c.fileName,textChanges:c.textChanges.map(d=>tPs(d,g))}:iPs(c)}convertTextChangeToCodeEdit(c,g){return{start:g.positionToLineOffset(c.span.start),end:g.positionToLineOffset(c.span.start+c.span.length),newText:c.newText?c.newText:""}}getBraceMatching(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getBraceMatchingAtPosition(d,S);return R?g?R.map(T=>VN(T,_)):R:void 0}getDiagnosticsForProject(c,g,d){if(this.suppressDiagnosticEvents)return;let{fileNames:h,languageServiceDisabled:_}=this.getProjectInfoWorker(d,void 0,!0,void 0,!0);if(_)return;let S=h.filter(Ie=>!Ie.includes("lib.d.ts"));if(S.length===0)return;let R=[],T=[],O=[],V=[],M=cp(d),ee=this.projectService.ensureDefaultProjectForFile(M);for(let Ie of S)this.getCanonicalFileName(Ie)===this.getCanonicalFileName(d)?R.push(Ie):this.projectService.getScriptInfo(Ie).isScriptOpen()?T.push(Ie):MC(Ie)?V.push(Ie):O.push(Ie);let ge=[...R,...T,...O,...V].map(Ie=>({fileName:Ie,project:ee}));this.updateErrorCheck(c,ge,g,!1)}configurePlugin(c){this.projectService.configurePlugin(c)}getSmartSelectionRange(c,g){let{locations:d}=c,{file:h,languageService:_}=this.getFileAndLanguageServiceForSyntacticOperation(c),S=pe.checkDefined(this.projectService.getScriptInfo(h));return lt(d,R=>{let T=this.getPosition(R,S),O=_.getSmartSelectionRange(h,T);return g?this.mapSelectionRange(O,S):O})}toggleLineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfo(d),S=this.getRange(c,_),R=h.toggleLineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}toggleMultilineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.toggleMultilineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}commentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.commentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}uncommentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.uncommentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(O=>this.convertTextChangeToCodeEdit(O,T))}return R}mapSelectionRange(c,g){let d={textSpan:VN(c.textSpan,g)};return c.parent&&(d.parent=this.mapSelectionRange(c.parent,g)),d}getScriptInfoFromProjectService(c){let g=cp(c),d=this.projectService.getScriptInfoForNormalizedPath(g);return d||(this.projectService.logErrorForScriptInfoNotFound(g),qF.ThrowNoProject())}toProtocolCallHierarchyItem(c){let g=this.getScriptInfoFromProjectService(c.file);return{name:c.name,kind:c.kind,kindModifiers:c.kindModifiers,file:c.file,containerName:c.containerName,span:VN(c.span,g),selectionSpan:VN(c.selectionSpan,g)}}toProtocolCallHierarchyIncomingCall(c){let g=this.getScriptInfoFromProjectService(c.from.file);return{from:this.toProtocolCallHierarchyItem(c.from),fromSpans:c.fromSpans.map(d=>VN(d,g))}}toProtocolCallHierarchyOutgoingCall(c,g){return{to:this.toProtocolCallHierarchyItem(c.to),fromSpans:c.fromSpans.map(d=>VN(d,g))}}prepareCallHierarchy(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);if(h){let _=this.getPosition(c,h),S=d.getLanguageService().prepareCallHierarchy(g,_);return S&&Tnt(S,R=>this.toProtocolCallHierarchyItem(R))}}provideCallHierarchyIncomingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyIncomingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyIncomingCall(S))}provideCallHierarchyOutgoingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyOutgoingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyOutgoingCall(S,h))}getCanonicalFileName(c){let g=this.host.useCaseSensitiveFileNames?c:Qm(c);return su(g)}exit(){}notRequired(c){return c&&this.doOutput(void 0,c.command,c.seq,!0,this.performanceData),{responseRequired:!1,performanceData:this.performanceData}}requiredResponse(c){return{response:c,responseRequired:!0,performanceData:this.performanceData}}addProtocolHandler(c,g){if(this.handlers.has(c))throw new Error(`Protocol handler already exists for command "${c}"`);this.handlers.set(c,g)}setCurrentRequest(c){pe.assert(this.currentRequestId===void 0),this.currentRequestId=c,this.cancellationToken.setRequest(c)}resetCurrentRequest(c){pe.assert(this.currentRequestId===c),this.currentRequestId=void 0,this.cancellationToken.resetRequest(c)}executeWithRequestId(c,g,d){let h=this.performanceData;try{return this.performanceData=d,this.setCurrentRequest(c),g()}finally{this.resetCurrentRequest(c),this.performanceData=h}}executeCommand(c){let g=this.handlers.get(c.command);if(g){let d=this.executeWithRequestId(c.seq,()=>g(c),void 0);return this.projectService.enableRequestedPlugins(),d}else return this.logger.msg(`Unrecognized JSON command:${s5(c)}`,"Err"),this.doOutput(void 0,"unknown",c.seq,!1,void 0,`Unrecognized JSON command: ${c.command}`),{responseRequired:!1}}onMessage(c){var g,d,h,_,S,R,T;this.gcTimer.scheduleCollect();let O,V=this.performanceData;this.logger.hasLevel(2)&&(O=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${ipe(this.toStringMessage(c))}`));let M,ee;try{M=this.parseMessage(c),ee=M.arguments&&M.arguments.file?M.arguments:void 0,(g=ki)==null||g.instant(ki.Phase.Session,"request",{seq:M.seq,command:M.command}),(d=ki)==null||d.push(ki.Phase.Session,"executeCommand",{seq:M.seq,command:M.command},!0);let{response:re,responseRequired:ge,performanceData:Ie}=this.executeCommand(M);if((h=ki)==null||h.pop(),this.logger.hasLevel(2)){let _e=QOs(this.hrtime(O)).toFixed(4);ge?this.logger.perftrc(`${M.seq}::${M.command}: elapsed time (in milliseconds) ${_e}`):this.logger.perftrc(`${M.seq}::${M.command}: async elapsed time (in milliseconds) ${_e}`)}(_=ki)==null||_.instant(ki.Phase.Session,"response",{seq:M.seq,command:M.command,success:!!re}),re?this.doOutput(re,M.command,M.seq,!0,Ie):ge&&this.doOutput(void 0,M.command,M.seq,!1,Ie,"No content available.")}catch(re){if((S=ki)==null||S.popAll(),re instanceof Ry){(R=ki)==null||R.instant(ki.Phase.Session,"commandCanceled",{seq:M?.seq,command:M?.command}),this.doOutput({canceled:!0},M.command,M.seq,!0,this.performanceData);return}this.logErrorWorker(re,this.toStringMessage(c),ee),(T=ki)==null||T.instant(ki.Phase.Session,"commandError",{seq:M?.seq,command:M?.command,message:re.message}),this.doOutput(void 0,M?M.command:"unknown",M?M.seq:0,!1,this.performanceData,"Error processing request. "+re.message+` +`+re.stack)}finally{this.performanceData=V}}parseMessage(c){return JSON.parse(c)}toStringMessage(c){return c}getFormatOptions(c){return this.projectService.getFormatCodeOptions(c)}getPreferences(c){return this.projectService.getPreferences(c)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function Pfn(s){let c=s.diagnosticsDuration&&Do(s.diagnosticsDuration,([g,d])=>({...d,file:g}));return{...s,diagnosticsDuration:c}}function VN(s,c){return{start:c.positionToLineOffset(s.start),end:c.positionToLineOffset(Rs(s))}}function VJt(s,c,g){let d=VN(s,g),h=c&&VN(c,g);return h?{...d,contextStart:h.start,contextEnd:h.end}:d}function tPs(s,c){return{start:Mfn(c,s.span.start),end:Mfn(c,Rs(s.span)),newText:s.newText}}function Mfn(s,c){return DJt(s)?nPs(s.getLineAndCharacterOfPosition(c)):s.positionToLineOffset(c)}function rPs(s,c){let g=s.ranges.map(d=>({start:c.positionToLineOffset(d.start),end:c.positionToLineOffset(d.start+d.length)}));return s.wordPattern?{ranges:g,wordPattern:s.wordPattern}:{ranges:g}}function nPs(s){return{line:s.line+1,offset:s.character+1}}function iPs(s){pe.assert(s.textChanges.length===1);let c=ma(s.textChanges);return pe.assert(c.span.start===0&&c.span.length===0),{fileName:s.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:c.newText}]}}function WJt(s,c,g,d){let h=sPs(s,c,d),{line:_,character:S}=Ci(uA(h),g);return{line:_+1,offset:S+1}}function sPs(s,c,g){for(let{fileName:d,textChanges:h}of g)if(d===c)for(let _=h.length-1;_>=0;_--){let{newText:S,span:{start:R,length:T}}=h[_];s=s.slice(0,R)+S+s.slice(R+T)}return s}function Hfn(s,{fileName:c,textSpan:g,contextSpan:d,isWriteAccess:h,isDefinition:_},{disableLineTextInReferences:S}){let R=pe.checkDefined(s.getScriptInfo(c)),T=VJt(g,d,R),O=S?void 0:oPs(R,T);return{file:c,...T,lineText:O,isWriteAccess:h,isDefinition:_}}function oPs(s,c){let g=s.lineToTextSpan(c.start.line-1);return s.getSnapshot().getText(g.start,Rs(g)).replace(/\r|\n/g,"")}function aPs(s){return s===void 0||s&&typeof s=="object"&&typeof s.exportName=="string"&&(s.fileName===void 0||typeof s.fileName=="string")&&(s.ambientModuleName===void 0||typeof s.ambientModuleName=="string"&&(s.isPackageJsonImport===void 0||typeof s.isPackageJsonImport=="boolean"))}var Sse=4,OJt=(s=>(s[s.PreStart=0]="PreStart",s[s.Start=1]="Start",s[s.Entire=2]="Entire",s[s.Mid=3]="Mid",s[s.End=4]="End",s[s.PostEnd=5]="PostEnd",s))(OJt||{}),cPs=class{constructor(){this.goSubtree=!0,this.lineIndex=new R2e,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new vse,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(s,c){c&&(this.trailingText=""),s?s=this.initialText+s+this.trailingText:s=this.initialText+this.trailingText;let d=R2e.linesFromText(s).lines;d.length>1&&d[d.length-1]===""&&d.pop();let h,_;for(let R=this.endBranch.length-1;R>=0;R--)this.endBranch[R].updateCounts(),this.endBranch[R].charCount()===0&&(_=this.endBranch[R],R>0?h=this.endBranch[R-1]:h=this.branchNode);_&&h.remove(_);let S=this.startPath[this.startPath.length-1];if(d.length>0)if(S.text=d[0],d.length>1){let R=new Array(d.length-1),T=S;for(let M=1;M=0;){let M=this.startPath[O];R=M.insertAt(T,R),O--,T=M}let V=R.length;for(;V>0;){let M=new vse;M.add(this.lineIndex.root),R=M.insertAt(this.lineIndex.root,R),V=R.length,this.lineIndex.root=M}this.lineIndex.root.updateCounts()}else for(let R=this.startPath.length-2;R>=0;R--)this.startPath[R].updateCounts();else{this.startPath[this.startPath.length-2].remove(S);for(let T=this.startPath.length-2;T>=0;T--)this.startPath[T].updateCounts()}return this.lineIndex}post(s,c,g){g===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(s,c,g,d,h){let _=this.stack[this.stack.length-1];this.state===2&&h===1&&(this.state=1,this.branchNode=_,this.lineCollectionAtBranch=g);let S;function R(T){return T.isLeaf()?new DOe(""):new vse}switch(h){case 0:this.goSubtree=!1,this.state!==4&&_.add(g);break;case 1:this.state===4?this.goSubtree=!1:(S=R(g),_.add(S),this.startPath.push(S));break;case 2:this.state!==4?(S=R(g),_.add(S),this.startPath.push(S)):g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 5:this.goSubtree=!1,this.state!==1&&_.add(g);break}this.goSubtree&&this.stack.push(S)}leaf(s,c,g){this.state===1?this.initialText=g.text.substring(0,s):this.state===2?(this.initialText=g.text.substring(0,s),this.trailingText=g.text.substring(s+c)):this.trailingText=g.text.substring(s+c)}},lPs=class{constructor(s,c,g){this.pos=s,this.deleteLen=c,this.insertedText=g}getTextChangeRange(){return iS($d(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},rot=class Z6{constructor(){this.changes=[],this.versions=new Array(Z6.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(c){if(!(cthis.currentVersion))return c%Z6.maxVersions}currentVersionToIndex(){return this.currentVersion%Z6.maxVersions}edit(c,g,d){this.changes.push(new lPs(c,g,d)),(this.changes.length>Z6.changeNumberThreshold||g>Z6.changeLengthThreshold||d&&d.length>Z6.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let c=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let g=c.index;for(let d of this.changes)g=g.edit(d.pos,d.deleteLen,d.insertedText);c=new Yfn(this.currentVersion+1,this,g,this.changes),this.currentVersion=c.version,this.versions[this.currentVersionToIndex()]=c,this.changes=[],this.currentVersion-this.minVersion>=Z6.maxVersions&&(this.minVersion=this.currentVersion-Z6.maxVersions+1)}return c}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(c){return this._getSnapshot().index.lineNumberToInfo(c)}lineOffsetToPosition(c,g){return this._getSnapshot().index.absolutePositionOfStartOfLine(c)+(g-1)}positionToLineOffset(c){return this._getSnapshot().index.positionToLineOffset(c)}lineToTextSpan(c){let g=this._getSnapshot().index,{lineText:d,absolutePosition:h}=g.lineNumberToInfo(c+1),_=d!==void 0?d.length:g.absolutePositionOfStartOfLine(c+2)-h;return $d(h,_)}getTextChangesBetweenVersions(c,g){if(c=this.minVersion){let d=[];for(let h=c+1;h<=g;h++){let _=this.versions[this.versionToIndex(h)];for(let S of _.changesSincePreviousVersion)d.push(S.getTextChangeRange())}return z(d)}else return;else return bo}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(c){let g=new Z6,d=new Yfn(0,g,new R2e);g.versions[g.currentVersion]=d;let h=R2e.linesFromText(c);return d.index.load(h.lines),g}};rot.changeNumberThreshold=8,rot.changeLengthThreshold=256,rot.maxVersions=8;var not=rot,Yfn=class Oki{constructor(c,g,d,h=tC){this.version=c,this.cache=g,this.index=d,this.changesSincePreviousVersion=h}getText(c,g){return this.index.getText(c,g-c)}getLength(){return this.index.getLength()}getChangeRange(c){if(c instanceof Oki&&this.cache===c.cache)return this.version<=c.version?bo:this.cache.getTextChangesBetweenVersions(c.version,this.version)}},R2e=class Mxr{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(c){return this.lineNumberToInfo(c).absolutePosition}positionToLineOffset(c){let{oneBasedLine:g,zeroBasedColumn:d}=this.root.charOffsetToLineInfo(1,c);return{line:g,offset:d+1}}positionToColumnAndLineText(c){return this.root.charOffsetToLineInfo(1,c)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(c){let g=this.getLineCount();if(c<=g){let{position:d,leaf:h}=this.root.lineNumberToInfo(c,0);return{absolutePosition:d,lineText:h&&h.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(c){if(c.length>0){let g=[];for(let d=0;d0&&c{d=d.concat(S.text.substring(h,h+_))}}),d}getLength(){return this.root.charCount()}every(c,g,d){d||(d=this.root.charCount());let h={goSubtree:!0,done:!1,leaf(_,S,R){c(R,_,S)||(this.done=!0)}};return this.walk(g,d-g,h),!h.done}edit(c,g,d){if(this.root.charCount()===0)return pe.assert(g===0),d!==void 0?(this.load(Mxr.linesFromText(d).lines),this):void 0;{let h;if(this.checkEdits){let R=this.getText(0,this.root.charCount());h=R.slice(0,c)+d+R.slice(c+g)}let _=new cPs,S=!1;if(c>=this.root.charCount()){c=this.root.charCount()-1;let R=this.getText(c,1);d?d=R+d:d=R,g=0,S=!0}else if(g>0){let R=c+g,{zeroBasedColumn:T,lineText:O}=this.positionToColumnAndLineText(R);T===0&&(g+=O.length,d=d?d+O:O)}if(this.root.walk(c,g,_),_.insertLines(d,S),this.checkEdits){let R=_.lineIndex.getText(0,_.lineIndex.getLength());pe.assert(h===R,"buffer edit mismatch")}return _.lineIndex}}static buildTreeFromBottom(c){if(c.length0?d[h]=_:d.pop(),{lines:d,lineMap:g}}},vse=class Hxr{constructor(c=[]){this.children=c,this.totalChars=0,this.totalLines=0,c.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let c of this.children)this.totalChars+=c.charCount(),this.totalLines+=c.lineCount()}execWalk(c,g,d,h,_){return d.pre&&d.pre(c,g,this.children[h],this,_),d.goSubtree?(this.children[h].walk(c,g,d),d.post&&d.post(c,g,this.children[h],this,_)):d.goSubtree=!0,d.done}skipChild(c,g,d,h,_){h.pre&&!h.done&&(h.pre(c,g,this.children[d],this,_),h.goSubtree=!0)}walk(c,g,d){if(this.children.length===0)return;let h=0,_=this.children[h].charCount(),S=c;for(;S>=_;)this.skipChild(S,g,h,d,0),S-=_,h++,_=this.children[h].charCount();if(S+g<=_){if(this.execWalk(S,g,d,h,2))return}else{if(this.execWalk(S,_-S,d,h,1))return;let R=g-(_-S);for(h++,_=this.children[h].charCount();R>_;){if(this.execWalk(0,_,d,h,3))return;R-=_,h++,_=this.children[h].charCount()}if(R>0&&this.execWalk(0,R,d,h,4))return}if(d.pre){let R=this.children.length;if(hg)return _.isLeaf()?{oneBasedLine:c,zeroBasedColumn:g,lineText:_.text}:_.charOffsetToLineInfo(c,g);g-=_.charCount(),c+=_.lineCount()}let d=this.lineCount();if(d===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let h=pe.checkDefined(this.lineNumberToInfo(d,0).leaf);return{oneBasedLine:d,zeroBasedColumn:h.charCount(),lineText:void 0}}lineNumberToInfo(c,g){for(let d of this.children){let h=d.lineCount();if(h>=c)return d.isLeaf()?{position:g,leaf:d}:d.lineNumberToInfo(c,g);c-=h,g+=d.charCount()}return{position:g,leaf:void 0}}splitAfter(c){let g,d=this.children.length;c++;let h=c;if(c=0;ee--)T[ee].children.length===0&&T.pop()}S&&T.push(S),this.updateCounts();for(let V=0;V{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:h,reject:_})});return this.installer.send(g),d}attach(c){this.projectService=c,this.installer=this.createInstallerProcess()}onProjectClosed(c){this.installer.send({projectName:c.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(c,g,d){let h=J4t(c,g,d);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${s5(h)}`),this.activeRequestCount0?this.activeRequestCount--:pe.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){let h=this.requestQueue.dequeue();if(this.requestMap.get(h.projectName)===h){this.requestMap.delete(h.projectName),this.scheduleRequest(h);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${h.projectName}`)}this.projectService.updateTypingsForProject(c),this.event(c,"setTypings");break}case v1e:this.projectService.watchTypingLocations(c);break;default:}}scheduleRequest(c){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${c.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${s5(c)}`),this.installer.send(c)},Pki.requestDelayMillis,`${c.projectName}::${c.kind}`)}};Qfn.requestDelayMillis=100;var Xfn=Qfn,Jfn={};o(Jfn,{ActionInvalidate:()=>KVe,ActionPackageInstalled:()=>jVe,ActionSet:()=>UVe,ActionWatchTypingLocations:()=>v1e,Arguments:()=>Nrt,AutoImportProviderProject:()=>pJt,AuxiliaryProject:()=>AJt,CharRangeSection:()=>OJt,CloseFileWatcherEvent:()=>Qst,CommandNames:()=>kfn,ConfigFileDiagEvent:()=>Ost,ConfiguredProject:()=>fJt,ConfiguredProjectLoadKind:()=>yJt,CreateDirectoryWatcherEvent:()=>Yst,CreateFileWatcherEvent:()=>Hst,Errors:()=>qF,EventBeginInstallTypes:()=>Trt,EventEndInstallTypes:()=>Rrt,EventInitializationFailed:()=>$5t,EventTypesRegistry:()=>wrt,ExternalProject:()=>Gst,GcTimer:()=>eJt,InferredProject:()=>gJt,LargeFileReferencedEvent:()=>Wst,LineIndex:()=>R2e,LineLeaf:()=>DOe,LineNode:()=>vse,LogLevel:()=>Q4t,Msg:()=>X4t,OpenFileInfoTelemetryEvent:()=>IJt,Project:()=>Aq,ProjectInfoTelemetryEvent:()=>Mst,ProjectKind:()=>xpe,ProjectLanguageServiceStateEvent:()=>Pst,ProjectLoadingFinishEvent:()=>Vst,ProjectLoadingStartEvent:()=>Lst,ProjectService:()=>NJt,ProjectsUpdatedInBackgroundEvent:()=>TOe,ScriptInfo:()=>iJt,ScriptVersionCache:()=>not,Session:()=>Ofn,TextStorage:()=>nJt,ThrottledOperations:()=>$4t,TypingsInstallerAdapter:()=>Xfn,allFilesAreJsOrDts:()=>cJt,allRootFilesAreJsOrDts:()=>aJt,asNormalizedPath:()=>ifn,convertCompilerOptions:()=>ROe,convertFormatOptions:()=>bse,convertScriptKindName:()=>Jst,convertTypeAcquisition:()=>mJt,convertUserPreferences:()=>CJt,convertWatchOptions:()=>w2e,countEachFileTypes:()=>E2e,createInstallTypingsRequest:()=>J4t,createModuleSpecifierCache:()=>xJt,createNormalizedPathMap:()=>sfn,createPackageJsonCache:()=>GJt,createSortedArray:()=>q4t,emptyArray:()=>tC,findArgument:()=>iin,formatDiagnosticToProtocol:()=>T2e,formatMessage:()=>FJt,getBaseConfigFileName:()=>xst,getDetailWatchInfo:()=>zst,getLocationInNewDocument:()=>WJt,hasArgument:()=>nin,hasNoTypeScriptSource:()=>lJt,indent:()=>ipe,isBackgroundProject:()=>v2e,isConfigFile:()=>DJt,isConfiguredProject:()=>A9,isDynamicFileName:()=>kpe,isExternalProject:()=>S2e,isInferredProject:()=>yse,isInferredProjectName:()=>U4t,isProjectDeferredClose:()=>B2e,makeAutoImportProviderProjectName:()=>j4t,makeAuxiliaryProjectName:()=>z4t,makeInferredProjectName:()=>K4t,maxFileSize:()=>Zst,maxProgramSizeForNonTsFiles:()=>Fst,normalizedPathToPath:()=>_se,nowString:()=>sin,nullCancellationToken:()=>Rfn,nullTypingsInstaller:()=>NOe,protocol:()=>tJt,scriptInfoIsContainedByBackgroundProject:()=>sJt,scriptInfoIsContainedByDeferredClosedProject:()=>oJt,stringifyIndented:()=>s5,toEvent:()=>ZJt,toNormalizedPath:()=>cp,tryConvertScriptKindName:()=>Xst,typingsInstaller:()=>Y4t,updateProjectIfDirty:()=>vv}),typeof console<"u"&&(pe.loggingHost={log(s,c){switch(s){case 1:return console.error(c);case 2:return console.warn(c);case 3:return console.log(c);case 4:return console.log(c)}}})})({get exports(){return Gki},set exports(e){Gki=e,typeof v1t<"u"&&v1t.exports&&(v1t.exports=e)}})});var kGi=H((MFu,DGi)=>{"use strict";var RGi=Et("path"),zpc=bjt(),qpc=Sjt();function NGi(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=zpc.sync(e.command,{path:r[qpc({env:r})],pathExt:t?RGi.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=RGi.resolve(a?e.options.cwd:"",l)),l}function $pc(e){return NGi(e)||NGi(e,!0)}DGi.exports=$pc});var xGi=H((HFu,yGr)=>{"use strict";var _Gr=/([()\][%!^"`<>&|;, *?])/g;function efc(e){return e=e.replace(_Gr,"^$1"),e}function tfc(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace(_Gr,"^$1"),t&&(e=e.replace(_Gr,"^$1")),e}yGr.exports.command=efc;yGr.exports.argument=tfc});var FGi=H((YFu,GGi)=>{"use strict";var bGr=Et("fs"),rfc=wjt();function nfc(e){let r=Buffer.alloc(150),n;try{n=bGr.openSync(e,"r"),bGr.readSync(n,r,0,150,0),bGr.closeSync(n)}catch{}return rfc(r.toString())}GGi.exports=nfc});var WGi=H((QFu,VGi)=>{"use strict";var ifc=Et("path"),ZGi=kGi(),LGi=xGi(),sfc=FGi(),ofc=process.platform==="win32",afc=/\.(?:com|exe)$/i,cfc=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function lfc(e){e.file=ZGi(e);let t=e.file&&sfc(e.file);return t?(e.args.unshift(e.file),e.command=t,ZGi(e)):e.file}function ufc(e){if(!ofc)return e;let t=lfc(e),r=!afc.test(t);if(e.options.forceShell||r){let n=cfc.test(t);e.command=ifc.normalize(e.command),e.command=LGi.command(e.command),e.args=e.args.map(o=>LGi.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function gfc(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:ufc(n)}VGi.exports=gfc});var MGi=H((XFu,PGi)=>{"use strict";var EGr=process.platform==="win32";function SGr(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function Afc(e,t){if(!EGr)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=OGi(a,t,"spawn");if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function OGi(e,t){return EGr&&e===1&&!t.file?SGr(t.original,"spawn"):null}function dfc(e,t){return EGr&&e===1&&!t.file?SGr(t.original,"spawnSync"):null}PGi.exports={hookChildProcess:Afc,verifyENOENT:OGi,verifyENOENTSync:dfc,notFoundError:SGr}});var QGi=H((JFu,vDe)=>{"use strict";var HGi=Et("child_process"),vGr=WGi(),BGr=MGi();function YGi(e,t,r){let n=vGr(e,t,r),a=HGi.spawn(n.command,n.args,n.options);return BGr.hookChildProcess(a,n),a}function pfc(e,t,r){let n=vGr(e,t,r),a=HGi.spawnSync(n.command,n.args,n.options);return a.error=a.error||BGr.verifyENOENTSync(a.status,n),a}vDe.exports=YGi;vDe.exports.spawn=YGi;vDe.exports.sync=pfc;vDe.exports._parse=vGr;vDe.exports._enoent=BGr});var wGr=H((UFu,XGi)=>{"use strict";XGi.exports=function(t,r){return function(){for(var a=new Array(arguments.length),o=0;o{"use strict";var ffc=wGr(),LCe=Object.prototype.toString;function NGr(e){return LCe.call(e)==="[object Array]"}function TGr(e){return typeof e>"u"}function Ifc(e){return e!==null&&!TGr(e)&&e.constructor!==null&&!TGr(e.constructor)&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function hfc(e){return LCe.call(e)==="[object ArrayBuffer]"}function mfc(e){return typeof FormData<"u"&&e instanceof FormData}function Cfc(e){var t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function _fc(e){return typeof e=="string"}function yfc(e){return typeof e=="number"}function JGi(e){return e!==null&&typeof e=="object"}function V1t(e){if(LCe.call(e)!=="[object Object]")return!1;var t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function bfc(e){return LCe.call(e)==="[object Date]"}function Efc(e){return LCe.call(e)==="[object File]"}function Sfc(e){return LCe.call(e)==="[object Blob]"}function UGi(e){return LCe.call(e)==="[object Function]"}function vfc(e){return JGi(e)&&UGi(e.pipe)}function Bfc(e){return typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function wfc(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function Tfc(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function DGr(e,t){if(!(e===null||typeof e>"u"))if(typeof e!="object"&&(e=[e]),NGr(e))for(var r=0,n=e.length;r{"use strict";var BDe=sL();function jGi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}zGi.exports=function(t,r,n){if(!r)return t;var a;if(n)a=n(r);else if(BDe.isURLSearchParams(r))a=r.toString();else{var o=[];BDe.forEach(r,function(f,I){f===null||typeof f>"u"||(BDe.isArray(f)?I=I+"[]":f=[f],BDe.forEach(f,function(b){BDe.isDate(b)?b=b.toISOString():BDe.isObject(b)&&(b=JSON.stringify(b)),o.push(jGi(I)+"="+jGi(b))}))}),a=o.join("&")}if(a){var l=t.indexOf("#");l!==-1&&(t=t.slice(0,l)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}});var $Gi=H((zFu,qGi)=>{"use strict";var Dfc=sL();function O1t(){this.handlers=[]}O1t.prototype.use=function(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1};O1t.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)};O1t.prototype.forEach=function(t){Dfc.forEach(this.handlers,function(n){n!==null&&t(n)})};qGi.exports=O1t});var tFi=H((qFu,eFi)=>{"use strict";var kfc=sL();eFi.exports=function(t,r){kfc.forEach(t,function(a,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(t[r]=a,delete t[o])})}});var P1t=H(($Fu,rFi)=>{"use strict";rFi.exports=function(t,r,n,a,o){return t.config=r,n&&(t.code=n),t.request=a,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}});var M1t=H((eZu,nFi)=>{"use strict";var xfc=P1t();nFi.exports=function(t,r,n,a,o){var l=new Error(t);return xfc(l,r,n,a,o)}});var kGr=H((tZu,iFi)=>{"use strict";var Gfc=M1t();iFi.exports=function(t,r,n){var a=n.config.validateStatus;!n.status||!a||a(n.status)?t(n):r(Gfc("Request failed with status code "+n.status,n.config,null,n.request,n))}});var oFi=H((rZu,sFi)=>{"use strict";var H1t=sL();sFi.exports=H1t.isStandardBrowserEnv()?function(){return{write:function(r,n,a,o,l,A){var f=[];f.push(r+"="+encodeURIComponent(n)),H1t.isNumber(a)&&f.push("expires="+new Date(a).toGMTString()),H1t.isString(o)&&f.push("path="+o),H1t.isString(l)&&f.push("domain="+l),A===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var cFi=H((nZu,aFi)=>{"use strict";aFi.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}});var uFi=H((iZu,lFi)=>{"use strict";lFi.exports=function(t,r){return r?t.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):t}});var xGr=H((sZu,gFi)=>{"use strict";var Ffc=cFi(),Zfc=uFi();gFi.exports=function(t,r){return t&&!Ffc(r)?Zfc(t,r):r}});var dFi=H((oZu,AFi)=>{"use strict";var GGr=sL(),Lfc=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];AFi.exports=function(t){var r={},n,a,o;return t&&GGr.forEach(t.split(` +`),function(A){if(o=A.indexOf(":"),n=GGr.trim(A.substr(0,o)).toLowerCase(),a=GGr.trim(A.substr(o+1)),n){if(r[n]&&Lfc.indexOf(n)>=0)return;n==="set-cookie"?r[n]=(r[n]?r[n]:[]).concat([a]):r[n]=r[n]?r[n]+", "+a:a}}),r}});var IFi=H((aZu,fFi)=>{"use strict";var pFi=sL();fFi.exports=pFi.isStandardBrowserEnv()?function(){var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function a(o){var l=o;return t&&(r.setAttribute("href",l),l=r.href),r.setAttribute("href",l),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=a(window.location.href),function(l){var A=pFi.isString(l)?a(l):l;return A.protocol===n.protocol&&A.host===n.host}}():function(){return function(){return!0}}()});var mFi=H((cZu,hFi)=>{"use strict";var Y1t=sL(),Vfc=kGr(),Wfc=oFi(),Ofc=W1t(),Pfc=xGr(),Mfc=dFi(),Hfc=IFi(),FGr=M1t();hFi.exports=function(t){return new Promise(function(n,a){var o=t.data,l=t.headers,A=t.responseType;Y1t.isFormData(o)&&delete l["Content-Type"];var f=new XMLHttpRequest;if(t.auth){var I=t.auth.username||"",C=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";l.Authorization="Basic "+btoa(I+":"+C)}var b=Pfc(t.baseURL,t.url);f.open(t.method.toUpperCase(),Ofc(b,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function E(){if(f){var B="getAllResponseHeaders"in f?Mfc(f.getAllResponseHeaders()):null,F=!A||A==="text"||A==="json"?f.responseText:f.response,Q={data:F,status:f.status,statusText:f.statusText,headers:B,config:t,request:f};Vfc(n,a,Q),f=null}}if("onloadend"in f?f.onloadend=E:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(E)},f.onabort=function(){f&&(a(FGr("Request aborted",t,"ECONNABORTED",f)),f=null)},f.onerror=function(){a(FGr("Network Error",t,null,f)),f=null},f.ontimeout=function(){var F="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(F=t.timeoutErrorMessage),a(FGr(F,t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",f)),f=null},Y1t.isStandardBrowserEnv()){var N=(t.withCredentials||Hfc(b))&&t.xsrfCookieName?Wfc.read(t.xsrfCookieName):void 0;N&&(l[t.xsrfHeaderName]=N)}"setRequestHeader"in f&&Y1t.forEach(l,function(F,Q){typeof o>"u"&&Q.toLowerCase()==="content-type"?delete l[Q]:f.setRequestHeader(Q,F)}),Y1t.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),A&&A!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",t.onDownloadProgress),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(F){f&&(f.abort(),a(F),f=null)}),o||(o=null),f.send(o)})}});var _Fi=H((lZu,CFi)=>{var LUe;CFi.exports=function(){if(!LUe){try{LUe=Et("debug")("follow-redirects")}catch{}typeof LUe!="function"&&(LUe=function(){})}LUe.apply(null,arguments)}});var UGr=H((uZu,JGr)=>{var WUe=Et("url"),VUe=WUe.URL,Yfc=Et("http"),Qfc=Et("https"),OGr=Et("stream").Writable,PGr=Et("assert"),yFi=_Fi();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=WCe(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var MGr=!1;try{PGr(new VUe(""))}catch(e){MGr=e.code==="ERR_INVALID_URL"}var Xfc=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],HGr=["abort","aborted","connect","error","socket","timeout"],YGr=Object.create(null);HGr.forEach(function(e){YGr[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var LGr=OUe("ERR_INVALID_URL","Invalid URL",TypeError),VGr=OUe("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),Jfc=OUe("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",VGr),Ufc=OUe("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),Kfc=OUe("ERR_STREAM_WRITE_AFTER_END","write after end"),jfc=OGr.prototype.destroy||EFi;function FV(e,t){OGr.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(a){r.emit("error",a instanceof VGr?a:new VGr({cause:a}))}},this._performRequest()}FV.prototype=Object.create(OGr.prototype);FV.prototype.abort=function(){XGr(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};FV.prototype.destroy=function(e){return XGr(this._currentRequest,e),jfc.call(this,e),this};FV.prototype.write=function(e,t,r){if(this._ending)throw new Kfc;if(!VCe(e)&&!$fc(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(WCe(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new Ufc),this.abort())};FV.prototype.end=function(e,t,r){if(WCe(e)?(r=e,e=t=null):WCe(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,a=this._currentRequest;this.write(e,t,function(){n._ended=!0,a.end(null,null,r)}),this._ending=!0}};FV.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};FV.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};FV.prototype.setTimeout=function(e,t){var r=this;function n(l){l.setTimeout(e),l.removeListener("timeout",l.destroy),l.addListener("timeout",l.destroy)}function a(l){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),o()},e),n(l)}function o(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",o),r.removeListener("error",o),r.removeListener("response",o),r.removeListener("close",o),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",a)}return t&&this.on("timeout",t),this.socket?a(this.socket):this._currentRequest.once("socket",a),this.on("socket",n),this.on("abort",o),this.on("error",o),this.on("response",o),this.on("close",o),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){FV.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(FV.prototype,e,{get:function(){return this._currentRequest[e]}})});FV.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};FV.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var a of HGr)n.on(a,YGr[a]);if(this._currentUrl=/^\//.test(this._options.path)?WUe.format(this._options):this._options.path,this._isRedirect){var o=0,l=this,A=this._requestBodyBuffers;(function f(I){if(n===l._currentRequest)if(I)l.emit("error",I);else if(o=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(XGr(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new Jfc;var n,a=this._options.beforeRedirect;a&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var o=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],ZGr(/^content-/i,this._options.headers));var l=ZGr(/^host$/i,this._options.headers),A=QGr(this._currentUrl),f=l||A.host,I=/^\w+:/.test(r)?this._currentUrl:WUe.format(Object.assign(A,{host:f})),C=zfc(r,I);if(yFi("redirecting to",C.href),this._isRedirect=!0,WGr(C,this._options),(C.protocol!==A.protocol&&C.protocol!=="https:"||C.host!==f&&!qfc(C.host,f))&&ZGr(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),WCe(a)){var b={headers:e.headers,statusCode:t},E={url:I,method:o,headers:n};a(this._options,b,E),this._sanitizeOptions(this._options)}this._performRequest()};function bFi(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var a=n+":",o=r[a]=e[n],l=t[n]=Object.create(o);function A(I,C,b){return eIc(I)?I=WGr(I):VCe(I)?I=WGr(QGr(I)):(b=C,C=SFi(I),I={protocol:a}),WCe(C)&&(b=C,C=null),C=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},I,C),C.nativeProtocols=r,!VCe(C.host)&&!VCe(C.hostname)&&(C.hostname="::1"),PGr.equal(C.protocol,a,"protocol mismatch"),yFi("options",C),new FV(C,b)}function f(I,C,b){var E=l.request(I,C,b);return E.end(),E}Object.defineProperties(l,{request:{value:A,configurable:!0,enumerable:!0,writable:!0},get:{value:f,configurable:!0,enumerable:!0,writable:!0}})}),t}function EFi(){}function QGr(e){var t;if(MGr)t=new VUe(e);else if(t=SFi(WUe.parse(e)),!VCe(t.protocol))throw new LGr({input:e});return t}function zfc(e,t){return MGr?new VUe(e,t):QGr(WUe.resolve(t,e))}function SFi(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new LGr({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new LGr({input:e.href||e});return e}function WGr(e,t){var r=t||{};for(var n of Xfc)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function ZGr(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function OUe(e,t,r){function n(a){WCe(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,a||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function XGr(e,t){for(var r of HGr)e.removeListener(r,YGr[r]);e.on("error",EFi),e.destroy(t)}function qfc(e,t){PGr(VCe(e)&&VCe(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function VCe(e){return typeof e=="string"||e instanceof String}function WCe(e){return typeof e=="function"}function $fc(e){return typeof e=="object"&&"length"in e}function eIc(e){return VUe&&e instanceof VUe}JGr.exports=bFi({http:Yfc,https:Qfc});JGr.exports.wrap=bFi});var KGr=H((gZu,tIc)=>{tIc.exports={name:"axios",version:"0.21.4",description:"Promise based HTTP client for the browser and node.js",main:"index.js",scripts:{test:"grunt test",start:"node ./sandbox/server.js",build:"NODE_ENV=production grunt build",preversion:"npm test",version:"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",postversion:"git push && git push --tags",examples:"node ./examples/server.js",coveralls:"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",fix:"eslint --fix lib/**/*.js"},repository:{type:"git",url:"https://github.com/axios/axios.git"},keywords:["xhr","http","ajax","promise","node"],author:"Matt Zabriskie",license:"MIT",bugs:{url:"https://github.com/axios/axios/issues"},homepage:"https://axios-http.com",devDependencies:{coveralls:"^3.0.0","es6-promise":"^4.2.4",grunt:"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1",karma:"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2",minimist:"^1.2.0",mocha:"^8.2.1",sinon:"^4.5.0","terser-webpack-plugin":"^4.2.3",typescript:"^4.0.5","url-search-params":"^0.10.0",webpack:"^4.44.2","webpack-dev-server":"^3.11.0"},browser:{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},jsdelivr:"dist/axios.min.js",unpkg:"dist/axios.min.js",typings:"./index.d.ts",dependencies:{"follow-redirects":"^1.14.0"},bundlesize:[{path:"./dist/axios.min.js",threshold:"5kB"}]}});var NFi=H((AZu,RFi)=>{"use strict";var PUe=sL(),vFi=kGr(),rIc=xGr(),nIc=W1t(),iIc=Et("http"),sIc=Et("https"),oIc=UGr().http,aIc=UGr().https,BFi=Et("url"),cIc=Et("zlib"),lIc=KGr(),Q1t=M1t(),jGr=P1t(),wFi=/https:?/;function TFi(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var n=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+n}e.beforeRedirect=function(o){o.headers.host=o.host,TFi(o,t,o.href)}}RFi.exports=function(t){return new Promise(function(n,a){var o=function(Ot){n(Ot)},l=function(Ot){a(Ot)},A=t.data,f=t.headers;if("User-Agent"in f||"user-agent"in f?!f["User-Agent"]&&!f["user-agent"]&&(delete f["User-Agent"],delete f["user-agent"]):f["User-Agent"]="axios/"+lIc.version,A&&!PUe.isStream(A)){if(!Buffer.isBuffer(A))if(PUe.isArrayBuffer(A))A=Buffer.from(new Uint8Array(A));else if(PUe.isString(A))A=Buffer.from(A,"utf-8");else return l(Q1t("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",t));f["Content-Length"]=A.length}var I=void 0;if(t.auth){var C=t.auth.username||"",b=t.auth.password||"";I=C+":"+b}var E=rIc(t.baseURL,t.url),N=BFi.parse(E),B=N.protocol||"http:";if(!I&&N.auth){var F=N.auth.split(":"),Q=F[0]||"",J=F[1]||"";I=Q+":"+J}I&&delete f.Authorization;var ae=wFi.test(B),ne=ae?t.httpsAgent:t.httpAgent,ce={path:nIc(N.path,t.params,t.paramsSerializer).replace(/^\?/,""),method:t.method.toUpperCase(),headers:f,agent:ne,agents:{http:t.httpAgent,https:t.httpsAgent},auth:I};t.socketPath?ce.socketPath=t.socketPath:(ce.hostname=N.hostname,ce.port=N.port);var fe=t.proxy;if(!fe&&fe!==!1){var ue=B.slice(0,-1)+"_proxy",de=process.env[ue]||process.env[ue.toUpperCase()];if(de){var be=BFi.parse(de),Se=process.env.no_proxy||process.env.NO_PROXY,De=!0;if(Se){var k=Se.split(",").map(function(Ot){return Ot.trim()});De=!k.some(function(Ot){return Ot?Ot==="*"||Ot[0]==="."&&N.hostname.substr(N.hostname.length-Ot.length)===Ot?!0:N.hostname===Ot:!1})}if(De&&(fe={host:be.hostname,port:be.port,protocol:be.protocol},be.auth)){var tt=be.auth.split(":");fe.auth={username:tt[0],password:tt[1]}}}}fe&&(ce.headers.host=N.hostname+(N.port?":"+N.port:""),TFi(ce,fe,B+"//"+N.hostname+(N.port?":"+N.port:"")+ce.path));var ze,Le=ae&&(fe?wFi.test(fe.protocol):!0);t.transport?ze=t.transport:t.maxRedirects===0?ze=Le?sIc:iIc:(t.maxRedirects&&(ce.maxRedirects=t.maxRedirects),ze=Le?aIc:oIc),t.maxBodyLength>-1&&(ce.maxBodyLength=t.maxBodyLength);var Je=ze.request(ce,function(Ot){if(!Je.aborted){var Er=Ot,Sr=Ot.req||Je;if(Ot.statusCode!==204&&Sr.method!=="HEAD"&&t.decompress!==!1)switch(Ot.headers["content-encoding"]){case"gzip":case"compress":case"deflate":Er=Er.pipe(cIc.createUnzip()),delete Ot.headers["content-encoding"];break}var jt={status:Ot.statusCode,statusText:Ot.statusMessage,headers:Ot.headers,config:t,request:Sr};if(t.responseType==="stream")jt.data=Er,vFi(o,l,jt);else{var Bt=[],Nt=0;Er.on("data",function($t){Bt.push($t),Nt+=$t.length,t.maxContentLength>-1&&Nt>t.maxContentLength&&(Er.destroy(),l(Q1t("maxContentLength size of "+t.maxContentLength+" exceeded",t,null,Sr)))}),Er.on("error",function($t){Je.aborted||l(jGr($t,t,null,Sr))}),Er.on("end",function(){var $t=Buffer.concat(Bt);t.responseType!=="arraybuffer"&&($t=$t.toString(t.responseEncoding),(!t.responseEncoding||t.responseEncoding==="utf8")&&($t=PUe.stripBOM($t))),jt.data=$t,vFi(o,l,jt)})}}});if(Je.on("error",function(Ot){Je.aborted&&Ot.code!=="ERR_FR_TOO_MANY_REDIRECTS"||l(jGr(Ot,t,null,Je))}),t.timeout){var ft=parseInt(t.timeout,10);if(isNaN(ft)){l(Q1t("error trying to parse `config.timeout` to int",t,"ERR_PARSE_TIMEOUT",Je));return}Je.setTimeout(ft,function(){Je.abort(),l(Q1t("timeout of "+ft+"ms exceeded",t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",Je))})}t.cancelToken&&t.cancelToken.promise.then(function(Ot){Je.aborted||(Je.abort(),l(Ot))}),PUe.isStream(A)?A.on("error",function(Ot){l(jGr(Ot,t,null,Je))}).pipe(Je):Je.end(A)})}});var J1t=H((dZu,xFi)=>{"use strict";var qk=sL(),DFi=tFi(),uIc=P1t(),gIc={"Content-Type":"application/x-www-form-urlencoded"};function kFi(e,t){!qk.isUndefined(e)&&qk.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function AIc(){var e;return typeof XMLHttpRequest<"u"?e=mFi():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(e=NFi()),e}function dIc(e,t,r){if(qk.isString(e))try{return(t||JSON.parse)(e),qk.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var X1t={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:AIc(),transformRequest:[function(t,r){return DFi(r,"Accept"),DFi(r,"Content-Type"),qk.isFormData(t)||qk.isArrayBuffer(t)||qk.isBuffer(t)||qk.isStream(t)||qk.isFile(t)||qk.isBlob(t)?t:qk.isArrayBufferView(t)?t.buffer:qk.isURLSearchParams(t)?(kFi(r,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):qk.isObject(t)||r&&r["Content-Type"]==="application/json"?(kFi(r,"application/json"),dIc(t)):t}],transformResponse:[function(t){var r=this.transitional,n=r&&r.silentJSONParsing,a=r&&r.forcedJSONParsing,o=!n&&this.responseType==="json";if(o||a&&qk.isString(t)&&t.length)try{return JSON.parse(t)}catch(l){if(o)throw l.name==="SyntaxError"?uIc(l,this,"E_JSON_PARSE"):l}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300}};X1t.headers={common:{Accept:"application/json, text/plain, */*"}};qk.forEach(["delete","get","head"],function(t){X1t.headers[t]={}});qk.forEach(["post","put","patch"],function(t){X1t.headers[t]=qk.merge(gIc)});xFi.exports=X1t});var FFi=H((pZu,GFi)=>{"use strict";var pIc=sL(),fIc=J1t();GFi.exports=function(t,r,n){var a=this||fIc;return pIc.forEach(n,function(l){t=l.call(a,t,r)}),t}});var zGr=H((fZu,ZFi)=>{"use strict";ZFi.exports=function(t){return!!(t&&t.__CANCEL__)}});var WFi=H((IZu,VFi)=>{"use strict";var LFi=sL(),qGr=FFi(),IIc=zGr(),hIc=J1t();function $Gr(e){e.cancelToken&&e.cancelToken.throwIfRequested()}VFi.exports=function(t){$Gr(t),t.headers=t.headers||{},t.data=qGr.call(t,t.data,t.headers,t.transformRequest),t.headers=LFi.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),LFi.forEach(["delete","get","head","post","put","patch","common"],function(a){delete t.headers[a]});var r=t.adapter||hIc.adapter;return r(t).then(function(a){return $Gr(t),a.data=qGr.call(t,a.data,a.headers,t.transformResponse),a},function(a){return IIc(a)||($Gr(t),a&&a.response&&(a.response.data=qGr.call(t,a.response.data,a.response.headers,t.transformResponse))),Promise.reject(a)})}});var eFr=H((hZu,OFi)=>{"use strict";var PG=sL();OFi.exports=function(t,r){r=r||{};var n={},a=["url","method","data"],o=["headers","auth","proxy","params"],l=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],A=["validateStatus"];function f(E,N){return PG.isPlainObject(E)&&PG.isPlainObject(N)?PG.merge(E,N):PG.isPlainObject(N)?PG.merge({},N):PG.isArray(N)?N.slice():N}function I(E){PG.isUndefined(r[E])?PG.isUndefined(t[E])||(n[E]=f(void 0,t[E])):n[E]=f(t[E],r[E])}PG.forEach(a,function(N){PG.isUndefined(r[N])||(n[N]=f(void 0,r[N]))}),PG.forEach(o,I),PG.forEach(l,function(N){PG.isUndefined(r[N])?PG.isUndefined(t[N])||(n[N]=f(void 0,t[N])):n[N]=f(void 0,r[N])}),PG.forEach(A,function(N){N in r?n[N]=f(t[N],r[N]):N in t&&(n[N]=f(void 0,t[N]))});var C=a.concat(o).concat(l).concat(A),b=Object.keys(t).concat(Object.keys(r)).filter(function(N){return C.indexOf(N)===-1});return PG.forEach(b,I),n}});var QFi=H((mZu,YFi)=>{"use strict";var MFi=KGr(),tFr={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){tFr[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});var PFi={},mIc=MFi.version.split(".");function HFi(e,t){for(var r=t?t.split("."):mIc,n=e.split("."),a=0;a<3;a++){if(r[a]>n[a])return!0;if(r[a]0;){var o=n[a],l=t[o];if(l){var A=e[o],f=A===void 0||l(A,o,e);if(f!==!0)throw new TypeError("option "+o+" must be "+f);continue}if(r!==!0)throw Error("Unknown option "+o)}}YFi.exports={isOlderVersion:HFi,assertOptions:CIc,validators:tFr}});var zFi=H((CZu,jFi)=>{"use strict";var UFi=sL(),_Ic=W1t(),XFi=$Gi(),JFi=WFi(),U1t=eFr(),KFi=QFi(),wDe=KFi.validators;function MUe(e){this.defaults=e,this.interceptors={request:new XFi,response:new XFi}}MUe.prototype.request=function(t){typeof t=="string"?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=U1t(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var r=t.transitional;r!==void 0&&KFi.assertOptions(r,{silentJSONParsing:wDe.transitional(wDe.boolean,"1.0.0"),forcedJSONParsing:wDe.transitional(wDe.boolean,"1.0.0"),clarifyTimeoutError:wDe.transitional(wDe.boolean,"1.0.0")},!1);var n=[],a=!0;this.interceptors.request.forEach(function(E){typeof E.runWhen=="function"&&E.runWhen(t)===!1||(a=a&&E.synchronous,n.unshift(E.fulfilled,E.rejected))});var o=[];this.interceptors.response.forEach(function(E){o.push(E.fulfilled,E.rejected)});var l;if(!a){var A=[JFi,void 0];for(Array.prototype.unshift.apply(A,n),A=A.concat(o),l=Promise.resolve(t);A.length;)l=l.then(A.shift(),A.shift());return l}for(var f=t;n.length;){var I=n.shift(),C=n.shift();try{f=I(f)}catch(b){C(b);break}}try{l=JFi(f)}catch(b){return Promise.reject(b)}for(;o.length;)l=l.then(o.shift(),o.shift());return l};MUe.prototype.getUri=function(t){return t=U1t(this.defaults,t),_Ic(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")};UFi.forEach(["delete","get","head","options"],function(t){MUe.prototype[t]=function(r,n){return this.request(U1t(n||{},{method:t,url:r,data:(n||{}).data}))}});UFi.forEach(["post","put","patch"],function(t){MUe.prototype[t]=function(r,n,a){return this.request(U1t(a||{},{method:t,url:r,data:n}))}});jFi.exports=MUe});var nFr=H((_Zu,qFi)=>{"use strict";function rFr(e){this.message=e}rFr.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")};rFr.prototype.__CANCEL__=!0;qFi.exports=rFr});var eZi=H((yZu,$Fi)=>{"use strict";var yIc=nFr();function K1t(e){if(typeof e!="function")throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(a){t=a});var r=this;e(function(a){r.reason||(r.reason=new yIc(a),t(r.reason))})}K1t.prototype.throwIfRequested=function(){if(this.reason)throw this.reason};K1t.source=function(){var t,r=new K1t(function(a){t=a});return{token:r,cancel:t}};$Fi.exports=K1t});var rZi=H((bZu,tZi)=>{"use strict";tZi.exports=function(t){return function(n){return t.apply(null,n)}}});var iZi=H((EZu,nZi)=>{"use strict";nZi.exports=function(t){return typeof t=="object"&&t.isAxiosError===!0}});var aZi=H((SZu,iFr)=>{"use strict";var sZi=sL(),bIc=wGr(),j1t=zFi(),EIc=eFr(),SIc=J1t();function oZi(e){var t=new j1t(e),r=bIc(j1t.prototype.request,t);return sZi.extend(r,j1t.prototype,t),sZi.extend(r,t),r}var E4=oZi(SIc);E4.Axios=j1t;E4.create=function(t){return oZi(EIc(E4.defaults,t))};E4.Cancel=nFr();E4.CancelToken=eZi();E4.isCancel=zGr();E4.all=function(t){return Promise.all(t)};E4.spread=rZi();E4.isAxiosError=iZi();iFr.exports=E4;iFr.exports.default=E4});var lZi=H((vZu,cZi)=>{cZi.exports=aZi()});var gZi=H((BZu,uZi)=>{var TDe=1e3,RDe=TDe*60,NDe=RDe*60,OCe=NDe*24,vIc=OCe*7,BIc=OCe*365.25;uZi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return wIc(e);if(r==="number"&&isFinite(e))return t.long?RIc(e):TIc(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function wIc(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*BIc;case"weeks":case"week":case"w":return r*vIc;case"days":case"day":case"d":return r*OCe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*NDe;case"minutes":case"minute":case"mins":case"min":case"m":return r*RDe;case"seconds":case"second":case"secs":case"sec":case"s":return r*TDe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function TIc(e){var t=Math.abs(e);return t>=OCe?Math.round(e/OCe)+"d":t>=NDe?Math.round(e/NDe)+"h":t>=RDe?Math.round(e/RDe)+"m":t>=TDe?Math.round(e/TDe)+"s":e+"ms"}function RIc(e){var t=Math.abs(e);return t>=OCe?z1t(e,t,OCe,"day"):t>=NDe?z1t(e,t,NDe,"hour"):t>=RDe?z1t(e,t,RDe,"minute"):t>=TDe?z1t(e,t,TDe,"second"):e+" ms"}function z1t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var sFr=H((wZu,AZi)=>{function NIc(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=gZi(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(J,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(J,Q),(J.log||r.log).apply(J,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{RP.formatArgs=kIc;RP.save=xIc;RP.load=GIc;RP.useColors=DIc;RP.storage=FIc();RP.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();RP.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function DIc(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function kIc(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+q1t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}RP.log=console.debug||console.log||(()=>{});function xIc(e){try{e?RP.storage.setItem("debug",e):RP.storage.removeItem("debug")}catch{}}function GIc(){let e;try{e=RP.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function FIc(){try{return localStorage}catch{}}q1t.exports=sFr()(RP);var{formatters:ZIc}=q1t.exports;ZIc.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var fZi=H(($k,e2t)=>{var LIc=Et("tty"),$1t=Et("util");$k.init=YIc;$k.log=PIc;$k.formatArgs=WIc;$k.save=MIc;$k.load=HIc;$k.useColors=VIc;$k.destroy=$1t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");$k.colors=[6,2,3,4,5,1];try{let e=Et("supports-color");e&&(e.stderr||e).level>=2&&($k.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}$k.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function VIc(){return"colors"in $k.inspectOpts?!!$k.inspectOpts.colors:LIc.isatty(process.stderr.fd)}function WIc(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+e2t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=Qfc()+t+" "+e[0]}function Qfc(){return qk.inspectOpts.hideDate?"":new Date().toISOString()+" "}function Xfc(...e){return process.stderr.write($1t.format(...e)+` -`)}function Jfc(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function Ufc(){return process.env.DEBUG}function Kfc(e){e.inspectOpts={};let t=Object.keys(qk.inspectOpts);for(let r=0;rt.trim()).join(" ")};QFi.O=function(e){return this.inspectOpts.colors=this.useColors,$1t.inspect(e,this.inspectOpts)}});var $Gr=H((aFu,qGr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?qGr.exports=YFi():qGr.exports=XFi()});var UFi=H((cFu,JFi)=>{var{Transform:jfc}=Et("stream"),eFr=class extends jfc{constructor(t={}){super(t),this.host=t.host||"localhost",this.replaced=!1}_transform(t,r,n){n(null,this.replaced?t:t.toString().replace(/(\r\n[Hh]ost: )\S+/,(a,o)=>(this.replaced=!0,o+this.host)))}};JFi.exports=eFr});var zFi=H((uFu,jFi)=>{var{EventEmitter:zfc}=Et("events"),L6=$Gr()("localtunnel:client"),tFr=Et("fs"),KFi=Et("net"),qfc=Et("tls"),$fc=UFi();jFi.exports=class extends zfc{constructor(t={}){super(t),this.opts=t}open(){let t=this.opts,r=t.remote_ip||t.remote_host,n=t.remote_port,a=t.local_host||"localhost",o=t.local_port,l=t.local_https?"https":"http",A=t.allow_invalid_cert;L6("establishing tunnel %s://%s:%s <> %s:%s",l,a,o,r,n);let f=KFi.connect({host:r,port:n});f.setKeepAlive(!0),f.on("error",C=>{L6("got remote connection error",C.message),C.code==="ECONNREFUSED"&&this.emit("error",new Error(`connection refused: ${r}:${n} (check your firewall settings)`)),f.end()});let I=()=>{if(f.destroyed){L6("remote destroyed"),this.emit("dead");return}L6("connecting locally to %s://%s:%d",l,a,o),f.pause(),A&&L6("allowing invalid certificates");let C=()=>A?{rejectUnauthorized:!1}:{cert:tFr.readFileSync(t.local_cert),key:tFr.readFileSync(t.local_key),ca:t.local_ca?[tFr.readFileSync(t.local_ca)]:void 0},b=t.local_https?qfc.connect({host:a,port:o,...C()}):KFi.connect({host:a,port:o}),E=()=>{L6("remote close"),this.emit("dead"),b.end()};f.once("close",E),b.once("error",N=>{if(L6("local error %s",N.message),b.end(),f.removeListener("close",E),N.code!=="ECONNREFUSED")return f.end();setTimeout(I,1e3)}),b.once("connect",()=>{L6("connected locally"),f.resume();let N=f;t.local_host&&(L6("transform Host header to %s",t.local_host),N=f.pipe(new $fc({host:t.local_host}))),N.pipe(b).pipe(f),b.once("close",B=>{L6("local connection closed [%s]",B)})})};f.on("data",C=>{let b=C.toString().match(/^(\w+) (\S+)/);b&&this.emit("request",{method:b[1],path:b[2]})}),f.once("connect",()=>{this.emit("open",f),I()})}}});var eZi=H((AFu,$Fi)=>{var{parse:eIc}=Et("url"),{EventEmitter:qFi}=Et("events"),tIc=OFi(),MUe=$Gr()("localtunnel:client"),rIc=zFi();$Fi.exports=class extends qFi{constructor(t={}){super(t),this.opts=t,this.closed=!1,this.opts.host||(this.opts.host="https://localtunnel.me")}_getInfo(t){let{id:r,ip:n,port:a,url:o,cached_url:l,max_conn_count:A}=t,{host:f,port:I,local_host:C}=this.opts,{local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}=this.opts;return{name:r,url:o,cached_url:l,max_conn:A||1,remote_host:eIc(f).hostname,remote_ip:n,remote_port:a,local_port:I,local_host:C,local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}}_init(t){let r=this.opts,n=this._getInfo.bind(this),a={responseType:"json"},o=`${r.host}/`,l=r.subdomain,A=o+(l||"?new");(function f(){tIc.get(A,a).then(I=>{let C=I.data;if(MUe("got tunnel information",I.data),I.status!==200){let b=new Error(C&&C.message||"localtunnel server returned an error, please try again");return t(b)}t(null,n(C))}).catch(I=>(MUe(`tunnel server offline: ${I.message}, retry 1s`),setTimeout(f,1e3)))})()}_establish(t){this.setMaxListeners(t.max_conn+(qFi.defaultMaxListeners||10)),this.tunnelCluster=new rIc(t),this.tunnelCluster.once("open",()=>{this.emit("url",t.url)}),this.tunnelCluster.on("error",n=>{MUe("got socket error",n.message),this.emit("error",n)});let r=0;this.tunnelCluster.on("open",n=>{r++,MUe("tunnel open [total: %d]",r);let a=()=>{n.destroy()};if(this.closed)return a();this.once("close",a),n.once("close",()=>{this.removeListener("close",a)})}),this.tunnelCluster.on("dead",()=>{r--,MUe("tunnel dead [total: %d]",r),!this.closed&&this.tunnelCluster.open()}),this.tunnelCluster.on("request",n=>{this.emit("request",n)});for(let n=0;n{if(r)return t(r);this.clientId=n.name,this.url=n.url,n.cached_url&&(this.cachedUrl=n.cached_url),this._establish(n),t()})}close(){this.closed=!0,this.emit("close")}}});var rZi=H((dFu,tZi)=>{var nIc=eZi();tZi.exports=function(t,r,n){let a=typeof t=="object"?t:{...r,port:t},o=typeof t=="object"?r:n,l=new nIc(a);return o?(l.open(A=>A?o(A):o(null,l)),l):new Promise((A,f)=>l.open(I=>I?f(I):A(l)))}});var yZi=H(_Zi=>{"use strict";Object.defineProperty(_Zi,"__esModule",{value:!0})});var EZi=H(bZi=>{"use strict";Object.defineProperty(bZi,"__esModule",{value:!0})});var SZi=H(JUe=>{"use strict";Object.defineProperty(JUe,"__esModule",{value:!0});JUe.SeverityNumber=void 0;var AIc;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TRACE=1]="TRACE",e[e.TRACE2=2]="TRACE2",e[e.TRACE3=3]="TRACE3",e[e.TRACE4=4]="TRACE4",e[e.DEBUG=5]="DEBUG",e[e.DEBUG2=6]="DEBUG2",e[e.DEBUG3=7]="DEBUG3",e[e.DEBUG4=8]="DEBUG4",e[e.INFO=9]="INFO",e[e.INFO2=10]="INFO2",e[e.INFO3=11]="INFO3",e[e.INFO4=12]="INFO4",e[e.WARN=13]="WARN",e[e.WARN2=14]="WARN2",e[e.WARN3=15]="WARN3",e[e.WARN4=16]="WARN4",e[e.ERROR=17]="ERROR",e[e.ERROR2=18]="ERROR2",e[e.ERROR3=19]="ERROR3",e[e.ERROR4=20]="ERROR4",e[e.FATAL=21]="FATAL",e[e.FATAL2=22]="FATAL2",e[e.FATAL3=23]="FATAL3",e[e.FATAL4=24]="FATAL4"})(AIc=JUe.SeverityNumber||(JUe.SeverityNumber={}))});var BZi=H(vZi=>{"use strict";Object.defineProperty(vZi,"__esModule",{value:!0})});var sFr=H(DDe=>{"use strict";Object.defineProperty(DDe,"__esModule",{value:!0});DDe.NOOP_LOGGER=DDe.NoopLogger=void 0;var o2t=class{emit(t){}};DDe.NoopLogger=o2t;DDe.NOOP_LOGGER=new o2t});var oFr=H(kDe=>{"use strict";Object.defineProperty(kDe,"__esModule",{value:!0});kDe.NOOP_LOGGER_PROVIDER=kDe.NoopLoggerProvider=void 0;var dIc=sFr(),a2t=class{getLogger(t,r,n){return new dIc.NoopLogger}};kDe.NoopLoggerProvider=a2t;kDe.NOOP_LOGGER_PROVIDER=new a2t});var wZi=H(c2t=>{"use strict";Object.defineProperty(c2t,"__esModule",{value:!0});c2t._globalThis=void 0;c2t._globalThis=typeof globalThis=="object"?globalThis:global});var TZi=H(MCe=>{"use strict";var pIc=MCe&&MCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fIc=MCe&&MCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&pIc(t,e,r)};Object.defineProperty(MCe,"__esModule",{value:!0});fIc(wZi(),MCe)});var RZi=H(HCe=>{"use strict";var IIc=HCe&&HCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),hIc=HCe&&HCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&IIc(t,e,r)};Object.defineProperty(HCe,"__esModule",{value:!0});hIc(TZi(),HCe)});var NZi=H(V6=>{"use strict";Object.defineProperty(V6,"__esModule",{value:!0});V6.API_BACKWARDS_COMPATIBILITY_VERSION=V6.makeGetter=V6._global=V6.GLOBAL_LOGS_API_KEY=void 0;var mIc=RZi();V6.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");V6._global=mIc._globalThis;function CIc(e,t,r){return n=>n===e?t:r}V6.makeGetter=CIc;V6.API_BACKWARDS_COMPATIBILITY_VERSION=1});var kZi=H(l2t=>{"use strict";Object.defineProperty(l2t,"__esModule",{value:!0});l2t.LogsAPI=void 0;var CH=NZi(),DZi=oFr(),aFr=class e{constructor(){}static getInstance(){return this._instance||(this._instance=new e),this._instance}setGlobalLoggerProvider(t){return CH._global[CH.GLOBAL_LOGS_API_KEY]?this.getLoggerProvider():(CH._global[CH.GLOBAL_LOGS_API_KEY]=(0,CH.makeGetter)(CH.API_BACKWARDS_COMPATIBILITY_VERSION,t,DZi.NOOP_LOGGER_PROVIDER),t)}getLoggerProvider(){var t,r;return(r=(t=CH._global[CH.GLOBAL_LOGS_API_KEY])===null||t===void 0?void 0:t.call(CH._global,CH.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&r!==void 0?r:DZi.NOOP_LOGGER_PROVIDER}getLogger(t,r,n){return this.getLoggerProvider().getLogger(t,r,n)}disable(){delete CH._global[CH.GLOBAL_LOGS_API_KEY]}};l2t.LogsAPI=aFr});var GDe=H(FV=>{"use strict";var _Ic=FV&&FV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xDe=FV&&FV.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&_Ic(t,e,r)};Object.defineProperty(FV,"__esModule",{value:!0});FV.logs=void 0;xDe(yZi(),FV);xDe(EZi(),FV);xDe(SZi(),FV);xDe(BZi(),FV);xDe(sFr(),FV);xDe(oFr(),FV);var yIc=kZi();FV.logs=yIc.LogsAPI.getInstance()});var xZi,GZi=bc(()=>{xZi=typeof globalThis=="object"?globalThis:global});var FZi=bc(()=>{GZi()});var ZZi=bc(()=>{FZi()});var nte,cFr=bc(()=>{nte="1.9.0"});function bIc(e){var t=new Set([e]),r=new Set,n=e.match(LZi);if(!n)return function(){return!1};var a={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(a.prerelease!=null)return function(f){return f===e};function o(A){return r.add(A),!1}function l(A){return t.add(A),!0}return function(f){if(t.has(f))return!0;if(r.has(f))return!1;var I=f.match(LZi);if(!I)return o(f);var C={major:+I[1],minor:+I[2],patch:+I[3],prerelease:I[4]};return C.prerelease!=null||a.major!==C.major?o(f):a.major===0?a.minor===C.minor&&a.patch<=C.patch?l(f):o(f):a.minor<=C.minor?l(f):o(f)}}var LZi,VZi,WZi=bc(()=>{cFr();LZi=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;VZi=bIc(nte)});function W6(e,t,r,n){var a;n===void 0&&(n=!1);var o=KUe[UUe]=(a=KUe[UUe])!==null&&a!==void 0?a:{version:nte};if(!n&&o[e]){var l=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(l.stack||l.message),!1}if(o.version!==nte){var l=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+nte);return r.error(l.stack||l.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+nte+"."),!0}function TP(e){var t,r,n=(t=KUe[UUe])===null||t===void 0?void 0:t.version;if(!(!n||!VZi(n)))return(r=KUe[UUe])===null||r===void 0?void 0:r[e]}function O6(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+nte+".");var r=KUe[UUe];r&&delete r[e]}var EIc,UUe,KUe,YCe=bc(()=>{ZZi();cFr();WZi();EIc=nte.split(".")[0],UUe=Symbol.for("opentelemetry.js.api."+EIc),KUe=xZi});function jUe(e,t,r){var n=TP("diag");if(n)return r.unshift(t),n[e].apply(n,vIc([],SIc(r),!1))}var SIc,vIc,OZi,PZi=bc(()=>{YCe();SIc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},vIc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})($k||($k={}))});function MZi(e,t){e<$k.NONE?e=$k.NONE:e>$k.ALL&&(e=$k.ALL),t=t||{};function r(n,a){var o=t[n];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",$k.ERROR),warn:r("warn",$k.WARN),info:r("info",$k.INFO),debug:r("debug",$k.DEBUG),verbose:r("verbose",$k.VERBOSE)}}var HZi=bc(()=>{u2t()});var BIc,wIc,TIc,PG,QCe=bc(()=>{PZi();HZi();u2t();YCe();BIc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},wIc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n";C.warn("Current logger will be overwritten from "+E),b.warn("Current logger will overwrite one already registered from "+E)}return W6("diag",b,r,!0)};r.setLogger=n,r.disable=function(){O6(TIc,r)},r.createComponentLogger=function(a){return new OZi(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()});var RIc,NIc,YZi,QZi=bc(()=>{RIc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},NIc=function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},YZi=function(){function e(t){this._entries=t?new Map(t):new Map}return e.prototype.getEntry=function(t){var r=this._entries.get(t);if(r)return Object.assign({},r)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(t){var r=RIc(t,2),n=r[0],a=r[1];return[n,a]})},e.prototype.setEntry=function(t,r){var n=new e(this._entries);return n._entries.set(t,r),n},e.prototype.removeEntry=function(t){var r=new e(this._entries);return r._entries.delete(t),r},e.prototype.removeEntries=function(){for(var t,r,n=[],a=0;a{XZi=Symbol("BaggageEntryMetadata")});function UZi(e){return e===void 0&&(e={}),new YZi(new Map(Object.entries(e)))}function KZi(e){return typeof e!="string"&&(DIc.error("Cannot create baggage metadata from unknown type: "+typeof e),e=""),{__TYPE__:XZi,toString:function(){return e}}}var DIc,lFr=bc(()=>{QCe();QZi();JZi();DIc=PG.instance()});function FDe(e){return Symbol.for(e)}var kIc,g2t,zUe=bc(()=>{kIc=function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,a){var o=new e(r._currentContext);return o._currentContext.set(n,a),o},r.deleteValue=function(n){var a=new e(r._currentContext);return a._currentContext.delete(n),a}}return e}(),g2t=new kIc});var uFr,jZi,zZi=bc(()=>{uFr=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],jZi=function(){function e(){function t(n){return function(){for(var a=[],o=0;o{XCe=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),xIc=function(){function e(){}return e.prototype.createGauge=function(t,r){return MIc},e.prototype.createHistogram=function(t,r){return HIc},e.prototype.createCounter=function(t,r){return PIc},e.prototype.createUpDownCounter=function(t,r){return YIc},e.prototype.createObservableGauge=function(t,r){return XIc},e.prototype.createObservableCounter=function(t,r){return QIc},e.prototype.createObservableUpDownCounter=function(t,r){return JIc},e.prototype.addBatchObservableCallback=function(t,r){},e.prototype.removeBatchObservableCallback=function(t){},e}(),A2t=function(){function e(){}return e}(),GIc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(A2t),FIc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(A2t),ZIc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(A2t),LIc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(A2t),gFr=function(){function e(){}return e.prototype.addCallback=function(t){},e.prototype.removeCallback=function(t){},e}(),VIc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(gFr),WIc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(gFr),OIc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(gFr),AFr=new xIc,PIc=new GIc,MIc=new ZIc,HIc=new LIc,YIc=new FIc,QIc=new VIc,XIc=new WIc,JIc=new OIc});var d2t,$Zi=bc(()=>{(function(e){e[e.INT=0]="INT",e[e.DOUBLE=1]="DOUBLE"})(d2t||(d2t={}))});var p2t,f2t,pFr=bc(()=>{p2t={get:function(e,t){if(e!=null)return e[t]},keys:function(e){return e==null?[]:Object.keys(e)}},f2t={set:function(e,t,r){e!=null&&(e[t]=r)}}});var UIc,KIc,eLi,tLi=bc(()=>{zUe();UIc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},KIc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{tLi();YCe();QCe();jIc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},zIc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(ZDe||(ZDe={}))});var $Ue,eKe,I2t,h2t=bc(()=>{IFr();$Ue="0000000000000000",eKe="00000000000000000000000000000000",I2t={traceId:eKe,spanId:$Ue,traceFlags:ZDe.NONE}});var ile,m2t=bc(()=>{h2t();ile=function(){function e(t){t===void 0&&(t=I2t),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e}()});function C2t(e){return e.getValue(hFr)||void 0}function rLi(){return C2t(nle.getInstance().active())}function tKe(e,t){return e.setValue(hFr,t)}function nLi(e){return e.deleteValue(hFr)}function iLi(e,t){return tKe(e,new ile(t))}function _2t(e){var t;return(t=C2t(e))===null||t===void 0?void 0:t.spanContext()}var hFr,mFr=bc(()=>{zUe();m2t();qUe();hFr=FDe("OpenTelemetry Context Key SPAN")});function CFr(e){return $Ic.test(e)&&e!==eKe}function _Fr(e){return ehc.test(e)&&e!==$Ue}function LDe(e){return CFr(e.traceId)&&_Fr(e.spanId)}function sLi(e){return new ile(e)}var $Ic,ehc,y2t=bc(()=>{h2t();m2t();$Ic=/^([0-9a-f]{32})$/i,ehc=/^[0-9a-f]{16}$/i});function thc(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var yFr,b2t,bFr=bc(()=>{qUe();mFr();m2t();y2t();yFr=nle.getInstance(),b2t=function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=yFr.active());var a=!!r?.root;if(a)return new ile;var o=n&&_2t(n);return thc(o)&&LDe(o)?new ile(o):new ile},e.prototype.startActiveSpan=function(t,r,n,a){var o,l,A;if(!(arguments.length<2)){arguments.length===2?A=r:arguments.length===3?(o=r,A=n):(o=r,l=n,A=a);var f=l??yFr.active(),I=this.startSpan(t,o,f),C=tKe(f,I);return yFr.with(C,A,void 0,I)}},e}()});var rhc,E2t,EFr=bc(()=>{bFr();rhc=new b2t,E2t=function(){function e(t,r,n,a){this._provider=t,this.name=r,this.version=n,this.options=a}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):rhc},e}()});var oLi,aLi=bc(()=>{bFr();oLi=function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new b2t},e}()});var nhc,rKe,SFr=bc(()=>{EFr();aLi();nhc=new oLi,rKe=function(){function e(){}return e.prototype.getTracer=function(t,r,n){var a;return(a=this.getDelegateTracer(t,r,n))!==null&&a!==void 0?a:new E2t(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:nhc},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,n)},e}()});var S2t,cLi=bc(()=>{(function(e){e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(S2t||(S2t={}))});var v2t,lLi=bc(()=>{(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(v2t||(v2t={}))});var B2t,uLi=bc(()=>{(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(B2t||(B2t={}))});function gLi(e){return ohc.test(e)}function ALi(e){return ahc.test(e)&&!chc.test(e)}var vFr,ihc,shc,ohc,ahc,chc,dLi=bc(()=>{vFr="[_0-9a-z-*/]",ihc="[a-z]"+vFr+"{0,255}",shc="[a-z0-9]"+vFr+"{0,240}@[a-z]"+vFr+"{0,13}",ohc=new RegExp("^(?:"+ihc+"|"+shc+")$"),ahc=/^[ -~]{0,255}[!-~]$/,chc=/,|=/});var pLi,lhc,fLi,ILi,hLi,mLi=bc(()=>{dLi();pLi=32,lhc=512,fLi=",",ILi="=",hLi=function(){function e(t){this._internalState=new Map,t&&this._parse(t)}return e.prototype.set=function(t,r){var n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n},e.prototype.unset=function(t){var r=this._clone();return r._internalState.delete(t),r},e.prototype.get=function(t){return this._internalState.get(t)},e.prototype.serialize=function(){var t=this;return this._keys().reduce(function(r,n){return r.push(n+ILi+t.get(n)),r},[]).join(fLi)},e.prototype._parse=function(t){t.length>lhc||(this._internalState=t.split(fLi).reverse().reduce(function(r,n){var a=n.trim(),o=a.indexOf(ILi);if(o!==-1){var l=a.slice(0,o),A=a.slice(o+1,n.length);gLi(l)&&ALi(A)&&r.set(l,A)}return r},new Map),this._internalState.size>pLi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,pLi))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var t=new e;return t._internalState=new Map(this._internalState),t},e}()});function CLi(e){return new hLi(e)}var _Li=bc(()=>{mLi()});var BFr,yLi=bc(()=>{qUe();BFr=nle.getInstance()});var wFr,bLi=bc(()=>{QCe();wFr=PG.instance()});var uhc,ELi,SLi=bc(()=>{dFr();uhc=function(){function e(){}return e.prototype.getMeter=function(t,r,n){return AFr},e}(),ELi=new uhc});var TFr,vLi,BLi=bc(()=>{SLi();YCe();QCe();TFr="metrics",vLi=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalMeterProvider=function(t){return W6(TFr,t,PG.instance())},e.prototype.getMeterProvider=function(){return TP(TFr)||ELi},e.prototype.getMeter=function(t,r,n){return this.getMeterProvider().getMeter(t,r,n)},e.prototype.disable=function(){O6(TFr,PG.instance())},e}()});var RFr,wLi=bc(()=>{BLi();RFr=vLi.getInstance()});var TLi,RLi=bc(()=>{TLi=function(){function e(){}return e.prototype.inject=function(t,r){},e.prototype.extract=function(t,r){return t},e.prototype.fields=function(){return[]},e}()});function DFr(e){return e.getValue(NFr)||void 0}function NLi(){return DFr(nle.getInstance().active())}function DLi(e,t){return e.setValue(NFr,t)}function kLi(e){return e.deleteValue(NFr)}var NFr,xLi=bc(()=>{qUe();zUe();NFr=FDe("OpenTelemetry Baggage Key")});var kFr,ghc,GLi,FLi=bc(()=>{YCe();RLi();pFr();xLi();lFr();QCe();kFr="propagation",ghc=new TLi,GLi=function(){function e(){this.createBaggage=UZi,this.getBaggage=DFr,this.getActiveBaggage=NLi,this.setBaggage=DLi,this.deleteBaggage=kLi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=function(t){return W6(kFr,t,PG.instance())},e.prototype.inject=function(t,r,n){return n===void 0&&(n=f2t),this._getGlobalPropagator().inject(t,r,n)},e.prototype.extract=function(t,r,n){return n===void 0&&(n=p2t),this._getGlobalPropagator().extract(t,r,n)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=function(){O6(kFr,PG.instance())},e.prototype._getGlobalPropagator=function(){return TP(kFr)||ghc},e}()});var xFr,ZLi=bc(()=>{FLi();xFr=GLi.getInstance()});var GFr,LLi,VLi=bc(()=>{YCe();SFr();y2t();mFr();QCe();GFr="trace",LLi=function(){function e(){this._proxyTracerProvider=new rKe,this.wrapSpanContext=sLi,this.isSpanContextValid=LDe,this.deleteSpan=nLi,this.getSpan=C2t,this.getActiveSpan=rLi,this.getSpanContext=_2t,this.setSpan=tKe,this.setSpanContext=iLi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=W6(GFr,this._proxyTracerProvider,PG.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return TP(GFr)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){O6(GFr,PG.instance()),this._proxyTracerProvider=new rKe},e}()});var FFr,WLi=bc(()=>{VLi();FFr=LLi.getInstance()});var ZI={};Uf(ZI,{DiagConsoleLogger:()=>jZi,DiagLogLevel:()=>$k,INVALID_SPANID:()=>$Ue,INVALID_SPAN_CONTEXT:()=>I2t,INVALID_TRACEID:()=>eKe,ProxyTracer:()=>E2t,ProxyTracerProvider:()=>rKe,ROOT_CONTEXT:()=>g2t,SamplingDecision:()=>S2t,SpanKind:()=>v2t,SpanStatusCode:()=>B2t,TraceFlags:()=>ZDe,ValueType:()=>d2t,baggageEntryMetadataFromString:()=>KZi,context:()=>BFr,createContextKey:()=>FDe,createNoopMeter:()=>qZi,createTraceState:()=>CLi,default:()=>Ahc,defaultTextMapGetter:()=>p2t,defaultTextMapSetter:()=>f2t,diag:()=>wFr,isSpanContextValid:()=>LDe,isValidSpanId:()=>_Fr,isValidTraceId:()=>CFr,metrics:()=>RFr,propagation:()=>xFr,trace:()=>FFr});var Ahc,LI=bc(()=>{lFr();zUe();zZi();u2t();dFr();$Zi();pFr();EFr();SFr();cLi();lLi();uLi();IFr();_Li();y2t();h2t();yLi();bLi();wLi();ZLi();WLi();Ahc={context:BFr,diag:wFr,metrics:RFr,propagation:xFr,trace:FFr}});var OLi=H(z0=>{"use strict";Object.defineProperty(z0,"__esModule",{value:!0});z0.MessageTypeValues=z0.RpcGrpcStatusCodeValues=z0.MessagingOperationValues=z0.MessagingDestinationKindValues=z0.HttpFlavorValues=z0.NetHostConnectionSubtypeValues=z0.NetHostConnectionTypeValues=z0.NetTransportValues=z0.FaasInvokedProviderValues=z0.FaasDocumentOperationValues=z0.FaasTriggerValues=z0.DbCassandraConsistencyLevelValues=z0.DbSystemValues=z0.SemanticAttributes=void 0;z0.SemanticAttributes={AWS_LAMBDA_INVOKED_ARN:"aws.lambda.invoked_arn",DB_SYSTEM:"db.system",DB_CONNECTION_STRING:"db.connection_string",DB_USER:"db.user",DB_JDBC_DRIVER_CLASSNAME:"db.jdbc.driver_classname",DB_NAME:"db.name",DB_STATEMENT:"db.statement",DB_OPERATION:"db.operation",DB_MSSQL_INSTANCE_NAME:"db.mssql.instance_name",DB_CASSANDRA_KEYSPACE:"db.cassandra.keyspace",DB_CASSANDRA_PAGE_SIZE:"db.cassandra.page_size",DB_CASSANDRA_CONSISTENCY_LEVEL:"db.cassandra.consistency_level",DB_CASSANDRA_TABLE:"db.cassandra.table",DB_CASSANDRA_IDEMPOTENCE:"db.cassandra.idempotence",DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:"db.cassandra.speculative_execution_count",DB_CASSANDRA_COORDINATOR_ID:"db.cassandra.coordinator.id",DB_CASSANDRA_COORDINATOR_DC:"db.cassandra.coordinator.dc",DB_HBASE_NAMESPACE:"db.hbase.namespace",DB_REDIS_DATABASE_INDEX:"db.redis.database_index",DB_MONGODB_COLLECTION:"db.mongodb.collection",DB_SQL_TABLE:"db.sql.table",EXCEPTION_TYPE:"exception.type",EXCEPTION_MESSAGE:"exception.message",EXCEPTION_STACKTRACE:"exception.stacktrace",EXCEPTION_ESCAPED:"exception.escaped",FAAS_TRIGGER:"faas.trigger",FAAS_EXECUTION:"faas.execution",FAAS_DOCUMENT_COLLECTION:"faas.document.collection",FAAS_DOCUMENT_OPERATION:"faas.document.operation",FAAS_DOCUMENT_TIME:"faas.document.time",FAAS_DOCUMENT_NAME:"faas.document.name",FAAS_TIME:"faas.time",FAAS_CRON:"faas.cron",FAAS_COLDSTART:"faas.coldstart",FAAS_INVOKED_NAME:"faas.invoked_name",FAAS_INVOKED_PROVIDER:"faas.invoked_provider",FAAS_INVOKED_REGION:"faas.invoked_region",NET_TRANSPORT:"net.transport",NET_PEER_IP:"net.peer.ip",NET_PEER_PORT:"net.peer.port",NET_PEER_NAME:"net.peer.name",NET_HOST_IP:"net.host.ip",NET_HOST_PORT:"net.host.port",NET_HOST_NAME:"net.host.name",NET_HOST_CONNECTION_TYPE:"net.host.connection.type",NET_HOST_CONNECTION_SUBTYPE:"net.host.connection.subtype",NET_HOST_CARRIER_NAME:"net.host.carrier.name",NET_HOST_CARRIER_MCC:"net.host.carrier.mcc",NET_HOST_CARRIER_MNC:"net.host.carrier.mnc",NET_HOST_CARRIER_ICC:"net.host.carrier.icc",PEER_SERVICE:"peer.service",ENDUSER_ID:"enduser.id",ENDUSER_ROLE:"enduser.role",ENDUSER_SCOPE:"enduser.scope",THREAD_ID:"thread.id",THREAD_NAME:"thread.name",CODE_FUNCTION:"code.function",CODE_NAMESPACE:"code.namespace",CODE_FILEPATH:"code.filepath",CODE_LINENO:"code.lineno",HTTP_METHOD:"http.method",HTTP_URL:"http.url",HTTP_TARGET:"http.target",HTTP_HOST:"http.host",HTTP_SCHEME:"http.scheme",HTTP_STATUS_CODE:"http.status_code",HTTP_FLAVOR:"http.flavor",HTTP_USER_AGENT:"http.user_agent",HTTP_REQUEST_CONTENT_LENGTH:"http.request_content_length",HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:"http.request_content_length_uncompressed",HTTP_RESPONSE_CONTENT_LENGTH:"http.response_content_length",HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:"http.response_content_length_uncompressed",HTTP_SERVER_NAME:"http.server_name",HTTP_ROUTE:"http.route",HTTP_CLIENT_IP:"http.client_ip",AWS_DYNAMODB_TABLE_NAMES:"aws.dynamodb.table_names",AWS_DYNAMODB_CONSUMED_CAPACITY:"aws.dynamodb.consumed_capacity",AWS_DYNAMODB_ITEM_COLLECTION_METRICS:"aws.dynamodb.item_collection_metrics",AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:"aws.dynamodb.provisioned_read_capacity",AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:"aws.dynamodb.provisioned_write_capacity",AWS_DYNAMODB_CONSISTENT_READ:"aws.dynamodb.consistent_read",AWS_DYNAMODB_PROJECTION:"aws.dynamodb.projection",AWS_DYNAMODB_LIMIT:"aws.dynamodb.limit",AWS_DYNAMODB_ATTRIBUTES_TO_GET:"aws.dynamodb.attributes_to_get",AWS_DYNAMODB_INDEX_NAME:"aws.dynamodb.index_name",AWS_DYNAMODB_SELECT:"aws.dynamodb.select",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:"aws.dynamodb.global_secondary_indexes",AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:"aws.dynamodb.local_secondary_indexes",AWS_DYNAMODB_EXCLUSIVE_START_TABLE:"aws.dynamodb.exclusive_start_table",AWS_DYNAMODB_TABLE_COUNT:"aws.dynamodb.table_count",AWS_DYNAMODB_SCAN_FORWARD:"aws.dynamodb.scan_forward",AWS_DYNAMODB_SEGMENT:"aws.dynamodb.segment",AWS_DYNAMODB_TOTAL_SEGMENTS:"aws.dynamodb.total_segments",AWS_DYNAMODB_COUNT:"aws.dynamodb.count",AWS_DYNAMODB_SCANNED_COUNT:"aws.dynamodb.scanned_count",AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:"aws.dynamodb.attribute_definitions",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:"aws.dynamodb.global_secondary_index_updates",MESSAGING_SYSTEM:"messaging.system",MESSAGING_DESTINATION:"messaging.destination",MESSAGING_DESTINATION_KIND:"messaging.destination_kind",MESSAGING_TEMP_DESTINATION:"messaging.temp_destination",MESSAGING_PROTOCOL:"messaging.protocol",MESSAGING_PROTOCOL_VERSION:"messaging.protocol_version",MESSAGING_URL:"messaging.url",MESSAGING_MESSAGE_ID:"messaging.message_id",MESSAGING_CONVERSATION_ID:"messaging.conversation_id",MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:"messaging.message_payload_size_bytes",MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:"messaging.message_payload_compressed_size_bytes",MESSAGING_OPERATION:"messaging.operation",MESSAGING_CONSUMER_ID:"messaging.consumer_id",MESSAGING_RABBITMQ_ROUTING_KEY:"messaging.rabbitmq.routing_key",MESSAGING_KAFKA_MESSAGE_KEY:"messaging.kafka.message_key",MESSAGING_KAFKA_CONSUMER_GROUP:"messaging.kafka.consumer_group",MESSAGING_KAFKA_CLIENT_ID:"messaging.kafka.client_id",MESSAGING_KAFKA_PARTITION:"messaging.kafka.partition",MESSAGING_KAFKA_TOMBSTONE:"messaging.kafka.tombstone",RPC_SYSTEM:"rpc.system",RPC_SERVICE:"rpc.service",RPC_METHOD:"rpc.method",RPC_GRPC_STATUS_CODE:"rpc.grpc.status_code",RPC_JSONRPC_VERSION:"rpc.jsonrpc.version",RPC_JSONRPC_REQUEST_ID:"rpc.jsonrpc.request_id",RPC_JSONRPC_ERROR_CODE:"rpc.jsonrpc.error_code",RPC_JSONRPC_ERROR_MESSAGE:"rpc.jsonrpc.error_message",MESSAGE_TYPE:"message.type",MESSAGE_ID:"message.id",MESSAGE_COMPRESSED_SIZE:"message.compressed_size",MESSAGE_UNCOMPRESSED_SIZE:"message.uncompressed_size"};z0.DbSystemValues={OTHER_SQL:"other_sql",MSSQL:"mssql",MYSQL:"mysql",ORACLE:"oracle",DB2:"db2",POSTGRESQL:"postgresql",REDSHIFT:"redshift",HIVE:"hive",CLOUDSCAPE:"cloudscape",HSQLDB:"hsqldb",PROGRESS:"progress",MAXDB:"maxdb",HANADB:"hanadb",INGRES:"ingres",FIRSTSQL:"firstsql",EDB:"edb",CACHE:"cache",ADABAS:"adabas",FIREBIRD:"firebird",DERBY:"derby",FILEMAKER:"filemaker",INFORMIX:"informix",INSTANTDB:"instantdb",INTERBASE:"interbase",MARIADB:"mariadb",NETEZZA:"netezza",PERVASIVE:"pervasive",POINTBASE:"pointbase",SQLITE:"sqlite",SYBASE:"sybase",TERADATA:"teradata",VERTICA:"vertica",H2:"h2",COLDFUSION:"coldfusion",CASSANDRA:"cassandra",HBASE:"hbase",MONGODB:"mongodb",REDIS:"redis",COUCHBASE:"couchbase",COUCHDB:"couchdb",COSMOSDB:"cosmosdb",DYNAMODB:"dynamodb",NEO4J:"neo4j",GEODE:"geode",ELASTICSEARCH:"elasticsearch",MEMCACHED:"memcached",COCKROACHDB:"cockroachdb"};z0.DbCassandraConsistencyLevelValues={ALL:"all",EACH_QUORUM:"each_quorum",QUORUM:"quorum",LOCAL_QUORUM:"local_quorum",ONE:"one",TWO:"two",THREE:"three",LOCAL_ONE:"local_one",ANY:"any",SERIAL:"serial",LOCAL_SERIAL:"local_serial"};z0.FaasTriggerValues={DATASOURCE:"datasource",HTTP:"http",PUBSUB:"pubsub",TIMER:"timer",OTHER:"other"};z0.FaasDocumentOperationValues={INSERT:"insert",EDIT:"edit",DELETE:"delete"};z0.FaasInvokedProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};z0.NetTransportValues={IP_TCP:"ip_tcp",IP_UDP:"ip_udp",IP:"ip",UNIX:"unix",PIPE:"pipe",INPROC:"inproc",OTHER:"other"};z0.NetHostConnectionTypeValues={WIFI:"wifi",WIRED:"wired",CELL:"cell",UNAVAILABLE:"unavailable",UNKNOWN:"unknown"};z0.NetHostConnectionSubtypeValues={GPRS:"gprs",EDGE:"edge",UMTS:"umts",CDMA:"cdma",EVDO_0:"evdo_0",EVDO_A:"evdo_a",CDMA2000_1XRTT:"cdma2000_1xrtt",HSDPA:"hsdpa",HSUPA:"hsupa",HSPA:"hspa",IDEN:"iden",EVDO_B:"evdo_b",LTE:"lte",EHRPD:"ehrpd",HSPAP:"hspap",GSM:"gsm",TD_SCDMA:"td_scdma",IWLAN:"iwlan",NR:"nr",NRNSA:"nrnsa",LTE_CA:"lte_ca"};z0.HttpFlavorValues={HTTP_1_0:"1.0",HTTP_1_1:"1.1",HTTP_2_0:"2.0",SPDY:"SPDY",QUIC:"QUIC"};z0.MessagingDestinationKindValues={QUEUE:"queue",TOPIC:"topic"};z0.MessagingOperationValues={RECEIVE:"receive",PROCESS:"process"};z0.RpcGrpcStatusCodeValues={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15,UNAUTHENTICATED:16};z0.MessageTypeValues={SENT:"SENT",RECEIVED:"RECEIVED"}});var PLi=H(JCe=>{"use strict";var dhc=JCe&&JCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),phc=JCe&&JCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&dhc(t,e,r)};Object.defineProperty(JCe,"__esModule",{value:!0});phc(OLi(),JCe)});var MLi=H(MG=>{"use strict";Object.defineProperty(MG,"__esModule",{value:!0});MG.TelemetrySdkLanguageValues=MG.OsTypeValues=MG.HostArchValues=MG.AwsEcsLaunchtypeValues=MG.CloudPlatformValues=MG.CloudProviderValues=MG.SemanticResourceAttributes=void 0;MG.SemanticResourceAttributes={CLOUD_PROVIDER:"cloud.provider",CLOUD_ACCOUNT_ID:"cloud.account.id",CLOUD_REGION:"cloud.region",CLOUD_AVAILABILITY_ZONE:"cloud.availability_zone",CLOUD_PLATFORM:"cloud.platform",AWS_ECS_CONTAINER_ARN:"aws.ecs.container.arn",AWS_ECS_CLUSTER_ARN:"aws.ecs.cluster.arn",AWS_ECS_LAUNCHTYPE:"aws.ecs.launchtype",AWS_ECS_TASK_ARN:"aws.ecs.task.arn",AWS_ECS_TASK_FAMILY:"aws.ecs.task.family",AWS_ECS_TASK_REVISION:"aws.ecs.task.revision",AWS_EKS_CLUSTER_ARN:"aws.eks.cluster.arn",AWS_LOG_GROUP_NAMES:"aws.log.group.names",AWS_LOG_GROUP_ARNS:"aws.log.group.arns",AWS_LOG_STREAM_NAMES:"aws.log.stream.names",AWS_LOG_STREAM_ARNS:"aws.log.stream.arns",CONTAINER_NAME:"container.name",CONTAINER_ID:"container.id",CONTAINER_RUNTIME:"container.runtime",CONTAINER_IMAGE_NAME:"container.image.name",CONTAINER_IMAGE_TAG:"container.image.tag",DEPLOYMENT_ENVIRONMENT:"deployment.environment",DEVICE_ID:"device.id",DEVICE_MODEL_IDENTIFIER:"device.model.identifier",DEVICE_MODEL_NAME:"device.model.name",FAAS_NAME:"faas.name",FAAS_ID:"faas.id",FAAS_VERSION:"faas.version",FAAS_INSTANCE:"faas.instance",FAAS_MAX_MEMORY:"faas.max_memory",HOST_ID:"host.id",HOST_NAME:"host.name",HOST_TYPE:"host.type",HOST_ARCH:"host.arch",HOST_IMAGE_NAME:"host.image.name",HOST_IMAGE_ID:"host.image.id",HOST_IMAGE_VERSION:"host.image.version",K8S_CLUSTER_NAME:"k8s.cluster.name",K8S_NODE_NAME:"k8s.node.name",K8S_NODE_UID:"k8s.node.uid",K8S_NAMESPACE_NAME:"k8s.namespace.name",K8S_POD_UID:"k8s.pod.uid",K8S_POD_NAME:"k8s.pod.name",K8S_CONTAINER_NAME:"k8s.container.name",K8S_REPLICASET_UID:"k8s.replicaset.uid",K8S_REPLICASET_NAME:"k8s.replicaset.name",K8S_DEPLOYMENT_UID:"k8s.deployment.uid",K8S_DEPLOYMENT_NAME:"k8s.deployment.name",K8S_STATEFULSET_UID:"k8s.statefulset.uid",K8S_STATEFULSET_NAME:"k8s.statefulset.name",K8S_DAEMONSET_UID:"k8s.daemonset.uid",K8S_DAEMONSET_NAME:"k8s.daemonset.name",K8S_JOB_UID:"k8s.job.uid",K8S_JOB_NAME:"k8s.job.name",K8S_CRONJOB_UID:"k8s.cronjob.uid",K8S_CRONJOB_NAME:"k8s.cronjob.name",OS_TYPE:"os.type",OS_DESCRIPTION:"os.description",OS_NAME:"os.name",OS_VERSION:"os.version",PROCESS_PID:"process.pid",PROCESS_EXECUTABLE_NAME:"process.executable.name",PROCESS_EXECUTABLE_PATH:"process.executable.path",PROCESS_COMMAND:"process.command",PROCESS_COMMAND_LINE:"process.command_line",PROCESS_COMMAND_ARGS:"process.command_args",PROCESS_OWNER:"process.owner",PROCESS_RUNTIME_NAME:"process.runtime.name",PROCESS_RUNTIME_VERSION:"process.runtime.version",PROCESS_RUNTIME_DESCRIPTION:"process.runtime.description",SERVICE_NAME:"service.name",SERVICE_NAMESPACE:"service.namespace",SERVICE_INSTANCE_ID:"service.instance.id",SERVICE_VERSION:"service.version",TELEMETRY_SDK_NAME:"telemetry.sdk.name",TELEMETRY_SDK_LANGUAGE:"telemetry.sdk.language",TELEMETRY_SDK_VERSION:"telemetry.sdk.version",TELEMETRY_AUTO_VERSION:"telemetry.auto.version",WEBENGINE_NAME:"webengine.name",WEBENGINE_VERSION:"webengine.version",WEBENGINE_DESCRIPTION:"webengine.description"};MG.CloudProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};MG.CloudPlatformValues={ALIBABA_CLOUD_ECS:"alibaba_cloud_ecs",ALIBABA_CLOUD_FC:"alibaba_cloud_fc",AWS_EC2:"aws_ec2",AWS_ECS:"aws_ecs",AWS_EKS:"aws_eks",AWS_LAMBDA:"aws_lambda",AWS_ELASTIC_BEANSTALK:"aws_elastic_beanstalk",AZURE_VM:"azure_vm",AZURE_CONTAINER_INSTANCES:"azure_container_instances",AZURE_AKS:"azure_aks",AZURE_FUNCTIONS:"azure_functions",AZURE_APP_SERVICE:"azure_app_service",GCP_COMPUTE_ENGINE:"gcp_compute_engine",GCP_CLOUD_RUN:"gcp_cloud_run",GCP_KUBERNETES_ENGINE:"gcp_kubernetes_engine",GCP_CLOUD_FUNCTIONS:"gcp_cloud_functions",GCP_APP_ENGINE:"gcp_app_engine"};MG.AwsEcsLaunchtypeValues={EC2:"ec2",FARGATE:"fargate"};MG.HostArchValues={AMD64:"amd64",ARM32:"arm32",ARM64:"arm64",IA64:"ia64",PPC32:"ppc32",PPC64:"ppc64",X86:"x86"};MG.OsTypeValues={WINDOWS:"windows",LINUX:"linux",DARWIN:"darwin",FREEBSD:"freebsd",NETBSD:"netbsd",OPENBSD:"openbsd",DRAGONFLYBSD:"dragonflybsd",HPUX:"hpux",AIX:"aix",SOLARIS:"solaris",Z_OS:"z_os"};MG.TelemetrySdkLanguageValues={CPP:"cpp",DOTNET:"dotnet",ERLANG:"erlang",GO:"go",JAVA:"java",NODEJS:"nodejs",PHP:"php",PYTHON:"python",RUBY:"ruby",WEBJS:"webjs"}});var HLi=H(UCe=>{"use strict";var fhc=UCe&&UCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Ihc=UCe&&UCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&fhc(t,e,r)};Object.defineProperty(UCe,"__esModule",{value:!0});Ihc(MLi(),UCe)});var ole=H(sle=>{"use strict";var hhc=sle&&sle.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YLi=sle&&sle.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&hhc(t,e,r)};Object.defineProperty(sle,"__esModule",{value:!0});YLi(PLi(),sle);YLi(HLi(),sle)});var nKe=H(ale=>{"use strict";Object.defineProperty(ale,"__esModule",{value:!0});ale.isTracingSuppressed=ale.unsuppressTracing=ale.suppressTracing=void 0;var mhc=(LI(),vi(ZI)),ZFr=(0,mhc.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function Chc(e){return e.setValue(ZFr,!0)}ale.suppressTracing=Chc;function _hc(e){return e.deleteValue(ZFr)}ale.unsuppressTracing=_hc;function yhc(e){return e.getValue(ZFr)===!0}ale.isTracingSuppressed=yhc});var LFr=H(HG=>{"use strict";Object.defineProperty(HG,"__esModule",{value:!0});HG.BAGGAGE_MAX_TOTAL_LENGTH=HG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=HG.BAGGAGE_MAX_NAME_VALUE_PAIRS=HG.BAGGAGE_HEADER=HG.BAGGAGE_ITEMS_SEPARATOR=HG.BAGGAGE_PROPERTIES_SEPARATOR=HG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;HG.BAGGAGE_KEY_PAIR_SEPARATOR="=";HG.BAGGAGE_PROPERTIES_SEPARATOR=";";HG.BAGGAGE_ITEMS_SEPARATOR=",";HG.BAGGAGE_HEADER="baggage";HG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;HG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;HG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var VFr=H(P6=>{"use strict";Object.defineProperty(P6,"__esModule",{value:!0});P6.parseKeyPairsIntoRecord=P6.parsePairKeyValue=P6.getKeyPairs=P6.serializeKeyPairs=void 0;var bhc=(LI(),vi(ZI)),KCe=LFr();function Ehc(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?KCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>KCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}P6.serializeKeyPairs=Ehc;function Shc(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=KCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}P6.getKeyPairs=Shc;function QLi(e){let t=e.split(KCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(KCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,bhc.baggageEntryMetadataFromString)(t.join(KCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}P6.parsePairKeyValue=QLi;function vhc(e){return typeof e!="string"||e.length===0?{}:e.split(KCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>QLi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}P6.parseKeyPairsIntoRecord=vhc});var XLi=H(w2t=>{"use strict";Object.defineProperty(w2t,"__esModule",{value:!0});w2t.W3CBaggagePropagator=void 0;var WFr=(LI(),vi(ZI)),Bhc=nKe(),jCe=LFr(),OFr=VFr(),PFr=class{inject(t,r,n){let a=WFr.propagation.getBaggage(t);if(!a||(0,Bhc.isTracingSuppressed)(t))return;let o=(0,OFr.getKeyPairs)(a).filter(A=>A.length<=jCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,jCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,OFr.serializeKeyPairs)(o);l.length>0&&n.set(r,jCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,jCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(jCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(jCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,OFr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:WFr.propagation.setBaggage(t,WFr.propagation.createBaggage(l))}fields(){return[jCe.BAGGAGE_HEADER]}};w2t.W3CBaggagePropagator=PFr});var JLi=H(T2t=>{"use strict";Object.defineProperty(T2t,"__esModule",{value:!0});T2t.AnchoredClock=void 0;var MFr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};T2t.AnchoredClock=MFr});var qLi=H(cle=>{"use strict";Object.defineProperty(cle,"__esModule",{value:!0});cle.isAttributeValue=cle.isAttributeKey=cle.sanitizeAttributes=void 0;var ULi=(LI(),vi(ZI));function whc(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!KLi(r)){ULi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!jLi(n)){ULi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}cle.sanitizeAttributes=whc;function KLi(e){return typeof e=="string"&&e.length>0}cle.isAttributeKey=KLi;function jLi(e){return e==null?!0:Array.isArray(e)?Thc(e):zLi(e)}cle.isAttributeValue=jLi;function Thc(e){let t;for(let r of e)if(r!=null){if(!t){if(zLi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function zLi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var HFr=H(R2t=>{"use strict";Object.defineProperty(R2t,"__esModule",{value:!0});R2t.loggingErrorHandler=void 0;var Rhc=(LI(),vi(ZI));function Nhc(){return e=>{Rhc.diag.error(Dhc(e))}}R2t.loggingErrorHandler=Nhc;function Dhc(e){return typeof e=="string"?e:JSON.stringify(khc(e))}function khc(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var YFr=H(VDe=>{"use strict";Object.defineProperty(VDe,"__esModule",{value:!0});VDe.globalErrorHandler=VDe.setGlobalErrorHandler=void 0;var xhc=HFr(),$Li=(0,xhc.loggingErrorHandler)();function Ghc(e){$Li=e}VDe.setGlobalErrorHandler=Ghc;function Fhc(e){try{$Li(e)}catch{}}VDe.globalErrorHandler=Fhc});var QFr=H(iKe=>{"use strict";Object.defineProperty(iKe,"__esModule",{value:!0});iKe.TracesSamplerValues=void 0;var Zhc;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(Zhc=iKe.TracesSamplerValues||(iKe.TracesSamplerValues={}))});var e9i=H(N2t=>{"use strict";Object.defineProperty(N2t,"__esModule",{value:!0});N2t._globalThis=void 0;N2t._globalThis=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{}});var JFr=H(J1=>{"use strict";Object.defineProperty(J1,"__esModule",{value:!0});J1.getEnvWithoutDefaults=J1.parseEnvironment=J1.DEFAULT_ENVIRONMENT=J1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=J1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=J1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=J1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var lle=(LI(),vi(ZI)),Lhc=QFr(),Vhc=e9i(),Whc=",",Ohc=["OTEL_SDK_DISABLED"];function Phc(e){return Ohc.indexOf(e)>-1}var Mhc=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function Hhc(e){return Mhc.indexOf(e)>-1}var Yhc=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS"];function Qhc(e){return Yhc.indexOf(e)>-1}J1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;J1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;J1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;J1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;J1.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:lle.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:J1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:J1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:J1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:J1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:J1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:J1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:J1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:J1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:Lhc.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative"};function Xhc(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function Jhc(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function Uhc(e,t,r,n=Whc){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var Khc={ALL:lle.DiagLogLevel.ALL,VERBOSE:lle.DiagLogLevel.VERBOSE,DEBUG:lle.DiagLogLevel.DEBUG,INFO:lle.DiagLogLevel.INFO,WARN:lle.DiagLogLevel.WARN,ERROR:lle.DiagLogLevel.ERROR,NONE:lle.DiagLogLevel.NONE};function jhc(e,t,r){let n=r[e];if(typeof n=="string"){let a=Khc[n.toUpperCase()];a!=null&&(t[e]=a)}}function XFr(e){let t={};for(let r in J1.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":jhc(n,t,e);break;default:if(Phc(n))Xhc(n,t,e);else if(Hhc(n))Jhc(n,t,e);else if(Qhc(n))Uhc(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}J1.parseEnvironment=XFr;function zhc(){return typeof process<"u"&&process&&process.env?XFr(process.env):XFr(Vhc._globalThis)}J1.getEnvWithoutDefaults=zhc});var r9i=H(D2t=>{"use strict";Object.defineProperty(D2t,"__esModule",{value:!0});D2t.getEnv=void 0;var qhc=Et("os"),t9i=JFr();function $hc(){let e=(0,t9i.parseEnvironment)(process.env);return Object.assign({HOSTNAME:qhc.hostname()},t9i.DEFAULT_ENVIRONMENT,e)}D2t.getEnv=$hc});var n9i=H(k2t=>{"use strict";Object.defineProperty(k2t,"__esModule",{value:!0});k2t._globalThis=void 0;k2t._globalThis=typeof globalThis=="object"?globalThis:global});var s9i=H(x2t=>{"use strict";Object.defineProperty(x2t,"__esModule",{value:!0});x2t.hexToBase64=void 0;function i9i(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}var emc=Buffer.alloc(8),tmc=Buffer.alloc(16);function rmc(e){let t;e.length===16?t=emc:e.length===32?t=tmc:t=Buffer.alloc(e.length/2);let r=0;for(let n=0;n{"use strict";Object.defineProperty(F2t,"__esModule",{value:!0});F2t.RandomIdGenerator=void 0;var nmc=8,a9i=16,UFr=class{constructor(){this.generateTraceId=o9i(a9i),this.generateSpanId=o9i(nmc)}};F2t.RandomIdGenerator=UFr;var G2t=Buffer.allocUnsafe(a9i);function o9i(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(G2t[e-1]=1);return G2t.toString("hex",0,e)}}});var l9i=H(Z2t=>{"use strict";Object.defineProperty(Z2t,"__esModule",{value:!0});Z2t.otperformance=void 0;var imc=Et("perf_hooks");Z2t.otperformance=imc.performance});var V2t=H(L2t=>{"use strict";Object.defineProperty(L2t,"__esModule",{value:!0});L2t.VERSION=void 0;L2t.VERSION="1.16.0"});var u9i=H(W2t=>{"use strict";Object.defineProperty(W2t,"__esModule",{value:!0});W2t.SDK_INFO=void 0;var smc=V2t(),sKe=ole();W2t.SDK_INFO={[sKe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:"opentelemetry",[sKe.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"node",[sKe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:sKe.TelemetrySdkLanguageValues.NODEJS,[sKe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:smc.VERSION}});var g9i=H(O2t=>{"use strict";Object.defineProperty(O2t,"__esModule",{value:!0});O2t.unrefTimer=void 0;function omc(e){e.unref()}O2t.unrefTimer=omc});var A9i=H(RP=>{"use strict";var amc=RP&&RP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),zCe=RP&&RP.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&amc(t,e,r)};Object.defineProperty(RP,"__esModule",{value:!0});zCe(r9i(),RP);zCe(n9i(),RP);zCe(s9i(),RP);zCe(c9i(),RP);zCe(l9i(),RP);zCe(u9i(),RP);zCe(g9i(),RP)});var KFr=H(qCe=>{"use strict";var cmc=qCe&&qCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lmc=qCe&&qCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&cmc(t,e,r)};Object.defineProperty(qCe,"__esModule",{value:!0});lmc(A9i(),qCe)});var I9i=H(ME=>{"use strict";Object.defineProperty(ME,"__esModule",{value:!0});ME.addHrTimes=ME.isTimeInput=ME.isTimeInputHrTime=ME.hrTimeToMicroseconds=ME.hrTimeToMilliseconds=ME.hrTimeToNanoseconds=ME.hrTimeToTimeStamp=ME.hrTimeDuration=ME.timeInputToHrTime=ME.hrTime=ME.getTimeOrigin=ME.millisToHrTime=void 0;var jFr=KFr(),d9i=9,umc=6,gmc=Math.pow(10,umc),P2t=Math.pow(10,d9i);function oKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*gmc);return[r,n]}ME.millisToHrTime=oKe;function zFr(){let e=jFr.otperformance.timeOrigin;if(typeof e!="number"){let t=jFr.otperformance;e=t.timing&&t.timing.fetchStart}return e}ME.getTimeOrigin=zFr;function p9i(e){let t=oKe(zFr()),r=oKe(typeof e=="number"?e:jFr.otperformance.now());return f9i(t,r)}ME.hrTime=p9i;function Amc(e){if(qFr(e))return e;if(typeof e=="number")return e=P2t&&(r[1]-=P2t,r[0]+=1),r}ME.addHrTimes=f9i});var m9i=H(h9i=>{"use strict";Object.defineProperty(h9i,"__esModule",{value:!0})});var C9i=H(aKe=>{"use strict";Object.defineProperty(aKe,"__esModule",{value:!0});aKe.ExportResultCode=void 0;var Cmc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(Cmc=aKe.ExportResultCode||(aKe.ExportResultCode={}))});var y9i=H(M2t=>{"use strict";Object.defineProperty(M2t,"__esModule",{value:!0});M2t.CompositePropagator=void 0;var _9i=(LI(),vi(ZI)),$Fr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){_9i.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){_9i.diag.warn(`Failed to inject with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};M2t.CompositePropagator=$Fr});var b9i=H(WDe=>{"use strict";Object.defineProperty(WDe,"__esModule",{value:!0});WDe.validateValue=WDe.validateKey=void 0;var eZr="[_0-9a-z-*/]",_mc=`[a-z]${eZr}{0,255}`,ymc=`[a-z0-9]${eZr}{0,240}@[a-z]${eZr}{0,13}`,bmc=new RegExp(`^(?:${_mc}|${ymc})$`),Emc=/^[ -~]{0,255}[!-~]$/,Smc=/,|=/;function vmc(e){return bmc.test(e)}WDe.validateKey=vmc;function Bmc(e){return Emc.test(e)&&!Smc.test(e)}WDe.validateValue=Bmc});var rZr=H(H2t=>{"use strict";Object.defineProperty(H2t,"__esModule",{value:!0});H2t.TraceState=void 0;var E9i=b9i(),S9i=32,wmc=512,v9i=",",B9i="=",tZr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+B9i+this.get(r)),t),[]).join(v9i)}_parse(t){t.length>wmc||(this._internalState=t.split(v9i).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(B9i);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,E9i.validateKey)(l)&&(0,E9i.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>S9i&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,S9i))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};H2t.TraceState=tZr});var T9i=H(YG=>{"use strict";Object.defineProperty(YG,"__esModule",{value:!0});YG.W3CTraceContextPropagator=YG.parseTraceParent=YG.TRACE_STATE_HEADER=YG.TRACE_PARENT_HEADER=void 0;var Y2t=(LI(),vi(ZI)),Tmc=nKe(),Rmc=rZr();YG.TRACE_PARENT_HEADER="traceparent";YG.TRACE_STATE_HEADER="tracestate";var Nmc="00",Dmc="(?!ff)[\\da-f]{2}",kmc="(?![0]{32})[\\da-f]{32}",xmc="(?![0]{16})[\\da-f]{16}",Gmc="[\\da-f]{2}",Fmc=new RegExp(`^\\s?(${Dmc})-(${kmc})-(${xmc})-(${Gmc})(-.*)?\\s?$`);function w9i(e){let t=Fmc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}YG.parseTraceParent=w9i;var nZr=class{inject(t,r,n){let a=Y2t.trace.getSpanContext(t);if(!a||(0,Tmc.isTracingSuppressed)(t)||!(0,Y2t.isSpanContextValid)(a))return;let o=`${Nmc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||Y2t.TraceFlags.NONE).toString(16)}`;n.set(r,YG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,YG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,YG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=w9i(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,YG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new Rmc.TraceState(typeof f=="string"?f:void 0)}return Y2t.trace.setSpanContext(t,l)}fields(){return[YG.TRACE_PARENT_HEADER,YG.TRACE_STATE_HEADER]}};YG.W3CTraceContextPropagator=nZr});var N9i=H(R9i=>{"use strict";Object.defineProperty(R9i,"__esModule",{value:!0})});var D9i=H(E4=>{"use strict";Object.defineProperty(E4,"__esModule",{value:!0});E4.getRPCMetadata=E4.deleteRPCMetadata=E4.setRPCMetadata=E4.RPCType=void 0;var Zmc=(LI(),vi(ZI)),iZr=(0,Zmc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),Lmc;(function(e){e.HTTP="http"})(Lmc=E4.RPCType||(E4.RPCType={}));function Vmc(e,t){return e.setValue(iZr,t)}E4.setRPCMetadata=Vmc;function Wmc(e){return e.deleteValue(iZr)}E4.deleteRPCMetadata=Wmc;function Omc(e){return e.getValue(iZr)}E4.getRPCMetadata=Omc});var oZr=H(Q2t=>{"use strict";Object.defineProperty(Q2t,"__esModule",{value:!0});Q2t.AlwaysOffSampler=void 0;var Pmc=(LI(),vi(ZI)),sZr=class{shouldSample(){return{decision:Pmc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};Q2t.AlwaysOffSampler=sZr});var cZr=H(X2t=>{"use strict";Object.defineProperty(X2t,"__esModule",{value:!0});X2t.AlwaysOnSampler=void 0;var Mmc=(LI(),vi(ZI)),aZr=class{shouldSample(){return{decision:Mmc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};X2t.AlwaysOnSampler=aZr});var x9i=H(U2t=>{"use strict";Object.defineProperty(U2t,"__esModule",{value:!0});U2t.ParentBasedSampler=void 0;var J2t=(LI(),vi(ZI)),Hmc=YFr(),k9i=oZr(),lZr=cZr(),uZr=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,Hmc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new lZr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new lZr.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new k9i.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new lZr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new k9i.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=J2t.trace.getSpanContext(t);return!A||!(0,J2t.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&J2t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&J2t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};U2t.ParentBasedSampler=uZr});var G9i=H(K2t=>{"use strict";Object.defineProperty(K2t,"__esModule",{value:!0});K2t.TraceIdRatioBasedSampler=void 0;var gZr=(LI(),vi(ZI)),AZr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,gZr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};K2t.TraceIdRatioBasedSampler=AZr});var W9i=H(j2t=>{"use strict";Object.defineProperty(j2t,"__esModule",{value:!0});j2t.isPlainObject=void 0;var Ymc="[object Object]",Qmc="[object Null]",Xmc="[object Undefined]",Jmc=Function.prototype,F9i=Jmc.toString,Umc=F9i.call(Object),Kmc=jmc(Object.getPrototypeOf,Object),Z9i=Object.prototype,L9i=Z9i.hasOwnProperty,$Ce=Symbol?Symbol.toStringTag:void 0,V9i=Z9i.toString;function jmc(e,t){return function(r){return e(t(r))}}function zmc(e){if(!qmc(e)||$mc(e)!==Ymc)return!1;let t=Kmc(e);if(t===null)return!0;let r=L9i.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&F9i.call(r)===Umc}j2t.isPlainObject=zmc;function qmc(e){return e!=null&&typeof e=="object"}function $mc(e){return e==null?e===void 0?Xmc:Qmc:$Ce&&$Ce in Object(e)?eCc(e):tCc(e)}function eCc(e){let t=L9i.call(e,$Ce),r=e[$Ce],n=!1;try{e[$Ce]=void 0,n=!0}catch{}let a=V9i.call(e);return n&&(t?e[$Ce]=r:delete e[$Ce]),a}function tCc(e){return V9i.call(e)}});var Y9i=H($2t=>{"use strict";Object.defineProperty($2t,"__esModule",{value:!0});$2t.merge=void 0;var O9i=W9i(),rCc=20;function nCc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=M9i(t,e.shift(),0,r);return t}$2t.merge=nCc;function dZr(e){return q2t(e)?e.slice():e}function M9i(e,t,r=0,n){let a;if(!(r>rCc)){if(r++,z2t(e)||z2t(t)||H9i(t))a=dZr(t);else if(q2t(e)){if(a=e.slice(),q2t(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(P9i(e,f,n)||P9i(t,f,n))delete a[f];else{if(cKe(C)&&cKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=M9i(a[f],I,r,n)}}}}else a=t;return a}}function P9i(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function iCc(e,t){return!(!(0,O9i.isPlainObject)(e)||!(0,O9i.isPlainObject)(t))}});var Q9i=H(ODe=>{"use strict";Object.defineProperty(ODe,"__esModule",{value:!0});ODe.callWithTimeout=ODe.TimeoutError=void 0;var eSt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};ODe.TimeoutError=eSt;function sCc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new eSt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}ODe.callWithTimeout=sCc});var J9i=H(PDe=>{"use strict";Object.defineProperty(PDe,"__esModule",{value:!0});PDe.isUrlIgnored=PDe.urlMatches=void 0;function X9i(e,t){return typeof t=="string"?e===t:!!e.match(t)}PDe.urlMatches=X9i;function oCc(e,t){if(!t)return!1;for(let r of t)if(X9i(e,r))return!0;return!1}PDe.isUrlIgnored=oCc});var U9i=H(tSt=>{"use strict";Object.defineProperty(tSt,"__esModule",{value:!0});tSt.isWrapped=void 0;function aCc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}tSt.isWrapped=aCc});var K9i=H(rSt=>{"use strict";Object.defineProperty(rSt,"__esModule",{value:!0});rSt.Deferred=void 0;var pZr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};rSt.Deferred=pZr});var j9i=H(nSt=>{"use strict";Object.defineProperty(nSt,"__esModule",{value:!0});nSt.BindOnceFuture=void 0;var cCc=K9i(),fZr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new cCc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};nSt.BindOnceFuture=fZr});var q9i=H(iSt=>{"use strict";Object.defineProperty(iSt,"__esModule",{value:!0});iSt._export=void 0;var z9i=(LI(),vi(ZI)),lCc=nKe();function uCc(e,t){return new Promise(r=>{z9i.context.with((0,lCc.suppressTracing)(z9i.context.active()),()=>{e.export(t,n=>{r(n)})})})}iSt._export=uCc});var _H=H(Rm=>{"use strict";var gCc=Rm&&Rm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ub=Rm&&Rm.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&gCc(t,e,r)};Object.defineProperty(Rm,"__esModule",{value:!0});Rm.internal=Rm.baggageUtils=void 0;ub(XLi(),Rm);ub(JLi(),Rm);ub(qLi(),Rm);ub(YFr(),Rm);ub(HFr(),Rm);ub(I9i(),Rm);ub(m9i(),Rm);ub(C9i(),Rm);ub(V2t(),Rm);Rm.baggageUtils=VFr();ub(KFr(),Rm);ub(y9i(),Rm);ub(T9i(),Rm);ub(N9i(),Rm);ub(D9i(),Rm);ub(oZr(),Rm);ub(cZr(),Rm);ub(x9i(),Rm);ub(G9i(),Rm);ub(nKe(),Rm);ub(rZr(),Rm);ub(JFr(),Rm);ub(Y9i(),Rm);ub(QFr(),Rm);ub(Q9i(),Rm);ub(J9i(),Rm);ub(U9i(),Rm);ub(j9i(),Rm);ub(V2t(),Rm);var ACc=q9i();Rm.internal={_export:ACc._export}});var $9i=H(sSt=>{"use strict";Object.defineProperty(sSt,"__esModule",{value:!0});sSt.defaultServiceName=void 0;function dCc(){return`unknown_service:${process.argv0}`}sSt.defaultServiceName=dCc});var IZr=H(MDe=>{"use strict";Object.defineProperty(MDe,"__esModule",{value:!0});MDe.normalizeType=MDe.normalizeArch=void 0;var pCc=e=>{switch(e){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return e}};MDe.normalizeArch=pCc;var fCc=e=>{switch(e){case"sunos":return"solaris";case"win32":return"windows";default:return e}};MDe.normalizeType=fCc});var aSt=H(oSt=>{"use strict";Object.defineProperty(oSt,"__esModule",{value:!0});oSt.execAsync=void 0;var ICc=Et("child_process"),hCc=Et("util");oSt.execAsync=hCc.promisify(ICc.exec)});var eVi=H(cSt=>{"use strict";Object.defineProperty(cSt,"__esModule",{value:!0});cSt.getMachineId=void 0;var mCc=aSt(),CCc=(LI(),vi(ZI));async function _Cc(){try{let t=(await(0,mCc.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` -`).find(n=>n.includes("IOPlatformUUID"));if(!t)return"";let r=t.split('" = "');if(r.length===2)return r[1].slice(0,-1)}catch(e){CCc.diag.debug(`error reading machine id: ${e}`)}return""}cSt.getMachineId=_Cc});var tVi=H(lSt=>{"use strict";Object.defineProperty(lSt,"__esModule",{value:!0});lSt.getMachineId=void 0;var yCc=Et("fs"),bCc=(LI(),vi(ZI));async function ECc(){let e=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let t of e)try{return(await yCc.promises.readFile(t,{encoding:"utf8"})).trim()}catch(r){bCc.diag.debug(`error reading machine id: ${r}`)}return""}lSt.getMachineId=ECc});var nVi=H(uSt=>{"use strict";Object.defineProperty(uSt,"__esModule",{value:!0});uSt.getMachineId=void 0;var SCc=Et("fs"),vCc=aSt(),rVi=(LI(),vi(ZI));async function BCc(){try{return(await SCc.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(e){rVi.diag.debug(`error reading machine id: ${e}`)}try{return(await(0,vCc.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(e){rVi.diag.debug(`error reading machine id: ${e}`)}return""}uSt.getMachineId=BCc});var sVi=H(gSt=>{"use strict";Object.defineProperty(gSt,"__esModule",{value:!0});gSt.getMachineId=void 0;var iVi=Et("process"),wCc=aSt(),TCc=(LI(),vi(ZI));async function RCc(){let e="QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",t="%windir%\\System32\\REG.exe";iVi.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in iVi.env&&(t="%windir%\\sysnative\\cmd.exe /c "+t);try{let n=(await(0,wCc.execAsync)(`${t} ${e}`)).stdout.split("REG_SZ");if(n.length===2)return n[1].trim()}catch(r){TCc.diag.debug(`error reading machine id: ${r}`)}return""}gSt.getMachineId=RCc});var oVi=H(ASt=>{"use strict";Object.defineProperty(ASt,"__esModule",{value:!0});ASt.getMachineId=void 0;var NCc=(LI(),vi(ZI));async function DCc(){return NCc.diag.debug("could not read machine-id: unsupported platform"),""}ASt.getMachineId=DCc});var aVi=H(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});ite.getMachineId=void 0;var kCc=Et("process"),HDe;ite.getMachineId=HDe;switch(kCc.platform){case"darwin":ite.getMachineId=HDe=eVi().getMachineId;break;case"linux":ite.getMachineId=HDe=tVi().getMachineId;break;case"freebsd":ite.getMachineId=HDe=nVi().getMachineId;break;case"win32":ite.getMachineId=HDe=sVi().getMachineId;break;default:ite.getMachineId=HDe=oVi().getMachineId}});var CZr=H(dSt=>{"use strict";Object.defineProperty(dSt,"__esModule",{value:!0});dSt.hostDetectorSync=void 0;var hZr=ole(),xCc=e_e(),cVi=Et("os"),GCc=IZr(),FCc=aVi(),mZr=class{detect(t){let r={[hZr.SemanticResourceAttributes.HOST_NAME]:(0,cVi.hostname)(),[hZr.SemanticResourceAttributes.HOST_ARCH]:(0,GCc.normalizeArch)((0,cVi.arch)())};return new xCc.Resource(r,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,FCc.getMachineId)().then(t=>{let r={};return t&&(r[hZr.SemanticResourceAttributes.HOST_ID]=t),r})}};dSt.hostDetectorSync=new mZr});var lVi=H(pSt=>{"use strict";Object.defineProperty(pSt,"__esModule",{value:!0});pSt.hostDetector=void 0;var ZCc=CZr(),_Zr=class{detect(t){return Promise.resolve(ZCc.hostDetectorSync.detect(t))}};pSt.hostDetector=new _Zr});var bZr=H(fSt=>{"use strict";Object.defineProperty(fSt,"__esModule",{value:!0});fSt.osDetectorSync=void 0;var uVi=ole(),LCc=e_e(),gVi=Et("os"),VCc=IZr(),yZr=class{detect(t){let r={[uVi.SemanticResourceAttributes.OS_TYPE]:(0,VCc.normalizeType)((0,gVi.platform)()),[uVi.SemanticResourceAttributes.OS_VERSION]:(0,gVi.release)()};return new LCc.Resource(r)}};fSt.osDetectorSync=new yZr});var AVi=H(ISt=>{"use strict";Object.defineProperty(ISt,"__esModule",{value:!0});ISt.osDetector=void 0;var WCc=bZr(),EZr=class{detect(t){return Promise.resolve(WCc.osDetectorSync.detect(t))}};ISt.osDetector=new EZr});var vZr=H(hSt=>{"use strict";Object.defineProperty(hSt,"__esModule",{value:!0});hSt.processDetectorSync=void 0;var OCc=(LI(),vi(ZI)),ste=ole(),PCc=e_e(),MCc=Et("os"),SZr=class{detect(t){let r={[ste.SemanticResourceAttributes.PROCESS_PID]:process.pid,[ste.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]:process.title,[ste.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]:process.execPath,[ste.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[ste.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:process.versions.node,[ste.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"nodejs",[ste.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};process.argv.length>1&&(r[ste.SemanticResourceAttributes.PROCESS_COMMAND]=process.argv[1]);try{let n=MCc.userInfo();r[ste.SemanticResourceAttributes.PROCESS_OWNER]=n.username}catch(n){OCc.diag.debug(`error obtaining process owner: ${n}`)}return new PCc.Resource(r)}};hSt.processDetectorSync=new SZr});var dVi=H(mSt=>{"use strict";Object.defineProperty(mSt,"__esModule",{value:!0});mSt.processDetector=void 0;var HCc=vZr(),BZr=class{detect(t){return Promise.resolve(HCc.processDetectorSync.detect(t))}};mSt.processDetector=new BZr});var pVi=H(NP=>{"use strict";var YCc=NP&&NP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),t_e=NP&&NP.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&YCc(t,e,r)};Object.defineProperty(NP,"__esModule",{value:!0});t_e($9i(),NP);t_e(lVi(),NP);t_e(AVi(),NP);t_e(CZr(),NP);t_e(bZr(),NP);t_e(dVi(),NP);t_e(vZr(),NP)});var wZr=H(r_e=>{"use strict";var QCc=r_e&&r_e.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),XCc=r_e&&r_e.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&QCc(t,e,r)};Object.defineProperty(r_e,"__esModule",{value:!0});XCc(pVi(),r_e)});var e_e=H(CSt=>{"use strict";Object.defineProperty(CSt,"__esModule",{value:!0});CSt.Resource=void 0;var fVi=(LI(),vi(ZI)),n_e=ole(),TZr=_H(),JCc=wZr(),lKe=class e{constructor(t,r){var n;this._attributes=t,this.asyncAttributesPending=r!=null,this._syncAttributes=(n=this._attributes)!==null&&n!==void 0?n:{},this._asyncAttributesPromise=r?.then(a=>(this._attributes=Object.assign({},this._attributes,a),this.asyncAttributesPending=!1,a),a=>(fVi.diag.debug("a resource's async attributes promise rejected: %s",a),this.asyncAttributesPending=!1,{}))}static empty(){return e.EMPTY}static default(){return new e({[n_e.SemanticResourceAttributes.SERVICE_NAME]:(0,JCc.defaultServiceName)(),[n_e.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:TZr.SDK_INFO[n_e.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE],[n_e.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:TZr.SDK_INFO[n_e.SemanticResourceAttributes.TELEMETRY_SDK_NAME],[n_e.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:TZr.SDK_INFO[n_e.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]})}get attributes(){var t;return this.asyncAttributesPending&&fVi.diag.error("Accessing resource attributes before async attributes settled"),(t=this._attributes)!==null&&t!==void 0?t:{}}async waitForAsyncAttributes(){this.asyncAttributesPending&&await this._asyncAttributesPromise}merge(t){var r;if(!t)return this;let n=Object.assign(Object.assign({},this._syncAttributes),(r=t._syncAttributes)!==null&&r!==void 0?r:t.attributes);if(!this._asyncAttributesPromise&&!t._asyncAttributesPromise)return new e(n);let a=Promise.all([this._asyncAttributesPromise,t._asyncAttributesPromise]).then(([o,l])=>{var A;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),o),(A=t._syncAttributes)!==null&&A!==void 0?A:t.attributes),l)});return new e(n,a)}};CSt.Resource=lKe;lKe.EMPTY=new lKe({})});var hVi=H(IVi=>{"use strict";Object.defineProperty(IVi,"__esModule",{value:!0})});var CVi=H(mVi=>{"use strict";Object.defineProperty(mVi,"__esModule",{value:!0})});var yVi=H(_Vi=>{"use strict";Object.defineProperty(_Vi,"__esModule",{value:!0})});var bVi=H(_St=>{"use strict";Object.defineProperty(_St,"__esModule",{value:!0});_St.browserDetector=void 0;var UCc=ySt(),RZr=class{detect(t){return Promise.resolve(UCc.browserDetectorSync.detect(t))}};_St.browserDetector=new RZr});var DZr=H(bSt=>{"use strict";Object.defineProperty(bSt,"__esModule",{value:!0});bSt.envDetectorSync=void 0;var KCc=(LI(),vi(ZI)),jCc=_H(),zCc=ole(),qCc=e_e(),NZr=class{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(t){let r={},n=(0,jCc.getEnv)(),a=n.OTEL_RESOURCE_ATTRIBUTES,o=n.OTEL_SERVICE_NAME;if(a)try{let l=this._parseResourceAttributes(a);Object.assign(r,l)}catch(l){KCc.diag.debug(`EnvDetector failed: ${l.message}`)}return o&&(r[zCc.SemanticResourceAttributes.SERVICE_NAME]=o),new qCc.Resource(r)}_parseResourceAttributes(t){if(!t)return{};let r={},n=t.split(this._COMMA_SEPARATOR,-1);for(let a of n){let o=a.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(o.length!==2)continue;let[l,A]=o;if(l=l.trim(),A=A.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(l))throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(A))throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);r[l]=decodeURIComponent(A)}return r}_isValid(t){return t.length<=this._MAX_LENGTH&&this._isBaggageOctetString(t)}_isBaggageOctetString(t){for(let r=0;r126)return!1}return!0}_isValidAndNotEmpty(t){return t.length>0&&this._isValid(t)}};bSt.envDetectorSync=new NZr});var EVi=H(ESt=>{"use strict";Object.defineProperty(ESt,"__esModule",{value:!0});ESt.envDetector=void 0;var $Cc=DZr(),kZr=class{detect(t){return Promise.resolve($Cc.envDetectorSync.detect(t))}};ESt.envDetector=new kZr});var SVi=H(vSt=>{"use strict";Object.defineProperty(vSt,"__esModule",{value:!0});vSt.browserDetectorSync=void 0;var SSt=ole(),xZr=ySt(),e_c=(LI(),vi(ZI)),GZr=class{detect(t){if(!(typeof navigator<"u"))return xZr.Resource.empty();let n={[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"browser",[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(n,t)}_getResourceAttributes(t,r){return t[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]===""?(e_c.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),xZr.Resource.empty()):new xZr.Resource(Object.assign({},t))}};vSt.browserDetectorSync=new GZr});var vVi=H(M6=>{"use strict";var t_c=M6&&M6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),BSt=M6&&M6.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&t_c(t,e,r)};Object.defineProperty(M6,"__esModule",{value:!0});BSt(bVi(),M6);BSt(EVi(),M6);BSt(SVi(),M6);BSt(DZr(),M6)});var BVi=H(wSt=>{"use strict";Object.defineProperty(wSt,"__esModule",{value:!0});wSt.isPromiseLike=void 0;var r_c=e=>e!==null&&typeof e=="object"&&typeof e.then=="function";wSt.isPromiseLike=r_c});var TVi=H(QDe=>{"use strict";Object.defineProperty(QDe,"__esModule",{value:!0});QDe.detectResourcesSync=QDe.detectResources=void 0;var uKe=e_e(),YDe=(LI(),vi(ZI)),n_c=BVi(),i_c=async(e={})=>{let t=await Promise.all((e.detectors||[]).map(async r=>{try{let n=await r.detect(e);return YDe.diag.debug(`${r.constructor.name} found resource.`,n),n}catch(n){return YDe.diag.debug(`${r.constructor.name} failed: ${n.message}`),uKe.Resource.empty()}}));return wVi(t),t.reduce((r,n)=>r.merge(n),uKe.Resource.empty())};QDe.detectResources=i_c;var s_c=(e={})=>{var t;let r=((t=e.detectors)!==null&&t!==void 0?t:[]).map(a=>{try{let o=a.detect(e),l;if((0,n_c.isPromiseLike)(o)){let A=async()=>(await o).attributes;l=new uKe.Resource({},A())}else l=o;return l.waitForAsyncAttributes?l.waitForAsyncAttributes().then(()=>YDe.diag.debug(`${a.constructor.name} found resource.`,l)):YDe.diag.debug(`${a.constructor.name} found resource.`,l),l}catch(o){return YDe.diag.error(`${a.constructor.name} failed: ${o.message}`),uKe.Resource.empty()}}),n=r.reduce((a,o)=>a.merge(o),uKe.Resource.empty());return n.waitForAsyncAttributes&&n.waitForAsyncAttributes().then(()=>{wVi(r)}),n};QDe.detectResourcesSync=s_c;var wVi=e=>{e.forEach(t=>{if(Object.keys(t.attributes).length>0){let r=JSON.stringify(t.attributes,null,4);YDe.diag.verbose(r)}})}});var ySt=H(DP=>{"use strict";var o_c=DP&&DP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),i_e=DP&&DP.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&o_c(t,e,r)};Object.defineProperty(DP,"__esModule",{value:!0});i_e(e_e(),DP);i_e(hVi(),DP);i_e(wZr(),DP);i_e(CVi(),DP);i_e(yVi(),DP);i_e(vVi(),DP);i_e(TVi(),DP)});var LZr=H(TSt=>{"use strict";Object.defineProperty(TSt,"__esModule",{value:!0});TSt.LogRecord=void 0;var a_c=(LI(),vi(ZI)),gKe=(LI(),vi(ZI)),FZr=_H(),ZZr=class{constructor(t,r){this.attributes={},this._isReadonly=!1;let{timestamp:n,observedTimestamp:a,severityNumber:o,severityText:l,body:A,attributes:f={},context:I}=r,C=Date.now();if(this.hrTime=(0,FZr.timeInputToHrTime)(n??C),this.hrTimeObserved=(0,FZr.timeInputToHrTime)(a??C),I){let b=gKe.trace.getSpanContext(I);b&&gKe.isSpanContextValid(b)&&(this.spanContext=b)}this.severityNumber=o,this.severityText=l,this.body=A,this.resource=t.resource,this.instrumentationScope=t.instrumentationScope,this._logRecordLimits=t.getLogRecordLimits(),this.setAttributes(f)}set severityText(t){this._isLogRecordReadonly()||(this._severityText=t)}get severityText(){return this._severityText}set severityNumber(t){this._isLogRecordReadonly()||(this._severityNumber=t)}get severityNumber(){return this._severityNumber}set body(t){this._isLogRecordReadonly()||(this._body=t)}get body(){return this._body}setAttribute(t,r){return this._isLogRecordReadonly()?this:r===null?this:(typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length>0&&(this.attributes[t]=r),t.length===0?(gKe.diag.warn(`Invalid attribute key: ${t}`),this):(0,FZr.isAttributeValue)(r)?Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,t)?this:(this.attributes[t]=this._truncateToSize(r),this):(gKe.diag.warn(`Invalid attribute value set for key: ${t}`),this))}setAttributes(t){for(let[r,n]of Object.entries(t))this.setAttribute(r,n);return this}setBody(t){return this.body=t,this}setSeverityNumber(t){return this.severityNumber=t,this}setSeverityText(t){return this.severityText=t,this}makeReadonly(){this._isReadonly=!0}_truncateToSize(t){let r=this._logRecordLimits.attributeValueLengthLimit||0;return r<=0?(gKe.diag.warn(`Attribute value limit must be positive, got ${r}`),t):typeof t=="string"?this._truncateToLimitUtil(t,r):Array.isArray(t)?t.map(n=>typeof n=="string"?this._truncateToLimitUtil(n,r):n):t}_truncateToLimitUtil(t,r){return t.length<=r?t:t.substring(0,r)}_isLogRecordReadonly(){return this._isReadonly&&a_c.diag.warn("Can not execute the operation on emitted log record"),this._isReadonly}};TSt.LogRecord=ZZr});var VZr=H(H6=>{"use strict";Object.defineProperty(H6,"__esModule",{value:!0});H6.DEFAULT_EVENT_DOMAIN=H6.mergeConfig=H6.reconfigureLimits=H6.loadDefaultConfig=void 0;var AKe=_H();function RVi(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,AKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:(0,AKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT},includeTraceContext:!0}}H6.loadDefaultConfig=RVi;function c_c(e){var t,r,n,a,o,l,A,f;let I=Object.assign({},e.logRecordLimits),C=(0,AKe.getEnvWithoutDefaults)();return I.attributeCountLimit=(a=(n=(r=(t=e.logRecordLimits)===null||t===void 0?void 0:t.attributeCountLimit)!==null&&r!==void 0?r:C.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT)!==null&&n!==void 0?n:C.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&a!==void 0?a:AKe.DEFAULT_ATTRIBUTE_COUNT_LIMIT,I.attributeValueLengthLimit=(f=(A=(l=(o=e.logRecordLimits)===null||o===void 0?void 0:o.attributeValueLengthLimit)!==null&&l!==void 0?l:C.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&A!==void 0?A:C.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&f!==void 0?f:AKe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},e,{logRecordLimits:I})}H6.reconfigureLimits=c_c;function l_c(e){let t=RVi(),r=Object.assign({},t,e);return r.logRecordLimits=Object.assign({},t.logRecordLimits,e.logRecordLimits||{}),r}H6.mergeConfig=l_c;H6.DEFAULT_EVENT_DOMAIN="default"});var OZr=H(RSt=>{"use strict";Object.defineProperty(RSt,"__esModule",{value:!0});RSt.Logger=void 0;var u_c=(LI(),vi(ZI)),g_c=LZr(),A_c=VZr(),WZr=class{constructor(t,r,n){this.instrumentationScope=t,this._loggerProvider=n,this._loggerConfig=(0,A_c.mergeConfig)(r),this.resource=n.resource}emit(t){let r=t.context||u_c.context.active(),n=new g_c.LogRecord(this,Object.assign({context:r},t));this.getActiveLogRecordProcessor().onEmit(n,r),n.makeReadonly()}getLogRecordLimits(){return this._loggerConfig.logRecordLimits}getActiveLogRecordProcessor(){return this._loggerProvider.getActiveLogRecordProcessor()}};RSt.Logger=WZr});var NVi=H(NSt=>{"use strict";Object.defineProperty(NSt,"__esModule",{value:!0});NSt.MultiLogRecordProcessor=void 0;var d_c=_H(),PZr=class{constructor(t,r){this.processors=t,this.forceFlushTimeoutMillis=r}async forceFlush(){let t=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(r=>(0,d_c.callWithTimeout)(r.forceFlush(),t)))}onEmit(t){this.processors.forEach(r=>r.onEmit(t))}async shutdown(){await Promise.all(this.processors.map(t=>t.shutdown()))}};NSt.MultiLogRecordProcessor=PZr});var HZr=H(DSt=>{"use strict";Object.defineProperty(DSt,"__esModule",{value:!0});DSt.NoopLogRecordProcessor=void 0;var MZr=class{forceFlush(){return Promise.resolve()}onEmit(t){}shutdown(){return Promise.resolve()}};DSt.NoopLogRecordProcessor=MZr});var FVi=H(s_e=>{"use strict";Object.defineProperty(s_e,"__esModule",{value:!0});s_e.LoggerProvider=s_e.DEFAULT_LOGGER_NAME=void 0;var dKe=(LI(),vi(ZI)),p_c=GDe(),DVi=ySt(),kVi=_H(),f_c=OZr(),xVi=VZr(),GVi=NVi(),I_c=HZr();s_e.DEFAULT_LOGGER_NAME="unknown";var YZr=class{constructor(t={}){this._loggers=new Map,this._registeredLogRecordProcessors=[];let{resource:r=DVi.Resource.empty(),logRecordLimits:n,forceFlushTimeoutMillis:a}=(0,kVi.merge)({},(0,xVi.loadDefaultConfig)(),(0,xVi.reconfigureLimits)(t));this.resource=DVi.Resource.default().merge(r),this._config={logRecordLimits:n,resource:this.resource,forceFlushTimeoutMillis:a},this._shutdownOnce=new kVi.BindOnceFuture(this._shutdown,this),this._activeProcessor=new GVi.MultiLogRecordProcessor([new I_c.NoopLogRecordProcessor],a)}getLogger(t,r,n){if(this._shutdownOnce.isCalled)return dKe.diag.warn("A shutdown LoggerProvider cannot provide a Logger"),p_c.NOOP_LOGGER;t||dKe.diag.warn("Logger requested without instrumentation scope name.");let a=t||s_e.DEFAULT_LOGGER_NAME,o=`${a}@${r||""}:${n?.schemaUrl||""}`;return this._loggers.has(o)||this._loggers.set(o,new f_c.Logger({name:a,version:r,schemaUrl:n?.schemaUrl},{logRecordLimits:this._config.logRecordLimits},this)),this._loggers.get(o)}addLogRecordProcessor(t){this._registeredLogRecordProcessors.length===0&&this._activeProcessor.shutdown().catch(r=>dKe.diag.error("Error while trying to shutdown current log record processor",r)),this._registeredLogRecordProcessors.push(t),this._activeProcessor=new GVi.MultiLogRecordProcessor(this._registeredLogRecordProcessors,this._config.forceFlushTimeoutMillis)}forceFlush(){return this._shutdownOnce.isCalled?(dKe.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"),this._shutdownOnce.promise):this._activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(dKe.diag.warn("shutdown may only be called once per LoggerProvider"),this._shutdownOnce.promise):this._shutdownOnce.call()}getActiveLogRecordProcessor(){return this._activeProcessor}getActiveLoggers(){return this._loggers}_shutdown(){return this._activeProcessor.shutdown()}};s_e.LoggerProvider=YZr});var ZVi=H(kSt=>{"use strict";Object.defineProperty(kSt,"__esModule",{value:!0});kSt.ConsoleLogRecordExporter=void 0;var h_c=_H(),m_c=_H(),QZr=class{export(t,r){this._sendLogRecords(t,r)}shutdown(){return Promise.resolve()}_exportInfo(t){var r,n,a;return{timestamp:(0,h_c.hrTimeToMicroseconds)(t.hrTime),traceId:(r=t.spanContext)===null||r===void 0?void 0:r.traceId,spanId:(n=t.spanContext)===null||n===void 0?void 0:n.spanId,traceFlags:(a=t.spanContext)===null||a===void 0?void 0:a.traceFlags,severityText:t.severityText,severityNumber:t.severityNumber,body:t.body,attributes:t.attributes}}_sendLogRecords(t,r){for(let n of t)console.dir(this._exportInfo(n),{depth:3});r?.({code:m_c.ExportResultCode.SUCCESS})}};kSt.ConsoleLogRecordExporter=QZr});var LVi=H(xSt=>{"use strict";Object.defineProperty(xSt,"__esModule",{value:!0});xSt.SimpleLogRecordProcessor=void 0;var XZr=_H(),JZr=class{constructor(t){this._exporter=t,this._shutdownOnce=new XZr.BindOnceFuture(this._shutdown,this)}onEmit(t){this._shutdownOnce.isCalled||this._exporter.export([t],r=>{var n;if(r.code!==XZr.ExportResultCode.SUCCESS){(0,XZr.globalErrorHandler)((n=r.error)!==null&&n!==void 0?n:new Error(`SimpleLogRecordProcessor: log record export failed (status ${r})`));return}})}forceFlush(){return Promise.resolve()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}};xSt.SimpleLogRecordProcessor=JZr});var WVi=H(GSt=>{"use strict";Object.defineProperty(GSt,"__esModule",{value:!0});GSt.InMemoryLogRecordExporter=void 0;var VVi=_H(),UZr=class{constructor(){this._finishedLogRecords=[],this._stopped=!1}export(t,r){if(this._stopped)return r({code:VVi.ExportResultCode.FAILED,error:new Error("Exporter has been stopped")});this._finishedLogRecords.push(...t),r({code:VVi.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}};GSt.InMemoryLogRecordExporter=UZr});var OVi=H(FSt=>{"use strict";Object.defineProperty(FSt,"__esModule",{value:!0});FSt.BatchLogRecordProcessorBase=void 0;var C_c=(LI(),vi(ZI)),XDe=_H(),KZr=class{constructor(t,r){var n,a,o,l;this._exporter=t,this._finishedLogRecords=[];let A=(0,XDe.getEnv)();this._maxExportBatchSize=(n=r?.maxExportBatchSize)!==null&&n!==void 0?n:A.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=(a=r?.maxQueueSize)!==null&&a!==void 0?a:A.OTEL_BLRP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=(o=r?.scheduledDelayMillis)!==null&&o!==void 0?o:A.OTEL_BLRP_SCHEDULE_DELAY,this._exportTimeoutMillis=(l=r?.exportTimeoutMillis)!==null&&l!==void 0?l:A.OTEL_BLRP_EXPORT_TIMEOUT,this._shutdownOnce=new XDe.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(C_c.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize)}onEmit(t){this._shutdownOnce.isCalled||this._addToBuffer(t)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(t){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(t),this._maybeStartTimer())}_flushAll(){return new Promise((t,r)=>{let n=[],a=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let o=0;o{t()}).catch(r)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((t,r)=>{(0,XDe.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>t()).catch(r)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(t=>{(0,XDe.globalErrorHandler)(t)})},this._scheduledDelayMillis),(0,XDe.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(t){return new Promise((r,n)=>{this._exporter.export(t,a=>{var o;if(a.code!==XDe.ExportResultCode.SUCCESS){n((o=a.error)!==null&&o!==void 0?o:new Error(`BatchLogRecordProcessorBase: log record export failed (status ${a})`));return}r(a)})})}};FSt.BatchLogRecordProcessorBase=KZr});var PVi=H(ZSt=>{"use strict";Object.defineProperty(ZSt,"__esModule",{value:!0});ZSt.BatchLogRecordProcessor=void 0;var __c=OVi(),jZr=class extends __c.BatchLogRecordProcessorBase{onShutdown(){}};ZSt.BatchLogRecordProcessor=jZr});var MVi=H(LSt=>{"use strict";Object.defineProperty(LSt,"__esModule",{value:!0});LSt.BatchLogRecordProcessor=void 0;var y_c=PVi();Object.defineProperty(LSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return y_c.BatchLogRecordProcessor}})});var HVi=H(VSt=>{"use strict";Object.defineProperty(VSt,"__esModule",{value:!0});VSt.BatchLogRecordProcessor=void 0;var b_c=MVi();Object.defineProperty(VSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return b_c.BatchLogRecordProcessor}})});var pKe=H(fD=>{"use strict";Object.defineProperty(fD,"__esModule",{value:!0});fD.BatchLogRecordProcessor=fD.InMemoryLogRecordExporter=fD.SimpleLogRecordProcessor=fD.ConsoleLogRecordExporter=fD.NoopLogRecordProcessor=fD.LogRecord=fD.Logger=fD.LoggerProvider=void 0;var E_c=FVi();Object.defineProperty(fD,"LoggerProvider",{enumerable:!0,get:function(){return E_c.LoggerProvider}});var S_c=OZr();Object.defineProperty(fD,"Logger",{enumerable:!0,get:function(){return S_c.Logger}});var v_c=LZr();Object.defineProperty(fD,"LogRecord",{enumerable:!0,get:function(){return v_c.LogRecord}});var B_c=HZr();Object.defineProperty(fD,"NoopLogRecordProcessor",{enumerable:!0,get:function(){return B_c.NoopLogRecordProcessor}});var w_c=ZVi();Object.defineProperty(fD,"ConsoleLogRecordExporter",{enumerable:!0,get:function(){return w_c.ConsoleLogRecordExporter}});var T_c=LVi();Object.defineProperty(fD,"SimpleLogRecordProcessor",{enumerable:!0,get:function(){return T_c.SimpleLogRecordProcessor}});var R_c=WVi();Object.defineProperty(fD,"InMemoryLogRecordExporter",{enumerable:!0,get:function(){return R_c.InMemoryLogRecordExporter}});var N_c=HVi();Object.defineProperty(fD,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return N_c.BatchLogRecordProcessor}})});var fKe=H(ule=>{"use strict";Object.defineProperty(ule,"__esModule",{value:!0});ule.isTracingSuppressed=ule.unsuppressTracing=ule.suppressTracing=void 0;var D_c=(LI(),vi(ZI)),qZr=(0,D_c.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function k_c(e){return e.setValue(qZr,!0)}ule.suppressTracing=k_c;function x_c(e){return e.deleteValue(qZr)}ule.unsuppressTracing=x_c;function G_c(e){return e.getValue(qZr)===!0}ule.isTracingSuppressed=G_c});var $Zr=H(QG=>{"use strict";Object.defineProperty(QG,"__esModule",{value:!0});QG.BAGGAGE_MAX_TOTAL_LENGTH=QG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=QG.BAGGAGE_MAX_NAME_VALUE_PAIRS=QG.BAGGAGE_HEADER=QG.BAGGAGE_ITEMS_SEPARATOR=QG.BAGGAGE_PROPERTIES_SEPARATOR=QG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;QG.BAGGAGE_KEY_PAIR_SEPARATOR="=";QG.BAGGAGE_PROPERTIES_SEPARATOR=";";QG.BAGGAGE_ITEMS_SEPARATOR=",";QG.BAGGAGE_HEADER="baggage";QG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;QG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;QG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var eLr=H(Y6=>{"use strict";Object.defineProperty(Y6,"__esModule",{value:!0});Y6.parseKeyPairsIntoRecord=Y6.parsePairKeyValue=Y6.getKeyPairs=Y6.serializeKeyPairs=void 0;var F_c=(LI(),vi(ZI)),o_e=$Zr();function Z_c(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?o_e.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>o_e.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}Y6.serializeKeyPairs=Z_c;function L_c(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=o_e.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}Y6.getKeyPairs=L_c;function YVi(e){let t=e.split(o_e.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(o_e.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,F_c.baggageEntryMetadataFromString)(t.join(o_e.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}Y6.parsePairKeyValue=YVi;function V_c(e){return typeof e!="string"||e.length===0?{}:e.split(o_e.BAGGAGE_ITEMS_SEPARATOR).map(t=>YVi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}Y6.parseKeyPairsIntoRecord=V_c});var QVi=H(WSt=>{"use strict";Object.defineProperty(WSt,"__esModule",{value:!0});WSt.W3CBaggagePropagator=void 0;var tLr=(LI(),vi(ZI)),W_c=fKe(),a_e=$Zr(),rLr=eLr(),nLr=class{inject(t,r,n){let a=tLr.propagation.getBaggage(t);if(!a||(0,W_c.isTracingSuppressed)(t))return;let o=(0,rLr.getKeyPairs)(a).filter(A=>A.length<=a_e.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,a_e.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,rLr.serializeKeyPairs)(o);l.length>0&&n.set(r,a_e.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,a_e.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(a_e.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(a_e.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,rLr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:tLr.propagation.setBaggage(t,tLr.propagation.createBaggage(l))}fields(){return[a_e.BAGGAGE_HEADER]}};WSt.W3CBaggagePropagator=nLr});var XVi=H(OSt=>{"use strict";Object.defineProperty(OSt,"__esModule",{value:!0});OSt.AnchoredClock=void 0;var iLr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};OSt.AnchoredClock=iLr});var zVi=H(gle=>{"use strict";Object.defineProperty(gle,"__esModule",{value:!0});gle.isAttributeValue=gle.isAttributeKey=gle.sanitizeAttributes=void 0;var JVi=(LI(),vi(ZI));function O_c(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!UVi(r)){JVi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!KVi(n)){JVi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}gle.sanitizeAttributes=O_c;function UVi(e){return typeof e=="string"&&e.length>0}gle.isAttributeKey=UVi;function KVi(e){return e==null?!0:Array.isArray(e)?P_c(e):jVi(e)}gle.isAttributeValue=KVi;function P_c(e){let t;for(let r of e)if(r!=null){if(!t){if(jVi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function jVi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var sLr=H(PSt=>{"use strict";Object.defineProperty(PSt,"__esModule",{value:!0});PSt.loggingErrorHandler=void 0;var M_c=(LI(),vi(ZI));function H_c(){return e=>{M_c.diag.error(Y_c(e))}}PSt.loggingErrorHandler=H_c;function Y_c(e){return typeof e=="string"?e:JSON.stringify(Q_c(e))}function Q_c(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var oLr=H(JDe=>{"use strict";Object.defineProperty(JDe,"__esModule",{value:!0});JDe.globalErrorHandler=JDe.setGlobalErrorHandler=void 0;var X_c=sLr(),qVi=(0,X_c.loggingErrorHandler)();function J_c(e){qVi=e}JDe.setGlobalErrorHandler=J_c;function U_c(e){try{qVi(e)}catch{}}JDe.globalErrorHandler=U_c});var aLr=H(IKe=>{"use strict";Object.defineProperty(IKe,"__esModule",{value:!0});IKe.TracesSamplerValues=void 0;var K_c;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(K_c=IKe.TracesSamplerValues||(IKe.TracesSamplerValues={}))});var cLr=H(PS=>{"use strict";Object.defineProperty(PS,"__esModule",{value:!0});PS.parseEnvironment=PS.DEFAULT_ENVIRONMENT=PS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=PS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=PS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=PS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var Ale=(LI(),vi(ZI)),j_c=aLr(),z_c=",",q_c=["OTEL_SDK_DISABLED"];function $_c(e){return q_c.indexOf(e)>-1}var e0c=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function t0c(e){return e0c.indexOf(e)>-1}var r0c=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function n0c(e){return r0c.indexOf(e)>-1}PS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;PS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;PS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;PS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;PS.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:Ale.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:PS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:PS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:PS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:PS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:PS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:PS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:PS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:PS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:j_c.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function i0c(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function s0c(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function o0c(e,t,r,n=z_c){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var a0c={ALL:Ale.DiagLogLevel.ALL,VERBOSE:Ale.DiagLogLevel.VERBOSE,DEBUG:Ale.DiagLogLevel.DEBUG,INFO:Ale.DiagLogLevel.INFO,WARN:Ale.DiagLogLevel.WARN,ERROR:Ale.DiagLogLevel.ERROR,NONE:Ale.DiagLogLevel.NONE};function c0c(e,t,r){let n=r[e];if(typeof n=="string"){let a=a0c[n.toUpperCase()];a!=null&&(t[e]=a)}}function l0c(e){let t={};for(let r in PS.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":c0c(n,t,e);break;default:if($_c(n))i0c(n,t,e);else if(t0c(n))s0c(n,t,e);else if(n0c(n))o0c(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}PS.parseEnvironment=l0c});var $Vi=H(UDe=>{"use strict";Object.defineProperty(UDe,"__esModule",{value:!0});UDe.getEnvWithoutDefaults=UDe.getEnv=void 0;var lLr=cLr();function u0c(){let e=(0,lLr.parseEnvironment)(process.env);return Object.assign({},lLr.DEFAULT_ENVIRONMENT,e)}UDe.getEnv=u0c;function g0c(){return(0,lLr.parseEnvironment)(process.env)}UDe.getEnvWithoutDefaults=g0c});var eWi=H(MSt=>{"use strict";Object.defineProperty(MSt,"__esModule",{value:!0});MSt._globalThis=void 0;MSt._globalThis=typeof globalThis=="object"?globalThis:global});var uLr=H(HSt=>{"use strict";Object.defineProperty(HSt,"__esModule",{value:!0});HSt.hexToBinary=void 0;function tWi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}function A0c(e){let t=new Uint8Array(e.length/2),r=0;for(let n=0;n{"use strict";Object.defineProperty(YSt,"__esModule",{value:!0});YSt.hexToBase64=void 0;var d0c=uLr();function p0c(e){return Buffer.from((0,d0c.hexToBinary)(e)).toString("base64")}YSt.hexToBase64=p0c});var sWi=H(XSt=>{"use strict";Object.defineProperty(XSt,"__esModule",{value:!0});XSt.RandomIdGenerator=void 0;var f0c=8,iWi=16,gLr=class{constructor(){this.generateTraceId=nWi(iWi),this.generateSpanId=nWi(f0c)}};XSt.RandomIdGenerator=gLr;var QSt=Buffer.allocUnsafe(iWi);function nWi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(QSt[e-1]=1);return QSt.toString("hex",0,e)}}});var oWi=H(JSt=>{"use strict";Object.defineProperty(JSt,"__esModule",{value:!0});JSt.otperformance=void 0;var I0c=Et("perf_hooks");JSt.otperformance=I0c.performance});var ALr=H(USt=>{"use strict";Object.defineProperty(USt,"__esModule",{value:!0});USt.VERSION=void 0;USt.VERSION="1.27.0"});function lw(e){for(var t={},r=e.length,n=0;n{});var aWi,cWi,lWi,uWi,gWi,AWi,dWi,pWi,fWi,IWi,hWi,mWi,CWi,_Wi,yWi,bWi,EWi,SWi,vWi,BWi,wWi,TWi,RWi,NWi,DWi,kWi,xWi,GWi,FWi,ZWi,LWi,VWi,WWi,OWi,PWi,MWi,HWi,YWi,QWi,XWi,JWi,UWi,KWi,jWi,zWi,qWi,$Wi,eOi,tOi,rOi,nOi,iOi,sOi,oOi,aOi,cOi,lOi,uOi,gOi,AOi,dOi,pOi,fOi,IOi,hOi,mOi,COi,_Oi,yOi,bOi,EOi,SOi,vOi,BOi,wOi,TOi,ROi,NOi,DOi,kOi,xOi,GOi,FOi,ZOi,LOi,VOi,WOi,OOi,POi,MOi,HOi,YOi,QOi,XOi,JOi,UOi,KOi,jOi,zOi,qOi,$Oi,ePi,tPi,rPi,nPi,iPi,sPi,oPi,aPi,cPi,lPi,uPi,gPi,APi,dPi,pPi,fPi,IPi,hPi,mPi,CPi,_Pi,yPi,bPi,EPi,SPi,vPi,BPi,h0c,m0c,C0c,_0c,y0c,b0c,E0c,S0c,v0c,B0c,w0c,T0c,R0c,N0c,D0c,k0c,x0c,G0c,F0c,Z0c,L0c,V0c,W0c,O0c,P0c,M0c,H0c,Y0c,Q0c,X0c,J0c,U0c,K0c,j0c,z0c,q0c,$0c,eyc,tyc,ryc,nyc,iyc,syc,oyc,ayc,cyc,lyc,uyc,gyc,Ayc,dyc,pyc,fyc,Iyc,hyc,myc,Cyc,_yc,yyc,byc,Eyc,Syc,vyc,Byc,wyc,Tyc,Ryc,Nyc,Dyc,kyc,xyc,Gyc,Fyc,Zyc,Lyc,Vyc,Wyc,Oyc,Pyc,Myc,Hyc,Yyc,Qyc,Xyc,Jyc,Uyc,Kyc,jyc,zyc,qyc,$yc,ebc,tbc,rbc,nbc,ibc,sbc,obc,abc,cbc,lbc,ubc,gbc,Abc,dbc,pbc,fbc,Ibc,hbc,mbc,Cbc,_bc,ybc,bbc,Ebc,Sbc,vbc,Bbc,wbc,Tbc,Rbc,Nbc,Dbc,kbc,xbc,Gbc,Fbc,Zbc,Lbc,wPi,TPi,RPi,NPi,DPi,kPi,xPi,GPi,FPi,ZPi,LPi,VPi,WPi,OPi,PPi,MPi,HPi,YPi,QPi,XPi,JPi,UPi,KPi,jPi,zPi,qPi,$Pi,e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i,Vbc,Wbc,Obc,Pbc,Mbc,Hbc,Ybc,Qbc,Xbc,Jbc,Ubc,Kbc,jbc,zbc,qbc,$bc,eEc,tEc,rEc,nEc,iEc,sEc,oEc,aEc,cEc,lEc,uEc,gEc,AEc,dEc,pEc,fEc,IEc,hEc,mEc,CEc,_Ec,yEc,bEc,EEc,SEc,vEc,BEc,wEc,TEc,REc,NEc,DEc,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,kEc,xEc,GEc,FEc,ZEc,LEc,VEc,WEc,OEc,PEc,MEc,HEc,D3i,k3i,x3i,G3i,F3i,YEc,QEc,XEc,JEc,UEc,KEc,Z3i,L3i,V3i,jEc,zEc,qEc,$Ec,W3i,O3i,P3i,M3i,e1c,t1c,r1c,n1c,i1c,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,s1c,o1c,a1c,c1c,l1c,u1c,g1c,A1c,j3i,z3i,q3i,$3i,e5i,d1c,p1c,f1c,I1c,h1c,m1c,t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i,C1c,_1c,y1c,b1c,E1c,S1c,v1c,B1c,w1c,T1c,R1c,N1c,D1c,k1c,x1c,G1c,F1c,Z1c,L1c,V1c,W1c,O1c,b5i,E5i,S5i,v5i,B5i,P1c,M1c,H1c,Y1c,Q1c,X1c,w5i,T5i,J1c,U1c,K1c,R5i,N5i,j1c,z1c,q1c,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,W5i,O5i,P5i,M5i,H5i,Y5i,Q5i,X5i,J5i,$1c,e2c,t2c,r2c,n2c,i2c,s2c,o2c,a2c,c2c,l2c,u2c,g2c,A2c,d2c,p2c,f2c,I2c,U5i,K5i,h2c,m2c,C2c,j5i=bc(()=>{dLr();aWi="aws.lambda.invoked_arn",cWi="db.system",lWi="db.connection_string",uWi="db.user",gWi="db.jdbc.driver_classname",AWi="db.name",dWi="db.statement",pWi="db.operation",fWi="db.mssql.instance_name",IWi="db.cassandra.keyspace",hWi="db.cassandra.page_size",mWi="db.cassandra.consistency_level",CWi="db.cassandra.table",_Wi="db.cassandra.idempotence",yWi="db.cassandra.speculative_execution_count",bWi="db.cassandra.coordinator.id",EWi="db.cassandra.coordinator.dc",SWi="db.hbase.namespace",vWi="db.redis.database_index",BWi="db.mongodb.collection",wWi="db.sql.table",TWi="exception.type",RWi="exception.message",NWi="exception.stacktrace",DWi="exception.escaped",kWi="faas.trigger",xWi="faas.execution",GWi="faas.document.collection",FWi="faas.document.operation",ZWi="faas.document.time",LWi="faas.document.name",VWi="faas.time",WWi="faas.cron",OWi="faas.coldstart",PWi="faas.invoked_name",MWi="faas.invoked_provider",HWi="faas.invoked_region",YWi="net.transport",QWi="net.peer.ip",XWi="net.peer.port",JWi="net.peer.name",UWi="net.host.ip",KWi="net.host.port",jWi="net.host.name",zWi="net.host.connection.type",qWi="net.host.connection.subtype",$Wi="net.host.carrier.name",eOi="net.host.carrier.mcc",tOi="net.host.carrier.mnc",rOi="net.host.carrier.icc",nOi="peer.service",iOi="enduser.id",sOi="enduser.role",oOi="enduser.scope",aOi="thread.id",cOi="thread.name",lOi="code.function",uOi="code.namespace",gOi="code.filepath",AOi="code.lineno",dOi="http.method",pOi="http.url",fOi="http.target",IOi="http.host",hOi="http.scheme",mOi="http.status_code",COi="http.flavor",_Oi="http.user_agent",yOi="http.request_content_length",bOi="http.request_content_length_uncompressed",EOi="http.response_content_length",SOi="http.response_content_length_uncompressed",vOi="http.server_name",BOi="http.route",wOi="http.client_ip",TOi="aws.dynamodb.table_names",ROi="aws.dynamodb.consumed_capacity",NOi="aws.dynamodb.item_collection_metrics",DOi="aws.dynamodb.provisioned_read_capacity",kOi="aws.dynamodb.provisioned_write_capacity",xOi="aws.dynamodb.consistent_read",GOi="aws.dynamodb.projection",FOi="aws.dynamodb.limit",ZOi="aws.dynamodb.attributes_to_get",LOi="aws.dynamodb.index_name",VOi="aws.dynamodb.select",WOi="aws.dynamodb.global_secondary_indexes",OOi="aws.dynamodb.local_secondary_indexes",POi="aws.dynamodb.exclusive_start_table",MOi="aws.dynamodb.table_count",HOi="aws.dynamodb.scan_forward",YOi="aws.dynamodb.segment",QOi="aws.dynamodb.total_segments",XOi="aws.dynamodb.count",JOi="aws.dynamodb.scanned_count",UOi="aws.dynamodb.attribute_definitions",KOi="aws.dynamodb.global_secondary_index_updates",jOi="messaging.system",zOi="messaging.destination",qOi="messaging.destination_kind",$Oi="messaging.temp_destination",ePi="messaging.protocol",tPi="messaging.protocol_version",rPi="messaging.url",nPi="messaging.message_id",iPi="messaging.conversation_id",sPi="messaging.message_payload_size_bytes",oPi="messaging.message_payload_compressed_size_bytes",aPi="messaging.operation",cPi="messaging.consumer_id",lPi="messaging.rabbitmq.routing_key",uPi="messaging.kafka.message_key",gPi="messaging.kafka.consumer_group",APi="messaging.kafka.client_id",dPi="messaging.kafka.partition",pPi="messaging.kafka.tombstone",fPi="rpc.system",IPi="rpc.service",hPi="rpc.method",mPi="rpc.grpc.status_code",CPi="rpc.jsonrpc.version",_Pi="rpc.jsonrpc.request_id",yPi="rpc.jsonrpc.error_code",bPi="rpc.jsonrpc.error_message",EPi="message.type",SPi="message.id",vPi="message.compressed_size",BPi="message.uncompressed_size",h0c=aWi,m0c=cWi,C0c=lWi,_0c=uWi,y0c=gWi,b0c=AWi,E0c=dWi,S0c=pWi,v0c=fWi,B0c=IWi,w0c=hWi,T0c=mWi,R0c=CWi,N0c=_Wi,D0c=yWi,k0c=bWi,x0c=EWi,G0c=SWi,F0c=vWi,Z0c=BWi,L0c=wWi,V0c=TWi,W0c=RWi,O0c=NWi,P0c=DWi,M0c=kWi,H0c=xWi,Y0c=GWi,Q0c=FWi,X0c=ZWi,J0c=LWi,U0c=VWi,K0c=WWi,j0c=OWi,z0c=PWi,q0c=MWi,$0c=HWi,eyc=YWi,tyc=QWi,ryc=XWi,nyc=JWi,iyc=UWi,syc=KWi,oyc=jWi,ayc=zWi,cyc=qWi,lyc=$Wi,uyc=eOi,gyc=tOi,Ayc=rOi,dyc=nOi,pyc=iOi,fyc=sOi,Iyc=oOi,hyc=aOi,myc=cOi,Cyc=lOi,_yc=uOi,yyc=gOi,byc=AOi,Eyc=dOi,Syc=pOi,vyc=fOi,Byc=IOi,wyc=hOi,Tyc=mOi,Ryc=COi,Nyc=_Oi,Dyc=yOi,kyc=bOi,xyc=EOi,Gyc=SOi,Fyc=vOi,Zyc=BOi,Lyc=wOi,Vyc=TOi,Wyc=ROi,Oyc=NOi,Pyc=DOi,Myc=kOi,Hyc=xOi,Yyc=GOi,Qyc=FOi,Xyc=ZOi,Jyc=LOi,Uyc=VOi,Kyc=WOi,jyc=OOi,zyc=POi,qyc=MOi,$yc=HOi,ebc=YOi,tbc=QOi,rbc=XOi,nbc=JOi,ibc=UOi,sbc=KOi,obc=jOi,abc=zOi,cbc=qOi,lbc=$Oi,ubc=ePi,gbc=tPi,Abc=rPi,dbc=nPi,pbc=iPi,fbc=sPi,Ibc=oPi,hbc=aPi,mbc=cPi,Cbc=lPi,_bc=uPi,ybc=gPi,bbc=APi,Ebc=dPi,Sbc=pPi,vbc=fPi,Bbc=IPi,wbc=hPi,Tbc=mPi,Rbc=CPi,Nbc=_Pi,Dbc=yPi,kbc=bPi,xbc=EPi,Gbc=SPi,Fbc=vPi,Zbc=BPi,Lbc=lw([aWi,cWi,lWi,uWi,gWi,AWi,dWi,pWi,fWi,IWi,hWi,mWi,CWi,_Wi,yWi,bWi,EWi,SWi,vWi,BWi,wWi,TWi,RWi,NWi,DWi,kWi,xWi,GWi,FWi,ZWi,LWi,VWi,WWi,OWi,PWi,MWi,HWi,YWi,QWi,XWi,JWi,UWi,KWi,jWi,zWi,qWi,$Wi,eOi,tOi,rOi,nOi,iOi,sOi,oOi,aOi,cOi,lOi,uOi,gOi,AOi,dOi,pOi,fOi,IOi,hOi,mOi,COi,_Oi,yOi,bOi,EOi,SOi,vOi,BOi,wOi,TOi,ROi,NOi,DOi,kOi,xOi,GOi,FOi,ZOi,LOi,VOi,WOi,OOi,POi,MOi,HOi,YOi,QOi,XOi,JOi,UOi,KOi,jOi,zOi,qOi,$Oi,ePi,tPi,rPi,nPi,iPi,sPi,oPi,aPi,cPi,lPi,uPi,gPi,APi,dPi,pPi,fPi,IPi,hPi,mPi,CPi,_Pi,yPi,bPi,EPi,SPi,vPi,BPi]),wPi="other_sql",TPi="mssql",RPi="mysql",NPi="oracle",DPi="db2",kPi="postgresql",xPi="redshift",GPi="hive",FPi="cloudscape",ZPi="hsqldb",LPi="progress",VPi="maxdb",WPi="hanadb",OPi="ingres",PPi="firstsql",MPi="edb",HPi="cache",YPi="adabas",QPi="firebird",XPi="derby",JPi="filemaker",UPi="informix",KPi="instantdb",jPi="interbase",zPi="mariadb",qPi="netezza",$Pi="pervasive",e3i="pointbase",t3i="sqlite",r3i="sybase",n3i="teradata",i3i="vertica",s3i="h2",o3i="coldfusion",a3i="cassandra",c3i="hbase",l3i="mongodb",u3i="redis",g3i="couchbase",A3i="couchdb",d3i="cosmosdb",p3i="dynamodb",f3i="neo4j",I3i="geode",h3i="elasticsearch",m3i="memcached",C3i="cockroachdb",Vbc=wPi,Wbc=TPi,Obc=RPi,Pbc=NPi,Mbc=DPi,Hbc=kPi,Ybc=xPi,Qbc=GPi,Xbc=FPi,Jbc=ZPi,Ubc=LPi,Kbc=VPi,jbc=WPi,zbc=OPi,qbc=PPi,$bc=MPi,eEc=HPi,tEc=YPi,rEc=QPi,nEc=XPi,iEc=JPi,sEc=UPi,oEc=KPi,aEc=jPi,cEc=zPi,lEc=qPi,uEc=$Pi,gEc=e3i,AEc=t3i,dEc=r3i,pEc=n3i,fEc=i3i,IEc=s3i,hEc=o3i,mEc=a3i,CEc=c3i,_Ec=l3i,yEc=u3i,bEc=g3i,EEc=A3i,SEc=d3i,vEc=p3i,BEc=f3i,wEc=I3i,TEc=h3i,REc=m3i,NEc=C3i,DEc=lw([wPi,TPi,RPi,NPi,DPi,kPi,xPi,GPi,FPi,ZPi,LPi,VPi,WPi,OPi,PPi,MPi,HPi,YPi,QPi,XPi,JPi,UPi,KPi,jPi,zPi,qPi,$Pi,e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i]),_3i="all",y3i="each_quorum",b3i="quorum",E3i="local_quorum",S3i="one",v3i="two",B3i="three",w3i="local_one",T3i="any",R3i="serial",N3i="local_serial",kEc=_3i,xEc=y3i,GEc=b3i,FEc=E3i,ZEc=S3i,LEc=v3i,VEc=B3i,WEc=w3i,OEc=T3i,PEc=R3i,MEc=N3i,HEc=lw([_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i]),D3i="datasource",k3i="http",x3i="pubsub",G3i="timer",F3i="other",YEc=D3i,QEc=k3i,XEc=x3i,JEc=G3i,UEc=F3i,KEc=lw([D3i,k3i,x3i,G3i,F3i]),Z3i="insert",L3i="edit",V3i="delete",jEc=Z3i,zEc=L3i,qEc=V3i,$Ec=lw([Z3i,L3i,V3i]),W3i="alibaba_cloud",O3i="aws",P3i="azure",M3i="gcp",e1c=W3i,t1c=O3i,r1c=P3i,n1c=M3i,i1c=lw([W3i,O3i,P3i,M3i]),H3i="ip_tcp",Y3i="ip_udp",Q3i="ip",X3i="unix",J3i="pipe",U3i="inproc",K3i="other",s1c=H3i,o1c=Y3i,a1c=Q3i,c1c=X3i,l1c=J3i,u1c=U3i,g1c=K3i,A1c=lw([H3i,Y3i,Q3i,X3i,J3i,U3i,K3i]),j3i="wifi",z3i="wired",q3i="cell",$3i="unavailable",e5i="unknown",d1c=j3i,p1c=z3i,f1c=q3i,I1c=$3i,h1c=e5i,m1c=lw([j3i,z3i,q3i,$3i,e5i]),t5i="gprs",r5i="edge",n5i="umts",i5i="cdma",s5i="evdo_0",o5i="evdo_a",a5i="cdma2000_1xrtt",c5i="hsdpa",l5i="hsupa",u5i="hspa",g5i="iden",A5i="evdo_b",d5i="lte",p5i="ehrpd",f5i="hspap",I5i="gsm",h5i="td_scdma",m5i="iwlan",C5i="nr",_5i="nrnsa",y5i="lte_ca",C1c=t5i,_1c=r5i,y1c=n5i,b1c=i5i,E1c=s5i,S1c=o5i,v1c=a5i,B1c=c5i,w1c=l5i,T1c=u5i,R1c=g5i,N1c=A5i,D1c=d5i,k1c=p5i,x1c=f5i,G1c=I5i,F1c=h5i,Z1c=m5i,L1c=C5i,V1c=_5i,W1c=y5i,O1c=lw([t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i]),b5i="1.0",E5i="1.1",S5i="2.0",v5i="SPDY",B5i="QUIC",P1c=b5i,M1c=E5i,H1c=S5i,Y1c=v5i,Q1c=B5i,X1c={HTTP_1_0:b5i,HTTP_1_1:E5i,HTTP_2_0:S5i,SPDY:v5i,QUIC:B5i},w5i="queue",T5i="topic",J1c=w5i,U1c=T5i,K1c=lw([w5i,T5i]),R5i="receive",N5i="process",j1c=R5i,z1c=N5i,q1c=lw([R5i,N5i]),D5i=0,k5i=1,x5i=2,G5i=3,F5i=4,Z5i=5,L5i=6,V5i=7,W5i=8,O5i=9,P5i=10,M5i=11,H5i=12,Y5i=13,Q5i=14,X5i=15,J5i=16,$1c=D5i,e2c=k5i,t2c=x5i,r2c=G5i,n2c=F5i,i2c=Z5i,s2c=L5i,o2c=V5i,a2c=W5i,c2c=O5i,l2c=P5i,u2c=M5i,g2c=H5i,A2c=Y5i,d2c=Q5i,p2c=X5i,f2c=J5i,I2c={OK:D5i,CANCELLED:k5i,UNKNOWN:x5i,INVALID_ARGUMENT:G5i,DEADLINE_EXCEEDED:F5i,NOT_FOUND:Z5i,ALREADY_EXISTS:L5i,PERMISSION_DENIED:V5i,RESOURCE_EXHAUSTED:W5i,FAILED_PRECONDITION:O5i,ABORTED:P5i,OUT_OF_RANGE:M5i,UNIMPLEMENTED:H5i,INTERNAL:Y5i,UNAVAILABLE:Q5i,DATA_LOSS:X5i,UNAUTHENTICATED:J5i},U5i="SENT",K5i="RECEIVED",h2c=U5i,m2c=K5i,C2c=lw([U5i,K5i])});var z5i=bc(()=>{j5i()});var q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi,_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,WMi,OMi,PMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,SHi,_2c,y2c,b2c,E2c,S2c,v2c,B2c,w2c,T2c,R2c,N2c,D2c,k2c,x2c,G2c,F2c,Z2c,L2c,V2c,W2c,O2c,P2c,M2c,H2c,Y2c,Q2c,X2c,J2c,U2c,K2c,j2c,z2c,q2c,$2c,eSc,tSc,rSc,nSc,iSc,sSc,oSc,aSc,cSc,lSc,uSc,gSc,ASc,dSc,pSc,fSc,ISc,hSc,mSc,CSc,_Sc,ySc,bSc,ESc,SSc,vSc,BSc,wSc,TSc,RSc,NSc,DSc,kSc,xSc,GSc,FSc,ZSc,LSc,VSc,WSc,OSc,PSc,MSc,HSc,YSc,QSc,XSc,JSc,vHi,BHi,wHi,THi,USc,KSc,jSc,zSc,qSc,RHi,NHi,DHi,kHi,xHi,GHi,FHi,ZHi,LHi,VHi,WHi,OHi,PHi,MHi,HHi,YHi,QHi,$Sc,evc,tvc,rvc,nvc,ivc,svc,ovc,avc,cvc,lvc,uvc,gvc,Avc,dvc,pvc,fvc,Ivc,XHi,JHi,hvc,mvc,Cvc,UHi,KHi,jHi,zHi,qHi,$Hi,eYi,_vc,yvc,bvc,Evc,Svc,vvc,Bvc,wvc,tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi,Tvc,Rvc,Nvc,Dvc,kvc,xvc,Gvc,Fvc,Zvc,Lvc,Vvc,Wvc,AYi,dYi,pYi,fYi,IYi,hYi,mYi,CYi,_Yi,yYi,Ovc,Pvc,Mvc,Hvc,Yvc,Qvc,Xvc,Jvc,Uvc,Kvc,jvc,bYi=bc(()=>{dLr();q5i="cloud.provider",$5i="cloud.account.id",eMi="cloud.region",tMi="cloud.availability_zone",rMi="cloud.platform",nMi="aws.ecs.container.arn",iMi="aws.ecs.cluster.arn",sMi="aws.ecs.launchtype",oMi="aws.ecs.task.arn",aMi="aws.ecs.task.family",cMi="aws.ecs.task.revision",lMi="aws.eks.cluster.arn",uMi="aws.log.group.names",gMi="aws.log.group.arns",AMi="aws.log.stream.names",dMi="aws.log.stream.arns",pMi="container.name",fMi="container.id",IMi="container.runtime",hMi="container.image.name",mMi="container.image.tag",CMi="deployment.environment",_Mi="device.id",yMi="device.model.identifier",bMi="device.model.name",EMi="faas.name",SMi="faas.id",vMi="faas.version",BMi="faas.instance",wMi="faas.max_memory",TMi="host.id",RMi="host.name",NMi="host.type",DMi="host.arch",kMi="host.image.name",xMi="host.image.id",GMi="host.image.version",FMi="k8s.cluster.name",ZMi="k8s.node.name",LMi="k8s.node.uid",VMi="k8s.namespace.name",WMi="k8s.pod.uid",OMi="k8s.pod.name",PMi="k8s.container.name",MMi="k8s.replicaset.uid",HMi="k8s.replicaset.name",YMi="k8s.deployment.uid",QMi="k8s.deployment.name",XMi="k8s.statefulset.uid",JMi="k8s.statefulset.name",UMi="k8s.daemonset.uid",KMi="k8s.daemonset.name",jMi="k8s.job.uid",zMi="k8s.job.name",qMi="k8s.cronjob.uid",$Mi="k8s.cronjob.name",eHi="os.type",tHi="os.description",rHi="os.name",nHi="os.version",iHi="process.pid",sHi="process.executable.name",oHi="process.executable.path",aHi="process.command",cHi="process.command_line",lHi="process.command_args",uHi="process.owner",gHi="process.runtime.name",AHi="process.runtime.version",dHi="process.runtime.description",pHi="service.name",fHi="service.namespace",IHi="service.instance.id",hHi="service.version",mHi="telemetry.sdk.name",CHi="telemetry.sdk.language",_Hi="telemetry.sdk.version",yHi="telemetry.auto.version",bHi="webengine.name",EHi="webengine.version",SHi="webengine.description",_2c=q5i,y2c=$5i,b2c=eMi,E2c=tMi,S2c=rMi,v2c=nMi,B2c=iMi,w2c=sMi,T2c=oMi,R2c=aMi,N2c=cMi,D2c=lMi,k2c=uMi,x2c=gMi,G2c=AMi,F2c=dMi,Z2c=pMi,L2c=fMi,V2c=IMi,W2c=hMi,O2c=mMi,P2c=CMi,M2c=_Mi,H2c=yMi,Y2c=bMi,Q2c=EMi,X2c=SMi,J2c=vMi,U2c=BMi,K2c=wMi,j2c=TMi,z2c=RMi,q2c=NMi,$2c=DMi,eSc=kMi,tSc=xMi,rSc=GMi,nSc=FMi,iSc=ZMi,sSc=LMi,oSc=VMi,aSc=WMi,cSc=OMi,lSc=PMi,uSc=MMi,gSc=HMi,ASc=YMi,dSc=QMi,pSc=XMi,fSc=JMi,ISc=UMi,hSc=KMi,mSc=jMi,CSc=zMi,_Sc=qMi,ySc=$Mi,bSc=eHi,ESc=tHi,SSc=rHi,vSc=nHi,BSc=iHi,wSc=sHi,TSc=oHi,RSc=aHi,NSc=cHi,DSc=lHi,kSc=uHi,xSc=gHi,GSc=AHi,FSc=dHi,ZSc=pHi,LSc=fHi,VSc=IHi,WSc=hHi,OSc=mHi,PSc=CHi,MSc=_Hi,HSc=yHi,YSc=bHi,QSc=EHi,XSc=SHi,JSc=lw([q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi,_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,WMi,OMi,PMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,SHi]),vHi="alibaba_cloud",BHi="aws",wHi="azure",THi="gcp",USc=vHi,KSc=BHi,jSc=wHi,zSc=THi,qSc=lw([vHi,BHi,wHi,THi]),RHi="alibaba_cloud_ecs",NHi="alibaba_cloud_fc",DHi="aws_ec2",kHi="aws_ecs",xHi="aws_eks",GHi="aws_lambda",FHi="aws_elastic_beanstalk",ZHi="azure_vm",LHi="azure_container_instances",VHi="azure_aks",WHi="azure_functions",OHi="azure_app_service",PHi="gcp_compute_engine",MHi="gcp_cloud_run",HHi="gcp_kubernetes_engine",YHi="gcp_cloud_functions",QHi="gcp_app_engine",$Sc=RHi,evc=NHi,tvc=DHi,rvc=kHi,nvc=xHi,ivc=GHi,svc=FHi,ovc=ZHi,avc=LHi,cvc=VHi,lvc=WHi,uvc=OHi,gvc=PHi,Avc=MHi,dvc=HHi,pvc=YHi,fvc=QHi,Ivc=lw([RHi,NHi,DHi,kHi,xHi,GHi,FHi,ZHi,LHi,VHi,WHi,OHi,PHi,MHi,HHi,YHi,QHi]),XHi="ec2",JHi="fargate",hvc=XHi,mvc=JHi,Cvc=lw([XHi,JHi]),UHi="amd64",KHi="arm32",jHi="arm64",zHi="ia64",qHi="ppc32",$Hi="ppc64",eYi="x86",_vc=UHi,yvc=KHi,bvc=jHi,Evc=zHi,Svc=qHi,vvc=$Hi,Bvc=eYi,wvc=lw([UHi,KHi,jHi,zHi,qHi,$Hi,eYi]),tYi="windows",rYi="linux",nYi="darwin",iYi="freebsd",sYi="netbsd",oYi="openbsd",aYi="dragonflybsd",cYi="hpux",lYi="aix",uYi="solaris",gYi="z_os",Tvc=tYi,Rvc=rYi,Nvc=nYi,Dvc=iYi,kvc=sYi,xvc=oYi,Gvc=aYi,Fvc=cYi,Zvc=lYi,Lvc=uYi,Vvc=gYi,Wvc=lw([tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi]),AYi="cpp",dYi="dotnet",pYi="erlang",fYi="go",IYi="java",hYi="nodejs",mYi="php",CYi="python",_Yi="ruby",yYi="webjs",Ovc=AYi,Pvc=dYi,Mvc=pYi,Hvc=fYi,Yvc=IYi,Qvc=hYi,Xvc=mYi,Jvc=CYi,Uvc=_Yi,Kvc=yYi,jvc=lw([AYi,dYi,pYi,fYi,IYi,hYi,mYi,CYi,_Yi,yYi])});var EYi=bc(()=>{bYi()});var zvc,qvc,$vc,eBc,tBc,rBc,nBc,iBc,sBc,oBc,aBc,cBc,lBc,uBc,gBc,ABc,dBc,pBc,fBc,IBc,hBc,mBc,CBc,_Bc,yBc,bBc,EBc,SBc,vBc,BBc,wBc,TBc,RBc,NBc,DBc,kBc,xBc,GBc,FBc,ZBc,LBc,VBc,WBc,OBc,PBc,MBc,HBc,YBc,QBc,XBc,JBc,UBc,KBc,jBc,zBc,qBc,$Bc,ewc,twc,rwc,nwc,iwc,swc,owc,awc,cwc,lwc,uwc,gwc,Awc,dwc,pwc,fwc,Iwc,hwc,mwc,Cwc,_wc,ywc,bwc,Ewc,Swc,vwc,Bwc,wwc,Twc,Rwc,Nwc,Dwc,kwc,xwc,Gwc,Fwc,Zwc,Lwc,Vwc,Wwc,Owc,Pwc,Mwc,Hwc,Ywc,Qwc,Xwc,Jwc,Uwc,Kwc,jwc,zwc,qwc,SYi=bc(()=>{zvc="aspnetcore.rate_limiting.result",qvc="acquired",$vc="endpoint_limiter",eBc="global_limiter",tBc="request_canceled",rBc="telemetry.sdk.language",nBc="cpp",iBc="dotnet",sBc="erlang",oBc="go",aBc="java",cBc="nodejs",lBc="php",uBc="python",gBc="ruby",ABc="rust",dBc="swift",pBc="webjs",fBc="telemetry.sdk.name",IBc="telemetry.sdk.version",hBc="aspnetcore.diagnostics.handler.type",mBc="aspnetcore.diagnostics.exception.result",CBc="aborted",_Bc="handled",yBc="skipped",bBc="unhandled",EBc="aspnetcore.rate_limiting.policy",SBc="aspnetcore.request.is_unhandled",vBc="aspnetcore.routing.is_fallback",BBc="aspnetcore.routing.match_status",wBc="failure",TBc="success",RBc="client.address",NBc="client.port",DBc="error.type",kBc="_OTHER",xBc="exception.escaped",GBc="exception.message",FBc="exception.stacktrace",ZBc="exception.type",LBc=function(e){return"http.request.header."+e},VBc="http.request.method",WBc="_OTHER",OBc="CONNECT",PBc="DELETE",MBc="GET",HBc="HEAD",YBc="OPTIONS",QBc="PATCH",XBc="POST",JBc="PUT",UBc="TRACE",KBc="http.request.method_original",jBc="http.request.resend_count",zBc=function(e){return"http.response.header."+e},qBc="http.response.status_code",$Bc="http.route",ewc="jvm.gc.action",twc="jvm.gc.name",rwc="jvm.memory.pool.name",nwc="jvm.memory.type",iwc="heap",swc="non_heap",owc="jvm.thread.daemon",awc="jvm.thread.state",cwc="blocked",lwc="new",uwc="runnable",gwc="terminated",Awc="timed_waiting",dwc="waiting",pwc="network.local.address",fwc="network.local.port",Iwc="network.peer.address",hwc="network.peer.port",mwc="network.protocol.name",Cwc="network.protocol.version",_wc="network.transport",ywc="pipe",bwc="quic",Ewc="tcp",Swc="udp",vwc="unix",Bwc="network.type",wwc="ipv4",Twc="ipv6",Rwc="otel.scope.name",Nwc="otel.scope.version",Dwc="otel.status_code",kwc="ERROR",xwc="OK",Gwc="otel.status_description",Fwc="server.address",Zwc="server.port",Lwc="service.name",Vwc="service.version",Wwc="signalr.connection.status",Owc="app_shutdown",Pwc="normal_closure",Mwc="timeout",Hwc="signalr.transport",Ywc="long_polling",Qwc="server_sent_events",Xwc="web_sockets",Jwc="url.fragment",Uwc="url.full",Kwc="url.path",jwc="url.query",zwc="url.scheme",qwc="user_agent.original"});var $wc,eTc,tTc,rTc,nTc,iTc,sTc,oTc,aTc,cTc,lTc,uTc,gTc,ATc,dTc,pTc,fTc,ITc,hTc,mTc,CTc,_Tc,yTc,bTc,ETc,STc,vTc,BTc,wTc,TTc,RTc,vYi=bc(()=>{$wc="aspnetcore.diagnostics.exceptions",eTc="aspnetcore.rate_limiting.active_request_leases",tTc="aspnetcore.rate_limiting.queued_requests",rTc="aspnetcore.rate_limiting.request.time_in_queue",nTc="aspnetcore.rate_limiting.request_lease.duration",iTc="aspnetcore.rate_limiting.requests",sTc="aspnetcore.routing.match_attempts",oTc="http.client.request.duration",aTc="http.server.request.duration",cTc="jvm.class.count",lTc="jvm.class.loaded",uTc="jvm.class.unloaded",gTc="jvm.cpu.count",ATc="jvm.cpu.recent_utilization",dTc="jvm.cpu.time",pTc="jvm.gc.duration",fTc="jvm.memory.committed",ITc="jvm.memory.limit",hTc="jvm.memory.used",mTc="jvm.memory.used_after_last_gc",CTc="jvm.thread.count",_Tc="kestrel.active_connections",yTc="kestrel.active_tls_handshakes",bTc="kestrel.connection.duration",ETc="kestrel.queued_connections",STc="kestrel.queued_requests",vTc="kestrel.rejected_connections",BTc="kestrel.tls_handshake.duration",wTc="kestrel.upgraded_connections",TTc="signalr.server.active_connections",RTc="signalr.server.connection.duration"});var BYi={};Uf(BYi,{ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED:()=>CBc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED:()=>_Bc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED:()=>yBc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED:()=>bBc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED:()=>qvc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER:()=>$vc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER:()=>eBc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED:()=>tBc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE:()=>wBc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS:()=>TBc,ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT:()=>mBc,ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE:()=>hBc,ATTR_ASPNETCORE_RATE_LIMITING_POLICY:()=>EBc,ATTR_ASPNETCORE_RATE_LIMITING_RESULT:()=>zvc,ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED:()=>SBc,ATTR_ASPNETCORE_ROUTING_IS_FALLBACK:()=>vBc,ATTR_ASPNETCORE_ROUTING_MATCH_STATUS:()=>BBc,ATTR_CLIENT_ADDRESS:()=>RBc,ATTR_CLIENT_PORT:()=>NBc,ATTR_ERROR_TYPE:()=>DBc,ATTR_EXCEPTION_ESCAPED:()=>xBc,ATTR_EXCEPTION_MESSAGE:()=>GBc,ATTR_EXCEPTION_STACKTRACE:()=>FBc,ATTR_EXCEPTION_TYPE:()=>ZBc,ATTR_HTTP_REQUEST_HEADER:()=>LBc,ATTR_HTTP_REQUEST_METHOD:()=>VBc,ATTR_HTTP_REQUEST_METHOD_ORIGINAL:()=>KBc,ATTR_HTTP_REQUEST_RESEND_COUNT:()=>jBc,ATTR_HTTP_RESPONSE_HEADER:()=>zBc,ATTR_HTTP_RESPONSE_STATUS_CODE:()=>qBc,ATTR_HTTP_ROUTE:()=>$Bc,ATTR_JVM_GC_ACTION:()=>ewc,ATTR_JVM_GC_NAME:()=>twc,ATTR_JVM_MEMORY_POOL_NAME:()=>rwc,ATTR_JVM_MEMORY_TYPE:()=>nwc,ATTR_JVM_THREAD_DAEMON:()=>owc,ATTR_JVM_THREAD_STATE:()=>awc,ATTR_NETWORK_LOCAL_ADDRESS:()=>pwc,ATTR_NETWORK_LOCAL_PORT:()=>fwc,ATTR_NETWORK_PEER_ADDRESS:()=>Iwc,ATTR_NETWORK_PEER_PORT:()=>hwc,ATTR_NETWORK_PROTOCOL_NAME:()=>mwc,ATTR_NETWORK_PROTOCOL_VERSION:()=>Cwc,ATTR_NETWORK_TRANSPORT:()=>_wc,ATTR_NETWORK_TYPE:()=>Bwc,ATTR_OTEL_SCOPE_NAME:()=>Rwc,ATTR_OTEL_SCOPE_VERSION:()=>Nwc,ATTR_OTEL_STATUS_CODE:()=>Dwc,ATTR_OTEL_STATUS_DESCRIPTION:()=>Gwc,ATTR_SERVER_ADDRESS:()=>Fwc,ATTR_SERVER_PORT:()=>Zwc,ATTR_SERVICE_NAME:()=>Lwc,ATTR_SERVICE_VERSION:()=>Vwc,ATTR_SIGNALR_CONNECTION_STATUS:()=>Wwc,ATTR_SIGNALR_TRANSPORT:()=>Hwc,ATTR_TELEMETRY_SDK_LANGUAGE:()=>rBc,ATTR_TELEMETRY_SDK_NAME:()=>fBc,ATTR_TELEMETRY_SDK_VERSION:()=>IBc,ATTR_URL_FRAGMENT:()=>Jwc,ATTR_URL_FULL:()=>Uwc,ATTR_URL_PATH:()=>Kwc,ATTR_URL_QUERY:()=>jwc,ATTR_URL_SCHEME:()=>zwc,ATTR_USER_AGENT_ORIGINAL:()=>qwc,AWSECSLAUNCHTYPEVALUES_EC2:()=>hvc,AWSECSLAUNCHTYPEVALUES_FARGATE:()=>mvc,AwsEcsLaunchtypeValues:()=>Cvc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS:()=>$Sc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC:()=>evc,CLOUDPLATFORMVALUES_AWS_EC2:()=>tvc,CLOUDPLATFORMVALUES_AWS_ECS:()=>rvc,CLOUDPLATFORMVALUES_AWS_EKS:()=>nvc,CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK:()=>svc,CLOUDPLATFORMVALUES_AWS_LAMBDA:()=>ivc,CLOUDPLATFORMVALUES_AZURE_AKS:()=>cvc,CLOUDPLATFORMVALUES_AZURE_APP_SERVICE:()=>uvc,CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES:()=>avc,CLOUDPLATFORMVALUES_AZURE_FUNCTIONS:()=>lvc,CLOUDPLATFORMVALUES_AZURE_VM:()=>ovc,CLOUDPLATFORMVALUES_GCP_APP_ENGINE:()=>fvc,CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS:()=>pvc,CLOUDPLATFORMVALUES_GCP_CLOUD_RUN:()=>Avc,CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE:()=>gvc,CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE:()=>dvc,CLOUDPROVIDERVALUES_ALIBABA_CLOUD:()=>USc,CLOUDPROVIDERVALUES_AWS:()=>KSc,CLOUDPROVIDERVALUES_AZURE:()=>jSc,CLOUDPROVIDERVALUES_GCP:()=>zSc,CloudPlatformValues:()=>Ivc,CloudProviderValues:()=>qSc,DBCASSANDRACONSISTENCYLEVELVALUES_ALL:()=>kEc,DBCASSANDRACONSISTENCYLEVELVALUES_ANY:()=>OEc,DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM:()=>xEc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE:()=>WEc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM:()=>FEc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL:()=>MEc,DBCASSANDRACONSISTENCYLEVELVALUES_ONE:()=>ZEc,DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM:()=>GEc,DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL:()=>PEc,DBCASSANDRACONSISTENCYLEVELVALUES_THREE:()=>VEc,DBCASSANDRACONSISTENCYLEVELVALUES_TWO:()=>LEc,DBSYSTEMVALUES_ADABAS:()=>tEc,DBSYSTEMVALUES_CACHE:()=>eEc,DBSYSTEMVALUES_CASSANDRA:()=>mEc,DBSYSTEMVALUES_CLOUDSCAPE:()=>Xbc,DBSYSTEMVALUES_COCKROACHDB:()=>NEc,DBSYSTEMVALUES_COLDFUSION:()=>hEc,DBSYSTEMVALUES_COSMOSDB:()=>SEc,DBSYSTEMVALUES_COUCHBASE:()=>bEc,DBSYSTEMVALUES_COUCHDB:()=>EEc,DBSYSTEMVALUES_DB2:()=>Mbc,DBSYSTEMVALUES_DERBY:()=>nEc,DBSYSTEMVALUES_DYNAMODB:()=>vEc,DBSYSTEMVALUES_EDB:()=>$bc,DBSYSTEMVALUES_ELASTICSEARCH:()=>TEc,DBSYSTEMVALUES_FILEMAKER:()=>iEc,DBSYSTEMVALUES_FIREBIRD:()=>rEc,DBSYSTEMVALUES_FIRSTSQL:()=>qbc,DBSYSTEMVALUES_GEODE:()=>wEc,DBSYSTEMVALUES_H2:()=>IEc,DBSYSTEMVALUES_HANADB:()=>jbc,DBSYSTEMVALUES_HBASE:()=>CEc,DBSYSTEMVALUES_HIVE:()=>Qbc,DBSYSTEMVALUES_HSQLDB:()=>Jbc,DBSYSTEMVALUES_INFORMIX:()=>sEc,DBSYSTEMVALUES_INGRES:()=>zbc,DBSYSTEMVALUES_INSTANTDB:()=>oEc,DBSYSTEMVALUES_INTERBASE:()=>aEc,DBSYSTEMVALUES_MARIADB:()=>cEc,DBSYSTEMVALUES_MAXDB:()=>Kbc,DBSYSTEMVALUES_MEMCACHED:()=>REc,DBSYSTEMVALUES_MONGODB:()=>_Ec,DBSYSTEMVALUES_MSSQL:()=>Wbc,DBSYSTEMVALUES_MYSQL:()=>Obc,DBSYSTEMVALUES_NEO4J:()=>BEc,DBSYSTEMVALUES_NETEZZA:()=>lEc,DBSYSTEMVALUES_ORACLE:()=>Pbc,DBSYSTEMVALUES_OTHER_SQL:()=>Vbc,DBSYSTEMVALUES_PERVASIVE:()=>uEc,DBSYSTEMVALUES_POINTBASE:()=>gEc,DBSYSTEMVALUES_POSTGRESQL:()=>Hbc,DBSYSTEMVALUES_PROGRESS:()=>Ubc,DBSYSTEMVALUES_REDIS:()=>yEc,DBSYSTEMVALUES_REDSHIFT:()=>Ybc,DBSYSTEMVALUES_SQLITE:()=>AEc,DBSYSTEMVALUES_SYBASE:()=>dEc,DBSYSTEMVALUES_TERADATA:()=>pEc,DBSYSTEMVALUES_VERTICA:()=>fEc,DbCassandraConsistencyLevelValues:()=>HEc,DbSystemValues:()=>DEc,ERROR_TYPE_VALUE_OTHER:()=>kBc,FAASDOCUMENTOPERATIONVALUES_DELETE:()=>qEc,FAASDOCUMENTOPERATIONVALUES_EDIT:()=>zEc,FAASDOCUMENTOPERATIONVALUES_INSERT:()=>jEc,FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD:()=>e1c,FAASINVOKEDPROVIDERVALUES_AWS:()=>t1c,FAASINVOKEDPROVIDERVALUES_AZURE:()=>r1c,FAASINVOKEDPROVIDERVALUES_GCP:()=>n1c,FAASTRIGGERVALUES_DATASOURCE:()=>YEc,FAASTRIGGERVALUES_HTTP:()=>QEc,FAASTRIGGERVALUES_OTHER:()=>UEc,FAASTRIGGERVALUES_PUBSUB:()=>XEc,FAASTRIGGERVALUES_TIMER:()=>JEc,FaasDocumentOperationValues:()=>$Ec,FaasInvokedProviderValues:()=>i1c,FaasTriggerValues:()=>KEc,HOSTARCHVALUES_AMD64:()=>_vc,HOSTARCHVALUES_ARM32:()=>yvc,HOSTARCHVALUES_ARM64:()=>bvc,HOSTARCHVALUES_IA64:()=>Evc,HOSTARCHVALUES_PPC32:()=>Svc,HOSTARCHVALUES_PPC64:()=>vvc,HOSTARCHVALUES_X86:()=>Bvc,HTTPFLAVORVALUES_HTTP_1_0:()=>P1c,HTTPFLAVORVALUES_HTTP_1_1:()=>M1c,HTTPFLAVORVALUES_HTTP_2_0:()=>H1c,HTTPFLAVORVALUES_QUIC:()=>Q1c,HTTPFLAVORVALUES_SPDY:()=>Y1c,HTTP_REQUEST_METHOD_VALUE_CONNECT:()=>OBc,HTTP_REQUEST_METHOD_VALUE_DELETE:()=>PBc,HTTP_REQUEST_METHOD_VALUE_GET:()=>MBc,HTTP_REQUEST_METHOD_VALUE_HEAD:()=>HBc,HTTP_REQUEST_METHOD_VALUE_OPTIONS:()=>YBc,HTTP_REQUEST_METHOD_VALUE_OTHER:()=>WBc,HTTP_REQUEST_METHOD_VALUE_PATCH:()=>QBc,HTTP_REQUEST_METHOD_VALUE_POST:()=>XBc,HTTP_REQUEST_METHOD_VALUE_PUT:()=>JBc,HTTP_REQUEST_METHOD_VALUE_TRACE:()=>UBc,HostArchValues:()=>wvc,HttpFlavorValues:()=>X1c,JVM_MEMORY_TYPE_VALUE_HEAP:()=>iwc,JVM_MEMORY_TYPE_VALUE_NON_HEAP:()=>swc,JVM_THREAD_STATE_VALUE_BLOCKED:()=>cwc,JVM_THREAD_STATE_VALUE_NEW:()=>lwc,JVM_THREAD_STATE_VALUE_RUNNABLE:()=>uwc,JVM_THREAD_STATE_VALUE_TERMINATED:()=>gwc,JVM_THREAD_STATE_VALUE_TIMED_WAITING:()=>Awc,JVM_THREAD_STATE_VALUE_WAITING:()=>dwc,MESSAGETYPEVALUES_RECEIVED:()=>m2c,MESSAGETYPEVALUES_SENT:()=>h2c,MESSAGINGDESTINATIONKINDVALUES_QUEUE:()=>J1c,MESSAGINGDESTINATIONKINDVALUES_TOPIC:()=>U1c,MESSAGINGOPERATIONVALUES_PROCESS:()=>z1c,MESSAGINGOPERATIONVALUES_RECEIVE:()=>j1c,METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS:()=>$wc,METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES:()=>eTc,METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS:()=>tTc,METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS:()=>iTc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION:()=>nTc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE:()=>rTc,METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS:()=>sTc,METRIC_HTTP_CLIENT_REQUEST_DURATION:()=>oTc,METRIC_HTTP_SERVER_REQUEST_DURATION:()=>aTc,METRIC_JVM_CLASS_COUNT:()=>cTc,METRIC_JVM_CLASS_LOADED:()=>lTc,METRIC_JVM_CLASS_UNLOADED:()=>uTc,METRIC_JVM_CPU_COUNT:()=>gTc,METRIC_JVM_CPU_RECENT_UTILIZATION:()=>ATc,METRIC_JVM_CPU_TIME:()=>dTc,METRIC_JVM_GC_DURATION:()=>pTc,METRIC_JVM_MEMORY_COMMITTED:()=>fTc,METRIC_JVM_MEMORY_LIMIT:()=>ITc,METRIC_JVM_MEMORY_USED:()=>hTc,METRIC_JVM_MEMORY_USED_AFTER_LAST_GC:()=>mTc,METRIC_JVM_THREAD_COUNT:()=>CTc,METRIC_KESTREL_ACTIVE_CONNECTIONS:()=>_Tc,METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES:()=>yTc,METRIC_KESTREL_CONNECTION_DURATION:()=>bTc,METRIC_KESTREL_QUEUED_CONNECTIONS:()=>ETc,METRIC_KESTREL_QUEUED_REQUESTS:()=>STc,METRIC_KESTREL_REJECTED_CONNECTIONS:()=>vTc,METRIC_KESTREL_TLS_HANDSHAKE_DURATION:()=>BTc,METRIC_KESTREL_UPGRADED_CONNECTIONS:()=>wTc,METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS:()=>TTc,METRIC_SIGNALR_SERVER_CONNECTION_DURATION:()=>RTc,MessageTypeValues:()=>C2c,MessagingDestinationKindValues:()=>K1c,MessagingOperationValues:()=>q1c,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA:()=>b1c,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT:()=>v1c,NETHOSTCONNECTIONSUBTYPEVALUES_EDGE:()=>_1c,NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD:()=>k1c,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0:()=>E1c,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A:()=>S1c,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B:()=>N1c,NETHOSTCONNECTIONSUBTYPEVALUES_GPRS:()=>C1c,NETHOSTCONNECTIONSUBTYPEVALUES_GSM:()=>G1c,NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA:()=>B1c,NETHOSTCONNECTIONSUBTYPEVALUES_HSPA:()=>T1c,NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP:()=>x1c,NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA:()=>w1c,NETHOSTCONNECTIONSUBTYPEVALUES_IDEN:()=>R1c,NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN:()=>Z1c,NETHOSTCONNECTIONSUBTYPEVALUES_LTE:()=>D1c,NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA:()=>W1c,NETHOSTCONNECTIONSUBTYPEVALUES_NR:()=>L1c,NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA:()=>V1c,NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA:()=>F1c,NETHOSTCONNECTIONSUBTYPEVALUES_UMTS:()=>y1c,NETHOSTCONNECTIONTYPEVALUES_CELL:()=>f1c,NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE:()=>I1c,NETHOSTCONNECTIONTYPEVALUES_UNKNOWN:()=>h1c,NETHOSTCONNECTIONTYPEVALUES_WIFI:()=>d1c,NETHOSTCONNECTIONTYPEVALUES_WIRED:()=>p1c,NETTRANSPORTVALUES_INPROC:()=>u1c,NETTRANSPORTVALUES_IP:()=>a1c,NETTRANSPORTVALUES_IP_TCP:()=>s1c,NETTRANSPORTVALUES_IP_UDP:()=>o1c,NETTRANSPORTVALUES_OTHER:()=>g1c,NETTRANSPORTVALUES_PIPE:()=>l1c,NETTRANSPORTVALUES_UNIX:()=>c1c,NETWORK_TRANSPORT_VALUE_PIPE:()=>ywc,NETWORK_TRANSPORT_VALUE_QUIC:()=>bwc,NETWORK_TRANSPORT_VALUE_TCP:()=>Ewc,NETWORK_TRANSPORT_VALUE_UDP:()=>Swc,NETWORK_TRANSPORT_VALUE_UNIX:()=>vwc,NETWORK_TYPE_VALUE_IPV4:()=>wwc,NETWORK_TYPE_VALUE_IPV6:()=>Twc,NetHostConnectionSubtypeValues:()=>O1c,NetHostConnectionTypeValues:()=>m1c,NetTransportValues:()=>A1c,OSTYPEVALUES_AIX:()=>Zvc,OSTYPEVALUES_DARWIN:()=>Nvc,OSTYPEVALUES_DRAGONFLYBSD:()=>Gvc,OSTYPEVALUES_FREEBSD:()=>Dvc,OSTYPEVALUES_HPUX:()=>Fvc,OSTYPEVALUES_LINUX:()=>Rvc,OSTYPEVALUES_NETBSD:()=>kvc,OSTYPEVALUES_OPENBSD:()=>xvc,OSTYPEVALUES_SOLARIS:()=>Lvc,OSTYPEVALUES_WINDOWS:()=>Tvc,OSTYPEVALUES_Z_OS:()=>Vvc,OTEL_STATUS_CODE_VALUE_ERROR:()=>kwc,OTEL_STATUS_CODE_VALUE_OK:()=>xwc,OsTypeValues:()=>Wvc,RPCGRPCSTATUSCODEVALUES_ABORTED:()=>l2c,RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS:()=>s2c,RPCGRPCSTATUSCODEVALUES_CANCELLED:()=>e2c,RPCGRPCSTATUSCODEVALUES_DATA_LOSS:()=>p2c,RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED:()=>n2c,RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION:()=>c2c,RPCGRPCSTATUSCODEVALUES_INTERNAL:()=>A2c,RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT:()=>r2c,RPCGRPCSTATUSCODEVALUES_NOT_FOUND:()=>i2c,RPCGRPCSTATUSCODEVALUES_OK:()=>$1c,RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE:()=>u2c,RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED:()=>o2c,RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED:()=>a2c,RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED:()=>f2c,RPCGRPCSTATUSCODEVALUES_UNAVAILABLE:()=>d2c,RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED:()=>g2c,RPCGRPCSTATUSCODEVALUES_UNKNOWN:()=>t2c,RpcGrpcStatusCodeValues:()=>I2c,SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET:()=>Xyc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:()=>ibc,SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ:()=>Hyc,SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY:()=>Wyc,SEMATTRS_AWS_DYNAMODB_COUNT:()=>rbc,SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE:()=>zyc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:()=>Kyc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:()=>sbc,SEMATTRS_AWS_DYNAMODB_INDEX_NAME:()=>Jyc,SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS:()=>Oyc,SEMATTRS_AWS_DYNAMODB_LIMIT:()=>Qyc,SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:()=>jyc,SEMATTRS_AWS_DYNAMODB_PROJECTION:()=>Yyc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:()=>Pyc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:()=>Myc,SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT:()=>nbc,SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD:()=>$yc,SEMATTRS_AWS_DYNAMODB_SEGMENT:()=>ebc,SEMATTRS_AWS_DYNAMODB_SELECT:()=>Uyc,SEMATTRS_AWS_DYNAMODB_TABLE_COUNT:()=>qyc,SEMATTRS_AWS_DYNAMODB_TABLE_NAMES:()=>Vyc,SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS:()=>tbc,SEMATTRS_AWS_LAMBDA_INVOKED_ARN:()=>h0c,SEMATTRS_CODE_FILEPATH:()=>yyc,SEMATTRS_CODE_FUNCTION:()=>Cyc,SEMATTRS_CODE_LINENO:()=>byc,SEMATTRS_CODE_NAMESPACE:()=>_yc,SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL:()=>T0c,SEMATTRS_DB_CASSANDRA_COORDINATOR_DC:()=>x0c,SEMATTRS_DB_CASSANDRA_COORDINATOR_ID:()=>k0c,SEMATTRS_DB_CASSANDRA_IDEMPOTENCE:()=>N0c,SEMATTRS_DB_CASSANDRA_KEYSPACE:()=>B0c,SEMATTRS_DB_CASSANDRA_PAGE_SIZE:()=>w0c,SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:()=>D0c,SEMATTRS_DB_CASSANDRA_TABLE:()=>R0c,SEMATTRS_DB_CONNECTION_STRING:()=>C0c,SEMATTRS_DB_HBASE_NAMESPACE:()=>G0c,SEMATTRS_DB_JDBC_DRIVER_CLASSNAME:()=>y0c,SEMATTRS_DB_MONGODB_COLLECTION:()=>Z0c,SEMATTRS_DB_MSSQL_INSTANCE_NAME:()=>v0c,SEMATTRS_DB_NAME:()=>b0c,SEMATTRS_DB_OPERATION:()=>S0c,SEMATTRS_DB_REDIS_DATABASE_INDEX:()=>F0c,SEMATTRS_DB_SQL_TABLE:()=>L0c,SEMATTRS_DB_STATEMENT:()=>E0c,SEMATTRS_DB_SYSTEM:()=>m0c,SEMATTRS_DB_USER:()=>_0c,SEMATTRS_ENDUSER_ID:()=>pyc,SEMATTRS_ENDUSER_ROLE:()=>fyc,SEMATTRS_ENDUSER_SCOPE:()=>Iyc,SEMATTRS_EXCEPTION_ESCAPED:()=>P0c,SEMATTRS_EXCEPTION_MESSAGE:()=>W0c,SEMATTRS_EXCEPTION_STACKTRACE:()=>O0c,SEMATTRS_EXCEPTION_TYPE:()=>V0c,SEMATTRS_FAAS_COLDSTART:()=>j0c,SEMATTRS_FAAS_CRON:()=>K0c,SEMATTRS_FAAS_DOCUMENT_COLLECTION:()=>Y0c,SEMATTRS_FAAS_DOCUMENT_NAME:()=>J0c,SEMATTRS_FAAS_DOCUMENT_OPERATION:()=>Q0c,SEMATTRS_FAAS_DOCUMENT_TIME:()=>X0c,SEMATTRS_FAAS_EXECUTION:()=>H0c,SEMATTRS_FAAS_INVOKED_NAME:()=>z0c,SEMATTRS_FAAS_INVOKED_PROVIDER:()=>q0c,SEMATTRS_FAAS_INVOKED_REGION:()=>$0c,SEMATTRS_FAAS_TIME:()=>U0c,SEMATTRS_FAAS_TRIGGER:()=>M0c,SEMATTRS_HTTP_CLIENT_IP:()=>Lyc,SEMATTRS_HTTP_FLAVOR:()=>Ryc,SEMATTRS_HTTP_HOST:()=>Byc,SEMATTRS_HTTP_METHOD:()=>Eyc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH:()=>Dyc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:()=>kyc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH:()=>xyc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:()=>Gyc,SEMATTRS_HTTP_ROUTE:()=>Zyc,SEMATTRS_HTTP_SCHEME:()=>wyc,SEMATTRS_HTTP_SERVER_NAME:()=>Fyc,SEMATTRS_HTTP_STATUS_CODE:()=>Tyc,SEMATTRS_HTTP_TARGET:()=>vyc,SEMATTRS_HTTP_URL:()=>Syc,SEMATTRS_HTTP_USER_AGENT:()=>Nyc,SEMATTRS_MESSAGE_COMPRESSED_SIZE:()=>Fbc,SEMATTRS_MESSAGE_ID:()=>Gbc,SEMATTRS_MESSAGE_TYPE:()=>xbc,SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE:()=>Zbc,SEMATTRS_MESSAGING_CONSUMER_ID:()=>mbc,SEMATTRS_MESSAGING_CONVERSATION_ID:()=>pbc,SEMATTRS_MESSAGING_DESTINATION:()=>abc,SEMATTRS_MESSAGING_DESTINATION_KIND:()=>cbc,SEMATTRS_MESSAGING_KAFKA_CLIENT_ID:()=>bbc,SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP:()=>ybc,SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY:()=>_bc,SEMATTRS_MESSAGING_KAFKA_PARTITION:()=>Ebc,SEMATTRS_MESSAGING_KAFKA_TOMBSTONE:()=>Sbc,SEMATTRS_MESSAGING_MESSAGE_ID:()=>dbc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:()=>Ibc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:()=>fbc,SEMATTRS_MESSAGING_OPERATION:()=>hbc,SEMATTRS_MESSAGING_PROTOCOL:()=>ubc,SEMATTRS_MESSAGING_PROTOCOL_VERSION:()=>gbc,SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY:()=>Cbc,SEMATTRS_MESSAGING_SYSTEM:()=>obc,SEMATTRS_MESSAGING_TEMP_DESTINATION:()=>lbc,SEMATTRS_MESSAGING_URL:()=>Abc,SEMATTRS_NET_HOST_CARRIER_ICC:()=>Ayc,SEMATTRS_NET_HOST_CARRIER_MCC:()=>uyc,SEMATTRS_NET_HOST_CARRIER_MNC:()=>gyc,SEMATTRS_NET_HOST_CARRIER_NAME:()=>lyc,SEMATTRS_NET_HOST_CONNECTION_SUBTYPE:()=>cyc,SEMATTRS_NET_HOST_CONNECTION_TYPE:()=>ayc,SEMATTRS_NET_HOST_IP:()=>iyc,SEMATTRS_NET_HOST_NAME:()=>oyc,SEMATTRS_NET_HOST_PORT:()=>syc,SEMATTRS_NET_PEER_IP:()=>tyc,SEMATTRS_NET_PEER_NAME:()=>nyc,SEMATTRS_NET_PEER_PORT:()=>ryc,SEMATTRS_NET_TRANSPORT:()=>eyc,SEMATTRS_PEER_SERVICE:()=>dyc,SEMATTRS_RPC_GRPC_STATUS_CODE:()=>Tbc,SEMATTRS_RPC_JSONRPC_ERROR_CODE:()=>Dbc,SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE:()=>kbc,SEMATTRS_RPC_JSONRPC_REQUEST_ID:()=>Nbc,SEMATTRS_RPC_JSONRPC_VERSION:()=>Rbc,SEMATTRS_RPC_METHOD:()=>wbc,SEMATTRS_RPC_SERVICE:()=>Bbc,SEMATTRS_RPC_SYSTEM:()=>vbc,SEMATTRS_THREAD_ID:()=>hyc,SEMATTRS_THREAD_NAME:()=>myc,SEMRESATTRS_AWS_ECS_CLUSTER_ARN:()=>B2c,SEMRESATTRS_AWS_ECS_CONTAINER_ARN:()=>v2c,SEMRESATTRS_AWS_ECS_LAUNCHTYPE:()=>w2c,SEMRESATTRS_AWS_ECS_TASK_ARN:()=>T2c,SEMRESATTRS_AWS_ECS_TASK_FAMILY:()=>R2c,SEMRESATTRS_AWS_ECS_TASK_REVISION:()=>N2c,SEMRESATTRS_AWS_EKS_CLUSTER_ARN:()=>D2c,SEMRESATTRS_AWS_LOG_GROUP_ARNS:()=>x2c,SEMRESATTRS_AWS_LOG_GROUP_NAMES:()=>k2c,SEMRESATTRS_AWS_LOG_STREAM_ARNS:()=>F2c,SEMRESATTRS_AWS_LOG_STREAM_NAMES:()=>G2c,SEMRESATTRS_CLOUD_ACCOUNT_ID:()=>y2c,SEMRESATTRS_CLOUD_AVAILABILITY_ZONE:()=>E2c,SEMRESATTRS_CLOUD_PLATFORM:()=>S2c,SEMRESATTRS_CLOUD_PROVIDER:()=>_2c,SEMRESATTRS_CLOUD_REGION:()=>b2c,SEMRESATTRS_CONTAINER_ID:()=>L2c,SEMRESATTRS_CONTAINER_IMAGE_NAME:()=>W2c,SEMRESATTRS_CONTAINER_IMAGE_TAG:()=>O2c,SEMRESATTRS_CONTAINER_NAME:()=>Z2c,SEMRESATTRS_CONTAINER_RUNTIME:()=>V2c,SEMRESATTRS_DEPLOYMENT_ENVIRONMENT:()=>P2c,SEMRESATTRS_DEVICE_ID:()=>M2c,SEMRESATTRS_DEVICE_MODEL_IDENTIFIER:()=>H2c,SEMRESATTRS_DEVICE_MODEL_NAME:()=>Y2c,SEMRESATTRS_FAAS_ID:()=>X2c,SEMRESATTRS_FAAS_INSTANCE:()=>U2c,SEMRESATTRS_FAAS_MAX_MEMORY:()=>K2c,SEMRESATTRS_FAAS_NAME:()=>Q2c,SEMRESATTRS_FAAS_VERSION:()=>J2c,SEMRESATTRS_HOST_ARCH:()=>$2c,SEMRESATTRS_HOST_ID:()=>j2c,SEMRESATTRS_HOST_IMAGE_ID:()=>tSc,SEMRESATTRS_HOST_IMAGE_NAME:()=>eSc,SEMRESATTRS_HOST_IMAGE_VERSION:()=>rSc,SEMRESATTRS_HOST_NAME:()=>z2c,SEMRESATTRS_HOST_TYPE:()=>q2c,SEMRESATTRS_K8S_CLUSTER_NAME:()=>nSc,SEMRESATTRS_K8S_CONTAINER_NAME:()=>lSc,SEMRESATTRS_K8S_CRONJOB_NAME:()=>ySc,SEMRESATTRS_K8S_CRONJOB_UID:()=>_Sc,SEMRESATTRS_K8S_DAEMONSET_NAME:()=>hSc,SEMRESATTRS_K8S_DAEMONSET_UID:()=>ISc,SEMRESATTRS_K8S_DEPLOYMENT_NAME:()=>dSc,SEMRESATTRS_K8S_DEPLOYMENT_UID:()=>ASc,SEMRESATTRS_K8S_JOB_NAME:()=>CSc,SEMRESATTRS_K8S_JOB_UID:()=>mSc,SEMRESATTRS_K8S_NAMESPACE_NAME:()=>oSc,SEMRESATTRS_K8S_NODE_NAME:()=>iSc,SEMRESATTRS_K8S_NODE_UID:()=>sSc,SEMRESATTRS_K8S_POD_NAME:()=>cSc,SEMRESATTRS_K8S_POD_UID:()=>aSc,SEMRESATTRS_K8S_REPLICASET_NAME:()=>gSc,SEMRESATTRS_K8S_REPLICASET_UID:()=>uSc,SEMRESATTRS_K8S_STATEFULSET_NAME:()=>fSc,SEMRESATTRS_K8S_STATEFULSET_UID:()=>pSc,SEMRESATTRS_OS_DESCRIPTION:()=>ESc,SEMRESATTRS_OS_NAME:()=>SSc,SEMRESATTRS_OS_TYPE:()=>bSc,SEMRESATTRS_OS_VERSION:()=>vSc,SEMRESATTRS_PROCESS_COMMAND:()=>RSc,SEMRESATTRS_PROCESS_COMMAND_ARGS:()=>DSc,SEMRESATTRS_PROCESS_COMMAND_LINE:()=>NSc,SEMRESATTRS_PROCESS_EXECUTABLE_NAME:()=>wSc,SEMRESATTRS_PROCESS_EXECUTABLE_PATH:()=>TSc,SEMRESATTRS_PROCESS_OWNER:()=>kSc,SEMRESATTRS_PROCESS_PID:()=>BSc,SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION:()=>FSc,SEMRESATTRS_PROCESS_RUNTIME_NAME:()=>xSc,SEMRESATTRS_PROCESS_RUNTIME_VERSION:()=>GSc,SEMRESATTRS_SERVICE_INSTANCE_ID:()=>VSc,SEMRESATTRS_SERVICE_NAME:()=>ZSc,SEMRESATTRS_SERVICE_NAMESPACE:()=>LSc,SEMRESATTRS_SERVICE_VERSION:()=>WSc,SEMRESATTRS_TELEMETRY_AUTO_VERSION:()=>HSc,SEMRESATTRS_TELEMETRY_SDK_LANGUAGE:()=>PSc,SEMRESATTRS_TELEMETRY_SDK_NAME:()=>OSc,SEMRESATTRS_TELEMETRY_SDK_VERSION:()=>MSc,SEMRESATTRS_WEBENGINE_DESCRIPTION:()=>XSc,SEMRESATTRS_WEBENGINE_NAME:()=>YSc,SEMRESATTRS_WEBENGINE_VERSION:()=>QSc,SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN:()=>Owc,SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE:()=>Pwc,SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT:()=>Mwc,SIGNALR_TRANSPORT_VALUE_LONG_POLLING:()=>Ywc,SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS:()=>Qwc,SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS:()=>Xwc,SemanticAttributes:()=>Lbc,SemanticResourceAttributes:()=>JSc,TELEMETRYSDKLANGUAGEVALUES_CPP:()=>Ovc,TELEMETRYSDKLANGUAGEVALUES_DOTNET:()=>Pvc,TELEMETRYSDKLANGUAGEVALUES_ERLANG:()=>Mvc,TELEMETRYSDKLANGUAGEVALUES_GO:()=>Hvc,TELEMETRYSDKLANGUAGEVALUES_JAVA:()=>Yvc,TELEMETRYSDKLANGUAGEVALUES_NODEJS:()=>Qvc,TELEMETRYSDKLANGUAGEVALUES_PHP:()=>Xvc,TELEMETRYSDKLANGUAGEVALUES_PYTHON:()=>Jvc,TELEMETRYSDKLANGUAGEVALUES_RUBY:()=>Uvc,TELEMETRYSDKLANGUAGEVALUES_WEBJS:()=>Kvc,TELEMETRY_SDK_LANGUAGE_VALUE_CPP:()=>nBc,TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET:()=>iBc,TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG:()=>sBc,TELEMETRY_SDK_LANGUAGE_VALUE_GO:()=>oBc,TELEMETRY_SDK_LANGUAGE_VALUE_JAVA:()=>aBc,TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS:()=>cBc,TELEMETRY_SDK_LANGUAGE_VALUE_PHP:()=>lBc,TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON:()=>uBc,TELEMETRY_SDK_LANGUAGE_VALUE_RUBY:()=>gBc,TELEMETRY_SDK_LANGUAGE_VALUE_RUST:()=>ABc,TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT:()=>dBc,TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS:()=>pBc,TelemetrySdkLanguageValues:()=>jvc});var wYi=bc(()=>{z5i();EYi();SYi();vYi()});var TYi=H(KSt=>{"use strict";Object.defineProperty(KSt,"__esModule",{value:!0});KSt.SDK_INFO=void 0;var NTc=ALr(),hKe=(wYi(),vi(BYi));KSt.SDK_INFO={[hKe.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[hKe.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[hKe.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:hKe.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[hKe.SEMRESATTRS_TELEMETRY_SDK_VERSION]:NTc.VERSION}});var RYi=H(jSt=>{"use strict";Object.defineProperty(jSt,"__esModule",{value:!0});jSt.unrefTimer=void 0;function DTc(e){e.unref()}jSt.unrefTimer=DTc});var DYi=H(ID=>{"use strict";Object.defineProperty(ID,"__esModule",{value:!0});ID.unrefTimer=ID.SDK_INFO=ID.otperformance=ID.RandomIdGenerator=ID.hexToBase64=ID._globalThis=ID.getEnv=ID.getEnvWithoutDefaults=void 0;var NYi=$Vi();Object.defineProperty(ID,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return NYi.getEnvWithoutDefaults}});Object.defineProperty(ID,"getEnv",{enumerable:!0,get:function(){return NYi.getEnv}});var kTc=eWi();Object.defineProperty(ID,"_globalThis",{enumerable:!0,get:function(){return kTc._globalThis}});var xTc=rWi();Object.defineProperty(ID,"hexToBase64",{enumerable:!0,get:function(){return xTc.hexToBase64}});var GTc=sWi();Object.defineProperty(ID,"RandomIdGenerator",{enumerable:!0,get:function(){return GTc.RandomIdGenerator}});var FTc=oWi();Object.defineProperty(ID,"otperformance",{enumerable:!0,get:function(){return FTc.otperformance}});var ZTc=TYi();Object.defineProperty(ID,"SDK_INFO",{enumerable:!0,get:function(){return ZTc.SDK_INFO}});var LTc=RYi();Object.defineProperty(ID,"unrefTimer",{enumerable:!0,get:function(){return LTc.unrefTimer}})});var pLr=H(hD=>{"use strict";Object.defineProperty(hD,"__esModule",{value:!0});hD.unrefTimer=hD.otperformance=hD.hexToBase64=hD.getEnvWithoutDefaults=hD.getEnv=hD._globalThis=hD.SDK_INFO=hD.RandomIdGenerator=void 0;var dle=DYi();Object.defineProperty(hD,"RandomIdGenerator",{enumerable:!0,get:function(){return dle.RandomIdGenerator}});Object.defineProperty(hD,"SDK_INFO",{enumerable:!0,get:function(){return dle.SDK_INFO}});Object.defineProperty(hD,"_globalThis",{enumerable:!0,get:function(){return dle._globalThis}});Object.defineProperty(hD,"getEnv",{enumerable:!0,get:function(){return dle.getEnv}});Object.defineProperty(hD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return dle.getEnvWithoutDefaults}});Object.defineProperty(hD,"hexToBase64",{enumerable:!0,get:function(){return dle.hexToBase64}});Object.defineProperty(hD,"otperformance",{enumerable:!0,get:function(){return dle.otperformance}});Object.defineProperty(hD,"unrefTimer",{enumerable:!0,get:function(){return dle.unrefTimer}})});var FYi=H(HE=>{"use strict";Object.defineProperty(HE,"__esModule",{value:!0});HE.addHrTimes=HE.isTimeInput=HE.isTimeInputHrTime=HE.hrTimeToMicroseconds=HE.hrTimeToMilliseconds=HE.hrTimeToNanoseconds=HE.hrTimeToTimeStamp=HE.hrTimeDuration=HE.timeInputToHrTime=HE.hrTime=HE.getTimeOrigin=HE.millisToHrTime=void 0;var fLr=pLr(),kYi=9,VTc=6,WTc=Math.pow(10,VTc),zSt=Math.pow(10,kYi);function mKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*WTc);return[r,n]}HE.millisToHrTime=mKe;function ILr(){let e=fLr.otperformance.timeOrigin;if(typeof e!="number"){let t=fLr.otperformance;e=t.timing&&t.timing.fetchStart}return e}HE.getTimeOrigin=ILr;function xYi(e){let t=mKe(ILr()),r=mKe(typeof e=="number"?e:fLr.otperformance.now());return GYi(t,r)}HE.hrTime=xYi;function OTc(e){if(hLr(e))return e;if(typeof e=="number")return e=zSt&&(r[1]-=zSt,r[0]+=1),r}HE.addHrTimes=GYi});var ZYi=H(CKe=>{"use strict";Object.defineProperty(CKe,"__esModule",{value:!0});CKe.ExportResultCode=void 0;var JTc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(JTc=CKe.ExportResultCode||(CKe.ExportResultCode={}))});var VYi=H(qSt=>{"use strict";Object.defineProperty(qSt,"__esModule",{value:!0});qSt.CompositePropagator=void 0;var LYi=(LI(),vi(ZI)),mLr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){LYi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){LYi.diag.warn(`Failed to extract with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};qSt.CompositePropagator=mLr});var WYi=H(KDe=>{"use strict";Object.defineProperty(KDe,"__esModule",{value:!0});KDe.validateValue=KDe.validateKey=void 0;var CLr="[_0-9a-z-*/]",UTc=`[a-z]${CLr}{0,255}`,KTc=`[a-z0-9]${CLr}{0,240}@[a-z]${CLr}{0,13}`,jTc=new RegExp(`^(?:${UTc}|${KTc})$`),zTc=/^[ -~]{0,255}[!-~]$/,qTc=/,|=/;function $Tc(e){return jTc.test(e)}KDe.validateKey=$Tc;function eRc(e){return zTc.test(e)&&!qTc.test(e)}KDe.validateValue=eRc});var yLr=H($St=>{"use strict";Object.defineProperty($St,"__esModule",{value:!0});$St.TraceState=void 0;var OYi=WYi(),PYi=32,tRc=512,MYi=",",HYi="=",_Lr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+HYi+this.get(r)),t),[]).join(MYi)}_parse(t){t.length>tRc||(this._internalState=t.split(MYi).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(HYi);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,OYi.validateKey)(l)&&(0,OYi.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>PYi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,PYi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};$St.TraceState=_Lr});var QYi=H(XG=>{"use strict";Object.defineProperty(XG,"__esModule",{value:!0});XG.W3CTraceContextPropagator=XG.parseTraceParent=XG.TRACE_STATE_HEADER=XG.TRACE_PARENT_HEADER=void 0;var evt=(LI(),vi(ZI)),rRc=fKe(),nRc=yLr();XG.TRACE_PARENT_HEADER="traceparent";XG.TRACE_STATE_HEADER="tracestate";var iRc="00",sRc="(?!ff)[\\da-f]{2}",oRc="(?![0]{32})[\\da-f]{32}",aRc="(?![0]{16})[\\da-f]{16}",cRc="[\\da-f]{2}",lRc=new RegExp(`^\\s?(${sRc})-(${oRc})-(${aRc})-(${cRc})(-.*)?\\s?$`);function YYi(e){let t=lRc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}XG.parseTraceParent=YYi;var bLr=class{inject(t,r,n){let a=evt.trace.getSpanContext(t);if(!a||(0,rRc.isTracingSuppressed)(t)||!(0,evt.isSpanContextValid)(a))return;let o=`${iRc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||evt.TraceFlags.NONE).toString(16)}`;n.set(r,XG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,XG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,XG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=YYi(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,XG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new nRc.TraceState(typeof f=="string"?f:void 0)}return evt.trace.setSpanContext(t,l)}fields(){return[XG.TRACE_PARENT_HEADER,XG.TRACE_STATE_HEADER]}};XG.W3CTraceContextPropagator=bLr});var XYi=H(S4=>{"use strict";Object.defineProperty(S4,"__esModule",{value:!0});S4.getRPCMetadata=S4.deleteRPCMetadata=S4.setRPCMetadata=S4.RPCType=void 0;var uRc=(LI(),vi(ZI)),ELr=(0,uRc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),gRc;(function(e){e.HTTP="http"})(gRc=S4.RPCType||(S4.RPCType={}));function ARc(e,t){return e.setValue(ELr,t)}S4.setRPCMetadata=ARc;function dRc(e){return e.deleteValue(ELr)}S4.deleteRPCMetadata=dRc;function pRc(e){return e.getValue(ELr)}S4.getRPCMetadata=pRc});var vLr=H(tvt=>{"use strict";Object.defineProperty(tvt,"__esModule",{value:!0});tvt.AlwaysOffSampler=void 0;var fRc=(LI(),vi(ZI)),SLr=class{shouldSample(){return{decision:fRc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};tvt.AlwaysOffSampler=SLr});var wLr=H(rvt=>{"use strict";Object.defineProperty(rvt,"__esModule",{value:!0});rvt.AlwaysOnSampler=void 0;var IRc=(LI(),vi(ZI)),BLr=class{shouldSample(){return{decision:IRc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};rvt.AlwaysOnSampler=BLr});var UYi=H(ivt=>{"use strict";Object.defineProperty(ivt,"__esModule",{value:!0});ivt.ParentBasedSampler=void 0;var nvt=(LI(),vi(ZI)),hRc=oLr(),JYi=vLr(),TLr=wLr(),RLr=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,hRc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new TLr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new TLr.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new JYi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new TLr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new JYi.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=nvt.trace.getSpanContext(t);return!A||!(0,nvt.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&nvt.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&nvt.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};ivt.ParentBasedSampler=RLr});var KYi=H(svt=>{"use strict";Object.defineProperty(svt,"__esModule",{value:!0});svt.TraceIdRatioBasedSampler=void 0;var NLr=(LI(),vi(ZI)),DLr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,NLr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};svt.TraceIdRatioBasedSampler=DLr});var eQi=H(ovt=>{"use strict";Object.defineProperty(ovt,"__esModule",{value:!0});ovt.isPlainObject=void 0;var mRc="[object Object]",CRc="[object Null]",_Rc="[object Undefined]",yRc=Function.prototype,jYi=yRc.toString,bRc=jYi.call(Object),ERc=SRc(Object.getPrototypeOf,Object),zYi=Object.prototype,qYi=zYi.hasOwnProperty,c_e=Symbol?Symbol.toStringTag:void 0,$Yi=zYi.toString;function SRc(e,t){return function(r){return e(t(r))}}function vRc(e){if(!BRc(e)||wRc(e)!==mRc)return!1;let t=ERc(e);if(t===null)return!0;let r=qYi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&jYi.call(r)===bRc}ovt.isPlainObject=vRc;function BRc(e){return e!=null&&typeof e=="object"}function wRc(e){return e==null?e===void 0?_Rc:CRc:c_e&&c_e in Object(e)?TRc(e):RRc(e)}function TRc(e){let t=qYi.call(e,c_e),r=e[c_e],n=!1;try{e[c_e]=void 0,n=!0}catch{}let a=$Yi.call(e);return n&&(t?e[c_e]=r:delete e[c_e]),a}function RRc(e){return $Yi.call(e)}});var sQi=H(lvt=>{"use strict";Object.defineProperty(lvt,"__esModule",{value:!0});lvt.merge=void 0;var tQi=eQi(),NRc=20;function DRc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=nQi(t,e.shift(),0,r);return t}lvt.merge=DRc;function kLr(e){return cvt(e)?e.slice():e}function nQi(e,t,r=0,n){let a;if(!(r>NRc)){if(r++,avt(e)||avt(t)||iQi(t))a=kLr(t);else if(cvt(e)){if(a=e.slice(),cvt(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(rQi(e,f,n)||rQi(t,f,n))delete a[f];else{if(_Ke(C)&&_Ke(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=nQi(a[f],I,r,n)}}}}else a=t;return a}}function rQi(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function kRc(e,t){return!(!(0,tQi.isPlainObject)(e)||!(0,tQi.isPlainObject)(t))}});var oQi=H(jDe=>{"use strict";Object.defineProperty(jDe,"__esModule",{value:!0});jDe.callWithTimeout=jDe.TimeoutError=void 0;var uvt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};jDe.TimeoutError=uvt;function xRc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new uvt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}jDe.callWithTimeout=xRc});var cQi=H(zDe=>{"use strict";Object.defineProperty(zDe,"__esModule",{value:!0});zDe.isUrlIgnored=zDe.urlMatches=void 0;function aQi(e,t){return typeof t=="string"?e===t:!!e.match(t)}zDe.urlMatches=aQi;function GRc(e,t){if(!t)return!1;for(let r of t)if(aQi(e,r))return!0;return!1}zDe.isUrlIgnored=GRc});var lQi=H(gvt=>{"use strict";Object.defineProperty(gvt,"__esModule",{value:!0});gvt.isWrapped=void 0;function FRc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}gvt.isWrapped=FRc});var uQi=H(Avt=>{"use strict";Object.defineProperty(Avt,"__esModule",{value:!0});Avt.Deferred=void 0;var xLr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};Avt.Deferred=xLr});var gQi=H(dvt=>{"use strict";Object.defineProperty(dvt,"__esModule",{value:!0});dvt.BindOnceFuture=void 0;var ZRc=uQi(),GLr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new ZRc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};dvt.BindOnceFuture=GLr});var dQi=H(pvt=>{"use strict";Object.defineProperty(pvt,"__esModule",{value:!0});pvt._export=void 0;var AQi=(LI(),vi(ZI)),LRc=fKe();function VRc(e,t){return new Promise(r=>{AQi.context.with((0,LRc.suppressTracing)(AQi.context.active()),()=>{e.export(t,n=>{r(n)})})})}pvt._export=VRc});var LLr=H(Ja=>{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=Ja.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Ja.TraceState=Ja.unsuppressTracing=Ja.suppressTracing=Ja.isTracingSuppressed=Ja.TraceIdRatioBasedSampler=Ja.ParentBasedSampler=Ja.AlwaysOnSampler=Ja.AlwaysOffSampler=Ja.setRPCMetadata=Ja.getRPCMetadata=Ja.deleteRPCMetadata=Ja.RPCType=Ja.parseTraceParent=Ja.W3CTraceContextPropagator=Ja.TRACE_STATE_HEADER=Ja.TRACE_PARENT_HEADER=Ja.CompositePropagator=Ja.unrefTimer=Ja.otperformance=Ja.hexToBase64=Ja.getEnvWithoutDefaults=Ja.getEnv=Ja._globalThis=Ja.SDK_INFO=Ja.RandomIdGenerator=Ja.baggageUtils=Ja.ExportResultCode=Ja.hexToBinary=Ja.timeInputToHrTime=Ja.millisToHrTime=Ja.isTimeInputHrTime=Ja.isTimeInput=Ja.hrTimeToTimeStamp=Ja.hrTimeToNanoseconds=Ja.hrTimeToMilliseconds=Ja.hrTimeToMicroseconds=Ja.hrTimeDuration=Ja.hrTime=Ja.getTimeOrigin=Ja.addHrTimes=Ja.loggingErrorHandler=Ja.setGlobalErrorHandler=Ja.globalErrorHandler=Ja.sanitizeAttributes=Ja.isAttributeValue=Ja.isAttributeKey=Ja.AnchoredClock=Ja.W3CBaggagePropagator=void 0;Ja.internal=Ja.VERSION=Ja.BindOnceFuture=Ja.isWrapped=Ja.urlMatches=Ja.isUrlIgnored=Ja.callWithTimeout=Ja.TimeoutError=Ja.TracesSamplerValues=Ja.merge=Ja.parseEnvironment=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Ja.DEFAULT_ENVIRONMENT=void 0;var WRc=QVi();Object.defineProperty(Ja,"W3CBaggagePropagator",{enumerable:!0,get:function(){return WRc.W3CBaggagePropagator}});var ORc=XVi();Object.defineProperty(Ja,"AnchoredClock",{enumerable:!0,get:function(){return ORc.AnchoredClock}});var FLr=zVi();Object.defineProperty(Ja,"isAttributeKey",{enumerable:!0,get:function(){return FLr.isAttributeKey}});Object.defineProperty(Ja,"isAttributeValue",{enumerable:!0,get:function(){return FLr.isAttributeValue}});Object.defineProperty(Ja,"sanitizeAttributes",{enumerable:!0,get:function(){return FLr.sanitizeAttributes}});var pQi=oLr();Object.defineProperty(Ja,"globalErrorHandler",{enumerable:!0,get:function(){return pQi.globalErrorHandler}});Object.defineProperty(Ja,"setGlobalErrorHandler",{enumerable:!0,get:function(){return pQi.setGlobalErrorHandler}});var PRc=sLr();Object.defineProperty(Ja,"loggingErrorHandler",{enumerable:!0,get:function(){return PRc.loggingErrorHandler}});var yH=FYi();Object.defineProperty(Ja,"addHrTimes",{enumerable:!0,get:function(){return yH.addHrTimes}});Object.defineProperty(Ja,"getTimeOrigin",{enumerable:!0,get:function(){return yH.getTimeOrigin}});Object.defineProperty(Ja,"hrTime",{enumerable:!0,get:function(){return yH.hrTime}});Object.defineProperty(Ja,"hrTimeDuration",{enumerable:!0,get:function(){return yH.hrTimeDuration}});Object.defineProperty(Ja,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return yH.hrTimeToMicroseconds}});Object.defineProperty(Ja,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return yH.hrTimeToMilliseconds}});Object.defineProperty(Ja,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return yH.hrTimeToNanoseconds}});Object.defineProperty(Ja,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return yH.hrTimeToTimeStamp}});Object.defineProperty(Ja,"isTimeInput",{enumerable:!0,get:function(){return yH.isTimeInput}});Object.defineProperty(Ja,"isTimeInputHrTime",{enumerable:!0,get:function(){return yH.isTimeInputHrTime}});Object.defineProperty(Ja,"millisToHrTime",{enumerable:!0,get:function(){return yH.millisToHrTime}});Object.defineProperty(Ja,"timeInputToHrTime",{enumerable:!0,get:function(){return yH.timeInputToHrTime}});var MRc=uLr();Object.defineProperty(Ja,"hexToBinary",{enumerable:!0,get:function(){return MRc.hexToBinary}});var HRc=ZYi();Object.defineProperty(Ja,"ExportResultCode",{enumerable:!0,get:function(){return HRc.ExportResultCode}});var fvt=eLr();Ja.baggageUtils={getKeyPairs:fvt.getKeyPairs,serializeKeyPairs:fvt.serializeKeyPairs,parseKeyPairsIntoRecord:fvt.parseKeyPairsIntoRecord,parsePairKeyValue:fvt.parsePairKeyValue};var ple=pLr();Object.defineProperty(Ja,"RandomIdGenerator",{enumerable:!0,get:function(){return ple.RandomIdGenerator}});Object.defineProperty(Ja,"SDK_INFO",{enumerable:!0,get:function(){return ple.SDK_INFO}});Object.defineProperty(Ja,"_globalThis",{enumerable:!0,get:function(){return ple._globalThis}});Object.defineProperty(Ja,"getEnv",{enumerable:!0,get:function(){return ple.getEnv}});Object.defineProperty(Ja,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return ple.getEnvWithoutDefaults}});Object.defineProperty(Ja,"hexToBase64",{enumerable:!0,get:function(){return ple.hexToBase64}});Object.defineProperty(Ja,"otperformance",{enumerable:!0,get:function(){return ple.otperformance}});Object.defineProperty(Ja,"unrefTimer",{enumerable:!0,get:function(){return ple.unrefTimer}});var YRc=VYi();Object.defineProperty(Ja,"CompositePropagator",{enumerable:!0,get:function(){return YRc.CompositePropagator}});var Ivt=QYi();Object.defineProperty(Ja,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return Ivt.TRACE_PARENT_HEADER}});Object.defineProperty(Ja,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return Ivt.TRACE_STATE_HEADER}});Object.defineProperty(Ja,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return Ivt.W3CTraceContextPropagator}});Object.defineProperty(Ja,"parseTraceParent",{enumerable:!0,get:function(){return Ivt.parseTraceParent}});var hvt=XYi();Object.defineProperty(Ja,"RPCType",{enumerable:!0,get:function(){return hvt.RPCType}});Object.defineProperty(Ja,"deleteRPCMetadata",{enumerable:!0,get:function(){return hvt.deleteRPCMetadata}});Object.defineProperty(Ja,"getRPCMetadata",{enumerable:!0,get:function(){return hvt.getRPCMetadata}});Object.defineProperty(Ja,"setRPCMetadata",{enumerable:!0,get:function(){return hvt.setRPCMetadata}});var QRc=vLr();Object.defineProperty(Ja,"AlwaysOffSampler",{enumerable:!0,get:function(){return QRc.AlwaysOffSampler}});var XRc=wLr();Object.defineProperty(Ja,"AlwaysOnSampler",{enumerable:!0,get:function(){return XRc.AlwaysOnSampler}});var JRc=UYi();Object.defineProperty(Ja,"ParentBasedSampler",{enumerable:!0,get:function(){return JRc.ParentBasedSampler}});var URc=KYi();Object.defineProperty(Ja,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return URc.TraceIdRatioBasedSampler}});var ZLr=fKe();Object.defineProperty(Ja,"isTracingSuppressed",{enumerable:!0,get:function(){return ZLr.isTracingSuppressed}});Object.defineProperty(Ja,"suppressTracing",{enumerable:!0,get:function(){return ZLr.suppressTracing}});Object.defineProperty(Ja,"unsuppressTracing",{enumerable:!0,get:function(){return ZLr.unsuppressTracing}});var KRc=yLr();Object.defineProperty(Ja,"TraceState",{enumerable:!0,get:function(){return KRc.TraceState}});var qDe=cLr();Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return qDe.DEFAULT_ENVIRONMENT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(Ja,"parseEnvironment",{enumerable:!0,get:function(){return qDe.parseEnvironment}});var jRc=sQi();Object.defineProperty(Ja,"merge",{enumerable:!0,get:function(){return jRc.merge}});var zRc=aLr();Object.defineProperty(Ja,"TracesSamplerValues",{enumerable:!0,get:function(){return zRc.TracesSamplerValues}});var fQi=oQi();Object.defineProperty(Ja,"TimeoutError",{enumerable:!0,get:function(){return fQi.TimeoutError}});Object.defineProperty(Ja,"callWithTimeout",{enumerable:!0,get:function(){return fQi.callWithTimeout}});var IQi=cQi();Object.defineProperty(Ja,"isUrlIgnored",{enumerable:!0,get:function(){return IQi.isUrlIgnored}});Object.defineProperty(Ja,"urlMatches",{enumerable:!0,get:function(){return IQi.urlMatches}});var qRc=lQi();Object.defineProperty(Ja,"isWrapped",{enumerable:!0,get:function(){return qRc.isWrapped}});var $Rc=gQi();Object.defineProperty(Ja,"BindOnceFuture",{enumerable:!0,get:function(){return $Rc.BindOnceFuture}});var eNc=ALr();Object.defineProperty(Ja,"VERSION",{enumerable:!0,get:function(){return eNc.VERSION}});var tNc=dQi();Ja.internal={_export:tNc._export}});var CQi=H((mOu,VLr)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));VLr.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};VLr.exports=e}});var wQi=H((COu,BQi)=>{"use strict";var uw=Et("fs"),rNc=Et("events"),nNc=Et("util").inherits,_Qi=Et("path"),OLr=CQi(),Cvt=100,_vt=Buffer.allocUnsafe(0),iNc=16*1024,yQi="buffer",bQi="utf8";function EQi(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(o,l){if(o){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",o)}):t.emit("error",o);return}let A=t._reopening;t.fd=l,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():A&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",a=t.mode;if(t.sync)try{t.mkdir&&uw.mkdirSync(_Qi.dirname(e),{recursive:!0});let o=uw.openSync(e,n,a);r(null,o)}catch(o){throw r(o),o}else t.mkdir?uw.mkdir(_Qi.dirname(e),{recursive:!0},o=>{if(o)return r(o);uw.open(e,n,a,r)}):uw.open(e,n,a,r)}function v4(e){if(!(this instanceof v4))return new v4(e);let{fd:t,dest:r,minLength:n,maxLength:a,maxWrite:o,sync:l,append:A=!0,mkdir:f,retryEAGAIN:I,fsync:C,contentMode:b,mode:E}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=a||0,this.maxWrite=o||iNc,this.sync=l||!1,this.writable=!0,this._fsync=C||!1,this.append=A||!1,this.mode=E,this.retryEAGAIN=I||(()=>!0),this.mkdir=f||!1;let N,B;if(b===yQi)this._writingBuf=_vt,this.write=aNc,this.flush=lNc,this.flushSync=gNc,this._actualWrite=dNc,N=()=>uw.writeSync(this.fd,this._writingBuf),B=()=>uw.write(this.fd,this._writingBuf,this.release);else if(b===void 0||b===bQi)this._writingBuf="",this.write=oNc,this.flush=cNc,this.flushSync=uNc,this._actualWrite=ANc,N=()=>uw.writeSync(this.fd,this._writingBuf,"utf8"),B=()=>uw.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${bQi}" and "${yQi}", but passed ${b}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")EQi(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(F,Q)=>{if(F){if((F.code==="EAGAIN"||F.code==="EBUSY")&&this.retryEAGAIN(F,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{OLr(Cvt),this.release(void 0,0)}catch(ne){this.release(ne)}else setTimeout(B,Cvt);else this._writing=!1,this.emit("error",F);return}this.emit("write",Q);let J=WLr(this._writingBuf,this._len,Q);if(this._len=J.len,this._writingBuf=J.writingBuf,this._writingBuf.length){if(!this.sync){B();return}try{do{let ne=N(),ce=WLr(this._writingBuf,this._len,ne);this._len=ce.len,this._writingBuf=ce.writingBuf}while(this._writingBuf.length)}catch(ne){this.release(ne);return}}this._fsync&&uw.fsyncSync(this.fd);let ae=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):ae>this.minLength?this._actualWrite():this._ending?ae>0?this._actualWrite():(this._writing=!1,yvt(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(sNc,this)):this.emit("drain"))},this.on("newListener",function(F){F==="drain"&&(this._asyncDrainScheduled=!1)})}function WLr(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function sNc(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}nNc(v4,rNc);function SQi(e,t){return e.length===0?_vt:e.length===1?e[0]:Buffer.concat(e,t)}function oNc(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):uw.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function cNc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&vQi.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function lNc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&vQi.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}v4.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&uw.close(t,r=>{if(r)return this.emit("error",r)})}),EQi(this.file,this)};v4.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():yvt(this)))};function uNc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=uw.writeSync(this.fd,e,"utf8"),r=WLr(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;OLr(Cvt)}}try{uw.fsyncSync(this.fd)}catch{}}function gNc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=_vt);let e=_vt;for(;this._bufs.length||e.length;){e.length<=0&&(e=SQi(this._bufs[0],this._lens[0]));try{let t=uw.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;OLr(Cvt)}}}v4.prototype.destroy=function(){this.destroyed||yvt(this)};function ANc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=uw.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else uw.write(this.fd,this._writingBuf,"utf8",e)}function dNc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:SQi(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=uw.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else uw.write(this.fd,this._writingBuf,e)}function yvt(e){if(e.fd===-1){e.once("ready",yvt.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],uw.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?uw.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}v4.SonicBoom=v4;v4.default=v4;BQi.exports=v4});var xQi=H((_Ou,kQi)=>{"use strict";var B4={exit:[],beforeExit:[]},TQi={exit:INc,beforeExit:hNc},$De;function pNc(){$De===void 0&&($De=new FinalizationRegistry(mNc))}function fNc(e){B4[e].length>0||process.on(e,TQi[e])}function RQi(e){B4[e].length>0||(process.removeListener(e,TQi[e]),B4.exit.length===0&&B4.beforeExit.length===0&&($De=void 0))}function INc(){NQi("exit")}function hNc(){NQi("beforeExit")}function NQi(e){for(let t of B4[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}B4[e]=[]}function mNc(e){for(let t of["exit","beforeExit"]){let r=B4[t].indexOf(e);B4[t].splice(r,r+1),RQi(t)}}function DQi(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");fNc(e);let n=new WeakRef(t);n.fn=r,pNc(),$De.register(t,n),B4[e].push(n)}function CNc(e,t){DQi("exit",e,t)}function _Nc(e,t){DQi("beforeExit",e,t)}function yNc(e){if($De!==void 0){$De.unregister(e);for(let t of["exit","beforeExit"])B4[t]=B4[t].filter(r=>{let n=r.deref();return n&&n!==e}),RQi(t)}}kQi.exports={register:CNc,registerBeforeExit:_Nc,unregister:yNc}});var HQi=H((QLr,XLr)=>{(function(e,t){typeof QLr=="object"&&typeof XLr<"u"?XLr.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.uniqolor=t())})(QLr,function(){"use strict";function e(Se,De){var k=Se==null?null:typeof Symbol<"u"&&Se[Symbol.iterator]||Se["@@iterator"];if(k!=null){var tt,ze,Le,Je,ft=[],lt=!0,Ot=!1;try{if(Le=(k=k.call(Se)).next,De===0){if(Object(k)!==k)return;lt=!1}else for(;!(lt=(tt=Le.call(k)).done)&&(ft.push(tt.value),ft.length!==De);lt=!0);}catch(Er){Ot=!0,ze=Er}finally{try{if(!lt&&k.return!=null&&(Je=k.return(),Object(Je)!==Je))return}finally{if(Ot)throw ze}}return ft}}function t(Se,De){return a(Se)||e(Se,De)||l(Se,De)||I()}function r(Se){return n(Se)||o(Se)||l(Se)||f()}function n(Se){if(Array.isArray(Se))return A(Se)}function a(Se){if(Array.isArray(Se))return Se}function o(Se){if(typeof Symbol<"u"&&Se[Symbol.iterator]!=null||Se["@@iterator"]!=null)return Array.from(Se)}function l(Se,De){if(Se){if(typeof Se=="string")return A(Se,De);var k=Object.prototype.toString.call(Se).slice(8,-1);if(k==="Object"&&Se.constructor&&(k=Se.constructor.name),k==="Map"||k==="Set")return Array.from(Se);if(k==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(k))return A(Se,De)}}function A(Se,De){(De==null||De>Se.length)&&(De=Se.length);for(var k=0,tt=new Array(De);kt.trim()).join(" ")};pZi.O=function(e){return this.inspectOpts.colors=this.useColors,$1t.inspect(e,this.inspectOpts)}});var aFr=H((TZu,oFr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?oFr.exports=dZi():oFr.exports=fZi()});var hZi=H((RZu,IZi)=>{var{Transform:QIc}=Et("stream"),cFr=class extends QIc{constructor(t={}){super(t),this.host=t.host||"localhost",this.replaced=!1}_transform(t,r,n){n(null,this.replaced?t:t.toString().replace(/(\r\n[Hh]ost: )\S+/,(a,o)=>(this.replaced=!0,o+this.host)))}};IZi.exports=cFr});var _Zi=H((DZu,CZi)=>{var{EventEmitter:XIc}=Et("events"),V6=aFr()("localtunnel:client"),lFr=Et("fs"),mZi=Et("net"),JIc=Et("tls"),UIc=hZi();CZi.exports=class extends XIc{constructor(t={}){super(t),this.opts=t}open(){let t=this.opts,r=t.remote_ip||t.remote_host,n=t.remote_port,a=t.local_host||"localhost",o=t.local_port,l=t.local_https?"https":"http",A=t.allow_invalid_cert;V6("establishing tunnel %s://%s:%s <> %s:%s",l,a,o,r,n);let f=mZi.connect({host:r,port:n});f.setKeepAlive(!0),f.on("error",C=>{V6("got remote connection error",C.message),C.code==="ECONNREFUSED"&&this.emit("error",new Error(`connection refused: ${r}:${n} (check your firewall settings)`)),f.end()});let I=()=>{if(f.destroyed){V6("remote destroyed"),this.emit("dead");return}V6("connecting locally to %s://%s:%d",l,a,o),f.pause(),A&&V6("allowing invalid certificates");let C=()=>A?{rejectUnauthorized:!1}:{cert:lFr.readFileSync(t.local_cert),key:lFr.readFileSync(t.local_key),ca:t.local_ca?[lFr.readFileSync(t.local_ca)]:void 0},b=t.local_https?JIc.connect({host:a,port:o,...C()}):mZi.connect({host:a,port:o}),E=()=>{V6("remote close"),this.emit("dead"),b.end()};f.once("close",E),b.once("error",N=>{if(V6("local error %s",N.message),b.end(),f.removeListener("close",E),N.code!=="ECONNREFUSED")return f.end();setTimeout(I,1e3)}),b.once("connect",()=>{V6("connected locally"),f.resume();let N=f;t.local_host&&(V6("transform Host header to %s",t.local_host),N=f.pipe(new UIc({host:t.local_host}))),N.pipe(b).pipe(f),b.once("close",B=>{V6("local connection closed [%s]",B)})})};f.on("data",C=>{let b=C.toString().match(/^(\w+) (\S+)/);b&&this.emit("request",{method:b[1],path:b[2]})}),f.once("connect",()=>{this.emit("open",f),I()})}}});var EZi=H((xZu,bZi)=>{var{parse:KIc}=Et("url"),{EventEmitter:yZi}=Et("events"),jIc=lZi(),HUe=aFr()("localtunnel:client"),zIc=_Zi();bZi.exports=class extends yZi{constructor(t={}){super(t),this.opts=t,this.closed=!1,this.opts.host||(this.opts.host="https://localtunnel.me")}_getInfo(t){let{id:r,ip:n,port:a,url:o,cached_url:l,max_conn_count:A}=t,{host:f,port:I,local_host:C}=this.opts,{local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}=this.opts;return{name:r,url:o,cached_url:l,max_conn:A||1,remote_host:KIc(f).hostname,remote_ip:n,remote_port:a,local_port:I,local_host:C,local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}}_init(t){let r=this.opts,n=this._getInfo.bind(this),a={responseType:"json"},o=`${r.host}/`,l=r.subdomain,A=o+(l||"?new");(function f(){jIc.get(A,a).then(I=>{let C=I.data;if(HUe("got tunnel information",I.data),I.status!==200){let b=new Error(C&&C.message||"localtunnel server returned an error, please try again");return t(b)}t(null,n(C))}).catch(I=>(HUe(`tunnel server offline: ${I.message}, retry 1s`),setTimeout(f,1e3)))})()}_establish(t){this.setMaxListeners(t.max_conn+(yZi.defaultMaxListeners||10)),this.tunnelCluster=new zIc(t),this.tunnelCluster.once("open",()=>{this.emit("url",t.url)}),this.tunnelCluster.on("error",n=>{HUe("got socket error",n.message),this.emit("error",n)});let r=0;this.tunnelCluster.on("open",n=>{r++,HUe("tunnel open [total: %d]",r);let a=()=>{n.destroy()};if(this.closed)return a();this.once("close",a),n.once("close",()=>{this.removeListener("close",a)})}),this.tunnelCluster.on("dead",()=>{r--,HUe("tunnel dead [total: %d]",r),!this.closed&&this.tunnelCluster.open()}),this.tunnelCluster.on("request",n=>{this.emit("request",n)});for(let n=0;n{if(r)return t(r);this.clientId=n.name,this.url=n.url,n.cached_url&&(this.cachedUrl=n.cached_url),this._establish(n),t()})}close(){this.closed=!0,this.emit("close")}}});var vZi=H((GZu,SZi)=>{var qIc=EZi();SZi.exports=function(t,r,n){let a=typeof t=="object"?t:{...r,port:t},o=typeof t=="object"?r:n,l=new qIc(a);return o?(l.open(A=>A?o(A):o(null,l)),l):new Promise((A,f)=>l.open(I=>I?f(I):A(l)))}});var YZi=H(HZi=>{"use strict";Object.defineProperty(HZi,"__esModule",{value:!0})});var XZi=H(QZi=>{"use strict";Object.defineProperty(QZi,"__esModule",{value:!0})});var JZi=H(UUe=>{"use strict";Object.defineProperty(UUe,"__esModule",{value:!0});UUe.SeverityNumber=void 0;var lhc;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TRACE=1]="TRACE",e[e.TRACE2=2]="TRACE2",e[e.TRACE3=3]="TRACE3",e[e.TRACE4=4]="TRACE4",e[e.DEBUG=5]="DEBUG",e[e.DEBUG2=6]="DEBUG2",e[e.DEBUG3=7]="DEBUG3",e[e.DEBUG4=8]="DEBUG4",e[e.INFO=9]="INFO",e[e.INFO2=10]="INFO2",e[e.INFO3=11]="INFO3",e[e.INFO4=12]="INFO4",e[e.WARN=13]="WARN",e[e.WARN2=14]="WARN2",e[e.WARN3=15]="WARN3",e[e.WARN4=16]="WARN4",e[e.ERROR=17]="ERROR",e[e.ERROR2=18]="ERROR2",e[e.ERROR3=19]="ERROR3",e[e.ERROR4=20]="ERROR4",e[e.FATAL=21]="FATAL",e[e.FATAL2=22]="FATAL2",e[e.FATAL3=23]="FATAL3",e[e.FATAL4=24]="FATAL4"})(lhc=UUe.SeverityNumber||(UUe.SeverityNumber={}))});var KZi=H(UZi=>{"use strict";Object.defineProperty(UZi,"__esModule",{value:!0})});var dFr=H(DDe=>{"use strict";Object.defineProperty(DDe,"__esModule",{value:!0});DDe.NOOP_LOGGER=DDe.NoopLogger=void 0;var o2t=class{emit(t){}};DDe.NoopLogger=o2t;DDe.NOOP_LOGGER=new o2t});var pFr=H(kDe=>{"use strict";Object.defineProperty(kDe,"__esModule",{value:!0});kDe.NOOP_LOGGER_PROVIDER=kDe.NoopLoggerProvider=void 0;var uhc=dFr(),a2t=class{getLogger(t,r,n){return new uhc.NoopLogger}};kDe.NoopLoggerProvider=a2t;kDe.NOOP_LOGGER_PROVIDER=new a2t});var jZi=H(c2t=>{"use strict";Object.defineProperty(c2t,"__esModule",{value:!0});c2t._globalThis=void 0;c2t._globalThis=typeof globalThis=="object"?globalThis:global});var zZi=H(MCe=>{"use strict";var ghc=MCe&&MCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Ahc=MCe&&MCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ghc(t,e,r)};Object.defineProperty(MCe,"__esModule",{value:!0});Ahc(jZi(),MCe)});var qZi=H(HCe=>{"use strict";var dhc=HCe&&HCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),phc=HCe&&HCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&dhc(t,e,r)};Object.defineProperty(HCe,"__esModule",{value:!0});phc(zZi(),HCe)});var $Zi=H(W6=>{"use strict";Object.defineProperty(W6,"__esModule",{value:!0});W6.API_BACKWARDS_COMPATIBILITY_VERSION=W6.makeGetter=W6._global=W6.GLOBAL_LOGS_API_KEY=void 0;var fhc=qZi();W6.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");W6._global=fhc._globalThis;function Ihc(e,t,r){return n=>n===e?t:r}W6.makeGetter=Ihc;W6.API_BACKWARDS_COMPATIBILITY_VERSION=1});var tLi=H(l2t=>{"use strict";Object.defineProperty(l2t,"__esModule",{value:!0});l2t.LogsAPI=void 0;var _H=$Zi(),eLi=pFr(),fFr=class e{constructor(){}static getInstance(){return this._instance||(this._instance=new e),this._instance}setGlobalLoggerProvider(t){return _H._global[_H.GLOBAL_LOGS_API_KEY]?this.getLoggerProvider():(_H._global[_H.GLOBAL_LOGS_API_KEY]=(0,_H.makeGetter)(_H.API_BACKWARDS_COMPATIBILITY_VERSION,t,eLi.NOOP_LOGGER_PROVIDER),t)}getLoggerProvider(){var t,r;return(r=(t=_H._global[_H.GLOBAL_LOGS_API_KEY])===null||t===void 0?void 0:t.call(_H._global,_H.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&r!==void 0?r:eLi.NOOP_LOGGER_PROVIDER}getLogger(t,r,n){return this.getLoggerProvider().getLogger(t,r,n)}disable(){delete _H._global[_H.GLOBAL_LOGS_API_KEY]}};l2t.LogsAPI=fFr});var GDe=H(ZV=>{"use strict";var hhc=ZV&&ZV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xDe=ZV&&ZV.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&hhc(t,e,r)};Object.defineProperty(ZV,"__esModule",{value:!0});ZV.logs=void 0;xDe(YZi(),ZV);xDe(XZi(),ZV);xDe(JZi(),ZV);xDe(KZi(),ZV);xDe(dFr(),ZV);xDe(pFr(),ZV);var mhc=tLi();ZV.logs=mhc.LogsAPI.getInstance()});var rLi,nLi=bc(()=>{rLi=typeof globalThis=="object"?globalThis:global});var iLi=bc(()=>{nLi()});var sLi=bc(()=>{iLi()});var ite,IFr=bc(()=>{ite="1.9.0"});function Chc(e){var t=new Set([e]),r=new Set,n=e.match(oLi);if(!n)return function(){return!1};var a={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(a.prerelease!=null)return function(f){return f===e};function o(A){return r.add(A),!1}function l(A){return t.add(A),!0}return function(f){if(t.has(f))return!0;if(r.has(f))return!1;var I=f.match(oLi);if(!I)return o(f);var C={major:+I[1],minor:+I[2],patch:+I[3],prerelease:I[4]};return C.prerelease!=null||a.major!==C.major?o(f):a.major===0?a.minor===C.minor&&a.patch<=C.patch?l(f):o(f):a.minor<=C.minor?l(f):o(f)}}var oLi,aLi,cLi=bc(()=>{IFr();oLi=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;aLi=Chc(ite)});function O6(e,t,r,n){var a;n===void 0&&(n=!1);var o=jUe[KUe]=(a=jUe[KUe])!==null&&a!==void 0?a:{version:ite};if(!n&&o[e]){var l=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(l.stack||l.message),!1}if(o.version!==ite){var l=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+ite);return r.error(l.stack||l.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+ite+"."),!0}function NP(e){var t,r,n=(t=jUe[KUe])===null||t===void 0?void 0:t.version;if(!(!n||!aLi(n)))return(r=jUe[KUe])===null||r===void 0?void 0:r[e]}function P6(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+ite+".");var r=jUe[KUe];r&&delete r[e]}var _hc,KUe,jUe,YCe=bc(()=>{sLi();IFr();cLi();_hc=ite.split(".")[0],KUe=Symbol.for("opentelemetry.js.api."+_hc),jUe=rLi});function zUe(e,t,r){var n=NP("diag");if(n)return r.unshift(t),n[e].apply(n,bhc([],yhc(r),!1))}var yhc,bhc,lLi,uLi=bc(()=>{YCe();yhc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},bhc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(ex||(ex={}))});function gLi(e,t){eex.ALL&&(e=ex.ALL),t=t||{};function r(n,a){var o=t[n];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",ex.ERROR),warn:r("warn",ex.WARN),info:r("info",ex.INFO),debug:r("debug",ex.DEBUG),verbose:r("verbose",ex.VERBOSE)}}var ALi=bc(()=>{u2t()});var Ehc,Shc,vhc,MG,QCe=bc(()=>{uLi();ALi();u2t();YCe();Ehc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Shc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n";C.warn("Current logger will be overwritten from "+E),b.warn("Current logger will overwrite one already registered from "+E)}return O6("diag",b,r,!0)};r.setLogger=n,r.disable=function(){P6(vhc,r)},r.createComponentLogger=function(a){return new lLi(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()});var Bhc,whc,dLi,pLi=bc(()=>{Bhc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},whc=function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},dLi=function(){function e(t){this._entries=t?new Map(t):new Map}return e.prototype.getEntry=function(t){var r=this._entries.get(t);if(r)return Object.assign({},r)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(t){var r=Bhc(t,2),n=r[0],a=r[1];return[n,a]})},e.prototype.setEntry=function(t,r){var n=new e(this._entries);return n._entries.set(t,r),n},e.prototype.removeEntry=function(t){var r=new e(this._entries);return r._entries.delete(t),r},e.prototype.removeEntries=function(){for(var t,r,n=[],a=0;a{fLi=Symbol("BaggageEntryMetadata")});function hLi(e){return e===void 0&&(e={}),new dLi(new Map(Object.entries(e)))}function mLi(e){return typeof e!="string"&&(Thc.error("Cannot create baggage metadata from unknown type: "+typeof e),e=""),{__TYPE__:fLi,toString:function(){return e}}}var Thc,hFr=bc(()=>{QCe();pLi();ILi();Thc=MG.instance()});function FDe(e){return Symbol.for(e)}var Rhc,g2t,qUe=bc(()=>{Rhc=function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,a){var o=new e(r._currentContext);return o._currentContext.set(n,a),o},r.deleteValue=function(n){var a=new e(r._currentContext);return a._currentContext.delete(n),a}}return e}(),g2t=new Rhc});var mFr,CLi,_Li=bc(()=>{mFr=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],CLi=function(){function e(){function t(n){return function(){for(var a=[],o=0;o{XCe=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),Nhc=function(){function e(){}return e.prototype.createGauge=function(t,r){return Whc},e.prototype.createHistogram=function(t,r){return Ohc},e.prototype.createCounter=function(t,r){return Vhc},e.prototype.createUpDownCounter=function(t,r){return Phc},e.prototype.createObservableGauge=function(t,r){return Hhc},e.prototype.createObservableCounter=function(t,r){return Mhc},e.prototype.createObservableUpDownCounter=function(t,r){return Yhc},e.prototype.addBatchObservableCallback=function(t,r){},e.prototype.removeBatchObservableCallback=function(t){},e}(),A2t=function(){function e(){}return e}(),Dhc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(A2t),khc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(A2t),xhc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(A2t),Ghc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(A2t),CFr=function(){function e(){}return e.prototype.addCallback=function(t){},e.prototype.removeCallback=function(t){},e}(),Fhc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(CFr),Zhc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(CFr),Lhc=function(e){XCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(CFr),_Fr=new Nhc,Vhc=new Dhc,Whc=new xhc,Ohc=new Ghc,Phc=new khc,Mhc=new Fhc,Hhc=new Zhc,Yhc=new Lhc});var d2t,bLi=bc(()=>{(function(e){e[e.INT=0]="INT",e[e.DOUBLE=1]="DOUBLE"})(d2t||(d2t={}))});var p2t,f2t,bFr=bc(()=>{p2t={get:function(e,t){if(e!=null)return e[t]},keys:function(e){return e==null?[]:Object.keys(e)}},f2t={set:function(e,t,r){e!=null&&(e[t]=r)}}});var Qhc,Xhc,ELi,SLi=bc(()=>{qUe();Qhc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Xhc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{SLi();YCe();QCe();Jhc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Uhc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(ZDe||(ZDe={}))});var eKe,tKe,I2t,h2t=bc(()=>{SFr();eKe="0000000000000000",tKe="00000000000000000000000000000000",I2t={traceId:tKe,spanId:eKe,traceFlags:ZDe.NONE}});var sle,m2t=bc(()=>{h2t();sle=function(){function e(t){t===void 0&&(t=I2t),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e}()});function C2t(e){return e.getValue(vFr)||void 0}function vLi(){return C2t(ile.getInstance().active())}function rKe(e,t){return e.setValue(vFr,t)}function BLi(e){return e.deleteValue(vFr)}function wLi(e,t){return rKe(e,new sle(t))}function _2t(e){var t;return(t=C2t(e))===null||t===void 0?void 0:t.spanContext()}var vFr,BFr=bc(()=>{qUe();m2t();$Ue();vFr=FDe("OpenTelemetry Context Key SPAN")});function wFr(e){return jhc.test(e)&&e!==tKe}function TFr(e){return zhc.test(e)&&e!==eKe}function LDe(e){return wFr(e.traceId)&&TFr(e.spanId)}function TLi(e){return new sle(e)}var jhc,zhc,y2t=bc(()=>{h2t();m2t();jhc=/^([0-9a-f]{32})$/i,zhc=/^[0-9a-f]{16}$/i});function qhc(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var RFr,b2t,NFr=bc(()=>{$Ue();BFr();m2t();y2t();RFr=ile.getInstance(),b2t=function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=RFr.active());var a=!!r?.root;if(a)return new sle;var o=n&&_2t(n);return qhc(o)&&LDe(o)?new sle(o):new sle},e.prototype.startActiveSpan=function(t,r,n,a){var o,l,A;if(!(arguments.length<2)){arguments.length===2?A=r:arguments.length===3?(o=r,A=n):(o=r,l=n,A=a);var f=l??RFr.active(),I=this.startSpan(t,o,f),C=rKe(f,I);return RFr.with(C,A,void 0,I)}},e}()});var $hc,E2t,DFr=bc(()=>{NFr();$hc=new b2t,E2t=function(){function e(t,r,n,a){this._provider=t,this.name=r,this.version=n,this.options=a}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):$hc},e}()});var RLi,NLi=bc(()=>{NFr();RLi=function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new b2t},e}()});var emc,nKe,kFr=bc(()=>{DFr();NLi();emc=new RLi,nKe=function(){function e(){}return e.prototype.getTracer=function(t,r,n){var a;return(a=this.getDelegateTracer(t,r,n))!==null&&a!==void 0?a:new E2t(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:emc},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,n)},e}()});var S2t,DLi=bc(()=>{(function(e){e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(S2t||(S2t={}))});var v2t,kLi=bc(()=>{(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(v2t||(v2t={}))});var B2t,xLi=bc(()=>{(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(B2t||(B2t={}))});function GLi(e){return nmc.test(e)}function FLi(e){return imc.test(e)&&!smc.test(e)}var xFr,tmc,rmc,nmc,imc,smc,ZLi=bc(()=>{xFr="[_0-9a-z-*/]",tmc="[a-z]"+xFr+"{0,255}",rmc="[a-z0-9]"+xFr+"{0,240}@[a-z]"+xFr+"{0,13}",nmc=new RegExp("^(?:"+tmc+"|"+rmc+")$"),imc=/^[ -~]{0,255}[!-~]$/,smc=/,|=/});var LLi,omc,VLi,WLi,OLi,PLi=bc(()=>{ZLi();LLi=32,omc=512,VLi=",",WLi="=",OLi=function(){function e(t){this._internalState=new Map,t&&this._parse(t)}return e.prototype.set=function(t,r){var n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n},e.prototype.unset=function(t){var r=this._clone();return r._internalState.delete(t),r},e.prototype.get=function(t){return this._internalState.get(t)},e.prototype.serialize=function(){var t=this;return this._keys().reduce(function(r,n){return r.push(n+WLi+t.get(n)),r},[]).join(VLi)},e.prototype._parse=function(t){t.length>omc||(this._internalState=t.split(VLi).reverse().reduce(function(r,n){var a=n.trim(),o=a.indexOf(WLi);if(o!==-1){var l=a.slice(0,o),A=a.slice(o+1,n.length);GLi(l)&&FLi(A)&&r.set(l,A)}return r},new Map),this._internalState.size>LLi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,LLi))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var t=new e;return t._internalState=new Map(this._internalState),t},e}()});function MLi(e){return new OLi(e)}var HLi=bc(()=>{PLi()});var GFr,YLi=bc(()=>{$Ue();GFr=ile.getInstance()});var FFr,QLi=bc(()=>{QCe();FFr=MG.instance()});var amc,XLi,JLi=bc(()=>{yFr();amc=function(){function e(){}return e.prototype.getMeter=function(t,r,n){return _Fr},e}(),XLi=new amc});var ZFr,ULi,KLi=bc(()=>{JLi();YCe();QCe();ZFr="metrics",ULi=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalMeterProvider=function(t){return O6(ZFr,t,MG.instance())},e.prototype.getMeterProvider=function(){return NP(ZFr)||XLi},e.prototype.getMeter=function(t,r,n){return this.getMeterProvider().getMeter(t,r,n)},e.prototype.disable=function(){P6(ZFr,MG.instance())},e}()});var LFr,jLi=bc(()=>{KLi();LFr=ULi.getInstance()});var zLi,qLi=bc(()=>{zLi=function(){function e(){}return e.prototype.inject=function(t,r){},e.prototype.extract=function(t,r){return t},e.prototype.fields=function(){return[]},e}()});function WFr(e){return e.getValue(VFr)||void 0}function $Li(){return WFr(ile.getInstance().active())}function e9i(e,t){return e.setValue(VFr,t)}function t9i(e){return e.deleteValue(VFr)}var VFr,r9i=bc(()=>{$Ue();qUe();VFr=FDe("OpenTelemetry Baggage Key")});var OFr,cmc,n9i,i9i=bc(()=>{YCe();qLi();bFr();r9i();hFr();QCe();OFr="propagation",cmc=new zLi,n9i=function(){function e(){this.createBaggage=hLi,this.getBaggage=WFr,this.getActiveBaggage=$Li,this.setBaggage=e9i,this.deleteBaggage=t9i}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=function(t){return O6(OFr,t,MG.instance())},e.prototype.inject=function(t,r,n){return n===void 0&&(n=f2t),this._getGlobalPropagator().inject(t,r,n)},e.prototype.extract=function(t,r,n){return n===void 0&&(n=p2t),this._getGlobalPropagator().extract(t,r,n)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=function(){P6(OFr,MG.instance())},e.prototype._getGlobalPropagator=function(){return NP(OFr)||cmc},e}()});var PFr,s9i=bc(()=>{i9i();PFr=n9i.getInstance()});var MFr,o9i,a9i=bc(()=>{YCe();kFr();y2t();BFr();QCe();MFr="trace",o9i=function(){function e(){this._proxyTracerProvider=new nKe,this.wrapSpanContext=TLi,this.isSpanContextValid=LDe,this.deleteSpan=BLi,this.getSpan=C2t,this.getActiveSpan=vLi,this.getSpanContext=_2t,this.setSpan=rKe,this.setSpanContext=wLi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=O6(MFr,this._proxyTracerProvider,MG.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return NP(MFr)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){P6(MFr,MG.instance()),this._proxyTracerProvider=new nKe},e}()});var HFr,c9i=bc(()=>{a9i();HFr=o9i.getInstance()});var ZI={};Uf(ZI,{DiagConsoleLogger:()=>CLi,DiagLogLevel:()=>ex,INVALID_SPANID:()=>eKe,INVALID_SPAN_CONTEXT:()=>I2t,INVALID_TRACEID:()=>tKe,ProxyTracer:()=>E2t,ProxyTracerProvider:()=>nKe,ROOT_CONTEXT:()=>g2t,SamplingDecision:()=>S2t,SpanKind:()=>v2t,SpanStatusCode:()=>B2t,TraceFlags:()=>ZDe,ValueType:()=>d2t,baggageEntryMetadataFromString:()=>mLi,context:()=>GFr,createContextKey:()=>FDe,createNoopMeter:()=>yLi,createTraceState:()=>MLi,default:()=>lmc,defaultTextMapGetter:()=>p2t,defaultTextMapSetter:()=>f2t,diag:()=>FFr,isSpanContextValid:()=>LDe,isValidSpanId:()=>TFr,isValidTraceId:()=>wFr,metrics:()=>LFr,propagation:()=>PFr,trace:()=>HFr});var lmc,LI=bc(()=>{hFr();qUe();_Li();u2t();yFr();bLi();bFr();DFr();kFr();DLi();kLi();xLi();SFr();HLi();y2t();h2t();YLi();QLi();jLi();s9i();c9i();lmc={context:GFr,diag:FFr,metrics:LFr,propagation:PFr,trace:HFr}});var l9i=H(q0=>{"use strict";Object.defineProperty(q0,"__esModule",{value:!0});q0.MessageTypeValues=q0.RpcGrpcStatusCodeValues=q0.MessagingOperationValues=q0.MessagingDestinationKindValues=q0.HttpFlavorValues=q0.NetHostConnectionSubtypeValues=q0.NetHostConnectionTypeValues=q0.NetTransportValues=q0.FaasInvokedProviderValues=q0.FaasDocumentOperationValues=q0.FaasTriggerValues=q0.DbCassandraConsistencyLevelValues=q0.DbSystemValues=q0.SemanticAttributes=void 0;q0.SemanticAttributes={AWS_LAMBDA_INVOKED_ARN:"aws.lambda.invoked_arn",DB_SYSTEM:"db.system",DB_CONNECTION_STRING:"db.connection_string",DB_USER:"db.user",DB_JDBC_DRIVER_CLASSNAME:"db.jdbc.driver_classname",DB_NAME:"db.name",DB_STATEMENT:"db.statement",DB_OPERATION:"db.operation",DB_MSSQL_INSTANCE_NAME:"db.mssql.instance_name",DB_CASSANDRA_KEYSPACE:"db.cassandra.keyspace",DB_CASSANDRA_PAGE_SIZE:"db.cassandra.page_size",DB_CASSANDRA_CONSISTENCY_LEVEL:"db.cassandra.consistency_level",DB_CASSANDRA_TABLE:"db.cassandra.table",DB_CASSANDRA_IDEMPOTENCE:"db.cassandra.idempotence",DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:"db.cassandra.speculative_execution_count",DB_CASSANDRA_COORDINATOR_ID:"db.cassandra.coordinator.id",DB_CASSANDRA_COORDINATOR_DC:"db.cassandra.coordinator.dc",DB_HBASE_NAMESPACE:"db.hbase.namespace",DB_REDIS_DATABASE_INDEX:"db.redis.database_index",DB_MONGODB_COLLECTION:"db.mongodb.collection",DB_SQL_TABLE:"db.sql.table",EXCEPTION_TYPE:"exception.type",EXCEPTION_MESSAGE:"exception.message",EXCEPTION_STACKTRACE:"exception.stacktrace",EXCEPTION_ESCAPED:"exception.escaped",FAAS_TRIGGER:"faas.trigger",FAAS_EXECUTION:"faas.execution",FAAS_DOCUMENT_COLLECTION:"faas.document.collection",FAAS_DOCUMENT_OPERATION:"faas.document.operation",FAAS_DOCUMENT_TIME:"faas.document.time",FAAS_DOCUMENT_NAME:"faas.document.name",FAAS_TIME:"faas.time",FAAS_CRON:"faas.cron",FAAS_COLDSTART:"faas.coldstart",FAAS_INVOKED_NAME:"faas.invoked_name",FAAS_INVOKED_PROVIDER:"faas.invoked_provider",FAAS_INVOKED_REGION:"faas.invoked_region",NET_TRANSPORT:"net.transport",NET_PEER_IP:"net.peer.ip",NET_PEER_PORT:"net.peer.port",NET_PEER_NAME:"net.peer.name",NET_HOST_IP:"net.host.ip",NET_HOST_PORT:"net.host.port",NET_HOST_NAME:"net.host.name",NET_HOST_CONNECTION_TYPE:"net.host.connection.type",NET_HOST_CONNECTION_SUBTYPE:"net.host.connection.subtype",NET_HOST_CARRIER_NAME:"net.host.carrier.name",NET_HOST_CARRIER_MCC:"net.host.carrier.mcc",NET_HOST_CARRIER_MNC:"net.host.carrier.mnc",NET_HOST_CARRIER_ICC:"net.host.carrier.icc",PEER_SERVICE:"peer.service",ENDUSER_ID:"enduser.id",ENDUSER_ROLE:"enduser.role",ENDUSER_SCOPE:"enduser.scope",THREAD_ID:"thread.id",THREAD_NAME:"thread.name",CODE_FUNCTION:"code.function",CODE_NAMESPACE:"code.namespace",CODE_FILEPATH:"code.filepath",CODE_LINENO:"code.lineno",HTTP_METHOD:"http.method",HTTP_URL:"http.url",HTTP_TARGET:"http.target",HTTP_HOST:"http.host",HTTP_SCHEME:"http.scheme",HTTP_STATUS_CODE:"http.status_code",HTTP_FLAVOR:"http.flavor",HTTP_USER_AGENT:"http.user_agent",HTTP_REQUEST_CONTENT_LENGTH:"http.request_content_length",HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:"http.request_content_length_uncompressed",HTTP_RESPONSE_CONTENT_LENGTH:"http.response_content_length",HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:"http.response_content_length_uncompressed",HTTP_SERVER_NAME:"http.server_name",HTTP_ROUTE:"http.route",HTTP_CLIENT_IP:"http.client_ip",AWS_DYNAMODB_TABLE_NAMES:"aws.dynamodb.table_names",AWS_DYNAMODB_CONSUMED_CAPACITY:"aws.dynamodb.consumed_capacity",AWS_DYNAMODB_ITEM_COLLECTION_METRICS:"aws.dynamodb.item_collection_metrics",AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:"aws.dynamodb.provisioned_read_capacity",AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:"aws.dynamodb.provisioned_write_capacity",AWS_DYNAMODB_CONSISTENT_READ:"aws.dynamodb.consistent_read",AWS_DYNAMODB_PROJECTION:"aws.dynamodb.projection",AWS_DYNAMODB_LIMIT:"aws.dynamodb.limit",AWS_DYNAMODB_ATTRIBUTES_TO_GET:"aws.dynamodb.attributes_to_get",AWS_DYNAMODB_INDEX_NAME:"aws.dynamodb.index_name",AWS_DYNAMODB_SELECT:"aws.dynamodb.select",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:"aws.dynamodb.global_secondary_indexes",AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:"aws.dynamodb.local_secondary_indexes",AWS_DYNAMODB_EXCLUSIVE_START_TABLE:"aws.dynamodb.exclusive_start_table",AWS_DYNAMODB_TABLE_COUNT:"aws.dynamodb.table_count",AWS_DYNAMODB_SCAN_FORWARD:"aws.dynamodb.scan_forward",AWS_DYNAMODB_SEGMENT:"aws.dynamodb.segment",AWS_DYNAMODB_TOTAL_SEGMENTS:"aws.dynamodb.total_segments",AWS_DYNAMODB_COUNT:"aws.dynamodb.count",AWS_DYNAMODB_SCANNED_COUNT:"aws.dynamodb.scanned_count",AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:"aws.dynamodb.attribute_definitions",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:"aws.dynamodb.global_secondary_index_updates",MESSAGING_SYSTEM:"messaging.system",MESSAGING_DESTINATION:"messaging.destination",MESSAGING_DESTINATION_KIND:"messaging.destination_kind",MESSAGING_TEMP_DESTINATION:"messaging.temp_destination",MESSAGING_PROTOCOL:"messaging.protocol",MESSAGING_PROTOCOL_VERSION:"messaging.protocol_version",MESSAGING_URL:"messaging.url",MESSAGING_MESSAGE_ID:"messaging.message_id",MESSAGING_CONVERSATION_ID:"messaging.conversation_id",MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:"messaging.message_payload_size_bytes",MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:"messaging.message_payload_compressed_size_bytes",MESSAGING_OPERATION:"messaging.operation",MESSAGING_CONSUMER_ID:"messaging.consumer_id",MESSAGING_RABBITMQ_ROUTING_KEY:"messaging.rabbitmq.routing_key",MESSAGING_KAFKA_MESSAGE_KEY:"messaging.kafka.message_key",MESSAGING_KAFKA_CONSUMER_GROUP:"messaging.kafka.consumer_group",MESSAGING_KAFKA_CLIENT_ID:"messaging.kafka.client_id",MESSAGING_KAFKA_PARTITION:"messaging.kafka.partition",MESSAGING_KAFKA_TOMBSTONE:"messaging.kafka.tombstone",RPC_SYSTEM:"rpc.system",RPC_SERVICE:"rpc.service",RPC_METHOD:"rpc.method",RPC_GRPC_STATUS_CODE:"rpc.grpc.status_code",RPC_JSONRPC_VERSION:"rpc.jsonrpc.version",RPC_JSONRPC_REQUEST_ID:"rpc.jsonrpc.request_id",RPC_JSONRPC_ERROR_CODE:"rpc.jsonrpc.error_code",RPC_JSONRPC_ERROR_MESSAGE:"rpc.jsonrpc.error_message",MESSAGE_TYPE:"message.type",MESSAGE_ID:"message.id",MESSAGE_COMPRESSED_SIZE:"message.compressed_size",MESSAGE_UNCOMPRESSED_SIZE:"message.uncompressed_size"};q0.DbSystemValues={OTHER_SQL:"other_sql",MSSQL:"mssql",MYSQL:"mysql",ORACLE:"oracle",DB2:"db2",POSTGRESQL:"postgresql",REDSHIFT:"redshift",HIVE:"hive",CLOUDSCAPE:"cloudscape",HSQLDB:"hsqldb",PROGRESS:"progress",MAXDB:"maxdb",HANADB:"hanadb",INGRES:"ingres",FIRSTSQL:"firstsql",EDB:"edb",CACHE:"cache",ADABAS:"adabas",FIREBIRD:"firebird",DERBY:"derby",FILEMAKER:"filemaker",INFORMIX:"informix",INSTANTDB:"instantdb",INTERBASE:"interbase",MARIADB:"mariadb",NETEZZA:"netezza",PERVASIVE:"pervasive",POINTBASE:"pointbase",SQLITE:"sqlite",SYBASE:"sybase",TERADATA:"teradata",VERTICA:"vertica",H2:"h2",COLDFUSION:"coldfusion",CASSANDRA:"cassandra",HBASE:"hbase",MONGODB:"mongodb",REDIS:"redis",COUCHBASE:"couchbase",COUCHDB:"couchdb",COSMOSDB:"cosmosdb",DYNAMODB:"dynamodb",NEO4J:"neo4j",GEODE:"geode",ELASTICSEARCH:"elasticsearch",MEMCACHED:"memcached",COCKROACHDB:"cockroachdb"};q0.DbCassandraConsistencyLevelValues={ALL:"all",EACH_QUORUM:"each_quorum",QUORUM:"quorum",LOCAL_QUORUM:"local_quorum",ONE:"one",TWO:"two",THREE:"three",LOCAL_ONE:"local_one",ANY:"any",SERIAL:"serial",LOCAL_SERIAL:"local_serial"};q0.FaasTriggerValues={DATASOURCE:"datasource",HTTP:"http",PUBSUB:"pubsub",TIMER:"timer",OTHER:"other"};q0.FaasDocumentOperationValues={INSERT:"insert",EDIT:"edit",DELETE:"delete"};q0.FaasInvokedProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};q0.NetTransportValues={IP_TCP:"ip_tcp",IP_UDP:"ip_udp",IP:"ip",UNIX:"unix",PIPE:"pipe",INPROC:"inproc",OTHER:"other"};q0.NetHostConnectionTypeValues={WIFI:"wifi",WIRED:"wired",CELL:"cell",UNAVAILABLE:"unavailable",UNKNOWN:"unknown"};q0.NetHostConnectionSubtypeValues={GPRS:"gprs",EDGE:"edge",UMTS:"umts",CDMA:"cdma",EVDO_0:"evdo_0",EVDO_A:"evdo_a",CDMA2000_1XRTT:"cdma2000_1xrtt",HSDPA:"hsdpa",HSUPA:"hsupa",HSPA:"hspa",IDEN:"iden",EVDO_B:"evdo_b",LTE:"lte",EHRPD:"ehrpd",HSPAP:"hspap",GSM:"gsm",TD_SCDMA:"td_scdma",IWLAN:"iwlan",NR:"nr",NRNSA:"nrnsa",LTE_CA:"lte_ca"};q0.HttpFlavorValues={HTTP_1_0:"1.0",HTTP_1_1:"1.1",HTTP_2_0:"2.0",SPDY:"SPDY",QUIC:"QUIC"};q0.MessagingDestinationKindValues={QUEUE:"queue",TOPIC:"topic"};q0.MessagingOperationValues={RECEIVE:"receive",PROCESS:"process"};q0.RpcGrpcStatusCodeValues={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15,UNAUTHENTICATED:16};q0.MessageTypeValues={SENT:"SENT",RECEIVED:"RECEIVED"}});var u9i=H(JCe=>{"use strict";var umc=JCe&&JCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),gmc=JCe&&JCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&umc(t,e,r)};Object.defineProperty(JCe,"__esModule",{value:!0});gmc(l9i(),JCe)});var g9i=H(HG=>{"use strict";Object.defineProperty(HG,"__esModule",{value:!0});HG.TelemetrySdkLanguageValues=HG.OsTypeValues=HG.HostArchValues=HG.AwsEcsLaunchtypeValues=HG.CloudPlatformValues=HG.CloudProviderValues=HG.SemanticResourceAttributes=void 0;HG.SemanticResourceAttributes={CLOUD_PROVIDER:"cloud.provider",CLOUD_ACCOUNT_ID:"cloud.account.id",CLOUD_REGION:"cloud.region",CLOUD_AVAILABILITY_ZONE:"cloud.availability_zone",CLOUD_PLATFORM:"cloud.platform",AWS_ECS_CONTAINER_ARN:"aws.ecs.container.arn",AWS_ECS_CLUSTER_ARN:"aws.ecs.cluster.arn",AWS_ECS_LAUNCHTYPE:"aws.ecs.launchtype",AWS_ECS_TASK_ARN:"aws.ecs.task.arn",AWS_ECS_TASK_FAMILY:"aws.ecs.task.family",AWS_ECS_TASK_REVISION:"aws.ecs.task.revision",AWS_EKS_CLUSTER_ARN:"aws.eks.cluster.arn",AWS_LOG_GROUP_NAMES:"aws.log.group.names",AWS_LOG_GROUP_ARNS:"aws.log.group.arns",AWS_LOG_STREAM_NAMES:"aws.log.stream.names",AWS_LOG_STREAM_ARNS:"aws.log.stream.arns",CONTAINER_NAME:"container.name",CONTAINER_ID:"container.id",CONTAINER_RUNTIME:"container.runtime",CONTAINER_IMAGE_NAME:"container.image.name",CONTAINER_IMAGE_TAG:"container.image.tag",DEPLOYMENT_ENVIRONMENT:"deployment.environment",DEVICE_ID:"device.id",DEVICE_MODEL_IDENTIFIER:"device.model.identifier",DEVICE_MODEL_NAME:"device.model.name",FAAS_NAME:"faas.name",FAAS_ID:"faas.id",FAAS_VERSION:"faas.version",FAAS_INSTANCE:"faas.instance",FAAS_MAX_MEMORY:"faas.max_memory",HOST_ID:"host.id",HOST_NAME:"host.name",HOST_TYPE:"host.type",HOST_ARCH:"host.arch",HOST_IMAGE_NAME:"host.image.name",HOST_IMAGE_ID:"host.image.id",HOST_IMAGE_VERSION:"host.image.version",K8S_CLUSTER_NAME:"k8s.cluster.name",K8S_NODE_NAME:"k8s.node.name",K8S_NODE_UID:"k8s.node.uid",K8S_NAMESPACE_NAME:"k8s.namespace.name",K8S_POD_UID:"k8s.pod.uid",K8S_POD_NAME:"k8s.pod.name",K8S_CONTAINER_NAME:"k8s.container.name",K8S_REPLICASET_UID:"k8s.replicaset.uid",K8S_REPLICASET_NAME:"k8s.replicaset.name",K8S_DEPLOYMENT_UID:"k8s.deployment.uid",K8S_DEPLOYMENT_NAME:"k8s.deployment.name",K8S_STATEFULSET_UID:"k8s.statefulset.uid",K8S_STATEFULSET_NAME:"k8s.statefulset.name",K8S_DAEMONSET_UID:"k8s.daemonset.uid",K8S_DAEMONSET_NAME:"k8s.daemonset.name",K8S_JOB_UID:"k8s.job.uid",K8S_JOB_NAME:"k8s.job.name",K8S_CRONJOB_UID:"k8s.cronjob.uid",K8S_CRONJOB_NAME:"k8s.cronjob.name",OS_TYPE:"os.type",OS_DESCRIPTION:"os.description",OS_NAME:"os.name",OS_VERSION:"os.version",PROCESS_PID:"process.pid",PROCESS_EXECUTABLE_NAME:"process.executable.name",PROCESS_EXECUTABLE_PATH:"process.executable.path",PROCESS_COMMAND:"process.command",PROCESS_COMMAND_LINE:"process.command_line",PROCESS_COMMAND_ARGS:"process.command_args",PROCESS_OWNER:"process.owner",PROCESS_RUNTIME_NAME:"process.runtime.name",PROCESS_RUNTIME_VERSION:"process.runtime.version",PROCESS_RUNTIME_DESCRIPTION:"process.runtime.description",SERVICE_NAME:"service.name",SERVICE_NAMESPACE:"service.namespace",SERVICE_INSTANCE_ID:"service.instance.id",SERVICE_VERSION:"service.version",TELEMETRY_SDK_NAME:"telemetry.sdk.name",TELEMETRY_SDK_LANGUAGE:"telemetry.sdk.language",TELEMETRY_SDK_VERSION:"telemetry.sdk.version",TELEMETRY_AUTO_VERSION:"telemetry.auto.version",WEBENGINE_NAME:"webengine.name",WEBENGINE_VERSION:"webengine.version",WEBENGINE_DESCRIPTION:"webengine.description"};HG.CloudProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};HG.CloudPlatformValues={ALIBABA_CLOUD_ECS:"alibaba_cloud_ecs",ALIBABA_CLOUD_FC:"alibaba_cloud_fc",AWS_EC2:"aws_ec2",AWS_ECS:"aws_ecs",AWS_EKS:"aws_eks",AWS_LAMBDA:"aws_lambda",AWS_ELASTIC_BEANSTALK:"aws_elastic_beanstalk",AZURE_VM:"azure_vm",AZURE_CONTAINER_INSTANCES:"azure_container_instances",AZURE_AKS:"azure_aks",AZURE_FUNCTIONS:"azure_functions",AZURE_APP_SERVICE:"azure_app_service",GCP_COMPUTE_ENGINE:"gcp_compute_engine",GCP_CLOUD_RUN:"gcp_cloud_run",GCP_KUBERNETES_ENGINE:"gcp_kubernetes_engine",GCP_CLOUD_FUNCTIONS:"gcp_cloud_functions",GCP_APP_ENGINE:"gcp_app_engine"};HG.AwsEcsLaunchtypeValues={EC2:"ec2",FARGATE:"fargate"};HG.HostArchValues={AMD64:"amd64",ARM32:"arm32",ARM64:"arm64",IA64:"ia64",PPC32:"ppc32",PPC64:"ppc64",X86:"x86"};HG.OsTypeValues={WINDOWS:"windows",LINUX:"linux",DARWIN:"darwin",FREEBSD:"freebsd",NETBSD:"netbsd",OPENBSD:"openbsd",DRAGONFLYBSD:"dragonflybsd",HPUX:"hpux",AIX:"aix",SOLARIS:"solaris",Z_OS:"z_os"};HG.TelemetrySdkLanguageValues={CPP:"cpp",DOTNET:"dotnet",ERLANG:"erlang",GO:"go",JAVA:"java",NODEJS:"nodejs",PHP:"php",PYTHON:"python",RUBY:"ruby",WEBJS:"webjs"}});var A9i=H(UCe=>{"use strict";var Amc=UCe&&UCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),dmc=UCe&&UCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Amc(t,e,r)};Object.defineProperty(UCe,"__esModule",{value:!0});dmc(g9i(),UCe)});var ale=H(ole=>{"use strict";var pmc=ole&&ole.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),d9i=ole&&ole.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&pmc(t,e,r)};Object.defineProperty(ole,"__esModule",{value:!0});d9i(u9i(),ole);d9i(A9i(),ole)});var iKe=H(cle=>{"use strict";Object.defineProperty(cle,"__esModule",{value:!0});cle.isTracingSuppressed=cle.unsuppressTracing=cle.suppressTracing=void 0;var fmc=(LI(),vi(ZI)),YFr=(0,fmc.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function Imc(e){return e.setValue(YFr,!0)}cle.suppressTracing=Imc;function hmc(e){return e.deleteValue(YFr)}cle.unsuppressTracing=hmc;function mmc(e){return e.getValue(YFr)===!0}cle.isTracingSuppressed=mmc});var QFr=H(YG=>{"use strict";Object.defineProperty(YG,"__esModule",{value:!0});YG.BAGGAGE_MAX_TOTAL_LENGTH=YG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=YG.BAGGAGE_MAX_NAME_VALUE_PAIRS=YG.BAGGAGE_HEADER=YG.BAGGAGE_ITEMS_SEPARATOR=YG.BAGGAGE_PROPERTIES_SEPARATOR=YG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;YG.BAGGAGE_KEY_PAIR_SEPARATOR="=";YG.BAGGAGE_PROPERTIES_SEPARATOR=";";YG.BAGGAGE_ITEMS_SEPARATOR=",";YG.BAGGAGE_HEADER="baggage";YG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;YG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;YG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var XFr=H(M6=>{"use strict";Object.defineProperty(M6,"__esModule",{value:!0});M6.parseKeyPairsIntoRecord=M6.parsePairKeyValue=M6.getKeyPairs=M6.serializeKeyPairs=void 0;var Cmc=(LI(),vi(ZI)),KCe=QFr();function _mc(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?KCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>KCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}M6.serializeKeyPairs=_mc;function ymc(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=KCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}M6.getKeyPairs=ymc;function p9i(e){let t=e.split(KCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(KCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,Cmc.baggageEntryMetadataFromString)(t.join(KCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}M6.parsePairKeyValue=p9i;function bmc(e){return typeof e!="string"||e.length===0?{}:e.split(KCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>p9i(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}M6.parseKeyPairsIntoRecord=bmc});var f9i=H(w2t=>{"use strict";Object.defineProperty(w2t,"__esModule",{value:!0});w2t.W3CBaggagePropagator=void 0;var JFr=(LI(),vi(ZI)),Emc=iKe(),jCe=QFr(),UFr=XFr(),KFr=class{inject(t,r,n){let a=JFr.propagation.getBaggage(t);if(!a||(0,Emc.isTracingSuppressed)(t))return;let o=(0,UFr.getKeyPairs)(a).filter(A=>A.length<=jCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,jCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,UFr.serializeKeyPairs)(o);l.length>0&&n.set(r,jCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,jCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(jCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(jCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,UFr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:JFr.propagation.setBaggage(t,JFr.propagation.createBaggage(l))}fields(){return[jCe.BAGGAGE_HEADER]}};w2t.W3CBaggagePropagator=KFr});var I9i=H(T2t=>{"use strict";Object.defineProperty(T2t,"__esModule",{value:!0});T2t.AnchoredClock=void 0;var jFr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};T2t.AnchoredClock=jFr});var y9i=H(lle=>{"use strict";Object.defineProperty(lle,"__esModule",{value:!0});lle.isAttributeValue=lle.isAttributeKey=lle.sanitizeAttributes=void 0;var h9i=(LI(),vi(ZI));function Smc(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!m9i(r)){h9i.diag.warn(`Invalid attribute key: ${r}`);continue}if(!C9i(n)){h9i.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}lle.sanitizeAttributes=Smc;function m9i(e){return typeof e=="string"&&e.length>0}lle.isAttributeKey=m9i;function C9i(e){return e==null?!0:Array.isArray(e)?vmc(e):_9i(e)}lle.isAttributeValue=C9i;function vmc(e){let t;for(let r of e)if(r!=null){if(!t){if(_9i(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function _9i(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var zFr=H(R2t=>{"use strict";Object.defineProperty(R2t,"__esModule",{value:!0});R2t.loggingErrorHandler=void 0;var Bmc=(LI(),vi(ZI));function wmc(){return e=>{Bmc.diag.error(Tmc(e))}}R2t.loggingErrorHandler=wmc;function Tmc(e){return typeof e=="string"?e:JSON.stringify(Rmc(e))}function Rmc(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var qFr=H(VDe=>{"use strict";Object.defineProperty(VDe,"__esModule",{value:!0});VDe.globalErrorHandler=VDe.setGlobalErrorHandler=void 0;var Nmc=zFr(),b9i=(0,Nmc.loggingErrorHandler)();function Dmc(e){b9i=e}VDe.setGlobalErrorHandler=Dmc;function kmc(e){try{b9i(e)}catch{}}VDe.globalErrorHandler=kmc});var $Fr=H(sKe=>{"use strict";Object.defineProperty(sKe,"__esModule",{value:!0});sKe.TracesSamplerValues=void 0;var xmc;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(xmc=sKe.TracesSamplerValues||(sKe.TracesSamplerValues={}))});var E9i=H(N2t=>{"use strict";Object.defineProperty(N2t,"__esModule",{value:!0});N2t._globalThis=void 0;N2t._globalThis=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{}});var tZr=H(U1=>{"use strict";Object.defineProperty(U1,"__esModule",{value:!0});U1.getEnvWithoutDefaults=U1.parseEnvironment=U1.DEFAULT_ENVIRONMENT=U1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=U1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=U1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=U1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var ule=(LI(),vi(ZI)),Gmc=$Fr(),Fmc=E9i(),Zmc=",",Lmc=["OTEL_SDK_DISABLED"];function Vmc(e){return Lmc.indexOf(e)>-1}var Wmc=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function Omc(e){return Wmc.indexOf(e)>-1}var Pmc=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS"];function Mmc(e){return Pmc.indexOf(e)>-1}U1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;U1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;U1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;U1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;U1.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:ule.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:U1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:U1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:U1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:U1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:U1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:U1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:U1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:U1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:Gmc.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative"};function Hmc(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function Ymc(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function Qmc(e,t,r,n=Zmc){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var Xmc={ALL:ule.DiagLogLevel.ALL,VERBOSE:ule.DiagLogLevel.VERBOSE,DEBUG:ule.DiagLogLevel.DEBUG,INFO:ule.DiagLogLevel.INFO,WARN:ule.DiagLogLevel.WARN,ERROR:ule.DiagLogLevel.ERROR,NONE:ule.DiagLogLevel.NONE};function Jmc(e,t,r){let n=r[e];if(typeof n=="string"){let a=Xmc[n.toUpperCase()];a!=null&&(t[e]=a)}}function eZr(e){let t={};for(let r in U1.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":Jmc(n,t,e);break;default:if(Vmc(n))Hmc(n,t,e);else if(Omc(n))Ymc(n,t,e);else if(Mmc(n))Qmc(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}U1.parseEnvironment=eZr;function Umc(){return typeof process<"u"&&process&&process.env?eZr(process.env):eZr(Fmc._globalThis)}U1.getEnvWithoutDefaults=Umc});var v9i=H(D2t=>{"use strict";Object.defineProperty(D2t,"__esModule",{value:!0});D2t.getEnv=void 0;var Kmc=Et("os"),S9i=tZr();function jmc(){let e=(0,S9i.parseEnvironment)(process.env);return Object.assign({HOSTNAME:Kmc.hostname()},S9i.DEFAULT_ENVIRONMENT,e)}D2t.getEnv=jmc});var B9i=H(k2t=>{"use strict";Object.defineProperty(k2t,"__esModule",{value:!0});k2t._globalThis=void 0;k2t._globalThis=typeof globalThis=="object"?globalThis:global});var T9i=H(x2t=>{"use strict";Object.defineProperty(x2t,"__esModule",{value:!0});x2t.hexToBase64=void 0;function w9i(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}var zmc=Buffer.alloc(8),qmc=Buffer.alloc(16);function $mc(e){let t;e.length===16?t=zmc:e.length===32?t=qmc:t=Buffer.alloc(e.length/2);let r=0;for(let n=0;n{"use strict";Object.defineProperty(F2t,"__esModule",{value:!0});F2t.RandomIdGenerator=void 0;var eCc=8,N9i=16,rZr=class{constructor(){this.generateTraceId=R9i(N9i),this.generateSpanId=R9i(eCc)}};F2t.RandomIdGenerator=rZr;var G2t=Buffer.allocUnsafe(N9i);function R9i(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(G2t[e-1]=1);return G2t.toString("hex",0,e)}}});var k9i=H(Z2t=>{"use strict";Object.defineProperty(Z2t,"__esModule",{value:!0});Z2t.otperformance=void 0;var tCc=Et("perf_hooks");Z2t.otperformance=tCc.performance});var V2t=H(L2t=>{"use strict";Object.defineProperty(L2t,"__esModule",{value:!0});L2t.VERSION=void 0;L2t.VERSION="1.16.0"});var x9i=H(W2t=>{"use strict";Object.defineProperty(W2t,"__esModule",{value:!0});W2t.SDK_INFO=void 0;var rCc=V2t(),oKe=ale();W2t.SDK_INFO={[oKe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:"opentelemetry",[oKe.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"node",[oKe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:oKe.TelemetrySdkLanguageValues.NODEJS,[oKe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:rCc.VERSION}});var G9i=H(O2t=>{"use strict";Object.defineProperty(O2t,"__esModule",{value:!0});O2t.unrefTimer=void 0;function nCc(e){e.unref()}O2t.unrefTimer=nCc});var F9i=H(DP=>{"use strict";var iCc=DP&&DP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),zCe=DP&&DP.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&iCc(t,e,r)};Object.defineProperty(DP,"__esModule",{value:!0});zCe(v9i(),DP);zCe(B9i(),DP);zCe(T9i(),DP);zCe(D9i(),DP);zCe(k9i(),DP);zCe(x9i(),DP);zCe(G9i(),DP)});var nZr=H(qCe=>{"use strict";var sCc=qCe&&qCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),oCc=qCe&&qCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&sCc(t,e,r)};Object.defineProperty(qCe,"__esModule",{value:!0});oCc(F9i(),qCe)});var W9i=H(HE=>{"use strict";Object.defineProperty(HE,"__esModule",{value:!0});HE.addHrTimes=HE.isTimeInput=HE.isTimeInputHrTime=HE.hrTimeToMicroseconds=HE.hrTimeToMilliseconds=HE.hrTimeToNanoseconds=HE.hrTimeToTimeStamp=HE.hrTimeDuration=HE.timeInputToHrTime=HE.hrTime=HE.getTimeOrigin=HE.millisToHrTime=void 0;var iZr=nZr(),Z9i=9,aCc=6,cCc=Math.pow(10,aCc),P2t=Math.pow(10,Z9i);function aKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*cCc);return[r,n]}HE.millisToHrTime=aKe;function sZr(){let e=iZr.otperformance.timeOrigin;if(typeof e!="number"){let t=iZr.otperformance;e=t.timing&&t.timing.fetchStart}return e}HE.getTimeOrigin=sZr;function L9i(e){let t=aKe(sZr()),r=aKe(typeof e=="number"?e:iZr.otperformance.now());return V9i(t,r)}HE.hrTime=L9i;function lCc(e){if(oZr(e))return e;if(typeof e=="number")return e=P2t&&(r[1]-=P2t,r[0]+=1),r}HE.addHrTimes=V9i});var P9i=H(O9i=>{"use strict";Object.defineProperty(O9i,"__esModule",{value:!0})});var M9i=H(cKe=>{"use strict";Object.defineProperty(cKe,"__esModule",{value:!0});cKe.ExportResultCode=void 0;var ICc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(ICc=cKe.ExportResultCode||(cKe.ExportResultCode={}))});var Y9i=H(M2t=>{"use strict";Object.defineProperty(M2t,"__esModule",{value:!0});M2t.CompositePropagator=void 0;var H9i=(LI(),vi(ZI)),aZr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){H9i.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){H9i.diag.warn(`Failed to inject with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};M2t.CompositePropagator=aZr});var Q9i=H(WDe=>{"use strict";Object.defineProperty(WDe,"__esModule",{value:!0});WDe.validateValue=WDe.validateKey=void 0;var cZr="[_0-9a-z-*/]",hCc=`[a-z]${cZr}{0,255}`,mCc=`[a-z0-9]${cZr}{0,240}@[a-z]${cZr}{0,13}`,CCc=new RegExp(`^(?:${hCc}|${mCc})$`),_Cc=/^[ -~]{0,255}[!-~]$/,yCc=/,|=/;function bCc(e){return CCc.test(e)}WDe.validateKey=bCc;function ECc(e){return _Cc.test(e)&&!yCc.test(e)}WDe.validateValue=ECc});var uZr=H(H2t=>{"use strict";Object.defineProperty(H2t,"__esModule",{value:!0});H2t.TraceState=void 0;var X9i=Q9i(),J9i=32,SCc=512,U9i=",",K9i="=",lZr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+K9i+this.get(r)),t),[]).join(U9i)}_parse(t){t.length>SCc||(this._internalState=t.split(U9i).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(K9i);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,X9i.validateKey)(l)&&(0,X9i.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>J9i&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,J9i))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};H2t.TraceState=lZr});var z9i=H(QG=>{"use strict";Object.defineProperty(QG,"__esModule",{value:!0});QG.W3CTraceContextPropagator=QG.parseTraceParent=QG.TRACE_STATE_HEADER=QG.TRACE_PARENT_HEADER=void 0;var Y2t=(LI(),vi(ZI)),vCc=iKe(),BCc=uZr();QG.TRACE_PARENT_HEADER="traceparent";QG.TRACE_STATE_HEADER="tracestate";var wCc="00",TCc="(?!ff)[\\da-f]{2}",RCc="(?![0]{32})[\\da-f]{32}",NCc="(?![0]{16})[\\da-f]{16}",DCc="[\\da-f]{2}",kCc=new RegExp(`^\\s?(${TCc})-(${RCc})-(${NCc})-(${DCc})(-.*)?\\s?$`);function j9i(e){let t=kCc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}QG.parseTraceParent=j9i;var gZr=class{inject(t,r,n){let a=Y2t.trace.getSpanContext(t);if(!a||(0,vCc.isTracingSuppressed)(t)||!(0,Y2t.isSpanContextValid)(a))return;let o=`${wCc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||Y2t.TraceFlags.NONE).toString(16)}`;n.set(r,QG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,QG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,QG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=j9i(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,QG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new BCc.TraceState(typeof f=="string"?f:void 0)}return Y2t.trace.setSpanContext(t,l)}fields(){return[QG.TRACE_PARENT_HEADER,QG.TRACE_STATE_HEADER]}};QG.W3CTraceContextPropagator=gZr});var $9i=H(q9i=>{"use strict";Object.defineProperty(q9i,"__esModule",{value:!0})});var eVi=H(S4=>{"use strict";Object.defineProperty(S4,"__esModule",{value:!0});S4.getRPCMetadata=S4.deleteRPCMetadata=S4.setRPCMetadata=S4.RPCType=void 0;var xCc=(LI(),vi(ZI)),AZr=(0,xCc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),GCc;(function(e){e.HTTP="http"})(GCc=S4.RPCType||(S4.RPCType={}));function FCc(e,t){return e.setValue(AZr,t)}S4.setRPCMetadata=FCc;function ZCc(e){return e.deleteValue(AZr)}S4.deleteRPCMetadata=ZCc;function LCc(e){return e.getValue(AZr)}S4.getRPCMetadata=LCc});var pZr=H(Q2t=>{"use strict";Object.defineProperty(Q2t,"__esModule",{value:!0});Q2t.AlwaysOffSampler=void 0;var VCc=(LI(),vi(ZI)),dZr=class{shouldSample(){return{decision:VCc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};Q2t.AlwaysOffSampler=dZr});var IZr=H(X2t=>{"use strict";Object.defineProperty(X2t,"__esModule",{value:!0});X2t.AlwaysOnSampler=void 0;var WCc=(LI(),vi(ZI)),fZr=class{shouldSample(){return{decision:WCc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};X2t.AlwaysOnSampler=fZr});var rVi=H(U2t=>{"use strict";Object.defineProperty(U2t,"__esModule",{value:!0});U2t.ParentBasedSampler=void 0;var J2t=(LI(),vi(ZI)),OCc=qFr(),tVi=pZr(),hZr=IZr(),mZr=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,OCc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new hZr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new hZr.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new tVi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new hZr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new tVi.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=J2t.trace.getSpanContext(t);return!A||!(0,J2t.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&J2t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&J2t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};U2t.ParentBasedSampler=mZr});var nVi=H(K2t=>{"use strict";Object.defineProperty(K2t,"__esModule",{value:!0});K2t.TraceIdRatioBasedSampler=void 0;var CZr=(LI(),vi(ZI)),_Zr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,CZr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};K2t.TraceIdRatioBasedSampler=_Zr});var cVi=H(j2t=>{"use strict";Object.defineProperty(j2t,"__esModule",{value:!0});j2t.isPlainObject=void 0;var PCc="[object Object]",MCc="[object Null]",HCc="[object Undefined]",YCc=Function.prototype,iVi=YCc.toString,QCc=iVi.call(Object),XCc=JCc(Object.getPrototypeOf,Object),sVi=Object.prototype,oVi=sVi.hasOwnProperty,$Ce=Symbol?Symbol.toStringTag:void 0,aVi=sVi.toString;function JCc(e,t){return function(r){return e(t(r))}}function UCc(e){if(!KCc(e)||jCc(e)!==PCc)return!1;let t=XCc(e);if(t===null)return!0;let r=oVi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&iVi.call(r)===QCc}j2t.isPlainObject=UCc;function KCc(e){return e!=null&&typeof e=="object"}function jCc(e){return e==null?e===void 0?HCc:MCc:$Ce&&$Ce in Object(e)?zCc(e):qCc(e)}function zCc(e){let t=oVi.call(e,$Ce),r=e[$Ce],n=!1;try{e[$Ce]=void 0,n=!0}catch{}let a=aVi.call(e);return n&&(t?e[$Ce]=r:delete e[$Ce]),a}function qCc(e){return aVi.call(e)}});var dVi=H($2t=>{"use strict";Object.defineProperty($2t,"__esModule",{value:!0});$2t.merge=void 0;var lVi=cVi(),$Cc=20;function e_c(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=gVi(t,e.shift(),0,r);return t}$2t.merge=e_c;function yZr(e){return q2t(e)?e.slice():e}function gVi(e,t,r=0,n){let a;if(!(r>$Cc)){if(r++,z2t(e)||z2t(t)||AVi(t))a=yZr(t);else if(q2t(e)){if(a=e.slice(),q2t(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(uVi(e,f,n)||uVi(t,f,n))delete a[f];else{if(lKe(C)&&lKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=gVi(a[f],I,r,n)}}}}else a=t;return a}}function uVi(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function t_c(e,t){return!(!(0,lVi.isPlainObject)(e)||!(0,lVi.isPlainObject)(t))}});var pVi=H(ODe=>{"use strict";Object.defineProperty(ODe,"__esModule",{value:!0});ODe.callWithTimeout=ODe.TimeoutError=void 0;var eSt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};ODe.TimeoutError=eSt;function r_c(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new eSt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}ODe.callWithTimeout=r_c});var IVi=H(PDe=>{"use strict";Object.defineProperty(PDe,"__esModule",{value:!0});PDe.isUrlIgnored=PDe.urlMatches=void 0;function fVi(e,t){return typeof t=="string"?e===t:!!e.match(t)}PDe.urlMatches=fVi;function n_c(e,t){if(!t)return!1;for(let r of t)if(fVi(e,r))return!0;return!1}PDe.isUrlIgnored=n_c});var hVi=H(tSt=>{"use strict";Object.defineProperty(tSt,"__esModule",{value:!0});tSt.isWrapped=void 0;function i_c(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}tSt.isWrapped=i_c});var mVi=H(rSt=>{"use strict";Object.defineProperty(rSt,"__esModule",{value:!0});rSt.Deferred=void 0;var bZr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};rSt.Deferred=bZr});var CVi=H(nSt=>{"use strict";Object.defineProperty(nSt,"__esModule",{value:!0});nSt.BindOnceFuture=void 0;var s_c=mVi(),EZr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new s_c.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};nSt.BindOnceFuture=EZr});var yVi=H(iSt=>{"use strict";Object.defineProperty(iSt,"__esModule",{value:!0});iSt._export=void 0;var _Vi=(LI(),vi(ZI)),o_c=iKe();function a_c(e,t){return new Promise(r=>{_Vi.context.with((0,o_c.suppressTracing)(_Vi.context.active()),()=>{e.export(t,n=>{r(n)})})})}iSt._export=a_c});var yH=H(Rm=>{"use strict";var c_c=Rm&&Rm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),gb=Rm&&Rm.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&c_c(t,e,r)};Object.defineProperty(Rm,"__esModule",{value:!0});Rm.internal=Rm.baggageUtils=void 0;gb(f9i(),Rm);gb(I9i(),Rm);gb(y9i(),Rm);gb(qFr(),Rm);gb(zFr(),Rm);gb(W9i(),Rm);gb(P9i(),Rm);gb(M9i(),Rm);gb(V2t(),Rm);Rm.baggageUtils=XFr();gb(nZr(),Rm);gb(Y9i(),Rm);gb(z9i(),Rm);gb($9i(),Rm);gb(eVi(),Rm);gb(pZr(),Rm);gb(IZr(),Rm);gb(rVi(),Rm);gb(nVi(),Rm);gb(iKe(),Rm);gb(uZr(),Rm);gb(tZr(),Rm);gb(dVi(),Rm);gb($Fr(),Rm);gb(pVi(),Rm);gb(IVi(),Rm);gb(hVi(),Rm);gb(CVi(),Rm);gb(V2t(),Rm);var l_c=yVi();Rm.internal={_export:l_c._export}});var bVi=H(sSt=>{"use strict";Object.defineProperty(sSt,"__esModule",{value:!0});sSt.defaultServiceName=void 0;function u_c(){return`unknown_service:${process.argv0}`}sSt.defaultServiceName=u_c});var SZr=H(MDe=>{"use strict";Object.defineProperty(MDe,"__esModule",{value:!0});MDe.normalizeType=MDe.normalizeArch=void 0;var g_c=e=>{switch(e){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return e}};MDe.normalizeArch=g_c;var A_c=e=>{switch(e){case"sunos":return"solaris";case"win32":return"windows";default:return e}};MDe.normalizeType=A_c});var aSt=H(oSt=>{"use strict";Object.defineProperty(oSt,"__esModule",{value:!0});oSt.execAsync=void 0;var d_c=Et("child_process"),p_c=Et("util");oSt.execAsync=p_c.promisify(d_c.exec)});var EVi=H(cSt=>{"use strict";Object.defineProperty(cSt,"__esModule",{value:!0});cSt.getMachineId=void 0;var f_c=aSt(),I_c=(LI(),vi(ZI));async function h_c(){try{let t=(await(0,f_c.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` +`).find(n=>n.includes("IOPlatformUUID"));if(!t)return"";let r=t.split('" = "');if(r.length===2)return r[1].slice(0,-1)}catch(e){I_c.diag.debug(`error reading machine id: ${e}`)}return""}cSt.getMachineId=h_c});var SVi=H(lSt=>{"use strict";Object.defineProperty(lSt,"__esModule",{value:!0});lSt.getMachineId=void 0;var m_c=Et("fs"),C_c=(LI(),vi(ZI));async function __c(){let e=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let t of e)try{return(await m_c.promises.readFile(t,{encoding:"utf8"})).trim()}catch(r){C_c.diag.debug(`error reading machine id: ${r}`)}return""}lSt.getMachineId=__c});var BVi=H(uSt=>{"use strict";Object.defineProperty(uSt,"__esModule",{value:!0});uSt.getMachineId=void 0;var y_c=Et("fs"),b_c=aSt(),vVi=(LI(),vi(ZI));async function E_c(){try{return(await y_c.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(e){vVi.diag.debug(`error reading machine id: ${e}`)}try{return(await(0,b_c.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(e){vVi.diag.debug(`error reading machine id: ${e}`)}return""}uSt.getMachineId=E_c});var TVi=H(gSt=>{"use strict";Object.defineProperty(gSt,"__esModule",{value:!0});gSt.getMachineId=void 0;var wVi=Et("process"),S_c=aSt(),v_c=(LI(),vi(ZI));async function B_c(){let e="QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",t="%windir%\\System32\\REG.exe";wVi.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in wVi.env&&(t="%windir%\\sysnative\\cmd.exe /c "+t);try{let n=(await(0,S_c.execAsync)(`${t} ${e}`)).stdout.split("REG_SZ");if(n.length===2)return n[1].trim()}catch(r){v_c.diag.debug(`error reading machine id: ${r}`)}return""}gSt.getMachineId=B_c});var RVi=H(ASt=>{"use strict";Object.defineProperty(ASt,"__esModule",{value:!0});ASt.getMachineId=void 0;var w_c=(LI(),vi(ZI));async function T_c(){return w_c.diag.debug("could not read machine-id: unsupported platform"),""}ASt.getMachineId=T_c});var NVi=H(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});ste.getMachineId=void 0;var R_c=Et("process"),HDe;ste.getMachineId=HDe;switch(R_c.platform){case"darwin":ste.getMachineId=HDe=EVi().getMachineId;break;case"linux":ste.getMachineId=HDe=SVi().getMachineId;break;case"freebsd":ste.getMachineId=HDe=BVi().getMachineId;break;case"win32":ste.getMachineId=HDe=TVi().getMachineId;break;default:ste.getMachineId=HDe=RVi().getMachineId}});var wZr=H(dSt=>{"use strict";Object.defineProperty(dSt,"__esModule",{value:!0});dSt.hostDetectorSync=void 0;var vZr=ale(),N_c=e_e(),DVi=Et("os"),D_c=SZr(),k_c=NVi(),BZr=class{detect(t){let r={[vZr.SemanticResourceAttributes.HOST_NAME]:(0,DVi.hostname)(),[vZr.SemanticResourceAttributes.HOST_ARCH]:(0,D_c.normalizeArch)((0,DVi.arch)())};return new N_c.Resource(r,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,k_c.getMachineId)().then(t=>{let r={};return t&&(r[vZr.SemanticResourceAttributes.HOST_ID]=t),r})}};dSt.hostDetectorSync=new BZr});var kVi=H(pSt=>{"use strict";Object.defineProperty(pSt,"__esModule",{value:!0});pSt.hostDetector=void 0;var x_c=wZr(),TZr=class{detect(t){return Promise.resolve(x_c.hostDetectorSync.detect(t))}};pSt.hostDetector=new TZr});var NZr=H(fSt=>{"use strict";Object.defineProperty(fSt,"__esModule",{value:!0});fSt.osDetectorSync=void 0;var xVi=ale(),G_c=e_e(),GVi=Et("os"),F_c=SZr(),RZr=class{detect(t){let r={[xVi.SemanticResourceAttributes.OS_TYPE]:(0,F_c.normalizeType)((0,GVi.platform)()),[xVi.SemanticResourceAttributes.OS_VERSION]:(0,GVi.release)()};return new G_c.Resource(r)}};fSt.osDetectorSync=new RZr});var FVi=H(ISt=>{"use strict";Object.defineProperty(ISt,"__esModule",{value:!0});ISt.osDetector=void 0;var Z_c=NZr(),DZr=class{detect(t){return Promise.resolve(Z_c.osDetectorSync.detect(t))}};ISt.osDetector=new DZr});var xZr=H(hSt=>{"use strict";Object.defineProperty(hSt,"__esModule",{value:!0});hSt.processDetectorSync=void 0;var L_c=(LI(),vi(ZI)),ote=ale(),V_c=e_e(),W_c=Et("os"),kZr=class{detect(t){let r={[ote.SemanticResourceAttributes.PROCESS_PID]:process.pid,[ote.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]:process.title,[ote.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]:process.execPath,[ote.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[ote.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:process.versions.node,[ote.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"nodejs",[ote.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};process.argv.length>1&&(r[ote.SemanticResourceAttributes.PROCESS_COMMAND]=process.argv[1]);try{let n=W_c.userInfo();r[ote.SemanticResourceAttributes.PROCESS_OWNER]=n.username}catch(n){L_c.diag.debug(`error obtaining process owner: ${n}`)}return new V_c.Resource(r)}};hSt.processDetectorSync=new kZr});var ZVi=H(mSt=>{"use strict";Object.defineProperty(mSt,"__esModule",{value:!0});mSt.processDetector=void 0;var O_c=xZr(),GZr=class{detect(t){return Promise.resolve(O_c.processDetectorSync.detect(t))}};mSt.processDetector=new GZr});var LVi=H(kP=>{"use strict";var P_c=kP&&kP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),t_e=kP&&kP.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&P_c(t,e,r)};Object.defineProperty(kP,"__esModule",{value:!0});t_e(bVi(),kP);t_e(kVi(),kP);t_e(FVi(),kP);t_e(wZr(),kP);t_e(NZr(),kP);t_e(ZVi(),kP);t_e(xZr(),kP)});var FZr=H(r_e=>{"use strict";var M_c=r_e&&r_e.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),H_c=r_e&&r_e.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&M_c(t,e,r)};Object.defineProperty(r_e,"__esModule",{value:!0});H_c(LVi(),r_e)});var e_e=H(CSt=>{"use strict";Object.defineProperty(CSt,"__esModule",{value:!0});CSt.Resource=void 0;var VVi=(LI(),vi(ZI)),n_e=ale(),ZZr=yH(),Y_c=FZr(),uKe=class e{constructor(t,r){var n;this._attributes=t,this.asyncAttributesPending=r!=null,this._syncAttributes=(n=this._attributes)!==null&&n!==void 0?n:{},this._asyncAttributesPromise=r?.then(a=>(this._attributes=Object.assign({},this._attributes,a),this.asyncAttributesPending=!1,a),a=>(VVi.diag.debug("a resource's async attributes promise rejected: %s",a),this.asyncAttributesPending=!1,{}))}static empty(){return e.EMPTY}static default(){return new e({[n_e.SemanticResourceAttributes.SERVICE_NAME]:(0,Y_c.defaultServiceName)(),[n_e.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:ZZr.SDK_INFO[n_e.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE],[n_e.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:ZZr.SDK_INFO[n_e.SemanticResourceAttributes.TELEMETRY_SDK_NAME],[n_e.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:ZZr.SDK_INFO[n_e.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]})}get attributes(){var t;return this.asyncAttributesPending&&VVi.diag.error("Accessing resource attributes before async attributes settled"),(t=this._attributes)!==null&&t!==void 0?t:{}}async waitForAsyncAttributes(){this.asyncAttributesPending&&await this._asyncAttributesPromise}merge(t){var r;if(!t)return this;let n=Object.assign(Object.assign({},this._syncAttributes),(r=t._syncAttributes)!==null&&r!==void 0?r:t.attributes);if(!this._asyncAttributesPromise&&!t._asyncAttributesPromise)return new e(n);let a=Promise.all([this._asyncAttributesPromise,t._asyncAttributesPromise]).then(([o,l])=>{var A;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),o),(A=t._syncAttributes)!==null&&A!==void 0?A:t.attributes),l)});return new e(n,a)}};CSt.Resource=uKe;uKe.EMPTY=new uKe({})});var OVi=H(WVi=>{"use strict";Object.defineProperty(WVi,"__esModule",{value:!0})});var MVi=H(PVi=>{"use strict";Object.defineProperty(PVi,"__esModule",{value:!0})});var YVi=H(HVi=>{"use strict";Object.defineProperty(HVi,"__esModule",{value:!0})});var QVi=H(_St=>{"use strict";Object.defineProperty(_St,"__esModule",{value:!0});_St.browserDetector=void 0;var Q_c=ySt(),LZr=class{detect(t){return Promise.resolve(Q_c.browserDetectorSync.detect(t))}};_St.browserDetector=new LZr});var WZr=H(bSt=>{"use strict";Object.defineProperty(bSt,"__esModule",{value:!0});bSt.envDetectorSync=void 0;var X_c=(LI(),vi(ZI)),J_c=yH(),U_c=ale(),K_c=e_e(),VZr=class{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(t){let r={},n=(0,J_c.getEnv)(),a=n.OTEL_RESOURCE_ATTRIBUTES,o=n.OTEL_SERVICE_NAME;if(a)try{let l=this._parseResourceAttributes(a);Object.assign(r,l)}catch(l){X_c.diag.debug(`EnvDetector failed: ${l.message}`)}return o&&(r[U_c.SemanticResourceAttributes.SERVICE_NAME]=o),new K_c.Resource(r)}_parseResourceAttributes(t){if(!t)return{};let r={},n=t.split(this._COMMA_SEPARATOR,-1);for(let a of n){let o=a.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(o.length!==2)continue;let[l,A]=o;if(l=l.trim(),A=A.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(l))throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(A))throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);r[l]=decodeURIComponent(A)}return r}_isValid(t){return t.length<=this._MAX_LENGTH&&this._isBaggageOctetString(t)}_isBaggageOctetString(t){for(let r=0;r126)return!1}return!0}_isValidAndNotEmpty(t){return t.length>0&&this._isValid(t)}};bSt.envDetectorSync=new VZr});var XVi=H(ESt=>{"use strict";Object.defineProperty(ESt,"__esModule",{value:!0});ESt.envDetector=void 0;var j_c=WZr(),OZr=class{detect(t){return Promise.resolve(j_c.envDetectorSync.detect(t))}};ESt.envDetector=new OZr});var JVi=H(vSt=>{"use strict";Object.defineProperty(vSt,"__esModule",{value:!0});vSt.browserDetectorSync=void 0;var SSt=ale(),PZr=ySt(),z_c=(LI(),vi(ZI)),MZr=class{detect(t){if(!(typeof navigator<"u"))return PZr.Resource.empty();let n={[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"browser",[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(n,t)}_getResourceAttributes(t,r){return t[SSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]===""?(z_c.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),PZr.Resource.empty()):new PZr.Resource(Object.assign({},t))}};vSt.browserDetectorSync=new MZr});var UVi=H(H6=>{"use strict";var q_c=H6&&H6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),BSt=H6&&H6.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&q_c(t,e,r)};Object.defineProperty(H6,"__esModule",{value:!0});BSt(QVi(),H6);BSt(XVi(),H6);BSt(JVi(),H6);BSt(WZr(),H6)});var KVi=H(wSt=>{"use strict";Object.defineProperty(wSt,"__esModule",{value:!0});wSt.isPromiseLike=void 0;var $_c=e=>e!==null&&typeof e=="object"&&typeof e.then=="function";wSt.isPromiseLike=$_c});var zVi=H(QDe=>{"use strict";Object.defineProperty(QDe,"__esModule",{value:!0});QDe.detectResourcesSync=QDe.detectResources=void 0;var gKe=e_e(),YDe=(LI(),vi(ZI)),e0c=KVi(),t0c=async(e={})=>{let t=await Promise.all((e.detectors||[]).map(async r=>{try{let n=await r.detect(e);return YDe.diag.debug(`${r.constructor.name} found resource.`,n),n}catch(n){return YDe.diag.debug(`${r.constructor.name} failed: ${n.message}`),gKe.Resource.empty()}}));return jVi(t),t.reduce((r,n)=>r.merge(n),gKe.Resource.empty())};QDe.detectResources=t0c;var r0c=(e={})=>{var t;let r=((t=e.detectors)!==null&&t!==void 0?t:[]).map(a=>{try{let o=a.detect(e),l;if((0,e0c.isPromiseLike)(o)){let A=async()=>(await o).attributes;l=new gKe.Resource({},A())}else l=o;return l.waitForAsyncAttributes?l.waitForAsyncAttributes().then(()=>YDe.diag.debug(`${a.constructor.name} found resource.`,l)):YDe.diag.debug(`${a.constructor.name} found resource.`,l),l}catch(o){return YDe.diag.error(`${a.constructor.name} failed: ${o.message}`),gKe.Resource.empty()}}),n=r.reduce((a,o)=>a.merge(o),gKe.Resource.empty());return n.waitForAsyncAttributes&&n.waitForAsyncAttributes().then(()=>{jVi(r)}),n};QDe.detectResourcesSync=r0c;var jVi=e=>{e.forEach(t=>{if(Object.keys(t.attributes).length>0){let r=JSON.stringify(t.attributes,null,4);YDe.diag.verbose(r)}})}});var ySt=H(xP=>{"use strict";var n0c=xP&&xP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),i_e=xP&&xP.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&n0c(t,e,r)};Object.defineProperty(xP,"__esModule",{value:!0});i_e(e_e(),xP);i_e(OVi(),xP);i_e(FZr(),xP);i_e(MVi(),xP);i_e(YVi(),xP);i_e(UVi(),xP);i_e(zVi(),xP)});var QZr=H(TSt=>{"use strict";Object.defineProperty(TSt,"__esModule",{value:!0});TSt.LogRecord=void 0;var i0c=(LI(),vi(ZI)),AKe=(LI(),vi(ZI)),HZr=yH(),YZr=class{constructor(t,r){this.attributes={},this._isReadonly=!1;let{timestamp:n,observedTimestamp:a,severityNumber:o,severityText:l,body:A,attributes:f={},context:I}=r,C=Date.now();if(this.hrTime=(0,HZr.timeInputToHrTime)(n??C),this.hrTimeObserved=(0,HZr.timeInputToHrTime)(a??C),I){let b=AKe.trace.getSpanContext(I);b&&AKe.isSpanContextValid(b)&&(this.spanContext=b)}this.severityNumber=o,this.severityText=l,this.body=A,this.resource=t.resource,this.instrumentationScope=t.instrumentationScope,this._logRecordLimits=t.getLogRecordLimits(),this.setAttributes(f)}set severityText(t){this._isLogRecordReadonly()||(this._severityText=t)}get severityText(){return this._severityText}set severityNumber(t){this._isLogRecordReadonly()||(this._severityNumber=t)}get severityNumber(){return this._severityNumber}set body(t){this._isLogRecordReadonly()||(this._body=t)}get body(){return this._body}setAttribute(t,r){return this._isLogRecordReadonly()?this:r===null?this:(typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length>0&&(this.attributes[t]=r),t.length===0?(AKe.diag.warn(`Invalid attribute key: ${t}`),this):(0,HZr.isAttributeValue)(r)?Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,t)?this:(this.attributes[t]=this._truncateToSize(r),this):(AKe.diag.warn(`Invalid attribute value set for key: ${t}`),this))}setAttributes(t){for(let[r,n]of Object.entries(t))this.setAttribute(r,n);return this}setBody(t){return this.body=t,this}setSeverityNumber(t){return this.severityNumber=t,this}setSeverityText(t){return this.severityText=t,this}makeReadonly(){this._isReadonly=!0}_truncateToSize(t){let r=this._logRecordLimits.attributeValueLengthLimit||0;return r<=0?(AKe.diag.warn(`Attribute value limit must be positive, got ${r}`),t):typeof t=="string"?this._truncateToLimitUtil(t,r):Array.isArray(t)?t.map(n=>typeof n=="string"?this._truncateToLimitUtil(n,r):n):t}_truncateToLimitUtil(t,r){return t.length<=r?t:t.substring(0,r)}_isLogRecordReadonly(){return this._isReadonly&&i0c.diag.warn("Can not execute the operation on emitted log record"),this._isReadonly}};TSt.LogRecord=YZr});var XZr=H(Y6=>{"use strict";Object.defineProperty(Y6,"__esModule",{value:!0});Y6.DEFAULT_EVENT_DOMAIN=Y6.mergeConfig=Y6.reconfigureLimits=Y6.loadDefaultConfig=void 0;var dKe=yH();function qVi(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,dKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:(0,dKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT},includeTraceContext:!0}}Y6.loadDefaultConfig=qVi;function s0c(e){var t,r,n,a,o,l,A,f;let I=Object.assign({},e.logRecordLimits),C=(0,dKe.getEnvWithoutDefaults)();return I.attributeCountLimit=(a=(n=(r=(t=e.logRecordLimits)===null||t===void 0?void 0:t.attributeCountLimit)!==null&&r!==void 0?r:C.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT)!==null&&n!==void 0?n:C.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&a!==void 0?a:dKe.DEFAULT_ATTRIBUTE_COUNT_LIMIT,I.attributeValueLengthLimit=(f=(A=(l=(o=e.logRecordLimits)===null||o===void 0?void 0:o.attributeValueLengthLimit)!==null&&l!==void 0?l:C.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&A!==void 0?A:C.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&f!==void 0?f:dKe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},e,{logRecordLimits:I})}Y6.reconfigureLimits=s0c;function o0c(e){let t=qVi(),r=Object.assign({},t,e);return r.logRecordLimits=Object.assign({},t.logRecordLimits,e.logRecordLimits||{}),r}Y6.mergeConfig=o0c;Y6.DEFAULT_EVENT_DOMAIN="default"});var UZr=H(RSt=>{"use strict";Object.defineProperty(RSt,"__esModule",{value:!0});RSt.Logger=void 0;var a0c=(LI(),vi(ZI)),c0c=QZr(),l0c=XZr(),JZr=class{constructor(t,r,n){this.instrumentationScope=t,this._loggerProvider=n,this._loggerConfig=(0,l0c.mergeConfig)(r),this.resource=n.resource}emit(t){let r=t.context||a0c.context.active(),n=new c0c.LogRecord(this,Object.assign({context:r},t));this.getActiveLogRecordProcessor().onEmit(n,r),n.makeReadonly()}getLogRecordLimits(){return this._loggerConfig.logRecordLimits}getActiveLogRecordProcessor(){return this._loggerProvider.getActiveLogRecordProcessor()}};RSt.Logger=JZr});var $Vi=H(NSt=>{"use strict";Object.defineProperty(NSt,"__esModule",{value:!0});NSt.MultiLogRecordProcessor=void 0;var u0c=yH(),KZr=class{constructor(t,r){this.processors=t,this.forceFlushTimeoutMillis=r}async forceFlush(){let t=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(r=>(0,u0c.callWithTimeout)(r.forceFlush(),t)))}onEmit(t){this.processors.forEach(r=>r.onEmit(t))}async shutdown(){await Promise.all(this.processors.map(t=>t.shutdown()))}};NSt.MultiLogRecordProcessor=KZr});var zZr=H(DSt=>{"use strict";Object.defineProperty(DSt,"__esModule",{value:!0});DSt.NoopLogRecordProcessor=void 0;var jZr=class{forceFlush(){return Promise.resolve()}onEmit(t){}shutdown(){return Promise.resolve()}};DSt.NoopLogRecordProcessor=jZr});var iWi=H(s_e=>{"use strict";Object.defineProperty(s_e,"__esModule",{value:!0});s_e.LoggerProvider=s_e.DEFAULT_LOGGER_NAME=void 0;var pKe=(LI(),vi(ZI)),g0c=GDe(),eWi=ySt(),tWi=yH(),A0c=UZr(),rWi=XZr(),nWi=$Vi(),d0c=zZr();s_e.DEFAULT_LOGGER_NAME="unknown";var qZr=class{constructor(t={}){this._loggers=new Map,this._registeredLogRecordProcessors=[];let{resource:r=eWi.Resource.empty(),logRecordLimits:n,forceFlushTimeoutMillis:a}=(0,tWi.merge)({},(0,rWi.loadDefaultConfig)(),(0,rWi.reconfigureLimits)(t));this.resource=eWi.Resource.default().merge(r),this._config={logRecordLimits:n,resource:this.resource,forceFlushTimeoutMillis:a},this._shutdownOnce=new tWi.BindOnceFuture(this._shutdown,this),this._activeProcessor=new nWi.MultiLogRecordProcessor([new d0c.NoopLogRecordProcessor],a)}getLogger(t,r,n){if(this._shutdownOnce.isCalled)return pKe.diag.warn("A shutdown LoggerProvider cannot provide a Logger"),g0c.NOOP_LOGGER;t||pKe.diag.warn("Logger requested without instrumentation scope name.");let a=t||s_e.DEFAULT_LOGGER_NAME,o=`${a}@${r||""}:${n?.schemaUrl||""}`;return this._loggers.has(o)||this._loggers.set(o,new A0c.Logger({name:a,version:r,schemaUrl:n?.schemaUrl},{logRecordLimits:this._config.logRecordLimits},this)),this._loggers.get(o)}addLogRecordProcessor(t){this._registeredLogRecordProcessors.length===0&&this._activeProcessor.shutdown().catch(r=>pKe.diag.error("Error while trying to shutdown current log record processor",r)),this._registeredLogRecordProcessors.push(t),this._activeProcessor=new nWi.MultiLogRecordProcessor(this._registeredLogRecordProcessors,this._config.forceFlushTimeoutMillis)}forceFlush(){return this._shutdownOnce.isCalled?(pKe.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"),this._shutdownOnce.promise):this._activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(pKe.diag.warn("shutdown may only be called once per LoggerProvider"),this._shutdownOnce.promise):this._shutdownOnce.call()}getActiveLogRecordProcessor(){return this._activeProcessor}getActiveLoggers(){return this._loggers}_shutdown(){return this._activeProcessor.shutdown()}};s_e.LoggerProvider=qZr});var sWi=H(kSt=>{"use strict";Object.defineProperty(kSt,"__esModule",{value:!0});kSt.ConsoleLogRecordExporter=void 0;var p0c=yH(),f0c=yH(),$Zr=class{export(t,r){this._sendLogRecords(t,r)}shutdown(){return Promise.resolve()}_exportInfo(t){var r,n,a;return{timestamp:(0,p0c.hrTimeToMicroseconds)(t.hrTime),traceId:(r=t.spanContext)===null||r===void 0?void 0:r.traceId,spanId:(n=t.spanContext)===null||n===void 0?void 0:n.spanId,traceFlags:(a=t.spanContext)===null||a===void 0?void 0:a.traceFlags,severityText:t.severityText,severityNumber:t.severityNumber,body:t.body,attributes:t.attributes}}_sendLogRecords(t,r){for(let n of t)console.dir(this._exportInfo(n),{depth:3});r?.({code:f0c.ExportResultCode.SUCCESS})}};kSt.ConsoleLogRecordExporter=$Zr});var oWi=H(xSt=>{"use strict";Object.defineProperty(xSt,"__esModule",{value:!0});xSt.SimpleLogRecordProcessor=void 0;var eLr=yH(),tLr=class{constructor(t){this._exporter=t,this._shutdownOnce=new eLr.BindOnceFuture(this._shutdown,this)}onEmit(t){this._shutdownOnce.isCalled||this._exporter.export([t],r=>{var n;if(r.code!==eLr.ExportResultCode.SUCCESS){(0,eLr.globalErrorHandler)((n=r.error)!==null&&n!==void 0?n:new Error(`SimpleLogRecordProcessor: log record export failed (status ${r})`));return}})}forceFlush(){return Promise.resolve()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}};xSt.SimpleLogRecordProcessor=tLr});var cWi=H(GSt=>{"use strict";Object.defineProperty(GSt,"__esModule",{value:!0});GSt.InMemoryLogRecordExporter=void 0;var aWi=yH(),rLr=class{constructor(){this._finishedLogRecords=[],this._stopped=!1}export(t,r){if(this._stopped)return r({code:aWi.ExportResultCode.FAILED,error:new Error("Exporter has been stopped")});this._finishedLogRecords.push(...t),r({code:aWi.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}};GSt.InMemoryLogRecordExporter=rLr});var lWi=H(FSt=>{"use strict";Object.defineProperty(FSt,"__esModule",{value:!0});FSt.BatchLogRecordProcessorBase=void 0;var I0c=(LI(),vi(ZI)),XDe=yH(),nLr=class{constructor(t,r){var n,a,o,l;this._exporter=t,this._finishedLogRecords=[];let A=(0,XDe.getEnv)();this._maxExportBatchSize=(n=r?.maxExportBatchSize)!==null&&n!==void 0?n:A.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=(a=r?.maxQueueSize)!==null&&a!==void 0?a:A.OTEL_BLRP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=(o=r?.scheduledDelayMillis)!==null&&o!==void 0?o:A.OTEL_BLRP_SCHEDULE_DELAY,this._exportTimeoutMillis=(l=r?.exportTimeoutMillis)!==null&&l!==void 0?l:A.OTEL_BLRP_EXPORT_TIMEOUT,this._shutdownOnce=new XDe.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(I0c.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize)}onEmit(t){this._shutdownOnce.isCalled||this._addToBuffer(t)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(t){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(t),this._maybeStartTimer())}_flushAll(){return new Promise((t,r)=>{let n=[],a=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let o=0;o{t()}).catch(r)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((t,r)=>{(0,XDe.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>t()).catch(r)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(t=>{(0,XDe.globalErrorHandler)(t)})},this._scheduledDelayMillis),(0,XDe.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(t){return new Promise((r,n)=>{this._exporter.export(t,a=>{var o;if(a.code!==XDe.ExportResultCode.SUCCESS){n((o=a.error)!==null&&o!==void 0?o:new Error(`BatchLogRecordProcessorBase: log record export failed (status ${a})`));return}r(a)})})}};FSt.BatchLogRecordProcessorBase=nLr});var uWi=H(ZSt=>{"use strict";Object.defineProperty(ZSt,"__esModule",{value:!0});ZSt.BatchLogRecordProcessor=void 0;var h0c=lWi(),iLr=class extends h0c.BatchLogRecordProcessorBase{onShutdown(){}};ZSt.BatchLogRecordProcessor=iLr});var gWi=H(LSt=>{"use strict";Object.defineProperty(LSt,"__esModule",{value:!0});LSt.BatchLogRecordProcessor=void 0;var m0c=uWi();Object.defineProperty(LSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return m0c.BatchLogRecordProcessor}})});var AWi=H(VSt=>{"use strict";Object.defineProperty(VSt,"__esModule",{value:!0});VSt.BatchLogRecordProcessor=void 0;var C0c=gWi();Object.defineProperty(VSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return C0c.BatchLogRecordProcessor}})});var fKe=H(ID=>{"use strict";Object.defineProperty(ID,"__esModule",{value:!0});ID.BatchLogRecordProcessor=ID.InMemoryLogRecordExporter=ID.SimpleLogRecordProcessor=ID.ConsoleLogRecordExporter=ID.NoopLogRecordProcessor=ID.LogRecord=ID.Logger=ID.LoggerProvider=void 0;var _0c=iWi();Object.defineProperty(ID,"LoggerProvider",{enumerable:!0,get:function(){return _0c.LoggerProvider}});var y0c=UZr();Object.defineProperty(ID,"Logger",{enumerable:!0,get:function(){return y0c.Logger}});var b0c=QZr();Object.defineProperty(ID,"LogRecord",{enumerable:!0,get:function(){return b0c.LogRecord}});var E0c=zZr();Object.defineProperty(ID,"NoopLogRecordProcessor",{enumerable:!0,get:function(){return E0c.NoopLogRecordProcessor}});var S0c=sWi();Object.defineProperty(ID,"ConsoleLogRecordExporter",{enumerable:!0,get:function(){return S0c.ConsoleLogRecordExporter}});var v0c=oWi();Object.defineProperty(ID,"SimpleLogRecordProcessor",{enumerable:!0,get:function(){return v0c.SimpleLogRecordProcessor}});var B0c=cWi();Object.defineProperty(ID,"InMemoryLogRecordExporter",{enumerable:!0,get:function(){return B0c.InMemoryLogRecordExporter}});var w0c=AWi();Object.defineProperty(ID,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return w0c.BatchLogRecordProcessor}})});var IKe=H(gle=>{"use strict";Object.defineProperty(gle,"__esModule",{value:!0});gle.isTracingSuppressed=gle.unsuppressTracing=gle.suppressTracing=void 0;var T0c=(LI(),vi(ZI)),oLr=(0,T0c.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function R0c(e){return e.setValue(oLr,!0)}gle.suppressTracing=R0c;function N0c(e){return e.deleteValue(oLr)}gle.unsuppressTracing=N0c;function D0c(e){return e.getValue(oLr)===!0}gle.isTracingSuppressed=D0c});var aLr=H(XG=>{"use strict";Object.defineProperty(XG,"__esModule",{value:!0});XG.BAGGAGE_MAX_TOTAL_LENGTH=XG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=XG.BAGGAGE_MAX_NAME_VALUE_PAIRS=XG.BAGGAGE_HEADER=XG.BAGGAGE_ITEMS_SEPARATOR=XG.BAGGAGE_PROPERTIES_SEPARATOR=XG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;XG.BAGGAGE_KEY_PAIR_SEPARATOR="=";XG.BAGGAGE_PROPERTIES_SEPARATOR=";";XG.BAGGAGE_ITEMS_SEPARATOR=",";XG.BAGGAGE_HEADER="baggage";XG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;XG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;XG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var cLr=H(Q6=>{"use strict";Object.defineProperty(Q6,"__esModule",{value:!0});Q6.parseKeyPairsIntoRecord=Q6.parsePairKeyValue=Q6.getKeyPairs=Q6.serializeKeyPairs=void 0;var k0c=(LI(),vi(ZI)),o_e=aLr();function x0c(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?o_e.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>o_e.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}Q6.serializeKeyPairs=x0c;function G0c(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=o_e.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}Q6.getKeyPairs=G0c;function dWi(e){let t=e.split(o_e.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(o_e.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,k0c.baggageEntryMetadataFromString)(t.join(o_e.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}Q6.parsePairKeyValue=dWi;function F0c(e){return typeof e!="string"||e.length===0?{}:e.split(o_e.BAGGAGE_ITEMS_SEPARATOR).map(t=>dWi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}Q6.parseKeyPairsIntoRecord=F0c});var pWi=H(WSt=>{"use strict";Object.defineProperty(WSt,"__esModule",{value:!0});WSt.W3CBaggagePropagator=void 0;var lLr=(LI(),vi(ZI)),Z0c=IKe(),a_e=aLr(),uLr=cLr(),gLr=class{inject(t,r,n){let a=lLr.propagation.getBaggage(t);if(!a||(0,Z0c.isTracingSuppressed)(t))return;let o=(0,uLr.getKeyPairs)(a).filter(A=>A.length<=a_e.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,a_e.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,uLr.serializeKeyPairs)(o);l.length>0&&n.set(r,a_e.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,a_e.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(a_e.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(a_e.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,uLr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:lLr.propagation.setBaggage(t,lLr.propagation.createBaggage(l))}fields(){return[a_e.BAGGAGE_HEADER]}};WSt.W3CBaggagePropagator=gLr});var fWi=H(OSt=>{"use strict";Object.defineProperty(OSt,"__esModule",{value:!0});OSt.AnchoredClock=void 0;var ALr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};OSt.AnchoredClock=ALr});var _Wi=H(Ale=>{"use strict";Object.defineProperty(Ale,"__esModule",{value:!0});Ale.isAttributeValue=Ale.isAttributeKey=Ale.sanitizeAttributes=void 0;var IWi=(LI(),vi(ZI));function L0c(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!hWi(r)){IWi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!mWi(n)){IWi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}Ale.sanitizeAttributes=L0c;function hWi(e){return typeof e=="string"&&e.length>0}Ale.isAttributeKey=hWi;function mWi(e){return e==null?!0:Array.isArray(e)?V0c(e):CWi(e)}Ale.isAttributeValue=mWi;function V0c(e){let t;for(let r of e)if(r!=null){if(!t){if(CWi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function CWi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var dLr=H(PSt=>{"use strict";Object.defineProperty(PSt,"__esModule",{value:!0});PSt.loggingErrorHandler=void 0;var W0c=(LI(),vi(ZI));function O0c(){return e=>{W0c.diag.error(P0c(e))}}PSt.loggingErrorHandler=O0c;function P0c(e){return typeof e=="string"?e:JSON.stringify(M0c(e))}function M0c(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var pLr=H(JDe=>{"use strict";Object.defineProperty(JDe,"__esModule",{value:!0});JDe.globalErrorHandler=JDe.setGlobalErrorHandler=void 0;var H0c=dLr(),yWi=(0,H0c.loggingErrorHandler)();function Y0c(e){yWi=e}JDe.setGlobalErrorHandler=Y0c;function Q0c(e){try{yWi(e)}catch{}}JDe.globalErrorHandler=Q0c});var fLr=H(hKe=>{"use strict";Object.defineProperty(hKe,"__esModule",{value:!0});hKe.TracesSamplerValues=void 0;var X0c;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(X0c=hKe.TracesSamplerValues||(hKe.TracesSamplerValues={}))});var ILr=H(MS=>{"use strict";Object.defineProperty(MS,"__esModule",{value:!0});MS.parseEnvironment=MS.DEFAULT_ENVIRONMENT=MS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=MS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=MS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=MS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var dle=(LI(),vi(ZI)),J0c=fLr(),U0c=",",K0c=["OTEL_SDK_DISABLED"];function j0c(e){return K0c.indexOf(e)>-1}var z0c=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function q0c(e){return z0c.indexOf(e)>-1}var $0c=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function eyc(e){return $0c.indexOf(e)>-1}MS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;MS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;MS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;MS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;MS.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:dle.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:MS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:MS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:MS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:MS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:MS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:MS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:MS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:MS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:J0c.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function tyc(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function ryc(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function nyc(e,t,r,n=U0c){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var iyc={ALL:dle.DiagLogLevel.ALL,VERBOSE:dle.DiagLogLevel.VERBOSE,DEBUG:dle.DiagLogLevel.DEBUG,INFO:dle.DiagLogLevel.INFO,WARN:dle.DiagLogLevel.WARN,ERROR:dle.DiagLogLevel.ERROR,NONE:dle.DiagLogLevel.NONE};function syc(e,t,r){let n=r[e];if(typeof n=="string"){let a=iyc[n.toUpperCase()];a!=null&&(t[e]=a)}}function oyc(e){let t={};for(let r in MS.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":syc(n,t,e);break;default:if(j0c(n))tyc(n,t,e);else if(q0c(n))ryc(n,t,e);else if(eyc(n))nyc(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}MS.parseEnvironment=oyc});var bWi=H(UDe=>{"use strict";Object.defineProperty(UDe,"__esModule",{value:!0});UDe.getEnvWithoutDefaults=UDe.getEnv=void 0;var hLr=ILr();function ayc(){let e=(0,hLr.parseEnvironment)(process.env);return Object.assign({},hLr.DEFAULT_ENVIRONMENT,e)}UDe.getEnv=ayc;function cyc(){return(0,hLr.parseEnvironment)(process.env)}UDe.getEnvWithoutDefaults=cyc});var EWi=H(MSt=>{"use strict";Object.defineProperty(MSt,"__esModule",{value:!0});MSt._globalThis=void 0;MSt._globalThis=typeof globalThis=="object"?globalThis:global});var mLr=H(HSt=>{"use strict";Object.defineProperty(HSt,"__esModule",{value:!0});HSt.hexToBinary=void 0;function SWi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}function lyc(e){let t=new Uint8Array(e.length/2),r=0;for(let n=0;n{"use strict";Object.defineProperty(YSt,"__esModule",{value:!0});YSt.hexToBase64=void 0;var uyc=mLr();function gyc(e){return Buffer.from((0,uyc.hexToBinary)(e)).toString("base64")}YSt.hexToBase64=gyc});var TWi=H(XSt=>{"use strict";Object.defineProperty(XSt,"__esModule",{value:!0});XSt.RandomIdGenerator=void 0;var Ayc=8,wWi=16,CLr=class{constructor(){this.generateTraceId=BWi(wWi),this.generateSpanId=BWi(Ayc)}};XSt.RandomIdGenerator=CLr;var QSt=Buffer.allocUnsafe(wWi);function BWi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(QSt[e-1]=1);return QSt.toString("hex",0,e)}}});var RWi=H(JSt=>{"use strict";Object.defineProperty(JSt,"__esModule",{value:!0});JSt.otperformance=void 0;var dyc=Et("perf_hooks");JSt.otperformance=dyc.performance});var _Lr=H(USt=>{"use strict";Object.defineProperty(USt,"__esModule",{value:!0});USt.VERSION=void 0;USt.VERSION="1.27.0"});function uw(e){for(var t={},r=e.length,n=0;n{});var NWi,DWi,kWi,xWi,GWi,FWi,ZWi,LWi,VWi,WWi,OWi,PWi,MWi,HWi,YWi,QWi,XWi,JWi,UWi,KWi,jWi,zWi,qWi,$Wi,eOi,tOi,rOi,nOi,iOi,sOi,oOi,aOi,cOi,lOi,uOi,gOi,AOi,dOi,pOi,fOi,IOi,hOi,mOi,COi,_Oi,yOi,bOi,EOi,SOi,vOi,BOi,wOi,TOi,ROi,NOi,DOi,kOi,xOi,GOi,FOi,ZOi,LOi,VOi,WOi,OOi,POi,MOi,HOi,YOi,QOi,XOi,JOi,UOi,KOi,jOi,zOi,qOi,$Oi,ePi,tPi,rPi,nPi,iPi,sPi,oPi,aPi,cPi,lPi,uPi,gPi,APi,dPi,pPi,fPi,IPi,hPi,mPi,CPi,_Pi,yPi,bPi,EPi,SPi,vPi,BPi,wPi,TPi,RPi,NPi,DPi,kPi,xPi,GPi,FPi,ZPi,LPi,VPi,WPi,OPi,PPi,MPi,HPi,YPi,QPi,XPi,JPi,UPi,KPi,pyc,fyc,Iyc,hyc,myc,Cyc,_yc,yyc,byc,Eyc,Syc,vyc,Byc,wyc,Tyc,Ryc,Nyc,Dyc,kyc,xyc,Gyc,Fyc,Zyc,Lyc,Vyc,Wyc,Oyc,Pyc,Myc,Hyc,Yyc,Qyc,Xyc,Jyc,Uyc,Kyc,jyc,zyc,qyc,$yc,ebc,tbc,rbc,nbc,ibc,sbc,obc,abc,cbc,lbc,ubc,gbc,Abc,dbc,pbc,fbc,Ibc,hbc,mbc,Cbc,_bc,ybc,bbc,Ebc,Sbc,vbc,Bbc,wbc,Tbc,Rbc,Nbc,Dbc,kbc,xbc,Gbc,Fbc,Zbc,Lbc,Vbc,Wbc,Obc,Pbc,Mbc,Hbc,Ybc,Qbc,Xbc,Jbc,Ubc,Kbc,jbc,zbc,qbc,$bc,eEc,tEc,rEc,nEc,iEc,sEc,oEc,aEc,cEc,lEc,uEc,gEc,AEc,dEc,pEc,fEc,IEc,hEc,mEc,CEc,_Ec,yEc,bEc,EEc,SEc,vEc,BEc,wEc,TEc,REc,NEc,DEc,kEc,xEc,GEc,jPi,zPi,qPi,$Pi,e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,W3i,O3i,P3i,M3i,FEc,ZEc,LEc,VEc,WEc,OEc,PEc,MEc,HEc,YEc,QEc,XEc,JEc,UEc,KEc,jEc,zEc,qEc,$Ec,e1c,t1c,r1c,n1c,i1c,s1c,o1c,a1c,c1c,l1c,u1c,g1c,A1c,d1c,p1c,f1c,I1c,h1c,m1c,C1c,_1c,y1c,b1c,E1c,S1c,v1c,B1c,w1c,T1c,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i,R1c,N1c,D1c,k1c,x1c,G1c,F1c,Z1c,L1c,V1c,W1c,O1c,e5i,t5i,r5i,n5i,i5i,P1c,M1c,H1c,Y1c,Q1c,X1c,s5i,o5i,a5i,J1c,U1c,K1c,j1c,c5i,l5i,u5i,g5i,z1c,q1c,$1c,e2c,t2c,A5i,d5i,p5i,f5i,I5i,h5i,m5i,r2c,n2c,i2c,s2c,o2c,a2c,c2c,l2c,C5i,_5i,y5i,b5i,E5i,u2c,g2c,A2c,d2c,p2c,f2c,S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,W5i,O5i,P5i,M5i,H5i,Y5i,I2c,h2c,m2c,C2c,_2c,y2c,b2c,E2c,S2c,v2c,B2c,w2c,T2c,R2c,N2c,D2c,k2c,x2c,G2c,F2c,Z2c,L2c,Q5i,X5i,J5i,U5i,K5i,V2c,W2c,O2c,P2c,M2c,H2c,j5i,z5i,Y2c,Q2c,X2c,q5i,$5i,J2c,U2c,K2c,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,j2c,z2c,q2c,$2c,eSc,tSc,rSc,nSc,iSc,sSc,oSc,aSc,cSc,lSc,uSc,gSc,ASc,dSc,hMi,mMi,pSc,fSc,ISc,CMi=bc(()=>{yLr();NWi="aws.lambda.invoked_arn",DWi="db.system",kWi="db.connection_string",xWi="db.user",GWi="db.jdbc.driver_classname",FWi="db.name",ZWi="db.statement",LWi="db.operation",VWi="db.mssql.instance_name",WWi="db.cassandra.keyspace",OWi="db.cassandra.page_size",PWi="db.cassandra.consistency_level",MWi="db.cassandra.table",HWi="db.cassandra.idempotence",YWi="db.cassandra.speculative_execution_count",QWi="db.cassandra.coordinator.id",XWi="db.cassandra.coordinator.dc",JWi="db.hbase.namespace",UWi="db.redis.database_index",KWi="db.mongodb.collection",jWi="db.sql.table",zWi="exception.type",qWi="exception.message",$Wi="exception.stacktrace",eOi="exception.escaped",tOi="faas.trigger",rOi="faas.execution",nOi="faas.document.collection",iOi="faas.document.operation",sOi="faas.document.time",oOi="faas.document.name",aOi="faas.time",cOi="faas.cron",lOi="faas.coldstart",uOi="faas.invoked_name",gOi="faas.invoked_provider",AOi="faas.invoked_region",dOi="net.transport",pOi="net.peer.ip",fOi="net.peer.port",IOi="net.peer.name",hOi="net.host.ip",mOi="net.host.port",COi="net.host.name",_Oi="net.host.connection.type",yOi="net.host.connection.subtype",bOi="net.host.carrier.name",EOi="net.host.carrier.mcc",SOi="net.host.carrier.mnc",vOi="net.host.carrier.icc",BOi="peer.service",wOi="enduser.id",TOi="enduser.role",ROi="enduser.scope",NOi="thread.id",DOi="thread.name",kOi="code.function",xOi="code.namespace",GOi="code.filepath",FOi="code.lineno",ZOi="http.method",LOi="http.url",VOi="http.target",WOi="http.host",OOi="http.scheme",POi="http.status_code",MOi="http.flavor",HOi="http.user_agent",YOi="http.request_content_length",QOi="http.request_content_length_uncompressed",XOi="http.response_content_length",JOi="http.response_content_length_uncompressed",UOi="http.server_name",KOi="http.route",jOi="http.client_ip",zOi="aws.dynamodb.table_names",qOi="aws.dynamodb.consumed_capacity",$Oi="aws.dynamodb.item_collection_metrics",ePi="aws.dynamodb.provisioned_read_capacity",tPi="aws.dynamodb.provisioned_write_capacity",rPi="aws.dynamodb.consistent_read",nPi="aws.dynamodb.projection",iPi="aws.dynamodb.limit",sPi="aws.dynamodb.attributes_to_get",oPi="aws.dynamodb.index_name",aPi="aws.dynamodb.select",cPi="aws.dynamodb.global_secondary_indexes",lPi="aws.dynamodb.local_secondary_indexes",uPi="aws.dynamodb.exclusive_start_table",gPi="aws.dynamodb.table_count",APi="aws.dynamodb.scan_forward",dPi="aws.dynamodb.segment",pPi="aws.dynamodb.total_segments",fPi="aws.dynamodb.count",IPi="aws.dynamodb.scanned_count",hPi="aws.dynamodb.attribute_definitions",mPi="aws.dynamodb.global_secondary_index_updates",CPi="messaging.system",_Pi="messaging.destination",yPi="messaging.destination_kind",bPi="messaging.temp_destination",EPi="messaging.protocol",SPi="messaging.protocol_version",vPi="messaging.url",BPi="messaging.message_id",wPi="messaging.conversation_id",TPi="messaging.message_payload_size_bytes",RPi="messaging.message_payload_compressed_size_bytes",NPi="messaging.operation",DPi="messaging.consumer_id",kPi="messaging.rabbitmq.routing_key",xPi="messaging.kafka.message_key",GPi="messaging.kafka.consumer_group",FPi="messaging.kafka.client_id",ZPi="messaging.kafka.partition",LPi="messaging.kafka.tombstone",VPi="rpc.system",WPi="rpc.service",OPi="rpc.method",PPi="rpc.grpc.status_code",MPi="rpc.jsonrpc.version",HPi="rpc.jsonrpc.request_id",YPi="rpc.jsonrpc.error_code",QPi="rpc.jsonrpc.error_message",XPi="message.type",JPi="message.id",UPi="message.compressed_size",KPi="message.uncompressed_size",pyc=NWi,fyc=DWi,Iyc=kWi,hyc=xWi,myc=GWi,Cyc=FWi,_yc=ZWi,yyc=LWi,byc=VWi,Eyc=WWi,Syc=OWi,vyc=PWi,Byc=MWi,wyc=HWi,Tyc=YWi,Ryc=QWi,Nyc=XWi,Dyc=JWi,kyc=UWi,xyc=KWi,Gyc=jWi,Fyc=zWi,Zyc=qWi,Lyc=$Wi,Vyc=eOi,Wyc=tOi,Oyc=rOi,Pyc=nOi,Myc=iOi,Hyc=sOi,Yyc=oOi,Qyc=aOi,Xyc=cOi,Jyc=lOi,Uyc=uOi,Kyc=gOi,jyc=AOi,zyc=dOi,qyc=pOi,$yc=fOi,ebc=IOi,tbc=hOi,rbc=mOi,nbc=COi,ibc=_Oi,sbc=yOi,obc=bOi,abc=EOi,cbc=SOi,lbc=vOi,ubc=BOi,gbc=wOi,Abc=TOi,dbc=ROi,pbc=NOi,fbc=DOi,Ibc=kOi,hbc=xOi,mbc=GOi,Cbc=FOi,_bc=ZOi,ybc=LOi,bbc=VOi,Ebc=WOi,Sbc=OOi,vbc=POi,Bbc=MOi,wbc=HOi,Tbc=YOi,Rbc=QOi,Nbc=XOi,Dbc=JOi,kbc=UOi,xbc=KOi,Gbc=jOi,Fbc=zOi,Zbc=qOi,Lbc=$Oi,Vbc=ePi,Wbc=tPi,Obc=rPi,Pbc=nPi,Mbc=iPi,Hbc=sPi,Ybc=oPi,Qbc=aPi,Xbc=cPi,Jbc=lPi,Ubc=uPi,Kbc=gPi,jbc=APi,zbc=dPi,qbc=pPi,$bc=fPi,eEc=IPi,tEc=hPi,rEc=mPi,nEc=CPi,iEc=_Pi,sEc=yPi,oEc=bPi,aEc=EPi,cEc=SPi,lEc=vPi,uEc=BPi,gEc=wPi,AEc=TPi,dEc=RPi,pEc=NPi,fEc=DPi,IEc=kPi,hEc=xPi,mEc=GPi,CEc=FPi,_Ec=ZPi,yEc=LPi,bEc=VPi,EEc=WPi,SEc=OPi,vEc=PPi,BEc=MPi,wEc=HPi,TEc=YPi,REc=QPi,NEc=XPi,DEc=JPi,kEc=UPi,xEc=KPi,GEc=uw([NWi,DWi,kWi,xWi,GWi,FWi,ZWi,LWi,VWi,WWi,OWi,PWi,MWi,HWi,YWi,QWi,XWi,JWi,UWi,KWi,jWi,zWi,qWi,$Wi,eOi,tOi,rOi,nOi,iOi,sOi,oOi,aOi,cOi,lOi,uOi,gOi,AOi,dOi,pOi,fOi,IOi,hOi,mOi,COi,_Oi,yOi,bOi,EOi,SOi,vOi,BOi,wOi,TOi,ROi,NOi,DOi,kOi,xOi,GOi,FOi,ZOi,LOi,VOi,WOi,OOi,POi,MOi,HOi,YOi,QOi,XOi,JOi,UOi,KOi,jOi,zOi,qOi,$Oi,ePi,tPi,rPi,nPi,iPi,sPi,oPi,aPi,cPi,lPi,uPi,gPi,APi,dPi,pPi,fPi,IPi,hPi,mPi,CPi,_Pi,yPi,bPi,EPi,SPi,vPi,BPi,wPi,TPi,RPi,NPi,DPi,kPi,xPi,GPi,FPi,ZPi,LPi,VPi,WPi,OPi,PPi,MPi,HPi,YPi,QPi,XPi,JPi,UPi,KPi]),jPi="other_sql",zPi="mssql",qPi="mysql",$Pi="oracle",e3i="db2",t3i="postgresql",r3i="redshift",n3i="hive",i3i="cloudscape",s3i="hsqldb",o3i="progress",a3i="maxdb",c3i="hanadb",l3i="ingres",u3i="firstsql",g3i="edb",A3i="cache",d3i="adabas",p3i="firebird",f3i="derby",I3i="filemaker",h3i="informix",m3i="instantdb",C3i="interbase",_3i="mariadb",y3i="netezza",b3i="pervasive",E3i="pointbase",S3i="sqlite",v3i="sybase",B3i="teradata",w3i="vertica",T3i="h2",R3i="coldfusion",N3i="cassandra",D3i="hbase",k3i="mongodb",x3i="redis",G3i="couchbase",F3i="couchdb",Z3i="cosmosdb",L3i="dynamodb",V3i="neo4j",W3i="geode",O3i="elasticsearch",P3i="memcached",M3i="cockroachdb",FEc=jPi,ZEc=zPi,LEc=qPi,VEc=$Pi,WEc=e3i,OEc=t3i,PEc=r3i,MEc=n3i,HEc=i3i,YEc=s3i,QEc=o3i,XEc=a3i,JEc=c3i,UEc=l3i,KEc=u3i,jEc=g3i,zEc=A3i,qEc=d3i,$Ec=p3i,e1c=f3i,t1c=I3i,r1c=h3i,n1c=m3i,i1c=C3i,s1c=_3i,o1c=y3i,a1c=b3i,c1c=E3i,l1c=S3i,u1c=v3i,g1c=B3i,A1c=w3i,d1c=T3i,p1c=R3i,f1c=N3i,I1c=D3i,h1c=k3i,m1c=x3i,C1c=G3i,_1c=F3i,y1c=Z3i,b1c=L3i,E1c=V3i,S1c=W3i,v1c=O3i,B1c=P3i,w1c=M3i,T1c=uw([jPi,zPi,qPi,$Pi,e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,W3i,O3i,P3i,M3i]),H3i="all",Y3i="each_quorum",Q3i="quorum",X3i="local_quorum",J3i="one",U3i="two",K3i="three",j3i="local_one",z3i="any",q3i="serial",$3i="local_serial",R1c=H3i,N1c=Y3i,D1c=Q3i,k1c=X3i,x1c=J3i,G1c=U3i,F1c=K3i,Z1c=j3i,L1c=z3i,V1c=q3i,W1c=$3i,O1c=uw([H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i]),e5i="datasource",t5i="http",r5i="pubsub",n5i="timer",i5i="other",P1c=e5i,M1c=t5i,H1c=r5i,Y1c=n5i,Q1c=i5i,X1c=uw([e5i,t5i,r5i,n5i,i5i]),s5i="insert",o5i="edit",a5i="delete",J1c=s5i,U1c=o5i,K1c=a5i,j1c=uw([s5i,o5i,a5i]),c5i="alibaba_cloud",l5i="aws",u5i="azure",g5i="gcp",z1c=c5i,q1c=l5i,$1c=u5i,e2c=g5i,t2c=uw([c5i,l5i,u5i,g5i]),A5i="ip_tcp",d5i="ip_udp",p5i="ip",f5i="unix",I5i="pipe",h5i="inproc",m5i="other",r2c=A5i,n2c=d5i,i2c=p5i,s2c=f5i,o2c=I5i,a2c=h5i,c2c=m5i,l2c=uw([A5i,d5i,p5i,f5i,I5i,h5i,m5i]),C5i="wifi",_5i="wired",y5i="cell",b5i="unavailable",E5i="unknown",u2c=C5i,g2c=_5i,A2c=y5i,d2c=b5i,p2c=E5i,f2c=uw([C5i,_5i,y5i,b5i,E5i]),S5i="gprs",v5i="edge",B5i="umts",w5i="cdma",T5i="evdo_0",R5i="evdo_a",N5i="cdma2000_1xrtt",D5i="hsdpa",k5i="hsupa",x5i="hspa",G5i="iden",F5i="evdo_b",Z5i="lte",L5i="ehrpd",V5i="hspap",W5i="gsm",O5i="td_scdma",P5i="iwlan",M5i="nr",H5i="nrnsa",Y5i="lte_ca",I2c=S5i,h2c=v5i,m2c=B5i,C2c=w5i,_2c=T5i,y2c=R5i,b2c=N5i,E2c=D5i,S2c=k5i,v2c=x5i,B2c=G5i,w2c=F5i,T2c=Z5i,R2c=L5i,N2c=V5i,D2c=W5i,k2c=O5i,x2c=P5i,G2c=M5i,F2c=H5i,Z2c=Y5i,L2c=uw([S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,W5i,O5i,P5i,M5i,H5i,Y5i]),Q5i="1.0",X5i="1.1",J5i="2.0",U5i="SPDY",K5i="QUIC",V2c=Q5i,W2c=X5i,O2c=J5i,P2c=U5i,M2c=K5i,H2c={HTTP_1_0:Q5i,HTTP_1_1:X5i,HTTP_2_0:J5i,SPDY:U5i,QUIC:K5i},j5i="queue",z5i="topic",Y2c=j5i,Q2c=z5i,X2c=uw([j5i,z5i]),q5i="receive",$5i="process",J2c=q5i,U2c=$5i,K2c=uw([q5i,$5i]),eMi=0,tMi=1,rMi=2,nMi=3,iMi=4,sMi=5,oMi=6,aMi=7,cMi=8,lMi=9,uMi=10,gMi=11,AMi=12,dMi=13,pMi=14,fMi=15,IMi=16,j2c=eMi,z2c=tMi,q2c=rMi,$2c=nMi,eSc=iMi,tSc=sMi,rSc=oMi,nSc=aMi,iSc=cMi,sSc=lMi,oSc=uMi,aSc=gMi,cSc=AMi,lSc=dMi,uSc=pMi,gSc=fMi,ASc=IMi,dSc={OK:eMi,CANCELLED:tMi,UNKNOWN:rMi,INVALID_ARGUMENT:nMi,DEADLINE_EXCEEDED:iMi,NOT_FOUND:sMi,ALREADY_EXISTS:oMi,PERMISSION_DENIED:aMi,RESOURCE_EXHAUSTED:cMi,FAILED_PRECONDITION:lMi,ABORTED:uMi,OUT_OF_RANGE:gMi,UNIMPLEMENTED:AMi,INTERNAL:dMi,UNAVAILABLE:pMi,DATA_LOSS:fMi,UNAUTHENTICATED:IMi},hMi="SENT",mMi="RECEIVED",pSc=hMi,fSc=mMi,ISc=uw([hMi,mMi])});var _Mi=bc(()=>{CMi()});var yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,WMi,OMi,PMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,SHi,vHi,BHi,wHi,THi,RHi,NHi,DHi,kHi,xHi,GHi,FHi,ZHi,LHi,VHi,WHi,OHi,PHi,MHi,HHi,YHi,QHi,XHi,JHi,hSc,mSc,CSc,_Sc,ySc,bSc,ESc,SSc,vSc,BSc,wSc,TSc,RSc,NSc,DSc,kSc,xSc,GSc,FSc,ZSc,LSc,VSc,WSc,OSc,PSc,MSc,HSc,YSc,QSc,XSc,JSc,USc,KSc,jSc,zSc,qSc,$Sc,evc,tvc,rvc,nvc,ivc,svc,ovc,avc,cvc,lvc,uvc,gvc,Avc,dvc,pvc,fvc,Ivc,hvc,mvc,Cvc,_vc,yvc,bvc,Evc,Svc,vvc,Bvc,wvc,Tvc,Rvc,Nvc,Dvc,kvc,xvc,Gvc,Fvc,Zvc,Lvc,Vvc,Wvc,Ovc,Pvc,Mvc,Hvc,Yvc,UHi,KHi,jHi,zHi,Qvc,Xvc,Jvc,Uvc,Kvc,qHi,$Hi,eYi,tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi,AYi,dYi,pYi,jvc,zvc,qvc,$vc,eBc,tBc,rBc,nBc,iBc,sBc,oBc,aBc,cBc,lBc,uBc,gBc,ABc,dBc,fYi,IYi,pBc,fBc,IBc,hYi,mYi,CYi,_Yi,yYi,bYi,EYi,hBc,mBc,CBc,_Bc,yBc,bBc,EBc,SBc,SYi,vYi,BYi,wYi,TYi,RYi,NYi,DYi,kYi,xYi,GYi,vBc,BBc,wBc,TBc,RBc,NBc,DBc,kBc,xBc,GBc,FBc,ZBc,FYi,ZYi,LYi,VYi,WYi,OYi,PYi,MYi,HYi,YYi,LBc,VBc,WBc,OBc,PBc,MBc,HBc,YBc,QBc,XBc,JBc,QYi=bc(()=>{yLr();yMi="cloud.provider",bMi="cloud.account.id",EMi="cloud.region",SMi="cloud.availability_zone",vMi="cloud.platform",BMi="aws.ecs.container.arn",wMi="aws.ecs.cluster.arn",TMi="aws.ecs.launchtype",RMi="aws.ecs.task.arn",NMi="aws.ecs.task.family",DMi="aws.ecs.task.revision",kMi="aws.eks.cluster.arn",xMi="aws.log.group.names",GMi="aws.log.group.arns",FMi="aws.log.stream.names",ZMi="aws.log.stream.arns",LMi="container.name",VMi="container.id",WMi="container.runtime",OMi="container.image.name",PMi="container.image.tag",MMi="deployment.environment",HMi="device.id",YMi="device.model.identifier",QMi="device.model.name",XMi="faas.name",JMi="faas.id",UMi="faas.version",KMi="faas.instance",jMi="faas.max_memory",zMi="host.id",qMi="host.name",$Mi="host.type",eHi="host.arch",tHi="host.image.name",rHi="host.image.id",nHi="host.image.version",iHi="k8s.cluster.name",sHi="k8s.node.name",oHi="k8s.node.uid",aHi="k8s.namespace.name",cHi="k8s.pod.uid",lHi="k8s.pod.name",uHi="k8s.container.name",gHi="k8s.replicaset.uid",AHi="k8s.replicaset.name",dHi="k8s.deployment.uid",pHi="k8s.deployment.name",fHi="k8s.statefulset.uid",IHi="k8s.statefulset.name",hHi="k8s.daemonset.uid",mHi="k8s.daemonset.name",CHi="k8s.job.uid",_Hi="k8s.job.name",yHi="k8s.cronjob.uid",bHi="k8s.cronjob.name",EHi="os.type",SHi="os.description",vHi="os.name",BHi="os.version",wHi="process.pid",THi="process.executable.name",RHi="process.executable.path",NHi="process.command",DHi="process.command_line",kHi="process.command_args",xHi="process.owner",GHi="process.runtime.name",FHi="process.runtime.version",ZHi="process.runtime.description",LHi="service.name",VHi="service.namespace",WHi="service.instance.id",OHi="service.version",PHi="telemetry.sdk.name",MHi="telemetry.sdk.language",HHi="telemetry.sdk.version",YHi="telemetry.auto.version",QHi="webengine.name",XHi="webengine.version",JHi="webengine.description",hSc=yMi,mSc=bMi,CSc=EMi,_Sc=SMi,ySc=vMi,bSc=BMi,ESc=wMi,SSc=TMi,vSc=RMi,BSc=NMi,wSc=DMi,TSc=kMi,RSc=xMi,NSc=GMi,DSc=FMi,kSc=ZMi,xSc=LMi,GSc=VMi,FSc=WMi,ZSc=OMi,LSc=PMi,VSc=MMi,WSc=HMi,OSc=YMi,PSc=QMi,MSc=XMi,HSc=JMi,YSc=UMi,QSc=KMi,XSc=jMi,JSc=zMi,USc=qMi,KSc=$Mi,jSc=eHi,zSc=tHi,qSc=rHi,$Sc=nHi,evc=iHi,tvc=sHi,rvc=oHi,nvc=aHi,ivc=cHi,svc=lHi,ovc=uHi,avc=gHi,cvc=AHi,lvc=dHi,uvc=pHi,gvc=fHi,Avc=IHi,dvc=hHi,pvc=mHi,fvc=CHi,Ivc=_Hi,hvc=yHi,mvc=bHi,Cvc=EHi,_vc=SHi,yvc=vHi,bvc=BHi,Evc=wHi,Svc=THi,vvc=RHi,Bvc=NHi,wvc=DHi,Tvc=kHi,Rvc=xHi,Nvc=GHi,Dvc=FHi,kvc=ZHi,xvc=LHi,Gvc=VHi,Fvc=WHi,Zvc=OHi,Lvc=PHi,Vvc=MHi,Wvc=HHi,Ovc=YHi,Pvc=QHi,Mvc=XHi,Hvc=JHi,Yvc=uw([yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,WMi,OMi,PMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,SHi,vHi,BHi,wHi,THi,RHi,NHi,DHi,kHi,xHi,GHi,FHi,ZHi,LHi,VHi,WHi,OHi,PHi,MHi,HHi,YHi,QHi,XHi,JHi]),UHi="alibaba_cloud",KHi="aws",jHi="azure",zHi="gcp",Qvc=UHi,Xvc=KHi,Jvc=jHi,Uvc=zHi,Kvc=uw([UHi,KHi,jHi,zHi]),qHi="alibaba_cloud_ecs",$Hi="alibaba_cloud_fc",eYi="aws_ec2",tYi="aws_ecs",rYi="aws_eks",nYi="aws_lambda",iYi="aws_elastic_beanstalk",sYi="azure_vm",oYi="azure_container_instances",aYi="azure_aks",cYi="azure_functions",lYi="azure_app_service",uYi="gcp_compute_engine",gYi="gcp_cloud_run",AYi="gcp_kubernetes_engine",dYi="gcp_cloud_functions",pYi="gcp_app_engine",jvc=qHi,zvc=$Hi,qvc=eYi,$vc=tYi,eBc=rYi,tBc=nYi,rBc=iYi,nBc=sYi,iBc=oYi,sBc=aYi,oBc=cYi,aBc=lYi,cBc=uYi,lBc=gYi,uBc=AYi,gBc=dYi,ABc=pYi,dBc=uw([qHi,$Hi,eYi,tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi,AYi,dYi,pYi]),fYi="ec2",IYi="fargate",pBc=fYi,fBc=IYi,IBc=uw([fYi,IYi]),hYi="amd64",mYi="arm32",CYi="arm64",_Yi="ia64",yYi="ppc32",bYi="ppc64",EYi="x86",hBc=hYi,mBc=mYi,CBc=CYi,_Bc=_Yi,yBc=yYi,bBc=bYi,EBc=EYi,SBc=uw([hYi,mYi,CYi,_Yi,yYi,bYi,EYi]),SYi="windows",vYi="linux",BYi="darwin",wYi="freebsd",TYi="netbsd",RYi="openbsd",NYi="dragonflybsd",DYi="hpux",kYi="aix",xYi="solaris",GYi="z_os",vBc=SYi,BBc=vYi,wBc=BYi,TBc=wYi,RBc=TYi,NBc=RYi,DBc=NYi,kBc=DYi,xBc=kYi,GBc=xYi,FBc=GYi,ZBc=uw([SYi,vYi,BYi,wYi,TYi,RYi,NYi,DYi,kYi,xYi,GYi]),FYi="cpp",ZYi="dotnet",LYi="erlang",VYi="go",WYi="java",OYi="nodejs",PYi="php",MYi="python",HYi="ruby",YYi="webjs",LBc=FYi,VBc=ZYi,WBc=LYi,OBc=VYi,PBc=WYi,MBc=OYi,HBc=PYi,YBc=MYi,QBc=HYi,XBc=YYi,JBc=uw([FYi,ZYi,LYi,VYi,WYi,OYi,PYi,MYi,HYi,YYi])});var XYi=bc(()=>{QYi()});var UBc,KBc,jBc,zBc,qBc,$Bc,ewc,twc,rwc,nwc,iwc,swc,owc,awc,cwc,lwc,uwc,gwc,Awc,dwc,pwc,fwc,Iwc,hwc,mwc,Cwc,_wc,ywc,bwc,Ewc,Swc,vwc,Bwc,wwc,Twc,Rwc,Nwc,Dwc,kwc,xwc,Gwc,Fwc,Zwc,Lwc,Vwc,Wwc,Owc,Pwc,Mwc,Hwc,Ywc,Qwc,Xwc,Jwc,Uwc,Kwc,jwc,zwc,qwc,$wc,eTc,tTc,rTc,nTc,iTc,sTc,oTc,aTc,cTc,lTc,uTc,gTc,ATc,dTc,pTc,fTc,ITc,hTc,mTc,CTc,_Tc,yTc,bTc,ETc,STc,vTc,BTc,wTc,TTc,RTc,NTc,DTc,kTc,xTc,GTc,FTc,ZTc,LTc,VTc,WTc,OTc,PTc,MTc,HTc,YTc,QTc,XTc,JTc,UTc,KTc,JYi=bc(()=>{UBc="aspnetcore.rate_limiting.result",KBc="acquired",jBc="endpoint_limiter",zBc="global_limiter",qBc="request_canceled",$Bc="telemetry.sdk.language",ewc="cpp",twc="dotnet",rwc="erlang",nwc="go",iwc="java",swc="nodejs",owc="php",awc="python",cwc="ruby",lwc="rust",uwc="swift",gwc="webjs",Awc="telemetry.sdk.name",dwc="telemetry.sdk.version",pwc="aspnetcore.diagnostics.handler.type",fwc="aspnetcore.diagnostics.exception.result",Iwc="aborted",hwc="handled",mwc="skipped",Cwc="unhandled",_wc="aspnetcore.rate_limiting.policy",ywc="aspnetcore.request.is_unhandled",bwc="aspnetcore.routing.is_fallback",Ewc="aspnetcore.routing.match_status",Swc="failure",vwc="success",Bwc="client.address",wwc="client.port",Twc="error.type",Rwc="_OTHER",Nwc="exception.escaped",Dwc="exception.message",kwc="exception.stacktrace",xwc="exception.type",Gwc=function(e){return"http.request.header."+e},Fwc="http.request.method",Zwc="_OTHER",Lwc="CONNECT",Vwc="DELETE",Wwc="GET",Owc="HEAD",Pwc="OPTIONS",Mwc="PATCH",Hwc="POST",Ywc="PUT",Qwc="TRACE",Xwc="http.request.method_original",Jwc="http.request.resend_count",Uwc=function(e){return"http.response.header."+e},Kwc="http.response.status_code",jwc="http.route",zwc="jvm.gc.action",qwc="jvm.gc.name",$wc="jvm.memory.pool.name",eTc="jvm.memory.type",tTc="heap",rTc="non_heap",nTc="jvm.thread.daemon",iTc="jvm.thread.state",sTc="blocked",oTc="new",aTc="runnable",cTc="terminated",lTc="timed_waiting",uTc="waiting",gTc="network.local.address",ATc="network.local.port",dTc="network.peer.address",pTc="network.peer.port",fTc="network.protocol.name",ITc="network.protocol.version",hTc="network.transport",mTc="pipe",CTc="quic",_Tc="tcp",yTc="udp",bTc="unix",ETc="network.type",STc="ipv4",vTc="ipv6",BTc="otel.scope.name",wTc="otel.scope.version",TTc="otel.status_code",RTc="ERROR",NTc="OK",DTc="otel.status_description",kTc="server.address",xTc="server.port",GTc="service.name",FTc="service.version",ZTc="signalr.connection.status",LTc="app_shutdown",VTc="normal_closure",WTc="timeout",OTc="signalr.transport",PTc="long_polling",MTc="server_sent_events",HTc="web_sockets",YTc="url.fragment",QTc="url.full",XTc="url.path",JTc="url.query",UTc="url.scheme",KTc="user_agent.original"});var jTc,zTc,qTc,$Tc,eRc,tRc,rRc,nRc,iRc,sRc,oRc,aRc,cRc,lRc,uRc,gRc,ARc,dRc,pRc,fRc,IRc,hRc,mRc,CRc,_Rc,yRc,bRc,ERc,SRc,vRc,BRc,UYi=bc(()=>{jTc="aspnetcore.diagnostics.exceptions",zTc="aspnetcore.rate_limiting.active_request_leases",qTc="aspnetcore.rate_limiting.queued_requests",$Tc="aspnetcore.rate_limiting.request.time_in_queue",eRc="aspnetcore.rate_limiting.request_lease.duration",tRc="aspnetcore.rate_limiting.requests",rRc="aspnetcore.routing.match_attempts",nRc="http.client.request.duration",iRc="http.server.request.duration",sRc="jvm.class.count",oRc="jvm.class.loaded",aRc="jvm.class.unloaded",cRc="jvm.cpu.count",lRc="jvm.cpu.recent_utilization",uRc="jvm.cpu.time",gRc="jvm.gc.duration",ARc="jvm.memory.committed",dRc="jvm.memory.limit",pRc="jvm.memory.used",fRc="jvm.memory.used_after_last_gc",IRc="jvm.thread.count",hRc="kestrel.active_connections",mRc="kestrel.active_tls_handshakes",CRc="kestrel.connection.duration",_Rc="kestrel.queued_connections",yRc="kestrel.queued_requests",bRc="kestrel.rejected_connections",ERc="kestrel.tls_handshake.duration",SRc="kestrel.upgraded_connections",vRc="signalr.server.active_connections",BRc="signalr.server.connection.duration"});var KYi={};Uf(KYi,{ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED:()=>Iwc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED:()=>hwc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED:()=>mwc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED:()=>Cwc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED:()=>KBc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER:()=>jBc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER:()=>zBc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED:()=>qBc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE:()=>Swc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS:()=>vwc,ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT:()=>fwc,ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE:()=>pwc,ATTR_ASPNETCORE_RATE_LIMITING_POLICY:()=>_wc,ATTR_ASPNETCORE_RATE_LIMITING_RESULT:()=>UBc,ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED:()=>ywc,ATTR_ASPNETCORE_ROUTING_IS_FALLBACK:()=>bwc,ATTR_ASPNETCORE_ROUTING_MATCH_STATUS:()=>Ewc,ATTR_CLIENT_ADDRESS:()=>Bwc,ATTR_CLIENT_PORT:()=>wwc,ATTR_ERROR_TYPE:()=>Twc,ATTR_EXCEPTION_ESCAPED:()=>Nwc,ATTR_EXCEPTION_MESSAGE:()=>Dwc,ATTR_EXCEPTION_STACKTRACE:()=>kwc,ATTR_EXCEPTION_TYPE:()=>xwc,ATTR_HTTP_REQUEST_HEADER:()=>Gwc,ATTR_HTTP_REQUEST_METHOD:()=>Fwc,ATTR_HTTP_REQUEST_METHOD_ORIGINAL:()=>Xwc,ATTR_HTTP_REQUEST_RESEND_COUNT:()=>Jwc,ATTR_HTTP_RESPONSE_HEADER:()=>Uwc,ATTR_HTTP_RESPONSE_STATUS_CODE:()=>Kwc,ATTR_HTTP_ROUTE:()=>jwc,ATTR_JVM_GC_ACTION:()=>zwc,ATTR_JVM_GC_NAME:()=>qwc,ATTR_JVM_MEMORY_POOL_NAME:()=>$wc,ATTR_JVM_MEMORY_TYPE:()=>eTc,ATTR_JVM_THREAD_DAEMON:()=>nTc,ATTR_JVM_THREAD_STATE:()=>iTc,ATTR_NETWORK_LOCAL_ADDRESS:()=>gTc,ATTR_NETWORK_LOCAL_PORT:()=>ATc,ATTR_NETWORK_PEER_ADDRESS:()=>dTc,ATTR_NETWORK_PEER_PORT:()=>pTc,ATTR_NETWORK_PROTOCOL_NAME:()=>fTc,ATTR_NETWORK_PROTOCOL_VERSION:()=>ITc,ATTR_NETWORK_TRANSPORT:()=>hTc,ATTR_NETWORK_TYPE:()=>ETc,ATTR_OTEL_SCOPE_NAME:()=>BTc,ATTR_OTEL_SCOPE_VERSION:()=>wTc,ATTR_OTEL_STATUS_CODE:()=>TTc,ATTR_OTEL_STATUS_DESCRIPTION:()=>DTc,ATTR_SERVER_ADDRESS:()=>kTc,ATTR_SERVER_PORT:()=>xTc,ATTR_SERVICE_NAME:()=>GTc,ATTR_SERVICE_VERSION:()=>FTc,ATTR_SIGNALR_CONNECTION_STATUS:()=>ZTc,ATTR_SIGNALR_TRANSPORT:()=>OTc,ATTR_TELEMETRY_SDK_LANGUAGE:()=>$Bc,ATTR_TELEMETRY_SDK_NAME:()=>Awc,ATTR_TELEMETRY_SDK_VERSION:()=>dwc,ATTR_URL_FRAGMENT:()=>YTc,ATTR_URL_FULL:()=>QTc,ATTR_URL_PATH:()=>XTc,ATTR_URL_QUERY:()=>JTc,ATTR_URL_SCHEME:()=>UTc,ATTR_USER_AGENT_ORIGINAL:()=>KTc,AWSECSLAUNCHTYPEVALUES_EC2:()=>pBc,AWSECSLAUNCHTYPEVALUES_FARGATE:()=>fBc,AwsEcsLaunchtypeValues:()=>IBc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS:()=>jvc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC:()=>zvc,CLOUDPLATFORMVALUES_AWS_EC2:()=>qvc,CLOUDPLATFORMVALUES_AWS_ECS:()=>$vc,CLOUDPLATFORMVALUES_AWS_EKS:()=>eBc,CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK:()=>rBc,CLOUDPLATFORMVALUES_AWS_LAMBDA:()=>tBc,CLOUDPLATFORMVALUES_AZURE_AKS:()=>sBc,CLOUDPLATFORMVALUES_AZURE_APP_SERVICE:()=>aBc,CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES:()=>iBc,CLOUDPLATFORMVALUES_AZURE_FUNCTIONS:()=>oBc,CLOUDPLATFORMVALUES_AZURE_VM:()=>nBc,CLOUDPLATFORMVALUES_GCP_APP_ENGINE:()=>ABc,CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS:()=>gBc,CLOUDPLATFORMVALUES_GCP_CLOUD_RUN:()=>lBc,CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE:()=>cBc,CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE:()=>uBc,CLOUDPROVIDERVALUES_ALIBABA_CLOUD:()=>Qvc,CLOUDPROVIDERVALUES_AWS:()=>Xvc,CLOUDPROVIDERVALUES_AZURE:()=>Jvc,CLOUDPROVIDERVALUES_GCP:()=>Uvc,CloudPlatformValues:()=>dBc,CloudProviderValues:()=>Kvc,DBCASSANDRACONSISTENCYLEVELVALUES_ALL:()=>R1c,DBCASSANDRACONSISTENCYLEVELVALUES_ANY:()=>L1c,DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM:()=>N1c,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE:()=>Z1c,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM:()=>k1c,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL:()=>W1c,DBCASSANDRACONSISTENCYLEVELVALUES_ONE:()=>x1c,DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM:()=>D1c,DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL:()=>V1c,DBCASSANDRACONSISTENCYLEVELVALUES_THREE:()=>F1c,DBCASSANDRACONSISTENCYLEVELVALUES_TWO:()=>G1c,DBSYSTEMVALUES_ADABAS:()=>qEc,DBSYSTEMVALUES_CACHE:()=>zEc,DBSYSTEMVALUES_CASSANDRA:()=>f1c,DBSYSTEMVALUES_CLOUDSCAPE:()=>HEc,DBSYSTEMVALUES_COCKROACHDB:()=>w1c,DBSYSTEMVALUES_COLDFUSION:()=>p1c,DBSYSTEMVALUES_COSMOSDB:()=>y1c,DBSYSTEMVALUES_COUCHBASE:()=>C1c,DBSYSTEMVALUES_COUCHDB:()=>_1c,DBSYSTEMVALUES_DB2:()=>WEc,DBSYSTEMVALUES_DERBY:()=>e1c,DBSYSTEMVALUES_DYNAMODB:()=>b1c,DBSYSTEMVALUES_EDB:()=>jEc,DBSYSTEMVALUES_ELASTICSEARCH:()=>v1c,DBSYSTEMVALUES_FILEMAKER:()=>t1c,DBSYSTEMVALUES_FIREBIRD:()=>$Ec,DBSYSTEMVALUES_FIRSTSQL:()=>KEc,DBSYSTEMVALUES_GEODE:()=>S1c,DBSYSTEMVALUES_H2:()=>d1c,DBSYSTEMVALUES_HANADB:()=>JEc,DBSYSTEMVALUES_HBASE:()=>I1c,DBSYSTEMVALUES_HIVE:()=>MEc,DBSYSTEMVALUES_HSQLDB:()=>YEc,DBSYSTEMVALUES_INFORMIX:()=>r1c,DBSYSTEMVALUES_INGRES:()=>UEc,DBSYSTEMVALUES_INSTANTDB:()=>n1c,DBSYSTEMVALUES_INTERBASE:()=>i1c,DBSYSTEMVALUES_MARIADB:()=>s1c,DBSYSTEMVALUES_MAXDB:()=>XEc,DBSYSTEMVALUES_MEMCACHED:()=>B1c,DBSYSTEMVALUES_MONGODB:()=>h1c,DBSYSTEMVALUES_MSSQL:()=>ZEc,DBSYSTEMVALUES_MYSQL:()=>LEc,DBSYSTEMVALUES_NEO4J:()=>E1c,DBSYSTEMVALUES_NETEZZA:()=>o1c,DBSYSTEMVALUES_ORACLE:()=>VEc,DBSYSTEMVALUES_OTHER_SQL:()=>FEc,DBSYSTEMVALUES_PERVASIVE:()=>a1c,DBSYSTEMVALUES_POINTBASE:()=>c1c,DBSYSTEMVALUES_POSTGRESQL:()=>OEc,DBSYSTEMVALUES_PROGRESS:()=>QEc,DBSYSTEMVALUES_REDIS:()=>m1c,DBSYSTEMVALUES_REDSHIFT:()=>PEc,DBSYSTEMVALUES_SQLITE:()=>l1c,DBSYSTEMVALUES_SYBASE:()=>u1c,DBSYSTEMVALUES_TERADATA:()=>g1c,DBSYSTEMVALUES_VERTICA:()=>A1c,DbCassandraConsistencyLevelValues:()=>O1c,DbSystemValues:()=>T1c,ERROR_TYPE_VALUE_OTHER:()=>Rwc,FAASDOCUMENTOPERATIONVALUES_DELETE:()=>K1c,FAASDOCUMENTOPERATIONVALUES_EDIT:()=>U1c,FAASDOCUMENTOPERATIONVALUES_INSERT:()=>J1c,FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD:()=>z1c,FAASINVOKEDPROVIDERVALUES_AWS:()=>q1c,FAASINVOKEDPROVIDERVALUES_AZURE:()=>$1c,FAASINVOKEDPROVIDERVALUES_GCP:()=>e2c,FAASTRIGGERVALUES_DATASOURCE:()=>P1c,FAASTRIGGERVALUES_HTTP:()=>M1c,FAASTRIGGERVALUES_OTHER:()=>Q1c,FAASTRIGGERVALUES_PUBSUB:()=>H1c,FAASTRIGGERVALUES_TIMER:()=>Y1c,FaasDocumentOperationValues:()=>j1c,FaasInvokedProviderValues:()=>t2c,FaasTriggerValues:()=>X1c,HOSTARCHVALUES_AMD64:()=>hBc,HOSTARCHVALUES_ARM32:()=>mBc,HOSTARCHVALUES_ARM64:()=>CBc,HOSTARCHVALUES_IA64:()=>_Bc,HOSTARCHVALUES_PPC32:()=>yBc,HOSTARCHVALUES_PPC64:()=>bBc,HOSTARCHVALUES_X86:()=>EBc,HTTPFLAVORVALUES_HTTP_1_0:()=>V2c,HTTPFLAVORVALUES_HTTP_1_1:()=>W2c,HTTPFLAVORVALUES_HTTP_2_0:()=>O2c,HTTPFLAVORVALUES_QUIC:()=>M2c,HTTPFLAVORVALUES_SPDY:()=>P2c,HTTP_REQUEST_METHOD_VALUE_CONNECT:()=>Lwc,HTTP_REQUEST_METHOD_VALUE_DELETE:()=>Vwc,HTTP_REQUEST_METHOD_VALUE_GET:()=>Wwc,HTTP_REQUEST_METHOD_VALUE_HEAD:()=>Owc,HTTP_REQUEST_METHOD_VALUE_OPTIONS:()=>Pwc,HTTP_REQUEST_METHOD_VALUE_OTHER:()=>Zwc,HTTP_REQUEST_METHOD_VALUE_PATCH:()=>Mwc,HTTP_REQUEST_METHOD_VALUE_POST:()=>Hwc,HTTP_REQUEST_METHOD_VALUE_PUT:()=>Ywc,HTTP_REQUEST_METHOD_VALUE_TRACE:()=>Qwc,HostArchValues:()=>SBc,HttpFlavorValues:()=>H2c,JVM_MEMORY_TYPE_VALUE_HEAP:()=>tTc,JVM_MEMORY_TYPE_VALUE_NON_HEAP:()=>rTc,JVM_THREAD_STATE_VALUE_BLOCKED:()=>sTc,JVM_THREAD_STATE_VALUE_NEW:()=>oTc,JVM_THREAD_STATE_VALUE_RUNNABLE:()=>aTc,JVM_THREAD_STATE_VALUE_TERMINATED:()=>cTc,JVM_THREAD_STATE_VALUE_TIMED_WAITING:()=>lTc,JVM_THREAD_STATE_VALUE_WAITING:()=>uTc,MESSAGETYPEVALUES_RECEIVED:()=>fSc,MESSAGETYPEVALUES_SENT:()=>pSc,MESSAGINGDESTINATIONKINDVALUES_QUEUE:()=>Y2c,MESSAGINGDESTINATIONKINDVALUES_TOPIC:()=>Q2c,MESSAGINGOPERATIONVALUES_PROCESS:()=>U2c,MESSAGINGOPERATIONVALUES_RECEIVE:()=>J2c,METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS:()=>jTc,METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES:()=>zTc,METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS:()=>qTc,METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS:()=>tRc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION:()=>eRc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE:()=>$Tc,METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS:()=>rRc,METRIC_HTTP_CLIENT_REQUEST_DURATION:()=>nRc,METRIC_HTTP_SERVER_REQUEST_DURATION:()=>iRc,METRIC_JVM_CLASS_COUNT:()=>sRc,METRIC_JVM_CLASS_LOADED:()=>oRc,METRIC_JVM_CLASS_UNLOADED:()=>aRc,METRIC_JVM_CPU_COUNT:()=>cRc,METRIC_JVM_CPU_RECENT_UTILIZATION:()=>lRc,METRIC_JVM_CPU_TIME:()=>uRc,METRIC_JVM_GC_DURATION:()=>gRc,METRIC_JVM_MEMORY_COMMITTED:()=>ARc,METRIC_JVM_MEMORY_LIMIT:()=>dRc,METRIC_JVM_MEMORY_USED:()=>pRc,METRIC_JVM_MEMORY_USED_AFTER_LAST_GC:()=>fRc,METRIC_JVM_THREAD_COUNT:()=>IRc,METRIC_KESTREL_ACTIVE_CONNECTIONS:()=>hRc,METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES:()=>mRc,METRIC_KESTREL_CONNECTION_DURATION:()=>CRc,METRIC_KESTREL_QUEUED_CONNECTIONS:()=>_Rc,METRIC_KESTREL_QUEUED_REQUESTS:()=>yRc,METRIC_KESTREL_REJECTED_CONNECTIONS:()=>bRc,METRIC_KESTREL_TLS_HANDSHAKE_DURATION:()=>ERc,METRIC_KESTREL_UPGRADED_CONNECTIONS:()=>SRc,METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS:()=>vRc,METRIC_SIGNALR_SERVER_CONNECTION_DURATION:()=>BRc,MessageTypeValues:()=>ISc,MessagingDestinationKindValues:()=>X2c,MessagingOperationValues:()=>K2c,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA:()=>C2c,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT:()=>b2c,NETHOSTCONNECTIONSUBTYPEVALUES_EDGE:()=>h2c,NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD:()=>R2c,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0:()=>_2c,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A:()=>y2c,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B:()=>w2c,NETHOSTCONNECTIONSUBTYPEVALUES_GPRS:()=>I2c,NETHOSTCONNECTIONSUBTYPEVALUES_GSM:()=>D2c,NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA:()=>E2c,NETHOSTCONNECTIONSUBTYPEVALUES_HSPA:()=>v2c,NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP:()=>N2c,NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA:()=>S2c,NETHOSTCONNECTIONSUBTYPEVALUES_IDEN:()=>B2c,NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN:()=>x2c,NETHOSTCONNECTIONSUBTYPEVALUES_LTE:()=>T2c,NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA:()=>Z2c,NETHOSTCONNECTIONSUBTYPEVALUES_NR:()=>G2c,NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA:()=>F2c,NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA:()=>k2c,NETHOSTCONNECTIONSUBTYPEVALUES_UMTS:()=>m2c,NETHOSTCONNECTIONTYPEVALUES_CELL:()=>A2c,NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE:()=>d2c,NETHOSTCONNECTIONTYPEVALUES_UNKNOWN:()=>p2c,NETHOSTCONNECTIONTYPEVALUES_WIFI:()=>u2c,NETHOSTCONNECTIONTYPEVALUES_WIRED:()=>g2c,NETTRANSPORTVALUES_INPROC:()=>a2c,NETTRANSPORTVALUES_IP:()=>i2c,NETTRANSPORTVALUES_IP_TCP:()=>r2c,NETTRANSPORTVALUES_IP_UDP:()=>n2c,NETTRANSPORTVALUES_OTHER:()=>c2c,NETTRANSPORTVALUES_PIPE:()=>o2c,NETTRANSPORTVALUES_UNIX:()=>s2c,NETWORK_TRANSPORT_VALUE_PIPE:()=>mTc,NETWORK_TRANSPORT_VALUE_QUIC:()=>CTc,NETWORK_TRANSPORT_VALUE_TCP:()=>_Tc,NETWORK_TRANSPORT_VALUE_UDP:()=>yTc,NETWORK_TRANSPORT_VALUE_UNIX:()=>bTc,NETWORK_TYPE_VALUE_IPV4:()=>STc,NETWORK_TYPE_VALUE_IPV6:()=>vTc,NetHostConnectionSubtypeValues:()=>L2c,NetHostConnectionTypeValues:()=>f2c,NetTransportValues:()=>l2c,OSTYPEVALUES_AIX:()=>xBc,OSTYPEVALUES_DARWIN:()=>wBc,OSTYPEVALUES_DRAGONFLYBSD:()=>DBc,OSTYPEVALUES_FREEBSD:()=>TBc,OSTYPEVALUES_HPUX:()=>kBc,OSTYPEVALUES_LINUX:()=>BBc,OSTYPEVALUES_NETBSD:()=>RBc,OSTYPEVALUES_OPENBSD:()=>NBc,OSTYPEVALUES_SOLARIS:()=>GBc,OSTYPEVALUES_WINDOWS:()=>vBc,OSTYPEVALUES_Z_OS:()=>FBc,OTEL_STATUS_CODE_VALUE_ERROR:()=>RTc,OTEL_STATUS_CODE_VALUE_OK:()=>NTc,OsTypeValues:()=>ZBc,RPCGRPCSTATUSCODEVALUES_ABORTED:()=>oSc,RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS:()=>rSc,RPCGRPCSTATUSCODEVALUES_CANCELLED:()=>z2c,RPCGRPCSTATUSCODEVALUES_DATA_LOSS:()=>gSc,RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED:()=>eSc,RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION:()=>sSc,RPCGRPCSTATUSCODEVALUES_INTERNAL:()=>lSc,RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT:()=>$2c,RPCGRPCSTATUSCODEVALUES_NOT_FOUND:()=>tSc,RPCGRPCSTATUSCODEVALUES_OK:()=>j2c,RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE:()=>aSc,RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED:()=>nSc,RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED:()=>iSc,RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED:()=>ASc,RPCGRPCSTATUSCODEVALUES_UNAVAILABLE:()=>uSc,RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED:()=>cSc,RPCGRPCSTATUSCODEVALUES_UNKNOWN:()=>q2c,RpcGrpcStatusCodeValues:()=>dSc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET:()=>Hbc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:()=>tEc,SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ:()=>Obc,SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY:()=>Zbc,SEMATTRS_AWS_DYNAMODB_COUNT:()=>$bc,SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE:()=>Ubc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:()=>Xbc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:()=>rEc,SEMATTRS_AWS_DYNAMODB_INDEX_NAME:()=>Ybc,SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS:()=>Lbc,SEMATTRS_AWS_DYNAMODB_LIMIT:()=>Mbc,SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:()=>Jbc,SEMATTRS_AWS_DYNAMODB_PROJECTION:()=>Pbc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:()=>Vbc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:()=>Wbc,SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT:()=>eEc,SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD:()=>jbc,SEMATTRS_AWS_DYNAMODB_SEGMENT:()=>zbc,SEMATTRS_AWS_DYNAMODB_SELECT:()=>Qbc,SEMATTRS_AWS_DYNAMODB_TABLE_COUNT:()=>Kbc,SEMATTRS_AWS_DYNAMODB_TABLE_NAMES:()=>Fbc,SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS:()=>qbc,SEMATTRS_AWS_LAMBDA_INVOKED_ARN:()=>pyc,SEMATTRS_CODE_FILEPATH:()=>mbc,SEMATTRS_CODE_FUNCTION:()=>Ibc,SEMATTRS_CODE_LINENO:()=>Cbc,SEMATTRS_CODE_NAMESPACE:()=>hbc,SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL:()=>vyc,SEMATTRS_DB_CASSANDRA_COORDINATOR_DC:()=>Nyc,SEMATTRS_DB_CASSANDRA_COORDINATOR_ID:()=>Ryc,SEMATTRS_DB_CASSANDRA_IDEMPOTENCE:()=>wyc,SEMATTRS_DB_CASSANDRA_KEYSPACE:()=>Eyc,SEMATTRS_DB_CASSANDRA_PAGE_SIZE:()=>Syc,SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:()=>Tyc,SEMATTRS_DB_CASSANDRA_TABLE:()=>Byc,SEMATTRS_DB_CONNECTION_STRING:()=>Iyc,SEMATTRS_DB_HBASE_NAMESPACE:()=>Dyc,SEMATTRS_DB_JDBC_DRIVER_CLASSNAME:()=>myc,SEMATTRS_DB_MONGODB_COLLECTION:()=>xyc,SEMATTRS_DB_MSSQL_INSTANCE_NAME:()=>byc,SEMATTRS_DB_NAME:()=>Cyc,SEMATTRS_DB_OPERATION:()=>yyc,SEMATTRS_DB_REDIS_DATABASE_INDEX:()=>kyc,SEMATTRS_DB_SQL_TABLE:()=>Gyc,SEMATTRS_DB_STATEMENT:()=>_yc,SEMATTRS_DB_SYSTEM:()=>fyc,SEMATTRS_DB_USER:()=>hyc,SEMATTRS_ENDUSER_ID:()=>gbc,SEMATTRS_ENDUSER_ROLE:()=>Abc,SEMATTRS_ENDUSER_SCOPE:()=>dbc,SEMATTRS_EXCEPTION_ESCAPED:()=>Vyc,SEMATTRS_EXCEPTION_MESSAGE:()=>Zyc,SEMATTRS_EXCEPTION_STACKTRACE:()=>Lyc,SEMATTRS_EXCEPTION_TYPE:()=>Fyc,SEMATTRS_FAAS_COLDSTART:()=>Jyc,SEMATTRS_FAAS_CRON:()=>Xyc,SEMATTRS_FAAS_DOCUMENT_COLLECTION:()=>Pyc,SEMATTRS_FAAS_DOCUMENT_NAME:()=>Yyc,SEMATTRS_FAAS_DOCUMENT_OPERATION:()=>Myc,SEMATTRS_FAAS_DOCUMENT_TIME:()=>Hyc,SEMATTRS_FAAS_EXECUTION:()=>Oyc,SEMATTRS_FAAS_INVOKED_NAME:()=>Uyc,SEMATTRS_FAAS_INVOKED_PROVIDER:()=>Kyc,SEMATTRS_FAAS_INVOKED_REGION:()=>jyc,SEMATTRS_FAAS_TIME:()=>Qyc,SEMATTRS_FAAS_TRIGGER:()=>Wyc,SEMATTRS_HTTP_CLIENT_IP:()=>Gbc,SEMATTRS_HTTP_FLAVOR:()=>Bbc,SEMATTRS_HTTP_HOST:()=>Ebc,SEMATTRS_HTTP_METHOD:()=>_bc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH:()=>Tbc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:()=>Rbc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH:()=>Nbc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:()=>Dbc,SEMATTRS_HTTP_ROUTE:()=>xbc,SEMATTRS_HTTP_SCHEME:()=>Sbc,SEMATTRS_HTTP_SERVER_NAME:()=>kbc,SEMATTRS_HTTP_STATUS_CODE:()=>vbc,SEMATTRS_HTTP_TARGET:()=>bbc,SEMATTRS_HTTP_URL:()=>ybc,SEMATTRS_HTTP_USER_AGENT:()=>wbc,SEMATTRS_MESSAGE_COMPRESSED_SIZE:()=>kEc,SEMATTRS_MESSAGE_ID:()=>DEc,SEMATTRS_MESSAGE_TYPE:()=>NEc,SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE:()=>xEc,SEMATTRS_MESSAGING_CONSUMER_ID:()=>fEc,SEMATTRS_MESSAGING_CONVERSATION_ID:()=>gEc,SEMATTRS_MESSAGING_DESTINATION:()=>iEc,SEMATTRS_MESSAGING_DESTINATION_KIND:()=>sEc,SEMATTRS_MESSAGING_KAFKA_CLIENT_ID:()=>CEc,SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP:()=>mEc,SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY:()=>hEc,SEMATTRS_MESSAGING_KAFKA_PARTITION:()=>_Ec,SEMATTRS_MESSAGING_KAFKA_TOMBSTONE:()=>yEc,SEMATTRS_MESSAGING_MESSAGE_ID:()=>uEc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:()=>dEc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:()=>AEc,SEMATTRS_MESSAGING_OPERATION:()=>pEc,SEMATTRS_MESSAGING_PROTOCOL:()=>aEc,SEMATTRS_MESSAGING_PROTOCOL_VERSION:()=>cEc,SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY:()=>IEc,SEMATTRS_MESSAGING_SYSTEM:()=>nEc,SEMATTRS_MESSAGING_TEMP_DESTINATION:()=>oEc,SEMATTRS_MESSAGING_URL:()=>lEc,SEMATTRS_NET_HOST_CARRIER_ICC:()=>lbc,SEMATTRS_NET_HOST_CARRIER_MCC:()=>abc,SEMATTRS_NET_HOST_CARRIER_MNC:()=>cbc,SEMATTRS_NET_HOST_CARRIER_NAME:()=>obc,SEMATTRS_NET_HOST_CONNECTION_SUBTYPE:()=>sbc,SEMATTRS_NET_HOST_CONNECTION_TYPE:()=>ibc,SEMATTRS_NET_HOST_IP:()=>tbc,SEMATTRS_NET_HOST_NAME:()=>nbc,SEMATTRS_NET_HOST_PORT:()=>rbc,SEMATTRS_NET_PEER_IP:()=>qyc,SEMATTRS_NET_PEER_NAME:()=>ebc,SEMATTRS_NET_PEER_PORT:()=>$yc,SEMATTRS_NET_TRANSPORT:()=>zyc,SEMATTRS_PEER_SERVICE:()=>ubc,SEMATTRS_RPC_GRPC_STATUS_CODE:()=>vEc,SEMATTRS_RPC_JSONRPC_ERROR_CODE:()=>TEc,SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE:()=>REc,SEMATTRS_RPC_JSONRPC_REQUEST_ID:()=>wEc,SEMATTRS_RPC_JSONRPC_VERSION:()=>BEc,SEMATTRS_RPC_METHOD:()=>SEc,SEMATTRS_RPC_SERVICE:()=>EEc,SEMATTRS_RPC_SYSTEM:()=>bEc,SEMATTRS_THREAD_ID:()=>pbc,SEMATTRS_THREAD_NAME:()=>fbc,SEMRESATTRS_AWS_ECS_CLUSTER_ARN:()=>ESc,SEMRESATTRS_AWS_ECS_CONTAINER_ARN:()=>bSc,SEMRESATTRS_AWS_ECS_LAUNCHTYPE:()=>SSc,SEMRESATTRS_AWS_ECS_TASK_ARN:()=>vSc,SEMRESATTRS_AWS_ECS_TASK_FAMILY:()=>BSc,SEMRESATTRS_AWS_ECS_TASK_REVISION:()=>wSc,SEMRESATTRS_AWS_EKS_CLUSTER_ARN:()=>TSc,SEMRESATTRS_AWS_LOG_GROUP_ARNS:()=>NSc,SEMRESATTRS_AWS_LOG_GROUP_NAMES:()=>RSc,SEMRESATTRS_AWS_LOG_STREAM_ARNS:()=>kSc,SEMRESATTRS_AWS_LOG_STREAM_NAMES:()=>DSc,SEMRESATTRS_CLOUD_ACCOUNT_ID:()=>mSc,SEMRESATTRS_CLOUD_AVAILABILITY_ZONE:()=>_Sc,SEMRESATTRS_CLOUD_PLATFORM:()=>ySc,SEMRESATTRS_CLOUD_PROVIDER:()=>hSc,SEMRESATTRS_CLOUD_REGION:()=>CSc,SEMRESATTRS_CONTAINER_ID:()=>GSc,SEMRESATTRS_CONTAINER_IMAGE_NAME:()=>ZSc,SEMRESATTRS_CONTAINER_IMAGE_TAG:()=>LSc,SEMRESATTRS_CONTAINER_NAME:()=>xSc,SEMRESATTRS_CONTAINER_RUNTIME:()=>FSc,SEMRESATTRS_DEPLOYMENT_ENVIRONMENT:()=>VSc,SEMRESATTRS_DEVICE_ID:()=>WSc,SEMRESATTRS_DEVICE_MODEL_IDENTIFIER:()=>OSc,SEMRESATTRS_DEVICE_MODEL_NAME:()=>PSc,SEMRESATTRS_FAAS_ID:()=>HSc,SEMRESATTRS_FAAS_INSTANCE:()=>QSc,SEMRESATTRS_FAAS_MAX_MEMORY:()=>XSc,SEMRESATTRS_FAAS_NAME:()=>MSc,SEMRESATTRS_FAAS_VERSION:()=>YSc,SEMRESATTRS_HOST_ARCH:()=>jSc,SEMRESATTRS_HOST_ID:()=>JSc,SEMRESATTRS_HOST_IMAGE_ID:()=>qSc,SEMRESATTRS_HOST_IMAGE_NAME:()=>zSc,SEMRESATTRS_HOST_IMAGE_VERSION:()=>$Sc,SEMRESATTRS_HOST_NAME:()=>USc,SEMRESATTRS_HOST_TYPE:()=>KSc,SEMRESATTRS_K8S_CLUSTER_NAME:()=>evc,SEMRESATTRS_K8S_CONTAINER_NAME:()=>ovc,SEMRESATTRS_K8S_CRONJOB_NAME:()=>mvc,SEMRESATTRS_K8S_CRONJOB_UID:()=>hvc,SEMRESATTRS_K8S_DAEMONSET_NAME:()=>pvc,SEMRESATTRS_K8S_DAEMONSET_UID:()=>dvc,SEMRESATTRS_K8S_DEPLOYMENT_NAME:()=>uvc,SEMRESATTRS_K8S_DEPLOYMENT_UID:()=>lvc,SEMRESATTRS_K8S_JOB_NAME:()=>Ivc,SEMRESATTRS_K8S_JOB_UID:()=>fvc,SEMRESATTRS_K8S_NAMESPACE_NAME:()=>nvc,SEMRESATTRS_K8S_NODE_NAME:()=>tvc,SEMRESATTRS_K8S_NODE_UID:()=>rvc,SEMRESATTRS_K8S_POD_NAME:()=>svc,SEMRESATTRS_K8S_POD_UID:()=>ivc,SEMRESATTRS_K8S_REPLICASET_NAME:()=>cvc,SEMRESATTRS_K8S_REPLICASET_UID:()=>avc,SEMRESATTRS_K8S_STATEFULSET_NAME:()=>Avc,SEMRESATTRS_K8S_STATEFULSET_UID:()=>gvc,SEMRESATTRS_OS_DESCRIPTION:()=>_vc,SEMRESATTRS_OS_NAME:()=>yvc,SEMRESATTRS_OS_TYPE:()=>Cvc,SEMRESATTRS_OS_VERSION:()=>bvc,SEMRESATTRS_PROCESS_COMMAND:()=>Bvc,SEMRESATTRS_PROCESS_COMMAND_ARGS:()=>Tvc,SEMRESATTRS_PROCESS_COMMAND_LINE:()=>wvc,SEMRESATTRS_PROCESS_EXECUTABLE_NAME:()=>Svc,SEMRESATTRS_PROCESS_EXECUTABLE_PATH:()=>vvc,SEMRESATTRS_PROCESS_OWNER:()=>Rvc,SEMRESATTRS_PROCESS_PID:()=>Evc,SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION:()=>kvc,SEMRESATTRS_PROCESS_RUNTIME_NAME:()=>Nvc,SEMRESATTRS_PROCESS_RUNTIME_VERSION:()=>Dvc,SEMRESATTRS_SERVICE_INSTANCE_ID:()=>Fvc,SEMRESATTRS_SERVICE_NAME:()=>xvc,SEMRESATTRS_SERVICE_NAMESPACE:()=>Gvc,SEMRESATTRS_SERVICE_VERSION:()=>Zvc,SEMRESATTRS_TELEMETRY_AUTO_VERSION:()=>Ovc,SEMRESATTRS_TELEMETRY_SDK_LANGUAGE:()=>Vvc,SEMRESATTRS_TELEMETRY_SDK_NAME:()=>Lvc,SEMRESATTRS_TELEMETRY_SDK_VERSION:()=>Wvc,SEMRESATTRS_WEBENGINE_DESCRIPTION:()=>Hvc,SEMRESATTRS_WEBENGINE_NAME:()=>Pvc,SEMRESATTRS_WEBENGINE_VERSION:()=>Mvc,SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN:()=>LTc,SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE:()=>VTc,SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT:()=>WTc,SIGNALR_TRANSPORT_VALUE_LONG_POLLING:()=>PTc,SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS:()=>MTc,SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS:()=>HTc,SemanticAttributes:()=>GEc,SemanticResourceAttributes:()=>Yvc,TELEMETRYSDKLANGUAGEVALUES_CPP:()=>LBc,TELEMETRYSDKLANGUAGEVALUES_DOTNET:()=>VBc,TELEMETRYSDKLANGUAGEVALUES_ERLANG:()=>WBc,TELEMETRYSDKLANGUAGEVALUES_GO:()=>OBc,TELEMETRYSDKLANGUAGEVALUES_JAVA:()=>PBc,TELEMETRYSDKLANGUAGEVALUES_NODEJS:()=>MBc,TELEMETRYSDKLANGUAGEVALUES_PHP:()=>HBc,TELEMETRYSDKLANGUAGEVALUES_PYTHON:()=>YBc,TELEMETRYSDKLANGUAGEVALUES_RUBY:()=>QBc,TELEMETRYSDKLANGUAGEVALUES_WEBJS:()=>XBc,TELEMETRY_SDK_LANGUAGE_VALUE_CPP:()=>ewc,TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET:()=>twc,TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG:()=>rwc,TELEMETRY_SDK_LANGUAGE_VALUE_GO:()=>nwc,TELEMETRY_SDK_LANGUAGE_VALUE_JAVA:()=>iwc,TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS:()=>swc,TELEMETRY_SDK_LANGUAGE_VALUE_PHP:()=>owc,TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON:()=>awc,TELEMETRY_SDK_LANGUAGE_VALUE_RUBY:()=>cwc,TELEMETRY_SDK_LANGUAGE_VALUE_RUST:()=>lwc,TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT:()=>uwc,TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS:()=>gwc,TelemetrySdkLanguageValues:()=>JBc});var jYi=bc(()=>{_Mi();XYi();JYi();UYi()});var zYi=H(KSt=>{"use strict";Object.defineProperty(KSt,"__esModule",{value:!0});KSt.SDK_INFO=void 0;var wRc=_Lr(),mKe=(jYi(),vi(KYi));KSt.SDK_INFO={[mKe.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[mKe.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[mKe.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:mKe.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[mKe.SEMRESATTRS_TELEMETRY_SDK_VERSION]:wRc.VERSION}});var qYi=H(jSt=>{"use strict";Object.defineProperty(jSt,"__esModule",{value:!0});jSt.unrefTimer=void 0;function TRc(e){e.unref()}jSt.unrefTimer=TRc});var eQi=H(hD=>{"use strict";Object.defineProperty(hD,"__esModule",{value:!0});hD.unrefTimer=hD.SDK_INFO=hD.otperformance=hD.RandomIdGenerator=hD.hexToBase64=hD._globalThis=hD.getEnv=hD.getEnvWithoutDefaults=void 0;var $Yi=bWi();Object.defineProperty(hD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return $Yi.getEnvWithoutDefaults}});Object.defineProperty(hD,"getEnv",{enumerable:!0,get:function(){return $Yi.getEnv}});var RRc=EWi();Object.defineProperty(hD,"_globalThis",{enumerable:!0,get:function(){return RRc._globalThis}});var NRc=vWi();Object.defineProperty(hD,"hexToBase64",{enumerable:!0,get:function(){return NRc.hexToBase64}});var DRc=TWi();Object.defineProperty(hD,"RandomIdGenerator",{enumerable:!0,get:function(){return DRc.RandomIdGenerator}});var kRc=RWi();Object.defineProperty(hD,"otperformance",{enumerable:!0,get:function(){return kRc.otperformance}});var xRc=zYi();Object.defineProperty(hD,"SDK_INFO",{enumerable:!0,get:function(){return xRc.SDK_INFO}});var GRc=qYi();Object.defineProperty(hD,"unrefTimer",{enumerable:!0,get:function(){return GRc.unrefTimer}})});var bLr=H(mD=>{"use strict";Object.defineProperty(mD,"__esModule",{value:!0});mD.unrefTimer=mD.otperformance=mD.hexToBase64=mD.getEnvWithoutDefaults=mD.getEnv=mD._globalThis=mD.SDK_INFO=mD.RandomIdGenerator=void 0;var ple=eQi();Object.defineProperty(mD,"RandomIdGenerator",{enumerable:!0,get:function(){return ple.RandomIdGenerator}});Object.defineProperty(mD,"SDK_INFO",{enumerable:!0,get:function(){return ple.SDK_INFO}});Object.defineProperty(mD,"_globalThis",{enumerable:!0,get:function(){return ple._globalThis}});Object.defineProperty(mD,"getEnv",{enumerable:!0,get:function(){return ple.getEnv}});Object.defineProperty(mD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return ple.getEnvWithoutDefaults}});Object.defineProperty(mD,"hexToBase64",{enumerable:!0,get:function(){return ple.hexToBase64}});Object.defineProperty(mD,"otperformance",{enumerable:!0,get:function(){return ple.otperformance}});Object.defineProperty(mD,"unrefTimer",{enumerable:!0,get:function(){return ple.unrefTimer}})});var iQi=H(YE=>{"use strict";Object.defineProperty(YE,"__esModule",{value:!0});YE.addHrTimes=YE.isTimeInput=YE.isTimeInputHrTime=YE.hrTimeToMicroseconds=YE.hrTimeToMilliseconds=YE.hrTimeToNanoseconds=YE.hrTimeToTimeStamp=YE.hrTimeDuration=YE.timeInputToHrTime=YE.hrTime=YE.getTimeOrigin=YE.millisToHrTime=void 0;var ELr=bLr(),tQi=9,FRc=6,ZRc=Math.pow(10,FRc),zSt=Math.pow(10,tQi);function CKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*ZRc);return[r,n]}YE.millisToHrTime=CKe;function SLr(){let e=ELr.otperformance.timeOrigin;if(typeof e!="number"){let t=ELr.otperformance;e=t.timing&&t.timing.fetchStart}return e}YE.getTimeOrigin=SLr;function rQi(e){let t=CKe(SLr()),r=CKe(typeof e=="number"?e:ELr.otperformance.now());return nQi(t,r)}YE.hrTime=rQi;function LRc(e){if(vLr(e))return e;if(typeof e=="number")return e=zSt&&(r[1]-=zSt,r[0]+=1),r}YE.addHrTimes=nQi});var sQi=H(_Ke=>{"use strict";Object.defineProperty(_Ke,"__esModule",{value:!0});_Ke.ExportResultCode=void 0;var YRc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(YRc=_Ke.ExportResultCode||(_Ke.ExportResultCode={}))});var aQi=H(qSt=>{"use strict";Object.defineProperty(qSt,"__esModule",{value:!0});qSt.CompositePropagator=void 0;var oQi=(LI(),vi(ZI)),BLr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){oQi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){oQi.diag.warn(`Failed to extract with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};qSt.CompositePropagator=BLr});var cQi=H(KDe=>{"use strict";Object.defineProperty(KDe,"__esModule",{value:!0});KDe.validateValue=KDe.validateKey=void 0;var wLr="[_0-9a-z-*/]",QRc=`[a-z]${wLr}{0,255}`,XRc=`[a-z0-9]${wLr}{0,240}@[a-z]${wLr}{0,13}`,JRc=new RegExp(`^(?:${QRc}|${XRc})$`),URc=/^[ -~]{0,255}[!-~]$/,KRc=/,|=/;function jRc(e){return JRc.test(e)}KDe.validateKey=jRc;function zRc(e){return URc.test(e)&&!KRc.test(e)}KDe.validateValue=zRc});var RLr=H($St=>{"use strict";Object.defineProperty($St,"__esModule",{value:!0});$St.TraceState=void 0;var lQi=cQi(),uQi=32,qRc=512,gQi=",",AQi="=",TLr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+AQi+this.get(r)),t),[]).join(gQi)}_parse(t){t.length>qRc||(this._internalState=t.split(gQi).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(AQi);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,lQi.validateKey)(l)&&(0,lQi.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>uQi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,uQi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};$St.TraceState=TLr});var pQi=H(JG=>{"use strict";Object.defineProperty(JG,"__esModule",{value:!0});JG.W3CTraceContextPropagator=JG.parseTraceParent=JG.TRACE_STATE_HEADER=JG.TRACE_PARENT_HEADER=void 0;var evt=(LI(),vi(ZI)),$Rc=IKe(),eNc=RLr();JG.TRACE_PARENT_HEADER="traceparent";JG.TRACE_STATE_HEADER="tracestate";var tNc="00",rNc="(?!ff)[\\da-f]{2}",nNc="(?![0]{32})[\\da-f]{32}",iNc="(?![0]{16})[\\da-f]{16}",sNc="[\\da-f]{2}",oNc=new RegExp(`^\\s?(${rNc})-(${nNc})-(${iNc})-(${sNc})(-.*)?\\s?$`);function dQi(e){let t=oNc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}JG.parseTraceParent=dQi;var NLr=class{inject(t,r,n){let a=evt.trace.getSpanContext(t);if(!a||(0,$Rc.isTracingSuppressed)(t)||!(0,evt.isSpanContextValid)(a))return;let o=`${tNc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||evt.TraceFlags.NONE).toString(16)}`;n.set(r,JG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,JG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,JG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=dQi(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,JG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new eNc.TraceState(typeof f=="string"?f:void 0)}return evt.trace.setSpanContext(t,l)}fields(){return[JG.TRACE_PARENT_HEADER,JG.TRACE_STATE_HEADER]}};JG.W3CTraceContextPropagator=NLr});var fQi=H(v4=>{"use strict";Object.defineProperty(v4,"__esModule",{value:!0});v4.getRPCMetadata=v4.deleteRPCMetadata=v4.setRPCMetadata=v4.RPCType=void 0;var aNc=(LI(),vi(ZI)),DLr=(0,aNc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),cNc;(function(e){e.HTTP="http"})(cNc=v4.RPCType||(v4.RPCType={}));function lNc(e,t){return e.setValue(DLr,t)}v4.setRPCMetadata=lNc;function uNc(e){return e.deleteValue(DLr)}v4.deleteRPCMetadata=uNc;function gNc(e){return e.getValue(DLr)}v4.getRPCMetadata=gNc});var xLr=H(tvt=>{"use strict";Object.defineProperty(tvt,"__esModule",{value:!0});tvt.AlwaysOffSampler=void 0;var ANc=(LI(),vi(ZI)),kLr=class{shouldSample(){return{decision:ANc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};tvt.AlwaysOffSampler=kLr});var FLr=H(rvt=>{"use strict";Object.defineProperty(rvt,"__esModule",{value:!0});rvt.AlwaysOnSampler=void 0;var dNc=(LI(),vi(ZI)),GLr=class{shouldSample(){return{decision:dNc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};rvt.AlwaysOnSampler=GLr});var hQi=H(ivt=>{"use strict";Object.defineProperty(ivt,"__esModule",{value:!0});ivt.ParentBasedSampler=void 0;var nvt=(LI(),vi(ZI)),pNc=pLr(),IQi=xLr(),ZLr=FLr(),LLr=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,pNc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new ZLr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new ZLr.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new IQi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new ZLr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new IQi.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=nvt.trace.getSpanContext(t);return!A||!(0,nvt.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&nvt.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&nvt.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};ivt.ParentBasedSampler=LLr});var mQi=H(svt=>{"use strict";Object.defineProperty(svt,"__esModule",{value:!0});svt.TraceIdRatioBasedSampler=void 0;var VLr=(LI(),vi(ZI)),WLr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,VLr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};svt.TraceIdRatioBasedSampler=WLr});var EQi=H(ovt=>{"use strict";Object.defineProperty(ovt,"__esModule",{value:!0});ovt.isPlainObject=void 0;var fNc="[object Object]",INc="[object Null]",hNc="[object Undefined]",mNc=Function.prototype,CQi=mNc.toString,CNc=CQi.call(Object),_Nc=yNc(Object.getPrototypeOf,Object),_Qi=Object.prototype,yQi=_Qi.hasOwnProperty,c_e=Symbol?Symbol.toStringTag:void 0,bQi=_Qi.toString;function yNc(e,t){return function(r){return e(t(r))}}function bNc(e){if(!ENc(e)||SNc(e)!==fNc)return!1;let t=_Nc(e);if(t===null)return!0;let r=yQi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&CQi.call(r)===CNc}ovt.isPlainObject=bNc;function ENc(e){return e!=null&&typeof e=="object"}function SNc(e){return e==null?e===void 0?hNc:INc:c_e&&c_e in Object(e)?vNc(e):BNc(e)}function vNc(e){let t=yQi.call(e,c_e),r=e[c_e],n=!1;try{e[c_e]=void 0,n=!0}catch{}let a=bQi.call(e);return n&&(t?e[c_e]=r:delete e[c_e]),a}function BNc(e){return bQi.call(e)}});var TQi=H(lvt=>{"use strict";Object.defineProperty(lvt,"__esModule",{value:!0});lvt.merge=void 0;var SQi=EQi(),wNc=20;function TNc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=BQi(t,e.shift(),0,r);return t}lvt.merge=TNc;function OLr(e){return cvt(e)?e.slice():e}function BQi(e,t,r=0,n){let a;if(!(r>wNc)){if(r++,avt(e)||avt(t)||wQi(t))a=OLr(t);else if(cvt(e)){if(a=e.slice(),cvt(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(vQi(e,f,n)||vQi(t,f,n))delete a[f];else{if(yKe(C)&&yKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=BQi(a[f],I,r,n)}}}}else a=t;return a}}function vQi(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function RNc(e,t){return!(!(0,SQi.isPlainObject)(e)||!(0,SQi.isPlainObject)(t))}});var RQi=H(jDe=>{"use strict";Object.defineProperty(jDe,"__esModule",{value:!0});jDe.callWithTimeout=jDe.TimeoutError=void 0;var uvt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};jDe.TimeoutError=uvt;function NNc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new uvt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}jDe.callWithTimeout=NNc});var DQi=H(zDe=>{"use strict";Object.defineProperty(zDe,"__esModule",{value:!0});zDe.isUrlIgnored=zDe.urlMatches=void 0;function NQi(e,t){return typeof t=="string"?e===t:!!e.match(t)}zDe.urlMatches=NQi;function DNc(e,t){if(!t)return!1;for(let r of t)if(NQi(e,r))return!0;return!1}zDe.isUrlIgnored=DNc});var kQi=H(gvt=>{"use strict";Object.defineProperty(gvt,"__esModule",{value:!0});gvt.isWrapped=void 0;function kNc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}gvt.isWrapped=kNc});var xQi=H(Avt=>{"use strict";Object.defineProperty(Avt,"__esModule",{value:!0});Avt.Deferred=void 0;var PLr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};Avt.Deferred=PLr});var GQi=H(dvt=>{"use strict";Object.defineProperty(dvt,"__esModule",{value:!0});dvt.BindOnceFuture=void 0;var xNc=xQi(),MLr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new xNc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};dvt.BindOnceFuture=MLr});var ZQi=H(pvt=>{"use strict";Object.defineProperty(pvt,"__esModule",{value:!0});pvt._export=void 0;var FQi=(LI(),vi(ZI)),GNc=IKe();function FNc(e,t){return new Promise(r=>{FQi.context.with((0,GNc.suppressTracing)(FQi.context.active()),()=>{e.export(t,n=>{r(n)})})})}pvt._export=FNc});var QLr=H(Ja=>{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=Ja.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Ja.TraceState=Ja.unsuppressTracing=Ja.suppressTracing=Ja.isTracingSuppressed=Ja.TraceIdRatioBasedSampler=Ja.ParentBasedSampler=Ja.AlwaysOnSampler=Ja.AlwaysOffSampler=Ja.setRPCMetadata=Ja.getRPCMetadata=Ja.deleteRPCMetadata=Ja.RPCType=Ja.parseTraceParent=Ja.W3CTraceContextPropagator=Ja.TRACE_STATE_HEADER=Ja.TRACE_PARENT_HEADER=Ja.CompositePropagator=Ja.unrefTimer=Ja.otperformance=Ja.hexToBase64=Ja.getEnvWithoutDefaults=Ja.getEnv=Ja._globalThis=Ja.SDK_INFO=Ja.RandomIdGenerator=Ja.baggageUtils=Ja.ExportResultCode=Ja.hexToBinary=Ja.timeInputToHrTime=Ja.millisToHrTime=Ja.isTimeInputHrTime=Ja.isTimeInput=Ja.hrTimeToTimeStamp=Ja.hrTimeToNanoseconds=Ja.hrTimeToMilliseconds=Ja.hrTimeToMicroseconds=Ja.hrTimeDuration=Ja.hrTime=Ja.getTimeOrigin=Ja.addHrTimes=Ja.loggingErrorHandler=Ja.setGlobalErrorHandler=Ja.globalErrorHandler=Ja.sanitizeAttributes=Ja.isAttributeValue=Ja.isAttributeKey=Ja.AnchoredClock=Ja.W3CBaggagePropagator=void 0;Ja.internal=Ja.VERSION=Ja.BindOnceFuture=Ja.isWrapped=Ja.urlMatches=Ja.isUrlIgnored=Ja.callWithTimeout=Ja.TimeoutError=Ja.TracesSamplerValues=Ja.merge=Ja.parseEnvironment=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Ja.DEFAULT_ENVIRONMENT=void 0;var ZNc=pWi();Object.defineProperty(Ja,"W3CBaggagePropagator",{enumerable:!0,get:function(){return ZNc.W3CBaggagePropagator}});var LNc=fWi();Object.defineProperty(Ja,"AnchoredClock",{enumerable:!0,get:function(){return LNc.AnchoredClock}});var HLr=_Wi();Object.defineProperty(Ja,"isAttributeKey",{enumerable:!0,get:function(){return HLr.isAttributeKey}});Object.defineProperty(Ja,"isAttributeValue",{enumerable:!0,get:function(){return HLr.isAttributeValue}});Object.defineProperty(Ja,"sanitizeAttributes",{enumerable:!0,get:function(){return HLr.sanitizeAttributes}});var LQi=pLr();Object.defineProperty(Ja,"globalErrorHandler",{enumerable:!0,get:function(){return LQi.globalErrorHandler}});Object.defineProperty(Ja,"setGlobalErrorHandler",{enumerable:!0,get:function(){return LQi.setGlobalErrorHandler}});var VNc=dLr();Object.defineProperty(Ja,"loggingErrorHandler",{enumerable:!0,get:function(){return VNc.loggingErrorHandler}});var bH=iQi();Object.defineProperty(Ja,"addHrTimes",{enumerable:!0,get:function(){return bH.addHrTimes}});Object.defineProperty(Ja,"getTimeOrigin",{enumerable:!0,get:function(){return bH.getTimeOrigin}});Object.defineProperty(Ja,"hrTime",{enumerable:!0,get:function(){return bH.hrTime}});Object.defineProperty(Ja,"hrTimeDuration",{enumerable:!0,get:function(){return bH.hrTimeDuration}});Object.defineProperty(Ja,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return bH.hrTimeToMicroseconds}});Object.defineProperty(Ja,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return bH.hrTimeToMilliseconds}});Object.defineProperty(Ja,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return bH.hrTimeToNanoseconds}});Object.defineProperty(Ja,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return bH.hrTimeToTimeStamp}});Object.defineProperty(Ja,"isTimeInput",{enumerable:!0,get:function(){return bH.isTimeInput}});Object.defineProperty(Ja,"isTimeInputHrTime",{enumerable:!0,get:function(){return bH.isTimeInputHrTime}});Object.defineProperty(Ja,"millisToHrTime",{enumerable:!0,get:function(){return bH.millisToHrTime}});Object.defineProperty(Ja,"timeInputToHrTime",{enumerable:!0,get:function(){return bH.timeInputToHrTime}});var WNc=mLr();Object.defineProperty(Ja,"hexToBinary",{enumerable:!0,get:function(){return WNc.hexToBinary}});var ONc=sQi();Object.defineProperty(Ja,"ExportResultCode",{enumerable:!0,get:function(){return ONc.ExportResultCode}});var fvt=cLr();Ja.baggageUtils={getKeyPairs:fvt.getKeyPairs,serializeKeyPairs:fvt.serializeKeyPairs,parseKeyPairsIntoRecord:fvt.parseKeyPairsIntoRecord,parsePairKeyValue:fvt.parsePairKeyValue};var fle=bLr();Object.defineProperty(Ja,"RandomIdGenerator",{enumerable:!0,get:function(){return fle.RandomIdGenerator}});Object.defineProperty(Ja,"SDK_INFO",{enumerable:!0,get:function(){return fle.SDK_INFO}});Object.defineProperty(Ja,"_globalThis",{enumerable:!0,get:function(){return fle._globalThis}});Object.defineProperty(Ja,"getEnv",{enumerable:!0,get:function(){return fle.getEnv}});Object.defineProperty(Ja,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return fle.getEnvWithoutDefaults}});Object.defineProperty(Ja,"hexToBase64",{enumerable:!0,get:function(){return fle.hexToBase64}});Object.defineProperty(Ja,"otperformance",{enumerable:!0,get:function(){return fle.otperformance}});Object.defineProperty(Ja,"unrefTimer",{enumerable:!0,get:function(){return fle.unrefTimer}});var PNc=aQi();Object.defineProperty(Ja,"CompositePropagator",{enumerable:!0,get:function(){return PNc.CompositePropagator}});var Ivt=pQi();Object.defineProperty(Ja,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return Ivt.TRACE_PARENT_HEADER}});Object.defineProperty(Ja,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return Ivt.TRACE_STATE_HEADER}});Object.defineProperty(Ja,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return Ivt.W3CTraceContextPropagator}});Object.defineProperty(Ja,"parseTraceParent",{enumerable:!0,get:function(){return Ivt.parseTraceParent}});var hvt=fQi();Object.defineProperty(Ja,"RPCType",{enumerable:!0,get:function(){return hvt.RPCType}});Object.defineProperty(Ja,"deleteRPCMetadata",{enumerable:!0,get:function(){return hvt.deleteRPCMetadata}});Object.defineProperty(Ja,"getRPCMetadata",{enumerable:!0,get:function(){return hvt.getRPCMetadata}});Object.defineProperty(Ja,"setRPCMetadata",{enumerable:!0,get:function(){return hvt.setRPCMetadata}});var MNc=xLr();Object.defineProperty(Ja,"AlwaysOffSampler",{enumerable:!0,get:function(){return MNc.AlwaysOffSampler}});var HNc=FLr();Object.defineProperty(Ja,"AlwaysOnSampler",{enumerable:!0,get:function(){return HNc.AlwaysOnSampler}});var YNc=hQi();Object.defineProperty(Ja,"ParentBasedSampler",{enumerable:!0,get:function(){return YNc.ParentBasedSampler}});var QNc=mQi();Object.defineProperty(Ja,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return QNc.TraceIdRatioBasedSampler}});var YLr=IKe();Object.defineProperty(Ja,"isTracingSuppressed",{enumerable:!0,get:function(){return YLr.isTracingSuppressed}});Object.defineProperty(Ja,"suppressTracing",{enumerable:!0,get:function(){return YLr.suppressTracing}});Object.defineProperty(Ja,"unsuppressTracing",{enumerable:!0,get:function(){return YLr.unsuppressTracing}});var XNc=RLr();Object.defineProperty(Ja,"TraceState",{enumerable:!0,get:function(){return XNc.TraceState}});var qDe=ILr();Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return qDe.DEFAULT_ENVIRONMENT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return qDe.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(Ja,"parseEnvironment",{enumerable:!0,get:function(){return qDe.parseEnvironment}});var JNc=TQi();Object.defineProperty(Ja,"merge",{enumerable:!0,get:function(){return JNc.merge}});var UNc=fLr();Object.defineProperty(Ja,"TracesSamplerValues",{enumerable:!0,get:function(){return UNc.TracesSamplerValues}});var VQi=RQi();Object.defineProperty(Ja,"TimeoutError",{enumerable:!0,get:function(){return VQi.TimeoutError}});Object.defineProperty(Ja,"callWithTimeout",{enumerable:!0,get:function(){return VQi.callWithTimeout}});var WQi=DQi();Object.defineProperty(Ja,"isUrlIgnored",{enumerable:!0,get:function(){return WQi.isUrlIgnored}});Object.defineProperty(Ja,"urlMatches",{enumerable:!0,get:function(){return WQi.urlMatches}});var KNc=kQi();Object.defineProperty(Ja,"isWrapped",{enumerable:!0,get:function(){return KNc.isWrapped}});var jNc=GQi();Object.defineProperty(Ja,"BindOnceFuture",{enumerable:!0,get:function(){return jNc.BindOnceFuture}});var zNc=_Lr();Object.defineProperty(Ja,"VERSION",{enumerable:!0,get:function(){return zNc.VERSION}});var qNc=ZQi();Ja.internal={_export:qNc._export}});var MQi=H((PPu,XLr)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));XLr.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};XLr.exports=e}});var jQi=H((MPu,KQi)=>{"use strict";var gw=Et("fs"),$Nc=Et("events"),eDc=Et("util").inherits,HQi=Et("path"),ULr=MQi(),Cvt=100,_vt=Buffer.allocUnsafe(0),tDc=16*1024,YQi="buffer",QQi="utf8";function XQi(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(o,l){if(o){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",o)}):t.emit("error",o);return}let A=t._reopening;t.fd=l,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():A&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",a=t.mode;if(t.sync)try{t.mkdir&&gw.mkdirSync(HQi.dirname(e),{recursive:!0});let o=gw.openSync(e,n,a);r(null,o)}catch(o){throw r(o),o}else t.mkdir?gw.mkdir(HQi.dirname(e),{recursive:!0},o=>{if(o)return r(o);gw.open(e,n,a,r)}):gw.open(e,n,a,r)}function B4(e){if(!(this instanceof B4))return new B4(e);let{fd:t,dest:r,minLength:n,maxLength:a,maxWrite:o,sync:l,append:A=!0,mkdir:f,retryEAGAIN:I,fsync:C,contentMode:b,mode:E}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=a||0,this.maxWrite=o||tDc,this.sync=l||!1,this.writable=!0,this._fsync=C||!1,this.append=A||!1,this.mode=E,this.retryEAGAIN=I||(()=>!0),this.mkdir=f||!1;let N,B;if(b===YQi)this._writingBuf=_vt,this.write=iDc,this.flush=oDc,this.flushSync=cDc,this._actualWrite=uDc,N=()=>gw.writeSync(this.fd,this._writingBuf),B=()=>gw.write(this.fd,this._writingBuf,this.release);else if(b===void 0||b===QQi)this._writingBuf="",this.write=nDc,this.flush=sDc,this.flushSync=aDc,this._actualWrite=lDc,N=()=>gw.writeSync(this.fd,this._writingBuf,"utf8"),B=()=>gw.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${QQi}" and "${YQi}", but passed ${b}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")XQi(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(F,Q)=>{if(F){if((F.code==="EAGAIN"||F.code==="EBUSY")&&this.retryEAGAIN(F,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{ULr(Cvt),this.release(void 0,0)}catch(ne){this.release(ne)}else setTimeout(B,Cvt);else this._writing=!1,this.emit("error",F);return}this.emit("write",Q);let J=JLr(this._writingBuf,this._len,Q);if(this._len=J.len,this._writingBuf=J.writingBuf,this._writingBuf.length){if(!this.sync){B();return}try{do{let ne=N(),ce=JLr(this._writingBuf,this._len,ne);this._len=ce.len,this._writingBuf=ce.writingBuf}while(this._writingBuf.length)}catch(ne){this.release(ne);return}}this._fsync&&gw.fsyncSync(this.fd);let ae=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):ae>this.minLength?this._actualWrite():this._ending?ae>0?this._actualWrite():(this._writing=!1,yvt(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(rDc,this)):this.emit("drain"))},this.on("newListener",function(F){F==="drain"&&(this._asyncDrainScheduled=!1)})}function JLr(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function rDc(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}eDc(B4,$Nc);function JQi(e,t){return e.length===0?_vt:e.length===1?e[0]:Buffer.concat(e,t)}function nDc(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):gw.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function sDc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&UQi.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function oDc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&UQi.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}B4.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&gw.close(t,r=>{if(r)return this.emit("error",r)})}),XQi(this.file,this)};B4.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():yvt(this)))};function aDc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=gw.writeSync(this.fd,e,"utf8"),r=JLr(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;ULr(Cvt)}}try{gw.fsyncSync(this.fd)}catch{}}function cDc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=_vt);let e=_vt;for(;this._bufs.length||e.length;){e.length<=0&&(e=JQi(this._bufs[0],this._lens[0]));try{let t=gw.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;ULr(Cvt)}}}B4.prototype.destroy=function(){this.destroyed||yvt(this)};function lDc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=gw.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else gw.write(this.fd,this._writingBuf,"utf8",e)}function uDc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:JQi(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=gw.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else gw.write(this.fd,this._writingBuf,e)}function yvt(e){if(e.fd===-1){e.once("ready",yvt.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],gw.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?gw.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}B4.SonicBoom=B4;B4.default=B4;KQi.exports=B4});var rXi=H((HPu,tXi)=>{"use strict";var w4={exit:[],beforeExit:[]},zQi={exit:dDc,beforeExit:pDc},$De;function gDc(){$De===void 0&&($De=new FinalizationRegistry(fDc))}function ADc(e){w4[e].length>0||process.on(e,zQi[e])}function qQi(e){w4[e].length>0||(process.removeListener(e,zQi[e]),w4.exit.length===0&&w4.beforeExit.length===0&&($De=void 0))}function dDc(){$Qi("exit")}function pDc(){$Qi("beforeExit")}function $Qi(e){for(let t of w4[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}w4[e]=[]}function fDc(e){for(let t of["exit","beforeExit"]){let r=w4[t].indexOf(e);w4[t].splice(r,r+1),qQi(t)}}function eXi(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");ADc(e);let n=new WeakRef(t);n.fn=r,gDc(),$De.register(t,n),w4[e].push(n)}function IDc(e,t){eXi("exit",e,t)}function hDc(e,t){eXi("beforeExit",e,t)}function mDc(e){if($De!==void 0){$De.unregister(e);for(let t of["exit","beforeExit"])w4[t]=w4[t].filter(r=>{let n=r.deref();return n&&n!==e}),qQi(t)}}tXi.exports={register:IDc,registerBeforeExit:hDc,unregister:mDc}});var AXi=H(($Lr,e9r)=>{(function(e,t){typeof $Lr=="object"&&typeof e9r<"u"?e9r.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.uniqolor=t())})($Lr,function(){"use strict";function e(Se,De){var k=Se==null?null:typeof Symbol<"u"&&Se[Symbol.iterator]||Se["@@iterator"];if(k!=null){var tt,ze,Le,Je,ft=[],lt=!0,Ot=!1;try{if(Le=(k=k.call(Se)).next,De===0){if(Object(k)!==k)return;lt=!1}else for(;!(lt=(tt=Le.call(k)).done)&&(ft.push(tt.value),ft.length!==De);lt=!0);}catch(Er){Ot=!0,ze=Er}finally{try{if(!lt&&k.return!=null&&(Je=k.return(),Object(Je)!==Je))return}finally{if(Ot)throw ze}}return ft}}function t(Se,De){return a(Se)||e(Se,De)||l(Se,De)||I()}function r(Se){return n(Se)||o(Se)||l(Se)||f()}function n(Se){if(Array.isArray(Se))return A(Se)}function a(Se){if(Array.isArray(Se))return Se}function o(Se){if(typeof Symbol<"u"&&Se[Symbol.iterator]!=null||Se["@@iterator"]!=null)return Array.from(Se)}function l(Se,De){if(Se){if(typeof Se=="string")return A(Se,De);var k=Object.prototype.toString.call(Se).slice(8,-1);if(k==="Object"&&Se.constructor&&(k=Se.constructor.name),k==="Map"||k==="Set")return Array.from(Se);if(k==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(k))return A(Se,De)}}function A(Se,De){(De==null||De>Se.length)&&(De=Se.length);for(var k=0,tt=new Array(De);k=Je[0]&&ze<=Je[1])return Se(De,k,tt)}return ze},Q=function(De){for(var k=De.length,tt=0,ze=0;ze1&&(tt-=1),tt<1/6?De+(k-De)*6*tt:tt<1/2?k:tt<2/3?De+(k-De)*(2/3-tt)*6:De},ce=function(De,k,tt){var ze,Le,Je;if(De/=360,k/=100,tt/=100,k===0)ze=Le=Je=tt;else{var ft=tt<.5?tt*(1+k):tt+k-tt*k,lt=2*tt-ft;ze=ne(lt,ft,De+1/3),Le=ne(lt,ft,De),Je=ne(lt,ft,De-1/3)}return[Math.round(ze*255),Math.round(Le*255),Math.round(Je*255)]},fe=function(De,k,tt,ze){return(De*299+k*587+tt*114)/1e3>=ze},ue=function(De,k,tt){return"hsl(".concat(De,", ").concat(k,"%, ").concat(tt,"%)")},de=function(De,k,tt,ze){switch(ze){case"rgb":return"rgb(".concat(De,", ").concat(k,", ").concat(tt,")");case"hex":default:return"#".concat(E(De.toString(16))).concat(E(k.toString(16))).concat(E(tt.toString(16)))}},be=function(De){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},tt=k.format,ze=tt===void 0?"hex":tt,Le=k.saturation,Je=Le===void 0?[50,55]:Le,ft=k.lightness,lt=ft===void 0?[50,60]:ft,Ot=k.differencePoint,Er=Ot===void 0?130:Ot,Sr=Math.abs(Q(String(De))),jt=J(Sr,[0,360]),Bt=J(Sr,ae(Je,C)),Dt=J(Sr,ae(lt,b)),Fr=ce(jt,Bt,Dt),$t=t(Fr,3),Xt=$t[0],lr=$t[1],cr=$t[2];return{color:ze==="hsl"?ue(jt,Bt,Dt):de(Xt,lr,cr,ze),isLight:fe(Xt,lr,cr,Er)}};return be.random=function(){var Se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},De=Se.format,k=De===void 0?"hex":De,tt=Se.saturation,ze=tt===void 0?[50,55]:tt,Le=Se.lightness,Je=Le===void 0?[50,60]:Le,ft=Se.differencePoint,lt=ft===void 0?130:ft,Ot=Se.excludeHue;ze=ae(ze,C),Je=ae(Je,b);var Er=Ot?F(0,359,Ot):B(0,359),Sr=typeof ze=="number"?ze:B.apply(void 0,r(ze)),jt=typeof Je=="number"?Je:B.apply(void 0,r(Je)),Bt=ce(Er,Sr,jt),Dt=t(Bt,3),Fr=Dt[0],$t=Dt[1],Xt=Dt[2];return{color:k==="hsl"?ue(Er,Sr,jt):de(Fr,$t,Xt,k),isLight:fe(Fr,$t,Xt,lt)}},be})});var jLr=H(Q6=>{"use strict";Object.defineProperty(Q6,"__esModule",{value:!0});Q6.TOKEN_TYPE_TO_HIGHLIGHT=Q6.HighlightSubject=Q6.TokenType=void 0;var ZV;(function(e){e[e.WHITESPACE=0]="WHITESPACE",e[e.WORD=1]="WORD",e[e.QUOTE=2]="QUOTE",e[e.BACKTICK_QUOTE=3]="BACKTICK_QUOTE",e[e.RESERVED=4]="RESERVED",e[e.RESERVED_TOPLEVEL=5]="RESERVED_TOPLEVEL",e[e.RESERVED_NEWLINE=6]="RESERVED_NEWLINE",e[e.BOUNDARY=7]="BOUNDARY",e[e.COMMENT=8]="COMMENT",e[e.BLOCK_COMMENT=9]="BLOCK_COMMENT",e[e.NUMBER=10]="NUMBER",e[e.ERROR=11]="ERROR",e[e.VARIABLE=12]="VARIABLE",e[e.LITERAL=13]="LITERAL",e[e.BUILT_IN=14]="BUILT_IN"})(ZV=Q6.TokenType||(Q6.TokenType={}));var LV;(function(e){e.BOUNDARY="boundary",e.WORD="word",e.BACKTICK_QUOTE="backtickQuote",e.QUOTE="quote",e.RESERVED="reserved",e.NUMBER="number",e.VARIABLE="variable",e.COMMENT="comment",e.FUNCTIONS="functions",e.LITERAL="literal",e.BUILT_IN="builtIn"})(LV=Q6.HighlightSubject||(Q6.HighlightSubject={}));Q6.TOKEN_TYPE_TO_HIGHLIGHT={[ZV.BOUNDARY]:LV.BOUNDARY,[ZV.WORD]:LV.WORD,[ZV.BACKTICK_QUOTE]:LV.BACKTICK_QUOTE,[ZV.QUOTE]:LV.QUOTE,[ZV.RESERVED]:LV.RESERVED,[ZV.RESERVED_TOPLEVEL]:LV.RESERVED,[ZV.RESERVED_NEWLINE]:LV.RESERVED,[ZV.NUMBER]:LV.NUMBER,[ZV.VARIABLE]:LV.VARIABLE,[ZV.COMMENT]:LV.COMMENT,[ZV.BLOCK_COMMENT]:LV.COMMENT,[ZV.LITERAL]:LV.LITERAL,[ZV.BUILT_IN]:LV.BUILT_IN}});var qLr=H(Rvt=>{"use strict";Object.defineProperty(Rvt,"__esModule",{value:!0});Rvt.Tokenizer=void 0;var ex=jLr(),zLr=class{constructor(){this.literal=["true","false","null","unknown"],this.builtIn=["array","bigint","binary","bit","blob","bool","boolean","char","character","date","dec","decimal","float","int","int8","integer","interval","number","numeric","real","record","serial","serial8","smallint","text","time","timestamp","tinyint","varchar","varchar2","varying","void"],this.reserved=["accessible","action","after","against","aggregate","algorithm","all","alter","analyse","analyze","as","asc","autocommit","auto_increment","backup","begin","between","binlog","both","cascade","case","change","changed","character set","charset","check","checksum","collate","collation","column","columns","comment","commit","committed","compressed","concurrent","constraint","contains","convert","create","cross","current_timestamp","database","databases","day","day_hour","day_minute","day_second","default","definer","delayed","delete","desc","describe","deterministic","distinct","distinctrow","div","do","dumpfile","duplicate","dynamic","else","enclosed","end","engine","engine_type","engines","escape","escaped","events","exec","execute","exists","explain","extended","fast","fields","file","first","fixed","flush","for","force","foreign","full","fulltext","function","global","grant","grants","group_concat","heap","high_priority","hosts","hour","hour_minute","hour_second","identified","if","ifnull","ignore","in","index","indexes","infile","insert","insert_id","insert_method","interval","into","invoker","is","isolation","key","keys","kill","last_insert_id","leading","level","like","linear","lines","load","local","lock","locks","logs","low_priority","maria","master","master_connect_retry","master_host","master_log_file","match","max_connections_per_hour","max_queries_per_hour","max_rows","max_updates_per_hour","max_user_connections","medium","merge","minute","minute_second","min_rows","mode","month","mrg_myisam","myisam","names","natural","not","now()","null","offset","on","open","optimize","option","optionally","on update","on delete","outfile","pack_keys","page","partial","partition","partitions","password","primary","privileges","procedure","process","processlist","purge","quick","range","raid0","raid_chunks","raid_chunksize","raid_type","read","read_only","read_write","references","regexp","reload","rename","repair","repeatable","replace","replication","reset","restore","restrict","return","returns","revoke","rlike","rollback","row","rows","row_format","second","security","separator","serializable","session","share","show","shutdown","slave","soname","sounds","sql","sql_auto_is_null","sql_big_result","sql_big_selects","sql_big_tables","sql_buffer_result","sql_calc_found_rows","sql_log_bin","sql_log_off","sql_log_update","sql_low_priority_updates","sql_max_join_size","sql_quote_show_create","sql_safe_updates","sql_select_limit","sql_slave_skip_counter","sql_small_result","sql_warnings","sql_cache","sql_no_cache","start","starting","status","stop","storage","straight_join","string","striped","super","table","tables","temporary","terminated","then","to","trailing","transactional","true","truncate","type","types","uncommitted","unique","unlock","unsigned","usage","use","using","variables","view","when","with","work","write","year_month"],this.reservedToplevel=["select","from","where","set","order by","group by","limit","drop","values","update","having","add","change","modify","alter table","delete from","union all","union","except","intersect"],this.reservedNewline=["left outer join","right outer join","left join","right join","outer join","inner join","join","xor","or","and"],this.functions=["abs","acos","adddate","addtime","aes_decrypt","aes_encrypt","area","asbinary","ascii","asin","astext","atan","atan2","avg","bdmpolyfromtext","bdmpolyfromwkb","bdpolyfromtext","bdpolyfromwkb","benchmark","bin","bit_and","bit_count","bit_length","bit_or","bit_xor","boundary","buffer","cast","ceil","ceiling","centroid","char","character_length","charset","char_length","coalesce","coercibility","collation","compress","concat","concat_ws","connection_id","contains","conv","convert","convert_tz","convexhull","cos","cot","count","crc32","crosses","curdate","current_date","current_time","current_timestamp","current_user","curtime","database","date","datediff","date_add","date_diff","date_format","date_sub","day","dayname","dayofmonth","dayofweek","dayofyear","decode","default","degrees","des_decrypt","des_encrypt","difference","dimension","disjoint","distance","elt","encode","encrypt","endpoint","envelope","equals","exp","export_set","exteriorring","extract","extractvalue","field","find_in_set","floor","format","found_rows","from_days","from_unixtime","geomcollfromtext","geomcollfromwkb","geometrycollection","geometrycollectionfromtext","geometrycollectionfromwkb","geometryfromtext","geometryfromwkb","geometryn","geometrytype","geomfromtext","geomfromwkb","get_format","get_lock","glength","greatest","group_concat","group_unique_users","hex","hour","if","ifnull","inet_aton","inet_ntoa","insert","instr","interiorringn","intersection","intersects","interval","isclosed","isempty","isnull","isring","issimple","is_free_lock","is_used_lock","last_day","last_insert_id","lcase","least","left","length","linefromtext","linefromwkb","linestring","linestringfromtext","linestringfromwkb","ln","load_file","localtime","localtimestamp","locate","log","log10","log2","lower","lpad","ltrim","makedate","maketime","make_set","master_pos_wait","max","mbrcontains","mbrdisjoint","mbrequal","mbrintersects","mbroverlaps","mbrtouches","mbrwithin","md5","microsecond","mid","min","minute","mlinefromtext","mlinefromwkb","mod","month","monthname","mpointfromtext","mpointfromwkb","mpolyfromtext","mpolyfromwkb","multilinestring","multilinestringfromtext","multilinestringfromwkb","multipoint","multipointfromtext","multipointfromwkb","multipolygon","multipolygonfromtext","multipolygonfromwkb","name_const","nullif","numgeometries","numinteriorrings","numpoints","oct","octet_length","old_password","ord","overlaps","password","period_add","period_diff","pi","point","pointfromtext","pointfromwkb","pointn","pointonsurface","polyfromtext","polyfromwkb","polygon","polygonfromtext","polygonfromwkb","position","pow","power","quarter","quote","radians","rand","related","release_lock","repeat","replace","reverse","right","round","row_count","rpad","rtrim","schema","second","sec_to_time","session_user","sha","sha1","sign","sin","sleep","soundex","space","sqrt","srid","startpoint","std","stddev","stddev_pop","stddev_samp","strcmp","str_to_date","subdate","substr","substring","substring_index","subtime","sum","symdifference","sysdate","system_user","tan","time","timediff","timestamp","timestampadd","timestampdiff","time_format","time_to_sec","touches","to_days","trim","truncate","ucase","uncompress","uncompressed_length","unhex","unique_users","unix_timestamp","updatexml","upper","user","utc_date","utc_time","utc_timestamp","uuid","variance","var_pop","var_samp","version","week","weekday","weekofyear","within","x","y","year","yearweek"],this.boundaries=[",",";",":",")","(",".","=","<",">","+","-","*","/","!","^","%","|","&","#"],this.regexBoundaries="("+this.quoteRegex(this.boundaries).join("|")+")",this.regexReserved="("+this.quoteRegex(this.reserved).join("|")+")",this.regexReservedToplevel=`(${this.quoteRegex(this.reservedToplevel).join("|")})`.replace(/ /g,"\\s+"),this.regexReservedNewline=`(${this.quoteRegex(this.reservedNewline).join("|")})`.replace(/ /g,"\\s+"),this.regexFunction="("+this.quoteRegex(this.functions).join("|")+")",this.regexLiteral="("+this.quoteRegex(this.literal).join("|")+")",this.regexBuiltIn="("+this.quoteRegex(this.builtIn).join("|")+")"}tokenize(t){let r=[],n=t.length+1,a,o=t.length;for(;o;){if(n<=o)return r.push({type:ex.TokenType.ERROR,value:t}),r;n=o,a=this.createNextToken(t,a);let l=a.value.length;r.push(a),t=t.substr(l),o-=l}return r}createNextToken(t,r){let n;if(n=t.match(/^\s+/),n)return{type:ex.TokenType.WHITESPACE,value:n[0]};if(t[0]==="#"||t[1]&&t[0]==="-"&&t[1]==="-"||t[1]&&t[0]==="/"&&t[1]==="*"){let o,l;return t[0]==="-"||t[0]==="#"?(l=t.indexOf(` -`),o=ex.TokenType.COMMENT):(l=t.indexOf("*/",2)+2,o=ex.TokenType.BLOCK_COMMENT),l===-1&&(l=t.length),{type:o,value:t.substr(0,l)}}if(['"',"'","`","["].includes(t[0]))return{type:t[0]==="`"||t[0]==="["?ex.TokenType.BACKTICK_QUOTE:ex.TokenType.QUOTE,value:this.getQuotedString(t)};if((t[0]==="@"||t[0]===":")&&t[1]){if(['"',"'","`"].includes(t[1])){let o=t[0]+this.getQuotedString(t.substr(1));return{type:ex.TokenType.VARIABLE,value:o}}if(n=new RegExp(`^(${t[0]}[a-zA-Z0-9._$]+)`).exec(t),n)return{type:ex.TokenType.VARIABLE,value:n[1]}}if(n=new RegExp(`^([0-9]+(.[0-9]+)?|0x[0-9a-fA-F]+|0b[01]+)($|\\s|"'\`|${this.regexBoundaries})`).exec(t),n)return{type:ex.TokenType.NUMBER,value:n[1]};if(n=new RegExp(`^(${this.regexBoundaries})`).exec(t),n)return{type:ex.TokenType.BOUNDARY,value:n[1]};let a=t.toLowerCase();if(!r||r.value!=="."){if(n=new RegExp(`^(${this.regexReservedToplevel})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:ex.TokenType.RESERVED_TOPLEVEL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReservedNewline})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:ex.TokenType.RESERVED_NEWLINE,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexLiteral})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:ex.TokenType.LITERAL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexBuiltIn})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:ex.TokenType.BUILT_IN,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReserved})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:ex.TokenType.RESERVED,value:t.substr(0,n[1].length)}}return n=new RegExp(`^(${this.regexFunction}[(]|\\s|[)])`).exec(a),n?{type:ex.TokenType.RESERVED,value:t.substr(0,n[1].length-1)}:(n=new RegExp(`^(.*?)($|\\s|["'\`]|${this.regexBoundaries})`).exec(t),{type:ex.TokenType.WORD,value:n[1]})}quoteRegex(t){return t.map(r=>r.replace(new RegExp("[.\\\\+*?\\[^\\]$(){}=!<>|:\\/-]","g"),"\\$&"))}getQuotedString(t){var r;let n=`^(((\`[^\`]*($|\`))+)|((\\[[^\\]]*($|\\]))(\\][^\\]]*($|\\]))*)|(("[^"\\\\]*(?:\\\\.[^"\\\\]*)*("|$))+)|(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+))`,a=new RegExp(n,"s").exec(t);return(r=a?.[1])!==null&&r!==void 0?r:""}};Rvt.Tokenizer=zLr});var KQi=H((uPu,yKe)=>{"use strict";var kNc=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",xNc=typeof process<"u"&&process.platform==="win32",XQi=typeof process<"u"&&process.platform==="linux",$Lr={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},JQi=Object.assign({},$Lr,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),UQi=Object.assign({},$Lr,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:XQi?"\u25B8":"\u276F",pointerSmall:XQi?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});yKe.exports=xNc&&!kNc?JQi:UQi;Reflect.defineProperty(yKe.exports,"common",{enumerable:!1,value:$Lr});Reflect.defineProperty(yKe.exports,"windows",{enumerable:!1,value:JQi});Reflect.defineProperty(yKe.exports,"other",{enumerable:!1,value:UQi})});var bKe=H((gPu,e9r)=>{"use strict";var GNc=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),FNc=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,ZNc=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,jQi=()=>{let e={enabled:ZNc(),visible:!0,styles:{},keys:{}},t=o=>{let l=o.open=`\x1B[${o.codes[0]}m`,A=o.close=`\x1B[${o.codes[1]}m`,f=o.regex=new RegExp(`\\u001b\\[${o.codes[1]}m`,"g");return o.wrap=(I,C)=>{I.includes(A)&&(I=I.replace(f,A+l));let b=l+I+A;return C?b.replace(/\r*\n/g,`${A}$&${l}`):b},o},r=(o,l,A)=>typeof o=="function"?o(l):o.wrap(l,A),n=(o,l)=>{if(o===""||o==null)return"";if(e.enabled===!1)return o;if(e.visible===!1)return"";let A=""+o,f=A.includes(` -`),I=l.length;for(I>0&&l.includes("unstyle")&&(l=[...new Set(["unstyle",...l])].reverse());I-- >0;)A=r(e.styles[l[I]],A,f);return A},a=(o,l,A)=>{e.styles[o]=t({name:o,codes:l}),(e.keys[A]||(e.keys[A]=[])).push(o),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(I){e.alias(o,I)},get(){let I=C=>n(C,I.stack);return Reflect.setPrototypeOf(I,e),I.stack=this.stack?this.stack.concat(o):[o],I}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),e.ansiRegex=FNc,e.hasColor=e.hasAnsi=o=>(e.ansiRegex.lastIndex=0,typeof o=="string"&&o!==""&&e.ansiRegex.test(o)),e.alias=(o,l)=>{let A=typeof l=="string"?e[l]:l;if(typeof A!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");A.stack||(Reflect.defineProperty(A,"name",{value:o}),e.styles[o]=A,A.stack=[o]),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(f){e.alias(o,f)},get(){let f=I=>n(I,f.stack);return Reflect.setPrototypeOf(f,e),f.stack=this.stack?this.stack.concat(A.stack):A.stack,f}})},e.theme=o=>{if(!GNc(o))throw new TypeError("Expected theme to be an object");for(let l of Object.keys(o))e.alias(l,o[l]);return e},e.alias("unstyle",o=>typeof o=="string"&&o!==""?(e.ansiRegex.lastIndex=0,o.replace(e.ansiRegex,"")):""),e.alias("noop",o=>o),e.none=e.clear=e.noop,e.stripColor=e.unstyle,e.symbols=KQi(),e.define=a,e};e9r.exports=jQi();e9r.exports.create=jQi});var zQi=H(tke=>{"use strict";var LNc=tke&&tke.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tke,"__esModule",{value:!0});tke.SqlHighlighter=void 0;var X6=LNc(bKe()),VNc=qLr(),sL=jLr(),Nvt=class e{constructor(t={}){this.theme=t,this.tokenizer=new VNc.Tokenizer,this.theme=Object.assign(Object.assign({},e.DEFAULT_THEME),this.theme)}highlight(t){let r=this.tokenizer.tokenize(t),n,a="",o=0;for(;n=r[o++];)a+=this.highlightToken(n.type,n.value);return a}highlightToken(t,r){return t===sL.TokenType.BOUNDARY&&["(",")"].includes(r)?r:this.colorize(t,r)}colorize(t,r){return!sL.TOKEN_TYPE_TO_HIGHLIGHT[t]||!this.theme[sL.TOKEN_TYPE_TO_HIGHLIGHT[t]]?r:this.theme[sL.TOKEN_TYPE_TO_HIGHLIGHT[t]](r)}};tke.SqlHighlighter=Nvt;Nvt.DEFAULT_THEME={[sL.HighlightSubject.QUOTE]:X6.default.yellow,[sL.HighlightSubject.BACKTICK_QUOTE]:X6.default.yellow,[sL.HighlightSubject.RESERVED]:X6.default.white.bold,[sL.HighlightSubject.BOUNDARY]:X6.default.reset,[sL.HighlightSubject.NUMBER]:X6.default.green,[sL.HighlightSubject.WORD]:void 0,[sL.HighlightSubject.COMMENT]:X6.default.green.dim,[sL.HighlightSubject.VARIABLE]:X6.default.yellow,[sL.HighlightSubject.FUNCTIONS]:X6.default.green.bold,[sL.HighlightSubject.BUILT_IN]:X6.default.cyan,[sL.HighlightSubject.LITERAL]:X6.default.cyan}});var $Qi=H(fle=>{"use strict";var WNc=fle&&fle.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),qQi=fle&&fle.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&WNc(t,e,r)};Object.defineProperty(fle,"__esModule",{value:!0});qQi(qLr(),fle);qQi(zQi(),fle)});var tXi=H((eXi,Dvt)=>{(function(e,t){typeof Dvt=="object"&&Dvt.exports?Dvt.exports=t():e.nearley=t()})(eXi,function(){function e(f,I,C){return this.id=++e.highestId,this.name=f,this.symbols=I,this.postprocess=C,this}e.highestId=0,e.prototype.toString=function(f){var I=typeof f>"u"?this.symbols.map(A).join(" "):this.symbols.slice(0,f).map(A).join(" ")+" \u25CF "+this.symbols.slice(f).map(A).join(" ");return this.name+" \u2192 "+I};function t(f,I,C,b){this.rule=f,this.dot=I,this.reference=C,this.data=[],this.wantedBy=b,this.isComplete=this.dot===f.symbols.length}t.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},t.prototype.nextState=function(f){var I=new t(this.rule,this.dot+1,this.reference,this.wantedBy);return I.left=this,I.right=f,I.isComplete&&(I.data=I.build(),I.right=void 0),I},t.prototype.build=function(){var f=[],I=this;do f.push(I.right.data),I=I.left;while(I.left);return f.reverse(),f},t.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,o.fail))};function r(f,I){this.grammar=f,this.index=I,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(f){for(var I=this.states,C=this.wants,b=this.completed,E=0;E=Je[0]&&ze<=Je[1])return Se(De,k,tt)}return ze},Q=function(De){for(var k=De.length,tt=0,ze=0;ze1&&(tt-=1),tt<1/6?De+(k-De)*6*tt:tt<1/2?k:tt<2/3?De+(k-De)*(2/3-tt)*6:De},ce=function(De,k,tt){var ze,Le,Je;if(De/=360,k/=100,tt/=100,k===0)ze=Le=Je=tt;else{var ft=tt<.5?tt*(1+k):tt+k-tt*k,lt=2*tt-ft;ze=ne(lt,ft,De+1/3),Le=ne(lt,ft,De),Je=ne(lt,ft,De-1/3)}return[Math.round(ze*255),Math.round(Le*255),Math.round(Je*255)]},fe=function(De,k,tt,ze){return(De*299+k*587+tt*114)/1e3>=ze},ue=function(De,k,tt){return"hsl(".concat(De,", ").concat(k,"%, ").concat(tt,"%)")},de=function(De,k,tt,ze){switch(ze){case"rgb":return"rgb(".concat(De,", ").concat(k,", ").concat(tt,")");case"hex":default:return"#".concat(E(De.toString(16))).concat(E(k.toString(16))).concat(E(tt.toString(16)))}},be=function(De){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},tt=k.format,ze=tt===void 0?"hex":tt,Le=k.saturation,Je=Le===void 0?[50,55]:Le,ft=k.lightness,lt=ft===void 0?[50,60]:ft,Ot=k.differencePoint,Er=Ot===void 0?130:Ot,Sr=Math.abs(Q(String(De))),jt=J(Sr,[0,360]),Bt=J(Sr,ae(Je,C)),Nt=J(Sr,ae(lt,b)),Fr=ce(jt,Bt,Nt),$t=t(Fr,3),Xt=$t[0],lr=$t[1],cr=$t[2];return{color:ze==="hsl"?ue(jt,Bt,Nt):de(Xt,lr,cr,ze),isLight:fe(Xt,lr,cr,Er)}};return be.random=function(){var Se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},De=Se.format,k=De===void 0?"hex":De,tt=Se.saturation,ze=tt===void 0?[50,55]:tt,Le=Se.lightness,Je=Le===void 0?[50,60]:Le,ft=Se.differencePoint,lt=ft===void 0?130:ft,Ot=Se.excludeHue;ze=ae(ze,C),Je=ae(Je,b);var Er=Ot?F(0,359,Ot):B(0,359),Sr=typeof ze=="number"?ze:B.apply(void 0,r(ze)),jt=typeof Je=="number"?Je:B.apply(void 0,r(Je)),Bt=ce(Er,Sr,jt),Nt=t(Bt,3),Fr=Nt[0],$t=Nt[1],Xt=Nt[2];return{color:k==="hsl"?ue(Er,Sr,jt):de(Fr,$t,Xt,k),isLight:fe(Fr,$t,Xt,lt)}},be})});var i9r=H(X6=>{"use strict";Object.defineProperty(X6,"__esModule",{value:!0});X6.TOKEN_TYPE_TO_HIGHLIGHT=X6.HighlightSubject=X6.TokenType=void 0;var LV;(function(e){e[e.WHITESPACE=0]="WHITESPACE",e[e.WORD=1]="WORD",e[e.QUOTE=2]="QUOTE",e[e.BACKTICK_QUOTE=3]="BACKTICK_QUOTE",e[e.RESERVED=4]="RESERVED",e[e.RESERVED_TOPLEVEL=5]="RESERVED_TOPLEVEL",e[e.RESERVED_NEWLINE=6]="RESERVED_NEWLINE",e[e.BOUNDARY=7]="BOUNDARY",e[e.COMMENT=8]="COMMENT",e[e.BLOCK_COMMENT=9]="BLOCK_COMMENT",e[e.NUMBER=10]="NUMBER",e[e.ERROR=11]="ERROR",e[e.VARIABLE=12]="VARIABLE",e[e.LITERAL=13]="LITERAL",e[e.BUILT_IN=14]="BUILT_IN"})(LV=X6.TokenType||(X6.TokenType={}));var VV;(function(e){e.BOUNDARY="boundary",e.WORD="word",e.BACKTICK_QUOTE="backtickQuote",e.QUOTE="quote",e.RESERVED="reserved",e.NUMBER="number",e.VARIABLE="variable",e.COMMENT="comment",e.FUNCTIONS="functions",e.LITERAL="literal",e.BUILT_IN="builtIn"})(VV=X6.HighlightSubject||(X6.HighlightSubject={}));X6.TOKEN_TYPE_TO_HIGHLIGHT={[LV.BOUNDARY]:VV.BOUNDARY,[LV.WORD]:VV.WORD,[LV.BACKTICK_QUOTE]:VV.BACKTICK_QUOTE,[LV.QUOTE]:VV.QUOTE,[LV.RESERVED]:VV.RESERVED,[LV.RESERVED_TOPLEVEL]:VV.RESERVED,[LV.RESERVED_NEWLINE]:VV.RESERVED,[LV.NUMBER]:VV.NUMBER,[LV.VARIABLE]:VV.VARIABLE,[LV.COMMENT]:VV.COMMENT,[LV.BLOCK_COMMENT]:VV.COMMENT,[LV.LITERAL]:VV.LITERAL,[LV.BUILT_IN]:VV.BUILT_IN}});var o9r=H(Rvt=>{"use strict";Object.defineProperty(Rvt,"__esModule",{value:!0});Rvt.Tokenizer=void 0;var tx=i9r(),s9r=class{constructor(){this.literal=["true","false","null","unknown"],this.builtIn=["array","bigint","binary","bit","blob","bool","boolean","char","character","date","dec","decimal","float","int","int8","integer","interval","number","numeric","real","record","serial","serial8","smallint","text","time","timestamp","tinyint","varchar","varchar2","varying","void"],this.reserved=["accessible","action","after","against","aggregate","algorithm","all","alter","analyse","analyze","as","asc","autocommit","auto_increment","backup","begin","between","binlog","both","cascade","case","change","changed","character set","charset","check","checksum","collate","collation","column","columns","comment","commit","committed","compressed","concurrent","constraint","contains","convert","create","cross","current_timestamp","database","databases","day","day_hour","day_minute","day_second","default","definer","delayed","delete","desc","describe","deterministic","distinct","distinctrow","div","do","dumpfile","duplicate","dynamic","else","enclosed","end","engine","engine_type","engines","escape","escaped","events","exec","execute","exists","explain","extended","fast","fields","file","first","fixed","flush","for","force","foreign","full","fulltext","function","global","grant","grants","group_concat","heap","high_priority","hosts","hour","hour_minute","hour_second","identified","if","ifnull","ignore","in","index","indexes","infile","insert","insert_id","insert_method","interval","into","invoker","is","isolation","key","keys","kill","last_insert_id","leading","level","like","linear","lines","load","local","lock","locks","logs","low_priority","maria","master","master_connect_retry","master_host","master_log_file","match","max_connections_per_hour","max_queries_per_hour","max_rows","max_updates_per_hour","max_user_connections","medium","merge","minute","minute_second","min_rows","mode","month","mrg_myisam","myisam","names","natural","not","now()","null","offset","on","open","optimize","option","optionally","on update","on delete","outfile","pack_keys","page","partial","partition","partitions","password","primary","privileges","procedure","process","processlist","purge","quick","range","raid0","raid_chunks","raid_chunksize","raid_type","read","read_only","read_write","references","regexp","reload","rename","repair","repeatable","replace","replication","reset","restore","restrict","return","returns","revoke","rlike","rollback","row","rows","row_format","second","security","separator","serializable","session","share","show","shutdown","slave","soname","sounds","sql","sql_auto_is_null","sql_big_result","sql_big_selects","sql_big_tables","sql_buffer_result","sql_calc_found_rows","sql_log_bin","sql_log_off","sql_log_update","sql_low_priority_updates","sql_max_join_size","sql_quote_show_create","sql_safe_updates","sql_select_limit","sql_slave_skip_counter","sql_small_result","sql_warnings","sql_cache","sql_no_cache","start","starting","status","stop","storage","straight_join","string","striped","super","table","tables","temporary","terminated","then","to","trailing","transactional","true","truncate","type","types","uncommitted","unique","unlock","unsigned","usage","use","using","variables","view","when","with","work","write","year_month"],this.reservedToplevel=["select","from","where","set","order by","group by","limit","drop","values","update","having","add","change","modify","alter table","delete from","union all","union","except","intersect"],this.reservedNewline=["left outer join","right outer join","left join","right join","outer join","inner join","join","xor","or","and"],this.functions=["abs","acos","adddate","addtime","aes_decrypt","aes_encrypt","area","asbinary","ascii","asin","astext","atan","atan2","avg","bdmpolyfromtext","bdmpolyfromwkb","bdpolyfromtext","bdpolyfromwkb","benchmark","bin","bit_and","bit_count","bit_length","bit_or","bit_xor","boundary","buffer","cast","ceil","ceiling","centroid","char","character_length","charset","char_length","coalesce","coercibility","collation","compress","concat","concat_ws","connection_id","contains","conv","convert","convert_tz","convexhull","cos","cot","count","crc32","crosses","curdate","current_date","current_time","current_timestamp","current_user","curtime","database","date","datediff","date_add","date_diff","date_format","date_sub","day","dayname","dayofmonth","dayofweek","dayofyear","decode","default","degrees","des_decrypt","des_encrypt","difference","dimension","disjoint","distance","elt","encode","encrypt","endpoint","envelope","equals","exp","export_set","exteriorring","extract","extractvalue","field","find_in_set","floor","format","found_rows","from_days","from_unixtime","geomcollfromtext","geomcollfromwkb","geometrycollection","geometrycollectionfromtext","geometrycollectionfromwkb","geometryfromtext","geometryfromwkb","geometryn","geometrytype","geomfromtext","geomfromwkb","get_format","get_lock","glength","greatest","group_concat","group_unique_users","hex","hour","if","ifnull","inet_aton","inet_ntoa","insert","instr","interiorringn","intersection","intersects","interval","isclosed","isempty","isnull","isring","issimple","is_free_lock","is_used_lock","last_day","last_insert_id","lcase","least","left","length","linefromtext","linefromwkb","linestring","linestringfromtext","linestringfromwkb","ln","load_file","localtime","localtimestamp","locate","log","log10","log2","lower","lpad","ltrim","makedate","maketime","make_set","master_pos_wait","max","mbrcontains","mbrdisjoint","mbrequal","mbrintersects","mbroverlaps","mbrtouches","mbrwithin","md5","microsecond","mid","min","minute","mlinefromtext","mlinefromwkb","mod","month","monthname","mpointfromtext","mpointfromwkb","mpolyfromtext","mpolyfromwkb","multilinestring","multilinestringfromtext","multilinestringfromwkb","multipoint","multipointfromtext","multipointfromwkb","multipolygon","multipolygonfromtext","multipolygonfromwkb","name_const","nullif","numgeometries","numinteriorrings","numpoints","oct","octet_length","old_password","ord","overlaps","password","period_add","period_diff","pi","point","pointfromtext","pointfromwkb","pointn","pointonsurface","polyfromtext","polyfromwkb","polygon","polygonfromtext","polygonfromwkb","position","pow","power","quarter","quote","radians","rand","related","release_lock","repeat","replace","reverse","right","round","row_count","rpad","rtrim","schema","second","sec_to_time","session_user","sha","sha1","sign","sin","sleep","soundex","space","sqrt","srid","startpoint","std","stddev","stddev_pop","stddev_samp","strcmp","str_to_date","subdate","substr","substring","substring_index","subtime","sum","symdifference","sysdate","system_user","tan","time","timediff","timestamp","timestampadd","timestampdiff","time_format","time_to_sec","touches","to_days","trim","truncate","ucase","uncompress","uncompressed_length","unhex","unique_users","unix_timestamp","updatexml","upper","user","utc_date","utc_time","utc_timestamp","uuid","variance","var_pop","var_samp","version","week","weekday","weekofyear","within","x","y","year","yearweek"],this.boundaries=[",",";",":",")","(",".","=","<",">","+","-","*","/","!","^","%","|","&","#"],this.regexBoundaries="("+this.quoteRegex(this.boundaries).join("|")+")",this.regexReserved="("+this.quoteRegex(this.reserved).join("|")+")",this.regexReservedToplevel=`(${this.quoteRegex(this.reservedToplevel).join("|")})`.replace(/ /g,"\\s+"),this.regexReservedNewline=`(${this.quoteRegex(this.reservedNewline).join("|")})`.replace(/ /g,"\\s+"),this.regexFunction="("+this.quoteRegex(this.functions).join("|")+")",this.regexLiteral="("+this.quoteRegex(this.literal).join("|")+")",this.regexBuiltIn="("+this.quoteRegex(this.builtIn).join("|")+")"}tokenize(t){let r=[],n=t.length+1,a,o=t.length;for(;o;){if(n<=o)return r.push({type:tx.TokenType.ERROR,value:t}),r;n=o,a=this.createNextToken(t,a);let l=a.value.length;r.push(a),t=t.substr(l),o-=l}return r}createNextToken(t,r){let n;if(n=t.match(/^\s+/),n)return{type:tx.TokenType.WHITESPACE,value:n[0]};if(t[0]==="#"||t[1]&&t[0]==="-"&&t[1]==="-"||t[1]&&t[0]==="/"&&t[1]==="*"){let o,l;return t[0]==="-"||t[0]==="#"?(l=t.indexOf(` +`),o=tx.TokenType.COMMENT):(l=t.indexOf("*/",2)+2,o=tx.TokenType.BLOCK_COMMENT),l===-1&&(l=t.length),{type:o,value:t.substr(0,l)}}if(['"',"'","`","["].includes(t[0]))return{type:t[0]==="`"||t[0]==="["?tx.TokenType.BACKTICK_QUOTE:tx.TokenType.QUOTE,value:this.getQuotedString(t)};if((t[0]==="@"||t[0]===":")&&t[1]){if(['"',"'","`"].includes(t[1])){let o=t[0]+this.getQuotedString(t.substr(1));return{type:tx.TokenType.VARIABLE,value:o}}if(n=new RegExp(`^(${t[0]}[a-zA-Z0-9._$]+)`).exec(t),n)return{type:tx.TokenType.VARIABLE,value:n[1]}}if(n=new RegExp(`^([0-9]+(.[0-9]+)?|0x[0-9a-fA-F]+|0b[01]+)($|\\s|"'\`|${this.regexBoundaries})`).exec(t),n)return{type:tx.TokenType.NUMBER,value:n[1]};if(n=new RegExp(`^(${this.regexBoundaries})`).exec(t),n)return{type:tx.TokenType.BOUNDARY,value:n[1]};let a=t.toLowerCase();if(!r||r.value!=="."){if(n=new RegExp(`^(${this.regexReservedToplevel})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:tx.TokenType.RESERVED_TOPLEVEL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReservedNewline})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:tx.TokenType.RESERVED_NEWLINE,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexLiteral})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:tx.TokenType.LITERAL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexBuiltIn})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:tx.TokenType.BUILT_IN,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReserved})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:tx.TokenType.RESERVED,value:t.substr(0,n[1].length)}}return n=new RegExp(`^(${this.regexFunction}[(]|\\s|[)])`).exec(a),n?{type:tx.TokenType.RESERVED,value:t.substr(0,n[1].length-1)}:(n=new RegExp(`^(.*?)($|\\s|["'\`]|${this.regexBoundaries})`).exec(t),{type:tx.TokenType.WORD,value:n[1]})}quoteRegex(t){return t.map(r=>r.replace(new RegExp("[.\\\\+*?\\[^\\]$(){}=!<>|:\\/-]","g"),"\\$&"))}getQuotedString(t){var r;let n=`^(((\`[^\`]*($|\`))+)|((\\[[^\\]]*($|\\]))(\\][^\\]]*($|\\]))*)|(("[^"\\\\]*(?:\\\\.[^"\\\\]*)*("|$))+)|(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+))`,a=new RegExp(n,"s").exec(t);return(r=a?.[1])!==null&&r!==void 0?r:""}};Rvt.Tokenizer=s9r});var mXi=H((F3u,bKe)=>{"use strict";var NDc=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",DDc=typeof process<"u"&&process.platform==="win32",fXi=typeof process<"u"&&process.platform==="linux",a9r={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},IXi=Object.assign({},a9r,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),hXi=Object.assign({},a9r,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:fXi?"\u25B8":"\u276F",pointerSmall:fXi?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});bKe.exports=DDc&&!NDc?IXi:hXi;Reflect.defineProperty(bKe.exports,"common",{enumerable:!1,value:a9r});Reflect.defineProperty(bKe.exports,"windows",{enumerable:!1,value:IXi});Reflect.defineProperty(bKe.exports,"other",{enumerable:!1,value:hXi})});var EKe=H((Z3u,c9r)=>{"use strict";var kDc=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),xDc=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,GDc=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,CXi=()=>{let e={enabled:GDc(),visible:!0,styles:{},keys:{}},t=o=>{let l=o.open=`\x1B[${o.codes[0]}m`,A=o.close=`\x1B[${o.codes[1]}m`,f=o.regex=new RegExp(`\\u001b\\[${o.codes[1]}m`,"g");return o.wrap=(I,C)=>{I.includes(A)&&(I=I.replace(f,A+l));let b=l+I+A;return C?b.replace(/\r*\n/g,`${A}$&${l}`):b},o},r=(o,l,A)=>typeof o=="function"?o(l):o.wrap(l,A),n=(o,l)=>{if(o===""||o==null)return"";if(e.enabled===!1)return o;if(e.visible===!1)return"";let A=""+o,f=A.includes(` +`),I=l.length;for(I>0&&l.includes("unstyle")&&(l=[...new Set(["unstyle",...l])].reverse());I-- >0;)A=r(e.styles[l[I]],A,f);return A},a=(o,l,A)=>{e.styles[o]=t({name:o,codes:l}),(e.keys[A]||(e.keys[A]=[])).push(o),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(I){e.alias(o,I)},get(){let I=C=>n(C,I.stack);return Reflect.setPrototypeOf(I,e),I.stack=this.stack?this.stack.concat(o):[o],I}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),e.ansiRegex=xDc,e.hasColor=e.hasAnsi=o=>(e.ansiRegex.lastIndex=0,typeof o=="string"&&o!==""&&e.ansiRegex.test(o)),e.alias=(o,l)=>{let A=typeof l=="string"?e[l]:l;if(typeof A!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");A.stack||(Reflect.defineProperty(A,"name",{value:o}),e.styles[o]=A,A.stack=[o]),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(f){e.alias(o,f)},get(){let f=I=>n(I,f.stack);return Reflect.setPrototypeOf(f,e),f.stack=this.stack?this.stack.concat(A.stack):A.stack,f}})},e.theme=o=>{if(!kDc(o))throw new TypeError("Expected theme to be an object");for(let l of Object.keys(o))e.alias(l,o[l]);return e},e.alias("unstyle",o=>typeof o=="string"&&o!==""?(e.ansiRegex.lastIndex=0,o.replace(e.ansiRegex,"")):""),e.alias("noop",o=>o),e.none=e.clear=e.noop,e.stripColor=e.unstyle,e.symbols=mXi(),e.define=a,e};c9r.exports=CXi();c9r.exports.create=CXi});var _Xi=H(tke=>{"use strict";var FDc=tke&&tke.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tke,"__esModule",{value:!0});tke.SqlHighlighter=void 0;var J6=FDc(EKe()),ZDc=o9r(),oL=i9r(),Nvt=class e{constructor(t={}){this.theme=t,this.tokenizer=new ZDc.Tokenizer,this.theme=Object.assign(Object.assign({},e.DEFAULT_THEME),this.theme)}highlight(t){let r=this.tokenizer.tokenize(t),n,a="",o=0;for(;n=r[o++];)a+=this.highlightToken(n.type,n.value);return a}highlightToken(t,r){return t===oL.TokenType.BOUNDARY&&["(",")"].includes(r)?r:this.colorize(t,r)}colorize(t,r){return!oL.TOKEN_TYPE_TO_HIGHLIGHT[t]||!this.theme[oL.TOKEN_TYPE_TO_HIGHLIGHT[t]]?r:this.theme[oL.TOKEN_TYPE_TO_HIGHLIGHT[t]](r)}};tke.SqlHighlighter=Nvt;Nvt.DEFAULT_THEME={[oL.HighlightSubject.QUOTE]:J6.default.yellow,[oL.HighlightSubject.BACKTICK_QUOTE]:J6.default.yellow,[oL.HighlightSubject.RESERVED]:J6.default.white.bold,[oL.HighlightSubject.BOUNDARY]:J6.default.reset,[oL.HighlightSubject.NUMBER]:J6.default.green,[oL.HighlightSubject.WORD]:void 0,[oL.HighlightSubject.COMMENT]:J6.default.green.dim,[oL.HighlightSubject.VARIABLE]:J6.default.yellow,[oL.HighlightSubject.FUNCTIONS]:J6.default.green.bold,[oL.HighlightSubject.BUILT_IN]:J6.default.cyan,[oL.HighlightSubject.LITERAL]:J6.default.cyan}});var bXi=H(Ile=>{"use strict";var LDc=Ile&&Ile.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),yXi=Ile&&Ile.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&LDc(t,e,r)};Object.defineProperty(Ile,"__esModule",{value:!0});yXi(o9r(),Ile);yXi(_Xi(),Ile)});var SXi=H((EXi,Dvt)=>{(function(e,t){typeof Dvt=="object"&&Dvt.exports?Dvt.exports=t():e.nearley=t()})(EXi,function(){function e(f,I,C){return this.id=++e.highestId,this.name=f,this.symbols=I,this.postprocess=C,this}e.highestId=0,e.prototype.toString=function(f){var I=typeof f>"u"?this.symbols.map(A).join(" "):this.symbols.slice(0,f).map(A).join(" ")+" \u25CF "+this.symbols.slice(f).map(A).join(" ");return this.name+" \u2192 "+I};function t(f,I,C,b){this.rule=f,this.dot=I,this.reference=C,this.data=[],this.wantedBy=b,this.isComplete=this.dot===f.symbols.length}t.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},t.prototype.nextState=function(f){var I=new t(this.rule,this.dot+1,this.reference,this.wantedBy);return I.left=this,I.right=f,I.isComplete&&(I.data=I.build(),I.right=void 0),I},t.prototype.build=function(){var f=[],I=this;do f.push(I.right.data),I=I.left;while(I.left);return f.reverse(),f},t.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,o.fail))};function r(f,I){this.grammar=f,this.index=I,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(f){for(var I=this.states,C=this.wants,b=this.completed,E=0;E0&&I.push(" ^ "+b+" more lines identical to this"),b=0,I.push(" "+B)),C=B}},o.prototype.getSymbolDisplay=function(f){return l(f)},o.prototype.buildFirstStateStack=function(f,I){if(I.indexOf(f)!==-1)return null;if(f.wantedBy.length===0)return[f];var C=f.wantedBy[0],b=[f].concat(I),E=this.buildFirstStateStack(C,b);return E===null?null:[f].concat(E)},o.prototype.save=function(){var f=this.table[this.current];return f.lexerState=this.lexerState,f},o.prototype.restore=function(f){var I=f.index;this.current=I,this.table[I]=f,this.table.splice(I+1),this.lexerState=f.lexerState,this.results=this.finish()},o.prototype.rewind=function(f){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[f])},o.prototype.finish=function(){var f=[],I=this.grammar.start,C=this.table[this.table.length-1];return C.states.forEach(function(b){b.rule.name===I&&b.dot===b.rule.symbols.length&&b.reference===0&&b.data!==o.fail&&f.push(b)}),f.map(function(b){return b.data})};function l(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return"character matching "+f;if(f.type)return f.type+" token";if(f.test)return"token matching "+String(f.test);throw new Error("Unknown symbol type: "+f)}}function A(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return f.toString();if(f.type)return"%"+f.type;if(f.test)return"<"+String(f.test)+">";throw new Error("Unknown symbol type: "+f)}}return{Parser:o,Grammar:n,Rule:e}})});var oVr=H((iVr,sVr)=>{(function(e,t){typeof iVr=="object"&&typeof sVr<"u"?sVr.exports=t():typeof define=="function"&&define.amd?define(t):e.deepmerge=t()})(iVr,function(){"use strict";var e=function(N){return t(N)&&!r(N)};function t(E){return!!E&&typeof E=="object"}function r(E){var N=Object.prototype.toString.call(E);return N==="[object RegExp]"||N==="[object Date]"||o(E)}var n=typeof Symbol=="function"&&Symbol.for,a=n?Symbol.for("react.element"):60103;function o(E){return E.$$typeof===a}function l(E){return Array.isArray(E)?[]:{}}function A(E,N){var B=N&&N.clone===!0;return B&&e(E)?C(l(E),E,N):E}function f(E,N,B){var F=E.slice();return N.forEach(function(Q,J){typeof F[J]>"u"?F[J]=A(Q,B):e(Q)?F[J]=C(E[J],Q,B):E.indexOf(Q)===-1&&F.push(A(Q,B))}),F}function I(E,N,B){var F={};return e(E)&&Object.keys(E).forEach(function(Q){F[Q]=A(E[Q],B)}),Object.keys(N).forEach(function(Q){!e(N[Q])||!E[Q]?F[Q]=A(N[Q],B):F[Q]=C(E[Q],N[Q],B)}),F}function C(E,N,B){var F=Array.isArray(N),Q=Array.isArray(E),J=B||{arrayMerge:f},ae=F===Q;if(ae)if(F){var ne=J.arrayMerge||f;return ne(E,N,B)}else return I(E,N,B);else return A(N,B)}C.all=function(N,B){if(!Array.isArray(N)||N.length<2)throw new Error("first argument should be an array with at least two elements");return N.reduce(function(F,Q){return C(F,Q,B)})};var b=C;return b})});var aVr=H((VMu,VJi)=>{var dFc=oVr();VJi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Map}extend(r){return this.shorthands=r,r.forEach(n=>{this[n]=a=>this.set(n,a)}),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}order(){let r=[...this.store].reduce((o,[l,A])=>(o[l]=A,o),{}),n=Object.keys(r),a=[...n];return n.forEach(o=>{if(!r[o])return;let{__before:l,__after:A}=r[o];l&&a.includes(l)?(a.splice(a.indexOf(o),1),a.splice(a.indexOf(l),0,o)):A&&a.includes(A)&&(a.splice(a.indexOf(o),1),a.splice(a.indexOf(A)+1,0,o))}),{entries:r,order:a}}entries(){let{entries:r,order:n}=this.order();if(n.length)return r}values(){let{entries:r,order:n}=this.order();return n.map(a=>r[a])}get(r){return this.store.get(r)}getOrCompute(r,n){return this.has(r)||this.set(r,n()),this.get(r)}has(r){return this.store.has(r)}set(r,n){return this.store.set(r,n),this}merge(r,n=[]){return Object.keys(r).forEach(a=>{if(n.includes(a))return;let o=r[a];!Array.isArray(o)&&typeof o!="object"||o===null||!this.has(a)?this.set(a,o):this.set(a,dFc(this.get(a),o))}),this}clean(r){return Object.keys(r).reduce((n,a)=>{let o=r[a];return o===void 0||Array.isArray(o)&&!o.length||Object.prototype.toString.call(o)==="[object Object]"&&!Object.keys(o).length||(n[a]=o),n},{})}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var Uvt=H((OMu,WJi)=>{WJi.exports=function(t){return class extends t{constructor(r){super(),this.parent=r}batch(r){return r(this),this}end(){return this.parent}}}});var U6=H((MMu,OJi)=>{var pFc=aVr(),fFc=Uvt();OJi.exports=pFc(fFc(Object))});var MJi=H((HMu,PJi)=>{PJi.exports=class extends Function{constructor(){return super(),new Proxy(this,{apply:(e,t,r)=>e.classCall(...r)})}classCall(){throw new Error("not implemented")}}});var YJi=H((QMu,HJi)=>{HJi.exports=function(t){return class extends t{constructor(...r){super(...r),this.value=void 0,this.useMap=!0}set(...r){return this.useMap=!0,this.value=void 0,super.set(...r)}clear(){return this.value=void 0,super.clear()}classCall(r){return this.clear(),this.useMap=!1,this.value=r,this.parent}entries(){return this.useMap?super.entries():this.value}values(){return this.useMap?super.values():this.value}}}});var Kvt=H((JMu,QJi)=>{var IFc=MJi(),hFc=aVr(),mFc=Uvt(),CFc=YJi();QJi.exports=CFc(hFc(mFc(IFc)))});var JJi=H((UMu,XJi)=>{XJi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Set}add(r){return this.store.add(r),this}prepend(r){return this.store=new Set([r,...this.store]),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}values(){return[...this.store]}has(r){return this.store.has(r)}merge(r){return this.store=new Set([...this.store,...r]),this}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var gke=H((jMu,UJi)=>{var _Fc=JJi(),yFc=Uvt();UJi.exports=_Fc(yFc(Object))});var jvt=H((zMu,KJi)=>{KJi.exports=e=>class extends e{before(t){if(this.__after)throw new Error(`Unable to set .before(${JSON.stringify(t)}) with existing value for .after()`);return this.__before=t,this}after(t){if(this.__before)throw new Error(`Unable to set .after(${JSON.stringify(t)}) with existing value for .before()`);return this.__after=t,this}merge(t,r=[]){return t.before&&this.before(t.before),t.after&&this.after(t.after),super.merge(t,[...r,"before","after"])}}});var zvt=H(($Mu,jJi)=>{var bFc=U6(),EFc=jvt();jJi.exports=EFc(class extends bFc{constructor(e,t,r="plugin"){super(e),this.name=t,this.type=r,this.extend(["init"]),this.init((n,a=[])=>typeof n=="function"?new n(...a):n)}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin"))throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use() first.`);return this.set("args",e(this.get("args")||[])),this}set(e,t){if(e==="args"&&!Array.isArray(t))throw new Error("args must be an array of arguments");return super.set(e,t)}merge(e,t=[]){return"plugin"in e&&this.set("plugin",e.plugin),"args"in e&&this.set("args",e.args),super.merge(e,[...t,"args","plugin"])}toConfig(){let e=this.get("init"),t=this.get("plugin"),r=this.get("args"),n=null;if(t===void 0)throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use() was not called to specify the plugin`);typeof t=="string"&&(n=t,t=Et(n));let a=t.__expression?`(${t.__expression})`:t.name,o=e(t,r);return Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:r},__pluginConstructorName:{value:a},__pluginPath:{value:n}}),o}})});var qvt=H((rHu,zJi)=>{var Ake=U6(),N4=gke(),SFc=zvt();zJi.exports=class extends Ake{constructor(e){super(e),this.alias=new Ake(this),this.aliasFields=new N4(this),this.conditionNames=new N4(this),this.descriptionFiles=new N4(this),this.extensionAlias=new Ake(this),this.extensions=new N4(this),this.mainFields=new N4(this),this.mainFiles=new N4(this),this.exportsFields=new N4(this),this.importsFields=new N4(this),this.restrictions=new N4(this),this.roots=new N4(this),this.modules=new N4(this),this.plugins=new Ake(this),this.fallback=new Ake(this),this.byDependency=new Ake(this),this.extend(["cachePredicate","cacheWithContext","enforceExtension","symlinks","unsafeCache","useSyncFileSystemCalls","preferRelative","preferAbsolute"])}plugin(e){return this.plugins.getOrCompute(e,()=>new SFc(this,e,"resolve.plugin"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),conditionNames:this.conditionNames.values(),descriptionFiles:this.descriptionFiles.values(),extensionAlias:this.extensionAlias.entries(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),exportsFields:this.exportsFields.values(),importsFields:this.importsFields.values(),restrictions:this.restrictions.values(),roots:this.roots.values(),fallback:this.fallback.entries(),byDependency:this.byDependency.entries(),plugins:this.plugins.values().map(e=>e.toConfig())}))}merge(e,t=[]){let r=["alias","aliasFields","conditionNames","descriptionFiles","extensionAlias","extensions","mainFields","mainFiles","modules","exportsFields","importsFields","restrictions","roots","fallback","byDependency"];return!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"plugin"])}}});var $Ji=H((iHu,qJi)=>{var vFc=qvt(),cVr=gke();qJi.exports=class extends vFc{constructor(e){super(e),this.modules=new cVr(this),this.moduleExtensions=new cVr(this),this.packageMains=new cVr(this)}toConfig(){return this.clean({modules:this.modules.values(),moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){let r=["modules","moduleExtensions","packageMains"];return r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r])}}});var tUi=H((oHu,eUi)=>{var BFc=U6();eUi.exports=class extends BFc{constructor(e){super(e),this.extend(["asyncChunks","auxiliaryComment","charset","chunkFilename","chunkLoadTimeout","chunkLoadingGlobal","chunkLoading","chunkFormat","enabledChunkLoadingTypes","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolModuleFilenameTemplate","devtoolNamespace","filename","assetModuleFilename","globalObject","uniqueName","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateGlobal","hotUpdateMainFilename","library","libraryExport","libraryTarget","importFunctionName","path","pathinfo","publicPath","scriptType","sourceMapFilename","sourcePrefix","strictModuleErrorHandling","strictModuleExceptionHandling","umdNamedDefine","workerChunkLoading","enabledLibraryTypes","environment","compareBeforeEmit","wasmLoading","enabledWasmLoadingTypes","iife","module","clean"])}}});var nUi=H((cHu,rUi)=>{var wFc=U6(),TFc=gke();rUi.exports=class extends wFc{constructor(e){super(e),this.allowedHosts=new TFc(this),this.extend(["after","before","bonjour","clientLogLevel","compress","contentBase","contentBasePublicPath","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","injectClient","injectHot","inline","lazy","liveReload","mimeTypes","noInfo","onListening","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","serveIndex","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","transportMode","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){return!t.includes("allowedHosts")&&"allowedHosts"in e&&this.allowedHosts.merge(e.allowedHosts),super.merge(e,["allowedHosts"])}}});var sUi=H((uHu,iUi)=>{var RFc=oVr(),NFc=U6(),DFc=jvt();iUi.exports=DFc(class extends NFc{constructor(e,t){super(e),this.name=t,this.extend(["loader","options"])}tap(e){return this.options(e(this.get("options"))),this}merge(e,t=[]){return!t.includes("loader")&&"loader"in e&&this.loader(e.loader),!t.includes("options")&&"options"in e&&this.options(RFc(this.store.get("options")||{},e.options)),super.merge(e,[...t,"loader","options"])}toConfig(){let e=this.clean(this.entries()||{});return Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}}),e}})});var lUi=H((AHu,cUi)=>{var $vt=U6(),oUi=gke(),kFc=jvt(),xFc=sUi(),GFc=qvt();function aUi(e){return Array.isArray(e)?e:[e]}var eBt=kFc(class extends $vt{constructor(e,t,r="rule"){super(e),this.ruleName=t,this.names=[],this.ruleType=r,this.ruleTypes=[];let n=this;for(;n instanceof eBt;)this.names.unshift(n.ruleName),this.ruleTypes.unshift(n.ruleType),n=n.parent;this.uses=new $vt(this),this.include=new oUi(this),this.exclude=new oUi(this),this.rules=new $vt(this),this.oneOfs=new $vt(this),this.resolve=new GFc(this),this.resolve.extend(["fullySpecified"]),this.extend(["enforce","issuer","issuerLayer","layer","mimetype","parser","generator","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,()=>new xFc(this,e))}rule(e){return this.rules.getOrCompute(e,()=>new eBt(this,e,"rule"))}oneOf(e){return this.oneOfs.getOrCompute(e,()=>new eBt(this,e,"oneOf"))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){let e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map(t=>t.toConfig()),oneOf:this.oneOfs.values().map(t=>t.toConfig()),use:this.uses.values().map(t=>t.toConfig()),resolve:this.resolve.toConfig()}));return Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}}),e}merge(e,t=[]){return!t.includes("include")&&"include"in e&&this.include.merge(aUi(e.include)),!t.includes("exclude")&&"exclude"in e&&this.exclude.merge(aUi(e.exclude)),!t.includes("use")&&"use"in e&&Object.keys(e.use).forEach(r=>this.use(r).merge(e.use[r])),!t.includes("rules")&&"rules"in e&&Object.keys(e.rules).forEach(r=>this.rule(r).merge(e.rules[r])),!t.includes("oneOf")&&"oneOf"in e&&Object.keys(e.oneOf).forEach(r=>this.oneOf(r).merge(e.oneOf[r])),!t.includes("resolve")&&"resolve"in e&&this.resolve.merge(e.resolve),!t.includes("test")&&"test"in e&&this.test(e.test instanceof RegExp||typeof e.test=="function"?e.test:new RegExp(e.test)),super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});cUi.exports=eBt});var AUi=H((pHu,gUi)=>{var ZKe=U6(),uUi=lUi();gUi.exports=class extends ZKe{constructor(e){super(e),this.rules=new ZKe(this),this.defaultRules=new ZKe(this),this.generator=new ZKe(this),this.parser=new ZKe(this),this.extend(["noParse","unsafeCache","wrappedContextCritical","exprContextRegExp","wrappedContextRecursive","strictExportPresence","wrappedContextRegExp"])}defaultRule(e){return this.defaultRules.getOrCompute(e,()=>new uUi(this,e,"defaultRule"))}rule(e){return this.rules.getOrCompute(e,()=>new uUi(this,e,"rule"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map(e=>e.toConfig()),generator:this.generator.entries(),parser:this.parser.entries(),rules:this.rules.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("rule")&&"rule"in e&&Object.keys(e.rule).forEach(r=>this.rule(r).merge(e.rule[r])),!t.includes("defaultRule")&&"defaultRule"in e&&Object.keys(e.defaultRule).forEach(r=>this.defaultRule(r).merge(e.defaultRule[r])),super.merge(e,["rule","defaultRule"])}}});var fUi=H((IHu,pUi)=>{var dUi=U6(),FFc=Kvt(),ZFc=zvt();pUi.exports=class extends dUi{constructor(e){super(e),this.minimizers=new dUi(this),this.splitChunks=new FFc(this),this.extend(["minimize","runtimeChunk","emitOnErrors","moduleIds","chunkIds","nodeEnv","mangleWasmImports","removeAvailableModules","removeEmptyChunks","mergeDuplicateChunks","flagIncludedChunks","providedExports","usedExports","concatenateModules","sideEffects","portableRecords","mangleExports","innerGraph","realContentHash"])}minimizer(e){if(Array.isArray(e))throw new Error("optimization.minimizer() no longer supports being passed an array. Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.");return this.minimizers.getOrCompute(e,()=>new ZFc(this,e,"optimization.minimizer"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{splitChunks:this.splitChunks.entries(),minimizer:this.minimizers.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("minimizer")&&"minimizer"in e&&Object.keys(e.minimizer).forEach(r=>this.minimizer(r).merge(e.minimizer[r])),super.merge(e,[...t,"minimizer"])}}});var hUi=H((mHu,IUi)=>{var LFc=Kvt();IUi.exports=class extends LFc{constructor(e){super(e),this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}});var LKe=H(xP=>{"use strict";Object.defineProperty(xP,"__esModule",{value:!0});xP.stringifyPath=xP.quoteKey=xP.isValidVariableName=xP.IS_VALID_IDENTIFIER=xP.quoteString=void 0;var VFc=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,WFc=new Map([["\b","\\b"],[" ","\\t"],[` -`,"\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function OFc(e){return WFc.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function PFc(e){return`'${e.replace(VFc,OFc)}'`}xP.quoteString=PFc;var MFc=new Set("break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "));xP.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function lVr(e){return typeof e=="string"&&!MFc.has(e)&&xP.IS_VALID_IDENTIFIER.test(e)}xP.isValidVariableName=lVr;function HFc(e,t){return lVr(e)?e:t(e)}xP.quoteKey=HFc;function YFc(e,t){let r="";for(let n of e)lVr(n)?r+=`.${n}`:r+=`[${t(n)}]`;return r}xP.stringifyPath=YFc});var uVr=H(D4=>{"use strict";Object.defineProperty(D4,"__esModule",{value:!0});D4.FunctionParser=D4.dedentFunction=D4.functionToString=D4.USED_METHOD_KEY=void 0;var mUi=LKe(),QFc={" "(){}}[" "].toString().charAt(0)==='"',XFc={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "},JFc={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"},UFc=new Set("case delete else in instanceof new return throw typeof void , ; : + - ! ~ & | ^ * / % < > ? =".split(" "));D4.USED_METHOD_KEY=new WeakSet;var KFc=(e,t,r,n)=>{let a=typeof n=="string"?n:void 0;return a!==void 0&&D4.USED_METHOD_KEY.add(e),new tBt(e,t,r,a).stringify()};D4.functionToString=KFc;function CUi(e){let t;for(let r of e.split(` +`)},o.prototype.displayStateStack=function(f,I){for(var C,b=0,E=0;E0&&I.push(" ^ "+b+" more lines identical to this"),b=0,I.push(" "+B)),C=B}},o.prototype.getSymbolDisplay=function(f){return l(f)},o.prototype.buildFirstStateStack=function(f,I){if(I.indexOf(f)!==-1)return null;if(f.wantedBy.length===0)return[f];var C=f.wantedBy[0],b=[f].concat(I),E=this.buildFirstStateStack(C,b);return E===null?null:[f].concat(E)},o.prototype.save=function(){var f=this.table[this.current];return f.lexerState=this.lexerState,f},o.prototype.restore=function(f){var I=f.index;this.current=I,this.table[I]=f,this.table.splice(I+1),this.lexerState=f.lexerState,this.results=this.finish()},o.prototype.rewind=function(f){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[f])},o.prototype.finish=function(){var f=[],I=this.grammar.start,C=this.table[this.table.length-1];return C.states.forEach(function(b){b.rule.name===I&&b.dot===b.rule.symbols.length&&b.reference===0&&b.data!==o.fail&&f.push(b)}),f.map(function(b){return b.data})};function l(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return"character matching "+f;if(f.type)return f.type+" token";if(f.test)return"token matching "+String(f.test);throw new Error("Unknown symbol type: "+f)}}function A(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return f.toString();if(f.type)return"%"+f.type;if(f.test)return"<"+String(f.test)+">";throw new Error("Unknown symbol type: "+f)}}return{Parser:o,Grammar:n,Rule:e}})});var AVr=H((uVr,gVr)=>{(function(e,t){typeof uVr=="object"&&typeof gVr<"u"?gVr.exports=t():typeof define=="function"&&define.amd?define(t):e.deepmerge=t()})(uVr,function(){"use strict";var e=function(N){return t(N)&&!r(N)};function t(E){return!!E&&typeof E=="object"}function r(E){var N=Object.prototype.toString.call(E);return N==="[object RegExp]"||N==="[object Date]"||o(E)}var n=typeof Symbol=="function"&&Symbol.for,a=n?Symbol.for("react.element"):60103;function o(E){return E.$$typeof===a}function l(E){return Array.isArray(E)?[]:{}}function A(E,N){var B=N&&N.clone===!0;return B&&e(E)?C(l(E),E,N):E}function f(E,N,B){var F=E.slice();return N.forEach(function(Q,J){typeof F[J]>"u"?F[J]=A(Q,B):e(Q)?F[J]=C(E[J],Q,B):E.indexOf(Q)===-1&&F.push(A(Q,B))}),F}function I(E,N,B){var F={};return e(E)&&Object.keys(E).forEach(function(Q){F[Q]=A(E[Q],B)}),Object.keys(N).forEach(function(Q){!e(N[Q])||!E[Q]?F[Q]=A(N[Q],B):F[Q]=C(E[Q],N[Q],B)}),F}function C(E,N,B){var F=Array.isArray(N),Q=Array.isArray(E),J=B||{arrayMerge:f},ae=F===Q;if(ae)if(F){var ne=J.arrayMerge||f;return ne(E,N,B)}else return I(E,N,B);else return A(N,B)}C.all=function(N,B){if(!Array.isArray(N)||N.length<2)throw new Error("first argument should be an array with at least two elements");return N.reduce(function(F,Q){return C(F,Q,B)})};var b=C;return b})});var dVr=H((qHu,OJi)=>{var uZc=AVr();OJi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Map}extend(r){return this.shorthands=r,r.forEach(n=>{this[n]=a=>this.set(n,a)}),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}order(){let r=[...this.store].reduce((o,[l,A])=>(o[l]=A,o),{}),n=Object.keys(r),a=[...n];return n.forEach(o=>{if(!r[o])return;let{__before:l,__after:A}=r[o];l&&a.includes(l)?(a.splice(a.indexOf(o),1),a.splice(a.indexOf(l),0,o)):A&&a.includes(A)&&(a.splice(a.indexOf(o),1),a.splice(a.indexOf(A)+1,0,o))}),{entries:r,order:a}}entries(){let{entries:r,order:n}=this.order();if(n.length)return r}values(){let{entries:r,order:n}=this.order();return n.map(a=>r[a])}get(r){return this.store.get(r)}getOrCompute(r,n){return this.has(r)||this.set(r,n()),this.get(r)}has(r){return this.store.has(r)}set(r,n){return this.store.set(r,n),this}merge(r,n=[]){return Object.keys(r).forEach(a=>{if(n.includes(a))return;let o=r[a];!Array.isArray(o)&&typeof o!="object"||o===null||!this.has(a)?this.set(a,o):this.set(a,uZc(this.get(a),o))}),this}clean(r){return Object.keys(r).reduce((n,a)=>{let o=r[a];return o===void 0||Array.isArray(o)&&!o.length||Object.prototype.toString.call(o)==="[object Object]"&&!Object.keys(o).length||(n[a]=o),n},{})}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var Uvt=H((eYu,PJi)=>{PJi.exports=function(t){return class extends t{constructor(r){super(),this.parent=r}batch(r){return r(this),this}end(){return this.parent}}}});var K6=H((rYu,MJi)=>{var gZc=dVr(),AZc=Uvt();MJi.exports=gZc(AZc(Object))});var YJi=H((nYu,HJi)=>{HJi.exports=class extends Function{constructor(){return super(),new Proxy(this,{apply:(e,t,r)=>e.classCall(...r)})}classCall(){throw new Error("not implemented")}}});var XJi=H((sYu,QJi)=>{QJi.exports=function(t){return class extends t{constructor(...r){super(...r),this.value=void 0,this.useMap=!0}set(...r){return this.useMap=!0,this.value=void 0,super.set(...r)}clear(){return this.value=void 0,super.clear()}classCall(r){return this.clear(),this.useMap=!1,this.value=r,this.parent}entries(){return this.useMap?super.entries():this.value}values(){return this.useMap?super.values():this.value}}}});var Kvt=H((aYu,JJi)=>{var dZc=YJi(),pZc=dVr(),fZc=Uvt(),IZc=XJi();JJi.exports=IZc(pZc(fZc(dZc)))});var KJi=H((cYu,UJi)=>{UJi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Set}add(r){return this.store.add(r),this}prepend(r){return this.store=new Set([r,...this.store]),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}values(){return[...this.store]}has(r){return this.store.has(r)}merge(r){return this.store=new Set([...this.store,...r]),this}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var gke=H((uYu,jJi)=>{var hZc=KJi(),mZc=Uvt();jJi.exports=hZc(mZc(Object))});var jvt=H((gYu,zJi)=>{zJi.exports=e=>class extends e{before(t){if(this.__after)throw new Error(`Unable to set .before(${JSON.stringify(t)}) with existing value for .after()`);return this.__before=t,this}after(t){if(this.__before)throw new Error(`Unable to set .after(${JSON.stringify(t)}) with existing value for .before()`);return this.__after=t,this}merge(t,r=[]){return t.before&&this.before(t.before),t.after&&this.after(t.after),super.merge(t,[...r,"before","after"])}}});var zvt=H((dYu,qJi)=>{var CZc=K6(),_Zc=jvt();qJi.exports=_Zc(class extends CZc{constructor(e,t,r="plugin"){super(e),this.name=t,this.type=r,this.extend(["init"]),this.init((n,a=[])=>typeof n=="function"?new n(...a):n)}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin"))throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use() first.`);return this.set("args",e(this.get("args")||[])),this}set(e,t){if(e==="args"&&!Array.isArray(t))throw new Error("args must be an array of arguments");return super.set(e,t)}merge(e,t=[]){return"plugin"in e&&this.set("plugin",e.plugin),"args"in e&&this.set("args",e.args),super.merge(e,[...t,"args","plugin"])}toConfig(){let e=this.get("init"),t=this.get("plugin"),r=this.get("args"),n=null;if(t===void 0)throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use() was not called to specify the plugin`);typeof t=="string"&&(n=t,t=Et(n));let a=t.__expression?`(${t.__expression})`:t.name,o=e(t,r);return Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:r},__pluginConstructorName:{value:a},__pluginPath:{value:n}}),o}})});var qvt=H((IYu,$Ji)=>{var Ake=K6(),D4=gke(),yZc=zvt();$Ji.exports=class extends Ake{constructor(e){super(e),this.alias=new Ake(this),this.aliasFields=new D4(this),this.conditionNames=new D4(this),this.descriptionFiles=new D4(this),this.extensionAlias=new Ake(this),this.extensions=new D4(this),this.mainFields=new D4(this),this.mainFiles=new D4(this),this.exportsFields=new D4(this),this.importsFields=new D4(this),this.restrictions=new D4(this),this.roots=new D4(this),this.modules=new D4(this),this.plugins=new Ake(this),this.fallback=new Ake(this),this.byDependency=new Ake(this),this.extend(["cachePredicate","cacheWithContext","enforceExtension","symlinks","unsafeCache","useSyncFileSystemCalls","preferRelative","preferAbsolute"])}plugin(e){return this.plugins.getOrCompute(e,()=>new yZc(this,e,"resolve.plugin"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),conditionNames:this.conditionNames.values(),descriptionFiles:this.descriptionFiles.values(),extensionAlias:this.extensionAlias.entries(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),exportsFields:this.exportsFields.values(),importsFields:this.importsFields.values(),restrictions:this.restrictions.values(),roots:this.roots.values(),fallback:this.fallback.entries(),byDependency:this.byDependency.entries(),plugins:this.plugins.values().map(e=>e.toConfig())}))}merge(e,t=[]){let r=["alias","aliasFields","conditionNames","descriptionFiles","extensionAlias","extensions","mainFields","mainFiles","modules","exportsFields","importsFields","restrictions","roots","fallback","byDependency"];return!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"plugin"])}}});var tUi=H((mYu,eUi)=>{var bZc=qvt(),pVr=gke();eUi.exports=class extends bZc{constructor(e){super(e),this.modules=new pVr(this),this.moduleExtensions=new pVr(this),this.packageMains=new pVr(this)}toConfig(){return this.clean({modules:this.modules.values(),moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){let r=["modules","moduleExtensions","packageMains"];return r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r])}}});var nUi=H((_Yu,rUi)=>{var EZc=K6();rUi.exports=class extends EZc{constructor(e){super(e),this.extend(["asyncChunks","auxiliaryComment","charset","chunkFilename","chunkLoadTimeout","chunkLoadingGlobal","chunkLoading","chunkFormat","enabledChunkLoadingTypes","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolModuleFilenameTemplate","devtoolNamespace","filename","assetModuleFilename","globalObject","uniqueName","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateGlobal","hotUpdateMainFilename","library","libraryExport","libraryTarget","importFunctionName","path","pathinfo","publicPath","scriptType","sourceMapFilename","sourcePrefix","strictModuleErrorHandling","strictModuleExceptionHandling","umdNamedDefine","workerChunkLoading","enabledLibraryTypes","environment","compareBeforeEmit","wasmLoading","enabledWasmLoadingTypes","iife","module","clean"])}}});var sUi=H((bYu,iUi)=>{var SZc=K6(),vZc=gke();iUi.exports=class extends SZc{constructor(e){super(e),this.allowedHosts=new vZc(this),this.extend(["after","before","bonjour","clientLogLevel","compress","contentBase","contentBasePublicPath","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","injectClient","injectHot","inline","lazy","liveReload","mimeTypes","noInfo","onListening","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","serveIndex","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","transportMode","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){return!t.includes("allowedHosts")&&"allowedHosts"in e&&this.allowedHosts.merge(e.allowedHosts),super.merge(e,["allowedHosts"])}}});var aUi=H((SYu,oUi)=>{var BZc=AVr(),wZc=K6(),TZc=jvt();oUi.exports=TZc(class extends wZc{constructor(e,t){super(e),this.name=t,this.extend(["loader","options"])}tap(e){return this.options(e(this.get("options"))),this}merge(e,t=[]){return!t.includes("loader")&&"loader"in e&&this.loader(e.loader),!t.includes("options")&&"options"in e&&this.options(BZc(this.store.get("options")||{},e.options)),super.merge(e,[...t,"loader","options"])}toConfig(){let e=this.clean(this.entries()||{});return Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}}),e}})});var gUi=H((BYu,uUi)=>{var $vt=K6(),cUi=gke(),RZc=jvt(),NZc=aUi(),DZc=qvt();function lUi(e){return Array.isArray(e)?e:[e]}var eBt=RZc(class extends $vt{constructor(e,t,r="rule"){super(e),this.ruleName=t,this.names=[],this.ruleType=r,this.ruleTypes=[];let n=this;for(;n instanceof eBt;)this.names.unshift(n.ruleName),this.ruleTypes.unshift(n.ruleType),n=n.parent;this.uses=new $vt(this),this.include=new cUi(this),this.exclude=new cUi(this),this.rules=new $vt(this),this.oneOfs=new $vt(this),this.resolve=new DZc(this),this.resolve.extend(["fullySpecified"]),this.extend(["enforce","issuer","issuerLayer","layer","mimetype","parser","generator","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,()=>new NZc(this,e))}rule(e){return this.rules.getOrCompute(e,()=>new eBt(this,e,"rule"))}oneOf(e){return this.oneOfs.getOrCompute(e,()=>new eBt(this,e,"oneOf"))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){let e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map(t=>t.toConfig()),oneOf:this.oneOfs.values().map(t=>t.toConfig()),use:this.uses.values().map(t=>t.toConfig()),resolve:this.resolve.toConfig()}));return Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}}),e}merge(e,t=[]){return!t.includes("include")&&"include"in e&&this.include.merge(lUi(e.include)),!t.includes("exclude")&&"exclude"in e&&this.exclude.merge(lUi(e.exclude)),!t.includes("use")&&"use"in e&&Object.keys(e.use).forEach(r=>this.use(r).merge(e.use[r])),!t.includes("rules")&&"rules"in e&&Object.keys(e.rules).forEach(r=>this.rule(r).merge(e.rules[r])),!t.includes("oneOf")&&"oneOf"in e&&Object.keys(e.oneOf).forEach(r=>this.oneOf(r).merge(e.oneOf[r])),!t.includes("resolve")&&"resolve"in e&&this.resolve.merge(e.resolve),!t.includes("test")&&"test"in e&&this.test(e.test instanceof RegExp||typeof e.test=="function"?e.test:new RegExp(e.test)),super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});uUi.exports=eBt});var pUi=H((TYu,dUi)=>{var FKe=K6(),AUi=gUi();dUi.exports=class extends FKe{constructor(e){super(e),this.rules=new FKe(this),this.defaultRules=new FKe(this),this.generator=new FKe(this),this.parser=new FKe(this),this.extend(["noParse","unsafeCache","wrappedContextCritical","exprContextRegExp","wrappedContextRecursive","strictExportPresence","wrappedContextRegExp"])}defaultRule(e){return this.defaultRules.getOrCompute(e,()=>new AUi(this,e,"defaultRule"))}rule(e){return this.rules.getOrCompute(e,()=>new AUi(this,e,"rule"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map(e=>e.toConfig()),generator:this.generator.entries(),parser:this.parser.entries(),rules:this.rules.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("rule")&&"rule"in e&&Object.keys(e.rule).forEach(r=>this.rule(r).merge(e.rule[r])),!t.includes("defaultRule")&&"defaultRule"in e&&Object.keys(e.defaultRule).forEach(r=>this.defaultRule(r).merge(e.defaultRule[r])),super.merge(e,["rule","defaultRule"])}}});var hUi=H((NYu,IUi)=>{var fUi=K6(),kZc=Kvt(),xZc=zvt();IUi.exports=class extends fUi{constructor(e){super(e),this.minimizers=new fUi(this),this.splitChunks=new kZc(this),this.extend(["minimize","runtimeChunk","emitOnErrors","moduleIds","chunkIds","nodeEnv","mangleWasmImports","removeAvailableModules","removeEmptyChunks","mergeDuplicateChunks","flagIncludedChunks","providedExports","usedExports","concatenateModules","sideEffects","portableRecords","mangleExports","innerGraph","realContentHash"])}minimizer(e){if(Array.isArray(e))throw new Error("optimization.minimizer() no longer supports being passed an array. Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.");return this.minimizers.getOrCompute(e,()=>new xZc(this,e,"optimization.minimizer"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{splitChunks:this.splitChunks.entries(),minimizer:this.minimizers.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("minimizer")&&"minimizer"in e&&Object.keys(e.minimizer).forEach(r=>this.minimizer(r).merge(e.minimizer[r])),super.merge(e,[...t,"minimizer"])}}});var CUi=H((kYu,mUi)=>{var GZc=Kvt();mUi.exports=class extends GZc{constructor(e){super(e),this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}});var ZKe=H(FP=>{"use strict";Object.defineProperty(FP,"__esModule",{value:!0});FP.stringifyPath=FP.quoteKey=FP.isValidVariableName=FP.IS_VALID_IDENTIFIER=FP.quoteString=void 0;var FZc=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,ZZc=new Map([["\b","\\b"],[" ","\\t"],[` +`,"\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function LZc(e){return ZZc.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function VZc(e){return`'${e.replace(FZc,LZc)}'`}FP.quoteString=VZc;var WZc=new Set("break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "));FP.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function fVr(e){return typeof e=="string"&&!WZc.has(e)&&FP.IS_VALID_IDENTIFIER.test(e)}FP.isValidVariableName=fVr;function OZc(e,t){return fVr(e)?e:t(e)}FP.quoteKey=OZc;function PZc(e,t){let r="";for(let n of e)fVr(n)?r+=`.${n}`:r+=`[${t(n)}]`;return r}FP.stringifyPath=PZc});var IVr=H(k4=>{"use strict";Object.defineProperty(k4,"__esModule",{value:!0});k4.FunctionParser=k4.dedentFunction=k4.functionToString=k4.USED_METHOD_KEY=void 0;var _Ui=ZKe(),MZc={" "(){}}[" "].toString().charAt(0)==='"',HZc={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "},YZc={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"},QZc=new Set("case delete else in instanceof new return throw typeof void , ; : + - ! ~ & | ^ * / % < > ? =".split(" "));k4.USED_METHOD_KEY=new WeakSet;var XZc=(e,t,r,n)=>{let a=typeof n=="string"?n:void 0;return a!==void 0&&k4.USED_METHOD_KEY.add(e),new tBt(e,t,r,a).stringify()};k4.functionToString=XZc;function yUi(e){let t;for(let r of e.split(` `).slice(1)){let n=/^[\s\t]+/.exec(r);if(!n)return e;let[a]=n;(t===void 0||a.length")return this.keyPrefix+this.fnString;this.pos=n;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(QFc)return;let t=this.pos,r=this.fnString.substr(this.pos,this.fn.name.length);if(r===this.fn.name&&(this.pos+=r.length,this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length))return(this.isMethodCandidate||!mUi.isValidVariableName(r))&&(t+=r.length),this.getPrefix()+this.fnString.substr(t);this.pos=t}tryParsePrefixTokens(){let t=this.pos;switch(this.hadKeyword=!1,this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return!1;t=this.pos;case"Function":return this.consumeSyntax()==="function"?this.hadKeyword=!0:this.pos=t,!0;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return!1;case"GeneratorFunction":let r=this.consumeSyntax();return r==="function"&&(r=this.consumeSyntax(),this.hadKeyword=!0),r==="*"}}consumeSyntax(t){let r=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!r)return;let[n,a]=r;if(this.consumeWhitespace(),a)return t||a;switch(n){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return n}consumeSyntaxUntil(t,r){let n=!0;for(;;){let a=this.consumeSyntax();if(a===r)return t+r;if(!a||a===")"||a==="]"||a==="}")return;a==="/"&&n&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)?(n=!1,this.consumeWhitespace()):n=UFc.has(a)}}consumeMatch(t){let r=t.exec(this.fnString.substr(this.pos));return r&&(this.pos+=r[0].length),r}consumeRegExp(t,r){let n=t.exec(this.fnString.substr(this.pos));if(n)return this.pos+=n[0].length,this.consumeWhitespace(),r}consumeTemplate(){for(;;){if(this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/),this.fnString[this.pos]==="`")return this.pos++,this.consumeWhitespace(),"`";if(!(this.fnString.substr(this.pos,2)==="${"&&(this.pos+=2,this.consumeWhitespace(),this.consumeSyntaxUntil("{","}"))))return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}};D4.FunctionParser=tBt});var _Ui=H(rBt=>{"use strict";Object.defineProperty(rBt,"__esModule",{value:!0});rBt.arrayToString=void 0;var jFc=(e,t,r)=>{let n=e.map(function(o,l){let A=r(o,l);return A===void 0?String(A):t+A.split(` +`):e}k4.dedentFunction=yUi;var tBt=class{constructor(t,r,n,a){this.fn=t,this.indent=r,this.next=n,this.key=a,this.pos=0,this.hadKeyword=!1,this.fnString=Function.prototype.toString.call(t),this.fnType=t.constructor.name,this.keyQuote=a===void 0?"":_Ui.quoteKey(a,n),this.keyPrefix=a===void 0?"":`${this.keyQuote}:${r?" ":""}`,this.isMethodCandidate=a===void 0?!1:this.fn.name===""||this.fn.name===a}stringify(){let t=this.tryParse();return t?yUi(t):`${this.keyPrefix}void ${this.next(this.fnString)}`}getPrefix(){return this.isMethodCandidate&&!this.hadKeyword?YZc[this.fnType]+this.keyQuote:this.keyPrefix+HZc[this.fnType]}tryParse(){if(this.fnString[this.fnString.length-1]!=="}")return this.keyPrefix+this.fnString;if(this.fn.name){let r=this.tryStrippingName();if(r)return r}let t=this.pos;if(this.consumeSyntax()==="class")return this.fnString;if(this.pos=t,this.tryParsePrefixTokens()){let r=this.tryStrippingName();if(r)return r;let n=this.pos;switch(this.consumeSyntax("WORD_LIKE")){case"WORD_LIKE":this.isMethodCandidate&&!this.hadKeyword&&(n=this.pos);case"()":if(this.fnString.substr(this.pos,2)==="=>")return this.keyPrefix+this.fnString;this.pos=n;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(MZc)return;let t=this.pos,r=this.fnString.substr(this.pos,this.fn.name.length);if(r===this.fn.name&&(this.pos+=r.length,this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length))return(this.isMethodCandidate||!_Ui.isValidVariableName(r))&&(t+=r.length),this.getPrefix()+this.fnString.substr(t);this.pos=t}tryParsePrefixTokens(){let t=this.pos;switch(this.hadKeyword=!1,this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return!1;t=this.pos;case"Function":return this.consumeSyntax()==="function"?this.hadKeyword=!0:this.pos=t,!0;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return!1;case"GeneratorFunction":let r=this.consumeSyntax();return r==="function"&&(r=this.consumeSyntax(),this.hadKeyword=!0),r==="*"}}consumeSyntax(t){let r=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!r)return;let[n,a]=r;if(this.consumeWhitespace(),a)return t||a;switch(n){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return n}consumeSyntaxUntil(t,r){let n=!0;for(;;){let a=this.consumeSyntax();if(a===r)return t+r;if(!a||a===")"||a==="]"||a==="}")return;a==="/"&&n&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)?(n=!1,this.consumeWhitespace()):n=QZc.has(a)}}consumeMatch(t){let r=t.exec(this.fnString.substr(this.pos));return r&&(this.pos+=r[0].length),r}consumeRegExp(t,r){let n=t.exec(this.fnString.substr(this.pos));if(n)return this.pos+=n[0].length,this.consumeWhitespace(),r}consumeTemplate(){for(;;){if(this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/),this.fnString[this.pos]==="`")return this.pos++,this.consumeWhitespace(),"`";if(!(this.fnString.substr(this.pos,2)==="${"&&(this.pos+=2,this.consumeWhitespace(),this.consumeSyntaxUntil("{","}"))))return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}};k4.FunctionParser=tBt});var bUi=H(rBt=>{"use strict";Object.defineProperty(rBt,"__esModule",{value:!0});rBt.arrayToString=void 0;var JZc=(e,t,r)=>{let n=e.map(function(o,l){let A=r(o,l);return A===void 0?String(A):t+A.split(` `).join(` ${t}`)}).join(t?`, `:","),a=t&&n?` -`:"";return`[${a}${n}${a}]`};rBt.arrayToString=jFc});var yUi=H(nBt=>{"use strict";Object.defineProperty(nBt,"__esModule",{value:!0});nBt.objectToString=void 0;var zFc=LKe(),qFc=uVr(),$Fc=_Ui(),eZc=(e,t,r,n)=>{if(typeof Buffer=="function"&&Buffer.isBuffer(e))return`Buffer.from(${r(e.toString("base64"))}, 'base64')`;if(typeof global=="object"&&e===global)return gVr(e,t,r,n);let a=rZc[Object.prototype.toString.call(e)];return a?a(e,t,r,n):void 0};nBt.objectToString=eZc;var tZc=(e,t,r,n)=>{let a=t?` +`:"";return`[${a}${n}${a}]`};rBt.arrayToString=JZc});var EUi=H(nBt=>{"use strict";Object.defineProperty(nBt,"__esModule",{value:!0});nBt.objectToString=void 0;var UZc=ZKe(),KZc=IVr(),jZc=bUi(),zZc=(e,t,r,n)=>{if(typeof Buffer=="function"&&Buffer.isBuffer(e))return`Buffer.from(${r(e.toString("base64"))}, 'base64')`;if(typeof global=="object"&&e===global)return hVr(e,t,r,n);let a=$Zc[Object.prototype.toString.call(e)];return a?a(e,t,r,n):void 0};nBt.objectToString=zZc;var qZc=(e,t,r,n)=>{let a=t?` `:"",o=t?" ":"",l=Object.keys(e).reduce(function(A,f){let I=e[f],C=r(I,f);if(C===void 0)return A;let b=C.split(` `).join(` -${t}`);return qFc.USED_METHOD_KEY.has(I)?(A.push(`${t}${b}`),A):(A.push(`${t}${zFc.quoteKey(f,r)}:${o}${b}`),A)},[]).join(`,${a}`);return l===""?"{}":`{${a}${l}${a}}`},gVr=(e,t,r)=>`Function(${r("return this")})()`,rZc={"[object Array]":$Fc.arrayToString,"[object Object]":tZc,"[object Error]":(e,t,r)=>`new Error(${r(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,r)=>`new String(${r(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,r)=>`new Set(${r(Array.from(e))})`,"[object Map]":(e,t,r)=>`new Map(${r(Array.from(e))})`,"[object RegExp]":String,"[object global]":gVr,"[object Window]":gVr}});var bUi=H(iBt=>{"use strict";Object.defineProperty(iBt,"__esModule",{value:!0});iBt.toString=void 0;var nZc=LKe(),iZc=yUi(),sZc=uVr(),oZc={string:nZc.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,r)=>{let n=Symbol.keyFor(e);return n!==void 0?`Symbol.for(${r(n)})`:`Symbol(${r(e.description)})`},bigint:(e,t,r)=>`BigInt(${r(String(e))})`,undefined:String,object:iZc.objectToString,function:sZc.functionToString},aZc=(e,t,r,n)=>e===null?"null":oZc[typeof e](e,t,r,n);iBt.toString=aZc});var BUi=H(sBt=>{"use strict";Object.defineProperty(sBt,"__esModule",{value:!0});sBt.stringify=void 0;var EUi=bUi(),SUi=LKe(),vUi=Symbol("root");function cZc(e,t,r,n={}){let a=typeof r=="string"?r:" ".repeat(r||0),o=[],l=new Set,A=new Map,f=new Map,I=0,{maxDepth:C=100,references:b=!1,skipUndefinedProperties:E=!1,maxValues:N=1e5}=n,B=lZc(t),F=(ae,ne)=>{if(++I>N||E&&ae===void 0||o.length>C)return;if(ne===void 0)return B(ae,a,F,ne);o.push(ne);let ce=Q(ae,ne===vUi?void 0:ne);return o.pop(),ce},Q=b?(ae,ne)=>{if(ae!==null&&(typeof ae=="object"||typeof ae=="function"||typeof ae=="symbol")){if(A.has(ae))return f.set(o.slice(1),A.get(ae)),B(void 0,a,F,ne);A.set(ae,o.slice(1))}return B(ae,a,F,ne)}:(ae,ne)=>{if(l.has(ae))return;l.add(ae);let ce=B(ae,a,F,ne);return l.delete(ae),ce},J=F(e,vUi);if(f.size){let ae=a?" ":"",ne=a?` -`:"",ce=`var x${ae}=${ae}${J};${ne}`;for(let[fe,ue]of f.entries()){let de=SUi.stringifyPath(fe,F),be=SUi.stringifyPath(ue,F);ce+=`x${de}${ae}=${ae}x${be};${ne}`}return`(function${ae}()${ae}{${ne}${ce}return x;${ne}}())`}return J}sBt.stringify=cZc;function lZc(e){return e?(t,r,n,a)=>e(t,r,o=>EUi.toString(o,r,n,a),a):EUi.toString}});var wUi=H((BHu,dVr)=>{var AVr=U6(),uZc=Kvt(),gZc=gke(),AZc=qvt(),dZc=$Ji(),pZc=tUi(),fZc=nUi(),IZc=zvt(),hZc=AUi(),mZc=fUi(),CZc=hUi();dVr.exports=class extends AVr{constructor(){super(),this.entryPoints=new AVr(this),this.output=new pZc(this),this.module=new hZc(this),this.resolve=new AZc(this),this.resolveLoader=new dZc(this),this.optimization=new mZc(this),this.plugins=new AVr(this),this.devServer=new fZc(this),this.performance=new CZc(this),this.node=new uZc(this),this.extend(["context","mode","devtool","target","watch","watchOptions","externals","externalsType","externalsPresets","stats","experiments","amd","bail","cache","dependencies","ignoreWarnings","loader","parallelism","profile","recordsPath","recordsInputPath","recordsOutputPath","name","infrastructureLogging","snapshot"])}static toString(e,{verbose:t=!1,configPrefix:r="config"}={}){let{stringify:n}=BUi();return n(e,(a,o,l)=>{if(a&&a.__pluginName){let A=`/* ${r}.${a.__pluginType}('${a.__pluginName}') */ +${t}`);return KZc.USED_METHOD_KEY.has(I)?(A.push(`${t}${b}`),A):(A.push(`${t}${UZc.quoteKey(f,r)}:${o}${b}`),A)},[]).join(`,${a}`);return l===""?"{}":`{${a}${l}${a}}`},hVr=(e,t,r)=>`Function(${r("return this")})()`,$Zc={"[object Array]":jZc.arrayToString,"[object Object]":qZc,"[object Error]":(e,t,r)=>`new Error(${r(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,r)=>`new String(${r(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,r)=>`new Set(${r(Array.from(e))})`,"[object Map]":(e,t,r)=>`new Map(${r(Array.from(e))})`,"[object RegExp]":String,"[object global]":hVr,"[object Window]":hVr}});var SUi=H(iBt=>{"use strict";Object.defineProperty(iBt,"__esModule",{value:!0});iBt.toString=void 0;var eLc=ZKe(),tLc=EUi(),rLc=IVr(),nLc={string:eLc.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,r)=>{let n=Symbol.keyFor(e);return n!==void 0?`Symbol.for(${r(n)})`:`Symbol(${r(e.description)})`},bigint:(e,t,r)=>`BigInt(${r(String(e))})`,undefined:String,object:tLc.objectToString,function:rLc.functionToString},iLc=(e,t,r,n)=>e===null?"null":nLc[typeof e](e,t,r,n);iBt.toString=iLc});var TUi=H(sBt=>{"use strict";Object.defineProperty(sBt,"__esModule",{value:!0});sBt.stringify=void 0;var vUi=SUi(),BUi=ZKe(),wUi=Symbol("root");function sLc(e,t,r,n={}){let a=typeof r=="string"?r:" ".repeat(r||0),o=[],l=new Set,A=new Map,f=new Map,I=0,{maxDepth:C=100,references:b=!1,skipUndefinedProperties:E=!1,maxValues:N=1e5}=n,B=oLc(t),F=(ae,ne)=>{if(++I>N||E&&ae===void 0||o.length>C)return;if(ne===void 0)return B(ae,a,F,ne);o.push(ne);let ce=Q(ae,ne===wUi?void 0:ne);return o.pop(),ce},Q=b?(ae,ne)=>{if(ae!==null&&(typeof ae=="object"||typeof ae=="function"||typeof ae=="symbol")){if(A.has(ae))return f.set(o.slice(1),A.get(ae)),B(void 0,a,F,ne);A.set(ae,o.slice(1))}return B(ae,a,F,ne)}:(ae,ne)=>{if(l.has(ae))return;l.add(ae);let ce=B(ae,a,F,ne);return l.delete(ae),ce},J=F(e,wUi);if(f.size){let ae=a?" ":"",ne=a?` +`:"",ce=`var x${ae}=${ae}${J};${ne}`;for(let[fe,ue]of f.entries()){let de=BUi.stringifyPath(fe,F),be=BUi.stringifyPath(ue,F);ce+=`x${de}${ae}=${ae}x${be};${ne}`}return`(function${ae}()${ae}{${ne}${ce}return x;${ne}}())`}return J}sBt.stringify=sLc;function oLc(e){return e?(t,r,n,a)=>e(t,r,o=>vUi.toString(o,r,n,a),a):vUi.toString}});var RUi=H((OYu,CVr)=>{var mVr=K6(),aLc=Kvt(),cLc=gke(),lLc=qvt(),uLc=tUi(),gLc=nUi(),ALc=sUi(),dLc=zvt(),pLc=pUi(),fLc=hUi(),ILc=CUi();CVr.exports=class extends mVr{constructor(){super(),this.entryPoints=new mVr(this),this.output=new gLc(this),this.module=new pLc(this),this.resolve=new lLc(this),this.resolveLoader=new uLc(this),this.optimization=new fLc(this),this.plugins=new mVr(this),this.devServer=new ALc(this),this.performance=new ILc(this),this.node=new aLc(this),this.extend(["context","mode","devtool","target","watch","watchOptions","externals","externalsType","externalsPresets","stats","experiments","amd","bail","cache","dependencies","ignoreWarnings","loader","parallelism","profile","recordsPath","recordsInputPath","recordsOutputPath","name","infrastructureLogging","snapshot"])}static toString(e,{verbose:t=!1,configPrefix:r="config"}={}){let{stringify:n}=TUi();return n(e,(a,o,l)=>{if(a&&a.__pluginName){let A=`/* ${r}.${a.__pluginType}('${a.__pluginName}') */ `,f=a.__pluginPath?`(require(${l(a.__pluginPath)}))`:a.__pluginConstructorName;if(f){let I=l(a.__pluginArgs).slice(1,-1);return`${A}new ${f}(${I})`}return A+l(a.__pluginArgs&&a.__pluginArgs.length?{args:a.__pluginArgs}:{})}if(a&&a.__ruleNames){let A=a.__ruleTypes;return`/* ${r}.module${a.__ruleNames.map((I,C)=>`.${A?A[C]:"rule"}('${I}')`).join("")}${a.__useName?`.use('${a.__useName}')`:""} */ -`+l(a)}return a&&a.__expression?a.__expression:typeof a=="function"&&!t&&a.toString().length>100?"function () { /* omitted long function */ }":l(a)},2)}entry(e){return this.entryPoints.getOrCompute(e,()=>new gZc(this))}plugin(e){return this.plugins.getOrCompute(e,()=>new IZc(this,e))}toConfig(){let e=this.entryPoints.entries()||{},t=this.entries()||{};return this.clean(Object.assign(t,{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map(r=>r.toConfig()),performance:this.performance.entries(),entry:Object.keys(e).reduce((r,n)=>Object.assign(r,{[n]:e[n].values()}),{})}))}toString(e){return dVr.exports.toString(this.toConfig(),e)}merge(e={},t=[]){let r=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];return!t.includes("entry")&&"entry"in e&&Object.keys(e.entry).forEach(n=>this.entry(n).merge([].concat(e.entry[n]))),!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"entry","plugin"])}}});var d_e=H(lBt=>{"use strict";Object.defineProperty(lBt,"__esModule",{value:!0});lBt.isJsonObject=DZc;lBt.isJsonArray=kZc;function DZc(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function kZc(e){return Array.isArray(e)}});var uBt=H(CVr=>{"use strict";Object.defineProperty(CVr,"__esModule",{value:!0});CVr.getTypesOfSchema=WKe;var OUi=d_e(),PUi=["string","integer","number","object","array","boolean","null"];function WKe(e){if(!e)return new Set;if(e===!0)return new Set(PUi);let t;if(typeof e.type=="string")t=new Set([e.type]);else if(Array.isArray(e.type))t=new Set(e.type);else if((0,OUi.isJsonArray)(e.enum)){t=new Set;for(let r of e.enum)switch(typeof r){case"string":case"number":case"boolean":t.add(typeof r);break;case"object":Array.isArray(r)?t.add("array"):r===null?t.add("null"):t.add("object");break}}else t=new Set(PUi);if((0,OUi.isJsonObject)(e.not)){let r=WKe(e.not);t=new Set([...t].filter(n=>!r.has(n)))}if(Array.isArray(e.allOf))for(let r of e.allOf){let n=WKe(r);t=new Set([...n].filter(a=>t.has(a)))}if(Array.isArray(e.oneOf)){let r=new Set;for(let n of e.oneOf){let a=WKe(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}if(Array.isArray(e.anyOf)){let r=new Set;for(let n of e.anyOf){let a=WKe(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}return e.properties?t.add("object"):e.items&&t.add("array"),t}});var YUi=H(_Vr=>{"use strict";Object.defineProperty(_Vr,"__esModule",{value:!0});_Vr.addUndefinedDefaults=HUi;var ble=d_e(),MUi=uBt();function HUi(e,t,r){if(typeof r=="boolean"||r===void 0)return e;e??=r.default;let n=(0,MUi.getTypesOfSchema)(r);if(n.size===0)return e;let a;if(n.size===1)a=Array.from(n)[0];else if(n.size===2&&n.has("array")&&n.has("object"))a="array";else if(r.properties&&n.has("object"))a="object";else if(r.items&&n.has("array"))a="array";else return e;if(a==="array")return e??[];if(a==="object"){let o;if(e==null)o={};else if((0,ble.isJsonObject)(e))o=e;else return e;if(!(0,ble.isJsonObject)(r.properties))return o;for(let[l,A]of Object.entries(r.properties)){if(l==="$schema"||!(0,ble.isJsonObject)(A))continue;let f=o[l];if(f===void 0)o[l]=A.default;else if((0,ble.isJsonObject)(f)){let I=A.oneOf||A.anyOf,C=Object.keys(f),b=(0,ble.isJsonArray)(I)&&I.find(E=>{if(!(0,ble.isJsonObject)(E))return!1;let N=(0,MUi.getTypesOfSchema)(E);if(N.size===1&&N.has("object")&&(0,ble.isJsonObject)(E.properties)){let B=Object.keys(E.properties);return C.every(F=>B.includes(F))}return!1});b&&(0,ble.isJsonObject)(b)&&(o[l]=HUi(f,t,b))}}return o}return e}});var XUi=H(QUi=>{"use strict";Object.defineProperty(QUi,"__esModule",{value:!0})});var bVr=H(OKe=>{"use strict";Object.defineProperty(OKe,"__esModule",{value:!0});OKe.buildJsonPointer=yVr;OKe.joinJsonPointer=xZc;OKe.parseJsonPointer=GZc;function yVr(e){return"/"+e.map(t=>t.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}function xZc(e,...t){return e=="/"?yVr(t):e+yVr(t)}function GZc(e){if(e==="")return[];if(e.charAt(0)!=="/")throw new Error("Relative pointer: "+e);return e.substring(1).split(/\//).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~"))}});var HKe=H(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});v_.regexpCode=v_.getEsmExportName=v_.getProperty=v_.safeStringify=v_.stringify=v_.strConcat=v_.addCodeArg=v_.str=v_._=v_.nil=v_._Code=v_.Name=v_.IDENTIFIER=v_._CodeOrName=void 0;var PKe=class{};v_._CodeOrName=PKe;v_.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var p_e=class extends PKe{constructor(t){if(super(),!v_.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};v_.Name=p_e;var EH=class extends PKe{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof p_e&&(r[n.str]=(r[n.str]||0)+1),r),{})}};v_._Code=EH;v_.nil=new EH("");function JUi(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(WV,"__esModule",{value:!0});WV.ValueScope=WV.ValueScopeName=WV.Scope=WV.varKinds=WV.UsedValueState=void 0;var VV=HKe(),vVr=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},gBt;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(gBt||(WV.UsedValueState=gBt={}));WV.varKinds={const:new VV.Name("const"),let:new VV.Name("let"),var:new VV.Name("var")};var ABt=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof VV.Name?t:this.name(t)}name(t){return new VV.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};WV.Scope=ABt;var dBt=class extends VV.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,VV._)`.${new VV.Name(r)}[${n}]`}};WV.ValueScopeName=dBt;var HZc=(0,VV._)`\n`,BVr=class extends ABt{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?HZc:VV.nil}}get(){return this._scope}name(t){return new dBt(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let a=this.toName(t),{prefix:o}=a,l=(n=r.key)!==null&&n!==void 0?n:r.ref,A=this._values[o];if(A){let C=A.get(l);if(C)return C}else A=this._values[o]=new Map;A.set(l,a);let f=this._scope[o]||(this._scope[o]=[]),I=f.length;return f[I]=r.ref,a.setValue(r,{property:o,itemIndex:I}),a}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,VV._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,a=>{if(a.value===void 0)throw new Error(`CodeGen: name "${a}" has no value`);return a.value.code},r,n)}_reduceValues(t,r,n={},a){let o=VV.nil;for(let l in t){let A=t[l];if(!A)continue;let f=n[l]=n[l]||new Map;A.forEach(I=>{if(f.has(I))return;f.set(I,gBt.Started);let C=r(I);if(C){let b=this.opts.es5?WV.varKinds.var:WV.varKinds.const;o=(0,VV._)`${o}${b} ${I} = ${C};${this.opts._n}`}else if(C=a?.(I))o=(0,VV._)`${o}${C}${this.opts._n}`;else throw new vVr(I);f.set(I,gBt.Completed)})}return o}};WV.ValueScope=BVr});var Jh=H(um=>{"use strict";Object.defineProperty(um,"__esModule",{value:!0});um.or=um.and=um.not=um.CodeGen=um.operators=um.varKinds=um.ValueScopeName=um.ValueScope=um.Scope=um.Name=um.regexpCode=um.stringify=um.getProperty=um.nil=um.strConcat=um.str=um._=void 0;var RC=HKe(),k4=wVr(),Ele=HKe();Object.defineProperty(um,"_",{enumerable:!0,get:function(){return Ele._}});Object.defineProperty(um,"str",{enumerable:!0,get:function(){return Ele.str}});Object.defineProperty(um,"strConcat",{enumerable:!0,get:function(){return Ele.strConcat}});Object.defineProperty(um,"nil",{enumerable:!0,get:function(){return Ele.nil}});Object.defineProperty(um,"getProperty",{enumerable:!0,get:function(){return Ele.getProperty}});Object.defineProperty(um,"stringify",{enumerable:!0,get:function(){return Ele.stringify}});Object.defineProperty(um,"regexpCode",{enumerable:!0,get:function(){return Ele.regexpCode}});Object.defineProperty(um,"Name",{enumerable:!0,get:function(){return Ele.Name}});var hBt=wVr();Object.defineProperty(um,"Scope",{enumerable:!0,get:function(){return hBt.Scope}});Object.defineProperty(um,"ValueScope",{enumerable:!0,get:function(){return hBt.ValueScope}});Object.defineProperty(um,"ValueScopeName",{enumerable:!0,get:function(){return hBt.ValueScopeName}});Object.defineProperty(um,"varKinds",{enumerable:!0,get:function(){return hBt.varKinds}});um.operators={GT:new RC._Code(">"),GTE:new RC._Code(">="),LT:new RC._Code("<"),LTE:new RC._Code("<="),EQ:new RC._Code("==="),NEQ:new RC._Code("!=="),NOT:new RC._Code("!"),OR:new RC._Code("||"),AND:new RC._Code("&&"),ADD:new RC._Code("+")};var lte=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},TVr=class extends lte{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?k4.varKinds.var:this.varKind,a=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${a};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=pke(this.rhs,t,r)),this}get names(){return this.rhs instanceof RC._CodeOrName?this.rhs.names:{}}},pBt=class extends lte{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof RC.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=pke(this.rhs,t,r),this}get names(){let t=this.lhs instanceof RC.Name?{}:{...this.lhs.names};return IBt(t,this.rhs)}},RVr=class extends pBt{constructor(t,r,n,a){super(t,n,a),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},NVr=class extends lte{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},DVr=class extends lte{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},kVr=class extends lte{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},xVr=class extends lte{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=pke(this.code,t,r),this}get names(){return this.code instanceof RC._CodeOrName?this.code.names:{}}},YKe=class extends lte{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,a=n.length;for(;a--;){let o=n[a];o.optimizeNames(t,r)||(YZc(t,o.names),n.splice(a,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>h_e(t,r.names),{})}},ute=class extends YKe{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},GVr=class extends YKe{},dke=class extends ute{};dke.kind="else";var f_e=class e extends ute{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new dke(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(KUi(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=pke(this.condition,t,r),this}get names(){let t=super.names;return IBt(t,this.condition),this.else&&h_e(t,this.else.names),t}};f_e.kind="if";var I_e=class extends ute{};I_e.kind="for";var FVr=class extends I_e{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=pke(this.iteration,t,r),this}get names(){return h_e(super.names,this.iteration.names)}},ZVr=class extends I_e{constructor(t,r,n,a){super(),this.varKind=t,this.name=r,this.from=n,this.to=a}render(t){let r=t.es5?k4.varKinds.var:this.varKind,{name:n,from:a,to:o}=this;return`for(${r} ${n}=${a}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=IBt(super.names,this.from);return IBt(t,this.to)}},fBt=class extends I_e{constructor(t,r,n,a){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=a}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=pke(this.iterable,t,r),this}get names(){return h_e(super.names,this.iterable.names)}},QKe=class extends ute{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};QKe.kind="func";var XKe=class extends YKe{render(t){return"return "+super.render(t)}};XKe.kind="return";var LVr=class extends ute{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,a;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(a=this.finally)===null||a===void 0||a.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&h_e(t,this.catch.names),this.finally&&h_e(t,this.finally.names),t}},JKe=class extends ute{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};JKe.kind="catch";var UKe=class extends ute{render(t){return"finally"+super.render(t)}};UKe.kind="finally";var VVr=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new k4.Scope({parent:t}),this._nodes=[new GVr]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,a){let o=this._scope.toName(r);return n!==void 0&&a&&(this._constants[o.str]=n),this._leafNode(new TVr(t,o,n)),o}const(t,r,n){return this._def(k4.varKinds.const,t,r,n)}let(t,r,n){return this._def(k4.varKinds.let,t,r,n)}var(t,r,n){return this._def(k4.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new pBt(t,r,n))}add(t,r){return this._leafNode(new RVr(t,um.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==RC.nil&&this._leafNode(new xVr(t)),this}object(...t){let r=["{"];for(let[n,a]of t)r.length>1&&r.push(","),r.push(n),(n!==a||this.opts.es5)&&(r.push(":"),(0,RC.addCodeArg)(r,a));return r.push("}"),new RC._Code(r)}if(t,r,n){if(this._blockNode(new f_e(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new f_e(t))}else(){return this._elseNode(new dke)}endIf(){return this._endBlockNode(f_e,dke)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new FVr(t),r)}forRange(t,r,n,a,o=this.opts.es5?k4.varKinds.var:k4.varKinds.let){let l=this._scope.toName(t);return this._for(new ZVr(o,l,r,n),()=>a(l))}forOf(t,r,n,a=k4.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let l=r instanceof RC.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,RC._)`${l}.length`,A=>{this.var(o,(0,RC._)`${l}[${A}]`),n(o)})}return this._for(new fBt("of",a,o,r),()=>n(o))}forIn(t,r,n,a=this.opts.es5?k4.varKinds.var:k4.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,RC._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new fBt("in",a,o,r),()=>n(o))}endFor(){return this._endBlockNode(I_e)}label(t){return this._leafNode(new NVr(t))}break(t){return this._leafNode(new DVr(t))}return(t){let r=new XKe;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(XKe)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let a=new LVr;if(this._blockNode(a),this.code(t),r){let o=this.name("e");this._currNode=a.catch=new JKe(o),r(o)}return n&&(this._currNode=a.finally=new UKe,this.code(n)),this._endBlockNode(JKe,UKe)}throw(t){return this._leafNode(new kVr(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=RC.nil,n,a){return this._blockNode(new QKe(t,r,n)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode(QKe)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof f_e))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};um.CodeGen=VVr;function h_e(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function IBt(e,t){return t instanceof RC._CodeOrName?h_e(e,t.names):e}function pke(e,t,r){if(e instanceof RC.Name)return n(e);if(!a(e))return e;return new RC._Code(e._items.reduce((o,l)=>(l instanceof RC.Name&&(l=n(l)),l instanceof RC._Code?o.push(...l._items):o.push(l),o),[]));function n(o){let l=r[o.str];return l===void 0||t[o.str]!==1?o:(delete t[o.str],l)}function a(o){return o instanceof RC._Code&&o._items.some(l=>l instanceof RC.Name&&t[l.str]===1&&r[l.str]!==void 0)}}function YZc(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function KUi(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,RC._)`!${WVr(e)}`}um.not=KUi;var QZc=jUi(um.operators.AND);function XZc(...e){return e.reduce(QZc)}um.and=XZc;var JZc=jUi(um.operators.OR);function UZc(...e){return e.reduce(JZc)}um.or=UZc;function jUi(e){return(t,r)=>t===RC.nil?r:r===RC.nil?t:(0,RC._)`${WVr(t)} ${e} ${WVr(r)}`}function WVr(e){return e instanceof RC.Name?e:(0,RC._)`(${e})`}});var B_=H(Nm=>{"use strict";Object.defineProperty(Nm,"__esModule",{value:!0});Nm.checkStrictMode=Nm.getErrorPath=Nm.Type=Nm.useFunc=Nm.setEvaluated=Nm.evaluatedPropsToName=Nm.mergeEvaluated=Nm.eachItem=Nm.unescapeJsonPointer=Nm.escapeJsonPointer=Nm.escapeFragment=Nm.unescapeFragment=Nm.schemaRefOrVal=Nm.schemaHasRulesButRef=Nm.schemaHasRules=Nm.checkUnknownRules=Nm.alwaysValidSchema=Nm.toHash=void 0;var eE=Jh(),KZc=HKe();function jZc(e){let t={};for(let r of e)t[r]=!0;return t}Nm.toHash=jZc;function zZc(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:($Ui(e,t),!eKi(t,e.self.RULES.all))}Nm.alwaysValidSchema=zZc;function $Ui(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let a=n.RULES.keywords;for(let o in t)a[o]||nKi(e,`unknown keyword: "${o}"`)}Nm.checkUnknownRules=$Ui;function eKi(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Nm.schemaHasRules=eKi;function qZc(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Nm.schemaHasRulesButRef=qZc;function $Zc({topSchemaRef:e,schemaPath:t},r,n,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,eE._)`${r}`}return(0,eE._)`${e}${t}${(0,eE.getProperty)(n)}`}Nm.schemaRefOrVal=$Zc;function eLc(e){return tKi(decodeURIComponent(e))}Nm.unescapeFragment=eLc;function tLc(e){return encodeURIComponent(PVr(e))}Nm.escapeFragment=tLc;function PVr(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Nm.escapeJsonPointer=PVr;function tKi(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Nm.unescapeJsonPointer=tKi;function rLc(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Nm.eachItem=rLc;function zUi({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(a,o,l,A)=>{let f=l===void 0?o:l instanceof eE.Name?(o instanceof eE.Name?e(a,o,l):t(a,o,l),l):o instanceof eE.Name?(t(a,l,o),o):r(o,l);return A===eE.Name&&!(f instanceof eE.Name)?n(a,f):f}}Nm.mergeEvaluated={props:zUi({mergeNames:(e,t,r)=>e.if((0,eE._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,eE._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,eE._)`${r} || {}`).code((0,eE._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,eE._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,eE._)`${r} || {}`),MVr(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:rKi}),items:zUi({mergeNames:(e,t,r)=>e.if((0,eE._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,eE._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,eE._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,eE._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function rKi(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,eE._)`{}`);return t!==void 0&&MVr(e,r,t),r}Nm.evaluatedPropsToName=rKi;function MVr(e,t,r){Object.keys(r).forEach(n=>e.assign((0,eE._)`${t}${(0,eE.getProperty)(n)}`,!0))}Nm.setEvaluated=MVr;var qUi={};function nLc(e,t){return e.scopeValue("func",{ref:t,code:qUi[t.code]||(qUi[t.code]=new KZc._Code(t.code))})}Nm.useFunc=nLc;var OVr;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(OVr||(Nm.Type=OVr={}));function iLc(e,t,r){if(e instanceof eE.Name){let n=t===OVr.Num;return r?n?(0,eE._)`"[" + ${e} + "]"`:(0,eE._)`"['" + ${e} + "']"`:n?(0,eE._)`"/" + ${e}`:(0,eE._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,eE.getProperty)(e).toString():"/"+PVr(e)}Nm.getErrorPath=iLc;function nKi(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Nm.checkStrictMode=nKi});var gte=H(HVr=>{"use strict";Object.defineProperty(HVr,"__esModule",{value:!0});var UG=Jh(),sLc={data:new UG.Name("data"),valCxt:new UG.Name("valCxt"),instancePath:new UG.Name("instancePath"),parentData:new UG.Name("parentData"),parentDataProperty:new UG.Name("parentDataProperty"),rootData:new UG.Name("rootData"),dynamicAnchors:new UG.Name("dynamicAnchors"),vErrors:new UG.Name("vErrors"),errors:new UG.Name("errors"),this:new UG.Name("this"),self:new UG.Name("self"),scope:new UG.Name("scope"),json:new UG.Name("json"),jsonPos:new UG.Name("jsonPos"),jsonLen:new UG.Name("jsonLen"),jsonPart:new UG.Name("jsonPart")};HVr.default=sLc});var KKe=H(KG=>{"use strict";Object.defineProperty(KG,"__esModule",{value:!0});KG.extendErrors=KG.resetErrorsCount=KG.reportExtraError=KG.reportError=KG.keyword$DataError=KG.keywordError=void 0;var r_=Jh(),mBt=B_(),aL=gte();KG.keywordError={message:({keyword:e})=>(0,r_.str)`must pass "${e}" keyword validation`};KG.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,r_.str)`"${e}" keyword must be ${t} ($data)`:(0,r_.str)`"${e}" keyword is invalid ($data)`};function oLc(e,t=KG.keywordError,r,n){let{it:a}=e,{gen:o,compositeRule:l,allErrors:A}=a,f=oKi(e,t,r);n??(l||A)?iKi(o,f):sKi(a,(0,r_._)`[${f}]`)}KG.reportError=oLc;function aLc(e,t=KG.keywordError,r){let{it:n}=e,{gen:a,compositeRule:o,allErrors:l}=n,A=oKi(e,t,r);iKi(a,A),o||l||sKi(n,aL.default.vErrors)}KG.reportExtraError=aLc;function cLc(e,t){e.assign(aL.default.errors,t),e.if((0,r_._)`${aL.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,r_._)`${aL.default.vErrors}.length`,t),()=>e.assign(aL.default.vErrors,null)))}KG.resetErrorsCount=cLc;function lLc({gen:e,keyword:t,schemaValue:r,data:n,errsCount:a,it:o}){if(a===void 0)throw new Error("ajv implementation error");let l=e.name("err");e.forRange("i",a,aL.default.errors,A=>{e.const(l,(0,r_._)`${aL.default.vErrors}[${A}]`),e.if((0,r_._)`${l}.instancePath === undefined`,()=>e.assign((0,r_._)`${l}.instancePath`,(0,r_.strConcat)(aL.default.instancePath,o.errorPath))),e.assign((0,r_._)`${l}.schemaPath`,(0,r_.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,r_._)`${l}.schema`,r),e.assign((0,r_._)`${l}.data`,n))})}KG.extendErrors=lLc;function iKi(e,t){let r=e.const("err",t);e.if((0,r_._)`${aL.default.vErrors} === null`,()=>e.assign(aL.default.vErrors,(0,r_._)`[${r}]`),(0,r_._)`${aL.default.vErrors}.push(${r})`),e.code((0,r_._)`${aL.default.errors}++`)}function sKi(e,t){let{gen:r,validateName:n,schemaEnv:a}=e;a.$async?r.throw((0,r_._)`new ${e.ValidationError}(${t})`):(r.assign((0,r_._)`${n}.errors`,t),r.return(!1))}var m_e={keyword:new r_.Name("keyword"),schemaPath:new r_.Name("schemaPath"),params:new r_.Name("params"),propertyName:new r_.Name("propertyName"),message:new r_.Name("message"),schema:new r_.Name("schema"),parentSchema:new r_.Name("parentSchema")};function oKi(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,r_._)`{}`:uLc(e,t,r)}function uLc(e,t,r={}){let{gen:n,it:a}=e,o=[gLc(a,r),ALc(e,r)];return dLc(e,t,o),n.object(...o)}function gLc({errorPath:e},{instancePath:t}){let r=t?(0,r_.str)`${e}${(0,mBt.getErrorPath)(t,mBt.Type.Str)}`:e;return[aL.default.instancePath,(0,r_.strConcat)(aL.default.instancePath,r)]}function ALc({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let a=n?t:(0,r_.str)`${t}/${e}`;return r&&(a=(0,r_.str)`${a}${(0,mBt.getErrorPath)(r,mBt.Type.Str)}`),[m_e.schemaPath,a]}function dLc(e,{params:t,message:r},n){let{keyword:a,data:o,schemaValue:l,it:A}=e,{opts:f,propertyName:I,topSchemaRef:C,schemaPath:b}=A;n.push([m_e.keyword,a],[m_e.params,typeof t=="function"?t(e):t||(0,r_._)`{}`]),f.messages&&n.push([m_e.message,typeof r=="function"?r(e):r]),f.verbose&&n.push([m_e.schema,l],[m_e.parentSchema,(0,r_._)`${C}${b}`],[aL.default.data,o]),I&&n.push([m_e.propertyName,I])}});var cKi=H(fke=>{"use strict";Object.defineProperty(fke,"__esModule",{value:!0});fke.boolOrEmptySchema=fke.topBoolOrEmptySchema=void 0;var pLc=KKe(),fLc=Jh(),ILc=gte(),hLc={message:"boolean schema is false"};function mLc(e){let{gen:t,schema:r,validateName:n}=e;r===!1?aKi(e,!1):typeof r=="object"&&r.$async===!0?t.return(ILc.default.data):(t.assign((0,fLc._)`${n}.errors`,null),t.return(!0))}fke.topBoolOrEmptySchema=mLc;function CLc(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),aKi(e)):r.var(t,!0)}fke.boolOrEmptySchema=CLc;function aKi(e,t){let{gen:r,data:n}=e,a={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,pLc.reportError)(a,hLc,void 0,t)}});var YVr=H(Ike=>{"use strict";Object.defineProperty(Ike,"__esModule",{value:!0});Ike.getRules=Ike.isJSONType=void 0;var _Lc=["string","number","integer","boolean","null","object","array"],yLc=new Set(_Lc);function bLc(e){return typeof e=="string"&&yLc.has(e)}Ike.isJSONType=bLc;function ELc(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Ike.getRules=ELc});var QVr=H(Sle=>{"use strict";Object.defineProperty(Sle,"__esModule",{value:!0});Sle.shouldUseRule=Sle.shouldUseGroup=Sle.schemaHasRulesForType=void 0;function SLc({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&lKi(e,n)}Sle.schemaHasRulesForType=SLc;function lKi(e,t){return t.rules.some(r=>uKi(e,r))}Sle.shouldUseGroup=lKi;function uKi(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}Sle.shouldUseRule=uKi});var jKe=H(jG=>{"use strict";Object.defineProperty(jG,"__esModule",{value:!0});jG.reportTypeError=jG.checkDataTypes=jG.checkDataType=jG.coerceAndCheckDataType=jG.getJSONTypes=jG.getSchemaTypes=jG.DataType=void 0;var vLc=YVr(),BLc=QVr(),wLc=KKe(),Nh=Jh(),gKi=B_(),hke;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(hke||(jG.DataType=hke={}));function TLc(e){let t=AKi(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}jG.getSchemaTypes=TLc;function AKi(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(vLc.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}jG.getJSONTypes=AKi;function RLc(e,t){let{gen:r,data:n,opts:a}=e,o=NLc(t,a.coerceTypes),l=t.length>0&&!(o.length===0&&t.length===1&&(0,BLc.schemaHasRulesForType)(e,t[0]));if(l){let A=JVr(t,n,a.strictNumbers,hke.Wrong);r.if(A,()=>{o.length?DLc(e,t,o):UVr(e)})}return l}jG.coerceAndCheckDataType=RLc;var dKi=new Set(["string","number","integer","boolean","null"]);function NLc(e,t){return t?e.filter(r=>dKi.has(r)||t==="array"&&r==="array"):[]}function DLc(e,t,r){let{gen:n,data:a,opts:o}=e,l=n.let("dataType",(0,Nh._)`typeof ${a}`),A=n.let("coerced",(0,Nh._)`undefined`);o.coerceTypes==="array"&&n.if((0,Nh._)`${l} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>n.assign(a,(0,Nh._)`${a}[0]`).assign(l,(0,Nh._)`typeof ${a}`).if(JVr(t,a,o.strictNumbers),()=>n.assign(A,a))),n.if((0,Nh._)`${A} !== undefined`);for(let I of r)(dKi.has(I)||I==="array"&&o.coerceTypes==="array")&&f(I);n.else(),UVr(e),n.endIf(),n.if((0,Nh._)`${A} !== undefined`,()=>{n.assign(a,A),kLc(e,A)});function f(I){switch(I){case"string":n.elseIf((0,Nh._)`${l} == "number" || ${l} == "boolean"`).assign(A,(0,Nh._)`"" + ${a}`).elseIf((0,Nh._)`${a} === null`).assign(A,(0,Nh._)`""`);return;case"number":n.elseIf((0,Nh._)`${l} == "boolean" || ${a} === null +`+l(a)}return a&&a.__expression?a.__expression:typeof a=="function"&&!t&&a.toString().length>100?"function () { /* omitted long function */ }":l(a)},2)}entry(e){return this.entryPoints.getOrCompute(e,()=>new cLc(this))}plugin(e){return this.plugins.getOrCompute(e,()=>new dLc(this,e))}toConfig(){let e=this.entryPoints.entries()||{},t=this.entries()||{};return this.clean(Object.assign(t,{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map(r=>r.toConfig()),performance:this.performance.entries(),entry:Object.keys(e).reduce((r,n)=>Object.assign(r,{[n]:e[n].values()}),{})}))}toString(e){return CVr.exports.toString(this.toConfig(),e)}merge(e={},t=[]){let r=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];return!t.includes("entry")&&"entry"in e&&Object.keys(e.entry).forEach(n=>this.entry(n).merge([].concat(e.entry[n]))),!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"entry","plugin"])}}});var d_e=H(lBt=>{"use strict";Object.defineProperty(lBt,"__esModule",{value:!0});lBt.isJsonObject=TLc;lBt.isJsonArray=RLc;function TLc(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function RLc(e){return Array.isArray(e)}});var uBt=H(vVr=>{"use strict";Object.defineProperty(vVr,"__esModule",{value:!0});vVr.getTypesOfSchema=VKe;var PUi=d_e(),MUi=["string","integer","number","object","array","boolean","null"];function VKe(e){if(!e)return new Set;if(e===!0)return new Set(MUi);let t;if(typeof e.type=="string")t=new Set([e.type]);else if(Array.isArray(e.type))t=new Set(e.type);else if((0,PUi.isJsonArray)(e.enum)){t=new Set;for(let r of e.enum)switch(typeof r){case"string":case"number":case"boolean":t.add(typeof r);break;case"object":Array.isArray(r)?t.add("array"):r===null?t.add("null"):t.add("object");break}}else t=new Set(MUi);if((0,PUi.isJsonObject)(e.not)){let r=VKe(e.not);t=new Set([...t].filter(n=>!r.has(n)))}if(Array.isArray(e.allOf))for(let r of e.allOf){let n=VKe(r);t=new Set([...n].filter(a=>t.has(a)))}if(Array.isArray(e.oneOf)){let r=new Set;for(let n of e.oneOf){let a=VKe(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}if(Array.isArray(e.anyOf)){let r=new Set;for(let n of e.anyOf){let a=VKe(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}return e.properties?t.add("object"):e.items&&t.add("array"),t}});var QUi=H(BVr=>{"use strict";Object.defineProperty(BVr,"__esModule",{value:!0});BVr.addUndefinedDefaults=YUi;var Ele=d_e(),HUi=uBt();function YUi(e,t,r){if(typeof r=="boolean"||r===void 0)return e;e??=r.default;let n=(0,HUi.getTypesOfSchema)(r);if(n.size===0)return e;let a;if(n.size===1)a=Array.from(n)[0];else if(n.size===2&&n.has("array")&&n.has("object"))a="array";else if(r.properties&&n.has("object"))a="object";else if(r.items&&n.has("array"))a="array";else return e;if(a==="array")return e??[];if(a==="object"){let o;if(e==null)o={};else if((0,Ele.isJsonObject)(e))o=e;else return e;if(!(0,Ele.isJsonObject)(r.properties))return o;for(let[l,A]of Object.entries(r.properties)){if(l==="$schema"||!(0,Ele.isJsonObject)(A))continue;let f=o[l];if(f===void 0)o[l]=A.default;else if((0,Ele.isJsonObject)(f)){let I=A.oneOf||A.anyOf,C=Object.keys(f),b=(0,Ele.isJsonArray)(I)&&I.find(E=>{if(!(0,Ele.isJsonObject)(E))return!1;let N=(0,HUi.getTypesOfSchema)(E);if(N.size===1&&N.has("object")&&(0,Ele.isJsonObject)(E.properties)){let B=Object.keys(E.properties);return C.every(F=>B.includes(F))}return!1});b&&(0,Ele.isJsonObject)(b)&&(o[l]=YUi(f,t,b))}}return o}return e}});var JUi=H(XUi=>{"use strict";Object.defineProperty(XUi,"__esModule",{value:!0})});var TVr=H(WKe=>{"use strict";Object.defineProperty(WKe,"__esModule",{value:!0});WKe.buildJsonPointer=wVr;WKe.joinJsonPointer=NLc;WKe.parseJsonPointer=DLc;function wVr(e){return"/"+e.map(t=>t.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}function NLc(e,...t){return e=="/"?wVr(t):e+wVr(t)}function DLc(e){if(e==="")return[];if(e.charAt(0)!=="/")throw new Error("Relative pointer: "+e);return e.substring(1).split(/\//).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~"))}});var MKe=H(B_=>{"use strict";Object.defineProperty(B_,"__esModule",{value:!0});B_.regexpCode=B_.getEsmExportName=B_.getProperty=B_.safeStringify=B_.stringify=B_.strConcat=B_.addCodeArg=B_.str=B_._=B_.nil=B_._Code=B_.Name=B_.IDENTIFIER=B_._CodeOrName=void 0;var OKe=class{};B_._CodeOrName=OKe;B_.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var p_e=class extends OKe{constructor(t){if(super(),!B_.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};B_.Name=p_e;var SH=class extends OKe{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof p_e&&(r[n.str]=(r[n.str]||0)+1),r),{})}};B_._Code=SH;B_.nil=new SH("");function UUi(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(OV,"__esModule",{value:!0});OV.ValueScope=OV.ValueScopeName=OV.Scope=OV.varKinds=OV.UsedValueState=void 0;var WV=MKe(),DVr=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},gBt;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(gBt||(OV.UsedValueState=gBt={}));OV.varKinds={const:new WV.Name("const"),let:new WV.Name("let"),var:new WV.Name("var")};var ABt=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof WV.Name?t:this.name(t)}name(t){return new WV.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};OV.Scope=ABt;var dBt=class extends WV.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,WV._)`.${new WV.Name(r)}[${n}]`}};OV.ValueScopeName=dBt;var OLc=(0,WV._)`\n`,kVr=class extends ABt{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?OLc:WV.nil}}get(){return this._scope}name(t){return new dBt(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let a=this.toName(t),{prefix:o}=a,l=(n=r.key)!==null&&n!==void 0?n:r.ref,A=this._values[o];if(A){let C=A.get(l);if(C)return C}else A=this._values[o]=new Map;A.set(l,a);let f=this._scope[o]||(this._scope[o]=[]),I=f.length;return f[I]=r.ref,a.setValue(r,{property:o,itemIndex:I}),a}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,WV._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,a=>{if(a.value===void 0)throw new Error(`CodeGen: name "${a}" has no value`);return a.value.code},r,n)}_reduceValues(t,r,n={},a){let o=WV.nil;for(let l in t){let A=t[l];if(!A)continue;let f=n[l]=n[l]||new Map;A.forEach(I=>{if(f.has(I))return;f.set(I,gBt.Started);let C=r(I);if(C){let b=this.opts.es5?OV.varKinds.var:OV.varKinds.const;o=(0,WV._)`${o}${b} ${I} = ${C};${this.opts._n}`}else if(C=a?.(I))o=(0,WV._)`${o}${C}${this.opts._n}`;else throw new DVr(I);f.set(I,gBt.Completed)})}return o}};OV.ValueScope=kVr});var Jh=H(um=>{"use strict";Object.defineProperty(um,"__esModule",{value:!0});um.or=um.and=um.not=um.CodeGen=um.operators=um.varKinds=um.ValueScopeName=um.ValueScope=um.Scope=um.Name=um.regexpCode=um.stringify=um.getProperty=um.nil=um.strConcat=um.str=um._=void 0;var NC=MKe(),x4=xVr(),Sle=MKe();Object.defineProperty(um,"_",{enumerable:!0,get:function(){return Sle._}});Object.defineProperty(um,"str",{enumerable:!0,get:function(){return Sle.str}});Object.defineProperty(um,"strConcat",{enumerable:!0,get:function(){return Sle.strConcat}});Object.defineProperty(um,"nil",{enumerable:!0,get:function(){return Sle.nil}});Object.defineProperty(um,"getProperty",{enumerable:!0,get:function(){return Sle.getProperty}});Object.defineProperty(um,"stringify",{enumerable:!0,get:function(){return Sle.stringify}});Object.defineProperty(um,"regexpCode",{enumerable:!0,get:function(){return Sle.regexpCode}});Object.defineProperty(um,"Name",{enumerable:!0,get:function(){return Sle.Name}});var hBt=xVr();Object.defineProperty(um,"Scope",{enumerable:!0,get:function(){return hBt.Scope}});Object.defineProperty(um,"ValueScope",{enumerable:!0,get:function(){return hBt.ValueScope}});Object.defineProperty(um,"ValueScopeName",{enumerable:!0,get:function(){return hBt.ValueScopeName}});Object.defineProperty(um,"varKinds",{enumerable:!0,get:function(){return hBt.varKinds}});um.operators={GT:new NC._Code(">"),GTE:new NC._Code(">="),LT:new NC._Code("<"),LTE:new NC._Code("<="),EQ:new NC._Code("==="),NEQ:new NC._Code("!=="),NOT:new NC._Code("!"),OR:new NC._Code("||"),AND:new NC._Code("&&"),ADD:new NC._Code("+")};var ute=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},GVr=class extends ute{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?x4.varKinds.var:this.varKind,a=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${a};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=pke(this.rhs,t,r)),this}get names(){return this.rhs instanceof NC._CodeOrName?this.rhs.names:{}}},pBt=class extends ute{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof NC.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=pke(this.rhs,t,r),this}get names(){let t=this.lhs instanceof NC.Name?{}:{...this.lhs.names};return IBt(t,this.rhs)}},FVr=class extends pBt{constructor(t,r,n,a){super(t,n,a),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},ZVr=class extends ute{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},LVr=class extends ute{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},VVr=class extends ute{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},WVr=class extends ute{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=pke(this.code,t,r),this}get names(){return this.code instanceof NC._CodeOrName?this.code.names:{}}},HKe=class extends ute{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,a=n.length;for(;a--;){let o=n[a];o.optimizeNames(t,r)||(PLc(t,o.names),n.splice(a,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>h_e(t,r.names),{})}},gte=class extends HKe{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},OVr=class extends HKe{},dke=class extends gte{};dke.kind="else";var f_e=class e extends gte{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new dke(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(jUi(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=pke(this.condition,t,r),this}get names(){let t=super.names;return IBt(t,this.condition),this.else&&h_e(t,this.else.names),t}};f_e.kind="if";var I_e=class extends gte{};I_e.kind="for";var PVr=class extends I_e{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=pke(this.iteration,t,r),this}get names(){return h_e(super.names,this.iteration.names)}},MVr=class extends I_e{constructor(t,r,n,a){super(),this.varKind=t,this.name=r,this.from=n,this.to=a}render(t){let r=t.es5?x4.varKinds.var:this.varKind,{name:n,from:a,to:o}=this;return`for(${r} ${n}=${a}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=IBt(super.names,this.from);return IBt(t,this.to)}},fBt=class extends I_e{constructor(t,r,n,a){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=a}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=pke(this.iterable,t,r),this}get names(){return h_e(super.names,this.iterable.names)}},YKe=class extends gte{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};YKe.kind="func";var QKe=class extends HKe{render(t){return"return "+super.render(t)}};QKe.kind="return";var HVr=class extends gte{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,a;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(a=this.finally)===null||a===void 0||a.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&h_e(t,this.catch.names),this.finally&&h_e(t,this.finally.names),t}},XKe=class extends gte{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};XKe.kind="catch";var JKe=class extends gte{render(t){return"finally"+super.render(t)}};JKe.kind="finally";var YVr=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=t,this._scope=new x4.Scope({parent:t}),this._nodes=[new OVr]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,a){let o=this._scope.toName(r);return n!==void 0&&a&&(this._constants[o.str]=n),this._leafNode(new GVr(t,o,n)),o}const(t,r,n){return this._def(x4.varKinds.const,t,r,n)}let(t,r,n){return this._def(x4.varKinds.let,t,r,n)}var(t,r,n){return this._def(x4.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new pBt(t,r,n))}add(t,r){return this._leafNode(new FVr(t,um.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==NC.nil&&this._leafNode(new WVr(t)),this}object(...t){let r=["{"];for(let[n,a]of t)r.length>1&&r.push(","),r.push(n),(n!==a||this.opts.es5)&&(r.push(":"),(0,NC.addCodeArg)(r,a));return r.push("}"),new NC._Code(r)}if(t,r,n){if(this._blockNode(new f_e(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new f_e(t))}else(){return this._elseNode(new dke)}endIf(){return this._endBlockNode(f_e,dke)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new PVr(t),r)}forRange(t,r,n,a,o=this.opts.es5?x4.varKinds.var:x4.varKinds.let){let l=this._scope.toName(t);return this._for(new MVr(o,l,r,n),()=>a(l))}forOf(t,r,n,a=x4.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let l=r instanceof NC.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,NC._)`${l}.length`,A=>{this.var(o,(0,NC._)`${l}[${A}]`),n(o)})}return this._for(new fBt("of",a,o,r),()=>n(o))}forIn(t,r,n,a=this.opts.es5?x4.varKinds.var:x4.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,NC._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new fBt("in",a,o,r),()=>n(o))}endFor(){return this._endBlockNode(I_e)}label(t){return this._leafNode(new ZVr(t))}break(t){return this._leafNode(new LVr(t))}return(t){let r=new QKe;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(QKe)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let a=new HVr;if(this._blockNode(a),this.code(t),r){let o=this.name("e");this._currNode=a.catch=new XKe(o),r(o)}return n&&(this._currNode=a.finally=new JKe,this.code(n)),this._endBlockNode(XKe,JKe)}throw(t){return this._leafNode(new VVr(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=NC.nil,n,a){return this._blockNode(new YKe(t,r,n)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode(YKe)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof f_e))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};um.CodeGen=YVr;function h_e(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function IBt(e,t){return t instanceof NC._CodeOrName?h_e(e,t.names):e}function pke(e,t,r){if(e instanceof NC.Name)return n(e);if(!a(e))return e;return new NC._Code(e._items.reduce((o,l)=>(l instanceof NC.Name&&(l=n(l)),l instanceof NC._Code?o.push(...l._items):o.push(l),o),[]));function n(o){let l=r[o.str];return l===void 0||t[o.str]!==1?o:(delete t[o.str],l)}function a(o){return o instanceof NC._Code&&o._items.some(l=>l instanceof NC.Name&&t[l.str]===1&&r[l.str]!==void 0)}}function PLc(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function jUi(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,NC._)`!${QVr(e)}`}um.not=jUi;var MLc=zUi(um.operators.AND);function HLc(...e){return e.reduce(MLc)}um.and=HLc;var YLc=zUi(um.operators.OR);function QLc(...e){return e.reduce(YLc)}um.or=QLc;function zUi(e){return(t,r)=>t===NC.nil?r:r===NC.nil?t:(0,NC._)`${QVr(t)} ${e} ${QVr(r)}`}function QVr(e){return e instanceof NC.Name?e:(0,NC._)`(${e})`}});var w_=H(Nm=>{"use strict";Object.defineProperty(Nm,"__esModule",{value:!0});Nm.checkStrictMode=Nm.getErrorPath=Nm.Type=Nm.useFunc=Nm.setEvaluated=Nm.evaluatedPropsToName=Nm.mergeEvaluated=Nm.eachItem=Nm.unescapeJsonPointer=Nm.escapeJsonPointer=Nm.escapeFragment=Nm.unescapeFragment=Nm.schemaRefOrVal=Nm.schemaHasRulesButRef=Nm.schemaHasRules=Nm.checkUnknownRules=Nm.alwaysValidSchema=Nm.toHash=void 0;var tE=Jh(),XLc=MKe();function JLc(e){let t={};for(let r of e)t[r]=!0;return t}Nm.toHash=JLc;function ULc(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(eKi(e,t),!tKi(t,e.self.RULES.all))}Nm.alwaysValidSchema=ULc;function eKi(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let a=n.RULES.keywords;for(let o in t)a[o]||iKi(e,`unknown keyword: "${o}"`)}Nm.checkUnknownRules=eKi;function tKi(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Nm.schemaHasRules=tKi;function KLc(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Nm.schemaHasRulesButRef=KLc;function jLc({topSchemaRef:e,schemaPath:t},r,n,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,tE._)`${r}`}return(0,tE._)`${e}${t}${(0,tE.getProperty)(n)}`}Nm.schemaRefOrVal=jLc;function zLc(e){return rKi(decodeURIComponent(e))}Nm.unescapeFragment=zLc;function qLc(e){return encodeURIComponent(JVr(e))}Nm.escapeFragment=qLc;function JVr(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Nm.escapeJsonPointer=JVr;function rKi(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Nm.unescapeJsonPointer=rKi;function $Lc(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Nm.eachItem=$Lc;function qUi({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(a,o,l,A)=>{let f=l===void 0?o:l instanceof tE.Name?(o instanceof tE.Name?e(a,o,l):t(a,o,l),l):o instanceof tE.Name?(t(a,l,o),o):r(o,l);return A===tE.Name&&!(f instanceof tE.Name)?n(a,f):f}}Nm.mergeEvaluated={props:qUi({mergeNames:(e,t,r)=>e.if((0,tE._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,tE._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,tE._)`${r} || {}`).code((0,tE._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,tE._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,tE._)`${r} || {}`),UVr(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:nKi}),items:qUi({mergeNames:(e,t,r)=>e.if((0,tE._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,tE._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,tE._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,tE._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function nKi(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,tE._)`{}`);return t!==void 0&&UVr(e,r,t),r}Nm.evaluatedPropsToName=nKi;function UVr(e,t,r){Object.keys(r).forEach(n=>e.assign((0,tE._)`${t}${(0,tE.getProperty)(n)}`,!0))}Nm.setEvaluated=UVr;var $Ui={};function e9c(e,t){return e.scopeValue("func",{ref:t,code:$Ui[t.code]||($Ui[t.code]=new XLc._Code(t.code))})}Nm.useFunc=e9c;var XVr;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(XVr||(Nm.Type=XVr={}));function t9c(e,t,r){if(e instanceof tE.Name){let n=t===XVr.Num;return r?n?(0,tE._)`"[" + ${e} + "]"`:(0,tE._)`"['" + ${e} + "']"`:n?(0,tE._)`"/" + ${e}`:(0,tE._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,tE.getProperty)(e).toString():"/"+JVr(e)}Nm.getErrorPath=t9c;function iKi(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Nm.checkStrictMode=iKi});var Ate=H(KVr=>{"use strict";Object.defineProperty(KVr,"__esModule",{value:!0});var KG=Jh(),r9c={data:new KG.Name("data"),valCxt:new KG.Name("valCxt"),instancePath:new KG.Name("instancePath"),parentData:new KG.Name("parentData"),parentDataProperty:new KG.Name("parentDataProperty"),rootData:new KG.Name("rootData"),dynamicAnchors:new KG.Name("dynamicAnchors"),vErrors:new KG.Name("vErrors"),errors:new KG.Name("errors"),this:new KG.Name("this"),self:new KG.Name("self"),scope:new KG.Name("scope"),json:new KG.Name("json"),jsonPos:new KG.Name("jsonPos"),jsonLen:new KG.Name("jsonLen"),jsonPart:new KG.Name("jsonPart")};KVr.default=r9c});var UKe=H(jG=>{"use strict";Object.defineProperty(jG,"__esModule",{value:!0});jG.extendErrors=jG.resetErrorsCount=jG.reportExtraError=jG.reportError=jG.keyword$DataError=jG.keywordError=void 0;var n_=Jh(),mBt=w_(),cL=Ate();jG.keywordError={message:({keyword:e})=>(0,n_.str)`must pass "${e}" keyword validation`};jG.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,n_.str)`"${e}" keyword must be ${t} ($data)`:(0,n_.str)`"${e}" keyword is invalid ($data)`};function n9c(e,t=jG.keywordError,r,n){let{it:a}=e,{gen:o,compositeRule:l,allErrors:A}=a,f=aKi(e,t,r);n??(l||A)?sKi(o,f):oKi(a,(0,n_._)`[${f}]`)}jG.reportError=n9c;function i9c(e,t=jG.keywordError,r){let{it:n}=e,{gen:a,compositeRule:o,allErrors:l}=n,A=aKi(e,t,r);sKi(a,A),o||l||oKi(n,cL.default.vErrors)}jG.reportExtraError=i9c;function s9c(e,t){e.assign(cL.default.errors,t),e.if((0,n_._)`${cL.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,n_._)`${cL.default.vErrors}.length`,t),()=>e.assign(cL.default.vErrors,null)))}jG.resetErrorsCount=s9c;function o9c({gen:e,keyword:t,schemaValue:r,data:n,errsCount:a,it:o}){if(a===void 0)throw new Error("ajv implementation error");let l=e.name("err");e.forRange("i",a,cL.default.errors,A=>{e.const(l,(0,n_._)`${cL.default.vErrors}[${A}]`),e.if((0,n_._)`${l}.instancePath === undefined`,()=>e.assign((0,n_._)`${l}.instancePath`,(0,n_.strConcat)(cL.default.instancePath,o.errorPath))),e.assign((0,n_._)`${l}.schemaPath`,(0,n_.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,n_._)`${l}.schema`,r),e.assign((0,n_._)`${l}.data`,n))})}jG.extendErrors=o9c;function sKi(e,t){let r=e.const("err",t);e.if((0,n_._)`${cL.default.vErrors} === null`,()=>e.assign(cL.default.vErrors,(0,n_._)`[${r}]`),(0,n_._)`${cL.default.vErrors}.push(${r})`),e.code((0,n_._)`${cL.default.errors}++`)}function oKi(e,t){let{gen:r,validateName:n,schemaEnv:a}=e;a.$async?r.throw((0,n_._)`new ${e.ValidationError}(${t})`):(r.assign((0,n_._)`${n}.errors`,t),r.return(!1))}var m_e={keyword:new n_.Name("keyword"),schemaPath:new n_.Name("schemaPath"),params:new n_.Name("params"),propertyName:new n_.Name("propertyName"),message:new n_.Name("message"),schema:new n_.Name("schema"),parentSchema:new n_.Name("parentSchema")};function aKi(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,n_._)`{}`:a9c(e,t,r)}function a9c(e,t,r={}){let{gen:n,it:a}=e,o=[c9c(a,r),l9c(e,r)];return u9c(e,t,o),n.object(...o)}function c9c({errorPath:e},{instancePath:t}){let r=t?(0,n_.str)`${e}${(0,mBt.getErrorPath)(t,mBt.Type.Str)}`:e;return[cL.default.instancePath,(0,n_.strConcat)(cL.default.instancePath,r)]}function l9c({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let a=n?t:(0,n_.str)`${t}/${e}`;return r&&(a=(0,n_.str)`${a}${(0,mBt.getErrorPath)(r,mBt.Type.Str)}`),[m_e.schemaPath,a]}function u9c(e,{params:t,message:r},n){let{keyword:a,data:o,schemaValue:l,it:A}=e,{opts:f,propertyName:I,topSchemaRef:C,schemaPath:b}=A;n.push([m_e.keyword,a],[m_e.params,typeof t=="function"?t(e):t||(0,n_._)`{}`]),f.messages&&n.push([m_e.message,typeof r=="function"?r(e):r]),f.verbose&&n.push([m_e.schema,l],[m_e.parentSchema,(0,n_._)`${C}${b}`],[cL.default.data,o]),I&&n.push([m_e.propertyName,I])}});var lKi=H(fke=>{"use strict";Object.defineProperty(fke,"__esModule",{value:!0});fke.boolOrEmptySchema=fke.topBoolOrEmptySchema=void 0;var g9c=UKe(),A9c=Jh(),d9c=Ate(),p9c={message:"boolean schema is false"};function f9c(e){let{gen:t,schema:r,validateName:n}=e;r===!1?cKi(e,!1):typeof r=="object"&&r.$async===!0?t.return(d9c.default.data):(t.assign((0,A9c._)`${n}.errors`,null),t.return(!0))}fke.topBoolOrEmptySchema=f9c;function I9c(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),cKi(e)):r.var(t,!0)}fke.boolOrEmptySchema=I9c;function cKi(e,t){let{gen:r,data:n}=e,a={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,g9c.reportError)(a,p9c,void 0,t)}});var jVr=H(Ike=>{"use strict";Object.defineProperty(Ike,"__esModule",{value:!0});Ike.getRules=Ike.isJSONType=void 0;var h9c=["string","number","integer","boolean","null","object","array"],m9c=new Set(h9c);function C9c(e){return typeof e=="string"&&m9c.has(e)}Ike.isJSONType=C9c;function _9c(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Ike.getRules=_9c});var zVr=H(vle=>{"use strict";Object.defineProperty(vle,"__esModule",{value:!0});vle.shouldUseRule=vle.shouldUseGroup=vle.schemaHasRulesForType=void 0;function y9c({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&uKi(e,n)}vle.schemaHasRulesForType=y9c;function uKi(e,t){return t.rules.some(r=>gKi(e,r))}vle.shouldUseGroup=uKi;function gKi(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}vle.shouldUseRule=gKi});var KKe=H(zG=>{"use strict";Object.defineProperty(zG,"__esModule",{value:!0});zG.reportTypeError=zG.checkDataTypes=zG.checkDataType=zG.coerceAndCheckDataType=zG.getJSONTypes=zG.getSchemaTypes=zG.DataType=void 0;var b9c=jVr(),E9c=zVr(),S9c=UKe(),Nh=Jh(),AKi=w_(),hke;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(hke||(zG.DataType=hke={}));function v9c(e){let t=dKi(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}zG.getSchemaTypes=v9c;function dKi(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(b9c.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}zG.getJSONTypes=dKi;function B9c(e,t){let{gen:r,data:n,opts:a}=e,o=w9c(t,a.coerceTypes),l=t.length>0&&!(o.length===0&&t.length===1&&(0,E9c.schemaHasRulesForType)(e,t[0]));if(l){let A=$Vr(t,n,a.strictNumbers,hke.Wrong);r.if(A,()=>{o.length?T9c(e,t,o):eWr(e)})}return l}zG.coerceAndCheckDataType=B9c;var pKi=new Set(["string","number","integer","boolean","null"]);function w9c(e,t){return t?e.filter(r=>pKi.has(r)||t==="array"&&r==="array"):[]}function T9c(e,t,r){let{gen:n,data:a,opts:o}=e,l=n.let("dataType",(0,Nh._)`typeof ${a}`),A=n.let("coerced",(0,Nh._)`undefined`);o.coerceTypes==="array"&&n.if((0,Nh._)`${l} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>n.assign(a,(0,Nh._)`${a}[0]`).assign(l,(0,Nh._)`typeof ${a}`).if($Vr(t,a,o.strictNumbers),()=>n.assign(A,a))),n.if((0,Nh._)`${A} !== undefined`);for(let I of r)(pKi.has(I)||I==="array"&&o.coerceTypes==="array")&&f(I);n.else(),eWr(e),n.endIf(),n.if((0,Nh._)`${A} !== undefined`,()=>{n.assign(a,A),R9c(e,A)});function f(I){switch(I){case"string":n.elseIf((0,Nh._)`${l} == "number" || ${l} == "boolean"`).assign(A,(0,Nh._)`"" + ${a}`).elseIf((0,Nh._)`${a} === null`).assign(A,(0,Nh._)`""`);return;case"number":n.elseIf((0,Nh._)`${l} == "boolean" || ${a} === null || (${l} == "string" && ${a} && ${a} == +${a})`).assign(A,(0,Nh._)`+${a}`);return;case"integer":n.elseIf((0,Nh._)`${l} === "boolean" || ${a} === null || (${l} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(A,(0,Nh._)`+${a}`);return;case"boolean":n.elseIf((0,Nh._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(A,!1).elseIf((0,Nh._)`${a} === "true" || ${a} === 1`).assign(A,!0);return;case"null":n.elseIf((0,Nh._)`${a} === "" || ${a} === 0 || ${a} === false`),n.assign(A,null);return;case"array":n.elseIf((0,Nh._)`${l} === "string" || ${l} === "number" - || ${l} === "boolean" || ${a} === null`).assign(A,(0,Nh._)`[${a}]`)}}}function kLc({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Nh._)`${t} !== undefined`,()=>e.assign((0,Nh._)`${t}[${r}]`,n))}function XVr(e,t,r,n=hke.Correct){let a=n===hke.Correct?Nh.operators.EQ:Nh.operators.NEQ,o;switch(e){case"null":return(0,Nh._)`${t} ${a} null`;case"array":o=(0,Nh._)`Array.isArray(${t})`;break;case"object":o=(0,Nh._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=l((0,Nh._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=l();break;default:return(0,Nh._)`typeof ${t} ${a} ${e}`}return n===hke.Correct?o:(0,Nh.not)(o);function l(A=Nh.nil){return(0,Nh.and)((0,Nh._)`typeof ${t} == "number"`,A,r?(0,Nh._)`isFinite(${t})`:Nh.nil)}}jG.checkDataType=XVr;function JVr(e,t,r,n){if(e.length===1)return XVr(e[0],t,r,n);let a,o=(0,gKi.toHash)(e);if(o.array&&o.object){let l=(0,Nh._)`typeof ${t} != "object"`;a=o.null?l:(0,Nh._)`!${t} || ${l}`,delete o.null,delete o.array,delete o.object}else a=Nh.nil;o.number&&delete o.integer;for(let l in o)a=(0,Nh.and)(a,XVr(l,t,r,n));return a}jG.checkDataTypes=JVr;var xLc={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Nh._)`{type: ${e}}`:(0,Nh._)`{type: ${t}}`};function UVr(e){let t=GLc(e);(0,wLc.reportError)(t,xLc)}jG.reportTypeError=UVr;function GLc(e){let{gen:t,data:r,schema:n}=e,a=(0,gKi.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:a,schemaValue:a,parentSchema:n,params:{},it:e}}});var fKi=H(CBt=>{"use strict";Object.defineProperty(CBt,"__esModule",{value:!0});CBt.assignDefaults=void 0;var mke=Jh(),FLc=B_();function ZLc(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let a in r)pKi(e,a,r[a].default);else t==="array"&&Array.isArray(n)&&n.forEach((a,o)=>pKi(e,o,a.default))}CBt.assignDefaults=ZLc;function pKi(e,t,r){let{gen:n,compositeRule:a,data:o,opts:l}=e;if(r===void 0)return;let A=(0,mke._)`${o}${(0,mke.getProperty)(t)}`;if(a){(0,FLc.checkStrictMode)(e,`default is ignored for: ${A}`);return}let f=(0,mke._)`${A} === undefined`;l.useDefaults==="empty"&&(f=(0,mke._)`${f} || ${A} === null || ${A} === ""`),n.if(f,(0,mke._)`${A} = ${(0,mke.stringify)(r)}`)}});var SH=H(gb=>{"use strict";Object.defineProperty(gb,"__esModule",{value:!0});gb.validateUnion=gb.validateArray=gb.usePattern=gb.callValidateCode=gb.schemaProperties=gb.allSchemaProperties=gb.noPropertyInData=gb.propertyInData=gb.isOwnProperty=gb.hasPropFunc=gb.reportMissingProp=gb.checkMissingProp=gb.checkReportMissingProp=void 0;var U1=Jh(),KVr=B_(),vle=gte(),LLc=B_();function VLc(e,t){let{gen:r,data:n,it:a}=e;r.if(zVr(r,n,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,U1._)`${t}`},!0),e.error()})}gb.checkReportMissingProp=VLc;function WLc({gen:e,data:t,it:{opts:r}},n,a){return(0,U1.or)(...n.map(o=>(0,U1.and)(zVr(e,t,o,r.ownProperties),(0,U1._)`${a} = ${o}`)))}gb.checkMissingProp=WLc;function OLc(e,t){e.setParams({missingProperty:t},!0),e.error()}gb.reportMissingProp=OLc;function IKi(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,U1._)`Object.prototype.hasOwnProperty`})}gb.hasPropFunc=IKi;function jVr(e,t,r){return(0,U1._)`${IKi(e)}.call(${t}, ${r})`}gb.isOwnProperty=jVr;function PLc(e,t,r,n){let a=(0,U1._)`${t}${(0,U1.getProperty)(r)} !== undefined`;return n?(0,U1._)`${a} && ${jVr(e,t,r)}`:a}gb.propertyInData=PLc;function zVr(e,t,r,n){let a=(0,U1._)`${t}${(0,U1.getProperty)(r)} === undefined`;return n?(0,U1.or)(a,(0,U1.not)(jVr(e,t,r))):a}gb.noPropertyInData=zVr;function hKi(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}gb.allSchemaProperties=hKi;function MLc(e,t){return hKi(t).filter(r=>!(0,KVr.alwaysValidSchema)(e,t[r]))}gb.schemaProperties=MLc;function HLc({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:a,errorPath:o},it:l},A,f,I){let C=I?(0,U1._)`${e}, ${t}, ${n}${a}`:t,b=[[vle.default.instancePath,(0,U1.strConcat)(vle.default.instancePath,o)],[vle.default.parentData,l.parentData],[vle.default.parentDataProperty,l.parentDataProperty],[vle.default.rootData,vle.default.rootData]];l.opts.dynamicRef&&b.push([vle.default.dynamicAnchors,vle.default.dynamicAnchors]);let E=(0,U1._)`${C}, ${r.object(...b)}`;return f!==U1.nil?(0,U1._)`${A}.call(${f}, ${E})`:(0,U1._)`${A}(${E})`}gb.callValidateCode=HLc;var YLc=(0,U1._)`new RegExp`;function QLc({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,U1._)`${a.code==="new RegExp"?YLc:(0,LLc.useFunc)(e,a)}(${r}, ${n})`})}gb.usePattern=QLc;function XLc(e){let{gen:t,data:r,keyword:n,it:a}=e,o=t.name("valid");if(a.allErrors){let A=t.let("valid",!0);return l(()=>t.assign(A,!1)),A}return t.var(o,!0),l(()=>t.break()),o;function l(A){let f=t.const("len",(0,U1._)`${r}.length`);t.forRange("i",0,f,I=>{e.subschema({keyword:n,dataProp:I,dataPropType:KVr.Type.Num},o),t.if((0,U1.not)(o),A)})}}gb.validateArray=XLc;function JLc(e){let{gen:t,schema:r,keyword:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(f=>(0,KVr.alwaysValidSchema)(a,f))&&!a.opts.unevaluated)return;let l=t.let("valid",!1),A=t.name("_valid");t.block(()=>r.forEach((f,I)=>{let C=e.subschema({keyword:n,schemaProp:I,compositeRule:!0},A);t.assign(l,(0,U1._)`${l} || ${A}`),e.mergeValidEvaluated(C,A)||t.if((0,U1.not)(l))})),e.result(l,()=>e.reset(),()=>e.error(!0))}gb.validateUnion=JLc});var _Ki=H(K6=>{"use strict";Object.defineProperty(K6,"__esModule",{value:!0});K6.validateKeywordUsage=K6.validSchemaType=K6.funcKeywordCode=K6.macroKeywordCode=void 0;var cL=Jh(),C_e=gte(),ULc=SH(),KLc=KKe();function jLc(e,t){let{gen:r,keyword:n,schema:a,parentSchema:o,it:l}=e,A=t.macro.call(l.self,a,o,l),f=CKi(r,n,A);l.opts.validateSchema!==!1&&l.self.validateSchema(A,!0);let I=r.name("valid");e.subschema({schema:A,schemaPath:cL.nil,errSchemaPath:`${l.errSchemaPath}/${n}`,topSchemaRef:f,compositeRule:!0},I),e.pass(I,()=>e.error(!0))}K6.macroKeywordCode=jLc;function zLc(e,t){var r;let{gen:n,keyword:a,schema:o,parentSchema:l,$data:A,it:f}=e;$Lc(f,t);let I=!A&&t.compile?t.compile.call(f.self,o,l,f):t.validate,C=CKi(n,a,I),b=n.let("valid");e.block$data(b,E),e.ok((r=t.valid)!==null&&r!==void 0?r:b);function E(){if(t.errors===!1)F(),t.modifying&&mKi(e),Q(()=>e.error());else{let J=t.async?N():B();t.modifying&&mKi(e),Q(()=>qLc(e,J))}}function N(){let J=n.let("ruleErrs",null);return n.try(()=>F((0,cL._)`await `),ae=>n.assign(b,!1).if((0,cL._)`${ae} instanceof ${f.ValidationError}`,()=>n.assign(J,(0,cL._)`${ae}.errors`),()=>n.throw(ae))),J}function B(){let J=(0,cL._)`${C}.errors`;return n.assign(J,null),F(cL.nil),J}function F(J=t.async?(0,cL._)`await `:cL.nil){let ae=f.opts.passContext?C_e.default.this:C_e.default.self,ne=!("compile"in t&&!A||t.schema===!1);n.assign(b,(0,cL._)`${J}${(0,ULc.callValidateCode)(e,C,ae,ne)}`,t.modifying)}function Q(J){var ae;n.if((0,cL.not)((ae=t.valid)!==null&&ae!==void 0?ae:b),J)}}K6.funcKeywordCode=zLc;function mKi(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,cL._)`${n.parentData}[${n.parentDataProperty}]`))}function qLc(e,t){let{gen:r}=e;r.if((0,cL._)`Array.isArray(${t})`,()=>{r.assign(C_e.default.vErrors,(0,cL._)`${C_e.default.vErrors} === null ? ${t} : ${C_e.default.vErrors}.concat(${t})`).assign(C_e.default.errors,(0,cL._)`${C_e.default.vErrors}.length`),(0,KLc.extendErrors)(e)},()=>e.error())}function $Lc({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function CKi(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,cL.stringify)(r)})}function e9c(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}K6.validSchemaType=e9c;function t9c({schema:e,opts:t,self:r,errSchemaPath:n},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");let l=a.dependencies;if(l?.some(A=>!Object.prototype.hasOwnProperty.call(e,A)))throw new Error(`parent schema must have dependencies of ${o}: ${l.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[o])){let f=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(f);else throw new Error(f)}}K6.validateKeywordUsage=t9c});var bKi=H(Ble=>{"use strict";Object.defineProperty(Ble,"__esModule",{value:!0});Ble.extendSubschemaMode=Ble.extendSubschemaData=Ble.getSubschema=void 0;var j6=Jh(),yKi=B_();function r9c(e,{keyword:t,schemaProp:r,schema:n,schemaPath:a,errSchemaPath:o,topSchemaRef:l}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let A=e.schema[t];return r===void 0?{schema:A,schemaPath:(0,j6._)`${e.schemaPath}${(0,j6.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:A[r],schemaPath:(0,j6._)`${e.schemaPath}${(0,j6.getProperty)(t)}${(0,j6.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,yKi.escapeFragment)(r)}`}}if(n!==void 0){if(a===void 0||o===void 0||l===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:a,topSchemaRef:l,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}Ble.getSubschema=r9c;function n9c(e,t,{dataProp:r,dataPropType:n,data:a,dataTypes:o,propertyName:l}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:A}=t;if(r!==void 0){let{errorPath:I,dataPathArr:C,opts:b}=t,E=A.let("data",(0,j6._)`${t.data}${(0,j6.getProperty)(r)}`,!0);f(E),e.errorPath=(0,j6.str)`${I}${(0,yKi.getErrorPath)(r,n,b.jsPropertySyntax)}`,e.parentDataProperty=(0,j6._)`${r}`,e.dataPathArr=[...C,e.parentDataProperty]}if(a!==void 0){let I=a instanceof j6.Name?a:A.let("data",a,!0);f(I),l!==void 0&&(e.propertyName=l)}o&&(e.dataTypes=o);function f(I){e.data=I,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,I]}}Ble.extendSubschemaData=n9c;function i9c(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:a,allErrors:o}){n!==void 0&&(e.compositeRule=n),a!==void 0&&(e.createErrors=a),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}Ble.extendSubschemaMode=i9c});var qVr=H((DYu,EKi)=>{"use strict";EKi.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,a,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(a=n;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(a=n;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[a]))return!1;for(a=n;a--!==0;){var l=o[a];if(!e(t[l],r[l]))return!1}return!0}return t!==t&&r!==r}});var vKi=H((kYu,SKi)=>{"use strict";var wle=SKi.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};_Bt(t,n,a,e,"",e)};wle.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};wle.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};wle.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};wle.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function _Bt(e,t,r,n,a,o,l,A,f,I){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,a,o,l,A,f,I);for(var C in n){var b=n[C];if(Array.isArray(b)){if(C in wle.arrayKeywords)for(var E=0;E{"use strict";Object.defineProperty(OV,"__esModule",{value:!0});OV.getSchemaRefs=OV.resolveUrl=OV.normalizeId=OV._getFullPath=OV.getFullPath=OV.inlineRef=void 0;var o9c=B_(),a9c=qVr(),c9c=vKi(),l9c=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function u9c(e,t=!0){return typeof e=="boolean"?!0:t===!0?!$Vr(e):t?BKi(e)<=t:!1}OV.inlineRef=u9c;var g9c=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function $Vr(e){for(let t in e){if(g9c.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some($Vr)||typeof r=="object"&&$Vr(r))return!0}return!1}function BKi(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!l9c.has(r)&&(typeof e[r]=="object"&&(0,o9c.eachItem)(e[r],n=>t+=BKi(n)),t===1/0))return 1/0}return t}function wKi(e,t="",r){r!==!1&&(t=Cke(t));let n=e.parse(t);return TKi(e,n)}OV.getFullPath=wKi;function TKi(e,t){return e.serialize(t).split("#")[0]+"#"}OV._getFullPath=TKi;var A9c=/#\/?$/;function Cke(e){return e?e.replace(A9c,""):""}OV.normalizeId=Cke;function d9c(e,t,r){return r=Cke(r),e.resolve(t,r)}OV.resolveUrl=d9c;var p9c=/^[a-z_][-a-z0-9._]*$/i;function f9c(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,a=Cke(e[r]||t),o={"":a},l=wKi(n,a,!1),A={},f=new Set;return c9c(e,{allKeys:!0},(b,E,N,B)=>{if(B===void 0)return;let F=l+E,Q=o[B];typeof b[r]=="string"&&(Q=J.call(this,b[r])),ae.call(this,b.$anchor),ae.call(this,b.$dynamicAnchor),o[E]=Q;function J(ne){let ce=this.opts.uriResolver.resolve;if(ne=Cke(Q?ce(Q,ne):ne),f.has(ne))throw C(ne);f.add(ne);let fe=this.refs[ne];return typeof fe=="string"&&(fe=this.refs[fe]),typeof fe=="object"?I(b,fe.schema,ne):ne!==Cke(F)&&(ne[0]==="#"?(I(b,A[ne],ne),A[ne]=b):this.refs[ne]=F),ne}function ae(ne){if(typeof ne=="string"){if(!p9c.test(ne))throw new Error(`invalid anchor "${ne}"`);J.call(this,`#${ne}`)}}}),A;function I(b,E,N){if(E!==void 0&&!a9c(b,E))throw C(N)}function C(b){return new Error(`reference "${b}" resolves to more than one schema`)}}OV.getSchemaRefs=f9c});var e8e=H(Tle=>{"use strict";Object.defineProperty(Tle,"__esModule",{value:!0});Tle.getData=Tle.KeywordCxt=Tle.validateFunctionCode=void 0;var xKi=cKi(),RKi=jKe(),tWr=QVr(),yBt=jKe(),I9c=fKi(),$Ke=_Ki(),eWr=bKi(),Vd=Jh(),uI=gte(),h9c=zKe(),Ate=B_(),qKe=KKe();function m9c(e){if(ZKi(e)&&(LKi(e),FKi(e))){y9c(e);return}GKi(e,()=>(0,xKi.topBoolOrEmptySchema)(e))}Tle.validateFunctionCode=m9c;function GKi({gen:e,validateName:t,schema:r,schemaEnv:n,opts:a},o){a.code.es5?e.func(t,(0,Vd._)`${uI.default.data}, ${uI.default.valCxt}`,n.$async,()=>{e.code((0,Vd._)`"use strict"; ${NKi(r,a)}`),_9c(e,a),e.code(o)}):e.func(t,(0,Vd._)`${uI.default.data}, ${C9c(a)}`,n.$async,()=>e.code(NKi(r,a)).code(o))}function C9c(e){return(0,Vd._)`{${uI.default.instancePath}="", ${uI.default.parentData}, ${uI.default.parentDataProperty}, ${uI.default.rootData}=${uI.default.data}${e.dynamicRef?(0,Vd._)`, ${uI.default.dynamicAnchors}={}`:Vd.nil}}={}`}function _9c(e,t){e.if(uI.default.valCxt,()=>{e.var(uI.default.instancePath,(0,Vd._)`${uI.default.valCxt}.${uI.default.instancePath}`),e.var(uI.default.parentData,(0,Vd._)`${uI.default.valCxt}.${uI.default.parentData}`),e.var(uI.default.parentDataProperty,(0,Vd._)`${uI.default.valCxt}.${uI.default.parentDataProperty}`),e.var(uI.default.rootData,(0,Vd._)`${uI.default.valCxt}.${uI.default.rootData}`),t.dynamicRef&&e.var(uI.default.dynamicAnchors,(0,Vd._)`${uI.default.valCxt}.${uI.default.dynamicAnchors}`)},()=>{e.var(uI.default.instancePath,(0,Vd._)`""`),e.var(uI.default.parentData,(0,Vd._)`undefined`),e.var(uI.default.parentDataProperty,(0,Vd._)`undefined`),e.var(uI.default.rootData,uI.default.data),t.dynamicRef&&e.var(uI.default.dynamicAnchors,(0,Vd._)`{}`)})}function y9c(e){let{schema:t,opts:r,gen:n}=e;GKi(e,()=>{r.$comment&&t.$comment&&WKi(e),B9c(e),n.let(uI.default.vErrors,null),n.let(uI.default.errors,0),r.unevaluated&&b9c(e),VKi(e),R9c(e)})}function b9c(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Vd._)`${r}.evaluated`),t.if((0,Vd._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Vd._)`${e.evaluated}.props`,(0,Vd._)`undefined`)),t.if((0,Vd._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Vd._)`${e.evaluated}.items`,(0,Vd._)`undefined`))}function NKi(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Vd._)`/*# sourceURL=${r} */`:Vd.nil}function E9c(e,t){if(ZKi(e)&&(LKi(e),FKi(e))){S9c(e,t);return}(0,xKi.boolOrEmptySchema)(e,t)}function FKi({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function ZKi(e){return typeof e.schema!="boolean"}function S9c(e,t){let{schema:r,gen:n,opts:a}=e;a.$comment&&r.$comment&&WKi(e),w9c(e),T9c(e);let o=n.const("_errs",uI.default.errors);VKi(e,o),n.var(t,(0,Vd._)`${o} === ${uI.default.errors}`)}function LKi(e){(0,Ate.checkUnknownRules)(e),v9c(e)}function VKi(e,t){if(e.opts.jtd)return DKi(e,[],!1,t);let r=(0,RKi.getSchemaTypes)(e.schema),n=(0,RKi.coerceAndCheckDataType)(e,r);DKi(e,r,!n,t)}function v9c(e){let{schema:t,errSchemaPath:r,opts:n,self:a}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,Ate.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function B9c(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ate.checkStrictMode)(e,"default is ignored in the schema root")}function w9c(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,h9c.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function T9c(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function WKi({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:a}){let o=r.$comment;if(a.$comment===!0)e.code((0,Vd._)`${uI.default.self}.logger.log(${o})`);else if(typeof a.$comment=="function"){let l=(0,Vd.str)`${n}/$comment`,A=e.scopeValue("root",{ref:t.root});e.code((0,Vd._)`${uI.default.self}.opts.$comment(${o}, ${l}, ${A}.schema)`)}}function R9c(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:a,opts:o}=e;r.$async?t.if((0,Vd._)`${uI.default.errors} === 0`,()=>t.return(uI.default.data),()=>t.throw((0,Vd._)`new ${a}(${uI.default.vErrors})`)):(t.assign((0,Vd._)`${n}.errors`,uI.default.vErrors),o.unevaluated&&N9c(e),t.return((0,Vd._)`${uI.default.errors} === 0`))}function N9c({gen:e,evaluated:t,props:r,items:n}){r instanceof Vd.Name&&e.assign((0,Vd._)`${t}.props`,r),n instanceof Vd.Name&&e.assign((0,Vd._)`${t}.items`,n)}function DKi(e,t,r,n){let{gen:a,schema:o,data:l,allErrors:A,opts:f,self:I}=e,{RULES:C}=I;if(o.$ref&&(f.ignoreKeywordsWithRef||!(0,Ate.schemaHasRulesButRef)(o,C))){a.block(()=>PKi(e,"$ref",C.all.$ref.definition));return}f.jtd||D9c(e,t),a.block(()=>{for(let E of C.rules)b(E);b(C.post)});function b(E){(0,tWr.shouldUseGroup)(o,E)&&(E.type?(a.if((0,yBt.checkDataType)(E.type,l,f.strictNumbers)),kKi(e,E),t.length===1&&t[0]===E.type&&r&&(a.else(),(0,yBt.reportTypeError)(e)),a.endIf()):kKi(e,E),A||a.if((0,Vd._)`${uI.default.errors} === ${n||0}`))}}function kKi(e,t){let{gen:r,schema:n,opts:{useDefaults:a}}=e;a&&(0,I9c.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,tWr.shouldUseRule)(n,o)&&PKi(e,o.keyword,o.definition,t.type)})}function D9c(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(k9c(e,t),e.opts.allowUnionTypes||x9c(e,t),G9c(e,e.dataTypes))}function k9c(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{OKi(e.dataTypes,r)||rWr(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Z9c(e,t)}}function x9c(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&rWr(e,"use allowUnionTypes to allow union type keyword")}function G9c(e,t){let r=e.self.RULES.all;for(let n in r){let a=r[n];if(typeof a=="object"&&(0,tWr.shouldUseRule)(e.schema,a)){let{type:o}=a.definition;o.length&&!o.some(l=>F9c(t,l))&&rWr(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function F9c(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function OKi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Z9c(e,t){let r=[];for(let n of e.dataTypes)OKi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function rWr(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,Ate.checkStrictMode)(e,t,e.opts.strictTypes)}var bBt=class{constructor(t,r,n){if((0,$Ke.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ate.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",MKi(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,$Ke.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",uI.default.errors))}result(t,r,n){this.failResult((0,Vd.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Vd.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Vd._)`${r} !== undefined && (${(0,Vd.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?qKe.reportExtraError:qKe.reportError)(this,this.def.error,r)}$dataError(){(0,qKe.reportError)(this,this.def.$dataError||qKe.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,qKe.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Vd.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Vd.nil,r=Vd.nil){if(!this.$data)return;let{gen:n,schemaCode:a,schemaType:o,def:l}=this;n.if((0,Vd.or)((0,Vd._)`${a} === undefined`,r)),t!==Vd.nil&&n.assign(t,!0),(o.length||l.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Vd.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:a,it:o}=this;return(0,Vd.or)(l(),A());function l(){if(n.length){if(!(r instanceof Vd.Name))throw new Error("ajv implementation error");let f=Array.isArray(n)?n:[n];return(0,Vd._)`${(0,yBt.checkDataTypes)(f,r,o.opts.strictNumbers,yBt.DataType.Wrong)}`}return Vd.nil}function A(){if(a.validateSchema){let f=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,Vd._)`!${f}(${r})`}return Vd.nil}}subschema(t,r){let n=(0,eWr.getSubschema)(this.it,t);(0,eWr.extendSubschemaData)(n,this.it,t),(0,eWr.extendSubschemaMode)(n,t);let a={...this.it,...n,items:void 0,props:void 0};return E9c(a,r),a}mergeEvaluated(t,r){let{it:n,gen:a}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=Ate.mergeEvaluated.props(a,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=Ate.mergeEvaluated.items(a,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:a}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,Vd.Name)),!0}};Tle.KeywordCxt=bBt;function PKi(e,t,r,n){let a=new bBt(e,r,t);"code"in r?r.code(a,n):a.$data&&r.validate?(0,$Ke.funcKeywordCode)(a,r):"macro"in r?(0,$Ke.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,$Ke.funcKeywordCode)(a,r)}var L9c=/^\/(?:[^~]|~0|~1)*$/,V9c=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function MKi(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let a,o;if(e==="")return uI.default.rootData;if(e[0]==="/"){if(!L9c.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=uI.default.rootData}else{let I=V9c.exec(e);if(!I)throw new Error(`Invalid JSON-pointer: ${e}`);let C=+I[1];if(a=I[2],a==="#"){if(C>=t)throw new Error(f("property/index",C));return n[t-C]}if(C>t)throw new Error(f("data",C));if(o=r[t-C],!a)return o}let l=o,A=a.split("/");for(let I of A)I&&(o=(0,Vd._)`${o}${(0,Vd.getProperty)((0,Ate.unescapeJsonPointer)(I))}`,l=(0,Vd._)`${l} && ${o}`);return l;function f(I,C){return`Cannot access ${I} ${C} levels up, current level is ${t}`}}Tle.getData=MKi});var EBt=H(iWr=>{"use strict";Object.defineProperty(iWr,"__esModule",{value:!0});var nWr=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};iWr.default=nWr});var t8e=H(aWr=>{"use strict";Object.defineProperty(aWr,"__esModule",{value:!0});var sWr=zKe(),oWr=class extends Error{constructor(t,r,n,a){super(a||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,sWr.resolveUrl)(t,r,n),this.missingSchema=(0,sWr.normalizeId)((0,sWr.getFullPath)(t,this.missingRef))}};aWr.default=oWr});var vBt=H(vH=>{"use strict";Object.defineProperty(vH,"__esModule",{value:!0});vH.resolveSchema=vH.getCompilingSchema=vH.resolveRef=vH.compileSchema=vH.SchemaEnv=void 0;var x4=Jh(),W9c=EBt(),__e=gte(),G4=zKe(),HKi=B_(),O9c=e8e(),_ke=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,G4.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};vH.SchemaEnv=_ke;function lWr(e){let t=YKi.call(this,e);if(t)return t;let r=(0,G4.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:a}=this.opts.code,{ownProperties:o}=this.opts,l=new x4.CodeGen(this.scope,{es5:n,lines:a,ownProperties:o}),A;e.$async&&(A=l.scopeValue("Error",{ref:W9c.default,code:(0,x4._)`require("ajv/dist/runtime/validation_error").default`}));let f=l.scopeName("validate");e.validateName=f;let I={gen:l,allErrors:this.opts.allErrors,data:__e.default.data,parentData:__e.default.parentData,parentDataProperty:__e.default.parentDataProperty,dataNames:[__e.default.data],dataPathArr:[x4.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:l.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,x4.stringify)(e.schema)}:{ref:e.schema}),validateName:f,ValidationError:A,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:x4.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,x4._)`""`,opts:this.opts,self:this},C;try{this._compilations.add(e),(0,O9c.validateFunctionCode)(I),l.optimize(this.opts.code.optimize);let b=l.toString();C=`${l.scopeRefs(__e.default.scope)}return ${b}`,this.opts.code.process&&(C=this.opts.code.process(C,e));let N=new Function(`${__e.default.self}`,`${__e.default.scope}`,C)(this,this.scope.get());if(this.scope.value(f,{ref:N}),N.errors=null,N.schema=e.schema,N.schemaEnv=e,e.$async&&(N.$async=!0),this.opts.code.source===!0&&(N.source={validateName:f,validateCode:b,scopeValues:l._values}),this.opts.unevaluated){let{props:B,items:F}=I;N.evaluated={props:B instanceof x4.Name?void 0:B,items:F instanceof x4.Name?void 0:F,dynamicProps:B instanceof x4.Name,dynamicItems:F instanceof x4.Name},N.source&&(N.source.evaluated=(0,x4.stringify)(N.evaluated))}return e.validate=N,e}catch(b){throw delete e.validate,delete e.validateName,C&&this.logger.error("Error compiling schema, function code:",C),b}finally{this._compilations.delete(e)}}vH.compileSchema=lWr;function P9c(e,t,r){var n;r=(0,G4.resolveUrl)(this.opts.uriResolver,t,r);let a=e.refs[r];if(a)return a;let o=Y9c.call(this,e,r);if(o===void 0){let l=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:A}=this.opts;l&&(o=new _ke({schema:l,schemaId:A,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=M9c.call(this,o)}vH.resolveRef=P9c;function M9c(e){return(0,G4.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:lWr.call(this,e)}function YKi(e){for(let t of this._compilations)if(H9c(t,e))return t}vH.getCompilingSchema=YKi;function H9c(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Y9c(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||SBt.call(this,e,t)}function SBt(e,t){let r=this.opts.uriResolver.parse(t),n=(0,G4._getFullPath)(this.opts.uriResolver,r),a=(0,G4.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===a)return cWr.call(this,r,e);let o=(0,G4.normalizeId)(n),l=this.refs[o]||this.schemas[o];if(typeof l=="string"){let A=SBt.call(this,e,l);return typeof A?.schema!="object"?void 0:cWr.call(this,r,A)}if(typeof l?.schema=="object"){if(l.validate||lWr.call(this,l),o===(0,G4.normalizeId)(t)){let{schema:A}=l,{schemaId:f}=this.opts,I=A[f];return I&&(a=(0,G4.resolveUrl)(this.opts.uriResolver,a,I)),new _ke({schema:A,schemaId:f,root:e,baseId:a})}return cWr.call(this,r,l)}}vH.resolveSchema=SBt;var Q9c=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function cWr(e,{baseId:t,schema:r,root:n}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(let A of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let f=r[(0,HKi.unescapeFragment)(A)];if(f===void 0)return;r=f;let I=typeof r=="object"&&r[this.opts.schemaId];!Q9c.has(A)&&I&&(t=(0,G4.resolveUrl)(this.opts.uriResolver,t,I))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,HKi.schemaHasRulesButRef)(r,this.RULES)){let A=(0,G4.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=SBt.call(this,n,A)}let{schemaId:l}=this.opts;if(o=o||new _ke({schema:r,schemaId:l,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var QKi=H((VYu,X9c)=>{X9c.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var JKi=H((WYu,XKi)=>{"use strict";var J9c={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};XKi.exports={HEX:J9c}});var t8i=H((OYu,e8i)=>{"use strict";var{HEX:U9c}=JKi();function zKi(e){if($Ki(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[r]=t;return r?{host:j9c(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function uWr(e,t=!1){let r="",n=!0;for(let a of e){if(U9c[a]===void 0)return;a!=="0"&&n===!0&&(n=!1),n||(r+=a)}return t&&r.length===0&&(r="0"),r}function K9c(e){let t=0,r={error:!1,address:"",zone:""},n=[],a=[],o=!1,l=!1,A=!1;function f(){if(a.length){if(o===!1){let I=uWr(a);if(I!==void 0)n.push(I);else return r.error=!0,!1}a.length=0}return!0}for(let I=0;I7){r.error=!0;break}I-1>=0&&e[I-1]===":"&&(l=!0);continue}else if(C==="%"){if(!f())break;o=!0}else{a.push(C);continue}}return a.length&&(o?r.zone=a.join(""):A?n.push(a.join("")):n.push(uWr(a))),r.address=n.join(""),r}function qKi(e,t={}){if($Ki(e,":")<2)return{host:e,isIPV6:!1};let r=K9c(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,a=r.address;return r.zone&&(n+="%"+r.zone,a+="%25"+r.zone),{host:n,escapedHost:a,isIPV6:!0}}}function j9c(e,t){let r="",n=!0,a=e.length;for(let o=0;o{"use strict";var tVc=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,rVc=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function r8i(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function n8i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function i8i(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function nVc(e){return e.secure=r8i(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function iVc(e){if((e.port===(r8i(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function sVc(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(rVc);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let a=`${n}:${t.nid||e.nid}`,o=gWr[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function oVc(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),a=`${r}:${t.nid||n}`,o=gWr[a];o&&(e=o.serialize(e,t));let l=e,A=e.nss;return l.path=`${n||t.nid}:${A}`,t.skipEscape=!0,l}function aVc(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!tVc.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function cVc(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var s8i={scheme:"http",domainHost:!0,parse:n8i,serialize:i8i},lVc={scheme:"https",domainHost:s8i.domainHost,parse:n8i,serialize:i8i},BBt={scheme:"ws",domainHost:!0,parse:nVc,serialize:iVc},uVc={scheme:"wss",domainHost:BBt.domainHost,parse:BBt.parse,serialize:BBt.serialize},gVc={scheme:"urn",parse:sVc,serialize:oVc,skipNormalize:!0},AVc={scheme:"urn:uuid",parse:aVc,serialize:cVc,skipNormalize:!0},gWr={http:s8i,https:lVc,ws:BBt,wss:uVc,urn:gVc,"urn:uuid":AVc};o8i.exports=gWr});var l8i=H((MYu,TBt)=>{"use strict";var{normalizeIPv6:dVc,normalizeIPv4:pVc,removeDotSegments:r8e,recomposeAuthority:fVc,normalizeComponentEncoding:wBt}=t8i(),AWr=a8i();function IVc(e,t){return typeof e=="string"?e=z6(dte(e,t),t):typeof e=="object"&&(e=dte(z6(e,t),t)),e}function hVc(e,t,r){let n=Object.assign({scheme:"null"},r),a=c8i(dte(e,n),dte(t,n),n,!0);return z6(a,{...n,skipEscape:!0})}function c8i(e,t,r,n){let a={};return n||(e=dte(z6(e,r),r),t=dte(z6(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r8e(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r8e(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=r8e(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=r8e(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function mVc(e,t,r){return typeof e=="string"?(e=unescape(e),e=z6(wBt(dte(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=z6(wBt(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=z6(wBt(dte(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=z6(wBt(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function z6(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),a=[],o=AWr[(n.scheme||r.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");let l=fVc(r,n);if(l!==void 0&&(n.reference!=="suffix"&&a.push("//"),a.push(l),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let A=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(A=r8e(A)),l===void 0&&(A=A.replace(/^\/\//u,"/%2F")),a.push(A)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}var CVc=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function _Vc(e){let t=0;for(let r=0,n=e.length;r126||CVc[t])return!0;return!1}var yVc=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function dte(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1,o=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let l=e.match(yVc);if(l){if(n.scheme=l[1],n.userinfo=l[3],n.host=l[4],n.port=parseInt(l[5],10),n.path=l[6]||"",n.query=l[7],n.fragment=l[8],isNaN(n.port)&&(n.port=l[5]),n.host){let f=pVc(n.host);if(f.isIPV4===!1){let I=dVc(f.host,{isIPV4:!1});n.host=I.host.toLowerCase(),o=I.isIPV6}else n.host=f.host,o=!0}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let A=AWr[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!A||!A.unicodeSupport)&&n.host&&(r.domainHost||A&&A.domainHost)&&o===!1&&_Vc(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(f){n.error=n.error||"Host's domain name can not be converted to ASCII: "+f}(!A||A&&!A.skipNormalize)&&(a&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),a&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),A&&A.parse&&A.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var dWr={SCHEMES:AWr,normalize:IVc,resolve:hVc,resolveComponents:c8i,equal:mVc,serialize:z6,parse:dte};TBt.exports=dWr;TBt.exports.default=dWr;TBt.exports.fastUri=dWr});var g8i=H(pWr=>{"use strict";Object.defineProperty(pWr,"__esModule",{value:!0});var u8i=l8i();u8i.code='require("ajv/dist/runtime/uri").default';pWr.default=u8i});var C8i=H(nx=>{"use strict";Object.defineProperty(nx,"__esModule",{value:!0});nx.CodeGen=nx.Name=nx.nil=nx.stringify=nx.str=nx._=nx.KeywordCxt=void 0;var bVc=e8e();Object.defineProperty(nx,"KeywordCxt",{enumerable:!0,get:function(){return bVc.KeywordCxt}});var yke=Jh();Object.defineProperty(nx,"_",{enumerable:!0,get:function(){return yke._}});Object.defineProperty(nx,"str",{enumerable:!0,get:function(){return yke.str}});Object.defineProperty(nx,"stringify",{enumerable:!0,get:function(){return yke.stringify}});Object.defineProperty(nx,"nil",{enumerable:!0,get:function(){return yke.nil}});Object.defineProperty(nx,"Name",{enumerable:!0,get:function(){return yke.Name}});Object.defineProperty(nx,"CodeGen",{enumerable:!0,get:function(){return yke.CodeGen}});var EVc=EBt(),I8i=t8e(),SVc=YVr(),n8e=vBt(),vVc=Jh(),i8e=zKe(),RBt=jKe(),IWr=B_(),A8i=QKi(),BVc=g8i(),h8i=(e,t)=>new RegExp(e,t);h8i.code="new RegExp";var wVc=["removeAdditional","useDefaults","coerceTypes"],TVc=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),RVc={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},NVc={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},d8i=200;function DVc(e){var t,r,n,a,o,l,A,f,I,C,b,E,N,B,F,Q,J,ae,ne,ce,fe,ue,de,be,Se;let De=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,tt=k===!0||k===void 0?1:k||0,ze=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:h8i,Le=(a=e.uriResolver)!==null&&a!==void 0?a:BVc.default;return{strictSchema:(l=(o=e.strictSchema)!==null&&o!==void 0?o:De)!==null&&l!==void 0?l:!0,strictNumbers:(f=(A=e.strictNumbers)!==null&&A!==void 0?A:De)!==null&&f!==void 0?f:!0,strictTypes:(C=(I=e.strictTypes)!==null&&I!==void 0?I:De)!==null&&C!==void 0?C:"log",strictTuples:(E=(b=e.strictTuples)!==null&&b!==void 0?b:De)!==null&&E!==void 0?E:"log",strictRequired:(B=(N=e.strictRequired)!==null&&N!==void 0?N:De)!==null&&B!==void 0?B:!1,code:e.code?{...e.code,optimize:tt,regExp:ze}:{optimize:tt,regExp:ze},loopRequired:(F=e.loopRequired)!==null&&F!==void 0?F:d8i,loopEnum:(Q=e.loopEnum)!==null&&Q!==void 0?Q:d8i,meta:(J=e.meta)!==null&&J!==void 0?J:!0,messages:(ae=e.messages)!==null&&ae!==void 0?ae:!0,inlineRefs:(ne=e.inlineRefs)!==null&&ne!==void 0?ne:!0,schemaId:(ce=e.schemaId)!==null&&ce!==void 0?ce:"$id",addUsedSchema:(fe=e.addUsedSchema)!==null&&fe!==void 0?fe:!0,validateSchema:(ue=e.validateSchema)!==null&&ue!==void 0?ue:!0,validateFormats:(de=e.validateFormats)!==null&&de!==void 0?de:!0,unicodeRegExp:(be=e.unicodeRegExp)!==null&&be!==void 0?be:!0,int32range:(Se=e.int32range)!==null&&Se!==void 0?Se:!0,uriResolver:Le}}var s8e=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...DVc(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new vVc.ValueScope({scope:{},prefixes:TVc,es5:r,lines:n}),this.logger=LVc(t.logger);let a=t.validateFormats;t.validateFormats=!1,this.RULES=(0,SVc.getRules)(),p8i.call(this,RVc,t,"NOT SUPPORTED"),p8i.call(this,NVc,t,"DEPRECATED","warn"),this._metaOpts=FVc.call(this),t.formats&&xVc.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&GVc.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),kVc.call(this),t.validateFormats=a}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,a=A8i;n==="id"&&(a={...A8i},a.id=a.$id,delete a.$id),r&&t&&this.addMetaSchema(a,a[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let a=n(r);return"$async"in n||(this.errors=n.errors),a}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return a.call(this,t,r);async function a(C,b){await o.call(this,C.$schema);let E=this._addSchema(C,b);return E.validate||l.call(this,E)}async function o(C){C&&!this.getSchema(C)&&await a.call(this,{$ref:C},!0)}async function l(C){try{return this._compileSchemaEnv(C)}catch(b){if(!(b instanceof I8i.default))throw b;return A.call(this,b),await f.call(this,b.missingSchema),l.call(this,C)}}function A({missingSchema:C,missingRef:b}){if(this.refs[C])throw new Error(`AnySchema ${C} is loaded but ${b} cannot be resolved`)}async function f(C){let b=await I.call(this,C);this.refs[C]||await o.call(this,b.$schema),this.refs[C]||this.addSchema(b,C,r)}async function I(C){let b=this._loading[C];if(b)return b;try{return await(this._loading[C]=n(C))}finally{delete this._loading[C]}}}addSchema(t,r,n,a=this.opts.validateSchema){if(Array.isArray(t)){for(let l of t)this.addSchema(l,void 0,n,a);return this}let o;if(typeof t=="object"){let{schemaId:l}=this.opts;if(o=t[l],o!==void 0&&typeof o!="string")throw new Error(`schema ${l} must be string`)}return r=(0,i8e.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,a,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let a=this.validate(n,t);if(!a&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return a}getSchema(t){let r;for(;typeof(r=f8i.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,a=new n8e.SchemaEnv({schema:{},schemaId:n});if(r=n8e.resolveSchema.call(this,a,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=f8i.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,i8e.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(WVc.call(this,n,r),!r)return(0,IWr.eachItem)(n,o=>fWr.call(this,o)),this;PVc.call(this,r);let a={...r,type:(0,RBt.getJSONTypes)(r.type),schemaType:(0,RBt.getJSONTypes)(r.schemaType)};return(0,IWr.eachItem)(n,a.type.length===0?o=>fWr.call(this,o,a):o=>a.type.forEach(l=>fWr.call(this,o,a,l))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let a=n.rules.findIndex(o=>o.keyword===t);a>=0&&n.rules.splice(a,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(a=>`${n}${a.instancePath} ${a.message}`).reduce((a,o)=>a+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let a of r){let o=a.split("/").slice(1),l=t;for(let A of o)l=l[A];for(let A in n){let f=n[A];if(typeof f!="object")continue;let{$data:I}=f.definition,C=l[A];I&&C&&(l[A]=m8i(C))}}return t}_removeAllSchemas(t,r){for(let n in t){let a=t[n];(!r||r.test(n))&&(typeof a=="string"?delete t[n]:a&&!a.meta&&(this._cache.delete(a.schema),delete t[n]))}}_addSchema(t,r,n,a=this.opts.validateSchema,o=this.opts.addUsedSchema){let l,{schemaId:A}=this.opts;if(typeof t=="object")l=t[A];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let f=this._cache.get(t);if(f!==void 0)return f;n=(0,i8e.normalizeId)(l||n);let I=i8e.getSchemaRefs.call(this,t,n);return f=new n8e.SchemaEnv({schema:t,schemaId:A,meta:r,baseId:n,localRefs:I}),this._cache.set(f.schema,f),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=f),a&&this.validateSchema(t,!0),f}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):n8e.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{n8e.compileSchema.call(this,t)}finally{this.opts=r}}};s8e.ValidationError=EVc.default;s8e.MissingRefError=I8i.default;nx.default=s8e;function p8i(e,t,r,n="error"){for(let a in e){let o=a;o in t&&this.logger[n](`${r}: option ${a}. ${e[o]}`)}}function f8i(e){return e=(0,i8e.normalizeId)(e),this.schemas[e]||this.refs[e]}function kVc(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function xVc(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function GVc(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function FVc(){let e={...this.opts};for(let t of wVc)delete e[t];return e}var ZVc={log(){},warn(){},error(){}};function LVc(e){if(e===!1)return ZVc;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var VVc=/^[a-z_$][a-z0-9_$:-]*$/i;function WVc(e,t){let{RULES:r}=this;if((0,IWr.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!VVc.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function fWr(e,t,r){var n;let a=t?.post;if(r&&a)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,l=a?o.post:o.rules.find(({type:f})=>f===r);if(l||(l={type:r,rules:[]},o.rules.push(l)),o.keywords[e]=!0,!t)return;let A={keyword:e,definition:{...t,type:(0,RBt.getJSONTypes)(t.type),schemaType:(0,RBt.getJSONTypes)(t.schemaType)}};t.before?OVc.call(this,l,A,t.before):l.rules.push(A),o.all[e]=A,(n=t.implements)===null||n===void 0||n.forEach(f=>this.addKeyword(f))}function OVc(e,t,r){let n=e.rules.findIndex(a=>a.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function PVc(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=m8i(t)),e.validateSchema=this.compile(t,!0))}var MVc={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function m8i(e){return{anyOf:[e,MVc]}}});var _8i=H(hWr=>{"use strict";Object.defineProperty(hWr,"__esModule",{value:!0});var HVc={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};hWr.default=HVc});var S8i=H(y_e=>{"use strict";Object.defineProperty(y_e,"__esModule",{value:!0});y_e.callRef=y_e.getValidate=void 0;var YVc=t8e(),y8i=SH(),PV=Jh(),bke=gte(),b8i=vBt(),NBt=B_(),QVc={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:a,schemaEnv:o,validateName:l,opts:A,self:f}=n,{root:I}=o;if((r==="#"||r==="#/")&&a===I.baseId)return b();let C=b8i.resolveRef.call(f,I,a,r);if(C===void 0)throw new YVc.default(n.opts.uriResolver,a,r);if(C instanceof b8i.SchemaEnv)return E(C);return N(C);function b(){if(o===I)return DBt(e,l,o,o.$async);let B=t.scopeValue("root",{ref:I});return DBt(e,(0,PV._)`${B}.validate`,I,I.$async)}function E(B){let F=E8i(e,B);DBt(e,F,B,B.$async)}function N(B){let F=t.scopeValue("schema",A.code.source===!0?{ref:B,code:(0,PV.stringify)(B)}:{ref:B}),Q=t.name("valid"),J=e.subschema({schema:B,dataTypes:[],schemaPath:PV.nil,topSchemaRef:F,errSchemaPath:r},Q);e.mergeEvaluated(J),e.ok(Q)}}};function E8i(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,PV._)`${r.scopeValue("wrapper",{ref:t})}.validate`}y_e.getValidate=E8i;function DBt(e,t,r,n){let{gen:a,it:o}=e,{allErrors:l,schemaEnv:A,opts:f}=o,I=f.passContext?bke.default.this:PV.nil;n?C():b();function C(){if(!A.$async)throw new Error("async schema referenced by sync schema");let B=a.let("valid");a.try(()=>{a.code((0,PV._)`await ${(0,y8i.callValidateCode)(e,t,I)}`),N(t),l||a.assign(B,!0)},F=>{a.if((0,PV._)`!(${F} instanceof ${o.ValidationError})`,()=>a.throw(F)),E(F),l||a.assign(B,!1)}),e.ok(B)}function b(){e.result((0,y8i.callValidateCode)(e,t,I),()=>N(t),()=>E(t))}function E(B){let F=(0,PV._)`${B}.errors`;a.assign(bke.default.vErrors,(0,PV._)`${bke.default.vErrors} === null ? ${F} : ${bke.default.vErrors}.concat(${F})`),a.assign(bke.default.errors,(0,PV._)`${bke.default.vErrors}.length`)}function N(B){var F;if(!o.opts.unevaluated)return;let Q=(F=r?.validate)===null||F===void 0?void 0:F.evaluated;if(o.props!==!0)if(Q&&!Q.dynamicProps)Q.props!==void 0&&(o.props=NBt.mergeEvaluated.props(a,Q.props,o.props));else{let J=a.var("props",(0,PV._)`${B}.evaluated.props`);o.props=NBt.mergeEvaluated.props(a,J,o.props,PV.Name)}if(o.items!==!0)if(Q&&!Q.dynamicItems)Q.items!==void 0&&(o.items=NBt.mergeEvaluated.items(a,Q.items,o.items));else{let J=a.var("items",(0,PV._)`${B}.evaluated.items`);o.items=NBt.mergeEvaluated.items(a,J,o.items,PV.Name)}}}y_e.callRef=DBt;y_e.default=QVc});var v8i=H(mWr=>{"use strict";Object.defineProperty(mWr,"__esModule",{value:!0});var XVc=_8i(),JVc=S8i(),UVc=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",XVc.default,JVc.default];mWr.default=UVc});var B8i=H(CWr=>{"use strict";Object.defineProperty(CWr,"__esModule",{value:!0});var kBt=Jh(),Rle=kBt.operators,xBt={maximum:{okStr:"<=",ok:Rle.LTE,fail:Rle.GT},minimum:{okStr:">=",ok:Rle.GTE,fail:Rle.LT},exclusiveMaximum:{okStr:"<",ok:Rle.LT,fail:Rle.GTE},exclusiveMinimum:{okStr:">",ok:Rle.GT,fail:Rle.LTE}},KVc={message:({keyword:e,schemaCode:t})=>(0,kBt.str)`must be ${xBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,kBt._)`{comparison: ${xBt[e].okStr}, limit: ${t}}`},jVc={keyword:Object.keys(xBt),type:"number",schemaType:"number",$data:!0,error:KVc,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,kBt._)`${r} ${xBt[t].fail} ${n} || isNaN(${r})`)}};CWr.default=jVc});var w8i=H(_Wr=>{"use strict";Object.defineProperty(_Wr,"__esModule",{value:!0});var o8e=Jh(),zVc={message:({schemaCode:e})=>(0,o8e.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,o8e._)`{multipleOf: ${e}}`},qVc={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:zVc,code(e){let{gen:t,data:r,schemaCode:n,it:a}=e,o=a.opts.multipleOfPrecision,l=t.let("res"),A=o?(0,o8e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${o}`:(0,o8e._)`${l} !== parseInt(${l})`;e.fail$data((0,o8e._)`(${n} === 0 || (${l} = ${r}/${n}, ${A}))`)}};_Wr.default=qVc});var R8i=H(yWr=>{"use strict";Object.defineProperty(yWr,"__esModule",{value:!0});function T8i(e){let t=e.length,r=0,n=0,a;for(;n=55296&&a<=56319&&n{"use strict";Object.defineProperty(bWr,"__esModule",{value:!0});var b_e=Jh(),$Vc=B_(),eWc=R8i(),tWc={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,b_e.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,b_e._)`{limit: ${e}}`},rWc={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:tWc,code(e){let{keyword:t,data:r,schemaCode:n,it:a}=e,o=t==="maxLength"?b_e.operators.GT:b_e.operators.LT,l=a.opts.unicode===!1?(0,b_e._)`${r}.length`:(0,b_e._)`${(0,$Vc.useFunc)(e.gen,eWc.default)}(${r})`;e.fail$data((0,b_e._)`${l} ${o} ${n}`)}};bWr.default=rWc});var D8i=H(EWr=>{"use strict";Object.defineProperty(EWr,"__esModule",{value:!0});var nWc=SH(),GBt=Jh(),iWc={message:({schemaCode:e})=>(0,GBt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,GBt._)`{pattern: ${e}}`},sWc={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:iWc,code(e){let{data:t,$data:r,schema:n,schemaCode:a,it:o}=e,l=o.opts.unicodeRegExp?"u":"",A=r?(0,GBt._)`(new RegExp(${a}, ${l}))`:(0,nWc.usePattern)(e,n);e.fail$data((0,GBt._)`!${A}.test(${t})`)}};EWr.default=sWc});var k8i=H(SWr=>{"use strict";Object.defineProperty(SWr,"__esModule",{value:!0});var a8e=Jh(),oWc={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,a8e.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,a8e._)`{limit: ${e}}`},aWc={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:oWc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxProperties"?a8e.operators.GT:a8e.operators.LT;e.fail$data((0,a8e._)`Object.keys(${r}).length ${a} ${n}`)}};SWr.default=aWc});var x8i=H(vWr=>{"use strict";Object.defineProperty(vWr,"__esModule",{value:!0});var c8e=SH(),l8e=Jh(),cWc=B_(),lWc={message:({params:{missingProperty:e}})=>(0,l8e.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,l8e._)`{missingProperty: ${e}}`},uWc={keyword:"required",type:"object",schemaType:"array",$data:!0,error:lWc,code(e){let{gen:t,schema:r,schemaCode:n,data:a,$data:o,it:l}=e,{opts:A}=l;if(!o&&r.length===0)return;let f=r.length>=A.loopRequired;if(l.allErrors?I():C(),A.strictRequired){let N=e.parentSchema.properties,{definedProperties:B}=e.it;for(let F of r)if(N?.[F]===void 0&&!B.has(F)){let Q=l.schemaEnv.baseId+l.errSchemaPath,J=`required property "${F}" is not defined at "${Q}" (strictRequired)`;(0,cWc.checkStrictMode)(l,J,l.opts.strictRequired)}}function I(){if(f||o)e.block$data(l8e.nil,b);else for(let N of r)(0,c8e.checkReportMissingProp)(e,N)}function C(){let N=t.let("missing");if(f||o){let B=t.let("valid",!0);e.block$data(B,()=>E(N,B)),e.ok(B)}else t.if((0,c8e.checkMissingProp)(e,r,N)),(0,c8e.reportMissingProp)(e,N),t.else()}function b(){t.forOf("prop",n,N=>{e.setParams({missingProperty:N}),t.if((0,c8e.noPropertyInData)(t,a,N,A.ownProperties),()=>e.error())})}function E(N,B){e.setParams({missingProperty:N}),t.forOf(N,n,()=>{t.assign(B,(0,c8e.propertyInData)(t,a,N,A.ownProperties)),t.if((0,l8e.not)(B),()=>{e.error(),t.break()})},l8e.nil)}}};vWr.default=uWc});var G8i=H(BWr=>{"use strict";Object.defineProperty(BWr,"__esModule",{value:!0});var u8e=Jh(),gWc={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,u8e.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,u8e._)`{limit: ${e}}`},AWc={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:gWc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxItems"?u8e.operators.GT:u8e.operators.LT;e.fail$data((0,u8e._)`${r}.length ${a} ${n}`)}};BWr.default=AWc});var FBt=H(wWr=>{"use strict";Object.defineProperty(wWr,"__esModule",{value:!0});var F8i=qVr();F8i.code='require("ajv/dist/runtime/equal").default';wWr.default=F8i});var Z8i=H(RWr=>{"use strict";Object.defineProperty(RWr,"__esModule",{value:!0});var TWr=jKe(),ix=Jh(),dWc=B_(),pWc=FBt(),fWc={message:({params:{i:e,j:t}})=>(0,ix.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,ix._)`{i: ${e}, j: ${t}}`},IWc={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:fWc,code(e){let{gen:t,data:r,$data:n,schema:a,parentSchema:o,schemaCode:l,it:A}=e;if(!n&&!a)return;let f=t.let("valid"),I=o.items?(0,TWr.getSchemaTypes)(o.items):[];e.block$data(f,C,(0,ix._)`${l} === false`),e.ok(f);function C(){let B=t.let("i",(0,ix._)`${r}.length`),F=t.let("j");e.setParams({i:B,j:F}),t.assign(f,!0),t.if((0,ix._)`${B} > 1`,()=>(b()?E:N)(B,F))}function b(){return I.length>0&&!I.some(B=>B==="object"||B==="array")}function E(B,F){let Q=t.name("item"),J=(0,TWr.checkDataTypes)(I,Q,A.opts.strictNumbers,TWr.DataType.Wrong),ae=t.const("indices",(0,ix._)`{}`);t.for((0,ix._)`;${B}--;`,()=>{t.let(Q,(0,ix._)`${r}[${B}]`),t.if(J,(0,ix._)`continue`),I.length>1&&t.if((0,ix._)`typeof ${Q} == "string"`,(0,ix._)`${Q} += "_"`),t.if((0,ix._)`typeof ${ae}[${Q}] == "number"`,()=>{t.assign(F,(0,ix._)`${ae}[${Q}]`),e.error(),t.assign(f,!1).break()}).code((0,ix._)`${ae}[${Q}] = ${B}`)})}function N(B,F){let Q=(0,dWc.useFunc)(t,pWc.default),J=t.name("outer");t.label(J).for((0,ix._)`;${B}--;`,()=>t.for((0,ix._)`${F} = ${B}; ${F}--;`,()=>t.if((0,ix._)`${Q}(${r}[${B}], ${r}[${F}])`,()=>{e.error(),t.assign(f,!1).break(J)})))}}};RWr.default=IWc});var L8i=H(DWr=>{"use strict";Object.defineProperty(DWr,"__esModule",{value:!0});var NWr=Jh(),hWc=B_(),mWc=FBt(),CWc={message:"must be equal to constant",params:({schemaCode:e})=>(0,NWr._)`{allowedValue: ${e}}`},_Wc={keyword:"const",$data:!0,error:CWc,code(e){let{gen:t,data:r,$data:n,schemaCode:a,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,NWr._)`!${(0,hWc.useFunc)(t,mWc.default)}(${r}, ${a})`):e.fail((0,NWr._)`${o} !== ${r}`)}};DWr.default=_Wc});var V8i=H(kWr=>{"use strict";Object.defineProperty(kWr,"__esModule",{value:!0});var g8e=Jh(),yWc=B_(),bWc=FBt(),EWc={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,g8e._)`{allowedValues: ${e}}`},SWc={keyword:"enum",schemaType:"array",$data:!0,error:EWc,code(e){let{gen:t,data:r,$data:n,schema:a,schemaCode:o,it:l}=e;if(!n&&a.length===0)throw new Error("enum must have non-empty array");let A=a.length>=l.opts.loopEnum,f,I=()=>f??(f=(0,yWc.useFunc)(t,bWc.default)),C;if(A||n)C=t.let("valid"),e.block$data(C,b);else{if(!Array.isArray(a))throw new Error("ajv implementation error");let N=t.const("vSchema",o);C=(0,g8e.or)(...a.map((B,F)=>E(N,F)))}e.pass(C);function b(){t.assign(C,!1),t.forOf("v",o,N=>t.if((0,g8e._)`${I()}(${r}, ${N})`,()=>t.assign(C,!0).break()))}function E(N,B){let F=a[B];return typeof F=="object"&&F!==null?(0,g8e._)`${I()}(${r}, ${N}[${B}])`:(0,g8e._)`${r} === ${F}`}}};kWr.default=SWc});var W8i=H(xWr=>{"use strict";Object.defineProperty(xWr,"__esModule",{value:!0});var vWc=B8i(),BWc=w8i(),wWc=N8i(),TWc=D8i(),RWc=k8i(),NWc=x8i(),DWc=G8i(),kWc=Z8i(),xWc=L8i(),GWc=V8i(),FWc=[vWc.default,BWc.default,wWc.default,TWc.default,RWc.default,NWc.default,DWc.default,kWc.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},xWc.default,GWc.default];xWr.default=FWc});var FWr=H(A8e=>{"use strict";Object.defineProperty(A8e,"__esModule",{value:!0});A8e.validateAdditionalItems=void 0;var E_e=Jh(),GWr=B_(),ZWc={message:({params:{len:e}})=>(0,E_e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,E_e._)`{limit: ${e}}`},LWc={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:ZWc,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,GWr.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}O8i(e,n)}};function O8i(e,t){let{gen:r,schema:n,data:a,keyword:o,it:l}=e;l.items=!0;let A=r.const("len",(0,E_e._)`${a}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,E_e._)`${A} <= ${t.length}`);else if(typeof n=="object"&&!(0,GWr.alwaysValidSchema)(l,n)){let I=r.var("valid",(0,E_e._)`${A} <= ${t.length}`);r.if((0,E_e.not)(I),()=>f(I)),e.ok(I)}function f(I){r.forRange("i",t.length,A,C=>{e.subschema({keyword:o,dataProp:C,dataPropType:GWr.Type.Num},I),l.allErrors||r.if((0,E_e.not)(I),()=>r.break())})}}A8e.validateAdditionalItems=O8i;A8e.default=LWc});var ZWr=H(d8e=>{"use strict";Object.defineProperty(d8e,"__esModule",{value:!0});d8e.validateTuple=void 0;var P8i=Jh(),ZBt=B_(),VWc=SH(),WWc={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return M8i(e,"additionalItems",t);r.items=!0,!(0,ZBt.alwaysValidSchema)(r,t)&&e.ok((0,VWc.validateArray)(e))}};function M8i(e,t,r=e.schema){let{gen:n,parentSchema:a,data:o,keyword:l,it:A}=e;C(a),A.opts.unevaluated&&r.length&&A.items!==!0&&(A.items=ZBt.mergeEvaluated.items(n,r.length,A.items));let f=n.name("valid"),I=n.const("len",(0,P8i._)`${o}.length`);r.forEach((b,E)=>{(0,ZBt.alwaysValidSchema)(A,b)||(n.if((0,P8i._)`${I} > ${E}`,()=>e.subschema({keyword:l,schemaProp:E,dataProp:E},f)),e.ok(f))});function C(b){let{opts:E,errSchemaPath:N}=A,B=r.length,F=B===b.minItems&&(B===b.maxItems||b[t]===!1);if(E.strictTuples&&!F){let Q=`"${l}" is ${B}-tuple, but minItems or maxItems/${t} are not specified or different at path "${N}"`;(0,ZBt.checkStrictMode)(A,Q,E.strictTuples)}}}d8e.validateTuple=M8i;d8e.default=WWc});var H8i=H(LWr=>{"use strict";Object.defineProperty(LWr,"__esModule",{value:!0});var OWc=ZWr(),PWc={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,OWc.validateTuple)(e,"items")};LWr.default=PWc});var Q8i=H(VWr=>{"use strict";Object.defineProperty(VWr,"__esModule",{value:!0});var Y8i=Jh(),MWc=B_(),HWc=SH(),YWc=FWr(),QWc={message:({params:{len:e}})=>(0,Y8i.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Y8i._)`{limit: ${e}}`},XWc={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:QWc,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:a}=r;n.items=!0,!(0,MWc.alwaysValidSchema)(n,t)&&(a?(0,YWc.validateAdditionalItems)(e,a):e.ok((0,HWc.validateArray)(e)))}};VWr.default=XWc});var X8i=H(WWr=>{"use strict";Object.defineProperty(WWr,"__esModule",{value:!0});var BH=Jh(),LBt=B_(),JWc={message:({params:{min:e,max:t}})=>t===void 0?(0,BH.str)`must contain at least ${e} valid item(s)`:(0,BH.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,BH._)`{minContains: ${e}}`:(0,BH._)`{minContains: ${e}, maxContains: ${t}}`},UWc={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:JWc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e,l,A,{minContains:f,maxContains:I}=n;o.opts.next?(l=f===void 0?1:f,A=I):l=1;let C=t.const("len",(0,BH._)`${a}.length`);if(e.setParams({min:l,max:A}),A===void 0&&l===0){(0,LBt.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(A!==void 0&&l>A){(0,LBt.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,LBt.alwaysValidSchema)(o,r)){let F=(0,BH._)`${C} >= ${l}`;A!==void 0&&(F=(0,BH._)`${F} && ${C} <= ${A}`),e.pass(F);return}o.items=!0;let b=t.name("valid");A===void 0&&l===1?N(b,()=>t.if(b,()=>t.break())):l===0?(t.let(b,!0),A!==void 0&&t.if((0,BH._)`${a}.length > 0`,E)):(t.let(b,!1),E()),e.result(b,()=>e.reset());function E(){let F=t.name("_valid"),Q=t.let("count",0);N(F,()=>t.if(F,()=>B(Q)))}function N(F,Q){t.forRange("i",0,C,J=>{e.subschema({keyword:"contains",dataProp:J,dataPropType:LBt.Type.Num,compositeRule:!0},F),Q()})}function B(F){t.code((0,BH._)`${F}++`),A===void 0?t.if((0,BH._)`${F} >= ${l}`,()=>t.assign(b,!0).break()):(t.if((0,BH._)`${F} > ${A}`,()=>t.assign(b,!1).break()),l===1?t.assign(b,!0):t.if((0,BH._)`${F} >= ${l}`,()=>t.assign(b,!0)))}}};WWr.default=UWc});var K8i=H(q6=>{"use strict";Object.defineProperty(q6,"__esModule",{value:!0});q6.validateSchemaDeps=q6.validatePropertyDeps=q6.error=void 0;var OWr=Jh(),KWc=B_(),p8e=SH();q6.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,OWr.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,OWr._)`{property: ${e}, + || ${l} === "boolean" || ${a} === null`).assign(A,(0,Nh._)`[${a}]`)}}}function R9c({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Nh._)`${t} !== undefined`,()=>e.assign((0,Nh._)`${t}[${r}]`,n))}function qVr(e,t,r,n=hke.Correct){let a=n===hke.Correct?Nh.operators.EQ:Nh.operators.NEQ,o;switch(e){case"null":return(0,Nh._)`${t} ${a} null`;case"array":o=(0,Nh._)`Array.isArray(${t})`;break;case"object":o=(0,Nh._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=l((0,Nh._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=l();break;default:return(0,Nh._)`typeof ${t} ${a} ${e}`}return n===hke.Correct?o:(0,Nh.not)(o);function l(A=Nh.nil){return(0,Nh.and)((0,Nh._)`typeof ${t} == "number"`,A,r?(0,Nh._)`isFinite(${t})`:Nh.nil)}}zG.checkDataType=qVr;function $Vr(e,t,r,n){if(e.length===1)return qVr(e[0],t,r,n);let a,o=(0,AKi.toHash)(e);if(o.array&&o.object){let l=(0,Nh._)`typeof ${t} != "object"`;a=o.null?l:(0,Nh._)`!${t} || ${l}`,delete o.null,delete o.array,delete o.object}else a=Nh.nil;o.number&&delete o.integer;for(let l in o)a=(0,Nh.and)(a,qVr(l,t,r,n));return a}zG.checkDataTypes=$Vr;var N9c={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Nh._)`{type: ${e}}`:(0,Nh._)`{type: ${t}}`};function eWr(e){let t=D9c(e);(0,S9c.reportError)(t,N9c)}zG.reportTypeError=eWr;function D9c(e){let{gen:t,data:r,schema:n}=e,a=(0,AKi.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:a,schemaValue:a,parentSchema:n,params:{},it:e}}});var IKi=H(CBt=>{"use strict";Object.defineProperty(CBt,"__esModule",{value:!0});CBt.assignDefaults=void 0;var mke=Jh(),k9c=w_();function x9c(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let a in r)fKi(e,a,r[a].default);else t==="array"&&Array.isArray(n)&&n.forEach((a,o)=>fKi(e,o,a.default))}CBt.assignDefaults=x9c;function fKi(e,t,r){let{gen:n,compositeRule:a,data:o,opts:l}=e;if(r===void 0)return;let A=(0,mke._)`${o}${(0,mke.getProperty)(t)}`;if(a){(0,k9c.checkStrictMode)(e,`default is ignored for: ${A}`);return}let f=(0,mke._)`${A} === undefined`;l.useDefaults==="empty"&&(f=(0,mke._)`${f} || ${A} === null || ${A} === ""`),n.if(f,(0,mke._)`${A} = ${(0,mke.stringify)(r)}`)}});var vH=H(Ab=>{"use strict";Object.defineProperty(Ab,"__esModule",{value:!0});Ab.validateUnion=Ab.validateArray=Ab.usePattern=Ab.callValidateCode=Ab.schemaProperties=Ab.allSchemaProperties=Ab.noPropertyInData=Ab.propertyInData=Ab.isOwnProperty=Ab.hasPropFunc=Ab.reportMissingProp=Ab.checkMissingProp=Ab.checkReportMissingProp=void 0;var K1=Jh(),tWr=w_(),Ble=Ate(),G9c=w_();function F9c(e,t){let{gen:r,data:n,it:a}=e;r.if(nWr(r,n,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,K1._)`${t}`},!0),e.error()})}Ab.checkReportMissingProp=F9c;function Z9c({gen:e,data:t,it:{opts:r}},n,a){return(0,K1.or)(...n.map(o=>(0,K1.and)(nWr(e,t,o,r.ownProperties),(0,K1._)`${a} = ${o}`)))}Ab.checkMissingProp=Z9c;function L9c(e,t){e.setParams({missingProperty:t},!0),e.error()}Ab.reportMissingProp=L9c;function hKi(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,K1._)`Object.prototype.hasOwnProperty`})}Ab.hasPropFunc=hKi;function rWr(e,t,r){return(0,K1._)`${hKi(e)}.call(${t}, ${r})`}Ab.isOwnProperty=rWr;function V9c(e,t,r,n){let a=(0,K1._)`${t}${(0,K1.getProperty)(r)} !== undefined`;return n?(0,K1._)`${a} && ${rWr(e,t,r)}`:a}Ab.propertyInData=V9c;function nWr(e,t,r,n){let a=(0,K1._)`${t}${(0,K1.getProperty)(r)} === undefined`;return n?(0,K1.or)(a,(0,K1.not)(rWr(e,t,r))):a}Ab.noPropertyInData=nWr;function mKi(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}Ab.allSchemaProperties=mKi;function W9c(e,t){return mKi(t).filter(r=>!(0,tWr.alwaysValidSchema)(e,t[r]))}Ab.schemaProperties=W9c;function O9c({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:a,errorPath:o},it:l},A,f,I){let C=I?(0,K1._)`${e}, ${t}, ${n}${a}`:t,b=[[Ble.default.instancePath,(0,K1.strConcat)(Ble.default.instancePath,o)],[Ble.default.parentData,l.parentData],[Ble.default.parentDataProperty,l.parentDataProperty],[Ble.default.rootData,Ble.default.rootData]];l.opts.dynamicRef&&b.push([Ble.default.dynamicAnchors,Ble.default.dynamicAnchors]);let E=(0,K1._)`${C}, ${r.object(...b)}`;return f!==K1.nil?(0,K1._)`${A}.call(${f}, ${E})`:(0,K1._)`${A}(${E})`}Ab.callValidateCode=O9c;var P9c=(0,K1._)`new RegExp`;function M9c({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,K1._)`${a.code==="new RegExp"?P9c:(0,G9c.useFunc)(e,a)}(${r}, ${n})`})}Ab.usePattern=M9c;function H9c(e){let{gen:t,data:r,keyword:n,it:a}=e,o=t.name("valid");if(a.allErrors){let A=t.let("valid",!0);return l(()=>t.assign(A,!1)),A}return t.var(o,!0),l(()=>t.break()),o;function l(A){let f=t.const("len",(0,K1._)`${r}.length`);t.forRange("i",0,f,I=>{e.subschema({keyword:n,dataProp:I,dataPropType:tWr.Type.Num},o),t.if((0,K1.not)(o),A)})}}Ab.validateArray=H9c;function Y9c(e){let{gen:t,schema:r,keyword:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(f=>(0,tWr.alwaysValidSchema)(a,f))&&!a.opts.unevaluated)return;let l=t.let("valid",!1),A=t.name("_valid");t.block(()=>r.forEach((f,I)=>{let C=e.subschema({keyword:n,schemaProp:I,compositeRule:!0},A);t.assign(l,(0,K1._)`${l} || ${A}`),e.mergeValidEvaluated(C,A)||t.if((0,K1.not)(l))})),e.result(l,()=>e.reset(),()=>e.error(!0))}Ab.validateUnion=Y9c});var yKi=H(j6=>{"use strict";Object.defineProperty(j6,"__esModule",{value:!0});j6.validateKeywordUsage=j6.validSchemaType=j6.funcKeywordCode=j6.macroKeywordCode=void 0;var lL=Jh(),C_e=Ate(),Q9c=vH(),X9c=UKe();function J9c(e,t){let{gen:r,keyword:n,schema:a,parentSchema:o,it:l}=e,A=t.macro.call(l.self,a,o,l),f=_Ki(r,n,A);l.opts.validateSchema!==!1&&l.self.validateSchema(A,!0);let I=r.name("valid");e.subschema({schema:A,schemaPath:lL.nil,errSchemaPath:`${l.errSchemaPath}/${n}`,topSchemaRef:f,compositeRule:!0},I),e.pass(I,()=>e.error(!0))}j6.macroKeywordCode=J9c;function U9c(e,t){var r;let{gen:n,keyword:a,schema:o,parentSchema:l,$data:A,it:f}=e;j9c(f,t);let I=!A&&t.compile?t.compile.call(f.self,o,l,f):t.validate,C=_Ki(n,a,I),b=n.let("valid");e.block$data(b,E),e.ok((r=t.valid)!==null&&r!==void 0?r:b);function E(){if(t.errors===!1)F(),t.modifying&&CKi(e),Q(()=>e.error());else{let J=t.async?N():B();t.modifying&&CKi(e),Q(()=>K9c(e,J))}}function N(){let J=n.let("ruleErrs",null);return n.try(()=>F((0,lL._)`await `),ae=>n.assign(b,!1).if((0,lL._)`${ae} instanceof ${f.ValidationError}`,()=>n.assign(J,(0,lL._)`${ae}.errors`),()=>n.throw(ae))),J}function B(){let J=(0,lL._)`${C}.errors`;return n.assign(J,null),F(lL.nil),J}function F(J=t.async?(0,lL._)`await `:lL.nil){let ae=f.opts.passContext?C_e.default.this:C_e.default.self,ne=!("compile"in t&&!A||t.schema===!1);n.assign(b,(0,lL._)`${J}${(0,Q9c.callValidateCode)(e,C,ae,ne)}`,t.modifying)}function Q(J){var ae;n.if((0,lL.not)((ae=t.valid)!==null&&ae!==void 0?ae:b),J)}}j6.funcKeywordCode=U9c;function CKi(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,lL._)`${n.parentData}[${n.parentDataProperty}]`))}function K9c(e,t){let{gen:r}=e;r.if((0,lL._)`Array.isArray(${t})`,()=>{r.assign(C_e.default.vErrors,(0,lL._)`${C_e.default.vErrors} === null ? ${t} : ${C_e.default.vErrors}.concat(${t})`).assign(C_e.default.errors,(0,lL._)`${C_e.default.vErrors}.length`),(0,X9c.extendErrors)(e)},()=>e.error())}function j9c({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function _Ki(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,lL.stringify)(r)})}function z9c(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}j6.validSchemaType=z9c;function q9c({schema:e,opts:t,self:r,errSchemaPath:n},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");let l=a.dependencies;if(l?.some(A=>!Object.prototype.hasOwnProperty.call(e,A)))throw new Error(`parent schema must have dependencies of ${o}: ${l.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[o])){let f=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(f);else throw new Error(f)}}j6.validateKeywordUsage=q9c});var EKi=H(wle=>{"use strict";Object.defineProperty(wle,"__esModule",{value:!0});wle.extendSubschemaMode=wle.extendSubschemaData=wle.getSubschema=void 0;var z6=Jh(),bKi=w_();function $9c(e,{keyword:t,schemaProp:r,schema:n,schemaPath:a,errSchemaPath:o,topSchemaRef:l}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let A=e.schema[t];return r===void 0?{schema:A,schemaPath:(0,z6._)`${e.schemaPath}${(0,z6.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:A[r],schemaPath:(0,z6._)`${e.schemaPath}${(0,z6.getProperty)(t)}${(0,z6.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,bKi.escapeFragment)(r)}`}}if(n!==void 0){if(a===void 0||o===void 0||l===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:a,topSchemaRef:l,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}wle.getSubschema=$9c;function eVc(e,t,{dataProp:r,dataPropType:n,data:a,dataTypes:o,propertyName:l}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:A}=t;if(r!==void 0){let{errorPath:I,dataPathArr:C,opts:b}=t,E=A.let("data",(0,z6._)`${t.data}${(0,z6.getProperty)(r)}`,!0);f(E),e.errorPath=(0,z6.str)`${I}${(0,bKi.getErrorPath)(r,n,b.jsPropertySyntax)}`,e.parentDataProperty=(0,z6._)`${r}`,e.dataPathArr=[...C,e.parentDataProperty]}if(a!==void 0){let I=a instanceof z6.Name?a:A.let("data",a,!0);f(I),l!==void 0&&(e.propertyName=l)}o&&(e.dataTypes=o);function f(I){e.data=I,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,I]}}wle.extendSubschemaData=eVc;function tVc(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:a,allErrors:o}){n!==void 0&&(e.compositeRule=n),a!==void 0&&(e.createErrors=a),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}wle.extendSubschemaMode=tVc});var iWr=H((XQu,SKi)=>{"use strict";SKi.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,a,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(a=n;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(a=n;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[a]))return!1;for(a=n;a--!==0;){var l=o[a];if(!e(t[l],r[l]))return!1}return!0}return t!==t&&r!==r}});var BKi=H((JQu,vKi)=>{"use strict";var Tle=vKi.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};_Bt(t,n,a,e,"",e)};Tle.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Tle.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Tle.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Tle.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function _Bt(e,t,r,n,a,o,l,A,f,I){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,a,o,l,A,f,I);for(var C in n){var b=n[C];if(Array.isArray(b)){if(C in Tle.arrayKeywords)for(var E=0;E{"use strict";Object.defineProperty(PV,"__esModule",{value:!0});PV.getSchemaRefs=PV.resolveUrl=PV.normalizeId=PV._getFullPath=PV.getFullPath=PV.inlineRef=void 0;var nVc=w_(),iVc=iWr(),sVc=BKi(),oVc=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function aVc(e,t=!0){return typeof e=="boolean"?!0:t===!0?!sWr(e):t?wKi(e)<=t:!1}PV.inlineRef=aVc;var cVc=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function sWr(e){for(let t in e){if(cVc.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(sWr)||typeof r=="object"&&sWr(r))return!0}return!1}function wKi(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!oVc.has(r)&&(typeof e[r]=="object"&&(0,nVc.eachItem)(e[r],n=>t+=wKi(n)),t===1/0))return 1/0}return t}function TKi(e,t="",r){r!==!1&&(t=Cke(t));let n=e.parse(t);return RKi(e,n)}PV.getFullPath=TKi;function RKi(e,t){return e.serialize(t).split("#")[0]+"#"}PV._getFullPath=RKi;var lVc=/#\/?$/;function Cke(e){return e?e.replace(lVc,""):""}PV.normalizeId=Cke;function uVc(e,t,r){return r=Cke(r),e.resolve(t,r)}PV.resolveUrl=uVc;var gVc=/^[a-z_][-a-z0-9._]*$/i;function AVc(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,a=Cke(e[r]||t),o={"":a},l=TKi(n,a,!1),A={},f=new Set;return sVc(e,{allKeys:!0},(b,E,N,B)=>{if(B===void 0)return;let F=l+E,Q=o[B];typeof b[r]=="string"&&(Q=J.call(this,b[r])),ae.call(this,b.$anchor),ae.call(this,b.$dynamicAnchor),o[E]=Q;function J(ne){let ce=this.opts.uriResolver.resolve;if(ne=Cke(Q?ce(Q,ne):ne),f.has(ne))throw C(ne);f.add(ne);let fe=this.refs[ne];return typeof fe=="string"&&(fe=this.refs[fe]),typeof fe=="object"?I(b,fe.schema,ne):ne!==Cke(F)&&(ne[0]==="#"?(I(b,A[ne],ne),A[ne]=b):this.refs[ne]=F),ne}function ae(ne){if(typeof ne=="string"){if(!gVc.test(ne))throw new Error(`invalid anchor "${ne}"`);J.call(this,`#${ne}`)}}}),A;function I(b,E,N){if(E!==void 0&&!iVc(b,E))throw C(N)}function C(b){return new Error(`reference "${b}" resolves to more than one schema`)}}PV.getSchemaRefs=AVc});var $Ke=H(Rle=>{"use strict";Object.defineProperty(Rle,"__esModule",{value:!0});Rle.getData=Rle.KeywordCxt=Rle.validateFunctionCode=void 0;var GKi=lKi(),NKi=KKe(),aWr=zVr(),yBt=KKe(),dVc=IKi(),qKe=yKi(),oWr=EKi(),Vd=Jh(),uI=Ate(),pVc=jKe(),dte=w_(),zKe=UKe();function fVc(e){if(LKi(e)&&(VKi(e),ZKi(e))){mVc(e);return}FKi(e,()=>(0,GKi.topBoolOrEmptySchema)(e))}Rle.validateFunctionCode=fVc;function FKi({gen:e,validateName:t,schema:r,schemaEnv:n,opts:a},o){a.code.es5?e.func(t,(0,Vd._)`${uI.default.data}, ${uI.default.valCxt}`,n.$async,()=>{e.code((0,Vd._)`"use strict"; ${DKi(r,a)}`),hVc(e,a),e.code(o)}):e.func(t,(0,Vd._)`${uI.default.data}, ${IVc(a)}`,n.$async,()=>e.code(DKi(r,a)).code(o))}function IVc(e){return(0,Vd._)`{${uI.default.instancePath}="", ${uI.default.parentData}, ${uI.default.parentDataProperty}, ${uI.default.rootData}=${uI.default.data}${e.dynamicRef?(0,Vd._)`, ${uI.default.dynamicAnchors}={}`:Vd.nil}}={}`}function hVc(e,t){e.if(uI.default.valCxt,()=>{e.var(uI.default.instancePath,(0,Vd._)`${uI.default.valCxt}.${uI.default.instancePath}`),e.var(uI.default.parentData,(0,Vd._)`${uI.default.valCxt}.${uI.default.parentData}`),e.var(uI.default.parentDataProperty,(0,Vd._)`${uI.default.valCxt}.${uI.default.parentDataProperty}`),e.var(uI.default.rootData,(0,Vd._)`${uI.default.valCxt}.${uI.default.rootData}`),t.dynamicRef&&e.var(uI.default.dynamicAnchors,(0,Vd._)`${uI.default.valCxt}.${uI.default.dynamicAnchors}`)},()=>{e.var(uI.default.instancePath,(0,Vd._)`""`),e.var(uI.default.parentData,(0,Vd._)`undefined`),e.var(uI.default.parentDataProperty,(0,Vd._)`undefined`),e.var(uI.default.rootData,uI.default.data),t.dynamicRef&&e.var(uI.default.dynamicAnchors,(0,Vd._)`{}`)})}function mVc(e){let{schema:t,opts:r,gen:n}=e;FKi(e,()=>{r.$comment&&t.$comment&&OKi(e),EVc(e),n.let(uI.default.vErrors,null),n.let(uI.default.errors,0),r.unevaluated&&CVc(e),WKi(e),BVc(e)})}function CVc(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Vd._)`${r}.evaluated`),t.if((0,Vd._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Vd._)`${e.evaluated}.props`,(0,Vd._)`undefined`)),t.if((0,Vd._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Vd._)`${e.evaluated}.items`,(0,Vd._)`undefined`))}function DKi(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Vd._)`/*# sourceURL=${r} */`:Vd.nil}function _Vc(e,t){if(LKi(e)&&(VKi(e),ZKi(e))){yVc(e,t);return}(0,GKi.boolOrEmptySchema)(e,t)}function ZKi({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function LKi(e){return typeof e.schema!="boolean"}function yVc(e,t){let{schema:r,gen:n,opts:a}=e;a.$comment&&r.$comment&&OKi(e),SVc(e),vVc(e);let o=n.const("_errs",uI.default.errors);WKi(e,o),n.var(t,(0,Vd._)`${o} === ${uI.default.errors}`)}function VKi(e){(0,dte.checkUnknownRules)(e),bVc(e)}function WKi(e,t){if(e.opts.jtd)return kKi(e,[],!1,t);let r=(0,NKi.getSchemaTypes)(e.schema),n=(0,NKi.coerceAndCheckDataType)(e,r);kKi(e,r,!n,t)}function bVc(e){let{schema:t,errSchemaPath:r,opts:n,self:a}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,dte.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function EVc(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,dte.checkStrictMode)(e,"default is ignored in the schema root")}function SVc(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,pVc.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function vVc(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function OKi({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:a}){let o=r.$comment;if(a.$comment===!0)e.code((0,Vd._)`${uI.default.self}.logger.log(${o})`);else if(typeof a.$comment=="function"){let l=(0,Vd.str)`${n}/$comment`,A=e.scopeValue("root",{ref:t.root});e.code((0,Vd._)`${uI.default.self}.opts.$comment(${o}, ${l}, ${A}.schema)`)}}function BVc(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:a,opts:o}=e;r.$async?t.if((0,Vd._)`${uI.default.errors} === 0`,()=>t.return(uI.default.data),()=>t.throw((0,Vd._)`new ${a}(${uI.default.vErrors})`)):(t.assign((0,Vd._)`${n}.errors`,uI.default.vErrors),o.unevaluated&&wVc(e),t.return((0,Vd._)`${uI.default.errors} === 0`))}function wVc({gen:e,evaluated:t,props:r,items:n}){r instanceof Vd.Name&&e.assign((0,Vd._)`${t}.props`,r),n instanceof Vd.Name&&e.assign((0,Vd._)`${t}.items`,n)}function kKi(e,t,r,n){let{gen:a,schema:o,data:l,allErrors:A,opts:f,self:I}=e,{RULES:C}=I;if(o.$ref&&(f.ignoreKeywordsWithRef||!(0,dte.schemaHasRulesButRef)(o,C))){a.block(()=>MKi(e,"$ref",C.all.$ref.definition));return}f.jtd||TVc(e,t),a.block(()=>{for(let E of C.rules)b(E);b(C.post)});function b(E){(0,aWr.shouldUseGroup)(o,E)&&(E.type?(a.if((0,yBt.checkDataType)(E.type,l,f.strictNumbers)),xKi(e,E),t.length===1&&t[0]===E.type&&r&&(a.else(),(0,yBt.reportTypeError)(e)),a.endIf()):xKi(e,E),A||a.if((0,Vd._)`${uI.default.errors} === ${n||0}`))}}function xKi(e,t){let{gen:r,schema:n,opts:{useDefaults:a}}=e;a&&(0,dVc.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,aWr.shouldUseRule)(n,o)&&MKi(e,o.keyword,o.definition,t.type)})}function TVc(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(RVc(e,t),e.opts.allowUnionTypes||NVc(e,t),DVc(e,e.dataTypes))}function RVc(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{PKi(e.dataTypes,r)||cWr(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),xVc(e,t)}}function NVc(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&cWr(e,"use allowUnionTypes to allow union type keyword")}function DVc(e,t){let r=e.self.RULES.all;for(let n in r){let a=r[n];if(typeof a=="object"&&(0,aWr.shouldUseRule)(e.schema,a)){let{type:o}=a.definition;o.length&&!o.some(l=>kVc(t,l))&&cWr(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function kVc(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function PKi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function xVc(e,t){let r=[];for(let n of e.dataTypes)PKi(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function cWr(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,dte.checkStrictMode)(e,t,e.opts.strictTypes)}var bBt=class{constructor(t,r,n){if((0,qKe.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,dte.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",HKi(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,qKe.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",uI.default.errors))}result(t,r,n){this.failResult((0,Vd.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Vd.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Vd._)`${r} !== undefined && (${(0,Vd.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?zKe.reportExtraError:zKe.reportError)(this,this.def.error,r)}$dataError(){(0,zKe.reportError)(this,this.def.$dataError||zKe.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,zKe.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Vd.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Vd.nil,r=Vd.nil){if(!this.$data)return;let{gen:n,schemaCode:a,schemaType:o,def:l}=this;n.if((0,Vd.or)((0,Vd._)`${a} === undefined`,r)),t!==Vd.nil&&n.assign(t,!0),(o.length||l.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Vd.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:a,it:o}=this;return(0,Vd.or)(l(),A());function l(){if(n.length){if(!(r instanceof Vd.Name))throw new Error("ajv implementation error");let f=Array.isArray(n)?n:[n];return(0,Vd._)`${(0,yBt.checkDataTypes)(f,r,o.opts.strictNumbers,yBt.DataType.Wrong)}`}return Vd.nil}function A(){if(a.validateSchema){let f=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,Vd._)`!${f}(${r})`}return Vd.nil}}subschema(t,r){let n=(0,oWr.getSubschema)(this.it,t);(0,oWr.extendSubschemaData)(n,this.it,t),(0,oWr.extendSubschemaMode)(n,t);let a={...this.it,...n,items:void 0,props:void 0};return _Vc(a,r),a}mergeEvaluated(t,r){let{it:n,gen:a}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=dte.mergeEvaluated.props(a,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=dte.mergeEvaluated.items(a,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:a}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,Vd.Name)),!0}};Rle.KeywordCxt=bBt;function MKi(e,t,r,n){let a=new bBt(e,r,t);"code"in r?r.code(a,n):a.$data&&r.validate?(0,qKe.funcKeywordCode)(a,r):"macro"in r?(0,qKe.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,qKe.funcKeywordCode)(a,r)}var GVc=/^\/(?:[^~]|~0|~1)*$/,FVc=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function HKi(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let a,o;if(e==="")return uI.default.rootData;if(e[0]==="/"){if(!GVc.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=uI.default.rootData}else{let I=FVc.exec(e);if(!I)throw new Error(`Invalid JSON-pointer: ${e}`);let C=+I[1];if(a=I[2],a==="#"){if(C>=t)throw new Error(f("property/index",C));return n[t-C]}if(C>t)throw new Error(f("data",C));if(o=r[t-C],!a)return o}let l=o,A=a.split("/");for(let I of A)I&&(o=(0,Vd._)`${o}${(0,Vd.getProperty)((0,dte.unescapeJsonPointer)(I))}`,l=(0,Vd._)`${l} && ${o}`);return l;function f(I,C){return`Cannot access ${I} ${C} levels up, current level is ${t}`}}Rle.getData=HKi});var EBt=H(uWr=>{"use strict";Object.defineProperty(uWr,"__esModule",{value:!0});var lWr=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};uWr.default=lWr});var e8e=H(dWr=>{"use strict";Object.defineProperty(dWr,"__esModule",{value:!0});var gWr=jKe(),AWr=class extends Error{constructor(t,r,n,a){super(a||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,gWr.resolveUrl)(t,r,n),this.missingSchema=(0,gWr.normalizeId)((0,gWr.getFullPath)(t,this.missingRef))}};dWr.default=AWr});var vBt=H(BH=>{"use strict";Object.defineProperty(BH,"__esModule",{value:!0});BH.resolveSchema=BH.getCompilingSchema=BH.resolveRef=BH.compileSchema=BH.SchemaEnv=void 0;var G4=Jh(),ZVc=EBt(),__e=Ate(),F4=jKe(),YKi=w_(),LVc=$Ke(),_ke=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,F4.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};BH.SchemaEnv=_ke;function fWr(e){let t=QKi.call(this,e);if(t)return t;let r=(0,F4.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:a}=this.opts.code,{ownProperties:o}=this.opts,l=new G4.CodeGen(this.scope,{es5:n,lines:a,ownProperties:o}),A;e.$async&&(A=l.scopeValue("Error",{ref:ZVc.default,code:(0,G4._)`require("ajv/dist/runtime/validation_error").default`}));let f=l.scopeName("validate");e.validateName=f;let I={gen:l,allErrors:this.opts.allErrors,data:__e.default.data,parentData:__e.default.parentData,parentDataProperty:__e.default.parentDataProperty,dataNames:[__e.default.data],dataPathArr:[G4.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:l.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,G4.stringify)(e.schema)}:{ref:e.schema}),validateName:f,ValidationError:A,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:G4.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,G4._)`""`,opts:this.opts,self:this},C;try{this._compilations.add(e),(0,LVc.validateFunctionCode)(I),l.optimize(this.opts.code.optimize);let b=l.toString();C=`${l.scopeRefs(__e.default.scope)}return ${b}`,this.opts.code.process&&(C=this.opts.code.process(C,e));let N=new Function(`${__e.default.self}`,`${__e.default.scope}`,C)(this,this.scope.get());if(this.scope.value(f,{ref:N}),N.errors=null,N.schema=e.schema,N.schemaEnv=e,e.$async&&(N.$async=!0),this.opts.code.source===!0&&(N.source={validateName:f,validateCode:b,scopeValues:l._values}),this.opts.unevaluated){let{props:B,items:F}=I;N.evaluated={props:B instanceof G4.Name?void 0:B,items:F instanceof G4.Name?void 0:F,dynamicProps:B instanceof G4.Name,dynamicItems:F instanceof G4.Name},N.source&&(N.source.evaluated=(0,G4.stringify)(N.evaluated))}return e.validate=N,e}catch(b){throw delete e.validate,delete e.validateName,C&&this.logger.error("Error compiling schema, function code:",C),b}finally{this._compilations.delete(e)}}BH.compileSchema=fWr;function VVc(e,t,r){var n;r=(0,F4.resolveUrl)(this.opts.uriResolver,t,r);let a=e.refs[r];if(a)return a;let o=PVc.call(this,e,r);if(o===void 0){let l=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:A}=this.opts;l&&(o=new _ke({schema:l,schemaId:A,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=WVc.call(this,o)}BH.resolveRef=VVc;function WVc(e){return(0,F4.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:fWr.call(this,e)}function QKi(e){for(let t of this._compilations)if(OVc(t,e))return t}BH.getCompilingSchema=QKi;function OVc(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function PVc(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||SBt.call(this,e,t)}function SBt(e,t){let r=this.opts.uriResolver.parse(t),n=(0,F4._getFullPath)(this.opts.uriResolver,r),a=(0,F4.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===a)return pWr.call(this,r,e);let o=(0,F4.normalizeId)(n),l=this.refs[o]||this.schemas[o];if(typeof l=="string"){let A=SBt.call(this,e,l);return typeof A?.schema!="object"?void 0:pWr.call(this,r,A)}if(typeof l?.schema=="object"){if(l.validate||fWr.call(this,l),o===(0,F4.normalizeId)(t)){let{schema:A}=l,{schemaId:f}=this.opts,I=A[f];return I&&(a=(0,F4.resolveUrl)(this.opts.uriResolver,a,I)),new _ke({schema:A,schemaId:f,root:e,baseId:a})}return pWr.call(this,r,l)}}BH.resolveSchema=SBt;var MVc=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function pWr(e,{baseId:t,schema:r,root:n}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(let A of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let f=r[(0,YKi.unescapeFragment)(A)];if(f===void 0)return;r=f;let I=typeof r=="object"&&r[this.opts.schemaId];!MVc.has(A)&&I&&(t=(0,F4.resolveUrl)(this.opts.uriResolver,t,I))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,YKi.schemaHasRulesButRef)(r,this.RULES)){let A=(0,F4.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=SBt.call(this,n,A)}let{schemaId:l}=this.opts;if(o=o||new _ke({schema:r,schemaId:l,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var XKi=H(($Qu,HVc)=>{HVc.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var UKi=H((eXu,JKi)=>{"use strict";var YVc={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};JKi.exports={HEX:YVc}});var r8i=H((tXu,t8i)=>{"use strict";var{HEX:QVc}=UKi();function qKi(e){if(e8i(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[r]=t;return r?{host:JVc(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function IWr(e,t=!1){let r="",n=!0;for(let a of e){if(QVc[a]===void 0)return;a!=="0"&&n===!0&&(n=!1),n||(r+=a)}return t&&r.length===0&&(r="0"),r}function XVc(e){let t=0,r={error:!1,address:"",zone:""},n=[],a=[],o=!1,l=!1,A=!1;function f(){if(a.length){if(o===!1){let I=IWr(a);if(I!==void 0)n.push(I);else return r.error=!0,!1}a.length=0}return!0}for(let I=0;I7){r.error=!0;break}I-1>=0&&e[I-1]===":"&&(l=!0);continue}else if(C==="%"){if(!f())break;o=!0}else{a.push(C);continue}}return a.length&&(o?r.zone=a.join(""):A?n.push(a.join("")):n.push(IWr(a))),r.address=n.join(""),r}function $Ki(e,t={}){if(e8i(e,":")<2)return{host:e,isIPV6:!1};let r=XVc(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,a=r.address;return r.zone&&(n+="%"+r.zone,a+="%25"+r.zone),{host:n,escapedHost:a,isIPV6:!0}}}function JVc(e,t){let r="",n=!0,a=e.length;for(let o=0;o{"use strict";var qVc=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,$Vc=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function n8i(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function i8i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function s8i(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function eWc(e){return e.secure=n8i(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function tWc(e){if((e.port===(n8i(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function rWc(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match($Vc);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let a=`${n}:${t.nid||e.nid}`,o=hWr[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function nWc(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),a=`${r}:${t.nid||n}`,o=hWr[a];o&&(e=o.serialize(e,t));let l=e,A=e.nss;return l.path=`${n||t.nid}:${A}`,t.skipEscape=!0,l}function iWc(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!qVc.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function sWc(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var o8i={scheme:"http",domainHost:!0,parse:i8i,serialize:s8i},oWc={scheme:"https",domainHost:o8i.domainHost,parse:i8i,serialize:s8i},BBt={scheme:"ws",domainHost:!0,parse:eWc,serialize:tWc},aWc={scheme:"wss",domainHost:BBt.domainHost,parse:BBt.parse,serialize:BBt.serialize},cWc={scheme:"urn",parse:rWc,serialize:nWc,skipNormalize:!0},lWc={scheme:"urn:uuid",parse:iWc,serialize:sWc,skipNormalize:!0},hWr={http:o8i,https:oWc,ws:BBt,wss:aWc,urn:cWc,"urn:uuid":lWc};a8i.exports=hWr});var u8i=H((nXu,TBt)=>{"use strict";var{normalizeIPv6:uWc,normalizeIPv4:gWc,removeDotSegments:t8e,recomposeAuthority:AWc,normalizeComponentEncoding:wBt}=r8i(),mWr=c8i();function dWc(e,t){return typeof e=="string"?e=q6(pte(e,t),t):typeof e=="object"&&(e=pte(q6(e,t),t)),e}function pWc(e,t,r){let n=Object.assign({scheme:"null"},r),a=l8i(pte(e,n),pte(t,n),n,!0);return q6(a,{...n,skipEscape:!0})}function l8i(e,t,r,n){let a={};return n||(e=pte(q6(e,r),r),t=pte(q6(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=t8e(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=t8e(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=t8e(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=t8e(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function fWc(e,t,r){return typeof e=="string"?(e=unescape(e),e=q6(wBt(pte(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=q6(wBt(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=q6(wBt(pte(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=q6(wBt(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function q6(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),a=[],o=mWr[(n.scheme||r.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");let l=AWc(r,n);if(l!==void 0&&(n.reference!=="suffix"&&a.push("//"),a.push(l),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let A=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(A=t8e(A)),l===void 0&&(A=A.replace(/^\/\//u,"/%2F")),a.push(A)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}var IWc=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function hWc(e){let t=0;for(let r=0,n=e.length;r126||IWc[t])return!0;return!1}var mWc=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function pte(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1,o=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let l=e.match(mWc);if(l){if(n.scheme=l[1],n.userinfo=l[3],n.host=l[4],n.port=parseInt(l[5],10),n.path=l[6]||"",n.query=l[7],n.fragment=l[8],isNaN(n.port)&&(n.port=l[5]),n.host){let f=gWc(n.host);if(f.isIPV4===!1){let I=uWc(f.host,{isIPV4:!1});n.host=I.host.toLowerCase(),o=I.isIPV6}else n.host=f.host,o=!0}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let A=mWr[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!A||!A.unicodeSupport)&&n.host&&(r.domainHost||A&&A.domainHost)&&o===!1&&hWc(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(f){n.error=n.error||"Host's domain name can not be converted to ASCII: "+f}(!A||A&&!A.skipNormalize)&&(a&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),a&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),A&&A.parse&&A.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var CWr={SCHEMES:mWr,normalize:dWc,resolve:pWc,resolveComponents:l8i,equal:fWc,serialize:q6,parse:pte};TBt.exports=CWr;TBt.exports.default=CWr;TBt.exports.fastUri=CWr});var A8i=H(_Wr=>{"use strict";Object.defineProperty(_Wr,"__esModule",{value:!0});var g8i=u8i();g8i.code='require("ajv/dist/runtime/uri").default';_Wr.default=g8i});var _8i=H(ix=>{"use strict";Object.defineProperty(ix,"__esModule",{value:!0});ix.CodeGen=ix.Name=ix.nil=ix.stringify=ix.str=ix._=ix.KeywordCxt=void 0;var CWc=$Ke();Object.defineProperty(ix,"KeywordCxt",{enumerable:!0,get:function(){return CWc.KeywordCxt}});var yke=Jh();Object.defineProperty(ix,"_",{enumerable:!0,get:function(){return yke._}});Object.defineProperty(ix,"str",{enumerable:!0,get:function(){return yke.str}});Object.defineProperty(ix,"stringify",{enumerable:!0,get:function(){return yke.stringify}});Object.defineProperty(ix,"nil",{enumerable:!0,get:function(){return yke.nil}});Object.defineProperty(ix,"Name",{enumerable:!0,get:function(){return yke.Name}});Object.defineProperty(ix,"CodeGen",{enumerable:!0,get:function(){return yke.CodeGen}});var _Wc=EBt(),h8i=e8e(),yWc=jVr(),r8e=vBt(),bWc=Jh(),n8e=jKe(),RBt=KKe(),bWr=w_(),d8i=XKi(),EWc=A8i(),m8i=(e,t)=>new RegExp(e,t);m8i.code="new RegExp";var SWc=["removeAdditional","useDefaults","coerceTypes"],vWc=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),BWc={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},wWc={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},p8i=200;function TWc(e){var t,r,n,a,o,l,A,f,I,C,b,E,N,B,F,Q,J,ae,ne,ce,fe,ue,de,be,Se;let De=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,tt=k===!0||k===void 0?1:k||0,ze=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:m8i,Le=(a=e.uriResolver)!==null&&a!==void 0?a:EWc.default;return{strictSchema:(l=(o=e.strictSchema)!==null&&o!==void 0?o:De)!==null&&l!==void 0?l:!0,strictNumbers:(f=(A=e.strictNumbers)!==null&&A!==void 0?A:De)!==null&&f!==void 0?f:!0,strictTypes:(C=(I=e.strictTypes)!==null&&I!==void 0?I:De)!==null&&C!==void 0?C:"log",strictTuples:(E=(b=e.strictTuples)!==null&&b!==void 0?b:De)!==null&&E!==void 0?E:"log",strictRequired:(B=(N=e.strictRequired)!==null&&N!==void 0?N:De)!==null&&B!==void 0?B:!1,code:e.code?{...e.code,optimize:tt,regExp:ze}:{optimize:tt,regExp:ze},loopRequired:(F=e.loopRequired)!==null&&F!==void 0?F:p8i,loopEnum:(Q=e.loopEnum)!==null&&Q!==void 0?Q:p8i,meta:(J=e.meta)!==null&&J!==void 0?J:!0,messages:(ae=e.messages)!==null&&ae!==void 0?ae:!0,inlineRefs:(ne=e.inlineRefs)!==null&&ne!==void 0?ne:!0,schemaId:(ce=e.schemaId)!==null&&ce!==void 0?ce:"$id",addUsedSchema:(fe=e.addUsedSchema)!==null&&fe!==void 0?fe:!0,validateSchema:(ue=e.validateSchema)!==null&&ue!==void 0?ue:!0,validateFormats:(de=e.validateFormats)!==null&&de!==void 0?de:!0,unicodeRegExp:(be=e.unicodeRegExp)!==null&&be!==void 0?be:!0,int32range:(Se=e.int32range)!==null&&Se!==void 0?Se:!0,uriResolver:Le}}var i8e=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...TWc(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new bWc.ValueScope({scope:{},prefixes:vWc,es5:r,lines:n}),this.logger=GWc(t.logger);let a=t.validateFormats;t.validateFormats=!1,this.RULES=(0,yWc.getRules)(),f8i.call(this,BWc,t,"NOT SUPPORTED"),f8i.call(this,wWc,t,"DEPRECATED","warn"),this._metaOpts=kWc.call(this),t.formats&&NWc.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&DWc.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),RWc.call(this),t.validateFormats=a}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,a=d8i;n==="id"&&(a={...d8i},a.id=a.$id,delete a.$id),r&&t&&this.addMetaSchema(a,a[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let a=n(r);return"$async"in n||(this.errors=n.errors),a}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return a.call(this,t,r);async function a(C,b){await o.call(this,C.$schema);let E=this._addSchema(C,b);return E.validate||l.call(this,E)}async function o(C){C&&!this.getSchema(C)&&await a.call(this,{$ref:C},!0)}async function l(C){try{return this._compileSchemaEnv(C)}catch(b){if(!(b instanceof h8i.default))throw b;return A.call(this,b),await f.call(this,b.missingSchema),l.call(this,C)}}function A({missingSchema:C,missingRef:b}){if(this.refs[C])throw new Error(`AnySchema ${C} is loaded but ${b} cannot be resolved`)}async function f(C){let b=await I.call(this,C);this.refs[C]||await o.call(this,b.$schema),this.refs[C]||this.addSchema(b,C,r)}async function I(C){let b=this._loading[C];if(b)return b;try{return await(this._loading[C]=n(C))}finally{delete this._loading[C]}}}addSchema(t,r,n,a=this.opts.validateSchema){if(Array.isArray(t)){for(let l of t)this.addSchema(l,void 0,n,a);return this}let o;if(typeof t=="object"){let{schemaId:l}=this.opts;if(o=t[l],o!==void 0&&typeof o!="string")throw new Error(`schema ${l} must be string`)}return r=(0,n8e.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,a,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let a=this.validate(n,t);if(!a&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return a}getSchema(t){let r;for(;typeof(r=I8i.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,a=new r8e.SchemaEnv({schema:{},schemaId:n});if(r=r8e.resolveSchema.call(this,a,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=I8i.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,n8e.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(ZWc.call(this,n,r),!r)return(0,bWr.eachItem)(n,o=>yWr.call(this,o)),this;VWc.call(this,r);let a={...r,type:(0,RBt.getJSONTypes)(r.type),schemaType:(0,RBt.getJSONTypes)(r.schemaType)};return(0,bWr.eachItem)(n,a.type.length===0?o=>yWr.call(this,o,a):o=>a.type.forEach(l=>yWr.call(this,o,a,l))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let a=n.rules.findIndex(o=>o.keyword===t);a>=0&&n.rules.splice(a,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(a=>`${n}${a.instancePath} ${a.message}`).reduce((a,o)=>a+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let a of r){let o=a.split("/").slice(1),l=t;for(let A of o)l=l[A];for(let A in n){let f=n[A];if(typeof f!="object")continue;let{$data:I}=f.definition,C=l[A];I&&C&&(l[A]=C8i(C))}}return t}_removeAllSchemas(t,r){for(let n in t){let a=t[n];(!r||r.test(n))&&(typeof a=="string"?delete t[n]:a&&!a.meta&&(this._cache.delete(a.schema),delete t[n]))}}_addSchema(t,r,n,a=this.opts.validateSchema,o=this.opts.addUsedSchema){let l,{schemaId:A}=this.opts;if(typeof t=="object")l=t[A];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let f=this._cache.get(t);if(f!==void 0)return f;n=(0,n8e.normalizeId)(l||n);let I=n8e.getSchemaRefs.call(this,t,n);return f=new r8e.SchemaEnv({schema:t,schemaId:A,meta:r,baseId:n,localRefs:I}),this._cache.set(f.schema,f),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=f),a&&this.validateSchema(t,!0),f}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):r8e.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{r8e.compileSchema.call(this,t)}finally{this.opts=r}}};i8e.ValidationError=_Wc.default;i8e.MissingRefError=h8i.default;ix.default=i8e;function f8i(e,t,r,n="error"){for(let a in e){let o=a;o in t&&this.logger[n](`${r}: option ${a}. ${e[o]}`)}}function I8i(e){return e=(0,n8e.normalizeId)(e),this.schemas[e]||this.refs[e]}function RWc(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function NWc(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function DWc(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function kWc(){let e={...this.opts};for(let t of SWc)delete e[t];return e}var xWc={log(){},warn(){},error(){}};function GWc(e){if(e===!1)return xWc;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var FWc=/^[a-z_$][a-z0-9_$:-]*$/i;function ZWc(e,t){let{RULES:r}=this;if((0,bWr.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!FWc.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function yWr(e,t,r){var n;let a=t?.post;if(r&&a)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,l=a?o.post:o.rules.find(({type:f})=>f===r);if(l||(l={type:r,rules:[]},o.rules.push(l)),o.keywords[e]=!0,!t)return;let A={keyword:e,definition:{...t,type:(0,RBt.getJSONTypes)(t.type),schemaType:(0,RBt.getJSONTypes)(t.schemaType)}};t.before?LWc.call(this,l,A,t.before):l.rules.push(A),o.all[e]=A,(n=t.implements)===null||n===void 0||n.forEach(f=>this.addKeyword(f))}function LWc(e,t,r){let n=e.rules.findIndex(a=>a.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function VWc(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=C8i(t)),e.validateSchema=this.compile(t,!0))}var WWc={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function C8i(e){return{anyOf:[e,WWc]}}});var y8i=H(EWr=>{"use strict";Object.defineProperty(EWr,"__esModule",{value:!0});var OWc={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};EWr.default=OWc});var v8i=H(y_e=>{"use strict";Object.defineProperty(y_e,"__esModule",{value:!0});y_e.callRef=y_e.getValidate=void 0;var PWc=e8e(),b8i=vH(),MV=Jh(),bke=Ate(),E8i=vBt(),NBt=w_(),MWc={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:a,schemaEnv:o,validateName:l,opts:A,self:f}=n,{root:I}=o;if((r==="#"||r==="#/")&&a===I.baseId)return b();let C=E8i.resolveRef.call(f,I,a,r);if(C===void 0)throw new PWc.default(n.opts.uriResolver,a,r);if(C instanceof E8i.SchemaEnv)return E(C);return N(C);function b(){if(o===I)return DBt(e,l,o,o.$async);let B=t.scopeValue("root",{ref:I});return DBt(e,(0,MV._)`${B}.validate`,I,I.$async)}function E(B){let F=S8i(e,B);DBt(e,F,B,B.$async)}function N(B){let F=t.scopeValue("schema",A.code.source===!0?{ref:B,code:(0,MV.stringify)(B)}:{ref:B}),Q=t.name("valid"),J=e.subschema({schema:B,dataTypes:[],schemaPath:MV.nil,topSchemaRef:F,errSchemaPath:r},Q);e.mergeEvaluated(J),e.ok(Q)}}};function S8i(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,MV._)`${r.scopeValue("wrapper",{ref:t})}.validate`}y_e.getValidate=S8i;function DBt(e,t,r,n){let{gen:a,it:o}=e,{allErrors:l,schemaEnv:A,opts:f}=o,I=f.passContext?bke.default.this:MV.nil;n?C():b();function C(){if(!A.$async)throw new Error("async schema referenced by sync schema");let B=a.let("valid");a.try(()=>{a.code((0,MV._)`await ${(0,b8i.callValidateCode)(e,t,I)}`),N(t),l||a.assign(B,!0)},F=>{a.if((0,MV._)`!(${F} instanceof ${o.ValidationError})`,()=>a.throw(F)),E(F),l||a.assign(B,!1)}),e.ok(B)}function b(){e.result((0,b8i.callValidateCode)(e,t,I),()=>N(t),()=>E(t))}function E(B){let F=(0,MV._)`${B}.errors`;a.assign(bke.default.vErrors,(0,MV._)`${bke.default.vErrors} === null ? ${F} : ${bke.default.vErrors}.concat(${F})`),a.assign(bke.default.errors,(0,MV._)`${bke.default.vErrors}.length`)}function N(B){var F;if(!o.opts.unevaluated)return;let Q=(F=r?.validate)===null||F===void 0?void 0:F.evaluated;if(o.props!==!0)if(Q&&!Q.dynamicProps)Q.props!==void 0&&(o.props=NBt.mergeEvaluated.props(a,Q.props,o.props));else{let J=a.var("props",(0,MV._)`${B}.evaluated.props`);o.props=NBt.mergeEvaluated.props(a,J,o.props,MV.Name)}if(o.items!==!0)if(Q&&!Q.dynamicItems)Q.items!==void 0&&(o.items=NBt.mergeEvaluated.items(a,Q.items,o.items));else{let J=a.var("items",(0,MV._)`${B}.evaluated.items`);o.items=NBt.mergeEvaluated.items(a,J,o.items,MV.Name)}}}y_e.callRef=DBt;y_e.default=MWc});var B8i=H(SWr=>{"use strict";Object.defineProperty(SWr,"__esModule",{value:!0});var HWc=y8i(),YWc=v8i(),QWc=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",HWc.default,YWc.default];SWr.default=QWc});var w8i=H(vWr=>{"use strict";Object.defineProperty(vWr,"__esModule",{value:!0});var kBt=Jh(),Nle=kBt.operators,xBt={maximum:{okStr:"<=",ok:Nle.LTE,fail:Nle.GT},minimum:{okStr:">=",ok:Nle.GTE,fail:Nle.LT},exclusiveMaximum:{okStr:"<",ok:Nle.LT,fail:Nle.GTE},exclusiveMinimum:{okStr:">",ok:Nle.GT,fail:Nle.LTE}},XWc={message:({keyword:e,schemaCode:t})=>(0,kBt.str)`must be ${xBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,kBt._)`{comparison: ${xBt[e].okStr}, limit: ${t}}`},JWc={keyword:Object.keys(xBt),type:"number",schemaType:"number",$data:!0,error:XWc,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,kBt._)`${r} ${xBt[t].fail} ${n} || isNaN(${r})`)}};vWr.default=JWc});var T8i=H(BWr=>{"use strict";Object.defineProperty(BWr,"__esModule",{value:!0});var s8e=Jh(),UWc={message:({schemaCode:e})=>(0,s8e.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,s8e._)`{multipleOf: ${e}}`},KWc={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:UWc,code(e){let{gen:t,data:r,schemaCode:n,it:a}=e,o=a.opts.multipleOfPrecision,l=t.let("res"),A=o?(0,s8e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${o}`:(0,s8e._)`${l} !== parseInt(${l})`;e.fail$data((0,s8e._)`(${n} === 0 || (${l} = ${r}/${n}, ${A}))`)}};BWr.default=KWc});var N8i=H(wWr=>{"use strict";Object.defineProperty(wWr,"__esModule",{value:!0});function R8i(e){let t=e.length,r=0,n=0,a;for(;n=55296&&a<=56319&&n{"use strict";Object.defineProperty(TWr,"__esModule",{value:!0});var b_e=Jh(),jWc=w_(),zWc=N8i(),qWc={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,b_e.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,b_e._)`{limit: ${e}}`},$Wc={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:qWc,code(e){let{keyword:t,data:r,schemaCode:n,it:a}=e,o=t==="maxLength"?b_e.operators.GT:b_e.operators.LT,l=a.opts.unicode===!1?(0,b_e._)`${r}.length`:(0,b_e._)`${(0,jWc.useFunc)(e.gen,zWc.default)}(${r})`;e.fail$data((0,b_e._)`${l} ${o} ${n}`)}};TWr.default=$Wc});var k8i=H(RWr=>{"use strict";Object.defineProperty(RWr,"__esModule",{value:!0});var eOc=vH(),GBt=Jh(),tOc={message:({schemaCode:e})=>(0,GBt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,GBt._)`{pattern: ${e}}`},rOc={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:tOc,code(e){let{data:t,$data:r,schema:n,schemaCode:a,it:o}=e,l=o.opts.unicodeRegExp?"u":"",A=r?(0,GBt._)`(new RegExp(${a}, ${l}))`:(0,eOc.usePattern)(e,n);e.fail$data((0,GBt._)`!${A}.test(${t})`)}};RWr.default=rOc});var x8i=H(NWr=>{"use strict";Object.defineProperty(NWr,"__esModule",{value:!0});var o8e=Jh(),nOc={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,o8e.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,o8e._)`{limit: ${e}}`},iOc={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:nOc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxProperties"?o8e.operators.GT:o8e.operators.LT;e.fail$data((0,o8e._)`Object.keys(${r}).length ${a} ${n}`)}};NWr.default=iOc});var G8i=H(DWr=>{"use strict";Object.defineProperty(DWr,"__esModule",{value:!0});var a8e=vH(),c8e=Jh(),sOc=w_(),oOc={message:({params:{missingProperty:e}})=>(0,c8e.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,c8e._)`{missingProperty: ${e}}`},aOc={keyword:"required",type:"object",schemaType:"array",$data:!0,error:oOc,code(e){let{gen:t,schema:r,schemaCode:n,data:a,$data:o,it:l}=e,{opts:A}=l;if(!o&&r.length===0)return;let f=r.length>=A.loopRequired;if(l.allErrors?I():C(),A.strictRequired){let N=e.parentSchema.properties,{definedProperties:B}=e.it;for(let F of r)if(N?.[F]===void 0&&!B.has(F)){let Q=l.schemaEnv.baseId+l.errSchemaPath,J=`required property "${F}" is not defined at "${Q}" (strictRequired)`;(0,sOc.checkStrictMode)(l,J,l.opts.strictRequired)}}function I(){if(f||o)e.block$data(c8e.nil,b);else for(let N of r)(0,a8e.checkReportMissingProp)(e,N)}function C(){let N=t.let("missing");if(f||o){let B=t.let("valid",!0);e.block$data(B,()=>E(N,B)),e.ok(B)}else t.if((0,a8e.checkMissingProp)(e,r,N)),(0,a8e.reportMissingProp)(e,N),t.else()}function b(){t.forOf("prop",n,N=>{e.setParams({missingProperty:N}),t.if((0,a8e.noPropertyInData)(t,a,N,A.ownProperties),()=>e.error())})}function E(N,B){e.setParams({missingProperty:N}),t.forOf(N,n,()=>{t.assign(B,(0,a8e.propertyInData)(t,a,N,A.ownProperties)),t.if((0,c8e.not)(B),()=>{e.error(),t.break()})},c8e.nil)}}};DWr.default=aOc});var F8i=H(kWr=>{"use strict";Object.defineProperty(kWr,"__esModule",{value:!0});var l8e=Jh(),cOc={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,l8e.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,l8e._)`{limit: ${e}}`},lOc={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:cOc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxItems"?l8e.operators.GT:l8e.operators.LT;e.fail$data((0,l8e._)`${r}.length ${a} ${n}`)}};kWr.default=lOc});var FBt=H(xWr=>{"use strict";Object.defineProperty(xWr,"__esModule",{value:!0});var Z8i=iWr();Z8i.code='require("ajv/dist/runtime/equal").default';xWr.default=Z8i});var L8i=H(FWr=>{"use strict";Object.defineProperty(FWr,"__esModule",{value:!0});var GWr=KKe(),sx=Jh(),uOc=w_(),gOc=FBt(),AOc={message:({params:{i:e,j:t}})=>(0,sx.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,sx._)`{i: ${e}, j: ${t}}`},dOc={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:AOc,code(e){let{gen:t,data:r,$data:n,schema:a,parentSchema:o,schemaCode:l,it:A}=e;if(!n&&!a)return;let f=t.let("valid"),I=o.items?(0,GWr.getSchemaTypes)(o.items):[];e.block$data(f,C,(0,sx._)`${l} === false`),e.ok(f);function C(){let B=t.let("i",(0,sx._)`${r}.length`),F=t.let("j");e.setParams({i:B,j:F}),t.assign(f,!0),t.if((0,sx._)`${B} > 1`,()=>(b()?E:N)(B,F))}function b(){return I.length>0&&!I.some(B=>B==="object"||B==="array")}function E(B,F){let Q=t.name("item"),J=(0,GWr.checkDataTypes)(I,Q,A.opts.strictNumbers,GWr.DataType.Wrong),ae=t.const("indices",(0,sx._)`{}`);t.for((0,sx._)`;${B}--;`,()=>{t.let(Q,(0,sx._)`${r}[${B}]`),t.if(J,(0,sx._)`continue`),I.length>1&&t.if((0,sx._)`typeof ${Q} == "string"`,(0,sx._)`${Q} += "_"`),t.if((0,sx._)`typeof ${ae}[${Q}] == "number"`,()=>{t.assign(F,(0,sx._)`${ae}[${Q}]`),e.error(),t.assign(f,!1).break()}).code((0,sx._)`${ae}[${Q}] = ${B}`)})}function N(B,F){let Q=(0,uOc.useFunc)(t,gOc.default),J=t.name("outer");t.label(J).for((0,sx._)`;${B}--;`,()=>t.for((0,sx._)`${F} = ${B}; ${F}--;`,()=>t.if((0,sx._)`${Q}(${r}[${B}], ${r}[${F}])`,()=>{e.error(),t.assign(f,!1).break(J)})))}}};FWr.default=dOc});var V8i=H(LWr=>{"use strict";Object.defineProperty(LWr,"__esModule",{value:!0});var ZWr=Jh(),pOc=w_(),fOc=FBt(),IOc={message:"must be equal to constant",params:({schemaCode:e})=>(0,ZWr._)`{allowedValue: ${e}}`},hOc={keyword:"const",$data:!0,error:IOc,code(e){let{gen:t,data:r,$data:n,schemaCode:a,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,ZWr._)`!${(0,pOc.useFunc)(t,fOc.default)}(${r}, ${a})`):e.fail((0,ZWr._)`${o} !== ${r}`)}};LWr.default=hOc});var W8i=H(VWr=>{"use strict";Object.defineProperty(VWr,"__esModule",{value:!0});var u8e=Jh(),mOc=w_(),COc=FBt(),_Oc={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,u8e._)`{allowedValues: ${e}}`},yOc={keyword:"enum",schemaType:"array",$data:!0,error:_Oc,code(e){let{gen:t,data:r,$data:n,schema:a,schemaCode:o,it:l}=e;if(!n&&a.length===0)throw new Error("enum must have non-empty array");let A=a.length>=l.opts.loopEnum,f,I=()=>f??(f=(0,mOc.useFunc)(t,COc.default)),C;if(A||n)C=t.let("valid"),e.block$data(C,b);else{if(!Array.isArray(a))throw new Error("ajv implementation error");let N=t.const("vSchema",o);C=(0,u8e.or)(...a.map((B,F)=>E(N,F)))}e.pass(C);function b(){t.assign(C,!1),t.forOf("v",o,N=>t.if((0,u8e._)`${I()}(${r}, ${N})`,()=>t.assign(C,!0).break()))}function E(N,B){let F=a[B];return typeof F=="object"&&F!==null?(0,u8e._)`${I()}(${r}, ${N}[${B}])`:(0,u8e._)`${r} === ${F}`}}};VWr.default=yOc});var O8i=H(WWr=>{"use strict";Object.defineProperty(WWr,"__esModule",{value:!0});var bOc=w8i(),EOc=T8i(),SOc=D8i(),vOc=k8i(),BOc=x8i(),wOc=G8i(),TOc=F8i(),ROc=L8i(),NOc=V8i(),DOc=W8i(),kOc=[bOc.default,EOc.default,SOc.default,vOc.default,BOc.default,wOc.default,TOc.default,ROc.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},NOc.default,DOc.default];WWr.default=kOc});var PWr=H(g8e=>{"use strict";Object.defineProperty(g8e,"__esModule",{value:!0});g8e.validateAdditionalItems=void 0;var E_e=Jh(),OWr=w_(),xOc={message:({params:{len:e}})=>(0,E_e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,E_e._)`{limit: ${e}}`},GOc={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:xOc,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,OWr.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}P8i(e,n)}};function P8i(e,t){let{gen:r,schema:n,data:a,keyword:o,it:l}=e;l.items=!0;let A=r.const("len",(0,E_e._)`${a}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,E_e._)`${A} <= ${t.length}`);else if(typeof n=="object"&&!(0,OWr.alwaysValidSchema)(l,n)){let I=r.var("valid",(0,E_e._)`${A} <= ${t.length}`);r.if((0,E_e.not)(I),()=>f(I)),e.ok(I)}function f(I){r.forRange("i",t.length,A,C=>{e.subschema({keyword:o,dataProp:C,dataPropType:OWr.Type.Num},I),l.allErrors||r.if((0,E_e.not)(I),()=>r.break())})}}g8e.validateAdditionalItems=P8i;g8e.default=GOc});var MWr=H(A8e=>{"use strict";Object.defineProperty(A8e,"__esModule",{value:!0});A8e.validateTuple=void 0;var M8i=Jh(),ZBt=w_(),FOc=vH(),ZOc={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return H8i(e,"additionalItems",t);r.items=!0,!(0,ZBt.alwaysValidSchema)(r,t)&&e.ok((0,FOc.validateArray)(e))}};function H8i(e,t,r=e.schema){let{gen:n,parentSchema:a,data:o,keyword:l,it:A}=e;C(a),A.opts.unevaluated&&r.length&&A.items!==!0&&(A.items=ZBt.mergeEvaluated.items(n,r.length,A.items));let f=n.name("valid"),I=n.const("len",(0,M8i._)`${o}.length`);r.forEach((b,E)=>{(0,ZBt.alwaysValidSchema)(A,b)||(n.if((0,M8i._)`${I} > ${E}`,()=>e.subschema({keyword:l,schemaProp:E,dataProp:E},f)),e.ok(f))});function C(b){let{opts:E,errSchemaPath:N}=A,B=r.length,F=B===b.minItems&&(B===b.maxItems||b[t]===!1);if(E.strictTuples&&!F){let Q=`"${l}" is ${B}-tuple, but minItems or maxItems/${t} are not specified or different at path "${N}"`;(0,ZBt.checkStrictMode)(A,Q,E.strictTuples)}}}A8e.validateTuple=H8i;A8e.default=ZOc});var Y8i=H(HWr=>{"use strict";Object.defineProperty(HWr,"__esModule",{value:!0});var LOc=MWr(),VOc={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,LOc.validateTuple)(e,"items")};HWr.default=VOc});var X8i=H(YWr=>{"use strict";Object.defineProperty(YWr,"__esModule",{value:!0});var Q8i=Jh(),WOc=w_(),OOc=vH(),POc=PWr(),MOc={message:({params:{len:e}})=>(0,Q8i.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Q8i._)`{limit: ${e}}`},HOc={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:MOc,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:a}=r;n.items=!0,!(0,WOc.alwaysValidSchema)(n,t)&&(a?(0,POc.validateAdditionalItems)(e,a):e.ok((0,OOc.validateArray)(e)))}};YWr.default=HOc});var J8i=H(QWr=>{"use strict";Object.defineProperty(QWr,"__esModule",{value:!0});var wH=Jh(),LBt=w_(),YOc={message:({params:{min:e,max:t}})=>t===void 0?(0,wH.str)`must contain at least ${e} valid item(s)`:(0,wH.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,wH._)`{minContains: ${e}}`:(0,wH._)`{minContains: ${e}, maxContains: ${t}}`},QOc={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:YOc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e,l,A,{minContains:f,maxContains:I}=n;o.opts.next?(l=f===void 0?1:f,A=I):l=1;let C=t.const("len",(0,wH._)`${a}.length`);if(e.setParams({min:l,max:A}),A===void 0&&l===0){(0,LBt.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(A!==void 0&&l>A){(0,LBt.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,LBt.alwaysValidSchema)(o,r)){let F=(0,wH._)`${C} >= ${l}`;A!==void 0&&(F=(0,wH._)`${F} && ${C} <= ${A}`),e.pass(F);return}o.items=!0;let b=t.name("valid");A===void 0&&l===1?N(b,()=>t.if(b,()=>t.break())):l===0?(t.let(b,!0),A!==void 0&&t.if((0,wH._)`${a}.length > 0`,E)):(t.let(b,!1),E()),e.result(b,()=>e.reset());function E(){let F=t.name("_valid"),Q=t.let("count",0);N(F,()=>t.if(F,()=>B(Q)))}function N(F,Q){t.forRange("i",0,C,J=>{e.subschema({keyword:"contains",dataProp:J,dataPropType:LBt.Type.Num,compositeRule:!0},F),Q()})}function B(F){t.code((0,wH._)`${F}++`),A===void 0?t.if((0,wH._)`${F} >= ${l}`,()=>t.assign(b,!0).break()):(t.if((0,wH._)`${F} > ${A}`,()=>t.assign(b,!1).break()),l===1?t.assign(b,!0):t.if((0,wH._)`${F} >= ${l}`,()=>t.assign(b,!0)))}}};QWr.default=QOc});var j8i=H($6=>{"use strict";Object.defineProperty($6,"__esModule",{value:!0});$6.validateSchemaDeps=$6.validatePropertyDeps=$6.error=void 0;var XWr=Jh(),XOc=w_(),d8e=vH();$6.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,XWr.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,XWr._)`{property: ${e}, missingProperty: ${n}, depsCount: ${t}, - deps: ${r}}`};var jWc={keyword:"dependencies",type:"object",schemaType:"object",error:q6.error,code(e){let[t,r]=zWc(e);J8i(e,t),U8i(e,r)}};function zWc({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let a=Array.isArray(e[n])?t:r;a[n]=e[n]}return[t,r]}function J8i(e,t=e.schema){let{gen:r,data:n,it:a}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let l in t){let A=t[l];if(A.length===0)continue;let f=(0,p8e.propertyInData)(r,n,l,a.opts.ownProperties);e.setParams({property:l,depsCount:A.length,deps:A.join(", ")}),a.allErrors?r.if(f,()=>{for(let I of A)(0,p8e.checkReportMissingProp)(e,I)}):(r.if((0,OWr._)`${f} && (${(0,p8e.checkMissingProp)(e,A,o)})`),(0,p8e.reportMissingProp)(e,o),r.else())}}q6.validatePropertyDeps=J8i;function U8i(e,t=e.schema){let{gen:r,data:n,keyword:a,it:o}=e,l=r.name("valid");for(let A in t)(0,KWc.alwaysValidSchema)(o,t[A])||(r.if((0,p8e.propertyInData)(r,n,A,o.opts.ownProperties),()=>{let f=e.subschema({keyword:a,schemaProp:A},l);e.mergeValidEvaluated(f,l)},()=>r.var(l,!0)),e.ok(l))}q6.validateSchemaDeps=U8i;q6.default=jWc});var z8i=H(PWr=>{"use strict";Object.defineProperty(PWr,"__esModule",{value:!0});var j8i=Jh(),qWc=B_(),$Wc={message:"property name must be valid",params:({params:e})=>(0,j8i._)`{propertyName: ${e.propertyName}}`},eOc={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:$Wc,code(e){let{gen:t,schema:r,data:n,it:a}=e;if((0,qWc.alwaysValidSchema)(a,r))return;let o=t.name("valid");t.forIn("key",n,l=>{e.setParams({propertyName:l}),e.subschema({keyword:"propertyNames",data:l,dataTypes:["string"],propertyName:l,compositeRule:!0},o),t.if((0,j8i.not)(o),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(o)}};PWr.default=eOc});var HWr=H(MWr=>{"use strict";Object.defineProperty(MWr,"__esModule",{value:!0});var VBt=SH(),F4=Jh(),tOc=gte(),WBt=B_(),rOc={message:"must NOT have additional properties",params:({params:e})=>(0,F4._)`{additionalProperty: ${e.additionalProperty}}`},nOc={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:rOc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,errsCount:o,it:l}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:A,opts:f}=l;if(l.props=!0,f.removeAdditional!=="all"&&(0,WBt.alwaysValidSchema)(l,r))return;let I=(0,VBt.allSchemaProperties)(n.properties),C=(0,VBt.allSchemaProperties)(n.patternProperties);b(),e.ok((0,F4._)`${o} === ${tOc.default.errors}`);function b(){t.forIn("key",a,Q=>{!I.length&&!C.length?B(Q):t.if(E(Q),()=>B(Q))})}function E(Q){let J;if(I.length>8){let ae=(0,WBt.schemaRefOrVal)(l,n.properties,"properties");J=(0,VBt.isOwnProperty)(t,ae,Q)}else I.length?J=(0,F4.or)(...I.map(ae=>(0,F4._)`${Q} === ${ae}`)):J=F4.nil;return C.length&&(J=(0,F4.or)(J,...C.map(ae=>(0,F4._)`${(0,VBt.usePattern)(e,ae)}.test(${Q})`))),(0,F4.not)(J)}function N(Q){t.code((0,F4._)`delete ${a}[${Q}]`)}function B(Q){if(f.removeAdditional==="all"||f.removeAdditional&&r===!1){N(Q);return}if(r===!1){e.setParams({additionalProperty:Q}),e.error(),A||t.break();return}if(typeof r=="object"&&!(0,WBt.alwaysValidSchema)(l,r)){let J=t.name("valid");f.removeAdditional==="failing"?(F(Q,J,!1),t.if((0,F4.not)(J),()=>{e.reset(),N(Q)})):(F(Q,J),A||t.if((0,F4.not)(J),()=>t.break()))}}function F(Q,J,ae){let ne={keyword:"additionalProperties",dataProp:Q,dataPropType:WBt.Type.Str};ae===!1&&Object.assign(ne,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(ne,J)}}};MWr.default=nOc});var e6i=H(QWr=>{"use strict";Object.defineProperty(QWr,"__esModule",{value:!0});var iOc=e8e(),q8i=SH(),YWr=B_(),$8i=HWr(),sOc={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&$8i.default.code(new iOc.KeywordCxt(o,$8i.default,"additionalProperties"));let l=(0,q8i.allSchemaProperties)(r);for(let b of l)o.definedProperties.add(b);o.opts.unevaluated&&l.length&&o.props!==!0&&(o.props=YWr.mergeEvaluated.props(t,(0,YWr.toHash)(l),o.props));let A=l.filter(b=>!(0,YWr.alwaysValidSchema)(o,r[b]));if(A.length===0)return;let f=t.name("valid");for(let b of A)I(b)?C(b):(t.if((0,q8i.propertyInData)(t,a,b,o.opts.ownProperties)),C(b),o.allErrors||t.else().var(f,!0),t.endIf()),e.it.definedProperties.add(b),e.ok(f);function I(b){return o.opts.useDefaults&&!o.compositeRule&&r[b].default!==void 0}function C(b){e.subschema({keyword:"properties",schemaProp:b,dataProp:b},f)}}};QWr.default=sOc});var i6i=H(XWr=>{"use strict";Object.defineProperty(XWr,"__esModule",{value:!0});var t6i=SH(),OBt=Jh(),r6i=B_(),n6i=B_(),oOc={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:a,it:o}=e,{opts:l}=o,A=(0,t6i.allSchemaProperties)(r),f=A.filter(F=>(0,r6i.alwaysValidSchema)(o,r[F]));if(A.length===0||f.length===A.length&&(!o.opts.unevaluated||o.props===!0))return;let I=l.strictSchema&&!l.allowMatchingProperties&&a.properties,C=t.name("valid");o.props!==!0&&!(o.props instanceof OBt.Name)&&(o.props=(0,n6i.evaluatedPropsToName)(t,o.props));let{props:b}=o;E();function E(){for(let F of A)I&&N(F),o.allErrors?B(F):(t.var(C,!0),B(F),t.if(C))}function N(F){for(let Q in I)new RegExp(F).test(Q)&&(0,r6i.checkStrictMode)(o,`property ${Q} matches pattern ${F} (use allowMatchingProperties)`)}function B(F){t.forIn("key",n,Q=>{t.if((0,OBt._)`${(0,t6i.usePattern)(e,F)}.test(${Q})`,()=>{let J=f.includes(F);J||e.subschema({keyword:"patternProperties",schemaProp:F,dataProp:Q,dataPropType:n6i.Type.Str},C),o.opts.unevaluated&&b!==!0?t.assign((0,OBt._)`${b}[${Q}]`,!0):!J&&!o.allErrors&&t.if((0,OBt.not)(C),()=>t.break())})})}}};XWr.default=oOc});var s6i=H(JWr=>{"use strict";Object.defineProperty(JWr,"__esModule",{value:!0});var aOc=B_(),cOc={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,aOc.alwaysValidSchema)(n,r)){e.fail();return}let a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};JWr.default=cOc});var o6i=H(UWr=>{"use strict";Object.defineProperty(UWr,"__esModule",{value:!0});var lOc=SH(),uOc={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:lOc.validateUnion,error:{message:"must match a schema in anyOf"}};UWr.default=uOc});var a6i=H(KWr=>{"use strict";Object.defineProperty(KWr,"__esModule",{value:!0});var PBt=Jh(),gOc=B_(),AOc={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,PBt._)`{passingSchemas: ${e.passing}}`},dOc={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:AOc,code(e){let{gen:t,schema:r,parentSchema:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&n.discriminator)return;let o=r,l=t.let("valid",!1),A=t.let("passing",null),f=t.name("_valid");e.setParams({passing:A}),t.block(I),e.result(l,()=>e.reset(),()=>e.error(!0));function I(){o.forEach((C,b)=>{let E;(0,gOc.alwaysValidSchema)(a,C)?t.var(f,!0):E=e.subschema({keyword:"oneOf",schemaProp:b,compositeRule:!0},f),b>0&&t.if((0,PBt._)`${f} && ${l}`).assign(l,!1).assign(A,(0,PBt._)`[${A}, ${b}]`).else(),t.if(f,()=>{t.assign(l,!0),t.assign(A,b),E&&e.mergeEvaluated(E,PBt.Name)})})}}};KWr.default=dOc});var c6i=H(jWr=>{"use strict";Object.defineProperty(jWr,"__esModule",{value:!0});var pOc=B_(),fOc={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let a=t.name("valid");r.forEach((o,l)=>{if((0,pOc.alwaysValidSchema)(n,o))return;let A=e.subschema({keyword:"allOf",schemaProp:l},a);e.ok(a),e.mergeEvaluated(A)})}};jWr.default=fOc});var g6i=H(zWr=>{"use strict";Object.defineProperty(zWr,"__esModule",{value:!0});var MBt=Jh(),u6i=B_(),IOc={message:({params:e})=>(0,MBt.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,MBt._)`{failingKeyword: ${e.ifClause}}`},hOc={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:IOc,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,u6i.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let a=l6i(n,"then"),o=l6i(n,"else");if(!a&&!o)return;let l=t.let("valid",!0),A=t.name("_valid");if(f(),e.reset(),a&&o){let C=t.let("ifClause");e.setParams({ifClause:C}),t.if(A,I("then",C),I("else",C))}else a?t.if(A,I("then")):t.if((0,MBt.not)(A),I("else"));e.pass(l,()=>e.error(!0));function f(){let C=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},A);e.mergeEvaluated(C)}function I(C,b){return()=>{let E=e.subschema({keyword:C},A);t.assign(l,A),e.mergeValidEvaluated(E,l),b?t.assign(b,(0,MBt._)`${C}`):e.setParams({ifClause:C})}}}};function l6i(e,t){let r=e.schema[t];return r!==void 0&&!(0,u6i.alwaysValidSchema)(e,r)}zWr.default=hOc});var A6i=H(qWr=>{"use strict";Object.defineProperty(qWr,"__esModule",{value:!0});var mOc=B_(),COc={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,mOc.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};qWr.default=COc});var d6i=H($Wr=>{"use strict";Object.defineProperty($Wr,"__esModule",{value:!0});var _Oc=FWr(),yOc=H8i(),bOc=ZWr(),EOc=Q8i(),SOc=X8i(),vOc=K8i(),BOc=z8i(),wOc=HWr(),TOc=e6i(),ROc=i6i(),NOc=s6i(),DOc=o6i(),kOc=a6i(),xOc=c6i(),GOc=g6i(),FOc=A6i();function ZOc(e=!1){let t=[NOc.default,DOc.default,kOc.default,xOc.default,GOc.default,FOc.default,BOc.default,wOc.default,vOc.default,TOc.default,ROc.default];return e?t.push(yOc.default,EOc.default):t.push(_Oc.default,bOc.default),t.push(SOc.default),t}$Wr.default=ZOc});var p6i=H(eOr=>{"use strict";Object.defineProperty(eOr,"__esModule",{value:!0});var gw=Jh(),LOc={message:({schemaCode:e})=>(0,gw.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,gw._)`{format: ${e}}`},VOc={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:LOc,code(e,t){let{gen:r,data:n,$data:a,schema:o,schemaCode:l,it:A}=e,{opts:f,errSchemaPath:I,schemaEnv:C,self:b}=A;if(!f.validateFormats)return;a?E():N();function E(){let B=r.scopeValue("formats",{ref:b.formats,code:f.code.formats}),F=r.const("fDef",(0,gw._)`${B}[${l}]`),Q=r.let("fType"),J=r.let("format");r.if((0,gw._)`typeof ${F} == "object" && !(${F} instanceof RegExp)`,()=>r.assign(Q,(0,gw._)`${F}.type || "string"`).assign(J,(0,gw._)`${F}.validate`),()=>r.assign(Q,(0,gw._)`"string"`).assign(J,F)),e.fail$data((0,gw.or)(ae(),ne()));function ae(){return f.strictSchema===!1?gw.nil:(0,gw._)`${l} && !${J}`}function ne(){let ce=C.$async?(0,gw._)`(${F}.async ? await ${J}(${n}) : ${J}(${n}))`:(0,gw._)`${J}(${n})`,fe=(0,gw._)`(typeof ${J} == "function" ? ${ce} : ${J}.test(${n}))`;return(0,gw._)`${J} && ${J} !== true && ${Q} === ${t} && !${fe}`}}function N(){let B=b.formats[o];if(!B){ae();return}if(B===!0)return;let[F,Q,J]=ne(B);F===t&&e.pass(ce());function ae(){if(f.strictSchema===!1){b.logger.warn(fe());return}throw new Error(fe());function fe(){return`unknown format "${o}" ignored in schema at path "${I}"`}}function ne(fe){let ue=fe instanceof RegExp?(0,gw.regexpCode)(fe):f.code.formats?(0,gw._)`${f.code.formats}${(0,gw.getProperty)(o)}`:void 0,de=r.scopeValue("formats",{key:o,ref:fe,code:ue});return typeof fe=="object"&&!(fe instanceof RegExp)?[fe.type||"string",fe.validate,(0,gw._)`${de}.validate`]:["string",fe,de]}function ce(){if(typeof B=="object"&&!(B instanceof RegExp)&&B.async){if(!C.$async)throw new Error("async format in sync schema");return(0,gw._)`await ${J}(${n})`}return typeof Q=="function"?(0,gw._)`${J}(${n})`:(0,gw._)`${J}.test(${n})`}}}};eOr.default=VOc});var f6i=H(tOr=>{"use strict";Object.defineProperty(tOr,"__esModule",{value:!0});var WOc=p6i(),OOc=[WOc.default];tOr.default=OOc});var I6i=H(Eke=>{"use strict";Object.defineProperty(Eke,"__esModule",{value:!0});Eke.contentVocabulary=Eke.metadataVocabulary=void 0;Eke.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Eke.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var m6i=H(rOr=>{"use strict";Object.defineProperty(rOr,"__esModule",{value:!0});var POc=v8i(),MOc=W8i(),HOc=d6i(),YOc=f6i(),h6i=I6i(),QOc=[POc.default,MOc.default,(0,HOc.default)(),YOc.default,h6i.metadataVocabulary,h6i.contentVocabulary];rOr.default=QOc});var _6i=H(HBt=>{"use strict";Object.defineProperty(HBt,"__esModule",{value:!0});HBt.DiscrError=void 0;var C6i;(function(e){e.Tag="tag",e.Mapping="mapping"})(C6i||(HBt.DiscrError=C6i={}))});var b6i=H(iOr=>{"use strict";Object.defineProperty(iOr,"__esModule",{value:!0});var Ske=Jh(),nOr=_6i(),y6i=vBt(),XOc=t8e(),JOc=B_(),UOc={message:({params:{discrError:e,tagName:t}})=>e===nOr.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,Ske._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},KOc={keyword:"discriminator",type:"object",schemaType:"object",error:UOc,code(e){let{gen:t,data:r,schema:n,parentSchema:a,it:o}=e,{oneOf:l}=a;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let A=n.propertyName;if(typeof A!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!l)throw new Error("discriminator: requires oneOf keyword");let f=t.let("valid",!1),I=t.const("tag",(0,Ske._)`${r}${(0,Ske.getProperty)(A)}`);t.if((0,Ske._)`typeof ${I} == "string"`,()=>C(),()=>e.error(!1,{discrError:nOr.DiscrError.Tag,tag:I,tagName:A})),e.ok(f);function C(){let N=E();t.if(!1);for(let B in N)t.elseIf((0,Ske._)`${I} === ${B}`),t.assign(f,b(N[B]));t.else(),e.error(!1,{discrError:nOr.DiscrError.Mapping,tag:I,tagName:A}),t.endIf()}function b(N){let B=t.name("valid"),F=e.subschema({keyword:"oneOf",schemaProp:N},B);return e.mergeEvaluated(F,Ske.Name),B}function E(){var N;let B={},F=J(a),Q=!0;for(let ce=0;ce{jOc.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var oOr=H((K1,sOr)=>{"use strict";Object.defineProperty(K1,"__esModule",{value:!0});K1.MissingRefError=K1.ValidationError=K1.CodeGen=K1.Name=K1.nil=K1.stringify=K1.str=K1._=K1.KeywordCxt=K1.Ajv=void 0;var zOc=C8i(),qOc=m6i(),$Oc=b6i(),S6i=E6i(),ePc=["/properties"],YBt="http://json-schema.org/draft-07/schema",vke=class extends zOc.default{_addVocabularies(){super._addVocabularies(),qOc.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword($Oc.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(S6i,ePc):S6i;this.addMetaSchema(t,YBt,!1),this.refs["http://json-schema.org/schema"]=YBt}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(YBt)?YBt:void 0)}};K1.Ajv=vke;sOr.exports=K1=vke;sOr.exports.Ajv=vke;Object.defineProperty(K1,"__esModule",{value:!0});K1.default=vke;var tPc=e8e();Object.defineProperty(K1,"KeywordCxt",{enumerable:!0,get:function(){return tPc.KeywordCxt}});var Bke=Jh();Object.defineProperty(K1,"_",{enumerable:!0,get:function(){return Bke._}});Object.defineProperty(K1,"str",{enumerable:!0,get:function(){return Bke.str}});Object.defineProperty(K1,"stringify",{enumerable:!0,get:function(){return Bke.stringify}});Object.defineProperty(K1,"nil",{enumerable:!0,get:function(){return Bke.nil}});Object.defineProperty(K1,"Name",{enumerable:!0,get:function(){return Bke.Name}});Object.defineProperty(K1,"CodeGen",{enumerable:!0,get:function(){return Bke.CodeGen}});var rPc=EBt();Object.defineProperty(K1,"ValidationError",{enumerable:!0,get:function(){return rPc.default}});var nPc=t8e();Object.defineProperty(K1,"MissingRefError",{enumerable:!0,get:function(){return nPc.default}})});var k6i=H(ej=>{"use strict";Object.defineProperty(ej,"__esModule",{value:!0});ej.formatNames=ej.fastFormats=ej.fullFormats=void 0;function $6(e,t){return{validate:e,compare:t}}ej.fullFormats={date:$6(T6i,uOr),time:$6(cOr(!0),gOr),"date-time":$6(v6i(!0),N6i),"iso-time":$6(cOr(),R6i),"iso-date-time":$6(v6i(),D6i),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:lPc,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:IPc,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:uPc,int32:{type:"number",validate:dPc},int64:{type:"number",validate:pPc},float:{type:"number",validate:w6i},double:{type:"number",validate:w6i},password:!0,binary:!0};ej.fastFormats={...ej.fullFormats,date:$6(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,uOr),time:$6(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,gOr),"date-time":$6(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,N6i),"iso-time":$6(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,R6i),"iso-date-time":$6(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,D6i),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};ej.formatNames=Object.keys(ej.fullFormats);function iPc(e){return e%4===0&&(e%100!==0||e%400===0)}var sPc=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,oPc=[0,31,28,31,30,31,30,31,31,30,31,30,31];function T6i(e){let t=sPc.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],a=+t[3];return n>=1&&n<=12&&a>=1&&a<=(n===2&&iPc(r)?29:oPc[n])}function uOr(e,t){if(e&&t)return e>t?1:e23||C>59||e&&!A)return!1;if(a<=23&&o<=59&&l<60)return!0;let b=o-C*f,E=a-I*f-(b<0?1:0);return(E===23||E===-1)&&(b===59||b===-1)&&l<61}}function gOr(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function R6i(e,t){if(!(e&&t))return;let r=aOr.exec(e),n=aOr.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=gPc}function pPc(e){return Number.isInteger(e)}function w6i(){return!0}var fPc=/[^\\]\\Z/;function IPc(e){if(fPc.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var x6i=H(wke=>{"use strict";Object.defineProperty(wke,"__esModule",{value:!0});wke.formatLimitDefinition=void 0;var hPc=oOr(),Z4=Jh(),Nle=Z4.operators,QBt={formatMaximum:{okStr:"<=",ok:Nle.LTE,fail:Nle.GT},formatMinimum:{okStr:">=",ok:Nle.GTE,fail:Nle.LT},formatExclusiveMaximum:{okStr:"<",ok:Nle.LT,fail:Nle.GTE},formatExclusiveMinimum:{okStr:">",ok:Nle.GT,fail:Nle.LTE}},mPc={message:({keyword:e,schemaCode:t})=>(0,Z4.str)`should be ${QBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Z4._)`{comparison: ${QBt[e].okStr}, limit: ${t}}`};wke.formatLimitDefinition={keyword:Object.keys(QBt),type:"string",schemaType:"string",$data:!0,error:mPc,code(e){let{gen:t,data:r,schemaCode:n,keyword:a,it:o}=e,{opts:l,self:A}=o;if(!l.validateFormats)return;let f=new hPc.KeywordCxt(o,A.RULES.all.format.definition,"format");f.$data?I():C();function I(){let E=t.scopeValue("formats",{ref:A.formats,code:l.code.formats}),N=t.const("fmt",(0,Z4._)`${E}[${f.schemaCode}]`);e.fail$data((0,Z4.or)((0,Z4._)`typeof ${N} != "object"`,(0,Z4._)`${N} instanceof RegExp`,(0,Z4._)`typeof ${N}.compare != "function"`,b(N)))}function C(){let E=f.schema,N=A.formats[E];if(!N||N===!0)return;if(typeof N!="object"||N instanceof RegExp||typeof N.compare!="function")throw new Error(`"${a}": format "${E}" does not define "compare" function`);let B=t.scopeValue("formats",{key:E,ref:N,code:l.code.formats?(0,Z4._)`${l.code.formats}${(0,Z4.getProperty)(E)}`:void 0});e.fail$data(b(B))}function b(E){return(0,Z4._)`${E}.compare(${r}, ${n}) ${QBt[a].fail} 0`}},dependencies:["format"]};var CPc=e=>(e.addKeyword(wke.formatLimitDefinition),e);wke.default=CPc});var L6i=H((f8e,Z6i)=>{"use strict";Object.defineProperty(f8e,"__esModule",{value:!0});var Tke=k6i(),_Pc=x6i(),AOr=Jh(),G6i=new AOr.Name("fullFormats"),yPc=new AOr.Name("fastFormats"),dOr=(e,t={keywords:!0})=>{if(Array.isArray(t))return F6i(e,t,Tke.fullFormats,G6i),e;let[r,n]=t.mode==="fast"?[Tke.fastFormats,yPc]:[Tke.fullFormats,G6i],a=t.formats||Tke.formatNames;return F6i(e,a,r,n),t.keywords&&(0,_Pc.default)(e),e};dOr.get=(e,t="full")=>{let n=(t==="fast"?Tke.fastFormats:Tke.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function F6i(e,t,r,n){var a,o;(a=(o=e.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,AOr._)`require("ajv-formats/dist/formats").${n}`);for(let l of t)e.addFormat(l,r[l])}Z6i.exports=f8e=dOr;Object.defineProperty(f8e,"__esModule",{value:!0});f8e.default=dOr});var vy=H(XBt=>{"use strict";Object.defineProperty(XBt,"__esModule",{value:!0});XBt.isFunction=void 0;function bPc(e){return typeof e=="function"}XBt.isFunction=bPc});var Dle=H(JBt=>{"use strict";Object.defineProperty(JBt,"__esModule",{value:!0});JBt.createErrorClass=void 0;function EPc(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}JBt.createErrorClass=EPc});var pOr=H(UBt=>{"use strict";Object.defineProperty(UBt,"__esModule",{value:!0});UBt.UnsubscriptionError=void 0;var SPc=Dle();UBt.UnsubscriptionError=SPc.createErrorClass(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: + deps: ${r}}`};var JOc={keyword:"dependencies",type:"object",schemaType:"object",error:$6.error,code(e){let[t,r]=UOc(e);U8i(e,t),K8i(e,r)}};function UOc({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let a=Array.isArray(e[n])?t:r;a[n]=e[n]}return[t,r]}function U8i(e,t=e.schema){let{gen:r,data:n,it:a}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let l in t){let A=t[l];if(A.length===0)continue;let f=(0,d8e.propertyInData)(r,n,l,a.opts.ownProperties);e.setParams({property:l,depsCount:A.length,deps:A.join(", ")}),a.allErrors?r.if(f,()=>{for(let I of A)(0,d8e.checkReportMissingProp)(e,I)}):(r.if((0,XWr._)`${f} && (${(0,d8e.checkMissingProp)(e,A,o)})`),(0,d8e.reportMissingProp)(e,o),r.else())}}$6.validatePropertyDeps=U8i;function K8i(e,t=e.schema){let{gen:r,data:n,keyword:a,it:o}=e,l=r.name("valid");for(let A in t)(0,XOc.alwaysValidSchema)(o,t[A])||(r.if((0,d8e.propertyInData)(r,n,A,o.opts.ownProperties),()=>{let f=e.subschema({keyword:a,schemaProp:A},l);e.mergeValidEvaluated(f,l)},()=>r.var(l,!0)),e.ok(l))}$6.validateSchemaDeps=K8i;$6.default=JOc});var q8i=H(JWr=>{"use strict";Object.defineProperty(JWr,"__esModule",{value:!0});var z8i=Jh(),KOc=w_(),jOc={message:"property name must be valid",params:({params:e})=>(0,z8i._)`{propertyName: ${e.propertyName}}`},zOc={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:jOc,code(e){let{gen:t,schema:r,data:n,it:a}=e;if((0,KOc.alwaysValidSchema)(a,r))return;let o=t.name("valid");t.forIn("key",n,l=>{e.setParams({propertyName:l}),e.subschema({keyword:"propertyNames",data:l,dataTypes:["string"],propertyName:l,compositeRule:!0},o),t.if((0,z8i.not)(o),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(o)}};JWr.default=zOc});var KWr=H(UWr=>{"use strict";Object.defineProperty(UWr,"__esModule",{value:!0});var VBt=vH(),Z4=Jh(),qOc=Ate(),WBt=w_(),$Oc={message:"must NOT have additional properties",params:({params:e})=>(0,Z4._)`{additionalProperty: ${e.additionalProperty}}`},ePc={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:$Oc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,errsCount:o,it:l}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:A,opts:f}=l;if(l.props=!0,f.removeAdditional!=="all"&&(0,WBt.alwaysValidSchema)(l,r))return;let I=(0,VBt.allSchemaProperties)(n.properties),C=(0,VBt.allSchemaProperties)(n.patternProperties);b(),e.ok((0,Z4._)`${o} === ${qOc.default.errors}`);function b(){t.forIn("key",a,Q=>{!I.length&&!C.length?B(Q):t.if(E(Q),()=>B(Q))})}function E(Q){let J;if(I.length>8){let ae=(0,WBt.schemaRefOrVal)(l,n.properties,"properties");J=(0,VBt.isOwnProperty)(t,ae,Q)}else I.length?J=(0,Z4.or)(...I.map(ae=>(0,Z4._)`${Q} === ${ae}`)):J=Z4.nil;return C.length&&(J=(0,Z4.or)(J,...C.map(ae=>(0,Z4._)`${(0,VBt.usePattern)(e,ae)}.test(${Q})`))),(0,Z4.not)(J)}function N(Q){t.code((0,Z4._)`delete ${a}[${Q}]`)}function B(Q){if(f.removeAdditional==="all"||f.removeAdditional&&r===!1){N(Q);return}if(r===!1){e.setParams({additionalProperty:Q}),e.error(),A||t.break();return}if(typeof r=="object"&&!(0,WBt.alwaysValidSchema)(l,r)){let J=t.name("valid");f.removeAdditional==="failing"?(F(Q,J,!1),t.if((0,Z4.not)(J),()=>{e.reset(),N(Q)})):(F(Q,J),A||t.if((0,Z4.not)(J),()=>t.break()))}}function F(Q,J,ae){let ne={keyword:"additionalProperties",dataProp:Q,dataPropType:WBt.Type.Str};ae===!1&&Object.assign(ne,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(ne,J)}}};UWr.default=ePc});var t6i=H(zWr=>{"use strict";Object.defineProperty(zWr,"__esModule",{value:!0});var tPc=$Ke(),$8i=vH(),jWr=w_(),e6i=KWr(),rPc={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&e6i.default.code(new tPc.KeywordCxt(o,e6i.default,"additionalProperties"));let l=(0,$8i.allSchemaProperties)(r);for(let b of l)o.definedProperties.add(b);o.opts.unevaluated&&l.length&&o.props!==!0&&(o.props=jWr.mergeEvaluated.props(t,(0,jWr.toHash)(l),o.props));let A=l.filter(b=>!(0,jWr.alwaysValidSchema)(o,r[b]));if(A.length===0)return;let f=t.name("valid");for(let b of A)I(b)?C(b):(t.if((0,$8i.propertyInData)(t,a,b,o.opts.ownProperties)),C(b),o.allErrors||t.else().var(f,!0),t.endIf()),e.it.definedProperties.add(b),e.ok(f);function I(b){return o.opts.useDefaults&&!o.compositeRule&&r[b].default!==void 0}function C(b){e.subschema({keyword:"properties",schemaProp:b,dataProp:b},f)}}};zWr.default=rPc});var s6i=H(qWr=>{"use strict";Object.defineProperty(qWr,"__esModule",{value:!0});var r6i=vH(),OBt=Jh(),n6i=w_(),i6i=w_(),nPc={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:a,it:o}=e,{opts:l}=o,A=(0,r6i.allSchemaProperties)(r),f=A.filter(F=>(0,n6i.alwaysValidSchema)(o,r[F]));if(A.length===0||f.length===A.length&&(!o.opts.unevaluated||o.props===!0))return;let I=l.strictSchema&&!l.allowMatchingProperties&&a.properties,C=t.name("valid");o.props!==!0&&!(o.props instanceof OBt.Name)&&(o.props=(0,i6i.evaluatedPropsToName)(t,o.props));let{props:b}=o;E();function E(){for(let F of A)I&&N(F),o.allErrors?B(F):(t.var(C,!0),B(F),t.if(C))}function N(F){for(let Q in I)new RegExp(F).test(Q)&&(0,n6i.checkStrictMode)(o,`property ${Q} matches pattern ${F} (use allowMatchingProperties)`)}function B(F){t.forIn("key",n,Q=>{t.if((0,OBt._)`${(0,r6i.usePattern)(e,F)}.test(${Q})`,()=>{let J=f.includes(F);J||e.subschema({keyword:"patternProperties",schemaProp:F,dataProp:Q,dataPropType:i6i.Type.Str},C),o.opts.unevaluated&&b!==!0?t.assign((0,OBt._)`${b}[${Q}]`,!0):!J&&!o.allErrors&&t.if((0,OBt.not)(C),()=>t.break())})})}}};qWr.default=nPc});var o6i=H($Wr=>{"use strict";Object.defineProperty($Wr,"__esModule",{value:!0});var iPc=w_(),sPc={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,iPc.alwaysValidSchema)(n,r)){e.fail();return}let a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};$Wr.default=sPc});var a6i=H(eOr=>{"use strict";Object.defineProperty(eOr,"__esModule",{value:!0});var oPc=vH(),aPc={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:oPc.validateUnion,error:{message:"must match a schema in anyOf"}};eOr.default=aPc});var c6i=H(tOr=>{"use strict";Object.defineProperty(tOr,"__esModule",{value:!0});var PBt=Jh(),cPc=w_(),lPc={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,PBt._)`{passingSchemas: ${e.passing}}`},uPc={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:lPc,code(e){let{gen:t,schema:r,parentSchema:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&n.discriminator)return;let o=r,l=t.let("valid",!1),A=t.let("passing",null),f=t.name("_valid");e.setParams({passing:A}),t.block(I),e.result(l,()=>e.reset(),()=>e.error(!0));function I(){o.forEach((C,b)=>{let E;(0,cPc.alwaysValidSchema)(a,C)?t.var(f,!0):E=e.subschema({keyword:"oneOf",schemaProp:b,compositeRule:!0},f),b>0&&t.if((0,PBt._)`${f} && ${l}`).assign(l,!1).assign(A,(0,PBt._)`[${A}, ${b}]`).else(),t.if(f,()=>{t.assign(l,!0),t.assign(A,b),E&&e.mergeEvaluated(E,PBt.Name)})})}}};tOr.default=uPc});var l6i=H(rOr=>{"use strict";Object.defineProperty(rOr,"__esModule",{value:!0});var gPc=w_(),APc={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let a=t.name("valid");r.forEach((o,l)=>{if((0,gPc.alwaysValidSchema)(n,o))return;let A=e.subschema({keyword:"allOf",schemaProp:l},a);e.ok(a),e.mergeEvaluated(A)})}};rOr.default=APc});var A6i=H(nOr=>{"use strict";Object.defineProperty(nOr,"__esModule",{value:!0});var MBt=Jh(),g6i=w_(),dPc={message:({params:e})=>(0,MBt.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,MBt._)`{failingKeyword: ${e.ifClause}}`},pPc={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:dPc,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,g6i.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let a=u6i(n,"then"),o=u6i(n,"else");if(!a&&!o)return;let l=t.let("valid",!0),A=t.name("_valid");if(f(),e.reset(),a&&o){let C=t.let("ifClause");e.setParams({ifClause:C}),t.if(A,I("then",C),I("else",C))}else a?t.if(A,I("then")):t.if((0,MBt.not)(A),I("else"));e.pass(l,()=>e.error(!0));function f(){let C=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},A);e.mergeEvaluated(C)}function I(C,b){return()=>{let E=e.subschema({keyword:C},A);t.assign(l,A),e.mergeValidEvaluated(E,l),b?t.assign(b,(0,MBt._)`${C}`):e.setParams({ifClause:C})}}}};function u6i(e,t){let r=e.schema[t];return r!==void 0&&!(0,g6i.alwaysValidSchema)(e,r)}nOr.default=pPc});var d6i=H(iOr=>{"use strict";Object.defineProperty(iOr,"__esModule",{value:!0});var fPc=w_(),IPc={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,fPc.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};iOr.default=IPc});var p6i=H(sOr=>{"use strict";Object.defineProperty(sOr,"__esModule",{value:!0});var hPc=PWr(),mPc=Y8i(),CPc=MWr(),_Pc=X8i(),yPc=J8i(),bPc=j8i(),EPc=q8i(),SPc=KWr(),vPc=t6i(),BPc=s6i(),wPc=o6i(),TPc=a6i(),RPc=c6i(),NPc=l6i(),DPc=A6i(),kPc=d6i();function xPc(e=!1){let t=[wPc.default,TPc.default,RPc.default,NPc.default,DPc.default,kPc.default,EPc.default,SPc.default,bPc.default,vPc.default,BPc.default];return e?t.push(mPc.default,_Pc.default):t.push(hPc.default,CPc.default),t.push(yPc.default),t}sOr.default=xPc});var f6i=H(oOr=>{"use strict";Object.defineProperty(oOr,"__esModule",{value:!0});var Aw=Jh(),GPc={message:({schemaCode:e})=>(0,Aw.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Aw._)`{format: ${e}}`},FPc={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:GPc,code(e,t){let{gen:r,data:n,$data:a,schema:o,schemaCode:l,it:A}=e,{opts:f,errSchemaPath:I,schemaEnv:C,self:b}=A;if(!f.validateFormats)return;a?E():N();function E(){let B=r.scopeValue("formats",{ref:b.formats,code:f.code.formats}),F=r.const("fDef",(0,Aw._)`${B}[${l}]`),Q=r.let("fType"),J=r.let("format");r.if((0,Aw._)`typeof ${F} == "object" && !(${F} instanceof RegExp)`,()=>r.assign(Q,(0,Aw._)`${F}.type || "string"`).assign(J,(0,Aw._)`${F}.validate`),()=>r.assign(Q,(0,Aw._)`"string"`).assign(J,F)),e.fail$data((0,Aw.or)(ae(),ne()));function ae(){return f.strictSchema===!1?Aw.nil:(0,Aw._)`${l} && !${J}`}function ne(){let ce=C.$async?(0,Aw._)`(${F}.async ? await ${J}(${n}) : ${J}(${n}))`:(0,Aw._)`${J}(${n})`,fe=(0,Aw._)`(typeof ${J} == "function" ? ${ce} : ${J}.test(${n}))`;return(0,Aw._)`${J} && ${J} !== true && ${Q} === ${t} && !${fe}`}}function N(){let B=b.formats[o];if(!B){ae();return}if(B===!0)return;let[F,Q,J]=ne(B);F===t&&e.pass(ce());function ae(){if(f.strictSchema===!1){b.logger.warn(fe());return}throw new Error(fe());function fe(){return`unknown format "${o}" ignored in schema at path "${I}"`}}function ne(fe){let ue=fe instanceof RegExp?(0,Aw.regexpCode)(fe):f.code.formats?(0,Aw._)`${f.code.formats}${(0,Aw.getProperty)(o)}`:void 0,de=r.scopeValue("formats",{key:o,ref:fe,code:ue});return typeof fe=="object"&&!(fe instanceof RegExp)?[fe.type||"string",fe.validate,(0,Aw._)`${de}.validate`]:["string",fe,de]}function ce(){if(typeof B=="object"&&!(B instanceof RegExp)&&B.async){if(!C.$async)throw new Error("async format in sync schema");return(0,Aw._)`await ${J}(${n})`}return typeof Q=="function"?(0,Aw._)`${J}(${n})`:(0,Aw._)`${J}.test(${n})`}}}};oOr.default=FPc});var I6i=H(aOr=>{"use strict";Object.defineProperty(aOr,"__esModule",{value:!0});var ZPc=f6i(),LPc=[ZPc.default];aOr.default=LPc});var h6i=H(Eke=>{"use strict";Object.defineProperty(Eke,"__esModule",{value:!0});Eke.contentVocabulary=Eke.metadataVocabulary=void 0;Eke.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Eke.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var C6i=H(cOr=>{"use strict";Object.defineProperty(cOr,"__esModule",{value:!0});var VPc=B8i(),WPc=O8i(),OPc=p6i(),PPc=I6i(),m6i=h6i(),MPc=[VPc.default,WPc.default,(0,OPc.default)(),PPc.default,m6i.metadataVocabulary,m6i.contentVocabulary];cOr.default=MPc});var y6i=H(HBt=>{"use strict";Object.defineProperty(HBt,"__esModule",{value:!0});HBt.DiscrError=void 0;var _6i;(function(e){e.Tag="tag",e.Mapping="mapping"})(_6i||(HBt.DiscrError=_6i={}))});var E6i=H(uOr=>{"use strict";Object.defineProperty(uOr,"__esModule",{value:!0});var Ske=Jh(),lOr=y6i(),b6i=vBt(),HPc=e8e(),YPc=w_(),QPc={message:({params:{discrError:e,tagName:t}})=>e===lOr.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,Ske._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},XPc={keyword:"discriminator",type:"object",schemaType:"object",error:QPc,code(e){let{gen:t,data:r,schema:n,parentSchema:a,it:o}=e,{oneOf:l}=a;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let A=n.propertyName;if(typeof A!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!l)throw new Error("discriminator: requires oneOf keyword");let f=t.let("valid",!1),I=t.const("tag",(0,Ske._)`${r}${(0,Ske.getProperty)(A)}`);t.if((0,Ske._)`typeof ${I} == "string"`,()=>C(),()=>e.error(!1,{discrError:lOr.DiscrError.Tag,tag:I,tagName:A})),e.ok(f);function C(){let N=E();t.if(!1);for(let B in N)t.elseIf((0,Ske._)`${I} === ${B}`),t.assign(f,b(N[B]));t.else(),e.error(!1,{discrError:lOr.DiscrError.Mapping,tag:I,tagName:A}),t.endIf()}function b(N){let B=t.name("valid"),F=e.subschema({keyword:"oneOf",schemaProp:N},B);return e.mergeEvaluated(F,Ske.Name),B}function E(){var N;let B={},F=J(a),Q=!0;for(let ce=0;ce{JPc.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var AOr=H((j1,gOr)=>{"use strict";Object.defineProperty(j1,"__esModule",{value:!0});j1.MissingRefError=j1.ValidationError=j1.CodeGen=j1.Name=j1.nil=j1.stringify=j1.str=j1._=j1.KeywordCxt=j1.Ajv=void 0;var UPc=_8i(),KPc=C6i(),jPc=E6i(),v6i=S6i(),zPc=["/properties"],YBt="http://json-schema.org/draft-07/schema",vke=class extends UPc.default{_addVocabularies(){super._addVocabularies(),KPc.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(jPc.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(v6i,zPc):v6i;this.addMetaSchema(t,YBt,!1),this.refs["http://json-schema.org/schema"]=YBt}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(YBt)?YBt:void 0)}};j1.Ajv=vke;gOr.exports=j1=vke;gOr.exports.Ajv=vke;Object.defineProperty(j1,"__esModule",{value:!0});j1.default=vke;var qPc=$Ke();Object.defineProperty(j1,"KeywordCxt",{enumerable:!0,get:function(){return qPc.KeywordCxt}});var Bke=Jh();Object.defineProperty(j1,"_",{enumerable:!0,get:function(){return Bke._}});Object.defineProperty(j1,"str",{enumerable:!0,get:function(){return Bke.str}});Object.defineProperty(j1,"stringify",{enumerable:!0,get:function(){return Bke.stringify}});Object.defineProperty(j1,"nil",{enumerable:!0,get:function(){return Bke.nil}});Object.defineProperty(j1,"Name",{enumerable:!0,get:function(){return Bke.Name}});Object.defineProperty(j1,"CodeGen",{enumerable:!0,get:function(){return Bke.CodeGen}});var $Pc=EBt();Object.defineProperty(j1,"ValidationError",{enumerable:!0,get:function(){return $Pc.default}});var e3c=e8e();Object.defineProperty(j1,"MissingRefError",{enumerable:!0,get:function(){return e3c.default}})});var x6i=H(tj=>{"use strict";Object.defineProperty(tj,"__esModule",{value:!0});tj.formatNames=tj.fastFormats=tj.fullFormats=void 0;function ej(e,t){return{validate:e,compare:t}}tj.fullFormats={date:ej(R6i,IOr),time:ej(pOr(!0),hOr),"date-time":ej(B6i(!0),D6i),"iso-time":ej(pOr(),N6i),"iso-date-time":ej(B6i(),k6i),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:o3c,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:d3c,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:a3c,int32:{type:"number",validate:u3c},int64:{type:"number",validate:g3c},float:{type:"number",validate:T6i},double:{type:"number",validate:T6i},password:!0,binary:!0};tj.fastFormats={...tj.fullFormats,date:ej(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,IOr),time:ej(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,hOr),"date-time":ej(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,D6i),"iso-time":ej(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,N6i),"iso-date-time":ej(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,k6i),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};tj.formatNames=Object.keys(tj.fullFormats);function t3c(e){return e%4===0&&(e%100!==0||e%400===0)}var r3c=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,n3c=[0,31,28,31,30,31,30,31,31,30,31,30,31];function R6i(e){let t=r3c.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],a=+t[3];return n>=1&&n<=12&&a>=1&&a<=(n===2&&t3c(r)?29:n3c[n])}function IOr(e,t){if(e&&t)return e>t?1:e23||C>59||e&&!A)return!1;if(a<=23&&o<=59&&l<60)return!0;let b=o-C*f,E=a-I*f-(b<0?1:0);return(E===23||E===-1)&&(b===59||b===-1)&&l<61}}function hOr(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function N6i(e,t){if(!(e&&t))return;let r=dOr.exec(e),n=dOr.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=c3c}function g3c(e){return Number.isInteger(e)}function T6i(){return!0}var A3c=/[^\\]\\Z/;function d3c(e){if(A3c.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var G6i=H(wke=>{"use strict";Object.defineProperty(wke,"__esModule",{value:!0});wke.formatLimitDefinition=void 0;var p3c=AOr(),L4=Jh(),Dle=L4.operators,QBt={formatMaximum:{okStr:"<=",ok:Dle.LTE,fail:Dle.GT},formatMinimum:{okStr:">=",ok:Dle.GTE,fail:Dle.LT},formatExclusiveMaximum:{okStr:"<",ok:Dle.LT,fail:Dle.GTE},formatExclusiveMinimum:{okStr:">",ok:Dle.GT,fail:Dle.LTE}},f3c={message:({keyword:e,schemaCode:t})=>(0,L4.str)`should be ${QBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,L4._)`{comparison: ${QBt[e].okStr}, limit: ${t}}`};wke.formatLimitDefinition={keyword:Object.keys(QBt),type:"string",schemaType:"string",$data:!0,error:f3c,code(e){let{gen:t,data:r,schemaCode:n,keyword:a,it:o}=e,{opts:l,self:A}=o;if(!l.validateFormats)return;let f=new p3c.KeywordCxt(o,A.RULES.all.format.definition,"format");f.$data?I():C();function I(){let E=t.scopeValue("formats",{ref:A.formats,code:l.code.formats}),N=t.const("fmt",(0,L4._)`${E}[${f.schemaCode}]`);e.fail$data((0,L4.or)((0,L4._)`typeof ${N} != "object"`,(0,L4._)`${N} instanceof RegExp`,(0,L4._)`typeof ${N}.compare != "function"`,b(N)))}function C(){let E=f.schema,N=A.formats[E];if(!N||N===!0)return;if(typeof N!="object"||N instanceof RegExp||typeof N.compare!="function")throw new Error(`"${a}": format "${E}" does not define "compare" function`);let B=t.scopeValue("formats",{key:E,ref:N,code:l.code.formats?(0,L4._)`${l.code.formats}${(0,L4.getProperty)(E)}`:void 0});e.fail$data(b(B))}function b(E){return(0,L4._)`${E}.compare(${r}, ${n}) ${QBt[a].fail} 0`}},dependencies:["format"]};var I3c=e=>(e.addKeyword(wke.formatLimitDefinition),e);wke.default=I3c});var V6i=H((p8e,L6i)=>{"use strict";Object.defineProperty(p8e,"__esModule",{value:!0});var Tke=x6i(),h3c=G6i(),mOr=Jh(),F6i=new mOr.Name("fullFormats"),m3c=new mOr.Name("fastFormats"),COr=(e,t={keywords:!0})=>{if(Array.isArray(t))return Z6i(e,t,Tke.fullFormats,F6i),e;let[r,n]=t.mode==="fast"?[Tke.fastFormats,m3c]:[Tke.fullFormats,F6i],a=t.formats||Tke.formatNames;return Z6i(e,a,r,n),t.keywords&&(0,h3c.default)(e),e};COr.get=(e,t="full")=>{let n=(t==="fast"?Tke.fastFormats:Tke.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function Z6i(e,t,r,n){var a,o;(a=(o=e.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,mOr._)`require("ajv-formats/dist/formats").${n}`);for(let l of t)e.addFormat(l,r[l])}L6i.exports=p8e=COr;Object.defineProperty(p8e,"__esModule",{value:!0});p8e.default=COr});var By=H(XBt=>{"use strict";Object.defineProperty(XBt,"__esModule",{value:!0});XBt.isFunction=void 0;function C3c(e){return typeof e=="function"}XBt.isFunction=C3c});var kle=H(JBt=>{"use strict";Object.defineProperty(JBt,"__esModule",{value:!0});JBt.createErrorClass=void 0;function _3c(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}JBt.createErrorClass=_3c});var _Or=H(UBt=>{"use strict";Object.defineProperty(UBt,"__esModule",{value:!0});UBt.UnsubscriptionError=void 0;var y3c=kle();UBt.UnsubscriptionError=y3c.createErrorClass(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: `+r.map(function(n,a){return a+1+") "+n.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=r}})});var pte=H(KBt=>{"use strict";Object.defineProperty(KBt,"__esModule",{value:!0});KBt.arrRemove=void 0;function vPc(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}KBt.arrRemove=vPc});var GP=H(MV=>{"use strict";var V6i=MV&&MV.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},W6i=MV&&MV.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},O6i=MV&&MV.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(jBt,"__esModule",{value:!0});jBt.config=void 0;jBt.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var hOr=H(tj=>{"use strict";var H6i=tj&&tj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Y6i=tj&&tj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(zBt,"__esModule",{value:!0});zBt.reportUnhandledError=void 0;var wPc=Rke(),TPc=hOr();function RPc(e){TPc.timeoutProvider.setTimeout(function(){var t=wPc.config.onUnhandledError;if(t)t(e);else throw e})}zBt.reportUnhandledError=RPc});var sx=H(qBt=>{"use strict";Object.defineProperty(qBt,"__esModule",{value:!0});qBt.noop=void 0;function NPc(){}qBt.noop=NPc});var Q6i=H(rj=>{"use strict";Object.defineProperty(rj,"__esModule",{value:!0});rj.createNotification=rj.nextNotification=rj.errorNotification=rj.COMPLETE_NOTIFICATION=void 0;rj.COMPLETE_NOTIFICATION=function(){return $Bt("C",void 0,void 0)}();function DPc(e){return $Bt("E",void 0,e)}rj.errorNotification=DPc;function kPc(e){return $Bt("N",e,void 0)}rj.nextNotification=kPc;function $Bt(e,t,r){return{kind:e,value:t,error:r}}rj.createNotification=$Bt});var ewt=H(Nke=>{"use strict";Object.defineProperty(Nke,"__esModule",{value:!0});Nke.captureError=Nke.errorContext=void 0;var X6i=Rke(),S_e=null;function xPc(e){if(X6i.config.useDeprecatedSynchronousErrorHandling){var t=!S_e;if(t&&(S_e={errorThrown:!1,error:null}),e(),t){var r=S_e,n=r.errorThrown,a=r.error;if(S_e=null,n)throw a}}else e()}Nke.errorContext=xPc;function GPc(e){X6i.config.useDeprecatedSynchronousErrorHandling&&S_e&&(S_e.errorThrown=!0,S_e.error=e)}Nke.captureError=GPc});var Dke=H(L4=>{"use strict";var K6i=L4&&L4.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(L4,"__esModule",{value:!0});L4.EMPTY_OBSERVER=L4.SafeSubscriber=L4.Subscriber=void 0;var FPc=vy(),J6i=GP(),bOr=Rke(),ZPc=mOr(),U6i=sx(),COr=Q6i(),LPc=hOr(),VPc=ewt(),j6i=function(e){K6i(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,J6i.isSubscription(r)&&r.add(n)):n.destination=L4.EMPTY_OBSERVER,n}return t.create=function(r,n,a){return new z6i(r,n,a)},t.prototype.next=function(r){this.isStopped?yOr(COr.nextNotification(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?yOr(COr.errorNotification(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?yOr(COr.COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(J6i.Subscription);L4.Subscriber=j6i;var WPc=Function.prototype.bind;function _Or(e,t){return WPc.call(e,t)}var OPc=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){twt(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){twt(n)}else twt(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){twt(r)}},e}(),z6i=function(e){K6i(t,e);function t(r,n,a){var o=e.call(this)||this,l;if(FPc.isFunction(r)||!r)l={next:r??void 0,error:n??void 0,complete:a??void 0};else{var A;o&&bOr.config.useDeprecatedNextContext?(A=Object.create(r),A.unsubscribe=function(){return o.unsubscribe()},l={next:r.next&&_Or(r.next,A),error:r.error&&_Or(r.error,A),complete:r.complete&&_Or(r.complete,A)}):l=r}return o.destination=new OPc(l),o}return t}(j6i);L4.SafeSubscriber=z6i;function twt(e){bOr.config.useDeprecatedSynchronousErrorHandling?VPc.captureError(e):ZPc.reportUnhandledError(e)}function PPc(e){throw e}function yOr(e,t){var r=bOr.config.onStoppedNotification;r&&LPc.timeoutProvider.setTimeout(function(){return r(e,t)})}L4.EMPTY_OBSERVER={closed:!0,next:U6i.noop,error:PPc,complete:U6i.noop}});var h8e=H(rwt=>{"use strict";Object.defineProperty(rwt,"__esModule",{value:!0});rwt.observable=void 0;rwt.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var ox=H(nwt=>{"use strict";Object.defineProperty(nwt,"__esModule",{value:!0});nwt.identity=void 0;function MPc(e){return e}nwt.identity=MPc});var m8e=H(kke=>{"use strict";Object.defineProperty(kke,"__esModule",{value:!0});kke.pipeFromArray=kke.pipe=void 0;var HPc=ox();function YPc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(iwt,"__esModule",{value:!0});iwt.Observable=void 0;var SOr=Dke(),QPc=GP(),XPc=h8e(),JPc=m8e(),UPc=Rke(),EOr=vy(),KPc=ewt(),jPc=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,n){var a=this,o=qPc(t)?t:new SOr.SafeSubscriber(t,r,n);return KPc.errorContext(function(){var l=a,A=l.operator,f=l.source;o.add(A?A.call(o,f):f?a._subscribe(o):a._trySubscribe(o))}),o},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var n=this;return r=$6i(r),new r(function(a,o){var l=new SOr.SafeSubscriber({next:function(A){try{t(A)}catch(f){o(f),l.unsubscribe()}},error:o,complete:a});n.subscribe(l)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[XPc.observable]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r{"use strict";Object.defineProperty(xke,"__esModule",{value:!0});xke.operate=xke.hasLift=void 0;var $Pc=vy();function eji(e){return $Pc.isFunction(e?.lift)}xke.hasLift=eji;function e3c(e){return function(t){if(eji(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}xke.operate=e3c});var yd=H(kle=>{"use strict";var t3c=kle&&kle.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(kle,"__esModule",{value:!0});kle.OperatorSubscriber=kle.createOperatorSubscriber=void 0;var r3c=Dke();function n3c(e,t,r,n,a){return new tji(e,t,r,n,a)}kle.createOperatorSubscriber=n3c;var tji=function(e){t3c(t,e);function t(r,n,a,o,l,A){var f=e.call(this,r)||this;return f.onFinalize=l,f.shouldUnsubscribe=A,f._next=n?function(I){try{n(I)}catch(C){r.error(C)}}:e.prototype._next,f._error=o?function(I){try{o(I)}catch(C){r.error(C)}finally{this.unsubscribe()}}:e.prototype._error,f._complete=a?function(){try{a()}catch(I){r.error(I)}finally{this.unsubscribe()}}:e.prototype._complete,f}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}(r3c.Subscriber);kle.OperatorSubscriber=tji});var owt=H(swt=>{"use strict";Object.defineProperty(swt,"__esModule",{value:!0});swt.refCount=void 0;var i3c=$g(),s3c=yd();function o3c(){return i3c.operate(function(e,t){var r=null;e._refCount++;var n=s3c.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var a=e._connection,o=r;r=null,a&&(!o||a===o)&&a.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}swt.refCount=o3c});var C8e=H(Gke=>{"use strict";var a3c=Gke&&Gke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Gke,"__esModule",{value:!0});Gke.ConnectableObservable=void 0;var c3c=Ab(),rji=GP(),l3c=owt(),u3c=yd(),g3c=$g(),A3c=function(e){a3c(t,e);function t(r,n){var a=e.call(this)||this;return a.source=r,a.subjectFactory=n,a._subject=null,a._refCount=0,a._connection=null,g3c.hasLift(r)&&(a.lift=r.lift),a}return t.prototype._subscribe=function(r){return this.getSubject().subscribe(r)},t.prototype.getSubject=function(){var r=this._subject;return(!r||r.isStopped)&&(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var r=this._connection;this._subject=this._connection=null,r?.unsubscribe()},t.prototype.connect=function(){var r=this,n=this._connection;if(!n){n=this._connection=new rji.Subscription;var a=this.getSubject();n.add(this.source.subscribe(u3c.createOperatorSubscriber(a,void 0,function(){r._teardown(),a.complete()},function(o){r._teardown(),a.error(o)},function(){return r._teardown()}))),n.closed&&(this._connection=null,n=rji.Subscription.EMPTY)}return n},t.prototype.refCount=function(){return l3c.refCount()(this)},t}(c3c.Observable);Gke.ConnectableObservable=A3c});var nji=H(_8e=>{"use strict";Object.defineProperty(_8e,"__esModule",{value:!0});_8e.performanceTimestampProvider=void 0;_8e.performanceTimestampProvider={now:function(){return(_8e.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var vOr=H(V4=>{"use strict";var iji=V4&&V4.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},sji=V4&&V4.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(awt,"__esModule",{value:!0});awt.animationFrames=void 0;var p3c=Ab(),f3c=nji(),oji=vOr();function I3c(e){return e?aji(e):h3c}awt.animationFrames=I3c;function aji(e){return new p3c.Observable(function(t){var r=e||f3c.performanceTimestampProvider,n=r.now(),a=0,o=function(){t.closed||(a=oji.animationFrameProvider.requestAnimationFrame(function(l){a=0;var A=r.now();t.next({timestamp:e?A:l,elapsed:A-n}),o()}))};return o(),function(){a&&oji.animationFrameProvider.cancelAnimationFrame(a)}})}var h3c=aji()});var BOr=H(cwt=>{"use strict";Object.defineProperty(cwt,"__esModule",{value:!0});cwt.ObjectUnsubscribedError=void 0;var m3c=Dle();cwt.ObjectUnsubscribedError=m3c.createErrorClass(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var ax=H(nj=>{"use strict";var uji=nj&&nj.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),C3c=nj&&nj.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(nj,"__esModule",{value:!0});nj.AnonymousSubject=nj.Subject=void 0;var lji=Ab(),TOr=GP(),_3c=BOr(),y3c=pte(),wOr=ewt(),gji=function(e){uji(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var n=new ROr(this,this);return n.operator=r,n},t.prototype._throwIfClosed=function(){if(this.closed)throw new _3c.ObjectUnsubscribedError},t.prototype.next=function(r){var n=this;wOr.errorContext(function(){var a,o;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var l=C3c(n.currentObservers),A=l.next();!A.done;A=l.next()){var f=A.value;f.next(r)}}catch(I){a={error:I}}finally{try{A&&!A.done&&(o=l.return)&&o.call(l)}finally{if(a)throw a.error}}}})},t.prototype.error=function(r){var n=this;wOr.errorContext(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=r;for(var a=n.observers;a.length;)a.shift().error(r)}})},t.prototype.complete=function(){var r=this;wOr.errorContext(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var n=r.observers;n.length;)n.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,a=this,o=a.hasError,l=a.isStopped,A=a.observers;return o||l?TOr.EMPTY_SUBSCRIPTION:(this.currentObservers=null,A.push(r),new TOr.Subscription(function(){n.currentObservers=null,y3c.arrRemove(A,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n.thrownError,l=n.isStopped;a?r.error(o):l&&r.complete()},t.prototype.asObservable=function(){var r=new lji.Observable;return r.source=this,r},t.create=function(r,n){return new ROr(r,n)},t}(lji.Observable);nj.Subject=gji;var ROr=function(e){uji(t,e);function t(r,n){var a=e.call(this)||this;return a.destination=r,a.source=n,a}return t.prototype.next=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.next)===null||a===void 0||a.call(n,r)},t.prototype.error=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.error)===null||a===void 0||a.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,a;return(a=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&a!==void 0?a:TOr.EMPTY_SUBSCRIPTION},t}(gji);nj.AnonymousSubject=ROr});var NOr=H(Fke=>{"use strict";var b3c=Fke&&Fke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Fke,"__esModule",{value:!0});Fke.BehaviorSubject=void 0;var E3c=ax(),S3c=function(e){b3c(t,e);function t(r){var n=e.call(this)||this;return n._value=r,n}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var n=e.prototype._subscribe.call(this,r);return!n.closed&&r.next(this._value),n},t.prototype.getValue=function(){var r=this,n=r.hasError,a=r.thrownError,o=r._value;if(n)throw a;return this._throwIfClosed(),o},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(E3c.Subject);Fke.BehaviorSubject=S3c});var lwt=H(y8e=>{"use strict";Object.defineProperty(y8e,"__esModule",{value:!0});y8e.dateTimestampProvider=void 0;y8e.dateTimestampProvider={now:function(){return(y8e.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var uwt=H(Zke=>{"use strict";var v3c=Zke&&Zke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Zke,"__esModule",{value:!0});Zke.ReplaySubject=void 0;var B3c=ax(),w3c=lwt(),T3c=function(e){v3c(t,e);function t(r,n,a){r===void 0&&(r=1/0),n===void 0&&(n=1/0),a===void 0&&(a=w3c.dateTimestampProvider);var o=e.call(this)||this;return o._bufferSize=r,o._windowTime=n,o._timestampProvider=a,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=n===1/0,o._bufferSize=Math.max(1,r),o._windowTime=Math.max(1,n),o}return t.prototype.next=function(r){var n=this,a=n.isStopped,o=n._buffer,l=n._infiniteTimeWindow,A=n._timestampProvider,f=n._windowTime;a||(o.push(r),!l&&o.push(A.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),a=this,o=a._infiniteTimeWindow,l=a._buffer,A=l.slice(),f=0;f{"use strict";var R3c=Lke&&Lke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Lke,"__esModule",{value:!0});Lke.AsyncSubject=void 0;var N3c=ax(),D3c=function(e){R3c(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._value=null,r._hasValue=!1,r._isComplete=!1,r}return t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n._hasValue,l=n._value,A=n.thrownError,f=n.isStopped,I=n._isComplete;a?r.error(A):(f||I)&&(o&&r.next(l),r.complete())},t.prototype.next=function(r){this.isStopped||(this._value=r,this._hasValue=!0)},t.prototype.complete=function(){var r=this,n=r._hasValue,a=r._value,o=r._isComplete;o||(this._isComplete=!0,n&&e.prototype.next.call(this,a),e.prototype.complete.call(this))},t}(N3c.Subject);Lke.AsyncSubject=D3c});var Aji=H(Vke=>{"use strict";var k3c=Vke&&Vke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Vke,"__esModule",{value:!0});Vke.Action=void 0;var x3c=GP(),G3c=function(e){k3c(t,e);function t(r,n){return e.call(this)||this}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),this},t}(x3c.Subscription);Vke.Action=G3c});var fji=H(ij=>{"use strict";var dji=ij&&ij.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},pji=ij&&ij.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var F3c=Wke&&Wke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Wke,"__esModule",{value:!0});Wke.AsyncAction=void 0;var Z3c=Aji(),Iji=fji(),L3c=pte(),V3c=function(e){F3c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a.pending=!1,a}return t.prototype.schedule=function(r,n){var a;if(n===void 0&&(n=0),this.closed)return this;this.state=r;var o=this.id,l=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(l,o,n)),this.pending=!0,this.delay=n,this.id=(a=this.id)!==null&&a!==void 0?a:this.requestAsyncId(l,this.id,n),this},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),Iji.intervalProvider.setInterval(r.flush.bind(r,this),a)},t.prototype.recycleAsyncId=function(r,n,a){if(a===void 0&&(a=0),a!=null&&this.delay===a&&this.pending===!1)return n;n!=null&&Iji.intervalProvider.clearInterval(n)},t.prototype.execute=function(r,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var a=this._execute(r,n);if(a)return a;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,n){var a=!1,o;try{this.work(r)}catch(l){a=!0,o=l||new Error("Scheduled action threw falsy error")}if(a)return this.unsubscribe(),o},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,n=r.id,a=r.scheduler,o=a.actions;this.work=this.state=this.scheduler=null,this.pending=!1,L3c.arrRemove(o,this),n!=null&&(this.id=this.recycleAsyncId(a,n,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(Z3c.Action);Wke.AsyncAction=V3c});var mji=H(Pke=>{"use strict";Object.defineProperty(Pke,"__esModule",{value:!0});Pke.TestTools=Pke.Immediate=void 0;var W3c=1,DOr,Awt={};function hji(e){return e in Awt?(delete Awt[e],!0):!1}Pke.Immediate={setImmediate:function(e){var t=W3c++;return Awt[t]=!0,DOr||(DOr=Promise.resolve()),DOr.then(function(){return hji(t)&&e()}),t},clearImmediate:function(e){hji(e)}};Pke.TestTools={pending:function(){return Object.keys(Awt).length}}});var _ji=H(sj=>{"use strict";var O3c=sj&&sj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},P3c=sj&&sj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var Y3c=Mke&&Mke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Mke,"__esModule",{value:!0});Mke.AsapAction=void 0;var Q3c=Oke(),yji=_ji(),X3c=function(e){Y3c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=yji.immediateProvider.setImmediate(r.flush.bind(r,void 0))))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(yji.immediateProvider.clearImmediate(n),r._scheduled===n&&(r._scheduled=void 0))},t}(Q3c.AsyncAction);Mke.AsapAction=X3c});var kOr=H(dwt=>{"use strict";Object.defineProperty(dwt,"__esModule",{value:!0});dwt.Scheduler=void 0;var J3c=lwt(),U3c=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,n){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(n,r)},e.now=J3c.dateTimestampProvider.now,e}();dwt.Scheduler=U3c});var Yke=H(Hke=>{"use strict";var K3c=Hke&&Hke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Hke,"__esModule",{value:!0});Hke.AsyncScheduler=void 0;var Eji=kOr(),j3c=function(e){K3c(t,e);function t(r,n){n===void 0&&(n=Eji.Scheduler.now);var a=e.call(this,r,n)||this;return a.actions=[],a._active=!1,a}return t.prototype.flush=function(r){var n=this.actions;if(this._active){n.push(r);return}var a;this._active=!0;do if(a=r.execute(r.state,r.delay))break;while(r=n.shift());if(this._active=!1,a){for(;r=n.shift();)r.unsubscribe();throw a}},t}(Eji.Scheduler);Hke.AsyncScheduler=j3c});var Sji=H(Qke=>{"use strict";var z3c=Qke&&Qke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Qke,"__esModule",{value:!0});Qke.AsapScheduler=void 0;var q3c=Yke(),$3c=function(e){z3c(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(q3c.AsyncScheduler);Qke.AsapScheduler=$3c});var vji=H(v_e=>{"use strict";Object.defineProperty(v_e,"__esModule",{value:!0});v_e.asap=v_e.asapScheduler=void 0;var e5c=bji(),t5c=Sji();v_e.asapScheduler=new t5c.AsapScheduler(e5c.AsapAction);v_e.asap=v_e.asapScheduler});var HV=H(B_e=>{"use strict";Object.defineProperty(B_e,"__esModule",{value:!0});B_e.async=B_e.asyncScheduler=void 0;var r5c=Oke(),n5c=Yke();B_e.asyncScheduler=new n5c.AsyncScheduler(r5c.AsyncAction);B_e.async=B_e.asyncScheduler});var Bji=H(Xke=>{"use strict";var i5c=Xke&&Xke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Xke,"__esModule",{value:!0});Xke.QueueAction=void 0;var s5c=Oke(),o5c=function(e){i5c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),n>0?e.prototype.schedule.call(this,r,n):(this.delay=n,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,n){return n>0||this.closed?e.prototype.execute.call(this,r,n):this._execute(r,n)},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.flush(this),0)},t}(s5c.AsyncAction);Xke.QueueAction=o5c});var wji=H(Jke=>{"use strict";var a5c=Jke&&Jke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Jke,"__esModule",{value:!0});Jke.QueueScheduler=void 0;var c5c=Yke(),l5c=function(e){a5c(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(c5c.AsyncScheduler);Jke.QueueScheduler=l5c});var Tji=H(w_e=>{"use strict";Object.defineProperty(w_e,"__esModule",{value:!0});w_e.queue=w_e.queueScheduler=void 0;var u5c=Bji(),g5c=wji();w_e.queueScheduler=new g5c.QueueScheduler(u5c.QueueAction);w_e.queue=w_e.queueScheduler});var Nji=H(Uke=>{"use strict";var A5c=Uke&&Uke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Uke,"__esModule",{value:!0});Uke.AnimationFrameAction=void 0;var d5c=Oke(),Rji=vOr(),p5c=function(e){A5c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=Rji.animationFrameProvider.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(Rji.animationFrameProvider.cancelAnimationFrame(n),r._scheduled=void 0)},t}(d5c.AsyncAction);Uke.AnimationFrameAction=p5c});var Dji=H(Kke=>{"use strict";var f5c=Kke&&Kke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Kke,"__esModule",{value:!0});Kke.AnimationFrameScheduler=void 0;var I5c=Yke(),h5c=function(e){f5c(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(I5c.AsyncScheduler);Kke.AnimationFrameScheduler=h5c});var kji=H(T_e=>{"use strict";Object.defineProperty(T_e,"__esModule",{value:!0});T_e.animationFrame=T_e.animationFrameScheduler=void 0;var m5c=Nji(),C5c=Dji();T_e.animationFrameScheduler=new C5c.AnimationFrameScheduler(m5c.AnimationFrameAction);T_e.animationFrame=T_e.animationFrameScheduler});var Fji=H(xle=>{"use strict";var xji=xle&&xle.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(xle,"__esModule",{value:!0});xle.VirtualAction=xle.VirtualTimeScheduler=void 0;var _5c=Oke(),y5c=GP(),b5c=Yke(),E5c=function(e){xji(t,e);function t(r,n){r===void 0&&(r=Gji),n===void 0&&(n=1/0);var a=e.call(this,r,function(){return a.frame})||this;return a.maxFrames=n,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var r=this,n=r.actions,a=r.maxFrames,o,l;(l=n[0])&&l.delay<=a&&(n.shift(),this.frame=l.delay,!(o=l.execute(l.state,l.delay))););if(o){for(;l=n.shift();)l.unsubscribe();throw o}},t.frameTimeFactor=10,t}(b5c.AsyncScheduler);xle.VirtualTimeScheduler=E5c;var Gji=function(e){xji(t,e);function t(r,n,a){a===void 0&&(a=r.index+=1);var o=e.call(this,r,n)||this;return o.scheduler=r,o.work=n,o.index=a,o.active=!0,o.index=r.index=a,o}return t.prototype.schedule=function(r,n){if(n===void 0&&(n=0),Number.isFinite(n)){if(!this.id)return e.prototype.schedule.call(this,r,n);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(r,n)}else return y5c.Subscription.EMPTY},t.prototype.requestAsyncId=function(r,n,a){a===void 0&&(a=0),this.delay=r.frame+a;var o=r.actions;return o.push(this),o.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(r,n,a){a===void 0&&(a=0)},t.prototype._execute=function(r,n){if(this.active===!0)return e.prototype._execute.call(this,r,n)},t.sortActions=function(r,n){return r.delay===n.delay?r.index===n.index?0:r.index>n.index?1:-1:r.delay>n.delay?1:-1},t}(_5c.AsyncAction);xle.VirtualAction=Gji});var W4=H(R_e=>{"use strict";Object.defineProperty(R_e,"__esModule",{value:!0});R_e.empty=R_e.EMPTY=void 0;var Zji=Ab();R_e.EMPTY=new Zji.Observable(function(e){return e.complete()});function S5c(e){return e?v5c(e):R_e.EMPTY}R_e.empty=S5c;function v5c(e){return new Zji.Observable(function(t){return e.schedule(function(){return t.complete()})})}});var b8e=H(pwt=>{"use strict";Object.defineProperty(pwt,"__esModule",{value:!0});pwt.isScheduler=void 0;var B5c=vy();function w5c(e){return e&&B5c.isFunction(e.schedule)}pwt.isScheduler=w5c});var YV=H(Gle=>{"use strict";Object.defineProperty(Gle,"__esModule",{value:!0});Gle.popNumber=Gle.popScheduler=Gle.popResultSelector=void 0;var T5c=vy(),R5c=b8e();function xOr(e){return e[e.length-1]}function N5c(e){return T5c.isFunction(xOr(e))?e.pop():void 0}Gle.popResultSelector=N5c;function D5c(e){return R5c.isScheduler(xOr(e))?e.pop():void 0}Gle.popScheduler=D5c;function k5c(e,t){return typeof xOr(e)=="number"?e.pop():t}Gle.popNumber=k5c});var Iwt=H(fwt=>{"use strict";Object.defineProperty(fwt,"__esModule",{value:!0});fwt.isArrayLike=void 0;fwt.isArrayLike=function(e){return e&&typeof e.length=="number"&&typeof e!="function"}});var GOr=H(hwt=>{"use strict";Object.defineProperty(hwt,"__esModule",{value:!0});hwt.isPromise=void 0;var x5c=vy();function G5c(e){return x5c.isFunction(e?.then)}hwt.isPromise=G5c});var FOr=H(mwt=>{"use strict";Object.defineProperty(mwt,"__esModule",{value:!0});mwt.isInteropObservable=void 0;var F5c=h8e(),Z5c=vy();function L5c(e){return Z5c.isFunction(e[F5c.observable])}mwt.isInteropObservable=L5c});var ZOr=H(Cwt=>{"use strict";Object.defineProperty(Cwt,"__esModule",{value:!0});Cwt.isAsyncIterable=void 0;var V5c=vy();function W5c(e){return Symbol.asyncIterator&&V5c.isFunction(e?.[Symbol.asyncIterator])}Cwt.isAsyncIterable=W5c});var LOr=H(_wt=>{"use strict";Object.defineProperty(_wt,"__esModule",{value:!0});_wt.createInvalidObservableTypeError=void 0;function O5c(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}_wt.createInvalidObservableTypeError=O5c});var VOr=H(jke=>{"use strict";Object.defineProperty(jke,"__esModule",{value:!0});jke.iterator=jke.getSymbolIterator=void 0;function Lji(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}jke.getSymbolIterator=Lji;jke.iterator=Lji()});var WOr=H(ywt=>{"use strict";Object.defineProperty(ywt,"__esModule",{value:!0});ywt.isIterable=void 0;var P5c=VOr(),M5c=vy();function H5c(e){return M5c.isFunction(e?.[P5c.iterator])}ywt.isIterable=H5c});var bwt=H(wH=>{"use strict";var Y5c=wH&&wH.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]1||A(E,N)})})}function A(E,N){try{f(n[E](N))}catch(B){b(o[0][3],B)}}function f(E){E.value instanceof zke?Promise.resolve(E.value.v).then(I,C):b(o[0][2],E)}function I(E){A("next",E)}function C(E){A("throw",E)}function b(E,N){E(N),o.shift(),o.length&&A(o[0][0],o[0][1])}};Object.defineProperty(wH,"__esModule",{value:!0});wH.isReadableStreamLike=wH.readableStreamLikeToAsyncGenerator=void 0;var X5c=vy();function J5c(e){return Q5c(this,arguments,function(){var r,n,a,o;return Y5c(this,function(l){switch(l.label){case 0:r=e.getReader(),l.label=1;case 1:l.trys.push([1,,9,10]),l.label=2;case 2:return[4,zke(r.read())];case 3:return n=l.sent(),a=n.value,o=n.done,o?[4,zke(void 0)]:[3,5];case 4:return[2,l.sent()];case 5:return[4,zke(a)];case 6:return[4,l.sent()];case 7:return l.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}wH.readableStreamLikeToAsyncGenerator=J5c;function U5c(e){return X5c.isFunction(e?.getReader)}wH.isReadableStreamLike=U5c});var ph=H(V2=>{"use strict";var K5c=V2&&V2.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})},j5c=V2&&V2.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(V2,"__esModule",{value:!0});V2.fromReadableStreamLike=V2.fromAsyncIterable=V2.fromIterable=V2.fromPromise=V2.fromArrayLike=V2.fromInteropObservable=V2.innerFrom=void 0;var q5c=Iwt(),$5c=GOr(),qke=Ab(),eMc=FOr(),tMc=ZOr(),rMc=LOr(),nMc=WOr(),Vji=bwt(),iMc=vy(),sMc=mOr(),oMc=h8e();function aMc(e){if(e instanceof qke.Observable)return e;if(e!=null){if(eMc.isInteropObservable(e))return Wji(e);if(q5c.isArrayLike(e))return Oji(e);if($5c.isPromise(e))return Pji(e);if(tMc.isAsyncIterable(e))return POr(e);if(nMc.isIterable(e))return Mji(e);if(Vji.isReadableStreamLike(e))return Hji(e)}throw rMc.createInvalidObservableTypeError(e)}V2.innerFrom=aMc;function Wji(e){return new qke.Observable(function(t){var r=e[oMc.observable]();if(iMc.isFunction(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}V2.fromInteropObservable=Wji;function Oji(e){return new qke.Observable(function(t){for(var r=0;r{"use strict";Object.defineProperty(Ewt,"__esModule",{value:!0});Ewt.executeSchedule=void 0;function lMc(e,t,r,n,a){n===void 0&&(n=0),a===void 0&&(a=!1);var o=t.schedule(function(){r(),a?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(o),!a)return o}Ewt.executeSchedule=lMc});var $ke=H(Swt=>{"use strict";Object.defineProperty(Swt,"__esModule",{value:!0});Swt.observeOn=void 0;var MOr=fte(),uMc=$g(),gMc=yd();function AMc(e,t){return t===void 0&&(t=0),uMc.operate(function(r,n){r.subscribe(gMc.createOperatorSubscriber(n,function(a){return MOr.executeSchedule(n,e,function(){return n.next(a)},t)},function(){return MOr.executeSchedule(n,e,function(){return n.complete()},t)},function(a){return MOr.executeSchedule(n,e,function(){return n.error(a)},t)}))})}Swt.observeOn=AMc});var exe=H(vwt=>{"use strict";Object.defineProperty(vwt,"__esModule",{value:!0});vwt.subscribeOn=void 0;var dMc=$g();function pMc(e,t){return t===void 0&&(t=0),dMc.operate(function(r,n){n.add(e.schedule(function(){return r.subscribe(n)},t))})}vwt.subscribeOn=pMc});var Yji=H(Bwt=>{"use strict";Object.defineProperty(Bwt,"__esModule",{value:!0});Bwt.scheduleObservable=void 0;var fMc=ph(),IMc=$ke(),hMc=exe();function mMc(e,t){return fMc.innerFrom(e).pipe(hMc.subscribeOn(t),IMc.observeOn(t))}Bwt.scheduleObservable=mMc});var Qji=H(wwt=>{"use strict";Object.defineProperty(wwt,"__esModule",{value:!0});wwt.schedulePromise=void 0;var CMc=ph(),_Mc=$ke(),yMc=exe();function bMc(e,t){return CMc.innerFrom(e).pipe(yMc.subscribeOn(t),_Mc.observeOn(t))}wwt.schedulePromise=bMc});var Xji=H(Twt=>{"use strict";Object.defineProperty(Twt,"__esModule",{value:!0});Twt.scheduleArray=void 0;var EMc=Ab();function SMc(e,t){return new EMc.Observable(function(r){var n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}Twt.scheduleArray=SMc});var HOr=H(Rwt=>{"use strict";Object.defineProperty(Rwt,"__esModule",{value:!0});Rwt.scheduleIterable=void 0;var vMc=Ab(),BMc=VOr(),wMc=vy(),Jji=fte();function TMc(e,t){return new vMc.Observable(function(r){var n;return Jji.executeSchedule(r,t,function(){n=e[BMc.iterator](),Jji.executeSchedule(r,t,function(){var a,o,l;try{a=n.next(),o=a.value,l=a.done}catch(A){r.error(A);return}l?r.complete():r.next(o)},0,!0)}),function(){return wMc.isFunction(n?.return)&&n.return()}})}Rwt.scheduleIterable=TMc});var YOr=H(Nwt=>{"use strict";Object.defineProperty(Nwt,"__esModule",{value:!0});Nwt.scheduleAsyncIterable=void 0;var RMc=Ab(),Uji=fte();function NMc(e,t){if(!e)throw new Error("Iterable cannot be null");return new RMc.Observable(function(r){Uji.executeSchedule(r,t,function(){var n=e[Symbol.asyncIterator]();Uji.executeSchedule(r,t,function(){n.next().then(function(a){a.done?r.complete():r.next(a.value)})},0,!0)})})}Nwt.scheduleAsyncIterable=NMc});var Kji=H(Dwt=>{"use strict";Object.defineProperty(Dwt,"__esModule",{value:!0});Dwt.scheduleReadableStreamLike=void 0;var DMc=YOr(),kMc=bwt();function xMc(e,t){return DMc.scheduleAsyncIterable(kMc.readableStreamLikeToAsyncGenerator(e),t)}Dwt.scheduleReadableStreamLike=xMc});var QOr=H(kwt=>{"use strict";Object.defineProperty(kwt,"__esModule",{value:!0});kwt.scheduled=void 0;var GMc=Yji(),FMc=Qji(),ZMc=Xji(),LMc=HOr(),VMc=YOr(),WMc=FOr(),OMc=GOr(),PMc=Iwt(),MMc=WOr(),HMc=ZOr(),YMc=LOr(),QMc=bwt(),XMc=Kji();function JMc(e,t){if(e!=null){if(WMc.isInteropObservable(e))return GMc.scheduleObservable(e,t);if(PMc.isArrayLike(e))return ZMc.scheduleArray(e,t);if(OMc.isPromise(e))return FMc.schedulePromise(e,t);if(HMc.isAsyncIterable(e))return VMc.scheduleAsyncIterable(e,t);if(MMc.isIterable(e))return LMc.scheduleIterable(e,t);if(QMc.isReadableStreamLike(e))return XMc.scheduleReadableStreamLike(e,t)}throw YMc.createInvalidObservableTypeError(e)}kwt.scheduled=JMc});var Ite=H(xwt=>{"use strict";Object.defineProperty(xwt,"__esModule",{value:!0});xwt.from=void 0;var UMc=QOr(),KMc=ph();function jMc(e,t){return t?UMc.scheduled(e,t):KMc.innerFrom(e)}xwt.from=jMc});var Fwt=H(Gwt=>{"use strict";Object.defineProperty(Gwt,"__esModule",{value:!0});Gwt.of=void 0;var zMc=YV(),qMc=Ite();function $Mc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(Zwt,"__esModule",{value:!0});Zwt.throwError=void 0;var eHc=Ab(),tHc=vy();function rHc(e,t){var r=tHc.isFunction(e)?e:function(){return e},n=function(a){return a.error(r())};return new eHc.Observable(t?function(a){return t.schedule(n,0,a)}:n)}Zwt.throwError=rHc});var Lwt=H(hte=>{"use strict";Object.defineProperty(hte,"__esModule",{value:!0});hte.observeNotification=hte.Notification=hte.NotificationKind=void 0;var nHc=W4(),iHc=Fwt(),sHc=XOr(),oHc=vy(),aHc;(function(e){e.NEXT="N",e.ERROR="E",e.COMPLETE="C"})(aHc=hte.NotificationKind||(hte.NotificationKind={}));var cHc=function(){function e(t,r,n){this.kind=t,this.value=r,this.error=n,this.hasValue=t==="N"}return e.prototype.observe=function(t){return jji(this,t)},e.prototype.do=function(t,r,n){var a=this,o=a.kind,l=a.value,A=a.error;return o==="N"?t?.(l):o==="E"?r?.(A):n?.()},e.prototype.accept=function(t,r,n){var a;return oHc.isFunction((a=t)===null||a===void 0?void 0:a.next)?this.observe(t):this.do(t,r,n)},e.prototype.toObservable=function(){var t=this,r=t.kind,n=t.value,a=t.error,o=r==="N"?iHc.of(n):r==="E"?sHc.throwError(function(){return a}):r==="C"?nHc.EMPTY:0;if(!o)throw new TypeError("Unexpected notification kind "+r);return o},e.createNext=function(t){return new e("N",t)},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e}();hte.Notification=cHc;function jji(e,t){var r,n,a,o=e,l=o.kind,A=o.value,f=o.error;if(typeof l!="string")throw new TypeError('Invalid notification, missing "kind"');l==="N"?(r=t.next)===null||r===void 0||r.call(t,A):l==="E"?(n=t.error)===null||n===void 0||n.call(t,f):(a=t.complete)===null||a===void 0||a.call(t)}hte.observeNotification=jji});var qji=H(Vwt=>{"use strict";Object.defineProperty(Vwt,"__esModule",{value:!0});Vwt.isObservable=void 0;var lHc=Ab(),zji=vy();function uHc(e){return!!e&&(e instanceof lHc.Observable||zji.isFunction(e.lift)&&zji.isFunction(e.subscribe))}Vwt.isObservable=uHc});var Fle=H(Wwt=>{"use strict";Object.defineProperty(Wwt,"__esModule",{value:!0});Wwt.EmptyError=void 0;var gHc=Dle();Wwt.EmptyError=gHc.createErrorClass(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});var $ji=H(Owt=>{"use strict";Object.defineProperty(Owt,"__esModule",{value:!0});Owt.lastValueFrom=void 0;var AHc=Fle();function dHc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=!1,l;e.subscribe({next:function(A){l=A,o=!0},error:a,complete:function(){o?n(l):r?n(t.defaultValue):a(new AHc.EmptyError)}})})}Owt.lastValueFrom=dHc});var e7i=H(Pwt=>{"use strict";Object.defineProperty(Pwt,"__esModule",{value:!0});Pwt.firstValueFrom=void 0;var pHc=Fle(),fHc=Dke();function IHc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=new fHc.SafeSubscriber({next:function(l){n(l),o.unsubscribe()},error:a,complete:function(){r?n(t.defaultValue):a(new pHc.EmptyError)}});e.subscribe(o)})}Pwt.firstValueFrom=IHc});var JOr=H(Mwt=>{"use strict";Object.defineProperty(Mwt,"__esModule",{value:!0});Mwt.ArgumentOutOfRangeError=void 0;var hHc=Dle();Mwt.ArgumentOutOfRangeError=hHc.createErrorClass(function(e){return function(){e(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var UOr=H(Hwt=>{"use strict";Object.defineProperty(Hwt,"__esModule",{value:!0});Hwt.NotFoundError=void 0;var mHc=Dle();Hwt.NotFoundError=mHc.createErrorClass(function(e){return function(r){e(this),this.name="NotFoundError",this.message=r}})});var KOr=H(Ywt=>{"use strict";Object.defineProperty(Ywt,"__esModule",{value:!0});Ywt.SequenceError=void 0;var CHc=Dle();Ywt.SequenceError=CHc.createErrorClass(function(e){return function(r){e(this),this.name="SequenceError",this.message=r}})});var Xwt=H(Qwt=>{"use strict";Object.defineProperty(Qwt,"__esModule",{value:!0});Qwt.isValidDate=void 0;function _Hc(e){return e instanceof Date&&!isNaN(e)}Qwt.isValidDate=_Hc});var E8e=H(N_e=>{"use strict";Object.defineProperty(N_e,"__esModule",{value:!0});N_e.timeout=N_e.TimeoutError=void 0;var yHc=HV(),bHc=Xwt(),EHc=$g(),SHc=ph(),vHc=Dle(),BHc=yd(),wHc=fte();N_e.TimeoutError=vHc.createErrorClass(function(e){return function(r){r===void 0&&(r=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r}});function THc(e,t){var r=bHc.isValidDate(e)?{first:e}:typeof e=="number"?{each:e}:e,n=r.first,a=r.each,o=r.with,l=o===void 0?RHc:o,A=r.scheduler,f=A===void 0?t??yHc.asyncScheduler:A,I=r.meta,C=I===void 0?null:I;if(n==null&&a==null)throw new TypeError("No timeout provided.");return EHc.operate(function(b,E){var N,B,F=null,Q=0,J=function(ae){B=wHc.executeSchedule(E,f,function(){try{N.unsubscribe(),SHc.innerFrom(l({meta:C,lastValue:F,seen:Q})).subscribe(E)}catch(ne){E.error(ne)}},ae)};N=b.subscribe(BHc.createOperatorSubscriber(E,function(ae){B?.unsubscribe(),Q++,E.next(F=ae),a>0&&J(a)},void 0,void 0,function(){B?.closed||B?.unsubscribe(),F=null})),!Q&&J(n!=null?typeof n=="number"?n:+n-f.now():a)})}N_e.timeout=THc;function RHc(e){throw new N_e.TimeoutError(e)}});var mte=H(Jwt=>{"use strict";Object.defineProperty(Jwt,"__esModule",{value:!0});Jwt.map=void 0;var NHc=$g(),DHc=yd();function kHc(e,t){return NHc.operate(function(r,n){var a=0;r.subscribe(DHc.createOperatorSubscriber(n,function(o){n.next(e.call(t,o,a++))}))})}Jwt.map=kHc});var Lle=H(Zle=>{"use strict";var xHc=Zle&&Zle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},GHc=Zle&&Zle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var WHc=Vle&&Vle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},t7i=Vle&&Vle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(Uwt,"__esModule",{value:!0});Uwt.bindCallback=void 0;var XHc=zOr();function JHc(e,t,r){return XHc.bindCallbackInternals(!1,e,t,r)}Uwt.bindCallback=JHc});var n7i=H(Kwt=>{"use strict";Object.defineProperty(Kwt,"__esModule",{value:!0});Kwt.bindNodeCallback=void 0;var UHc=zOr();function KHc(e,t,r){return UHc.bindCallbackInternals(!0,e,t,r)}Kwt.bindNodeCallback=KHc});var qOr=H(jwt=>{"use strict";Object.defineProperty(jwt,"__esModule",{value:!0});jwt.argsArgArrayOrObject=void 0;var jHc=Array.isArray,zHc=Object.getPrototypeOf,qHc=Object.prototype,$Hc=Object.keys;function eYc(e){if(e.length===1){var t=e[0];if(jHc(t))return{args:t,keys:null};if(tYc(t)){var r=$Hc(t);return{args:r.map(function(n){return t[n]}),keys:r}}}return{args:e,keys:null}}jwt.argsArgArrayOrObject=eYc;function tYc(e){return e&&typeof e=="object"&&zHc(e)===qHc}});var $Or=H(zwt=>{"use strict";Object.defineProperty(zwt,"__esModule",{value:!0});zwt.createObject=void 0;function rYc(e,t){return e.reduce(function(r,n,a){return r[n]=t[a],r},{})}zwt.createObject=rYc});var qwt=H(txe=>{"use strict";Object.defineProperty(txe,"__esModule",{value:!0});txe.combineLatestInit=txe.combineLatest=void 0;var nYc=Ab(),iYc=qOr(),o7i=Ite(),a7i=ox(),sYc=Lle(),i7i=YV(),oYc=$Or(),aYc=yd(),cYc=fte();function lYc(){for(var e=[],t=0;t{"use strict";Object.defineProperty($wt,"__esModule",{value:!0});$wt.mergeInternals=void 0;var uYc=ph(),gYc=fte(),l7i=yd();function AYc(e,t,r,n,a,o,l,A){var f=[],I=0,C=0,b=!1,E=function(){b&&!f.length&&!I&&t.complete()},N=function(F){return I{"use strict";Object.defineProperty(tTt,"__esModule",{value:!0});tTt.mergeMap=void 0;var dYc=mte(),pYc=ph(),fYc=$g(),IYc=eTt(),hYc=vy();function u7i(e,t,r){return r===void 0&&(r=1/0),hYc.isFunction(t)?u7i(function(n,a){return dYc.map(function(o,l){return t(n,o,a,l)})(pYc.innerFrom(e(n,a)))},r):(typeof t=="number"&&(r=t),fYc.operate(function(n,a){return IYc.mergeInternals(n,a,e,r)}))}tTt.mergeMap=u7i});var rxe=H(rTt=>{"use strict";Object.defineProperty(rTt,"__esModule",{value:!0});rTt.mergeAll=void 0;var mYc=oj(),CYc=ox();function _Yc(e){return e===void 0&&(e=1/0),mYc.mergeMap(CYc.identity,e)}rTt.mergeAll=_Yc});var S8e=H(nTt=>{"use strict";Object.defineProperty(nTt,"__esModule",{value:!0});nTt.concatAll=void 0;var yYc=rxe();function bYc(){return yYc.mergeAll(1)}nTt.concatAll=bYc});var v8e=H(iTt=>{"use strict";Object.defineProperty(iTt,"__esModule",{value:!0});iTt.concat=void 0;var EYc=S8e(),SYc=YV(),vYc=Ite();function BYc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(sTt,"__esModule",{value:!0});sTt.defer=void 0;var wYc=Ab(),TYc=ph();function RYc(e){return new wYc.Observable(function(t){TYc.innerFrom(e()).subscribe(t)})}sTt.defer=RYc});var g7i=H(oTt=>{"use strict";Object.defineProperty(oTt,"__esModule",{value:!0});oTt.connectable=void 0;var NYc=ax(),DYc=Ab(),kYc=B8e(),xYc={connector:function(){return new NYc.Subject},resetOnDisconnect:!0};function GYc(e,t){t===void 0&&(t=xYc);var r=null,n=t.connector,a=t.resetOnDisconnect,o=a===void 0?!0:a,l=n(),A=new DYc.Observable(function(f){return l.subscribe(f)});return A.connect=function(){return(!r||r.closed)&&(r=kYc.defer(function(){return e}).subscribe(l),o&&r.add(function(){return l=n()})),r},A}oTt.connectable=GYc});var A7i=H(aTt=>{"use strict";Object.defineProperty(aTt,"__esModule",{value:!0});aTt.forkJoin=void 0;var FYc=Ab(),ZYc=qOr(),LYc=ph(),VYc=YV(),WYc=yd(),OYc=Lle(),PYc=$Or();function MYc(){for(var e=[],t=0;t{"use strict";var HYc=nxe&&nxe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o};Object.defineProperty(nxe,"__esModule",{value:!0});nxe.fromEvent=void 0;var YYc=ph(),QYc=Ab(),XYc=oj(),JYc=Iwt(),D_e=vy(),UYc=Lle(),KYc=["addListener","removeListener"],jYc=["addEventListener","removeEventListener"],zYc=["on","off"];function ePr(e,t,r,n){if(D_e.isFunction(r)&&(n=r,r=void 0),n)return ePr(e,t,r).pipe(UYc.mapOneOrManyArgs(n));var a=HYc(eQc(e)?jYc.map(function(A){return function(f){return e[A](t,f,r)}}):qYc(e)?KYc.map(d7i(e,t)):$Yc(e)?zYc.map(d7i(e,t)):[],2),o=a[0],l=a[1];if(!o&&JYc.isArrayLike(e))return XYc.mergeMap(function(A){return ePr(A,t,r)})(YYc.innerFrom(e));if(!o)throw new TypeError("Invalid event target");return new QYc.Observable(function(A){var f=function(){for(var I=[],C=0;C{"use strict";Object.defineProperty(cTt,"__esModule",{value:!0});cTt.fromEventPattern=void 0;var tQc=Ab(),rQc=vy(),nQc=Lle();function f7i(e,t,r){return r?f7i(e,t).pipe(nQc.mapOneOrManyArgs(r)):new tQc.Observable(function(n){var a=function(){for(var l=[],A=0;A{"use strict";var iQc=ixe&&ixe.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]{"use strict";Object.defineProperty(lTt,"__esModule",{value:!0});lTt.iif=void 0;var lQc=B8e();function uQc(e,t,r){return lQc.defer(function(){return e()?t:r})}lTt.iif=uQc});var Wle=H(uTt=>{"use strict";Object.defineProperty(uTt,"__esModule",{value:!0});uTt.timer=void 0;var gQc=Ab(),AQc=HV(),dQc=b8e(),pQc=Xwt();function fQc(e,t,r){e===void 0&&(e=0),r===void 0&&(r=AQc.async);var n=-1;return t!=null&&(dQc.isScheduler(t)?r=t:n=t),new gQc.Observable(function(a){var o=pQc.isValidDate(e)?+e-r.now():e;o<0&&(o=0);var l=0;return r.schedule(function(){a.closed||(a.next(l++),0<=n?this.schedule(void 0,n):a.complete())},o)})}uTt.timer=fQc});var tPr=H(gTt=>{"use strict";Object.defineProperty(gTt,"__esModule",{value:!0});gTt.interval=void 0;var IQc=HV(),hQc=Wle();function mQc(e,t){return e===void 0&&(e=0),t===void 0&&(t=IQc.asyncScheduler),e<0&&(e=0),hQc.timer(e,e,t)}gTt.interval=mQc});var y7i=H(ATt=>{"use strict";Object.defineProperty(ATt,"__esModule",{value:!0});ATt.merge=void 0;var CQc=rxe(),_Qc=ph(),yQc=W4(),_7i=YV(),bQc=Ite();function EQc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(k_e,"__esModule",{value:!0});k_e.never=k_e.NEVER=void 0;var SQc=Ab(),vQc=sx();k_e.NEVER=new SQc.Observable(vQc.noop);function BQc(){return k_e.NEVER}k_e.never=BQc});var Ole=H(dTt=>{"use strict";Object.defineProperty(dTt,"__esModule",{value:!0});dTt.argsOrArgArray=void 0;var wQc=Array.isArray;function TQc(e){return e.length===1&&wQc(e[0])?e[0]:e}dTt.argsOrArgArray=TQc});var nPr=H(pTt=>{"use strict";Object.defineProperty(pTt,"__esModule",{value:!0});pTt.onErrorResumeNext=void 0;var RQc=Ab(),NQc=Ole(),DQc=yd(),b7i=sx(),kQc=ph();function xQc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(fTt,"__esModule",{value:!0});fTt.pairs=void 0;var GQc=Ite();function FQc(e,t){return GQc.from(Object.entries(e),t)}fTt.pairs=FQc});var iPr=H(ITt=>{"use strict";Object.defineProperty(ITt,"__esModule",{value:!0});ITt.not=void 0;function ZQc(e,t){return function(r,n){return!e.call(t,r,n)}}ITt.not=ZQc});var Cte=H(hTt=>{"use strict";Object.defineProperty(hTt,"__esModule",{value:!0});hTt.filter=void 0;var LQc=$g(),VQc=yd();function WQc(e,t){return LQc.operate(function(r,n){var a=0;r.subscribe(VQc.createOperatorSubscriber(n,function(o){return e.call(t,o,a++)&&n.next(o)}))})}hTt.filter=WQc});var B7i=H(mTt=>{"use strict";Object.defineProperty(mTt,"__esModule",{value:!0});mTt.partition=void 0;var OQc=iPr(),S7i=Cte(),v7i=ph();function PQc(e,t,r){return[S7i.filter(t,r)(v7i.innerFrom(e)),S7i.filter(OQc.not(t,r))(v7i.innerFrom(e))]}mTt.partition=PQc});var sPr=H(sxe=>{"use strict";Object.defineProperty(sxe,"__esModule",{value:!0});sxe.raceInit=sxe.race=void 0;var MQc=Ab(),w7i=ph(),HQc=Ole(),YQc=yd();function QQc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(CTt,"__esModule",{value:!0});CTt.range=void 0;var XQc=Ab(),JQc=W4();function UQc(e,t,r){if(t==null&&(t=e,e=0),t<=0)return JQc.EMPTY;var n=t+e;return new XQc.Observable(r?function(a){var o=e;return r.schedule(function(){o{"use strict";Object.defineProperty(_Tt,"__esModule",{value:!0});_Tt.using=void 0;var KQc=Ab(),jQc=ph(),zQc=W4();function qQc(e,t){return new KQc.Observable(function(r){var n=e(),a=t(n),o=a?jQc.innerFrom(a):zQc.EMPTY;return o.subscribe(r),function(){n&&n.unsubscribe()}})}_Tt.using=qQc});var yTt=H(Ple=>{"use strict";var $Qc=Ple&&Ple.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},eXc=Ple&&Ple.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(D7i,"__esModule",{value:!0})});var ETt=H(bTt=>{"use strict";Object.defineProperty(bTt,"__esModule",{value:!0});bTt.audit=void 0;var cXc=$g(),lXc=ph(),x7i=yd();function uXc(e){return cXc.operate(function(t,r){var n=!1,a=null,o=null,l=!1,A=function(){if(o?.unsubscribe(),o=null,n){n=!1;var I=a;a=null,r.next(I)}l&&r.complete()},f=function(){o=null,l&&r.complete()};t.subscribe(x7i.createOperatorSubscriber(r,function(I){n=!0,a=I,o||lXc.innerFrom(e(I)).subscribe(o=x7i.createOperatorSubscriber(r,A,f))},function(){l=!0,(!n||!o||o.closed)&&r.complete()}))})}bTt.audit=uXc});var oPr=H(STt=>{"use strict";Object.defineProperty(STt,"__esModule",{value:!0});STt.auditTime=void 0;var gXc=HV(),AXc=ETt(),dXc=Wle();function pXc(e,t){return t===void 0&&(t=gXc.asyncScheduler),AXc.audit(function(){return dXc.timer(e,t)})}STt.auditTime=pXc});var aPr=H(vTt=>{"use strict";Object.defineProperty(vTt,"__esModule",{value:!0});vTt.buffer=void 0;var fXc=$g(),IXc=sx(),G7i=yd(),hXc=ph();function mXc(e){return fXc.operate(function(t,r){var n=[];return t.subscribe(G7i.createOperatorSubscriber(r,function(a){return n.push(a)},function(){r.next(n),r.complete()})),hXc.innerFrom(e).subscribe(G7i.createOperatorSubscriber(r,function(){var a=n;n=[],r.next(a)},IXc.noop)),function(){n=null}})}vTt.buffer=mXc});var lPr=H(oxe=>{"use strict";var cPr=oxe&&oxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(oxe,"__esModule",{value:!0});oxe.bufferCount=void 0;var CXc=$g(),_Xc=yd(),yXc=pte();function bXc(e,t){return t===void 0&&(t=null),t=t??e,CXc.operate(function(r,n){var a=[],o=0;r.subscribe(_Xc.createOperatorSubscriber(n,function(l){var A,f,I,C,b=null;o++%t===0&&a.push([]);try{for(var E=cPr(a),N=E.next();!N.done;N=E.next()){var B=N.value;B.push(l),e<=B.length&&(b=b??[],b.push(B))}}catch(J){A={error:J}}finally{try{N&&!N.done&&(f=E.return)&&f.call(E)}finally{if(A)throw A.error}}if(b)try{for(var F=cPr(b),Q=F.next();!Q.done;Q=F.next()){var B=Q.value;yXc.arrRemove(a,B),n.next(B)}}catch(J){I={error:J}}finally{try{Q&&!Q.done&&(C=F.return)&&C.call(F)}finally{if(I)throw I.error}}},function(){var l,A;try{for(var f=cPr(a),I=f.next();!I.done;I=f.next()){var C=I.value;n.next(C)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}n.complete()},void 0,function(){a=null}))})}oxe.bufferCount=bXc});var uPr=H(axe=>{"use strict";var EXc=axe&&axe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(axe,"__esModule",{value:!0});axe.bufferTime=void 0;var SXc=GP(),vXc=$g(),BXc=yd(),wXc=pte(),TXc=HV(),RXc=YV(),F7i=fte();function NXc(e){for(var t,r,n=[],a=1;a=0?F7i.executeSchedule(I,o,N,l,!0):b=!0,N();var B=BXc.createOperatorSubscriber(I,function(F){var Q,J,ae=C.slice();try{for(var ne=EXc(ae),ce=ne.next();!ce.done;ce=ne.next()){var fe=ce.value,ue=fe.buffer;ue.push(F),A<=ue.length&&E(fe)}}catch(de){Q={error:de}}finally{try{ce&&!ce.done&&(J=ne.return)&&J.call(ne)}finally{if(Q)throw Q.error}}},function(){for(;C?.length;)I.next(C.shift().buffer);B?.unsubscribe(),I.complete(),I.unsubscribe()},void 0,function(){return C=null});f.subscribe(B)})}axe.bufferTime=NXc});var APr=H(cxe=>{"use strict";var DXc=cxe&&cxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(cxe,"__esModule",{value:!0});cxe.bufferToggle=void 0;var kXc=GP(),xXc=$g(),Z7i=ph(),gPr=yd(),L7i=sx(),GXc=pte();function FXc(e,t){return xXc.operate(function(r,n){var a=[];Z7i.innerFrom(e).subscribe(gPr.createOperatorSubscriber(n,function(o){var l=[];a.push(l);var A=new kXc.Subscription,f=function(){GXc.arrRemove(a,l),n.next(l),A.unsubscribe()};A.add(Z7i.innerFrom(t(o)).subscribe(gPr.createOperatorSubscriber(n,f,L7i.noop)))},L7i.noop)),r.subscribe(gPr.createOperatorSubscriber(n,function(o){var l,A;try{for(var f=DXc(a),I=f.next();!I.done;I=f.next()){var C=I.value;C.push(o)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}},function(){for(;a.length>0;)n.next(a.shift());n.complete()}))})}cxe.bufferToggle=FXc});var dPr=H(BTt=>{"use strict";Object.defineProperty(BTt,"__esModule",{value:!0});BTt.bufferWhen=void 0;var ZXc=$g(),LXc=sx(),V7i=yd(),VXc=ph();function WXc(e){return ZXc.operate(function(t,r){var n=null,a=null,o=function(){a?.unsubscribe();var l=n;n=[],l&&r.next(l),VXc.innerFrom(e()).subscribe(a=V7i.createOperatorSubscriber(r,o,LXc.noop))};o(),t.subscribe(V7i.createOperatorSubscriber(r,function(l){return n?.push(l)},function(){n&&r.next(n),r.complete()},void 0,function(){return n=a=null}))})}BTt.bufferWhen=WXc});var pPr=H(wTt=>{"use strict";Object.defineProperty(wTt,"__esModule",{value:!0});wTt.catchError=void 0;var OXc=ph(),PXc=yd(),MXc=$g();function W7i(e){return MXc.operate(function(t,r){var n=null,a=!1,o;n=t.subscribe(PXc.createOperatorSubscriber(r,void 0,void 0,function(l){o=OXc.innerFrom(e(l,W7i(e)(t))),n?(n.unsubscribe(),n=null,o.subscribe(r)):a=!0})),a&&(n.unsubscribe(),n=null,o.subscribe(r))})}wTt.catchError=W7i});var fPr=H(TTt=>{"use strict";Object.defineProperty(TTt,"__esModule",{value:!0});TTt.scanInternals=void 0;var HXc=yd();function YXc(e,t,r,n,a){return function(o,l){var A=r,f=t,I=0;o.subscribe(HXc.createOperatorSubscriber(l,function(C){var b=I++;f=A?e(f,C,b):(A=!0,C),n&&l.next(f)},a&&function(){A&&l.next(f),l.complete()}))}}TTt.scanInternals=YXc});var x_e=H(RTt=>{"use strict";Object.defineProperty(RTt,"__esModule",{value:!0});RTt.reduce=void 0;var QXc=fPr(),XXc=$g();function JXc(e,t){return XXc.operate(QXc.scanInternals(e,t,arguments.length>=2,!1,!0))}RTt.reduce=JXc});var DTt=H(NTt=>{"use strict";Object.defineProperty(NTt,"__esModule",{value:!0});NTt.toArray=void 0;var UXc=x_e(),KXc=$g(),jXc=function(e,t){return e.push(t),e};function zXc(){return KXc.operate(function(e,t){UXc.reduce(jXc,[])(e).subscribe(t)})}NTt.toArray=zXc});var IPr=H(kTt=>{"use strict";Object.defineProperty(kTt,"__esModule",{value:!0});kTt.joinAllInternals=void 0;var qXc=ox(),$Xc=Lle(),e4c=m8e(),t4c=oj(),r4c=DTt();function n4c(e,t){return e4c.pipe(r4c.toArray(),t4c.mergeMap(function(r){return e(r)}),t?$Xc.mapOneOrManyArgs(t):qXc.identity)}kTt.joinAllInternals=n4c});var GTt=H(xTt=>{"use strict";Object.defineProperty(xTt,"__esModule",{value:!0});xTt.combineLatestAll=void 0;var i4c=qwt(),s4c=IPr();function o4c(e){return s4c.joinAllInternals(i4c.combineLatest,e)}xTt.combineLatestAll=o4c});var hPr=H(FTt=>{"use strict";Object.defineProperty(FTt,"__esModule",{value:!0});FTt.combineAll=void 0;var a4c=GTt();FTt.combineAll=a4c.combineLatestAll});var mPr=H(Mle=>{"use strict";var O7i=Mle&&Mle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},P7i=Mle&&Mle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var p4c=Hle&&Hle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},f4c=Hle&&Hle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ZTt,"__esModule",{value:!0});ZTt.concatMap=void 0;var H7i=oj(),m4c=vy();function C4c(e,t){return m4c.isFunction(t)?H7i.mergeMap(e,t,1):H7i.mergeMap(e,1)}ZTt.concatMap=C4c});var _Pr=H(VTt=>{"use strict";Object.defineProperty(VTt,"__esModule",{value:!0});VTt.concatMapTo=void 0;var Y7i=LTt(),_4c=vy();function y4c(e,t){return _4c.isFunction(t)?Y7i.concatMap(function(){return e},t):Y7i.concatMap(function(){return e})}VTt.concatMapTo=y4c});var yPr=H(Yle=>{"use strict";var b4c=Yle&&Yle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},E4c=Yle&&Yle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var R4c=Qle&&Qle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},N4c=Qle&&Qle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(WTt,"__esModule",{value:!0});WTt.fromSubscribable=void 0;var x4c=Ab();function G4c(e){return new x4c.Observable(function(t){return e.subscribe(t)})}WTt.fromSubscribable=G4c});var w8e=H(OTt=>{"use strict";Object.defineProperty(OTt,"__esModule",{value:!0});OTt.connect=void 0;var F4c=ax(),Z4c=ph(),L4c=$g(),V4c=Q7i(),W4c={connector:function(){return new F4c.Subject}};function O4c(e,t){t===void 0&&(t=W4c);var r=t.connector;return L4c.operate(function(n,a){var o=r();Z4c.innerFrom(e(V4c.fromSubscribable(o))).subscribe(a),a.add(n.subscribe(o))})}OTt.connect=O4c});var EPr=H(PTt=>{"use strict";Object.defineProperty(PTt,"__esModule",{value:!0});PTt.count=void 0;var P4c=x_e();function M4c(e){return P4c.reduce(function(t,r,n){return!e||e(r,n)?t+1:t},0)}PTt.count=M4c});var SPr=H(MTt=>{"use strict";Object.defineProperty(MTt,"__esModule",{value:!0});MTt.debounce=void 0;var H4c=$g(),Y4c=sx(),X7i=yd(),Q4c=ph();function X4c(e){return H4c.operate(function(t,r){var n=!1,a=null,o=null,l=function(){if(o?.unsubscribe(),o=null,n){n=!1;var A=a;a=null,r.next(A)}};t.subscribe(X7i.createOperatorSubscriber(r,function(A){o?.unsubscribe(),n=!0,a=A,o=X7i.createOperatorSubscriber(r,l,Y4c.noop),Q4c.innerFrom(e(A)).subscribe(o)},function(){l(),r.complete()},void 0,function(){a=o=null}))})}MTt.debounce=X4c});var vPr=H(HTt=>{"use strict";Object.defineProperty(HTt,"__esModule",{value:!0});HTt.debounceTime=void 0;var J4c=HV(),U4c=$g(),K4c=yd();function j4c(e,t){return t===void 0&&(t=J4c.asyncScheduler),U4c.operate(function(r,n){var a=null,o=null,l=null,A=function(){if(a){a.unsubscribe(),a=null;var I=o;o=null,n.next(I)}};function f(){var I=l+e,C=t.now();if(C{"use strict";Object.defineProperty(YTt,"__esModule",{value:!0});YTt.defaultIfEmpty=void 0;var z4c=$g(),q4c=yd();function $4c(e){return z4c.operate(function(t,r){var n=!1;t.subscribe(q4c.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){n||r.next(e),r.complete()}))})}YTt.defaultIfEmpty=$4c});var uxe=H(QTt=>{"use strict";Object.defineProperty(QTt,"__esModule",{value:!0});QTt.take=void 0;var eJc=W4(),tJc=$g(),rJc=yd();function nJc(e){return e<=0?function(){return eJc.EMPTY}:tJc.operate(function(t,r){var n=0;t.subscribe(rJc.createOperatorSubscriber(r,function(a){++n<=e&&(r.next(a),e<=n&&r.complete())}))})}QTt.take=nJc});var JTt=H(XTt=>{"use strict";Object.defineProperty(XTt,"__esModule",{value:!0});XTt.ignoreElements=void 0;var iJc=$g(),sJc=yd(),oJc=sx();function aJc(){return iJc.operate(function(e,t){e.subscribe(sJc.createOperatorSubscriber(t,oJc.noop))})}XTt.ignoreElements=aJc});var KTt=H(UTt=>{"use strict";Object.defineProperty(UTt,"__esModule",{value:!0});UTt.mapTo=void 0;var cJc=mte();function lJc(e){return cJc.map(function(){return e})}UTt.mapTo=lJc});var zTt=H(jTt=>{"use strict";Object.defineProperty(jTt,"__esModule",{value:!0});jTt.delayWhen=void 0;var uJc=v8e(),J7i=uxe(),gJc=JTt(),AJc=KTt(),dJc=oj(),pJc=ph();function U7i(e,t){return t?function(r){return uJc.concat(t.pipe(J7i.take(1),gJc.ignoreElements()),r.pipe(U7i(e)))}:dJc.mergeMap(function(r,n){return pJc.innerFrom(e(r,n)).pipe(J7i.take(1),AJc.mapTo(r))})}jTt.delayWhen=U7i});var BPr=H(qTt=>{"use strict";Object.defineProperty(qTt,"__esModule",{value:!0});qTt.delay=void 0;var fJc=HV(),IJc=zTt(),hJc=Wle();function mJc(e,t){t===void 0&&(t=fJc.asyncScheduler);var r=hJc.timer(e,t);return IJc.delayWhen(function(){return r})}qTt.delay=mJc});var wPr=H($Tt=>{"use strict";Object.defineProperty($Tt,"__esModule",{value:!0});$Tt.dematerialize=void 0;var CJc=Lwt(),_Jc=$g(),yJc=yd();function bJc(){return _Jc.operate(function(e,t){e.subscribe(yJc.createOperatorSubscriber(t,function(r){return CJc.observeNotification(r,t)}))})}$Tt.dematerialize=bJc});var TPr=H(eRt=>{"use strict";Object.defineProperty(eRt,"__esModule",{value:!0});eRt.distinct=void 0;var EJc=$g(),K7i=yd(),SJc=sx(),vJc=ph();function BJc(e,t){return EJc.operate(function(r,n){var a=new Set;r.subscribe(K7i.createOperatorSubscriber(n,function(o){var l=e?e(o):o;a.has(l)||(a.add(l),n.next(o))})),t&&vJc.innerFrom(t).subscribe(K7i.createOperatorSubscriber(n,function(){return a.clear()},SJc.noop))})}eRt.distinct=BJc});var rRt=H(tRt=>{"use strict";Object.defineProperty(tRt,"__esModule",{value:!0});tRt.distinctUntilChanged=void 0;var wJc=ox(),TJc=$g(),RJc=yd();function NJc(e,t){return t===void 0&&(t=wJc.identity),e=e??DJc,TJc.operate(function(r,n){var a,o=!0;r.subscribe(RJc.createOperatorSubscriber(n,function(l){var A=t(l);(o||!e(a,A))&&(o=!1,a=A,n.next(l))}))})}tRt.distinctUntilChanged=NJc;function DJc(e,t){return e===t}});var RPr=H(nRt=>{"use strict";Object.defineProperty(nRt,"__esModule",{value:!0});nRt.distinctUntilKeyChanged=void 0;var kJc=rRt();function xJc(e,t){return kJc.distinctUntilChanged(function(r,n){return t?t(r[e],n[e]):r[e]===n[e]})}nRt.distinctUntilKeyChanged=xJc});var gxe=H(iRt=>{"use strict";Object.defineProperty(iRt,"__esModule",{value:!0});iRt.throwIfEmpty=void 0;var GJc=Fle(),FJc=$g(),ZJc=yd();function LJc(e){return e===void 0&&(e=VJc),FJc.operate(function(t,r){var n=!1;t.subscribe(ZJc.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){return n?r.complete():r.error(e())}))})}iRt.throwIfEmpty=LJc;function VJc(){return new GJc.EmptyError}});var NPr=H(sRt=>{"use strict";Object.defineProperty(sRt,"__esModule",{value:!0});sRt.elementAt=void 0;var j7i=JOr(),WJc=Cte(),OJc=gxe(),PJc=lxe(),MJc=uxe();function HJc(e,t){if(e<0)throw new j7i.ArgumentOutOfRangeError;var r=arguments.length>=2;return function(n){return n.pipe(WJc.filter(function(a,o){return o===e}),MJc.take(1),r?PJc.defaultIfEmpty(t):OJc.throwIfEmpty(function(){return new j7i.ArgumentOutOfRangeError}))}}sRt.elementAt=HJc});var DPr=H(Xle=>{"use strict";var YJc=Xle&&Xle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},QJc=Xle&&Xle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(oRt,"__esModule",{value:!0});oRt.every=void 0;var KJc=$g(),jJc=yd();function zJc(e,t){return KJc.operate(function(r,n){var a=0;r.subscribe(jJc.createOperatorSubscriber(n,function(o){e.call(t,o,a++,r)||(n.next(!1),n.complete())},function(){n.next(!0),n.complete()}))})}oRt.every=zJc});var cRt=H(aRt=>{"use strict";Object.defineProperty(aRt,"__esModule",{value:!0});aRt.exhaustMap=void 0;var qJc=mte(),z7i=ph(),$Jc=$g(),q7i=yd();function $7i(e,t){return t?function(r){return r.pipe($7i(function(n,a){return z7i.innerFrom(e(n,a)).pipe(qJc.map(function(o,l){return t(n,o,a,l)}))}))}:$Jc.operate(function(r,n){var a=0,o=null,l=!1;r.subscribe(q7i.createOperatorSubscriber(n,function(A){o||(o=q7i.createOperatorSubscriber(n,void 0,function(){o=null,l&&n.complete()}),z7i.innerFrom(e(A,a++)).subscribe(o))},function(){l=!0,!o&&n.complete()}))})}aRt.exhaustMap=$7i});var uRt=H(lRt=>{"use strict";Object.defineProperty(lRt,"__esModule",{value:!0});lRt.exhaustAll=void 0;var eUc=cRt(),tUc=ox();function rUc(){return eUc.exhaustMap(tUc.identity)}lRt.exhaustAll=rUc});var xPr=H(gRt=>{"use strict";Object.defineProperty(gRt,"__esModule",{value:!0});gRt.exhaust=void 0;var nUc=uRt();gRt.exhaust=nUc.exhaustAll});var GPr=H(ARt=>{"use strict";Object.defineProperty(ARt,"__esModule",{value:!0});ARt.expand=void 0;var iUc=$g(),sUc=eTt();function oUc(e,t,r){return t===void 0&&(t=1/0),t=(t||0)<1?1/0:t,iUc.operate(function(n,a){return sUc.mergeInternals(n,a,e,t,void 0,!0,r)})}ARt.expand=oUc});var FPr=H(dRt=>{"use strict";Object.defineProperty(dRt,"__esModule",{value:!0});dRt.finalize=void 0;var aUc=$g();function cUc(e){return aUc.operate(function(t,r){try{t.subscribe(r)}finally{r.add(e)}})}dRt.finalize=cUc});var pRt=H(Axe=>{"use strict";Object.defineProperty(Axe,"__esModule",{value:!0});Axe.createFind=Axe.find=void 0;var lUc=$g(),uUc=yd();function gUc(e,t){return lUc.operate(ezi(e,t,"value"))}Axe.find=gUc;function ezi(e,t,r){var n=r==="index";return function(a,o){var l=0;a.subscribe(uUc.createOperatorSubscriber(o,function(A){var f=l++;e.call(t,A,f,a)&&(o.next(n?f:A),o.complete())},function(){o.next(n?-1:void 0),o.complete()}))}}Axe.createFind=ezi});var ZPr=H(fRt=>{"use strict";Object.defineProperty(fRt,"__esModule",{value:!0});fRt.findIndex=void 0;var AUc=$g(),dUc=pRt();function pUc(e,t){return AUc.operate(dUc.createFind(e,t,"index"))}fRt.findIndex=pUc});var LPr=H(IRt=>{"use strict";Object.defineProperty(IRt,"__esModule",{value:!0});IRt.first=void 0;var fUc=Fle(),IUc=Cte(),hUc=uxe(),mUc=lxe(),CUc=gxe(),_Uc=ox();function yUc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?IUc.filter(function(a,o){return e(a,o,n)}):_Uc.identity,hUc.take(1),r?mUc.defaultIfEmpty(t):CUc.throwIfEmpty(function(){return new fUc.EmptyError}))}}IRt.first=yUc});var VPr=H(hRt=>{"use strict";Object.defineProperty(hRt,"__esModule",{value:!0});hRt.groupBy=void 0;var bUc=Ab(),EUc=ph(),SUc=ax(),vUc=$g(),tzi=yd();function BUc(e,t,r,n){return vUc.operate(function(a,o){var l;!t||typeof t=="function"?l=t:(r=t.duration,l=t.element,n=t.connector);var A=new Map,f=function(B){A.forEach(B),B(o)},I=function(B){return f(function(F){return F.error(B)})},C=0,b=!1,E=new tzi.OperatorSubscriber(o,function(B){try{var F=e(B),Q=A.get(F);if(!Q){A.set(F,Q=n?n():new SUc.Subject);var J=N(F,Q);if(o.next(J),r){var ae=tzi.createOperatorSubscriber(Q,function(){Q.complete(),ae?.unsubscribe()},void 0,void 0,function(){return A.delete(F)});E.add(EUc.innerFrom(r(J)).subscribe(ae))}}Q.next(l?l(B):B)}catch(ne){I(ne)}},function(){return f(function(B){return B.complete()})},I,function(){return A.clear()},function(){return b=!0,C===0});a.subscribe(E);function N(B,F){var Q=new bUc.Observable(function(J){C++;var ae=F.subscribe(J);return function(){ae.unsubscribe(),--C===0&&b&&E.unsubscribe()}});return Q.key=B,Q}})}hRt.groupBy=BUc});var WPr=H(mRt=>{"use strict";Object.defineProperty(mRt,"__esModule",{value:!0});mRt.isEmpty=void 0;var wUc=$g(),TUc=yd();function RUc(){return wUc.operate(function(e,t){e.subscribe(TUc.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}mRt.isEmpty=RUc});var CRt=H(dxe=>{"use strict";var NUc=dxe&&dxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(dxe,"__esModule",{value:!0});dxe.takeLast=void 0;var DUc=W4(),kUc=$g(),xUc=yd();function GUc(e){return e<=0?function(){return DUc.EMPTY}:kUc.operate(function(t,r){var n=[];t.subscribe(xUc.createOperatorSubscriber(r,function(a){n.push(a),e{"use strict";Object.defineProperty(_Rt,"__esModule",{value:!0});_Rt.last=void 0;var FUc=Fle(),ZUc=Cte(),LUc=CRt(),VUc=gxe(),WUc=lxe(),OUc=ox();function PUc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?ZUc.filter(function(a,o){return e(a,o,n)}):OUc.identity,LUc.takeLast(1),r?WUc.defaultIfEmpty(t):VUc.throwIfEmpty(function(){return new FUc.EmptyError}))}}_Rt.last=PUc});var MPr=H(yRt=>{"use strict";Object.defineProperty(yRt,"__esModule",{value:!0});yRt.materialize=void 0;var PPr=Lwt(),MUc=$g(),HUc=yd();function YUc(){return MUc.operate(function(e,t){e.subscribe(HUc.createOperatorSubscriber(t,function(r){t.next(PPr.Notification.createNext(r))},function(){t.next(PPr.Notification.createComplete()),t.complete()},function(r){t.next(PPr.Notification.createError(r)),t.complete()}))})}yRt.materialize=YUc});var HPr=H(bRt=>{"use strict";Object.defineProperty(bRt,"__esModule",{value:!0});bRt.max=void 0;var QUc=x_e(),XUc=vy();function JUc(e){return QUc.reduce(XUc.isFunction(e)?function(t,r){return e(t,r)>0?t:r}:function(t,r){return t>r?t:r})}bRt.max=JUc});var YPr=H(ERt=>{"use strict";Object.defineProperty(ERt,"__esModule",{value:!0});ERt.flatMap=void 0;var UUc=oj();ERt.flatMap=UUc.mergeMap});var QPr=H(SRt=>{"use strict";Object.defineProperty(SRt,"__esModule",{value:!0});SRt.mergeMapTo=void 0;var rzi=oj(),KUc=vy();function jUc(e,t,r){return r===void 0&&(r=1/0),KUc.isFunction(t)?rzi.mergeMap(function(){return e},t,r):(typeof t=="number"&&(r=t),rzi.mergeMap(function(){return e},r))}SRt.mergeMapTo=jUc});var XPr=H(vRt=>{"use strict";Object.defineProperty(vRt,"__esModule",{value:!0});vRt.mergeScan=void 0;var zUc=$g(),qUc=eTt();function $Uc(e,t,r){return r===void 0&&(r=1/0),zUc.operate(function(n,a){var o=t;return qUc.mergeInternals(n,a,function(l,A){return e(o,l,A)},r,function(l){o=l},!1,void 0,function(){return o=null})})}vRt.mergeScan=$Uc});var JPr=H(Jle=>{"use strict";var eKc=Jle&&Jle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},tKc=Jle&&Jle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var aKc=Ule&&Ule.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},cKc=Ule&&Ule.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(BRt,"__esModule",{value:!0});BRt.min=void 0;var gKc=x_e(),AKc=vy();function dKc(e){return gKc.reduce(AKc.isFunction(e)?function(t,r){return e(t,r)<0?t:r}:function(t,r){return t{"use strict";Object.defineProperty(wRt,"__esModule",{value:!0});wRt.multicast=void 0;var pKc=C8e(),izi=vy(),fKc=w8e();function IKc(e,t){var r=izi.isFunction(e)?e:function(){return e};return izi.isFunction(t)?fKc.connect(t,{connector:r}):function(n){return new pKc.ConnectableObservable(n,r)}}wRt.multicast=IKc});var jPr=H(aj=>{"use strict";var hKc=aj&&aj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},mKc=aj&&aj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(TRt,"__esModule",{value:!0});TRt.pairwise=void 0;var yKc=$g(),bKc=yd();function EKc(){return yKc.operate(function(e,t){var r,n=!1;e.subscribe(bKc.createOperatorSubscriber(t,function(a){var o=r;r=a,n&&t.next([o,a]),n=!0}))})}TRt.pairwise=EKc});var qPr=H(RRt=>{"use strict";Object.defineProperty(RRt,"__esModule",{value:!0});RRt.pluck=void 0;var SKc=mte();function vKc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(NRt,"__esModule",{value:!0});NRt.publish=void 0;var BKc=ax(),wKc=T8e(),TKc=w8e();function RKc(e){return e?function(t){return TKc.connect(e)(t)}:function(t){return wKc.multicast(new BKc.Subject)(t)}}NRt.publish=RKc});var e3r=H(DRt=>{"use strict";Object.defineProperty(DRt,"__esModule",{value:!0});DRt.publishBehavior=void 0;var NKc=NOr(),DKc=C8e();function kKc(e){return function(t){var r=new NKc.BehaviorSubject(e);return new DKc.ConnectableObservable(t,function(){return r})}}DRt.publishBehavior=kKc});var t3r=H(kRt=>{"use strict";Object.defineProperty(kRt,"__esModule",{value:!0});kRt.publishLast=void 0;var xKc=gwt(),GKc=C8e();function FKc(){return function(e){var t=new xKc.AsyncSubject;return new GKc.ConnectableObservable(e,function(){return t})}}kRt.publishLast=FKc});var r3r=H(xRt=>{"use strict";Object.defineProperty(xRt,"__esModule",{value:!0});xRt.publishReplay=void 0;var ZKc=uwt(),LKc=T8e(),ozi=vy();function VKc(e,t,r,n){r&&!ozi.isFunction(r)&&(n=r);var a=ozi.isFunction(r)?r:void 0;return function(o){return LKc.multicast(new ZKc.ReplaySubject(e,t,n),a)(o)}}xRt.publishReplay=VKc});var GRt=H(Kle=>{"use strict";var WKc=Kle&&Kle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},OKc=Kle&&Kle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(FRt,"__esModule",{value:!0});FRt.repeat=void 0;var QKc=W4(),XKc=$g(),azi=yd(),JKc=ph(),UKc=Wle();function KKc(e){var t,r=1/0,n;return e!=null&&(typeof e=="object"?(t=e.count,r=t===void 0?1/0:t,n=e.delay):r=e),r<=0?function(){return QKc.EMPTY}:XKc.operate(function(a,o){var l=0,A,f=function(){if(A?.unsubscribe(),A=null,n!=null){var C=typeof n=="number"?UKc.timer(n):JKc.innerFrom(n(l)),b=azi.createOperatorSubscriber(o,function(){b.unsubscribe(),I()});C.subscribe(b)}else I()},I=function(){var C=!1;A=a.subscribe(azi.createOperatorSubscriber(o,void 0,function(){++l{"use strict";Object.defineProperty(ZRt,"__esModule",{value:!0});ZRt.repeatWhen=void 0;var jKc=ph(),zKc=ax(),qKc=$g(),czi=yd();function $Kc(e){return qKc.operate(function(t,r){var n,a=!1,o,l=!1,A=!1,f=function(){return A&&l&&(r.complete(),!0)},I=function(){return o||(o=new zKc.Subject,jKc.innerFrom(e(o)).subscribe(czi.createOperatorSubscriber(r,function(){n?C():a=!0},function(){l=!0,f()}))),o},C=function(){A=!1,n=t.subscribe(czi.createOperatorSubscriber(r,void 0,function(){A=!0,!f()&&I().next()})),a&&(n.unsubscribe(),n=null,a=!1,C())};C()})}ZRt.repeatWhen=$Kc});var s3r=H(LRt=>{"use strict";Object.defineProperty(LRt,"__esModule",{value:!0});LRt.retry=void 0;var e8c=$g(),lzi=yd(),t8c=ox(),r8c=Wle(),n8c=ph();function i8c(e){e===void 0&&(e=1/0);var t;e&&typeof e=="object"?t=e:t={count:e};var r=t.count,n=r===void 0?1/0:r,a=t.delay,o=t.resetOnSuccess,l=o===void 0?!1:o;return n<=0?t8c.identity:e8c.operate(function(A,f){var I=0,C,b=function(){var E=!1;C=A.subscribe(lzi.createOperatorSubscriber(f,function(N){l&&(I=0),f.next(N)},void 0,function(N){if(I++{"use strict";Object.defineProperty(VRt,"__esModule",{value:!0});VRt.retryWhen=void 0;var s8c=ph(),o8c=ax(),a8c=$g(),uzi=yd();function c8c(e){return a8c.operate(function(t,r){var n,a=!1,o,l=function(){n=t.subscribe(uzi.createOperatorSubscriber(r,void 0,void 0,function(A){o||(o=new o8c.Subject,s8c.innerFrom(e(o)).subscribe(uzi.createOperatorSubscriber(r,function(){return n?l():a=!0}))),o&&o.next(A)})),a&&(n.unsubscribe(),n=null,a=!1,l())};l()})}VRt.retryWhen=c8c});var ORt=H(WRt=>{"use strict";Object.defineProperty(WRt,"__esModule",{value:!0});WRt.sample=void 0;var l8c=ph(),u8c=$g(),g8c=sx(),gzi=yd();function A8c(e){return u8c.operate(function(t,r){var n=!1,a=null;t.subscribe(gzi.createOperatorSubscriber(r,function(o){n=!0,a=o})),l8c.innerFrom(e).subscribe(gzi.createOperatorSubscriber(r,function(){if(n){n=!1;var o=a;a=null,r.next(o)}},g8c.noop))})}WRt.sample=A8c});var a3r=H(PRt=>{"use strict";Object.defineProperty(PRt,"__esModule",{value:!0});PRt.sampleTime=void 0;var d8c=HV(),p8c=ORt(),f8c=tPr();function I8c(e,t){return t===void 0&&(t=d8c.asyncScheduler),p8c.sample(f8c.interval(e,t))}PRt.sampleTime=I8c});var c3r=H(MRt=>{"use strict";Object.defineProperty(MRt,"__esModule",{value:!0});MRt.scan=void 0;var h8c=$g(),m8c=fPr();function C8c(e,t){return h8c.operate(m8c.scanInternals(e,t,arguments.length>=2,!0))}MRt.scan=C8c});var l3r=H(HRt=>{"use strict";Object.defineProperty(HRt,"__esModule",{value:!0});HRt.sequenceEqual=void 0;var _8c=$g(),y8c=yd(),b8c=ph();function E8c(e,t){return t===void 0&&(t=function(r,n){return r===n}),_8c.operate(function(r,n){var a=Azi(),o=Azi(),l=function(f){n.next(f),n.complete()},A=function(f,I){var C=y8c.createOperatorSubscriber(n,function(b){var E=I.buffer,N=I.complete;E.length===0?N?l(!1):f.buffer.push(b):!t(b,E.shift())&&l(!1)},function(){f.complete=!0;var b=I.complete,E=I.buffer;b&&l(E.length===0),C?.unsubscribe()});return C};r.subscribe(A(a,o)),b8c.innerFrom(e).subscribe(A(o,a))})}HRt.sequenceEqual=E8c;function Azi(){return{buffer:[],complete:!1}}});var YRt=H(jle=>{"use strict";var S8c=jle&&jle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},v8c=jle&&jle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r0&&(C=new pzi.SafeSubscriber({next:function(ue){return fe.next(ue)},error:function(ue){F=!0,Q(),b=u3r(J,a,ue),fe.error(ue)},complete:function(){B=!0,Q(),b=u3r(J,l),fe.complete()}}),dzi.innerFrom(ne).subscribe(C))})(I)}}jle.share=T8c;function u3r(e,t){for(var r=[],n=2;n{"use strict";Object.defineProperty(QRt,"__esModule",{value:!0});QRt.shareReplay=void 0;var R8c=uwt(),N8c=YRt();function D8c(e,t,r){var n,a,o,l,A=!1;return e&&typeof e=="object"?(n=e.bufferSize,l=n===void 0?1/0:n,a=e.windowTime,t=a===void 0?1/0:a,o=e.refCount,A=o===void 0?!1:o,r=e.scheduler):l=e??1/0,N8c.share({connector:function(){return new R8c.ReplaySubject(l,t,r)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:A})}QRt.shareReplay=D8c});var A3r=H(XRt=>{"use strict";Object.defineProperty(XRt,"__esModule",{value:!0});XRt.single=void 0;var k8c=Fle(),x8c=KOr(),G8c=UOr(),F8c=$g(),Z8c=yd();function L8c(e){return F8c.operate(function(t,r){var n=!1,a,o=!1,l=0;t.subscribe(Z8c.createOperatorSubscriber(r,function(A){o=!0,(!e||e(A,l++,t))&&(n&&r.error(new x8c.SequenceError("Too many matching values")),n=!0,a=A)},function(){n?(r.next(a),r.complete()):r.error(o?new G8c.NotFoundError("No matching values"):new k8c.EmptyError)}))})}XRt.single=L8c});var d3r=H(JRt=>{"use strict";Object.defineProperty(JRt,"__esModule",{value:!0});JRt.skip=void 0;var V8c=Cte();function W8c(e){return V8c.filter(function(t,r){return e<=r})}JRt.skip=W8c});var p3r=H(URt=>{"use strict";Object.defineProperty(URt,"__esModule",{value:!0});URt.skipLast=void 0;var O8c=ox(),P8c=$g(),M8c=yd();function H8c(e){return e<=0?O8c.identity:P8c.operate(function(t,r){var n=new Array(e),a=0;return t.subscribe(M8c.createOperatorSubscriber(r,function(o){var l=a++;if(l{"use strict";Object.defineProperty(KRt,"__esModule",{value:!0});KRt.skipUntil=void 0;var Y8c=$g(),fzi=yd(),Q8c=ph(),X8c=sx();function J8c(e){return Y8c.operate(function(t,r){var n=!1,a=fzi.createOperatorSubscriber(r,function(){a?.unsubscribe(),n=!0},X8c.noop);Q8c.innerFrom(e).subscribe(a),t.subscribe(fzi.createOperatorSubscriber(r,function(o){return n&&r.next(o)}))})}KRt.skipUntil=J8c});var I3r=H(jRt=>{"use strict";Object.defineProperty(jRt,"__esModule",{value:!0});jRt.skipWhile=void 0;var U8c=$g(),K8c=yd();function j8c(e){return U8c.operate(function(t,r){var n=!1,a=0;t.subscribe(K8c.createOperatorSubscriber(r,function(o){return(n||(n=!e(o,a++)))&&r.next(o)}))})}jRt.skipWhile=j8c});var h3r=H(zRt=>{"use strict";Object.defineProperty(zRt,"__esModule",{value:!0});zRt.startWith=void 0;var Izi=v8e(),z8c=YV(),q8c=$g();function $8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(qRt,"__esModule",{value:!0});qRt.switchMap=void 0;var e6c=ph(),t6c=$g(),hzi=yd();function r6c(e,t){return t6c.operate(function(r,n){var a=null,o=0,l=!1,A=function(){return l&&!a&&n.complete()};r.subscribe(hzi.createOperatorSubscriber(n,function(f){a?.unsubscribe();var I=0,C=o++;e6c.innerFrom(e(f,C)).subscribe(a=hzi.createOperatorSubscriber(n,function(b){return n.next(t?t(f,b,C,I++):b)},function(){a=null,A()}))},function(){l=!0,A()}))})}qRt.switchMap=r6c});var m3r=H($Rt=>{"use strict";Object.defineProperty($Rt,"__esModule",{value:!0});$Rt.switchAll=void 0;var n6c=pxe(),i6c=ox();function s6c(){return n6c.switchMap(i6c.identity)}$Rt.switchAll=s6c});var C3r=H(eNt=>{"use strict";Object.defineProperty(eNt,"__esModule",{value:!0});eNt.switchMapTo=void 0;var mzi=pxe(),o6c=vy();function a6c(e,t){return o6c.isFunction(t)?mzi.switchMap(function(){return e},t):mzi.switchMap(function(){return e})}eNt.switchMapTo=a6c});var _3r=H(tNt=>{"use strict";Object.defineProperty(tNt,"__esModule",{value:!0});tNt.switchScan=void 0;var c6c=pxe(),l6c=$g();function u6c(e,t){return l6c.operate(function(r,n){var a=t;return c6c.switchMap(function(o,l){return e(a,o,l)},function(o,l){return a=l,l})(r).subscribe(n),function(){a=null}})}tNt.switchScan=u6c});var y3r=H(rNt=>{"use strict";Object.defineProperty(rNt,"__esModule",{value:!0});rNt.takeUntil=void 0;var g6c=$g(),A6c=yd(),d6c=ph(),p6c=sx();function f6c(e){return g6c.operate(function(t,r){d6c.innerFrom(e).subscribe(A6c.createOperatorSubscriber(r,function(){return r.complete()},p6c.noop)),!r.closed&&t.subscribe(r)})}rNt.takeUntil=f6c});var b3r=H(nNt=>{"use strict";Object.defineProperty(nNt,"__esModule",{value:!0});nNt.takeWhile=void 0;var I6c=$g(),h6c=yd();function m6c(e,t){return t===void 0&&(t=!1),I6c.operate(function(r,n){var a=0;r.subscribe(h6c.createOperatorSubscriber(n,function(o){var l=e(o,a++);(l||t)&&n.next(o),!l&&n.complete()}))})}nNt.takeWhile=m6c});var E3r=H(iNt=>{"use strict";Object.defineProperty(iNt,"__esModule",{value:!0});iNt.tap=void 0;var C6c=vy(),_6c=$g(),y6c=yd(),b6c=ox();function E6c(e,t,r){var n=C6c.isFunction(e)||t||r?{next:e,error:t,complete:r}:e;return n?_6c.operate(function(a,o){var l;(l=n.subscribe)===null||l===void 0||l.call(n);var A=!0;a.subscribe(y6c.createOperatorSubscriber(o,function(f){var I;(I=n.next)===null||I===void 0||I.call(n,f),o.next(f)},function(){var f;A=!1,(f=n.complete)===null||f===void 0||f.call(n),o.complete()},function(f){var I;A=!1,(I=n.error)===null||I===void 0||I.call(n,f),o.error(f)},function(){var f,I;A&&((f=n.unsubscribe)===null||f===void 0||f.call(n)),(I=n.finalize)===null||I===void 0||I.call(n)}))}):b6c.identity}iNt.tap=E6c});var oNt=H(sNt=>{"use strict";Object.defineProperty(sNt,"__esModule",{value:!0});sNt.throttle=void 0;var S6c=$g(),Czi=yd(),v6c=ph();function B6c(e,t){return S6c.operate(function(r,n){var a=t??{},o=a.leading,l=o===void 0?!0:o,A=a.trailing,f=A===void 0?!1:A,I=!1,C=null,b=null,E=!1,N=function(){b?.unsubscribe(),b=null,f&&(Q(),E&&n.complete())},B=function(){b=null,E&&n.complete()},F=function(J){return b=v6c.innerFrom(e(J)).subscribe(Czi.createOperatorSubscriber(n,N,B))},Q=function(){if(I){I=!1;var J=C;C=null,n.next(J),!E&&F(J)}};r.subscribe(Czi.createOperatorSubscriber(n,function(J){I=!0,C=J,!(b&&!b.closed)&&(l?Q():F(J))},function(){E=!0,!(f&&I&&b&&!b.closed)&&n.complete()}))})}sNt.throttle=B6c});var S3r=H(aNt=>{"use strict";Object.defineProperty(aNt,"__esModule",{value:!0});aNt.throttleTime=void 0;var w6c=HV(),T6c=oNt(),R6c=Wle();function N6c(e,t,r){t===void 0&&(t=w6c.asyncScheduler);var n=R6c.timer(e,t);return T6c.throttle(function(){return n},r)}aNt.throttleTime=N6c});var v3r=H(fxe=>{"use strict";Object.defineProperty(fxe,"__esModule",{value:!0});fxe.TimeInterval=fxe.timeInterval=void 0;var D6c=HV(),k6c=$g(),x6c=yd();function G6c(e){return e===void 0&&(e=D6c.asyncScheduler),k6c.operate(function(t,r){var n=e.now();t.subscribe(x6c.createOperatorSubscriber(r,function(a){var o=e.now(),l=o-n;n=o,r.next(new _zi(a,l))}))})}fxe.timeInterval=G6c;var _zi=function(){function e(t,r){this.value=t,this.interval=r}return e}();fxe.TimeInterval=_zi});var B3r=H(cNt=>{"use strict";Object.defineProperty(cNt,"__esModule",{value:!0});cNt.timeoutWith=void 0;var F6c=HV(),Z6c=Xwt(),L6c=E8e();function V6c(e,t,r){var n,a,o;if(r=r??F6c.async,Z6c.isValidDate(e)?n=e:typeof e=="number"&&(a=e),t)o=function(){return t};else throw new TypeError("No observable provided to switch to");if(n==null&&a==null)throw new TypeError("No timeout provided.");return L6c.timeout({first:n,each:a,scheduler:r,with:o})}cNt.timeoutWith=V6c});var w3r=H(lNt=>{"use strict";Object.defineProperty(lNt,"__esModule",{value:!0});lNt.timestamp=void 0;var W6c=lwt(),O6c=mte();function P6c(e){return e===void 0&&(e=W6c.dateTimestampProvider),O6c.map(function(t){return{value:t,timestamp:e.now()}})}lNt.timestamp=P6c});var T3r=H(uNt=>{"use strict";Object.defineProperty(uNt,"__esModule",{value:!0});uNt.window=void 0;var yzi=ax(),M6c=$g(),bzi=yd(),H6c=sx(),Y6c=ph();function Q6c(e){return M6c.operate(function(t,r){var n=new yzi.Subject;r.next(n.asObservable());var a=function(o){n.error(o),r.error(o)};return t.subscribe(bzi.createOperatorSubscriber(r,function(o){return n?.next(o)},function(){n.complete(),r.complete()},a)),Y6c.innerFrom(e).subscribe(bzi.createOperatorSubscriber(r,function(){n.complete(),r.next(n=new yzi.Subject)},H6c.noop,a)),function(){n?.unsubscribe(),n=null}})}uNt.window=Q6c});var R3r=H(Ixe=>{"use strict";var X6c=Ixe&&Ixe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Ixe,"__esModule",{value:!0});Ixe.windowCount=void 0;var Ezi=ax(),J6c=$g(),U6c=yd();function K6c(e,t){t===void 0&&(t=0);var r=t>0?t:e;return J6c.operate(function(n,a){var o=[new Ezi.Subject],l=[],A=0;a.next(o[0].asObservable()),n.subscribe(U6c.createOperatorSubscriber(a,function(f){var I,C;try{for(var b=X6c(o),E=b.next();!E.done;E=b.next()){var N=E.value;N.next(f)}}catch(Q){I={error:Q}}finally{try{E&&!E.done&&(C=b.return)&&C.call(b)}finally{if(I)throw I.error}}var B=A-e+1;if(B>=0&&B%r===0&&o.shift().complete(),++A%r===0){var F=new Ezi.Subject;o.push(F),a.next(F.asObservable())}},function(){for(;o.length>0;)o.shift().complete();a.complete()},function(f){for(;o.length>0;)o.shift().error(f);a.error(f)},function(){l=null,o=null}))})}Ixe.windowCount=K6c});var N3r=H(gNt=>{"use strict";Object.defineProperty(gNt,"__esModule",{value:!0});gNt.windowTime=void 0;var j6c=ax(),z6c=HV(),q6c=GP(),$6c=$g(),ejc=yd(),tjc=pte(),rjc=YV(),Szi=fte();function njc(e){for(var t,r,n=[],a=1;a=0?Szi.executeSchedule(I,o,N,l,!0):b=!0,N();var B=function(Q){return C.slice().forEach(Q)},F=function(Q){B(function(J){var ae=J.window;return Q(ae)}),Q(I),I.unsubscribe()};return f.subscribe(ejc.createOperatorSubscriber(I,function(Q){B(function(J){J.window.next(Q),A<=++J.seen&&E(J)})},function(){return F(function(Q){return Q.complete()})},function(Q){return F(function(J){return J.error(Q)})})),function(){C=null}})}gNt.windowTime=njc});var k3r=H(hxe=>{"use strict";var ijc=hxe&&hxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(hxe,"__esModule",{value:!0});hxe.windowToggle=void 0;var sjc=ax(),ojc=GP(),ajc=$g(),vzi=ph(),D3r=yd(),Bzi=sx(),cjc=pte();function ljc(e,t){return ajc.operate(function(r,n){var a=[],o=function(l){for(;0{"use strict";Object.defineProperty(ANt,"__esModule",{value:!0});ANt.windowWhen=void 0;var ujc=ax(),gjc=$g(),wzi=yd(),Ajc=ph();function djc(e){return gjc.operate(function(t,r){var n,a,o=function(A){n.error(A),r.error(A)},l=function(){a?.unsubscribe(),n?.complete(),n=new ujc.Subject,r.next(n.asObservable());var A;try{A=Ajc.innerFrom(e())}catch(f){o(f);return}A.subscribe(a=wzi.createOperatorSubscriber(r,l,l,o))};l(),t.subscribe(wzi.createOperatorSubscriber(r,function(A){return n.next(A)},function(){n.complete(),r.complete()},o,function(){a?.unsubscribe(),n=null}))})}ANt.windowWhen=djc});var G3r=H(zle=>{"use strict";var Tzi=zle&&zle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Rzi=zle&&zle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(dNt,"__esModule",{value:!0});dNt.zipAll=void 0;var _jc=yTt(),yjc=IPr();function bjc(e){return yjc.joinAllInternals(_jc.zip,e)}dNt.zipAll=bjc});var Z3r=H(qle=>{"use strict";var Ejc=qle&&qle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Sjc=qle&&qle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var Tjc=$le&&$le.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Rjc=$le&&$le.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var kjc=_n&&_n.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xjc=_n&&_n.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&kjc(t,e,r)};Object.defineProperty(_n,"__esModule",{value:!0});_n.interval=_n.iif=_n.generate=_n.fromEventPattern=_n.fromEvent=_n.from=_n.forkJoin=_n.empty=_n.defer=_n.connectable=_n.concat=_n.combineLatest=_n.bindNodeCallback=_n.bindCallback=_n.UnsubscriptionError=_n.TimeoutError=_n.SequenceError=_n.ObjectUnsubscribedError=_n.NotFoundError=_n.EmptyError=_n.ArgumentOutOfRangeError=_n.firstValueFrom=_n.lastValueFrom=_n.isObservable=_n.identity=_n.noop=_n.pipe=_n.NotificationKind=_n.Notification=_n.Subscriber=_n.Subscription=_n.Scheduler=_n.VirtualAction=_n.VirtualTimeScheduler=_n.animationFrameScheduler=_n.animationFrame=_n.queueScheduler=_n.queue=_n.asyncScheduler=_n.async=_n.asapScheduler=_n.asap=_n.AsyncSubject=_n.ReplaySubject=_n.BehaviorSubject=_n.Subject=_n.animationFrames=_n.observable=_n.ConnectableObservable=_n.Observable=void 0;_n.filter=_n.expand=_n.exhaustMap=_n.exhaustAll=_n.exhaust=_n.every=_n.endWith=_n.elementAt=_n.distinctUntilKeyChanged=_n.distinctUntilChanged=_n.distinct=_n.dematerialize=_n.delayWhen=_n.delay=_n.defaultIfEmpty=_n.debounceTime=_n.debounce=_n.count=_n.connect=_n.concatWith=_n.concatMapTo=_n.concatMap=_n.concatAll=_n.combineLatestWith=_n.combineLatestAll=_n.combineAll=_n.catchError=_n.bufferWhen=_n.bufferToggle=_n.bufferTime=_n.bufferCount=_n.buffer=_n.auditTime=_n.audit=_n.config=_n.NEVER=_n.EMPTY=_n.scheduled=_n.zip=_n.using=_n.timer=_n.throwError=_n.range=_n.race=_n.partition=_n.pairs=_n.onErrorResumeNext=_n.of=_n.never=_n.merge=void 0;_n.switchMap=_n.switchAll=_n.subscribeOn=_n.startWith=_n.skipWhile=_n.skipUntil=_n.skipLast=_n.skip=_n.single=_n.shareReplay=_n.share=_n.sequenceEqual=_n.scan=_n.sampleTime=_n.sample=_n.refCount=_n.retryWhen=_n.retry=_n.repeatWhen=_n.repeat=_n.reduce=_n.raceWith=_n.publishReplay=_n.publishLast=_n.publishBehavior=_n.publish=_n.pluck=_n.pairwise=_n.onErrorResumeNextWith=_n.observeOn=_n.multicast=_n.min=_n.mergeWith=_n.mergeScan=_n.mergeMapTo=_n.mergeMap=_n.flatMap=_n.mergeAll=_n.max=_n.materialize=_n.mapTo=_n.map=_n.last=_n.isEmpty=_n.ignoreElements=_n.groupBy=_n.first=_n.findIndex=_n.find=_n.finalize=void 0;_n.zipWith=_n.zipAll=_n.withLatestFrom=_n.windowWhen=_n.windowToggle=_n.windowTime=_n.windowCount=_n.window=_n.toArray=_n.timestamp=_n.timeoutWith=_n.timeout=_n.timeInterval=_n.throwIfEmpty=_n.throttleTime=_n.throttle=_n.tap=_n.takeWhile=_n.takeUntil=_n.takeLast=_n.take=_n.switchScan=_n.switchMapTo=void 0;var Gjc=Ab();Object.defineProperty(_n,"Observable",{enumerable:!0,get:function(){return Gjc.Observable}});var Fjc=C8e();Object.defineProperty(_n,"ConnectableObservable",{enumerable:!0,get:function(){return Fjc.ConnectableObservable}});var Zjc=h8e();Object.defineProperty(_n,"observable",{enumerable:!0,get:function(){return Zjc.observable}});var Ljc=cji();Object.defineProperty(_n,"animationFrames",{enumerable:!0,get:function(){return Ljc.animationFrames}});var Vjc=ax();Object.defineProperty(_n,"Subject",{enumerable:!0,get:function(){return Vjc.Subject}});var Wjc=NOr();Object.defineProperty(_n,"BehaviorSubject",{enumerable:!0,get:function(){return Wjc.BehaviorSubject}});var Ojc=uwt();Object.defineProperty(_n,"ReplaySubject",{enumerable:!0,get:function(){return Ojc.ReplaySubject}});var Pjc=gwt();Object.defineProperty(_n,"AsyncSubject",{enumerable:!0,get:function(){return Pjc.AsyncSubject}});var Dzi=vji();Object.defineProperty(_n,"asap",{enumerable:!0,get:function(){return Dzi.asap}});Object.defineProperty(_n,"asapScheduler",{enumerable:!0,get:function(){return Dzi.asapScheduler}});var kzi=HV();Object.defineProperty(_n,"async",{enumerable:!0,get:function(){return kzi.async}});Object.defineProperty(_n,"asyncScheduler",{enumerable:!0,get:function(){return kzi.asyncScheduler}});var xzi=Tji();Object.defineProperty(_n,"queue",{enumerable:!0,get:function(){return xzi.queue}});Object.defineProperty(_n,"queueScheduler",{enumerable:!0,get:function(){return xzi.queueScheduler}});var Gzi=kji();Object.defineProperty(_n,"animationFrame",{enumerable:!0,get:function(){return Gzi.animationFrame}});Object.defineProperty(_n,"animationFrameScheduler",{enumerable:!0,get:function(){return Gzi.animationFrameScheduler}});var Fzi=Fji();Object.defineProperty(_n,"VirtualTimeScheduler",{enumerable:!0,get:function(){return Fzi.VirtualTimeScheduler}});Object.defineProperty(_n,"VirtualAction",{enumerable:!0,get:function(){return Fzi.VirtualAction}});var Mjc=kOr();Object.defineProperty(_n,"Scheduler",{enumerable:!0,get:function(){return Mjc.Scheduler}});var Hjc=GP();Object.defineProperty(_n,"Subscription",{enumerable:!0,get:function(){return Hjc.Subscription}});var Yjc=Dke();Object.defineProperty(_n,"Subscriber",{enumerable:!0,get:function(){return Yjc.Subscriber}});var Zzi=Lwt();Object.defineProperty(_n,"Notification",{enumerable:!0,get:function(){return Zzi.Notification}});Object.defineProperty(_n,"NotificationKind",{enumerable:!0,get:function(){return Zzi.NotificationKind}});var Qjc=m8e();Object.defineProperty(_n,"pipe",{enumerable:!0,get:function(){return Qjc.pipe}});var Xjc=sx();Object.defineProperty(_n,"noop",{enumerable:!0,get:function(){return Xjc.noop}});var Jjc=ox();Object.defineProperty(_n,"identity",{enumerable:!0,get:function(){return Jjc.identity}});var Ujc=qji();Object.defineProperty(_n,"isObservable",{enumerable:!0,get:function(){return Ujc.isObservable}});var Kjc=$ji();Object.defineProperty(_n,"lastValueFrom",{enumerable:!0,get:function(){return Kjc.lastValueFrom}});var jjc=e7i();Object.defineProperty(_n,"firstValueFrom",{enumerable:!0,get:function(){return jjc.firstValueFrom}});var zjc=JOr();Object.defineProperty(_n,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return zjc.ArgumentOutOfRangeError}});var qjc=Fle();Object.defineProperty(_n,"EmptyError",{enumerable:!0,get:function(){return qjc.EmptyError}});var $jc=UOr();Object.defineProperty(_n,"NotFoundError",{enumerable:!0,get:function(){return $jc.NotFoundError}});var e7c=BOr();Object.defineProperty(_n,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return e7c.ObjectUnsubscribedError}});var t7c=KOr();Object.defineProperty(_n,"SequenceError",{enumerable:!0,get:function(){return t7c.SequenceError}});var r7c=E8e();Object.defineProperty(_n,"TimeoutError",{enumerable:!0,get:function(){return r7c.TimeoutError}});var n7c=pOr();Object.defineProperty(_n,"UnsubscriptionError",{enumerable:!0,get:function(){return n7c.UnsubscriptionError}});var i7c=r7i();Object.defineProperty(_n,"bindCallback",{enumerable:!0,get:function(){return i7c.bindCallback}});var s7c=n7i();Object.defineProperty(_n,"bindNodeCallback",{enumerable:!0,get:function(){return s7c.bindNodeCallback}});var o7c=qwt();Object.defineProperty(_n,"combineLatest",{enumerable:!0,get:function(){return o7c.combineLatest}});var a7c=v8e();Object.defineProperty(_n,"concat",{enumerable:!0,get:function(){return a7c.concat}});var c7c=g7i();Object.defineProperty(_n,"connectable",{enumerable:!0,get:function(){return c7c.connectable}});var l7c=B8e();Object.defineProperty(_n,"defer",{enumerable:!0,get:function(){return l7c.defer}});var u7c=W4();Object.defineProperty(_n,"empty",{enumerable:!0,get:function(){return u7c.empty}});var g7c=A7i();Object.defineProperty(_n,"forkJoin",{enumerable:!0,get:function(){return g7c.forkJoin}});var A7c=Ite();Object.defineProperty(_n,"from",{enumerable:!0,get:function(){return A7c.from}});var d7c=p7i();Object.defineProperty(_n,"fromEvent",{enumerable:!0,get:function(){return d7c.fromEvent}});var p7c=I7i();Object.defineProperty(_n,"fromEventPattern",{enumerable:!0,get:function(){return p7c.fromEventPattern}});var f7c=m7i();Object.defineProperty(_n,"generate",{enumerable:!0,get:function(){return f7c.generate}});var I7c=C7i();Object.defineProperty(_n,"iif",{enumerable:!0,get:function(){return I7c.iif}});var h7c=tPr();Object.defineProperty(_n,"interval",{enumerable:!0,get:function(){return h7c.interval}});var m7c=y7i();Object.defineProperty(_n,"merge",{enumerable:!0,get:function(){return m7c.merge}});var C7c=rPr();Object.defineProperty(_n,"never",{enumerable:!0,get:function(){return C7c.never}});var _7c=Fwt();Object.defineProperty(_n,"of",{enumerable:!0,get:function(){return _7c.of}});var y7c=nPr();Object.defineProperty(_n,"onErrorResumeNext",{enumerable:!0,get:function(){return y7c.onErrorResumeNext}});var b7c=E7i();Object.defineProperty(_n,"pairs",{enumerable:!0,get:function(){return b7c.pairs}});var E7c=B7i();Object.defineProperty(_n,"partition",{enumerable:!0,get:function(){return E7c.partition}});var S7c=sPr();Object.defineProperty(_n,"race",{enumerable:!0,get:function(){return S7c.race}});var v7c=R7i();Object.defineProperty(_n,"range",{enumerable:!0,get:function(){return v7c.range}});var B7c=XOr();Object.defineProperty(_n,"throwError",{enumerable:!0,get:function(){return B7c.throwError}});var w7c=Wle();Object.defineProperty(_n,"timer",{enumerable:!0,get:function(){return w7c.timer}});var T7c=N7i();Object.defineProperty(_n,"using",{enumerable:!0,get:function(){return T7c.using}});var R7c=yTt();Object.defineProperty(_n,"zip",{enumerable:!0,get:function(){return R7c.zip}});var N7c=QOr();Object.defineProperty(_n,"scheduled",{enumerable:!0,get:function(){return N7c.scheduled}});var D7c=W4();Object.defineProperty(_n,"EMPTY",{enumerable:!0,get:function(){return D7c.EMPTY}});var k7c=rPr();Object.defineProperty(_n,"NEVER",{enumerable:!0,get:function(){return k7c.NEVER}});xjc(k7i(),_n);var x7c=Rke();Object.defineProperty(_n,"config",{enumerable:!0,get:function(){return x7c.config}});var G7c=ETt();Object.defineProperty(_n,"audit",{enumerable:!0,get:function(){return G7c.audit}});var F7c=oPr();Object.defineProperty(_n,"auditTime",{enumerable:!0,get:function(){return F7c.auditTime}});var Z7c=aPr();Object.defineProperty(_n,"buffer",{enumerable:!0,get:function(){return Z7c.buffer}});var L7c=lPr();Object.defineProperty(_n,"bufferCount",{enumerable:!0,get:function(){return L7c.bufferCount}});var V7c=uPr();Object.defineProperty(_n,"bufferTime",{enumerable:!0,get:function(){return V7c.bufferTime}});var W7c=APr();Object.defineProperty(_n,"bufferToggle",{enumerable:!0,get:function(){return W7c.bufferToggle}});var O7c=dPr();Object.defineProperty(_n,"bufferWhen",{enumerable:!0,get:function(){return O7c.bufferWhen}});var P7c=pPr();Object.defineProperty(_n,"catchError",{enumerable:!0,get:function(){return P7c.catchError}});var M7c=hPr();Object.defineProperty(_n,"combineAll",{enumerable:!0,get:function(){return M7c.combineAll}});var H7c=GTt();Object.defineProperty(_n,"combineLatestAll",{enumerable:!0,get:function(){return H7c.combineLatestAll}});var Y7c=CPr();Object.defineProperty(_n,"combineLatestWith",{enumerable:!0,get:function(){return Y7c.combineLatestWith}});var Q7c=S8e();Object.defineProperty(_n,"concatAll",{enumerable:!0,get:function(){return Q7c.concatAll}});var X7c=LTt();Object.defineProperty(_n,"concatMap",{enumerable:!0,get:function(){return X7c.concatMap}});var J7c=_Pr();Object.defineProperty(_n,"concatMapTo",{enumerable:!0,get:function(){return J7c.concatMapTo}});var U7c=bPr();Object.defineProperty(_n,"concatWith",{enumerable:!0,get:function(){return U7c.concatWith}});var K7c=w8e();Object.defineProperty(_n,"connect",{enumerable:!0,get:function(){return K7c.connect}});var j7c=EPr();Object.defineProperty(_n,"count",{enumerable:!0,get:function(){return j7c.count}});var z7c=SPr();Object.defineProperty(_n,"debounce",{enumerable:!0,get:function(){return z7c.debounce}});var q7c=vPr();Object.defineProperty(_n,"debounceTime",{enumerable:!0,get:function(){return q7c.debounceTime}});var $7c=lxe();Object.defineProperty(_n,"defaultIfEmpty",{enumerable:!0,get:function(){return $7c.defaultIfEmpty}});var ezc=BPr();Object.defineProperty(_n,"delay",{enumerable:!0,get:function(){return ezc.delay}});var tzc=zTt();Object.defineProperty(_n,"delayWhen",{enumerable:!0,get:function(){return tzc.delayWhen}});var rzc=wPr();Object.defineProperty(_n,"dematerialize",{enumerable:!0,get:function(){return rzc.dematerialize}});var nzc=TPr();Object.defineProperty(_n,"distinct",{enumerable:!0,get:function(){return nzc.distinct}});var izc=rRt();Object.defineProperty(_n,"distinctUntilChanged",{enumerable:!0,get:function(){return izc.distinctUntilChanged}});var szc=RPr();Object.defineProperty(_n,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return szc.distinctUntilKeyChanged}});var ozc=NPr();Object.defineProperty(_n,"elementAt",{enumerable:!0,get:function(){return ozc.elementAt}});var azc=DPr();Object.defineProperty(_n,"endWith",{enumerable:!0,get:function(){return azc.endWith}});var czc=kPr();Object.defineProperty(_n,"every",{enumerable:!0,get:function(){return czc.every}});var lzc=xPr();Object.defineProperty(_n,"exhaust",{enumerable:!0,get:function(){return lzc.exhaust}});var uzc=uRt();Object.defineProperty(_n,"exhaustAll",{enumerable:!0,get:function(){return uzc.exhaustAll}});var gzc=cRt();Object.defineProperty(_n,"exhaustMap",{enumerable:!0,get:function(){return gzc.exhaustMap}});var Azc=GPr();Object.defineProperty(_n,"expand",{enumerable:!0,get:function(){return Azc.expand}});var dzc=Cte();Object.defineProperty(_n,"filter",{enumerable:!0,get:function(){return dzc.filter}});var pzc=FPr();Object.defineProperty(_n,"finalize",{enumerable:!0,get:function(){return pzc.finalize}});var fzc=pRt();Object.defineProperty(_n,"find",{enumerable:!0,get:function(){return fzc.find}});var Izc=ZPr();Object.defineProperty(_n,"findIndex",{enumerable:!0,get:function(){return Izc.findIndex}});var hzc=LPr();Object.defineProperty(_n,"first",{enumerable:!0,get:function(){return hzc.first}});var mzc=VPr();Object.defineProperty(_n,"groupBy",{enumerable:!0,get:function(){return mzc.groupBy}});var Czc=JTt();Object.defineProperty(_n,"ignoreElements",{enumerable:!0,get:function(){return Czc.ignoreElements}});var _zc=WPr();Object.defineProperty(_n,"isEmpty",{enumerable:!0,get:function(){return _zc.isEmpty}});var yzc=OPr();Object.defineProperty(_n,"last",{enumerable:!0,get:function(){return yzc.last}});var bzc=mte();Object.defineProperty(_n,"map",{enumerable:!0,get:function(){return bzc.map}});var Ezc=KTt();Object.defineProperty(_n,"mapTo",{enumerable:!0,get:function(){return Ezc.mapTo}});var Szc=MPr();Object.defineProperty(_n,"materialize",{enumerable:!0,get:function(){return Szc.materialize}});var vzc=HPr();Object.defineProperty(_n,"max",{enumerable:!0,get:function(){return vzc.max}});var Bzc=rxe();Object.defineProperty(_n,"mergeAll",{enumerable:!0,get:function(){return Bzc.mergeAll}});var wzc=YPr();Object.defineProperty(_n,"flatMap",{enumerable:!0,get:function(){return wzc.flatMap}});var Tzc=oj();Object.defineProperty(_n,"mergeMap",{enumerable:!0,get:function(){return Tzc.mergeMap}});var Rzc=QPr();Object.defineProperty(_n,"mergeMapTo",{enumerable:!0,get:function(){return Rzc.mergeMapTo}});var Nzc=XPr();Object.defineProperty(_n,"mergeScan",{enumerable:!0,get:function(){return Nzc.mergeScan}});var Dzc=UPr();Object.defineProperty(_n,"mergeWith",{enumerable:!0,get:function(){return Dzc.mergeWith}});var kzc=KPr();Object.defineProperty(_n,"min",{enumerable:!0,get:function(){return kzc.min}});var xzc=T8e();Object.defineProperty(_n,"multicast",{enumerable:!0,get:function(){return xzc.multicast}});var Gzc=$ke();Object.defineProperty(_n,"observeOn",{enumerable:!0,get:function(){return Gzc.observeOn}});var Fzc=jPr();Object.defineProperty(_n,"onErrorResumeNextWith",{enumerable:!0,get:function(){return Fzc.onErrorResumeNextWith}});var Zzc=zPr();Object.defineProperty(_n,"pairwise",{enumerable:!0,get:function(){return Zzc.pairwise}});var Lzc=qPr();Object.defineProperty(_n,"pluck",{enumerable:!0,get:function(){return Lzc.pluck}});var Vzc=$Pr();Object.defineProperty(_n,"publish",{enumerable:!0,get:function(){return Vzc.publish}});var Wzc=e3r();Object.defineProperty(_n,"publishBehavior",{enumerable:!0,get:function(){return Wzc.publishBehavior}});var Ozc=t3r();Object.defineProperty(_n,"publishLast",{enumerable:!0,get:function(){return Ozc.publishLast}});var Pzc=r3r();Object.defineProperty(_n,"publishReplay",{enumerable:!0,get:function(){return Pzc.publishReplay}});var Mzc=GRt();Object.defineProperty(_n,"raceWith",{enumerable:!0,get:function(){return Mzc.raceWith}});var Hzc=x_e();Object.defineProperty(_n,"reduce",{enumerable:!0,get:function(){return Hzc.reduce}});var Yzc=n3r();Object.defineProperty(_n,"repeat",{enumerable:!0,get:function(){return Yzc.repeat}});var Qzc=i3r();Object.defineProperty(_n,"repeatWhen",{enumerable:!0,get:function(){return Qzc.repeatWhen}});var Xzc=s3r();Object.defineProperty(_n,"retry",{enumerable:!0,get:function(){return Xzc.retry}});var Jzc=o3r();Object.defineProperty(_n,"retryWhen",{enumerable:!0,get:function(){return Jzc.retryWhen}});var Uzc=owt();Object.defineProperty(_n,"refCount",{enumerable:!0,get:function(){return Uzc.refCount}});var Kzc=ORt();Object.defineProperty(_n,"sample",{enumerable:!0,get:function(){return Kzc.sample}});var jzc=a3r();Object.defineProperty(_n,"sampleTime",{enumerable:!0,get:function(){return jzc.sampleTime}});var zzc=c3r();Object.defineProperty(_n,"scan",{enumerable:!0,get:function(){return zzc.scan}});var qzc=l3r();Object.defineProperty(_n,"sequenceEqual",{enumerable:!0,get:function(){return qzc.sequenceEqual}});var $zc=YRt();Object.defineProperty(_n,"share",{enumerable:!0,get:function(){return $zc.share}});var eqc=g3r();Object.defineProperty(_n,"shareReplay",{enumerable:!0,get:function(){return eqc.shareReplay}});var tqc=A3r();Object.defineProperty(_n,"single",{enumerable:!0,get:function(){return tqc.single}});var rqc=d3r();Object.defineProperty(_n,"skip",{enumerable:!0,get:function(){return rqc.skip}});var nqc=p3r();Object.defineProperty(_n,"skipLast",{enumerable:!0,get:function(){return nqc.skipLast}});var iqc=f3r();Object.defineProperty(_n,"skipUntil",{enumerable:!0,get:function(){return iqc.skipUntil}});var sqc=I3r();Object.defineProperty(_n,"skipWhile",{enumerable:!0,get:function(){return sqc.skipWhile}});var oqc=h3r();Object.defineProperty(_n,"startWith",{enumerable:!0,get:function(){return oqc.startWith}});var aqc=exe();Object.defineProperty(_n,"subscribeOn",{enumerable:!0,get:function(){return aqc.subscribeOn}});var cqc=m3r();Object.defineProperty(_n,"switchAll",{enumerable:!0,get:function(){return cqc.switchAll}});var lqc=pxe();Object.defineProperty(_n,"switchMap",{enumerable:!0,get:function(){return lqc.switchMap}});var uqc=C3r();Object.defineProperty(_n,"switchMapTo",{enumerable:!0,get:function(){return uqc.switchMapTo}});var gqc=_3r();Object.defineProperty(_n,"switchScan",{enumerable:!0,get:function(){return gqc.switchScan}});var Aqc=uxe();Object.defineProperty(_n,"take",{enumerable:!0,get:function(){return Aqc.take}});var dqc=CRt();Object.defineProperty(_n,"takeLast",{enumerable:!0,get:function(){return dqc.takeLast}});var pqc=y3r();Object.defineProperty(_n,"takeUntil",{enumerable:!0,get:function(){return pqc.takeUntil}});var fqc=b3r();Object.defineProperty(_n,"takeWhile",{enumerable:!0,get:function(){return fqc.takeWhile}});var Iqc=E3r();Object.defineProperty(_n,"tap",{enumerable:!0,get:function(){return Iqc.tap}});var hqc=oNt();Object.defineProperty(_n,"throttle",{enumerable:!0,get:function(){return hqc.throttle}});var mqc=S3r();Object.defineProperty(_n,"throttleTime",{enumerable:!0,get:function(){return mqc.throttleTime}});var Cqc=gxe();Object.defineProperty(_n,"throwIfEmpty",{enumerable:!0,get:function(){return Cqc.throwIfEmpty}});var _qc=v3r();Object.defineProperty(_n,"timeInterval",{enumerable:!0,get:function(){return _qc.timeInterval}});var yqc=E8e();Object.defineProperty(_n,"timeout",{enumerable:!0,get:function(){return yqc.timeout}});var bqc=B3r();Object.defineProperty(_n,"timeoutWith",{enumerable:!0,get:function(){return bqc.timeoutWith}});var Eqc=w3r();Object.defineProperty(_n,"timestamp",{enumerable:!0,get:function(){return Eqc.timestamp}});var Sqc=DTt();Object.defineProperty(_n,"toArray",{enumerable:!0,get:function(){return Sqc.toArray}});var vqc=T3r();Object.defineProperty(_n,"window",{enumerable:!0,get:function(){return vqc.window}});var Bqc=R3r();Object.defineProperty(_n,"windowCount",{enumerable:!0,get:function(){return Bqc.windowCount}});var wqc=N3r();Object.defineProperty(_n,"windowTime",{enumerable:!0,get:function(){return wqc.windowTime}});var Tqc=k3r();Object.defineProperty(_n,"windowToggle",{enumerable:!0,get:function(){return Tqc.windowToggle}});var Rqc=x3r();Object.defineProperty(_n,"windowWhen",{enumerable:!0,get:function(){return Rqc.windowWhen}});var Nqc=G3r();Object.defineProperty(_n,"withLatestFrom",{enumerable:!0,get:function(){return Nqc.withLatestFrom}});var Dqc=F3r();Object.defineProperty(_n,"zipAll",{enumerable:!0,get:function(){return Dqc.zipAll}});var kqc=L3r();Object.defineProperty(_n,"zipWith",{enumerable:!0,get:function(){return kqc.zipWith}})});var _te=H(QV=>{"use strict";Object.defineProperty(QV,"__esModule",{value:!0});QV.PathIsFileException=QV.PathIsDirectoryException=QV.FileAlreadyExistException=QV.FileDoesNotExistException=QV.UnknownException=QV.BaseException=void 0;var eue=class extends Error{constructor(t=""){super(t)}};QV.BaseException=eue;var V3r=class extends eue{constructor(t){super(t)}};QV.UnknownException=V3r;var W3r=class extends eue{constructor(t){super(`Path "${t}" does not exist.`)}};QV.FileDoesNotExistException=W3r;var O3r=class extends eue{constructor(t){super(`Path "${t}" already exist.`)}};QV.FileAlreadyExistException=O3r;var P3r=class extends eue{constructor(t){super(`Path "${t}" is a directory.`)}};QV.PathIsDirectoryException=P3r;var M3r=class extends eue{constructor(t){super(`Path "${t}" is a file.`)}};QV.PathIsFileException=M3r});var Vzi=H(G_e=>{"use strict";Object.defineProperty(G_e,"__esModule",{value:!0});G_e.oneLine=xqc;G_e.indentBy=Gqc;G_e.stripIndent=Lzi;G_e.stripIndents=Fqc;G_e.trimNewlines=Zqc;function xqc(e,...t){return String.raw(e,...t).replace(/(?:\r?\n(?:\s*))+/gm," ").trim()}function Gqc(e){let t="";for(;e--;)t+=" ";return(r,...n)=>t+Lzi(r,...n).replace(/\n/g,` -`+t)}function Lzi(e,...t){let r=String.raw(e,...t),n=r.match(/^[ \t]*(?=\S)/gm);if(n===null)return r;let a=Math.min(...n.map(l=>l.length)),o=new RegExp("^[ \\t]{"+a+"}","gm");return(a>0?r.replace(o,""):r).trim()}function Fqc(e,...t){return String.raw(e,...t).split(` + `):"",this.name="UnsubscriptionError",this.errors=r}})});var fte=H(KBt=>{"use strict";Object.defineProperty(KBt,"__esModule",{value:!0});KBt.arrRemove=void 0;function b3c(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}KBt.arrRemove=b3c});var ZP=H(HV=>{"use strict";var W6i=HV&&HV.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},O6i=HV&&HV.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},P6i=HV&&HV.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(jBt,"__esModule",{value:!0});jBt.config=void 0;jBt.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var EOr=H(rj=>{"use strict";var Y6i=rj&&rj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Q6i=rj&&rj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(zBt,"__esModule",{value:!0});zBt.reportUnhandledError=void 0;var S3c=Rke(),v3c=EOr();function B3c(e){v3c.timeoutProvider.setTimeout(function(){var t=S3c.config.onUnhandledError;if(t)t(e);else throw e})}zBt.reportUnhandledError=B3c});var ox=H(qBt=>{"use strict";Object.defineProperty(qBt,"__esModule",{value:!0});qBt.noop=void 0;function w3c(){}qBt.noop=w3c});var X6i=H(nj=>{"use strict";Object.defineProperty(nj,"__esModule",{value:!0});nj.createNotification=nj.nextNotification=nj.errorNotification=nj.COMPLETE_NOTIFICATION=void 0;nj.COMPLETE_NOTIFICATION=function(){return $Bt("C",void 0,void 0)}();function T3c(e){return $Bt("E",void 0,e)}nj.errorNotification=T3c;function R3c(e){return $Bt("N",e,void 0)}nj.nextNotification=R3c;function $Bt(e,t,r){return{kind:e,value:t,error:r}}nj.createNotification=$Bt});var ewt=H(Nke=>{"use strict";Object.defineProperty(Nke,"__esModule",{value:!0});Nke.captureError=Nke.errorContext=void 0;var J6i=Rke(),S_e=null;function N3c(e){if(J6i.config.useDeprecatedSynchronousErrorHandling){var t=!S_e;if(t&&(S_e={errorThrown:!1,error:null}),e(),t){var r=S_e,n=r.errorThrown,a=r.error;if(S_e=null,n)throw a}}else e()}Nke.errorContext=N3c;function D3c(e){J6i.config.useDeprecatedSynchronousErrorHandling&&S_e&&(S_e.errorThrown=!0,S_e.error=e)}Nke.captureError=D3c});var Dke=H(V4=>{"use strict";var j6i=V4&&V4.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(V4,"__esModule",{value:!0});V4.EMPTY_OBSERVER=V4.SafeSubscriber=V4.Subscriber=void 0;var k3c=By(),U6i=ZP(),TOr=Rke(),x3c=SOr(),K6i=ox(),vOr=X6i(),G3c=EOr(),F3c=ewt(),z6i=function(e){j6i(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,U6i.isSubscription(r)&&r.add(n)):n.destination=V4.EMPTY_OBSERVER,n}return t.create=function(r,n,a){return new q6i(r,n,a)},t.prototype.next=function(r){this.isStopped?wOr(vOr.nextNotification(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?wOr(vOr.errorNotification(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?wOr(vOr.COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(U6i.Subscription);V4.Subscriber=z6i;var Z3c=Function.prototype.bind;function BOr(e,t){return Z3c.call(e,t)}var L3c=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){twt(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){twt(n)}else twt(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){twt(r)}},e}(),q6i=function(e){j6i(t,e);function t(r,n,a){var o=e.call(this)||this,l;if(k3c.isFunction(r)||!r)l={next:r??void 0,error:n??void 0,complete:a??void 0};else{var A;o&&TOr.config.useDeprecatedNextContext?(A=Object.create(r),A.unsubscribe=function(){return o.unsubscribe()},l={next:r.next&&BOr(r.next,A),error:r.error&&BOr(r.error,A),complete:r.complete&&BOr(r.complete,A)}):l=r}return o.destination=new L3c(l),o}return t}(z6i);V4.SafeSubscriber=q6i;function twt(e){TOr.config.useDeprecatedSynchronousErrorHandling?F3c.captureError(e):x3c.reportUnhandledError(e)}function V3c(e){throw e}function wOr(e,t){var r=TOr.config.onStoppedNotification;r&&G3c.timeoutProvider.setTimeout(function(){return r(e,t)})}V4.EMPTY_OBSERVER={closed:!0,next:K6i.noop,error:V3c,complete:K6i.noop}});var I8e=H(rwt=>{"use strict";Object.defineProperty(rwt,"__esModule",{value:!0});rwt.observable=void 0;rwt.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var ax=H(nwt=>{"use strict";Object.defineProperty(nwt,"__esModule",{value:!0});nwt.identity=void 0;function W3c(e){return e}nwt.identity=W3c});var h8e=H(kke=>{"use strict";Object.defineProperty(kke,"__esModule",{value:!0});kke.pipeFromArray=kke.pipe=void 0;var O3c=ax();function P3c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(iwt,"__esModule",{value:!0});iwt.Observable=void 0;var NOr=Dke(),M3c=ZP(),H3c=I8e(),Y3c=h8e(),Q3c=Rke(),ROr=By(),X3c=ewt(),J3c=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,n){var a=this,o=K3c(t)?t:new NOr.SafeSubscriber(t,r,n);return X3c.errorContext(function(){var l=a,A=l.operator,f=l.source;o.add(A?A.call(o,f):f?a._subscribe(o):a._trySubscribe(o))}),o},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var n=this;return r=eji(r),new r(function(a,o){var l=new NOr.SafeSubscriber({next:function(A){try{t(A)}catch(f){o(f),l.unsubscribe()}},error:o,complete:a});n.subscribe(l)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[H3c.observable]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r{"use strict";Object.defineProperty(xke,"__esModule",{value:!0});xke.operate=xke.hasLift=void 0;var j3c=By();function tji(e){return j3c.isFunction(e?.lift)}xke.hasLift=tji;function z3c(e){return function(t){if(tji(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}xke.operate=z3c});var yd=H(xle=>{"use strict";var q3c=xle&&xle.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(xle,"__esModule",{value:!0});xle.OperatorSubscriber=xle.createOperatorSubscriber=void 0;var $3c=Dke();function e5c(e,t,r,n,a){return new rji(e,t,r,n,a)}xle.createOperatorSubscriber=e5c;var rji=function(e){q3c(t,e);function t(r,n,a,o,l,A){var f=e.call(this,r)||this;return f.onFinalize=l,f.shouldUnsubscribe=A,f._next=n?function(I){try{n(I)}catch(C){r.error(C)}}:e.prototype._next,f._error=o?function(I){try{o(I)}catch(C){r.error(C)}finally{this.unsubscribe()}}:e.prototype._error,f._complete=a?function(){try{a()}catch(I){r.error(I)}finally{this.unsubscribe()}}:e.prototype._complete,f}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}($3c.Subscriber);xle.OperatorSubscriber=rji});var owt=H(swt=>{"use strict";Object.defineProperty(swt,"__esModule",{value:!0});swt.refCount=void 0;var t5c=$g(),r5c=yd();function n5c(){return t5c.operate(function(e,t){var r=null;e._refCount++;var n=r5c.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var a=e._connection,o=r;r=null,a&&(!o||a===o)&&a.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}swt.refCount=n5c});var m8e=H(Gke=>{"use strict";var i5c=Gke&&Gke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Gke,"__esModule",{value:!0});Gke.ConnectableObservable=void 0;var s5c=db(),nji=ZP(),o5c=owt(),a5c=yd(),c5c=$g(),l5c=function(e){i5c(t,e);function t(r,n){var a=e.call(this)||this;return a.source=r,a.subjectFactory=n,a._subject=null,a._refCount=0,a._connection=null,c5c.hasLift(r)&&(a.lift=r.lift),a}return t.prototype._subscribe=function(r){return this.getSubject().subscribe(r)},t.prototype.getSubject=function(){var r=this._subject;return(!r||r.isStopped)&&(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var r=this._connection;this._subject=this._connection=null,r?.unsubscribe()},t.prototype.connect=function(){var r=this,n=this._connection;if(!n){n=this._connection=new nji.Subscription;var a=this.getSubject();n.add(this.source.subscribe(a5c.createOperatorSubscriber(a,void 0,function(){r._teardown(),a.complete()},function(o){r._teardown(),a.error(o)},function(){return r._teardown()}))),n.closed&&(this._connection=null,n=nji.Subscription.EMPTY)}return n},t.prototype.refCount=function(){return o5c.refCount()(this)},t}(s5c.Observable);Gke.ConnectableObservable=l5c});var iji=H(C8e=>{"use strict";Object.defineProperty(C8e,"__esModule",{value:!0});C8e.performanceTimestampProvider=void 0;C8e.performanceTimestampProvider={now:function(){return(C8e.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var DOr=H(W4=>{"use strict";var sji=W4&&W4.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},oji=W4&&W4.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(awt,"__esModule",{value:!0});awt.animationFrames=void 0;var g5c=db(),A5c=iji(),aji=DOr();function d5c(e){return e?cji(e):p5c}awt.animationFrames=d5c;function cji(e){return new g5c.Observable(function(t){var r=e||A5c.performanceTimestampProvider,n=r.now(),a=0,o=function(){t.closed||(a=aji.animationFrameProvider.requestAnimationFrame(function(l){a=0;var A=r.now();t.next({timestamp:e?A:l,elapsed:A-n}),o()}))};return o(),function(){a&&aji.animationFrameProvider.cancelAnimationFrame(a)}})}var p5c=cji()});var kOr=H(cwt=>{"use strict";Object.defineProperty(cwt,"__esModule",{value:!0});cwt.ObjectUnsubscribedError=void 0;var f5c=kle();cwt.ObjectUnsubscribedError=f5c.createErrorClass(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var cx=H(ij=>{"use strict";var gji=ij&&ij.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),I5c=ij&&ij.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(ij,"__esModule",{value:!0});ij.AnonymousSubject=ij.Subject=void 0;var uji=db(),GOr=ZP(),h5c=kOr(),m5c=fte(),xOr=ewt(),Aji=function(e){gji(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var n=new FOr(this,this);return n.operator=r,n},t.prototype._throwIfClosed=function(){if(this.closed)throw new h5c.ObjectUnsubscribedError},t.prototype.next=function(r){var n=this;xOr.errorContext(function(){var a,o;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var l=I5c(n.currentObservers),A=l.next();!A.done;A=l.next()){var f=A.value;f.next(r)}}catch(I){a={error:I}}finally{try{A&&!A.done&&(o=l.return)&&o.call(l)}finally{if(a)throw a.error}}}})},t.prototype.error=function(r){var n=this;xOr.errorContext(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=r;for(var a=n.observers;a.length;)a.shift().error(r)}})},t.prototype.complete=function(){var r=this;xOr.errorContext(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var n=r.observers;n.length;)n.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,a=this,o=a.hasError,l=a.isStopped,A=a.observers;return o||l?GOr.EMPTY_SUBSCRIPTION:(this.currentObservers=null,A.push(r),new GOr.Subscription(function(){n.currentObservers=null,m5c.arrRemove(A,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n.thrownError,l=n.isStopped;a?r.error(o):l&&r.complete()},t.prototype.asObservable=function(){var r=new uji.Observable;return r.source=this,r},t.create=function(r,n){return new FOr(r,n)},t}(uji.Observable);ij.Subject=Aji;var FOr=function(e){gji(t,e);function t(r,n){var a=e.call(this)||this;return a.destination=r,a.source=n,a}return t.prototype.next=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.next)===null||a===void 0||a.call(n,r)},t.prototype.error=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.error)===null||a===void 0||a.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,a;return(a=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&a!==void 0?a:GOr.EMPTY_SUBSCRIPTION},t}(Aji);ij.AnonymousSubject=FOr});var ZOr=H(Fke=>{"use strict";var C5c=Fke&&Fke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Fke,"__esModule",{value:!0});Fke.BehaviorSubject=void 0;var _5c=cx(),y5c=function(e){C5c(t,e);function t(r){var n=e.call(this)||this;return n._value=r,n}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var n=e.prototype._subscribe.call(this,r);return!n.closed&&r.next(this._value),n},t.prototype.getValue=function(){var r=this,n=r.hasError,a=r.thrownError,o=r._value;if(n)throw a;return this._throwIfClosed(),o},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(_5c.Subject);Fke.BehaviorSubject=y5c});var lwt=H(_8e=>{"use strict";Object.defineProperty(_8e,"__esModule",{value:!0});_8e.dateTimestampProvider=void 0;_8e.dateTimestampProvider={now:function(){return(_8e.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var uwt=H(Zke=>{"use strict";var b5c=Zke&&Zke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Zke,"__esModule",{value:!0});Zke.ReplaySubject=void 0;var E5c=cx(),S5c=lwt(),v5c=function(e){b5c(t,e);function t(r,n,a){r===void 0&&(r=1/0),n===void 0&&(n=1/0),a===void 0&&(a=S5c.dateTimestampProvider);var o=e.call(this)||this;return o._bufferSize=r,o._windowTime=n,o._timestampProvider=a,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=n===1/0,o._bufferSize=Math.max(1,r),o._windowTime=Math.max(1,n),o}return t.prototype.next=function(r){var n=this,a=n.isStopped,o=n._buffer,l=n._infiniteTimeWindow,A=n._timestampProvider,f=n._windowTime;a||(o.push(r),!l&&o.push(A.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),a=this,o=a._infiniteTimeWindow,l=a._buffer,A=l.slice(),f=0;f{"use strict";var B5c=Lke&&Lke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Lke,"__esModule",{value:!0});Lke.AsyncSubject=void 0;var w5c=cx(),T5c=function(e){B5c(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._value=null,r._hasValue=!1,r._isComplete=!1,r}return t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n._hasValue,l=n._value,A=n.thrownError,f=n.isStopped,I=n._isComplete;a?r.error(A):(f||I)&&(o&&r.next(l),r.complete())},t.prototype.next=function(r){this.isStopped||(this._value=r,this._hasValue=!0)},t.prototype.complete=function(){var r=this,n=r._hasValue,a=r._value,o=r._isComplete;o||(this._isComplete=!0,n&&e.prototype.next.call(this,a),e.prototype.complete.call(this))},t}(w5c.Subject);Lke.AsyncSubject=T5c});var dji=H(Vke=>{"use strict";var R5c=Vke&&Vke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Vke,"__esModule",{value:!0});Vke.Action=void 0;var N5c=ZP(),D5c=function(e){R5c(t,e);function t(r,n){return e.call(this)||this}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),this},t}(N5c.Subscription);Vke.Action=D5c});var Iji=H(sj=>{"use strict";var pji=sj&&sj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},fji=sj&&sj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var k5c=Wke&&Wke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Wke,"__esModule",{value:!0});Wke.AsyncAction=void 0;var x5c=dji(),hji=Iji(),G5c=fte(),F5c=function(e){k5c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a.pending=!1,a}return t.prototype.schedule=function(r,n){var a;if(n===void 0&&(n=0),this.closed)return this;this.state=r;var o=this.id,l=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(l,o,n)),this.pending=!0,this.delay=n,this.id=(a=this.id)!==null&&a!==void 0?a:this.requestAsyncId(l,this.id,n),this},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),hji.intervalProvider.setInterval(r.flush.bind(r,this),a)},t.prototype.recycleAsyncId=function(r,n,a){if(a===void 0&&(a=0),a!=null&&this.delay===a&&this.pending===!1)return n;n!=null&&hji.intervalProvider.clearInterval(n)},t.prototype.execute=function(r,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var a=this._execute(r,n);if(a)return a;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,n){var a=!1,o;try{this.work(r)}catch(l){a=!0,o=l||new Error("Scheduled action threw falsy error")}if(a)return this.unsubscribe(),o},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,n=r.id,a=r.scheduler,o=a.actions;this.work=this.state=this.scheduler=null,this.pending=!1,G5c.arrRemove(o,this),n!=null&&(this.id=this.recycleAsyncId(a,n,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(x5c.Action);Wke.AsyncAction=F5c});var Cji=H(Pke=>{"use strict";Object.defineProperty(Pke,"__esModule",{value:!0});Pke.TestTools=Pke.Immediate=void 0;var Z5c=1,LOr,Awt={};function mji(e){return e in Awt?(delete Awt[e],!0):!1}Pke.Immediate={setImmediate:function(e){var t=Z5c++;return Awt[t]=!0,LOr||(LOr=Promise.resolve()),LOr.then(function(){return mji(t)&&e()}),t},clearImmediate:function(e){mji(e)}};Pke.TestTools={pending:function(){return Object.keys(Awt).length}}});var yji=H(oj=>{"use strict";var L5c=oj&&oj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},V5c=oj&&oj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var P5c=Mke&&Mke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Mke,"__esModule",{value:!0});Mke.AsapAction=void 0;var M5c=Oke(),bji=yji(),H5c=function(e){P5c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=bji.immediateProvider.setImmediate(r.flush.bind(r,void 0))))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(bji.immediateProvider.clearImmediate(n),r._scheduled===n&&(r._scheduled=void 0))},t}(M5c.AsyncAction);Mke.AsapAction=H5c});var VOr=H(dwt=>{"use strict";Object.defineProperty(dwt,"__esModule",{value:!0});dwt.Scheduler=void 0;var Y5c=lwt(),Q5c=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,n){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(n,r)},e.now=Y5c.dateTimestampProvider.now,e}();dwt.Scheduler=Q5c});var Yke=H(Hke=>{"use strict";var X5c=Hke&&Hke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Hke,"__esModule",{value:!0});Hke.AsyncScheduler=void 0;var Sji=VOr(),J5c=function(e){X5c(t,e);function t(r,n){n===void 0&&(n=Sji.Scheduler.now);var a=e.call(this,r,n)||this;return a.actions=[],a._active=!1,a}return t.prototype.flush=function(r){var n=this.actions;if(this._active){n.push(r);return}var a;this._active=!0;do if(a=r.execute(r.state,r.delay))break;while(r=n.shift());if(this._active=!1,a){for(;r=n.shift();)r.unsubscribe();throw a}},t}(Sji.Scheduler);Hke.AsyncScheduler=J5c});var vji=H(Qke=>{"use strict";var U5c=Qke&&Qke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Qke,"__esModule",{value:!0});Qke.AsapScheduler=void 0;var K5c=Yke(),j5c=function(e){U5c(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(K5c.AsyncScheduler);Qke.AsapScheduler=j5c});var Bji=H(v_e=>{"use strict";Object.defineProperty(v_e,"__esModule",{value:!0});v_e.asap=v_e.asapScheduler=void 0;var z5c=Eji(),q5c=vji();v_e.asapScheduler=new q5c.AsapScheduler(z5c.AsapAction);v_e.asap=v_e.asapScheduler});var YV=H(B_e=>{"use strict";Object.defineProperty(B_e,"__esModule",{value:!0});B_e.async=B_e.asyncScheduler=void 0;var $5c=Oke(),eMc=Yke();B_e.asyncScheduler=new eMc.AsyncScheduler($5c.AsyncAction);B_e.async=B_e.asyncScheduler});var wji=H(Xke=>{"use strict";var tMc=Xke&&Xke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Xke,"__esModule",{value:!0});Xke.QueueAction=void 0;var rMc=Oke(),nMc=function(e){tMc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),n>0?e.prototype.schedule.call(this,r,n):(this.delay=n,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,n){return n>0||this.closed?e.prototype.execute.call(this,r,n):this._execute(r,n)},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.flush(this),0)},t}(rMc.AsyncAction);Xke.QueueAction=nMc});var Tji=H(Jke=>{"use strict";var iMc=Jke&&Jke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Jke,"__esModule",{value:!0});Jke.QueueScheduler=void 0;var sMc=Yke(),oMc=function(e){iMc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(sMc.AsyncScheduler);Jke.QueueScheduler=oMc});var Rji=H(w_e=>{"use strict";Object.defineProperty(w_e,"__esModule",{value:!0});w_e.queue=w_e.queueScheduler=void 0;var aMc=wji(),cMc=Tji();w_e.queueScheduler=new cMc.QueueScheduler(aMc.QueueAction);w_e.queue=w_e.queueScheduler});var Dji=H(Uke=>{"use strict";var lMc=Uke&&Uke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Uke,"__esModule",{value:!0});Uke.AnimationFrameAction=void 0;var uMc=Oke(),Nji=DOr(),gMc=function(e){lMc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=Nji.animationFrameProvider.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(Nji.animationFrameProvider.cancelAnimationFrame(n),r._scheduled=void 0)},t}(uMc.AsyncAction);Uke.AnimationFrameAction=gMc});var kji=H(Kke=>{"use strict";var AMc=Kke&&Kke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Kke,"__esModule",{value:!0});Kke.AnimationFrameScheduler=void 0;var dMc=Yke(),pMc=function(e){AMc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(dMc.AsyncScheduler);Kke.AnimationFrameScheduler=pMc});var xji=H(T_e=>{"use strict";Object.defineProperty(T_e,"__esModule",{value:!0});T_e.animationFrame=T_e.animationFrameScheduler=void 0;var fMc=Dji(),IMc=kji();T_e.animationFrameScheduler=new IMc.AnimationFrameScheduler(fMc.AnimationFrameAction);T_e.animationFrame=T_e.animationFrameScheduler});var Zji=H(Gle=>{"use strict";var Gji=Gle&&Gle.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Gle,"__esModule",{value:!0});Gle.VirtualAction=Gle.VirtualTimeScheduler=void 0;var hMc=Oke(),mMc=ZP(),CMc=Yke(),_Mc=function(e){Gji(t,e);function t(r,n){r===void 0&&(r=Fji),n===void 0&&(n=1/0);var a=e.call(this,r,function(){return a.frame})||this;return a.maxFrames=n,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var r=this,n=r.actions,a=r.maxFrames,o,l;(l=n[0])&&l.delay<=a&&(n.shift(),this.frame=l.delay,!(o=l.execute(l.state,l.delay))););if(o){for(;l=n.shift();)l.unsubscribe();throw o}},t.frameTimeFactor=10,t}(CMc.AsyncScheduler);Gle.VirtualTimeScheduler=_Mc;var Fji=function(e){Gji(t,e);function t(r,n,a){a===void 0&&(a=r.index+=1);var o=e.call(this,r,n)||this;return o.scheduler=r,o.work=n,o.index=a,o.active=!0,o.index=r.index=a,o}return t.prototype.schedule=function(r,n){if(n===void 0&&(n=0),Number.isFinite(n)){if(!this.id)return e.prototype.schedule.call(this,r,n);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(r,n)}else return mMc.Subscription.EMPTY},t.prototype.requestAsyncId=function(r,n,a){a===void 0&&(a=0),this.delay=r.frame+a;var o=r.actions;return o.push(this),o.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(r,n,a){a===void 0&&(a=0)},t.prototype._execute=function(r,n){if(this.active===!0)return e.prototype._execute.call(this,r,n)},t.sortActions=function(r,n){return r.delay===n.delay?r.index===n.index?0:r.index>n.index?1:-1:r.delay>n.delay?1:-1},t}(hMc.AsyncAction);Gle.VirtualAction=Fji});var O4=H(R_e=>{"use strict";Object.defineProperty(R_e,"__esModule",{value:!0});R_e.empty=R_e.EMPTY=void 0;var Lji=db();R_e.EMPTY=new Lji.Observable(function(e){return e.complete()});function yMc(e){return e?bMc(e):R_e.EMPTY}R_e.empty=yMc;function bMc(e){return new Lji.Observable(function(t){return e.schedule(function(){return t.complete()})})}});var y8e=H(pwt=>{"use strict";Object.defineProperty(pwt,"__esModule",{value:!0});pwt.isScheduler=void 0;var EMc=By();function SMc(e){return e&&EMc.isFunction(e.schedule)}pwt.isScheduler=SMc});var QV=H(Fle=>{"use strict";Object.defineProperty(Fle,"__esModule",{value:!0});Fle.popNumber=Fle.popScheduler=Fle.popResultSelector=void 0;var vMc=By(),BMc=y8e();function WOr(e){return e[e.length-1]}function wMc(e){return vMc.isFunction(WOr(e))?e.pop():void 0}Fle.popResultSelector=wMc;function TMc(e){return BMc.isScheduler(WOr(e))?e.pop():void 0}Fle.popScheduler=TMc;function RMc(e,t){return typeof WOr(e)=="number"?e.pop():t}Fle.popNumber=RMc});var Iwt=H(fwt=>{"use strict";Object.defineProperty(fwt,"__esModule",{value:!0});fwt.isArrayLike=void 0;fwt.isArrayLike=function(e){return e&&typeof e.length=="number"&&typeof e!="function"}});var OOr=H(hwt=>{"use strict";Object.defineProperty(hwt,"__esModule",{value:!0});hwt.isPromise=void 0;var NMc=By();function DMc(e){return NMc.isFunction(e?.then)}hwt.isPromise=DMc});var POr=H(mwt=>{"use strict";Object.defineProperty(mwt,"__esModule",{value:!0});mwt.isInteropObservable=void 0;var kMc=I8e(),xMc=By();function GMc(e){return xMc.isFunction(e[kMc.observable])}mwt.isInteropObservable=GMc});var MOr=H(Cwt=>{"use strict";Object.defineProperty(Cwt,"__esModule",{value:!0});Cwt.isAsyncIterable=void 0;var FMc=By();function ZMc(e){return Symbol.asyncIterator&&FMc.isFunction(e?.[Symbol.asyncIterator])}Cwt.isAsyncIterable=ZMc});var HOr=H(_wt=>{"use strict";Object.defineProperty(_wt,"__esModule",{value:!0});_wt.createInvalidObservableTypeError=void 0;function LMc(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}_wt.createInvalidObservableTypeError=LMc});var YOr=H(jke=>{"use strict";Object.defineProperty(jke,"__esModule",{value:!0});jke.iterator=jke.getSymbolIterator=void 0;function Vji(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}jke.getSymbolIterator=Vji;jke.iterator=Vji()});var QOr=H(ywt=>{"use strict";Object.defineProperty(ywt,"__esModule",{value:!0});ywt.isIterable=void 0;var VMc=YOr(),WMc=By();function OMc(e){return WMc.isFunction(e?.[VMc.iterator])}ywt.isIterable=OMc});var bwt=H(TH=>{"use strict";var PMc=TH&&TH.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]1||A(E,N)})})}function A(E,N){try{f(n[E](N))}catch(B){b(o[0][3],B)}}function f(E){E.value instanceof zke?Promise.resolve(E.value.v).then(I,C):b(o[0][2],E)}function I(E){A("next",E)}function C(E){A("throw",E)}function b(E,N){E(N),o.shift(),o.length&&A(o[0][0],o[0][1])}};Object.defineProperty(TH,"__esModule",{value:!0});TH.isReadableStreamLike=TH.readableStreamLikeToAsyncGenerator=void 0;var HMc=By();function YMc(e){return MMc(this,arguments,function(){var r,n,a,o;return PMc(this,function(l){switch(l.label){case 0:r=e.getReader(),l.label=1;case 1:l.trys.push([1,,9,10]),l.label=2;case 2:return[4,zke(r.read())];case 3:return n=l.sent(),a=n.value,o=n.done,o?[4,zke(void 0)]:[3,5];case 4:return[2,l.sent()];case 5:return[4,zke(a)];case 6:return[4,l.sent()];case 7:return l.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}TH.readableStreamLikeToAsyncGenerator=YMc;function QMc(e){return HMc.isFunction(e?.getReader)}TH.isReadableStreamLike=QMc});var ph=H(W2=>{"use strict";var XMc=W2&&W2.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})},JMc=W2&&W2.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(W2,"__esModule",{value:!0});W2.fromReadableStreamLike=W2.fromAsyncIterable=W2.fromIterable=W2.fromPromise=W2.fromArrayLike=W2.fromInteropObservable=W2.innerFrom=void 0;var KMc=Iwt(),jMc=OOr(),qke=db(),zMc=POr(),qMc=MOr(),$Mc=HOr(),eHc=QOr(),Wji=bwt(),tHc=By(),rHc=SOr(),nHc=I8e();function iHc(e){if(e instanceof qke.Observable)return e;if(e!=null){if(zMc.isInteropObservable(e))return Oji(e);if(KMc.isArrayLike(e))return Pji(e);if(jMc.isPromise(e))return Mji(e);if(qMc.isAsyncIterable(e))return JOr(e);if(eHc.isIterable(e))return Hji(e);if(Wji.isReadableStreamLike(e))return Yji(e)}throw $Mc.createInvalidObservableTypeError(e)}W2.innerFrom=iHc;function Oji(e){return new qke.Observable(function(t){var r=e[nHc.observable]();if(tHc.isFunction(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}W2.fromInteropObservable=Oji;function Pji(e){return new qke.Observable(function(t){for(var r=0;r{"use strict";Object.defineProperty(Ewt,"__esModule",{value:!0});Ewt.executeSchedule=void 0;function oHc(e,t,r,n,a){n===void 0&&(n=0),a===void 0&&(a=!1);var o=t.schedule(function(){r(),a?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(o),!a)return o}Ewt.executeSchedule=oHc});var $ke=H(Swt=>{"use strict";Object.defineProperty(Swt,"__esModule",{value:!0});Swt.observeOn=void 0;var UOr=Ite(),aHc=$g(),cHc=yd();function lHc(e,t){return t===void 0&&(t=0),aHc.operate(function(r,n){r.subscribe(cHc.createOperatorSubscriber(n,function(a){return UOr.executeSchedule(n,e,function(){return n.next(a)},t)},function(){return UOr.executeSchedule(n,e,function(){return n.complete()},t)},function(a){return UOr.executeSchedule(n,e,function(){return n.error(a)},t)}))})}Swt.observeOn=lHc});var exe=H(vwt=>{"use strict";Object.defineProperty(vwt,"__esModule",{value:!0});vwt.subscribeOn=void 0;var uHc=$g();function gHc(e,t){return t===void 0&&(t=0),uHc.operate(function(r,n){n.add(e.schedule(function(){return r.subscribe(n)},t))})}vwt.subscribeOn=gHc});var Qji=H(Bwt=>{"use strict";Object.defineProperty(Bwt,"__esModule",{value:!0});Bwt.scheduleObservable=void 0;var AHc=ph(),dHc=$ke(),pHc=exe();function fHc(e,t){return AHc.innerFrom(e).pipe(pHc.subscribeOn(t),dHc.observeOn(t))}Bwt.scheduleObservable=fHc});var Xji=H(wwt=>{"use strict";Object.defineProperty(wwt,"__esModule",{value:!0});wwt.schedulePromise=void 0;var IHc=ph(),hHc=$ke(),mHc=exe();function CHc(e,t){return IHc.innerFrom(e).pipe(mHc.subscribeOn(t),hHc.observeOn(t))}wwt.schedulePromise=CHc});var Jji=H(Twt=>{"use strict";Object.defineProperty(Twt,"__esModule",{value:!0});Twt.scheduleArray=void 0;var _Hc=db();function yHc(e,t){return new _Hc.Observable(function(r){var n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}Twt.scheduleArray=yHc});var KOr=H(Rwt=>{"use strict";Object.defineProperty(Rwt,"__esModule",{value:!0});Rwt.scheduleIterable=void 0;var bHc=db(),EHc=YOr(),SHc=By(),Uji=Ite();function vHc(e,t){return new bHc.Observable(function(r){var n;return Uji.executeSchedule(r,t,function(){n=e[EHc.iterator](),Uji.executeSchedule(r,t,function(){var a,o,l;try{a=n.next(),o=a.value,l=a.done}catch(A){r.error(A);return}l?r.complete():r.next(o)},0,!0)}),function(){return SHc.isFunction(n?.return)&&n.return()}})}Rwt.scheduleIterable=vHc});var jOr=H(Nwt=>{"use strict";Object.defineProperty(Nwt,"__esModule",{value:!0});Nwt.scheduleAsyncIterable=void 0;var BHc=db(),Kji=Ite();function wHc(e,t){if(!e)throw new Error("Iterable cannot be null");return new BHc.Observable(function(r){Kji.executeSchedule(r,t,function(){var n=e[Symbol.asyncIterator]();Kji.executeSchedule(r,t,function(){n.next().then(function(a){a.done?r.complete():r.next(a.value)})},0,!0)})})}Nwt.scheduleAsyncIterable=wHc});var jji=H(Dwt=>{"use strict";Object.defineProperty(Dwt,"__esModule",{value:!0});Dwt.scheduleReadableStreamLike=void 0;var THc=jOr(),RHc=bwt();function NHc(e,t){return THc.scheduleAsyncIterable(RHc.readableStreamLikeToAsyncGenerator(e),t)}Dwt.scheduleReadableStreamLike=NHc});var zOr=H(kwt=>{"use strict";Object.defineProperty(kwt,"__esModule",{value:!0});kwt.scheduled=void 0;var DHc=Qji(),kHc=Xji(),xHc=Jji(),GHc=KOr(),FHc=jOr(),ZHc=POr(),LHc=OOr(),VHc=Iwt(),WHc=QOr(),OHc=MOr(),PHc=HOr(),MHc=bwt(),HHc=jji();function YHc(e,t){if(e!=null){if(ZHc.isInteropObservable(e))return DHc.scheduleObservable(e,t);if(VHc.isArrayLike(e))return xHc.scheduleArray(e,t);if(LHc.isPromise(e))return kHc.schedulePromise(e,t);if(OHc.isAsyncIterable(e))return FHc.scheduleAsyncIterable(e,t);if(WHc.isIterable(e))return GHc.scheduleIterable(e,t);if(MHc.isReadableStreamLike(e))return HHc.scheduleReadableStreamLike(e,t)}throw PHc.createInvalidObservableTypeError(e)}kwt.scheduled=YHc});var hte=H(xwt=>{"use strict";Object.defineProperty(xwt,"__esModule",{value:!0});xwt.from=void 0;var QHc=zOr(),XHc=ph();function JHc(e,t){return t?QHc.scheduled(e,t):XHc.innerFrom(e)}xwt.from=JHc});var Fwt=H(Gwt=>{"use strict";Object.defineProperty(Gwt,"__esModule",{value:!0});Gwt.of=void 0;var UHc=QV(),KHc=hte();function jHc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(Zwt,"__esModule",{value:!0});Zwt.throwError=void 0;var zHc=db(),qHc=By();function $Hc(e,t){var r=qHc.isFunction(e)?e:function(){return e},n=function(a){return a.error(r())};return new zHc.Observable(t?function(a){return t.schedule(n,0,a)}:n)}Zwt.throwError=$Hc});var Lwt=H(mte=>{"use strict";Object.defineProperty(mte,"__esModule",{value:!0});mte.observeNotification=mte.Notification=mte.NotificationKind=void 0;var eYc=O4(),tYc=Fwt(),rYc=qOr(),nYc=By(),iYc;(function(e){e.NEXT="N",e.ERROR="E",e.COMPLETE="C"})(iYc=mte.NotificationKind||(mte.NotificationKind={}));var sYc=function(){function e(t,r,n){this.kind=t,this.value=r,this.error=n,this.hasValue=t==="N"}return e.prototype.observe=function(t){return zji(this,t)},e.prototype.do=function(t,r,n){var a=this,o=a.kind,l=a.value,A=a.error;return o==="N"?t?.(l):o==="E"?r?.(A):n?.()},e.prototype.accept=function(t,r,n){var a;return nYc.isFunction((a=t)===null||a===void 0?void 0:a.next)?this.observe(t):this.do(t,r,n)},e.prototype.toObservable=function(){var t=this,r=t.kind,n=t.value,a=t.error,o=r==="N"?tYc.of(n):r==="E"?rYc.throwError(function(){return a}):r==="C"?eYc.EMPTY:0;if(!o)throw new TypeError("Unexpected notification kind "+r);return o},e.createNext=function(t){return new e("N",t)},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e}();mte.Notification=sYc;function zji(e,t){var r,n,a,o=e,l=o.kind,A=o.value,f=o.error;if(typeof l!="string")throw new TypeError('Invalid notification, missing "kind"');l==="N"?(r=t.next)===null||r===void 0||r.call(t,A):l==="E"?(n=t.error)===null||n===void 0||n.call(t,f):(a=t.complete)===null||a===void 0||a.call(t)}mte.observeNotification=zji});var $ji=H(Vwt=>{"use strict";Object.defineProperty(Vwt,"__esModule",{value:!0});Vwt.isObservable=void 0;var oYc=db(),qji=By();function aYc(e){return!!e&&(e instanceof oYc.Observable||qji.isFunction(e.lift)&&qji.isFunction(e.subscribe))}Vwt.isObservable=aYc});var Zle=H(Wwt=>{"use strict";Object.defineProperty(Wwt,"__esModule",{value:!0});Wwt.EmptyError=void 0;var cYc=kle();Wwt.EmptyError=cYc.createErrorClass(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});var e7i=H(Owt=>{"use strict";Object.defineProperty(Owt,"__esModule",{value:!0});Owt.lastValueFrom=void 0;var lYc=Zle();function uYc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=!1,l;e.subscribe({next:function(A){l=A,o=!0},error:a,complete:function(){o?n(l):r?n(t.defaultValue):a(new lYc.EmptyError)}})})}Owt.lastValueFrom=uYc});var t7i=H(Pwt=>{"use strict";Object.defineProperty(Pwt,"__esModule",{value:!0});Pwt.firstValueFrom=void 0;var gYc=Zle(),AYc=Dke();function dYc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=new AYc.SafeSubscriber({next:function(l){n(l),o.unsubscribe()},error:a,complete:function(){r?n(t.defaultValue):a(new gYc.EmptyError)}});e.subscribe(o)})}Pwt.firstValueFrom=dYc});var $Or=H(Mwt=>{"use strict";Object.defineProperty(Mwt,"__esModule",{value:!0});Mwt.ArgumentOutOfRangeError=void 0;var pYc=kle();Mwt.ArgumentOutOfRangeError=pYc.createErrorClass(function(e){return function(){e(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var ePr=H(Hwt=>{"use strict";Object.defineProperty(Hwt,"__esModule",{value:!0});Hwt.NotFoundError=void 0;var fYc=kle();Hwt.NotFoundError=fYc.createErrorClass(function(e){return function(r){e(this),this.name="NotFoundError",this.message=r}})});var tPr=H(Ywt=>{"use strict";Object.defineProperty(Ywt,"__esModule",{value:!0});Ywt.SequenceError=void 0;var IYc=kle();Ywt.SequenceError=IYc.createErrorClass(function(e){return function(r){e(this),this.name="SequenceError",this.message=r}})});var Xwt=H(Qwt=>{"use strict";Object.defineProperty(Qwt,"__esModule",{value:!0});Qwt.isValidDate=void 0;function hYc(e){return e instanceof Date&&!isNaN(e)}Qwt.isValidDate=hYc});var b8e=H(N_e=>{"use strict";Object.defineProperty(N_e,"__esModule",{value:!0});N_e.timeout=N_e.TimeoutError=void 0;var mYc=YV(),CYc=Xwt(),_Yc=$g(),yYc=ph(),bYc=kle(),EYc=yd(),SYc=Ite();N_e.TimeoutError=bYc.createErrorClass(function(e){return function(r){r===void 0&&(r=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r}});function vYc(e,t){var r=CYc.isValidDate(e)?{first:e}:typeof e=="number"?{each:e}:e,n=r.first,a=r.each,o=r.with,l=o===void 0?BYc:o,A=r.scheduler,f=A===void 0?t??mYc.asyncScheduler:A,I=r.meta,C=I===void 0?null:I;if(n==null&&a==null)throw new TypeError("No timeout provided.");return _Yc.operate(function(b,E){var N,B,F=null,Q=0,J=function(ae){B=SYc.executeSchedule(E,f,function(){try{N.unsubscribe(),yYc.innerFrom(l({meta:C,lastValue:F,seen:Q})).subscribe(E)}catch(ne){E.error(ne)}},ae)};N=b.subscribe(EYc.createOperatorSubscriber(E,function(ae){B?.unsubscribe(),Q++,E.next(F=ae),a>0&&J(a)},void 0,void 0,function(){B?.closed||B?.unsubscribe(),F=null})),!Q&&J(n!=null?typeof n=="number"?n:+n-f.now():a)})}N_e.timeout=vYc;function BYc(e){throw new N_e.TimeoutError(e)}});var Cte=H(Jwt=>{"use strict";Object.defineProperty(Jwt,"__esModule",{value:!0});Jwt.map=void 0;var wYc=$g(),TYc=yd();function RYc(e,t){return wYc.operate(function(r,n){var a=0;r.subscribe(TYc.createOperatorSubscriber(n,function(o){n.next(e.call(t,o,a++))}))})}Jwt.map=RYc});var Vle=H(Lle=>{"use strict";var NYc=Lle&&Lle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},DYc=Lle&&Lle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var ZYc=Wle&&Wle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},r7i=Wle&&Wle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(Uwt,"__esModule",{value:!0});Uwt.bindCallback=void 0;var HYc=nPr();function YYc(e,t,r){return HYc.bindCallbackInternals(!1,e,t,r)}Uwt.bindCallback=YYc});var i7i=H(Kwt=>{"use strict";Object.defineProperty(Kwt,"__esModule",{value:!0});Kwt.bindNodeCallback=void 0;var QYc=nPr();function XYc(e,t,r){return QYc.bindCallbackInternals(!0,e,t,r)}Kwt.bindNodeCallback=XYc});var iPr=H(jwt=>{"use strict";Object.defineProperty(jwt,"__esModule",{value:!0});jwt.argsArgArrayOrObject=void 0;var JYc=Array.isArray,UYc=Object.getPrototypeOf,KYc=Object.prototype,jYc=Object.keys;function zYc(e){if(e.length===1){var t=e[0];if(JYc(t))return{args:t,keys:null};if(qYc(t)){var r=jYc(t);return{args:r.map(function(n){return t[n]}),keys:r}}}return{args:e,keys:null}}jwt.argsArgArrayOrObject=zYc;function qYc(e){return e&&typeof e=="object"&&UYc(e)===KYc}});var sPr=H(zwt=>{"use strict";Object.defineProperty(zwt,"__esModule",{value:!0});zwt.createObject=void 0;function $Yc(e,t){return e.reduce(function(r,n,a){return r[n]=t[a],r},{})}zwt.createObject=$Yc});var qwt=H(txe=>{"use strict";Object.defineProperty(txe,"__esModule",{value:!0});txe.combineLatestInit=txe.combineLatest=void 0;var eQc=db(),tQc=iPr(),a7i=hte(),c7i=ax(),rQc=Vle(),s7i=QV(),nQc=sPr(),iQc=yd(),sQc=Ite();function oQc(){for(var e=[],t=0;t{"use strict";Object.defineProperty($wt,"__esModule",{value:!0});$wt.mergeInternals=void 0;var aQc=ph(),cQc=Ite(),u7i=yd();function lQc(e,t,r,n,a,o,l,A){var f=[],I=0,C=0,b=!1,E=function(){b&&!f.length&&!I&&t.complete()},N=function(F){return I{"use strict";Object.defineProperty(tTt,"__esModule",{value:!0});tTt.mergeMap=void 0;var uQc=Cte(),gQc=ph(),AQc=$g(),dQc=eTt(),pQc=By();function g7i(e,t,r){return r===void 0&&(r=1/0),pQc.isFunction(t)?g7i(function(n,a){return uQc.map(function(o,l){return t(n,o,a,l)})(gQc.innerFrom(e(n,a)))},r):(typeof t=="number"&&(r=t),AQc.operate(function(n,a){return dQc.mergeInternals(n,a,e,r)}))}tTt.mergeMap=g7i});var rxe=H(rTt=>{"use strict";Object.defineProperty(rTt,"__esModule",{value:!0});rTt.mergeAll=void 0;var fQc=aj(),IQc=ax();function hQc(e){return e===void 0&&(e=1/0),fQc.mergeMap(IQc.identity,e)}rTt.mergeAll=hQc});var E8e=H(nTt=>{"use strict";Object.defineProperty(nTt,"__esModule",{value:!0});nTt.concatAll=void 0;var mQc=rxe();function CQc(){return mQc.mergeAll(1)}nTt.concatAll=CQc});var S8e=H(iTt=>{"use strict";Object.defineProperty(iTt,"__esModule",{value:!0});iTt.concat=void 0;var _Qc=E8e(),yQc=QV(),bQc=hte();function EQc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(sTt,"__esModule",{value:!0});sTt.defer=void 0;var SQc=db(),vQc=ph();function BQc(e){return new SQc.Observable(function(t){vQc.innerFrom(e()).subscribe(t)})}sTt.defer=BQc});var A7i=H(oTt=>{"use strict";Object.defineProperty(oTt,"__esModule",{value:!0});oTt.connectable=void 0;var wQc=cx(),TQc=db(),RQc=v8e(),NQc={connector:function(){return new wQc.Subject},resetOnDisconnect:!0};function DQc(e,t){t===void 0&&(t=NQc);var r=null,n=t.connector,a=t.resetOnDisconnect,o=a===void 0?!0:a,l=n(),A=new TQc.Observable(function(f){return l.subscribe(f)});return A.connect=function(){return(!r||r.closed)&&(r=RQc.defer(function(){return e}).subscribe(l),o&&r.add(function(){return l=n()})),r},A}oTt.connectable=DQc});var d7i=H(aTt=>{"use strict";Object.defineProperty(aTt,"__esModule",{value:!0});aTt.forkJoin=void 0;var kQc=db(),xQc=iPr(),GQc=ph(),FQc=QV(),ZQc=yd(),LQc=Vle(),VQc=sPr();function WQc(){for(var e=[],t=0;t{"use strict";var OQc=nxe&&nxe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o};Object.defineProperty(nxe,"__esModule",{value:!0});nxe.fromEvent=void 0;var PQc=ph(),MQc=db(),HQc=aj(),YQc=Iwt(),D_e=By(),QQc=Vle(),XQc=["addListener","removeListener"],JQc=["addEventListener","removeEventListener"],UQc=["on","off"];function oPr(e,t,r,n){if(D_e.isFunction(r)&&(n=r,r=void 0),n)return oPr(e,t,r).pipe(QQc.mapOneOrManyArgs(n));var a=OQc(zQc(e)?JQc.map(function(A){return function(f){return e[A](t,f,r)}}):KQc(e)?XQc.map(p7i(e,t)):jQc(e)?UQc.map(p7i(e,t)):[],2),o=a[0],l=a[1];if(!o&&YQc.isArrayLike(e))return HQc.mergeMap(function(A){return oPr(A,t,r)})(PQc.innerFrom(e));if(!o)throw new TypeError("Invalid event target");return new MQc.Observable(function(A){var f=function(){for(var I=[],C=0;C{"use strict";Object.defineProperty(cTt,"__esModule",{value:!0});cTt.fromEventPattern=void 0;var qQc=db(),$Qc=By(),eXc=Vle();function I7i(e,t,r){return r?I7i(e,t).pipe(eXc.mapOneOrManyArgs(r)):new qQc.Observable(function(n){var a=function(){for(var l=[],A=0;A{"use strict";var tXc=ixe&&ixe.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]{"use strict";Object.defineProperty(lTt,"__esModule",{value:!0});lTt.iif=void 0;var oXc=v8e();function aXc(e,t,r){return oXc.defer(function(){return e()?t:r})}lTt.iif=aXc});var Ole=H(uTt=>{"use strict";Object.defineProperty(uTt,"__esModule",{value:!0});uTt.timer=void 0;var cXc=db(),lXc=YV(),uXc=y8e(),gXc=Xwt();function AXc(e,t,r){e===void 0&&(e=0),r===void 0&&(r=lXc.async);var n=-1;return t!=null&&(uXc.isScheduler(t)?r=t:n=t),new cXc.Observable(function(a){var o=gXc.isValidDate(e)?+e-r.now():e;o<0&&(o=0);var l=0;return r.schedule(function(){a.closed||(a.next(l++),0<=n?this.schedule(void 0,n):a.complete())},o)})}uTt.timer=AXc});var aPr=H(gTt=>{"use strict";Object.defineProperty(gTt,"__esModule",{value:!0});gTt.interval=void 0;var dXc=YV(),pXc=Ole();function fXc(e,t){return e===void 0&&(e=0),t===void 0&&(t=dXc.asyncScheduler),e<0&&(e=0),pXc.timer(e,e,t)}gTt.interval=fXc});var b7i=H(ATt=>{"use strict";Object.defineProperty(ATt,"__esModule",{value:!0});ATt.merge=void 0;var IXc=rxe(),hXc=ph(),mXc=O4(),y7i=QV(),CXc=hte();function _Xc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(k_e,"__esModule",{value:!0});k_e.never=k_e.NEVER=void 0;var yXc=db(),bXc=ox();k_e.NEVER=new yXc.Observable(bXc.noop);function EXc(){return k_e.NEVER}k_e.never=EXc});var Ple=H(dTt=>{"use strict";Object.defineProperty(dTt,"__esModule",{value:!0});dTt.argsOrArgArray=void 0;var SXc=Array.isArray;function vXc(e){return e.length===1&&SXc(e[0])?e[0]:e}dTt.argsOrArgArray=vXc});var lPr=H(pTt=>{"use strict";Object.defineProperty(pTt,"__esModule",{value:!0});pTt.onErrorResumeNext=void 0;var BXc=db(),wXc=Ple(),TXc=yd(),E7i=ox(),RXc=ph();function NXc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(fTt,"__esModule",{value:!0});fTt.pairs=void 0;var DXc=hte();function kXc(e,t){return DXc.from(Object.entries(e),t)}fTt.pairs=kXc});var uPr=H(ITt=>{"use strict";Object.defineProperty(ITt,"__esModule",{value:!0});ITt.not=void 0;function xXc(e,t){return function(r,n){return!e.call(t,r,n)}}ITt.not=xXc});var _te=H(hTt=>{"use strict";Object.defineProperty(hTt,"__esModule",{value:!0});hTt.filter=void 0;var GXc=$g(),FXc=yd();function ZXc(e,t){return GXc.operate(function(r,n){var a=0;r.subscribe(FXc.createOperatorSubscriber(n,function(o){return e.call(t,o,a++)&&n.next(o)}))})}hTt.filter=ZXc});var w7i=H(mTt=>{"use strict";Object.defineProperty(mTt,"__esModule",{value:!0});mTt.partition=void 0;var LXc=uPr(),v7i=_te(),B7i=ph();function VXc(e,t,r){return[v7i.filter(t,r)(B7i.innerFrom(e)),v7i.filter(LXc.not(t,r))(B7i.innerFrom(e))]}mTt.partition=VXc});var gPr=H(sxe=>{"use strict";Object.defineProperty(sxe,"__esModule",{value:!0});sxe.raceInit=sxe.race=void 0;var WXc=db(),T7i=ph(),OXc=Ple(),PXc=yd();function MXc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(CTt,"__esModule",{value:!0});CTt.range=void 0;var HXc=db(),YXc=O4();function QXc(e,t,r){if(t==null&&(t=e,e=0),t<=0)return YXc.EMPTY;var n=t+e;return new HXc.Observable(r?function(a){var o=e;return r.schedule(function(){o{"use strict";Object.defineProperty(_Tt,"__esModule",{value:!0});_Tt.using=void 0;var XXc=db(),JXc=ph(),UXc=O4();function KXc(e,t){return new XXc.Observable(function(r){var n=e(),a=t(n),o=a?JXc.innerFrom(a):UXc.EMPTY;return o.subscribe(r),function(){n&&n.unsubscribe()}})}_Tt.using=KXc});var yTt=H(Mle=>{"use strict";var jXc=Mle&&Mle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},zXc=Mle&&Mle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(k7i,"__esModule",{value:!0})});var ETt=H(bTt=>{"use strict";Object.defineProperty(bTt,"__esModule",{value:!0});bTt.audit=void 0;var s4c=$g(),o4c=ph(),G7i=yd();function a4c(e){return s4c.operate(function(t,r){var n=!1,a=null,o=null,l=!1,A=function(){if(o?.unsubscribe(),o=null,n){n=!1;var I=a;a=null,r.next(I)}l&&r.complete()},f=function(){o=null,l&&r.complete()};t.subscribe(G7i.createOperatorSubscriber(r,function(I){n=!0,a=I,o||o4c.innerFrom(e(I)).subscribe(o=G7i.createOperatorSubscriber(r,A,f))},function(){l=!0,(!n||!o||o.closed)&&r.complete()}))})}bTt.audit=a4c});var APr=H(STt=>{"use strict";Object.defineProperty(STt,"__esModule",{value:!0});STt.auditTime=void 0;var c4c=YV(),l4c=ETt(),u4c=Ole();function g4c(e,t){return t===void 0&&(t=c4c.asyncScheduler),l4c.audit(function(){return u4c.timer(e,t)})}STt.auditTime=g4c});var dPr=H(vTt=>{"use strict";Object.defineProperty(vTt,"__esModule",{value:!0});vTt.buffer=void 0;var A4c=$g(),d4c=ox(),F7i=yd(),p4c=ph();function f4c(e){return A4c.operate(function(t,r){var n=[];return t.subscribe(F7i.createOperatorSubscriber(r,function(a){return n.push(a)},function(){r.next(n),r.complete()})),p4c.innerFrom(e).subscribe(F7i.createOperatorSubscriber(r,function(){var a=n;n=[],r.next(a)},d4c.noop)),function(){n=null}})}vTt.buffer=f4c});var fPr=H(oxe=>{"use strict";var pPr=oxe&&oxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(oxe,"__esModule",{value:!0});oxe.bufferCount=void 0;var I4c=$g(),h4c=yd(),m4c=fte();function C4c(e,t){return t===void 0&&(t=null),t=t??e,I4c.operate(function(r,n){var a=[],o=0;r.subscribe(h4c.createOperatorSubscriber(n,function(l){var A,f,I,C,b=null;o++%t===0&&a.push([]);try{for(var E=pPr(a),N=E.next();!N.done;N=E.next()){var B=N.value;B.push(l),e<=B.length&&(b=b??[],b.push(B))}}catch(J){A={error:J}}finally{try{N&&!N.done&&(f=E.return)&&f.call(E)}finally{if(A)throw A.error}}if(b)try{for(var F=pPr(b),Q=F.next();!Q.done;Q=F.next()){var B=Q.value;m4c.arrRemove(a,B),n.next(B)}}catch(J){I={error:J}}finally{try{Q&&!Q.done&&(C=F.return)&&C.call(F)}finally{if(I)throw I.error}}},function(){var l,A;try{for(var f=pPr(a),I=f.next();!I.done;I=f.next()){var C=I.value;n.next(C)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}n.complete()},void 0,function(){a=null}))})}oxe.bufferCount=C4c});var IPr=H(axe=>{"use strict";var _4c=axe&&axe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(axe,"__esModule",{value:!0});axe.bufferTime=void 0;var y4c=ZP(),b4c=$g(),E4c=yd(),S4c=fte(),v4c=YV(),B4c=QV(),Z7i=Ite();function w4c(e){for(var t,r,n=[],a=1;a=0?Z7i.executeSchedule(I,o,N,l,!0):b=!0,N();var B=E4c.createOperatorSubscriber(I,function(F){var Q,J,ae=C.slice();try{for(var ne=_4c(ae),ce=ne.next();!ce.done;ce=ne.next()){var fe=ce.value,ue=fe.buffer;ue.push(F),A<=ue.length&&E(fe)}}catch(de){Q={error:de}}finally{try{ce&&!ce.done&&(J=ne.return)&&J.call(ne)}finally{if(Q)throw Q.error}}},function(){for(;C?.length;)I.next(C.shift().buffer);B?.unsubscribe(),I.complete(),I.unsubscribe()},void 0,function(){return C=null});f.subscribe(B)})}axe.bufferTime=w4c});var mPr=H(cxe=>{"use strict";var T4c=cxe&&cxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(cxe,"__esModule",{value:!0});cxe.bufferToggle=void 0;var R4c=ZP(),N4c=$g(),L7i=ph(),hPr=yd(),V7i=ox(),D4c=fte();function k4c(e,t){return N4c.operate(function(r,n){var a=[];L7i.innerFrom(e).subscribe(hPr.createOperatorSubscriber(n,function(o){var l=[];a.push(l);var A=new R4c.Subscription,f=function(){D4c.arrRemove(a,l),n.next(l),A.unsubscribe()};A.add(L7i.innerFrom(t(o)).subscribe(hPr.createOperatorSubscriber(n,f,V7i.noop)))},V7i.noop)),r.subscribe(hPr.createOperatorSubscriber(n,function(o){var l,A;try{for(var f=T4c(a),I=f.next();!I.done;I=f.next()){var C=I.value;C.push(o)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}},function(){for(;a.length>0;)n.next(a.shift());n.complete()}))})}cxe.bufferToggle=k4c});var CPr=H(BTt=>{"use strict";Object.defineProperty(BTt,"__esModule",{value:!0});BTt.bufferWhen=void 0;var x4c=$g(),G4c=ox(),W7i=yd(),F4c=ph();function Z4c(e){return x4c.operate(function(t,r){var n=null,a=null,o=function(){a?.unsubscribe();var l=n;n=[],l&&r.next(l),F4c.innerFrom(e()).subscribe(a=W7i.createOperatorSubscriber(r,o,G4c.noop))};o(),t.subscribe(W7i.createOperatorSubscriber(r,function(l){return n?.push(l)},function(){n&&r.next(n),r.complete()},void 0,function(){return n=a=null}))})}BTt.bufferWhen=Z4c});var _Pr=H(wTt=>{"use strict";Object.defineProperty(wTt,"__esModule",{value:!0});wTt.catchError=void 0;var L4c=ph(),V4c=yd(),W4c=$g();function O7i(e){return W4c.operate(function(t,r){var n=null,a=!1,o;n=t.subscribe(V4c.createOperatorSubscriber(r,void 0,void 0,function(l){o=L4c.innerFrom(e(l,O7i(e)(t))),n?(n.unsubscribe(),n=null,o.subscribe(r)):a=!0})),a&&(n.unsubscribe(),n=null,o.subscribe(r))})}wTt.catchError=O7i});var yPr=H(TTt=>{"use strict";Object.defineProperty(TTt,"__esModule",{value:!0});TTt.scanInternals=void 0;var O4c=yd();function P4c(e,t,r,n,a){return function(o,l){var A=r,f=t,I=0;o.subscribe(O4c.createOperatorSubscriber(l,function(C){var b=I++;f=A?e(f,C,b):(A=!0,C),n&&l.next(f)},a&&function(){A&&l.next(f),l.complete()}))}}TTt.scanInternals=P4c});var x_e=H(RTt=>{"use strict";Object.defineProperty(RTt,"__esModule",{value:!0});RTt.reduce=void 0;var M4c=yPr(),H4c=$g();function Y4c(e,t){return H4c.operate(M4c.scanInternals(e,t,arguments.length>=2,!1,!0))}RTt.reduce=Y4c});var DTt=H(NTt=>{"use strict";Object.defineProperty(NTt,"__esModule",{value:!0});NTt.toArray=void 0;var Q4c=x_e(),X4c=$g(),J4c=function(e,t){return e.push(t),e};function U4c(){return X4c.operate(function(e,t){Q4c.reduce(J4c,[])(e).subscribe(t)})}NTt.toArray=U4c});var bPr=H(kTt=>{"use strict";Object.defineProperty(kTt,"__esModule",{value:!0});kTt.joinAllInternals=void 0;var K4c=ax(),j4c=Vle(),z4c=h8e(),q4c=aj(),$4c=DTt();function eJc(e,t){return z4c.pipe($4c.toArray(),q4c.mergeMap(function(r){return e(r)}),t?j4c.mapOneOrManyArgs(t):K4c.identity)}kTt.joinAllInternals=eJc});var GTt=H(xTt=>{"use strict";Object.defineProperty(xTt,"__esModule",{value:!0});xTt.combineLatestAll=void 0;var tJc=qwt(),rJc=bPr();function nJc(e){return rJc.joinAllInternals(tJc.combineLatest,e)}xTt.combineLatestAll=nJc});var EPr=H(FTt=>{"use strict";Object.defineProperty(FTt,"__esModule",{value:!0});FTt.combineAll=void 0;var iJc=GTt();FTt.combineAll=iJc.combineLatestAll});var SPr=H(Hle=>{"use strict";var P7i=Hle&&Hle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},M7i=Hle&&Hle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var gJc=Yle&&Yle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},AJc=Yle&&Yle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ZTt,"__esModule",{value:!0});ZTt.concatMap=void 0;var Y7i=aj(),fJc=By();function IJc(e,t){return fJc.isFunction(t)?Y7i.mergeMap(e,t,1):Y7i.mergeMap(e,1)}ZTt.concatMap=IJc});var BPr=H(VTt=>{"use strict";Object.defineProperty(VTt,"__esModule",{value:!0});VTt.concatMapTo=void 0;var Q7i=LTt(),hJc=By();function mJc(e,t){return hJc.isFunction(t)?Q7i.concatMap(function(){return e},t):Q7i.concatMap(function(){return e})}VTt.concatMapTo=mJc});var wPr=H(Qle=>{"use strict";var CJc=Qle&&Qle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},_Jc=Qle&&Qle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var BJc=Xle&&Xle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},wJc=Xle&&Xle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(WTt,"__esModule",{value:!0});WTt.fromSubscribable=void 0;var NJc=db();function DJc(e){return new NJc.Observable(function(t){return e.subscribe(t)})}WTt.fromSubscribable=DJc});var B8e=H(OTt=>{"use strict";Object.defineProperty(OTt,"__esModule",{value:!0});OTt.connect=void 0;var kJc=cx(),xJc=ph(),GJc=$g(),FJc=X7i(),ZJc={connector:function(){return new kJc.Subject}};function LJc(e,t){t===void 0&&(t=ZJc);var r=t.connector;return GJc.operate(function(n,a){var o=r();xJc.innerFrom(e(FJc.fromSubscribable(o))).subscribe(a),a.add(n.subscribe(o))})}OTt.connect=LJc});var RPr=H(PTt=>{"use strict";Object.defineProperty(PTt,"__esModule",{value:!0});PTt.count=void 0;var VJc=x_e();function WJc(e){return VJc.reduce(function(t,r,n){return!e||e(r,n)?t+1:t},0)}PTt.count=WJc});var NPr=H(MTt=>{"use strict";Object.defineProperty(MTt,"__esModule",{value:!0});MTt.debounce=void 0;var OJc=$g(),PJc=ox(),J7i=yd(),MJc=ph();function HJc(e){return OJc.operate(function(t,r){var n=!1,a=null,o=null,l=function(){if(o?.unsubscribe(),o=null,n){n=!1;var A=a;a=null,r.next(A)}};t.subscribe(J7i.createOperatorSubscriber(r,function(A){o?.unsubscribe(),n=!0,a=A,o=J7i.createOperatorSubscriber(r,l,PJc.noop),MJc.innerFrom(e(A)).subscribe(o)},function(){l(),r.complete()},void 0,function(){a=o=null}))})}MTt.debounce=HJc});var DPr=H(HTt=>{"use strict";Object.defineProperty(HTt,"__esModule",{value:!0});HTt.debounceTime=void 0;var YJc=YV(),QJc=$g(),XJc=yd();function JJc(e,t){return t===void 0&&(t=YJc.asyncScheduler),QJc.operate(function(r,n){var a=null,o=null,l=null,A=function(){if(a){a.unsubscribe(),a=null;var I=o;o=null,n.next(I)}};function f(){var I=l+e,C=t.now();if(C{"use strict";Object.defineProperty(YTt,"__esModule",{value:!0});YTt.defaultIfEmpty=void 0;var UJc=$g(),KJc=yd();function jJc(e){return UJc.operate(function(t,r){var n=!1;t.subscribe(KJc.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){n||r.next(e),r.complete()}))})}YTt.defaultIfEmpty=jJc});var uxe=H(QTt=>{"use strict";Object.defineProperty(QTt,"__esModule",{value:!0});QTt.take=void 0;var zJc=O4(),qJc=$g(),$Jc=yd();function eUc(e){return e<=0?function(){return zJc.EMPTY}:qJc.operate(function(t,r){var n=0;t.subscribe($Jc.createOperatorSubscriber(r,function(a){++n<=e&&(r.next(a),e<=n&&r.complete())}))})}QTt.take=eUc});var JTt=H(XTt=>{"use strict";Object.defineProperty(XTt,"__esModule",{value:!0});XTt.ignoreElements=void 0;var tUc=$g(),rUc=yd(),nUc=ox();function iUc(){return tUc.operate(function(e,t){e.subscribe(rUc.createOperatorSubscriber(t,nUc.noop))})}XTt.ignoreElements=iUc});var KTt=H(UTt=>{"use strict";Object.defineProperty(UTt,"__esModule",{value:!0});UTt.mapTo=void 0;var sUc=Cte();function oUc(e){return sUc.map(function(){return e})}UTt.mapTo=oUc});var zTt=H(jTt=>{"use strict";Object.defineProperty(jTt,"__esModule",{value:!0});jTt.delayWhen=void 0;var aUc=S8e(),U7i=uxe(),cUc=JTt(),lUc=KTt(),uUc=aj(),gUc=ph();function K7i(e,t){return t?function(r){return aUc.concat(t.pipe(U7i.take(1),cUc.ignoreElements()),r.pipe(K7i(e)))}:uUc.mergeMap(function(r,n){return gUc.innerFrom(e(r,n)).pipe(U7i.take(1),lUc.mapTo(r))})}jTt.delayWhen=K7i});var kPr=H(qTt=>{"use strict";Object.defineProperty(qTt,"__esModule",{value:!0});qTt.delay=void 0;var AUc=YV(),dUc=zTt(),pUc=Ole();function fUc(e,t){t===void 0&&(t=AUc.asyncScheduler);var r=pUc.timer(e,t);return dUc.delayWhen(function(){return r})}qTt.delay=fUc});var xPr=H($Tt=>{"use strict";Object.defineProperty($Tt,"__esModule",{value:!0});$Tt.dematerialize=void 0;var IUc=Lwt(),hUc=$g(),mUc=yd();function CUc(){return hUc.operate(function(e,t){e.subscribe(mUc.createOperatorSubscriber(t,function(r){return IUc.observeNotification(r,t)}))})}$Tt.dematerialize=CUc});var GPr=H(eRt=>{"use strict";Object.defineProperty(eRt,"__esModule",{value:!0});eRt.distinct=void 0;var _Uc=$g(),j7i=yd(),yUc=ox(),bUc=ph();function EUc(e,t){return _Uc.operate(function(r,n){var a=new Set;r.subscribe(j7i.createOperatorSubscriber(n,function(o){var l=e?e(o):o;a.has(l)||(a.add(l),n.next(o))})),t&&bUc.innerFrom(t).subscribe(j7i.createOperatorSubscriber(n,function(){return a.clear()},yUc.noop))})}eRt.distinct=EUc});var rRt=H(tRt=>{"use strict";Object.defineProperty(tRt,"__esModule",{value:!0});tRt.distinctUntilChanged=void 0;var SUc=ax(),vUc=$g(),BUc=yd();function wUc(e,t){return t===void 0&&(t=SUc.identity),e=e??TUc,vUc.operate(function(r,n){var a,o=!0;r.subscribe(BUc.createOperatorSubscriber(n,function(l){var A=t(l);(o||!e(a,A))&&(o=!1,a=A,n.next(l))}))})}tRt.distinctUntilChanged=wUc;function TUc(e,t){return e===t}});var FPr=H(nRt=>{"use strict";Object.defineProperty(nRt,"__esModule",{value:!0});nRt.distinctUntilKeyChanged=void 0;var RUc=rRt();function NUc(e,t){return RUc.distinctUntilChanged(function(r,n){return t?t(r[e],n[e]):r[e]===n[e]})}nRt.distinctUntilKeyChanged=NUc});var gxe=H(iRt=>{"use strict";Object.defineProperty(iRt,"__esModule",{value:!0});iRt.throwIfEmpty=void 0;var DUc=Zle(),kUc=$g(),xUc=yd();function GUc(e){return e===void 0&&(e=FUc),kUc.operate(function(t,r){var n=!1;t.subscribe(xUc.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){return n?r.complete():r.error(e())}))})}iRt.throwIfEmpty=GUc;function FUc(){return new DUc.EmptyError}});var ZPr=H(sRt=>{"use strict";Object.defineProperty(sRt,"__esModule",{value:!0});sRt.elementAt=void 0;var z7i=$Or(),ZUc=_te(),LUc=gxe(),VUc=lxe(),WUc=uxe();function OUc(e,t){if(e<0)throw new z7i.ArgumentOutOfRangeError;var r=arguments.length>=2;return function(n){return n.pipe(ZUc.filter(function(a,o){return o===e}),WUc.take(1),r?VUc.defaultIfEmpty(t):LUc.throwIfEmpty(function(){return new z7i.ArgumentOutOfRangeError}))}}sRt.elementAt=OUc});var LPr=H(Jle=>{"use strict";var PUc=Jle&&Jle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},MUc=Jle&&Jle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(oRt,"__esModule",{value:!0});oRt.every=void 0;var XUc=$g(),JUc=yd();function UUc(e,t){return XUc.operate(function(r,n){var a=0;r.subscribe(JUc.createOperatorSubscriber(n,function(o){e.call(t,o,a++,r)||(n.next(!1),n.complete())},function(){n.next(!0),n.complete()}))})}oRt.every=UUc});var cRt=H(aRt=>{"use strict";Object.defineProperty(aRt,"__esModule",{value:!0});aRt.exhaustMap=void 0;var KUc=Cte(),q7i=ph(),jUc=$g(),$7i=yd();function ezi(e,t){return t?function(r){return r.pipe(ezi(function(n,a){return q7i.innerFrom(e(n,a)).pipe(KUc.map(function(o,l){return t(n,o,a,l)}))}))}:jUc.operate(function(r,n){var a=0,o=null,l=!1;r.subscribe($7i.createOperatorSubscriber(n,function(A){o||(o=$7i.createOperatorSubscriber(n,void 0,function(){o=null,l&&n.complete()}),q7i.innerFrom(e(A,a++)).subscribe(o))},function(){l=!0,!o&&n.complete()}))})}aRt.exhaustMap=ezi});var uRt=H(lRt=>{"use strict";Object.defineProperty(lRt,"__esModule",{value:!0});lRt.exhaustAll=void 0;var zUc=cRt(),qUc=ax();function $Uc(){return zUc.exhaustMap(qUc.identity)}lRt.exhaustAll=$Uc});var WPr=H(gRt=>{"use strict";Object.defineProperty(gRt,"__esModule",{value:!0});gRt.exhaust=void 0;var eKc=uRt();gRt.exhaust=eKc.exhaustAll});var OPr=H(ARt=>{"use strict";Object.defineProperty(ARt,"__esModule",{value:!0});ARt.expand=void 0;var tKc=$g(),rKc=eTt();function nKc(e,t,r){return t===void 0&&(t=1/0),t=(t||0)<1?1/0:t,tKc.operate(function(n,a){return rKc.mergeInternals(n,a,e,t,void 0,!0,r)})}ARt.expand=nKc});var PPr=H(dRt=>{"use strict";Object.defineProperty(dRt,"__esModule",{value:!0});dRt.finalize=void 0;var iKc=$g();function sKc(e){return iKc.operate(function(t,r){try{t.subscribe(r)}finally{r.add(e)}})}dRt.finalize=sKc});var pRt=H(Axe=>{"use strict";Object.defineProperty(Axe,"__esModule",{value:!0});Axe.createFind=Axe.find=void 0;var oKc=$g(),aKc=yd();function cKc(e,t){return oKc.operate(tzi(e,t,"value"))}Axe.find=cKc;function tzi(e,t,r){var n=r==="index";return function(a,o){var l=0;a.subscribe(aKc.createOperatorSubscriber(o,function(A){var f=l++;e.call(t,A,f,a)&&(o.next(n?f:A),o.complete())},function(){o.next(n?-1:void 0),o.complete()}))}}Axe.createFind=tzi});var MPr=H(fRt=>{"use strict";Object.defineProperty(fRt,"__esModule",{value:!0});fRt.findIndex=void 0;var lKc=$g(),uKc=pRt();function gKc(e,t){return lKc.operate(uKc.createFind(e,t,"index"))}fRt.findIndex=gKc});var HPr=H(IRt=>{"use strict";Object.defineProperty(IRt,"__esModule",{value:!0});IRt.first=void 0;var AKc=Zle(),dKc=_te(),pKc=uxe(),fKc=lxe(),IKc=gxe(),hKc=ax();function mKc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?dKc.filter(function(a,o){return e(a,o,n)}):hKc.identity,pKc.take(1),r?fKc.defaultIfEmpty(t):IKc.throwIfEmpty(function(){return new AKc.EmptyError}))}}IRt.first=mKc});var YPr=H(hRt=>{"use strict";Object.defineProperty(hRt,"__esModule",{value:!0});hRt.groupBy=void 0;var CKc=db(),_Kc=ph(),yKc=cx(),bKc=$g(),rzi=yd();function EKc(e,t,r,n){return bKc.operate(function(a,o){var l;!t||typeof t=="function"?l=t:(r=t.duration,l=t.element,n=t.connector);var A=new Map,f=function(B){A.forEach(B),B(o)},I=function(B){return f(function(F){return F.error(B)})},C=0,b=!1,E=new rzi.OperatorSubscriber(o,function(B){try{var F=e(B),Q=A.get(F);if(!Q){A.set(F,Q=n?n():new yKc.Subject);var J=N(F,Q);if(o.next(J),r){var ae=rzi.createOperatorSubscriber(Q,function(){Q.complete(),ae?.unsubscribe()},void 0,void 0,function(){return A.delete(F)});E.add(_Kc.innerFrom(r(J)).subscribe(ae))}}Q.next(l?l(B):B)}catch(ne){I(ne)}},function(){return f(function(B){return B.complete()})},I,function(){return A.clear()},function(){return b=!0,C===0});a.subscribe(E);function N(B,F){var Q=new CKc.Observable(function(J){C++;var ae=F.subscribe(J);return function(){ae.unsubscribe(),--C===0&&b&&E.unsubscribe()}});return Q.key=B,Q}})}hRt.groupBy=EKc});var QPr=H(mRt=>{"use strict";Object.defineProperty(mRt,"__esModule",{value:!0});mRt.isEmpty=void 0;var SKc=$g(),vKc=yd();function BKc(){return SKc.operate(function(e,t){e.subscribe(vKc.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}mRt.isEmpty=BKc});var CRt=H(dxe=>{"use strict";var wKc=dxe&&dxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(dxe,"__esModule",{value:!0});dxe.takeLast=void 0;var TKc=O4(),RKc=$g(),NKc=yd();function DKc(e){return e<=0?function(){return TKc.EMPTY}:RKc.operate(function(t,r){var n=[];t.subscribe(NKc.createOperatorSubscriber(r,function(a){n.push(a),e{"use strict";Object.defineProperty(_Rt,"__esModule",{value:!0});_Rt.last=void 0;var kKc=Zle(),xKc=_te(),GKc=CRt(),FKc=gxe(),ZKc=lxe(),LKc=ax();function VKc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?xKc.filter(function(a,o){return e(a,o,n)}):LKc.identity,GKc.takeLast(1),r?ZKc.defaultIfEmpty(t):FKc.throwIfEmpty(function(){return new kKc.EmptyError}))}}_Rt.last=VKc});var UPr=H(yRt=>{"use strict";Object.defineProperty(yRt,"__esModule",{value:!0});yRt.materialize=void 0;var JPr=Lwt(),WKc=$g(),OKc=yd();function PKc(){return WKc.operate(function(e,t){e.subscribe(OKc.createOperatorSubscriber(t,function(r){t.next(JPr.Notification.createNext(r))},function(){t.next(JPr.Notification.createComplete()),t.complete()},function(r){t.next(JPr.Notification.createError(r)),t.complete()}))})}yRt.materialize=PKc});var KPr=H(bRt=>{"use strict";Object.defineProperty(bRt,"__esModule",{value:!0});bRt.max=void 0;var MKc=x_e(),HKc=By();function YKc(e){return MKc.reduce(HKc.isFunction(e)?function(t,r){return e(t,r)>0?t:r}:function(t,r){return t>r?t:r})}bRt.max=YKc});var jPr=H(ERt=>{"use strict";Object.defineProperty(ERt,"__esModule",{value:!0});ERt.flatMap=void 0;var QKc=aj();ERt.flatMap=QKc.mergeMap});var zPr=H(SRt=>{"use strict";Object.defineProperty(SRt,"__esModule",{value:!0});SRt.mergeMapTo=void 0;var nzi=aj(),XKc=By();function JKc(e,t,r){return r===void 0&&(r=1/0),XKc.isFunction(t)?nzi.mergeMap(function(){return e},t,r):(typeof t=="number"&&(r=t),nzi.mergeMap(function(){return e},r))}SRt.mergeMapTo=JKc});var qPr=H(vRt=>{"use strict";Object.defineProperty(vRt,"__esModule",{value:!0});vRt.mergeScan=void 0;var UKc=$g(),KKc=eTt();function jKc(e,t,r){return r===void 0&&(r=1/0),UKc.operate(function(n,a){var o=t;return KKc.mergeInternals(n,a,function(l,A){return e(o,l,A)},r,function(l){o=l},!1,void 0,function(){return o=null})})}vRt.mergeScan=jKc});var $Pr=H(Ule=>{"use strict";var zKc=Ule&&Ule.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},qKc=Ule&&Ule.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var i8c=Kle&&Kle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},s8c=Kle&&Kle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(BRt,"__esModule",{value:!0});BRt.min=void 0;var c8c=x_e(),l8c=By();function u8c(e){return c8c.reduce(l8c.isFunction(e)?function(t,r){return e(t,r)<0?t:r}:function(t,r){return t{"use strict";Object.defineProperty(wRt,"__esModule",{value:!0});wRt.multicast=void 0;var g8c=m8e(),szi=By(),A8c=B8e();function d8c(e,t){var r=szi.isFunction(e)?e:function(){return e};return szi.isFunction(t)?A8c.connect(t,{connector:r}):function(n){return new g8c.ConnectableObservable(n,r)}}wRt.multicast=d8c});var r3r=H(cj=>{"use strict";var p8c=cj&&cj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},f8c=cj&&cj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(TRt,"__esModule",{value:!0});TRt.pairwise=void 0;var m8c=$g(),C8c=yd();function _8c(){return m8c.operate(function(e,t){var r,n=!1;e.subscribe(C8c.createOperatorSubscriber(t,function(a){var o=r;r=a,n&&t.next([o,a]),n=!0}))})}TRt.pairwise=_8c});var i3r=H(RRt=>{"use strict";Object.defineProperty(RRt,"__esModule",{value:!0});RRt.pluck=void 0;var y8c=Cte();function b8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(NRt,"__esModule",{value:!0});NRt.publish=void 0;var E8c=cx(),S8c=w8e(),v8c=B8e();function B8c(e){return e?function(t){return v8c.connect(e)(t)}:function(t){return S8c.multicast(new E8c.Subject)(t)}}NRt.publish=B8c});var o3r=H(DRt=>{"use strict";Object.defineProperty(DRt,"__esModule",{value:!0});DRt.publishBehavior=void 0;var w8c=ZOr(),T8c=m8e();function R8c(e){return function(t){var r=new w8c.BehaviorSubject(e);return new T8c.ConnectableObservable(t,function(){return r})}}DRt.publishBehavior=R8c});var a3r=H(kRt=>{"use strict";Object.defineProperty(kRt,"__esModule",{value:!0});kRt.publishLast=void 0;var N8c=gwt(),D8c=m8e();function k8c(){return function(e){var t=new N8c.AsyncSubject;return new D8c.ConnectableObservable(e,function(){return t})}}kRt.publishLast=k8c});var c3r=H(xRt=>{"use strict";Object.defineProperty(xRt,"__esModule",{value:!0});xRt.publishReplay=void 0;var x8c=uwt(),G8c=w8e(),azi=By();function F8c(e,t,r,n){r&&!azi.isFunction(r)&&(n=r);var a=azi.isFunction(r)?r:void 0;return function(o){return G8c.multicast(new x8c.ReplaySubject(e,t,n),a)(o)}}xRt.publishReplay=F8c});var GRt=H(jle=>{"use strict";var Z8c=jle&&jle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},L8c=jle&&jle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(FRt,"__esModule",{value:!0});FRt.repeat=void 0;var M8c=O4(),H8c=$g(),czi=yd(),Y8c=ph(),Q8c=Ole();function X8c(e){var t,r=1/0,n;return e!=null&&(typeof e=="object"?(t=e.count,r=t===void 0?1/0:t,n=e.delay):r=e),r<=0?function(){return M8c.EMPTY}:H8c.operate(function(a,o){var l=0,A,f=function(){if(A?.unsubscribe(),A=null,n!=null){var C=typeof n=="number"?Q8c.timer(n):Y8c.innerFrom(n(l)),b=czi.createOperatorSubscriber(o,function(){b.unsubscribe(),I()});C.subscribe(b)}else I()},I=function(){var C=!1;A=a.subscribe(czi.createOperatorSubscriber(o,void 0,function(){++l{"use strict";Object.defineProperty(ZRt,"__esModule",{value:!0});ZRt.repeatWhen=void 0;var J8c=ph(),U8c=cx(),K8c=$g(),lzi=yd();function j8c(e){return K8c.operate(function(t,r){var n,a=!1,o,l=!1,A=!1,f=function(){return A&&l&&(r.complete(),!0)},I=function(){return o||(o=new U8c.Subject,J8c.innerFrom(e(o)).subscribe(lzi.createOperatorSubscriber(r,function(){n?C():a=!0},function(){l=!0,f()}))),o},C=function(){A=!1,n=t.subscribe(lzi.createOperatorSubscriber(r,void 0,function(){A=!0,!f()&&I().next()})),a&&(n.unsubscribe(),n=null,a=!1,C())};C()})}ZRt.repeatWhen=j8c});var g3r=H(LRt=>{"use strict";Object.defineProperty(LRt,"__esModule",{value:!0});LRt.retry=void 0;var z8c=$g(),uzi=yd(),q8c=ax(),$8c=Ole(),e6c=ph();function t6c(e){e===void 0&&(e=1/0);var t;e&&typeof e=="object"?t=e:t={count:e};var r=t.count,n=r===void 0?1/0:r,a=t.delay,o=t.resetOnSuccess,l=o===void 0?!1:o;return n<=0?q8c.identity:z8c.operate(function(A,f){var I=0,C,b=function(){var E=!1;C=A.subscribe(uzi.createOperatorSubscriber(f,function(N){l&&(I=0),f.next(N)},void 0,function(N){if(I++{"use strict";Object.defineProperty(VRt,"__esModule",{value:!0});VRt.retryWhen=void 0;var r6c=ph(),n6c=cx(),i6c=$g(),gzi=yd();function s6c(e){return i6c.operate(function(t,r){var n,a=!1,o,l=function(){n=t.subscribe(gzi.createOperatorSubscriber(r,void 0,void 0,function(A){o||(o=new n6c.Subject,r6c.innerFrom(e(o)).subscribe(gzi.createOperatorSubscriber(r,function(){return n?l():a=!0}))),o&&o.next(A)})),a&&(n.unsubscribe(),n=null,a=!1,l())};l()})}VRt.retryWhen=s6c});var ORt=H(WRt=>{"use strict";Object.defineProperty(WRt,"__esModule",{value:!0});WRt.sample=void 0;var o6c=ph(),a6c=$g(),c6c=ox(),Azi=yd();function l6c(e){return a6c.operate(function(t,r){var n=!1,a=null;t.subscribe(Azi.createOperatorSubscriber(r,function(o){n=!0,a=o})),o6c.innerFrom(e).subscribe(Azi.createOperatorSubscriber(r,function(){if(n){n=!1;var o=a;a=null,r.next(o)}},c6c.noop))})}WRt.sample=l6c});var d3r=H(PRt=>{"use strict";Object.defineProperty(PRt,"__esModule",{value:!0});PRt.sampleTime=void 0;var u6c=YV(),g6c=ORt(),A6c=aPr();function d6c(e,t){return t===void 0&&(t=u6c.asyncScheduler),g6c.sample(A6c.interval(e,t))}PRt.sampleTime=d6c});var p3r=H(MRt=>{"use strict";Object.defineProperty(MRt,"__esModule",{value:!0});MRt.scan=void 0;var p6c=$g(),f6c=yPr();function I6c(e,t){return p6c.operate(f6c.scanInternals(e,t,arguments.length>=2,!0))}MRt.scan=I6c});var f3r=H(HRt=>{"use strict";Object.defineProperty(HRt,"__esModule",{value:!0});HRt.sequenceEqual=void 0;var h6c=$g(),m6c=yd(),C6c=ph();function _6c(e,t){return t===void 0&&(t=function(r,n){return r===n}),h6c.operate(function(r,n){var a=dzi(),o=dzi(),l=function(f){n.next(f),n.complete()},A=function(f,I){var C=m6c.createOperatorSubscriber(n,function(b){var E=I.buffer,N=I.complete;E.length===0?N?l(!1):f.buffer.push(b):!t(b,E.shift())&&l(!1)},function(){f.complete=!0;var b=I.complete,E=I.buffer;b&&l(E.length===0),C?.unsubscribe()});return C};r.subscribe(A(a,o)),C6c.innerFrom(e).subscribe(A(o,a))})}HRt.sequenceEqual=_6c;function dzi(){return{buffer:[],complete:!1}}});var YRt=H(zle=>{"use strict";var y6c=zle&&zle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},b6c=zle&&zle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r0&&(C=new fzi.SafeSubscriber({next:function(ue){return fe.next(ue)},error:function(ue){F=!0,Q(),b=I3r(J,a,ue),fe.error(ue)},complete:function(){B=!0,Q(),b=I3r(J,l),fe.complete()}}),pzi.innerFrom(ne).subscribe(C))})(I)}}zle.share=v6c;function I3r(e,t){for(var r=[],n=2;n{"use strict";Object.defineProperty(QRt,"__esModule",{value:!0});QRt.shareReplay=void 0;var B6c=uwt(),w6c=YRt();function T6c(e,t,r){var n,a,o,l,A=!1;return e&&typeof e=="object"?(n=e.bufferSize,l=n===void 0?1/0:n,a=e.windowTime,t=a===void 0?1/0:a,o=e.refCount,A=o===void 0?!1:o,r=e.scheduler):l=e??1/0,w6c.share({connector:function(){return new B6c.ReplaySubject(l,t,r)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:A})}QRt.shareReplay=T6c});var m3r=H(XRt=>{"use strict";Object.defineProperty(XRt,"__esModule",{value:!0});XRt.single=void 0;var R6c=Zle(),N6c=tPr(),D6c=ePr(),k6c=$g(),x6c=yd();function G6c(e){return k6c.operate(function(t,r){var n=!1,a,o=!1,l=0;t.subscribe(x6c.createOperatorSubscriber(r,function(A){o=!0,(!e||e(A,l++,t))&&(n&&r.error(new N6c.SequenceError("Too many matching values")),n=!0,a=A)},function(){n?(r.next(a),r.complete()):r.error(o?new D6c.NotFoundError("No matching values"):new R6c.EmptyError)}))})}XRt.single=G6c});var C3r=H(JRt=>{"use strict";Object.defineProperty(JRt,"__esModule",{value:!0});JRt.skip=void 0;var F6c=_te();function Z6c(e){return F6c.filter(function(t,r){return e<=r})}JRt.skip=Z6c});var _3r=H(URt=>{"use strict";Object.defineProperty(URt,"__esModule",{value:!0});URt.skipLast=void 0;var L6c=ax(),V6c=$g(),W6c=yd();function O6c(e){return e<=0?L6c.identity:V6c.operate(function(t,r){var n=new Array(e),a=0;return t.subscribe(W6c.createOperatorSubscriber(r,function(o){var l=a++;if(l{"use strict";Object.defineProperty(KRt,"__esModule",{value:!0});KRt.skipUntil=void 0;var P6c=$g(),Izi=yd(),M6c=ph(),H6c=ox();function Y6c(e){return P6c.operate(function(t,r){var n=!1,a=Izi.createOperatorSubscriber(r,function(){a?.unsubscribe(),n=!0},H6c.noop);M6c.innerFrom(e).subscribe(a),t.subscribe(Izi.createOperatorSubscriber(r,function(o){return n&&r.next(o)}))})}KRt.skipUntil=Y6c});var b3r=H(jRt=>{"use strict";Object.defineProperty(jRt,"__esModule",{value:!0});jRt.skipWhile=void 0;var Q6c=$g(),X6c=yd();function J6c(e){return Q6c.operate(function(t,r){var n=!1,a=0;t.subscribe(X6c.createOperatorSubscriber(r,function(o){return(n||(n=!e(o,a++)))&&r.next(o)}))})}jRt.skipWhile=J6c});var E3r=H(zRt=>{"use strict";Object.defineProperty(zRt,"__esModule",{value:!0});zRt.startWith=void 0;var hzi=S8e(),U6c=QV(),K6c=$g();function j6c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(qRt,"__esModule",{value:!0});qRt.switchMap=void 0;var z6c=ph(),q6c=$g(),mzi=yd();function $6c(e,t){return q6c.operate(function(r,n){var a=null,o=0,l=!1,A=function(){return l&&!a&&n.complete()};r.subscribe(mzi.createOperatorSubscriber(n,function(f){a?.unsubscribe();var I=0,C=o++;z6c.innerFrom(e(f,C)).subscribe(a=mzi.createOperatorSubscriber(n,function(b){return n.next(t?t(f,b,C,I++):b)},function(){a=null,A()}))},function(){l=!0,A()}))})}qRt.switchMap=$6c});var S3r=H($Rt=>{"use strict";Object.defineProperty($Rt,"__esModule",{value:!0});$Rt.switchAll=void 0;var ejc=pxe(),tjc=ax();function rjc(){return ejc.switchMap(tjc.identity)}$Rt.switchAll=rjc});var v3r=H(eNt=>{"use strict";Object.defineProperty(eNt,"__esModule",{value:!0});eNt.switchMapTo=void 0;var Czi=pxe(),njc=By();function ijc(e,t){return njc.isFunction(t)?Czi.switchMap(function(){return e},t):Czi.switchMap(function(){return e})}eNt.switchMapTo=ijc});var B3r=H(tNt=>{"use strict";Object.defineProperty(tNt,"__esModule",{value:!0});tNt.switchScan=void 0;var sjc=pxe(),ojc=$g();function ajc(e,t){return ojc.operate(function(r,n){var a=t;return sjc.switchMap(function(o,l){return e(a,o,l)},function(o,l){return a=l,l})(r).subscribe(n),function(){a=null}})}tNt.switchScan=ajc});var w3r=H(rNt=>{"use strict";Object.defineProperty(rNt,"__esModule",{value:!0});rNt.takeUntil=void 0;var cjc=$g(),ljc=yd(),ujc=ph(),gjc=ox();function Ajc(e){return cjc.operate(function(t,r){ujc.innerFrom(e).subscribe(ljc.createOperatorSubscriber(r,function(){return r.complete()},gjc.noop)),!r.closed&&t.subscribe(r)})}rNt.takeUntil=Ajc});var T3r=H(nNt=>{"use strict";Object.defineProperty(nNt,"__esModule",{value:!0});nNt.takeWhile=void 0;var djc=$g(),pjc=yd();function fjc(e,t){return t===void 0&&(t=!1),djc.operate(function(r,n){var a=0;r.subscribe(pjc.createOperatorSubscriber(n,function(o){var l=e(o,a++);(l||t)&&n.next(o),!l&&n.complete()}))})}nNt.takeWhile=fjc});var R3r=H(iNt=>{"use strict";Object.defineProperty(iNt,"__esModule",{value:!0});iNt.tap=void 0;var Ijc=By(),hjc=$g(),mjc=yd(),Cjc=ax();function _jc(e,t,r){var n=Ijc.isFunction(e)||t||r?{next:e,error:t,complete:r}:e;return n?hjc.operate(function(a,o){var l;(l=n.subscribe)===null||l===void 0||l.call(n);var A=!0;a.subscribe(mjc.createOperatorSubscriber(o,function(f){var I;(I=n.next)===null||I===void 0||I.call(n,f),o.next(f)},function(){var f;A=!1,(f=n.complete)===null||f===void 0||f.call(n),o.complete()},function(f){var I;A=!1,(I=n.error)===null||I===void 0||I.call(n,f),o.error(f)},function(){var f,I;A&&((f=n.unsubscribe)===null||f===void 0||f.call(n)),(I=n.finalize)===null||I===void 0||I.call(n)}))}):Cjc.identity}iNt.tap=_jc});var oNt=H(sNt=>{"use strict";Object.defineProperty(sNt,"__esModule",{value:!0});sNt.throttle=void 0;var yjc=$g(),_zi=yd(),bjc=ph();function Ejc(e,t){return yjc.operate(function(r,n){var a=t??{},o=a.leading,l=o===void 0?!0:o,A=a.trailing,f=A===void 0?!1:A,I=!1,C=null,b=null,E=!1,N=function(){b?.unsubscribe(),b=null,f&&(Q(),E&&n.complete())},B=function(){b=null,E&&n.complete()},F=function(J){return b=bjc.innerFrom(e(J)).subscribe(_zi.createOperatorSubscriber(n,N,B))},Q=function(){if(I){I=!1;var J=C;C=null,n.next(J),!E&&F(J)}};r.subscribe(_zi.createOperatorSubscriber(n,function(J){I=!0,C=J,!(b&&!b.closed)&&(l?Q():F(J))},function(){E=!0,!(f&&I&&b&&!b.closed)&&n.complete()}))})}sNt.throttle=Ejc});var N3r=H(aNt=>{"use strict";Object.defineProperty(aNt,"__esModule",{value:!0});aNt.throttleTime=void 0;var Sjc=YV(),vjc=oNt(),Bjc=Ole();function wjc(e,t,r){t===void 0&&(t=Sjc.asyncScheduler);var n=Bjc.timer(e,t);return vjc.throttle(function(){return n},r)}aNt.throttleTime=wjc});var D3r=H(fxe=>{"use strict";Object.defineProperty(fxe,"__esModule",{value:!0});fxe.TimeInterval=fxe.timeInterval=void 0;var Tjc=YV(),Rjc=$g(),Njc=yd();function Djc(e){return e===void 0&&(e=Tjc.asyncScheduler),Rjc.operate(function(t,r){var n=e.now();t.subscribe(Njc.createOperatorSubscriber(r,function(a){var o=e.now(),l=o-n;n=o,r.next(new yzi(a,l))}))})}fxe.timeInterval=Djc;var yzi=function(){function e(t,r){this.value=t,this.interval=r}return e}();fxe.TimeInterval=yzi});var k3r=H(cNt=>{"use strict";Object.defineProperty(cNt,"__esModule",{value:!0});cNt.timeoutWith=void 0;var kjc=YV(),xjc=Xwt(),Gjc=b8e();function Fjc(e,t,r){var n,a,o;if(r=r??kjc.async,xjc.isValidDate(e)?n=e:typeof e=="number"&&(a=e),t)o=function(){return t};else throw new TypeError("No observable provided to switch to");if(n==null&&a==null)throw new TypeError("No timeout provided.");return Gjc.timeout({first:n,each:a,scheduler:r,with:o})}cNt.timeoutWith=Fjc});var x3r=H(lNt=>{"use strict";Object.defineProperty(lNt,"__esModule",{value:!0});lNt.timestamp=void 0;var Zjc=lwt(),Ljc=Cte();function Vjc(e){return e===void 0&&(e=Zjc.dateTimestampProvider),Ljc.map(function(t){return{value:t,timestamp:e.now()}})}lNt.timestamp=Vjc});var G3r=H(uNt=>{"use strict";Object.defineProperty(uNt,"__esModule",{value:!0});uNt.window=void 0;var bzi=cx(),Wjc=$g(),Ezi=yd(),Ojc=ox(),Pjc=ph();function Mjc(e){return Wjc.operate(function(t,r){var n=new bzi.Subject;r.next(n.asObservable());var a=function(o){n.error(o),r.error(o)};return t.subscribe(Ezi.createOperatorSubscriber(r,function(o){return n?.next(o)},function(){n.complete(),r.complete()},a)),Pjc.innerFrom(e).subscribe(Ezi.createOperatorSubscriber(r,function(){n.complete(),r.next(n=new bzi.Subject)},Ojc.noop,a)),function(){n?.unsubscribe(),n=null}})}uNt.window=Mjc});var F3r=H(Ixe=>{"use strict";var Hjc=Ixe&&Ixe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Ixe,"__esModule",{value:!0});Ixe.windowCount=void 0;var Szi=cx(),Yjc=$g(),Qjc=yd();function Xjc(e,t){t===void 0&&(t=0);var r=t>0?t:e;return Yjc.operate(function(n,a){var o=[new Szi.Subject],l=[],A=0;a.next(o[0].asObservable()),n.subscribe(Qjc.createOperatorSubscriber(a,function(f){var I,C;try{for(var b=Hjc(o),E=b.next();!E.done;E=b.next()){var N=E.value;N.next(f)}}catch(Q){I={error:Q}}finally{try{E&&!E.done&&(C=b.return)&&C.call(b)}finally{if(I)throw I.error}}var B=A-e+1;if(B>=0&&B%r===0&&o.shift().complete(),++A%r===0){var F=new Szi.Subject;o.push(F),a.next(F.asObservable())}},function(){for(;o.length>0;)o.shift().complete();a.complete()},function(f){for(;o.length>0;)o.shift().error(f);a.error(f)},function(){l=null,o=null}))})}Ixe.windowCount=Xjc});var Z3r=H(gNt=>{"use strict";Object.defineProperty(gNt,"__esModule",{value:!0});gNt.windowTime=void 0;var Jjc=cx(),Ujc=YV(),Kjc=ZP(),jjc=$g(),zjc=yd(),qjc=fte(),$jc=QV(),vzi=Ite();function e7c(e){for(var t,r,n=[],a=1;a=0?vzi.executeSchedule(I,o,N,l,!0):b=!0,N();var B=function(Q){return C.slice().forEach(Q)},F=function(Q){B(function(J){var ae=J.window;return Q(ae)}),Q(I),I.unsubscribe()};return f.subscribe(zjc.createOperatorSubscriber(I,function(Q){B(function(J){J.window.next(Q),A<=++J.seen&&E(J)})},function(){return F(function(Q){return Q.complete()})},function(Q){return F(function(J){return J.error(Q)})})),function(){C=null}})}gNt.windowTime=e7c});var V3r=H(hxe=>{"use strict";var t7c=hxe&&hxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(hxe,"__esModule",{value:!0});hxe.windowToggle=void 0;var r7c=cx(),n7c=ZP(),i7c=$g(),Bzi=ph(),L3r=yd(),wzi=ox(),s7c=fte();function o7c(e,t){return i7c.operate(function(r,n){var a=[],o=function(l){for(;0{"use strict";Object.defineProperty(ANt,"__esModule",{value:!0});ANt.windowWhen=void 0;var a7c=cx(),c7c=$g(),Tzi=yd(),l7c=ph();function u7c(e){return c7c.operate(function(t,r){var n,a,o=function(A){n.error(A),r.error(A)},l=function(){a?.unsubscribe(),n?.complete(),n=new a7c.Subject,r.next(n.asObservable());var A;try{A=l7c.innerFrom(e())}catch(f){o(f);return}A.subscribe(a=Tzi.createOperatorSubscriber(r,l,l,o))};l(),t.subscribe(Tzi.createOperatorSubscriber(r,function(A){return n.next(A)},function(){n.complete(),r.complete()},o,function(){a?.unsubscribe(),n=null}))})}ANt.windowWhen=u7c});var O3r=H(qle=>{"use strict";var Rzi=qle&&qle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Nzi=qle&&qle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(dNt,"__esModule",{value:!0});dNt.zipAll=void 0;var h7c=yTt(),m7c=bPr();function C7c(e){return m7c.joinAllInternals(h7c.zip,e)}dNt.zipAll=C7c});var M3r=H($le=>{"use strict";var _7c=$le&&$le.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},y7c=$le&&$le.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var v7c=eue&&eue.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},B7c=eue&&eue.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var R7c=Cn&&Cn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),N7c=Cn&&Cn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&R7c(t,e,r)};Object.defineProperty(Cn,"__esModule",{value:!0});Cn.interval=Cn.iif=Cn.generate=Cn.fromEventPattern=Cn.fromEvent=Cn.from=Cn.forkJoin=Cn.empty=Cn.defer=Cn.connectable=Cn.concat=Cn.combineLatest=Cn.bindNodeCallback=Cn.bindCallback=Cn.UnsubscriptionError=Cn.TimeoutError=Cn.SequenceError=Cn.ObjectUnsubscribedError=Cn.NotFoundError=Cn.EmptyError=Cn.ArgumentOutOfRangeError=Cn.firstValueFrom=Cn.lastValueFrom=Cn.isObservable=Cn.identity=Cn.noop=Cn.pipe=Cn.NotificationKind=Cn.Notification=Cn.Subscriber=Cn.Subscription=Cn.Scheduler=Cn.VirtualAction=Cn.VirtualTimeScheduler=Cn.animationFrameScheduler=Cn.animationFrame=Cn.queueScheduler=Cn.queue=Cn.asyncScheduler=Cn.async=Cn.asapScheduler=Cn.asap=Cn.AsyncSubject=Cn.ReplaySubject=Cn.BehaviorSubject=Cn.Subject=Cn.animationFrames=Cn.observable=Cn.ConnectableObservable=Cn.Observable=void 0;Cn.filter=Cn.expand=Cn.exhaustMap=Cn.exhaustAll=Cn.exhaust=Cn.every=Cn.endWith=Cn.elementAt=Cn.distinctUntilKeyChanged=Cn.distinctUntilChanged=Cn.distinct=Cn.dematerialize=Cn.delayWhen=Cn.delay=Cn.defaultIfEmpty=Cn.debounceTime=Cn.debounce=Cn.count=Cn.connect=Cn.concatWith=Cn.concatMapTo=Cn.concatMap=Cn.concatAll=Cn.combineLatestWith=Cn.combineLatestAll=Cn.combineAll=Cn.catchError=Cn.bufferWhen=Cn.bufferToggle=Cn.bufferTime=Cn.bufferCount=Cn.buffer=Cn.auditTime=Cn.audit=Cn.config=Cn.NEVER=Cn.EMPTY=Cn.scheduled=Cn.zip=Cn.using=Cn.timer=Cn.throwError=Cn.range=Cn.race=Cn.partition=Cn.pairs=Cn.onErrorResumeNext=Cn.of=Cn.never=Cn.merge=void 0;Cn.switchMap=Cn.switchAll=Cn.subscribeOn=Cn.startWith=Cn.skipWhile=Cn.skipUntil=Cn.skipLast=Cn.skip=Cn.single=Cn.shareReplay=Cn.share=Cn.sequenceEqual=Cn.scan=Cn.sampleTime=Cn.sample=Cn.refCount=Cn.retryWhen=Cn.retry=Cn.repeatWhen=Cn.repeat=Cn.reduce=Cn.raceWith=Cn.publishReplay=Cn.publishLast=Cn.publishBehavior=Cn.publish=Cn.pluck=Cn.pairwise=Cn.onErrorResumeNextWith=Cn.observeOn=Cn.multicast=Cn.min=Cn.mergeWith=Cn.mergeScan=Cn.mergeMapTo=Cn.mergeMap=Cn.flatMap=Cn.mergeAll=Cn.max=Cn.materialize=Cn.mapTo=Cn.map=Cn.last=Cn.isEmpty=Cn.ignoreElements=Cn.groupBy=Cn.first=Cn.findIndex=Cn.find=Cn.finalize=void 0;Cn.zipWith=Cn.zipAll=Cn.withLatestFrom=Cn.windowWhen=Cn.windowToggle=Cn.windowTime=Cn.windowCount=Cn.window=Cn.toArray=Cn.timestamp=Cn.timeoutWith=Cn.timeout=Cn.timeInterval=Cn.throwIfEmpty=Cn.throttleTime=Cn.throttle=Cn.tap=Cn.takeWhile=Cn.takeUntil=Cn.takeLast=Cn.take=Cn.switchScan=Cn.switchMapTo=void 0;var D7c=db();Object.defineProperty(Cn,"Observable",{enumerable:!0,get:function(){return D7c.Observable}});var k7c=m8e();Object.defineProperty(Cn,"ConnectableObservable",{enumerable:!0,get:function(){return k7c.ConnectableObservable}});var x7c=I8e();Object.defineProperty(Cn,"observable",{enumerable:!0,get:function(){return x7c.observable}});var G7c=lji();Object.defineProperty(Cn,"animationFrames",{enumerable:!0,get:function(){return G7c.animationFrames}});var F7c=cx();Object.defineProperty(Cn,"Subject",{enumerable:!0,get:function(){return F7c.Subject}});var Z7c=ZOr();Object.defineProperty(Cn,"BehaviorSubject",{enumerable:!0,get:function(){return Z7c.BehaviorSubject}});var L7c=uwt();Object.defineProperty(Cn,"ReplaySubject",{enumerable:!0,get:function(){return L7c.ReplaySubject}});var V7c=gwt();Object.defineProperty(Cn,"AsyncSubject",{enumerable:!0,get:function(){return V7c.AsyncSubject}});var kzi=Bji();Object.defineProperty(Cn,"asap",{enumerable:!0,get:function(){return kzi.asap}});Object.defineProperty(Cn,"asapScheduler",{enumerable:!0,get:function(){return kzi.asapScheduler}});var xzi=YV();Object.defineProperty(Cn,"async",{enumerable:!0,get:function(){return xzi.async}});Object.defineProperty(Cn,"asyncScheduler",{enumerable:!0,get:function(){return xzi.asyncScheduler}});var Gzi=Rji();Object.defineProperty(Cn,"queue",{enumerable:!0,get:function(){return Gzi.queue}});Object.defineProperty(Cn,"queueScheduler",{enumerable:!0,get:function(){return Gzi.queueScheduler}});var Fzi=xji();Object.defineProperty(Cn,"animationFrame",{enumerable:!0,get:function(){return Fzi.animationFrame}});Object.defineProperty(Cn,"animationFrameScheduler",{enumerable:!0,get:function(){return Fzi.animationFrameScheduler}});var Zzi=Zji();Object.defineProperty(Cn,"VirtualTimeScheduler",{enumerable:!0,get:function(){return Zzi.VirtualTimeScheduler}});Object.defineProperty(Cn,"VirtualAction",{enumerable:!0,get:function(){return Zzi.VirtualAction}});var W7c=VOr();Object.defineProperty(Cn,"Scheduler",{enumerable:!0,get:function(){return W7c.Scheduler}});var O7c=ZP();Object.defineProperty(Cn,"Subscription",{enumerable:!0,get:function(){return O7c.Subscription}});var P7c=Dke();Object.defineProperty(Cn,"Subscriber",{enumerable:!0,get:function(){return P7c.Subscriber}});var Lzi=Lwt();Object.defineProperty(Cn,"Notification",{enumerable:!0,get:function(){return Lzi.Notification}});Object.defineProperty(Cn,"NotificationKind",{enumerable:!0,get:function(){return Lzi.NotificationKind}});var M7c=h8e();Object.defineProperty(Cn,"pipe",{enumerable:!0,get:function(){return M7c.pipe}});var H7c=ox();Object.defineProperty(Cn,"noop",{enumerable:!0,get:function(){return H7c.noop}});var Y7c=ax();Object.defineProperty(Cn,"identity",{enumerable:!0,get:function(){return Y7c.identity}});var Q7c=$ji();Object.defineProperty(Cn,"isObservable",{enumerable:!0,get:function(){return Q7c.isObservable}});var X7c=e7i();Object.defineProperty(Cn,"lastValueFrom",{enumerable:!0,get:function(){return X7c.lastValueFrom}});var J7c=t7i();Object.defineProperty(Cn,"firstValueFrom",{enumerable:!0,get:function(){return J7c.firstValueFrom}});var U7c=$Or();Object.defineProperty(Cn,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return U7c.ArgumentOutOfRangeError}});var K7c=Zle();Object.defineProperty(Cn,"EmptyError",{enumerable:!0,get:function(){return K7c.EmptyError}});var j7c=ePr();Object.defineProperty(Cn,"NotFoundError",{enumerable:!0,get:function(){return j7c.NotFoundError}});var z7c=kOr();Object.defineProperty(Cn,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return z7c.ObjectUnsubscribedError}});var q7c=tPr();Object.defineProperty(Cn,"SequenceError",{enumerable:!0,get:function(){return q7c.SequenceError}});var $7c=b8e();Object.defineProperty(Cn,"TimeoutError",{enumerable:!0,get:function(){return $7c.TimeoutError}});var ezc=_Or();Object.defineProperty(Cn,"UnsubscriptionError",{enumerable:!0,get:function(){return ezc.UnsubscriptionError}});var tzc=n7i();Object.defineProperty(Cn,"bindCallback",{enumerable:!0,get:function(){return tzc.bindCallback}});var rzc=i7i();Object.defineProperty(Cn,"bindNodeCallback",{enumerable:!0,get:function(){return rzc.bindNodeCallback}});var nzc=qwt();Object.defineProperty(Cn,"combineLatest",{enumerable:!0,get:function(){return nzc.combineLatest}});var izc=S8e();Object.defineProperty(Cn,"concat",{enumerable:!0,get:function(){return izc.concat}});var szc=A7i();Object.defineProperty(Cn,"connectable",{enumerable:!0,get:function(){return szc.connectable}});var ozc=v8e();Object.defineProperty(Cn,"defer",{enumerable:!0,get:function(){return ozc.defer}});var azc=O4();Object.defineProperty(Cn,"empty",{enumerable:!0,get:function(){return azc.empty}});var czc=d7i();Object.defineProperty(Cn,"forkJoin",{enumerable:!0,get:function(){return czc.forkJoin}});var lzc=hte();Object.defineProperty(Cn,"from",{enumerable:!0,get:function(){return lzc.from}});var uzc=f7i();Object.defineProperty(Cn,"fromEvent",{enumerable:!0,get:function(){return uzc.fromEvent}});var gzc=h7i();Object.defineProperty(Cn,"fromEventPattern",{enumerable:!0,get:function(){return gzc.fromEventPattern}});var Azc=C7i();Object.defineProperty(Cn,"generate",{enumerable:!0,get:function(){return Azc.generate}});var dzc=_7i();Object.defineProperty(Cn,"iif",{enumerable:!0,get:function(){return dzc.iif}});var pzc=aPr();Object.defineProperty(Cn,"interval",{enumerable:!0,get:function(){return pzc.interval}});var fzc=b7i();Object.defineProperty(Cn,"merge",{enumerable:!0,get:function(){return fzc.merge}});var Izc=cPr();Object.defineProperty(Cn,"never",{enumerable:!0,get:function(){return Izc.never}});var hzc=Fwt();Object.defineProperty(Cn,"of",{enumerable:!0,get:function(){return hzc.of}});var mzc=lPr();Object.defineProperty(Cn,"onErrorResumeNext",{enumerable:!0,get:function(){return mzc.onErrorResumeNext}});var Czc=S7i();Object.defineProperty(Cn,"pairs",{enumerable:!0,get:function(){return Czc.pairs}});var _zc=w7i();Object.defineProperty(Cn,"partition",{enumerable:!0,get:function(){return _zc.partition}});var yzc=gPr();Object.defineProperty(Cn,"race",{enumerable:!0,get:function(){return yzc.race}});var bzc=N7i();Object.defineProperty(Cn,"range",{enumerable:!0,get:function(){return bzc.range}});var Ezc=qOr();Object.defineProperty(Cn,"throwError",{enumerable:!0,get:function(){return Ezc.throwError}});var Szc=Ole();Object.defineProperty(Cn,"timer",{enumerable:!0,get:function(){return Szc.timer}});var vzc=D7i();Object.defineProperty(Cn,"using",{enumerable:!0,get:function(){return vzc.using}});var Bzc=yTt();Object.defineProperty(Cn,"zip",{enumerable:!0,get:function(){return Bzc.zip}});var wzc=zOr();Object.defineProperty(Cn,"scheduled",{enumerable:!0,get:function(){return wzc.scheduled}});var Tzc=O4();Object.defineProperty(Cn,"EMPTY",{enumerable:!0,get:function(){return Tzc.EMPTY}});var Rzc=cPr();Object.defineProperty(Cn,"NEVER",{enumerable:!0,get:function(){return Rzc.NEVER}});N7c(x7i(),Cn);var Nzc=Rke();Object.defineProperty(Cn,"config",{enumerable:!0,get:function(){return Nzc.config}});var Dzc=ETt();Object.defineProperty(Cn,"audit",{enumerable:!0,get:function(){return Dzc.audit}});var kzc=APr();Object.defineProperty(Cn,"auditTime",{enumerable:!0,get:function(){return kzc.auditTime}});var xzc=dPr();Object.defineProperty(Cn,"buffer",{enumerable:!0,get:function(){return xzc.buffer}});var Gzc=fPr();Object.defineProperty(Cn,"bufferCount",{enumerable:!0,get:function(){return Gzc.bufferCount}});var Fzc=IPr();Object.defineProperty(Cn,"bufferTime",{enumerable:!0,get:function(){return Fzc.bufferTime}});var Zzc=mPr();Object.defineProperty(Cn,"bufferToggle",{enumerable:!0,get:function(){return Zzc.bufferToggle}});var Lzc=CPr();Object.defineProperty(Cn,"bufferWhen",{enumerable:!0,get:function(){return Lzc.bufferWhen}});var Vzc=_Pr();Object.defineProperty(Cn,"catchError",{enumerable:!0,get:function(){return Vzc.catchError}});var Wzc=EPr();Object.defineProperty(Cn,"combineAll",{enumerable:!0,get:function(){return Wzc.combineAll}});var Ozc=GTt();Object.defineProperty(Cn,"combineLatestAll",{enumerable:!0,get:function(){return Ozc.combineLatestAll}});var Pzc=vPr();Object.defineProperty(Cn,"combineLatestWith",{enumerable:!0,get:function(){return Pzc.combineLatestWith}});var Mzc=E8e();Object.defineProperty(Cn,"concatAll",{enumerable:!0,get:function(){return Mzc.concatAll}});var Hzc=LTt();Object.defineProperty(Cn,"concatMap",{enumerable:!0,get:function(){return Hzc.concatMap}});var Yzc=BPr();Object.defineProperty(Cn,"concatMapTo",{enumerable:!0,get:function(){return Yzc.concatMapTo}});var Qzc=TPr();Object.defineProperty(Cn,"concatWith",{enumerable:!0,get:function(){return Qzc.concatWith}});var Xzc=B8e();Object.defineProperty(Cn,"connect",{enumerable:!0,get:function(){return Xzc.connect}});var Jzc=RPr();Object.defineProperty(Cn,"count",{enumerable:!0,get:function(){return Jzc.count}});var Uzc=NPr();Object.defineProperty(Cn,"debounce",{enumerable:!0,get:function(){return Uzc.debounce}});var Kzc=DPr();Object.defineProperty(Cn,"debounceTime",{enumerable:!0,get:function(){return Kzc.debounceTime}});var jzc=lxe();Object.defineProperty(Cn,"defaultIfEmpty",{enumerable:!0,get:function(){return jzc.defaultIfEmpty}});var zzc=kPr();Object.defineProperty(Cn,"delay",{enumerable:!0,get:function(){return zzc.delay}});var qzc=zTt();Object.defineProperty(Cn,"delayWhen",{enumerable:!0,get:function(){return qzc.delayWhen}});var $zc=xPr();Object.defineProperty(Cn,"dematerialize",{enumerable:!0,get:function(){return $zc.dematerialize}});var eqc=GPr();Object.defineProperty(Cn,"distinct",{enumerable:!0,get:function(){return eqc.distinct}});var tqc=rRt();Object.defineProperty(Cn,"distinctUntilChanged",{enumerable:!0,get:function(){return tqc.distinctUntilChanged}});var rqc=FPr();Object.defineProperty(Cn,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return rqc.distinctUntilKeyChanged}});var nqc=ZPr();Object.defineProperty(Cn,"elementAt",{enumerable:!0,get:function(){return nqc.elementAt}});var iqc=LPr();Object.defineProperty(Cn,"endWith",{enumerable:!0,get:function(){return iqc.endWith}});var sqc=VPr();Object.defineProperty(Cn,"every",{enumerable:!0,get:function(){return sqc.every}});var oqc=WPr();Object.defineProperty(Cn,"exhaust",{enumerable:!0,get:function(){return oqc.exhaust}});var aqc=uRt();Object.defineProperty(Cn,"exhaustAll",{enumerable:!0,get:function(){return aqc.exhaustAll}});var cqc=cRt();Object.defineProperty(Cn,"exhaustMap",{enumerable:!0,get:function(){return cqc.exhaustMap}});var lqc=OPr();Object.defineProperty(Cn,"expand",{enumerable:!0,get:function(){return lqc.expand}});var uqc=_te();Object.defineProperty(Cn,"filter",{enumerable:!0,get:function(){return uqc.filter}});var gqc=PPr();Object.defineProperty(Cn,"finalize",{enumerable:!0,get:function(){return gqc.finalize}});var Aqc=pRt();Object.defineProperty(Cn,"find",{enumerable:!0,get:function(){return Aqc.find}});var dqc=MPr();Object.defineProperty(Cn,"findIndex",{enumerable:!0,get:function(){return dqc.findIndex}});var pqc=HPr();Object.defineProperty(Cn,"first",{enumerable:!0,get:function(){return pqc.first}});var fqc=YPr();Object.defineProperty(Cn,"groupBy",{enumerable:!0,get:function(){return fqc.groupBy}});var Iqc=JTt();Object.defineProperty(Cn,"ignoreElements",{enumerable:!0,get:function(){return Iqc.ignoreElements}});var hqc=QPr();Object.defineProperty(Cn,"isEmpty",{enumerable:!0,get:function(){return hqc.isEmpty}});var mqc=XPr();Object.defineProperty(Cn,"last",{enumerable:!0,get:function(){return mqc.last}});var Cqc=Cte();Object.defineProperty(Cn,"map",{enumerable:!0,get:function(){return Cqc.map}});var _qc=KTt();Object.defineProperty(Cn,"mapTo",{enumerable:!0,get:function(){return _qc.mapTo}});var yqc=UPr();Object.defineProperty(Cn,"materialize",{enumerable:!0,get:function(){return yqc.materialize}});var bqc=KPr();Object.defineProperty(Cn,"max",{enumerable:!0,get:function(){return bqc.max}});var Eqc=rxe();Object.defineProperty(Cn,"mergeAll",{enumerable:!0,get:function(){return Eqc.mergeAll}});var Sqc=jPr();Object.defineProperty(Cn,"flatMap",{enumerable:!0,get:function(){return Sqc.flatMap}});var vqc=aj();Object.defineProperty(Cn,"mergeMap",{enumerable:!0,get:function(){return vqc.mergeMap}});var Bqc=zPr();Object.defineProperty(Cn,"mergeMapTo",{enumerable:!0,get:function(){return Bqc.mergeMapTo}});var wqc=qPr();Object.defineProperty(Cn,"mergeScan",{enumerable:!0,get:function(){return wqc.mergeScan}});var Tqc=e3r();Object.defineProperty(Cn,"mergeWith",{enumerable:!0,get:function(){return Tqc.mergeWith}});var Rqc=t3r();Object.defineProperty(Cn,"min",{enumerable:!0,get:function(){return Rqc.min}});var Nqc=w8e();Object.defineProperty(Cn,"multicast",{enumerable:!0,get:function(){return Nqc.multicast}});var Dqc=$ke();Object.defineProperty(Cn,"observeOn",{enumerable:!0,get:function(){return Dqc.observeOn}});var kqc=r3r();Object.defineProperty(Cn,"onErrorResumeNextWith",{enumerable:!0,get:function(){return kqc.onErrorResumeNextWith}});var xqc=n3r();Object.defineProperty(Cn,"pairwise",{enumerable:!0,get:function(){return xqc.pairwise}});var Gqc=i3r();Object.defineProperty(Cn,"pluck",{enumerable:!0,get:function(){return Gqc.pluck}});var Fqc=s3r();Object.defineProperty(Cn,"publish",{enumerable:!0,get:function(){return Fqc.publish}});var Zqc=o3r();Object.defineProperty(Cn,"publishBehavior",{enumerable:!0,get:function(){return Zqc.publishBehavior}});var Lqc=a3r();Object.defineProperty(Cn,"publishLast",{enumerable:!0,get:function(){return Lqc.publishLast}});var Vqc=c3r();Object.defineProperty(Cn,"publishReplay",{enumerable:!0,get:function(){return Vqc.publishReplay}});var Wqc=GRt();Object.defineProperty(Cn,"raceWith",{enumerable:!0,get:function(){return Wqc.raceWith}});var Oqc=x_e();Object.defineProperty(Cn,"reduce",{enumerable:!0,get:function(){return Oqc.reduce}});var Pqc=l3r();Object.defineProperty(Cn,"repeat",{enumerable:!0,get:function(){return Pqc.repeat}});var Mqc=u3r();Object.defineProperty(Cn,"repeatWhen",{enumerable:!0,get:function(){return Mqc.repeatWhen}});var Hqc=g3r();Object.defineProperty(Cn,"retry",{enumerable:!0,get:function(){return Hqc.retry}});var Yqc=A3r();Object.defineProperty(Cn,"retryWhen",{enumerable:!0,get:function(){return Yqc.retryWhen}});var Qqc=owt();Object.defineProperty(Cn,"refCount",{enumerable:!0,get:function(){return Qqc.refCount}});var Xqc=ORt();Object.defineProperty(Cn,"sample",{enumerable:!0,get:function(){return Xqc.sample}});var Jqc=d3r();Object.defineProperty(Cn,"sampleTime",{enumerable:!0,get:function(){return Jqc.sampleTime}});var Uqc=p3r();Object.defineProperty(Cn,"scan",{enumerable:!0,get:function(){return Uqc.scan}});var Kqc=f3r();Object.defineProperty(Cn,"sequenceEqual",{enumerable:!0,get:function(){return Kqc.sequenceEqual}});var jqc=YRt();Object.defineProperty(Cn,"share",{enumerable:!0,get:function(){return jqc.share}});var zqc=h3r();Object.defineProperty(Cn,"shareReplay",{enumerable:!0,get:function(){return zqc.shareReplay}});var qqc=m3r();Object.defineProperty(Cn,"single",{enumerable:!0,get:function(){return qqc.single}});var $qc=C3r();Object.defineProperty(Cn,"skip",{enumerable:!0,get:function(){return $qc.skip}});var e$c=_3r();Object.defineProperty(Cn,"skipLast",{enumerable:!0,get:function(){return e$c.skipLast}});var t$c=y3r();Object.defineProperty(Cn,"skipUntil",{enumerable:!0,get:function(){return t$c.skipUntil}});var r$c=b3r();Object.defineProperty(Cn,"skipWhile",{enumerable:!0,get:function(){return r$c.skipWhile}});var n$c=E3r();Object.defineProperty(Cn,"startWith",{enumerable:!0,get:function(){return n$c.startWith}});var i$c=exe();Object.defineProperty(Cn,"subscribeOn",{enumerable:!0,get:function(){return i$c.subscribeOn}});var s$c=S3r();Object.defineProperty(Cn,"switchAll",{enumerable:!0,get:function(){return s$c.switchAll}});var o$c=pxe();Object.defineProperty(Cn,"switchMap",{enumerable:!0,get:function(){return o$c.switchMap}});var a$c=v3r();Object.defineProperty(Cn,"switchMapTo",{enumerable:!0,get:function(){return a$c.switchMapTo}});var c$c=B3r();Object.defineProperty(Cn,"switchScan",{enumerable:!0,get:function(){return c$c.switchScan}});var l$c=uxe();Object.defineProperty(Cn,"take",{enumerable:!0,get:function(){return l$c.take}});var u$c=CRt();Object.defineProperty(Cn,"takeLast",{enumerable:!0,get:function(){return u$c.takeLast}});var g$c=w3r();Object.defineProperty(Cn,"takeUntil",{enumerable:!0,get:function(){return g$c.takeUntil}});var A$c=T3r();Object.defineProperty(Cn,"takeWhile",{enumerable:!0,get:function(){return A$c.takeWhile}});var d$c=R3r();Object.defineProperty(Cn,"tap",{enumerable:!0,get:function(){return d$c.tap}});var p$c=oNt();Object.defineProperty(Cn,"throttle",{enumerable:!0,get:function(){return p$c.throttle}});var f$c=N3r();Object.defineProperty(Cn,"throttleTime",{enumerable:!0,get:function(){return f$c.throttleTime}});var I$c=gxe();Object.defineProperty(Cn,"throwIfEmpty",{enumerable:!0,get:function(){return I$c.throwIfEmpty}});var h$c=D3r();Object.defineProperty(Cn,"timeInterval",{enumerable:!0,get:function(){return h$c.timeInterval}});var m$c=b8e();Object.defineProperty(Cn,"timeout",{enumerable:!0,get:function(){return m$c.timeout}});var C$c=k3r();Object.defineProperty(Cn,"timeoutWith",{enumerable:!0,get:function(){return C$c.timeoutWith}});var _$c=x3r();Object.defineProperty(Cn,"timestamp",{enumerable:!0,get:function(){return _$c.timestamp}});var y$c=DTt();Object.defineProperty(Cn,"toArray",{enumerable:!0,get:function(){return y$c.toArray}});var b$c=G3r();Object.defineProperty(Cn,"window",{enumerable:!0,get:function(){return b$c.window}});var E$c=F3r();Object.defineProperty(Cn,"windowCount",{enumerable:!0,get:function(){return E$c.windowCount}});var S$c=Z3r();Object.defineProperty(Cn,"windowTime",{enumerable:!0,get:function(){return S$c.windowTime}});var v$c=V3r();Object.defineProperty(Cn,"windowToggle",{enumerable:!0,get:function(){return v$c.windowToggle}});var B$c=W3r();Object.defineProperty(Cn,"windowWhen",{enumerable:!0,get:function(){return B$c.windowWhen}});var w$c=O3r();Object.defineProperty(Cn,"withLatestFrom",{enumerable:!0,get:function(){return w$c.withLatestFrom}});var T$c=P3r();Object.defineProperty(Cn,"zipAll",{enumerable:!0,get:function(){return T$c.zipAll}});var R$c=H3r();Object.defineProperty(Cn,"zipWith",{enumerable:!0,get:function(){return R$c.zipWith}})});var yte=H(XV=>{"use strict";Object.defineProperty(XV,"__esModule",{value:!0});XV.PathIsFileException=XV.PathIsDirectoryException=XV.FileAlreadyExistException=XV.FileDoesNotExistException=XV.UnknownException=XV.BaseException=void 0;var tue=class extends Error{constructor(t=""){super(t)}};XV.BaseException=tue;var Y3r=class extends tue{constructor(t){super(t)}};XV.UnknownException=Y3r;var Q3r=class extends tue{constructor(t){super(`Path "${t}" does not exist.`)}};XV.FileDoesNotExistException=Q3r;var X3r=class extends tue{constructor(t){super(`Path "${t}" already exist.`)}};XV.FileAlreadyExistException=X3r;var J3r=class extends tue{constructor(t){super(`Path "${t}" is a directory.`)}};XV.PathIsDirectoryException=J3r;var U3r=class extends tue{constructor(t){super(`Path "${t}" is a file.`)}};XV.PathIsFileException=U3r});var Wzi=H(G_e=>{"use strict";Object.defineProperty(G_e,"__esModule",{value:!0});G_e.oneLine=N$c;G_e.indentBy=D$c;G_e.stripIndent=Vzi;G_e.stripIndents=k$c;G_e.trimNewlines=x$c;function N$c(e,...t){return String.raw(e,...t).replace(/(?:\r?\n(?:\s*))+/gm," ").trim()}function D$c(e){let t="";for(;e--;)t+=" ";return(r,...n)=>t+Vzi(r,...n).replace(/\n/g,` +`+t)}function Vzi(e,...t){let r=String.raw(e,...t),n=r.match(/^[ \t]*(?=\S)/gm);if(n===null)return r;let a=Math.min(...n.map(l=>l.length)),o=new RegExp("^[ \\t]{"+a+"}","gm");return(a>0?r.replace(o,""):r).trim()}function k$c(e,...t){return String.raw(e,...t).split(` `).map(r=>r.trim()).join(` -`).trim()}function Zqc(e,...t){return String.raw(e,...t).replace(/^(?:\r?\n)+/,"").replace(/(?:\r?\n(?:\s*))$/,"")}});var Mzi=H(yte=>{"use strict";Object.defineProperty(yte,"__esModule",{value:!0});yte.decamelize=Wzi;yte.dasherize=Mqc;yte.camelize=Ozi;yte.classify=Hqc;yte.underscore=Yqc;yte.capitalize=Pzi;yte.levenshtein=Qqc;var Lqc=/[ _]/g,Vqc=/([a-z\d])([A-Z])/g,Wqc=/(-|_|\.|\s)+(.)?/g,Oqc=/([a-z\d])([A-Z]+)/g,Pqc=/-|\s+/g;function Wzi(e){return e.replace(Vqc,"$1_$2").toLowerCase()}function Mqc(e){return Wzi(e).replace(Lqc,"-")}function Ozi(e){return e.replace(Wqc,(t,r,n)=>n?n.toUpperCase():"").replace(/^([A-Z])/,t=>t.toLowerCase())}function Hqc(e){return e.split(".").map(t=>Pzi(Ozi(t))).join("")}function Yqc(e){return e.replace(Oqc,"$1_$2").replace(Pqc,"_").toLowerCase()}function Pzi(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Qqc(e,t){if(e.length==0)return t.length;if(t.length==0)return e.length;let r=[];for(let n=0;n<=t.length;n++)r[n]=[n];for(let n=0;n<=e.length;n++)r[0][n]=n;for(let n=1;n<=t.length;n++)for(let a=1;a<=e.length;a++)t.charAt(n-1)==e.charAt(a-1)?r[n][a]=r[n-1][a-1]:r[n][a]=Math.min(r[n-1][a-1]+1,r[n][a-1]+1,r[n-1][a]+1);return r[t.length][e.length]}});var Hzi=H(Y3r=>{"use strict";Object.defineProperty(Y3r,"__esModule",{value:!0});Y3r.deepCopy=H3r;var pNt=Symbol();function H3r(e){if(Array.isArray(e))return e.map(t=>H3r(t));if(e&&typeof e=="object"){let t=e;if(t[pNt])return t[pNt];if(t.toJSON)return JSON.parse(t.toJSON());let r=Object.create(Object.getPrototypeOf(t));t[pNt]=r;for(let n of Object.getOwnPropertyNames(t))r[n]=H3r(t[n]);return delete t[pNt],r}else return e}});var Xzi=H(Qzi=>{var Yzi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Qzi.encode=function(e){if(0<=e&&e{var Xqc=Xzi(),Jzi=5,Uzi=1<>>=Jzi,a>0&&(n|=Uqc),r+=Xqc.encode(n);while(a>0);return r}});var N8e=H(zG=>{function jqc(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}zG.getArg=jqc;var jzi=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,zqc=/^data:.+\,.+$/;function R8e(e){let t=e.match(jzi);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}zG.urlParse=R8e;function mxe(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}zG.urlGenerate=mxe;var qqc=32;function $qc(e){let t=[];return function(r){for(let a=0;aqqc&&t.pop(),n}}var X3r=$qc(function(t){let r=t,n=R8e(t);if(n){if(!n.path)return t;r=n.path}let a=zG.isAbsolute(r),o=[],l=0,A=0;for(;;)if(l=A,A=r.indexOf("/",l),A===-1){o.push(r.slice(l));break}else for(o.push(r.slice(l,A));A=0;A--){let I=o[A];I==="."?o.splice(A,1):I===".."?f++:f>0&&(I===""?(o.splice(A+1,f),f=0):(o.splice(A,2),f--))}return r=o.join("/"),r===""&&(r=a?"/":"."),n?(n.path=r,mxe(n)):r});zG.normalize=X3r;function zzi(e,t){e===""&&(e="."),t===""&&(t=".");let r=R8e(t),n=R8e(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),mxe(r);if(r||t.match(zqc))return t;if(n&&!n.host&&!n.path)return n.host=t,mxe(n);let a=t.charAt(0)==="/"?t:X3r(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,mxe(n)):a}zG.join=zzi;zG.isAbsolute=function(e){return e.charAt(0)==="/"||jzi.test(e)};function e$c(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");let r=0;for(;t.indexOf(e+"/")!==0;){let n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}zG.relative=e$c;var qzi=function(){return!("__proto__"in Object.create(null))}();function $zi(e){return e}function t$c(e){return eqi(e)?"$"+e:e}zG.toSetString=qzi?$zi:t$c;function r$c(e){return eqi(e)?e.slice(1):e}zG.fromSetString=qzi?$zi:r$c;function eqi(e){if(!e)return!1;let t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(let r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function n$c(e,t,r){let n=Cxe(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Cxe(e.name,t.name)}zG.compareByOriginalPositions=n$c;function i$c(e,t,r){let n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Cxe(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Cxe(e.name,t.name)}zG.compareByGeneratedPositionsDeflated=i$c;function Cxe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function s$c(e,t){let r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Cxe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Cxe(e.name,t.name)}zG.compareByGeneratedPositionsInflated=s$c;function o$c(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}zG.parseSourceMapInput=o$c;function a$c(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){let n=R8e(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){let a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=zzi(mxe(n),t)}return X3r(t)}zG.computeSourceURL=a$c});var U3r=H(tqi=>{var J3r=class e{constructor(){this._array=[],this._set=new Map}static fromArray(t,r){let n=new e;for(let a=0,o=t.length;a=0)return r;throw new Error('"'+t+'" is not in the set.')}at(t){if(t>=0&&t{var rqi=N8e();function c$c(e,t){let r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||rqi.compareByGeneratedPositionsInflated(e,t)<=0}var K3r=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(t,r){this._array.forEach(t,r)}add(t){c$c(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))}toArray(){return this._sorted||(this._array.sort(rqi.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}};nqi.MappingList=K3r});var j3r=H(sqi=>{var D8e=Q3r(),_T=N8e(),fNt=U3r().ArraySet,l$c=iqi().MappingList,INt=class e{constructor(t){t||(t={}),this._file=_T.getArg(t,"file",null),this._sourceRoot=_T.getArg(t,"sourceRoot",null),this._skipValidation=_T.getArg(t,"skipValidation",!1),this._sources=new fNt,this._names=new fNt,this._mappings=new l$c,this._sourcesContents=null}static fromSourceMap(t){let r=t.sourceRoot,n=new e({file:t.file,sourceRoot:r});return t.eachMapping(function(a){let o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=_T.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){let o=a;r!==null&&(o=_T.relative(r,a)),n._sources.has(o)||n._sources.add(o);let l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n}addMapping(t){let r=_T.getArg(t,"generated"),n=_T.getArg(t,"original",null),a=_T.getArg(t,"source",null),o=_T.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})}setSourceContent(t,r){let n=t;this._sourceRoot!=null&&(n=_T.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[_T.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[_T.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))}applySourceMap(t,r,n){let a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}let o=this._sourceRoot;o!=null&&(a=_T.relative(o,a));let l=this._mappings.toArray().length>0?new fNt:this._sources,A=new fNt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){let b=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});b.source!=null&&(f.source=b.source,n!=null&&(f.source=_T.join(n,f.source)),o!=null&&(f.source=_T.relative(o,f.source)),f.originalLine=b.line,f.originalColumn=b.column,b.name!=null&&(f.name=b.name))}let I=f.source;I!=null&&!l.has(I)&&l.add(I);let C=f.name;C!=null&&!A.has(C)&&A.add(C)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){let I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=_T.join(n,f)),o!=null&&(f=_T.relative(o,f)),this.setSourceContent(f,I))},this)}_validateMapping(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("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(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(!(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}}_serializeMappings(){let t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray();for(let N=0,B=E.length;N0){if(!_T.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=D8e.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=D8e.encode(b-l),l=b,f+=D8e.encode(I.originalLine-1-a),a=I.originalLine-1,f+=D8e.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=D8e.encode(C-o),o=C)),A+=f}return A}_generateSourcesContent(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=_T.relative(r,n));let a=_T.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)}toJSON(){let t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t}toString(){return JSON.stringify(this.toJSON())}};INt.prototype._version=3;sqi.SourceMapGenerator=INt});var oqi=H(F_e=>{F_e.GREATEST_LOWER_BOUND=1;F_e.LEAST_UPPER_BOUND=2;function z3r(e,t,r,n,a,o){let l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?z3r(l,t,r,n,a,o):o==F_e.LEAST_UPPER_BOUND?t1?z3r(e,l,r,n,a,o):o==F_e.LEAST_UPPER_BOUND?l:e<0?-1:e}F_e.search=function(t,r,n,a){if(r.length===0)return-1;let o=z3r(-1,r.length,t,r,n,a||F_e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var q3r=H((zUu,k8e)=>{var u$c=function(){return typeof window<"u"&&this===window}.call();if(u$c){let e=null;k8e.exports=function(){if(typeof e=="string")return fetch(e).then(r=>r.arrayBuffer());if(e instanceof ArrayBuffer)return Promise.resolve(e);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},k8e.exports.initialize=t=>e=t}else{let e=Et("fs"),t=Et("path");k8e.exports=function(){return new Promise((n,a)=>{let o=t.join(__dirname,"mappings.wasm");e.readFile(o,null,(l,A)=>{if(l){a(l);return}n(A.buffer)})})},k8e.exports.initialize=r=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}});var cqi=H((qUu,aqi)=>{var g$c=q3r();function A$c(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var x8e=null;aqi.exports=function(){if(x8e)return x8e;let t=[];return x8e=g$c().then(r=>WebAssembly.instantiate(r,{env:{mapping_callback(n,a,o,l,A,f,I,C,b,E){let N=new A$c;N.generatedLine=n+1,N.generatedColumn=a,o&&(N.lastGeneratedColumn=l-1),A&&(N.source=f,N.originalLine=I+1,N.originalColumn=C,b&&(N.name=E)),t[t.length-1](N)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}})).then(r=>({exports:r.instance.exports,withMappingCallback:(n,a)=>{t.push(n);try{a()}finally{t.pop()}}})).then(null,r=>{throw x8e=null,r}),x8e}});var lqi=H(CNt=>{var Kd=N8e(),$3r=oqi(),hNt=U3r().ArraySet,$Uu=Q3r(),d$c=q3r(),p$c=cqi(),e5r=Symbol("smcInternal"),zv=class e{constructor(t,r){return t==e5r?Promise.resolve(this):f$c(t,r)}static initialize(t){d$c.initialize(t["lib/mappings.wasm"])}static fromSourceMap(t,r){return I$c(t,r)}static async with(t,r,n){let a=await new e(t,r);try{return await n(a)}finally{a.destroy()}}_parseMappings(t,r){throw new Error("Subclasses must implement _parseMappings")}eachMapping(t,r,n){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(t){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}};zv.prototype._version=3;zv.GENERATED_ORDER=1;zv.ORIGINAL_ORDER=2;zv.GREATEST_LOWER_BOUND=1;zv.LEAST_UPPER_BOUND=2;CNt.SourceMapConsumer=zv;var _xe=class e extends zv{constructor(t,r){return super(e5r).then(n=>{let a=t;typeof t=="string"&&(a=Kd.parseSourceMapInput(t));let o=Kd.getArg(a,"version"),l=Kd.getArg(a,"sources"),A=Kd.getArg(a,"names",[]),f=Kd.getArg(a,"sourceRoot",null),I=Kd.getArg(a,"sourcesContent",null),C=Kd.getArg(a,"mappings"),b=Kd.getArg(a,"file",null);if(o!=n._version)throw new Error("Unsupported version: "+o);return f&&(f=Kd.normalize(f)),l=l.map(String).map(Kd.normalize).map(function(E){return f&&Kd.isAbsolute(f)&&Kd.isAbsolute(E)?Kd.relative(f,E):E}),n._names=hNt.fromArray(A.map(String),!0),n._sources=hNt.fromArray(l,!0),n._absoluteSources=n._sources.toArray().map(function(E){return Kd.computeSourceURL(f,E,r)}),n.sourceRoot=f,n.sourcesContent=I,n._mappings=C,n._sourceMapURL=r,n.file=b,n._computedColumnSpans=!1,n._mappingsPtr=0,n._wasm=null,p$c().then(E=>(n._wasm=E,n))})}_findSourceIndex(t){let r=t;if(this.sourceRoot!=null&&(r=Kd.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(let n=0;n{A.source!==null&&(A.source=this._sources.at(A.source),A.source=Kd.computeSourceURL(l,A.source,this._sourceMapURL),A.name!==null&&(A.name=this._names.at(A.name))),t.call(a,A)},()=>{switch(o){case zv.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case zv.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}})}allGeneratedPositionsFor(t){let r=Kd.getArg(t,"source"),n=Kd.getArg(t,"line"),a=t.column||0;if(r=this._findSourceIndex(r),r<0)return[];if(n<1)throw new Error("Line numbers must be >= 1");if(a<0)throw new Error("Column numbers must be >= 0");let o=[];return this._wasm.withMappingCallback(l=>{let A=l.lastGeneratedColumn;this._computedColumnSpans&&A===null&&(A=1/0),o.push({line:l.generatedLine,column:l.generatedColumn,lastColumn:A})},()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),r,n-1,"column"in t,a)}),o}destroy(){this._mappingsPtr!==0&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(t){let r={generatedLine:Kd.getArg(t,"line"),generatedColumn:Kd.getArg(t,"column")};if(r.generatedLine<1)throw new Error("Line numbers must be >= 1");if(r.generatedColumn<0)throw new Error("Column numbers must be >= 0");let n=Kd.getArg(t,"bias",zv.GREATEST_LOWER_BOUND);n==null&&(n=zv.GREATEST_LOWER_BOUND);let a;if(this._wasm.withMappingCallback(o=>a=o,()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),r.generatedLine-1,r.generatedColumn,n)}),a&&a.generatedLine===r.generatedLine){let o=Kd.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=Kd.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));let l=Kd.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:Kd.getArg(a,"originalLine",null),column:Kd.getArg(a,"originalColumn",null),name:l}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1}sourceContentFor(t,r){if(!this.sourcesContent)return null;let n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];let a=t;this.sourceRoot!=null&&(a=Kd.relative(this.sourceRoot,a));let o;if(this.sourceRoot!=null&&(o=Kd.urlParse(this.sourceRoot))){let l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')}generatedPositionFor(t){let r=Kd.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};let n={source:r,originalLine:Kd.getArg(t,"line"),originalColumn:Kd.getArg(t,"column")};if(n.originalLine<1)throw new Error("Line numbers must be >= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=Kd.getArg(t,"bias",zv.GREATEST_LOWER_BOUND);a==null&&(a=zv.GREATEST_LOWER_BOUND);let o;if(this._wasm.withMappingCallback(l=>o=l,()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),n.source,n.originalLine-1,n.originalColumn,a)}),o&&o.source===n.source){let l=o.lastGeneratedColumn;return this._computedColumnSpans&&l===null&&(l=1/0),{line:Kd.getArg(o,"generatedLine",null),column:Kd.getArg(o,"generatedColumn",null),lastColumn:l}}return{line:null,column:null,lastColumn:null}}};_xe.prototype.consumer=zv;CNt.BasicSourceMapConsumer=_xe;var mNt=class extends zv{constructor(t,r){return super(e5r).then(n=>{let a=t;typeof t=="string"&&(a=Kd.parseSourceMapInput(t));let o=Kd.getArg(a,"version"),l=Kd.getArg(a,"sections");if(o!=n._version)throw new Error("Unsupported version: "+o);n._sources=new hNt,n._names=new hNt,n.__generatedMappings=null,n.__originalMappings=null,n.__generatedMappingsUnsorted=null,n.__originalMappingsUnsorted=null;let A={line:-1,column:0};return Promise.all(l.map(f=>{if(f.url)throw new Error("Support for url field in sections not implemented.");let I=Kd.getArg(f,"offset"),C=Kd.getArg(I,"line"),b=Kd.getArg(I,"column");if(C({generatedOffset:{generatedLine:C+1,generatedColumn:b+1},consumer:N}))})).then(f=>(n._sections=f,n))})}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){let t=this._generatedMappingsUnsorted;t.sort(Kd.compareByGeneratedPositionsDeflated),this.__generatedMappings=t}_sortOriginalMappings(){let t=this._originalMappingsUnsorted;t.sort(Kd.compareByOriginalPositions),this.__originalMappings=t}get sources(){let t=[];for(let r=0;rA.push(f));for(let f=0;f= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",Kd.compareByOriginalPositions,$3r.LEAST_UPPER_BOUND);if(o>=0){let l=this._originalMappings[o];if(t.column===void 0){let A=l.originalLine;for(;l&&l.originalLine===A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Kd.getArg(l,"generatedLine",null),column:Kd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}else{let A=l.originalColumn;for(;l&&l.originalLine===r&&l.originalColumn==A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Kd.getArg(l,"generatedLine",null),column:Kd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}}return a}destroy(){for(let t=0;t{var h$c=j3r().SourceMapGenerator,_Nt=N8e(),m$c=/(\r?\n)/,C$c=10,yxe="$$$isSourceNode$$$",t5r=class e{constructor(t,r,n,a,o){this.children=[],this.sourceContents={},this.line=t??null,this.column=r??null,this.source=n??null,this.name=o??null,this[yxe]=!0,a!=null&&this.add(a)}static fromStringWithSourceMap(t,r,n){let a=new e,o=t.split(m$c),l=0,A=function(){let N=F(),B=F()||"";return N+B;function F(){return l=0;r--)this.prepend(t[r]);else if(t[yxe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this}walk(t){let r;for(let n=0,a=this.children.length;n0){for(r=[],n=0;n{yNt.SourceMapGenerator=j3r().SourceMapGenerator;yNt.SourceMapConsumer=lqi().SourceMapConsumer;yNt.SourceNode=gqi().SourceNode});var fqi=H(bNt=>{"use strict";Object.defineProperty(bNt,"__esModule",{value:!0});bNt.templateParser=pqi;bNt.template=B$c;var lL=Aqi(),_$c=/<%=([\s\S]+?)%>/g,y$c=/<%#([\s\S]+?)%>/g,b$c=/<%-([\s\S]+?)%>/g,E$c=/<%([\s\S]+?)%>/g,r5r={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},dqi=new RegExp(`[${Object.keys(r5r).join("")}]`,"g");function bxe(e,t){let r=1,n=0;for(let a=0;aC.source).join("|")+"|$","g"),o=e.split(a),l=0,A=bxe(e,l),f,I=n.length+1;for(let C=0;C{"use strict";Object.defineProperty(bte,"__esModule",{value:!0});bte.decamelize=Ozi;bte.dasherize=W$c;bte.camelize=Pzi;bte.classify=O$c;bte.underscore=P$c;bte.capitalize=Mzi;bte.levenshtein=M$c;var G$c=/[ _]/g,F$c=/([a-z\d])([A-Z])/g,Z$c=/(-|_|\.|\s)+(.)?/g,L$c=/([a-z\d])([A-Z]+)/g,V$c=/-|\s+/g;function Ozi(e){return e.replace(F$c,"$1_$2").toLowerCase()}function W$c(e){return Ozi(e).replace(G$c,"-")}function Pzi(e){return e.replace(Z$c,(t,r,n)=>n?n.toUpperCase():"").replace(/^([A-Z])/,t=>t.toLowerCase())}function O$c(e){return e.split(".").map(t=>Mzi(Pzi(t))).join("")}function P$c(e){return e.replace(L$c,"$1_$2").replace(V$c,"_").toLowerCase()}function Mzi(e){return e.charAt(0).toUpperCase()+e.slice(1)}function M$c(e,t){if(e.length==0)return t.length;if(t.length==0)return e.length;let r=[];for(let n=0;n<=t.length;n++)r[n]=[n];for(let n=0;n<=e.length;n++)r[0][n]=n;for(let n=1;n<=t.length;n++)for(let a=1;a<=e.length;a++)t.charAt(n-1)==e.charAt(a-1)?r[n][a]=r[n-1][a-1]:r[n][a]=Math.min(r[n-1][a-1]+1,r[n][a-1]+1,r[n-1][a]+1);return r[t.length][e.length]}});var Yzi=H(j3r=>{"use strict";Object.defineProperty(j3r,"__esModule",{value:!0});j3r.deepCopy=K3r;var pNt=Symbol();function K3r(e){if(Array.isArray(e))return e.map(t=>K3r(t));if(e&&typeof e=="object"){let t=e;if(t[pNt])return t[pNt];if(t.toJSON)return JSON.parse(t.toJSON());let r=Object.create(Object.getPrototypeOf(t));t[pNt]=r;for(let n of Object.getOwnPropertyNames(t))r[n]=K3r(t[n]);return delete t[pNt],r}else return e}});var Jzi=H(Xzi=>{var Qzi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Xzi.encode=function(e){if(0<=e&&e{var H$c=Jzi(),Uzi=5,Kzi=1<>>=Uzi,a>0&&(n|=Q$c),r+=H$c.encode(n);while(a>0);return r}});var R8e=H(qG=>{function J$c(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}qG.getArg=J$c;var zzi=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,U$c=/^data:.+\,.+$/;function T8e(e){let t=e.match(zzi);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}qG.urlParse=T8e;function mxe(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}qG.urlGenerate=mxe;var K$c=32;function j$c(e){let t=[];return function(r){for(let a=0;aK$c&&t.pop(),n}}var q3r=j$c(function(t){let r=t,n=T8e(t);if(n){if(!n.path)return t;r=n.path}let a=qG.isAbsolute(r),o=[],l=0,A=0;for(;;)if(l=A,A=r.indexOf("/",l),A===-1){o.push(r.slice(l));break}else for(o.push(r.slice(l,A));A=0;A--){let I=o[A];I==="."?o.splice(A,1):I===".."?f++:f>0&&(I===""?(o.splice(A+1,f),f=0):(o.splice(A,2),f--))}return r=o.join("/"),r===""&&(r=a?"/":"."),n?(n.path=r,mxe(n)):r});qG.normalize=q3r;function qzi(e,t){e===""&&(e="."),t===""&&(t=".");let r=T8e(t),n=T8e(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),mxe(r);if(r||t.match(U$c))return t;if(n&&!n.host&&!n.path)return n.host=t,mxe(n);let a=t.charAt(0)==="/"?t:q3r(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,mxe(n)):a}qG.join=qzi;qG.isAbsolute=function(e){return e.charAt(0)==="/"||zzi.test(e)};function z$c(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");let r=0;for(;t.indexOf(e+"/")!==0;){let n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}qG.relative=z$c;var $zi=function(){return!("__proto__"in Object.create(null))}();function eqi(e){return e}function q$c(e){return tqi(e)?"$"+e:e}qG.toSetString=$zi?eqi:q$c;function $$c(e){return tqi(e)?e.slice(1):e}qG.fromSetString=$zi?eqi:$$c;function tqi(e){if(!e)return!1;let t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(let r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function eel(e,t,r){let n=Cxe(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Cxe(e.name,t.name)}qG.compareByOriginalPositions=eel;function tel(e,t,r){let n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Cxe(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Cxe(e.name,t.name)}qG.compareByGeneratedPositionsDeflated=tel;function Cxe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function rel(e,t){let r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Cxe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Cxe(e.name,t.name)}qG.compareByGeneratedPositionsInflated=rel;function nel(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}qG.parseSourceMapInput=nel;function iel(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){let n=T8e(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){let a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=qzi(mxe(n),t)}return q3r(t)}qG.computeSourceURL=iel});var e5r=H(rqi=>{var $3r=class e{constructor(){this._array=[],this._set=new Map}static fromArray(t,r){let n=new e;for(let a=0,o=t.length;a=0)return r;throw new Error('"'+t+'" is not in the set.')}at(t){if(t>=0&&t{var nqi=R8e();function sel(e,t){let r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||nqi.compareByGeneratedPositionsInflated(e,t)<=0}var t5r=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(t,r){this._array.forEach(t,r)}add(t){sel(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))}toArray(){return this._sorted||(this._array.sort(nqi.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}};iqi.MappingList=t5r});var r5r=H(oqi=>{var N8e=z3r(),yT=R8e(),fNt=e5r().ArraySet,oel=sqi().MappingList,INt=class e{constructor(t){t||(t={}),this._file=yT.getArg(t,"file",null),this._sourceRoot=yT.getArg(t,"sourceRoot",null),this._skipValidation=yT.getArg(t,"skipValidation",!1),this._sources=new fNt,this._names=new fNt,this._mappings=new oel,this._sourcesContents=null}static fromSourceMap(t){let r=t.sourceRoot,n=new e({file:t.file,sourceRoot:r});return t.eachMapping(function(a){let o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=yT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){let o=a;r!==null&&(o=yT.relative(r,a)),n._sources.has(o)||n._sources.add(o);let l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n}addMapping(t){let r=yT.getArg(t,"generated"),n=yT.getArg(t,"original",null),a=yT.getArg(t,"source",null),o=yT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})}setSourceContent(t,r){let n=t;this._sourceRoot!=null&&(n=yT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[yT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[yT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))}applySourceMap(t,r,n){let a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}let o=this._sourceRoot;o!=null&&(a=yT.relative(o,a));let l=this._mappings.toArray().length>0?new fNt:this._sources,A=new fNt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){let b=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});b.source!=null&&(f.source=b.source,n!=null&&(f.source=yT.join(n,f.source)),o!=null&&(f.source=yT.relative(o,f.source)),f.originalLine=b.line,f.originalColumn=b.column,b.name!=null&&(f.name=b.name))}let I=f.source;I!=null&&!l.has(I)&&l.add(I);let C=f.name;C!=null&&!A.has(C)&&A.add(C)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){let I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=yT.join(n,f)),o!=null&&(f=yT.relative(o,f)),this.setSourceContent(f,I))},this)}_validateMapping(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("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(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(!(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}}_serializeMappings(){let t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray();for(let N=0,B=E.length;N0){if(!yT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=N8e.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=N8e.encode(b-l),l=b,f+=N8e.encode(I.originalLine-1-a),a=I.originalLine-1,f+=N8e.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=N8e.encode(C-o),o=C)),A+=f}return A}_generateSourcesContent(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=yT.relative(r,n));let a=yT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)}toJSON(){let t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t}toString(){return JSON.stringify(this.toJSON())}};INt.prototype._version=3;oqi.SourceMapGenerator=INt});var aqi=H(F_e=>{F_e.GREATEST_LOWER_BOUND=1;F_e.LEAST_UPPER_BOUND=2;function n5r(e,t,r,n,a,o){let l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?n5r(l,t,r,n,a,o):o==F_e.LEAST_UPPER_BOUND?t1?n5r(e,l,r,n,a,o):o==F_e.LEAST_UPPER_BOUND?l:e<0?-1:e}F_e.search=function(t,r,n,a){if(r.length===0)return-1;let o=n5r(-1,r.length,t,r,n,a||F_e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var i5r=H((A8u,D8e)=>{var ael=function(){return typeof window<"u"&&this===window}.call();if(ael){let e=null;D8e.exports=function(){if(typeof e=="string")return fetch(e).then(r=>r.arrayBuffer());if(e instanceof ArrayBuffer)return Promise.resolve(e);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},D8e.exports.initialize=t=>e=t}else{let e=Et("fs"),t=Et("path");D8e.exports=function(){return new Promise((n,a)=>{let o=t.join(__dirname,"mappings.wasm");e.readFile(o,null,(l,A)=>{if(l){a(l);return}n(A.buffer)})})},D8e.exports.initialize=r=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}});var lqi=H((d8u,cqi)=>{var cel=i5r();function lel(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var k8e=null;cqi.exports=function(){if(k8e)return k8e;let t=[];return k8e=cel().then(r=>WebAssembly.instantiate(r,{env:{mapping_callback(n,a,o,l,A,f,I,C,b,E){let N=new lel;N.generatedLine=n+1,N.generatedColumn=a,o&&(N.lastGeneratedColumn=l-1),A&&(N.source=f,N.originalLine=I+1,N.originalColumn=C,b&&(N.name=E)),t[t.length-1](N)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}})).then(r=>({exports:r.instance.exports,withMappingCallback:(n,a)=>{t.push(n);try{a()}finally{t.pop()}}})).then(null,r=>{throw k8e=null,r}),k8e}});var uqi=H(CNt=>{var Kd=R8e(),s5r=aqi(),hNt=e5r().ArraySet,p8u=z3r(),uel=i5r(),gel=lqi(),o5r=Symbol("smcInternal"),qv=class e{constructor(t,r){return t==o5r?Promise.resolve(this):Ael(t,r)}static initialize(t){uel.initialize(t["lib/mappings.wasm"])}static fromSourceMap(t,r){return del(t,r)}static async with(t,r,n){let a=await new e(t,r);try{return await n(a)}finally{a.destroy()}}_parseMappings(t,r){throw new Error("Subclasses must implement _parseMappings")}eachMapping(t,r,n){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(t){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}};qv.prototype._version=3;qv.GENERATED_ORDER=1;qv.ORIGINAL_ORDER=2;qv.GREATEST_LOWER_BOUND=1;qv.LEAST_UPPER_BOUND=2;CNt.SourceMapConsumer=qv;var _xe=class e extends qv{constructor(t,r){return super(o5r).then(n=>{let a=t;typeof t=="string"&&(a=Kd.parseSourceMapInput(t));let o=Kd.getArg(a,"version"),l=Kd.getArg(a,"sources"),A=Kd.getArg(a,"names",[]),f=Kd.getArg(a,"sourceRoot",null),I=Kd.getArg(a,"sourcesContent",null),C=Kd.getArg(a,"mappings"),b=Kd.getArg(a,"file",null);if(o!=n._version)throw new Error("Unsupported version: "+o);return f&&(f=Kd.normalize(f)),l=l.map(String).map(Kd.normalize).map(function(E){return f&&Kd.isAbsolute(f)&&Kd.isAbsolute(E)?Kd.relative(f,E):E}),n._names=hNt.fromArray(A.map(String),!0),n._sources=hNt.fromArray(l,!0),n._absoluteSources=n._sources.toArray().map(function(E){return Kd.computeSourceURL(f,E,r)}),n.sourceRoot=f,n.sourcesContent=I,n._mappings=C,n._sourceMapURL=r,n.file=b,n._computedColumnSpans=!1,n._mappingsPtr=0,n._wasm=null,gel().then(E=>(n._wasm=E,n))})}_findSourceIndex(t){let r=t;if(this.sourceRoot!=null&&(r=Kd.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(let n=0;n{A.source!==null&&(A.source=this._sources.at(A.source),A.source=Kd.computeSourceURL(l,A.source,this._sourceMapURL),A.name!==null&&(A.name=this._names.at(A.name))),t.call(a,A)},()=>{switch(o){case qv.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case qv.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}})}allGeneratedPositionsFor(t){let r=Kd.getArg(t,"source"),n=Kd.getArg(t,"line"),a=t.column||0;if(r=this._findSourceIndex(r),r<0)return[];if(n<1)throw new Error("Line numbers must be >= 1");if(a<0)throw new Error("Column numbers must be >= 0");let o=[];return this._wasm.withMappingCallback(l=>{let A=l.lastGeneratedColumn;this._computedColumnSpans&&A===null&&(A=1/0),o.push({line:l.generatedLine,column:l.generatedColumn,lastColumn:A})},()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),r,n-1,"column"in t,a)}),o}destroy(){this._mappingsPtr!==0&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(t){let r={generatedLine:Kd.getArg(t,"line"),generatedColumn:Kd.getArg(t,"column")};if(r.generatedLine<1)throw new Error("Line numbers must be >= 1");if(r.generatedColumn<0)throw new Error("Column numbers must be >= 0");let n=Kd.getArg(t,"bias",qv.GREATEST_LOWER_BOUND);n==null&&(n=qv.GREATEST_LOWER_BOUND);let a;if(this._wasm.withMappingCallback(o=>a=o,()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),r.generatedLine-1,r.generatedColumn,n)}),a&&a.generatedLine===r.generatedLine){let o=Kd.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=Kd.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));let l=Kd.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:Kd.getArg(a,"originalLine",null),column:Kd.getArg(a,"originalColumn",null),name:l}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1}sourceContentFor(t,r){if(!this.sourcesContent)return null;let n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];let a=t;this.sourceRoot!=null&&(a=Kd.relative(this.sourceRoot,a));let o;if(this.sourceRoot!=null&&(o=Kd.urlParse(this.sourceRoot))){let l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')}generatedPositionFor(t){let r=Kd.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};let n={source:r,originalLine:Kd.getArg(t,"line"),originalColumn:Kd.getArg(t,"column")};if(n.originalLine<1)throw new Error("Line numbers must be >= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=Kd.getArg(t,"bias",qv.GREATEST_LOWER_BOUND);a==null&&(a=qv.GREATEST_LOWER_BOUND);let o;if(this._wasm.withMappingCallback(l=>o=l,()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),n.source,n.originalLine-1,n.originalColumn,a)}),o&&o.source===n.source){let l=o.lastGeneratedColumn;return this._computedColumnSpans&&l===null&&(l=1/0),{line:Kd.getArg(o,"generatedLine",null),column:Kd.getArg(o,"generatedColumn",null),lastColumn:l}}return{line:null,column:null,lastColumn:null}}};_xe.prototype.consumer=qv;CNt.BasicSourceMapConsumer=_xe;var mNt=class extends qv{constructor(t,r){return super(o5r).then(n=>{let a=t;typeof t=="string"&&(a=Kd.parseSourceMapInput(t));let o=Kd.getArg(a,"version"),l=Kd.getArg(a,"sections");if(o!=n._version)throw new Error("Unsupported version: "+o);n._sources=new hNt,n._names=new hNt,n.__generatedMappings=null,n.__originalMappings=null,n.__generatedMappingsUnsorted=null,n.__originalMappingsUnsorted=null;let A={line:-1,column:0};return Promise.all(l.map(f=>{if(f.url)throw new Error("Support for url field in sections not implemented.");let I=Kd.getArg(f,"offset"),C=Kd.getArg(I,"line"),b=Kd.getArg(I,"column");if(C({generatedOffset:{generatedLine:C+1,generatedColumn:b+1},consumer:N}))})).then(f=>(n._sections=f,n))})}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){let t=this._generatedMappingsUnsorted;t.sort(Kd.compareByGeneratedPositionsDeflated),this.__generatedMappings=t}_sortOriginalMappings(){let t=this._originalMappingsUnsorted;t.sort(Kd.compareByOriginalPositions),this.__originalMappings=t}get sources(){let t=[];for(let r=0;rA.push(f));for(let f=0;f= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",Kd.compareByOriginalPositions,s5r.LEAST_UPPER_BOUND);if(o>=0){let l=this._originalMappings[o];if(t.column===void 0){let A=l.originalLine;for(;l&&l.originalLine===A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Kd.getArg(l,"generatedLine",null),column:Kd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}else{let A=l.originalColumn;for(;l&&l.originalLine===r&&l.originalColumn==A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Kd.getArg(l,"generatedLine",null),column:Kd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}}return a}destroy(){for(let t=0;t{var pel=r5r().SourceMapGenerator,_Nt=R8e(),fel=/(\r?\n)/,Iel=10,yxe="$$$isSourceNode$$$",a5r=class e{constructor(t,r,n,a,o){this.children=[],this.sourceContents={},this.line=t??null,this.column=r??null,this.source=n??null,this.name=o??null,this[yxe]=!0,a!=null&&this.add(a)}static fromStringWithSourceMap(t,r,n){let a=new e,o=t.split(fel),l=0,A=function(){let N=F(),B=F()||"";return N+B;function F(){return l=0;r--)this.prepend(t[r]);else if(t[yxe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this}walk(t){let r;for(let n=0,a=this.children.length;n0){for(r=[],n=0;n{yNt.SourceMapGenerator=r5r().SourceMapGenerator;yNt.SourceMapConsumer=uqi().SourceMapConsumer;yNt.SourceNode=Aqi().SourceNode});var Iqi=H(bNt=>{"use strict";Object.defineProperty(bNt,"__esModule",{value:!0});bNt.templateParser=fqi;bNt.template=Eel;var uL=dqi(),hel=/<%=([\s\S]+?)%>/g,mel=/<%#([\s\S]+?)%>/g,Cel=/<%-([\s\S]+?)%>/g,_el=/<%([\s\S]+?)%>/g,c5r={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},pqi=new RegExp(`[${Object.keys(c5r).join("")}]`,"g");function bxe(e,t){let r=1,n=0;for(let a=0;aC.source).join("|")+"|$","g"),o=e.split(a),l=0,A=bxe(e,l),f,I=n.length+1;for(let C=0;C{let b="";switch(C.kind){case"content":b=[new lL.SourceNode(C.start.line,C.start.column,r,"__p = __p"),...C.content.split(` -`).map((E,N,B)=>new lL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,` +`])),l=e.children.length?e.children[e.children.length-1].end:{line:0,column:0},f=e.children.reduce((I,C)=>{let b="";switch(C.kind){case"content":b=[new uL.SourceNode(C.start.line,C.start.column,r,"__p = __p"),...C.content.split(` +`).map((E,N,B)=>new uL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,` + `+JSON.stringify(E+(N==B.length-1?"":` -`)))),new lL.SourceNode(C.end.line,C.end.column,r,`; -`)];break;case"interpolate":b=[new lL.SourceNode(C.start.line,C.start.column,r,"__p += ((__t = "),...C.expression.split(` -`).map((E,N,B)=>new lL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` -`))),new lL.SourceNode(C.end.line,C.end.column,r,`) == null ? "" : __t); -`)];break;case"escape":b=[new lL.SourceNode(C.start.line,C.start.column,r,"__p += __e("),...C.expression.split(` -`).map((E,N,B)=>new lL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` -`))),new lL.SourceNode(C.end.line,C.end.column,r,`); +`)))),new uL.SourceNode(C.end.line,C.end.column,r,`; +`)];break;case"interpolate":b=[new uL.SourceNode(C.start.line,C.start.column,r,"__p += ((__t = "),...C.expression.split(` +`).map((E,N,B)=>new uL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` +`))),new uL.SourceNode(C.end.line,C.end.column,r,`) == null ? "" : __t); +`)];break;case"escape":b=[new uL.SourceNode(C.start.line,C.start.column,r,"__p += __e("),...C.expression.split(` +`).map((E,N,B)=>new uL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` +`))),new uL.SourceNode(C.end.line,C.end.column,r,`); `)];break;case"evaluate":b=[...C.expression.split(` -`).map((E,N,B)=>new lL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` -`))),new lL.SourceNode(C.end.line,C.end.column,r,` -`)];break}return I.add(new lL.SourceNode(C.start.line,C.start.column,r,b))},o).add(new lL.SourceNode(l.line,l.column,r,[` }; +`).map((E,N,B)=>new uL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` +`))),new uL.SourceNode(C.end.line,C.end.column,r,` +`)];break}return I.add(new uL.SourceNode(C.start.line,C.start.column,r,b))},o).add(new uL.SourceNode(l.line,l.column,r,[` }; `,` `,` return __p; `,`} `])).toStringWithSourceMap({file:r,sourceRoot:t&&t.sourceRoot||"."});return f.map.setSourceContent(r,e.content),f.code+` -//# sourceMappingURL=data:application/json;base64,`+Buffer.from(f.map.toString()).toString("base64")}function B$c(e,t){let r=t&&t.sourceURL||"ejs",n=pqi(e,r),a;t&&t.sourceMap?a=v$c(n,t):a=S$c(n,t);let o=Function("module",a),l=t&&t.module?t.module===!0?{exports:{}}:t.module:null,A=o(l);return A.source=a,A}});var hqi=H(tue=>{"use strict";Object.defineProperty(tue,"__esModule",{value:!0});tue.PartiallyOrderedSet=tue.CircularDependencyFoundException=tue.DependencyNotFoundException=void 0;var Iqi=_te(),ENt=class extends Iqi.BaseException{constructor(){super("One of the dependencies is not part of the set.")}};tue.DependencyNotFoundException=ENt;var G8e=class extends Iqi.BaseException{constructor(){super("Circular dependencies found.")}};tue.CircularDependencyFoundException=G8e;var n5r=class{_items=new Map;_checkCircularDependencies(t,r){if(r.has(t))throw new G8e;r.forEach(n=>this._checkCircularDependencies(t,this._items.get(n)||new Set))}clear(){this._items.clear()}has(t){return this._items.has(t)}get size(){return this._items.size}forEach(t,r){for(let n of this)t.call(r,n,n,this)}*entries(){for(let t of this)yield[t,t]}keys(){return this.values()}values(){return this[Symbol.iterator]()}add(t,r=new Set){if(Array.isArray(r)&&(r=new Set(r)),this._items.has(t)){let n=this._items.get(t)||new Set,a=!0;for(let o of r)if(!n.has(o)){a=!1;break}if(a){for(let o of n)if(!r.has(o)){a=!1;break}}if(a)return this;this._items.delete(t)}for(let n of r)if(!this._items.has(n))throw new ENt;return this._checkCircularDependencies(t,r),this._items.set(t,new Set(r)),this}delete(t){return this._items.has(t)?(this._items.forEach(r=>r.delete(t)),this._items.delete(t)):!1}*[Symbol.iterator](){let t=new Map(this._items);for(let[r,n]of t.entries())t.set(r,new Set(n));for(;t.size>0;){let r=[];for(let[n,a]of t.entries())a.size==0&&r.push(n);for(let n of r)t.forEach(a=>a.delete(n)),t.delete(n),yield n;if(r.length==0)throw new G8e}}get[Symbol.toStringTag](){return"Set"}};tue.PartiallyOrderedSet=n5r});var mqi=H(SNt=>{"use strict";Object.defineProperty(SNt,"__esModule",{value:!0});SNt.PriorityQueue=void 0;var i5r=class{_comparator;_items=new Array;constructor(t){this._comparator=t}clear(){this._items=new Array}push(t){let r=this._items.findIndex(n=>this._comparator(t,n)<=0);r===-1?this._items.push(t):this._items.splice(r,0,t)}pop(){if(this._items.length!==0)return this._items.splice(0,1)[0]}peek(){if(this._items.length!==0)return this._items[0]}get size(){return this._items.length}toArray(){return this._items.slice()}};SNt.PriorityQueue=i5r});var Cqi=H(s5r=>{"use strict";Object.defineProperty(s5r,"__esModule",{value:!0});s5r.isPromise=w$c;function w$c(e){return!!e&&typeof e.then=="function"}});var o5r=H(WR=>{"use strict";var _qi=WR&&WR.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),T$c=WR&&WR.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),yqi=WR&&WR.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(vNt,"__esModule",{value:!0});vNt.visitJson=D$c;vNt.visitJsonSchema=k$c;var qG=tE(),rue=bVr();function bqi(e,t){if(!(typeof e!="object"||e===null)){if(typeof e.properties=="object"||e.type=="object")return typeof e.properties=="object"&&typeof e.properties[t]=="object"?e.properties[t]:typeof e.additionalProperties=="object"?e.additionalProperties:void 0;if(typeof e.items=="object"||e.type=="array")return typeof e.items=="object"?e.items:void 0}}function a5r(e,t,r,n,a,o,l){if((n===!0||n===!1)&&(n=void 0),n&&n.hasOwnProperty("$ref")&&typeof n.$ref=="string"&&a){let f=a(n.$ref,o);n=f.schema,o=f.context}let A=t(e,r,n,l);return((0,qG.isObservable)(A)?A:(0,qG.of)(A)).pipe((0,qG.concatMap)(f=>Array.isArray(f)?(0,qG.concat)((0,qG.from)(f).pipe((0,qG.mergeMap)((I,C)=>a5r(I,t,(0,rue.joinJsonPointer)(r,""+C),bqi(n,""+C),a,o,l||f).pipe((0,qG.tap)(b=>f[C]=b))),(0,qG.ignoreElements)()),(0,qG.of)(f)):typeof f=="object"&&f!==null?(0,qG.concat)((0,qG.from)(Object.getOwnPropertyNames(f)).pipe((0,qG.mergeMap)(I=>a5r(f[I],t,(0,rue.joinJsonPointer)(r,I),bqi(n,I),a,o,l||f).pipe((0,qG.tap)(C=>{let b=Object.getOwnPropertyDescriptor(f,I);b&&b.writable&&f[I]!==C&&(f[I]=C)}))),(0,qG.ignoreElements)()),(0,qG.of)(f)):(0,qG.of)(f)))}function D$c(e,t,r,n,a){return a5r(e,t,(0,rue.buildJsonPointer)([]),r,n,a)}function k$c(e,t){if(e===!1||e===!0)return;let r={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},n={items:!0,allOf:!0,anyOf:!0,oneOf:!0},a={definitions:!0,properties:!0,patternProperties:!0,additionalProperties:!0,dependencies:!0,items:!0};function o(l,A,f,I,C){if(l&&typeof l=="object"&&!Array.isArray(l)){t(l,A,I,C);for(let b of Object.keys(l)){let E=l[b];if(b in a){if(E&&typeof E=="object")for(let N of Object.keys(E))o(E[N],(0,rue.joinJsonPointer)(A,b,N),f,l,N)}else if(b in r)o(E,(0,rue.joinJsonPointer)(A,b),f,l,b);else if(b in n){if(Array.isArray(E))for(let N=0;N{"use strict";var x$c=XV&&XV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),G$c=XV&&XV.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),d5r=XV&&XV.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(rue,"__esModule",{value:!0});rue.PartiallyOrderedSet=rue.CircularDependencyFoundException=rue.DependencyNotFoundException=void 0;var hqi=yte(),ENt=class extends hqi.BaseException{constructor(){super("One of the dependencies is not part of the set.")}};rue.DependencyNotFoundException=ENt;var x8e=class extends hqi.BaseException{constructor(){super("Circular dependencies found.")}};rue.CircularDependencyFoundException=x8e;var l5r=class{_items=new Map;_checkCircularDependencies(t,r){if(r.has(t))throw new x8e;r.forEach(n=>this._checkCircularDependencies(t,this._items.get(n)||new Set))}clear(){this._items.clear()}has(t){return this._items.has(t)}get size(){return this._items.size}forEach(t,r){for(let n of this)t.call(r,n,n,this)}*entries(){for(let t of this)yield[t,t]}keys(){return this.values()}values(){return this[Symbol.iterator]()}add(t,r=new Set){if(Array.isArray(r)&&(r=new Set(r)),this._items.has(t)){let n=this._items.get(t)||new Set,a=!0;for(let o of r)if(!n.has(o)){a=!1;break}if(a){for(let o of n)if(!r.has(o)){a=!1;break}}if(a)return this;this._items.delete(t)}for(let n of r)if(!this._items.has(n))throw new ENt;return this._checkCircularDependencies(t,r),this._items.set(t,new Set(r)),this}delete(t){return this._items.has(t)?(this._items.forEach(r=>r.delete(t)),this._items.delete(t)):!1}*[Symbol.iterator](){let t=new Map(this._items);for(let[r,n]of t.entries())t.set(r,new Set(n));for(;t.size>0;){let r=[];for(let[n,a]of t.entries())a.size==0&&r.push(n);for(let n of r)t.forEach(a=>a.delete(n)),t.delete(n),yield n;if(r.length==0)throw new x8e}}get[Symbol.toStringTag](){return"Set"}};rue.PartiallyOrderedSet=l5r});var Cqi=H(SNt=>{"use strict";Object.defineProperty(SNt,"__esModule",{value:!0});SNt.PriorityQueue=void 0;var u5r=class{_comparator;_items=new Array;constructor(t){this._comparator=t}clear(){this._items=new Array}push(t){let r=this._items.findIndex(n=>this._comparator(t,n)<=0);r===-1?this._items.push(t):this._items.splice(r,0,t)}pop(){if(this._items.length!==0)return this._items.splice(0,1)[0]}peek(){if(this._items.length!==0)return this._items[0]}get size(){return this._items.length}toArray(){return this._items.slice()}};SNt.PriorityQueue=u5r});var _qi=H(g5r=>{"use strict";Object.defineProperty(g5r,"__esModule",{value:!0});g5r.isPromise=Sel;function Sel(e){return!!e&&typeof e.then=="function"}});var A5r=H(PR=>{"use strict";var yqi=PR&&PR.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),vel=PR&&PR.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bqi=PR&&PR.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(vNt,"__esModule",{value:!0});vNt.visitJson=Tel;vNt.visitJsonSchema=Rel;var $G=rE(),nue=TVr();function Eqi(e,t){if(!(typeof e!="object"||e===null)){if(typeof e.properties=="object"||e.type=="object")return typeof e.properties=="object"&&typeof e.properties[t]=="object"?e.properties[t]:typeof e.additionalProperties=="object"?e.additionalProperties:void 0;if(typeof e.items=="object"||e.type=="array")return typeof e.items=="object"?e.items:void 0}}function d5r(e,t,r,n,a,o,l){if((n===!0||n===!1)&&(n=void 0),n&&n.hasOwnProperty("$ref")&&typeof n.$ref=="string"&&a){let f=a(n.$ref,o);n=f.schema,o=f.context}let A=t(e,r,n,l);return((0,$G.isObservable)(A)?A:(0,$G.of)(A)).pipe((0,$G.concatMap)(f=>Array.isArray(f)?(0,$G.concat)((0,$G.from)(f).pipe((0,$G.mergeMap)((I,C)=>d5r(I,t,(0,nue.joinJsonPointer)(r,""+C),Eqi(n,""+C),a,o,l||f).pipe((0,$G.tap)(b=>f[C]=b))),(0,$G.ignoreElements)()),(0,$G.of)(f)):typeof f=="object"&&f!==null?(0,$G.concat)((0,$G.from)(Object.getOwnPropertyNames(f)).pipe((0,$G.mergeMap)(I=>d5r(f[I],t,(0,nue.joinJsonPointer)(r,I),Eqi(n,I),a,o,l||f).pipe((0,$G.tap)(C=>{let b=Object.getOwnPropertyDescriptor(f,I);b&&b.writable&&f[I]!==C&&(f[I]=C)}))),(0,$G.ignoreElements)()),(0,$G.of)(f)):(0,$G.of)(f)))}function Tel(e,t,r,n,a){return d5r(e,t,(0,nue.buildJsonPointer)([]),r,n,a)}function Rel(e,t){if(e===!1||e===!0)return;let r={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},n={items:!0,allOf:!0,anyOf:!0,oneOf:!0},a={definitions:!0,properties:!0,patternProperties:!0,additionalProperties:!0,dependencies:!0,items:!0};function o(l,A,f,I,C){if(l&&typeof l=="object"&&!Array.isArray(l)){t(l,A,I,C);for(let b of Object.keys(l)){let E=l[b];if(b in a){if(E&&typeof E=="object")for(let N of Object.keys(E))o(E[N],(0,nue.joinJsonPointer)(A,b,N),f,l,N)}else if(b in r)o(E,(0,nue.joinJsonPointer)(A,b),f,l,b);else if(b in n){if(Array.isArray(E))for(let N=0;N{"use strict";var Nel=JV&&JV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Del=JV&&JV.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),C5r=JV&&JV.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=`Data path ${JSON.stringify(n.instancePath)} ${n.message}`;if(n.params)switch(n.keyword){case"additionalProperties":a+=`(${n.params.additionalProperty})`;break;case"enum":a+=`. Allowed values are: ${n.params.allowedValues?.map(o=>`"${o}"`).join(", ")}`;break}return a+"."})}};XV.SchemaValidationException=g5r;var A5r=class e{_ajv;_uriCache=new Map;_uriHandlers=new Set;_pre=new u5r.PartiallyOrderedSet;_post=new u5r.PartiallyOrderedSet;_currentCompilationSchemaInfo;_smartDefaultKeyword=!1;_promptProvider;_sourceMap=new Map;constructor(t=[]){this._ajv=new l5r.default({strict:!1,loadSchema:r=>this._fetch(r),passContext:!0}),(0,F$c.default)(this._ajv);for(let r of t)this.addFormat(r)}async _fetch(t){let r=this._uriCache.get(t);if(r)return r;for(let n of this._uriHandlers){let a=n(t);if(a==null)continue;(0,bte.isObservable)(a)&&(a=(0,bte.lastValueFrom)(a));let o=await a;return this._uriCache.set(t,o),o}return new Promise((n,a)=>{let o=new Eqi.URL(t);(o.protocol==="https:"?L$c:Z$c).get(o,A=>{if(!A.statusCode||A.statusCode>=300)A.resume(),a(new Error(`Request failed. Status Code: ${A.statusCode}`));else{A.setEncoding("utf8");let f="";A.on("data",I=>{f+=I}),A.on("end",()=>{try{let I=JSON.parse(f);this._uriCache.set(t,I),n(I)}catch(I){a(I)}})}})})}addPreTransform(t,r){this._pre.add(t,r)}addPostTransform(t,r){this._post.add(t,r)}_resolver(t,r){if(!r||!t)return{};let n=r.schemaEnv.root.schema,a=typeof n=="object"?n.$id:null,o=t;typeof a=="string"&&(o=Eqi.resolve(a,t),t.startsWith("#")&&(o=a+o));let l=this._ajv.getSchema(o);return{context:l?.schemaEnv.validate,schema:l?.schema}}async \u0275flatten(t){this._ajv.removeSchema(t),this._currentCompilationSchemaInfo=void 0;let r=await this._ajv.compileAsync(t),n=this;function a(l,A,f,I){if(l&&f&&I&&(0,W$c.isJsonObject)(l)&&Object.prototype.hasOwnProperty.call(l,"$ref")&&typeof l.$ref=="string"){let C=n._resolver(l.$ref,r);C.schema&&(f[I]=C.schema)}}let o=(0,u5r.deepCopy)(r.schema);return(0,BNt.visitJsonSchema)(o,a),o}async compile(t){let r=await this._compile(t);return(n,a)=>r(n,a)}async _compile(t){if(typeof t=="boolean")return async a=>({success:t,data:a});let r={smartDefaultRecord:new Map,promptDefinitions:[]};this._ajv.removeSchema(t);let n;try{this._currentCompilationSchemaInfo=r,n=this._ajv.compile(t)}catch(a){if(!(a instanceof l5r.default.MissingRefError))throw a;n=await this._ajv.compileAsync(t)}finally{this._currentCompilationSchemaInfo=void 0}return async(a,o)=>{let l={withPrompts:!0,applyPostTransforms:!0,applyPreTransforms:!0,...o},A={promptFieldsWithValue:new Set};if(l.applyPreTransforms)for(let f of this._pre.values())a=await(0,bte.lastValueFrom)((0,BNt.visitJson)(a,f,t,this._resolver.bind(this),n));if(await this._applySmartDefaults(a,r.smartDefaultRecord),l.withPrompts){let f=(C,b)=>(C!==void 0&&A.promptFieldsWithValue.add(b),C);typeof t=="object"&&await(0,bte.lastValueFrom)((0,BNt.visitJson)(a,f,t,this._resolver.bind(this),n));let I=r.promptDefinitions.filter(C=>!A.promptFieldsWithValue.has(C.id));I.length>0&&await this._applyPrompts(a,I)}try{let f=await n.call(A,a);if(!f)return{data:a,success:f,errors:n.errors??[]}}catch(f){if(f instanceof l5r.default.ValidationError)return{data:a,success:!1,errors:f.errors};throw f}if(l.applyPostTransforms)for(let f of this._post.values())a=await(0,bte.lastValueFrom)((0,BNt.visitJson)(a,f,t,this._resolver.bind(this),n));return{data:a,success:!0}}}addFormat(t){this._ajv.addFormat(t.name,t.formatter)}addSmartDefaultProvider(t,r){if(this._sourceMap.has(t))throw new Error(t);this._sourceMap.set(t,r),this._smartDefaultKeyword||(this._smartDefaultKeyword=!0,this._ajv.addKeyword({keyword:"$default",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(l===void 0)return()=>!0;let A=this.normalizeDataPathArr(o);return l.smartDefaultRecord.set(JSON.stringify(A),n),()=>!0},metaSchema:{type:"object",properties:{$source:{type:"string"}},additionalProperties:!0,required:["$source"]}}))}registerUriHandler(t){this._uriHandlers.add(t)}usePromptProvider(t){let r=!!this._promptProvider;this._promptProvider=t,!r&&this._ajv.addKeyword({keyword:"x-prompt",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(!l)return()=>!0;let A="/"+this.normalizeDataPathArr(o).join("/"),f,I,C;typeof n=="string"?C=n:(C=n.message,f=n.type,I=n.items);let b=(0,O$c.getTypesOfSchema)(a);f||(b.size===1&&b.has("boolean")?f="confirmation":Array.isArray(a.enum)||b.size===1&&b.has("array")&&a.items&&Array.isArray(a.items.enum)?f="list":f="input");let E;if(f==="list"){E=n.multiselect===void 0?b.size===1&&b.has("array"):n.multiselect;let B=E?a.items&&a.items.enum:a.enum;if(!I&&Array.isArray(B)){I=[];for(let F of B)typeof F=="string"?I.push(F):typeof F=="object"||I.push({label:F.toString(),value:F})}}let N={id:A,type:f,message:C,raw:n,items:I,multiselect:E,propertyTypes:b,default:typeof a.default=="object"&&a.default!==null&&!Array.isArray(a.default)?void 0:a.default,async validator(B){try{let F=await o.self.validate(a,B);if(F)return F;if(o.self.errors?.length)return o.self.errors[0].message}catch(F){let Q=F;if(Array.isArray(Q.errors)&&Q.errors.length)return Q.errors[0].message}return!1}};return l.promptDefinitions.push(N),function(){return this&&this.promptFieldsWithValue&&this.promptFieldsWithValue.add(A),!0}},metaSchema:{oneOf:[{type:"string"},{type:"object",properties:{type:{type:"string"},message:{type:"string"}},additionalProperties:!0,required:["message"]}]}})}async _applyPrompts(t,r){let n=this._promptProvider;if(!n)return;let a=await(0,bte.lastValueFrom)((0,bte.from)(n(r)));for(let o in a){let l=o.split("/").slice(1);e._set(t,l,a[o],null,void 0,!0)}}static _set(t,r,n,a=null,o,l){for(let A=0;A(r&&t(`Option "${o?.parentDataProperty}" is deprecated${typeof r=="string"?": "+r:"."}`),!0),errors:!1})}normalizeDataPathArr(t){return t.dataPathArr.slice(1,t.dataLevel+1).map(r=>typeof r=="number"?r:r.str.replace(/"/g,""))}};XV.CoreSchemaRegistry=A5r});var Bqi=H(wNt=>{"use strict";Object.defineProperty(wNt,"__esModule",{value:!0});wNt.isJsonSchema=M$c;wNt.mergeSchemas=H$c;var P$c=d_e();function M$c(e){return(0,P$c.isJsonObject)(e)||e===!1||e===!0}function H$c(...e){return e.reduce((t,r)=>r===void 0?t:t===!1||r===!1?!1:t===!0?r:r===!0?t:Array.isArray(t.allOf)?Array.isArray(r.allOf)?{...t,allOf:[...t.allOf,...r.allOf]}:{...t,allOf:[...t.allOf,r]}:Array.isArray(r.allOf)?{...t,allOf:[t,...r.allOf]}:{...t,allOf:[t,r]},!0)}});var Tqi=H(yD=>{"use strict";var wqi=yD&&yD.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Y$c=yD&&yD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Q$c=yD&&yD.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var Rqi=FP&&FP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),J$c=FP&&FP.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),U$c=FP&&FP.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(RNt,"__esModule",{value:!0});RNt.Logger=void 0;var p5r=tE(),f5r=class extends p5r.Observable{name;parent;_subject=new p5r.Subject;_metadata;_obs=p5r.EMPTY;_subscription=null;get _observable(){return this._obs}set _observable(t){this._subscription&&this._subscription.unsubscribe(),this._obs=t,this.parent&&(this._subscription=this.subscribe(r=>{this.parent&&this.parent._subject.next(r)},r=>{this.parent&&this.parent._subject.error(r)},()=>{this._subscription&&this._subscription.unsubscribe(),this._subscription=null}))}constructor(t,r=null){super(),this.name=t,this.parent=r;let n=[],a=r;for(;a;)n.push(a.name),a=a.parent;this._metadata={name:t,path:n},this._observable=this._subject.asObservable(),this.parent&&this.parent._subject&&this.parent._subject.subscribe(void 0,void 0,()=>this.complete())}asApi(){return{createChild:t=>this.createChild(t),log:(t,r,n)=>this.log(t,r,n),debug:(t,r)=>this.debug(t,r),info:(t,r)=>this.info(t,r),warn:(t,r)=>this.warn(t,r),error:(t,r)=>this.error(t,r),fatal:(t,r)=>this.fatal(t,r)}}createChild(t){return new this.constructor(t,this)}complete(){this._subject.complete()}log(t,r,n={}){let a=Object.assign({},n,this._metadata,{level:t,message:r,timestamp:+Date.now()});this._subject.next(a)}next(t){this._subject.next(t)}debug(t,r={}){return this.log("debug",t,r)}info(t,r={}){return this.log("info",t,r)}warn(t,r={}){return this.log("warn",t,r)}error(t,r={}){return this.log("error",t,r)}fatal(t,r={}){return this.log("fatal",t,r)}toString(){return``}lift(t){return this._observable.lift(t)}subscribe(t,r,n){return this._observable.subscribe.apply(this._observable,arguments)}forEach(t,r=Promise){return this._observable.forEach(t,r)}};RNt.Logger=f5r});var Nqi=H(NNt=>{"use strict";Object.defineProperty(NNt,"__esModule",{value:!0});NNt.IndentLogger=void 0;var z$c=tE(),q$c=Sxe(),I5r={},h5r=class extends q$c.Logger{constructor(t,r=null,n=" "){super(t,r),I5r[n]=I5r[n]||[""];let a=I5r[n];this._observable=this._observable.pipe((0,z$c.map)(o=>{let l=o.path.filter(A=>!!A).length;if(l>=a.length){let A=a[a.length-1];for(;l>=a.length;)A+=n,a.push(A)}return o.message=a[l]+o.message.split(/\n/).join(` -`+a[l]),o}))}};NNt.IndentLogger=h5r});var Dqi=H(vxe=>{"use strict";Object.defineProperty(vxe,"__esModule",{value:!0});vxe.LevelCapLogger=vxe.LevelTransformLogger=void 0;var $$c=Sxe(),DNt=class e extends $$c.Logger{name;parent;levelTransform;constructor(t,r=null,n){super(t,r),this.name=t,this.parent=r,this.levelTransform=n}log(t,r,n={}){return super.log(this.levelTransform(t),r,n)}createChild(t){return new e(t,this,this.levelTransform)}};vxe.LevelTransformLogger=DNt;var m5r=class e extends DNt{name;parent;levelCap;static levelMap={debug:{debug:"debug",info:"debug",warn:"debug",error:"debug",fatal:"debug"},info:{debug:"debug",info:"info",warn:"info",error:"info",fatal:"info"},warn:{debug:"debug",info:"info",warn:"warn",error:"warn",fatal:"warn"},error:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"error"},fatal:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"fatal"}};constructor(t,r=null,n){super(t,r,a=>e.levelMap[n][a]||a),this.name=t,this.parent=r,this.levelCap=n}};vxe.LevelCapLogger=m5r});var kqi=H(kNt=>{"use strict";Object.defineProperty(kNt,"__esModule",{value:!0});kNt.NullLogger=void 0;var eel=tE(),tel=Sxe(),C5r=class e extends tel.Logger{constructor(t=null){super("",t),this._observable=eel.EMPTY}asApi(){return{createChild:()=>new e(this),log(){},debug(){},info(){},warn(){},error(){},fatal(){}}}};kNt.NullLogger=C5r});var xqi=H(xNt=>{"use strict";Object.defineProperty(xNt,"__esModule",{value:!0});xNt.TransformLogger=void 0;var rel=Sxe(),_5r=class extends rel.Logger{constructor(t,r,n=null){super(t,n),this._observable=r(this._observable)}};xNt.TransformLogger=_5r});var Gqi=H(O4=>{"use strict";var nel=O4&&O4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Z8e=O4&&O4.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&nel(t,e,r)};Object.defineProperty(O4,"__esModule",{value:!0});Z8e(Nqi(),O4);Z8e(Dqi(),O4);Z8e(Sxe(),O4);Z8e(kqi(),O4);Z8e(xqi(),O4)});var b5r=H(Bxe=>{"use strict";Object.defineProperty(Bxe,"__esModule",{value:!0});Bxe.TargetDefinitionCollection=Bxe.ProjectDefinitionCollection=void 0;var GNt=class{_listener;_map;constructor(t,r){this._listener=r,this._map=new Map(t&&Object.entries(t))}delete(t){let r=this._map.delete(t);return r&&this._listener?.(t,void 0,this),r}set(t,r){return r!==this.get(t)&&(this._map.set(t,r),this._listener?.(t,r,this)),this}forEach(t,r){this._map.forEach((n,a)=>t(n,a,this),r)}get(t){return this._map.get(t)}has(t){return this._map.has(t)}get size(){return this._map.size}[Symbol.iterator](){return this._map[Symbol.iterator]()}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.values()}};function Fqi(e){let t=new Set;switch(typeof e){case"boolean":case"number":case"string":return!0;case"object":if(e===null)return!0;t.add(e);for(let r of Object.values(e))if(!(typeof e=="object"&&t.has(r))&&!Fqi(r))return!1;return!0;default:return!1}}var y5r=class extends GNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Project name already exists.");this._validateName(t.name);let r={root:t.root,prefix:t.prefix,sourceRoot:t.sourceRoot,targets:new FNt,extensions:{}};if(t.targets)for(let[n,a]of Object.entries(t.targets))a&&r.targets.set(n,a);for(let[n,a]of Object.entries(t))switch(n){case"name":case"root":case"sourceRoot":case"prefix":case"targets":break;default:if(Fqi(a))r.extensions[n]=a;else throw new TypeError(`"${n}" must be a JSON value.`);break}return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string"||!/^(?:@\w[\w.-]*\/)?\w[\w.-]*$/.test(t))throw new Error("Project name must be a valid npm package name.")}};Bxe.ProjectDefinitionCollection=y5r;var FNt=class extends GNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Target name already exists.");this._validateName(t.name);let r={builder:t.builder,options:t.options,configurations:t.configurations,defaultConfiguration:t.defaultConfiguration};return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string")throw new TypeError("Target name must be a string.")}};Bxe.TargetDefinitionCollection=FNt});var wxe=H(VI=>{"use strict";Object.defineProperty(VI,"__esModule",{value:!0});VI.path=VI.NormalizedRoot=VI.NormalizedSep=VI.PathCannotBeFragmentException=VI.PathMustBeAbsoluteException=VI.InvalidPathException=void 0;VI.split=E5r;VI.extname=iel;VI.basename=Zqi;VI.dirname=sel;VI.join=Lqi;VI.isAbsolute=VNt;VI.relative=oel;VI.resolve=ael;VI.fragment=WNt;VI.resetNormalizeCache=cel;VI.normalize=V8e;VI.noCacheNormalize=Vqi;VI.asWindowsPath=Wqi;VI.asPosixPath=uel;VI.getSystemPath=gel;var v5r=_te(),ZNt=class extends v5r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} is invalid.`)}};VI.InvalidPathException=ZNt;var L8e=class extends v5r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} must be absolute.`)}};VI.PathMustBeAbsoluteException=L8e;var LNt=class extends v5r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} cannot be made a fragment.`)}};VI.PathCannotBeFragmentException=LNt;VI.NormalizedSep="/";VI.NormalizedRoot=VI.NormalizedSep;function E5r(e){let t=e.split(VI.NormalizedSep).map(r=>WNt(r));return t[t.length-1].length===0&&t.pop(),t}function iel(e){let t=Zqi(e),r=t.lastIndexOf(".");return r<1?"":t.slice(r)}function Zqi(e){return e.lastIndexOf(VI.NormalizedSep)==-1?WNt(e):WNt(e.slice(e.lastIndexOf(VI.NormalizedSep)+1))}function sel(e){let t=e.lastIndexOf(VI.NormalizedSep);if(t===-1)return"";let r=t===0?1:t;return V8e(e.slice(0,r))}function Lqi(e,...t){return t.length>0?V8e((e?e+VI.NormalizedSep:"")+t.join(VI.NormalizedSep)):e}function VNt(e){return e.startsWith(VI.NormalizedSep)}function oel(e,t){if(!VNt(e))throw new L8e(e);if(!VNt(t))throw new L8e(t);let r;if(e==t)r="";else{let n=E5r(e),a=E5r(t);for(;n.length>0&&a.length>0&&n[0]==a[0];)n.shift(),a.shift();n.length==0?r=a.join(VI.NormalizedSep):r=n.map(()=>"..").concat(a).join(VI.NormalizedSep)}return V8e(r)}function ael(e,t){return VNt(t)?t:Lqi(e,t)}function WNt(e){if(e.indexOf(VI.NormalizedSep)!=-1)throw new LNt(e);return e}var S5r=new Map;function cel(){S5r=new Map}function V8e(e){let t=S5r.get(e);return t||(t=Vqi(e),S5r.set(e,t)),t}function Vqi(e){if(e==""||e==".")return"";if(e==VI.NormalizedRoot)return VI.NormalizedRoot;let t=e;e.match(/^[A-Z]:[/\\]/i)&&(e="\\"+e[0].toUpperCase()+"\\"+e.slice(3));let r=e.split(/[/\\]/g),n=!1,a=1;for(r[0]!=""&&(r.unshift("."),n=!0);a=2&&r[a-1]!=".."?(r.splice(a-1,2),a--):a++}else r[a]==""?r.splice(a,1):a++;return r.length==1?r[0]==""?VI.NormalizedSep:"":(r[0]=="."&&r.shift(),r.join(VI.NormalizedSep))}var lel=(e,...t)=>V8e(String.raw(e,...t));VI.path=lel;function Wqi(e){let t=e.match(/^\/(\w)(?:\/(.*))?$/);if(t){let r=t[2]?t[2].replace(/\//g,"\\"):"";return`${t[1]}:\\${r}`}return e.replace(/\//g,"\\")}function uel(e){return e}function gel(e){return process.platform.startsWith("win32")?Wqi(e):e}});var B5r=H(ONt=>{"use strict";Object.defineProperty(ONt,"__esModule",{value:!0});ONt.stringToFileBuffer=Ael;ONt.fileBufferToString=del;var Oqi=Et("node:util");function Ael(e){return new Oqi.TextEncoder().encode(e).buffer}function del(e){return e.toString.length===1?e.toString("utf-8"):new Oqi.TextDecoder("utf-8").decode(new Uint8Array(e))}});var w5r=H(PNt=>{"use strict";Object.defineProperty(PNt,"__esModule",{value:!0});PNt.HostWatchEventType=void 0;var Pqi;(function(e){e[e.Changed=0]="Changed",e[e.Created=1]="Created",e[e.Deleted=2]="Deleted",e[e.Renamed=3]="Renamed"})(Pqi||(PNt.HostWatchEventType=Pqi={}))});var HNt=H(MNt=>{"use strict";Object.defineProperty(MNt,"__esModule",{value:!0});MNt.SimpleMemoryHost=void 0;var cj=tE(),Ete=_te(),Aw=wxe(),Txe=w5r(),T5r=class{_cache=new Map;_watchers=new Map;_newDirStats(){return{inspect(){return""},isFile(){return!1},isDirectory(){return!0},size:0,atime:new Date,ctime:new Date,mtime:new Date,birthtime:new Date,content:null}}_newFileStats(t,r){return{inspect(){return``},isFile(){return!0},isDirectory(){return!1},size:t.byteLength,atime:r?r.atime:new Date,ctime:new Date,mtime:new Date,birthtime:r?r.birthtime:new Date,content:t}}constructor(){this._cache.set((0,Aw.normalize)("/"),this._newDirStats())}_toAbsolute(t){return(0,Aw.isAbsolute)(t)?t:(0,Aw.normalize)("/"+t)}_updateWatchers(t,r){let n=new Date,a=t,o=null;if(this._watchers.size==0)return;let l=this._watchers.get(a);l&&l.forEach(A=>{let[f,I]=A;I.next({path:t,time:n,type:r}),!f.persistent&&r==Txe.HostWatchEventType.Deleted&&(I.complete(),this._watchers.delete(a))});do{a=o!==null?o:a,o=(0,Aw.dirname)(a);let A=this._watchers.get(a);A&&A.forEach(f=>{let[I,C]=f;I.recursive&&(C.next({path:t,time:n,type:r}),!I.persistent&&r==Txe.HostWatchEventType.Deleted&&(C.complete(),this._watchers.delete(a)))})}while(o!=a)}get capabilities(){return{synchronous:!0}}_write(t,r){t=this._toAbsolute(t);let n=this._cache.get(t);if(n&&n.isDirectory())throw new Ete.PathIsDirectoryException(t);let a=(0,Aw.split)(t),o=(0,Aw.normalize)("/");for(let A of a){o=(0,Aw.join)(o,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new Ete.PathIsFileException(o)}else this._cache.set(o,this._newDirStats())}let l=this._newFileStats(r,n);this._cache.set(t,l),this._updateWatchers(t,n?Txe.HostWatchEventType.Changed:Txe.HostWatchEventType.Created)}_read(t){t=this._toAbsolute(t);let r=this._cache.get(t);if(r){if(r.isDirectory())throw new Ete.PathIsDirectoryException(t);if(r.content)return r.content;throw new Ete.PathIsDirectoryException(t)}else throw new Ete.FileDoesNotExistException(t)}_delete(t){if(t=this._toAbsolute(t),this._isDirectory(t))for(let[r]of this._cache.entries())(r.startsWith(t+Aw.NormalizedSep)||r===t)&&this._cache.delete(r);else this._cache.delete(t);this._updateWatchers(t,Txe.HostWatchEventType.Deleted)}_rename(t,r){if(t=this._toAbsolute(t),r=this._toAbsolute(r),this._cache.has(t)){if(this._cache.has(r))throw new Ete.FileAlreadyExistException(r)}else throw new Ete.FileDoesNotExistException(t);if(this._isDirectory(t)){for(let n of this._cache.keys())if(n.startsWith(t+Aw.NormalizedSep)){let a=this._cache.get(n);a&&this._cache.set((0,Aw.join)(r,Aw.NormalizedSep,n.slice(t.length)),a)}}else{let n=this._cache.get(t);if(n){let a=(0,Aw.split)(r),o=[],l=(0,Aw.normalize)("/");for(let A of a){l=(0,Aw.join)(l,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new Ete.PathIsFileException(l)}else o.push(l)}for(let A of o)this._cache.set(A,this._newDirStats());this._cache.delete(t),this._cache.set(r,n)}}this._updateWatchers(t,Txe.HostWatchEventType.Renamed)}_list(t){if(t=this._toAbsolute(t),this._isFile(t))throw new Ete.PathIsFileException(t);let r=(0,Aw.split)(t),n=new Set;if(t!==Aw.NormalizedRoot)for(let a of this._cache.keys())a.startsWith(t+Aw.NormalizedSep)&&n.add((0,Aw.split)(a)[r.length]);else for(let a of this._cache.keys())a.startsWith(Aw.NormalizedSep)&&a!==Aw.NormalizedRoot&&n.add((0,Aw.split)(a)[1]);return[...n]}_exists(t){return!!this._cache.get(this._toAbsolute(t))}_isDirectory(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isDirectory():!1}_isFile(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isFile():!1}_stat(t){let r=this._cache.get(this._toAbsolute(t));return r||null}_watch(t,r){t=this._toAbsolute(t);let n=new cj.Subject,a=this._watchers.get(t);return a||(a=[],this._watchers.set(t,a)),a.push([r||{},n]),n.asObservable()}write(t,r){return new cj.Observable(n=>{this._write(t,r),n.next(),n.complete()})}read(t){return new cj.Observable(r=>{let n=this._read(t);r.next(n),r.complete()})}delete(t){return new cj.Observable(r=>{this._delete(t),r.next(),r.complete()})}rename(t,r){return new cj.Observable(n=>{this._rename(t,r),n.next(),n.complete()})}list(t){return new cj.Observable(r=>{r.next(this._list(t)),r.complete()})}exists(t){return new cj.Observable(r=>{r.next(this._exists(t)),r.complete()})}isDirectory(t){return new cj.Observable(r=>{r.next(this._isDirectory(t)),r.complete()})}isFile(t){return new cj.Observable(r=>{r.next(this._isFile(t)),r.complete()})}stat(t){return new cj.Observable(r=>{r.next(this._stat(t)),r.complete()})}watch(t,r){return this._watch(t,r)}reset(){this._cache.clear(),this._watchers.clear()}};MNt.SimpleMemoryHost=T5r});var N5r=H(Rxe=>{"use strict";Object.defineProperty(Rxe,"__esModule",{value:!0});Rxe.SyncDelegateHost=Rxe.SynchronousDelegateExpectedException=void 0;var pel=_te(),W8e=class extends pel.BaseException{constructor(){super("Expected a synchronous delegate but got an asynchronous one.")}};Rxe.SynchronousDelegateExpectedException=W8e;var R5r=class{_delegate;constructor(t){if(this._delegate=t,!t.capabilities.synchronous)throw new W8e}_doSyncCall(t){let r=!1,n,a;if(t.subscribe(o=>n=o,o=>a=o,()=>r=!0),a!==void 0)throw a;if(!r)throw new W8e;return n}get capabilities(){return this._delegate.capabilities}get delegate(){return this._delegate}write(t,r){return this._doSyncCall(this._delegate.write(t,r))}read(t){return this._doSyncCall(this._delegate.read(t))}delete(t){return this._doSyncCall(this._delegate.delete(t))}rename(t,r){return this._doSyncCall(this._delegate.rename(t,r))}list(t){return this._doSyncCall(this._delegate.list(t))}exists(t){return this._doSyncCall(this._delegate.exists(t))}isDirectory(t){return this._doSyncCall(this._delegate.isDirectory(t))}isFile(t){return this._doSyncCall(this._delegate.isFile(t))}stat(t){let r=this._delegate.stat(t);return r?this._doSyncCall(r):null}watch(t,r){return this._delegate.watch(t,r)}};Rxe.SyncDelegateHost=R5r});var Mqi=H(YNt=>{"use strict";Object.defineProperty(YNt,"__esModule",{value:!0});YNt.TestHost=void 0;var Ste=wxe(),D5r=B5r(),fel=HNt(),Iel=N5r(),k5r=class e extends fel.SimpleMemoryHost{_records=[];_sync=null;constructor(t={}){super();for(let r of Object.getOwnPropertyNames(t))this._write((0,Ste.normalize)(r),(0,D5r.stringToFileBuffer)(t[r]))}get records(){return[...this._records]}clearRecords(){this._records=[]}get files(){let t=this.sync;function r(n){return t.list(n).map(a=>(0,Ste.join)(n,a)).reduce((a,o)=>t.isDirectory(o)?a.concat(r(o)):a.concat(o),[])}return r((0,Ste.normalize)("/"))}get sync(){return this._sync||(this._sync=new Iel.SyncDelegateHost(this)),this._sync}clone(){let t=new e;return t._cache=new Map(this._cache),t}_write(t,r){return this._records.push({kind:"write",path:t}),super._write(t,r)}_read(t){return this._records.push({kind:"read",path:t}),super._read(t)}_delete(t){return this._records.push({kind:"delete",path:t}),super._delete(t)}_rename(t,r){return this._records.push({kind:"rename",from:t,to:r}),super._rename(t,r)}_list(t){return this._records.push({kind:"list",path:t}),super._list(t)}_exists(t){return this._records.push({kind:"exists",path:t}),super._exists(t)}_isDirectory(t){return this._records.push({kind:"isDirectory",path:t}),super._isDirectory(t)}_isFile(t){return this._records.push({kind:"isFile",path:t}),super._isFile(t)}_stat(t){return this._records.push({kind:"stat",path:t}),super._stat(t)}_watch(t,r){return this._records.push({kind:"watch",path:t}),super._watch(t,r)}$write(t,r){return super._write((0,Ste.normalize)(t),(0,D5r.stringToFileBuffer)(r))}$read(t){return(0,D5r.fileBufferToString)(super._read((0,Ste.normalize)(t)))}$list(t){return super._list((0,Ste.normalize)(t))}$exists(t){return super._exists((0,Ste.normalize)(t))}$isDirectory(t){return super._isDirectory((0,Ste.normalize)(t))}$isFile(t){return super._isFile((0,Ste.normalize)(t))}};YNt.TestHost=k5r});var O8e=H(QNt=>{"use strict";Object.defineProperty(QNt,"__esModule",{value:!0});QNt.ResolverHost=void 0;var x5r=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}write(t,r){return this._delegate.write(this._resolve(t),r)}read(t){return this._delegate.read(this._resolve(t))}delete(t){return this._delegate.delete(this._resolve(t))}rename(t,r){return this._delegate.rename(this._resolve(t),this._resolve(r))}list(t){return this._delegate.list(this._resolve(t))}exists(t){return this._delegate.exists(this._resolve(t))}isDirectory(t){return this._delegate.isDirectory(this._resolve(t))}isFile(t){return this._delegate.isFile(this._resolve(t))}stat(t){return this._delegate.stat(this._resolve(t))}watch(t,r){return this._delegate.watch(this._resolve(t),r)}};QNt.ResolverHost=x5r});var Hqi=H(JNt=>{"use strict";Object.defineProperty(JNt,"__esModule",{value:!0});JNt.AliasHost=void 0;var XNt=wxe(),hel=O8e(),G5r=class extends hel.ResolverHost{_aliases=new Map;_resolve(t){let r=this._aliases.get(t),n=(0,XNt.split)(t),a=[];for(;!r&&n.length>0;){let o=(0,XNt.join)(XNt.NormalizedRoot,...n);r=this._aliases.get(o),r&&(r=(0,XNt.join)(r,...a)),a.unshift(n.pop())}return r||t}get aliases(){return this._aliases}};JNt.AliasHost=G5r});var Yqi=H(F5r=>{"use strict";Object.defineProperty(F5r,"__esModule",{value:!0});F5r.createSyncHost=Cel;var mel=tE();function vte(e){return new mel.Observable(t=>{t.next(e()),t.complete()})}function Cel(e){return new class{get capabilities(){return{synchronous:!0}}read(t){return vte(()=>e.read(t))}list(t){return vte(()=>e.list(t))}exists(t){return vte(()=>e.exists(t))}isDirectory(t){return vte(()=>e.isDirectory(t))}isFile(t){return vte(()=>e.isFile(t))}stat(t){return vte(()=>e.stat(t))}write(t,r){return vte(()=>e.write(t,r))}delete(t){return vte(()=>e.delete(t))}rename(t,r){return vte(()=>e.rename(t,r))}watch(){return null}}}});var Qqi=H(UNt=>{"use strict";Object.defineProperty(UNt,"__esModule",{value:!0});UNt.Empty=void 0;var Nxe=tE(),_el=_te(),Z5r=class{capabilities={synchronous:!0};read(t){return(0,Nxe.throwError)(new _el.FileDoesNotExistException(t))}list(t){return(0,Nxe.of)([])}exists(t){return(0,Nxe.of)(!1)}isDirectory(t){return(0,Nxe.of)(!1)}isFile(t){return(0,Nxe.of)(!1)}stat(t){return(0,Nxe.of)(null)}};UNt.Empty=Z5r});var P8e=H((DKu,jqi)=>{"use strict";var lj="\\\\/",Xqi=`[^${lj}]`,Bte="\\.",yel="\\+",bel="\\?",KNt="\\/",Eel="(?=.)",Jqi="[^/]",L5r=`(?:${KNt}|$)`,Uqi=`(?:^|${KNt})`,V5r=`${Bte}{1,2}${L5r}`,Sel=`(?!${Bte})`,vel=`(?!${Uqi}${V5r})`,Bel=`(?!${Bte}{0,1}${L5r})`,wel=`(?!${V5r})`,Tel=`[^.${KNt}]`,Rel=`${Jqi}*?`,Nel="/",Kqi={DOT_LITERAL:Bte,PLUS_LITERAL:yel,QMARK_LITERAL:bel,SLASH_LITERAL:KNt,ONE_CHAR:Eel,QMARK:Jqi,END_ANCHOR:L5r,DOTS_SLASH:V5r,NO_DOT:Sel,NO_DOTS:vel,NO_DOT_SLASH:Bel,NO_DOTS_SLASH:wel,QMARK_NO_DOT:Tel,STAR:Rel,START_ANCHOR:Uqi,SEP:Nel},Del={...Kqi,SLASH_LITERAL:`[${lj}]`,QMARK:Xqi,STAR:`${Xqi}*?`,DOTS_SLASH:`${Bte}{1,2}(?:[${lj}]|$)`,NO_DOT:`(?!${Bte})`,NO_DOTS:`(?!(?:^|[${lj}])${Bte}{1,2}(?:[${lj}]|$))`,NO_DOT_SLASH:`(?!${Bte}{0,1}(?:[${lj}]|$))`,NO_DOTS_SLASH:`(?!${Bte}{1,2}(?:[${lj}]|$))`,QMARK_NO_DOT:`[^.${lj}]`,START_ANCHOR:`(?:^|[${lj}])`,END_ANCHOR:`(?:[${lj}]|$)`,SEP:"\\"},kel={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"};jqi.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:kel,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,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?Del:Kqi}}});var M8e=H(JV=>{"use strict";var{REGEX_BACKSLASH:xel,REGEX_REMOVE_BACKSLASH:Gel,REGEX_SPECIAL_CHARS:Fel,REGEX_SPECIAL_CHARS_GLOBAL:Zel}=P8e();JV.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);JV.hasRegexChars=e=>Fel.test(e);JV.isRegexChar=e=>e.length===1&&JV.hasRegexChars(e);JV.escapeRegex=e=>e.replace(Zel,"\\$1");JV.toPosixSlashes=e=>e.replace(xel,"/");JV.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let e=navigator.platform.toLowerCase();return e==="win32"||e==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};JV.removeBackslashes=e=>e.replace(Gel,t=>t==="\\"?"":t);JV.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?JV.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};JV.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};JV.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o};JV.basename=(e,{windows:t}={})=>{let r=e.split(t?/[\\/]/:"/"),n=r[r.length-1];return n===""?r[r.length-2]:n}});var i$i=H((xKu,n$i)=>{"use strict";var zqi=M8e(),{CHAR_ASTERISK:W5r,CHAR_AT:Lel,CHAR_BACKWARD_SLASH:H8e,CHAR_COMMA:Vel,CHAR_DOT:O5r,CHAR_EXCLAMATION_MARK:P5r,CHAR_FORWARD_SLASH:r$i,CHAR_LEFT_CURLY_BRACE:M5r,CHAR_LEFT_PARENTHESES:H5r,CHAR_LEFT_SQUARE_BRACKET:Wel,CHAR_PLUS:Oel,CHAR_QUESTION_MARK:qqi,CHAR_RIGHT_CURLY_BRACE:Pel,CHAR_RIGHT_PARENTHESES:$qi,CHAR_RIGHT_SQUARE_BRACKET:Mel}=P8e(),e$i=e=>e===r$i||e===H8e,t$i=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},Hel=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,J=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),tt=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Le=f.slice(0,C),f=f.slice(C),b-=C),ze&&B===!0&&b>0?(ze=f.slice(0,b),Je=f.slice(b)):B===!0?(ze="",Je=f):ze=f,ze&&ze!==""&&ze!=="/"&&ze!==f&&e$i(ze.charCodeAt(ze.length-1))&&(ze=ze.slice(0,-1)),r.unescape===!0&&(Je&&(Je=zqi.removeBackslashes(Je)),ze&&ae===!0&&(ze=zqi.removeBackslashes(ze)));let ft={prefix:Le,input:e,start:C,base:ze,glob:Je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(ft.maxDepth=0,e$i(be)||l.push(Se),ft.tokens=l),r.parts===!0||r.tokens===!0){let lt;for(let Ot=0;Ot{"use strict";var jNt=P8e(),uj=M8e(),{MAX_LENGTH:zNt,POSIX_REGEX_SOURCE:Yel,REGEX_NON_SPECIAL_CHARS:Qel,REGEX_SPECIAL_CHARS_BACKREF:Xel,REPLACEMENTS:s$i}=jNt,Jel=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>uj.escapeRegex(a)).join("..")}return r},Dxe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,Y5r=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=s$i[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(zNt,r.maxLength):zNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=jNt.globChars(r.windows),I=jNt.extglobChars(f),{DOT_LITERAL:C,PLUS_LITERAL:b,SLASH_LITERAL:E,ONE_CHAR:N,DOTS_SLASH:B,NO_DOT:F,NO_DOT_SLASH:Q,NO_DOTS_SLASH:J,QMARK:ae,QMARK_NO_DOT:ne,STAR:ce,START_ANCHOR:fe}=f,ue=cr=>`(${A}(?:(?!${fe}${cr.dot?B:C}).)*?)`,de=r.dot?"":F,be=r.dot?ae:ne,Se=r.bash===!0?ue(r):ce;r.capture&&(Se=`(${Se})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let De={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=uj.removePrefix(e,De),a=e.length;let k=[],tt=[],ze=[],Le=o,Je,ft=()=>De.index===a-1,lt=De.peek=(cr=1)=>e[De.index+cr],Ot=De.advance=()=>e[++De.index]||"",Er=()=>e.slice(De.index+1),Sr=(cr="",Ar=0)=>{De.consumed+=cr,De.index+=Ar},jt=cr=>{De.output+=cr.output!=null?cr.output:cr.value,Sr(cr.value)},Bt=()=>{let cr=1;for(;lt()==="!"&&(lt(2)!=="("||lt(3)==="?");)Ot(),De.start++,cr++;return cr%2===0?!1:(De.negated=!0,De.start++,!0)},Dt=cr=>{De[cr]++,ze.push(cr)},Fr=cr=>{De[cr]--,ze.pop()},$t=cr=>{if(Le.type==="globstar"){let Ar=De.braces>0&&(cr.type==="comma"||cr.type==="brace"),qr=cr.extglob===!0||k.length&&(cr.type==="pipe"||cr.type==="paren");cr.type!=="slash"&&cr.type!=="paren"&&!Ar&&!qr&&(De.output=De.output.slice(0,-Le.output.length),Le.type="star",Le.value="*",Le.output=Se,De.output+=Le.output)}if(k.length&&cr.type!=="paren"&&(k[k.length-1].inner+=cr.value),(cr.value||cr.output)&&jt(cr),Le&&Le.type==="text"&&cr.type==="text"){Le.output=(Le.output||Le.value)+cr.value,Le.value+=cr.value;return}cr.prev=Le,l.push(cr),Le=cr},Xt=(cr,Ar)=>{let qr={...I[Ar],conditions:1,inner:""};qr.prev=Le,qr.parens=De.parens,qr.output=De.output;let yn=(r.capture?"(":"")+qr.open;Dt("parens"),$t({type:cr,value:Ar,output:De.output?"":N}),$t({type:"paren",extglob:!0,value:Ot(),output:yn}),k.push(qr)},lr=cr=>{let Ar=cr.close+(r.capture?")":""),qr;if(cr.type==="negate"){let yn=Se;if(cr.inner&&cr.inner.length>1&&cr.inner.includes("/")&&(yn=ue(r)),(yn!==Se||ft()||/^\)+$/.test(Er()))&&(Ar=cr.close=`)$))${yn}`),cr.inner.includes("*")&&(qr=Er())&&/^\.[^\\/.]+$/.test(qr)){let ke=Y5r(qr,{...t,fastpaths:!1}).output;Ar=cr.close=`)${ke})${yn})`}cr.prev.type==="bos"&&(De.negatedExtglob=!0)}$t({type:"paren",extglob:!0,value:Je,output:Ar}),Fr("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let cr=!1,Ar=e.replace(Xel,(qr,yn,ke,zt,Fn,Nn)=>zt==="\\"?(cr=!0,qr):zt==="?"?yn?yn+zt+(Fn?ae.repeat(Fn.length):""):Nn===0?be+(Fn?ae.repeat(Fn.length):""):ae.repeat(ke.length):zt==="."?C.repeat(ke.length):zt==="*"?yn?yn+zt+(Fn?Se:""):Se:yn?qr:`\\${qr}`);return cr===!0&&(r.unescape===!0?Ar=Ar.replace(/\\/g,""):Ar=Ar.replace(/\\+/g,qr=>qr.length%2===0?"\\\\":qr?"\\":"")),Ar===e&&r.contains===!0?(De.output=e,De):(De.output=uj.wrapOutput(Ar,De,t),De)}for(;!ft();){if(Je=Ot(),Je==="\0")continue;if(Je==="\\"){let qr=lt();if(qr==="/"&&r.bash!==!0||qr==="."||qr===";")continue;if(!qr){Je+="\\",$t({type:"text",value:Je});continue}let yn=/^\\+/.exec(Er()),ke=0;if(yn&&yn[0].length>2&&(ke=yn[0].length,De.index+=ke,ke%2!==0&&(Je+="\\")),r.unescape===!0?Je=Ot():Je+=Ot(),De.brackets===0){$t({type:"text",value:Je});continue}}if(De.brackets>0&&(Je!=="]"||Le.value==="["||Le.value==="[^")){if(r.posix!==!1&&Je===":"){let qr=Le.value.slice(1);if(qr.includes("[")&&(Le.posix=!0,qr.includes(":"))){let yn=Le.value.lastIndexOf("["),ke=Le.value.slice(0,yn),zt=Le.value.slice(yn+2),Fn=Yel[zt];if(Fn){Le.value=ke+Fn,De.backtrack=!0,Ot(),!o.output&&l.indexOf(Le)===1&&(o.output=N);continue}}}(Je==="["&<()!==":"||Je==="-"&<()==="]")&&(Je=`\\${Je}`),Je==="]"&&(Le.value==="["||Le.value==="[^")&&(Je=`\\${Je}`),r.posix===!0&&Je==="!"&&Le.value==="["&&(Je="^"),Le.value+=Je,jt({value:Je});continue}if(De.quotes===1&&Je!=='"'){Je=uj.escapeRegex(Je),Le.value+=Je,jt({value:Je});continue}if(Je==='"'){De.quotes=De.quotes===1?0:1,r.keepQuotes===!0&&$t({type:"text",value:Je});continue}if(Je==="("){Dt("parens"),$t({type:"paren",value:Je});continue}if(Je===")"){if(De.parens===0&&r.strictBrackets===!0)throw new SyntaxError(Dxe("opening","("));let qr=k[k.length-1];if(qr&&De.parens===qr.parens+1){lr(k.pop());continue}$t({type:"paren",value:Je,output:De.parens?")":"\\)"}),Fr("parens");continue}if(Je==="["){if(r.nobracket===!0||!Er().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(Dxe("closing","]"));Je=`\\${Je}`}else Dt("brackets");$t({type:"bracket",value:Je});continue}if(Je==="]"){if(r.nobracket===!0||Le&&Le.type==="bracket"&&Le.value.length===1){$t({type:"text",value:Je,output:`\\${Je}`});continue}if(De.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("opening","["));$t({type:"text",value:Je,output:`\\${Je}`});continue}Fr("brackets");let qr=Le.value.slice(1);if(Le.posix!==!0&&qr[0]==="^"&&!qr.includes("/")&&(Je=`/${Je}`),Le.value+=Je,jt({value:Je}),r.literalBrackets===!1||uj.hasRegexChars(qr))continue;let yn=uj.escapeRegex(Le.value);if(De.output=De.output.slice(0,-Le.value.length),r.literalBrackets===!0){De.output+=yn,Le.value=yn;continue}Le.value=`(${A}${yn}|${Le.value})`,De.output+=Le.value;continue}if(Je==="{"&&r.nobrace!==!0){Dt("braces");let qr={type:"brace",value:Je,output:"(",outputIndex:De.output.length,tokensIndex:De.tokens.length};tt.push(qr),$t(qr);continue}if(Je==="}"){let qr=tt[tt.length-1];if(r.nobrace===!0||!qr){$t({type:"text",value:Je,output:Je});continue}let yn=")";if(qr.dots===!0){let ke=l.slice(),zt=[];for(let Fn=ke.length-1;Fn>=0&&(l.pop(),ke[Fn].type!=="brace");Fn--)ke[Fn].type!=="dots"&&zt.unshift(ke[Fn].value);yn=Jel(zt,r),De.backtrack=!0}if(qr.comma!==!0&&qr.dots!==!0){let ke=De.output.slice(0,qr.outputIndex),zt=De.tokens.slice(qr.tokensIndex);qr.value=qr.output="\\{",Je=yn="\\}",De.output=ke;for(let Fn of zt)De.output+=Fn.output||Fn.value}$t({type:"brace",value:Je,output:yn}),Fr("braces"),tt.pop();continue}if(Je==="|"){k.length>0&&k[k.length-1].conditions++,$t({type:"text",value:Je});continue}if(Je===","){let qr=Je,yn=tt[tt.length-1];yn&&ze[ze.length-1]==="braces"&&(yn.comma=!0,qr="|"),$t({type:"comma",value:Je,output:qr});continue}if(Je==="/"){if(Le.type==="dot"&&De.index===De.start+1){De.start=De.index+1,De.consumed="",De.output="",l.pop(),Le=o;continue}$t({type:"slash",value:Je,output:E});continue}if(Je==="."){if(De.braces>0&&Le.type==="dot"){Le.value==="."&&(Le.output=C);let qr=tt[tt.length-1];Le.type="dots",Le.output+=Je,Le.value+=Je,qr.dots=!0;continue}if(De.braces+De.parens===0&&Le.type!=="bos"&&Le.type!=="slash"){$t({type:"text",value:Je,output:C});continue}$t({type:"dot",value:Je,output:C});continue}if(Je==="?"){if(!(Le&&Le.value==="(")&&r.noextglob!==!0&<()==="("&<(2)!=="?"){Xt("qmark",Je);continue}if(Le&&Le.type==="paren"){let yn=lt(),ke=Je;(Le.value==="("&&!/[!=<:]/.test(yn)||yn==="<"&&!/<([!=]|\w+>)/.test(Er()))&&(ke=`\\${Je}`),$t({type:"text",value:Je,output:ke});continue}if(r.dot!==!0&&(Le.type==="slash"||Le.type==="bos")){$t({type:"qmark",value:Je,output:ne});continue}$t({type:"qmark",value:Je,output:ae});continue}if(Je==="!"){if(r.noextglob!==!0&<()==="("&&(lt(2)!=="?"||!/[!=<:]/.test(lt(3)))){Xt("negate",Je);continue}if(r.nonegate!==!0&&De.index===0){Bt();continue}}if(Je==="+"){if(r.noextglob!==!0&<()==="("&<(2)!=="?"){Xt("plus",Je);continue}if(Le&&Le.value==="("||r.regex===!1){$t({type:"plus",value:Je,output:b});continue}if(Le&&(Le.type==="bracket"||Le.type==="paren"||Le.type==="brace")||De.parens>0){$t({type:"plus",value:Je});continue}$t({type:"plus",value:b});continue}if(Je==="@"){if(r.noextglob!==!0&<()==="("&<(2)!=="?"){$t({type:"at",extglob:!0,value:Je,output:""});continue}$t({type:"text",value:Je});continue}if(Je!=="*"){(Je==="$"||Je==="^")&&(Je=`\\${Je}`);let qr=Qel.exec(Er());qr&&(Je+=qr[0],De.index+=qr[0].length),$t({type:"text",value:Je});continue}if(Le&&(Le.type==="globstar"||Le.star===!0)){Le.type="star",Le.star=!0,Le.value+=Je,Le.output=Se,De.backtrack=!0,De.globstar=!0,Sr(Je);continue}let cr=Er();if(r.noextglob!==!0&&/^\([^?]/.test(cr)){Xt("star",Je);continue}if(Le.type==="star"){if(r.noglobstar===!0){Sr(Je);continue}let qr=Le.prev,yn=qr.prev,ke=qr.type==="slash"||qr.type==="bos",zt=yn&&(yn.type==="star"||yn.type==="globstar");if(r.bash===!0&&(!ke||cr[0]&&cr[0]!=="/")){$t({type:"star",value:Je,output:""});continue}let Fn=De.braces>0&&(qr.type==="comma"||qr.type==="brace"),Nn=k.length&&(qr.type==="pipe"||qr.type==="paren");if(!ke&&qr.type!=="paren"&&!Fn&&!Nn){$t({type:"star",value:Je,output:""});continue}for(;cr.slice(0,3)==="/**";){let Hi=e[De.index+4];if(Hi&&Hi!=="/")break;cr=cr.slice(3),Sr("/**",3)}if(qr.type==="bos"&&ft()){Le.type="globstar",Le.value+=Je,Le.output=ue(r),De.output=Le.output,De.globstar=!0,Sr(Je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&!zt&&ft()){De.output=De.output.slice(0,-(qr.output+Le.output).length),qr.output=`(?:${qr.output}`,Le.type="globstar",Le.output=ue(r)+(r.strictSlashes?")":"|$)"),Le.value+=Je,De.globstar=!0,De.output+=qr.output+Le.output,Sr(Je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&cr[0]==="/"){let Hi=cr[1]!==void 0?"|$":"";De.output=De.output.slice(0,-(qr.output+Le.output).length),qr.output=`(?:${qr.output}`,Le.type="globstar",Le.output=`${ue(r)}${E}|${E}${Hi})`,Le.value+=Je,De.output+=qr.output+Le.output,De.globstar=!0,Sr(Je+Ot()),$t({type:"slash",value:"/",output:""});continue}if(qr.type==="bos"&&cr[0]==="/"){Le.type="globstar",Le.value+=Je,Le.output=`(?:^|${E}|${ue(r)}${E})`,De.output=Le.output,De.globstar=!0,Sr(Je+Ot()),$t({type:"slash",value:"/",output:""});continue}De.output=De.output.slice(0,-Le.output.length),Le.type="globstar",Le.output=ue(r),Le.value+=Je,De.output+=Le.output,De.globstar=!0,Sr(Je);continue}let Ar={type:"star",value:Je,output:Se};if(r.bash===!0){Ar.output=".*?",(Le.type==="bos"||Le.type==="slash")&&(Ar.output=de+Ar.output),$t(Ar);continue}if(Le&&(Le.type==="bracket"||Le.type==="paren")&&r.regex===!0){Ar.output=Je,$t(Ar);continue}(De.index===De.start||Le.type==="slash"||Le.type==="dot")&&(Le.type==="dot"?(De.output+=Q,Le.output+=Q):r.dot===!0?(De.output+=J,Le.output+=J):(De.output+=de,Le.output+=de),lt()!=="*"&&(De.output+=N,Le.output+=N)),$t(Ar)}for(;De.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("closing","]"));De.output=uj.escapeLast(De.output,"["),Fr("brackets")}for(;De.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("closing",")"));De.output=uj.escapeLast(De.output,"("),Fr("parens")}for(;De.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("closing","}"));De.output=uj.escapeLast(De.output,"{"),Fr("braces")}if(r.strictSlashes!==!0&&(Le.type==="star"||Le.type==="bracket")&&$t({type:"maybe_slash",value:"",output:`${E}?`}),De.backtrack===!0){De.output="";for(let cr of De.tokens)De.output+=cr.output!=null?cr.output:cr.value,cr.suffix&&(De.output+=cr.suffix)}return De};Y5r.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(zNt,r.maxLength):zNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=s$i[e]||e;let{DOT_LITERAL:o,SLASH_LITERAL:l,ONE_CHAR:A,DOTS_SLASH:f,NO_DOT:I,NO_DOTS:C,NO_DOTS_SLASH:b,STAR:E,START_ANCHOR:N}=jNt.globChars(r.windows),B=r.dot?C:I,F=r.dot?b:I,Q=r.capture?"":"?:",J={negated:!1,prefix:""},ae=r.bash===!0?".*?":E;r.capture&&(ae=`(${ae})`);let ne=de=>de.noglobstar===!0?ae:`(${Q}(?:(?!${N}${de.dot?f:o}).)*?)`,ce=de=>{switch(de){case"*":return`${B}${A}${ae}`;case".*":return`${o}${A}${ae}`;case"*.*":return`${B}${ae}${o}${A}${ae}`;case"*/*":return`${B}${ae}${l}${A}${F}${ae}`;case"**":return B+ne(r);case"**/*":return`(?:${B}${ne(r)}${l})?${F}${A}${ae}`;case"**/*.*":return`(?:${B}${ne(r)}${l})?${F}${ae}${o}${A}${ae}`;case"**/.*":return`(?:${B}${ne(r)}${l})?${o}${A}${ae}`;default:{let be=/^(.*?)\.(\w+)$/.exec(de);if(!be)return;let Se=ce(be[1]);return Se?Se+o+be[2]:void 0}}},fe=uj.removePrefix(e,J),ue=ce(fe);return ue&&r.strictSlashes!==!0&&(ue+=`${l}?`),ue};o$i.exports=Y5r});var u$i=H((FKu,l$i)=>{"use strict";var Uel=i$i(),Q5r=a$i(),c$i=M8e(),Kel=P8e(),jel=e=>e&&typeof e=="object"&&!Array.isArray(e),dw=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>dw(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=jel(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=a.windows,l=n?dw.compileRe(e,t):dw.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=dw(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=dw.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};dw.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?c$i.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=dw.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};dw.matchBase=(e,t,r)=>(t instanceof RegExp?t:dw.makeRe(t,r)).test(c$i.basename(e));dw.isMatch=(e,t,r)=>dw(t,r)(e);dw.parse=(e,t)=>Array.isArray(e)?e.map(r=>dw.parse(r,t)):Q5r(e,{...t,fastpaths:!1});dw.scan=(e,t)=>Uel(e,t);dw.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=dw.toRegex(A,t);return n===!0&&(f.state=e),f};dw.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=Q5r.fastpaths(e,t)),a.output||(a=Q5r(e,t)),dw.compileRe(a,t,r,n)};dw.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};dw.constants=Kel;l$i.exports=dw});var p$i=H((ZKu,d$i)=>{"use strict";var g$i=u$i(),zel=M8e();function A$i(e,t,r=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:zel.isWindows()}),g$i(e,t,r)}Object.assign(A$i,g$i);d$i.exports=A$i});var f$i=H(qNt=>{"use strict";Object.defineProperty(qNt,"__esModule",{value:!0});qNt.PatternMatchingHost=void 0;var qel=p$i(),$el=O8e(),X5r=class extends $el.ResolverHost{_patterns=new Map;addPattern(t,r){let n=Array.isArray(t)?t:[t];for(let a of n){let{output:o}=(0,qel.parse)(a);this._patterns.set(new RegExp(`^${o}$`),r)}}_resolve(t){let r=t;return this._patterns.forEach((n,a)=>{a.test(t)&&(r=n(r))}),r}};qNt.PatternMatchingHost=X5r});var I$i=H($Nt=>{"use strict";Object.defineProperty($Nt,"__esModule",{value:!0});$Nt.CordHost=void 0;var w_=tE(),wte=_te(),etl=HNt(),J5r=class e extends etl.SimpleMemoryHost{_back;_filesToCreate=new Set;_filesToRename=new Map;_filesToRenameRevert=new Map;_filesToDelete=new Set;_filesToOverwrite=new Set;constructor(t){super(),this._back=t}get backend(){return this._back}get capabilities(){return{synchronous:this._back.capabilities.synchronous}}clone(){let t=new e(this._back);return t._cache=new Map(this._cache),t._filesToCreate=new Set(this._filesToCreate),t._filesToRename=new Map(this._filesToRename),t._filesToRenameRevert=new Map(this._filesToRenameRevert),t._filesToDelete=new Set(this._filesToDelete),t._filesToOverwrite=new Set(this._filesToOverwrite),t}commit(t,r=!1){return(0,w_.from)(this.records()).pipe((0,w_.concatMap)(n=>{switch(n.kind){case"delete":return t.delete(n.path);case"rename":return t.rename(n.from,n.to);case"create":return t.exists(n.path).pipe((0,w_.switchMap)(a=>a&&!r?(0,w_.throwError)(new wte.FileAlreadyExistException(n.path)):t.write(n.path,n.content)));case"overwrite":return t.exists(n.path).pipe((0,w_.switchMap)(a=>!a&&!r?(0,w_.throwError)(new wte.FileDoesNotExistException(n.path)):t.write(n.path,n.content)))}}),(0,w_.reduce)(()=>{}))}records(){return[...[...this._filesToDelete.values()].map(t=>({kind:"delete",path:t})),...[...this._filesToRename.entries()].map(([t,r])=>({kind:"rename",from:t,to:r})),...[...this._filesToCreate.values()].map(t=>({kind:"create",path:t,content:this._read(t)})),...[...this._filesToOverwrite.values()].map(t=>({kind:"overwrite",path:t,content:this._read(t)}))]}create(t,r){if(super._exists(t))throw new wte.FileAlreadyExistException(t);return this._filesToDelete.has(t)?(this._filesToDelete.delete(t),this._filesToOverwrite.add(t)):this._filesToCreate.add(t),super.write(t,r)}overwrite(t,r){return this.isDirectory(t).pipe((0,w_.switchMap)(n=>n?(0,w_.throwError)(new wte.PathIsDirectoryException(t)):this.exists(t)),(0,w_.switchMap)(n=>n?(this._filesToCreate.has(t)||this._filesToOverwrite.add(t),super.write(t,r)):(0,w_.throwError)(new wte.FileDoesNotExistException(t))))}write(t,r){return this.exists(t).pipe((0,w_.switchMap)(n=>n?this.willRename(t)||this.willDelete(t)?this.create(t,r):this.overwrite(t,r):this.create(t,r)))}read(t){return this._exists(t)?super.read(t):this._back.read(t)}delete(t){if(this._exists(t)){if(this._filesToCreate.has(t))this._filesToCreate.delete(t);else if(this._filesToOverwrite.has(t))this._filesToOverwrite.delete(t),this._filesToDelete.add(t);else{let r=this._filesToRenameRevert.get(t);if(r)this._filesToRenameRevert.delete(t),this._filesToRename.delete(r),this._filesToDelete.add(r);else return(0,w_.throwError)(new wte.UnknownException(`This should never happen. Path: ${JSON.stringify(t)}.`))}return super.delete(t)}else return this._back.exists(t).pipe((0,w_.switchMap)(r=>r?(this._filesToDelete.add(t),(0,w_.of)()):(0,w_.throwError)(new wte.FileDoesNotExistException(t))))}rename(t,r){return(0,w_.concat)(this.exists(r),this.exists(t)).pipe((0,w_.toArray)(),(0,w_.switchMap)(([n,a])=>{if(!a)return(0,w_.throwError)(new wte.FileDoesNotExistException(t));if(t===r)return w_.EMPTY;if(n)return(0,w_.throwError)(new wte.FileAlreadyExistException(r));if(this._filesToCreate.has(t))return this._filesToCreate.delete(t),this._filesToCreate.add(r),super.rename(t,r);if(this._filesToOverwrite.has(t))return this._filesToOverwrite.delete(t),(0,w_.concat)(this.rename(t,r),new w_.Observable(l=>{this._filesToOverwrite.add(r),l.complete()}));if(this._filesToDelete.has(r))return this._filesToDelete.delete(r),this._filesToDelete.add(t),this._filesToOverwrite.add(r),this.read(t).pipe((0,w_.map)(l=>this._write(r,l)));let o=this._filesToRenameRevert.get(t);return o&&(this._filesToRename.delete(o),this._filesToRenameRevert.delete(t),t=o),this._filesToRename.set(t,r),this._filesToRenameRevert.set(r,t),this._exists(t)?super.rename(t,r):this._back.read(t).pipe((0,w_.switchMap)(l=>super.write(r,l)))}))}list(t){return(0,w_.concat)(super.list(t),this._back.list(t)).pipe((0,w_.reduce)((r,n)=>(n.forEach(a=>r.add(a)),r),new Set),(0,w_.map)(r=>[...r]))}exists(t){return this._exists(t)?(0,w_.of)(!0):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.exists(t)}isDirectory(t){return this._exists(t)?super.isDirectory(t):this._back.isDirectory(t)}isFile(t){return this._exists(t)?super.isFile(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.isFile(t)}stat(t){return this._exists(t)?super.stat(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(null):this._back.stat(t)}watch(t,r){return null}willCreate(t){return this._filesToCreate.has(t)}willOverwrite(t){return this._filesToOverwrite.has(t)}willDelete(t){return this._filesToDelete.has(t)}willRename(t){return this._filesToRename.has(t)}willRenameTo(t,r){return this._filesToRename.get(t)===r}};$Nt.CordHost=J5r});var h$i=H(eDt=>{"use strict";Object.defineProperty(eDt,"__esModule",{value:!0});eDt.SafeReadonlyHost=void 0;var nue=tE(),U5r=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}read(t){return this._delegate.read(t)}list(t){return this._delegate.list(t).pipe((0,nue.catchError)(()=>(0,nue.of)([])))}exists(t){return this._delegate.exists(t)}isDirectory(t){return this._delegate.isDirectory(t).pipe((0,nue.catchError)(()=>(0,nue.of)(!1)))}isFile(t){return this._delegate.isFile(t).pipe((0,nue.catchError)(()=>(0,nue.of)(!1)))}stat(t){let r=this._delegate.stat(t);return r&&r.pipe((0,nue.catchError)(()=>(0,nue.of)(null)))}};eDt.SafeReadonlyHost=U5r});var C$i=H(tDt=>{"use strict";Object.defineProperty(tDt,"__esModule",{value:!0});tDt.ScopedHost=void 0;var m$i=wxe(),ttl=O8e(),K5r=class extends ttl.ResolverHost{_root;constructor(t,r=m$i.NormalizedRoot){super(t),this._root=r}_resolve(t){return(0,m$i.join)(this._root,t)}};tDt.ScopedHost=K5r});var y$i=H(W2=>{"use strict";var _$i=W2&&W2.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rtl=W2&&W2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ntl=W2&&W2.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var b$i=ZP&&ZP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),stl=ZP&&ZP.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),otl=ZP&&ZP.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(j5r,"__esModule",{value:!0});j5r.createWorkspaceHost=ltl;var nDt=tE(),kxe=rDt();function ltl(e){return{async readFile(r){let n=await(0,nDt.lastValueFrom)(e.read((0,kxe.normalize)(r)));return kxe.virtualFs.fileBufferToString(n)},async writeFile(r,n){return(0,nDt.lastValueFrom)(e.write((0,kxe.normalize)(r),kxe.virtualFs.stringToFileBuffer(n)))},async isDirectory(r){try{return await(0,nDt.lastValueFrom)(e.isDirectory((0,kxe.normalize)(r)))}catch{return!1}},async isFile(r){try{return await(0,nDt.lastValueFrom)(e.isFile((0,kxe.normalize)(r)))}catch{return!1}}}}});var sDt=H((S$i,iDt)=>{(function(e){if(typeof iDt=="object"&&typeof iDt.exports=="object"){var t=e(Et,S$i);t!==void 0&&(iDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createScanner=void 0;function r(A,f=!1){let I=A.length,C=0,b="",E=0,N=16,B=0,F=0,Q=0,J=0,ae=0;function ne(De,k){let tt=0,ze=0;for(;tt=48&&Le<=57)ze=ze*16+Le-48;else if(Le>=65&&Le<=70)ze=ze*16+Le-65+10;else if(Le>=97&&Le<=102)ze=ze*16+Le-97+10;else break;C++,tt++}return tt=I){De+=A.substring(k,C),ae=2;break}let tt=A.charCodeAt(C);if(tt===34){De+=A.substring(k,C),C++;break}if(tt===92){if(De+=A.substring(k,C),C++,C>=I){ae=2;break}switch(A.charCodeAt(C++)){case 34:De+='"';break;case 92:De+="\\";break;case 47:De+="/";break;case 98:De+="\b";break;case 102:De+="\f";break;case 110:De+=` + `)}`),this.errors=t}static createMessages(t){return!t||t.length===0?[]:t.map(n=>{let a=`Data path ${JSON.stringify(n.instancePath)} ${n.message}`;if(n.params)switch(n.keyword){case"additionalProperties":a+=`(${n.params.additionalProperty})`;break;case"enum":a+=`. Allowed values are: ${n.params.allowedValues?.map(o=>`"${o}"`).join(", ")}`;break}return a+"."})}};JV.SchemaValidationException=h5r;var m5r=class e{_ajv;_uriCache=new Map;_uriHandlers=new Set;_pre=new I5r.PartiallyOrderedSet;_post=new I5r.PartiallyOrderedSet;_currentCompilationSchemaInfo;_smartDefaultKeyword=!1;_promptProvider;_sourceMap=new Map;constructor(t=[]){this._ajv=new f5r.default({strict:!1,loadSchema:r=>this._fetch(r),passContext:!0}),(0,kel.default)(this._ajv);for(let r of t)this.addFormat(r)}async _fetch(t){let r=this._uriCache.get(t);if(r)return r;for(let n of this._uriHandlers){let a=n(t);if(a==null)continue;(0,Ete.isObservable)(a)&&(a=(0,Ete.lastValueFrom)(a));let o=await a;return this._uriCache.set(t,o),o}return new Promise((n,a)=>{let o=new Sqi.URL(t);(o.protocol==="https:"?Gel:xel).get(o,A=>{if(!A.statusCode||A.statusCode>=300)A.resume(),a(new Error(`Request failed. Status Code: ${A.statusCode}`));else{A.setEncoding("utf8");let f="";A.on("data",I=>{f+=I}),A.on("end",()=>{try{let I=JSON.parse(f);this._uriCache.set(t,I),n(I)}catch(I){a(I)}})}})})}addPreTransform(t,r){this._pre.add(t,r)}addPostTransform(t,r){this._post.add(t,r)}_resolver(t,r){if(!r||!t)return{};let n=r.schemaEnv.root.schema,a=typeof n=="object"?n.$id:null,o=t;typeof a=="string"&&(o=Sqi.resolve(a,t),t.startsWith("#")&&(o=a+o));let l=this._ajv.getSchema(o);return{context:l?.schemaEnv.validate,schema:l?.schema}}async \u0275flatten(t){this._ajv.removeSchema(t),this._currentCompilationSchemaInfo=void 0;let r=await this._ajv.compileAsync(t),n=this;function a(l,A,f,I){if(l&&f&&I&&(0,Zel.isJsonObject)(l)&&Object.prototype.hasOwnProperty.call(l,"$ref")&&typeof l.$ref=="string"){let C=n._resolver(l.$ref,r);C.schema&&(f[I]=C.schema)}}let o=(0,I5r.deepCopy)(r.schema);return(0,BNt.visitJsonSchema)(o,a),o}async compile(t){let r=await this._compile(t);return(n,a)=>r(n,a)}async _compile(t){if(typeof t=="boolean")return async a=>({success:t,data:a});let r={smartDefaultRecord:new Map,promptDefinitions:[]};this._ajv.removeSchema(t);let n;try{this._currentCompilationSchemaInfo=r,n=this._ajv.compile(t)}catch(a){if(!(a instanceof f5r.default.MissingRefError))throw a;n=await this._ajv.compileAsync(t)}finally{this._currentCompilationSchemaInfo=void 0}return async(a,o)=>{let l={withPrompts:!0,applyPostTransforms:!0,applyPreTransforms:!0,...o},A={promptFieldsWithValue:new Set};if(l.applyPreTransforms)for(let f of this._pre.values())a=await(0,Ete.lastValueFrom)((0,BNt.visitJson)(a,f,t,this._resolver.bind(this),n));if(await this._applySmartDefaults(a,r.smartDefaultRecord),l.withPrompts){let f=(C,b)=>(C!==void 0&&A.promptFieldsWithValue.add(b),C);typeof t=="object"&&await(0,Ete.lastValueFrom)((0,BNt.visitJson)(a,f,t,this._resolver.bind(this),n));let I=r.promptDefinitions.filter(C=>!A.promptFieldsWithValue.has(C.id));I.length>0&&await this._applyPrompts(a,I)}try{let f=await n.call(A,a);if(!f)return{data:a,success:f,errors:n.errors??[]}}catch(f){if(f instanceof f5r.default.ValidationError)return{data:a,success:!1,errors:f.errors};throw f}if(l.applyPostTransforms)for(let f of this._post.values())a=await(0,Ete.lastValueFrom)((0,BNt.visitJson)(a,f,t,this._resolver.bind(this),n));return{data:a,success:!0}}}addFormat(t){this._ajv.addFormat(t.name,t.formatter)}addSmartDefaultProvider(t,r){if(this._sourceMap.has(t))throw new Error(t);this._sourceMap.set(t,r),this._smartDefaultKeyword||(this._smartDefaultKeyword=!0,this._ajv.addKeyword({keyword:"$default",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(l===void 0)return()=>!0;let A=this.normalizeDataPathArr(o);return l.smartDefaultRecord.set(JSON.stringify(A),n),()=>!0},metaSchema:{type:"object",properties:{$source:{type:"string"}},additionalProperties:!0,required:["$source"]}}))}registerUriHandler(t){this._uriHandlers.add(t)}usePromptProvider(t){let r=!!this._promptProvider;this._promptProvider=t,!r&&this._ajv.addKeyword({keyword:"x-prompt",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(!l)return()=>!0;let A="/"+this.normalizeDataPathArr(o).join("/"),f,I,C;typeof n=="string"?C=n:(C=n.message,f=n.type,I=n.items);let b=(0,Lel.getTypesOfSchema)(a);f||(b.size===1&&b.has("boolean")?f="confirmation":Array.isArray(a.enum)||b.size===1&&b.has("array")&&a.items&&Array.isArray(a.items.enum)?f="list":f="input");let E;if(f==="list"){E=n.multiselect===void 0?b.size===1&&b.has("array"):n.multiselect;let B=E?a.items&&a.items.enum:a.enum;if(!I&&Array.isArray(B)){I=[];for(let F of B)typeof F=="string"?I.push(F):typeof F=="object"||I.push({label:F.toString(),value:F})}}let N={id:A,type:f,message:C,raw:n,items:I,multiselect:E,propertyTypes:b,default:typeof a.default=="object"&&a.default!==null&&!Array.isArray(a.default)?void 0:a.default,async validator(B){try{let F=await o.self.validate(a,B);if(F)return F;if(o.self.errors?.length)return o.self.errors[0].message}catch(F){let Q=F;if(Array.isArray(Q.errors)&&Q.errors.length)return Q.errors[0].message}return!1}};return l.promptDefinitions.push(N),function(){return this&&this.promptFieldsWithValue&&this.promptFieldsWithValue.add(A),!0}},metaSchema:{oneOf:[{type:"string"},{type:"object",properties:{type:{type:"string"},message:{type:"string"}},additionalProperties:!0,required:["message"]}]}})}async _applyPrompts(t,r){let n=this._promptProvider;if(!n)return;let a=await(0,Ete.lastValueFrom)((0,Ete.from)(n(r)));for(let o in a){let l=o.split("/").slice(1);e._set(t,l,a[o],null,void 0,!0)}}static _set(t,r,n,a=null,o,l){for(let A=0;A(r&&t(`Option "${o?.parentDataProperty}" is deprecated${typeof r=="string"?": "+r:"."}`),!0),errors:!1})}normalizeDataPathArr(t){return t.dataPathArr.slice(1,t.dataLevel+1).map(r=>typeof r=="number"?r:r.str.replace(/"/g,""))}};JV.CoreSchemaRegistry=m5r});var wqi=H(wNt=>{"use strict";Object.defineProperty(wNt,"__esModule",{value:!0});wNt.isJsonSchema=Wel;wNt.mergeSchemas=Oel;var Vel=d_e();function Wel(e){return(0,Vel.isJsonObject)(e)||e===!1||e===!0}function Oel(...e){return e.reduce((t,r)=>r===void 0?t:t===!1||r===!1?!1:t===!0?r:r===!0?t:Array.isArray(t.allOf)?Array.isArray(r.allOf)?{...t,allOf:[...t.allOf,...r.allOf]}:{...t,allOf:[...t.allOf,r]}:Array.isArray(r.allOf)?{...t,allOf:[t,...r.allOf]}:{...t,allOf:[t,r]},!0)}});var Rqi=H(bD=>{"use strict";var Tqi=bD&&bD.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Pel=bD&&bD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Mel=bD&&bD.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var Nqi=LP&&LP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Yel=LP&&LP.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Qel=LP&&LP.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(RNt,"__esModule",{value:!0});RNt.Logger=void 0;var _5r=rE(),y5r=class extends _5r.Observable{name;parent;_subject=new _5r.Subject;_metadata;_obs=_5r.EMPTY;_subscription=null;get _observable(){return this._obs}set _observable(t){this._subscription&&this._subscription.unsubscribe(),this._obs=t,this.parent&&(this._subscription=this.subscribe(r=>{this.parent&&this.parent._subject.next(r)},r=>{this.parent&&this.parent._subject.error(r)},()=>{this._subscription&&this._subscription.unsubscribe(),this._subscription=null}))}constructor(t,r=null){super(),this.name=t,this.parent=r;let n=[],a=r;for(;a;)n.push(a.name),a=a.parent;this._metadata={name:t,path:n},this._observable=this._subject.asObservable(),this.parent&&this.parent._subject&&this.parent._subject.subscribe(void 0,void 0,()=>this.complete())}asApi(){return{createChild:t=>this.createChild(t),log:(t,r,n)=>this.log(t,r,n),debug:(t,r)=>this.debug(t,r),info:(t,r)=>this.info(t,r),warn:(t,r)=>this.warn(t,r),error:(t,r)=>this.error(t,r),fatal:(t,r)=>this.fatal(t,r)}}createChild(t){return new this.constructor(t,this)}complete(){this._subject.complete()}log(t,r,n={}){let a=Object.assign({},n,this._metadata,{level:t,message:r,timestamp:+Date.now()});this._subject.next(a)}next(t){this._subject.next(t)}debug(t,r={}){return this.log("debug",t,r)}info(t,r={}){return this.log("info",t,r)}warn(t,r={}){return this.log("warn",t,r)}error(t,r={}){return this.log("error",t,r)}fatal(t,r={}){return this.log("fatal",t,r)}toString(){return``}lift(t){return this._observable.lift(t)}subscribe(t,r,n){return this._observable.subscribe.apply(this._observable,arguments)}forEach(t,r=Promise){return this._observable.forEach(t,r)}};RNt.Logger=y5r});var Dqi=H(NNt=>{"use strict";Object.defineProperty(NNt,"__esModule",{value:!0});NNt.IndentLogger=void 0;var Uel=rE(),Kel=Sxe(),b5r={},E5r=class extends Kel.Logger{constructor(t,r=null,n=" "){super(t,r),b5r[n]=b5r[n]||[""];let a=b5r[n];this._observable=this._observable.pipe((0,Uel.map)(o=>{let l=o.path.filter(A=>!!A).length;if(l>=a.length){let A=a[a.length-1];for(;l>=a.length;)A+=n,a.push(A)}return o.message=a[l]+o.message.split(/\n/).join(` +`+a[l]),o}))}};NNt.IndentLogger=E5r});var kqi=H(vxe=>{"use strict";Object.defineProperty(vxe,"__esModule",{value:!0});vxe.LevelCapLogger=vxe.LevelTransformLogger=void 0;var jel=Sxe(),DNt=class e extends jel.Logger{name;parent;levelTransform;constructor(t,r=null,n){super(t,r),this.name=t,this.parent=r,this.levelTransform=n}log(t,r,n={}){return super.log(this.levelTransform(t),r,n)}createChild(t){return new e(t,this,this.levelTransform)}};vxe.LevelTransformLogger=DNt;var S5r=class e extends DNt{name;parent;levelCap;static levelMap={debug:{debug:"debug",info:"debug",warn:"debug",error:"debug",fatal:"debug"},info:{debug:"debug",info:"info",warn:"info",error:"info",fatal:"info"},warn:{debug:"debug",info:"info",warn:"warn",error:"warn",fatal:"warn"},error:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"error"},fatal:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"fatal"}};constructor(t,r=null,n){super(t,r,a=>e.levelMap[n][a]||a),this.name=t,this.parent=r,this.levelCap=n}};vxe.LevelCapLogger=S5r});var xqi=H(kNt=>{"use strict";Object.defineProperty(kNt,"__esModule",{value:!0});kNt.NullLogger=void 0;var zel=rE(),qel=Sxe(),v5r=class e extends qel.Logger{constructor(t=null){super("",t),this._observable=zel.EMPTY}asApi(){return{createChild:()=>new e(this),log(){},debug(){},info(){},warn(){},error(){},fatal(){}}}};kNt.NullLogger=v5r});var Gqi=H(xNt=>{"use strict";Object.defineProperty(xNt,"__esModule",{value:!0});xNt.TransformLogger=void 0;var $el=Sxe(),B5r=class extends $el.Logger{constructor(t,r,n=null){super(t,n),this._observable=r(this._observable)}};xNt.TransformLogger=B5r});var Fqi=H(P4=>{"use strict";var etl=P4&&P4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),F8e=P4&&P4.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&etl(t,e,r)};Object.defineProperty(P4,"__esModule",{value:!0});F8e(Dqi(),P4);F8e(kqi(),P4);F8e(Sxe(),P4);F8e(xqi(),P4);F8e(Gqi(),P4)});var T5r=H(Bxe=>{"use strict";Object.defineProperty(Bxe,"__esModule",{value:!0});Bxe.TargetDefinitionCollection=Bxe.ProjectDefinitionCollection=void 0;var GNt=class{_listener;_map;constructor(t,r){this._listener=r,this._map=new Map(t&&Object.entries(t))}delete(t){let r=this._map.delete(t);return r&&this._listener?.(t,void 0,this),r}set(t,r){return r!==this.get(t)&&(this._map.set(t,r),this._listener?.(t,r,this)),this}forEach(t,r){this._map.forEach((n,a)=>t(n,a,this),r)}get(t){return this._map.get(t)}has(t){return this._map.has(t)}get size(){return this._map.size}[Symbol.iterator](){return this._map[Symbol.iterator]()}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.values()}};function Zqi(e){let t=new Set;switch(typeof e){case"boolean":case"number":case"string":return!0;case"object":if(e===null)return!0;t.add(e);for(let r of Object.values(e))if(!(typeof e=="object"&&t.has(r))&&!Zqi(r))return!1;return!0;default:return!1}}var w5r=class extends GNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Project name already exists.");this._validateName(t.name);let r={root:t.root,prefix:t.prefix,sourceRoot:t.sourceRoot,targets:new FNt,extensions:{}};if(t.targets)for(let[n,a]of Object.entries(t.targets))a&&r.targets.set(n,a);for(let[n,a]of Object.entries(t))switch(n){case"name":case"root":case"sourceRoot":case"prefix":case"targets":break;default:if(Zqi(a))r.extensions[n]=a;else throw new TypeError(`"${n}" must be a JSON value.`);break}return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string"||!/^(?:@\w[\w.-]*\/)?\w[\w.-]*$/.test(t))throw new Error("Project name must be a valid npm package name.")}};Bxe.ProjectDefinitionCollection=w5r;var FNt=class extends GNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Target name already exists.");this._validateName(t.name);let r={builder:t.builder,options:t.options,configurations:t.configurations,defaultConfiguration:t.defaultConfiguration};return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string")throw new TypeError("Target name must be a string.")}};Bxe.TargetDefinitionCollection=FNt});var wxe=H(VI=>{"use strict";Object.defineProperty(VI,"__esModule",{value:!0});VI.path=VI.NormalizedRoot=VI.NormalizedSep=VI.PathCannotBeFragmentException=VI.PathMustBeAbsoluteException=VI.InvalidPathException=void 0;VI.split=R5r;VI.extname=ttl;VI.basename=Lqi;VI.dirname=rtl;VI.join=Vqi;VI.isAbsolute=VNt;VI.relative=ntl;VI.resolve=itl;VI.fragment=WNt;VI.resetNormalizeCache=stl;VI.normalize=L8e;VI.noCacheNormalize=Wqi;VI.asWindowsPath=Oqi;VI.asPosixPath=atl;VI.getSystemPath=ctl;var D5r=yte(),ZNt=class extends D5r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} is invalid.`)}};VI.InvalidPathException=ZNt;var Z8e=class extends D5r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} must be absolute.`)}};VI.PathMustBeAbsoluteException=Z8e;var LNt=class extends D5r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} cannot be made a fragment.`)}};VI.PathCannotBeFragmentException=LNt;VI.NormalizedSep="/";VI.NormalizedRoot=VI.NormalizedSep;function R5r(e){let t=e.split(VI.NormalizedSep).map(r=>WNt(r));return t[t.length-1].length===0&&t.pop(),t}function ttl(e){let t=Lqi(e),r=t.lastIndexOf(".");return r<1?"":t.slice(r)}function Lqi(e){return e.lastIndexOf(VI.NormalizedSep)==-1?WNt(e):WNt(e.slice(e.lastIndexOf(VI.NormalizedSep)+1))}function rtl(e){let t=e.lastIndexOf(VI.NormalizedSep);if(t===-1)return"";let r=t===0?1:t;return L8e(e.slice(0,r))}function Vqi(e,...t){return t.length>0?L8e((e?e+VI.NormalizedSep:"")+t.join(VI.NormalizedSep)):e}function VNt(e){return e.startsWith(VI.NormalizedSep)}function ntl(e,t){if(!VNt(e))throw new Z8e(e);if(!VNt(t))throw new Z8e(t);let r;if(e==t)r="";else{let n=R5r(e),a=R5r(t);for(;n.length>0&&a.length>0&&n[0]==a[0];)n.shift(),a.shift();n.length==0?r=a.join(VI.NormalizedSep):r=n.map(()=>"..").concat(a).join(VI.NormalizedSep)}return L8e(r)}function itl(e,t){return VNt(t)?t:Vqi(e,t)}function WNt(e){if(e.indexOf(VI.NormalizedSep)!=-1)throw new LNt(e);return e}var N5r=new Map;function stl(){N5r=new Map}function L8e(e){let t=N5r.get(e);return t||(t=Wqi(e),N5r.set(e,t)),t}function Wqi(e){if(e==""||e==".")return"";if(e==VI.NormalizedRoot)return VI.NormalizedRoot;let t=e;e.match(/^[A-Z]:[/\\]/i)&&(e="\\"+e[0].toUpperCase()+"\\"+e.slice(3));let r=e.split(/[/\\]/g),n=!1,a=1;for(r[0]!=""&&(r.unshift("."),n=!0);a=2&&r[a-1]!=".."?(r.splice(a-1,2),a--):a++}else r[a]==""?r.splice(a,1):a++;return r.length==1?r[0]==""?VI.NormalizedSep:"":(r[0]=="."&&r.shift(),r.join(VI.NormalizedSep))}var otl=(e,...t)=>L8e(String.raw(e,...t));VI.path=otl;function Oqi(e){let t=e.match(/^\/(\w)(?:\/(.*))?$/);if(t){let r=t[2]?t[2].replace(/\//g,"\\"):"";return`${t[1]}:\\${r}`}return e.replace(/\//g,"\\")}function atl(e){return e}function ctl(e){return process.platform.startsWith("win32")?Oqi(e):e}});var k5r=H(ONt=>{"use strict";Object.defineProperty(ONt,"__esModule",{value:!0});ONt.stringToFileBuffer=ltl;ONt.fileBufferToString=utl;var Pqi=Et("node:util");function ltl(e){return new Pqi.TextEncoder().encode(e).buffer}function utl(e){return e.toString.length===1?e.toString("utf-8"):new Pqi.TextDecoder("utf-8").decode(new Uint8Array(e))}});var x5r=H(PNt=>{"use strict";Object.defineProperty(PNt,"__esModule",{value:!0});PNt.HostWatchEventType=void 0;var Mqi;(function(e){e[e.Changed=0]="Changed",e[e.Created=1]="Created",e[e.Deleted=2]="Deleted",e[e.Renamed=3]="Renamed"})(Mqi||(PNt.HostWatchEventType=Mqi={}))});var HNt=H(MNt=>{"use strict";Object.defineProperty(MNt,"__esModule",{value:!0});MNt.SimpleMemoryHost=void 0;var lj=rE(),Ste=yte(),dw=wxe(),Txe=x5r(),G5r=class{_cache=new Map;_watchers=new Map;_newDirStats(){return{inspect(){return""},isFile(){return!1},isDirectory(){return!0},size:0,atime:new Date,ctime:new Date,mtime:new Date,birthtime:new Date,content:null}}_newFileStats(t,r){return{inspect(){return``},isFile(){return!0},isDirectory(){return!1},size:t.byteLength,atime:r?r.atime:new Date,ctime:new Date,mtime:new Date,birthtime:r?r.birthtime:new Date,content:t}}constructor(){this._cache.set((0,dw.normalize)("/"),this._newDirStats())}_toAbsolute(t){return(0,dw.isAbsolute)(t)?t:(0,dw.normalize)("/"+t)}_updateWatchers(t,r){let n=new Date,a=t,o=null;if(this._watchers.size==0)return;let l=this._watchers.get(a);l&&l.forEach(A=>{let[f,I]=A;I.next({path:t,time:n,type:r}),!f.persistent&&r==Txe.HostWatchEventType.Deleted&&(I.complete(),this._watchers.delete(a))});do{a=o!==null?o:a,o=(0,dw.dirname)(a);let A=this._watchers.get(a);A&&A.forEach(f=>{let[I,C]=f;I.recursive&&(C.next({path:t,time:n,type:r}),!I.persistent&&r==Txe.HostWatchEventType.Deleted&&(C.complete(),this._watchers.delete(a)))})}while(o!=a)}get capabilities(){return{synchronous:!0}}_write(t,r){t=this._toAbsolute(t);let n=this._cache.get(t);if(n&&n.isDirectory())throw new Ste.PathIsDirectoryException(t);let a=(0,dw.split)(t),o=(0,dw.normalize)("/");for(let A of a){o=(0,dw.join)(o,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new Ste.PathIsFileException(o)}else this._cache.set(o,this._newDirStats())}let l=this._newFileStats(r,n);this._cache.set(t,l),this._updateWatchers(t,n?Txe.HostWatchEventType.Changed:Txe.HostWatchEventType.Created)}_read(t){t=this._toAbsolute(t);let r=this._cache.get(t);if(r){if(r.isDirectory())throw new Ste.PathIsDirectoryException(t);if(r.content)return r.content;throw new Ste.PathIsDirectoryException(t)}else throw new Ste.FileDoesNotExistException(t)}_delete(t){if(t=this._toAbsolute(t),this._isDirectory(t))for(let[r]of this._cache.entries())(r.startsWith(t+dw.NormalizedSep)||r===t)&&this._cache.delete(r);else this._cache.delete(t);this._updateWatchers(t,Txe.HostWatchEventType.Deleted)}_rename(t,r){if(t=this._toAbsolute(t),r=this._toAbsolute(r),this._cache.has(t)){if(this._cache.has(r))throw new Ste.FileAlreadyExistException(r)}else throw new Ste.FileDoesNotExistException(t);if(this._isDirectory(t)){for(let n of this._cache.keys())if(n.startsWith(t+dw.NormalizedSep)){let a=this._cache.get(n);a&&this._cache.set((0,dw.join)(r,dw.NormalizedSep,n.slice(t.length)),a)}}else{let n=this._cache.get(t);if(n){let a=(0,dw.split)(r),o=[],l=(0,dw.normalize)("/");for(let A of a){l=(0,dw.join)(l,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new Ste.PathIsFileException(l)}else o.push(l)}for(let A of o)this._cache.set(A,this._newDirStats());this._cache.delete(t),this._cache.set(r,n)}}this._updateWatchers(t,Txe.HostWatchEventType.Renamed)}_list(t){if(t=this._toAbsolute(t),this._isFile(t))throw new Ste.PathIsFileException(t);let r=(0,dw.split)(t),n=new Set;if(t!==dw.NormalizedRoot)for(let a of this._cache.keys())a.startsWith(t+dw.NormalizedSep)&&n.add((0,dw.split)(a)[r.length]);else for(let a of this._cache.keys())a.startsWith(dw.NormalizedSep)&&a!==dw.NormalizedRoot&&n.add((0,dw.split)(a)[1]);return[...n]}_exists(t){return!!this._cache.get(this._toAbsolute(t))}_isDirectory(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isDirectory():!1}_isFile(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isFile():!1}_stat(t){let r=this._cache.get(this._toAbsolute(t));return r||null}_watch(t,r){t=this._toAbsolute(t);let n=new lj.Subject,a=this._watchers.get(t);return a||(a=[],this._watchers.set(t,a)),a.push([r||{},n]),n.asObservable()}write(t,r){return new lj.Observable(n=>{this._write(t,r),n.next(),n.complete()})}read(t){return new lj.Observable(r=>{let n=this._read(t);r.next(n),r.complete()})}delete(t){return new lj.Observable(r=>{this._delete(t),r.next(),r.complete()})}rename(t,r){return new lj.Observable(n=>{this._rename(t,r),n.next(),n.complete()})}list(t){return new lj.Observable(r=>{r.next(this._list(t)),r.complete()})}exists(t){return new lj.Observable(r=>{r.next(this._exists(t)),r.complete()})}isDirectory(t){return new lj.Observable(r=>{r.next(this._isDirectory(t)),r.complete()})}isFile(t){return new lj.Observable(r=>{r.next(this._isFile(t)),r.complete()})}stat(t){return new lj.Observable(r=>{r.next(this._stat(t)),r.complete()})}watch(t,r){return this._watch(t,r)}reset(){this._cache.clear(),this._watchers.clear()}};MNt.SimpleMemoryHost=G5r});var Z5r=H(Rxe=>{"use strict";Object.defineProperty(Rxe,"__esModule",{value:!0});Rxe.SyncDelegateHost=Rxe.SynchronousDelegateExpectedException=void 0;var gtl=yte(),V8e=class extends gtl.BaseException{constructor(){super("Expected a synchronous delegate but got an asynchronous one.")}};Rxe.SynchronousDelegateExpectedException=V8e;var F5r=class{_delegate;constructor(t){if(this._delegate=t,!t.capabilities.synchronous)throw new V8e}_doSyncCall(t){let r=!1,n,a;if(t.subscribe(o=>n=o,o=>a=o,()=>r=!0),a!==void 0)throw a;if(!r)throw new V8e;return n}get capabilities(){return this._delegate.capabilities}get delegate(){return this._delegate}write(t,r){return this._doSyncCall(this._delegate.write(t,r))}read(t){return this._doSyncCall(this._delegate.read(t))}delete(t){return this._doSyncCall(this._delegate.delete(t))}rename(t,r){return this._doSyncCall(this._delegate.rename(t,r))}list(t){return this._doSyncCall(this._delegate.list(t))}exists(t){return this._doSyncCall(this._delegate.exists(t))}isDirectory(t){return this._doSyncCall(this._delegate.isDirectory(t))}isFile(t){return this._doSyncCall(this._delegate.isFile(t))}stat(t){let r=this._delegate.stat(t);return r?this._doSyncCall(r):null}watch(t,r){return this._delegate.watch(t,r)}};Rxe.SyncDelegateHost=F5r});var Hqi=H(YNt=>{"use strict";Object.defineProperty(YNt,"__esModule",{value:!0});YNt.TestHost=void 0;var vte=wxe(),L5r=k5r(),Atl=HNt(),dtl=Z5r(),V5r=class e extends Atl.SimpleMemoryHost{_records=[];_sync=null;constructor(t={}){super();for(let r of Object.getOwnPropertyNames(t))this._write((0,vte.normalize)(r),(0,L5r.stringToFileBuffer)(t[r]))}get records(){return[...this._records]}clearRecords(){this._records=[]}get files(){let t=this.sync;function r(n){return t.list(n).map(a=>(0,vte.join)(n,a)).reduce((a,o)=>t.isDirectory(o)?a.concat(r(o)):a.concat(o),[])}return r((0,vte.normalize)("/"))}get sync(){return this._sync||(this._sync=new dtl.SyncDelegateHost(this)),this._sync}clone(){let t=new e;return t._cache=new Map(this._cache),t}_write(t,r){return this._records.push({kind:"write",path:t}),super._write(t,r)}_read(t){return this._records.push({kind:"read",path:t}),super._read(t)}_delete(t){return this._records.push({kind:"delete",path:t}),super._delete(t)}_rename(t,r){return this._records.push({kind:"rename",from:t,to:r}),super._rename(t,r)}_list(t){return this._records.push({kind:"list",path:t}),super._list(t)}_exists(t){return this._records.push({kind:"exists",path:t}),super._exists(t)}_isDirectory(t){return this._records.push({kind:"isDirectory",path:t}),super._isDirectory(t)}_isFile(t){return this._records.push({kind:"isFile",path:t}),super._isFile(t)}_stat(t){return this._records.push({kind:"stat",path:t}),super._stat(t)}_watch(t,r){return this._records.push({kind:"watch",path:t}),super._watch(t,r)}$write(t,r){return super._write((0,vte.normalize)(t),(0,L5r.stringToFileBuffer)(r))}$read(t){return(0,L5r.fileBufferToString)(super._read((0,vte.normalize)(t)))}$list(t){return super._list((0,vte.normalize)(t))}$exists(t){return super._exists((0,vte.normalize)(t))}$isDirectory(t){return super._isDirectory((0,vte.normalize)(t))}$isFile(t){return super._isFile((0,vte.normalize)(t))}};YNt.TestHost=V5r});var W8e=H(QNt=>{"use strict";Object.defineProperty(QNt,"__esModule",{value:!0});QNt.ResolverHost=void 0;var W5r=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}write(t,r){return this._delegate.write(this._resolve(t),r)}read(t){return this._delegate.read(this._resolve(t))}delete(t){return this._delegate.delete(this._resolve(t))}rename(t,r){return this._delegate.rename(this._resolve(t),this._resolve(r))}list(t){return this._delegate.list(this._resolve(t))}exists(t){return this._delegate.exists(this._resolve(t))}isDirectory(t){return this._delegate.isDirectory(this._resolve(t))}isFile(t){return this._delegate.isFile(this._resolve(t))}stat(t){return this._delegate.stat(this._resolve(t))}watch(t,r){return this._delegate.watch(this._resolve(t),r)}};QNt.ResolverHost=W5r});var Yqi=H(JNt=>{"use strict";Object.defineProperty(JNt,"__esModule",{value:!0});JNt.AliasHost=void 0;var XNt=wxe(),ptl=W8e(),O5r=class extends ptl.ResolverHost{_aliases=new Map;_resolve(t){let r=this._aliases.get(t),n=(0,XNt.split)(t),a=[];for(;!r&&n.length>0;){let o=(0,XNt.join)(XNt.NormalizedRoot,...n);r=this._aliases.get(o),r&&(r=(0,XNt.join)(r,...a)),a.unshift(n.pop())}return r||t}get aliases(){return this._aliases}};JNt.AliasHost=O5r});var Qqi=H(P5r=>{"use strict";Object.defineProperty(P5r,"__esModule",{value:!0});P5r.createSyncHost=Itl;var ftl=rE();function Bte(e){return new ftl.Observable(t=>{t.next(e()),t.complete()})}function Itl(e){return new class{get capabilities(){return{synchronous:!0}}read(t){return Bte(()=>e.read(t))}list(t){return Bte(()=>e.list(t))}exists(t){return Bte(()=>e.exists(t))}isDirectory(t){return Bte(()=>e.isDirectory(t))}isFile(t){return Bte(()=>e.isFile(t))}stat(t){return Bte(()=>e.stat(t))}write(t,r){return Bte(()=>e.write(t,r))}delete(t){return Bte(()=>e.delete(t))}rename(t,r){return Bte(()=>e.rename(t,r))}watch(){return null}}}});var Xqi=H(UNt=>{"use strict";Object.defineProperty(UNt,"__esModule",{value:!0});UNt.Empty=void 0;var Nxe=rE(),htl=yte(),M5r=class{capabilities={synchronous:!0};read(t){return(0,Nxe.throwError)(new htl.FileDoesNotExistException(t))}list(t){return(0,Nxe.of)([])}exists(t){return(0,Nxe.of)(!1)}isDirectory(t){return(0,Nxe.of)(!1)}isFile(t){return(0,Nxe.of)(!1)}stat(t){return(0,Nxe.of)(null)}};UNt.Empty=M5r});var O8e=H((X8u,zqi)=>{"use strict";var uj="\\\\/",Jqi=`[^${uj}]`,wte="\\.",mtl="\\+",Ctl="\\?",KNt="\\/",_tl="(?=.)",Uqi="[^/]",H5r=`(?:${KNt}|$)`,Kqi=`(?:^|${KNt})`,Y5r=`${wte}{1,2}${H5r}`,ytl=`(?!${wte})`,btl=`(?!${Kqi}${Y5r})`,Etl=`(?!${wte}{0,1}${H5r})`,Stl=`(?!${Y5r})`,vtl=`[^.${KNt}]`,Btl=`${Uqi}*?`,wtl="/",jqi={DOT_LITERAL:wte,PLUS_LITERAL:mtl,QMARK_LITERAL:Ctl,SLASH_LITERAL:KNt,ONE_CHAR:_tl,QMARK:Uqi,END_ANCHOR:H5r,DOTS_SLASH:Y5r,NO_DOT:ytl,NO_DOTS:btl,NO_DOT_SLASH:Etl,NO_DOTS_SLASH:Stl,QMARK_NO_DOT:vtl,STAR:Btl,START_ANCHOR:Kqi,SEP:wtl},Ttl={...jqi,SLASH_LITERAL:`[${uj}]`,QMARK:Jqi,STAR:`${Jqi}*?`,DOTS_SLASH:`${wte}{1,2}(?:[${uj}]|$)`,NO_DOT:`(?!${wte})`,NO_DOTS:`(?!(?:^|[${uj}])${wte}{1,2}(?:[${uj}]|$))`,NO_DOT_SLASH:`(?!${wte}{0,1}(?:[${uj}]|$))`,NO_DOTS_SLASH:`(?!${wte}{1,2}(?:[${uj}]|$))`,QMARK_NO_DOT:`[^.${uj}]`,START_ANCHOR:`(?:^|[${uj}])`,END_ANCHOR:`(?:[${uj}]|$)`,SEP:"\\"},Rtl={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"};zqi.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:Rtl,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,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?Ttl:jqi}}});var P8e=H(UV=>{"use strict";var{REGEX_BACKSLASH:Ntl,REGEX_REMOVE_BACKSLASH:Dtl,REGEX_SPECIAL_CHARS:ktl,REGEX_SPECIAL_CHARS_GLOBAL:xtl}=O8e();UV.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);UV.hasRegexChars=e=>ktl.test(e);UV.isRegexChar=e=>e.length===1&&UV.hasRegexChars(e);UV.escapeRegex=e=>e.replace(xtl,"\\$1");UV.toPosixSlashes=e=>e.replace(Ntl,"/");UV.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let e=navigator.platform.toLowerCase();return e==="win32"||e==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};UV.removeBackslashes=e=>e.replace(Dtl,t=>t==="\\"?"":t);UV.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?UV.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};UV.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};UV.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o};UV.basename=(e,{windows:t}={})=>{let r=e.split(t?/[\\/]/:"/"),n=r[r.length-1];return n===""?r[r.length-2]:n}});var s$i=H((U8u,i$i)=>{"use strict";var qqi=P8e(),{CHAR_ASTERISK:Q5r,CHAR_AT:Gtl,CHAR_BACKWARD_SLASH:M8e,CHAR_COMMA:Ftl,CHAR_DOT:X5r,CHAR_EXCLAMATION_MARK:J5r,CHAR_FORWARD_SLASH:n$i,CHAR_LEFT_CURLY_BRACE:U5r,CHAR_LEFT_PARENTHESES:K5r,CHAR_LEFT_SQUARE_BRACKET:Ztl,CHAR_PLUS:Ltl,CHAR_QUESTION_MARK:$qi,CHAR_RIGHT_CURLY_BRACE:Vtl,CHAR_RIGHT_PARENTHESES:e$i,CHAR_RIGHT_SQUARE_BRACKET:Wtl}=O8e(),t$i=e=>e===n$i||e===M8e,r$i=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},Otl=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,J=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),tt=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Le=f.slice(0,C),f=f.slice(C),b-=C),ze&&B===!0&&b>0?(ze=f.slice(0,b),Je=f.slice(b)):B===!0?(ze="",Je=f):ze=f,ze&&ze!==""&&ze!=="/"&&ze!==f&&t$i(ze.charCodeAt(ze.length-1))&&(ze=ze.slice(0,-1)),r.unescape===!0&&(Je&&(Je=qqi.removeBackslashes(Je)),ze&&ae===!0&&(ze=qqi.removeBackslashes(ze)));let ft={prefix:Le,input:e,start:C,base:ze,glob:Je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(ft.maxDepth=0,t$i(be)||l.push(Se),ft.tokens=l),r.parts===!0||r.tokens===!0){let lt;for(let Ot=0;Ot{"use strict";var jNt=O8e(),gj=P8e(),{MAX_LENGTH:zNt,POSIX_REGEX_SOURCE:Ptl,REGEX_NON_SPECIAL_CHARS:Mtl,REGEX_SPECIAL_CHARS_BACKREF:Htl,REPLACEMENTS:o$i}=jNt,Ytl=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>gj.escapeRegex(a)).join("..")}return r},Dxe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,j5r=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=o$i[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(zNt,r.maxLength):zNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=jNt.globChars(r.windows),I=jNt.extglobChars(f),{DOT_LITERAL:C,PLUS_LITERAL:b,SLASH_LITERAL:E,ONE_CHAR:N,DOTS_SLASH:B,NO_DOT:F,NO_DOT_SLASH:Q,NO_DOTS_SLASH:J,QMARK:ae,QMARK_NO_DOT:ne,STAR:ce,START_ANCHOR:fe}=f,ue=cr=>`(${A}(?:(?!${fe}${cr.dot?B:C}).)*?)`,de=r.dot?"":F,be=r.dot?ae:ne,Se=r.bash===!0?ue(r):ce;r.capture&&(Se=`(${Se})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let De={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=gj.removePrefix(e,De),a=e.length;let k=[],tt=[],ze=[],Le=o,Je,ft=()=>De.index===a-1,lt=De.peek=(cr=1)=>e[De.index+cr],Ot=De.advance=()=>e[++De.index]||"",Er=()=>e.slice(De.index+1),Sr=(cr="",Ar=0)=>{De.consumed+=cr,De.index+=Ar},jt=cr=>{De.output+=cr.output!=null?cr.output:cr.value,Sr(cr.value)},Bt=()=>{let cr=1;for(;lt()==="!"&&(lt(2)!=="("||lt(3)==="?");)Ot(),De.start++,cr++;return cr%2===0?!1:(De.negated=!0,De.start++,!0)},Nt=cr=>{De[cr]++,ze.push(cr)},Fr=cr=>{De[cr]--,ze.pop()},$t=cr=>{if(Le.type==="globstar"){let Ar=De.braces>0&&(cr.type==="comma"||cr.type==="brace"),qr=cr.extglob===!0||k.length&&(cr.type==="pipe"||cr.type==="paren");cr.type!=="slash"&&cr.type!=="paren"&&!Ar&&!qr&&(De.output=De.output.slice(0,-Le.output.length),Le.type="star",Le.value="*",Le.output=Se,De.output+=Le.output)}if(k.length&&cr.type!=="paren"&&(k[k.length-1].inner+=cr.value),(cr.value||cr.output)&&jt(cr),Le&&Le.type==="text"&&cr.type==="text"){Le.output=(Le.output||Le.value)+cr.value,Le.value+=cr.value;return}cr.prev=Le,l.push(cr),Le=cr},Xt=(cr,Ar)=>{let qr={...I[Ar],conditions:1,inner:""};qr.prev=Le,qr.parens=De.parens,qr.output=De.output;let _n=(r.capture?"(":"")+qr.open;Nt("parens"),$t({type:cr,value:Ar,output:De.output?"":N}),$t({type:"paren",extglob:!0,value:Ot(),output:_n}),k.push(qr)},lr=cr=>{let Ar=cr.close+(r.capture?")":""),qr;if(cr.type==="negate"){let _n=Se;if(cr.inner&&cr.inner.length>1&&cr.inner.includes("/")&&(_n=ue(r)),(_n!==Se||ft()||/^\)+$/.test(Er()))&&(Ar=cr.close=`)$))${_n}`),cr.inner.includes("*")&&(qr=Er())&&/^\.[^\\/.]+$/.test(qr)){let ke=j5r(qr,{...t,fastpaths:!1}).output;Ar=cr.close=`)${ke})${_n})`}cr.prev.type==="bos"&&(De.negatedExtglob=!0)}$t({type:"paren",extglob:!0,value:Je,output:Ar}),Fr("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let cr=!1,Ar=e.replace(Htl,(qr,_n,ke,zt,Fn,Nn)=>zt==="\\"?(cr=!0,qr):zt==="?"?_n?_n+zt+(Fn?ae.repeat(Fn.length):""):Nn===0?be+(Fn?ae.repeat(Fn.length):""):ae.repeat(ke.length):zt==="."?C.repeat(ke.length):zt==="*"?_n?_n+zt+(Fn?Se:""):Se:_n?qr:`\\${qr}`);return cr===!0&&(r.unescape===!0?Ar=Ar.replace(/\\/g,""):Ar=Ar.replace(/\\+/g,qr=>qr.length%2===0?"\\\\":qr?"\\":"")),Ar===e&&r.contains===!0?(De.output=e,De):(De.output=gj.wrapOutput(Ar,De,t),De)}for(;!ft();){if(Je=Ot(),Je==="\0")continue;if(Je==="\\"){let qr=lt();if(qr==="/"&&r.bash!==!0||qr==="."||qr===";")continue;if(!qr){Je+="\\",$t({type:"text",value:Je});continue}let _n=/^\\+/.exec(Er()),ke=0;if(_n&&_n[0].length>2&&(ke=_n[0].length,De.index+=ke,ke%2!==0&&(Je+="\\")),r.unescape===!0?Je=Ot():Je+=Ot(),De.brackets===0){$t({type:"text",value:Je});continue}}if(De.brackets>0&&(Je!=="]"||Le.value==="["||Le.value==="[^")){if(r.posix!==!1&&Je===":"){let qr=Le.value.slice(1);if(qr.includes("[")&&(Le.posix=!0,qr.includes(":"))){let _n=Le.value.lastIndexOf("["),ke=Le.value.slice(0,_n),zt=Le.value.slice(_n+2),Fn=Ptl[zt];if(Fn){Le.value=ke+Fn,De.backtrack=!0,Ot(),!o.output&&l.indexOf(Le)===1&&(o.output=N);continue}}}(Je==="["&<()!==":"||Je==="-"&<()==="]")&&(Je=`\\${Je}`),Je==="]"&&(Le.value==="["||Le.value==="[^")&&(Je=`\\${Je}`),r.posix===!0&&Je==="!"&&Le.value==="["&&(Je="^"),Le.value+=Je,jt({value:Je});continue}if(De.quotes===1&&Je!=='"'){Je=gj.escapeRegex(Je),Le.value+=Je,jt({value:Je});continue}if(Je==='"'){De.quotes=De.quotes===1?0:1,r.keepQuotes===!0&&$t({type:"text",value:Je});continue}if(Je==="("){Nt("parens"),$t({type:"paren",value:Je});continue}if(Je===")"){if(De.parens===0&&r.strictBrackets===!0)throw new SyntaxError(Dxe("opening","("));let qr=k[k.length-1];if(qr&&De.parens===qr.parens+1){lr(k.pop());continue}$t({type:"paren",value:Je,output:De.parens?")":"\\)"}),Fr("parens");continue}if(Je==="["){if(r.nobracket===!0||!Er().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(Dxe("closing","]"));Je=`\\${Je}`}else Nt("brackets");$t({type:"bracket",value:Je});continue}if(Je==="]"){if(r.nobracket===!0||Le&&Le.type==="bracket"&&Le.value.length===1){$t({type:"text",value:Je,output:`\\${Je}`});continue}if(De.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("opening","["));$t({type:"text",value:Je,output:`\\${Je}`});continue}Fr("brackets");let qr=Le.value.slice(1);if(Le.posix!==!0&&qr[0]==="^"&&!qr.includes("/")&&(Je=`/${Je}`),Le.value+=Je,jt({value:Je}),r.literalBrackets===!1||gj.hasRegexChars(qr))continue;let _n=gj.escapeRegex(Le.value);if(De.output=De.output.slice(0,-Le.value.length),r.literalBrackets===!0){De.output+=_n,Le.value=_n;continue}Le.value=`(${A}${_n}|${Le.value})`,De.output+=Le.value;continue}if(Je==="{"&&r.nobrace!==!0){Nt("braces");let qr={type:"brace",value:Je,output:"(",outputIndex:De.output.length,tokensIndex:De.tokens.length};tt.push(qr),$t(qr);continue}if(Je==="}"){let qr=tt[tt.length-1];if(r.nobrace===!0||!qr){$t({type:"text",value:Je,output:Je});continue}let _n=")";if(qr.dots===!0){let ke=l.slice(),zt=[];for(let Fn=ke.length-1;Fn>=0&&(l.pop(),ke[Fn].type!=="brace");Fn--)ke[Fn].type!=="dots"&&zt.unshift(ke[Fn].value);_n=Ytl(zt,r),De.backtrack=!0}if(qr.comma!==!0&&qr.dots!==!0){let ke=De.output.slice(0,qr.outputIndex),zt=De.tokens.slice(qr.tokensIndex);qr.value=qr.output="\\{",Je=_n="\\}",De.output=ke;for(let Fn of zt)De.output+=Fn.output||Fn.value}$t({type:"brace",value:Je,output:_n}),Fr("braces"),tt.pop();continue}if(Je==="|"){k.length>0&&k[k.length-1].conditions++,$t({type:"text",value:Je});continue}if(Je===","){let qr=Je,_n=tt[tt.length-1];_n&&ze[ze.length-1]==="braces"&&(_n.comma=!0,qr="|"),$t({type:"comma",value:Je,output:qr});continue}if(Je==="/"){if(Le.type==="dot"&&De.index===De.start+1){De.start=De.index+1,De.consumed="",De.output="",l.pop(),Le=o;continue}$t({type:"slash",value:Je,output:E});continue}if(Je==="."){if(De.braces>0&&Le.type==="dot"){Le.value==="."&&(Le.output=C);let qr=tt[tt.length-1];Le.type="dots",Le.output+=Je,Le.value+=Je,qr.dots=!0;continue}if(De.braces+De.parens===0&&Le.type!=="bos"&&Le.type!=="slash"){$t({type:"text",value:Je,output:C});continue}$t({type:"dot",value:Je,output:C});continue}if(Je==="?"){if(!(Le&&Le.value==="(")&&r.noextglob!==!0&<()==="("&<(2)!=="?"){Xt("qmark",Je);continue}if(Le&&Le.type==="paren"){let _n=lt(),ke=Je;(Le.value==="("&&!/[!=<:]/.test(_n)||_n==="<"&&!/<([!=]|\w+>)/.test(Er()))&&(ke=`\\${Je}`),$t({type:"text",value:Je,output:ke});continue}if(r.dot!==!0&&(Le.type==="slash"||Le.type==="bos")){$t({type:"qmark",value:Je,output:ne});continue}$t({type:"qmark",value:Je,output:ae});continue}if(Je==="!"){if(r.noextglob!==!0&<()==="("&&(lt(2)!=="?"||!/[!=<:]/.test(lt(3)))){Xt("negate",Je);continue}if(r.nonegate!==!0&&De.index===0){Bt();continue}}if(Je==="+"){if(r.noextglob!==!0&<()==="("&<(2)!=="?"){Xt("plus",Je);continue}if(Le&&Le.value==="("||r.regex===!1){$t({type:"plus",value:Je,output:b});continue}if(Le&&(Le.type==="bracket"||Le.type==="paren"||Le.type==="brace")||De.parens>0){$t({type:"plus",value:Je});continue}$t({type:"plus",value:b});continue}if(Je==="@"){if(r.noextglob!==!0&<()==="("&<(2)!=="?"){$t({type:"at",extglob:!0,value:Je,output:""});continue}$t({type:"text",value:Je});continue}if(Je!=="*"){(Je==="$"||Je==="^")&&(Je=`\\${Je}`);let qr=Mtl.exec(Er());qr&&(Je+=qr[0],De.index+=qr[0].length),$t({type:"text",value:Je});continue}if(Le&&(Le.type==="globstar"||Le.star===!0)){Le.type="star",Le.star=!0,Le.value+=Je,Le.output=Se,De.backtrack=!0,De.globstar=!0,Sr(Je);continue}let cr=Er();if(r.noextglob!==!0&&/^\([^?]/.test(cr)){Xt("star",Je);continue}if(Le.type==="star"){if(r.noglobstar===!0){Sr(Je);continue}let qr=Le.prev,_n=qr.prev,ke=qr.type==="slash"||qr.type==="bos",zt=_n&&(_n.type==="star"||_n.type==="globstar");if(r.bash===!0&&(!ke||cr[0]&&cr[0]!=="/")){$t({type:"star",value:Je,output:""});continue}let Fn=De.braces>0&&(qr.type==="comma"||qr.type==="brace"),Nn=k.length&&(qr.type==="pipe"||qr.type==="paren");if(!ke&&qr.type!=="paren"&&!Fn&&!Nn){$t({type:"star",value:Je,output:""});continue}for(;cr.slice(0,3)==="/**";){let Hi=e[De.index+4];if(Hi&&Hi!=="/")break;cr=cr.slice(3),Sr("/**",3)}if(qr.type==="bos"&&ft()){Le.type="globstar",Le.value+=Je,Le.output=ue(r),De.output=Le.output,De.globstar=!0,Sr(Je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&!zt&&ft()){De.output=De.output.slice(0,-(qr.output+Le.output).length),qr.output=`(?:${qr.output}`,Le.type="globstar",Le.output=ue(r)+(r.strictSlashes?")":"|$)"),Le.value+=Je,De.globstar=!0,De.output+=qr.output+Le.output,Sr(Je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&cr[0]==="/"){let Hi=cr[1]!==void 0?"|$":"";De.output=De.output.slice(0,-(qr.output+Le.output).length),qr.output=`(?:${qr.output}`,Le.type="globstar",Le.output=`${ue(r)}${E}|${E}${Hi})`,Le.value+=Je,De.output+=qr.output+Le.output,De.globstar=!0,Sr(Je+Ot()),$t({type:"slash",value:"/",output:""});continue}if(qr.type==="bos"&&cr[0]==="/"){Le.type="globstar",Le.value+=Je,Le.output=`(?:^|${E}|${ue(r)}${E})`,De.output=Le.output,De.globstar=!0,Sr(Je+Ot()),$t({type:"slash",value:"/",output:""});continue}De.output=De.output.slice(0,-Le.output.length),Le.type="globstar",Le.output=ue(r),Le.value+=Je,De.output+=Le.output,De.globstar=!0,Sr(Je);continue}let Ar={type:"star",value:Je,output:Se};if(r.bash===!0){Ar.output=".*?",(Le.type==="bos"||Le.type==="slash")&&(Ar.output=de+Ar.output),$t(Ar);continue}if(Le&&(Le.type==="bracket"||Le.type==="paren")&&r.regex===!0){Ar.output=Je,$t(Ar);continue}(De.index===De.start||Le.type==="slash"||Le.type==="dot")&&(Le.type==="dot"?(De.output+=Q,Le.output+=Q):r.dot===!0?(De.output+=J,Le.output+=J):(De.output+=de,Le.output+=de),lt()!=="*"&&(De.output+=N,Le.output+=N)),$t(Ar)}for(;De.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("closing","]"));De.output=gj.escapeLast(De.output,"["),Fr("brackets")}for(;De.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("closing",")"));De.output=gj.escapeLast(De.output,"("),Fr("parens")}for(;De.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(Dxe("closing","}"));De.output=gj.escapeLast(De.output,"{"),Fr("braces")}if(r.strictSlashes!==!0&&(Le.type==="star"||Le.type==="bracket")&&$t({type:"maybe_slash",value:"",output:`${E}?`}),De.backtrack===!0){De.output="";for(let cr of De.tokens)De.output+=cr.output!=null?cr.output:cr.value,cr.suffix&&(De.output+=cr.suffix)}return De};j5r.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(zNt,r.maxLength):zNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=o$i[e]||e;let{DOT_LITERAL:o,SLASH_LITERAL:l,ONE_CHAR:A,DOTS_SLASH:f,NO_DOT:I,NO_DOTS:C,NO_DOTS_SLASH:b,STAR:E,START_ANCHOR:N}=jNt.globChars(r.windows),B=r.dot?C:I,F=r.dot?b:I,Q=r.capture?"":"?:",J={negated:!1,prefix:""},ae=r.bash===!0?".*?":E;r.capture&&(ae=`(${ae})`);let ne=de=>de.noglobstar===!0?ae:`(${Q}(?:(?!${N}${de.dot?f:o}).)*?)`,ce=de=>{switch(de){case"*":return`${B}${A}${ae}`;case".*":return`${o}${A}${ae}`;case"*.*":return`${B}${ae}${o}${A}${ae}`;case"*/*":return`${B}${ae}${l}${A}${F}${ae}`;case"**":return B+ne(r);case"**/*":return`(?:${B}${ne(r)}${l})?${F}${A}${ae}`;case"**/*.*":return`(?:${B}${ne(r)}${l})?${F}${ae}${o}${A}${ae}`;case"**/.*":return`(?:${B}${ne(r)}${l})?${o}${A}${ae}`;default:{let be=/^(.*?)\.(\w+)$/.exec(de);if(!be)return;let Se=ce(be[1]);return Se?Se+o+be[2]:void 0}}},fe=gj.removePrefix(e,J),ue=ce(fe);return ue&&r.strictSlashes!==!0&&(ue+=`${l}?`),ue};a$i.exports=j5r});var g$i=H((j8u,u$i)=>{"use strict";var Qtl=s$i(),z5r=c$i(),l$i=P8e(),Xtl=O8e(),Jtl=e=>e&&typeof e=="object"&&!Array.isArray(e),pw=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>pw(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=Jtl(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=a.windows,l=n?pw.compileRe(e,t):pw.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=pw(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=pw.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};pw.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?l$i.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=pw.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};pw.matchBase=(e,t,r)=>(t instanceof RegExp?t:pw.makeRe(t,r)).test(l$i.basename(e));pw.isMatch=(e,t,r)=>pw(t,r)(e);pw.parse=(e,t)=>Array.isArray(e)?e.map(r=>pw.parse(r,t)):z5r(e,{...t,fastpaths:!1});pw.scan=(e,t)=>Qtl(e,t);pw.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=pw.toRegex(A,t);return n===!0&&(f.state=e),f};pw.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=z5r.fastpaths(e,t)),a.output||(a=z5r(e,t)),pw.compileRe(a,t,r,n)};pw.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};pw.constants=Xtl;u$i.exports=pw});var f$i=H((z8u,p$i)=>{"use strict";var A$i=g$i(),Utl=P8e();function d$i(e,t,r=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:Utl.isWindows()}),A$i(e,t,r)}Object.assign(d$i,A$i);p$i.exports=d$i});var I$i=H(qNt=>{"use strict";Object.defineProperty(qNt,"__esModule",{value:!0});qNt.PatternMatchingHost=void 0;var Ktl=f$i(),jtl=W8e(),q5r=class extends jtl.ResolverHost{_patterns=new Map;addPattern(t,r){let n=Array.isArray(t)?t:[t];for(let a of n){let{output:o}=(0,Ktl.parse)(a);this._patterns.set(new RegExp(`^${o}$`),r)}}_resolve(t){let r=t;return this._patterns.forEach((n,a)=>{a.test(t)&&(r=n(r))}),r}};qNt.PatternMatchingHost=q5r});var h$i=H($Nt=>{"use strict";Object.defineProperty($Nt,"__esModule",{value:!0});$Nt.CordHost=void 0;var T_=rE(),Tte=yte(),ztl=HNt(),$5r=class e extends ztl.SimpleMemoryHost{_back;_filesToCreate=new Set;_filesToRename=new Map;_filesToRenameRevert=new Map;_filesToDelete=new Set;_filesToOverwrite=new Set;constructor(t){super(),this._back=t}get backend(){return this._back}get capabilities(){return{synchronous:this._back.capabilities.synchronous}}clone(){let t=new e(this._back);return t._cache=new Map(this._cache),t._filesToCreate=new Set(this._filesToCreate),t._filesToRename=new Map(this._filesToRename),t._filesToRenameRevert=new Map(this._filesToRenameRevert),t._filesToDelete=new Set(this._filesToDelete),t._filesToOverwrite=new Set(this._filesToOverwrite),t}commit(t,r=!1){return(0,T_.from)(this.records()).pipe((0,T_.concatMap)(n=>{switch(n.kind){case"delete":return t.delete(n.path);case"rename":return t.rename(n.from,n.to);case"create":return t.exists(n.path).pipe((0,T_.switchMap)(a=>a&&!r?(0,T_.throwError)(new Tte.FileAlreadyExistException(n.path)):t.write(n.path,n.content)));case"overwrite":return t.exists(n.path).pipe((0,T_.switchMap)(a=>!a&&!r?(0,T_.throwError)(new Tte.FileDoesNotExistException(n.path)):t.write(n.path,n.content)))}}),(0,T_.reduce)(()=>{}))}records(){return[...[...this._filesToDelete.values()].map(t=>({kind:"delete",path:t})),...[...this._filesToRename.entries()].map(([t,r])=>({kind:"rename",from:t,to:r})),...[...this._filesToCreate.values()].map(t=>({kind:"create",path:t,content:this._read(t)})),...[...this._filesToOverwrite.values()].map(t=>({kind:"overwrite",path:t,content:this._read(t)}))]}create(t,r){if(super._exists(t))throw new Tte.FileAlreadyExistException(t);return this._filesToDelete.has(t)?(this._filesToDelete.delete(t),this._filesToOverwrite.add(t)):this._filesToCreate.add(t),super.write(t,r)}overwrite(t,r){return this.isDirectory(t).pipe((0,T_.switchMap)(n=>n?(0,T_.throwError)(new Tte.PathIsDirectoryException(t)):this.exists(t)),(0,T_.switchMap)(n=>n?(this._filesToCreate.has(t)||this._filesToOverwrite.add(t),super.write(t,r)):(0,T_.throwError)(new Tte.FileDoesNotExistException(t))))}write(t,r){return this.exists(t).pipe((0,T_.switchMap)(n=>n?this.willRename(t)||this.willDelete(t)?this.create(t,r):this.overwrite(t,r):this.create(t,r)))}read(t){return this._exists(t)?super.read(t):this._back.read(t)}delete(t){if(this._exists(t)){if(this._filesToCreate.has(t))this._filesToCreate.delete(t);else if(this._filesToOverwrite.has(t))this._filesToOverwrite.delete(t),this._filesToDelete.add(t);else{let r=this._filesToRenameRevert.get(t);if(r)this._filesToRenameRevert.delete(t),this._filesToRename.delete(r),this._filesToDelete.add(r);else return(0,T_.throwError)(new Tte.UnknownException(`This should never happen. Path: ${JSON.stringify(t)}.`))}return super.delete(t)}else return this._back.exists(t).pipe((0,T_.switchMap)(r=>r?(this._filesToDelete.add(t),(0,T_.of)()):(0,T_.throwError)(new Tte.FileDoesNotExistException(t))))}rename(t,r){return(0,T_.concat)(this.exists(r),this.exists(t)).pipe((0,T_.toArray)(),(0,T_.switchMap)(([n,a])=>{if(!a)return(0,T_.throwError)(new Tte.FileDoesNotExistException(t));if(t===r)return T_.EMPTY;if(n)return(0,T_.throwError)(new Tte.FileAlreadyExistException(r));if(this._filesToCreate.has(t))return this._filesToCreate.delete(t),this._filesToCreate.add(r),super.rename(t,r);if(this._filesToOverwrite.has(t))return this._filesToOverwrite.delete(t),(0,T_.concat)(this.rename(t,r),new T_.Observable(l=>{this._filesToOverwrite.add(r),l.complete()}));if(this._filesToDelete.has(r))return this._filesToDelete.delete(r),this._filesToDelete.add(t),this._filesToOverwrite.add(r),this.read(t).pipe((0,T_.map)(l=>this._write(r,l)));let o=this._filesToRenameRevert.get(t);return o&&(this._filesToRename.delete(o),this._filesToRenameRevert.delete(t),t=o),this._filesToRename.set(t,r),this._filesToRenameRevert.set(r,t),this._exists(t)?super.rename(t,r):this._back.read(t).pipe((0,T_.switchMap)(l=>super.write(r,l)))}))}list(t){return(0,T_.concat)(super.list(t),this._back.list(t)).pipe((0,T_.reduce)((r,n)=>(n.forEach(a=>r.add(a)),r),new Set),(0,T_.map)(r=>[...r]))}exists(t){return this._exists(t)?(0,T_.of)(!0):this.willDelete(t)||this.willRename(t)?(0,T_.of)(!1):this._back.exists(t)}isDirectory(t){return this._exists(t)?super.isDirectory(t):this._back.isDirectory(t)}isFile(t){return this._exists(t)?super.isFile(t):this.willDelete(t)||this.willRename(t)?(0,T_.of)(!1):this._back.isFile(t)}stat(t){return this._exists(t)?super.stat(t):this.willDelete(t)||this.willRename(t)?(0,T_.of)(null):this._back.stat(t)}watch(t,r){return null}willCreate(t){return this._filesToCreate.has(t)}willOverwrite(t){return this._filesToOverwrite.has(t)}willDelete(t){return this._filesToDelete.has(t)}willRename(t){return this._filesToRename.has(t)}willRenameTo(t,r){return this._filesToRename.get(t)===r}};$Nt.CordHost=$5r});var m$i=H(eDt=>{"use strict";Object.defineProperty(eDt,"__esModule",{value:!0});eDt.SafeReadonlyHost=void 0;var iue=rE(),eMr=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}read(t){return this._delegate.read(t)}list(t){return this._delegate.list(t).pipe((0,iue.catchError)(()=>(0,iue.of)([])))}exists(t){return this._delegate.exists(t)}isDirectory(t){return this._delegate.isDirectory(t).pipe((0,iue.catchError)(()=>(0,iue.of)(!1)))}isFile(t){return this._delegate.isFile(t).pipe((0,iue.catchError)(()=>(0,iue.of)(!1)))}stat(t){let r=this._delegate.stat(t);return r&&r.pipe((0,iue.catchError)(()=>(0,iue.of)(null)))}};eDt.SafeReadonlyHost=eMr});var _$i=H(tDt=>{"use strict";Object.defineProperty(tDt,"__esModule",{value:!0});tDt.ScopedHost=void 0;var C$i=wxe(),qtl=W8e(),tMr=class extends qtl.ResolverHost{_root;constructor(t,r=C$i.NormalizedRoot){super(t),this._root=r}_resolve(t){return(0,C$i.join)(this._root,t)}};tDt.ScopedHost=tMr});var b$i=H(O2=>{"use strict";var y$i=O2&&O2.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$tl=O2&&O2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),erl=O2&&O2.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var E$i=VP&&VP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rrl=VP&&VP.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nrl=VP&&VP.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(rMr,"__esModule",{value:!0});rMr.createWorkspaceHost=orl;var nDt=rE(),kxe=rDt();function orl(e){return{async readFile(r){let n=await(0,nDt.lastValueFrom)(e.read((0,kxe.normalize)(r)));return kxe.virtualFs.fileBufferToString(n)},async writeFile(r,n){return(0,nDt.lastValueFrom)(e.write((0,kxe.normalize)(r),kxe.virtualFs.stringToFileBuffer(n)))},async isDirectory(r){try{return await(0,nDt.lastValueFrom)(e.isDirectory((0,kxe.normalize)(r)))}catch{return!1}},async isFile(r){try{return await(0,nDt.lastValueFrom)(e.isFile((0,kxe.normalize)(r)))}catch{return!1}}}}});var sDt=H((v$i,iDt)=>{(function(e){if(typeof iDt=="object"&&typeof iDt.exports=="object"){var t=e(Et,v$i);t!==void 0&&(iDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createScanner=void 0;function r(A,f=!1){let I=A.length,C=0,b="",E=0,N=16,B=0,F=0,Q=0,J=0,ae=0;function ne(De,k){let tt=0,ze=0;for(;tt=48&&Le<=57)ze=ze*16+Le-48;else if(Le>=65&&Le<=70)ze=ze*16+Le-65+10;else if(Le>=97&&Le<=102)ze=ze*16+Le-97+10;else break;C++,tt++}return tt=I){De+=A.substring(k,C),ae=2;break}let tt=A.charCodeAt(C);if(tt===34){De+=A.substring(k,C),C++;break}if(tt===92){if(De+=A.substring(k,C),C++,C>=I){ae=2;break}switch(A.charCodeAt(C++)){case 34:De+='"';break;case 92:De+="\\";break;case 47:De+="/";break;case 98:De+="\b";break;case 102:De+="\f";break;case 110:De+=` `;break;case 114:De+="\r";break;case 116:De+=" ";break;case 117:let Le=ne(4,!0);Le>=0?De+=String.fromCharCode(Le):ae=4;break;default:ae=5}k=C;continue}if(tt>=0&&tt<=31)if(a(tt)){De+=A.substring(k,C),ae=2;break}else ae=6;C++}return De}function de(){if(b="",ae=0,E=C,F=B,J=Q,C>=I)return E=I,N=17;let De=A.charCodeAt(C);if(n(De)){do C++,b+=String.fromCharCode(De),De=A.charCodeAt(C);while(n(De));return N=15}if(a(De))return C++,b+=String.fromCharCode(De),De===13&&A.charCodeAt(C)===10&&(C++,b+=` -`),B++,Q=C,N=14;switch(De){case 123:return C++,N=1;case 125:return C++,N=2;case 91:return C++,N=3;case 93:return C++,N=4;case 58:return C++,N=6;case 44:return C++,N=5;case 34:return C++,b=ue(),N=10;case 47:let k=C-1;if(A.charCodeAt(C+1)===47){for(C+=2;C=12&&De<=15);return De}return{setPosition:ce,getPosition:()=>C,scan:f?Se:de,getToken:()=>N,getTokenValue:()=>b,getTokenOffset:()=>E,getTokenLength:()=>C-E,getTokenStartLine:()=>F,getTokenStartCharacter:()=>E-J,getTokenError:()=>ae}}t.createScanner=r;function n(A){return A===32||A===9}function a(A){return A===10||A===13}function o(A){return A>=48&&A<=57}var l;(function(A){A[A.lineFeed=10]="lineFeed",A[A.carriageReturn=13]="carriageReturn",A[A.space=32]="space",A[A._0=48]="_0",A[A._1=49]="_1",A[A._2=50]="_2",A[A._3=51]="_3",A[A._4=52]="_4",A[A._5=53]="_5",A[A._6=54]="_6",A[A._7=55]="_7",A[A._8=56]="_8",A[A._9=57]="_9",A[A.a=97]="a",A[A.b=98]="b",A[A.c=99]="c",A[A.d=100]="d",A[A.e=101]="e",A[A.f=102]="f",A[A.g=103]="g",A[A.h=104]="h",A[A.i=105]="i",A[A.j=106]="j",A[A.k=107]="k",A[A.l=108]="l",A[A.m=109]="m",A[A.n=110]="n",A[A.o=111]="o",A[A.p=112]="p",A[A.q=113]="q",A[A.r=114]="r",A[A.s=115]="s",A[A.t=116]="t",A[A.u=117]="u",A[A.v=118]="v",A[A.w=119]="w",A[A.x=120]="x",A[A.y=121]="y",A[A.z=122]="z",A[A.A=65]="A",A[A.B=66]="B",A[A.C=67]="C",A[A.D=68]="D",A[A.E=69]="E",A[A.F=70]="F",A[A.G=71]="G",A[A.H=72]="H",A[A.I=73]="I",A[A.J=74]="J",A[A.K=75]="K",A[A.L=76]="L",A[A.M=77]="M",A[A.N=78]="N",A[A.O=79]="O",A[A.P=80]="P",A[A.Q=81]="Q",A[A.R=82]="R",A[A.S=83]="S",A[A.T=84]="T",A[A.U=85]="U",A[A.V=86]="V",A[A.W=87]="W",A[A.X=88]="X",A[A.Y=89]="Y",A[A.Z=90]="Z",A[A.asterisk=42]="asterisk",A[A.backslash=92]="backslash",A[A.closeBrace=125]="closeBrace",A[A.closeBracket=93]="closeBracket",A[A.colon=58]="colon",A[A.comma=44]="comma",A[A.dot=46]="dot",A[A.doubleQuote=34]="doubleQuote",A[A.minus=45]="minus",A[A.openBrace=123]="openBrace",A[A.openBracket=91]="openBracket",A[A.plus=43]="plus",A[A.slash=47]="slash",A[A.formFeed=12]="formFeed",A[A.tab=9]="tab"})(l||(l={}))})});var B$i=H((v$i,oDt)=>{(function(e){if(typeof oDt=="object"&&typeof oDt.exports=="object"){var t=e(Et,v$i);t!==void 0&&(oDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.supportedEols=t.cachedBreakLinesWithSpaces=t.cachedSpaces=void 0,t.cachedSpaces=new Array(20).fill(0).map((n,a)=>" ".repeat(a));let r=200;t.cachedBreakLinesWithSpaces={" ":{"\n":new Array(r).fill(0).map((n,a)=>` +`),B++,Q=C,N=14;switch(De){case 123:return C++,N=1;case 125:return C++,N=2;case 91:return C++,N=3;case 93:return C++,N=4;case 58:return C++,N=6;case 44:return C++,N=5;case 34:return C++,b=ue(),N=10;case 47:let k=C-1;if(A.charCodeAt(C+1)===47){for(C+=2;C=12&&De<=15);return De}return{setPosition:ce,getPosition:()=>C,scan:f?Se:de,getToken:()=>N,getTokenValue:()=>b,getTokenOffset:()=>E,getTokenLength:()=>C-E,getTokenStartLine:()=>F,getTokenStartCharacter:()=>E-J,getTokenError:()=>ae}}t.createScanner=r;function n(A){return A===32||A===9}function a(A){return A===10||A===13}function o(A){return A>=48&&A<=57}var l;(function(A){A[A.lineFeed=10]="lineFeed",A[A.carriageReturn=13]="carriageReturn",A[A.space=32]="space",A[A._0=48]="_0",A[A._1=49]="_1",A[A._2=50]="_2",A[A._3=51]="_3",A[A._4=52]="_4",A[A._5=53]="_5",A[A._6=54]="_6",A[A._7=55]="_7",A[A._8=56]="_8",A[A._9=57]="_9",A[A.a=97]="a",A[A.b=98]="b",A[A.c=99]="c",A[A.d=100]="d",A[A.e=101]="e",A[A.f=102]="f",A[A.g=103]="g",A[A.h=104]="h",A[A.i=105]="i",A[A.j=106]="j",A[A.k=107]="k",A[A.l=108]="l",A[A.m=109]="m",A[A.n=110]="n",A[A.o=111]="o",A[A.p=112]="p",A[A.q=113]="q",A[A.r=114]="r",A[A.s=115]="s",A[A.t=116]="t",A[A.u=117]="u",A[A.v=118]="v",A[A.w=119]="w",A[A.x=120]="x",A[A.y=121]="y",A[A.z=122]="z",A[A.A=65]="A",A[A.B=66]="B",A[A.C=67]="C",A[A.D=68]="D",A[A.E=69]="E",A[A.F=70]="F",A[A.G=71]="G",A[A.H=72]="H",A[A.I=73]="I",A[A.J=74]="J",A[A.K=75]="K",A[A.L=76]="L",A[A.M=77]="M",A[A.N=78]="N",A[A.O=79]="O",A[A.P=80]="P",A[A.Q=81]="Q",A[A.R=82]="R",A[A.S=83]="S",A[A.T=84]="T",A[A.U=85]="U",A[A.V=86]="V",A[A.W=87]="W",A[A.X=88]="X",A[A.Y=89]="Y",A[A.Z=90]="Z",A[A.asterisk=42]="asterisk",A[A.backslash=92]="backslash",A[A.closeBrace=125]="closeBrace",A[A.closeBracket=93]="closeBracket",A[A.colon=58]="colon",A[A.comma=44]="comma",A[A.dot=46]="dot",A[A.doubleQuote=34]="doubleQuote",A[A.minus=45]="minus",A[A.openBrace=123]="openBrace",A[A.openBracket=91]="openBracket",A[A.plus=43]="plus",A[A.slash=47]="slash",A[A.formFeed=12]="formFeed",A[A.tab=9]="tab"})(l||(l={}))})});var w$i=H((B$i,oDt)=>{(function(e){if(typeof oDt=="object"&&typeof oDt.exports=="object"){var t=e(Et,B$i);t!==void 0&&(oDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.supportedEols=t.cachedBreakLinesWithSpaces=t.cachedSpaces=void 0,t.cachedSpaces=new Array(20).fill(0).map((n,a)=>" ".repeat(a));let r=200;t.cachedBreakLinesWithSpaces={" ":{"\n":new Array(r).fill(0).map((n,a)=>` `+" ".repeat(a)),"\r":new Array(r).fill(0).map((n,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((n,a)=>`\r `+" ".repeat(a))}," ":{"\n":new Array(r).fill(0).map((n,a)=>` `+" ".repeat(a)),"\r":new Array(r).fill(0).map((n,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((n,a)=>`\r `+" ".repeat(a))}},t.supportedEols=[` `,"\r",`\r -`]})});var z5r=H((w$i,aDt)=>{var utl=sDt(),uL=B$i();(function(e){if(typeof aDt=="object"&&typeof aDt.exports=="object"){var t=e(Et,w$i);t!==void 0&&(aDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner","./string-intern"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEOL=t.format=void 0;function r(A,f,I){let C,b,E,N,B;if(f){for(N=f.offset,B=N+f.length,E=N;E>0&&!l(A,E-1);)E--;let tt=B;for(;tt1)return n(F,J)+n(ne,C+ae);let tt=ne.length*(C+ae);return!Q||tt>uL.cachedBreakLinesWithSpaces[ce][F].length?F+n(ne,C+ae):tt<=0?F:uL.cachedBreakLinesWithSpaces[ce][F][tt]}function be(){let tt=fe.scan();for(J=0;tt===15||tt===14;)tt===14&&I.keepLines?J+=1:tt===14&&(J=1),tt=fe.scan();return ue=tt===16||fe.getTokenError()!==0,tt}let Se=[];function De(tt,ze,Le){!ue&&(!f||zeN)&&A.substring(ze,Le)!==tt&&Se.push({offset:ze,length:Le-ze,content:tt})}let k=be();if(I.keepLines&&J>0&&De(n(F,J),0,0),k!==17){let tt=fe.getTokenOffset()+E,ze=ne.length*C<20&&I.insertSpaces?uL.cachedSpaces[ne.length*C]:n(ne,C);De(ze,E,tt)}for(;k!==17;){let tt=fe.getTokenOffset()+fe.getTokenLength()+E,ze=be(),Le="",Je=!1;for(;J===0&&(ze===12||ze===13);){let lt=fe.getTokenOffset()+E;De(uL.cachedSpaces[1],tt,lt),tt=fe.getTokenOffset()+fe.getTokenLength()+E,Je=ze===12,Le=Je?de():"",ze=be()}if(ze===2)k!==1&&ae--,I.keepLines&&J>0||!I.keepLines&&k!==1?Le=de():I.keepLines&&(Le=uL.cachedSpaces[1]);else if(ze===4)k!==3&&ae--,I.keepLines&&J>0||!I.keepLines&&k!==3?Le=de():I.keepLines&&(Le=uL.cachedSpaces[1]);else{switch(k){case 3:case 1:ae++,I.keepLines&&J>0||!I.keepLines?Le=de():Le=uL.cachedSpaces[1];break;case 5:I.keepLines&&J>0||!I.keepLines?Le=de():Le=uL.cachedSpaces[1];break;case 12:Le=de();break;case 13:J>0?Le=de():Je||(Le=uL.cachedSpaces[1]);break;case 6:I.keepLines&&J>0?Le=de():Je||(Le=uL.cachedSpaces[1]);break;case 10:I.keepLines&&J>0?Le=de():ze===6&&!Je&&(Le="");break;case 7:case 8:case 9:case 11:case 2:case 4:I.keepLines&&J>0?Le=de():(ze===12||ze===13)&&!Je?Le=uL.cachedSpaces[1]:ze!==5&&ze!==17&&(ue=!0);break;case 16:ue=!0;break}J>0&&(ze===12||ze===13)&&(Le=de())}ze===17&&(I.keepLines&&J>0?Le=de():Le=I.insertFinalNewline?F:"");let ft=fe.getTokenOffset()+E;De(Le,tt,ft),k=ze}return Se}t.format=r;function n(A,f){let I="";for(let C=0;C{var arl=sDt(),gL=w$i();(function(e){if(typeof aDt=="object"&&typeof aDt.exports=="object"){var t=e(Et,T$i);t!==void 0&&(aDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner","./string-intern"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEOL=t.format=void 0;function r(A,f,I){let C,b,E,N,B;if(f){for(N=f.offset,B=N+f.length,E=N;E>0&&!l(A,E-1);)E--;let tt=B;for(;tt1)return n(F,J)+n(ne,C+ae);let tt=ne.length*(C+ae);return!Q||tt>gL.cachedBreakLinesWithSpaces[ce][F].length?F+n(ne,C+ae):tt<=0?F:gL.cachedBreakLinesWithSpaces[ce][F][tt]}function be(){let tt=fe.scan();for(J=0;tt===15||tt===14;)tt===14&&I.keepLines?J+=1:tt===14&&(J=1),tt=fe.scan();return ue=tt===16||fe.getTokenError()!==0,tt}let Se=[];function De(tt,ze,Le){!ue&&(!f||zeN)&&A.substring(ze,Le)!==tt&&Se.push({offset:ze,length:Le-ze,content:tt})}let k=be();if(I.keepLines&&J>0&&De(n(F,J),0,0),k!==17){let tt=fe.getTokenOffset()+E,ze=ne.length*C<20&&I.insertSpaces?gL.cachedSpaces[ne.length*C]:n(ne,C);De(ze,E,tt)}for(;k!==17;){let tt=fe.getTokenOffset()+fe.getTokenLength()+E,ze=be(),Le="",Je=!1;for(;J===0&&(ze===12||ze===13);){let lt=fe.getTokenOffset()+E;De(gL.cachedSpaces[1],tt,lt),tt=fe.getTokenOffset()+fe.getTokenLength()+E,Je=ze===12,Le=Je?de():"",ze=be()}if(ze===2)k!==1&&ae--,I.keepLines&&J>0||!I.keepLines&&k!==1?Le=de():I.keepLines&&(Le=gL.cachedSpaces[1]);else if(ze===4)k!==3&&ae--,I.keepLines&&J>0||!I.keepLines&&k!==3?Le=de():I.keepLines&&(Le=gL.cachedSpaces[1]);else{switch(k){case 3:case 1:ae++,I.keepLines&&J>0||!I.keepLines?Le=de():Le=gL.cachedSpaces[1];break;case 5:I.keepLines&&J>0||!I.keepLines?Le=de():Le=gL.cachedSpaces[1];break;case 12:Le=de();break;case 13:J>0?Le=de():Je||(Le=gL.cachedSpaces[1]);break;case 6:I.keepLines&&J>0?Le=de():Je||(Le=gL.cachedSpaces[1]);break;case 10:I.keepLines&&J>0?Le=de():ze===6&&!Je&&(Le="");break;case 7:case 8:case 9:case 11:case 2:case 4:I.keepLines&&J>0?Le=de():(ze===12||ze===13)&&!Je?Le=gL.cachedSpaces[1]:ze!==5&&ze!==17&&(ue=!0);break;case 16:ue=!0;break}J>0&&(ze===12||ze===13)&&(Le=de())}ze===17&&(I.keepLines&&J>0?Le=de():Le=I.insertFinalNewline?F:"");let ft=fe.getTokenOffset()+E;De(Le,tt,ft),k=ze}return Se}t.format=r;function n(A,f){let I="";for(let C=0;C{var T$i=sDt();(function(e){if(typeof cDt=="object"&&typeof cDt.exports=="object"){var t=e(Et,R$i);t!==void 0&&(cDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeType=t.stripComments=t.visit=t.findNodeAtOffset=t.contains=t.getNodeValue=t.getNodePath=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=void 0;var r;(function(B){B.DEFAULT={allowTrailingComma:!1}})(r||(r={}));function n(B,F){let Q=[],J=new Object,ae,ne={value:{},offset:0,length:0,type:"object",parent:void 0},ce=!1;function fe(ue,de,be,Se){ne.value=ue,ne.offset=de,ne.length=be,ne.type=Se,ne.colonOffset=void 0,ae=ne}try{b(B,{onObjectBegin:(ue,de)=>{if(F<=ue)throw J;ae=void 0,ce=F>ue,Q.push("")},onObjectProperty:(ue,de,be)=>{if(F{if(F<=ue)throw J;ae=void 0,Q.pop()},onArrayBegin:(ue,de)=>{if(F<=ue)throw J;ae=void 0,Q.push(0)},onArrayEnd:(ue,de)=>{if(F<=ue)throw J;ae=void 0,Q.pop()},onLiteralValue:(ue,de,be)=>{if(F{if(F<=de)throw J;if(ue===":"&&ae&&ae.type==="property")ae.colonOffset=de,ce=!1,ae=void 0;else if(ue===","){let Se=Q[Q.length-1];typeof Se=="number"?Q[Q.length-1]=Se+1:(ce=!0,Q[Q.length-1]=""),ae=void 0}}})}catch(ue){if(ue!==J)throw ue}return{path:Q,previousNode:ae,isAtPropertyKey:ce,matches:ue=>{let de=0;for(let be=0;de{let ue={};ce(ue),ne.push(ae),ae=ue,J=null},onObjectProperty:ue=>{J=ue},onObjectEnd:()=>{ae=ne.pop()},onArrayBegin:()=>{let ue=[];ce(ue),ne.push(ae),ae=ue,J=null},onArrayEnd:()=>{ae=ne.pop()},onLiteralValue:ce,onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q),ae[0]}t.parse=a;function o(B,F=[],Q=r.DEFAULT){let J={type:"array",offset:-1,length:-1,children:[],parent:void 0};function ae(ue){J.type==="property"&&(J.length=ue-J.offset,J=J.parent)}function ne(ue){return J.children.push(ue),ue}b(B,{onObjectBegin:ue=>{J=ne({type:"object",offset:ue,length:-1,parent:J,children:[]})},onObjectProperty:(ue,de,be)=>{J=ne({type:"property",offset:de,length:-1,parent:J,children:[]}),J.children.push({type:"string",value:ue,offset:de,length:be,parent:J})},onObjectEnd:(ue,de)=>{ae(ue+de),J.length=ue+de-J.offset,J=J.parent,ae(ue+de)},onArrayBegin:(ue,de)=>{J=ne({type:"array",offset:ue,length:-1,parent:J,children:[]})},onArrayEnd:(ue,de)=>{J.length=ue+de-J.offset,J=J.parent,ae(ue+de)},onLiteralValue:(ue,de,be)=>{ne({type:N(ue),offset:de,length:be,parent:J,value:ue}),ae(de+be)},onSeparator:(ue,de,be)=>{J.type==="property"&&(ue===":"?J.colonOffset=de:ue===","&&ae(de))},onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q);let fe=J.children[0];return fe&&delete fe.parent,fe}t.parseTree=o;function l(B,F){if(!B)return;let Q=B;for(let J of F)if(typeof J=="string"){if(Q.type!=="object"||!Array.isArray(Q.children))return;let ae=!1;for(let ne of Q.children)if(Array.isArray(ne.children)&&ne.children[0].value===J&&ne.children.length===2){Q=ne.children[1],ae=!0;break}if(!ae)return}else{let ae=J;if(Q.type!=="array"||ae<0||!Array.isArray(Q.children)||ae>=Q.children.length)return;Q=Q.children[ae]}return Q}t.findNodeAtLocation=l;function A(B){if(!B.parent||!B.parent.children)return[];let F=A(B.parent);if(B.parent.type==="property"){let Q=B.parent.children[0].value;F.push(Q)}else if(B.parent.type==="array"){let Q=B.parent.children.indexOf(B);Q!==-1&&F.push(Q)}return F}t.getNodePath=A;function f(B){switch(B.type){case"array":return B.children.map(f);case"object":let F=Object.create(null);for(let Q of B.children){let J=Q.children[1];J&&(F[Q.children[0].value]=f(J))}return F;case"null":case"string":case"number":case"boolean":return B.value;default:return}}t.getNodeValue=f;function I(B,F,Q=!1){return F>=B.offset&&Fne===0&&cr(J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter()):()=>!0}function fe(cr){return cr?Ar=>ne===0&&cr(Ar,J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter()):()=>!0}function ue(cr){return cr?Ar=>ne===0&&cr(Ar,J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter(),()=>ae.slice()):()=>!0}function de(cr){return cr?()=>{ne>0?ne++:cr(J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter(),()=>ae.slice())===!1&&(ne=1)}:()=>!0}function be(cr){return cr?()=>{ne>0&&ne--,ne===0&&cr(J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter())}:()=>!0}let Se=de(F.onObjectBegin),De=ue(F.onObjectProperty),k=be(F.onObjectEnd),tt=de(F.onArrayBegin),ze=be(F.onArrayEnd),Le=ue(F.onLiteralValue),Je=fe(F.onSeparator),ft=ce(F.onComment),lt=fe(F.onError),Ot=Q&&Q.disallowComments,Er=Q&&Q.allowTrailingComma;function Sr(){for(;;){let cr=J.scan();switch(J.getTokenError()){case 4:jt(14);break;case 5:jt(15);break;case 3:jt(13);break;case 1:Ot||jt(11);break;case 2:jt(12);break;case 6:jt(16);break}switch(cr){case 12:case 13:Ot?jt(10):ft();break;case 16:jt(1);break;case 15:case 14:break;default:return cr}}}function jt(cr,Ar=[],qr=[]){if(lt(cr),Ar.length+qr.length>0){let yn=J.getToken();for(;yn!==17;){if(Ar.indexOf(yn)!==-1){Sr();break}else if(qr.indexOf(yn)!==-1)break;yn=Sr()}}}function Bt(cr){let Ar=J.getTokenValue();return cr?Le(Ar):(De(Ar),ae.push(Ar)),Sr(),!0}function Dt(){switch(J.getToken()){case 11:let cr=J.getTokenValue(),Ar=Number(cr);isNaN(Ar)&&(jt(2),Ar=0),Le(Ar);break;case 7:Le(null);break;case 8:Le(!0);break;case 9:Le(!1);break;default:return!1}return Sr(),!0}function Fr(){return J.getToken()!==10?(jt(3,[],[2,5]),!1):(Bt(!1),J.getToken()===6?(Je(":"),Sr(),lr()||jt(4,[],[2,5])):jt(5,[],[2,5]),ae.pop(),!0)}function $t(){Se(),Sr();let cr=!1;for(;J.getToken()!==2&&J.getToken()!==17;){if(J.getToken()===5){if(cr||jt(4,[],[]),Je(","),Sr(),J.getToken()===2&&Er)break}else cr&&jt(6,[],[]);Fr()||jt(4,[],[2,5]),cr=!0}return k(),J.getToken()!==2?jt(7,[2],[]):Sr(),!0}function Xt(){tt(),Sr();let cr=!0,Ar=!1;for(;J.getToken()!==4&&J.getToken()!==17;){if(J.getToken()===5){if(Ar||jt(4,[],[]),Je(","),Sr(),J.getToken()===4&&Er)break}else Ar&&jt(6,[],[]);cr?(ae.push(0),cr=!1):ae[ae.length-1]++,lr()||jt(4,[],[4,5]),Ar=!0}return ze(),cr||ae.pop(),J.getToken()!==4?jt(8,[4],[]):Sr(),!0}function lr(){switch(J.getToken()){case 3:return Xt();case 1:return $t();case 10:return Bt(!0);default:return Dt()}}return Sr(),J.getToken()===17?Q.allowEmptyContent?!0:(jt(4,[],[]),!1):lr()?(J.getToken()!==17&&jt(9,[],[]),!0):(jt(4,[],[]),!1)}t.visit=b;function E(B,F){let Q=(0,T$i.createScanner)(B),J=[],ae,ne=0,ce;do switch(ce=Q.getPosition(),ae=Q.scan(),ae){case 12:case 13:case 17:ne!==ce&&J.push(B.substring(ne,ce)),F!==void 0&&J.push(Q.getTokenValue().replace(/[^\r\n]/g,F)),ne=Q.getPosition();break}while(ae!==17);return J.join("")}t.stripComments=E;function N(B){switch(typeof B){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(B){if(Array.isArray(B))return"array"}else return"null";return"object"}default:return"null"}}t.getNodeType=N})});var D$i=H((N$i,lDt)=>{var $5r=z5r(),eMr=q5r();(function(e){if(typeof lDt=="object"&&typeof lDt.exports=="object"){var t=e(Et,N$i);t!==void 0&&(lDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./format","./parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWS=t.applyEdit=t.setProperty=t.removeProperty=void 0;function r(A,f,I){return n(A,f,void 0,I)}t.removeProperty=r;function n(A,f,I,C){let b=f.slice(),E=[],N=(0,eMr.parseTree)(A,E),B,F;for(;b.length>0&&(F=b.pop(),B=(0,eMr.findNodeAtLocation)(N,b),B===void 0&&I!==void 0);)typeof F=="string"?I={[F]:I}:I=[I];if(B)if(B.type==="object"&&typeof F=="string"&&Array.isArray(B.children)){let Q=(0,eMr.findNodeAtLocation)(B,[F]);if(Q!==void 0)if(I===void 0){if(!Q.parent)throw new Error("Malformed AST");let J=B.children.indexOf(Q.parent),ae,ne=Q.parent.offset+Q.parent.length;if(J>0){let ce=B.children[J-1];ae=ce.offset+ce.length}else ae=B.offset+1,B.children.length>1&&(ne=B.children[1].offset);return a(A,{offset:ae,length:ne-ae,content:""},C)}else return a(A,{offset:Q.offset,length:Q.length,content:JSON.stringify(I)},C);else{if(I===void 0)return[];let J=`${JSON.stringify(F)}: ${JSON.stringify(I)}`,ae=C.getInsertionIndex?C.getInsertionIndex(B.children.map(ce=>ce.children[0].value)):B.children.length,ne;if(ae>0){let ce=B.children[ae-1];ne={offset:ce.offset+ce.length,length:0,content:","+J}}else B.children.length===0?ne={offset:B.offset+1,length:0,content:J}:ne={offset:B.offset+1,length:0,content:J+","};return a(A,ne,C)}}else if(B.type==="array"&&typeof F=="number"&&Array.isArray(B.children)){let Q=F;if(Q===-1){let J=`${JSON.stringify(I)}`,ae;if(B.children.length===0)ae={offset:B.offset+1,length:0,content:J};else{let ne=B.children[B.children.length-1];ae={offset:ne.offset+ne.length,length:0,content:","+J}}return a(A,ae,C)}else if(I===void 0&&B.children.length>=0){let J=F,ae=B.children[J],ne;if(B.children.length===1)ne={offset:B.offset+1,length:B.length-2,content:""};else if(B.children.length-1===J){let ce=B.children[J-1],fe=ce.offset+ce.length,ue=B.offset+B.length;ne={offset:fe,length:ue-2-fe,content:""}}else ne={offset:ae.offset,length:B.children[J+1].offset-ae.offset,content:""};return a(A,ne,C)}else if(I!==void 0){let J,ae=`${JSON.stringify(I)}`;if(!C.isArrayInsertion&&B.children.length>F){let ne=B.children[F];J={offset:ne.offset,length:ne.length,content:ae}}else if(B.children.length===0||F===0)J={offset:B.offset+1,length:0,content:B.children.length===0?ae:ae+","};else{let ne=F>B.children.length?B.children.length:F,ce=B.children[ne-1];J={offset:ce.offset+ce.length,length:0,content:","+ae}}return a(A,J,C)}else throw new Error(`Can not ${I===void 0?"remove":C.isArrayInsertion?"insert":"modify"} Array index ${Q} as length is not sufficient`)}else throw new Error(`Can not add ${typeof F!="number"?"index":"property"} to parent of type ${B.type}`);else{if(I===void 0)throw new Error("Can not delete in empty document");return a(A,{offset:N?N.offset:0,length:N?N.length:0,content:JSON.stringify(I)},C)}}t.setProperty=n;function a(A,f,I){if(!I.formattingOptions)return[f];let C=o(A,f),b=f.offset,E=f.offset+f.content.length;if(f.length===0||f.content.length===0){for(;b>0&&!(0,$5r.isEOL)(C,b-1);)b--;for(;E=0;F--){let Q=N[F];C=o(C,Q),b=Math.min(b,Q.offset),E=Math.max(E,Q.offset+Q.length),E+=Q.content.length-Q.length}let B=A.length-(C.length-E)-b;return[{offset:b,length:B,content:C.substring(b,E)}]}function o(A,f){return A.substring(0,f.offset)+f.content+A.substring(f.offset+f.length)}t.applyEdit=o;function l(A,f){return`\r - `.indexOf(A.charAt(f))!==-1}t.isWS=l})});var xxe=H((x$i,uDt)=>{var gtl=z5r(),k$i=D$i(),Atl=sDt(),Tte=q5r();(function(e){if(typeof uDt=="object"&&typeof uDt.exports=="object"){var t=e(Et,x$i);t!==void 0&&(uDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./impl/format","./impl/edit","./impl/scanner","./impl/parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyEdits=t.modify=t.format=t.printParseErrorCode=t.ParseErrorCode=t.stripComments=t.visit=t.getNodeValue=t.getNodePath=t.findNodeAtOffset=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=t.SyntaxKind=t.ScanError=t.createScanner=void 0,t.createScanner=Atl.createScanner;var r;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(r||(t.ScanError=r={}));var n;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(n||(t.SyntaxKind=n={})),t.getLocation=Tte.getLocation,t.parse=Tte.parse,t.parseTree=Tte.parseTree,t.findNodeAtLocation=Tte.findNodeAtLocation,t.findNodeAtOffset=Tte.findNodeAtOffset,t.getNodePath=Tte.getNodePath,t.getNodeValue=Tte.getNodeValue,t.visit=Tte.visit,t.stripComments=Tte.stripComments;var a;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(a||(t.ParseErrorCode=a={}));function o(I){switch(I){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return""}t.printParseErrorCode=o;function l(I,C,b){return gtl.format(I,C,b)}t.format=l;function A(I,C,b,E){return k$i.setProperty(I,C,b,E)}t.modify=A;function f(I,C){let b=C.slice(0).sort((N,B)=>{let F=N.offset-B.offset;return F===0?N.length-B.length:F}),E=I.length;for(let N=b.length-1;N>=0;N--){let B=b[N];if(B.offset+B.length<=E)I=k$i.applyEdit(I,B);else throw new Error("Overlapping edit");E=B.offset}return I}t.applyEdits=f})});var rMr=H(Gxe=>{"use strict";Object.defineProperty(Gxe,"__esModule",{value:!0});Gxe.JsonWorkspaceMetadata=Gxe.JsonWorkspaceSymbol=void 0;var G$i=xxe();Gxe.JsonWorkspaceSymbol=Symbol.for("@angular/core:workspace-json");function F$i(e){return e.replace("~","~0").replace("/","~1")}var tMr=class{filePath;ast;raw;changes=new Map;hasLegacyTargetsName=!0;constructor(t,r,n){this.filePath=t,this.ast=r,this.raw=n}get hasChanges(){return this.changes.size>0}get changeCount(){return this.changes.size}getNodeValueFromAst(t){let r=(0,G$i.findNodeAtLocation)(this.ast,t);return r&&(0,G$i.getNodeValue)(r)}findChangesForPath(t){return this.changes.get(t)}addChange(t,r,n){let a="";for(let l=0;lF$i(l)).join("/");for(let l of this.changes.keys())l.startsWith(o+"/")&&this.changes.delete(l);this.changes.set(o,{jsonPath:t,type:n,value:r})}};Gxe.JsonWorkspaceMetadata=tMr});var V$i=H(nMr=>{"use strict";Object.defineProperty(nMr,"__esModule",{value:!0});nMr.createVirtualAstObject=ptl;var dtl=TNt();function ptl(e,t={}){let r=(n,a,o,l)=>{t.listener&&(o===l||JSON.stringify(o)===JSON.stringify(l)||(Array.isArray(a)?t.listener(n.slice(0,-1),a):t.listener(n,l)))};return L$i(Array.isArray(e)?[...e]:{...e},[],r,new Set(t.exclude),t.include?.length?new Set(t.include):void 0)}function L$i(e,t,r,n=new Set,a){return new Proxy(e,{getOwnPropertyDescriptor(o,l){if(!(n.has(l)||a&&!a.has(l)))return Reflect.getOwnPropertyDescriptor(o,l)},has(o,l){return typeof l=="symbol"||n.has(l)?!1:Reflect.has(o,l)},get(o,l){if(n.has(l)||a&&!a.has(l))return;let A=Reflect.get(o,l);return typeof l=="symbol"?A:(0,dtl.isJsonObject)(A)&&!(A instanceof Map)||Array.isArray(A)?L$i(A,[...t,l],r):A},set(o,l,A){if(n.has(l)||a&&!a.has(l))return!1;if(A===void 0)return this.deleteProperty?.(o,l)??!1;if(typeof l=="symbol")return Reflect.set(o,l,A);let f=Z$i(o,l);return Reflect.set(o,l,A)?(r([...t,l],o,f,A),!0):!1},deleteProperty(o,l){if(n.has(l))return!1;if(typeof l=="symbol")return Reflect.deleteProperty(o,l);let A=Z$i(o,l);return Reflect.deleteProperty(o,l)&&r([...t,l],o,A,void 0),!0},defineProperty(o,l,A){return typeof l=="symbol"?Reflect.defineProperty(o,l,A):!1},ownKeys(o){return Reflect.ownKeys(o).filter(l=>!n.has(l)&&(!a||a.has(l)))}})}function Z$i(e,t){if(Array.isArray(e)&&isFinite(+t))return e[+t];if(e&&t in e)return e[t]}});var P$i=H(iMr=>{"use strict";Object.defineProperty(iMr,"__esModule",{value:!0});iMr.readJsonWorkspace=htl;var Rte=xxe(),ADt=d_e(),W$i=b5r(),O$i=rMr(),gDt=V$i(),ftl=Object.freeze(["cli","newProjectRoot","schematics"]),Itl=Object.freeze(["cli","schematics","projectType","i18n"]);async function htl(e,t,r={}){let n=await t.readFile(e);if(n===void 0)throw new Error("Unable to read workspace file.");let a=(0,Rte.parseTree)(n,void 0,{allowTrailingComma:!0,disallowComments:!1});if(a?.type!=="object"||!a.children)throw new Error("Invalid workspace file - expected JSON object.");let o=(0,Rte.findNodeAtLocation)(a,["version"]);if(!o)throw new Error("Unknown format - version specifier not found.");let l=o.value;if(l!==1)throw new Error(`Invalid format version detected - Expected:[ 1 ] Found: [ ${l} ]`);let A={host:t,metadata:new O$i.JsonWorkspaceMetadata(e,a,n),trackChanges:!0,unprefixedWorkspaceExtensions:new Set([...ftl,...r.allowedWorkspaceExtensions??[]]),unprefixedProjectExtensions:new Set([...Itl,...r.allowedProjectExtensions??[]]),error(I,C){throw new Error(I)},warn(I,C){console.warn(I)}};return mtl(a,A)}function mtl(e,t){let r=t.metadata,n,a;t.trackChanges||(a=Object.create(null));let o=(0,Rte.getNodeValue)(e);for(let[f,I]of Object.entries(o))if(!(f==="$schema"||f==="version"))if(f==="projects"){let C=(0,Rte.findNodeAtLocation)(e,["projects"]);if(!(0,ADt.isJsonObject)(I)||!C){t.error('Invalid "projects" field found; expected an object.',I);continue}n=Ctl(C,t)}else!t.unprefixedWorkspaceExtensions.has(f)&&!/^[a-z]{1,3}-.*/.test(f)&&t.warn(`Workspace extension with invalid name (${f}) found.`,f),a&&(a[f]=I);let l;t.trackChanges&&(l=(f,I)=>{r.addChange(["projects",f],I,"project")});let A=new W$i.ProjectDefinitionCollection(n,l);return{[O$i.JsonWorkspaceSymbol]:r,projects:A,extensions:a??(0,gDt.createVirtualAstObject)(o,{exclude:["$schema","version","projects"],listener(f,I){r.addChange(f,I)}})}}function Ctl(e,t){let r=Object.create(null);for(let[n,a]of Object.entries((0,Rte.getNodeValue)(e))){let o=(0,Rte.findNodeAtLocation)(e,[n]);if(!(0,ADt.isJsonObject)(a)||!o){t.warn("Skipping invalid project value; expected an object.",a);continue}r[n]=_tl(n,o,t)}return r}function _tl(e,t,r){let n=r.metadata,a,o=!1,l,A;r.trackChanges||(l=Object.create(null),A=Object.create(null));let f=(0,Rte.getNodeValue)(t);if(!("root"in f))throw new Error(`Project "${e}" is missing a required property "root".`);for(let[N,B]of Object.entries(f))switch(N){case"targets":case"architect":{let F=(0,Rte.findNodeAtLocation)(t,[N]);if(!(0,ADt.isJsonObject)(B)||!F){r.error(`Invalid "${N}" field found; expected an object.`,B);break}o=!0,a=ytl(e,F,r),n.hasLegacyTargetsName=N==="architect";break}case"prefix":case"root":case"sourceRoot":typeof B!="string"&&r.warn(`Project property "${N}" should be a string.`,B),A&&(A[N]=B);break;default:!r.unprefixedProjectExtensions.has(N)&&!/^[a-z]{1,3}-.*/.test(N)&&r.warn(`Project '${e}' contains extension with invalid name (${N}).`,N),l&&(l[N]=B);break}let I;r.trackChanges&&(I=(N,B,F)=>{o?n.addChange(["projects",e,"targets",N],B,"target"):n.addChange(["projects",e,"targets"],F,"targetcollection")});let C={targets:new W$i.TargetDefinitionCollection(a,I),extensions:l??(0,gDt.createVirtualAstObject)(f,{exclude:["architect","prefix","root","sourceRoot","targets"],listener(N,B){n.addChange(["projects",e,...N],B)}})},b=new Set(Object.keys(C)),E=A??(0,gDt.createVirtualAstObject)(f,{include:["prefix","root","sourceRoot",...b],listener(N,B){b.has(N[0])||n.addChange(["projects",e,...N],B)}});return Object.assign(E,C)}function ytl(e,t,r){let n=r.metadata,a=Object.create(null);for(let[o,l]of Object.entries((0,Rte.getNodeValue)(t))){if(!(0,ADt.isJsonObject)(l)){r.warn("Skipping invalid target value; expected an object.",l);continue}r.trackChanges?a[o]=(0,gDt.createVirtualAstObject)(l,{include:["builder","options","configurations","defaultConfiguration"],listener(A,f){n.addChange(["projects",e,"targets",o,...A],f)}}):a[o]=l}return a}});var Q$i=H(oMr=>{"use strict";Object.defineProperty(oMr,"__esModule",{value:!0});oMr.writeJsonWorkspace=Stl;var M$i=xxe(),btl=Et("node:os"),Etl=rMr();async function Stl(e,t,r,n={}){let a=e[Etl.JsonWorkspaceSymbol];if(a){if(!a.hasChanges)return;let o=Ttl(a);return t.writeFile(r??a.filePath,o)}else{if(!r)throw new Error("path option is required");let o=vtl(e,n.schema),l=JSON.stringify(o,null,2);return t.writeFile(r,l)}}function vtl(e,t){return{$schema:t||"./node_modules/@angular/cli/lib/config/schema.json",version:1,...e.extensions,...Y8e(e.projects)?{}:{projects:H$i(e.projects)}}}function H$i(e){let t=Object.create(null);for(let[r,n]of e)t[r]=Y$i(n);return t}function Y$i(e){let t;if(e.targets.size>0){t=Object.create(null);for(let[n,a]of e.targets)t[n]=sMr(a)}return{...e.extensions,root:e.root,...e.sourceRoot===void 0?{}:{sourceRoot:e.sourceRoot},...e.prefix===void 0?{}:{prefix:e.prefix},...t===void 0?{}:{architect:t}}}function Y8e(e){return e===void 0||Object.keys(e).length===0}function sMr(e){return{builder:e.builder,...Y8e(e.options)?{}:{options:e.options},...Y8e(e.configurations)?{}:{configurations:e.configurations},...e.defaultConfiguration===void 0?{}:{defaultConfiguration:e.defaultConfiguration}}}function Btl(e){let t=Object.create(null);for(let[r,n]of e)t[r]=sMr(n);return t}function wtl(e,t){if(e!==void 0)switch(t){case"project":return Y$i(e);case"projectcollection":{let r=H$i(e);return Y8e(r)?void 0:r}case"target":return sMr(e);case"targetcollection":{let r=Btl(e);return Y8e(r)?void 0:r}default:return e}}function Ttl(e){let{raw:t}=e,{changes:r,hasLegacyTargetsName:n}=e;for(let{jsonPath:a,value:o,type:l}of r.values()){n&&a[2]==="targets"&&(a[2]="architect");let A=(0,M$i.modify)(t,a,wtl(o,l),{formattingOptions:{insertSpaces:!0,tabSize:2,eol:Rtl(t)}});t=(0,M$i.applyEdits)(t,A)}return t}function Rtl(e){let t=`\r +`.indexOf(A.charAt(f))!==-1}t.isEOL=l})});var iMr=H((N$i,cDt)=>{var R$i=sDt();(function(e){if(typeof cDt=="object"&&typeof cDt.exports=="object"){var t=e(Et,N$i);t!==void 0&&(cDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeType=t.stripComments=t.visit=t.findNodeAtOffset=t.contains=t.getNodeValue=t.getNodePath=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=void 0;var r;(function(B){B.DEFAULT={allowTrailingComma:!1}})(r||(r={}));function n(B,F){let Q=[],J=new Object,ae,ne={value:{},offset:0,length:0,type:"object",parent:void 0},ce=!1;function fe(ue,de,be,Se){ne.value=ue,ne.offset=de,ne.length=be,ne.type=Se,ne.colonOffset=void 0,ae=ne}try{b(B,{onObjectBegin:(ue,de)=>{if(F<=ue)throw J;ae=void 0,ce=F>ue,Q.push("")},onObjectProperty:(ue,de,be)=>{if(F{if(F<=ue)throw J;ae=void 0,Q.pop()},onArrayBegin:(ue,de)=>{if(F<=ue)throw J;ae=void 0,Q.push(0)},onArrayEnd:(ue,de)=>{if(F<=ue)throw J;ae=void 0,Q.pop()},onLiteralValue:(ue,de,be)=>{if(F{if(F<=de)throw J;if(ue===":"&&ae&&ae.type==="property")ae.colonOffset=de,ce=!1,ae=void 0;else if(ue===","){let Se=Q[Q.length-1];typeof Se=="number"?Q[Q.length-1]=Se+1:(ce=!0,Q[Q.length-1]=""),ae=void 0}}})}catch(ue){if(ue!==J)throw ue}return{path:Q,previousNode:ae,isAtPropertyKey:ce,matches:ue=>{let de=0;for(let be=0;de{let ue={};ce(ue),ne.push(ae),ae=ue,J=null},onObjectProperty:ue=>{J=ue},onObjectEnd:()=>{ae=ne.pop()},onArrayBegin:()=>{let ue=[];ce(ue),ne.push(ae),ae=ue,J=null},onArrayEnd:()=>{ae=ne.pop()},onLiteralValue:ce,onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q),ae[0]}t.parse=a;function o(B,F=[],Q=r.DEFAULT){let J={type:"array",offset:-1,length:-1,children:[],parent:void 0};function ae(ue){J.type==="property"&&(J.length=ue-J.offset,J=J.parent)}function ne(ue){return J.children.push(ue),ue}b(B,{onObjectBegin:ue=>{J=ne({type:"object",offset:ue,length:-1,parent:J,children:[]})},onObjectProperty:(ue,de,be)=>{J=ne({type:"property",offset:de,length:-1,parent:J,children:[]}),J.children.push({type:"string",value:ue,offset:de,length:be,parent:J})},onObjectEnd:(ue,de)=>{ae(ue+de),J.length=ue+de-J.offset,J=J.parent,ae(ue+de)},onArrayBegin:(ue,de)=>{J=ne({type:"array",offset:ue,length:-1,parent:J,children:[]})},onArrayEnd:(ue,de)=>{J.length=ue+de-J.offset,J=J.parent,ae(ue+de)},onLiteralValue:(ue,de,be)=>{ne({type:N(ue),offset:de,length:be,parent:J,value:ue}),ae(de+be)},onSeparator:(ue,de,be)=>{J.type==="property"&&(ue===":"?J.colonOffset=de:ue===","&&ae(de))},onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q);let fe=J.children[0];return fe&&delete fe.parent,fe}t.parseTree=o;function l(B,F){if(!B)return;let Q=B;for(let J of F)if(typeof J=="string"){if(Q.type!=="object"||!Array.isArray(Q.children))return;let ae=!1;for(let ne of Q.children)if(Array.isArray(ne.children)&&ne.children[0].value===J&&ne.children.length===2){Q=ne.children[1],ae=!0;break}if(!ae)return}else{let ae=J;if(Q.type!=="array"||ae<0||!Array.isArray(Q.children)||ae>=Q.children.length)return;Q=Q.children[ae]}return Q}t.findNodeAtLocation=l;function A(B){if(!B.parent||!B.parent.children)return[];let F=A(B.parent);if(B.parent.type==="property"){let Q=B.parent.children[0].value;F.push(Q)}else if(B.parent.type==="array"){let Q=B.parent.children.indexOf(B);Q!==-1&&F.push(Q)}return F}t.getNodePath=A;function f(B){switch(B.type){case"array":return B.children.map(f);case"object":let F=Object.create(null);for(let Q of B.children){let J=Q.children[1];J&&(F[Q.children[0].value]=f(J))}return F;case"null":case"string":case"number":case"boolean":return B.value;default:return}}t.getNodeValue=f;function I(B,F,Q=!1){return F>=B.offset&&Fne===0&&cr(J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter()):()=>!0}function fe(cr){return cr?Ar=>ne===0&&cr(Ar,J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter()):()=>!0}function ue(cr){return cr?Ar=>ne===0&&cr(Ar,J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter(),()=>ae.slice()):()=>!0}function de(cr){return cr?()=>{ne>0?ne++:cr(J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter(),()=>ae.slice())===!1&&(ne=1)}:()=>!0}function be(cr){return cr?()=>{ne>0&&ne--,ne===0&&cr(J.getTokenOffset(),J.getTokenLength(),J.getTokenStartLine(),J.getTokenStartCharacter())}:()=>!0}let Se=de(F.onObjectBegin),De=ue(F.onObjectProperty),k=be(F.onObjectEnd),tt=de(F.onArrayBegin),ze=be(F.onArrayEnd),Le=ue(F.onLiteralValue),Je=fe(F.onSeparator),ft=ce(F.onComment),lt=fe(F.onError),Ot=Q&&Q.disallowComments,Er=Q&&Q.allowTrailingComma;function Sr(){for(;;){let cr=J.scan();switch(J.getTokenError()){case 4:jt(14);break;case 5:jt(15);break;case 3:jt(13);break;case 1:Ot||jt(11);break;case 2:jt(12);break;case 6:jt(16);break}switch(cr){case 12:case 13:Ot?jt(10):ft();break;case 16:jt(1);break;case 15:case 14:break;default:return cr}}}function jt(cr,Ar=[],qr=[]){if(lt(cr),Ar.length+qr.length>0){let _n=J.getToken();for(;_n!==17;){if(Ar.indexOf(_n)!==-1){Sr();break}else if(qr.indexOf(_n)!==-1)break;_n=Sr()}}}function Bt(cr){let Ar=J.getTokenValue();return cr?Le(Ar):(De(Ar),ae.push(Ar)),Sr(),!0}function Nt(){switch(J.getToken()){case 11:let cr=J.getTokenValue(),Ar=Number(cr);isNaN(Ar)&&(jt(2),Ar=0),Le(Ar);break;case 7:Le(null);break;case 8:Le(!0);break;case 9:Le(!1);break;default:return!1}return Sr(),!0}function Fr(){return J.getToken()!==10?(jt(3,[],[2,5]),!1):(Bt(!1),J.getToken()===6?(Je(":"),Sr(),lr()||jt(4,[],[2,5])):jt(5,[],[2,5]),ae.pop(),!0)}function $t(){Se(),Sr();let cr=!1;for(;J.getToken()!==2&&J.getToken()!==17;){if(J.getToken()===5){if(cr||jt(4,[],[]),Je(","),Sr(),J.getToken()===2&&Er)break}else cr&&jt(6,[],[]);Fr()||jt(4,[],[2,5]),cr=!0}return k(),J.getToken()!==2?jt(7,[2],[]):Sr(),!0}function Xt(){tt(),Sr();let cr=!0,Ar=!1;for(;J.getToken()!==4&&J.getToken()!==17;){if(J.getToken()===5){if(Ar||jt(4,[],[]),Je(","),Sr(),J.getToken()===4&&Er)break}else Ar&&jt(6,[],[]);cr?(ae.push(0),cr=!1):ae[ae.length-1]++,lr()||jt(4,[],[4,5]),Ar=!0}return ze(),cr||ae.pop(),J.getToken()!==4?jt(8,[4],[]):Sr(),!0}function lr(){switch(J.getToken()){case 3:return Xt();case 1:return $t();case 10:return Bt(!0);default:return Nt()}}return Sr(),J.getToken()===17?Q.allowEmptyContent?!0:(jt(4,[],[]),!1):lr()?(J.getToken()!==17&&jt(9,[],[]),!0):(jt(4,[],[]),!1)}t.visit=b;function E(B,F){let Q=(0,R$i.createScanner)(B),J=[],ae,ne=0,ce;do switch(ce=Q.getPosition(),ae=Q.scan(),ae){case 12:case 13:case 17:ne!==ce&&J.push(B.substring(ne,ce)),F!==void 0&&J.push(Q.getTokenValue().replace(/[^\r\n]/g,F)),ne=Q.getPosition();break}while(ae!==17);return J.join("")}t.stripComments=E;function N(B){switch(typeof B){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(B){if(Array.isArray(B))return"array"}else return"null";return"object"}default:return"null"}}t.getNodeType=N})});var k$i=H((D$i,lDt)=>{var sMr=nMr(),oMr=iMr();(function(e){if(typeof lDt=="object"&&typeof lDt.exports=="object"){var t=e(Et,D$i);t!==void 0&&(lDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./format","./parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWS=t.applyEdit=t.setProperty=t.removeProperty=void 0;function r(A,f,I){return n(A,f,void 0,I)}t.removeProperty=r;function n(A,f,I,C){let b=f.slice(),E=[],N=(0,oMr.parseTree)(A,E),B,F;for(;b.length>0&&(F=b.pop(),B=(0,oMr.findNodeAtLocation)(N,b),B===void 0&&I!==void 0);)typeof F=="string"?I={[F]:I}:I=[I];if(B)if(B.type==="object"&&typeof F=="string"&&Array.isArray(B.children)){let Q=(0,oMr.findNodeAtLocation)(B,[F]);if(Q!==void 0)if(I===void 0){if(!Q.parent)throw new Error("Malformed AST");let J=B.children.indexOf(Q.parent),ae,ne=Q.parent.offset+Q.parent.length;if(J>0){let ce=B.children[J-1];ae=ce.offset+ce.length}else ae=B.offset+1,B.children.length>1&&(ne=B.children[1].offset);return a(A,{offset:ae,length:ne-ae,content:""},C)}else return a(A,{offset:Q.offset,length:Q.length,content:JSON.stringify(I)},C);else{if(I===void 0)return[];let J=`${JSON.stringify(F)}: ${JSON.stringify(I)}`,ae=C.getInsertionIndex?C.getInsertionIndex(B.children.map(ce=>ce.children[0].value)):B.children.length,ne;if(ae>0){let ce=B.children[ae-1];ne={offset:ce.offset+ce.length,length:0,content:","+J}}else B.children.length===0?ne={offset:B.offset+1,length:0,content:J}:ne={offset:B.offset+1,length:0,content:J+","};return a(A,ne,C)}}else if(B.type==="array"&&typeof F=="number"&&Array.isArray(B.children)){let Q=F;if(Q===-1){let J=`${JSON.stringify(I)}`,ae;if(B.children.length===0)ae={offset:B.offset+1,length:0,content:J};else{let ne=B.children[B.children.length-1];ae={offset:ne.offset+ne.length,length:0,content:","+J}}return a(A,ae,C)}else if(I===void 0&&B.children.length>=0){let J=F,ae=B.children[J],ne;if(B.children.length===1)ne={offset:B.offset+1,length:B.length-2,content:""};else if(B.children.length-1===J){let ce=B.children[J-1],fe=ce.offset+ce.length,ue=B.offset+B.length;ne={offset:fe,length:ue-2-fe,content:""}}else ne={offset:ae.offset,length:B.children[J+1].offset-ae.offset,content:""};return a(A,ne,C)}else if(I!==void 0){let J,ae=`${JSON.stringify(I)}`;if(!C.isArrayInsertion&&B.children.length>F){let ne=B.children[F];J={offset:ne.offset,length:ne.length,content:ae}}else if(B.children.length===0||F===0)J={offset:B.offset+1,length:0,content:B.children.length===0?ae:ae+","};else{let ne=F>B.children.length?B.children.length:F,ce=B.children[ne-1];J={offset:ce.offset+ce.length,length:0,content:","+ae}}return a(A,J,C)}else throw new Error(`Can not ${I===void 0?"remove":C.isArrayInsertion?"insert":"modify"} Array index ${Q} as length is not sufficient`)}else throw new Error(`Can not add ${typeof F!="number"?"index":"property"} to parent of type ${B.type}`);else{if(I===void 0)throw new Error("Can not delete in empty document");return a(A,{offset:N?N.offset:0,length:N?N.length:0,content:JSON.stringify(I)},C)}}t.setProperty=n;function a(A,f,I){if(!I.formattingOptions)return[f];let C=o(A,f),b=f.offset,E=f.offset+f.content.length;if(f.length===0||f.content.length===0){for(;b>0&&!(0,sMr.isEOL)(C,b-1);)b--;for(;E=0;F--){let Q=N[F];C=o(C,Q),b=Math.min(b,Q.offset),E=Math.max(E,Q.offset+Q.length),E+=Q.content.length-Q.length}let B=A.length-(C.length-E)-b;return[{offset:b,length:B,content:C.substring(b,E)}]}function o(A,f){return A.substring(0,f.offset)+f.content+A.substring(f.offset+f.length)}t.applyEdit=o;function l(A,f){return`\r + `.indexOf(A.charAt(f))!==-1}t.isWS=l})});var xxe=H((G$i,uDt)=>{var crl=nMr(),x$i=k$i(),lrl=sDt(),Rte=iMr();(function(e){if(typeof uDt=="object"&&typeof uDt.exports=="object"){var t=e(Et,G$i);t!==void 0&&(uDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./impl/format","./impl/edit","./impl/scanner","./impl/parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyEdits=t.modify=t.format=t.printParseErrorCode=t.ParseErrorCode=t.stripComments=t.visit=t.getNodeValue=t.getNodePath=t.findNodeAtOffset=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=t.SyntaxKind=t.ScanError=t.createScanner=void 0,t.createScanner=lrl.createScanner;var r;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(r||(t.ScanError=r={}));var n;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(n||(t.SyntaxKind=n={})),t.getLocation=Rte.getLocation,t.parse=Rte.parse,t.parseTree=Rte.parseTree,t.findNodeAtLocation=Rte.findNodeAtLocation,t.findNodeAtOffset=Rte.findNodeAtOffset,t.getNodePath=Rte.getNodePath,t.getNodeValue=Rte.getNodeValue,t.visit=Rte.visit,t.stripComments=Rte.stripComments;var a;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(a||(t.ParseErrorCode=a={}));function o(I){switch(I){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return""}t.printParseErrorCode=o;function l(I,C,b){return crl.format(I,C,b)}t.format=l;function A(I,C,b,E){return x$i.setProperty(I,C,b,E)}t.modify=A;function f(I,C){let b=C.slice(0).sort((N,B)=>{let F=N.offset-B.offset;return F===0?N.length-B.length:F}),E=I.length;for(let N=b.length-1;N>=0;N--){let B=b[N];if(B.offset+B.length<=E)I=x$i.applyEdit(I,B);else throw new Error("Overlapping edit");E=B.offset}return I}t.applyEdits=f})});var cMr=H(Gxe=>{"use strict";Object.defineProperty(Gxe,"__esModule",{value:!0});Gxe.JsonWorkspaceMetadata=Gxe.JsonWorkspaceSymbol=void 0;var F$i=xxe();Gxe.JsonWorkspaceSymbol=Symbol.for("@angular/core:workspace-json");function Z$i(e){return e.replace("~","~0").replace("/","~1")}var aMr=class{filePath;ast;raw;changes=new Map;hasLegacyTargetsName=!0;constructor(t,r,n){this.filePath=t,this.ast=r,this.raw=n}get hasChanges(){return this.changes.size>0}get changeCount(){return this.changes.size}getNodeValueFromAst(t){let r=(0,F$i.findNodeAtLocation)(this.ast,t);return r&&(0,F$i.getNodeValue)(r)}findChangesForPath(t){return this.changes.get(t)}addChange(t,r,n){let a="";for(let l=0;lZ$i(l)).join("/");for(let l of this.changes.keys())l.startsWith(o+"/")&&this.changes.delete(l);this.changes.set(o,{jsonPath:t,type:n,value:r})}};Gxe.JsonWorkspaceMetadata=aMr});var W$i=H(lMr=>{"use strict";Object.defineProperty(lMr,"__esModule",{value:!0});lMr.createVirtualAstObject=grl;var url=TNt();function grl(e,t={}){let r=(n,a,o,l)=>{t.listener&&(o===l||JSON.stringify(o)===JSON.stringify(l)||(Array.isArray(a)?t.listener(n.slice(0,-1),a):t.listener(n,l)))};return V$i(Array.isArray(e)?[...e]:{...e},[],r,new Set(t.exclude),t.include?.length?new Set(t.include):void 0)}function V$i(e,t,r,n=new Set,a){return new Proxy(e,{getOwnPropertyDescriptor(o,l){if(!(n.has(l)||a&&!a.has(l)))return Reflect.getOwnPropertyDescriptor(o,l)},has(o,l){return typeof l=="symbol"||n.has(l)?!1:Reflect.has(o,l)},get(o,l){if(n.has(l)||a&&!a.has(l))return;let A=Reflect.get(o,l);return typeof l=="symbol"?A:(0,url.isJsonObject)(A)&&!(A instanceof Map)||Array.isArray(A)?V$i(A,[...t,l],r):A},set(o,l,A){if(n.has(l)||a&&!a.has(l))return!1;if(A===void 0)return this.deleteProperty?.(o,l)??!1;if(typeof l=="symbol")return Reflect.set(o,l,A);let f=L$i(o,l);return Reflect.set(o,l,A)?(r([...t,l],o,f,A),!0):!1},deleteProperty(o,l){if(n.has(l))return!1;if(typeof l=="symbol")return Reflect.deleteProperty(o,l);let A=L$i(o,l);return Reflect.deleteProperty(o,l)&&r([...t,l],o,A,void 0),!0},defineProperty(o,l,A){return typeof l=="symbol"?Reflect.defineProperty(o,l,A):!1},ownKeys(o){return Reflect.ownKeys(o).filter(l=>!n.has(l)&&(!a||a.has(l)))}})}function L$i(e,t){if(Array.isArray(e)&&isFinite(+t))return e[+t];if(e&&t in e)return e[t]}});var M$i=H(uMr=>{"use strict";Object.defineProperty(uMr,"__esModule",{value:!0});uMr.readJsonWorkspace=prl;var Nte=xxe(),ADt=d_e(),O$i=T5r(),P$i=cMr(),gDt=W$i(),Arl=Object.freeze(["cli","newProjectRoot","schematics"]),drl=Object.freeze(["cli","schematics","projectType","i18n"]);async function prl(e,t,r={}){let n=await t.readFile(e);if(n===void 0)throw new Error("Unable to read workspace file.");let a=(0,Nte.parseTree)(n,void 0,{allowTrailingComma:!0,disallowComments:!1});if(a?.type!=="object"||!a.children)throw new Error("Invalid workspace file - expected JSON object.");let o=(0,Nte.findNodeAtLocation)(a,["version"]);if(!o)throw new Error("Unknown format - version specifier not found.");let l=o.value;if(l!==1)throw new Error(`Invalid format version detected - Expected:[ 1 ] Found: [ ${l} ]`);let A={host:t,metadata:new P$i.JsonWorkspaceMetadata(e,a,n),trackChanges:!0,unprefixedWorkspaceExtensions:new Set([...Arl,...r.allowedWorkspaceExtensions??[]]),unprefixedProjectExtensions:new Set([...drl,...r.allowedProjectExtensions??[]]),error(I,C){throw new Error(I)},warn(I,C){console.warn(I)}};return frl(a,A)}function frl(e,t){let r=t.metadata,n,a;t.trackChanges||(a=Object.create(null));let o=(0,Nte.getNodeValue)(e);for(let[f,I]of Object.entries(o))if(!(f==="$schema"||f==="version"))if(f==="projects"){let C=(0,Nte.findNodeAtLocation)(e,["projects"]);if(!(0,ADt.isJsonObject)(I)||!C){t.error('Invalid "projects" field found; expected an object.',I);continue}n=Irl(C,t)}else!t.unprefixedWorkspaceExtensions.has(f)&&!/^[a-z]{1,3}-.*/.test(f)&&t.warn(`Workspace extension with invalid name (${f}) found.`,f),a&&(a[f]=I);let l;t.trackChanges&&(l=(f,I)=>{r.addChange(["projects",f],I,"project")});let A=new O$i.ProjectDefinitionCollection(n,l);return{[P$i.JsonWorkspaceSymbol]:r,projects:A,extensions:a??(0,gDt.createVirtualAstObject)(o,{exclude:["$schema","version","projects"],listener(f,I){r.addChange(f,I)}})}}function Irl(e,t){let r=Object.create(null);for(let[n,a]of Object.entries((0,Nte.getNodeValue)(e))){let o=(0,Nte.findNodeAtLocation)(e,[n]);if(!(0,ADt.isJsonObject)(a)||!o){t.warn("Skipping invalid project value; expected an object.",a);continue}r[n]=hrl(n,o,t)}return r}function hrl(e,t,r){let n=r.metadata,a,o=!1,l,A;r.trackChanges||(l=Object.create(null),A=Object.create(null));let f=(0,Nte.getNodeValue)(t);if(!("root"in f))throw new Error(`Project "${e}" is missing a required property "root".`);for(let[N,B]of Object.entries(f))switch(N){case"targets":case"architect":{let F=(0,Nte.findNodeAtLocation)(t,[N]);if(!(0,ADt.isJsonObject)(B)||!F){r.error(`Invalid "${N}" field found; expected an object.`,B);break}o=!0,a=mrl(e,F,r),n.hasLegacyTargetsName=N==="architect";break}case"prefix":case"root":case"sourceRoot":typeof B!="string"&&r.warn(`Project property "${N}" should be a string.`,B),A&&(A[N]=B);break;default:!r.unprefixedProjectExtensions.has(N)&&!/^[a-z]{1,3}-.*/.test(N)&&r.warn(`Project '${e}' contains extension with invalid name (${N}).`,N),l&&(l[N]=B);break}let I;r.trackChanges&&(I=(N,B,F)=>{o?n.addChange(["projects",e,"targets",N],B,"target"):n.addChange(["projects",e,"targets"],F,"targetcollection")});let C={targets:new O$i.TargetDefinitionCollection(a,I),extensions:l??(0,gDt.createVirtualAstObject)(f,{exclude:["architect","prefix","root","sourceRoot","targets"],listener(N,B){n.addChange(["projects",e,...N],B)}})},b=new Set(Object.keys(C)),E=A??(0,gDt.createVirtualAstObject)(f,{include:["prefix","root","sourceRoot",...b],listener(N,B){b.has(N[0])||n.addChange(["projects",e,...N],B)}});return Object.assign(E,C)}function mrl(e,t,r){let n=r.metadata,a=Object.create(null);for(let[o,l]of Object.entries((0,Nte.getNodeValue)(t))){if(!(0,ADt.isJsonObject)(l)){r.warn("Skipping invalid target value; expected an object.",l);continue}r.trackChanges?a[o]=(0,gDt.createVirtualAstObject)(l,{include:["builder","options","configurations","defaultConfiguration"],listener(A,f){n.addChange(["projects",e,"targets",o,...A],f)}}):a[o]=l}return a}});var X$i=H(AMr=>{"use strict";Object.defineProperty(AMr,"__esModule",{value:!0});AMr.writeJsonWorkspace=yrl;var H$i=xxe(),Crl=Et("node:os"),_rl=cMr();async function yrl(e,t,r,n={}){let a=e[_rl.JsonWorkspaceSymbol];if(a){if(!a.hasChanges)return;let o=vrl(a);return t.writeFile(r??a.filePath,o)}else{if(!r)throw new Error("path option is required");let o=brl(e,n.schema),l=JSON.stringify(o,null,2);return t.writeFile(r,l)}}function brl(e,t){return{$schema:t||"./node_modules/@angular/cli/lib/config/schema.json",version:1,...e.extensions,...H8e(e.projects)?{}:{projects:Y$i(e.projects)}}}function Y$i(e){let t=Object.create(null);for(let[r,n]of e)t[r]=Q$i(n);return t}function Q$i(e){let t;if(e.targets.size>0){t=Object.create(null);for(let[n,a]of e.targets)t[n]=gMr(a)}return{...e.extensions,root:e.root,...e.sourceRoot===void 0?{}:{sourceRoot:e.sourceRoot},...e.prefix===void 0?{}:{prefix:e.prefix},...t===void 0?{}:{architect:t}}}function H8e(e){return e===void 0||Object.keys(e).length===0}function gMr(e){return{builder:e.builder,...H8e(e.options)?{}:{options:e.options},...H8e(e.configurations)?{}:{configurations:e.configurations},...e.defaultConfiguration===void 0?{}:{defaultConfiguration:e.defaultConfiguration}}}function Erl(e){let t=Object.create(null);for(let[r,n]of e)t[r]=gMr(n);return t}function Srl(e,t){if(e!==void 0)switch(t){case"project":return Q$i(e);case"projectcollection":{let r=Y$i(e);return H8e(r)?void 0:r}case"target":return gMr(e);case"targetcollection":{let r=Erl(e);return H8e(r)?void 0:r}default:return e}}function vrl(e){let{raw:t}=e,{changes:r,hasLegacyTargetsName:n}=e;for(let{jsonPath:a,value:o,type:l}of r.values()){n&&a[2]==="targets"&&(a[2]="architect");let A=(0,H$i.modify)(t,a,Srl(o,l),{formattingOptions:{insertSpaces:!0,tabSize:2,eol:Brl(t)}});t=(0,H$i.applyEdits)(t,A)}return t}function Brl(e){let t=`\r `,r=` -`,n=e.match(/(?:\r?\n)/g);if(n?.length){let a=n.filter(l=>l===t).length,o=n.length-a;return a>o?t:r}return btl.EOL}});var J$i=H(iue=>{"use strict";Object.defineProperty(iue,"__esModule",{value:!0});iue.WorkspaceFormat=void 0;iue._test_addWorkspaceFile=ktl;iue._test_removeWorkspaceFile=xtl;iue.readWorkspace=Gtl;iue.writeWorkspace=Ftl;var Q8e=rDt(),Ntl=P$i(),Dtl=Q$i(),X$i=new WeakMap,Z_e;(function(e){e[e.JSON=0]="JSON"})(Z_e||(iue.WorkspaceFormat=Z_e={}));function ktl(e,t){X8e[e]=t}function xtl(e){delete X8e[e]}var X8e={"angular.json":Z_e.JSON,".angular.json":Z_e.JSON};async function Gtl(e,t,r){if(await t.isDirectory(e)){let a=(0,Q8e.normalize)(e),o=!1;for(let[l,A]of Object.entries(X8e)){if(r!==void 0&&r!==A)continue;let f=(0,Q8e.getSystemPath)((0,Q8e.join)(a,l));if(await t.isFile(f)){e=f,r=A,o=!0;break}}if(!o)throw new Error("Unable to locate a workspace file for workspace path. Are you missing an `angular.json` or `.angular.json` file?")}else if(r===void 0){let a=(0,Q8e.basename)((0,Q8e.normalize)(e));a in X8e&&(r=X8e[a])}if(r===void 0)throw new Error("Unable to determine format for workspace path.");let n;switch(r){case Z_e.JSON:n=await(0,Ntl.readJsonWorkspace)(e,t);break;default:throw new Error("Unsupported workspace format.")}return X$i.set(n,Z_e.JSON),{workspace:n}}async function Ftl(e,t,r,n){if(n===void 0&&(n=X$i.get(e),n===void 0))throw new Error("A format is required for custom workspace objects.");switch(n){case Z_e.JSON:return(0,Dtl.writeJsonWorkspace)(e,t,r);default:throw new Error("Unsupported workspace format.")}}});var U$i=H(gL=>{"use strict";var Ztl=gL&&gL.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Ltl=gL&&gL.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Ztl(t,e,r)};Object.defineProperty(gL,"__esModule",{value:!0});gL.writeWorkspace=gL.readWorkspace=gL.WorkspaceFormat=gL.createWorkspaceHost=void 0;Ltl(b5r(),gL);var Vtl=E$i();Object.defineProperty(gL,"createWorkspaceHost",{enumerable:!0,get:function(){return Vtl.createWorkspaceHost}});var aMr=J$i();Object.defineProperty(gL,"WorkspaceFormat",{enumerable:!0,get:function(){return aMr.WorkspaceFormat}});Object.defineProperty(gL,"readWorkspace",{enumerable:!0,get:function(){return aMr.readWorkspace}});Object.defineProperty(gL,"writeWorkspace",{enumerable:!0,get:function(){return aMr.writeWorkspace}})});var O2=H(yT=>{"use strict";var K$i=yT&&yT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Wtl=yT&&yT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),cMr=yT&&yT.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(pDt,"__esModule",{value:!0});pDt.htmlSelectorFormat=void 0;var Htl=[[192,214],[216,246],[248,893],[895,8191],[8204,8205],[8255,8256],[8304,8591],[11264,12271],[12289,55295],[63744,64975],[65008,65533],[65536,983039]];function Ytl(e){let t="^[a-zA-Z][";t+="-.0-9_a-zA-Z\\u{B7}";for(let r of Htl)t+=`\\u{${r[0].toString(16)}}-\\u{${r[1].toString(16)}}`;return t+="]*$",new RegExp(t,"u").test(e)}pDt.htmlSelectorFormat={name:"html-selector",formatter:{async:!1,validate:e=>typeof e=="string"&&Ytl(e)}}});var uMr=H(fDt=>{"use strict";Object.defineProperty(fDt,"__esModule",{value:!0});fDt.pathFormat=void 0;var Qtl=O2();fDt.pathFormat={name:"path",formatter:{async:!1,validate:e=>e===(0,Qtl.normalize)(e)}}});var gMr=H(sue=>{"use strict";Object.defineProperty(sue,"__esModule",{value:!0});sue.standardFormats=sue.pathFormat=sue.htmlSelectorFormat=void 0;var Xtl=lMr(),Jtl=uMr(),Utl=lMr();Object.defineProperty(sue,"htmlSelectorFormat",{enumerable:!0,get:function(){return Utl.htmlSelectorFormat}});var Ktl=uMr();Object.defineProperty(sue,"pathFormat",{enumerable:!0,get:function(){return Ktl.pathFormat}});sue.standardFormats=[Xtl.htmlSelectorFormat,Jtl.pathFormat]});var RH=H(P4=>{"use strict";Object.defineProperty(P4,"__esModule",{value:!0});P4.Tree=P4.TreeSymbol=P4.FileVisitorCancelToken=P4.MergeStrategy=void 0;var j$i;(function(e){e[e.AllowOverwriteConflict=2]="AllowOverwriteConflict",e[e.AllowCreationConflict=4]="AllowCreationConflict",e[e.AllowDeleteConflict=8]="AllowDeleteConflict",e[e.Default=0]="Default",e[e.Error=1]="Error",e[e.ContentOnly=2]="ContentOnly",e[e.Overwrite=14]="Overwrite"})(j$i||(P4.MergeStrategy=j$i={}));P4.FileVisitorCancelToken=Symbol();P4.TreeSymbol=function(){let e=typeof window=="object"&&window.window===window&&window.Symbol||typeof self=="object"&&self.self===self&&self.Symbol||typeof global=="object"&&global.global===global&&global.Symbol;return e?(e.schematicTree||(e.schematicTree=Symbol("schematic-tree")),e.schematicTree):Symbol("schematic-tree")}();P4.Tree=Object.freeze({isTree(e){return P4.TreeSymbol in e}})});var M4=H(bD=>{"use strict";Object.defineProperty(bD,"__esModule",{value:!0});bD.UnimplementedException=bD.UnsuccessfulWorkflowExecution=bD.MergeConflictException=bD.InvalidUpdateRecordException=bD.ContentHasMutatedException=bD.FileAlreadyExistException=bD.FileDoesNotExistException=bD.SchematicsException=void 0;var oue=O2(),AMr=class extends oue.BaseException{};bD.SchematicsException=AMr;var dMr=class extends oue.BaseException{constructor(t){super(`Path "${t}" does not exist.`)}};bD.FileDoesNotExistException=dMr;var pMr=class extends oue.BaseException{constructor(t){super(`Path "${t}" already exist.`)}};bD.FileAlreadyExistException=pMr;var fMr=class extends oue.BaseException{constructor(t){super(`Content at path "${t}" has changed between the start and the end of an update.`)}};bD.ContentHasMutatedException=fMr;var IMr=class extends oue.BaseException{constructor(){super("Invalid record instance.")}};bD.InvalidUpdateRecordException=IMr;var hMr=class extends oue.BaseException{constructor(t){super(`A merge conflicted on path "${t}".`)}};bD.MergeConflictException=hMr;var mMr=class extends oue.BaseException{constructor(){super("Workflow did not execute successfully.")}};bD.UnsuccessfulWorkflowExecution=mMr;var CMr=class extends oue.BaseException{constructor(){super("This function is unimplemented.")}};bD.UnimplementedException=CMr});var hDt=H(IDt=>{"use strict";Object.defineProperty(IDt,"__esModule",{value:!0});IDt.DelegateTree=void 0;var jtl=RH(),_Mr=class{_other;constructor(t){this._other=t}branch(){return this._other.branch()}merge(t,r){this._other.merge(t,r)}get root(){return this._other.root}read(t){return this._other.read(t)}readText(t){return this._other.readText(t)}readJson(t){return this._other.readJson(t)}exists(t){return this._other.exists(t)}get(t){return this._other.get(t)}getDir(t){return this._other.getDir(t)}visit(t){return this._other.visit(t)}overwrite(t,r){return this._other.overwrite(t,r)}beginUpdate(t){return this._other.beginUpdate(t)}commitUpdate(t){return this._other.commitUpdate(t)}create(t,r){return this._other.create(t,r)}delete(t){return this._other.delete(t)}rename(t,r){return this._other.rename(t,r)}apply(t,r){return this._other.apply(t,r)}get actions(){return this._other.actions}[jtl.TreeSymbol](){return this}};IDt.DelegateTree=_Mr});var z$i=H(Fxe=>{"use strict";Object.defineProperty(Fxe,"__esModule",{value:!0});Fxe.LazyFileEntry=Fxe.SimpleFileEntry=void 0;var yMr=class{_path;_content;constructor(t,r){this._path=t,this._content=r}get path(){return this._path}get content(){return this._content}};Fxe.SimpleFileEntry=yMr;var bMr=class{_path;_load;_content=null;constructor(t,r){this._path=t,this._load=r}get path(){return this._path}get content(){return this._content||(this._content=this._load(this._path))}};Fxe.LazyFileEntry=bMr});var $$i=H((mDt,q$i)=>{(function(e,t){typeof mDt=="object"&&typeof q$i<"u"?t(mDt):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.sourcemapCodec={}))})(mDt,function(e){"use strict";let n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),o=new Uint8Array(128);for(let Se=0;Se>>=1,Le&&(k=-2147483648|-k),De+k}function A(Se,De,k){let tt=De-k;tt=tt<0?-tt<<1|1:tt<<1;do{let ze=tt&31;tt>>>=5,tt>0&&(ze|=32),Se.write(a[ze])}while(tt>0);return De}function f(Se,De){return Se.pos>=De?!1:Se.peek()!==44}let I=1024*16,C=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(Se){return Buffer.from(Se.buffer,Se.byteOffset,Se.byteLength).toString()}}:{decode(Se){let De="";for(let k=0;k0?k+C.decode(De.subarray(0,tt)):k}}class E{constructor(De){this.pos=0,this.buffer=De}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(De){let{buffer:k,pos:tt}=this,ze=k.indexOf(De,tt);return ze===-1?k.length:ze}}let N=[];function B(Se){let{length:De}=Se,k=new E(Se),tt=[],ze=[],Le=0;for(;k.pos0&&k.write(44),tt[0]=A(k,Le,tt[0]),A(k,Je,0),A(k,Ot,0);let Sr=ze.length===6?1:0;A(k,Sr,0),ze.length===6&&A(k,ze[5],0);for(let jt of Er)A(k,jt,0);for(De++;Deft||Bt===ft&&Dt>=lt)break;De=Q(Se,De,k,tt)}return k.write(44),tt[0]=A(k,ft,tt[0]),A(k,lt,0),De}function J(Se){let{length:De}=Se,k=new E(Se),tt=[],ze=[],Le=0,Je=0,ft=0,lt=0,Ot=0,Er=0,Sr=0,jt=0;do{let Bt=k.indexOf(";"),Dt=0;for(;k.posyn;zt--){let Fn=Sr;Sr=l(k,Sr),jt=l(k,Sr===Fn?jt:0);let Nn=l(k,0);ke.push([Nn,Sr,jt])}}else ke=[[yn]];Ar.push(ke)}while(f(k,Bt))}qr.bindings=Ar,tt.push(qr),ze.push(qr)}Le++,k.pos=Bt+1}while(k.pos0&&k.write(44),tt[1]=A(k,ze[1],tt[1]);let jt=(ze.length===6?1:0)|(Er?2:0)|(Ot?4:0);if(A(k,jt,0),ze.length===6){let{4:Bt,5:Dt}=ze;Bt!==tt[2]&&(tt[3]=0),tt[2]=A(k,Bt,tt[2]),tt[3]=A(k,Dt,tt[3])}if(Er){let{0:Bt,1:Dt,2:Fr}=ze.callsite;Bt!==tt[4]?(tt[5]=0,tt[6]=0):Dt!==tt[5]&&(tt[6]=0),tt[4]=A(k,Bt,tt[4]),tt[5]=A(k,Dt,tt[5]),tt[6]=A(k,Fr,tt[6])}if(Sr)for(let Bt of Sr){Bt.length>1&&A(k,-Bt.length,0);let Dt=Bt[0][0];A(k,Dt,0);let Fr=Le,$t=Je;for(let Xt=1;Xtft||Dt===ft&&Fr>=lt)break;De=ne(Se,De,k,tt)}return tt[0]0&&De.write(59),ft.length===0)continue;let lt=0;for(let Ot=0;Ot0&&De.write(44),lt=A(De,Er[0],lt),Er.length!==1&&(k=A(De,Er[1],k),tt=A(De,Er[2],tt),ze=A(De,Er[3],ze),Er.length!==4&&(Le=A(De,Er[4],Le)))}}return De.flush()}e.decode=fe,e.decodeGeneratedRanges=J,e.decodeOriginalScopes=B,e.encode=be,e.encodeGeneratedRanges=ae,e.encodeOriginalScopes=F,Object.defineProperty(e,"__esModule",{value:!0})})});var ies=H((u8u,nes)=>{"use strict";var ztl=$$i(),CDt=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},_Dt=class e{constructor(t,r,n){this.start=t,this.end=r,this.original=n,this.intro="",this.outro="",this.content=n,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var $tl=qtl(),U8e=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=ztl.encode(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+$tl(this.toString())}};function erl(e){let t=e.split(` -`),r=t.filter(o=>/^\t+/.test(o)),n=t.filter(o=>/^ {2,}/.test(o));if(r.length===0&&n.length===0)return null;if(r.length>=n.length)return" ";let a=n.reduce((o,l)=>{let A=/^ +/.exec(l)[0].length;return Math.min(A,o)},1/0);return new Array(a+1).join(" ")}function tes(e,t){let r=e.split(/[/\\]/),n=t.split(/[/\\]/);for(r.pop();r[0]===n[0];)r.shift(),n.shift();if(r.length){let a=r.length;for(;a--;)r[a]=".."}return r.concat(n).join("/")}var trl=Object.prototype.toString;function res(e){return trl.call(e)==="[object Object]"}function EMr(e){let t=e.split(` -`),r=[];for(let n=0,a=0;n>1;al===t).length,o=n.length-a;return a>o?t:r}return Crl.EOL}});var U$i=H(sue=>{"use strict";Object.defineProperty(sue,"__esModule",{value:!0});sue.WorkspaceFormat=void 0;sue._test_addWorkspaceFile=Rrl;sue._test_removeWorkspaceFile=Nrl;sue.readWorkspace=Drl;sue.writeWorkspace=krl;var Y8e=rDt(),wrl=M$i(),Trl=X$i(),J$i=new WeakMap,Z_e;(function(e){e[e.JSON=0]="JSON"})(Z_e||(sue.WorkspaceFormat=Z_e={}));function Rrl(e,t){Q8e[e]=t}function Nrl(e){delete Q8e[e]}var Q8e={"angular.json":Z_e.JSON,".angular.json":Z_e.JSON};async function Drl(e,t,r){if(await t.isDirectory(e)){let a=(0,Y8e.normalize)(e),o=!1;for(let[l,A]of Object.entries(Q8e)){if(r!==void 0&&r!==A)continue;let f=(0,Y8e.getSystemPath)((0,Y8e.join)(a,l));if(await t.isFile(f)){e=f,r=A,o=!0;break}}if(!o)throw new Error("Unable to locate a workspace file for workspace path. Are you missing an `angular.json` or `.angular.json` file?")}else if(r===void 0){let a=(0,Y8e.basename)((0,Y8e.normalize)(e));a in Q8e&&(r=Q8e[a])}if(r===void 0)throw new Error("Unable to determine format for workspace path.");let n;switch(r){case Z_e.JSON:n=await(0,wrl.readJsonWorkspace)(e,t);break;default:throw new Error("Unsupported workspace format.")}return J$i.set(n,Z_e.JSON),{workspace:n}}async function krl(e,t,r,n){if(n===void 0&&(n=J$i.get(e),n===void 0))throw new Error("A format is required for custom workspace objects.");switch(n){case Z_e.JSON:return(0,Trl.writeJsonWorkspace)(e,t,r);default:throw new Error("Unsupported workspace format.")}}});var K$i=H(AL=>{"use strict";var xrl=AL&&AL.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Grl=AL&&AL.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&xrl(t,e,r)};Object.defineProperty(AL,"__esModule",{value:!0});AL.writeWorkspace=AL.readWorkspace=AL.WorkspaceFormat=AL.createWorkspaceHost=void 0;Grl(T5r(),AL);var Frl=S$i();Object.defineProperty(AL,"createWorkspaceHost",{enumerable:!0,get:function(){return Frl.createWorkspaceHost}});var dMr=U$i();Object.defineProperty(AL,"WorkspaceFormat",{enumerable:!0,get:function(){return dMr.WorkspaceFormat}});Object.defineProperty(AL,"readWorkspace",{enumerable:!0,get:function(){return dMr.readWorkspace}});Object.defineProperty(AL,"writeWorkspace",{enumerable:!0,get:function(){return dMr.writeWorkspace}})});var P2=H(bT=>{"use strict";var j$i=bT&&bT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Zrl=bT&&bT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pMr=bT&&bT.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(pDt,"__esModule",{value:!0});pDt.htmlSelectorFormat=void 0;var Orl=[[192,214],[216,246],[248,893],[895,8191],[8204,8205],[8255,8256],[8304,8591],[11264,12271],[12289,55295],[63744,64975],[65008,65533],[65536,983039]];function Prl(e){let t="^[a-zA-Z][";t+="-.0-9_a-zA-Z\\u{B7}";for(let r of Orl)t+=`\\u{${r[0].toString(16)}}-\\u{${r[1].toString(16)}}`;return t+="]*$",new RegExp(t,"u").test(e)}pDt.htmlSelectorFormat={name:"html-selector",formatter:{async:!1,validate:e=>typeof e=="string"&&Prl(e)}}});var IMr=H(fDt=>{"use strict";Object.defineProperty(fDt,"__esModule",{value:!0});fDt.pathFormat=void 0;var Mrl=P2();fDt.pathFormat={name:"path",formatter:{async:!1,validate:e=>e===(0,Mrl.normalize)(e)}}});var hMr=H(oue=>{"use strict";Object.defineProperty(oue,"__esModule",{value:!0});oue.standardFormats=oue.pathFormat=oue.htmlSelectorFormat=void 0;var Hrl=fMr(),Yrl=IMr(),Qrl=fMr();Object.defineProperty(oue,"htmlSelectorFormat",{enumerable:!0,get:function(){return Qrl.htmlSelectorFormat}});var Xrl=IMr();Object.defineProperty(oue,"pathFormat",{enumerable:!0,get:function(){return Xrl.pathFormat}});oue.standardFormats=[Hrl.htmlSelectorFormat,Yrl.pathFormat]});var NH=H(M4=>{"use strict";Object.defineProperty(M4,"__esModule",{value:!0});M4.Tree=M4.TreeSymbol=M4.FileVisitorCancelToken=M4.MergeStrategy=void 0;var z$i;(function(e){e[e.AllowOverwriteConflict=2]="AllowOverwriteConflict",e[e.AllowCreationConflict=4]="AllowCreationConflict",e[e.AllowDeleteConflict=8]="AllowDeleteConflict",e[e.Default=0]="Default",e[e.Error=1]="Error",e[e.ContentOnly=2]="ContentOnly",e[e.Overwrite=14]="Overwrite"})(z$i||(M4.MergeStrategy=z$i={}));M4.FileVisitorCancelToken=Symbol();M4.TreeSymbol=function(){let e=typeof window=="object"&&window.window===window&&window.Symbol||typeof self=="object"&&self.self===self&&self.Symbol||typeof global=="object"&&global.global===global&&global.Symbol;return e?(e.schematicTree||(e.schematicTree=Symbol("schematic-tree")),e.schematicTree):Symbol("schematic-tree")}();M4.Tree=Object.freeze({isTree(e){return M4.TreeSymbol in e}})});var H4=H(ED=>{"use strict";Object.defineProperty(ED,"__esModule",{value:!0});ED.UnimplementedException=ED.UnsuccessfulWorkflowExecution=ED.MergeConflictException=ED.InvalidUpdateRecordException=ED.ContentHasMutatedException=ED.FileAlreadyExistException=ED.FileDoesNotExistException=ED.SchematicsException=void 0;var aue=P2(),mMr=class extends aue.BaseException{};ED.SchematicsException=mMr;var CMr=class extends aue.BaseException{constructor(t){super(`Path "${t}" does not exist.`)}};ED.FileDoesNotExistException=CMr;var _Mr=class extends aue.BaseException{constructor(t){super(`Path "${t}" already exist.`)}};ED.FileAlreadyExistException=_Mr;var yMr=class extends aue.BaseException{constructor(t){super(`Content at path "${t}" has changed between the start and the end of an update.`)}};ED.ContentHasMutatedException=yMr;var bMr=class extends aue.BaseException{constructor(){super("Invalid record instance.")}};ED.InvalidUpdateRecordException=bMr;var EMr=class extends aue.BaseException{constructor(t){super(`A merge conflicted on path "${t}".`)}};ED.MergeConflictException=EMr;var SMr=class extends aue.BaseException{constructor(){super("Workflow did not execute successfully.")}};ED.UnsuccessfulWorkflowExecution=SMr;var vMr=class extends aue.BaseException{constructor(){super("This function is unimplemented.")}};ED.UnimplementedException=vMr});var hDt=H(IDt=>{"use strict";Object.defineProperty(IDt,"__esModule",{value:!0});IDt.DelegateTree=void 0;var Jrl=NH(),BMr=class{_other;constructor(t){this._other=t}branch(){return this._other.branch()}merge(t,r){this._other.merge(t,r)}get root(){return this._other.root}read(t){return this._other.read(t)}readText(t){return this._other.readText(t)}readJson(t){return this._other.readJson(t)}exists(t){return this._other.exists(t)}get(t){return this._other.get(t)}getDir(t){return this._other.getDir(t)}visit(t){return this._other.visit(t)}overwrite(t,r){return this._other.overwrite(t,r)}beginUpdate(t){return this._other.beginUpdate(t)}commitUpdate(t){return this._other.commitUpdate(t)}create(t,r){return this._other.create(t,r)}delete(t){return this._other.delete(t)}rename(t,r){return this._other.rename(t,r)}apply(t,r){return this._other.apply(t,r)}get actions(){return this._other.actions}[Jrl.TreeSymbol](){return this}};IDt.DelegateTree=BMr});var q$i=H(Fxe=>{"use strict";Object.defineProperty(Fxe,"__esModule",{value:!0});Fxe.LazyFileEntry=Fxe.SimpleFileEntry=void 0;var wMr=class{_path;_content;constructor(t,r){this._path=t,this._content=r}get path(){return this._path}get content(){return this._content}};Fxe.SimpleFileEntry=wMr;var TMr=class{_path;_load;_content=null;constructor(t,r){this._path=t,this._load=r}get path(){return this._path}get content(){return this._content||(this._content=this._load(this._path))}};Fxe.LazyFileEntry=TMr});var ees=H((mDt,$$i)=>{(function(e,t){typeof mDt=="object"&&typeof $$i<"u"?t(mDt):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.sourcemapCodec={}))})(mDt,function(e){"use strict";let n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),o=new Uint8Array(128);for(let Se=0;Se>>=1,Le&&(k=-2147483648|-k),De+k}function A(Se,De,k){let tt=De-k;tt=tt<0?-tt<<1|1:tt<<1;do{let ze=tt&31;tt>>>=5,tt>0&&(ze|=32),Se.write(a[ze])}while(tt>0);return De}function f(Se,De){return Se.pos>=De?!1:Se.peek()!==44}let I=1024*16,C=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(Se){return Buffer.from(Se.buffer,Se.byteOffset,Se.byteLength).toString()}}:{decode(Se){let De="";for(let k=0;k0?k+C.decode(De.subarray(0,tt)):k}}class E{constructor(De){this.pos=0,this.buffer=De}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(De){let{buffer:k,pos:tt}=this,ze=k.indexOf(De,tt);return ze===-1?k.length:ze}}let N=[];function B(Se){let{length:De}=Se,k=new E(Se),tt=[],ze=[],Le=0;for(;k.pos0&&k.write(44),tt[0]=A(k,Le,tt[0]),A(k,Je,0),A(k,Ot,0);let Sr=ze.length===6?1:0;A(k,Sr,0),ze.length===6&&A(k,ze[5],0);for(let jt of Er)A(k,jt,0);for(De++;Deft||Bt===ft&&Nt>=lt)break;De=Q(Se,De,k,tt)}return k.write(44),tt[0]=A(k,ft,tt[0]),A(k,lt,0),De}function J(Se){let{length:De}=Se,k=new E(Se),tt=[],ze=[],Le=0,Je=0,ft=0,lt=0,Ot=0,Er=0,Sr=0,jt=0;do{let Bt=k.indexOf(";"),Nt=0;for(;k.pos_n;zt--){let Fn=Sr;Sr=l(k,Sr),jt=l(k,Sr===Fn?jt:0);let Nn=l(k,0);ke.push([Nn,Sr,jt])}}else ke=[[_n]];Ar.push(ke)}while(f(k,Bt))}qr.bindings=Ar,tt.push(qr),ze.push(qr)}Le++,k.pos=Bt+1}while(k.pos0&&k.write(44),tt[1]=A(k,ze[1],tt[1]);let jt=(ze.length===6?1:0)|(Er?2:0)|(Ot?4:0);if(A(k,jt,0),ze.length===6){let{4:Bt,5:Nt}=ze;Bt!==tt[2]&&(tt[3]=0),tt[2]=A(k,Bt,tt[2]),tt[3]=A(k,Nt,tt[3])}if(Er){let{0:Bt,1:Nt,2:Fr}=ze.callsite;Bt!==tt[4]?(tt[5]=0,tt[6]=0):Nt!==tt[5]&&(tt[6]=0),tt[4]=A(k,Bt,tt[4]),tt[5]=A(k,Nt,tt[5]),tt[6]=A(k,Fr,tt[6])}if(Sr)for(let Bt of Sr){Bt.length>1&&A(k,-Bt.length,0);let Nt=Bt[0][0];A(k,Nt,0);let Fr=Le,$t=Je;for(let Xt=1;Xtft||Nt===ft&&Fr>=lt)break;De=ne(Se,De,k,tt)}return tt[0]0&&De.write(59),ft.length===0)continue;let lt=0;for(let Ot=0;Ot0&&De.write(44),lt=A(De,Er[0],lt),Er.length!==1&&(k=A(De,Er[1],k),tt=A(De,Er[2],tt),ze=A(De,Er[3],ze),Er.length!==4&&(Le=A(De,Er[4],Le)))}}return De.flush()}e.decode=fe,e.decodeGeneratedRanges=J,e.decodeOriginalScopes=B,e.encode=be,e.encodeGeneratedRanges=ae,e.encodeOriginalScopes=F,Object.defineProperty(e,"__esModule",{value:!0})})});var ses=H((v6u,ies)=>{"use strict";var Url=ees(),CDt=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},_Dt=class e{constructor(t,r,n){this.start=t,this.end=r,this.original=n,this.intro="",this.outro="",this.content=n,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var jrl=Krl(),J8e=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=Url.encode(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+jrl(this.toString())}};function zrl(e){let t=e.split(` +`),r=t.filter(o=>/^\t+/.test(o)),n=t.filter(o=>/^ {2,}/.test(o));if(r.length===0&&n.length===0)return null;if(r.length>=n.length)return" ";let a=n.reduce((o,l)=>{let A=/^ +/.exec(l)[0].length;return Math.min(A,o)},1/0);return new Array(a+1).join(" ")}function res(e,t){let r=e.split(/[/\\]/),n=t.split(/[/\\]/);for(r.pop();r[0]===n[0];)r.shift(),n.shift();if(r.length){let a=r.length;for(;a--;)r[a]=".."}return r.concat(n).join("/")}var qrl=Object.prototype.toString;function nes(e){return qrl.call(e)==="[object Object]"}function RMr(e){let t=e.split(` +`),r=[];for(let n=0,a=0;n>1;a=0&&o>l;){let I=[this.generatedCodeColumn,t,n.line,n.column];a>=0&&I.push(a),this.rawSegments.push(I),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,A=l,l=r.indexOf(` `,l+1)}let f=[this.generatedCodeColumn,t,n.line,n.column];a>=0&&f.push(a),this.rawSegments.push(f),this.advance(r.slice(A+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(r));this.pending=null}addUneditedChunk(t,r,n,a,o){let l=r.start,A=!0,f=!1;for(;l1){for(let n=0;n{let A=o(l.start);l.intro.length&&a.advance(l.intro),l.edited?a.addEdit(r,l.content,A,l.storeName?n.indexOf(l.original):-1):a.addUneditedChunk(r,l,this.original,A,this.sourcemapLocations),l.outro.length&&a.advance(l.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?tes(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:n,mappings:a.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new U8e(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=erl(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let n=/^[^\r\n]/gm;if(res(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let a={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(C=>{for(let b=C[0];bo?`${t}${I}`:(o=!0,I);this.intro=this.intro.replace(n,l);let A=0,f=this.firstChunk;for(;f;){let I=f.end;if(f.edited)a[A]||(f.content=f.content.replace(n,l),f.content.length&&(o=f.content[f.content.length-1]===` +`)a.line+=1,a.column=0,this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,A=!0,f=!1;else{if(this.hires||A||o.has(l)){let I=[this.generatedCodeColumn,t,a.line,a.column];this.hires==="boundary"?$rl.test(n[l])?f||(this.rawSegments.push(I),f=!0):(this.rawSegments.push(I),f=!1):this.rawSegments.push(I)}a.column+=1,this.generatedCodeColumn+=1,A=!1}l+=1}this.pending=null}advance(t){if(!t)return;let r=t.split(` +`);if(r.length>1){for(let n=0;n{let A=o(l.start);l.intro.length&&a.advance(l.intro),l.edited?a.addEdit(r,l.content,A,l.storeName?n.indexOf(l.original):-1):a.addUneditedChunk(r,l,this.original,A,this.sourcemapLocations),l.outro.length&&a.advance(l.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?res(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:n,mappings:a.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new J8e(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=zrl(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let n=/^[^\r\n]/gm;if(nes(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let a={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(C=>{for(let b=C[0];bo?`${t}${I}`:(o=!0,I);this.intro=this.intro.replace(n,l);let A=0,f=this.firstChunk;for(;f;){let I=f.end;if(f.edited)a[A]||(f.content=f.content.replace(n,l),f.content.length&&(o=f.content[f.content.length-1]===` `));else for(A=f.start;A=t&&n<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(n);let a=this.byStart[t],o=this.byEnd[r],l=a.previous,A=o.next,f=this.byStart[n];if(!f&&o===this.lastChunk)return this;let I=f?f.previous:this.lastChunk;return l&&(l.next=A),A&&(A.previous=l),I&&(I.next=a),f&&(f.previous=o),a.previous||(this.firstChunk=o.next),o.next||(this.lastChunk=a.previous,this.lastChunk.next=null),a.previous=I,o.next=f||null,I||(this.firstChunk=a),f||(this.lastChunk=o),this}overwrite(t,r,n,a){return a=a||{},this.update(t,r,n,{...a,overwrite:!a.contentOnly})}update(t,r,n,a){if(t=t+this.offset,r=r+this.offset,typeof n!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),a===!0&&(Zxe.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),Zxe.storeName=!0),a={storeName:!0});let o=a!==void 0?a.storeName:!1,l=a!==void 0?a.overwrite:!1;if(o){let I=this.original.slice(t,r);Object.defineProperty(this.storedNames,I,{writable:!0,value:!0,enumerable:!0})}let A=this.byStart[t],f=this.byEnd[r];if(A){let I=A;for(;I!==f;){if(I.next!==this.byStart[I.end])throw new Error("Cannot overwrite across a split point");I=I.next,I.edit("",!1)}A.edit(n,o,!l)}else{let I=new _Dt(t,r,"").edit(n,o);f.next=I,I.previous=f}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byEnd[t];return n?n.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byStart[t];return n?n.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.intro="",n.outro="",n.edit(""),n=r>n.end?this.byStart[n.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.reset(),n=r>n.end?this.byStart[n.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(J8e);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,n=this.lastChunk;do{if(n.outro.length>0){if(t=n.outro.lastIndexOf(J8e),t!==-1)return n.outro.substr(t+1)+r;r=n.outro+r}if(n.content.length>0){if(t=n.content.lastIndexOf(J8e),t!==-1)return n.content.substr(t+1)+r;r=n.content+r}if(n.intro.length>0){if(t=n.intro.lastIndexOf(J8e),t!==-1)return n.intro.substr(t+1)+r;r=n.intro+r}}while(n=n.previous);return t=this.intro.lastIndexOf(J8e),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let n="",a=this.firstChunk;for(;a&&(a.start>t||a.end<=t);){if(a.start=r)return n;a=a.next}if(a&&a.edited&&a.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let o=a;for(;a;){a.intro&&(o!==a||a.start===t)&&(n+=a.intro);let l=a.start=r;if(l&&a.edited&&a.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let A=o===a?t-a.start:0,f=l?a.content.length+r-a.end:a.content.length;if(n+=a.content.slice(A,f),a.outro&&(!l||a.end===r)&&(n+=a.outro),l)break;a=a.next}return n}snip(t,r){let n=this.clone();return n.remove(0,t),n.remove(r,n.original.length),n}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,n=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=n?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let a=EMr(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${a.line}:${a.column} \u2013 "${t.original}")`)}let n=t.split(r);return this.byEnd[r]=t,this.byStart[r]=n,this.byEnd[n.end]=n,t===this.lastChunk&&(this.lastChunk=n),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let n=this.lastChunk;do{let a=n.end,o=n.trimEnd(r);if(n.end!==a&&(this.lastChunk===n&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.previous}while(n);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let n=this.firstChunk;do{let a=n.end,o=n.trimStart(r);if(n.end!==a&&(n===this.lastChunk&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.next}while(n);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function n(o,l){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(A,f)=>f==="$"?"$":f==="&"?o[0]:+f{if(l.index!=null){let A=n(l,this.original);A!==l[0]&&this.overwrite(l.index,l.index+l[0].length,A)}});else{let o=this.original.match(t);if(o&&o.index!=null){let l=n(o,this.original);l!==o[0]&&this.overwrite(o.index,o.index+o[0].length,l)}}return this}_replaceString(t,r){let{original:n}=this,a=n.indexOf(t);return a!==-1&&this.overwrite(a,a+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:n}=this,a=t.length;for(let o=n.indexOf(t);o!==-1;o=n.indexOf(t,o+a))n.slice(o,o+a)!==r&&this.overwrite(o,o+a,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}},ees=Object.prototype.hasOwnProperty,SMr=class e{constructor(t={}){this.intro=t.intro||"",this.separator=t.separator!==void 0?t.separator:` -`,this.sources=[],this.uniqueSources=[],this.uniqueSourceIndexByFilename={}}addSource(t){if(t instanceof Nte)return this.addSource({content:t,filename:t.filename,separator:this.separator});if(!res(t)||!t.content)throw new Error("bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`");if(["filename","ignoreList","indentExclusionRanges","separator"].forEach(r=>{ees.call(t,r)||(t[r]=t.content[r])}),t.separator===void 0&&(t.separator=this.separator),t.filename)if(!ees.call(this.uniqueSourceIndexByFilename,t.filename))this.uniqueSourceIndexByFilename[t.filename]=this.uniqueSources.length,this.uniqueSources.push({filename:t.filename,content:t.content.original});else{let r=this.uniqueSources[this.uniqueSourceIndexByFilename[t.filename]];if(t.content.original!==r.content)throw new Error(`Illegal source: same filename (${t.filename}), different contents`)}return this.sources.push(t),this}append(t,r){return this.addSource({content:new Nte(t),separator:r&&r.separator||""}),this}clone(){let t=new e({intro:this.intro,separator:this.separator});return this.sources.forEach(r=>{t.addSource({filename:r.filename,content:r.content.clone(),separator:r.separator})}),t}generateDecodedMap(t={}){let r=[],n;this.sources.forEach(o=>{Object.keys(o.content.storedNames).forEach(l=>{~r.indexOf(l)||r.push(l)})});let a=new yDt(t.hires);return this.intro&&a.advance(this.intro),this.sources.forEach((o,l)=>{l>0&&a.advance(this.separator);let A=o.filename?this.uniqueSourceIndexByFilename[o.filename]:-1,f=o.content,I=EMr(f.original);f.intro&&a.advance(f.intro),f.firstChunk.eachNext(C=>{let b=I(C.start);C.intro.length&&a.advance(C.intro),o.filename?C.edited?a.addEdit(A,C.content,b,C.storeName?r.indexOf(C.original):-1):a.addUneditedChunk(A,C,f.original,b,f.sourcemapLocations):a.advance(C.content),C.outro.length&&a.advance(C.outro)}),f.outro&&a.advance(f.outro),o.ignoreList&&A!==-1&&(n===void 0&&(n=[]),n.push(A))}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:this.uniqueSources.map(o=>t.file?tes(t.file,o.filename):o.filename),sourcesContent:this.uniqueSources.map(o=>t.includeContent?o.content:null),names:r,mappings:a.raw,x_google_ignoreList:n}}generateMap(t){return new U8e(this.generateDecodedMap(t))}getIndentString(){let t={};return this.sources.forEach(r=>{let n=r.content._getRawIndentString();n!==null&&(t[n]||(t[n]=0),t[n]+=1)}),Object.keys(t).sort((r,n)=>t[r]-t[n])[0]||" "}indent(t){if(arguments.length||(t=this.getIndentString()),t==="")return this;let r=!this.intro||this.intro.slice(-1)===` +`?o=!0:C!=="\r"&&o&&(o=!1,A===f.start||(this._splitChunk(f,A),f=f.next),f.prependRight(t))}A+=1}A=f.end,f=f.next}return this.outro=this.outro.replace(n,l),this}insert(){throw new Error("magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)")}insertLeft(t,r){return Zxe.insertLeft||(console.warn("magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead"),Zxe.insertLeft=!0),this.appendLeft(t,r)}insertRight(t,r){return Zxe.insertRight||(console.warn("magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead"),Zxe.insertRight=!0),this.prependRight(t,r)}move(t,r,n){if(t=t+this.offset,r=r+this.offset,n=n+this.offset,n>=t&&n<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(n);let a=this.byStart[t],o=this.byEnd[r],l=a.previous,A=o.next,f=this.byStart[n];if(!f&&o===this.lastChunk)return this;let I=f?f.previous:this.lastChunk;return l&&(l.next=A),A&&(A.previous=l),I&&(I.next=a),f&&(f.previous=o),a.previous||(this.firstChunk=o.next),o.next||(this.lastChunk=a.previous,this.lastChunk.next=null),a.previous=I,o.next=f||null,I||(this.firstChunk=a),f||(this.lastChunk=o),this}overwrite(t,r,n,a){return a=a||{},this.update(t,r,n,{...a,overwrite:!a.contentOnly})}update(t,r,n,a){if(t=t+this.offset,r=r+this.offset,typeof n!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),a===!0&&(Zxe.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),Zxe.storeName=!0),a={storeName:!0});let o=a!==void 0?a.storeName:!1,l=a!==void 0?a.overwrite:!1;if(o){let I=this.original.slice(t,r);Object.defineProperty(this.storedNames,I,{writable:!0,value:!0,enumerable:!0})}let A=this.byStart[t],f=this.byEnd[r];if(A){let I=A;for(;I!==f;){if(I.next!==this.byStart[I.end])throw new Error("Cannot overwrite across a split point");I=I.next,I.edit("",!1)}A.edit(n,o,!l)}else{let I=new _Dt(t,r,"").edit(n,o);f.next=I,I.previous=f}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byEnd[t];return n?n.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byStart[t];return n?n.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.intro="",n.outro="",n.edit(""),n=r>n.end?this.byStart[n.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.reset(),n=r>n.end?this.byStart[n.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(X8e);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,n=this.lastChunk;do{if(n.outro.length>0){if(t=n.outro.lastIndexOf(X8e),t!==-1)return n.outro.substr(t+1)+r;r=n.outro+r}if(n.content.length>0){if(t=n.content.lastIndexOf(X8e),t!==-1)return n.content.substr(t+1)+r;r=n.content+r}if(n.intro.length>0){if(t=n.intro.lastIndexOf(X8e),t!==-1)return n.intro.substr(t+1)+r;r=n.intro+r}}while(n=n.previous);return t=this.intro.lastIndexOf(X8e),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let n="",a=this.firstChunk;for(;a&&(a.start>t||a.end<=t);){if(a.start=r)return n;a=a.next}if(a&&a.edited&&a.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let o=a;for(;a;){a.intro&&(o!==a||a.start===t)&&(n+=a.intro);let l=a.start=r;if(l&&a.edited&&a.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let A=o===a?t-a.start:0,f=l?a.content.length+r-a.end:a.content.length;if(n+=a.content.slice(A,f),a.outro&&(!l||a.end===r)&&(n+=a.outro),l)break;a=a.next}return n}snip(t,r){let n=this.clone();return n.remove(0,t),n.remove(r,n.original.length),n}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,n=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=n?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let a=RMr(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${a.line}:${a.column} \u2013 "${t.original}")`)}let n=t.split(r);return this.byEnd[r]=t,this.byStart[r]=n,this.byEnd[n.end]=n,t===this.lastChunk&&(this.lastChunk=n),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let n=this.lastChunk;do{let a=n.end,o=n.trimEnd(r);if(n.end!==a&&(this.lastChunk===n&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.previous}while(n);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let n=this.firstChunk;do{let a=n.end,o=n.trimStart(r);if(n.end!==a&&(n===this.lastChunk&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.next}while(n);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function n(o,l){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(A,f)=>f==="$"?"$":f==="&"?o[0]:+f{if(l.index!=null){let A=n(l,this.original);A!==l[0]&&this.overwrite(l.index,l.index+l[0].length,A)}});else{let o=this.original.match(t);if(o&&o.index!=null){let l=n(o,this.original);l!==o[0]&&this.overwrite(o.index,o.index+o[0].length,l)}}return this}_replaceString(t,r){let{original:n}=this,a=n.indexOf(t);return a!==-1&&this.overwrite(a,a+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:n}=this,a=t.length;for(let o=n.indexOf(t);o!==-1;o=n.indexOf(t,o+a))n.slice(o,o+a)!==r&&this.overwrite(o,o+a,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}},tes=Object.prototype.hasOwnProperty,NMr=class e{constructor(t={}){this.intro=t.intro||"",this.separator=t.separator!==void 0?t.separator:` +`,this.sources=[],this.uniqueSources=[],this.uniqueSourceIndexByFilename={}}addSource(t){if(t instanceof Dte)return this.addSource({content:t,filename:t.filename,separator:this.separator});if(!nes(t)||!t.content)throw new Error("bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`");if(["filename","ignoreList","indentExclusionRanges","separator"].forEach(r=>{tes.call(t,r)||(t[r]=t.content[r])}),t.separator===void 0&&(t.separator=this.separator),t.filename)if(!tes.call(this.uniqueSourceIndexByFilename,t.filename))this.uniqueSourceIndexByFilename[t.filename]=this.uniqueSources.length,this.uniqueSources.push({filename:t.filename,content:t.content.original});else{let r=this.uniqueSources[this.uniqueSourceIndexByFilename[t.filename]];if(t.content.original!==r.content)throw new Error(`Illegal source: same filename (${t.filename}), different contents`)}return this.sources.push(t),this}append(t,r){return this.addSource({content:new Dte(t),separator:r&&r.separator||""}),this}clone(){let t=new e({intro:this.intro,separator:this.separator});return this.sources.forEach(r=>{t.addSource({filename:r.filename,content:r.content.clone(),separator:r.separator})}),t}generateDecodedMap(t={}){let r=[],n;this.sources.forEach(o=>{Object.keys(o.content.storedNames).forEach(l=>{~r.indexOf(l)||r.push(l)})});let a=new yDt(t.hires);return this.intro&&a.advance(this.intro),this.sources.forEach((o,l)=>{l>0&&a.advance(this.separator);let A=o.filename?this.uniqueSourceIndexByFilename[o.filename]:-1,f=o.content,I=RMr(f.original);f.intro&&a.advance(f.intro),f.firstChunk.eachNext(C=>{let b=I(C.start);C.intro.length&&a.advance(C.intro),o.filename?C.edited?a.addEdit(A,C.content,b,C.storeName?r.indexOf(C.original):-1):a.addUneditedChunk(A,C,f.original,b,f.sourcemapLocations):a.advance(C.content),C.outro.length&&a.advance(C.outro)}),f.outro&&a.advance(f.outro),o.ignoreList&&A!==-1&&(n===void 0&&(n=[]),n.push(A))}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:this.uniqueSources.map(o=>t.file?res(t.file,o.filename):o.filename),sourcesContent:this.uniqueSources.map(o=>t.includeContent?o.content:null),names:r,mappings:a.raw,x_google_ignoreList:n}}generateMap(t){return new J8e(this.generateDecodedMap(t))}getIndentString(){let t={};return this.sources.forEach(r=>{let n=r.content._getRawIndentString();n!==null&&(t[n]||(t[n]=0),t[n]+=1)}),Object.keys(t).sort((r,n)=>t[r]-t[n])[0]||" "}indent(t){if(arguments.length||(t=this.getIndentString()),t==="")return this;let r=!this.intro||this.intro.slice(-1)===` `;return this.sources.forEach((n,a)=>{let o=n.separator!==void 0?n.separator:this.separator,l=r||a>0&&/\r?\n$/.test(o);n.content.indent(t,{exclude:n.indentExclusionRanges,indentStart:l}),r=n.content.lastChar()===` -`}),this.intro&&(this.intro=t+this.intro.replace(/^[^\n]/gm,(n,a)=>a>0?t+n:n)),this}prepend(t){return this.intro=t+this.intro,this}toString(){let t=this.sources.map((r,n)=>{let a=r.separator!==void 0?r.separator:this.separator;return(n>0?a:"")+r.content.toString()}).join("");return this.intro+t}isEmpty(){return!(this.intro.length&&this.intro.trim()||this.sources.some(t=>!t.content.isEmpty()))}length(){return this.sources.reduce((t,r)=>t+r.content.length(),this.intro.length)}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimStart(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),!this.intro){let n,a=0;do if(n=this.sources[a++],!n)break;while(!n.content.trimStartAborted(t))}return this}trimEnd(t){let r=new RegExp((t||"\\s")+"+$"),n,a=this.sources.length-1;do if(n=this.sources[a--],!n){this.intro=this.intro.replace(r,"");break}while(!n.content.trimEndAborted(t));return this}};Nte.Bundle=SMr;Nte.SourceMap=U8e;Nte.default=Nte;nes.exports=Nte});var BMr=H(aue=>{"use strict";var nrl=aue&&aue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(aue,"__esModule",{value:!0});aue.UpdateRecorderBase=aue.IndexOutOfBoundException=void 0;var irl=O2(),srl=nrl(ies()),orl=M4(),bDt=class extends irl.BaseException{constructor(t,r,n=1/0){super(`Index ${t} outside of range [${r}, ${n}].`)}};aue.IndexOutOfBoundException=bDt;var vMr=class e{data;bom;_path;content;constructor(t,r,n="utf-8",a=!1){this.data=t,this.bom=a;let o;try{o=new TextDecoder(n,{fatal:!0,ignoreBOM:!1}).decode(t)}catch(l){throw l instanceof TypeError?new Error(`Failed to decode "${r}" as ${n} text.`):l}this._path=r,this.content=new srl.default(o)}static createFromFileEntry(t){let r=t.content.byteLength>0&&t.content.readUInt8(0),n=t.content.byteLength>1&&t.content.readUInt8(1),a=t.content.byteLength>2&&t.content.readUInt8(2);return r==239&&n==187&&a==191?new e(t.content,t.path,"utf-8",!0):r===255&&n==254?new e(t.content,t.path,"utf-16le",!0):r===254&&n==255?new e(t.content,t.path,"utf-16be",!0):new e(t.content,t.path)}get path(){return this._path}_assertIndex(t){if(t<0||t>this.content.original.length)throw new bDt(t,0,this.content.original.length)}insertLeft(t,r){return this._assertIndex(t),this.content.appendLeft(t,r.toString()),this}insertRight(t,r){return this._assertIndex(t),this.content.appendRight(t,r.toString()),this}remove(t,r){return this._assertIndex(t),this.content.remove(t,t+r),this}apply(t){if(!t.equals(this.data))throw new orl.ContentHasMutatedException(this.path);return Buffer.from((this.bom?"\uFEFF":"")+this.content.toString(),"utf-8")}};aue.UpdateRecorderBase=vMr});var vDt=H(SDt=>{"use strict";Object.defineProperty(SDt,"__esModule",{value:!0});SDt.ScopedTree=void 0;var pw=O2(),arl=hDt(),crl=RH(),K8e=class{_base;scope;constructor(t,r){this._base=t,this.scope=r}get path(){return(0,pw.join)(pw.NormalizedRoot,(0,pw.relative)(this.scope,this._base.path))}get content(){return this._base.content}},EDt=class e{_base;scope;constructor(t,r){this._base=t,this.scope=r}get parent(){return!this._base.parent||this._base.path==this.scope?null:new e(this._base.parent,this.scope)}get path(){return(0,pw.join)(pw.NormalizedRoot,(0,pw.relative)(this.scope,this._base.path))}get subdirs(){return this._base.subdirs}get subfiles(){return this._base.subfiles}dir(t){let r=this._base.dir(t);return r&&new e(r,this.scope)}file(t){let r=this._base.file(t);return r&&new K8e(r,this.scope)}visit(t){return this._base.visit((r,n)=>{t((0,pw.join)(pw.NormalizedRoot,(0,pw.relative)(this.scope,r)),n&&new K8e(n,this.scope))})}},wMr=class e{_base;_root;constructor(t,r){this._base=t;let n=(0,pw.normalize)("/"+r);this._root=new EDt(this._base.getDir(n),n)}get root(){return this._root}branch(){return new e(this._base.branch(),this._root.scope)}merge(t,r){let n=this,a=new class extends arl.DelegateTree{get actions(){return t.actions.map(o=>n._fullPathAction(o))}}(t);this._base.merge(a,r)}read(t){return this._base.read(this._fullPath(t))}readText(t){return this._base.readText(this._fullPath(t))}readJson(t){return this._base.readJson(this._fullPath(t))}exists(t){return this._base.exists(this._fullPath(t))}get(t){let r=this._base.get(this._fullPath(t));return r&&new K8e(r,this._root.scope)}getDir(t){let r=this._base.getDir(this._fullPath(t));return r&&new EDt(r,this._root.scope)}visit(t){return this._root.visit(t)}overwrite(t,r){return this._base.overwrite(this._fullPath(t),r)}beginUpdate(t){return this._base.beginUpdate(this._fullPath(t))}commitUpdate(t){return this._base.commitUpdate(t)}create(t,r){return this._base.create(this._fullPath(t),r)}delete(t){return this._base.delete(this._fullPath(t))}rename(t,r){return this._base.rename(this._fullPath(t),this._fullPath(r))}apply(t,r){return this._base.apply(this._fullPathAction(t),r)}get actions(){let t=[];for(let r of this._base.actions)r.path.startsWith(this._root.scope+"/")&&(r.kind!=="r"?t.push({...r,path:(0,pw.join)(pw.NormalizedRoot,(0,pw.relative)(this._root.scope,r.path))}):r.to.startsWith(this._root.scope+"/")&&t.push({...r,path:(0,pw.join)(pw.NormalizedRoot,(0,pw.relative)(this._root.scope,r.path)),to:(0,pw.join)(pw.NormalizedRoot,(0,pw.relative)(this._root.scope,r.to))}));return t}[crl.TreeSymbol](){return this}_fullPath(t){return(0,pw.join)(this._root.scope,(0,pw.normalize)("/"+t))}_fullPathAction(t){let r;return t.kind==="r"?r={...t,path:this._fullPath(t.path),to:this._fullPath(t.to)}:r={...t,path:this._fullPath(t.path)},r}};SDt.ScopedTree=wMr});var L_e=H(Aj=>{"use strict";Object.defineProperty(Aj,"__esModule",{value:!0});Aj.FilterHostTree=Aj.HostCreateTree=Aj.HostTree=Aj.HostDirEntry=void 0;var AL=O2(),ses=xxe(),LP=M4(),lrl=hDt(),url=z$i(),gj=RH(),oes=BMr(),grl=vDt(),Arl=0,BDt=class{parent;path;_host;_tree;constructor(t,r,n,a){this.parent=t,this.path=r,this._host=n,this._tree=a}get subdirs(){return this._host.list(this.path).filter(t=>this._host.isDirectory((0,AL.join)(this.path,t)))}get subfiles(){return this._host.list(this.path).filter(t=>this._host.isFile((0,AL.join)(this.path,t)))}dir(t){return this._tree.getDir((0,AL.join)(this.path,t))}file(t){return this._tree.get((0,AL.join)(this.path,t))}visit(t){try{this.getSubfilesRecursively().forEach(r=>t(r.path,r))}catch(r){if(r!==gj.FileVisitorCancelToken)throw r}}getSubfilesRecursively(){function t(r){return r.subdirs.reduce((n,a)=>[...n,...t(r.dir(a))],r.subfiles.map(n=>r.file(n)))}return t(this)}};Aj.HostDirEntry=BDt;var Lxe=class e{_backend;_id=--Arl;_record;_recordSync;_ancestry=new Set;_dirCache=new Map;[gj.TreeSymbol](){return this}static isHostTree(t){return t instanceof e||typeof t=="object"&&typeof t._ancestry=="object"}constructor(t=new AL.virtualFs.Empty){this._backend=t,this._record=new AL.virtualFs.CordHost(new AL.virtualFs.SafeReadonlyHost(t)),this._recordSync=new AL.virtualFs.SyncDelegateHost(this._record)}_normalizePath(t){return(0,AL.normalize)("/"+t)}_willCreate(t){return this._record.willCreate(t)}_willOverwrite(t){return this._record.willOverwrite(t)}_willDelete(t){return this._record.willDelete(t)}_willRename(t){return this._record.willRename(t)}branch(){let t=new e(this._backend);return t._record=this._record.clone(),t._recordSync=new AL.virtualFs.SyncDelegateHost(t._record),t._ancestry=new Set(this._ancestry).add(this._id),t}isAncestorOf(t){return t instanceof e?t._ancestry.has(this._id):t instanceof lrl.DelegateTree?this.isAncestorOf(t._other):t instanceof grl.ScopedTree?this.isAncestorOf(t._base):!1}merge(t,r=gj.MergeStrategy.Default){if(t===this)return;this.isAncestorOf(t)&&(r|=gj.MergeStrategy.Overwrite);let n=(r&gj.MergeStrategy.AllowCreationConflict)==gj.MergeStrategy.AllowCreationConflict,a=(r&gj.MergeStrategy.AllowOverwriteConflict)==gj.MergeStrategy.AllowOverwriteConflict,o=(r&gj.MergeStrategy.AllowDeleteConflict)==gj.MergeStrategy.AllowDeleteConflict;t.actions.forEach(l=>{switch(l.kind){case"c":{let{path:A,content:f}=l;if(this._willCreate(A)||this._willOverwrite(A)||this.exists(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!n)throw new LP.MergeConflictException(A);this._record.overwrite(A,f).subscribe()}else this._record.create(A,f).subscribe();return}case"o":{let{path:A,content:f}=l;if(this._willDelete(A)&&!a)throw new LP.MergeConflictException(A);if(this._willOverwrite(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!a)throw new LP.MergeConflictException(A)}this._record.write(A,f).subscribe();return}case"r":{let{path:A,to:f}=l;if(this._willDelete(A))throw new LP.MergeConflictException(A);if(this._willRename(A)){if(this._record.willRenameTo(A,f))return;throw new LP.MergeConflictException(A)}this.rename(A,f);return}case"d":{let{path:A}=l;if(this._willDelete(A))return;if(!this.exists(A)&&!o)throw new LP.MergeConflictException(A);this._recordSync.delete(A);return}}})}get root(){return this.getDir("/")}read(t){let r=this.get(t);return r?r.content:null}readText(t){let r=this.read(t);if(r===null)throw new LP.FileDoesNotExistException(t);let n=new TextDecoder("utf-8",{fatal:!0});try{return n.decode(r)}catch(a){throw a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA"?new Error(`Failed to decode "${t}" as UTF-8 text.`):a}}readJson(t){let r=this.readText(t),n=[],a=(0,ses.parse)(r,n,{allowTrailingComma:!0});if(n[0]){let{error:o,offset:l}=n[0];throw new Error(`Failed to parse "${t}" as JSON. ${(0,ses.printParseErrorCode)(o)} at offset: ${l}.`)}return a}exists(t){return this._recordSync.isFile(this._normalizePath(t))}get(t){let r=this._normalizePath(t);if(this._recordSync.isDirectory(r))throw new AL.PathIsDirectoryException(r);return this._recordSync.exists(r)?new url.LazyFileEntry(r,()=>Buffer.from(this._recordSync.read(r))):null}getDir(t){let r=this._normalizePath(t);if(this._recordSync.isFile(r))throw new AL.PathIsFileException(r);let n=this._dirCache.get(r);if(!n){let a=(0,AL.dirname)(r);r===a&&(a=null),n=new BDt(a&&this.getDir(a),r,this._recordSync,this),this._dirCache.set(r,n)}return n}visit(t){this.root.visit((r,n)=>{t(r,n)})}overwrite(t,r){let n=this._normalizePath(t);if(!this._recordSync.exists(n))throw new LP.FileDoesNotExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.overwrite(n,a).subscribe()}beginUpdate(t){let r=this.get(t);if(!r)throw new LP.FileDoesNotExistException(t);return oes.UpdateRecorderBase.createFromFileEntry(r)}commitUpdate(t){if(t instanceof oes.UpdateRecorderBase){let r=t.path,n=this.get(r);if(n){let a=t.apply(n.content);a.equals(n.content)||this.overwrite(r,a)}else throw new LP.ContentHasMutatedException(r)}else throw new LP.InvalidUpdateRecordException}create(t,r){let n=this._normalizePath(t);if(this._recordSync.exists(n))throw new LP.FileAlreadyExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.create(n,a).subscribe()}delete(t){this._recordSync.delete(this._normalizePath(t))}rename(t,r){this._recordSync.rename(this._normalizePath(t),this._normalizePath(r))}apply(t,r){throw new LP.SchematicsException("Apply not implemented on host trees.")}*generateActions(){for(let t of this._record.records())switch(t.kind){case"create":yield{id:this._id,parent:0,kind:"c",path:t.path,content:Buffer.from(t.content)};break;case"overwrite":yield{id:this._id,parent:0,kind:"o",path:t.path,content:Buffer.from(t.content)};break;case"rename":yield{id:this._id,parent:0,kind:"r",path:t.from,to:t.to};break;case"delete":yield{id:this._id,parent:0,kind:"d",path:t.path};break}}get actions(){return Array.from(this.generateActions())}};Aj.HostTree=Lxe;var TMr=class extends Lxe{constructor(t){super();let r=new Lxe(t);r.visit(n=>{let a=r.read(n);a&&this.create(n,a)})}};Aj.HostCreateTree=TMr;var RMr=class extends Lxe{constructor(t,r=()=>!0){let n=new AL.virtualFs.SimpleMemoryHost,a=t._backend,o=["/"];for(;o.length>0;){let l=o.pop();if(l===void 0)break;let A=!1;if(a.isDirectory(l).subscribe(C=>A=C),A){a.list(l).subscribe(C=>o.push(...C.map(b=>(0,AL.join)(l,b))));continue}let f=!1;if(a.isFile(l).subscribe(C=>f=C),!f||!r(l))continue;let I=null;a.read(l).subscribe(C=>I=C),I!==null&&n.write(l,I).subscribe()}super(n);for(let l of t.actions)if(r(l.path))switch(l.kind){case"c":this.create(l.path,l.content);break;case"d":this.delete(l.path);break;case"o":this.overwrite(l.path,l.content);break;case"r":this.rename(l.path,l.to);break}}};Aj.FilterHostTree=RMr});var j8e=H(Vxe=>{"use strict";Object.defineProperty(Vxe,"__esModule",{value:!0});Vxe.empty=frl;Vxe.branch=Irl;Vxe.merge=hrl;Vxe.partition=mrl;var drl=M4(),wDt=L_e(),prl=RH();function frl(){return new wDt.HostTree}function Irl(e){return e.branch()}function hrl(e,t,r=prl.MergeStrategy.Default){return e.merge(t,r),e}function mrl(e,t){if(e instanceof wDt.HostTree)return[new wDt.FilterHostTree(e,t),new wDt.FilterHostTree(e,(r,n)=>!t(r,n))];throw new drl.SchematicsException("Tree type is not supported.")}});var aes=H(lue=>{"use strict";Object.defineProperty(lue,"__esModule",{value:!0});lue.NullTree=lue.NullTreeDirEntry=lue.CannotCreateFileException=void 0;var z8e=O2(),cue=M4(),Crl=RH(),_rl=BMr(),TDt=class extends z8e.BaseException{constructor(t){super(`Cannot create file "${t}".`)}};lue.CannotCreateFileException=TDt;var q8e=class e{path;get parent(){return this.path=="/"?null:new e((0,z8e.dirname)(this.path))}constructor(t){this.path=t}subdirs=[];subfiles=[];dir(t){return new e((0,z8e.join)(this.path,t))}file(t){return null}visit(){}};lue.NullTreeDirEntry=q8e;var NMr=class e{[Crl.TreeSymbol](){return this}branch(){return new e}merge(t,r){}root=new q8e((0,z8e.normalize)("/"));exists(t){return!1}read(t){return null}readText(t){throw new cue.FileDoesNotExistException(t)}readJson(t){throw new cue.FileDoesNotExistException(t)}get(t){return null}getDir(t){return new q8e((0,z8e.normalize)("/"+t))}visit(){}beginUpdate(t){throw new cue.FileDoesNotExistException(t)}commitUpdate(t){throw new cue.FileDoesNotExistException(t instanceof _rl.UpdateRecorderBase?t.path:"")}copy(t,r){throw new cue.FileDoesNotExistException(t)}delete(t){throw new cue.FileDoesNotExistException(t)}create(t,r){throw new TDt(t)}rename(t,r){throw new cue.FileDoesNotExistException(t)}overwrite(t,r){throw new cue.FileDoesNotExistException(t)}apply(t,r){}get actions(){return[]}};lue.NullTree=NMr});var DDt=H(uue=>{"use strict";Object.defineProperty(uue,"__esModule",{value:!0});uue.InvalidSourceResultException=uue.InvalidRuleResultException=void 0;uue.callSource=yrl;uue.callRule=brl;var les=O2(),dj=tE(),ues=RH();function ges(e){return e===void 0?"undefined":e===null?"null":typeof e=="function"?"Function()":typeof e!="object"?`${typeof e}(${JSON.stringify(e)})`:Object.getPrototypeOf(e)==Object?`Object(${JSON.stringify(e)})`:e.constructor?`Instance of class ${e.constructor.name}`:"Unknown Object"}var RDt=class extends les.BaseException{constructor(t){super(`Invalid rule result: ${ges(t)}.`)}};uue.InvalidRuleResultException=RDt;var NDt=class extends les.BaseException{constructor(t){super(`Invalid source result: ${ges(t)}.`)}};uue.InvalidSourceResultException=NDt;function yrl(e,t){return(0,dj.defer)(async()=>{let r=e(t);if((0,dj.isObservable)(r)&&(r=await(0,dj.lastValueFrom)(r.pipe((0,dj.defaultIfEmpty)(void 0)))),r&&ues.TreeSymbol in r)return r;throw new NDt(r)})}function brl(e,t,r){return(0,dj.isObservable)(t)?t.pipe((0,dj.mergeMap)(n=>ces(e,n,r))):(0,dj.defer)(()=>ces(e,t,r))}async function ces(e,t,r){let n=await e(t,r);for(;typeof n=="function";)n=await n(t,r);if(typeof n>"u")return t;if((0,dj.isObservable)(n)&&(n=await(0,dj.lastValueFrom)(n.pipe((0,dj.defaultIfEmpty)(t)))),n&&ues.TreeSymbol in n)return n;throw new RDt(n)}});var xDt=H(Wxe=>{"use strict";Object.defineProperty(Wxe,"__esModule",{value:!0});Wxe.SchematicImpl=Wxe.InvalidSchematicsNameException=void 0;var Erl=O2(),$8e=tE(),Srl=DDt(),vrl=vDt(),kDt=class extends Erl.BaseException{constructor(t){super(`Schematics has invalid name: "${t}".`)}};Wxe.InvalidSchematicsNameException=kDt;var DMr=class{_description;_factory;_collection;_engine;constructor(t,r,n,a){if(this._description=t,this._factory=r,this._collection=n,this._engine=a,!t.name.match(/^[-@/_.a-zA-Z0-9]+$/))throw new kDt(t.name)}get description(){return this._description}get collection(){return this._collection}call(t,r,n,a){let o=this._engine.createContext(this,n,a);return r.pipe((0,$8e.first)(),(0,$8e.concatMap)(l=>this._engine.transformOptions(this,t,o).pipe((0,$8e.map)(A=>[l,A]))),(0,$8e.concatMap)(([l,A])=>{let f,I=!1;return a&&a.scope?(I=!0,f=new vrl.ScopedTree(l,a.scope)):f=l,(0,Srl.callRule)(this._factory(A),f,o).pipe((0,$8e.map)(C=>C===f?l:I?(l.merge(C),l):C))}))}};Wxe.SchematicImpl=DMr});var Aes=H(P2=>{"use strict";Object.defineProperty(P2,"__esModule",{value:!0});P2.SchematicEngine=P2.TaskScheduler=P2.CollectionImpl=P2.UnknownTaskDependencyException=P2.UnregisteredTaskException=P2.SchematicEngineConflictingException=P2.PrivateSchematicException=P2.UnknownSchematicException=P2.CircularCollectionException=P2.UnknownCollectionException=P2.UnknownUrlSourceProtocol=void 0;var pj=O2(),GDt=tE(),Brl=RH(),wrl=aes(),Trl=j8e(),Rrl=xDt(),FDt=class extends pj.BaseException{constructor(t){super(`Unknown Protocol on url "${t}".`)}};P2.UnknownUrlSourceProtocol=FDt;var ZDt=class extends pj.BaseException{constructor(t){super(`Unknown collection "${t}".`)}};P2.UnknownCollectionException=ZDt;var LDt=class extends pj.BaseException{constructor(t){super(`Circular collection reference "${t}".`)}};P2.CircularCollectionException=LDt;var VDt=class extends pj.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};P2.UnknownSchematicException=VDt;var WDt=class extends pj.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};P2.PrivateSchematicException=WDt;var ODt=class extends pj.BaseException{constructor(){super("A schematic was called from a different engine as its parent.")}};P2.SchematicEngineConflictingException=ODt;var PDt=class extends pj.BaseException{constructor(t,r){let n=r?` in schematic "${r.name}"`:"";super(`Unregistered task "${t}"${n}.`)}};P2.UnregisteredTaskException=PDt;var MDt=class extends pj.BaseException{constructor(t){super(`Unknown task dependency [ID: ${t.id}].`)}};P2.UnknownTaskDependencyException=MDt;var HDt=class{_description;_engine;baseDescriptions;constructor(t,r,n){this._description=t,this._engine=r,this.baseDescriptions=n}get description(){return this._description}get name(){return this.description.name||""}createSchematic(t,r=!1){return this._engine.createSchematic(t,this,r)}listSchematicNames(t){return this._engine.listSchematicNames(this,t)}};P2.CollectionImpl=HDt;var YDt=class e{_context;_queue=new pj.PriorityQueue((t,r)=>t.priority-r.priority);_taskIds=new Map;static _taskIdCounter=1;constructor(t){this._context=t}_calculatePriority(t){return t.size===0?0:[...t].reduce((n,a)=>n+a.priority,1)}_mapDependencies(t){if(!t)return new Set;let r=t.map(n=>{let a=this._taskIds.get(n);if(!a)throw new MDt(n);return a});return new Set(r)}schedule(t){let r=this._mapDependencies(t.dependencies),n=this._calculatePriority(r),a={id:e._taskIdCounter++,priority:n,configuration:t,context:this._context};this._queue.push(a);let o={id:a.id};return this._taskIds.set(o,a),o}finalize(){let t=this._queue.toArray();return this._queue.clear(),this._taskIds.clear(),t}};P2.TaskScheduler=YDt;var kMr=class{_host;_workflow;_collectionCache=new Map;_schematicCache=new WeakMap;_taskSchedulers=new Array;constructor(t,r){this._host=t,this._workflow=r}get workflow(){return this._workflow||null}get defaultMergeStrategy(){return this._host.defaultMergeStrategy||Brl.MergeStrategy.Default}createCollection(t,r){let n=this._collectionCache.get(t);if(n)return n;let[a,o]=this._createCollectionDescription(t,r?.description);return n=new HDt(a,this,o),this._collectionCache.set(t,n),this._schematicCache.set(n,new Map),n}_createCollectionDescription(t,r,n){let a=this._host.createCollectionDescription(t,r);if(!a)throw new ZDt(t);if(n&&n.has(a.name))throw new LDt(t);let o=new Array;if(a.extends){n=(n||new Set).add(a.name);for(let l of a.extends){let[A,f]=this._createCollectionDescription(l,a,new Set(n));o.unshift(A,...f)}}return[a,o]}createContext(t,r,n){if(r&&r.engine&&r.engine!==this)throw new ODt;let a=!0;n&&n.interactive!=null?a=n.interactive:r&&r.interactive!=null&&(a=r.interactive);let o={debug:r&&r.debug||!1,engine:this,logger:r&&r.logger&&r.logger.createChild(t.description.name)||new pj.logging.NullLogger,schematic:t,strategy:r&&r.strategy!==void 0?r.strategy:this.defaultMergeStrategy,interactive:a,addTask:I},l=this._host.transformContext(o);l&&(o=l);let A=new YDt(o),f=this._host;this._taskSchedulers.push(A);function I(C,b){let E=C.toConfiguration();if(!f.hasTaskExecutor(E.name))throw new PDt(E.name,t.description);return E.dependencies=E.dependencies||[],b&&E.dependencies.unshift(...b),A.schedule(E)}return o}createSchematic(t,r,n=!1){let a=this._schematicCache.get(r),o=a?.get(t);if(o)return o;let l=r.description,A=this._host.createSchematicDescription(t,r.description);if(!A){if(r.baseDescriptions){for(let I of r.baseDescriptions)if(A=this._host.createSchematicDescription(t,I),A){l=I;break}}if(!A)throw new VDt(t,r.description)}if(A.private&&!n)throw new WDt(t,r.description);let f=this._host.getSchematicRuleFactory(A,l);return o=new Rrl.SchematicImpl(A,f,r,this),a?.set(t,o),o}listSchematicNames(t,r){let n=this._host.listSchematicNames(t.description,r);if(t.baseDescriptions)for(let a of t.baseDescriptions)n.push(...this._host.listSchematicNames(a,r));return[...new Set(n)].sort()}transformOptions(t,r,n){return this._host.transformOptions(t.description,r,n)}createSourceFromUrl(t,r){switch(t.protocol){case"null:":return()=>new wrl.NullTree;case"empty:":return()=>(0,Trl.empty)()}let n=this._host.createSourceFromUrl(t,r);if(!n)throw new FDt(t.toString());return n}executePostTasks(){let t=new Map;return(0,GDt.from)(this._taskSchedulers).pipe((0,GDt.concatMap)(n=>n.finalize()),(0,GDt.concatMap)(n=>{let{name:a,options:o}=n.configuration,l=t.get(a);return l?l(o,n.context):this._host.createTaskExecutor(a).pipe((0,GDt.concatMap)(A=>(t.set(a,A),A(o,n.context))))}))}};P2.SchematicEngine=kMr});var pes=H(des=>{"use strict";Object.defineProperty(des,"__esModule",{value:!0})});var GMr=H(Dte=>{"use strict";var Nrl=Dte&&Dte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xMr=Dte&&Dte.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Nrl(t,e,r)};Object.defineProperty(Dte,"__esModule",{value:!0});xMr(Aes(),Dte);xMr(pes(),Dte);xMr(xDt(),Dte)});var fes=H(FMr=>{"use strict";Object.defineProperty(FMr,"__esModule",{value:!0});FMr.createConsoleLogger=xrl;var Drl=tE(),krl=O2();function xrl(e=!1,t=process.stdout,r=process.stderr,n){let a=new krl.logging.IndentLogger("cling");return a.pipe((0,Drl.filter)(o=>o.level!=="debug"||e)).subscribe(o=>{let l=n&&n[o.level],A=t;switch(o.level){case"warn":case"fatal":case"error":A=r;break}let f=2e3,I=o.message;for(;I;){let C=I.slice(0,f);I=I.slice(f),A.write(l?l(C):C)}A.write(` -`)}),a}});var hes=H(Oxe=>{"use strict";Object.defineProperty(Oxe,"__esModule",{value:!0});Oxe.NodeJsSyncHost=Oxe.NodeJsAsyncHost=void 0;var ED=Et("node:fs"),Grl=Et("node:path"),rE=tE(),cC=O2();async function Frl(e){try{return await ED.promises.access(e,ED.constants.F_OK),!0}catch{return!1}}var QDt;function Ies(){if(!QDt)try{QDt=Et("chokidar").FSWatcher}catch(e){throw e.code!=="MODULE_NOT_FOUND"?new Error('As of angular-devkit version 8.0, the "chokidar" package must be installed in order to use watch() features.'):e}}var ZMr=class{get capabilities(){return{synchronous:!1}}write(t,r){return(0,rE.from)(ED.promises.mkdir((0,cC.getSystemPath)((0,cC.dirname)(t)),{recursive:!0})).pipe((0,rE.mergeMap)(()=>ED.promises.writeFile((0,cC.getSystemPath)(t),new Uint8Array(r))))}read(t){return(0,rE.from)(ED.promises.readFile((0,cC.getSystemPath)(t))).pipe((0,rE.map)(r=>new Uint8Array(r).buffer))}delete(t){return(0,rE.from)(ED.promises.rm((0,cC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}))}rename(t,r){return(0,rE.from)(ED.promises.rename((0,cC.getSystemPath)(t),(0,cC.getSystemPath)(r)))}list(t){return(0,rE.from)(ED.promises.readdir((0,cC.getSystemPath)(t))).pipe((0,rE.map)(r=>r.map(n=>(0,cC.fragment)(n))))}exists(t){return(0,rE.from)(Frl((0,cC.getSystemPath)(t)))}isDirectory(t){return this.stat(t).pipe((0,rE.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,rE.map)(r=>r.isFile()))}stat(t){return(0,rE.from)(ED.promises.stat((0,cC.getSystemPath)(t)))}watch(t,r){return new rE.Observable(n=>{Ies();let a=new QDt({persistent:!0});return a.add((0,cC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,rE.publish)(),(0,rE.refCount)())}};Oxe.NodeJsAsyncHost=ZMr;var LMr=class{get capabilities(){return{synchronous:!0}}write(t,r){return new rE.Observable(n=>{(0,ED.mkdirSync)((0,cC.getSystemPath)((0,cC.dirname)(t)),{recursive:!0}),(0,ED.writeFileSync)((0,cC.getSystemPath)(t),new Uint8Array(r)),n.next(),n.complete()})}read(t){return new rE.Observable(r=>{let n=(0,ED.readFileSync)((0,cC.getSystemPath)(t));r.next(new Uint8Array(n).buffer),r.complete()})}delete(t){return new rE.Observable(r=>{(0,ED.rmSync)((0,cC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}),r.complete()})}rename(t,r){return new rE.Observable(n=>{let a=(0,cC.getSystemPath)(r);(0,ED.mkdirSync)((0,Grl.dirname)(a),{recursive:!0}),(0,ED.renameSync)((0,cC.getSystemPath)(t),a),n.next(),n.complete()})}list(t){return new rE.Observable(r=>{let n=(0,ED.readdirSync)((0,cC.getSystemPath)(t));r.next(n.map(a=>(0,cC.fragment)(a))),r.complete()})}exists(t){return new rE.Observable(r=>{r.next((0,ED.existsSync)((0,cC.getSystemPath)(t))),r.complete()})}isDirectory(t){return this.stat(t).pipe((0,rE.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,rE.map)(r=>r.isFile()))}stat(t){return new rE.Observable(r=>{r.next((0,ED.statSync)((0,cC.getSystemPath)(t))),r.complete()})}watch(t,r){return new rE.Observable(n=>{Ies();let a=new QDt({persistent:!1});return a.add((0,cC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,rE.publish)(),(0,rE.refCount)())}};Oxe.NodeJsSyncHost=LMr});var XDt=H(gue=>{"use strict";var Zrl=gue&&gue.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mes=gue&&gue.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Zrl(t,e,r)};Object.defineProperty(gue,"__esModule",{value:!0});mes(fes(),gue);mes(hes(),gue)});var OMr=H(V_e=>{"use strict";Object.defineProperty(V_e,"__esModule",{value:!0});V_e.ActionList=V_e.UnknownActionException=void 0;V_e.isContentAction=Wrl;var Lrl=O2(),VMr=class extends Lrl.BaseException{constructor(t){super(`Unknown action: "${t.kind}".`)}};V_e.UnknownActionException=VMr;var Vrl=1,WMr=class{_actions=[];_action(t){this._actions.push({...t,id:Vrl++,parent:this._actions[this._actions.length-1]?.id??0})}create(t,r){this._action({kind:"c",path:t,content:r})}overwrite(t,r){this._action({kind:"o",path:t,content:r})}rename(t,r){this._action({kind:"r",path:t,to:r})}delete(t){this._action({kind:"d",path:t})}optimize(){let t=new Map,r=new Map,n=new Map,a=new Set;for(let o of this._actions)switch(o.kind){case"c":t.set(o.path,o.content);break;case"o":t.has(o.path)?t.set(o.path,o.content):n.set(o.path,o.content);break;case"d":a.add(o.path);break;case"r":{let l=t.get(o.path),A=n.get(o.path);l&&(t.delete(o.path),t.set(o.to,l)),A&&(n.delete(o.path),n.set(o.to,A));let f;for(let[I,C]of r.entries())if(C==o.path){f=I;break}f&&r.set(f,o.to),!l&&!A&&!f&&r.set(o.path,o.to);break}}this._actions=[],a.forEach(o=>{this.delete(o)}),r.forEach((o,l)=>{this.rename(l,o)}),t.forEach((o,l)=>{this.create(l,o)}),n.forEach((o,l)=>{this.overwrite(l,o)})}push(t){this._actions.push(t)}get(t){return this._actions[t]}has(t){for(let r=0;rt.id)return!1}return!1}find(t){return this._actions.find(t)||null}forEach(t,r){this._actions.forEach(t,r)}get length(){return this._actions.length}[Symbol.iterator](){return this._actions[Symbol.iterator]()}};V_e.ActionList=WMr;function Wrl(e){return e.kind=="c"||e.kind=="o"}});var MMr=H(UDt=>{"use strict";Object.defineProperty(UDt,"__esModule",{value:!0});UDt.SimpleSinkBase=void 0;var nE=tE(),Ces=M4(),Orl=OMr(),JDt=function(){},PMr=class{preCommitAction=JDt;postCommitAction=JDt;preCommit=JDt;postCommit=JDt;_fileAlreadyExistException(t){throw new Ces.FileAlreadyExistException(t)}_fileDoesNotExistException(t){throw new Ces.FileDoesNotExistException(t)}_validateOverwriteAction(t){return this._validateFileExists(t.path).pipe((0,nE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}_validateCreateAction(t){return this._validateFileExists(t.path).pipe((0,nE.map)(r=>{r&&this._fileAlreadyExistException(t.path)}))}_validateRenameAction(t){return this._validateFileExists(t.path).pipe((0,nE.map)(r=>{r||this._fileDoesNotExistException(t.path)}),(0,nE.mergeMap)(()=>this._validateFileExists(t.to)),(0,nE.map)(r=>{r&&this._fileAlreadyExistException(t.to)}))}_validateDeleteAction(t){return this._validateFileExists(t.path).pipe((0,nE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}validateSingleAction(t){switch(t.kind){case"o":return this._validateOverwriteAction(t);case"c":return this._validateCreateAction(t);case"r":return this._validateRenameAction(t);case"d":return this._validateDeleteAction(t);default:throw new Orl.UnknownActionException(t)}}commitSingleAction(t){return(0,nE.concat)(this.validateSingleAction(t),new nE.Observable(r=>{let n=null;switch(t.kind){case"o":n=this._overwriteFile(t.path,t.content);break;case"c":n=this._createFile(t.path,t.content);break;case"r":n=this._renameFile(t.path,t.to);break;case"d":n=this._deleteFile(t.path);break}n?n.subscribe(r):r.complete()})).pipe((0,nE.ignoreElements)())}commit(t){let r=(0,nE.from)(t.actions);return(0,nE.concat)(this.preCommit()||(0,nE.of)(null),(0,nE.defer)(()=>r).pipe((0,nE.concatMap)(n=>{let a=this.preCommitAction(n);return(0,nE.isObservable)(a)||Prl(a)?a:(0,nE.of)(a||n)}),(0,nE.concatMap)(n=>(0,nE.concat)(this.commitSingleAction(n).pipe((0,nE.ignoreElements)()),(0,nE.of)(n))),(0,nE.concatMap)(n=>this.postCommitAction(n)||(0,nE.of)(null))),(0,nE.defer)(()=>this._done()),(0,nE.defer)(()=>this.postCommit()||(0,nE.of)(null))).pipe((0,nE.ignoreElements)(),(0,nE.defaultIfEmpty)(void 0))}};UDt.SimpleSinkBase=PMr;function Prl(e){return!!e&&typeof e.then=="function"}});var jDt=H(KDt=>{"use strict";Object.defineProperty(KDt,"__esModule",{value:!0});KDt.HostSink=void 0;var PR=tE(),Mrl=MMr(),HMr=class extends Mrl.SimpleSinkBase{_host;_force;_filesToDelete=new Set;_filesToRename=new Set;_filesToCreate=new Map;_filesToUpdate=new Map;constructor(t,r=!1){super(),this._host=t,this._force=r}_validateCreateAction(t){return this._force?PR.EMPTY:super._validateCreateAction(t)}_validateFileExists(t){if(this._filesToCreate.has(t)||this._filesToUpdate.has(t))return(0,PR.of)(!0);if(this._filesToDelete.has(t))return(0,PR.of)(!1);for(let[r,n]of this._filesToRename.values())switch(t){case r:return(0,PR.of)(!1);case n:return(0,PR.of)(!0)}return this._host.exists(t)}_overwriteFile(t,r){return this._filesToUpdate.set(t,r),PR.EMPTY}_createFile(t,r){return this._filesToCreate.set(t,r),PR.EMPTY}_renameFile(t,r){return this._filesToRename.add([t,r]),PR.EMPTY}_deleteFile(t){return this._filesToCreate.has(t)?(this._filesToCreate.delete(t),this._filesToUpdate.delete(t)):this._filesToDelete.add(t),PR.EMPTY}_done(){return(0,PR.concat)((0,PR.from)([...this._filesToDelete.values()]).pipe((0,PR.concatMap)(t=>this._host.delete(t))),(0,PR.from)([...this._filesToRename.entries()]).pipe((0,PR.concatMap)(([t,[r,n]])=>this._host.rename(r,n))),(0,PR.from)([...this._filesToCreate.entries()]).pipe((0,PR.concatMap)(([t,r])=>this._host.write(t,r))),(0,PR.from)([...this._filesToUpdate.entries()]).pipe((0,PR.concatMap)(([t,r])=>this._host.write(t,r)))).pipe((0,PR.reduce)(()=>{}))}};KDt.HostSink=HMr});var QMr=H(zDt=>{"use strict";Object.defineProperty(zDt,"__esModule",{value:!0});zDt.DryRunSink=void 0;var _es=O2(),Hrl=XDt(),yes=tE(),Yrl=jDt(),YMr=class extends Yrl.HostSink{_subject=new yes.Subject;_fileDoesNotExistExceptionSet=new Set;_fileAlreadyExistExceptionSet=new Set;reporter=this._subject.asObservable();constructor(t,r=!1){super(typeof t=="string"?new _es.virtualFs.ScopedHost(new Hrl.NodeJsSyncHost,(0,_es.normalize)(t)):t,r)}_fileAlreadyExistException(t){this._fileAlreadyExistExceptionSet.add(t)}_fileDoesNotExistException(t){this._fileDoesNotExistExceptionSet.add(t)}_done(){return this._fileAlreadyExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"alreadyExist",path:t})}),this._fileDoesNotExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"doesNotExist",path:t})}),this._filesToDelete.forEach(t=>{for(let[r]of this._filesToRename)if(r==t)return;this._subject.next({kind:"delete",path:t})}),this._filesToRename.forEach(([t,r])=>{this._subject.next({kind:"rename",path:t,to:r})}),this._filesToCreate.forEach((t,r)=>{for(let[,n]of this._filesToRename)if(n==r)return;this._fileAlreadyExistExceptionSet.has(r)||this._fileDoesNotExistExceptionSet.has(r)||this._subject.next({kind:"create",path:r,content:t})}),this._filesToUpdate.forEach((t,r)=>{this._subject.next({kind:"update",path:r,content:t})}),this._subject.complete(),(0,yes.of)(void 0)}};zDt.DryRunSink=YMr});var bes=H(qDt=>{"use strict";Object.defineProperty(qDt,"__esModule",{value:!0});qDt.BaseWorkflow=void 0;var XMr=O2(),cx=tE(),Qrl=GMr(),Xrl=M4(),Jrl=gMr(),Url=QMr(),Krl=jDt(),jrl=L_e(),JMr=class{_engine;_engineHost;_registry;_host;_reporter=new cx.Subject;_lifeCycle=new cx.Subject;_context;_force;_dryRun;constructor(t){this._host=t.host,this._engineHost=t.engineHost,t.registry?this._registry=t.registry:(this._registry=new XMr.schema.CoreSchemaRegistry(Jrl.standardFormats),this._registry.addPostTransform(XMr.schema.transforms.addUndefinedDefaults)),this._engine=new Qrl.SchematicEngine(this._engineHost,this),this._context=[],this._force=t.force||!1,this._dryRun=t.dryRun||!1}get context(){let t=this._context[this._context.length-1];if(!t)throw new Error("Cannot get context when workflow is not executing...");return t}get engine(){return this._engine}get engineHost(){return this._engineHost}get registry(){return this._registry}get reporter(){return this._reporter.asObservable()}get lifeCycle(){return this._lifeCycle.asObservable()}_createSinks(){let t=!1,r=new Url.DryRunSink(this._host,this._force),n=r.reporter.subscribe(a=>{this._reporter.next(a),t=t||a.kind=="error"});return[r,{commit(){return n.unsubscribe(),t?(0,cx.throwError)(new Xrl.UnsuccessfulWorkflowExecution):(0,cx.of)()}},...this._dryRun?[]:[new Krl.HostSink(this._host,this._force)]]}execute(t){let r=this._context[this._context.length-1];r||this._lifeCycle.next({kind:"start"});let n=this._engine.createCollection(t.collection),a=t.allowPrivate||r&&r.collection===t.collection,o=n.createSchematic(t.schematic,a),l=this._createSinks();this._lifeCycle.next({kind:"workflow-start"});let A={...t,debug:t.debug||!1,logger:t.logger||r&&r.logger||new XMr.logging.NullLogger,parentContext:r};return this._context.push(A),o.call(t.options,(0,cx.of)(new jrl.HostTree(this._host)),{logger:A.logger}).pipe((0,cx.concatMap)(f=>(0,cx.concat)((0,cx.from)(l).pipe((0,cx.concatMap)(I=>I.commit(f)),(0,cx.ignoreElements)()),(0,cx.of)(f))),(0,cx.concatMap)(()=>this._dryRun?cx.EMPTY:(this._lifeCycle.next({kind:"post-tasks-start"}),this._engine.executePostTasks().pipe((0,cx.tap)({complete:()=>this._lifeCycle.next({kind:"post-tasks-end"})}),(0,cx.defaultIfEmpty)(void 0),(0,cx.last)()))),(0,cx.tap)({complete:()=>{this._lifeCycle.next({kind:"workflow-end"}),this._context.pop(),this._context.length==0&&this._lifeCycle.next({kind:"end"})}}))}};qDt.BaseWorkflow=JMr});var Ses=H(Ees=>{"use strict";Object.defineProperty(Ees,"__esModule",{value:!0})});var Bes=H(Aue=>{"use strict";var zrl=Aue&&Aue.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ves=Aue&&Aue.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&zrl(t,e,r)};Object.defineProperty(Aue,"__esModule",{value:!0});ves(bes(),Aue);ves(Ses(),Aue)});var $Dt=H($G=>{"use strict";Object.defineProperty($G,"__esModule",{value:!0});$G.source=$rl;$G.empty=enl;$G.chain=KMr;$G.apply=tnl;$G.mergeWith=rnl;$G.noop=Nes;$G.filter=nnl;$G.asSource=inl;$G.branchAndMerge=snl;$G.when=onl;$G.partitionApplyMerge=anl;$G.forEach=cnl;$G.composeFileOperators=lnl;$G.applyToSubtree=unl;var due=tE(),Tes=M4(),wes=L_e(),Res=RH(),qrl=vDt(),UMr=j8e(),fj=DDt();function $rl(e){return()=>e}function enl(){return()=>(0,UMr.empty)()}function KMr(e){return async(t,r)=>{let n;if(Symbol.asyncIterator in e)for await(let a of e)n=(0,fj.callRule)(a,n??t,r);else for(let a of e)n=(0,fj.callRule)(a,n??t,r);return()=>n}}function tnl(e,t){return r=>(0,fj.callRule)(KMr(t),(0,fj.callSource)(e,r),r)}function rnl(e,t=Res.MergeStrategy.Default){return(r,n)=>(0,fj.callSource)(e,n).pipe((0,due.map)(a=>r.merge(a,t||n.strategy)),(0,due.mapTo)(r))}function Nes(){return()=>{}}function nnl(e){return t=>{if(wes.HostTree.isHostTree(t))return new wes.FilterHostTree(t,e);throw new Tes.SchematicsException("Tree type is not supported.")}}function inl(e){return t=>(0,fj.callRule)(e,(0,UMr.empty)(),t)}function snl(e,t=Res.MergeStrategy.Default){return(r,n)=>(0,fj.callRule)(e,r.branch(),n).pipe((0,due.map)(a=>r.merge(a,t||n.strategy)),(0,due.mapTo)(r))}function onl(e,t){return r=>e(r.path,r)?t(r):r}function anl(e,t,r){return(n,a)=>{let[o,l]=(0,UMr.partition)(n,e);return(0,due.concat)((0,fj.callRule)(t,o,a),(0,fj.callRule)(r||Nes(),l,a)).pipe((0,due.toArray)(),(0,due.map)(([A,f])=>(A.merge(f,a.strategy),A)))}}function cnl(e){return t=>{t.visit((r,n)=>{if(!n)return;let a=e(n);if(a!==n){if(a===null){t.delete(r);return}a.path!=r&&t.rename(r,a.path),a.content.equals(n.content)||t.overwrite(a.path,a.content)}})}}function lnl(e){return t=>{let r=t;for(let n of e)if(r=n(r),r===null)return null;return r}}function unl(e,t){return(r,n)=>{let a=new qrl.ScopedTree(r,e);return(0,fj.callRule)(KMr(t),a,n).pipe((0,due.map)(o=>{if(o===a)return r;throw new Tes.SchematicsException('Original tree must be returned from all rules when using "applyToSubtree".')}))}}});var Des=H(zMr=>{"use strict";Object.defineProperty(zMr,"__esModule",{value:!0});zMr.move=Anl;var jMr=O2(),gnl=$Dt();function Anl(e,t){t===void 0&&(t=e,e="/");let r=(0,jMr.normalize)("/"+e),n=(0,jMr.normalize)("/"+t);return r===n?gnl.noop:a=>(a.exists(r)?a.rename(r,n):a.getDir(r).visit(o=>{a.rename(o,(0,jMr.join)(n,o.slice(r.length)))}),a)}});var xes=H(qMr=>{"use strict";Object.defineProperty(qMr,"__esModule",{value:!0});qMr.default=fnl;var dnl=L_e();function kes(e){return new Array(e).fill(0).map(t=>"abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)]).join("")}function pnl(e,t){return Math.floor(Math.random()*(t-e))+e}function fnl(e){return()=>{let t="root"in e?e.root:"/",r=new dnl.HostTree,n="multiFiles"in e?typeof e.multiFiles=="number"?e.multiFiles:pnl(2,12):1;for(let a=0;a{"use strict";Object.defineProperty(ekt,"__esModule",{value:!0});ekt.externalSchematic=Inl;ekt.schematic=hnl;var Pxe=tE(),Ges=RH(),Fes=j8e();function Inl(e,t,r,n){return(a,o)=>o.engine.createCollection(e,o.schematic.collection).createSchematic(t).call(r,(0,Pxe.of)((0,Fes.branch)(a)),o,n).pipe((0,Pxe.last)(),(0,Pxe.map)(f=>(a.merge(f,Ges.MergeStrategy.AllowOverwriteConflict),a)))}function hnl(e,t,r){return(n,a)=>a.schematic.collection.createSchematic(e,!0).call(t,(0,Pxe.of)((0,Fes.branch)(n)),a,r).pipe((0,Pxe.last)(),(0,Pxe.map)(A=>(n.merge(A,Ges.MergeStrategy.AllowOverwriteConflict),n)))}});var Wes=H(bT=>{"use strict";Object.defineProperty(bT,"__esModule",{value:!0});bT.InvalidPipeException=bT.UnknownPipeException=bT.OptionIsNotDefinedException=bT.TEMPLATE_FILENAME_RE=void 0;bT.applyContentTemplate=$Mr;bT.contentTemplate=Les;bT.applyPathTemplate=eHr;bT.pathTemplate=Ves;bT.renameTemplateFiles=_nl;bT.template=ynl;bT.applyTemplates=bnl;var Mxe=O2(),mnl=Et("node:os"),W_e=$Dt();bT.TEMPLATE_FILENAME_RE=/\.template$/;var e6e=class extends Mxe.BaseException{constructor(t){super(`Option "${t}" is not defined.`)}};bT.OptionIsNotDefinedException=e6e;var tkt=class extends Mxe.BaseException{constructor(t){super(`Pipe "${t}" is not defined.`)}};bT.UnknownPipeException=tkt;var rkt=class extends Mxe.BaseException{constructor(t){super(`Pipe "${t}" is invalid.`)}};bT.InvalidPipeException=rkt;var Cnl=new TextDecoder("utf-8",{fatal:!0});function $Mr(e){return t=>{let{path:r,content:n}=t;try{let a=Cnl.decode(n).replace(/\r?\n/g,mnl.EOL);return{path:r,content:Buffer.from((0,Mxe.template)(a,{})(e))}}catch(a){if(a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA")return t;throw a}}}function Les(e){return(0,W_e.forEach)($Mr(e))}function eHr(e,t={interpolationStart:"__",interpolationEnd:"__",pipeSeparator:"@"}){let r=t.interpolationStart,n=t.interpolationEnd,a=r.length,o=n.length;return l=>{let A=l.path,f=l.content,I=A,C=A.indexOf(r),b=A.indexOf(n,C+a+1);for(;C!=-1&&b!=-1;){let E=A.substring(C+a,b),N=e[E];if(t.pipeSeparator){let[B,...F]=E.split(t.pipeSeparator);if(N=e[B],typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new e6e(B);N=F.reduce((Q,J)=>{if(!J)return Q;if(!(J in e))throw new tkt(J);let ae=e[J];if(typeof ae!="function")throw new rkt(J);return""+ae(Q)},""+N)}else if(typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new e6e(E);A=A.substring(0,C)+N+A.substring(b+o),C=A.indexOf(t.interpolationStart),b=A.indexOf(t.interpolationEnd,C+a+1)}return{path:(0,Mxe.normalize)(A),content:f}}}function Ves(e){return(0,W_e.forEach)(eHr(e))}function _nl(){return(0,W_e.forEach)(e=>e.path.match(bT.TEMPLATE_FILENAME_RE)?{content:e.content,path:(0,Mxe.normalize)(e.path.replace(bT.TEMPLATE_FILENAME_RE,""))}:e)}function ynl(e){return(0,W_e.chain)([Les(e),Ves(e)])}function bnl(e){return(0,W_e.forEach)((0,W_e.when)(t=>t.endsWith(".template"),(0,W_e.composeFileOperators)([$Mr(e),eHr(e),t=>({content:t.content,path:t.path.replace(bT.TEMPLATE_FILENAME_RE,"")})])))}});var Oes=H(tHr=>{"use strict";Object.defineProperty(tHr,"__esModule",{value:!0});tHr.url=Snl;var Enl=Et("url");function Snl(e){let t=(0,Enl.parse)(e);return r=>r.engine.createSourceFromUrl(t,r)(r)}});var Pes=H(nkt=>{"use strict";Object.defineProperty(nkt,"__esModule",{value:!0});nkt.EmptyTree=void 0;var vnl=L_e(),rHr=class extends vnl.HostTree{constructor(){super()}};nkt.EmptyTree=rHr});var Hxe=H(Dm=>{"use strict";var Mes=Dm&&Dm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Bnl=Dm&&Dm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Hes=Dm&&Dm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(Yes,"__esModule",{value:!0})});var okt=H(skt=>{"use strict";Object.defineProperty(skt,"__esModule",{value:!0});skt.ExportStringRef=void 0;var Xes=Et("path"),nHr=class{_ref;_module;_path;constructor(t,r=process.cwd(),n=!0){let[a,o]=t.split("#",2);this._module=a[0]=="."?(0,Xes.resolve)(r,a):a,this._module=Et.resolve(this._module),this._path=(0,Xes.dirname)(this._module),n?this._ref=Et(this._module)[o||"default"]:this._ref=Et(this._module)}get ref(){return this._ref}get module(){return this._module}get path(){return this._path}};skt.ExportStringRef=nHr});var sHr=H(iHr=>{"use strict";Object.defineProperty(iHr,"__esModule",{value:!0});iHr.readJsonFile=Gnl;var knl=Et("fs"),Jes=xxe(),xnl=M4();function Gnl(e){let t;try{t=(0,knl.readFileSync)(e,"utf-8")}catch(a){throw a&&typeof a=="object"&&"code"in a&&a.code==="ENOENT"?new xnl.FileDoesNotExistException(e):a}let r=[],n=(0,Jes.parse)(t,r,{allowTrailingComma:!0});if(r.length){let{error:a,offset:o}=r[0];throw new Error(`Failed to parse "${e}" as JSON AST Object. ${(0,Jes.printParseErrorCode)(a)} at location: ${o}.`)}return n}});var ukt=H(qv=>{"use strict";Object.defineProperty(qv,"__esModule",{value:!0});qv.FileSystemEngineHostBase=qv.SchematicNameCollisionException=qv.SchematicMissingDescriptionException=qv.SchematicMissingFieldsException=qv.CollectionMissingFieldsException=qv.CollectionMissingSchematicsMapException=qv.FactoryCannotBeResolvedException=qv.SchematicMissingFactoryException=qv.InvalidCollectionJsonException=qv.CollectionCannotBeResolvedException=void 0;var H4=O2(),Fnl=XDt(),Ues=Et("fs"),Yxe=Et("path"),t6e=tE(),Kes=Hxe(),jes=sHr(),oHr=class extends H4.BaseException{constructor(t){super(`Collection ${JSON.stringify(t)} cannot be resolved.`)}};qv.CollectionCannotBeResolvedException=oHr;var r6e=class extends H4.BaseException{constructor(t,r,n){let a=`Collection JSON at path ${JSON.stringify(r)} is invalid.`;n&&(a=`${a} ${n.message}`),super(a)}};qv.InvalidCollectionJsonException=r6e;var akt=class extends H4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} is missing a factory.`)}};qv.SchematicMissingFactoryException=akt;var ckt=class extends H4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} cannot resolve the factory.`)}};qv.FactoryCannotBeResolvedException=ckt;var aHr=class extends H4.BaseException{constructor(t){super(`Collection "${t}" does not have a schematics map.`)}};qv.CollectionMissingSchematicsMapException=aHr;var cHr=class extends H4.BaseException{constructor(t){super(`Collection "${t}" is missing fields.`)}};qv.CollectionMissingFieldsException=cHr;var lHr=class extends H4.BaseException{constructor(t){super(`Schematic "${t}" is missing fields.`)}};qv.SchematicMissingFieldsException=lHr;var uHr=class extends H4.BaseException{constructor(t){super(`Schematics "${t}" does not have a description.`)}};qv.SchematicMissingDescriptionException=uHr;var lkt=class extends H4.BaseException{constructor(t){super(`Schematics/alias ${JSON.stringify(t)} collides with another alias or schematic name.`)}};qv.SchematicNameCollisionException=lkt;var gHr=class{_transforms=[];_contextTransforms=[];_taskFactories=new Map;listSchematicNames(t,r){let n=[];for(let a of Object.keys(t.schematics)){let o=t.schematics[a];o.hidden&&!r||o.private||(!o.extends||o.factory||o.extends&&o.extends.indexOf(":")!==-1)&&n.push(a)}return n}registerOptionsTransform(t){this._transforms.push(t)}registerContextTransform(t){this._contextTransforms.push(t)}createCollectionDescription(t,r){let n=this._resolveCollectionPath(t,r?.path),a=(0,jes.readJsonFile)(n);if(!a||typeof a!="object"||Array.isArray(a))throw new r6e(t,n);typeof a.extends=="string"&&(a.extends=[a.extends]);let o=this._transformCollectionDescription(t,{...a,path:n});if(!o||!o.name)throw new r6e(t,n);let l=Object.keys(o.schematics);for(let A of Object.keys(o.schematics)){let f=o.schematics[A].aliases||[];for(let I of f)if(l.indexOf(I)!=-1)throw new lkt(I);l.push(...f)}return o}createSchematicDescription(t,r){for(let C of Object.keys(r.schematics)){let b=r.schematics[C];if(b.aliases&&b.aliases.indexOf(t)!=-1){t=C;break}}if(!(t in r.schematics))return null;let n=(0,Yxe.dirname)(r.path),a=r.schematics[t];if(!a)return null;if(a.extends){let C=a.extends.indexOf(":"),b=C!==-1?a.extends.slice(0,C):null,E=C===-1?a.extends:a.extends.slice(C+1);if(b!==null){let N=this.createCollectionDescription(b);return this.createSchematicDescription(E,N)}else return this.createSchematicDescription(E,r)}if(!a.factory)throw new akt(t);let o=this._resolveReferenceString(a.factory,n,r);if(!o)throw new ckt(t);let l=a.schema,A;l&&((0,Yxe.isAbsolute)(l)||(l=(0,Yxe.join)(n,l)),A=(0,jes.readJsonFile)(l));let f=(0,Yxe.join)(n,a.factory),I=(0,Ues.existsSync)(f)&&(0,Ues.statSync)(f).isDirectory()?f:(0,Yxe.dirname)(f);return this._transformSchematicDescription(t,r,{...a,schema:l,schemaJson:A,name:t,path:I,factoryFn:o.ref,collection:r})}createSourceFromUrl(t){switch(t.protocol){case null:case"file:":return r=>{let n=r.schematic.description;if(n.path===void 0)throw new Error("Unsupported schematic context. Expected a FileSystemSchematicContext.");let a=(0,H4.normalize)((0,Yxe.resolve)(n.path,t.path||""));return new Kes.HostCreateTree(new H4.virtualFs.ScopedHost(new Fnl.NodeJsSyncHost,a))}}return null}transformOptions(t,r,n){let a=async()=>{let o=r;for(let l of this._transforms){let A=l(t,o,n);o=await((0,t6e.isObservable)(A)?(0,t6e.lastValueFrom)(A):A)}return o};return(0,t6e.from)(a())}transformContext(t){return this._contextTransforms.reduce((r,n)=>n(r),t)}getSchematicRuleFactory(t,r){return t.factoryFn}registerTaskExecutor(t,r){this._taskFactories.set(t.name,()=>(0,t6e.from)(t.create(r)))}createTaskExecutor(t){let r=this._taskFactories.get(t);return r?r():(0,t6e.throwError)(new Kes.UnregisteredTaskException(t))}hasTaskExecutor(t){return this._taskFactories.has(t)}};qv.FileSystemEngineHostBase=gHr});var zes=H(gkt=>{"use strict";Object.defineProperty(gkt,"__esModule",{value:!0});gkt.NodePackageName=void 0;gkt.NodePackageName="node-package"});var qes=H(Akt=>{"use strict";Object.defineProperty(Akt,"__esModule",{value:!0});Akt.RepositoryInitializerName=void 0;Akt.RepositoryInitializerName="repo-init"});var $es=H(dkt=>{"use strict";Object.defineProperty(dkt,"__esModule",{value:!0});dkt.RunSchematicName=void 0;dkt.RunSchematicName="run-schematic"});var ets=H((U8u,Znl)=>{Znl.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var nts=H((K8u,rts)=>{"use strict";var pkt=Object.assign({},ets()),tts=Object.keys(pkt);Object.defineProperty(pkt,"random",{get(){let e=Math.floor(Math.random()*tts.length),t=tts[e];return pkt[t]}});rts.exports=pkt});var AHr=H((j8u,its)=>{"use strict";its.exports=()=>process.platform!=="win32"?!0:!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"});var ots=H((z8u,sts)=>{"use strict";var pue=zK(),Lnl=AHr(),Vnl={info:pue.blue("\u2139"),success:pue.green("\u2714"),warning:pue.yellow("\u26A0"),error:pue.red("\u2716")},Wnl={info:pue.blue("i"),success:pue.green("\u221A"),warning:pue.yellow("\u203C"),error:pue.red("\xD7")};sts.exports=Lnl()?Vnl:Wnl});var ats=H((q8u,fkt)=>{var Onl=function(){"use strict";function e(l,A,f,I){var C;typeof A=="object"&&(f=A.depth,I=A.prototype,C=A.filter,A=A.circular);var b=[],E=[],N=typeof Buffer<"u";typeof A>"u"&&(A=!0),typeof f>"u"&&(f=1/0);function B(F,Q){if(F===null)return null;if(Q==0)return F;var J,ae;if(typeof F!="object")return F;if(e.__isArray(F))J=[];else if(e.__isRegExp(F))J=new RegExp(F.source,o(F)),F.lastIndex&&(J.lastIndex=F.lastIndex);else if(e.__isDate(F))J=new Date(F.getTime());else{if(N&&Buffer.isBuffer(F))return Buffer.allocUnsafe?J=Buffer.allocUnsafe(F.length):J=new Buffer(F.length),F.copy(J),J;typeof I>"u"?(ae=Object.getPrototypeOf(F),J=Object.create(ae)):(J=Object.create(I),ae=I)}if(A){var ne=b.indexOf(F);if(ne!=-1)return E[ne];b.push(F),E.push(J)}for(var ce in F){var fe;ae&&(fe=Object.getOwnPropertyDescriptor(ae,ce)),!(fe&&fe.set==null)&&(J[ce]=B(F[ce],Q-1))}return J}return B(l,f)}e.clonePrototype=function(A){if(A===null)return null;var f=function(){};return f.prototype=A,new f};function t(l){return Object.prototype.toString.call(l)}e.__objToStr=t;function r(l){return typeof l=="object"&&t(l)==="[object Date]"}e.__isDate=r;function n(l){return typeof l=="object"&&t(l)==="[object Array]"}e.__isArray=n;function a(l){return typeof l=="object"&&t(l)==="[object RegExp]"}e.__isRegExp=a;function o(l){var A="";return l.global&&(A+="g"),l.ignoreCase&&(A+="i"),l.multiline&&(A+="m"),A}return e.__getRegExpFlags=o,e}();typeof fkt=="object"&&fkt.exports&&(fkt.exports=Onl)});var lts=H(($8u,cts)=>{var Pnl=ats();cts.exports=function(e,t){return e=e||{},Object.keys(t).forEach(function(r){typeof e[r]>"u"&&(e[r]=Pnl(t[r]))}),e}});var gts=H((e6u,uts)=>{uts.exports=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]]});var fts=H((t6u,dHr)=>{"use strict";var Mnl=lts(),n6e=gts(),dts={nul:0,control:0};dHr.exports=function(t){return pts(t,dts)};dHr.exports.config=function(e){return e=Mnl(e||{},dts),function(r){return pts(r,e)}};function pts(e,t){if(typeof e!="string")return Ats(e,t);for(var r=0,n=0;n=127&&e<160?t.control:Hnl(e)?0:1+(e>=4352&&(e<=4447||e==9001||e==9002||e>=11904&&e<=42191&&e!=12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))}function Hnl(e){var t=0,r=n6e.length-1,n;if(en6e[r][1])return!1;for(;r>=t;)if(n=Math.floor((t+r)/2),e>n6e[n][1])t=n+1;else if(e{"use strict";Its.exports=({stream:e=process.stdout}={})=>!!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))});var Cts=H((n6u,hHr)=>{"use strict";var Ynl=Et("readline"),Qnl=zK(),mts=kBe(),Ikt=nts(),hkt=ots(),Xnl=oM(),Jnl=fts(),Unl=hts(),Knl=AHr(),{BufferListStream:jnl}=Gwr(),pHr=Symbol("text"),fHr=Symbol("prefixText"),znl=3,IHr=class{constructor(){this.requests=0,this.mutedStream=new jnl,this.mutedStream.pipe(process.stdout);let t=this;this.ourEmit=function(r,n,...a){let{stdin:o}=process;if(t.requests>0||o.emit===t.ourEmit){if(r==="keypress")return;r==="data"&&n.includes(znl)&&process.emit("SIGINT"),Reflect.apply(t.oldEmit,this,[r,n,...a])}else Reflect.apply(process.stdin.emit,this,[r,n,...a])}}start(){this.requests++,this.requests===1&&this.realStart()}stop(){if(this.requests<=0)throw new Error("`stop` called more times than `start`");this.requests--,this.requests===0&&this.realStop()}realStart(){process.platform!=="win32"&&(this.rl=Ynl.createInterface({input:process.stdin,output:this.mutedStream}),this.rl.on("SIGINT",()=>{process.listenerCount("SIGINT")===0?process.emit("SIGINT"):(this.rl.close(),process.kill(process.pid,"SIGINT"))}))}realStop(){process.platform!=="win32"&&(this.rl.close(),this.rl=void 0)}},mkt,Ckt=class{constructor(t){mkt||(mkt=new IHr),typeof t=="string"&&(t={text:t}),this.options={text:"",color:"cyan",stream:process.stderr,discardStdin:!0,...t},this.spinner=this.options.spinner,this.color=this.options.color,this.hideCursor=this.options.hideCursor!==!1,this.interval=this.options.interval||this.spinner.interval||100,this.stream=this.options.stream,this.id=void 0,this.isEnabled=typeof this.options.isEnabled=="boolean"?this.options.isEnabled:Unl({stream:this.stream}),this.isSilent=typeof this.options.isSilent=="boolean"?this.options.isSilent:!1,this.text=this.options.text,this.prefixText=this.options.prefixText,this.linesToClear=0,this.indent=this.options.indent,this.discardStdin=this.options.discardStdin,this.isDiscardingStdin=!1}get indent(){return this._indent}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this._indent=t}_updateInterval(t){t!==void 0&&(this.interval=t)}get spinner(){return this._spinner}set spinner(t){if(this.frameIndex=0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this._spinner=t}else if(!Knl())this._spinner=Ikt.line;else if(t===void 0)this._spinner=Ikt.dots;else if(t!=="default"&&Ikt[t])this._spinner=Ikt[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);this._updateInterval(this._spinner.interval)}get text(){return this[pHr]}set text(t){this[pHr]=t,this.updateLineCount()}get prefixText(){return this[fHr]}set prefixText(t){this[fHr]=t,this.updateLineCount()}get isSpinning(){return this.id!==void 0}getFullPrefixText(t=this[fHr],r=" "){return typeof t=="string"?t+r:typeof t=="function"?t()+r:""}updateLineCount(){let t=this.stream.columns||80,r=this.getFullPrefixText(this.prefixText,"-");this.lineCount=0;for(let n of Xnl(r+"--"+this[pHr]).split(` -`))this.lineCount+=Math.max(1,Math.ceil(Jnl(n)/t))}get isEnabled(){return this._isEnabled&&!this.isSilent}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this._isEnabled=t}get isSilent(){return this._isSilent}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this._isSilent=t}frame(){let{frames:t}=this.spinner,r=t[this.frameIndex];this.color&&(r=Qnl[this.color](r)),this.frameIndex=++this.frameIndex%t.length;let n=typeof this.prefixText=="string"&&this.prefixText!==""?this.prefixText+" ":"",a=typeof this.text=="string"?" "+this.text:"";return n+r+a}clear(){if(!this.isEnabled||!this.stream.isTTY)return this;for(let t=0;t0&&this.stream.moveCursor(0,-1),this.stream.clearLine(),this.stream.cursorTo(this.indent);return this.linesToClear=0,this}render(){return this.isSilent?this:(this.clear(),this.stream.write(this.frame()),this.linesToClear=this.lineCount,this)}start(t){return t&&(this.text=t),this.isSilent?this:this.isEnabled?this.isSpinning?this:(this.hideCursor&&mts.hide(this.stream),this.discardStdin&&process.stdin.isTTY&&(this.isDiscardingStdin=!0,mkt.start()),this.render(),this.id=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.stream.write(`- ${this.text} -`),this)}stop(){return this.isEnabled?(clearInterval(this.id),this.id=void 0,this.frameIndex=0,this.clear(),this.hideCursor&&mts.show(this.stream),this.discardStdin&&process.stdin.isTTY&&this.isDiscardingStdin&&(mkt.stop(),this.isDiscardingStdin=!1),this):this}succeed(t){return this.stopAndPersist({symbol:hkt.success,text:t})}fail(t){return this.stopAndPersist({symbol:hkt.error,text:t})}warn(t){return this.stopAndPersist({symbol:hkt.warning,text:t})}info(t){return this.stopAndPersist({symbol:hkt.info,text:t})}stopAndPersist(t={}){if(this.isSilent)return this;let r=t.prefixText||this.prefixText,n=t.text||this.text,a=typeof n=="string"?" "+n:"";return this.stop(),this.stream.write(`${this.getFullPrefixText(r," ")}${t.symbol||" "}${a} -`),this}},qnl=function(e){return new Ckt(e)};hHr.exports=qnl;hHr.exports.promise=(e,t)=>{if(typeof e.then!="function")throw new TypeError("Parameter `action` must be a Promise");let r=new Ckt(t);return r.start(),(async()=>{try{await e,r.succeed()}catch{r.fail()}})(),r}});var yts=H(VP=>{"use strict";var $nl=VP&&VP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),eil=VP&&VP.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),til=VP&&VP.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let o=r,l=t;if(e.allowPackageManagerOverride&&a.packageManager){if(o=_ts[a.packageManager],!o)throw new i6e(a.packageManager);l=a.packageManager}let A=[],f={shell:!0,cwd:oil.join(n,a.workingDirectory||"")};a.hideOutput?f.stdio=a.quiet?["ignore","ignore","pipe"]:"pipe":f.stdio=a.quiet?["ignore","ignore","inherit"]:"inherit";let I=[];return a.packageName?(a.command==="install"&&I.push(o.commands.installPackage),I.push(a.packageName)):a.command==="install"&&o.commands.installAll&&I.push(o.commands.installAll),a.allowScripts||(l==="yarn"?f.env={...process.env,npm_config_ignore_scripts:"true",YARN_ENABLE_SCRIPTS:"false"}:I.push("--ignore-scripts")),e.registry&&I.push(`--registry="${e.registry}"`),e.force&&I.push("--force"),new ail.Observable(C=>{let b=(0,sil.default)({text:`Installing packages (${l})...`,discardStdin:process.platform!="win32"}).start(),E=(0,iil.spawn)(l,I,f).on("close",N=>{N===0?(b.succeed("Packages installed successfully."),b.stop(),C.next(),C.complete()):(a.hideOutput&&A.forEach(({stream:B,data:F})=>B.write(F)),b.fail("Package install failed, see above."),C.error(new cil.UnsuccessfulWorkflowExecution))});a.hideOutput&&(E.stdout?.on("data",N=>A.push({stream:process.stdout,data:N})),E.stderr?.on("data",N=>A.push({stream:process.stderr,data:N})))})}}});var bts=H(kte=>{"use strict";var uil=kte&&kte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),gil=kte&&kte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ail=kte&&kte.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=r.authorName,o=r.authorEmail,l=(I,C)=>{let b="ignore",E=C?"ignore":process.stderr,N={stdio:[process.stdin,b,E],shell:!0,cwd:fil.join(t,r.workingDirectory||""),env:{...process.env,...a?{GIT_AUTHOR_NAME:a,GIT_COMMITTER_NAME:a}:{},...o?{GIT_AUTHOR_EMAIL:o,GIT_COMMITTER_EMAIL:o}:{}}};return new Promise((B,F)=>{(0,pil.spawn)("git",I,N).on("close",Q=>{Q===0?B():F(Q)})})};if(!await l(["--version"]).then(()=>!0,()=>!1))return;if(await l(["rev-parse","--is-inside-work-tree"],!0).then(()=>!0,()=>!1)){n.logger.info(dil.tags.oneLine` +`}),this.intro&&(this.intro=t+this.intro.replace(/^[^\n]/gm,(n,a)=>a>0?t+n:n)),this}prepend(t){return this.intro=t+this.intro,this}toString(){let t=this.sources.map((r,n)=>{let a=r.separator!==void 0?r.separator:this.separator;return(n>0?a:"")+r.content.toString()}).join("");return this.intro+t}isEmpty(){return!(this.intro.length&&this.intro.trim()||this.sources.some(t=>!t.content.isEmpty()))}length(){return this.sources.reduce((t,r)=>t+r.content.length(),this.intro.length)}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimStart(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),!this.intro){let n,a=0;do if(n=this.sources[a++],!n)break;while(!n.content.trimStartAborted(t))}return this}trimEnd(t){let r=new RegExp((t||"\\s")+"+$"),n,a=this.sources.length-1;do if(n=this.sources[a--],!n){this.intro=this.intro.replace(r,"");break}while(!n.content.trimEndAborted(t));return this}};Dte.Bundle=NMr;Dte.SourceMap=J8e;Dte.default=Dte;ies.exports=Dte});var kMr=H(cue=>{"use strict";var enl=cue&&cue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cue,"__esModule",{value:!0});cue.UpdateRecorderBase=cue.IndexOutOfBoundException=void 0;var tnl=P2(),rnl=enl(ses()),nnl=H4(),bDt=class extends tnl.BaseException{constructor(t,r,n=1/0){super(`Index ${t} outside of range [${r}, ${n}].`)}};cue.IndexOutOfBoundException=bDt;var DMr=class e{data;bom;_path;content;constructor(t,r,n="utf-8",a=!1){this.data=t,this.bom=a;let o;try{o=new TextDecoder(n,{fatal:!0,ignoreBOM:!1}).decode(t)}catch(l){throw l instanceof TypeError?new Error(`Failed to decode "${r}" as ${n} text.`):l}this._path=r,this.content=new rnl.default(o)}static createFromFileEntry(t){let r=t.content.byteLength>0&&t.content.readUInt8(0),n=t.content.byteLength>1&&t.content.readUInt8(1),a=t.content.byteLength>2&&t.content.readUInt8(2);return r==239&&n==187&&a==191?new e(t.content,t.path,"utf-8",!0):r===255&&n==254?new e(t.content,t.path,"utf-16le",!0):r===254&&n==255?new e(t.content,t.path,"utf-16be",!0):new e(t.content,t.path)}get path(){return this._path}_assertIndex(t){if(t<0||t>this.content.original.length)throw new bDt(t,0,this.content.original.length)}insertLeft(t,r){return this._assertIndex(t),this.content.appendLeft(t,r.toString()),this}insertRight(t,r){return this._assertIndex(t),this.content.appendRight(t,r.toString()),this}remove(t,r){return this._assertIndex(t),this.content.remove(t,t+r),this}apply(t){if(!t.equals(this.data))throw new nnl.ContentHasMutatedException(this.path);return Buffer.from((this.bom?"\uFEFF":"")+this.content.toString(),"utf-8")}};cue.UpdateRecorderBase=DMr});var vDt=H(SDt=>{"use strict";Object.defineProperty(SDt,"__esModule",{value:!0});SDt.ScopedTree=void 0;var fw=P2(),inl=hDt(),snl=NH(),U8e=class{_base;scope;constructor(t,r){this._base=t,this.scope=r}get path(){return(0,fw.join)(fw.NormalizedRoot,(0,fw.relative)(this.scope,this._base.path))}get content(){return this._base.content}},EDt=class e{_base;scope;constructor(t,r){this._base=t,this.scope=r}get parent(){return!this._base.parent||this._base.path==this.scope?null:new e(this._base.parent,this.scope)}get path(){return(0,fw.join)(fw.NormalizedRoot,(0,fw.relative)(this.scope,this._base.path))}get subdirs(){return this._base.subdirs}get subfiles(){return this._base.subfiles}dir(t){let r=this._base.dir(t);return r&&new e(r,this.scope)}file(t){let r=this._base.file(t);return r&&new U8e(r,this.scope)}visit(t){return this._base.visit((r,n)=>{t((0,fw.join)(fw.NormalizedRoot,(0,fw.relative)(this.scope,r)),n&&new U8e(n,this.scope))})}},xMr=class e{_base;_root;constructor(t,r){this._base=t;let n=(0,fw.normalize)("/"+r);this._root=new EDt(this._base.getDir(n),n)}get root(){return this._root}branch(){return new e(this._base.branch(),this._root.scope)}merge(t,r){let n=this,a=new class extends inl.DelegateTree{get actions(){return t.actions.map(o=>n._fullPathAction(o))}}(t);this._base.merge(a,r)}read(t){return this._base.read(this._fullPath(t))}readText(t){return this._base.readText(this._fullPath(t))}readJson(t){return this._base.readJson(this._fullPath(t))}exists(t){return this._base.exists(this._fullPath(t))}get(t){let r=this._base.get(this._fullPath(t));return r&&new U8e(r,this._root.scope)}getDir(t){let r=this._base.getDir(this._fullPath(t));return r&&new EDt(r,this._root.scope)}visit(t){return this._root.visit(t)}overwrite(t,r){return this._base.overwrite(this._fullPath(t),r)}beginUpdate(t){return this._base.beginUpdate(this._fullPath(t))}commitUpdate(t){return this._base.commitUpdate(t)}create(t,r){return this._base.create(this._fullPath(t),r)}delete(t){return this._base.delete(this._fullPath(t))}rename(t,r){return this._base.rename(this._fullPath(t),this._fullPath(r))}apply(t,r){return this._base.apply(this._fullPathAction(t),r)}get actions(){let t=[];for(let r of this._base.actions)r.path.startsWith(this._root.scope+"/")&&(r.kind!=="r"?t.push({...r,path:(0,fw.join)(fw.NormalizedRoot,(0,fw.relative)(this._root.scope,r.path))}):r.to.startsWith(this._root.scope+"/")&&t.push({...r,path:(0,fw.join)(fw.NormalizedRoot,(0,fw.relative)(this._root.scope,r.path)),to:(0,fw.join)(fw.NormalizedRoot,(0,fw.relative)(this._root.scope,r.to))}));return t}[snl.TreeSymbol](){return this}_fullPath(t){return(0,fw.join)(this._root.scope,(0,fw.normalize)("/"+t))}_fullPathAction(t){let r;return t.kind==="r"?r={...t,path:this._fullPath(t.path),to:this._fullPath(t.to)}:r={...t,path:this._fullPath(t.path)},r}};SDt.ScopedTree=xMr});var L_e=H(dj=>{"use strict";Object.defineProperty(dj,"__esModule",{value:!0});dj.FilterHostTree=dj.HostCreateTree=dj.HostTree=dj.HostDirEntry=void 0;var dL=P2(),oes=xxe(),WP=H4(),onl=hDt(),anl=q$i(),Aj=NH(),aes=kMr(),cnl=vDt(),lnl=0,BDt=class{parent;path;_host;_tree;constructor(t,r,n,a){this.parent=t,this.path=r,this._host=n,this._tree=a}get subdirs(){return this._host.list(this.path).filter(t=>this._host.isDirectory((0,dL.join)(this.path,t)))}get subfiles(){return this._host.list(this.path).filter(t=>this._host.isFile((0,dL.join)(this.path,t)))}dir(t){return this._tree.getDir((0,dL.join)(this.path,t))}file(t){return this._tree.get((0,dL.join)(this.path,t))}visit(t){try{this.getSubfilesRecursively().forEach(r=>t(r.path,r))}catch(r){if(r!==Aj.FileVisitorCancelToken)throw r}}getSubfilesRecursively(){function t(r){return r.subdirs.reduce((n,a)=>[...n,...t(r.dir(a))],r.subfiles.map(n=>r.file(n)))}return t(this)}};dj.HostDirEntry=BDt;var Lxe=class e{_backend;_id=--lnl;_record;_recordSync;_ancestry=new Set;_dirCache=new Map;[Aj.TreeSymbol](){return this}static isHostTree(t){return t instanceof e||typeof t=="object"&&typeof t._ancestry=="object"}constructor(t=new dL.virtualFs.Empty){this._backend=t,this._record=new dL.virtualFs.CordHost(new dL.virtualFs.SafeReadonlyHost(t)),this._recordSync=new dL.virtualFs.SyncDelegateHost(this._record)}_normalizePath(t){return(0,dL.normalize)("/"+t)}_willCreate(t){return this._record.willCreate(t)}_willOverwrite(t){return this._record.willOverwrite(t)}_willDelete(t){return this._record.willDelete(t)}_willRename(t){return this._record.willRename(t)}branch(){let t=new e(this._backend);return t._record=this._record.clone(),t._recordSync=new dL.virtualFs.SyncDelegateHost(t._record),t._ancestry=new Set(this._ancestry).add(this._id),t}isAncestorOf(t){return t instanceof e?t._ancestry.has(this._id):t instanceof onl.DelegateTree?this.isAncestorOf(t._other):t instanceof cnl.ScopedTree?this.isAncestorOf(t._base):!1}merge(t,r=Aj.MergeStrategy.Default){if(t===this)return;this.isAncestorOf(t)&&(r|=Aj.MergeStrategy.Overwrite);let n=(r&Aj.MergeStrategy.AllowCreationConflict)==Aj.MergeStrategy.AllowCreationConflict,a=(r&Aj.MergeStrategy.AllowOverwriteConflict)==Aj.MergeStrategy.AllowOverwriteConflict,o=(r&Aj.MergeStrategy.AllowDeleteConflict)==Aj.MergeStrategy.AllowDeleteConflict;t.actions.forEach(l=>{switch(l.kind){case"c":{let{path:A,content:f}=l;if(this._willCreate(A)||this._willOverwrite(A)||this.exists(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!n)throw new WP.MergeConflictException(A);this._record.overwrite(A,f).subscribe()}else this._record.create(A,f).subscribe();return}case"o":{let{path:A,content:f}=l;if(this._willDelete(A)&&!a)throw new WP.MergeConflictException(A);if(this._willOverwrite(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!a)throw new WP.MergeConflictException(A)}this._record.write(A,f).subscribe();return}case"r":{let{path:A,to:f}=l;if(this._willDelete(A))throw new WP.MergeConflictException(A);if(this._willRename(A)){if(this._record.willRenameTo(A,f))return;throw new WP.MergeConflictException(A)}this.rename(A,f);return}case"d":{let{path:A}=l;if(this._willDelete(A))return;if(!this.exists(A)&&!o)throw new WP.MergeConflictException(A);this._recordSync.delete(A);return}}})}get root(){return this.getDir("/")}read(t){let r=this.get(t);return r?r.content:null}readText(t){let r=this.read(t);if(r===null)throw new WP.FileDoesNotExistException(t);let n=new TextDecoder("utf-8",{fatal:!0});try{return n.decode(r)}catch(a){throw a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA"?new Error(`Failed to decode "${t}" as UTF-8 text.`):a}}readJson(t){let r=this.readText(t),n=[],a=(0,oes.parse)(r,n,{allowTrailingComma:!0});if(n[0]){let{error:o,offset:l}=n[0];throw new Error(`Failed to parse "${t}" as JSON. ${(0,oes.printParseErrorCode)(o)} at offset: ${l}.`)}return a}exists(t){return this._recordSync.isFile(this._normalizePath(t))}get(t){let r=this._normalizePath(t);if(this._recordSync.isDirectory(r))throw new dL.PathIsDirectoryException(r);return this._recordSync.exists(r)?new anl.LazyFileEntry(r,()=>Buffer.from(this._recordSync.read(r))):null}getDir(t){let r=this._normalizePath(t);if(this._recordSync.isFile(r))throw new dL.PathIsFileException(r);let n=this._dirCache.get(r);if(!n){let a=(0,dL.dirname)(r);r===a&&(a=null),n=new BDt(a&&this.getDir(a),r,this._recordSync,this),this._dirCache.set(r,n)}return n}visit(t){this.root.visit((r,n)=>{t(r,n)})}overwrite(t,r){let n=this._normalizePath(t);if(!this._recordSync.exists(n))throw new WP.FileDoesNotExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.overwrite(n,a).subscribe()}beginUpdate(t){let r=this.get(t);if(!r)throw new WP.FileDoesNotExistException(t);return aes.UpdateRecorderBase.createFromFileEntry(r)}commitUpdate(t){if(t instanceof aes.UpdateRecorderBase){let r=t.path,n=this.get(r);if(n){let a=t.apply(n.content);a.equals(n.content)||this.overwrite(r,a)}else throw new WP.ContentHasMutatedException(r)}else throw new WP.InvalidUpdateRecordException}create(t,r){let n=this._normalizePath(t);if(this._recordSync.exists(n))throw new WP.FileAlreadyExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.create(n,a).subscribe()}delete(t){this._recordSync.delete(this._normalizePath(t))}rename(t,r){this._recordSync.rename(this._normalizePath(t),this._normalizePath(r))}apply(t,r){throw new WP.SchematicsException("Apply not implemented on host trees.")}*generateActions(){for(let t of this._record.records())switch(t.kind){case"create":yield{id:this._id,parent:0,kind:"c",path:t.path,content:Buffer.from(t.content)};break;case"overwrite":yield{id:this._id,parent:0,kind:"o",path:t.path,content:Buffer.from(t.content)};break;case"rename":yield{id:this._id,parent:0,kind:"r",path:t.from,to:t.to};break;case"delete":yield{id:this._id,parent:0,kind:"d",path:t.path};break}}get actions(){return Array.from(this.generateActions())}};dj.HostTree=Lxe;var GMr=class extends Lxe{constructor(t){super();let r=new Lxe(t);r.visit(n=>{let a=r.read(n);a&&this.create(n,a)})}};dj.HostCreateTree=GMr;var FMr=class extends Lxe{constructor(t,r=()=>!0){let n=new dL.virtualFs.SimpleMemoryHost,a=t._backend,o=["/"];for(;o.length>0;){let l=o.pop();if(l===void 0)break;let A=!1;if(a.isDirectory(l).subscribe(C=>A=C),A){a.list(l).subscribe(C=>o.push(...C.map(b=>(0,dL.join)(l,b))));continue}let f=!1;if(a.isFile(l).subscribe(C=>f=C),!f||!r(l))continue;let I=null;a.read(l).subscribe(C=>I=C),I!==null&&n.write(l,I).subscribe()}super(n);for(let l of t.actions)if(r(l.path))switch(l.kind){case"c":this.create(l.path,l.content);break;case"d":this.delete(l.path);break;case"o":this.overwrite(l.path,l.content);break;case"r":this.rename(l.path,l.to);break}}};dj.FilterHostTree=FMr});var K8e=H(Vxe=>{"use strict";Object.defineProperty(Vxe,"__esModule",{value:!0});Vxe.empty=Anl;Vxe.branch=dnl;Vxe.merge=pnl;Vxe.partition=fnl;var unl=H4(),wDt=L_e(),gnl=NH();function Anl(){return new wDt.HostTree}function dnl(e){return e.branch()}function pnl(e,t,r=gnl.MergeStrategy.Default){return e.merge(t,r),e}function fnl(e,t){if(e instanceof wDt.HostTree)return[new wDt.FilterHostTree(e,t),new wDt.FilterHostTree(e,(r,n)=>!t(r,n))];throw new unl.SchematicsException("Tree type is not supported.")}});var ces=H(uue=>{"use strict";Object.defineProperty(uue,"__esModule",{value:!0});uue.NullTree=uue.NullTreeDirEntry=uue.CannotCreateFileException=void 0;var j8e=P2(),lue=H4(),Inl=NH(),hnl=kMr(),TDt=class extends j8e.BaseException{constructor(t){super(`Cannot create file "${t}".`)}};uue.CannotCreateFileException=TDt;var z8e=class e{path;get parent(){return this.path=="/"?null:new e((0,j8e.dirname)(this.path))}constructor(t){this.path=t}subdirs=[];subfiles=[];dir(t){return new e((0,j8e.join)(this.path,t))}file(t){return null}visit(){}};uue.NullTreeDirEntry=z8e;var ZMr=class e{[Inl.TreeSymbol](){return this}branch(){return new e}merge(t,r){}root=new z8e((0,j8e.normalize)("/"));exists(t){return!1}read(t){return null}readText(t){throw new lue.FileDoesNotExistException(t)}readJson(t){throw new lue.FileDoesNotExistException(t)}get(t){return null}getDir(t){return new z8e((0,j8e.normalize)("/"+t))}visit(){}beginUpdate(t){throw new lue.FileDoesNotExistException(t)}commitUpdate(t){throw new lue.FileDoesNotExistException(t instanceof hnl.UpdateRecorderBase?t.path:"")}copy(t,r){throw new lue.FileDoesNotExistException(t)}delete(t){throw new lue.FileDoesNotExistException(t)}create(t,r){throw new TDt(t)}rename(t,r){throw new lue.FileDoesNotExistException(t)}overwrite(t,r){throw new lue.FileDoesNotExistException(t)}apply(t,r){}get actions(){return[]}};uue.NullTree=ZMr});var DDt=H(gue=>{"use strict";Object.defineProperty(gue,"__esModule",{value:!0});gue.InvalidSourceResultException=gue.InvalidRuleResultException=void 0;gue.callSource=mnl;gue.callRule=Cnl;var ues=P2(),pj=rE(),ges=NH();function Aes(e){return e===void 0?"undefined":e===null?"null":typeof e=="function"?"Function()":typeof e!="object"?`${typeof e}(${JSON.stringify(e)})`:Object.getPrototypeOf(e)==Object?`Object(${JSON.stringify(e)})`:e.constructor?`Instance of class ${e.constructor.name}`:"Unknown Object"}var RDt=class extends ues.BaseException{constructor(t){super(`Invalid rule result: ${Aes(t)}.`)}};gue.InvalidRuleResultException=RDt;var NDt=class extends ues.BaseException{constructor(t){super(`Invalid source result: ${Aes(t)}.`)}};gue.InvalidSourceResultException=NDt;function mnl(e,t){return(0,pj.defer)(async()=>{let r=e(t);if((0,pj.isObservable)(r)&&(r=await(0,pj.lastValueFrom)(r.pipe((0,pj.defaultIfEmpty)(void 0)))),r&&ges.TreeSymbol in r)return r;throw new NDt(r)})}function Cnl(e,t,r){return(0,pj.isObservable)(t)?t.pipe((0,pj.mergeMap)(n=>les(e,n,r))):(0,pj.defer)(()=>les(e,t,r))}async function les(e,t,r){let n=await e(t,r);for(;typeof n=="function";)n=await n(t,r);if(typeof n>"u")return t;if((0,pj.isObservable)(n)&&(n=await(0,pj.lastValueFrom)(n.pipe((0,pj.defaultIfEmpty)(t)))),n&&ges.TreeSymbol in n)return n;throw new RDt(n)}});var xDt=H(Wxe=>{"use strict";Object.defineProperty(Wxe,"__esModule",{value:!0});Wxe.SchematicImpl=Wxe.InvalidSchematicsNameException=void 0;var _nl=P2(),q8e=rE(),ynl=DDt(),bnl=vDt(),kDt=class extends _nl.BaseException{constructor(t){super(`Schematics has invalid name: "${t}".`)}};Wxe.InvalidSchematicsNameException=kDt;var LMr=class{_description;_factory;_collection;_engine;constructor(t,r,n,a){if(this._description=t,this._factory=r,this._collection=n,this._engine=a,!t.name.match(/^[-@/_.a-zA-Z0-9]+$/))throw new kDt(t.name)}get description(){return this._description}get collection(){return this._collection}call(t,r,n,a){let o=this._engine.createContext(this,n,a);return r.pipe((0,q8e.first)(),(0,q8e.concatMap)(l=>this._engine.transformOptions(this,t,o).pipe((0,q8e.map)(A=>[l,A]))),(0,q8e.concatMap)(([l,A])=>{let f,I=!1;return a&&a.scope?(I=!0,f=new bnl.ScopedTree(l,a.scope)):f=l,(0,ynl.callRule)(this._factory(A),f,o).pipe((0,q8e.map)(C=>C===f?l:I?(l.merge(C),l):C))}))}};Wxe.SchematicImpl=LMr});var des=H(M2=>{"use strict";Object.defineProperty(M2,"__esModule",{value:!0});M2.SchematicEngine=M2.TaskScheduler=M2.CollectionImpl=M2.UnknownTaskDependencyException=M2.UnregisteredTaskException=M2.SchematicEngineConflictingException=M2.PrivateSchematicException=M2.UnknownSchematicException=M2.CircularCollectionException=M2.UnknownCollectionException=M2.UnknownUrlSourceProtocol=void 0;var fj=P2(),GDt=rE(),Enl=NH(),Snl=ces(),vnl=K8e(),Bnl=xDt(),FDt=class extends fj.BaseException{constructor(t){super(`Unknown Protocol on url "${t}".`)}};M2.UnknownUrlSourceProtocol=FDt;var ZDt=class extends fj.BaseException{constructor(t){super(`Unknown collection "${t}".`)}};M2.UnknownCollectionException=ZDt;var LDt=class extends fj.BaseException{constructor(t){super(`Circular collection reference "${t}".`)}};M2.CircularCollectionException=LDt;var VDt=class extends fj.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};M2.UnknownSchematicException=VDt;var WDt=class extends fj.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};M2.PrivateSchematicException=WDt;var ODt=class extends fj.BaseException{constructor(){super("A schematic was called from a different engine as its parent.")}};M2.SchematicEngineConflictingException=ODt;var PDt=class extends fj.BaseException{constructor(t,r){let n=r?` in schematic "${r.name}"`:"";super(`Unregistered task "${t}"${n}.`)}};M2.UnregisteredTaskException=PDt;var MDt=class extends fj.BaseException{constructor(t){super(`Unknown task dependency [ID: ${t.id}].`)}};M2.UnknownTaskDependencyException=MDt;var HDt=class{_description;_engine;baseDescriptions;constructor(t,r,n){this._description=t,this._engine=r,this.baseDescriptions=n}get description(){return this._description}get name(){return this.description.name||""}createSchematic(t,r=!1){return this._engine.createSchematic(t,this,r)}listSchematicNames(t){return this._engine.listSchematicNames(this,t)}};M2.CollectionImpl=HDt;var YDt=class e{_context;_queue=new fj.PriorityQueue((t,r)=>t.priority-r.priority);_taskIds=new Map;static _taskIdCounter=1;constructor(t){this._context=t}_calculatePriority(t){return t.size===0?0:[...t].reduce((n,a)=>n+a.priority,1)}_mapDependencies(t){if(!t)return new Set;let r=t.map(n=>{let a=this._taskIds.get(n);if(!a)throw new MDt(n);return a});return new Set(r)}schedule(t){let r=this._mapDependencies(t.dependencies),n=this._calculatePriority(r),a={id:e._taskIdCounter++,priority:n,configuration:t,context:this._context};this._queue.push(a);let o={id:a.id};return this._taskIds.set(o,a),o}finalize(){let t=this._queue.toArray();return this._queue.clear(),this._taskIds.clear(),t}};M2.TaskScheduler=YDt;var VMr=class{_host;_workflow;_collectionCache=new Map;_schematicCache=new WeakMap;_taskSchedulers=new Array;constructor(t,r){this._host=t,this._workflow=r}get workflow(){return this._workflow||null}get defaultMergeStrategy(){return this._host.defaultMergeStrategy||Enl.MergeStrategy.Default}createCollection(t,r){let n=this._collectionCache.get(t);if(n)return n;let[a,o]=this._createCollectionDescription(t,r?.description);return n=new HDt(a,this,o),this._collectionCache.set(t,n),this._schematicCache.set(n,new Map),n}_createCollectionDescription(t,r,n){let a=this._host.createCollectionDescription(t,r);if(!a)throw new ZDt(t);if(n&&n.has(a.name))throw new LDt(t);let o=new Array;if(a.extends){n=(n||new Set).add(a.name);for(let l of a.extends){let[A,f]=this._createCollectionDescription(l,a,new Set(n));o.unshift(A,...f)}}return[a,o]}createContext(t,r,n){if(r&&r.engine&&r.engine!==this)throw new ODt;let a=!0;n&&n.interactive!=null?a=n.interactive:r&&r.interactive!=null&&(a=r.interactive);let o={debug:r&&r.debug||!1,engine:this,logger:r&&r.logger&&r.logger.createChild(t.description.name)||new fj.logging.NullLogger,schematic:t,strategy:r&&r.strategy!==void 0?r.strategy:this.defaultMergeStrategy,interactive:a,addTask:I},l=this._host.transformContext(o);l&&(o=l);let A=new YDt(o),f=this._host;this._taskSchedulers.push(A);function I(C,b){let E=C.toConfiguration();if(!f.hasTaskExecutor(E.name))throw new PDt(E.name,t.description);return E.dependencies=E.dependencies||[],b&&E.dependencies.unshift(...b),A.schedule(E)}return o}createSchematic(t,r,n=!1){let a=this._schematicCache.get(r),o=a?.get(t);if(o)return o;let l=r.description,A=this._host.createSchematicDescription(t,r.description);if(!A){if(r.baseDescriptions){for(let I of r.baseDescriptions)if(A=this._host.createSchematicDescription(t,I),A){l=I;break}}if(!A)throw new VDt(t,r.description)}if(A.private&&!n)throw new WDt(t,r.description);let f=this._host.getSchematicRuleFactory(A,l);return o=new Bnl.SchematicImpl(A,f,r,this),a?.set(t,o),o}listSchematicNames(t,r){let n=this._host.listSchematicNames(t.description,r);if(t.baseDescriptions)for(let a of t.baseDescriptions)n.push(...this._host.listSchematicNames(a,r));return[...new Set(n)].sort()}transformOptions(t,r,n){return this._host.transformOptions(t.description,r,n)}createSourceFromUrl(t,r){switch(t.protocol){case"null:":return()=>new Snl.NullTree;case"empty:":return()=>(0,vnl.empty)()}let n=this._host.createSourceFromUrl(t,r);if(!n)throw new FDt(t.toString());return n}executePostTasks(){let t=new Map;return(0,GDt.from)(this._taskSchedulers).pipe((0,GDt.concatMap)(n=>n.finalize()),(0,GDt.concatMap)(n=>{let{name:a,options:o}=n.configuration,l=t.get(a);return l?l(o,n.context):this._host.createTaskExecutor(a).pipe((0,GDt.concatMap)(A=>(t.set(a,A),A(o,n.context))))}))}};M2.SchematicEngine=VMr});var fes=H(pes=>{"use strict";Object.defineProperty(pes,"__esModule",{value:!0})});var OMr=H(kte=>{"use strict";var wnl=kte&&kte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),WMr=kte&&kte.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&wnl(t,e,r)};Object.defineProperty(kte,"__esModule",{value:!0});WMr(des(),kte);WMr(fes(),kte);WMr(xDt(),kte)});var Ies=H(PMr=>{"use strict";Object.defineProperty(PMr,"__esModule",{value:!0});PMr.createConsoleLogger=Nnl;var Tnl=rE(),Rnl=P2();function Nnl(e=!1,t=process.stdout,r=process.stderr,n){let a=new Rnl.logging.IndentLogger("cling");return a.pipe((0,Tnl.filter)(o=>o.level!=="debug"||e)).subscribe(o=>{let l=n&&n[o.level],A=t;switch(o.level){case"warn":case"fatal":case"error":A=r;break}let f=2e3,I=o.message;for(;I;){let C=I.slice(0,f);I=I.slice(f),A.write(l?l(C):C)}A.write(` +`)}),a}});var mes=H(Oxe=>{"use strict";Object.defineProperty(Oxe,"__esModule",{value:!0});Oxe.NodeJsSyncHost=Oxe.NodeJsAsyncHost=void 0;var SD=Et("node:fs"),Dnl=Et("node:path"),nE=rE(),cC=P2();async function knl(e){try{return await SD.promises.access(e,SD.constants.F_OK),!0}catch{return!1}}var QDt;function hes(){if(!QDt)try{QDt=Et("chokidar").FSWatcher}catch(e){throw e.code!=="MODULE_NOT_FOUND"?new Error('As of angular-devkit version 8.0, the "chokidar" package must be installed in order to use watch() features.'):e}}var MMr=class{get capabilities(){return{synchronous:!1}}write(t,r){return(0,nE.from)(SD.promises.mkdir((0,cC.getSystemPath)((0,cC.dirname)(t)),{recursive:!0})).pipe((0,nE.mergeMap)(()=>SD.promises.writeFile((0,cC.getSystemPath)(t),new Uint8Array(r))))}read(t){return(0,nE.from)(SD.promises.readFile((0,cC.getSystemPath)(t))).pipe((0,nE.map)(r=>new Uint8Array(r).buffer))}delete(t){return(0,nE.from)(SD.promises.rm((0,cC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}))}rename(t,r){return(0,nE.from)(SD.promises.rename((0,cC.getSystemPath)(t),(0,cC.getSystemPath)(r)))}list(t){return(0,nE.from)(SD.promises.readdir((0,cC.getSystemPath)(t))).pipe((0,nE.map)(r=>r.map(n=>(0,cC.fragment)(n))))}exists(t){return(0,nE.from)(knl((0,cC.getSystemPath)(t)))}isDirectory(t){return this.stat(t).pipe((0,nE.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,nE.map)(r=>r.isFile()))}stat(t){return(0,nE.from)(SD.promises.stat((0,cC.getSystemPath)(t)))}watch(t,r){return new nE.Observable(n=>{hes();let a=new QDt({persistent:!0});return a.add((0,cC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,nE.publish)(),(0,nE.refCount)())}};Oxe.NodeJsAsyncHost=MMr;var HMr=class{get capabilities(){return{synchronous:!0}}write(t,r){return new nE.Observable(n=>{(0,SD.mkdirSync)((0,cC.getSystemPath)((0,cC.dirname)(t)),{recursive:!0}),(0,SD.writeFileSync)((0,cC.getSystemPath)(t),new Uint8Array(r)),n.next(),n.complete()})}read(t){return new nE.Observable(r=>{let n=(0,SD.readFileSync)((0,cC.getSystemPath)(t));r.next(new Uint8Array(n).buffer),r.complete()})}delete(t){return new nE.Observable(r=>{(0,SD.rmSync)((0,cC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}),r.complete()})}rename(t,r){return new nE.Observable(n=>{let a=(0,cC.getSystemPath)(r);(0,SD.mkdirSync)((0,Dnl.dirname)(a),{recursive:!0}),(0,SD.renameSync)((0,cC.getSystemPath)(t),a),n.next(),n.complete()})}list(t){return new nE.Observable(r=>{let n=(0,SD.readdirSync)((0,cC.getSystemPath)(t));r.next(n.map(a=>(0,cC.fragment)(a))),r.complete()})}exists(t){return new nE.Observable(r=>{r.next((0,SD.existsSync)((0,cC.getSystemPath)(t))),r.complete()})}isDirectory(t){return this.stat(t).pipe((0,nE.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,nE.map)(r=>r.isFile()))}stat(t){return new nE.Observable(r=>{r.next((0,SD.statSync)((0,cC.getSystemPath)(t))),r.complete()})}watch(t,r){return new nE.Observable(n=>{hes();let a=new QDt({persistent:!1});return a.add((0,cC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,cC.normalize)(o),time:new Date,type:cC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,nE.publish)(),(0,nE.refCount)())}};Oxe.NodeJsSyncHost=HMr});var XDt=H(Aue=>{"use strict";var xnl=Aue&&Aue.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Ces=Aue&&Aue.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&xnl(t,e,r)};Object.defineProperty(Aue,"__esModule",{value:!0});Ces(Ies(),Aue);Ces(mes(),Aue)});var XMr=H(V_e=>{"use strict";Object.defineProperty(V_e,"__esModule",{value:!0});V_e.ActionList=V_e.UnknownActionException=void 0;V_e.isContentAction=Znl;var Gnl=P2(),YMr=class extends Gnl.BaseException{constructor(t){super(`Unknown action: "${t.kind}".`)}};V_e.UnknownActionException=YMr;var Fnl=1,QMr=class{_actions=[];_action(t){this._actions.push({...t,id:Fnl++,parent:this._actions[this._actions.length-1]?.id??0})}create(t,r){this._action({kind:"c",path:t,content:r})}overwrite(t,r){this._action({kind:"o",path:t,content:r})}rename(t,r){this._action({kind:"r",path:t,to:r})}delete(t){this._action({kind:"d",path:t})}optimize(){let t=new Map,r=new Map,n=new Map,a=new Set;for(let o of this._actions)switch(o.kind){case"c":t.set(o.path,o.content);break;case"o":t.has(o.path)?t.set(o.path,o.content):n.set(o.path,o.content);break;case"d":a.add(o.path);break;case"r":{let l=t.get(o.path),A=n.get(o.path);l&&(t.delete(o.path),t.set(o.to,l)),A&&(n.delete(o.path),n.set(o.to,A));let f;for(let[I,C]of r.entries())if(C==o.path){f=I;break}f&&r.set(f,o.to),!l&&!A&&!f&&r.set(o.path,o.to);break}}this._actions=[],a.forEach(o=>{this.delete(o)}),r.forEach((o,l)=>{this.rename(l,o)}),t.forEach((o,l)=>{this.create(l,o)}),n.forEach((o,l)=>{this.overwrite(l,o)})}push(t){this._actions.push(t)}get(t){return this._actions[t]}has(t){for(let r=0;rt.id)return!1}return!1}find(t){return this._actions.find(t)||null}forEach(t,r){this._actions.forEach(t,r)}get length(){return this._actions.length}[Symbol.iterator](){return this._actions[Symbol.iterator]()}};V_e.ActionList=QMr;function Znl(e){return e.kind=="c"||e.kind=="o"}});var UMr=H(UDt=>{"use strict";Object.defineProperty(UDt,"__esModule",{value:!0});UDt.SimpleSinkBase=void 0;var iE=rE(),_es=H4(),Lnl=XMr(),JDt=function(){},JMr=class{preCommitAction=JDt;postCommitAction=JDt;preCommit=JDt;postCommit=JDt;_fileAlreadyExistException(t){throw new _es.FileAlreadyExistException(t)}_fileDoesNotExistException(t){throw new _es.FileDoesNotExistException(t)}_validateOverwriteAction(t){return this._validateFileExists(t.path).pipe((0,iE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}_validateCreateAction(t){return this._validateFileExists(t.path).pipe((0,iE.map)(r=>{r&&this._fileAlreadyExistException(t.path)}))}_validateRenameAction(t){return this._validateFileExists(t.path).pipe((0,iE.map)(r=>{r||this._fileDoesNotExistException(t.path)}),(0,iE.mergeMap)(()=>this._validateFileExists(t.to)),(0,iE.map)(r=>{r&&this._fileAlreadyExistException(t.to)}))}_validateDeleteAction(t){return this._validateFileExists(t.path).pipe((0,iE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}validateSingleAction(t){switch(t.kind){case"o":return this._validateOverwriteAction(t);case"c":return this._validateCreateAction(t);case"r":return this._validateRenameAction(t);case"d":return this._validateDeleteAction(t);default:throw new Lnl.UnknownActionException(t)}}commitSingleAction(t){return(0,iE.concat)(this.validateSingleAction(t),new iE.Observable(r=>{let n=null;switch(t.kind){case"o":n=this._overwriteFile(t.path,t.content);break;case"c":n=this._createFile(t.path,t.content);break;case"r":n=this._renameFile(t.path,t.to);break;case"d":n=this._deleteFile(t.path);break}n?n.subscribe(r):r.complete()})).pipe((0,iE.ignoreElements)())}commit(t){let r=(0,iE.from)(t.actions);return(0,iE.concat)(this.preCommit()||(0,iE.of)(null),(0,iE.defer)(()=>r).pipe((0,iE.concatMap)(n=>{let a=this.preCommitAction(n);return(0,iE.isObservable)(a)||Vnl(a)?a:(0,iE.of)(a||n)}),(0,iE.concatMap)(n=>(0,iE.concat)(this.commitSingleAction(n).pipe((0,iE.ignoreElements)()),(0,iE.of)(n))),(0,iE.concatMap)(n=>this.postCommitAction(n)||(0,iE.of)(null))),(0,iE.defer)(()=>this._done()),(0,iE.defer)(()=>this.postCommit()||(0,iE.of)(null))).pipe((0,iE.ignoreElements)(),(0,iE.defaultIfEmpty)(void 0))}};UDt.SimpleSinkBase=JMr;function Vnl(e){return!!e&&typeof e.then=="function"}});var jDt=H(KDt=>{"use strict";Object.defineProperty(KDt,"__esModule",{value:!0});KDt.HostSink=void 0;var MR=rE(),Wnl=UMr(),KMr=class extends Wnl.SimpleSinkBase{_host;_force;_filesToDelete=new Set;_filesToRename=new Set;_filesToCreate=new Map;_filesToUpdate=new Map;constructor(t,r=!1){super(),this._host=t,this._force=r}_validateCreateAction(t){return this._force?MR.EMPTY:super._validateCreateAction(t)}_validateFileExists(t){if(this._filesToCreate.has(t)||this._filesToUpdate.has(t))return(0,MR.of)(!0);if(this._filesToDelete.has(t))return(0,MR.of)(!1);for(let[r,n]of this._filesToRename.values())switch(t){case r:return(0,MR.of)(!1);case n:return(0,MR.of)(!0)}return this._host.exists(t)}_overwriteFile(t,r){return this._filesToUpdate.set(t,r),MR.EMPTY}_createFile(t,r){return this._filesToCreate.set(t,r),MR.EMPTY}_renameFile(t,r){return this._filesToRename.add([t,r]),MR.EMPTY}_deleteFile(t){return this._filesToCreate.has(t)?(this._filesToCreate.delete(t),this._filesToUpdate.delete(t)):this._filesToDelete.add(t),MR.EMPTY}_done(){return(0,MR.concat)((0,MR.from)([...this._filesToDelete.values()]).pipe((0,MR.concatMap)(t=>this._host.delete(t))),(0,MR.from)([...this._filesToRename.entries()]).pipe((0,MR.concatMap)(([t,[r,n]])=>this._host.rename(r,n))),(0,MR.from)([...this._filesToCreate.entries()]).pipe((0,MR.concatMap)(([t,r])=>this._host.write(t,r))),(0,MR.from)([...this._filesToUpdate.entries()]).pipe((0,MR.concatMap)(([t,r])=>this._host.write(t,r)))).pipe((0,MR.reduce)(()=>{}))}};KDt.HostSink=KMr});var zMr=H(zDt=>{"use strict";Object.defineProperty(zDt,"__esModule",{value:!0});zDt.DryRunSink=void 0;var yes=P2(),Onl=XDt(),bes=rE(),Pnl=jDt(),jMr=class extends Pnl.HostSink{_subject=new bes.Subject;_fileDoesNotExistExceptionSet=new Set;_fileAlreadyExistExceptionSet=new Set;reporter=this._subject.asObservable();constructor(t,r=!1){super(typeof t=="string"?new yes.virtualFs.ScopedHost(new Onl.NodeJsSyncHost,(0,yes.normalize)(t)):t,r)}_fileAlreadyExistException(t){this._fileAlreadyExistExceptionSet.add(t)}_fileDoesNotExistException(t){this._fileDoesNotExistExceptionSet.add(t)}_done(){return this._fileAlreadyExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"alreadyExist",path:t})}),this._fileDoesNotExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"doesNotExist",path:t})}),this._filesToDelete.forEach(t=>{for(let[r]of this._filesToRename)if(r==t)return;this._subject.next({kind:"delete",path:t})}),this._filesToRename.forEach(([t,r])=>{this._subject.next({kind:"rename",path:t,to:r})}),this._filesToCreate.forEach((t,r)=>{for(let[,n]of this._filesToRename)if(n==r)return;this._fileAlreadyExistExceptionSet.has(r)||this._fileDoesNotExistExceptionSet.has(r)||this._subject.next({kind:"create",path:r,content:t})}),this._filesToUpdate.forEach((t,r)=>{this._subject.next({kind:"update",path:r,content:t})}),this._subject.complete(),(0,bes.of)(void 0)}};zDt.DryRunSink=jMr});var Ees=H(qDt=>{"use strict";Object.defineProperty(qDt,"__esModule",{value:!0});qDt.BaseWorkflow=void 0;var qMr=P2(),lx=rE(),Mnl=OMr(),Hnl=H4(),Ynl=hMr(),Qnl=zMr(),Xnl=jDt(),Jnl=L_e(),$Mr=class{_engine;_engineHost;_registry;_host;_reporter=new lx.Subject;_lifeCycle=new lx.Subject;_context;_force;_dryRun;constructor(t){this._host=t.host,this._engineHost=t.engineHost,t.registry?this._registry=t.registry:(this._registry=new qMr.schema.CoreSchemaRegistry(Ynl.standardFormats),this._registry.addPostTransform(qMr.schema.transforms.addUndefinedDefaults)),this._engine=new Mnl.SchematicEngine(this._engineHost,this),this._context=[],this._force=t.force||!1,this._dryRun=t.dryRun||!1}get context(){let t=this._context[this._context.length-1];if(!t)throw new Error("Cannot get context when workflow is not executing...");return t}get engine(){return this._engine}get engineHost(){return this._engineHost}get registry(){return this._registry}get reporter(){return this._reporter.asObservable()}get lifeCycle(){return this._lifeCycle.asObservable()}_createSinks(){let t=!1,r=new Qnl.DryRunSink(this._host,this._force),n=r.reporter.subscribe(a=>{this._reporter.next(a),t=t||a.kind=="error"});return[r,{commit(){return n.unsubscribe(),t?(0,lx.throwError)(new Hnl.UnsuccessfulWorkflowExecution):(0,lx.of)()}},...this._dryRun?[]:[new Xnl.HostSink(this._host,this._force)]]}execute(t){let r=this._context[this._context.length-1];r||this._lifeCycle.next({kind:"start"});let n=this._engine.createCollection(t.collection),a=t.allowPrivate||r&&r.collection===t.collection,o=n.createSchematic(t.schematic,a),l=this._createSinks();this._lifeCycle.next({kind:"workflow-start"});let A={...t,debug:t.debug||!1,logger:t.logger||r&&r.logger||new qMr.logging.NullLogger,parentContext:r};return this._context.push(A),o.call(t.options,(0,lx.of)(new Jnl.HostTree(this._host)),{logger:A.logger}).pipe((0,lx.concatMap)(f=>(0,lx.concat)((0,lx.from)(l).pipe((0,lx.concatMap)(I=>I.commit(f)),(0,lx.ignoreElements)()),(0,lx.of)(f))),(0,lx.concatMap)(()=>this._dryRun?lx.EMPTY:(this._lifeCycle.next({kind:"post-tasks-start"}),this._engine.executePostTasks().pipe((0,lx.tap)({complete:()=>this._lifeCycle.next({kind:"post-tasks-end"})}),(0,lx.defaultIfEmpty)(void 0),(0,lx.last)()))),(0,lx.tap)({complete:()=>{this._lifeCycle.next({kind:"workflow-end"}),this._context.pop(),this._context.length==0&&this._lifeCycle.next({kind:"end"})}}))}};qDt.BaseWorkflow=$Mr});var ves=H(Ses=>{"use strict";Object.defineProperty(Ses,"__esModule",{value:!0})});var wes=H(due=>{"use strict";var Unl=due&&due.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Bes=due&&due.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Unl(t,e,r)};Object.defineProperty(due,"__esModule",{value:!0});Bes(Ees(),due);Bes(ves(),due)});var $Dt=H(eF=>{"use strict";Object.defineProperty(eF,"__esModule",{value:!0});eF.source=jnl;eF.empty=znl;eF.chain=tHr;eF.apply=qnl;eF.mergeWith=$nl;eF.noop=Des;eF.filter=eil;eF.asSource=til;eF.branchAndMerge=ril;eF.when=nil;eF.partitionApplyMerge=iil;eF.forEach=sil;eF.composeFileOperators=oil;eF.applyToSubtree=ail;var pue=rE(),Res=H4(),Tes=L_e(),Nes=NH(),Knl=vDt(),eHr=K8e(),Ij=DDt();function jnl(e){return()=>e}function znl(){return()=>(0,eHr.empty)()}function tHr(e){return async(t,r)=>{let n;if(Symbol.asyncIterator in e)for await(let a of e)n=(0,Ij.callRule)(a,n??t,r);else for(let a of e)n=(0,Ij.callRule)(a,n??t,r);return()=>n}}function qnl(e,t){return r=>(0,Ij.callRule)(tHr(t),(0,Ij.callSource)(e,r),r)}function $nl(e,t=Nes.MergeStrategy.Default){return(r,n)=>(0,Ij.callSource)(e,n).pipe((0,pue.map)(a=>r.merge(a,t||n.strategy)),(0,pue.mapTo)(r))}function Des(){return()=>{}}function eil(e){return t=>{if(Tes.HostTree.isHostTree(t))return new Tes.FilterHostTree(t,e);throw new Res.SchematicsException("Tree type is not supported.")}}function til(e){return t=>(0,Ij.callRule)(e,(0,eHr.empty)(),t)}function ril(e,t=Nes.MergeStrategy.Default){return(r,n)=>(0,Ij.callRule)(e,r.branch(),n).pipe((0,pue.map)(a=>r.merge(a,t||n.strategy)),(0,pue.mapTo)(r))}function nil(e,t){return r=>e(r.path,r)?t(r):r}function iil(e,t,r){return(n,a)=>{let[o,l]=(0,eHr.partition)(n,e);return(0,pue.concat)((0,Ij.callRule)(t,o,a),(0,Ij.callRule)(r||Des(),l,a)).pipe((0,pue.toArray)(),(0,pue.map)(([A,f])=>(A.merge(f,a.strategy),A)))}}function sil(e){return t=>{t.visit((r,n)=>{if(!n)return;let a=e(n);if(a!==n){if(a===null){t.delete(r);return}a.path!=r&&t.rename(r,a.path),a.content.equals(n.content)||t.overwrite(a.path,a.content)}})}}function oil(e){return t=>{let r=t;for(let n of e)if(r=n(r),r===null)return null;return r}}function ail(e,t){return(r,n)=>{let a=new Knl.ScopedTree(r,e);return(0,Ij.callRule)(tHr(t),a,n).pipe((0,pue.map)(o=>{if(o===a)return r;throw new Res.SchematicsException('Original tree must be returned from all rules when using "applyToSubtree".')}))}}});var kes=H(nHr=>{"use strict";Object.defineProperty(nHr,"__esModule",{value:!0});nHr.move=lil;var rHr=P2(),cil=$Dt();function lil(e,t){t===void 0&&(t=e,e="/");let r=(0,rHr.normalize)("/"+e),n=(0,rHr.normalize)("/"+t);return r===n?cil.noop:a=>(a.exists(r)?a.rename(r,n):a.getDir(r).visit(o=>{a.rename(o,(0,rHr.join)(n,o.slice(r.length)))}),a)}});var Ges=H(iHr=>{"use strict";Object.defineProperty(iHr,"__esModule",{value:!0});iHr.default=Ail;var uil=L_e();function xes(e){return new Array(e).fill(0).map(t=>"abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)]).join("")}function gil(e,t){return Math.floor(Math.random()*(t-e))+e}function Ail(e){return()=>{let t="root"in e?e.root:"/",r=new uil.HostTree,n="multiFiles"in e?typeof e.multiFiles=="number"?e.multiFiles:gil(2,12):1;for(let a=0;a{"use strict";Object.defineProperty(ekt,"__esModule",{value:!0});ekt.externalSchematic=dil;ekt.schematic=pil;var Pxe=rE(),Fes=NH(),Zes=K8e();function dil(e,t,r,n){return(a,o)=>o.engine.createCollection(e,o.schematic.collection).createSchematic(t).call(r,(0,Pxe.of)((0,Zes.branch)(a)),o,n).pipe((0,Pxe.last)(),(0,Pxe.map)(f=>(a.merge(f,Fes.MergeStrategy.AllowOverwriteConflict),a)))}function pil(e,t,r){return(n,a)=>a.schematic.collection.createSchematic(e,!0).call(t,(0,Pxe.of)((0,Zes.branch)(n)),a,r).pipe((0,Pxe.last)(),(0,Pxe.map)(A=>(n.merge(A,Fes.MergeStrategy.AllowOverwriteConflict),n)))}});var Oes=H(ET=>{"use strict";Object.defineProperty(ET,"__esModule",{value:!0});ET.InvalidPipeException=ET.UnknownPipeException=ET.OptionIsNotDefinedException=ET.TEMPLATE_FILENAME_RE=void 0;ET.applyContentTemplate=sHr;ET.contentTemplate=Ves;ET.applyPathTemplate=oHr;ET.pathTemplate=Wes;ET.renameTemplateFiles=hil;ET.template=mil;ET.applyTemplates=Cil;var Mxe=P2(),fil=Et("node:os"),W_e=$Dt();ET.TEMPLATE_FILENAME_RE=/\.template$/;var $8e=class extends Mxe.BaseException{constructor(t){super(`Option "${t}" is not defined.`)}};ET.OptionIsNotDefinedException=$8e;var tkt=class extends Mxe.BaseException{constructor(t){super(`Pipe "${t}" is not defined.`)}};ET.UnknownPipeException=tkt;var rkt=class extends Mxe.BaseException{constructor(t){super(`Pipe "${t}" is invalid.`)}};ET.InvalidPipeException=rkt;var Iil=new TextDecoder("utf-8",{fatal:!0});function sHr(e){return t=>{let{path:r,content:n}=t;try{let a=Iil.decode(n).replace(/\r?\n/g,fil.EOL);return{path:r,content:Buffer.from((0,Mxe.template)(a,{})(e))}}catch(a){if(a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA")return t;throw a}}}function Ves(e){return(0,W_e.forEach)(sHr(e))}function oHr(e,t={interpolationStart:"__",interpolationEnd:"__",pipeSeparator:"@"}){let r=t.interpolationStart,n=t.interpolationEnd,a=r.length,o=n.length;return l=>{let A=l.path,f=l.content,I=A,C=A.indexOf(r),b=A.indexOf(n,C+a+1);for(;C!=-1&&b!=-1;){let E=A.substring(C+a,b),N=e[E];if(t.pipeSeparator){let[B,...F]=E.split(t.pipeSeparator);if(N=e[B],typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new $8e(B);N=F.reduce((Q,J)=>{if(!J)return Q;if(!(J in e))throw new tkt(J);let ae=e[J];if(typeof ae!="function")throw new rkt(J);return""+ae(Q)},""+N)}else if(typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new $8e(E);A=A.substring(0,C)+N+A.substring(b+o),C=A.indexOf(t.interpolationStart),b=A.indexOf(t.interpolationEnd,C+a+1)}return{path:(0,Mxe.normalize)(A),content:f}}}function Wes(e){return(0,W_e.forEach)(oHr(e))}function hil(){return(0,W_e.forEach)(e=>e.path.match(ET.TEMPLATE_FILENAME_RE)?{content:e.content,path:(0,Mxe.normalize)(e.path.replace(ET.TEMPLATE_FILENAME_RE,""))}:e)}function mil(e){return(0,W_e.chain)([Ves(e),Wes(e)])}function Cil(e){return(0,W_e.forEach)((0,W_e.when)(t=>t.endsWith(".template"),(0,W_e.composeFileOperators)([sHr(e),oHr(e),t=>({content:t.content,path:t.path.replace(ET.TEMPLATE_FILENAME_RE,"")})])))}});var Pes=H(aHr=>{"use strict";Object.defineProperty(aHr,"__esModule",{value:!0});aHr.url=yil;var _il=Et("url");function yil(e){let t=(0,_il.parse)(e);return r=>r.engine.createSourceFromUrl(t,r)(r)}});var Mes=H(nkt=>{"use strict";Object.defineProperty(nkt,"__esModule",{value:!0});nkt.EmptyTree=void 0;var bil=L_e(),cHr=class extends bil.HostTree{constructor(){super()}};nkt.EmptyTree=cHr});var Hxe=H(Dm=>{"use strict";var Hes=Dm&&Dm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Eil=Dm&&Dm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Yes=Dm&&Dm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(Qes,"__esModule",{value:!0})});var okt=H(skt=>{"use strict";Object.defineProperty(skt,"__esModule",{value:!0});skt.ExportStringRef=void 0;var Jes=Et("path"),lHr=class{_ref;_module;_path;constructor(t,r=process.cwd(),n=!0){let[a,o]=t.split("#",2);this._module=a[0]=="."?(0,Jes.resolve)(r,a):a,this._module=Et.resolve(this._module),this._path=(0,Jes.dirname)(this._module),n?this._ref=Et(this._module)[o||"default"]:this._ref=Et(this._module)}get ref(){return this._ref}get module(){return this._module}get path(){return this._path}};skt.ExportStringRef=lHr});var gHr=H(uHr=>{"use strict";Object.defineProperty(uHr,"__esModule",{value:!0});uHr.readJsonFile=Dil;var Ril=Et("fs"),Ues=xxe(),Nil=H4();function Dil(e){let t;try{t=(0,Ril.readFileSync)(e,"utf-8")}catch(a){throw a&&typeof a=="object"&&"code"in a&&a.code==="ENOENT"?new Nil.FileDoesNotExistException(e):a}let r=[],n=(0,Ues.parse)(t,r,{allowTrailingComma:!0});if(r.length){let{error:a,offset:o}=r[0];throw new Error(`Failed to parse "${e}" as JSON AST Object. ${(0,Ues.printParseErrorCode)(a)} at location: ${o}.`)}return n}});var ukt=H($v=>{"use strict";Object.defineProperty($v,"__esModule",{value:!0});$v.FileSystemEngineHostBase=$v.SchematicNameCollisionException=$v.SchematicMissingDescriptionException=$v.SchematicMissingFieldsException=$v.CollectionMissingFieldsException=$v.CollectionMissingSchematicsMapException=$v.FactoryCannotBeResolvedException=$v.SchematicMissingFactoryException=$v.InvalidCollectionJsonException=$v.CollectionCannotBeResolvedException=void 0;var Y4=P2(),kil=XDt(),Kes=Et("fs"),Yxe=Et("path"),e6e=rE(),jes=Hxe(),zes=gHr(),AHr=class extends Y4.BaseException{constructor(t){super(`Collection ${JSON.stringify(t)} cannot be resolved.`)}};$v.CollectionCannotBeResolvedException=AHr;var t6e=class extends Y4.BaseException{constructor(t,r,n){let a=`Collection JSON at path ${JSON.stringify(r)} is invalid.`;n&&(a=`${a} ${n.message}`),super(a)}};$v.InvalidCollectionJsonException=t6e;var akt=class extends Y4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} is missing a factory.`)}};$v.SchematicMissingFactoryException=akt;var ckt=class extends Y4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} cannot resolve the factory.`)}};$v.FactoryCannotBeResolvedException=ckt;var dHr=class extends Y4.BaseException{constructor(t){super(`Collection "${t}" does not have a schematics map.`)}};$v.CollectionMissingSchematicsMapException=dHr;var pHr=class extends Y4.BaseException{constructor(t){super(`Collection "${t}" is missing fields.`)}};$v.CollectionMissingFieldsException=pHr;var fHr=class extends Y4.BaseException{constructor(t){super(`Schematic "${t}" is missing fields.`)}};$v.SchematicMissingFieldsException=fHr;var IHr=class extends Y4.BaseException{constructor(t){super(`Schematics "${t}" does not have a description.`)}};$v.SchematicMissingDescriptionException=IHr;var lkt=class extends Y4.BaseException{constructor(t){super(`Schematics/alias ${JSON.stringify(t)} collides with another alias or schematic name.`)}};$v.SchematicNameCollisionException=lkt;var hHr=class{_transforms=[];_contextTransforms=[];_taskFactories=new Map;listSchematicNames(t,r){let n=[];for(let a of Object.keys(t.schematics)){let o=t.schematics[a];o.hidden&&!r||o.private||(!o.extends||o.factory||o.extends&&o.extends.indexOf(":")!==-1)&&n.push(a)}return n}registerOptionsTransform(t){this._transforms.push(t)}registerContextTransform(t){this._contextTransforms.push(t)}createCollectionDescription(t,r){let n=this._resolveCollectionPath(t,r?.path),a=(0,zes.readJsonFile)(n);if(!a||typeof a!="object"||Array.isArray(a))throw new t6e(t,n);typeof a.extends=="string"&&(a.extends=[a.extends]);let o=this._transformCollectionDescription(t,{...a,path:n});if(!o||!o.name)throw new t6e(t,n);let l=Object.keys(o.schematics);for(let A of Object.keys(o.schematics)){let f=o.schematics[A].aliases||[];for(let I of f)if(l.indexOf(I)!=-1)throw new lkt(I);l.push(...f)}return o}createSchematicDescription(t,r){for(let C of Object.keys(r.schematics)){let b=r.schematics[C];if(b.aliases&&b.aliases.indexOf(t)!=-1){t=C;break}}if(!(t in r.schematics))return null;let n=(0,Yxe.dirname)(r.path),a=r.schematics[t];if(!a)return null;if(a.extends){let C=a.extends.indexOf(":"),b=C!==-1?a.extends.slice(0,C):null,E=C===-1?a.extends:a.extends.slice(C+1);if(b!==null){let N=this.createCollectionDescription(b);return this.createSchematicDescription(E,N)}else return this.createSchematicDescription(E,r)}if(!a.factory)throw new akt(t);let o=this._resolveReferenceString(a.factory,n,r);if(!o)throw new ckt(t);let l=a.schema,A;l&&((0,Yxe.isAbsolute)(l)||(l=(0,Yxe.join)(n,l)),A=(0,zes.readJsonFile)(l));let f=(0,Yxe.join)(n,a.factory),I=(0,Kes.existsSync)(f)&&(0,Kes.statSync)(f).isDirectory()?f:(0,Yxe.dirname)(f);return this._transformSchematicDescription(t,r,{...a,schema:l,schemaJson:A,name:t,path:I,factoryFn:o.ref,collection:r})}createSourceFromUrl(t){switch(t.protocol){case null:case"file:":return r=>{let n=r.schematic.description;if(n.path===void 0)throw new Error("Unsupported schematic context. Expected a FileSystemSchematicContext.");let a=(0,Y4.normalize)((0,Yxe.resolve)(n.path,t.path||""));return new jes.HostCreateTree(new Y4.virtualFs.ScopedHost(new kil.NodeJsSyncHost,a))}}return null}transformOptions(t,r,n){let a=async()=>{let o=r;for(let l of this._transforms){let A=l(t,o,n);o=await((0,e6e.isObservable)(A)?(0,e6e.lastValueFrom)(A):A)}return o};return(0,e6e.from)(a())}transformContext(t){return this._contextTransforms.reduce((r,n)=>n(r),t)}getSchematicRuleFactory(t,r){return t.factoryFn}registerTaskExecutor(t,r){this._taskFactories.set(t.name,()=>(0,e6e.from)(t.create(r)))}createTaskExecutor(t){let r=this._taskFactories.get(t);return r?r():(0,e6e.throwError)(new jes.UnregisteredTaskException(t))}hasTaskExecutor(t){return this._taskFactories.has(t)}};$v.FileSystemEngineHostBase=hHr});var qes=H(gkt=>{"use strict";Object.defineProperty(gkt,"__esModule",{value:!0});gkt.NodePackageName=void 0;gkt.NodePackageName="node-package"});var $es=H(Akt=>{"use strict";Object.defineProperty(Akt,"__esModule",{value:!0});Akt.RepositoryInitializerName=void 0;Akt.RepositoryInitializerName="repo-init"});var ets=H(dkt=>{"use strict";Object.defineProperty(dkt,"__esModule",{value:!0});dkt.RunSchematicName=void 0;dkt.RunSchematicName="run-schematic"});var tts=H((lju,xil)=>{xil.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var its=H((uju,nts)=>{"use strict";var pkt=Object.assign({},tts()),rts=Object.keys(pkt);Object.defineProperty(pkt,"random",{get(){let e=Math.floor(Math.random()*rts.length),t=rts[e];return pkt[t]}});nts.exports=pkt});var mHr=H((gju,sts)=>{"use strict";sts.exports=()=>process.platform!=="win32"?!0:!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"});var ats=H((Aju,ots)=>{"use strict";var fue=qK(),Gil=mHr(),Fil={info:fue.blue("\u2139"),success:fue.green("\u2714"),warning:fue.yellow("\u26A0"),error:fue.red("\u2716")},Zil={info:fue.blue("i"),success:fue.green("\u221A"),warning:fue.yellow("\u203C"),error:fue.red("\xD7")};ots.exports=Gil()?Fil:Zil});var cts=H((dju,fkt)=>{var Lil=function(){"use strict";function e(l,A,f,I){var C;typeof A=="object"&&(f=A.depth,I=A.prototype,C=A.filter,A=A.circular);var b=[],E=[],N=typeof Buffer<"u";typeof A>"u"&&(A=!0),typeof f>"u"&&(f=1/0);function B(F,Q){if(F===null)return null;if(Q==0)return F;var J,ae;if(typeof F!="object")return F;if(e.__isArray(F))J=[];else if(e.__isRegExp(F))J=new RegExp(F.source,o(F)),F.lastIndex&&(J.lastIndex=F.lastIndex);else if(e.__isDate(F))J=new Date(F.getTime());else{if(N&&Buffer.isBuffer(F))return Buffer.allocUnsafe?J=Buffer.allocUnsafe(F.length):J=new Buffer(F.length),F.copy(J),J;typeof I>"u"?(ae=Object.getPrototypeOf(F),J=Object.create(ae)):(J=Object.create(I),ae=I)}if(A){var ne=b.indexOf(F);if(ne!=-1)return E[ne];b.push(F),E.push(J)}for(var ce in F){var fe;ae&&(fe=Object.getOwnPropertyDescriptor(ae,ce)),!(fe&&fe.set==null)&&(J[ce]=B(F[ce],Q-1))}return J}return B(l,f)}e.clonePrototype=function(A){if(A===null)return null;var f=function(){};return f.prototype=A,new f};function t(l){return Object.prototype.toString.call(l)}e.__objToStr=t;function r(l){return typeof l=="object"&&t(l)==="[object Date]"}e.__isDate=r;function n(l){return typeof l=="object"&&t(l)==="[object Array]"}e.__isArray=n;function a(l){return typeof l=="object"&&t(l)==="[object RegExp]"}e.__isRegExp=a;function o(l){var A="";return l.global&&(A+="g"),l.ignoreCase&&(A+="i"),l.multiline&&(A+="m"),A}return e.__getRegExpFlags=o,e}();typeof fkt=="object"&&fkt.exports&&(fkt.exports=Lil)});var uts=H((pju,lts)=>{var Vil=cts();lts.exports=function(e,t){return e=e||{},Object.keys(t).forEach(function(r){typeof e[r]>"u"&&(e[r]=Vil(t[r]))}),e}});var Ats=H((fju,gts)=>{gts.exports=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]]});var Its=H((Iju,CHr)=>{"use strict";var Wil=uts(),r6e=Ats(),pts={nul:0,control:0};CHr.exports=function(t){return fts(t,pts)};CHr.exports.config=function(e){return e=Wil(e||{},pts),function(r){return fts(r,e)}};function fts(e,t){if(typeof e!="string")return dts(e,t);for(var r=0,n=0;n=127&&e<160?t.control:Oil(e)?0:1+(e>=4352&&(e<=4447||e==9001||e==9002||e>=11904&&e<=42191&&e!=12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))}function Oil(e){var t=0,r=r6e.length-1,n;if(er6e[r][1])return!1;for(;r>=t;)if(n=Math.floor((t+r)/2),e>r6e[n][1])t=n+1;else if(e{"use strict";hts.exports=({stream:e=process.stdout}={})=>!!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))});var _ts=H((mju,EHr)=>{"use strict";var Pil=Et("readline"),Mil=qK(),Cts=kBe(),Ikt=its(),hkt=ats(),Hil=aM(),Yil=Its(),Qil=mts(),Xil=mHr(),{BufferListStream:Jil}=Zwr(),_Hr=Symbol("text"),yHr=Symbol("prefixText"),Uil=3,bHr=class{constructor(){this.requests=0,this.mutedStream=new Jil,this.mutedStream.pipe(process.stdout);let t=this;this.ourEmit=function(r,n,...a){let{stdin:o}=process;if(t.requests>0||o.emit===t.ourEmit){if(r==="keypress")return;r==="data"&&n.includes(Uil)&&process.emit("SIGINT"),Reflect.apply(t.oldEmit,this,[r,n,...a])}else Reflect.apply(process.stdin.emit,this,[r,n,...a])}}start(){this.requests++,this.requests===1&&this.realStart()}stop(){if(this.requests<=0)throw new Error("`stop` called more times than `start`");this.requests--,this.requests===0&&this.realStop()}realStart(){process.platform!=="win32"&&(this.rl=Pil.createInterface({input:process.stdin,output:this.mutedStream}),this.rl.on("SIGINT",()=>{process.listenerCount("SIGINT")===0?process.emit("SIGINT"):(this.rl.close(),process.kill(process.pid,"SIGINT"))}))}realStop(){process.platform!=="win32"&&(this.rl.close(),this.rl=void 0)}},mkt,Ckt=class{constructor(t){mkt||(mkt=new bHr),typeof t=="string"&&(t={text:t}),this.options={text:"",color:"cyan",stream:process.stderr,discardStdin:!0,...t},this.spinner=this.options.spinner,this.color=this.options.color,this.hideCursor=this.options.hideCursor!==!1,this.interval=this.options.interval||this.spinner.interval||100,this.stream=this.options.stream,this.id=void 0,this.isEnabled=typeof this.options.isEnabled=="boolean"?this.options.isEnabled:Qil({stream:this.stream}),this.isSilent=typeof this.options.isSilent=="boolean"?this.options.isSilent:!1,this.text=this.options.text,this.prefixText=this.options.prefixText,this.linesToClear=0,this.indent=this.options.indent,this.discardStdin=this.options.discardStdin,this.isDiscardingStdin=!1}get indent(){return this._indent}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this._indent=t}_updateInterval(t){t!==void 0&&(this.interval=t)}get spinner(){return this._spinner}set spinner(t){if(this.frameIndex=0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this._spinner=t}else if(!Xil())this._spinner=Ikt.line;else if(t===void 0)this._spinner=Ikt.dots;else if(t!=="default"&&Ikt[t])this._spinner=Ikt[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);this._updateInterval(this._spinner.interval)}get text(){return this[_Hr]}set text(t){this[_Hr]=t,this.updateLineCount()}get prefixText(){return this[yHr]}set prefixText(t){this[yHr]=t,this.updateLineCount()}get isSpinning(){return this.id!==void 0}getFullPrefixText(t=this[yHr],r=" "){return typeof t=="string"?t+r:typeof t=="function"?t()+r:""}updateLineCount(){let t=this.stream.columns||80,r=this.getFullPrefixText(this.prefixText,"-");this.lineCount=0;for(let n of Hil(r+"--"+this[_Hr]).split(` +`))this.lineCount+=Math.max(1,Math.ceil(Yil(n)/t))}get isEnabled(){return this._isEnabled&&!this.isSilent}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this._isEnabled=t}get isSilent(){return this._isSilent}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this._isSilent=t}frame(){let{frames:t}=this.spinner,r=t[this.frameIndex];this.color&&(r=Mil[this.color](r)),this.frameIndex=++this.frameIndex%t.length;let n=typeof this.prefixText=="string"&&this.prefixText!==""?this.prefixText+" ":"",a=typeof this.text=="string"?" "+this.text:"";return n+r+a}clear(){if(!this.isEnabled||!this.stream.isTTY)return this;for(let t=0;t0&&this.stream.moveCursor(0,-1),this.stream.clearLine(),this.stream.cursorTo(this.indent);return this.linesToClear=0,this}render(){return this.isSilent?this:(this.clear(),this.stream.write(this.frame()),this.linesToClear=this.lineCount,this)}start(t){return t&&(this.text=t),this.isSilent?this:this.isEnabled?this.isSpinning?this:(this.hideCursor&&Cts.hide(this.stream),this.discardStdin&&process.stdin.isTTY&&(this.isDiscardingStdin=!0,mkt.start()),this.render(),this.id=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.stream.write(`- ${this.text} +`),this)}stop(){return this.isEnabled?(clearInterval(this.id),this.id=void 0,this.frameIndex=0,this.clear(),this.hideCursor&&Cts.show(this.stream),this.discardStdin&&process.stdin.isTTY&&this.isDiscardingStdin&&(mkt.stop(),this.isDiscardingStdin=!1),this):this}succeed(t){return this.stopAndPersist({symbol:hkt.success,text:t})}fail(t){return this.stopAndPersist({symbol:hkt.error,text:t})}warn(t){return this.stopAndPersist({symbol:hkt.warning,text:t})}info(t){return this.stopAndPersist({symbol:hkt.info,text:t})}stopAndPersist(t={}){if(this.isSilent)return this;let r=t.prefixText||this.prefixText,n=t.text||this.text,a=typeof n=="string"?" "+n:"";return this.stop(),this.stream.write(`${this.getFullPrefixText(r," ")}${t.symbol||" "}${a} +`),this}},Kil=function(e){return new Ckt(e)};EHr.exports=Kil;EHr.exports.promise=(e,t)=>{if(typeof e.then!="function")throw new TypeError("Parameter `action` must be a Promise");let r=new Ckt(t);return r.start(),(async()=>{try{await e,r.succeed()}catch{r.fail()}})(),r}});var bts=H(OP=>{"use strict";var jil=OP&&OP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),zil=OP&&OP.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),qil=OP&&OP.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let o=r,l=t;if(e.allowPackageManagerOverride&&a.packageManager){if(o=yts[a.packageManager],!o)throw new n6e(a.packageManager);l=a.packageManager}let A=[],f={shell:!0,cwd:nsl.join(n,a.workingDirectory||"")};a.hideOutput?f.stdio=a.quiet?["ignore","ignore","pipe"]:"pipe":f.stdio=a.quiet?["ignore","ignore","inherit"]:"inherit";let I=[];return a.packageName?(a.command==="install"&&I.push(o.commands.installPackage),I.push(a.packageName)):a.command==="install"&&o.commands.installAll&&I.push(o.commands.installAll),a.allowScripts||(l==="yarn"?f.env={...process.env,npm_config_ignore_scripts:"true",YARN_ENABLE_SCRIPTS:"false"}:I.push("--ignore-scripts")),e.registry&&I.push(`--registry="${e.registry}"`),e.force&&I.push("--force"),new isl.Observable(C=>{let b=(0,rsl.default)({text:`Installing packages (${l})...`,discardStdin:process.platform!="win32"}).start(),E=(0,tsl.spawn)(l,I,f).on("close",N=>{N===0?(b.succeed("Packages installed successfully."),b.stop(),C.next(),C.complete()):(a.hideOutput&&A.forEach(({stream:B,data:F})=>B.write(F)),b.fail("Package install failed, see above."),C.error(new ssl.UnsuccessfulWorkflowExecution))});a.hideOutput&&(E.stdout?.on("data",N=>A.push({stream:process.stdout,data:N})),E.stderr?.on("data",N=>A.push({stream:process.stderr,data:N})))})}}});var Ets=H(xte=>{"use strict";var asl=xte&&xte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),csl=xte&&xte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),lsl=xte&&xte.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=r.authorName,o=r.authorEmail,l=(I,C)=>{let b="ignore",E=C?"ignore":process.stderr,N={stdio:[process.stdin,b,E],shell:!0,cwd:Asl.join(t,r.workingDirectory||""),env:{...process.env,...a?{GIT_AUTHOR_NAME:a,GIT_COMMITTER_NAME:a}:{},...o?{GIT_AUTHOR_EMAIL:o,GIT_COMMITTER_EMAIL:o}:{}}};return new Promise((B,F)=>{(0,gsl.spawn)("git",I,N).on("close",Q=>{Q===0?B():F(Q)})})};if(!await l(["--version"]).then(()=>!0,()=>!1))return;if(await l(["rev-parse","--is-inside-work-tree"],!0).then(()=>!0,()=>!1)){n.logger.info(usl.tags.oneLine` Directory is already under version control. Skipping initialization of git. - `);return}try{if(await l(["init"]),await l(["add","."]),r.commit){let I=r.message||"initial commit";await l(["commit",`-m "${I}"`])}n.logger.info("Successfully initialized git.")}catch{}}}});var Ets=H(mHr=>{"use strict";Object.defineProperty(mHr,"__esModule",{value:!0});mHr.default=hil;function hil(){return(e,t)=>{if(!e?.name)throw new Error("RunSchematicTask requires an options object with a non-empty name property.");let r=t.engine.workflow,n=e.collection||t.schematic.collection.description.name;if(!r)throw new Error("Need Workflow to support executing schematics as post tasks.");return r.execute({collection:n,schematic:e.name,options:e.options,allowPrivate:n==t.schematic.collection.description.name})}}});var Sts=H(Ij=>{"use strict";var mil=Ij&&Ij.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Cil=Ij&&Ij.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),CHr=Ij&&Ij.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aPromise.resolve().then(()=>CHr(yts())).then(r=>r.default(t))};static RepositoryInitializer={name:yil.RepositoryInitializerName,create:t=>Promise.resolve().then(()=>CHr(bts())).then(r=>r.default(t))};static RunSchematic={name:bil.RunSchematicName,create:()=>Promise.resolve().then(()=>CHr(Ets())).then(t=>t.default())}};Ij.BuiltinTaskExecutor=_Hr});var bkt=H(Xxe=>{"use strict";Object.defineProperty(Xxe,"__esModule",{value:!0});Xxe.NodeModulesEngineHost=Xxe.NodePackageDoesNotSupportSchematics=void 0;var Eil=O2(),Qxe=Et("path"),Sil=okt(),_kt=ukt(),vil=sHr(),ykt=class extends Eil.BaseException{constructor(t){super(`Package ${JSON.stringify(t)} was found but does not support schematics.`)}};Xxe.NodePackageDoesNotSupportSchematics=ykt;var yHr=class extends _kt.FileSystemEngineHostBase{paths;constructor(t){super(),this.paths=t}resolve(t,r,n=new Set){if(r){if(n.has(r))throw n.add(r),new Error("Circular schematic reference detected: "+JSON.stringify(Array.from(n)));n.add(r)}let a=r?(0,Qxe.dirname)(r):process.cwd(),o;t.startsWith(".")&&(t=(0,Qxe.resolve)(a,t));let l={paths:r?[(0,Qxe.dirname)(r),...this.paths||[]]:this.paths};try{let A=Et.resolve((0,Qxe.join)(t,"package.json"),l),{schematics:f}=Et(A);if(!f||typeof f!="string")throw new ykt(t);if(f.startsWith(".")){let I=(0,Qxe.dirname)(A);o=(0,Qxe.resolve)(I,f)}else o=this.resolve(f,A,n)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)try{o=Et.resolve(t,l)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)throw new _kt.CollectionCannotBeResolvedException(t);return o}_resolveCollectionPath(t,r){let n=this.resolve(t,r);return(0,vil.readJsonFile)(n),n}_resolveReferenceString(t,r,n){let a=new Sil.ExportStringRef(t,r);return a.ref?{ref:a.ref,path:a.module}:null}_transformCollectionDescription(t,r){if(!r.schematics||typeof r.schematics!="object")throw new _kt.CollectionMissingSchematicsMapException(t);return{...r,name:t}}_transformSchematicDescription(t,r,n){if(!n.factoryFn||!n.path||!n.description)throw new _kt.SchematicMissingFieldsException(t);return n}};Xxe.NodeModulesEngineHost=yHr});var Bts=H(Ekt=>{"use strict";Object.defineProperty(Ekt,"__esModule",{value:!0});Ekt.partition=void 0;var Bil=iPr(),vts=Cte();function wil(e,t){return function(r){return[vts.filter(e,t)(r),vts.filter(Bil.not(e,t))(r)]}}Ekt.partition=wil});var wts=H(fue=>{"use strict";var Til=fue&&fue.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Ril=fue&&fue.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.mergeAll=ns.merge=ns.max=ns.materialize=ns.mapTo=ns.map=ns.last=ns.isEmpty=ns.ignoreElements=ns.groupBy=ns.first=ns.findIndex=ns.find=ns.finalize=ns.filter=ns.expand=ns.exhaustMap=ns.exhaustAll=ns.exhaust=ns.every=ns.endWith=ns.elementAt=ns.distinctUntilKeyChanged=ns.distinctUntilChanged=ns.distinct=ns.dematerialize=ns.delayWhen=ns.delay=ns.defaultIfEmpty=ns.debounceTime=ns.debounce=ns.count=ns.connect=ns.concatWith=ns.concatMapTo=ns.concatMap=ns.concatAll=ns.concat=ns.combineLatestWith=ns.combineLatest=ns.combineLatestAll=ns.combineAll=ns.catchError=ns.bufferWhen=ns.bufferToggle=ns.bufferTime=ns.bufferCount=ns.buffer=ns.auditTime=ns.audit=void 0;ns.timeInterval=ns.throwIfEmpty=ns.throttleTime=ns.throttle=ns.tap=ns.takeWhile=ns.takeUntil=ns.takeLast=ns.take=ns.switchScan=ns.switchMapTo=ns.switchMap=ns.switchAll=ns.subscribeOn=ns.startWith=ns.skipWhile=ns.skipUntil=ns.skipLast=ns.skip=ns.single=ns.shareReplay=ns.share=ns.sequenceEqual=ns.scan=ns.sampleTime=ns.sample=ns.refCount=ns.retryWhen=ns.retry=ns.repeatWhen=ns.repeat=ns.reduce=ns.raceWith=ns.race=ns.publishReplay=ns.publishLast=ns.publishBehavior=ns.publish=ns.pluck=ns.partition=ns.pairwise=ns.onErrorResumeNext=ns.observeOn=ns.multicast=ns.min=ns.mergeWith=ns.mergeScan=ns.mergeMapTo=ns.mergeMap=ns.flatMap=void 0;ns.zipWith=ns.zipAll=ns.zip=ns.withLatestFrom=ns.windowWhen=ns.windowToggle=ns.windowTime=ns.windowCount=ns.window=ns.toArray=ns.timestamp=ns.timeoutWith=ns.timeout=void 0;var xil=ETt();Object.defineProperty(ns,"audit",{enumerable:!0,get:function(){return xil.audit}});var Gil=oPr();Object.defineProperty(ns,"auditTime",{enumerable:!0,get:function(){return Gil.auditTime}});var Fil=aPr();Object.defineProperty(ns,"buffer",{enumerable:!0,get:function(){return Fil.buffer}});var Zil=lPr();Object.defineProperty(ns,"bufferCount",{enumerable:!0,get:function(){return Zil.bufferCount}});var Lil=uPr();Object.defineProperty(ns,"bufferTime",{enumerable:!0,get:function(){return Lil.bufferTime}});var Vil=APr();Object.defineProperty(ns,"bufferToggle",{enumerable:!0,get:function(){return Vil.bufferToggle}});var Wil=dPr();Object.defineProperty(ns,"bufferWhen",{enumerable:!0,get:function(){return Wil.bufferWhen}});var Oil=pPr();Object.defineProperty(ns,"catchError",{enumerable:!0,get:function(){return Oil.catchError}});var Pil=hPr();Object.defineProperty(ns,"combineAll",{enumerable:!0,get:function(){return Pil.combineAll}});var Mil=GTt();Object.defineProperty(ns,"combineLatestAll",{enumerable:!0,get:function(){return Mil.combineLatestAll}});var Hil=mPr();Object.defineProperty(ns,"combineLatest",{enumerable:!0,get:function(){return Hil.combineLatest}});var Yil=CPr();Object.defineProperty(ns,"combineLatestWith",{enumerable:!0,get:function(){return Yil.combineLatestWith}});var Qil=yPr();Object.defineProperty(ns,"concat",{enumerable:!0,get:function(){return Qil.concat}});var Xil=S8e();Object.defineProperty(ns,"concatAll",{enumerable:!0,get:function(){return Xil.concatAll}});var Jil=LTt();Object.defineProperty(ns,"concatMap",{enumerable:!0,get:function(){return Jil.concatMap}});var Uil=_Pr();Object.defineProperty(ns,"concatMapTo",{enumerable:!0,get:function(){return Uil.concatMapTo}});var Kil=bPr();Object.defineProperty(ns,"concatWith",{enumerable:!0,get:function(){return Kil.concatWith}});var jil=w8e();Object.defineProperty(ns,"connect",{enumerable:!0,get:function(){return jil.connect}});var zil=EPr();Object.defineProperty(ns,"count",{enumerable:!0,get:function(){return zil.count}});var qil=SPr();Object.defineProperty(ns,"debounce",{enumerable:!0,get:function(){return qil.debounce}});var $il=vPr();Object.defineProperty(ns,"debounceTime",{enumerable:!0,get:function(){return $il.debounceTime}});var esl=lxe();Object.defineProperty(ns,"defaultIfEmpty",{enumerable:!0,get:function(){return esl.defaultIfEmpty}});var tsl=BPr();Object.defineProperty(ns,"delay",{enumerable:!0,get:function(){return tsl.delay}});var rsl=zTt();Object.defineProperty(ns,"delayWhen",{enumerable:!0,get:function(){return rsl.delayWhen}});var nsl=wPr();Object.defineProperty(ns,"dematerialize",{enumerable:!0,get:function(){return nsl.dematerialize}});var isl=TPr();Object.defineProperty(ns,"distinct",{enumerable:!0,get:function(){return isl.distinct}});var ssl=rRt();Object.defineProperty(ns,"distinctUntilChanged",{enumerable:!0,get:function(){return ssl.distinctUntilChanged}});var osl=RPr();Object.defineProperty(ns,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return osl.distinctUntilKeyChanged}});var asl=NPr();Object.defineProperty(ns,"elementAt",{enumerable:!0,get:function(){return asl.elementAt}});var csl=DPr();Object.defineProperty(ns,"endWith",{enumerable:!0,get:function(){return csl.endWith}});var lsl=kPr();Object.defineProperty(ns,"every",{enumerable:!0,get:function(){return lsl.every}});var usl=xPr();Object.defineProperty(ns,"exhaust",{enumerable:!0,get:function(){return usl.exhaust}});var gsl=uRt();Object.defineProperty(ns,"exhaustAll",{enumerable:!0,get:function(){return gsl.exhaustAll}});var Asl=cRt();Object.defineProperty(ns,"exhaustMap",{enumerable:!0,get:function(){return Asl.exhaustMap}});var dsl=GPr();Object.defineProperty(ns,"expand",{enumerable:!0,get:function(){return dsl.expand}});var psl=Cte();Object.defineProperty(ns,"filter",{enumerable:!0,get:function(){return psl.filter}});var fsl=FPr();Object.defineProperty(ns,"finalize",{enumerable:!0,get:function(){return fsl.finalize}});var Isl=pRt();Object.defineProperty(ns,"find",{enumerable:!0,get:function(){return Isl.find}});var hsl=ZPr();Object.defineProperty(ns,"findIndex",{enumerable:!0,get:function(){return hsl.findIndex}});var msl=LPr();Object.defineProperty(ns,"first",{enumerable:!0,get:function(){return msl.first}});var Csl=VPr();Object.defineProperty(ns,"groupBy",{enumerable:!0,get:function(){return Csl.groupBy}});var _sl=JTt();Object.defineProperty(ns,"ignoreElements",{enumerable:!0,get:function(){return _sl.ignoreElements}});var ysl=WPr();Object.defineProperty(ns,"isEmpty",{enumerable:!0,get:function(){return ysl.isEmpty}});var bsl=OPr();Object.defineProperty(ns,"last",{enumerable:!0,get:function(){return bsl.last}});var Esl=mte();Object.defineProperty(ns,"map",{enumerable:!0,get:function(){return Esl.map}});var Ssl=KTt();Object.defineProperty(ns,"mapTo",{enumerable:!0,get:function(){return Ssl.mapTo}});var vsl=MPr();Object.defineProperty(ns,"materialize",{enumerable:!0,get:function(){return vsl.materialize}});var Bsl=HPr();Object.defineProperty(ns,"max",{enumerable:!0,get:function(){return Bsl.max}});var wsl=JPr();Object.defineProperty(ns,"merge",{enumerable:!0,get:function(){return wsl.merge}});var Tsl=rxe();Object.defineProperty(ns,"mergeAll",{enumerable:!0,get:function(){return Tsl.mergeAll}});var Rsl=YPr();Object.defineProperty(ns,"flatMap",{enumerable:!0,get:function(){return Rsl.flatMap}});var Nsl=oj();Object.defineProperty(ns,"mergeMap",{enumerable:!0,get:function(){return Nsl.mergeMap}});var Dsl=QPr();Object.defineProperty(ns,"mergeMapTo",{enumerable:!0,get:function(){return Dsl.mergeMapTo}});var ksl=XPr();Object.defineProperty(ns,"mergeScan",{enumerable:!0,get:function(){return ksl.mergeScan}});var xsl=UPr();Object.defineProperty(ns,"mergeWith",{enumerable:!0,get:function(){return xsl.mergeWith}});var Gsl=KPr();Object.defineProperty(ns,"min",{enumerable:!0,get:function(){return Gsl.min}});var Fsl=T8e();Object.defineProperty(ns,"multicast",{enumerable:!0,get:function(){return Fsl.multicast}});var Zsl=$ke();Object.defineProperty(ns,"observeOn",{enumerable:!0,get:function(){return Zsl.observeOn}});var Lsl=jPr();Object.defineProperty(ns,"onErrorResumeNext",{enumerable:!0,get:function(){return Lsl.onErrorResumeNext}});var Vsl=zPr();Object.defineProperty(ns,"pairwise",{enumerable:!0,get:function(){return Vsl.pairwise}});var Wsl=Bts();Object.defineProperty(ns,"partition",{enumerable:!0,get:function(){return Wsl.partition}});var Osl=qPr();Object.defineProperty(ns,"pluck",{enumerable:!0,get:function(){return Osl.pluck}});var Psl=$Pr();Object.defineProperty(ns,"publish",{enumerable:!0,get:function(){return Psl.publish}});var Msl=e3r();Object.defineProperty(ns,"publishBehavior",{enumerable:!0,get:function(){return Msl.publishBehavior}});var Hsl=t3r();Object.defineProperty(ns,"publishLast",{enumerable:!0,get:function(){return Hsl.publishLast}});var Ysl=r3r();Object.defineProperty(ns,"publishReplay",{enumerable:!0,get:function(){return Ysl.publishReplay}});var Qsl=wts();Object.defineProperty(ns,"race",{enumerable:!0,get:function(){return Qsl.race}});var Xsl=GRt();Object.defineProperty(ns,"raceWith",{enumerable:!0,get:function(){return Xsl.raceWith}});var Jsl=x_e();Object.defineProperty(ns,"reduce",{enumerable:!0,get:function(){return Jsl.reduce}});var Usl=n3r();Object.defineProperty(ns,"repeat",{enumerable:!0,get:function(){return Usl.repeat}});var Ksl=i3r();Object.defineProperty(ns,"repeatWhen",{enumerable:!0,get:function(){return Ksl.repeatWhen}});var jsl=s3r();Object.defineProperty(ns,"retry",{enumerable:!0,get:function(){return jsl.retry}});var zsl=o3r();Object.defineProperty(ns,"retryWhen",{enumerable:!0,get:function(){return zsl.retryWhen}});var qsl=owt();Object.defineProperty(ns,"refCount",{enumerable:!0,get:function(){return qsl.refCount}});var $sl=ORt();Object.defineProperty(ns,"sample",{enumerable:!0,get:function(){return $sl.sample}});var eol=a3r();Object.defineProperty(ns,"sampleTime",{enumerable:!0,get:function(){return eol.sampleTime}});var tol=c3r();Object.defineProperty(ns,"scan",{enumerable:!0,get:function(){return tol.scan}});var rol=l3r();Object.defineProperty(ns,"sequenceEqual",{enumerable:!0,get:function(){return rol.sequenceEqual}});var nol=YRt();Object.defineProperty(ns,"share",{enumerable:!0,get:function(){return nol.share}});var iol=g3r();Object.defineProperty(ns,"shareReplay",{enumerable:!0,get:function(){return iol.shareReplay}});var sol=A3r();Object.defineProperty(ns,"single",{enumerable:!0,get:function(){return sol.single}});var ool=d3r();Object.defineProperty(ns,"skip",{enumerable:!0,get:function(){return ool.skip}});var aol=p3r();Object.defineProperty(ns,"skipLast",{enumerable:!0,get:function(){return aol.skipLast}});var col=f3r();Object.defineProperty(ns,"skipUntil",{enumerable:!0,get:function(){return col.skipUntil}});var lol=I3r();Object.defineProperty(ns,"skipWhile",{enumerable:!0,get:function(){return lol.skipWhile}});var uol=h3r();Object.defineProperty(ns,"startWith",{enumerable:!0,get:function(){return uol.startWith}});var gol=exe();Object.defineProperty(ns,"subscribeOn",{enumerable:!0,get:function(){return gol.subscribeOn}});var Aol=m3r();Object.defineProperty(ns,"switchAll",{enumerable:!0,get:function(){return Aol.switchAll}});var dol=pxe();Object.defineProperty(ns,"switchMap",{enumerable:!0,get:function(){return dol.switchMap}});var pol=C3r();Object.defineProperty(ns,"switchMapTo",{enumerable:!0,get:function(){return pol.switchMapTo}});var fol=_3r();Object.defineProperty(ns,"switchScan",{enumerable:!0,get:function(){return fol.switchScan}});var Iol=uxe();Object.defineProperty(ns,"take",{enumerable:!0,get:function(){return Iol.take}});var hol=CRt();Object.defineProperty(ns,"takeLast",{enumerable:!0,get:function(){return hol.takeLast}});var mol=y3r();Object.defineProperty(ns,"takeUntil",{enumerable:!0,get:function(){return mol.takeUntil}});var Col=b3r();Object.defineProperty(ns,"takeWhile",{enumerable:!0,get:function(){return Col.takeWhile}});var _ol=E3r();Object.defineProperty(ns,"tap",{enumerable:!0,get:function(){return _ol.tap}});var yol=oNt();Object.defineProperty(ns,"throttle",{enumerable:!0,get:function(){return yol.throttle}});var bol=S3r();Object.defineProperty(ns,"throttleTime",{enumerable:!0,get:function(){return bol.throttleTime}});var Eol=gxe();Object.defineProperty(ns,"throwIfEmpty",{enumerable:!0,get:function(){return Eol.throwIfEmpty}});var Sol=v3r();Object.defineProperty(ns,"timeInterval",{enumerable:!0,get:function(){return Sol.timeInterval}});var vol=E8e();Object.defineProperty(ns,"timeout",{enumerable:!0,get:function(){return vol.timeout}});var Bol=B3r();Object.defineProperty(ns,"timeoutWith",{enumerable:!0,get:function(){return Bol.timeoutWith}});var wol=w3r();Object.defineProperty(ns,"timestamp",{enumerable:!0,get:function(){return wol.timestamp}});var Tol=DTt();Object.defineProperty(ns,"toArray",{enumerable:!0,get:function(){return Tol.toArray}});var Rol=T3r();Object.defineProperty(ns,"window",{enumerable:!0,get:function(){return Rol.window}});var Nol=R3r();Object.defineProperty(ns,"windowCount",{enumerable:!0,get:function(){return Nol.windowCount}});var Dol=N3r();Object.defineProperty(ns,"windowTime",{enumerable:!0,get:function(){return Dol.windowTime}});var kol=k3r();Object.defineProperty(ns,"windowToggle",{enumerable:!0,get:function(){return kol.windowToggle}});var xol=x3r();Object.defineProperty(ns,"windowWhen",{enumerable:!0,get:function(){return xol.windowWhen}});var Gol=G3r();Object.defineProperty(ns,"withLatestFrom",{enumerable:!0,get:function(){return Gol.withLatestFrom}});var Fol=Z3r();Object.defineProperty(ns,"zip",{enumerable:!0,get:function(){return Fol.zip}});var Zol=F3r();Object.defineProperty(ns,"zipAll",{enumerable:!0,get:function(){return Zol.zipAll}});var Lol=L3r();Object.defineProperty(ns,"zipWith",{enumerable:!0,get:function(){return Lol.zipWith}})});var EHr=H(s6e=>{"use strict";Object.defineProperty(s6e,"__esModule",{value:!0});s6e.InvalidInputOptions=void 0;s6e.validateOptionsWithSchema=Vol;var Nts=O2(),Rts=tE(),bHr=Tts(),Skt=class extends Nts.schema.SchemaValidationException{constructor(t,r){super(r,`Schematic input does not validate against the Schema: ${JSON.stringify(t)} + `);return}try{if(await l(["init"]),await l(["add","."]),r.commit){let I=r.message||"initial commit";await l(["commit",`-m "${I}"`])}n.logger.info("Successfully initialized git.")}catch{}}}});var Sts=H(SHr=>{"use strict";Object.defineProperty(SHr,"__esModule",{value:!0});SHr.default=psl;function psl(){return(e,t)=>{if(!e?.name)throw new Error("RunSchematicTask requires an options object with a non-empty name property.");let r=t.engine.workflow,n=e.collection||t.schematic.collection.description.name;if(!r)throw new Error("Need Workflow to support executing schematics as post tasks.");return r.execute({collection:n,schematic:e.name,options:e.options,allowPrivate:n==t.schematic.collection.description.name})}}});var vts=H(hj=>{"use strict";var fsl=hj&&hj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Isl=hj&&hj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),vHr=hj&&hj.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aPromise.resolve().then(()=>vHr(bts())).then(r=>r.default(t))};static RepositoryInitializer={name:msl.RepositoryInitializerName,create:t=>Promise.resolve().then(()=>vHr(Ets())).then(r=>r.default(t))};static RunSchematic={name:Csl.RunSchematicName,create:()=>Promise.resolve().then(()=>vHr(Sts())).then(t=>t.default())}};hj.BuiltinTaskExecutor=BHr});var bkt=H(Xxe=>{"use strict";Object.defineProperty(Xxe,"__esModule",{value:!0});Xxe.NodeModulesEngineHost=Xxe.NodePackageDoesNotSupportSchematics=void 0;var _sl=P2(),Qxe=Et("path"),ysl=okt(),_kt=ukt(),bsl=gHr(),ykt=class extends _sl.BaseException{constructor(t){super(`Package ${JSON.stringify(t)} was found but does not support schematics.`)}};Xxe.NodePackageDoesNotSupportSchematics=ykt;var wHr=class extends _kt.FileSystemEngineHostBase{paths;constructor(t){super(),this.paths=t}resolve(t,r,n=new Set){if(r){if(n.has(r))throw n.add(r),new Error("Circular schematic reference detected: "+JSON.stringify(Array.from(n)));n.add(r)}let a=r?(0,Qxe.dirname)(r):process.cwd(),o;t.startsWith(".")&&(t=(0,Qxe.resolve)(a,t));let l={paths:r?[(0,Qxe.dirname)(r),...this.paths||[]]:this.paths};try{let A=Et.resolve((0,Qxe.join)(t,"package.json"),l),{schematics:f}=Et(A);if(!f||typeof f!="string")throw new ykt(t);if(f.startsWith(".")){let I=(0,Qxe.dirname)(A);o=(0,Qxe.resolve)(I,f)}else o=this.resolve(f,A,n)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)try{o=Et.resolve(t,l)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)throw new _kt.CollectionCannotBeResolvedException(t);return o}_resolveCollectionPath(t,r){let n=this.resolve(t,r);return(0,bsl.readJsonFile)(n),n}_resolveReferenceString(t,r,n){let a=new ysl.ExportStringRef(t,r);return a.ref?{ref:a.ref,path:a.module}:null}_transformCollectionDescription(t,r){if(!r.schematics||typeof r.schematics!="object")throw new _kt.CollectionMissingSchematicsMapException(t);return{...r,name:t}}_transformSchematicDescription(t,r,n){if(!n.factoryFn||!n.path||!n.description)throw new _kt.SchematicMissingFieldsException(t);return n}};Xxe.NodeModulesEngineHost=wHr});var wts=H(Ekt=>{"use strict";Object.defineProperty(Ekt,"__esModule",{value:!0});Ekt.partition=void 0;var Esl=uPr(),Bts=_te();function Ssl(e,t){return function(r){return[Bts.filter(e,t)(r),Bts.filter(Esl.not(e,t))(r)]}}Ekt.partition=Ssl});var Tts=H(Iue=>{"use strict";var vsl=Iue&&Iue.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Bsl=Iue&&Iue.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.mergeAll=ns.merge=ns.max=ns.materialize=ns.mapTo=ns.map=ns.last=ns.isEmpty=ns.ignoreElements=ns.groupBy=ns.first=ns.findIndex=ns.find=ns.finalize=ns.filter=ns.expand=ns.exhaustMap=ns.exhaustAll=ns.exhaust=ns.every=ns.endWith=ns.elementAt=ns.distinctUntilKeyChanged=ns.distinctUntilChanged=ns.distinct=ns.dematerialize=ns.delayWhen=ns.delay=ns.defaultIfEmpty=ns.debounceTime=ns.debounce=ns.count=ns.connect=ns.concatWith=ns.concatMapTo=ns.concatMap=ns.concatAll=ns.concat=ns.combineLatestWith=ns.combineLatest=ns.combineLatestAll=ns.combineAll=ns.catchError=ns.bufferWhen=ns.bufferToggle=ns.bufferTime=ns.bufferCount=ns.buffer=ns.auditTime=ns.audit=void 0;ns.timeInterval=ns.throwIfEmpty=ns.throttleTime=ns.throttle=ns.tap=ns.takeWhile=ns.takeUntil=ns.takeLast=ns.take=ns.switchScan=ns.switchMapTo=ns.switchMap=ns.switchAll=ns.subscribeOn=ns.startWith=ns.skipWhile=ns.skipUntil=ns.skipLast=ns.skip=ns.single=ns.shareReplay=ns.share=ns.sequenceEqual=ns.scan=ns.sampleTime=ns.sample=ns.refCount=ns.retryWhen=ns.retry=ns.repeatWhen=ns.repeat=ns.reduce=ns.raceWith=ns.race=ns.publishReplay=ns.publishLast=ns.publishBehavior=ns.publish=ns.pluck=ns.partition=ns.pairwise=ns.onErrorResumeNext=ns.observeOn=ns.multicast=ns.min=ns.mergeWith=ns.mergeScan=ns.mergeMapTo=ns.mergeMap=ns.flatMap=void 0;ns.zipWith=ns.zipAll=ns.zip=ns.withLatestFrom=ns.windowWhen=ns.windowToggle=ns.windowTime=ns.windowCount=ns.window=ns.toArray=ns.timestamp=ns.timeoutWith=ns.timeout=void 0;var Nsl=ETt();Object.defineProperty(ns,"audit",{enumerable:!0,get:function(){return Nsl.audit}});var Dsl=APr();Object.defineProperty(ns,"auditTime",{enumerable:!0,get:function(){return Dsl.auditTime}});var ksl=dPr();Object.defineProperty(ns,"buffer",{enumerable:!0,get:function(){return ksl.buffer}});var xsl=fPr();Object.defineProperty(ns,"bufferCount",{enumerable:!0,get:function(){return xsl.bufferCount}});var Gsl=IPr();Object.defineProperty(ns,"bufferTime",{enumerable:!0,get:function(){return Gsl.bufferTime}});var Fsl=mPr();Object.defineProperty(ns,"bufferToggle",{enumerable:!0,get:function(){return Fsl.bufferToggle}});var Zsl=CPr();Object.defineProperty(ns,"bufferWhen",{enumerable:!0,get:function(){return Zsl.bufferWhen}});var Lsl=_Pr();Object.defineProperty(ns,"catchError",{enumerable:!0,get:function(){return Lsl.catchError}});var Vsl=EPr();Object.defineProperty(ns,"combineAll",{enumerable:!0,get:function(){return Vsl.combineAll}});var Wsl=GTt();Object.defineProperty(ns,"combineLatestAll",{enumerable:!0,get:function(){return Wsl.combineLatestAll}});var Osl=SPr();Object.defineProperty(ns,"combineLatest",{enumerable:!0,get:function(){return Osl.combineLatest}});var Psl=vPr();Object.defineProperty(ns,"combineLatestWith",{enumerable:!0,get:function(){return Psl.combineLatestWith}});var Msl=wPr();Object.defineProperty(ns,"concat",{enumerable:!0,get:function(){return Msl.concat}});var Hsl=E8e();Object.defineProperty(ns,"concatAll",{enumerable:!0,get:function(){return Hsl.concatAll}});var Ysl=LTt();Object.defineProperty(ns,"concatMap",{enumerable:!0,get:function(){return Ysl.concatMap}});var Qsl=BPr();Object.defineProperty(ns,"concatMapTo",{enumerable:!0,get:function(){return Qsl.concatMapTo}});var Xsl=TPr();Object.defineProperty(ns,"concatWith",{enumerable:!0,get:function(){return Xsl.concatWith}});var Jsl=B8e();Object.defineProperty(ns,"connect",{enumerable:!0,get:function(){return Jsl.connect}});var Usl=RPr();Object.defineProperty(ns,"count",{enumerable:!0,get:function(){return Usl.count}});var Ksl=NPr();Object.defineProperty(ns,"debounce",{enumerable:!0,get:function(){return Ksl.debounce}});var jsl=DPr();Object.defineProperty(ns,"debounceTime",{enumerable:!0,get:function(){return jsl.debounceTime}});var zsl=lxe();Object.defineProperty(ns,"defaultIfEmpty",{enumerable:!0,get:function(){return zsl.defaultIfEmpty}});var qsl=kPr();Object.defineProperty(ns,"delay",{enumerable:!0,get:function(){return qsl.delay}});var $sl=zTt();Object.defineProperty(ns,"delayWhen",{enumerable:!0,get:function(){return $sl.delayWhen}});var eol=xPr();Object.defineProperty(ns,"dematerialize",{enumerable:!0,get:function(){return eol.dematerialize}});var tol=GPr();Object.defineProperty(ns,"distinct",{enumerable:!0,get:function(){return tol.distinct}});var rol=rRt();Object.defineProperty(ns,"distinctUntilChanged",{enumerable:!0,get:function(){return rol.distinctUntilChanged}});var nol=FPr();Object.defineProperty(ns,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return nol.distinctUntilKeyChanged}});var iol=ZPr();Object.defineProperty(ns,"elementAt",{enumerable:!0,get:function(){return iol.elementAt}});var sol=LPr();Object.defineProperty(ns,"endWith",{enumerable:!0,get:function(){return sol.endWith}});var ool=VPr();Object.defineProperty(ns,"every",{enumerable:!0,get:function(){return ool.every}});var aol=WPr();Object.defineProperty(ns,"exhaust",{enumerable:!0,get:function(){return aol.exhaust}});var col=uRt();Object.defineProperty(ns,"exhaustAll",{enumerable:!0,get:function(){return col.exhaustAll}});var lol=cRt();Object.defineProperty(ns,"exhaustMap",{enumerable:!0,get:function(){return lol.exhaustMap}});var uol=OPr();Object.defineProperty(ns,"expand",{enumerable:!0,get:function(){return uol.expand}});var gol=_te();Object.defineProperty(ns,"filter",{enumerable:!0,get:function(){return gol.filter}});var Aol=PPr();Object.defineProperty(ns,"finalize",{enumerable:!0,get:function(){return Aol.finalize}});var dol=pRt();Object.defineProperty(ns,"find",{enumerable:!0,get:function(){return dol.find}});var pol=MPr();Object.defineProperty(ns,"findIndex",{enumerable:!0,get:function(){return pol.findIndex}});var fol=HPr();Object.defineProperty(ns,"first",{enumerable:!0,get:function(){return fol.first}});var Iol=YPr();Object.defineProperty(ns,"groupBy",{enumerable:!0,get:function(){return Iol.groupBy}});var hol=JTt();Object.defineProperty(ns,"ignoreElements",{enumerable:!0,get:function(){return hol.ignoreElements}});var mol=QPr();Object.defineProperty(ns,"isEmpty",{enumerable:!0,get:function(){return mol.isEmpty}});var Col=XPr();Object.defineProperty(ns,"last",{enumerable:!0,get:function(){return Col.last}});var _ol=Cte();Object.defineProperty(ns,"map",{enumerable:!0,get:function(){return _ol.map}});var yol=KTt();Object.defineProperty(ns,"mapTo",{enumerable:!0,get:function(){return yol.mapTo}});var bol=UPr();Object.defineProperty(ns,"materialize",{enumerable:!0,get:function(){return bol.materialize}});var Eol=KPr();Object.defineProperty(ns,"max",{enumerable:!0,get:function(){return Eol.max}});var Sol=$Pr();Object.defineProperty(ns,"merge",{enumerable:!0,get:function(){return Sol.merge}});var vol=rxe();Object.defineProperty(ns,"mergeAll",{enumerable:!0,get:function(){return vol.mergeAll}});var Bol=jPr();Object.defineProperty(ns,"flatMap",{enumerable:!0,get:function(){return Bol.flatMap}});var wol=aj();Object.defineProperty(ns,"mergeMap",{enumerable:!0,get:function(){return wol.mergeMap}});var Tol=zPr();Object.defineProperty(ns,"mergeMapTo",{enumerable:!0,get:function(){return Tol.mergeMapTo}});var Rol=qPr();Object.defineProperty(ns,"mergeScan",{enumerable:!0,get:function(){return Rol.mergeScan}});var Nol=e3r();Object.defineProperty(ns,"mergeWith",{enumerable:!0,get:function(){return Nol.mergeWith}});var Dol=t3r();Object.defineProperty(ns,"min",{enumerable:!0,get:function(){return Dol.min}});var kol=w8e();Object.defineProperty(ns,"multicast",{enumerable:!0,get:function(){return kol.multicast}});var xol=$ke();Object.defineProperty(ns,"observeOn",{enumerable:!0,get:function(){return xol.observeOn}});var Gol=r3r();Object.defineProperty(ns,"onErrorResumeNext",{enumerable:!0,get:function(){return Gol.onErrorResumeNext}});var Fol=n3r();Object.defineProperty(ns,"pairwise",{enumerable:!0,get:function(){return Fol.pairwise}});var Zol=wts();Object.defineProperty(ns,"partition",{enumerable:!0,get:function(){return Zol.partition}});var Lol=i3r();Object.defineProperty(ns,"pluck",{enumerable:!0,get:function(){return Lol.pluck}});var Vol=s3r();Object.defineProperty(ns,"publish",{enumerable:!0,get:function(){return Vol.publish}});var Wol=o3r();Object.defineProperty(ns,"publishBehavior",{enumerable:!0,get:function(){return Wol.publishBehavior}});var Ool=a3r();Object.defineProperty(ns,"publishLast",{enumerable:!0,get:function(){return Ool.publishLast}});var Pol=c3r();Object.defineProperty(ns,"publishReplay",{enumerable:!0,get:function(){return Pol.publishReplay}});var Mol=Tts();Object.defineProperty(ns,"race",{enumerable:!0,get:function(){return Mol.race}});var Hol=GRt();Object.defineProperty(ns,"raceWith",{enumerable:!0,get:function(){return Hol.raceWith}});var Yol=x_e();Object.defineProperty(ns,"reduce",{enumerable:!0,get:function(){return Yol.reduce}});var Qol=l3r();Object.defineProperty(ns,"repeat",{enumerable:!0,get:function(){return Qol.repeat}});var Xol=u3r();Object.defineProperty(ns,"repeatWhen",{enumerable:!0,get:function(){return Xol.repeatWhen}});var Jol=g3r();Object.defineProperty(ns,"retry",{enumerable:!0,get:function(){return Jol.retry}});var Uol=A3r();Object.defineProperty(ns,"retryWhen",{enumerable:!0,get:function(){return Uol.retryWhen}});var Kol=owt();Object.defineProperty(ns,"refCount",{enumerable:!0,get:function(){return Kol.refCount}});var jol=ORt();Object.defineProperty(ns,"sample",{enumerable:!0,get:function(){return jol.sample}});var zol=d3r();Object.defineProperty(ns,"sampleTime",{enumerable:!0,get:function(){return zol.sampleTime}});var qol=p3r();Object.defineProperty(ns,"scan",{enumerable:!0,get:function(){return qol.scan}});var $ol=f3r();Object.defineProperty(ns,"sequenceEqual",{enumerable:!0,get:function(){return $ol.sequenceEqual}});var eal=YRt();Object.defineProperty(ns,"share",{enumerable:!0,get:function(){return eal.share}});var tal=h3r();Object.defineProperty(ns,"shareReplay",{enumerable:!0,get:function(){return tal.shareReplay}});var ral=m3r();Object.defineProperty(ns,"single",{enumerable:!0,get:function(){return ral.single}});var nal=C3r();Object.defineProperty(ns,"skip",{enumerable:!0,get:function(){return nal.skip}});var ial=_3r();Object.defineProperty(ns,"skipLast",{enumerable:!0,get:function(){return ial.skipLast}});var sal=y3r();Object.defineProperty(ns,"skipUntil",{enumerable:!0,get:function(){return sal.skipUntil}});var oal=b3r();Object.defineProperty(ns,"skipWhile",{enumerable:!0,get:function(){return oal.skipWhile}});var aal=E3r();Object.defineProperty(ns,"startWith",{enumerable:!0,get:function(){return aal.startWith}});var cal=exe();Object.defineProperty(ns,"subscribeOn",{enumerable:!0,get:function(){return cal.subscribeOn}});var lal=S3r();Object.defineProperty(ns,"switchAll",{enumerable:!0,get:function(){return lal.switchAll}});var ual=pxe();Object.defineProperty(ns,"switchMap",{enumerable:!0,get:function(){return ual.switchMap}});var gal=v3r();Object.defineProperty(ns,"switchMapTo",{enumerable:!0,get:function(){return gal.switchMapTo}});var Aal=B3r();Object.defineProperty(ns,"switchScan",{enumerable:!0,get:function(){return Aal.switchScan}});var dal=uxe();Object.defineProperty(ns,"take",{enumerable:!0,get:function(){return dal.take}});var pal=CRt();Object.defineProperty(ns,"takeLast",{enumerable:!0,get:function(){return pal.takeLast}});var fal=w3r();Object.defineProperty(ns,"takeUntil",{enumerable:!0,get:function(){return fal.takeUntil}});var Ial=T3r();Object.defineProperty(ns,"takeWhile",{enumerable:!0,get:function(){return Ial.takeWhile}});var hal=R3r();Object.defineProperty(ns,"tap",{enumerable:!0,get:function(){return hal.tap}});var mal=oNt();Object.defineProperty(ns,"throttle",{enumerable:!0,get:function(){return mal.throttle}});var Cal=N3r();Object.defineProperty(ns,"throttleTime",{enumerable:!0,get:function(){return Cal.throttleTime}});var _al=gxe();Object.defineProperty(ns,"throwIfEmpty",{enumerable:!0,get:function(){return _al.throwIfEmpty}});var yal=D3r();Object.defineProperty(ns,"timeInterval",{enumerable:!0,get:function(){return yal.timeInterval}});var bal=b8e();Object.defineProperty(ns,"timeout",{enumerable:!0,get:function(){return bal.timeout}});var Eal=k3r();Object.defineProperty(ns,"timeoutWith",{enumerable:!0,get:function(){return Eal.timeoutWith}});var Sal=x3r();Object.defineProperty(ns,"timestamp",{enumerable:!0,get:function(){return Sal.timestamp}});var val=DTt();Object.defineProperty(ns,"toArray",{enumerable:!0,get:function(){return val.toArray}});var Bal=G3r();Object.defineProperty(ns,"window",{enumerable:!0,get:function(){return Bal.window}});var wal=F3r();Object.defineProperty(ns,"windowCount",{enumerable:!0,get:function(){return wal.windowCount}});var Tal=Z3r();Object.defineProperty(ns,"windowTime",{enumerable:!0,get:function(){return Tal.windowTime}});var Ral=V3r();Object.defineProperty(ns,"windowToggle",{enumerable:!0,get:function(){return Ral.windowToggle}});var Nal=W3r();Object.defineProperty(ns,"windowWhen",{enumerable:!0,get:function(){return Nal.windowWhen}});var Dal=O3r();Object.defineProperty(ns,"withLatestFrom",{enumerable:!0,get:function(){return Dal.withLatestFrom}});var kal=M3r();Object.defineProperty(ns,"zip",{enumerable:!0,get:function(){return kal.zip}});var xal=P3r();Object.defineProperty(ns,"zipAll",{enumerable:!0,get:function(){return xal.zipAll}});var Gal=H3r();Object.defineProperty(ns,"zipWith",{enumerable:!0,get:function(){return Gal.zipWith}})});var RHr=H(i6e=>{"use strict";Object.defineProperty(i6e,"__esModule",{value:!0});i6e.InvalidInputOptions=void 0;i6e.validateOptionsWithSchema=Fal;var Dts=P2(),Nts=rE(),THr=Rts(),Skt=class extends Dts.schema.SchemaValidationException{constructor(t,r){super(r,`Schematic input does not validate against the Schema: ${JSON.stringify(t)} Errors: -`)}};s6e.InvalidInputOptions=Skt;function Vol(e){return(t,r,n)=>{r=(0,Nts.deepCopy)(r);let a=n?n.interactive:!0;return t.schema&&t.schemaJson?(0,Rts.from)(e.compile(t.schemaJson)).pipe((0,bHr.mergeMap)(o=>o(r,{withPrompts:a})),(0,bHr.first)(),(0,bHr.map)(o=>{if(!o.success)throw new Skt(r,o.errors||[]);return r})):(0,Rts.of)(r)}}});var Dts=H(Bkt=>{"use strict";Object.defineProperty(Bkt,"__esModule",{value:!0});Bkt.NodeWorkflow=void 0;var vkt=O2(),Wol=XDt(),Ool=Hxe(),SHr=Sts(),Pol=bkt(),Mol=EHr(),vHr=class extends Ool.workflow.BaseWorkflow{constructor(t,r){let n,a;typeof t=="string"?(a=(0,vkt.normalize)(t),n=new vkt.virtualFs.ScopedHost(new Wol.NodeJsSyncHost,a)):(n=t,a=r.root);let o=r.engineHostCreator?.(r)||new Pol.NodeModulesEngineHost(r.resolvePaths);if(super({host:n,engineHost:o,force:r.force,dryRun:r.dryRun,registry:r.registry}),o.registerTaskExecutor(SHr.BuiltinTaskExecutor.NodePackage,{allowPackageManagerOverride:!0,packageManager:r.packageManager,force:r.packageManagerForce,rootDirectory:a&&(0,vkt.getSystemPath)(a),registry:r.packageRegistry}),o.registerTaskExecutor(SHr.BuiltinTaskExecutor.RepositoryInitializer,{rootDirectory:a&&(0,vkt.getSystemPath)(a)}),o.registerTaskExecutor(SHr.BuiltinTaskExecutor.RunSchematic),r.optionTransforms)for(let l of r.optionTransforms)o.registerOptionsTransform(l);r.schemaValidation&&o.registerOptionsTransform((0,Mol.validateOptionsWithSchema)(this.registry)),this._context=[]}get engine(){return this._engine}get engineHost(){return this._engineHost}};Bkt.NodeWorkflow=vHr});var kts=H(hj=>{"use strict";var Hol=hj&&hj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Yol=hj&&hj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Qol=hj&&hj.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aQol(Et(n))).then(n=>(n.default?.default||n.default)())).pipe((0,wHr.catchError)(()=>(0,wHr.throwError)(()=>new Xol.UnregisteredTaskException(t))))}catch{}return super.createTaskExecutor(t)}};hj.FileSystemEngineHost=THr});var xts=H(Rkt=>{"use strict";Object.defineProperty(Rkt,"__esModule",{value:!0});Rkt.NodeModulesTestEngineHost=void 0;var Uol=bkt(),RHr=class extends Uol.NodeModulesEngineHost{#e=new Map;#t=[];get tasks(){return this.#t}clearTasks(){this.#t=[]}registerCollection(t,r){this.#e.set(t,r)}transformContext(t){let r=t.addTask.bind(t);return t.addTask=(n,a)=>(this.#t.push(n.toConfiguration()),r(n,a)),t}_resolveCollectionPath(t,r){return this.#e.get(t)??super._resolveCollectionPath(t,r)}};Rkt.NodeModulesTestEngineHost=RHr});var Fts=H(ET=>{"use strict";var Kol=ET&&ET.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Nkt=ET&&ET.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Kol(t,e,r)};Object.defineProperty(ET,"__esModule",{value:!0});ET.validateOptionsWithSchema=ET.NodeModulesTestEngineHost=ET.NodePackageDoesNotSupportSchematics=ET.NodeModulesEngineHost=ET.FileSystemEngineHost=void 0;Nkt(Qes(),ET);Nkt(okt(),ET);Nkt(ukt(),ET);Nkt(Dts(),ET);var jol=kts();Object.defineProperty(ET,"FileSystemEngineHost",{enumerable:!0,get:function(){return jol.FileSystemEngineHost}});var Gts=bkt();Object.defineProperty(ET,"NodeModulesEngineHost",{enumerable:!0,get:function(){return Gts.NodeModulesEngineHost}});Object.defineProperty(ET,"NodePackageDoesNotSupportSchematics",{enumerable:!0,get:function(){return Gts.NodePackageDoesNotSupportSchematics}});var zol=xts();Object.defineProperty(ET,"NodeModulesTestEngineHost",{enumerable:!0,get:function(){return zol.NodeModulesTestEngineHost}});var qol=EHr();Object.defineProperty(ET,"validateOptionsWithSchema",{enumerable:!0,get:function(){return qol.validateOptionsWithSchema}})});var xkt=H(kHr=>{"use strict";Object.defineProperty(kHr,"__esModule",{value:!0});kHr.checkRequirements=nal;var tal=(Wa(),vi(Va)),ral=tal.__importDefault(Et("os"));function nal({stdout:e}){if(ral.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!e.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}});var zts=H(Gkt=>{"use strict";Object.defineProperty(Gkt,"__esModule",{value:!0});function o6e(e){let t=[...e.caches],r=t.shift();return r===void 0?jts():{get(n,a,o={miss:()=>Promise.resolve()}){return r.get(n,a,o).catch(()=>o6e({caches:t}).get(n,a,o))},set(n,a){return r.set(n,a).catch(()=>o6e({caches:t}).set(n,a))},delete(n){return r.delete(n).catch(()=>o6e({caches:t}).delete(n))},clear(){return r.clear().catch(()=>o6e({caches:t}).clear())}}}function jts(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}Gkt.createFallbackableCache=o6e;Gkt.createNullCache=jts});var xHr=H((aju,qts)=>{qts.exports=zts()});var $ts=H(GHr=>{"use strict";Object.defineProperty(GHr,"__esModule",{value:!0});function ial(e={serializable:!0}){let t={};return{get(r,n,a={miss:()=>Promise.resolve()}){let o=JSON.stringify(r);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);let l=n(),A=a&&a.miss||(()=>Promise.resolve());return l.then(f=>A(f)).then(()=>l)},set(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}GHr.createInMemoryCache=ial});var FHr=H((lju,ers)=>{ers.exports=$ts()});var rrs=H(Y4=>{"use strict";Object.defineProperty(Y4,"__esModule",{value:!0});function sal(e,t,r){let n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===ZHr.WithinHeaders?n:{}},queryParameters(){return e===ZHr.WithinQueryParameters?n:{}}}}function oal(e){let t=0,r=()=>(t++,new Promise(n=>{setTimeout(()=>{n(e(r))},Math.min(100*t,1e3))}));return e(r)}function trs(e,t=(r,n)=>Promise.resolve()){return Object.assign(e,{wait(r){return trs(e.then(n=>Promise.all([t(n,r),n])).then(n=>n[1]))}})}function aal(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function cal(e,t){return t&&Object.keys(t).forEach(r=>{e[r]=t[r](e)}),e}function lal(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var ual="4.24.0",gal=e=>()=>e.transporter.requester.destroy(),ZHr={WithinQueryParameters:0,WithinHeaders:1};Y4.AuthMode=ZHr;Y4.addMethods=cal;Y4.createAuth=sal;Y4.createRetryablePromise=oal;Y4.createWaitablePromise=trs;Y4.destroy=gal;Y4.encode=lal;Y4.shuffle=aal;Y4.version=ual});var Jxe=H((gju,nrs)=>{nrs.exports=rrs()});var irs=H(LHr=>{"use strict";Object.defineProperty(LHr,"__esModule",{value:!0});var Aal={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};LHr.MethodEnum=Aal});var Uxe=H((dju,srs)=>{srs.exports=irs()});var _rs=H($v=>{"use strict";Object.defineProperty($v,"__esModule",{value:!0});var ars=Uxe();function VHr(e,t){let r=e||{},n=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(n[a]=r[a])}),{data:Object.entries(n).length>0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var a6e={Read:1,Write:2,Any:3},Kxe={Up:1,Down:2,Timeouted:3},crs=2*60*1e3;function OHr(e,t=Kxe.Up){return{...e,status:t,lastUpdate:Date.now()}}function lrs(e){return e.status===Kxe.Up||Date.now()-e.lastUpdate>crs}function urs(e){return e.status===Kxe.Timeouted&&Date.now()-e.lastUpdate<=crs}function PHr(e){return typeof e=="string"?{protocol:"https",url:e,accept:a6e.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||a6e.Any}}function dal(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(OHr(r))))).then(r=>{let n=r.filter(A=>lrs(A)),a=r.filter(A=>urs(A)),o=[...n,...a],l=o.length>0?o.map(A=>PHr(A)):t;return{getTimeout(A,f){return(a.length===0&&A===0?1:a.length+3+A)*f},statelessHosts:l}})}var pal=({isTimedOut:e,status:t})=>!e&&~~t===0,fal=e=>{let t=e.status;return e.isTimedOut||pal(e)||~~(t/100)!==2&&~~(t/100)!==4},Ial=({status:e})=>~~(e/100)===2,hal=(e,t)=>fal(e)?t.onRetry(e):Ial(e)?t.onSuccess(e):t.onFail(e);function ors(e,t,r,n){let a=[],o=frs(r,n),l=Irs(e,n),A=r.method,f=r.method!==ars.MethodEnum.Get?{}:{...r.data,...n.data},I={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...f,...n.queryParameters},C=0,b=(E,N)=>{let B=E.pop();if(B===void 0)throw Crs(WHr(a));let F={data:o,headers:l,method:A,url:drs(B,r.path,I),connectTimeout:N(C,e.timeouts.connect),responseTimeout:N(C,n.timeout)},Q=ae=>{let ne={request:F,response:ae,host:B,triesLeft:E.length};return a.push(ne),ne},J={onSuccess:ae=>grs(ae),onRetry(ae){let ne=Q(ae);return ae.isTimedOut&&C++,Promise.all([e.logger.info("Retryable failure",MHr(ne)),e.hostsCache.set(B,OHr(B,ae.isTimedOut?Kxe.Timeouted:Kxe.Down))]).then(()=>b(E,N))},onFail(ae){throw Q(ae),Ars(ae,WHr(a))}};return e.requester.send(F).then(ae=>hal(ae,J))};return dal(e.hostsCache,t).then(E=>b([...E.statelessHosts].reverse(),E.getTimeout))}function mal(e){let{hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,hosts:f,queryParameters:I,headers:C}=e,b={hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,headers:C,queryParameters:I,hosts:f.map(E=>PHr(E)),read(E,N){let B=VHr(N,b.timeouts.read),F=()=>ors(b,b.hosts.filter(ae=>(ae.accept&a6e.Read)!==0),E,B);if((B.cacheable!==void 0?B.cacheable:E.cacheable)!==!0)return F();let J={request:E,mappedRequestOptions:B,transporter:{queryParameters:b.queryParameters,headers:b.headers}};return b.responsesCache.get(J,()=>b.requestsCache.get(J,()=>b.requestsCache.set(J,F()).then(ae=>Promise.all([b.requestsCache.delete(J),ae]),ae=>Promise.all([b.requestsCache.delete(J),Promise.reject(ae)])).then(([ae,ne])=>ne)),{miss:ae=>b.responsesCache.set(J,ae)})},write(E,N){return ors(b,b.hosts.filter(B=>(B.accept&a6e.Write)!==0),E,VHr(N,b.timeouts.write))}};return b}function Cal(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let n=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(n)===-1&&(t.value=`${t.value}${n}`),t}};return t}function grs(e){try{return JSON.parse(e.content)}catch(t){throw mrs(t.message,e)}}function Ars({content:e,status:t},r){let n=e;try{n=JSON.parse(e).message}catch{}return hrs(n,t,r)}function _al(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function drs(e,t,r){let n=prs(r),a=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return n.length&&(a+=`?${n}`),a}function prs(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>_al("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function frs(e,t){if(e.method===ars.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function Irs(e,t){let r={...e.headers,...t.headers},n={};return Object.keys(r).forEach(a=>{let o=r[a];n[a.toLowerCase()]=o}),n}function WHr(e){return e.map(t=>MHr(t))}function MHr(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function hrs(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function mrs(e,t){return{name:"DeserializationError",message:e,response:t}}function Crs(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:e}}$v.CallEnum=a6e;$v.HostStatusEnum=Kxe;$v.createApiError=hrs;$v.createDeserializationError=mrs;$v.createMappedRequestOptions=VHr;$v.createRetryError=Crs;$v.createStatefulHost=OHr;$v.createStatelessHost=PHr;$v.createTransporter=mal;$v.createUserAgent=Cal;$v.deserializeFailure=Ars;$v.deserializeSuccess=grs;$v.isStatefulHostTimeouted=urs;$v.isStatefulHostUp=lrs;$v.serializeData=frs;$v.serializeHeaders=Irs;$v.serializeQueryParameters=prs;$v.serializeUrl=drs;$v.stackFrameWithoutCredentials=MHr;$v.stackTraceWithoutCredentials=WHr});var jxe=H((fju,yrs)=>{yrs.exports=_rs()});var brs=H(Iue=>{"use strict";Object.defineProperty(Iue,"__esModule",{value:!0});var zxe=Jxe(),yal=jxe(),c6e=Uxe(),bal=e=>{let t=e.region||"us",r=zxe.createAuth(zxe.AuthMode.WithinHeaders,e.appId,e.apiKey),n=yal.createTransporter({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a=e.appId;return zxe.addMethods({appId:a,transporter:n},e.methods)},Eal=e=>(t,r)=>e.transporter.write({method:c6e.MethodEnum.Post,path:"2/abtests",data:t},r),Sal=e=>(t,r)=>e.transporter.write({method:c6e.MethodEnum.Delete,path:zxe.encode("2/abtests/%s",t)},r),val=e=>(t,r)=>e.transporter.read({method:c6e.MethodEnum.Get,path:zxe.encode("2/abtests/%s",t)},r),Bal=e=>t=>e.transporter.read({method:c6e.MethodEnum.Get,path:"2/abtests"},t),wal=e=>(t,r)=>e.transporter.write({method:c6e.MethodEnum.Post,path:zxe.encode("2/abtests/%s/stop",t)},r);Iue.addABTest=Eal;Iue.createAnalyticsClient=bal;Iue.deleteABTest=Sal;Iue.getABTest=val;Iue.getABTests=Bal;Iue.stopABTest=wal});var Srs=H((hju,Ers)=>{Ers.exports=brs()});var Brs=H(l6e=>{"use strict";Object.defineProperty(l6e,"__esModule",{value:!0});var HHr=Jxe(),Tal=jxe(),vrs=Uxe(),Ral=e=>{let t=e.region||"us",r=HHr.createAuth(HHr.AuthMode.WithinHeaders,e.appId,e.apiKey),n=Tal.createTransporter({hosts:[{url:`personalization.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}});return HHr.addMethods({appId:e.appId,transporter:n},e.methods)},Nal=e=>t=>e.transporter.read({method:vrs.MethodEnum.Get,path:"1/strategies/personalization"},t),Dal=e=>(t,r)=>e.transporter.write({method:vrs.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);l6e.createPersonalizationClient=Ral;l6e.getPersonalizationStrategy=Nal;l6e.setPersonalizationStrategy=Dal});var Trs=H((Cju,wrs)=>{wrs.exports=Brs()});var Mrs=H(lu=>{"use strict";Object.defineProperty(lu,"__esModule",{value:!0});var Cg=Jxe(),UV=jxe(),lp=Uxe(),kal=Et("crypto");function Fkt(e){let t=r=>e.request(r).then(n=>{if(e.batch!==void 0&&e.batch(n.hits),!e.shouldStop(n))return n.cursor?t({cursor:n.cursor}):t({page:(r.page||0)+1})});return t({})}var xal=e=>{let t=e.appId,r=Cg.createAuth(e.authMode!==void 0?e.authMode:Cg.AuthMode.WithinHeaders,t,e.apiKey),n=UV.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:UV.CallEnum.Read},{url:`${t}.algolia.net`,accept:UV.CallEnum.Write}].concat(Cg.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return Cg.addMethods(a,e.methods)};function Rrs(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function Nrs(){return{name:"ObjectNotFoundError",message:"Object not found."}}function Drs(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var Gal=e=>(t,r)=>{let{queryParameters:n,...a}=r||{},o={acl:t,...n!==void 0?{queryParameters:n}:{}},l=(A,f)=>Cg.createRetryablePromise(I=>u6e(e)(A.key,f).catch(C=>{if(C.status!==404)throw C;return I()}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:"1/keys",data:o},a),l)},Fal=e=>(t,r,n)=>{let a=UV.createMappedRequestOptions(n);return a.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:lp.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},Zal=e=>(t,r,n)=>e.transporter.write({method:lp.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},n),Lal=e=>(t,r)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(n,a)=>qxe(e)(n.taskID,a)),Zkt=e=>(t,r,n)=>{let a=(o,l)=>g6e(e)(t,{methods:{waitTask:ST}}).waitTask(o.taskID,l);return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},n),a)},Val=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Rules]}),Wal=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Settings]}),Oal=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Synonyms]}),Pal=e=>(t,r)=>t.method===lp.MethodEnum.Get?e.transporter.read(t,r):e.transporter.write(t,r),Mal=e=>(t,r)=>{let n=(a,o)=>Cg.createRetryablePromise(l=>u6e(e)(t,o).then(l).catch(A=>{if(A.status!==404)throw A}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/keys/%s",t)},r),n)},Hal=e=>(t,r,n)=>{let a=r.map(o=>({action:"deleteEntry",body:{objectID:o}}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>qxe(e)(o.taskID,l))},Yal=()=>(e,t)=>{let r=UV.serializeQueryParameters(t),n=kal.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(n+r).toString("base64")},u6e=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/keys/%s",t)},r),krs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/task/%s",t.toString())},r),Qal=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"/1/dictionaries/*/settings"},t),Xal=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/logs"},t),Jal=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,n=t.match(r);if(n===null)throw Drs();return parseInt(n[1],10)-Math.round(new Date().getTime()/1e3)},Ual=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters/mapping/top"},t),Kal=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/clusters/mapping/%s",t)},r),jal=e=>t=>{let{retrieveMappings:r,...n}=t||{};return r===!0&&(n.getClusters=!0),e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters/mapping/pending"},n)},g6e=e=>(t,r={})=>{let n={transporter:e.transporter,appId:e.appId,indexName:t};return Cg.addMethods(n,r.methods)},zal=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/keys"},t),qal=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters"},t),$al=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/indexes"},t),ecl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters/mapping"},t),tcl=e=>(t,r,n)=>{let a=(o,l)=>g6e(e)(t,{methods:{waitTask:ST}}).waitTask(o.taskID,l);return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},n),a)},rcl=e=>(t,r)=>{let n=(a,o)=>Promise.all(Object.keys(a.taskID).map(l=>g6e(e)(l,{methods:{waitTask:ST}}).waitTask(a.taskID[l],o)));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),n)},ncl=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),icl=e=>(t,r)=>{let n=t.map(a=>({...a,params:UV.serializeQueryParameters(a.params||{})}));return e.transporter.read({method:lp.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:n},cacheable:!0},r)},scl=e=>(t,r)=>Promise.all(t.map(n=>{let{facetName:a,facetQuery:o,...l}=n.params;return g6e(e)(n.indexName,{methods:{searchForFacetValues:Wrs}}).searchForFacetValues(a,o,{...r,...l})})),ocl=e=>(t,r)=>{let n=UV.createMappedRequestOptions(r);return n.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:lp.MethodEnum.Delete,path:"1/clusters/mapping"},n)},acl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:a}},n),(o,l)=>qxe(e)(o.taskID,l))},ccl=e=>(t,r)=>{let n=(a,o)=>Cg.createRetryablePromise(l=>u6e(e)(t,o).catch(A=>{if(A.status!==404)throw A;return l()}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/keys/%s/restore",t)},r),n)},lcl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>qxe(e)(o.taskID,l))},ucl=e=>(t,r,n)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/search",t),data:{query:r},cacheable:!0},n),gcl=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),Acl=e=>(t,r)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:t},r),(n,a)=>qxe(e)(n.taskID,a)),dcl=e=>(t,r)=>{let n=Object.assign({},r),{queryParameters:a,...o}=r||{},l=a?{queryParameters:a}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],f=C=>Object.keys(n).filter(b=>A.indexOf(b)!==-1).every(b=>{if(Array.isArray(C[b])&&Array.isArray(n[b])){let E=C[b];return E.length===n[b].length&&E.every((N,B)=>N===n[b][B])}else return C[b]===n[b]}),I=(C,b)=>Cg.createRetryablePromise(E=>u6e(e)(t,b).then(N=>f(N)?Promise.resolve():E()));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Put,path:Cg.encode("1/keys/%s",t),data:l},o),I)},qxe=e=>(t,r)=>Cg.createRetryablePromise(n=>krs(e)(t,r).then(a=>a.status!=="published"?n():void 0)),xrs=e=>(t,r)=>{let n=(a,o)=>ST(e)(a.taskID,o);return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),n)},pcl=e=>t=>Fkt({shouldStop:r=>r.cursor===void 0,...t,request:r=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/browse",e.indexName),data:r},t)}),fcl=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Icl=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Lkt=e=>(t,r,n)=>{let{batchSize:a,...o}=n||{},l={taskIDs:[],objectIDs:[]},A=(f=0)=>{let I=[],C;for(C=f;C({action:r,body:b})),o).then(b=>(l.objectIDs=l.objectIDs.concat(b.objectIDs),l.taskIDs.push(b.taskID),C++,A(C)))};return Cg.createWaitablePromise(A(),(f,I)=>Promise.all(f.taskIDs.map(C=>ST(e)(C,I))))},hcl=e=>t=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/clear",e.indexName)},t),(r,n)=>ST(e)(r.taskID,n)),mcl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=UV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/rules/clear",e.indexName)},a),(o,l)=>ST(e)(o.taskID,l))},Ccl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=UV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/synonyms/clear",e.indexName)},a),(o,l)=>ST(e)(o.taskID,l))},_cl=e=>(t,r)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(n,a)=>ST(e)(n.taskID,a)),ycl=e=>t=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/indexes/%s",e.indexName)},t),(r,n)=>ST(e)(r.taskID,n)),bcl=e=>(t,r)=>Cg.createWaitablePromise(Grs(e)([t],r).then(n=>({taskID:n.taskIDs[0]})),(n,a)=>ST(e)(n.taskID,a)),Grs=e=>(t,r)=>{let n=t.map(a=>({objectID:a}));return Lkt(e)(n,P_e.DeleteObject,r)},Ecl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=UV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/indexes/%s/rules/%s",e.indexName,t)},o),(l,A)=>ST(e)(l.taskID,A))},Scl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=UV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},o),(l,A)=>ST(e)(l.taskID,A))},vcl=e=>t=>Frs(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),Bcl=e=>(t,r,n)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n),wcl=e=>(t,r)=>{let{query:n,paginate:a,...o}=r||{},l=0,A=()=>Vrs(e)(n||"",{...o,page:l}).then(f=>{for(let[I,C]of Object.entries(f.hits))if(t(C))return{object:C,position:parseInt(I,10),page:l};if(l++,a===!1||l>=f.nbPages)throw Nrs();return A()});return A()},Tcl=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/%s",e.indexName,t)},r),Rcl=()=>(e,t)=>{for(let[r,n]of Object.entries(e.hits))if(n.objectID===t)return parseInt(r,10);return-1},Ncl=e=>(t,r)=>{let{attributesToRetrieve:n,...a}=r||{},o=t.map(l=>({indexName:e.indexName,objectID:l,...n?{attributesToRetrieve:n}:{}}));return e.transporter.read({method:lp.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:o}},a)},Dcl=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),Frs=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),kcl=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),Zrs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),xcl=e=>(t,r)=>Cg.createWaitablePromise(Lrs(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>ST(e)(n.taskID,a)),Lrs=e=>(t,r)=>{let{createIfNotExists:n,...a}=r||{},o=n?P_e.PartialUpdateObject:P_e.PartialUpdateObjectNoCreate;return Lkt(e)(t,o,a)},Gcl=e=>(t,r)=>{let{safe:n,autoGenerateObjectIDIfNotExist:a,batchSize:o,...l}=r||{},A=(B,F,Q,J)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/operation",B),data:{operation:Q,destination:F}},J),(ae,ne)=>ST(e)(ae.taskID,ne)),f=Math.random().toString(36).substring(7),I=`${e.indexName}_tmp_${f}`,C=YHr({appId:e.appId,transporter:e.transporter,indexName:I}),b=[],E=A(e.indexName,I,"copy",{...l,scope:["settings","synonyms","rules"]});b.push(E);let N=(n?E.wait(l):E).then(()=>{let B=C(t,{...l,autoGenerateObjectIDIfNotExist:a,batchSize:o});return b.push(B),n?B.wait(l):B}).then(()=>{let B=A(I,e.indexName,"move",l);return b.push(B),n?B.wait(l):B}).then(()=>Promise.all(b)).then(([B,F,Q])=>({objectIDs:F.objectIDs,taskIDs:[B.taskID,...F.taskIDs,Q.taskID]}));return Cg.createWaitablePromise(N,(B,F)=>Promise.all(b.map(Q=>Q.wait(F))))},Fcl=e=>(t,r)=>QHr(e)(t,{...r,clearExistingRules:!0}),Zcl=e=>(t,r)=>XHr(e)(t,{...r,clearExistingSynonyms:!0}),Lcl=e=>(t,r)=>Cg.createWaitablePromise(YHr(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>ST(e)(n.taskID,a)),YHr=e=>(t,r)=>{let{autoGenerateObjectIDIfNotExist:n,...a}=r||{},o=n?P_e.AddObject:P_e.UpdateObject;if(o===P_e.UpdateObject){for(let l of t)if(l.objectID===void 0)return Cg.createWaitablePromise(Promise.reject(Rrs()))}return Lkt(e)(t,o,a)},Vcl=e=>(t,r)=>QHr(e)([t],r),QHr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingRules:a,...o}=r||{},l=UV.createMappedRequestOptions(o);return n&&(l.queryParameters.forwardToReplicas=1),a&&(l.queryParameters.clearExistingRules=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/rules/batch",e.indexName),data:t},l),(A,f)=>ST(e)(A.taskID,f))},Wcl=e=>(t,r)=>XHr(e)([t],r),XHr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingSynonyms:a,replaceExistingSynonyms:o,...l}=r||{},A=UV.createMappedRequestOptions(l);return n&&(A.queryParameters.forwardToReplicas=1),(o||a)&&(A.queryParameters.replaceExistingSynonyms=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},A),(f,I)=>ST(e)(f.taskID,I))},Vrs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),Wrs=e=>(t,r,n)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n),Ors=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),Prs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),Ocl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=UV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Put,path:Cg.encode("1/indexes/%s/settings",e.indexName),data:t},o),(l,A)=>ST(e)(l.taskID,A))},ST=e=>(t,r)=>Cg.createRetryablePromise(n=>Zrs(e)(t,r).then(a=>a.status!=="published"?n():void 0)),Pcl={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",Inference:"inference",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},P_e={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},Vkt={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Mcl={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Hcl={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};lu.ApiKeyACLEnum=Pcl;lu.BatchActionEnum=P_e;lu.ScopeEnum=Vkt;lu.StrategyEnum=Mcl;lu.SynonymEnum=Hcl;lu.addApiKey=Gal;lu.assignUserID=Fal;lu.assignUserIDs=Zal;lu.batch=xrs;lu.browseObjects=pcl;lu.browseRules=fcl;lu.browseSynonyms=Icl;lu.chunkedBatch=Lkt;lu.clearDictionaryEntries=Lal;lu.clearObjects=hcl;lu.clearRules=mcl;lu.clearSynonyms=Ccl;lu.copyIndex=Zkt;lu.copyRules=Val;lu.copySettings=Wal;lu.copySynonyms=Oal;lu.createBrowsablePromise=Fkt;lu.createMissingObjectIDError=Rrs;lu.createObjectNotFoundError=Nrs;lu.createSearchClient=xal;lu.createValidUntilNotFoundError=Drs;lu.customRequest=Pal;lu.deleteApiKey=Mal;lu.deleteBy=_cl;lu.deleteDictionaryEntries=Hal;lu.deleteIndex=ycl;lu.deleteObject=bcl;lu.deleteObjects=Grs;lu.deleteRule=Ecl;lu.deleteSynonym=Scl;lu.exists=vcl;lu.findAnswers=Bcl;lu.findObject=wcl;lu.generateSecuredApiKey=Yal;lu.getApiKey=u6e;lu.getAppTask=krs;lu.getDictionarySettings=Qal;lu.getLogs=Xal;lu.getObject=Tcl;lu.getObjectPosition=Rcl;lu.getObjects=Ncl;lu.getRule=Dcl;lu.getSecuredApiKeyRemainingValidity=Jal;lu.getSettings=Frs;lu.getSynonym=kcl;lu.getTask=Zrs;lu.getTopUserIDs=Ual;lu.getUserID=Kal;lu.hasPendingMappings=jal;lu.initIndex=g6e;lu.listApiKeys=zal;lu.listClusters=qal;lu.listIndices=$al;lu.listUserIDs=ecl;lu.moveIndex=tcl;lu.multipleBatch=rcl;lu.multipleGetObjects=ncl;lu.multipleQueries=icl;lu.multipleSearchForFacetValues=scl;lu.partialUpdateObject=xcl;lu.partialUpdateObjects=Lrs;lu.removeUserID=ocl;lu.replaceAllObjects=Gcl;lu.replaceAllRules=Fcl;lu.replaceAllSynonyms=Zcl;lu.replaceDictionaryEntries=acl;lu.restoreApiKey=ccl;lu.saveDictionaryEntries=lcl;lu.saveObject=Lcl;lu.saveObjects=YHr;lu.saveRule=Vcl;lu.saveRules=QHr;lu.saveSynonym=Wcl;lu.saveSynonyms=XHr;lu.search=Vrs;lu.searchDictionaryEntries=ucl;lu.searchForFacetValues=Wrs;lu.searchRules=Ors;lu.searchSynonyms=Prs;lu.searchUserIDs=gcl;lu.setDictionarySettings=Acl;lu.setSettings=Ocl;lu.updateApiKey=dcl;lu.waitAppTask=qxe;lu.waitTask=ST});var Yrs=H((yju,Hrs)=>{Hrs.exports=Mrs()});var Qrs=H(Wkt=>{"use strict";Object.defineProperty(Wkt,"__esModule",{value:!0});function Ycl(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var Qcl={Debug:1,Info:2,Error:3};Wkt.LogLevelEnum=Qcl;Wkt.createNullLogger=Ycl});var JHr=H((Eju,Xrs)=>{Xrs.exports=Qrs()});var jrs=H(UHr=>{"use strict";Object.defineProperty(UHr,"__esModule",{value:!0});var Jrs=Et("http"),Urs=Et("https"),Xcl=Et("url"),Krs={keepAlive:!0},Jcl=new Jrs.Agent(Krs),Ucl=new Urs.Agent(Krs);function Kcl({agent:e,httpAgent:t,httpsAgent:r,requesterOptions:n={}}={}){let a=t||e||Jcl,o=r||e||Ucl;return{send(l){return new Promise(A=>{let f=Xcl.parse(l.url),I=f.query===null?f.pathname:`${f.pathname}?${f.query}`,C={...n,agent:f.protocol==="https:"?o:a,hostname:f.hostname,path:I,method:l.method,headers:{...n&&n.headers?n.headers:{},...l.headers},...f.port!==void 0?{port:f.port||""}:{}},b=(f.protocol==="https:"?Urs:Jrs).request(C,F=>{let Q=[];F.on("data",J=>{Q=Q.concat(J)}),F.on("end",()=>{clearTimeout(N),clearTimeout(B),A({status:F.statusCode||0,content:Buffer.concat(Q).toString(),isTimedOut:!1})})}),E=(F,Q)=>setTimeout(()=>{b.abort(),A({status:0,content:Q,isTimedOut:!0})},F*1e3),N=E(l.connectTimeout,"Connection timeout"),B;b.on("error",F=>{clearTimeout(N),clearTimeout(B),A({status:0,content:F.message,isTimedOut:!1})}),b.once("response",()=>{clearTimeout(N),B=E(l.responseTimeout,"Socket timeout")}),l.data!==void 0&&b.write(l.data),b.end()})},destroy(){return a.destroy(),o.destroy(),Promise.resolve()}}}UHr.createNodeHttpRequester=Kcl});var KHr=H((vju,zrs)=>{zrs.exports=jrs()});var ons=H((Bju,sns)=>{"use strict";var qrs=xHr(),jcl=FHr(),hue=Jxe(),zcl=JHr(),qcl=KHr(),Okt=jxe(),Pkt=Uxe(),$cl=e=>{let t=e.appId,r=hue.createAuth(e.authMode!==void 0?e.authMode:hue.AuthMode.WithinHeaders,t,e.apiKey),n=Okt.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:Okt.CallEnum.Read},{url:`${t}.algolia.net`,accept:Okt.CallEnum.Write}].concat(hue.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return hue.addMethods(a,e.methods)},A6e=e=>(t,r)=>{let n=t.map(a=>({...a,threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},$rs=e=>(t,r)=>A6e(e)(t.map(n=>({...n,fallbackParameters:{},model:"bought-together"})),r),ens=e=>(t,r)=>A6e(e)(t.map(n=>({...n,model:"related-products"})),r),tns=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-facets",threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},rns=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-items",threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},nns=e=>(t,r)=>A6e(e)(t.map(n=>({...n,model:"looking-similar"})),r),ins=e=>(t,r)=>{let n=t.map(a=>({...a,model:"recommended-for-you",threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)};function xte(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:qcl.createNodeHttpRequester(),logger:zcl.createNullLogger(),responsesCache:qrs.createNullCache(),requestsCache:qrs.createNullCache(),hostsCache:jcl.createInMemoryCache(),userAgent:Okt.createUserAgent(hue.version).add({segment:"Recommend",version:hue.version}).add({segment:"Node.js",version:process.versions.node})};return $cl({...n,...r,methods:{destroy:hue.destroy,getFrequentlyBoughtTogether:$rs,getRecommendations:A6e,getRelatedProducts:ens,getTrendingFacets:tns,getTrendingItems:rns,getLookingSimilar:nns,getRecommendedForYou:ins}})}xte.version=hue.version;xte.getFrequentlyBoughtTogether=$rs;xte.getRecommendations=A6e;xte.getRelatedProducts=ens;xte.getTrendingFacets=tns;xte.getTrendingItems=rns;xte.getLookingSimilar=nns;xte.getRecommendedForYou=ins;sns.exports=xte});var cns=H((wju,jHr)=>{var ans=ons();jHr.exports=ans;jHr.exports.default=ans});var Ans=H((Tju,gns)=>{"use strict";var lns=xHr(),ell=FHr(),$xe=Srs(),qHr=Jxe(),zHr=Trs(),zu=Yrs(),tll=JHr(),M_e=cns(),rll=KHr(),nll=jxe();function uns(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:rll.createNodeHttpRequester(),logger:tll.createNullLogger(),responsesCache:lns.createNullCache(),requestsCache:lns.createNullCache(),hostsCache:ell.createInMemoryCache(),userAgent:nll.createUserAgent(qHr.version).add({segment:"Node.js",version:process.versions.node})},a={...n,...r},o=()=>l=>zHr.createPersonalizationClient({...n,...l,methods:{getPersonalizationStrategy:zHr.getPersonalizationStrategy,setPersonalizationStrategy:zHr.setPersonalizationStrategy}});return zu.createSearchClient({...a,methods:{search:zu.multipleQueries,searchForFacetValues:zu.multipleSearchForFacetValues,multipleBatch:zu.multipleBatch,multipleGetObjects:zu.multipleGetObjects,multipleQueries:zu.multipleQueries,copyIndex:zu.copyIndex,copySettings:zu.copySettings,copyRules:zu.copyRules,copySynonyms:zu.copySynonyms,moveIndex:zu.moveIndex,listIndices:zu.listIndices,getLogs:zu.getLogs,listClusters:zu.listClusters,multipleSearchForFacetValues:zu.multipleSearchForFacetValues,getApiKey:zu.getApiKey,addApiKey:zu.addApiKey,listApiKeys:zu.listApiKeys,updateApiKey:zu.updateApiKey,deleteApiKey:zu.deleteApiKey,restoreApiKey:zu.restoreApiKey,assignUserID:zu.assignUserID,assignUserIDs:zu.assignUserIDs,getUserID:zu.getUserID,searchUserIDs:zu.searchUserIDs,listUserIDs:zu.listUserIDs,getTopUserIDs:zu.getTopUserIDs,removeUserID:zu.removeUserID,hasPendingMappings:zu.hasPendingMappings,generateSecuredApiKey:zu.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:zu.getSecuredApiKeyRemainingValidity,destroy:qHr.destroy,clearDictionaryEntries:zu.clearDictionaryEntries,deleteDictionaryEntries:zu.deleteDictionaryEntries,getDictionarySettings:zu.getDictionarySettings,getAppTask:zu.getAppTask,replaceDictionaryEntries:zu.replaceDictionaryEntries,saveDictionaryEntries:zu.saveDictionaryEntries,searchDictionaryEntries:zu.searchDictionaryEntries,setDictionarySettings:zu.setDictionarySettings,waitAppTask:zu.waitAppTask,customRequest:zu.customRequest,initIndex:l=>A=>zu.initIndex(l)(A,{methods:{batch:zu.batch,delete:zu.deleteIndex,findAnswers:zu.findAnswers,getObject:zu.getObject,getObjects:zu.getObjects,saveObject:zu.saveObject,saveObjects:zu.saveObjects,search:zu.search,searchForFacetValues:zu.searchForFacetValues,waitTask:zu.waitTask,setSettings:zu.setSettings,getSettings:zu.getSettings,partialUpdateObject:zu.partialUpdateObject,partialUpdateObjects:zu.partialUpdateObjects,deleteObject:zu.deleteObject,deleteObjects:zu.deleteObjects,deleteBy:zu.deleteBy,clearObjects:zu.clearObjects,browseObjects:zu.browseObjects,getObjectPosition:zu.getObjectPosition,findObject:zu.findObject,exists:zu.exists,saveSynonym:zu.saveSynonym,saveSynonyms:zu.saveSynonyms,getSynonym:zu.getSynonym,searchSynonyms:zu.searchSynonyms,browseSynonyms:zu.browseSynonyms,deleteSynonym:zu.deleteSynonym,clearSynonyms:zu.clearSynonyms,replaceAllObjects:zu.replaceAllObjects,replaceAllSynonyms:zu.replaceAllSynonyms,searchRules:zu.searchRules,getRule:zu.getRule,deleteRule:zu.deleteRule,saveRule:zu.saveRule,saveRules:zu.saveRules,replaceAllRules:zu.replaceAllRules,browseRules:zu.browseRules,clearRules:zu.clearRules}}),initAnalytics:()=>l=>$xe.createAnalyticsClient({...n,...l,methods:{addABTest:$xe.addABTest,getABTest:$xe.getABTest,getABTests:$xe.getABTests,stopABTest:$xe.stopABTest,deleteABTest:$xe.deleteABTest}}),initPersonalization:o,initRecommendation:()=>l=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),o()(l)),getRecommendations:M_e.getRecommendations,getFrequentlyBoughtTogether:M_e.getFrequentlyBoughtTogether,getLookingSimilar:M_e.getLookingSimilar,getRecommendedForYou:M_e.getRecommendedForYou,getRelatedProducts:M_e.getRelatedProducts,getTrendingFacets:M_e.getTrendingFacets,getTrendingItems:M_e.getTrendingItems}})}uns.version=qHr.version;gns.exports=uns});var eYr=H((Rju,$Hr)=>{var dns=Ans();$Hr.exports=dns;$Hr.exports.default=dns});var pns=H(Mkt=>{"use strict";Object.defineProperty(Mkt,"__esModule",{value:!0});Mkt.search=void 0;var ill=(Wa(),vi(Va)),sll=ill.__importDefault(eYr()),tYr={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},oll=(0,sll.default)(tYr.appId,tYr.apiKey).initIndex(tYr.indexName),all=async(e,t=0)=>await oll.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10});Mkt.search=all});var Nns=H(T_=>{"use strict";var nYr=Kpt(),eGe=60103,hns=60106;T_.Fragment=60107;T_.StrictMode=60108;T_.Profiler=60114;var mns=60109,Cns=60110,_ns=60112;T_.Suspense=60113;var yns=60115,bns=60116;typeof Symbol=="function"&&Symbol.for&&(NH=Symbol.for,eGe=NH("react.element"),hns=NH("react.portal"),T_.Fragment=NH("react.fragment"),T_.StrictMode=NH("react.strict_mode"),T_.Profiler=NH("react.profiler"),mns=NH("react.provider"),Cns=NH("react.context"),_ns=NH("react.forward_ref"),T_.Suspense=NH("react.suspense"),yns=NH("react.memo"),bns=NH("react.lazy"));var NH,fns=typeof Symbol=="function"&&Symbol.iterator;function cll(e){return e===null||typeof e!="object"?null:(e=fns&&e[fns]||e["@@iterator"],typeof e=="function"?e:null)}function d6e(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r{"use strict";Dns.exports=Nns()});var Fns=H(p6e=>{"use strict";var Gns=p6e&&p6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(p6e,"__esModule",{value:!0});var kns=Gns(KMe()),xns=Gns(kBe()),dll=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(xns.default.hide(),a=!0);let A=l+` -`;A!==n&&(n=A,e.write(kns.default.eraseLines(r)+A),r=A.split(` -`).length)};return o.clear=()=>{e.write(kns.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(xns.default.show(),a=!1)},o};p6e.default={create:dll}});var Zns=H((Gju,f6e)=>{f6e.exports=function(t){var r={},n=Kpt(),a=lC(),o=rHe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;te{r=(0,Dts.deepCopy)(r);let a=n?n.interactive:!0;return t.schema&&t.schemaJson?(0,Nts.from)(e.compile(t.schemaJson)).pipe((0,THr.mergeMap)(o=>o(r,{withPrompts:a})),(0,THr.first)(),(0,THr.map)(o=>{if(!o.success)throw new Skt(r,o.errors||[]);return r})):(0,Nts.of)(r)}}});var kts=H(Bkt=>{"use strict";Object.defineProperty(Bkt,"__esModule",{value:!0});Bkt.NodeWorkflow=void 0;var vkt=P2(),Zal=XDt(),Lal=Hxe(),NHr=vts(),Val=bkt(),Wal=RHr(),DHr=class extends Lal.workflow.BaseWorkflow{constructor(t,r){let n,a;typeof t=="string"?(a=(0,vkt.normalize)(t),n=new vkt.virtualFs.ScopedHost(new Zal.NodeJsSyncHost,a)):(n=t,a=r.root);let o=r.engineHostCreator?.(r)||new Val.NodeModulesEngineHost(r.resolvePaths);if(super({host:n,engineHost:o,force:r.force,dryRun:r.dryRun,registry:r.registry}),o.registerTaskExecutor(NHr.BuiltinTaskExecutor.NodePackage,{allowPackageManagerOverride:!0,packageManager:r.packageManager,force:r.packageManagerForce,rootDirectory:a&&(0,vkt.getSystemPath)(a),registry:r.packageRegistry}),o.registerTaskExecutor(NHr.BuiltinTaskExecutor.RepositoryInitializer,{rootDirectory:a&&(0,vkt.getSystemPath)(a)}),o.registerTaskExecutor(NHr.BuiltinTaskExecutor.RunSchematic),r.optionTransforms)for(let l of r.optionTransforms)o.registerOptionsTransform(l);r.schemaValidation&&o.registerOptionsTransform((0,Wal.validateOptionsWithSchema)(this.registry)),this._context=[]}get engine(){return this._engine}get engineHost(){return this._engineHost}};Bkt.NodeWorkflow=DHr});var xts=H(mj=>{"use strict";var Oal=mj&&mj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Pal=mj&&mj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Mal=mj&&mj.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aMal(Et(n))).then(n=>(n.default?.default||n.default)())).pipe((0,xHr.catchError)(()=>(0,xHr.throwError)(()=>new Hal.UnregisteredTaskException(t))))}catch{}return super.createTaskExecutor(t)}};mj.FileSystemEngineHost=GHr});var Gts=H(Rkt=>{"use strict";Object.defineProperty(Rkt,"__esModule",{value:!0});Rkt.NodeModulesTestEngineHost=void 0;var Qal=bkt(),FHr=class extends Qal.NodeModulesEngineHost{#e=new Map;#t=[];get tasks(){return this.#t}clearTasks(){this.#t=[]}registerCollection(t,r){this.#e.set(t,r)}transformContext(t){let r=t.addTask.bind(t);return t.addTask=(n,a)=>(this.#t.push(n.toConfiguration()),r(n,a)),t}_resolveCollectionPath(t,r){return this.#e.get(t)??super._resolveCollectionPath(t,r)}};Rkt.NodeModulesTestEngineHost=FHr});var Zts=H(ST=>{"use strict";var Xal=ST&&ST.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Nkt=ST&&ST.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Xal(t,e,r)};Object.defineProperty(ST,"__esModule",{value:!0});ST.validateOptionsWithSchema=ST.NodeModulesTestEngineHost=ST.NodePackageDoesNotSupportSchematics=ST.NodeModulesEngineHost=ST.FileSystemEngineHost=void 0;Nkt(Xes(),ST);Nkt(okt(),ST);Nkt(ukt(),ST);Nkt(kts(),ST);var Jal=xts();Object.defineProperty(ST,"FileSystemEngineHost",{enumerable:!0,get:function(){return Jal.FileSystemEngineHost}});var Fts=bkt();Object.defineProperty(ST,"NodeModulesEngineHost",{enumerable:!0,get:function(){return Fts.NodeModulesEngineHost}});Object.defineProperty(ST,"NodePackageDoesNotSupportSchematics",{enumerable:!0,get:function(){return Fts.NodePackageDoesNotSupportSchematics}});var Ual=Gts();Object.defineProperty(ST,"NodeModulesTestEngineHost",{enumerable:!0,get:function(){return Ual.NodeModulesTestEngineHost}});var Kal=RHr();Object.defineProperty(ST,"validateOptionsWithSchema",{enumerable:!0,get:function(){return Kal.validateOptionsWithSchema}})});var xkt=H(VHr=>{"use strict";Object.defineProperty(VHr,"__esModule",{value:!0});VHr.checkRequirements=ecl;var qal=(Wa(),vi(Va)),$al=qal.__importDefault(Et("os"));function ecl({stdout:e}){if($al.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!e.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}});var qts=H(Gkt=>{"use strict";Object.defineProperty(Gkt,"__esModule",{value:!0});function s6e(e){let t=[...e.caches],r=t.shift();return r===void 0?zts():{get(n,a,o={miss:()=>Promise.resolve()}){return r.get(n,a,o).catch(()=>s6e({caches:t}).get(n,a,o))},set(n,a){return r.set(n,a).catch(()=>s6e({caches:t}).set(n,a))},delete(n){return r.delete(n).catch(()=>s6e({caches:t}).delete(n))},clear(){return r.clear().catch(()=>s6e({caches:t}).clear())}}}function zts(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}Gkt.createFallbackableCache=s6e;Gkt.createNullCache=zts});var WHr=H((b7u,$ts)=>{$ts.exports=qts()});var ers=H(OHr=>{"use strict";Object.defineProperty(OHr,"__esModule",{value:!0});function tcl(e={serializable:!0}){let t={};return{get(r,n,a={miss:()=>Promise.resolve()}){let o=JSON.stringify(r);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);let l=n(),A=a&&a.miss||(()=>Promise.resolve());return l.then(f=>A(f)).then(()=>l)},set(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}OHr.createInMemoryCache=tcl});var PHr=H((S7u,trs)=>{trs.exports=ers()});var nrs=H(Q4=>{"use strict";Object.defineProperty(Q4,"__esModule",{value:!0});function rcl(e,t,r){let n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===MHr.WithinHeaders?n:{}},queryParameters(){return e===MHr.WithinQueryParameters?n:{}}}}function ncl(e){let t=0,r=()=>(t++,new Promise(n=>{setTimeout(()=>{n(e(r))},Math.min(100*t,1e3))}));return e(r)}function rrs(e,t=(r,n)=>Promise.resolve()){return Object.assign(e,{wait(r){return rrs(e.then(n=>Promise.all([t(n,r),n])).then(n=>n[1]))}})}function icl(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function scl(e,t){return t&&Object.keys(t).forEach(r=>{e[r]=t[r](e)}),e}function ocl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var acl="4.24.0",ccl=e=>()=>e.transporter.requester.destroy(),MHr={WithinQueryParameters:0,WithinHeaders:1};Q4.AuthMode=MHr;Q4.addMethods=scl;Q4.createAuth=rcl;Q4.createRetryablePromise=ncl;Q4.createWaitablePromise=rrs;Q4.destroy=ccl;Q4.encode=ocl;Q4.shuffle=icl;Q4.version=acl});var Jxe=H((B7u,irs)=>{irs.exports=nrs()});var srs=H(HHr=>{"use strict";Object.defineProperty(HHr,"__esModule",{value:!0});var lcl={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};HHr.MethodEnum=lcl});var Uxe=H((T7u,ors)=>{ors.exports=srs()});var yrs=H(eB=>{"use strict";Object.defineProperty(eB,"__esModule",{value:!0});var crs=Uxe();function YHr(e,t){let r=e||{},n=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(n[a]=r[a])}),{data:Object.entries(n).length>0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var o6e={Read:1,Write:2,Any:3},Kxe={Up:1,Down:2,Timeouted:3},lrs=2*60*1e3;function XHr(e,t=Kxe.Up){return{...e,status:t,lastUpdate:Date.now()}}function urs(e){return e.status===Kxe.Up||Date.now()-e.lastUpdate>lrs}function grs(e){return e.status===Kxe.Timeouted&&Date.now()-e.lastUpdate<=lrs}function JHr(e){return typeof e=="string"?{protocol:"https",url:e,accept:o6e.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||o6e.Any}}function ucl(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(XHr(r))))).then(r=>{let n=r.filter(A=>urs(A)),a=r.filter(A=>grs(A)),o=[...n,...a],l=o.length>0?o.map(A=>JHr(A)):t;return{getTimeout(A,f){return(a.length===0&&A===0?1:a.length+3+A)*f},statelessHosts:l}})}var gcl=({isTimedOut:e,status:t})=>!e&&~~t===0,Acl=e=>{let t=e.status;return e.isTimedOut||gcl(e)||~~(t/100)!==2&&~~(t/100)!==4},dcl=({status:e})=>~~(e/100)===2,pcl=(e,t)=>Acl(e)?t.onRetry(e):dcl(e)?t.onSuccess(e):t.onFail(e);function ars(e,t,r,n){let a=[],o=Irs(r,n),l=hrs(e,n),A=r.method,f=r.method!==crs.MethodEnum.Get?{}:{...r.data,...n.data},I={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...f,...n.queryParameters},C=0,b=(E,N)=>{let B=E.pop();if(B===void 0)throw _rs(QHr(a));let F={data:o,headers:l,method:A,url:prs(B,r.path,I),connectTimeout:N(C,e.timeouts.connect),responseTimeout:N(C,n.timeout)},Q=ae=>{let ne={request:F,response:ae,host:B,triesLeft:E.length};return a.push(ne),ne},J={onSuccess:ae=>Ars(ae),onRetry(ae){let ne=Q(ae);return ae.isTimedOut&&C++,Promise.all([e.logger.info("Retryable failure",UHr(ne)),e.hostsCache.set(B,XHr(B,ae.isTimedOut?Kxe.Timeouted:Kxe.Down))]).then(()=>b(E,N))},onFail(ae){throw Q(ae),drs(ae,QHr(a))}};return e.requester.send(F).then(ae=>pcl(ae,J))};return ucl(e.hostsCache,t).then(E=>b([...E.statelessHosts].reverse(),E.getTimeout))}function fcl(e){let{hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,hosts:f,queryParameters:I,headers:C}=e,b={hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,headers:C,queryParameters:I,hosts:f.map(E=>JHr(E)),read(E,N){let B=YHr(N,b.timeouts.read),F=()=>ars(b,b.hosts.filter(ae=>(ae.accept&o6e.Read)!==0),E,B);if((B.cacheable!==void 0?B.cacheable:E.cacheable)!==!0)return F();let J={request:E,mappedRequestOptions:B,transporter:{queryParameters:b.queryParameters,headers:b.headers}};return b.responsesCache.get(J,()=>b.requestsCache.get(J,()=>b.requestsCache.set(J,F()).then(ae=>Promise.all([b.requestsCache.delete(J),ae]),ae=>Promise.all([b.requestsCache.delete(J),Promise.reject(ae)])).then(([ae,ne])=>ne)),{miss:ae=>b.responsesCache.set(J,ae)})},write(E,N){return ars(b,b.hosts.filter(B=>(B.accept&o6e.Write)!==0),E,YHr(N,b.timeouts.write))}};return b}function Icl(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let n=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(n)===-1&&(t.value=`${t.value}${n}`),t}};return t}function Ars(e){try{return JSON.parse(e.content)}catch(t){throw Crs(t.message,e)}}function drs({content:e,status:t},r){let n=e;try{n=JSON.parse(e).message}catch{}return mrs(n,t,r)}function hcl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function prs(e,t,r){let n=frs(r),a=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return n.length&&(a+=`?${n}`),a}function frs(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>hcl("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function Irs(e,t){if(e.method===crs.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function hrs(e,t){let r={...e.headers,...t.headers},n={};return Object.keys(r).forEach(a=>{let o=r[a];n[a.toLowerCase()]=o}),n}function QHr(e){return e.map(t=>UHr(t))}function UHr(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function mrs(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function Crs(e,t){return{name:"DeserializationError",message:e,response:t}}function _rs(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:e}}eB.CallEnum=o6e;eB.HostStatusEnum=Kxe;eB.createApiError=mrs;eB.createDeserializationError=Crs;eB.createMappedRequestOptions=YHr;eB.createRetryError=_rs;eB.createStatefulHost=XHr;eB.createStatelessHost=JHr;eB.createTransporter=fcl;eB.createUserAgent=Icl;eB.deserializeFailure=drs;eB.deserializeSuccess=Ars;eB.isStatefulHostTimeouted=grs;eB.isStatefulHostUp=urs;eB.serializeData=Irs;eB.serializeHeaders=hrs;eB.serializeQueryParameters=frs;eB.serializeUrl=prs;eB.stackFrameWithoutCredentials=UHr;eB.stackTraceWithoutCredentials=QHr});var jxe=H((N7u,brs)=>{brs.exports=yrs()});var Ers=H(hue=>{"use strict";Object.defineProperty(hue,"__esModule",{value:!0});var zxe=Jxe(),mcl=jxe(),a6e=Uxe(),Ccl=e=>{let t=e.region||"us",r=zxe.createAuth(zxe.AuthMode.WithinHeaders,e.appId,e.apiKey),n=mcl.createTransporter({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a=e.appId;return zxe.addMethods({appId:a,transporter:n},e.methods)},_cl=e=>(t,r)=>e.transporter.write({method:a6e.MethodEnum.Post,path:"2/abtests",data:t},r),ycl=e=>(t,r)=>e.transporter.write({method:a6e.MethodEnum.Delete,path:zxe.encode("2/abtests/%s",t)},r),bcl=e=>(t,r)=>e.transporter.read({method:a6e.MethodEnum.Get,path:zxe.encode("2/abtests/%s",t)},r),Ecl=e=>t=>e.transporter.read({method:a6e.MethodEnum.Get,path:"2/abtests"},t),Scl=e=>(t,r)=>e.transporter.write({method:a6e.MethodEnum.Post,path:zxe.encode("2/abtests/%s/stop",t)},r);hue.addABTest=_cl;hue.createAnalyticsClient=Ccl;hue.deleteABTest=ycl;hue.getABTest=bcl;hue.getABTests=Ecl;hue.stopABTest=Scl});var vrs=H((k7u,Srs)=>{Srs.exports=Ers()});var wrs=H(c6e=>{"use strict";Object.defineProperty(c6e,"__esModule",{value:!0});var KHr=Jxe(),vcl=jxe(),Brs=Uxe(),Bcl=e=>{let t=e.region||"us",r=KHr.createAuth(KHr.AuthMode.WithinHeaders,e.appId,e.apiKey),n=vcl.createTransporter({hosts:[{url:`personalization.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}});return KHr.addMethods({appId:e.appId,transporter:n},e.methods)},wcl=e=>t=>e.transporter.read({method:Brs.MethodEnum.Get,path:"1/strategies/personalization"},t),Tcl=e=>(t,r)=>e.transporter.write({method:Brs.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);c6e.createPersonalizationClient=Bcl;c6e.getPersonalizationStrategy=wcl;c6e.setPersonalizationStrategy=Tcl});var Rrs=H((G7u,Trs)=>{Trs.exports=wrs()});var Hrs=H(lu=>{"use strict";Object.defineProperty(lu,"__esModule",{value:!0});var Cg=Jxe(),KV=jxe(),lp=Uxe(),Rcl=Et("crypto");function Fkt(e){let t=r=>e.request(r).then(n=>{if(e.batch!==void 0&&e.batch(n.hits),!e.shouldStop(n))return n.cursor?t({cursor:n.cursor}):t({page:(r.page||0)+1})});return t({})}var Ncl=e=>{let t=e.appId,r=Cg.createAuth(e.authMode!==void 0?e.authMode:Cg.AuthMode.WithinHeaders,t,e.apiKey),n=KV.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:KV.CallEnum.Read},{url:`${t}.algolia.net`,accept:KV.CallEnum.Write}].concat(Cg.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return Cg.addMethods(a,e.methods)};function Nrs(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function Drs(){return{name:"ObjectNotFoundError",message:"Object not found."}}function krs(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var Dcl=e=>(t,r)=>{let{queryParameters:n,...a}=r||{},o={acl:t,...n!==void 0?{queryParameters:n}:{}},l=(A,f)=>Cg.createRetryablePromise(I=>l6e(e)(A.key,f).catch(C=>{if(C.status!==404)throw C;return I()}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:"1/keys",data:o},a),l)},kcl=e=>(t,r,n)=>{let a=KV.createMappedRequestOptions(n);return a.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:lp.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},xcl=e=>(t,r,n)=>e.transporter.write({method:lp.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},n),Gcl=e=>(t,r)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(n,a)=>qxe(e)(n.taskID,a)),Zkt=e=>(t,r,n)=>{let a=(o,l)=>u6e(e)(t,{methods:{waitTask:vT}}).waitTask(o.taskID,l);return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},n),a)},Fcl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Rules]}),Zcl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Settings]}),Lcl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Synonyms]}),Vcl=e=>(t,r)=>t.method===lp.MethodEnum.Get?e.transporter.read(t,r):e.transporter.write(t,r),Wcl=e=>(t,r)=>{let n=(a,o)=>Cg.createRetryablePromise(l=>l6e(e)(t,o).then(l).catch(A=>{if(A.status!==404)throw A}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/keys/%s",t)},r),n)},Ocl=e=>(t,r,n)=>{let a=r.map(o=>({action:"deleteEntry",body:{objectID:o}}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>qxe(e)(o.taskID,l))},Pcl=()=>(e,t)=>{let r=KV.serializeQueryParameters(t),n=Rcl.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(n+r).toString("base64")},l6e=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/keys/%s",t)},r),xrs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/task/%s",t.toString())},r),Mcl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"/1/dictionaries/*/settings"},t),Hcl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/logs"},t),Ycl=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,n=t.match(r);if(n===null)throw krs();return parseInt(n[1],10)-Math.round(new Date().getTime()/1e3)},Qcl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters/mapping/top"},t),Xcl=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/clusters/mapping/%s",t)},r),Jcl=e=>t=>{let{retrieveMappings:r,...n}=t||{};return r===!0&&(n.getClusters=!0),e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters/mapping/pending"},n)},u6e=e=>(t,r={})=>{let n={transporter:e.transporter,appId:e.appId,indexName:t};return Cg.addMethods(n,r.methods)},Ucl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/keys"},t),Kcl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters"},t),jcl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/indexes"},t),zcl=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:"1/clusters/mapping"},t),qcl=e=>(t,r,n)=>{let a=(o,l)=>u6e(e)(t,{methods:{waitTask:vT}}).waitTask(o.taskID,l);return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},n),a)},$cl=e=>(t,r)=>{let n=(a,o)=>Promise.all(Object.keys(a.taskID).map(l=>u6e(e)(l,{methods:{waitTask:vT}}).waitTask(a.taskID[l],o)));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),n)},ell=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),tll=e=>(t,r)=>{let n=t.map(a=>({...a,params:KV.serializeQueryParameters(a.params||{})}));return e.transporter.read({method:lp.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:n},cacheable:!0},r)},rll=e=>(t,r)=>Promise.all(t.map(n=>{let{facetName:a,facetQuery:o,...l}=n.params;return u6e(e)(n.indexName,{methods:{searchForFacetValues:Ors}}).searchForFacetValues(a,o,{...r,...l})})),nll=e=>(t,r)=>{let n=KV.createMappedRequestOptions(r);return n.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:lp.MethodEnum.Delete,path:"1/clusters/mapping"},n)},ill=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:a}},n),(o,l)=>qxe(e)(o.taskID,l))},sll=e=>(t,r)=>{let n=(a,o)=>Cg.createRetryablePromise(l=>l6e(e)(t,o).catch(A=>{if(A.status!==404)throw A;return l()}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/keys/%s/restore",t)},r),n)},oll=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>qxe(e)(o.taskID,l))},all=e=>(t,r,n)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("/1/dictionaries/%s/search",t),data:{query:r},cacheable:!0},n),cll=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),lll=e=>(t,r)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:t},r),(n,a)=>qxe(e)(n.taskID,a)),ull=e=>(t,r)=>{let n=Object.assign({},r),{queryParameters:a,...o}=r||{},l=a?{queryParameters:a}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],f=C=>Object.keys(n).filter(b=>A.indexOf(b)!==-1).every(b=>{if(Array.isArray(C[b])&&Array.isArray(n[b])){let E=C[b];return E.length===n[b].length&&E.every((N,B)=>N===n[b][B])}else return C[b]===n[b]}),I=(C,b)=>Cg.createRetryablePromise(E=>l6e(e)(t,b).then(N=>f(N)?Promise.resolve():E()));return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Put,path:Cg.encode("1/keys/%s",t),data:l},o),I)},qxe=e=>(t,r)=>Cg.createRetryablePromise(n=>xrs(e)(t,r).then(a=>a.status!=="published"?n():void 0)),Grs=e=>(t,r)=>{let n=(a,o)=>vT(e)(a.taskID,o);return Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),n)},gll=e=>t=>Fkt({shouldStop:r=>r.cursor===void 0,...t,request:r=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/browse",e.indexName),data:r},t)}),All=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},dll=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Lkt=e=>(t,r,n)=>{let{batchSize:a,...o}=n||{},l={taskIDs:[],objectIDs:[]},A=(f=0)=>{let I=[],C;for(C=f;C({action:r,body:b})),o).then(b=>(l.objectIDs=l.objectIDs.concat(b.objectIDs),l.taskIDs.push(b.taskID),C++,A(C)))};return Cg.createWaitablePromise(A(),(f,I)=>Promise.all(f.taskIDs.map(C=>vT(e)(C,I))))},pll=e=>t=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/clear",e.indexName)},t),(r,n)=>vT(e)(r.taskID,n)),fll=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=KV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/rules/clear",e.indexName)},a),(o,l)=>vT(e)(o.taskID,l))},Ill=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=KV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/synonyms/clear",e.indexName)},a),(o,l)=>vT(e)(o.taskID,l))},hll=e=>(t,r)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(n,a)=>vT(e)(n.taskID,a)),mll=e=>t=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/indexes/%s",e.indexName)},t),(r,n)=>vT(e)(r.taskID,n)),Cll=e=>(t,r)=>Cg.createWaitablePromise(Frs(e)([t],r).then(n=>({taskID:n.taskIDs[0]})),(n,a)=>vT(e)(n.taskID,a)),Frs=e=>(t,r)=>{let n=t.map(a=>({objectID:a}));return Lkt(e)(n,P_e.DeleteObject,r)},_ll=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=KV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/indexes/%s/rules/%s",e.indexName,t)},o),(l,A)=>vT(e)(l.taskID,A))},yll=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=KV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Delete,path:Cg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},o),(l,A)=>vT(e)(l.taskID,A))},bll=e=>t=>Zrs(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),Ell=e=>(t,r,n)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n),Sll=e=>(t,r)=>{let{query:n,paginate:a,...o}=r||{},l=0,A=()=>Wrs(e)(n||"",{...o,page:l}).then(f=>{for(let[I,C]of Object.entries(f.hits))if(t(C))return{object:C,position:parseInt(I,10),page:l};if(l++,a===!1||l>=f.nbPages)throw Drs();return A()});return A()},vll=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/%s",e.indexName,t)},r),Bll=()=>(e,t)=>{for(let[r,n]of Object.entries(e.hits))if(n.objectID===t)return parseInt(r,10);return-1},wll=e=>(t,r)=>{let{attributesToRetrieve:n,...a}=r||{},o=t.map(l=>({indexName:e.indexName,objectID:l,...n?{attributesToRetrieve:n}:{}}));return e.transporter.read({method:lp.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:o}},a)},Tll=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),Zrs=e=>t=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),Rll=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),Lrs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Get,path:Cg.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),Nll=e=>(t,r)=>Cg.createWaitablePromise(Vrs(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>vT(e)(n.taskID,a)),Vrs=e=>(t,r)=>{let{createIfNotExists:n,...a}=r||{},o=n?P_e.PartialUpdateObject:P_e.PartialUpdateObjectNoCreate;return Lkt(e)(t,o,a)},Dll=e=>(t,r)=>{let{safe:n,autoGenerateObjectIDIfNotExist:a,batchSize:o,...l}=r||{},A=(B,F,Q,J)=>Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/operation",B),data:{operation:Q,destination:F}},J),(ae,ne)=>vT(e)(ae.taskID,ne)),f=Math.random().toString(36).substring(7),I=`${e.indexName}_tmp_${f}`,C=jHr({appId:e.appId,transporter:e.transporter,indexName:I}),b=[],E=A(e.indexName,I,"copy",{...l,scope:["settings","synonyms","rules"]});b.push(E);let N=(n?E.wait(l):E).then(()=>{let B=C(t,{...l,autoGenerateObjectIDIfNotExist:a,batchSize:o});return b.push(B),n?B.wait(l):B}).then(()=>{let B=A(I,e.indexName,"move",l);return b.push(B),n?B.wait(l):B}).then(()=>Promise.all(b)).then(([B,F,Q])=>({objectIDs:F.objectIDs,taskIDs:[B.taskID,...F.taskIDs,Q.taskID]}));return Cg.createWaitablePromise(N,(B,F)=>Promise.all(b.map(Q=>Q.wait(F))))},kll=e=>(t,r)=>zHr(e)(t,{...r,clearExistingRules:!0}),xll=e=>(t,r)=>qHr(e)(t,{...r,clearExistingSynonyms:!0}),Gll=e=>(t,r)=>Cg.createWaitablePromise(jHr(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>vT(e)(n.taskID,a)),jHr=e=>(t,r)=>{let{autoGenerateObjectIDIfNotExist:n,...a}=r||{},o=n?P_e.AddObject:P_e.UpdateObject;if(o===P_e.UpdateObject){for(let l of t)if(l.objectID===void 0)return Cg.createWaitablePromise(Promise.reject(Nrs()))}return Lkt(e)(t,o,a)},Fll=e=>(t,r)=>zHr(e)([t],r),zHr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingRules:a,...o}=r||{},l=KV.createMappedRequestOptions(o);return n&&(l.queryParameters.forwardToReplicas=1),a&&(l.queryParameters.clearExistingRules=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/rules/batch",e.indexName),data:t},l),(A,f)=>vT(e)(A.taskID,f))},Zll=e=>(t,r)=>qHr(e)([t],r),qHr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingSynonyms:a,replaceExistingSynonyms:o,...l}=r||{},A=KV.createMappedRequestOptions(l);return n&&(A.queryParameters.forwardToReplicas=1),(o||a)&&(A.queryParameters.replaceExistingSynonyms=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},A),(f,I)=>vT(e)(f.taskID,I))},Wrs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),Ors=e=>(t,r,n)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n),Prs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),Mrs=e=>(t,r)=>e.transporter.read({method:lp.MethodEnum.Post,path:Cg.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),Lll=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=KV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),Cg.createWaitablePromise(e.transporter.write({method:lp.MethodEnum.Put,path:Cg.encode("1/indexes/%s/settings",e.indexName),data:t},o),(l,A)=>vT(e)(l.taskID,A))},vT=e=>(t,r)=>Cg.createRetryablePromise(n=>Lrs(e)(t,r).then(a=>a.status!=="published"?n():void 0)),Vll={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",Inference:"inference",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},P_e={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},Vkt={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Wll={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Oll={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};lu.ApiKeyACLEnum=Vll;lu.BatchActionEnum=P_e;lu.ScopeEnum=Vkt;lu.StrategyEnum=Wll;lu.SynonymEnum=Oll;lu.addApiKey=Dcl;lu.assignUserID=kcl;lu.assignUserIDs=xcl;lu.batch=Grs;lu.browseObjects=gll;lu.browseRules=All;lu.browseSynonyms=dll;lu.chunkedBatch=Lkt;lu.clearDictionaryEntries=Gcl;lu.clearObjects=pll;lu.clearRules=fll;lu.clearSynonyms=Ill;lu.copyIndex=Zkt;lu.copyRules=Fcl;lu.copySettings=Zcl;lu.copySynonyms=Lcl;lu.createBrowsablePromise=Fkt;lu.createMissingObjectIDError=Nrs;lu.createObjectNotFoundError=Drs;lu.createSearchClient=Ncl;lu.createValidUntilNotFoundError=krs;lu.customRequest=Vcl;lu.deleteApiKey=Wcl;lu.deleteBy=hll;lu.deleteDictionaryEntries=Ocl;lu.deleteIndex=mll;lu.deleteObject=Cll;lu.deleteObjects=Frs;lu.deleteRule=_ll;lu.deleteSynonym=yll;lu.exists=bll;lu.findAnswers=Ell;lu.findObject=Sll;lu.generateSecuredApiKey=Pcl;lu.getApiKey=l6e;lu.getAppTask=xrs;lu.getDictionarySettings=Mcl;lu.getLogs=Hcl;lu.getObject=vll;lu.getObjectPosition=Bll;lu.getObjects=wll;lu.getRule=Tll;lu.getSecuredApiKeyRemainingValidity=Ycl;lu.getSettings=Zrs;lu.getSynonym=Rll;lu.getTask=Lrs;lu.getTopUserIDs=Qcl;lu.getUserID=Xcl;lu.hasPendingMappings=Jcl;lu.initIndex=u6e;lu.listApiKeys=Ucl;lu.listClusters=Kcl;lu.listIndices=jcl;lu.listUserIDs=zcl;lu.moveIndex=qcl;lu.multipleBatch=$cl;lu.multipleGetObjects=ell;lu.multipleQueries=tll;lu.multipleSearchForFacetValues=rll;lu.partialUpdateObject=Nll;lu.partialUpdateObjects=Vrs;lu.removeUserID=nll;lu.replaceAllObjects=Dll;lu.replaceAllRules=kll;lu.replaceAllSynonyms=xll;lu.replaceDictionaryEntries=ill;lu.restoreApiKey=sll;lu.saveDictionaryEntries=oll;lu.saveObject=Gll;lu.saveObjects=jHr;lu.saveRule=Fll;lu.saveRules=zHr;lu.saveSynonym=Zll;lu.saveSynonyms=qHr;lu.search=Wrs;lu.searchDictionaryEntries=all;lu.searchForFacetValues=Ors;lu.searchRules=Prs;lu.searchSynonyms=Mrs;lu.searchUserIDs=cll;lu.setDictionarySettings=lll;lu.setSettings=Lll;lu.updateApiKey=ull;lu.waitAppTask=qxe;lu.waitTask=vT});var Qrs=H((Z7u,Yrs)=>{Yrs.exports=Hrs()});var Xrs=H(Wkt=>{"use strict";Object.defineProperty(Wkt,"__esModule",{value:!0});function Pll(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var Mll={Debug:1,Info:2,Error:3};Wkt.LogLevelEnum=Mll;Wkt.createNullLogger=Pll});var $Hr=H((V7u,Jrs)=>{Jrs.exports=Xrs()});var zrs=H(eYr=>{"use strict";Object.defineProperty(eYr,"__esModule",{value:!0});var Urs=Et("http"),Krs=Et("https"),Hll=Et("url"),jrs={keepAlive:!0},Yll=new Urs.Agent(jrs),Qll=new Krs.Agent(jrs);function Xll({agent:e,httpAgent:t,httpsAgent:r,requesterOptions:n={}}={}){let a=t||e||Yll,o=r||e||Qll;return{send(l){return new Promise(A=>{let f=Hll.parse(l.url),I=f.query===null?f.pathname:`${f.pathname}?${f.query}`,C={...n,agent:f.protocol==="https:"?o:a,hostname:f.hostname,path:I,method:l.method,headers:{...n&&n.headers?n.headers:{},...l.headers},...f.port!==void 0?{port:f.port||""}:{}},b=(f.protocol==="https:"?Krs:Urs).request(C,F=>{let Q=[];F.on("data",J=>{Q=Q.concat(J)}),F.on("end",()=>{clearTimeout(N),clearTimeout(B),A({status:F.statusCode||0,content:Buffer.concat(Q).toString(),isTimedOut:!1})})}),E=(F,Q)=>setTimeout(()=>{b.abort(),A({status:0,content:Q,isTimedOut:!0})},F*1e3),N=E(l.connectTimeout,"Connection timeout"),B;b.on("error",F=>{clearTimeout(N),clearTimeout(B),A({status:0,content:F.message,isTimedOut:!1})}),b.once("response",()=>{clearTimeout(N),B=E(l.responseTimeout,"Socket timeout")}),l.data!==void 0&&b.write(l.data),b.end()})},destroy(){return a.destroy(),o.destroy(),Promise.resolve()}}}eYr.createNodeHttpRequester=Xll});var tYr=H((O7u,qrs)=>{qrs.exports=zrs()});var ans=H((P7u,ons)=>{"use strict";var $rs=WHr(),Jll=PHr(),mue=Jxe(),Ull=$Hr(),Kll=tYr(),Okt=jxe(),Pkt=Uxe(),jll=e=>{let t=e.appId,r=mue.createAuth(e.authMode!==void 0?e.authMode:mue.AuthMode.WithinHeaders,t,e.apiKey),n=Okt.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:Okt.CallEnum.Read},{url:`${t}.algolia.net`,accept:Okt.CallEnum.Write}].concat(mue.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return mue.addMethods(a,e.methods)},g6e=e=>(t,r)=>{let n=t.map(a=>({...a,threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},ens=e=>(t,r)=>g6e(e)(t.map(n=>({...n,fallbackParameters:{},model:"bought-together"})),r),tns=e=>(t,r)=>g6e(e)(t.map(n=>({...n,model:"related-products"})),r),rns=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-facets",threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},nns=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-items",threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},ins=e=>(t,r)=>g6e(e)(t.map(n=>({...n,model:"looking-similar"})),r),sns=e=>(t,r)=>{let n=t.map(a=>({...a,model:"recommended-for-you",threshold:a.threshold||0}));return e.transporter.read({method:Pkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)};function Gte(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:Kll.createNodeHttpRequester(),logger:Ull.createNullLogger(),responsesCache:$rs.createNullCache(),requestsCache:$rs.createNullCache(),hostsCache:Jll.createInMemoryCache(),userAgent:Okt.createUserAgent(mue.version).add({segment:"Recommend",version:mue.version}).add({segment:"Node.js",version:process.versions.node})};return jll({...n,...r,methods:{destroy:mue.destroy,getFrequentlyBoughtTogether:ens,getRecommendations:g6e,getRelatedProducts:tns,getTrendingFacets:rns,getTrendingItems:nns,getLookingSimilar:ins,getRecommendedForYou:sns}})}Gte.version=mue.version;Gte.getFrequentlyBoughtTogether=ens;Gte.getRecommendations=g6e;Gte.getRelatedProducts=tns;Gte.getTrendingFacets=rns;Gte.getTrendingItems=nns;Gte.getLookingSimilar=ins;Gte.getRecommendedForYou=sns;ons.exports=Gte});var lns=H((M7u,rYr)=>{var cns=ans();rYr.exports=cns;rYr.exports.default=cns});var dns=H((H7u,Ans)=>{"use strict";var uns=WHr(),zll=PHr(),$xe=vrs(),iYr=Jxe(),nYr=Rrs(),zu=Qrs(),qll=$Hr(),M_e=lns(),$ll=tYr(),eul=jxe();function gns(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:$ll.createNodeHttpRequester(),logger:qll.createNullLogger(),responsesCache:uns.createNullCache(),requestsCache:uns.createNullCache(),hostsCache:zll.createInMemoryCache(),userAgent:eul.createUserAgent(iYr.version).add({segment:"Node.js",version:process.versions.node})},a={...n,...r},o=()=>l=>nYr.createPersonalizationClient({...n,...l,methods:{getPersonalizationStrategy:nYr.getPersonalizationStrategy,setPersonalizationStrategy:nYr.setPersonalizationStrategy}});return zu.createSearchClient({...a,methods:{search:zu.multipleQueries,searchForFacetValues:zu.multipleSearchForFacetValues,multipleBatch:zu.multipleBatch,multipleGetObjects:zu.multipleGetObjects,multipleQueries:zu.multipleQueries,copyIndex:zu.copyIndex,copySettings:zu.copySettings,copyRules:zu.copyRules,copySynonyms:zu.copySynonyms,moveIndex:zu.moveIndex,listIndices:zu.listIndices,getLogs:zu.getLogs,listClusters:zu.listClusters,multipleSearchForFacetValues:zu.multipleSearchForFacetValues,getApiKey:zu.getApiKey,addApiKey:zu.addApiKey,listApiKeys:zu.listApiKeys,updateApiKey:zu.updateApiKey,deleteApiKey:zu.deleteApiKey,restoreApiKey:zu.restoreApiKey,assignUserID:zu.assignUserID,assignUserIDs:zu.assignUserIDs,getUserID:zu.getUserID,searchUserIDs:zu.searchUserIDs,listUserIDs:zu.listUserIDs,getTopUserIDs:zu.getTopUserIDs,removeUserID:zu.removeUserID,hasPendingMappings:zu.hasPendingMappings,generateSecuredApiKey:zu.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:zu.getSecuredApiKeyRemainingValidity,destroy:iYr.destroy,clearDictionaryEntries:zu.clearDictionaryEntries,deleteDictionaryEntries:zu.deleteDictionaryEntries,getDictionarySettings:zu.getDictionarySettings,getAppTask:zu.getAppTask,replaceDictionaryEntries:zu.replaceDictionaryEntries,saveDictionaryEntries:zu.saveDictionaryEntries,searchDictionaryEntries:zu.searchDictionaryEntries,setDictionarySettings:zu.setDictionarySettings,waitAppTask:zu.waitAppTask,customRequest:zu.customRequest,initIndex:l=>A=>zu.initIndex(l)(A,{methods:{batch:zu.batch,delete:zu.deleteIndex,findAnswers:zu.findAnswers,getObject:zu.getObject,getObjects:zu.getObjects,saveObject:zu.saveObject,saveObjects:zu.saveObjects,search:zu.search,searchForFacetValues:zu.searchForFacetValues,waitTask:zu.waitTask,setSettings:zu.setSettings,getSettings:zu.getSettings,partialUpdateObject:zu.partialUpdateObject,partialUpdateObjects:zu.partialUpdateObjects,deleteObject:zu.deleteObject,deleteObjects:zu.deleteObjects,deleteBy:zu.deleteBy,clearObjects:zu.clearObjects,browseObjects:zu.browseObjects,getObjectPosition:zu.getObjectPosition,findObject:zu.findObject,exists:zu.exists,saveSynonym:zu.saveSynonym,saveSynonyms:zu.saveSynonyms,getSynonym:zu.getSynonym,searchSynonyms:zu.searchSynonyms,browseSynonyms:zu.browseSynonyms,deleteSynonym:zu.deleteSynonym,clearSynonyms:zu.clearSynonyms,replaceAllObjects:zu.replaceAllObjects,replaceAllSynonyms:zu.replaceAllSynonyms,searchRules:zu.searchRules,getRule:zu.getRule,deleteRule:zu.deleteRule,saveRule:zu.saveRule,saveRules:zu.saveRules,replaceAllRules:zu.replaceAllRules,browseRules:zu.browseRules,clearRules:zu.clearRules}}),initAnalytics:()=>l=>$xe.createAnalyticsClient({...n,...l,methods:{addABTest:$xe.addABTest,getABTest:$xe.getABTest,getABTests:$xe.getABTests,stopABTest:$xe.stopABTest,deleteABTest:$xe.deleteABTest}}),initPersonalization:o,initRecommendation:()=>l=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),o()(l)),getRecommendations:M_e.getRecommendations,getFrequentlyBoughtTogether:M_e.getFrequentlyBoughtTogether,getLookingSimilar:M_e.getLookingSimilar,getRecommendedForYou:M_e.getRecommendedForYou,getRelatedProducts:M_e.getRelatedProducts,getTrendingFacets:M_e.getTrendingFacets,getTrendingItems:M_e.getTrendingItems}})}gns.version=iYr.version;Ans.exports=gns});var oYr=H((Y7u,sYr)=>{var pns=dns();sYr.exports=pns;sYr.exports.default=pns});var fns=H(Mkt=>{"use strict";Object.defineProperty(Mkt,"__esModule",{value:!0});Mkt.search=void 0;var tul=(Wa(),vi(Va)),rul=tul.__importDefault(oYr()),aYr={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},nul=(0,rul.default)(aYr.appId,aYr.apiKey).initIndex(aYr.indexName),iul=async(e,t=0)=>await nul.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10});Mkt.search=iul});var Dns=H(R_=>{"use strict";var lYr=Jpt(),eGe=60103,mns=60106;R_.Fragment=60107;R_.StrictMode=60108;R_.Profiler=60114;var Cns=60109,_ns=60110,yns=60112;R_.Suspense=60113;var bns=60115,Ens=60116;typeof Symbol=="function"&&Symbol.for&&(DH=Symbol.for,eGe=DH("react.element"),mns=DH("react.portal"),R_.Fragment=DH("react.fragment"),R_.StrictMode=DH("react.strict_mode"),R_.Profiler=DH("react.profiler"),Cns=DH("react.provider"),_ns=DH("react.context"),yns=DH("react.forward_ref"),R_.Suspense=DH("react.suspense"),bns=DH("react.memo"),Ens=DH("react.lazy"));var DH,Ins=typeof Symbol=="function"&&Symbol.iterator;function sul(e){return e===null||typeof e!="object"?null:(e=Ins&&e[Ins]||e["@@iterator"],typeof e=="function"?e:null)}function A6e(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r{"use strict";kns.exports=Dns()});var Zns=H(d6e=>{"use strict";var Fns=d6e&&d6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(d6e,"__esModule",{value:!0});var xns=Fns(UMe()),Gns=Fns(kBe()),uul=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(Gns.default.hide(),a=!0);let A=l+` +`;A!==n&&(n=A,e.write(xns.default.eraseLines(r)+A),r=A.split(` +`).length)};return o.clear=()=>{e.write(xns.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(Gns.default.show(),a=!1)},o};d6e.default={create:uul}});var Lns=H((K7u,p6e)=>{p6e.exports=function(t){var r={},n=Jpt(),a=lC(),o=tHe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;teUr||Ve[dr]!==It[Ur])return` -`+Ve[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Uu(x):""}var Sg=[],HA=-1;function ZA(x){return{current:x}}function $i(x){0>HA||(x.current=Sg[HA],Sg[HA]=null,HA--)}function gl(x,L){HA++,Sg[HA]=x.current,x.current=L}var zf={},zd=ZA(zf),aA=ZA(!1),so=zf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return zf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Ve={},It;for(It in te)Ve[It]=L[It];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Ve),Ve}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(aA),$i(zd)}function ws(x,L,te){if(zd.current!==zf)throw Error(l(168));gl(zd,L),gl(aA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Ve in Re)if(!(Ve in x))throw Error(l(108,k(L)||"Unknown",Ve));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||zf,so=zd.current,gl(zd,x),gl(aA,aA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,so),Re.__reactInternalMemoizedMergedChildContext=x,$i(aA),$i(zd),gl(zd,x)):$i(aA),gl(aA,te)}var As=null,Nf=null,Am=o.unstable_now;Am();var Zl=0,rc=8;function ad(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Qm(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function rl(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function LA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Ve=0,It=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(It!==0)Re=It,Ve=rc=15;else if(It=te&134217727,It!==0){var mi=It&~dr;mi!==0?(Re=ad(mi),Ve=rc):(Ur&=It,Ur!==0&&(Re=ad(Ur),Ve=rc))}else It=te&~dr,It!==0?(Re=ad(It),Ve=rc):Ur!==0&&(Re=ad(Ur),Ve=rc);if(Re===0)return 0;if(Re=31-vr(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function YA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-vr(L),x[L]=te}var vr=Math.clz32?Math.clz32:ls,Zt=Math.log,bn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/bn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Oa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,gd=o.unstable_requestPaint,Dp=o.unstable_now,sp=o.unstable_getCurrentPriorityLevel,QA=o.unstable_ImmediatePriority,ff=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,io=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Hl={},Dr=gd!==void 0?gd:function(){},On=null,di=null,aa=!1,Bo=Dp(),us=1e4>Bo?Dp:function(){return Dp()-Bo};function Xl(){switch(sp()){case QA:return 99;case ff:return 98;case Zs:return 97;case io:return 96;case Ea:return 95;default:throw Error(l(332))}}function WA(x){switch(x){case 99:return QA;case 98:return ff;case 97:return Zs;case 96:return io;case 95:return Ea;default:throw Error(l(332))}}function If(x,L){return x=WA(x),oa(x,L)}function rf(x,L,te){return x=WA(x),Fs(x,L,te)}function op(){if(di!==null){var x=di;di=null,Oa(x)}bd()}function bd(){if(!aa&&On!==null){aa=!0;var x=0;try{var L=On;If(99,function(){for(;xhu?(ml=dc,dc=null):ml=dc.sibling;var wl=Ho(xn,dc,Ci[hu],Wo);if(wl===null){dc===null&&(dc=ml);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=It(wl,rn,hu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=ml}if(hu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;huhu?(ml=dc,dc=null):ml=dc.sibling;var rI=Ho(xn,dc,wl.value,Wo);if(rI===null){dc===null&&(dc=ml);break}x&&dc&&rI.alternate===null&&L(xn,dc),rn=It(rI,rn,hu),Ra===null?ec=rI:Ra.sibling=rI,Ra=rI,dc=ml}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;hu++,wl=Ci.next())wl=El(xn,wl.value,Wo),wl!==null&&(rn=It(wl,rn,hu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;hu++,wl=Ci.next())wl=Pg(dc,xn,hu,wl.value,Wo),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?hu:wl.key),rn=It(wl,rn,hu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(eS){return L(xn,eS)}),ec}return function(xn,rn,Ci,Wo){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Ve(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Ve(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=md(Ci.props.children,xn.mode,Wo,Ci.key),rn.return=xn,xn=rn):(Wo=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Wo),Wo.ref=Lr(xn,rn,Ci),Wo.return=xn,xn=Wo)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Ve(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=ky(Ci,xn.mode,Wo),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Ve(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=iv(Ci,xn.mode,Wo),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return lA(xn,rn,Ci,Wo);if(De(Ci))return ih(xn,rn,Ci,Wo);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Dl={},ca=ZA(Dl),Bl=ZA(Dl),eA=ZA(Dl);function BA(x){if(x===Dl)throw Error(l(174));return x}function gI(x,L){gl(eA,L),gl(Bl,x),gl(ca,Dl),x=Er(L),$i(ca),gl(ca,x)}function gp(){$i(ca),$i(Bl),$i(eA)}function mb(x){var L=BA(eA.current),te=BA(ca.current);L=Sr(te,x.type,L),te!==L&&(gl(Bl,x),gl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var Rd=ZA(0);function e2(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||fu(te)||yg(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var N_=null,DC=null,Jm=!1;function US(x,L){var te=Hf(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Zg(x,L){switch(x.tag){case 5:return L=Ju(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function Cb(x){if(Jm){var L=DC;if(L){var te=L;if(!Zg(x,L)){if(L=_I(te),!L||!Zg(x,L)){x.flags=x.flags&-1025|2,Jm=!1,N_=x;return}US(N_,te)}N_=x,DC=Kh(L)}else x.flags=x.flags&-1025|2,Jm=!1,N_=x}}function pC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;N_=x}function kC(x){if(!Nn||x!==N_)return!1;if(!Jm)return pC(x),Jm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=DC;L;)US(x,L),L=_I(L);if(pC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));DC=Pt(x)}else DC=N_?_I(x.stateNode):null;return!0}function U2(){Nn&&(DC=N_=null,Jm=!1)}var j_=[];function xC(){for(var x=0;xIt))throw Error(l(301));It+=1,Mc=Nd=null,L.updateQueue=null,GC.current=Jr,x=te(Re,Ve)}while(cE)}if(GC.current=xc,L=Nd!==null&&Nd.next!==null,mh=0,Mc=Nd=wA=null,Pf=!1,L)throw Error(l(300));return x}function pm(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function fm(){if(Nd===null){var x=wA.alternate;x=x!==null?x.memoizedState:null}else x=Nd.next;var L=Mc===null?wA.memoizedState:Mc.next;if(L!==null)Mc=L,Nd=x;else{if(x===null)throw Error(l(310));Nd=x,x={memoizedState:Nd.memoizedState,baseState:Nd.baseState,baseQueue:Nd.baseQueue,queue:Nd.queue,next:null},Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Nd,Ve=Re.baseQueue,It=te.pending;if(It!==null){if(Ve!==null){var dr=Ve.next;Ve.next=It.next,It.next=dr}Re.baseQueue=Ve=It,te.pending=null}if(Ve!==null){Ve=Ve.next,Re=Re.baseState;var Ur=dr=It=null,mi=Ve;do{var Vi=mi.lane;if((mh&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,It=Re):Ur=Ur.next=Ta,wA.lanes|=Vi,FC|=Vi}mi=mi.next}while(mi!==null&&mi!==Ve);Ur===null?It=Re:Ur.next=dr,XA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=It,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Ve=te.pending,It=L.memoizedState;if(Ve!==null){te.pending=null;var dr=Ve=Ve.next;do It=x(It,dr.action),dr=dr.next;while(dr!==Ve);XA(It,L.memoizedState)||(Ts=!0),L.memoizedState=It,L.baseQueue===null&&(L.baseState=It),te.lastRenderedState=It}return[It,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Ve=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Ve!==null?x=Ve===Re:(x=x.mutableReadLanes,(x=(mh&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,j_.push(L))),x)return te(L._source);throw j_.push(L),Error(l(350))}function jl(x,L,te,Re){var Ve=Ch;if(Ve===null)throw Error(l(349));var It=L._getVersion,dr=It(L._source),Ur=GC.current,mi=Ur.useState(function(){return ki(Ve,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var El=x.memoizedState,Ho=El.refs,Pg=Ho.getSnapshot,lA=El.source;El=El.subscribe;var ih=wA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=It(L._source);if(!XA(dr,xn)){xn=te(L._source),XA(Ta,xn)||(Vi(xn),xn=Kp(ih),Ve.mutableReadLanes|=xn&Ve.pendingLanes),xn=Ve.mutableReadLanes,Ve.entangledLanes|=xn;for(var rn=Ve.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),If(97WT&&(L.flags|=64,Ve=!0,Dy(Re,!1),L.lanes=33554432)}else{if(!Ve)if(x=e2(It),x!==null){if(L.flags|=64,Ve=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Dy(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!It.alternate&&!Jm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>WT&&te!==1073741824&&(L.flags|=64,Ve=!0,Dy(Re,!1),L.lanes=33554432);Re.isBackwards?(It.sibling=L.child,L.child=It):(x=Re.last,x!==null?x.sibling=It:L.child=It,Re.last=It)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=Rd.current,gl(Rd,Ve?L&1|2:L&1),x):null;case 23:case 24:return kp(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function bb(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(gp(),$i(aA),$i(zd),xC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(Rd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(Rd),null;case 4:return gp(),null;case 10:return KE(x),null;case 23:case 24:return kp(),null;default:return null}}function $_(x,L){try{var te="",Re=L;do te+=JS(Re),Re=Re.return;while(Re);var Ve=te}catch(It){Ve=` +`+Ve[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Uu(x):""}var Sg=[],HA=-1;function ZA(x){return{current:x}}function $i(x){0>HA||(x.current=Sg[HA],Sg[HA]=null,HA--)}function Al(x,L){HA++,Sg[HA]=x.current,x.current=L}var zf={},zd=ZA(zf),cA=ZA(!1),so=zf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return zf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Ve={},It;for(It in te)Ve[It]=L[It];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Ve),Ve}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(cA),$i(zd)}function ws(x,L,te){if(zd.current!==zf)throw Error(l(168));Al(zd,L),Al(cA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Ve in Re)if(!(Ve in x))throw Error(l(108,k(L)||"Unknown",Ve));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||zf,so=zd.current,Al(zd,x),Al(cA,cA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,so),Re.__reactInternalMemoizedMergedChildContext=x,$i(cA),$i(zd),Al(zd,x)):$i(cA),Al(cA,te)}var As=null,Nf=null,Am=o.unstable_now;Am();var Zl=0,rc=8;function ad(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Qm(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function rl(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function LA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Ve=0,It=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(It!==0)Re=It,Ve=rc=15;else if(It=te&134217727,It!==0){var mi=It&~dr;mi!==0?(Re=ad(mi),Ve=rc):(Ur&=It,Ur!==0&&(Re=ad(Ur),Ve=rc))}else It=te&~dr,It!==0?(Re=ad(It),Ve=rc):Ur!==0&&(Re=ad(Ur),Ve=rc);if(Re===0)return 0;if(Re=31-vr(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function YA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-vr(L),x[L]=te}var vr=Math.clz32?Math.clz32:ls,Zt=Math.log,yn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/yn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Oa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,gd=o.unstable_requestPaint,Dp=o.unstable_now,sp=o.unstable_getCurrentPriorityLevel,QA=o.unstable_ImmediatePriority,ff=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,io=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Hl={},Dr=gd!==void 0?gd:function(){},On=null,di=null,aa=!1,vo=Dp(),us=1e4>vo?Dp:function(){return Dp()-vo};function Xl(){switch(sp()){case QA:return 99;case ff:return 98;case Zs:return 97;case io:return 96;case Ea:return 95;default:throw Error(l(332))}}function WA(x){switch(x){case 99:return QA;case 98:return ff;case 97:return Zs;case 96:return io;case 95:return Ea;default:throw Error(l(332))}}function If(x,L){return x=WA(x),oa(x,L)}function rf(x,L,te){return x=WA(x),Fs(x,L,te)}function op(){if(di!==null){var x=di;di=null,Oa(x)}bd()}function bd(){if(!aa&&On!==null){aa=!0;var x=0;try{var L=On;If(99,function(){for(;xhu?(ml=dc,dc=null):ml=dc.sibling;var Tl=Ho(xn,dc,Ci[hu],Wo);if(Tl===null){dc===null&&(dc=ml);break}x&&dc&&Tl.alternate===null&&L(xn,dc),rn=It(Tl,rn,hu),Ra===null?ec=Tl:Ra.sibling=Tl,Ra=Tl,dc=ml}if(hu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;huhu?(ml=dc,dc=null):ml=dc.sibling;var rI=Ho(xn,dc,Tl.value,Wo);if(rI===null){dc===null&&(dc=ml);break}x&&dc&&rI.alternate===null&&L(xn,dc),rn=It(rI,rn,hu),Ra===null?ec=rI:Ra.sibling=rI,Ra=rI,dc=ml}if(Tl.done)return te(xn,dc),ec;if(dc===null){for(;!Tl.done;hu++,Tl=Ci.next())Tl=El(xn,Tl.value,Wo),Tl!==null&&(rn=It(Tl,rn,hu),Ra===null?ec=Tl:Ra.sibling=Tl,Ra=Tl);return ec}for(dc=Re(xn,dc);!Tl.done;hu++,Tl=Ci.next())Tl=Pg(dc,xn,hu,Tl.value,Wo),Tl!==null&&(x&&Tl.alternate!==null&&dc.delete(Tl.key===null?hu:Tl.key),rn=It(Tl,rn,hu),Ra===null?ec=Tl:Ra.sibling=Tl,Ra=Tl);return x&&dc.forEach(function(tS){return L(xn,tS)}),ec}return function(xn,rn,Ci,Wo){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Ve(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Ve(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=md(Ci.props.children,xn.mode,Wo,Ci.key),rn.return=xn,xn=rn):(Wo=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Wo),Wo.ref=Lr(xn,rn,Ci),Wo.return=xn,xn=Wo)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Ve(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=xy(Ci,xn.mode,Wo),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Ve(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=sv(Ci,xn.mode,Wo),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return uA(xn,rn,Ci,Wo);if(De(Ci))return ih(xn,rn,Ci,Wo);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Dl={},ca=ZA(Dl),wl=ZA(Dl),eA=ZA(Dl);function BA(x){if(x===Dl)throw Error(l(174));return x}function gI(x,L){Al(eA,L),Al(wl,x),Al(ca,Dl),x=Er(L),$i(ca),Al(ca,x)}function gp(){$i(ca),$i(wl),$i(eA)}function Cb(x){var L=BA(eA.current),te=BA(ca.current);L=Sr(te,x.type,L),te!==L&&(Al(wl,x),Al(ca,L))}function Na(x){wl.current===x&&($i(ca),$i(wl))}var Rd=ZA(0);function t2(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||fu(te)||yg(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var D_=null,kC=null,Jm=!1;function KS(x,L){var te=Hf(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Zg(x,L){switch(x.tag){case 5:return L=Ju(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function _b(x){if(Jm){var L=kC;if(L){var te=L;if(!Zg(x,L)){if(L=_I(te),!L||!Zg(x,L)){x.flags=x.flags&-1025|2,Jm=!1,D_=x;return}KS(D_,te)}D_=x,kC=Kh(L)}else x.flags=x.flags&-1025|2,Jm=!1,D_=x}}function pC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;D_=x}function xC(x){if(!Nn||x!==D_)return!1;if(!Jm)return pC(x),Jm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=kC;L;)KS(x,L),L=_I(L);if(pC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));kC=Pt(x)}else kC=D_?_I(x.stateNode):null;return!0}function K2(){Nn&&(kC=D_=null,Jm=!1)}var z_=[];function GC(){for(var x=0;xIt))throw Error(l(301));It+=1,Mc=Nd=null,L.updateQueue=null,FC.current=Jr,x=te(Re,Ve)}while(lE)}if(FC.current=xc,L=Nd!==null&&Nd.next!==null,mh=0,Mc=Nd=wA=null,Pf=!1,L)throw Error(l(300));return x}function pm(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function fm(){if(Nd===null){var x=wA.alternate;x=x!==null?x.memoizedState:null}else x=Nd.next;var L=Mc===null?wA.memoizedState:Mc.next;if(L!==null)Mc=L,Nd=x;else{if(x===null)throw Error(l(310));Nd=x,x={memoizedState:Nd.memoizedState,baseState:Nd.baseState,baseQueue:Nd.baseQueue,queue:Nd.queue,next:null},Mc===null?wA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Nd,Ve=Re.baseQueue,It=te.pending;if(It!==null){if(Ve!==null){var dr=Ve.next;Ve.next=It.next,It.next=dr}Re.baseQueue=Ve=It,te.pending=null}if(Ve!==null){Ve=Ve.next,Re=Re.baseState;var Ur=dr=It=null,mi=Ve;do{var Vi=mi.lane;if((mh&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,It=Re):Ur=Ur.next=Ta,wA.lanes|=Vi,ZC|=Vi}mi=mi.next}while(mi!==null&&mi!==Ve);Ur===null?It=Re:Ur.next=dr,XA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=It,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=fm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Ve=te.pending,It=L.memoizedState;if(Ve!==null){te.pending=null;var dr=Ve=Ve.next;do It=x(It,dr.action),dr=dr.next;while(dr!==Ve);XA(It,L.memoizedState)||(Ts=!0),L.memoizedState=It,L.baseQueue===null&&(L.baseState=It),te.lastRenderedState=It}return[It,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Ve=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Ve!==null?x=Ve===Re:(x=x.mutableReadLanes,(x=(mh&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,z_.push(L))),x)return te(L._source);throw z_.push(L),Error(l(350))}function jl(x,L,te,Re){var Ve=Ch;if(Ve===null)throw Error(l(349));var It=L._getVersion,dr=It(L._source),Ur=FC.current,mi=Ur.useState(function(){return ki(Ve,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var El=x.memoizedState,Ho=El.refs,Pg=Ho.getSnapshot,uA=El.source;El=El.subscribe;var ih=wA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=It(L._source);if(!XA(dr,xn)){xn=te(L._source),XA(Ta,xn)||(Vi(xn),xn=Kp(ih),Ve.mutableReadLanes|=xn&Ve.pendingLanes),xn=Ve.mutableReadLanes,Ve.entangledLanes|=xn;for(var rn=Ve.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),If(97OT&&(L.flags|=64,Ve=!0,ky(Re,!1),L.lanes=33554432)}else{if(!Ve)if(x=t2(It),x!==null){if(L.flags|=64,Ve=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),ky(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!It.alternate&&!Jm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>OT&&te!==1073741824&&(L.flags|=64,Ve=!0,ky(Re,!1),L.lanes=33554432);Re.isBackwards?(It.sibling=L.child,L.child=It):(x=Re.last,x!==null?x.sibling=It:L.child=It,Re.last=It)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=Rd.current,Al(Rd,Ve?L&1|2:L&1),x):null;case 23:case 24:return kp(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function Eb(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(gp(),$i(cA),$i(zd),GC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(Rd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(Rd),null;case 4:return gp(),null;case 10:return jE(x),null;case 23:case 24:return kp(),null;default:return null}}function e0(x,L){try{var te="",Re=L;do te+=US(Re),Re=Re.return;while(Re);var Ve=te}catch(It){Ve=` Error generating stack: `+It.message+` -`+It.stack}return{value:x,source:L,stack:Ve}}function e1(x,L){try{console.error(L.value)}catch(te){setTimeout(function(){throw te})}}var gB=typeof WeakMap=="function"?WeakMap:Map;function ZT(x,L,te){te=dm(-1,te),te.tag=3,te.payload={element:null};var Re=L.value;return te.callback=function(){n2||(n2=!0,Ed=Re),e1(x,L)},te}function AB(x,L,te){te=dm(-1,te),te.tag=3;var Re=x.type.getDerivedStateFromError;if(typeof Re=="function"){var Ve=L.value;te.payload=function(){return e1(x,L),Re(Ve)}}var It=x.stateNode;return It!==null&&typeof It.componentDidCatch=="function"&&(te.callback=function(){typeof Re!="function"&&(SI===null?SI=new Set([this]):SI.add(this),e1(x,L));var dr=L.stack;this.componentDidCatch(L.value,{componentStack:dr!==null?dr:""})}),te}var ev=typeof WeakSet=="function"?WeakSet:Set;function zR(x){var L=x.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(te){o_(x,te)}else L.current=null}function tv(x,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&x!==null){var te=x.memoizedProps,Re=x.memoizedState;x=L.stateNode,L=x.getSnapshotBeforeUpdate(L.elementType===L.type?te:qd(L.type,te),Re),x.__reactInternalSnapshotBeforeUpdate=L}return;case 3:zt&&L.flags&256&&Ei(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(l(163))}function t1(x,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var te=L=L.next;do{if((te.tag&x)===x){var Re=te.destroy;te.destroy=void 0,Re!==void 0&&Re()}te=te.next}while(te!==L)}}function j2(x,L,te){switch(te.tag){case 0:case 11:case 15:case 22:if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{if((x.tag&3)===3){var Re=x.create;x.destroy=Re()}x=x.next}while(x!==L)}if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{var Ve=x;Re=Ve.next,Ve=Ve.tag,Ve&4&&Ve&1&&(Cp(te,x),sy(te,x)),x=Re}while(x!==L)}return;case 1:x=te.stateNode,te.flags&4&&(L===null?x.componentDidMount():(Re=te.elementType===te.type?L.memoizedProps:qd(te.type,L.memoizedProps),x.componentDidUpdate(Re,L.memoizedState,x.__reactInternalSnapshotBeforeUpdate))),L=te.updateQueue,L!==null&&J2(te,L,x);return;case 3:if(L=te.updateQueue,L!==null){if(x=null,te.child!==null)switch(te.child.tag){case 5:x=Ot(te.child.stateNode);break;case 1:x=te.child.stateNode}J2(te,L,x)}return;case 5:x=te.stateNode,L===null&&te.flags&4&&ps(x,te.type,te.memoizedProps,te);return;case 6:return;case 4:return;case 12:return;case 13:Nn&&te.memoizedState===null&&(te=te.alternate,te!==null&&(te=te.memoizedState,te!==null&&(te=te.dehydrated,te!==null&&Ru(te))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(l(163))}function LT(x,L){if(zt)for(var te=x;;){if(te.tag===5){var Re=te.stateNode;L?sA(Re):vu(te.stateNode,te.memoizedProps)}else if(te.tag===6)Re=te.stateNode,L?ma(Re):li(Re,te.memoizedProps);else if((te.tag!==23&&te.tag!==24||te.memoizedState===null||te===x)&&te.child!==null){te.child.return=te,te=te.child;continue}if(te===x)break;for(;te.sibling===null;){if(te.return===null||te.return===x)return;te=te.return}te.sibling.return=te.return,te=te.sibling}}function pn(x,L){if(Nf&&typeof Nf.onCommitFiberUnmount=="function")try{Nf.onCommitFiberUnmount(As,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(x=L.updateQueue,x!==null&&(x=x.lastEffect,x!==null)){var te=x=x.next;do{var Re=te,Ve=Re.destroy;if(Re=Re.tag,Ve!==void 0)if(Re&4)Cp(L,te);else{Re=L;try{Ve()}catch(It){o_(Re,It)}}te=te.next}while(te!==x)}break;case 1:if(zR(L),x=L.stateNode,typeof x.componentWillUnmount=="function")try{x.props=L.memoizedProps,x.state=L.memoizedState,x.componentWillUnmount()}catch(It){o_(L,It)}break;case 5:zR(L);break;case 4:zt?GD(x,L):Fn&&Fn&&(L=L.stateNode.containerInfo,x=Xa(L),Oc(L,x))}}function t2(x,L){for(var te=L;;)if(pn(x,te),te.child===null||zt&&te.tag===4){if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return}te.sibling.return=te.return,te=te.sibling}else te.child.return=te,te=te.child}function z2(x){x.alternate=null,x.child=null,x.dependencies=null,x.firstEffect=null,x.lastEffect=null,x.memoizedProps=null,x.memoizedState=null,x.pendingProps=null,x.return=null,x.updateQueue=null}function ry(x){return x.tag===5||x.tag===3||x.tag===4}function Ap(x){if(zt){e:{for(var L=x.return;L!==null;){if(ry(L))break e;L=L.return}throw Error(l(160))}var te=L;switch(L=te.stateNode,te.tag){case 5:var Re=!1;break;case 3:L=L.containerInfo,Re=!0;break;case 4:L=L.containerInfo,Re=!0;break;default:throw Error(l(161))}te.flags&16&&(Nc(L),te.flags&=-17);e:t:for(te=x;;){for(;te.sibling===null;){if(te.return===null||ry(te.return)){te=null;break e}te=te.return}for(te.sibling.return=te.return,te=te.sibling;te.tag!==5&&te.tag!==6&&te.tag!==18;){if(te.flags&2||te.child===null||te.tag===4)continue t;te.child.return=te,te=te.child}if(!(te.flags&2)){te=te.stateNode;break e}}Re?yw(x,te,L):dB(x,te,L)}}function yw(x,L,te){var Re=x.tag,Ve=Re===5||Re===6;if(Ve)x=Ve?x.stateNode:x.stateNode.instance,L?Qa(te,x,L):Pr(te,x);else if(Re!==4&&(x=x.child,x!==null))for(yw(x,L,te),x=x.sibling;x!==null;)yw(x,L,te),x=x.sibling}function dB(x,L,te){var Re=x.tag,Ve=Re===5||Re===6;if(Ve)x=Ve?x.stateNode:x.stateNode.instance,L?bo(te,x,L):Rn(te,x);else if(Re!==4&&(x=x.child,x!==null))for(dB(x,L,te),x=x.sibling;x!==null;)dB(x,L,te),x=x.sibling}function GD(x,L){for(var te=L,Re=!1,Ve,It;;){if(!Re){Re=te.return;e:for(;;){if(Re===null)throw Error(l(160));switch(Ve=Re.stateNode,Re.tag){case 5:It=!1;break e;case 3:Ve=Ve.containerInfo,It=!0;break e;case 4:Ve=Ve.containerInfo,It=!0;break e}Re=Re.return}Re=!0}if(te.tag===5||te.tag===6)t2(x,te),It?_g(Ve,te.stateNode):gc(Ve,te.stateNode);else if(te.tag===4){if(te.child!==null){Ve=te.stateNode.containerInfo,It=!0,te.child.return=te,te=te.child;continue}}else if(pn(x,te),te.child!==null){te.child.return=te,te=te.child;continue}if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return,te.tag===4&&(Re=!1)}te.sibling.return=te.return,te=te.sibling}}function Dd(x,L){if(zt){switch(L.tag){case 0:case 11:case 14:case 15:case 22:t1(3,L);return;case 1:return;case 5:var te=L.stateNode;if(te!=null){var Re=L.memoizedProps;x=x!==null?x.memoizedProps:Re;var Ve=L.type,It=L.updateQueue;L.updateQueue=null,It!==null&&yo(te,It,Ve,x,Re,L)}return;case 6:if(L.stateNode===null)throw Error(l(162));te=L.memoizedProps,Qi(L.stateNode,x!==null?x.memoizedProps:te,te);return;case 3:Nn&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,Hu(L.containerInfo)));return;case 12:return;case 13:qR(L),ny(L);return;case 19:ny(L);return;case 17:return;case 23:case 24:LT(L,L.memoizedState!==null);return}throw Error(l(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:t1(3,L);return;case 12:return;case 13:qR(L),ny(L);return;case 19:ny(L);return;case 3:Nn&&(te=L.stateNode,te.hydrate&&(te.hydrate=!1,Hu(te.containerInfo)));break;case 23:case 24:return}e:if(Fn){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,Oc(L.containerInfo,L.pendingChildren);break e}throw Error(l(163))}}function qR(x){x.memoizedState!==null&&(bw=us(),zt&<(x.child,!0))}function ny(x){var L=x.updateQueue;if(L!==null){x.updateQueue=null;var te=x.stateNode;te===null&&(te=x.stateNode=new ev),L.forEach(function(Re){var Ve=PT.bind(null,x,Re);te.has(Re)||(te.add(Re),Re.then(Ve,Ve))})}}function pF(x,L){return x!==null&&(x=x.memoizedState,x===null||x.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var r2=0,r1=1,k_=2,n1=3,i1=4;if(typeof Symbol=="function"&&Symbol.for){var iy=Symbol.for;r2=iy("selector.component"),r1=iy("selector.has_pseudo_class"),k_=iy("selector.role"),n1=iy("selector.test_id"),i1=iy("selector.text")}function VT(x){var L=Hi(x);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(l(364));return L}if(x=Gc(x),x===null)throw Error(l(362));return x.stateNode.current}function Eb(x,L){switch(L.$$typeof){case r2:if(x.type===L.value)return!0;break;case r1:e:{L=L.value,x=[x,0];for(var te=0;te";case r1:return":has("+(i_(x)||"")+")";case k_:return'[role="'+x.value+'"]';case i1:return'"'+x.value+'"';case n1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function xh(x,L){var te=[];x=[x,0];for(var Re=0;ReVe&&(Ve=dr),te&=~It}if(te=Ve,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*ZD(te/1960))-te,10";case n1:return":has("+(s_(x)||"")+")";case x_:return'[role="'+x.value+'"]';case s1:return'"'+x.value+'"';case i1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function xh(x,L){var te=[];x=[x,0];for(var Re=0;ReVe&&(Ve=dr),te&=~It}if(te=Ve,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*LD(te/1960))-te,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Jp!==5&&(Jp=2),mi=$_(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:It=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=ZT(Ho,It,L);yI(Ho,Ra);break e;case 1:It=mi;var dc=Ho.type,hu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||hu!==null&&typeof hu.componentDidCatch=="function"&&(SI===null||!SI.has(hu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var ml=AB(Ho,It,L);yI(Ho,ml);break e}}Ho=Ho.return}while(Ho!==null)}su(te)}catch(wl){L=wl,sf===te&&te!==null&&(sf=te=te.return);continue}break}while(!0)}function i2(){var x=e0.current;return e0.current=xc,x===null?xc:x}function Ro(x,L){var te=lc;lc|=16;var Re=i2();Ch===x&&EI===L||Fm(x,L);do try{fE();break}catch(Ve){xp(x,Ve)}while(!0);if(K_(),lc=te,e0.current=Re,sf!==null)throw Error(l(261));return Ch=null,EI=0,Jp}function fE(){for(;sf!==null;)Xc(sf)}function hB(){for(;sf!==null&&!Ca();)Xc(sf)}function Xc(x){var L=Sx(x.alternate,x,uE);x.memoizedProps=x.pendingProps,L===null?su(x):sf=L,LD.current=null}function su(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=bb(L),te!==null){te.flags&=2047,sf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=$S(te,L,uE),te!==null){sf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||uE&1073741824||!(te.mode&4)){for(var Re=0,Ve=te.child;Ve!==null;)Re|=Ve.lanes|Ve.childLanes,Ve=Ve.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-bw?Fm(x,0):s1|=te),nh(x,L)}function PT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(mp===0&&(mp=_h),L=bg(62914560&~mp),L===0&&(L=4194304)):L=Xl()===99?1:2:L=1),te=Iu(),x=dE(x,L),x!==null&&(YA(x,L,te),nh(x,te))}var Sx;Sx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||aA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:GT(L),U2();break;case 5:mb(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:gI(L,L.stateNode.containerInfo);break;case 10:ey(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?$E(x,L,te):(gl(Rd,Rd.current&1),L=TA(x,L,te),L!==null?L.sibling:null);gl(Rd,Rd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return rh(x,L,te);L.flags|=64}var Ve=L.memoizedState;if(Ve!==null&&(Ve.rendering=null,Ve.tail=null,Ve.lastEffect=null),gl(Rd,Rd.current),Re)break;return null;case 23:case 24:return L.lanes=0,AI(x,L,te)}return TA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Ve=Ki(L,zd.current),n_(L,te),Ve=jS(null,L,Re,x,Ve,te),L.flags|=1,typeof Ve=="object"&&Ve!==null&&typeof Ve.render=="function"&&Ve.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var It=!0;Ma(L)}else It=!1;L.memoizedState=Ve.state!==null&&Ve.state!==void 0?Ve.state:null,hb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Ve.updater=P,L.stateNode=Ve,Ve._reactInternals=L,sr(L,Re,x,te),L=uB(null,L,Re,!0,It,te)}else L.tag=0,Qo(null,L,Ve,te),L=L.child;return L;case 16:Ve=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,It=Ve._init,Ve=It(Ve._payload),L.type=Ve,It=L.tag=Od(Ve),x=qd(Ve,x),It){case 0:L=lE(null,L,Ve,x,te);break e;case 1:L=xT(null,L,Ve,x,te);break e;case 11:L=Bg(null,L,Ve,x,te);break e;case 14:L=Dg(null,L,Ve,qd(Ve.type,x),Re,te);break e}throw Error(l(306,Ve,""))}return L;case 0:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),lE(x,L,Re,Ve,te);case 1:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),xT(x,L,Re,Ve,te);case 3:if(GT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Ve=L.memoizedState,Ve=Ve!==null?Ve.element:null,pe(x,L),bI(L,Re,null,te),Re=L.memoizedState.element,Re===Ve)U2(),L=TA(x,L,te);else{if(Ve=L.stateNode,(It=Ve.hydrate)&&(Nn?(DC=Kh(L.stateNode.containerInfo),N_=L,It=Jm=!0):It=!1),It){if(Nn&&(x=Ve.mutableSourceEagerHydrationData,x!=null))for(Ve=0;Ve=Vi&&It>=El&&Ve<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(It!==El||te.height!==mi.height||TaVe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),TaIt&&(mi.height+=El-It,mi.y=It),Hote&&(te=dr)),dr component higher in the tree to provide a loading indicator or placeholder to display.`)}Jp!==5&&(Jp=2),mi=e0(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:It=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=LT(Ho,It,L);yI(Ho,Ra);break e;case 1:It=mi;var dc=Ho.type,hu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||hu!==null&&typeof hu.componentDidCatch=="function"&&(SI===null||!SI.has(hu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var ml=dB(Ho,It,L);yI(Ho,ml);break e}}Ho=Ho.return}while(Ho!==null)}su(te)}catch(Tl){L=Tl,sf===te&&te!==null&&(sf=te=te.return);continue}break}while(!0)}function s2(){var x=t0.current;return t0.current=xc,x===null?xc:x}function To(x,L){var te=lc;lc|=16;var Re=s2();Ch===x&&EI===L||Fm(x,L);do try{IE();break}catch(Ve){xp(x,Ve)}while(!0);if(j_(),lc=te,t0.current=Re,sf!==null)throw Error(l(261));return Ch=null,EI=0,Jp}function IE(){for(;sf!==null;)Xc(sf)}function mB(){for(;sf!==null&&!Ca();)Xc(sf)}function Xc(x){var L=vx(x.alternate,x,gE);x.memoizedProps=x.pendingProps,L===null?su(x):sf=L,VD.current=null}function su(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=Eb(L),te!==null){te.flags&=2047,sf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=ev(te,L,gE),te!==null){sf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||gE&1073741824||!(te.mode&4)){for(var Re=0,Ve=te.child;Ve!==null;)Re|=Ve.lanes|Ve.childLanes,Ve=Ve.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-Ew?Fm(x,0):o1|=te),nh(x,L)}function MT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(mp===0&&(mp=_h),L=bg(62914560&~mp),L===0&&(L=4194304)):L=Xl()===99?1:2:L=1),te=Iu(),x=pE(x,L),x!==null&&(YA(x,L,te),nh(x,te))}var vx;vx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||cA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:FT(L),K2();break;case 5:Cb(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:gI(L,L.stateNode.containerInfo);break;case 10:ty(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?e1(x,L,te):(Al(Rd,Rd.current&1),L=TA(x,L,te),L!==null?L.sibling:null);Al(Rd,Rd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return rh(x,L,te);L.flags|=64}var Ve=L.memoizedState;if(Ve!==null&&(Ve.rendering=null,Ve.tail=null,Ve.lastEffect=null),Al(Rd,Rd.current),Re)break;return null;case 23:case 24:return L.lanes=0,AI(x,L,te)}return TA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Ve=Ki(L,zd.current),i_(L,te),Ve=zS(null,L,Re,x,Ve,te),L.flags|=1,typeof Ve=="object"&&Ve!==null&&typeof Ve.render=="function"&&Ve.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var It=!0;Ma(L)}else It=!1;L.memoizedState=Ve.state!==null&&Ve.state!==void 0?Ve.state:null,mb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Ve.updater=P,L.stateNode=Ve,Ve._reactInternals=L,sr(L,Re,x,te),L=gB(null,L,Re,!0,It,te)}else L.tag=0,Qo(null,L,Ve,te),L=L.child;return L;case 16:Ve=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,It=Ve._init,Ve=It(Ve._payload),L.type=Ve,It=L.tag=Od(Ve),x=qd(Ve,x),It){case 0:L=uE(null,L,Ve,x,te);break e;case 1:L=GT(null,L,Ve,x,te);break e;case 11:L=Bg(null,L,Ve,x,te);break e;case 14:L=Dg(null,L,Ve,qd(Ve.type,x),Re,te);break e}throw Error(l(306,Ve,""))}return L;case 0:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),uE(x,L,Re,Ve,te);case 1:return Re=L.type,Ve=L.pendingProps,Ve=L.elementType===Re?Ve:qd(Re,Ve),GT(x,L,Re,Ve,te);case 3:if(FT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Ve=L.memoizedState,Ve=Ve!==null?Ve.element:null,pe(x,L),bI(L,Re,null,te),Re=L.memoizedState.element,Re===Ve)K2(),L=TA(x,L,te);else{if(Ve=L.stateNode,(It=Ve.hydrate)&&(Nn?(kC=Kh(L.stateNode.containerInfo),D_=L,It=Jm=!0):It=!1),It){if(Nn&&(x=Ve.mutableSourceEagerHydrationData,x!=null))for(Ve=0;Ve=Vi&&It>=El&&Ve<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(It!==El||te.height!==mi.height||TaVe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),TaIt&&(mi.height+=El-It,mi.y=It),Hote&&(te=dr)),dr ")+` No matching component was found for: - `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Ot(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:TL,findFiberByHostInstance:x.findFiberByHostInstance||hF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Nf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=Sb(x,L);var Ve=zr(x,te,Re).disconnect;return{disconnect:function(){Ve()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Zl;try{return Zl=x,L()}finally{Zl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(S0(),op())}},r.updateContainer=function(x,L,te,Re){var Ve=L.current,It=Iu(),dr=Kp(Ve);e:if(te){te=te._reactInternals;t:{if(tt(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=zf;return L.context===null?L.context=te:L.pendingContext=te,L=dm(It,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),qf(Ve,L),IC(Ve,dr,It),dr},r}});var Vns=H((Fju,Lns)=>{"use strict";Lns.exports=Zns()});var Wns=H(I6e=>{"use strict";var pll=I6e&&I6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(I6e,"__esModule",{value:!0});var fll=pll(iHe()),cYr={};I6e.default=e=>{if(e.length===0)return{width:0,height:0};if(cYr[e])return cYr[e];let t=fll.default(e),r=e.split(` -`).length;return cYr[e]={width:t,height:r},{width:t,height:r}}});var Ons=H(h6e=>{"use strict";var Ill=h6e&&h6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(h6e,"__esModule",{value:!0});var R_=Ill(JO()),hll=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?R_.default.POSITION_TYPE_ABSOLUTE:R_.default.POSITION_TYPE_RELATIVE)},mll=(e,t)=>{"marginLeft"in t&&e.setMargin(R_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(R_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(R_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(R_.default.EDGE_BOTTOM,t.marginBottom||0)},Cll=(e,t)=>{"paddingLeft"in t&&e.setPadding(R_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(R_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(R_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(R_.default.EDGE_BOTTOM,t.paddingBottom||0)},_ll=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(R_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(R_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(R_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(R_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(R_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(R_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(R_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(R_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(R_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(R_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(R_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(R_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(R_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(R_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(R_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(R_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(R_.default.JUSTIFY_SPACE_AROUND))},yll=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},bll=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?R_.default.DISPLAY_FLEX:R_.default.DISPLAY_NONE)},Ell=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(R_.default.EDGE_TOP,r),e.setBorder(R_.default.EDGE_BOTTOM,r),e.setBorder(R_.default.EDGE_LEFT,r),e.setBorder(R_.default.EDGE_RIGHT,r)}};h6e.default=(e,t={})=>{hll(e,t),mll(e,t),Cll(e,t),_ll(e,t),yll(e,t),bll(e,t),Ell(e,t)}});var uYr=H(m6e=>{"use strict";var Pns=m6e&&m6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(m6e,"__esModule",{value:!0});var Sll=Pns(Ihr()),vll=Pns(hhr()),lYr={};m6e.default=(e,t,r)=>{let n=e+String(t)+String(r);if(lYr[n])return lYr[n];let a=e;if(r==="wrap"&&(a=Sll.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=vll.default(e,t,{position:o})}return lYr[n]=a,a}});var AYr=H(gYr=>{"use strict";Object.defineProperty(gYr,"__esModule",{value:!0});var Mns=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=Mns(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};gYr.default=Mns});var dYr=H(j1=>{"use strict";var C6e=j1&&j1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(j1,"__esModule",{value:!0});j1.setTextNodeValue=j1.createTextNode=j1.setStyle=j1.setAttribute=j1.removeChildNode=j1.insertBeforeNode=j1.appendChildNode=j1.createNode=j1.TEXT_NAME=void 0;var Bll=C6e(JO()),Hns=C6e(Wns()),wll=C6e(Ons()),Tll=C6e(uYr()),Rll=C6e(AYr());j1.TEXT_NAME="#text";j1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:Bll.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(Nll.bind(null,r))),r};j1.appendChildNode=(e,t)=>{var r;t.parentNode&&j1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Qkt(e)};j1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&j1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Qkt(e)};j1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Qkt(e)};j1.setAttribute=(e,t,r)=>{e.attributes[t]=r};j1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&wll.default(e.yogaNode,t)};j1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return j1.setTextNodeValue(t,e),t};var Nll=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:Rll.default(e),o=Hns.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=Tll.default(a,t,l);return Hns.default(A)},Yns=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:Yns(e.parentNode)},Qkt=e=>{let t=Yns(e);t?.markDirty()};j1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,Qkt(e)}});var Kns=H(_6e=>{"use strict";var Uns=_6e&&_6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_6e,"__esModule",{value:!0});var Qns=rHe(),Dll=Uns(Vns()),Xns=Uns(JO()),eF=dYr(),Jns=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};_6e.default=Dll.default({schedulePassiveEffects:Qns.unstable_scheduleCallback,cancelPassiveEffects:Qns.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=eF.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?eF.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:eF.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return eF.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{eF.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{eF.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(Xns.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(Xns.default.DISPLAY_FLEX)},appendInitialChild:eF.appendChildNode,appendChild:eF.appendChildNode,insertBefore:eF.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:eF.appendChildNode,insertInContainerBefore:eF.insertBeforeNode,removeChildFromContainer:(e,t)=>{eF.removeChildNode(e,t),Jns(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?eF.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:eF.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{eF.setTextNodeValue(e,r)},removeChild:(e,t)=>{eF.removeChildNode(e,t),Jns(t.yogaNode)}})});var jns=H(y6e=>{"use strict";var kll=y6e&&y6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(y6e,"__esModule",{value:!0});var Xkt=kll(JO());y6e.default=e=>e.getComputedWidth()-e.getComputedPadding(Xkt.default.EDGE_LEFT)-e.getComputedPadding(Xkt.default.EDGE_RIGHT)-e.getComputedBorder(Xkt.default.EDGE_LEFT)-e.getComputedBorder(Xkt.default.EDGE_RIGHT)});var pYr=H(E6e=>{"use strict";var xll=E6e&&E6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(E6e,"__esModule",{value:!0});var b6e=xll(zK()),Gll=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,Fll=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,Jkt=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);E6e.default=(e,t,r)=>{if(!t)return e;if(t in b6e.default){let a=Jkt(t,r);return b6e.default[a](e)}if(t.startsWith("#")){let a=Jkt("hex",r);return b6e.default[a](t)(e)}if(t.startsWith("ansi")){let a=Fll.exec(t);if(!a)return e;let o=Jkt(a[1],r),l=Number(a[2]);return b6e.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=Gll.exec(t);if(!a)return e;let o=Jkt(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return b6e.default[o](l,A,f)(e)}return e}});var qns=H(S6e=>{"use strict";var zns=S6e&&S6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(S6e,"__esModule",{value:!0});var Zll=zns(vhr()),fYr=zns(pYr());S6e.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=Zll.default[r.style.borderStyle],f=fYr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(fYr.default(A.vertical,l,"foreground")+` -`).repeat(o-2),C=fYr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var eis=H(v6e=>{"use strict";var H_e=v6e&&v6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(v6e,"__esModule",{value:!0});var Lll=H_e(JO()),Vll=H_e(iHe()),Wll=H_e(Ehr()),Oll=H_e(uYr()),Pll=H_e(jns()),Mll=H_e(AYr()),Hll=H_e(qns()),Yll=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` -`.repeat(o)+Wll.default(t,a)}return t},$ns=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===Lll.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=Mll.default(e);if(E.length>0){let N=Vll.default(E),B=Pll.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=Oll.default(E,B,F)}E=Yll(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&Hll.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)$ns(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};v6e.default=$ns});var nis=H(B6e=>{"use strict";var ris=B6e&&B6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(B6e,"__esModule",{value:!0});var tis=ris(qpt()),Qll=ris(FBe()),IYr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` -`),height:t.length}}};B6e.default=IYr});var ois=H(w6e=>{"use strict";var hYr=w6e&&w6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(w6e,"__esModule",{value:!0});var Xll=hYr(JO()),iis=hYr(eis()),sis=hYr(nis());w6e.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,Xll.default.DIRECTION_LTR);let n=new sis.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});iis.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new sis.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),iis.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var CYr=H(mYr=>{"use strict";Object.defineProperty(mYr,"__esModule",{value:!0});mYr.default=new WeakMap});var yYr=H(_Yr=>{"use strict";Object.defineProperty(_Yr,"__esModule",{value:!0});var Jll=lC(),ais=Jll.createContext({exit:()=>{}});ais.displayName="InternalAppContext";_Yr.default=ais});var EYr=H(bYr=>{"use strict";Object.defineProperty(bYr,"__esModule",{value:!0});var Ull=lC(),cis=Ull.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});cis.displayName="InternalStdinContext";bYr.default=cis});var vYr=H(SYr=>{"use strict";Object.defineProperty(SYr,"__esModule",{value:!0});var Kll=lC(),lis=Kll.createContext({stdout:void 0,write:()=>{}});lis.displayName="InternalStdoutContext";SYr.default=lis});var wYr=H(BYr=>{"use strict";Object.defineProperty(BYr,"__esModule",{value:!0});var jll=lC(),uis=jll.createContext({stderr:void 0,write:()=>{}});uis.displayName="InternalStderrContext";BYr.default=uis});var Ukt=H(TYr=>{"use strict";Object.defineProperty(TYr,"__esModule",{value:!0});var zll=lC(),gis=zll.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});gis.displayName="InternalFocusContext";TYr.default=gis});var Kkt=H(Q4=>{"use strict";var qll=Q4&&Q4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$ll=Q4&&Q4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),eul=Q4&&Q4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&qll(t,e,r);return $ll(t,e),t},tul=Q4&&Q4.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=tul(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return Ais.default.createElement("ink-box",{ref:t,style:a},r)});RYr.displayName="Box";RYr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};Q4.default=RYr});var kYr=H(T6e=>{"use strict";var NYr=T6e&&T6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(T6e,"__esModule",{value:!0});var rul=NYr(lC()),rGe=NYr(zK()),dis=NYr(pYr()),DYr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=rGe.default.dim(b)),e&&(b=dis.default(b,e,"foreground")),t&&(b=dis.default(b,t,"background")),n&&(b=rGe.default.bold(b)),a&&(b=rGe.default.italic(b)),o&&(b=rGe.default.underline(b)),l&&(b=rGe.default.strikethrough(b)),A&&(b=rGe.default.inverse(b)),b);return rul.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};DYr.displayName="Text";DYr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};T6e.default=DYr});var his=H(X4=>{"use strict";var nul=X4&&X4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),iul=X4&&X4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),sul=X4&&X4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&nul(t,e,r);return iul(t,e),t},R6e=X4&&X4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(X4,"__esModule",{value:!0});var pis=sul(Et("fs")),MR=R6e(lC()),fis=R6e(ift()),oul=R6e(Yhr()),Fte=R6e(Kkt()),mj=R6e(kYr()),Iis=new fis.default({cwd:process.cwd(),internals:fis.default.nodeInternals()}),aul=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?Iis.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&pis.existsSync(r.file)){let o=pis.readFileSync(r.file,"utf8");if(n=oul.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return MR.default.createElement(Fte.default,{flexDirection:"column",padding:1},MR.default.createElement(Fte.default,null,MR.default.createElement(mj.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),MR.default.createElement(mj.default,null," ",e.message)),r&&MR.default.createElement(Fte.default,{marginTop:1},MR.default.createElement(mj.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&MR.default.createElement(Fte.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>MR.default.createElement(Fte.default,{key:o},MR.default.createElement(Fte.default,{width:a+1},MR.default.createElement(mj.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),MR.default.createElement(mj.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&MR.default.createElement(Fte.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let l=Iis.parseLine(o);return l?MR.default.createElement(Fte.default,{key:o},MR.default.createElement(mj.default,{dimColor:!0},"- "),MR.default.createElement(mj.default,{dimColor:!0,bold:!0},l.function),MR.default.createElement(mj.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):MR.default.createElement(Fte.default,{key:o},MR.default.createElement(mj.default,{dimColor:!0},"- "),MR.default.createElement(mj.default,{dimColor:!0,bold:!0},o))})))};X4.default=aul});var Cis=H(J4=>{"use strict";var cul=J4&&J4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lul=J4&&J4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),uul=J4&&J4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&cul(t,e,r);return lul(t,e),t},Q_e=J4&&J4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(J4,"__esModule",{value:!0});var Y_e=uul(lC()),mis=Q_e(kBe()),gul=Q_e(yYr()),Aul=Q_e(EYr()),dul=Q_e(vYr()),pul=Q_e(wYr()),ful=Q_e(Ukt()),Iul=Q_e(his()),hul=" ",mul="\x1B[Z",Cul="\x1B",jkt=class extends Y_e.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. + `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Ot(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:RL,findFiberByHostInstance:x.findFiberByHostInstance||mF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Nf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=vb(x,L);var Ve=zr(x,te,Re).disconnect;return{disconnect:function(){Ve()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Zl;try{return Zl=x,L()}finally{Zl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(v0(),op())}},r.updateContainer=function(x,L,te,Re){var Ve=L.current,It=Iu(),dr=Kp(Ve);e:if(te){te=te._reactInternals;t:{if(tt(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=zf;return L.context===null?L.context=te:L.pendingContext=te,L=dm(It,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),qf(Ve,L),IC(Ve,dr,It),dr},r}});var Wns=H((j7u,Vns)=>{"use strict";Vns.exports=Lns()});var Ons=H(f6e=>{"use strict";var gul=f6e&&f6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(f6e,"__esModule",{value:!0});var Aul=gul(nHe()),pYr={};f6e.default=e=>{if(e.length===0)return{width:0,height:0};if(pYr[e])return pYr[e];let t=Aul.default(e),r=e.split(` +`).length;return pYr[e]={width:t,height:r},{width:t,height:r}}});var Pns=H(I6e=>{"use strict";var dul=I6e&&I6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(I6e,"__esModule",{value:!0});var N_=dul(KO()),pul=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?N_.default.POSITION_TYPE_ABSOLUTE:N_.default.POSITION_TYPE_RELATIVE)},ful=(e,t)=>{"marginLeft"in t&&e.setMargin(N_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(N_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(N_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(N_.default.EDGE_BOTTOM,t.marginBottom||0)},Iul=(e,t)=>{"paddingLeft"in t&&e.setPadding(N_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(N_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(N_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(N_.default.EDGE_BOTTOM,t.paddingBottom||0)},hul=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(N_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(N_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(N_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(N_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(N_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(N_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(N_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(N_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(N_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(N_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(N_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(N_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(N_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(N_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(N_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(N_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(N_.default.JUSTIFY_SPACE_AROUND))},mul=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},Cul=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?N_.default.DISPLAY_FLEX:N_.default.DISPLAY_NONE)},_ul=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(N_.default.EDGE_TOP,r),e.setBorder(N_.default.EDGE_BOTTOM,r),e.setBorder(N_.default.EDGE_LEFT,r),e.setBorder(N_.default.EDGE_RIGHT,r)}};I6e.default=(e,t={})=>{pul(e,t),ful(e,t),Iul(e,t),hul(e,t),mul(e,t),Cul(e,t),_ul(e,t)}});var IYr=H(h6e=>{"use strict";var Mns=h6e&&h6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(h6e,"__esModule",{value:!0});var yul=Mns(Ihr()),bul=Mns(hhr()),fYr={};h6e.default=(e,t,r)=>{let n=e+String(t)+String(r);if(fYr[n])return fYr[n];let a=e;if(r==="wrap"&&(a=yul.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=bul.default(e,t,{position:o})}return fYr[n]=a,a}});var mYr=H(hYr=>{"use strict";Object.defineProperty(hYr,"__esModule",{value:!0});var Hns=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=Hns(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};hYr.default=Hns});var CYr=H(z1=>{"use strict";var m6e=z1&&z1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(z1,"__esModule",{value:!0});z1.setTextNodeValue=z1.createTextNode=z1.setStyle=z1.setAttribute=z1.removeChildNode=z1.insertBeforeNode=z1.appendChildNode=z1.createNode=z1.TEXT_NAME=void 0;var Eul=m6e(KO()),Yns=m6e(Ons()),Sul=m6e(Pns()),vul=m6e(IYr()),Bul=m6e(mYr());z1.TEXT_NAME="#text";z1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:Eul.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(wul.bind(null,r))),r};z1.appendChildNode=(e,t)=>{var r;t.parentNode&&z1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Qkt(e)};z1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&z1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Qkt(e)};z1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Qkt(e)};z1.setAttribute=(e,t,r)=>{e.attributes[t]=r};z1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&Sul.default(e.yogaNode,t)};z1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return z1.setTextNodeValue(t,e),t};var wul=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:Bul.default(e),o=Yns.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=vul.default(a,t,l);return Yns.default(A)},Qns=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:Qns(e.parentNode)},Qkt=e=>{let t=Qns(e);t?.markDirty()};z1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,Qkt(e)}});var jns=H(C6e=>{"use strict";var Kns=C6e&&C6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(C6e,"__esModule",{value:!0});var Xns=tHe(),Tul=Kns(Wns()),Jns=Kns(KO()),tF=CYr(),Uns=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};C6e.default=Tul.default({schedulePassiveEffects:Xns.unstable_scheduleCallback,cancelPassiveEffects:Xns.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=tF.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?tF.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:tF.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return tF.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{tF.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{tF.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(Jns.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(Jns.default.DISPLAY_FLEX)},appendInitialChild:tF.appendChildNode,appendChild:tF.appendChildNode,insertBefore:tF.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:tF.appendChildNode,insertInContainerBefore:tF.insertBeforeNode,removeChildFromContainer:(e,t)=>{tF.removeChildNode(e,t),Uns(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?tF.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:tF.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{tF.setTextNodeValue(e,r)},removeChild:(e,t)=>{tF.removeChildNode(e,t),Uns(t.yogaNode)}})});var zns=H(_6e=>{"use strict";var Rul=_6e&&_6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_6e,"__esModule",{value:!0});var Xkt=Rul(KO());_6e.default=e=>e.getComputedWidth()-e.getComputedPadding(Xkt.default.EDGE_LEFT)-e.getComputedPadding(Xkt.default.EDGE_RIGHT)-e.getComputedBorder(Xkt.default.EDGE_LEFT)-e.getComputedBorder(Xkt.default.EDGE_RIGHT)});var _Yr=H(b6e=>{"use strict";var Nul=b6e&&b6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(b6e,"__esModule",{value:!0});var y6e=Nul(qK()),Dul=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,kul=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,Jkt=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);b6e.default=(e,t,r)=>{if(!t)return e;if(t in y6e.default){let a=Jkt(t,r);return y6e.default[a](e)}if(t.startsWith("#")){let a=Jkt("hex",r);return y6e.default[a](t)(e)}if(t.startsWith("ansi")){let a=kul.exec(t);if(!a)return e;let o=Jkt(a[1],r),l=Number(a[2]);return y6e.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=Dul.exec(t);if(!a)return e;let o=Jkt(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return y6e.default[o](l,A,f)(e)}return e}});var $ns=H(E6e=>{"use strict";var qns=E6e&&E6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(E6e,"__esModule",{value:!0});var xul=qns(vhr()),yYr=qns(_Yr());E6e.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=xul.default[r.style.borderStyle],f=yYr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(yYr.default(A.vertical,l,"foreground")+` +`).repeat(o-2),C=yYr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var tis=H(S6e=>{"use strict";var H_e=S6e&&S6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(S6e,"__esModule",{value:!0});var Gul=H_e(KO()),Ful=H_e(nHe()),Zul=H_e(Ehr()),Lul=H_e(IYr()),Vul=H_e(zns()),Wul=H_e(mYr()),Oul=H_e($ns()),Pul=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` +`.repeat(o)+Zul.default(t,a)}return t},eis=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===Gul.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=Wul.default(e);if(E.length>0){let N=Ful.default(E),B=Vul.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=Lul.default(E,B,F)}E=Pul(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&Oul.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)eis(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};S6e.default=eis});var iis=H(v6e=>{"use strict";var nis=v6e&&v6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(v6e,"__esModule",{value:!0});var ris=nis(jpt()),Mul=nis(FBe()),bYr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` +`),height:t.length}}};v6e.default=bYr});var ais=H(B6e=>{"use strict";var EYr=B6e&&B6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(B6e,"__esModule",{value:!0});var Hul=EYr(KO()),sis=EYr(tis()),ois=EYr(iis());B6e.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,Hul.default.DIRECTION_LTR);let n=new ois.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});sis.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new ois.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),sis.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var vYr=H(SYr=>{"use strict";Object.defineProperty(SYr,"__esModule",{value:!0});SYr.default=new WeakMap});var wYr=H(BYr=>{"use strict";Object.defineProperty(BYr,"__esModule",{value:!0});var Yul=lC(),cis=Yul.createContext({exit:()=>{}});cis.displayName="InternalAppContext";BYr.default=cis});var RYr=H(TYr=>{"use strict";Object.defineProperty(TYr,"__esModule",{value:!0});var Qul=lC(),lis=Qul.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});lis.displayName="InternalStdinContext";TYr.default=lis});var DYr=H(NYr=>{"use strict";Object.defineProperty(NYr,"__esModule",{value:!0});var Xul=lC(),uis=Xul.createContext({stdout:void 0,write:()=>{}});uis.displayName="InternalStdoutContext";NYr.default=uis});var xYr=H(kYr=>{"use strict";Object.defineProperty(kYr,"__esModule",{value:!0});var Jul=lC(),gis=Jul.createContext({stderr:void 0,write:()=>{}});gis.displayName="InternalStderrContext";kYr.default=gis});var Ukt=H(GYr=>{"use strict";Object.defineProperty(GYr,"__esModule",{value:!0});var Uul=lC(),Ais=Uul.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});Ais.displayName="InternalFocusContext";GYr.default=Ais});var Kkt=H(X4=>{"use strict";var Kul=X4&&X4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jul=X4&&X4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),zul=X4&&X4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Kul(t,e,r);return jul(t,e),t},qul=X4&&X4.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=qul(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return dis.default.createElement("ink-box",{ref:t,style:a},r)});FYr.displayName="Box";FYr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};X4.default=FYr});var VYr=H(w6e=>{"use strict";var ZYr=w6e&&w6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(w6e,"__esModule",{value:!0});var $ul=ZYr(lC()),rGe=ZYr(qK()),pis=ZYr(_Yr()),LYr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=rGe.default.dim(b)),e&&(b=pis.default(b,e,"foreground")),t&&(b=pis.default(b,t,"background")),n&&(b=rGe.default.bold(b)),a&&(b=rGe.default.italic(b)),o&&(b=rGe.default.underline(b)),l&&(b=rGe.default.strikethrough(b)),A&&(b=rGe.default.inverse(b)),b);return $ul.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};LYr.displayName="Text";LYr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};w6e.default=LYr});var mis=H(J4=>{"use strict";var egl=J4&&J4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),tgl=J4&&J4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),rgl=J4&&J4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&egl(t,e,r);return tgl(t,e),t},T6e=J4&&J4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(J4,"__esModule",{value:!0});var fis=rgl(Et("fs")),HR=T6e(lC()),Iis=T6e(rft()),ngl=T6e(Yhr()),Zte=T6e(Kkt()),Cj=T6e(VYr()),his=new Iis.default({cwd:process.cwd(),internals:Iis.default.nodeInternals()}),igl=({error:e})=>{let t=e.stack?e.stack.split(` +`).slice(1):void 0,r=t?his.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&fis.existsSync(r.file)){let o=fis.readFileSync(r.file,"utf8");if(n=ngl.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return HR.default.createElement(Zte.default,{flexDirection:"column",padding:1},HR.default.createElement(Zte.default,null,HR.default.createElement(Cj.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),HR.default.createElement(Cj.default,null," ",e.message)),r&&HR.default.createElement(Zte.default,{marginTop:1},HR.default.createElement(Cj.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&HR.default.createElement(Zte.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>HR.default.createElement(Zte.default,{key:o},HR.default.createElement(Zte.default,{width:a+1},HR.default.createElement(Cj.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),HR.default.createElement(Cj.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&HR.default.createElement(Zte.default,{marginTop:1,flexDirection:"column"},e.stack.split(` +`).slice(1).map(o=>{let l=his.parseLine(o);return l?HR.default.createElement(Zte.default,{key:o},HR.default.createElement(Cj.default,{dimColor:!0},"- "),HR.default.createElement(Cj.default,{dimColor:!0,bold:!0},l.function),HR.default.createElement(Cj.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):HR.default.createElement(Zte.default,{key:o},HR.default.createElement(Cj.default,{dimColor:!0},"- "),HR.default.createElement(Cj.default,{dimColor:!0,bold:!0},o))})))};J4.default=igl});var _is=H(U4=>{"use strict";var sgl=U4&&U4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ogl=U4&&U4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),agl=U4&&U4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&sgl(t,e,r);return ogl(t,e),t},Q_e=U4&&U4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(U4,"__esModule",{value:!0});var Y_e=agl(lC()),Cis=Q_e(kBe()),cgl=Q_e(wYr()),lgl=Q_e(RYr()),ugl=Q_e(DYr()),ggl=Q_e(xYr()),Agl=Q_e(Ukt()),dgl=Q_e(mis()),pgl=" ",fgl="\x1B[Z",Igl="\x1B",jkt=class extends Y_e.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===Cul&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===hul&&this.focusNext(),t===mul&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return Y_e.default.createElement(gul.default.Provider,{value:{exit:this.handleExit}},Y_e.default.createElement(Aul.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},Y_e.default.createElement(dul.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},Y_e.default.createElement(pul.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},Y_e.default.createElement(ful.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?Y_e.default.createElement(Iul.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){mis.default.hide(this.props.stdout)}componentWillUnmount(){mis.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};J4.default=jkt;jkt.displayName="InternalApp"});var bis=H(U4=>{"use strict";var _ul=U4&&U4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),yul=U4&&U4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bul=U4&&U4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&_ul(t,e,r);return yul(t,e),t},K4=U4&&U4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(U4,"__esModule",{value:!0});var Eul=K4(lC()),_is=PIr(),Sul=K4(Fns()),vul=K4(KMe()),Bul=K4(XIr()),wul=K4(JIr()),xYr=K4(Kns()),Tul=K4(ois()),Rul=K4(Ppt()),Nul=K4(Dhr()),Dul=bul(dYr()),kul=K4(CYr()),xul=K4(Cis()),nGe=process.env.CI==="false"?!1:Bul.default,yis=()=>{},GYr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=Tul.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(nGe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(vul.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},wul.default(this),this.options=t,this.rootNode=Dul.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:_is.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=Sul.default.create(t.stdout),this.throttledLog=t.debug?this.log:_is.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=xYr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=Rul.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),nGe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=Eul.default.createElement(xul.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);xYr.default.updateContainer(r,this.container,null,yis)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(nGe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(nGe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),nGe?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,xYr.default.updateContainer(null,this.container,null,yis),kul.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!nGe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=Nul.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};U4.default=GYr});var Sis=H(N6e=>{"use strict";var Eis=N6e&&N6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(N6e,"__esModule",{value:!0});var Gul=Eis(bis()),zkt=Eis(CYr()),Ful=Et("stream"),Zul=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},Lul(t)),n=Vul(r.stdout,()=>new Gul.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>zkt.default.delete(r.stdout),clear:n.clear}};N6e.default=Zul;var Lul=(e={})=>e instanceof Ful.Stream?{stdout:e,stdin:process.stdin}:e,Vul=(e,t)=>{let r;return zkt.default.has(e)?r=zkt.default.get(e):(r=t(),zkt.default.set(e,r)),r}});var Bis=H(Zte=>{"use strict";var Wul=Zte&&Zte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Oul=Zte&&Zte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Pul=Zte&&Zte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Wul(t,e,r);return Oul(t,e),t};Object.defineProperty(Zte,"__esModule",{value:!0});var D6e=Pul(lC()),vis=e=>{let{items:t,children:r,style:n}=e,[a,o]=D6e.useState(0),l=D6e.useMemo(()=>t.slice(a),[t,a]);D6e.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=D6e.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return D6e.default.createElement("ink-box",{internal_static:!0,style:f},A)};vis.displayName="Static";Zte.default=vis});var Tis=H(k6e=>{"use strict";var Mul=k6e&&k6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(k6e,"__esModule",{value:!0});var Hul=Mul(lC()),wis=({children:e,transform:t})=>e==null?null:Hul.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);wis.displayName="Transform";k6e.default=wis});var Nis=H(x6e=>{"use strict";var Yul=x6e&&x6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(x6e,"__esModule",{value:!0});var Qul=Yul(lC()),Ris=({count:e=1})=>Qul.default.createElement("ink-text",null,` -`.repeat(e));Ris.displayName="Newline";x6e.default=Ris});var xis=H(G6e=>{"use strict";var Dis=G6e&&G6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(G6e,"__esModule",{value:!0});var Xul=Dis(lC()),Jul=Dis(Kkt()),kis=()=>Xul.default.createElement(Jul.default,{flexGrow:1});kis.displayName="Spacer";G6e.default=kis});var qkt=H(F6e=>{"use strict";var Uul=F6e&&F6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(F6e,"__esModule",{value:!0});var Kul=lC(),jul=Uul(EYr()),zul=()=>Kul.useContext(jul.default);F6e.default=zul});var Fis=H(Z6e=>{"use strict";var qul=Z6e&&Z6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Z6e,"__esModule",{value:!0});var Gis=lC(),$ul=qul(qkt()),egl=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=$ul.default();Gis.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),Gis.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};Z6e.default=egl});var Zis=H(L6e=>{"use strict";var tgl=L6e&&L6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(L6e,"__esModule",{value:!0});var rgl=lC(),ngl=tgl(yYr()),igl=()=>rgl.useContext(ngl.default);L6e.default=igl});var Lis=H(V6e=>{"use strict";var sgl=V6e&&V6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(V6e,"__esModule",{value:!0});var ogl=lC(),agl=sgl(vYr()),cgl=()=>ogl.useContext(agl.default);V6e.default=cgl});var Vis=H(W6e=>{"use strict";var lgl=W6e&&W6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(W6e,"__esModule",{value:!0});var ugl=lC(),ggl=lgl(wYr()),Agl=()=>ugl.useContext(ggl.default);W6e.default=Agl});var Ois=H(P6e=>{"use strict";var Wis=P6e&&P6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(P6e,"__esModule",{value:!0});var O6e=lC(),dgl=Wis(Ukt()),pgl=Wis(qkt()),fgl=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=pgl.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=O6e.useContext(dgl.default),b=O6e.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return O6e.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),O6e.useEffect(()=>{e?f(b):I(b)},[e,b]),O6e.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};P6e.default=fgl});var Pis=H(M6e=>{"use strict";var Igl=M6e&&M6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(M6e,"__esModule",{value:!0});var hgl=lC(),mgl=Igl(Ukt()),Cgl=()=>{let e=hgl.useContext(mgl.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};M6e.default=Cgl});var Mis=H(FYr=>{"use strict";Object.defineProperty(FYr,"__esModule",{value:!0});FYr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var DH=H(lx=>{"use strict";Object.defineProperty(lx,"__esModule",{value:!0});var _gl=Sis();Object.defineProperty(lx,"render",{enumerable:!0,get:function(){return _gl.default}});var ygl=Kkt();Object.defineProperty(lx,"Box",{enumerable:!0,get:function(){return ygl.default}});var bgl=kYr();Object.defineProperty(lx,"Text",{enumerable:!0,get:function(){return bgl.default}});var Egl=Bis();Object.defineProperty(lx,"Static",{enumerable:!0,get:function(){return Egl.default}});var Sgl=Tis();Object.defineProperty(lx,"Transform",{enumerable:!0,get:function(){return Sgl.default}});var vgl=Nis();Object.defineProperty(lx,"Newline",{enumerable:!0,get:function(){return vgl.default}});var Bgl=xis();Object.defineProperty(lx,"Spacer",{enumerable:!0,get:function(){return Bgl.default}});var wgl=Fis();Object.defineProperty(lx,"useInput",{enumerable:!0,get:function(){return wgl.default}});var Tgl=Zis();Object.defineProperty(lx,"useApp",{enumerable:!0,get:function(){return Tgl.default}});var Rgl=qkt();Object.defineProperty(lx,"useStdin",{enumerable:!0,get:function(){return Rgl.default}});var Ngl=Lis();Object.defineProperty(lx,"useStdout",{enumerable:!0,get:function(){return Ngl.default}});var Dgl=Vis();Object.defineProperty(lx,"useStderr",{enumerable:!0,get:function(){return Dgl.default}});var kgl=Ois();Object.defineProperty(lx,"useFocus",{enumerable:!0,get:function(){return kgl.default}});var xgl=Pis();Object.defineProperty(lx,"useFocusManager",{enumerable:!0,get:function(){return xgl.default}});var Ggl=Mis();Object.defineProperty(lx,"measureElement",{enumerable:!0,get:function(){return Ggl.default}})});var txt=H(ext=>{"use strict";Object.defineProperty(ext,"__esModule",{value:!0});ext.Gem=void 0;var Fgl=(Wa(),vi(Va)),Zgl=DH(),$kt=Fgl.__importStar(lC());ext.Gem=(0,$kt.memo)(({active:e})=>{let t=(0,$kt.useMemo)(()=>e?"\u25C9":"\u25EF",[e]),r=(0,$kt.useMemo)(()=>e?"green":"yellow",[e]);return $kt.default.createElement(Zgl.Text,{color:r},t)})});var iGe=H(ZYr=>{"use strict";Object.defineProperty(ZYr,"__esModule",{value:!0});ZYr.useKeypress=Vgl;var Lgl=DH(),His=lC();function Vgl({active:e},t,r){let{stdin:n}=(0,Lgl.useStdin)(),a=(0,His.useCallback)((o,l)=>t(o,l),r);(0,His.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var LYr=H(sGe=>{"use strict";Object.defineProperty(sGe,"__esModule",{value:!0});sGe.useFocusRequest=sGe.FocusRequest=void 0;var Wgl=iGe(),rxt;(function(e){e.BEFORE="before",e.AFTER="after"})(rxt||(sGe.FocusRequest=rxt={}));var Ogl=function({active:e},t,r){(0,Wgl.useKeypress)({active:e},(n,a)=>{a.name==="tab"&&(a.shift?t(rxt.BEFORE):t(rxt.AFTER))},r)};sGe.useFocusRequest=Ogl});var ixt=H(nxt=>{"use strict";Object.defineProperty(nxt,"__esModule",{value:!0});nxt.useListInput=void 0;var Pgl=iGe(),Mgl=function(e,t,{active:r,minus:n,plus:a,set:o,loop:l=!0}){(0,Pgl.useKeypress)({active:r},(A,f)=>{let I=t.indexOf(e);switch(f.name){case n:{let C=I-1;if(l){o(t[(t.length+C)%t.length]);return}if(C<0)return;o(t[C])}break;case a:{let C=I+1;if(l){o(t[C%t.length]);return}if(C>=t.length)return;o(t[C])}break}},[t,e,a,o,l])};nxt.useListInput=Mgl});var oxt=H(sxt=>{"use strict";Object.defineProperty(sxt,"__esModule",{value:!0});sxt.ScrollableItems=void 0;var Hgl=(Wa(),vi(Va)),oGe=DH(),j4=Hgl.__importStar(lC()),Ygl=LYr(),Qgl=ixt(),Xgl=({active:e=!0,children:t=[],radius:r=10,size:n=1,loop:a=!0,onFocusRequest:o,willReachEnd:l})=>{let A=Q=>{if(Q.key===null)throw new Error("Expected all children to have a key");return Q.key},f=j4.default.Children.map(t,Q=>A(Q)),I=f[0],[C,b]=(0,j4.useState)(I),E=f.indexOf(C);(0,j4.useEffect)(()=>{f.includes(C)||b(I)},[t]),(0,j4.useEffect)(()=>{l&&E>=f.length-2&&l()},[E]),(0,Ygl.useFocusRequest)({active:e&&!!o},Q=>{o?.(Q)},[o]),(0,Qgl.useListInput)(C,f,{active:e,minus:"up",plus:"down",set:b,loop:a});let N=E-r,B=E+r;B>f.length&&(N-=B-f.length,B=f.length),N<0&&(B+=-N,N=0),B>=f.length&&(B=f.length-1);let F=[];for(let Q=N;Q<=B;++Q){let J=f[Q],ae=e&&J===C;F.push(j4.default.createElement(oGe.Box,{key:J,height:n},j4.default.createElement(oGe.Box,{marginLeft:1,marginRight:1},j4.default.createElement(oGe.Text,null,ae?j4.default.createElement(oGe.Text,{color:"cyan",bold:!0},">"):" ")),j4.default.createElement(oGe.Box,null,j4.default.cloneElement(t[Q],{active:ae}))))}return j4.default.createElement(oGe.Box,{flexDirection:"column",width:"100%"},F)};sxt.ScrollableItems=Xgl});var VYr=H(X_e=>{"use strict";Object.defineProperty(X_e,"__esModule",{value:!0});X_e.Application=X_e.MinistoreContext=void 0;var Jgl=(Wa(),vi(Va)),Ugl=DH(),H6e=Jgl.__importStar(lC()),Kgl=Et("readline");X_e.MinistoreContext=H6e.default.createContext(null);var jgl=({children:e})=>{let{stdin:t,setRawMode:r}=(0,Ugl.useStdin)();(0,H6e.useEffect)(()=>{r&&r(!0),t&&(0,Kgl.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,H6e.useState)(new Map),o=(0,H6e.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(f=>new Map([...f,[l,A]])),setAll:l=>a(A=>new Map([...A,...l]))}),[n,a]);return H6e.default.createElement(X_e.MinistoreContext.Provider,{value:o,children:e})};X_e.Application=jgl});var OYr=H(axt=>{"use strict";Object.defineProperty(axt,"__esModule",{value:!0});axt.useMinistore=zgl;axt.useMinistoreSetAll=qgl;var WYr=lC(),Yis=VYr();function zgl(e,t){let r=(0,WYr.useContext)(Yis.MinistoreContext);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof e>"u")return r.getAll();let n=(0,WYr.useCallback)(o=>{r.set(e,o)},[e,r.set]),a=r.get(e);return typeof a>"u"&&(a=t),[a,n]}function qgl(){let e=(0,WYr.useContext)(Yis.MinistoreContext);if(e===null)throw new Error("Expected this hook to run with a ministore context attached");return e.setAll}});var cxt=H(PYr=>{"use strict";Object.defineProperty(PYr,"__esModule",{value:!0});PYr.renderForm=rAl;var $gl=(Wa(),vi(Va)),Qis=DH(),Xis=$gl.__importDefault(lC()),eAl=VYr(),tAl=iGe();async function rAl(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,Qis.useApp)();(0,tAl.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,Qis.render)(Xis.default.createElement(eAl.Application,null,Xis.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var jis=H(Y6e=>{"use strict";Object.defineProperty(Y6e,"__esModule",{value:!0});Y6e.UncontrolledTextInput=void 0;var Uis=lC(),MYr=lC(),Jis=DH(),J_e=zK(),Kis=({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A})=>{let[{cursorOffset:f,cursorWidth:I},C]=MYr.useState({cursorOffset:(e||"").length,cursorWidth:0});MYr.useEffect(()=>{C(F=>{if(!r||!o)return F;let Q=e||"";return F.cursorOffset>Q.length-1?{cursorOffset:Q.length,cursorWidth:0}:F})},[e,r,o]);let b=a?I:0,E=n?n.repeat(e.length):e,N=E,B=t?J_e.grey(t):void 0;if(o&&r){B=t.length>0?J_e.inverse(t[0])+J_e.grey(t.slice(1)):J_e.inverse(" "),N=E.length>0?"":J_e.inverse(" ");let F=0;for(let Q of E)F>=f-b&&F<=f?N+=J_e.inverse(Q):N+=Q,F++;E.length>0&&f===E.length&&(N+=J_e.inverse(" "))}return Jis.useInput((F,Q)=>{if(Q.upArrow||Q.downArrow||Q.ctrl&&F==="c"||Q.tab||Q.shift&&Q.tab)return;if(Q.return){A&&A(e);return}let J=f,ae=e,ne=0;Q.leftArrow?o&&J--:Q.rightArrow?o&&J++:Q.backspace||Q.delete?f>0&&(ae=e.slice(0,f-1)+e.slice(f,e.length),J--):(ae=e.slice(0,f)+F+e.slice(f,e.length),J+=F.length,F.length>1&&(ne=F.length)),f<0&&(J=0),f>e.length&&(J=e.length),C({cursorOffset:J,cursorWidth:ne}),ae!==e&&l(ae)},{isActive:r}),Uis.createElement(Jis.Text,null,t?E.length>0?N:B:N)};Y6e.default=Kis;Y6e.UncontrolledTextInput=({initialValue:e="",...t})=>{let[r,n]=MYr.useState(e);return Uis.createElement(Kis,Object.assign({},t,{value:r,onChange:n}))}});var qis=H(HYr=>{"use strict";Object.defineProperty(HYr,"__esModule",{value:!0});var Lte=(Wa(),vi(Va)),nAl=dl(),Q6e=mn(),iAl=Lte.__importStar(xkt()),sAl=(Rl(),vi(ng)),zis=pns(),X6e=["regular","dev","peer"],J6e=class extends nAl.BaseCommand{async execute(){iAl.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>Lte.__importStar(txt())),{ScrollableItems:r}=await Promise.resolve().then(()=>Lte.__importStar(oxt())),{useKeypress:n}=await Promise.resolve().then(()=>Lte.__importStar(iGe())),{useMinistore:a}=await Promise.resolve().then(()=>Lte.__importStar(OYr())),{renderForm:o}=await Promise.resolve().then(()=>Lte.__importStar(cxt())),{default:l}=await Promise.resolve().then(()=>Lte.__importStar(jis())),{Box:A,Text:f}=await Promise.resolve().then(()=>Lte.__importStar(DH())),{default:I,useEffect:C,useState:b}=await Promise.resolve().then(()=>Lte.__importStar(lC())),E=await Q6e.Configuration.find(this.context.cwd,this.context.plugins),N=()=>I.createElement(A,{flexDirection:"row"},I.createElement(A,{flexDirection:"column",width:48},I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},""),"/",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to move between packages.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to select a package.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," again to change the target."))),I.createElement(A,{flexDirection:"column"},I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to abort.")))),B=()=>I.createElement(I.Fragment,null,I.createElement(A,{width:15},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Owner")),I.createElement(A,{width:11},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Version")),I.createElement(A,{width:10},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Downloads"))),F=()=>I.createElement(A,{width:17},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Target")),Q=({hit:be,active:Se})=>{let[De,k]=a(be.name,null);n({active:Se},(Le,Je)=>{if(Je.name!=="space")return;if(!De){k(X6e[0]);return}let ft=X6e.indexOf(De)+1;ft===X6e.length?k(null):k(X6e[ft])},[De,k]);let tt=Q6e.structUtils.parseIdent(be.name),ze=Q6e.structUtils.prettyIdent(E,tt);return I.createElement(A,null,I.createElement(A,{width:45},I.createElement(f,{bold:!0,wrap:"wrap"},ze)),I.createElement(A,{width:14,marginLeft:1},I.createElement(f,{bold:!0,wrap:"truncate"},be.owner.name)),I.createElement(A,{width:10,marginLeft:1},I.createElement(f,{italic:!0,wrap:"truncate"},be.version)),I.createElement(A,{width:16,marginLeft:1},I.createElement(f,null,be.humanDownloadsLast30Days)))},J=({name:be,active:Se})=>{let[De]=a(be,null),k=Q6e.structUtils.parseIdent(be);return I.createElement(A,null,I.createElement(A,{width:47},I.createElement(f,{bold:!0}," - ",Q6e.structUtils.prettyIdent(E,k))),X6e.map(tt=>I.createElement(A,{key:tt,width:14,marginLeft:1},I.createElement(f,null," ",I.createElement(t,{active:De===tt})," ",I.createElement(f,{bold:!0},tt)))))},ae=()=>I.createElement(A,{marginTop:1},I.createElement(f,null,"Powered by Algolia.")),ce=await o(({useSubmit:be})=>{let Se=a();be(Se);let De=Array.from(Se.keys()).filter(Sr=>Se.get(Sr)!==null),[k,tt]=b(""),[ze,Le]=b(0),[Je,ft]=b([]),lt=Sr=>{Sr.match(/\t| /)||tt(Sr)},Ot=async()=>{Le(0);let Sr=await(0,zis.search)(k);Sr.query===k&&ft(Sr.hits)},Er=async()=>{let Sr=await(0,zis.search)(k,ze+1);Sr.query===k&&Sr.page-1===ze&&(Le(Sr.page),ft([...Je,...Sr.hits]))};return C(()=>{k?Ot():ft([])},[k]),I.createElement(A,{flexDirection:"column"},I.createElement(N,null),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(f,{bold:!0},"Search: "),I.createElement(A,{width:41},I.createElement(l,{value:k,onChange:lt,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),I.createElement(B,null)),Je.length?I.createElement(r,{radius:2,loop:!1,children:Je.map(Sr=>I.createElement(Q,{key:Sr.name,hit:Sr,active:!1})),willReachEnd:Er}):I.createElement(f,{color:"gray"},"Start typing..."),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(A,{width:49},I.createElement(f,{bold:!0},"Selected:")),I.createElement(F,null)),De.length?De.map(Sr=>I.createElement(J,{key:Sr,name:Sr,active:!1})):I.createElement(f,{color:"gray"},"No selected packages..."),I.createElement(ae,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ce>"u")return 1;let fe=Array.from(ce.keys()).filter(be=>ce.get(be)==="regular"),ue=Array.from(ce.keys()).filter(be=>ce.get(be)==="dev"),de=Array.from(ce.keys()).filter(be=>ce.get(be)==="peer");return fe.length&&await this.cli.run(["add",...fe]),ue.length&&await this.cli.run(["add","--dev",...ue]),de&&await this.cli.run(["add","--peer",...de]),0}};J6e.paths=[["search"]];J6e.usage=sAl.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===Igl&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===pgl&&this.focusNext(),t===fgl&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return Y_e.default.createElement(cgl.default.Provider,{value:{exit:this.handleExit}},Y_e.default.createElement(lgl.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},Y_e.default.createElement(ugl.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},Y_e.default.createElement(ggl.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},Y_e.default.createElement(Agl.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?Y_e.default.createElement(dgl.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){Cis.default.hide(this.props.stdout)}componentWillUnmount(){Cis.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};U4.default=jkt;jkt.displayName="InternalApp"});var Eis=H(K4=>{"use strict";var hgl=K4&&K4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mgl=K4&&K4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Cgl=K4&&K4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&hgl(t,e,r);return mgl(t,e),t},j4=K4&&K4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(K4,"__esModule",{value:!0});var _gl=j4(lC()),yis=PIr(),ygl=j4(Zns()),bgl=j4(UMe()),Egl=j4(XIr()),Sgl=j4(JIr()),WYr=j4(jns()),vgl=j4(ais()),Bgl=j4(Wpt()),wgl=j4(Dhr()),Tgl=Cgl(CYr()),Rgl=j4(vYr()),Ngl=j4(_is()),nGe=process.env.CI==="false"?!1:Egl.default,bis=()=>{},OYr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=vgl.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` +`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(nGe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(bgl.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},Sgl.default(this),this.options=t,this.rootNode=Tgl.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:yis.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=ygl.default.create(t.stdout),this.throttledLog=t.debug?this.log:yis.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=WYr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=Bgl.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),nGe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=_gl.default.createElement(Ngl.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);WYr.default.updateContainer(r,this.container,null,bis)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(nGe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(nGe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),nGe?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,WYr.default.updateContainer(null,this.container,null,bis),Rgl.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!nGe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=wgl.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};K4.default=OYr});var vis=H(R6e=>{"use strict";var Sis=R6e&&R6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(R6e,"__esModule",{value:!0});var Dgl=Sis(Eis()),zkt=Sis(vYr()),kgl=Et("stream"),xgl=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},Ggl(t)),n=Fgl(r.stdout,()=>new Dgl.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>zkt.default.delete(r.stdout),clear:n.clear}};R6e.default=xgl;var Ggl=(e={})=>e instanceof kgl.Stream?{stdout:e,stdin:process.stdin}:e,Fgl=(e,t)=>{let r;return zkt.default.has(e)?r=zkt.default.get(e):(r=t(),zkt.default.set(e,r)),r}});var wis=H(Lte=>{"use strict";var Zgl=Lte&&Lte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Lgl=Lte&&Lte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Vgl=Lte&&Lte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Zgl(t,e,r);return Lgl(t,e),t};Object.defineProperty(Lte,"__esModule",{value:!0});var N6e=Vgl(lC()),Bis=e=>{let{items:t,children:r,style:n}=e,[a,o]=N6e.useState(0),l=N6e.useMemo(()=>t.slice(a),[t,a]);N6e.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=N6e.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return N6e.default.createElement("ink-box",{internal_static:!0,style:f},A)};Bis.displayName="Static";Lte.default=Bis});var Ris=H(D6e=>{"use strict";var Wgl=D6e&&D6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(D6e,"__esModule",{value:!0});var Ogl=Wgl(lC()),Tis=({children:e,transform:t})=>e==null?null:Ogl.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);Tis.displayName="Transform";D6e.default=Tis});var Dis=H(k6e=>{"use strict";var Pgl=k6e&&k6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(k6e,"__esModule",{value:!0});var Mgl=Pgl(lC()),Nis=({count:e=1})=>Mgl.default.createElement("ink-text",null,` +`.repeat(e));Nis.displayName="Newline";k6e.default=Nis});var Gis=H(x6e=>{"use strict";var kis=x6e&&x6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(x6e,"__esModule",{value:!0});var Hgl=kis(lC()),Ygl=kis(Kkt()),xis=()=>Hgl.default.createElement(Ygl.default,{flexGrow:1});xis.displayName="Spacer";x6e.default=xis});var qkt=H(G6e=>{"use strict";var Qgl=G6e&&G6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(G6e,"__esModule",{value:!0});var Xgl=lC(),Jgl=Qgl(RYr()),Ugl=()=>Xgl.useContext(Jgl.default);G6e.default=Ugl});var Zis=H(F6e=>{"use strict";var Kgl=F6e&&F6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(F6e,"__esModule",{value:!0});var Fis=lC(),jgl=Kgl(qkt()),zgl=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=jgl.default();Fis.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),Fis.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};F6e.default=zgl});var Lis=H(Z6e=>{"use strict";var qgl=Z6e&&Z6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Z6e,"__esModule",{value:!0});var $gl=lC(),eAl=qgl(wYr()),tAl=()=>$gl.useContext(eAl.default);Z6e.default=tAl});var Vis=H(L6e=>{"use strict";var rAl=L6e&&L6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(L6e,"__esModule",{value:!0});var nAl=lC(),iAl=rAl(DYr()),sAl=()=>nAl.useContext(iAl.default);L6e.default=sAl});var Wis=H(V6e=>{"use strict";var oAl=V6e&&V6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(V6e,"__esModule",{value:!0});var aAl=lC(),cAl=oAl(xYr()),lAl=()=>aAl.useContext(cAl.default);V6e.default=lAl});var Pis=H(O6e=>{"use strict";var Ois=O6e&&O6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(O6e,"__esModule",{value:!0});var W6e=lC(),uAl=Ois(Ukt()),gAl=Ois(qkt()),AAl=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=gAl.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=W6e.useContext(uAl.default),b=W6e.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return W6e.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),W6e.useEffect(()=>{e?f(b):I(b)},[e,b]),W6e.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};O6e.default=AAl});var Mis=H(P6e=>{"use strict";var dAl=P6e&&P6e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(P6e,"__esModule",{value:!0});var pAl=lC(),fAl=dAl(Ukt()),IAl=()=>{let e=pAl.useContext(fAl.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};P6e.default=IAl});var His=H(PYr=>{"use strict";Object.defineProperty(PYr,"__esModule",{value:!0});PYr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var kH=H(ux=>{"use strict";Object.defineProperty(ux,"__esModule",{value:!0});var hAl=vis();Object.defineProperty(ux,"render",{enumerable:!0,get:function(){return hAl.default}});var mAl=Kkt();Object.defineProperty(ux,"Box",{enumerable:!0,get:function(){return mAl.default}});var CAl=VYr();Object.defineProperty(ux,"Text",{enumerable:!0,get:function(){return CAl.default}});var _Al=wis();Object.defineProperty(ux,"Static",{enumerable:!0,get:function(){return _Al.default}});var yAl=Ris();Object.defineProperty(ux,"Transform",{enumerable:!0,get:function(){return yAl.default}});var bAl=Dis();Object.defineProperty(ux,"Newline",{enumerable:!0,get:function(){return bAl.default}});var EAl=Gis();Object.defineProperty(ux,"Spacer",{enumerable:!0,get:function(){return EAl.default}});var SAl=Zis();Object.defineProperty(ux,"useInput",{enumerable:!0,get:function(){return SAl.default}});var vAl=Lis();Object.defineProperty(ux,"useApp",{enumerable:!0,get:function(){return vAl.default}});var BAl=qkt();Object.defineProperty(ux,"useStdin",{enumerable:!0,get:function(){return BAl.default}});var wAl=Vis();Object.defineProperty(ux,"useStdout",{enumerable:!0,get:function(){return wAl.default}});var TAl=Wis();Object.defineProperty(ux,"useStderr",{enumerable:!0,get:function(){return TAl.default}});var RAl=Pis();Object.defineProperty(ux,"useFocus",{enumerable:!0,get:function(){return RAl.default}});var NAl=Mis();Object.defineProperty(ux,"useFocusManager",{enumerable:!0,get:function(){return NAl.default}});var DAl=His();Object.defineProperty(ux,"measureElement",{enumerable:!0,get:function(){return DAl.default}})});var txt=H(ext=>{"use strict";Object.defineProperty(ext,"__esModule",{value:!0});ext.Gem=void 0;var kAl=(Wa(),vi(Va)),xAl=kH(),$kt=kAl.__importStar(lC());ext.Gem=(0,$kt.memo)(({active:e})=>{let t=(0,$kt.useMemo)(()=>e?"\u25C9":"\u25EF",[e]),r=(0,$kt.useMemo)(()=>e?"green":"yellow",[e]);return $kt.default.createElement(xAl.Text,{color:r},t)})});var iGe=H(MYr=>{"use strict";Object.defineProperty(MYr,"__esModule",{value:!0});MYr.useKeypress=FAl;var GAl=kH(),Yis=lC();function FAl({active:e},t,r){let{stdin:n}=(0,GAl.useStdin)(),a=(0,Yis.useCallback)((o,l)=>t(o,l),r);(0,Yis.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var HYr=H(sGe=>{"use strict";Object.defineProperty(sGe,"__esModule",{value:!0});sGe.useFocusRequest=sGe.FocusRequest=void 0;var ZAl=iGe(),rxt;(function(e){e.BEFORE="before",e.AFTER="after"})(rxt||(sGe.FocusRequest=rxt={}));var LAl=function({active:e},t,r){(0,ZAl.useKeypress)({active:e},(n,a)=>{a.name==="tab"&&(a.shift?t(rxt.BEFORE):t(rxt.AFTER))},r)};sGe.useFocusRequest=LAl});var ixt=H(nxt=>{"use strict";Object.defineProperty(nxt,"__esModule",{value:!0});nxt.useListInput=void 0;var VAl=iGe(),WAl=function(e,t,{active:r,minus:n,plus:a,set:o,loop:l=!0}){(0,VAl.useKeypress)({active:r},(A,f)=>{let I=t.indexOf(e);switch(f.name){case n:{let C=I-1;if(l){o(t[(t.length+C)%t.length]);return}if(C<0)return;o(t[C])}break;case a:{let C=I+1;if(l){o(t[C%t.length]);return}if(C>=t.length)return;o(t[C])}break}},[t,e,a,o,l])};nxt.useListInput=WAl});var oxt=H(sxt=>{"use strict";Object.defineProperty(sxt,"__esModule",{value:!0});sxt.ScrollableItems=void 0;var OAl=(Wa(),vi(Va)),oGe=kH(),z4=OAl.__importStar(lC()),PAl=HYr(),MAl=ixt(),HAl=({active:e=!0,children:t=[],radius:r=10,size:n=1,loop:a=!0,onFocusRequest:o,willReachEnd:l})=>{let A=Q=>{if(Q.key===null)throw new Error("Expected all children to have a key");return Q.key},f=z4.default.Children.map(t,Q=>A(Q)),I=f[0],[C,b]=(0,z4.useState)(I),E=f.indexOf(C);(0,z4.useEffect)(()=>{f.includes(C)||b(I)},[t]),(0,z4.useEffect)(()=>{l&&E>=f.length-2&&l()},[E]),(0,PAl.useFocusRequest)({active:e&&!!o},Q=>{o?.(Q)},[o]),(0,MAl.useListInput)(C,f,{active:e,minus:"up",plus:"down",set:b,loop:a});let N=E-r,B=E+r;B>f.length&&(N-=B-f.length,B=f.length),N<0&&(B+=-N,N=0),B>=f.length&&(B=f.length-1);let F=[];for(let Q=N;Q<=B;++Q){let J=f[Q],ae=e&&J===C;F.push(z4.default.createElement(oGe.Box,{key:J,height:n},z4.default.createElement(oGe.Box,{marginLeft:1,marginRight:1},z4.default.createElement(oGe.Text,null,ae?z4.default.createElement(oGe.Text,{color:"cyan",bold:!0},">"):" ")),z4.default.createElement(oGe.Box,null,z4.default.cloneElement(t[Q],{active:ae}))))}return z4.default.createElement(oGe.Box,{flexDirection:"column",width:"100%"},F)};sxt.ScrollableItems=HAl});var YYr=H(X_e=>{"use strict";Object.defineProperty(X_e,"__esModule",{value:!0});X_e.Application=X_e.MinistoreContext=void 0;var YAl=(Wa(),vi(Va)),QAl=kH(),M6e=YAl.__importStar(lC()),XAl=Et("readline");X_e.MinistoreContext=M6e.default.createContext(null);var JAl=({children:e})=>{let{stdin:t,setRawMode:r}=(0,QAl.useStdin)();(0,M6e.useEffect)(()=>{r&&r(!0),t&&(0,XAl.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,M6e.useState)(new Map),o=(0,M6e.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(f=>new Map([...f,[l,A]])),setAll:l=>a(A=>new Map([...A,...l]))}),[n,a]);return M6e.default.createElement(X_e.MinistoreContext.Provider,{value:o,children:e})};X_e.Application=JAl});var XYr=H(axt=>{"use strict";Object.defineProperty(axt,"__esModule",{value:!0});axt.useMinistore=UAl;axt.useMinistoreSetAll=KAl;var QYr=lC(),Qis=YYr();function UAl(e,t){let r=(0,QYr.useContext)(Qis.MinistoreContext);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof e>"u")return r.getAll();let n=(0,QYr.useCallback)(o=>{r.set(e,o)},[e,r.set]),a=r.get(e);return typeof a>"u"&&(a=t),[a,n]}function KAl(){let e=(0,QYr.useContext)(Qis.MinistoreContext);if(e===null)throw new Error("Expected this hook to run with a ministore context attached");return e.setAll}});var cxt=H(JYr=>{"use strict";Object.defineProperty(JYr,"__esModule",{value:!0});JYr.renderForm=$Al;var jAl=(Wa(),vi(Va)),Xis=kH(),Jis=jAl.__importDefault(lC()),zAl=YYr(),qAl=iGe();async function $Al(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,Xis.useApp)();(0,qAl.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,Xis.render)(Jis.default.createElement(zAl.Application,null,Jis.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var zis=H(H6e=>{"use strict";Object.defineProperty(H6e,"__esModule",{value:!0});H6e.UncontrolledTextInput=void 0;var Kis=lC(),UYr=lC(),Uis=kH(),J_e=qK(),jis=({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A})=>{let[{cursorOffset:f,cursorWidth:I},C]=UYr.useState({cursorOffset:(e||"").length,cursorWidth:0});UYr.useEffect(()=>{C(F=>{if(!r||!o)return F;let Q=e||"";return F.cursorOffset>Q.length-1?{cursorOffset:Q.length,cursorWidth:0}:F})},[e,r,o]);let b=a?I:0,E=n?n.repeat(e.length):e,N=E,B=t?J_e.grey(t):void 0;if(o&&r){B=t.length>0?J_e.inverse(t[0])+J_e.grey(t.slice(1)):J_e.inverse(" "),N=E.length>0?"":J_e.inverse(" ");let F=0;for(let Q of E)F>=f-b&&F<=f?N+=J_e.inverse(Q):N+=Q,F++;E.length>0&&f===E.length&&(N+=J_e.inverse(" "))}return Uis.useInput((F,Q)=>{if(Q.upArrow||Q.downArrow||Q.ctrl&&F==="c"||Q.tab||Q.shift&&Q.tab)return;if(Q.return){A&&A(e);return}let J=f,ae=e,ne=0;Q.leftArrow?o&&J--:Q.rightArrow?o&&J++:Q.backspace||Q.delete?f>0&&(ae=e.slice(0,f-1)+e.slice(f,e.length),J--):(ae=e.slice(0,f)+F+e.slice(f,e.length),J+=F.length,F.length>1&&(ne=F.length)),f<0&&(J=0),f>e.length&&(J=e.length),C({cursorOffset:J,cursorWidth:ne}),ae!==e&&l(ae)},{isActive:r}),Kis.createElement(Uis.Text,null,t?E.length>0?N:B:N)};H6e.default=jis;H6e.UncontrolledTextInput=({initialValue:e="",...t})=>{let[r,n]=UYr.useState(e);return Kis.createElement(jis,Object.assign({},t,{value:r,onChange:n}))}});var $is=H(KYr=>{"use strict";Object.defineProperty(KYr,"__esModule",{value:!0});var Vte=(Wa(),vi(Va)),edl=sl(),Y6e=wn(),tdl=Vte.__importStar(xkt()),rdl=(vl(),vi(ng)),qis=fns(),Q6e=["regular","dev","peer"],X6e=class extends edl.BaseCommand{async execute(){tdl.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>Vte.__importStar(txt())),{ScrollableItems:r}=await Promise.resolve().then(()=>Vte.__importStar(oxt())),{useKeypress:n}=await Promise.resolve().then(()=>Vte.__importStar(iGe())),{useMinistore:a}=await Promise.resolve().then(()=>Vte.__importStar(XYr())),{renderForm:o}=await Promise.resolve().then(()=>Vte.__importStar(cxt())),{default:l}=await Promise.resolve().then(()=>Vte.__importStar(zis())),{Box:A,Text:f}=await Promise.resolve().then(()=>Vte.__importStar(kH())),{default:I,useEffect:C,useState:b}=await Promise.resolve().then(()=>Vte.__importStar(lC())),E=await Y6e.Configuration.find(this.context.cwd,this.context.plugins),N=()=>I.createElement(A,{flexDirection:"row"},I.createElement(A,{flexDirection:"column",width:48},I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},""),"/",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to move between packages.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to select a package.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," again to change the target."))),I.createElement(A,{flexDirection:"column"},I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to abort.")))),B=()=>I.createElement(I.Fragment,null,I.createElement(A,{width:15},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Owner")),I.createElement(A,{width:11},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Version")),I.createElement(A,{width:10},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Downloads"))),F=()=>I.createElement(A,{width:17},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Target")),Q=({hit:be,active:Se})=>{let[De,k]=a(be.name,null);n({active:Se},(Le,Je)=>{if(Je.name!=="space")return;if(!De){k(Q6e[0]);return}let ft=Q6e.indexOf(De)+1;ft===Q6e.length?k(null):k(Q6e[ft])},[De,k]);let tt=Y6e.structUtils.parseIdent(be.name),ze=Y6e.structUtils.prettyIdent(E,tt);return I.createElement(A,null,I.createElement(A,{width:45},I.createElement(f,{bold:!0,wrap:"wrap"},ze)),I.createElement(A,{width:14,marginLeft:1},I.createElement(f,{bold:!0,wrap:"truncate"},be.owner.name)),I.createElement(A,{width:10,marginLeft:1},I.createElement(f,{italic:!0,wrap:"truncate"},be.version)),I.createElement(A,{width:16,marginLeft:1},I.createElement(f,null,be.humanDownloadsLast30Days)))},J=({name:be,active:Se})=>{let[De]=a(be,null),k=Y6e.structUtils.parseIdent(be);return I.createElement(A,null,I.createElement(A,{width:47},I.createElement(f,{bold:!0}," - ",Y6e.structUtils.prettyIdent(E,k))),Q6e.map(tt=>I.createElement(A,{key:tt,width:14,marginLeft:1},I.createElement(f,null," ",I.createElement(t,{active:De===tt})," ",I.createElement(f,{bold:!0},tt)))))},ae=()=>I.createElement(A,{marginTop:1},I.createElement(f,null,"Powered by Algolia.")),ce=await o(({useSubmit:be})=>{let Se=a();be(Se);let De=Array.from(Se.keys()).filter(Sr=>Se.get(Sr)!==null),[k,tt]=b(""),[ze,Le]=b(0),[Je,ft]=b([]),lt=Sr=>{Sr.match(/\t| /)||tt(Sr)},Ot=async()=>{Le(0);let Sr=await(0,qis.search)(k);Sr.query===k&&ft(Sr.hits)},Er=async()=>{let Sr=await(0,qis.search)(k,ze+1);Sr.query===k&&Sr.page-1===ze&&(Le(Sr.page),ft([...Je,...Sr.hits]))};return C(()=>{k?Ot():ft([])},[k]),I.createElement(A,{flexDirection:"column"},I.createElement(N,null),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(f,{bold:!0},"Search: "),I.createElement(A,{width:41},I.createElement(l,{value:k,onChange:lt,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),I.createElement(B,null)),Je.length?I.createElement(r,{radius:2,loop:!1,children:Je.map(Sr=>I.createElement(Q,{key:Sr.name,hit:Sr,active:!1})),willReachEnd:Er}):I.createElement(f,{color:"gray"},"Start typing..."),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(A,{width:49},I.createElement(f,{bold:!0},"Selected:")),I.createElement(F,null)),De.length?De.map(Sr=>I.createElement(J,{key:Sr,name:Sr,active:!1})):I.createElement(f,{color:"gray"},"No selected packages..."),I.createElement(ae,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ce>"u")return 1;let fe=Array.from(ce.keys()).filter(be=>ce.get(be)==="regular"),ue=Array.from(ce.keys()).filter(be=>ce.get(be)==="dev"),de=Array.from(ce.keys()).filter(be=>ce.get(be)==="peer");return fe.length&&await this.cli.run(["add",...fe]),ue.length&&await this.cli.run(["add","--dev",...ue]),de&&await this.cli.run(["add","--peer",...de]),0}};X6e.paths=[["search"]];X6e.usage=rdl.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry. - `,examples:[["Open the search window","yarn search"]]});HYr.default=J6e});var tF=H(uC=>{"use strict";var oAl=Object.prototype.toString,kH=bKe(),$is=!1,U6e=new Set,ess={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};uC.longest=(e,t)=>e.reduce((r,n)=>Math.max(r,t?n[t].length:n.length),0);uC.hasColor=e=>!!e&&kH.hasColor(e);var lxt=uC.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);uC.nativeType=e=>oAl.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"");uC.isAsyncFn=e=>uC.nativeType(e)==="asyncfunction";uC.isPrimitive=e=>e!=null&&typeof e!="object"&&typeof e!="function";uC.resolve=(e,t,...r)=>typeof t=="function"?t.call(e,...r):t;uC.scrollDown=(e=[])=>[...e.slice(1),e[0]];uC.scrollUp=(e=[])=>[e.pop(),...e];uC.reorder=(e=[])=>{let t=e.slice();return t.sort((r,n)=>r.index>n.index?1:r.index{let n=e.length,a=r===n?0:r<0?n-1:r,o=e[t];e[t]=e[a],e[a]=o};uC.width=(e,t=80)=>{let r=e&&e.columns?e.columns:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[0]),process.platform==="win32"?r-1:r};uC.height=(e,t=20)=>{let r=e&&e.rows?e.rows:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[1]),r};uC.wordWrap=(e,t={})=>{if(!e)return e;typeof t=="number"&&(t={width:t});let{indent:r="",newline:n=` -`+r,width:a=80}=t,o=(n+r).match(/[^\S\n]/g)||[];a-=o.length;let l=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,A=e.trim(),f=new RegExp(l,"g"),I=A.match(f)||[];return I=I.map(C=>C.replace(/\n$/,"")),t.padEnd&&(I=I.map(C=>C.padEnd(a," "))),t.padStart&&(I=I.map(C=>C.padStart(a," "))),r+I.join(n)};uC.unmute=e=>{let t=e.stack.find(n=>kH.keys.color.includes(n));return t?kH[t]:e.stack.find(n=>n.slice(2)==="bg")?kH[t.slice(2)]:n=>n};uC.pascal=e=>e?e[0].toUpperCase()+e.slice(1):"";uC.inverse=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>kH.keys.color.includes(n));if(t){let n=kH["bg"+uC.pascal(t)];return n?n.black:e}let r=e.stack.find(n=>n.slice(0,2)==="bg");return r?kH[r.slice(2).toLowerCase()]||e:kH.none};uC.complement=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>kH.keys.color.includes(n)),r=e.stack.find(n=>n.slice(0,2)==="bg");if(t&&!r)return kH[ess[t]||t];if(r){let n=r.slice(2).toLowerCase(),a=ess[n];return a&&kH["bg"+uC.pascal(a)]||e}return kH.none};uC.meridiem=e=>{let t=e.getHours(),r=e.getMinutes(),n=t>=12?"pm":"am";t=t%12;let a=t===0?12:t,o=r<10?"0"+r:r;return a+":"+o+" "+n};uC.set=(e={},t="",r)=>t.split(".").reduce((n,a,o,l)=>{let A=l.length-1>o?n[a]||{}:r;return!uC.isObject(A)&&o{let n=e[t]==null?t.split(".").reduce((a,o)=>a&&a[o],e):e[t];return n??r};uC.mixin=(e,t)=>{if(!lxt(e))return t;if(!lxt(t))return e;for(let r of Object.keys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(hasOwnProperty.call(n,"value"))if(hasOwnProperty.call(e,r)&&lxt(n.value)){let a=Object.getOwnPropertyDescriptor(e,r);lxt(a.value)&&a.value!==n.value?e[r]=uC.merge({},e[r],t[r]):Reflect.defineProperty(e,r,n)}else Reflect.defineProperty(e,r,n);else Reflect.defineProperty(e,r,n)}return e};uC.merge=(...e)=>{let t={};for(let r of e)uC.mixin(t,r);return t};uC.mixinEmitter=(e,t)=>{let r=t.constructor.prototype;for(let n of Object.keys(r)){let a=r[n];typeof a=="function"?uC.define(e,n,a.bind(t)):uC.define(e,n,a)}};var uxt=(e,t)=>{$is||($is=!0,U6e.forEach(r=>r()),e===!0&&process.exit(128+t))},tss=uxt.bind(null,!0,15),rss=uxt.bind(null,!0,2);uC.onExit=e=>(U6e.size===0&&(process.once("SIGTERM",tss),process.once("SIGINT",rss),process.once("exit",uxt)),U6e.add(e),()=>{U6e.delete(e),U6e.size===0&&(process.off("SIGTERM",tss),process.off("SIGINT",rss),process.off("exit",uxt))});uC.define=(e,t,r)=>{Reflect.defineProperty(e,t,{value:r})};uC.defineExport=(e,t,r)=>{let n;Reflect.defineProperty(e,t,{enumerable:!0,configurable:!0,set(a){n=a},get(){return n?n():r()}})}});var nss=H(aGe=>{"use strict";aGe.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};aGe.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};aGe.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};aGe.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};aGe.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var sss=H((k7u,iss)=>{"use strict";iss.exports=class{_queue=[];_executing=!1;_jobRunner=null;constructor(t){this._jobRunner=t}enqueue=(...t)=>{this._queue.push(t),this._dequeue()};destroy(){this._queue.length=0,this._jobRunner=null}_dequeue(){this._executing||!this._queue.length||(this._executing=!0,this._jobRunner(...this._queue.shift()),setTimeout(()=>{this._executing=!1,this._dequeue()}))}}});var YYr=H((x7u,ass)=>{"use strict";var oss=Et("readline"),aAl=nss(),cAl=sss(),lAl=/^(?:\x1b)([a-zA-Z0-9])$/,uAl=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,gAl={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function AAl(e){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(e)}function dAl(e){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(e)}var gxt=(e="",t={})=>{let r,n={name:t.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:e,raw:e,...t};if(Buffer.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e="\x1B"+String(e)):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e=n.sequence||""),n.sequence=n.sequence||e||n.name,e==="\r")n.raw=void 0,n.name="return";else if(e===` -`)n.name="enter";else if(e===" ")n.name="tab";else if(e==="\b"||e==="\x7F"||e==="\x1B\x7F"||e==="\x1B\b")n.name="backspace",n.meta=e.charAt(0)==="\x1B";else if(e==="\x1B"||e==="\x1B\x1B")n.name="escape",n.meta=e.length===2;else if(e===" "||e==="\x1B ")n.name="space",n.meta=e.length===2;else if(e<="")n.name=String.fromCharCode(e.charCodeAt(0)+97-1),n.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")n.name="number";else if(e.length===1&&e>="a"&&e<="z")n.name=e;else if(e.length===1&&e>="A"&&e<="Z")n.name=e.toLowerCase(),n.shift=!0;else if(r=lAl.exec(e))n.meta=!0,n.shift=/^[A-Z]$/.test(r[1]);else if(r=uAl.exec(e)){let a=[...e];a[0]==="\x1B"&&a[1]==="\x1B"&&(n.option=!0);let o=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),l=(r[3]||r[5]||1)-1;n.ctrl=!!(l&4),n.meta=!!(l&10),n.shift=!!(l&1),n.code=o,n.name=gAl[o],n.shift=AAl(o)||n.shift,n.ctrl=dAl(o)||n.ctrl}return n};gxt.listen=(e={},t)=>{let{stdin:r}=e;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let n=oss.createInterface({terminal:!0,input:r});oss.emitKeypressEvents(r,n);let a=new cAl((A,f)=>t(A,gxt(A,f),n)),o=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a.enqueue),n.resume(),()=>{r.isTTY&&r.setRawMode(o),r.removeListener("keypress",a.enqueue),a.destroy(),n.pause(),n.close()}};gxt.action=(e,t,r)=>{let n={...aAl,...r};return t.ctrl?(t.action=n.ctrl[t.name],t):t.option&&n.option?(t.action=n.option[t.name],t):t.shift?(t.action=n.shift[t.name],t):(t.action=n.keys[t.name],t)};ass.exports=gxt});var lss=H((G7u,css)=>{"use strict";css.exports=e=>{e.timers=e.timers||{};let t=e.options.timers;if(t)for(let r of Object.keys(t)){let n=t[r];typeof n=="number"&&(n={interval:n}),pAl(e,r,n)}};function pAl(e,t,r={}){let n=e.timers[t]={name:t,start:Date.now(),ms:0,tick:0},a=r.interval||120;n.frames=r.frames||[],n.loading=!0;let o=setInterval(()=>{n.ms=Date.now()-n.start,n.tick++,e.render()},a);return n.stop=()=>{n.loading=!1,clearInterval(o)},Reflect.defineProperty(n,"interval",{value:o}),e.once("close",()=>n.stop()),n.stop}});var gss=H((F7u,uss)=>{"use strict";var{define:fAl,width:IAl}=tF(),QYr=class{constructor(t){let r=t.options;fAl(this,"_prompt",t),this.type=t.type,this.name=t.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=IAl(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=t.symbols,this.styles=t.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let t={...this};return t.status=this.status,t.buffer=Buffer.from(t.buffer),delete t.clone,t}set color(t){this._color=t}get color(){let t=this.prompt.styles;if(this.cancelled)return t.cancelled;if(this.submitted)return t.submitted;let r=this._color||t[this.status];return typeof r=="function"?r:t.pending}set loading(t){this._loading=t}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};uss.exports=QYr});var dss=H((Z7u,Ass)=>{"use strict";var XYr=tF(),ux=bKe(),JYr={default:ux.noop,noop:ux.noop,set inverse(e){this._inverse=e},get inverse(){return this._inverse||XYr.inverse(this.primary)},set complement(e){this._complement=e},get complement(){return this._complement||XYr.complement(this.primary)},primary:ux.cyan,success:ux.green,danger:ux.magenta,strong:ux.bold,warning:ux.yellow,muted:ux.dim,disabled:ux.gray,dark:ux.dim.gray,underline:ux.underline,set info(e){this._info=e},get info(){return this._info||this.primary},set em(e){this._em=e},get em(){return this._em||this.primary.underline},set heading(e){this._heading=e},get heading(){return this._heading||this.muted.underline},set pending(e){this._pending=e},get pending(){return this._pending||this.primary},set submitted(e){this._submitted=e},get submitted(){return this._submitted||this.success},set cancelled(e){this._cancelled=e},get cancelled(){return this._cancelled||this.danger},set typing(e){this._typing=e},get typing(){return this._typing||this.dim},set placeholder(e){this._placeholder=e},get placeholder(){return this._placeholder||this.primary.dim},set highlight(e){this._highlight=e},get highlight(){return this._highlight||this.inverse}};JYr.merge=(e={})=>{e.styles&&typeof e.styles.enabled=="boolean"&&(ux.enabled=e.styles.enabled),e.styles&&typeof e.styles.visible=="boolean"&&(ux.visible=e.styles.visible);let t=XYr.merge({},JYr,e.styles);delete t.merge;for(let r of Object.keys(ux))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ux[r]});for(let r of Object.keys(ux.styles))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ux[r]});return t};Ass.exports=JYr});var fss=H((L7u,pss)=>{"use strict";var UYr=process.platform==="win32",Vte=bKe(),hAl=tF(),KYr={...Vte.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:Vte.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:Vte.symbols.question,submitted:Vte.symbols.check,cancelled:Vte.symbols.cross},separator:{pending:Vte.symbols.pointerSmall,submitted:Vte.symbols.middot,cancelled:Vte.symbols.middot},radio:{off:UYr?"( )":"\u25EF",on:UYr?"(*)":"\u25C9",disabled:UYr?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};KYr.merge=e=>{let t=hAl.merge({},Vte.symbols,KYr,e.symbols);return delete t.merge,t};pss.exports=KYr});var hss=H((V7u,Iss)=>{"use strict";var mAl=dss(),CAl=fss(),_Al=tF();Iss.exports=e=>{e.options=_Al.merge({},e.options.theme,e.options),e.symbols=CAl.merge(e.options),e.styles=mAl.merge(e.options)}});var bss=H((_ss,yss)=>{"use strict";var mss=process.env.TERM_PROGRAM==="Apple_Terminal",yAl=oM(),jYr=tF(),z4=yss.exports=_ss,MS="\x1B[",Css="\x07",zYr=!1,mue=z4.code={bell:Css,beep:Css,beginning:`${MS}G`,down:`${MS}J`,esc:MS,getPosition:`${MS}6n`,hide:`${MS}?25l`,line:`${MS}2K`,lineEnd:`${MS}K`,lineStart:`${MS}1K`,restorePosition:MS+(mss?"8":"u"),savePosition:MS+(mss?"7":"s"),screen:`${MS}2J`,show:`${MS}?25h`,up:`${MS}1J`},U_e=z4.cursor={get hidden(){return zYr},hide(){return zYr=!0,mue.hide},show(){return zYr=!1,mue.show},forward:(e=1)=>`${MS}${e}C`,backward:(e=1)=>`${MS}${e}D`,nextLine:(e=1)=>`${MS}E`.repeat(e),prevLine:(e=1)=>`${MS}F`.repeat(e),up:(e=1)=>e?`${MS}${e}A`:"",down:(e=1)=>e?`${MS}${e}B`:"",right:(e=1)=>e?`${MS}${e}C`:"",left:(e=1)=>e?`${MS}${e}D`:"",to(e,t){return t?`${MS}${t+1};${e+1}H`:`${MS}${e+1}G`},move(e=0,t=0){let r="";return r+=e<0?U_e.left(-e):e>0?U_e.right(e):"",r+=t<0?U_e.up(-t):t>0?U_e.down(t):"",r},strLen(e){for(var t=0,r=e.length,n=-1,a=0;a=0&&n<=128?t+=1:t+=2;return t},restore(e={}){let{after:t,cursor:r,initial:n,input:a,prompt:o,size:l,value:A}=e;if(n=jYr.isPrimitive(n)?String(n):"",a=jYr.isPrimitive(a)?String(a):"",A=jYr.isPrimitive(A)?String(A):"",l){let f=z4.cursor.up(l)+z4.cursor.to(this.strLen(o)),I=a.length-r;return I>0&&(f+=z4.cursor.left(I)),f}if(A||t){let f=!a&&n?-this.strLen(n):-this.strLen(a)+r;return t&&(f-=this.strLen(t)),a===""&&n&&!o.includes(n)&&(f+=this.strLen(n)),z4.cursor.move(f)}}},qYr=z4.erase={screen:mue.screen,up:mue.up,down:mue.down,line:mue.line,lineEnd:mue.lineEnd,lineStart:mue.lineStart,lines(e){let t="";for(let r=0;r{if(!t)return qYr.line+U_e.to(0);let r=o=>[...yAl(o)].length,n=e.split(/\r?\n/),a=0;for(let o of n)a+=1+Math.floor(Math.max(r(o)-1,0)/t);return(qYr.line+U_e.prevLine()).repeat(a-1)+qYr.line+U_e.to(0)}});var cGe=H((W7u,Sss)=>{"use strict";var bAl=Et("events"),Ess=oM(),$Yr=YYr(),EAl=lss(),SAl=gss(),vAl=hss(),KV=tF(),K_e=bss(),eQr=class e extends bAl{constructor(t={}){super(),this.name=t.name,this.type=t.type,this.options=t,vAl(this),EAl(this),this.state=new SAl(this),this.initial=[t.initial,t.default].find(r=>r!=null),this.stdout=t.stdout||process.stdout,this.stdin=t.stdin||process.stdin,this.scale=t.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=wAl(this.options.margin),this.setMaxListeners(0),BAl(this)}async keypress(t,r={}){this.keypressed=!0;let n=$Yr.action(t,$Yr(t,r),this.options.actions);this.state.keypress=n,this.emit("keypress",t,n),this.emit("state",this.state.clone());let a=this.options[n.action]||this[n.action]||this.dispatch;if(typeof a=="function")return await a.call(this,t,n);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(K_e.code.beep)}cursorHide(){this.stdout.write(K_e.cursor.hide());let t=KV.onExit(()=>this.cursorShow());this.on("close",()=>{this.cursorShow(),t()})}cursorShow(){this.stdout.write(K_e.cursor.show())}write(t){t&&(this.stdout&&this.state.show!==!1&&this.stdout.write(t),this.state.buffer+=t)}clear(t=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!t||this.options.show===!1)&&this.stdout.write(K_e.cursor.down(t)+K_e.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:t,after:r,rest:n}=this.sections(),{cursor:a,initial:o="",input:l="",value:A=""}=this,f=this.state.size=n.length,I={after:r,cursor:a,initial:o,input:l,prompt:t,size:f,value:A},C=K_e.cursor.restore(I);C&&this.stdout.write(C)}sections(){let{buffer:t,input:r,prompt:n}=this.state;n=Ess(n);let a=Ess(t),o=a.indexOf(n),l=a.slice(0,o),f=a.slice(o).split(` + `,examples:[["Open the search window","yarn search"]]});KYr.default=X6e});var rF=H(uC=>{"use strict";var ndl=Object.prototype.toString,xH=EKe(),ess=!1,J6e=new Set,tss={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};uC.longest=(e,t)=>e.reduce((r,n)=>Math.max(r,t?n[t].length:n.length),0);uC.hasColor=e=>!!e&&xH.hasColor(e);var lxt=uC.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);uC.nativeType=e=>ndl.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"");uC.isAsyncFn=e=>uC.nativeType(e)==="asyncfunction";uC.isPrimitive=e=>e!=null&&typeof e!="object"&&typeof e!="function";uC.resolve=(e,t,...r)=>typeof t=="function"?t.call(e,...r):t;uC.scrollDown=(e=[])=>[...e.slice(1),e[0]];uC.scrollUp=(e=[])=>[e.pop(),...e];uC.reorder=(e=[])=>{let t=e.slice();return t.sort((r,n)=>r.index>n.index?1:r.index{let n=e.length,a=r===n?0:r<0?n-1:r,o=e[t];e[t]=e[a],e[a]=o};uC.width=(e,t=80)=>{let r=e&&e.columns?e.columns:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[0]),process.platform==="win32"?r-1:r};uC.height=(e,t=20)=>{let r=e&&e.rows?e.rows:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[1]),r};uC.wordWrap=(e,t={})=>{if(!e)return e;typeof t=="number"&&(t={width:t});let{indent:r="",newline:n=` +`+r,width:a=80}=t,o=(n+r).match(/[^\S\n]/g)||[];a-=o.length;let l=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,A=e.trim(),f=new RegExp(l,"g"),I=A.match(f)||[];return I=I.map(C=>C.replace(/\n$/,"")),t.padEnd&&(I=I.map(C=>C.padEnd(a," "))),t.padStart&&(I=I.map(C=>C.padStart(a," "))),r+I.join(n)};uC.unmute=e=>{let t=e.stack.find(n=>xH.keys.color.includes(n));return t?xH[t]:e.stack.find(n=>n.slice(2)==="bg")?xH[t.slice(2)]:n=>n};uC.pascal=e=>e?e[0].toUpperCase()+e.slice(1):"";uC.inverse=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>xH.keys.color.includes(n));if(t){let n=xH["bg"+uC.pascal(t)];return n?n.black:e}let r=e.stack.find(n=>n.slice(0,2)==="bg");return r?xH[r.slice(2).toLowerCase()]||e:xH.none};uC.complement=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>xH.keys.color.includes(n)),r=e.stack.find(n=>n.slice(0,2)==="bg");if(t&&!r)return xH[tss[t]||t];if(r){let n=r.slice(2).toLowerCase(),a=tss[n];return a&&xH["bg"+uC.pascal(a)]||e}return xH.none};uC.meridiem=e=>{let t=e.getHours(),r=e.getMinutes(),n=t>=12?"pm":"am";t=t%12;let a=t===0?12:t,o=r<10?"0"+r:r;return a+":"+o+" "+n};uC.set=(e={},t="",r)=>t.split(".").reduce((n,a,o,l)=>{let A=l.length-1>o?n[a]||{}:r;return!uC.isObject(A)&&o{let n=e[t]==null?t.split(".").reduce((a,o)=>a&&a[o],e):e[t];return n??r};uC.mixin=(e,t)=>{if(!lxt(e))return t;if(!lxt(t))return e;for(let r of Object.keys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(hasOwnProperty.call(n,"value"))if(hasOwnProperty.call(e,r)&&lxt(n.value)){let a=Object.getOwnPropertyDescriptor(e,r);lxt(a.value)&&a.value!==n.value?e[r]=uC.merge({},e[r],t[r]):Reflect.defineProperty(e,r,n)}else Reflect.defineProperty(e,r,n);else Reflect.defineProperty(e,r,n)}return e};uC.merge=(...e)=>{let t={};for(let r of e)uC.mixin(t,r);return t};uC.mixinEmitter=(e,t)=>{let r=t.constructor.prototype;for(let n of Object.keys(r)){let a=r[n];typeof a=="function"?uC.define(e,n,a.bind(t)):uC.define(e,n,a)}};var uxt=(e,t)=>{ess||(ess=!0,J6e.forEach(r=>r()),e===!0&&process.exit(128+t))},rss=uxt.bind(null,!0,15),nss=uxt.bind(null,!0,2);uC.onExit=e=>(J6e.size===0&&(process.once("SIGTERM",rss),process.once("SIGINT",nss),process.once("exit",uxt)),J6e.add(e),()=>{J6e.delete(e),J6e.size===0&&(process.off("SIGTERM",rss),process.off("SIGINT",nss),process.off("exit",uxt))});uC.define=(e,t,r)=>{Reflect.defineProperty(e,t,{value:r})};uC.defineExport=(e,t,r)=>{let n;Reflect.defineProperty(e,t,{enumerable:!0,configurable:!0,set(a){n=a},get(){return n?n():r()}})}});var iss=H(aGe=>{"use strict";aGe.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};aGe.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};aGe.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};aGe.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};aGe.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var oss=H((Jzu,sss)=>{"use strict";sss.exports=class{_queue=[];_executing=!1;_jobRunner=null;constructor(t){this._jobRunner=t}enqueue=(...t)=>{this._queue.push(t),this._dequeue()};destroy(){this._queue.length=0,this._jobRunner=null}_dequeue(){this._executing||!this._queue.length||(this._executing=!0,this._jobRunner(...this._queue.shift()),setTimeout(()=>{this._executing=!1,this._dequeue()}))}}});var jYr=H((Uzu,css)=>{"use strict";var ass=Et("readline"),idl=iss(),sdl=oss(),odl=/^(?:\x1b)([a-zA-Z0-9])$/,adl=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,cdl={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function ldl(e){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(e)}function udl(e){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(e)}var gxt=(e="",t={})=>{let r,n={name:t.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:e,raw:e,...t};if(Buffer.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e="\x1B"+String(e)):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e=n.sequence||""),n.sequence=n.sequence||e||n.name,e==="\r")n.raw=void 0,n.name="return";else if(e===` +`)n.name="enter";else if(e===" ")n.name="tab";else if(e==="\b"||e==="\x7F"||e==="\x1B\x7F"||e==="\x1B\b")n.name="backspace",n.meta=e.charAt(0)==="\x1B";else if(e==="\x1B"||e==="\x1B\x1B")n.name="escape",n.meta=e.length===2;else if(e===" "||e==="\x1B ")n.name="space",n.meta=e.length===2;else if(e<="")n.name=String.fromCharCode(e.charCodeAt(0)+97-1),n.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")n.name="number";else if(e.length===1&&e>="a"&&e<="z")n.name=e;else if(e.length===1&&e>="A"&&e<="Z")n.name=e.toLowerCase(),n.shift=!0;else if(r=odl.exec(e))n.meta=!0,n.shift=/^[A-Z]$/.test(r[1]);else if(r=adl.exec(e)){let a=[...e];a[0]==="\x1B"&&a[1]==="\x1B"&&(n.option=!0);let o=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),l=(r[3]||r[5]||1)-1;n.ctrl=!!(l&4),n.meta=!!(l&10),n.shift=!!(l&1),n.code=o,n.name=cdl[o],n.shift=ldl(o)||n.shift,n.ctrl=udl(o)||n.ctrl}return n};gxt.listen=(e={},t)=>{let{stdin:r}=e;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let n=ass.createInterface({terminal:!0,input:r});ass.emitKeypressEvents(r,n);let a=new sdl((A,f)=>t(A,gxt(A,f),n)),o=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a.enqueue),n.resume(),()=>{r.isTTY&&r.setRawMode(o),r.removeListener("keypress",a.enqueue),a.destroy(),n.pause(),n.close()}};gxt.action=(e,t,r)=>{let n={...idl,...r};return t.ctrl?(t.action=n.ctrl[t.name],t):t.option&&n.option?(t.action=n.option[t.name],t):t.shift?(t.action=n.shift[t.name],t):(t.action=n.keys[t.name],t)};css.exports=gxt});var uss=H((Kzu,lss)=>{"use strict";lss.exports=e=>{e.timers=e.timers||{};let t=e.options.timers;if(t)for(let r of Object.keys(t)){let n=t[r];typeof n=="number"&&(n={interval:n}),gdl(e,r,n)}};function gdl(e,t,r={}){let n=e.timers[t]={name:t,start:Date.now(),ms:0,tick:0},a=r.interval||120;n.frames=r.frames||[],n.loading=!0;let o=setInterval(()=>{n.ms=Date.now()-n.start,n.tick++,e.render()},a);return n.stop=()=>{n.loading=!1,clearInterval(o)},Reflect.defineProperty(n,"interval",{value:o}),e.once("close",()=>n.stop()),n.stop}});var Ass=H((jzu,gss)=>{"use strict";var{define:Adl,width:ddl}=rF(),zYr=class{constructor(t){let r=t.options;Adl(this,"_prompt",t),this.type=t.type,this.name=t.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=ddl(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=t.symbols,this.styles=t.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let t={...this};return t.status=this.status,t.buffer=Buffer.from(t.buffer),delete t.clone,t}set color(t){this._color=t}get color(){let t=this.prompt.styles;if(this.cancelled)return t.cancelled;if(this.submitted)return t.submitted;let r=this._color||t[this.status];return typeof r=="function"?r:t.pending}set loading(t){this._loading=t}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};gss.exports=zYr});var pss=H((zzu,dss)=>{"use strict";var qYr=rF(),gx=EKe(),$Yr={default:gx.noop,noop:gx.noop,set inverse(e){this._inverse=e},get inverse(){return this._inverse||qYr.inverse(this.primary)},set complement(e){this._complement=e},get complement(){return this._complement||qYr.complement(this.primary)},primary:gx.cyan,success:gx.green,danger:gx.magenta,strong:gx.bold,warning:gx.yellow,muted:gx.dim,disabled:gx.gray,dark:gx.dim.gray,underline:gx.underline,set info(e){this._info=e},get info(){return this._info||this.primary},set em(e){this._em=e},get em(){return this._em||this.primary.underline},set heading(e){this._heading=e},get heading(){return this._heading||this.muted.underline},set pending(e){this._pending=e},get pending(){return this._pending||this.primary},set submitted(e){this._submitted=e},get submitted(){return this._submitted||this.success},set cancelled(e){this._cancelled=e},get cancelled(){return this._cancelled||this.danger},set typing(e){this._typing=e},get typing(){return this._typing||this.dim},set placeholder(e){this._placeholder=e},get placeholder(){return this._placeholder||this.primary.dim},set highlight(e){this._highlight=e},get highlight(){return this._highlight||this.inverse}};$Yr.merge=(e={})=>{e.styles&&typeof e.styles.enabled=="boolean"&&(gx.enabled=e.styles.enabled),e.styles&&typeof e.styles.visible=="boolean"&&(gx.visible=e.styles.visible);let t=qYr.merge({},$Yr,e.styles);delete t.merge;for(let r of Object.keys(gx))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>gx[r]});for(let r of Object.keys(gx.styles))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>gx[r]});return t};dss.exports=$Yr});var Iss=H((qzu,fss)=>{"use strict";var eQr=process.platform==="win32",Wte=EKe(),pdl=rF(),tQr={...Wte.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:Wte.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:Wte.symbols.question,submitted:Wte.symbols.check,cancelled:Wte.symbols.cross},separator:{pending:Wte.symbols.pointerSmall,submitted:Wte.symbols.middot,cancelled:Wte.symbols.middot},radio:{off:eQr?"( )":"\u25EF",on:eQr?"(*)":"\u25C9",disabled:eQr?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};tQr.merge=e=>{let t=pdl.merge({},Wte.symbols,tQr,e.symbols);return delete t.merge,t};fss.exports=tQr});var mss=H(($zu,hss)=>{"use strict";var fdl=pss(),Idl=Iss(),hdl=rF();hss.exports=e=>{e.options=hdl.merge({},e.options.theme,e.options),e.symbols=Idl.merge(e.options),e.styles=fdl.merge(e.options)}});var Ess=H((yss,bss)=>{"use strict";var Css=process.env.TERM_PROGRAM==="Apple_Terminal",mdl=aM(),rQr=rF(),q4=bss.exports=yss,HS="\x1B[",_ss="\x07",nQr=!1,Cue=q4.code={bell:_ss,beep:_ss,beginning:`${HS}G`,down:`${HS}J`,esc:HS,getPosition:`${HS}6n`,hide:`${HS}?25l`,line:`${HS}2K`,lineEnd:`${HS}K`,lineStart:`${HS}1K`,restorePosition:HS+(Css?"8":"u"),savePosition:HS+(Css?"7":"s"),screen:`${HS}2J`,show:`${HS}?25h`,up:`${HS}1J`},U_e=q4.cursor={get hidden(){return nQr},hide(){return nQr=!0,Cue.hide},show(){return nQr=!1,Cue.show},forward:(e=1)=>`${HS}${e}C`,backward:(e=1)=>`${HS}${e}D`,nextLine:(e=1)=>`${HS}E`.repeat(e),prevLine:(e=1)=>`${HS}F`.repeat(e),up:(e=1)=>e?`${HS}${e}A`:"",down:(e=1)=>e?`${HS}${e}B`:"",right:(e=1)=>e?`${HS}${e}C`:"",left:(e=1)=>e?`${HS}${e}D`:"",to(e,t){return t?`${HS}${t+1};${e+1}H`:`${HS}${e+1}G`},move(e=0,t=0){let r="";return r+=e<0?U_e.left(-e):e>0?U_e.right(e):"",r+=t<0?U_e.up(-t):t>0?U_e.down(t):"",r},strLen(e){for(var t=0,r=e.length,n=-1,a=0;a=0&&n<=128?t+=1:t+=2;return t},restore(e={}){let{after:t,cursor:r,initial:n,input:a,prompt:o,size:l,value:A}=e;if(n=rQr.isPrimitive(n)?String(n):"",a=rQr.isPrimitive(a)?String(a):"",A=rQr.isPrimitive(A)?String(A):"",l){let f=q4.cursor.up(l)+q4.cursor.to(this.strLen(o)),I=a.length-r;return I>0&&(f+=q4.cursor.left(I)),f}if(A||t){let f=!a&&n?-this.strLen(n):-this.strLen(a)+r;return t&&(f-=this.strLen(t)),a===""&&n&&!o.includes(n)&&(f+=this.strLen(n)),q4.cursor.move(f)}}},iQr=q4.erase={screen:Cue.screen,up:Cue.up,down:Cue.down,line:Cue.line,lineEnd:Cue.lineEnd,lineStart:Cue.lineStart,lines(e){let t="";for(let r=0;r{if(!t)return iQr.line+U_e.to(0);let r=o=>[...mdl(o)].length,n=e.split(/\r?\n/),a=0;for(let o of n)a+=1+Math.floor(Math.max(r(o)-1,0)/t);return(iQr.line+U_e.prevLine()).repeat(a-1)+iQr.line+U_e.to(0)}});var cGe=H((equ,vss)=>{"use strict";var Cdl=Et("events"),Sss=aM(),sQr=jYr(),_dl=uss(),ydl=Ass(),bdl=mss(),jV=rF(),K_e=Ess(),oQr=class e extends Cdl{constructor(t={}){super(),this.name=t.name,this.type=t.type,this.options=t,bdl(this),_dl(this),this.state=new ydl(this),this.initial=[t.initial,t.default].find(r=>r!=null),this.stdout=t.stdout||process.stdout,this.stdin=t.stdin||process.stdin,this.scale=t.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=Sdl(this.options.margin),this.setMaxListeners(0),Edl(this)}async keypress(t,r={}){this.keypressed=!0;let n=sQr.action(t,sQr(t,r),this.options.actions);this.state.keypress=n,this.emit("keypress",t,n),this.emit("state",this.state.clone());let a=this.options[n.action]||this[n.action]||this.dispatch;if(typeof a=="function")return await a.call(this,t,n);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(K_e.code.beep)}cursorHide(){this.stdout.write(K_e.cursor.hide());let t=jV.onExit(()=>this.cursorShow());this.on("close",()=>{this.cursorShow(),t()})}cursorShow(){this.stdout.write(K_e.cursor.show())}write(t){t&&(this.stdout&&this.state.show!==!1&&this.stdout.write(t),this.state.buffer+=t)}clear(t=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!t||this.options.show===!1)&&this.stdout.write(K_e.cursor.down(t)+K_e.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:t,after:r,rest:n}=this.sections(),{cursor:a,initial:o="",input:l="",value:A=""}=this,f=this.state.size=n.length,I={after:r,cursor:a,initial:o,input:l,prompt:t,size:f,value:A},C=K_e.cursor.restore(I);C&&this.stdout.write(C)}sections(){let{buffer:t,input:r,prompt:n}=this.state;n=Sss(n);let a=Sss(t),o=a.indexOf(n),l=a.slice(0,o),f=a.slice(o).split(` `),I=f[0],C=f[f.length-1],E=(n+(r?" "+r:"")).length,N=Et.call(this,this.value),this.result=()=>n.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let a=r.onSubmit.bind(this),o=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),o())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(t,r)=>{if(this.once("submit",t),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(t,r,n){let{options:a,state:o,symbols:l,timers:A}=this,f=A&&A[t];o.timer=f;let I=a[t]||o[t]||l[t],C=r&&r[t]!=null?r[t]:await I;if(C==="")return C;let b=await this.resolve(C,o,r,n);return!b&&r&&r[t]?this.resolve(I,o,r,n):b}async prefix(){let t=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,n=this.state;return n.timer=r,KV.isObject(t)&&(t=t[n.status]||t.pending),KV.hasColor(t)?t:(this.styles[n.status]||this.styles.pending)(t)}async message(){let t=await this.element("message");return KV.hasColor(t)?t:this.styles.strong(t)}async separator(){let t=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,n=this.state;n.timer=r;let a=t[n.status]||t.pending||n.separator,o=await this.resolve(a,n);return KV.isObject(o)&&(o=o[n.status]||o.pending),KV.hasColor(o)?o:this.styles.muted(o)}async pointer(t,r){let n=await this.element("pointer",t,r);if(typeof n=="string"&&KV.hasColor(n))return n;if(n){let a=this.styles,o=this.index===r,l=o?a.primary:I=>I,A=await this.resolve(n[o?"on":"off"]||n,this.state),f=KV.hasColor(A)?A:l(A);return o?f:" ".repeat(A.length)}}async indicator(t,r){let n=await this.element("indicator",t,r);if(typeof n=="string"&&KV.hasColor(n))return n;if(n){let a=this.styles,o=t.enabled===!0,l=o?a.success:a.dark,A=n[o?"on":"off"]||n;return KV.hasColor(A)?A:l(A)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let t=await this.element("hint");return KV.hasColor(t)?t:this.styles.muted(t)}}error(t){return this.state.submitted?"":t||this.state.error}format(t){return t}result(t){return t}validate(t){return this.options.required===!0?this.isValue(t):!0}isValue(t){return t!=null&&t!==""}resolve(t,...r){return KV.resolve(this,t,...r)}get base(){return e.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||KV.height(this.stdout,25)}get width(){return this.options.columns||KV.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(t){this.state.cursor=t}get cursor(){return this.state.cursor}set input(t){this.state.input=t}get input(){return this.state.input}set value(t){this.state.value=t}get value(){let{input:t,value:r}=this.state,n=[r,t].find(this.isValue.bind(this));return this.isValue(n)?n:this.initial}static get prompt(){return t=>new this(t).run()}};function BAl(e){let t=a=>e[a]===void 0||typeof e[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],n=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(e.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let o=e.options[a];typeof o=="function"&&t(a)?n.includes(a)||(e[a]=o.bind(e)):typeof e[a]!="function"&&(e[a]=o)}}function wAl(e){typeof e=="number"&&(e=[e,e,e,e]);let t=[].concat(e||[]),r=a=>a%2===0?` -`:" ",n=[];for(let a=0;a<4;a++){let o=r(a);t[a]?n.push(o.repeat(t[a])):n.push("")}return n}Sss.exports=eQr});var wss=H((O7u,Bss)=>{"use strict";var TAl=tF(),vss={default(e,t){return t},checkbox(e,t){throw new Error("checkbox role is not implemented yet")},editable(e,t){throw new Error("editable role is not implemented yet")},expandable(e,t){throw new Error("expandable role is not implemented yet")},heading(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||"",t},input(e,t){throw new Error("input role is not implemented yet")},option(e,t){return vss.default(e,t)},radio(e,t){throw new Error("radio role is not implemented yet")},separator(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||e.symbols.line.repeat(5),t},spacer(e,t){return t}};Bss.exports=(e,t={})=>{let r=TAl.merge({},vss,t.roles);return r[e]||r.default}});var K6e=H((P7u,Nss)=>{"use strict";var RAl=oM(),NAl=cGe(),DAl=wss(),Axt=tF(),{reorder:tQr,scrollUp:kAl,scrollDown:xAl,isObject:Tss,swap:GAl}=Axt,rQr=class extends NAl{constructor(t){super(t),this.cursorHide(),this.maxSelected=t.maxSelected||1/0,this.multiple=t.multiple||!1,this.initial=t.initial||0,this.delay=t.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:t,initial:r,autofocus:n,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(t)),this.choices.forEach(o=>o.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");Tss(r)&&(r=Object.keys(r)),Array.isArray(r)?(n!=null&&(this.index=this.findIndex(n)),r.forEach(o=>this.enable(this.find(o))),await this.render()):(n!=null&&(r=n),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(t,r){this.state.loadingChoices=!0;let n=[],a=0,o=async(l,A)=>{typeof l=="function"&&(l=await l.call(this)),l instanceof Promise&&(l=await l);for(let f=0;f(this.state.loadingChoices=!1,l))}async toChoice(t,r,n){if(typeof t=="function"&&(t=await t.call(this,this)),t instanceof Promise&&(t=await t),typeof t=="string"&&(t={name:t}),t.normalized)return t;t.normalized=!0;let a=t.value;if(t=DAl(t.role,this.options)(this,t),typeof t.disabled=="string"&&!t.hint&&(t.hint=t.disabled,t.disabled=!0),t.disabled===!0&&t.hint==null&&(t.hint="(disabled)"),t.index!=null)return t;t.name=t.name||t.key||t.title||t.value||t.message,t.message=t.message||t.name||"",t.value=[t.value,t.name].find(this.isValue.bind(this)),t.input="",t.index=r,t.cursor=0,Axt.define(t,"parent",n),t.level=n?n.level+1:1,t.indent==null&&(t.indent=n?n.indent+" ":t.indent||""),t.path=n?n.path+"."+t.name:t.name,t.enabled=!!(this.multiple&&!this.isDisabled(t)&&(t.enabled||this.isSelected(t))),this.isDisabled(t)||(this.longest=Math.max(this.longest,RAl(t.message).length));let l={...t};return t.reset=(A=l.input,f=l.value)=>{for(let I of Object.keys(l))t[I]=l[I];t.input=A,t.value=f},a==null&&typeof t.initial=="function"&&(t.input=await t.initial.call(this,this.state,t,r)),t}async onChoice(t,r){this.emit("choice",t,r,this),typeof t.onChoice=="function"&&await t.onChoice.call(this,this.state,t,r)}async addChoice(t,r,n){let a=await this.toChoice(t,r,n);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(t,r,n){let a={name:"New choice name?",editable:!0,newChoice:!0,...t},o=await this.addChoice(a,r,n);return o.updateChoice=()=>{delete o.newChoice,o.name=o.message=o.input,o.input="",o.cursor=0},this.render()}indent(t){return t.indent==null?t.level>1?" ".repeat(t.level-1):"":t.indent}dispatch(t,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(t,r){return typeof r!="boolean"&&(r=t.enabled),r&&!t.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=t.index,t.enabled=r&&!this.isDisabled(t),t)}space(){if(!this.multiple)return this.alert();if(this.focused)return this.toggle(this.focused),this.render()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!t),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(t=>t.enabled=!t.enabled),this.render())}g(){if(!this.choices.some(r=>!!r.parent))return this.a();let t=this.focused;return this.toggle(t.parent&&!t.choices?t.parent:t),this.render()}toggle(t,r){if(!t.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!t.enabled),t.enabled=r,t.choices&&t.choices.forEach(a=>this.toggle(a,r));let n=t.parent;for(;n;){let a=n.choices.filter(o=>this.isDisabled(o));n.enabled=a.every(o=>o.enabled===!0),n=n.parent}return Rss(this,this.choices),this.emit("toggle",t,this),t}enable(t){return this.selected.length>=this.maxSelected?this.alert():(t.enabled=!this.isDisabled(t),t.choices&&t.choices.forEach(this.enable.bind(this)),t)}disable(t){return t.enabled=!1,t.choices&&t.choices.forEach(this.disable.bind(this)),t}number(t){this.num+=t;let r=n=>{let a=Number(n);if(a>this.choices.length-1)return this.alert();let o=this.focused,l=this.choices.find(A=>a===A.index);if(!l.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(l)===-1){let A=tQr(this.choices),f=A.indexOf(l);if(o.index>f){let I=A.slice(f,f+this.limit),C=A.filter(b=>!I.includes(b));this.choices=I.concat(C)}else{let I=f-this.limit+1;this.choices=A.slice(I).concat(A.slice(0,I))}}return this.index=this.choices.indexOf(l),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(n=>{let a=this.choices.length,o=this.num,l=(A=!1,f)=>{clearTimeout(this.numberTimeout),A&&(f=r(o)),this.num="",n(f)};if(o==="0"||o.length===1&&+(o+"0")>a)return l(!0);if(Number(o)>a)return l(!1,this.alert());this.numberTimeout=setTimeout(()=>l(!0),this.delay)})}home(){return this.choices=tQr(this.choices),this.index=0,this.render()}end(){let t=this.choices.length-this.limit,r=tQr(this.choices);return this.choices=r.slice(t).concat(r.slice(0,t)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===0?this.alert():t>r&&n===0?this.scrollUp():(this.index=(n-1%t+t)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.up():this.render())}down(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===r-1?this.alert():t>r&&n===r-1?this.scrollDown():(this.index=(n+1)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.down():this.render())}scrollUp(t=0){return this.choices=kAl(this.choices),this.index=t,this.isDisabled()?this.up():this.render()}scrollDown(t=this.visible.length-1){return this.choices=xAl(this.choices),this.index=t,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(t){GAl(this.choices,this.index,t)}allChoicesAreDisabled(t=this.choices){return t.every(r=>this.isDisabled(r))}isDisabled(t=this.focused){return t&&["disabled","collapsed","hidden","completing","readonly"].some(n=>t[n]===!0)?!0:t&&t.role==="heading"}isEnabled(t=this.focused){if(Array.isArray(t))return t.every(r=>this.isEnabled(r));if(t.choices){let r=t.choices.filter(n=>!this.isDisabled(n));return t.enabled&&r.every(n=>this.isEnabled(n))}return t.enabled&&!this.isDisabled(t)}isChoice(t,r){return t.name===r||t.index===Number(r)}isSelected(t){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(t,r)):this.isChoice(t,this.initial)}map(t=[],r="value"){return[].concat(t||[]).reduce((n,a)=>(n[a]=this.find(a,r),n),{})}filter(t,r){let a=typeof t=="function"?t:(A,f)=>[A.name,f].includes(t),l=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?l.map(A=>A[r]):l}find(t,r){if(Tss(t))return r?t[r]:t;let a=typeof t=="function"?t:(l,A)=>[l.name,A].includes(t),o=this.choices.find(a);if(o)return r?o[r]:o}findIndex(t){return this.choices.indexOf(this.find(t))}async submit(){let t=this.focused;if(!t)return this.alert();if(t.newChoice)return t.input?(t.updateChoice(),this.render()):this.alert();if(this.choices.some(l=>l.newChoice))return this.alert();let{reorder:r,sort:n}=this.options,a=this.multiple===!0,o=this.selected;return o===void 0?this.alert():(Array.isArray(o)&&r!==!1&&n!==!0&&(o=Axt.reorder(o)),this.value=a?o.map(l=>l.name):o.name,super.submit())}set choices(t=[]){this.state._choices=this.state._choices||[],this.state.choices=t;for(let r of t)this.state._choices.some(n=>n.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let n=this.find(r);n&&(this.initial=n.index,this.focus(n,!0))}}}get choices(){return Rss(this,this.state.choices||[])}set visible(t){this.state.visible=t}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(t){this.state.limit=t}get limit(){let{state:t,options:r,choices:n}=this,a=t.limit||this._limit||r.limit||n.length;return Math.min(a,this.height)}set value(t){super.value=t}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(t){this.state.index=t}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let t=this.choices[this.index];return t&&this.state.submitted&&this.multiple!==!0&&(t.enabled=!0),t}get selectable(){return this.choices.filter(t=>!this.isDisabled(t))}get selected(){return this.multiple?this.enabled:this.focused}};function Rss(e,t){if(t instanceof Promise)return t;if(typeof t=="function"){if(Axt.isAsyncFn(t))return t;t=t.call(e,e)}for(let r of t){if(Array.isArray(r.choices)){let n=r.choices.filter(a=>!e.isDisabled(a));r.enabled=n.every(a=>a.enabled===!0)}e.isDisabled(r)===!0&&delete r.enabled}return t}Nss.exports=rQr});var Cue=H((M7u,Dss)=>{"use strict";var FAl=K6e(),nQr=tF(),iQr=class extends FAl{constructor(t){super(t),this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(t,r){if(this.multiple)return this[r.name]?await this[r.name](t,r):await super.dispatch(t,r);this.alert()}separator(){if(this.options.separator)return super.separator();let t=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():t}pointer(t,r){return!this.multiple||this.options.pointer?super.pointer(t,r):""}indicator(t,r){return this.multiple?super.indicator(t,r):""}choiceMessage(t,r){let n=this.resolve(t.message,this.state,t,r);return t.role==="heading"&&!nQr.hasColor(n)&&(n=this.styles.strong(n)),this.resolve(n,this.state,t,r)}choiceSeparator(){return":"}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await this.indicator(t,r)+(t.pad||""),l=await this.resolve(t.hint,this.state,t,r);l&&!nQr.hasColor(l)&&(l=this.styles.muted(l));let A=this.indent(t),f=await this.choiceMessage(t,r),I=()=>[this.margin[3],A+a+o,f,this.margin[1],l].filter(Boolean).join(" ");return t.role==="heading"?I():t.disabled?(nQr.hasColor(f)||(f=this.styles.disabled(f)),I()):(n&&(f=this.styles.em(f)),I())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let t=this.visible.map(async(o,l)=>await this.renderChoice(o,l)),r=await Promise.all(t);r.length||r.push(this.styles.danger("No matching choices"));let n=this.margin[0]+r.join(` +`.repeat(r))}catch{}this.emit("close")}start(){!this.stop&&this.options.show!==!1&&(this.stop=sQr.listen(this,this.keypress.bind(this)),this.once("close",this.stop),this.emit("start",this))}async skip(){return this.skipped=this.options.skip===!0,typeof this.options.skip=="function"&&(this.skipped=await this.options.skip.call(this,this.name,this.value)),this.skipped}async initialize(){let{format:t,options:r,result:n}=this;if(this.format=()=>t.call(this,this.value),this.result=()=>n.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let a=r.onSubmit.bind(this),o=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),o())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(t,r)=>{if(this.once("submit",t),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(t,r,n){let{options:a,state:o,symbols:l,timers:A}=this,f=A&&A[t];o.timer=f;let I=a[t]||o[t]||l[t],C=r&&r[t]!=null?r[t]:await I;if(C==="")return C;let b=await this.resolve(C,o,r,n);return!b&&r&&r[t]?this.resolve(I,o,r,n):b}async prefix(){let t=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,n=this.state;return n.timer=r,jV.isObject(t)&&(t=t[n.status]||t.pending),jV.hasColor(t)?t:(this.styles[n.status]||this.styles.pending)(t)}async message(){let t=await this.element("message");return jV.hasColor(t)?t:this.styles.strong(t)}async separator(){let t=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,n=this.state;n.timer=r;let a=t[n.status]||t.pending||n.separator,o=await this.resolve(a,n);return jV.isObject(o)&&(o=o[n.status]||o.pending),jV.hasColor(o)?o:this.styles.muted(o)}async pointer(t,r){let n=await this.element("pointer",t,r);if(typeof n=="string"&&jV.hasColor(n))return n;if(n){let a=this.styles,o=this.index===r,l=o?a.primary:I=>I,A=await this.resolve(n[o?"on":"off"]||n,this.state),f=jV.hasColor(A)?A:l(A);return o?f:" ".repeat(A.length)}}async indicator(t,r){let n=await this.element("indicator",t,r);if(typeof n=="string"&&jV.hasColor(n))return n;if(n){let a=this.styles,o=t.enabled===!0,l=o?a.success:a.dark,A=n[o?"on":"off"]||n;return jV.hasColor(A)?A:l(A)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let t=await this.element("hint");return jV.hasColor(t)?t:this.styles.muted(t)}}error(t){return this.state.submitted?"":t||this.state.error}format(t){return t}result(t){return t}validate(t){return this.options.required===!0?this.isValue(t):!0}isValue(t){return t!=null&&t!==""}resolve(t,...r){return jV.resolve(this,t,...r)}get base(){return e.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||jV.height(this.stdout,25)}get width(){return this.options.columns||jV.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(t){this.state.cursor=t}get cursor(){return this.state.cursor}set input(t){this.state.input=t}get input(){return this.state.input}set value(t){this.state.value=t}get value(){let{input:t,value:r}=this.state,n=[r,t].find(this.isValue.bind(this));return this.isValue(n)?n:this.initial}static get prompt(){return t=>new this(t).run()}};function Edl(e){let t=a=>e[a]===void 0||typeof e[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],n=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(e.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let o=e.options[a];typeof o=="function"&&t(a)?n.includes(a)||(e[a]=o.bind(e)):typeof e[a]!="function"&&(e[a]=o)}}function Sdl(e){typeof e=="number"&&(e=[e,e,e,e]);let t=[].concat(e||[]),r=a=>a%2===0?` +`:" ",n=[];for(let a=0;a<4;a++){let o=r(a);t[a]?n.push(o.repeat(t[a])):n.push("")}return n}vss.exports=oQr});var Tss=H((tqu,wss)=>{"use strict";var vdl=rF(),Bss={default(e,t){return t},checkbox(e,t){throw new Error("checkbox role is not implemented yet")},editable(e,t){throw new Error("editable role is not implemented yet")},expandable(e,t){throw new Error("expandable role is not implemented yet")},heading(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||"",t},input(e,t){throw new Error("input role is not implemented yet")},option(e,t){return Bss.default(e,t)},radio(e,t){throw new Error("radio role is not implemented yet")},separator(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||e.symbols.line.repeat(5),t},spacer(e,t){return t}};wss.exports=(e,t={})=>{let r=vdl.merge({},Bss,t.roles);return r[e]||r.default}});var U6e=H((rqu,Dss)=>{"use strict";var Bdl=aM(),wdl=cGe(),Tdl=Tss(),Axt=rF(),{reorder:aQr,scrollUp:Rdl,scrollDown:Ndl,isObject:Rss,swap:Ddl}=Axt,cQr=class extends wdl{constructor(t){super(t),this.cursorHide(),this.maxSelected=t.maxSelected||1/0,this.multiple=t.multiple||!1,this.initial=t.initial||0,this.delay=t.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:t,initial:r,autofocus:n,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(t)),this.choices.forEach(o=>o.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");Rss(r)&&(r=Object.keys(r)),Array.isArray(r)?(n!=null&&(this.index=this.findIndex(n)),r.forEach(o=>this.enable(this.find(o))),await this.render()):(n!=null&&(r=n),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(t,r){this.state.loadingChoices=!0;let n=[],a=0,o=async(l,A)=>{typeof l=="function"&&(l=await l.call(this)),l instanceof Promise&&(l=await l);for(let f=0;f(this.state.loadingChoices=!1,l))}async toChoice(t,r,n){if(typeof t=="function"&&(t=await t.call(this,this)),t instanceof Promise&&(t=await t),typeof t=="string"&&(t={name:t}),t.normalized)return t;t.normalized=!0;let a=t.value;if(t=Tdl(t.role,this.options)(this,t),typeof t.disabled=="string"&&!t.hint&&(t.hint=t.disabled,t.disabled=!0),t.disabled===!0&&t.hint==null&&(t.hint="(disabled)"),t.index!=null)return t;t.name=t.name||t.key||t.title||t.value||t.message,t.message=t.message||t.name||"",t.value=[t.value,t.name].find(this.isValue.bind(this)),t.input="",t.index=r,t.cursor=0,Axt.define(t,"parent",n),t.level=n?n.level+1:1,t.indent==null&&(t.indent=n?n.indent+" ":t.indent||""),t.path=n?n.path+"."+t.name:t.name,t.enabled=!!(this.multiple&&!this.isDisabled(t)&&(t.enabled||this.isSelected(t))),this.isDisabled(t)||(this.longest=Math.max(this.longest,Bdl(t.message).length));let l={...t};return t.reset=(A=l.input,f=l.value)=>{for(let I of Object.keys(l))t[I]=l[I];t.input=A,t.value=f},a==null&&typeof t.initial=="function"&&(t.input=await t.initial.call(this,this.state,t,r)),t}async onChoice(t,r){this.emit("choice",t,r,this),typeof t.onChoice=="function"&&await t.onChoice.call(this,this.state,t,r)}async addChoice(t,r,n){let a=await this.toChoice(t,r,n);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(t,r,n){let a={name:"New choice name?",editable:!0,newChoice:!0,...t},o=await this.addChoice(a,r,n);return o.updateChoice=()=>{delete o.newChoice,o.name=o.message=o.input,o.input="",o.cursor=0},this.render()}indent(t){return t.indent==null?t.level>1?" ".repeat(t.level-1):"":t.indent}dispatch(t,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(t,r){return typeof r!="boolean"&&(r=t.enabled),r&&!t.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=t.index,t.enabled=r&&!this.isDisabled(t),t)}space(){if(!this.multiple)return this.alert();if(this.focused)return this.toggle(this.focused),this.render()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!t),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(t=>t.enabled=!t.enabled),this.render())}g(){if(!this.choices.some(r=>!!r.parent))return this.a();let t=this.focused;return this.toggle(t.parent&&!t.choices?t.parent:t),this.render()}toggle(t,r){if(!t.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!t.enabled),t.enabled=r,t.choices&&t.choices.forEach(a=>this.toggle(a,r));let n=t.parent;for(;n;){let a=n.choices.filter(o=>this.isDisabled(o));n.enabled=a.every(o=>o.enabled===!0),n=n.parent}return Nss(this,this.choices),this.emit("toggle",t,this),t}enable(t){return this.selected.length>=this.maxSelected?this.alert():(t.enabled=!this.isDisabled(t),t.choices&&t.choices.forEach(this.enable.bind(this)),t)}disable(t){return t.enabled=!1,t.choices&&t.choices.forEach(this.disable.bind(this)),t}number(t){this.num+=t;let r=n=>{let a=Number(n);if(a>this.choices.length-1)return this.alert();let o=this.focused,l=this.choices.find(A=>a===A.index);if(!l.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(l)===-1){let A=aQr(this.choices),f=A.indexOf(l);if(o.index>f){let I=A.slice(f,f+this.limit),C=A.filter(b=>!I.includes(b));this.choices=I.concat(C)}else{let I=f-this.limit+1;this.choices=A.slice(I).concat(A.slice(0,I))}}return this.index=this.choices.indexOf(l),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(n=>{let a=this.choices.length,o=this.num,l=(A=!1,f)=>{clearTimeout(this.numberTimeout),A&&(f=r(o)),this.num="",n(f)};if(o==="0"||o.length===1&&+(o+"0")>a)return l(!0);if(Number(o)>a)return l(!1,this.alert());this.numberTimeout=setTimeout(()=>l(!0),this.delay)})}home(){return this.choices=aQr(this.choices),this.index=0,this.render()}end(){let t=this.choices.length-this.limit,r=aQr(this.choices);return this.choices=r.slice(t).concat(r.slice(0,t)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===0?this.alert():t>r&&n===0?this.scrollUp():(this.index=(n-1%t+t)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.up():this.render())}down(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===r-1?this.alert():t>r&&n===r-1?this.scrollDown():(this.index=(n+1)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.down():this.render())}scrollUp(t=0){return this.choices=Rdl(this.choices),this.index=t,this.isDisabled()?this.up():this.render()}scrollDown(t=this.visible.length-1){return this.choices=Ndl(this.choices),this.index=t,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(t){Ddl(this.choices,this.index,t)}allChoicesAreDisabled(t=this.choices){return t.every(r=>this.isDisabled(r))}isDisabled(t=this.focused){return t&&["disabled","collapsed","hidden","completing","readonly"].some(n=>t[n]===!0)?!0:t&&t.role==="heading"}isEnabled(t=this.focused){if(Array.isArray(t))return t.every(r=>this.isEnabled(r));if(t.choices){let r=t.choices.filter(n=>!this.isDisabled(n));return t.enabled&&r.every(n=>this.isEnabled(n))}return t.enabled&&!this.isDisabled(t)}isChoice(t,r){return t.name===r||t.index===Number(r)}isSelected(t){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(t,r)):this.isChoice(t,this.initial)}map(t=[],r="value"){return[].concat(t||[]).reduce((n,a)=>(n[a]=this.find(a,r),n),{})}filter(t,r){let a=typeof t=="function"?t:(A,f)=>[A.name,f].includes(t),l=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?l.map(A=>A[r]):l}find(t,r){if(Rss(t))return r?t[r]:t;let a=typeof t=="function"?t:(l,A)=>[l.name,A].includes(t),o=this.choices.find(a);if(o)return r?o[r]:o}findIndex(t){return this.choices.indexOf(this.find(t))}async submit(){let t=this.focused;if(!t)return this.alert();if(t.newChoice)return t.input?(t.updateChoice(),this.render()):this.alert();if(this.choices.some(l=>l.newChoice))return this.alert();let{reorder:r,sort:n}=this.options,a=this.multiple===!0,o=this.selected;return o===void 0?this.alert():(Array.isArray(o)&&r!==!1&&n!==!0&&(o=Axt.reorder(o)),this.value=a?o.map(l=>l.name):o.name,super.submit())}set choices(t=[]){this.state._choices=this.state._choices||[],this.state.choices=t;for(let r of t)this.state._choices.some(n=>n.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let n=this.find(r);n&&(this.initial=n.index,this.focus(n,!0))}}}get choices(){return Nss(this,this.state.choices||[])}set visible(t){this.state.visible=t}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(t){this.state.limit=t}get limit(){let{state:t,options:r,choices:n}=this,a=t.limit||this._limit||r.limit||n.length;return Math.min(a,this.height)}set value(t){super.value=t}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(t){this.state.index=t}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let t=this.choices[this.index];return t&&this.state.submitted&&this.multiple!==!0&&(t.enabled=!0),t}get selectable(){return this.choices.filter(t=>!this.isDisabled(t))}get selected(){return this.multiple?this.enabled:this.focused}};function Nss(e,t){if(t instanceof Promise)return t;if(typeof t=="function"){if(Axt.isAsyncFn(t))return t;t=t.call(e,e)}for(let r of t){if(Array.isArray(r.choices)){let n=r.choices.filter(a=>!e.isDisabled(a));r.enabled=n.every(a=>a.enabled===!0)}e.isDisabled(r)===!0&&delete r.enabled}return t}Dss.exports=cQr});var _ue=H((nqu,kss)=>{"use strict";var kdl=U6e(),lQr=rF(),uQr=class extends kdl{constructor(t){super(t),this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(t,r){if(this.multiple)return this[r.name]?await this[r.name](t,r):await super.dispatch(t,r);this.alert()}separator(){if(this.options.separator)return super.separator();let t=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():t}pointer(t,r){return!this.multiple||this.options.pointer?super.pointer(t,r):""}indicator(t,r){return this.multiple?super.indicator(t,r):""}choiceMessage(t,r){let n=this.resolve(t.message,this.state,t,r);return t.role==="heading"&&!lQr.hasColor(n)&&(n=this.styles.strong(n)),this.resolve(n,this.state,t,r)}choiceSeparator(){return":"}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await this.indicator(t,r)+(t.pad||""),l=await this.resolve(t.hint,this.state,t,r);l&&!lQr.hasColor(l)&&(l=this.styles.muted(l));let A=this.indent(t),f=await this.choiceMessage(t,r),I=()=>[this.margin[3],A+a+o,f,this.margin[1],l].filter(Boolean).join(" ");return t.role==="heading"?I():t.disabled?(lQr.hasColor(f)||(f=this.styles.disabled(f)),I()):(n&&(f=this.styles.em(f)),I())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let t=this.visible.map(async(o,l)=>await this.renderChoice(o,l)),r=await Promise.all(t);r.length||r.push(this.styles.danger("No matching choices"));let n=this.margin[0]+r.join(` `),a;return this.options.choicesHeader&&(a=await this.resolve(this.options.choicesHeader,this.state)),[a,n].filter(Boolean).join(` `)}format(){return!this.state.submitted||this.state.cancelled?"":Array.isArray(this.selected)?this.selected.map(t=>this.styles.primary(t.name)).join(", "):this.styles.primary(this.selected.name)}async render(){let{submitted:t,size:r}=this.state,n="",a=await this.header(),o=await this.prefix(),l=await this.separator(),A=await this.message();this.options.promptLine!==!1&&(n=[o,A,l,""].join(" "),this.state.prompt=n);let f=await this.format(),I=await this.error()||await this.hint(),C=await this.renderChoices(),b=await this.footer();f&&(n+=f),I&&!n.includes(I)&&(n+=" "+I),t&&!f&&!C.trim()&&this.multiple&&this.emptyError!=null&&(n+=this.styles.danger(this.emptyError)),this.clear(r),this.write([a,n,C,b].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Dss.exports=iQr});var xss=H((H7u,kss)=>{"use strict";var ZAl=Cue(),LAl=(e,t)=>{let r=e?new RegExp(e,"ig"):/$^/;return n=>e?n.replace(r,a=>t(a)):n},sQr=class extends ZAl{constructor(t){super(t),this.cursorShow()}moveCursor(t){this.state.cursor+=t}dispatch(t){return this.append(t)}space(t){return this.options.multiple?super.space(t):this.append(t)}append(t){let{cursor:r,input:n}=this.state;return this.input=n.slice(0,r)+t+n.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:t,input:r}=this.state;return r?(this.input=r.slice(0,t-1)+r.slice(t),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:t,input:r}=this.state;return r[t]===void 0?this.alert():(this.input=`${r}`.slice(0,t)+`${r}`.slice(t+1),this.complete())}number(t){return this.append(t)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(t=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,t,r);let n=t.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(n))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(t=>this.styles.primary(t.message)).join(", ");if(this.state.submitted){let t=this.value=this.input=this.focused.value;return this.styles.primary(t)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let t=this.options.highlight||this.styles.complement,r=(o,l)=>o&&(t.stack?t(o):t.call(this,o)),n=LAl(this.input,r),a=this.choices;this.choices=a.map(o=>({...o,message:n(o.message)})),await super.render(),this.choices=a}submit(){return this.options.multiple&&(this.value=this.selected.map(t=>t.name)),super.submit()}};kss.exports=sQr});var aQr=H((Y7u,Gss)=>{"use strict";var oQr=tF();Gss.exports=(e,t={})=>{e.cursorHide();let{input:r="",initial:n="",pos:a,showCursor:o=!0,color:l}=t,A=l||e.styles.placeholder,f=oQr.inverse(e.styles.primary),I=F=>f(e.styles.black(F)),C=r,b=" ",E=I(b);if(e.blink&&e.blink.off===!0&&(I=F=>F,E=""),o&&a===0&&n===""&&r==="")return I(b);if(o&&a===0&&(r===n||r===""))return I(n[0])+A(n.slice(1));n=oQr.isPrimitive(n)?`${n}`:"",r=oQr.isPrimitive(r)?`${r}`:"";let N=n&&n.startsWith(r)&&n!==r,B=N?I(n[r.length]):E;if(a!==r.length&&o===!0&&(C=r.slice(0,a)+I(r[a])+r.slice(a+1),B=""),o===!1&&(B=""),N){let F=e.styles.unstyle(C+B);return C+B+A(n.slice(F.length))}return C+B}});var dxt=H((Q7u,Fss)=>{"use strict";var VAl=oM(),WAl=Cue(),OAl=aQr(),cQr=class extends WAl{constructor(t){super({...t,multiple:!0}),this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(t){return await super.reset(),t===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(t){return!!t&&this.append(t)}append(t){let r=this.focused;if(!r)return this.alert();let{cursor:n,input:a}=r;return r.value=r.input=a.slice(0,n)+t+a.slice(n),r.cursor++,this.render()}delete(){let t=this.focused;if(!t||t.cursor<=0)return this.alert();let{cursor:r,input:n}=t;return t.value=t.input=n.slice(0,r-1)+n.slice(r),t.cursor--,this.render()}deleteForward(){let t=this.focused;if(!t)return this.alert();let{cursor:r,input:n}=t;if(n[r]===void 0)return this.alert();let a=`${n}`.slice(0,r)+`${n}`.slice(r+1);return t.value=t.input=a,this.render()}right(){let t=this.focused;return t?t.cursor>=t.input.length?this.alert():(t.cursor++,this.render()):this.alert()}left(){let t=this.focused;return t?t.cursor<=0?this.alert():(t.cursor--,this.render()):this.alert()}space(t,r){return this.dispatch(t,r)}number(t,r){return this.dispatch(t,r)}next(){let t=this.focused;if(!t)return this.alert();let{initial:r,input:n}=t;return r&&r.startsWith(n)&&n!==r?(t.value=t.input=r,t.cursor=t.value.length,this.render()):super.next()}prev(){let t=this.focused;return t?t.cursor===0?super.prev():(t.value=t.input="",t.cursor=0,this.render()):this.alert()}separator(){return""}format(t){return this.state.submitted?"":super.format(t)}pointer(){return""}indicator(t){return t.input?"\u29BF":"\u2299"}async choiceSeparator(t,r){let n=await this.resolve(t.separator,this.state,t,r)||":";return n?" "+this.styles.disabled(n):""}async renderChoice(t,r){await this.onChoice(t,r);let{state:n,styles:a}=this,{cursor:o,initial:l="",name:A,input:f=""}=t,{muted:I,submitted:C,primary:b,danger:E}=a,N=this.index===r,B=t.validate||(()=>!0),F=await this.choiceSeparator(t,r),Q=t.message;this.align==="right"&&(Q=Q.padStart(this.longest+1," ")),this.align==="left"&&(Q=Q.padEnd(this.longest+1," "));let J=this.values[A]=f||l,ae=f?"success":"dark";await B.call(t,J,this.state)!==!0&&(ae="danger");let ne=a[ae],ce=ne(await this.indicator(t,r))+(t.pad||""),fe=this.indent(t),ue=()=>[fe,ce,Q+F,f].filter(Boolean).join(" ");if(n.submitted)return Q=VAl(Q),f=C(f),ue();if(t.format)f=await t.format.call(this,f,t,r);else{let de=this.styles.muted;f=OAl(this,{input:f,initial:l,pos:o,showCursor:N,color:de})}return this.isValue(f)||(f=this.styles.muted(this.symbols.ellipsis)),t.result&&(this.values[A]=await t.result.call(this,J,t,r)),N&&(Q=b(Q)),t.error?f+=(f?" ":"")+E(t.error.trim()):t.hint&&(f+=(f?" ":"")+I(t.hint.trim())),ue()}async submit(){return this.value=this.values,super.base.submit.call(this)}};Fss.exports=cQr});var lQr=H((X7u,Lss)=>{"use strict";var PAl=dxt(),MAl=()=>{throw new Error("expected prompt to have a custom authenticate method")},Zss=(e=MAl)=>{class t extends PAl{constructor(n){super(n)}async submit(){this.value=await e.call(this,this.values,this.state),super.base.submit.call(this)}static create(n){return Zss(n)}}return t};Lss.exports=Zss()});var Oss=H((J7u,Wss)=>{"use strict";var HAl=lQr();function YAl(e,t){return e.username===this.options.username&&e.password===this.options.password}var Vss=(e=YAl)=>{let t=[{name:"username",message:"username"},{name:"password",message:"password",format(n){return this.options.showPassword?n:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(n.length))}}];class r extends HAl.create(e){constructor(a){super({...a,choices:t})}static create(a){return Vss(a)}}return r};Wss.exports=Vss()});var pxt=H((U7u,Pss)=>{"use strict";var QAl=cGe(),{isPrimitive:XAl,hasColor:JAl}=tF(),uQr=class extends QAl{constructor(t){super(t),this.cursorHide()}async initialize(){let t=await this.resolve(this.initial,this.state);this.input=await this.cast(t),await super.initialize()}dispatch(t){return this.isValue(t)?(this.input=t,this.submit()):this.alert()}format(t){let{styles:r,state:n}=this;return n.submitted?r.success(t):r.primary(t)}cast(t){return this.isTrue(t)}isTrue(t){return/^[ty1]/i.test(t)}isFalse(t){return/^[fn0]/i.test(t)}isValue(t){return XAl(t)&&(this.isTrue(t)||this.isFalse(t))}async hint(){if(this.state.status==="pending"){let t=await this.element("hint");return JAl(t)?t:this.styles.muted(t)}}async render(){let{input:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=this.styles.muted(this.default),A=[n,o,l,a].filter(Boolean).join(" ");this.state.prompt=A;let f=await this.header(),I=this.value=this.cast(t),C=await this.format(I),b=await this.error()||await this.hint(),E=await this.footer();b&&!A.includes(b)&&(C+=" "+b),A+=" "+C,this.clear(r),this.write([f,A,E].filter(Boolean).join(` -`)),this.restore()}set value(t){super.value=t}get value(){return this.cast(super.value)}};Pss.exports=uQr});var Hss=H((K7u,Mss)=>{"use strict";var UAl=pxt(),gQr=class extends UAl{constructor(t){super(t),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};Mss.exports=gQr});var Qss=H((j7u,Yss)=>{"use strict";var KAl=Cue(),jAl=dxt(),lGe=jAl.prototype,AQr=class extends KAl{constructor(t){super({...t,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(t,r){let n=this.focused,a=n.parent||{};return!n.editable&&!a.editable&&(t==="a"||t==="i")?super[t]():lGe.dispatch.call(this,t,r)}append(t,r){return lGe.append.call(this,t,r)}delete(t,r){return lGe.delete.call(this,t,r)}space(t){return this.focused.editable?this.append(t):super.space()}number(t){return this.focused.editable?this.append(t):super.number(t)}next(){return this.focused.editable?lGe.next.call(this):super.next()}prev(){return this.focused.editable?lGe.prev.call(this):super.prev()}async indicator(t,r){let n=t.indicator||"",a=t.editable?n:super.indicator(t,r);return await this.resolve(a,this.state,t,r)||""}indent(t){return t.role==="heading"?"":t.editable?" ":" "}async renderChoice(t,r){return t.indent="",t.editable?lGe.renderChoice.call(this,t,r):super.renderChoice(t,r)}error(){return""}footer(){return this.state.error}async validate(){let t=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let n=r.parent?this.value[r.parent.name]:this.value;if(r.editable?n=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(n=r.enabled===!0),t=await r.validate(n,this.state),t!==!0)break}return t!==!0&&(this.state.error=typeof t=="string"?t:"Invalid Input"),t}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(t=>t.newChoice))return this.alert();this.value={};for(let t of this.choices){let r=t.parent?this.value[t.parent.name]:this.value;if(t.role==="heading"){this.value[t.name]={};continue}t.editable?r[t.name]=t.value===t.name?t.initial||"":t.value:this.isDisabled(t)||(r[t.name]=t.enabled===!0)}return this.base.submit.call(this)}};Yss.exports=AQr});var j_e=H((z7u,Xss)=>{"use strict";var zAl=cGe(),qAl=YYr(),$Al=aQr(),{isPrimitive:edl}=tF(),dQr=class extends zAl{constructor(t){super(t),this.initial=edl(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[],this.keypressTimeout=this.options.keypressTimeout!==void 0?this.options.keypressTimeout:null}async keypress(t,r=t?qAl(t,{}):{}){let n=Date.now(),a=n-this.lastKeypress;this.lastKeypress=n;let o=r.name==="return"||r.name==="enter",l=this.state.prevKeypress,A;if(this.state.prevKeypress=r,this.keypressTimeout!=null&&o){if(a=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(t){return!!t}async format(t=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(t||r):$Al(this,{input:t,initial:r,pos:this.cursor})}async render(){let t=this.state.size,r=await this.prefix(),n=await this.separator(),a=await this.message(),o=[r,a,n].filter(Boolean).join(" ");this.state.prompt=o;let l=await this.header(),A=await this.format(),f=await this.error()||await this.hint(),I=await this.footer();f&&!A.includes(f)&&(A+=" "+f),o+=" "+A,this.clear(t),this.write([l,o,I].filter(Boolean).join(` -`)),this.restore()}};Xss.exports=dQr});var Uss=H((q7u,Jss)=>{"use strict";var tdl=e=>e.filter((t,r)=>e.lastIndexOf(t)===r),fxt=e=>tdl(e).filter(Boolean);Jss.exports=(e,t={},r="")=>{let{past:n=[],present:a=""}=t,o,l;switch(e){case"prev":case"undo":return o=n.slice(0,n.length-1),l=n[n.length-1]||"",{past:fxt([r,...o]),present:l};case"next":case"redo":return o=n.slice(1),l=n[0]||"",{past:fxt([...o,r]),present:l};case"save":return{past:fxt([...n,r]),present:""};case"remove":return l=fxt(n.filter(A=>A!==r)),a="",l.length&&(a=l.pop()),{past:l,present:a};default:throw new Error(`Invalid action: "${e}"`)}}});var fQr=H(($7u,jss)=>{"use strict";var rdl=j_e(),Kss=Uss(),pQr=class extends rdl{constructor(t){super(t);let r=this.options.history;if(r&&r.store){let n=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:n},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(t){return this.store?(this.data=Kss(t,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){this.store&&(this.data=Kss("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};jss.exports=pQr});var qss=H((ezu,zss)=>{"use strict";var ndl=j_e(),IQr=class extends ndl{format(){return""}};zss.exports=IQr});var eos=H((tzu,$ss)=>{"use strict";var idl=j_e(),hQr=class extends idl{constructor(t={}){super(t),this.sep=this.options.separator||/, */,this.initial=t.initial||""}split(t=this.value){return t?String(t).split(this.sep):[]}format(){let t=this.state.submitted?this.styles.primary:r=>r;return this.list.map(t).join(", ")}async submit(t){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};$ss.exports=hQr});var ros=H((rzu,tos)=>{"use strict";var sdl=Cue(),mQr=class extends sdl{constructor(t){super({...t,multiple:!0})}};tos.exports=mQr});var _Qr=H((nzu,nos)=>{"use strict";var odl=j_e(),CQr=class extends odl{constructor(t={}){super({style:"number",...t}),this.min=this.isValue(t.min)?this.toNumber(t.min):-1/0,this.max=this.isValue(t.max)?this.toNumber(t.max):1/0,this.delay=t.delay!=null?t.delay:1e3,this.float=t.float!==!1,this.round=t.round===!0||t.float===!1,this.major=t.major||10,this.minor=t.minor||1,this.initial=t.initial!=null?t.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(t){return!/[-+.]/.test(t)||t==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(t)}number(t){return super.append(t)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(t){let r=t||this.minor,n=this.toNumber(this.input);return n>this.max+r?this.alert():(this.input=`${n+r}`,this.render())}down(t){let r=t||this.minor,n=this.toNumber(this.input);return nthis.isValue(r));return this.value=this.toNumber(t||0),super.submit()}};nos.exports=CQr});var sos=H((izu,ios)=>{ios.exports=_Qr()});var aos=H((szu,oos)=>{"use strict";var adl=j_e(),yQr=class extends adl{constructor(t){super(t),this.cursorShow()}format(t=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(t.length)):""}};oos.exports=yQr});var uos=H((ozu,los)=>{"use strict";var cdl=oM(),ldl=K6e(),cos=tF(),bQr=class extends ldl{constructor(t={}){super(t),this.widths=[].concat(t.messageWidth||50),this.align=[].concat(t.align||"left"),this.linebreak=t.linebreak||!1,this.edgeLength=t.edgeLength||3,this.newline=t.newline||` +`)),this.write(this.margin[2]),this.restore()}};kss.exports=uQr});var Gss=H((iqu,xss)=>{"use strict";var xdl=_ue(),Gdl=(e,t)=>{let r=e?new RegExp(e,"ig"):/$^/;return n=>e?n.replace(r,a=>t(a)):n},gQr=class extends xdl{constructor(t){super(t),this.cursorShow()}moveCursor(t){this.state.cursor+=t}dispatch(t){return this.append(t)}space(t){return this.options.multiple?super.space(t):this.append(t)}append(t){let{cursor:r,input:n}=this.state;return this.input=n.slice(0,r)+t+n.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:t,input:r}=this.state;return r?(this.input=r.slice(0,t-1)+r.slice(t),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:t,input:r}=this.state;return r[t]===void 0?this.alert():(this.input=`${r}`.slice(0,t)+`${r}`.slice(t+1),this.complete())}number(t){return this.append(t)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(t=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,t,r);let n=t.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(n))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(t=>this.styles.primary(t.message)).join(", ");if(this.state.submitted){let t=this.value=this.input=this.focused.value;return this.styles.primary(t)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let t=this.options.highlight||this.styles.complement,r=(o,l)=>o&&(t.stack?t(o):t.call(this,o)),n=Gdl(this.input,r),a=this.choices;this.choices=a.map(o=>({...o,message:n(o.message)})),await super.render(),this.choices=a}submit(){return this.options.multiple&&(this.value=this.selected.map(t=>t.name)),super.submit()}};xss.exports=gQr});var dQr=H((squ,Fss)=>{"use strict";var AQr=rF();Fss.exports=(e,t={})=>{e.cursorHide();let{input:r="",initial:n="",pos:a,showCursor:o=!0,color:l}=t,A=l||e.styles.placeholder,f=AQr.inverse(e.styles.primary),I=F=>f(e.styles.black(F)),C=r,b=" ",E=I(b);if(e.blink&&e.blink.off===!0&&(I=F=>F,E=""),o&&a===0&&n===""&&r==="")return I(b);if(o&&a===0&&(r===n||r===""))return I(n[0])+A(n.slice(1));n=AQr.isPrimitive(n)?`${n}`:"",r=AQr.isPrimitive(r)?`${r}`:"";let N=n&&n.startsWith(r)&&n!==r,B=N?I(n[r.length]):E;if(a!==r.length&&o===!0&&(C=r.slice(0,a)+I(r[a])+r.slice(a+1),B=""),o===!1&&(B=""),N){let F=e.styles.unstyle(C+B);return C+B+A(n.slice(F.length))}return C+B}});var dxt=H((oqu,Zss)=>{"use strict";var Fdl=aM(),Zdl=_ue(),Ldl=dQr(),pQr=class extends Zdl{constructor(t){super({...t,multiple:!0}),this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(t){return await super.reset(),t===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(t){return!!t&&this.append(t)}append(t){let r=this.focused;if(!r)return this.alert();let{cursor:n,input:a}=r;return r.value=r.input=a.slice(0,n)+t+a.slice(n),r.cursor++,this.render()}delete(){let t=this.focused;if(!t||t.cursor<=0)return this.alert();let{cursor:r,input:n}=t;return t.value=t.input=n.slice(0,r-1)+n.slice(r),t.cursor--,this.render()}deleteForward(){let t=this.focused;if(!t)return this.alert();let{cursor:r,input:n}=t;if(n[r]===void 0)return this.alert();let a=`${n}`.slice(0,r)+`${n}`.slice(r+1);return t.value=t.input=a,this.render()}right(){let t=this.focused;return t?t.cursor>=t.input.length?this.alert():(t.cursor++,this.render()):this.alert()}left(){let t=this.focused;return t?t.cursor<=0?this.alert():(t.cursor--,this.render()):this.alert()}space(t,r){return this.dispatch(t,r)}number(t,r){return this.dispatch(t,r)}next(){let t=this.focused;if(!t)return this.alert();let{initial:r,input:n}=t;return r&&r.startsWith(n)&&n!==r?(t.value=t.input=r,t.cursor=t.value.length,this.render()):super.next()}prev(){let t=this.focused;return t?t.cursor===0?super.prev():(t.value=t.input="",t.cursor=0,this.render()):this.alert()}separator(){return""}format(t){return this.state.submitted?"":super.format(t)}pointer(){return""}indicator(t){return t.input?"\u29BF":"\u2299"}async choiceSeparator(t,r){let n=await this.resolve(t.separator,this.state,t,r)||":";return n?" "+this.styles.disabled(n):""}async renderChoice(t,r){await this.onChoice(t,r);let{state:n,styles:a}=this,{cursor:o,initial:l="",name:A,input:f=""}=t,{muted:I,submitted:C,primary:b,danger:E}=a,N=this.index===r,B=t.validate||(()=>!0),F=await this.choiceSeparator(t,r),Q=t.message;this.align==="right"&&(Q=Q.padStart(this.longest+1," ")),this.align==="left"&&(Q=Q.padEnd(this.longest+1," "));let J=this.values[A]=f||l,ae=f?"success":"dark";await B.call(t,J,this.state)!==!0&&(ae="danger");let ne=a[ae],ce=ne(await this.indicator(t,r))+(t.pad||""),fe=this.indent(t),ue=()=>[fe,ce,Q+F,f].filter(Boolean).join(" ");if(n.submitted)return Q=Fdl(Q),f=C(f),ue();if(t.format)f=await t.format.call(this,f,t,r);else{let de=this.styles.muted;f=Ldl(this,{input:f,initial:l,pos:o,showCursor:N,color:de})}return this.isValue(f)||(f=this.styles.muted(this.symbols.ellipsis)),t.result&&(this.values[A]=await t.result.call(this,J,t,r)),N&&(Q=b(Q)),t.error?f+=(f?" ":"")+E(t.error.trim()):t.hint&&(f+=(f?" ":"")+I(t.hint.trim())),ue()}async submit(){return this.value=this.values,super.base.submit.call(this)}};Zss.exports=pQr});var fQr=H((aqu,Vss)=>{"use strict";var Vdl=dxt(),Wdl=()=>{throw new Error("expected prompt to have a custom authenticate method")},Lss=(e=Wdl)=>{class t extends Vdl{constructor(n){super(n)}async submit(){this.value=await e.call(this,this.values,this.state),super.base.submit.call(this)}static create(n){return Lss(n)}}return t};Vss.exports=Lss()});var Pss=H((cqu,Oss)=>{"use strict";var Odl=fQr();function Pdl(e,t){return e.username===this.options.username&&e.password===this.options.password}var Wss=(e=Pdl)=>{let t=[{name:"username",message:"username"},{name:"password",message:"password",format(n){return this.options.showPassword?n:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(n.length))}}];class r extends Odl.create(e){constructor(a){super({...a,choices:t})}static create(a){return Wss(a)}}return r};Oss.exports=Wss()});var pxt=H((lqu,Mss)=>{"use strict";var Mdl=cGe(),{isPrimitive:Hdl,hasColor:Ydl}=rF(),IQr=class extends Mdl{constructor(t){super(t),this.cursorHide()}async initialize(){let t=await this.resolve(this.initial,this.state);this.input=await this.cast(t),await super.initialize()}dispatch(t){return this.isValue(t)?(this.input=t,this.submit()):this.alert()}format(t){let{styles:r,state:n}=this;return n.submitted?r.success(t):r.primary(t)}cast(t){return this.isTrue(t)}isTrue(t){return/^[ty1]/i.test(t)}isFalse(t){return/^[fn0]/i.test(t)}isValue(t){return Hdl(t)&&(this.isTrue(t)||this.isFalse(t))}async hint(){if(this.state.status==="pending"){let t=await this.element("hint");return Ydl(t)?t:this.styles.muted(t)}}async render(){let{input:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=this.styles.muted(this.default),A=[n,o,l,a].filter(Boolean).join(" ");this.state.prompt=A;let f=await this.header(),I=this.value=this.cast(t),C=await this.format(I),b=await this.error()||await this.hint(),E=await this.footer();b&&!A.includes(b)&&(C+=" "+b),A+=" "+C,this.clear(r),this.write([f,A,E].filter(Boolean).join(` +`)),this.restore()}set value(t){super.value=t}get value(){return this.cast(super.value)}};Mss.exports=IQr});var Yss=H((uqu,Hss)=>{"use strict";var Qdl=pxt(),hQr=class extends Qdl{constructor(t){super(t),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};Hss.exports=hQr});var Xss=H((gqu,Qss)=>{"use strict";var Xdl=_ue(),Jdl=dxt(),lGe=Jdl.prototype,mQr=class extends Xdl{constructor(t){super({...t,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(t,r){let n=this.focused,a=n.parent||{};return!n.editable&&!a.editable&&(t==="a"||t==="i")?super[t]():lGe.dispatch.call(this,t,r)}append(t,r){return lGe.append.call(this,t,r)}delete(t,r){return lGe.delete.call(this,t,r)}space(t){return this.focused.editable?this.append(t):super.space()}number(t){return this.focused.editable?this.append(t):super.number(t)}next(){return this.focused.editable?lGe.next.call(this):super.next()}prev(){return this.focused.editable?lGe.prev.call(this):super.prev()}async indicator(t,r){let n=t.indicator||"",a=t.editable?n:super.indicator(t,r);return await this.resolve(a,this.state,t,r)||""}indent(t){return t.role==="heading"?"":t.editable?" ":" "}async renderChoice(t,r){return t.indent="",t.editable?lGe.renderChoice.call(this,t,r):super.renderChoice(t,r)}error(){return""}footer(){return this.state.error}async validate(){let t=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let n=r.parent?this.value[r.parent.name]:this.value;if(r.editable?n=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(n=r.enabled===!0),t=await r.validate(n,this.state),t!==!0)break}return t!==!0&&(this.state.error=typeof t=="string"?t:"Invalid Input"),t}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(t=>t.newChoice))return this.alert();this.value={};for(let t of this.choices){let r=t.parent?this.value[t.parent.name]:this.value;if(t.role==="heading"){this.value[t.name]={};continue}t.editable?r[t.name]=t.value===t.name?t.initial||"":t.value:this.isDisabled(t)||(r[t.name]=t.enabled===!0)}return this.base.submit.call(this)}};Qss.exports=mQr});var j_e=H((Aqu,Jss)=>{"use strict";var Udl=cGe(),Kdl=jYr(),jdl=dQr(),{isPrimitive:zdl}=rF(),CQr=class extends Udl{constructor(t){super(t),this.initial=zdl(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[],this.keypressTimeout=this.options.keypressTimeout!==void 0?this.options.keypressTimeout:null}async keypress(t,r=t?Kdl(t,{}):{}){let n=Date.now(),a=n-this.lastKeypress;this.lastKeypress=n;let o=r.name==="return"||r.name==="enter",l=this.state.prevKeypress,A;if(this.state.prevKeypress=r,this.keypressTimeout!=null&&o){if(a=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(t){return!!t}async format(t=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(t||r):jdl(this,{input:t,initial:r,pos:this.cursor})}async render(){let t=this.state.size,r=await this.prefix(),n=await this.separator(),a=await this.message(),o=[r,a,n].filter(Boolean).join(" ");this.state.prompt=o;let l=await this.header(),A=await this.format(),f=await this.error()||await this.hint(),I=await this.footer();f&&!A.includes(f)&&(A+=" "+f),o+=" "+A,this.clear(t),this.write([l,o,I].filter(Boolean).join(` +`)),this.restore()}};Jss.exports=CQr});var Kss=H((dqu,Uss)=>{"use strict";var qdl=e=>e.filter((t,r)=>e.lastIndexOf(t)===r),fxt=e=>qdl(e).filter(Boolean);Uss.exports=(e,t={},r="")=>{let{past:n=[],present:a=""}=t,o,l;switch(e){case"prev":case"undo":return o=n.slice(0,n.length-1),l=n[n.length-1]||"",{past:fxt([r,...o]),present:l};case"next":case"redo":return o=n.slice(1),l=n[0]||"",{past:fxt([...o,r]),present:l};case"save":return{past:fxt([...n,r]),present:""};case"remove":return l=fxt(n.filter(A=>A!==r)),a="",l.length&&(a=l.pop()),{past:l,present:a};default:throw new Error(`Invalid action: "${e}"`)}}});var yQr=H((pqu,zss)=>{"use strict";var $dl=j_e(),jss=Kss(),_Qr=class extends $dl{constructor(t){super(t);let r=this.options.history;if(r&&r.store){let n=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:n},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(t){return this.store?(this.data=jss(t,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){this.store&&(this.data=jss("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};zss.exports=_Qr});var $ss=H((fqu,qss)=>{"use strict";var epl=j_e(),bQr=class extends epl{format(){return""}};qss.exports=bQr});var tos=H((Iqu,eos)=>{"use strict";var tpl=j_e(),EQr=class extends tpl{constructor(t={}){super(t),this.sep=this.options.separator||/, */,this.initial=t.initial||""}split(t=this.value){return t?String(t).split(this.sep):[]}format(){let t=this.state.submitted?this.styles.primary:r=>r;return this.list.map(t).join(", ")}async submit(t){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};eos.exports=EQr});var nos=H((hqu,ros)=>{"use strict";var rpl=_ue(),SQr=class extends rpl{constructor(t){super({...t,multiple:!0})}};ros.exports=SQr});var BQr=H((mqu,ios)=>{"use strict";var npl=j_e(),vQr=class extends npl{constructor(t={}){super({style:"number",...t}),this.min=this.isValue(t.min)?this.toNumber(t.min):-1/0,this.max=this.isValue(t.max)?this.toNumber(t.max):1/0,this.delay=t.delay!=null?t.delay:1e3,this.float=t.float!==!1,this.round=t.round===!0||t.float===!1,this.major=t.major||10,this.minor=t.minor||1,this.initial=t.initial!=null?t.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(t){return!/[-+.]/.test(t)||t==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(t)}number(t){return super.append(t)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(t){let r=t||this.minor,n=this.toNumber(this.input);return n>this.max+r?this.alert():(this.input=`${n+r}`,this.render())}down(t){let r=t||this.minor,n=this.toNumber(this.input);return nthis.isValue(r));return this.value=this.toNumber(t||0),super.submit()}};ios.exports=vQr});var oos=H((Cqu,sos)=>{sos.exports=BQr()});var cos=H((_qu,aos)=>{"use strict";var ipl=j_e(),wQr=class extends ipl{constructor(t){super(t),this.cursorShow()}format(t=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(t.length)):""}};aos.exports=wQr});var gos=H((yqu,uos)=>{"use strict";var spl=aM(),opl=U6e(),los=rF(),TQr=class extends opl{constructor(t={}){super(t),this.widths=[].concat(t.messageWidth||50),this.align=[].concat(t.align||"left"),this.linebreak=t.linebreak||!1,this.edgeLength=t.edgeLength||3,this.newline=t.newline||` `;let r=t.startNumber||1;typeof this.scale=="number"&&(this.scaleKey=!1,this.scale=Array(this.scale).fill(0).map((n,a)=>({name:a+r})))}async reset(){return this.tableized=!1,await super.reset(),this.render()}tableize(){if(this.tableized===!0)return;this.tableized=!0;let t=0;for(let r of this.choices){t=Math.max(t,r.message.length),r.scaleIndex=r.initial||2,r.scale=[];for(let n=0;n=this.scale.length-1?this.alert():(t.scaleIndex++,this.render())}left(){let t=this.focused;return t.scaleIndex<=0?this.alert():(t.scaleIndex--,this.render())}indent(){return""}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.index)).join(", "):""}pointer(){return""}renderScaleKey(){return this.scaleKey===!1||this.state.submitted?"":["",...this.scale.map(n=>` ${n.name} - ${n.message}`)].map(n=>this.styles.muted(n)).join(` -`)}renderScaleHeading(t){let r=this.scale.map(f=>f.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,t));let n=this.scaleLength-r.join("").length,a=Math.round(n/(r.length-1)),l=r.map(f=>this.styles.strong(f)).join(" ".repeat(a)),A=" ".repeat(this.widths[0]);return this.margin[3]+A+this.margin[1]+l}scaleIndicator(t,r,n){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,t,r,n);let a=t.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(t,r){let n=t.scale.map(o=>this.scaleIndicator(t,o,r)),a=this.term==="Hyper"?"":" ";return n.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await t.hint;o&&!cos.hasColor(o)&&(o=this.styles.muted(o));let l=B=>this.margin[3]+B.replace(/\s+$/,"").padEnd(this.widths[0]," "),A=this.newline,f=this.indent(t),I=await this.resolve(t.message,this.state,t,r),C=await this.renderScale(t,r),b=this.margin[1]+this.margin[3];this.scaleLength=cdl(C).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-b.length);let N=cos.wordWrap(I,{width:this.widths[0],newline:A}).split(` +`)}renderScaleHeading(t){let r=this.scale.map(f=>f.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,t));let n=this.scaleLength-r.join("").length,a=Math.round(n/(r.length-1)),l=r.map(f=>this.styles.strong(f)).join(" ".repeat(a)),A=" ".repeat(this.widths[0]);return this.margin[3]+A+this.margin[1]+l}scaleIndicator(t,r,n){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,t,r,n);let a=t.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(t,r){let n=t.scale.map(o=>this.scaleIndicator(t,o,r)),a=this.term==="Hyper"?"":" ";return n.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await t.hint;o&&!los.hasColor(o)&&(o=this.styles.muted(o));let l=B=>this.margin[3]+B.replace(/\s+$/,"").padEnd(this.widths[0]," "),A=this.newline,f=this.indent(t),I=await this.resolve(t.message,this.state,t,r),C=await this.renderScale(t,r),b=this.margin[1]+this.margin[3];this.scaleLength=spl(C).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-b.length);let N=los.wordWrap(I,{width:this.widths[0],newline:A}).split(` `).map(B=>l(B)+this.margin[1]);return n&&(C=this.styles.info(C),N=N.map(B=>this.styles.info(B))),N[0]+=C,this.linebreak&&N.push(""),[f+a,N.join(` `)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let t=this.visible.map(async(a,o)=>await this.renderChoice(a,o)),r=await Promise.all(t),n=await this.renderScaleHeading();return this.margin[0]+[n,...r.map(a=>a.join(" "))].join(` `)}async render(){let{submitted:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l="";this.options.promptLine!==!1&&(l=[n,o,a,""].join(" "),this.state.prompt=l);let A=await this.header(),f=await this.format(),I=await this.renderScaleKey(),C=await this.error()||await this.hint(),b=await this.renderChoices(),E=await this.footer(),N=this.emptyError;f&&(l+=f),C&&!l.includes(C)&&(l+=" "+C),t&&!f&&!b.trim()&&this.multiple&&N!=null&&(l+=this.styles.danger(N)),this.clear(r),this.write([A,l,I,b,E].filter(Boolean).join(` -`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIndex;return this.base.submit.call(this)}};los.exports=bQr});var dos=H((azu,Aos)=>{"use strict";var gos=oM(),udl=(e="")=>typeof e=="string"?e.replace(/^['"]|['"]$/g,""):"",SQr=class{constructor(t){this.name=t.key,this.field=t.field||{},this.value=udl(t.initial||this.field.initial||""),this.message=t.message||this.name,this.cursor=0,this.input="",this.lines=[]}},gdl=async(e={},t={},r=n=>n)=>{let n=new Set,a=e.fields||[],o=e.template,l=[],A=[],f=[],I=1;typeof o=="function"&&(o=await o());let C=-1,b=()=>o[++C],E=()=>o[C+1],N=B=>{B.line=I,l.push(B)};for(N({type:"bos",value:""});Cce.name===J.key);J.field=a.find(ce=>ce.name===J.key),ne||(ne=new SQr(J),A.push(ne)),ne.lines.push(J.line-1);continue}let F=l[l.length-1];F.type==="text"&&F.line===I?F.value+=B:N({type:"text",value:B})}return N({type:"eos",value:""}),{input:o,tabstops:l,unique:n,keys:f,items:A}};Aos.exports=async e=>{let t=e.options,r=new Set(t.required===!0?[]:t.required||[]),n={...t.values,...t.initial},{tabstops:a,items:o,keys:l}=await gdl(t,n),A=EQr("result",e,t),f=EQr("format",e,t),I=EQr("validate",e,t,!0),C=e.isValue.bind(e);return async(b={},E=!1)=>{let N=0;b.required=r,b.items=o,b.keys=l,b.output="";let B=async(ae,ne,ce,fe)=>{let ue=await I(ae,ne,ce,fe);return ue===!1?"Invalid field "+ce.name:ue};for(let ae of a){let ne=ae.value,ce=ae.key;if(ae.type!=="template"){ne&&(b.output+=ne);continue}if(ae.type==="template"){let fe=o.find(De=>De.name===ce);t.required===!0&&b.required.add(fe.name);let ue=[fe.input,b.values[fe.value],fe.value,ne].find(C),be=(fe.field||{}).message||ae.inner;if(E){let De=await B(b.values[ce],b,fe,N);if(De&&typeof De=="string"||De===!1){b.invalid.set(ce,De);continue}b.invalid.delete(ce);let k=await A(b.values[ce],b,fe,N);b.output+=gos(k);continue}fe.placeholder=!1;let Se=ne;ne=await f(ne,b,fe,N),ue!==ne?(b.values[ce]=ue,ne=e.styles.typing(ue),b.missing.delete(be)):(b.values[ce]=void 0,ue=`<${be}>`,ne=e.styles.primary(ue),fe.placeholder=!0,b.required.has(ce)&&b.missing.add(be)),b.missing.has(be)&&b.validating&&(ne=e.styles.warning(ue)),b.invalid.has(ce)&&b.validating&&(ne=e.styles.danger(ue)),N===b.index&&(Se!==ne?ne=e.styles.underline(ne):ne=e.styles.heading(gos(ne))),N++}ne&&(b.output+=ne)}let F=b.output.split(` +`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIndex;return this.base.submit.call(this)}};uos.exports=TQr});var pos=H((bqu,dos)=>{"use strict";var Aos=aM(),apl=(e="")=>typeof e=="string"?e.replace(/^['"]|['"]$/g,""):"",NQr=class{constructor(t){this.name=t.key,this.field=t.field||{},this.value=apl(t.initial||this.field.initial||""),this.message=t.message||this.name,this.cursor=0,this.input="",this.lines=[]}},cpl=async(e={},t={},r=n=>n)=>{let n=new Set,a=e.fields||[],o=e.template,l=[],A=[],f=[],I=1;typeof o=="function"&&(o=await o());let C=-1,b=()=>o[++C],E=()=>o[C+1],N=B=>{B.line=I,l.push(B)};for(N({type:"bos",value:""});Cce.name===J.key);J.field=a.find(ce=>ce.name===J.key),ne||(ne=new NQr(J),A.push(ne)),ne.lines.push(J.line-1);continue}let F=l[l.length-1];F.type==="text"&&F.line===I?F.value+=B:N({type:"text",value:B})}return N({type:"eos",value:""}),{input:o,tabstops:l,unique:n,keys:f,items:A}};dos.exports=async e=>{let t=e.options,r=new Set(t.required===!0?[]:t.required||[]),n={...t.values,...t.initial},{tabstops:a,items:o,keys:l}=await cpl(t,n),A=RQr("result",e,t),f=RQr("format",e,t),I=RQr("validate",e,t,!0),C=e.isValue.bind(e);return async(b={},E=!1)=>{let N=0;b.required=r,b.items=o,b.keys=l,b.output="";let B=async(ae,ne,ce,fe)=>{let ue=await I(ae,ne,ce,fe);return ue===!1?"Invalid field "+ce.name:ue};for(let ae of a){let ne=ae.value,ce=ae.key;if(ae.type!=="template"){ne&&(b.output+=ne);continue}if(ae.type==="template"){let fe=o.find(De=>De.name===ce);t.required===!0&&b.required.add(fe.name);let ue=[fe.input,b.values[fe.value],fe.value,ne].find(C),be=(fe.field||{}).message||ae.inner;if(E){let De=await B(b.values[ce],b,fe,N);if(De&&typeof De=="string"||De===!1){b.invalid.set(ce,De);continue}b.invalid.delete(ce);let k=await A(b.values[ce],b,fe,N);b.output+=Aos(k);continue}fe.placeholder=!1;let Se=ne;ne=await f(ne,b,fe,N),ue!==ne?(b.values[ce]=ue,ne=e.styles.typing(ue),b.missing.delete(be)):(b.values[ce]=void 0,ue=`<${be}>`,ne=e.styles.primary(ue),fe.placeholder=!0,b.required.has(ce)&&b.missing.add(be)),b.missing.has(be)&&b.validating&&(ne=e.styles.warning(ue)),b.invalid.has(ce)&&b.validating&&(ne=e.styles.danger(ue)),N===b.index&&(Se!==ne?ne=e.styles.underline(ne):ne=e.styles.heading(Aos(ne))),N++}ne&&(b.output+=ne)}let F=b.output.split(` `).map(ae=>" "+ae),Q=o.length,J=0;for(let ae of o)b.invalid.has(ae.name)&&ae.lines.forEach(ne=>{F[ne][0]===" "&&(F[ne]=b.styles.danger(b.symbols.bullet)+F[ne].slice(1))}),e.isValue(b.values[ae.name])&&J++;return b.completed=(J/Q*100).toFixed(0),b.output=F.join(` -`),b.output}};function EQr(e,t,r,n){return(a,o,l,A)=>typeof l.field[e]=="function"?l.field[e].call(t,a,o,l,A):[n,a].find(f=>t.isValue(f))}});var fos=H((czu,pos)=>{"use strict";var Adl=oM(),ddl=dos(),pdl=cGe(),vQr=class extends pdl{constructor(t){super(t),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await ddl(this),await super.initialize()}async reset(t){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},t!==!0&&(await this.initialize(),await this.render())}moveCursor(t){let r=this.getItem();this.cursor+=t,r.cursor+=t}dispatch(t,r){if(!r.code&&!r.ctrl&&t!=null&&this.getItem()){this.append(t,r);return}this.alert()}append(t,r){let n=this.getItem(),a=n.input.slice(0,this.cursor),o=n.input.slice(this.cursor);this.input=n.input=`${a}${t}${o}`,this.moveCursor(1),this.render()}delete(){let t=this.getItem();if(this.cursor<=0||!t.input)return this.alert();let r=t.input.slice(this.cursor),n=t.input.slice(0,this.cursor-1);this.input=t.input=`${n}${r}`,this.moveCursor(-1),this.render()}increment(t){return t>=this.state.keys.length-1?0:t+1}decrement(t){return t<=0?this.state.keys.length-1:t-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(t){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:t,keys:r=[],submitted:n,size:a}=this.state,o=[this.options.newline,` +`),b.output}};function RQr(e,t,r,n){return(a,o,l,A)=>typeof l.field[e]=="function"?l.field[e].call(t,a,o,l,A):[n,a].find(f=>t.isValue(f))}});var Ios=H((Equ,fos)=>{"use strict";var lpl=aM(),upl=pos(),gpl=cGe(),DQr=class extends gpl{constructor(t){super(t),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await upl(this),await super.initialize()}async reset(t){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},t!==!0&&(await this.initialize(),await this.render())}moveCursor(t){let r=this.getItem();this.cursor+=t,r.cursor+=t}dispatch(t,r){if(!r.code&&!r.ctrl&&t!=null&&this.getItem()){this.append(t,r);return}this.alert()}append(t,r){let n=this.getItem(),a=n.input.slice(0,this.cursor),o=n.input.slice(this.cursor);this.input=n.input=`${a}${t}${o}`,this.moveCursor(1),this.render()}delete(){let t=this.getItem();if(this.cursor<=0||!t.input)return this.alert();let r=t.input.slice(this.cursor),n=t.input.slice(0,this.cursor-1);this.input=t.input=`${n}${r}`,this.moveCursor(-1),this.render()}increment(t){return t>=this.state.keys.length-1?0:t+1}decrement(t){return t<=0?this.state.keys.length-1:t-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(t){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:t,keys:r=[],submitted:n,size:a}=this.state,o=[this.options.newline,` `].find(ae=>ae!=null),l=await this.prefix(),A=await this.separator(),f=await this.message(),I=[l,f,A].filter(Boolean).join(" ");this.state.prompt=I;let C=await this.header(),b=await this.error()||"",E=await this.hint()||"",N=n?"":await this.interpolate(this.state),B=this.state.key=r[t]||"",F=await this.format(B),Q=await this.footer();F&&(I+=" "+F),E&&!F&&this.state.completed===0&&(I+=" "+E),this.clear(a);let J=[C,I,N,Q,b.trim()];this.write(J.filter(Boolean).join(o)),this.restore()}getItem(t){let{items:r,keys:n,index:a}=this.state,o=r.find(l=>l.name===n[a]);return o&&o.input!=null&&(this.input=o.input,this.cursor=o.cursor),o}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:t,missing:r,output:n,values:a}=this.state;if(t.size){let A="";for(let[f,I]of t)A+=`Invalid ${f}: ${I} -`;return this.state.error=A,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let l=Adl(n).split(` +`;return this.state.error=A,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let l=lpl(n).split(` `).map(A=>A.slice(1)).join(` -`);return this.value={values:a,result:l},super.submit()}};pos.exports=vQr});var hos=H((lzu,Ios)=>{"use strict";var fdl="(Use + to sort)",Idl=Cue(),BQr=class extends Idl{constructor(t){super({...t,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,fdl].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(t,r){let n=await super.renderChoice(t,r),a=this.symbols.identicalTo+" ",o=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(o=""),this.options.numbered===!0?o+`${r+1} - `+n:o+n}get selected(){return this.choices}submit(){return this.value=this.choices.map(t=>t.value),super.submit()}};Ios.exports=BQr});var Cos=H((uzu,mos)=>{"use strict";var hdl=K6e(),wQr=class extends hdl{constructor(t={}){if(super(t),this.emptyError=t.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(n=>this.styles.muted(n)),this.state.header=r.join(` - `)}}async toChoices(...t){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...t);for(let n of r)n.scale=mdl(5,this.options),n.scaleIdx=2;return r}dispatch(){this.alert()}space(){let t=this.focused,r=t.scale[t.scaleIdx],n=r.selected;return t.scale.forEach(a=>a.selected=!1),r.selected=!n,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let t=this.focused;return t.scaleIdx>=t.scale.length-1?this.alert():(t.scaleIdx++,this.render())}left(){let t=this.focused;return t.scaleIdx<=0?this.alert():(t.scaleIdx--,this.render())}indent(){return" "}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=this.term==="Hyper",o=a?9:8,l=a?"":" ",A=this.symbols.line.repeat(o),f=" ".repeat(o+(a?0:1)),I=ne=>(ne?this.styles.success("\u25C9"):"\u25EF")+l,C=r+1+".",b=n?this.styles.heading:this.styles.noop,E=await this.resolve(t.message,this.state,t,r),N=this.indent(t),B=N+t.scale.map((ne,ce)=>I(ce===t.scaleIdx)).join(A),F=ne=>ne===t.scaleIdx?b(ne):ne,Q=N+t.scale.map((ne,ce)=>F(ce)).join(f),J=()=>[C,E].filter(Boolean).join(" "),ae=()=>[J(),B,Q," "].filter(Boolean).join(` +`);return this.value={values:a,result:l},super.submit()}};fos.exports=DQr});var mos=H((Squ,hos)=>{"use strict";var Apl="(Use + to sort)",dpl=_ue(),kQr=class extends dpl{constructor(t){super({...t,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,Apl].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(t,r){let n=await super.renderChoice(t,r),a=this.symbols.identicalTo+" ",o=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(o=""),this.options.numbered===!0?o+`${r+1} - `+n:o+n}get selected(){return this.choices}submit(){return this.value=this.choices.map(t=>t.value),super.submit()}};hos.exports=kQr});var _os=H((vqu,Cos)=>{"use strict";var ppl=U6e(),xQr=class extends ppl{constructor(t={}){if(super(t),this.emptyError=t.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(n=>this.styles.muted(n)),this.state.header=r.join(` + `)}}async toChoices(...t){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...t);for(let n of r)n.scale=fpl(5,this.options),n.scaleIdx=2;return r}dispatch(){this.alert()}space(){let t=this.focused,r=t.scale[t.scaleIdx],n=r.selected;return t.scale.forEach(a=>a.selected=!1),r.selected=!n,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let t=this.focused;return t.scaleIdx>=t.scale.length-1?this.alert():(t.scaleIdx++,this.render())}left(){let t=this.focused;return t.scaleIdx<=0?this.alert():(t.scaleIdx--,this.render())}indent(){return" "}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=this.term==="Hyper",o=a?9:8,l=a?"":" ",A=this.symbols.line.repeat(o),f=" ".repeat(o+(a?0:1)),I=ne=>(ne?this.styles.success("\u25C9"):"\u25EF")+l,C=r+1+".",b=n?this.styles.heading:this.styles.noop,E=await this.resolve(t.message,this.state,t,r),N=this.indent(t),B=N+t.scale.map((ne,ce)=>I(ce===t.scaleIdx)).join(A),F=ne=>ne===t.scaleIdx?b(ne):ne,Q=N+t.scale.map((ne,ce)=>F(ce)).join(f),J=()=>[C,E].filter(Boolean).join(" "),ae=()=>[J(),B,Q," "].filter(Boolean).join(` `);return n&&(B=this.styles.cyan(B),Q=this.styles.cyan(Q)),ae()}async renderChoices(){if(this.state.submitted)return"";let t=this.visible.map(async(n,a)=>await this.renderChoice(n,a)),r=await Promise.all(t);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` `)}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.scaleIdx)).join(", "):""}async render(){let{submitted:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=[n,o,a].filter(Boolean).join(" ");this.state.prompt=l;let A=await this.header(),f=await this.format(),I=await this.error()||await this.hint(),C=await this.renderChoices(),b=await this.footer();(f||!I)&&(l+=" "+f),I&&!l.includes(I)&&(l+=" "+I),t&&!f&&!C&&this.multiple&&this.type!=="form"&&(l+=this.styles.danger(this.emptyError)),this.clear(r),this.write([l,A,C,b].filter(Boolean).join(` -`)),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIdx;return this.base.submit.call(this)}};function mdl(e,t={}){if(Array.isArray(t.scale))return t.scale.map(n=>({...n}));let r=[];for(let n=1;n{_os.exports=fQr()});var Eos=H((Azu,bos)=>{"use strict";var Cdl=pxt(),TQr=class extends Cdl{async initialize(){await super.initialize(),this.value=this.initial=this.resolve(this.options.initial),this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(t="",r){switch(t.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let t=n=>this.styles.primary.underline(n);return[this.value?this.disabled:t(this.disabled),this.value?t(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:t}=this.state,r=await this.header(),n=await this.prefix(),a=await this.separator(),o=await this.message(),l=await this.format(),A=await this.error()||await this.hint(),f=await this.footer(),I=[n,o,a,l].join(" ");this.state.prompt=I,A&&!I.includes(A)&&(I+=" "+A),this.clear(t),this.write([r,I,f].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};bos.exports=TQr});var vos=H((dzu,Sos)=>{"use strict";var _dl=Cue(),RQr=class extends _dl{constructor(t){if(super(t),typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(t,r){let n=await super.toChoices(t,r);if(n.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>n.length)throw new Error("Please specify the index of the correct answer from the list of choices");return n}check(t){return t.index===this.options.correctChoice}async result(t){return{selectedAnswer:t,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};Sos.exports=RQr});var wos=H(NQr=>{"use strict";var Bos=tF(),HR=(e,t)=>{Bos.defineExport(NQr,e,t),Bos.defineExport(NQr,e.toLowerCase(),t)};HR("AutoComplete",()=>xss());HR("BasicAuth",()=>Oss());HR("Confirm",()=>Hss());HR("Editable",()=>Qss());HR("Form",()=>dxt());HR("Input",()=>fQr());HR("Invisible",()=>qss());HR("List",()=>eos());HR("MultiSelect",()=>ros());HR("Numeral",()=>sos());HR("Password",()=>aos());HR("Scale",()=>uos());HR("Select",()=>Cue());HR("Snippet",()=>fos());HR("Sort",()=>hos());HR("Survey",()=>Cos());HR("Text",()=>yos());HR("Toggle",()=>Eos());HR("Quiz",()=>vos())});var Ros=H((fzu,Tos)=>{Tos.exports={ArrayPrompt:K6e(),AuthPrompt:lQr(),BooleanPrompt:pxt(),NumberPrompt:_Qr(),StringPrompt:j_e()}});var z6e=H((Izu,Dos)=>{"use strict";var Nos=Et("assert"),kQr=Et("events"),_ue=tF(),q4=class extends kQr{constructor(t,r){super(),this.options=_ue.merge({},t),this.answers={...r}}register(t,r){if(_ue.isObject(t)){for(let a of Object.keys(t))this.register(a,t[a]);return this}Nos.equal(typeof r,"function","expected a function");let n=t.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[n]=r:this.prompts[n]=r(this.Prompt,this),this}async prompt(t=[]){for(let r of[].concat(t))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(_ue.merge({},this.options,r))}catch(n){return Promise.reject(n)}return this.answers}async ask(t){typeof t=="function"&&(t=await t.call(this));let r=_ue.merge({},this.options,t),{type:n,name:a}=t,{set:o,get:l}=_ue;if(typeof n=="function"&&(n=await n.call(this,t,this.answers)),!n)return this.answers[a];n==="number"&&(n="numeral"),Nos(this.prompts[n],`Prompt "${n}" is not registered`);let A=new this.prompts[n](r),f=l(this.answers,a);A.state.answers=this.answers,A.enquirer=this,a&&A.on("submit",C=>{this.emit("answer",a,C,A),o(this.answers,a,C)});let I=A.emit.bind(A);return A.emit=(...C)=>(this.emit.call(this,...C),I(...C)),this.emit("prompt",A,this),r.autofill&&f!=null?(A.value=A.input=f,r.autofill==="show"&&await A.submit()):f=A.value=await A.run(),f}use(t){return t.call(this,this),this}set Prompt(t){this._Prompt=t}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(t){this._Prompt=t}static get Prompt(){return this._Prompt||cGe()}static get prompts(){return wos()}static get types(){return Ros()}static get prompt(){let t=(r,...n)=>{let a=new this(...n),o=a.emit.bind(a);return a.emit=(...l)=>(t.emit(...l),o(...l)),a.prompt(r)};return _ue.mixinEmitter(t,new kQr),t}};_ue.mixinEmitter(q4,new kQr);var DQr=q4.prompts;for(let e of Object.keys(DQr)){let t=e.toLowerCase(),r=n=>new DQr[e](n).run();q4.prompt[t]=r,q4[t]=r,q4[e]||Reflect.defineProperty(q4,e,{get:()=>DQr[e]})}var j6e=e=>{_ue.defineExport(q4,e,()=>q4.types[e])};j6e("ArrayPrompt");j6e("AuthPrompt");j6e("BooleanPrompt");j6e("NumberPrompt");j6e("StringPrompt");Dos.exports=q4});var eje=H(YR=>{"use strict";Object.defineProperty(YR,"__esModule",{value:!0});YR.Strategy=YR.WorkspaceModifier=YR.Modifier=YR.Target=void 0;YR.getModifier=Edl;YR.extractRangeModifier=xos;YR.applyModifier=vdl;YR.toWorkspaceModifier=Gos;YR.makeWorkspaceDescriptor=Fos;YR.findProjectDescriptors=Zos;YR.extractDescriptorFromPath=Bdl;YR.getSuggestedDescriptors=Tdl;YR.fetchDescriptorFrom=xQr;var ydl=(Wa(),vi(Va)),z_e=mn(),db=mn(),Ixt=Io(),kos=ydl.__importDefault(jC()),bdl="workspace:",$6e;(function(e){e.REGULAR="dependencies",e.DEVELOPMENT="devDependencies",e.PEER="peerDependencies"})($6e||(YR.Target=$6e={}));var bue;(function(e){e.CARET="^",e.TILDE="~",e.EXACT=""})(bue||(YR.Modifier=bue={}));var q6e;(function(e){e.CARET="^",e.TILDE="~",e.EXACT="*"})(q6e||(YR.WorkspaceModifier=q6e={}));var yue;(function(e){e.KEEP="keep",e.REUSE="reuse",e.PROJECT="project",e.LATEST="latest",e.CACHE="cache"})(yue||(YR.Strategy=yue={}));function Edl(e,t){return e.exact?bue.EXACT:e.caret?bue.CARET:e.tilde?bue.TILDE:t.configuration.get("defaultSemverRangePrefix")}var Sdl=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function xos(e,{project:t}){let r=e.match(Sdl);return r?r[1]:t.configuration.get("defaultSemverRangePrefix")}function vdl(e,t){let{protocol:r,source:n,params:a,selector:o}=db.structUtils.parseRange(e.range);return kos.default.valid(o)&&(o=`${t}${e.range}`),db.structUtils.makeDescriptor(e,db.structUtils.makeRange({protocol:r,source:n,params:a,selector:o}))}function Gos(e){switch(e){case bue.CARET:return q6e.CARET;case bue.TILDE:return q6e.TILDE;case bue.EXACT:return q6e.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${e}"`)}}function Fos(e,t){return db.structUtils.makeDescriptor(e.anchoredDescriptor,`${bdl}${Gos(t)}`)}async function Zos(e,{project:t,target:r}){let n=new Map,a=o=>{let l=n.get(o.descriptorHash);return l||n.set(o.descriptorHash,l={descriptor:o,locators:[]}),l};for(let o of t.workspaces)if(r===$6e.PEER){let l=o.manifest.peerDependencies.get(e.identHash);l!==void 0&&a(l).locators.push(o.anchoredLocator)}else{let l=o.manifest.dependencies.get(e.identHash),A=o.manifest.devDependencies.get(e.identHash);r===$6e.DEVELOPMENT?A!==void 0?a(A).locators.push(o.anchoredLocator):l!==void 0&&a(l).locators.push(o.anchoredLocator):l!==void 0?a(l).locators.push(o.anchoredLocator):A!==void 0&&a(A).locators.push(o.anchoredLocator)}return n}async function Bdl(e,{cwd:t,workspace:r}){return await Rdl(async n=>{Ixt.ppath.isAbsolute(e)||(e=Ixt.ppath.relative(r.cwd,Ixt.ppath.resolve(t,e)),e.match(/^\.{0,2}\//)||(e=`./${e}`));let{project:a}=r,o=await xQr(db.structUtils.makeIdent(null,"archive"),e,{project:r.project,cache:n,workspace:r});if(!o)throw new Error("Assertion failed: The descriptor should have been found");let l=new z_e.ThrowReport,A=a.configuration.makeResolver(),f=a.configuration.makeFetcher(),I={checksums:a.storedChecksums,project:a,cache:n,fetcher:f,report:l,resolver:A},C=A.bindDescriptor(o,r.anchoredLocator,I),b=db.structUtils.convertDescriptorToLocator(C),E=await f.fetch(b,I),N=await z_e.Manifest.find(E.prefixPath,{baseFs:E.packageFs});if(!N.name)throw new Error("Target path doesn't have a name");return db.structUtils.makeDescriptor(N.name,e)})}function wdl(e){if(e.range==="unknown")return{type:"resolve",range:"latest"};if(db.semverUtils.validRange(e.range))return{type:"fixed",range:e.range};if(z_e.TAG_REGEXP.test(e.range))return{type:"resolve",range:e.range};let t=e.range.match(/^(?:jsr:|npm:)(.*)/);if(!t)return{type:"fixed",range:e.range};let[,r]=t,n=`${db.structUtils.stringifyIdent(e)}@`;return r.startsWith(n)&&(r=r.slice(n.length)),db.semverUtils.validRange(r)?{type:"fixed",range:e.range}:z_e.TAG_REGEXP.test(r)?{type:"resolve",range:e.range}:{type:"fixed",range:e.range}}async function Tdl(e,{project:t,workspace:r,cache:n,target:a,fixed:o,modifier:l,strategies:A,maxResults:f=1/0}){if(!(f>=0))throw new Error(`Invalid maxResults (${f})`);let I=!o||e.range==="unknown"?wdl(e):{type:"fixed",range:e.range};if(I.type==="fixed")return{suggestions:[{descriptor:e,name:`Use ${db.structUtils.prettyDescriptor(t.configuration,e)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let C=typeof r<"u"&&r!==null&&r.manifest[a].get(e.identHash)||null,b=[],E=[],N=async B=>{try{await B()}catch(F){E.push(F)}};for(let B of A){if(b.length>=f)break;switch(B){case yue.KEEP:await N(async()=>{C&&b.push({descriptor:C,name:`Keep ${db.structUtils.prettyDescriptor(t.configuration,C)}`,reason:"(no changes)"})});break;case yue.REUSE:await N(async()=>{for(let{descriptor:F,locators:Q}of(await Zos(e,{project:t,target:a})).values()){if(Q.length===1&&Q[0].locatorHash===r.anchoredLocator.locatorHash&&A.includes(yue.KEEP))continue;let J=`(originally used by ${db.structUtils.prettyLocator(t.configuration,Q[0])}`;J+=Q.length>1?` and ${Q.length-1} other${Q.length>2?"s":""})`:")",b.push({descriptor:F,name:`Reuse ${db.structUtils.prettyDescriptor(t.configuration,F)}`,reason:J})}});break;case yue.CACHE:await N(async()=>{for(let F of t.storedDescriptors.values())F.identHash===e.identHash&&b.push({descriptor:F,name:`Reuse ${db.structUtils.prettyDescriptor(t.configuration,F)}`,reason:"(already used somewhere in the lockfile)"})});break;case yue.PROJECT:await N(async()=>{if(r.manifest.name!==null&&e.identHash===r.manifest.name.identHash)return;let F=t.tryWorkspaceByIdent(e);if(F===null)return;let Q=Fos(F,l);b.push({descriptor:Q,name:`Attach ${db.structUtils.prettyDescriptor(t.configuration,Q)}`,reason:`(local workspace at ${db.formatUtils.pretty(t.configuration,F.relativeCwd,db.formatUtils.Type.PATH)})`})});break;case yue.LATEST:{let F=t.configuration.get("enableNetwork"),Q=t.configuration.get("enableOfflineMode");await N(async()=>{if(a===$6e.PEER)b.push({descriptor:db.structUtils.makeDescriptor(e,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!F&&!Q)b.push({descriptor:null,name:"Resolve from latest",reason:db.formatUtils.pretty(t.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let J=await xQr(e,I.range,{project:t,cache:n,workspace:r,modifier:l});J&&b.push({descriptor:J,name:`Use ${db.structUtils.prettyDescriptor(t.configuration,J)}`,reason:`(resolved from ${Q?"the cache":"latest"})`})}})}break}}return{suggestions:b.slice(0,f),rejections:E.slice(0,f)}}async function xQr(e,t,{project:r,cache:n,workspace:a,preserveModifier:o=!0,modifier:l}){let A=r.configuration.normalizeDependency(db.structUtils.makeDescriptor(e,t)),f=new z_e.ThrowReport,I=r.configuration.makeFetcher(),C=r.configuration.makeResolver(),b={project:r,fetcher:I,cache:n,checksums:r.storedChecksums,report:f,cacheOptions:{skipIntegrityCheck:!0}},E={...b,resolver:C,fetchOptions:b},N=C.bindDescriptor(A,a.anchoredLocator,E),B=await C.getCandidates(N,{},E);if(B.length===0)return null;let F=B[0],{protocol:Q,source:J,params:ae,selector:ne}=db.structUtils.parseRange(db.structUtils.convertToManifestRange(F.reference));if(Q===r.configuration.get("defaultProtocol")&&(Q=null),kos.default.valid(ne)){let ce=ne;if(typeof l<"u")ne=l+ne;else if(o!==!1){let de=typeof o=="string"?o:A.range;ne=xos(de,{project:r})+ne}let fe=db.structUtils.makeDescriptor(F,db.structUtils.makeRange({protocol:Q,source:J,params:ae,selector:ne}));(await C.getCandidates(r.configuration.normalizeDependency(fe),{},E)).length!==1&&(ne=ce)}return db.structUtils.makeDescriptor(F,db.structUtils.makeRange({protocol:Q,source:J,params:ae,selector:ne}))}async function Rdl(e){return await Ixt.xfs.mktempPromise(async t=>{let r=z_e.Configuration.create(t);return r.useWithSource(t,{enableMirror:!1,compressionLevel:0},t,{overwrite:!0}),await e(new z_e.Cache(t,{configuration:r,check:!1,immutable:!1}))})}});var Oos=H(GQr=>{"use strict";Object.defineProperty(GQr,"__esModule",{value:!0});var Wos=(Wa(),vi(Va)),Los=dl(),WP=mn(),Vos=mn(),dL=mn(),eB=(Rl(),vi(ng)),Ndl=z6e(),Ddl=Wos.__importStar((vZ(),vi(SZ))),rF=Wos.__importStar(eje()),tje=class extends Los.BaseCommand{constructor(){super(...arguments),this.json=eB.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.fixed=eB.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=eB.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=eB.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=eB.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.dev=eB.Option.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"}),this.peer=eB.Option.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"}),this.optional=eB.Option.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"}),this.preferDev=eB.Option.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"}),this.interactive=eB.Option.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"}),this.cached=eB.Option.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"}),this.mode=eB.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Ddl.isEnum(Vos.InstallMode)}),this.silent=eB.Option.Boolean("--silent",{hidden:!0}),this.packages=eB.Option.Rest()}async execute(){let t=await WP.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Vos.Project.find(t,this.context.cwd),a=await WP.Cache.find(t);if(!n)throw new Los.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l||t.get("preferReuse"),f=rF.getModifier(this,r),I=[A?rF.Strategy.REUSE:void 0,rF.Strategy.PROJECT,this.cached?rF.Strategy.CACHE:void 0,rF.Strategy.LATEST].filter(J=>typeof J<"u"),C=l?1/0:1,b=J=>{let ae=dL.structUtils.tryParseDescriptor(J.slice(4));return ae?ae.range==="unknown"?dL.structUtils.makeDescriptor(ae,`jsr:${dL.structUtils.stringifyIdent(ae)}@latest`):dL.structUtils.makeDescriptor(ae,`jsr:${ae.range}`):null},E=await Promise.all(this.packages.map(async J=>{let ae=J.match(/^\.{0,2}\//)?await rF.extractDescriptorFromPath(J,{cwd:this.context.cwd,workspace:n}):J.startsWith("jsr:")?b(J):dL.structUtils.tryParseDescriptor(J),ne=J.match(/^(https?:|git@github)/);if(ne)throw new eB.UsageError(`It seems you are trying to add a package using a ${WP.formatUtils.pretty(t,`${ne[0]}...`,WP.formatUtils.Type.RANGE)} url; we now require package names to be explicitly specified. -Try running the command again with the package name prefixed: ${WP.formatUtils.pretty(t,"yarn add",WP.formatUtils.Type.CODE)} ${WP.formatUtils.pretty(t,dL.structUtils.makeDescriptor(dL.structUtils.makeIdent(null,"my-package"),`${ne[0]}...`),WP.formatUtils.Type.DESCRIPTOR)}`);if(!ae)throw new eB.UsageError(`The ${WP.formatUtils.pretty(t,J,WP.formatUtils.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let ce=kdl(n,ae,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(ce.map(async ue=>{let de=await rF.getSuggestedDescriptors(ae,{project:r,workspace:n,cache:a,fixed:o,target:ue,modifier:f,strategies:I,maxResults:C});return{request:ae,suggestedDescriptors:de,target:ue}}))})).then(J=>J.flat()),N=await WP.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async J=>{for(let{request:ae,suggestedDescriptors:{suggestions:ne,rejections:ce}}of E)if(ne.filter(ue=>ue.descriptor!==null).length===0){let[ue]=ce;if(typeof ue>"u")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?J.reportError(WP.MessageName.CANT_SUGGEST_RESOLUTIONS,`${dL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range`):J.reportError(WP.MessageName.CANT_SUGGEST_RESOLUTIONS,`${dL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),J.reportSeparator(),J.reportExceptionOnce(ue)}});if(N.hasErrors())return N.exitCode();let B=!1,F=[],Q=[];for(let{suggestedDescriptors:{suggestions:J},target:ae}of E){let ne,ce=J.filter(be=>be.descriptor!==null),fe=ce[0].descriptor,ue=ce.every(be=>dL.structUtils.areDescriptorsEqual(be.descriptor,fe));ce.length===1||ue?ne=fe:(B=!0,{answer:ne}=await(0,Ndl.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:J.map(({descriptor:be,name:Se,reason:De})=>be?{name:Se,hint:De,descriptor:be}:{name:Se,hint:De,disabled:!0}),onCancel:()=>process.exit(130),result(be){return this.find(be,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let de=n.manifest[ae].get(ne.identHash);(typeof de>"u"||de.descriptorHash!==ne.descriptorHash)&&(n.manifest[ae].set(ne.identHash,ne),this.optional&&(ae==="dependencies"?n.manifest.ensureDependencyMeta({...ne,range:"unknown"}).optional=!0:ae==="peerDependencies"&&(n.manifest.ensurePeerDependencyMeta({...ne,range:"unknown"}).optional=!0)),typeof de>"u"?F.push([n,ae,ne,I]):Q.push([n,ae,de,ne]))}return await t.triggerMultipleHooks(J=>J.afterWorkspaceDependencyAddition,F),await t.triggerMultipleHooks(J=>J.afterWorkspaceDependencyReplacement,Q),B&&this.context.stdout.write(` -`),await r.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:a,mode:this.mode})}};tje.paths=[["add"]];tje.usage=eB.Command.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"],["Add a local package (gzipped tarball format) to the current workspace","$0 add local-package-name@file:../path/to/local-package-name-v0.1.2.tgz"]]});GQr.default=tje;function kdl(e,t,{dev:r,peer:n,preferDev:a,optional:o}){let l=e.manifest[rF.Target.REGULAR].has(t.identHash),A=e.manifest[rF.Target.DEVELOPMENT].has(t.identHash),f=e.manifest[rF.Target.PEER].has(t.identHash);if((r||n)&&l)throw new eB.UsageError(`Package "${dL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!n&&f)throw new eB.UsageError(`Package "${dL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(o&&A)throw new eB.UsageError(`Package "${dL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(o&&!n&&f)throw new eB.UsageError(`Package "${dL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||a)&&o)throw new eB.UsageError(`Package "${dL.structUtils.prettyIdent(e.project.configuration,t)}" cannot simultaneously be a dev dependency and an optional dependency`);let I=[];return n&&I.push(rF.Target.PEER),(r||a)&&I.push(rF.Target.DEVELOPMENT),o&&I.push(rF.Target.REGULAR),I.length>0?I:A?[rF.Target.DEVELOPMENT]:f?[rF.Target.PEER]:[rF.Target.REGULAR]}});var Pos=H(ZQr=>{"use strict";Object.defineProperty(ZQr,"__esModule",{value:!0});var xdl=dl(),FQr=mn(),rje=mn(),nje=(Rl(),vi(ng)),ije=class extends xdl.BaseCommand{constructor(){super(...arguments),this.verbose=nje.Option.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"}),this.json=nje.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.name=nje.Option.String({required:!1})}async execute(){let t=await FQr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await FQr.Project.find(t,this.context.cwd);if(await r.restoreInstallState(),this.name){let l=(await rje.scriptUtils.getPackageAccessibleBinaries(n,{project:r})).get(this.name);if(!l)throw new nje.UsageError(`Couldn't find a binary named "${this.name}" for package "${rje.structUtils.prettyLocator(t,n)}"`);let[,A]=l;return this.context.stdout.write(`${A} -`),0}return(await FQr.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await rje.scriptUtils.getPackageAccessibleBinaries(n,{project:r}),f=Array.from(l.keys()).reduce((I,C)=>Math.max(I,C.length),0);for(let[I,[C,b]]of l)o.reportJson({name:I,source:rje.structUtils.stringifyIdent(C),path:b});if(this.verbose)for(let[I,[C]]of l)o.reportInfo(null,`${I.padEnd(f," ")} ${rje.structUtils.prettyLocator(t,C)}`);else for(let I of l.keys())o.reportInfo(null,I)})).exitCode()}};ije.paths=[["bin"]];ije.usage=nje.Command.Usage({description:"get the path to a binary script",details:` +`)),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIdx;return this.base.submit.call(this)}};function fpl(e,t={}){if(Array.isArray(t.scale))return t.scale.map(n=>({...n}));let r=[];for(let n=1;n{yos.exports=yQr()});var Sos=H((wqu,Eos)=>{"use strict";var Ipl=pxt(),GQr=class extends Ipl{async initialize(){await super.initialize(),this.value=this.initial=this.resolve(this.options.initial),this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(t="",r){switch(t.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let t=n=>this.styles.primary.underline(n);return[this.value?this.disabled:t(this.disabled),this.value?t(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:t}=this.state,r=await this.header(),n=await this.prefix(),a=await this.separator(),o=await this.message(),l=await this.format(),A=await this.error()||await this.hint(),f=await this.footer(),I=[n,o,a,l].join(" ");this.state.prompt=I,A&&!I.includes(A)&&(I+=" "+A),this.clear(t),this.write([r,I,f].filter(Boolean).join(` +`)),this.write(this.margin[2]),this.restore()}};Eos.exports=GQr});var Bos=H((Tqu,vos)=>{"use strict";var hpl=_ue(),FQr=class extends hpl{constructor(t){if(super(t),typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(t,r){let n=await super.toChoices(t,r);if(n.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>n.length)throw new Error("Please specify the index of the correct answer from the list of choices");return n}check(t){return t.index===this.options.correctChoice}async result(t){return{selectedAnswer:t,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};vos.exports=FQr});var Tos=H(ZQr=>{"use strict";var wos=rF(),YR=(e,t)=>{wos.defineExport(ZQr,e,t),wos.defineExport(ZQr,e.toLowerCase(),t)};YR("AutoComplete",()=>Gss());YR("BasicAuth",()=>Pss());YR("Confirm",()=>Yss());YR("Editable",()=>Xss());YR("Form",()=>dxt());YR("Input",()=>yQr());YR("Invisible",()=>$ss());YR("List",()=>tos());YR("MultiSelect",()=>nos());YR("Numeral",()=>oos());YR("Password",()=>cos());YR("Scale",()=>gos());YR("Select",()=>_ue());YR("Snippet",()=>Ios());YR("Sort",()=>mos());YR("Survey",()=>_os());YR("Text",()=>bos());YR("Toggle",()=>Sos());YR("Quiz",()=>Bos())});var Nos=H((Nqu,Ros)=>{Ros.exports={ArrayPrompt:U6e(),AuthPrompt:fQr(),BooleanPrompt:pxt(),NumberPrompt:BQr(),StringPrompt:j_e()}});var j6e=H((Dqu,kos)=>{"use strict";var Dos=Et("assert"),VQr=Et("events"),yue=rF(),$4=class extends VQr{constructor(t,r){super(),this.options=yue.merge({},t),this.answers={...r}}register(t,r){if(yue.isObject(t)){for(let a of Object.keys(t))this.register(a,t[a]);return this}Dos.equal(typeof r,"function","expected a function");let n=t.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[n]=r:this.prompts[n]=r(this.Prompt,this),this}async prompt(t=[]){for(let r of[].concat(t))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(yue.merge({},this.options,r))}catch(n){return Promise.reject(n)}return this.answers}async ask(t){typeof t=="function"&&(t=await t.call(this));let r=yue.merge({},this.options,t),{type:n,name:a}=t,{set:o,get:l}=yue;if(typeof n=="function"&&(n=await n.call(this,t,this.answers)),!n)return this.answers[a];n==="number"&&(n="numeral"),Dos(this.prompts[n],`Prompt "${n}" is not registered`);let A=new this.prompts[n](r),f=l(this.answers,a);A.state.answers=this.answers,A.enquirer=this,a&&A.on("submit",C=>{this.emit("answer",a,C,A),o(this.answers,a,C)});let I=A.emit.bind(A);return A.emit=(...C)=>(this.emit.call(this,...C),I(...C)),this.emit("prompt",A,this),r.autofill&&f!=null?(A.value=A.input=f,r.autofill==="show"&&await A.submit()):f=A.value=await A.run(),f}use(t){return t.call(this,this),this}set Prompt(t){this._Prompt=t}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(t){this._Prompt=t}static get Prompt(){return this._Prompt||cGe()}static get prompts(){return Tos()}static get types(){return Nos()}static get prompt(){let t=(r,...n)=>{let a=new this(...n),o=a.emit.bind(a);return a.emit=(...l)=>(t.emit(...l),o(...l)),a.prompt(r)};return yue.mixinEmitter(t,new VQr),t}};yue.mixinEmitter($4,new VQr);var LQr=$4.prompts;for(let e of Object.keys(LQr)){let t=e.toLowerCase(),r=n=>new LQr[e](n).run();$4.prompt[t]=r,$4[t]=r,$4[e]||Reflect.defineProperty($4,e,{get:()=>LQr[e]})}var K6e=e=>{yue.defineExport($4,e,()=>$4.types[e])};K6e("ArrayPrompt");K6e("AuthPrompt");K6e("BooleanPrompt");K6e("NumberPrompt");K6e("StringPrompt");kos.exports=$4});var $6e=H(QR=>{"use strict";Object.defineProperty(QR,"__esModule",{value:!0});QR.Strategy=QR.WorkspaceModifier=QR.Modifier=QR.Target=void 0;QR.getModifier=_pl;QR.extractRangeModifier=Gos;QR.applyModifier=bpl;QR.toWorkspaceModifier=Fos;QR.makeWorkspaceDescriptor=Zos;QR.findProjectDescriptors=Los;QR.extractDescriptorFromPath=Epl;QR.getSuggestedDescriptors=vpl;QR.fetchDescriptorFrom=WQr;var mpl=(Wa(),vi(Va)),z_e=wn(),pb=wn(),Ixt=No(),xos=mpl.__importDefault(zC()),Cpl="workspace:",q6e;(function(e){e.REGULAR="dependencies",e.DEVELOPMENT="devDependencies",e.PEER="peerDependencies"})(q6e||(QR.Target=q6e={}));var Eue;(function(e){e.CARET="^",e.TILDE="~",e.EXACT=""})(Eue||(QR.Modifier=Eue={}));var z6e;(function(e){e.CARET="^",e.TILDE="~",e.EXACT="*"})(z6e||(QR.WorkspaceModifier=z6e={}));var bue;(function(e){e.KEEP="keep",e.REUSE="reuse",e.PROJECT="project",e.LATEST="latest",e.CACHE="cache"})(bue||(QR.Strategy=bue={}));function _pl(e,t){return e.exact?Eue.EXACT:e.caret?Eue.CARET:e.tilde?Eue.TILDE:t.configuration.get("defaultSemverRangePrefix")}var ypl=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function Gos(e,{project:t}){let r=e.match(ypl);return r?r[1]:t.configuration.get("defaultSemverRangePrefix")}function bpl(e,t){let{protocol:r,source:n,params:a,selector:o}=pb.structUtils.parseRange(e.range);return xos.default.valid(o)&&(o=`${t}${e.range}`),pb.structUtils.makeDescriptor(e,pb.structUtils.makeRange({protocol:r,source:n,params:a,selector:o}))}function Fos(e){switch(e){case Eue.CARET:return z6e.CARET;case Eue.TILDE:return z6e.TILDE;case Eue.EXACT:return z6e.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${e}"`)}}function Zos(e,t){return pb.structUtils.makeDescriptor(e.anchoredDescriptor,`${Cpl}${Fos(t)}`)}async function Los(e,{project:t,target:r}){let n=new Map,a=o=>{let l=n.get(o.descriptorHash);return l||n.set(o.descriptorHash,l={descriptor:o,locators:[]}),l};for(let o of t.workspaces)if(r===q6e.PEER){let l=o.manifest.peerDependencies.get(e.identHash);l!==void 0&&a(l).locators.push(o.anchoredLocator)}else{let l=o.manifest.dependencies.get(e.identHash),A=o.manifest.devDependencies.get(e.identHash);r===q6e.DEVELOPMENT?A!==void 0?a(A).locators.push(o.anchoredLocator):l!==void 0&&a(l).locators.push(o.anchoredLocator):l!==void 0?a(l).locators.push(o.anchoredLocator):A!==void 0&&a(A).locators.push(o.anchoredLocator)}return n}async function Epl(e,{cwd:t,workspace:r}){return await Bpl(async n=>{Ixt.ppath.isAbsolute(e)||(e=Ixt.ppath.relative(r.cwd,Ixt.ppath.resolve(t,e)),e.match(/^\.{0,2}\//)||(e=`./${e}`));let{project:a}=r,o=await WQr(pb.structUtils.makeIdent(null,"archive"),e,{project:r.project,cache:n,workspace:r});if(!o)throw new Error("Assertion failed: The descriptor should have been found");let l=new z_e.ThrowReport,A=a.configuration.makeResolver(),f=a.configuration.makeFetcher(),I={checksums:a.storedChecksums,project:a,cache:n,fetcher:f,report:l,resolver:A},C=A.bindDescriptor(o,r.anchoredLocator,I),b=pb.structUtils.convertDescriptorToLocator(C),E=await f.fetch(b,I),N=await z_e.Manifest.find(E.prefixPath,{baseFs:E.packageFs});if(!N.name)throw new Error("Target path doesn't have a name");return pb.structUtils.makeDescriptor(N.name,e)})}function Spl(e){if(e.range==="unknown")return{type:"resolve",range:"latest"};if(pb.semverUtils.validRange(e.range))return{type:"fixed",range:e.range};if(z_e.TAG_REGEXP.test(e.range))return{type:"resolve",range:e.range};let t=e.range.match(/^(?:jsr:|npm:)(.*)/);if(!t)return{type:"fixed",range:e.range};let[,r]=t,n=`${pb.structUtils.stringifyIdent(e)}@`;return r.startsWith(n)&&(r=r.slice(n.length)),pb.semverUtils.validRange(r)?{type:"fixed",range:e.range}:z_e.TAG_REGEXP.test(r)?{type:"resolve",range:e.range}:{type:"fixed",range:e.range}}async function vpl(e,{project:t,workspace:r,cache:n,target:a,fixed:o,modifier:l,strategies:A,maxResults:f=1/0}){if(!(f>=0))throw new Error(`Invalid maxResults (${f})`);let I=!o||e.range==="unknown"?Spl(e):{type:"fixed",range:e.range};if(I.type==="fixed")return{suggestions:[{descriptor:e,name:`Use ${pb.structUtils.prettyDescriptor(t.configuration,e)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let C=typeof r<"u"&&r!==null&&r.manifest[a].get(e.identHash)||null,b=[],E=[],N=async B=>{try{await B()}catch(F){E.push(F)}};for(let B of A){if(b.length>=f)break;switch(B){case bue.KEEP:await N(async()=>{C&&b.push({descriptor:C,name:`Keep ${pb.structUtils.prettyDescriptor(t.configuration,C)}`,reason:"(no changes)"})});break;case bue.REUSE:await N(async()=>{for(let{descriptor:F,locators:Q}of(await Los(e,{project:t,target:a})).values()){if(Q.length===1&&Q[0].locatorHash===r.anchoredLocator.locatorHash&&A.includes(bue.KEEP))continue;let J=`(originally used by ${pb.structUtils.prettyLocator(t.configuration,Q[0])}`;J+=Q.length>1?` and ${Q.length-1} other${Q.length>2?"s":""})`:")",b.push({descriptor:F,name:`Reuse ${pb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:J})}});break;case bue.CACHE:await N(async()=>{for(let F of t.storedDescriptors.values())F.identHash===e.identHash&&b.push({descriptor:F,name:`Reuse ${pb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:"(already used somewhere in the lockfile)"})});break;case bue.PROJECT:await N(async()=>{if(r.manifest.name!==null&&e.identHash===r.manifest.name.identHash)return;let F=t.tryWorkspaceByIdent(e);if(F===null)return;let Q=Zos(F,l);b.push({descriptor:Q,name:`Attach ${pb.structUtils.prettyDescriptor(t.configuration,Q)}`,reason:`(local workspace at ${pb.formatUtils.pretty(t.configuration,F.relativeCwd,pb.formatUtils.Type.PATH)})`})});break;case bue.LATEST:{let F=t.configuration.get("enableNetwork"),Q=t.configuration.get("enableOfflineMode");await N(async()=>{if(a===q6e.PEER)b.push({descriptor:pb.structUtils.makeDescriptor(e,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!F&&!Q)b.push({descriptor:null,name:"Resolve from latest",reason:pb.formatUtils.pretty(t.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let J=await WQr(e,I.range,{project:t,cache:n,workspace:r,modifier:l});J&&b.push({descriptor:J,name:`Use ${pb.structUtils.prettyDescriptor(t.configuration,J)}`,reason:`(resolved from ${Q?"the cache":"latest"})`})}})}break}}return{suggestions:b.slice(0,f),rejections:E.slice(0,f)}}async function WQr(e,t,{project:r,cache:n,workspace:a,preserveModifier:o=!0,modifier:l}){let A=r.configuration.normalizeDependency(pb.structUtils.makeDescriptor(e,t)),f=new z_e.ThrowReport,I=r.configuration.makeFetcher(),C=r.configuration.makeResolver(),b={project:r,fetcher:I,cache:n,checksums:r.storedChecksums,report:f,cacheOptions:{skipIntegrityCheck:!0}},E={...b,resolver:C,fetchOptions:b},N=C.bindDescriptor(A,a.anchoredLocator,E),B=await C.getCandidates(N,{},E);if(B.length===0)return null;let F=B[0],{protocol:Q,source:J,params:ae,selector:ne}=pb.structUtils.parseRange(pb.structUtils.convertToManifestRange(F.reference));if(Q===r.configuration.get("defaultProtocol")&&(Q=null),xos.default.valid(ne)){let ce=ne;if(typeof l<"u")ne=l+ne;else if(o!==!1){let de=typeof o=="string"?o:A.range;ne=Gos(de,{project:r})+ne}let fe=pb.structUtils.makeDescriptor(F,pb.structUtils.makeRange({protocol:Q,source:J,params:ae,selector:ne}));(await C.getCandidates(r.configuration.normalizeDependency(fe),{},E)).length!==1&&(ne=ce)}return pb.structUtils.makeDescriptor(F,pb.structUtils.makeRange({protocol:Q,source:J,params:ae,selector:ne}))}async function Bpl(e){return await Ixt.xfs.mktempPromise(async t=>{let r=z_e.Configuration.create(t);return r.useWithSource(t,{enableMirror:!1,compressionLevel:0},t,{overwrite:!0}),await e(new z_e.Cache(t,{configuration:r,check:!1,immutable:!1}))})}});var Pos=H(OQr=>{"use strict";Object.defineProperty(OQr,"__esModule",{value:!0});var Oos=(Wa(),vi(Va)),Vos=sl(),PP=wn(),Wos=wn(),pL=wn(),tB=(vl(),vi(ng)),wpl=j6e(),Tpl=Oos.__importStar((BZ(),vi(vZ))),nF=Oos.__importStar($6e()),eje=class extends Vos.BaseCommand{constructor(){super(...arguments),this.json=tB.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.fixed=tB.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=tB.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=tB.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=tB.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.dev=tB.Option.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"}),this.peer=tB.Option.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"}),this.optional=tB.Option.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"}),this.preferDev=tB.Option.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"}),this.interactive=tB.Option.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"}),this.cached=tB.Option.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"}),this.mode=tB.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Tpl.isEnum(Wos.InstallMode)}),this.silent=tB.Option.Boolean("--silent",{hidden:!0}),this.packages=tB.Option.Rest()}async execute(){let t=await PP.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Wos.Project.find(t,this.context.cwd),a=await PP.Cache.find(t);if(!n)throw new Vos.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l||t.get("preferReuse"),f=nF.getModifier(this,r),I=[A?nF.Strategy.REUSE:void 0,nF.Strategy.PROJECT,this.cached?nF.Strategy.CACHE:void 0,nF.Strategy.LATEST].filter(J=>typeof J<"u"),C=l?1/0:1,b=J=>{let ae=pL.structUtils.tryParseDescriptor(J.slice(4));return ae?ae.range==="unknown"?pL.structUtils.makeDescriptor(ae,`jsr:${pL.structUtils.stringifyIdent(ae)}@latest`):pL.structUtils.makeDescriptor(ae,`jsr:${ae.range}`):null},E=await Promise.all(this.packages.map(async J=>{let ae=J.match(/^\.{0,2}\//)?await nF.extractDescriptorFromPath(J,{cwd:this.context.cwd,workspace:n}):J.startsWith("jsr:")?b(J):pL.structUtils.tryParseDescriptor(J),ne=J.match(/^(https?:|git@github)/);if(ne)throw new tB.UsageError(`It seems you are trying to add a package using a ${PP.formatUtils.pretty(t,`${ne[0]}...`,PP.formatUtils.Type.RANGE)} url; we now require package names to be explicitly specified. +Try running the command again with the package name prefixed: ${PP.formatUtils.pretty(t,"yarn add",PP.formatUtils.Type.CODE)} ${PP.formatUtils.pretty(t,pL.structUtils.makeDescriptor(pL.structUtils.makeIdent(null,"my-package"),`${ne[0]}...`),PP.formatUtils.Type.DESCRIPTOR)}`);if(!ae)throw new tB.UsageError(`The ${PP.formatUtils.pretty(t,J,PP.formatUtils.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let ce=Rpl(n,ae,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(ce.map(async ue=>{let de=await nF.getSuggestedDescriptors(ae,{project:r,workspace:n,cache:a,fixed:o,target:ue,modifier:f,strategies:I,maxResults:C});return{request:ae,suggestedDescriptors:de,target:ue}}))})).then(J=>J.flat()),N=await PP.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async J=>{for(let{request:ae,suggestedDescriptors:{suggestions:ne,rejections:ce}}of E)if(ne.filter(ue=>ue.descriptor!==null).length===0){let[ue]=ce;if(typeof ue>"u")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?J.reportError(PP.MessageName.CANT_SUGGEST_RESOLUTIONS,`${pL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range`):J.reportError(PP.MessageName.CANT_SUGGEST_RESOLUTIONS,`${pL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),J.reportSeparator(),J.reportExceptionOnce(ue)}});if(N.hasErrors())return N.exitCode();let B=!1,F=[],Q=[];for(let{suggestedDescriptors:{suggestions:J},target:ae}of E){let ne,ce=J.filter(be=>be.descriptor!==null),fe=ce[0].descriptor,ue=ce.every(be=>pL.structUtils.areDescriptorsEqual(be.descriptor,fe));ce.length===1||ue?ne=fe:(B=!0,{answer:ne}=await(0,wpl.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:J.map(({descriptor:be,name:Se,reason:De})=>be?{name:Se,hint:De,descriptor:be}:{name:Se,hint:De,disabled:!0}),onCancel:()=>process.exit(130),result(be){return this.find(be,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let de=n.manifest[ae].get(ne.identHash);(typeof de>"u"||de.descriptorHash!==ne.descriptorHash)&&(n.manifest[ae].set(ne.identHash,ne),this.optional&&(ae==="dependencies"?n.manifest.ensureDependencyMeta({...ne,range:"unknown"}).optional=!0:ae==="peerDependencies"&&(n.manifest.ensurePeerDependencyMeta({...ne,range:"unknown"}).optional=!0)),typeof de>"u"?F.push([n,ae,ne,I]):Q.push([n,ae,de,ne]))}return await t.triggerMultipleHooks(J=>J.afterWorkspaceDependencyAddition,F),await t.triggerMultipleHooks(J=>J.afterWorkspaceDependencyReplacement,Q),B&&this.context.stdout.write(` +`),await r.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:a,mode:this.mode})}};eje.paths=[["add"]];eje.usage=tB.Command.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"],["Add a local package (gzipped tarball format) to the current workspace","$0 add local-package-name@file:../path/to/local-package-name-v0.1.2.tgz"]]});OQr.default=eje;function Rpl(e,t,{dev:r,peer:n,preferDev:a,optional:o}){let l=e.manifest[nF.Target.REGULAR].has(t.identHash),A=e.manifest[nF.Target.DEVELOPMENT].has(t.identHash),f=e.manifest[nF.Target.PEER].has(t.identHash);if((r||n)&&l)throw new tB.UsageError(`Package "${pL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!n&&f)throw new tB.UsageError(`Package "${pL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(o&&A)throw new tB.UsageError(`Package "${pL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(o&&!n&&f)throw new tB.UsageError(`Package "${pL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||a)&&o)throw new tB.UsageError(`Package "${pL.structUtils.prettyIdent(e.project.configuration,t)}" cannot simultaneously be a dev dependency and an optional dependency`);let I=[];return n&&I.push(nF.Target.PEER),(r||a)&&I.push(nF.Target.DEVELOPMENT),o&&I.push(nF.Target.REGULAR),I.length>0?I:A?[nF.Target.DEVELOPMENT]:f?[nF.Target.PEER]:[nF.Target.REGULAR]}});var Mos=H(MQr=>{"use strict";Object.defineProperty(MQr,"__esModule",{value:!0});var Npl=sl(),PQr=wn(),tje=wn(),rje=(vl(),vi(ng)),nje=class extends Npl.BaseCommand{constructor(){super(...arguments),this.verbose=rje.Option.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"}),this.json=rje.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.name=rje.Option.String({required:!1})}async execute(){let t=await PQr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await PQr.Project.find(t,this.context.cwd);if(await r.restoreInstallState(),this.name){let l=(await tje.scriptUtils.getPackageAccessibleBinaries(n,{project:r})).get(this.name);if(!l)throw new rje.UsageError(`Couldn't find a binary named "${this.name}" for package "${tje.structUtils.prettyLocator(t,n)}"`);let[,A]=l;return this.context.stdout.write(`${A} +`),0}return(await PQr.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await tje.scriptUtils.getPackageAccessibleBinaries(n,{project:r}),f=Array.from(l.keys()).reduce((I,C)=>Math.max(I,C.length),0);for(let[I,[C,b]]of l)o.reportJson({name:I,source:tje.structUtils.stringifyIdent(C),path:b});if(this.verbose)for(let[I,[C]]of l)o.reportInfo(null,`${I.padEnd(f," ")} ${tje.structUtils.prettyLocator(t,C)}`);else for(let I of l.keys())o.reportInfo(null,I)})).exitCode()}};nje.paths=[["bin"]];nje.usage=rje.Command.Usage({description:"get the path to a binary script",details:` When used without arguments, this command will print the list of all the binaries available in the current workspace. Adding the \`-v,--verbose\` flag will cause the output to contain both the binary name and the locator of the package that provides the binary. When an argument is specified, this command will just print the path to the binary on the standard output and exit. Note that the reported path may be stored within a zip archive. - `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});ZQr.default=ije});var Hos=H(VQr=>{"use strict";Object.defineProperty(VQr,"__esModule",{value:!0});var Gdl=dl(),LQr=mn(),Mos=Io(),hxt=(Rl(),vi(ng)),sje=class extends Gdl.BaseCommand{constructor(){super(...arguments),this.mirror=hxt.Option.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"}),this.all=hxt.Option.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let t=await LQr.Configuration.find(this.context.cwd,this.context.plugins);if(!t.get("enableCacheClean"))throw new hxt.UsageError("Cache cleaning is currently disabled. To enable it, set `enableCacheClean: true` in your configuration file. Note: Cache cleaning is typically not required and should be avoided when using Zero-Installs.");let r=await LQr.Cache.find(t);return(await LQr.StreamReport.start({configuration:t,stdout:this.context.stdout},async()=>{let a=(this.all||this.mirror)&&r.mirrorCwd!==null,o=!this.mirror;a&&(await Mos.xfs.removePromise(r.mirrorCwd),await t.triggerHook(l=>l.cleanGlobalArtifacts,t)),o&&await Mos.xfs.removePromise(r.cwd)})).exitCode()}};sje.paths=[["cache","clean"],["cache","clear"]];sje.usage=hxt.Command.Usage({description:"remove the shared cache files",details:` + `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});MQr.default=nje});var Yos=H(YQr=>{"use strict";Object.defineProperty(YQr,"__esModule",{value:!0});var Dpl=sl(),HQr=wn(),Hos=No(),hxt=(vl(),vi(ng)),ije=class extends Dpl.BaseCommand{constructor(){super(...arguments),this.mirror=hxt.Option.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"}),this.all=hxt.Option.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let t=await HQr.Configuration.find(this.context.cwd,this.context.plugins);if(!t.get("enableCacheClean"))throw new hxt.UsageError("Cache cleaning is currently disabled. To enable it, set `enableCacheClean: true` in your configuration file. Note: Cache cleaning is typically not required and should be avoided when using Zero-Installs.");let r=await HQr.Cache.find(t);return(await HQr.StreamReport.start({configuration:t,stdout:this.context.stdout},async()=>{let a=(this.all||this.mirror)&&r.mirrorCwd!==null,o=!this.mirror;a&&(await Hos.xfs.removePromise(r.mirrorCwd),await t.triggerHook(l=>l.cleanGlobalArtifacts,t)),o&&await Hos.xfs.removePromise(r.cwd)})).exitCode()}};ije.paths=[["cache","clean"],["cache","clear"]];ije.usage=hxt.Command.Usage({description:"remove the shared cache files",details:` This command will remove all the files from the cache. - `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});VQr.default=sje});var Qos=H(OQr=>{"use strict";Object.defineProperty(OQr,"__esModule",{value:!0});var Fdl=dl(),WQr=mn(),uGe=(Rl(),vi(ng)),Zdl=WO(),Yos=Et("util"),oje=class extends Fdl.BaseCommand{constructor(){super(...arguments),this.why=uGe.Option.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"}),this.json=uGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.unsafe=uGe.Option.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"}),this.name=uGe.Option.String()}async execute(){let t=await WQr.Configuration.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*/,"");if(typeof t.settings.get(r)>"u")throw new uGe.UsageError(`Couldn't find a configuration settings named "${r}"`);let o=t.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),l=WQr.miscUtils.convertMapsToIndexableObjects(o),A=n?(0,Zdl.get)(l,n):l,f=await WQr.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async I=>{I.reportJson(A)});if(!this.json){if(typeof A=="string")return this.context.stdout.write(`${A} -`),f.exitCode();Yos.inspect.styles.name="cyan",this.context.stdout.write(`${(0,Yos.inspect)(A,{depth:1/0,colors:t.get("enableColors"),compact:!1})} -`)}return f.exitCode()}};oje.paths=[["config","get"]];oje.usage=uGe.Command.Usage({description:"read a configuration settings",details:` + `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});YQr.default=ije});var Xos=H(XQr=>{"use strict";Object.defineProperty(XQr,"__esModule",{value:!0});var kpl=sl(),QQr=wn(),uGe=(vl(),vi(ng)),xpl=PO(),Qos=Et("util"),sje=class extends kpl.BaseCommand{constructor(){super(...arguments),this.why=uGe.Option.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"}),this.json=uGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.unsafe=uGe.Option.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"}),this.name=uGe.Option.String()}async execute(){let t=await QQr.Configuration.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*/,"");if(typeof t.settings.get(r)>"u")throw new uGe.UsageError(`Couldn't find a configuration settings named "${r}"`);let o=t.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),l=QQr.miscUtils.convertMapsToIndexableObjects(o),A=n?(0,xpl.get)(l,n):l,f=await QQr.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async I=>{I.reportJson(A)});if(!this.json){if(typeof A=="string")return this.context.stdout.write(`${A} +`),f.exitCode();Qos.inspect.styles.name="cyan",this.context.stdout.write(`${(0,Qos.inspect)(A,{depth:1/0,colors:t.get("enableColors"),compact:!1})} +`)}return f.exitCode()}};sje.paths=[["config","get"]];sje.usage=uGe.Command.Usage({description:"read a configuration settings",details:` This command will print a configuration setting. Secrets (such as tokens) will be redacted from the output by default. If this behavior isn't desired, set the \`--no-redacted\` to get the untransformed value. - `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});OQr.default=oje});var Jos=H(MQr=>{"use strict";Object.defineProperty(MQr,"__esModule",{value:!0});var Ldl=dl(),q_e=mn(),Eue=(Rl(),vi(ng)),PQr=WO(),Xos=Et("util"),aje=class extends Ldl.BaseCommand{constructor(){super(...arguments),this.json=Eue.Option.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"}),this.home=Eue.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=Eue.Option.String(),this.value=Eue.Option.String()}async execute(){let t=await q_e.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new Eue.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new Eue.UsageError(`Couldn't find a configuration settings named "${n}"`);if(n==="enableStrictSettings")throw new Eue.UsageError("This setting only affects the file it's in, and thus cannot be set from the CLI");let l=this.json?JSON.parse(this.value):this.value;await(this.home?N=>q_e.Configuration.updateHomeConfiguration(N):N=>q_e.Configuration.updateConfiguration(r(),N))(N=>{if(a){let B=(0,PQr.cloneDeep)(N);return(0,PQr.set)(B,this.name,l),B}else return{...N,[n]:l}});let I=(await q_e.Configuration.find(this.context.cwd,this.context.plugins)).getSpecial(n,{hideSecrets:!0,getNativePaths:!0}),C=q_e.miscUtils.convertMapsToIndexableObjects(I),b=a?(0,PQr.get)(C,a):C;return(await q_e.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async N=>{Xos.inspect.styles.name="cyan",N.reportInfo(q_e.MessageName.UNNAMED,`Successfully set ${this.name} to ${(0,Xos.inspect)(b,{depth:1/0,colors:t.get("enableColors"),compact:!1})}`)})).exitCode()}};aje.paths=[["config","set"]];aje.usage=Eue.Command.Usage({description:"change a configuration settings",details:` + `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});XQr.default=sje});var Uos=H(UQr=>{"use strict";Object.defineProperty(UQr,"__esModule",{value:!0});var Gpl=sl(),q_e=wn(),Sue=(vl(),vi(ng)),JQr=PO(),Jos=Et("util"),oje=class extends Gpl.BaseCommand{constructor(){super(...arguments),this.json=Sue.Option.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"}),this.home=Sue.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=Sue.Option.String(),this.value=Sue.Option.String()}async execute(){let t=await q_e.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new Sue.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new Sue.UsageError(`Couldn't find a configuration settings named "${n}"`);if(n==="enableStrictSettings")throw new Sue.UsageError("This setting only affects the file it's in, and thus cannot be set from the CLI");let l=this.json?JSON.parse(this.value):this.value;await(this.home?N=>q_e.Configuration.updateHomeConfiguration(N):N=>q_e.Configuration.updateConfiguration(r(),N))(N=>{if(a){let B=(0,JQr.cloneDeep)(N);return(0,JQr.set)(B,this.name,l),B}else return{...N,[n]:l}});let I=(await q_e.Configuration.find(this.context.cwd,this.context.plugins)).getSpecial(n,{hideSecrets:!0,getNativePaths:!0}),C=q_e.miscUtils.convertMapsToIndexableObjects(I),b=a?(0,JQr.get)(C,a):C;return(await q_e.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async N=>{Jos.inspect.styles.name="cyan",N.reportInfo(q_e.MessageName.UNNAMED,`Successfully set ${this.name} to ${(0,Jos.inspect)(b,{depth:1/0,colors:t.get("enableColors"),compact:!1})}`)})).exitCode()}};oje.paths=[["config","set"]];oje.usage=Sue.Command.Usage({description:"change a configuration settings",details:` This command will set a configuration setting. When used without the \`--json\` flag, it can only set a simple configuration setting (a string, a number, or a boolean). When used with the \`--json\` flag, it can set both simple and complex configuration settings, including Arrays and Objects. - `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});MQr.default=aje});var Uos=H(YQr=>{"use strict";Object.defineProperty(YQr,"__esModule",{value:!0});var Vdl=dl(),gGe=mn(),cje=(Rl(),vi(ng)),HQr=WO(),lje=class extends Vdl.BaseCommand{constructor(){super(...arguments),this.home=cje.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=cje.Option.String()}async execute(){let t=await gGe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new cje.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new cje.UsageError(`Couldn't find a configuration settings named "${n}"`);let l=this.home?f=>gGe.Configuration.updateHomeConfiguration(f):f=>gGe.Configuration.updateConfiguration(r(),f);return(await gGe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async f=>{let I=!1;await l(C=>{if(!(0,HQr.has)(C,this.name))return f.reportWarning(gGe.MessageName.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),I=!0,C;let b=a?(0,HQr.cloneDeep)(C):{...C};return(0,HQr.unset)(b,this.name),b}),I||f.reportInfo(gGe.MessageName.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};lje.paths=[["config","unset"]];lje.usage=cje.Command.Usage({description:"unset a configuration setting",details:` + `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});UQr.default=oje});var Kos=H(jQr=>{"use strict";Object.defineProperty(jQr,"__esModule",{value:!0});var Fpl=sl(),gGe=wn(),aje=(vl(),vi(ng)),KQr=PO(),cje=class extends Fpl.BaseCommand{constructor(){super(...arguments),this.home=aje.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=aje.Option.String()}async execute(){let t=await gGe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new aje.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new aje.UsageError(`Couldn't find a configuration settings named "${n}"`);let l=this.home?f=>gGe.Configuration.updateHomeConfiguration(f):f=>gGe.Configuration.updateConfiguration(r(),f);return(await gGe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async f=>{let I=!1;await l(C=>{if(!(0,KQr.has)(C,this.name))return f.reportWarning(gGe.MessageName.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),I=!0,C;let b=a?(0,KQr.cloneDeep)(C):{...C};return(0,KQr.unset)(b,this.name),b}),I||f.reportInfo(gGe.MessageName.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};cje.paths=[["config","unset"]];cje.usage=aje.Command.Usage({description:"unset a configuration setting",details:` This command will unset a configuration setting. - `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});YQr.default=lje});var Kos=H(XQr=>{"use strict";Object.defineProperty(XQr,"__esModule",{value:!0});var Wdl=dl(),gx=mn(),Odl=Io(),AGe=(Rl(),vi(ng)),QQr=Et("util"),uje=class extends Wdl.BaseCommand{constructor(){super(...arguments),this.noDefaults=AGe.Option.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"}),this.json=AGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.verbose=AGe.Option.Boolean("-v,--verbose",{hidden:!0}),this.why=AGe.Option.Boolean("--why",{hidden:!0}),this.names=AGe.Option.Rest()}async execute(){let t=await gx.Configuration.find(this.context.cwd,this.context.plugins,{strict:!1}),r=await(0,gx.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(r!==null)return r;let n=this.names.length>0?[...new Set(this.names)].sort():[...t.settings.keys()].sort(),a,o=await gx.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async l=>{if(t.invalid.size>0&&!this.json){for(let[A,f]of t.invalid)l.reportError(gx.MessageName.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${A}" in ${f}`);l.reportSeparator()}if(this.json)for(let A of n){if(this.noDefaults&&!t.sources.has(A))continue;let f=t.settings.get(A);typeof f>"u"&&l.reportError(gx.MessageName.INVALID_CONFIGURATION_KEY,`No configuration key named "${A}"`);let I=t.getSpecial(A,{hideSecrets:!0,getNativePaths:!0}),C=t.sources.get(A)??"",b=C&&C[0]!=="<"?Odl.npath.fromPortablePath(C):C;l.reportJson({key:A,effective:I,source:b,...f})}else{let A={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},f={},I={children:f};for(let C of n){if(this.noDefaults&&!t.sources.has(C))continue;let b=t.settings.get(C),E=t.sources.get(C)??"",N=t.getSpecial(C,{hideSecrets:!0,getNativePaths:!0}),B={Description:{label:"Description",value:gx.formatUtils.tuple(gx.formatUtils.Type.MARKDOWN,{text:b.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:gx.formatUtils.tuple(E[0]==="<"?gx.formatUtils.Type.CODE:gx.formatUtils.Type.PATH,E)}};f[C]={value:gx.formatUtils.tuple(gx.formatUtils.Type.CODE,C),children:B};let F=(Q,J)=>{for(let[ae,ne]of J)if(ne instanceof Map){let ce={};Q[ae]={children:ce},F(ce,ne)}else Q[ae]={label:ae,value:gx.formatUtils.tuple(gx.formatUtils.Type.NO_HINT,(0,QQr.inspect)(ne,A))}};N instanceof Map?F(B,N):B.Value={label:"Value",value:gx.formatUtils.tuple(gx.formatUtils.Type.NO_HINT,(0,QQr.inspect)(N,A))}}n.length!==1&&(a=void 0),gx.treeUtils.emitTree(I,{configuration:t,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof a<"u"){let l=n[0],A=(0,QQr.inspect)(t.getSpecial(l,{hideSecrets:!0,getNativePaths:!0}),{colors:t.get("enableColors")});this.context.stdout.write(` + `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});jQr.default=cje});var jos=H(qQr=>{"use strict";Object.defineProperty(qQr,"__esModule",{value:!0});var Zpl=sl(),Ax=wn(),Lpl=No(),AGe=(vl(),vi(ng)),zQr=Et("util"),lje=class extends Zpl.BaseCommand{constructor(){super(...arguments),this.noDefaults=AGe.Option.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"}),this.json=AGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.verbose=AGe.Option.Boolean("-v,--verbose",{hidden:!0}),this.why=AGe.Option.Boolean("--why",{hidden:!0}),this.names=AGe.Option.Rest()}async execute(){let t=await Ax.Configuration.find(this.context.cwd,this.context.plugins,{strict:!1}),r=await(0,Ax.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(r!==null)return r;let n=this.names.length>0?[...new Set(this.names)].sort():[...t.settings.keys()].sort(),a,o=await Ax.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async l=>{if(t.invalid.size>0&&!this.json){for(let[A,f]of t.invalid)l.reportError(Ax.MessageName.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${A}" in ${f}`);l.reportSeparator()}if(this.json)for(let A of n){if(this.noDefaults&&!t.sources.has(A))continue;let f=t.settings.get(A);typeof f>"u"&&l.reportError(Ax.MessageName.INVALID_CONFIGURATION_KEY,`No configuration key named "${A}"`);let I=t.getSpecial(A,{hideSecrets:!0,getNativePaths:!0}),C=t.sources.get(A)??"",b=C&&C[0]!=="<"?Lpl.npath.fromPortablePath(C):C;l.reportJson({key:A,effective:I,source:b,...f})}else{let A={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},f={},I={children:f};for(let C of n){if(this.noDefaults&&!t.sources.has(C))continue;let b=t.settings.get(C),E=t.sources.get(C)??"",N=t.getSpecial(C,{hideSecrets:!0,getNativePaths:!0}),B={Description:{label:"Description",value:Ax.formatUtils.tuple(Ax.formatUtils.Type.MARKDOWN,{text:b.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:Ax.formatUtils.tuple(E[0]==="<"?Ax.formatUtils.Type.CODE:Ax.formatUtils.Type.PATH,E)}};f[C]={value:Ax.formatUtils.tuple(Ax.formatUtils.Type.CODE,C),children:B};let F=(Q,J)=>{for(let[ae,ne]of J)if(ne instanceof Map){let ce={};Q[ae]={children:ce},F(ce,ne)}else Q[ae]={label:ae,value:Ax.formatUtils.tuple(Ax.formatUtils.Type.NO_HINT,(0,zQr.inspect)(ne,A))}};N instanceof Map?F(B,N):B.Value={label:"Value",value:Ax.formatUtils.tuple(Ax.formatUtils.Type.NO_HINT,(0,zQr.inspect)(N,A))}}n.length!==1&&(a=void 0),Ax.treeUtils.emitTree(I,{configuration:t,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof a<"u"){let l=n[0],A=(0,zQr.inspect)(t.getSpecial(l,{hideSecrets:!0,getNativePaths:!0}),{colors:t.get("enableColors")});this.context.stdout.write(` `),this.context.stdout.write(`${A} -`)}return o.exitCode()}};uje.paths=[["config"]];uje.usage=AGe.Command.Usage({description:"display the current configuration",details:` +`)}return o.exitCode()}};lje.paths=[["config"]];lje.usage=AGe.Command.Usage({description:"display the current configuration",details:` This command prints the current active configuration settings. - `,examples:[["Print the active configuration settings","$0 config"]]});XQr.default=uje});var UQr=H(e0e=>{"use strict";Object.defineProperty(e0e,"__esModule",{value:!0});e0e.acceptedStrategies=e0e.Strategy=void 0;e0e.dedupe=Ydl;var Pdl=(Wa(),vi(Va)),$_e=mn(),xH=mn(),Mdl=Pdl.__importDefault(Tk()),JQr;(function(e){e.HIGHEST="highest"})(JQr||(e0e.Strategy=JQr={}));e0e.acceptedStrategies=new Set(Object.values(JQr));var Hdl={highest:async(e,t,{resolver:r,fetcher:n,resolveOptions:a,fetchOptions:o})=>{let l=new Map;for(let[f,I]of e.storedResolutions){let C=e.storedDescriptors.get(f);if(typeof C>"u")throw new Error(`Assertion failed: The descriptor (${f}) should have been registered`);$_e.miscUtils.getSetWithDefault(l,C.identHash).add(I)}let A=new Map($_e.miscUtils.mapAndFilter(e.storedDescriptors.values(),f=>xH.structUtils.isVirtualDescriptor(f)?$_e.miscUtils.mapAndFilter.skip:[f.descriptorHash,$_e.miscUtils.makeDeferred()]));for(let f of e.storedDescriptors.values()){let I=A.get(f.descriptorHash);if(typeof I>"u")throw new Error(`Assertion failed: The descriptor (${f.descriptorHash}) should have been registered`);let C=e.storedResolutions.get(f.descriptorHash);if(typeof C>"u")throw new Error(`Assertion failed: The resolution (${f.descriptorHash}) should have been registered`);let b=e.originalPackages.get(C);if(typeof b>"u")throw new Error(`Assertion failed: The package (${C}) should have been registered`);Promise.resolve().then(async()=>{let E=r.getResolutionDependencies(f,a),N=Object.fromEntries(await $_e.miscUtils.allSettledSafe(Object.entries(E).map(async([ne,ce])=>{let fe=A.get(ce.descriptorHash);if(typeof fe>"u")throw new Error(`Assertion failed: The descriptor (${ce.descriptorHash}) should have been registered`);let ue=await fe.promise;if(!ue)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[ne,ue.updatedPackage]})));if(t.length&&!Mdl.default.isMatch(xH.structUtils.stringifyIdent(f),t)||!r.shouldPersistResolution(b,a))return b;let B=l.get(f.identHash);if(typeof B>"u")throw new Error(`Assertion failed: The resolutions (${f.identHash}) should have been registered`);if(B.size===1)return b;let F=[...B].map(ne=>{let ce=e.originalPackages.get(ne);if(typeof ce>"u")throw new Error(`Assertion failed: The package (${ne}) should have been registered`);return ce}),Q=await r.getSatisfying(f,N,F,a),J=Q.locators?.[0];if(typeof J>"u"||!Q.sorted)return b;let ae=e.originalPackages.get(J.locatorHash);if(typeof ae>"u")throw new Error(`Assertion failed: The package (${J.locatorHash}) should have been registered`);return ae}).then(async E=>{let N=await e.preparePackage(E,{resolver:r,resolveOptions:a});I.resolve({descriptor:f,currentPackage:b,updatedPackage:E,resolvedPackage:N})}).catch(E=>{I.reject(E)})}return[...A.values()].map(f=>f.promise)}};async function Ydl(e,{strategy:t,patterns:r,cache:n,report:a}){let{configuration:o}=e,l=new $_e.ThrowReport,A=o.makeResolver(),f=o.makeFetcher(),I={cache:n,checksums:e.storedChecksums,fetcher:f,project:e,report:l,cacheOptions:{skipIntegrityCheck:!0}},C={project:e,resolver:A,report:l,fetchOptions:I};return await a.startTimerPromise("Deduplication step",async()=>{let b=Hdl[t],E=await b(e,r,{resolver:A,resolveOptions:C,fetcher:f,fetchOptions:I}),N=$_e.Report.progressViaCounter(E.length);await a.reportProgress(N);let B=0;await Promise.all(E.map(J=>J.then(ae=>{if(ae===null||ae.currentPackage.locatorHash===ae.updatedPackage.locatorHash)return;B++;let{descriptor:ne,currentPackage:ce,updatedPackage:fe}=ae;a.reportInfo(xH.MessageName.UNNAMED,`${xH.structUtils.prettyDescriptor(o,ne)} can be deduped from ${xH.structUtils.prettyLocator(o,ce)} to ${xH.structUtils.prettyLocator(o,fe)}`),a.reportJson({descriptor:xH.structUtils.stringifyDescriptor(ne),currentResolution:xH.structUtils.stringifyLocator(ce),updatedResolution:xH.structUtils.stringifyLocator(fe)}),e.storedResolutions.set(ne.descriptorHash,fe.locatorHash)}).finally(()=>N.tick())));let F;switch(B){case 0:F="No packages";break;case 1:F="One package";break;default:F=`${B} packages`}let Q=xH.formatUtils.pretty(o,t,xH.formatUtils.Type.CODE);return a.reportInfo(xH.MessageName.UNNAMED,`${F} can be deduped using the ${Q} strategy`),B})}});var qos=H(jQr=>{"use strict";Object.defineProperty(jQr,"__esModule",{value:!0});var zos=(Wa(),vi(Va)),Qdl=dl(),gje=mn(),dGe=(Rl(),vi(ng)),jos=zos.__importStar((vZ(),vi(SZ))),KQr=zos.__importStar(UQr()),Aje=class extends Qdl.BaseCommand{constructor(){super(...arguments),this.strategy=dGe.Option.String("-s,--strategy",KQr.Strategy.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:jos.isEnum(KQr.Strategy)}),this.check=dGe.Option.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"}),this.json=dGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.mode=dGe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:jos.isEnum(gje.InstallMode)}),this.patterns=dGe.Option.Rest()}async execute(){let t=await gje.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await gje.Project.find(t,this.context.cwd),n=await gje.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a=0,o=await gje.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout,json:this.json},async l=>{a=await KQr.dedupe(r,{strategy:this.strategy,patterns:this.patterns,cache:n,report:l})});return o.hasErrors()?o.exitCode():this.check?a?1:0:await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n,mode:this.mode})}};Aje.paths=[["dedupe"]];Aje.usage=dGe.Command.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});jQr.default=Aje});var $os=H(zQr=>{"use strict";Object.defineProperty(zQr,"__esModule",{value:!0});var Xdl=dl(),Jdl=mn(),Udl=(Rl(),vi(ng)),mxt=class extends Xdl.BaseCommand{async execute(){let{plugins:t}=await Jdl.Configuration.find(this.context.cwd,this.context.plugins),r=[];for(let l of t){let{commands:A}=l[1];if(A){let I=Udl.Cli.from(A).definitions();r.push([l[0],I])}}let n=this.cli.definitions(),a=(l,A)=>l.split(" ").slice(1).join()===A.split(" ").slice(1).join(),o=Tpr()["@yarnpkg/builder"].bundles.standard;for(let l of r){let A=l[1];for(let f of A)n.find(I=>a(I.path,f.path)).plugin={name:l[0],isDefault:o.includes(l[0])}}this.context.stdout.write(`${JSON.stringify(n,null,2)} -`)}};mxt.paths=[["--clipanion=definitions"]];zQr.default=mxt});var eas=H(qQr=>{"use strict";Object.defineProperty(qQr,"__esModule",{value:!0});var Kdl=dl(),Cxt=class extends Kdl.BaseCommand{async execute(){this.context.stdout.write(this.cli.usage(null))}};Cxt.paths=[["help"],["--help"],["-h"]];qQr.default=Cxt});var nas=H(eXr=>{"use strict";Object.defineProperty(eXr,"__esModule",{value:!0});var jdl=dl(),zdl=mn(),tas=Io(),ras=(Rl(),vi(ng)),$Qr=class extends jdl.BaseCommand{constructor(){super(...arguments),this.leadingArgument=ras.Option.String(),this.args=ras.Option.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!zdl.structUtils.tryParseIdent(this.leadingArgument)){let t=tas.ppath.resolve(this.context.cwd,tas.npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:t})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};eXr.default=$Qr});var ias=H(tXr=>{"use strict";Object.defineProperty(tXr,"__esModule",{value:!0});var qdl=dl(),$dl=mn(),_xt=class extends qdl.BaseCommand{async execute(){this.context.stdout.write(`${$dl.YarnVersion||""} -`)}};_xt.paths=[["-v"],["--version"]];tXr.default=_xt});var oas=H(nXr=>{"use strict";Object.defineProperty(nXr,"__esModule",{value:!0});var epl=dl(),sas=mn(),tpl=mn(),rXr=(Rl(),vi(ng)),dje=class extends epl.BaseCommand{constructor(){super(...arguments),this.commandName=rXr.Option.String(),this.args=rXr.Option.Proxy()}async execute(){let t=await sas.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await sas.Project.find(t,this.context.cwd);return await r.restoreInstallState(),await tpl.scriptUtils.executePackageShellcode(n,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};dje.paths=[["exec"]];dje.usage=rXr.Command.Usage({description:"execute a shell script",details:` + `,examples:[["Print the active configuration settings","$0 config"]]});qQr.default=lje});var eXr=H(e0e=>{"use strict";Object.defineProperty(e0e,"__esModule",{value:!0});e0e.acceptedStrategies=e0e.Strategy=void 0;e0e.dedupe=Ppl;var Vpl=(Wa(),vi(Va)),$_e=wn(),GH=wn(),Wpl=Vpl.__importDefault(Rk()),$Qr;(function(e){e.HIGHEST="highest"})($Qr||(e0e.Strategy=$Qr={}));e0e.acceptedStrategies=new Set(Object.values($Qr));var Opl={highest:async(e,t,{resolver:r,fetcher:n,resolveOptions:a,fetchOptions:o})=>{let l=new Map;for(let[f,I]of e.storedResolutions){let C=e.storedDescriptors.get(f);if(typeof C>"u")throw new Error(`Assertion failed: The descriptor (${f}) should have been registered`);$_e.miscUtils.getSetWithDefault(l,C.identHash).add(I)}let A=new Map($_e.miscUtils.mapAndFilter(e.storedDescriptors.values(),f=>GH.structUtils.isVirtualDescriptor(f)?$_e.miscUtils.mapAndFilter.skip:[f.descriptorHash,$_e.miscUtils.makeDeferred()]));for(let f of e.storedDescriptors.values()){let I=A.get(f.descriptorHash);if(typeof I>"u")throw new Error(`Assertion failed: The descriptor (${f.descriptorHash}) should have been registered`);let C=e.storedResolutions.get(f.descriptorHash);if(typeof C>"u")throw new Error(`Assertion failed: The resolution (${f.descriptorHash}) should have been registered`);let b=e.originalPackages.get(C);if(typeof b>"u")throw new Error(`Assertion failed: The package (${C}) should have been registered`);Promise.resolve().then(async()=>{let E=r.getResolutionDependencies(f,a),N=Object.fromEntries(await $_e.miscUtils.allSettledSafe(Object.entries(E).map(async([ne,ce])=>{let fe=A.get(ce.descriptorHash);if(typeof fe>"u")throw new Error(`Assertion failed: The descriptor (${ce.descriptorHash}) should have been registered`);let ue=await fe.promise;if(!ue)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[ne,ue.updatedPackage]})));if(t.length&&!Wpl.default.isMatch(GH.structUtils.stringifyIdent(f),t)||!r.shouldPersistResolution(b,a))return b;let B=l.get(f.identHash);if(typeof B>"u")throw new Error(`Assertion failed: The resolutions (${f.identHash}) should have been registered`);if(B.size===1)return b;let F=[...B].map(ne=>{let ce=e.originalPackages.get(ne);if(typeof ce>"u")throw new Error(`Assertion failed: The package (${ne}) should have been registered`);return ce}),Q=await r.getSatisfying(f,N,F,a),J=Q.locators?.[0];if(typeof J>"u"||!Q.sorted)return b;let ae=e.originalPackages.get(J.locatorHash);if(typeof ae>"u")throw new Error(`Assertion failed: The package (${J.locatorHash}) should have been registered`);return ae}).then(async E=>{let N=await e.preparePackage(E,{resolver:r,resolveOptions:a});I.resolve({descriptor:f,currentPackage:b,updatedPackage:E,resolvedPackage:N})}).catch(E=>{I.reject(E)})}return[...A.values()].map(f=>f.promise)}};async function Ppl(e,{strategy:t,patterns:r,cache:n,report:a}){let{configuration:o}=e,l=new $_e.ThrowReport,A=o.makeResolver(),f=o.makeFetcher(),I={cache:n,checksums:e.storedChecksums,fetcher:f,project:e,report:l,cacheOptions:{skipIntegrityCheck:!0}},C={project:e,resolver:A,report:l,fetchOptions:I};return await a.startTimerPromise("Deduplication step",async()=>{let b=Opl[t],E=await b(e,r,{resolver:A,resolveOptions:C,fetcher:f,fetchOptions:I}),N=$_e.Report.progressViaCounter(E.length);await a.reportProgress(N);let B=0;await Promise.all(E.map(J=>J.then(ae=>{if(ae===null||ae.currentPackage.locatorHash===ae.updatedPackage.locatorHash)return;B++;let{descriptor:ne,currentPackage:ce,updatedPackage:fe}=ae;a.reportInfo(GH.MessageName.UNNAMED,`${GH.structUtils.prettyDescriptor(o,ne)} can be deduped from ${GH.structUtils.prettyLocator(o,ce)} to ${GH.structUtils.prettyLocator(o,fe)}`),a.reportJson({descriptor:GH.structUtils.stringifyDescriptor(ne),currentResolution:GH.structUtils.stringifyLocator(ce),updatedResolution:GH.structUtils.stringifyLocator(fe)}),e.storedResolutions.set(ne.descriptorHash,fe.locatorHash)}).finally(()=>N.tick())));let F;switch(B){case 0:F="No packages";break;case 1:F="One package";break;default:F=`${B} packages`}let Q=GH.formatUtils.pretty(o,t,GH.formatUtils.Type.CODE);return a.reportInfo(GH.MessageName.UNNAMED,`${F} can be deduped using the ${Q} strategy`),B})}});var $os=H(rXr=>{"use strict";Object.defineProperty(rXr,"__esModule",{value:!0});var qos=(Wa(),vi(Va)),Mpl=sl(),uje=wn(),dGe=(vl(),vi(ng)),zos=qos.__importStar((BZ(),vi(vZ))),tXr=qos.__importStar(eXr()),gje=class extends Mpl.BaseCommand{constructor(){super(...arguments),this.strategy=dGe.Option.String("-s,--strategy",tXr.Strategy.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:zos.isEnum(tXr.Strategy)}),this.check=dGe.Option.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"}),this.json=dGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.mode=dGe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:zos.isEnum(uje.InstallMode)}),this.patterns=dGe.Option.Rest()}async execute(){let t=await uje.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await uje.Project.find(t,this.context.cwd),n=await uje.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a=0,o=await uje.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout,json:this.json},async l=>{a=await tXr.dedupe(r,{strategy:this.strategy,patterns:this.patterns,cache:n,report:l})});return o.hasErrors()?o.exitCode():this.check?a?1:0:await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n,mode:this.mode})}};gje.paths=[["dedupe"]];gje.usage=dGe.Command.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});rXr.default=gje});var eas=H(nXr=>{"use strict";Object.defineProperty(nXr,"__esModule",{value:!0});var Hpl=sl(),Ypl=wn(),Qpl=(vl(),vi(ng)),mxt=class extends Hpl.BaseCommand{async execute(){let{plugins:t}=await Ypl.Configuration.find(this.context.cwd,this.context.plugins),r=[];for(let l of t){let{commands:A}=l[1];if(A){let I=Qpl.Cli.from(A).definitions();r.push([l[0],I])}}let n=this.cli.definitions(),a=(l,A)=>l.split(" ").slice(1).join()===A.split(" ").slice(1).join(),o=Tpr()["@yarnpkg/builder"].bundles.standard;for(let l of r){let A=l[1];for(let f of A)n.find(I=>a(I.path,f.path)).plugin={name:l[0],isDefault:o.includes(l[0])}}this.context.stdout.write(`${JSON.stringify(n,null,2)} +`)}};mxt.paths=[["--clipanion=definitions"]];nXr.default=mxt});var tas=H(iXr=>{"use strict";Object.defineProperty(iXr,"__esModule",{value:!0});var Xpl=sl(),Cxt=class extends Xpl.BaseCommand{async execute(){this.context.stdout.write(this.cli.usage(null))}};Cxt.paths=[["help"],["--help"],["-h"]];iXr.default=Cxt});var ias=H(oXr=>{"use strict";Object.defineProperty(oXr,"__esModule",{value:!0});var Jpl=sl(),Upl=wn(),ras=No(),nas=(vl(),vi(ng)),sXr=class extends Jpl.BaseCommand{constructor(){super(...arguments),this.leadingArgument=nas.Option.String(),this.args=nas.Option.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!Upl.structUtils.tryParseIdent(this.leadingArgument)){let t=ras.ppath.resolve(this.context.cwd,ras.npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:t})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};oXr.default=sXr});var sas=H(aXr=>{"use strict";Object.defineProperty(aXr,"__esModule",{value:!0});var Kpl=sl(),jpl=wn(),_xt=class extends Kpl.BaseCommand{async execute(){this.context.stdout.write(`${jpl.YarnVersion||""} +`)}};_xt.paths=[["-v"],["--version"]];aXr.default=_xt});var aas=H(lXr=>{"use strict";Object.defineProperty(lXr,"__esModule",{value:!0});var zpl=sl(),oas=wn(),qpl=wn(),cXr=(vl(),vi(ng)),Aje=class extends zpl.BaseCommand{constructor(){super(...arguments),this.commandName=cXr.Option.String(),this.args=cXr.Option.Proxy()}async execute(){let t=await oas.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await oas.Project.find(t,this.context.cwd);return await r.restoreInstallState(),await qpl.scriptUtils.executePackageShellcode(n,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};Aje.paths=[["exec"]];Aje.usage=cXr.Command.Usage({description:"execute a shell script",details:` This command simply executes a shell script within the context of the root directory of the active workspace using the portable shell. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). - `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});nXr.default=dje});var uas=H(fje=>{"use strict";Object.defineProperty(fje,"__esModule",{value:!0});fje.explainPeerRequirement=cas;fje.explainPeerRequirements=las;var rpl=(Wa(),vi(Va)),npl=dl(),jd=mn(),aas=(Rl(),vi(ng)),iXr=rpl.__importStar((vZ(),vi(SZ))),pje=class extends npl.BaseCommand{constructor(){super(...arguments),this.hash=aas.Option.String({required:!1,validator:iXr.cascade(iXr.isString(),[iXr.matchesRegExp(/^p[0-9a-f]{6}$/)])})}async execute(){let t=await jd.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await jd.Project.find(t,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash<"u"?await cas(this.hash,r,{stdout:this.context.stdout}):await las(r,{stdout:this.context.stdout})}};pje.paths=[["explain","peer-requirements"]];pje.usage=aas.Command.Usage({description:"explain a set of peer requirements",details:` + `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});lXr.default=Aje});var gas=H(pje=>{"use strict";Object.defineProperty(pje,"__esModule",{value:!0});pje.explainPeerRequirement=las;pje.explainPeerRequirements=uas;var $pl=(Wa(),vi(Va)),efl=sl(),jd=wn(),cas=(vl(),vi(ng)),uXr=$pl.__importStar((BZ(),vi(vZ))),dje=class extends efl.BaseCommand{constructor(){super(...arguments),this.hash=cas.Option.String({required:!1,validator:uXr.cascade(uXr.isString(),[uXr.matchesRegExp(/^p[0-9a-f]{6}$/)])})}async execute(){let t=await jd.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await jd.Project.find(t,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash<"u"?await las(this.hash,r,{stdout:this.context.stdout}):await uas(r,{stdout:this.context.stdout})}};dje.paths=[["explain","peer-requirements"]];dje.usage=cas.Command.Usage({description:"explain a set of peer requirements",details:` A peer requirement represents all peer requests that a subject must satisfy when providing a requested package to requesters. When the hash argument is specified, this command prints a detailed explanation of the peer requirement corresponding to the hash and whether it is satisfied or not. @@ -1314,35 +1314,35 @@ Try running the command again with the package name prefixed: ${WP.formatUtils.p When used without arguments, this command lists all peer requirements and the corresponding hash that can be used to get detailed information about a given requirement. **Note:** A hash is a seven-letter code consisting of the letter 'p' followed by six characters that can be obtained from peer dependency warnings or from the list of all peer requirements(\`yarn explain peer-requirements\`). - `,examples:[["Explain the corresponding peer requirement for a hash","$0 explain peer-requirements p1a4ed"],["List all peer requirements","$0 explain peer-requirements"]]});fje.default=pje;async function cas(e,t,r){let n=t.peerRequirementNodes.get(e);if(typeof n>"u")throw new Error(`No peerDependency requirements found for hash: "${e}"`);let a=new Set,o=f=>a.has(f.requester.locatorHash)?{value:jd.formatUtils.tuple(jd.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:f.children.size>0?[{value:jd.formatUtils.tuple(jd.formatUtils.Type.NO_HINT,"...")}]:[]}:(a.add(f.requester.locatorHash),{value:jd.formatUtils.tuple(jd.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:Object.fromEntries(Array.from(f.children.values(),I=>[jd.structUtils.stringifyLocator(I.requester),o(I)]))}),l=t.peerWarnings.find(f=>f.hash===e);return(await jd.StreamReport.start({configuration:t.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async f=>{let I=jd.formatUtils.mark(t.configuration),C=l?I.Cross:I.Check;if(f.reportInfo(jd.MessageName.UNNAMED,`Package ${jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)} is requested to provide ${jd.formatUtils.pretty(t.configuration,n.ident,jd.formatUtils.Type.IDENT)} by its descendants`),f.reportSeparator(),f.reportInfo(jd.MessageName.UNNAMED,jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)),jd.treeUtils.emitTree({children:Object.fromEntries(Array.from(n.requests.values(),b=>[jd.structUtils.stringifyLocator(b.requester),o(b)]))},{configuration:t.configuration,stdout:r.stdout,json:!1}),f.reportSeparator(),n.provided.range==="missing:"){let b=l?"":" , but all peer requests are optional";f.reportInfo(jd.MessageName.UNNAMED,`${C} Package ${jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)} does not provide ${jd.formatUtils.pretty(t.configuration,n.ident,jd.formatUtils.Type.IDENT)}${b}.`)}else{let b=t.storedResolutions.get(n.provided.descriptorHash);if(!b)throw new Error("Assertion failed: Expected the descriptor to be registered");let E=t.storedPackages.get(b);if(!E)throw new Error("Assertion failed: Expected the package to be registered");f.reportInfo(jd.MessageName.UNNAMED,`${C} Package ${jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)} provides ${jd.formatUtils.pretty(t.configuration,n.ident,jd.formatUtils.Type.IDENT)} with version ${jd.structUtils.prettyReference(t.configuration,E.version??"0.0.0")}, ${l?"which does not satisfy all requests.":"which satisfies all requests"}`),l?.type===jd.PeerWarningType.NodeNotCompatible&&(l.range?f.reportInfo(jd.MessageName.UNNAMED,` The combined requested range is ${jd.formatUtils.pretty(t.configuration,l.range,jd.formatUtils.Type.RANGE)}`):f.reportInfo(jd.MessageName.UNNAMED," Unfortunately, the requested ranges have no overlap"))}})).exitCode()}async function las(e,t){return(await jd.StreamReport.start({configuration:e.configuration,stdout:t.stdout,includeFooter:!1,includePrefix:!1},async n=>{let a=jd.formatUtils.mark(e.configuration),o=jd.miscUtils.sortMap(e.peerRequirementNodes,[([,l])=>jd.structUtils.stringifyLocator(l.subject),([,l])=>jd.structUtils.stringifyIdent(l.ident)]);for(let[,l]of o.values()){if(!l.root)continue;let A=e.peerWarnings.find(C=>C.hash===l.hash),f=[...jd.structUtils.allPeerRequests(l)],I;if(f.length>2?I=` and ${f.length-1} other dependencies`:f.length===2?I=" and 1 other dependency":I="",l.provided.range!=="missing:"){let C=e.storedResolutions.get(l.provided.descriptorHash);if(!C)throw new Error("Assertion failed: Expected the resolution to have been registered");let b=e.storedPackages.get(C);if(!b)throw new Error("Assertion failed: Expected the provided package to have been registered");let E=`${jd.formatUtils.pretty(e.configuration,l.hash,jd.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${jd.structUtils.prettyLocator(e.configuration,l.subject)} provides ${jd.structUtils.prettyLocator(e.configuration,b)} to ${jd.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(jd.MessageName.UNNAMED,E):n.reportInfo(jd.MessageName.UNNAMED,E)}else{let C=`${jd.formatUtils.pretty(e.configuration,l.hash,jd.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${jd.structUtils.prettyLocator(e.configuration,l.subject)} doesn't provide ${jd.structUtils.prettyIdent(e.configuration,l.ident)} to ${jd.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(jd.MessageName.UNNAMED,C):n.reportInfo(jd.MessageName.UNNAMED,C)}}})).exitCode()}});var bxt=H(pGe=>{"use strict";Object.defineProperty(pGe,"__esModule",{value:!0});pGe.resolveRange=gas;pGe.resolveTag=yxt;pGe.setVersion=Aas;var ipl=(Wa(),vi(Va)),spl=dl(),nF=mn(),rB=mn(),tB=Io(),Sue=(Rl(),vi(ng)),opl=ipl.__importDefault(jC()),Ije=class extends spl.BaseCommand{constructor(){super(...arguments),this.useYarnPath=Sue.Option.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"}),this.onlyIfNeeded=Sue.Option.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"}),this.version=Sue.Option.String()}async execute(){let t=await nF.Configuration.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&t.get("yarnPath")){let l=t.sources.get("yarnPath");if(!l)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let A=t.projectCwd??t.startingCwd;if(tB.ppath.contains(A,l))return 0}let r=()=>{if(typeof nF.YarnVersion>"u")throw new Sue.UsageError("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},n,a=(l,A)=>({version:A,url:l.replace(/\{\}/g,A)});if(this.version==="self")n={url:r(),version:nF.YarnVersion??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await yxt(t,"stable"));else if(this.version==="canary")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await yxt(t,"canary"));else if(this.version==="classic")n={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))n={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||tB.npath.isAbsolute(this.version))n={url:`file://${tB.ppath.resolve(tB.npath.toPortablePath(this.version))}`,version:"file"};else if(rB.semverUtils.satisfiesWithPrereleases(this.version,">=2.0.0"))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(rB.semverUtils.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))n=a("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(rB.semverUtils.validRange(this.version))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await gas(t,this.version));else throw new Sue.UsageError(`Invalid version descriptor "${this.version}"`);return(await nF.StreamReport.start({configuration:t,stdout:this.context.stdout,includeLogs:!this.context.quiet},async l=>{let A=async()=>{let f="file://";return n.url.startsWith(f)?(l.reportInfo(nF.MessageName.UNNAMED,`Retrieving ${rB.formatUtils.pretty(t,n.url,rB.formatUtils.Type.PATH)}`),await tB.xfs.readFilePromise(n.url.slice(f.length))):(l.reportInfo(nF.MessageName.UNNAMED,`Downloading ${rB.formatUtils.pretty(t,n.url,rB.formatUtils.Type.URL)}`),await rB.httpUtils.get(n.url,{configuration:t}))};await Aas(t,n.version,A,{report:l,useYarnPath:this.useYarnPath})})).exitCode()}};Ije.paths=[["set","version"]];Ije.usage=Sue.Command.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting different behavior.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});pGe.default=Ije;async function gas(e,t){let n=(await rB.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0})).tags.filter(a=>rB.semverUtils.satisfiesWithPrereleases(a,t));if(n.length===0)throw new Sue.UsageError(`No matching release found for range ${rB.formatUtils.pretty(e,t,rB.formatUtils.Type.RANGE)}.`);return n[0]}async function yxt(e,t){let r=await rB.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0});if(!r.latest[t])throw new Sue.UsageError(`Tag ${rB.formatUtils.pretty(e,t,rB.formatUtils.Type.RANGE)} not found`);return r.latest[t]}async function Aas(e,t,r,{report:n,useYarnPath:a}){let o,l=async()=>(typeof o>"u"&&(o=await r()),o);if(t===null){let ne=await l();await tB.xfs.mktempPromise(async ce=>{let fe=tB.ppath.join(ce,"yarn.cjs");await tB.xfs.writeFilePromise(fe,ne);let{stdout:ue}=await rB.execUtils.execvp(process.execPath,[tB.npath.fromPortablePath(fe),"--version"],{cwd:ce,env:{...e.env,YARN_IGNORE_PATH:"1"}});if(t=ue.trim(),!opl.default.valid(t))throw new Error(`Invalid semver version. ${rB.formatUtils.pretty(e,"yarn --version",rB.formatUtils.Type.CODE)} returned: -${t}`)})}let A=e.projectCwd??e.startingCwd,f=tB.ppath.resolve(A,".yarn/releases"),I=tB.ppath.resolve(f,`yarn-${t}.mjs`),C=tB.ppath.relative(e.startingCwd,I),b=rB.miscUtils.isTaggedYarnVersion(t),E=e.get("yarnPath"),N=!b,B=N||!!E||!!a;if(a===!1){if(N)throw new nF.ReportError(nF.MessageName.UNNAMED,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");B=!1}else!B&&!process.env.COREPACK_ROOT&&(n.reportWarning(nF.MessageName.UNNAMED,`You don't seem to have ${rB.formatUtils.applyHyperlink(e,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${rB.formatUtils.applyHyperlink(e,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),B=!0);if(B){let ne=await l();n.reportInfo(nF.MessageName.UNNAMED,`Saving the new release in ${rB.formatUtils.pretty(e,C,"magenta")}`),await tB.xfs.removePromise(tB.ppath.dirname(I)),await tB.xfs.mkdirPromise(tB.ppath.dirname(I),{recursive:!0}),await tB.xfs.writeFilePromise(I,ne,{mode:493}),await nF.Configuration.updateConfiguration(A,{yarnPath:tB.ppath.relative(A,I)})}else await tB.xfs.removePromise(tB.ppath.dirname(I)),await nF.Configuration.updateConfiguration(A,{yarnPath:nF.Configuration.deleteProperty});let F=await nF.Manifest.tryFind(A)||new nF.Manifest;F.packageManager=`yarn@${b?t:await yxt(e,"stable")}`;let Q={};F.exportTo(Q);let J=tB.ppath.join(A,nF.Manifest.fileName),ae=`${JSON.stringify(Q,null,F.indent)} -`;return await tB.xfs.changeFilePromise(J,ae,{automaticNewlines:!0}),{bundleVersion:t}}});var fas=H(Ext=>{"use strict";Object.defineProperty(Ext,"__esModule",{value:!0});Ext.getErrorCodeDetails=pas;var apl=(Wa(),vi(Va)),cpl=dl(),nB=mn(),oXr=(Rl(),vi(ng)),sXr=apl.__importStar((vZ(),vi(SZ))),lpl=bxt();function das(e){return nB.MessageName[(0,nB.parseMessageName)(e)]}var upl=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?

(?:.(?!##))+)/gs;async function pas(e){let r=`https://repo.yarnpkg.com/${nB.miscUtils.isTaggedYarnVersion(nB.YarnVersion)?nB.YarnVersion:await(0,lpl.resolveTag)(e,"canary")}/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx`,n=await nB.httpUtils.get(r,{configuration:e});return new Map(Array.from(n.toString().matchAll(upl),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let o=das(a.code);if(a.name!==o)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${o}"`);return[a.code,a.details]}))}var hje=class extends cpl.BaseCommand{constructor(){super(...arguments),this.code=oXr.Option.String({required:!1,validator:sXr.applyCascade(sXr.isString(),[sXr.matchesRegExp(/^YN[0-9]{4}$/)])}),this.json=oXr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await nB.Configuration.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let r=das(this.code),n=nB.formatUtils.pretty(t,r,nB.formatUtils.Type.CODE),a=this.cli.format().header(`${this.code} - ${n}`),l=(await pas(t)).get(this.code),A=typeof l<"u"?nB.formatUtils.jsonOrPretty(this.json,t,nB.formatUtils.tuple(nB.formatUtils.Type.MARKDOWN,{text:l,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. + `,examples:[["Explain the corresponding peer requirement for a hash","$0 explain peer-requirements p1a4ed"],["List all peer requirements","$0 explain peer-requirements"]]});pje.default=dje;async function las(e,t,r){let n=t.peerRequirementNodes.get(e);if(typeof n>"u")throw new Error(`No peerDependency requirements found for hash: "${e}"`);let a=new Set,o=f=>a.has(f.requester.locatorHash)?{value:jd.formatUtils.tuple(jd.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:f.children.size>0?[{value:jd.formatUtils.tuple(jd.formatUtils.Type.NO_HINT,"...")}]:[]}:(a.add(f.requester.locatorHash),{value:jd.formatUtils.tuple(jd.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:Object.fromEntries(Array.from(f.children.values(),I=>[jd.structUtils.stringifyLocator(I.requester),o(I)]))}),l=t.peerWarnings.find(f=>f.hash===e);return(await jd.StreamReport.start({configuration:t.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async f=>{let I=jd.formatUtils.mark(t.configuration),C=l?I.Cross:I.Check;if(f.reportInfo(jd.MessageName.UNNAMED,`Package ${jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)} is requested to provide ${jd.formatUtils.pretty(t.configuration,n.ident,jd.formatUtils.Type.IDENT)} by its descendants`),f.reportSeparator(),f.reportInfo(jd.MessageName.UNNAMED,jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)),jd.treeUtils.emitTree({children:Object.fromEntries(Array.from(n.requests.values(),b=>[jd.structUtils.stringifyLocator(b.requester),o(b)]))},{configuration:t.configuration,stdout:r.stdout,json:!1}),f.reportSeparator(),n.provided.range==="missing:"){let b=l?"":" , but all peer requests are optional";f.reportInfo(jd.MessageName.UNNAMED,`${C} Package ${jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)} does not provide ${jd.formatUtils.pretty(t.configuration,n.ident,jd.formatUtils.Type.IDENT)}${b}.`)}else{let b=t.storedResolutions.get(n.provided.descriptorHash);if(!b)throw new Error("Assertion failed: Expected the descriptor to be registered");let E=t.storedPackages.get(b);if(!E)throw new Error("Assertion failed: Expected the package to be registered");f.reportInfo(jd.MessageName.UNNAMED,`${C} Package ${jd.formatUtils.pretty(t.configuration,n.subject,jd.formatUtils.Type.LOCATOR)} provides ${jd.formatUtils.pretty(t.configuration,n.ident,jd.formatUtils.Type.IDENT)} with version ${jd.structUtils.prettyReference(t.configuration,E.version??"0.0.0")}, ${l?"which does not satisfy all requests.":"which satisfies all requests"}`),l?.type===jd.PeerWarningType.NodeNotCompatible&&(l.range?f.reportInfo(jd.MessageName.UNNAMED,` The combined requested range is ${jd.formatUtils.pretty(t.configuration,l.range,jd.formatUtils.Type.RANGE)}`):f.reportInfo(jd.MessageName.UNNAMED," Unfortunately, the requested ranges have no overlap"))}})).exitCode()}async function uas(e,t){return(await jd.StreamReport.start({configuration:e.configuration,stdout:t.stdout,includeFooter:!1,includePrefix:!1},async n=>{let a=jd.formatUtils.mark(e.configuration),o=jd.miscUtils.sortMap(e.peerRequirementNodes,[([,l])=>jd.structUtils.stringifyLocator(l.subject),([,l])=>jd.structUtils.stringifyIdent(l.ident)]);for(let[,l]of o.values()){if(!l.root)continue;let A=e.peerWarnings.find(C=>C.hash===l.hash),f=[...jd.structUtils.allPeerRequests(l)],I;if(f.length>2?I=` and ${f.length-1} other dependencies`:f.length===2?I=" and 1 other dependency":I="",l.provided.range!=="missing:"){let C=e.storedResolutions.get(l.provided.descriptorHash);if(!C)throw new Error("Assertion failed: Expected the resolution to have been registered");let b=e.storedPackages.get(C);if(!b)throw new Error("Assertion failed: Expected the provided package to have been registered");let E=`${jd.formatUtils.pretty(e.configuration,l.hash,jd.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${jd.structUtils.prettyLocator(e.configuration,l.subject)} provides ${jd.structUtils.prettyLocator(e.configuration,b)} to ${jd.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(jd.MessageName.UNNAMED,E):n.reportInfo(jd.MessageName.UNNAMED,E)}else{let C=`${jd.formatUtils.pretty(e.configuration,l.hash,jd.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${jd.structUtils.prettyLocator(e.configuration,l.subject)} doesn't provide ${jd.structUtils.prettyIdent(e.configuration,l.ident)} to ${jd.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(jd.MessageName.UNNAMED,C):n.reportInfo(jd.MessageName.UNNAMED,C)}}})).exitCode()}});var bxt=H(pGe=>{"use strict";Object.defineProperty(pGe,"__esModule",{value:!0});pGe.resolveRange=Aas;pGe.resolveTag=yxt;pGe.setVersion=das;var tfl=(Wa(),vi(Va)),rfl=sl(),iF=wn(),nB=wn(),rB=No(),vue=(vl(),vi(ng)),nfl=tfl.__importDefault(zC()),fje=class extends rfl.BaseCommand{constructor(){super(...arguments),this.useYarnPath=vue.Option.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"}),this.onlyIfNeeded=vue.Option.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"}),this.version=vue.Option.String()}async execute(){let t=await iF.Configuration.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&t.get("yarnPath")){let l=t.sources.get("yarnPath");if(!l)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let A=t.projectCwd??t.startingCwd;if(rB.ppath.contains(A,l))return 0}let r=()=>{if(typeof iF.YarnVersion>"u")throw new vue.UsageError("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},n,a=(l,A)=>({version:A,url:l.replace(/\{\}/g,A)});if(this.version==="self")n={url:r(),version:iF.YarnVersion??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await yxt(t,"stable"));else if(this.version==="canary")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await yxt(t,"canary"));else if(this.version==="classic")n={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))n={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||rB.npath.isAbsolute(this.version))n={url:`file://${rB.ppath.resolve(rB.npath.toPortablePath(this.version))}`,version:"file"};else if(nB.semverUtils.satisfiesWithPrereleases(this.version,">=2.0.0"))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(nB.semverUtils.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))n=a("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(nB.semverUtils.validRange(this.version))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await Aas(t,this.version));else throw new vue.UsageError(`Invalid version descriptor "${this.version}"`);return(await iF.StreamReport.start({configuration:t,stdout:this.context.stdout,includeLogs:!this.context.quiet},async l=>{let A=async()=>{let f="file://";return n.url.startsWith(f)?(l.reportInfo(iF.MessageName.UNNAMED,`Retrieving ${nB.formatUtils.pretty(t,n.url,nB.formatUtils.Type.PATH)}`),await rB.xfs.readFilePromise(n.url.slice(f.length))):(l.reportInfo(iF.MessageName.UNNAMED,`Downloading ${nB.formatUtils.pretty(t,n.url,nB.formatUtils.Type.URL)}`),await nB.httpUtils.get(n.url,{configuration:t}))};await das(t,n.version,A,{report:l,useYarnPath:this.useYarnPath})})).exitCode()}};fje.paths=[["set","version"]];fje.usage=vue.Command.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting different behavior.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});pGe.default=fje;async function Aas(e,t){let n=(await nB.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0})).tags.filter(a=>nB.semverUtils.satisfiesWithPrereleases(a,t));if(n.length===0)throw new vue.UsageError(`No matching release found for range ${nB.formatUtils.pretty(e,t,nB.formatUtils.Type.RANGE)}.`);return n[0]}async function yxt(e,t){let r=await nB.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0});if(!r.latest[t])throw new vue.UsageError(`Tag ${nB.formatUtils.pretty(e,t,nB.formatUtils.Type.RANGE)} not found`);return r.latest[t]}async function das(e,t,r,{report:n,useYarnPath:a}){let o,l=async()=>(typeof o>"u"&&(o=await r()),o);if(t===null){let ne=await l();await rB.xfs.mktempPromise(async ce=>{let fe=rB.ppath.join(ce,"yarn.cjs");await rB.xfs.writeFilePromise(fe,ne);let{stdout:ue}=await nB.execUtils.execvp(process.execPath,[rB.npath.fromPortablePath(fe),"--version"],{cwd:ce,env:{...e.env,YARN_IGNORE_PATH:"1"}});if(t=ue.trim(),!nfl.default.valid(t))throw new Error(`Invalid semver version. ${nB.formatUtils.pretty(e,"yarn --version",nB.formatUtils.Type.CODE)} returned: +${t}`)})}let A=e.projectCwd??e.startingCwd,f=rB.ppath.resolve(A,".yarn/releases"),I=rB.ppath.resolve(f,`yarn-${t}.mjs`),C=rB.ppath.relative(e.startingCwd,I),b=nB.miscUtils.isTaggedYarnVersion(t),E=e.get("yarnPath"),N=!b,B=N||!!E||!!a;if(a===!1){if(N)throw new iF.ReportError(iF.MessageName.UNNAMED,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");B=!1}else!B&&!process.env.COREPACK_ROOT&&(n.reportWarning(iF.MessageName.UNNAMED,`You don't seem to have ${nB.formatUtils.applyHyperlink(e,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${nB.formatUtils.applyHyperlink(e,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),B=!0);if(B){let ne=await l();n.reportInfo(iF.MessageName.UNNAMED,`Saving the new release in ${nB.formatUtils.pretty(e,C,"magenta")}`),await rB.xfs.removePromise(rB.ppath.dirname(I)),await rB.xfs.mkdirPromise(rB.ppath.dirname(I),{recursive:!0}),await rB.xfs.writeFilePromise(I,ne,{mode:493}),await iF.Configuration.updateConfiguration(A,{yarnPath:rB.ppath.relative(A,I)})}else await rB.xfs.removePromise(rB.ppath.dirname(I)),await iF.Configuration.updateConfiguration(A,{yarnPath:iF.Configuration.deleteProperty});let F=await iF.Manifest.tryFind(A)||new iF.Manifest;F.packageManager=`yarn@${b?t:await yxt(e,"stable")}`;let Q={};F.exportTo(Q);let J=rB.ppath.join(A,iF.Manifest.fileName),ae=`${JSON.stringify(Q,null,F.indent)} +`;return await rB.xfs.changeFilePromise(J,ae,{automaticNewlines:!0}),{bundleVersion:t}}});var Ias=H(Ext=>{"use strict";Object.defineProperty(Ext,"__esModule",{value:!0});Ext.getErrorCodeDetails=fas;var ifl=(Wa(),vi(Va)),sfl=sl(),iB=wn(),AXr=(vl(),vi(ng)),gXr=ifl.__importStar((BZ(),vi(vZ))),ofl=bxt();function pas(e){return iB.MessageName[(0,iB.parseMessageName)(e)]}var afl=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?
(?:.(?!##))+)/gs;async function fas(e){let r=`https://repo.yarnpkg.com/${iB.miscUtils.isTaggedYarnVersion(iB.YarnVersion)?iB.YarnVersion:await(0,ofl.resolveTag)(e,"canary")}/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx`,n=await iB.httpUtils.get(r,{configuration:e});return new Map(Array.from(n.toString().matchAll(afl),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let o=pas(a.code);if(a.name!==o)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${o}"`);return[a.code,a.details]}))}var Ije=class extends sfl.BaseCommand{constructor(){super(...arguments),this.code=AXr.Option.String({required:!1,validator:gXr.applyCascade(gXr.isString(),[gXr.matchesRegExp(/^YN[0-9]{4}$/)])}),this.json=AXr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await iB.Configuration.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let r=pas(this.code),n=iB.formatUtils.pretty(t,r,iB.formatUtils.Type.CODE),a=this.cli.format().header(`${this.code} - ${n}`),l=(await fas(t)).get(this.code),A=typeof l<"u"?iB.formatUtils.jsonOrPretty(this.json,t,iB.formatUtils.tuple(iB.formatUtils.Type.MARKDOWN,{text:l,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. You can help us by editing this page on GitHub \u{1F642}: -${nB.formatUtils.jsonOrPretty(this.json,t,nB.formatUtils.tuple(nB.formatUtils.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx"))} +${iB.formatUtils.jsonOrPretty(this.json,t,iB.formatUtils.tuple(iB.formatUtils.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx"))} `;this.json?this.context.stdout.write(`${JSON.stringify({code:this.code,name:r,details:A})} `):this.context.stdout.write(`${a} ${A} -`)}else{let r={children:nB.miscUtils.mapAndFilter(Object.entries(nB.MessageName),([n,a])=>Number.isNaN(Number(n))?nB.miscUtils.mapAndFilter.skip:{label:(0,nB.stringifyMessageName)(Number(n)),value:nB.formatUtils.tuple(nB.formatUtils.Type.CODE,a)})};nB.treeUtils.emitTree(r,{configuration:t,stdout:this.context.stdout,json:this.json})}}};hje.paths=[["explain"]];hje.usage=oXr.Command.Usage({description:"explain an error code",details:` +`)}else{let r={children:iB.miscUtils.mapAndFilter(Object.entries(iB.MessageName),([n,a])=>Number.isNaN(Number(n))?iB.miscUtils.mapAndFilter.skip:{label:(0,iB.stringifyMessageName)(Number(n)),value:iB.formatUtils.tuple(iB.formatUtils.Type.CODE,a)})};iB.treeUtils.emitTree(r,{configuration:t,stdout:this.context.stdout,json:this.json})}}};Ije.paths=[["explain"]];Ije.usage=AXr.Command.Usage({description:"explain an error code",details:` When the code argument is specified, this command prints its name and its details. When used without arguments, this command lists all error codes and their names. - `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});Ext.default=hje});var has=H(aXr=>{"use strict";Object.defineProperty(aXr,"__esModule",{value:!0});var gpl=(Wa(),vi(Va)),Ias=dl(),CI=mn(),Apl=Io(),GH=(Rl(),vi(ng)),dpl=gpl.__importDefault(Tk()),mje=class extends Ias.BaseCommand{constructor(){super(...arguments),this.all=GH.Option.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"}),this.recursive=GH.Option.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"}),this.extra=GH.Option.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"}),this.cache=GH.Option.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"}),this.dependents=GH.Option.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"}),this.manifest=GH.Option.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"}),this.nameOnly=GH.Option.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"}),this.virtuals=GH.Option.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"}),this.json=GH.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=GH.Option.Rest()}async execute(){let t=await CI.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await CI.Project.find(t,this.context.cwd),a=await CI.Cache.find(t);if(!n&&!this.all)throw new Ias.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=new Set(this.extra);this.cache&&o.add("cache"),this.dependents&&o.add("dependents"),this.manifest&&o.add("manifest");let l=(ne,{recursive:ce})=>{let fe=ne.anchoredLocator.locatorHash,ue=new Map,de=[fe];for(;de.length>0;){let be=de.shift();if(ue.has(be))continue;let Se=r.storedPackages.get(be);if(typeof Se>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ue.set(be,Se),CI.structUtils.isVirtualLocator(Se)&&de.push(CI.structUtils.devirtualizeLocator(Se).locatorHash),!(!ce&&be!==fe))for(let De of Se.dependencies.values()){let k=r.storedResolutions.get(De.descriptorHash);if(typeof k>"u")throw new Error("Assertion failed: Expected the resolution to be registered");de.push(k)}}return ue.values()},A=({recursive:ne})=>{let ce=new Map;for(let fe of r.workspaces)for(let ue of l(fe,{recursive:ne}))ce.set(ue.locatorHash,ue);return ce.values()},f=({all:ne,recursive:ce})=>ne&&ce?r.storedPackages.values():ne?A({recursive:ce}):l(n,{recursive:ce}),I=({all:ne,recursive:ce})=>{let fe=f({all:ne,recursive:ce}),ue=this.patterns.map(Se=>{let De=CI.structUtils.parseLocator(Se),k=dpl.default.makeRe(CI.structUtils.stringifyIdent(De)),tt=CI.structUtils.isVirtualLocator(De),ze=tt?CI.structUtils.devirtualizeLocator(De):De;return Le=>{let Je=CI.structUtils.stringifyIdent(Le);if(!k.test(Je))return!1;if(De.reference==="unknown")return!0;let ft=CI.structUtils.isVirtualLocator(Le),lt=ft?CI.structUtils.devirtualizeLocator(Le):Le;return!(tt&&ft&&De.reference!==Le.reference||ze.reference!==lt.reference)}}),de=CI.miscUtils.sortMap([...fe],Se=>CI.structUtils.stringifyLocator(Se));return{selection:de.filter(Se=>ue.length===0||ue.some(De=>De(Se))),sortedLookup:de}},{selection:C,sortedLookup:b}=I({all:this.all,recursive:this.recursive});if(C.length===0)throw new GH.UsageError("No package matched your request");let E=new Map;if(this.dependents)for(let ne of b)for(let ce of ne.dependencies.values()){let fe=r.storedResolutions.get(ce.descriptorHash);if(typeof fe>"u")throw new Error("Assertion failed: Expected the resolution to be registered");CI.miscUtils.getArrayWithDefault(E,fe).push(ne)}let N=new Map;for(let ne of b){if(!CI.structUtils.isVirtualLocator(ne))continue;let ce=CI.structUtils.devirtualizeLocator(ne);CI.miscUtils.getArrayWithDefault(N,ce.locatorHash).push(ne)}let B={},F={children:B},Q=t.makeFetcher(),J={project:r,fetcher:Q,cache:a,checksums:r.storedChecksums,report:new CI.ThrowReport,cacheOptions:{skipIntegrityCheck:!0}},ae=[async(ne,ce,fe)=>{if(!ce.has("manifest"))return;let ue=await Q.fetch(ne,J),de;try{de=await CI.Manifest.find(ue.prefixPath,{baseFs:ue.packageFs})}finally{ue.releaseFs?.()}fe("Manifest",{License:CI.formatUtils.tuple(CI.formatUtils.Type.NO_HINT,de.license),Homepage:CI.formatUtils.tuple(CI.formatUtils.Type.URL,de.raw.homepage??null)})},async(ne,ce,fe)=>{if(!ce.has("cache"))return;let ue=r.storedChecksums.get(ne.locatorHash)??null,de=a.getLocatorPath(ne,ue),be;if(de!==null)try{be=await Apl.xfs.statPromise(de)}catch{}let Se=typeof be<"u"?[be.size,CI.formatUtils.Type.SIZE]:void 0;fe("Cache",{Checksum:CI.formatUtils.tuple(CI.formatUtils.Type.NO_HINT,ue),Path:CI.formatUtils.tuple(CI.formatUtils.Type.PATH,de),Size:Se})}];for(let ne of C){let ce=CI.structUtils.isVirtualLocator(ne);if(!this.virtuals&&ce)continue;let fe={},ue={value:[ne,CI.formatUtils.Type.LOCATOR],children:fe};if(B[CI.structUtils.stringifyLocator(ne)]=ue,this.nameOnly){delete ue.children;continue}let de=N.get(ne.locatorHash);typeof de<"u"&&(fe.Instances={label:"Instances",value:CI.formatUtils.tuple(CI.formatUtils.Type.NUMBER,de.length)}),fe.Version={label:"Version",value:CI.formatUtils.tuple(CI.formatUtils.Type.NO_HINT,ne.version)};let be=(De,k)=>{let tt={};if(fe[De]=tt,Array.isArray(k))tt.children=k.map(ze=>({value:ze}));else{let ze={};tt.children=ze;for(let[Le,Je]of Object.entries(k))typeof Je>"u"||(ze[Le]={label:Le,value:Je})}};if(!ce){for(let De of ae)await De(ne,o,be);await t.triggerHook(De=>De.fetchPackageInfo,ne,o,be)}ne.bin.size>0&&!ce&&be("Exported Binaries",[...ne.bin.keys()].map(De=>CI.formatUtils.tuple(CI.formatUtils.Type.PATH,De)));let Se=E.get(ne.locatorHash);typeof Se<"u"&&Se.length>0&&be("Dependents",Se.map(De=>CI.formatUtils.tuple(CI.formatUtils.Type.LOCATOR,De))),ne.dependencies.size>0&&!ce&&be("Dependencies",[...ne.dependencies.values()].map(De=>{let k=r.storedResolutions.get(De.descriptorHash),tt=typeof k<"u"?r.storedPackages.get(k)??null:null;return CI.formatUtils.tuple(CI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:tt})})),ne.peerDependencies.size>0&&ce&&be("Peer dependencies",[...ne.peerDependencies.values()].map(De=>{let k=ne.dependencies.get(De.identHash),tt=typeof k<"u"?r.storedResolutions.get(k.descriptorHash)??null:null,ze=tt!==null?r.storedPackages.get(tt)??null:null;return CI.formatUtils.tuple(CI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:ze})}))}CI.treeUtils.emitTree(F,{configuration:t,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};mje.paths=[["info"]];mje.usage=GH.Command.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});aXr.default=mje});var yas=H(uXr=>{"use strict";Object.defineProperty(uXr,"__esModule",{value:!0});var lXr=(Wa(),vi(Va)),mas=dl(),MA=mn(),Cj=Io(),Cas=tM(),cXr=lXr.__importDefault(Jfe()),vT=(Rl(),vi(ng)),_as=lXr.__importDefault(jC()),ppl=lXr.__importStar((vZ(),vi(SZ))),fpl=[{selector:e=>e===-1,name:"nodeLinker",value:"node-modules"},{selector:e=>e!==-1&&e<8,name:"enableGlobalCache",value:!1},{selector:e=>e!==-1&&e<8,name:"compressionLevel",value:"mixed"},{selector:e=>e<9,name:"approvedGitRepositories",value:["**"]},{selector:e=>e<9,name:"enableScripts",value:!0}],Cje=class extends mas.BaseCommand{constructor(){super(...arguments),this.json=vT.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.immutable=vT.Option.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"}),this.immutableCache=vT.Option.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"}),this.refreshLockfile=vT.Option.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"}),this.checkCache=vT.Option.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"}),this.checkResolutions=vT.Option.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"}),this.inlineBuilds=vT.Option.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"}),this.mode=vT.Option.String("--mode",{description:"Change what artifacts installs generate",validator:ppl.isEnum(MA.InstallMode)}),this.cacheFolder=vT.Option.String("--cache-folder",{hidden:!0}),this.frozenLockfile=vT.Option.Boolean("--frozen-lockfile",{hidden:!0}),this.ignoreEngines=vT.Option.Boolean("--ignore-engines",{hidden:!0}),this.nonInteractive=vT.Option.Boolean("--non-interactive",{hidden:!0}),this.preferOffline=vT.Option.Boolean("--prefer-offline",{hidden:!0}),this.production=vT.Option.Boolean("--production",{hidden:!0}),this.registry=vT.Option.String("--registry",{hidden:!0}),this.silent=vT.Option.Boolean("--silent",{hidden:!0}),this.networkTimeout=vT.Option.String("--network-timeout",{hidden:!0})}async execute(){let t=await MA.Configuration.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&t.useWithSource("",{enableInlineBuilds:this.inlineBuilds},t.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,n=await(0,MA.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!cXr.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!cXr.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!r},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!cXr.default.NETLIFY}]);if(n!==null)return n;let a=this.mode===MA.InstallMode.UpdateLockfile;if(a&&(this.immutable||this.immutableCache))throw new vT.UsageError(`${MA.formatUtils.pretty(t,"--immutable",MA.formatUtils.Type.CODE)} and ${MA.formatUtils.pretty(t,"--immutable-cache",MA.formatUtils.Type.CODE)} cannot be used with ${MA.formatUtils.pretty(t,"--mode=update-lockfile",MA.formatUtils.Type.CODE)}`);let o=(this.immutable??t.get("enableImmutableInstalls"))&&!a,l=this.immutableCache&&!a;if(t.projectCwd!==null){let B=await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q=!1;await mpl(t,o)&&(F.reportInfo(MA.MessageName.AUTOMERGE_SUCCESS,"Automatically removed core plugins that are now builtins \u{1F44D}"),Q=!0),await hpl(t,o)&&(F.reportInfo(MA.MessageName.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),Q=!0),Q&&F.reportSeparator()});if(B.hasErrors())return B.exitCode()}if(t.projectCwd!==null){let B=await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{if(MA.Configuration.telemetry?.isNew)MA.Configuration.telemetry.commitTips(),F.reportInfo(MA.MessageName.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),F.reportInfo(MA.MessageName.TELEMETRY_NOTICE,`Run ${MA.formatUtils.pretty(t,"yarn config set --home enableTelemetry 0",MA.formatUtils.Type.CODE)} to disable`),F.reportSeparator();else if(MA.Configuration.telemetry?.shouldShowTips){let Q=await MA.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0}).catch(()=>null);if(Q!==null){let J=null;if(MA.YarnVersion!==null){let ne=_as.default.prerelease(MA.YarnVersion)?"canary":"stable",ce=Q.latest[ne];ce!==null&&_as.default.gt(ce,MA.YarnVersion)&&(J=[ne,ce])}if(J)MA.Configuration.telemetry.commitTips(),F.reportInfo(MA.MessageName.VERSION_NOTICE,`${MA.formatUtils.applyStyle(t,`A new ${J[0]} version of Yarn is available:`,MA.formatUtils.Style.BOLD)} ${MA.structUtils.prettyReference(t,J[1])}!`),F.reportInfo(MA.MessageName.VERSION_NOTICE,`Upgrade now by running ${MA.formatUtils.pretty(t,`yarn set version ${J[1]}`,MA.formatUtils.Type.CODE)}`),F.reportSeparator();else{let ae=MA.Configuration.telemetry.selectTip(Q.tips);ae&&(F.reportInfo(MA.MessageName.TIPS_NOTICE,MA.formatUtils.pretty(t,ae.message,MA.formatUtils.Type.MARKDOWN_INLINE)),ae.url&&F.reportInfo(MA.MessageName.TIPS_NOTICE,`Learn more at ${ae.url}`),F.reportSeparator())}}}});if(B.hasErrors())return B.exitCode()}let{project:A,workspace:f}=await MA.Project.find(t,this.context.cwd),I=A.lockfileLastVersion;if(I!==null){let B=await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q={};for(let J of fpl)J.selector(I)&&typeof t.sources.get(J.name)>"u"&&(t.use("",{[J.name]:J.value},A.cwd,{overwrite:!0}),Q[J.name]=J.value);Object.keys(Q).length>0&&(await MA.Configuration.updateConfiguration(A.cwd,Q),F.reportInfo(MA.MessageName.MIGRATION_SUCCESS,"Migrated your project to the latest Yarn version \u{1F680}"),F.reportSeparator())});if(B.hasErrors())return B.exitCode()}let C=await MA.Cache.find(t,{immutable:l,check:this.checkCache});if(!f)throw new mas.WorkspaceRequiredError(A.cwd,this.context.cwd);await A.restoreInstallState({restoreResolutions:!1});let b=t.get("enableHardenedMode");b&&typeof t.sources.get("enableHardenedMode")>"u"&&await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async B=>{B.reportWarning(MA.MessageName.UNNAMED,"Yarn detected that the current workflow is executed from a public pull request. For safety the hardened mode has been enabled."),B.reportWarning(MA.MessageName.UNNAMED,`It will prevent malicious lockfile manipulations, in exchange for a slower install time. You can opt-out if necessary; check our ${MA.formatUtils.applyHyperlink(t,"documentation","https://yarnpkg.com/features/security#hardened-mode")} for more details.`),B.reportSeparator()}),(this.refreshLockfile??b)&&(A.lockfileNeedsRefresh=!0);let E=this.checkResolutions??b;return(await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,forceSectionAlignment:!0,includeLogs:!0,includeVersion:!0},async B=>{await A.install({cache:C,report:B,immutable:o,checkResolutions:E,mode:this.mode})})).exitCode()}};Cje.paths=[["install"],vT.Command.Default];Cje.usage=vT.Command.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the `.pnp.cjs` file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your `.pnp.cjs` file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});uXr.default=Cje;var Ipl="<<<<<<<";async function hpl(e,t){if(!e.projectCwd)return!1;let r=Cj.ppath.join(e.projectCwd,Cj.Filename.lockfile);if(!await Cj.xfs.existsPromise(r)||!(await Cj.xfs.readFilePromise(r,"utf8")).includes(Ipl))return!1;if(t)throw new MA.ReportError(MA.MessageName.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let a=await MA.execUtils.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:e.projectCwd});if(a.code!==0&&(a=await MA.execUtils.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0&&(a=await MA.execUtils.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0)throw new MA.ReportError(MA.MessageName.AUTOMERGE_GIT_ERROR,"Git returned an error when trying to find the commits pertaining to the conflict");let o=await Promise.all(a.stdout.trim().split(/\n/).map(async A=>{let f=await MA.execUtils.execvp("git",["show",`${A}:./${Cj.Filename.lockfile}`],{cwd:e.projectCwd});if(f.code!==0)throw new MA.ReportError(MA.MessageName.AUTOMERGE_GIT_ERROR,`Git returned an error when trying to access the lockfile content in ${A}`);try{return(0,Cas.parseSyml)(f.stdout)}catch{throw new MA.ReportError(MA.MessageName.AUTOMERGE_FAILED_TO_PARSE,"A variant of the conflicting lockfile failed to parse")}}));o=o.filter(A=>!!A.__metadata);for(let A of o){if(A.__metadata.version<7)for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=MA.structUtils.parseDescriptor(f,!0),C=e.normalizeDependency(I),b=MA.structUtils.stringifyDescriptor(C);b!==f&&(A[b]=A[f],delete A[f])}for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=A[f].checksum;typeof I>"u"||I.includes("/")||(A[f].checksum=`${A.__metadata.cacheKey}/${I}`)}}let l=Object.assign({},...o);l.__metadata.version=`${Math.min(...o.map(A=>parseInt(A.__metadata.version??0)))}`,l.__metadata.cacheKey="merged";for(let[A,f]of Object.entries(l))typeof f=="string"&&delete l[A];return await Cj.xfs.changeFilePromise(r,(0,Cas.stringifySyml)(l),{automaticNewlines:!0}),!0}async function mpl(e,t){if(!e.projectCwd)return!1;let r=[],n=Cj.ppath.join(e.projectCwd,".yarn/plugins/@yarnpkg");return await MA.Configuration.updateConfiguration(e.projectCwd,{plugins:o=>{if(!Array.isArray(o))return o;let l=o.filter(A=>{if(!A.path)return!0;let f=Cj.ppath.resolve(e.projectCwd,A.path),I=MA.LEGACY_PLUGINS.has(A.spec)&&Cj.ppath.contains(n,f);return I&&r.push(f),!I});return l.length===0?MA.Configuration.deleteProperty:l.length===o.length?o:l}},{immutable:t})?(await Promise.all(r.map(async o=>{await Cj.xfs.removePromise(o)})),!0):!1}});var bas=H(dXr=>{"use strict";Object.defineProperty(dXr,"__esModule",{value:!0});var gXr=dl(),fGe=mn(),AXr=Io(),Wte=(Rl(),vi(ng)),_je=class extends gXr.BaseCommand{constructor(){super(...arguments),this.all=Wte.Option.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"}),this.private=Wte.Option.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"}),this.relative=Wte.Option.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"}),this.destinations=Wte.Option.Rest()}async execute(){let t=await fGe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await fGe.Project.find(t,this.context.cwd),a=await fGe.Cache.find(t);if(!n)throw new gXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=r.topLevelWorkspace,l=[];for(let A of this.destinations){let f=AXr.ppath.resolve(this.context.cwd,AXr.npath.toPortablePath(A)),I=await fGe.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await fGe.Project.find(I,f);if(r.cwd===C.cwd)throw new Wte.UsageError(`Invalid destination '${A}'; Can't link the project to itself`);if(!b)throw new gXr.WorkspaceRequiredError(C.cwd,f);if(this.all){let E=!1;for(let N of C.workspaces)N.manifest.name&&(!N.manifest.private||this.private)&&(l.push(N),E=!0);if(!E)throw new Wte.UsageError(`No workspace found to be linked in the target project: ${A}`)}else{if(!b.manifest.name)throw new Wte.UsageError(`The target workspace at '${A}' doesn't have a name and thus cannot be linked`);if(b.manifest.private&&!this.private)throw new Wte.UsageError(`The target workspace at '${A}' is marked private - use the --private flag to link it anyway`);l.push(b)}}for(let A of l){let f=fGe.structUtils.stringifyIdent(A.anchoredLocator),I=this.relative?AXr.ppath.relative(r.cwd,A.cwd):A.cwd;o.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${I}`})}return await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};_je.paths=[["link"]];_je.usage=Wte.Command.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});dXr.default=_je});var Sas=H(pXr=>{"use strict";Object.defineProperty(pXr,"__esModule",{value:!0});var Cpl=dl(),Eas=(Rl(),vi(ng)),yje=class extends Cpl.BaseCommand{constructor(){super(...arguments),this.args=Eas.Option.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};yje.paths=[["node"]];yje.usage=Eas.Command.Usage({description:"run node with the hook already setup",details:` + `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});Ext.default=Ije});var mas=H(dXr=>{"use strict";Object.defineProperty(dXr,"__esModule",{value:!0});var cfl=(Wa(),vi(Va)),has=sl(),CI=wn(),lfl=No(),FH=(vl(),vi(ng)),ufl=cfl.__importDefault(Rk()),hje=class extends has.BaseCommand{constructor(){super(...arguments),this.all=FH.Option.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"}),this.recursive=FH.Option.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"}),this.extra=FH.Option.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"}),this.cache=FH.Option.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"}),this.dependents=FH.Option.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"}),this.manifest=FH.Option.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"}),this.nameOnly=FH.Option.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"}),this.virtuals=FH.Option.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"}),this.json=FH.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=FH.Option.Rest()}async execute(){let t=await CI.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await CI.Project.find(t,this.context.cwd),a=await CI.Cache.find(t);if(!n&&!this.all)throw new has.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=new Set(this.extra);this.cache&&o.add("cache"),this.dependents&&o.add("dependents"),this.manifest&&o.add("manifest");let l=(ne,{recursive:ce})=>{let fe=ne.anchoredLocator.locatorHash,ue=new Map,de=[fe];for(;de.length>0;){let be=de.shift();if(ue.has(be))continue;let Se=r.storedPackages.get(be);if(typeof Se>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ue.set(be,Se),CI.structUtils.isVirtualLocator(Se)&&de.push(CI.structUtils.devirtualizeLocator(Se).locatorHash),!(!ce&&be!==fe))for(let De of Se.dependencies.values()){let k=r.storedResolutions.get(De.descriptorHash);if(typeof k>"u")throw new Error("Assertion failed: Expected the resolution to be registered");de.push(k)}}return ue.values()},A=({recursive:ne})=>{let ce=new Map;for(let fe of r.workspaces)for(let ue of l(fe,{recursive:ne}))ce.set(ue.locatorHash,ue);return ce.values()},f=({all:ne,recursive:ce})=>ne&&ce?r.storedPackages.values():ne?A({recursive:ce}):l(n,{recursive:ce}),I=({all:ne,recursive:ce})=>{let fe=f({all:ne,recursive:ce}),ue=this.patterns.map(Se=>{let De=CI.structUtils.parseLocator(Se),k=ufl.default.makeRe(CI.structUtils.stringifyIdent(De)),tt=CI.structUtils.isVirtualLocator(De),ze=tt?CI.structUtils.devirtualizeLocator(De):De;return Le=>{let Je=CI.structUtils.stringifyIdent(Le);if(!k.test(Je))return!1;if(De.reference==="unknown")return!0;let ft=CI.structUtils.isVirtualLocator(Le),lt=ft?CI.structUtils.devirtualizeLocator(Le):Le;return!(tt&&ft&&De.reference!==Le.reference||ze.reference!==lt.reference)}}),de=CI.miscUtils.sortMap([...fe],Se=>CI.structUtils.stringifyLocator(Se));return{selection:de.filter(Se=>ue.length===0||ue.some(De=>De(Se))),sortedLookup:de}},{selection:C,sortedLookup:b}=I({all:this.all,recursive:this.recursive});if(C.length===0)throw new FH.UsageError("No package matched your request");let E=new Map;if(this.dependents)for(let ne of b)for(let ce of ne.dependencies.values()){let fe=r.storedResolutions.get(ce.descriptorHash);if(typeof fe>"u")throw new Error("Assertion failed: Expected the resolution to be registered");CI.miscUtils.getArrayWithDefault(E,fe).push(ne)}let N=new Map;for(let ne of b){if(!CI.structUtils.isVirtualLocator(ne))continue;let ce=CI.structUtils.devirtualizeLocator(ne);CI.miscUtils.getArrayWithDefault(N,ce.locatorHash).push(ne)}let B={},F={children:B},Q=t.makeFetcher(),J={project:r,fetcher:Q,cache:a,checksums:r.storedChecksums,report:new CI.ThrowReport,cacheOptions:{skipIntegrityCheck:!0}},ae=[async(ne,ce,fe)=>{if(!ce.has("manifest"))return;let ue=await Q.fetch(ne,J),de;try{de=await CI.Manifest.find(ue.prefixPath,{baseFs:ue.packageFs})}finally{ue.releaseFs?.()}fe("Manifest",{License:CI.formatUtils.tuple(CI.formatUtils.Type.NO_HINT,de.license),Homepage:CI.formatUtils.tuple(CI.formatUtils.Type.URL,de.raw.homepage??null)})},async(ne,ce,fe)=>{if(!ce.has("cache"))return;let ue=r.storedChecksums.get(ne.locatorHash)??null,de=a.getLocatorPath(ne,ue),be;if(de!==null)try{be=await lfl.xfs.statPromise(de)}catch{}let Se=typeof be<"u"?[be.size,CI.formatUtils.Type.SIZE]:void 0;fe("Cache",{Checksum:CI.formatUtils.tuple(CI.formatUtils.Type.NO_HINT,ue),Path:CI.formatUtils.tuple(CI.formatUtils.Type.PATH,de),Size:Se})}];for(let ne of C){let ce=CI.structUtils.isVirtualLocator(ne);if(!this.virtuals&&ce)continue;let fe={},ue={value:[ne,CI.formatUtils.Type.LOCATOR],children:fe};if(B[CI.structUtils.stringifyLocator(ne)]=ue,this.nameOnly){delete ue.children;continue}let de=N.get(ne.locatorHash);typeof de<"u"&&(fe.Instances={label:"Instances",value:CI.formatUtils.tuple(CI.formatUtils.Type.NUMBER,de.length)}),fe.Version={label:"Version",value:CI.formatUtils.tuple(CI.formatUtils.Type.NO_HINT,ne.version)};let be=(De,k)=>{let tt={};if(fe[De]=tt,Array.isArray(k))tt.children=k.map(ze=>({value:ze}));else{let ze={};tt.children=ze;for(let[Le,Je]of Object.entries(k))typeof Je>"u"||(ze[Le]={label:Le,value:Je})}};if(!ce){for(let De of ae)await De(ne,o,be);await t.triggerHook(De=>De.fetchPackageInfo,ne,o,be)}ne.bin.size>0&&!ce&&be("Exported Binaries",[...ne.bin.keys()].map(De=>CI.formatUtils.tuple(CI.formatUtils.Type.PATH,De)));let Se=E.get(ne.locatorHash);typeof Se<"u"&&Se.length>0&&be("Dependents",Se.map(De=>CI.formatUtils.tuple(CI.formatUtils.Type.LOCATOR,De))),ne.dependencies.size>0&&!ce&&be("Dependencies",[...ne.dependencies.values()].map(De=>{let k=r.storedResolutions.get(De.descriptorHash),tt=typeof k<"u"?r.storedPackages.get(k)??null:null;return CI.formatUtils.tuple(CI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:tt})})),ne.peerDependencies.size>0&&ce&&be("Peer dependencies",[...ne.peerDependencies.values()].map(De=>{let k=ne.dependencies.get(De.identHash),tt=typeof k<"u"?r.storedResolutions.get(k.descriptorHash)??null:null,ze=tt!==null?r.storedPackages.get(tt)??null:null;return CI.formatUtils.tuple(CI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:ze})}))}CI.treeUtils.emitTree(F,{configuration:t,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};hje.paths=[["info"]];hje.usage=FH.Command.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});dXr.default=hje});var bas=H(IXr=>{"use strict";Object.defineProperty(IXr,"__esModule",{value:!0});var fXr=(Wa(),vi(Va)),Cas=sl(),MA=wn(),_j=No(),_as=LO(),pXr=fXr.__importDefault(Ufe()),BT=(vl(),vi(ng)),yas=fXr.__importDefault(zC()),gfl=fXr.__importStar((BZ(),vi(vZ))),Afl=[{selector:e=>e===-1,name:"nodeLinker",value:"node-modules"},{selector:e=>e!==-1&&e<8,name:"enableGlobalCache",value:!1},{selector:e=>e!==-1&&e<8,name:"compressionLevel",value:"mixed"},{selector:e=>e<9,name:"approvedGitRepositories",value:["**"]},{selector:e=>e<9,name:"enableScripts",value:!0}],mje=class extends Cas.BaseCommand{constructor(){super(...arguments),this.json=BT.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.immutable=BT.Option.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"}),this.immutableCache=BT.Option.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"}),this.refreshLockfile=BT.Option.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"}),this.checkCache=BT.Option.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"}),this.checkResolutions=BT.Option.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"}),this.inlineBuilds=BT.Option.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"}),this.mode=BT.Option.String("--mode",{description:"Change what artifacts installs generate",validator:gfl.isEnum(MA.InstallMode)}),this.cacheFolder=BT.Option.String("--cache-folder",{hidden:!0}),this.frozenLockfile=BT.Option.Boolean("--frozen-lockfile",{hidden:!0}),this.ignoreEngines=BT.Option.Boolean("--ignore-engines",{hidden:!0}),this.nonInteractive=BT.Option.Boolean("--non-interactive",{hidden:!0}),this.preferOffline=BT.Option.Boolean("--prefer-offline",{hidden:!0}),this.production=BT.Option.Boolean("--production",{hidden:!0}),this.registry=BT.Option.String("--registry",{hidden:!0}),this.silent=BT.Option.Boolean("--silent",{hidden:!0}),this.networkTimeout=BT.Option.String("--network-timeout",{hidden:!0})}async execute(){let t=await MA.Configuration.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&t.useWithSource("",{enableInlineBuilds:this.inlineBuilds},t.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,n=await(0,MA.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!pXr.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!pXr.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!r},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!pXr.default.NETLIFY}]);if(n!==null)return n;let a=this.mode===MA.InstallMode.UpdateLockfile;if(a&&(this.immutable||this.immutableCache))throw new BT.UsageError(`${MA.formatUtils.pretty(t,"--immutable",MA.formatUtils.Type.CODE)} and ${MA.formatUtils.pretty(t,"--immutable-cache",MA.formatUtils.Type.CODE)} cannot be used with ${MA.formatUtils.pretty(t,"--mode=update-lockfile",MA.formatUtils.Type.CODE)}`);let o=(this.immutable??t.get("enableImmutableInstalls"))&&!a,l=this.immutableCache&&!a;if(t.projectCwd!==null){let B=await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q=!1;await ffl(t,o)&&(F.reportInfo(MA.MessageName.AUTOMERGE_SUCCESS,"Automatically removed core plugins that are now builtins \u{1F44D}"),Q=!0),await pfl(t,o)&&(F.reportInfo(MA.MessageName.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),Q=!0),Q&&F.reportSeparator()});if(B.hasErrors())return B.exitCode()}if(t.projectCwd!==null){let B=await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{if(MA.Configuration.telemetry?.isNew)MA.Configuration.telemetry.commitTips(),F.reportInfo(MA.MessageName.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),F.reportInfo(MA.MessageName.TELEMETRY_NOTICE,`Run ${MA.formatUtils.pretty(t,"yarn config set --home enableTelemetry 0",MA.formatUtils.Type.CODE)} to disable`),F.reportSeparator();else if(MA.Configuration.telemetry?.shouldShowTips){let Q=await MA.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0}).catch(()=>null);if(Q!==null){let J=null;if(MA.YarnVersion!==null){let ne=yas.default.prerelease(MA.YarnVersion)?"canary":"stable",ce=Q.latest[ne];ce!==null&&yas.default.gt(ce,MA.YarnVersion)&&(J=[ne,ce])}if(J)MA.Configuration.telemetry.commitTips(),F.reportInfo(MA.MessageName.VERSION_NOTICE,`${MA.formatUtils.applyStyle(t,`A new ${J[0]} version of Yarn is available:`,MA.formatUtils.Style.BOLD)} ${MA.structUtils.prettyReference(t,J[1])}!`),F.reportInfo(MA.MessageName.VERSION_NOTICE,`Upgrade now by running ${MA.formatUtils.pretty(t,`yarn set version ${J[1]}`,MA.formatUtils.Type.CODE)}`),F.reportSeparator();else{let ae=MA.Configuration.telemetry.selectTip(Q.tips);ae&&(F.reportInfo(MA.MessageName.TIPS_NOTICE,MA.formatUtils.pretty(t,ae.message,MA.formatUtils.Type.MARKDOWN_INLINE)),ae.url&&F.reportInfo(MA.MessageName.TIPS_NOTICE,`Learn more at ${ae.url}`),F.reportSeparator())}}}});if(B.hasErrors())return B.exitCode()}let{project:A,workspace:f}=await MA.Project.find(t,this.context.cwd),I=A.lockfileLastVersion;if(I!==null){let B=await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q={};for(let J of Afl)J.selector(I)&&typeof t.sources.get(J.name)>"u"&&(t.use("",{[J.name]:J.value},A.cwd,{overwrite:!0}),Q[J.name]=J.value);Object.keys(Q).length>0&&(await MA.Configuration.updateConfiguration(A.cwd,Q),F.reportInfo(MA.MessageName.MIGRATION_SUCCESS,"Migrated your project to the latest Yarn version \u{1F680}"),F.reportSeparator())});if(B.hasErrors())return B.exitCode()}let C=await MA.Cache.find(t,{immutable:l,check:this.checkCache});if(!f)throw new Cas.WorkspaceRequiredError(A.cwd,this.context.cwd);await A.restoreInstallState({restoreResolutions:!1});let b=t.get("enableHardenedMode");b&&typeof t.sources.get("enableHardenedMode")>"u"&&await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async B=>{B.reportWarning(MA.MessageName.UNNAMED,"Yarn detected that the current workflow is executed from a public pull request. For safety the hardened mode has been enabled."),B.reportWarning(MA.MessageName.UNNAMED,`It will prevent malicious lockfile manipulations, in exchange for a slower install time. You can opt-out if necessary; check our ${MA.formatUtils.applyHyperlink(t,"documentation","https://yarnpkg.com/features/security#hardened-mode")} for more details.`),B.reportSeparator()}),(this.refreshLockfile??b)&&(A.lockfileNeedsRefresh=!0);let E=this.checkResolutions??b;return(await MA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,forceSectionAlignment:!0,includeLogs:!0,includeVersion:!0},async B=>{await A.install({cache:C,report:B,immutable:o,checkResolutions:E,mode:this.mode})})).exitCode()}};mje.paths=[["install"],BT.Command.Default];mje.usage=BT.Command.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the `.pnp.cjs` file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your `.pnp.cjs` file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});IXr.default=mje;var dfl="<<<<<<<";async function pfl(e,t){if(!e.projectCwd)return!1;let r=_j.ppath.join(e.projectCwd,_j.Filename.lockfile);if(!await _j.xfs.existsPromise(r)||!(await _j.xfs.readFilePromise(r,"utf8")).includes(dfl))return!1;if(t)throw new MA.ReportError(MA.MessageName.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let a=await MA.execUtils.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:e.projectCwd});if(a.code!==0&&(a=await MA.execUtils.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0&&(a=await MA.execUtils.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0)throw new MA.ReportError(MA.MessageName.AUTOMERGE_GIT_ERROR,"Git returned an error when trying to find the commits pertaining to the conflict");let o=await Promise.all(a.stdout.trim().split(/\n/).map(async A=>{let f=await MA.execUtils.execvp("git",["show",`${A}:./${_j.Filename.lockfile}`],{cwd:e.projectCwd});if(f.code!==0)throw new MA.ReportError(MA.MessageName.AUTOMERGE_GIT_ERROR,`Git returned an error when trying to access the lockfile content in ${A}`);try{return(0,_as.parseSyml)(f.stdout)}catch{throw new MA.ReportError(MA.MessageName.AUTOMERGE_FAILED_TO_PARSE,"A variant of the conflicting lockfile failed to parse")}}));o=o.filter(A=>!!A.__metadata);for(let A of o){if(A.__metadata.version<7)for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=MA.structUtils.parseDescriptor(f,!0),C=e.normalizeDependency(I),b=MA.structUtils.stringifyDescriptor(C);b!==f&&(A[b]=A[f],delete A[f])}for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=A[f].checksum;typeof I>"u"||I.includes("/")||(A[f].checksum=`${A.__metadata.cacheKey}/${I}`)}}let l=Object.assign({},...o);l.__metadata.version=`${Math.min(...o.map(A=>parseInt(A.__metadata.version??0)))}`,l.__metadata.cacheKey="merged";for(let[A,f]of Object.entries(l))typeof f=="string"&&delete l[A];return await _j.xfs.changeFilePromise(r,(0,_as.stringifySyml)(l),{automaticNewlines:!0}),!0}async function ffl(e,t){if(!e.projectCwd)return!1;let r=[],n=_j.ppath.join(e.projectCwd,".yarn/plugins/@yarnpkg");return await MA.Configuration.updateConfiguration(e.projectCwd,{plugins:o=>{if(!Array.isArray(o))return o;let l=o.filter(A=>{if(!A.path)return!0;let f=_j.ppath.resolve(e.projectCwd,A.path),I=MA.LEGACY_PLUGINS.has(A.spec)&&_j.ppath.contains(n,f);return I&&r.push(f),!I});return l.length===0?MA.Configuration.deleteProperty:l.length===o.length?o:l}},{immutable:t})?(await Promise.all(r.map(async o=>{await _j.xfs.removePromise(o)})),!0):!1}});var Eas=H(CXr=>{"use strict";Object.defineProperty(CXr,"__esModule",{value:!0});var hXr=sl(),fGe=wn(),mXr=No(),Ote=(vl(),vi(ng)),Cje=class extends hXr.BaseCommand{constructor(){super(...arguments),this.all=Ote.Option.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"}),this.private=Ote.Option.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"}),this.relative=Ote.Option.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"}),this.destinations=Ote.Option.Rest()}async execute(){let t=await fGe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await fGe.Project.find(t,this.context.cwd),a=await fGe.Cache.find(t);if(!n)throw new hXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=r.topLevelWorkspace,l=[];for(let A of this.destinations){let f=mXr.ppath.resolve(this.context.cwd,mXr.npath.toPortablePath(A)),I=await fGe.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await fGe.Project.find(I,f);if(r.cwd===C.cwd)throw new Ote.UsageError(`Invalid destination '${A}'; Can't link the project to itself`);if(!b)throw new hXr.WorkspaceRequiredError(C.cwd,f);if(this.all){let E=!1;for(let N of C.workspaces)N.manifest.name&&(!N.manifest.private||this.private)&&(l.push(N),E=!0);if(!E)throw new Ote.UsageError(`No workspace found to be linked in the target project: ${A}`)}else{if(!b.manifest.name)throw new Ote.UsageError(`The target workspace at '${A}' doesn't have a name and thus cannot be linked`);if(b.manifest.private&&!this.private)throw new Ote.UsageError(`The target workspace at '${A}' is marked private - use the --private flag to link it anyway`);l.push(b)}}for(let A of l){let f=fGe.structUtils.stringifyIdent(A.anchoredLocator),I=this.relative?mXr.ppath.relative(r.cwd,A.cwd):A.cwd;o.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${I}`})}return await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};Cje.paths=[["link"]];Cje.usage=Ote.Command.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});CXr.default=Cje});var vas=H(_Xr=>{"use strict";Object.defineProperty(_Xr,"__esModule",{value:!0});var Ifl=sl(),Sas=(vl(),vi(ng)),_je=class extends Ifl.BaseCommand{constructor(){super(...arguments),this.args=Sas.Option.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};_je.paths=[["node"]];_je.usage=Sas.Command.Usage({description:"run node with the hook already setup",details:` This command simply runs Node. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). The Node process will use the exact same version of Node as the one used to run Yarn itself, which might be a good way to ensure that your commands always use a consistent Node version. - `,examples:[["Run a Node script","$0 node ./my-script.js"]]});pXr.default=yje});var Bas=H(fXr=>{"use strict";Object.defineProperty(fXr,"__esModule",{value:!0});var _pl=dl(),_j=mn(),vas=(Rl(),vi(ng)),bje=class extends _pl.BaseCommand{constructor(){super(...arguments),this.json=vas.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await _j.Configuration.find(this.context.cwd,this.context.plugins),r=await _j.Configuration.findRcFiles(this.context.cwd);return(await _j.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{for(let o of r)if(o.data?.plugins)for(let l of o.data.plugins){if(!l.checksum||!l.spec.match(/^https?:/))continue;let A=await _j.httpUtils.get(l.spec,{configuration:t}),f=_j.hashUtils.makeHash(A);if(l.checksum===f)continue;let I=_j.formatUtils.pretty(t,l.path,_j.formatUtils.Type.PATH),C=_j.formatUtils.pretty(t,l.spec,_j.formatUtils.Type.URL),b=`${I} is different from the file provided by ${C}`;a.reportJson({...l,newChecksum:f}),a.reportError(_j.MessageName.UNNAMED,b)}})).exitCode()}};bje.paths=[["plugin","check"]];bje.usage=vas.Command.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` + `,examples:[["Run a Node script","$0 node ./my-script.js"]]});_Xr.default=_je});var was=H(yXr=>{"use strict";Object.defineProperty(yXr,"__esModule",{value:!0});var hfl=sl(),yj=wn(),Bas=(vl(),vi(ng)),yje=class extends hfl.BaseCommand{constructor(){super(...arguments),this.json=Bas.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await yj.Configuration.find(this.context.cwd,this.context.plugins),r=await yj.Configuration.findRcFiles(this.context.cwd);return(await yj.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{for(let o of r)if(o.data?.plugins)for(let l of o.data.plugins){if(!l.checksum||!l.spec.match(/^https?:/))continue;let A=await yj.httpUtils.get(l.spec,{configuration:t}),f=yj.hashUtils.makeHash(A);if(l.checksum===f)continue;let I=yj.formatUtils.pretty(t,l.path,yj.formatUtils.Type.PATH),C=yj.formatUtils.pretty(t,l.spec,yj.formatUtils.Type.URL),b=`${I} is different from the file provided by ${C}`;a.reportJson({...l,newChecksum:f}),a.reportError(yj.MessageName.UNNAMED,b)}})).exitCode()}};yje.paths=[["plugin","check"]];yje.usage=Bas.Command.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` Check only the plugins from https. If this command detects any plugin differences in the CI environment, it will throw an error. - `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});fXr.default=bje});var vje=H(Sxt=>{"use strict";Object.defineProperty(Sxt,"__esModule",{value:!0});Sxt.getAvailablePlugins=Tas;var ypl=dl(),Eje=mn(),bpl=tM(),was=(Rl(),vi(ng)),Epl="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function Tas(e,t){let r=await Eje.httpUtils.get(Epl,{configuration:e}),n=(0,bpl.parseSyml)(r.toString());return Object.fromEntries(Object.entries(n).filter(([a,o])=>!t||Eje.semverUtils.satisfiesWithPrereleases(t,o.range??"<4.0.0-rc.1")))}var Sje=class extends ypl.BaseCommand{constructor(){super(...arguments),this.json=was.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Eje.Configuration.find(this.context.cwd,this.context.plugins);return(await Eje.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{let a=await Tas(t,Eje.YarnVersion);for(let[o,{experimental:l,...A}]of Object.entries(a)){let f=o;l&&(f+=" [experimental]"),n.reportJson({name:o,experimental:l,...A}),n.reportInfo(null,f)}})).exitCode()}};Sje.paths=[["plugin","list"]];Sje.usage=was.Command.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});Sxt.default=Sje});var IXr=H(wje=>{"use strict";Object.defineProperty(wje,"__esModule",{value:!0});wje.runWorkflow=vxt;wje.prepareRepo=Nas;var Spl=dl(),FH=mn(),jV=Io(),Ote=(Rl(),vi(ng)),vpl=Et("os"),Bpl=hXr(),wpl=vje(),Tpl=bxt(),Rpl=/^[0-9]+$/,Npl=process.platform==="win32";function Ras(e){return Rpl.test(e)?`pull/${e}/head`:e}var Dpl=({repository:e,branch:t},r)=>[["git","init",jV.npath.fromPortablePath(r)],["git","remote","add","origin",e],["git","fetch","origin","--depth=1",Ras(t)],["git","reset","--hard","FETCH_HEAD"]],kpl=({branch:e})=>[["git","fetch","origin","--depth=1",Ras(e),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],xpl=({plugins:e,noMinify:t},r,n)=>[["yarn","build:cli",...new Array().concat(...e.map(a=>["--plugin",jV.ppath.resolve(n,a)])),...t?["--no-minify"]:[],"|"],[Npl?"move":"mv","packages/yarnpkg-cli/bundles/yarn.js",jV.npath.fromPortablePath(r),"|"]],Bje=class extends Spl.BaseCommand{constructor(){super(...arguments),this.installPath=Ote.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=Ote.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=Ote.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.plugins=Ote.Option.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"}),this.dryRun=Ote.Option.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"}),this.noMinify=Ote.Option.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"}),this.force=Ote.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.skipPlugins=Ote.Option.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let t=await FH.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await FH.Project.find(t,this.context.cwd),n=typeof this.installPath<"u"?jV.ppath.resolve(this.context.cwd,jV.npath.toPortablePath(this.installPath)):jV.ppath.resolve(jV.npath.toPortablePath((0,vpl.tmpdir)()),"yarnpkg-sources",FH.hashUtils.makeHash(this.repository).slice(0,6));return(await FH.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await Nas(this,{configuration:t,report:o,target:n}),o.reportSeparator(),o.reportInfo(FH.MessageName.UNNAMED,"Building a fresh bundle"),o.reportSeparator();let l=await FH.execUtils.execvp("git",["rev-parse","--short","HEAD"],{cwd:n,strict:!0}),A=jV.ppath.join(n,`packages/yarnpkg-cli/bundles/yarn-${l.stdout.trim()}.js`);jV.xfs.existsSync(A)||(await vxt(xpl(this,A,n),{configuration:t,context:this.context,target:n}),o.reportSeparator());let f=await jV.xfs.readFilePromise(A);if(!this.dryRun){let{bundleVersion:I}=await(0,Tpl.setVersion)(t,null,async()=>f,{report:o});this.skipPlugins||await Gpl(this,I,{project:r,report:o,target:n})}})).exitCode()}};Bje.paths=[["set","version","from","sources"]];Bje.usage=Ote.Command.Usage({description:"build Yarn from master",details:` + `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});yXr.default=yje});var Sje=H(Sxt=>{"use strict";Object.defineProperty(Sxt,"__esModule",{value:!0});Sxt.getAvailablePlugins=Ras;var mfl=sl(),bje=wn(),Cfl=LO(),Tas=(vl(),vi(ng)),_fl="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function Ras(e,t){let r=await bje.httpUtils.get(_fl,{configuration:e}),n=(0,Cfl.parseSyml)(r.toString());return Object.fromEntries(Object.entries(n).filter(([a,o])=>!t||bje.semverUtils.satisfiesWithPrereleases(t,o.range??"<4.0.0-rc.1")))}var Eje=class extends mfl.BaseCommand{constructor(){super(...arguments),this.json=Tas.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await bje.Configuration.find(this.context.cwd,this.context.plugins);return(await bje.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{let a=await Ras(t,bje.YarnVersion);for(let[o,{experimental:l,...A}]of Object.entries(a)){let f=o;l&&(f+=" [experimental]"),n.reportJson({name:o,experimental:l,...A}),n.reportInfo(null,f)}})).exitCode()}};Eje.paths=[["plugin","list"]];Eje.usage=Tas.Command.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});Sxt.default=Eje});var bXr=H(Bje=>{"use strict";Object.defineProperty(Bje,"__esModule",{value:!0});Bje.runWorkflow=vxt;Bje.prepareRepo=Das;var yfl=sl(),ZH=wn(),zV=No(),Pte=(vl(),vi(ng)),bfl=Et("os"),Efl=EXr(),Sfl=Sje(),vfl=bxt(),Bfl=/^[0-9]+$/,wfl=process.platform==="win32";function Nas(e){return Bfl.test(e)?`pull/${e}/head`:e}var Tfl=({repository:e,branch:t},r)=>[["git","init",zV.npath.fromPortablePath(r)],["git","remote","add","origin",e],["git","fetch","origin","--depth=1",Nas(t)],["git","reset","--hard","FETCH_HEAD"]],Rfl=({branch:e})=>[["git","fetch","origin","--depth=1",Nas(e),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],Nfl=({plugins:e,noMinify:t},r,n)=>[["yarn","build:cli",...new Array().concat(...e.map(a=>["--plugin",zV.ppath.resolve(n,a)])),...t?["--no-minify"]:[],"|"],[wfl?"move":"mv","packages/yarnpkg-cli/bundles/yarn.js",zV.npath.fromPortablePath(r),"|"]],vje=class extends yfl.BaseCommand{constructor(){super(...arguments),this.installPath=Pte.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=Pte.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=Pte.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.plugins=Pte.Option.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"}),this.dryRun=Pte.Option.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"}),this.noMinify=Pte.Option.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"}),this.force=Pte.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.skipPlugins=Pte.Option.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let t=await ZH.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await ZH.Project.find(t,this.context.cwd),n=typeof this.installPath<"u"?zV.ppath.resolve(this.context.cwd,zV.npath.toPortablePath(this.installPath)):zV.ppath.resolve(zV.npath.toPortablePath((0,bfl.tmpdir)()),"yarnpkg-sources",ZH.hashUtils.makeHash(this.repository).slice(0,6));return(await ZH.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await Das(this,{configuration:t,report:o,target:n}),o.reportSeparator(),o.reportInfo(ZH.MessageName.UNNAMED,"Building a fresh bundle"),o.reportSeparator();let l=await ZH.execUtils.execvp("git",["rev-parse","--short","HEAD"],{cwd:n,strict:!0}),A=zV.ppath.join(n,`packages/yarnpkg-cli/bundles/yarn-${l.stdout.trim()}.js`);zV.xfs.existsSync(A)||(await vxt(Nfl(this,A,n),{configuration:t,context:this.context,target:n}),o.reportSeparator());let f=await zV.xfs.readFilePromise(A);if(!this.dryRun){let{bundleVersion:I}=await(0,vfl.setVersion)(t,null,async()=>f,{report:o});this.skipPlugins||await Dfl(this,I,{project:r,report:o,target:n})}})).exitCode()}};vje.paths=[["set","version","from","sources"]];vje.usage=Pte.Command.Usage({description:"build Yarn from master",details:` This command will clone the Yarn repository into a temporary folder, then build it. The resulting bundle will then be copied into the local project. By default, it also updates all contrib plugins to the same commit the bundle is built from. This behavior can be disabled by using the \`--skip-plugins\` flag. - `,examples:[["Build Yarn from master","$0 set version from sources"]]});wje.default=Bje;async function vxt(e,{configuration:t,context:r,target:n}){for(let[a,...o]of e){let l=o[o.length-1]==="|";if(l&&o.pop(),l)await FH.execUtils.pipevp(a,o,{cwd:n,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${FH.formatUtils.pretty(t,` $ ${[a,...o].join(" ")}`,"grey")} -`);try{await FH.execUtils.execvp(a,o,{cwd:n,strict:!0})}catch(A){throw r.stdout.write(A.stdout||A.stack),A}}}}async function Nas(e,{configuration:t,report:r,target:n}){let a=!1;if(!e.force&&jV.xfs.existsSync(jV.ppath.join(n,".git"))){r.reportInfo(FH.MessageName.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await vxt(kpl(e),{configuration:t,context:e.context,target:n}),a=!0}catch{r.reportSeparator(),r.reportWarning(FH.MessageName.UNNAMED,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(FH.MessageName.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await jV.xfs.removePromise(n),await jV.xfs.mkdirPromise(n,{recursive:!0}),await vxt(Dpl(e,n),{configuration:t,context:e.context,target:n}))}async function Gpl(e,t,{project:r,report:n,target:a}){let o=await(0,wpl.getAvailablePlugins)(r.configuration,t),l=new Set(Object.keys(o));for(let A of r.configuration.plugins.keys())l.has(A)&&await(0,Bpl.buildAndSavePlugin)(A,e,{project:r,report:n,target:a})}});var CXr=H(Bxt=>{"use strict";Object.defineProperty(Bxt,"__esModule",{value:!0});Bxt.savePlugin=Das;var Fpl=(Wa(),vi(Va)),Zpl=dl(),OP=mn(),Ax=mn(),Pte=Io(),mXr=(Rl(),vi(ng)),Lpl=Fpl.__importDefault(jC()),Vpl=Et("vm"),Wpl=vje(),Tje=class extends Zpl.BaseCommand{constructor(){super(...arguments),this.name=mXr.Option.String(),this.checksum=mXr.Option.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let t=await OP.Configuration.find(this.context.cwd,this.context.plugins);return(await OP.StreamReport.start({configuration:t,stdout:this.context.stdout},async n=>{let{project:a}=await OP.Project.find(t,this.context.cwd),o,l;if(this.name.match(/^\.{0,2}[\\/]/)||Pte.npath.isAbsolute(this.name)){let A=Pte.ppath.resolve(this.context.cwd,Pte.npath.toPortablePath(this.name));n.reportInfo(OP.MessageName.UNNAMED,`Reading ${Ax.formatUtils.pretty(t,A,Ax.formatUtils.Type.PATH)}`),o=Pte.ppath.relative(a.cwd,A),l=await Pte.xfs.readFilePromise(A)}else{let A;if(this.name.match(/^https?:/)){try{new URL(this.name)}catch{throw new OP.ReportError(OP.MessageName.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}o=this.name,A=this.name}else{let f=Ax.structUtils.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(f.reference!=="unknown"&&!Lpl.default.valid(f.reference))throw new OP.ReportError(OP.MessageName.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let I=Ax.structUtils.stringifyIdent(f),C=await(0,Wpl.getAvailablePlugins)(t,Ax.YarnVersion);if(!Object.hasOwn(C,I)){let b=`Couldn't find a plugin named ${Ax.structUtils.prettyIdent(t,f)} on the remote registry. -`;throw t.plugins.has(I)?b+=`A plugin named ${Ax.structUtils.prettyIdent(t,f)} is already installed; possibly attempting to import a built-in plugin.`:b+=`Note that only the plugins referenced on our website (${Ax.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",Ax.formatUtils.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${Ax.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",Ax.formatUtils.Type.URL)}).`,new OP.ReportError(OP.MessageName.PLUGIN_NAME_NOT_FOUND,b)}o=I,A=C[I].url,f.reference!=="unknown"?A=A.replace(/\/master\//,`/${I}/${f.reference}/`):Ax.YarnVersion!==null&&(A=A.replace(/\/master\//,`/@yarnpkg/cli/${Ax.YarnVersion}/`))}n.reportInfo(OP.MessageName.UNNAMED,`Downloading ${Ax.formatUtils.pretty(t,A,"green")}`),l=await Ax.httpUtils.get(A,{configuration:t})}await Das(o,l,{checksum:this.checksum,project:a,report:n})})).exitCode()}};Tje.paths=[["plugin","import"]];Tje.usage=mXr.Command.Usage({category:"Plugin-related commands",description:"download a plugin",details:` + `,examples:[["Build Yarn from master","$0 set version from sources"]]});Bje.default=vje;async function vxt(e,{configuration:t,context:r,target:n}){for(let[a,...o]of e){let l=o[o.length-1]==="|";if(l&&o.pop(),l)await ZH.execUtils.pipevp(a,o,{cwd:n,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${ZH.formatUtils.pretty(t,` $ ${[a,...o].join(" ")}`,"grey")} +`);try{await ZH.execUtils.execvp(a,o,{cwd:n,strict:!0})}catch(A){throw r.stdout.write(A.stdout||A.stack),A}}}}async function Das(e,{configuration:t,report:r,target:n}){let a=!1;if(!e.force&&zV.xfs.existsSync(zV.ppath.join(n,".git"))){r.reportInfo(ZH.MessageName.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await vxt(Rfl(e),{configuration:t,context:e.context,target:n}),a=!0}catch{r.reportSeparator(),r.reportWarning(ZH.MessageName.UNNAMED,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(ZH.MessageName.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await zV.xfs.removePromise(n),await zV.xfs.mkdirPromise(n,{recursive:!0}),await vxt(Tfl(e,n),{configuration:t,context:e.context,target:n}))}async function Dfl(e,t,{project:r,report:n,target:a}){let o=await(0,Sfl.getAvailablePlugins)(r.configuration,t),l=new Set(Object.keys(o));for(let A of r.configuration.plugins.keys())l.has(A)&&await(0,Efl.buildAndSavePlugin)(A,e,{project:r,report:n,target:a})}});var vXr=H(Bxt=>{"use strict";Object.defineProperty(Bxt,"__esModule",{value:!0});Bxt.savePlugin=kas;var kfl=(Wa(),vi(Va)),xfl=sl(),MP=wn(),dx=wn(),Mte=No(),SXr=(vl(),vi(ng)),Gfl=kfl.__importDefault(zC()),Ffl=Et("vm"),Zfl=Sje(),wje=class extends xfl.BaseCommand{constructor(){super(...arguments),this.name=SXr.Option.String(),this.checksum=SXr.Option.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let t=await MP.Configuration.find(this.context.cwd,this.context.plugins);return(await MP.StreamReport.start({configuration:t,stdout:this.context.stdout},async n=>{let{project:a}=await MP.Project.find(t,this.context.cwd),o,l;if(this.name.match(/^\.{0,2}[\\/]/)||Mte.npath.isAbsolute(this.name)){let A=Mte.ppath.resolve(this.context.cwd,Mte.npath.toPortablePath(this.name));n.reportInfo(MP.MessageName.UNNAMED,`Reading ${dx.formatUtils.pretty(t,A,dx.formatUtils.Type.PATH)}`),o=Mte.ppath.relative(a.cwd,A),l=await Mte.xfs.readFilePromise(A)}else{let A;if(this.name.match(/^https?:/)){try{new URL(this.name)}catch{throw new MP.ReportError(MP.MessageName.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}o=this.name,A=this.name}else{let f=dx.structUtils.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(f.reference!=="unknown"&&!Gfl.default.valid(f.reference))throw new MP.ReportError(MP.MessageName.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let I=dx.structUtils.stringifyIdent(f),C=await(0,Zfl.getAvailablePlugins)(t,dx.YarnVersion);if(!Object.hasOwn(C,I)){let b=`Couldn't find a plugin named ${dx.structUtils.prettyIdent(t,f)} on the remote registry. +`;throw t.plugins.has(I)?b+=`A plugin named ${dx.structUtils.prettyIdent(t,f)} is already installed; possibly attempting to import a built-in plugin.`:b+=`Note that only the plugins referenced on our website (${dx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",dx.formatUtils.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${dx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",dx.formatUtils.Type.URL)}).`,new MP.ReportError(MP.MessageName.PLUGIN_NAME_NOT_FOUND,b)}o=I,A=C[I].url,f.reference!=="unknown"?A=A.replace(/\/master\//,`/${I}/${f.reference}/`):dx.YarnVersion!==null&&(A=A.replace(/\/master\//,`/@yarnpkg/cli/${dx.YarnVersion}/`))}n.reportInfo(MP.MessageName.UNNAMED,`Downloading ${dx.formatUtils.pretty(t,A,"green")}`),l=await dx.httpUtils.get(A,{configuration:t})}await kas(o,l,{checksum:this.checksum,project:a,report:n})})).exitCode()}};wje.paths=[["plugin","import"]];wje.usage=SXr.Command.Usage({category:"Plugin-related commands",description:"download a plugin",details:` This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations. Three types of plugin references are accepted: @@ -1354,23 +1354,23 @@ ${A} If the \`--no-checksum\` option is set, Yarn will no longer care if the plugin is modified. Plugins cannot be downloaded from the npm registry, and aren't allowed to have dependencies (they need to be bundled into a single file, possibly thanks to the \`@yarnpkg/builder\` package). - `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});Bxt.default=Tje;async function Das(e,t,{checksum:r=!0,project:n,report:a}){let{configuration:o}=n,l={},A={exports:l};(0,Vpl.runInNewContext)(t.toString(),{module:A,exports:l});let I=`.yarn/plugins/${A.exports.name}.cjs`,C=Pte.ppath.resolve(n.cwd,I);a.reportInfo(OP.MessageName.UNNAMED,`Saving the new plugin in ${Ax.formatUtils.pretty(o,I,"magenta")}`),await Pte.xfs.mkdirPromise(Pte.ppath.dirname(C),{recursive:!0}),await Pte.xfs.writeFilePromise(C,t);let b={path:I,spec:e};r&&(b.checksum=Ax.hashUtils.makeHash(t)),await OP.Configuration.addPlugin(n.cwd,[b])}});var hXr=H(Txt=>{"use strict";Object.defineProperty(Txt,"__esModule",{value:!0});Txt.buildAndSavePlugin=xas;var Opl=dl(),wxt=mn(),IGe=mn(),hGe=Io(),t0e=(Rl(),vi(ng)),Ppl=Et("os"),kas=IXr(),Mpl=CXr(),Hpl=vje(),Ypl=({pluginName:e,noMinify:t},r)=>[["yarn",`build:${e}`,...t?["--no-minify"]:[],"|"]],Rje=class extends Opl.BaseCommand{constructor(){super(...arguments),this.installPath=t0e.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=t0e.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=t0e.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.noMinify=t0e.Option.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"}),this.force=t0e.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.name=t0e.Option.String()}async execute(){let t=await IGe.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.installPath<"u"?hGe.ppath.resolve(this.context.cwd,hGe.npath.toPortablePath(this.installPath)):hGe.ppath.resolve(hGe.npath.toPortablePath((0,Ppl.tmpdir)()),"yarnpkg-sources",wxt.hashUtils.makeHash(this.repository).slice(0,6));return(await IGe.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let{project:o}=await IGe.Project.find(t,this.context.cwd),l=wxt.structUtils.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),A=wxt.structUtils.stringifyIdent(l),f=await(0,Hpl.getAvailablePlugins)(t,wxt.YarnVersion);if(!Object.hasOwn(f,A))throw new IGe.ReportError(IGe.MessageName.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${A}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let I=A;await(0,kas.prepareRepo)(this,{configuration:t,report:a,target:r}),await xas(I,this,{project:o,report:a,target:r})})).exitCode()}};Rje.paths=[["plugin","import","from","sources"]];Rje.usage=t0e.Command.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` + `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});Bxt.default=wje;async function kas(e,t,{checksum:r=!0,project:n,report:a}){let{configuration:o}=n,l={},A={exports:l};(0,Ffl.runInNewContext)(t.toString(),{module:A,exports:l});let I=`.yarn/plugins/${A.exports.name}.cjs`,C=Mte.ppath.resolve(n.cwd,I);a.reportInfo(MP.MessageName.UNNAMED,`Saving the new plugin in ${dx.formatUtils.pretty(o,I,"magenta")}`),await Mte.xfs.mkdirPromise(Mte.ppath.dirname(C),{recursive:!0}),await Mte.xfs.writeFilePromise(C,t);let b={path:I,spec:e};r&&(b.checksum=dx.hashUtils.makeHash(t)),await MP.Configuration.addPlugin(n.cwd,[b])}});var EXr=H(Txt=>{"use strict";Object.defineProperty(Txt,"__esModule",{value:!0});Txt.buildAndSavePlugin=Gas;var Lfl=sl(),wxt=wn(),IGe=wn(),hGe=No(),t0e=(vl(),vi(ng)),Vfl=Et("os"),xas=bXr(),Wfl=vXr(),Ofl=Sje(),Pfl=({pluginName:e,noMinify:t},r)=>[["yarn",`build:${e}`,...t?["--no-minify"]:[],"|"]],Tje=class extends Lfl.BaseCommand{constructor(){super(...arguments),this.installPath=t0e.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=t0e.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=t0e.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.noMinify=t0e.Option.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"}),this.force=t0e.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.name=t0e.Option.String()}async execute(){let t=await IGe.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.installPath<"u"?hGe.ppath.resolve(this.context.cwd,hGe.npath.toPortablePath(this.installPath)):hGe.ppath.resolve(hGe.npath.toPortablePath((0,Vfl.tmpdir)()),"yarnpkg-sources",wxt.hashUtils.makeHash(this.repository).slice(0,6));return(await IGe.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let{project:o}=await IGe.Project.find(t,this.context.cwd),l=wxt.structUtils.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),A=wxt.structUtils.stringifyIdent(l),f=await(0,Ofl.getAvailablePlugins)(t,wxt.YarnVersion);if(!Object.hasOwn(f,A))throw new IGe.ReportError(IGe.MessageName.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${A}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let I=A;await(0,xas.prepareRepo)(this,{configuration:t,report:a,target:r}),await Gas(I,this,{project:o,report:a,target:r})})).exitCode()}};Tje.paths=[["plugin","import","from","sources"]];Tje.usage=t0e.Command.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` This command clones the Yarn repository into a temporary folder, builds the specified contrib plugin and updates the configuration to reference it in further CLI invocations. The plugins can be referenced by their short name if sourced from the official Yarn repository. - `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});Txt.default=Rje;async function xas(e,{context:t,noMinify:r},{project:n,report:a,target:o}){let l=e.replace(/@yarnpkg\//,""),{configuration:A}=n;a.reportSeparator(),a.reportInfo(IGe.MessageName.UNNAMED,`Building a fresh ${l}`),a.reportSeparator(),await(0,kas.runWorkflow)(Ypl({pluginName:l,noMinify:r},o),{configuration:A,context:t,target:o}),a.reportSeparator();let f=hGe.ppath.resolve(o,`packages/${l}/bundles/${e}.js`),I=await hGe.xfs.readFilePromise(f);await(0,Mpl.savePlugin)(e,I,{project:n,report:a})}});var Gas=H(bXr=>{"use strict";Object.defineProperty(bXr,"__esModule",{value:!0});var Qpl=dl(),$4=mn(),_Xr=Io(),yXr=(Rl(),vi(ng)),Nje=class extends Qpl.BaseCommand{constructor(){super(...arguments),this.name=yXr.Option.String()}async execute(){let t=await $4.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await $4.Project.find(t,this.context.cwd);return(await $4.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o=this.name,l=$4.structUtils.parseIdent(o);if(!t.plugins.has(o))throw new yXr.UsageError(`${$4.structUtils.prettyIdent(t,l)} isn't referenced by the current configuration`);let A=`.yarn/plugins/${o}.cjs`,f=_Xr.ppath.resolve(r.cwd,A);_Xr.xfs.existsSync(f)&&(a.reportInfo($4.MessageName.UNNAMED,`Removing ${$4.formatUtils.pretty(t,A,$4.formatUtils.Type.PATH)}...`),await _Xr.xfs.removePromise(f)),a.reportInfo($4.MessageName.UNNAMED,"Updating the configuration..."),await $4.Configuration.updateConfiguration(r.cwd,{plugins:I=>{if(!Array.isArray(I))return I;let C=I.filter(b=>b.path!==A);return C.length===0?$4.Configuration.deleteProperty:C.length===I.length?I:C}})})).exitCode()}};Nje.paths=[["plugin","remove"]];Nje.usage=yXr.Command.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` + `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});Txt.default=Tje;async function Gas(e,{context:t,noMinify:r},{project:n,report:a,target:o}){let l=e.replace(/@yarnpkg\//,""),{configuration:A}=n;a.reportSeparator(),a.reportInfo(IGe.MessageName.UNNAMED,`Building a fresh ${l}`),a.reportSeparator(),await(0,xas.runWorkflow)(Pfl({pluginName:l,noMinify:r},o),{configuration:A,context:t,target:o}),a.reportSeparator();let f=hGe.ppath.resolve(o,`packages/${l}/bundles/${e}.js`),I=await hGe.xfs.readFilePromise(f);await(0,Wfl.savePlugin)(e,I,{project:n,report:a})}});var Fas=H(TXr=>{"use strict";Object.defineProperty(TXr,"__esModule",{value:!0});var Mfl=sl(),eJ=wn(),BXr=No(),wXr=(vl(),vi(ng)),Rje=class extends Mfl.BaseCommand{constructor(){super(...arguments),this.name=wXr.Option.String()}async execute(){let t=await eJ.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await eJ.Project.find(t,this.context.cwd);return(await eJ.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o=this.name,l=eJ.structUtils.parseIdent(o);if(!t.plugins.has(o))throw new wXr.UsageError(`${eJ.structUtils.prettyIdent(t,l)} isn't referenced by the current configuration`);let A=`.yarn/plugins/${o}.cjs`,f=BXr.ppath.resolve(r.cwd,A);BXr.xfs.existsSync(f)&&(a.reportInfo(eJ.MessageName.UNNAMED,`Removing ${eJ.formatUtils.pretty(t,A,eJ.formatUtils.Type.PATH)}...`),await BXr.xfs.removePromise(f)),a.reportInfo(eJ.MessageName.UNNAMED,"Updating the configuration..."),await eJ.Configuration.updateConfiguration(r.cwd,{plugins:I=>{if(!Array.isArray(I))return I;let C=I.filter(b=>b.path!==A);return C.length===0?eJ.Configuration.deleteProperty:C.length===I.length?I:C}})})).exitCode()}};Rje.paths=[["plugin","remove"]];Rje.usage=wXr.Command.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration. **Note:** The plugins have to be referenced by their name property, which can be obtained using the \`yarn plugin runtime\` command. Shorthands are not allowed. - `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});bXr.default=Nje});var Las=H(EXr=>{"use strict";Object.defineProperty(EXr,"__esModule",{value:!0});var Xpl=dl(),Fas=mn(),Zas=(Rl(),vi(ng)),Dje=class extends Xpl.BaseCommand{constructor(){super(...arguments),this.json=Zas.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Fas.Configuration.find(this.context.cwd,this.context.plugins);return(await Fas.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{for(let a of t.plugins.keys()){let o=this.context.plugins.plugins.has(a),l=a;o&&(l+=" [builtin]"),n.reportJson({name:a,builtin:o}),n.reportInfo(null,`${l}`)}})).exitCode()}};Dje.paths=[["plugin","runtime"]];Dje.usage=Zas.Command.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` + `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});TXr.default=Rje});var Vas=H(RXr=>{"use strict";Object.defineProperty(RXr,"__esModule",{value:!0});var Hfl=sl(),Zas=wn(),Las=(vl(),vi(ng)),Nje=class extends Hfl.BaseCommand{constructor(){super(...arguments),this.json=Las.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Zas.Configuration.find(this.context.cwd,this.context.plugins);return(await Zas.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{for(let a of t.plugins.keys()){let o=this.context.plugins.plugins.has(a),l=a;o&&(l+=" [builtin]"),n.reportJson({name:a,builtin:o}),n.reportInfo(null,`${l}`)}})).exitCode()}};Nje.paths=[["plugin","runtime"]];Nje.usage=Las.Command.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins. - `,examples:[["List the currently active plugins","$0 plugin runtime"]]});EXr.default=Dje});var Pas=H(vXr=>{"use strict";Object.defineProperty(vXr,"__esModule",{value:!0});var Vas=dl(),Was=mn(),SXr=mn(),Oas=(Rl(),vi(ng)),kje=class extends Vas.BaseCommand{constructor(){super(...arguments),this.idents=Oas.Option.Rest()}async execute(){let t=await Was.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await SXr.Project.find(t,this.context.cwd),a=await Was.Cache.find(t);if(!n)throw new Vas.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=new Set;for(let l of this.idents)o.add(SXr.structUtils.parseIdent(l).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:a,report:new SXr.ThrowReport}),o.size>0)for(let l of r.storedPackages.values())o.has(l.identHash)&&(r.storedBuildState.delete(l.locatorHash),r.skippedBuilds.delete(l.locatorHash));else r.storedBuildState.clear(),r.skippedBuilds.clear();return await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};kje.paths=[["rebuild"]];kje.usage=Oas.Command.Usage({description:"rebuild the project's native packages",details:` + `,examples:[["List the currently active plugins","$0 plugin runtime"]]});RXr.default=Nje});var Mas=H(DXr=>{"use strict";Object.defineProperty(DXr,"__esModule",{value:!0});var Was=sl(),Oas=wn(),NXr=wn(),Pas=(vl(),vi(ng)),Dje=class extends Was.BaseCommand{constructor(){super(...arguments),this.idents=Pas.Option.Rest()}async execute(){let t=await Oas.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await NXr.Project.find(t,this.context.cwd),a=await Oas.Cache.find(t);if(!n)throw new Was.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=new Set;for(let l of this.idents)o.add(NXr.structUtils.parseIdent(l).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:a,report:new NXr.ThrowReport}),o.size>0)for(let l of r.storedPackages.values())o.has(l.identHash)&&(r.storedBuildState.delete(l.locatorHash),r.skippedBuilds.delete(l.locatorHash));else r.storedBuildState.clear(),r.skippedBuilds.clear();return await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};Dje.paths=[["rebuild"]];Dje.usage=Pas.Command.Usage({description:"rebuild the project's native packages",details:` This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again. Note that while Yarn forgets the compilation, the previous artifacts aren't erased from the filesystem and may affect the next builds (in good or bad). To avoid this, you may remove the .yarn/unplugged folder, or any other relevant location where packages might have been stored (Yarn may offer a way to do that automatically in the future). By default all packages will be rebuilt, but you can filter the list by specifying the names of the packages you want to clear from memory. - `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});vXr.default=kje});var Yas=H(TXr=>{"use strict";Object.defineProperty(TXr,"__esModule",{value:!0});var wXr=(Wa(),vi(Va)),Mas=dl(),xje=mn(),Jpl=mn(),Rxt=mn(),Gje=(Rl(),vi(ng)),Has=wXr.__importDefault(Tk()),Upl=wXr.__importStar((vZ(),vi(SZ))),BXr=wXr.__importStar(eje()),Fje=class extends Mas.BaseCommand{constructor(){super(...arguments),this.all=Gje.Option.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"}),this.mode=Gje.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Upl.isEnum(Jpl.InstallMode)}),this.patterns=Gje.Option.Rest()}async execute(){let t=await xje.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await xje.Project.find(t,this.context.cwd),a=await xje.Cache.find(t);if(!n)throw new Mas.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.all?r.workspaces:[n],l=[BXr.Target.REGULAR,BXr.Target.DEVELOPMENT,BXr.Target.PEER],A=[],f=!1,I=[];for(let N of this.patterns){let B=!1,F=Rxt.structUtils.parseIdent(N);for(let Q of o){let J=[...Q.manifest.peerDependenciesMeta.keys()];for(let ae of(0,Has.default)(J,N))Q.manifest.peerDependenciesMeta.delete(ae),f=!0,B=!0;for(let ae of l){let ne=Q.manifest.getForScope(ae),ce=[...ne.values()].map(fe=>Rxt.structUtils.stringifyIdent(fe));for(let fe of(0,Has.default)(ce,Rxt.structUtils.stringifyIdent(F))){let{identHash:ue}=Rxt.structUtils.parseIdent(fe),de=ne.get(ue);if(typeof de>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");Q.manifest[ae].delete(ue),I.push([Q,ae,de]),f=!0,B=!0}}}B||A.push(N)}let C=A.length>1?"Patterns":"Pattern",b=A.length>1?"don't":"doesn't",E=this.all?"any":"this";if(A.length>0)throw new Gje.UsageError(`${C} ${xje.formatUtils.prettyList(t,A,xje.formatUtils.Type.CODE)} ${b} match any packages referenced by ${E} workspace`);return f?(await t.triggerMultipleHooks(N=>N.afterWorkspaceDependencyRemoval,I),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})):0}};Fje.paths=[["remove"]];Fje.usage=Gje.Command.Usage({description:"remove dependencies from the project",details:` + `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});DXr.default=Dje});var Qas=H(GXr=>{"use strict";Object.defineProperty(GXr,"__esModule",{value:!0});var xXr=(Wa(),vi(Va)),Has=sl(),kje=wn(),Yfl=wn(),Rxt=wn(),xje=(vl(),vi(ng)),Yas=xXr.__importDefault(Rk()),Qfl=xXr.__importStar((BZ(),vi(vZ))),kXr=xXr.__importStar($6e()),Gje=class extends Has.BaseCommand{constructor(){super(...arguments),this.all=xje.Option.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"}),this.mode=xje.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Qfl.isEnum(Yfl.InstallMode)}),this.patterns=xje.Option.Rest()}async execute(){let t=await kje.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kje.Project.find(t,this.context.cwd),a=await kje.Cache.find(t);if(!n)throw new Has.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.all?r.workspaces:[n],l=[kXr.Target.REGULAR,kXr.Target.DEVELOPMENT,kXr.Target.PEER],A=[],f=!1,I=[];for(let N of this.patterns){let B=!1,F=Rxt.structUtils.parseIdent(N);for(let Q of o){let J=[...Q.manifest.peerDependenciesMeta.keys()];for(let ae of(0,Yas.default)(J,N))Q.manifest.peerDependenciesMeta.delete(ae),f=!0,B=!0;for(let ae of l){let ne=Q.manifest.getForScope(ae),ce=[...ne.values()].map(fe=>Rxt.structUtils.stringifyIdent(fe));for(let fe of(0,Yas.default)(ce,Rxt.structUtils.stringifyIdent(F))){let{identHash:ue}=Rxt.structUtils.parseIdent(fe),de=ne.get(ue);if(typeof de>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");Q.manifest[ae].delete(ue),I.push([Q,ae,de]),f=!0,B=!0}}}B||A.push(N)}let C=A.length>1?"Patterns":"Pattern",b=A.length>1?"don't":"doesn't",E=this.all?"any":"this";if(A.length>0)throw new xje.UsageError(`${C} ${kje.formatUtils.prettyList(t,A,kje.formatUtils.Type.CODE)} ${b} match any packages referenced by ${E} workspace`);return f?(await t.triggerMultipleHooks(N=>N.afterWorkspaceDependencyRemoval,I),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})):0}};Gje.paths=[["remove"]];Gje.usage=xje.Command.Usage({description:"remove dependencies from the project",details:` This command will remove the packages matching the specified patterns from the current workspace. If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: @@ -1380,7 +1380,7 @@ ${A} - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. - `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});TXr.default=Fje});var Xas=H(NXr=>{"use strict";Object.defineProperty(NXr,"__esModule",{value:!0});var Qas=dl(),RXr=mn(),Kpl=mn(),jpl=(Rl(),vi(ng)),zpl=Et("util"),Nxt=class extends Qas.BaseCommand{constructor(){super(...arguments),this.json=jpl.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await RXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await RXr.Project.find(t,this.context.cwd);if(!n)throw new Qas.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await RXr.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async o=>{let l=n.manifest.scripts,A=Kpl.miscUtils.sortMap(l.keys(),C=>C),f={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},I=A.reduce((C,b)=>Math.max(C,b.length),0);for(let[C,b]of l.entries())o.reportInfo(null,`${C.padEnd(I," ")} ${(0,zpl.inspect)(b,f)}`),o.reportJson({name:C,script:b})})).exitCode()}};Nxt.paths=[["run"]];NXr.default=Nxt});var Kas=H(DXr=>{"use strict";Object.defineProperty(DXr,"__esModule",{value:!0});var Jas=dl(),Uas=mn(),r0e=mn(),zV=(Rl(),vi(ng)),Zje=class extends Jas.BaseCommand{constructor(){super(...arguments),this.inspect=zV.Option.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.inspectBrk=zV.Option.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.topLevel=zV.Option.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"}),this.binariesOnly=zV.Option.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"}),this.require=zV.Option.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"}),this.silent=zV.Option.Boolean("--silent",{hidden:!0}),this.scriptName=zV.Option.String(),this.args=zV.Option.Proxy()}async execute(){let t=await Uas.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n,locator:a}=await Uas.Project.find(t,this.context.cwd);await r.restoreInstallState();let o=this.topLevel?r.topLevelWorkspace.anchoredLocator:a;if(!this.binariesOnly&&await r0e.scriptUtils.hasPackageScript(o,this.scriptName,{project:r}))return await r0e.scriptUtils.executePackageScript(o,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let l=await r0e.scriptUtils.getPackageAccessibleBinaries(o,{project:r});if(l.get(this.scriptName)){let f=[];return this.inspect&&(typeof this.inspect=="string"?f.push(`--inspect=${this.inspect}`):f.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?f.push(`--inspect-brk=${this.inspectBrk}`):f.push("--inspect-brk")),this.require&&f.push(`--require=${this.require}`),await r0e.scriptUtils.executePackageAccessibleBinary(o,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:f,packageAccessibleBinaries:l})}if(!this.topLevel&&!this.binariesOnly&&n&&this.scriptName.includes(":")){let I=(await Promise.all(r.workspaces.map(async C=>C.manifest.scripts.has(this.scriptName)?C:null))).filter(C=>C!==null);if(I.length===1)return await r0e.scriptUtils.executeWorkspaceScript(I[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new zV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${r0e.structUtils.prettyLocator(t,a)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new zV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${r0e.structUtils.prettyLocator(t,a)}).`);{if(this.scriptName==="global")throw new zV.UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let f=[this.scriptName].concat(this.args);for(let[I,C]of Jas.pluginCommands)for(let b of C)if(f.length>=b.length&&JSON.stringify(f.slice(0,b.length))===JSON.stringify(b))throw new zV.UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${I} plugin. You can install it with "yarn plugin import ${I}".`);throw new zV.UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};Zje.paths=[["run"]];Zje.usage=zV.Command.Usage({description:"run a script defined in the package.json",details:` + `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});GXr.default=Gje});var Jas=H(ZXr=>{"use strict";Object.defineProperty(ZXr,"__esModule",{value:!0});var Xas=sl(),FXr=wn(),Xfl=wn(),Jfl=(vl(),vi(ng)),Ufl=Et("util"),Nxt=class extends Xas.BaseCommand{constructor(){super(...arguments),this.json=Jfl.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await FXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await FXr.Project.find(t,this.context.cwd);if(!n)throw new Xas.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await FXr.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async o=>{let l=n.manifest.scripts,A=Xfl.miscUtils.sortMap(l.keys(),C=>C),f={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},I=A.reduce((C,b)=>Math.max(C,b.length),0);for(let[C,b]of l.entries())o.reportInfo(null,`${C.padEnd(I," ")} ${(0,Ufl.inspect)(b,f)}`),o.reportJson({name:C,script:b})})).exitCode()}};Nxt.paths=[["run"]];ZXr.default=Nxt});var jas=H(LXr=>{"use strict";Object.defineProperty(LXr,"__esModule",{value:!0});var Uas=sl(),Kas=wn(),r0e=wn(),qV=(vl(),vi(ng)),Fje=class extends Uas.BaseCommand{constructor(){super(...arguments),this.inspect=qV.Option.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.inspectBrk=qV.Option.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.topLevel=qV.Option.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"}),this.binariesOnly=qV.Option.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"}),this.require=qV.Option.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"}),this.silent=qV.Option.Boolean("--silent",{hidden:!0}),this.scriptName=qV.Option.String(),this.args=qV.Option.Proxy()}async execute(){let t=await Kas.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n,locator:a}=await Kas.Project.find(t,this.context.cwd);await r.restoreInstallState();let o=this.topLevel?r.topLevelWorkspace.anchoredLocator:a;if(!this.binariesOnly&&await r0e.scriptUtils.hasPackageScript(o,this.scriptName,{project:r}))return await r0e.scriptUtils.executePackageScript(o,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let l=await r0e.scriptUtils.getPackageAccessibleBinaries(o,{project:r});if(l.get(this.scriptName)){let f=[];return this.inspect&&(typeof this.inspect=="string"?f.push(`--inspect=${this.inspect}`):f.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?f.push(`--inspect-brk=${this.inspectBrk}`):f.push("--inspect-brk")),this.require&&f.push(`--require=${this.require}`),await r0e.scriptUtils.executePackageAccessibleBinary(o,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:f,packageAccessibleBinaries:l})}if(!this.topLevel&&!this.binariesOnly&&n&&this.scriptName.includes(":")){let I=(await Promise.all(r.workspaces.map(async C=>C.manifest.scripts.has(this.scriptName)?C:null))).filter(C=>C!==null);if(I.length===1)return await r0e.scriptUtils.executeWorkspaceScript(I[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new qV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${r0e.structUtils.prettyLocator(t,a)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new qV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${r0e.structUtils.prettyLocator(t,a)}).`);{if(this.scriptName==="global")throw new qV.UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let f=[this.scriptName].concat(this.args);for(let[I,C]of Uas.pluginCommands)for(let b of C)if(f.length>=b.length&&JSON.stringify(f.slice(0,b.length))===JSON.stringify(b))throw new qV.UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${I} plugin. You can install it with "yarn plugin import ${I}".`);throw new qV.UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};Fje.paths=[["run"]];Fje.usage=qV.Command.Usage({description:"run a script defined in the package.json",details:` This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace: - If the \`scripts\` field from your local package.json contains a matching script name, its definition will get executed. @@ -1390,29 +1390,29 @@ ${A} - Otherwise, if the specified name contains a colon character and if one of the workspaces in the project contains exactly one script with a matching name, then this script will get executed. Whatever happens, the cwd of the spawned process will be the workspace that declares the script (which makes it possible to call commands cross-workspaces using the third syntax). - `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});DXr.default=Zje});var qas=H(GXr=>{"use strict";Object.defineProperty(GXr,"__esModule",{value:!0});var jas=dl(),kXr=mn(),zas=mn(),xXr=(Rl(),vi(ng)),Lje=class extends jas.BaseCommand{constructor(){super(...arguments),this.descriptor=xXr.Option.String(),this.resolution=xXr.Option.String()}async execute(){let t=await kXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kXr.Project.find(t,this.context.cwd),a=await kXr.Cache.find(t);if(await r.restoreInstallState({restoreResolutions:!1}),!n)throw new jas.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=zas.structUtils.parseDescriptor(this.descriptor,!0),l=zas.structUtils.makeDescriptor(o,this.resolution);return r.storedDescriptors.set(o.descriptorHash,o),r.storedDescriptors.set(l.descriptorHash,l),r.resolutionAliases.set(o.descriptorHash,l.descriptorHash),await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};Lje.paths=[["set","resolution"]];Lje.usage=xXr.Command.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, edit the `resolutions` field in your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 npm:1.5.0"]]});GXr.default=Lje});var ecs=H(ZXr=>{"use strict";Object.defineProperty(ZXr,"__esModule",{value:!0});var qpl=(Wa(),vi(Va)),FXr=dl(),vue=mn(),$as=Io(),Vje=(Rl(),vi(ng)),$pl=qpl.__importDefault(Tk()),Wje=class extends FXr.BaseCommand{constructor(){super(...arguments),this.all=Vje.Option.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"}),this.leadingArguments=Vje.Option.Rest()}async execute(){let t=await vue.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await vue.Project.find(t,this.context.cwd),a=await vue.Cache.find(t);if(!n)throw new FXr.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=r.topLevelWorkspace,l=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:A,reference:f}of o.manifest.resolutions)f.startsWith("portal:")&&l.add(A.descriptor.fullName);if(this.leadingArguments.length>0)for(let A of this.leadingArguments){let f=$as.ppath.resolve(this.context.cwd,$as.npath.toPortablePath(A));if(vue.miscUtils.isPathLike(A)){let I=await vue.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await vue.Project.find(I,f);if(!b)throw new FXr.WorkspaceRequiredError(C.cwd,f);if(this.all){for(let E of C.workspaces)E.manifest.name&&l.add(vue.structUtils.stringifyIdent(E.anchoredLocator));if(l.size===0)throw new Vje.UsageError("No workspace found to be unlinked in the target project")}else{if(!b.manifest.name)throw new Vje.UsageError("The target workspace doesn't have a name and thus cannot be unlinked");l.add(vue.structUtils.stringifyIdent(b.anchoredLocator))}}else{let I=[...o.manifest.resolutions.map(({pattern:C})=>C.descriptor.fullName)];for(let C of(0,$pl.default)(I,A))l.add(C)}}return o.manifest.resolutions=o.manifest.resolutions.filter(({pattern:A})=>!l.has(A.descriptor.fullName)),await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};Wje.paths=[["unlink"]];Wje.usage=Vje.Command.Usage({description:"disconnect the local project from another one",details:` + `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});LXr.default=Fje});var $as=H(OXr=>{"use strict";Object.defineProperty(OXr,"__esModule",{value:!0});var zas=sl(),VXr=wn(),qas=wn(),WXr=(vl(),vi(ng)),Zje=class extends zas.BaseCommand{constructor(){super(...arguments),this.descriptor=WXr.Option.String(),this.resolution=WXr.Option.String()}async execute(){let t=await VXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await VXr.Project.find(t,this.context.cwd),a=await VXr.Cache.find(t);if(await r.restoreInstallState({restoreResolutions:!1}),!n)throw new zas.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=qas.structUtils.parseDescriptor(this.descriptor,!0),l=qas.structUtils.makeDescriptor(o,this.resolution);return r.storedDescriptors.set(o.descriptorHash,o),r.storedDescriptors.set(l.descriptorHash,l),r.resolutionAliases.set(o.descriptorHash,l.descriptorHash),await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};Zje.paths=[["set","resolution"]];Zje.usage=WXr.Command.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, edit the `resolutions` field in your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 npm:1.5.0"]]});OXr.default=Zje});var tcs=H(MXr=>{"use strict";Object.defineProperty(MXr,"__esModule",{value:!0});var Kfl=(Wa(),vi(Va)),PXr=sl(),Bue=wn(),ecs=No(),Lje=(vl(),vi(ng)),jfl=Kfl.__importDefault(Rk()),Vje=class extends PXr.BaseCommand{constructor(){super(...arguments),this.all=Lje.Option.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"}),this.leadingArguments=Lje.Option.Rest()}async execute(){let t=await Bue.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Bue.Project.find(t,this.context.cwd),a=await Bue.Cache.find(t);if(!n)throw new PXr.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=r.topLevelWorkspace,l=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:A,reference:f}of o.manifest.resolutions)f.startsWith("portal:")&&l.add(A.descriptor.fullName);if(this.leadingArguments.length>0)for(let A of this.leadingArguments){let f=ecs.ppath.resolve(this.context.cwd,ecs.npath.toPortablePath(A));if(Bue.miscUtils.isPathLike(A)){let I=await Bue.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await Bue.Project.find(I,f);if(!b)throw new PXr.WorkspaceRequiredError(C.cwd,f);if(this.all){for(let E of C.workspaces)E.manifest.name&&l.add(Bue.structUtils.stringifyIdent(E.anchoredLocator));if(l.size===0)throw new Lje.UsageError("No workspace found to be unlinked in the target project")}else{if(!b.manifest.name)throw new Lje.UsageError("The target workspace doesn't have a name and thus cannot be unlinked");l.add(Bue.structUtils.stringifyIdent(b.anchoredLocator))}}else{let I=[...o.manifest.resolutions.map(({pattern:C})=>C.descriptor.fullName)];for(let C of(0,jfl.default)(I,A))l.add(C)}}return o.manifest.resolutions=o.manifest.resolutions.filter(({pattern:A})=>!l.has(A.descriptor.fullName)),await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};Vje.paths=[["unlink"]];Vje.usage=Lje.Command.Usage({description:"disconnect the local project from another one",details:` This command will remove any resolutions in the project-level manifest that would have been added via a yarn link with similar arguments. - `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});ZXr.default=Wje});var rcs=H(PXr=>{"use strict";Object.defineProperty(PXr,"__esModule",{value:!0});var OXr=(Wa(),vi(Va)),LXr=dl(),PP=mn(),VXr=mn(),ZH=mn(),LH=(Rl(),vi(ng)),efl=z6e(),tcs=OXr.__importDefault(Tk()),WXr=OXr.__importStar((vZ(),vi(SZ))),yj=OXr.__importStar(eje()),mGe=class extends LXr.BaseCommand{constructor(){super(...arguments),this.interactive=LH.Option.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"}),this.fixed=LH.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=LH.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=LH.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=LH.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.recursive=LH.Option.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"}),this.mode=LH.Option.String("--mode",{description:"Change what artifacts installs generate",validator:WXr.isEnum(VXr.InstallMode)}),this.patterns=LH.Option.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let t=await ZH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await VXr.Project.find(t,this.context.cwd),a=await ZH.Cache.find(t);if(!n)throw new LXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=[...r.storedDescriptors.values()],l=o.map(I=>PP.structUtils.stringifyIdent(I)),A=new Set;for(let I of this.patterns){if(PP.structUtils.parseDescriptor(I).range!=="unknown")throw new LH.UsageError("Ranges aren't allowed when using --recursive");for(let C of(0,tcs.default)(l,I)){let b=PP.structUtils.parseIdent(C);A.add(b.identHash)}}let f=o.filter(I=>A.has(I.identHash));for(let I of f)r.storedDescriptors.delete(I.descriptorHash),r.storedResolutions.delete(I.descriptorHash);return await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}async executeUpClassic(){let t=await ZH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await VXr.Project.find(t,this.context.cwd),a=await ZH.Cache.find(t);if(!n)throw new LXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=yj.getModifier(this,r),f=l?[yj.Strategy.KEEP,yj.Strategy.REUSE,yj.Strategy.PROJECT,yj.Strategy.LATEST]:[yj.Strategy.PROJECT,yj.Strategy.LATEST],I=[],C=[];for(let F of this.patterns){let Q=!1,J=PP.structUtils.parseDescriptor(F),ae=PP.structUtils.stringifyIdent(J);for(let ne of r.workspaces)for(let ce of[yj.Target.REGULAR,yj.Target.DEVELOPMENT]){let ue=[...ne.manifest.getForScope(ce).values()].map(be=>PP.structUtils.stringifyIdent(be)),de=ae==="*"?ue:(0,tcs.default)(ue,ae);for(let be of de){let Se=PP.structUtils.parseIdent(be),De=ne.manifest[ce].get(Se.identHash);if(typeof De>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let k=PP.structUtils.makeDescriptor(Se,J.range);I.push(Promise.resolve().then(async()=>[ne,ce,De,await yj.getSuggestedDescriptors(k,{project:r,workspace:ne,cache:a,target:ce,fixed:o,modifier:A,strategies:f})])),Q=!0}}Q||C.push(F)}if(C.length>1)throw new LH.UsageError(`Patterns ${ZH.formatUtils.prettyList(t,C,ZH.formatUtils.Type.CODE)} don't match any packages referenced by any workspace`);if(C.length>0)throw new LH.UsageError(`Pattern ${ZH.formatUtils.prettyList(t,C,ZH.formatUtils.Type.CODE)} doesn't match any packages referenced by any workspace`);let b=await Promise.all(I),E=await ZH.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async F=>{for(let[,,Q,{suggestions:J,rejections:ae}]of b){let ne=J.filter(ce=>ce.descriptor!==null);if(ne.length===0){let[ce]=ae;if(typeof ce>"u")throw new Error("Assertion failed: Expected an error to have been set");let fe=this.cli.error(ce);r.configuration.get("enableNetwork")?F.reportError(ZH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${PP.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range + `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});MXr.default=Vje});var ncs=H(JXr=>{"use strict";Object.defineProperty(JXr,"__esModule",{value:!0});var XXr=(Wa(),vi(Va)),HXr=sl(),HP=wn(),YXr=wn(),LH=wn(),VH=(vl(),vi(ng)),zfl=j6e(),rcs=XXr.__importDefault(Rk()),QXr=XXr.__importStar((BZ(),vi(vZ))),bj=XXr.__importStar($6e()),mGe=class extends HXr.BaseCommand{constructor(){super(...arguments),this.interactive=VH.Option.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"}),this.fixed=VH.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=VH.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=VH.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=VH.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.recursive=VH.Option.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"}),this.mode=VH.Option.String("--mode",{description:"Change what artifacts installs generate",validator:QXr.isEnum(YXr.InstallMode)}),this.patterns=VH.Option.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let t=await LH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await YXr.Project.find(t,this.context.cwd),a=await LH.Cache.find(t);if(!n)throw new HXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=[...r.storedDescriptors.values()],l=o.map(I=>HP.structUtils.stringifyIdent(I)),A=new Set;for(let I of this.patterns){if(HP.structUtils.parseDescriptor(I).range!=="unknown")throw new VH.UsageError("Ranges aren't allowed when using --recursive");for(let C of(0,rcs.default)(l,I)){let b=HP.structUtils.parseIdent(C);A.add(b.identHash)}}let f=o.filter(I=>A.has(I.identHash));for(let I of f)r.storedDescriptors.delete(I.descriptorHash),r.storedResolutions.delete(I.descriptorHash);return await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}async executeUpClassic(){let t=await LH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await YXr.Project.find(t,this.context.cwd),a=await LH.Cache.find(t);if(!n)throw new HXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=bj.getModifier(this,r),f=l?[bj.Strategy.KEEP,bj.Strategy.REUSE,bj.Strategy.PROJECT,bj.Strategy.LATEST]:[bj.Strategy.PROJECT,bj.Strategy.LATEST],I=[],C=[];for(let F of this.patterns){let Q=!1,J=HP.structUtils.parseDescriptor(F),ae=HP.structUtils.stringifyIdent(J);for(let ne of r.workspaces)for(let ce of[bj.Target.REGULAR,bj.Target.DEVELOPMENT]){let ue=[...ne.manifest.getForScope(ce).values()].map(be=>HP.structUtils.stringifyIdent(be)),de=ae==="*"?ue:(0,rcs.default)(ue,ae);for(let be of de){let Se=HP.structUtils.parseIdent(be),De=ne.manifest[ce].get(Se.identHash);if(typeof De>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let k=HP.structUtils.makeDescriptor(Se,J.range);I.push(Promise.resolve().then(async()=>[ne,ce,De,await bj.getSuggestedDescriptors(k,{project:r,workspace:ne,cache:a,target:ce,fixed:o,modifier:A,strategies:f})])),Q=!0}}Q||C.push(F)}if(C.length>1)throw new VH.UsageError(`Patterns ${LH.formatUtils.prettyList(t,C,LH.formatUtils.Type.CODE)} don't match any packages referenced by any workspace`);if(C.length>0)throw new VH.UsageError(`Pattern ${LH.formatUtils.prettyList(t,C,LH.formatUtils.Type.CODE)} doesn't match any packages referenced by any workspace`);let b=await Promise.all(I),E=await LH.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async F=>{for(let[,,Q,{suggestions:J,rejections:ae}]of b){let ne=J.filter(ce=>ce.descriptor!==null);if(ne.length===0){let[ce]=ae;if(typeof ce>"u")throw new Error("Assertion failed: Expected an error to have been set");let fe=this.cli.error(ce);r.configuration.get("enableNetwork")?F.reportError(LH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${HP.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range -${fe}`):F.reportError(ZH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${PP.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range (note: network resolution has been disabled) +${fe}`):F.reportError(LH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${HP.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range (note: network resolution has been disabled) -${fe}`)}else ne.length>1&&!l&&F.reportError(ZH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${PP.structUtils.prettyDescriptor(t,Q)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(E.hasErrors())return E.exitCode();let N=!1,B=[];for(let[F,Q,,{suggestions:J}]of b){let ae,ne=J.filter(de=>de.descriptor!==null),ce=ne[0].descriptor,fe=ne.every(de=>PP.structUtils.areDescriptorsEqual(de.descriptor,ce));ne.length===1||fe?ae=ce:(N=!0,{answer:ae}=await(0,efl.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${PP.structUtils.prettyWorkspace(t,F)} \u276F ${Q}?`,choices:J.map(({descriptor:de,name:be,reason:Se})=>de?{name:be,hint:Se,descriptor:de}:{name:be,hint:Se,disabled:!0}),onCancel:()=>process.exit(130),result(de){return this.find(de,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let ue=F.manifest[Q].get(ae.identHash);if(typeof ue>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(ue.descriptorHash!==ae.descriptorHash)F.manifest[Q].set(ae.identHash,ae),B.push([F,Q,ue,ae]);else{let de=t.makeResolver(),be={project:r,resolver:de},Se=t.normalizeDependency(ue),De=de.bindDescriptor(Se,F.anchoredLocator,be);r.forgetResolution(De)}}return await t.triggerMultipleHooks(F=>F.afterWorkspaceDependencyReplacement,B),N&&this.context.stdout.write(` -`),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}};mGe.paths=[["up"]];mGe.usage=LH.Command.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]});mGe.schema=[WXr.hasKeyRelationship("recursive",WXr.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];PXr.default=mGe});var ics=H(HXr=>{"use strict";Object.defineProperty(HXr,"__esModule",{value:!0});var ncs=dl(),MXr=mn(),QR=mn(),CGe=(Rl(),vi(ng)),Oje=class extends ncs.BaseCommand{constructor(){super(...arguments),this.recursive=CGe.Option.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"}),this.json=CGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.peers=CGe.Option.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"}),this.package=CGe.Option.String()}async execute(){let t=await MXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await MXr.Project.find(t,this.context.cwd);if(!n)throw new ncs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=QR.structUtils.parseDescriptor(this.package,!1);if(a.range!=="unknown"&&MXr.semverUtils.validRange(a.range)===null)throw new CGe.UsageError(`Expected a valid semver range, got ${a.range}`);let o=this.recursive?rfl(r,a,{configuration:t,peers:this.peers}):tfl(r,a,{configuration:t,peers:this.peers});QR.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1})}};Oje.paths=[["why"]];Oje.usage=CGe.Command.Usage({description:"display the reason why a package is needed",details:` +${fe}`)}else ne.length>1&&!l&&F.reportError(LH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${HP.structUtils.prettyDescriptor(t,Q)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(E.hasErrors())return E.exitCode();let N=!1,B=[];for(let[F,Q,,{suggestions:J}]of b){let ae,ne=J.filter(de=>de.descriptor!==null),ce=ne[0].descriptor,fe=ne.every(de=>HP.structUtils.areDescriptorsEqual(de.descriptor,ce));ne.length===1||fe?ae=ce:(N=!0,{answer:ae}=await(0,zfl.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${HP.structUtils.prettyWorkspace(t,F)} \u276F ${Q}?`,choices:J.map(({descriptor:de,name:be,reason:Se})=>de?{name:be,hint:Se,descriptor:de}:{name:be,hint:Se,disabled:!0}),onCancel:()=>process.exit(130),result(de){return this.find(de,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let ue=F.manifest[Q].get(ae.identHash);if(typeof ue>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(ue.descriptorHash!==ae.descriptorHash)F.manifest[Q].set(ae.identHash,ae),B.push([F,Q,ue,ae]);else{let de=t.makeResolver(),be={project:r,resolver:de},Se=t.normalizeDependency(ue),De=de.bindDescriptor(Se,F.anchoredLocator,be);r.forgetResolution(De)}}return await t.triggerMultipleHooks(F=>F.afterWorkspaceDependencyReplacement,B),N&&this.context.stdout.write(` +`),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}};mGe.paths=[["up"]];mGe.usage=VH.Command.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]});mGe.schema=[QXr.hasKeyRelationship("recursive",QXr.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];JXr.default=mGe});var scs=H(KXr=>{"use strict";Object.defineProperty(KXr,"__esModule",{value:!0});var ics=sl(),UXr=wn(),XR=wn(),CGe=(vl(),vi(ng)),Wje=class extends ics.BaseCommand{constructor(){super(...arguments),this.recursive=CGe.Option.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"}),this.json=CGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.peers=CGe.Option.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"}),this.package=CGe.Option.String()}async execute(){let t=await UXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await UXr.Project.find(t,this.context.cwd);if(!n)throw new ics.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=XR.structUtils.parseDescriptor(this.package,!1);if(a.range!=="unknown"&&UXr.semverUtils.validRange(a.range)===null)throw new CGe.UsageError(`Expected a valid semver range, got ${a.range}`);let o=this.recursive?$fl(r,a,{configuration:t,peers:this.peers}):qfl(r,a,{configuration:t,peers:this.peers});XR.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1})}};Wje.paths=[["why"]];Wje.usage=CGe.Command.Usage({description:"display the reason why a package is needed",details:` This command prints the exact reasons why a package appears in the dependency tree. Specify a version or range to determine why the dependency tree contains a specific version of a package. This is particularly useful when trying to find out why your project depends on lower versions. If \`-R,--recursive\` is set, the listing will go in depth and will list, for each workspaces, what are all the paths that lead to the dependency. Note that the display is somewhat optimized in that it will not print the package listing twice for a single package, so if you see a leaf named "Foo" when looking for "Bar", it means that "Foo" already got printed higher in the tree. - `,examples:[["Explain why lodash is used in your project","$0 why lodash"],["Explain why version 3.3.1 of lodash is in your project","$0 why lodash@3.3.1"],["Explain why version 3.X of lodash is in your project","$0 why lodash@^3"]]});HXr.default=Oje;function tfl(e,t,{configuration:r,peers:n}){let a=QR.miscUtils.sortMap(e.storedPackages.values(),A=>QR.structUtils.stringifyLocator(A)),o={},l={children:o};for(let A of a){let f={};for(let C of A.dependencies.values()){if(!n&&A.peerDependencies.has(C.identHash))continue;let b=e.storedResolutions.get(C.descriptorHash);if(!b)throw new Error("Assertion failed: The resolution should have been registered");let E=e.storedPackages.get(b);if(!E)throw new Error("Assertion failed: The package should have been registered");if(!QR.structUtils.areIdentsEqual(E,t)||!QR.structUtils.isPackageInRange(E,t.range))continue;{let B=QR.structUtils.stringifyLocator(A);o[B]={value:[A,QR.formatUtils.Type.LOCATOR],children:f}}let N=QR.structUtils.stringifyLocator(E);f[N]={value:[{descriptor:C,locator:E},QR.formatUtils.Type.DEPENDENT]}}}return l}function rfl(e,t,{configuration:r,peers:n}){let a=QR.miscUtils.sortMap(e.workspaces,E=>QR.structUtils.stringifyLocator(E.anchoredLocator)),o=new Set,l=new Set,A=E=>{if(o.has(E.locatorHash))return l.has(E.locatorHash);if(o.add(E.locatorHash),QR.structUtils.areIdentsEqual(E,t)&&QR.structUtils.isPackageInRange(E,t.range))return l.add(E.locatorHash),!0;let N=!1;for(let B of E.dependencies.values()){if(!n&&E.peerDependencies.has(B.identHash))continue;let F=e.storedResolutions.get(B.descriptorHash);if(!F)throw new Error("Assertion failed: The resolution should have been registered");let Q=e.storedPackages.get(F);if(!Q)throw new Error("Assertion failed: The package should have been registered");A(Q)&&(N=!0)}return N&&l.add(E.locatorHash),N};for(let E of a)A(E.anchoredPackage);let f=new Set,I={},C={children:I},b=(E,N,B)=>{if(!l.has(E.locatorHash))return;let F=B!==null?QR.formatUtils.tuple(QR.formatUtils.Type.DEPENDENT,{locator:E,descriptor:B}):QR.formatUtils.tuple(QR.formatUtils.Type.LOCATOR,E),Q={},J={value:F,children:Q},ae=QR.structUtils.stringifyLocator(E);if(N[ae]=J,!(B!==null&&e.tryWorkspaceByLocator(E))&&!f.has(E.locatorHash)){f.add(E.locatorHash);for(let ne of E.dependencies.values()){if(!n&&E.peerDependencies.has(ne.identHash))continue;let ce=e.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=e.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");b(fe,Q,ne)}}};for(let E of a)b(E.anchoredPackage,I,null);return C}});var YXr=H((equ,scs)=>{"use strict";scs.exports=function(t,r){r===!0&&(r=0);var n="";if(typeof t=="string")try{n=new URL(t).protocol}catch{}else t&&t.constructor===URL&&(n=t.protocol);var a=n.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var acs=H((tqu,ocs)=>{"use strict";var nfl=YXr();function ifl(e){var t={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:e,query:{},parse_failed:!1};try{var r=new URL(e);t.protocols=nfl(r),t.protocol=t.protocols[0],t.port=r.port,t.resource=r.hostname,t.host=r.host,t.user=r.username||"",t.password=r.password||"",t.pathname=r.pathname,t.hash=r.hash.slice(1),t.search=r.search.slice(1),t.href=r.href,t.query=Object.fromEntries(r.searchParams)}catch{t.protocols=["file"],t.protocol=t.protocols[0],t.port="",t.resource="",t.user="",t.pathname="",t.hash="",t.search="",t.href=e,t.query={},t.parse_failed=!0}return t}ocs.exports=ifl});var ucs=H((rqu,lcs)=>{"use strict";var sfl=acs();function ofl(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var afl=ofl(sfl),cfl="text/plain",lfl="us-ascii",ccs=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),ufl=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===lfl)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length>0||f&&f!==cfl)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`};function gfl(e,t){if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return ufl(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let l=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,A=0,f="";for(;;){let C=l.exec(a.pathname);if(!C)break;let b=C[0],E=C.index,N=a.pathname.slice(A,E);f+=N.replace(/\/{2,}/g,"/"),f+=b,A=E+b.length}let I=a.pathname.slice(A,a.pathname.length);f+=I.replace(/\/{2,}/g,"/"),a.pathname=f}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(t.removeDirectoryIndex===!0&&(t.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(t.removeDirectoryIndex)&&t.removeDirectoryIndex.length>0){let l=a.pathname.split("/"),A=l[l.length-1];ccs(A,t.removeDirectoryIndex)&&(l=l.slice(0,-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])ccs(l,t.removeQueryParameters)&&a.searchParams.delete(l);if(t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e}var QXr=(e,t=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,n=o=>{let l=new Error(o);throw l.subject_url=e,l};(typeof e!="string"||!e.trim())&&n("Invalid url."),e.length>QXr.MAX_INPUT_LENGTH&&n("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),t&&(typeof t!="object"&&(t={stripHash:!1}),e=gfl(e,t));let a=afl.default(e);if(a.parse_failed){let o=a.href.match(r);o?(a.protocols=["ssh"],a.protocol="ssh",a.resource=o[2],a.host=o[2],a.user=o[1],a.pathname=`/${o[3]}`,a.parse_failed=!1):n("URL parsing failed.")}return a};QXr.MAX_INPUT_LENGTH=2048;lcs.exports=QXr});var dcs=H((nqu,Acs)=>{"use strict";var Afl=YXr();function gcs(e){if(Array.isArray(e))return e.indexOf("ssh")!==-1||e.indexOf("rsync")!==-1;if(typeof e!="string")return!1;var t=Afl(e);if(e=e.substring(e.indexOf("://")+3),gcs(t))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!e.match(r)&&e.indexOf("@"){"use strict";var dfl=ucs(),pcs=dcs();function pfl(e){var t=dfl(e);return t.token="",t.password==="x-oauth-basic"?t.token=t.user:t.user==="x-token-auth"&&(t.token=t.password),pcs(t.protocols)||t.protocols.length===0&&pcs(e)?t.protocol="ssh":t.protocols.length?t.protocol=t.protocols[0]:(t.protocol="file",t.protocols=["file"]),t.href=t.href.replace(/\/$/,""),t}fcs.exports=pfl});var mcs=H((squ,hcs)=>{"use strict";var ffl=Ics();function XXr(e){if(typeof e!="string")throw new Error("The url must be a string.");var t=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;t.test(e)&&(e="https://github.com/"+e);var r=ffl(e),n=r.resource.split("."),a=null;switch(r.toString=function(Q){return XXr.stringify(this,Q)},r.source=n.length>2?n.slice(1-n.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=n[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var o=a.length-1;if(a.length>=2){var l=a.indexOf("-",2),A=a.indexOf("blob",2),f=a.indexOf("tree",2),I=a.indexOf("commit",2),C=a.indexOf("src",2),b=a.indexOf("raw",2),E=a.indexOf("edit",2);o=l>0?l-1:A>0?A-1:f>0?f-1:I>0?I-1:C>0?C-1:b>0?b-1:E>0?E-1:o,r.owner=a.slice(0,o).join("/"),r.name=a[o],I&&(r.commit=a[o+2])}r.ref="",r.filepathtype="",r.filepath="";var N=a.length>o&&a[o+1]==="-"?o+1:o;a.length>N+2&&["raw","src","blob","tree","edit"].indexOf(a[N+1])>=0&&(r.filepathtype=a[N+1],r.ref=a[N+2],a.length>N+3&&(r.filepath=a.slice(N+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var B=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,F=B.exec(r.pathname);return F!=null&&(r.source="bitbucket-server",F[1]==="users"?r.owner="~"+F[2]:r.owner=F[2],r.organization=r.owner,r.name=F[3],a=F[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}XXr.stringify=function(e,t){t=t||(e.protocols&&e.protocols.length?e.protocols.join("+"):e.protocol);var r=e.port?":"+e.port:"",n=e.user||"git",a=e.git_suffix?".git":"";switch(t){case"ssh":return r?"ssh://"+n+"@"+e.resource+r+"/"+e.full_name+a:n+"@"+e.resource+":"+e.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return t+"://"+n+"@"+e.resource+r+"/"+e.full_name+a;case"http":case"https":var o=e.token?Ifl(e):e.user&&(e.protocols.includes("http")||e.protocols.includes("https"))?e.user+"@":"";return t+"://"+o+e.resource+r+"/"+hfl(e)+a;default:return e.href}};function Ifl(e){switch(e.source){case"bitbucket.org":return"x-token-auth:"+e.token+"@";default:return e.token+"@"}}function hfl(e){switch(e.source){case"bitbucket-server":return"scm/"+e.full_name;default:return""+e.full_name}}hcs.exports=XXr});var _cs=H(UXr=>{"use strict";Object.defineProperty(UXr,"__esModule",{value:!0});UXr.tryParseGitURL=Cfl;function JXr(e,t,r){let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)}function Ccs(e){try{return new URL(e)}catch{return}}function mfl(e){let t=JXr(e,"@","#"),r=JXr(e,":","#");return r>t&&(e=`${e.slice(0,r)}/${e.slice(r+1)}`),JXr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`ssh://${e}`),e}function Cfl(e){return Ccs(e)||Ccs(mfl(e))}});var ycs=H(KXr=>{"use strict";Object.defineProperty(KXr,"__esModule",{value:!0});KXr.normalizeRepoUrl=yfl;var _fl=_cs();function yfl(e,{git:t=!1}={}){if(e=e.replace(/^git\+https:/,"https:"),e=e.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),e=e.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),t){let r=(0,_fl.tryParseGitURL)(e);r&&(e=r.href),e=e.replace(/^git\+([^:]+):/,"$1:")}return e}});var xxt=H(dx=>{"use strict";Object.defineProperty(dx,"__esModule",{value:!0});dx.TreeishProtocols=dx.normalizeRepoUrl=void 0;dx.isGitUrl=vfl;dx.splitRepoUrl=kxt;dx.normalizeLocator=Bfl;dx.validateRepoUrl=qXr;dx.lsRemote=Scs;dx.resolveUrl=wfl;dx.clone=Tfl;dx.fetchRoot=vcs;dx.fetchBase=Bcs;dx.fetchChangedFiles=wcs;dx.fetchChangedWorkspaces=Rfl;var zXr=(Wa(),vi(Va)),By=mn(),pL=Io(),Dxt=(Rl(),vi(ng)),bfl=WO(),Efl=zXr.__importDefault(mcs()),Pje=zXr.__importDefault(Et("querystring")),bcs=zXr.__importDefault(jC()),Mje=ycs();Object.defineProperty(dx,"normalizeRepoUrl",{enumerable:!0,get:function(){return Mje.normalizeRepoUrl}});function Ecs(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var Sfl=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],MP;(function(e){e.Commit="commit",e.Head="head",e.Tag="tag",e.Semver="semver"})(MP||(dx.TreeishProtocols=MP={}));function vfl(e){return e?Sfl.some(t=>!!e.match(t)):!1}function kxt(e){e=(0,Mje.normalizeRepoUrl)(e);let t=e.indexOf("#");if(t===-1)return{repo:e,treeish:{protocol:MP.Head,request:"HEAD"},extra:{}};let r=e.slice(0,t),n=e.slice(t+1);if(n.match(/^[a-z]+=/)){let a=Pje.default.parse(n);for(let[f,I]of Object.entries(a))if(typeof I!="string")throw new Error(`Assertion failed: The ${f} parameter must be a literal string`);let o=Object.values(MP).find(f=>Object.hasOwn(a,f)),[l,A]=typeof o<"u"?[o,a[o]]:[MP.Head,"HEAD"];for(let f of Object.values(MP))delete a[f];return{repo:r,treeish:{protocol:l,request:A},extra:a}}else{let a=n.indexOf(":"),[o,l]=a===-1?[null,n]:[n.slice(0,a),n.slice(a+1)];return{repo:r,treeish:{protocol:o,request:l},extra:{}}}}function Bfl(e){return By.structUtils.makeLocator(e,(0,Mje.normalizeRepoUrl)(e.reference))}function qXr(e,{configuration:t}){let{repo:r}=kxt(e),n=(0,Mje.normalizeRepoUrl)(r,{git:!0});if(!By.httpUtils.getNetworkSettings(`https://${(0,Efl.default)(n).resource}`,{configuration:t}).enableNetwork)throw new By.ReportError(By.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because of your configuration settings`);let o=By.miscUtils.buildIgnorePattern(t.get("approvedGitRepositories"));if(o===null||!n.match(o))throw new By.ReportError(By.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because it doesn't match any of the patterns in 'approvedGitRepositories'`);return n}async function Scs(e,t){let r=qXr(e,{configuration:t}),n=await jXr("listing refs",["ls-remote",r],{cwd:t.startingCwd,env:Ecs()},{configuration:t,normalizedRepoUrl:r}),a=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,l;for(;(l=o.exec(n.stdout))!==null;)a.set(l[2],l[1]);return a}async function wfl(e,t){let{repo:r,treeish:{protocol:n,request:a},extra:o}=kxt(e),l=await Scs(r,t),A=(I,C)=>{switch(I){case MP.Commit:{if(!C.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return Pje.default.stringify({...o,commit:C})}case MP.Head:{let b=l.get(C==="HEAD"?C:`refs/heads/${C}`);if(typeof b>"u")throw new Error(`Unknown head ("${C}")`);return Pje.default.stringify({...o,commit:b})}case MP.Tag:{let b=l.get(`refs/tags/${C}`);if(typeof b>"u")throw new Error(`Unknown tag ("${C}")`);return Pje.default.stringify({...o,commit:b})}case MP.Semver:{let b=By.semverUtils.validRange(C);if(!b)throw new Error(`Invalid range ("${C}")`);let E=new Map([...l.entries()].filter(([B])=>B.startsWith("refs/tags/")).map(([B,F])=>[bcs.default.parse(B.slice(10)),F]).filter(B=>B[0]!==null)),N=bcs.default.maxSatisfying([...E.keys()],b);if(N===null)throw new Error(`No matching range ("${C}")`);return Pje.default.stringify({...o,commit:E.get(N)})}case null:{let b;if((b=f(MP.Commit,C))!==null||(b=f(MP.Tag,C))!==null||(b=f(MP.Head,C))!==null)return b;throw C.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${I}")`)}},f=(I,C)=>{try{return A(I,C)}catch{return null}};return(0,Mje.normalizeRepoUrl)(`${r}#${A(n,a)}`)}async function Tfl(e,t){return await t.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:n,request:a}}=kxt(e);if(n!=="commit")throw new Error("Invalid treeish protocol when cloning");let o=qXr(r,{configuration:t}),l=await pL.xfs.mktempPromise(),A={cwd:l,env:Ecs()};return await jXr("cloning the repository",["clone","-c","core.autocrlf=false",o,pL.npath.fromPortablePath(l)],A,{configuration:t,normalizedRepoUrl:o}),await jXr("switching branch",["checkout",`${a}`],A,{configuration:t,normalizedRepoUrl:o}),l})}async function vcs(e){let t,r=e;do{if(t=r,await pL.xfs.existsPromise(pL.ppath.join(t,".git")))return t;r=pL.ppath.dirname(t)}while(r!==t);return null}async function Bcs(e,{baseRefs:t}){if(t.length===0)throw new Dxt.UsageError("Can't run this command with zero base refs specified.");let r=[];for(let A of t){let{code:f}=await By.execUtils.execvp("git",["merge-base",A,"HEAD"],{cwd:e});f===0&&r.push(A)}if(r.length===0)throw new Dxt.UsageError(`No ancestor could be found between any of HEAD and ${t.join(", ")}`);let{stdout:n}=await By.execUtils.execvp("git",["merge-base","HEAD",...r],{cwd:e,strict:!0}),a=n.trim(),{stdout:o}=await By.execUtils.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:e,strict:!0}),l=o.trim();return{hash:a,title:l}}async function wcs(e,{base:t,project:r}){let n=By.miscUtils.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await By.execUtils.execvp("git",["diff","--name-only",`${t}`],{cwd:e,strict:!0}),o=a.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>pL.ppath.resolve(e,pL.npath.toPortablePath(I))),{stdout:l}=await By.execUtils.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:e,strict:!0}),A=l.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>pL.ppath.resolve(e,pL.npath.toPortablePath(I))),f=[...new Set([...o,...A].sort())];return n?f.filter(I=>!pL.ppath.relative(r.cwd,I).match(n)):f}async function Rfl({ref:e,project:t}){if(t.configuration.projectCwd===null)throw new Dxt.UsageError("This command can only be run from within a Yarn project");let r=[pL.ppath.resolve(t.cwd,pL.Filename.lockfile),pL.ppath.resolve(t.cwd,t.configuration.get("cacheFolder")),pL.ppath.resolve(t.cwd,t.configuration.get("installStatePath")),pL.ppath.resolve(t.cwd,t.configuration.get("virtualFolder"))];await t.configuration.triggerHook(l=>l.populateYarnPaths,t,l=>{l!=null&&r.push(l)});let n=await vcs(t.configuration.projectCwd);if(n==null)throw new Dxt.UsageError("This command can only be run on Git repositories");let a=await Bcs(n,{baseRefs:typeof e=="string"?[e]:t.configuration.get("changesetBaseRefs")}),o=await wcs(n,{base:a.hash,project:t});return new Set(By.miscUtils.mapAndFilter(o,l=>{let A=t.tryWorkspaceByFilePath(l);return A===null||r.some(f=>l.startsWith(f))?By.miscUtils.mapAndFilter.skip:A}))}async function jXr(e,t,r,{configuration:n,normalizedRepoUrl:a}){try{return await By.execUtils.execvp("git",t,{...r,strict:!0})}catch(o){if(!(o instanceof By.execUtils.ExecError))throw o;let l=o.reportExtra,A=o.stderr.toString();throw new By.ReportError(By.MessageName.EXCEPTION,`Failed ${e}`,f=>{f.reportError(By.MessageName.EXCEPTION,` ${By.formatUtils.prettyField(n,{label:"Repository URL",value:By.formatUtils.tuple(By.formatUtils.Type.URL,a)})}`);for(let I of A.matchAll(/^(.+?): (.*)$/gm)){let[,C,b]=I;C=C.toLowerCase();let E=C==="error"?"Error":`${(0,bfl.capitalize)(C)} Error`;f.reportError(By.MessageName.EXCEPTION,` ${By.formatUtils.prettyField(n,{label:E,value:By.formatUtils.tuple(By.formatUtils.Type.NO_HINT,b)})}`)}l?.(f)})}}});var Tcs=H(Fxt=>{"use strict";Object.defineProperty(Fxt,"__esModule",{value:!0});Fxt.GitFetcher=void 0;var Nfl=(Wa(),vi(Va)),_Ge=mn(),Gxt=Io(),$Xr=Nfl.__importStar(xxt()),e4r=class{supports(t,r){return $Xr.isGitUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,a=new Map(r.checksums);a.set(t.locatorHash,n);let o={...r,checksums:a},l=await this.downloadHosted(t,o);if(l!==null)return l;let[A,f,I]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${_Ge.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(t,o),...r.cacheOptions});return{packageFs:A,releaseFs:f,prefixPath:_Ge.structUtils.getIdentVendorPath(t),checksum:I}}async downloadHosted(t,r){return r.project.configuration.reduceHook(n=>n.fetchHostedRepository,null,t,r)}async cloneFromRemote(t,r){let n=$Xr.splitRepoUrl(t.reference),a=await $Xr.clone(t.reference,r.project.configuration),o=Gxt.ppath.resolve(a,n.extra.cwd??Gxt.PortablePath.dot),l=Gxt.ppath.join(o,"package.tgz");await _Ge.scriptUtils.prepareExternalProject(o,l,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:t});let A=await Gxt.xfs.readFilePromise(l);return await _Ge.miscUtils.releaseAfterUseAsync(async()=>await _Ge.tgzUtils.convertToZip(A,{configuration:r.project.configuration,prefixPath:_Ge.structUtils.getIdentVendorPath(t),stripComponents:1}))}};Fxt.GitFetcher=e4r});var Ncs=H(Zxt=>{"use strict";Object.defineProperty(Zxt,"__esModule",{value:!0});Zxt.GitResolver=void 0;var Dfl=(Wa(),vi(Va)),Rcs=mn(),kfl=mn(),xfl=mn(),yGe=Dfl.__importStar(xxt()),t4r=class{supportsDescriptor(t,r){return yGe.isGitUrl(t.range)}supportsLocator(t,r){return yGe.isGitUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=await yGe.resolveUrl(t.range,n.project.configuration);return[Rcs.structUtils.makeLocator(t,a)]}async getSatisfying(t,r,n,a){let o=yGe.splitRepoUrl(t.range);return{locators:n.filter(A=>{if(A.identHash!==t.identHash)return!1;let f=yGe.splitRepoUrl(A.reference);return!(o.repo!==f.repo||o.treeish.protocol===yGe.TreeishProtocols.Commit&&o.treeish.request!==f.treeish.request)}),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Rcs.miscUtils.releaseAfterUseAsync(async()=>await xfl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:kfl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Zxt.GitResolver=t4r});var bGe=H(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.GitResolver=Mte.GitFetcher=Mte.gitUtils=void 0;var Gfl=(Wa(),vi(Va)),Lxt=mn(),Dcs=Tcs();Object.defineProperty(Mte,"GitFetcher",{enumerable:!0,get:function(){return Dcs.GitFetcher}});var kcs=Ncs();Object.defineProperty(Mte,"GitResolver",{enumerable:!0,get:function(){return kcs.GitResolver}});var Ffl=Gfl.__importStar(xxt());Mte.gitUtils=Ffl;var Zfl={configuration:{approvedGitRepositories:{description:"Array of git repository URL glob patterns that are allowed to be fetched",type:Lxt.SettingsType.STRING,default:[],isArray:!0},changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:Lxt.SettingsType.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:Lxt.SettingsType.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:Lxt.SettingsType.NUMBER,default:2}},fetchers:[Dcs.GitFetcher],resolvers:[kcs.GitResolver]};Mte.default=Zfl});var xcs=H(r4r=>{"use strict";Object.defineProperty(r4r,"__esModule",{value:!0});var Lfl=dl(),EGe=mn(),Vfl=bGe(),SGe=(Rl(),vi(ng)),Hje=class extends Lfl.BaseCommand{constructor(){super(...arguments),this.since=SGe.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.recursive=SGe.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"}),this.noPrivate=SGe.Option.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"}),this.verbose=SGe.Option.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"}),this.json=SGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await EGe.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await EGe.Project.find(t,this.context.cwd);return(await EGe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{let o=this.since?await Vfl.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,l=new Set(o);if(this.recursive)for(let A of[...o].map(f=>f.getRecursiveWorkspaceDependents()))for(let f of A)l.add(f);for(let A of l){let{manifest:f}=A;if(f.private&&this.noPrivate)continue;let I;if(this.verbose){let C=new Set,b=new Set;for(let E of EGe.Manifest.hardDependencies)for(let[N,B]of f.getForScope(E)){let F=r.tryWorkspaceByDescriptor(B);F===null?r.workspacesByIdent.has(N)&&b.add(B):C.add(F)}I={workspaceDependencies:Array.from(C).map(E=>E.relativeCwd),mismatchedWorkspaceDependencies:Array.from(b).map(E=>EGe.structUtils.stringifyDescriptor(E))}}a.reportInfo(null,`${A.relativeCwd}`),a.reportJson({location:A.relativeCwd,name:f.name?EGe.structUtils.stringifyIdent(f.name):null,...I})}})).exitCode()}};Hje.paths=[["workspaces","list"]];Hje.usage=SGe.Command.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});r4r.default=Hje});var Zcs=H(n4r=>{"use strict";Object.defineProperty(n4r,"__esModule",{value:!0});var Gcs=dl(),Fcs=mn(),Wfl=mn(),Yje=(Rl(),vi(ng)),Qje=class extends Gcs.BaseCommand{constructor(){super(...arguments),this.workspaceName=Yje.Option.String(),this.commandName=Yje.Option.String(),this.args=Yje.Option.Proxy()}async execute(){let t=await Fcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Fcs.Project.find(t,this.context.cwd);if(!n)throw new Gcs.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=r.workspaces,o=new Map(a.map(A=>[Wfl.structUtils.stringifyIdent(A.anchoredLocator),A])),l=o.get(this.workspaceName);if(l===void 0){let A=Array.from(o.keys()).sort();throw new Yje.UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: + `,examples:[["Explain why lodash is used in your project","$0 why lodash"],["Explain why version 3.3.1 of lodash is in your project","$0 why lodash@3.3.1"],["Explain why version 3.X of lodash is in your project","$0 why lodash@^3"]]});KXr.default=Wje;function qfl(e,t,{configuration:r,peers:n}){let a=XR.miscUtils.sortMap(e.storedPackages.values(),A=>XR.structUtils.stringifyLocator(A)),o={},l={children:o};for(let A of a){let f={};for(let C of A.dependencies.values()){if(!n&&A.peerDependencies.has(C.identHash))continue;let b=e.storedResolutions.get(C.descriptorHash);if(!b)throw new Error("Assertion failed: The resolution should have been registered");let E=e.storedPackages.get(b);if(!E)throw new Error("Assertion failed: The package should have been registered");if(!XR.structUtils.areIdentsEqual(E,t)||!XR.structUtils.isPackageInRange(E,t.range))continue;{let B=XR.structUtils.stringifyLocator(A);o[B]={value:[A,XR.formatUtils.Type.LOCATOR],children:f}}let N=XR.structUtils.stringifyLocator(E);f[N]={value:[{descriptor:C,locator:E},XR.formatUtils.Type.DEPENDENT]}}}return l}function $fl(e,t,{configuration:r,peers:n}){let a=XR.miscUtils.sortMap(e.workspaces,E=>XR.structUtils.stringifyLocator(E.anchoredLocator)),o=new Set,l=new Set,A=E=>{if(o.has(E.locatorHash))return l.has(E.locatorHash);if(o.add(E.locatorHash),XR.structUtils.areIdentsEqual(E,t)&&XR.structUtils.isPackageInRange(E,t.range))return l.add(E.locatorHash),!0;let N=!1;for(let B of E.dependencies.values()){if(!n&&E.peerDependencies.has(B.identHash))continue;let F=e.storedResolutions.get(B.descriptorHash);if(!F)throw new Error("Assertion failed: The resolution should have been registered");let Q=e.storedPackages.get(F);if(!Q)throw new Error("Assertion failed: The package should have been registered");A(Q)&&(N=!0)}return N&&l.add(E.locatorHash),N};for(let E of a)A(E.anchoredPackage);let f=new Set,I={},C={children:I},b=(E,N,B)=>{if(!l.has(E.locatorHash))return;let F=B!==null?XR.formatUtils.tuple(XR.formatUtils.Type.DEPENDENT,{locator:E,descriptor:B}):XR.formatUtils.tuple(XR.formatUtils.Type.LOCATOR,E),Q={},J={value:F,children:Q},ae=XR.structUtils.stringifyLocator(E);if(N[ae]=J,!(B!==null&&e.tryWorkspaceByLocator(E))&&!f.has(E.locatorHash)){f.add(E.locatorHash);for(let ne of E.dependencies.values()){if(!n&&E.peerDependencies.has(ne.identHash))continue;let ce=e.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=e.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");b(fe,Q,ne)}}};for(let E of a)b(E.anchoredPackage,I,null);return C}});var jXr=H((f$u,ocs)=>{"use strict";ocs.exports=function(t,r){r===!0&&(r=0);var n="";if(typeof t=="string")try{n=new URL(t).protocol}catch{}else t&&t.constructor===URL&&(n=t.protocol);var a=n.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var ccs=H((I$u,acs)=>{"use strict";var eIl=jXr();function tIl(e){var t={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:e,query:{},parse_failed:!1};try{var r=new URL(e);t.protocols=eIl(r),t.protocol=t.protocols[0],t.port=r.port,t.resource=r.hostname,t.host=r.host,t.user=r.username||"",t.password=r.password||"",t.pathname=r.pathname,t.hash=r.hash.slice(1),t.search=r.search.slice(1),t.href=r.href,t.query=Object.fromEntries(r.searchParams)}catch{t.protocols=["file"],t.protocol=t.protocols[0],t.port="",t.resource="",t.user="",t.pathname="",t.hash="",t.search="",t.href=e,t.query={},t.parse_failed=!0}return t}acs.exports=tIl});var gcs=H((h$u,ucs)=>{"use strict";var rIl=ccs();function nIl(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var iIl=nIl(rIl),sIl="text/plain",oIl="us-ascii",lcs=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),aIl=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===oIl)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length>0||f&&f!==sIl)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`};function cIl(e,t){if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return aIl(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let l=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,A=0,f="";for(;;){let C=l.exec(a.pathname);if(!C)break;let b=C[0],E=C.index,N=a.pathname.slice(A,E);f+=N.replace(/\/{2,}/g,"/"),f+=b,A=E+b.length}let I=a.pathname.slice(A,a.pathname.length);f+=I.replace(/\/{2,}/g,"/"),a.pathname=f}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(t.removeDirectoryIndex===!0&&(t.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(t.removeDirectoryIndex)&&t.removeDirectoryIndex.length>0){let l=a.pathname.split("/"),A=l[l.length-1];lcs(A,t.removeDirectoryIndex)&&(l=l.slice(0,-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])lcs(l,t.removeQueryParameters)&&a.searchParams.delete(l);if(t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e}var zXr=(e,t=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,n=o=>{let l=new Error(o);throw l.subject_url=e,l};(typeof e!="string"||!e.trim())&&n("Invalid url."),e.length>zXr.MAX_INPUT_LENGTH&&n("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),t&&(typeof t!="object"&&(t={stripHash:!1}),e=cIl(e,t));let a=iIl.default(e);if(a.parse_failed){let o=a.href.match(r);o?(a.protocols=["ssh"],a.protocol="ssh",a.resource=o[2],a.host=o[2],a.user=o[1],a.pathname=`/${o[3]}`,a.parse_failed=!1):n("URL parsing failed.")}return a};zXr.MAX_INPUT_LENGTH=2048;ucs.exports=zXr});var pcs=H((m$u,dcs)=>{"use strict";var lIl=jXr();function Acs(e){if(Array.isArray(e))return e.indexOf("ssh")!==-1||e.indexOf("rsync")!==-1;if(typeof e!="string")return!1;var t=lIl(e);if(e=e.substring(e.indexOf("://")+3),Acs(t))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!e.match(r)&&e.indexOf("@"){"use strict";var uIl=gcs(),fcs=pcs();function gIl(e){var t=uIl(e);return t.token="",t.password==="x-oauth-basic"?t.token=t.user:t.user==="x-token-auth"&&(t.token=t.password),fcs(t.protocols)||t.protocols.length===0&&fcs(e)?t.protocol="ssh":t.protocols.length?t.protocol=t.protocols[0]:(t.protocol="file",t.protocols=["file"]),t.href=t.href.replace(/\/$/,""),t}Ics.exports=gIl});var Ccs=H((_$u,mcs)=>{"use strict";var AIl=hcs();function qXr(e){if(typeof e!="string")throw new Error("The url must be a string.");var t=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;t.test(e)&&(e="https://github.com/"+e);var r=AIl(e),n=r.resource.split("."),a=null;switch(r.toString=function(Q){return qXr.stringify(this,Q)},r.source=n.length>2?n.slice(1-n.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=n[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var o=a.length-1;if(a.length>=2){var l=a.indexOf("-",2),A=a.indexOf("blob",2),f=a.indexOf("tree",2),I=a.indexOf("commit",2),C=a.indexOf("src",2),b=a.indexOf("raw",2),E=a.indexOf("edit",2);o=l>0?l-1:A>0?A-1:f>0?f-1:I>0?I-1:C>0?C-1:b>0?b-1:E>0?E-1:o,r.owner=a.slice(0,o).join("/"),r.name=a[o],I&&(r.commit=a[o+2])}r.ref="",r.filepathtype="",r.filepath="";var N=a.length>o&&a[o+1]==="-"?o+1:o;a.length>N+2&&["raw","src","blob","tree","edit"].indexOf(a[N+1])>=0&&(r.filepathtype=a[N+1],r.ref=a[N+2],a.length>N+3&&(r.filepath=a.slice(N+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var B=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,F=B.exec(r.pathname);return F!=null&&(r.source="bitbucket-server",F[1]==="users"?r.owner="~"+F[2]:r.owner=F[2],r.organization=r.owner,r.name=F[3],a=F[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}qXr.stringify=function(e,t){t=t||(e.protocols&&e.protocols.length?e.protocols.join("+"):e.protocol);var r=e.port?":"+e.port:"",n=e.user||"git",a=e.git_suffix?".git":"";switch(t){case"ssh":return r?"ssh://"+n+"@"+e.resource+r+"/"+e.full_name+a:n+"@"+e.resource+":"+e.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return t+"://"+n+"@"+e.resource+r+"/"+e.full_name+a;case"http":case"https":var o=e.token?dIl(e):e.user&&(e.protocols.includes("http")||e.protocols.includes("https"))?e.user+"@":"";return t+"://"+o+e.resource+r+"/"+pIl(e)+a;default:return e.href}};function dIl(e){switch(e.source){case"bitbucket.org":return"x-token-auth:"+e.token+"@";default:return e.token+"@"}}function pIl(e){switch(e.source){case"bitbucket-server":return"scm/"+e.full_name;default:return""+e.full_name}}mcs.exports=qXr});var ycs=H(e4r=>{"use strict";Object.defineProperty(e4r,"__esModule",{value:!0});e4r.tryParseGitURL=IIl;function $Xr(e,t,r){let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)}function _cs(e){try{return new URL(e)}catch{return}}function fIl(e){let t=$Xr(e,"@","#"),r=$Xr(e,":","#");return r>t&&(e=`${e.slice(0,r)}/${e.slice(r+1)}`),$Xr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`ssh://${e}`),e}function IIl(e){return _cs(e)||_cs(fIl(e))}});var bcs=H(t4r=>{"use strict";Object.defineProperty(t4r,"__esModule",{value:!0});t4r.normalizeRepoUrl=mIl;var hIl=ycs();function mIl(e,{git:t=!1}={}){if(e=e.replace(/^git\+https:/,"https:"),e=e.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),e=e.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),t){let r=(0,hIl.tryParseGitURL)(e);r&&(e=r.href),e=e.replace(/^git\+([^:]+):/,"$1:")}return e}});var xxt=H(px=>{"use strict";Object.defineProperty(px,"__esModule",{value:!0});px.TreeishProtocols=px.normalizeRepoUrl=void 0;px.isGitUrl=bIl;px.splitRepoUrl=kxt;px.normalizeLocator=EIl;px.validateRepoUrl=i4r;px.lsRemote=vcs;px.resolveUrl=SIl;px.clone=vIl;px.fetchRoot=Bcs;px.fetchBase=wcs;px.fetchChangedFiles=Tcs;px.fetchChangedWorkspaces=BIl;var n4r=(Wa(),vi(Va)),wy=wn(),fL=No(),Dxt=(vl(),vi(ng)),CIl=PO(),_Il=n4r.__importDefault(Ccs()),Oje=n4r.__importDefault(Et("querystring")),Ecs=n4r.__importDefault(zC()),Pje=bcs();Object.defineProperty(px,"normalizeRepoUrl",{enumerable:!0,get:function(){return Pje.normalizeRepoUrl}});function Scs(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var yIl=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],YP;(function(e){e.Commit="commit",e.Head="head",e.Tag="tag",e.Semver="semver"})(YP||(px.TreeishProtocols=YP={}));function bIl(e){return e?yIl.some(t=>!!e.match(t)):!1}function kxt(e){e=(0,Pje.normalizeRepoUrl)(e);let t=e.indexOf("#");if(t===-1)return{repo:e,treeish:{protocol:YP.Head,request:"HEAD"},extra:{}};let r=e.slice(0,t),n=e.slice(t+1);if(n.match(/^[a-z]+=/)){let a=Oje.default.parse(n);for(let[f,I]of Object.entries(a))if(typeof I!="string")throw new Error(`Assertion failed: The ${f} parameter must be a literal string`);let o=Object.values(YP).find(f=>Object.hasOwn(a,f)),[l,A]=typeof o<"u"?[o,a[o]]:[YP.Head,"HEAD"];for(let f of Object.values(YP))delete a[f];return{repo:r,treeish:{protocol:l,request:A},extra:a}}else{let a=n.indexOf(":"),[o,l]=a===-1?[null,n]:[n.slice(0,a),n.slice(a+1)];return{repo:r,treeish:{protocol:o,request:l},extra:{}}}}function EIl(e){return wy.structUtils.makeLocator(e,(0,Pje.normalizeRepoUrl)(e.reference))}function i4r(e,{configuration:t}){let{repo:r}=kxt(e),n=(0,Pje.normalizeRepoUrl)(r,{git:!0});if(!wy.httpUtils.getNetworkSettings(`https://${(0,_Il.default)(n).resource}`,{configuration:t}).enableNetwork)throw new wy.ReportError(wy.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because of your configuration settings`);let o=wy.miscUtils.buildIgnorePattern(t.get("approvedGitRepositories"));if(o===null||!n.match(o))throw new wy.ReportError(wy.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because it doesn't match any of the patterns in 'approvedGitRepositories'`);return n}async function vcs(e,t){let r=i4r(e,{configuration:t}),n=await r4r("listing refs",["ls-remote",r],{cwd:t.startingCwd,env:Scs()},{configuration:t,normalizedRepoUrl:r}),a=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,l;for(;(l=o.exec(n.stdout))!==null;)a.set(l[2],l[1]);return a}async function SIl(e,t){let{repo:r,treeish:{protocol:n,request:a},extra:o}=kxt(e),l=await vcs(r,t),A=(I,C)=>{switch(I){case YP.Commit:{if(!C.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return Oje.default.stringify({...o,commit:C})}case YP.Head:{let b=l.get(C==="HEAD"?C:`refs/heads/${C}`);if(typeof b>"u")throw new Error(`Unknown head ("${C}")`);return Oje.default.stringify({...o,commit:b})}case YP.Tag:{let b=l.get(`refs/tags/${C}`);if(typeof b>"u")throw new Error(`Unknown tag ("${C}")`);return Oje.default.stringify({...o,commit:b})}case YP.Semver:{let b=wy.semverUtils.validRange(C);if(!b)throw new Error(`Invalid range ("${C}")`);let E=new Map([...l.entries()].filter(([B])=>B.startsWith("refs/tags/")).map(([B,F])=>[Ecs.default.parse(B.slice(10)),F]).filter(B=>B[0]!==null)),N=Ecs.default.maxSatisfying([...E.keys()],b);if(N===null)throw new Error(`No matching range ("${C}")`);return Oje.default.stringify({...o,commit:E.get(N)})}case null:{let b;if((b=f(YP.Commit,C))!==null||(b=f(YP.Tag,C))!==null||(b=f(YP.Head,C))!==null)return b;throw C.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${I}")`)}},f=(I,C)=>{try{return A(I,C)}catch{return null}};return(0,Pje.normalizeRepoUrl)(`${r}#${A(n,a)}`)}async function vIl(e,t){return await t.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:n,request:a}}=kxt(e);if(n!=="commit")throw new Error("Invalid treeish protocol when cloning");let o=i4r(r,{configuration:t}),l=await fL.xfs.mktempPromise(),A={cwd:l,env:Scs()};return await r4r("cloning the repository",["clone","-c","core.autocrlf=false",o,fL.npath.fromPortablePath(l)],A,{configuration:t,normalizedRepoUrl:o}),await r4r("switching branch",["checkout",`${a}`],A,{configuration:t,normalizedRepoUrl:o}),l})}async function Bcs(e){let t,r=e;do{if(t=r,await fL.xfs.existsPromise(fL.ppath.join(t,".git")))return t;r=fL.ppath.dirname(t)}while(r!==t);return null}async function wcs(e,{baseRefs:t}){if(t.length===0)throw new Dxt.UsageError("Can't run this command with zero base refs specified.");let r=[];for(let A of t){let{code:f}=await wy.execUtils.execvp("git",["merge-base",A,"HEAD"],{cwd:e});f===0&&r.push(A)}if(r.length===0)throw new Dxt.UsageError(`No ancestor could be found between any of HEAD and ${t.join(", ")}`);let{stdout:n}=await wy.execUtils.execvp("git",["merge-base","HEAD",...r],{cwd:e,strict:!0}),a=n.trim(),{stdout:o}=await wy.execUtils.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:e,strict:!0}),l=o.trim();return{hash:a,title:l}}async function Tcs(e,{base:t,project:r}){let n=wy.miscUtils.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await wy.execUtils.execvp("git",["diff","--name-only",`${t}`],{cwd:e,strict:!0}),o=a.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>fL.ppath.resolve(e,fL.npath.toPortablePath(I))),{stdout:l}=await wy.execUtils.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:e,strict:!0}),A=l.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>fL.ppath.resolve(e,fL.npath.toPortablePath(I))),f=[...new Set([...o,...A].sort())];return n?f.filter(I=>!fL.ppath.relative(r.cwd,I).match(n)):f}async function BIl({ref:e,project:t}){if(t.configuration.projectCwd===null)throw new Dxt.UsageError("This command can only be run from within a Yarn project");let r=[fL.ppath.resolve(t.cwd,fL.Filename.lockfile),fL.ppath.resolve(t.cwd,t.configuration.get("cacheFolder")),fL.ppath.resolve(t.cwd,t.configuration.get("installStatePath")),fL.ppath.resolve(t.cwd,t.configuration.get("virtualFolder"))];await t.configuration.triggerHook(l=>l.populateYarnPaths,t,l=>{l!=null&&r.push(l)});let n=await Bcs(t.configuration.projectCwd);if(n==null)throw new Dxt.UsageError("This command can only be run on Git repositories");let a=await wcs(n,{baseRefs:typeof e=="string"?[e]:t.configuration.get("changesetBaseRefs")}),o=await Tcs(n,{base:a.hash,project:t});return new Set(wy.miscUtils.mapAndFilter(o,l=>{let A=t.tryWorkspaceByFilePath(l);return A===null||r.some(f=>l.startsWith(f))?wy.miscUtils.mapAndFilter.skip:A}))}async function r4r(e,t,r,{configuration:n,normalizedRepoUrl:a}){try{return await wy.execUtils.execvp("git",t,{...r,strict:!0})}catch(o){if(!(o instanceof wy.execUtils.ExecError))throw o;let l=o.reportExtra,A=o.stderr.toString();throw new wy.ReportError(wy.MessageName.EXCEPTION,`Failed ${e}`,f=>{f.reportError(wy.MessageName.EXCEPTION,` ${wy.formatUtils.prettyField(n,{label:"Repository URL",value:wy.formatUtils.tuple(wy.formatUtils.Type.URL,a)})}`);for(let I of A.matchAll(/^(.+?): (.*)$/gm)){let[,C,b]=I;C=C.toLowerCase();let E=C==="error"?"Error":`${(0,CIl.capitalize)(C)} Error`;f.reportError(wy.MessageName.EXCEPTION,` ${wy.formatUtils.prettyField(n,{label:E,value:wy.formatUtils.tuple(wy.formatUtils.Type.NO_HINT,b)})}`)}l?.(f)})}}});var Rcs=H(Fxt=>{"use strict";Object.defineProperty(Fxt,"__esModule",{value:!0});Fxt.GitFetcher=void 0;var wIl=(Wa(),vi(Va)),_Ge=wn(),Gxt=No(),s4r=wIl.__importStar(xxt()),o4r=class{supports(t,r){return s4r.isGitUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,a=new Map(r.checksums);a.set(t.locatorHash,n);let o={...r,checksums:a},l=await this.downloadHosted(t,o);if(l!==null)return l;let[A,f,I]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${_Ge.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(t,o),...r.cacheOptions});return{packageFs:A,releaseFs:f,prefixPath:_Ge.structUtils.getIdentVendorPath(t),checksum:I}}async downloadHosted(t,r){return r.project.configuration.reduceHook(n=>n.fetchHostedRepository,null,t,r)}async cloneFromRemote(t,r){let n=s4r.splitRepoUrl(t.reference),a=await s4r.clone(t.reference,r.project.configuration),o=Gxt.ppath.resolve(a,n.extra.cwd??Gxt.PortablePath.dot),l=Gxt.ppath.join(o,"package.tgz");await _Ge.scriptUtils.prepareExternalProject(o,l,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:t});let A=await Gxt.xfs.readFilePromise(l);return await _Ge.miscUtils.releaseAfterUseAsync(async()=>await _Ge.tgzUtils.convertToZip(A,{configuration:r.project.configuration,prefixPath:_Ge.structUtils.getIdentVendorPath(t),stripComponents:1}))}};Fxt.GitFetcher=o4r});var Dcs=H(Zxt=>{"use strict";Object.defineProperty(Zxt,"__esModule",{value:!0});Zxt.GitResolver=void 0;var TIl=(Wa(),vi(Va)),Ncs=wn(),RIl=wn(),NIl=wn(),yGe=TIl.__importStar(xxt()),a4r=class{supportsDescriptor(t,r){return yGe.isGitUrl(t.range)}supportsLocator(t,r){return yGe.isGitUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=await yGe.resolveUrl(t.range,n.project.configuration);return[Ncs.structUtils.makeLocator(t,a)]}async getSatisfying(t,r,n,a){let o=yGe.splitRepoUrl(t.range);return{locators:n.filter(A=>{if(A.identHash!==t.identHash)return!1;let f=yGe.splitRepoUrl(A.reference);return!(o.repo!==f.repo||o.treeish.protocol===yGe.TreeishProtocols.Commit&&o.treeish.request!==f.treeish.request)}),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Ncs.miscUtils.releaseAfterUseAsync(async()=>await NIl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:RIl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Zxt.GitResolver=a4r});var bGe=H(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.GitResolver=Hte.GitFetcher=Hte.gitUtils=void 0;var DIl=(Wa(),vi(Va)),Lxt=wn(),kcs=Rcs();Object.defineProperty(Hte,"GitFetcher",{enumerable:!0,get:function(){return kcs.GitFetcher}});var xcs=Dcs();Object.defineProperty(Hte,"GitResolver",{enumerable:!0,get:function(){return xcs.GitResolver}});var kIl=DIl.__importStar(xxt());Hte.gitUtils=kIl;var xIl={configuration:{approvedGitRepositories:{description:"Array of git repository URL glob patterns that are allowed to be fetched",type:Lxt.SettingsType.STRING,default:[],isArray:!0},changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:Lxt.SettingsType.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:Lxt.SettingsType.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:Lxt.SettingsType.NUMBER,default:2}},fetchers:[kcs.GitFetcher],resolvers:[xcs.GitResolver]};Hte.default=xIl});var Gcs=H(c4r=>{"use strict";Object.defineProperty(c4r,"__esModule",{value:!0});var GIl=sl(),EGe=wn(),FIl=bGe(),SGe=(vl(),vi(ng)),Mje=class extends GIl.BaseCommand{constructor(){super(...arguments),this.since=SGe.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.recursive=SGe.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"}),this.noPrivate=SGe.Option.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"}),this.verbose=SGe.Option.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"}),this.json=SGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await EGe.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await EGe.Project.find(t,this.context.cwd);return(await EGe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{let o=this.since?await FIl.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,l=new Set(o);if(this.recursive)for(let A of[...o].map(f=>f.getRecursiveWorkspaceDependents()))for(let f of A)l.add(f);for(let A of l){let{manifest:f}=A;if(f.private&&this.noPrivate)continue;let I;if(this.verbose){let C=new Set,b=new Set;for(let E of EGe.Manifest.hardDependencies)for(let[N,B]of f.getForScope(E)){let F=r.tryWorkspaceByDescriptor(B);F===null?r.workspacesByIdent.has(N)&&b.add(B):C.add(F)}I={workspaceDependencies:Array.from(C).map(E=>E.relativeCwd),mismatchedWorkspaceDependencies:Array.from(b).map(E=>EGe.structUtils.stringifyDescriptor(E))}}a.reportInfo(null,`${A.relativeCwd}`),a.reportJson({location:A.relativeCwd,name:f.name?EGe.structUtils.stringifyIdent(f.name):null,...I})}})).exitCode()}};Mje.paths=[["workspaces","list"]];Mje.usage=SGe.Command.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});c4r.default=Mje});var Lcs=H(l4r=>{"use strict";Object.defineProperty(l4r,"__esModule",{value:!0});var Fcs=sl(),Zcs=wn(),ZIl=wn(),Hje=(vl(),vi(ng)),Yje=class extends Fcs.BaseCommand{constructor(){super(...arguments),this.workspaceName=Hje.Option.String(),this.commandName=Hje.Option.String(),this.args=Hje.Option.Proxy()}async execute(){let t=await Zcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Zcs.Project.find(t,this.context.cwd);if(!n)throw new Fcs.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=r.workspaces,o=new Map(a.map(A=>[ZIl.structUtils.stringifyIdent(A.anchoredLocator),A])),l=o.get(this.workspaceName);if(l===void 0){let A=Array.from(o.keys()).sort();throw new Hje.UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: - ${A.join(` - - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:l.cwd})}};Qje.paths=[["workspace"]];Qje.usage=Yje.Command.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` + - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:l.cwd})}};Yje.paths=[["workspace"]];Yje.usage=Hje.Command.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` This command will run a given sub-command on a single workspace. - `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});n4r.default=Qje});var Vxt=H(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});qu.suggestUtils=qu.dedupeUtils=qu.WorkspaceCommand=qu.WorkspacesListCommand=qu.WhyCommand=qu.UpCommand=qu.UnlinkCommand=qu.SetVersionCommand=qu.SetVersionSourcesCommand=qu.SetResolutionCommand=qu.RunCommand=qu.RunIndexCommand=qu.RemoveCommand=qu.RebuildCommand=qu.PluginRuntimeCommand=qu.PluginRemoveCommand=qu.PluginListCommand=qu.PluginImportCommand=qu.PluginCheckCommand=qu.PluginImportSourcesCommand=qu.NodeCommand=qu.LinkCommand=qu.YarnCommand=qu.InfoCommand=qu.ExplainCommand=qu.ExplainPeerRequirementsCommand=qu.ExecCommand=qu.VersionCommand=qu.EntryCommand=qu.HelpCommand=qu.ClipanionCommand=qu.DedupeCommand=qu.ConfigCommand=qu.ConfigUnsetCommand=qu.ConfigSetCommand=qu.ConfigGetCommand=qu.CacheCleanCommand=qu.BinCommand=qu.AddCommand=void 0;var gm=(Wa(),vi(Va)),i4r=mn(),Ofl=Jfe(),Lcs=gm.__importDefault(Oos());qu.AddCommand=Lcs.default;var Vcs=gm.__importDefault(Pos());qu.BinCommand=Vcs.default;var Wcs=gm.__importDefault(Hos());qu.CacheCleanCommand=Wcs.default;var Ocs=gm.__importDefault(Qos());qu.ConfigGetCommand=Ocs.default;var Pcs=gm.__importDefault(Jos());qu.ConfigSetCommand=Pcs.default;var Mcs=gm.__importDefault(Uos());qu.ConfigUnsetCommand=Mcs.default;var Hcs=gm.__importDefault(Kos());qu.ConfigCommand=Hcs.default;var Ycs=gm.__importDefault(qos());qu.DedupeCommand=Ycs.default;var Qcs=gm.__importDefault($os());qu.ClipanionCommand=Qcs.default;var Xcs=gm.__importDefault(eas());qu.HelpCommand=Xcs.default;var Jcs=gm.__importDefault(nas());qu.EntryCommand=Jcs.default;var Ucs=gm.__importDefault(ias());qu.VersionCommand=Ucs.default;var Kcs=gm.__importDefault(oas());qu.ExecCommand=Kcs.default;var jcs=gm.__importDefault(uas());qu.ExplainPeerRequirementsCommand=jcs.default;var zcs=gm.__importDefault(fas());qu.ExplainCommand=zcs.default;var qcs=gm.__importDefault(has());qu.InfoCommand=qcs.default;var $cs=gm.__importDefault(yas());qu.YarnCommand=$cs.default;var els=gm.__importDefault(bas());qu.LinkCommand=els.default;var tls=gm.__importDefault(Sas());qu.NodeCommand=tls.default;var rls=gm.__importDefault(Bas());qu.PluginCheckCommand=rls.default;var nls=gm.__importDefault(hXr());qu.PluginImportSourcesCommand=nls.default;var ils=gm.__importDefault(CXr());qu.PluginImportCommand=ils.default;var sls=gm.__importDefault(vje());qu.PluginListCommand=sls.default;var ols=gm.__importDefault(Gas());qu.PluginRemoveCommand=ols.default;var als=gm.__importDefault(Las());qu.PluginRuntimeCommand=als.default;var cls=gm.__importDefault(Pas());qu.RebuildCommand=cls.default;var lls=gm.__importDefault(Yas());qu.RemoveCommand=lls.default;var uls=gm.__importDefault(Xas());qu.RunIndexCommand=uls.default;var gls=gm.__importDefault(Kas());qu.RunCommand=gls.default;var Als=gm.__importDefault(qas());qu.SetResolutionCommand=Als.default;var dls=gm.__importDefault(IXr());qu.SetVersionSourcesCommand=dls.default;var pls=gm.__importDefault(bxt());qu.SetVersionCommand=pls.default;var fls=gm.__importDefault(ecs());qu.UnlinkCommand=fls.default;var Ils=gm.__importDefault(rcs());qu.UpCommand=Ils.default;var hls=gm.__importDefault(ics());qu.WhyCommand=hls.default;var mls=gm.__importDefault(xcs());qu.WorkspacesListCommand=mls.default;var Cls=gm.__importDefault(Zcs());qu.WorkspaceCommand=Cls.default;var Pfl=gm.__importStar(UQr());qu.dedupeUtils=Pfl;var _ls=gm.__importStar(eje());qu.suggestUtils=_ls;var Mfl={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:i4r.SettingsType.BOOLEAN,default:Ofl.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:i4r.SettingsType.STRING,values:["^","~",""],default:_ls.Modifier.CARET},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:i4r.SettingsType.BOOLEAN,default:!1}},commands:[Wcs.default,Ocs.default,Pcs.default,Mcs.default,Als.default,dls.default,pls.default,mls.default,Qcs.default,Xcs.default,Jcs.default,Ucs.default,Lcs.default,Vcs.default,Hcs.default,Ycs.default,Kcs.default,jcs.default,zcs.default,qcs.default,$cs.default,els.default,fls.default,tls.default,rls.default,nls.default,ils.default,ols.default,sls.default,als.default,cls.default,lls.default,uls.default,gls.default,Ils.default,hls.default,Cls.default]};qu.default=Mfl});var s4r=H(Wxt=>{"use strict";Object.defineProperty(Wxt,"__esModule",{value:!0});Wxt.Pad=void 0;var Hfl=(Wa(),vi(Va)),Yfl=DH(),Qfl=Hfl.__importDefault(lC()),Xfl=({length:e,active:t})=>{if(e===0)return null;let r=e>1?` ${"-".repeat(e-1)}`:" ";return Qfl.default.createElement(Yfl.Text,{dimColor:!t},r)};Wxt.Pad=Xfl});var yls=H(Oxt=>{"use strict";Object.defineProperty(Oxt,"__esModule",{value:!0});Oxt.ItemOptions=void 0;var Jfl=(Wa(),vi(Va)),o4r=DH(),n0e=Jfl.__importDefault(lC()),Ufl=ixt(),Kfl=txt(),jfl=s4r(),zfl=function({active:e,skewer:t,options:r,value:n,onChange:a,sizes:o=[]}){let l=r.filter(({label:f})=>!!f).map(({value:f})=>f),A=r.findIndex(f=>f.value===n&&f.label!="");return(0,Ufl.useListInput)(n,l,{active:e,minus:"left",plus:"right",set:a}),n0e.default.createElement(n0e.default.Fragment,null,r.map(({label:f},I)=>{let C=I===A,b=o[I]-1||0,E=f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),N=Math.max(0,b-E.length-2);return f?n0e.default.createElement(o4r.Box,{key:f,width:b,marginLeft:1},n0e.default.createElement(o4r.Text,{wrap:"truncate"},n0e.default.createElement(Kfl.Gem,{active:C})," ",f),t?n0e.default.createElement(jfl.Pad,{active:e,length:N}):null):n0e.default.createElement(o4r.Box,{key:`spacer-${I}`,width:b,marginLeft:1})}))};Oxt.ItemOptions=zfl});var Bls=H(a4r=>{"use strict";Object.defineProperty(a4r,"__esModule",{value:!0});var eJ=(Wa(),vi(Va)),bls=dl(),HP=mn(),qfl=eJ.__importStar(xkt()),$fl=Vxt(),Sls=(Rl(),vi(ng)),eIl=apr(),tIl=eJ.__importDefault(jC()),rIl=eJ.__importStar((vZ(),vi(SZ))),Els=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;function vls(e,t){return e.length>0?[e.slice(0,t)].concat(vls(e.slice(t),t)):[]}var Xje=class extends bls.BaseCommand{constructor(){super(...arguments),this.mode=Sls.Option.String("--mode",{description:"Change what artifacts installs generate",validator:rIl.isEnum(HP.InstallMode)})}async execute(){qfl.checkRequirements(this.context);let{ItemOptions:t}=await Promise.resolve().then(()=>eJ.__importStar(yls())),{Pad:r}=await Promise.resolve().then(()=>eJ.__importStar(s4r())),{ScrollableItems:n}=await Promise.resolve().then(()=>eJ.__importStar(oxt())),{useMinistore:a,useMinistoreSetAll:o}=await Promise.resolve().then(()=>eJ.__importStar(OYr())),{useKeypress:l}=await Promise.resolve().then(()=>eJ.__importStar(iGe())),{renderForm:A}=await Promise.resolve().then(()=>eJ.__importStar(cxt())),{Box:f,Text:I}=await Promise.resolve().then(()=>eJ.__importStar(DH())),{default:C,useCallback:b,useEffect:E,useRef:N,useState:B}=await Promise.resolve().then(()=>eJ.__importStar(lC())),F=await HP.Configuration.find(this.context.cwd,this.context.plugins),{project:Q,workspace:J}=await HP.Project.find(F,this.context.cwd),ae=await HP.Cache.find(F);if(!J)throw new bls.WorkspaceRequiredError(Q.cwd,this.context.cwd);await Q.restoreInstallState({restoreResolutions:!1});let ne=this.context.stdout.rows-8,ce=(Je,ft)=>{let lt=(0,eIl.diffWords)(Je,ft),Ot="";for(let Er of lt)Er.added?Ot+=HP.formatUtils.pretty(F,Er.value,"green"):Er.removed||(Ot+=Er.value);return Ot},fe=(Je,ft)=>{if(Je===ft)return ft;let lt=HP.structUtils.parseRange(Je),Ot=HP.structUtils.parseRange(ft),Er=lt.selector.match(Els),Sr=Ot.selector.match(Els);if(!Er||!Sr)return ce(Je,ft);let jt=["gray","red","yellow","green","magenta"],Bt=null,Dt="";for(let Fr=1;Fr{let Ot=await $fl.suggestUtils.fetchDescriptorFrom(Je,lt,{project:Q,cache:ae,preserveModifier:ft,workspace:J});return Ot!==null?Ot.range:Je.range},de=async Je=>{let ft=tIl.default.valid(Je.range)?`^${Je.range}`:Je.range,[lt,Ot]=await Promise.all([ue(Je,Je.range,ft).catch(()=>null),ue(Je,Je.range,"latest").catch(()=>null)]),Er=[{value:null,label:Je.range}];return lt&<!==Je.range?Er.push({value:lt,label:fe(Je.range,lt)}):Er.push({value:null,label:""}),Ot&&Ot!==lt&&Ot!==Je.range?Er.push({value:Ot,label:fe(Je.range,Ot)}):Er.push({value:null,label:""}),Er},be=()=>C.createElement(f,{flexDirection:"row"},C.createElement(f,{flexDirection:"column",width:49},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select packages.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select versions.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"c"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"r"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"l")," to select all ",C.createElement(I,{bold:!0,color:"cyanBright"},"current"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"range"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"latest"),"."))),C.createElement(f,{flexDirection:"column"},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to install.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to abort.")))),Se=()=>C.createElement(f,{flexDirection:"row",paddingTop:1,paddingBottom:1},C.createElement(f,{width:50},C.createElement(I,{bold:!0},C.createElement(I,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Current")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Range")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Latest"))),De=({active:Je,descriptor:ft,suggestions:lt})=>{let[Ot,Er]=a(ft.descriptorHash,null),Sr=HP.structUtils.stringifyIdent(ft),jt=Math.max(0,45-Sr.length);return C.createElement(C.Fragment,null,C.createElement(f,null,C.createElement(f,{width:45},C.createElement(I,{bold:!0},HP.structUtils.prettyIdent(F,ft)),C.createElement(r,{active:Je,length:jt})),C.createElement(t,{active:Je,options:lt,value:Ot,skewer:!0,onChange:Er,sizes:[17,17,17]})))},k=({dependencies:Je})=>{let ft=o(),[lt,Ot]=B(Je.map(()=>null)),Er=N(!0),Sr=async Bt=>{let Dt=await de(Bt);return Dt.filter(Fr=>Fr.label!=="").length<=1?null:{descriptor:Bt,suggestions:Dt}};E(()=>()=>{Er.current=!1},[]),E(()=>{let Bt=Math.trunc(ne*1.75),Dt=Je.slice(0,Bt),Fr=Je.slice(Bt),$t=vls(Fr,ne),Xt=Dt.map(Sr).reduce(async(lr,cr)=>{await lr;let Ar=await cr;Ar!==null&&Er.current&&Ot(qr=>{let yn=qr.findIndex(zt=>zt===null),ke=[...qr];return ke[yn]=Ar,ke})},Promise.resolve());$t.reduce((lr,cr)=>Promise.all(cr.map(Ar=>Promise.resolve().then(()=>Sr(Ar)))).then(async Ar=>{Ar=Ar.filter(qr=>qr!==null),await lr,Er.current&&Ot(qr=>{let yn=qr.findIndex(ke=>ke===null);return qr.slice(0,yn).concat(Ar).concat(qr.slice(yn+Ar.length))})}),Xt).then(()=>{Er.current&&Ot(lr=>lr.filter(cr=>cr!==null))})},[]);let jt=b(Bt=>{if(Bt!=="c"&&Bt!=="r"&&Bt!=="l")return;let Dt=[];for(let Fr of lt){if(Fr===null)continue;let $t;Bt==="c"?$t=null:Bt==="r"?$t=Fr.suggestions[1].value:$t=Fr.suggestions[2].value??Fr.suggestions[1].value,Dt.push([Fr.descriptor.descriptorHash,$t])}ft(Dt)},[lt,ft]);return l({active:!0},jt,[jt]),lt.length?C.createElement(n,{radius:ne>>1,children:lt.map((Bt,Dt)=>Bt!==null?C.createElement(De,{key:Dt,active:!1,descriptor:Bt.descriptor,suggestions:Bt.suggestions}):C.createElement(I,{key:Dt},"Loading..."))}):C.createElement(I,null,"No upgrades found")},ze=await A(({useSubmit:Je})=>{Je(a());let ft=new Map;for(let Ot of Q.workspaces)for(let Er of["dependencies","devDependencies"])for(let Sr of Ot.manifest[Er].values())Q.tryWorkspaceByDescriptor(Sr)===null&&(Sr.range.startsWith("link:")||ft.set(Sr.descriptorHash,Sr));let lt=HP.miscUtils.sortMap(ft.values(),Ot=>HP.structUtils.stringifyDescriptor(Ot));return C.createElement(f,{flexDirection:"column"},C.createElement(be,null),C.createElement(Se,null),C.createElement(k,{dependencies:lt}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ze>"u")return 1;let Le=!1;for(let Je of Q.workspaces)for(let ft of["dependencies","devDependencies"]){let lt=Je.manifest[ft];for(let Ot of lt.values()){let Er=ze.get(Ot.descriptorHash);typeof Er<"u"&&Er!==null&&(lt.set(Ot.identHash,HP.structUtils.makeDescriptor(Ot,Er)),Le=!0)}}return Le?await Q.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:ae,mode:this.mode}):0}};Xje.paths=[["upgrade-interactive"]];Xje.usage=Sls.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]});a4r.default=Xje});var Nls=H(i0e=>{"use strict";Object.defineProperty(i0e,"__esModule",{value:!0});i0e.UpgradeInteractiveCommand=i0e.SearchCommand=void 0;var wls=(Wa(),vi(Va)),Tls=wls.__importDefault(qis());i0e.SearchCommand=Tls.default;var Rls=wls.__importDefault(Bls());i0e.UpgradeInteractiveCommand=Rls.default;var nIl={commands:[Tls.default,Rls.default]};i0e.default=nIl});var c4r=H(Pxt=>{"use strict";Object.defineProperty(Pxt,"__esModule",{value:!0});Pxt.JSR_PROTOCOL=void 0;Pxt.JSR_PROTOCOL="jsr:"});var Mxt=H(Jje=>{"use strict";Object.defineProperty(Jje,"__esModule",{value:!0});Jje.convertDescriptorFromJsrToNpm=sIl;Jje.convertLocatorFromJsrToNpm=oIl;Jje.convertLocatorFromNpmToJsr=aIl;var iIl=mn(),tJ=mn();function sIl(e){let t=e.range.slice(4);if(iIl.semverUtils.validRange(t))return tJ.structUtils.makeDescriptor(e,`npm:${tJ.structUtils.stringifyIdent(tJ.structUtils.wrapIdentIntoScope(e,"jsr"))}@${t}`);let r=tJ.structUtils.tryParseDescriptor(t,!0);if(r!==null)return tJ.structUtils.makeDescriptor(e,`npm:${tJ.structUtils.stringifyIdent(tJ.structUtils.wrapIdentIntoScope(r,"jsr"))}@${r.range}`);throw new Error(`Invalid range: ${e.range}`)}function oIl(e){return tJ.structUtils.makeLocator(tJ.structUtils.wrapIdentIntoScope(e,"jsr"),`npm:${e.reference.slice(4)}`)}function aIl(e){return tJ.structUtils.makeLocator(tJ.structUtils.unwrapIdentFromScope(e,"jsr"),`jsr:${e.reference.slice(4)}`)}});var kls=H(Hxt=>{"use strict";Object.defineProperty(Hxt,"__esModule",{value:!0});Hxt.JsrFetcher=void 0;var cIl=c4r(),Dls=Mxt(),l4r=class{supports(t,r){return t.reference.startsWith(cIl.JSR_PROTOCOL)}getLocalPath(t,r){let n=(0,Dls.convertLocatorFromJsrToNpm)(t);return r.fetcher.getLocalPath(n,r)}fetch(t,r){let n=(0,Dls.convertLocatorFromJsrToNpm)(t);return r.fetcher.fetch(n,r)}};Hxt.JsrFetcher=l4r});var Gls=H(Yxt=>{"use strict";Object.defineProperty(Yxt,"__esModule",{value:!0});Yxt.JsrResolver=void 0;var xls=c4r(),s0e=Mxt(),u4r=class{supportsDescriptor(t,r){return!!t.range.startsWith(xls.JSR_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(xls.JSR_PROTOCOL)}shouldPersistResolution(t,r){let n=(0,s0e.convertLocatorFromJsrToNpm)(t);return r.resolver.shouldPersistResolution(n,r)}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{inner:(0,s0e.convertDescriptorFromJsrToNpm)(t)}}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency((0,s0e.convertDescriptorFromJsrToNpm)(t));return(await n.resolver.getCandidates(a,r,n)).map(l=>(0,s0e.convertLocatorFromNpmToJsr)(l))}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency((0,s0e.convertDescriptorFromJsrToNpm)(t));return a.resolver.getSatisfying(o,r,n,a)}async resolve(t,r){let n=(0,s0e.convertLocatorFromJsrToNpm)(t),a=await r.resolver.resolve(n,r);return{...a,...(0,s0e.convertLocatorFromNpmToJsr)(a)}}};Yxt.JsrResolver=u4r});var Zls=H(g4r=>{"use strict";Object.defineProperty(g4r,"__esModule",{value:!0});var Fls=mn(),lIl=kls(),uIl=Gls(),gIl=Mxt(),AIl=["dependencies","devDependencies","peerDependencies"];function dIl(e,t){for(let r of AIl)for(let n of e.manifest.getForScope(r).values()){if(!n.range.startsWith("jsr:"))continue;let a=(0,gIl.convertDescriptorFromJsrToNpm)(n),o=r==="dependencies"?Fls.structUtils.makeDescriptor(n,"unknown"):null,l=o!==null&&e.manifest.ensureDependencyMeta(o).optional?"optionalDependencies":r;t[l][Fls.structUtils.stringifyIdent(n)]=a.range}}var pIl={hooks:{beforeWorkspacePacking:dIl},resolvers:[uIl.JsrResolver],fetchers:[lIl.JsrFetcher]};g4r.default=pIl});var Vls=H(A4r=>{"use strict";Object.defineProperty(A4r,"__esModule",{value:!0});var Lls=dl(),Qxt=mn(),fIl=mn(),Uje=(Rl(),vi(ng)),Kje=class extends Lls.BaseCommand{constructor(){super(...arguments),this.json=Uje.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.production=Uje.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"}),this.all=Uje.Option.Boolean("-A,--all",!1,{description:"Install the entire project"}),this.workspaces=Uje.Option.Rest()}async execute(){let t=await Qxt.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Qxt.Project.find(t,this.context.cwd),a=await Qxt.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let o;if(this.all)o=new Set(r.workspaces);else if(this.workspaces.length===0){if(!n)throw new Lls.WorkspaceRequiredError(r.cwd,this.context.cwd);o=new Set([n])}else o=new Set(this.workspaces.map(l=>r.getWorkspaceByIdent(fIl.structUtils.parseIdent(l))));for(let l of o)for(let A of this.production?["dependencies"]:Qxt.Manifest.hardDependencies)for(let f of l.manifest.getForScope(A).values()){let I=r.tryWorkspaceByDescriptor(f);I!==null&&o.add(I)}for(let l of r.workspaces)o.has(l)?this.production&&l.manifest.devDependencies.clear():(l.manifest.installConfig=l.manifest.installConfig||{},l.manifest.installConfig.selfReferences=!1,l.manifest.dependencies.clear(),l.manifest.devDependencies.clear(),l.manifest.peerDependencies.clear(),l.manifest.scripts.clear());return await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,persistProject:!1})}};Kje.paths=[["workspaces","focus"]];Kje.usage=Uje.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});A4r.default=Kje});var Pls=H(f4r=>{"use strict";Object.defineProperty(f4r,"__esModule",{value:!0});var p4r=(Wa(),vi(Va)),Wls=dl(),d4r=mn(),Xxt=mn(),iF=mn(),IIl=bGe(),XR=(Rl(),vi(ng)),jje=p4r.__importDefault(Tk()),hIl=p4r.__importDefault(Ufe()),Hte=p4r.__importStar((vZ(),vi(SZ))),vGe=class extends Wls.BaseCommand{constructor(){super(...arguments),this.from=XR.Option.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"}),this.all=XR.Option.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"}),this.recursive=XR.Option.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"}),this.worktree=XR.Option.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"}),this.verbose=XR.Option.Counter("-v,--verbose",{description:"Increase level of logging verbosity up to 2 times"}),this.parallel=XR.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"}),this.interlaced=XR.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"}),this.jobs=XR.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:Hte.isOneOf([Hte.isEnum(["unlimited"]),Hte.applyCascade(Hte.isNumber(),[Hte.isInteger(),Hte.isAtLeast(1)])])}),this.topological=XR.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"}),this.topologicalDev=XR.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"}),this.include=XR.Option.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"}),this.exclude=XR.Option.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"}),this.publicOnly=XR.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"}),this.since=XR.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.dryRun=XR.Option.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"}),this.commandName=XR.Option.String(),this.args=XR.Option.Proxy()}async execute(){let t=await d4r.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await d4r.Project.find(t,this.context.cwd);if(!this.all&&!n)throw new Wls.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=this.cli.process([this.commandName,...this.args]),o=a.path.length===1&&a.path[0]==="run"&&typeof a.scriptName<"u"?a.scriptName:null;if(a.path.length===0)throw new XR.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let l=Se=>{this.dryRun&&this.context.stdout.write(`${Se} -`)},A=()=>{let Se=this.from.map(De=>jje.default.matcher(De));return r.workspaces.filter(De=>{let k=iF.structUtils.stringifyIdent(De.anchoredLocator),tt=De.relativeCwd;return Se.some(ze=>ze(k)||ze(tt))})},f=[];if(this.since?(l("Option --since is set; selecting the changed workspaces as root for workspace selection"),f=Array.from(await IIl.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}))):this.from?(l("Option --from is set; selecting the specified workspaces"),f=[...A()]):this.worktree?(l("Option --worktree is set; selecting the current workspace"),f=[n]):this.recursive?(l("Option --recursive is set; selecting the current workspace"),f=[n]):this.all&&(l("Option --all is set; selecting all workspaces"),f=[...r.workspaces]),this.dryRun&&!this.all){for(let Se of f)l(` + `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});l4r.default=Yje});var Vxt=H(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});qu.suggestUtils=qu.dedupeUtils=qu.WorkspaceCommand=qu.WorkspacesListCommand=qu.WhyCommand=qu.UpCommand=qu.UnlinkCommand=qu.SetVersionCommand=qu.SetVersionSourcesCommand=qu.SetResolutionCommand=qu.RunCommand=qu.RunIndexCommand=qu.RemoveCommand=qu.RebuildCommand=qu.PluginRuntimeCommand=qu.PluginRemoveCommand=qu.PluginListCommand=qu.PluginImportCommand=qu.PluginCheckCommand=qu.PluginImportSourcesCommand=qu.NodeCommand=qu.LinkCommand=qu.YarnCommand=qu.InfoCommand=qu.ExplainCommand=qu.ExplainPeerRequirementsCommand=qu.ExecCommand=qu.VersionCommand=qu.EntryCommand=qu.HelpCommand=qu.ClipanionCommand=qu.DedupeCommand=qu.ConfigCommand=qu.ConfigUnsetCommand=qu.ConfigSetCommand=qu.ConfigGetCommand=qu.CacheCleanCommand=qu.BinCommand=qu.AddCommand=void 0;var gm=(Wa(),vi(Va)),u4r=wn(),LIl=Ufe(),Vcs=gm.__importDefault(Pos());qu.AddCommand=Vcs.default;var Wcs=gm.__importDefault(Mos());qu.BinCommand=Wcs.default;var Ocs=gm.__importDefault(Yos());qu.CacheCleanCommand=Ocs.default;var Pcs=gm.__importDefault(Xos());qu.ConfigGetCommand=Pcs.default;var Mcs=gm.__importDefault(Uos());qu.ConfigSetCommand=Mcs.default;var Hcs=gm.__importDefault(Kos());qu.ConfigUnsetCommand=Hcs.default;var Ycs=gm.__importDefault(jos());qu.ConfigCommand=Ycs.default;var Qcs=gm.__importDefault($os());qu.DedupeCommand=Qcs.default;var Xcs=gm.__importDefault(eas());qu.ClipanionCommand=Xcs.default;var Jcs=gm.__importDefault(tas());qu.HelpCommand=Jcs.default;var Ucs=gm.__importDefault(ias());qu.EntryCommand=Ucs.default;var Kcs=gm.__importDefault(sas());qu.VersionCommand=Kcs.default;var jcs=gm.__importDefault(aas());qu.ExecCommand=jcs.default;var zcs=gm.__importDefault(gas());qu.ExplainPeerRequirementsCommand=zcs.default;var qcs=gm.__importDefault(Ias());qu.ExplainCommand=qcs.default;var $cs=gm.__importDefault(mas());qu.InfoCommand=$cs.default;var els=gm.__importDefault(bas());qu.YarnCommand=els.default;var tls=gm.__importDefault(Eas());qu.LinkCommand=tls.default;var rls=gm.__importDefault(vas());qu.NodeCommand=rls.default;var nls=gm.__importDefault(was());qu.PluginCheckCommand=nls.default;var ils=gm.__importDefault(EXr());qu.PluginImportSourcesCommand=ils.default;var sls=gm.__importDefault(vXr());qu.PluginImportCommand=sls.default;var ols=gm.__importDefault(Sje());qu.PluginListCommand=ols.default;var als=gm.__importDefault(Fas());qu.PluginRemoveCommand=als.default;var cls=gm.__importDefault(Vas());qu.PluginRuntimeCommand=cls.default;var lls=gm.__importDefault(Mas());qu.RebuildCommand=lls.default;var uls=gm.__importDefault(Qas());qu.RemoveCommand=uls.default;var gls=gm.__importDefault(Jas());qu.RunIndexCommand=gls.default;var Als=gm.__importDefault(jas());qu.RunCommand=Als.default;var dls=gm.__importDefault($as());qu.SetResolutionCommand=dls.default;var pls=gm.__importDefault(bXr());qu.SetVersionSourcesCommand=pls.default;var fls=gm.__importDefault(bxt());qu.SetVersionCommand=fls.default;var Ils=gm.__importDefault(tcs());qu.UnlinkCommand=Ils.default;var hls=gm.__importDefault(ncs());qu.UpCommand=hls.default;var mls=gm.__importDefault(scs());qu.WhyCommand=mls.default;var Cls=gm.__importDefault(Gcs());qu.WorkspacesListCommand=Cls.default;var _ls=gm.__importDefault(Lcs());qu.WorkspaceCommand=_ls.default;var VIl=gm.__importStar(eXr());qu.dedupeUtils=VIl;var yls=gm.__importStar($6e());qu.suggestUtils=yls;var WIl={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:u4r.SettingsType.BOOLEAN,default:LIl.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:u4r.SettingsType.STRING,values:["^","~",""],default:yls.Modifier.CARET},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:u4r.SettingsType.BOOLEAN,default:!1}},commands:[Ocs.default,Pcs.default,Mcs.default,Hcs.default,dls.default,pls.default,fls.default,Cls.default,Xcs.default,Jcs.default,Ucs.default,Kcs.default,Vcs.default,Wcs.default,Ycs.default,Qcs.default,jcs.default,zcs.default,qcs.default,$cs.default,els.default,tls.default,Ils.default,rls.default,nls.default,ils.default,sls.default,als.default,ols.default,cls.default,lls.default,uls.default,gls.default,Als.default,hls.default,mls.default,_ls.default]};qu.default=WIl});var g4r=H(Wxt=>{"use strict";Object.defineProperty(Wxt,"__esModule",{value:!0});Wxt.Pad=void 0;var OIl=(Wa(),vi(Va)),PIl=kH(),MIl=OIl.__importDefault(lC()),HIl=({length:e,active:t})=>{if(e===0)return null;let r=e>1?` ${"-".repeat(e-1)}`:" ";return MIl.default.createElement(PIl.Text,{dimColor:!t},r)};Wxt.Pad=HIl});var bls=H(Oxt=>{"use strict";Object.defineProperty(Oxt,"__esModule",{value:!0});Oxt.ItemOptions=void 0;var YIl=(Wa(),vi(Va)),A4r=kH(),n0e=YIl.__importDefault(lC()),QIl=ixt(),XIl=txt(),JIl=g4r(),UIl=function({active:e,skewer:t,options:r,value:n,onChange:a,sizes:o=[]}){let l=r.filter(({label:f})=>!!f).map(({value:f})=>f),A=r.findIndex(f=>f.value===n&&f.label!="");return(0,QIl.useListInput)(n,l,{active:e,minus:"left",plus:"right",set:a}),n0e.default.createElement(n0e.default.Fragment,null,r.map(({label:f},I)=>{let C=I===A,b=o[I]-1||0,E=f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),N=Math.max(0,b-E.length-2);return f?n0e.default.createElement(A4r.Box,{key:f,width:b,marginLeft:1},n0e.default.createElement(A4r.Text,{wrap:"truncate"},n0e.default.createElement(XIl.Gem,{active:C})," ",f),t?n0e.default.createElement(JIl.Pad,{active:e,length:N}):null):n0e.default.createElement(A4r.Box,{key:`spacer-${I}`,width:b,marginLeft:1})}))};Oxt.ItemOptions=UIl});var wls=H(d4r=>{"use strict";Object.defineProperty(d4r,"__esModule",{value:!0});var tJ=(Wa(),vi(Va)),Els=sl(),QP=wn(),KIl=tJ.__importStar(xkt()),jIl=Vxt(),vls=(vl(),vi(ng)),zIl=apr(),qIl=tJ.__importDefault(zC()),$Il=tJ.__importStar((BZ(),vi(vZ))),Sls=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;function Bls(e,t){return e.length>0?[e.slice(0,t)].concat(Bls(e.slice(t),t)):[]}var Qje=class extends Els.BaseCommand{constructor(){super(...arguments),this.mode=vls.Option.String("--mode",{description:"Change what artifacts installs generate",validator:$Il.isEnum(QP.InstallMode)})}async execute(){KIl.checkRequirements(this.context);let{ItemOptions:t}=await Promise.resolve().then(()=>tJ.__importStar(bls())),{Pad:r}=await Promise.resolve().then(()=>tJ.__importStar(g4r())),{ScrollableItems:n}=await Promise.resolve().then(()=>tJ.__importStar(oxt())),{useMinistore:a,useMinistoreSetAll:o}=await Promise.resolve().then(()=>tJ.__importStar(XYr())),{useKeypress:l}=await Promise.resolve().then(()=>tJ.__importStar(iGe())),{renderForm:A}=await Promise.resolve().then(()=>tJ.__importStar(cxt())),{Box:f,Text:I}=await Promise.resolve().then(()=>tJ.__importStar(kH())),{default:C,useCallback:b,useEffect:E,useRef:N,useState:B}=await Promise.resolve().then(()=>tJ.__importStar(lC())),F=await QP.Configuration.find(this.context.cwd,this.context.plugins),{project:Q,workspace:J}=await QP.Project.find(F,this.context.cwd),ae=await QP.Cache.find(F);if(!J)throw new Els.WorkspaceRequiredError(Q.cwd,this.context.cwd);await Q.restoreInstallState({restoreResolutions:!1});let ne=this.context.stdout.rows-8,ce=(Je,ft)=>{let lt=(0,zIl.diffWords)(Je,ft),Ot="";for(let Er of lt)Er.added?Ot+=QP.formatUtils.pretty(F,Er.value,"green"):Er.removed||(Ot+=Er.value);return Ot},fe=(Je,ft)=>{if(Je===ft)return ft;let lt=QP.structUtils.parseRange(Je),Ot=QP.structUtils.parseRange(ft),Er=lt.selector.match(Sls),Sr=Ot.selector.match(Sls);if(!Er||!Sr)return ce(Je,ft);let jt=["gray","red","yellow","green","magenta"],Bt=null,Nt="";for(let Fr=1;Fr{let Ot=await jIl.suggestUtils.fetchDescriptorFrom(Je,lt,{project:Q,cache:ae,preserveModifier:ft,workspace:J});return Ot!==null?Ot.range:Je.range},de=async Je=>{let ft=qIl.default.valid(Je.range)?`^${Je.range}`:Je.range,[lt,Ot]=await Promise.all([ue(Je,Je.range,ft).catch(()=>null),ue(Je,Je.range,"latest").catch(()=>null)]),Er=[{value:null,label:Je.range}];return lt&<!==Je.range?Er.push({value:lt,label:fe(Je.range,lt)}):Er.push({value:null,label:""}),Ot&&Ot!==lt&&Ot!==Je.range?Er.push({value:Ot,label:fe(Je.range,Ot)}):Er.push({value:null,label:""}),Er},be=()=>C.createElement(f,{flexDirection:"row"},C.createElement(f,{flexDirection:"column",width:49},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select packages.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select versions.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"c"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"r"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"l")," to select all ",C.createElement(I,{bold:!0,color:"cyanBright"},"current"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"range"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"latest"),"."))),C.createElement(f,{flexDirection:"column"},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to install.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to abort.")))),Se=()=>C.createElement(f,{flexDirection:"row",paddingTop:1,paddingBottom:1},C.createElement(f,{width:50},C.createElement(I,{bold:!0},C.createElement(I,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Current")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Range")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Latest"))),De=({active:Je,descriptor:ft,suggestions:lt})=>{let[Ot,Er]=a(ft.descriptorHash,null),Sr=QP.structUtils.stringifyIdent(ft),jt=Math.max(0,45-Sr.length);return C.createElement(C.Fragment,null,C.createElement(f,null,C.createElement(f,{width:45},C.createElement(I,{bold:!0},QP.structUtils.prettyIdent(F,ft)),C.createElement(r,{active:Je,length:jt})),C.createElement(t,{active:Je,options:lt,value:Ot,skewer:!0,onChange:Er,sizes:[17,17,17]})))},k=({dependencies:Je})=>{let ft=o(),[lt,Ot]=B(Je.map(()=>null)),Er=N(!0),Sr=async Bt=>{let Nt=await de(Bt);return Nt.filter(Fr=>Fr.label!=="").length<=1?null:{descriptor:Bt,suggestions:Nt}};E(()=>()=>{Er.current=!1},[]),E(()=>{let Bt=Math.trunc(ne*1.75),Nt=Je.slice(0,Bt),Fr=Je.slice(Bt),$t=Bls(Fr,ne),Xt=Nt.map(Sr).reduce(async(lr,cr)=>{await lr;let Ar=await cr;Ar!==null&&Er.current&&Ot(qr=>{let _n=qr.findIndex(zt=>zt===null),ke=[...qr];return ke[_n]=Ar,ke})},Promise.resolve());$t.reduce((lr,cr)=>Promise.all(cr.map(Ar=>Promise.resolve().then(()=>Sr(Ar)))).then(async Ar=>{Ar=Ar.filter(qr=>qr!==null),await lr,Er.current&&Ot(qr=>{let _n=qr.findIndex(ke=>ke===null);return qr.slice(0,_n).concat(Ar).concat(qr.slice(_n+Ar.length))})}),Xt).then(()=>{Er.current&&Ot(lr=>lr.filter(cr=>cr!==null))})},[]);let jt=b(Bt=>{if(Bt!=="c"&&Bt!=="r"&&Bt!=="l")return;let Nt=[];for(let Fr of lt){if(Fr===null)continue;let $t;Bt==="c"?$t=null:Bt==="r"?$t=Fr.suggestions[1].value:$t=Fr.suggestions[2].value??Fr.suggestions[1].value,Nt.push([Fr.descriptor.descriptorHash,$t])}ft(Nt)},[lt,ft]);return l({active:!0},jt,[jt]),lt.length?C.createElement(n,{radius:ne>>1,children:lt.map((Bt,Nt)=>Bt!==null?C.createElement(De,{key:Nt,active:!1,descriptor:Bt.descriptor,suggestions:Bt.suggestions}):C.createElement(I,{key:Nt},"Loading..."))}):C.createElement(I,null,"No upgrades found")},ze=await A(({useSubmit:Je})=>{Je(a());let ft=new Map;for(let Ot of Q.workspaces)for(let Er of["dependencies","devDependencies"])for(let Sr of Ot.manifest[Er].values())Q.tryWorkspaceByDescriptor(Sr)===null&&(Sr.range.startsWith("link:")||ft.set(Sr.descriptorHash,Sr));let lt=QP.miscUtils.sortMap(ft.values(),Ot=>QP.structUtils.stringifyDescriptor(Ot));return C.createElement(f,{flexDirection:"column"},C.createElement(be,null),C.createElement(Se,null),C.createElement(k,{dependencies:lt}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ze>"u")return 1;let Le=!1;for(let Je of Q.workspaces)for(let ft of["dependencies","devDependencies"]){let lt=Je.manifest[ft];for(let Ot of lt.values()){let Er=ze.get(Ot.descriptorHash);typeof Er<"u"&&Er!==null&&(lt.set(Ot.identHash,QP.structUtils.makeDescriptor(Ot,Er)),Le=!0)}}return Le?await Q.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:ae,mode:this.mode}):0}};Qje.paths=[["upgrade-interactive"]];Qje.usage=vls.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]});d4r.default=Qje});var Dls=H(i0e=>{"use strict";Object.defineProperty(i0e,"__esModule",{value:!0});i0e.UpgradeInteractiveCommand=i0e.SearchCommand=void 0;var Tls=(Wa(),vi(Va)),Rls=Tls.__importDefault($is());i0e.SearchCommand=Rls.default;var Nls=Tls.__importDefault(wls());i0e.UpgradeInteractiveCommand=Nls.default;var ehl={commands:[Rls.default,Nls.default]};i0e.default=ehl});var p4r=H(Pxt=>{"use strict";Object.defineProperty(Pxt,"__esModule",{value:!0});Pxt.JSR_PROTOCOL=void 0;Pxt.JSR_PROTOCOL="jsr:"});var Mxt=H(Xje=>{"use strict";Object.defineProperty(Xje,"__esModule",{value:!0});Xje.convertDescriptorFromJsrToNpm=rhl;Xje.convertLocatorFromJsrToNpm=nhl;Xje.convertLocatorFromNpmToJsr=ihl;var thl=wn(),rJ=wn();function rhl(e){let t=e.range.slice(4);if(thl.semverUtils.validRange(t))return rJ.structUtils.makeDescriptor(e,`npm:${rJ.structUtils.stringifyIdent(rJ.structUtils.wrapIdentIntoScope(e,"jsr"))}@${t}`);let r=rJ.structUtils.tryParseDescriptor(t,!0);if(r!==null)return rJ.structUtils.makeDescriptor(e,`npm:${rJ.structUtils.stringifyIdent(rJ.structUtils.wrapIdentIntoScope(r,"jsr"))}@${r.range}`);throw new Error(`Invalid range: ${e.range}`)}function nhl(e){return rJ.structUtils.makeLocator(rJ.structUtils.wrapIdentIntoScope(e,"jsr"),`npm:${e.reference.slice(4)}`)}function ihl(e){return rJ.structUtils.makeLocator(rJ.structUtils.unwrapIdentFromScope(e,"jsr"),`jsr:${e.reference.slice(4)}`)}});var xls=H(Hxt=>{"use strict";Object.defineProperty(Hxt,"__esModule",{value:!0});Hxt.JsrFetcher=void 0;var shl=p4r(),kls=Mxt(),f4r=class{supports(t,r){return t.reference.startsWith(shl.JSR_PROTOCOL)}getLocalPath(t,r){let n=(0,kls.convertLocatorFromJsrToNpm)(t);return r.fetcher.getLocalPath(n,r)}fetch(t,r){let n=(0,kls.convertLocatorFromJsrToNpm)(t);return r.fetcher.fetch(n,r)}};Hxt.JsrFetcher=f4r});var Fls=H(Yxt=>{"use strict";Object.defineProperty(Yxt,"__esModule",{value:!0});Yxt.JsrResolver=void 0;var Gls=p4r(),s0e=Mxt(),I4r=class{supportsDescriptor(t,r){return!!t.range.startsWith(Gls.JSR_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Gls.JSR_PROTOCOL)}shouldPersistResolution(t,r){let n=(0,s0e.convertLocatorFromJsrToNpm)(t);return r.resolver.shouldPersistResolution(n,r)}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{inner:(0,s0e.convertDescriptorFromJsrToNpm)(t)}}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency((0,s0e.convertDescriptorFromJsrToNpm)(t));return(await n.resolver.getCandidates(a,r,n)).map(l=>(0,s0e.convertLocatorFromNpmToJsr)(l))}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency((0,s0e.convertDescriptorFromJsrToNpm)(t));return a.resolver.getSatisfying(o,r,n,a)}async resolve(t,r){let n=(0,s0e.convertLocatorFromJsrToNpm)(t),a=await r.resolver.resolve(n,r);return{...a,...(0,s0e.convertLocatorFromNpmToJsr)(a)}}};Yxt.JsrResolver=I4r});var Lls=H(h4r=>{"use strict";Object.defineProperty(h4r,"__esModule",{value:!0});var Zls=wn(),ohl=xls(),ahl=Fls(),chl=Mxt(),lhl=["dependencies","devDependencies","peerDependencies"];function uhl(e,t){for(let r of lhl)for(let n of e.manifest.getForScope(r).values()){if(!n.range.startsWith("jsr:"))continue;let a=(0,chl.convertDescriptorFromJsrToNpm)(n),o=r==="dependencies"?Zls.structUtils.makeDescriptor(n,"unknown"):null,l=o!==null&&e.manifest.ensureDependencyMeta(o).optional?"optionalDependencies":r;t[l][Zls.structUtils.stringifyIdent(n)]=a.range}}var ghl={hooks:{beforeWorkspacePacking:uhl},resolvers:[ahl.JsrResolver],fetchers:[ohl.JsrFetcher]};h4r.default=ghl});var Wls=H(m4r=>{"use strict";Object.defineProperty(m4r,"__esModule",{value:!0});var Vls=sl(),Qxt=wn(),Ahl=wn(),Jje=(vl(),vi(ng)),Uje=class extends Vls.BaseCommand{constructor(){super(...arguments),this.json=Jje.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.production=Jje.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"}),this.all=Jje.Option.Boolean("-A,--all",!1,{description:"Install the entire project"}),this.workspaces=Jje.Option.Rest()}async execute(){let t=await Qxt.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Qxt.Project.find(t,this.context.cwd),a=await Qxt.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let o;if(this.all)o=new Set(r.workspaces);else if(this.workspaces.length===0){if(!n)throw new Vls.WorkspaceRequiredError(r.cwd,this.context.cwd);o=new Set([n])}else o=new Set(this.workspaces.map(l=>r.getWorkspaceByIdent(Ahl.structUtils.parseIdent(l))));for(let l of o)for(let A of this.production?["dependencies"]:Qxt.Manifest.hardDependencies)for(let f of l.manifest.getForScope(A).values()){let I=r.tryWorkspaceByDescriptor(f);I!==null&&o.add(I)}for(let l of r.workspaces)o.has(l)?this.production&&l.manifest.devDependencies.clear():(l.manifest.installConfig=l.manifest.installConfig||{},l.manifest.installConfig.selfReferences=!1,l.manifest.dependencies.clear(),l.manifest.devDependencies.clear(),l.manifest.peerDependencies.clear(),l.manifest.scripts.clear());return await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,persistProject:!1})}};Uje.paths=[["workspaces","focus"]];Uje.usage=Jje.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});m4r.default=Uje});var Mls=H(y4r=>{"use strict";Object.defineProperty(y4r,"__esModule",{value:!0});var _4r=(Wa(),vi(Va)),Ols=sl(),C4r=wn(),Xxt=wn(),sF=wn(),dhl=bGe(),JR=(vl(),vi(ng)),Kje=_4r.__importDefault(Rk()),phl=_4r.__importDefault(Kfe()),Yte=_4r.__importStar((BZ(),vi(vZ))),vGe=class extends Ols.BaseCommand{constructor(){super(...arguments),this.from=JR.Option.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"}),this.all=JR.Option.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"}),this.recursive=JR.Option.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"}),this.worktree=JR.Option.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"}),this.verbose=JR.Option.Counter("-v,--verbose",{description:"Increase level of logging verbosity up to 2 times"}),this.parallel=JR.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"}),this.interlaced=JR.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"}),this.jobs=JR.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:Yte.isOneOf([Yte.isEnum(["unlimited"]),Yte.applyCascade(Yte.isNumber(),[Yte.isInteger(),Yte.isAtLeast(1)])])}),this.topological=JR.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"}),this.topologicalDev=JR.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"}),this.include=JR.Option.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"}),this.exclude=JR.Option.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"}),this.publicOnly=JR.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"}),this.since=JR.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.dryRun=JR.Option.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"}),this.commandName=JR.Option.String(),this.args=JR.Option.Proxy()}async execute(){let t=await C4r.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await C4r.Project.find(t,this.context.cwd);if(!this.all&&!n)throw new Ols.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=this.cli.process([this.commandName,...this.args]),o=a.path.length===1&&a.path[0]==="run"&&typeof a.scriptName<"u"?a.scriptName:null;if(a.path.length===0)throw new JR.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let l=Se=>{this.dryRun&&this.context.stdout.write(`${Se} +`)},A=()=>{let Se=this.from.map(De=>Kje.default.matcher(De));return r.workspaces.filter(De=>{let k=sF.structUtils.stringifyIdent(De.anchoredLocator),tt=De.relativeCwd;return Se.some(ze=>ze(k)||ze(tt))})},f=[];if(this.since?(l("Option --since is set; selecting the changed workspaces as root for workspace selection"),f=Array.from(await dhl.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}))):this.from?(l("Option --from is set; selecting the specified workspaces"),f=[...A()]):this.worktree?(l("Option --worktree is set; selecting the current workspace"),f=[n]):this.recursive?(l("Option --recursive is set; selecting the current workspace"),f=[n]):this.all&&(l("Option --all is set; selecting all workspaces"),f=[...r.workspaces]),this.dryRun&&!this.all){for(let Se of f)l(` - ${Se.relativeCwd} - ${iF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);f.length>0&&l("")}let I;if(this.recursive?this.since?(l("Option --recursive --since is set; recursively selecting all dependent workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependents()]).flat())):(l("Option --recursive is set; recursively selecting all transitive dependencies"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependencies()]).flat())):this.worktree?(l("Option --worktree is set; recursively selecting all nested workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceChildren()]).flat())):I=null,I!==null&&(f=[...new Set([...f,...I])],this.dryRun))for(let Se of I)l(` + ${sF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);f.length>0&&l("")}let I;if(this.recursive?this.since?(l("Option --recursive --since is set; recursively selecting all dependent workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependents()]).flat())):(l("Option --recursive is set; recursively selecting all transitive dependencies"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependencies()]).flat())):this.worktree?(l("Option --worktree is set; recursively selecting all nested workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceChildren()]).flat())):I=null,I!==null&&(f=[...new Set([...f,...I])],this.dryRun))for(let Se of I)l(` - ${Se.relativeCwd} - ${iF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);let C=[],b=!1;if(o?.includes(":")){for(let Se of r.workspaces)if(Se.manifest.scripts.has(o)&&(b=!b,b===!1))break}for(let Se of f){if(o&&!Se.manifest.scripts.has(o)&&!b&&!(await d4r.scriptUtils.getWorkspaceAccessibleBinaries(Se)).has(o)){l(`Excluding ${Se.relativeCwd} because it doesn't have a "${o}" script`);continue}if(!(o===t.env.npm_lifecycle_event&&Se.cwd===n.cwd)){if(this.include.length>0&&!jje.default.isMatch(iF.structUtils.stringifyIdent(Se.anchoredLocator),this.include)&&!jje.default.isMatch(Se.relativeCwd,this.include)){l(`Excluding ${Se.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(jje.default.isMatch(iF.structUtils.stringifyIdent(Se.anchoredLocator),this.exclude)||jje.default.isMatch(Se.relativeCwd,this.exclude))){l(`Excluding ${Se.relativeCwd} because it matches the --exclude filter`);continue}if(this.publicOnly&&Se.manifest.private===!0){l(`Excluding ${Se.relativeCwd} because it's a private workspace and --no-private was set`);continue}C.push(Se)}}if(C.sort((Se,De)=>iF.structUtils.stringifyIdent(Se.anchoredLocator).localeCompare(iF.structUtils.stringifyIdent(De.anchoredLocator))),this.dryRun)return 0;let E=this.verbose??(this.context.stdout.isTTY?1/0:0),N=E>0,B=E>1,F=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(iF.nodeUtils.availableParallelism()/2):1,Q=F===1?!1:this.parallel,J=Q?this.interlaced:!0,ae=(0,hIl.default)(F),ne=new Map,ce=new Set,fe=0,ue=null,de=!1,be=await Xxt.StreamReport.start({configuration:t,stdout:this.context.stdout,includePrefix:!1},async Se=>{let De=async(k,{commandIndex:tt})=>{if(de)return-1;!Q&&B&&tt>1&&Se.reportSeparator();let ze=mIl(k,{configuration:t,label:N,commandIndex:tt}),[Le,Je]=Ols(Se,{prefix:ze,interlaced:J}),[ft,lt]=Ols(Se,{prefix:ze,interlaced:J});try{B&&Se.reportInfo(null,`${ze?`${ze} `:""}Process started`);let Ot=Date.now(),Er=await this.cli.run([this.commandName,...this.args],{cwd:k.cwd,stdout:Le,stderr:ft})||0;Le.end(),ft.end(),await Je,await lt;let Sr=Date.now();if(B){let jt=t.get("enableTimers")?`, completed in ${iF.formatUtils.pretty(t,Sr-Ot,iF.formatUtils.Type.DURATION)}`:"";Se.reportInfo(null,`${ze?`${ze} `:""}Process exited (exit code ${Er})${jt}`)}return Er===130&&(de=!0,ue=Er),Er}catch(Ot){throw Le.end(),ft.end(),await Je,await lt,Ot}};for(let k of C)ne.set(k.anchoredLocator.locatorHash,k);for(;ne.size>0&&!Se.hasErrors();){let k=[];for(let[Je,ft]of ne){if(ce.has(ft.anchoredDescriptor.descriptorHash))continue;let lt=!0;if(this.topological||this.topologicalDev){let Ot=this.topologicalDev?new Map([...ft.manifest.dependencies,...ft.manifest.devDependencies]):ft.manifest.dependencies;for(let Er of Ot.values()){let Sr=r.tryWorkspaceByDescriptor(Er);if(lt=Sr===null||!ne.has(Sr.anchoredLocator.locatorHash),!lt)break}}if(lt&&(ce.add(ft.anchoredDescriptor.descriptorHash),k.push(ae(async()=>{let Ot=await De(ft,{commandIndex:++fe});return ne.delete(Je),ce.delete(ft.anchoredDescriptor.descriptorHash),{workspace:ft,exitCode:Ot}})),!Q))break}if(k.length===0){let Je=Array.from(ne.values()).map(ft=>iF.structUtils.prettyLocator(t,ft.anchoredLocator)).join(", ");Se.reportError(Xxt.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${Je})`);return}let tt=await Promise.all(k);tt.forEach(({workspace:Je,exitCode:ft})=>{ft!==0&&Se.reportError(Xxt.MessageName.UNNAMED,`The command failed in workspace ${iF.structUtils.prettyLocator(t,Je.anchoredLocator)} with exit code ${ft}`)});let Le=tt.map(Je=>Je.exitCode).find(Je=>Je!==0);(this.topological||this.topologicalDev)&&typeof Le<"u"&&Se.reportError(Xxt.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return ue!==null?ue:be.exitCode()}};vGe.paths=[["workspaces","foreach"]];vGe.usage=XR.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. You can also use the `--no-private` flag to avoid running the command in private workspaces.\n\n The `-v,--verbose` flag can be passed up to twice: once to prefix output lines with the originating workspace's name, and again to include start/finish/timing log lines. Maximum verbosity is enabled by default in terminal environments.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A --no-private npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]});vGe.schema=[Hte.hasKeyRelationship("all",Hte.KeyRelationship.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),Hte.hasAtLeastOneKey(["all","recursive","since","worktree"],{missingIf:"undefined"})];f4r.default=vGe;function Ols(e,{prefix:t,interlaced:r}){let n=e.createStreamReporter(t),a=new iF.miscUtils.DefaultStream;a.pipe(n,{end:!1}),a.on("finish",()=>{n.end()});let o=new Promise(A=>{n.on("finish",()=>{A(a.active)})});if(r)return[a,o];let l=new iF.miscUtils.BufferStream;return l.pipe(a,{end:!1}),l.on("finish",()=>{a.end()}),[l,o]}function mIl(e,{configuration:t,commandIndex:r,label:n}){if(!n)return null;let o=`[${iF.structUtils.stringifyIdent(e.anchoredLocator)}]:`,l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[r%l.length];return iF.formatUtils.pretty(t,o,A)}});var Qls=H(o0e=>{"use strict";Object.defineProperty(o0e,"__esModule",{value:!0});o0e.WorkspacesForeachCommand=o0e.WorkspacesFocusCommand=void 0;var Mls=(Wa(),vi(Va)),Hls=Mls.__importDefault(Vls());o0e.WorkspacesFocusCommand=Hls.default;var Yls=Mls.__importDefault(Pls());o0e.WorkspacesForeachCommand=Yls.default;var CIl={commands:[Hls.default,Yls.default]};o0e.default=CIl});var Jls=H(Jxt=>{"use strict";Object.defineProperty(Jxt,"__esModule",{value:!0});Jxt.hasDefinitelyTyped=void 0;var _Il=(Wa(),vi(Va)),Xls=mn(),yIl=_Il.__importDefault(eYr()),bIl="e8e1bd300d860104bb8c58453ffa1eb4",EIl="OFCNCOG2CU",SIl=async(e,t)=>{let r=Xls.structUtils.stringifyIdent(e),a=vIl(t).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}};Jxt.hasDefinitelyTyped=SIl;var vIl=e=>{let t={async send(r){try{let n=await Xls.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:n.body,isTimedOut:!1,status:n.statusCode}}catch(n){return{content:n.response.body,isTimedOut:!1,status:n.response.statusCode}}}};return(0,yIl.default)(EIl,bIl,{requester:t})}});var jls=H(h4r=>{"use strict";Object.defineProperty(h4r,"__esModule",{value:!0});var BIl=(Wa(),vi(Va)),I4r=mn(),bj=mn(),Bue=Io(),Uls=Vxt(),wIl=BIl.__importDefault(jC()),TIl=Jls(),Kls=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,RIl=async(e,t,r,n)=>{if(r.scope==="types")return;let{project:a}=e,{configuration:o}=a;if(!(o.get("tsEnableAutoTypes")??(Bue.xfs.existsSync(Bue.ppath.join(e.cwd,"tsconfig.json"))||Bue.xfs.existsSync(Bue.ppath.join(a.cwd,"tsconfig.json")))))return;let A=o.makeResolver(),f={project:a,resolver:A,report:new bj.ThrowReport};if(!await(0,TIl.hasDefinitelyTyped)(r,o))return;let C=Kls(r),b=bj.structUtils.parseRange(r.range).selector;if(!bj.semverUtils.validRange(b)){let Q=o.normalizeDependency(r),J=await A.getCandidates(Q,{},f);b=bj.structUtils.parseRange(J[0].reference).selector}let E=wIl.default.coerce(b);if(E===null)return;let N=`${Uls.suggestUtils.Modifier.CARET}${E.major}`,B=bj.structUtils.makeDescriptor(bj.structUtils.makeIdent("types",C),N),F=bj.miscUtils.mapAndFind(a.workspaces,Q=>{let J=Q.manifest.dependencies.get(r.identHash)?.descriptorHash,ae=Q.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(J!==r.descriptorHash&&ae!==r.descriptorHash)return bj.miscUtils.mapAndFind.skip;let ne=[];for(let ce of I4r.Manifest.allDependencies){let fe=Q.manifest[ce].get(B.identHash);typeof fe>"u"||ne.push([ce,fe])}return ne.length===0?bj.miscUtils.mapAndFind.skip:ne});if(typeof F<"u")for(let[Q,J]of F)e.manifest[Q].set(J.identHash,J);else{try{let Q=o.normalizeDependency(B);if((await A.getCandidates(Q,{},f)).length===0)return}catch{return}e.manifest[Uls.suggestUtils.Target.DEVELOPMENT].set(B.identHash,B)}},NIl=async(e,t,r)=>{if(r.scope==="types")return;let{project:n}=e,{configuration:a}=n;if(!(a.get("tsEnableAutoTypes")??(Bue.xfs.existsSync(Bue.ppath.join(e.cwd,"tsconfig.json"))||Bue.xfs.existsSync(Bue.ppath.join(n.cwd,"tsconfig.json")))))return;let l=Kls(r),A=bj.structUtils.makeIdent("types",l);for(let f of I4r.Manifest.allDependencies)typeof e.manifest[f].get(A.identHash)>"u"||e.manifest[f].delete(A.identHash)},DIl=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},kIl={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:I4r.SettingsType.BOOLEAN,isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:RIl,afterWorkspaceDependencyRemoval:NIl,beforeWorkspacePacking:DIl}};h4r.default=kIl});var $je=H(sF=>{"use strict";Object.defineProperty(sF,"__esModule",{value:!0});sF.Decision=void 0;sF.validateReleaseDecision=qje;sF.resolveVersionFiles=ZIl;sF.clearVersionFiles=LIl;sF.updateVersionFiles=VIl;sF.openVersionFile=WIl;sF.requireMoreDecisions=OIl;sF.getUndecidedWorkspaces=zls;sF.getUndecidedDependentWorkspaces=qls;sF.suggestStrategy=PIl;sF.applyStrategy=C4r;sF.applyReleases=MIl;sF.applyPrerelease=$ls;var xIl=(Wa(),vi(Va)),QE=mn(),iB=Io(),a0e=tM(),m4r=bGe(),zje=(Rl(),vi(ng)),GIl=WO(),Yte=xIl.__importDefault(jC()),FIl=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,VH;(function(e){e.UNDECIDED="undecided",e.DECLINE="decline",e.MAJOR="major",e.MINOR="minor",e.PATCH="patch",e.PREMAJOR="premajor",e.PREMINOR="preminor",e.PREPATCH="prepatch",e.PRERELEASE="prerelease"})(VH||(sF.Decision=VH={}));function qje(e){let t=Yte.default.valid(e);return t||QE.miscUtils.validateEnum((0,GIl.omit)(VH,"UNDECIDED"),e)}async function ZIl(e,{prerelease:t=null}={}){let r=new Map,n=e.configuration.get("deferredVersionFolder");if(!iB.xfs.existsSync(n))return r;let a=await iB.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=iB.ppath.join(n,o),A=await iB.xfs.readFilePromise(l,"utf8"),f=(0,a0e.parseSyml)(A);for(let[I,C]of Object.entries(f.releases||{})){if(C===VH.DECLINE)continue;let b=QE.structUtils.parseIdent(I),E=e.tryWorkspaceByIdent(b);if(E===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${iB.ppath.basename(l)} references ${I})`);if(E.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${QE.structUtils.prettyLocator(e.configuration,E.anchoredLocator)})`);let N=E.manifest.raw.stableVersion??E.manifest.version,B=r.get(E),F=VH.PRERELEASE===C?C4r(E.manifest.version,qje(C)):C4r(N,qje(C));if(F===null)throw new Error(`Assertion failed: Expected ${N} to support being bumped via strategy ${C}`);let Q=typeof B<"u"?Yte.default.gt(F,B)?F:B:F;r.set(E,Q)}}return t&&(r=new Map([...r].map(([o,l])=>[o,$ls(l,{current:o.manifest.version,prerelease:t})]))),r}async function LIl(e){let t=e.configuration.get("deferredVersionFolder");iB.xfs.existsSync(t)&&await iB.xfs.removePromise(t)}async function VIl(e,t){let r=new Set(t),n=e.configuration.get("deferredVersionFolder");if(!iB.xfs.existsSync(n))return;let a=await iB.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=iB.ppath.join(n,o),A=await iB.xfs.readFilePromise(l,"utf8"),f=(0,a0e.parseSyml)(A),I=f?.releases;if(I){for(let C of Object.keys(I)){let b=QE.structUtils.parseIdent(C),E=e.tryWorkspaceByIdent(b);(E===null||r.has(E))&&delete f.releases[C]}Object.keys(f.releases).length>0?await iB.xfs.changeFilePromise(l,(0,a0e.stringifySyml)(new a0e.stringifySyml.PreserveOrdering(f))):await iB.xfs.unlinkPromise(l)}}}async function WIl(e,{allowEmpty:t=!1}={}){let r=e.configuration;if(r.projectCwd===null)throw new zje.UsageError("This command can only be run from within a Yarn project");let n=await m4r.gitUtils.fetchRoot(r.projectCwd),a=n!==null?await m4r.gitUtils.fetchBase(n,{baseRefs:r.get("changesetBaseRefs")}):null,o=n!==null?await m4r.gitUtils.fetchChangedFiles(n,{base:a.hash,project:e}):[],l=r.get("deferredVersionFolder"),A=o.filter(N=>iB.ppath.contains(l,N)!==null);if(A.length>1)throw new zje.UsageError(`Your current branch contains multiple versioning files; this isn't supported: -- ${A.map(N=>iB.npath.fromPortablePath(N)).join(` -- `)}`);let f=new Set(QE.miscUtils.mapAndFilter(o,N=>{let B=e.tryWorkspaceByFilePath(N);return B===null?QE.miscUtils.mapAndFilter.skip:B}));if(A.length===0&&f.size===0&&!t)return null;let I=A.length===1?A[0]:iB.ppath.join(l,`${QE.hashUtils.makeHash(Math.random().toString()).slice(0,8)}.yml`),C=iB.xfs.existsSync(I)?await iB.xfs.readFilePromise(I,"utf8"):"{}",b=(0,a0e.parseSyml)(C),E=new Map;for(let N of b.declined||[]){let B=QE.structUtils.parseIdent(N),F=e.getWorkspaceByIdent(B);E.set(F,VH.DECLINE)}for(let[N,B]of Object.entries(b.releases||{})){let F=QE.structUtils.parseIdent(N),Q=e.getWorkspaceByIdent(F);E.set(Q,qje(B))}return{project:e,root:n,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(o),changedWorkspaces:f,releaseRoots:new Set([...f].filter(N=>N.manifest.version!==null)),releases:E,async saveAll(){let N={},B=[],F=[];for(let Q of e.workspaces){if(Q.manifest.version===null)continue;let J=QE.structUtils.stringifyIdent(Q.anchoredLocator),ae=E.get(Q);ae===VH.DECLINE?B.push(J):typeof ae<"u"?N[J]=qje(ae):f.has(Q)&&F.push(J)}await iB.xfs.mkdirPromise(iB.ppath.dirname(I),{recursive:!0}),await iB.xfs.changeFilePromise(I,(0,a0e.stringifySyml)(new a0e.stringifySyml.PreserveOrdering({releases:Object.keys(N).length>0?N:void 0,declined:B.length>0?B:void 0,undecided:F.length>0?F:void 0})))}}}function OIl(e){return zls(e).size>0||qls(e).length>0}function zls(e){let t=new Set;for(let r of e.changedWorkspaces)r.manifest.version!==null&&(e.releases.has(r)||t.add(r));return t}function qls(e,{include:t=new Set}={}){let r=[],n=new Map(QE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l===VH.DECLINE?QE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o])),a=new Map(QE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l!==VH.DECLINE?QE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o]));for(let o of e.project.workspaces)if(!(!t.has(o)&&(a.has(o.anchoredLocator.locatorHash)||n.has(o.anchoredLocator.locatorHash)))&&o.manifest.version!==null)for(let l of QE.Manifest.hardDependencies)for(let A of o.manifest.getForScope(l).values()){let f=e.project.tryWorkspaceByDescriptor(A);f!==null&&n.has(f.anchoredLocator.locatorHash)&&r.push([o,f])}return r}function PIl(e,t){let r=Yte.default.clean(t);for(let n of Object.values(VH))if(n!==VH.UNDECIDED&&n!==VH.DECLINE&&Yte.default.inc(e,n)===r)return n;return null}function C4r(e,t){if(Yte.default.valid(t))return t;if(e===null)throw new zje.UsageError(`Cannot apply the release strategy "${t}" unless the workspace already has a valid version`);if(!Yte.default.valid(e))throw new zje.UsageError(`Cannot apply the release strategy "${t}" on a non-semver version (${e})`);let r=Yte.default.inc(e,t);if(r===null)throw new zje.UsageError(`Cannot apply the release strategy "${t}" on the specified version (${e})`);return r}function MIl(e,t,{report:r,exact:n}){let a=new Map;for(let o of e.workspaces)for(let l of QE.Manifest.allDependencies)for(let A of o.manifest[l].values()){let f=e.tryWorkspaceByDescriptor(A);if(f===null||!t.has(f))continue;QE.miscUtils.getArrayWithDefault(a,f).push([o,l,A.identHash])}for(let[o,l]of t){let A=o.manifest.version;o.manifest.version=l,Yte.default.prerelease(l)===null?delete o.manifest.raw.stableVersion:o.manifest.raw.stableVersion||(o.manifest.raw.stableVersion=A);let f=o.manifest.name!==null?QE.structUtils.stringifyIdent(o.manifest.name):null;r.reportInfo(QE.MessageName.UNNAMED,`${QE.structUtils.prettyLocator(e.configuration,o.anchoredLocator)}: Bumped to ${l}`),r.reportJson({cwd:iB.npath.fromPortablePath(o.cwd),ident:f,oldVersion:A,newVersion:l});let I=a.get(o);if(!(typeof I>"u"))for(let[C,b,E]of I){let N=C.manifest[b].get(E);if(typeof N>"u")throw new Error("Assertion failed: The dependency should have existed");let B=N.range,F=!1;if(B.startsWith(QE.WorkspaceResolver.protocol)&&(B=B.slice(QE.WorkspaceResolver.protocol.length),F=!0,B===o.relativeCwd))continue;let Q=B.match(FIl);if(!Q){r.reportWarning(QE.MessageName.UNNAMED,`Couldn't auto-upgrade range ${B} (in ${QE.structUtils.prettyLocator(e.configuration,C.anchoredLocator)})`);continue}let J=n?`${l}`:`${Q[1]}${l}`;F&&(J=`${QE.WorkspaceResolver.protocol}${J}`);let ae=QE.structUtils.makeDescriptor(N,J);C.manifest[b].set(E,ae)}}}var HIl=new Map([["%n",{extract:e=>e.length>=1?[e[0],e.slice(1)]:null,generate:(e=0)=>`${e+1}`}]]);function $ls(e,{current:t,prerelease:r}){let n=new Yte.default.SemVer(t),a=n.prerelease.slice(),o=[];n.prerelease=[],n.format()!==e&&(a.length=0);let l=!0,A=r.split(/\./g);for(let f of A){let I=HIl.get(f);if(typeof I>"u")o.push(f),a[0]===f?a.shift():l=!1;else{let C=l?I.extract(a):null;C!==null&&typeof C[0]=="number"?(o.push(I.generate(C[0])),a=C[1]):(o.push(I.generate()),l=!1)}}return n.prerelease&&(n.prerelease=[]),`${e}-${o.join(".")}`}});var rus=H(y4r=>{"use strict";Object.defineProperty(y4r,"__esModule",{value:!0});var YIl=(Wa(),vi(Va)),eus=dl(),_4r=mn(),tus=mn(),c0e=(Rl(),vi(ng)),Uxt=YIl.__importStar($je()),e7e=class extends eus.BaseCommand{constructor(){super(...arguments),this.all=c0e.Option.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"}),this.dryRun=c0e.Option.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"}),this.prerelease=c0e.Option.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0}),this.exact=c0e.Option.Boolean("--exact",!1,{description:"Use the exact version of each package, removes any range. Useful for nightly releases where the range might match another version."}),this.recursive=c0e.Option.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"}),this.json=c0e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await _4r.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await tus.Project.find(t,this.context.cwd),a=await _4r.Cache.find(t);if(!n)throw new eus.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=await tus.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,f=await Uxt.resolveVersionFiles(r,{prerelease:A}),I=new Map;if(this.all)I=f;else{let C=this.recursive?n.getRecursiveWorkspaceDependencies():[n];for(let b of C){let E=f.get(b);typeof E<"u"&&I.set(b,E)}}if(I.size===0){let C=f.size>0?" Did you want to add --all?":"";l.reportWarning(_4r.MessageName.UNNAMED,`The current workspace doesn't seem to require a version bump.${C}`);return}Uxt.applyReleases(r,I,{report:l,exact:this.exact}),this.dryRun||(A||(this.all?await Uxt.clearVersionFiles(r):await Uxt.updateVersionFiles(r,[...I.keys()])),l.reportSeparator())});return this.dryRun||o.hasErrors()?o.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};e7e.paths=[["version","apply"]];e7e.usage=c0e.Command.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` + ${sF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);let C=[],b=!1;if(o?.includes(":")){for(let Se of r.workspaces)if(Se.manifest.scripts.has(o)&&(b=!b,b===!1))break}for(let Se of f){if(o&&!Se.manifest.scripts.has(o)&&!b&&!(await C4r.scriptUtils.getWorkspaceAccessibleBinaries(Se)).has(o)){l(`Excluding ${Se.relativeCwd} because it doesn't have a "${o}" script`);continue}if(!(o===t.env.npm_lifecycle_event&&Se.cwd===n.cwd)){if(this.include.length>0&&!Kje.default.isMatch(sF.structUtils.stringifyIdent(Se.anchoredLocator),this.include)&&!Kje.default.isMatch(Se.relativeCwd,this.include)){l(`Excluding ${Se.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(Kje.default.isMatch(sF.structUtils.stringifyIdent(Se.anchoredLocator),this.exclude)||Kje.default.isMatch(Se.relativeCwd,this.exclude))){l(`Excluding ${Se.relativeCwd} because it matches the --exclude filter`);continue}if(this.publicOnly&&Se.manifest.private===!0){l(`Excluding ${Se.relativeCwd} because it's a private workspace and --no-private was set`);continue}C.push(Se)}}if(C.sort((Se,De)=>sF.structUtils.stringifyIdent(Se.anchoredLocator).localeCompare(sF.structUtils.stringifyIdent(De.anchoredLocator))),this.dryRun)return 0;let E=this.verbose??(this.context.stdout.isTTY?1/0:0),N=E>0,B=E>1,F=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(sF.nodeUtils.availableParallelism()/2):1,Q=F===1?!1:this.parallel,J=Q?this.interlaced:!0,ae=(0,phl.default)(F),ne=new Map,ce=new Set,fe=0,ue=null,de=!1,be=await Xxt.StreamReport.start({configuration:t,stdout:this.context.stdout,includePrefix:!1},async Se=>{let De=async(k,{commandIndex:tt})=>{if(de)return-1;!Q&&B&&tt>1&&Se.reportSeparator();let ze=fhl(k,{configuration:t,label:N,commandIndex:tt}),[Le,Je]=Pls(Se,{prefix:ze,interlaced:J}),[ft,lt]=Pls(Se,{prefix:ze,interlaced:J});try{B&&Se.reportInfo(null,`${ze?`${ze} `:""}Process started`);let Ot=Date.now(),Er=await this.cli.run([this.commandName,...this.args],{cwd:k.cwd,stdout:Le,stderr:ft})||0;Le.end(),ft.end(),await Je,await lt;let Sr=Date.now();if(B){let jt=t.get("enableTimers")?`, completed in ${sF.formatUtils.pretty(t,Sr-Ot,sF.formatUtils.Type.DURATION)}`:"";Se.reportInfo(null,`${ze?`${ze} `:""}Process exited (exit code ${Er})${jt}`)}return Er===130&&(de=!0,ue=Er),Er}catch(Ot){throw Le.end(),ft.end(),await Je,await lt,Ot}};for(let k of C)ne.set(k.anchoredLocator.locatorHash,k);for(;ne.size>0&&!Se.hasErrors();){let k=[];for(let[Je,ft]of ne){if(ce.has(ft.anchoredDescriptor.descriptorHash))continue;let lt=!0;if(this.topological||this.topologicalDev){let Ot=this.topologicalDev?new Map([...ft.manifest.dependencies,...ft.manifest.devDependencies]):ft.manifest.dependencies;for(let Er of Ot.values()){let Sr=r.tryWorkspaceByDescriptor(Er);if(lt=Sr===null||!ne.has(Sr.anchoredLocator.locatorHash),!lt)break}}if(lt&&(ce.add(ft.anchoredDescriptor.descriptorHash),k.push(ae(async()=>{let Ot=await De(ft,{commandIndex:++fe});return ne.delete(Je),ce.delete(ft.anchoredDescriptor.descriptorHash),{workspace:ft,exitCode:Ot}})),!Q))break}if(k.length===0){let Je=Array.from(ne.values()).map(ft=>sF.structUtils.prettyLocator(t,ft.anchoredLocator)).join(", ");Se.reportError(Xxt.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${Je})`);return}let tt=await Promise.all(k);tt.forEach(({workspace:Je,exitCode:ft})=>{ft!==0&&Se.reportError(Xxt.MessageName.UNNAMED,`The command failed in workspace ${sF.structUtils.prettyLocator(t,Je.anchoredLocator)} with exit code ${ft}`)});let Le=tt.map(Je=>Je.exitCode).find(Je=>Je!==0);(this.topological||this.topologicalDev)&&typeof Le<"u"&&Se.reportError(Xxt.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return ue!==null?ue:be.exitCode()}};vGe.paths=[["workspaces","foreach"]];vGe.usage=JR.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. You can also use the `--no-private` flag to avoid running the command in private workspaces.\n\n The `-v,--verbose` flag can be passed up to twice: once to prefix output lines with the originating workspace's name, and again to include start/finish/timing log lines. Maximum verbosity is enabled by default in terminal environments.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A --no-private npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]});vGe.schema=[Yte.hasKeyRelationship("all",Yte.KeyRelationship.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),Yte.hasAtLeastOneKey(["all","recursive","since","worktree"],{missingIf:"undefined"})];y4r.default=vGe;function Pls(e,{prefix:t,interlaced:r}){let n=e.createStreamReporter(t),a=new sF.miscUtils.DefaultStream;a.pipe(n,{end:!1}),a.on("finish",()=>{n.end()});let o=new Promise(A=>{n.on("finish",()=>{A(a.active)})});if(r)return[a,o];let l=new sF.miscUtils.BufferStream;return l.pipe(a,{end:!1}),l.on("finish",()=>{a.end()}),[l,o]}function fhl(e,{configuration:t,commandIndex:r,label:n}){if(!n)return null;let o=`[${sF.structUtils.stringifyIdent(e.anchoredLocator)}]:`,l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[r%l.length];return sF.formatUtils.pretty(t,o,A)}});var Xls=H(o0e=>{"use strict";Object.defineProperty(o0e,"__esModule",{value:!0});o0e.WorkspacesForeachCommand=o0e.WorkspacesFocusCommand=void 0;var Hls=(Wa(),vi(Va)),Yls=Hls.__importDefault(Wls());o0e.WorkspacesFocusCommand=Yls.default;var Qls=Hls.__importDefault(Mls());o0e.WorkspacesForeachCommand=Qls.default;var Ihl={commands:[Yls.default,Qls.default]};o0e.default=Ihl});var Uls=H(Jxt=>{"use strict";Object.defineProperty(Jxt,"__esModule",{value:!0});Jxt.hasDefinitelyTyped=void 0;var hhl=(Wa(),vi(Va)),Jls=wn(),mhl=hhl.__importDefault(oYr()),Chl="e8e1bd300d860104bb8c58453ffa1eb4",_hl="OFCNCOG2CU",yhl=async(e,t)=>{let r=Jls.structUtils.stringifyIdent(e),a=bhl(t).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}};Jxt.hasDefinitelyTyped=yhl;var bhl=e=>{let t={async send(r){try{let n=await Jls.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:n.body,isTimedOut:!1,status:n.statusCode}}catch(n){return{content:n.response.body,isTimedOut:!1,status:n.response.statusCode}}}};return(0,mhl.default)(_hl,Chl,{requester:t})}});var zls=H(E4r=>{"use strict";Object.defineProperty(E4r,"__esModule",{value:!0});var Ehl=(Wa(),vi(Va)),b4r=wn(),Ej=wn(),wue=No(),Kls=Vxt(),Shl=Ehl.__importDefault(zC()),vhl=Uls(),jls=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,Bhl=async(e,t,r,n)=>{if(r.scope==="types")return;let{project:a}=e,{configuration:o}=a;if(!(o.get("tsEnableAutoTypes")??(wue.xfs.existsSync(wue.ppath.join(e.cwd,"tsconfig.json"))||wue.xfs.existsSync(wue.ppath.join(a.cwd,"tsconfig.json")))))return;let A=o.makeResolver(),f={project:a,resolver:A,report:new Ej.ThrowReport};if(!await(0,vhl.hasDefinitelyTyped)(r,o))return;let C=jls(r),b=Ej.structUtils.parseRange(r.range).selector;if(!Ej.semverUtils.validRange(b)){let Q=o.normalizeDependency(r),J=await A.getCandidates(Q,{},f);b=Ej.structUtils.parseRange(J[0].reference).selector}let E=Shl.default.coerce(b);if(E===null)return;let N=`${Kls.suggestUtils.Modifier.CARET}${E.major}`,B=Ej.structUtils.makeDescriptor(Ej.structUtils.makeIdent("types",C),N),F=Ej.miscUtils.mapAndFind(a.workspaces,Q=>{let J=Q.manifest.dependencies.get(r.identHash)?.descriptorHash,ae=Q.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(J!==r.descriptorHash&&ae!==r.descriptorHash)return Ej.miscUtils.mapAndFind.skip;let ne=[];for(let ce of b4r.Manifest.allDependencies){let fe=Q.manifest[ce].get(B.identHash);typeof fe>"u"||ne.push([ce,fe])}return ne.length===0?Ej.miscUtils.mapAndFind.skip:ne});if(typeof F<"u")for(let[Q,J]of F)e.manifest[Q].set(J.identHash,J);else{try{let Q=o.normalizeDependency(B);if((await A.getCandidates(Q,{},f)).length===0)return}catch{return}e.manifest[Kls.suggestUtils.Target.DEVELOPMENT].set(B.identHash,B)}},whl=async(e,t,r)=>{if(r.scope==="types")return;let{project:n}=e,{configuration:a}=n;if(!(a.get("tsEnableAutoTypes")??(wue.xfs.existsSync(wue.ppath.join(e.cwd,"tsconfig.json"))||wue.xfs.existsSync(wue.ppath.join(n.cwd,"tsconfig.json")))))return;let l=jls(r),A=Ej.structUtils.makeIdent("types",l);for(let f of b4r.Manifest.allDependencies)typeof e.manifest[f].get(A.identHash)>"u"||e.manifest[f].delete(A.identHash)},Thl=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},Rhl={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:b4r.SettingsType.BOOLEAN,isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:Bhl,afterWorkspaceDependencyRemoval:whl,beforeWorkspacePacking:Thl}};E4r.default=Rhl});var qje=H(oF=>{"use strict";Object.defineProperty(oF,"__esModule",{value:!0});oF.Decision=void 0;oF.validateReleaseDecision=zje;oF.resolveVersionFiles=xhl;oF.clearVersionFiles=Ghl;oF.updateVersionFiles=Fhl;oF.openVersionFile=Zhl;oF.requireMoreDecisions=Lhl;oF.getUndecidedWorkspaces=qls;oF.getUndecidedDependentWorkspaces=$ls;oF.suggestStrategy=Vhl;oF.applyStrategy=v4r;oF.applyReleases=Whl;oF.applyPrerelease=eus;var Nhl=(Wa(),vi(Va)),XE=wn(),sB=No(),a0e=LO(),S4r=bGe(),jje=(vl(),vi(ng)),Dhl=PO(),Qte=Nhl.__importDefault(zC()),khl=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,WH;(function(e){e.UNDECIDED="undecided",e.DECLINE="decline",e.MAJOR="major",e.MINOR="minor",e.PATCH="patch",e.PREMAJOR="premajor",e.PREMINOR="preminor",e.PREPATCH="prepatch",e.PRERELEASE="prerelease"})(WH||(oF.Decision=WH={}));function zje(e){let t=Qte.default.valid(e);return t||XE.miscUtils.validateEnum((0,Dhl.omit)(WH,"UNDECIDED"),e)}async function xhl(e,{prerelease:t=null}={}){let r=new Map,n=e.configuration.get("deferredVersionFolder");if(!sB.xfs.existsSync(n))return r;let a=await sB.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=sB.ppath.join(n,o),A=await sB.xfs.readFilePromise(l,"utf8"),f=(0,a0e.parseSyml)(A);for(let[I,C]of Object.entries(f.releases||{})){if(C===WH.DECLINE)continue;let b=XE.structUtils.parseIdent(I),E=e.tryWorkspaceByIdent(b);if(E===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${sB.ppath.basename(l)} references ${I})`);if(E.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${XE.structUtils.prettyLocator(e.configuration,E.anchoredLocator)})`);let N=E.manifest.raw.stableVersion??E.manifest.version,B=r.get(E),F=WH.PRERELEASE===C?v4r(E.manifest.version,zje(C)):v4r(N,zje(C));if(F===null)throw new Error(`Assertion failed: Expected ${N} to support being bumped via strategy ${C}`);let Q=typeof B<"u"?Qte.default.gt(F,B)?F:B:F;r.set(E,Q)}}return t&&(r=new Map([...r].map(([o,l])=>[o,eus(l,{current:o.manifest.version,prerelease:t})]))),r}async function Ghl(e){let t=e.configuration.get("deferredVersionFolder");sB.xfs.existsSync(t)&&await sB.xfs.removePromise(t)}async function Fhl(e,t){let r=new Set(t),n=e.configuration.get("deferredVersionFolder");if(!sB.xfs.existsSync(n))return;let a=await sB.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=sB.ppath.join(n,o),A=await sB.xfs.readFilePromise(l,"utf8"),f=(0,a0e.parseSyml)(A),I=f?.releases;if(I){for(let C of Object.keys(I)){let b=XE.structUtils.parseIdent(C),E=e.tryWorkspaceByIdent(b);(E===null||r.has(E))&&delete f.releases[C]}Object.keys(f.releases).length>0?await sB.xfs.changeFilePromise(l,(0,a0e.stringifySyml)(new a0e.stringifySyml.PreserveOrdering(f))):await sB.xfs.unlinkPromise(l)}}}async function Zhl(e,{allowEmpty:t=!1}={}){let r=e.configuration;if(r.projectCwd===null)throw new jje.UsageError("This command can only be run from within a Yarn project");let n=await S4r.gitUtils.fetchRoot(r.projectCwd),a=n!==null?await S4r.gitUtils.fetchBase(n,{baseRefs:r.get("changesetBaseRefs")}):null,o=n!==null?await S4r.gitUtils.fetchChangedFiles(n,{base:a.hash,project:e}):[],l=r.get("deferredVersionFolder"),A=o.filter(N=>sB.ppath.contains(l,N)!==null);if(A.length>1)throw new jje.UsageError(`Your current branch contains multiple versioning files; this isn't supported: +- ${A.map(N=>sB.npath.fromPortablePath(N)).join(` +- `)}`);let f=new Set(XE.miscUtils.mapAndFilter(o,N=>{let B=e.tryWorkspaceByFilePath(N);return B===null?XE.miscUtils.mapAndFilter.skip:B}));if(A.length===0&&f.size===0&&!t)return null;let I=A.length===1?A[0]:sB.ppath.join(l,`${XE.hashUtils.makeHash(Math.random().toString()).slice(0,8)}.yml`),C=sB.xfs.existsSync(I)?await sB.xfs.readFilePromise(I,"utf8"):"{}",b=(0,a0e.parseSyml)(C),E=new Map;for(let N of b.declined||[]){let B=XE.structUtils.parseIdent(N),F=e.getWorkspaceByIdent(B);E.set(F,WH.DECLINE)}for(let[N,B]of Object.entries(b.releases||{})){let F=XE.structUtils.parseIdent(N),Q=e.getWorkspaceByIdent(F);E.set(Q,zje(B))}return{project:e,root:n,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(o),changedWorkspaces:f,releaseRoots:new Set([...f].filter(N=>N.manifest.version!==null)),releases:E,async saveAll(){let N={},B=[],F=[];for(let Q of e.workspaces){if(Q.manifest.version===null)continue;let J=XE.structUtils.stringifyIdent(Q.anchoredLocator),ae=E.get(Q);ae===WH.DECLINE?B.push(J):typeof ae<"u"?N[J]=zje(ae):f.has(Q)&&F.push(J)}await sB.xfs.mkdirPromise(sB.ppath.dirname(I),{recursive:!0}),await sB.xfs.changeFilePromise(I,(0,a0e.stringifySyml)(new a0e.stringifySyml.PreserveOrdering({releases:Object.keys(N).length>0?N:void 0,declined:B.length>0?B:void 0,undecided:F.length>0?F:void 0})))}}}function Lhl(e){return qls(e).size>0||$ls(e).length>0}function qls(e){let t=new Set;for(let r of e.changedWorkspaces)r.manifest.version!==null&&(e.releases.has(r)||t.add(r));return t}function $ls(e,{include:t=new Set}={}){let r=[],n=new Map(XE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l===WH.DECLINE?XE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o])),a=new Map(XE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l!==WH.DECLINE?XE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o]));for(let o of e.project.workspaces)if(!(!t.has(o)&&(a.has(o.anchoredLocator.locatorHash)||n.has(o.anchoredLocator.locatorHash)))&&o.manifest.version!==null)for(let l of XE.Manifest.hardDependencies)for(let A of o.manifest.getForScope(l).values()){let f=e.project.tryWorkspaceByDescriptor(A);f!==null&&n.has(f.anchoredLocator.locatorHash)&&r.push([o,f])}return r}function Vhl(e,t){let r=Qte.default.clean(t);for(let n of Object.values(WH))if(n!==WH.UNDECIDED&&n!==WH.DECLINE&&Qte.default.inc(e,n)===r)return n;return null}function v4r(e,t){if(Qte.default.valid(t))return t;if(e===null)throw new jje.UsageError(`Cannot apply the release strategy "${t}" unless the workspace already has a valid version`);if(!Qte.default.valid(e))throw new jje.UsageError(`Cannot apply the release strategy "${t}" on a non-semver version (${e})`);let r=Qte.default.inc(e,t);if(r===null)throw new jje.UsageError(`Cannot apply the release strategy "${t}" on the specified version (${e})`);return r}function Whl(e,t,{report:r,exact:n}){let a=new Map;for(let o of e.workspaces)for(let l of XE.Manifest.allDependencies)for(let A of o.manifest[l].values()){let f=e.tryWorkspaceByDescriptor(A);if(f===null||!t.has(f))continue;XE.miscUtils.getArrayWithDefault(a,f).push([o,l,A.identHash])}for(let[o,l]of t){let A=o.manifest.version;o.manifest.version=l,Qte.default.prerelease(l)===null?delete o.manifest.raw.stableVersion:o.manifest.raw.stableVersion||(o.manifest.raw.stableVersion=A);let f=o.manifest.name!==null?XE.structUtils.stringifyIdent(o.manifest.name):null;r.reportInfo(XE.MessageName.UNNAMED,`${XE.structUtils.prettyLocator(e.configuration,o.anchoredLocator)}: Bumped to ${l}`),r.reportJson({cwd:sB.npath.fromPortablePath(o.cwd),ident:f,oldVersion:A,newVersion:l});let I=a.get(o);if(!(typeof I>"u"))for(let[C,b,E]of I){let N=C.manifest[b].get(E);if(typeof N>"u")throw new Error("Assertion failed: The dependency should have existed");let B=N.range,F=!1;if(B.startsWith(XE.WorkspaceResolver.protocol)&&(B=B.slice(XE.WorkspaceResolver.protocol.length),F=!0,B===o.relativeCwd))continue;let Q=B.match(khl);if(!Q){r.reportWarning(XE.MessageName.UNNAMED,`Couldn't auto-upgrade range ${B} (in ${XE.structUtils.prettyLocator(e.configuration,C.anchoredLocator)})`);continue}let J=n?`${l}`:`${Q[1]}${l}`;F&&(J=`${XE.WorkspaceResolver.protocol}${J}`);let ae=XE.structUtils.makeDescriptor(N,J);C.manifest[b].set(E,ae)}}}var Ohl=new Map([["%n",{extract:e=>e.length>=1?[e[0],e.slice(1)]:null,generate:(e=0)=>`${e+1}`}]]);function eus(e,{current:t,prerelease:r}){let n=new Qte.default.SemVer(t),a=n.prerelease.slice(),o=[];n.prerelease=[],n.format()!==e&&(a.length=0);let l=!0,A=r.split(/\./g);for(let f of A){let I=Ohl.get(f);if(typeof I>"u")o.push(f),a[0]===f?a.shift():l=!1;else{let C=l?I.extract(a):null;C!==null&&typeof C[0]=="number"?(o.push(I.generate(C[0])),a=C[1]):(o.push(I.generate()),l=!1)}}return n.prerelease&&(n.prerelease=[]),`${e}-${o.join(".")}`}});var nus=H(w4r=>{"use strict";Object.defineProperty(w4r,"__esModule",{value:!0});var Phl=(Wa(),vi(Va)),tus=sl(),B4r=wn(),rus=wn(),c0e=(vl(),vi(ng)),Uxt=Phl.__importStar(qje()),$je=class extends tus.BaseCommand{constructor(){super(...arguments),this.all=c0e.Option.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"}),this.dryRun=c0e.Option.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"}),this.prerelease=c0e.Option.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0}),this.exact=c0e.Option.Boolean("--exact",!1,{description:"Use the exact version of each package, removes any range. Useful for nightly releases where the range might match another version."}),this.recursive=c0e.Option.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"}),this.json=c0e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await B4r.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await rus.Project.find(t,this.context.cwd),a=await B4r.Cache.find(t);if(!n)throw new tus.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=await rus.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,f=await Uxt.resolveVersionFiles(r,{prerelease:A}),I=new Map;if(this.all)I=f;else{let C=this.recursive?n.getRecursiveWorkspaceDependencies():[n];for(let b of C){let E=f.get(b);typeof E<"u"&&I.set(b,E)}}if(I.size===0){let C=f.size>0?" Did you want to add --all?":"";l.reportWarning(B4r.MessageName.UNNAMED,`The current workspace doesn't seem to require a version bump.${C}`);return}Uxt.applyReleases(r,I,{report:l,exact:this.exact}),this.dryRun||(A||(this.all?await Uxt.clearVersionFiles(r):await Uxt.updateVersionFiles(r,[...I.keys()])),l.reportSeparator())});return this.dryRun||o.hasErrors()?o.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};$je.paths=[["version","apply"]];$je.usage=c0e.Command.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` This command will apply the deferred version changes and remove their definitions from the repository. Note that if \`--prerelease\` is set, the given prerelease identifier (by default \`rc.%n\`) will be used on all new versions and the version definitions will be kept as-is. @@ -1423,23 +1423,23 @@ ${fe}`)}else ne.length>1&&!l&&F.reportError(ZH.MessageName.CANT_SUGGEST_RESOLUTI - \`--all\` to apply the version bump on all packages in the repository Note that this command will also update the \`workspace:\` references across all your local workspaces, thus ensuring that they keep referring to the same workspaces even after the version bump. - `,examples:[["Apply the version change to the local workspace","yarn version apply"],["Apply the version change to all the workspaces in the local workspace","yarn version apply --all"]]});y4r.default=e7e});var nus=H(S4r=>{"use strict";Object.defineProperty(S4r,"__esModule",{value:!0});var Sj=(Wa(),vi(Va)),b4r=dl(),JR=mn(),Ej=Io(),QIl=Sj.__importStar(xkt()),Kxt=(Rl(),vi(ng)),E4r=Sj.__importDefault(jC()),oF=Sj.__importStar($je()),t7e=class extends b4r.BaseCommand{constructor(){super(...arguments),this.interactive=Kxt.Option.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){QIl.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>Sj.__importStar(txt())),{ScrollableItems:r}=await Promise.resolve().then(()=>Sj.__importStar(oxt())),{FocusRequest:n}=await Promise.resolve().then(()=>Sj.__importStar(LYr())),{useListInput:a}=await Promise.resolve().then(()=>Sj.__importStar(ixt())),{renderForm:o}=await Promise.resolve().then(()=>Sj.__importStar(cxt())),{Box:l,Text:A}=await Promise.resolve().then(()=>Sj.__importStar(DH())),{default:f,useCallback:I,useState:C}=await Promise.resolve().then(()=>Sj.__importStar(lC())),b=await JR.Configuration.find(this.context.cwd,this.context.plugins),{project:E,workspace:N}=await JR.Project.find(b,this.context.cwd);if(!N)throw new b4r.WorkspaceRequiredError(E.cwd,this.context.cwd);await E.restoreInstallState();let B=await oF.openVersionFile(E);if(B===null||B.releaseRoots.size===0)return 0;if(B.root===null)throw new Kxt.UsageError("This command can only be run on Git repositories");let F=()=>f.createElement(l,{flexDirection:"row",paddingBottom:1},f.createElement(l,{flexDirection:"column",width:60},f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),f.createElement(l,{flexDirection:"column"},f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to save.")),f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to abort.")))),Q=({workspace:ue,active:de,decision:be,setDecision:Se})=>{let De=ue.manifest.raw.stableVersion??ue.manifest.version;if(De===null)throw new Error(`Assertion failed: The version should have been set (${JR.structUtils.prettyLocator(b,ue.anchoredLocator)})`);if(E4r.default.prerelease(De)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${De})`);let k=[oF.Decision.UNDECIDED,oF.Decision.DECLINE,oF.Decision.PATCH,oF.Decision.MINOR,oF.Decision.MAJOR];a(be,k,{active:de,minus:"left",plus:"right",set:Se});let tt=be===oF.Decision.UNDECIDED?f.createElement(A,{color:"yellow"},De):be===oF.Decision.DECLINE?f.createElement(A,{color:"green"},De):f.createElement(A,null,f.createElement(A,{color:"magenta"},De)," \u2192 ",f.createElement(A,{color:"green"},E4r.default.valid(be)?be:E4r.default.inc(De,be)));return f.createElement(l,{flexDirection:"column"},f.createElement(l,null,f.createElement(A,null,JR.structUtils.prettyLocator(b,ue.anchoredLocator)," - ",tt)),f.createElement(l,null,k.map(ze=>{let Le=ze===be;return f.createElement(l,{key:ze,paddingLeft:2},f.createElement(A,null,f.createElement(t,{active:Le})," ",ze))})))},J=ue=>{let de=new Set(B.releaseRoots),be=new Map([...ue].filter(([Se])=>de.has(Se)));for(;;){let Se=oF.getUndecidedDependentWorkspaces({project:B.project,releases:be}),De=!1;if(Se.length>0){for(let[k]of Se)if(!de.has(k)){de.add(k),De=!0;let tt=ue.get(k);typeof tt<"u"&&be.set(k,tt)}}if(!De)break}return{relevantWorkspaces:de,relevantReleases:be}},ae=()=>{let[ue,de]=C(()=>new Map(B.releases)),be=I((Se,De)=>{let k=new Map(ue);De!==oF.Decision.UNDECIDED?k.set(Se,De):k.delete(Se);let{relevantReleases:tt}=J(k);de(tt)},[ue,de]);return[ue,be]},ne=({workspaces:ue,releases:de})=>{let be=[];be.push(`${ue.size} total`);let Se=0,De=0;for(let k of ue){let tt=de.get(k);typeof tt>"u"?De+=1:tt!==oF.Decision.DECLINE&&(Se+=1)}return be.push(`${Se} release${Se===1?"":"s"}`),be.push(`${De} remaining`),f.createElement(A,{color:"yellow"},be.join(", "))},fe=await o(({useSubmit:ue})=>{let[de,be]=ae();ue(de);let{relevantWorkspaces:Se}=J(de),De=new Set([...Se].filter(Le=>!B.releaseRoots.has(Le))),[k,tt]=C(0),ze=I(Le=>{switch(Le){case n.BEFORE:tt(k-1);break;case n.AFTER:tt(k+1);break}},[k,tt]);return f.createElement(l,{flexDirection:"column"},f.createElement(F,null),f.createElement(l,null,f.createElement(A,{wrap:"wrap"},"The following files have been modified in your local checkout.")),f.createElement(l,{flexDirection:"column",marginTop:1,paddingLeft:2},[...B.changedFiles].map(Le=>f.createElement(l,{key:Le},f.createElement(A,null,f.createElement(A,{color:"grey"},Ej.npath.fromPortablePath(B.root)),Ej.npath.sep,Ej.npath.relative(Ej.npath.fromPortablePath(B.root),Ej.npath.fromPortablePath(Le)))))),B.releaseRoots.size>0&&f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),De.size>3?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:B.releaseRoots,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===0,radius:1,size:2,onFocusRequest:ze},[...B.releaseRoots].map(Le=>f.createElement(Q,{key:Le.cwd,workspace:Le,decision:de.get(Le)||oF.Decision.UNDECIDED,setDecision:Je=>be(Le,Je)}))))),De.size>0?f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),f.createElement(l,null,f.createElement(A,null,"(Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),De.size>5?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:De,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===1,radius:2,size:2,onFocusRequest:ze},[...De].map(Le=>f.createElement(Q,{key:Le.cwd,workspace:Le,decision:de.get(Le)||oF.Decision.UNDECIDED,setDecision:Je=>be(Le,Je)}))))):null)},{versionFile:B},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof fe>"u")return 1;B.releases.clear();for(let[ue,de]of fe)B.releases.set(ue,de);await B.saveAll()}async executeStandard(){let t=await JR.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await JR.Project.find(t,this.context.cwd);if(!n)throw new b4r.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await JR.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{let l=await oF.openVersionFile(r);if(l===null||l.releaseRoots.size===0)return;if(l.root===null)throw new Kxt.UsageError("This command can only be run on Git repositories");if(o.reportInfo(JR.MessageName.UNNAMED,`Your PR was started right after ${JR.formatUtils.pretty(t,l.baseHash.slice(0,7),"yellow")} ${JR.formatUtils.pretty(t,l.baseTitle,"magenta")}`),l.changedFiles.size>0){o.reportInfo(JR.MessageName.UNNAMED,"You have changed the following files since then:"),o.reportSeparator();for(let b of l.changedFiles)o.reportInfo(null,`${JR.formatUtils.pretty(t,Ej.npath.fromPortablePath(l.root),"gray")}${Ej.npath.sep}${Ej.npath.relative(Ej.npath.fromPortablePath(l.root),Ej.npath.fromPortablePath(b))}`)}let A=!1,f=!1,I=oF.getUndecidedWorkspaces(l);if(I.size>0){A||o.reportSeparator();for(let b of I)o.reportError(JR.MessageName.UNNAMED,`${JR.structUtils.prettyLocator(t,b.anchoredLocator)} has been modified but doesn't have a release strategy attached`);A=!0}let C=oF.getUndecidedDependentWorkspaces(l);for(let[b,E]of C)f||o.reportSeparator(),o.reportError(JR.MessageName.UNNAMED,`${JR.structUtils.prettyLocator(t,b.anchoredLocator)} doesn't have a release strategy attached, but depends on ${JR.structUtils.prettyWorkspace(t,E)} which is planned for release.`),f=!0;(A||f)&&(o.reportSeparator(),o.reportInfo(JR.MessageName.UNNAMED,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),o.reportInfo(JR.MessageName.UNNAMED,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};t7e.paths=[["version","check"]];t7e.usage=Kxt.Command.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});S4r.default=t7e});var aus=H(B4r=>{"use strict";Object.defineProperty(B4r,"__esModule",{value:!0});var ous=(Wa(),vi(Va)),ius=dl(),sus=mn(),u0e=(Rl(),vi(ng)),v4r=ous.__importDefault(jC()),l0e=ous.__importStar($je()),r7e=class extends ius.BaseCommand{constructor(){super(...arguments),this.deferred=u0e.Option.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"}),this.immediate=u0e.Option.Boolean("-i,--immediate",{description:"Bump the version immediately"}),this.strategy=u0e.Option.String()}async execute(){let t=await sus.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await sus.Project.find(t,this.context.cwd);if(!n)throw new ius.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=t.get("preferDeferredVersions");this.deferred&&(a=!0),this.immediate&&(a=!1);let o=v4r.default.valid(this.strategy),l=this.strategy===l0e.Decision.DECLINE,A;if(o)if(n.manifest.version!==null){let I=l0e.suggestStrategy(n.manifest.version,this.strategy);I!==null?A=I:A=this.strategy}else A=this.strategy;else{let I=n.manifest.version;if(!l){if(I===null)throw new u0e.UsageError("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof I!="string"||!v4r.default.valid(I))throw new u0e.UsageError(`Can't bump the version (${I}) if it's not valid semver`)}A=l0e.validateReleaseDecision(this.strategy)}if(!a){let C=(await l0e.resolveVersionFiles(r)).get(n);if(typeof C<"u"&&A!==l0e.Decision.DECLINE){let b=l0e.applyStrategy(n.manifest.version,A);if(v4r.default.lt(b,C))throw new u0e.UsageError(`Can't bump the version to one that would be lower than the current deferred one (${C})`)}}let f=await l0e.openVersionFile(r,{allowEmpty:!0});return f.releases.set(n,A),await f.saveAll(),a?0:await this.cli.run(["version","apply"])}};r7e.paths=[["version"]];r7e.usage=u0e.Command.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});B4r.default=r7e});var Aus=H(rJ=>{"use strict";Object.defineProperty(rJ,"__esModule",{value:!0});rJ.versionUtils=rJ.VersionCommand=rJ.VersionCheckCommand=rJ.VersionApplyCommand=void 0;var jxt=(Wa(),vi(Va)),cus=mn(),lus=jxt.__importDefault(rus());rJ.VersionApplyCommand=lus.default;var uus=jxt.__importDefault(nus());rJ.VersionCheckCommand=uus.default;var gus=jxt.__importDefault(aus());rJ.VersionCommand=gus.default;var XIl=jxt.__importStar($je());rJ.versionUtils=XIl;var JIl={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:cus.SettingsType.ABSOLUTE_PATH,default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:cus.SettingsType.BOOLEAN,default:!1}},commands:[lus.default,uus.default,gus.default]};rJ.default=JIl});var dus=H(zxt=>{"use strict";Object.defineProperty(zxt,"__esModule",{value:!0});zxt.CATALOG_DESCRIPTOR_PREFIX=void 0;zxt.CATALOG_DESCRIPTOR_PREFIX="catalog:"});var Ius=H(WH=>{"use strict";Object.defineProperty(WH,"__esModule",{value:!0});WH.resolveDescriptorFromCatalog=WH.getCatalogEntryName=WH.getCatalogName=WH.isCatalogReference=void 0;var g0e=mn(),fus=dus(),UIl=e=>e.startsWith(fus.CATALOG_DESCRIPTOR_PREFIX);WH.isCatalogReference=UIl;var KIl=e=>e.range.slice(fus.CATALOG_DESCRIPTOR_PREFIX.length)||null;WH.getCatalogName=KIl;var pus=e=>e===null?"default catalog":`catalog "${e}"`,jIl=e=>e.scope?`@${e.scope}/${e.name}`:e.name;WH.getCatalogEntryName=jIl;var zIl=(e,t,r,n)=>{let a=(0,WH.getCatalogName)(t),o;if(a===null)o=e.configuration.get("catalog");else try{let C=e.configuration.get("catalogs");C&&(o=C.get(a))}catch{o=void 0}if(!o||o.size===0)throw new g0e.ReportError(g0e.MessageName.RESOLUTION_FAILED,`${g0e.structUtils.prettyDescriptor(e.configuration,t)}: ${pus(a)} not found or empty`);let l=(0,WH.getCatalogEntryName)(t),A=o.get(l);if(!A)throw new g0e.ReportError(g0e.MessageName.RESOLUTION_FAILED,`${g0e.structUtils.prettyDescriptor(e.configuration,t)}: entry not found in ${pus(a)}`);let f=e.configuration.normalizeDependency(g0e.structUtils.makeDescriptor(t,A));return r.supportsDescriptor(f,n)?r.bindDescriptor(f,e.topLevelWorkspace.anchoredLocator,n):f};WH.resolveDescriptorFromCatalog=zIl});var hus=H(w4r=>{"use strict";Object.defineProperty(w4r,"__esModule",{value:!0});var OH=mn(),qxt=Ius(),qIl={configuration:{catalog:{description:"The default catalog of packages",type:OH.SettingsType.MAP,valueDefinition:{description:"The catalog of packages",type:OH.SettingsType.STRING}},catalogs:{description:"Named catalogs of packages",type:OH.SettingsType.MAP,valueDefinition:{description:"A named catalog",type:OH.SettingsType.MAP,valueDefinition:{description:"Package version in the catalog",type:OH.SettingsType.STRING}}}},hooks:{beforeWorkspacePacking:(e,t)=>{let r=e.project,n=r.configuration.makeResolver(),a={project:r,resolver:n,report:new OH.ThrowReport};for(let o of OH.Manifest.allDependencies){let l=t[o];if(l)for(let[A,f]of Object.entries(l)){if(typeof f!="string"||!(0,qxt.isCatalogReference)(f))continue;let I=OH.structUtils.parseIdent(A),C=OH.structUtils.makeDescriptor(I,f),b=(0,qxt.resolveDescriptorFromCatalog)(r,C,n,a),{protocol:E,source:N,params:B,selector:F}=OH.structUtils.parseRange(OH.structUtils.convertToManifestRange(b.range));E===e.project.configuration.get("defaultProtocol")&&(E=null),l[A]=OH.structUtils.makeRange({protocol:E,source:N,params:B,selector:F})}}},reduceDependency:async(e,t,r,n,{resolver:a,resolveOptions:o})=>(0,qxt.isCatalogReference)(e.range)?(0,qxt.resolveDescriptorFromCatalog)(t,e,a,o):e}};w4r.default=qIl});var mus=H($xt=>{"use strict";Object.defineProperty($xt,"__esModule",{value:!0});$xt.packageExtensions=void 0;var Pl={optional:!0};$xt.packageExtensions=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:Pl,zenObservable:Pl}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:Pl,zenObservable:Pl}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{"supports-color":Pl}}],["got@<11",{dependencies:{"@types/responselike":"^1.0.0","@types/keyv":"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{"@types/keyv":"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{"vscode-jsonrpc":"^5.0.1","vscode-languageserver-protocol":"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{"postcss-html":Pl,"postcss-jsx":Pl,"postcss-less":Pl,"postcss-markdown":Pl,"postcss-scss":Pl}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{"tiny-warning":"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:Pl}}],["snowpack@>=3.3.0",{dependencies:{"node-gyp":"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:Pl}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@<=0.5.2",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:Pl,"vue-template-compiler":Pl}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:Pl,"utf-8-validate":Pl}}],["react-portal@<4.2.2",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{"babel-polyfill":"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{"cross-spawn":"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{"prop-types":"^15.7.2"}}],["@rebass/forms@*",{dependencies:{"@styled-system/should-forward-prop":"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Pl,"vuetify-loader":Pl}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Pl}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":Pl}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":Pl}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:Pl}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:Pl,tinyliquid:Pl,"liquid-node":Pl,jade:Pl,"then-jade":Pl,dust:Pl,"dustjs-helpers":Pl,"dustjs-linkedin":Pl,swig:Pl,"swig-templates":Pl,"razor-tmpl":Pl,atpl:Pl,liquor:Pl,twig:Pl,ejs:Pl,eco:Pl,jazz:Pl,jqtpl:Pl,hamljs:Pl,hamlet:Pl,whiskers:Pl,"haml-coffee":Pl,"hogan.js":Pl,templayed:Pl,handlebars:Pl,underscore:Pl,lodash:Pl,pug:Pl,"then-pug":Pl,qejs:Pl,walrus:Pl,mustache:Pl,just:Pl,ect:Pl,mote:Pl,toffee:Pl,dot:Pl,"bracket-template":Pl,ractive:Pl,nunjucks:Pl,htmling:Pl,"babel-core":Pl,plates:Pl,"react-dom":Pl,react:Pl,"arc-templates":Pl,vash:Pl,slm:Pl,marko:Pl,teacup:Pl,"coffee-script":Pl,squirrelly:Pl,twing:Pl}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":Pl}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":Pl,vue:Pl}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:Pl}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:Pl}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(e=>[e,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":Pl,"webpack-command":Pl}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":Pl}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":Pl}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:Pl,jimp:Pl}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":Pl,"eslint-import-resolver-typescript":Pl,"eslint-import-resolver-webpack":Pl,"@typescript-eslint/parser":Pl}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":Pl}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":Pl}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x <10.0.2",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.7"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:Pl}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:Pl}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{"vue-template-compiler":"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["parcel@*",{peerDependenciesMeta:{"@parcel/core":Pl}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@<5.0.0",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:Pl}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:Pl}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:Pl}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":Pl}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}],["vite-plugin-vuetify@<=1.0.2",{peerDependencies:{vue:"^3.0.0"}}],["webpack-plugin-vuetify@<=2.0.1",{peerDependencies:{vue:"^3.2.6"}}],["eslint-import-resolver-vite@<2.0.1",{dependencies:{debug:"^4.3.4",resolve:"^1.22.8"}}],["notistack@^3.0.0",{dependencies:{csstype:"^3.0.10"}}],["@fastify/type-provider-typebox@^5.0.0",{peerDependencies:{fastify:"^5.0.0"}}],["@fastify/type-provider-typebox@^4.0.0",{peerDependencies:{fastify:"^4.0.0"}}]]});var Cus=H(eGt=>{"use strict";Object.defineProperty(eGt,"__esModule",{value:!0});eGt.packageExtensions=void 0;var $Il=mus();Object.defineProperty(eGt,"packageExtensions",{enumerable:!0,get:function(){return $Il.packageExtensions}})});var _us=H(R4r=>{"use strict";Object.defineProperty(R4r,"__esModule",{value:!0});R4r.getPatch=ehl;var T4r;function ehl(){return typeof T4r>"u"&&(T4r=Et("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),T4r}});var yus=H(D4r=>{"use strict";Object.defineProperty(D4r,"__esModule",{value:!0});D4r.getPatch=thl;var N4r;function thl(){return typeof N4r>"u"&&(N4r=Et("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),N4r}});var bus=H(x4r=>{"use strict";Object.defineProperty(x4r,"__esModule",{value:!0});x4r.getPatch=rhl;var k4r;function rhl(){return typeof k4r>"u"&&(k4r=Et("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),k4r}});var Sus=H(G4r=>{"use strict";Object.defineProperty(G4r,"__esModule",{value:!0});var Qte=mn(),nhl=Cus(),ihl=_us(),shl=yus(),ohl=bus(),Eus=new Map([[Qte.structUtils.makeIdent(null,"fsevents").identHash,ihl.getPatch],[Qte.structUtils.makeIdent(null,"resolve").identHash,shl.getPatch],[Qte.structUtils.makeIdent(null,"typescript").identHash,ohl.getPatch]]),ahl={hooks:{registerPackageExtensions:async(e,t)=>{for(let[r,n]of nhl.packageExtensions)t(Qte.structUtils.parseDescriptor(r,!0),n)},getBuiltinPatch:async(e,t)=>{let r="compat/";if(!t.startsWith(r))return;let n=Qte.structUtils.parseIdent(t.slice(r.length)),a=Eus.get(n.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(e,t,r,n)=>typeof Eus.get(e.identHash)>"u"?e:Qte.structUtils.makeDescriptor(e,Qte.structUtils.makeRange({protocol:"patch:",source:Qte.structUtils.stringifyDescriptor(e),selector:`optional!builtin`,params:null}))}};G4r.default=ahl});var n7e=H(A0e=>{"use strict";Object.defineProperty(A0e,"__esModule",{value:!0});A0e.Index=void 0;A0e.normalizePath=Ahl;A0e.applyEngineReport=phl;A0e.convertReportToRoot=fhl;var km=mn(),tGt=WO(),F4r=class{constructor(t){this.indexedFields=t,this.items=[],this.indexes={},this.clear()}clear(){this.items=[];for(let t of this.indexedFields)this.indexes[t]=new Map}insert(t){this.items.push(t);for(let r of this.indexedFields){let n=Object.hasOwn(t,r)?t[r]:void 0;if(typeof n>"u")continue;km.miscUtils.getArrayWithDefault(this.indexes[r],n).push(t)}return t}find(t){if(typeof t>"u")return this.items;let r=Object.entries(t);if(r.length===0)return this.items;let n=[],a;for(let[l,A]of r){let f=l,I=Object.hasOwn(this.indexes,f)?this.indexes[f]:void 0;if(typeof I>"u"){n.push([f,A]);continue}let C=new Set(I.get(A)??[]);if(C.size===0)return[];if(typeof a>"u")a=C;else for(let b of a)C.has(b)||a.delete(b);if(a.size===0)break}let o=[...a??[]];return n.length>0&&(o=o.filter(l=>{for(let[A,f]of n)if(!(typeof f<"u"?Object.hasOwn(l,A)&&l[A]===f:Object.hasOwn(l,A)===!1))return!1;return!0})),o}};A0e.Index=F4r;var chl=/^[0-9]+$/,lhl=/^[a-zA-Z0-9_]+$/,uhl=new Set(["scripts",...km.Manifest.allDependencies]);function ghl(e,t){return t===1&&uhl.has(e[0])}function Ahl(e){let t=Array.isArray(e)?e:(0,tGt.toPath)(e);return t.map((n,a)=>chl.test(n)?`[${n}]`:lhl.test(n)&&!ghl(t,a)?`.${n}`:`[${JSON.stringify(n)}]`).join("").replace(/^\./,"")}function dhl(e,t){let r=[];if(t.methodName!==null&&r.push(km.formatUtils.pretty(e,t.methodName,km.formatUtils.Type.CODE)),t.file!==null){let n=[];n.push(km.formatUtils.pretty(e,t.file,km.formatUtils.Type.PATH)),t.line!==null&&(n.push(km.formatUtils.pretty(e,t.line,km.formatUtils.Type.NUMBER)),t.column!==null&&n.push(km.formatUtils.pretty(e,t.column,km.formatUtils.Type.NUMBER))),r.push(`(${n.join(km.formatUtils.pretty(e,":","grey"))})`)}return r.join(" ")}function phl(e,{manifestUpdates:t,reportedErrors:r},{fix:n}={}){let a=new Map,o=new Map,l=[...r.keys()].map(A=>[A,new Map]);for(let[A,f]of[...l,...t]){let I=r.get(A)?.map(N=>({text:N,fixable:!1}))??[],C=!1,b=e.getWorkspaceByCwd(A),E=b.manifest.exportTo({});for(let[N,B]of f){if(B.size>1){let F=[...B].map(([Q,J])=>{let ae=km.formatUtils.pretty(e.configuration,Q,km.formatUtils.Type.INSPECT),ne=J.size>0?dhl(e.configuration,J.values().next().value):null;return ne!==null?` + `,examples:[["Apply the version change to the local workspace","yarn version apply"],["Apply the version change to all the workspaces in the local workspace","yarn version apply --all"]]});w4r.default=$je});var ius=H(N4r=>{"use strict";Object.defineProperty(N4r,"__esModule",{value:!0});var vj=(Wa(),vi(Va)),T4r=sl(),UR=wn(),Sj=No(),Mhl=vj.__importStar(xkt()),Kxt=(vl(),vi(ng)),R4r=vj.__importDefault(zC()),aF=vj.__importStar(qje()),e7e=class extends T4r.BaseCommand{constructor(){super(...arguments),this.interactive=Kxt.Option.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){Mhl.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>vj.__importStar(txt())),{ScrollableItems:r}=await Promise.resolve().then(()=>vj.__importStar(oxt())),{FocusRequest:n}=await Promise.resolve().then(()=>vj.__importStar(HYr())),{useListInput:a}=await Promise.resolve().then(()=>vj.__importStar(ixt())),{renderForm:o}=await Promise.resolve().then(()=>vj.__importStar(cxt())),{Box:l,Text:A}=await Promise.resolve().then(()=>vj.__importStar(kH())),{default:f,useCallback:I,useState:C}=await Promise.resolve().then(()=>vj.__importStar(lC())),b=await UR.Configuration.find(this.context.cwd,this.context.plugins),{project:E,workspace:N}=await UR.Project.find(b,this.context.cwd);if(!N)throw new T4r.WorkspaceRequiredError(E.cwd,this.context.cwd);await E.restoreInstallState();let B=await aF.openVersionFile(E);if(B===null||B.releaseRoots.size===0)return 0;if(B.root===null)throw new Kxt.UsageError("This command can only be run on Git repositories");let F=()=>f.createElement(l,{flexDirection:"row",paddingBottom:1},f.createElement(l,{flexDirection:"column",width:60},f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),f.createElement(l,{flexDirection:"column"},f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to save.")),f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to abort.")))),Q=({workspace:ue,active:de,decision:be,setDecision:Se})=>{let De=ue.manifest.raw.stableVersion??ue.manifest.version;if(De===null)throw new Error(`Assertion failed: The version should have been set (${UR.structUtils.prettyLocator(b,ue.anchoredLocator)})`);if(R4r.default.prerelease(De)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${De})`);let k=[aF.Decision.UNDECIDED,aF.Decision.DECLINE,aF.Decision.PATCH,aF.Decision.MINOR,aF.Decision.MAJOR];a(be,k,{active:de,minus:"left",plus:"right",set:Se});let tt=be===aF.Decision.UNDECIDED?f.createElement(A,{color:"yellow"},De):be===aF.Decision.DECLINE?f.createElement(A,{color:"green"},De):f.createElement(A,null,f.createElement(A,{color:"magenta"},De)," \u2192 ",f.createElement(A,{color:"green"},R4r.default.valid(be)?be:R4r.default.inc(De,be)));return f.createElement(l,{flexDirection:"column"},f.createElement(l,null,f.createElement(A,null,UR.structUtils.prettyLocator(b,ue.anchoredLocator)," - ",tt)),f.createElement(l,null,k.map(ze=>{let Le=ze===be;return f.createElement(l,{key:ze,paddingLeft:2},f.createElement(A,null,f.createElement(t,{active:Le})," ",ze))})))},J=ue=>{let de=new Set(B.releaseRoots),be=new Map([...ue].filter(([Se])=>de.has(Se)));for(;;){let Se=aF.getUndecidedDependentWorkspaces({project:B.project,releases:be}),De=!1;if(Se.length>0){for(let[k]of Se)if(!de.has(k)){de.add(k),De=!0;let tt=ue.get(k);typeof tt<"u"&&be.set(k,tt)}}if(!De)break}return{relevantWorkspaces:de,relevantReleases:be}},ae=()=>{let[ue,de]=C(()=>new Map(B.releases)),be=I((Se,De)=>{let k=new Map(ue);De!==aF.Decision.UNDECIDED?k.set(Se,De):k.delete(Se);let{relevantReleases:tt}=J(k);de(tt)},[ue,de]);return[ue,be]},ne=({workspaces:ue,releases:de})=>{let be=[];be.push(`${ue.size} total`);let Se=0,De=0;for(let k of ue){let tt=de.get(k);typeof tt>"u"?De+=1:tt!==aF.Decision.DECLINE&&(Se+=1)}return be.push(`${Se} release${Se===1?"":"s"}`),be.push(`${De} remaining`),f.createElement(A,{color:"yellow"},be.join(", "))},fe=await o(({useSubmit:ue})=>{let[de,be]=ae();ue(de);let{relevantWorkspaces:Se}=J(de),De=new Set([...Se].filter(Le=>!B.releaseRoots.has(Le))),[k,tt]=C(0),ze=I(Le=>{switch(Le){case n.BEFORE:tt(k-1);break;case n.AFTER:tt(k+1);break}},[k,tt]);return f.createElement(l,{flexDirection:"column"},f.createElement(F,null),f.createElement(l,null,f.createElement(A,{wrap:"wrap"},"The following files have been modified in your local checkout.")),f.createElement(l,{flexDirection:"column",marginTop:1,paddingLeft:2},[...B.changedFiles].map(Le=>f.createElement(l,{key:Le},f.createElement(A,null,f.createElement(A,{color:"grey"},Sj.npath.fromPortablePath(B.root)),Sj.npath.sep,Sj.npath.relative(Sj.npath.fromPortablePath(B.root),Sj.npath.fromPortablePath(Le)))))),B.releaseRoots.size>0&&f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),De.size>3?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:B.releaseRoots,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===0,radius:1,size:2,onFocusRequest:ze},[...B.releaseRoots].map(Le=>f.createElement(Q,{key:Le.cwd,workspace:Le,decision:de.get(Le)||aF.Decision.UNDECIDED,setDecision:Je=>be(Le,Je)}))))),De.size>0?f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),f.createElement(l,null,f.createElement(A,null,"(Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),De.size>5?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:De,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===1,radius:2,size:2,onFocusRequest:ze},[...De].map(Le=>f.createElement(Q,{key:Le.cwd,workspace:Le,decision:de.get(Le)||aF.Decision.UNDECIDED,setDecision:Je=>be(Le,Je)}))))):null)},{versionFile:B},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof fe>"u")return 1;B.releases.clear();for(let[ue,de]of fe)B.releases.set(ue,de);await B.saveAll()}async executeStandard(){let t=await UR.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await UR.Project.find(t,this.context.cwd);if(!n)throw new T4r.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await UR.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{let l=await aF.openVersionFile(r);if(l===null||l.releaseRoots.size===0)return;if(l.root===null)throw new Kxt.UsageError("This command can only be run on Git repositories");if(o.reportInfo(UR.MessageName.UNNAMED,`Your PR was started right after ${UR.formatUtils.pretty(t,l.baseHash.slice(0,7),"yellow")} ${UR.formatUtils.pretty(t,l.baseTitle,"magenta")}`),l.changedFiles.size>0){o.reportInfo(UR.MessageName.UNNAMED,"You have changed the following files since then:"),o.reportSeparator();for(let b of l.changedFiles)o.reportInfo(null,`${UR.formatUtils.pretty(t,Sj.npath.fromPortablePath(l.root),"gray")}${Sj.npath.sep}${Sj.npath.relative(Sj.npath.fromPortablePath(l.root),Sj.npath.fromPortablePath(b))}`)}let A=!1,f=!1,I=aF.getUndecidedWorkspaces(l);if(I.size>0){A||o.reportSeparator();for(let b of I)o.reportError(UR.MessageName.UNNAMED,`${UR.structUtils.prettyLocator(t,b.anchoredLocator)} has been modified but doesn't have a release strategy attached`);A=!0}let C=aF.getUndecidedDependentWorkspaces(l);for(let[b,E]of C)f||o.reportSeparator(),o.reportError(UR.MessageName.UNNAMED,`${UR.structUtils.prettyLocator(t,b.anchoredLocator)} doesn't have a release strategy attached, but depends on ${UR.structUtils.prettyWorkspace(t,E)} which is planned for release.`),f=!0;(A||f)&&(o.reportSeparator(),o.reportInfo(UR.MessageName.UNNAMED,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),o.reportInfo(UR.MessageName.UNNAMED,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};e7e.paths=[["version","check"]];e7e.usage=Kxt.Command.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});N4r.default=e7e});var cus=H(k4r=>{"use strict";Object.defineProperty(k4r,"__esModule",{value:!0});var aus=(Wa(),vi(Va)),sus=sl(),ous=wn(),u0e=(vl(),vi(ng)),D4r=aus.__importDefault(zC()),l0e=aus.__importStar(qje()),t7e=class extends sus.BaseCommand{constructor(){super(...arguments),this.deferred=u0e.Option.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"}),this.immediate=u0e.Option.Boolean("-i,--immediate",{description:"Bump the version immediately"}),this.strategy=u0e.Option.String()}async execute(){let t=await ous.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await ous.Project.find(t,this.context.cwd);if(!n)throw new sus.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=t.get("preferDeferredVersions");this.deferred&&(a=!0),this.immediate&&(a=!1);let o=D4r.default.valid(this.strategy),l=this.strategy===l0e.Decision.DECLINE,A;if(o)if(n.manifest.version!==null){let I=l0e.suggestStrategy(n.manifest.version,this.strategy);I!==null?A=I:A=this.strategy}else A=this.strategy;else{let I=n.manifest.version;if(!l){if(I===null)throw new u0e.UsageError("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof I!="string"||!D4r.default.valid(I))throw new u0e.UsageError(`Can't bump the version (${I}) if it's not valid semver`)}A=l0e.validateReleaseDecision(this.strategy)}if(!a){let C=(await l0e.resolveVersionFiles(r)).get(n);if(typeof C<"u"&&A!==l0e.Decision.DECLINE){let b=l0e.applyStrategy(n.manifest.version,A);if(D4r.default.lt(b,C))throw new u0e.UsageError(`Can't bump the version to one that would be lower than the current deferred one (${C})`)}}let f=await l0e.openVersionFile(r,{allowEmpty:!0});return f.releases.set(n,A),await f.saveAll(),a?0:await this.cli.run(["version","apply"])}};t7e.paths=[["version"]];t7e.usage=u0e.Command.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});k4r.default=t7e});var dus=H(nJ=>{"use strict";Object.defineProperty(nJ,"__esModule",{value:!0});nJ.versionUtils=nJ.VersionCommand=nJ.VersionCheckCommand=nJ.VersionApplyCommand=void 0;var jxt=(Wa(),vi(Va)),lus=wn(),uus=jxt.__importDefault(nus());nJ.VersionApplyCommand=uus.default;var gus=jxt.__importDefault(ius());nJ.VersionCheckCommand=gus.default;var Aus=jxt.__importDefault(cus());nJ.VersionCommand=Aus.default;var Hhl=jxt.__importStar(qje());nJ.versionUtils=Hhl;var Yhl={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:lus.SettingsType.ABSOLUTE_PATH,default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:lus.SettingsType.BOOLEAN,default:!1}},commands:[uus.default,gus.default,Aus.default]};nJ.default=Yhl});var pus=H(zxt=>{"use strict";Object.defineProperty(zxt,"__esModule",{value:!0});zxt.CATALOG_DESCRIPTOR_PREFIX=void 0;zxt.CATALOG_DESCRIPTOR_PREFIX="catalog:"});var hus=H(OH=>{"use strict";Object.defineProperty(OH,"__esModule",{value:!0});OH.resolveDescriptorFromCatalog=OH.getCatalogEntryName=OH.getCatalogName=OH.isCatalogReference=void 0;var g0e=wn(),Ius=pus(),Qhl=e=>e.startsWith(Ius.CATALOG_DESCRIPTOR_PREFIX);OH.isCatalogReference=Qhl;var Xhl=e=>e.range.slice(Ius.CATALOG_DESCRIPTOR_PREFIX.length)||null;OH.getCatalogName=Xhl;var fus=e=>e===null?"default catalog":`catalog "${e}"`,Jhl=e=>e.scope?`@${e.scope}/${e.name}`:e.name;OH.getCatalogEntryName=Jhl;var Uhl=(e,t,r,n)=>{let a=(0,OH.getCatalogName)(t),o;if(a===null)o=e.configuration.get("catalog");else try{let C=e.configuration.get("catalogs");C&&(o=C.get(a))}catch{o=void 0}if(!o||o.size===0)throw new g0e.ReportError(g0e.MessageName.RESOLUTION_FAILED,`${g0e.structUtils.prettyDescriptor(e.configuration,t)}: ${fus(a)} not found or empty`);let l=(0,OH.getCatalogEntryName)(t),A=o.get(l);if(!A)throw new g0e.ReportError(g0e.MessageName.RESOLUTION_FAILED,`${g0e.structUtils.prettyDescriptor(e.configuration,t)}: entry not found in ${fus(a)}`);let f=e.configuration.normalizeDependency(g0e.structUtils.makeDescriptor(t,A));return r.supportsDescriptor(f,n)?r.bindDescriptor(f,e.topLevelWorkspace.anchoredLocator,n):f};OH.resolveDescriptorFromCatalog=Uhl});var mus=H(x4r=>{"use strict";Object.defineProperty(x4r,"__esModule",{value:!0});var PH=wn(),qxt=hus(),Khl={configuration:{catalog:{description:"The default catalog of packages",type:PH.SettingsType.MAP,valueDefinition:{description:"The catalog of packages",type:PH.SettingsType.STRING}},catalogs:{description:"Named catalogs of packages",type:PH.SettingsType.MAP,valueDefinition:{description:"A named catalog",type:PH.SettingsType.MAP,valueDefinition:{description:"Package version in the catalog",type:PH.SettingsType.STRING}}}},hooks:{beforeWorkspacePacking:(e,t)=>{let r=e.project,n=r.configuration.makeResolver(),a={project:r,resolver:n,report:new PH.ThrowReport};for(let o of PH.Manifest.allDependencies){let l=t[o];if(l)for(let[A,f]of Object.entries(l)){if(typeof f!="string"||!(0,qxt.isCatalogReference)(f))continue;let I=PH.structUtils.parseIdent(A),C=PH.structUtils.makeDescriptor(I,f),b=(0,qxt.resolveDescriptorFromCatalog)(r,C,n,a),{protocol:E,source:N,params:B,selector:F}=PH.structUtils.parseRange(PH.structUtils.convertToManifestRange(b.range));E===e.project.configuration.get("defaultProtocol")&&(E=null),l[A]=PH.structUtils.makeRange({protocol:E,source:N,params:B,selector:F})}}},reduceDependency:async(e,t,r,n,{resolver:a,resolveOptions:o})=>(0,qxt.isCatalogReference)(e.range)?(0,qxt.resolveDescriptorFromCatalog)(t,e,a,o):e}};x4r.default=Khl});var Cus=H($xt=>{"use strict";Object.defineProperty($xt,"__esModule",{value:!0});$xt.packageExtensions=void 0;var Pl={optional:!0};$xt.packageExtensions=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:Pl,zenObservable:Pl}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:Pl,zenObservable:Pl}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{"supports-color":Pl}}],["got@<11",{dependencies:{"@types/responselike":"^1.0.0","@types/keyv":"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{"@types/keyv":"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{"vscode-jsonrpc":"^5.0.1","vscode-languageserver-protocol":"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{"postcss-html":Pl,"postcss-jsx":Pl,"postcss-less":Pl,"postcss-markdown":Pl,"postcss-scss":Pl}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{"tiny-warning":"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:Pl}}],["snowpack@>=3.3.0",{dependencies:{"node-gyp":"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:Pl}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@<=0.5.2",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:Pl,"vue-template-compiler":Pl}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:Pl,"utf-8-validate":Pl}}],["react-portal@<4.2.2",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{"babel-polyfill":"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{"cross-spawn":"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{"prop-types":"^15.7.2"}}],["@rebass/forms@*",{dependencies:{"@styled-system/should-forward-prop":"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Pl,"vuetify-loader":Pl}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Pl}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":Pl}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":Pl}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:Pl}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:Pl,tinyliquid:Pl,"liquid-node":Pl,jade:Pl,"then-jade":Pl,dust:Pl,"dustjs-helpers":Pl,"dustjs-linkedin":Pl,swig:Pl,"swig-templates":Pl,"razor-tmpl":Pl,atpl:Pl,liquor:Pl,twig:Pl,ejs:Pl,eco:Pl,jazz:Pl,jqtpl:Pl,hamljs:Pl,hamlet:Pl,whiskers:Pl,"haml-coffee":Pl,"hogan.js":Pl,templayed:Pl,handlebars:Pl,underscore:Pl,lodash:Pl,pug:Pl,"then-pug":Pl,qejs:Pl,walrus:Pl,mustache:Pl,just:Pl,ect:Pl,mote:Pl,toffee:Pl,dot:Pl,"bracket-template":Pl,ractive:Pl,nunjucks:Pl,htmling:Pl,"babel-core":Pl,plates:Pl,"react-dom":Pl,react:Pl,"arc-templates":Pl,vash:Pl,slm:Pl,marko:Pl,teacup:Pl,"coffee-script":Pl,squirrelly:Pl,twing:Pl}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":Pl}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":Pl,vue:Pl}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:Pl}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:Pl}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(e=>[e,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":Pl,"webpack-command":Pl}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":Pl}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":Pl}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:Pl,jimp:Pl}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":Pl,"eslint-import-resolver-typescript":Pl,"eslint-import-resolver-webpack":Pl,"@typescript-eslint/parser":Pl}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":Pl}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":Pl}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x <10.0.2",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.7"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:Pl}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:Pl}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{"vue-template-compiler":"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["parcel@*",{peerDependenciesMeta:{"@parcel/core":Pl}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@<5.0.0",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:Pl}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:Pl}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:Pl}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":Pl}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}],["vite-plugin-vuetify@<=1.0.2",{peerDependencies:{vue:"^3.0.0"}}],["webpack-plugin-vuetify@<=2.0.1",{peerDependencies:{vue:"^3.2.6"}}],["eslint-import-resolver-vite@<2.0.1",{dependencies:{debug:"^4.3.4",resolve:"^1.22.8"}}],["notistack@^3.0.0",{dependencies:{csstype:"^3.0.10"}}],["@fastify/type-provider-typebox@^5.0.0",{peerDependencies:{fastify:"^5.0.0"}}],["@fastify/type-provider-typebox@^4.0.0",{peerDependencies:{fastify:"^4.0.0"}}]]});var _us=H(eGt=>{"use strict";Object.defineProperty(eGt,"__esModule",{value:!0});eGt.packageExtensions=void 0;var jhl=Cus();Object.defineProperty(eGt,"packageExtensions",{enumerable:!0,get:function(){return jhl.packageExtensions}})});var yus=H(F4r=>{"use strict";Object.defineProperty(F4r,"__esModule",{value:!0});F4r.getPatch=zhl;var G4r;function zhl(){return typeof G4r>"u"&&(G4r=Et("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),G4r}});var bus=H(L4r=>{"use strict";Object.defineProperty(L4r,"__esModule",{value:!0});L4r.getPatch=qhl;var Z4r;function qhl(){return typeof Z4r>"u"&&(Z4r=Et("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),Z4r}});var Eus=H(W4r=>{"use strict";Object.defineProperty(W4r,"__esModule",{value:!0});W4r.getPatch=$hl;var V4r;function $hl(){return typeof V4r>"u"&&(V4r=Et("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),V4r}});var vus=H(O4r=>{"use strict";Object.defineProperty(O4r,"__esModule",{value:!0});var Xte=wn(),eml=_us(),tml=yus(),rml=bus(),nml=Eus(),Sus=new Map([[Xte.structUtils.makeIdent(null,"fsevents").identHash,tml.getPatch],[Xte.structUtils.makeIdent(null,"resolve").identHash,rml.getPatch],[Xte.structUtils.makeIdent(null,"typescript").identHash,nml.getPatch]]),iml={hooks:{registerPackageExtensions:async(e,t)=>{for(let[r,n]of eml.packageExtensions)t(Xte.structUtils.parseDescriptor(r,!0),n)},getBuiltinPatch:async(e,t)=>{let r="compat/";if(!t.startsWith(r))return;let n=Xte.structUtils.parseIdent(t.slice(r.length)),a=Sus.get(n.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(e,t,r,n)=>typeof Sus.get(e.identHash)>"u"?e:Xte.structUtils.makeDescriptor(e,Xte.structUtils.makeRange({protocol:"patch:",source:Xte.structUtils.stringifyDescriptor(e),selector:`optional!builtin`,params:null}))}};O4r.default=iml});var r7e=H(A0e=>{"use strict";Object.defineProperty(A0e,"__esModule",{value:!0});A0e.Index=void 0;A0e.normalizePath=lml;A0e.applyEngineReport=gml;A0e.convertReportToRoot=Aml;var km=wn(),tGt=PO(),P4r=class{constructor(t){this.indexedFields=t,this.items=[],this.indexes={},this.clear()}clear(){this.items=[];for(let t of this.indexedFields)this.indexes[t]=new Map}insert(t){this.items.push(t);for(let r of this.indexedFields){let n=Object.hasOwn(t,r)?t[r]:void 0;if(typeof n>"u")continue;km.miscUtils.getArrayWithDefault(this.indexes[r],n).push(t)}return t}find(t){if(typeof t>"u")return this.items;let r=Object.entries(t);if(r.length===0)return this.items;let n=[],a;for(let[l,A]of r){let f=l,I=Object.hasOwn(this.indexes,f)?this.indexes[f]:void 0;if(typeof I>"u"){n.push([f,A]);continue}let C=new Set(I.get(A)??[]);if(C.size===0)return[];if(typeof a>"u")a=C;else for(let b of a)C.has(b)||a.delete(b);if(a.size===0)break}let o=[...a??[]];return n.length>0&&(o=o.filter(l=>{for(let[A,f]of n)if(!(typeof f<"u"?Object.hasOwn(l,A)&&l[A]===f:Object.hasOwn(l,A)===!1))return!1;return!0})),o}};A0e.Index=P4r;var sml=/^[0-9]+$/,oml=/^[a-zA-Z0-9_]+$/,aml=new Set(["scripts",...km.Manifest.allDependencies]);function cml(e,t){return t===1&&aml.has(e[0])}function lml(e){let t=Array.isArray(e)?e:(0,tGt.toPath)(e);return t.map((n,a)=>sml.test(n)?`[${n}]`:oml.test(n)&&!cml(t,a)?`.${n}`:`[${JSON.stringify(n)}]`).join("").replace(/^\./,"")}function uml(e,t){let r=[];if(t.methodName!==null&&r.push(km.formatUtils.pretty(e,t.methodName,km.formatUtils.Type.CODE)),t.file!==null){let n=[];n.push(km.formatUtils.pretty(e,t.file,km.formatUtils.Type.PATH)),t.line!==null&&(n.push(km.formatUtils.pretty(e,t.line,km.formatUtils.Type.NUMBER)),t.column!==null&&n.push(km.formatUtils.pretty(e,t.column,km.formatUtils.Type.NUMBER))),r.push(`(${n.join(km.formatUtils.pretty(e,":","grey"))})`)}return r.join(" ")}function gml(e,{manifestUpdates:t,reportedErrors:r},{fix:n}={}){let a=new Map,o=new Map,l=[...r.keys()].map(A=>[A,new Map]);for(let[A,f]of[...l,...t]){let I=r.get(A)?.map(N=>({text:N,fixable:!1}))??[],C=!1,b=e.getWorkspaceByCwd(A),E=b.manifest.exportTo({});for(let[N,B]of f){if(B.size>1){let F=[...B].map(([Q,J])=>{let ae=km.formatUtils.pretty(e.configuration,Q,km.formatUtils.Type.INSPECT),ne=J.size>0?uml(e.configuration,J.values().next().value):null;return ne!==null?` ${ae} at ${ne}`:` -${ae}`}).join("");I.push({text:`Conflict detected in constraint targeting ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)}; conflicting values are:${F}`,fixable:!1})}else{let[[F]]=B,Q=(0,tGt.get)(E,N);if(JSON.stringify(Q)===JSON.stringify(F))continue;if(!n){let J=typeof Q>"u"?`Missing field ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)}; expected ${km.formatUtils.pretty(e.configuration,F,km.formatUtils.Type.INSPECT)}`:typeof F>"u"?`Extraneous field ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)} currently set to ${km.formatUtils.pretty(e.configuration,Q,km.formatUtils.Type.INSPECT)}`:`Invalid field ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)}; expected ${km.formatUtils.pretty(e.configuration,F,km.formatUtils.Type.INSPECT)}, found ${km.formatUtils.pretty(e.configuration,Q,km.formatUtils.Type.INSPECT)}`;I.push({text:J,fixable:!0});continue}typeof F>"u"?(0,tGt.unset)(E,N):(0,tGt.set)(E,N,F),C=!0}C&&a.set(b,E)}I.length>0&&o.set(b,I)}return{changedWorkspaces:a,remainingErrors:o}}function fhl(e,{configuration:t}){let r={children:[]};for(let[n,a]of e){let o=[];for(let A of a){let f=A.text.split(/\n/);A.fixable&&(f[0]=`${km.formatUtils.pretty(t,"\u2699","gray")} ${f[0]}`),o.push({value:km.formatUtils.tuple(km.formatUtils.Type.NO_HINT,f[0]),children:f.slice(1).map(I=>({value:km.formatUtils.tuple(km.formatUtils.Type.NO_HINT,I)}))})}let l={value:km.formatUtils.tuple(km.formatUtils.Type.LOCATOR,n.anchoredLocator),children:km.miscUtils.sortMap(o,A=>A.value[1])};r.children.push(l)}return r.children=km.miscUtils.sortMap(r.children,n=>n.value[1]),r}});var L4r=H(nGt=>{"use strict";Object.defineProperty(nGt,"__esModule",{value:!0});nGt.ModernEngine=void 0;var Ihl=(Wa(),vi(Va)),qV=mn(),rGt=Ihl.__importStar(n7e()),Z4r=class{constructor(t){this.project=t}createEnvironment(){let t=new rGt.Index(["cwd","ident"]),r=new rGt.Index(["workspace","type","ident"]),n=new rGt.Index(["ident"]),a={manifestUpdates:new Map,reportedErrors:new Map},o=new Map,l=new Map;for(let A of this.project.storedPackages.values()){let f=Array.from(A.peerDependencies.values(),I=>[qV.structUtils.stringifyIdent(I),I.range]);o.set(A.locatorHash,{workspace:null,ident:qV.structUtils.stringifyIdent(A),version:A.version,dependencies:new Map,peerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional!==!0)),optionalPeerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional===!0))})}for(let A of this.project.storedPackages.values()){let f=o.get(A.locatorHash);f.dependencies=new Map(Array.from(A.dependencies.values(),I=>{let C=this.project.storedResolutions.get(I.descriptorHash);if(typeof C>"u")throw new Error("Assertion failed: The resolution should have been registered");let b=o.get(C);if(typeof b>"u")throw new Error("Assertion failed: The package should have been registered");return[qV.structUtils.stringifyIdent(I),b]})),f.dependencies.delete(f.ident)}for(let A of this.project.workspaces){let f=qV.structUtils.stringifyIdent(A.anchoredLocator),I=A.manifest.exportTo({}),C=o.get(A.anchoredLocator.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");let b=(F,Q,{caller:J=qV.nodeUtils.getCaller()}={})=>{let ae=rGt.normalizePath(F),ne=qV.miscUtils.getMapWithDefault(a.manifestUpdates,A.cwd),ce=qV.miscUtils.getMapWithDefault(ne,ae),fe=qV.miscUtils.getSetWithDefault(ce,Q);J!==null&&fe.add(J)},E=F=>b(F,void 0,{caller:qV.nodeUtils.getCaller()}),N=F=>{qV.miscUtils.getArrayWithDefault(a.reportedErrors,A.cwd).push(F)},B=t.insert({cwd:A.relativeCwd,ident:f,manifest:I,pkg:C,set:b,unset:E,error:N});l.set(A,B);for(let F of qV.Manifest.allDependencies)for(let Q of A.manifest[F].values()){let J=qV.structUtils.stringifyIdent(Q),ae=()=>{b([F,J],void 0,{caller:qV.nodeUtils.getCaller()})},ne=fe=>{b([F,J],fe,{caller:qV.nodeUtils.getCaller()})},ce=null;if(F!=="peerDependencies"&&(F!=="dependencies"||!A.manifest.devDependencies.has(Q.identHash))){let fe=A.anchoredPackage.dependencies.get(Q.identHash);if(fe){if(typeof fe>"u")throw new Error("Assertion failed: The dependency should have been registered");let ue=this.project.storedResolutions.get(fe.descriptorHash);if(typeof ue>"u")throw new Error("Assertion failed: The resolution should have been registered");let de=o.get(ue);if(typeof de>"u")throw new Error("Assertion failed: The package should have been registered");ce=de}}r.insert({workspace:B,ident:J,range:Q.range,type:F,resolution:ce,update:ne,delete:ae,error:N})}}for(let A of this.project.storedPackages.values()){let f=this.project.tryWorkspaceByLocator(A);if(!f)continue;let I=l.get(f);if(typeof I>"u")throw new Error("Assertion failed: The workspace should have been registered");let C=o.get(A.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");C.workspace=I}return{workspaces:t,dependencies:r,packages:n,result:a}}async process(){let t=this.createEnvironment(),r={Yarn:{workspace:a=>t.workspaces.find(a)[0]??null,workspaces:a=>t.workspaces.find(a),dependency:a=>t.dependencies.find(a)[0]??null,dependencies:a=>t.dependencies.find(a),package:a=>t.packages.find(a)[0]??null,packages:a=>t.packages.find(a)}},n=await this.project.loadUserConfig();return n?.constraints?(await n.constraints(r),t.result):null}};nGt.ModernEngine=Z4r});var vus=H((Qqu,V4r)=>{var hhl;(function(e){var t=function(){return{"append/2":[new e.type.Rule(new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("L")]),new e.type.Term("foldl",[new e.type.Term("append",[]),new e.type.Var("X"),new e.type.Term("[]",[]),new e.type.Var("L")]))],"append/3":[new e.type.Rule(new e.type.Term("append",[new e.type.Term("[]",[]),new e.type.Var("X"),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("append",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("append",[new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("S")]))],"member/2":[new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("_")])]),null),new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")])]),new e.type.Term("member",[new e.type.Var("X"),new e.type.Var("Xs")]))],"permutation/2":[new e.type.Rule(new e.type.Term("permutation",[new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("permutation",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("permutation",[new e.type.Var("T"),new e.type.Var("P")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("P")]),new e.type.Term("append",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("Y")]),new e.type.Var("S")])])]))],"maplist/2":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("X")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("Xs")])]))],"maplist/3":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs")])]))],"maplist/4":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs")])]))],"maplist/5":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds")])]))],"maplist/6":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es")])]))],"maplist/7":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs")])]))],"maplist/8":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")]),new e.type.Term(".",[new e.type.Var("G"),new e.type.Var("Gs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F"),new e.type.Var("G")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs"),new e.type.Var("Gs")])]))],"include/3":[new e.type.Rule(new e.type.Term("include",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("include",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("A")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("A"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("F"),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("F")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("L"),new e.type.Var("S")])]),new e.type.Term("include",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("S")])])])])]))],"exclude/3":[new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("E")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("Q")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("R"),new e.type.Var("Q")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("!",[]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("E")])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("E")])])])])])])]))],"foldl/4":[new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Var("I"),new e.type.Var("I")]),null),new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("I"),new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("I"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])])])]),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P2"),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P2")]),new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("R")])])])])]))],"select/3":[new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Xs")]),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term("select",[new e.type.Var("E"),new e.type.Var("Xs"),new e.type.Var("Ys")]))],"sum_list/2":[new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term("[]",[]),new e.type.Num(0,!1)]),null),new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("sum_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("+",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"max_list/2":[new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("max_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"min_list/2":[new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("min_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("=<",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"prod_list/2":[new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term("[]",[]),new e.type.Num(1,!1)]),null),new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("prod_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("*",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"last/2":[new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")]),new e.type.Var("X")]),new e.type.Term("last",[new e.type.Var("Xs"),new e.type.Var("X")]))],"prefix/2":[new e.type.Rule(new e.type.Term("prefix",[new e.type.Var("Part"),new e.type.Var("Whole")]),new e.type.Term("append",[new e.type.Var("Part"),new e.type.Var("_"),new e.type.Var("Whole")]))],"nth0/3":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth1/3":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth0/4":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth1/4":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth/5":[new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("N"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("X"),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("O"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("Y"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term(",",[new e.type.Term("is",[new e.type.Var("M"),new e.type.Term("+",[new e.type.Var("N"),new e.type.Num(1,!1)])]),new e.type.Term("nth",[new e.type.Var("M"),new e.type.Var("O"),new e.type.Var("Xs"),new e.type.Var("Y"),new e.type.Var("Ys")])]))],"length/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(!e.type.is_variable(A)&&!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(e.type.is_integer(A)&&A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else{var f=new e.type.Term("length",[l,new e.type.Num(0,!1),A]);e.type.is_integer(A)&&(f=new e.type.Term(",",[f,new e.type.Term("!",[])])),n.prepend([new e.type.State(a.goal.replace(f),a.substitution,a)])}},"length/3":[new e.type.Rule(new e.type.Term("length",[new e.type.Term("[]",[]),new e.type.Var("N"),new e.type.Var("N")]),null),new e.type.Rule(new e.type.Term("length",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("X")]),new e.type.Var("A"),new e.type.Var("N")]),new e.type.Term(",",[new e.type.Term("succ",[new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("length",[new e.type.Var("X"),new e.type.Var("B"),new e.type.Var("N")])]))],"replicate/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=new e.type.Term("[]"),C=0;C0;b--)C[b].equals(C[b-1])&&C.splice(b,1);for(var E=new e.type.Term("[]"),b=C.length-1;b>=0;b--)E=new e.type.Term(".",[C[b],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"msort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I=l;I.indicator==="./2";)f.push(I.args[0]),I=I.args[1];if(e.type.is_variable(I))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(I))n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=f.sort(e.compare),b=new e.type.Term("[]"),E=C.length-1;E>=0;E--)b=new e.type.Term(".",[C[E],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,A])),a.substitution,a)])}}},"keysort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I,C=l;C.indicator==="./2";){if(I=C.args[0],e.type.is_variable(I)){n.throw_error(e.error.instantiation(o.indicator));return}else if(!e.type.is_term(I)||I.indicator!=="-/2"){n.throw_error(e.error.type("pair",I,o.indicator));return}I.args[0].pair=I.args[1],f.push(I.args[0]),C=C.args[1]}if(e.type.is_variable(C))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(C))n.throw_error(e.error.type("list",l,o.indicator));else{for(var b=f.sort(e.compare),E=new e.type.Term("[]"),N=b.length-1;N>=0;N--)E=new e.type.Term(".",[new e.type.Term("-",[b[N],b[N].pair]),E]),delete b[N].pair;n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"take/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;if(I===0){for(var E=new e.type.Term("[]"),I=C.length-1;I>=0;I--)E=new e.type.Term(".",[C[I],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,f])),a.substitution,a)])}}},"drop/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;I===0&&n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f])),a.substitution,a)])}},"reverse/2":function(n,a,o){var l=o.args[0],A=o.args[1],f=e.type.is_instantiated_list(l),I=e.type.is_instantiated_list(A);if(e.type.is_variable(l)&&e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(l)&&!e.type.is_fully_list(l))n.throw_error(e.error.type("list",l,o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!f&&!I)n.throw_error(e.error.instantiation(o.indicator));else{for(var C=f?l:A,b=new e.type.Term("[]",[]);C.indicator==="./2";)b=new e.type.Term(".",[C.args[0],b]),C=C.args[1];n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f?A:l])),a.substitution,a)])}},"list_to_set/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else{for(var f=l,I=[];f.indicator==="./2";)I.push(f.args[0]),f=f.args[1];if(e.type.is_variable(f))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_term(f)||f.indicator!=="[]/0")n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=[],b=new e.type.Term("[]",[]),E,N=0;N=0;N--)b=new e.type.Term(".",[C[N],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[A,b])),a.substitution,a)])}}}}},r=["append/2","append/3","member/2","permutation/2","maplist/2","maplist/3","maplist/4","maplist/5","maplist/6","maplist/7","maplist/8","include/3","exclude/3","foldl/4","sum_list/2","max_list/2","min_list/2","prod_list/2","last/2","prefix/2","nth0/3","nth1/3","nth0/4","nth1/4","length/2","replicate/3","select/3","sort/2","msort/2","keysort/2","take/3","drop/3","reverse/2","list_to_set/2"];typeof V4r<"u"?V4r.exports=function(n){e=n,new e.type.Module("lists",t(),r)}:new e.type.Module("lists",t(),r)})(hhl)});var Ous=H(Dh=>{"use strict";var p0e=process.platform==="win32",W4r="aes-256-cbc",mhl="sha256",Tus="The current environment doesn't support interactive reading from TTY.",pb=Et("fs"),Bus=process.binding("tty_wrap").TTY,P4r=Et("child_process"),Tue=Et("path"),M4r={prompt:"> ",hideEchoBack:!1,mask:"*",limit:[],limitMessage:"Input another, please.$<( [)limit(])>",defaultInput:"",trueValue:[],falseValue:[],caseSensitive:!1,keepWhitespace:!1,encoding:"utf8",bufferSize:1024,print:void 0,history:!0,cd:!1,phContent:void 0,preCheck:void 0},Xte="none",nJ,BGe,wus=!1,wue,iGt,O4r,Chl=0,J4r="",d0e=[],sGt,Rus=!1,H4r=!1,i7e=!1;function Nus(e){function t(r){return r.replace(/[^\w\u0080-\uFFFF]/g,function(n){return"#"+n.charCodeAt(0)+";"})}return iGt.concat(function(r){var n=[];return Object.keys(r).forEach(function(a){r[a]==="boolean"?e[a]&&n.push("--"+a):r[a]==="string"&&e[a]&&n.push("--"+a,t(e[a]))}),n}({display:"string",displayOnly:"boolean",keyIn:"boolean",hideEchoBack:"boolean",mask:"string",limit:"string",caseSensitive:"boolean"}))}function _hl(e,t){function r(J){var ae,ne="",ce;for(O4r=O4r||Et("os").tmpdir();;){ae=Tue.join(O4r,J+ne);try{ce=pb.openSync(ae,"wx")}catch(fe){if(fe.code==="EEXIST"){ne++;continue}else throw fe}pb.closeSync(ce);break}return ae}var n,a,o,l={},A,f,I=r("readline-sync.stdout"),C=r("readline-sync.stderr"),b=r("readline-sync.exit"),E=r("readline-sync.done"),N=Et("crypto"),B,F,Q;B=N.createHash(mhl),B.update(""+process.pid+Chl+++Math.random()),Q=B.digest("hex"),F=N.createDecipher(W4r,Q),n=Nus(e),p0e?(a=process.env.ComSpec||"cmd.exe",process.env.Q='"',o=["/V:ON","/S","/C","(%Q%"+a+"%Q% /V:ON /S /C %Q%%Q%"+wue+"%Q%"+n.map(function(J){return" %Q%"+J+"%Q%"}).join("")+" & (echo !ERRORLEVEL!)>%Q%"+b+"%Q%%Q%) 2>%Q%"+C+"%Q% |%Q%"+process.execPath+"%Q% %Q%"+__dirname+"\\encrypt.js%Q% %Q%"+W4r+"%Q% %Q%"+Q+"%Q% >%Q%"+I+"%Q% & (echo 1)>%Q%"+E+"%Q%"]):(a="/bin/sh",o=["-c",'("'+wue+'"'+n.map(function(J){return" '"+J.replace(/'/g,"'\\''")+"'"}).join("")+'; echo $?>"'+b+'") 2>"'+C+'" |"'+process.execPath+'" "'+__dirname+'/encrypt.js" "'+W4r+'" "'+Q+'" >"'+I+'"; echo 1 >"'+E+'"']),i7e&&i7e("_execFileSync",n);try{P4r.spawn(a,o,t)}catch(J){l.error=new Error(J.message),l.error.method="_execFileSync - spawn",l.error.program=a,l.error.args=o}for(;pb.readFileSync(E,{encoding:e.encoding}).trim()!=="1";);return(A=pb.readFileSync(b,{encoding:e.encoding}).trim())==="0"?l.input=F.update(pb.readFileSync(I,{encoding:"binary"}),"hex",e.encoding)+F.final(e.encoding):(f=pb.readFileSync(C,{encoding:e.encoding}).trim(),l.error=new Error(Tus+(f?` -`+f:"")),l.error.method="_execFileSync",l.error.program=a,l.error.args=o,l.error.extMessage=f,l.error.exitCode=+A),pb.unlinkSync(I),pb.unlinkSync(C),pb.unlinkSync(b),pb.unlinkSync(E),l}function yhl(e){var t,r={},n,a={env:process.env,encoding:e.encoding};if(wue||(p0e?process.env.PSModulePath?(wue="powershell.exe",iGt=["-ExecutionPolicy","Bypass","-File",__dirname+"\\read.ps1"]):(wue="cscript.exe",iGt=["//nologo",__dirname+"\\read.cs.js"]):(wue="/bin/sh",iGt=[__dirname+"/read.sh"])),p0e&&!process.env.PSModulePath&&(a.stdio=[process.stdin]),P4r.execFileSync){t=Nus(e),i7e&&i7e("execFileSync",t);try{r.input=P4r.execFileSync(wue,t,a)}catch(o){n=o.stderr?(o.stderr+"").trim():"",r.error=new Error(Tus+(n?` -`+n:"")),r.error.method="execFileSync",r.error.program=wue,r.error.args=t,r.error.extMessage=n,r.error.exitCode=o.status,r.error.code=o.code,r.error.signal=o.signal}}else r=_hl(e,a);return r.error||(r.input=r.input.replace(/^\s*'|'\s*$/g,""),e.display=""),r}function Y4r(e){var t="",r=e.display,n=!e.display&&e.keyIn&&e.hideEchoBack&&!e.mask;function a(){var o=yhl(e);if(o.error)throw o.error;return o.input}return H4r&&H4r(e),function(){var o,l,A;function f(){return o||(o=process.binding("fs"),l=process.binding("constants")),o}if(typeof Xte=="string")if(Xte=null,p0e){if(A=function(I){var C=I.replace(/^\D+/,"").split("."),b=0;return(C[0]=+C[0])&&(b+=C[0]*1e4),(C[1]=+C[1])&&(b+=C[1]*100),(C[2]=+C[2])&&(b+=C[2]),b}(process.version),!(A>=20302&&A<40204||A>=5e4&&A<50100||A>=50600&&A<60200)&&process.stdin.isTTY)process.stdin.pause(),Xte=process.stdin.fd,BGe=process.stdin._handle;else try{Xte=f().open("CONIN$",l.O_RDWR,parseInt("0666",8)),BGe=new Bus(Xte,!0)}catch{}if(process.stdout.isTTY)nJ=process.stdout.fd;else{try{nJ=pb.openSync("\\\\.\\CON","w")}catch{}if(typeof nJ!="number")try{nJ=f().open("CONOUT$",l.O_RDWR,parseInt("0666",8))}catch{}}}else{if(process.stdin.isTTY){process.stdin.pause();try{Xte=pb.openSync("/dev/tty","r"),BGe=process.stdin._handle}catch{}}else try{Xte=pb.openSync("/dev/tty","r"),BGe=new Bus(Xte,!1)}catch{}if(process.stdout.isTTY)nJ=process.stdout.fd;else try{nJ=pb.openSync("/dev/tty","w")}catch{}}}(),function(){var o,l,A=!e.hideEchoBack&&!e.keyIn,f,I,C,b,E;sGt="";function N(B){return B===wus?!0:BGe.setRawMode(B)!==0?!1:(wus=B,!0)}if(Rus||!BGe||typeof nJ!="number"&&(e.display||!A)){t=a();return}if(e.display&&(pb.writeSync(nJ,e.display),e.display=""),!e.displayOnly){if(!N(!A)){t=a();return}for(I=e.keyIn?1:e.bufferSize,f=Buffer.allocUnsafe&&Buffer.alloc?Buffer.alloc(I):new Buffer(I),e.keyIn&&e.limit&&(l=new RegExp("[^"+e.limit+"]","g"+(e.caseSensitive?"":"i")));;){C=0;try{C=pb.readSync(Xte,f,0,I)}catch(B){if(B.code!=="EOF"){N(!1),t+=a();return}}if(C>0?(b=f.toString(e.encoding,0,C),sGt+=b):(b=` -`,sGt+="\0"),b&&typeof(E=(b.match(/^(.*?)[\r\n]/)||[])[1])=="string"&&(b=E,o=!0),b&&(b=b.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"")),b&&l&&(b=b.replace(l,"")),b&&(A||(e.hideEchoBack?e.mask&&pb.writeSync(nJ,new Array(b.length+1).join(e.mask)):pb.writeSync(nJ,b)),t+=b),!e.keyIn&&o||e.keyIn&&t.length>=I)break}!A&&!n&&pb.writeSync(nJ,` +${ae}`}).join("");I.push({text:`Conflict detected in constraint targeting ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)}; conflicting values are:${F}`,fixable:!1})}else{let[[F]]=B,Q=(0,tGt.get)(E,N);if(JSON.stringify(Q)===JSON.stringify(F))continue;if(!n){let J=typeof Q>"u"?`Missing field ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)}; expected ${km.formatUtils.pretty(e.configuration,F,km.formatUtils.Type.INSPECT)}`:typeof F>"u"?`Extraneous field ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)} currently set to ${km.formatUtils.pretty(e.configuration,Q,km.formatUtils.Type.INSPECT)}`:`Invalid field ${km.formatUtils.pretty(e.configuration,N,km.formatUtils.Type.CODE)}; expected ${km.formatUtils.pretty(e.configuration,F,km.formatUtils.Type.INSPECT)}, found ${km.formatUtils.pretty(e.configuration,Q,km.formatUtils.Type.INSPECT)}`;I.push({text:J,fixable:!0});continue}typeof F>"u"?(0,tGt.unset)(E,N):(0,tGt.set)(E,N,F),C=!0}C&&a.set(b,E)}I.length>0&&o.set(b,I)}return{changedWorkspaces:a,remainingErrors:o}}function Aml(e,{configuration:t}){let r={children:[]};for(let[n,a]of e){let o=[];for(let A of a){let f=A.text.split(/\n/);A.fixable&&(f[0]=`${km.formatUtils.pretty(t,"\u2699","gray")} ${f[0]}`),o.push({value:km.formatUtils.tuple(km.formatUtils.Type.NO_HINT,f[0]),children:f.slice(1).map(I=>({value:km.formatUtils.tuple(km.formatUtils.Type.NO_HINT,I)}))})}let l={value:km.formatUtils.tuple(km.formatUtils.Type.LOCATOR,n.anchoredLocator),children:km.miscUtils.sortMap(o,A=>A.value[1])};r.children.push(l)}return r.children=km.miscUtils.sortMap(r.children,n=>n.value[1]),r}});var H4r=H(nGt=>{"use strict";Object.defineProperty(nGt,"__esModule",{value:!0});nGt.ModernEngine=void 0;var dml=(Wa(),vi(Va)),$V=wn(),rGt=dml.__importStar(r7e()),M4r=class{constructor(t){this.project=t}createEnvironment(){let t=new rGt.Index(["cwd","ident"]),r=new rGt.Index(["workspace","type","ident"]),n=new rGt.Index(["ident"]),a={manifestUpdates:new Map,reportedErrors:new Map},o=new Map,l=new Map;for(let A of this.project.storedPackages.values()){let f=Array.from(A.peerDependencies.values(),I=>[$V.structUtils.stringifyIdent(I),I.range]);o.set(A.locatorHash,{workspace:null,ident:$V.structUtils.stringifyIdent(A),version:A.version,dependencies:new Map,peerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional!==!0)),optionalPeerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional===!0))})}for(let A of this.project.storedPackages.values()){let f=o.get(A.locatorHash);f.dependencies=new Map(Array.from(A.dependencies.values(),I=>{let C=this.project.storedResolutions.get(I.descriptorHash);if(typeof C>"u")throw new Error("Assertion failed: The resolution should have been registered");let b=o.get(C);if(typeof b>"u")throw new Error("Assertion failed: The package should have been registered");return[$V.structUtils.stringifyIdent(I),b]})),f.dependencies.delete(f.ident)}for(let A of this.project.workspaces){let f=$V.structUtils.stringifyIdent(A.anchoredLocator),I=A.manifest.exportTo({}),C=o.get(A.anchoredLocator.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");let b=(F,Q,{caller:J=$V.nodeUtils.getCaller()}={})=>{let ae=rGt.normalizePath(F),ne=$V.miscUtils.getMapWithDefault(a.manifestUpdates,A.cwd),ce=$V.miscUtils.getMapWithDefault(ne,ae),fe=$V.miscUtils.getSetWithDefault(ce,Q);J!==null&&fe.add(J)},E=F=>b(F,void 0,{caller:$V.nodeUtils.getCaller()}),N=F=>{$V.miscUtils.getArrayWithDefault(a.reportedErrors,A.cwd).push(F)},B=t.insert({cwd:A.relativeCwd,ident:f,manifest:I,pkg:C,set:b,unset:E,error:N});l.set(A,B);for(let F of $V.Manifest.allDependencies)for(let Q of A.manifest[F].values()){let J=$V.structUtils.stringifyIdent(Q),ae=()=>{b([F,J],void 0,{caller:$V.nodeUtils.getCaller()})},ne=fe=>{b([F,J],fe,{caller:$V.nodeUtils.getCaller()})},ce=null;if(F!=="peerDependencies"&&(F!=="dependencies"||!A.manifest.devDependencies.has(Q.identHash))){let fe=A.anchoredPackage.dependencies.get(Q.identHash);if(fe){if(typeof fe>"u")throw new Error("Assertion failed: The dependency should have been registered");let ue=this.project.storedResolutions.get(fe.descriptorHash);if(typeof ue>"u")throw new Error("Assertion failed: The resolution should have been registered");let de=o.get(ue);if(typeof de>"u")throw new Error("Assertion failed: The package should have been registered");ce=de}}r.insert({workspace:B,ident:J,range:Q.range,type:F,resolution:ce,update:ne,delete:ae,error:N})}}for(let A of this.project.storedPackages.values()){let f=this.project.tryWorkspaceByLocator(A);if(!f)continue;let I=l.get(f);if(typeof I>"u")throw new Error("Assertion failed: The workspace should have been registered");let C=o.get(A.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");C.workspace=I}return{workspaces:t,dependencies:r,packages:n,result:a}}async process(){let t=this.createEnvironment(),r={Yarn:{workspace:a=>t.workspaces.find(a)[0]??null,workspaces:a=>t.workspaces.find(a),dependency:a=>t.dependencies.find(a)[0]??null,dependencies:a=>t.dependencies.find(a),package:a=>t.packages.find(a)[0]??null,packages:a=>t.packages.find(a)}},n=await this.project.loadUserConfig();return n?.constraints?(await n.constraints(r),t.result):null}};nGt.ModernEngine=M4r});var Bus=H((oeg,Y4r)=>{var pml;(function(e){var t=function(){return{"append/2":[new e.type.Rule(new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("L")]),new e.type.Term("foldl",[new e.type.Term("append",[]),new e.type.Var("X"),new e.type.Term("[]",[]),new e.type.Var("L")]))],"append/3":[new e.type.Rule(new e.type.Term("append",[new e.type.Term("[]",[]),new e.type.Var("X"),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("append",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("append",[new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("S")]))],"member/2":[new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("_")])]),null),new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")])]),new e.type.Term("member",[new e.type.Var("X"),new e.type.Var("Xs")]))],"permutation/2":[new e.type.Rule(new e.type.Term("permutation",[new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("permutation",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("permutation",[new e.type.Var("T"),new e.type.Var("P")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("P")]),new e.type.Term("append",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("Y")]),new e.type.Var("S")])])]))],"maplist/2":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("X")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("Xs")])]))],"maplist/3":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs")])]))],"maplist/4":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs")])]))],"maplist/5":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds")])]))],"maplist/6":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es")])]))],"maplist/7":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs")])]))],"maplist/8":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")]),new e.type.Term(".",[new e.type.Var("G"),new e.type.Var("Gs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F"),new e.type.Var("G")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs"),new e.type.Var("Gs")])]))],"include/3":[new e.type.Rule(new e.type.Term("include",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("include",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("A")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("A"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("F"),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("F")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("L"),new e.type.Var("S")])]),new e.type.Term("include",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("S")])])])])]))],"exclude/3":[new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("E")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("Q")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("R"),new e.type.Var("Q")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("!",[]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("E")])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("E")])])])])])])]))],"foldl/4":[new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Var("I"),new e.type.Var("I")]),null),new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("I"),new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("I"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])])])]),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P2"),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P2")]),new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("R")])])])])]))],"select/3":[new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Xs")]),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term("select",[new e.type.Var("E"),new e.type.Var("Xs"),new e.type.Var("Ys")]))],"sum_list/2":[new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term("[]",[]),new e.type.Num(0,!1)]),null),new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("sum_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("+",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"max_list/2":[new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("max_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"min_list/2":[new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("min_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("=<",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"prod_list/2":[new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term("[]",[]),new e.type.Num(1,!1)]),null),new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("prod_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("*",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"last/2":[new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")]),new e.type.Var("X")]),new e.type.Term("last",[new e.type.Var("Xs"),new e.type.Var("X")]))],"prefix/2":[new e.type.Rule(new e.type.Term("prefix",[new e.type.Var("Part"),new e.type.Var("Whole")]),new e.type.Term("append",[new e.type.Var("Part"),new e.type.Var("_"),new e.type.Var("Whole")]))],"nth0/3":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth1/3":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth0/4":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth1/4":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth/5":[new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("N"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("X"),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("O"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("Y"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term(",",[new e.type.Term("is",[new e.type.Var("M"),new e.type.Term("+",[new e.type.Var("N"),new e.type.Num(1,!1)])]),new e.type.Term("nth",[new e.type.Var("M"),new e.type.Var("O"),new e.type.Var("Xs"),new e.type.Var("Y"),new e.type.Var("Ys")])]))],"length/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(!e.type.is_variable(A)&&!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(e.type.is_integer(A)&&A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else{var f=new e.type.Term("length",[l,new e.type.Num(0,!1),A]);e.type.is_integer(A)&&(f=new e.type.Term(",",[f,new e.type.Term("!",[])])),n.prepend([new e.type.State(a.goal.replace(f),a.substitution,a)])}},"length/3":[new e.type.Rule(new e.type.Term("length",[new e.type.Term("[]",[]),new e.type.Var("N"),new e.type.Var("N")]),null),new e.type.Rule(new e.type.Term("length",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("X")]),new e.type.Var("A"),new e.type.Var("N")]),new e.type.Term(",",[new e.type.Term("succ",[new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("length",[new e.type.Var("X"),new e.type.Var("B"),new e.type.Var("N")])]))],"replicate/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=new e.type.Term("[]"),C=0;C0;b--)C[b].equals(C[b-1])&&C.splice(b,1);for(var E=new e.type.Term("[]"),b=C.length-1;b>=0;b--)E=new e.type.Term(".",[C[b],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"msort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I=l;I.indicator==="./2";)f.push(I.args[0]),I=I.args[1];if(e.type.is_variable(I))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(I))n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=f.sort(e.compare),b=new e.type.Term("[]"),E=C.length-1;E>=0;E--)b=new e.type.Term(".",[C[E],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,A])),a.substitution,a)])}}},"keysort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I,C=l;C.indicator==="./2";){if(I=C.args[0],e.type.is_variable(I)){n.throw_error(e.error.instantiation(o.indicator));return}else if(!e.type.is_term(I)||I.indicator!=="-/2"){n.throw_error(e.error.type("pair",I,o.indicator));return}I.args[0].pair=I.args[1],f.push(I.args[0]),C=C.args[1]}if(e.type.is_variable(C))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(C))n.throw_error(e.error.type("list",l,o.indicator));else{for(var b=f.sort(e.compare),E=new e.type.Term("[]"),N=b.length-1;N>=0;N--)E=new e.type.Term(".",[new e.type.Term("-",[b[N],b[N].pair]),E]),delete b[N].pair;n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"take/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;if(I===0){for(var E=new e.type.Term("[]"),I=C.length-1;I>=0;I--)E=new e.type.Term(".",[C[I],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,f])),a.substitution,a)])}}},"drop/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;I===0&&n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f])),a.substitution,a)])}},"reverse/2":function(n,a,o){var l=o.args[0],A=o.args[1],f=e.type.is_instantiated_list(l),I=e.type.is_instantiated_list(A);if(e.type.is_variable(l)&&e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(l)&&!e.type.is_fully_list(l))n.throw_error(e.error.type("list",l,o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!f&&!I)n.throw_error(e.error.instantiation(o.indicator));else{for(var C=f?l:A,b=new e.type.Term("[]",[]);C.indicator==="./2";)b=new e.type.Term(".",[C.args[0],b]),C=C.args[1];n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f?A:l])),a.substitution,a)])}},"list_to_set/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else{for(var f=l,I=[];f.indicator==="./2";)I.push(f.args[0]),f=f.args[1];if(e.type.is_variable(f))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_term(f)||f.indicator!=="[]/0")n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=[],b=new e.type.Term("[]",[]),E,N=0;N=0;N--)b=new e.type.Term(".",[C[N],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[A,b])),a.substitution,a)])}}}}},r=["append/2","append/3","member/2","permutation/2","maplist/2","maplist/3","maplist/4","maplist/5","maplist/6","maplist/7","maplist/8","include/3","exclude/3","foldl/4","sum_list/2","max_list/2","min_list/2","prod_list/2","last/2","prefix/2","nth0/3","nth1/3","nth0/4","nth1/4","length/2","replicate/3","select/3","sort/2","msort/2","keysort/2","take/3","drop/3","reverse/2","list_to_set/2"];typeof Y4r<"u"?Y4r.exports=function(n){e=n,new e.type.Module("lists",t(),r)}:new e.type.Module("lists",t(),r)})(pml)});var Pus=H(Dh=>{"use strict";var p0e=process.platform==="win32",Q4r="aes-256-cbc",fml="sha256",Rus="The current environment doesn't support interactive reading from TTY.",fb=Et("fs"),wus=process.binding("tty_wrap").TTY,J4r=Et("child_process"),Rue=Et("path"),U4r={prompt:"> ",hideEchoBack:!1,mask:"*",limit:[],limitMessage:"Input another, please.$<( [)limit(])>",defaultInput:"",trueValue:[],falseValue:[],caseSensitive:!1,keepWhitespace:!1,encoding:"utf8",bufferSize:1024,print:void 0,history:!0,cd:!1,phContent:void 0,preCheck:void 0},Jte="none",iJ,BGe,Tus=!1,Tue,iGt,X4r,Iml=0,$4r="",d0e=[],sGt,Nus=!1,K4r=!1,n7e=!1;function Dus(e){function t(r){return r.replace(/[^\w\u0080-\uFFFF]/g,function(n){return"#"+n.charCodeAt(0)+";"})}return iGt.concat(function(r){var n=[];return Object.keys(r).forEach(function(a){r[a]==="boolean"?e[a]&&n.push("--"+a):r[a]==="string"&&e[a]&&n.push("--"+a,t(e[a]))}),n}({display:"string",displayOnly:"boolean",keyIn:"boolean",hideEchoBack:"boolean",mask:"string",limit:"string",caseSensitive:"boolean"}))}function hml(e,t){function r(J){var ae,ne="",ce;for(X4r=X4r||Et("os").tmpdir();;){ae=Rue.join(X4r,J+ne);try{ce=fb.openSync(ae,"wx")}catch(fe){if(fe.code==="EEXIST"){ne++;continue}else throw fe}fb.closeSync(ce);break}return ae}var n,a,o,l={},A,f,I=r("readline-sync.stdout"),C=r("readline-sync.stderr"),b=r("readline-sync.exit"),E=r("readline-sync.done"),N=Et("crypto"),B,F,Q;B=N.createHash(fml),B.update(""+process.pid+Iml+++Math.random()),Q=B.digest("hex"),F=N.createDecipher(Q4r,Q),n=Dus(e),p0e?(a=process.env.ComSpec||"cmd.exe",process.env.Q='"',o=["/V:ON","/S","/C","(%Q%"+a+"%Q% /V:ON /S /C %Q%%Q%"+Tue+"%Q%"+n.map(function(J){return" %Q%"+J+"%Q%"}).join("")+" & (echo !ERRORLEVEL!)>%Q%"+b+"%Q%%Q%) 2>%Q%"+C+"%Q% |%Q%"+process.execPath+"%Q% %Q%"+__dirname+"\\encrypt.js%Q% %Q%"+Q4r+"%Q% %Q%"+Q+"%Q% >%Q%"+I+"%Q% & (echo 1)>%Q%"+E+"%Q%"]):(a="/bin/sh",o=["-c",'("'+Tue+'"'+n.map(function(J){return" '"+J.replace(/'/g,"'\\''")+"'"}).join("")+'; echo $?>"'+b+'") 2>"'+C+'" |"'+process.execPath+'" "'+__dirname+'/encrypt.js" "'+Q4r+'" "'+Q+'" >"'+I+'"; echo 1 >"'+E+'"']),n7e&&n7e("_execFileSync",n);try{J4r.spawn(a,o,t)}catch(J){l.error=new Error(J.message),l.error.method="_execFileSync - spawn",l.error.program=a,l.error.args=o}for(;fb.readFileSync(E,{encoding:e.encoding}).trim()!=="1";);return(A=fb.readFileSync(b,{encoding:e.encoding}).trim())==="0"?l.input=F.update(fb.readFileSync(I,{encoding:"binary"}),"hex",e.encoding)+F.final(e.encoding):(f=fb.readFileSync(C,{encoding:e.encoding}).trim(),l.error=new Error(Rus+(f?` +`+f:"")),l.error.method="_execFileSync",l.error.program=a,l.error.args=o,l.error.extMessage=f,l.error.exitCode=+A),fb.unlinkSync(I),fb.unlinkSync(C),fb.unlinkSync(b),fb.unlinkSync(E),l}function mml(e){var t,r={},n,a={env:process.env,encoding:e.encoding};if(Tue||(p0e?process.env.PSModulePath?(Tue="powershell.exe",iGt=["-ExecutionPolicy","Bypass","-File",__dirname+"\\read.ps1"]):(Tue="cscript.exe",iGt=["//nologo",__dirname+"\\read.cs.js"]):(Tue="/bin/sh",iGt=[__dirname+"/read.sh"])),p0e&&!process.env.PSModulePath&&(a.stdio=[process.stdin]),J4r.execFileSync){t=Dus(e),n7e&&n7e("execFileSync",t);try{r.input=J4r.execFileSync(Tue,t,a)}catch(o){n=o.stderr?(o.stderr+"").trim():"",r.error=new Error(Rus+(n?` +`+n:"")),r.error.method="execFileSync",r.error.program=Tue,r.error.args=t,r.error.extMessage=n,r.error.exitCode=o.status,r.error.code=o.code,r.error.signal=o.signal}}else r=hml(e,a);return r.error||(r.input=r.input.replace(/^\s*'|'\s*$/g,""),e.display=""),r}function j4r(e){var t="",r=e.display,n=!e.display&&e.keyIn&&e.hideEchoBack&&!e.mask;function a(){var o=mml(e);if(o.error)throw o.error;return o.input}return K4r&&K4r(e),function(){var o,l,A;function f(){return o||(o=process.binding("fs"),l=process.binding("constants")),o}if(typeof Jte=="string")if(Jte=null,p0e){if(A=function(I){var C=I.replace(/^\D+/,"").split("."),b=0;return(C[0]=+C[0])&&(b+=C[0]*1e4),(C[1]=+C[1])&&(b+=C[1]*100),(C[2]=+C[2])&&(b+=C[2]),b}(process.version),!(A>=20302&&A<40204||A>=5e4&&A<50100||A>=50600&&A<60200)&&process.stdin.isTTY)process.stdin.pause(),Jte=process.stdin.fd,BGe=process.stdin._handle;else try{Jte=f().open("CONIN$",l.O_RDWR,parseInt("0666",8)),BGe=new wus(Jte,!0)}catch{}if(process.stdout.isTTY)iJ=process.stdout.fd;else{try{iJ=fb.openSync("\\\\.\\CON","w")}catch{}if(typeof iJ!="number")try{iJ=f().open("CONOUT$",l.O_RDWR,parseInt("0666",8))}catch{}}}else{if(process.stdin.isTTY){process.stdin.pause();try{Jte=fb.openSync("/dev/tty","r"),BGe=process.stdin._handle}catch{}}else try{Jte=fb.openSync("/dev/tty","r"),BGe=new wus(Jte,!1)}catch{}if(process.stdout.isTTY)iJ=process.stdout.fd;else try{iJ=fb.openSync("/dev/tty","w")}catch{}}}(),function(){var o,l,A=!e.hideEchoBack&&!e.keyIn,f,I,C,b,E;sGt="";function N(B){return B===Tus?!0:BGe.setRawMode(B)!==0?!1:(Tus=B,!0)}if(Nus||!BGe||typeof iJ!="number"&&(e.display||!A)){t=a();return}if(e.display&&(fb.writeSync(iJ,e.display),e.display=""),!e.displayOnly){if(!N(!A)){t=a();return}for(I=e.keyIn?1:e.bufferSize,f=Buffer.allocUnsafe&&Buffer.alloc?Buffer.alloc(I):new Buffer(I),e.keyIn&&e.limit&&(l=new RegExp("[^"+e.limit+"]","g"+(e.caseSensitive?"":"i")));;){C=0;try{C=fb.readSync(Jte,f,0,I)}catch(B){if(B.code!=="EOF"){N(!1),t+=a();return}}if(C>0?(b=f.toString(e.encoding,0,C),sGt+=b):(b=` +`,sGt+="\0"),b&&typeof(E=(b.match(/^(.*?)[\r\n]/)||[])[1])=="string"&&(b=E,o=!0),b&&(b=b.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"")),b&&l&&(b=b.replace(l,"")),b&&(A||(e.hideEchoBack?e.mask&&fb.writeSync(iJ,new Array(b.length+1).join(e.mask)):fb.writeSync(iJ,b)),t+=b),!e.keyIn&&o||e.keyIn&&t.length>=I)break}!A&&!n&&fb.writeSync(iJ,` `),N(!1)}}(),e.print&&!n&&e.print(r+(e.displayOnly?"":(e.hideEchoBack?new Array(t.length+1).join(e.mask):t)+` -`),e.encoding),e.displayOnly?"":J4r=e.keepWhitespace||e.keyIn?t:t.trim()}function bhl(e,t){var r=[];function n(a){a!=null&&(Array.isArray(a)?a.forEach(n):(!t||t(a))&&r.push(a))}return n(e),r}function U4r(e){return e.replace(/[\x00-\x7f]/g,function(t){return"\\x"+("00"+t.charCodeAt().toString(16)).substr(-2)})}function vD(){var e=Array.prototype.slice.call(arguments),t,r;return e.length&&typeof e[0]=="boolean"&&(r=e.shift(),r&&(t=Object.keys(M4r),e.unshift(M4r))),e.reduce(function(n,a){return a==null||(a.hasOwnProperty("noEchoBack")&&!a.hasOwnProperty("hideEchoBack")&&(a.hideEchoBack=a.noEchoBack,delete a.noEchoBack),a.hasOwnProperty("noTrim")&&!a.hasOwnProperty("keepWhitespace")&&(a.keepWhitespace=a.noTrim,delete a.noTrim),r||(t=Object.keys(a)),t.forEach(function(o){var l;if(a.hasOwnProperty(o))switch(l=a[o],o){case"mask":case"limitMessage":case"defaultInput":case"encoding":l=l!=null?l+"":"",l&&o!=="limitMessage"&&(l=l.replace(/[\r\n]/g,"")),n[o]=l;break;case"bufferSize":!isNaN(l=parseInt(l,10))&&typeof l=="number"&&(n[o]=l);break;case"displayOnly":case"keyIn":case"hideEchoBack":case"caseSensitive":case"keepWhitespace":case"history":case"cd":n[o]=!!l;break;case"limit":case"trueValue":case"falseValue":n[o]=bhl(l,function(A){var f=typeof A;return f==="string"||f==="number"||f==="function"||A instanceof RegExp}).map(function(A){return typeof A=="string"?A.replace(/[\r\n]/g,""):A});break;case"print":case"phContent":case"preCheck":n[o]=typeof l=="function"?l:void 0;break;case"prompt":case"display":n[o]=l??"";break}})),n},{})}function Q4r(e,t,r){return t.some(function(n){var a=typeof n;return a==="string"?r?e===n:e.toLowerCase()===n.toLowerCase():a==="number"?parseFloat(e)===n:a==="function"?n(e):n instanceof RegExp?n.test(e):!1})}function K4r(e,t){var r=Tue.normalize(p0e?(process.env.HOMEDRIVE||"")+(process.env.HOMEPATH||""):process.env.HOME||"").replace(/[\/\\]+$/,"");return e=Tue.normalize(e),t?e.replace(/^~(?=\/|\\|$)/,r):e.replace(new RegExp("^"+U4r(r)+"(?=\\/|\\\\|$)",p0e?"i":""),"~")}function wGe(e,t){var r="(?:\\(([\\s\\S]*?)\\))?(\\w+|.-.)(?:\\(([\\s\\S]*?)\\))?",n=new RegExp("(\\$)?(\\$<"+r+">)","g"),a=new RegExp("(\\$)?(\\$\\{"+r+"\\})","g");function o(l,A,f,I,C,b){var E;return A||typeof(E=t(C))!="string"?f:E?(I||"")+E+(b||""):""}return e.replace(n,o).replace(a,o)}function Dus(e,t,r){var n,a=[],o=-1,l=0,A="",f;function I(C,b){return b.length>3?(C.push(b[0]+"..."+b[b.length-1]),f=!0):b.length&&(C=C.concat(b)),C}return n=e.reduce(function(C,b){return C.concat((b+"").split(""))},[]).reduce(function(C,b){var E,N;return t||(b=b.toLowerCase()),E=/^\d$/.test(b)?1:/^[A-Z]$/.test(b)?2:/^[a-z]$/.test(b)?3:0,r&&E===0?A+=b:(N=b.charCodeAt(0),E&&E===o&&N===l+1?a.push(b):(C=I(C,a),a=[b],o=E),l=N),C},[]),n=I(n,a),A&&(n.push(A),f=!0),{values:n,suppressed:f}}function kus(e,t){return e.join(e.length>2?", ":t?" / ":"/")}function xus(e,t){var r,n,a={},o;if(t.phContent&&(r=t.phContent(e,t)),typeof r!="string")switch(e){case"hideEchoBack":case"mask":case"defaultInput":case"caseSensitive":case"keepWhitespace":case"encoding":case"bufferSize":case"history":case"cd":r=t.hasOwnProperty(e)?typeof t[e]=="boolean"?t[e]?"on":"off":t[e]+"":"";break;case"limit":case"trueValue":case"falseValue":n=t[t.hasOwnProperty(e+"Src")?e+"Src":e],t.keyIn?(a=Dus(n,t.caseSensitive),n=a.values):n=n.filter(function(l){var A=typeof l;return A==="string"||A==="number"}),r=kus(n,a.suppressed);break;case"limitCount":case"limitCountNotZero":r=t[t.hasOwnProperty("limitSrc")?"limitSrc":"limit"].length,r=r||e!=="limitCountNotZero"?r+"":"";break;case"lastInput":r=J4r;break;case"cwd":case"CWD":case"cwdHome":r=process.cwd(),e==="CWD"?r=Tue.basename(r):e==="cwdHome"&&(r=K4r(r));break;case"date":case"time":case"localeDate":case"localeTime":r=new Date()["to"+e.replace(/^./,function(l){return l.toUpperCase()})+"String"]();break;default:typeof(o=(e.match(/^history_m(\d+)$/)||[])[1])=="string"&&(r=d0e[d0e.length-o]||"")}return r}function Gus(e){var t=/^(.)-(.)$/.exec(e),r="",n,a,o,l;if(!t)return null;for(n=t[1].charCodeAt(0),a=t[2].charCodeAt(0),l=n -And the length must be: $`,trueValue:null,falseValue:null,caseSensitive:!0},t,{history:!1,cd:!1,phContent:function(N){return N==="charlist"?r.text:N==="length"?n+"..."+a:null}}),l,A,f,I,C,b,E;for(t=t||{},l=wGe(t.charlist?t.charlist+"":"$",Gus),(isNaN(n=parseInt(t.min,10))||typeof n!="number")&&(n=12),(isNaN(a=parseInt(t.max,10))||typeof a!="number")&&(a=24),I=new RegExp("^["+U4r(l)+"]{"+n+","+a+"}$"),r=Dus([l],o.caseSensitive,!0),r.text=kus(r.values,r.suppressed),A=t.confirmMessage!=null?t.confirmMessage:"Reinput a same one to confirm it: ",f=t.unmatchMessage!=null?t.unmatchMessage:"It differs from first one. Hit only the Enter key if you want to retry from first one.",e==null&&(e="Input new password: "),C=o.limitMessage;!E;)o.limit=I,o.limitMessage=C,b=Dh.question(e,o),o.limit=[b,""],o.limitMessage=f,E=Dh.question(A,o);return b};function Lus(e,t,r){var n;function a(o){return n=r(o),!isNaN(n)&&typeof n=="number"}return Dh.question(e,vD({limitMessage:"Input valid number, please."},t,{limit:a,cd:!1})),n}Dh.questionInt=function(e,t){return Lus(e,t,function(r){return parseInt(r,10)})};Dh.questionFloat=function(e,t){return Lus(e,t,parseFloat)};Dh.questionPath=function(e,t){var r,n="",a=vD({hideEchoBack:!1,limitMessage:`$Input valid path, please.$<( Min:)min>$<( Max:)max>`,history:!0,cd:!0},t,{keepWhitespace:!1,limit:function(o){var l,A,f;o=K4r(o,!0),n="";function I(C){C.split(/\/|\\/).reduce(function(b,E){var N=Tue.resolve(b+=E+Tue.sep);if(!pb.existsSync(N))pb.mkdirSync(N);else if(!pb.statSync(N).isDirectory())throw new Error("Non directory already exists: "+N);return b},"")}try{if(l=pb.existsSync(o),r=l?pb.realpathSync(o):Tue.resolve(o),!t.hasOwnProperty("exists")&&!l||typeof t.exists=="boolean"&&t.exists!==l)return n=(l?"Already exists":"No such file or directory")+": "+r,!1;if(!l&&t.create&&(t.isDirectory?I(r):(I(Tue.dirname(r)),pb.closeSync(pb.openSync(r,"w"))),r=pb.realpathSync(r)),l&&(t.min||t.max||t.isFile||t.isDirectory)){if(A=pb.statSync(r),t.isFile&&!A.isFile())return n="Not file: "+r,!1;if(t.isDirectory&&!A.isDirectory())return n="Not directory: "+r,!1;if(t.min&&A.size<+t.min||t.max&&A.size>+t.max)return n="Size "+A.size+" is out of range: "+r,!1}if(typeof t.validate=="function"&&(f=t.validate(r))!==!0)return typeof f=="string"&&(n=f),!1}catch(C){return n=C+"",!1}return!0},phContent:function(o){return o==="error"?n:o!=="min"&&o!=="max"?null:t.hasOwnProperty(o)?t[o]+"":""}});return t=t||{},e==null&&(e='Input path (you can "cd" and "pwd"): '),Dh.question(e,a),r};function Vus(e,t){var r={},n={};return typeof e=="object"?(Object.keys(e).forEach(function(a){typeof e[a]=="function"&&(n[t.caseSensitive?a:a.toLowerCase()]=e[a])}),r.preCheck=function(a){var o;return r.args=X4r(a),o=r.args[0]||"",t.caseSensitive||(o=o.toLowerCase()),r.hRes=o!=="_"&&n.hasOwnProperty(o)?n[o].apply(a,r.args.slice(1)):n.hasOwnProperty("_")?n._.apply(a,r.args):null,{res:a,forceNext:!1}},n.hasOwnProperty("_")||(r.limit=function(){var a=r.args[0]||"";return t.caseSensitive||(a=a.toLowerCase()),n.hasOwnProperty(a)})):r.preCheck=function(a){return r.args=X4r(a),r.hRes=typeof e=="function"?e.apply(a,r.args):!0,{res:a,forceNext:!1}},r}Dh.promptCL=function(e,t){var r=vD({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Vus(e,r);return r.limit=n.limit,r.preCheck=n.preCheck,Dh.prompt(r),n.args};Dh.promptLoop=function(e,t){for(var r=vD({hideEchoBack:!1,trueValue:null,falseValue:null,caseSensitive:!1,history:!0},t);!e(Dh.prompt(r)););};Dh.promptCLLoop=function(e,t){var r=vD({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Vus(e,r);for(r.limit=n.limit,r.preCheck=n.preCheck;Dh.prompt(r),!n.hRes;);};Dh.promptSimShell=function(e){return Dh.prompt(vD({hideEchoBack:!1,history:!0},e,{prompt:function(){return p0e?"$>":(process.env.USER||"")+(process.env.HOSTNAME?"@"+process.env.HOSTNAME.replace(/\..*$/,""):"")+":$$ "}()}))};function Wus(e,t,r){var n;return e==null&&(e="Are you sure? "),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s*:?\s*$/,"")+" [y/n]: "),n=Dh.keyIn(e,vD(t,{hideEchoBack:!1,limit:r,trueValue:"y",falseValue:"n",caseSensitive:!1})),typeof n=="boolean"?n:""}Dh.keyInYN=function(e,t){return Wus(e,t)};Dh.keyInYNStrict=function(e,t){return Wus(e,t,"yn")};Dh.keyInPause=function(e,t){e==null&&(e="Continue..."),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s+$/,"")+" (Hit any key)"),Dh.keyIn(e,vD({limit:null},t,{hideEchoBack:!0,mask:""}))};Dh.keyInSelect=function(e,t,r){var n=vD({hideEchoBack:!1},r,{trueValue:null,falseValue:null,caseSensitive:!1,phContent:function(f){return f==="itemsCount"?e.length+"":f==="firstItem"?(e[0]+"").trim():f==="lastItem"?(e[e.length-1]+"").trim():null}}),a="",o={},l=49,A=` +`),e.encoding),e.displayOnly?"":$4r=e.keepWhitespace||e.keyIn?t:t.trim()}function Cml(e,t){var r=[];function n(a){a!=null&&(Array.isArray(a)?a.forEach(n):(!t||t(a))&&r.push(a))}return n(e),r}function eJr(e){return e.replace(/[\x00-\x7f]/g,function(t){return"\\x"+("00"+t.charCodeAt().toString(16)).substr(-2)})}function BD(){var e=Array.prototype.slice.call(arguments),t,r;return e.length&&typeof e[0]=="boolean"&&(r=e.shift(),r&&(t=Object.keys(U4r),e.unshift(U4r))),e.reduce(function(n,a){return a==null||(a.hasOwnProperty("noEchoBack")&&!a.hasOwnProperty("hideEchoBack")&&(a.hideEchoBack=a.noEchoBack,delete a.noEchoBack),a.hasOwnProperty("noTrim")&&!a.hasOwnProperty("keepWhitespace")&&(a.keepWhitespace=a.noTrim,delete a.noTrim),r||(t=Object.keys(a)),t.forEach(function(o){var l;if(a.hasOwnProperty(o))switch(l=a[o],o){case"mask":case"limitMessage":case"defaultInput":case"encoding":l=l!=null?l+"":"",l&&o!=="limitMessage"&&(l=l.replace(/[\r\n]/g,"")),n[o]=l;break;case"bufferSize":!isNaN(l=parseInt(l,10))&&typeof l=="number"&&(n[o]=l);break;case"displayOnly":case"keyIn":case"hideEchoBack":case"caseSensitive":case"keepWhitespace":case"history":case"cd":n[o]=!!l;break;case"limit":case"trueValue":case"falseValue":n[o]=Cml(l,function(A){var f=typeof A;return f==="string"||f==="number"||f==="function"||A instanceof RegExp}).map(function(A){return typeof A=="string"?A.replace(/[\r\n]/g,""):A});break;case"print":case"phContent":case"preCheck":n[o]=typeof l=="function"?l:void 0;break;case"prompt":case"display":n[o]=l??"";break}})),n},{})}function z4r(e,t,r){return t.some(function(n){var a=typeof n;return a==="string"?r?e===n:e.toLowerCase()===n.toLowerCase():a==="number"?parseFloat(e)===n:a==="function"?n(e):n instanceof RegExp?n.test(e):!1})}function tJr(e,t){var r=Rue.normalize(p0e?(process.env.HOMEDRIVE||"")+(process.env.HOMEPATH||""):process.env.HOME||"").replace(/[\/\\]+$/,"");return e=Rue.normalize(e),t?e.replace(/^~(?=\/|\\|$)/,r):e.replace(new RegExp("^"+eJr(r)+"(?=\\/|\\\\|$)",p0e?"i":""),"~")}function wGe(e,t){var r="(?:\\(([\\s\\S]*?)\\))?(\\w+|.-.)(?:\\(([\\s\\S]*?)\\))?",n=new RegExp("(\\$)?(\\$<"+r+">)","g"),a=new RegExp("(\\$)?(\\$\\{"+r+"\\})","g");function o(l,A,f,I,C,b){var E;return A||typeof(E=t(C))!="string"?f:E?(I||"")+E+(b||""):""}return e.replace(n,o).replace(a,o)}function kus(e,t,r){var n,a=[],o=-1,l=0,A="",f;function I(C,b){return b.length>3?(C.push(b[0]+"..."+b[b.length-1]),f=!0):b.length&&(C=C.concat(b)),C}return n=e.reduce(function(C,b){return C.concat((b+"").split(""))},[]).reduce(function(C,b){var E,N;return t||(b=b.toLowerCase()),E=/^\d$/.test(b)?1:/^[A-Z]$/.test(b)?2:/^[a-z]$/.test(b)?3:0,r&&E===0?A+=b:(N=b.charCodeAt(0),E&&E===o&&N===l+1?a.push(b):(C=I(C,a),a=[b],o=E),l=N),C},[]),n=I(n,a),A&&(n.push(A),f=!0),{values:n,suppressed:f}}function xus(e,t){return e.join(e.length>2?", ":t?" / ":"/")}function Gus(e,t){var r,n,a={},o;if(t.phContent&&(r=t.phContent(e,t)),typeof r!="string")switch(e){case"hideEchoBack":case"mask":case"defaultInput":case"caseSensitive":case"keepWhitespace":case"encoding":case"bufferSize":case"history":case"cd":r=t.hasOwnProperty(e)?typeof t[e]=="boolean"?t[e]?"on":"off":t[e]+"":"";break;case"limit":case"trueValue":case"falseValue":n=t[t.hasOwnProperty(e+"Src")?e+"Src":e],t.keyIn?(a=kus(n,t.caseSensitive),n=a.values):n=n.filter(function(l){var A=typeof l;return A==="string"||A==="number"}),r=xus(n,a.suppressed);break;case"limitCount":case"limitCountNotZero":r=t[t.hasOwnProperty("limitSrc")?"limitSrc":"limit"].length,r=r||e!=="limitCountNotZero"?r+"":"";break;case"lastInput":r=$4r;break;case"cwd":case"CWD":case"cwdHome":r=process.cwd(),e==="CWD"?r=Rue.basename(r):e==="cwdHome"&&(r=tJr(r));break;case"date":case"time":case"localeDate":case"localeTime":r=new Date()["to"+e.replace(/^./,function(l){return l.toUpperCase()})+"String"]();break;default:typeof(o=(e.match(/^history_m(\d+)$/)||[])[1])=="string"&&(r=d0e[d0e.length-o]||"")}return r}function Fus(e){var t=/^(.)-(.)$/.exec(e),r="",n,a,o,l;if(!t)return null;for(n=t[1].charCodeAt(0),a=t[2].charCodeAt(0),l=n +And the length must be: $`,trueValue:null,falseValue:null,caseSensitive:!0},t,{history:!1,cd:!1,phContent:function(N){return N==="charlist"?r.text:N==="length"?n+"..."+a:null}}),l,A,f,I,C,b,E;for(t=t||{},l=wGe(t.charlist?t.charlist+"":"$",Fus),(isNaN(n=parseInt(t.min,10))||typeof n!="number")&&(n=12),(isNaN(a=parseInt(t.max,10))||typeof a!="number")&&(a=24),I=new RegExp("^["+eJr(l)+"]{"+n+","+a+"}$"),r=kus([l],o.caseSensitive,!0),r.text=xus(r.values,r.suppressed),A=t.confirmMessage!=null?t.confirmMessage:"Reinput a same one to confirm it: ",f=t.unmatchMessage!=null?t.unmatchMessage:"It differs from first one. Hit only the Enter key if you want to retry from first one.",e==null&&(e="Input new password: "),C=o.limitMessage;!E;)o.limit=I,o.limitMessage=C,b=Dh.question(e,o),o.limit=[b,""],o.limitMessage=f,E=Dh.question(A,o);return b};function Vus(e,t,r){var n;function a(o){return n=r(o),!isNaN(n)&&typeof n=="number"}return Dh.question(e,BD({limitMessage:"Input valid number, please."},t,{limit:a,cd:!1})),n}Dh.questionInt=function(e,t){return Vus(e,t,function(r){return parseInt(r,10)})};Dh.questionFloat=function(e,t){return Vus(e,t,parseFloat)};Dh.questionPath=function(e,t){var r,n="",a=BD({hideEchoBack:!1,limitMessage:`$Input valid path, please.$<( Min:)min>$<( Max:)max>`,history:!0,cd:!0},t,{keepWhitespace:!1,limit:function(o){var l,A,f;o=tJr(o,!0),n="";function I(C){C.split(/\/|\\/).reduce(function(b,E){var N=Rue.resolve(b+=E+Rue.sep);if(!fb.existsSync(N))fb.mkdirSync(N);else if(!fb.statSync(N).isDirectory())throw new Error("Non directory already exists: "+N);return b},"")}try{if(l=fb.existsSync(o),r=l?fb.realpathSync(o):Rue.resolve(o),!t.hasOwnProperty("exists")&&!l||typeof t.exists=="boolean"&&t.exists!==l)return n=(l?"Already exists":"No such file or directory")+": "+r,!1;if(!l&&t.create&&(t.isDirectory?I(r):(I(Rue.dirname(r)),fb.closeSync(fb.openSync(r,"w"))),r=fb.realpathSync(r)),l&&(t.min||t.max||t.isFile||t.isDirectory)){if(A=fb.statSync(r),t.isFile&&!A.isFile())return n="Not file: "+r,!1;if(t.isDirectory&&!A.isDirectory())return n="Not directory: "+r,!1;if(t.min&&A.size<+t.min||t.max&&A.size>+t.max)return n="Size "+A.size+" is out of range: "+r,!1}if(typeof t.validate=="function"&&(f=t.validate(r))!==!0)return typeof f=="string"&&(n=f),!1}catch(C){return n=C+"",!1}return!0},phContent:function(o){return o==="error"?n:o!=="min"&&o!=="max"?null:t.hasOwnProperty(o)?t[o]+"":""}});return t=t||{},e==null&&(e='Input path (you can "cd" and "pwd"): '),Dh.question(e,a),r};function Wus(e,t){var r={},n={};return typeof e=="object"?(Object.keys(e).forEach(function(a){typeof e[a]=="function"&&(n[t.caseSensitive?a:a.toLowerCase()]=e[a])}),r.preCheck=function(a){var o;return r.args=q4r(a),o=r.args[0]||"",t.caseSensitive||(o=o.toLowerCase()),r.hRes=o!=="_"&&n.hasOwnProperty(o)?n[o].apply(a,r.args.slice(1)):n.hasOwnProperty("_")?n._.apply(a,r.args):null,{res:a,forceNext:!1}},n.hasOwnProperty("_")||(r.limit=function(){var a=r.args[0]||"";return t.caseSensitive||(a=a.toLowerCase()),n.hasOwnProperty(a)})):r.preCheck=function(a){return r.args=q4r(a),r.hRes=typeof e=="function"?e.apply(a,r.args):!0,{res:a,forceNext:!1}},r}Dh.promptCL=function(e,t){var r=BD({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Wus(e,r);return r.limit=n.limit,r.preCheck=n.preCheck,Dh.prompt(r),n.args};Dh.promptLoop=function(e,t){for(var r=BD({hideEchoBack:!1,trueValue:null,falseValue:null,caseSensitive:!1,history:!0},t);!e(Dh.prompt(r)););};Dh.promptCLLoop=function(e,t){var r=BD({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Wus(e,r);for(r.limit=n.limit,r.preCheck=n.preCheck;Dh.prompt(r),!n.hRes;);};Dh.promptSimShell=function(e){return Dh.prompt(BD({hideEchoBack:!1,history:!0},e,{prompt:function(){return p0e?"$>":(process.env.USER||"")+(process.env.HOSTNAME?"@"+process.env.HOSTNAME.replace(/\..*$/,""):"")+":$$ "}()}))};function Ous(e,t,r){var n;return e==null&&(e="Are you sure? "),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s*:?\s*$/,"")+" [y/n]: "),n=Dh.keyIn(e,BD(t,{hideEchoBack:!1,limit:r,trueValue:"y",falseValue:"n",caseSensitive:!1})),typeof n=="boolean"?n:""}Dh.keyInYN=function(e,t){return Ous(e,t)};Dh.keyInYNStrict=function(e,t){return Ous(e,t,"yn")};Dh.keyInPause=function(e,t){e==null&&(e="Continue..."),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s+$/,"")+" (Hit any key)"),Dh.keyIn(e,BD({limit:null},t,{hideEchoBack:!0,mask:""}))};Dh.keyInSelect=function(e,t,r){var n=BD({hideEchoBack:!1},r,{trueValue:null,falseValue:null,caseSensitive:!1,phContent:function(f){return f==="itemsCount"?e.length+"":f==="firstItem"?(e[0]+"").trim():f==="lastItem"?(e[e.length-1]+"").trim():null}}),a="",o={},l=49,A=` `;if(!Array.isArray(e)||!e.length||e.length>35)throw"`items` must be Array (max length: 35).";return e.forEach(function(f,I){var C=String.fromCharCode(l);a+=C,o[C]=I,A+="["+C+"] "+(f+"").trim()+` `,l=l===57?97:l+1}),(!r||r.cancel!==!1)&&(a+="0",o[0]=-1,A+="[0] "+(r&&r.cancel!=null&&typeof r.cancel!="boolean"?(r.cancel+"").trim():"CANCEL")+` `),n.limit=a,A+=` -`,t==null&&(t="Choose one from list: "),(t+="")&&((!r||r.guide!==!1)&&(t=t.replace(/\s*:?\s*$/,"")+" [$]: "),A+=t),o[Dh.keyIn(A,n).toLowerCase()]};Dh.getRawInput=function(){return sGt};function s7e(e,t){var r;return t.length&&(r={},r[e]=t[0]),Dh.setDefaultOptions(r)[e]}Dh.setPrint=function(){return s7e("print",arguments)};Dh.setPrompt=function(){return s7e("prompt",arguments)};Dh.setEncoding=function(){return s7e("encoding",arguments)};Dh.setMask=function(){return s7e("mask",arguments)};Dh.setBufferSize=function(){return s7e("bufferSize",arguments)}});var j4r=H((exports,module)=>{(function(){var version={major:0,minor:2,patch:81,status:"beta"};tau_file_system={files:{},open:function(e,t,r){var n=tau_file_system.files[e];if(!n){if(r==="read")return null;n={path:e,text:"",type:t,get:function(a,o){return o===this.text.length||o>this.text.length?"end_of_file":this.text.substring(o,o+a)},put:function(a,o){return o==="end_of_file"?(this.text+=a,!0):o==="past_end_of_file"?null:(this.text=this.text.substring(0,o)+a+this.text.substring(o+a.length),!0)},get_byte:function(a){if(a==="end_of_stream")return-1;var o=Math.floor(a/2);if(this.text.length<=o)return-1;var l=codePointAt(this.text[Math.floor(a/2)],0);return a%2===0?l&255:l/256>>>0},put_byte:function(a,o){var l=o==="end_of_stream"?this.text.length:Math.floor(o/2);if(this.text.length>>0,A=(A&255)<<8|a&255):(A=A&255,A=(a&255)<<8|A&255),this.text.length===l?this.text+=fromCodePoint(A):this.text=this.text.substring(0,l)+fromCodePoint(A)+this.text.substring(l+1),!0},flush:function(){return!0},close:function(){var a=tau_file_system.files[this.path];return a?!0:null}},tau_file_system.files[e]=n}return r==="write"&&(n.text=""),n}},tau_user_input={buffer:"",get:function(e,t){for(var r;tau_user_input.buffer.length]: "),A+=t),o[Dh.keyIn(A,n).toLowerCase()]};Dh.getRawInput=function(){return sGt};function i7e(e,t){var r;return t.length&&(r={},r[e]=t[0]),Dh.setDefaultOptions(r)[e]}Dh.setPrint=function(){return i7e("print",arguments)};Dh.setPrompt=function(){return i7e("prompt",arguments)};Dh.setEncoding=function(){return i7e("encoding",arguments)};Dh.setMask=function(){return i7e("mask",arguments)};Dh.setBufferSize=function(){return i7e("bufferSize",arguments)}});var rJr=H((exports,module)=>{(function(){var version={major:0,minor:2,patch:81,status:"beta"};tau_file_system={files:{},open:function(e,t,r){var n=tau_file_system.files[e];if(!n){if(r==="read")return null;n={path:e,text:"",type:t,get:function(a,o){return o===this.text.length||o>this.text.length?"end_of_file":this.text.substring(o,o+a)},put:function(a,o){return o==="end_of_file"?(this.text+=a,!0):o==="past_end_of_file"?null:(this.text=this.text.substring(0,o)+a+this.text.substring(o+a.length),!0)},get_byte:function(a){if(a==="end_of_stream")return-1;var o=Math.floor(a/2);if(this.text.length<=o)return-1;var l=codePointAt(this.text[Math.floor(a/2)],0);return a%2===0?l&255:l/256>>>0},put_byte:function(a,o){var l=o==="end_of_stream"?this.text.length:Math.floor(o/2);if(this.text.length>>0,A=(A&255)<<8|a&255):(A=A&255,A=(a&255)<<8|A&255),this.text.length===l?this.text+=fromCodePoint(A):this.text=this.text.substring(0,l)+fromCodePoint(A)+this.text.substring(l+1),!0},flush:function(){return!0},close:function(){var a=tau_file_system.files[this.path];return a?!0:null}},tau_file_system.files[e]=n}return r==="write"&&(n.text=""),n}},tau_user_input={buffer:"",get:function(e,t){for(var r;tau_user_input.buffer.length\?\@\^\~\\]+|'(?:(?:'')|(?:\\')|[^'])*')/,number:/^(?:0o[0-7]+|0x[0-9a-fA-F]+|0b[01]+|0'(?:''|\\[abfnrtv\\'"`]|\\x?\d+\\|[^\\])|\d+(?:\.\d+(?:[eE][+-]?\d+)?)?)/,string:/^(?:"([^"]|""|\\")*"|`([^`]|``|\\`)*`)/,l_brace:/^(?:\[)/,r_brace:/^(?:\])/,l_bracket:/^(?:\{)/,r_bracket:/^(?:\})/,bar:/^(?:\|)/,l_paren:/^(?:\()/,r_paren:/^(?:\))/};function replace(e,t){return e.get_flag("char_conversion").id==="on"?t.replace(/./g,function(r){return e.get_char_conversion(r)}):t}function Tokenizer(e){this.thread=e,this.text="",this.tokens=[]}Tokenizer.prototype.set_last_tokens=function(e){return this.tokens=e},Tokenizer.prototype.new_text=function(e){this.text=e,this.tokens=[]},Tokenizer.prototype.get_tokens=function(e){var t,r=0,n=0,a=0,o=[],l=!1;if(e){var A=this.tokens[e-1];r=A.len,t=replace(this.thread,this.text.substr(A.len)),n=A.line,a=A.start}else t=this.text;if(/^\s*$/.test(t))return null;for(;t!=="";){var f=[],I=!1;if(/^\n/.exec(t)!==null){n++,a=0,r++,t=t.replace(/\n/,""),l=!0;continue}for(var C in rules)if(rules.hasOwnProperty(C)){var b=rules[C].exec(t);b&&f.push({value:b[0],name:C,matches:b})}if(!f.length)return this.set_last_tokens([{value:t,matches:[],name:"lexical",line:n,start:a}]);var A=reduce(f,function(Q,J){return Q.value.length>=J.value.length?Q:J});switch(A.start=a,A.line=n,t=t.replace(A.value,""),a+=A.value.length,r+=A.value.length,A.name){case"atom":A.raw=A.value,A.value.charAt(0)==="'"&&(A.value=escapeAtom(A.value.substr(1,A.value.length-2),"'"),A.value===null&&(A.name="lexical",A.value="unknown escape sequence"));break;case"number":A.float=A.value.substring(0,2)!=="0x"&&A.value.match(/[.eE]/)!==null&&A.value!=="0'.",A.value=convertNum(A.value),A.blank=I;break;case"string":var E=A.value.charAt(0);A.value=escapeAtom(A.value.substr(1,A.value.length-2),E),A.value===null&&(A.name="lexical",A.value="unknown escape sequence");break;case"whitespace":var N=o[o.length-1];N&&(N.space=!0),I=!0;continue;case"r_bracket":o.length>0&&o[o.length-1].name==="l_bracket"&&(A=o.pop(),A.name="atom",A.value="{}",A.raw="{}",A.space=!1);break;case"r_brace":o.length>0&&o[o.length-1].name==="l_brace"&&(A=o.pop(),A.name="atom",A.value="[]",A.raw="[]",A.space=!1);break}A.len=r,o.push(A),I=!1}var B=this.set_last_tokens(o);return B.length===0?null:B};function parseExpr(e,t,r,n,a){if(!t[r])return{type:ERROR,value:pl.error.syntax(t[r-1],"expression expected",!0)};var o;if(n==="0"){var l=t[r];switch(l.name){case"number":return{type:SUCCESS,len:r+1,value:new pl.type.Num(l.value,l.float)};case"variable":return{type:SUCCESS,len:r+1,value:new pl.type.Var(l.value)};case"string":var A;switch(e.get_flag("double_quotes").id){case"atom":A=new Term(l.value,[]);break;case"codes":A=new Term("[]",[]);for(var f=l.value.length-1;f>=0;f--)A=new Term(".",[new pl.type.Num(codePointAt(l.value,f),!1),A]);break;case"chars":A=new Term("[]",[]);for(var f=l.value.length-1;f>=0;f--)A=new Term(".",[new pl.type.Term(l.value.charAt(f),[]),A]);break}return{type:SUCCESS,len:r+1,value:A};case"l_paren":var B=parseExpr(e,t,r+1,e.__get_max_priority(),!0);return B.type!==SUCCESS?B:t[B.len]&&t[B.len].name==="r_paren"?(B.len++,B):{type:ERROR,derived:!0,value:pl.error.syntax(t[B.len]?t[B.len]:t[B.len-1],") or operator expected",!t[B.len])};case"l_bracket":var B=parseExpr(e,t,r+1,e.__get_max_priority(),!0);return B.type!==SUCCESS?B:t[B.len]&&t[B.len].name==="r_bracket"?(B.len++,B.value=new Term("{}",[B.value]),B):{type:ERROR,derived:!0,value:pl.error.syntax(t[B.len]?t[B.len]:t[B.len-1],"} or operator expected",!t[B.len])}}var I=parseTerm(e,t,r,a);return I.type===SUCCESS||I.derived||(I=parseList(e,t,r),I.type===SUCCESS||I.derived)?I:{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"unexpected token")}}var C=e.__get_max_priority(),b=e.__get_next_priority(n),E=r;if(t[r].name==="atom"&&t[r+1]&&(t[r].space||t[r+1].name!=="l_paren")){var l=t[r++],N=e.__lookup_operator_classes(n,l.value);if(N&&N.indexOf("fy")>-1){var B=parseExpr(e,t,r,n,a);if(B.type!==ERROR)return l.value==="-"&&!l.space&&pl.type.is_number(B.value)?{value:new pl.type.Num(-B.value.value,B.value.is_float),len:B.len,type:SUCCESS}:{value:new pl.type.Term(l.value,[B.value]),len:B.len,type:SUCCESS};o=B}else if(N&&N.indexOf("fx")>-1){var B=parseExpr(e,t,r,b,a);if(B.type!==ERROR)return{value:new pl.type.Term(l.value,[B.value]),len:B.len,type:SUCCESS};o=B}}r=E;var B=parseExpr(e,t,r,b,a);if(B.type===SUCCESS){r=B.len;var l=t[r];if(t[r]&&(t[r].name==="atom"&&e.__lookup_operator_classes(n,l.value)||t[r].name==="bar"&&e.__lookup_operator_classes(n,"|"))){var F=b,Q=n,N=e.__lookup_operator_classes(n,l.value);if(N.indexOf("xf")>-1)return{value:new pl.type.Term(l.value,[B.value]),len:++B.len,type:SUCCESS};if(N.indexOf("xfx")>-1){var J=parseExpr(e,t,r+1,F,a);return J.type===SUCCESS?{value:new pl.type.Term(l.value,[B.value,J.value]),len:J.len,type:SUCCESS}:(J.derived=!0,J)}else if(N.indexOf("xfy")>-1){var J=parseExpr(e,t,r+1,Q,a);return J.type===SUCCESS?{value:new pl.type.Term(l.value,[B.value,J.value]),len:J.len,type:SUCCESS}:(J.derived=!0,J)}else if(B.type!==ERROR)for(;;){r=B.len;var l=t[r];if(l&&l.name==="atom"&&e.__lookup_operator_classes(n,l.value)){var N=e.__lookup_operator_classes(n,l.value);if(N.indexOf("yf")>-1)B={value:new pl.type.Term(l.value,[B.value]),len:++r,type:SUCCESS};else if(N.indexOf("yfx")>-1){var J=parseExpr(e,t,++r,F,a);if(J.type===ERROR)return J.derived=!0,J;r=J.len,B={value:new pl.type.Term(l.value,[B.value,J.value]),len:r,type:SUCCESS}}else break}else break}}else o={type:ERROR,value:pl.error.syntax(t[B.len-1],"operator expected")};return B}return B}function parseTerm(e,t,r,n){if(!t[r]||t[r].name==="atom"&&t[r].raw==="."&&!n&&(t[r].space||!t[r+1]||t[r+1].name!=="l_paren"))return{type:ERROR,derived:!1,value:pl.error.syntax(t[r-1],"unfounded token")};var a=t[r],o=[];if(t[r].name==="atom"&&t[r].raw!==","){if(r++,t[r-1].space)return{type:SUCCESS,len:r,value:new pl.type.Term(a.value,o)};if(t[r]&&t[r].name==="l_paren"){if(t[r+1]&&t[r+1].name==="r_paren")return{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1],"argument expected")};var l=parseExpr(e,t,++r,"999",!0);if(l.type===ERROR)return l.derived?l:{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],"argument expected",!t[r])};for(o.push(l.value),r=l.len;t[r]&&t[r].name==="atom"&&t[r].value===",";){if(l=parseExpr(e,t,r+1,"999",!0),l.type===ERROR)return l.derived?l:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};o.push(l.value),r=l.len}if(t[r]&&t[r].name==="r_paren")r++;else return{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],", or ) expected",!t[r])}}return{type:SUCCESS,len:r,value:new pl.type.Term(a.value,o)}}return{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"term expected")}}function parseList(e,t,r){if(!t[r])return{type:ERROR,derived:!1,value:pl.error.syntax(t[r-1],"[ expected")};if(t[r]&&t[r].name==="l_brace"){var n=parseExpr(e,t,++r,"999",!0),a=[n.value],o=void 0;if(n.type===ERROR)return t[r]&&t[r].name==="r_brace"?{type:SUCCESS,len:r+1,value:new pl.type.Term("[]",[])}:{type:ERROR,derived:!0,value:pl.error.syntax(t[r],"] expected")};for(r=n.len;t[r]&&t[r].name==="atom"&&t[r].value===",";){if(n=parseExpr(e,t,r+1,"999",!0),n.type===ERROR)return n.derived?n:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};a.push(n.value),r=n.len}var l=!1;if(t[r]&&t[r].name==="bar"){if(l=!0,n=parseExpr(e,t,r+1,"999",!0),n.type===ERROR)return n.derived?n:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};o=n.value,r=n.len}return t[r]&&t[r].name==="r_brace"?{type:SUCCESS,len:r+1,value:arrayToList(a,o)}:{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],l?"] expected":", or | or ] expected",!t[r])}}return{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"list expected")}}function parseRule(e,t,r){var n=t[r].line,a=parseExpr(e,t,r,e.__get_max_priority(),!1),o=null,l;if(a.type!==ERROR)if(r=a.len,t[r]&&t[r].name==="atom"&&t[r].raw===".")if(r++,pl.type.is_term(a.value)){if(a.value.indicator===":-/2")o=new pl.type.Rule(a.value.args[0],body_conversion(a.value.args[1])),l={value:o,len:r,type:SUCCESS};else if(a.value.indicator==="-->/2"){if(o=rule_to_dcg(new pl.type.Rule(a.value.args[0],a.value.args[1]),e),!pl.type.is_rule(o))return{value:o,len:r,type:ERROR};o.body=body_conversion(o.body),l={value:o,len:r,type:pl.type.is_rule(o)?SUCCESS:ERROR}}else o=new pl.type.Rule(a.value,null),l={value:o,len:r,type:SUCCESS};if(o){var A=o.singleton_variables();A.length>0&&e.throw_warning(pl.warning.singleton(A,o.head.indicator,n))}return l}else return{type:ERROR,value:pl.error.syntax(t[r],"callable expected")};else return{type:ERROR,value:pl.error.syntax(t[r]?t[r]:t[r-1],". or operator expected")};return a}function parseProgram(e,t,r){r=r||{},r.from=r.from?r.from:"$tau-js",r.reconsult=r.reconsult!==void 0?r.reconsult:!0;var n=new Tokenizer(e),a={},o;n.new_text(t);for(var l=0,A=n.get_tokens(l);A!==null&&A[l];){var f=parseRule(e,A,l);if(f.type===ERROR)return new Term("throw",[f.value]);var I=e.session.rules["term_expansion/2"];if(I&&I.length>0){var C=new Thread(e.session),b=f.value.body?new Term(":-",[f.value.head,f.value.body]):f.value.head;b=b.rename(e.session),C.query("term_expansion("+b.toString()+", X)."),C.answer(function(E){if(E&&!pl.type.is_error(E)&&pl.type.is_term(E.links.X)){var N=E.links.X,B=N.indicator===":-/2"?new Rule(N.args[0],N.args[1]):new Rule(N,null);parseProgramExpansion(e,r,a,{value:B,len:f.len,type:f.type})}else parseProgramExpansion(e,r,a,f)})}else parseProgramExpansion(e,r,a,f);l=f.len,f.value.body===null&&f.value.head.indicator===":-/1"&&f.value.head.args[0].indicator==="char_conversion/2"&&(A=n.get_tokens(l),l=0)}return!0}function parseGoalExpansion(e,t,r,n,a){var o=new Thread(e.session);o.__goal_expansion=!0;var l=e.next_free_variable(),A=e.next_free_variable(),f=A+" = "+t+", goal_expansion("+r+", "+l+").";o.query(f),o.answer(function(I){I&&!pl.type.is_error(I)&&I.links[l]&&(n(I.links[A],body_conversion(I.links[l])),parseGoalExpansion(e,a.head(),a.term(),a.set,a))})}function parseQueryExpansion(e,t){var r=new Thread(e.session);r.__goal_expansion=!0;var n=e.next_free_variable(),a="goal_expansion("+t+", "+n+").";r.query(a);var o=r.head_point().substitution.domain();r.answer(function(l){if(l&&!pl.type.is_error(l)&&l.links[n]){for(var A=0;A0){e.renamed_variables={};var l={head:function(){return n.value.head},term:function(){return n.value.body},set:function(A,f){n.value.head=A,n.value.body=f}};parseGoalExpansion(e,n.value.head,body_conversion(n.value.body),l.set,l)}e.add_rule(n.value,t)}}function parseQuery(e,t){var r=new Tokenizer(e);r.new_text(t);var n=0;do{var a=r.get_tokens(n);if(a===null)break;var o=parseExpr(e,a,0,e.__get_max_priority(),!1);if(o.type!==ERROR){var l=o.len,A=l;if(a[l]&&a[l].name==="atom"&&a[l].raw==="."){o.value=body_conversion(o.value);var f=e.session.rules["goal_expansion/2"];!e.__goal_expansion&&f&&f.length>0?parseQueryExpansion(e,o.value):e.add_goal(o.value)}else{var I=a[l];return new Term("throw",[pl.error.syntax(I||a[l-1],". or operator expected",!I)])}n=o.len+1}else return new Term("throw",[o.value])}while(!0);return!0}function rule_to_dcg(e,t){e=e.rename(t);var r=t.next_free_variable(),n=body_to_dcg(e.body,r,t);if(n.error)return n.value;if(e.body=n.value,e.head.indicator===",/2"){var a=e.head.args[1];e.head=e.head.args[0];var o=t.next_free_variable(),l=a;if(!pl.type.is_list(l))return pl.error.type("list",l,"DCG/0");if(l.indicator==="[]/0")a=n.variable;else{for(;l.indicator==="./2"&&pl.type.is_list(l)&&l.args[1].indicator!=="[]/0";)l=l.args[1];if(pl.type.is_variable(l))return pl.error.instantiation("DCG/0");if(!pl.type.is_list(l))return pl.error.type("list",a,"DCG/0");l.args[1]=n.variable}e.body=new Term(",",[e.body,new Term("=",[o,a])]),e.head=new Term(e.head.id,e.head.args.concat([r,o]))}else{var A=e.body;pl.type.is_term(A)&&A.indicator===",/2"&&(A=A.args[0]),pl.type.is_term(A)&&A.indicator==="=/2"&&pl.type.is_variable(A.args[0])&&A.args[0]===r&&(r=A.args[1],e.body=e.body.replace(null)),e.head=new Term(e.head.id,e.head.args.concat([r,n.variable]))}return e}function body_to_dcg(e,t,r){var n;if(pl.type.is_term(e)&&e.indicator==="!/0")return n=r.next_free_variable(),{value:new Term(",",[e,new Term("=",[t,n])]),variable:n,error:!1};if(pl.type.is_term(e)&&e.indicator==="\\+/1"){var a=body_to_dcg(e.args[0],t,r);return a.error?a:{value:new Term(e.id,[a.value]),variable:t,error:!1}}else if(pl.type.is_term(e)&&(e.indicator===",/2"||e.indicator==="->/2")){var a=body_to_dcg(e.args[0],t,r);if(a.error)return a;var o=body_to_dcg(e.args[1],a.variable,r);return o.error?o:{value:new Term(e.id,[a.value,o.value]),variable:o.variable,error:!1}}else if(pl.type.is_term(e)&&e.indicator===";/2"){var a=body_to_dcg(e.args[0],t,r);if(a.error)return a;var o=body_to_dcg(e.args[1],t,r);return o.error?o:{value:new Term(",",[new Term(";",[a.value,o.value]),new Term("=",[a.variable,o.variable])]),variable:o.variable,error:!1}}else{if(pl.type.is_term(e)&&e.indicator==="{}/1")return n=r.next_free_variable(),{value:new Term(",",[e.args[0],new Term("=",[t,n])]),variable:n,error:!1};if(pl.type.is_empty_list(e))return{value:new Term("true",[]),variable:t,error:!1};if(pl.type.is_list(e)){n=r.next_free_variable();for(var l=e,A;l.indicator==="./2";)A=l,l=l.args[1];return pl.type.is_variable(l)?{value:pl.error.instantiation("DCG/0"),variable:t,error:!0}:pl.type.is_empty_list(l)?(A.args[1]=n,{value:new Term("=",[t,e]),variable:n,error:!1}):{value:pl.error.type("list",e,"DCG/0"),variable:t,error:!0}}else return pl.type.is_callable(e)?(n=r.next_free_variable(),e=new Term(e.id,e.args.concat([t,n])),{value:e,variable:n,error:!1}):{value:pl.error.type("callable",e,"DCG/0"),variable:t,error:!0}}}function body_conversion(e){return pl.type.is_variable(e)?new Term("call",[e]):pl.type.is_term(e)&&[",/2",";/2","->/2"].indexOf(e.indicator)!==-1?new Term(e.id,[body_conversion(e.args[0]),body_conversion(e.args[1])]):e}function arrayToList(e,t){for(var r=t||new Term("[]",[]),n=e.length-1;n>=0;n--)r=new Term(".",[e[n],r]);return r}function remove(e,t){for(var r=e.length-1;r>=0;r--)e[r]===t&&e.splice(r,1)}function nub(e){for(var t={},r=[],n=0;n=0;t--)if(e.charAt(t)==="/")return new Term("/",[new Term(e.substring(0,t)),new Num(parseInt(e.substring(t+1)),!1)])}function Var(e){this.id=e}function Num(e,t){this.is_float=t!==void 0?t:parseInt(e)!==e,this.value=this.is_float?e:parseInt(e)}var term_ref=0;function Term(e,t,r){term_ref++,this.ref=r||term_ref,this.id=e,this.args=t||[],this.indicator=e+"/"+this.args.length}var stream_ref=0;function Stream(e,t,r,n,a,o){this.id=stream_ref++,this.stream=e,this.mode=t,this.alias=r,this.type=n!==void 0?n:"text",this.reposition=a!==void 0?a:!0,this.eof_action=o!==void 0?o:"eof_code",this.position=this.mode==="append"?"end_of_stream":0,this.output=this.mode==="write"||this.mode==="append",this.input=this.mode==="read"}function Substitution(e,t){e=e||{},t=t||{},this.links=e,this.attrs=t}function State(e,t,r){t=t||new Substitution,r=r||null,this.goal=e,this.substitution=t,this.parent=r}function Rule(e,t,r){this.head=e,this.body=t,this.dynamic=r||!1}function Session(e){e=e===void 0||e<=0?1e3:e,this.rules={},this.src_predicates={},this.rename=0,this.modules=[],this.thread=new Thread(this),this.total_threads=1,this.renamed_variables={},this.public_predicates={},this.multifile_predicates={},this.limit=e,this.streams={user_input:new Stream(nodejs_flag?nodejs_user_input:tau_user_input,"read","user_input","text",!1,"reset"),user_output:new Stream(nodejs_flag?nodejs_user_output:tau_user_output,"write","user_output","text",!1,"eof_code")},this.file_system=nodejs_flag?nodejs_file_system:tau_file_system,this.standard_input=this.streams.user_input,this.standard_output=this.streams.user_output,this.current_input=this.streams.user_input,this.current_output=this.streams.user_output,this.format_success=function(t){return t.substitution},this.format_error=function(t){return t.goal},this.flag={bounded:pl.flag.bounded.value,max_integer:pl.flag.max_integer.value,min_integer:pl.flag.min_integer.value,integer_rounding_function:pl.flag.integer_rounding_function.value,char_conversion:pl.flag.char_conversion.value,debug:pl.flag.debug.value,max_arity:pl.flag.max_arity.value,unknown:pl.flag.unknown.value,double_quotes:pl.flag.double_quotes.value,occurs_check:pl.flag.occurs_check.value,dialect:pl.flag.dialect.value,version_data:pl.flag.version_data.value,nodejs:pl.flag.nodejs.value,argv:pl.flag.argv.value},this.__loaded_modules=[],this.__char_conversion={},this.__operators={1200:{":-":["fx","xfx"],"-->":["xfx"],"?-":["fx"]},1100:{";":["xfy"]},1050:{"->":["xfy"]},1e3:{",":["xfy"]},900:{"\\+":["fy"]},700:{"=":["xfx"],"\\=":["xfx"],"==":["xfx"],"\\==":["xfx"],"@<":["xfx"],"@=<":["xfx"],"@>":["xfx"],"@>=":["xfx"],"=..":["xfx"],is:["xfx"],"=:=":["xfx"],"=\\=":["xfx"],"<":["xfx"],"=<":["xfx"],">":["xfx"],">=":["xfx"]},600:{":":["xfy"]},500:{"+":["yfx"],"-":["yfx"],"/\\":["yfx"],"\\/":["yfx"]},400:{"*":["yfx"],"/":["yfx"],"//":["yfx"],rem:["yfx"],mod:["yfx"],"<<":["yfx"],">>":["yfx"]},200:{"**":["xfx"],"^":["xfy"],"-":["fy"],"+":["fy"],"\\":["fy"]}}}function Thread(e){this.epoch=Date.now(),this.session=e,this.session.total_threads++,this.total_steps=0,this.cpu_time=0,this.cpu_time_last=0,this.points=[],this.debugger=!1,this.debugger_states=[],this.level="top_level/0",this.__calls=[],this.current_limit=this.session.limit,this.warnings=[],this.__goal_expansion=!1}function Module(e,t,r){this.id=e,this.rules=t,this.exports=r,pl.module[e]=this}Module.prototype.exports_predicate=function(e){return this.exports.indexOf(e)!==-1},Var.prototype.unify=function(e,t){if(t&&indexOf(e.variables(),this.id)!==-1&&!pl.type.is_variable(e))return null;var r={};return r[this.id]=e,new Substitution(r)},Num.prototype.unify=function(e,t){return pl.type.is_number(e)&&this.value===e.value&&this.is_float===e.is_float?new Substitution:null},Term.prototype.unify=function(e,t){if(pl.type.is_term(e)&&this.indicator===e.indicator){for(var r=new Substitution,n=0;n=0){var n=this.args[0].value,a=Math.floor(n/26),o=n%26;return"ABCDEFGHIJKLMNOPQRSTUVWXYZ"[o]+(a!==0?a:"")}switch(this.indicator){case"[]/0":case"{}/0":case"!/0":return this.id;case"{}/1":return"{"+this.args[0].toString(e)+"}";case"./2":if(e.ignore_ops===!1){for(var l="["+this.args[0].toString(e),A=this.args[1];A.indicator==="./2";)l+=", "+A.args[0].toString(e),A=A.args[1];return A.indicator!=="[]/0"&&(l+="|"+A.toString(e)),l+="]",l}default:var f=this.id,I=e.session?e.session.lookup_operator(this.id,this.args.length):null;if(e.session===void 0||e.ignore_ops||I===null)return e.quoted&&!/^(!|[a-z][0-9a-zA-Z_]*)$/.test(f)&&f!=="{}"&&f!=="[]"&&(f="'"+redoEscape(f)+"'"),f+(this.args.length?"("+map(this.args,function(F){return F.toString(e)}).join(", ")+")":"");var C=parseInt(I.priority),b=parseInt(t.priority),E=C>b||C===b&&(I.class==="xfx"||I.class==="xfy"&&this.indicator!==t.indicator||I.class==="yfx"&&this.indicator!==t.indicator||this.indicator===t.indicator&&I.class==="yfx"&&r==="right"||this.indicator===t.indicator&&I.class==="xfy"&&r==="left");I.indicator=this.indicator;var N=E?"(":"",B=E?")":"";return this.args.length===0?"("+this.id+")":["fy","fx"].indexOf(I.class)!==-1?N+f+" "+this.args[0].toString(e,I)+B:["yf","xf"].indexOf(I.class)!==-1?N+this.args[0].toString(e,I)+" "+f+B:N+this.args[0].toString(e,I,"left")+" "+this.id+" "+this.args[1].toString(e,I,"right")+B}},Stream.prototype.toString=function(e){return"("+this.id+")"},Substitution.prototype.toString=function(e){var t="{";for(var r in this.links)this.links.hasOwnProperty(r)&&(t!=="{"&&(t+=", "),t+=r+"/"+this.links[r].toString(e));return t+="}",t},State.prototype.toString=function(e){return this.goal===null?"<"+this.substitution.toString(e)+">":"<"+this.goal.toString(e)+", "+this.substitution.toString(e)+">"},Rule.prototype.toString=function(e){return this.body?this.head.toString(e)+" :- "+this.body.toString(e)+".":this.head.toString(e)+"."},Session.prototype.toString=function(e){for(var t="",r=0;r`,trueValue:null,falseValue:null,caseSensitive: `,n+=`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. -`,n+="You should have received a copy of the BSD 3-Clause License along with this program. If not, see https://opensource.org/licenses/BSD-3-Clause",e.prepend([new State(t.goal.replace(new Term("write",[new Term(n,[])])),t.substitution,t)])}},flag:{bounded:{allowed:[new Term("true"),new Term("false")],value:new Term("true"),changeable:!1},max_integer:{allowed:[new Num(Number.MAX_SAFE_INTEGER)],value:new Num(Number.MAX_SAFE_INTEGER),changeable:!1},min_integer:{allowed:[new Num(Number.MIN_SAFE_INTEGER)],value:new Num(Number.MIN_SAFE_INTEGER),changeable:!1},integer_rounding_function:{allowed:[new Term("down"),new Term("toward_zero")],value:new Term("toward_zero"),changeable:!1},char_conversion:{allowed:[new Term("on"),new Term("off")],value:new Term("on"),changeable:!0},debug:{allowed:[new Term("on"),new Term("off")],value:new Term("off"),changeable:!0},max_arity:{allowed:[new Term("unbounded")],value:new Term("unbounded"),changeable:!1},unknown:{allowed:[new Term("error"),new Term("fail"),new Term("warning")],value:new Term("error"),changeable:!0},double_quotes:{allowed:[new Term("chars"),new Term("codes"),new Term("atom")],value:new Term("codes"),changeable:!0},occurs_check:{allowed:[new Term("false"),new Term("true")],value:new Term("false"),changeable:!0},dialect:{allowed:[new Term("tau")],value:new Term("tau"),changeable:!1},version_data:{allowed:[new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)])],value:new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)]),changeable:!1},nodejs:{allowed:[new Term("yes"),new Term("no")],value:new Term(nodejs_flag?"yes":"no"),changeable:!1},argv:{allowed:[nodejs_arguments],value:nodejs_arguments,changeble:!1}},unify:function(e,t,r){r=r===void 0?!1:r;for(var n=[{left:e,right:t}],a={};n.length!==0;){var o=n.pop();if(e=o.left,t=o.right,e!=t)if(pl.type.is_term(e)&&pl.type.is_term(t)){if(e.indicator!==t.indicator)return null;if(e.indicator==="./2"){for(var l=e,A=t;l.indicator==="./2"&&A.indicator==="./2";)n.push({left:l.args[0],right:A.args[0]}),l=l.args[1],A=A.args[1];n.push({left:l,right:A})}else for(var f=0;fa.value?1:0:a}else return n},operate:function(e,t){if(pl.type.is_operator(t)){for(var r=pl.type.is_operator(t),n=[],a,o=!1,l=0;le.get_flag("max_integer").value||a0?e.start+e.matches[0].length:e.start,a=r?new Term("token_not_found"):new Term("found",[new Term(e.value.toString())]),o=new Term(".",[new Term("line",[new Num(e.line+1)]),new Term(".",[new Term("column",[new Num(n+1)]),new Term(".",[a,new Term("[]",[])])])]);return new Term("error",[new Term("syntax_error",[new Term(t)]),o])},syntax_by_predicate:function(e,t){return new Term("error",[new Term("syntax_error",[new Term(e)]),str_indicator(t)])}},warning:{singleton:function(e,t,r){for(var n=new Term("[]"),a=e.length-1;a>=0;a--)n=new Term(".",[new Var(e[a]),n]);return new Term("warning",[new Term("singleton_variables",[n,str_indicator(t)]),new Term(".",[new Term("line",[new Num(r,!1)]),new Term("[]")])])},failed_goal:function(e,t){return new Term("warning",[new Term("failed_goal",[e]),new Term(".",[new Term("line",[new Num(t,!1)]),new Term("[]")])])}},format_variable:function(e){return"_"+e},format_answer:function(e,t,n){t instanceof Session&&(t=t.thread);var n=n||{};if(n.session=t?t.session:void 0,pl.type.is_error(e))return"uncaught exception: "+e.args[0].toString();if(e===!1)return"false.";if(e===null)return"limit exceeded ;";var a=0,o="";if(pl.type.is_substitution(e)){var l=e.domain(!0);e=e.filter(function(b,E){return!pl.type.is_variable(E)||pl.type.is_variable(E)&&e.has_attributes(b)||indexOf(l,E.id)!==-1&&b!==E.id})}for(var A in e.links)if(e.links.hasOwnProperty(A))if(pl.type.is_variable(e.links[A])&&A===e.links[A].id){var f=e.attrs[A];for(var I in f)f.hasOwnProperty(I)&&(a++,o!==""&&(o+=", "),o+="put_attr("+A+", "+I+", "+f[I].toString(n)+")")}else a++,o!==""&&(o+=", "),o+=A.toString(n)+" = "+e.links[A].toString(n,{priority:"700",class:"xfx",indicator:"=/2"},"right");var C=typeof t>"u"||t.points.length>0?" ;":".";return a===0?"true"+C:o+C},flatten_error:function(e){if(!pl.type.is_error(e))return null;e=e.args[0];var t={};return t.type=e.args[0].id,t.thrown=t.type==="syntax_error"?null:e.args[1].id,t.expected=null,t.found=null,t.representation=null,t.existence=null,t.existence_type=null,t.line=null,t.column=null,t.permission_operation=null,t.permission_type=null,t.evaluation_type=null,t.type==="type_error"||t.type==="domain_error"?(t.expected=e.args[0].args[0].id,t.found=e.args[0].args[1].toString()):t.type==="syntax_error"?e.args[1].indicator==="./2"?(t.expected=e.args[0].args[0].id,t.found=e.args[1].args[1].args[1].args[0],t.found=t.found.id==="token_not_found"?t.found.id:t.found.args[0].id,t.line=e.args[1].args[0].args[0].value,t.column=e.args[1].args[1].args[0].args[0].value):t.thrown=e.args[1].id:t.type==="permission_error"?(t.found=e.args[0].args[2].toString(),t.permission_operation=e.args[0].args[0].id,t.permission_type=e.args[0].args[1].id):t.type==="evaluation_error"?t.evaluation_type=e.args[0].args[0].id:t.type==="representation_error"?t.representation=e.args[0].args[0].id:t.type==="existence_error"&&(t.existence=e.args[0].args[1].toString(),t.existence_type=e.args[0].args[0].id),t},create:function(e){return new pl.type.Session(e)}};typeof module<"u"?module.exports=pl:window.pl=pl})()});var Xus=H(q4r=>{"use strict";Object.defineProperty(q4r,"__esModule",{value:!0});q4r.linkProjectToSession=whl;var Yus=(Wa(),vi(Va)),Pus=mn(),Mus=WO(),YP=Yus.__importDefault(j4r()),Ehl=Yus.__importDefault(Et("vm")),{is_atom:Rue,is_variable:Shl,is_instantiated_list:vhl}=YP.default.type;function Hus(e,t,r){e.prepend(r.map(n=>new YP.default.type.State(t.goal.replace(n),t.substitution,t)))}var Qus=new WeakMap;function z4r(e){let t=Qus.get(e.session);if(t==null)throw new Error("Assertion failed: A project should have been registered for the active session");return t}var Bhl=new YP.default.type.Module("constraints",{"project_workspaces_by_descriptor/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Rue(n)||!Rue(a)){e.throw_error(YP.default.error.instantiation(r.indicator));return}let l=Pus.structUtils.parseIdent(n.id),A=Pus.structUtils.makeDescriptor(l,a.id),I=z4r(e).tryWorkspaceByDescriptor(A);Shl(o)&&I!==null&&Hus(e,t,[new YP.default.type.Term("=",[o,new YP.default.type.Term(String(I.relativeCwd))])]),Rue(o)&&I!==null&&I.relativeCwd===o.id&&e.success(t)},"workspace_field/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Rue(n)||!Rue(a)){e.throw_error(YP.default.error.instantiation(r.indicator));return}let A=z4r(e).tryWorkspaceByCwd(n.id);if(A==null)return;let f=(0,Mus.get)(A.manifest.raw,a.id);typeof f>"u"||Hus(e,t,[new YP.default.type.Term("=",[o,new YP.default.type.Term(typeof f=="object"?JSON.stringify(f):f)])])},"workspace_field_test/3":(e,t,r)=>{let[n,a,o]=r.args;e.prepend([new YP.default.type.State(t.goal.replace(new YP.default.type.Term("workspace_field_test",[n,a,o,new YP.default.type.Term("[]",[])])),t.substitution,t)])},"workspace_field_test/4":(e,t,r)=>{let[n,a,o,l]=r.args;if(!Rue(n)||!Rue(a)||!Rue(o)||!vhl(l)){e.throw_error(YP.default.error.instantiation(r.indicator));return}let f=z4r(e).tryWorkspaceByCwd(n.id);if(f==null)return;let I=(0,Mus.get)(f.manifest.raw,a.id);if(typeof I>"u")return;let C={$$:I};for(let[E,N]of l.toJavaScript().entries())C[`$${E}`]=N;Ehl.default.runInNewContext(o.id,C)&&e.success(t)}},["project_workspaces_by_descriptor/3","workspace_field/3","workspace_field_test/3","workspace_field_test/4"]);function whl(e,t){Qus.set(e,t),e.consult(`:- use_module(library(${Bhl.id})).`)}});var c7e=H(TGe=>{"use strict";Object.defineProperty(TGe,"__esModule",{value:!0});TGe.Constraints=TGe.DependencyType=void 0;var tJr=(Wa(),vi(Va)),vj=mn(),QP=mn(),oGt=Io(),Thl=tJr.__importDefault(vus()),o7e=tJr.__importDefault(j4r()),Jus=tJr.__importStar(n7e()),Rhl=Xus();(0,Thl.default)(o7e.default);var a7e;(function(e){e.Dependencies="dependencies",e.DevDependencies="devDependencies",e.PeerDependencies="peerDependencies"})(a7e||(TGe.DependencyType=a7e={}));var Uus=[a7e.Dependencies,a7e.DevDependencies,a7e.PeerDependencies];function px(e){if(e instanceof o7e.default.type.Num)return e.value;if(e instanceof o7e.default.type.Term)switch(e.indicator){case"throw/1":return px(e.args[0]);case"error/1":return px(e.args[0]);case"error/2":if(e.args[0]instanceof o7e.default.type.Term&&e.args[0].indicator==="syntax_error/1")return Object.assign(px(e.args[0]),...px(e.args[1]));{let t=px(e.args[0]);return t.message+=` (in ${px(e.args[1])})`,t}case"syntax_error/1":return new vj.ReportError(vj.MessageName.PROLOG_SYNTAX_ERROR,`Syntax error: ${px(e.args[0])}`);case"existence_error/2":return new vj.ReportError(vj.MessageName.PROLOG_EXISTENCE_ERROR,`Existence error: ${px(e.args[0])} ${px(e.args[1])} not found`);case"instantiation_error/0":return new vj.ReportError(vj.MessageName.PROLOG_INSTANTIATION_ERROR,"Instantiation error: an argument is variable when an instantiated argument was expected");case"line/1":return{line:px(e.args[0])};case"column/1":return{column:px(e.args[0])};case"found/1":return{found:px(e.args[0])};case"./2":return[px(e.args[0])].concat(px(e.args[1]));case"//2":return`${px(e.args[0])}/${px(e.args[1])}`;default:return e.id}throw`couldn't pretty print because of unsupported node ${e}`}function Kus(e){let t;try{t=px(e)}catch(r){throw typeof r=="string"?new vj.ReportError(vj.MessageName.PROLOG_UNKNOWN_ERROR,`Unknown error: ${e} (note: ${r})`):r}return typeof t.line<"u"&&typeof t.column<"u"&&(t.message+=` at line ${t.line}, column ${t.column}`),t}var $4r=class{constructor(t,r){let n=1e3*t.workspaces.length;this.session=o7e.default.create(n),(0,Rhl.linkProjectToSession)(this.session,t),this.session.consult(":- use_module(library(lists))."),this.session.consult(r)}fetchNextAnswer(){return new Promise(t=>{this.session.answer(r=>{t(r)})})}async*makeQuery(t){let r=this.session.query(t);if(r!==!0)throw Kus(r);for(;;){let n=await this.fetchNextAnswer();if(n===null)throw new vj.ReportError(vj.MessageName.PROLOG_LIMIT_EXCEEDED,"Resolution limit exceeded");if(!n)break;if(n.id==="throw")throw Kus(n);yield n}}};function f0e(e){return e.id==="null"?null:`${e.toJavaScript()}`}function Nhl(e){if(e.id==="null")return null;{let t=e.toJavaScript();if(typeof t!="string")return JSON.stringify(t);try{return JSON.stringify(JSON.parse(t))}catch{return JSON.stringify(t)}}}var eJr=class e{static async find(t){return new e(t)}constructor(t){this.source="",this.project=t;let r=t.configuration.get("constraintsPath");oGt.xfs.existsSync(r)&&(this.source=oGt.xfs.readFileSync(r,"utf8"))}getProjectDatabase(){let t="";for(let r of Uus)t+=`dependency_type(${r}). -`;for(let r of this.project.workspacesByCwd.values()){let n=r.relativeCwd;t+=`workspace(${Nue(n)}). -`,t+=`workspace_ident(${Nue(n)}, ${Nue(QP.structUtils.stringifyIdent(r.anchoredLocator))}). -`,t+=`workspace_version(${Nue(n)}, ${Nue(r.manifest.version)}). -`;for(let a of Uus)for(let o of r.manifest[a].values())t+=`workspace_has_dependency(${Nue(n)}, ${Nue(QP.structUtils.stringifyIdent(o))}, ${Nue(o.range)}, ${a}). +`,n+="You should have received a copy of the BSD 3-Clause License along with this program. If not, see https://opensource.org/licenses/BSD-3-Clause",e.prepend([new State(t.goal.replace(new Term("write",[new Term(n,[])])),t.substitution,t)])}},flag:{bounded:{allowed:[new Term("true"),new Term("false")],value:new Term("true"),changeable:!1},max_integer:{allowed:[new Num(Number.MAX_SAFE_INTEGER)],value:new Num(Number.MAX_SAFE_INTEGER),changeable:!1},min_integer:{allowed:[new Num(Number.MIN_SAFE_INTEGER)],value:new Num(Number.MIN_SAFE_INTEGER),changeable:!1},integer_rounding_function:{allowed:[new Term("down"),new Term("toward_zero")],value:new Term("toward_zero"),changeable:!1},char_conversion:{allowed:[new Term("on"),new Term("off")],value:new Term("on"),changeable:!0},debug:{allowed:[new Term("on"),new Term("off")],value:new Term("off"),changeable:!0},max_arity:{allowed:[new Term("unbounded")],value:new Term("unbounded"),changeable:!1},unknown:{allowed:[new Term("error"),new Term("fail"),new Term("warning")],value:new Term("error"),changeable:!0},double_quotes:{allowed:[new Term("chars"),new Term("codes"),new Term("atom")],value:new Term("codes"),changeable:!0},occurs_check:{allowed:[new Term("false"),new Term("true")],value:new Term("false"),changeable:!0},dialect:{allowed:[new Term("tau")],value:new Term("tau"),changeable:!1},version_data:{allowed:[new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)])],value:new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)]),changeable:!1},nodejs:{allowed:[new Term("yes"),new Term("no")],value:new Term(nodejs_flag?"yes":"no"),changeable:!1},argv:{allowed:[nodejs_arguments],value:nodejs_arguments,changeble:!1}},unify:function(e,t,r){r=r===void 0?!1:r;for(var n=[{left:e,right:t}],a={};n.length!==0;){var o=n.pop();if(e=o.left,t=o.right,e!=t)if(pl.type.is_term(e)&&pl.type.is_term(t)){if(e.indicator!==t.indicator)return null;if(e.indicator==="./2"){for(var l=e,A=t;l.indicator==="./2"&&A.indicator==="./2";)n.push({left:l.args[0],right:A.args[0]}),l=l.args[1],A=A.args[1];n.push({left:l,right:A})}else for(var f=0;fa.value?1:0:a}else return n},operate:function(e,t){if(pl.type.is_operator(t)){for(var r=pl.type.is_operator(t),n=[],a,o=!1,l=0;le.get_flag("max_integer").value||a0?e.start+e.matches[0].length:e.start,a=r?new Term("token_not_found"):new Term("found",[new Term(e.value.toString())]),o=new Term(".",[new Term("line",[new Num(e.line+1)]),new Term(".",[new Term("column",[new Num(n+1)]),new Term(".",[a,new Term("[]",[])])])]);return new Term("error",[new Term("syntax_error",[new Term(t)]),o])},syntax_by_predicate:function(e,t){return new Term("error",[new Term("syntax_error",[new Term(e)]),str_indicator(t)])}},warning:{singleton:function(e,t,r){for(var n=new Term("[]"),a=e.length-1;a>=0;a--)n=new Term(".",[new Var(e[a]),n]);return new Term("warning",[new Term("singleton_variables",[n,str_indicator(t)]),new Term(".",[new Term("line",[new Num(r,!1)]),new Term("[]")])])},failed_goal:function(e,t){return new Term("warning",[new Term("failed_goal",[e]),new Term(".",[new Term("line",[new Num(t,!1)]),new Term("[]")])])}},format_variable:function(e){return"_"+e},format_answer:function(e,t,n){t instanceof Session&&(t=t.thread);var n=n||{};if(n.session=t?t.session:void 0,pl.type.is_error(e))return"uncaught exception: "+e.args[0].toString();if(e===!1)return"false.";if(e===null)return"limit exceeded ;";var a=0,o="";if(pl.type.is_substitution(e)){var l=e.domain(!0);e=e.filter(function(b,E){return!pl.type.is_variable(E)||pl.type.is_variable(E)&&e.has_attributes(b)||indexOf(l,E.id)!==-1&&b!==E.id})}for(var A in e.links)if(e.links.hasOwnProperty(A))if(pl.type.is_variable(e.links[A])&&A===e.links[A].id){var f=e.attrs[A];for(var I in f)f.hasOwnProperty(I)&&(a++,o!==""&&(o+=", "),o+="put_attr("+A+", "+I+", "+f[I].toString(n)+")")}else a++,o!==""&&(o+=", "),o+=A.toString(n)+" = "+e.links[A].toString(n,{priority:"700",class:"xfx",indicator:"=/2"},"right");var C=typeof t>"u"||t.points.length>0?" ;":".";return a===0?"true"+C:o+C},flatten_error:function(e){if(!pl.type.is_error(e))return null;e=e.args[0];var t={};return t.type=e.args[0].id,t.thrown=t.type==="syntax_error"?null:e.args[1].id,t.expected=null,t.found=null,t.representation=null,t.existence=null,t.existence_type=null,t.line=null,t.column=null,t.permission_operation=null,t.permission_type=null,t.evaluation_type=null,t.type==="type_error"||t.type==="domain_error"?(t.expected=e.args[0].args[0].id,t.found=e.args[0].args[1].toString()):t.type==="syntax_error"?e.args[1].indicator==="./2"?(t.expected=e.args[0].args[0].id,t.found=e.args[1].args[1].args[1].args[0],t.found=t.found.id==="token_not_found"?t.found.id:t.found.args[0].id,t.line=e.args[1].args[0].args[0].value,t.column=e.args[1].args[1].args[0].args[0].value):t.thrown=e.args[1].id:t.type==="permission_error"?(t.found=e.args[0].args[2].toString(),t.permission_operation=e.args[0].args[0].id,t.permission_type=e.args[0].args[1].id):t.type==="evaluation_error"?t.evaluation_type=e.args[0].args[0].id:t.type==="representation_error"?t.representation=e.args[0].args[0].id:t.type==="existence_error"&&(t.existence=e.args[0].args[1].toString(),t.existence_type=e.args[0].args[0].id),t},create:function(e){return new pl.type.Session(e)}};typeof module<"u"?module.exports=pl:window.pl=pl})()});var Jus=H(iJr=>{"use strict";Object.defineProperty(iJr,"__esModule",{value:!0});iJr.linkProjectToSession=Sml;var Qus=(Wa(),vi(Va)),Mus=wn(),Hus=PO(),XP=Qus.__importDefault(rJr()),_ml=Qus.__importDefault(Et("vm")),{is_atom:Nue,is_variable:yml,is_instantiated_list:bml}=XP.default.type;function Yus(e,t,r){e.prepend(r.map(n=>new XP.default.type.State(t.goal.replace(n),t.substitution,t)))}var Xus=new WeakMap;function nJr(e){let t=Xus.get(e.session);if(t==null)throw new Error("Assertion failed: A project should have been registered for the active session");return t}var Eml=new XP.default.type.Module("constraints",{"project_workspaces_by_descriptor/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Nue(n)||!Nue(a)){e.throw_error(XP.default.error.instantiation(r.indicator));return}let l=Mus.structUtils.parseIdent(n.id),A=Mus.structUtils.makeDescriptor(l,a.id),I=nJr(e).tryWorkspaceByDescriptor(A);yml(o)&&I!==null&&Yus(e,t,[new XP.default.type.Term("=",[o,new XP.default.type.Term(String(I.relativeCwd))])]),Nue(o)&&I!==null&&I.relativeCwd===o.id&&e.success(t)},"workspace_field/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Nue(n)||!Nue(a)){e.throw_error(XP.default.error.instantiation(r.indicator));return}let A=nJr(e).tryWorkspaceByCwd(n.id);if(A==null)return;let f=(0,Hus.get)(A.manifest.raw,a.id);typeof f>"u"||Yus(e,t,[new XP.default.type.Term("=",[o,new XP.default.type.Term(typeof f=="object"?JSON.stringify(f):f)])])},"workspace_field_test/3":(e,t,r)=>{let[n,a,o]=r.args;e.prepend([new XP.default.type.State(t.goal.replace(new XP.default.type.Term("workspace_field_test",[n,a,o,new XP.default.type.Term("[]",[])])),t.substitution,t)])},"workspace_field_test/4":(e,t,r)=>{let[n,a,o,l]=r.args;if(!Nue(n)||!Nue(a)||!Nue(o)||!bml(l)){e.throw_error(XP.default.error.instantiation(r.indicator));return}let f=nJr(e).tryWorkspaceByCwd(n.id);if(f==null)return;let I=(0,Hus.get)(f.manifest.raw,a.id);if(typeof I>"u")return;let C={$$:I};for(let[E,N]of l.toJavaScript().entries())C[`$${E}`]=N;_ml.default.runInNewContext(o.id,C)&&e.success(t)}},["project_workspaces_by_descriptor/3","workspace_field/3","workspace_field_test/3","workspace_field_test/4"]);function Sml(e,t){Xus.set(e,t),e.consult(`:- use_module(library(${Eml.id})).`)}});var a7e=H(TGe=>{"use strict";Object.defineProperty(TGe,"__esModule",{value:!0});TGe.Constraints=TGe.DependencyType=void 0;var aJr=(Wa(),vi(Va)),Bj=wn(),JP=wn(),oGt=No(),vml=aJr.__importDefault(Bus()),s7e=aJr.__importDefault(rJr()),Uus=aJr.__importStar(r7e()),Bml=Jus();(0,vml.default)(s7e.default);var o7e;(function(e){e.Dependencies="dependencies",e.DevDependencies="devDependencies",e.PeerDependencies="peerDependencies"})(o7e||(TGe.DependencyType=o7e={}));var Kus=[o7e.Dependencies,o7e.DevDependencies,o7e.PeerDependencies];function fx(e){if(e instanceof s7e.default.type.Num)return e.value;if(e instanceof s7e.default.type.Term)switch(e.indicator){case"throw/1":return fx(e.args[0]);case"error/1":return fx(e.args[0]);case"error/2":if(e.args[0]instanceof s7e.default.type.Term&&e.args[0].indicator==="syntax_error/1")return Object.assign(fx(e.args[0]),...fx(e.args[1]));{let t=fx(e.args[0]);return t.message+=` (in ${fx(e.args[1])})`,t}case"syntax_error/1":return new Bj.ReportError(Bj.MessageName.PROLOG_SYNTAX_ERROR,`Syntax error: ${fx(e.args[0])}`);case"existence_error/2":return new Bj.ReportError(Bj.MessageName.PROLOG_EXISTENCE_ERROR,`Existence error: ${fx(e.args[0])} ${fx(e.args[1])} not found`);case"instantiation_error/0":return new Bj.ReportError(Bj.MessageName.PROLOG_INSTANTIATION_ERROR,"Instantiation error: an argument is variable when an instantiated argument was expected");case"line/1":return{line:fx(e.args[0])};case"column/1":return{column:fx(e.args[0])};case"found/1":return{found:fx(e.args[0])};case"./2":return[fx(e.args[0])].concat(fx(e.args[1]));case"//2":return`${fx(e.args[0])}/${fx(e.args[1])}`;default:return e.id}throw`couldn't pretty print because of unsupported node ${e}`}function jus(e){let t;try{t=fx(e)}catch(r){throw typeof r=="string"?new Bj.ReportError(Bj.MessageName.PROLOG_UNKNOWN_ERROR,`Unknown error: ${e} (note: ${r})`):r}return typeof t.line<"u"&&typeof t.column<"u"&&(t.message+=` at line ${t.line}, column ${t.column}`),t}var sJr=class{constructor(t,r){let n=1e3*t.workspaces.length;this.session=s7e.default.create(n),(0,Bml.linkProjectToSession)(this.session,t),this.session.consult(":- use_module(library(lists))."),this.session.consult(r)}fetchNextAnswer(){return new Promise(t=>{this.session.answer(r=>{t(r)})})}async*makeQuery(t){let r=this.session.query(t);if(r!==!0)throw jus(r);for(;;){let n=await this.fetchNextAnswer();if(n===null)throw new Bj.ReportError(Bj.MessageName.PROLOG_LIMIT_EXCEEDED,"Resolution limit exceeded");if(!n)break;if(n.id==="throw")throw jus(n);yield n}}};function f0e(e){return e.id==="null"?null:`${e.toJavaScript()}`}function wml(e){if(e.id==="null")return null;{let t=e.toJavaScript();if(typeof t!="string")return JSON.stringify(t);try{return JSON.stringify(JSON.parse(t))}catch{return JSON.stringify(t)}}}var oJr=class e{static async find(t){return new e(t)}constructor(t){this.source="",this.project=t;let r=t.configuration.get("constraintsPath");oGt.xfs.existsSync(r)&&(this.source=oGt.xfs.readFileSync(r,"utf8"))}getProjectDatabase(){let t="";for(let r of Kus)t+=`dependency_type(${r}). +`;for(let r of this.project.workspacesByCwd.values()){let n=r.relativeCwd;t+=`workspace(${Due(n)}). +`,t+=`workspace_ident(${Due(n)}, ${Due(JP.structUtils.stringifyIdent(r.anchoredLocator))}). +`,t+=`workspace_version(${Due(n)}, ${Due(r.manifest.version)}). +`;for(let a of Kus)for(let o of r.manifest[a].values())t+=`workspace_has_dependency(${Due(n)}, ${Due(JP.structUtils.stringifyIdent(o))}, ${Due(o.range)}, ${a}). `}return t+=`workspace(_) :- false. `,t+=`workspace_ident(_, _) :- false. `,t+=`workspace_version(_, _) :- false. @@ -1473,17 +1473,17 @@ And the length must be: $`,trueValue:null,falseValue:null,caseSensitive: `,t+=`gen_enforced_field(_, _, _) :- false. `,t}get fullSource(){return`${this.getProjectDatabase()} ${this.source} -${this.getDeclarations()}`}createSession(){return new $4r(this.project,this.fullSource)}async processClassic(){let t=this.createSession();return{enforcedDependencies:await this.genEnforcedDependencies(t),enforcedFields:await this.genEnforcedFields(t)}}async process(){let{enforcedDependencies:t,enforcedFields:r}=await this.processClassic(),n=new Map;for(let{workspace:a,dependencyIdent:o,dependencyRange:l,dependencyType:A}of t){let f=Jus.normalizePath([A,QP.structUtils.stringifyIdent(o)]),I=QP.miscUtils.getMapWithDefault(n,a.cwd);QP.miscUtils.getMapWithDefault(I,f).set(l??void 0,new Set)}for(let{workspace:a,fieldPath:o,fieldValue:l}of r){let A=Jus.normalizePath(o),f=QP.miscUtils.getMapWithDefault(n,a.cwd);QP.miscUtils.getMapWithDefault(f,A).set(JSON.parse(l)??void 0,new Set)}return{manifestUpdates:n,reportedErrors:new Map}}async genEnforcedDependencies(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), dependency_type(DependencyType), gen_enforced_dependency(WorkspaceCwd, DependencyIdent, DependencyRange, DependencyType).")){let a=oGt.ppath.resolve(this.project.cwd,f0e(n.links.WorkspaceCwd)),o=f0e(n.links.DependencyIdent),l=f0e(n.links.DependencyRange),A=f0e(n.links.DependencyType);if(a===null||o===null)throw new Error("Invalid rule");let f=this.project.getWorkspaceByCwd(a),I=QP.structUtils.parseIdent(o);r.push({workspace:f,dependencyIdent:I,dependencyRange:l,dependencyType:A})}return QP.miscUtils.sortMap(r,[({dependencyRange:n})=>n!==null?"0":"1",({workspace:n})=>QP.structUtils.stringifyIdent(n.anchoredLocator),({dependencyIdent:n})=>QP.structUtils.stringifyIdent(n)])}async genEnforcedFields(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), gen_enforced_field(WorkspaceCwd, FieldPath, FieldValue).")){let a=oGt.ppath.resolve(this.project.cwd,f0e(n.links.WorkspaceCwd)),o=f0e(n.links.FieldPath),l=Nhl(n.links.FieldValue);if(a===null||o===null)throw new Error("Invalid rule");let A=this.project.getWorkspaceByCwd(a);r.push({workspace:A,fieldPath:o,fieldValue:l})}return QP.miscUtils.sortMap(r,[({workspace:n})=>QP.structUtils.stringifyIdent(n.anchoredLocator),({fieldPath:n})=>n])}async*query(t){let r=this.createSession();for await(let n of r.makeQuery(t)){let a={};for(let[o,l]of Object.entries(n.links))o!=="_"&&(a[o]=f0e(l));yield a}}};TGe.Constraints=eJr;function Nue(e){return typeof e=="string"?`'${e}'`:"[]"}});var zus=H(Jte=>{"use strict";var Dhl=Jte&&Jte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),khl=Jte&&Jte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),xhl=Jte&&Jte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Dhl(t,e,r);return khl(t,e),t};Object.defineProperty(Jte,"__esModule",{value:!0});var Ghl=dl(),jus=mn(),Fhl=mn(),rJr=(Rl(),vi(ng)),l7e=class extends Ghl.BaseCommand{constructor(){super(...arguments),this.json=rJr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.query=rJr.Option.String()}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>xhl(c7e())),r=await jus.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await jus.Project.find(r,this.context.cwd),a=await t.find(n),o=this.query;return o.endsWith(".")||(o=`${o}.`),(await Fhl.StreamReport.start({configuration:r,json:this.json,stdout:this.context.stdout},async A=>{for await(let f of a.query(o)){let I=Array.from(Object.entries(f)),C=I.length,b=I.reduce((E,[N])=>Math.max(E,N.length),0);for(let E=0;En!==null?"0":"1",({workspace:n})=>JP.structUtils.stringifyIdent(n.anchoredLocator),({dependencyIdent:n})=>JP.structUtils.stringifyIdent(n)])}async genEnforcedFields(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), gen_enforced_field(WorkspaceCwd, FieldPath, FieldValue).")){let a=oGt.ppath.resolve(this.project.cwd,f0e(n.links.WorkspaceCwd)),o=f0e(n.links.FieldPath),l=wml(n.links.FieldValue);if(a===null||o===null)throw new Error("Invalid rule");let A=this.project.getWorkspaceByCwd(a);r.push({workspace:A,fieldPath:o,fieldValue:l})}return JP.miscUtils.sortMap(r,[({workspace:n})=>JP.structUtils.stringifyIdent(n.anchoredLocator),({fieldPath:n})=>n])}async*query(t){let r=this.createSession();for await(let n of r.makeQuery(t)){let a={};for(let[o,l]of Object.entries(n.links))o!=="_"&&(a[o]=f0e(l));yield a}}};TGe.Constraints=oJr;function Due(e){return typeof e=="string"?`'${e}'`:"[]"}});var qus=H(Ute=>{"use strict";var Tml=Ute&&Ute.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Rml=Ute&&Ute.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Nml=Ute&&Ute.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Tml(t,e,r);return Rml(t,e),t};Object.defineProperty(Ute,"__esModule",{value:!0});var Dml=sl(),zus=wn(),kml=wn(),cJr=(vl(),vi(ng)),c7e=class extends Dml.BaseCommand{constructor(){super(...arguments),this.json=cJr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.query=cJr.Option.String()}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>Nml(a7e())),r=await zus.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await zus.Project.find(r,this.context.cwd),a=await t.find(n),o=this.query;return o.endsWith(".")||(o=`${o}.`),(await kml.StreamReport.start({configuration:r,json:this.json,stdout:this.context.stdout},async A=>{for await(let f of a.query(o)){let I=Array.from(Object.entries(f)),C=I.length,b=I.reduce((E,[N])=>Math.max(E,N.length),0);for(let E=0;E{"use strict";var Vhl=Ute&&Ute.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Whl=Ute&&Ute.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ohl=Ute&&Ute.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Vhl(t,e,r);return Whl(t,e),t};Object.defineProperty(Ute,"__esModule",{value:!0});var Phl=dl(),qus=mn(),$us=(Rl(),vi(ng)),u7e=class extends Phl.BaseCommand{constructor(){super(...arguments),this.verbose=$us.Option.Boolean("-v,--verbose",!1,{description:"Also print the fact database automatically compiled from the workspace manifests"})}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>Ohl(c7e())),r=await qus.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await qus.Project.find(r,this.context.cwd),a=await t.find(n);this.context.stdout.write(this.verbose?a.fullSource:a.source)}};u7e.paths=[["constraints","source"]];u7e.usage=$us.Command.Usage({category:"Constraints-related commands",description:"print the source code for the constraints",details:"\n This command will print the Prolog source code used by the constraints engine. Adding the `-v,--verbose` flag will print the *full* source code, including the fact database automatically compiled from the workspace manifests.\n ",examples:[["Prints the source code","yarn constraints source"],["Print the source code and the fact database","yarn constraints source -v"]]});Ute.default=u7e});var ngs=H(iJr=>{"use strict";Object.defineProperty(iJr,"__esModule",{value:!0});var rgs=(Wa(),vi(Va)),Mhl=dl(),I0e=mn(),aGt=mn(),nJr=(Rl(),vi(ng)),Hhl=L4r(),tgs=rgs.__importStar(n7e()),g7e=class extends Mhl.BaseCommand{constructor(){super(...arguments),this.fix=nJr.Option.Boolean("--fix",!1,{description:"Attempt to automatically fix unambiguous issues, following a multi-pass process"}),this.json=nJr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await I0e.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await I0e.Project.find(t,this.context.cwd);await r.restoreInstallState();let n=await r.loadUserConfig(),a;if(n?.constraints)a=new Hhl.ModernEngine(r);else{let{Constraints:f}=await Promise.resolve().then(()=>rgs.__importStar(c7e()));a=await f.find(r)}let o,l=!1,A=!1;for(let f=this.fix?10:1;f>0;--f){let I=await a.process();if(!I)break;let{changedWorkspaces:C,remainingErrors:b}=tgs.applyEngineReport(r,I,{fix:this.fix}),E=[];for(let[N,B]of C){let F=N.manifest.indent;N.manifest=new I0e.Manifest,N.manifest.indent=F,N.manifest.load(B),E.push(N.persistManifest())}if(await Promise.all(E),!(C.size>0&&f>1)){o=tgs.convertReportToRoot(b,{configuration:t}),l=!1,A=!0;for(let[,N]of b)for(let B of N)B.fixable?l=!0:A=!1}}if(o.children.length===0)return 0;if(l){let f=A?`Those errors can all be fixed by running ${aGt.formatUtils.pretty(t,"yarn constraints --fix",aGt.formatUtils.Type.CODE)}`:`Errors prefixed by '\u2699' can be fixed by running ${aGt.formatUtils.pretty(t,"yarn constraints --fix",aGt.formatUtils.Type.CODE)}`;await I0e.StreamReport.start({configuration:t,stdout:this.context.stdout,includeNames:!1,includeFooter:!1},async I=>{I.reportInfo(I0e.MessageName.UNNAMED,f),I.reportSeparator()})}return o.children=I0e.miscUtils.sortMap(o.children,f=>f.value[1]),I0e.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1}),1}};g7e.paths=[["constraints"]];g7e.usage=nJr.Command.Usage({category:"Constraints-related commands",description:"check that the project constraints are met",details:` + `,examples:[["List all dependencies throughout the workspace","yarn constraints query 'workspace_has_dependency(_, DependencyName, _, _).'"]]});Ute.default=c7e;function xml(e){return typeof e!="string"?`${e}`:e.match(/^[a-zA-Z][a-zA-Z0-9_]+$/)?e:`'${e}'`}function Gml(e,t){let r=e===0,n=e===t-1;return r&&n?"":r?"\u250C ":n?"\u2514 ":"\u2502 "}});var tgs=H(Kte=>{"use strict";var Fml=Kte&&Kte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Zml=Kte&&Kte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Lml=Kte&&Kte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Fml(t,e,r);return Zml(t,e),t};Object.defineProperty(Kte,"__esModule",{value:!0});var Vml=sl(),$us=wn(),egs=(vl(),vi(ng)),l7e=class extends Vml.BaseCommand{constructor(){super(...arguments),this.verbose=egs.Option.Boolean("-v,--verbose",!1,{description:"Also print the fact database automatically compiled from the workspace manifests"})}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>Lml(a7e())),r=await $us.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await $us.Project.find(r,this.context.cwd),a=await t.find(n);this.context.stdout.write(this.verbose?a.fullSource:a.source)}};l7e.paths=[["constraints","source"]];l7e.usage=egs.Command.Usage({category:"Constraints-related commands",description:"print the source code for the constraints",details:"\n This command will print the Prolog source code used by the constraints engine. Adding the `-v,--verbose` flag will print the *full* source code, including the fact database automatically compiled from the workspace manifests.\n ",examples:[["Prints the source code","yarn constraints source"],["Print the source code and the fact database","yarn constraints source -v"]]});Kte.default=l7e});var igs=H(uJr=>{"use strict";Object.defineProperty(uJr,"__esModule",{value:!0});var ngs=(Wa(),vi(Va)),Wml=sl(),I0e=wn(),aGt=wn(),lJr=(vl(),vi(ng)),Oml=H4r(),rgs=ngs.__importStar(r7e()),u7e=class extends Wml.BaseCommand{constructor(){super(...arguments),this.fix=lJr.Option.Boolean("--fix",!1,{description:"Attempt to automatically fix unambiguous issues, following a multi-pass process"}),this.json=lJr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await I0e.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await I0e.Project.find(t,this.context.cwd);await r.restoreInstallState();let n=await r.loadUserConfig(),a;if(n?.constraints)a=new Oml.ModernEngine(r);else{let{Constraints:f}=await Promise.resolve().then(()=>ngs.__importStar(a7e()));a=await f.find(r)}let o,l=!1,A=!1;for(let f=this.fix?10:1;f>0;--f){let I=await a.process();if(!I)break;let{changedWorkspaces:C,remainingErrors:b}=rgs.applyEngineReport(r,I,{fix:this.fix}),E=[];for(let[N,B]of C){let F=N.manifest.indent;N.manifest=new I0e.Manifest,N.manifest.indent=F,N.manifest.load(B),E.push(N.persistManifest())}if(await Promise.all(E),!(C.size>0&&f>1)){o=rgs.convertReportToRoot(b,{configuration:t}),l=!1,A=!0;for(let[,N]of b)for(let B of N)B.fixable?l=!0:A=!1}}if(o.children.length===0)return 0;if(l){let f=A?`Those errors can all be fixed by running ${aGt.formatUtils.pretty(t,"yarn constraints --fix",aGt.formatUtils.Type.CODE)}`:`Errors prefixed by '\u2699' can be fixed by running ${aGt.formatUtils.pretty(t,"yarn constraints --fix",aGt.formatUtils.Type.CODE)}`;await I0e.StreamReport.start({configuration:t,stdout:this.context.stdout,includeNames:!1,includeFooter:!1},async I=>{I.reportInfo(I0e.MessageName.UNNAMED,f),I.reportSeparator()})}return o.children=I0e.miscUtils.sortMap(o.children,f=>f.value[1]),I0e.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1}),1}};u7e.paths=[["constraints"]];u7e.usage=lJr.Command.Usage({category:"Constraints-related commands",description:"check that the project constraints are met",details:` This command will run constraints on your project and emit errors for each one that is found but isn't met. If any error is emitted the process will exit with a non-zero exit code. If the \`--fix\` flag is used, Yarn will attempt to automatically fix the issues the best it can, following a multi-pass process (with a maximum of 10 iterations). Some ambiguous patterns cannot be autofixed, in which case you'll have to manually specify the right resolution. For more information as to how to write constraints, please consult our dedicated page on our website: https://yarnpkg.com/features/constraints. - `,examples:[["Check that all constraints are satisfied","yarn constraints"],["Autofix all unmet constraints","yarn constraints --fix"]]});iJr.default=g7e});var ags=H(Kte=>{"use strict";Object.defineProperty(Kte,"__esModule",{value:!0});Kte.ConstraintsCheckCommand=Kte.ConstraintsSourceCommand=Kte.ConstraintsQueryCommand=void 0;var A7e=(Wa(),vi(Va)),Due=mn(),Yhl=L4r(),igs=A7e.__importDefault(zus());Kte.ConstraintsQueryCommand=igs.default;var sgs=A7e.__importDefault(egs());Kte.ConstraintsSourceCommand=sgs.default;var ogs=A7e.__importDefault(ngs());Kte.ConstraintsCheckCommand=ogs.default;var Qhl=A7e.__importStar(n7e()),Xhl={configuration:{enableConstraintsChecks:{description:"If true, constraints will run during installs",type:Due.SettingsType.BOOLEAN,default:!1},constraintsPath:{description:"The path of the constraints file.",type:Due.SettingsType.ABSOLUTE_PATH,default:"./constraints.pro"}},commands:[igs.default,sgs.default,ogs.default],hooks:{async validateProjectAfterInstall(e,{reportError:t}){if(!e.configuration.get("enableConstraintsChecks"))return;let r=await e.loadUserConfig(),n;if(r?.constraints)n=new Yhl.ModernEngine(e);else{let{Constraints:l}=await Promise.resolve().then(()=>A7e.__importStar(c7e()));n=await l.find(e)}let a=await n.process();if(!a)return;let{remainingErrors:o}=Qhl.applyEngineReport(e,a);if(o.size!==0)if(e.configuration.isCI)for(let[l,A]of o)for(let f of A)t(Due.MessageName.CONSTRAINTS_CHECK_FAILED,`${Due.formatUtils.pretty(e.configuration,l.anchoredLocator,Due.formatUtils.Type.IDENT)}: ${f.text}`);else t(Due.MessageName.CONSTRAINTS_CHECK_FAILED,`Constraint check failed; run ${Due.formatUtils.pretty(e.configuration,"yarn constraints",Due.formatUtils.Type.CODE)} for more details`)}}};Kte.default=Xhl});var cgs=H(sJr=>{"use strict";Object.defineProperty(sJr,"__esModule",{value:!0});var Jhl=dl(),cGt=mn(),lGt=(Rl(),vi(ng)),uGt=class extends Jhl.BaseCommand{constructor(){super(...arguments),this.pkg=lGt.Option.String("-p,--package",{description:"The package to run the provided command from"}),this.quiet=lGt.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=lGt.Option.String(),this.args=lGt.Option.Proxy()}async execute(){let t=[];this.pkg&&t.push("--package",this.pkg),this.quiet&&t.push("--quiet");let r=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),n=cGt.structUtils.parseDescriptor(r),a=n.name.match(/^create(-|$)/)?n:n.scope?cGt.structUtils.makeIdent(n.scope,`create-${n.name}`):cGt.structUtils.makeIdent(null,`create-${n.name}`),o=cGt.structUtils.stringifyIdent(a);return n.range!=="unknown"&&(o+=`@${n.range}`),this.cli.run(["dlx",...t,o,...this.args])}};uGt.paths=[["create"]];sJr.default=uGt});var ugs=H(oJr=>{"use strict";Object.defineProperty(oJr,"__esModule",{value:!0});var lgs=dl(),jte=mn(),gGt=mn(),fL=Io(),d7e=(Rl(),vi(ng)),p7e=class extends lgs.BaseCommand{constructor(){super(...arguments),this.packages=d7e.Option.Array("-p,--package",{description:"The package(s) to install before running the command"}),this.quiet=d7e.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=d7e.Option.String(),this.args=d7e.Option.Proxy()}async execute(){return jte.Configuration.telemetry=null,await fL.xfs.mktempPromise(async t=>{let r=fL.ppath.join(t,`dlx-${process.pid}`);await fL.xfs.mkdirPromise(r),await fL.xfs.writeFilePromise(fL.ppath.join(r,"package.json"),`{} -`),await fL.xfs.writeFilePromise(fL.ppath.join(r,"yarn.lock"),"");let n=fL.ppath.join(r,".yarnrc.yml"),a=await jte.Configuration.findProjectCwd(this.context.cwd),l={enableGlobalCache:!(await jte.Configuration.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:(0,jte.stringifyMessageName)(jte.MessageName.UNUSED_PACKAGE_EXTENSION),level:gGt.formatUtils.LogLevel.Discard}]},A=a!==null?fL.ppath.join(a,".yarnrc.yml"):null;A!==null&&fL.xfs.existsSync(A)?(await fL.xfs.copyFilePromise(A,n),await jte.Configuration.updateConfiguration(r,F=>{let Q=jte.miscUtils.toMerged(F,l);return Array.isArray(F.plugins)&&(Q.plugins=F.plugins.map(J=>{let ae=typeof J=="string"?J:J.path,ne=fL.npath.isAbsolute(ae)?ae:fL.npath.resolve(fL.npath.fromPortablePath(a),ae);return typeof J=="string"?ne:{path:ne,spec:J.spec}})),Q})):await fL.xfs.writeJsonPromise(n,l);let f=this.packages??[this.command],I=gGt.structUtils.parseDescriptor(this.command).name,C=await this.cli.run(["add","--fixed","--",...f],{cwd:r,quiet:this.quiet});if(C!==0)return C;this.quiet||this.context.stdout.write(` -`);let b=await jte.Configuration.find(r,this.context.plugins),{project:E,workspace:N}=await jte.Project.find(b,r);if(N===null)throw new lgs.WorkspaceRequiredError(E.cwd,r);await E.restoreInstallState();let B=await gGt.scriptUtils.getWorkspaceAccessibleBinaries(N);return B.has(I)===!1&&B.size===1&&typeof this.packages>"u"&&(I=Array.from(B)[0][0]),await gGt.scriptUtils.executeWorkspaceAccessibleBinary(N,I,this.args,{packageAccessibleBinaries:B,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};p7e.paths=[["dlx"]];p7e.usage=d7e.Command.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-vite to scaffold a new Vite project","yarn dlx create-vite"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});oJr.default=p7e});var pgs=H(h0e=>{"use strict";Object.defineProperty(h0e,"__esModule",{value:!0});h0e.DlxCommand=h0e.CreateCommand=void 0;var ggs=(Wa(),vi(Va)),Ags=ggs.__importDefault(cgs());h0e.CreateCommand=Ags.default;var dgs=ggs.__importDefault(ugs());h0e.DlxCommand=dgs.default;var Uhl={commands:[Ags.default,dgs.default]};h0e.default=Uhl});var aJr=H(AGt=>{"use strict";Object.defineProperty(AGt,"__esModule",{value:!0});AGt.PROTOCOL=void 0;AGt.PROTOCOL="exec:"});var dGt=H(NGe=>{"use strict";Object.defineProperty(NGe,"__esModule",{value:!0});NGe.parseSpec=Khl;NGe.makeSpec=fgs;NGe.makeLocator=jhl;NGe.loadGeneratorFile=zhl;var RGe=mn(),iJ=Io();function Khl(e){let{params:t,selector:r}=RGe.structUtils.parseRange(e),n=iJ.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?RGe.structUtils.parseLocator(t.locator):null,path:n}}function fgs({parentLocator:e,path:t,generatorHash:r,protocol:n}){let a=e!==null?{locator:RGe.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return RGe.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function jhl(e,{parentLocator:t,path:r,generatorHash:n,protocol:a}){return RGe.structUtils.makeLocator(e,fgs({parentLocator:t,path:r,generatorHash:n,protocol:a}))}async function zhl(e,t,r){let{parentLocator:n,path:a}=RGe.structUtils.parseFileStyleRange(e,{protocol:t}),o=iJ.ppath.isAbsolute(a)?{packageFs:new iJ.CwdFS(iJ.PortablePath.root),prefixPath:iJ.PortablePath.dot,localPath:iJ.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new iJ.CwdFS(iJ.PortablePath.root),prefixPath:iJ.ppath.relative(iJ.PortablePath.root,o.localPath)}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=iJ.ppath.join(l.prefixPath,a);return await A.readFilePromise(f,"utf8")}});var mgs=H(pGt=>{"use strict";Object.defineProperty(pGt,"__esModule",{value:!0});pGt.ExecFetcher=void 0;var sJ=mn(),Igs=mn(),hgs=mn(),HS=Io(),cJr=aJr(),qhl=dGt(),lJr=class{supports(t,r){return!!t.reference.startsWith(cJr.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=sJ.structUtils.parseFileStyleRange(t.reference,{protocol:cJr.PROTOCOL});if(HS.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:HS.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:sJ.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){let n=r.project.getDependencyMeta(t,null);if(!r.project.configuration.get("enableScripts")&&!n.built)throw new hgs.ReportError(hgs.MessageName.DISABLED_BUILD_SCRIPTS,`${sJ.structUtils.prettyLocator(r.project.configuration,t)} can't be built with the exec: protocol because all scripts have been disabled.`);let a=await(0,qhl.loadGeneratorFile)(t.reference,cJr.PROTOCOL,r);return HS.xfs.mktempPromise(async o=>{let l=HS.ppath.join(o,"generator.js");return await HS.xfs.writeFilePromise(l,a),HS.xfs.mktempPromise(async A=>{if(await this.generatePackage(A,t,l,r),!HS.xfs.existsSync(HS.ppath.join(A,"build")))throw new Error("The script should have generated a build directory");return await sJ.tgzUtils.makeArchiveFromDirectory(HS.ppath.join(A,"build"),{prefixPath:sJ.structUtils.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel")})})})}async generatePackage(t,r,n,a){return await HS.xfs.mktempPromise(async o=>{let l=await sJ.scriptUtils.makeScriptEnv({project:a.project,binFolder:o}),A=HS.ppath.join(t,"runtime.js");return await HS.xfs.mktempPromise(async f=>{let I=HS.ppath.join(f,"buildfile.log"),C=HS.ppath.join(t,"generator"),b=HS.ppath.join(t,"build");await HS.xfs.mkdirPromise(C),await HS.xfs.mkdirPromise(b);let E={tempDir:HS.npath.fromPortablePath(C),buildDir:HS.npath.fromPortablePath(b),locator:sJ.structUtils.stringifyLocator(r)};await HS.xfs.writeFilePromise(A,` + `,examples:[["Check that all constraints are satisfied","yarn constraints"],["Autofix all unmet constraints","yarn constraints --fix"]]});uJr.default=u7e});var cgs=H(jte=>{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});jte.ConstraintsCheckCommand=jte.ConstraintsSourceCommand=jte.ConstraintsQueryCommand=void 0;var g7e=(Wa(),vi(Va)),kue=wn(),Pml=H4r(),sgs=g7e.__importDefault(qus());jte.ConstraintsQueryCommand=sgs.default;var ogs=g7e.__importDefault(tgs());jte.ConstraintsSourceCommand=ogs.default;var ags=g7e.__importDefault(igs());jte.ConstraintsCheckCommand=ags.default;var Mml=g7e.__importStar(r7e()),Hml={configuration:{enableConstraintsChecks:{description:"If true, constraints will run during installs",type:kue.SettingsType.BOOLEAN,default:!1},constraintsPath:{description:"The path of the constraints file.",type:kue.SettingsType.ABSOLUTE_PATH,default:"./constraints.pro"}},commands:[sgs.default,ogs.default,ags.default],hooks:{async validateProjectAfterInstall(e,{reportError:t}){if(!e.configuration.get("enableConstraintsChecks"))return;let r=await e.loadUserConfig(),n;if(r?.constraints)n=new Pml.ModernEngine(e);else{let{Constraints:l}=await Promise.resolve().then(()=>g7e.__importStar(a7e()));n=await l.find(e)}let a=await n.process();if(!a)return;let{remainingErrors:o}=Mml.applyEngineReport(e,a);if(o.size!==0)if(e.configuration.isCI)for(let[l,A]of o)for(let f of A)t(kue.MessageName.CONSTRAINTS_CHECK_FAILED,`${kue.formatUtils.pretty(e.configuration,l.anchoredLocator,kue.formatUtils.Type.IDENT)}: ${f.text}`);else t(kue.MessageName.CONSTRAINTS_CHECK_FAILED,`Constraint check failed; run ${kue.formatUtils.pretty(e.configuration,"yarn constraints",kue.formatUtils.Type.CODE)} for more details`)}}};jte.default=Hml});var lgs=H(gJr=>{"use strict";Object.defineProperty(gJr,"__esModule",{value:!0});var Yml=sl(),cGt=wn(),lGt=(vl(),vi(ng)),uGt=class extends Yml.BaseCommand{constructor(){super(...arguments),this.pkg=lGt.Option.String("-p,--package",{description:"The package to run the provided command from"}),this.quiet=lGt.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=lGt.Option.String(),this.args=lGt.Option.Proxy()}async execute(){let t=[];this.pkg&&t.push("--package",this.pkg),this.quiet&&t.push("--quiet");let r=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),n=cGt.structUtils.parseDescriptor(r),a=n.name.match(/^create(-|$)/)?n:n.scope?cGt.structUtils.makeIdent(n.scope,`create-${n.name}`):cGt.structUtils.makeIdent(null,`create-${n.name}`),o=cGt.structUtils.stringifyIdent(a);return n.range!=="unknown"&&(o+=`@${n.range}`),this.cli.run(["dlx",...t,o,...this.args])}};uGt.paths=[["create"]];gJr.default=uGt});var ggs=H(AJr=>{"use strict";Object.defineProperty(AJr,"__esModule",{value:!0});var ugs=sl(),zte=wn(),gGt=wn(),IL=No(),A7e=(vl(),vi(ng)),d7e=class extends ugs.BaseCommand{constructor(){super(...arguments),this.packages=A7e.Option.Array("-p,--package",{description:"The package(s) to install before running the command"}),this.quiet=A7e.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=A7e.Option.String(),this.args=A7e.Option.Proxy()}async execute(){return zte.Configuration.telemetry=null,await IL.xfs.mktempPromise(async t=>{let r=IL.ppath.join(t,`dlx-${process.pid}`);await IL.xfs.mkdirPromise(r),await IL.xfs.writeFilePromise(IL.ppath.join(r,"package.json"),`{} +`),await IL.xfs.writeFilePromise(IL.ppath.join(r,"yarn.lock"),"");let n=IL.ppath.join(r,".yarnrc.yml"),a=await zte.Configuration.findProjectCwd(this.context.cwd),l={enableGlobalCache:!(await zte.Configuration.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:(0,zte.stringifyMessageName)(zte.MessageName.UNUSED_PACKAGE_EXTENSION),level:gGt.formatUtils.LogLevel.Discard}]},A=a!==null?IL.ppath.join(a,".yarnrc.yml"):null;A!==null&&IL.xfs.existsSync(A)?(await IL.xfs.copyFilePromise(A,n),await zte.Configuration.updateConfiguration(r,F=>{let Q=zte.miscUtils.toMerged(F,l);return Array.isArray(F.plugins)&&(Q.plugins=F.plugins.map(J=>{let ae=typeof J=="string"?J:J.path,ne=IL.npath.isAbsolute(ae)?ae:IL.npath.resolve(IL.npath.fromPortablePath(a),ae);return typeof J=="string"?ne:{path:ne,spec:J.spec}})),Q})):await IL.xfs.writeJsonPromise(n,l);let f=this.packages??[this.command],I=gGt.structUtils.parseDescriptor(this.command).name,C=await this.cli.run(["add","--fixed","--",...f],{cwd:r,quiet:this.quiet});if(C!==0)return C;this.quiet||this.context.stdout.write(` +`);let b=await zte.Configuration.find(r,this.context.plugins),{project:E,workspace:N}=await zte.Project.find(b,r);if(N===null)throw new ugs.WorkspaceRequiredError(E.cwd,r);await E.restoreInstallState();let B=await gGt.scriptUtils.getWorkspaceAccessibleBinaries(N);return B.has(I)===!1&&B.size===1&&typeof this.packages>"u"&&(I=Array.from(B)[0][0]),await gGt.scriptUtils.executeWorkspaceAccessibleBinary(N,I,this.args,{packageAccessibleBinaries:B,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};d7e.paths=[["dlx"]];d7e.usage=A7e.Command.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-vite to scaffold a new Vite project","yarn dlx create-vite"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});AJr.default=d7e});var fgs=H(h0e=>{"use strict";Object.defineProperty(h0e,"__esModule",{value:!0});h0e.DlxCommand=h0e.CreateCommand=void 0;var Ags=(Wa(),vi(Va)),dgs=Ags.__importDefault(lgs());h0e.CreateCommand=dgs.default;var pgs=Ags.__importDefault(ggs());h0e.DlxCommand=pgs.default;var Qml={commands:[dgs.default,pgs.default]};h0e.default=Qml});var dJr=H(AGt=>{"use strict";Object.defineProperty(AGt,"__esModule",{value:!0});AGt.PROTOCOL=void 0;AGt.PROTOCOL="exec:"});var dGt=H(NGe=>{"use strict";Object.defineProperty(NGe,"__esModule",{value:!0});NGe.parseSpec=Xml;NGe.makeSpec=Igs;NGe.makeLocator=Jml;NGe.loadGeneratorFile=Uml;var RGe=wn(),sJ=No();function Xml(e){let{params:t,selector:r}=RGe.structUtils.parseRange(e),n=sJ.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?RGe.structUtils.parseLocator(t.locator):null,path:n}}function Igs({parentLocator:e,path:t,generatorHash:r,protocol:n}){let a=e!==null?{locator:RGe.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return RGe.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function Jml(e,{parentLocator:t,path:r,generatorHash:n,protocol:a}){return RGe.structUtils.makeLocator(e,Igs({parentLocator:t,path:r,generatorHash:n,protocol:a}))}async function Uml(e,t,r){let{parentLocator:n,path:a}=RGe.structUtils.parseFileStyleRange(e,{protocol:t}),o=sJ.ppath.isAbsolute(a)?{packageFs:new sJ.CwdFS(sJ.PortablePath.root),prefixPath:sJ.PortablePath.dot,localPath:sJ.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new sJ.CwdFS(sJ.PortablePath.root),prefixPath:sJ.ppath.relative(sJ.PortablePath.root,o.localPath)}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=sJ.ppath.join(l.prefixPath,a);return await A.readFilePromise(f,"utf8")}});var Cgs=H(pGt=>{"use strict";Object.defineProperty(pGt,"__esModule",{value:!0});pGt.ExecFetcher=void 0;var oJ=wn(),hgs=wn(),mgs=wn(),YS=No(),pJr=dJr(),Kml=dGt(),fJr=class{supports(t,r){return!!t.reference.startsWith(pJr.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=oJ.structUtils.parseFileStyleRange(t.reference,{protocol:pJr.PROTOCOL});if(YS.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:YS.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:oJ.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){let n=r.project.getDependencyMeta(t,null);if(!r.project.configuration.get("enableScripts")&&!n.built)throw new mgs.ReportError(mgs.MessageName.DISABLED_BUILD_SCRIPTS,`${oJ.structUtils.prettyLocator(r.project.configuration,t)} can't be built with the exec: protocol because all scripts have been disabled.`);let a=await(0,Kml.loadGeneratorFile)(t.reference,pJr.PROTOCOL,r);return YS.xfs.mktempPromise(async o=>{let l=YS.ppath.join(o,"generator.js");return await YS.xfs.writeFilePromise(l,a),YS.xfs.mktempPromise(async A=>{if(await this.generatePackage(A,t,l,r),!YS.xfs.existsSync(YS.ppath.join(A,"build")))throw new Error("The script should have generated a build directory");return await oJ.tgzUtils.makeArchiveFromDirectory(YS.ppath.join(A,"build"),{prefixPath:oJ.structUtils.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel")})})})}async generatePackage(t,r,n,a){return await YS.xfs.mktempPromise(async o=>{let l=await oJ.scriptUtils.makeScriptEnv({project:a.project,binFolder:o}),A=YS.ppath.join(t,"runtime.js");return await YS.xfs.mktempPromise(async f=>{let I=YS.ppath.join(f,"buildfile.log"),C=YS.ppath.join(t,"generator"),b=YS.ppath.join(t,"build");await YS.xfs.mkdirPromise(C),await YS.xfs.mkdirPromise(b);let E={tempDir:YS.npath.fromPortablePath(C),buildDir:YS.npath.fromPortablePath(b),locator:oJ.structUtils.stringifyLocator(r)};await YS.xfs.writeFilePromise(A,` // Expose 'Module' as a global variable Object.defineProperty(global, 'Module', { get: () => require('module'), @@ -1507,114 +1507,114 @@ ${this.getDeclarations()}`}createSession(){return new $4r(this.project,this.full }, enumerable: true, }); - `);let N=l.NODE_OPTIONS||"",B=/\s*--require\s+\S*\.pnp\.c?js\s*/g;N=N.replace(B," ").trim(),l.NODE_OPTIONS=N;let{stdout:F,stderr:Q}=a.project.configuration.getSubprocessStreams(I,{header:`# This file contains the result of Yarn generating a package (${sJ.structUtils.stringifyLocator(r)}) -`,prefix:sJ.structUtils.prettyLocator(a.project.configuration,r),report:a.report}),{code:J}=await sJ.execUtils.pipevp(process.execPath,["--require",HS.npath.fromPortablePath(A),HS.npath.fromPortablePath(n),sJ.structUtils.stringifyIdent(r)],{cwd:t,env:l,stdin:null,stdout:F,stderr:Q});if(J!==0)throw HS.xfs.detachTemp(f),new Error(`Package generation failed (exit code ${J}, logs can be found here: ${Igs.formatUtils.pretty(a.project.configuration,I,Igs.formatUtils.Type.PATH)})`)})})}};pGt.ExecFetcher=lJr});var _gs=H(fGt=>{"use strict";Object.defineProperty(fGt,"__esModule",{value:!0});fGt.ExecResolver=void 0;var $hl=(Wa(),vi(Va)),eml=mn(),tml=mn(),Cgs=mn(),kue=mn(),f7e=aJr(),uJr=$hl.__importStar(dGt()),rml=2,gJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(f7e.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(f7e.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){if(n.project.tryWorkspaceByLocator(r)===null)throw new Cgs.ReportError(Cgs.MessageName.INVALID_MANIFEST,`${kue.structUtils.prettyLocator(n.project.configuration,r)} lists ${kue.structUtils.prettyDescriptor(n.project.configuration,t)} as dependency, but only workspaces can depend on exec: packages.`);return kue.structUtils.bindDescriptor(t,{locator:kue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=uJr.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await uJr.loadGeneratorFile(kue.structUtils.makeRange({protocol:f7e.PROTOCOL,source:a,selector:a,params:{locator:kue.structUtils.stringifyLocator(o)}}),f7e.PROTOCOL,n.fetchOptions),A=kue.hashUtils.makeHash(`${rml}`,l).slice(0,6);return[uJr.makeLocator(t,{parentLocator:o,path:a,generatorHash:A,protocol:f7e.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await kue.miscUtils.releaseAfterUseAsync(async()=>await eml.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:tml.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};fGt.ExecResolver=gJr});var Egs=H(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});zte.ExecResolver=zte.ExecFetcher=zte.execUtils=void 0;var nml=(Wa(),vi(Va)),ygs=mgs();Object.defineProperty(zte,"ExecFetcher",{enumerable:!0,get:function(){return ygs.ExecFetcher}});var bgs=_gs();Object.defineProperty(zte,"ExecResolver",{enumerable:!0,get:function(){return bgs.ExecResolver}});var iml=nml.__importStar(dGt());zte.execUtils=iml;var sml={fetchers:[ygs.ExecFetcher],resolvers:[bgs.ExecResolver]};zte.default=sml});var DGe=H(xue=>{"use strict";Object.defineProperty(xue,"__esModule",{value:!0});xue.PROTOCOL=xue.TARBALL_REGEXP=xue.FILE_REGEXP=void 0;xue.FILE_REGEXP=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/;xue.TARBALL_REGEXP=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/;xue.PROTOCOL="file:"});var kGe=H(Gue=>{"use strict";Object.defineProperty(Gue,"__esModule",{value:!0});Gue.parseSpec=aml;Gue.makeSpec=Sgs;Gue.makeLocator=cml;Gue.fetchArchiveFromLocator=lml;Gue.makeArchiveFromLocator=vgs;Gue.makeBufferFromLocator=uml;var oJ=mn(),fw=Io(),oml=DGe();function aml(e){let{params:t,selector:r}=oJ.structUtils.parseRange(e),n=fw.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?oJ.structUtils.parseLocator(t.locator):null,path:n}}function Sgs({parentLocator:e,path:t,hash:r,protocol:n}){let a=e!==null?{locator:oJ.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return oJ.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function cml(e,{parentLocator:t,path:r,hash:n,protocol:a}){return oJ.structUtils.makeLocator(e,Sgs({parentLocator:t,path:r,hash:n,protocol:a}))}async function lml(e,t){let{parentLocator:r,path:n}=oJ.structUtils.parseFileStyleRange(e.reference,{protocol:oml.PROTOCOL}),a=fw.ppath.isAbsolute(n)?{packageFs:new fw.CwdFS(fw.PortablePath.root),prefixPath:fw.PortablePath.dot,localPath:fw.PortablePath.root}:await t.fetcher.fetch(r,t),o=a.localPath?{packageFs:new fw.CwdFS(fw.PortablePath.root),prefixPath:fw.ppath.relative(fw.PortablePath.root,a.localPath)}:a;a!==o&&a.releaseFs&&a.releaseFs();let l=o.packageFs,A=fw.ppath.join(o.prefixPath,n);return await oJ.miscUtils.releaseAfterUseAsync(async()=>await l.readFilePromise(A),o.releaseFs)}async function vgs(e,{protocol:t,fetchOptions:r,inMemory:n=!1}){let{parentLocator:a,path:o}=oJ.structUtils.parseFileStyleRange(e.reference,{protocol:t}),l=fw.ppath.isAbsolute(o)?{packageFs:new fw.CwdFS(fw.PortablePath.root),prefixPath:fw.PortablePath.dot,localPath:fw.PortablePath.root}:await r.fetcher.fetch(a,r),A=l.localPath?{packageFs:new fw.CwdFS(fw.PortablePath.root),prefixPath:fw.ppath.relative(fw.PortablePath.root,l.localPath)}:l;l!==A&&l.releaseFs&&l.releaseFs();let f=A.packageFs,I=fw.ppath.join(A.prefixPath,o);return await oJ.miscUtils.releaseAfterUseAsync(async()=>await oJ.tgzUtils.makeArchiveFromDirectory(I,{baseFs:f,prefixPath:oJ.structUtils.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:n}),A.releaseFs)}async function uml(e,{protocol:t,fetchOptions:r}){return(await vgs(e,{protocol:t,fetchOptions:r,inMemory:!0})).getBufferAndClose()}});var wgs=H(IGt=>{"use strict";Object.defineProperty(IGt,"__esModule",{value:!0});IGt.FileFetcher=void 0;var gml=(Wa(),vi(Va)),AJr=mn(),Bgs=Io(),dJr=DGe(),Aml=gml.__importStar(kGe()),pJr=class{supports(t,r){return!!t.reference.startsWith(dJr.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=AJr.structUtils.parseFileStyleRange(t.reference,{protocol:dJr.PROTOCOL});if(Bgs.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:Bgs.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${AJr.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:AJr.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){return Aml.makeArchiveFromLocator(t,{protocol:dJr.PROTOCOL,fetchOptions:r})}};IGt.FileFetcher=pJr});var Tgs=H(hGt=>{"use strict";Object.defineProperty(hGt,"__esModule",{value:!0});hGt.FileResolver=void 0;var dml=(Wa(),vi(Va)),Fue=mn(),pml=mn(),fml=mn(),Zue=DGe(),fJr=dml.__importStar(kGe()),Iml=2,IJr=class{supportsDescriptor(t,r){return t.range.match(Zue.FILE_REGEXP)?!0:!!t.range.startsWith(Zue.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Zue.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return Zue.FILE_REGEXP.test(t.range)&&(t=Fue.structUtils.makeDescriptor(t,`${Zue.PROTOCOL}${t.range}`)),Fue.structUtils.bindDescriptor(t,{locator:Fue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=fJr.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await fJr.makeBufferFromLocator(Fue.structUtils.makeLocator(t,Fue.structUtils.makeRange({protocol:Zue.PROTOCOL,source:a,selector:a,params:{locator:Fue.structUtils.stringifyLocator(o)}})),{protocol:Zue.PROTOCOL,fetchOptions:n.fetchOptions}),A=Fue.hashUtils.makeHash(`${Iml}`,l).slice(0,6);return[fJr.makeLocator(t,{parentLocator:o,path:a,hash:A,protocol:Zue.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Fue.miscUtils.releaseAfterUseAsync(async()=>await fml.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:pml.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};hGt.FileResolver=IJr});var Ngs=H(CGt=>{"use strict";Object.defineProperty(CGt,"__esModule",{value:!0});CGt.TarballFileFetcher=void 0;var hml=(Wa(),vi(Va)),mGt=mn(),Rgs=DGe(),mml=hml.__importStar(kGe()),hJr=class{supports(t,r){return Rgs.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(Rgs.PROTOCOL):!1}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${mGt.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:mGt.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromDisk(t,r){let n=await mml.fetchArchiveFromLocator(t,r);return await mGt.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:mGt.structUtils.getIdentVendorPath(t),stripComponents:1})}};CGt.TarballFileFetcher=hJr});var Dgs=H(bGt=>{"use strict";Object.defineProperty(bGt,"__esModule",{value:!0});bGt.TarballFileResolver=void 0;var Cml=(Wa(),vi(Va)),_ml=mn(),yml=mn(),bml=mn(),_Gt=mn(),qte=DGe(),yGt=Cml.__importStar(kGe()),mJr=class{supportsDescriptor(t,r){return qte.TARBALL_REGEXP.test(t.range)?!!(t.range.startsWith(qte.PROTOCOL)||qte.FILE_REGEXP.test(t.range)):!1}supportsLocator(t,r){return qte.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(qte.PROTOCOL):!1}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return qte.FILE_REGEXP.test(t.range)&&(t=_Gt.structUtils.makeDescriptor(t,`${qte.PROTOCOL}${t.range}`)),_Gt.structUtils.bindDescriptor(t,{locator:_Gt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=yGt.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=yGt.makeLocator(t,{parentLocator:o,path:a,hash:"",protocol:qte.PROTOCOL}),A=await yGt.fetchArchiveFromLocator(l,n.fetchOptions),f=_ml.hashUtils.makeHash(A).slice(0,6);return[yGt.makeLocator(t,{parentLocator:o,path:a,hash:f,protocol:qte.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await _Gt.miscUtils.releaseAfterUseAsync(async()=>await yml.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:bml.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};bGt.TarballFileResolver=mJr});var Zgs=H(XP=>{"use strict";Object.defineProperty(XP,"__esModule",{value:!0});XP.TarballFileResolver=XP.TarballFileFetcher=XP.FileResolver=XP.FileFetcher=XP.fileUtils=void 0;var Eml=(Wa(),vi(Va)),kgs=wgs();Object.defineProperty(XP,"FileFetcher",{enumerable:!0,get:function(){return kgs.FileFetcher}});var xgs=Tgs();Object.defineProperty(XP,"FileResolver",{enumerable:!0,get:function(){return xgs.FileResolver}});var Ggs=Ngs();Object.defineProperty(XP,"TarballFileFetcher",{enumerable:!0,get:function(){return Ggs.TarballFileFetcher}});var Fgs=Dgs();Object.defineProperty(XP,"TarballFileResolver",{enumerable:!0,get:function(){return Fgs.TarballFileResolver}});var Sml=Eml.__importStar(kGe());XP.fileUtils=Sml;var vml={fetchers:[Ggs.TarballFileFetcher,kgs.FileFetcher],resolvers:[Fgs.TarballFileResolver,xgs.FileResolver]};XP.default=vml});var CJr=H(I7e=>{"use strict";Object.defineProperty(I7e,"__esModule",{value:!0});I7e.isGithubUrl=Tml;I7e.parseGithubUrl=Rml;I7e.invalidGithubUrlMessage=Vgs;var Bml=(Wa(),vi(Va)),wml=Bml.__importDefault(Et("querystring")),Lgs=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function Tml(e){return e?Lgs.some(t=>!!e.match(t)):!1}function Rml(e){let t;for(let A of Lgs)if(t=e.match(A),t)break;if(!t)throw new Error(Vgs(e));let[,r,n,a,o="master"]=t,{commit:l}=wml.default.parse(o);return o=l||o.replace(/[^:]*:/,""),{auth:r,username:n,reponame:a,treeish:o}}function Vgs(e){return`Input cannot be parsed as a valid GitHub URL ('${e}').`}});var Ogs=H(SGt=>{"use strict";Object.defineProperty(SGt,"__esModule",{value:!0});SGt.GithubFetcher=void 0;var Nml=(Wa(),vi(Va)),m0e=mn(),EGt=Io(),Dml=bGe(),Wgs=Nml.__importStar(CJr()),_Jr=class{supports(t,r){return!!Wgs.isGithubUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${m0e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:m0e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await m0e.httpUtils.get(this.getLocatorUrl(t,r),{configuration:r.project.configuration});return await EGt.xfs.mktempPromise(async a=>{let o=new EGt.CwdFS(a);await m0e.tgzUtils.extractArchiveTo(n,o,{stripComponents:1});let l=Dml.gitUtils.splitRepoUrl(t.reference),A=EGt.ppath.join(a,"package.tgz");await m0e.scriptUtils.prepareExternalProject(a,A,{configuration:r.project.configuration,report:r.report,workspace:l.extra.workspace,locator:t});let f=await EGt.xfs.readFilePromise(A);return await m0e.tgzUtils.convertToZip(f,{configuration:r.project.configuration,prefixPath:m0e.structUtils.getIdentVendorPath(t),stripComponents:1})})}getLocatorUrl(t,r){let{auth:n,username:a,reponame:o,treeish:l}=Wgs.parseGithubUrl(t.reference);return`https://${n?`${n}@`:""}github.com/${a}/${o}/archive/${l}.tar.gz`}};SGt.GithubFetcher=_Jr});var Mgs=H(C0e=>{"use strict";Object.defineProperty(C0e,"__esModule",{value:!0});C0e.GithubFetcher=C0e.githubUtils=void 0;var kml=(Wa(),vi(Va)),Pgs=Ogs();Object.defineProperty(C0e,"GithubFetcher",{enumerable:!0,get:function(){return Pgs.GithubFetcher}});var xml=kml.__importStar(CJr());C0e.githubUtils=xml;var Gml={hooks:{async fetchHostedRepository(e,t,r){if(e!==null)return e;let n=new Pgs.GithubFetcher;if(!n.supports(t,r))return null;try{return await n.fetch(t,r)}catch{return null}}}};C0e.default=Gml});var bJr=H(yJr=>{"use strict";Object.defineProperty(yJr,"__esModule",{value:!0});yJr.isTgzUrl=Fml;function Fml(e){let t;try{t=new URL(e)}catch{return!1}return!(t.protocol!=="http:"&&t.protocol!=="https:"||!t.pathname.match(/(\.tar\.gz|\.tgz|\/[^.]+)$/))}});var Hgs=H(vGt=>{"use strict";Object.defineProperty(vGt,"__esModule",{value:!0});vGt.TarballHttpFetcher=void 0;var Zml=(Wa(),vi(Va)),h7e=mn(),Lml=Zml.__importStar(bJr()),EJr=class{supports(t,r){return Lml.isTgzUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${h7e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:h7e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await h7e.httpUtils.get(t.reference,{configuration:r.project.configuration});return await h7e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:h7e.structUtils.getIdentVendorPath(t),stripComponents:1})}};vGt.TarballHttpFetcher=EJr});var Xgs=H(BGt=>{"use strict";Object.defineProperty(BGt,"__esModule",{value:!0});BGt.TarballHttpResolver=void 0;var Vml=(Wa(),vi(Va)),Wml=mn(),Oml=mn(),Ygs=mn(),Qgs=Vml.__importStar(bJr()),SJr=class{supportsDescriptor(t,r){return Qgs.isTgzUrl(t.range)}supportsLocator(t,r){return Qgs.isTgzUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[Ygs.structUtils.convertDescriptorToLocator(t)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Ygs.miscUtils.releaseAfterUseAsync(async()=>await Wml.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Oml.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};BGt.TarballHttpResolver=SJr});var Kgs=H(_0e=>{"use strict";Object.defineProperty(_0e,"__esModule",{value:!0});_0e.TarballHttpResolver=_0e.TarballHttpFetcher=void 0;var Jgs=Hgs();Object.defineProperty(_0e,"TarballHttpFetcher",{enumerable:!0,get:function(){return Jgs.TarballHttpFetcher}});var Ugs=Xgs();Object.defineProperty(_0e,"TarballHttpResolver",{enumerable:!0,get:function(){return Ugs.TarballHttpResolver}});var Pml={fetchers:[Jgs.TarballHttpFetcher],resolvers:[Ugs.TarballHttpResolver]};_0e.default=Pml});var BJr=H(vJr=>{"use strict";Object.defineProperty(vJr,"__esModule",{value:!0});var Mml=dl(),Bj=mn(),y0e=mn(),J_=Io(),Lue=(Rl(),vi(ng)),m7e=class extends Mml.BaseCommand{constructor(){super(...arguments),this.private=Lue.Option.Boolean("-p,--private",!1,{description:"Initialize a private package"}),this.workspace=Lue.Option.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"}),this.install=Lue.Option.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"}),this.name=Lue.Option.String("-n,--name",{description:"Initialize a package with the given name"}),this.usev2=Lue.Option.Boolean("-2",!1,{hidden:!0}),this.yes=Lue.Option.Boolean("-y,--yes",{hidden:!0})}async execute(){let t=await Bj.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(t,r):await this.executeRegular(t)}async executeProxy(t,r){if(t.projectCwd!==null&&t.projectCwd!==this.context.cwd)throw new Lue.UsageError("Cannot use the --install flag from within a project subdirectory");J_.xfs.existsSync(this.context.cwd)||await J_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=J_.ppath.join(this.context.cwd,J_.Filename.lockfile);J_.xfs.existsSync(n)||await J_.xfs.writeFilePromise(n,"");let a=await this.cli.run(["set","version",r],{quiet:!0});if(a!==0)return a;let o=[];return this.private&&o.push("-p"),this.workspace&&o.push("-w"),this.name&&o.push(`-n=${this.name}`),this.yes&&o.push("-y"),await J_.xfs.mktempPromise(async l=>{let{code:A}=await y0e.execUtils.pipevp("yarn",["init",...o],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await y0e.scriptUtils.makeScriptEnv({binFolder:l})});return A})}async initialize(){}async executeRegular(t){let r=null;try{r=(await Bj.Project.find(t,this.context.cwd)).project}catch{r=null}J_.xfs.existsSync(this.context.cwd)||await J_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=await Bj.Manifest.tryFind(this.context.cwd),a=n??new Bj.Manifest,o=Object.fromEntries(t.get("initFields").entries());a.load(o),a.name=a.name??y0e.structUtils.makeIdent(t.get("initScope"),this.name??J_.ppath.basename(this.context.cwd)),a.packageManager=Bj.YarnVersion&&Bj.miscUtils.isTaggedYarnVersion(Bj.YarnVersion)?`yarn@${Bj.YarnVersion}`:null,(!n&&this.workspace||this.private)&&(a.private=!0),this.workspace&&a.workspaceDefinitions.length===0&&(await J_.xfs.mkdirPromise(J_.ppath.join(this.context.cwd,"packages"),{recursive:!0}),a.workspaceDefinitions=[{pattern:"packages/*"}]);let l={};a.exportTo(l);let A=J_.ppath.join(this.context.cwd,Bj.Manifest.fileName);await J_.xfs.changeFilePromise(A,`${JSON.stringify(l,null,2)} -`,{automaticNewlines:!0});let f=[A],I=J_.ppath.join(this.context.cwd,"README.md");if(J_.xfs.existsSync(I)||(await J_.xfs.writeFilePromise(I,`# ${y0e.structUtils.stringifyIdent(a.name)} -`),f.push(I)),!r||r.cwd===this.context.cwd){let C=J_.ppath.join(this.context.cwd,J_.Filename.lockfile);J_.xfs.existsSync(C)||(await J_.xfs.writeFilePromise(C,""),f.push(C));let E=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# Whether you use PnP or not, the node_modules folder is often used to store","# build artifacts that should be gitignored","node_modules","","# Swap the comments on the following lines if you wish to use zero-installs","# In that case, don't forget to run `yarn config set enableGlobalCache false`!","# Documentation here: https://yarnpkg.com/features/caching#zero-installs","","#!.yarn/cache",".pnp.*"].map(ce=>`${ce} -`).join(""),N=J_.ppath.join(this.context.cwd,".gitignore");J_.xfs.existsSync(N)||(await J_.xfs.writeFilePromise(N,E),f.push(N));let F=["/.yarn/** linguist-vendored","/.yarn/releases/* binary","/.yarn/plugins/**/* binary","/.pnp.* binary linguist-generated"].map(ce=>`${ce} -`).join(""),Q=J_.ppath.join(this.context.cwd,".gitattributes");J_.xfs.existsSync(Q)||(await J_.xfs.writeFilePromise(Q,F),f.push(Q));let J={"*":{charset:"utf-8",endOfLine:"lf",indentSize:2,indentStyle:"space",insertFinalNewline:!0}};Bj.miscUtils.mergeIntoTarget(J,t.get("initEditorConfig"));let ae=`root = true + `);let N=l.NODE_OPTIONS||"",B=/\s*--require\s+\S*\.pnp\.c?js\s*/g;N=N.replace(B," ").trim(),l.NODE_OPTIONS=N;let{stdout:F,stderr:Q}=a.project.configuration.getSubprocessStreams(I,{header:`# This file contains the result of Yarn generating a package (${oJ.structUtils.stringifyLocator(r)}) +`,prefix:oJ.structUtils.prettyLocator(a.project.configuration,r),report:a.report}),{code:J}=await oJ.execUtils.pipevp(process.execPath,["--require",YS.npath.fromPortablePath(A),YS.npath.fromPortablePath(n),oJ.structUtils.stringifyIdent(r)],{cwd:t,env:l,stdin:null,stdout:F,stderr:Q});if(J!==0)throw YS.xfs.detachTemp(f),new Error(`Package generation failed (exit code ${J}, logs can be found here: ${hgs.formatUtils.pretty(a.project.configuration,I,hgs.formatUtils.Type.PATH)})`)})})}};pGt.ExecFetcher=fJr});var ygs=H(fGt=>{"use strict";Object.defineProperty(fGt,"__esModule",{value:!0});fGt.ExecResolver=void 0;var jml=(Wa(),vi(Va)),zml=wn(),qml=wn(),_gs=wn(),xue=wn(),p7e=dJr(),IJr=jml.__importStar(dGt()),$ml=2,hJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(p7e.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(p7e.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){if(n.project.tryWorkspaceByLocator(r)===null)throw new _gs.ReportError(_gs.MessageName.INVALID_MANIFEST,`${xue.structUtils.prettyLocator(n.project.configuration,r)} lists ${xue.structUtils.prettyDescriptor(n.project.configuration,t)} as dependency, but only workspaces can depend on exec: packages.`);return xue.structUtils.bindDescriptor(t,{locator:xue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=IJr.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await IJr.loadGeneratorFile(xue.structUtils.makeRange({protocol:p7e.PROTOCOL,source:a,selector:a,params:{locator:xue.structUtils.stringifyLocator(o)}}),p7e.PROTOCOL,n.fetchOptions),A=xue.hashUtils.makeHash(`${$ml}`,l).slice(0,6);return[IJr.makeLocator(t,{parentLocator:o,path:a,generatorHash:A,protocol:p7e.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await xue.miscUtils.releaseAfterUseAsync(async()=>await zml.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:qml.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};fGt.ExecResolver=hJr});var Sgs=H(qte=>{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});qte.ExecResolver=qte.ExecFetcher=qte.execUtils=void 0;var eCl=(Wa(),vi(Va)),bgs=Cgs();Object.defineProperty(qte,"ExecFetcher",{enumerable:!0,get:function(){return bgs.ExecFetcher}});var Egs=ygs();Object.defineProperty(qte,"ExecResolver",{enumerable:!0,get:function(){return Egs.ExecResolver}});var tCl=eCl.__importStar(dGt());qte.execUtils=tCl;var rCl={fetchers:[bgs.ExecFetcher],resolvers:[Egs.ExecResolver]};qte.default=rCl});var DGe=H(Gue=>{"use strict";Object.defineProperty(Gue,"__esModule",{value:!0});Gue.PROTOCOL=Gue.TARBALL_REGEXP=Gue.FILE_REGEXP=void 0;Gue.FILE_REGEXP=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/;Gue.TARBALL_REGEXP=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/;Gue.PROTOCOL="file:"});var kGe=H(Fue=>{"use strict";Object.defineProperty(Fue,"__esModule",{value:!0});Fue.parseSpec=iCl;Fue.makeSpec=vgs;Fue.makeLocator=sCl;Fue.fetchArchiveFromLocator=oCl;Fue.makeArchiveFromLocator=Bgs;Fue.makeBufferFromLocator=aCl;var aJ=wn(),Iw=No(),nCl=DGe();function iCl(e){let{params:t,selector:r}=aJ.structUtils.parseRange(e),n=Iw.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?aJ.structUtils.parseLocator(t.locator):null,path:n}}function vgs({parentLocator:e,path:t,hash:r,protocol:n}){let a=e!==null?{locator:aJ.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return aJ.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function sCl(e,{parentLocator:t,path:r,hash:n,protocol:a}){return aJ.structUtils.makeLocator(e,vgs({parentLocator:t,path:r,hash:n,protocol:a}))}async function oCl(e,t){let{parentLocator:r,path:n}=aJ.structUtils.parseFileStyleRange(e.reference,{protocol:nCl.PROTOCOL}),a=Iw.ppath.isAbsolute(n)?{packageFs:new Iw.CwdFS(Iw.PortablePath.root),prefixPath:Iw.PortablePath.dot,localPath:Iw.PortablePath.root}:await t.fetcher.fetch(r,t),o=a.localPath?{packageFs:new Iw.CwdFS(Iw.PortablePath.root),prefixPath:Iw.ppath.relative(Iw.PortablePath.root,a.localPath)}:a;a!==o&&a.releaseFs&&a.releaseFs();let l=o.packageFs,A=Iw.ppath.join(o.prefixPath,n);return await aJ.miscUtils.releaseAfterUseAsync(async()=>await l.readFilePromise(A),o.releaseFs)}async function Bgs(e,{protocol:t,fetchOptions:r,inMemory:n=!1}){let{parentLocator:a,path:o}=aJ.structUtils.parseFileStyleRange(e.reference,{protocol:t}),l=Iw.ppath.isAbsolute(o)?{packageFs:new Iw.CwdFS(Iw.PortablePath.root),prefixPath:Iw.PortablePath.dot,localPath:Iw.PortablePath.root}:await r.fetcher.fetch(a,r),A=l.localPath?{packageFs:new Iw.CwdFS(Iw.PortablePath.root),prefixPath:Iw.ppath.relative(Iw.PortablePath.root,l.localPath)}:l;l!==A&&l.releaseFs&&l.releaseFs();let f=A.packageFs,I=Iw.ppath.join(A.prefixPath,o);return await aJ.miscUtils.releaseAfterUseAsync(async()=>await aJ.tgzUtils.makeArchiveFromDirectory(I,{baseFs:f,prefixPath:aJ.structUtils.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:n}),A.releaseFs)}async function aCl(e,{protocol:t,fetchOptions:r}){return(await Bgs(e,{protocol:t,fetchOptions:r,inMemory:!0})).getBufferAndClose()}});var Tgs=H(IGt=>{"use strict";Object.defineProperty(IGt,"__esModule",{value:!0});IGt.FileFetcher=void 0;var cCl=(Wa(),vi(Va)),mJr=wn(),wgs=No(),CJr=DGe(),lCl=cCl.__importStar(kGe()),_Jr=class{supports(t,r){return!!t.reference.startsWith(CJr.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=mJr.structUtils.parseFileStyleRange(t.reference,{protocol:CJr.PROTOCOL});if(wgs.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:wgs.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${mJr.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:mJr.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){return lCl.makeArchiveFromLocator(t,{protocol:CJr.PROTOCOL,fetchOptions:r})}};IGt.FileFetcher=_Jr});var Rgs=H(hGt=>{"use strict";Object.defineProperty(hGt,"__esModule",{value:!0});hGt.FileResolver=void 0;var uCl=(Wa(),vi(Va)),Zue=wn(),gCl=wn(),ACl=wn(),Lue=DGe(),yJr=uCl.__importStar(kGe()),dCl=2,bJr=class{supportsDescriptor(t,r){return t.range.match(Lue.FILE_REGEXP)?!0:!!t.range.startsWith(Lue.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Lue.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return Lue.FILE_REGEXP.test(t.range)&&(t=Zue.structUtils.makeDescriptor(t,`${Lue.PROTOCOL}${t.range}`)),Zue.structUtils.bindDescriptor(t,{locator:Zue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=yJr.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await yJr.makeBufferFromLocator(Zue.structUtils.makeLocator(t,Zue.structUtils.makeRange({protocol:Lue.PROTOCOL,source:a,selector:a,params:{locator:Zue.structUtils.stringifyLocator(o)}})),{protocol:Lue.PROTOCOL,fetchOptions:n.fetchOptions}),A=Zue.hashUtils.makeHash(`${dCl}`,l).slice(0,6);return[yJr.makeLocator(t,{parentLocator:o,path:a,hash:A,protocol:Lue.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Zue.miscUtils.releaseAfterUseAsync(async()=>await ACl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:gCl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};hGt.FileResolver=bJr});var Dgs=H(CGt=>{"use strict";Object.defineProperty(CGt,"__esModule",{value:!0});CGt.TarballFileFetcher=void 0;var pCl=(Wa(),vi(Va)),mGt=wn(),Ngs=DGe(),fCl=pCl.__importStar(kGe()),EJr=class{supports(t,r){return Ngs.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(Ngs.PROTOCOL):!1}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${mGt.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:mGt.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromDisk(t,r){let n=await fCl.fetchArchiveFromLocator(t,r);return await mGt.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:mGt.structUtils.getIdentVendorPath(t),stripComponents:1})}};CGt.TarballFileFetcher=EJr});var kgs=H(bGt=>{"use strict";Object.defineProperty(bGt,"__esModule",{value:!0});bGt.TarballFileResolver=void 0;var ICl=(Wa(),vi(Va)),hCl=wn(),mCl=wn(),CCl=wn(),_Gt=wn(),$te=DGe(),yGt=ICl.__importStar(kGe()),SJr=class{supportsDescriptor(t,r){return $te.TARBALL_REGEXP.test(t.range)?!!(t.range.startsWith($te.PROTOCOL)||$te.FILE_REGEXP.test(t.range)):!1}supportsLocator(t,r){return $te.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith($te.PROTOCOL):!1}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return $te.FILE_REGEXP.test(t.range)&&(t=_Gt.structUtils.makeDescriptor(t,`${$te.PROTOCOL}${t.range}`)),_Gt.structUtils.bindDescriptor(t,{locator:_Gt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=yGt.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=yGt.makeLocator(t,{parentLocator:o,path:a,hash:"",protocol:$te.PROTOCOL}),A=await yGt.fetchArchiveFromLocator(l,n.fetchOptions),f=hCl.hashUtils.makeHash(A).slice(0,6);return[yGt.makeLocator(t,{parentLocator:o,path:a,hash:f,protocol:$te.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await _Gt.miscUtils.releaseAfterUseAsync(async()=>await mCl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:CCl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};bGt.TarballFileResolver=SJr});var Lgs=H(UP=>{"use strict";Object.defineProperty(UP,"__esModule",{value:!0});UP.TarballFileResolver=UP.TarballFileFetcher=UP.FileResolver=UP.FileFetcher=UP.fileUtils=void 0;var _Cl=(Wa(),vi(Va)),xgs=Tgs();Object.defineProperty(UP,"FileFetcher",{enumerable:!0,get:function(){return xgs.FileFetcher}});var Ggs=Rgs();Object.defineProperty(UP,"FileResolver",{enumerable:!0,get:function(){return Ggs.FileResolver}});var Fgs=Dgs();Object.defineProperty(UP,"TarballFileFetcher",{enumerable:!0,get:function(){return Fgs.TarballFileFetcher}});var Zgs=kgs();Object.defineProperty(UP,"TarballFileResolver",{enumerable:!0,get:function(){return Zgs.TarballFileResolver}});var yCl=_Cl.__importStar(kGe());UP.fileUtils=yCl;var bCl={fetchers:[Fgs.TarballFileFetcher,xgs.FileFetcher],resolvers:[Zgs.TarballFileResolver,Ggs.FileResolver]};UP.default=bCl});var vJr=H(f7e=>{"use strict";Object.defineProperty(f7e,"__esModule",{value:!0});f7e.isGithubUrl=vCl;f7e.parseGithubUrl=BCl;f7e.invalidGithubUrlMessage=Wgs;var ECl=(Wa(),vi(Va)),SCl=ECl.__importDefault(Et("querystring")),Vgs=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function vCl(e){return e?Vgs.some(t=>!!e.match(t)):!1}function BCl(e){let t;for(let A of Vgs)if(t=e.match(A),t)break;if(!t)throw new Error(Wgs(e));let[,r,n,a,o="master"]=t,{commit:l}=SCl.default.parse(o);return o=l||o.replace(/[^:]*:/,""),{auth:r,username:n,reponame:a,treeish:o}}function Wgs(e){return`Input cannot be parsed as a valid GitHub URL ('${e}').`}});var Pgs=H(SGt=>{"use strict";Object.defineProperty(SGt,"__esModule",{value:!0});SGt.GithubFetcher=void 0;var wCl=(Wa(),vi(Va)),m0e=wn(),EGt=No(),TCl=bGe(),Ogs=wCl.__importStar(vJr()),BJr=class{supports(t,r){return!!Ogs.isGithubUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${m0e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:m0e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await m0e.httpUtils.get(this.getLocatorUrl(t,r),{configuration:r.project.configuration});return await EGt.xfs.mktempPromise(async a=>{let o=new EGt.CwdFS(a);await m0e.tgzUtils.extractArchiveTo(n,o,{stripComponents:1});let l=TCl.gitUtils.splitRepoUrl(t.reference),A=EGt.ppath.join(a,"package.tgz");await m0e.scriptUtils.prepareExternalProject(a,A,{configuration:r.project.configuration,report:r.report,workspace:l.extra.workspace,locator:t});let f=await EGt.xfs.readFilePromise(A);return await m0e.tgzUtils.convertToZip(f,{configuration:r.project.configuration,prefixPath:m0e.structUtils.getIdentVendorPath(t),stripComponents:1})})}getLocatorUrl(t,r){let{auth:n,username:a,reponame:o,treeish:l}=Ogs.parseGithubUrl(t.reference);return`https://${n?`${n}@`:""}github.com/${a}/${o}/archive/${l}.tar.gz`}};SGt.GithubFetcher=BJr});var Hgs=H(C0e=>{"use strict";Object.defineProperty(C0e,"__esModule",{value:!0});C0e.GithubFetcher=C0e.githubUtils=void 0;var RCl=(Wa(),vi(Va)),Mgs=Pgs();Object.defineProperty(C0e,"GithubFetcher",{enumerable:!0,get:function(){return Mgs.GithubFetcher}});var NCl=RCl.__importStar(vJr());C0e.githubUtils=NCl;var DCl={hooks:{async fetchHostedRepository(e,t,r){if(e!==null)return e;let n=new Mgs.GithubFetcher;if(!n.supports(t,r))return null;try{return await n.fetch(t,r)}catch{return null}}}};C0e.default=DCl});var TJr=H(wJr=>{"use strict";Object.defineProperty(wJr,"__esModule",{value:!0});wJr.isTgzUrl=kCl;function kCl(e){let t;try{t=new URL(e)}catch{return!1}return!(t.protocol!=="http:"&&t.protocol!=="https:"||!t.pathname.match(/(\.tar\.gz|\.tgz|\/[^.]+)$/))}});var Ygs=H(vGt=>{"use strict";Object.defineProperty(vGt,"__esModule",{value:!0});vGt.TarballHttpFetcher=void 0;var xCl=(Wa(),vi(Va)),I7e=wn(),GCl=xCl.__importStar(TJr()),RJr=class{supports(t,r){return GCl.isTgzUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${I7e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:I7e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await I7e.httpUtils.get(t.reference,{configuration:r.project.configuration});return await I7e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:I7e.structUtils.getIdentVendorPath(t),stripComponents:1})}};vGt.TarballHttpFetcher=RJr});var Jgs=H(BGt=>{"use strict";Object.defineProperty(BGt,"__esModule",{value:!0});BGt.TarballHttpResolver=void 0;var FCl=(Wa(),vi(Va)),ZCl=wn(),LCl=wn(),Qgs=wn(),Xgs=FCl.__importStar(TJr()),NJr=class{supportsDescriptor(t,r){return Xgs.isTgzUrl(t.range)}supportsLocator(t,r){return Xgs.isTgzUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[Qgs.structUtils.convertDescriptorToLocator(t)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Qgs.miscUtils.releaseAfterUseAsync(async()=>await ZCl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:LCl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};BGt.TarballHttpResolver=NJr});var jgs=H(_0e=>{"use strict";Object.defineProperty(_0e,"__esModule",{value:!0});_0e.TarballHttpResolver=_0e.TarballHttpFetcher=void 0;var Ugs=Ygs();Object.defineProperty(_0e,"TarballHttpFetcher",{enumerable:!0,get:function(){return Ugs.TarballHttpFetcher}});var Kgs=Jgs();Object.defineProperty(_0e,"TarballHttpResolver",{enumerable:!0,get:function(){return Kgs.TarballHttpResolver}});var VCl={fetchers:[Ugs.TarballHttpFetcher],resolvers:[Kgs.TarballHttpResolver]};_0e.default=VCl});var kJr=H(DJr=>{"use strict";Object.defineProperty(DJr,"__esModule",{value:!0});var WCl=sl(),wj=wn(),y0e=wn(),U_=No(),Vue=(vl(),vi(ng)),h7e=class extends WCl.BaseCommand{constructor(){super(...arguments),this.private=Vue.Option.Boolean("-p,--private",!1,{description:"Initialize a private package"}),this.workspace=Vue.Option.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"}),this.install=Vue.Option.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"}),this.name=Vue.Option.String("-n,--name",{description:"Initialize a package with the given name"}),this.usev2=Vue.Option.Boolean("-2",!1,{hidden:!0}),this.yes=Vue.Option.Boolean("-y,--yes",{hidden:!0})}async execute(){let t=await wj.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(t,r):await this.executeRegular(t)}async executeProxy(t,r){if(t.projectCwd!==null&&t.projectCwd!==this.context.cwd)throw new Vue.UsageError("Cannot use the --install flag from within a project subdirectory");U_.xfs.existsSync(this.context.cwd)||await U_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=U_.ppath.join(this.context.cwd,U_.Filename.lockfile);U_.xfs.existsSync(n)||await U_.xfs.writeFilePromise(n,"");let a=await this.cli.run(["set","version",r],{quiet:!0});if(a!==0)return a;let o=[];return this.private&&o.push("-p"),this.workspace&&o.push("-w"),this.name&&o.push(`-n=${this.name}`),this.yes&&o.push("-y"),await U_.xfs.mktempPromise(async l=>{let{code:A}=await y0e.execUtils.pipevp("yarn",["init",...o],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await y0e.scriptUtils.makeScriptEnv({binFolder:l})});return A})}async initialize(){}async executeRegular(t){let r=null;try{r=(await wj.Project.find(t,this.context.cwd)).project}catch{r=null}U_.xfs.existsSync(this.context.cwd)||await U_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=await wj.Manifest.tryFind(this.context.cwd),a=n??new wj.Manifest,o=Object.fromEntries(t.get("initFields").entries());a.load(o),a.name=a.name??y0e.structUtils.makeIdent(t.get("initScope"),this.name??U_.ppath.basename(this.context.cwd)),a.packageManager=wj.YarnVersion&&wj.miscUtils.isTaggedYarnVersion(wj.YarnVersion)?`yarn@${wj.YarnVersion}`:null,(!n&&this.workspace||this.private)&&(a.private=!0),this.workspace&&a.workspaceDefinitions.length===0&&(await U_.xfs.mkdirPromise(U_.ppath.join(this.context.cwd,"packages"),{recursive:!0}),a.workspaceDefinitions=[{pattern:"packages/*"}]);let l={};a.exportTo(l);let A=U_.ppath.join(this.context.cwd,wj.Manifest.fileName);await U_.xfs.changeFilePromise(A,`${JSON.stringify(l,null,2)} +`,{automaticNewlines:!0});let f=[A],I=U_.ppath.join(this.context.cwd,"README.md");if(U_.xfs.existsSync(I)||(await U_.xfs.writeFilePromise(I,`# ${y0e.structUtils.stringifyIdent(a.name)} +`),f.push(I)),!r||r.cwd===this.context.cwd){let C=U_.ppath.join(this.context.cwd,U_.Filename.lockfile);U_.xfs.existsSync(C)||(await U_.xfs.writeFilePromise(C,""),f.push(C));let E=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# Whether you use PnP or not, the node_modules folder is often used to store","# build artifacts that should be gitignored","node_modules","","# Swap the comments on the following lines if you wish to use zero-installs","# In that case, don't forget to run `yarn config set enableGlobalCache false`!","# Documentation here: https://yarnpkg.com/features/caching#zero-installs","","#!.yarn/cache",".pnp.*"].map(ce=>`${ce} +`).join(""),N=U_.ppath.join(this.context.cwd,".gitignore");U_.xfs.existsSync(N)||(await U_.xfs.writeFilePromise(N,E),f.push(N));let F=["/.yarn/** linguist-vendored","/.yarn/releases/* binary","/.yarn/plugins/**/* binary","/.pnp.* binary linguist-generated"].map(ce=>`${ce} +`).join(""),Q=U_.ppath.join(this.context.cwd,".gitattributes");U_.xfs.existsSync(Q)||(await U_.xfs.writeFilePromise(Q,F),f.push(Q));let J={"*":{charset:"utf-8",endOfLine:"lf",indentSize:2,indentStyle:"space",insertFinalNewline:!0}};wj.miscUtils.mergeIntoTarget(J,t.get("initEditorConfig"));let ae=`root = true `;for(let[ce,fe]of Object.entries(J)){ae+=` [${ce}] `;for(let[ue,de]of Object.entries(fe)){let be=ue.replace(/[A-Z]/g,Se=>`_${Se.toLowerCase()}`);ae+=`${be} = ${de} -`}}let ne=J_.ppath.join(this.context.cwd,".editorconfig");J_.xfs.existsSync(ne)||(await J_.xfs.writeFilePromise(ne,ae),f.push(ne)),await this.cli.run(["install"],{quiet:!0}),await this.initialize(),J_.xfs.existsSync(J_.ppath.join(this.context.cwd,".git"))||(await y0e.execUtils.execvp("git",["init"],{cwd:this.context.cwd}),await y0e.execUtils.execvp("git",["add","--",...f],{cwd:this.context.cwd}),await y0e.execUtils.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};m7e.paths=[["init"]];m7e.usage=Lue.Command.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});vJr.default=m7e});var zgs=H(wJr=>{"use strict";Object.defineProperty(wJr,"__esModule",{value:!0});var Hml=(Wa(),vi(Va)),jgs=(Rl(),vi(ng)),Yml=Hml.__importDefault(BJr()),wGt=class extends Yml.default{constructor(){super(...arguments),this.initializer=jgs.Option.String(),this.argv=jgs.Option.Proxy()}async initialize(){this.context.stdout.write(` -`),await this.cli.run(["dlx",this.initializer,...this.argv],{quiet:!0})}};wGt.paths=[["init"]];wJr.default=wGt});var tAs=H(b0e=>{"use strict";Object.defineProperty(b0e,"__esModule",{value:!0});b0e.InitInitializerCommand=b0e.InitCommand=void 0;var qgs=(Wa(),vi(Va)),C7e=mn(),$gs=qgs.__importDefault(zgs());b0e.InitInitializerCommand=$gs.default;var eAs=qgs.__importDefault(BJr());b0e.InitCommand=eAs.default;var Qml={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:C7e.SettingsType.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:C7e.SettingsType.MAP,valueDefinition:{description:"",type:C7e.SettingsType.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:C7e.SettingsType.MAP,valueDefinition:{description:"",type:C7e.SettingsType.ANY}}},commands:[eAs.default,$gs.default]};b0e.default=Qml});var _7e=H(xGe=>{"use strict";Object.defineProperty(xGe,"__esModule",{value:!0});xGe.LINK_PROTOCOL=xGe.PORTAL_PROTOCOL=void 0;xGe.PORTAL_PROTOCOL="portal:";xGe.LINK_PROTOCOL="link:"});var nAs=H(TGt=>{"use strict";Object.defineProperty(TGt,"__esModule",{value:!0});TGt.LinkFetcher=void 0;var rAs=mn(),fx=Io(),TJr=_7e(),RJr=class{supports(t,r){return!!t.reference.startsWith(TJr.LINK_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=rAs.structUtils.parseFileStyleRange(t.reference,{protocol:TJr.LINK_PROTOCOL});if(fx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:fx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=rAs.structUtils.parseFileStyleRange(t.reference,{protocol:TJr.LINK_PROTOCOL}),o=fx.ppath.isAbsolute(a)?{packageFs:new fx.CwdFS(fx.PortablePath.root),prefixPath:fx.PortablePath.dot,localPath:fx.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new fx.CwdFS(fx.PortablePath.root),prefixPath:fx.ppath.relative(fx.PortablePath.root,o.localPath),localPath:fx.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=fx.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new fx.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:fx.PortablePath.dot,discardFromLookup:!0,localPath:f}:{packageFs:new fx.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:fx.PortablePath.dot,discardFromLookup:!0}}};TGt.LinkFetcher=RJr});var iAs=H(NGt=>{"use strict";Object.defineProperty(NGt,"__esModule",{value:!0});NGt.LinkResolver=void 0;var Xml=mn(),NJr=mn(),Jml=Io(),RGt=_7e(),DJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(RGt.LINK_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(RGt.LINK_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return NJr.structUtils.bindDescriptor(t,{locator:NJr.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(RGt.LINK_PROTOCOL.length);return[NJr.structUtils.makeLocator(t,`${RGt.LINK_PROTOCOL}${Jml.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){return{...t,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:Xml.LinkType.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};NGt.LinkResolver=DJr});var oAs=H(DGt=>{"use strict";Object.defineProperty(DGt,"__esModule",{value:!0});DGt.PortalFetcher=void 0;var sAs=mn(),Ix=Io(),kJr=_7e(),xJr=class{supports(t,r){return!!t.reference.startsWith(kJr.PORTAL_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=sAs.structUtils.parseFileStyleRange(t.reference,{protocol:kJr.PORTAL_PROTOCOL});if(Ix.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:Ix.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=sAs.structUtils.parseFileStyleRange(t.reference,{protocol:kJr.PORTAL_PROTOCOL}),o=Ix.ppath.isAbsolute(a)?{packageFs:new Ix.CwdFS(Ix.PortablePath.root),prefixPath:Ix.PortablePath.dot,localPath:Ix.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new Ix.CwdFS(Ix.PortablePath.root),prefixPath:Ix.ppath.relative(Ix.PortablePath.root,o.localPath),localPath:Ix.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=Ix.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new Ix.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:Ix.PortablePath.dot,localPath:f}:{packageFs:new Ix.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:Ix.PortablePath.dot}}};DGt.PortalFetcher=xJr});var aAs=H(GGt=>{"use strict";Object.defineProperty(GGt,"__esModule",{value:!0});GGt.PortalResolver=void 0;var Uml=mn(),Kml=mn(),kGt=mn(),jml=Io(),xGt=_7e(),GJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(xGt.PORTAL_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(xGt.PORTAL_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return kGt.structUtils.bindDescriptor(t,{locator:kGt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(xGt.PORTAL_PROTOCOL.length);return[kGt.structUtils.makeLocator(t,`${xGt.PORTAL_PROTOCOL}${jml.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await kGt.miscUtils.releaseAfterUseAsync(async()=>await Uml.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Kml.LinkType.SOFT,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};GGt.PortalResolver=GJr});var AAs=H(aJ=>{"use strict";Object.defineProperty(aJ,"__esModule",{value:!0});aJ.LinkResolver=aJ.LinkFetcher=aJ.PortalResolver=aJ.PortalFetcher=void 0;var cAs=nAs();Object.defineProperty(aJ,"LinkFetcher",{enumerable:!0,get:function(){return cAs.LinkFetcher}});var lAs=iAs();Object.defineProperty(aJ,"LinkResolver",{enumerable:!0,get:function(){return lAs.LinkResolver}});var uAs=oAs();Object.defineProperty(aJ,"PortalFetcher",{enumerable:!0,get:function(){return uAs.PortalFetcher}});var gAs=aAs();Object.defineProperty(aJ,"PortalResolver",{enumerable:!0,get:function(){return gAs.PortalResolver}});var zml={fetchers:[cAs.LinkFetcher,uAs.PortalFetcher],resolvers:[lAs.LinkResolver,gAs.PortalResolver]};aJ.default=zml});var WJr=H(GGe=>{"use strict";Object.defineProperty(GGe,"__esModule",{value:!0});GGe.hoist=GGe.HoisterDependencyKind=void 0;var E0e;(function(e){e[e.REGULAR=0]="REGULAR",e[e.WORKSPACE=1]="WORKSPACE",e[e.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(E0e||(GGe.HoisterDependencyKind=E0e={}));var $te;(function(e){e[e.YES=0]="YES",e[e.NO=1]="NO",e[e.DEPENDS=2]="DEPENDS"})($te||($te={}));var ZJr=(e,t)=>`${e}@${t}`,dAs=(e,t)=>{let r=t.indexOf("#"),n=r>=0?t.substring(r+1):t;return ZJr(e,n)},cJ;(function(e){e[e.NONE=-1]="NONE",e[e.PERF=0]="PERF",e[e.CHECK=1]="CHECK",e[e.REASONS=2]="REASONS",e[e.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(cJ||(cJ={}));var qml=(e,t={})=>{let r=t.debugLevel||Number(process.env.NM_DEBUG_LEVEL||cJ.NONE),n=t.check||r>=cJ.INTENSIVE_CHECK,a=t.hoistingLimits||new Map,o={check:n,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},l;o.debugLevel>=cJ.PERF&&(l=Date.now());let A=sCl(e,o),f=!1,I=0;do{let C=LJr(A,[A],new Set([A.locator]),new Map,o);f=C.anotherRoundNeeded||C.isGraphChanged,o.fastLookupPossible=!1,I++}while(f);if(o.debugLevel>=cJ.PERF&&console.log(`hoist time: ${Date.now()-l}ms, rounds: ${I}`),o.debugLevel>=cJ.CHECK){let C=y7e(A);if(LJr(A,[A],new Set([A.locator]),new Map,o).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: +`}}let ne=U_.ppath.join(this.context.cwd,".editorconfig");U_.xfs.existsSync(ne)||(await U_.xfs.writeFilePromise(ne,ae),f.push(ne)),await this.cli.run(["install"],{quiet:!0}),await this.initialize(),U_.xfs.existsSync(U_.ppath.join(this.context.cwd,".git"))||(await y0e.execUtils.execvp("git",["init"],{cwd:this.context.cwd}),await y0e.execUtils.execvp("git",["add","--",...f],{cwd:this.context.cwd}),await y0e.execUtils.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};h7e.paths=[["init"]];h7e.usage=Vue.Command.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});DJr.default=h7e});var qgs=H(xJr=>{"use strict";Object.defineProperty(xJr,"__esModule",{value:!0});var OCl=(Wa(),vi(Va)),zgs=(vl(),vi(ng)),PCl=OCl.__importDefault(kJr()),wGt=class extends PCl.default{constructor(){super(...arguments),this.initializer=zgs.Option.String(),this.argv=zgs.Option.Proxy()}async initialize(){this.context.stdout.write(` +`),await this.cli.run(["dlx",this.initializer,...this.argv],{quiet:!0})}};wGt.paths=[["init"]];xJr.default=wGt});var rAs=H(b0e=>{"use strict";Object.defineProperty(b0e,"__esModule",{value:!0});b0e.InitInitializerCommand=b0e.InitCommand=void 0;var $gs=(Wa(),vi(Va)),m7e=wn(),eAs=$gs.__importDefault(qgs());b0e.InitInitializerCommand=eAs.default;var tAs=$gs.__importDefault(kJr());b0e.InitCommand=tAs.default;var MCl={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:m7e.SettingsType.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:m7e.SettingsType.MAP,valueDefinition:{description:"",type:m7e.SettingsType.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:m7e.SettingsType.MAP,valueDefinition:{description:"",type:m7e.SettingsType.ANY}}},commands:[tAs.default,eAs.default]};b0e.default=MCl});var C7e=H(xGe=>{"use strict";Object.defineProperty(xGe,"__esModule",{value:!0});xGe.LINK_PROTOCOL=xGe.PORTAL_PROTOCOL=void 0;xGe.PORTAL_PROTOCOL="portal:";xGe.LINK_PROTOCOL="link:"});var iAs=H(TGt=>{"use strict";Object.defineProperty(TGt,"__esModule",{value:!0});TGt.LinkFetcher=void 0;var nAs=wn(),Ix=No(),GJr=C7e(),FJr=class{supports(t,r){return!!t.reference.startsWith(GJr.LINK_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=nAs.structUtils.parseFileStyleRange(t.reference,{protocol:GJr.LINK_PROTOCOL});if(Ix.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:Ix.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=nAs.structUtils.parseFileStyleRange(t.reference,{protocol:GJr.LINK_PROTOCOL}),o=Ix.ppath.isAbsolute(a)?{packageFs:new Ix.CwdFS(Ix.PortablePath.root),prefixPath:Ix.PortablePath.dot,localPath:Ix.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new Ix.CwdFS(Ix.PortablePath.root),prefixPath:Ix.ppath.relative(Ix.PortablePath.root,o.localPath),localPath:Ix.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=Ix.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new Ix.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:Ix.PortablePath.dot,discardFromLookup:!0,localPath:f}:{packageFs:new Ix.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:Ix.PortablePath.dot,discardFromLookup:!0}}};TGt.LinkFetcher=FJr});var sAs=H(NGt=>{"use strict";Object.defineProperty(NGt,"__esModule",{value:!0});NGt.LinkResolver=void 0;var HCl=wn(),ZJr=wn(),YCl=No(),RGt=C7e(),LJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(RGt.LINK_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(RGt.LINK_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return ZJr.structUtils.bindDescriptor(t,{locator:ZJr.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(RGt.LINK_PROTOCOL.length);return[ZJr.structUtils.makeLocator(t,`${RGt.LINK_PROTOCOL}${YCl.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){return{...t,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:HCl.LinkType.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};NGt.LinkResolver=LJr});var aAs=H(DGt=>{"use strict";Object.defineProperty(DGt,"__esModule",{value:!0});DGt.PortalFetcher=void 0;var oAs=wn(),hx=No(),VJr=C7e(),WJr=class{supports(t,r){return!!t.reference.startsWith(VJr.PORTAL_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=oAs.structUtils.parseFileStyleRange(t.reference,{protocol:VJr.PORTAL_PROTOCOL});if(hx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:hx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=oAs.structUtils.parseFileStyleRange(t.reference,{protocol:VJr.PORTAL_PROTOCOL}),o=hx.ppath.isAbsolute(a)?{packageFs:new hx.CwdFS(hx.PortablePath.root),prefixPath:hx.PortablePath.dot,localPath:hx.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new hx.CwdFS(hx.PortablePath.root),prefixPath:hx.ppath.relative(hx.PortablePath.root,o.localPath),localPath:hx.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=hx.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new hx.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:hx.PortablePath.dot,localPath:f}:{packageFs:new hx.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:hx.PortablePath.dot}}};DGt.PortalFetcher=WJr});var cAs=H(GGt=>{"use strict";Object.defineProperty(GGt,"__esModule",{value:!0});GGt.PortalResolver=void 0;var QCl=wn(),XCl=wn(),kGt=wn(),JCl=No(),xGt=C7e(),OJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(xGt.PORTAL_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(xGt.PORTAL_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return kGt.structUtils.bindDescriptor(t,{locator:kGt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(xGt.PORTAL_PROTOCOL.length);return[kGt.structUtils.makeLocator(t,`${xGt.PORTAL_PROTOCOL}${JCl.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await kGt.miscUtils.releaseAfterUseAsync(async()=>await QCl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:XCl.LinkType.SOFT,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};GGt.PortalResolver=OJr});var dAs=H(cJ=>{"use strict";Object.defineProperty(cJ,"__esModule",{value:!0});cJ.LinkResolver=cJ.LinkFetcher=cJ.PortalResolver=cJ.PortalFetcher=void 0;var lAs=iAs();Object.defineProperty(cJ,"LinkFetcher",{enumerable:!0,get:function(){return lAs.LinkFetcher}});var uAs=sAs();Object.defineProperty(cJ,"LinkResolver",{enumerable:!0,get:function(){return uAs.LinkResolver}});var gAs=aAs();Object.defineProperty(cJ,"PortalFetcher",{enumerable:!0,get:function(){return gAs.PortalFetcher}});var AAs=cAs();Object.defineProperty(cJ,"PortalResolver",{enumerable:!0,get:function(){return AAs.PortalResolver}});var UCl={fetchers:[lAs.LinkFetcher,gAs.PortalFetcher],resolvers:[uAs.LinkResolver,AAs.PortalResolver]};cJ.default=UCl});var QJr=H(GGe=>{"use strict";Object.defineProperty(GGe,"__esModule",{value:!0});GGe.hoist=GGe.HoisterDependencyKind=void 0;var E0e;(function(e){e[e.REGULAR=0]="REGULAR",e[e.WORKSPACE=1]="WORKSPACE",e[e.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(E0e||(GGe.HoisterDependencyKind=E0e={}));var ere;(function(e){e[e.YES=0]="YES",e[e.NO=1]="NO",e[e.DEPENDS=2]="DEPENDS"})(ere||(ere={}));var MJr=(e,t)=>`${e}@${t}`,pAs=(e,t)=>{let r=t.indexOf("#"),n=r>=0?t.substring(r+1):t;return MJr(e,n)},lJ;(function(e){e[e.NONE=-1]="NONE",e[e.PERF=0]="PERF",e[e.CHECK=1]="CHECK",e[e.REASONS=2]="REASONS",e[e.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(lJ||(lJ={}));var KCl=(e,t={})=>{let r=t.debugLevel||Number(process.env.NM_DEBUG_LEVEL||lJ.NONE),n=t.check||r>=lJ.INTENSIVE_CHECK,a=t.hoistingLimits||new Map,o={check:n,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},l;o.debugLevel>=lJ.PERF&&(l=Date.now());let A=r_l(e,o),f=!1,I=0;do{let C=HJr(A,[A],new Set([A.locator]),new Map,o);f=C.anotherRoundNeeded||C.isGraphChanged,o.fastLookupPossible=!1,I++}while(f);if(o.debugLevel>=lJ.PERF&&console.log(`hoist time: ${Date.now()-l}ms, rounds: ${I}`),o.debugLevel>=lJ.CHECK){let C=_7e(A);if(HJr(A,[A],new Set([A.locator]),new Map,o).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: ${C}, next tree: -${y7e(A)}`);let E=IAs(A);if(E)throw new Error(`${E}, after hoisting finished: -${y7e(A)}`)}return o.debugLevel>=cJ.REASONS&&console.log(y7e(A)),oCl(A)};GGe.hoist=qml;var $ml=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=o=>{if(!n.has(o)){n.add(o);for(let l of o.hoistedDependencies.values())r.set(l.name,l);for(let l of o.dependencies.values())o.peerNames.has(l.name)||a(l)}};return a(t),r},eCl=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=new Set,o=(l,A)=>{if(n.has(l))return;n.add(l);for(let I of l.hoistedDependencies.values())if(!A.has(I.name)){let C;for(let b of e)C=b.dependencies.get(I.name),C&&r.set(C.name,C)}let f=new Set;for(let I of l.dependencies.values())f.add(I.name);for(let I of l.dependencies.values())l.peerNames.has(I.name)||o(I,f)};return o(t,a),r},pAs=(e,t)=>{if(t.decoupled)return t;let{name:r,references:n,ident:a,locator:o,dependencies:l,originalDependencies:A,hoistedDependencies:f,peerNames:I,reasons:C,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:B,hoistedTo:F}=t,Q={name:r,references:new Set(n),ident:a,locator:o,dependencies:new Map(l),originalDependencies:new Map(A),hoistedDependencies:new Map(f),peerNames:new Set(I),reasons:new Map(C),decoupled:!0,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:new Map(B),hoistedTo:new Map(F)},J=Q.dependencies.get(r);return J&&J.ident==Q.ident&&Q.dependencies.set(r,Q),e.dependencies.set(Q.name,Q),Q},tCl=(e,t)=>{let r=new Map([[e.name,[e.ident]]]);for(let a of e.dependencies.values())e.peerNames.has(a.name)||r.set(a.name,[a.ident]);let n=Array.from(t.keys());n.sort((a,o)=>{let l=t.get(a),A=t.get(o);if(A.hoistPriority!==l.hoistPriority)return A.hoistPriority-l.hoistPriority;{let f=l.dependents.size+l.peerDependents.size;return A.dependents.size+A.peerDependents.size-f}});for(let a of n){let o=a.substring(0,a.indexOf("@",1)),l=a.substring(o.length+1);if(!e.peerNames.has(o)){let A=r.get(o);A||(A=[],r.set(o,A)),A.indexOf(l)<0&&A.push(l)}}return r},FJr=e=>{let t=new Set,r=(n,a=new Set)=>{if(!a.has(n)){a.add(n);for(let o of n.peerNames)if(!e.peerNames.has(o)){let l=e.dependencies.get(o);l&&!t.has(l)&&r(l,a)}t.add(n)}};for(let n of e.dependencies.values())e.peerNames.has(n.name)||r(n);return t},LJr=(e,t,r,n,a,o=new Set)=>{let l=t[t.length-1];if(o.has(l))return{anotherRoundNeeded:!1,isGraphChanged:!1};o.add(l);let A=aCl(l),f=tCl(l,A),I=e==l?new Map:a.fastLookupPossible?$ml(t):eCl(t),C,b=!1,E=!1,N=new Map(Array.from(f.entries()).map(([F,Q])=>[F,Q[0]])),B=new Map;do{let F=iCl(e,t,r,I,N,f,n,B,a);F.isGraphChanged&&(E=!0),F.anotherRoundNeeded&&(b=!0),C=!1;for(let[Q,J]of f)J.length>1&&!l.dependencies.has(Q)&&(N.delete(Q),J.shift(),N.set(Q,J[0]),C=!0)}while(C);for(let F of l.dependencies.values())if(!l.peerNames.has(F.name)&&!r.has(F.locator)){r.add(F.locator);let Q=LJr(e,[...t,F],r,B,a);Q.isGraphChanged&&(E=!0),Q.anotherRoundNeeded&&(b=!0),r.delete(F.locator)}return{anotherRoundNeeded:b,isGraphChanged:E}},rCl=e=>{for(let[t,r]of e.dependencies)if(!e.peerNames.has(t)&&r.ident!==e.ident)return!0;return!1},nCl=(e,t,r,n,a,o,l,A,{outputReason:f,fastLookupPossible:I})=>{let C,b=null,E=new Set;f&&(C=`${Array.from(t).map(Q=>hx(Q)).join("\u2192")}`);let N=r[r.length-1],F=!(n.ident===N.ident);if(f&&!F&&(b="- self-reference"),F&&(F=n.dependencyKind!==E0e.WORKSPACE,f&&!F&&(b="- workspace")),F&&n.dependencyKind===E0e.EXTERNAL_SOFT_LINK&&(F=!rCl(n),f&&!F&&(b="- external soft link with unhoisted dependencies")),F&&(F=!e.peerNames.has(n.name),f&&!F&&(b=`- cannot shadow peer: ${hx(e.originalDependencies.get(n.name).locator)} at ${C}`)),F){let Q=!1,J=a.get(n.name);if(Q=!J||J.ident===n.ident,f&&!Q&&(b=`- filled by: ${hx(J.locator)} at ${C}`),Q)for(let ae=r.length-1;ae>=1;ae--){let ce=r[ae].dependencies.get(n.name);if(ce&&ce.ident!==n.ident){Q=!1;let fe=A.get(N);fe||(fe=new Set,A.set(N,fe)),fe.add(n.name),f&&(b=`- filled by ${hx(ce.locator)} at ${r.slice(0,ae).map(ue=>hx(ue.locator)).join("\u2192")}`);break}}F=Q}if(F&&(F=o.get(n.name)===n.ident,f&&!F&&(b=`- filled by: ${hx(l.get(n.name)[0])} at ${C}`)),F){let Q=!0,J=new Set(n.peerNames);for(let ae=r.length-1;ae>=1;ae--){let ne=r[ae];for(let ce of J){if(ne.peerNames.has(ce)&&ne.originalDependencies.has(ce))continue;let fe=ne.dependencies.get(ce);fe&&e.dependencies.get(ce)!==fe&&(ae===r.length-1?E.add(fe):(E=null,Q=!1,f&&(b=`- peer dependency ${hx(fe.locator)} from parent ${hx(ne.locator)} was not hoisted to ${C}`))),J.delete(ce)}if(!Q)break}F=Q}if(F&&!I)for(let Q of n.hoistedDependencies.values()){let J=a.get(Q.name)||e.dependencies.get(Q.name);if(!J||Q.ident!==J.ident){F=!1,f&&(b=`- previously hoisted dependency mismatch, needed: ${hx(Q.locator)}, available: ${hx(J?.locator)}`);break}}return E!==null&&E.size>0?{isHoistable:$te.DEPENDS,dependsOn:E,reason:b}:{isHoistable:F?$te.YES:$te.NO,reason:b}},FGt=e=>`${e.name}@${e.locator}`,iCl=(e,t,r,n,a,o,l,A,f)=>{let I=t[t.length-1],C=new Set,b=!1,E=!1,N=(J,ae,ne,ce,fe)=>{if(C.has(ce))return;let ue=[...ae,FGt(ce)],de=[...ne,FGt(ce)],be=new Map,Se=new Map;for(let Le of FJr(ce)){let Je=nCl(I,r,[I,...J,ce],Le,n,a,o,A,{outputReason:f.debugLevel>=cJ.REASONS,fastLookupPossible:f.fastLookupPossible});if(Se.set(Le,Je),Je.isHoistable===$te.DEPENDS)for(let ft of Je.dependsOn){let lt=be.get(ft.name)||new Set;lt.add(Le.name),be.set(ft.name,lt)}}let De=new Set,k=(Le,Je,ft)=>{if(!De.has(Le)){De.add(Le),Se.set(Le,{isHoistable:$te.NO,reason:ft});for(let lt of be.get(Le.name)||[])k(ce.dependencies.get(lt),Je,f.debugLevel>=cJ.REASONS?`- peer dependency ${hx(Le.locator)} from parent ${hx(ce.locator)} was not hoisted`:"")}};for(let[Le,Je]of Se)Je.isHoistable===$te.NO&&k(Le,Je,Je.reason);let tt=!1;for(let Le of Se.keys())if(!De.has(Le)){E=!0;let Je=l.get(ce);Je&&Je.has(Le.name)&&(b=!0),tt=!0,ce.dependencies.delete(Le.name),ce.hoistedDependencies.set(Le.name,Le),ce.reasons.delete(Le.name);let ft=I.dependencies.get(Le.name);if(f.debugLevel>=cJ.REASONS){let lt=Array.from(ae).concat([ce.locator]).map(Er=>hx(Er)).join("\u2192"),Ot=I.hoistedFrom.get(Le.name);Ot||(Ot=[],I.hoistedFrom.set(Le.name,Ot)),Ot.push(lt),ce.hoistedTo.set(Le.name,Array.from(t).map(Er=>hx(Er.locator)).join("\u2192"))}if(!ft)I.ident!==Le.ident&&(I.dependencies.set(Le.name,Le),fe.add(Le));else for(let lt of Le.references)ft.references.add(lt)}if(ce.dependencyKind===E0e.EXTERNAL_SOFT_LINK&&tt&&(b=!0),f.check){let Le=IAs(e);if(Le)throw new Error(`${Le}, after hoisting dependencies of ${[I,...J,ce].map(Je=>hx(Je.locator)).join("\u2192")}: -${y7e(e)}`)}let ze=FJr(ce);for(let Le of ze)if(De.has(Le)){let Je=Se.get(Le);if((a.get(Le.name)===Le.ident||!ce.reasons.has(Le.name))&&Je.isHoistable!==$te.YES&&ce.reasons.set(Le.name,Je.reason),!Le.isHoistBorder&&de.indexOf(FGt(Le))<0){C.add(ce);let lt=pAs(ce,Le);N([...J,ce],ue,de,lt,F),C.delete(ce)}}},B,F=new Set(FJr(I)),Q=Array.from(t).map(J=>FGt(J));do{B=F,F=new Set;for(let J of B){if(J.locator===I.locator||J.isHoistBorder)continue;let ae=pAs(I,J);N([],Array.from(r),Q,ae,F)}}while(F.size>0);return{anotherRoundNeeded:b,isGraphChanged:E}},IAs=e=>{let t=[],r=new Set,n=new Set,a=(o,l,A)=>{if(r.has(o)||(r.add(o),n.has(o)))return;let f=new Map(l);for(let I of o.dependencies.values())o.peerNames.has(I.name)||f.set(I.name,I);for(let I of o.originalDependencies.values()){let C=f.get(I.name),b=()=>`${Array.from(n).concat([o]).map(E=>hx(E.locator)).join("\u2192")}`;if(o.peerNames.has(I.name)){let E=l.get(I.name);(E!==C||!E||E.ident!==I.ident)&&t.push(`${b()} - broken peer promise: expected ${I.ident} but found ${E&&E.ident}`)}else{let E=A.hoistedFrom.get(o.name),N=o.hoistedTo.get(I.name),B=`${E?` hoisted from ${E.join(", ")}`:""}`,F=`${N?` hoisted to ${N}`:""}`,Q=`${b()}${B}`;C?C.ident!==I.ident&&t.push(`${Q} - broken require promise for ${I.name}${F}: expected ${I.ident}, but found: ${C.ident}`):t.push(`${Q} - broken require promise: no required dependency ${I.name}${F} found`)}}n.add(o);for(let I of o.dependencies.values())o.peerNames.has(I.name)||a(I,f,o);n.delete(o)};return a(e,e.dependencies,e),t.join(` -`)},sCl=(e,t)=>{let{identName:r,name:n,reference:a,peerNames:o}=e,l={name:n,references:new Set([a]),locator:ZJr(r,a),ident:dAs(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(o),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:E0e.WORKSPACE,hoistedFrom:new Map,hoistedTo:new Map},A=new Map([[e,l]]),f=(I,C)=>{let b=A.get(I),E=!!b;if(!b){let{name:N,identName:B,reference:F,peerNames:Q,hoistPriority:J,dependencyKind:ae}=I,ne=t.hoistingLimits.get(C.locator);b={name:N,references:new Set([F]),locator:ZJr(B,F),ident:dAs(B,F),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(Q),reasons:new Map,decoupled:!0,isHoistBorder:ne?ne.has(N):!1,hoistPriority:J||0,dependencyKind:ae||E0e.REGULAR,hoistedFrom:new Map,hoistedTo:new Map},A.set(I,b)}if(C.dependencies.set(I.name,b),C.originalDependencies.set(I.name,b),E){let N=new Set,B=F=>{if(!N.has(F)){N.add(F),F.decoupled=!1;for(let Q of F.dependencies.values())F.peerNames.has(Q.name)||B(Q)}};B(b)}else for(let N of I.dependencies)f(N,b)};for(let I of e.dependencies)f(I,l);return l},VJr=e=>e.substring(0,e.indexOf("@",1)),oCl=e=>{let t={name:e.name,identName:VJr(e.locator),references:new Set(e.references),dependencies:new Set},r=new Set([e]),n=(a,o,l)=>{let A=r.has(a),f;if(o===a)f=l;else{let{name:I,references:C,locator:b}=a;f={name:I,identName:VJr(b),references:C,dependencies:new Set}}if(l.dependencies.add(f),!A){r.add(a);for(let I of a.dependencies.values())a.peerNames.has(I.name)||n(I,a,f);r.delete(a)}};for(let a of e.dependencies.values())n(a,e,t);return t},aCl=e=>{let t=new Map,r=new Set([e]),n=l=>`${l.name}@${l.ident}`,a=l=>{let A=n(l),f=t.get(A);return f||(f={dependents:new Set,peerDependents:new Set,hoistPriority:0},t.set(A,f)),f},o=(l,A)=>{let f=!!r.has(A);if(a(A).dependents.add(l.ident),!f){r.add(A);for(let C of A.dependencies.values()){let b=a(C);b.hoistPriority=Math.max(b.hoistPriority,C.hoistPriority),A.peerNames.has(C.name)?b.peerDependents.add(A.ident):o(A,C)}}};for(let l of e.dependencies.values())e.peerNames.has(l.name)||o(e,l);return t},hx=e=>{if(!e)return"none";let t=e.indexOf("@",1),r=e.substring(0,t);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let n=e.substring(t+1);if(n==="workspace:.")return".";if(n){let a=(n.indexOf("#")>0?n.split("#")[1]:n).replace("npm:","");return n.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},fAs=5e4,y7e=e=>{let t=0,r=(a,o,l="")=>{if(t>fAs||o.has(a))return"";t++;let A=Array.from(a.dependencies.values()).sort((I,C)=>I.name===C.name?0:I.name>C.name?1:-1),f="";o.add(a);for(let I=0;I":"")+(E!==C.name?`a:${C.name}:`:"")+hx(C.locator)+(b?` ${b}`:"")} -`,f+=r(C,o,`${l}${IfAs?` +${_7e(A)}`);let E=hAs(A);if(E)throw new Error(`${E}, after hoisting finished: +${_7e(A)}`)}return o.debugLevel>=lJ.REASONS&&console.log(_7e(A)),n_l(A)};GGe.hoist=KCl;var jCl=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=o=>{if(!n.has(o)){n.add(o);for(let l of o.hoistedDependencies.values())r.set(l.name,l);for(let l of o.dependencies.values())o.peerNames.has(l.name)||a(l)}};return a(t),r},zCl=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=new Set,o=(l,A)=>{if(n.has(l))return;n.add(l);for(let I of l.hoistedDependencies.values())if(!A.has(I.name)){let C;for(let b of e)C=b.dependencies.get(I.name),C&&r.set(C.name,C)}let f=new Set;for(let I of l.dependencies.values())f.add(I.name);for(let I of l.dependencies.values())l.peerNames.has(I.name)||o(I,f)};return o(t,a),r},fAs=(e,t)=>{if(t.decoupled)return t;let{name:r,references:n,ident:a,locator:o,dependencies:l,originalDependencies:A,hoistedDependencies:f,peerNames:I,reasons:C,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:B,hoistedTo:F}=t,Q={name:r,references:new Set(n),ident:a,locator:o,dependencies:new Map(l),originalDependencies:new Map(A),hoistedDependencies:new Map(f),peerNames:new Set(I),reasons:new Map(C),decoupled:!0,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:new Map(B),hoistedTo:new Map(F)},J=Q.dependencies.get(r);return J&&J.ident==Q.ident&&Q.dependencies.set(r,Q),e.dependencies.set(Q.name,Q),Q},qCl=(e,t)=>{let r=new Map([[e.name,[e.ident]]]);for(let a of e.dependencies.values())e.peerNames.has(a.name)||r.set(a.name,[a.ident]);let n=Array.from(t.keys());n.sort((a,o)=>{let l=t.get(a),A=t.get(o);if(A.hoistPriority!==l.hoistPriority)return A.hoistPriority-l.hoistPriority;{let f=l.dependents.size+l.peerDependents.size;return A.dependents.size+A.peerDependents.size-f}});for(let a of n){let o=a.substring(0,a.indexOf("@",1)),l=a.substring(o.length+1);if(!e.peerNames.has(o)){let A=r.get(o);A||(A=[],r.set(o,A)),A.indexOf(l)<0&&A.push(l)}}return r},PJr=e=>{let t=new Set,r=(n,a=new Set)=>{if(!a.has(n)){a.add(n);for(let o of n.peerNames)if(!e.peerNames.has(o)){let l=e.dependencies.get(o);l&&!t.has(l)&&r(l,a)}t.add(n)}};for(let n of e.dependencies.values())e.peerNames.has(n.name)||r(n);return t},HJr=(e,t,r,n,a,o=new Set)=>{let l=t[t.length-1];if(o.has(l))return{anotherRoundNeeded:!1,isGraphChanged:!1};o.add(l);let A=i_l(l),f=qCl(l,A),I=e==l?new Map:a.fastLookupPossible?jCl(t):zCl(t),C,b=!1,E=!1,N=new Map(Array.from(f.entries()).map(([F,Q])=>[F,Q[0]])),B=new Map;do{let F=t_l(e,t,r,I,N,f,n,B,a);F.isGraphChanged&&(E=!0),F.anotherRoundNeeded&&(b=!0),C=!1;for(let[Q,J]of f)J.length>1&&!l.dependencies.has(Q)&&(N.delete(Q),J.shift(),N.set(Q,J[0]),C=!0)}while(C);for(let F of l.dependencies.values())if(!l.peerNames.has(F.name)&&!r.has(F.locator)){r.add(F.locator);let Q=HJr(e,[...t,F],r,B,a);Q.isGraphChanged&&(E=!0),Q.anotherRoundNeeded&&(b=!0),r.delete(F.locator)}return{anotherRoundNeeded:b,isGraphChanged:E}},$Cl=e=>{for(let[t,r]of e.dependencies)if(!e.peerNames.has(t)&&r.ident!==e.ident)return!0;return!1},e_l=(e,t,r,n,a,o,l,A,{outputReason:f,fastLookupPossible:I})=>{let C,b=null,E=new Set;f&&(C=`${Array.from(t).map(Q=>mx(Q)).join("\u2192")}`);let N=r[r.length-1],F=!(n.ident===N.ident);if(f&&!F&&(b="- self-reference"),F&&(F=n.dependencyKind!==E0e.WORKSPACE,f&&!F&&(b="- workspace")),F&&n.dependencyKind===E0e.EXTERNAL_SOFT_LINK&&(F=!$Cl(n),f&&!F&&(b="- external soft link with unhoisted dependencies")),F&&(F=!e.peerNames.has(n.name),f&&!F&&(b=`- cannot shadow peer: ${mx(e.originalDependencies.get(n.name).locator)} at ${C}`)),F){let Q=!1,J=a.get(n.name);if(Q=!J||J.ident===n.ident,f&&!Q&&(b=`- filled by: ${mx(J.locator)} at ${C}`),Q)for(let ae=r.length-1;ae>=1;ae--){let ce=r[ae].dependencies.get(n.name);if(ce&&ce.ident!==n.ident){Q=!1;let fe=A.get(N);fe||(fe=new Set,A.set(N,fe)),fe.add(n.name),f&&(b=`- filled by ${mx(ce.locator)} at ${r.slice(0,ae).map(ue=>mx(ue.locator)).join("\u2192")}`);break}}F=Q}if(F&&(F=o.get(n.name)===n.ident,f&&!F&&(b=`- filled by: ${mx(l.get(n.name)[0])} at ${C}`)),F){let Q=!0,J=new Set(n.peerNames);for(let ae=r.length-1;ae>=1;ae--){let ne=r[ae];for(let ce of J){if(ne.peerNames.has(ce)&&ne.originalDependencies.has(ce))continue;let fe=ne.dependencies.get(ce);fe&&e.dependencies.get(ce)!==fe&&(ae===r.length-1?E.add(fe):(E=null,Q=!1,f&&(b=`- peer dependency ${mx(fe.locator)} from parent ${mx(ne.locator)} was not hoisted to ${C}`))),J.delete(ce)}if(!Q)break}F=Q}if(F&&!I)for(let Q of n.hoistedDependencies.values()){let J=a.get(Q.name)||e.dependencies.get(Q.name);if(!J||Q.ident!==J.ident){F=!1,f&&(b=`- previously hoisted dependency mismatch, needed: ${mx(Q.locator)}, available: ${mx(J?.locator)}`);break}}return E!==null&&E.size>0?{isHoistable:ere.DEPENDS,dependsOn:E,reason:b}:{isHoistable:F?ere.YES:ere.NO,reason:b}},FGt=e=>`${e.name}@${e.locator}`,t_l=(e,t,r,n,a,o,l,A,f)=>{let I=t[t.length-1],C=new Set,b=!1,E=!1,N=(J,ae,ne,ce,fe)=>{if(C.has(ce))return;let ue=[...ae,FGt(ce)],de=[...ne,FGt(ce)],be=new Map,Se=new Map;for(let Le of PJr(ce)){let Je=e_l(I,r,[I,...J,ce],Le,n,a,o,A,{outputReason:f.debugLevel>=lJ.REASONS,fastLookupPossible:f.fastLookupPossible});if(Se.set(Le,Je),Je.isHoistable===ere.DEPENDS)for(let ft of Je.dependsOn){let lt=be.get(ft.name)||new Set;lt.add(Le.name),be.set(ft.name,lt)}}let De=new Set,k=(Le,Je,ft)=>{if(!De.has(Le)){De.add(Le),Se.set(Le,{isHoistable:ere.NO,reason:ft});for(let lt of be.get(Le.name)||[])k(ce.dependencies.get(lt),Je,f.debugLevel>=lJ.REASONS?`- peer dependency ${mx(Le.locator)} from parent ${mx(ce.locator)} was not hoisted`:"")}};for(let[Le,Je]of Se)Je.isHoistable===ere.NO&&k(Le,Je,Je.reason);let tt=!1;for(let Le of Se.keys())if(!De.has(Le)){E=!0;let Je=l.get(ce);Je&&Je.has(Le.name)&&(b=!0),tt=!0,ce.dependencies.delete(Le.name),ce.hoistedDependencies.set(Le.name,Le),ce.reasons.delete(Le.name);let ft=I.dependencies.get(Le.name);if(f.debugLevel>=lJ.REASONS){let lt=Array.from(ae).concat([ce.locator]).map(Er=>mx(Er)).join("\u2192"),Ot=I.hoistedFrom.get(Le.name);Ot||(Ot=[],I.hoistedFrom.set(Le.name,Ot)),Ot.push(lt),ce.hoistedTo.set(Le.name,Array.from(t).map(Er=>mx(Er.locator)).join("\u2192"))}if(!ft)I.ident!==Le.ident&&(I.dependencies.set(Le.name,Le),fe.add(Le));else for(let lt of Le.references)ft.references.add(lt)}if(ce.dependencyKind===E0e.EXTERNAL_SOFT_LINK&&tt&&(b=!0),f.check){let Le=hAs(e);if(Le)throw new Error(`${Le}, after hoisting dependencies of ${[I,...J,ce].map(Je=>mx(Je.locator)).join("\u2192")}: +${_7e(e)}`)}let ze=PJr(ce);for(let Le of ze)if(De.has(Le)){let Je=Se.get(Le);if((a.get(Le.name)===Le.ident||!ce.reasons.has(Le.name))&&Je.isHoistable!==ere.YES&&ce.reasons.set(Le.name,Je.reason),!Le.isHoistBorder&&de.indexOf(FGt(Le))<0){C.add(ce);let lt=fAs(ce,Le);N([...J,ce],ue,de,lt,F),C.delete(ce)}}},B,F=new Set(PJr(I)),Q=Array.from(t).map(J=>FGt(J));do{B=F,F=new Set;for(let J of B){if(J.locator===I.locator||J.isHoistBorder)continue;let ae=fAs(I,J);N([],Array.from(r),Q,ae,F)}}while(F.size>0);return{anotherRoundNeeded:b,isGraphChanged:E}},hAs=e=>{let t=[],r=new Set,n=new Set,a=(o,l,A)=>{if(r.has(o)||(r.add(o),n.has(o)))return;let f=new Map(l);for(let I of o.dependencies.values())o.peerNames.has(I.name)||f.set(I.name,I);for(let I of o.originalDependencies.values()){let C=f.get(I.name),b=()=>`${Array.from(n).concat([o]).map(E=>mx(E.locator)).join("\u2192")}`;if(o.peerNames.has(I.name)){let E=l.get(I.name);(E!==C||!E||E.ident!==I.ident)&&t.push(`${b()} - broken peer promise: expected ${I.ident} but found ${E&&E.ident}`)}else{let E=A.hoistedFrom.get(o.name),N=o.hoistedTo.get(I.name),B=`${E?` hoisted from ${E.join(", ")}`:""}`,F=`${N?` hoisted to ${N}`:""}`,Q=`${b()}${B}`;C?C.ident!==I.ident&&t.push(`${Q} - broken require promise for ${I.name}${F}: expected ${I.ident}, but found: ${C.ident}`):t.push(`${Q} - broken require promise: no required dependency ${I.name}${F} found`)}}n.add(o);for(let I of o.dependencies.values())o.peerNames.has(I.name)||a(I,f,o);n.delete(o)};return a(e,e.dependencies,e),t.join(` +`)},r_l=(e,t)=>{let{identName:r,name:n,reference:a,peerNames:o}=e,l={name:n,references:new Set([a]),locator:MJr(r,a),ident:pAs(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(o),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:E0e.WORKSPACE,hoistedFrom:new Map,hoistedTo:new Map},A=new Map([[e,l]]),f=(I,C)=>{let b=A.get(I),E=!!b;if(!b){let{name:N,identName:B,reference:F,peerNames:Q,hoistPriority:J,dependencyKind:ae}=I,ne=t.hoistingLimits.get(C.locator);b={name:N,references:new Set([F]),locator:MJr(B,F),ident:pAs(B,F),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(Q),reasons:new Map,decoupled:!0,isHoistBorder:ne?ne.has(N):!1,hoistPriority:J||0,dependencyKind:ae||E0e.REGULAR,hoistedFrom:new Map,hoistedTo:new Map},A.set(I,b)}if(C.dependencies.set(I.name,b),C.originalDependencies.set(I.name,b),E){let N=new Set,B=F=>{if(!N.has(F)){N.add(F),F.decoupled=!1;for(let Q of F.dependencies.values())F.peerNames.has(Q.name)||B(Q)}};B(b)}else for(let N of I.dependencies)f(N,b)};for(let I of e.dependencies)f(I,l);return l},YJr=e=>e.substring(0,e.indexOf("@",1)),n_l=e=>{let t={name:e.name,identName:YJr(e.locator),references:new Set(e.references),dependencies:new Set},r=new Set([e]),n=(a,o,l)=>{let A=r.has(a),f;if(o===a)f=l;else{let{name:I,references:C,locator:b}=a;f={name:I,identName:YJr(b),references:C,dependencies:new Set}}if(l.dependencies.add(f),!A){r.add(a);for(let I of a.dependencies.values())a.peerNames.has(I.name)||n(I,a,f);r.delete(a)}};for(let a of e.dependencies.values())n(a,e,t);return t},i_l=e=>{let t=new Map,r=new Set([e]),n=l=>`${l.name}@${l.ident}`,a=l=>{let A=n(l),f=t.get(A);return f||(f={dependents:new Set,peerDependents:new Set,hoistPriority:0},t.set(A,f)),f},o=(l,A)=>{let f=!!r.has(A);if(a(A).dependents.add(l.ident),!f){r.add(A);for(let C of A.dependencies.values()){let b=a(C);b.hoistPriority=Math.max(b.hoistPriority,C.hoistPriority),A.peerNames.has(C.name)?b.peerDependents.add(A.ident):o(A,C)}}};for(let l of e.dependencies.values())e.peerNames.has(l.name)||o(e,l);return t},mx=e=>{if(!e)return"none";let t=e.indexOf("@",1),r=e.substring(0,t);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let n=e.substring(t+1);if(n==="workspace:.")return".";if(n){let a=(n.indexOf("#")>0?n.split("#")[1]:n).replace("npm:","");return n.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},IAs=5e4,_7e=e=>{let t=0,r=(a,o,l="")=>{if(t>IAs||o.has(a))return"";t++;let A=Array.from(a.dependencies.values()).sort((I,C)=>I.name===C.name?0:I.name>C.name?1:-1),f="";o.add(a);for(let I=0;I":"")+(E!==C.name?`a:${C.name}:`:"")+mx(C.locator)+(b?` ${b}`:"")} +`,f+=r(C,o,`${l}${IIAs?` Tree is too large, part of the tree has been dunped -`:"")}});var LGt=H(PH=>{"use strict";Object.defineProperty(PH,"__esModule",{value:!0});PH.buildLocatorMap=PH.buildNodeModulesTree=PH.getArchivePath=PH.NodeModulesHoistingLimits=PH.LinkType=void 0;var U_=mn(),UR=Io(),hAs=Io(),FGe=WJr(),lJ;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(lJ||(PH.LinkType=lJ={}));var b7e;(function(e){e.WORKSPACES="workspaces",e.DEPENDENCIES="dependencies",e.NONE="none"})(b7e||(PH.NodeModulesHoistingLimits=b7e={}));var ZGt="node_modules",Vue="$wsroot$",cCl=e=>e.indexOf(`.zip/${ZGt}/`)>=0?UR.npath.toPortablePath(e.split(`/${ZGt}/`)[0]):null;PH.getArchivePath=cCl;var lCl=(e,t)=>{let{packageTree:r,hoistingLimits:n,errors:a,preserveSymlinksRequired:o}=ACl(e,t),l=null;if(a.length===0){let A=(0,FGe.hoist)(r,{hoistingLimits:n});l=pCl(e,A,t)}return{tree:l,errors:a,preserveSymlinksRequired:o}};PH.buildNodeModulesTree=lCl;var wj=e=>`${e.name}@${e.reference}`,uCl=e=>{let t=new Map;for(let[r,n]of e.entries())if(!n.dirList){let a=t.get(n.locator);a||(a={target:n.target,linkType:n.linkType,locations:[],aliases:n.aliases},t.set(n.locator,a)),a.locations.push(r)}for(let r of t.values())r.locations=r.locations.sort((n,a)=>{let o=n.split(UR.ppath.delimiter).length,l=a.split(UR.ppath.delimiter).length;return a===n?0:o!==l?l-o:a>n?1:-1});return t};PH.buildLocatorMap=uCl;var mAs=(e,t)=>{let r=U_.structUtils.isVirtualLocator(e)?U_.structUtils.devirtualizeLocator(e):e,n=U_.structUtils.isVirtualLocator(t)?U_.structUtils.devirtualizeLocator(t):t;return U_.structUtils.areLocatorsEqual(r,n)},OJr=(e,t,r,n)=>{if(e.linkType!==lJ.SOFT)return!1;let a=UR.npath.toPortablePath(r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation);return UR.ppath.contains(n,a)===null},gCl=e=>{let t=e.getPackageInformation(e.topLevel);if(t===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(e.findPackageLocator(t.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let n=UR.npath.toPortablePath(t.packageLocation.slice(0,-1)),a=new Map,o={children:new Map},l=e.getDependencyTreeRoots(),A=new Map,f=new Set,I=(E,N)=>{let B=wj(E);if(f.has(B))return;f.add(B);let F=e.getPackageInformation(E);if(F){let Q=N?wj(N):"";if(wj(E)!==Q&&F.linkType===lJ.SOFT&&!E.reference.startsWith("link:")&&!OJr(F,E,e,n)){let J=CAs(F,E,e);(!A.get(J)||E.reference.startsWith("workspace:"))&&A.set(J,E)}for(let[J,ae]of F.packageDependencies)ae!==null&&(F.packagePeers.has(J)||I(e.getLocator(J,ae),E))}};for(let E of l)I(E,null);let C=n.split(UR.ppath.sep);for(let E of A.values()){let N=e.getPackageInformation(E),F=UR.npath.toPortablePath(N.packageLocation.slice(0,-1)).split(UR.ppath.sep).slice(C.length),Q=o;for(let J of F){let ae=Q.children.get(J);ae||(ae={children:new Map},Q.children.set(J,ae)),Q=ae}Q.workspaceLocator=E}let b=(E,N)=>{if(E.workspaceLocator){let B=wj(N),F=a.get(B);F||(F=new Set,a.set(B,F)),F.add(E.workspaceLocator)}for(let B of E.children.values())b(B,E.workspaceLocator||N)};for(let E of o.children.values())b(E,o.workspaceLocator);return a},ACl=(e,t)=>{let r=[],n=!1,a=new Map,o=gCl(e),l=e.getPackageInformation(e.topLevel);if(l===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let A=e.findPackageLocator(l.packageLocation);if(A===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let f=UR.npath.toPortablePath(l.packageLocation.slice(0,-1)),I={name:A.name,identName:A.name,reference:A.reference,peerNames:l.packagePeers,dependencies:new Set,dependencyKind:FGe.HoisterDependencyKind.WORKSPACE},C=new Map,b=(N,B)=>`${wj(B)}:${N}`,E=(N,B,F,Q,J,ae,ne,ce)=>{let fe=b(N,F),ue=C.get(fe),de=!!ue;!de&&F.name===A.name&&F.reference===A.reference&&(ue=I,C.set(fe,I));let be=OJr(B,F,e,f);if(!ue){let Le=FGe.HoisterDependencyKind.REGULAR;be?Le=FGe.HoisterDependencyKind.EXTERNAL_SOFT_LINK:B.linkType===lJ.SOFT&&F.name.endsWith(Vue)&&(Le=FGe.HoisterDependencyKind.WORKSPACE),ue={name:N,identName:F.name,reference:F.reference,dependencies:new Set,peerNames:Le===FGe.HoisterDependencyKind.WORKSPACE?new Set:B.packagePeers,dependencyKind:Le},C.set(fe,ue)}let Se;if(be?Se=2:J.linkType===lJ.SOFT?Se=1:Se=0,ue.hoistPriority=Math.max(ue.hoistPriority||0,Se),ce&&!be){let Le=wj({name:Q.identName,reference:Q.reference}),Je=a.get(Le)||new Set;a.set(Le,Je),Je.add(ue.name)}let De=new Map(B.packageDependencies);if(t.project){let Le=t.project.workspacesByCwd.get(UR.npath.toPortablePath(B.packageLocation.slice(0,-1)));if(Le){let Je=new Set([...Array.from(Le.manifest.peerDependencies.values(),ft=>U_.structUtils.stringifyIdent(ft)),...Array.from(Le.manifest.peerDependenciesMeta.keys())]);for(let ft of Je)De.has(ft)||(De.set(ft,ae.get(ft)||null),ue.peerNames.add(ft))}}let k=wj({name:F.name.replace(Vue,""),reference:F.reference}),tt=o.get(k);if(tt)for(let Le of tt)De.set(`${Le.name}${Vue}`,Le.reference);(B!==J||B.linkType!==lJ.SOFT||!be&&(!t.selfReferencesByCwd||t.selfReferencesByCwd.get(ne)))&&Q.dependencies.add(ue);let ze=F!==A&&B.linkType===lJ.SOFT&&!F.name.endsWith(Vue)&&!be;if(!de&&!ze){let Le=new Map;for(let[Je,ft]of De)if(ft!==null){let lt=e.getLocator(Je,ft),Ot=e.getLocator(Je.replace(Vue,""),ft),Er=e.getPackageInformation(Ot);if(Er===null)throw new Error("Assertion failed: Expected the package to have been registered");let Sr=OJr(Er,lt,e,f);if(t.validateExternalSoftLinks&&t.project&&Sr){Er.packageDependencies.size>0&&(n=!0);for(let[$t,Xt]of Er.packageDependencies)if(Xt!==null){let lr=U_.structUtils.parseLocator(Array.isArray(Xt)?`${Xt[0]}@${Xt[1]}`:`${$t}@${Xt}`);if(wj(lr)!==wj(lt)){let cr=De.get($t);if(cr){let Ar=U_.structUtils.parseLocator(Array.isArray(cr)?`${cr[0]}@${cr[1]}`:`${$t}@${cr}`);mAs(Ar,lr)||r.push({messageName:U_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${U_.structUtils.prettyIdent(t.project.configuration,U_.structUtils.parseIdent(lt.name))} into ${U_.structUtils.prettyLocator(t.project.configuration,U_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${U_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with parent dependency ${U_.structUtils.prettyLocator(t.project.configuration,Ar)}`})}else{let Ar=Le.get($t);if(Ar){let qr=Ar.target,yn=U_.structUtils.parseLocator(Array.isArray(qr)?`${qr[0]}@${qr[1]}`:`${$t}@${qr}`);mAs(yn,lr)||r.push({messageName:U_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${U_.structUtils.prettyIdent(t.project.configuration,U_.structUtils.parseIdent(lt.name))} into ${U_.structUtils.prettyLocator(t.project.configuration,U_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${U_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with dependency ${U_.structUtils.prettyLocator(t.project.configuration,yn)} from sibling portal ${U_.structUtils.prettyIdent(t.project.configuration,U_.structUtils.parseIdent(Ar.portal.name))}`})}else Le.set($t,{target:lr.reference,portal:lt})}}}}let jt=t.hoistingLimitsByCwd?.get(ne),Bt=Sr?ne:UR.ppath.relative(f,UR.npath.toPortablePath(Er.packageLocation))||hAs.PortablePath.dot,Dt=t.hoistingLimitsByCwd?.get(Bt),Fr=jt===b7e.DEPENDENCIES||Dt===b7e.DEPENDENCIES||Dt===b7e.WORKSPACES;E(Je,Er,lt,ue,B,De,Bt,Fr)}}};return E(A.name,l,A,I,l,l.packageDependencies,hAs.PortablePath.dot,!1),{packageTree:I,hoistingLimits:a,errors:r,preserveSymlinksRequired:n}};function CAs(e,t,r){let n=r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation;return UR.npath.toPortablePath(n||e.packageLocation)}function dCl(e,t,r){let n=t.getLocator(e.name.replace(Vue,""),e.reference),a=t.getPackageInformation(n);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:lJ.SOFT,target:UR.npath.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:CAs(a,e,t)}}var pCl=(e,t,r)=>{let n=new Map,a=(C,b,E)=>{let{linkType:N,target:B}=dCl(C,e,r);return{locator:wj(C),nodePath:b,target:B,linkType:N,aliases:E}},o=C=>{let[b,E]=C.split("/");return E?{scope:b,name:E}:{scope:null,name:b}},l=new Set,A=(C,b,E)=>{if(l.has(C))return;l.add(C);let N=Array.from(C.references).sort().join("#");for(let B of C.dependencies){let F=Array.from(B.references).sort().join("#");if(B.identName===C.identName.replace(Vue,"")&&F===N)continue;let Q=Array.from(B.references).sort(),J={name:B.identName,reference:Q[0]},{name:ae,scope:ne}=o(B.name),ce=ne?[ne,ae]:[ae],fe=UR.ppath.join(b,ZGt),ue=UR.ppath.join(fe,...ce),de=`${E}/${J.name}`,be=a(J,E,Q.slice(1)),Se=!1;if(be.linkType===lJ.SOFT&&r.project){let De=r.project.workspacesByCwd.get(be.target.slice(0,-1));Se=!!(De&&!De.manifest.name)}if(!B.name.endsWith(Vue)&&!Se){let De=n.get(ue);if(De){if(De.dirList)throw new Error(`Assertion failed: ${ue} cannot merge dir node with leaf node`);{let ze=U_.structUtils.parseLocator(De.locator),Le=U_.structUtils.parseLocator(be.locator);if(De.linkType!==be.linkType)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different link types ${De.nodePath}/${U_.structUtils.stringifyLocator(ze)} and ${E}/${U_.structUtils.stringifyLocator(Le)}`);if(ze.identHash!==Le.identHash)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different idents ${De.nodePath}/${U_.structUtils.stringifyLocator(ze)} and ${E}/s${U_.structUtils.stringifyLocator(Le)}`);be.aliases=[...be.aliases,...De.aliases,U_.structUtils.parseLocator(De.locator).reference]}}n.set(ue,be);let k=ue.split("/"),tt=k.indexOf(ZGt);for(let ze=k.length-1;tt>=0&&ze>tt;ze--){let Le=UR.npath.toPortablePath(k.slice(0,ze).join(UR.ppath.sep)),Je=k[ze],ft=n.get(Le);if(!ft)n.set(Le,{dirList:new Set([Je])});else if(ft.dirList){if(ft.dirList.has(Je))break;ft.dirList.add(Je)}}}A(B,be.linkType===lJ.SOFT?be.target:ue,de)}},f=a({name:t.name,reference:Array.from(t.references)[0]},"",[]),I=f.target;return n.set(I,f),A(t,I,""),n}});var E7e=H($V=>{"use strict";Object.defineProperty($V,"__esModule",{value:!0});$V.HoisterDependencyKind=$V.hoist=$V.getArchivePath=$V.buildLocatorMap=$V.buildNodeModulesTree=$V.NodeModulesHoistingLimits=void 0;var fCl=LGt();Object.defineProperty($V,"getArchivePath",{enumerable:!0,get:function(){return fCl.getArchivePath}});var _As=LGt();Object.defineProperty($V,"buildNodeModulesTree",{enumerable:!0,get:function(){return _As.buildNodeModulesTree}});Object.defineProperty($V,"buildLocatorMap",{enumerable:!0,get:function(){return _As.buildLocatorMap}});var ICl=LGt();Object.defineProperty($V,"NodeModulesHoistingLimits",{enumerable:!0,get:function(){return ICl.NodeModulesHoistingLimits}});var yAs=WJr();Object.defineProperty($V,"hoist",{enumerable:!0,get:function(){return yAs.hoist}});Object.defineProperty($V,"HoisterDependencyKind",{enumerable:!0,get:function(){return yAs.HoisterDependencyKind}})});var iUr=H(uJ=>{"use strict";Object.defineProperty(uJ,"__esModule",{value:!0});var hCl=Et("zlib"),xAs=Et("path"),S0e=Et("module"),sB=Et("url"),bAs=Et("util"),mCl=Et("assert"),CCl=Et("fs"),_Cl=Et("crypto"),yCl=Et("os"),YGt=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},GAs=YGt(hCl),WGt=YGt(xAs),bCl=YGt(mCl),ECl=YGt(CCl),FAs=(e=>(e.HARD="HARD",e.SOFT="SOFT",e))(FAs||{}),SCl=456789e3,XJr={root:"/",dot:".",parent:".."},OGt={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},Rc=Object.create(WGt.default),fh=Object.create(WGt.default.posix);Rc.cwd=()=>process.cwd();fh.cwd=process.platform==="win32"?()=>eUr(process.cwd()):process.cwd;process.platform==="win32"&&(fh.resolve=(...e)=>e.length>0&&fh.isAbsolute(e[0])?WGt.default.posix.resolve(...e):WGt.default.posix.resolve(fh.cwd(),...e));var ZAs=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};Rc.contains=(e,t)=>ZAs(Rc,e,t);fh.contains=(e,t)=>ZAs(fh,e,t);var vCl=/^([a-zA-Z]:.*)$/,BCl=/^\/\/(\.\/)?(.*)$/,wCl=/^\/([a-zA-Z]:.*)$/,TCl=/^\/unc\/(\.dot\/)?(.*)$/;function RCl(e){let t,r;if(t=e.match(wCl))e=t[1];else if(r=e.match(TCl))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function NCl(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(vCl))?e=`/${t[1]}`:(r=e.match(BCl))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var eUr=process.platform==="win32"?NCl:e=>e,LAs=process.platform==="win32"?RCl:e=>e;Rc.fromPortablePath=LAs;Rc.toPortablePath=eUr;function VAs(e,t){return e===Rc?LAs(t):eUr(t)}var B0e=new Date(SCl*1e3),DCl=B0e.getTime();async function kCl(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:B0e,mtime:B0e}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await JJr(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function JJr(e,t,r,n,a,o,l){let A=l.didParentExist?await WAs(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:B0e,mtime:B0e}:f,b;switch(!0){case f.isDirectory():b=await xCl(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await ZCl(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await LCl(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function WAs(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function xCl(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await JJr(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await JJr(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function GCl(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(ce=>{ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=1,J=await WAs(r,B);if(a){let ce=J&&a.dev===J.dev&&a.ino===J.ino,fe=J?.mtimeMs!==DCl;if(ce&&fe&&I.autoRepair&&(Q=0,J=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!J&&Q===1?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!J&&(Q===0&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===1&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{J||(await r.lutimesPromise(B,B0e,B0e),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function FCl(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function ZCl(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?GCl(e,t,r,n,a,o,l,A,f,f.linkStrategy):FCl(e,t,r,n,a,o,l,A,f)}async function LCl(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(VAs(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}var PGt=class{pathUtils;constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=_Cl.createHash(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await kCl(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync(VAs(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?EAs(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?EAs(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} +`:"")}});var LGt=H(MH=>{"use strict";Object.defineProperty(MH,"__esModule",{value:!0});MH.buildLocatorMap=MH.buildNodeModulesTree=MH.getArchivePath=MH.NodeModulesHoistingLimits=MH.LinkType=void 0;var K_=wn(),KR=No(),mAs=No(),FGe=QJr(),uJ;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(uJ||(MH.LinkType=uJ={}));var y7e;(function(e){e.WORKSPACES="workspaces",e.DEPENDENCIES="dependencies",e.NONE="none"})(y7e||(MH.NodeModulesHoistingLimits=y7e={}));var ZGt="node_modules",Wue="$wsroot$",s_l=e=>e.indexOf(`.zip/${ZGt}/`)>=0?KR.npath.toPortablePath(e.split(`/${ZGt}/`)[0]):null;MH.getArchivePath=s_l;var o_l=(e,t)=>{let{packageTree:r,hoistingLimits:n,errors:a,preserveSymlinksRequired:o}=l_l(e,t),l=null;if(a.length===0){let A=(0,FGe.hoist)(r,{hoistingLimits:n});l=g_l(e,A,t)}return{tree:l,errors:a,preserveSymlinksRequired:o}};MH.buildNodeModulesTree=o_l;var Tj=e=>`${e.name}@${e.reference}`,a_l=e=>{let t=new Map;for(let[r,n]of e.entries())if(!n.dirList){let a=t.get(n.locator);a||(a={target:n.target,linkType:n.linkType,locations:[],aliases:n.aliases},t.set(n.locator,a)),a.locations.push(r)}for(let r of t.values())r.locations=r.locations.sort((n,a)=>{let o=n.split(KR.ppath.delimiter).length,l=a.split(KR.ppath.delimiter).length;return a===n?0:o!==l?l-o:a>n?1:-1});return t};MH.buildLocatorMap=a_l;var CAs=(e,t)=>{let r=K_.structUtils.isVirtualLocator(e)?K_.structUtils.devirtualizeLocator(e):e,n=K_.structUtils.isVirtualLocator(t)?K_.structUtils.devirtualizeLocator(t):t;return K_.structUtils.areLocatorsEqual(r,n)},XJr=(e,t,r,n)=>{if(e.linkType!==uJ.SOFT)return!1;let a=KR.npath.toPortablePath(r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation);return KR.ppath.contains(n,a)===null},c_l=e=>{let t=e.getPackageInformation(e.topLevel);if(t===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(e.findPackageLocator(t.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let n=KR.npath.toPortablePath(t.packageLocation.slice(0,-1)),a=new Map,o={children:new Map},l=e.getDependencyTreeRoots(),A=new Map,f=new Set,I=(E,N)=>{let B=Tj(E);if(f.has(B))return;f.add(B);let F=e.getPackageInformation(E);if(F){let Q=N?Tj(N):"";if(Tj(E)!==Q&&F.linkType===uJ.SOFT&&!E.reference.startsWith("link:")&&!XJr(F,E,e,n)){let J=_As(F,E,e);(!A.get(J)||E.reference.startsWith("workspace:"))&&A.set(J,E)}for(let[J,ae]of F.packageDependencies)ae!==null&&(F.packagePeers.has(J)||I(e.getLocator(J,ae),E))}};for(let E of l)I(E,null);let C=n.split(KR.ppath.sep);for(let E of A.values()){let N=e.getPackageInformation(E),F=KR.npath.toPortablePath(N.packageLocation.slice(0,-1)).split(KR.ppath.sep).slice(C.length),Q=o;for(let J of F){let ae=Q.children.get(J);ae||(ae={children:new Map},Q.children.set(J,ae)),Q=ae}Q.workspaceLocator=E}let b=(E,N)=>{if(E.workspaceLocator){let B=Tj(N),F=a.get(B);F||(F=new Set,a.set(B,F)),F.add(E.workspaceLocator)}for(let B of E.children.values())b(B,E.workspaceLocator||N)};for(let E of o.children.values())b(E,o.workspaceLocator);return a},l_l=(e,t)=>{let r=[],n=!1,a=new Map,o=c_l(e),l=e.getPackageInformation(e.topLevel);if(l===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let A=e.findPackageLocator(l.packageLocation);if(A===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let f=KR.npath.toPortablePath(l.packageLocation.slice(0,-1)),I={name:A.name,identName:A.name,reference:A.reference,peerNames:l.packagePeers,dependencies:new Set,dependencyKind:FGe.HoisterDependencyKind.WORKSPACE},C=new Map,b=(N,B)=>`${Tj(B)}:${N}`,E=(N,B,F,Q,J,ae,ne,ce)=>{let fe=b(N,F),ue=C.get(fe),de=!!ue;!de&&F.name===A.name&&F.reference===A.reference&&(ue=I,C.set(fe,I));let be=XJr(B,F,e,f);if(!ue){let Le=FGe.HoisterDependencyKind.REGULAR;be?Le=FGe.HoisterDependencyKind.EXTERNAL_SOFT_LINK:B.linkType===uJ.SOFT&&F.name.endsWith(Wue)&&(Le=FGe.HoisterDependencyKind.WORKSPACE),ue={name:N,identName:F.name,reference:F.reference,dependencies:new Set,peerNames:Le===FGe.HoisterDependencyKind.WORKSPACE?new Set:B.packagePeers,dependencyKind:Le},C.set(fe,ue)}let Se;if(be?Se=2:J.linkType===uJ.SOFT?Se=1:Se=0,ue.hoistPriority=Math.max(ue.hoistPriority||0,Se),ce&&!be){let Le=Tj({name:Q.identName,reference:Q.reference}),Je=a.get(Le)||new Set;a.set(Le,Je),Je.add(ue.name)}let De=new Map(B.packageDependencies);if(t.project){let Le=t.project.workspacesByCwd.get(KR.npath.toPortablePath(B.packageLocation.slice(0,-1)));if(Le){let Je=new Set([...Array.from(Le.manifest.peerDependencies.values(),ft=>K_.structUtils.stringifyIdent(ft)),...Array.from(Le.manifest.peerDependenciesMeta.keys())]);for(let ft of Je)De.has(ft)||(De.set(ft,ae.get(ft)||null),ue.peerNames.add(ft))}}let k=Tj({name:F.name.replace(Wue,""),reference:F.reference}),tt=o.get(k);if(tt)for(let Le of tt)De.set(`${Le.name}${Wue}`,Le.reference);(B!==J||B.linkType!==uJ.SOFT||!be&&(!t.selfReferencesByCwd||t.selfReferencesByCwd.get(ne)))&&Q.dependencies.add(ue);let ze=F!==A&&B.linkType===uJ.SOFT&&!F.name.endsWith(Wue)&&!be;if(!de&&!ze){let Le=new Map;for(let[Je,ft]of De)if(ft!==null){let lt=e.getLocator(Je,ft),Ot=e.getLocator(Je.replace(Wue,""),ft),Er=e.getPackageInformation(Ot);if(Er===null)throw new Error("Assertion failed: Expected the package to have been registered");let Sr=XJr(Er,lt,e,f);if(t.validateExternalSoftLinks&&t.project&&Sr){Er.packageDependencies.size>0&&(n=!0);for(let[$t,Xt]of Er.packageDependencies)if(Xt!==null){let lr=K_.structUtils.parseLocator(Array.isArray(Xt)?`${Xt[0]}@${Xt[1]}`:`${$t}@${Xt}`);if(Tj(lr)!==Tj(lt)){let cr=De.get($t);if(cr){let Ar=K_.structUtils.parseLocator(Array.isArray(cr)?`${cr[0]}@${cr[1]}`:`${$t}@${cr}`);CAs(Ar,lr)||r.push({messageName:K_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${K_.structUtils.prettyIdent(t.project.configuration,K_.structUtils.parseIdent(lt.name))} into ${K_.structUtils.prettyLocator(t.project.configuration,K_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${K_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with parent dependency ${K_.structUtils.prettyLocator(t.project.configuration,Ar)}`})}else{let Ar=Le.get($t);if(Ar){let qr=Ar.target,_n=K_.structUtils.parseLocator(Array.isArray(qr)?`${qr[0]}@${qr[1]}`:`${$t}@${qr}`);CAs(_n,lr)||r.push({messageName:K_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${K_.structUtils.prettyIdent(t.project.configuration,K_.structUtils.parseIdent(lt.name))} into ${K_.structUtils.prettyLocator(t.project.configuration,K_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${K_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with dependency ${K_.structUtils.prettyLocator(t.project.configuration,_n)} from sibling portal ${K_.structUtils.prettyIdent(t.project.configuration,K_.structUtils.parseIdent(Ar.portal.name))}`})}else Le.set($t,{target:lr.reference,portal:lt})}}}}let jt=t.hoistingLimitsByCwd?.get(ne),Bt=Sr?ne:KR.ppath.relative(f,KR.npath.toPortablePath(Er.packageLocation))||mAs.PortablePath.dot,Nt=t.hoistingLimitsByCwd?.get(Bt),Fr=jt===y7e.DEPENDENCIES||Nt===y7e.DEPENDENCIES||Nt===y7e.WORKSPACES;E(Je,Er,lt,ue,B,De,Bt,Fr)}}};return E(A.name,l,A,I,l,l.packageDependencies,mAs.PortablePath.dot,!1),{packageTree:I,hoistingLimits:a,errors:r,preserveSymlinksRequired:n}};function _As(e,t,r){let n=r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation;return KR.npath.toPortablePath(n||e.packageLocation)}function u_l(e,t,r){let n=t.getLocator(e.name.replace(Wue,""),e.reference),a=t.getPackageInformation(n);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:uJ.SOFT,target:KR.npath.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:_As(a,e,t)}}var g_l=(e,t,r)=>{let n=new Map,a=(C,b,E)=>{let{linkType:N,target:B}=u_l(C,e,r);return{locator:Tj(C),nodePath:b,target:B,linkType:N,aliases:E}},o=C=>{let[b,E]=C.split("/");return E?{scope:b,name:E}:{scope:null,name:b}},l=new Set,A=(C,b,E)=>{if(l.has(C))return;l.add(C);let N=Array.from(C.references).sort().join("#");for(let B of C.dependencies){let F=Array.from(B.references).sort().join("#");if(B.identName===C.identName.replace(Wue,"")&&F===N)continue;let Q=Array.from(B.references).sort(),J={name:B.identName,reference:Q[0]},{name:ae,scope:ne}=o(B.name),ce=ne?[ne,ae]:[ae],fe=KR.ppath.join(b,ZGt),ue=KR.ppath.join(fe,...ce),de=`${E}/${J.name}`,be=a(J,E,Q.slice(1)),Se=!1;if(be.linkType===uJ.SOFT&&r.project){let De=r.project.workspacesByCwd.get(be.target.slice(0,-1));Se=!!(De&&!De.manifest.name)}if(!B.name.endsWith(Wue)&&!Se){let De=n.get(ue);if(De){if(De.dirList)throw new Error(`Assertion failed: ${ue} cannot merge dir node with leaf node`);{let ze=K_.structUtils.parseLocator(De.locator),Le=K_.structUtils.parseLocator(be.locator);if(De.linkType!==be.linkType)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different link types ${De.nodePath}/${K_.structUtils.stringifyLocator(ze)} and ${E}/${K_.structUtils.stringifyLocator(Le)}`);if(ze.identHash!==Le.identHash)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different idents ${De.nodePath}/${K_.structUtils.stringifyLocator(ze)} and ${E}/s${K_.structUtils.stringifyLocator(Le)}`);be.aliases=[...be.aliases,...De.aliases,K_.structUtils.parseLocator(De.locator).reference]}}n.set(ue,be);let k=ue.split("/"),tt=k.indexOf(ZGt);for(let ze=k.length-1;tt>=0&&ze>tt;ze--){let Le=KR.npath.toPortablePath(k.slice(0,ze).join(KR.ppath.sep)),Je=k[ze],ft=n.get(Le);if(!ft)n.set(Le,{dirList:new Set([Je])});else if(ft.dirList){if(ft.dirList.has(Je))break;ft.dirList.add(Je)}}}A(B,be.linkType===uJ.SOFT?be.target:ue,de)}},f=a({name:t.name,reference:Array.from(t.references)[0]},"",[]),I=f.target;return n.set(I,f),A(t,I,""),n}});var b7e=H(eW=>{"use strict";Object.defineProperty(eW,"__esModule",{value:!0});eW.HoisterDependencyKind=eW.hoist=eW.getArchivePath=eW.buildLocatorMap=eW.buildNodeModulesTree=eW.NodeModulesHoistingLimits=void 0;var A_l=LGt();Object.defineProperty(eW,"getArchivePath",{enumerable:!0,get:function(){return A_l.getArchivePath}});var yAs=LGt();Object.defineProperty(eW,"buildNodeModulesTree",{enumerable:!0,get:function(){return yAs.buildNodeModulesTree}});Object.defineProperty(eW,"buildLocatorMap",{enumerable:!0,get:function(){return yAs.buildLocatorMap}});var d_l=LGt();Object.defineProperty(eW,"NodeModulesHoistingLimits",{enumerable:!0,get:function(){return d_l.NodeModulesHoistingLimits}});var bAs=QJr();Object.defineProperty(eW,"hoist",{enumerable:!0,get:function(){return bAs.hoist}});Object.defineProperty(eW,"HoisterDependencyKind",{enumerable:!0,get:function(){return bAs.HoisterDependencyKind}})});var uUr=H(gJ=>{"use strict";Object.defineProperty(gJ,"__esModule",{value:!0});var p_l=Et("zlib"),GAs=Et("path"),S0e=Et("module"),oB=Et("url"),EAs=Et("util"),f_l=Et("assert"),I_l=Et("fs"),h_l=Et("crypto"),m_l=Et("os"),YGt=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},FAs=YGt(p_l),WGt=YGt(GAs),C_l=YGt(f_l),__l=YGt(I_l),ZAs=(e=>(e.HARD="HARD",e.SOFT="SOFT",e))(ZAs||{}),y_l=456789e3,qJr={root:"/",dot:".",parent:".."},OGt={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},Rc=Object.create(WGt.default),fh=Object.create(WGt.default.posix);Rc.cwd=()=>process.cwd();fh.cwd=process.platform==="win32"?()=>oUr(process.cwd()):process.cwd;process.platform==="win32"&&(fh.resolve=(...e)=>e.length>0&&fh.isAbsolute(e[0])?WGt.default.posix.resolve(...e):WGt.default.posix.resolve(fh.cwd(),...e));var LAs=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};Rc.contains=(e,t)=>LAs(Rc,e,t);fh.contains=(e,t)=>LAs(fh,e,t);var b_l=/^([a-zA-Z]:.*)$/,E_l=/^\/\/(\.\/)?(.*)$/,S_l=/^\/([a-zA-Z]:.*)$/,v_l=/^\/unc\/(\.dot\/)?(.*)$/;function B_l(e){let t,r;if(t=e.match(S_l))e=t[1];else if(r=e.match(v_l))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function w_l(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(b_l))?e=`/${t[1]}`:(r=e.match(E_l))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var oUr=process.platform==="win32"?w_l:e=>e,VAs=process.platform==="win32"?B_l:e=>e;Rc.fromPortablePath=VAs;Rc.toPortablePath=oUr;function WAs(e,t){return e===Rc?VAs(t):oUr(t)}var B0e=new Date(y_l*1e3),T_l=B0e.getTime();async function R_l(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:B0e,mtime:B0e}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await $Jr(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function $Jr(e,t,r,n,a,o,l){let A=l.didParentExist?await OAs(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:B0e,mtime:B0e}:f,b;switch(!0){case f.isDirectory():b=await N_l(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await x_l(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await G_l(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function OAs(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function N_l(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await $Jr(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await $Jr(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function D_l(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(ce=>{ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=1,J=await OAs(r,B);if(a){let ce=J&&a.dev===J.dev&&a.ino===J.ino,fe=J?.mtimeMs!==T_l;if(ce&&fe&&I.autoRepair&&(Q=0,J=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!J&&Q===1?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!J&&(Q===0&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===1&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{J||(await r.lutimesPromise(B,B0e,B0e),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function k_l(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function x_l(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?D_l(e,t,r,n,a,o,l,A,f,f.linkStrategy):k_l(e,t,r,n,a,o,l,A,f)}async function G_l(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(WAs(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}var PGt=class{pathUtils;constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=h_l.createHash(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await R_l(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync(WAs(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?SAs(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?SAs(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} `)}writeJsonSync(t,r,{compact:n=!1}={}){let a=n?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}},UJr=class extends PGt{constructor(){super(fh)}};function VCl(e){let t=e.match(/\r?\n/g);if(t===null)return yCl.EOL;let r=t.filter(a=>a===`\r +`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}},eUr=class extends PGt{constructor(){super(fh)}};function F_l(e){let t=e.match(/\r?\n/g);if(t===null)return m_l.EOL;let r=t.filter(a=>a===`\r `).length,n=t.length-r;return r>n?`\r `:` -`}function EAs(e,t){return t.replace(/\r?\n/g,VCl(e))}var KJr=class extends PGt{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};function SAs(e){let t=e;return typeof e.path=="string"&&(t.path=Rc.toPortablePath(e.path)),t}var jJr=class extends UJr{realFs;constructor(t=ECl.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return XJr.root}resolve(t){return fh.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(Rc.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(Rc.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(Rc.fromPortablePath(t),r):this.realFs.opendirSync(Rc.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(Rc.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}realpathSync(t){return Rc.toPortablePath(this.realFs.realpathSync(Rc.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(Rc.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(Rc.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(Rc.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(Rc.fromPortablePath(t),r):this.realFs.statSync(Rc.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(Rc.fromPortablePath(t),r):this.realFs.lstatSync(Rc.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(Rc.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(Rc.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(Rc.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(Rc.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(Rc.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(Rc.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(Rc.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(Rc.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(Rc.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?Rc.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?Rc.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(SAs)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Rc.toPortablePath)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(SAs):this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(Rc.toPortablePath):this.realFs.readdirSync(Rc.fromPortablePath(t),r):this.realFs.readdirSync(Rc.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(Rc.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}readlinkSync(t){return Rc.toPortablePath(this.realFs.readlinkSync(Rc.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(Rc.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(Rc.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(Rc.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(Rc.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}},WCl=/^[0-9]+$/,PJr=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,OCl=/^([^/]+-)?[a-f0-9]+$/,MGt=class e extends KJr{baseFs;static makeVirtualPath(t,r,n){if(fh.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!fh.basename(r).match(OCl))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=fh.relative(fh.dirname(t),n).split("/"),l=0;for(;l{this.realFs.open(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(Rc.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(Rc.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(Rc.fromPortablePath(t),r):this.realFs.opendirSync(Rc.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(Rc.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}realpathSync(t){return Rc.toPortablePath(this.realFs.realpathSync(Rc.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(Rc.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(Rc.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(Rc.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(Rc.fromPortablePath(t),r):this.realFs.statSync(Rc.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(Rc.fromPortablePath(t),r):this.realFs.lstatSync(Rc.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(Rc.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(Rc.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(Rc.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(Rc.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(Rc.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(Rc.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(Rc.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(Rc.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(Rc.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?Rc.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?Rc.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(vAs)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Rc.toPortablePath)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(vAs):this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(Rc.toPortablePath):this.realFs.readdirSync(Rc.fromPortablePath(t),r):this.realFs.readdirSync(Rc.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(Rc.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}readlinkSync(t){return Rc.toPortablePath(this.realFs.readlinkSync(Rc.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(Rc.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(Rc.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(Rc.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(Rc.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}},Z_l=/^[0-9]+$/,JJr=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,L_l=/^([^/]+-)?[a-f0-9]+$/,MGt=class e extends tUr{baseFs;static makeVirtualPath(t,r,n){if(fh.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!fh.basename(r).match(L_l))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=fh.relative(fh.dirname(t),n).split("/"),l=0;for(;l"u"||(A!==0&&(a+=", "),a+=JSON.stringify(f),a+=": ",a+=QGt(f,I,t,r).replace(/^ +/g,""),A+=1)}return a+="}",a}function YCl(e,t,r){let n=Object.keys(e),a=`${r} `,o="";o+=r,o+=`{ +`;return a+=r,a+="]",a}function O_l(e,t,r){let n=Object.keys(e),a="";a+="{";for(let o=0,l=n.length,A=0;o"u"||(A!==0&&(a+=", "),a+=JSON.stringify(f),a+=": ",a+=QGt(f,I,t,r).replace(/^ +/g,""),A+=1)}return a+="}",a}function P_l(e,t,r){let n=Object.keys(e),a=`${r} `,o="";o+=r,o+=`{ `;let l=0;for(let A=0,f=n.length;A"u"||(l!==0&&(o+=",",o+=` `),o+=a,o+=JSON.stringify(I),o+=": ",o+=QGt(I,C,t,a).replace(/^ +/g,""),l+=1)}return l!==0&&(o+=` -`),o+=r,o+="}",o}function QGt(e,t,r,n){let{next:a}=OAs[r],o=a[e]||a["*"];return PAs(t,o,n)}function PAs(e,t,r){let{collapsed:n}=OAs[t];return Array.isArray(e)?n?PCl(e,t,r):MCl(e,t,r):typeof e=="object"&&e!==null?n?HCl(e,t,r):YCl(e,t,r):JSON.stringify(e)}function MAs(e){return PAs(e,"TOP_LEVEL","")}function v7e(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function QCl(e){let t=new Map,r=v7e(e.fallbackExclusionList||[],[({name:n,reference:a})=>n,({name:n,reference:a})=>a]);for(let{name:n,reference:a}of r){let o=t.get(n);typeof o>"u"&&t.set(n,o=new Set),o.add(a)}return Array.from(t).map(([n,a])=>[n,Array.from(a)])}function XCl(e){return v7e(e.fallbackPool||[],([t])=>t)}function JCl(e){let t=[],r=e.dependencyTreeRoots.find(n=>e.packageRegistry.get(n.name)?.get(n.reference)?.packageLocation==="./");for(let[n,a]of v7e(e.packageRegistry,([o])=>o===null?"0":`1${o}`)){if(n===null)continue;let o=[];t.push([n,o]);for(let[l,{packageLocation:A,packageDependencies:f,packagePeers:I,linkType:C,discardFromLookup:b}]of v7e(a,([E])=>E===null?"0":`1${E}`)){if(l===null)continue;let E=[];n!==null&&l!==null&&!f.has(n)&&E.push([n,l]);for(let[J,ae]of f)E.push([J,ae]);let N=v7e(E,([J])=>J),B=I&&I.size>0?Array.from(I):void 0,Q={packageLocation:A,packageDependencies:N,packagePeers:B,linkType:C,discardFromLookup:b||void 0};o.push([l,Q]),r&&n===r.name&&l===r.reference&&t.unshift([null,[[null,Q]]])}}return t}function tUr(e){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:e.dependencyTreeRoots,enableTopLevelFallback:e.enableTopLevelFallback||!1,ignorePatternData:e.ignorePattern||null,pnpZipBackend:e.pnpZipBackend,fallbackExclusionList:QCl(e),fallbackPool:XCl(e),packageRegistryData:JCl(e)}}var MJr,UCl=()=>(typeof MJr>"u"&&(MJr=GAs.default.brotliDecompressSync(Buffer.from("WyqmVsJ2xex2gL35r+y0F6ITdg9W9TlcgFJd0tc5gm7bboZQqDfzlvzE380XMlTVvKRDxrZfBxz0alVVNQRzeEAYmRKyyAcFB7sX3Ghw0paG3VnwZmGz3GGo2jxno2ogMKWGHeWRKT4npqgshBPefy1z6xPd9YBaF8zU+4Qt/WL5GwHh86Vfrc8ftE8ydiep18b6j3X8SadIIuk1gI7bXwkgxgRJjaIxHTqbxmbtzJO6uJgn/vxbqv09lxNmtSOQI3i4TUYbfbbXE4r9UA0uMi7ahv+aquksLtPZ/9k0tZtI1aDLWAtgsLf/GBGxzf4lHTaLoLD4Y6U731eX+y3TL8IEY3m+rUD2yY6jvq80LyqQ/Nef+l/fRim1YvHWsDi+Ih1j0HWB0DgLQ8aCfXO+9385Zdx8wEGXoWrLmV5s2ZWcFAYaAP/5e7X/78/Xqfs6mshy4929D7GtB4NpnJepsftiGaHAMVaDERfhtGQuvs3Mr1q8FcxxtvQkhPBW/qH7Xah2GHMOKfjlb9XXb86hNsOJM2esCjt7oiNNWEkeqe4+ZKqwVC37byriqwv85DKm9kPlODoOoFXgGFwSNg9QdF1L0+fXt9hJ9ARilmuMOohfy3CFdWmK/tZeO15RQ6ccJa1OmJGsuL5HvPUr0WfCrooiPPGJ1/HgoCjq+OZnfpJqMCU0vREMgtjN2ikEjsVqeTDfxkDDh4EPZoMDo2UgWLppvR/3rcBsJARhCfjSDzX6/Li7WzdJu9nPJ41mEAYcQcYx/nNxIyhJnF3cktSPb2wdD3uQynbt+OYz4KBQD6Sim+HyIXfDxN0v+VFDrT8edv8PtpUd+fhedTUUAuxGQYl8k+VJNVEmWEYJ0lhYbD4fPkzRWvuc3WxyAQ7MhYj0h7buhYiotj2i79vU43Xso7tFxzbVv/lLflBi0kFwBjyiqf44/Ha2U8cHECchUgqTPrqCMNOlH5oa2G6OhjABP8A89KWqx0Navf4dgMKs6qq53GzKHsh4pGvCl/j/7/ulVffIRIIsjFDCsUaTCZCjpWHO8vOfe/bdzC8LoVBMhe4kQK4GSqyiaCHvPufe90VEJCMSICcBsmuBKMVqqayR2vTaHsMbz4pM9ijtzd/3pdq3Pfe9RCJBUBRI0TZoeWDNYvkP8/YnAErWVMOs3+O42Ij3nvNu6917X5byvUyUMl8mvjNfJsLIBBmFzAR+EACZLxOgEhClACm5GqLtCkp2dVOy6wc91jCLIBVhinKESVp/kNyT7R6nVUfIfxinVVevxtj/Ye5xWP1973qx72WvF73r5fKvlr1YtkXL75XKztCQKiAnhu3dqS3FiJDpdVf31KX/pMycCSKz9x3eh4L/vv1YnfvlzWILoXuJejqtspzBPJmGSlWNjQaNkDNXy1LaPd3TfXX7n6V8r+xA4IRd5YyQNXPjcMHOKAVmAXpBISRoZBiQARXDBswcCBpVOJAGB6jHg0E3581mf/aBcCKBBhFdTP9mhu5BMk61/SQNLMFSif+nv5jungtf9c0ChRRQAtpkqlm1cjbV5h6V8pEIY26nJ8v/SSzqtTd7vfzlg0QrlEXiWWazkwQoWgPPiW4dpt9/AjejJi3SJchJdxfRKJAQ8CAhQBAvpcVriBaxhABdudcB3Kw6Oki3henrWNESQSJIIGiCBQ1QQTQBimgo1ZF/JwGS+/eyDeFDFOwnCHfT/qHdvvX7T5FiwChTBBlxOKYYuBFSTBEwcEFSbBFxixFeseDTv6Xr///fPfvQfP4LLDBgwIABVjTAwIoMDKzIShpYUQMDKzLoJzVoUKCBwR0eN+33KIEeEu7uSyfQQogJECOEgAfV0ggSoPVtZ5oIOGOmrv/nfXsvIP0fcEDAgoCoiqqAgACrCrCqAFcyGGC1BgYGIUwv1ycsLl7AmbqIf/++kwrogQMLFgQsCAiI1ICoCjAIMIhUgwADA1cyGFVp2+HfzWrRdpGycjLTJkHyIoqYlwo1tDJy5x8/ASJPVub/29afMdAnIO+1AT3B0FJDDJUlq+55+0vcWF0DxuW/Q4OYMLLK0WkL7bfDUCco/ynIHfCrRr4fH5xz3JQRF7kZNKo/SFqGtrdy121U+4Ujn2udEpH7bXNrDPmDV2r8t7p+10bmgSh3rtuofmC9mOWNGVBZzXzk4Wuw7IHXyD1tHYUMvX22uxg7UaW0sf7RGdfu32XJpyTNHVC6bnNjMW2RJ5arYaPCp2PkxnVNCen6feL4UxtzKX9L5TeDxuBFw8moEszSd5qTWIBFtsUniIlohX0avGmof1cLYOKeFM81nqRUHbU0XPaj+XVNivACL+v+7G9qspdVI9NSrdJ64Jvd6YiwPwkY7eK/Zw3Lk06Z4wPmckLSDr0YuLMac5j7j0F4q3qlMVoJfk726zXqpmveo2vH4v9Gy9hYG1f4PwDpSf/PexP7hftRjfIJEKlDqth2+bouYmDpEsVEa2k2fEViLEze/rX5aaoM9sL3S/nOgdXwl11bIvgQlFBb6n5lXaaXr8n7ilIIfkImDwrbZPZd74MTySAfxda5f0pUBp1w8F277lkjx6gJhyg0FU/pJoPO0vmUKBskHdnBlJgVj+YI02J1BFFuMCU+v2kyjAi+m9Ybo5DqnYsaq9Js4hFPgn83NnHdK9j/3QTVfG/k4TylZggrENA2m81VH6lY9Xb8MgvhhZl4X7WASH19GYemUxmFHNyD5Z3Pm8r1Awv4CmIUpN81nr5Js2AMrkI9VzVpQxL9mPYWo25mhOIuUgiRearphS/F2VOpGZd2KGAnYoedqR107Y+r2HE8a4ybP0rEE8SZHQ5hwLHDs0utMPQ684tbgA+SYsMU90tQu8Ymyx97Nb93nJGr1CEMPOrVGlIce6vg90D65b+46kmkgHHwd16BiXznpJJTUgkatri9+gmcLSs9/wfmEAaU0EIzklcwe+W/OMlBgWLDlGbHfPpMaA7iuag/MsrW2EflsGUqiviyVK57ib2ZC/9F6liKhFB2Q0FXspreHWrfJOZJ7L/gyd5vas2I8vHEuyEfLiB9gffy4hhitp6bsHA2yER/bU1m+FeWBgEclKN0Dppbjj5uailzKOzX7cfS8ArpRxbLo948V+X/shO/g91BypMI9YnLi+kz8lj6JYJVTOMnkAiMQ3zhAjeNQz0ubKl+pLA/WvPrPmhtZubD85eVXKWy1GIpj0hrZ+q+ytLAJ14FEwTdSqiCvaUyamLcJpkkhCmz1hcfrPyid9HWvFHeNtgCf1+ibyE7yEebnDr7vpFg/wlJtHokleMYtlmzqmeeOmf3Rx5MS+gLOqZeo4/zmzkpLswh3A82fXIAQXBCqgFHhMAbsNcV5ZSc0Bs4fQOnb/D0809fkhxJ6sGZok8OJSgpdaeV0uJCGTlvcoacS1sDnp6DQRri/5DCECn6sq3UYj9S+BW20joVqhZS/LqVarXenzic87V0LczFcm8fS+Xy+qrDlyZNB6XOf8RBTqNVhSeEv6OHbLpids6tbtjzP2R4cbYEvnvp/Dp77G7a3KEpPl9ii9lu3pLQIvJixk3w03t9OP9NLK026MkFGe70mXqRLSlyrJJW4exFmFP9qTxvdUD4OUKNMjRHn+zk+vAWoe4+L0bROtpCMi68fKIavsjCqm2KZeBvPepyChCCAptHm6LZiNIqMXHrZNPOV393x28Sxn7cP8F+eYva/xXq+GUinsVLssS+842CL6Z9Ue315YspX1TR0jwxNSUlhO+nhtxJwmEyfcBMRgrvQz9hrbIRdq2jtzSQrkud81iRAeukkAigO4YEFTXcQqfbuhf6ULhWt2JfSLykkGe1jGLVvu+29tc0IwO6gb9GYQ3oBsKqCxAEJrqRZRUaIqSpYaRa0yE2Gg4hQrUGOKDXD41qDgDc9gN8kIGK2kMqrdwQkZrpx+Y1H8dgP/ZDaVz8Aq3UfF3lP3erdqZEe5lJ2qa3obvNRwJ/Qx9oUf6h0wDW4HayKZGuT0saR029FDuh72BfqN1BvkBhPkUM0O/GIr2vbLmpq91anr/4tOzUDo36BEp8ibMoP78q/KWu6d3Fs6vW8G3x3ioBQPU39gr06j+rJXgv2D2pTefk30lazMZDuGcCPde28r8/23IPa6ybDU/+gJu17JU7vL4xg9PV6ue7opi6f5AkwfDcNnkscJp67IsFac+lR57k9tols+9j8eoWM3wrmKQ7IrUxI6rUDNJ6DAzd6MOVnFbsqaZ9A/8rg3U0nYyZB76hK8TPWmvuVzyZmAVtMC7Hbc5RV6B2SdXOsKbNaiL7a7HjjXv9meLmfSH/6h68Kw7t43bdyqk738Zprrakeznyt/ll+AOj0bCunRWL9hHyR4jMrbvMYnC3E56POz7gFzGkT4V490EL535TXa5mKq/G3bk5dLo6uDOVWUlox/hc3ME2kfQGX0VJzy09kQ2eGm5B1QPrmcoRVHQtkbq69v7QUYsGrJS753zdk8dnebF8N1uiRX//QU/MmhJVce7DvMv02Vktz2bVQ2n/XORbTlD185eWbUOG9lFmG+CPnDEPcpD+xXVFTNez417bNHS12WJUcf7P0q+oGEWUF5w1NKC19nPcpzPmN6RcM8KVOFWNLdBOE6hIEsNg7uihkB52P5jbx5WWtmeCzdL/0iUzdvL8brJ9fK6Ej1I94i/ojp0h/2kXspCsEIXkhQXrl5PKLntp9mJ4MKCg+5Fa+k0tgiXLUu/nX2vvSfTQD5MKLm75BWDM7hyME9RSECNaCYXrWMozith8RAjx2MPsdzAthQBdtCCXbnpvYvE8iQLamPSPQ7dviT8ySDKI/yN8ddJbcChFtlSEKtm92thEvVdI2UU3RJs2H2YqDTjbgu3VYi4lXjiwQAv8sJiL/UiahmCoXWr7khQVFWXxY4r6IRddoRGKFl8XMx8IhiFj49UsmqZhiJqgyY1kPtYRphq6H7RvVsCi9qH+TMUAqXujMHEZCD+uSHEug/cPe6tdpVN3+7lN3Om4N1271WXOKE3JWREgi+whsWUmUB63HaGiN7W3CGWZiHYWWEE45IhY15BPHmSNV6zGU9yiWymcxuHvN7O1HLwXsfajqg4z428W9ox9nA9k13qFQjTmJqFwruiK28SlLoeE/TDHCnz0YPS4LbqHrtDBiDneAeYN9uFkDi03d2ZW9s7LvYbbJ8EXrrWikzUl2eSqRmr91HHdz9i3zpmDOduCquxVVGQDyQPl/Xo2l4ZbHF2Knc3b04jcWKxjFsPnw77GiPmlP9jQLuXhZ9ahrVF+Sy4xXA3KSJ7vaixhNmc/sqqffV7lYW10f8xy9J3byzlnskwsuyTIo5tHzwAT72K2ILEvZ9k7Zuc3EIaILDkH1azWEdHjYI1Mqk2/zLZXlQTR2vdqKQxkdwokcnFMnx9b663AlulgiAiSzgoYdZdT1KubWktaoWr3Dbdq0/NtTHPJKBgg22inBkOwqvXquYuFdmD2TKPILyJ37qnzMyyoTLstn9B0sIq/gOeXcz2xMHc2SY5KupdNRFfiJsnYbN/ay15w0WjtTPbxg3he7cAG8ezHZ2sjWMxZP6Ln5OtAsywtfmRkTG8x4CyVx/xdzxtdLO4WlYWsOc4YapZsJs9y5OevyeFygay8yG0zSNegIsksFytwO5+HAYVhidP4czSva+9guazQ5p3vrvC5kqDDWrJNyrqzfd7CWB4cGY3P3VGtHoj4t2pYafbMZ2Hcusn9cM6cLTR00U1TZu9NGa/kkZzSUCb1diyuT7oj6QJsKIgxPWZG1d6GKL2yeYqglV94oXCop2dOIebjBTOlLmKq+c8Ka/vaHYGkg3BibVW0ATFlP097gawh5ArICh+7KjOoyeuQaw/0LqBhmVoN4hYbg2H8/jqArPUGcIFig6u9Q8/Mb1U6E39AXNq5lYEG9lVJ3LHo+VE+PhOyAVOtXmsSaXxnSyAMGfEKqKZVahPDFuzGjwc79gYscpmPdqxPlU0BlI/CUsP7sECD3FKIPuoxi1Wf7RDKZuTODrmUM2ORLdu4N4s2gpMP4vumZTbaTAvdhTmH1dkEh9/A1JQpBU91p/oNFze1QBd7LH5y7XkY8iNNgVH8nS+pAi852aE18FbFCzuTh4kS8Zid3ivZRQSS32Z7w4Hmg6+26JO8AK3+jJIhkkyRPJVNOhXX7XJg8r47h1tWcI4/+TNd+FZ4GvXz0ZDo3Mnizo7RXbQD+kiUd+xMV05mNLcsTm8FWt+Phvv1+N7qpAlUDnaJbP1FPJ7cpDm9Q8EMK1n9pVPUuREYdjnAnYX3IZukXSoqynx84cfFVNsE9JlZHTdvJp6xiYHdeX2LEh1cPplTMRwWVzq75x89Bcez2K61luirCu/7rD1isYwGo4/LY9I2zOTns9lhr855aGaB4DpAlz40AafsL8K6bS/fLNwrEl5bJwFvEQXfAnBSeqDIX1xdbgFJ8GGa7J+psAD7U64K+Xq8WIu0v7CD0IXGprUaylbQhkWUzfVahG1Utb/9hrQlse5ugzFTiSAFLzgEizscbORNJ3w+grxZwf5gHMyDmm0OjGzcYjQke6PyFcs40KatE9NENxcc2XeOlnTbtcU9Cry+hMzQtFlFs9S0PaSGogf9Yo5W32QIo22xRJUpUOfI7f60kDD67Y1soVvmMMlHkdlYjJ6BD4l3y4sjdLNhlaNr1qzjzBQ9CkWPlYbLLO3ljwQiVwdTEFNbiqGSXr5vcePIE8jIn7t+AGzIEGct5eCWjlOiactcnqXkwdeGh1BqOdqqs/ytHwhSSF3Z9cyIQQZ1c6faorY8Q0kLScKq1n4Vw8LJlVSzg4UiHWMbFN8b7IFmcbTVqu1xTifvP+3YKm0K9blPELMSAh6mlwsqO7b01X77mPt4GpZnnt75l3qHY20U+w3izWtjLJYLtDq10HmKRHll+zUg2jqdddqZ56DiXnXKCledj8Vdk/9k1HxZe992LRyR4DhSmZ0/yE0GiAVwlwZTbALqDYQDtu7p60FozDpPCDu27JLo80uWcFcoWT4LRjYfvo+GW7hE7ngJSKA0qHyvTeyYCwnMv7oXbA7eMXg5Wbu/j13pGgoxT16vQSTenx/ozvPrpG3+vIYLOFpr5/1Dyxk9HTX6BGM3y8kS/z4VS0xAc16Es9P1usW1N8O3P/NjlS+J6rAAnrmDtr/JcShSYfiMalgUIHvk652kNwUePcx2kg4r6PRWdvcRtHMP0gE9tAE/sCEuyh+tcnkz+KQAUmwCvSr6sPx4QpaOJsetaraZyf7MRYKMi4VEPmRZAJx9FhBzwAF/fADWplX7xtIwtrhr3L0uYg43sfaQypYNNDb5foKKr3ytnUR+LVK3CttBUbvBgGUBFz6cT/TsVFpgIz+WB4SsIbqonUzOmNaN8rO0qZjpEcv4WmMz+66/be64A7jsH6bJ6zJx7jJHvbiXI/8T98XL8deT/jh8qdcV45NYfut/9ea8HXOiPHrzlHjpfSNRfRW2x3D168eF66T6YHhXrvOuXU25YIcXb/96vvOrH75pFYz2ZO5d6YYSzTf2Btr3zpk1j5bnkStTfLvFPJmf/ucvWPb9ELsdwg/PdDS4x4TsOFzgPkI4gp4jbH9qAQ5fSD2Q0l+DO5NMw5kxlkZGzI1QULnTfNAayY0ucekZQwaroMDZgDt02kmW0xu1IXBcrDeX8tpT0vL/bhNRwTD55rG2+UQuEVGjLin9axtk+hbBm3KBYx896FcRJZIWcntspLRQTJqXCY75W8n5z8G0NA+EuUlF8E01GEVaTgvLi2f/P5OHrqUXfhJOzZ9XU4V+hzb6c1n1yRXeU//s5berAC6JWFpZn0JOU02SQ4B+tUN0laUpyaOLQsM6V/tI2o6HprzECerMnjRwNNiRDYlW+Xqfln2guQgdC/BsZMdEiMBhlLSi0RX3vuFx2meMI+bLabf1VHUcPds+9rF8kUY5abs8YF9+umrmzNd8DUOzemrx5CB8EezCFXbilZN+fdrZHF/tb8vXPlySvPP43vbM9t9+ho7clEjs6Ctnb9Tfo0dsfknYKzmTSRhRSKSrlWIayohhraDSNAS704XRAY4ROx2a/IcvaT4ZAt1xk9LNBYwJ8wJVcdrNxPm4Qwre6P9fCD255LRo1pOEZ5zGU8qVD6R+wIHVYstCro/w2w968DUSc/51hPs4U4nQpZaKSQe5Ss5GqO0oRb8+KXFJps9+fObeq5hk3Kvz2n0x/Sz3Rs/+qOQcy4NTxuI6kivjc1s8+iamrlmLfjWamrJb+e5dmt8MSFpbIYYRLwbnOuhTfF8H/JyDbkgkaZo0BybWZ/buCIzlaWTCv3cPEYqVMRei7IC3fq9Z5Vs6pdCrehwo1TYWnan6QDlC2+QANGaaARU+1Wg/q9DYzYoCf08Uh420v/7ELXtUQ7jIw5TBtlqAaQNnYPMFljIXHQy8cS4JbvdicIwPaGLrh8wAIiySsisAdXKfdwasP9g6nLudR0N/rqe1vIQbeWIuvjYnqvHInjUijVqTx0ItN/8/ZfPHbBZE3DzarAkaieenQr+xEi6nWhJmy6lhlEbSNW1KCQSY0kYyR/+a7/D4I1NVhwLuI39h21ixNxL7kWd6fTJbxWkDPdNLDpSVs8+6iitDdpIaGwDshM9AyWLhPGRjY1mw+lAz1NdVFUCjcJONggM+Mt6+TnNm0UrjWCm9hOgwuau5E0dwaS2h9BwgydMeMCuNJn7utIihD0FZnReFft/39beVQC9cnmtvVpZOBFc8pOgrshQXC2nOb0HBZcxD3hIQ48VrINixK3j0dsPXdcSu6HlKWsebI6Npka7bXStJVPXR6rGPqeHAsXTYhCjXtZ47olPtyoFvv1mXgHUuV+5g5Fs8xI74AsO+iNjaWkjE7vKMItioRAgntuwXnUPu84z7ZlzhIlyVXkWs4i7nBZdbz+SLuXsfT4f2ZVnizANY/znf2dehzKQOyOYRjRwDoJ//NWMYzTPypAPrWAhQn+GRfS7oENO/y87VyIMpbXEW/7+hFDEd55+M5+NXy9MD7J35J3a1x9w4dnk+Da7I4JY9l2u/rwvaQLvwH4qI5BjhPek9SbskjsjUTTfGTWI10w/bxPn+JAc5g1ib28BqQWHTf47NQma20CplRSpY6iuN5TNTH2ILTs7g369YTdIj3rNX/vCtvkacfOMycGOZ+0RSvzbWY9NSX6/+/EPOtqyQB+Zlhn2fuDyUBINmQV3fNjbIyK714bh+BWjV80rDelcIdrlLXcgdzEKQ0tluKzWyRyTbHhJOO1V3YeOENUfG9pn7pUJsGIuda6kjs+Bq+EHvs/T4eJH7bodHgIusAZ2BdGo+1/4rAve+sHfZ4kT06E+MffqPz8S9GsJsk5BksrTUNXcrpmSLJbkjga9MNz+PefHhiNoEFkJWZKlSWuAxrLXXK66vIefwlNW0rZ9O/CULI5DvUdMIMsvknLejcqepWK3xU4FJtkW3QEhbYpyfIaDYfq742RhR4a5HDZLTdjlw0RZO8SUnb0AN1BU2uWUR0uZzKyNQPD0ywnrsJI1ihqe1UV+eiOblldmtySuDM+DDBe+qg8Po8uGkLe/8A4nt413pfa6Mq/Aun67xAf1TYE2Z7iolkcnNV7+Fdn1E30S21ZexwcPQyFeBdK7YYHBcDAxvTHgBppJycwSWvGxGI20vqsTdJWVHiLGXa2zSP/7/merkcgmxuNa1k6D9lQFGR02ghgmNc91S96MH9MPbJiIkpg0VL6s6Ht9NgSXeP3MCN00AkH90gtuKD0VsAZZqBLQ3prKzlhcmY3C/gDe/ZqN37zq1rHGqXoWzLzzDs5E7ETj9iud1+Kk9hBLoHkXYZXD4kJ25IXw6H8IueBS2GRP+hK+In3WziFzoFk1sQRldK1hGG8fTDmKdgm6oevOAiLQUatE8PPx0bGy2U0Cb2QrjLbogNIekSTQfxsZoYzclyrp8MHz4H2z1H/injiR/dO9eNKM613n/QSPt6rchz8lWG9zs/s4+eq72eNuLStyoSsOgw/0tiOVwf8bVk9SLJQG8VoX6S3XsBDgcUCICB6VoxelELv+pbKb1QuWewuuJA6ejntXyJtyWiOg5A83W3M8s1GsV1YInOx0+HYGgvV2i9XKsvrbecJPSZVMYR7pdocCYwzxR+e81lqXz6dTWkHPELpo6thzBauvmGwpolgdZgieddFkBbkvR0u0HIiwEAyleIlNp5257ByMExzjaTrPO+q7pYIIrh9qCut+d67Rc9Et7E14X68E9u2edHlPgdxtRbuDjjyAOevjPkF98Luk6aCgTvq8ApbE1GPoPcnGek/c6+3+2mzVJyYuY8sR5ExLLCwj5gyb8RldTMNsiDJT9cMrGTa2VWsqc6U2sjnmv218Jc0n21z0Oh7daB2MFvcRrXq4FwTPSEMpGQ/EUPY9jQqdW29p42aNZgmPy+eWvrj1O/pChTmVOdH7GPygmwsW5eur7OWr/D0dp/eoR2SDl9uF8GpDKIx5VblUKMBDxOFJfxsK/qQ7sOm4rac2inzolqR+M1j4qpsP51cYN/xXhK1nQtdx5MBN2loBfG9ThsjTuVoc7yt6x4vvbJPE2WoQfOiNfuFJ074E6J+uc/7Zrt6iiIhQEpYK27F9Fmq15+KocUaU88UR6E+D0b+CNOKCtO3BDYcY98agFiAWnbg+JOeu1CoBs3DLg9Nd/qH9ObTzA2ZVzgPyVyVcq8MjmmuZj/7JdrlwqM7kKzvt0f7KgM/G3vfZIB+7BY1riyVp5G9p3m3f/4ZcWbXsP2eFXLConaa/kzxbxrqkSxIRsMouXovH+1bW4vyg2GLbfMn+ZjZ82bkBTPyy1nseBj8591Z9UdpflBPGMOlFMbGQsR70tLFsYzo56T/UYnijkqnGFlp+rN/CPdE1eUfEyRvcUX5GfceRPtoLfaMZTbUNMZrG0Rxk83A978bMFjZUSquF5PKWOVXjLvX7Hu1t/bxHT/cGJQNAm7u8DUyYrUqN64ez4vvpC7nHaZEfvEvxTHzcMzkacU/MMVctvLaKsLLex8DyCcdciJPUXimfwA9JhuzpuTvfN4K47EsfjWh4LxcjmdHcBV29bp8iQXwrnThq5mNvOoormdEdg3kf/sRa6V4y7vnK/OD4KvYAEh5kv4C2Ff7NP6grlxtWbWNsbvHi7wjWaFTyo6HeQxfHNP/1NZRlck7Gfowfo3hNxlSNUfWacN+sDQ3r/RzR9wPqlNz7pl+HKTxTHC1GtGkhEAoh7DAH2xgHeyc0N3JII2lSqdz11hs8njPU5gOoMzsp1XA2fZI5r6oOnqJz9KOEQuz9NxPPYHkZ+/t5UpFdDic959rOuDD3ef53r9kZhkTpFZOWoriylSMTEimOcTc5kZwkpJCqBmuR4p4Bv53ZKzrVttLoseE/mUwJRRVY72HlcSSnmAHvVIShC/vf3KEnZoFEpJyGJ1OOwiiYWfNzC2Xm0BptD8gGUfbkFCSuE3LvGrp9/ACpkfJCXkA0QmRCGLCJHX7z2zJL/8Wr8J1VQn0UpYjORy6To4/NtJudJ2SHBcTjp70yrGO2CgOyNpg8FMKvrV+AIF7oEu1XMuUp06FcAJHojYWWf5IfUsAWUg7lHcYhmPr0lLkqVnW1EXDEB3EgYLhX29rt/0TyS1iT0ChIjN0/ceCYRs2CrqyAesVCel306COm3EmYLNPetE03wSFeVwcTXFWYnRspubifrFAVLLzVk0Te3+yNgoKmSMH2t9UY/biL0wv6cY68mY20rkubRvEf15AyNk2PaKWIy5RksukyZMooMlJONCWh0qCg3+mXOE1vlIVp5WhJfd5wM482ScmvxhEp9aoSeFqGnSqi66TL8b3QHeexJzjCdJIZRZykjQdV/Oe+nP1dxRI2sTEKGF90wwT/Lds18WHT/0J31hp0oSMmvp/zGSeSpI8HVf3nvpz9Xe0aVbE1GrkP9fSIFtw+/svdlPMm9aOwDchYGtpmLEhTs5KK5QzcNeaSdFla30OT85eW5u9UqnqnZXqxegUAsVwLxZ7FCr84G1UWTy3cW8fAGdEYY6gp/SICyG1aVM4FqHCP2db8rkRE3BQEqZGw6D8DSh/PJlyP3g4ghBDA5BNgSyra5VckiVW+wOCI9gFAdQNh0jjc+/rFMLxLIYxlBisLl14l0gaILx/V8S0a/BEKXJ3R5QjxQN2mER8Q24LaRKWRm+X64ahWBiG3A/Yp9MlN90y4nXc65nHUZfHfLcrxyaHMgUGySiLI3GqAZmsUDkC0wxM/OhB8/apePfLTPTjaf3hwVbJ9QHCOZuNU0PXDAl/g4mGCvqRaPrGnZ0gEdAoHf+91/UH9r5s951/siajtj6fiuyCbk0m0Ux+9nTV9LZsgZMpnmBDw0ZRf4y9UF/Qd7/5MXOrh67oWhtDaMSq5sQY5Xom2sFfRGyyRIX7DUmEYWyLPgiW0ik/ejiEyJIjQrit04tuVd4GsDIM0GwNIHNrLXDD+BQmuZK7cVeqXI5F3iOLpKsSK6SMOkmLIf5jwPBWNsiGQfMud4hKdR9HlawuW3ZLL0Hil7MXoamN9EDYj3zQeSPD779Lz/xfQZm5fBZwF4dLtUhHVOu1hcCVizZDzOHtLdaBavfyB44QrIRSxYIVIpaOOU3c07172Jm74lTP8GnXIha29yXwjcC2W9e9USPPRE7V5W7jrem8OvDzzfIU7pooINyBIgMUlxrmdQ2UW0cnZjgG3jOQI9f27J+Udtg+jz9ajD0Sl4nsDeRzvsL2XUed8DYmhIHA4blfx5A0cdREQpJoqz2GoluMTzLDHhNixHem2BT62fcgxd2COp2GX5dbx2TOgE0p6aXb++V0yzltqprVLAHUEPh1uwTtmS6rSGF9SxhRyShUoGX72xgnsiBbPx2Ar5CelCq3Y2hJbKKSE9tG7reyqf58zs9MbG7jrfLFnSw/rfyL+a8xyWY5+tJ5wf6o90In7pZF+ZbG6oooQn4YUCIDJsV8SM2wN/p1F8IGjdjBRtkH3KGR5kdkAr2wrEgTyQBxDoDUxmV2UvFao7il+tLikz83+TVDWNRtG4K8yKO4vLyYskgQYkPQMG7His37MJew+SkwJ5xAhbXrtVGOVyMuA31XU7Ki0yogo2NdFlsn3ZzG+yXyC3RIOIRgCUywJbw7Bj38OTR0Daro2kLIAv0P6Ob+6jK1mhx4BL2YipQsiZH7T61m/rswoWYni6i5ytaBx0yu36DxfGUoN+1oY7hMG6nmmNpAe6vrWeximyCUz1rHat9/qSr0l8oC9HgI3KmGerB5oAVdENNnve8jZotYSb5mvbReb50ZFT08bQ3LUHjKnMNvtPMruKsB+u21BKaWitEVVHLrE7NqI/8JatNZcvDjsAfTL1F3pkYMvj6Gw6Oxpx6fzs49GF9mINa+0LROhaCX15hK6L0OUJ1Y3lDOzvzQYjkpnedvUdjEHdCPzZH/6aRkwq6TsvR46qZcPhxOyX12AWSTnKSN8xmlz4gV8ew1/TklFFfafrnLNqufE4X/ujg1qJT1hQVxLuXE1XZ9/BmyACA9dmh2+/5EG/FAU/1Vh0zp6mBbNTeRQHwCKS08ncmD/Hl1oZv7QYLKTwjnJYlOvOq/T7aTeydyfhgVn0DNIcjF3hviv+cjLPAzoAFvWFGv55iD6OnT7z3FCGkbnFQ33a5nn7p6QIQzhzCHgnh/R+D3+nN8j4J4qXib0kUYhqT2XYU+KW0aBZBVEAg7oahzk0e1WluQ+r+OV47YQuSOjyhPrbYfzK26OrLA1dLrbaRI6q6upvuVl/KW2nfgoAeEXQ31FEgSyKrTM5jTXNUWX5KX9tZjDVIp4IrNd40H9EK15RZcPd8MiWP9jhZuUKOIRNj38xjiT+iWmfIR4NhOeGR3/4kr4KINbxlmfUzfnvxHLeB/XgTl9Mj7j6sKDFvKfpIGBT8aWKyuXZAG43jSuUbkvXNndUkMPaBH3ZfLvt0DA6JyPbwW68w561cPcivI3rY07idJjCloYSCgkF4BkRllwyEen+hNV+5HViai/n3sfCX2mAU63uUGfc7murCX1KJVLH2XrvXLvzmvrqEe5vWyFKT+IyMtErORuWFaOgU42e0REPAjoAMFWBYZulT+0HKIKd/DTpT9zCmXNVVZVhK6dbZqQGOgbVtLeHMmoGwBhBQcVn2iYKmMDPqn+7KEEENQHjttF6uYhk94Mjb/Mz1sXIEW90Kg6U1BYTstFP2iZkb8ljs/I72HnfEujwusi/fnVuRP5l/sqPaHlw36YfqDUwt1zPel3V1m35venSHeIa3com6I6idABL08Fud5FMW13jAlP7bOtLb4hmcW8RAYhpl93a+v13e78mqZ0OiEVkcZ09Z5Qj1Po+3AquHnL/2hvS71gKw9fih7Ykp6Nbm/lti2UfKmsHiXE/Y7GiJffnw2XvN/a8l9WG5+zN5ytYsf0oPhiEdnbfrsniyK/1PjE/fpkDowyprXzcPnXiEG4H9kP4EA+fPSvbg4X05EBYJN1XvUG9svl7mrRtL81VhZHatgaA3yOFmrhk6MPvb8lm6ZOFQ+fj6jAfyPAxuUufNuxqf/59a1HmROVtA5YMyUYNM1b8fmtKGd1Mk+YXpLDnuoCJMQjaWR9oqy3SHGroiLomFr/fmtIwnbXVoIXxgN1DdHzybzJR02Qlv6+mlB1Fr7UhzMefa665/c8EjI/ln8/aT4ntb/hBgXLFjEQUbj3HUOrUNzGLVDQ6V/M6XklL2VnxT0UOTV1zRIgJX9lcl62qGDbCvbqqxw5mjdbVky8qdL+Y7PD4pRYCpHjrmnyUfs4ytNw+AthkKccJnZ5HuzU6mPpF+Xg8VrA5Xi/lPnFxQS4pT9JyKSvLupoaPM9zxrH9bHhtC25vBgF9eCUOXQn04Bj6vcRR8yVyem4Ttm9xXmOnOxXSHFRATykAYiXFSWzjE5A+gNShopfTKAWHlQ7QkGDD96ZJEvzxo0DYEjdUAhAb78icIzYcefj1y5WftDi2QH8iAH/iSAnMThiACahdAWD/pAkKg20ByNv+o8So7d3I637Clvr8Sb5qqJCX/qR9c5vmtzqgpAIPmdhJ8H503Lu5k8yPxwQy2xKfA/ewIuNr9ONA4f60iz9qmp+BOX+EgLLpkQIrN3w3rJ5kXIN+tBjGM7AthhPlK8r5oLU0s+zkzlP3aa7TNmlTB+MbklbU/iWH1mdT2xJFUW6Qn50p4dJVGZNMRLvbidGA0Dr9hv8BIaMIk8V7np084EAF40nEbIMD5o7h0n2w/D078a+vSFJeSJlRkqH09s9PiW83xSd5Tnk6GAfu5jFBnUk6KcDPu2z09QtThOxHRABUOUM9W3gHBOjVUd/R0N6SJZfpK8eBErIpz5Kx5xuw+sN1UtYxnCaup3HzPdv4p+05XT1h7xsqn5NgI37LRzpaHm6Q7K3PTaKgH01RTqzohTFH6uZYcnIveH4Fv8upigVGylzWpAwPbh2rc8Nzr6JxBUzlivWy6SnIXF8S/Cw3T6/BlER8OotKLCHMTg7rk5xWNzUpWf9yYKTAUN0Lkr8iBPSW3iHiTHPhOX/KrzdN2689MEkBqDW9e/k1KWh49BlR64w5js3y61SR9kcilc6IZku11so6SNhh4tXwjIeS2qdtmsnis7edB9tKaxRhJO8/fNWvPJA5FWxdnSZKhuU2qvO0GldK6EKEro/QtRB6NkL9Y7f8YU1q8fAQwBaO2UC4/4hhf5hUzqU+awsCjAw7Tz3zA03ZD/QLZYJc78Q0/0VOwQVItJyt/uls/ipRJLd4xRhCZJXir3q2GNivz7Ix0k59grZdkaB0MhhsGFUZGhT/+Xj+hqVG3d+4gFYKSLJ/vp6/kdFUfA0NCBez6DrPT+sZ6fNYn8hGVYI6XoxSo56NbRI7U1PxlFUaVi+2SqY6EazpqZiS+G+cS4qAp+vkVXI5+A1PNze5JoYd3Eg9eV9vwjdiN/3W96z25Kvev/weeR5DZc9uD0xIdKv7p9/HM+Yb921Y74jC96yf5fBN0/SSzE0IpTRataFPgOaaBHRSOjUHzUw+ddqcMrU8j6STNIWMUsegdsx4inEiMKDuxtrs0qOmoQTnz/DlIse7+bMhdRrt2sQf+sTPwPQVBIpogVzMjBayOFyl+6mIlr6S50kXCwIUDwx24DtpcrzxoPqlkP6HivuBKxN3DL8oga86kl/jehtaxSIm7z4BGRxp1Wa735BWxbuZqv82bQkCcwA/Izd5plfYN2uPenCN3FJb3+MQRM43dmSzvQ28MevIj08oN+cwEOfX3nviJXzABlYNMXAyN9yv6MURxquGL4VVXthI8L7FMA9gg1SIuzmCe9XkpWRNZVIcskMO7kRVQ6VOaca26GXJL8OJwkqZT+6H3Z8YEhmRAoxJdj3GU6bzDuf5t6dJX5L5Ke9i8vYF4j2BcOxRkJE+HBuykPv+pIQU++FmBQ0NnaGHsHcOvV7BLSVXF7Bu47+e2T/wRmNwNPd+b/3+JcymEPb5TN05yQJVTttwVr5vjrPGzLkGm1Ppix8Pcp2whICPlUNgODsEAsuGQG+pEMgYQu2T5v1lISXr1zwotNwfR4pVANA7AXBK4PWE79dfgwe/NsksAkm1f5y+X9NFWja9k0Q/w7SCOmMpuHpCFyd0zYSuj9BFCFnuR+A3AE3Zr3fQ6VvB7UhrAVDwAxLtgx9NteoTlFcDoNMHO9JaABT84I84rWe5XPJyyuVql2tcFi99T13ouxz0C7IqgD1fi9SAzfeIhnwtuZvXJUamAif+ak7ND3/wV9yGAPb8L5IEMDwQwlW1q4ws+tcUcuB5qIS/0Mu0/XBODXgShv2HSfh1XiJlgiP+Vk6jzs8zmNKMV9H3Ql7bgH0toBg4jWA93xlWskB3pSgYdKNIs0wU+M1RoNVR05n9/gKsMPbrMScFAHrNI//9GlUMTIUaMddE6z9dwL/PoERr8TC5sB1WynMyUPTfhM2vysjkbLB3yxfRMlZ+1IO/csX7QryNZ3+a9oQFBhlE0FA/c/YQXYjH8kMq/OoFhVVVrFkiG/icXsggFdB/+oUH5BQ6nNehmJZRYMgzPciHs3ISU4Mv+Z/o6lCoWgVHAsu3bLcnpuBLS0LYiUnH4x3cnB/vrZDWMDP52cEqTWyd5e+O2OJrs6LNS9tjLgMQ+N5e0SK2VZaSPEe7vPSsWtKlBGokNE7JWDhRRaOEvyP0iGoyhca7jG5JdDc8kl8KsXuDIjaP0SAyS0h3qDUch6OPARCshrBdlsJFx9EYuOhN767mYjzgrmyWNs0Rjl/E3caoqJQYLUYvEx+7bTNt6Xut7ESyEXBpxS3iBdNo5RIZ2dwZ5yGhjaU2OEpkgxV+TeW7APIpoarZXU5ldmRJLFxjOy4mNBdP0GjB/DUhFGT5Hmb4rmSMmMt3qIiCzmfjtZAoDliWLDZzmmotT53Jl6+kl2Z9A7zi3XJn2uzjzTyqYmgEe0pGPsNXS6RNZf6Wq9Zm+OFeyg7ZeF/9zL2mu3S21nKa21yOJRK5QGzxHdyhD4e+eT56ZmkMstMLdActKks84ax35r6LzNaeWl6GoM+KOt+iwpeUoRqHSUmoxM7Z54FNU/V/huQx17jJKuhL5+hES5MgsCoa/5jbljUCIUtzNYT9DH/eloVApUyb81rwEx2YG7U3cBmYPQT4MhAe5aA7JVaK5xt8t8JdoDqOevoNTvBwt0xTo74dl/XKDkRc70kuksfB+9TuY8OlYQeDJY8UDHzPSWRYBZ4GTssYmatGxdYAeT+3d0M14sbAg3oQc/OAU1dsj/X5NNBh9XDtK20j+YkrmOrt81lemyhLbiXWcVTyoDBUDPHBijHp7Nmu4+PAsWz5reB18YbgU4Y7++U5flrSdHBYeuau21drTFoflcBUzdlMIeVh9lb1aNriXcpMyfJf329AFMfisPAHIj1oXU1shGe1YInKjhwNs+ilygKyqg1Kba2nBAgRLiA1PPxTPwWvBP1z76IKSnZ4OoxNV0yV456Dff2+geUk380/mSX1iRef8/s5i7L4U3pRCJPLUlkuo+xHCq4CUw2nj5zB3bwBQ/TvT9CgZDhJwvJwfG73KmQ8+6OSexfS+UzDJTpdJmvMxYLr/Z+OdCpkXc3JroW6JmKHXcR2fSfZ+LzV0WKv/vsIFt7wBb+IgfXNvguRj/6cxDHzPxkrJNPZXcq7XT3CN5185x+9SCSHg/8XzmGBczX64KYjbU15MXZyIKa5OXEH/EFuaod7UyTxLsn5GT+Stz+shEsVMchHrC7vSRlTQagj3p4IBIVmZnxjr8j5+lkz0xc6mxWbBKHY9Pqrnkpi33yliyd8+rANq/ovgr+Sfww5r8FwUTZFqM67ngPXaN6WFJFF8ldsF1NRID7tljribzTlvO+/lQE99vrEosuu4kFpuLtUJ5uzVruer3gctCz0FjxVRIYz4xixj+zK7z6XF95M8xD2kLmJ6yHwC9Gb0CgWxHKli648E0LqyFljAGme4WwS1xElDpZdEIhXjBf5bfyqoeH1+pjVfKeqjtEFhKj2azNe6IxzNtkarZTQhPtlOzQSwV/A5cJmbsuW5S3A/XTag9J/fta8t9pd0DEAI9yx3FJiJ5xpNYdmIDAHBzH8cnMOTLMxb1AEPrWzQPaSz8TkAm5WfLRsAyCNz9Yl7pxI/M2aZfFgPWmUrgFXvIpTVCQ5zK0OHoYfWYYfglV3rDmRUbDhtb1gtOb5yrP7Iuv8y/Dmny5wJu7LscUMgKadBg5Ufzaz9j5UiSNZ8cSU9KlKP++p/f3FQvwh118wxETDpkMrB2awJ1+K5hsRvdQ+4AB6ONrZQMxRYPRN4t/9I4FCLk0cm43/fZEyRy4Y3+UBnxbwwfUSsMMdLKK2C12XV4mju0Ou0vr2ncQMmyLFrBesZzzmxF8T8utEzKkk1PKvu4UJBeJP9VzgWuqzwLHLBTHtK7ey+fRC6kuiPmCS7mq/dnHmm3VPEAOB3dQzZThqXDAHsIV21rkwo67WL08RfQfi9RIqmZcKp07R7MYZ+FhOf22vh/+Ii2PTJZ2crxFHmO7nEQvU4WygmgNCn7D++WxX4ivyHM3imRVQIOTlNLlNYbz3bi+ctoSf79zxmvQnvfiGzvR4Xp52twn289e1j9XsYfp4mOH7w5PZn00xPn3F5tKRvU2X4DKgHGnamBpZyhHceyFO5w9ocbRBBOWDsjmJR0W8mGDCn07Hke/pED7pxgLnZVX3iBu29QL/7/DbKDPmNKSthVbIj2eD9xzi/8WAr1DXPA3z1z4ns1c/J3O7Hz6hJ1bEQgi5LPOnEMBtBtgULqECZlrFR+7pfFQMArORpL396BO6G9N2ledRTc9RCevVA72OM9c6+ZzuF+fLKbG5ngSImaFoDmAJ3s8B+FUUmv+VD+mYBzLLoytFRUv+ttvVNtUKZ1nyQAi4rhk9sP9L8Hq8a8e8JWSWWWnW4Am6++tJ36/BOdWJaHNJNLPW319ZiP4GZ1oHWVeNiYHUd7CkddpPZ3WinK5e1Sq81HNi+bFTGQTORhfIuml806GcDHg0GIvtyzIf6kTc9B3BbXnAt9Nq7wwMk19sjgPFVgwUgpOSni87KQmVVEUkhQjKSzjwjNJxlW0e1GbrC6TlE6e0HyimBMt7it/ycr1O2F1QN1Z6ggex2WDxeS2nD5UXf/4V90rx3V4i41NLDm7NMR05gVMFf7ThTTBguVtqZ3PfjiZGc0bHG3MnRddBrRKV87dh9cqE7h5Sqh8MUJjqtFLzKNc2tR7ju5xmeNM5CWpSZG7KgA1AIlBSwE0ZcLCsDjwLAm9vEKgp2mrJVJZA+0SNrDHGrNuFuP5KHlpkJ/xwcGahRczjACC3DcDcNMD2vRp7Ef4Q/i+3TFyDYLfvfOTvQO3gaARrmcaoqeTnL9NYfKvQTdIcXjdZQLw1q6c2MxxkNDh9JFwNRZsu7W7tLp2E6MKnIPAofY3IPgVtvvTkwCy4dI/HCf8PrRQzSdMViRsaMCBD5pEPwvPooIx4GAWQbafE5grhpqqhAf4FV8JVmZKYJw8mc6CcU1BHOU1x16OE5h+httpVxJiPcrmvsoFYLfvBLedXtJEr/ulbdtAQjUeXWR1/sDJrsaI4OC0QD5az/GaY9Ao7Tn5Vxx4wu+GTFf1qDLYIGsa+MdZoMKOd4QkJWE6hkFEC9zTrRq44tTm3C/L3b2S5opFao61VWS3NEAenCswhXkOrJ7A6sWEyVVzO4esGXRAhF4daYH8TDpUK0ZXKBB8vw/JbqaqEUFSkFQ8EgkdfdawJy5vl+S57J/HVQqJrPbcFzrdfcM1Pdn78oMS2aI/NX7MAu/z2a1ZSc5BAV+1DwlN0TxuOR1RhwJ4DC2PTsc496+ib0mABticiKWlsupcOlMfibqiFV9ecFWOW1Hf21TfXVE5kT1gSeCAdho1X1HejQ2CbHr1U9CuobHRuiFVEN65UQy0nY+QtlWx+uJLwFUI0IS57rJte8ccpvLaCUpNZaloq0ZJ67Ujx0ow+6agYg4K2y6Dh0zygJuL2Wc344lVurCz28re9uxt7+QCYsH2OZZrN7kGeNCYDPnjLPGxXBnK6dnuezYn1W4Hbu+lWvutmHbfsuTIuSPsSzL4af6yDCUEPDilTvVOI+oBrTuNx5csEiKn73h0ZM+dusb9BQrzrfMjChH62j/3DfADuvfkpoj/hYwOOWfidp9FOlb4o/l3cfGdnX3n4oroxu3sGdtKy7cc5N2BrfWMY1sWg0pZVglze0/UOtdLSaq5m9aYEUXPDydGp8plGqIM+dgDv0HLszarizI1+6xvHEoWa5dQmqkvKCIwh4LswBCwOtwpMR0i95i7wHGfJqkB9pmtDI9HnVMNUc6A5wCjEiln+KLZ0smnqw+63XtQuvm9TxJbgjlAjZsBgqh9LwGZ6k9xIilT2oxFqArtME5hPdHWK2zY+8qZqYoVaQRxLDPU1oSC+jqLSmYeESalPTaTQuzgEwLACUBPQMzWBuKvqjKbhU3SeKPnOwMLF6WPHnxY06lFOSMt/RjnVfBAj/NByFi9fVGQe1Tf4nmIRcGB71U6xeAdNOAB8n3eewnqZIboGtvjC6VcK8NxCmLckFmMIPDJu+P1X9T3hCIF+ZIvcwW6Ziup7BTXoI3Re4pw193NuYAYaIkgj5TvVTrDAEHxd2hnsXiP4gaUqiBuRn0UiryI+RX9MRHUyarOJUuWCZ0QkGNbvz/6uygEMGCXZtgfWzOpmIugNqKsW4TCm/+iELNOdiQK30ec+8ijw9G3K+A515svHe+6iy7QZAwmzDScb5fraFM6x3exUCO0cDSRxYLjjxt+efgkdpM1evJ83yXmzxhdHaQfiKxrLl2Ai6yrUHg2xUWmtp7cGT+XCO4XdHGWekOQoSM6y1u/tqBpmf6UnusvXwEIpm/IRIvVQDYJEpfuWmyxlTr9SOnAuXwYNeZ/W0mCoO57rQ+hmhYaD3K0tMkd5/hJuebUKEaulTbG+Appmvd4IMqzZO2sjY2ayTlEe/jPLV94nnpSUMDLh+vLEFJepi7ILGSDclMTwFZ0ugJxu+6XL9uSQT5XiSJfyNyGF+NOKY5V5sxXQ5grZ1Gw3y+byAEOHxiVpGcS4uLZhpo0LtMa32v3/QwHnwRIe18dqGVbhKzUNeLR3BKUW5ujnMCWPT8aLYXNmu0XxhOUvGJcqFn9+xZZt0SflWHfxRVe9SGVVFB6wtYUiRZhgC1s57M+dp5e8bLPh/nRPzPbrVsVT00g2YFHSlxXAomYH8DGVKNr2BdVqNPLiF6mw9RKKXSBy3AbvTQ+TsQMAYQsfWmG/McMkIwQJtCxDMJqPvPO5Fyt0Q1cUm9UYVMNzLpJ1rRRkqRt6QvEmbeX9gQO6cuq/MFTyE6BzslQVgCoaUdLOq8COiLkXU1GSEi9BzQCgXrPLTp8sqrQ4Ui3v8dLu5oM4Dw3DHHW54wf6Bp2MNxGEQxODeOk4oEFjfTPlR524YjE1bM6LCF8vW04IdXjA+u/40ZqhLZ9NTGPyWzZxQWbictTeXkAOrorza2kazSyuw00rtO7JNKUYxg95okbhWD1h35yIFnnuFVtOXLGLQ3AiSKOqnEEqggcrhF6F/4Q894Xx+oKCixb1v8gETN9iBdM35MWuCc2DwTzGtqvJdI/FC8fgnSOLE/xycQUeKGZ6+X62Ns+Hxl1ySq+33lciXn1FvEavT4iq1bJaX4OhDSiSI2SuX2S7auRZAQasSbon6EFQrFZDzbOgLe5rvJZ9rAbppux6VSPsNAUZq18CMA27bundnq2knwu7487bjJRW6bLGJ5547FwlH3SGshTx6LUBxfbm1xwCDwGE3A0B8BC6AXgQduO8QIC86ETPKySLrLKmtLuifLemulwXqzeoSx9LyGs4NFY+6H592zlVoW9j5JqeaSLDW5ybAmJAGWipWOYPsDRoHkJ/MR7yHxjwQMN0Pb2RBdPpajVdwx+SUYRmSra7o03eRzC58KiF6lNBPsceKylkaNEPLtDJxXDtmr9jISFUX5WEIxozbbaZVotg1zEQ7rn+LhlZStdzgIUH06oNLvMOMrlokrYafG4LE3fkl/pAJCK02orgLKVj/hpDJN6Fx0CZp+/6UrG1vrFe96kG72u0D+zhqV2ijRsSUY2JjQufg3kUeTi3bigz6kZ0slD3Aj4OJ2RM79/d0f/nlckSlVnEgC+tu4g3DCD7IfZre3UUf4KU6ofqaSJGxs+wyyMbH/f+vV+QgiVwSY0pCkzrwoX9mdQxJPeuTYo49c87ntn7lNLWlE3gL/jWJDFJ5dW+csbtpQkDfxemh7Xqeia0m+wYH5Qono9ZcfcNf9CxTKo5dJTRBnlhZHQo0371Dnl16EjXTQjDySrDDJnnemWSxKx9KIJr6+pQlYvOhSnQ850F5JRkEpuNJYN3HSS51HxQaP/mjXZ6o9szXt567BiHxd2bjx9eLb+EqNcknGl2JgF8pJfCg3xIG11bn5HAASsPMqoApBDHIZNKafkdSj72tdtVzw/d6FK7XKGYwMONUfx4ch5nqTIRdD1kX39uGpJfTe9OyYQhnB06FUhVcKF0mkDIH8JzPJ3Z/TUOEcp88bUD8wIK4G4Ed7k/KZu0cIr27XIWM3ijE4sMncun+U05QQzj11Fw6xksTKHf4Kb4h4JYn/xOBjw/r3VKb72uliTdhQvFPqosXFc3Yb8wiho//+7cRFY91aOQ/7dMu/7l4Zv0/DORzFJPuVTTQi1+eCXQdg5g0cm60SQsiF/Ceqf7oCAk0JMM3wyi5G10R/vvB/nFSpuhzBX6AsF4DB+4DpzYcOCbJs+eobEvafBlA+kKorYqnV2Ssp33WjnpKn/es8wj7zfmOPNcZZ467T5bcasPd0PbDmX30X2D/j/q+Y9OtTUVp/clac+ljLNXRBWVnXlLOmPOrOpE8zDAY6Wo9skOyBfD9+QNJbK1sqMFm/6SjegMnPVcJJ0Lv1u8GSAUeOvrdvZqFubYFxyFjCSSxBJWe/bmHatNPLTaVBtQ/0Tsg5JqEPCcuqI08MwL7Cc7m4pM6W6GtW4Kw1pZ+LUwFlsUXt4U7FHLZ8M0Xm544G0mH2ZbIK7/PczDfd247pdqRAzegMuONvGkXoMs5sYwxe665KfSd1y567GgCac9GFQ7qeKhFGazuXa5tiNr6V0ScxS5CNzykverT9pKOexx6jo1dJxwwKhG4V5PC9Dyn+xP2R7E5+JnIzZzdOAEreHYoZwEFeCHT6mS7IxKNVq2vTf36uE7Nax0MB4ACYLPFbhKfzcFQJikI8uzl7gDgOZ1tDBT9UerUgUsVL6G2cqwF2HKr2O4uiOsMfFjdCYF//s6ha9RKLHFNvBaDtoVHCg3DazlnuJaW6CFHlZ35cknLsb7H5XGSxQ88DeEohpByUFwrmR4ErXTfYPuHj42kzTNdbxm/OQa/bI5+2RnP4rRKsKMZoaD9iMnxTAs4/GtZt4hhbJaY4bwsItS9cSzhVqn5oauLAZg1a0vj/Ol9bMzl7C68INEKx4/FuVPywSFzQFSio7iM3P0fPZEoCXWYs/67dP9My4WNf0V/3VNv4OmvNoegYfQbDnBVQbWoW8Z5pyxz5wToVEPGVEKLWHPOiiU82zV/NWe+OVrBoQWs4xv0dVf/hQDS1QoOsEzWnS8VwqayYogMd8tVfT1AkV8znOpEZcMb30WQOp/SlAQ4yz4wARJVYz3mJIvhG7Y1Vi1ft7XTLy8jtPLKPcQPMj4HrqA2FymkqOLjTz58HOPIIl9fyCVWk1oQnvvc4NX7fHgEmbtL4b/gnwwIdXpedECfhHx1wH6HTKk8BPcuw2PdXrkiyl/udIX6vAxwBvtbxYA8Y3JwmkXQI9NkEOMZVclozIc8/inPIcioa58DnlsJ8bcRZ7HFJhKFgjro8T/EimvmioLSrMw5khpRmSl0G49CDXPRZZXQ1jbtJWnZ0DcSWDmAlqFMLN5GJ2w72LJ1fhSYnkk8ulOK58n+6d3nA0Jw4EdEL1xazGvuSy441M8WOZ1MdOp3eXNs5M7h/WDq+meAPrtTN3sI/6OX182KLwfv4UtU15utwly/jtKaPRaAHA9YXVoWR1zlzKYwHlNA01pRPpT81DBJsIV6GKs9XMlXCxxPvBRjrljfYvpap3JKGyYD+wr7fOBfnNhNHPtTJGkCDdzPKs59PqoU6MPPD4xKazezQbAf9QZ/kn8gb94nLtaXrKMYID7ADkGLkcpYAfB3QDM99shx8B/jOv6j/iXpl0h+C+AZGn/Y5F4+/mfAlutFWzN9+Uqnxv9f5t35dciKCP7qL+LOSOQK+1KGEMEzaipdwqV5/pM0jXsRqVbWBv4Q4g5nsaqI7uTHD22Za4KDeFKLnCQUAQgEpbq+1RuEJtOrOOEhbv4Eor3pNGTUd8Av+Yw2DvyqLcsukBAx27EiKVcWU6YvzM6YLIfJMwwSA1BGukHab4fdEChtxspTMg5qMxwpRpUEqYPxHBDjhnvRGhXkK0yRuO4kiERauidXMMS/ElDSH1DHxKKE/HdoTS9m5l6GJ39OY6iMzF21e4W63MDuqf/0E4fLh8mPlzZ5IEtXMCOQ8Ch1dH+HgXwZncaH2D0/osFwP440mYYcmoefnE9XEag5LblGaY/MaRDlPpFsaoZtJ+bpf/ayFavPOWWywV4/5hohOKlkl1VZUe+dt/e+KYDIDbqyMIYMCMnoN5x4kwRClU7y9gZTQwzQI/XCax0b6ljbn/Mg6OFdfl+owtRoyhvjX/POxy+zvF+1kKGL3QkvdsrkYf5O5wgsevVs4/DJk1mEWYLy+wNIv/dUphXTHsvv9jLb2kOe9LpfkNsIuqPfaP5w6/D9k2k+PmyGpMzqlJSmGHFrxWUPvTZ+dRMFcrPiwSF/PtgCiD7IXPHxf7z7UKeD5HniPsdy/1kZd4H9PnoLMPCPB23+zmV5smlOoNckCqDc2/38vyBGjqG9RH/yXmOnbezPZ4zR7AokFPUXs9BkO46fYHNHFLpPZqeFd4ZUu0RZp0qEZ3Y1IGC5h8TZvbIZAVskYtXP8RkFcfovVq45ZROKhFmCcLyUwBpaZ10ll9Ak8CrpfBmAYOl8G7V8PH/wVOL46jesQZCA6FFgRfZ+0ZdQ7HuM7YolNaImnhx4d0gsEbEpkw0BWuS0IB7JaEgCKVbUUZXIiHizU0WrST6fdrNEbwS6oTzjNUJr1O+htp4BbWI1wU+W2nMMtYmUlNgtEAppkmsLVJMHa5BrK4wrROkZKYYklBJNgoxEKYirkm8Q6hVsFLNFFiDFsl0ibFMNgimKfnIQXOFqRAwXrNYjQRb8SiAAq9ZTFUsB4+LfbFe6EheI4kP9BxRvH4TfCr2XP7w1CfII9Hk3oo/WP5DNQl3E6upPMBfWP7H1oW7OV8h9BD8juVg2wgbZUSkd37A8i81wsb4dqFHS8dYPkQneYzwiuU5jQubgY8QevKQsCw0g9DWfCNiQaI1kuXMeSe0Hf9CaB3pEMs1q1ZoB66IXHv6xfKKVS20wWIqN5YCy5ecL4R2wX9EWtI3ltecz4Tbmr+ItMGJvZEi33Juwm1H43mDIXekv1jecj4KtyMfLrSJImM6UJvwkV+oFsLH8oVqLnxcvFDNJG1cUJX0e/LKj0bePBm3Xw8/19h9Rnpk//TE9wf92OXt7ftdz3GUDys7tr28e7plazJEumarcmLVyI+ejr1654fJ3KpnfkB+1Q/AnVe/8XvhzKtH7Gq6TesG5yO/eXWPc6JoqRLOShGKJwwrfqcuxzCzuV4viy5uulV5n9Z5DCm6pYaCkphwiOhpmjWQSDpNKAo5Lo/bgFOawwxFFmqTgSIKbmMSUx0NdgOFevww7ehqUTZQdIxogGM7NjAC29HQeYEMGh2I3Zo7llDUI+ojBSKLW/OecNvLnZns+37vUEdzsc6o9D3sfSvIKcqQC0rqRuT8oDdw9FhnR4EKb71BHIc9O6zCM+wG2ps1jg7BUI/oMpIHjQ5hA1V1U2waFzuQQW/g3sImiQ6BZfllaicURbCBohFNY1JCwCaBImClGFJhA0exzmADWfIpnTdQqKcVGMRSviyaI3kRNglEZTgToXHA4qzDCpZBUXs0l84Zk1mUfr/zeBpT2AukV3MQhdzAoYgR+T4acloKmsCviFUjS3qWEGGEsr+cUVfLuYHPjoRUeNuJSo0oaw+hVWVwMRy9ASFxatOJy49JQ2oXH+mQmf7HaZbQDhLKUMDeb4oOaLxBkR05/mj9nROHYCDBwW7gScEI+wSNN4QwOxrcLhTAAzVzA5RWwtsqUThzkYu4YS9K8m1RDPUtnBQsCluxsYOBUzoR1F8uQu2PuLErOmzKVYbTNCOFpatw3xj2MlvPDUXEHELhjZlrSawKUFjDz/Wc2DwLCbxIsUC7UXOItt5olnAYXYxFlA43xdOp9AMsiS2VXk2bUnJyIV1mr0tnd7hWfmhoZbD+as7kxTtNmKFM9VA3YicKqJOdMdutqA9uPjjaM0X8q3j/hQWViR/9Y3KfPE6wO5PT8hT8FN1syTZFY10pFGyUNGghE4iv96o3E7M5pvJlAP3VlgaSRRBXonCIUUkSzv4ZUC74vhUyj1PHAwcemqbILMEZvNr5arCSZ2ALVZ6VDXB87dk5cAPbFkcD3DxUv4r7huUqo2DpcYURCikWi8Wq6oaDJG7dsHS1Jv7xdPtOKd7ErXWieqTA5RZfWQKv48KQNziEFN4+79KVEt/tPRK4HZHhn3kkCx0EUERJXk73icn1eNKnQxrr4IpguemqfNDumD2+W1QmSmAm/VMiOuvSHfggoWiHLKZGzTkZhQYAeegZUDRHft5JIHI0lILD29lQyjrav7+JsEEuKEbEAgqZhL2Q+qHa+kJKr/a16ZHAZBKZmZNBZHk9pHcs5YvS11VDVHOTGzWkaB9KMwHWozbUaUlRHa8odhAO8H1GgTgBQbBQaOKhl/cU9b9t8TSNSFwY+N6pgcPvQpDQ3cBsII+hhwKOBFboyYEHNwOK8sti7ugARfxOsbj2sQRmKESCaP7yzZzVgqpUAVscoSz8DAKb134F8A0YLuP7NIKy8TQmFcv7C/hfpSaLicqFGopGukomkQKQuQODDa0wHVPy0gENFOpIXpwOzPl1Og4t0AaqXigsA6s4jcgjyMp4T1m04FLmylKJPAWLPumVp0PKPxN3uuZOQuHp+og1nS2qo0acprFhXwhSs4wlTzE1kJ1BCE7KiKTLC9IxAgctO1uyzEThYGX7XRj1iZPTNOmCQkH+C2wJenTQCRHwcwJTgdWPXRPZj+Ozo0A1A2zQDAA3WuG0aezL9D9Hgjl2wNIEoEo9FGihwBUQMQdsoSLotwaY+Lk55SPG69UPiNh+Wp8BTJTAnAjfqajXPR2xLSiSxdx3RDv/2YpDpKrKaVRPG3a1ukp9TTkuWkip3YL36ZYsIvNI92ay79fXZezPFsF0kOFQKdoM5i3R+9zd996wfUwb0McWJ6Myh9uOGkuQwMkMr++upX3MyUXGz7/di9aiQwcSBVOFDWVkTgIDpwtzJPChkgkRKOh8HIT206AgiddvooVOvO4LWeLhpGHYBijK2SCODmBsyfgwQj7dEutDD/h0dRoyVeL8kilRL/T2ZdoRbtOA7wE0PHCWlBLQj/VEen07O3P8YTR3x22Io4oJiG0BlriNR8D5DU7NjBIPkKHAROEnzK+ITOYeb4jTjz4GfCxbUbjUzq7RVCb82iNRLoy9oAMdJFAvWdFbkRB1Qe0PE2nWtCeYQGDi+J8NhyxOBvmBK9EMDc1IuRRrx1G5NBonweeSSDiPl2uKydkUCpH6cNLYbq1ueb5N7K/QhldVLBsuSTWjqTn9cIV/3om3nu6tb8RPX9pAxV77q2H8sJh7JGVswHTgDdTM6UThKCHOGVpGdDOASKnp1hkVc3tEYr/zNKOee5ebQRPOcCrlTefdoDcnBJKoSabtPoFJMIglFJ5nWCwuxLI7pIS46rQRTYHOLP1I1jrYRMBtrBZagMygIQl48DeGgKWJr6ssDNj746cqFOBTcUok5KiovY9y+OnKkhGMcPFTxsQ7tfj+pyIJmE8d6MRuRrDu0/4ilI0lToL3zTPAXr95BuABmBSTYMMW0EnogphHyVKH07JaqIiFd5MYgUkZD6QV4s3eHiYcy4cyvUs9YgHMUBQxww23dobmKabGgMCgppnUSJAxmED6IBePTrIqUdavrKIXM9+nMpQaXlFedh3E03MqObvuh064gwT8P0uHv9wML1dTupi5Z2q3cqHENrA4RJPOGaLbF2jVnDIaW2uPcc6YQdlniozzjKk8F0mqr/nMs0FOQmkJMea/kPMKRIKCeRluKAO/WTTYyOiZCaIw+EnIANHqwnIM8BEqK8jWJr6tvOQqbQuM0VOZRuwNHeZGNkDkQKK9AK4YX1D4cKetPKMjccabuSMFtqkp8xWE1dUGuiOWj2pSQkYSIpBLol6M6zqZcXXMRrEZDAdV7WEX1cReM6T/nwo8fBpZ1OWThakF5U9ISKF2gWlPgX1STwxFZ9kQdYebhJsCCpDEGcBw3sBnuhdVeYPTlmz14OI2eS7KfKjmfWjqTzF07Gi673P94B6PS4yqbgxH/GYf1xXwQZue+FQ5ud2cd+++++o9ttfgC37e1El3nQ1cmtE+3ZFwbKdRrnTUqkdGG/6eFUNXCSnJvQ0a+fltFccpSQg7Ro1BnLJ0HC68tYFLAsbyGmLNRDkbVlqBPUTBEFCTgcG61/S1Q/9uaLYx8+0fysnjVTcLwrtppK7YFzLAZs9yNO2oO51rYVCbht8jmeV7910Lzfk4RAQaibGLS8NeFv+ZP/Mmv55CEvOvWZbe1+AaiqaIT+tfFUgXisrNcMrHEQaVoWAMbwKy8zg7r3SSXPxYLBYLieaOqjdkhIfRX7BeC1XICCwSHWCvD2VMuIish8TtGMHeKptzJRlm5/ZyXu/Y5Woax5DCUKcVYps6LsqAOy4lvJoEqGntcCUYcf+At1KXyDMwMRxb/KIcQGorsVYc6TsXqFC9vBAXVSEvcfl9CyhvFUOV2f0FI+NVKHi82qZSIpGEUKyYRzdY6VLIP6Lx0AS1qj8X6CIdA5HCHPasmCH9/I4oE/1y0OicmEHhZMUwkUQV1Gstmwh97sKd0c3nRLZe2bz2cUG1thbhZEWRH51YpmYf8vmON2bC15V16zfzugi1b0qYUg00ybY2oh8aGrtQTmdcUz+/htCEBatFvJ8KcMSvvVkuFctXb80Y6Q4Zu7w/p3i4ls0UWvKNm3IGIo/TmMn4OxfxatGCPZx87rALaa+KK/BBXmsDRjCI1PU4EoodIyjgKLj9fZ3K+y40cWk4f5AJGX8po3rq2rX954gfU+RTBS50EiwScVQVfkLqiXxoQrHvejoodhApp3bEAOJr5lzbiFtR+iIo9Zbb+eGjViYvOkKRCVcybIcMMKqxggXR+VaOEFQUb86wC4XDhaoMHOaCJvWGQlXRC8tehApgmjyaefZCbtL3zYGWvthsSk3QM/xTv5TfCt4vWrSDQFGKS0+kO/1+SHcGd9mOKcc5o+AMZysxZZ/Gaf1irIFnODOBSjpamFSzQSdEmZK+B7CAQ+E8TgGDetxtgQRulYFcQdaKsZVPaelOw3lVA0I8/9ozKdC1jSFkzz3GQ/QyRxceOBLaTLwnDocFVpGa4bYCDto+WMQ4eMGhCTw7I7L/wr5akA1DhCHMXdC5+myxdhQ6AKcFmj11vxQtNhSGaaUJUWGASTlYCm738yLhoOB0QTTuCuwCGDUic57Zb78XoWhhIIjaIYSxZDB4M23uYCRyoHcPJtyK1Fwv7OYtoii4xfkVTPb3l5GEvz7ocxoEH/KdKYzekZ5MfPY4WPYfkzSJD/cGcVyZo8vOpiQc6FGAlc9fbyel9ttc1unYgMVZQOPtyXB0CK0IA6Rc2IgSWq2CaUnrkv8SV5pTMCDk43YMK+sQhoGaEkFNj3rEW90jY7XuV3hru7k3U1fnkkBBVQ/GjDcgQaF52ixIdi06yUUSPbiZcNHd9Io4peF4D+TkBDkKTFz+hyvQlzVfKfkftKfITPh2+uIIFrWSzRAmi6/g9vKEXf/rsDhFsGWnV9Oa0u+WArMb6Pq4lvga3razFqu8qHJgb3f58rn5tCKGuHhwXKnszycVwdieaSiiUG2RbtsM2mxqUGXWeRY26A7F997zh8ljDgsyWaa1eeyYPnwlws7rAPaB1DJglToBNACZB4Mmv1450meLcBpDEyx2HNlkTdlFdeB1f8jSriUkfIBZk2dqhEcrSGAINAAda1tLQgC/nqeggAoxNsNRfrMbqFk8AHedwXEAcrdqcGIQm3dqgw6hsz6CpcNfiNW78aKgMRmuwxdgPTxJA4N9SBZdMiNAptZZChf2wcXb7H7GyfcC20zFjQCkxY1FuJyuc4GjUnFuXk6JNA01XAQuUTICZij5mCfnQxjS+h5lgqEUM+Gu92L/i5NuRMmSBkuRREIE4VvSFFAMoTGqSml056cG1AbAeoChTYaxWR53esI5Ihh9ONbIPBqIdE0yBmdvfEEqx8yLCfxkiWYVleADLD8M0ub/CPOHHLiXIr3wPhjz/8Y3QIxh4oMAT/iSlWnj/AD+m8B0KE97IPNcU555HOpaZuNBHUUjk2sgXCsKq6s15UubbERZLLssED49ytFP6/KaiF8Cz7CMXQEfVBvcPyShitYROo7LsDXUmMhmKB0yKldcs+aJKyTZ/vfi0/qJDDWfyq6KzidlHNEz5HUEk89Kgsk7d+1l68ORFrRQ9jwjPsos1gCrGOzF4IHRwMqeXwIF3Jts0DQZ3YPbT6CRGivw6wVMQwc7MByiMUcJnD4s0Fnp1rTny8ltUjBeYpzr3466dKCCk+WPE3X7aIPp8mvEAfbi+OjKJe59ZATMe0Ywi86m+DbgajV5Ic5cfmm+XEleV0IH7p6MCwcUYgnLhNDRZBC9qrKXQNM4CR6Z1YTGSyt4rTnFJBWFgyR2YZJUGTqPb1bEpZh3oFSppc7FKhltnIp6MlRKwdtkZYOmFfSai/Dz1F1MreEm2/dUcsZ3B4kcQw8l+USXURhri/sptFdRgxqMybUh6LfuZlK8rdgt9SXTZlBxqr3vOM/l8mHns1cbHd6WkQK2zO0JG7oZMOIbQAKW4xwpTcy4RPHFAhehjYbaY39zbiaAwyVD6wtsVkKUUOAK5/hSfAzCxvy8+/o1Xo07Fbq1TXlvqUMXhxHgvmluiGSxX75Xuu0YJNh+4rIb+yT3E3rxKh4d4NUisGxhQdI0jcIE5i6X9w7hvC/fU0yuvX82FqejQwUElEwVUCvk59pdCUN90Q3AMm6AqdgG9a4NMeBWrqF4BeexNK+5u4OF19mIpNMTB8WfziNgmbJKPeWY0bAH+1yerIQSw4hgwSluk+cxhPo7ohgy/WjSTHJc8hachrWWTxjhqF48kw736kkt2pOEzv5Xt1t2iKmT/Rka5sY18XHgkJclk35d1d/vHW33vHQXfo3mJcIqNHu/4oVTMDKxQN0HJyosKbbtV58evOI9pMEnUIXqRIyCAb/xZ9AyL6aths2tzz68eGv5BH3jHn7jCSHtNDzSpmFz66MP/7+1wq1PKW0ezrf+9rS7YbV2tlkf1jRS7lYIK4zU7rBPrsoHCXGfkwlYWyXr7KuZqjrNZZ1ZdPhn+oM/daKLIpLXW0XBk+6rvJCHhgaqGPXG+dT4Ai9c5Kjxtg9FNMQkZl2Lnx1V3T5d1NoW64XotHCzoxJMgwM3KMW4HqeaO0BB8sC3L3W6ctN1JBfYL9yCujKV7xL+HYPfmTeuCklM/k5NGbA3vuzTBgPJB399WTwQrMnwQcidmkrBZpQAe7d4Q1EJnzd44vNN59jAyaoKuDRb89291HN580ckFWp1Ku28o8ViFdpteDB8+cwNt8LijtIazqQJLkfe1lnoyDp46FWfXDakVpeLYJ4N/zgWrtN+8cmsdjYExUtpqScHXET4UL7xi/dfpntleUaI0P5+ph90eVJHJpiROluuluKp9mEepeC3Qa3Bq3qaFEaM1PrSaBNREnzqgs0olWEhMqZaBh+meg101M6Qv0vTlcGzxMkDY9cGX+9FpNjbbPqDiAUn/VH9vfqy7/jLz/gBk5U4ORr6A9YL74RlLFVpn76ct7sLOXuaReXIaT/SqTSsPv34tFLE0DZKCEaew+aXs+fwvvbnBw9VKJAGAikJOo2GwYVRlr5gOgDFOHjB07Lbp4929f9Z/jQ+hcE5HbBYelwZrTnSs0S2VTk1C9/GiNcvArXGdTdIyxLGvJdaLmCVUSA5pjK4S1V+9nwTmeHSMOeQoGrHJmD1UP1IxJl8vN3fq8KF/37B6yN1AtaMn/b5jMAG6bip64zy7r2ZFIE41QEOSWnyd3LhCYG9EHbY31dY62/k88tIjB5Y7Nctc/foVtbyG9/lnTVO+DnC1T1+uxUmPljthL8jNEzsLDfxp8UJ/yrYKBeGvsWuKlXt+1alINKO3qv9cJGDvVy6G7q/76Cu5Axzl3MQhdjnN9UAPDo2UuUaC8jJn6sUSU/Pkf/yDVOHDqI4V5bcGhrB6/ligzn4GI5ynSMDW2x9U5zI4sv0jXdRBXSXSZc8kkeRzkpq96arNR8NnU4gtkDreyEUY06WNEa0LSDyX0Zy6Sh4IZjT8/XaWqDzfudjsDsADg+IjxDElC9IlKeXKbMhsQUU8fyx16w6OxhdEZ522wErX9m/+Ocg8a3AmngDcmuYl9z4+thKJ5o/7O/+2wc6zsH6v8VCzTFZFCWAUpky1HnpPslNgFU8ICLKkyiYUbvjr90t/WcTUjf+z2Hq9VImAXBs/x1Hlc7NgJLdDiG1Lox6bWA0xePk3r7AzVUU8wdrc2BoGY4SpSnqlvriQ7C8KI/zcHi0OpbcR6AoL+MI9OIzvQtNvdV7p/7L/RZ/nW3InFSajeNL+BSydU3Pf66kpgIYcnpyb9rmniJ/H8acmVCeRTrDXh7nuUOHeN5KVuxFXsZ9sNa1kMeRTY+JPMMRe5/69Xs8lO93gtsiq7FobSmOQXie4Ufu3J+XRo9CQSsjcnf56KbqKCtmeeZoOR2Tdj8HgkHP4zt/HMNiUU7hwu34aFSlRhvVNl/kLjT8Fwkser1Wcs8bjsPaQMGuQNuYYhF0WkyUxWskI77FL0jjEaATg9XC+5bAmsdLlSL3yNckei6mo2XDsA9VOKVLfayR9ZHMNwbZ6g5rc/YohNn/oCuHVvTQhFSGAgBjfHFBxh064gjst0vSbljS6Pq99+BfgJLzERBELfxbZQPimHoNdX2DP6ZRRL5+mYF43X9hx0KcO63vqHA4l3ujv5eR1DbH6QwOfsjVh0T04LxtNcnZdDiC3/P+eaL1au4fEls+9tuPYurdeM2Bi82jxaFMh6Pd7zO8GQNsq2hdA33zIMPBHoYBaYTleCwOETTe2SVgo8Z1ml/yAJtrICRwKiUaAKT150JY9kPhzaTSS9h3QLmIDkjYYHpuOra/YIUOBBFrgoGkiYDpkhXxJVAcWEObb1lfq7EBAgHd5O7tkLCheUhUiwcX+3z8pvRfdHp0fEufa0eDrWl65hmSJYs5BEO7Mm8VL9Mr+EIO8/sJRmZYdzdADw3cHwF8zVlF85p/n+0HU+3Pz8fAie9gDGWEsC9l8ohfAQLwgMG7tgCo2R9+TChiMYrii6388ofhDiC1GT8OuA7wiEFe6roi3pqb4n7C/j9niPxYIW8MyCK9xUdo94fmdD/tfy/K3a2FlXI2bSskLszoiHZEAToERWxOPtq6lscdUsgoFmrILVbMtYI9SXqsiRKq4smI31evsDiM2j4rFLZ9DsadR5RL/rqfso4B2QiG5ur5M7LBzjcD47BkdwNIO3A85Ajm1VqKWmHiD5Vzeap3A67CDkdeC68zCkR1naY1sOBoqhD089YXAgulol8QphObce5m+lTMgFicdffJKgrmC0KtkFRQmhuIw+bP8C76DathJOi2TRtiU0iq7kOhFEgGwe+P/r5BnH5/ra/2lc5N2abxcKpHvXeiFNr1ATJY5R7e8WP0O6BYnnUdywQadvMLuI35GsjZQQtDYvW78WlrQkf86OyLhdTvJWscWRHbJ4Tnyzp5vGKH+K0lqmuvaitG0IKeRRAwpf3ElBqP8IDmDrUljsnF+rT+yACB36wpc/F0G7C/zk0ifr9QTkME31Cnv0SXwoVWuYWg+2KluHruEJryhkvkrLl08somkdePshia+KXqopdW7RmTF0tujLlbKeUsuQuvm5Cml6ooRfs1Df3NFOl9k97t+G9YiLf/MxIwOSzSxWlBvsWHB1lI8X5xYkmtfTyPGccsTV9R9Xk7LWoeF7UdvPrRghu0ERa+GOvKiWhUGSC63MHXnncXM3VMBc3BBOOtYLwZS4/xsvIFWXJrBod6Xl5w8T1g7QJy92uiXcFmuff826raC/ZkhOys9eVzeYn2uT9c79Kfpas8B6RkOl9sqbhrzHvu7hxRMQrdGuMSgJEVroiPK+Q+Fk9V41+rSxQTUuhb5DubGotDxIBeicOFz8vczCG83BjaI/ZiZWPeZIBCqu9Pw/dO2wGUeNubVddydFPo1P56E6ugo015BDVR8GPcjPL5psgBJKlvC+xH4KS8jejHQ/CMzx8IreqVtzjC95vW3j6/gtN0AQNiLTjMN7AtG1zbCRtJGaS1B9cGC6IZPz8LXZlwcyKgVcJhJTWvc4t2wddVNBiQgTjrYXWXezYu7xgpj7pk4PUyYwXiG3qYepB1J+vgyhF3gCPrHeSv5GiXPXFs+G5N3K4drBStO/GxSVKmJ93AmFYpRVj0jbGcE5niBna8PvxraBh6ics17Zz46e21Cy2kQjCWIsYmOI117dKyAJ2G4L0jKRtqyAO5tJ+aq8XIrVcOEQdGzmSgnbaCCJkticRZIVwZDbalt1BGCXPuCi+/6n15JU+iK3R3UOkPA1vQW2zedKRkE16jevwBXcupAN7W0t3A/A21QwfkHrQ7Gg+jpIxFZle0vbCkO2VfFgsBa6JBvWFHra5xSGSFuBYlEaccIyus4Piliy9paklUZn+KnOc/EWjWHSbcliC2oHbwQB46zGrN6KkFFPkKlBLgrmkHKkMhhrkDI26JUMGpsEU3i9QbuipMJ3Pv481WW0R5pX1cBij5TXpJhP0P8YruQXuZxhSReN1d+41LqrpwMR5lPqN0Sp1c+yrogP/2ux7aQWHRvPEsR10nTMydRVk3VD9gB4xIiHx92DgmJ9TbfhlI7njnU+L8t/exR4GORKZy/CQRVC4tT1cbV2bNxrBu9jGFSQLeeanm4a5eYwvtF+VdDMTqSiuiciWxdp1lWETng6DLb10LkuVbcUvYWQUV9YGwcXrmZe1WCsNelkPs4fetNTG8DPoyQYC5+20mWbLxVpAjMvfBmr/Az2loxyQF4Fc0aS0hMr8a3qlwWXr7/m4kBulbsUdkqG2bGhlMvDI7V9tP89kKuDSDa+knQmwd6oIyLYdSIpb4vFK9Jk/K0gzHfw5CVXk5W+TWYFvFPIoZGnSIpDqzUHWds1SF2rOANWEDZ0KxT7N4Wzsn6KRWl9CNuiqVzzOYt2zWnhvUxaqXu3EPBSM+hP92uyc+MQuMKECqV/x1SOE6/Fvwb0f5fKGnuygebtbRE/eCm2kfrDY7TW94r+jWA3Xt03jfFYKrXg6jJgkcY5mujxgobfdtRndjkSJnvKtMo6uZ7N/DxcnvKD0o8ehEJ7YhXz8dL1uBlQuWNjJmvgL0VXrBRqECi7oVRqeOZHatKiltxPdxwhlJiRKPhIl9TnRIl0NUDGtacoMsh5nCqWB8JWZW8L3Ojfrd8u9nxOWzQy+/iYljobyfUxwqdg1t2EJScQ11mIWXKwxRFkE8R6QwN2oJTHSu5qoySq/4dfRhoDPP8x7BtmWujN8ekBwrr+cgZ+aWvJ7XqQO/BKaEAJAU44ua+CAkxz4onv9lYNWVwUT8+fnagO+uW+jIYu5fgWzlFhDvQFDWF6ivZPmrfYlQMldBi5oiOr/6nH55ZnMJqIJ8Trgz+MYIb4/sTWgppRJx0r7H2+M2cApsoEZzQmg67QpWSpRTKRo2gZSolNryauKqYVMpsqydGux11RQBCikXOoISZTnf4yFxY1PWLX6yPFAP+HSH6DfsxskhVAN+fZ28vagaEErPBGGCk8s4RUkxKFIeKGpkn3aGXVrUH4UDu1X7pvxf7UdPbIcoeByhAVLyinlkMtWVruDNNh/f9B5zYaQ9ic653rWP/PFqxGlp8lAMMtYOHp1UR//eH3fjsLZzq3i/W5snxbdk79flMKXlUVoTcRDoimpynfYvroS3s2Wli/VlLnFl8Siw9OlKCTTngMSpSEdmUNECF8ZqF0n4/kbifQTC1qGLFsgac6eOb7lWgMCV0wE9VNsr13yrBR3ahWF5nDQB2/mooArC4fcVVF8vVhGwSpJOkMTHsQLUXU5Y+IjHviKBtpSNJaVWOzr7BrmEnwwI+itPRYOZKaftCo/XEz+wtHQWAkj32iO593pDWcbSeYbcVsw1+LuPndFJYXaJ/37acCrQqnMlIEVDlxemdcxECURdGUk6YA2tktNBa2fVtYf62tJOO4gCDOkYSWnNjw2dKNIK5TTOFH1rlXldFwyHwVXnAIeST9PO8KcjavI4YV3UUe/1x4nAHa+U8Cc25JZSqhyX9++HqWyQ4Evz2DkEpnQA35VzCrGmaiWYyC/HcKdx7rT+pBTZ0S6P+HRwGwcXm+oMr/5tmndv56HVR/leV1cKvxHf+5D/wrRfUAxYUQbTC1A7MahJiC0dUL0E2xHUCQJHs3Q2Nhx2GinHZW6f5gzycuH+tGfxzSjP9ZpHYS9OhfZjJTCwmyG2h/aJMwii5qunzoGD30yk1VZDJtpFSNFGgVQsNbm5pEr0aLtqDLxZD+sbfrST49X3rBDdDA6ca7eYMevS65EE3kNgChfw+e2UEWfsfO3Jp/F5fiIEXLjmOywAg7cEvV1x6QHc4CX1MOmR+ITtHZAWDpc22mo19BVe64n5eDbtXUxylL0z1fLtPA+JEs4iCVZOZms1V2HQrOJEbclLH3oiHYLyoQLwu9WLg2j+YXkP9psUA27fmcCcAAmztspnwoqlQ0hWamMKfY4jEHqvY+qmKTp02+FgkCKxmFbTIkDicRsjb7dKR4hXC/uY7zFj6e4LgaG17C1s5KC6CP3tnHWUpqyfm+Ch+3/rTCxiUseJpXxDK8jVUFVvuRdsXZpFO2zYT3GehlwELR26jCqs402bBksJzjQtuUbqZ1mQZIkv76mobrG4bq5GCeYzofQmqUueDx2hEDk83DtMN7qUnOIj76wVoI1DtAYd9nYjmhVT6x3EFp2NR2Bj5oVqOeA6+/DGSkfkkS98zyyhi5mRfqL1t4Z5Egg7+3zcxQQS+/17lzzZdAx/45Eo53B/2ObU11EKx/nv2cS26/OpvpSqTAZu/cb1Jo3iIFIo7hp3Pzns8qkmj1UaUGZ0FfI4MQkuEA/z+RIs4chS7XuUt5LIS+1n9UAcTqMciS5jeItemaNMGXOsiavsOE1LkBwSyhdHFB3zzqkRVOUO08EvDMtc2VJiZC/eBHuBKiUmLlVKFlOdCWVmqQPHOcUsLHFzNwcJZtE3DIMtTjHO1UJpOK9je0sHyCQPxmQgftqJRzG7oEgHUntSroSojiaHesoQHIO/DchdDIQU3ibnJLJ576I4GQg2PGaxjvFUWJSGyr1a88EX4qDzrzXhLZe3NyGBbCijNu1qBSFOftyT/C12kuPSAwS2P98UZT6hdIsyAavEMnentQ44LSr2Dh3hTVfoELJWqfaLW+GecrUd6McwtiuSV0NGAaUjjBCqwajVCR7fQ064ztP2usdMUNBQqXBxgzp5taoQwOmAqXmg6pyvGhW2OEUjMQGxGJDzbebLF4WxwEOOIZEstcZ3NzIUYxtacQMEkSGZ5hg9zO0EeDlnssQ/Q4uqeRqSyZjeSJqxK+LEsEuuzLlU5QcCL9QMbxQGp+b0UGMGpwMw+TcBHzFZoToguAW+XrOZAMdYx/b3NvTy25Jigenvjs6qgfC3RF7BrDJoZW45BHXmozvM9eEdx1YhcZU98cTuZI29Vykb2HLsjkF0obrOU1WHb3NSrn4mJdxCNkJuIdCVgG8MxZcvhPGEPdqc5z6amq5VktttXgp7gU2ZVbPi/v2SLOa0RV5u49ZDOKgzkjGRE7QxSDHIng7a65y2JnioUNu5mUgOyfu+MisXIvXQgSHug0c7SBosDIoQSq85s2T4te5mCP8aCJYtErERR6CQhdw6cbFgqpAtH1UuzM83TIOIzwwyOSji9ZVgOFRW1Coi0u8hL9advZy5UxIPfd1F73tQr+0e7jVf1ok+9I7zmITWvVc4jyXR0PsFXtLSPSwt/OfF+If7AxJxSvfJXMwVX4MEwk/THWF+IWFpvUuE2Sf5uTRNvPjIxfPEmH2H83G03dDyyW3bVWgbtGcDa3/MtAyDPFa6ju7Tf+ZK/4ZdCdZoaDYTPfwNdaR7jLnGN1NBYMJcsLmINaxAHZAHom3+wp/HfV26+52rGBswMNV1XmID+o389anFkVas83K+rIfE6JFg1CbvaFkSZpo2zi3pGIJU6TQvdsBKDSR/vYA2LMyKjcXq+RkLL3ZslPdLAOIXWQhzdgslQfuyWoI/I3lUV+p2RlWlhWFbfXRWe1JqN0yw3CcYs3c7zLBKoSVODfm1Qrj4ivCmMphPTs5xa+6nfTHFCjWGk+rsnbI5ooWgL5YwhqMjOzQYJ0suqOng6HoVZ1pbXyrpFm4MiSwEy3MuZ/WkHaJYky+mh+DFx8ptgdC7eY3uRjYMVr9HpSIgyVM7m4sMRufmFNHU57Al1ckRgPaHYSec4eixPK3ZiZ7lrK7GxFS9MAJEZ7Fn2preduw4OrniwYFCqvvZfjvWC+Vk8SoYsUoK/bVO4VOZHY/yyOk5ZEUlNB/8BaCmW5K4QFDiVWzSGVW7YUPWC/m4EJ2OysbJTuvf1x1juRH4KlN+aC1PZiR2brehSCMV4eCs3SEYZn0u9Mot5wJPXlRstn5NieWCVRQN8htx3MdFTYsrhG8TPjsXfS6qD4BRKLjGPi09GkP/y2WoJyC44lGe0rEekkwqdqL+h8GiJOURfFOkINS/KcY/BbeKI40nJaxNg92s8trUnuQ1RdXKKtWhPH0CVtLhn6lJgtoSLINAbH07p30BXHwh65vMhw62Y9z66n90KUqyu6iOfTbamE6edVek/foM+6gRMPvKk/U+uLd/LwqLxAKSWO+niguVTLplCZx2v5uvrR9tf1rmJNP2t1Eeas172dhDCIog+A/6H5EJiUWd37akGPlpsS7c8b18m0GfKcfBlTvz1Kc/uFRBhWoBPaJ8BBi4/dwTcegGpQoZ8WRNIw5ekdx8ipjC6u4NYPrp83ABIM8jdsOcUiv4ikeL9DgjKFrpTJ8mdDYtPHTWbOq42J0MAeOKyAZJ0+VdGzNoQlMkaM6ZwPAYxJnvnwrRHt7DdFmFWFMLHn0h+vfFsjWufL7pws3wrOlcAy566WDZwpArgBHqamm4qGgJc+s4aSmwMzCTq7CzgCDyMsAG4V6u9EaSr6+18ecIv3epsbtaZHDlM7bzBpAvRxFAsapN+Zd3Dx0I8JuoHHeKgHMrNfyokAvy3SxClRYM3/cLT5DwZmPuKZzuMQmrbP3yRh6jg1uxUAEVm+nvgR9Ufm3AdH/lu5j6KBCIqvbPGi13vr8MKB5Oi4z8ZAvoGZm4WByDhsa57IAbqrkkP3WkJndWs8YooWenbxaHWXiZRqfBW56PopTuof318EVZt/23a48udJsCA616uzB4RyzNB6LDYcWOdLHND1RjA4ch2U2HkBeQkV91qDLlVjxxtNesYN5yNQEXPHCXyyZhvMMbsyk7FviOZMiWue/D6xc6sJFBnPd8N9UrfHgTYCdM7rhv1NBAYSMKxf7GdyD3vD0rdRLoJ5eHTHhc1ZLkOCmGfvD+gtRLAaUpvdKO29zq4K7Qu1nWp6OiyUbG7fkwXooBGxVusCLY51SpEXq/ZUyciNHYxFUNCq3OySxE8+5pBqPoa9xZxTIGJhKInpv0+xi8A3g2BL+QCfn/G8Jy9402IbwNDfZ+oU1W35l6Qp20e9BYrWYXFR2VnVAZUA1jIUXxhm4JM8wb1xdDpXxHvB2IEsWqvDJKKZ6P99NwSZjGHuBuSsaiiAVc2QOu/dfKsN4DvlXrgAHq9gdMX6EQQZTCIWw01G3GN8LBnsxTgLmOTyJ7FzC4RoOrNBdubWsHh09YY5+JoVeEWi2VtAI09ll+aAgAmxJ0hcJLvyGMAokJoHlXIg7c0gbgRSQlqkhEwQqJaohVapg98HqtEX879tTvSuX0h9JuaCVsWUKbDEqGxRgHILUGfPW3M/2Z/HjWJI8/409+plOSnii55DDAyxitOJGyz36kgK/eK6i9ougQiFjGKgYFofAyx6MWeH+k610VJj6zvC42CDFVoGhZA9iOJ4SHMtN1V89K7dmtagBAvyxZVl5V6EwOwUmYV00w5FSBwdgkY5QWzL7ttDzftbjMMrjm+YIQVCxDRAAgMWKGb1yA+abSIP/2r0oawH9D4H50Pt2MDCSyzsQbpGOEdIyXhjiq6bh7epVmJHupBsLdRDC3ClTnl2KQ0rEJQMWg9j7ZKr0QFwpOYhSho73qp5G6+sdd2TcwvsvhHv5BpnkAAxI3J/xLT9Hw60godb7LmtHtQylTf7ZkSS+Sx1NWOrqt5XIXStBlMD9dSv6eK+X0/AeXwf5sGl1MM7PiSmuXYymBJgCpVlNwzck+65mS5t6PG49rZJHTWEVAGa6GvNGPAEcFAhI3nzq1mvauqeQzk5Qyn9mG3rNBUEfMXByiWOOUBXcQHYwS9xvRjMoDVhDmlCaL/0lbQ1MMSHfj9r5Alk0VdwChqYouZuhKYBeCAvA1rxwkYKgISU41xGk7ygqUkUMVucKH1nlO9YtobylK2ilncUHrnoCMk0Im/3ocY9eaJICCiA3IA8g/NJeQir7YGImbj/upRAXIUD4DB0UYShYlmqfA3Sh9ddxX8ZhjttmTUPogqtegdC0r5p91INXwLRb8Py/lGLuyztOHJMMYicQfcY0W2fO8+w+l71uUobkr+F21Nt8WY1kzJj/D1yrSqQik6z9QgLLh8MlDtpiwWqYqADqA3eo3gpDV8oLW69EtxVKpiypQX/B41Cj+XUsOQMnba+Lgxxe59KikVFZzsUoDghXu7xQY8dfRWy2yHgxGzX5ExtjdUs8o9raL0hnFGsYzBMN9Nwipue6Bc+2TEep7YjR4C8VuyJePgjlRcKcOhYEv3yWQr5TRUHV38rGf5FxkUMMXpWr4SW6dZP2x/qxudZMgTWTuaTStZyDkVTfIpUMgeiLa+FM3Eg+w2kjwpBRF/pij3xtljW6Gc7NBgQvlLeHpQqmWXhPbegcNfzjDOejc7DRmz9hgR5rJlFeGVQ2+/Y8jxbNgWAm0uvhe9Y4JiodwrzDWAxaNGEPeRvBtgla+DO9BC2IbDz7iKnP11rt1riWBMWdZS0OPSzBy1XmmzTgQPD2QIrvzHO/FYRkcUmnEBib69BrlshwjW3zCMK+OtypkyDgYvLdgWEltPOhMN70o6QdR6J77mzZlydRYA67ZJfLoDwDnEsv1ZTjC1EL9SazwDUAVZJYKCAE5k3owTTM4SriCbEO0u0aD1G4lkhgxdSwaW9EZTs+h62jWzFMGxE2IDssNE4PkbR5OI43aM1pxO4fCk+uw4m/E7JyuPtVJLsuBMYFwidrdHInDAzX+GO6Khtqd0Jw53eFvmHeYErQjgkhBsEf5W4H53hwkKvhV0tlAlwK9wpef/vyWaPK87C4sSEsEPiQDOe2gjRrdkYKMCA/FigKns0J90Xdxbc1P7Vu3TuxcVpjQ5FqBRow0GjzDjWqAtitnOewuKcRfXo43GM+c5n0R2IaFmbAZpiWz8r6klTiID06STcdSdZeUfGwOfra5PfsA3IoG/GWWuVOJOAWttXeWZL3KBx4V7AXWsXFYXBj/dvDfq7N0n8uoflnBxR36aLmfPDaMn9Y/Ub8JBDkT8DehaAaTTzHZQJj0ONEmm2xBEm4GjUCEDGp7my9qK3HBu7qujvVljHrLT3l9Rbc/3PzWIK+oswTyam3XkZji5PXaQbYedqhqN+SHIHtZkwz3AxD4gilqHBSHRULb6xMaih7l3Oiat1WRNA0l5b+lPtGArxwh+j3kIyn532B+gZMNvxgNvdJHQv++qvfOTCW1b7PFZ+B6YAOWPSxf029mlwqKxFEgKiOLV7By18/lpfTUMDO8Cw5h1EJ7sIcZAzbn3TYUDgT9KQqMcp/0NFbYy5Rua1IKj9NvFG61FwgoHhxqhi7XWpwDybIyd4W5WNdrzAZ4yMp4YTcMyvFpax0d42OJxEPINryyiLcxxpVuGdOeOie7EVbRbKYnF9YX7F0NDoNuXirP3sV3a+nGl7ADcJrmMgAns3U/yg4pbqemLbXr9XB1RVfHK3dGsUCRJY4vPBxnR/aFztLoade4RJK3dKOau1Pa+pLrR6HMzY8Z8c48x2jmVdPeY0kUoZSqVbTRSVapkVljNov60rtaTlR9dbkCUbJ66NAhGqIxS6n1drncIDZqfa3JeoNnJNSsntODU/4mZ0tUqRAJiFXLxiBNXA2qmjqT7C8RgCzrYdHtLhShC5RMX8UnaAsQd3K2+EB02hqi4GaSBi9lHHgn6KXfbZ2m1xIDOGBpuMshAYHeNecGs1IKBiQTc+7kn6jwDbcvboBj5HWijqFRx2gssrDhFHKhMZyz684h6DesJedaOVcRYWnZjJs7jFD7UONG5ivBqpihSAFg20YczRdaR3MGooBjlIXDjbpjGjLSZw4WnKqvimRyz2JazDLw7qzVk1CnOCMslCumddV3Lo7HYmIiQS7TmeLp2RJrrjDaEswqg8ppxCRFgQS4lacLufVOVZFFFOSEOwTfFZPHSkdRyPNCpI1TgbaJgCRk5O1qZIqoHpFMyJy6zConri0uJqPzigiX2ZylIVgTA4WNkqVcsWDfeGXuOkzTQCvecOditpFxku1RDGJcVJ1KUkx0ODwxHN48FddLQ85ECNYUY+hMVZmBcC5XMEnNSJKOwhQlL/A/57MkxInEpkfY0AREo5iMX0pWII31903nrxcsGfGSHSgUS1L8kHpfHtYqTot+3Yai6svIWuxokAXAyMKCrJcgcXeaD718/gv0hXP+C03Blx40UXpzU9p6TGI2Pog0eXrK7AsvFtGR4zkL7T8x4Qobm5UHwnkVOYwN5ogTm2pqv3VdyqDqQIgOr0p1lONceXrjxLvL1XRxYWp+D9XvFt8ErA33NaitXFnV/6Sv/k6xEmgUO7808fnhahBHlgcLpnrm30iXzkY8OPZjlUnW6fhXiJffiV89hd7897XcHD4sudJIRxP7XyG2illQxb0ttUjAvzxa6GMeWzE6Y8cQ3cxEOZb+x1JUyhIB1wrqgFkQaSP1x70F0BPPrV8PqgiFHvp90qb86f2g/4WnAKxDeewv2N10FanDs4o1pPX+txkbA8E9loiAin3jieVXgIKNDM18jqzkZkSz1pHFj1upDfkdBtPqJGWgCwR8qaPHxYH2Lsr0DJxg1tT5ihvK5h+/mo0RRWVSyYoLmonqVWTM3LMKYfEThJI77ms4pd2RNoZ8HkSj0/uW85Fb0OTAooT8fpM3sHZgb1abCEODKysr83wBBxmbXaNiP+0EWiEu2V+VBdxpd5KWV2NWKJUPNqYrbHhgSIIS3FnkSVdKwf5Q5f5LoF7Dvgs7qJVhagbAaItGBXeVmkPWtjZQpGj1NZZ7XWeEccfu8/Pje1EamXTuR8fcN5wd99bS0yfxOuL+epSpBzaBGCGOr2h0+z56T57mQ6po9/X9aYKNEVgLw6U+AeyhYafQ8wCS7uW87IlkeTObNFwyj2OzS3P26FC7OjdT58jwYhaWY8z9/dUs5LTRCUpn60i4DPLTXJUN8/3NJTQo1swCcVIK85WGKUsMxjPme+p5EauQKRS3mHWUlNuGkXWh17ntMF6KMqz3Xl1/pmOfftr2wXqiOSHmcTLUm7xCaQjlHIb05x3DTYipLx0YhWF2bC9NrBvEt/Ar3DMlp0pNFjrna7HIAzbRzYBVcGkgQ89sBpl6tRExENp4ArTrFhu4LOi5omREepBlwTO/mx9dVpdWBlW+oAHOOVxGp7x0qflgURcXEdo1EuPA8WVqiRX0rdxmWyIuxl9j37wX/lCEDorFJSEZooD0DFaKYduqWwJWkVI/oIk2S7pIBWLzDyLEUcohrvJAA/4flNk8FkZpmD2Iv5q+n03dpSEorhs/GxncOeLVAA8NK+WlQ2Q1iAsjsXGgdc5sBmwHl0JPwrIZUAweCL8+QBMcfaAL7lcB3t97OFyOHIXyI2+pd7BGqFxcynGHJkLbhVKjmvl1mrcwJ2bON6Ch8rx0f5umsHCpoGM+pIR4p0Z9fcxQfBDBIzK0e9e0LO8IFkOwpTY4g1Z+C6jJZe7FwJJY7B6ACm2k4V6gJeFdhyo/Y+NPc3wLcb+q7Ua/mGDCpdcXKcFXeKsdJf07gJXp6QY3Y1kLrng46WjXlpIXQdnbwZhyMU3PMoetuUzGVXb5003ZsHc4hMylQ2/DRIMNRA0xZup8t9QGafGotUYUB97Z8Td+4y3nlyo//edxyGvVFlP1QlgiKWtjYqAqIbaJPKn8Y4vyEaXaWmbaIW92jiFbqj8N0XF1RMPQw+liNltDKzQOCANW6AzQClg+qEqUNOa6stipik5Z8opVGxqhgvjtuJniRPF7Wu1cz6IGFheEIMgdsaV/zzRVjXPV2yzbwqMdXYy0Q20Z9KX2giLrC6Ee7rEXPOf8JVXE2at/9QtZP8jp78MmGD2SAhs4GcV5WC7QFasb1KIdzyPQvEHR6uergYLDemHGIa3oPplTsvEMtg2FLGBROA4HyMdHcV5mfx2Zz86RXelj5qNb/A7LoOl1UnT30jP31545eY5kLKW6XLiwdnqR5il8aBe9gzm52/0GpMqcItJ1mraZkGUu6SfskGtoAibr2IA1BCCLIKBtHOS0TjAzP0JWMhhT17l5P9iCX98+pFgvUG5ude7PZBEk24nUhv4CSE/1sZ/TBQNplS9s/D5av8BX9KdlR/32FI7JXTFMx1y8rgEbKG4iZE3LUvzMQoIPlrmuldr1rN0+H7cxlWF/ZGdyd6eNoL5bOcrwu+/DxIaxwqZEhjppaxA5JQp+Lc4iQOvedf8eA9/qXpsht7Ugqu+L42hpWI7BH/lfVmt+Cz8GNC2YBEMqgtsh8nP5ZxHh3vydY06s6aE8X5K6OSusZdAkN8I96NJwKAfb7jtarOohIgBI6qJ0QRfoMGXzqc3FXayrKCeDZ7KrJsYENeDwupppXFa422FsW3hCeJCdKFzgbpCNHtkiCQyx9q2uX3PJ5QnVXVoxuVvbnLrbQJwAdKq99s6bDN6d5dMXn5TW/J6QeeF8hIC7Rb6rul49MyT1XZcNqavTkKd8ATiH4RJIck1AmfHL54N4q5++vmi9nhdaIEowZ8fSNIol4guGJVPREt9QXuAn7ROkxiUXKK6ALGyuSa6yNHTboBf2oitHa0Jajk3kMvNwqtUrtDWfsIExer7um0CR2GllGP5g4zuIVGbT067CJ0fL7HGVZUndlSPZWv9ukWFXCsm4a+OTtE578Gk1SU5lwBtyoUlg3gAFVFYKlwI5mDtARoRdO6wFF15noLW805yUtbUXopOBWhRCscIqklAFMFXJ4+49PFA2iJ2kCBTXKViSlzEYIuxXQvSIouPF9bF9njtkkVItHIzxkKi+8UATHTZcv5oVFAZP2yMkFKhQ7bC6go/dsHCUCDch8QX0d4y5+uTz2Trbw78aL60NaszOJx/8F5g61/NohrI9n0e2/rhuzM8RRj3eUN/9SxhoK+yGPHfoUBpdmtCeCFZVnIkwEROd4f4vGD0b7ozky3T/A9Z4Nnij7CdEXmFUCp4te1sLB+YPutYMXy5LvfbxKHRFct/f6Rv8EwYw7OcmDQpF6ywStNsNtq1o1sEF5chpK0OB1Wh4J1jJ4KpAq7iIUCtLHpXUobUwEnemYv+Zz86m+8mTWlfP/OTk0IOOivAvj723kuRhAj/fJGG3KnjG3GjycpxzyJK3s9+EJ0OetNiOxKiqTSeCNwao8avBaMhTY1mIT2FUKcJ9wlhK+uKsJWtNr1opXA62JfEw5Mx3LMCYrUVRw9peoYovdPXiDGrt0BwkPC6J/BAWrJuxUUxoJDFfAQF8z1o3C9xvcu2IKlkxe5jNOU5auh9zXdhIyLDp5Te+B2D7JZSAilu1NcBLb2EeY/A3st9gllaPoTKPMs5Ypiw8vWmNk4fC3WG0nq8rj1epZ2GvabLsyJag3i/WL0huEtrHVdno6PFrAh2OBnwD4IINOFLizl0KswapE/rAbWpOhOLrNURU3KClrAxWcpE4SlovxYk1rBA6ul7DpcfJHbgPKgZZeK55LS1tMZ5Jz9NNlamyVz6+uOVqofCEahL89qlJdUl4MGw8nOexuLXxmkaUN0LGXUsa7vZTe8OcBaXEOJmOlXwZxvfkYRKktJET5n2Wc3f79IDHWsI1s0+QAuFoJPhigSl242NHF7w1T8kEo8arqSh6vYYIjWSYNiyDoodNQ6CJnmsN6HR7/JgUxwvxJnuDYbiEA07FLTrIIg+uwX2Ag1u0ThKgSjk5fDw+Oi6BEqNxePmjLOj6rwOiaatj1HA4OpEn6cwbx82UZflrhxji77YBJCDvtLJlezp1VG3qPPZmLReQfTOKapOxuGLmYLxqsVyv+vszVuPOu0s2cYbwyXC88B4xb3VsthmYjsKb5VjFb0bBfQJwnXpoEO+w8N6KSbgx9mYtV9gK/U+aL3ufQBoPmSN3Tqc1jp9oDaI9fr3um0NS7gfl64jDvaDcQsgElHbYmRjc6cv0HsAMCUKPvqLCK/i5uc2J9G0NOVD88a2WoGC9ApGYEfP0WpbXBVf4hvcUMUJ4LKNRdL7H7kp7f00YPGDXumiGFDXpzQbr2qN9kwBFE//bth/fEEU7wnF857u8nFMku4GEcJQ7jdAzI82hUoJJHuJuzhZXq4pl8zI2TRlU8gAFm3jEHLRWIiI71vklsKEMiTsSvVkOEqE65Vb28jPOpghSqEAiXcWVs5TOVgRcbOgsfEilx1XLUT37qmWjTzFXFDHhvQeyFUURf3UZJNCH6uVfLgYfAFRO4gi/UkKtauLkxaLcneUbP/j7vPa0TCOrFY1U9EC63omMU01uBIqXc9rH+yFtZeh7xrZ5Ebdvr6ZENSjoFWIIBeOBsGwkRFffgjhqV9f2gr1NN82sEaoHZVwF+jJHS0JU2mLaqsyYo+loiGEBvQg3dL7qBduFScVUkb2j9+khX1U+xpwubuCqeTEqBWuwzcQMmvPQheIRI+exXidsXkee5ORd7Q2sYeTulnyDoBXN5XdeyrHJ6XSgMpfyR4W1WWrqgYwW4dDEfSPEpou77YzQ5+oPFGCRVRN/E50yIuQcoUIn7hlS25K0ETFpGXLZRrlrDCwSBirJOYNCZiYxW4Por8OWYSmAJ7tvhy2GczJf0Qt5ZddQhAIyNtwa2oY4mVZvNjmI1DAhfkiNP2th8GGTldH1fp/IbGIHyxJdELkOl0Zw09RDH/mI+13XK4m5qLFZzWO5ELgD3ip9H3M3P6Jc9JDnckoj6hnMwVHFN3mROzz8VTxJ/fU/uQV5XR8Dg+wgAtvHvdMc1NiDrSAm0dtbkUxwsagvBSV+a9H0H1FC7l2DVCfnIKruOJJl6qaSsK3pc2fbGtSlzq8pJl9PCiiy8zATE6JgwVakwm+m2DPvuZ+9iVfGBq2yLbmOTU0nDKWXFQON0nlSuX9siQ7qZiGVwUEo6KC39Lm7pFw7+hPXTpupxa5/lVZ/kdgXSRNK28tOznWEfCn37FCC5bg9myhSCh94OJAfIDlAD99NcudYtj7fRtYAArNVh6cK1NoGwPFm3gWhJRiwt/Bt3w1N76p/+Pssh7OGE/JgSu2VUAGi4149FinTcZBCr5fdYm+LqeUP6kV2mC9E6KYFnSXUNXpLxToPXbT8QayDdzWGE/lCr/DVVtLZ1tWCkvW6ztq6yn/4DBVLLZ921Q7UIpfMcuyJIKyy7/zxUg5Np4jU1QfgVZPXiYb16dvV966+CJBKaLgri15DEr3kgX7tH/jAFytvOtZ8VeN7oYKSX1UcnrCIHWi3MKk+QE6nGUJxontTQWmD9UumqjuiBE/Tut7OCE9SxJSMGWmUKfY+5IVrT7TI3jw1lJHsXHToG9fXcQbKZ4Jjy9mmjDf+mOex1gwvm01n0HKsy1esg6JwhZZgNpzPTQtaNc3gd1qa1LgKr9cPwbgnIrcakhi3GbnzOlbjYKqEI0sjpu08WBl0xGggtwXZTW0oCsxRvD7zfnM3cneXNH3ofkzndJfO6S7dpsfpNj1Ol3RNl3RNd+lJuktP0n16mu7TU7v7+fAbQ3BsT/6F9p5gBQoiQMP0tLWJhp34ZKlAkhKcnW+VDOFfsqdLOpULzDvnbBR9F3ga/2OnwMNuYegL5/cLnYR+cNDwXlQLbNSZk3910ks67aI30efTJoYpM/Exxw33pun5ZLth95v6fB3ab3NRBu0v9jL0eeBBBmOczLGzPXnYiLCdAQTgQsisDCKJ/gu/1uZV528YgQeQztdA+GZiCjExyEjmOkXp/pkyKyJGZ87mkXpGNjjizLD11hDCzSjXFVaQW3mElQuDgBQIQzlBi6anCJnyulwqqCy8O514+33dpAQo2q/0XF3iiKIFPTrb4YWb1rBPXZiSR7l/9rHV/G6wltNmNmfU8hsrjQYZgeYdY9EZHixnFHEF/me6e79lr3wUoktXONy6nia296SXSVLifF6kp58vaDBr086mLZ8S8ZpvYQ+MTfI3G5Uv+r8x8/yvrho6RnThGko2A4aEETCUmH8DgwbwNLG9J72kp/hVRxaN2SbcUCfaIb2CFhLtwp4aI2UEEj8frUqDpYCvcMWnyPoR2isse7I8+GUHizD4kkow1v6WNWGrVLNWOf3pfPg2oQBY6YRPc8bvtO3hZwunFNdPYU5pkOjoO4JNz+yGkL4HX31pmjTZP6oig35oyoTyDEmwRfWzRQcufN7NqQPaFgUZJRwr9f5iN6UGb9G+nJy+vZ8PaaKIIimCeKQ84zvZuy2Qwa0oZzmvoRh1ma0EbDQIrOSGPHX1ylYEfigEN13VAZ9jwA1meggfwOqv7Un9elV11joYKRe8Qb7F0lycSrcAe+CHgudTI9IDbfkbXGRWSueV79h6PLD35MPdOwR5LhRQhK3jUfAl+KgxLYVSepHXidV1e+p41q2RiF/qDxvyAkcAD5doJP4758iQaKs/eBOk2n6aXi18Wxja2un8IwwfTqZt+3n3cIdLrXZUXTndPbcfMJYJNgXLV4EOarveoNEEKLq3MYrcYcJgioWVelMFXJANcLtwvP9llF0HUcE8GoZKURkbzKsbWu2AmvczUl6mcYos14GNVwl03uu43V+7vkaeTrHV2F9aqhObiWr4q53gRwcxF7o0cQwidZLg9Tll7PJ4aUqGK+kNTJ08pCIjHK8ojLNhexlVzmoJQej4Zr0fLDJsRVWlG9sbRc7FjcTLJ9Xx/MuovzJj1lgogoeqD1fTQFFEaTSHFSPzTl1ASyPM/6odAYb8t9/58lTHsuAMreD25ZzigQeWO9ffiDaWDUGhf9kzOFk7LhAbuqaItckINnBKAQCPXGGYhi6W7zTCr2yd7ErpHroi2uNMBe8+KP2y1M3pOADgMoRP3q9l5MfONN9XduSCX7i7x4jw7be3maoNTAOuqGc23EMCW+P7Ir/fx5ctowYEx4G3qHnGY0Gpgvd7M93pTa1lVEmwSKwSXanDlIuFZ7CZz68cw/MmIrqFIUs3LX9F/qBu0RL3weiytvH3d4t1o93VXF3+G8KDX3muEsjo8EHIhYeWMLEXuwtXV366+sPtl2l/F9PiJ/xSX+0sdazVg/6O3zOmKvNHku5DKEJkXWFYMmOIk6C+NgoB2vrxfEhf/Jf3PtRidW24cx4vZzc9PnGwdJzHm6JnCrYYgFilI13AYTnfa8W9Y/vvYOMUfC/GTcPe6TL42fY/b+Zlnr9t01jdnAJ5SWq90wYMukGwVzubaQ27JQKzsUEsH+7Ishzx29SizER8WTIaA+/FuH0txq2DWxeX+adACaXgVeHJ6J7u0o+pSCaFl0331fxTomncVNPv2+BJvwbz8Tb5J2vjYypD2jHv0CsWR+nwcQvvQAZ9B+EW9MB0WVA6SSiiUeRYOQ/DLJ7/wIPgUDOGrGy1m1QejjO7neIdcODlsdX4AIuxHlg1sdAiMXoYSZrMHVk5iWdxILDTDu+JoIk/q3/cPrtpHC5LcBZPyrqBlMFNtefdtC9Hb/1tlQBDgXe7rUxn4KIDz1n0Xj4JJ6PFZ1BBQa6X/Sji0t5IXLzsxQu/27/FGa9tNjJ4eVXk6uL0QXIKVxoHyyDrQi/deZNX0pmVoZg3rBnuO5WWBnkGfrUNTWEQDw20f7KMm4I/b8N3ozHKb+l9hnL6c2/hF3gAGTx+NSfpp8EquQkVw1jwJ7QG6+k4ZHl+2wZClNqbRU1E4WvuHeli4+dHG6/JEuFGaYe/wGC09Irx42MDwazaoYXSlEOtxUcbB3T10UXjYIE6DcHf7Lk2iaDHftDljAQveYEOpx/WqRb5ae2IXRD5Dz4njT9rj4LIo+0sbgmquZ7eMU5ABui1Q9bkAZdzp2t69bAzLmWrbXLoiUhimYGoiPfEqBNPetruvP9rJTu3nqaB9tFJipT+d+lu9iVfloHcWskc9SReVvaLm7Gvmg8iz6CCOLMfpaN60HgnlaPE67QN3bs1401ZyzRXeDK6PFobvJQXcag9K50hDyWZa2ecedTAf/IZrVlzRsQxEIIlTtDUyOxiXLV9qsMGXPNw1sQWWqFIP7XlG4pj8ASdIEHP8YvNCmF0bkODGEPCnhYU2Q1DPAX9vDEo9tIV7xhiLzrQ6xDl9o/gk67Bh7qE7UYZIehvmOlKoZpH71emF/8kqqgpBTL1ZCyJcrOGTOs6eX6UL4pEQgjBWBJCCMYuAQjBWBJCCC0ZteWk7dYR0lMK+C4V4LtUgN8pAnwnpOwkgSr4JtfGyJPvJ5fD8Rgxt4Q2S7KF56Ks74ZpfJnAQz4woLAGafArf9xtwzBgwwCsNyHixRSLEbovPggvEgxn+G6NrtOK6bz6JCxNLzhcBXftsP1Gy0dlHrmGhOo4wwOJky9bGaNuG56TMkkvpt9I0z+wx2bw8cBaa6wHLjoR1sIE4+WhIkkJccFL2fsezF0sn10z8QVqCZ7aqSekDJ7q+Ph12l/mnN7MO/VYjFXs0jQztJsHXMpZs8IoN0rwbaNeMkpGMat2Ui3uxusfFeP7960MRqc0MIVoznk3O+EitvVBcgNNxFkxjc735eaZZyiq26ackeeMmuYacqPT7WoHbpjYuddMPtOUeSKBWWNFGWkXl32ESAP+XmHIRZP+lyJd47Y1EkaZlyEcOq/Y2nXOGCgNPSja0JK2NibIaRUiBO6Bz1Jh++xcGgoa+h4J0Sz3kjRN9FEyYhXF7XjLVUCremk5FLJ9mpc9YvgC9oxvtS3azI7ZHKpRn9oGjrfHNMb3KGqPCb+iIr1Qu+wQRbYnNS1WmgxEc4bInM2HPBnKKvlWazjL+rW6RUb08eGEkywemtyYTymicgCStslJGY9NXkwlz/HU5K8Z5C1eNLk1sxxQh3Y6h6mrFyCZH0kXfswjpnn4eWGmwU60waWvz+dYnwLiyXCLuPy8POj2CdDSC70x9T8v2m0QUgTBBKabfU88dTEqfeGOnoNXLeFlTSvlK6doTLwYucYDIkm0y1TRq6d4oau06ltKdaPTn3yWFFedVl7YvymMoGGVobNLUyeuKCcwFRbLPYxyL4uzVPBmqugBOFpiatxVyqaqQ578aCjPaZc7fIBPhNqX7d8Jy+2G4wthihkuwYDBq1wuDL7kU33ZJ/0PjJXcj1ZDCGsPkBuPPIEIUlIngfSdfeZTrsdCo4NeUtjI6xsc38h+S7A0f8gFZ42ee8BprgN1IFC2TwrRXsV4ADso0uKhyY35lDIqByBpm5w8x2OTF1PJWzw1+WsGOcSLJrdmxt7kqCA9ugK8gU3xAxnJLw8T/kawL6wxD1sXjY2WOOh2p1LSUyC/lRMaA5NG1yXXWItHS/CKsQSdv0B1Q7DBs1aMmCYrQ1OMhsLU0wcoBrEtiufIYZaMSf1H3w0guhk5rGvFpW1B2mZ5yeaKCUIiwEHg903Kh+6GGkHjYq7XlOK6ltteTNS2j9rPukJteMnYaRCdPvyOVx9Lo9+nzy94BVnBhvzddKdye8f9M9LOsGkrVS5av54tvgmofxIuvCWyFmBisk9nX1ZerHfWKvPAT3ZzOpY0Zt4D6AzoXIwS4dF0SREKrC5XaoDaqHWay75wpE5kkef8zNgatUZdUIaAq8XM3GNFDJRCxzPWIpM556DKhghc1YWxrPNPOJjOeaHPl9QB3LsRV2uC5Tt+tDpy+BS3Tq0Kr9jW3X9UwcL7oovBXr0s11xobLNlaN2zXimS18ku0WqBRMlwtYLM9sauLPCLTOZvrUr+AJnGSGibL0BMeVW9t681Ngbx2OL6kNiabeqqIqUcd5kUXegJmfehKXvSNL9iMkJrHBVqSk0qQw8TCAxBA7yYYGEQi8mI2tHkZVmv0IK8DQyqUcwWSRVeA67Iiewpa46yD0Tq5+gYeKNZC7lzT6RIjA+6/QdyZq2nK8vjyXfAlQqEE6Z0MwgcOK+HDrg0dH2F88H9DK9LpZA7AnTVh2wEq1gIXTeGGceo6vbpNeesFRxl1kc3V71jhHMLOnCKSb3KjzLr6ClVQVnvmDooAem+naG1rHkDnEGRw2L5/T6hXShsO2BtuzVbHNjIcoeDdyB9RfXoAowPmbqjZMwtzxSAr0GmgxkBKsAePd3NinbE4FnBzPU9vlCLgd81XuE1aEN8itm0jlEd8PM6Mk6+UaGJu0EMSM9ahnS6iOeMb4ZyFqiw6Zg+EIjkbblYOMB0CWoQ3gXGawCK/TYNvzdEfSQ/RLo1kpCQAsDTiQmbzkblpaCqnDKnYtKJaKakjzNST9aeStRU7+aMo81zy0TH3mKR09sRS3E/gpFiMEdfIKNiaHxb/UYbp1bOc+txtSFLrJw+blSwHYiEzaHZnWMk9kOiPqGKUwoCbxm6sRuy8TW/vFs0PpZ0ETHIvY2HZXUnBF7n6spIRsl1RkpU0dPozTufKa3lKI+Idjt12shrj1dEjnDwA2FkZGHhoz0Bm95+MWbToLKK0RkKaTar2nZc8/jGtj2kE8tRqpLxnvKaSMnjJD4xJKPkQZItvqgu3jlTpVlIiPBpBxuw2Xbh1KiVHmhUtdefBvGgpAUPsbggu8kV72VCYETNvD01a3hR63wZ1S0x/7B0Fu1ZKW/4sOG7EOA42MCUqVWb08jGvSCJ7IobnYw4h0Kb9wIR9FZo8p5IlCxanITkZadYg/JKDMkocZCyKEEZbi49TLBzBq3u36Jld0q0T5EpTKK1BJenOGkAdKQlaL/BRsKIvQnE67ev376jcHUxQrApi/Eg3Bkq0ehPl3OgBAGoviOT4QE7I0YwtL7PR5I/nGowCckzYCdsh6l3gabfHNbNna7j+rEckYRJIec75QVhdijLf64dvZeTJx3XioQPSGhxZDR/P6lUyqc52wA6CvDZKK/aQYw+HU7VLe+iRKGVa5xpP19ogcdr+o0pvypQciu6pXoaOm4M16LSFMVWR0Xah4fu22J7+O8Hc0jtzTzLlOTjtqrrHEPyjY4iQyeV+oOHxXzanxP4dXxoexY8/8X236Y7SlKGrmcjef8nmb8pS7pFerXXPqk1W1uL4vt4U1dfShPrppQp26nlsMQmgGFK3CdkSjosIOQTtf4DIkJWEN1DJWRwfsqLGsXKqZJYZtHrpxmoxsTuh5EPiOh5zDWU+qbn15yxxMiAL3o/d0DZFd/UWHPSo5ux96eVEduH1iec/q/Po/fp+/mliuP32fhzq/p30tWj/yFammTXRYumC5OZIV5hovOv7RLB1lF0HrKeeSwKy4bXQe7HYTP21yV9czaF1I7HKHt50v4JurJbzXb8TKaafNFOENcvvTLxqDfRe9KlLPYU9OnSAwlLt8GNcAu/vDCUAAfllMjB4B4MSG4KsgInJjBXf72u0J8FRY/KJF9oWqUTiQ7A1ysCRhUavSxnK5THYINDA6oh3AsKRbX+ifSgwLroDQ3kl79VN6QO4iK+uHqUw6TwZ0AKfvXPFIYK0yNXC+/4uJdARegmw+DY38zDxXHQbyi8cdYxO0YqZrPoPJfDVVoa+eyyfhYoEIHcX+huLwWPwAlY9Y1w7j8qvV0VWTc92Q6XuOls45VQCesPXHkRpWBTfkVIiinBZ5q4xTQAhWXH6TmZGL8bW9XcpFT/hhIOS0c6BrAx/cbuywz8YZixK3x0Gkon1qghCo87+7gNHoujWnAtyXOYDacT7La1l2R5VFRcaSYutlTb6+kNcPeOK+bxxB42k/XsY8hvcklnK6vAjs1BsVWbXqcRVUo4MpYZJ59h5R9EMg3zAxrkBBIwKI0K+TF9RBgrwV3yZYrJ60rcueYTnwV2iTwbYtZ5LTFO6bWnKKXpZoGiA/2hG0QkT0juyzIJJ+GLmYKcxqRqecAaLgnc+5jBqR4/ZoH7qghnJnsrPAANgPqxGdRrv/Z5Z7eE6c2sii0vBYRXU1Yw2Pm4cakdm/8HwFFMeDvpH/YXsLW2sxtR1w5e45pGd6eE2CCRsNJERpShKM1vmJpr9Uh6Ep1y7MIzkXiVj3NQpEtA+4eFectkNkqOSIsIQNgcsDegp9DYyrEXeeTLkZYhSERyY305RAzgEOC6Wr1CVxAvwX1A/MnHV5QiAvxUzHe8/KzyV2wMT5/CrCKeJNr+Ek+uqin656oQeazjjvj9T5gsDNZRTTheUeRHTUvHec6Cn1Raw5+xJ0mWtgRovXSWHtghbZizS/cOWFxu7g4lqke6Oz45nUO01f91nIgi4Wq4tkm5MIvo/MeJrCKUj4BkfKjpi8FxnidAa1G8KiZwHj1EhWP4DhkHhfiicEVESCESIBEhhSdCnntirH9InwsFVYiKtVmvGhRwDqgfV118J3t02XVki52mL6+EKHgvs2x9cTIvGFyyPD84AU9QHDyKu9vrn25ZccY0u3t43ACMHnwhvgqIQuWP8OK/vgVIok5rSRYnMnN3rQMNSXnCmX06VtoduHkkW+LJNNgvoJBWRlR6udSGRQa02KXA3YgVJUFBm7yysUyezOJt8mMW9YRmxxc+1kglfeOjeK3qtl6GA/bn9PmAjTtTsLdPIHc6iQMCLSuDNmiqC+LhVmo+G38nDirmsGULDGmA26D0uMbjDO0keJyYNz0sU95bVTDz2BcNWC0u0oHFAL0M8GHOmGP/t9ZP1gqesTjvTq/QFUnbYaYgm6X2/P9eUsQAqaCn2yoQzw0t7yCSOKjthVYittuIkhRivJYcg8swEyZPDbIvKMq2iQisrH/q2hqpOETueHWITuKWj1Eerf+WxkJlNfkaMpkV86fKf5ho64bGd8Prw0w04FNUU4JoMSscajiuk2e35OjNGaHKBNChq9DQZPzc4FDt8tlmZhuNgr63sz+xFw02HFqwZZwo4lnT48UsFOPbd4tdd7cc97ZnHgFqMUgT6NMYwHbtqg0AhtBa1rbLyDYuylboeuhKbNBhApKbhXU0IydmTlL+1zqKPOik1I7kUUpUFiHhI+FQZxpuXs+jWSXfUFfKZmhOkGiyapXmn4HvJ5SE3R4bzK0O8HwgvYkllDpNgSnBKPj6cKixLAemqvo/hBtvGlBXWmDTyBPcbbwap1av5t+JRz8YJu9Lh2koNPXiQjIa7Qq0kgNcV7OWSPvp5n5pfuYZDpLKEj/KfMmnAQEQOOsUrKjXI49Xp0jxARmaspSixKpxEJ2vr8Zsp5lRV64ZD+7IN320/0gk6wJveOK50+ca5LmWAY3vF0b0F+CfJ6gxDFVf6ubSuA0Y8cKeluTLXuRc2lgp/w+QhP2JO9efSixnOtcJCaXvqbBLQr+Vf88NBGvvx1J2vd2gRNGiCeYYGVy/RvAe47niyVVjXRC0FpYHB4jyFIILJUWuwmWF5f5XkcMWJaPPBxu3VH6M8qDTTSaI8XpOT4ARllWWSkZTpK462Y8CpoRjeIqe20bHfiuOm8II2/YJZ9treVw7VGtdMsT5tuxituVWMtBUewcPJqGA/oKDD5JB+qIY4pik/gAv7+dWj/jJosgAnH4GzgjnmdoY/zviSYBF3MFcNQZLknQmcgSmfxTbpxcDzh3bEWPTleLadyjnIEdpQvZh75fwZ4pldPxAImgwWi2CZgDnhGL+XDoCPcMa3xioAhRtJQrnos1IkGiaE5+qq8MeQqDsYgtcY3FfqM/gfwhUv1wZt2tzKLltLO2okOCAHlCdOq5lAnTs4KzHr6tbVQhaiTRAeNM4czM7awPOxivVOAcqMKBu9KVpRSdovu3+VCDpzDWvsjDJ01AopL9HN/jTBiwP3MfBMtiyckoAM1idM3jkOgVow6LF0R7btHqC8wvDuUyfeoCQwAqiEcO4BHO2iDNVLNBxIZOy8nrl+0JYsTBImhCKgUK4mHqSH8lFtAIqx6dyzlTkHp4ioVWcmCOhcJf6m0xAML4NaroZjoSQEwNQMvt3D3uGo5OeTo88vIosQn7uOs8GRHtz8sQCliGdA6WDYCEc6eIrgAb53ODao0z6oRlUzp2VPoqURjtfhRIW6ECKVUV6GYjFztK5x6N5PkF9ejyvav47Ru/c1rWDxqI0Kit6KUWNBksQCYZYCDPgOCmgEiYUq9fLwA4d3xPXWx34/MiD6ZFApWGwD8rEX3JPuvu6C8rKcxa9jNtIdhJGs5IQnZs5O8oa6TZbB8Mprt4huqZFly55W/C2EDyIZH2929PNHFlsY+4WxVazuUJHaE9Ne3feMnwmhy5B6AOKI/SG/58g1n+MoRmg1f8zdsaB1xTE3KC4VCQ17vXC16icEMjUuSXm3t4wzoQw3UNl7h3ccb+IX02LyWVeTLzM4hzwT89IzipuCoiqg5FikFoBpiVE9aTf5AjawP+TiBhYzESaFZC9nx7f/fGQQ4w6CUHVxR6lyznbMvsIK7gqRZH/PwsCe7Ahxwt3H2Sw+xHyO6OQ6BkfzHCvRHvSD6zt4z/V6abWzWARWZr+vB0M9CiG6sxb7NjDcJz0DAyVHwWOkFS4ZTvrFwKHxSxqu0IILVoeuSlParQS7kbEFSyMhF4zIxaye3K9/tCE6w4cEOJwQgkssYWyEIrwKx3P/XZl9UfuEhD3wuVk36i0blWAb4FTheT1gSfNKRHr2Cs8hfe+4k1hk7FqjtC6sbI9KfbXo8RpY4f2Pm1g43BjX1b9rB2Z47wqg0PIUVI9d26CeWh+Tg1eV3IqDtATQjvQpdFgCZOeXcy2cd77Jr9rLDG8kxCzoBZn6fgEV1JOCfgUcgO5pY2sB5GvExL/H7dh/ISOGSN44nhOFbwbEZvlNKwP/hBo3Npf1L+2roykOzq8gX3PYzwcecy3wLBdCbJ02s5ZyU+5Mvq2ooSgKJxO1z/g+ZcEM5ca1PVINepHn3MkKF5EMcJQboI9VLLacz+7vC6j7lEp2UVUbsh4aib5s2jZ1YHazUgkcMsQDK5moY2hmp4ZA6nJBKv9JyxPBc/vEUm2GM+MHTHZQ7CdkBiuY1jq+SumOPS0ziPlinndqSKIqKoHOfpnsY6ic1sg78sMIrjwxi1JIOVsjVFqe11VJi198xEbrJb6ylZA+JliMVPbRRiwJPZZ6kFhS++noq5Q0n/vH98XguWeYusLxQzDF330IkolAOPxxYSSL3Cw2k+ADG2fvBqMjS8Isgo0BY39wlNNeBrPGoKo+q5/A6NchhZ6Kk+3JF7niynurJh5q1xPZ5qd9e9kZc5INZTbU3EkD4xCH4u/S9xYEYw3g6B4/cwDwTstjnUP4D/90sqsFMvDMWrfcnAoil9jCz4QtqSxvpoSHI2dJwO8lb/JxBW0vFNmydhBgpGQiIFUU9BpGwg1Z7WphYPTX6+GAFNNyEsEgGNipiWNx3VFIqhIx844rzSvcVONCQYcHPUmpwI3rKhdeoE/rYIIb9Eny+fMqfGcdKwRUKqqicI/StOCTWMxSKJeGe1UVC1uhBd1ylPGTNFEmeggmelUAcNeE3/Y8TYRwoqNRIkguDNDf1rviT+ec/mbmDCUPBei51vxOpHiRBwSO144qAQAvETpVKRWfJWn5d/ffdpp5ZKHqcDesqQkOSupNXY5bI8qHJaAbn6JXuEeJEcIzDkiA1senmCFtRJwH+fyTfVP077Mbn08FN8op1EOW5RzDNzKTHaSVVo6LujCCHF/d9B4n82yMKCREfeVoshGcIy5Xe0LcoPFiZkExgObeTIWgSghVHmXDThpJ+SkPKq1ICDgIhbc7101gpbl9W5tLy3FCh0Fc2/w53hxmMrwNCb7iPRw6SNf0x4XHoDReLifOceIvrKf4EsnLAyLZ3eZz+le2Dr3icWKL66q1LhwQJvTGVv73QBkAEdw8sPyEUV+Grn0ns60Pi/nNAzXx3oCFutPgKcuH1DNIMIAeXW6pcWiO4Tis9aXfy8YierilFi4UhOp/FhVr2ob4xKKT4AkTy+2MRakReWiAbAGoDXbJ2E2/jA2Fssa4LEo7u9iSYMzpJyhub4PuQuFL4vPIUu5H6sNIIw1OfFHY477AMXyCOlUrJeQHeMaz0c2/Dq0YYqa3xOLX15K9qL/r/P2e2h0fmfzryMAemreYJN9pISbEGsBuPCABLIgjQ3UzdsLQEVlrz2YUpvR0HStKL76eU07t8BsX6ArdQFgAJPlb8ogLRxT3G1rEHaRPhhRSsV478fX/hjSOA4GMHn0aBig8pjgnj0p8Id4Gbsy9uFXdodTNQ0gvLvjpqeJ6V7jtUUHZDJ0rEZShwpMUERQJRf+/Ddfd5anZr2ajXkQyTWYOUpUy5ZIC8FFaNOYti5x7jny/AHYkUrpu0kGXbnywfGHzLEVoeI9MV+DmQlmFTcWYhXzAhBrUtdj/NDDS6UfW4ENeOWyW0tAUyz9er0l5RcAB7xggIbKPC3wpbT+xSNR/a5CHeZQeBWbfm5gG1o1tWnDP/1sDCqB844yjacPDOG5tTzgr+Y634bFAR4vd0q/Ir9JPl6gOIixSfyt9nl50UfLGxcuBktWhgkY8lLRgP/QUEhfcGpJ/aSBTubPY9ubq2koU89YjK1ZFn/VMXgszdZzp9P9hGidCmidHM8kRksI5Hv+2fEIoHJLE/iL/ceIyFOR72Nbb/tcCgJJWu0aMmm8pjwXmz//W6YmCWSWGxYc313S/zX9wwLoIEA3aY6oEml2TXK16Lbtzg7LLBHMt6Psr2Ns6n+lmaR1IacUs16kO87pUOvsuDiX4bo2lshho1EMT4Ftw+jKOKaDGDLiq5GfzBTIdPwM9KYK8NM+bZFHvPHL/rPhV9zcV8tvX3r3s/6wUG73aZ7FVI1B3vJLnRa/pWYQVwLCOGIN1n3dE+PuSQVMnWCk9AZ8YY8apoOAZWBMueaR6AbhAW82R9ISofegEo7bOyRoWidmKsUCueO6FozEtSGaa7pKn7VpMrBYtfxcT5UrpD5kBfNBh5RX9B6FR3nkFp7HP4dkJB8WAeTdjdSjtLHH8cWjrnjZs/fTCd3c7rwQsde4W9Ckwti6/ezgRqf21QvwUcOiy66pr1jf3jKd0fzkUubMcndosoBp9VNuce/uSRwaDa43Ugii11WvFlsTGZVXzMfyb2z94i6yIkm+KydCQjv6wo1nsIF+46ljE+TW9EM8fNo2gQXhEki0ETF+VucYfHHJgvZOp5KF2tPiL8w9J+0wVbOHwxg9Hg13uQ83ht2x9J3aybF3d5jO04qrtlPs+4mnRvbwR+/xgVgwitvreQV4t2mW43QEjX6Cb56ESmMB3TvxgAJ1KJHXuLT+UM5dEVK+dRpAbJ0tElT5Aqu/1aRgbAfKCuLXxUYI9hCOZpEGljxDkSezF7st0JncmsHWqw3a+DrcD1NRkxO9OGcXR6SUzyK94MsaUfH1oRWFc8SSOWkJohOTWXLh/KjIylju359idHzO9sg6FPQ7R7chvqcRosUaqOljnJQoez4acoYEziGDjh190iQjGkgx/6JZY0dZVqhbg2nJj3Bsr5qHLGvEtZ3lWjokIXgv5SLMVSCkBoLkqRNH+DhmQe2wRqcd7Mvjo643Gww6BoJgNBNgC9mo+xrYOUt685NOX2Q3Oc5kF9aKLhwOljkH+3eAUubpU8DedivNUrrhkwxpfv4+O+35/UZr/XFNYeFiyJLY4SVqvwRCO/RPPwhyGiOJ4zzf49/MQ6qJQ1wRMcK1C9yxfTjRnl2XR40/t7P59ssJO+BIX8pMar3/WZhnTubJyZcJGer36c5J6jbDv1fMTVWYk79vyc2vpu8ogfExOPjmfUmjlqrbKfEHjD+IFxIN4Ee8bSX3EznLKHmJz23m9LpS0jWE/UxPsDXs/XyICLHTCU9wBXzmHw6diiQzd1Ml4xmhg+Y5CjIAL5QUX5AvLJBzU5qbSjaxm/ca94wj3xve8K/jxKvM16V4Sw5v00EId8M8yNU6Z7Qqx2BbZeDEvwu9BLbA3Z+PcDgRbvyv+GVbn+O07dDKVMK3cZ2JhI1sABECyWugW2dEZpkMnReH2npIw8TqXvWCgs4a3xTxsFIa8ac1vcyxYTPGLuC5rnjODgdWWsZSV3JzU4zaEvj05kHiNxlJ1jSWHm6EWrOpaPtZx38x/fMhURUKhXSprLwtMM4jzGdEjyhXMoXozCLtYJ3UyAgGX4J61AayfHSYqCfMH+L+Eermna/MHgCFj4VtsIRxB4YPwS279KyhrQJIkOei54Y43xixiczexY5aS4lDESwQX8wzH6+mQ3zs1P1o67LBmrmztq+Vu52wqIIzC6ThJk/WB8DybhWCS593EuzqcUFp48NZ8llG6JnhOzJ0AqkR/Mnrx0wjQKmc8gDqj6l84oOixWv+EhVCdsEyox4gNCdYh6Bay/OuCYVpDrxgQgdwQu2ZWd7JjRTpIVHphhpUeicnpyku4aP46LMocf7zDbxjG8HPwEsZdIoD9QqojJsJcHaPznCp/9it2U+XaUVGWWuEuF/WEUiBbN42GayZ+iA3mkZS8E9IJ8jUlY7seA6UteGd8igJKhW4zVplee00o7iNxdRS3bkdU7SwyTS5Z3s0K9han+qZnogYtUvkOFx1nZ2eaqg261u8eDXLAcUzLwPC1AyQ4bWEzIKwIpc2CHXk+IsxlWLK7AfLWttqX8jmlCZCoh+aKotzf3DIqbw8spHZFx+lYvQL+FfCf7wW/+UWGWYWxXuAYrGvTN31VghFMWaFJJyYl4EmziCEFKE6UcBVfGHeSLHY8w+qKcnyyojLgt1iZlVybnWirhYb1PyipbNG+Z7MaWbAd4m68QvVmmLlh0SNhYwQwxDCJkuXVZkQqT7Ksmie2Ktu1W7hjtWZVhYZIslSURUDtNU31adpnV11W9Lj8ItgC2/bT0levSGts5A0K9uLrzr+oVJhgpF5tHtonjag1Vt8cS+UeWmWSxK2ZCZgcDpCXkmrRViUP9ehw2KVB1uZfaBFB9oa1oylICk0Swuv8ocUlRt00DSrs/Hp0A4Knz4Gy2j+0G2zcI7JAsiet9ncmck5BqjT6of2ZsO8Qh6BqNlv1GodX3iVTnB3Mo5DBLX9EDJKGZt6aTnizeYBK11Y9cL7ODK2+/5gI5ZKj5lMPd4cGuR+hd2yfxgAp8eFP9TAF9rcaZYtLv81w4xnfnCpe1El5/Q1yu2ksNKcGZDqAPRROykuaghswe5C7ZlzZysSC1zsw3QcltyPsPknAU1dHHp/7E94sNuRMK2wuXxw1weLP/QmUMj7EsIFyC7ltjsn+x97eXic+v4fpcF6TPLJmo5qYE38U4cjEdnSPx2Q4eMWObx/HFtoKG4rjWFnobWmdduacGmns8at2zy5yydrO24z+j+78cWeeY0lYuDq4XdVHcqYDLYWyLehCmVKhI4Zm6P08k7Qv3UmDXeq2M0viYY16B35fhW8FUsSAndX5xooiatsHDeKp7/pWmtNuPP7gzsrn1RiT9ZyQLBvRkO2ggikLf/Df2yz/ky2tRb2zaNQYaeXD3pySo50gWPyPXl3n3J7l4td3PU25ddpF3kasEPQjAYVaj0gQWs3ZsFBsc8hgEDBRtCExFH4IaOxhon+fCZX/85cZ+mt3ERRGPTkpVnldGEIipIMTCu6nzgtV1OjAN42mbPScejEXGvP+N1bBsxSGmss0PYLEbVkXbCZZWxoYZ8wHbYf9jqFyCfrO+4hxkz1Xk/4sxilQm57S0UKwr6woaHnMV9h71m+yrG8Klz08VXIzVpik2RmD9IpbemXBfBLsFnOUEmTy7ddUdqE/rSm0eJwKoHXKWhKYD69pl28RRqPACbJwgcJekpfbIPyPs0bLidE+FO0slSZAXSkg9JWNqggqgo/PrYYmVCuk8ls2IZ8JmZDPEgh2p6oZqhiPZHDabUlm7ofY8Qpc/lkjccdIk5pdvBKNo5eYGDBC+qvguQk+aLI5bk881E8RmrZGySKb3AkOFYnI9TWji0fT10pUy/HGDylyidrO1R+G2jDx6HrI221N63NCia4tepJHeEsMQJHZkyw68DvFqMy/PPOVwEhkRHMfHpt6XMowsQvZo6oVTv9dCchb7aRHPnrS65h4dF+8uT+H9b4K+mJ6Zbd+UOeH0UUXwj5xbG/qyzZ9uByQ067DDNzGI0pwf9Ny74nmTh1H3Ki71uQv1IT8kFrQ/q7WOnNdP5lHlgw9PeQn3IkvHspmtDcNlUuRMDmSfIRbI6Iob5AMzXx3w6r+f3/LFsHRs5ZDEjkjd16/SIrP8VZUpmnRa1zJAOsS1TDXHxWUJpm3AHMPVZvghkfkTKQsSHCFhceLIdEaSwSc8kT7QW3luRk3Qhg5sBg3UxCWoHG5y/TPA0umB7DCTDSikI3s9a1G3wWZniWPAcoHcVYLiwWA5EmNNGoefjv0sG4fY+LF1dJw6oTqczDF2fR2YMsJPKx8tVjxGJD2/rcMIhnZTT8+yvFIqpov8UVfLGek60p6kWGnjIg8hb8/olo4b6arw1bGAFFYq2+d3CR3zXVhSmQ6btXTgQSGEpoc4V3QBefMaYoj0ifDxZYZZQafFjK8FMw5oDslQ22EBp2QvOx/OdBg2yhGS9+xmMIoQ3h5xsZ8QOPeDVViOlx1Zb+L4yXhQF2Afp3acrXYy4EcCJU7+ifpGsILwvj9D50YTxyfDwX4dUiH0V8OFFaaRn/gVX9GHMTj8wdiI0sqlAw9fXl5FCAJF5Hb1G4ww3cUcoasJfGLKxTmOs420VUPo5VOAF0ZFoJCqLwPMw9/xyhuGjcvjOu75RGkkM3hurxQovQ4Kma7Q+AXgHJdAx6Uihlg3l2MszfB6FXMgQ9HLxCJoFY+8CkZMR6KR+W5943fOIhUBQsyAQTJzkNUkwaurqkzitK+b2ViTYZRsarxaqvdzC218bUuWgJVjwgjtk302DH1Tk4mgglorVFk0aVdVR1pgjX48JEAMngURS2/QldluKyQyta4IobjBQRtTpw6YeWScBb27OnGGwClDmILoIq6K7hFc1/qlHAnBHkfFN6tOv53zPp2X3KEDae81KdJi+FpBAzJZpiGrNmSosVp1erAYAIC4EjBgh/W+mvC3g1LlAXtxxLTTJG734GSGCsALsEOOrfuMkJ/7fCux2mEjCpQq+wZoiulk2eBTlRe3W8AWDv1dfD9/j9VeXhcKouFqG8HtJdmMxeOZPpobfeMnDn7o5nZIxoebRQff6JwOIQT8RChjZBxrRCLopwwDoyrzcASdf148P1709n2rsXWfynqrZPY5JdofC3tmaQSmM6YKVjxBLnJK3+hRIO0lfGgQMvvjJY4wRZ2E/YyA06fL6ujAnbImLav2cFmfKuEnW7D7cqxmq2NYi73d56YMzY1iKruwRJb2nWMg/Y953nS58g7J+RakLkCvS2MOiVf/pD+mDtysZftv7Ue+/RpaN3Tt4avDEycum3K+azhFfVsOyaFk0rTQz/RcC/Ci6VjjSy1+8R1gRPbkAdJPPHCf58sjwlNnJnmEumhDHHMYfP0eZoiqmLYTF5MZaiKXAwppKQsNKkPHfD/wLIRdRfiBxkRzPwLPU5Vs2uyIHV/gtH80O1SGSdOQCpLdTpEKI5MyAblv0fKDA/F2iMMqJ4Hgd+/VWNlv0XD/75LgbBCuk8ybmF/+KBH5It/R8to2+mSjzbS2WedebKWnGX8H/xaH+kXVM2Nk1Ik3CpIKSNJrlFNH9h0xR0XHTkvRnEgzVUElbo7x+WQ6OUsDS1gVMpirVtC3WZCtf+5QPjdlU1hUawxV+v38V/VZgOEnplrEsERBhzzTzWzLYmf2oCGueS0Z5H2CAXjqmvi8knenbb0XuMn+vGrMmdOF4nJMCg4N60SvkXOBB/V9IdWEUmvqFxx68Tpr7jbjU4viXpoN4JO4G7QStKOn2uC346boO8R1fLA5a8bVd0XuMzF7NWO5iUCVfVIvc4JUBiuXfezFMsNXYM3TZEjgVgfJwY+a6kkxiB/UlR7kFfpjChLrz4mxLwSFhqzHa15GA07VvZdRLCCzYb6ySKS8cTjSkg1u5Hek3LGEMjXa8EtviBGTK+iLrnfo44RIkoMr30t42EJYovP1UvsIqYHw/xJ1/WHZjCZpF4kTXDcedojVOFWuPRslB78oWF616MlOqTl6z9DUtLfr4to8zvfsZS5ENUQ869sooBorwYCOAGa/yA94BfdZRNOtadyvPbYWTqUvIMykHeYpMLH7c/iaQYlsBoQwFFVDzNkJwdeCiGY23kEPUTKhRW1GCmrwYAPPfWfBSWKUYBNPs8rvZ6iwx4UnbhKH6QdweWlaEvpz8PLozeOP60BZ234PMQPE9V0SCiF+FrSzgsHYQ/ppFNp+8KOPbXzeOi1I03to9MXXcaJW79KfAeSLUmq7sk465JFI7dyMNMi7deU/28RXhtJ5JU7mFSeO18ZOPthVKRZq2vpbX5+5mn2Qt3JnSnSKokpVvKSvckVvm3vb4MaKQb/t6YhVw03Ly7BjmdjVR5M5p0gxL05eQZUDT75FG22Ps5JqspkZnwk7AaJWovwjWqXhmJ0XOkeJeESkPMmOFVzBYxn2U5ig2mhXyHbeh7jeIdEh4xn0mQADjflpKaaRyyE1XuuuS0xzIO+oEus3Bjd9TCr+q9cNzcienJhHQSUR93TwkMeZepVH7g87MpBPHDjJCz1EAHeS6TEtc4LaOE/Z2zmKwY6KsR0QYK5YgqzXBuoapIoKjYwrBwBRChnNscN/eL4z2sQK1+6UOXn4sS3lbSjRmfHZlLNzRdq25HSkbWPzo31BqXzX69kB6lPHCNL37LvMf0WuVCeoN2ZWA4mTF4s2v2BWojAd+TUB9t+jdbome/AyVRcd86ImjFdLeCWAT5cTUqCxr3AzDBdS+FpNUwAZtGRdYq1RHkYqpcO4IaWV8sxvp1E8QokcMRebfefKaAOlSXYxugZ8Johx4JhAfOUyj52qqVHIulIWYCKvWSglykGPH0uqUu1Ys0Q5WYAgJXcp84C8UaGcpRVasbihI2yAr8h8MQfvd/KW3Has+kNVKGlzBKEP8AnHcZgWyl8/CjAMUx2j0F1czATJ6MvkBkS8SL9iM3z0G+5WwljBJcWQ9mNVAccrvaEFKXPnjjQwne9afEau7Ck65U4P5JMiGtiDDLSW6xvPAsmdC1KNskTTEK1FkAIr97pbaP1zH9dHF3aOeJXgcX/O0yyUMhMA4y0fEo2pmiAqRt4msCAqzBgHswziEW3kEbKjLhFTKOqS1iFEh42i07Q5Mc8PZ+C9Mt0YBnfegctLgNkryv1MKjQ5YWeyMhAx3kSnNMAWfqe+HgmCPBfwO0mFyGS3BvTgHIwlHEd4g52sFasJfTshep60UwNyOUpCgiQsvFf9lCpSgKvUwUnp7yVLNMmKQpaGlOkDRXDduLS5mPkTTLeZ95Ma373DQ127vxpY3v1vbs8dZW0gp0Nj2doAj+UZGvBANJ1GCpFKryqbfSOrx95mQ9qWfH7nMVHLOy5PgabhRAYdteZNTmuadsRPeuzDHFW5q4hHf7oaF2CyOHFavcD+iS28wb44LcYv2ycntTzPx3D7webkX2LrYP/NrXRzdj45at12/24t3WMRrlzcucHsc/v4+wR6NNbFSU6WwLlv01DX0p9x8+XsXwwnUa68LXULzJ7mZHClyxzJDPE72miCy96HCdOEZwX6qkrv9rt7gdW/2RfgXI34LennvZIQ9stWCKCAbrOlfRuhmbQufRPjd6gLXJbe0FTV2/1yRk2Ec+zswCiDHGdOepzKOrFH15Jr38mnd7ROnezWQ/BV4mW+NfKqVYEK5+izntQl2dwNj1puPhpqj4OjvSQVoh34z35YmFsbGuCPUVEIum3IySyKBk7GVD6SGwPhrUqsqiIDJBz707kTMq9meo9xI81/TvD+7g+LXHGq0kUIKHeEsv0nBUiMuJDMkrt+NKSeXLOoh0im+/ZCpUsW+O4bgty2MLSfwbEAaJ2O92a3qnFyT3t0eWOa6XJOTksjAPVbP5csSPKw91mi11g7BSKX62Y+CtagMn2CxExvLNhqI7eMlQp4iMh45E74BRSvlgv9RWzRENbtJk+YDefDtUeIIsUsoEfKO0TlvpaqtR5r4mTKlwMbL0GFg17ztzbQRYiAR9muGhwgmFMVZMRk1RamBsSoTHaXBGFHg2p8kN//pu+kZ5vRCbWaOWC1u3ITqNjGha1eAD8/f7qT47OjT5S3QUAc6C3T/wRkTkqRxn555vqy2Z84kRCBPnXVlKHxvTFgoRhkaE4U5j6s7xCvk8eXIsPgDeH2vtzQ99Fffs4UCj+gcfD4i67xMV1fuPvQ7XUmyW1arN0bvcZFJ9fzunoTxvANhBtn+/jJWwvNixh2U1lGwBHOj56Z5Me7812g1DWapmbVHDTwMran5YCrNu9TPZIR0QwZqlfYyEVKNoXGlDqkX2lM2ggDF/b872kdc2DqoN207C07PXr2T21ybEkmpgXtEdThnZc9xJVH9dJHq9KsY1QWKYWGMP8FoZlcnckqqYeOU90KcnHdVIHa2z2jUvagQGXDOLXslEdF2poaqxT7mG6tI5Wjg+csCWmutK9zHURWRQ/fxWIfr4cBW7Dh5fdIVcSQUWD/S0i0NQuNRPmVyqfQ/prMwMi8P653066/IE2rdvPOTB1VI6bIzcJX3ySUMs+znIhyENqzZ5m9Qs8NSqUkFgKLfM3eDeO91so7z/VPrIPGli+qdxOAwHjX/ENK01VsMTyzyujK/LuEl4eqEnJ47kk9PCKQK3ePxZQn7Kf4Y88Pru2Hnx29Bb/lY08h6z/oqoHbpUJJWJyiB8rP6qyYopd95sXg97IKKdRsZ0qisxHmJNdVunp+QT7HSZk1JYQv38qDgJtflLseyc+k6DSaXFx3Xvl3EtdOdt2HcSeqPcxy6Ma1usK0J0G+UU8ftVOm3wOl8Fs4N0miPg0NthIqp93AiKREONcoASsepkTlU2aoDx+l4vpZrmgqVT/ex2zY03eS4RavUfC7rBdV6Gt0bmenX92io00WzPV6AVsaQ1VTNxf5/KPG2wZnmGKUzzsjIrTkcb69wVChHIe4VBQDcenX33tBgqPCqN2CBmqqShFjabDQK0jjO2VmW+tnfbvY31TrQtx4yKU0oJFFtVKR8CFSd8hG1nT242S53e9TS0vGjNxC+B2Ah2Otg2r3c+bPpGCelt4ixmeZVco7U1eA05Ol9msz9d0A1Q8DpShjhmvbMne1Gf+F3jxKax4LMKW2IJMfex2r+P2AS8rXO0nDbu2BskG3P0vK/RFMToFbGnbN+B7u/S9xpZuDaTCK1cCRw/7/Gwe/E2LiaK1sumLyIslRhphOxR+3B0b5SVRtMYs/ciE8SrnMNXpICqgFPhWaZ2kyBSh6Dr/GqZtq9ZjeZyt0W4cibtEppzfHZGq24gHXXRkZKI+ybad73/p9x0y2nqBDUXOZ7ckm/rDSTu3d6VV39KsrQ+CUq6B0c74ZqHTlNdbPQJiYGGICkmr0u6k8j1yqgcVelqKMT2GjpI8nxlWLrp/Y8JrCzWMdlOAmuWyvGkJ6PswcYXM9HuzCHFxSvH8RjhDWDmRDdhOIJefWqS+j3CUqr5XBlZKQh1a6IyFM58oTXSbWvRGJ7t4MIgFc/RdNYN4ljVMDrs+PxET24gxdA6eNbIkb3tnrCjaCua0LaOppxuTWTcMaNT+Bv0pDTQ6X/XlA5e4Ihm6sXDf2s+PiqdXwpXGu32i4YqGNK0k6BKh2GHBBaLBd4E3OsOYq6o04NaRolKs6byDBLKNyoUnpIzDqWYhhnyqC7SdYvmR0CIrjsHdSyFBDUMYV54wRZgVRX0D2qZVbt9M4WVDJcIrAhfn9K+oYEkuDF+qCRbnqY/3jFlCz9cAHfPf8fGizzwJOEkUP6IIs2MvXAZh975069loTsnwWlLbrTaJwOxhlE6jJJSsJ86uzU0s2lHsm48rgwc1tFSiDcLRn1A2Iuu1ysf955PzioFppRSeS7FHaoTaq8SYj38bQwNnZUPV8nX4WJPSMN1gtAlP6w7kETa5y6Oe4KQefC3ZoBUUO8FxFCE2pymx6UZ2i4FAhVWCi8sGubiIMioaDqIiCQA1UlfHNmWoQhuxoY+3trYKtMx9AkLYA0csMQGyM6BRyA5Ti/IioC/48oIgs5riZ0SHknvJCmYjiqa7DxrcPi9DQu3ZZIEY5LAiN0NZD+nAfx1lEa15A5RpXgsemtHGMcYp1Ec5+Sn/XptQCSgNxPdFdAVCn/hUyUTPD+z/BzBIYELl0sZixyuAHbnh5bhQYfqUCkBR31F+QpWMNaBLXwnqN7b4go1Sm5W4nk0ps+MfZSp5SpER+ZCIY5R+cBqcLCwuTA26DkAC0Z4kzgToRAhxYWf9GC4EodH0XYUG1L6oWlsOdEWW7N7kraYjbNO7oqYA7QlppGwcetecHbvmdVglRQg/jgF0nNtnrgoqNSbhi5cuXd1KtfQk6OZMboZcQ7XUUcEQu5/a/nWzf5BerlDGwhjDGY9N4brUQWJDYSt/XGLjMMzhks7I5tvPpwKDatbdmlJXHfTbUmN4npmCkmRpUtkEhDtldTcXidXl0iJmEy1yWMBxftjy5t2fu7nHHV2lgVhPPv152D0Z08KlzP8G0zrS6O/K1k7+fSHdAplnOaRTQGVa9sGtV7e09UHUyl64e8QPWXSFhxmDlxmTAAs38LNWIPMc+gK5mqM/E3vs1/FVKMycntlri2lA2tH/0hOx234+b9g7R8Ndm6rBm0bFIBHMm5Z31zqRKo6o9T6fo5eC6nOnO0HyRx6DpuF0wqa/MHTr5K8w/hoDRujt1pdH21ofGT0hpMPx/HM4e1raeEX/ezPNFAlava+NrDU9AhzcGrC6gxk/AjiwPqIxCd9oJcXuMuURGzcxSdhAhojvQps2zFV7uItpTsR/MjsBkxLM6J/nzDOuBRfwwR2tXIqKDFJXHE6w4BHwmklpZt1R5vFgCZr6WDvN5dV+303EUqcJOYHTt6bkCaRCpVOlkZRuCzqJfPTfR6Btr+IU63x9qiufx4pPSx8yuitIYH9V/DsJehIquXp9TuIVr7mjUD9pGKYEnt1ci8osEn5sNaqbRqWREaz0bbGxumK9BxFeirLW7GLcHaNYJ3pp3ZYrZB/FqU30ZYBInssqwCv7LuoOI5/AQaE6+dy/2zDVT5uRaaJ2CWS5+j3DTxnQ/eVyDS3TG9r/AnkiqZ4QOIAUdKUG1fexJUfJDX1VM3hLY2/gI3Dv7SnGonBAf6Up9Yj22PtPZQevxnNP2yYXI1RJyH/Sp6mqXsqFOzlfr1fLA8nXcjvFqPpMz6hKIcgjJPTv0bEX8oleZw0nByq+7A5RaNdkoxPxBFT+7nqvoETTrlc7IYIMgW+lWqq6vEltYgOs0UW6S4veS6/RM9cOSrHUbb6rodoJ59r/O0bUvwtdMaIqcdnQZtFW/AeL9YgQwOW88pq2l3Y6HT0Pfyqc1FC0TuaOXc7bkum3dv22lEl17aE8D6X/bnI+ve1jdYK8SlX8mlEYrScIdSui9cxLUXg1EDmdhKbUIZVzs0WKlkc6gY5VTxeRvxVbPhjSqjtAzzy5DcvTOCrMj2jvMO1gqduwFQI433txbCz6bDCM0Q0MsfSJUUdgoSSCFkdsIDqwA4FAflQhy3SI1A0TJqKu1RSPVCL6/HCRC+YQ/rdpqtpMsDn3pq11ApttUHt3cMCBJGi402m/t+i4bk4mDeC3wm8dkBGaOK6FGxrATmhWq+AFegKpDaJScQ8ulxiBWWr3gR8zJ91qcX3ajmp+2zOToh5IRWikWdWWmcFUWA0c8FFRUZCo6NCwNzxPUGyMF8gqKejisrDhGIaoZNsrddTwQiML0ornHWcAO+nunAv1fDOhpPiKIH50VNRYksWvd4/iwLbqENkOs+DYzAvMT6i8ZEDIiWro+92cgyudJ51q+/drmweELCtNtoVVieeEzx8XKMFtJGt6cTTC8EVCtWED6lu/lk8Tr0Og7yjjcMVPp0XYqsbkvwfZb7eNKL/FUELwdraf2WaavFlFyre/nUKHvO2Xn+//wrf9u8BtmWDLRuw0bPzq6f1U9Bf07AEjkrwsQQm7v3+PKefW/jd5yjyOAd3x7WUo2tu1rvyHI3r2TZUIBWH0nYooyPsA8hgETUBdQpX/nxzFvE+aBQ/f8aVeZ9CMCVcL8lkhyhkX2Tiw/Z6sUT80FzO6lV79UJoBTi+DHJGUqKQKU2UgMNQIoLN39soCWkZmEWBnor0HGhZHZM6e5Xew8inDEykz8XiknlhT/8OaIAj2sategSfCv9Ha7T5sHvUgTi+1TUF805dG4aStiJg8dQsJfBZOWNmcOnzyuB8FcHwFCOvqgqRi1SVeFq7Rw6J+k1JeT4LRL3iuEN5uHQcUnTrTRgjKE91ipRVUVXJLH+c1mzMihNRfnOvxe1WDhTl+Xbz45/So5ILMdrWdh1SH8sEEZGIsIc6JVadvRwdVs2Jp7IpAWnCEsVRGvApPNrKXW0K7v+vz6kAhNbGmrHPC4hC26PHrNizhNLLvbVjiQ5QnBnTyXW0nMAxkePy0cRLg7ULwqv+4ih43objv3c4/XigmAZvvuBFtAWEdLJaS1wqFzoJ9JKI00SypTjt6cbRC8EYHAZONTBBkkQGVZhXn0YT/3VdY7sx0+L8u9wwdiuZyIQ0LHxrL3RF+UJheR4p0WgoUydTtssJySIIoySEORuYfzdWor8WdVqU5JhP2ReS5kAjSUwlrcX9dfYqyuwAzNaWv9CvS0nX9aT5/d5haUxRMBq4muZmcBYGkNX8UNewCNzLE8VETispGCDaaPHc3qcy64FBmvbrhJnmiNC4e1C15rJJ5aAK9sVV4rNUOLUjQ1BOo48bl8x/0HFLRSGnlEC3JDcW6B2zcfYsfBq5Cv/8VHvZRQ/4NI82TqLOo1iLe2WOacz2/CTyDiXgsotP92aFPPHJzUAdO/D6EbQFzAK61Qfs1die1WWlNP9Gfj04dmgcHbY2+jkKRDiBKVVDWGW8CxzfAdCjw7ee7iLy28CNmRtbN4hP95Wi/WGb10ryo7n6IF5wn4rZcvT9KSzKYI5j5t8y1eY6UfKNx1eydnwTsOlkRu/gFAUdbEt1Yov9SUB68fOLCDsLcTlcG0REhpu8VOFUMchTJZwyCrFKQWLLBvsJSTDgDXW4DS8WKi3GRpufdSwsI4w+RHbGvzKcD/7hkMXWwJqe6xPZl3eubmV34B5OymZvO9vHORt9/dBucmUkVK1abW3k8pOWOpfKQtaqI8vgOD8aRFvaWJNdUtASVzbRRntmiMntZZU4bkjduC4Cbcm0GsGEdTdjuGPUYjfGXxo/1Cqj39w1CoGw4RQNSFHGC7H2jB8FRTTUIjKJ8h4UuTtCBpdXG6XwwOyTR7FwMDGr80KrcTNjlEds1dRVsxCGYWIyaGiuBixo2Mvjgv4fp1sXPkRZG0nrAeK/Agcvs+H91i7CqdrP9UtnFeHwpdmnkndW/avYfDwAQjZWyBP80Ibdc3wyd1/bu7GqpEw4/1o+c00iWAxHAaEz9D5KtVgE48+MmZN1jx8oVFD4LdZ4ySSmqaixSnpFwja6G+5PMST+avZzkonJ1zIV9+DmvQLmRPpeq7W48yk57Vszb58P6OlEkWRwUFaWWdpwX1CaDFicFO7IWGK3fslJyxi+2oyUs60yyvtYe6eM22EWz5tm10HNHAolC0OGIMA0KOgarntQ2khuMSHH1uG2Su+X0g4BwofJZPZ0PSEqS3Q+JQWZWqfxQJH4fB/Kga+LfZ/GNbvOFb6wVp44630UBbKj+ZcUOylwThqbnwE9a8eng2TbydELbX6FL2X/EkUeevGLcQSD4+fXWL/Ncu0B0tKqy7H24vaOqCePrWVKDZbTTQO9IAbAXXI3R3zHJueKpS1PMAJ80uzVTDu5j/ClU+40wXACMk7jmLKNMI8khFYtp6Bec4HWQjyFFuuVHP2VIJJhkEyhLCe3x4puSPukqOAqid6FqVXpcARoDSjrlE0PwXj4smSeVpAU1o7+TJ/lWMA3VZeXC7dtIBKG1ySPjtE4+WWbkTF6uA9MWdAMM/cDAvbS0tz0vEiYujrZJRK4sstusjxgAnWRa3z+KlWurCkKv2P7IiGl48LJCpc7cy7HPjjHeX1UKj8Vq+/4MR37WqbyyJlwnDMjfEaVhgc0sJf/RcSZLUmFBlonoTYKQ6oqTI0pvopZwQ4gvzqtxJMmU3LYw/bTYFMJSccRETR8pYicAqWipT1BFLrBubCWmdB67TgJaBkg9/NknCRV6MT3uwyWAxMSj+lqC+ocqphZNb95uVoR0oX+eHrNw/VOVNXjCBtKCYnOaTjVPrrRREXA+j0mmrwDroCM3YbuzrQPsYHFCbkPSCOySNO6BJ5xsDuL1ad3w+VDbufSEScfMJZPSVuf1ObKfg3YqFiTl/C3J56flWfRi+QYHTW1s8i+SBbq+WRtAm4Fe61LpVyN4aLUfJSZpPyAmUGZM83iB9IwrjsOkFmszKR41RlCYgv7CRTGuHQv1VyeNQMHtYNsNEy8PNN92v21u0YUzRYrwzX9BlxQFy+VzrkXQmzQNrJjU5MTzDgR6/aP5rVCGp1WMm4+ir7bym002Jk0HBa8Z6mheTB/cQF2N9aa6eG740rNziFzHiQNWqCMcaBdVJknraxJwUIcV52RAoEQSMc5B2/tIw3w10RtVVtHOY0a83asE10uo+tOnWcIJ+EzBWwYctXSA6SasOMdVvRSBIFosS/iE7khWdCzw94tKQGjgKZF0edCgznbRWcfWaadqsz4uZozq39nsJcoOP6FGwNTQp6xOW6JR5vZt13sAS8dSO88o6bX/2R/U0fyH17j4htXOttKXLPLxRRGhCRRV6GyccVcNIObbby/XiERC4aSwKcig5wWFKPqns9ZCxsgYLzCzN37PWNsydUHnkS4IQV9cFyrPOs3UWGPYiB468T/za5jwbW6OLKvTE+lp7N2BplbetlKrU0uvF/xoXLlvJSa4r8hULeVGMNlGrTOrAUexPWcYl47U4TAqJIY5RutoxyFaPMhesCaY/PBGsLT/cTdyglpfqEDzKuax4DjQx3VXWyG60Ti+3rU9jZWWFjkaH/klMrXjjj7rzcScUicXtDHJVLTsH+JhQ86xEP3HSiUf3NsW67a9mzVMjsSHSLTcsyMzI7XlyWm2lc4PS45kP44SbbHN4mJOika5V+YQS0rJJk6eePcZ+gHlolvN88EwEUPoHEikr9vdkPAtnhSbCagiezNgiXHoBbWRuJCGVrRYxVThPS4rahmoOrzMshJhO2N4BBVUfuWMFGk1o3r6QihvyR11SpRy4tDQdINn6/yNRMqxs67PgGM/+vmjuNcirc69R0T+TLIoSeloN9WLd4kp0kyDD0gS/m2xl3BKgZQKo0KvFLiqPia5fmPS4aoAbSaZRbfWyi0iLZqqb3e8ru7K+5FZV9dA217esZNKu1dIIaZGFrTl4aIGYY0V/2rD9F39RCzXsSK92TyWb5tofuwmU7q5z2TJqlyhT6KR8dSA/MrZaSeuX59TFh/Il3oIwEWFy21rS/l7sCvi+8IP+6Wl4uUQ4wmYXI8N3gTX5kxzvzhrUrfKzEGoFeG3XvWhRSfbj0thBPvbaNJLXnijEJHH4/kiUIXPfeBFRMHqndnpvYmph/Hy/GiS1VnEJNe0NpHfE3Njp+KjI9jvvZf33Ux1YgMosPxdwGm9NVU44/ccoQ94kz1RZ2KovZy2HNmiKExW82EIFUz31+OC5tC78tsRODE6dl9iRxzH51eoN7j9RY9RXaYLjMnJUJnbEc5QckMCAYz+lGQ37bXBRvcFjMX0RcFM5KzXFJz43q2FCN4GajKodDPz5V0eT0kYkyi9HogGGIsN+nt+8YSkW6A3ympVS1Vp4rzqX1u8AVXtuAoMxTqeqzgk011hW2cYRhavkm8FqmJA1QE4yfn3SPZo3ixWJD/ExjsIGDUoo/sEGuBAS7vs+EDik53OO4fDe1skUFWaFLxY7BXKfnOHl3f507rOzgeMlnfdeLW9MgJf3nznGJ/f/wxwzuDdPtmbyA0y1EECXClNEhwvEpv7ix6Vg9/nqqnb+FLn55kDfBz3+bjj/0jLQowIWDglSz32ZEBaJTNDb+lmG0pn6HJBdJadZTH3OvzzVZopleV+kPDKTP9HGpa7eiJ3fcUrB9Y3q6LaTctz9d1d4RjWSbhz97JppHXx99TxCAyfp5HEj/UdkD1wUox2khGgJXyevPH+64La5RVn8xRmGxSHxxrf+tZDfYzyBRw5EdZWZHDVOOA7TvCcnVXTFElziLEwVXnzNp/fOm0MbLs6hOQdKtdAdqSFSm+MtpxFMj5Nl8Q+t0jnnixbu1ritaUEmpO7SY+dLemiCetiwMc8IHFGG84GDySqweNKqKIgjkTb3fdQ1bKl6uCNXzIEt+QCXvHeOXz74N1KrnZNwbxnhk8sYo8x/5gxGekH8k9KDvD85Eltlcb6ELxFhQauUdTgVBrTg+kGkjIHjeKQNjHIhDl+oeu58EoPLNBjczs96ot2wGnsfoBmBJECPavTNPtmbXy/HqtiPYJ1pdROZvozFAnX9Bn7z4+FYkb98gaAiGHED5cw3KCEop0wN52i7+6SlmfKA+qMNNs7FTi7lZlW+JbXOdC+xXZh24M7Tk2SrviHdQOSHV81ez3BECk3BFGAt2aIN2VMkfuaQDHmbcdFjzFIlw6zYH26aBtui4NStpGVFhme8/yi3ktY9Pa3gQhpSXu4Mz1EFHMLlrP6rV5NhyS8fGKRtiOIe/I4omNQP4cSKXcCLCqBVNlKZgs54EOLSiZnJZdWEt2zFXGImPwFnVcU/Kmg7chGukFk3YyCWXOiTuB98W/N1nY0/9JLbxN0nKirjmoGTFmwDXm2YClSXTruFT8sOvUiRFqZQVx5iF16FQ2P0ax8YguAmHCObsLuaHTH5Ylw0tnWXslETwQ2UOD2b1jkJ9Pl+3FYpbfG0Iuqw5tw9RMHz1CTHjbFLVjOLAlUE/cP+Pf6nLHSV9ADudFZxOd7SOmaYoW7yYjKB5ZCTh9ATOC1F1XDId8DFmITcoYZSrjS0M6ktkSOBm9psOhwxmKmS0t0/acwqRhoCSH81A7X8rz5k5TjcqmtHYBj34uyNiAKCXeAJqOQfFbY/PP7vxgzQx9xqvDyfNW6wgreH1XEUuKCrGCQ16PatShaTTugHpi60+3Z9VGy7KoQH9oWAn2RlhhAv4d+pDsgNkgMwZ6nFNK2iTl5UfyMoqDOcUU5/M5svAIGbDzFimhSl0Pw5rbV9V9ryppQTNA8WtSr0DATRc1lW8lqhOeEiHOVFPjMpRqp/wffwlWfBJhFX7IzdBO+1avQpOyxk8i4sX/xuWQCN2T8wNRKrH/AIHZy98hBAb3I8nZuw1d25uQSybvFA4/mulvPxWrcwyOthNo+KAuv7LVjRfrB8z/kgtBeHiCxuvkjZBdaPmZwVBbsyQsMLx3oZ18ei/k3diKL+v4QV2I9rHjdV/XK4bCiMd6591nUEjSU9sia3HpjimvoH3sCFie8OyQRSG4xwwIMw585OTYQ5ZRzoViXnIRLMbsHn0c01llfkfv9VIgk/mfxw5nDRvzqKsv3ppDeOMdAOhnOaNo0F8UhZTWuNJtF8YpBhVU+qWkQvWehFU5sB6vtKEshX22KEGBzmBBAtlG6CgoWWIfU+QIE36mp15wQKMSE4LyJF8yDCgxT5i8PbG8G1X3pNf0NElKHxKHOARIv2CnvsLUJb99bpCHJRp4jYwGjUStZX/x2aQBjGQS+aSjZoqRIh4nC72/K/7sqJNYXzZiUraMDPIbf2qYg09TVWGH4uFKwpr+uWSdw2Js1K9yj/W+81cZ/VzYCm7mWjzyMkfDlGVOKR7+dUbOeYXtYOlP1G/Hnc1cDKbE5wIP+u/9t3+5oNr8ZgztXoVYktFYxEctaurBCtnzUXrN1CbznI35+MUsfvMuE88pwuIZtshoXpJo3RXWNZiUjMJgxiysT9b5lFLFx4enF5KFoM5m07DIuyRqfSKlptffCl2SA6bTgd2iw2WnLPW7+uU96ItkwPzZtjMLU8yimDflXjZ96Tk5PhwHObxonYxMMiUbR7QV2qOnBlSV4HWJxgzFZAxvOJPaVcluzbeYPzdvdHMCuw2FRIF6QluhbF0mzscd4yaxJ/3vSFcl9/gjVZ61VKS69awSfN32uviTZzG2Wx5j9z79iOHOrwQ4SyrX3pyLlBrIo2bdagDiyMBwN/pqePcgjlTkEljqDSp0JCqn35Z6uc5zvt59l/Z8EmYiezA90+TYXjBllZQWc7vMQsaZbmb+gPeBaDuQnmxt0w3DjTFiMiOlHFGzxuKUZyt6Z8SyLxwk7lCKN7viXZy/9Js/hOwW8Kr74y9bmqlSIZ6uLTIOVuvEzh2BKHWYUoLl2mTdRLDKSDLhBL+YqGZwg4ym8DT2p8bUIfGHrdsliXXd4sH4yqoJnYXdTZkTVhiIbwLnHPqKau9fLlBe2EXzndnaRt7PYPGUWWk+K/KZeCxNRFMB6T7fU3i+HkEKZ77pSA2rz8SUK/6dWplQ8H3hPu0JtE9WtHeJJ1b2dsvG7JZGM7kqkH8Tg/jFu9vyYeJUyWwMC1J/sLbJGtFahdRtBxBT5+TPsx//silG/n2+xmmsvnPaB+b4tS7Xk6RwaeL04n3q8dO+sKnRhOIJf35aqtcmLnjDUXpORdGPTLgT8bIaghHkYuTb3s8kC38hhcTvrNbQSGRrlt1jKN5djkW1OIkLgmh/cZN7WZp7L2DEg0AtLK61FzmeOusgauricw2o35csDXmKq1rQiEMyFRndHpgw9bt+5wO9HKcmBceyry0jJyvdvU2Xn6xMlN6TBDsf/fzPE1ckGYED+fsIG+fH8b3xjlHXYT0SSo9qR2MsdeV5WMj7nIe7K4PhF/+IM7UvZdUxDK+N8aGZbfKEboTrYg3EH25UpR2s1A0YFh/wWL9hAuFdvH0uzESXRZYPTczwwl38yPrJS4PssQ/fPfAv+w6Z1Kw7ExtX3JWMzkYA/n8tyDcASdMB+3n7nZForS5XWM06hgG7RQG3ldX0mt1+/RfzFGSDOlebcJ084kb1MqZKidu1CkGt9pBUQuwb35niYZnMssw4sXybuHSYsHN7n2Hx5pOQjIDUTLK9x6XnzITGjPkjlhdkCZM3rEhM33Ri/rZo1jjcWInSNi7ijVmwyrDJxLoq6b4viwIqqv1b6bWEaOta6tXzjWEfLQIz1ylK4XWUBSg5SrT6+xNLSOCvjebn67XwT3iO/y6/z7D/bjrGljZnNV8EnRdYlvCbdNmZEAOfGUvWN9dXhhO7O0BkYZHZRACNVbmEw8sjsVd9DGcVSUU+Mh7Pim+86RNO4qxFFX4w85hNhh5PnrHhHEixJZthpWg1aru1N2p8mI1UrDZ5/IACBihjsh3PMiGCDjGroCuECxZV1yONcMrbFHNQ64kTzUsW2GEk5bICTmm0SxDPwSidUQQm5sN7V6fKhxM20PToaQ1/yLvfpZho0uDWJVcVHP1CbA3vBC2mP5XdoQpJ9+wi8a7GmyZP8+cLHqqLdW6z5r72/P28+xxLA+jeBtRsLdP52BMVvefrE4u89/WYK2nb80MnWjClmEMGCHsf+aO7YQrLMMNJh/vMBZs+495JZBh1bJ9D57E0WTgJHOS0syAKs05D5Zr7cEFLqVxyPRAN4kIoioEUBvkc9HTaI2mfuqxF7FHxUw7bxnlxuzMi31ZNo2C9BNv9/in21hOImuXIwDB7CqRa5zoOq+Mp7W/sQYZhHz+iBZsYuNXL+4pq3ckKcamFGRKIMGf3sAtUaomsCbkZk10NKrg8hZ3oYh9HP67Lp9IW24ifEfJo3Hs0YesaTXnbWUTCgia0ukR9gjb0udlzfdm0mDz2b5LUJlAKniS1R3j4BTj/UIUedMI0yFH3d85SburdUkkfPyaVUQhLp6B8hN61ZM4gTNgnJZY8aYFoCdJRINbCKetiNiml+HwH2EBwKMZuaNBZUUccgSsFxwXG2UVHbv1UlMT3jLr1N1v3LY/xT3eZ2r93p/dRHb6DY+8STrHvXwwCWBQZWzNk88V7LMYFeztDqXXmo5Z3jozt44reMMjzAz28HyB7Kc/0kuhnpwgPvP641Ovuf29EQbojxOK1pCKSYFVDVA7z2OJbxUaKrK5RrhkxpZyhLfzjFA5Zjv7SemZbUmiBmoyW5dHk1g7G9MpXWCB2e7aS83sUFxP0YuZI4TrhFRtIfoNzTE1wD+8DMz7UYyKJO8oL5NpPKlyTeaVJYhNYtSIJpA3aiEgOwF3zAfC6OnSa0iiZlShpHcAuaSmsr+EejlOImV8VwyELuVGMX9cWSTyLVjlAC6gPQjzU0iLXgeHj67wWP0u9D2VC5DE3puidNPet5c/bjGKDFSbfX8czwS3Q2nqABh0vpxtvtuxVkh4mJoP5fjopBrl/m1yEUVBjmzPlJ4AbIhkcZD+hobvOHUocbzYmHiYZlp2GllZJYRB+rMfcc/1lC18qhjKAJZX1mPlDDzjcimEdw3XQs2ih5VW+HZ+GtQPLbhsx5S2hg9VTSUi+phN9mVWVBpcRiagHSsW0kwZkQTs4Vn2E3PhQINyT4o0M4oWzpMd04rFHEvCRiEvkbFS8snOFslj14qgI2UWpWsx7/f/MLtZQYjpWQ07qnug1e/pbfgw93gNIV/n6dEa5jBdXXaR1T7ZWMh85HOM093QXQ8fxJisadc3YSkZF/nFsW+/UPlON5Z9ytKQwuud9YoHC/jRaPDCyYE3Eqzuhfy3FuDMlllRxwpZvP14wH7m3vrS1OuuDYYPNRog3WKt8STUuqVJhNdSvNXN7KSM/J9x0R7b5W0y7XldOaNp4jzoUDg1jW7J56Pp8lE/36jB/C8WtfKc6aoHBoVgu7vLkyz+ovibeH6kG6UzfjdbNIHIobkOZWY4cz1LsqOQQAhHjeywxF6jczLK+3F0vVsEEVu/xfP+Ff0TcPaIRWTGj83FKAhLh7I6PYMyd+ZjfcwPgQYwN2BEWraBr+UV2g+OLEDjxQJ39i2ibZV8cx4j5vymvh556zl91y5wo++AfCrKqqTuzR7cofA5BDFfXdXFUG/qkpHG3GtySFweENPi1dwdkYWvbNkA9wL0ce1lmnaSzGKGXI9eBUxJdlU31mA9iKbnrG7UWfm/FCTIrgQ8dJ59WtDtVI3H8Oq76cyqxEoX2cR2pD16P+QUPQtUCEHBIgh5NvTfcL9f17gw4S/nC8A5owpNiDMqGD/7CJwSTXNO7nn71K0T+Nd53TMLrxYZD23spMTik55bvbRczda6e3XxSiDKsen2T9Z1Ooi0wU3I8vhUlPlw3dOKPMaec/l6IRJRV3TP1SETOxQlbWRsY9C7iN3fjJzgeITvLzDmNHP6XiKIDxs3SzApRJHnYTvYS6eyDvwxpJGr8xryv2tVROD1N7tG0mC8J/wONL5/8j1GnZ7RLlgYfxcPiDiNlLtRUOvoo3BDDcfuiwcMAFI81Po3eiPCQjLg3DXIOE8BlRWwwHLrYbJOHtqdgfrsCRoN8itPvs9O93DiMi9YszGSKAz51VmAVL5BPRnrMT2NX+M0u7qXk7/Gfs0f9XkBXyif2TpGXgzyqF8zkm+tS0N+4U+K1KyvigQkdrPkBmVbHOW4Qxszvglsw8RudcJEnnYw50VEl1Zne8h5FEC9h3mrZsDDKrjb6BUPTexLaziQVS8mjOTdx5V5qWROZLV1MqrD0XkhHh0U8qv5+bSpNLoX1Kf0ZeVTzFgISTTlbNmzMYfnzqgkCiRbVKRpRWZRpj3nez9jdfonwenRu5lvDaKfWkKD4E9e7QFGoyj5/gnabacEMvFeC28OSbLtFIqZV++QQTbV6B/qAZGhdjP5H3+aUzp4iinDdR63glvF4UhAX/+9fufIGlQ7rVPHFy2aRoR09JnE5du5hHx8TrIQmdczVPiGcObGvqgjEldL+saIOgamixV2JRIipDu/M42QH64DIZaiU2xrkEn8ILBkNYdK+nJJtXOZecgB+KPZ9p2ZKDcE+DGytvEWXsXz01zBX15rardMeSuyW72IwHX5f0Q7BySOvGKmApyODqXGc8MQPxLSe1Px5sRUz66755EP+weMS83Muk6aGsZunzB/1dAf1irH/tTVGlXBUuRvLk2/FDA47+yTq5+ElouMTTjD1eHgX8ahe4eLWb7VPiJeFZ6Nj2gy+4vLfzF/ZjDo/uCZs3VRj4kcOi0Xw5R/qmPBgSsV8Ep7z4SuIjZnVp3iwhYlIkf+7fo0G8EnP6pLVY61ONuZ+wCtQiKw6topOtzMU4XrREbSZoKrCs8wyXAu6K+jQiRM9YPs7u6KzATqDE5WthpFHisW4U9/PP1lhUe8XGXdn08+VKsbJwY0H/dwUgJnwrKx8WrwcecK694joFzGLyH+29tXoaqB9ivigU3Eb5h8x6FNOa2QenIdZlCbbAGSwLoNRZXTeA05Ccrxc0FGO8/4iaOYMi/8hkIZh/72n7qEd1gd1udp7nU1pOUyxHN8bipM7xwjr/hlk72VNd1W5dr+Cy4t3un7hOcT13tndhthU1bPhZWHWPZcRdygceQPIaWuBF4zqu4sSdpc1DTm9j6uiPJLCstaDuywkEx7HsrFEBFSMWfoLM6mjYdkmWsjMG46hr2wQrjAR0+vHerPMoHPOp1SfMh4oGH+EWFPhEr9EL4ZE3wGLzvwDkTaxyLNrNVS4yagxzzRCG8JhgsMz4ul1d5RRaWmlddX5DPM6rckEjypJROjaIf+0oz4NbANb10Ru95hecVn4k5nS0GpgA1u8n/ygFPN9h49TJFYj63jyzNQ+mkqNlxVYTHTAmMzbfbsNDvbQxZKM4I1Jq5RI5AYkt+zl9txTQOzxLcIo3zBneTsaFvEa8LrmZIn0d5TL8lRDjkbFLIu5CMXyCfaSXmJBSbQOIYYZ3YJ46z3cUPdoVhQOS9jGGv3Zz7v66+5hEl4RsazoxkDnyZQgHOxS5cI8YyCZeSETD0J+0KdJpeMlORJ291MtLTe4HZz14E8pamd4J1ujigXuB4MiYfkfpcL9t8+5n0kpTgsQRznRjeAKIxjKo6XhH0tPeTNvOp9AioTSWVNjs06vX/i8+/Cue+8EzvWvTgTjLHaIsxcOqYxx1uEXXkVLB7VuDPIH0ZK7qj8VYF785SzNlkbw0BD3SdwvSvtfy+gJD2MBJBxTVtZ+NlGYt9K8nvFoxdUSpo80jf5+HNWDacfs0hC917xUZSSFYXaZTaHiqchVIMAsMFEIiIp9TiSeqdaHTUp8ip2t7GWM3ticzTM/B3FsmDmvRpdz7mvGT2MzCa/4djFmoxUbt7NNnv3X+enjaWSUh5kXEJnz05Ss4qRjCeXGo1M2ivLzbi/yfF3LG0KBnnyRD1k4ybIsA5E5ybIsyzIEoUiyLMsyW8Lcth16y7t5rixPHSkqyzDSS0cSBDjHSe6ANiAqPM/ekSQRUdJyHi9JIjyHV5t9l3t7tWINI4jODMuSZUtIEVvMwH4y4ygElJZ64H6mI/64/9x5LQmKfzgPDlWCZ4GVcyVGUSNjcDU0hDnqMViBqYfEhwjXLlcmeWm8iDGP/VxDGkPdKI84ydG3NqKiFj0eoyAr0YrxfSDUNMgmIorLUaq3ptv3T8KEciIOMwN69bVJVylC36YrYb0M8hmbvgCIvSDbDqQQPE3R4t+iA+m8wRSOt5l83thnuoEVnyQt00szx6mJSlNOmeocGBqGUR8rN2zGO11W6DEFmTiXVFvraljPVluwumBBv4mb7kRehGsi7de4iAw0Eh50CTJs8cskbvch0LZHkSTdqsZ7tPOkhwsglYsmM/848dzfnb5cWWKD9h+Ndb9CLm/EI0XPS3ShEEOU7z8rkE2uviQOZzQQg+iMxePQEQSWsAkaCPxugQsdLn6kKN04tF581476m+IgdeHJLS0urgX62wsKH0Ed2mwYYi6zaQVfWaw5CAi2sDU2u+12tHzgtwnDLY4SB83w/uFpeJZEoyvuyTwCUiIgj21jA0aSBD14v8kXOHV8sMOa1Y5YRrg7s4p4Dl9ImzC7ZqWVUbOEODgPiJhOXjGP8QXCQmIP1R3nZw8ZwdI7CAZXIQAcs+iHkRSs8C8pBUWdVYhViV71v/WVsyi/tgTbQm25JKfgbtkSsxmuEMrLPHgU7SgyuH+EvRdTtW9BAkF+emG5M06ZjWa1o9ggzjiYpm+MCM5OhPnrSjbZ7A6Zk9wLMxMIicaSw3cYF74VndGl7Ac+vKHsdVU0ghDYsKs3WOe0LabRp36yDSEJg4KYRoXIc7MpQ2hYhJnhL9jnkJP8W609Nzgy9+BrYRpjZ2gaLIQqSjSduPJZ5JAxXvCd6yAtqxvjkANxT6wk3QAciIU72+8aey8TQSUw0pypGaMeY1HsVftMSr4ZkbPI+dqOInf914j9Ge4l/FmhPWo4CyLb7/9B+3csbEFaW/k9ISnNKxznsumDm5ENI4M4Oa+SDtGzth7MT3/AKhpYReTzV9Cj+NFvkVzeVpsMXHQFkRC7KHeUI9J1wdAOZ4gryIUTAkgmW8VVUQYpuvT2OhvtpgnywZohRo6oXqumE/6nrSfYv8emwX2lmeK/6qLClJHmx0SrC6bjld3acHYoT6bHRUWKy0Y7jqC0a4o+efZjHYTf/F1GR2+FoBurZgSz4Zaajhv7jEByCFoFZDDBurDemivuRWIIHUNsu0GxaqmKfD+FjGzcSY66nVgmGu1m+7uA+PvQLgnYLkllvZIuJsZS6s1S0UzbtXfmVNZJZ1uU6TeJxaxeKOfsVKxixhncxTfq51FUJQB/L+4NixJXrAqfvcilxkQiWaYNHCinXt0euXEk89CM8aXwkTeIRbAnTwr8K0eYAqB/FI5jjxgWk5tbaILzlkacMFXixIRQpDIUp6FrC6+aMYqT5oFMq5jwAX9UdQSSs43XvR28gQvfnPYpacdn1bMWvo6PRXihuvE8zFPR09K/uPhO5Bverm1VpmvOcHmjGSdmKHfFYpm8fL8Ig/n7fgX8Eg6sapIe422AHtRTppGoyCODDxIU8ZgDjD9f0wpursTNfI/f6S8KyUxcajGcU03losxkypH3/guFIiJfD2P1WShLKqY+/3ra+qVoSuJIgAoMiZqiTDYsBXVKZl7MRaE2ZM1Ml+2FFDxngo5LZ09gIi/+mGINH7M4TFezasNTn5aqlCGYuEQffkfbyKCoX2UEJ9SB6Ap0KLuD5Sf6b/tearFA4q0Iq8JjF9fikyMXq/j3nYeuh6KB55VGbyZt7rZi9YpvX+n5xxaCfLTCFLKOsdNa6qpOONdWTCmWCqwBhShXS41tyqt+vOA27WxivM6mkS6dTiJU4P4cbiO+hx38wpRu8K4VaclpvgdhDaAx19/ptyWTupXSItbI3/PzqxIbJ4ZQ43vkMf+aaozdStkAJs/qUimbnB/i6n5gyL4tZSH8E1/FC3QhSEcJEEgUrm2aY3wdefyKt0f+7tVH8NEAHw8XoHeByexTsYfbHU6eiitTV9rPIcR96UBdc3xQnCGS43VwKbAutXL5w9PMN0lnj7jubl42woC2pV1ONxYbj0lSvOypg+e0L37UaCMRNFV85qTWkJ7BlbYmo3PmPcb4JLG+4bldbKiGTm1o8j1Jt6HYRvROLrDYvTblMKOWkyb+GlZ/5jo1PUA8f4HWuVu+VHpkZfzZu70T0ewaTprcASxpHcKTHPSp+CgycN3Z1nXVkG8GJB9CwOYv+JB2HMUEZcN1GNcDTB4HHNM8lU2hUOsbKpGFdMNYjpSVge3sDMZCkvX/hogUld8RfG7IQ0FIYvZ3mh7sohaCeGFOHBWR45Xqb/WyfBiLjdukgffOH64ck4RriGwGHqoT4ug+ROx++ZSx7ViJjortKlVfmuX4ohOmpylqirZtivpy1XZz92j+rs8NGdtgwE6vPz52ubmjwknxNT+H1eaQNvk5UhMA/Zz5sQn2IFVmaZ7d28VXFP+kQMKD0V0DGdNwLXe50nybpHPkZIcdCys218yPBpmSw8TN9F09O1jqZMrdTy0YSKXSI8QEyJeTdJm0hL2ofIdeCQ1qqcWwcdoOfBDg1KuTOvvR1nPmUNK15wOnaZW7F/GYB2t4zLNUENUlk/IPvWVFS/a+2WAvTxIeScF7e4v3kWrEURgJpFz0mBcVcWy+weJ806b4Lc1skILuTUSfnYoFwuNNQZ0Wi3QvgNRqpFdeZxt1r5YGWmfvAQfSdWVVvFSWmYCV34FtJojvkIgl/EpGkN4dxoBAMOZ6+vlfaAvxWUqdHKU1yHUtK26v9sIUkRNXVIo0DcAsE3cTuZ0MOIsbQoIRckboHMN7RPFX+UelgE6C39dee0RGaa4nNsenrfKFxmsKbfbliUvYMixL/DmFxINUAOj32Gu6yReV9xic0ISS3h12nR4OO9wNc3e05GGoBLszZXqcst9dv7xOM6XrE/AsjuI6GyBKmxTdkjRAGiZyGoilSKFkvGATKX6856AjLpNk9iVrdUuwFit2o4Mitos7hqchO9Zy+wtR6eaow5QJ5nk/SZPwGPcu02oWILypb2nBlRI6oYBVNNHIRpuNiM5eVmU2c92SOVITCm1khUlgqUVu5Omv4XT8vg0dfdzENNcIjl/TrnH7J3e7nEzHADNHWZGtNk/0IiD7t6TfE63Ao25CZ9Q8ONgOvPR8s7Zp+Iy4JKZN/3AyQN98Ww4MjTpHpbuv1/RntOTe0cgDjp6Jp9OhgxASIWKi4tRsMuH4I3Tl4YPMj7eO1QiQgCv+mMhZwC2t25hpwJLbpqKveO/ryxlUu8OJ6Wl3l+Ir1O1e8sxfUWBUIQh4qZgJuOeKJYalJ25/feZ899p0c/4tkUYCAp85B+uiFO6U7RdeJPhDJD87dZEC75I8+Z7KdafDKNPh0UWOakmrWNzscgMEhwGqUcN6ayPhDg8UgMTRs/mWNGnQdqulbVOm94zSLjCjJU3reSqw1BrXbJ8OkFM9IeKwQ6A+WjdFYIQu7ZChp37+qXxsTH+aCgCWLZ5k71tDfovfJWwNY0gdQ8lSeQEiXBOGVEhRMNcFzzU7ugpOjWmB5/0q+Nq6n/UCMi+lSe9tq3hZEBr5GkQfV3iLJth4ftR0uWBr8VL6nayWHpyXXfh1XnYKHqR48E/ZhZY3oWkXLgqo/AwQdcE0HRdSSN7agKk9Urc7NHvPr/0kNyMKZSqaWo1Moch4OM3p+j0PFUYr8Yy6dsDIE/to6H4A+qmqgF0wDnRcuHdGoKstQjF71+/9XHpnyn4emorYqD4G1LdGofECrEyAEm7wagaSp9RjqSPsRx2vAyqQzLRI8H3DyN5x2kod6Xz4nF7Tyh7aoVb1nKxsMClunPSDO/WmMvgURtKIX7x6i8h9brCaYhWtY3a5AVsZb1Cw76UEPkiYu94I32iYvdI7J+5fegYsBX8s0Odj8uXScUpQsDDeopKOO41SRkmADgWg6xUMx1/m+PtnTQbemHQS+TduqiPOCBK+sbtx+TkYsBM2+ik35ZRvvVHLet6CxnHXE3MMz29LT0V2ca04cIqQ/5b44Mj/YgOW3cPTnqutSeFPvNEyOD5vY6nr83LOZyxiflekBrxPxBpwVV6o7Wef/hjLN85Y3KT83L44Zr0jxTWoBFOykOjCNoknJ4al8rdDgT0YG3swe9vgmAGGeRhpjKDkBb8XBpMlqFvqvyYqXj/zGRUH2eko7WKXyjZkdrddm0xTcQ/qJGXOa/JbZy+LdbrSY/lpIL3Onk27XZ+Crv1+JMxhDq/8WxaG2AZsenO4TX+eQ8m56PJNHHMZzjXpp3NpKJ/IVXSpF9fewz5cZO7s0IdLasUmgFfXMaDw1UTtw+W47/K4KV37r094VY9lrcF/EigpP4DI/DXsrVzTAcxnsolsk3madoJ9jnhx/oHNjXzCdbDoyneSHxPUyFMSDnVLr/hc0vLENwc4q0pc6E9HEe2RncO0/+0WNvB2IDlLJE6/E+6ZD9eeStMTMwsN61ZFDeXOf67At8r/mS0jw2FINxdRlQJnxaAbX3q11RVM6+UTRi0mCtzNCMtw2lTSgpUrnQv7KsOBIrFHj1jLTaS9jluu1dsW2Fhhd6Hq+GzYFD0Lt/TuAm3TxsK0GV0ZGwGJim/gFUvdCw580sHI7gVJsVD7O2nHAPcD3TCg4jPzsC+LkZiFbH+LVJG8D4pLlO/XYWmaJMO+xjZWl6zuQ5rENo14HbT/+88IchtvgwPJLAYqtQ3Ex6TE1Mapm2RDWwugZV3vKJisA2+1j+YWYmFf69sKVCHU0Obnk590cjMWXSibFTvvFQ7v9Z10hCD9O0L6cn1/K5y63ZmgiK1mwYtiYRTIDdGApuvkQYZt/qTOUzg0llDl1sQbErbQ+pTIxnJAWXkF6djawJLOeV7CxlGIt3LBoelwd7jtHcgGBnDeLg0OwqhMh+cOw943SuzJuo7E0t4jI34SVBtyybY1RReSNT/K2RqaEUQdiCoXS9QzozQg7MZ+S19hCF7eChzEne4RGHmXm6U23/kQJR6QXYF1UCPEGlPE1Lt9ub44s7ZqeikdNmCVb/c93GcBnjit6t+kmCLwdUPmT24GM7VFJCDhWATb9XIsW3E68nH8fY2oEf2V795FyiMwpTQ2InF8UWjiz6SnQ15oxIN23r2W2AwM/5+ePIwjeHLJLd3KOQZT+TK3QcivizMSOyBczEsgr75/ORK3UeYS38wmK10vlZqIFy7dk7yWsnxesf3WUyM8azoz8Fn/KCHBtG7TIqPgdohIXmaZSzBI0W+3AYggBnJ88iKQoZw0rHS7knFbFnndTd5lMEzNASfFwfRAdaab4NdoeZAKYQcJJsQmFf+vIda9mUEuZn6qx6qKC8UKWguC9RlkjMI+jEB/3RozD6mj4zWJl56QOXQasQmhR4p33PkC8ouO6QfZ7PE4103+woiaVT86wcIjKLi2XuAKTFZs1ZNw0eZJsljSn6G2ibpn6e106KUbdksgXdeRctf3Qinp9EqxD2O2eFEsY/nyjMr0bhHtLpSJCboqDkymx+HexSaNPXefAJqLMQO9NtMw+vpXxSR2czhnYbbokOJ5cEM/IysgGV7HUexx4lwFu3aTSmD+ADx6SEP+la7XXaKvlGjCilCZsQvruo/23iAufIruxCKsUNDwUhxu4P7yD8c8oEEDR7Tv3OdX47It5bX0Bb8/Zm4d0ttnj6bfmGlEnEpzVBNbUjjOlD9plHTC2DVA6VhU2EBjCYNpYaBiApihPBPn3+yc46OxOO0f/zth5+waWQ+RB9uB1DmHUrytxAK43Tvu25T1JPEtm/Mmo0i2D6A81XSkd4A8lttoUAq6ozi+KNsP6M+wEzEW368uzvJijSkyZ82ZDP0NoldsFkhKgvymr9l+feO4LzlAU4oJLr0KsZLp6TuzE3Fb5ehRYHoSjA9n0zcp598CjZJ7JRYJ6GSJ7ZX7ctwHmwRF6bbGk+YQmWEF8PMUzAboWVQYG79SI+40auTYKIx2Hctt3AytGYSRkBKPWCBsZpscHAjZcI6owfoZnkzEpCkpazBDtq1vQRe6n0WA1xOX2jDeYmdRbn9xLkH2v7C+bZiPNoKDOktYmy+CTGpNOnuhl20W1/Hw7lx6+3mhHS/nUObE1ds/Iwrl+Mj/46F4Scs88q+j9JG60SZzzcb2YrF/vopN9+Xj9+P/NKRdTBe8vGNGq9lZ6wLNpc5ZsCUoUy1FSLDU5Z4GH7Y9gAW2cpqzskQa6r4V6kBjhqghZGGhLHIRBR85oeFcHfbk2Ppd8cWQjYPbmHA0cMYIS9NLod5+9ielz1WkIPuQtjzVH19ghxD3yUk/LLGmeezBTrCNQ1GpaRuLVphJM2CusjZy4KmaEoXmkCUKzSFr9JWAdJWAGTW1K6Kn1PscHlEC1dQnKDCGosXNYyd7BnW010G4fb3ONdp5pxj3+O9MXtrGm9Z13uZs+DOz86YkbySdXROiNaEiDx9WTRnYqhBfKhWgG/+w3/DFrT9xzkXrnP4O36bXuwcOEIkF8nMUWPJ/seUtOce4OXU0dIb2IfkyKNqV+VdTtEYPiKQ0jpCogygh1S4puBtZMLYRq6MsDktq9N/WVr7EtGoNLdpdD9hKGeCYO91s8fSCIhrF/YVpAHSQtYrbngWhM3oOEezl+Zf5MRO6vIcWxb3hqvbw9LAMb6zMAgVsqMOvVl2ejab6qNWVT5HTaUPZLnW4eQfD2grQnCk0KmLesXF/l4gS3OKI+C295wvBTLBhAUu1P0HGa8/N1oANa7FCxLWdzNodNgEq18njphu+yIxlZN4OBRfTZEg0baZB5Ceee82zlCFrFzMaFYFXw8RA4MT0wckc5uwE8LPvgU2KW8FW1vNRBtgDCF7mE+5X45wa2nJWGLbQG4PZj5OXC7+jYt3yDKbPB/dM4moD+ppFRVXd3uTYrBJkM5HZQizdLrDFYGknQ5ahxtYbnktQryfJAoOkGsQwumD/ks7GWo1DkPEWdNt5d7vYcLYCV2X+NmO/pgDpFCOyU0nRv/HX5fRzgYlfUjY9tsEgqlsIJcgjXd/yDnXsyeNU+YPxif7Y0vzlZ1ZBlsk9mniASlgwmD7bNYKEEqjcVb6b/gF1Sp2hKmt53gY+3etUzDai6oP5vgrFo8aiTTRLK8V/Hq0T+DUEUW8dr3f9+dv01zfhHePlf/Fo9vOQRIyuxDUCFRLk8hoaUB04S+ORmsCf1sqG1934P8U+YgVW8uls/WXGyl10XJn3WxsIMKoKiqyIdtWQAe6IlX9NExJK0vGiZout9GW+CPOZKPrS9mKkscFQ8ZjxsjN80rorlTeyr2t3f6S0HyC/U2KRd5/66U+qoPdeEFGxsYlkjo5kL1xUFBBPlCQZkTnH342J1TzU/fU4/0gKs2JMiLKla18lOBNpWumssO5TI2Vw61B2GKMRqybFcEbNp6hDHyLPQ6DhvGcJ0TZZU+6AhlUe2+j7fOEbmdTtQkZ8c2BLNBGjeLYy92TX3oE9WAFcrkNiaQ1nBMe6wfWfS3/9UL2Z+oIbD4Zh+o+79iqqv9DJNl5gvy6pC4ZvBwYflh0GJpyBY1XAcpEOpWGXD1y64oYkJQTK4qcN+NdQzGzGCf5AM3F+jlDTOTox4bLE8VLIVYtNGyB6Z8bb1Cx8pqHQx70+r4oWTS/EqDj+jxoHrFp/dRmOqf7I/HW4i2PXqbRohV3jrQXbs08568l9s4oPTFrtkvMYc6Gsh8ew3v4Gdl0d5ZanXaIsx8hNzc0pjiJGZJlYd3t20dAPrSZQj5vNlxbtBGuXGyLMJotHy1hha02VhLFedGGU15LbwUNR6la8YE+wdhTdEGzAHmpFedwEit77DqJmmF3u8X0EWRXNe0bf0L41IoILfc8QTR/tPk3fsRqstgI3rBdR8yWCw8mtYfcifRZVSqBpsp0fDweA1SkPXjKeX1hygiP2EdsB7K9rZB2sr34RbyRuBzSR1/ELLrn9Dfl7Z6gH910GtJ8v0JEIDVHHujQOXfBLslTZYnNPn6aUlBtKdP4p5Seojnl6AX0peH8raFhYEQo7qmP/kQfaPmXEeVKNUe/9CbZ3O3/5LtKI3rf2U3iR02zR41/OA1IL1hcfQbSRj+wy3CZpMzJQaGiXHFUmoS46qSXFS+PIaLqqWMS+l1EwhmutNTyf+I4c0eg/7G9NfyELKAtY066ia+zkM7Cpc1BJuavk7kkRcTWzREGx3ZvMIaE4e4flJhpt5vJq8HdGFhlC8k1DzIKbQJZofMcRAxXu/Bwpmu1/gK/F/0WDfiQb7h3Fmf8qPNai/+GB/DNrH6745HPwrzWu1Sr/haT84X+bv4T2/gUYNPi/yI1RTDpN8txq/wtJ+FlqUPtYFJfL/+1vaNOqWA1KlAdftFFwjN+OYx5+sSCDxmb9Nbj8ZZ6QCaCO/vp5pMkkIVui54coQgf1trEiv6aglDuIi1G6riNavzKDozSn0SXi9G+uggu/X/7eZlgD5V9ayXkfLd+57aZktQfyPcGk0Ipt7uQKhFEwXrM3T+C9vdz52czdfuZr+yZPQfnfJKUzMs/kOhJoXtLz2YB2GWF1Xupz6R2RFnuKiCwuQL4XkOZMak627om011nlKMUE5EtHt9uryXn5OY356akDyrYQYUX29rRNHLB1nlv+T2oyfosnsBhhLwXT5uKzx94AKrMo6T5UsWoaq+aVdylJPsO+SzRvwIKFZ++JbVHct8dcHiRl5KfRVZ5vRRWSni93woogtuLA/pRyJEOi5mxVoK7y0PIDxf3Xn+XhKLbAutdp87OkE+M/1ZX/ts1HY6t8ecQJU4wCRKMmhjzV9HeVmtk4Ow6S7OUQrIjW4z6V9tY5byOp/BW2JuDceasi2YXPWeMd2+wCP5VPj3Yb9i7MBX4K9lJ6QFkwrb+190eIM/+uHwjJWq3xOm3q3o7sxXjCKcg40n9KQzLZSkh+jdVxSsX/nIsHFOMDqjnU/4NZF9sazYNL3e2a9mVJp9qfk6kI1EzwNUXKDx+XckgIQ1qFJ5lgLwfS7LWnl5C0IK5uoQncxKR12emm0FVfzJqB+g8HJL2jfobj/fvxfrQ/xuMX3tL3CfnSvH9dHGj2pTgUrX2maUwUHc5JJf1/umARNe1/M01jnM6Z4HvJVFcAi+86yCAKn8Wa+Bnh1gV76txpCtn1xL0u1BdHmrJTRCENOyFrWvtaljBnLQja6hTDcQyYrMlUw91iwpEFby94WrqUwRBWoQmc9s+MZ70xGJKUU7J74S0jMOldQ0QjidT1hBuOw7XqNAEx+dn919S64lZbQG2P2bLTmJxminxAY851BWFNwKvDqdP0fGVakUVH4iRaYOlWLFqChFvyruAS/gK1xom04/PRwuw4rlzxz3bYxEv6yotaNSSkg85WPalhonVidzLYS0/IxZ+vW4hqDUFf8IWLz9HE7CRLrZjdegdHV/25QFYL/f3jZii2jjCGmEAnI6w+Skf4wlpxQdenTdyBqlKGqsCAzL8GZ8fCk+q3Z7p0IzO1Va/ppiYgyM1sX8xA1Fa48ay+8VZEUkuyfCkaopPBSMU82FDZ07lEsGeXPaCedXNTJF4bVyxW1F7vUxWlM6YzHqpRlJGs83hVvrcRqtYESvWOa7Kl4b50O/Fjyfd5u/0G4wjtMlT+1CvxHlmnUlzsOtr06T7C/m+F4ADYF4NgAMumBpkn4CEyWGoGORGDyTPIXQ08SIADN2CqoPgjDj7J0HgJ6ScBlTuQvAKpBBjpoSQD3wJceQ8UixqKPQnw5j00Qw2KpwQcew+s6hLkVgz+MIAE1vtj2ikBYAAK8MkPKnIqzSoZAP+yD7EV/38Hwx48cyih1XXme6iK8WP3uX1ffnQf3c/Wl6+1H6bNavk4vNjrluXHSKetXyz/jvWD727rm/Cr8yfbeP+Xy3W9bV6GCa1eL17fufxZPsSLghe4pg5muGXpvMHO1vgDT1TwD56zClaC0jh/CMaFcUjRs4NjipFdcE8x48r5i4CZJLRhjWS0Yx1SowOdywoNHk0u0QUtsibXtCEtueXWZUN2nkzuiRMH5JE4ZxPiJKVzeSMZW5MPUs8J+iKNnIIm0owHp/8U0Jv8UDQ8QgdUHY9Bc6qBH06nVMGzyR6jftutYcHlwJ0XAzs4tuKT3ci3KEZ2C069mKiNnRVLLjt2HmZcdSy8OOVq4K8Id1wEF+c3ti1fP3zNk+LUil8eRu6tWHM+8st5n+LtL/iMVXCx9JdqgpzfOzaqqyi8n1+D71XvERW0VWM0Cr6Ka+Crgbk8z3Y6/K3p4dymps7ryxl+Gngt7T22BxyLv8e+gbxSwqPBvvgzUANjsWdoFFSUtvlfY/ry94yXw62mQWKtbnmduj+/F4l5Hgesf+K2jS/JKr7t479Yv+NHitfD3uPvIWyqrLcPxbHKjlY4WHq6g/h4AI723xF+eHFpK8NFtx4AAH7J0ZPNEtUlwSL31eXSIX0lSO5Bdyv4aEyAqR8jrzKWPuc3D0PloSLKuOnM2Ru/0zibia51EWA/BMNxobxxdhD0oqQ67smG9r1qu3JyQqhLP5Oue0Aj2D1LH3qx2G/gLMlZm9mkc6jusQOrX02T1Y4ZIUCiR0oQg+bBHeadzvw49rJgzMmCf3AiPixmcV5OeWD+V4YZVweTwISmC+a2mNj0AM7V7nPOXL3okwHy78CQPzHmsECh2ObLvIh81N2I50G8hGBM3G1EOf7YtIV0AKZ1p1Uo7w/XKbwOyl5zBJv3htOYTmFD4EOcX1KtQT+Skso/yvWlNtleuH186Ez3zHHKF2FnOWfyp4HWZhPM+O6S6C1cAD6bbMR1oDZoDyM0XWXRBgIcxu63Rh3bLuEvieSjFdR9+OTU8khVgY0le6JFcc8Qtc3ZPzGkSPQbtqMuJGSnl1wdIX9qR2nGWuDBWEJydgysCRWuDbuXk+r0mUJftEyG4UTa+K9Ny0iDPwDgtj0G1ArygCgZjloA5blol11LWoPxOLEjVIAyn6TN3M+ucXXAP817V+qk6oT0tkFm42QFf5Qd44+hR9uOkeJLiCqc0NkGgVNfxuFIQlKYX1XzcAlJS8w/RoWlDJ8Bt/0bEkdHIvnKYVXW3jl0b4GpIrZzM20cBNL7s7jz6sz1nVEUCyPz7L/xxcD2hJ9O7S35UYar7S5prRS9PGcVI0Jlw+MQu2/5cxh5fMsdZImmleAoysJVFORSY94bRjtSTK4Dz+dB3lueTs5shZVvkmOnsQwRHf2QcmxkAcnZeWan8yrbOwAvZoewMavOxfmFvUwRsL7qGSdJwnJIAhXpyDokflnoPKpX210Kn0P41qNO2qaiioSiMr61vGT3APT+7PPMZefL1pCe7aaHhTcnlmAFmScRvg5Let4swMp7Eb+nUep1s/3ejU/3r4EmajQvdQnWEOWNh3efi7zchFM6amLDCLDIXdSYiz5WNTu5Q8h2s1hB0D69bEN6pM/ncMgZWUUkz6XqMVGTfcyauZXO5ueOtrLNVNh/YhFYOLOo4ocPIzbDBo6uS1yWdmmkSFrshfDqZUGrYt5nPJ4A+FVzco08dwCdluRcekDV3Y9G7dXQS/27GdCEx3TVeVuS7F1CFSpZacYp7ZM1IBj7Q0rHR2dcGZynyM4yvANMG8wQUfyRJ6osRVss0uPLMmge13p2g7ciYUqJGhUn3vGDcvXKE817XMtO6ULFPUKiREch/rHoBg0IgtqKqLpoHPxJVSZqADbY/7tzRHv2XTNU6w+IrD85RzRPjhiePP69MUZHD0zpodfndTrIVksKh5OQthy589b6CuBIr+2bn5doSowW9GY6iGEYhnH7c06TF/mPXfOz6Y6q+/Rb0Om6O5w9SxiIVMByPUJwFCLzH7M3JgzRLi96fbf93N+d1D2nUgfYoS1UmlKzW8Iky1mSaEWdZiOB9PbRl9EIjKigX6f4fEz1xGwaKa5dmIaClJDYQ4fIsjR03/vX/DGw7hzhlMN4EmfNM52Z0wHZ1czwE2y/5IMMoQzz0LteMRAVFjFK0kRxIqH3nrySZG5BQDiWAlPWaBbUZWkWe37HNIUbcuTsITDf0iRIcgH/TmQGW86EZtI8P5yrGZYvH5+8sB+mTKbtCNwhDEj4c2JRnYlLwgnice9h2nhGL77NszYgvPvC9DyXYXdEJIkbj5khl88wl8F9DqIW7E4DrYvxoRayUj0/mh9JIN2mN5SdtWADLPxew5CRelnYIoMpauH7NW2J+RIPc5g0O3u+odtnCBvi9Nwo+sjgKI3oumGmlevmBYFXFsmh1OzxAjUlOnpGPTUdZG7fxXk4a+B0g3BMVvER3YcCL/2sSi7ZUFKMc0fU2XurJH1XHN8ZwrjsvSaO0vSNr+RetfdjyvwbNaGkvsp5Hysw41ZSuJctivy+Th12Gk7xRoJ8QjXq6Vvizf0o3qzZBunOI1JtuieS9OiYMHdQP5BF3nrETbcdofXu6P16CphPTsJ4yzw6T0NIDslqWA7oWAv8HkneWR7fy1DRuVV4Yi18Ai5VYkaGC2/vMxo4Szr2XEIXAPI90uY12eizO/3U8DDLoULz4qOipF+yY92NL73nUIsGevK2UIm/0n2adcglKoFA5tcVGwKGz143Ie+ML8rWsacB/rP9oEk2p9nl/E3o6FBZfNx87uBGTFYLnuyIaH5cWSaiR9WXMYtI2LPW29PDIskQGdCZJDGewh6lzKgFuujcQ7yUC98zPyAQeTt3eiQurTuU5n8OIpdliWKjZCIwXNiJ83hHIz9cFBrth/oDEiOqR5IezwMur+XoZK+zmAg2cuWEfg4Jcng7jUpkoCSalKqOwxdgksBAu+90mdOa+TvO1kMLIjBmrGrzvCwyi17cf/aMf5PnHgQueBo0vmtvz7YgNW+sQaDDtvg8mliBKbhAJSvkd1EfMEcgTQgR2amgyAc16WTotu9xfDbz8m1HhGAnnYQga5SbYSYoCr8zP6zlPzsYOGfX6Qki/d1O3pFrnCEdMWg5x/NcNeemxRi+mu3+dJ5eeujARTtcae8iIfv7pmPrXKK30fSJBXPAOeGD68RdGhskuZAiLL38sQWL8T3vkstzMx+8Ks7N/8L7MGOXZ7K+CaTfGoKODZ60PcGIrMJ10f2ar4jm1q8EZNuWaVoSRt0sNwl+buiFLrT9mCjkY5w0B9UmRC8X7oTZdD4SgjPiTxiGYRixY7CzftndhbYkjRZAMTNrIvpkAYTnLubg0u1hE+VMUNEU5tHZycUYOiaw2tKXVzEecLS/isQZCf41q51nIZ3W9C6CF4AfRVLCokWdX8xuJw49V3R3eOYFZw/5Tfsv76WzmpgCBhSxvNSNg68I2jvQgDdkGGYOAlvKO9GQCcrFmXw7nagqfAxRoylTE+n5Pn6CJPm2keuwI2MQIXJV3FUPVAmqxhIJcaO/Pwvs/dMBlTQgu4VEbYBczzD2HOUBlcwgN1VLvz1UZU/qcsb7ZfbzGx7h0fkgyTYxlgAZyAOpoB6aEwlkjSCo+eBeqqsQsmFPLklHUyLyaiHzTMuuPzgBfnJry5Bqo6xE3OKL1LCIG4ZJ4or/nmGT7dM/kfdaWl07fD3cLOgXeli5BnEIpJ4MimvOJO57hZEqJcYH62BoraqxWrrSdsFu0wP3px9z6U68zR6JeVE157PwhUSt1gi4Br1mYsLjrZUHN+7aFV/MAuSgbLPcZ01qP5wyKG11MzLEyfL9N2e+qUf3zz6TiHFFk8QnDXVcdOi5cI9OwtsP7jCnts+gYyc3cZj4ZiNsFbvH0Fb423pbBqnm8TU+a/+5vRTvu1+iJHiVmifzDnYtc3vuFdwu2oQrpLWb+Q7yvYvqoPos5a7zEKV+waFRelm8UY0qtBe9+km7QQP/dBBWyjix//1MrtaKxOOhwI8zxAtgDSfC5SEKkiXYuCEzFg/VMt1QFVTDEHD05fGeQT+zJXKoIfYit3KGqPyFTKPL9DtH7Y+Q2PGqpikkELW9vyyEb/JzQr2qs0VWXPLCrsFbY1oUc8KPxNzbRSrN6e3ayrIo/CudNGgPK0c5Nr7Bu8b8KfS53M+saT8LWp4XmBYQDsHOqJuxGj1PsNXsRp7cgM50+OFJec6EZzM+7MTOAmLxJe2d0KG9XzRlwbibtsayusU2gCsd8BP6ngVMMHa1A93bSeJULOfm+FiXXPHiUsot8znVfa2F5KBJsRQmWFsXtwsnpiaz47f+YhioPyreSeGPg4CHU40N6aFctUt1wQuf5K7UXrMfFL3eAlUcpbW8r9ZszDjnuXltDXYAp+XPd0yoGoyLv5TJ5c9Nk0ZZsSPK2Xpy8Jtnvg/zUvmocpjeOD9Fd4FJEFp4wFspsuhXJ/4M8CR2kUSBwOPVO/I2qIfONWeU/3F2mAL9S1+lPJwVfU1DBdUVFrQkFl/j9PoBhCUzt0WKBr1APFRq6i9grG27e1EauyVxUnqBT7Px0IPRcQNaQ957DTAp6mBG+9J5rrGexG0/imvkin4QUE7iQudzF7QYF2Ws8PWHfljW96lM7hfgFTardt9Ka1jXKkw0RMw4r7QZPzmhIptFM4vDMAzDt+eo3w1yB2ykl+21SDDR6DgiE7gSUTWDD1xHtryGuyIAJQzY2W8SePlsx6Cz4oD77z9x/52rnFLUDTWYJLFmXEC1v096oOV3Eo0XC/Jy6GpN0VGxlZhJNbWYmf/rf1Q/w67GRyM+TLac3KVpeGq4fBRuKGgqWn1fPoD5J4beSnEpWKKu/RCuJsEUM+ef3uSYx0j+4afjEAHsfZn+UGJbamjGimtO0w9EVx8uNdYhgU55omRG4Nt0ChH74NvXD3hsq8FeFRtGveWw4Ak+XAYEYz8W1CMBJ1MMG+RxeaqwQakRU/hyzUrEtu5afH2nlbIE8hpEMEudK9nAMtMSNoWCEE2R12Fl5FFOcbtzOulWjEdSuCVMjr8tQay89RHyV6iGmJmCcyQZKBuD8dFQblzsTR1JTV41dotmKLCtGhX3XKM6ZbV8ky64udItLfVMku0K1H7pPmDKelP7TIwcQs0M8KPvnLldrxuWRDE4rsUYx51q921Uv3ZjmYLSusnIKx9QvfU6KBBh1FivhL4DRzJiHycxvAwdQicwQM8VSLGUZZSOOh8L1nxAwvZ+FNK4vcZ9kSzCBEi5T2DfHicrKqPUq5unEOpxg7fxbF6F9f5gM88GwkOHmhrry7qKS5rgEFZJjL10vC8sn8iXz/fvcmQqhwt889YhSW7JNAZbgE2V7vvEOlYgcH0O7Nh/n65SvA8RTi0uaqy4xIsVH24AmB6/4bmNL2GD9eT+32P++h0OeMe0rI8IKbSQoUSgBJE6EZ/CYry63tIpFG19zv601XnE6fV5fCn7SKdC0oeVtqPrpSPqdR/aRDWEeDQ11HVq80b6fmVk/oLWj1MtVCeavXGH/oHVgjKvwECd+w1xpCc2iYCYgPBbQNgo03Do8MKOPrXlFm6H6fZ6LVhJnUBDkCrt39EqSQzfGoy1p8CoiJujWWjQQSivbFm4Jx9NKSYBhuqZWgnq4LpOfhAFKQv/jbsJai67maqXyxwFykU4NAt6ok+gm6qHNYJmC0+WvxogRXjrMIruk8kNfUJi6olNzk6A1exdFJTkbFO7ibPRw6TfoczzWXj1XgFiSD0QvER13/LTaFGAzpni63wyfFOl498QEJL8xHC8tYMP5CJlO+CLnoZL7DeNU2U/QHPB7ggYDiIHBdCQc2UDMppa4cNR/wf5TEITX1/MJxlnuXm/G5BHNJ7PJdSWem7sGgdoTAtd45ygID68naGqFy4ZDP3Wl40tVjaf9UdI7mp4gXFcQQhcpqG/txy5JrYCO1ey1zc1fgxSLK8oKV47x8l23W2C2mt2Hnpr4w30WzUynRWHSG/5egXnboxKSyeWwusjB9Nh6MB8dHfWBY7EXPUmR7UqMAzDMA51TS1VObbpCRG++v9XKAX2H/vtKOfvzR76eYqK24KVl62etlFJHUa7BN0euhnbhcJmAcKaY6oghwamS3U6uuKPezTOEVyE8kCh666uAVHkv2UN9qWHjwefj89f9/AgvwuLzmXnSrUXzn15dbotqs1EEeQT70kcRpu2+1C9fMtH4IATrXam1cCMr1YMwWJ2luWJmcitiSM2vX4vWKmM/B9XIWIA9GRCFRiXrBNxZhd5L4MLUbmxyflHsUrVyRuo4K/EBvfAkP8F8ZTUbp7yE15zyrGB2LKRVb9ZNpI7D9hJZzrkJujsVxyOgJXyRw+wHaPTGtor+vDcepPMg7QUSnFeXZi5/HS8qQVPFnx/cn6HY13VraCpfsBOpbAMb9qYkVolP7aGENkEXkXxL6sDV5+VS4BAd3OkFEqYCxM2UyK0ayYpm/707HODzL07SshL4azL4fci6gqAco0SbiJpyLvoYot3O8p/YgPQlSDdBTwN5DExJvLj/Bz822PyWCEQ/n768rQxy0hWabxMNU/Mn4yikR5WSJgpB653ogHOJHQa+xBseCHWq47r8jmV1jaITrLt5kna3Y+v56lUwQVFQCnPiMJlQfHSPTQeXCb5rzdbg0q7ORU6Mc/ffergn03mcfuwcKy3uJOYrkhPusqWHVQkntycj+bKjOsNIcvV672+7Qy30Dp8Pfn0OeI1zKTiqylXdP7FUheL9OdLZOXiFTEf2tZ5vaLGKdRJSTw59SMHEhmvLXVvLcCPYvz8hcGJnPA6ktqoc1g8uFxQA9Ech2g7AQU8lXg1aGiH271zlH9wKvB0G7+CvjNGS+HbC9YRYC0o9vdjbUD1MklI78I93KMofJ1rh5lrMuOmwS+NVipQVWIiNtKA5QY8iXfuGWdPfz+KpHRwTAyRKGQWtA4uoIzDZkOSCYxzhy+1ncFEN/ViHBvdCJvNciFwkLjJNS6aPxj2OyVSx17nDLL19ZRHX2muD5+lIDesvWXsQ2aPKWmb0g/FuUDaZs+++qAQFPuxzzESHol5AHRvJXTIQRA2c6PKcilrBFKNMyGtJi+mt0gjs9r8SW4sT7CTEY6omu+pfnwDQ3SyRuSWq3PQtIlf5RSnU3ZcTStRDHj0sAuBOQNmn8gfCFnC3eG36lzJg5VyRLdunIPfLyelksorioYI8GlsBWqloz8JvCfjpOaVFVkxjSFFW4rzhnKkyxS+rBciEdnMy3aF7XFEnJh9r5Vp4vp/JCjRgQ4Uk6DS97VeQ0X4QzZd54Xkmh1v3cQD5KzfV4hBVFH4hSyz1PGmmSGnPLtbr2O3+Ufz4pA8bWATahrfSk1CgM+5BKQiuMd0a7nH6l2WST+D0rJKW+a+JKLKioE+u8PX1Fj9Yq5MfEqDganeIRZhuGBjdIXg36O0IIgGxT3SZRD4iuIL0lkQTBOKBakHQetR/EaagiAWFO+RboJAoCiX5hRMCUUW6bwWtFcUvw+p1YK4RvFQpKta4D8UX11aasH0gyKclB8J2jmK/1yKkSD+oHjj0vVHAm9QHFzajQTTPYrrIl2MBO2E4ruRvCKIEsWtky47AgcUn1w66wimDxQ7J/WOoN2h+GVIU0cQhxRPLt10BK4pPrg0/y6YLikunHQ+F7RvFH8Nqc0F8YTipZOu5gLfUfzr0jIXTHsUBilnQRMUJ5NCBfGC4pWRrmeBWxSbSTsVTGsUl0a6UEHbofi7STaCWKK4M9LlQOATis8mnQ0E0xeKMyP1gaBtUfzapGkgiGOKdybdDAR2KFaT5gfBlFF0I523gvaO4o8mtVYQtygejXTVCvxC8c2kpRVMBxSTkfJnQbtA8b9JMRPEPxRvTbr+WeAJxdGk3UwwPaK4MdLFTNDOKH5qqTWEcc8Y2EKnN5JMbrDxcNLOVUNYccMYuAw6UyPJ0i82vkZ1loYw+WUM/L10bhpJxgU2IrSTXwlLK8bAXdCZv0pascLGf1GdmAjjC2Pgc+icT5Imf7HxJqpz/ZWw4i9j4CzotEnS0gM2DlGd3USYPDAGfl06V5Ok8Rcb1yftXEyEpVNj4F3oLJOkFadsfLfVsSeMhTGwhk7uJU0qbNyGdi57woqKMdCDTvSSlj6x8Smqc9YTJp+MgT+WzvVe0niJjV1op/eEpQ1j4DHo7HpJKzbY+GW1M/WE8Zsx8C10LnpJkyM2nqI6Nz1hxZExMAUdf0eydIWND1Gd+W9hcsUY+D90LheRjH+xcRHaOV8IS/8ZA29D52wRyYr/2PhrtdMWwnjPGDiGTl9EMnnGxsvQztVCWPHMGLgJOtMikqV9Nv6N6iwLYbKvB35anZtFJAN7BhYCLWSwZ2ZhhxacsGePBUULebDnHAtnTgteYc8LLExOCznY07AwD1qwYc9rLDSjhVzsucLCYrRgQlEhzZcEU4EiT6TzhqC9ofh9SWjGwINAUJoRhwyFlgwZAjJ60IITkRoxzqGldCJ0iHEHLYUTkTliCLSokWGAjC20iJGRFjEuoKUyMjSIcQMtKYjIBBkVtOQgoqX8BKpTOsEbFdos3pXifSHR3ycTf4E1+J9vwcfj3/JUpfg7oi6IvyNmF4X9r8znl+/+xlpcFfHu5kFY60v9qDtrs9htXre3+aW7e/fWTd71PA96g7+Vbbkevj1exvB3REy7SUX+/9kE/sZ6LNazd/FfAqyibBZOKcqTHd267f58FdO6/o7+uMGoI9X8h3QVA1J3MSB12Rs4Oo0DAusGUtcx8OdGWdhegKvhBQAaq8SfBrMNMUPYSoFmPCscC1qUZxJYcY6iZw7byj44etR9csQfLsG6m2v4/gdTHgzMBLYnvowjRTYprlWrAticuosRT/savkT75LrQuxZ87aWBpZGhnnCJEKItnTuc6UbNJ2jls6C6cfuUmUlTyzfUmZMF0ksGPVEOZL3q9pMTtLIDWG0Zxxj1JxwntFmpzc0qlu2lZZmxROxKsdmUATbDHzL/IgdOVYcgtmCGrlvXNYl+KT6qFNYQs1S4Pnzz146r8H8/OIh3Y/NDXoLrwPqbDv69VHahhMWasfJP7uAYdHZgvyZHDvY5cnfmAQlqS9F4aUI6joQ5vn24gv37V2S6GOCT9oZAoEWcAhw2zmEiGFeIosEBmSiCn/BEHfyNNrQhbxQNHvxG3TAPGKM6W9rjiloTdg3gcTsCjAWPVkN9JoA7FYNxX6ciFzQjheka7kYuhrE7Q/9H+ZakNCZCqbgVAipuKrgGzERcFQtRtOMaachwB0BKhJKMiD7fr3dk54D0JOiQgWTcQyMp+A4FBTxCMwyB0qDy7w2xug90skMDL7AG8hKix2x/jnwFkcDB/2iorf+19TlDosPaIc8gtphP/Q35DqJwOJqmiw5E6VAj+gRBwXONvIN4xmyvyEcIMXb29qY11XkgKoOaof/gVmKGdUB2iHtHKXKF0AHHUWNJEDmgevQPPLSDE9YF8gbi0c3Vv5BvIVLAYY6cIOoTrA36HkOiwXqNnIvHdN4wn/ovcu9EUeOomi4pEGWNekX/giDxnJDDEU9mtq+QLxwhIxxazSoLRDVCnaAfcCe7Busf5LkjHgx1jnx2Qj/CcaaxiCFyB3VnlriX3wbrIfLKEX2YR3+FfO2I1MFhQjZH1K9gLdFPGRID1ifk4ohtsOPpDfneiWKOY6/VSxmIco76Rv8Pwe94vkTeO+I5vGIP8mEgRO3stdDqpQpEpagderghMWJ9QeZA3NcoQZYROuP4qrGII/IAtUUf3L38TliPkdcD8VibR79GvjEiDXD4QYYh6g3WJfpiGBKG9Ra5M0Yim576H/LJiKLF8VzTpTBE2aLe0f84wQOeM/LWEE+j2b5GvjSEzHC416xqT4hqhjpDPxzuZNdj/Ye8MMTDiLpAfjBCf8bxRGPhhMgN1I3W5incy0+D9Rd5GYi+M49+hXwViNTA4QPphKgvYS3Qj4ch0WN9QJ4FYtux46lAvguimOB4p9WLnhDlBPUX/Z8TfIXnFfIuEM+d2T4jHwMhPYNCa6omEFUPdYT+624lFlg/kT0Q93NUhVyD0D0cvzWWZIi8QD2jf7qHdnjCuo+8CcTj3Fz9G/k2iLTAYQ85BaL+G+sV+v7EyILVkDMPUTXM1X+Qe4gCHEVjSY4oQTn6aATwDHJAPKnZvkS+gBCHw1prqssTonKoOfqsuZWdYh2R5xAPiqqRzxBacNxpLAKRDarV2vx9uZefCesMeQXRD+bRXyBfQySDwxeyQdQDVkU/aYaEY+2RC8R2YMfTDfI9RBFw3Gr1kgNRBtSE/m0EJ3hukPcQz4PZvkA+FEJqO3t905qqPiGqGvWDvjO3EhPWV2QW4r5FJWQ5oYnju8Yigcgj1D36u3losxPWE+R1IR5bc/VP5Bsn0giHA2Q4ov4I6zn6WTMkWqx3yJ2LgPnU/5FPThQdHC80XYpAlB3UB/pfI3gFzyXy1hFPM7P9EvnSETLH4VGzqgtENUftoR81d7KbsH4jLxzxMENdIj84ob/jeDYE6LV+abPasWkY7c0wJ2fbsmmYYW4MfQlbSzYN+7T+RQTeh3oGwedp5DgSOYLZQZXniebMwQFFckCZ58m/nzU8jJEZ9R5GvGcKj2NiR+R52j2KdI9jUMVTHOoZyqPo9iiSz1PtGcqDmhrV7UFle0T8f7FUpkFpBekzpjeyVspoSUWzGFsx1Wy3gswyLSbWUNIKL5ZroxdTV29LZMyY30mnGC0IGecgnYpGe0SmzNrXYj3JWpGXNnbGo1h2RauIZ6xp5UapaKWROhfGvZg22TeCkgEb6jWAT4F/HTqSE2GCoIGGwkgwB+MKrfwUVrZWktPqWpl+4ntbBqacxX9oUOMqvWir1pxLQDCsUoBk3QpYQbcG0LWu0XJ3aqxqm34zV2qtEf/8pOmUKQ6B/FQhcrI3k0JrtDpC3ZYtdPFts0wsFhaIUHGtsKKyqt3msKA3CLwz1LAGmlEUAGeXvJ8vNxSzdORVgdv5OUe9i1U84bJ3uSgf88Byq3h/wIWcw7IQQFUwvVCTD5G1IHOSGWbe0NfMuJRSzP1Wn18thjF44TN+Bzb7ArMCkXMgV3QblsVtJAPGdMopsjX4kyNynexvksN38Fz+4OzvlUUe+g1mydkh1V2/sD2HsMTHZGT/XbU/qb0OKhiPGTVPUHg2iJQOcywe001eSFLZhcuOZrmYwgXP5I1BU7vlEFkuWdQH2uQ+Mth3VYbXCkaHZQ9bYThssbzoPZ5DPH73Ucp7doZETeaASIZC+kBbeF7jDh1WJ7yr79d9RTfyWYAb8m13YpTgiq4ND0qS0c7f2t8kSliThTGkWcMq50g1Xm/W74gQaWnPuf3u0ImmXReXKAS73vXzIMNz3oK93MMCc5tRM9zCO9GNAqwLM5xwhO4cNcQZYD5RPdDIiewSdZhn+UtS9dymqCkGUfOP154cUi7kjs2+X8qAygJMSOKRhQX6iEfugiVuL2wusTtDsY7x7DQD1khvZnKJzw3u1BBQ+F1L9fPfIBOOKlWkaUE1o46fKOMby8PKmmCsWuiQ+Nl+I33GIVCEbyyi0lhCeh/AaKLY5kE4Jyi6Hu/+XUKog4cEsuQ2fHSD3IAQdVVYahO+DxDc1ZgQuyQO8M/1pSZW98lVPUpxyE5c4qFmgrTbC6vR7DTt+2XaVB41Iq4wWMUp5g6RsEQA/C0pmr3XMVp4/DVuxeFWP+MFNad6M6TpUJpoAsY/usEjJVskBj0ZclShllc5Z9HGsnNftsoX3SWc/DJg8IIqscMxbOvKEs06pha1dchkYAhRtDqjvPtsgzYZmRaknAMVjqE8ZJALHXwpIQ2ajy8RRTVeZT0PKnCDCjx4BRoztos2fY4t1jxEN74LDhGbF3I7NMROADLw4+cw0DE5yR5SI25f/XzDunlXGmH1YFTXjAGZpn4mu0cWsqAVFvJuCr1Ipdm8x0jaj1xEpJ98jt08QnMY/jjxPDR4sVcbg0A73PZKQ+zbaKhDRaO24nfNFEf28ZrFGFoz9VYIr7EQpnNzZCrUX2NbXkDs21YEB1480s9BagiEYIji4fLbY25yU1M1RodCYE2/0MJhUDxOAJfFm/YZjaLhdtvyAQ3xpfeYSj1FTDiBNNOs5u09XPvIKshLvvOABjrV6xuf0vgWGnjimEUmKEYJlcy6qjcnRfEIMejqAYtDUAQ8dQaQoglc0AkN44EOlO1C/ZLxvdSyNEZdmuqqdq2C0ZAxJ76cpquSeb17q1lquWTZTtEXvgNhhZBdTKXpkH6WCJK7N0VEYa5AZoKm55MY9hByjxVM57EyzoNSYybFkGRJ5XAnnSt0njDB+ZAAWE2/AMvm13hKHF/pHK27+0RWYm5TiJ882X5M85n1+liUpFVwFANhCwvNqPPJbGP7EvJUXH/XRJ9+rVy9NcGTx/h/zJlAevKX6F5eEcDW30ykmfmB2KZVvH0e8BmoIzN+cack22U8SnZj3Bfu32ZyPCcz2gkojHSRojjUjHEkKQUg98dDU5GK+VFLGhhrLJITC2jxQcJ7Xz3EbVwL3FYhOEDmJXcKM+WxddvcU5EvGnbHieJCZnr0TNV8tyJMlc3YvZ7pjocWr3i3zMhKwrGLX1UCKbVnfkwOFquEROqCn9eWxH4gJUOQT7r1Ju+rP6R6dtOrGrdX7lkOxq1wBRs25F73r15fDu11S+643SnXexloCT74o39+AZD++AX4JQDAyR4A8Bu/AP9i3XQz+3pPW/+jAjDitOc///WNf/E6CWD5I/iGS1g+D0JY/vg8++nbr1foj1x+VSWetMnAQCYbo6GND86knMbcIFrfEZd15nKcJ3PL0oZmixNFByv9qv/28/TY4YZHsLOJGxuSJQ/HZ2HsO/K4LoBqXvBAD2eKZBKEJ/y2A6hhpAZDtpS99OwY41upxdGggmklSz8NIBb4SoOjb/nrgVWY6rha7sQ5dfIOjpL+U+qBu2XohqIQbYd1mvuZDFKMGXg5KN+VUCcNMWZWEptqPnms7UhJZvvbh+cnN9Zpug9XJvBGaW1M6sJybGEPtqVzhotHCtiB5fTz7r24zGpLmiJrR9hwmcYKnhnRpRdyrTOMTx2zIA8fMCQgjYnZdHuqeYaDWn/w+JyGhbmhkETTogosakpR6EY9a8JiS/lfd9B+u6R/qgz8d4dOMQz8gNkJxcbjrSZ9hyTJL+FsOQH1k0B63QLaZJzscxosBwOmjFUEtAmMDvRbG1aoGpAcJ4DepGM1RKL54P9MBMoN9qXhnLixFmKlOWVohRStJEGWXXX2JM5aDTdx3w2qNoLoNg1aGxpbLRGL/XxqtICSYYotvsvIR9cxpDyhCZ3fB18cee1P03LCVuMOT/HrPsMmRwJmZr6Hz5UByQJ/llhv42SEjRSHU/jxHwGkF4yrTaZ5VHSPH08ncbMCkL49QrYzqwnvBl+qGGN1H1LSRlhiyLw0UNFE1ud+bQ/WZxTn1rHhnR8AT+3jIDSiT0+BZzvwLb4pTa2XPsv/V+Z9wuYrhC+HZZsdLFpyJlM+ILHXcemHMm9jGJ5OmsA4pfnWE6V6RKhXkB5GWdq7djhCRIuRoFeNa7RzPEuhPKmNVnfewuJTm9scDPfwdHJGB93ULCXAj2SpAPAU/44p/af6utI9netfQjqxcrxOpw/9U3qGiYuyIFZjFHSYUoP00PXqZ5q4250bAem6+usqmkeTlHQxzA7kRyyUCQOyHQjh6YGx9SCV5ke/Gj0QQXPnu6BfjPKW/ObiSqqWx5IDUcvkMB4BH+iHKohTrs5Q1HMX03IwBbSjB5k1D3JQ8RNZhqIFu5LdGP5wokT9+SL3/nu11pxH/3hnX5bPXOOj02oTnRCpSNyVCp/26PiSYEVcWNImFkxiE3+RQ5Znj/Yz92fx7ZIc7PtRoID4Te/2D/yNeMGO6XH/h2H4LP+mcL8RK7A3Pe7+JwIyeEsyOJs2S0A3mxwc53wxTeFTGLyfL5enxK8PHhhbWiDEz7+vbpbeYkjaC/4rnCvg/VXS13cQAmL+oImkP2HYASxhmckzo7/4ow1NvoAKT5uVyQ2cV4Ad753rT6neRX0QA8UzAKcZ9h6lLn++dUh9SKWE848Ccr43SOyosz9kS9nm+UQZU3eAbuiUG//3QAWGoh3U0mqsKT33WArupoVR8Xic2/eQ/0GPY7zyF8egWHO5rfeYmZ9LNQ/3UxybPgDSRb/B6C/sgCMxwPylOrqyR8Gcotp/Ky3dELBAz/9+890/gGuqLelADcvTiAiW85goyTi7wHHhKXhiYDH5Vz3IBTH0Skn9ITJu3XevaBFj/mmAtaqLqdf9iJ+wXzY9Qdp6cGrvp03hN+hrwPMnXwrxc/RWO74x/BMVLfGnznaN6syV/9A2RA4KaBvCV8C2mmI+gPapd08GdOUsa0sZ5rH1+L8DkZmgWXRIh/o25vYqZX6qRB7yWU/8DPTlcI7V9zjVWv1hLOnUQqDPRdHGoHs0K2w5sXRyU4HP77jUlbeE/xxH3VFot6Tv40+EsgTzvp/f+GsbZjIyY4v5ztwFQz0zozzy/veAm8/Q0IDjdNnfdITe7M9DZLiwTuG4ubti/KoYoVQk1UA2YaH1NiXaZNeHZzHHnDdrnDxFmBPpjsz+Wgk+zSrrv9FJC6fblihySF5a4VIdlQ3td5zpHBRJAFwac53VkpFc2FlEp32uqHvC/dZ3VVGVSriW8PoQyy7XEr2cWdcg4wFhQBievydjwJQZJAsfA+LDGbxUzkYHGOyZ/0iBjVvhkAkzf/AZ31GvLNVlXjq0+n83KOPoYPtssg6vO7vYOBvVnOcZgfk8PLBrHsNWEjcJHCBuSapTxQ0hZ3M3XYECmx9FC6qGMleUszduXdRp49wPGzjzur9Gfdq50cGv2aDkUcDorkhTF9r249SqUviWXUxz7Oobzj+mPuEdKvtRqU6LJ/cJTGp875rfOZnGdpN02SzgH8k2HvuLiafp3i+a5myH3g8j+WMAK+7t30a+/O/vOACqDjq7yF8sLvq14urIEc+/0bhMpwM0DZo3fQxvlNcBtkNgWF2xKPmfO5GHwTP3mSCvZgjr4nUJWfEOuJ+kdJ748ROl4rJmSskbrrs9vf3DRO8xwWaWudUgpE7uRfJFXFp2BKyOvCEGP0tzWokMfzZa8dpAl2uU33PXAvowxfMb6Ep9u8zvBmvwlpYFc2V45cGUVv+tA4ZbV3/PfdcB63nBkba9r5S6y/33UCv4Wq2q5YjxKOtUUcxvfraoqrceLYNWyujl2/ivb6zQy6RSIRhoR6HTGYW87k+3P4iFOhD2TaIv5HGuirRJ+AXVVoVt8As6Pbcqhf+NNmXVqk3FpSzbe2olIoqG/VKtZvaCOEr/5f/ncVxt5NnrdguFmWeM8frOCcKRvjfQ/7CxWhxJf/0zbFemCb/uE3LvvZsbo2qNsBRiw/76v05r5noT68K/m28c96KDXh8ntXNd4FlJVLgX9LXRvLvz8vlDIYGvBOwFcPCJ2xe7+LxhPT9MgptGVlgEF16xGamm0XvBKGOXkh7hwp+ExK32Aldx31ckKLJI4/kbWNsGqibGxa6bzzUgCRe8YXnUgiJBSLovfFuMgTavf2eaLP/d1zSJXv++FINdU0BRw/q6G8tjL+gWadR4duE4HbheYPiSn2Mu1ajUsL/hbdRhLpqwRe3iwrvAv+KOVXzDe8vbxvWGv/wrlL5+3W8+CEe1dO97C5bbr7YdC0PD5c4/+BQiDJOqCd9ZcXkkdNHTuD73NY8btYDwasP+LL3x8dBOa4QMbeR1Hg75fR0oNPLMAr5y4KcLdfnrgLIeVu0SqZ80OviTu9PtecbZY4jA7f6n+w1B4mcxzmsJOmfRMT9LKPukUYwYjromQQ+pdX5cg7lfoPtamqfi+NvqoFT1OBO4h+iW/KEg95BJl02lAklfggxTVDkQwYkYNV5jXqTGcy47HdLTHAyODYRjzWnr1UBUkc+Tbyx5GMo8dYR1jmBbV8Z4unq/8QSvCXE3mOP+EfmO0feLPzgxwvp9/hQ1gGHS50+2mLD3sA6vurJfP7TNyGCTrdgZTP2M0xfMIvSQgh76Y+psg04uyU/XfV4AHDDY1QJjUweOgMwjuu+txJ8dvn3EM3dzStg3DA+JwmO83ngqKOPZlBtyDv+lOTOYpVl7b1szUli9UkdBb4Lnua16XNiJp8BTZjFwHCPTyIzO/Mru8ne/oD+oGIrlgUhVxlc/64kNMUGvPSkXcJlJB7sjyJDwvEGOol4Q2UUYgEQGPXCtiEmHBpoavY/A+1GCWw8tVkIVFoI1WT0S50cNFHJoCCw3qDW8zKSDGUFMGBBaZNBBSFD5bBLemAKVLiQhSCj92ZMZZAErNZUfgSKdXmzXkRZuSGCQL3y3OcONZio97AidTx9KkU4PnuZEUkTkBpuk1cvtOIdz1EAjX5g9pDEIj1FqGtfwTS5o0aO7lnAoyqEi17HAVCPoxmVWf8OZSg+R0PQppEF26y5Cu/6290GKdHpVfWEnZd5DJ2n1rKz5zHHTlExVU363BVRXqYEVmfSgweho4Ic6RVvTR8Q8gRejVTWlk1ErEy1G0QOzyjrYSGaoaa+OIP62b5n8wBL9+IjNO7DjUy7/ngdnPpvCQibPj+0D7BfcicfXP0wc5Tej72g2Iw+1CPd7G7rmqII2xps9vsFjkP/mb9oQZkg3wcE3QxWtycSU7ooDau0nrZx/xDE8E+nzNKU+NcXaoYu5G6XhObIH0oVhE2nqmN3nwXpIhd27dTFT46132EKFEA19SMWYepGOcwNdd2F381+ei27UfFY1Y1fnIVEPSZVhMRI9PKXVScBhu/RBmEQqUzLn7SV5AVQQMqt726yI+i61UzGJ/bIJHHHN+sBMUoOt4Sv/g3wSf9iVemKTpJ/zw+IatMMk0p0oemX7kUmx73XxU4DLwiakbq5n1h8JUIleAQlHpSSxVw4UFpg9vYKVCuzTeXauhfXIVaKZyf2hNZM5UHLJ0KHoweFu60tctXRKXsbiUFxKBbrqfIP+vf/t6rlzoLXzKlHe+x+wZ/WjwD+JAnZuS2cM2ScWwvIHqXClROyJmK2jFVjDIb0fn/JzBzz4CPLKnN8mXGH+NvEuMr3tsV+qwKKkwATBukEWBt06xwoEAfGMl74h48IVAFEjE2T7IBI3nxwbJ1hOx1BxkPtpCyg6lyvQJ82xqrkIf06TcXaqCQDtCeZ87Q0F6tPNLqGPhRA3kJ05UZbwu5QVymmDlGOPd1IJFmUoN3q172q+lz341oy1N8/OpCefm3WF2cDOMo529jh/gL/RjwZ7Uy/dJ5c12orIE8+ENr43Ed6/hjx5zcuz99Rctf+Zux8+/q6aPiZZD5teuipskWUskZyvEG1FOWvs49r33rKZYJV4w6TkGw66Gpde77ksf8prbyB8r0BUrPlL5HDKyAsQz3v7+INaulauuk0UNeBrfDF/fQE42oJjZWVUZtim6WftgbFpvmsoVp6/uNtWs6MWEyjuEptHUteHpEqe0cbVTSG2PtjpMtoul8+UOl3mGRgY0yklfCE6wM3W4jsDRhsGxnPXVjc7XUY7oCOn4Nw13VjMC+mKWZCh7kHDN8XUYNlnFHPXbUhBwPUCyLNtXYnxrqTOCAVa3zwo1AJTgbsFhgyFuSloLJxPU9muqmFdv5NSJPFDloIja0VfFborC5KPTRIzmUTynVndjcsINVDtwYCW+7lmKCQholM12GDyyNJviwNoSIyNcYg5DRYo9hSVEdUObWnqvWDUvOZswo0Kq1IGdNug3sdsV0CpydfKxHEVdtPEtmYG6x4qeNmRwIAJOZgc2puExs/SdHHkyx5PQ7X2BErlOpvEse97SlJyp1GsFi55gGThoZrQVvEfPJtookuM0CZ+NxuHLMqc7/YD22zS18s1MM1xg6IWM7YRTIp4O88I1hchvVrHkvvdH9oVkaCgRUTULuudaiJe7AQ0kZUHzQl1z9A+GD+KouHQRHmxhhvqEVtbPa23uKMzHqHo0s8xZLFS89RlPTwIylmBCW4+jPQA0TYC55B/XOdMEh46LP2Sj4Fp+ApU9jDbvEC9++HoYeajVmCvV1iaB2WlttELCfce5pCfO/tAsVgG63UDFP5ayrrRQ1uL4YLMtLczEjJFnn1tdTQbiu1nXrHGR7w3oxiijxU2MoOdJcsMJ0fqXswbGICEcR6/JM2Jl7XYa0Q7rMsKYctkcbqjoDw+YK/pn1nIptnQynwIM1RGKSY2xJCEsWNuiQpdzk4eFTZ14mKhJb3If5+Yi6AyuS7OjztLQlwGbGHddrgxnQdFsPIewSwFRfkWS4cP5oedYSplAogQ8WqFt0IPwKFxnADVE1CjyaRO6VaoQqcj8pT58MRvLQI1HRLFX5drWdfiIXI29dwiTSRR37XVQZ2baMB2oFbUPC9Ry59g/lfd+Aofb1w9qlpYi6rLfPBzUSF4gr1OlNJGej1fEKTAVr/6t2MQZKE6OOmk2t0nL0RkjpAXzGNmKzZjD1bkQev1JrcUc2CUfaij0+6JpySeoX0eh1Zk4Dll2E9lFvkcZ4VWYda2eRTQoJXFULbnGKskd9Da0vGi1OvSOQvP3y4jL3bjAwAFdY1wsGWoVdKqYYZdXz/OJfjHpeef6mFtoNVrc/4RsRggz5ZWBplIzg/WvhfLZxSpTvASA9IkWcYqMEqVU1Ck+8T8r3aTcG7VTUGvSQGr2yJI2VlUYttQXnIZmVHkHcHoPMCYz6pOfq5rtOVWRNaPE426LWID81zdvp8p+hdqa5qRi0Qtfn8Hudjtdk+Q9+tdwe8jLYUf9+dxiNZfYerTfsGLwHVTZflwoJXH2++eLMjNOQcTKf3D3fDHga1SZgJ2hiqiNxCdK8g5XMRbLtVOHEqKFFY/Mg4HxH6pieyuqoGYPef+KphpKLUp2hFkj6Ul1TKzGx1R5ww+CdFpU1o0yRMTfxgambPJmH5yssyWdhZVmc2YismUNa0P6lFxUB3hNgrdiU6R0ka3e0ZZbWGlDiTEPibNbvCCpck4c6kMNa00w7MRvUInqYr7IiZny9nuv8tksvsJEGN87tNPghhc9fL+XhyjZyTPCZIM5Ryq9iF4M8fF/Lmm4ylPkC5bNTzXRXJubTqLUIxTyglbRAIKbA1pcwJq3LTR7FOL6IbM8Toy1/rnQ/duTE9cUR3lzMxijppOWotYy12uYJP1kXneo7hjHuM1c6KqTKXd/Drrg/kqeb9eCk14lo/iPZH0Y2t0LNR/mWI8H2/yTE0L88V32XDP2ZoIkEHd12EGAD16EsYyQH6vbnqGEX1QG/HgHpu8cDVRvENRR0lXQrs12Xrea3akjhycB2l3GrRTECxMD8PUuZ77JvabOKpeZENtWrUAlS3CpNCVzvkabFErq55dfL9AY+ZyQWFSbNgjG0VCZ1EIzBDpBJT4kK99HUb0tSQuKXWwIIt5nm36F20sdEyT6xumPMcnfXSA1MmAx21vjqk37KV6hx1nDS9egMH5SiakP/EXE5Js1yqMPMt4Rh055hUAbsrAyKovctrJwJtLbB/UbNn5bNGIIV2X27S3kfheU6jZTVz0Z8m1vjNwbUMVct9UKgbHNLLtG4ErvR6sG9ZvrrY6OmZAtiWkt4Qd5KWUm/gY4Ka7xid3fgzucalbL+aC4GbdyZfV++/L5FNtR6XaeKOuaOyNz2Pv9nMxnzBvyOi7Fe8ZufIbjZgTj8OtT+Cx6r9VxZO4A2EjtYpaDXna1xBHPd3SvzbwJ8RCMfcjpixOruJm6Tta0UTZ55kYlcLliXS9Op+4R87GR302Fo4L2tv0L0mkcTkOs/VEJG4ixE3UR/Qm8ONK0CAYZ5JZPVjb76gGH+0PtuWnRvbdYrFtKaQNmHUXgT59jbvdBUc5wLkiQQlyngRuHiZ3rf9JRU26FsaEqhv1qII6moYGvZF1DJ/pDttzUDG+BNEz0VY55Mhzv7Qjkcf4Slxq20YuNiz6OM9fmAIEn2Zh2+Wetug48Gx9Ttyfr7SyP6imfkQj79AG36zntXf23LnJ/Wp5M2xmfww8ZOHbN0KwYi0xBC8M4+AfAOI72rXcQxIrI+89/lEs4CNX+X4Mo1Bbj7IpCN8ivBjHL7TlryVnSrQLTIVy86S5HDtyaQF5JSR9cOGwCcuY8uJv++4nxAJoxoE/wCgvISUv6KNpU5KHouxefAyyYATdVlbbCoLuYf+QYgKYjh4Lo8fq5PsdT47L38H7maP/JR7+MIMDTzsfp7L2czoyC8j0awHyrcPuGtuAIztshiziHG++DSUg6vAcP2kgS6+SNuYpCfxRPISplstAIrrOShSa+8Gkw8ca2mL+RUSIJYRz2iCdm80a8cZywUhJEhvPpuPan5F8k9F3JznzSL8F+AYjcYoS7NDh1XBzkqAxVScZCOVbfhigMu5/Ulsc5MY7Eyn7HkrT4DZPYQNTjKUPWfQL6l5R1MKer7NgCaTb7+AcVe0esdhxU7zoUqe8ptxeW3yTrLicbrtCV7QVghbJEKgJ/KVlLke2jgYlTPwJY8CvGkBDnWsxnk/x3WgsMXcUQgffGnHKlO+EsVFIm5C/20ReWdIyRBfbOtTKZJzGtdBbp6lqJys7zD4j6JVRb5vussZrwPPkuLaju2SjoeDc5ou9xmUDT0fQN6FNQJZ/0qeBP6DYzQt0Lj4V1fLuM14UVT/rIybPl3NiD5jdPmX2XNhpOe49u9o0PXtii1Xn3jbywtsTRGIcXSb6AXSA3W6yRBXja9ds9VLMrnvsHlRxjSItCgOVXoyo4ONP9W3niDwqMzWIQV3FKfCYpRAMuXTXhPWjfwceCznc9AaOLH1OgYN2U6cW+vPIPJ25UFzvxBATxNcTEutQnDXKP9FQhUpuuRoVll2bDxmK2SfOzmTfoZ7C01Q37FXQBtgDl2+39IVulsncLOz0KQwz3PcYxBelR5ki93toCW/SEhvi9Pkfu4EVt+1o8xQlIgQSP8TKhqrHktcgoHXtBG3/4CQ4T9Px7reX9v4VFWiq2nFuInmMgS+9MY5NuD14pyDr39iH5R8dhV0kzsSF/eFevEjNLc19vDgCtcCJ0WLRuRm/57XPzV6vnYAGaiPxjq6gSGG1lD7o+OGJaieTo6PJhKXKnJX9eCDvKWarC52OLP3tNLq2ayklcLXqMGDPDJrNk9Hp4K8Ui2cwWR0iqVoxA5drKnUcPS9yq2ncFvqiiDW3T0+wKBgHYvt/V/sI9/nCUZsKKMJox2I5XzXAnnmdzmPrYox751MxEuV9x9RW4F4E5abLDqFxtPwtQpRTbE2TFULGThMUaLaO+1W/LXn5sdWyF/RRjeDrvWVJ8rorpA66td8qxIpx3oe7NirO6nbjkiSHXDQZxPS27mD7+ONTjRACHHO0sH6xNlJDQukP44Lol9TehtgUxUbIc6fQhf4wz8tWJpJuDRjSbhQ8pihGNG0ZDlMmdgom2RGSOw7n/7yco7kTQimYHOqG57DWm8tlOEWkS1+K/uQt0MydS/X6iplzQjdELCMB/aj4VdPgs1NQBQyOiS238Z/zuwL538uEaDqcjoqr3Nv8Hi6amu+aQ1dUrpo2d9K8aGimohjoEjdeSskfzeSCbjhZqbwonSM3p73WtMjonYh8VHLctRCKFyajlIFNakNYcKG2gseJN7ed8+GcHBlhzvEjy2Ki17NfX5oMkntMKaK/KeYUftNyNbehT2owOnbECK5hZFcDSNoMmdaFAW8x8p/O16mNuJTEP78Sa/fXCPePgrnJUOVW0gQtqYVYtRkFstDwe3ZQhDKlTU8kFueI5bLAYkAXFBPuKv5Rzz+K7BNzcA7ukn31Q6DfzuHX7xMr6kSk/84V8kW3PhHQGsACBcEu1UujkMulW07pPGnDtsWqhSkjigFj7MjiPakokX4UPWji0so/aNU5Odlz58wbb7N6E6gRRzU5nzPK+XY7OjGSiNauM9QH/M/n1w/9LZ29w+TutPHl2LvR39X7n/r3weFNtO/KczuEJpE+U8YK1eBnOXRf5WmhP38gM97z/c89+jraD9RLJ8IMPXkD4hDycM5VKutc1J28DgR7wjy+h0REZA5uAhb1Z16XHB+O2jjg39MjTYsJLqndK/Y73OL4/bybhNmLEVLJQS6Rz7S44uLMUR4JxbaeFLcCmYGh9/nX4I3L5LLPXrTwginurJD1s8eDXa7APmmuksmK308arTmRl44i5901x0qd/P8YwNykfPkPoeQCxotmyLsF3HbJnU6dXGOmEI4JfkmvLQ9t1CW8GEGV3ffQ20SljkC6vkltcm2Ui7lUONX6WwCyYiIyhVVxvPCoiZVAqoOpU6AQt1lfwtj21TvVW1v0uDq+1zNQKpJS31r7KtkNlLGKhrsQKG5EA9I9C1kyLUmeTwjEZ3kt1Ikh7Cm+R/vd28LYdyZR9Xw5N1SaNwhbrwqrhwq2hnAw/WQEkzH1P9K4oY6wPt+sYtDGYaeu1Td/6Aor9cWuPU+t9f3PbNj7PU36zqPvfyH0Hdz6IOtHIff/Yrbup7P1PYWtj7EdVnCj54n5EMYS8WHsQt57J5EQd1W8+6f5/imI0K9RKonviTB7UxKU9vcaJCLjIVIu+f+zSVkcIfLkmfssDejv+Hmn1hJF3kfnDCYiDJ6/ePkZ4Y1H9c/MVy5RHmw4G0iTMhJP8XqZL5G6b7P8PyUg/QJMrCZqNQlLLnSfXyW44+h1d7SZqrjjfIrfQy9igYp42DgRITsRmljK/ldEHnLYVaBeGXGT0VGY8uR8K5FZk6ARnkwKoOW0qfdp2BsjpgDfzSNy91IUJEqR7ypeGowg7somFMIaB77GAbVvZWspTYKZZby0Fcrv90E9Ib1/sq7+8rXdmejrysK74HYUtCL00edihPJ3zKp9gbBcCfvctJFEfc/2OzrOnzL0ABeALq6yBzr7eNynk8Z73dHLeLBg58q75O06HVn+Nye0rnxVo8AXoT3hap75Sv+Fb7YRl8wj0q+HChcAvV/r1c41ikC7xuBHfMH8UfSRmVKrBf4DWjVD8bZlTUdFsMjeLUl6LRSxRppGtM5DcFIpkhmrqpY9ynclVYh9X0loKaeMx92KiIzgpkO+mf6qj2B6PdpGYUGH28r5JTEvVCHoHPa2Q7XWCnvzmhHniToRa56mvMmMX6wXovIMUWfNYQ0lKaJnfEavVFRtyqcUMXwV8bW8RngBEwV9CzdkNX194AOn028jCmteXlCIkW5xFo5BY4nug+UGCkxGnpiEdkfvncObbjBsbUVDESYwXhcYX6HI78pzW+bNkbRFv/+MX0Ea1bF8u2aab3Zv3IAeEv+dxM61mtvCgNKGRHA2psRaUh1Ev2KvDaT/SVe99+6rHVoR2g+0xdOQs1LeZMZQGYFcoz0T/Xbay2HLGsxoiuIM9GrOcqO0+DEPz8CsizGHxr/8vg8JQ3RmeqhKMLJNa2KSmK3OpdmjGAoJ/2MUY4+I8rP4DEXalGmsE8GDRz4RSG8XR3q90jhxSDDIibQT0jbe2ZY1g2anQzdfLI3xKBaypFmwoc9amSmdNS3Wrzt9eNouYl/YRWo686SRNw+qtFEYOtMQnC4aLSdTvGftiq65ct6CniXndfXgCYHtSzWY3shMzS4IUnOOJeesGGEitBkt0Em1znungabiWOvFNxjw1ABLQ22XX52fjck5d82vEy3QneZlkI+sWommdDpnN13qm3HV3QMh70DvKWLdzIoVjZBPHWwPpHhFGjtSTddRE76V53VyvdPeNrXU3glzFtILtcWFBsdBnWtows7Ua281ZxUXdhNa/WBRFqoVJ+yevjNzx4ZZbMr43uzVg1FSaCLzbM0cWKTLv8P+7QWyVzbb04Phe82IYJ21w0SumQyPneyARB4AaCeuxX8IGbvvU4kOPYJ9GYMDDjjedRHGmEA0uYeMegxsQHE/slzQoL2nLDC3CgtZdKsHRGEP4jEnL82PDDyTO0g/J2LTxTn0WPZ2sA5KUyC/tZUh4gBP0bcjwP0nPRanOPytRoMgP7AFuP+hik5dfADB9hAAiAyrEhKxrAkHYhdakdAoPgA/r+GdqtmapENigoYS6jRdo8j4UiQPvx+JWYvfm96rtjmIeob0djTPszZOMHzky7ssVt60lLdy2Wv2hQ2EThG0fwuf/Jszh9rxswaTfBF+sGf2Yr2vg52Vr2+fITWQKM38NuFsYIvYDURVnboh9GwX0IGU9VP1qA00PjZrengGyvEJgIxzmVsw4Pjp1A/nSCyZAhbK9Qc2tqHp7zAPmbCAxSkNoGuPftkkTQ6ZyUuXNE2aM9V+O3nxJCqWqC1W0ThtrENKlh+l7eFI+RwuIf1KjSnXZIcy/8X0jBGXeOk59phdUDJdKpkdVfy9TcCMc3sHYZ8CYJDjFRxySzju+gQwvu+dc0acL9dCZEm4u1hfOp7rEVzxQOGLXsK33Um8y07SeWXUn9wDRh077eOC8TV5qlc0yGHwl2rFAJ3ahRojDTQXZWeN//K1r8J1i/iRNJ7J6nXasjOoiYj4rIaKO1axWr5KoeE8CE97kvG3PLZQ0Syny8exFsRc6n0J7dzcnGc9psgh7733zXA53+y2m/5cUJjGqL7LBTJPh8urA08N50PssfgjvGfkHOa95oQJj4/RnKPZoPaPLcL/BnWDd9BRzW/E9MdJn4UXchwDazwaaPIvSd5l/Y2dTL8jrRnROcgTXgiPxyw9Uh807+Px/aGdz3XP1QQG8qbd2dLztWNA19mEQ3HzxcRo+Cc7VKh56hzZJna5/vtLsqyYZsNI1zxb15LsB0YvIW1UotycRpofdQJcl2/7kdBPRY1fIz6py82HUOpH0R1K6yWMGmcx2UoqOO0sYR2300xmAOBNKlPpykJf5AJ3Vuls7E9uKRaGpiJutugJSS01mS0lMCAJMSir1F37bDP1y9ueMkz6Ymu5CVwQFmqDAq2bYlqUPnL50WgikTIZmZjfGlTm+ztK/OKyqfpupMuG/WKhNsbQN/Q1I4EMw4leSPH4+M8FKaSJbj4YWgiSikSwEEYogeoSCIj0rHSsq+D11Wyv2XEx1dmkYmW15iS69pi8rI35L/tedlpp08U8qH0p0QkDpXGgWbcnu27RCBti5xu3DHtzYFPSrkFP4RllAbi19s6tuxkDzCSkV2m8LItGkAg09p4Eh61ZvnmnOl9EJjJad83/IBuMpJn7/Ngv1OU9/+bDfdKuQfuKIYtEzyf0XfG3HVcNfGgaXbYe7Rc77gcCmoTEaRZ5LdpFSovHRTxjSNDBpPhUeQkaon7H/u6p/+zfVm4Xuz3t7VlvV7g94e3c22K0i4tyH+K4NnOzd2re11mPH6IKeVXNi+sVmKfjDlMRngD66AhADwoQpfkuljConB0jGwPcdbEJQJpcn61/3muZExMF0NuMPu5okdkFjQppfymyxapfqNGFlnl28uy2PmxQnOnj+4N6drWBeJiNon+rxhlE9vbJx23xDJhPRFCAGJdRXlKDI2qAKHqP/v2eeP6eLsy1Z0c9Dll1Z7AHQ1Qwx8ZCNXZ+hEyWRFCAM3NCO4LZqpF2tze3u450fk3naZZAWHvRo8jSFieSs6cqsZMHVcfXYFEDbqYJFTOo0mKpaOq0cD+ak95Ug3qfj9AG4aD/b1yInH+UqmFFRm3KEda5Ss34CbfTkqx7v8acLTlt0jv5eDoCgNxO+4CUPgoDnPSFRXTTc9YdFR+jHrWqXlf9OjonKmgNk/grVz2X9Rqz2wJXBuOxptD47+5MmlI5oN2kT3+Xw9ZIbvkd5GpvsEok3Kh2LNw7191pmre5vvT+7ObtXC5dOfgF0qPUNABQfrx6pkAWOPIzbFsfvtFfwya3b5gxCVxLenNM44MWeRFV86/fvwSDJ/7A4zaxvbGewJHZ3KjNL9CCHBn/qCD4Z8qUE4nK66OUA2UfrGh0AQRN7O+U6tNsazjH8SofUS7YhwnDEv0IXCasmU3qn9Odmhs5LKCak9bNldAMT1uWl3VfmenPWPCl1+g5UWZZg/w3hG0MLOBAdGsZav2GymiK6eM4ZgzhoN3dS8f0d4eXmodgvS6qvhhDAjJS0IBd8DziXTW3Wskz6n1gqdSFNVMUFcepkfYmmY8/U0FDnR2GqrVwqkACIl8R8fjkDeWwR1YiIr9Q8i4ot+CQ7xExtQaGH+e00YdLSAhRfFVtInwpklo6TfO2ymJ+moux9nCu4Oh+3YdFQFD9io1CP7BszFSru4hpE+EuN1gXH/6Yl60jcAEtNnmxqSoaFpAptK1f+E1DXbS4MXV4ET/bzgH1nzteBYI+nVwZ+zoULO+ImDTorvE/tpX2loOpyDL9sR3F4KfTCHZc80H4LpgeTh/6Gcc/dkpaKfK1Z7lXBamIZJPqu/YeEQ4+DXdA2pdv8Ri4QHLs47VFOIyNjwK75mviV5jIWa2+YlXUKJt4mw2yTdNWLpfViqFgpmjsxTg9yRRNL3pJsdEslpg4QoSLog/nc+5b+iyHhRYyBxOx1GIouRQBGxp3QCzGNgPDrMXfGN9JYKjPn2lCvylel76GiXUOYQv0T35fnXe5ghW6Orj37WZVvj/kM9aX0s5fnn7k0ESuOQTFGBiUB0y8JV8fs0wbUa9y6Ax3DMqVFO6pTzHMYv9hye/8wRlMacPE4kKHcQEDQWA/51IJWqd+Ct9n9IcWpZTqruSdTqclQypNuao3+Y3e7IJJ+VyWlxW7btTdTimSV2a4ZVv2TXnxTZ2nluasf55NJk465EVfZBd704XP0U4vW9iNpGQHqP3Y0LfH0d8F5zAJU3B3d7OKnzIH+AsuTYxjH8oqhWng/fFZaHxX7owxyTcCyJ5EfAfzcOfLPU9is9vIuH5I0T6sUtiDhs/6d7lA1/k4Y4H0z5LCBfc4g6E2eDHk9k5RKZIK1SlV3G++38M/Gqwku5ExNiYk3hBLHzRW/SX+Cmo6KV90xV8B29Z4GTTSkKRv8zPw8sOc+z42eet+I6+C3/TkLj6NyAT1yeDp1yYtBHMXmdXjE/VfSMx68ZioRa2Gi59XLRiLTn5DVh3Bfb13Wk1w4+h2S0ahU+P0exvUEP/uNweAqKPlhtICDsgqszJ33b6r4HwMI1q95jpmfsUj3ntf/Hj1Gdf+UJC2iNp337+1yX7jMgOIp73vdFGNrXljjUi8H9H9HwPuHxg7CaW/XChLKy47l9wBBYJ+HV9nPQoY5MQ/nkJosKbekczt6r7Ipw+uBsXFNTsOvT+78DXiP+9vPGNASDOlHKppiikczofn/MN4pZMD9MQ7UtwbbJDkXy6ubW6Ir+JOpytW/gt07iSsgMpqtF//iyYTeuQCpgIL2HyQBBfKixbfXMgEoZ3xsqAJQvLimNeyA2NaqRV2wDNk1/KGsIE7UUFm/1SU8HV4DmWzlORZ6oOuUIdMSFDYoBr64Ac/fB1UeD6kwmdYf6YGujHZERj2xqTecUfu+JZy+1uFFqmG/UyvRSx8LOxj74nEw59Ktj/rAEsCHbxn2Rujb2fYnLvXHrNwkfYqUZbnMBwf1Ai1w+6kfydN73JknbGtOSlLx49KIcWMC5iIuILyAGKEVb+z/7KhM92aLZ0IubUiKH/fDw0Lf1jkXbvYsLfQSm9lBpCPRcuoNd8IsTIaSLr3eQttWT+005vOcIHM4pqxKBE7lYvEKevHLs8u386UvFBMqxnik0AfUZeam0wu3AAieG9HNInbJDsT0tcCxf6kqMpocJTM53nPWd52swexcxvbpQ4oJ8ydxZyU4bnWYZjD6o3dPeeam/JpSjZEdya7zo2fZNAMy8lMyOGe/lL+/1wxuL1Btb8tWF2Fo+c1zNcOmRwAG0ej7urQV7eNsbe5pb56/irG+8641gLdJ+QlyA6c5j8SNLvamMpt63HRzhyVpn+on/Xj2fwWmLeLD2jka6hnEspUCZ5+w0L9QvaLeDavfMknJlFl5VMb8ScgNs4e7SsasbTPlppTGlAc08dPoFoXZcodI4tPo9q/n3ksyB7ZbaglCvro/LwFURhRajfJ3/7zCJECoYeq09xmQypiHfQjAtfjUazmdM9fBLbD3jK5vIwcv9xooMGHAo+n1MwPvfMnkcR/XtXeN87VfqElnL+Gjjv6EL8ZqYE7AzlHI5v4gEIqkUPliYeTQq6IdPp9Aa0wckdx7HaURLIo4bE+D8ADd47oxSpCnzm/jJaVd+mwf9pZ7u/yvNJbDUxtM4+DQ4PhCh0UsnOXu7TAZwADTdWdkABGAZ8rVOh6x3EAhZQ5TIHZWz800TKcgL1MHRBN2jccEfPucxADK5o8Q3ZpsOkUtKBWJeYNk1yaJsE8zegwWReUc15xZuG9Yds3CCpSi8SkyZv/uPDMf/vvU2Gy7vMUGdsLrJJGl/O/64sWH4nV1nXzTcuLgHpDLk3Ay0IYNZ83KbBVOVTqp5a/1KFLf69gxcDzE90PLkocHLGIgSq7QHy72UsvJhy8gwJZJbZ4QkkpiT/V/nRuqzAZx5UvS0XZBtnKfina/t1sVFQDEdjEdMUgdhCh5+3lyyNz1JkxVyjms9bDQ5D5+b7PaKBr+XCgdXj5+c16VKFIR8J9vDY7YX1LvpIwauy/rPOUURU/oGjTv+0QYcNRSZiMs6JdX3YybmGuPma+AxVULW9PFLFoKx7U1O7k760osNofAeL1UmxVmLmDhuA9OCXZWfmDerTGKZrDQfF4wiDtbMJXVaEww9eJGhojzp5nXDAFOM7cX9TvAiK8N3PCG/b6rkii8RAH1NcGkhuzc5wtex+pWl2QfSiT4mVeRpvjOVVMGM5LACkXn5K3TxhqOpbUHAbAXW4KN+zOqzxEA7Z+mRivqqVO3sA6orRhYylkpfPdMVrLJum8P/Iq91Uhy3fOG8DO9vSwUJ+1gvovjWFjBEuXff94ImM1Qh1r0I5zKmYwFYxv0InP8+1ZK5j0U0Y4kHd4RAJYDvunhXTBYXpYQAH8Ifv683nz6PqhCbeOcAwdx93+wc4rjsj5to94QLKit7pRxDCj1W24Oq5NLASkjmWpibIFRL8I91Tt0br/lMA1eauPEOr2qg3ZgJN3nao46YgqULiUZyI9qVUfniqQlOxgbCDJYVylJv4KBkJ/9Uzgwaf3T4PnI2HivUd+Bq6Zug3ekJRMvOkAILQC9szzmJEVLJ/X0YxjxWKL5niOslA/vK/mznXDjVP0ozFXnL0ZDIzX2c/p4nNey4gGvlzvvP1ygoC+epazVa3DNcZ/bpxbPxoDrFZzd441EfGhlnepiKJEVQSrCh/QEJQqRGz2M0a62tlpNOzMLvGVCyomngkUrHbQVC2fkU6OzBblacS21CCFwncb1ZdX6ct3FwPapLUWdlHMi7SsogY8zYwYNVFPGFRC8ir5SMQB88sPPNc8MfNHrXQMhNC6dez7jflmPNx40kCgcAuHUx28UxFqGC7O6guVA9rlX8UK1g4VbJ09CTAImVW+XW4r+HL2suVGpUcoh1EbOKfvMKv/K53c4eY15CDfs/4epC4wX5kVgSwNFPCBFgUWdXAZbVVWksnKan38RjLi5+hXOle0zDjrh9w8lMxUF8cSH8iimBXhFu7lLVlgstMaRtILvlsaW6ARhi4sI7PTEHDgxH/5vzbiXK8E27F+c6P06JTER/hjSwX9n1YW/FyRyar4Prya/QBMPmQOSpyj8pjhpKHqnMo+gpxtlng2idOJHvbj+4S59UghryCt+qts6U5WdsldddY2toWqZH5mnZl+v9/ENahgx7vtmCgCgioJcrSSBLpRwvK0NnMJiakVCmqHjRm7kdu6xdDOIzQ3D/4Ex4OCQQsaRycWIWRoHZntSxtaGIkol0epyK7G0cYmOeTsVO0T5ujCuaVBotXO/WNHXN8goq3HMqKlpistY4roig6R6g6IFG/pEfDPft0tCnn3xLDZu1/fIALk842rFCeXCI4p1h9wUyzK37/E8f2EieQCuRQdadaBcmJfh/UOHJUY00HhaIYm0GbA4NiyOVYBBuyNIRfWH0BOOz4kzo5GqvsdYjyjyW3SGAePLc7Ev+1X+eAHmrbWy37He8ymkrLEBiDP+CHRhpkcW/mObwER24OM2LmxzhGZuh/CLXorCkqEDhs6ncsp8PC8QUcEqpdtW8IkQ6NRfbNdhAWG6Ivn8ulBA2oazDkO+uKJJs7KGHbjb2v/Ka1t59nNBDKLwn7CEHzwi//CLjRVEuZu1979w+ry1182cVhRl35sZosQMwM+IR/gNQhV7P+xP5jSMsdCPyuhAXHnxSgnphqsHNWVD2I2NSwI47twaeLRDass5TljOSjpeLxZJOeAhuhDlOy7soZgUUf0qlCJvC5z6SAp26x2eVZ8wr+fCdqMMZymsUEwUsZIqiaDU0WisICTZw2YFYxNdxvqONSLLzdRSePiyBnGulQraqk4t9wefCdPojIVSvY0W3QpdADepbn4fJ6lMNgQ6kAesOvDeNx1ri9n9BHsncUUYDUaGKxW3wjl3vABPcRnTVEvEJfn+76XM+rd4Tatma8ADFoDNrxasgyt2R2oVe3pozGjscLplJqYuAUthUaKetjYGb8+t21omWbV3Qq63PZF47DY2UFqiqlEzJ0tps/knQ+uL1nmJt3evgMO7bqz9fNXAQ/MpEVTL/Z8tNFYw6mUx5gdpIospcqrlLoaoLqh862x0Ec4pE3sfOtrJc9v8puoNVl0dOsFSSAJKY5DQLMHGGa4uuLAkZlcP5A5tnzSUEU24O6MCQ/GLB3CAi3l+Wp0LhuQwe96FHAm3yU7la3fRlHkOVFhMazvRjKVFUFWrUxj0CvMiyYl5zFJ41radDlxBYQvNhjE1ahahm2yFd2FjMagjdRqwFqW/TST493KgIuXiizoal1P//YhUkjcdFojGVe+l9hftMutX03R2lALVGaIKOtA+qlE80PdteakGKeWfdH8RW2ax92ak6NhBpUzn9pfzc31a1ln1P40N/F0f+w8vu98dmDXOquK3/Ww3N6/qs8wkeA2+M+uHzDEOo8zGnx1/qkUxdpDwLgqiUdWO0fu+CFzqoy2K4RRy/aV8rt2cwXoI9J1fOpNpWXNj+cKq34FiFbdcPrNLLTZtrMjnlWrrASpOfoTdd2b7Diy0V4Ynuf87FOnxI6NmsGOdpfjcFkMqqnyXJSHJgyE4qIRbDxg8FFoiFInYyj4T+QSCON2GsZF7cDwoM4fjyZtZ87Bo0s6nqEHDM0hC3mKaqB7So45upBCxGcicsfw19tQznGEIfgROAG9m68haRRCwmf2bmgIuofvfqW3YBo8CyMTGJ9P00b1cgrIwIs8Ju25cJyofn9PU3Oq8rqDn2wAIbuCmOeuuhS3lKqOigOu7g4pRxydHkFsRsi605TlGCougfjsMcQZAW17x+oX+K5RypeOzb3HP0gF2KqSof8dUtLcN1UqZu6o/kI0JHvXoVRlgk9uAMAgHLt3Vin3QiEVO3MIr7K5ACpNsF1333U+v+2WHYbGh9FWi4yAhPbzQehK3DiRXBN7B+DKyHJAEMCDgmvjpvicP2C7q8qppZKJtSLouuNxi7vR1FPTnVbESqvjP27InHLp26fZPYYBcPmqIk3UtfcK+emeIVId8sLRwxiBY1VBi9tuAx8GYOFzMnXXSEfIjkBh/ZSxkLJ4As0PBeo85zfoA9rJc1iMuMMKQoFbb9dFsyWl7tXvi+OWECy31A5J6udxx8/35CIT3zIX65JlUXYsJTpb/LFC2IfqD5uEHtCbm9DtiLWaw10jMVJmES12FfnBazYy4vZ7iGpmkkzq756zYroXv3FfKiUzX7nHvq45XUGmSqf6xG10x9XzX4B4b2BbbV/bgvpFdrjKDDj5hONpwOo6sAVA9MAnpah+8VHw//7g1c7HQtFPcrgHMIg/KVpi+P73G7+M/PmF8OPZcz9gcGjbpUgXm0+Tu+8GF7rT4tOmIhquD7t2JQGiAL236ov6nO+1idhh+pMr6RWTpy8tQvpDpdJrboPV88y0VNSq54/X8x8y7ApVpRp1eYBMHhmgE/DBTBGszVeRVpVOh0yTyGBu5oFmvXiqKUoN6fcd+vhl7iUcP/Jrf1hcNt8hlNLE+pzU6GT+WLM3LuzMAKhQciMVK4pxXVrtjtfyL25YsdRnGOZQunCvFEIfTYki6iOFXt25/wkgqNGhSvigTqQGlIjJ53v74AFg+r/P7PInH0VUAivIE8P793vlXoZqxGCJQiIJ/vJSUR+3nImhpiXuVUPmFPeIfQYCoAU/dGLlLxdWjIbFFwbHiwTOwG4jTJ1ubIKaARxTfdUSmsRCEDsrl3QTFWDR/4GzojQJ0SKh+vhvMsJkEsl0ej1F1YdePUzAlSchfk4uFyP4ufLFCHhGxafQiho72T3UjsA4bOZJ9FGgEnwXoz9kApMXORvVXB4WrPoRSDJqnB7B68aiDgMrU87y6eJouah1CtmoaYbPqqYu0gbz5vxdANDCZhBZu0SjXH80wuyv1B9cQyofW9MZTlbEpSlgxDJiEvIT/TDIM7t0iQSgvEahzaY0iF9z4e75WMnfkvz9L/n47FIgnKC+Bt4Yvjkb+yn8MCP23Tm4w5EmZw4u7xuje+NIIgw/gcN4qiGMLrFWIYyGNL8XImxexDK7PCEWRycYYvpEC7oRsxcRwnXf7Ho2YfuWPZxcFC0HCeE4kYQ3vFlwAdpMc0uT7jMnUOpnEGQSnzP0XQYldutz665/2M4VRTy34fDy5A+crNGt3Fx5YGh758JjwBevA9j4xQ/XI2fsG7eM1p5isi9T4oQNH0EhJ1N6+MjBvR3RGB3u39ZQxOXEg33iADYJ1ZV3rJqYJDAH2jOj1R0geMZaUpj9+TgW/dA5O7uAAFf6n4IyjJKc0HbT6hFWkJgoRfmAvOuZpDczk8m8aXRaSWLAHYuFAwP/f1/52J97wMFk+aYlxHGupdJ+YsOBv/CBoulqNE25glr8B6zWoWKuypKqM8fIgsjOG5Jg6CeOcdHQANfsYk/s09ejQQCv+GwCVmD4TBldpczFl+3vnc9QKEZQ8qyD6RdWSpL8NGqUnT/r45ekKEltS7HphPZBlBR2wM3oGF8aLbdFnNdSEMFt4xRHFCs/OEjJcMvi4xPwhRqtl6nUvPuJA5s0Rud7vrbMCAbtjJkTmSgRgHuF2RbLfhAHIET7b8sE+aYlkvoqzg3cRvku3UuBabd9IEXAG4MqywJ4/YFXNL32XScJcJuLrSSH1MpqTE26MrD4WpSDmtK8+zBwSMQoK62Gm3yNhSRmu6IuGxPhFDhUrcR6BJD4eXf+GjLW40DpfTkQyEdmRxxAluqildLQwK3XIU5M5lROEFQVUkl403UNZuTFr2LiftYPca/p8IXIUnvQugpwM0MeDzGcNXj4kENkN+Uq0xaL3oLjvNkoq/VmhhCUm50peHbwvRjGIzkNhtUv8vMHMpUGmV4CCxnWm0Bf8DDF89WXcDMe/jx3aYPowT4Df7UMEhE8X4ZbvzbwVWVurO4/yynTDYfJDjAJxYDZq/XhbU2tD0FfQO/nDMBZDzcEIyIsxL2wqVJBJxS6+VtF2wDguLHez0akVOWfelSw7fJjpVSLacQlx/dbPx1Q73mB5IezNBOgOtVSS25ApxpivbHuVrsev4SYftc6UUI2da5NpnNhjxSYZh17mlnHyf9s/N6MbKeH4zUhC+idyWI4hly6geA4r7GAtEw1cK+MFDDCNSViT6PbQYT7kYzOQhIgy9IyWL2pm9nHBR1gJQwm8A0/k9S4pkw8In+4dEiAGib6oH96cu3Yf1Zvtx8jGhPfAfSGeqiJ7An+ebh66ZqgRYs94eT/nFPQDMZC5Kl5clanmLA1P8+1sTbW5tpY288ABNMpMwNqvND1h9N37qVh9TuuvWJQ4ioU5RD9zWGeVhpVFsssS07CsaG7JK4hYXUU6vaAo9PSON64H4S4zam3RolvMVRaPc6nt/MpilZ4Cnn6vtxdXOHtjZwwN3b/D9CzngX+rGd+POsbiSZ/d3ssRvsDDUOjv1HO9UDS9WhmYwsbI2LKQPVEjEOrkaRlo9YwiVm0axMWyxlstAr5eGnzXE1EeLVDVvGLJeAvgaxxsxS4Q0wCN6/Jc/30cVdDxPFwFQNpssgBN5ZHCsRKTOnCsofT5e+w5eWR4Z8kX1khLg9xnH51VC6sx3U7/ixoY2EfcmIn1KgpDcWKrRZKkx1Hbzq62QYqZWFLcPj8EOjCqY2sS8KCZRnE/DW7wzm8BIeY6ZdPFons7i5RfGrs8xjAc1JiGRrYkYmtrZsSM5sRMA11ArBXEAtFrkZgGupcpl/I6sNud5VrWTpTDbCdQM/70tHm2lsUlRsYKlTzwTgs00xitXW3TmVoM+Wgvjfn+Sc7EW15ewM4+R4lmq953Kw3uAT3RhTVjzUCL04twnsJLTKUfO5Lj2eQbtHuwlpdDwdbKypRj/gbRR+8w8m6zz3DynIJZzZp2yYjeDE5azLfm+SHcN7NlsXsgJfZd9aPP7DyGLN6sNadSxPQaIoTXLRb739mLMDiptu7EHJHXdSLDSkdMF5HBSuDGiyOJKGOFnb4zQ4LiCzJFKPRRV4Zg+PTxX1gGdT3MbyR+qZK94xRdpCfhx6T2p/YXVhpoAXlJvDrFG4Haztz9NnIu7iXdjT3xj4i1KbOdAvHY4SW2e8S9dgAtjJbIcUPu+EccIJXXpJGLGYTU0M2GWE3Xpz2l/G0wYa+6i3l7QatNMVlqg0QzkzQn1C5Z2ia3FpSGRP20XwknFjIrDS/VZaAu3sbEH8QJ+T9OA88fb9K2wvoUmSgDqbtAIdf4Rt2HEgvWhxMJnkBHZj/EADaoc0kqGmsxYyfw+jrjMIwzNJw07CT69lI5pFX5q3RgUPoXJYDbV4+/YL0wYCUHQ2kG39723RXQyNue1BXhmFpVp97nDG02x3GZ70K52yKnKE/rIk4tJRPY6hW2oIjMsZEuqU7SDJiNpynvJHCqk7Witetgy7OIwhmyg6Q8frH7iS22aiPwM6nIQrpcXg8cEJ49/rFNiaGuWEBVoxZ+DoviXc2MK27ABZKSEKnlRPtGRgzSLZ8yo03JAeMkXgpZIWjuY0ygpEcIB/gC6BhcmUqZXrMJbJ0dxX6IldkY/UgD6O8cSVu1AKRH91wUNYQFDXgfEwOPN2YTL2nL+sxWra4fWB5CgmMO5aG8R/SMeEbYIHdED8mYuXWVGT64BcromDiskbplJEy0U5BbWiAl6rpDQMbzlJ9R6Q69VpyluKdOV/JYSp8meLY2HjNigpfH/rGwu8EiRpjCv8Fd/iWpNWakXn21pFLMQWbWg22TE0rl7AyU/Lc9inQuAWWFqiK7hymKfkAlAsMaICUYJAaHjJ85XD5TP+O6ze6vr0WsS187hoJFgxGAPvuNIV6t6tGJ7145sZFRTz3Ue5kvK7XDIo5nxt4MWF+Pq7NtRdL2r9gIo94PZDfv7Q97oKML5ktz8WAT9KSU5f37cPwzrcTGhH+f8D13/JP1wq24u36GF7JgukRjIGdyWc+H2OO2ogHKYmApCUCSfTBvVR5LAK7iTutYu66LTfyT12bv+yKci0UgRgcf3H3ElUkTgFUjnOB2f5PJ4uW47BqPyDBzTIabbyVU0mkq250dqUCBmuocuS9etaA/S0UoU8KY4IIMzqD1gPpX1imMpy4AAA84lbpSLBopEL4KUwD5wgmGtZsQVrFWwtdceNs7PlmmbbKIUKPnuXaRac9bOfcW5eYd/Oa99BD7Z24MgXawtZSPx0Zjiwa298CJ3r9mzkiVok7qI10kGg9MfWHjuWYS5nYIHgJiaq+E1WLHWG5Kq2GkVOFWZRUQ3eiSNxaqep3iw2X0zxk/Gv5rbeRj/WMpHuRl/LWjnpaNQb2vLJG63nvE1WxiyR9MR4gdyBVs0Cc8v4kDMa84ezDL/f1ZoxOjGzMv9HwJiNP7zDiWog8+yZa3Uw846pXd4Ujz/YYeUifb4hPBjUBR6cvH22/Hy+z3fEHhNkRGBjgerYQ5WSjz85Oi+7oz7uCHIXrkPH1FBlt1ne6NEEWZrjYGn9QzhMAqTq5FdZwKOjYxPC95DjkH4x0iocARz5slLBvH62ZglwRhpbjZPeopGnn8PY5yEzdOXyT9OQ2xXdSgyJpCO0SkTGg3UO88fBTVNRCTtZDAYFw1tsQxW4iemEkK6adG8uEY3KGFvLs+P9P38tZvS3n8grKP8ZBcH5ZJ1gbIGFf1V0oh5htv39cDJrOLLO4M9uwPhA0aArmpzSfZ++wA7RXGBui2Bu6GdJJEX89SX8uR4XDI3vKl8KhHhG+j/+xpzdwOlSD9wIKTXqjppyjq4G38+FOu+hHkFiZDsa8ZA/ywCYsNMnAvyUmw5VD3Oy99gfYQsSAV7ebWYsM5PzAdKExZeOCXuOxPs41mKmMla2p+F5xUWYI9feioitr0hKZJg0zKm6MFQQyj4XrdU/42LlN56vQaXqYbSAFBBIsVF5K1iIyt6y0ATh39aheTjJVlXR0aoO23y8rUVXesVeecnU1qvI0fN/uQnlqfi7Z1eXVq0Y5S1W1JPPU2aW+0jrq+rq2Lg8nXd7VfPtMP5Wylj9vO7ImHe8T1RxKQV+JNVfG7r0z0Hwf0ffq9R7upw96eMWrOcmPUxrDwxcGnWUyJsc6hr15Z0qn8Jg1MHL2irP4Pj1zk8NWUM3kJ+ZctELlT3KFV+ljJ84TarN092nqU9NTCpTc09nmiHGSTYibCRNNyWe+vpuMM+0t3QUXUHwhvqYQak4EVuWI9j0kztIyO6hKc37Um7fyaWihdh/dpW8reGCc2cB7V2bc3wiH5i1QfX2AVcZkzWHV0s+wNwvZu09gBHvTvmvMXrBHwVvjpi6gY14sGvfyrOEXXWfUOOTm/akcM/aZf+/+cv+qpggi/sQG3BiKxjSORNvV8zsTHzE2nxfh1AQG6xGUTYi0jZws4ZwcuV/DmTPvVAuv19NTBp70M6XP6W/uZKjOXjOmZr5ZuxGOI+QlpDvU//yQUJ9EA498GzkRIvAA4g0sNvbm/pkcAdUJq0qZKrTl3YWmDAjYRQiEDKbOVlYwtDzdTNnXSlZYgC/KtFsr0Nfkbt6GVzBz89Eh681q8QHQrYu/I3M8KsQQ1mbyPAtUu+6rf35Am20uUrNt3367vzIIyMHNbPl20f5VQwrnccL+JVLGeL+S05zXvXZ6LkEsvZno/+jcz+kczYvBro8YRijWwOFIKjgt+F62ImTf4/A6szC9Db2x9MkE3hRDVU/ifk2h72rTUn+pScoqB7+/JLBHDuQJCICD+v8P3OvtkcASHg6g/w3JhoTey3K6VFlOYDK16uMy9x5CpsoEtDCjdpEYVlmGHTx4QLhO80KlrnI/YmZ4H1Jpu+zH/Y8KruyWBxCQMSygzODKrmnnJTg/C9XUFZJbwTPYtAXiytG4D7GUcGuQKoa7OKEbdlcw5g694GX3aoYMgAj8h+SENFIb9FO5X1FPZIV7U2JBztlWKphFiJxnoYIwWCDS6d5rypJTiJ5dLCbWv5oKMSaX2feb80bT2xmfRJUX2KuQNu8++fSeC8uM3sc0CvbZDtWfH5agNlXKaxF7O+x7YUBqJcEiNrHtfBjNDet4uvMTn0XgiwE5SqowDu61Aw9SzrVFeP9I5ntL+1G+TtUmjdPf5oqfNgtO1158LNmdmYqcdrQwVLzaOLOo4lTv7SRgtUTD9+4vj3uoyghMJGdUdar5hi2kGVJ9KTIMmodelFceSNlt71/2V5XqJlcKljUMWILJGFREGDAr/gU597q0/yPfgaU1cSIRGK1BTnWGPCgk4BqS+Q2WLufrxNxNaQyy1OtQuw+rMmBgDu4/B08kMwCgQBCC3P5iLICorms8qUoAy3PzGQVSHWbscD+7bxjqDBwUuDZNgacDTxCRDXdC8nRPMiWFkPo1xsEDbb4wE5Zt2poyYHS5FgEWEQd6TlljRWu8ZZqtat05qvbqbwTxn7pMdVEfsBBM50W953enryWLBnzIcrgSKCCqlnMdkrny+5OGff+5kdtxJRAam7Wc48+K7mwACVXYAbrr5jeMedZ/jeAkdVdlM7CGrYBSHHRN/k+IxMvUXMeEZRmlWfC0FUwWMb7bn4D7aTql0rt5xZVxtktjFQ2eSZLujqNCK2Mx9QfTPnYU2x/7EZsHDSv5F3QgzDhZ2IONKn9FHxduVloRsuwquI/ZIbPqUfkZWsI6zvOBDvNIsjyh9YpHFgK6yDetGVZnHiH7WcHnDFBlG2O+mrv+aBWCY0hVGHfKNvA5rYUAY2InR7yzuqrMXE301ziyHpyoy55YfeWTha1O0dRa4Ia7R2fryhHDPZl8ohUBU7RHxV7yg/92nVrfkdn79NDRAPJIX9svD9mLKmLvOmWNND6CHFlR0uF0OVByaBJKOPg6DbaBywFTBcdtwI7/j9jw77LGK5utAVOLRtMBVRkBryixkNdQVQVSFuzQUHxZ4/aqmrMy8xApgBEiKsF4a8eGu3DqXzb5JzMhK1VRBSLGkhYcKTjmaQXZKI+y+XT4QiHz9TPLMKEfJMlvQH+9jHXpi6rbCpxEMvwbOLa5HR4pvnogR6rjhzKZicjs0G8Skzx1cZWVoxBYsElXB+dwpczLxs02ChU1ET4uoXETwz/6G0e4y4ZFRLAacDSLbDhnVyhna4ve6pe9u1Zn51UG1xn97yrAddNchCbiDTji+LNPePdCdvyvhTWQcoEh2sY819I5ar5PqPEKGhf+msRmGubWFiW6hB9GSEX7n9VE7JvzDRMHIe7pR3/zDddFBteiy6u1/HAHzKC1PlMN1cUhdlz/ftp0Vs3pGhYRg8e80VbcDaO1OopVrkc7SmG4+JFise5PIv7bQDm7CI6K/8D3jVTFxgHUrQHmahOGPbWLiwYbxLgKxCEENJrMvF17+04Rusme17+DuNcmitQfPJxtcpYnX6Db37jler+HV5VJn93Uvtuu1rK4fi+N5lm23R58O23/U4Xk4FFDqgt3H357K7fPLR/p6axi9ZntalbFif+wgqsn7Kj3IucerPBk4oM5rbKH6P2eVt8eYBKKhh6g7VKoyqzVnpl720Qf2i57zDZq8d4zIrCBtSMpTHO32udDh0rN1LifZh4QHuTyrvTq+kBpxK3NVBlvL4D20S/gtbQUIawgS2vLPvFy2nMn2N3vP6BSWvdilZZq4Lb4oguNMg0X4gbdhN/gi7kiGr3nzYzvKANVjxkOQ3h/Yb5WNb5PVMMODisObAMWwUjX1jwqaIlYNzGzKuDgtQB7so49Dyj8cUHHVzHsUPCO9gX02lFa7GaYNBcrBJKXqyhqXcrJhqMhuJYWXUkbfHp69ZcvrUwi960EFPsZZIEhfg4BEmGJ8VFyVXdEhcNOc6fejvt3gEOaUNd7YDPMEqToBsmE9aCQkLF9xkVBPYa4Tv+l1CUXwSmTd5cXBuC0dHB2htzxKayaw/TYAAdj/aF2PBH8cBFNclxiLhbp4H50gFjf8isbrNqC20TNVd6ZczElg/sNtgJhWx/Zt8a4ADe0e5o24JdjHaGsxtIJthz9YP6x58xn2xWOwuL6z0U+y1opHlhJ2FVx9+6OOXJbuVbtPhcan99lAeB6FGvM+GcJ+N4VrbXVdJGaeHmz0pksq5rhoG5OVvIBlCCP4CCT8eEliKlCIT0L9LDLwUtdxYcxOvIg3bJYp7IqBeLtHEkue7dqVcihszg/KW+W06WpyocD/1PqoO5hyLMRxrps30cMeDBc+K+MLXywf9tqAqznID2iMswQu+E7X6MDtB0Pjp1umb5nG1mez7b8gKtL5q+3Lg8/9rls3PkuNeRToFAbA8shMQKGVkiysygcDTHN0h4eq16m2T3BJUWSTYB9pMuSA6fcpFP9eirDj6i5kK3axNrldFHc+FX2ujKaYF+EmX6/JO4We2R2sfRgIZgQLa1xE9nlv1Jl97gZGGm1JYtmUSPvSvh3KX7f/XgYhX77OACbj7vx2vNwnQNwr3E+Py6+L7uQhxYSpMYt/2ZY7XDK805gf+JieFHZQivAWy9mQm5FcM37/fW2PEkOnnV7k8Ql7vW59Zo8R/LzGDcCKNkiqoWWtHXl8BNp1nOfuTpv4HUAeQ8JWQ3ofaZ++c1neBxxExvOuaSeKq0bqxDNa77PFdfnezBShJ6R90GdemMcx4effqnmDUEcHkf3nJDo2W3Oc8zteq1B/i9n+jZfkjF/qNiW3cpKn5pCyxvDHucSQLuXCBqCOBEqCjwC6Tz7LX1+5qM69i/pS8mcUhzcWHTYzJ+qzkie3ebXaVP4MspJ9JG8r4emjpL2w7fh2FR8goE0rbGyqbxsQfWO/SCIutUwB/xwgCzxgv7+pOgiYJKWSq8GYiHgouna8zyMgMmM7KvRdxiFbLXC6ip9oluahKhfmBomz/SBMX0EXRDBN06o8bdUmCYTejsVPupwPEemKRnVIN/OJvHWm2cmhxpCbDfTkOjhYC4wTaytW+xsPvN9ekLBpJTc7aFBVVCgxrpdQPJNmKLlUJTdYHVrLMab2MqojiuMxz2cQrJh7tTGno0jwu4t4tUsk3Ag+QJT4L3Mp1rinbjmwIczh40ha7U5Ma/bOU7MNihlqFrzQXYz2c8UBo0Ch9B/uYAJoSSUxyClRjaEjAg0usRxBuCPWnP7H/aDN0QGtay2Ur1sBohzNQTrqLNaMiDVHGGrpwNOfKCN2R+bBeEuv6z4llqCRNnMsZyt241L42buc2NgZf0KB/VtT+FUpdHNjNQOiYPbKxG7jXj7IsCTsXWrSd1aVADflzT+atE1bvztyLMnYy+gxkmKBybvG+pHGUrKELaS8HlLJHGaUmeok9HCUzIcisdnQLJ7rnhpcAoNU+1HO+ZID7BzcalTRJ9x6xKL68fdREhIcYOPjIkhEhCS6AE0lxwZ2tbeNXL/7Qr28f+ELBEVtHrCuwnxMXIWslQD8uQkwnRLNKaTU/vye+UyrHFyaekFW4ziCsa0O3LerfSAi9Yxdz0Hmpm+qSPyoRznyAGAXUKgKkXGC6tTTL4lU6lxFYWIsoLxc9a5EHBPibADkz0jmgfyR0KY042Jkc9k4GYQ1BdnL3YyHlf71lxMjwRzGjVmDv4lnvPkGl/D9LVWJrzmYcHJYzNIjJtayh1qsCwDRLJxgvIilRsK6TU0p3PVTjhhL0b3u27CQTNZwmCQyCjN+uO9Jz2133toTttVSd6ZWMHWGEeHdR/6yh2PHcrUOpY7wjYfL3bCAqG34pGWXFJi9M8Az/fjf2DvACBIfmOex5cmU6jIToawcsE3Yg8oVHE5uzIsYjNg4pEj+SPG3PhNP/ULGsMpgF4YErapX0dd71Sg+g4OW3yUJ753glD6B38m5TlYubub0wUbsYtSLUvFCldDsaecFFjPahjUeHa7PZ76th94fTpStsvP/GX4dTLCGI4OpxX+DBv+R04oiTUODV5NrxvW5dQXVhvz9SNyE3Gxikb7VD6FRbOeRdqXzVH62mJji1NtF/Fcv01EmK4q/R0Jfd1RZApc45TeI+pGzaIPKwqVW9I7DdiNHg4V1dGNIHZVs4Dzs5hG1FC1jO//q900YbO706xWxUDhHjY+WMG0pUrrT9KaBX2SyfR+RGtP6nol4lc5TUj9LufYevUewERMoVZ19ag2kky4V9TDw3UrtqU7+g/tVEtpmiVPmf1cLXhdpLUDb1Z+QGi6tp8J6OS+nFfzmLZJDl3WNt/+Vl42OOag0lvRofrOHqgFA3plAI/0bMLmQ6n34Um2ckkXoJvMXrjOWgwmoXHnDu/xeJGibVEUBC0fClOTQsLH04dPv7A8VGW4Eq9IR/Axdrku2QZJCyv7lAoNE1ImzxL4pWrGSOxCspvcrHvN/D6ROwQVPn8LVzoM4kxjVvhXEnzS572MC/gWlTwB+HHmY5upkQBvg3bFlY4MUkr05oMckpsbEyip6nBYFeI48hnirWHm6KIX/Z5WFM/ZQCN7C4WxLEo5zAKdRIAOZxwsAa5lfNYGct+h9B6B+GdlKnGZZiJ5RhR6N0vmVLgrDXiEV+p0m9D661VpPUxyGVDdkI+RrY1JUSWV4Zk7lvW4OSOpbZGMoSKUh1yBYBmh6ROtEmD/RejWnX3Pgu2kYMWIto06WthBQZdX1N1YE4RRqjzsaqyZh8VSzAlWXvg08DF6Xa2rGE6HNufXyoExd46vdoFhP6cUE1ZrPc658i1Uc21PUYcLpyfp62zpfXZ6LQfTQR/zLDD0N73jSdkTwYqqsa4yMJ1vq0AhYPQ1CXpeMhxiLFCDHVr40GO4lt/7pK5k2lXWUKD+KTeNReBCluH3u2Nc+b3rsLrQiDYQG7r8G563+8vcsyGblO3cWEBmpsntvJ4MoptiNSHdBparuM3+0Env8OBdaO9d/7vTMmwbISku53rFBH1f42Vel0/gbKyM6+5jicyd7nfow29/b3ampx4cqfjqTA1/YQ2AqarS+8A6ii/opKYdriBIjqea2w96eqWm6DyAFCPVMNQcctsGk4XVsddZlzDFNivzCCkh6HabBpDWjZAIlnb6hUoeufvDDU2bxgcA2jkIWMB4yOgFn+Iig+aWWm81VjVXr9ZCqTbUtRVMy1WSIohm8/7IwYRT4/VO+c9gEq57eVDwYdVlT4uSd26RJ2CZRHMZ1SIN6Y3Ian9rAbnkgqOqBn7b0OT/Cykh8UovoqufOpJJHrvcQtljJcviwVIcbOSdU5Fu9TiOct1Za609ZbIlU2Ixl/0XYtq7a9yOA7PR52Es+5hRgiw7f+Dj8xp150havWDzi+OOpdGe/WaVVYqDszab9KHaHiLrjItdWzuWqkUGJkgifWqV2wVZa5DuXIQg8pFURM1JO32s5wv7JPSdM3+WDHwtxS63WzkDcUGOJ2aLi4W1wqWwy6lmwwIg3niKigVlXhzAijvgUgYDI6CP9vEbjdpRnbRQBjg1a2qO7/G25Jq+7bHI8X2mGZf47Hncy7X92hdbu30ttdRC+6yYMxm+MLrNLpFlI+k2mi9626supFZGECH8mYLiFfxVkDsv1xKeDjA/9aS5mSp7lYif7yy1Qtep9EeJzzH9TlJfFlCtzBmc13XTqcGLIKGJKxx+Jvpw2+I5JrzK8gfhMu5f5++6u9a/yqmvNRm5MIDmucxFelC74N/dC+0CnLvHlQO3rVwe/ei1tOpU3LxGj0eOiWe1R8Fnph//HTDYj5evnBff//iWEGI4vHQSygpdXadSHCx2ht5tkd0ShXUNsoSa2rCeIoWUDnyOr3J6JhKRC6UQj8E13ho3YDLFrgm9p3l0VyJ9POXZrWjm9Ty55eGdXXK7jMPRG+p0Yu0tRRGv8mvUUtu9LVEOuhzP0no06eCPKLNW/xOBsfuMnt2PRbcd5bgAao/MlaKAlPBaXu9CEG5/4hFMG8eK6fqY+fRFqATiNAVvZadKEWV4hW9/pSNVqD3x9PxPuf4hNhnbALIg8xMLj0U7N3N2To6rfosSIimybck+36vIO6oHKybU2YtQTQgrrxon+29PtDNl5ZPbSqPB9lJWlHP2gNQauYJ9rmnNorZ0ZeYUTdOk5n7d9J+oQyRpqf1tGOM2FYGNaVqZunJolXSQBnikgjFm+53Tbw0cHkx9bv5LNP7jGY7JqBc/RseBdvDVBHPSxehcmgp+nNIIY8rbhqgFXIxir5brKV9TTkc+w4/21UALmeFMYtcSM8YUuV2dBslhuVdihUknufWMDEzVoot0L/+E8rZVl+H/bzr3+Uf8rKVd80vl1a18pXZsp5m2l4joJq6xTZ+mwyMiUrnNWltd1MUi3ypxoaMR6yVgKentc0tXVZb8wMezNCsrLJID0Pm7GAvT+8svkJuoEJDjHqKgfn/eBa6OgObXePjYydCIl9jhnSOLatvYBRIi6X+1eY4TVyhvsi4viG50HM71P2pRcU6S/2+6uLi9/eJnvLBhonj55/4HtLzWz0j/d0nvb50xolTY5eJHuauXabZF1ngLHSidzbvcqY2MjEinHDJrE+yG54Rh21T88Ix8Kp7++vEQ5/iRDIxor5Mn9cxS92pHVbVHOPjXkSD7weyZziMOW8ZRKxOaZvtSVgjqr89UNo7m25rofCXx0IY8NKCrcHPoafx4O4UeYzQzW36zKqadDvPHqousPIJUSh4Chd7hmYem7OXPIIha43PgoVD303JQJDsPVl6K3Sd+KnIGCFwSV5LW+v02FZR6WVmPif8/9ks5lms2ifzCWvFx4ANAjXKleT9jC/PJRAaz5YBZqqmYYeYwXnpMfPv3Tr2qhAoHOVLUfo3r4zEWsGUA6SgHm9f+JCiwL0zUp60ffAKxc8RW2BsqnZAi52umts6I0nCZbnl2LBBTHzfAWDk9/YG7uRYPzrAGybYwxRdx3rg6dwx+Gg10BZE+Atzv30tGaCU+00km9rGgbP8Oe0RqCWazGCSvMD+k0xsxG0wbFh0zcwy9pOy+gcAeEF0hR20aYuOON/6KRudFATDCvx7ZDOA2cmgIJXLOD5cDrEEb6xm8W5kpLYMuawmQvXv/ouVQa+QwkEgyxEZ4TSZXLQ4vhn2El8QzeuGnXKe/sKFxdWD5KbjLLYjPdbXWvljggss8Ooe8gvNck7NK8dHSzJj/k/kae70t8LuBytIb4UVN2aSmbDS0G/KP3YdlEwSEsUdyCvR4ROANlIrH5yMPHyRUnVRvYmqgKjYlnSK8NwFUDlYz+HFCianCmrWy2bI6U98hnuGMLsB/8OVmfqOxvTd3ty8Rqu2zD92XA2bIeK8imuXV/iZUaIyBgROo2U7c54cjDHI3yvl7/b3dmK1WBpxx0S42rXo19eMdSBcpVQ7L0dZDWW9WcsWvEBRAAkp86pgZ68jzXrQXb/b2wPLLbnrtFl1GMy+agcsfGXFsuceJFW71pBqyogR3Y/z3ysGPuEQeT7s47dfM44+BoS4ny/F3MT3i/B9PS4fSiC6U8L8iYxJRvLeVXFptfhc8QOzpCX2WviDp3OvoDJAajYe/aJTBp87tVp/Szf+zljgFZXHM3kqvJTxBst1kgdtHlq+NMoYiHt3FvOZtxeuPH0Amj6TWZtABTPW2Q+oSW1VGKPxTvrBjPESxFMAY81z7zk/1OmNPn3wGLesokGFd/cMQE8FTu7Yco+twh6dwiaklp51QEpDCZy+86ubnVqj33eHk28PekwNg41l36elgB9Px7UXG9k85meV1xio2/SlxKmd9Fed0QGqPDkJzefHwzALxoFEqQcqbiHgRkwFxmFiFl/2pYIT+edsj1dLxR3GJ85QJTqv12chgSenBxJwnyKGpOmkk2M6gZFLE2Ijg/jvX7PY5n2BLH/ENh/ss1jpOvOBbf4U/5KnF8kdxn4GMrVfpPwzEsh4oZUDAwCVm9lVUbd6YLdaevMV5IiduP2MQH8a3070T2OaKbmbV7KYSO4kUug+a37zJHrteYy1f70hs1vcND7umN7SLozvNcxq0qoKX40PEsv9x0rxE6nwSPDrQ8QtIOM02aGzIlOy+PHqWJk71VvIYjtXGP2+XzaEH2LQnH2/k+DxqQeeD2EpFhiCLV96gnQ+BudLpEDdc5tC7oMXzYNC/SQv/2r3dpuwDgw3NjYBGK7okE+QdxAlO94ZztqUznxXv+ZgZ+ThrQwuSOZS6FFmk1SFTllxkpAU0qr0kFwpT4tG6kiev4dnIlQHSmbBmO111Q4QgeYNbn6YwCO+p+w5E3+JI3J2kcLGPpy0O0HGJW2gAzrFNXQHZWhhqSBrd4p82lfAyq3lFzmHt0820SN+RyyPlE398fznH6hPRaFeCHPGdFbU53sy7kiiU27YetiSHzgJDEFQWKp8deTx29Yt1yBZ0DYt9aga0kTYu7VU1jtp42T90dM00qX9YGY79QlMvGwoini/R2MOyQkx4mjKVZB3pFC+B7bHsQyd5yUfc9vvPgYztAcTpqUZiRD0n5rLF3w17/B4i0WPaOT5RbB5/AOr8LEupdyeYBto0sTtVhl/kywDkzgc4ihNfz9GcUHX5t3dcyoVRH3iAyFV7+NB/miMSVPhZYyNvuEkXDvp4SzlBVGSKavvbrHmYnFOXNrIX8XzXj+bA+XaXtFE5WUT7dAelCBxdCGdgnG46o1N1A8Q8w7U1H5Sng99SPmmrdsLkO8BdWSOBl8uxXJOIwkykoWpyE4A6KMjvR3tA9pHze29eAwOdrrqXPoXoRFVOqpwrxrjcmoG/e7iXTtH860W2wQVUnCnF3EpYtkcy2TtsLps3PvPu1JEKH+vtqFCcti6iwfgjx0tA4JEqN3Vik3TswqDonnvDrmcDRgyqLX6y0kjzMR4kxdtF6LbOFEgI+e9dUa0CB8mYx2m5+xWGK8a3PQPHNR4oE+oO3PBX1u2PsbQ+llv1ivtAIh4sD9fuKBlPtNQ/DbDuOWLHO938lQLl1rUF1uUVSZ1Wt1EfrxM+LT1hrLMpgIKIR9Y754JR1X6caAYqlTcNYPFCONtluQnKMQQYxGQrtGF26HUYqjM6/VE5O8CmfCzX8bp4gkYOgI8z5/yVMbDUaTcSyBPpyYM+md18X1M07riF9nvu3mcw+lEsFE/tqQiIA9ILr8Wo+Q3ADivWEv7BVd9M9Tn2o/fXg7PWj7fecBXO9mU/NV/As6s1gVdf6R2vNHKJSBzuMVdJ+hKlyW5aEaRLJ1CbIDEIqoST4tTb6zSyBhxQw4LvIlZ5Coy48PIAXrLuiJtJTnzJYE1WxlH3gwKtI7Dgh54UkdjHG6JIOJvOOrvnWs5sDgPtsPjO9R+OEHZkbc/Z+orTaSBPKFSGW85Y1lRR99OrPUwW1uYZHwFUlOZoAMTi94GIGR9H+5gc+Yl5JFphf5zEH+h3LAm9xd71ksWv8o0dXJM3BOaypVpJ+WFGWVD82dyP65feD0lmCc1WSyuGOt9TXVh8fbYpo8GNFxK/JEJ/we/5oUMLOenemlxcC7h0HQAXQXPZtDO8NJVAL91FORulNni6OkztRYGp/nTlL/a0Au9e/lpNN0Z9THvb93gCeltVm/gj8fF8GDHe00ql1VPOtZloe+gI69DKa/+7WGCVFd/3zMsaND0wzbavj4EYRykQbsS3OoQSXkCblnsap6NX8vBMQ+XF/jf2kOP9mjOP05CsRtLutZzcrg9w9Ovt3STrutq3YnUWeYdC9hThpqcsUop/kULACmUmDncS7mn3OIpOzdKF/d3pIttteAjrUDz79jWAVNaDveznN4QqQyl4ol7nBvjhteeg31Agn0MuQOw4cjnzBSLwVmpn9ks1HpI/t7dHVw+ufgUgILCfyeHcuZa/52P8y2F7CWpReouU7JSQS3EjIueykokevLx38hnkhxmmcKBPJ4IvQWggryp6ybIXS/t4PwJR+Mxk/Lum1M3GZHSwa0WT4SGJhJE7nOz9QpIiH7wIwuVvBBkdM131SDekonEq9U2mjLDgTOlTpKePlkM+Ois4j8BaLB8TMzyVojztUrlLQcaXrFhwrRPDMBtEjvcTBamVo7ObKsARD8qPybGXX74OeGE0SnfDJEATnd3Qcel2+TL5elCjsq46ylCQpRPJ+Kd9HMxyNhaU5dRZvNGcuMavCCvWhOOMm25K/as60/GFMElNdkRdHVnQdbAdhBKLqADPWjkTudjJOKizabvWhG/YTw7x5gdslfFRmE2ZMyf/DT01d6641+oUuY8/0nTrAQ19FFlnW2oMmqhqP8yOGTNuoyaJhmQiwZVm1kjhwk8Yxa9zxZ8fmRVVYFQGEA5cB7TeCKKdWUIBZqxD/FFi9Ft7rTGvD8/4GoeLnLgumLZuRK/0AG/cq/s98xyLl+r/oV/AVn9IIEoQqCwY7N0WBWW/WdqsfOAPH/U4p3jtU02oR5uGwZ7kmChNhe9lAoF5YhpWcyc7RRUOOUZQmmB7aN2cGhdsXYjQctcBWDKquL2YeGgvygD1XYzsAd7MkcXWJVrQE82v/GsStuFRq7BzTwIh+6wRms67fyhG+0C20Hbr7jkgYXg+lZfXuO5wc/hpPfW20DsFn+KaTou93DwKjM0Ms0hQnkpfpz9+DHMQcJ+aQm8/vqJWt8R4+BG3mtXHuKcdV7d6fGCxD1goV3JOZHX2Byddfbs/3asaCVdFw2UrzVJRdVLpZqeK8ynJdNSsMzEl3ndi8GeWAaFTleMAUrstwJZalvDjjQJYffFu1ncN/d4m1NEJbvaGF3ytVO4w3aAXImvnOWGzg1S3wC3h8FxfNvOg/4zt8X9IF02WcjQN","base64")).toString()),MJr);function rUr(e,t){return[e?`${e} +`),o+=r,o+="}",o}function QGt(e,t,r,n){let{next:a}=PAs[r],o=a[e]||a["*"];return MAs(t,o,n)}function MAs(e,t,r){let{collapsed:n}=PAs[t];return Array.isArray(e)?n?V_l(e,t,r):W_l(e,t,r):typeof e=="object"&&e!==null?n?O_l(e,t,r):P_l(e,t,r):JSON.stringify(e)}function HAs(e){return MAs(e,"TOP_LEVEL","")}function S7e(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function M_l(e){let t=new Map,r=S7e(e.fallbackExclusionList||[],[({name:n,reference:a})=>n,({name:n,reference:a})=>a]);for(let{name:n,reference:a}of r){let o=t.get(n);typeof o>"u"&&t.set(n,o=new Set),o.add(a)}return Array.from(t).map(([n,a])=>[n,Array.from(a)])}function H_l(e){return S7e(e.fallbackPool||[],([t])=>t)}function Y_l(e){let t=[],r=e.dependencyTreeRoots.find(n=>e.packageRegistry.get(n.name)?.get(n.reference)?.packageLocation==="./");for(let[n,a]of S7e(e.packageRegistry,([o])=>o===null?"0":`1${o}`)){if(n===null)continue;let o=[];t.push([n,o]);for(let[l,{packageLocation:A,packageDependencies:f,packagePeers:I,linkType:C,discardFromLookup:b}]of S7e(a,([E])=>E===null?"0":`1${E}`)){if(l===null)continue;let E=[];n!==null&&l!==null&&!f.has(n)&&E.push([n,l]);for(let[J,ae]of f)E.push([J,ae]);let N=S7e(E,([J])=>J),B=I&&I.size>0?Array.from(I):void 0,Q={packageLocation:A,packageDependencies:N,packagePeers:B,linkType:C,discardFromLookup:b||void 0};o.push([l,Q]),r&&n===r.name&&l===r.reference&&t.unshift([null,[[null,Q]]])}}return t}function aUr(e){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:e.dependencyTreeRoots,enableTopLevelFallback:e.enableTopLevelFallback||!1,ignorePatternData:e.ignorePattern||null,pnpZipBackend:e.pnpZipBackend,fallbackExclusionList:M_l(e),fallbackPool:H_l(e),packageRegistryData:Y_l(e)}}var UJr,Q_l=()=>(typeof UJr>"u"&&(UJr=FAs.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),UJr);function cUr(e,t){return[e?`${e} `:"",`/* eslint-disable */ `,`// @ts-nocheck `,`"use strict"; `,` `,t,` -`,UCl()].join("")}function KCl(e){return JSON.stringify(e,null,2)}function jCl(e){return`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ -`)}'`}function zCl(e){return[`const RAW_RUNTIME_STATE = -`,`${jCl(MAs(e))}; +`,Q_l()].join("")}function X_l(e){return JSON.stringify(e,null,2)}function J_l(e){return`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ +`)}'`}function U_l(e){return[`const RAW_RUNTIME_STATE = +`,`${J_l(HAs(e))}; `,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { `,` return hydrateRuntimeState(JSON.parse(RAW_RUNTIME_STATE), {basePath: basePath || __dirname}); `,`} -`].join("")}function qCl(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { +`].join("")}function K_l(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { `,` const fs = require('fs'); `,` const path = require('path'); `,` const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(OGt.pnpData)}); `,` return hydrateRuntimeState(JSON.parse(fs.readFileSync(pnpDataFilepath, 'utf8')), {basePath: basePath || __dirname}); `,`} -`].join("")}function $Cl(e){let t=tUr(e),r=zCl(t);return rUr(e.shebang,r)}function e_l(e){let t=tUr(e),r=qCl(),n=rUr(e.shebang,r);return{dataFile:KCl(t),loaderFile:n}}function HAs(e,{basePath:t}){let r=Rc.toPortablePath(t),n=fh.resolve(r),a=e.ignorePatternData!==null?new RegExp(e.ignorePatternData):null,o=new Map,l=new Map(e.packageRegistryData.map(([b,E])=>[b,new Map(E.map(([N,B])=>{if(b===null!=(N===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let F=B.discardFromLookup??!1,Q={name:b,reference:N},J=o.get(B.packageLocation);J?(J.discardFromLookup=J.discardFromLookup&&F,F||(J.locator=Q)):o.set(B.packageLocation,{locator:Q,discardFromLookup:F});let ae=null;return[N,{packageDependencies:new Map(B.packageDependencies),packagePeers:new Set(B.packagePeers),linkType:B.linkType,discardFromLookup:F,get packageLocation(){return ae||(ae=fh.join(n,B.packageLocation))}}]}))])),A=new Map(e.fallbackExclusionList.map(([b,E])=>[b,new Set(E)])),f=new Map(e.fallbackPool),I=e.dependencyTreeRoots,C=e.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:I,enableTopLevelFallback:C,fallbackExclusionList:A,pnpZipBackend:e.pnpZipBackend,fallbackPool:f,ignorePattern:a,packageLocatorsByLocations:o,packageRegistry:l}}var YAs=Array.isArray,zJr=JSON.stringify,XGt=Object.getOwnPropertyNames,JGt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),vAs=(e,t)=>RegExp.prototype.exec.call(e,t),BAs=(e,...t)=>RegExp.prototype[Symbol.replace].apply(e,t),ZGe=(e,...t)=>String.prototype.endsWith.apply(e,t),QAs=(e,...t)=>String.prototype.includes.apply(e,t),XAs=(e,...t)=>String.prototype.lastIndexOf.apply(e,t),HGt=(e,...t)=>String.prototype.indexOf.apply(e,t),t_l=(e,...t)=>String.prototype.replace.apply(e,t),v0e=(e,...t)=>String.prototype.slice.apply(e,t),Wue=(e,...t)=>String.prototype.startsWith.apply(e,t),r_l=Map,n_l=JSON.parse;function w7e(e,t,r){return class extends r{constructor(...n){super(t(...n)),this.code=e,this.name=`${r.name} [${e}]`}}}var i_l=w7e("ERR_PACKAGE_IMPORT_NOT_DEFINED",(e,t,r)=>`Package import specifier "${e}" is not defined${t?` in package ${t}package.json`:""} imported from ${r}`,TypeError),JAs=w7e("ERR_INVALID_MODULE_SPECIFIER",(e,t,r=void 0)=>`Invalid module "${e}" ${t}${r?` imported from ${r}`:""}`,TypeError),s_l=w7e("ERR_INVALID_PACKAGE_TARGET",(e,t,r,n=!1,a=void 0)=>{let o=typeof r=="string"&&!n&&r.length&&!Wue(r,"./");return t==="."?(bCl.default(n===!1),`Invalid "exports" main target ${zJr(r)} defined in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`):`Invalid "${n?"imports":"exports"}" target ${zJr(r)} defined for '${t}' in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`},Error),nUr=w7e("ERR_INVALID_PACKAGE_CONFIG",(e,t,r)=>`Invalid package config ${e}${t?` while importing ${t}`:""}${r?`. ${r}`:""}`,Error),o_l=w7e("ERR_PACKAGE_PATH_NOT_EXPORTED",(e,t,r=void 0)=>t==="."?`No "exports" main defined in ${e}package.json${r?` imported from ${r}`:""}`:`Package subpath '${t}' is not defined by "exports" in ${e}package.json${r?` imported from ${r}`:""}`,Error);function a_l(e,t){let r=Object.create(null);for(let n=0;nt):e+t}S7e(r,e,n,l,a)}vAs(wAs,v0e(e,2))!==null&&S7e(r,e,n,l,a);let f=new URL(e,n),I=f.pathname,C=new URL(".",n).pathname;if(Wue(I,C)||S7e(r,e,n,l,a),t==="")return f;if(vAs(wAs,t)!==null){let b=o?t_l(r,"*",()=>t):r+t;g_l(b,n,l,a)}return o?new URL(BAs(TAs,f.href,()=>t)):new URL(t,f)}function d_l(e){let t=+e;return`${t}`!==e?!1:t>=0&&t<4294967295}function LGe(e,t,r,n,a,o,l,A){if(typeof t=="string")return A_l(t,r,n,e,a,o,l);if(YAs(t)){if(t.length===0)return null;let f;for(let I=0;Io?-1:o>a||r===-1?1:n===-1||e.length>t.length?-1:t.length>e.length?1:0}function p_l(e,t,r){if(typeof e=="string"||YAs(e))return!0;if(typeof e!="object"||e===null)return!1;let n=XGt(e),a=!1,o=0;for(let l=0;l=I.length&&ZGe(t,b)&&UAs(o,I)===1&&XAs(I,"*")===C&&(o=I,l=v0e(t,C,t.length-b.length))}}if(o){let f=r[o],I=LGe(e,f,l,o,n,!0,!1,a);return I==null&&HJr(t,e,n),I}HJr(t,e,n)}function h_l({name:e,base:t,conditions:r,readFileSyncFn:n}){if(e==="#"||Wue(e,"#/")||ZGe(e,"/")){let l="is not a valid internal imports specifier name";throw new JAs(e,l,sB.fileURLToPath(t))}let a,o=l_l(t,n);if(o.exists){a=sB.pathToFileURL(o.pjsonPath);let l=o.imports;if(l)if(JGt(l,e)&&!QAs(e,"*")){let A=LGe(a,l[e],"",e,t,!1,!0,r);if(A!=null)return A}else{let A="",f,I=XGt(l);for(let C=0;C=b.length&&ZGe(e,N)&&UAs(A,b)===1&&XAs(b,"*")===E&&(A=b,f=v0e(e,E,e.length-N.length))}}if(A){let C=l[A],b=LGe(a,C,f,A,t,!0,!0,r);if(b!=null)return b}}}u_l(e,a,t)}var BT=(e=>(e.API_ERROR="API_ERROR",e.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",e.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",e.MISSING_DEPENDENCY="MISSING_DEPENDENCY",e.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",e.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",e.INTERNAL="INTERNAL",e.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",e.UNSUPPORTED="UNSUPPORTED",e))(BT||{}),m_l=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function KR(e,t,r={},n){n??=m_l.has(e)?"MODULE_NOT_FOUND":e;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(t),{code:{...a,value:n},pnpCode:{...a,value:e},data:{...a,value:r}})}function Tj(e){return Rc.normalize(Rc.fromPortablePath(e))}var qJr=Symbol("arg flag"),MH=class e extends Error{constructor(t,r){super(t),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,e.prototype)}};function B7e(e,{argv:t=process.argv.slice(2),permissive:r=!1,stopAtPositional:n=!1}={}){if(!e)throw new MH("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},o={},l={};for(let A of Object.keys(e)){if(!A)throw new MH("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(A[0]!=="-")throw new MH(`argument key must start with '-' but found: '${A}'`,"ARG_CONFIG_NONOPT_KEY");if(A.length===1)throw new MH(`argument key must have a name; singular '-' keys are not allowed: ${A}`,"ARG_CONFIG_NONAME_KEY");if(typeof e[A]=="string"){o[A]=e[A];continue}let f=e[A],I=!1;if(Array.isArray(f)&&f.length===1&&typeof f[0]=="function"){let[C]=f;f=(b,E,N=[])=>(N.push(C(b,E,N[N.length-1])),N),I=C===Boolean||C[qJr]===!0}else if(typeof f=="function")I=f===Boolean||f[qJr]===!0;else throw new MH(`type missing or not a function or valid array type: ${A}`,"ARG_CONFIG_VAD_TYPE");if(A[1]!=="-"&&A.length>2)throw new MH(`short argument keys (with a single hyphen) must have only one character: ${A}`,"ARG_CONFIG_SHORTOPT_TOOLONG");l[A]=[f,I]}for(let A=0,f=t.length;A0){a._=a._.concat(t.slice(A));break}if(I==="--"){a._=a._.concat(t.slice(A+1));break}if(I.length>1&&I[0]==="-"){let C=I[1]==="-"||I.length===2?[I]:I.slice(1).split("").map(b=>`-${b}`);for(let b=0;b1&&t[A+1][0]==="-"&&!(t[A+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(Q===Number||typeof BigInt<"u"&&Q===BigInt))){let ae=N===F?"":` (alias for ${F})`;throw new MH(`option requires argument: ${N}${ae}`,"ARG_MISSING_REQUIRED_LONGARG")}a[F]=Q(t[A+1],F,a[F]),++A}else a[F]=Q(B,F,a[F])}}else a._.push(I)}return a}B7e.flag=e=>(e[qJr]=!0,e);B7e.COUNT=B7e.flag((e,t,r)=>(r||0)+1);B7e.ArgError=MH;var C_l=B7e;function __l(e){return y_l(),$Jr[e]}var $Jr;function y_l(){$Jr||($Jr={"--conditions":[],...NAs(b_l()),...NAs(process.execArgv)})}function NAs(e){return C_l({"--conditions":[String],"-C":"--conditions"},{argv:e,permissive:!0})}function b_l(){let e=[],t=E_l(process.env.NODE_OPTIONS||"",e);return e.length,t}function E_l(e,t){let r=[],n=!1,a=!0;for(let o=0;o[b,new Map(E.map(([N,B])=>{if(b===null!=(N===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let F=B.discardFromLookup??!1,Q={name:b,reference:N},J=o.get(B.packageLocation);J?(J.discardFromLookup=J.discardFromLookup&&F,F||(J.locator=Q)):o.set(B.packageLocation,{locator:Q,discardFromLookup:F});let ae=null;return[N,{packageDependencies:new Map(B.packageDependencies),packagePeers:new Set(B.packagePeers),linkType:B.linkType,discardFromLookup:F,get packageLocation(){return ae||(ae=fh.join(n,B.packageLocation))}}]}))])),A=new Map(e.fallbackExclusionList.map(([b,E])=>[b,new Set(E)])),f=new Map(e.fallbackPool),I=e.dependencyTreeRoots,C=e.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:I,enableTopLevelFallback:C,fallbackExclusionList:A,pnpZipBackend:e.pnpZipBackend,fallbackPool:f,ignorePattern:a,packageLocatorsByLocations:o,packageRegistry:l}}var QAs=Array.isArray,nUr=JSON.stringify,XGt=Object.getOwnPropertyNames,JGt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),BAs=(e,t)=>RegExp.prototype.exec.call(e,t),wAs=(e,...t)=>RegExp.prototype[Symbol.replace].apply(e,t),ZGe=(e,...t)=>String.prototype.endsWith.apply(e,t),XAs=(e,...t)=>String.prototype.includes.apply(e,t),JAs=(e,...t)=>String.prototype.lastIndexOf.apply(e,t),HGt=(e,...t)=>String.prototype.indexOf.apply(e,t),q_l=(e,...t)=>String.prototype.replace.apply(e,t),v0e=(e,...t)=>String.prototype.slice.apply(e,t),Oue=(e,...t)=>String.prototype.startsWith.apply(e,t),$_l=Map,e0l=JSON.parse;function B7e(e,t,r){return class extends r{constructor(...n){super(t(...n)),this.code=e,this.name=`${r.name} [${e}]`}}}var t0l=B7e("ERR_PACKAGE_IMPORT_NOT_DEFINED",(e,t,r)=>`Package import specifier "${e}" is not defined${t?` in package ${t}package.json`:""} imported from ${r}`,TypeError),UAs=B7e("ERR_INVALID_MODULE_SPECIFIER",(e,t,r=void 0)=>`Invalid module "${e}" ${t}${r?` imported from ${r}`:""}`,TypeError),r0l=B7e("ERR_INVALID_PACKAGE_TARGET",(e,t,r,n=!1,a=void 0)=>{let o=typeof r=="string"&&!n&&r.length&&!Oue(r,"./");return t==="."?(C_l.default(n===!1),`Invalid "exports" main target ${nUr(r)} defined in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`):`Invalid "${n?"imports":"exports"}" target ${nUr(r)} defined for '${t}' in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`},Error),lUr=B7e("ERR_INVALID_PACKAGE_CONFIG",(e,t,r)=>`Invalid package config ${e}${t?` while importing ${t}`:""}${r?`. ${r}`:""}`,Error),n0l=B7e("ERR_PACKAGE_PATH_NOT_EXPORTED",(e,t,r=void 0)=>t==="."?`No "exports" main defined in ${e}package.json${r?` imported from ${r}`:""}`:`Package subpath '${t}' is not defined by "exports" in ${e}package.json${r?` imported from ${r}`:""}`,Error);function i0l(e,t){let r=Object.create(null);for(let n=0;nt):e+t}E7e(r,e,n,l,a)}BAs(TAs,v0e(e,2))!==null&&E7e(r,e,n,l,a);let f=new URL(e,n),I=f.pathname,C=new URL(".",n).pathname;if(Oue(I,C)||E7e(r,e,n,l,a),t==="")return f;if(BAs(TAs,t)!==null){let b=o?q_l(r,"*",()=>t):r+t;c0l(b,n,l,a)}return o?new URL(wAs(RAs,f.href,()=>t)):new URL(t,f)}function u0l(e){let t=+e;return`${t}`!==e?!1:t>=0&&t<4294967295}function LGe(e,t,r,n,a,o,l,A){if(typeof t=="string")return l0l(t,r,n,e,a,o,l);if(QAs(t)){if(t.length===0)return null;let f;for(let I=0;Io?-1:o>a||r===-1?1:n===-1||e.length>t.length?-1:t.length>e.length?1:0}function g0l(e,t,r){if(typeof e=="string"||QAs(e))return!0;if(typeof e!="object"||e===null)return!1;let n=XGt(e),a=!1,o=0;for(let l=0;l=I.length&&ZGe(t,b)&&KAs(o,I)===1&&JAs(I,"*")===C&&(o=I,l=v0e(t,C,t.length-b.length))}}if(o){let f=r[o],I=LGe(e,f,l,o,n,!0,!1,a);return I==null&&KJr(t,e,n),I}KJr(t,e,n)}function p0l({name:e,base:t,conditions:r,readFileSyncFn:n}){if(e==="#"||Oue(e,"#/")||ZGe(e,"/")){let l="is not a valid internal imports specifier name";throw new UAs(e,l,oB.fileURLToPath(t))}let a,o=o0l(t,n);if(o.exists){a=oB.pathToFileURL(o.pjsonPath);let l=o.imports;if(l)if(JGt(l,e)&&!XAs(e,"*")){let A=LGe(a,l[e],"",e,t,!1,!0,r);if(A!=null)return A}else{let A="",f,I=XGt(l);for(let C=0;C=b.length&&ZGe(e,N)&&KAs(A,b)===1&&JAs(b,"*")===E&&(A=b,f=v0e(e,E,e.length-N.length))}}if(A){let C=l[A],b=LGe(a,C,f,A,t,!0,!0,r);if(b!=null)return b}}}a0l(e,a,t)}var wT=(e=>(e.API_ERROR="API_ERROR",e.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",e.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",e.MISSING_DEPENDENCY="MISSING_DEPENDENCY",e.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",e.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",e.INTERNAL="INTERNAL",e.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",e.UNSUPPORTED="UNSUPPORTED",e))(wT||{}),f0l=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function jR(e,t,r={},n){n??=f0l.has(e)?"MODULE_NOT_FOUND":e;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(t),{code:{...a,value:n},pnpCode:{...a,value:e},data:{...a,value:r}})}function Rj(e){return Rc.normalize(Rc.fromPortablePath(e))}var iUr=Symbol("arg flag"),HH=class e extends Error{constructor(t,r){super(t),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,e.prototype)}};function v7e(e,{argv:t=process.argv.slice(2),permissive:r=!1,stopAtPositional:n=!1}={}){if(!e)throw new HH("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},o={},l={};for(let A of Object.keys(e)){if(!A)throw new HH("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(A[0]!=="-")throw new HH(`argument key must start with '-' but found: '${A}'`,"ARG_CONFIG_NONOPT_KEY");if(A.length===1)throw new HH(`argument key must have a name; singular '-' keys are not allowed: ${A}`,"ARG_CONFIG_NONAME_KEY");if(typeof e[A]=="string"){o[A]=e[A];continue}let f=e[A],I=!1;if(Array.isArray(f)&&f.length===1&&typeof f[0]=="function"){let[C]=f;f=(b,E,N=[])=>(N.push(C(b,E,N[N.length-1])),N),I=C===Boolean||C[iUr]===!0}else if(typeof f=="function")I=f===Boolean||f[iUr]===!0;else throw new HH(`type missing or not a function or valid array type: ${A}`,"ARG_CONFIG_VAD_TYPE");if(A[1]!=="-"&&A.length>2)throw new HH(`short argument keys (with a single hyphen) must have only one character: ${A}`,"ARG_CONFIG_SHORTOPT_TOOLONG");l[A]=[f,I]}for(let A=0,f=t.length;A0){a._=a._.concat(t.slice(A));break}if(I==="--"){a._=a._.concat(t.slice(A+1));break}if(I.length>1&&I[0]==="-"){let C=I[1]==="-"||I.length===2?[I]:I.slice(1).split("").map(b=>`-${b}`);for(let b=0;b1&&t[A+1][0]==="-"&&!(t[A+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(Q===Number||typeof BigInt<"u"&&Q===BigInt))){let ae=N===F?"":` (alias for ${F})`;throw new HH(`option requires argument: ${N}${ae}`,"ARG_MISSING_REQUIRED_LONGARG")}a[F]=Q(t[A+1],F,a[F]),++A}else a[F]=Q(B,F,a[F])}}else a._.push(I)}return a}v7e.flag=e=>(e[iUr]=!0,e);v7e.COUNT=v7e.flag((e,t,r)=>(r||0)+1);v7e.ArgError=HH;var I0l=v7e;function h0l(e){return m0l(),sUr[e]}var sUr;function m0l(){sUr||(sUr={"--conditions":[],...DAs(C0l()),...DAs(process.execArgv)})}function DAs(e){return I0l({"--conditions":[String],"-C":"--conditions"},{argv:e,permissive:!0})}function C0l(){let e=[],t=_0l(process.env.NODE_OPTIONS||"",e);return e.length,t}function _0l(e,t){let r=[],n=!1,a=!0;for(let o=0;oparseInt(e,10)),S_l=YJr>19||YJr===19&&DAs>=2||YJr===18&&DAs>=13;function kAs(e){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send){let t=e.map(r=>Rc.fromPortablePath(MGt.resolveVirtual(r)));if(S_l)process.send({"watch:require":t});else for(let r of t)process.send({"watch:require":r})}}function KAs(e,t){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,n=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,o=/^(\/|\.{1,2}(\/|$))/,l=/\/$/,A=/^\.{0,2}\//,f={name:null,reference:null},I=[],C=new Set;if(e.enableTopLevelFallback===!0&&I.push(f),t.compatibilityMode!==!1)for(let Bt of["react-scripts","gatsby"]){let Dt=e.packageRegistry.get(Bt);if(Dt)for(let Fr of Dt.keys()){if(Fr===null)throw new Error("Assertion failed: This reference shouldn't be null");I.push({name:Bt,reference:Fr})}}let{ignorePattern:b,packageRegistry:E,packageLocatorsByLocations:N}=e;function B(Bt,Dt){return{fn:Bt,args:Dt,error:null,result:null}}function F(Bt){let Dt=process.stderr?.hasColors?.()??process.stdout.isTTY,Fr=(lr,cr)=>`\x1B[${lr}m${cr}\x1B[0m`,$t=Bt.error;console.error($t?Fr("31;1",`\u2716 ${Bt.error?.message.replace(/\n.*/s,"")}`):Fr("33;1","\u203C Resolution")),Bt.args.length>0&&console.error();for(let lr of Bt.args)console.error(` ${Fr("37;1","In \u2190")} ${bAs.inspect(lr,{colors:Dt,compact:!0})}`);Bt.result&&(console.error(),console.error(` ${Fr("37;1","Out \u2192")} ${bAs.inspect(Bt.result,{colors:Dt,compact:!0})}`));let Xt=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Xt.length>0){console.error();for(let lr of Xt)console.error(` ${Fr("38;5;244",lr)}`)}console.error()}function Q(Bt,Dt){if(t.allowDebug===!1)return Dt;if(Number.isFinite(n)){if(n>=2)return(...Fr)=>{let $t=B(Bt,Fr);try{return $t.result=Dt(...Fr)}catch(Xt){throw $t.error=Xt}finally{F($t)}};if(n>=1)return(...Fr)=>{try{return Dt(...Fr)}catch($t){let Xt=B(Bt,Fr);throw Xt.error=$t,F(Xt),$t}}}return Dt}function J(Bt){let Dt=k(Bt);if(!Dt)throw KR(BT.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return Dt}function ae(Bt){if(Bt.name===null)return!0;for(let Dt of e.dependencyTreeRoots)if(Dt.name===Bt.name&&Dt.reference===Bt.reference)return!0;return!1}let ne=new Set(["node","require",...__l("--conditions")]);function ce(Bt,Dt=ne,Fr){let $t=Le(fh.join(Bt,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if($t===null)throw KR(BT.INTERNAL,`The locator that owns the "${Bt}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Xt}=J($t),lr=fh.join(Xt,OGt.manifest);if(!t.fakeFs.existsSync(lr))return null;let cr=JSON.parse(t.fakeFs.readFileSync(lr,"utf8"));if(cr.exports==null)return null;let Ar=fh.contains(Xt,Bt);if(Ar===null)throw KR(BT.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");Ar!=="."&&!A.test(Ar)&&(Ar=`./${Ar}`);try{let qr=I_l({packageJSONUrl:sB.pathToFileURL(Rc.fromPortablePath(lr)),packageSubpath:Ar,exports:cr.exports,base:Fr?sB.pathToFileURL(Rc.fromPortablePath(Fr)):null,conditions:Dt});return Rc.toPortablePath(sB.fileURLToPath(qr))}catch(qr){throw KR(BT.EXPORTS_RESOLUTION_FAILED,qr.message,{unqualifiedPath:Tj(Bt),locator:$t,pkgJson:cr,subpath:Tj(Ar),conditions:Dt},qr.code)}}function fe(Bt,Dt,{extensions:Fr}){let $t;try{Dt.push(Bt),$t=t.fakeFs.statSync(Bt)}catch{}if($t&&!$t.isDirectory())return t.fakeFs.realpathSync(Bt);if($t&&$t.isDirectory()){let Xt;try{Xt=JSON.parse(t.fakeFs.readFileSync(fh.join(Bt,OGt.manifest),"utf8"))}catch{}let lr;if(Xt&&Xt.main&&(lr=fh.resolve(Bt,Xt.main)),lr&&lr!==Bt){let cr=fe(lr,Dt,{extensions:Fr});if(cr!==null)return cr}}for(let Xt=0,lr=Fr.length;Xt{let Ar=JSON.stringify(cr.name);if($t.has(Ar))return;$t.add(Ar);let qr=tt(cr);for(let yn of qr)if(J(yn).packagePeers.has(Bt))Xt(yn);else{let zt=Fr.get(yn.name);typeof zt>"u"&&Fr.set(yn.name,zt=new Set),zt.add(yn.reference)}};Xt(Dt);let lr=[];for(let cr of[...Fr.keys()].sort())for(let Ar of[...Fr.get(cr)].sort())lr.push({name:cr,reference:Ar});return lr}function Le(Bt,{resolveIgnored:Dt=!1,includeDiscardFromLookup:Fr=!1}={}){if(be(Bt)&&!Dt)return null;let $t=fh.relative(e.basePath,Bt);$t.match(o)||($t=`./${$t}`),$t.endsWith("/")||($t=`${$t}/`);do{let Xt=N.get($t);if(typeof Xt>"u"||Xt.discardFromLookup&&!Fr){$t=$t.substring(0,$t.lastIndexOf("/",$t.length-2)+1);continue}return Xt.locator}while($t!=="");return null}function Je(Bt){try{return t.fakeFs.readFileSync(Rc.toPortablePath(Bt),"utf8")}catch(Dt){if(Dt.code==="ENOENT")return;throw Dt}}function ft(Bt,Dt,{considerBuiltins:Fr=!0}={}){if(Bt.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(Bt==="pnpapi")return Rc.toPortablePath(t.pnpapiResolution);if(Fr&&S0e.isBuiltin(Bt))return null;let $t=Tj(Bt),Xt=Dt&&Tj(Dt);if(Dt&&be(Dt)&&(!fh.isAbsolute(Bt)||Le(Bt)===null)){let Ar=de(Bt,Dt);if(Ar===!1)throw KR(BT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) +`),r}var[jJr,kAs]=process.versions.node.split(".").map(e=>parseInt(e,10)),y0l=jJr>19||jJr===19&&kAs>=2||jJr===18&&kAs>=13;function xAs(e){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send){let t=e.map(r=>Rc.fromPortablePath(MGt.resolveVirtual(r)));if(y0l)process.send({"watch:require":t});else for(let r of t)process.send({"watch:require":r})}}function jAs(e,t){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,n=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,o=/^(\/|\.{1,2}(\/|$))/,l=/\/$/,A=/^\.{0,2}\//,f={name:null,reference:null},I=[],C=new Set;if(e.enableTopLevelFallback===!0&&I.push(f),t.compatibilityMode!==!1)for(let Bt of["react-scripts","gatsby"]){let Nt=e.packageRegistry.get(Bt);if(Nt)for(let Fr of Nt.keys()){if(Fr===null)throw new Error("Assertion failed: This reference shouldn't be null");I.push({name:Bt,reference:Fr})}}let{ignorePattern:b,packageRegistry:E,packageLocatorsByLocations:N}=e;function B(Bt,Nt){return{fn:Bt,args:Nt,error:null,result:null}}function F(Bt){let Nt=process.stderr?.hasColors?.()??process.stdout.isTTY,Fr=(lr,cr)=>`\x1B[${lr}m${cr}\x1B[0m`,$t=Bt.error;console.error($t?Fr("31;1",`\u2716 ${Bt.error?.message.replace(/\n.*/s,"")}`):Fr("33;1","\u203C Resolution")),Bt.args.length>0&&console.error();for(let lr of Bt.args)console.error(` ${Fr("37;1","In \u2190")} ${EAs.inspect(lr,{colors:Nt,compact:!0})}`);Bt.result&&(console.error(),console.error(` ${Fr("37;1","Out \u2192")} ${EAs.inspect(Bt.result,{colors:Nt,compact:!0})}`));let Xt=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Xt.length>0){console.error();for(let lr of Xt)console.error(` ${Fr("38;5;244",lr)}`)}console.error()}function Q(Bt,Nt){if(t.allowDebug===!1)return Nt;if(Number.isFinite(n)){if(n>=2)return(...Fr)=>{let $t=B(Bt,Fr);try{return $t.result=Nt(...Fr)}catch(Xt){throw $t.error=Xt}finally{F($t)}};if(n>=1)return(...Fr)=>{try{return Nt(...Fr)}catch($t){let Xt=B(Bt,Fr);throw Xt.error=$t,F(Xt),$t}}}return Nt}function J(Bt){let Nt=k(Bt);if(!Nt)throw jR(wT.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return Nt}function ae(Bt){if(Bt.name===null)return!0;for(let Nt of e.dependencyTreeRoots)if(Nt.name===Bt.name&&Nt.reference===Bt.reference)return!0;return!1}let ne=new Set(["node","require",...h0l("--conditions")]);function ce(Bt,Nt=ne,Fr){let $t=Le(fh.join(Bt,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if($t===null)throw jR(wT.INTERNAL,`The locator that owns the "${Bt}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Xt}=J($t),lr=fh.join(Xt,OGt.manifest);if(!t.fakeFs.existsSync(lr))return null;let cr=JSON.parse(t.fakeFs.readFileSync(lr,"utf8"));if(cr.exports==null)return null;let Ar=fh.contains(Xt,Bt);if(Ar===null)throw jR(wT.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");Ar!=="."&&!A.test(Ar)&&(Ar=`./${Ar}`);try{let qr=d0l({packageJSONUrl:oB.pathToFileURL(Rc.fromPortablePath(lr)),packageSubpath:Ar,exports:cr.exports,base:Fr?oB.pathToFileURL(Rc.fromPortablePath(Fr)):null,conditions:Nt});return Rc.toPortablePath(oB.fileURLToPath(qr))}catch(qr){throw jR(wT.EXPORTS_RESOLUTION_FAILED,qr.message,{unqualifiedPath:Rj(Bt),locator:$t,pkgJson:cr,subpath:Rj(Ar),conditions:Nt},qr.code)}}function fe(Bt,Nt,{extensions:Fr}){let $t;try{Nt.push(Bt),$t=t.fakeFs.statSync(Bt)}catch{}if($t&&!$t.isDirectory())return t.fakeFs.realpathSync(Bt);if($t&&$t.isDirectory()){let Xt;try{Xt=JSON.parse(t.fakeFs.readFileSync(fh.join(Bt,OGt.manifest),"utf8"))}catch{}let lr;if(Xt&&Xt.main&&(lr=fh.resolve(Bt,Xt.main)),lr&&lr!==Bt){let cr=fe(lr,Nt,{extensions:Fr});if(cr!==null)return cr}}for(let Xt=0,lr=Fr.length;Xt{let Ar=JSON.stringify(cr.name);if($t.has(Ar))return;$t.add(Ar);let qr=tt(cr);for(let _n of qr)if(J(_n).packagePeers.has(Bt))Xt(_n);else{let zt=Fr.get(_n.name);typeof zt>"u"&&Fr.set(_n.name,zt=new Set),zt.add(_n.reference)}};Xt(Nt);let lr=[];for(let cr of[...Fr.keys()].sort())for(let Ar of[...Fr.get(cr)].sort())lr.push({name:cr,reference:Ar});return lr}function Le(Bt,{resolveIgnored:Nt=!1,includeDiscardFromLookup:Fr=!1}={}){if(be(Bt)&&!Nt)return null;let $t=fh.relative(e.basePath,Bt);$t.match(o)||($t=`./${$t}`),$t.endsWith("/")||($t=`${$t}/`);do{let Xt=N.get($t);if(typeof Xt>"u"||Xt.discardFromLookup&&!Fr){$t=$t.substring(0,$t.lastIndexOf("/",$t.length-2)+1);continue}return Xt.locator}while($t!=="");return null}function Je(Bt){try{return t.fakeFs.readFileSync(Rc.toPortablePath(Bt),"utf8")}catch(Nt){if(Nt.code==="ENOENT")return;throw Nt}}function ft(Bt,Nt,{considerBuiltins:Fr=!0}={}){if(Bt.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(Bt==="pnpapi")return Rc.toPortablePath(t.pnpapiResolution);if(Fr&&S0e.isBuiltin(Bt))return null;let $t=Rj(Bt),Xt=Nt&&Rj(Nt);if(Nt&&be(Nt)&&(!fh.isAbsolute(Bt)||Le(Bt)===null)){let Ar=de(Bt,Nt);if(Ar===!1)throw jR(wT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) Require request: "${$t}" Required by: ${Xt} -`,{request:$t,issuer:Xt});return Rc.toPortablePath(Ar)}let lr,cr=Bt.match(a);if(cr){if(!Dt)throw KR(BT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$t,issuer:Xt});let[,Ar,qr]=cr,yn=Le(Dt);if(!yn){let xi=de(Bt,Dt);if(xi===!1)throw KR(BT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). +`,{request:$t,issuer:Xt});return Rc.toPortablePath(Ar)}let lr,cr=Bt.match(a);if(cr){if(!Nt)throw jR(wT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$t,issuer:Xt});let[,Ar,qr]=cr,_n=Le(Nt);if(!_n){let xi=de(Bt,Nt);if(xi===!1)throw jR(wT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). Require path: "${$t}" Required by: ${Xt} -`,{request:$t,issuer:Xt});return Rc.toPortablePath(xi)}let zt=J(yn).packageDependencies.get(Ar),Fn=null;if(zt==null&&yn.name!==null){let xi=e.fallbackExclusionList.get(yn.name);if(!xi||!xi.has(yn.reference)){for(let ga=0,Ya=I.length;gaae(no))?Nn=KR(BT.MISSING_PEER_DEPENDENCY,`${yn.name} tried to access ${Ar} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. +`,{request:$t,issuer:Xt,dependencyName:Ar});else{let xi=ze(Ar,_n);xi.every(no=>ae(no))?Nn=jR(wT.MISSING_PEER_DEPENDENCY,`${_n.name} tried to access ${Ar} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. Required package: ${Ar}${Ar!==$t?` (via "${$t}")`:""} -Required by: ${yn.name}@${yn.reference} (via ${Xt}) +Required by: ${_n.name}@${_n.reference} (via ${Xt}) ${xi.map(no=>`Ancestor breaking the chain: ${no.name}@${no.reference} `).join("")} -`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},yn),dependencyName:Ar,brokenAncestors:xi}):Nn=KR(BT.MISSING_PEER_DEPENDENCY,`${yn.name} tried to access ${Ar} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. +`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar,brokenAncestors:xi}):Nn=jR(wT.MISSING_PEER_DEPENDENCY,`${_n.name} tried to access ${Ar} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. Required package: ${Ar}${Ar!==$t?` (via "${$t}")`:""} -Required by: ${yn.name}@${yn.reference} (via ${Xt}) +Required by: ${_n.name}@${_n.reference} (via ${Xt}) ${xi.map(no=>`Ancestor breaking the chain: ${no.name}@${no.reference} `).join("")} -`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},yn),dependencyName:Ar,brokenAncestors:xi})}else zt===void 0&&(!Fr&&S0e.isBuiltin(Bt)?ae(yn)?Nn=KR(BT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. +`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar,brokenAncestors:xi})}else zt===void 0&&(!Fr&&S0e.isBuiltin(Bt)?ae(_n)?Nn=jR(wT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. Required package: ${Ar}${Ar!==$t?` (via "${$t}")`:""} Required by: ${Xt} -`,{request:$t,issuer:Xt,dependencyName:Ar}):Nn=KR(BT.UNDECLARED_DEPENDENCY,`${yn.name} tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in ${yn.name}'s dependencies, this makes the require call ambiguous and unsound. +`,{request:$t,issuer:Xt,dependencyName:Ar}):Nn=jR(wT.UNDECLARED_DEPENDENCY,`${_n.name} tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in ${_n.name}'s dependencies, this makes the require call ambiguous and unsound. Required package: ${Ar}${Ar!==$t?` (via "${$t}")`:""} Required by: ${Xt} -`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},yn),dependencyName:Ar}):ae(yn)?Nn=KR(BT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. +`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar}):ae(_n)?Nn=jR(wT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. Required package: ${Ar}${Ar!==$t?` (via "${$t}")`:""} Required by: ${Xt} -`,{request:$t,issuer:Xt,dependencyName:Ar}):Nn=KR(BT.UNDECLARED_DEPENDENCY,`${yn.name} tried to access ${Ar}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. +`,{request:$t,issuer:Xt,dependencyName:Ar}):Nn=jR(wT.UNDECLARED_DEPENDENCY,`${_n.name} tried to access ${Ar}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. Required package: ${Ar}${Ar!==$t?` (via "${$t}")`:""} -Required by: ${yn.name}@${yn.reference} (via ${Xt}) -`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},yn),dependencyName:Ar}));if(zt==null){if(Fn===null||Nn===null)throw Nn||new Error("Assertion failed: Expected an error to have been set");zt=Fn;let xi=Nn.message.replace(/\n.*/g,"");Nn.message=xi,!C.has(xi)&&n!==0&&(C.add(xi),process.emitWarning(Nn))}let Hi=Array.isArray(zt)?{name:zt[0],reference:zt[1]}:{name:Ar,reference:zt},Ao=J(Hi);if(!Ao.packageLocation)throw KR(BT.MISSING_DEPENDENCY,`A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. +Required by: ${_n.name}@${_n.reference} (via ${Xt}) +`,{request:$t,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar}));if(zt==null){if(Fn===null||Nn===null)throw Nn||new Error("Assertion failed: Expected an error to have been set");zt=Fn;let xi=Nn.message.replace(/\n.*/g,"");Nn.message=xi,!C.has(xi)&&n!==0&&(C.add(xi),process.emitWarning(Nn))}let Hi=Array.isArray(zt)?{name:zt[0],reference:zt[1]}:{name:Ar,reference:zt},Ao=J(Hi);if(!Ao.packageLocation)throw jR(wT.MISSING_DEPENDENCY,`A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. Required package: ${Hi.name}@${Hi.reference}${Hi.name!==$t?` (via "${$t}")`:""} -Required by: ${yn.name}@${yn.reference} (via ${Xt}) -`,{request:$t,issuer:Xt,dependencyLocator:Object.assign({},Hi)});let Vr=Ao.packageLocation;qr?lr=fh.join(Vr,qr):lr=Vr}else if(fh.isAbsolute(Bt))lr=fh.normalize(Bt);else{if(!Dt)throw KR(BT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$t,issuer:Xt});let Ar=fh.resolve(Dt);Dt.match(l)?lr=fh.normalize(fh.join(Ar,Bt)):lr=fh.normalize(fh.join(fh.dirname(Ar),Bt))}return fh.normalize(lr)}function lt(Bt,Dt,Fr=ne,$t){if(o.test(Bt))return Dt;let Xt=ce(Dt,Fr,$t);return Xt?fh.normalize(Xt):Dt}function Ot(Bt,{extensions:Dt=Object.keys(S0e.Module._extensions)}={}){let Fr=[],$t=fe(Bt,Fr,{extensions:Dt});if($t)return kAs([$t]),fh.normalize($t);{kAs(Fr);let Xt=Tj(Bt),lr=Le(Bt);if(lr){let{packageLocation:cr}=J(lr),Ar=!0;try{t.fakeFs.accessSync(cr)}catch(qr){if(qr?.code==="ENOENT")Ar=!1;else{let yn=(qr?.message??qr??"empty exception thrown").replace(/^[A-Z]/,ke=>ke.toLowerCase());throw KR(BT.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${yn}). +Required by: ${_n.name}@${_n.reference} (via ${Xt}) +`,{request:$t,issuer:Xt,dependencyLocator:Object.assign({},Hi)});let Vr=Ao.packageLocation;qr?lr=fh.join(Vr,qr):lr=Vr}else if(fh.isAbsolute(Bt))lr=fh.normalize(Bt);else{if(!Nt)throw jR(wT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$t,issuer:Xt});let Ar=fh.resolve(Nt);Nt.match(l)?lr=fh.normalize(fh.join(Ar,Bt)):lr=fh.normalize(fh.join(fh.dirname(Ar),Bt))}return fh.normalize(lr)}function lt(Bt,Nt,Fr=ne,$t){if(o.test(Bt))return Nt;let Xt=ce(Nt,Fr,$t);return Xt?fh.normalize(Xt):Nt}function Ot(Bt,{extensions:Nt=Object.keys(S0e.Module._extensions)}={}){let Fr=[],$t=fe(Bt,Fr,{extensions:Nt});if($t)return xAs([$t]),fh.normalize($t);{xAs(Fr);let Xt=Rj(Bt),lr=Le(Bt);if(lr){let{packageLocation:cr}=J(lr),Ar=!0;try{t.fakeFs.accessSync(cr)}catch(qr){if(qr?.code==="ENOENT")Ar=!1;else{let _n=(qr?.message??qr??"empty exception thrown").replace(/^[A-Z]/,ke=>ke.toLowerCase());throw jR(wT.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${_n}). Missing package: ${lr.name}@${lr.reference} -Expected package location: ${Tj(cr)} -`,{unqualifiedPath:Xt,extensions:Dt})}}if(!Ar){let qr=cr.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw KR(BT.QUALIFIED_PATH_RESOLUTION_FAILED,`${qr} +Expected package location: ${Rj(cr)} +`,{unqualifiedPath:Xt,extensions:Nt})}}if(!Ar){let qr=cr.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw jR(wT.QUALIFIED_PATH_RESOLUTION_FAILED,`${qr} Missing package: ${lr.name}@${lr.reference} -Expected package location: ${Tj(cr)} -`,{unqualifiedPath:Xt,extensions:Dt})}}throw KR(BT.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed: we looked for the following paths, but none could be accessed. +Expected package location: ${Rj(cr)} +`,{unqualifiedPath:Xt,extensions:Nt})}}throw jR(wT.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed: we looked for the following paths, but none could be accessed. Source path: ${Xt} -${Fr.map(cr=>`Not found: ${Tj(cr)} -`).join("")}`,{unqualifiedPath:Xt,extensions:Dt})}}function Er(Bt,Dt,Fr){if(!Dt)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let $t=h_l({name:Bt,base:sB.pathToFileURL(Rc.fromPortablePath(Dt)),conditions:Fr.conditions??ne,readFileSyncFn:Je});if($t instanceof URL)return Ot(Rc.toPortablePath(sB.fileURLToPath($t)),{extensions:Fr.extensions});if($t.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return Sr($t,Dt,Fr)}function Sr(Bt,Dt,Fr={}){try{if(Bt.startsWith("#"))return Er(Bt,Dt,Fr);let{considerBuiltins:$t,extensions:Xt,conditions:lr}=Fr,cr=ft(Bt,Dt,{considerBuiltins:$t});if(Bt==="pnpapi")return cr;if(cr===null)return null;let Ar=()=>Dt!==null?be(Dt):!1,qr=(!$t||!S0e.isBuiltin(Bt))&&!Ar()?lt(Bt,cr,lr,Dt):cr;return Ot(qr,{extensions:Xt})}catch($t){throw Object.hasOwn($t,"pnpCode")&&Object.assign($t.data,{request:Tj(Bt),issuer:Dt&&Tj(Dt)}),$t}}function jt(Bt){let Dt=fh.normalize(Bt),Fr=MGt.resolveVirtual(Dt);return Fr!==Dt?Fr:null}return{VERSIONS:Se,topLevel:De,getLocator:(Bt,Dt)=>Array.isArray(Dt)?{name:Dt[0],reference:Dt[1]}:{name:Bt,reference:Dt},getDependencyTreeRoots:()=>[...e.dependencyTreeRoots],getAllLocators(){let Bt=[];for(let[Dt,Fr]of E)for(let $t of Fr.keys())Dt!==null&&$t!==null&&Bt.push({name:Dt,reference:$t});return Bt},getPackageInformation:Bt=>{let Dt=k(Bt);if(Dt===null)return null;let Fr=Rc.fromPortablePath(Dt.packageLocation);return{...Dt,packageLocation:Fr}},findPackageLocator:Bt=>Le(Rc.toPortablePath(Bt)),resolveToUnqualified:Q("resolveToUnqualified",(Bt,Dt,Fr)=>{let $t=Dt!==null?Rc.toPortablePath(Dt):null,Xt=ft(Rc.toPortablePath(Bt),$t,Fr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveUnqualified:Q("resolveUnqualified",(Bt,Dt)=>Rc.fromPortablePath(Ot(Rc.toPortablePath(Bt),Dt))),resolveRequest:Q("resolveRequest",(Bt,Dt,Fr)=>{let $t=Dt!==null?Rc.toPortablePath(Dt):null,Xt=Sr(Rc.toPortablePath(Bt),$t,Fr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveVirtual:Q("resolveVirtual",Bt=>{let Dt=jt(Rc.toPortablePath(Bt));return Dt!==null?Rc.fromPortablePath(Dt):null})}}async function v_l(e,{fakeFs:t,pnpapiResolution:r}){let n=await t.readFilePromise(e,"utf8");return jAs(n,{basePath:xAs.dirname(e),fakeFs:t,pnpapiResolution:r})}function jAs(e,{basePath:t,fakeFs:r,pnpapiResolution:n}){let a=JSON.parse(e),o=HAs(a,{basePath:t});return KAs(o,{compatibilityMode:!0,fakeFs:r,pnpapiResolution:n})}var B_l=(e,t,r)=>{let n=tUr(e),a=HAs(n,{basePath:t}),o=Rc.join(t,OGt.pnpCjs);return KAs(a,{fakeFs:r,pnpapiResolution:o})},QJr,w_l=()=>(typeof QJr>"u"&&(QJr=GAs.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),QJr);uJ.LinkType=FAs;uJ.generateInlinedScript=$Cl;uJ.generateLoader=rUr;uJ.generatePrettyJson=MAs;uJ.generateSplitScript=e_l;uJ.getESMLoaderTemplate=w_l;uJ.hydratePnpFile=v_l;uJ.hydratePnpSource=jAs;uJ.makeRuntimeApi=B_l});var sUr=H(VGe=>{"use strict";Object.defineProperty(VGe,"__esModule",{value:!0});VGe.checkManifestCompatibility=zAs;VGe.extractBuildRequest=R_l;VGe.getExtractHint=D_l;VGe.hasBindingGyp=k_l;var eW=mn(),T_l=Io();function zAs(e){return eW.structUtils.isPackageCompatible(e,eW.nodeUtils.getArchitectureSet())}function R_l(e,t,r,{configuration:n}){let a=[];for(let o of["preinstall","install","postinstall"])t.manifest.scripts.has(o)&&a.push({type:eW.BuildDirectiveType.SCRIPT,script:o});return!t.manifest.scripts.has("install")&&t.misc.hasBindingGyp&&a.push({type:eW.BuildDirectiveType.SHELLCODE,script:"node-gyp rebuild"}),a.length===0?null:e.linkType!==eW.LinkType.HARD?{skipped:!0,explain:o=>o.reportWarningOnce(eW.MessageName.SOFT_LINK_BUILD,`${eW.structUtils.prettyLocator(n,e)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`)}:r&&r.built===!1?{skipped:!0,explain:o=>o.reportInfoOnce(eW.MessageName.BUILD_DISABLED,`${eW.structUtils.prettyLocator(n,e)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!n.get("enableScripts")&&!r.built?{skipped:!0,explain:o=>o.reportWarningOnce(eW.MessageName.DISABLED_BUILD_SCRIPTS,`${eW.structUtils.prettyLocator(n,e)} lists build scripts, but all build scripts have been disabled.`)}:zAs(e)?{skipped:!1,directives:a}:{skipped:!0,explain:o=>o.reportWarningOnce(eW.MessageName.INCOMPATIBLE_ARCHITECTURE,`${eW.structUtils.prettyLocator(n,e)} The ${eW.nodeUtils.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var N_l=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function D_l(e){return e.packageFs.getExtractHint({relevantExtensions:N_l})}function k_l(e){let t=T_l.ppath.join(e.prefixPath,"binding.gyp");return e.packageFs.existsSync(t)}});var UGt=H(oUr=>{"use strict";Object.defineProperty(oUr,"__esModule",{value:!0});oUr.getUnpluggedPath=F_l;var x_l=mn(),G_l=Io();function F_l(e,{configuration:t}){return G_l.ppath.resolve(t.get("pnpUnpluggedFolder"),x_l.structUtils.slugifyLocator(e))}});var uUr=H(WGe=>{"use strict";Object.defineProperty(WGe,"__esModule",{value:!0});WGe.PnpInstaller=WGe.PnpLinker=void 0;var $As=(Wa(),vi(Va)),gC=mn(),Oue=mn(),Hm=Io(),aUr=iUr(),qAs=(Rl(),vi(ng)),KGt=OGe(),jGt=$As.__importStar(sUr()),Z_l=$As.__importStar(UGt()),L_l=new Set([gC.structUtils.makeIdent(null,"open").identHash,gC.structUtils.makeIdent(null,"opn").identHash]),lUr=class{constructor(){this.mode="strict",this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let n=(0,KGt.getPnpPath)(r.project).cjs;if(!Hm.xfs.existsSync(n))throw new qAs.UsageError(`The project in ${gC.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,gC.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=gC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>gC.miscUtils.dynamicRequire(n,{cachingStrategy:gC.miscUtils.CachingStrategy.FsTime})),o={name:gC.structUtils.stringifyIdent(t),reference:t.reference},l=a.getPackageInformation(o);if(!l)throw new qAs.UsageError(`Couldn't find ${gC.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed PnP map - running an install might help`);return Hm.npath.toPortablePath(l.packageLocation)}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=(0,KGt.getPnpPath)(r.project).cjs;if(!Hm.xfs.existsSync(n))return null;let o=gC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>gC.miscUtils.dynamicRequire(n,{cachingStrategy:gC.miscUtils.CachingStrategy.FsTime})).findPackageLocator(Hm.npath.fromPortablePath(t));return o?gC.structUtils.makeLocator(gC.structUtils.parseIdent(o.name),o.reference):null}makeInstaller(t){return new zGt(t)}isEnabled(t){return!(t.project.configuration.get("nodeLinker")!=="pnp"||t.project.configuration.get("pnpMode")!==this.mode)}};WGe.PnpLinker=lUr;var zGt=class{constructor(t){this.opts=t,this.mode="strict",this.asyncActions=new gC.miscUtils.AsyncActions(10),this.packageRegistry=new Map,this.virtualTemplates=new Map,this.isESMLoaderRequired=!1,this.customData={store:new Map},this.unpluggedPaths=new Set,this.opts=t}attachCustomData(t){this.customData=t}async installPackage(t,r,n){let a=gC.structUtils.stringifyIdent(t),o=t.reference,l=!!this.opts.project.tryWorkspaceByLocator(t),A=gC.structUtils.isVirtualLocator(t),f=t.peerDependencies.size>0&&!A,I=!f&&!l,C=!f&&t.linkType!==Oue.LinkType.SOFT,b,E;if(I||C){let ne=A?gC.structUtils.devirtualizeLocator(t):t;b=this.customData.store.get(ne.locatorHash),typeof b>"u"&&(b=await V_l(r),t.linkType===Oue.LinkType.HARD&&this.customData.store.set(ne.locatorHash,b)),b.manifest.type==="module"&&(this.isESMLoaderRequired=!0),E=this.opts.project.getDependencyMeta(ne,t.version)}let N=I?jGt.extractBuildRequest(t,b,E,{configuration:this.opts.project.configuration}):null,B=C?await this.unplugPackageIfNeeded(t,b,r,E,n):r.packageFs;if(Hm.ppath.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let F=Hm.ppath.resolve(B.getRealPath(),r.prefixPath),Q=cUr(this.opts.project.cwd,F),J=new Map,ae=new Set;if(A){for(let ne of t.peerDependencies.values())J.set(gC.structUtils.stringifyIdent(ne),null),ae.add(gC.structUtils.stringifyIdent(ne));if(!l){let ne=gC.structUtils.devirtualizeLocator(t);this.virtualTemplates.set(ne.locatorHash,{location:cUr(this.opts.project.cwd,Hm.VirtualFS.resolveVirtual(F)),locator:ne})}}return gC.miscUtils.getMapWithDefault(this.packageRegistry,a).set(o,{packageLocation:Q,packageDependencies:J,packagePeers:ae,linkType:t.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:F,buildRequest:N}}async attachInternalDependencies(t,r){let n=this.getPackageInformation(t);for(let[a,o]of r){let l=gC.structUtils.areIdentsEqual(a,o)?o.reference:[gC.structUtils.stringifyIdent(o),o.reference];n.packageDependencies.set(gC.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){for(let n of r)this.getDiskInformation(n).packageDependencies.set(gC.structUtils.stringifyIdent(t),t.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let t=(0,KGt.getPnpPath)(this.opts.project);if(this.isEsmEnabled()||await Hm.xfs.removePromise(t.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await Hm.xfs.removePromise(t.cjs),await Hm.xfs.removePromise(t.data),await Hm.xfs.removePromise(t.esmLoader),await Hm.xfs.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:b,location:E}of this.virtualTemplates.values())gC.miscUtils.getMapWithDefault(this.packageRegistry,gC.structUtils.stringifyIdent(b)).set(b.reference,{packageLocation:E,packageDependencies:new Map,packagePeers:new Set,linkType:Oue.LinkType.SOFT,discardFromLookup:!1});let r=this.opts.project.configuration.get("pnpFallbackMode"),n=this.opts.project.workspaces.map(({anchoredLocator:b})=>({name:gC.structUtils.stringifyIdent(b),reference:b.reference})),a=r!=="none",o=[],l=new Map,A=gC.miscUtils.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),f=this.packageRegistry,I=this.opts.project.configuration.get("pnpShebang"),C=this.opts.project.configuration.get("pnpZipBackend");if(r==="dependencies-only")for(let b of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(b)&&o.push({name:gC.structUtils.stringifyIdent(b),reference:b.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:n,enableTopLevelFallback:a,fallbackExclusionList:o,fallbackPool:l,ignorePattern:A,pnpZipBackend:C,packageRegistry:f,shebang:I}),{customData:this.customData}}async transformPnpSettings(t){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let t of this.opts.project.workspaces)if(t.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(t){let r=(0,KGt.getPnpPath)(this.opts.project),n=await this.locateNodeModules(t.ignorePattern);if(n.length>0){this.opts.report.reportWarning(Oue.MessageName.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await Hm.xfs.removePromise(o)}if(await this.transformPnpSettings(t),this.opts.project.configuration.get("pnpEnableInlining")){let o=(0,aUr.generateInlinedScript)(t);await Hm.xfs.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await Hm.xfs.removePromise(r.data)}else{let{dataFile:o,loaderFile:l}=(0,aUr.generateSplitScript)(t);await Hm.xfs.changeFilePromise(r.cjs,l,{automaticNewlines:!0,mode:493}),await Hm.xfs.changeFilePromise(r.data,o,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(Oue.MessageName.EXPERIMENTAL,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await Hm.xfs.changeFilePromise(r.esmLoader,(0,aUr.getESMLoaderTemplate)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await Hm.xfs.removePromise(a);else for(let o of await Hm.xfs.readdirPromise(a)){let l=Hm.ppath.resolve(a,o);this.unpluggedPaths.has(l)||await Hm.xfs.removePromise(l)}}async locateNodeModules(t){let r=[],n=t?new RegExp(t):null;for(let a of this.opts.project.workspaces){let o=Hm.ppath.join(a.cwd,"node_modules");if(n&&n.test(Hm.ppath.relative(this.opts.project.cwd,a.cwd))||!Hm.xfs.existsSync(o))continue;let l=await Hm.xfs.readdirPromise(o,{withFileTypes:!0}),A=l.filter(f=>!f.isDirectory()||f.name===".bin"||!f.name.startsWith("."));if(A.length===l.length)r.push(o);else for(let f of A)r.push(Hm.ppath.join(o,f.name))}return r}async unplugPackageIfNeeded(t,r,n,a,o){return this.shouldBeUnplugged(t,r,a)?this.unplugPackage(t,n,o):n.packageFs}shouldBeUnplugged(t,r,n){return typeof n.unplugged<"u"?n.unplugged:L_l.has(t.identHash)||t.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(jGt.extractBuildRequest(t,r,n,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(t,r,n){let a=Z_l.getUnpluggedPath(t,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(t.locatorHash)?new Hm.AliasFS(a,{baseFs:r.packageFs,pathUtils:Hm.ppath}):(this.unpluggedPaths.add(a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{let o=Hm.ppath.join(a,r.prefixPath,".ready");await Hm.xfs.existsPromise(o)||(this.opts.project.storedBuildState.delete(t.locatorHash),await Hm.xfs.mkdirPromise(a,{recursive:!0}),await Hm.xfs.copyPromise(a,Hm.PortablePath.dot,{baseFs:r.packageFs,overwrite:!1}),await Hm.xfs.writeFilePromise(o,""))})),new Hm.CwdFS(a))}getPackageInformation(t){let r=gC.structUtils.stringifyIdent(t),n=t.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${gC.structUtils.prettyIdent(this.opts.project.configuration,t)})`);let o=a.get(n);if(!o)throw new Error(`Assertion failed: The package information should have been available (for ${gC.structUtils.prettyLocator(this.opts.project.configuration,t)})`);return o}getDiskInformation(t){let r=gC.miscUtils.getMapWithDefault(this.packageRegistry,"@@disk"),n=cUr(this.opts.project.cwd,t);return gC.miscUtils.getFactoryWithDefault(r,n,()=>({packageLocation:n,packageDependencies:new Map,packagePeers:new Set,linkType:Oue.LinkType.SOFT,discardFromLookup:!1}))}};WGe.PnpInstaller=zGt;function cUr(e,t){let r=Hm.ppath.relative(e,t);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function V_l(e){let t=await Oue.Manifest.tryFind(e.prefixPath,{baseFs:e.packageFs})??new Oue.Manifest,r=new Set(["preinstall","install","postinstall"]);for(let n of t.scripts.keys())r.has(n)||t.scripts.delete(n);return{manifest:{scripts:t.scripts,preferUnplugged:t.preferUnplugged,type:t.type},misc:{extractHint:jGt.getExtractHint(e),hasBindingGyp:jGt.hasBindingGyp(e)}}}});var rds=H(gUr=>{"use strict";Object.defineProperty(gUr,"__esModule",{value:!0});var tds=(Wa(),vi(Va)),eds=dl(),HH=mn(),YH=mn(),ere=(Rl(),vi(ng)),W_l=tds.__importDefault(Tk()),O_l=tds.__importStar(UGt()),T7e=class extends eds.BaseCommand{constructor(){super(...arguments),this.all=ere.Option.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"}),this.recursive=ere.Option.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"}),this.json=ere.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=ere.Option.Rest()}async execute(){let t=await HH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await HH.Project.find(t,this.context.cwd),a=await HH.Cache.find(t);if(!n)throw new eds.WorkspaceRequiredError(r.cwd,this.context.cwd);if(t.get("nodeLinker")!=="pnp")throw new ere.UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let o=new Set(this.patterns),l=this.patterns.map(E=>{let N=YH.structUtils.parseDescriptor(E),B=N.range!=="unknown"?N:YH.structUtils.makeDescriptor(N,"*");if(!YH.semverUtils.validRange(B.range))throw new ere.UsageError(`The range of the descriptor patterns must be a valid semver range (${YH.structUtils.prettyDescriptor(t,B)})`);return F=>{let Q=YH.structUtils.stringifyIdent(F);return!W_l.default.isMatch(Q,YH.structUtils.stringifyIdent(B))||F.version&&!YH.semverUtils.satisfiesWithPrereleases(F.version,B.range)?!1:(o.delete(E),!0)}}),A=()=>{let E=[];for(let N of r.storedPackages.values())!r.tryWorkspaceByLocator(N)&&!YH.structUtils.isVirtualLocator(N)&&l.some(B=>B(N))&&E.push(N);return E},f=E=>{let N=new Set,B=[],F=(Q,J)=>{if(N.has(Q.locatorHash))return;let ae=!!r.tryWorkspaceByLocator(Q);if(!(J>0&&!this.recursive&&ae)&&(N.add(Q.locatorHash),!r.tryWorkspaceByLocator(Q)&&l.some(ne=>ne(Q))&&B.push(Q),!(J>0&&!this.recursive)))for(let ne of Q.dependencies.values()){let ce=r.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=r.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");F(fe,J+1)}};for(let Q of E)F(Q.anchoredPackage,0);return B},I,C;if(this.all&&this.recursive?(I=A(),C="the project"):this.all?(I=f(r.workspaces),C="any workspace"):(I=f([n]),C="this workspace"),o.size>1)throw new ere.UsageError(`Patterns ${HH.formatUtils.prettyList(t,o,HH.formatUtils.Type.CODE)} don't match any packages referenced by ${C}`);if(o.size>0)throw new ere.UsageError(`Pattern ${HH.formatUtils.prettyList(t,o,HH.formatUtils.Type.CODE)} doesn't match any packages referenced by ${C}`);I=HH.miscUtils.sortMap(I,E=>YH.structUtils.stringifyLocator(E));let b=await HH.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async E=>{for(let N of I){let B=N.version??"unknown",F=r.topLevelWorkspace.manifest.ensureDependencyMeta(YH.structUtils.makeDescriptor(N,B));F.unplugged=!0,E.reportInfo(HH.MessageName.UNNAMED,`Will unpack ${YH.structUtils.prettyLocator(t,N)} to ${HH.formatUtils.pretty(t,O_l.getUnpluggedPath(N,{configuration:t}),HH.formatUtils.Type.PATH)}`),E.reportJson({locator:YH.structUtils.stringifyLocator(N),version:B})}await r.topLevelWorkspace.persistManifest(),this.json||E.reportSeparator()});return b.hasErrors()?b.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};T7e.paths=[["unplug"]];T7e.usage=ere.Command.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});gUr.default=T7e});var OGe=H(wT=>{"use strict";Object.defineProperty(wT,"__esModule",{value:!0});wT.PnpLinker=wT.PnpInstaller=wT.quotePathIfNeeded=wT.getPnpPath=wT.pnpUtils=wT.jsInstallUtils=wT.UnplugCommand=void 0;var AUr=(Wa(),vi(Va)),tW=mn(),Rj=Io(),P_l=Et("url"),M_l=uUr(),nds=AUr.__importDefault(rds());wT.UnplugCommand=nds.default;var H_l=AUr.__importStar(sUr());wT.jsInstallUtils=H_l;var Y_l=AUr.__importStar(UGt());wT.pnpUtils=Y_l;var Q_l=e=>({cjs:Rj.ppath.join(e.cwd,Rj.Filename.pnpCjs),data:Rj.ppath.join(e.cwd,Rj.Filename.pnpData),esmLoader:Rj.ppath.join(e.cwd,Rj.Filename.pnpEsmLoader)});wT.getPnpPath=Q_l;var X_l=e=>/\s/.test(e)?JSON.stringify(e):e;wT.quotePathIfNeeded=X_l;async function J_l(e,t,r){let n=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,o=(t.NODE_OPTIONS??"").replace(n," ").replace(a," ").trim();if(e.configuration.get("nodeLinker")!=="pnp"){t.NODE_OPTIONS=o||void 0;return}let l=(0,wT.getPnpPath)(e),A=`--require ${(0,wT.quotePathIfNeeded)(Rj.npath.fromPortablePath(l.cjs))}`;Rj.xfs.existsSync(l.esmLoader)&&(A=`${A} --experimental-loader ${(0,P_l.pathToFileURL)(Rj.npath.fromPortablePath(l.esmLoader)).href}`),Rj.xfs.existsSync(l.cjs)&&(t.NODE_OPTIONS=o?`${A} ${o}`:A)}async function U_l(e,t){let r=(0,wT.getPnpPath)(e);t(r.cjs),t(r.data),t(r.esmLoader),t(e.configuration.get("pnpUnpluggedFolder"))}var K_l={hooks:{populateYarnPaths:U_l,setupScriptEnvironment:J_l},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:tW.SettingsType.STRING,default:"pnp"},minizip:{description:"Whether Yarn should use minizip to extract archives",type:tW.SettingsType.BOOLEAN,default:!1},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:tW.SettingsType.STRING,values:[tW.WindowsLinkType.JUNCTIONS,tW.WindowsLinkType.SYMLINKS],default:tW.WindowsLinkType.JUNCTIONS},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:tW.SettingsType.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:tW.SettingsType.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:tW.SettingsType.STRING,default:[],isArray:!0},pnpZipBackend:{description:"Whether to use the experimental js implementation for the ZipFS",type:tW.SettingsType.STRING,values:["libzip","js"],default:"libzip"},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:tW.SettingsType.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:tW.SettingsType.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:tW.SettingsType.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:tW.SettingsType.ABSOLUTE_PATH,default:"./.yarn/unplugged"}},linkers:[M_l.PnpLinker],commands:[nds.default]},ids=uUr();Object.defineProperty(wT,"PnpInstaller",{enumerable:!0,get:function(){return ids.PnpInstaller}});Object.defineProperty(wT,"PnpLinker",{enumerable:!0,get:function(){return ids.PnpLinker}});wT.default=K_l});var sds=H((dUr,pUr)=>{(function(e){dUr&&typeof dUr=="object"&&typeof pUr<"u"?pUr.exports=e():typeof define=="function"&&define.amd?define([],e):typeof window<"u"?window.isWindows=e():typeof global<"u"?global.isWindows=e():typeof self<"u"?self.isWindows=e():this.isWindows=e()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var cds=H((O$u,ads)=>{"use strict";var j_l=Et("path"),ods;process.env.PATHEXT&&(ods=process.env.PATHEXT.split(j_l.delimiter).find(e=>e.toUpperCase()===".CMD"));ads.exports=ods||".cmd"});var uds=H((P$u,lds)=>{var Pue=Et("constants"),z_l=process.cwd,qGt=null,q_l=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return qGt||(qGt=z_l.call(process)),qGt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(fUr=process.chdir,process.chdir=function(e){qGt=null,fUr.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,fUr));var fUr;lds.exports=$_l;function $_l(e){Pue.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=n(e.chmod),e.fchmod=n(e.fchmod),e.lchmod=n(e.lchmod),e.chownSync=l(e.chownSync),e.fchownSync=l(e.fchownSync),e.lchownSync=l(e.lchownSync),e.chmodSync=a(e.chmodSync),e.fchmodSync=a(e.fchmodSync),e.lchmodSync=a(e.lchmodSync),e.stat=A(e.stat),e.fstat=A(e.fstat),e.lstat=A(e.lstat),e.statSync=f(e.statSync),e.fstatSync=f(e.fstatSync),e.lstatSync=f(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(C,b,E){E&&process.nextTick(E)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(C,b,E,N){N&&process.nextTick(N)},e.lchownSync=function(){}),q_l==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(C){function b(E,N,B){var F=Date.now(),Q=0;C(E,N,function J(ae){if(ae&&(ae.code==="EACCES"||ae.code==="EPERM"||ae.code==="EBUSY")&&Date.now()-F<6e4){setTimeout(function(){e.stat(N,function(ne,ce){ne&&ne.code==="ENOENT"?C(E,N,J):B(ae)})},Q),Q<100&&(Q+=10);return}B&&B(ae)})}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.rename)),e.read=typeof e.read!="function"?e.read:function(C){function b(E,N,B,F,Q,J){var ae;if(J&&typeof J=="function"){var ne=0;ae=function(ce,fe,ue){if(ce&&ce.code==="EAGAIN"&&ne<10)return ne++,C.call(e,E,N,B,F,Q,ae);J.apply(this,arguments)}}return C.call(e,E,N,B,F,Q,ae)}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(C){return function(b,E,N,B,F){for(var Q=0;;)try{return C.call(e,b,E,N,B,F)}catch(J){if(J.code==="EAGAIN"&&Q<10){Q++;continue}throw J}}}(e.readSync);function t(C){C.lchmod=function(b,E,N){C.open(b,Pue.O_WRONLY|Pue.O_SYMLINK,E,function(B,F){if(B){N&&N(B);return}C.fchmod(F,E,function(Q){C.close(F,function(J){N&&N(Q||J)})})})},C.lchmodSync=function(b,E){var N=C.openSync(b,Pue.O_WRONLY|Pue.O_SYMLINK,E),B=!0,F;try{F=C.fchmodSync(N,E),B=!1}finally{if(B)try{C.closeSync(N)}catch{}else C.closeSync(N)}return F}}function r(C){Pue.hasOwnProperty("O_SYMLINK")&&C.futimes?(C.lutimes=function(b,E,N,B){C.open(b,Pue.O_SYMLINK,function(F,Q){if(F){B&&B(F);return}C.futimes(Q,E,N,function(J){C.close(Q,function(ae){B&&B(J||ae)})})})},C.lutimesSync=function(b,E,N){var B=C.openSync(b,Pue.O_SYMLINK),F,Q=!0;try{F=C.futimesSync(B,E,N),Q=!1}finally{if(Q)try{C.closeSync(B)}catch{}else C.closeSync(B)}return F}):C.futimes&&(C.lutimes=function(b,E,N,B){B&&process.nextTick(B)},C.lutimesSync=function(){})}function n(C){return C&&function(b,E,N){return C.call(e,b,E,function(B){I(B)&&(B=null),N&&N.apply(this,arguments)})}}function a(C){return C&&function(b,E){try{return C.call(e,b,E)}catch(N){if(!I(N))throw N}}}function o(C){return C&&function(b,E,N,B){return C.call(e,b,E,N,function(F){I(F)&&(F=null),B&&B.apply(this,arguments)})}}function l(C){return C&&function(b,E,N){try{return C.call(e,b,E,N)}catch(B){if(!I(B))throw B}}}function A(C){return C&&function(b,E,N){typeof E=="function"&&(N=E,E=null);function B(F,Q){Q&&(Q.uid<0&&(Q.uid+=4294967296),Q.gid<0&&(Q.gid+=4294967296)),N&&N.apply(this,arguments)}return E?C.call(e,b,E,B):C.call(e,b,B)}}function f(C){return C&&function(b,E){var N=E?C.call(e,b,E):C.call(e,b);return N&&(N.uid<0&&(N.uid+=4294967296),N.gid<0&&(N.gid+=4294967296)),N}}function I(C){if(!C||C.code==="ENOSYS")return!0;var b=!process.getuid||process.getuid()!==0;return!!(b&&(C.code==="EINVAL"||C.code==="EPERM"))}}});var dds=H((M$u,Ads)=>{var gds=Et("stream").Stream;Ads.exports=e0l;function e0l(e){return{ReadStream:t,WriteStream:r};function t(n,a){if(!(this instanceof t))return new t(n,a);gds.call(this);var o=this;this.path=n,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,a=a||{};for(var l=Object.keys(a),A=0,f=l.length;Athis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(C,b){if(C){o.emit("error",C),o.readable=!1;return}o.fd=b,o.emit("open",b),o._read()})}function r(n,a){if(!(this instanceof r))return new r(n,a);gds.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,a=a||{};for(var o=Object.keys(a),l=0,A=o.length;l= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var fds=H((H$u,pds)=>{"use strict";pds.exports=r0l;var t0l=Object.getPrototypeOf||function(e){return e.__proto__};function r0l(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:t0l(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var Cds=H((Y$u,mUr)=>{var YS=Et("fs"),n0l=uds(),i0l=dds(),s0l=fds(),$Gt=Et("util"),mx,tFt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(mx=Symbol.for("graceful-fs.queue"),tFt=Symbol.for("graceful-fs.previous")):(mx="___graceful-fs.queue",tFt="___graceful-fs.previous");function o0l(){}function mds(e,t){Object.defineProperty(e,mx,{get:function(){return t}})}var w0e=o0l;$Gt.debuglog?w0e=$Gt.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(w0e=function(){var e=$Gt.format.apply($Gt,arguments);e="GFS4: "+e.split(/\n/).join(` -GFS4: `),console.error(e)});YS[mx]||(Ids=global[mx]||[],mds(YS,Ids),YS.close=function(e){function t(r,n){return e.call(YS,r,function(a){a||hds(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(t,tFt,{value:e}),t}(YS.close),YS.closeSync=function(e){function t(r){e.apply(YS,arguments),hds()}return Object.defineProperty(t,tFt,{value:e}),t}(YS.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){w0e(YS[mx]),Et("assert").equal(YS[mx].length,0)}));var Ids;global[mx]||mds(global,YS[mx]);mUr.exports=IUr(s0l(YS));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!YS.__patched&&(mUr.exports=IUr(YS),YS.__patched=!0);function IUr(e){n0l(e),e.gracefulify=IUr,e.createReadStream=fe,e.createWriteStream=ue;var t=e.readFile;e.readFile=r;function r(Se,De,k){return typeof De=="function"&&(k=De,De=null),tt(Se,De,k);function tt(ze,Le,Je,ft){return t(ze,Le,function(lt){lt&&(lt.code==="EMFILE"||lt.code==="ENFILE")?PGe([tt,[ze,Le,Je],lt,ft||Date.now(),Date.now()]):typeof Je=="function"&&Je.apply(this,arguments)})}}var n=e.writeFile;e.writeFile=a;function a(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=null),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return n(Le,Je,ft,function(Er){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=l);function l(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=null),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return o(Le,Je,ft,function(Er){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}var A=e.copyFile;A&&(e.copyFile=f);function f(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=0),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return A(Le,Je,ft,function(Er){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}var I=e.readdir;e.readdir=b;var C=/^v[0-5]\./;function b(Se,De,k){typeof De=="function"&&(k=De,De=null);var tt=C.test(process.version)?function(Je,ft,lt,Ot){return I(Je,ze(Je,ft,lt,Ot))}:function(Je,ft,lt,Ot){return I(Je,ft,ze(Je,ft,lt,Ot))};return tt(Se,De,k);function ze(Le,Je,ft,lt){return function(Ot,Er){Ot&&(Ot.code==="EMFILE"||Ot.code==="ENFILE")?PGe([tt,[Le,Je,ft],Ot,lt||Date.now(),Date.now()]):(Er&&Er.sort&&Er.sort(),typeof ft=="function"&&ft.call(this,Ot,Er))}}}if(process.version.substr(0,4)==="v0.8"){var E=i0l(e);J=E.ReadStream,ne=E.WriteStream}var N=e.ReadStream;N&&(J.prototype=Object.create(N.prototype),J.prototype.open=ae);var B=e.WriteStream;B&&(ne.prototype=Object.create(B.prototype),ne.prototype.open=ce),Object.defineProperty(e,"ReadStream",{get:function(){return J},set:function(Se){J=Se},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return ne},set:function(Se){ne=Se},enumerable:!0,configurable:!0});var F=J;Object.defineProperty(e,"FileReadStream",{get:function(){return F},set:function(Se){F=Se},enumerable:!0,configurable:!0});var Q=ne;Object.defineProperty(e,"FileWriteStream",{get:function(){return Q},set:function(Se){Q=Se},enumerable:!0,configurable:!0});function J(Se,De){return this instanceof J?(N.apply(this,arguments),this):J.apply(Object.create(J.prototype),arguments)}function ae(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.autoClose&&Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k),Se.read())})}function ne(Se,De){return this instanceof ne?(B.apply(this,arguments),this):ne.apply(Object.create(ne.prototype),arguments)}function ce(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k))})}function fe(Se,De){return new e.ReadStream(Se,De)}function ue(Se,De){return new e.WriteStream(Se,De)}var de=e.open;e.open=be;function be(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=null),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return de(Le,Je,ft,function(Er,Sr){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}return e}function PGe(e){w0e("ENQUEUE",e[0].name,e[1]),YS[mx].push(e),hUr()}var eFt;function hds(){for(var e=Date.now(),t=0;t2&&(YS[mx][t][3]=e,YS[mx][t][4]=e);hUr()}function hUr(){if(clearTimeout(eFt),eFt=void 0,YS[mx].length!==0){var e=YS[mx].shift(),t=e[0],r=e[1],n=e[2],a=e[3],o=e[4];if(a===void 0)w0e("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-a>=6e4){w0e("TIMEOUT",t.name,r);var l=r.pop();typeof l=="function"&&l.call(null,n)}else{var A=Date.now()-o,f=Math.max(o-a,1),I=Math.min(f*1.2,100);A>=I?(w0e("RETRY",t.name,r),t.apply(null,r.concat([a]))):YS[mx].push(e)}eFt===void 0&&(eFt=setTimeout(hUr,0))}}});var bds=H((Q$u,yds)=>{"use strict";_Ur.ifExists=g0l;var MGe=Et("util"),JP=Et("path"),CUr=sds(),a0l=cds(),c0l=/^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/,l0l={createPwshFile:!0,createCmdFile:CUr(),fs:Cds()},u0l=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function _ds(e){let t={...l0l,...e},r=t.fs;return t.fs_={chmod:r.chmod?(0,MGe.promisify)(r.chmod):async()=>{},mkdir:(0,MGe.promisify)(r.mkdir),readFile:(0,MGe.promisify)(r.readFile),stat:(0,MGe.promisify)(r.stat),unlink:(0,MGe.promisify)(r.unlink),writeFile:(0,MGe.promisify)(r.writeFile)},t}async function _Ur(e,t,r){let n=_ds(r);await d0l(e,t,n)}function g0l(e,t,r){return _Ur(e,t,r).catch(()=>{})}function A0l(e,t){return t.fs_.unlink(e).catch(()=>{})}async function d0l(e,t,r){let n=await m0l(e,r);return await p0l(t,r),f0l(e,t,n,r)}function p0l(e,t){return t.fs_.mkdir(JP.dirname(e),{recursive:!0})}function f0l(e,t,r,n){let a=_ds(n),o=[{generator:b0l,extension:""}];return a.createCmdFile&&o.push({generator:y0l,extension:a0l}),a.createPwshFile&&o.push({generator:E0l,extension:".ps1"}),Promise.all(o.map(l=>_0l(e,t+l.extension,r,l.generator,a)))}function I0l(e,t){return A0l(e,t)}function h0l(e,t){return S0l(e,t)}async function m0l(e,t){try{let a=(await t.fs_.readFile(e,"utf8")).trim().split(/\r*\n/)[0].match(c0l);if(!a){let o=JP.extname(e).toLowerCase();return{program:u0l.get(o)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}catch(r){if(!CUr()||r.code!=="ENOENT")throw r;if(await t.fs_.stat(`${e}${C0l()}`))return{program:null,additionalArgs:""};throw r}}function C0l(){let e;return process.env.PATHEXT&&(e=process.env.PATHEXT.split(JP.delimiter).find(t=>t.toLowerCase()===".exe")),e||".exe"}async function _0l(e,t,r,n,a){let o=a.preserveSymlinks?"--preserve-symlinks":"",l=[r.additionalArgs,o].filter(A=>A).join(" ");return a=Object.assign({},a,{prog:r.program,args:l}),await I0l(t,a),await a.fs_.writeFile(t,n(e,t,a),"utf8"),h0l(t,a)}function y0l(e,t,r){let a=JP.relative(JP.dirname(t),e).split("/").join("\\"),o=JP.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,l,A=r.prog,f=r.args||"",I=R7e(r.nodePath).win32,C=R7e(r.prependToPath).win32;A?A==="node"&&r.nodeExecPath?(A=`"${r.nodeExecPath}"`,a=o):(l=`"%~dp0\\${A}.exe"`,a=o):(A=o,f="",a="");let b=r.progArgs?`${r.progArgs.join(" ")} `:"",E=`@SETLOCAL\r +${Fr.map(cr=>`Not found: ${Rj(cr)} +`).join("")}`,{unqualifiedPath:Xt,extensions:Nt})}}function Er(Bt,Nt,Fr){if(!Nt)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let $t=p0l({name:Bt,base:oB.pathToFileURL(Rc.fromPortablePath(Nt)),conditions:Fr.conditions??ne,readFileSyncFn:Je});if($t instanceof URL)return Ot(Rc.toPortablePath(oB.fileURLToPath($t)),{extensions:Fr.extensions});if($t.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return Sr($t,Nt,Fr)}function Sr(Bt,Nt,Fr={}){try{if(Bt.startsWith("#"))return Er(Bt,Nt,Fr);let{considerBuiltins:$t,extensions:Xt,conditions:lr}=Fr,cr=ft(Bt,Nt,{considerBuiltins:$t});if(Bt==="pnpapi")return cr;if(cr===null)return null;let Ar=()=>Nt!==null?be(Nt):!1,qr=(!$t||!S0e.isBuiltin(Bt))&&!Ar()?lt(Bt,cr,lr,Nt):cr;return Ot(qr,{extensions:Xt})}catch($t){throw Object.hasOwn($t,"pnpCode")&&Object.assign($t.data,{request:Rj(Bt),issuer:Nt&&Rj(Nt)}),$t}}function jt(Bt){let Nt=fh.normalize(Bt),Fr=MGt.resolveVirtual(Nt);return Fr!==Nt?Fr:null}return{VERSIONS:Se,topLevel:De,getLocator:(Bt,Nt)=>Array.isArray(Nt)?{name:Nt[0],reference:Nt[1]}:{name:Bt,reference:Nt},getDependencyTreeRoots:()=>[...e.dependencyTreeRoots],getAllLocators(){let Bt=[];for(let[Nt,Fr]of E)for(let $t of Fr.keys())Nt!==null&&$t!==null&&Bt.push({name:Nt,reference:$t});return Bt},getPackageInformation:Bt=>{let Nt=k(Bt);if(Nt===null)return null;let Fr=Rc.fromPortablePath(Nt.packageLocation);return{...Nt,packageLocation:Fr}},findPackageLocator:Bt=>Le(Rc.toPortablePath(Bt)),resolveToUnqualified:Q("resolveToUnqualified",(Bt,Nt,Fr)=>{let $t=Nt!==null?Rc.toPortablePath(Nt):null,Xt=ft(Rc.toPortablePath(Bt),$t,Fr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveUnqualified:Q("resolveUnqualified",(Bt,Nt)=>Rc.fromPortablePath(Ot(Rc.toPortablePath(Bt),Nt))),resolveRequest:Q("resolveRequest",(Bt,Nt,Fr)=>{let $t=Nt!==null?Rc.toPortablePath(Nt):null,Xt=Sr(Rc.toPortablePath(Bt),$t,Fr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveVirtual:Q("resolveVirtual",Bt=>{let Nt=jt(Rc.toPortablePath(Bt));return Nt!==null?Rc.fromPortablePath(Nt):null})}}async function b0l(e,{fakeFs:t,pnpapiResolution:r}){let n=await t.readFilePromise(e,"utf8");return zAs(n,{basePath:GAs.dirname(e),fakeFs:t,pnpapiResolution:r})}function zAs(e,{basePath:t,fakeFs:r,pnpapiResolution:n}){let a=JSON.parse(e),o=YAs(a,{basePath:t});return jAs(o,{compatibilityMode:!0,fakeFs:r,pnpapiResolution:n})}var E0l=(e,t,r)=>{let n=aUr(e),a=YAs(n,{basePath:t}),o=Rc.join(t,OGt.pnpCjs);return jAs(a,{fakeFs:r,pnpapiResolution:o})},zJr,S0l=()=>(typeof zJr>"u"&&(zJr=FAs.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),zJr);gJ.LinkType=ZAs;gJ.generateInlinedScript=j_l;gJ.generateLoader=cUr;gJ.generatePrettyJson=HAs;gJ.generateSplitScript=z_l;gJ.getESMLoaderTemplate=S0l;gJ.hydratePnpFile=b0l;gJ.hydratePnpSource=zAs;gJ.makeRuntimeApi=E0l});var gUr=H(VGe=>{"use strict";Object.defineProperty(VGe,"__esModule",{value:!0});VGe.checkManifestCompatibility=qAs;VGe.extractBuildRequest=B0l;VGe.getExtractHint=T0l;VGe.hasBindingGyp=R0l;var tW=wn(),v0l=No();function qAs(e){return tW.structUtils.isPackageCompatible(e,tW.nodeUtils.getArchitectureSet())}function B0l(e,t,r,{configuration:n}){let a=[];for(let o of["preinstall","install","postinstall"])t.manifest.scripts.has(o)&&a.push({type:tW.BuildDirectiveType.SCRIPT,script:o});return!t.manifest.scripts.has("install")&&t.misc.hasBindingGyp&&a.push({type:tW.BuildDirectiveType.SHELLCODE,script:"node-gyp rebuild"}),a.length===0?null:e.linkType!==tW.LinkType.HARD?{skipped:!0,explain:o=>o.reportWarningOnce(tW.MessageName.SOFT_LINK_BUILD,`${tW.structUtils.prettyLocator(n,e)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`)}:r&&r.built===!1?{skipped:!0,explain:o=>o.reportInfoOnce(tW.MessageName.BUILD_DISABLED,`${tW.structUtils.prettyLocator(n,e)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!n.get("enableScripts")&&!r.built?{skipped:!0,explain:o=>o.reportWarningOnce(tW.MessageName.DISABLED_BUILD_SCRIPTS,`${tW.structUtils.prettyLocator(n,e)} lists build scripts, but all build scripts have been disabled.`)}:qAs(e)?{skipped:!1,directives:a}:{skipped:!0,explain:o=>o.reportWarningOnce(tW.MessageName.INCOMPATIBLE_ARCHITECTURE,`${tW.structUtils.prettyLocator(n,e)} The ${tW.nodeUtils.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var w0l=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function T0l(e){return e.packageFs.getExtractHint({relevantExtensions:w0l})}function R0l(e){let t=v0l.ppath.join(e.prefixPath,"binding.gyp");return e.packageFs.existsSync(t)}});var UGt=H(AUr=>{"use strict";Object.defineProperty(AUr,"__esModule",{value:!0});AUr.getUnpluggedPath=k0l;var N0l=wn(),D0l=No();function k0l(e,{configuration:t}){return D0l.ppath.resolve(t.get("pnpUnpluggedFolder"),N0l.structUtils.slugifyLocator(e))}});var IUr=H(WGe=>{"use strict";Object.defineProperty(WGe,"__esModule",{value:!0});WGe.PnpInstaller=WGe.PnpLinker=void 0;var eds=(Wa(),vi(Va)),gC=wn(),Pue=wn(),Hm=No(),dUr=uUr(),$As=(vl(),vi(ng)),KGt=OGe(),jGt=eds.__importStar(gUr()),x0l=eds.__importStar(UGt()),G0l=new Set([gC.structUtils.makeIdent(null,"open").identHash,gC.structUtils.makeIdent(null,"opn").identHash]),fUr=class{constructor(){this.mode="strict",this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let n=(0,KGt.getPnpPath)(r.project).cjs;if(!Hm.xfs.existsSync(n))throw new $As.UsageError(`The project in ${gC.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,gC.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=gC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>gC.miscUtils.dynamicRequire(n,{cachingStrategy:gC.miscUtils.CachingStrategy.FsTime})),o={name:gC.structUtils.stringifyIdent(t),reference:t.reference},l=a.getPackageInformation(o);if(!l)throw new $As.UsageError(`Couldn't find ${gC.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed PnP map - running an install might help`);return Hm.npath.toPortablePath(l.packageLocation)}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=(0,KGt.getPnpPath)(r.project).cjs;if(!Hm.xfs.existsSync(n))return null;let o=gC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>gC.miscUtils.dynamicRequire(n,{cachingStrategy:gC.miscUtils.CachingStrategy.FsTime})).findPackageLocator(Hm.npath.fromPortablePath(t));return o?gC.structUtils.makeLocator(gC.structUtils.parseIdent(o.name),o.reference):null}makeInstaller(t){return new zGt(t)}isEnabled(t){return!(t.project.configuration.get("nodeLinker")!=="pnp"||t.project.configuration.get("pnpMode")!==this.mode)}};WGe.PnpLinker=fUr;var zGt=class{constructor(t){this.opts=t,this.mode="strict",this.asyncActions=new gC.miscUtils.AsyncActions(10),this.packageRegistry=new Map,this.virtualTemplates=new Map,this.isESMLoaderRequired=!1,this.customData={store:new Map},this.unpluggedPaths=new Set,this.opts=t}attachCustomData(t){this.customData=t}async installPackage(t,r,n){let a=gC.structUtils.stringifyIdent(t),o=t.reference,l=!!this.opts.project.tryWorkspaceByLocator(t),A=gC.structUtils.isVirtualLocator(t),f=t.peerDependencies.size>0&&!A,I=!f&&!l,C=!f&&t.linkType!==Pue.LinkType.SOFT,b,E;if(I||C){let ne=A?gC.structUtils.devirtualizeLocator(t):t;b=this.customData.store.get(ne.locatorHash),typeof b>"u"&&(b=await F0l(r),t.linkType===Pue.LinkType.HARD&&this.customData.store.set(ne.locatorHash,b)),b.manifest.type==="module"&&(this.isESMLoaderRequired=!0),E=this.opts.project.getDependencyMeta(ne,t.version)}let N=I?jGt.extractBuildRequest(t,b,E,{configuration:this.opts.project.configuration}):null,B=C?await this.unplugPackageIfNeeded(t,b,r,E,n):r.packageFs;if(Hm.ppath.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let F=Hm.ppath.resolve(B.getRealPath(),r.prefixPath),Q=pUr(this.opts.project.cwd,F),J=new Map,ae=new Set;if(A){for(let ne of t.peerDependencies.values())J.set(gC.structUtils.stringifyIdent(ne),null),ae.add(gC.structUtils.stringifyIdent(ne));if(!l){let ne=gC.structUtils.devirtualizeLocator(t);this.virtualTemplates.set(ne.locatorHash,{location:pUr(this.opts.project.cwd,Hm.VirtualFS.resolveVirtual(F)),locator:ne})}}return gC.miscUtils.getMapWithDefault(this.packageRegistry,a).set(o,{packageLocation:Q,packageDependencies:J,packagePeers:ae,linkType:t.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:F,buildRequest:N}}async attachInternalDependencies(t,r){let n=this.getPackageInformation(t);for(let[a,o]of r){let l=gC.structUtils.areIdentsEqual(a,o)?o.reference:[gC.structUtils.stringifyIdent(o),o.reference];n.packageDependencies.set(gC.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){for(let n of r)this.getDiskInformation(n).packageDependencies.set(gC.structUtils.stringifyIdent(t),t.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let t=(0,KGt.getPnpPath)(this.opts.project);if(this.isEsmEnabled()||await Hm.xfs.removePromise(t.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await Hm.xfs.removePromise(t.cjs),await Hm.xfs.removePromise(t.data),await Hm.xfs.removePromise(t.esmLoader),await Hm.xfs.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:b,location:E}of this.virtualTemplates.values())gC.miscUtils.getMapWithDefault(this.packageRegistry,gC.structUtils.stringifyIdent(b)).set(b.reference,{packageLocation:E,packageDependencies:new Map,packagePeers:new Set,linkType:Pue.LinkType.SOFT,discardFromLookup:!1});let r=this.opts.project.configuration.get("pnpFallbackMode"),n=this.opts.project.workspaces.map(({anchoredLocator:b})=>({name:gC.structUtils.stringifyIdent(b),reference:b.reference})),a=r!=="none",o=[],l=new Map,A=gC.miscUtils.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),f=this.packageRegistry,I=this.opts.project.configuration.get("pnpShebang"),C=this.opts.project.configuration.get("pnpZipBackend");if(r==="dependencies-only")for(let b of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(b)&&o.push({name:gC.structUtils.stringifyIdent(b),reference:b.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:n,enableTopLevelFallback:a,fallbackExclusionList:o,fallbackPool:l,ignorePattern:A,pnpZipBackend:C,packageRegistry:f,shebang:I}),{customData:this.customData}}async transformPnpSettings(t){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let t of this.opts.project.workspaces)if(t.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(t){let r=(0,KGt.getPnpPath)(this.opts.project),n=await this.locateNodeModules(t.ignorePattern);if(n.length>0){this.opts.report.reportWarning(Pue.MessageName.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await Hm.xfs.removePromise(o)}if(await this.transformPnpSettings(t),this.opts.project.configuration.get("pnpEnableInlining")){let o=(0,dUr.generateInlinedScript)(t);await Hm.xfs.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await Hm.xfs.removePromise(r.data)}else{let{dataFile:o,loaderFile:l}=(0,dUr.generateSplitScript)(t);await Hm.xfs.changeFilePromise(r.cjs,l,{automaticNewlines:!0,mode:493}),await Hm.xfs.changeFilePromise(r.data,o,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(Pue.MessageName.EXPERIMENTAL,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await Hm.xfs.changeFilePromise(r.esmLoader,(0,dUr.getESMLoaderTemplate)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await Hm.xfs.removePromise(a);else for(let o of await Hm.xfs.readdirPromise(a)){let l=Hm.ppath.resolve(a,o);this.unpluggedPaths.has(l)||await Hm.xfs.removePromise(l)}}async locateNodeModules(t){let r=[],n=t?new RegExp(t):null;for(let a of this.opts.project.workspaces){let o=Hm.ppath.join(a.cwd,"node_modules");if(n&&n.test(Hm.ppath.relative(this.opts.project.cwd,a.cwd))||!Hm.xfs.existsSync(o))continue;let l=await Hm.xfs.readdirPromise(o,{withFileTypes:!0}),A=l.filter(f=>!f.isDirectory()||f.name===".bin"||!f.name.startsWith("."));if(A.length===l.length)r.push(o);else for(let f of A)r.push(Hm.ppath.join(o,f.name))}return r}async unplugPackageIfNeeded(t,r,n,a,o){return this.shouldBeUnplugged(t,r,a)?this.unplugPackage(t,n,o):n.packageFs}shouldBeUnplugged(t,r,n){return typeof n.unplugged<"u"?n.unplugged:G0l.has(t.identHash)||t.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(jGt.extractBuildRequest(t,r,n,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(t,r,n){let a=x0l.getUnpluggedPath(t,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(t.locatorHash)?new Hm.AliasFS(a,{baseFs:r.packageFs,pathUtils:Hm.ppath}):(this.unpluggedPaths.add(a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{let o=Hm.ppath.join(a,r.prefixPath,".ready");await Hm.xfs.existsPromise(o)||(this.opts.project.storedBuildState.delete(t.locatorHash),await Hm.xfs.mkdirPromise(a,{recursive:!0}),await Hm.xfs.copyPromise(a,Hm.PortablePath.dot,{baseFs:r.packageFs,overwrite:!1}),await Hm.xfs.writeFilePromise(o,""))})),new Hm.CwdFS(a))}getPackageInformation(t){let r=gC.structUtils.stringifyIdent(t),n=t.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${gC.structUtils.prettyIdent(this.opts.project.configuration,t)})`);let o=a.get(n);if(!o)throw new Error(`Assertion failed: The package information should have been available (for ${gC.structUtils.prettyLocator(this.opts.project.configuration,t)})`);return o}getDiskInformation(t){let r=gC.miscUtils.getMapWithDefault(this.packageRegistry,"@@disk"),n=pUr(this.opts.project.cwd,t);return gC.miscUtils.getFactoryWithDefault(r,n,()=>({packageLocation:n,packageDependencies:new Map,packagePeers:new Set,linkType:Pue.LinkType.SOFT,discardFromLookup:!1}))}};WGe.PnpInstaller=zGt;function pUr(e,t){let r=Hm.ppath.relative(e,t);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function F0l(e){let t=await Pue.Manifest.tryFind(e.prefixPath,{baseFs:e.packageFs})??new Pue.Manifest,r=new Set(["preinstall","install","postinstall"]);for(let n of t.scripts.keys())r.has(n)||t.scripts.delete(n);return{manifest:{scripts:t.scripts,preferUnplugged:t.preferUnplugged,type:t.type},misc:{extractHint:jGt.getExtractHint(e),hasBindingGyp:jGt.hasBindingGyp(e)}}}});var nds=H(hUr=>{"use strict";Object.defineProperty(hUr,"__esModule",{value:!0});var rds=(Wa(),vi(Va)),tds=sl(),YH=wn(),QH=wn(),tre=(vl(),vi(ng)),Z0l=rds.__importDefault(Rk()),L0l=rds.__importStar(UGt()),w7e=class extends tds.BaseCommand{constructor(){super(...arguments),this.all=tre.Option.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"}),this.recursive=tre.Option.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"}),this.json=tre.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=tre.Option.Rest()}async execute(){let t=await YH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await YH.Project.find(t,this.context.cwd),a=await YH.Cache.find(t);if(!n)throw new tds.WorkspaceRequiredError(r.cwd,this.context.cwd);if(t.get("nodeLinker")!=="pnp")throw new tre.UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let o=new Set(this.patterns),l=this.patterns.map(E=>{let N=QH.structUtils.parseDescriptor(E),B=N.range!=="unknown"?N:QH.structUtils.makeDescriptor(N,"*");if(!QH.semverUtils.validRange(B.range))throw new tre.UsageError(`The range of the descriptor patterns must be a valid semver range (${QH.structUtils.prettyDescriptor(t,B)})`);return F=>{let Q=QH.structUtils.stringifyIdent(F);return!Z0l.default.isMatch(Q,QH.structUtils.stringifyIdent(B))||F.version&&!QH.semverUtils.satisfiesWithPrereleases(F.version,B.range)?!1:(o.delete(E),!0)}}),A=()=>{let E=[];for(let N of r.storedPackages.values())!r.tryWorkspaceByLocator(N)&&!QH.structUtils.isVirtualLocator(N)&&l.some(B=>B(N))&&E.push(N);return E},f=E=>{let N=new Set,B=[],F=(Q,J)=>{if(N.has(Q.locatorHash))return;let ae=!!r.tryWorkspaceByLocator(Q);if(!(J>0&&!this.recursive&&ae)&&(N.add(Q.locatorHash),!r.tryWorkspaceByLocator(Q)&&l.some(ne=>ne(Q))&&B.push(Q),!(J>0&&!this.recursive)))for(let ne of Q.dependencies.values()){let ce=r.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=r.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");F(fe,J+1)}};for(let Q of E)F(Q.anchoredPackage,0);return B},I,C;if(this.all&&this.recursive?(I=A(),C="the project"):this.all?(I=f(r.workspaces),C="any workspace"):(I=f([n]),C="this workspace"),o.size>1)throw new tre.UsageError(`Patterns ${YH.formatUtils.prettyList(t,o,YH.formatUtils.Type.CODE)} don't match any packages referenced by ${C}`);if(o.size>0)throw new tre.UsageError(`Pattern ${YH.formatUtils.prettyList(t,o,YH.formatUtils.Type.CODE)} doesn't match any packages referenced by ${C}`);I=YH.miscUtils.sortMap(I,E=>QH.structUtils.stringifyLocator(E));let b=await YH.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async E=>{for(let N of I){let B=N.version??"unknown",F=r.topLevelWorkspace.manifest.ensureDependencyMeta(QH.structUtils.makeDescriptor(N,B));F.unplugged=!0,E.reportInfo(YH.MessageName.UNNAMED,`Will unpack ${QH.structUtils.prettyLocator(t,N)} to ${YH.formatUtils.pretty(t,L0l.getUnpluggedPath(N,{configuration:t}),YH.formatUtils.Type.PATH)}`),E.reportJson({locator:QH.structUtils.stringifyLocator(N),version:B})}await r.topLevelWorkspace.persistManifest(),this.json||E.reportSeparator()});return b.hasErrors()?b.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};w7e.paths=[["unplug"]];w7e.usage=tre.Command.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});hUr.default=w7e});var OGe=H(TT=>{"use strict";Object.defineProperty(TT,"__esModule",{value:!0});TT.PnpLinker=TT.PnpInstaller=TT.quotePathIfNeeded=TT.getPnpPath=TT.pnpUtils=TT.jsInstallUtils=TT.UnplugCommand=void 0;var mUr=(Wa(),vi(Va)),rW=wn(),Nj=No(),V0l=Et("url"),W0l=IUr(),ids=mUr.__importDefault(nds());TT.UnplugCommand=ids.default;var O0l=mUr.__importStar(gUr());TT.jsInstallUtils=O0l;var P0l=mUr.__importStar(UGt());TT.pnpUtils=P0l;var M0l=e=>({cjs:Nj.ppath.join(e.cwd,Nj.Filename.pnpCjs),data:Nj.ppath.join(e.cwd,Nj.Filename.pnpData),esmLoader:Nj.ppath.join(e.cwd,Nj.Filename.pnpEsmLoader)});TT.getPnpPath=M0l;var H0l=e=>/\s/.test(e)?JSON.stringify(e):e;TT.quotePathIfNeeded=H0l;async function Y0l(e,t,r){let n=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,o=(t.NODE_OPTIONS??"").replace(n," ").replace(a," ").trim();if(e.configuration.get("nodeLinker")!=="pnp"){t.NODE_OPTIONS=o||void 0;return}let l=(0,TT.getPnpPath)(e),A=`--require ${(0,TT.quotePathIfNeeded)(Nj.npath.fromPortablePath(l.cjs))}`;Nj.xfs.existsSync(l.esmLoader)&&(A=`${A} --experimental-loader ${(0,V0l.pathToFileURL)(Nj.npath.fromPortablePath(l.esmLoader)).href}`),Nj.xfs.existsSync(l.cjs)&&(t.NODE_OPTIONS=o?`${A} ${o}`:A)}async function Q0l(e,t){let r=(0,TT.getPnpPath)(e);t(r.cjs),t(r.data),t(r.esmLoader),t(e.configuration.get("pnpUnpluggedFolder"))}var X0l={hooks:{populateYarnPaths:Q0l,setupScriptEnvironment:Y0l},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:rW.SettingsType.STRING,default:"pnp"},minizip:{description:"Whether Yarn should use minizip to extract archives",type:rW.SettingsType.BOOLEAN,default:!1},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:rW.SettingsType.STRING,values:[rW.WindowsLinkType.JUNCTIONS,rW.WindowsLinkType.SYMLINKS],default:rW.WindowsLinkType.JUNCTIONS},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:rW.SettingsType.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:rW.SettingsType.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:rW.SettingsType.STRING,default:[],isArray:!0},pnpZipBackend:{description:"Whether to use the experimental js implementation for the ZipFS",type:rW.SettingsType.STRING,values:["libzip","js"],default:"libzip"},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:rW.SettingsType.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:rW.SettingsType.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:rW.SettingsType.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:rW.SettingsType.ABSOLUTE_PATH,default:"./.yarn/unplugged"}},linkers:[W0l.PnpLinker],commands:[ids.default]},sds=IUr();Object.defineProperty(TT,"PnpInstaller",{enumerable:!0,get:function(){return sds.PnpInstaller}});Object.defineProperty(TT,"PnpLinker",{enumerable:!0,get:function(){return sds.PnpLinker}});TT.default=X0l});var ods=H((CUr,_Ur)=>{(function(e){CUr&&typeof CUr=="object"&&typeof _Ur<"u"?_Ur.exports=e():typeof define=="function"&&define.amd?define([],e):typeof window<"u"?window.isWindows=e():typeof global<"u"?global.isWindows=e():typeof self<"u"?self.isWindows=e():this.isWindows=e()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var lds=H((ttg,cds)=>{"use strict";var J0l=Et("path"),ads;process.env.PATHEXT&&(ads=process.env.PATHEXT.split(J0l.delimiter).find(e=>e.toUpperCase()===".CMD"));cds.exports=ads||".cmd"});var gds=H((rtg,uds)=>{var Mue=Et("constants"),U0l=process.cwd,qGt=null,K0l=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return qGt||(qGt=U0l.call(process)),qGt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(yUr=process.chdir,process.chdir=function(e){qGt=null,yUr.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,yUr));var yUr;uds.exports=j0l;function j0l(e){Mue.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=n(e.chmod),e.fchmod=n(e.fchmod),e.lchmod=n(e.lchmod),e.chownSync=l(e.chownSync),e.fchownSync=l(e.fchownSync),e.lchownSync=l(e.lchownSync),e.chmodSync=a(e.chmodSync),e.fchmodSync=a(e.fchmodSync),e.lchmodSync=a(e.lchmodSync),e.stat=A(e.stat),e.fstat=A(e.fstat),e.lstat=A(e.lstat),e.statSync=f(e.statSync),e.fstatSync=f(e.fstatSync),e.lstatSync=f(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(C,b,E){E&&process.nextTick(E)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(C,b,E,N){N&&process.nextTick(N)},e.lchownSync=function(){}),K0l==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(C){function b(E,N,B){var F=Date.now(),Q=0;C(E,N,function J(ae){if(ae&&(ae.code==="EACCES"||ae.code==="EPERM"||ae.code==="EBUSY")&&Date.now()-F<6e4){setTimeout(function(){e.stat(N,function(ne,ce){ne&&ne.code==="ENOENT"?C(E,N,J):B(ae)})},Q),Q<100&&(Q+=10);return}B&&B(ae)})}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.rename)),e.read=typeof e.read!="function"?e.read:function(C){function b(E,N,B,F,Q,J){var ae;if(J&&typeof J=="function"){var ne=0;ae=function(ce,fe,ue){if(ce&&ce.code==="EAGAIN"&&ne<10)return ne++,C.call(e,E,N,B,F,Q,ae);J.apply(this,arguments)}}return C.call(e,E,N,B,F,Q,ae)}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(C){return function(b,E,N,B,F){for(var Q=0;;)try{return C.call(e,b,E,N,B,F)}catch(J){if(J.code==="EAGAIN"&&Q<10){Q++;continue}throw J}}}(e.readSync);function t(C){C.lchmod=function(b,E,N){C.open(b,Mue.O_WRONLY|Mue.O_SYMLINK,E,function(B,F){if(B){N&&N(B);return}C.fchmod(F,E,function(Q){C.close(F,function(J){N&&N(Q||J)})})})},C.lchmodSync=function(b,E){var N=C.openSync(b,Mue.O_WRONLY|Mue.O_SYMLINK,E),B=!0,F;try{F=C.fchmodSync(N,E),B=!1}finally{if(B)try{C.closeSync(N)}catch{}else C.closeSync(N)}return F}}function r(C){Mue.hasOwnProperty("O_SYMLINK")&&C.futimes?(C.lutimes=function(b,E,N,B){C.open(b,Mue.O_SYMLINK,function(F,Q){if(F){B&&B(F);return}C.futimes(Q,E,N,function(J){C.close(Q,function(ae){B&&B(J||ae)})})})},C.lutimesSync=function(b,E,N){var B=C.openSync(b,Mue.O_SYMLINK),F,Q=!0;try{F=C.futimesSync(B,E,N),Q=!1}finally{if(Q)try{C.closeSync(B)}catch{}else C.closeSync(B)}return F}):C.futimes&&(C.lutimes=function(b,E,N,B){B&&process.nextTick(B)},C.lutimesSync=function(){})}function n(C){return C&&function(b,E,N){return C.call(e,b,E,function(B){I(B)&&(B=null),N&&N.apply(this,arguments)})}}function a(C){return C&&function(b,E){try{return C.call(e,b,E)}catch(N){if(!I(N))throw N}}}function o(C){return C&&function(b,E,N,B){return C.call(e,b,E,N,function(F){I(F)&&(F=null),B&&B.apply(this,arguments)})}}function l(C){return C&&function(b,E,N){try{return C.call(e,b,E,N)}catch(B){if(!I(B))throw B}}}function A(C){return C&&function(b,E,N){typeof E=="function"&&(N=E,E=null);function B(F,Q){Q&&(Q.uid<0&&(Q.uid+=4294967296),Q.gid<0&&(Q.gid+=4294967296)),N&&N.apply(this,arguments)}return E?C.call(e,b,E,B):C.call(e,b,B)}}function f(C){return C&&function(b,E){var N=E?C.call(e,b,E):C.call(e,b);return N&&(N.uid<0&&(N.uid+=4294967296),N.gid<0&&(N.gid+=4294967296)),N}}function I(C){if(!C||C.code==="ENOSYS")return!0;var b=!process.getuid||process.getuid()!==0;return!!(b&&(C.code==="EINVAL"||C.code==="EPERM"))}}});var pds=H((ntg,dds)=>{var Ads=Et("stream").Stream;dds.exports=z0l;function z0l(e){return{ReadStream:t,WriteStream:r};function t(n,a){if(!(this instanceof t))return new t(n,a);Ads.call(this);var o=this;this.path=n,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,a=a||{};for(var l=Object.keys(a),A=0,f=l.length;Athis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(C,b){if(C){o.emit("error",C),o.readable=!1;return}o.fd=b,o.emit("open",b),o._read()})}function r(n,a){if(!(this instanceof r))return new r(n,a);Ads.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,a=a||{};for(var o=Object.keys(a),l=0,A=o.length;l= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var Ids=H((itg,fds)=>{"use strict";fds.exports=$0l;var q0l=Object.getPrototypeOf||function(e){return e.__proto__};function $0l(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:q0l(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var _ds=H((stg,SUr)=>{var QS=Et("fs"),eyl=gds(),tyl=pds(),ryl=Ids(),$Gt=Et("util"),Cx,tFt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(Cx=Symbol.for("graceful-fs.queue"),tFt=Symbol.for("graceful-fs.previous")):(Cx="___graceful-fs.queue",tFt="___graceful-fs.previous");function nyl(){}function Cds(e,t){Object.defineProperty(e,Cx,{get:function(){return t}})}var w0e=nyl;$Gt.debuglog?w0e=$Gt.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(w0e=function(){var e=$Gt.format.apply($Gt,arguments);e="GFS4: "+e.split(/\n/).join(` +GFS4: `),console.error(e)});QS[Cx]||(hds=global[Cx]||[],Cds(QS,hds),QS.close=function(e){function t(r,n){return e.call(QS,r,function(a){a||mds(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(t,tFt,{value:e}),t}(QS.close),QS.closeSync=function(e){function t(r){e.apply(QS,arguments),mds()}return Object.defineProperty(t,tFt,{value:e}),t}(QS.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){w0e(QS[Cx]),Et("assert").equal(QS[Cx].length,0)}));var hds;global[Cx]||Cds(global,QS[Cx]);SUr.exports=bUr(ryl(QS));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!QS.__patched&&(SUr.exports=bUr(QS),QS.__patched=!0);function bUr(e){eyl(e),e.gracefulify=bUr,e.createReadStream=fe,e.createWriteStream=ue;var t=e.readFile;e.readFile=r;function r(Se,De,k){return typeof De=="function"&&(k=De,De=null),tt(Se,De,k);function tt(ze,Le,Je,ft){return t(ze,Le,function(lt){lt&&(lt.code==="EMFILE"||lt.code==="ENFILE")?PGe([tt,[ze,Le,Je],lt,ft||Date.now(),Date.now()]):typeof Je=="function"&&Je.apply(this,arguments)})}}var n=e.writeFile;e.writeFile=a;function a(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=null),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return n(Le,Je,ft,function(Er){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=l);function l(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=null),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return o(Le,Je,ft,function(Er){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}var A=e.copyFile;A&&(e.copyFile=f);function f(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=0),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return A(Le,Je,ft,function(Er){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}var I=e.readdir;e.readdir=b;var C=/^v[0-5]\./;function b(Se,De,k){typeof De=="function"&&(k=De,De=null);var tt=C.test(process.version)?function(Je,ft,lt,Ot){return I(Je,ze(Je,ft,lt,Ot))}:function(Je,ft,lt,Ot){return I(Je,ft,ze(Je,ft,lt,Ot))};return tt(Se,De,k);function ze(Le,Je,ft,lt){return function(Ot,Er){Ot&&(Ot.code==="EMFILE"||Ot.code==="ENFILE")?PGe([tt,[Le,Je,ft],Ot,lt||Date.now(),Date.now()]):(Er&&Er.sort&&Er.sort(),typeof ft=="function"&&ft.call(this,Ot,Er))}}}if(process.version.substr(0,4)==="v0.8"){var E=tyl(e);J=E.ReadStream,ne=E.WriteStream}var N=e.ReadStream;N&&(J.prototype=Object.create(N.prototype),J.prototype.open=ae);var B=e.WriteStream;B&&(ne.prototype=Object.create(B.prototype),ne.prototype.open=ce),Object.defineProperty(e,"ReadStream",{get:function(){return J},set:function(Se){J=Se},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return ne},set:function(Se){ne=Se},enumerable:!0,configurable:!0});var F=J;Object.defineProperty(e,"FileReadStream",{get:function(){return F},set:function(Se){F=Se},enumerable:!0,configurable:!0});var Q=ne;Object.defineProperty(e,"FileWriteStream",{get:function(){return Q},set:function(Se){Q=Se},enumerable:!0,configurable:!0});function J(Se,De){return this instanceof J?(N.apply(this,arguments),this):J.apply(Object.create(J.prototype),arguments)}function ae(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.autoClose&&Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k),Se.read())})}function ne(Se,De){return this instanceof ne?(B.apply(this,arguments),this):ne.apply(Object.create(ne.prototype),arguments)}function ce(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k))})}function fe(Se,De){return new e.ReadStream(Se,De)}function ue(Se,De){return new e.WriteStream(Se,De)}var de=e.open;e.open=be;function be(Se,De,k,tt){return typeof k=="function"&&(tt=k,k=null),ze(Se,De,k,tt);function ze(Le,Je,ft,lt,Ot){return de(Le,Je,ft,function(Er,Sr){Er&&(Er.code==="EMFILE"||Er.code==="ENFILE")?PGe([ze,[Le,Je,ft,lt],Er,Ot||Date.now(),Date.now()]):typeof lt=="function"&<.apply(this,arguments)})}}return e}function PGe(e){w0e("ENQUEUE",e[0].name,e[1]),QS[Cx].push(e),EUr()}var eFt;function mds(){for(var e=Date.now(),t=0;t2&&(QS[Cx][t][3]=e,QS[Cx][t][4]=e);EUr()}function EUr(){if(clearTimeout(eFt),eFt=void 0,QS[Cx].length!==0){var e=QS[Cx].shift(),t=e[0],r=e[1],n=e[2],a=e[3],o=e[4];if(a===void 0)w0e("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-a>=6e4){w0e("TIMEOUT",t.name,r);var l=r.pop();typeof l=="function"&&l.call(null,n)}else{var A=Date.now()-o,f=Math.max(o-a,1),I=Math.min(f*1.2,100);A>=I?(w0e("RETRY",t.name,r),t.apply(null,r.concat([a]))):QS[Cx].push(e)}eFt===void 0&&(eFt=setTimeout(EUr,0))}}});var Eds=H((otg,bds)=>{"use strict";BUr.ifExists=cyl;var MGe=Et("util"),KP=Et("path"),vUr=ods(),iyl=lds(),syl=/^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/,oyl={createPwshFile:!0,createCmdFile:vUr(),fs:_ds()},ayl=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function yds(e){let t={...oyl,...e},r=t.fs;return t.fs_={chmod:r.chmod?(0,MGe.promisify)(r.chmod):async()=>{},mkdir:(0,MGe.promisify)(r.mkdir),readFile:(0,MGe.promisify)(r.readFile),stat:(0,MGe.promisify)(r.stat),unlink:(0,MGe.promisify)(r.unlink),writeFile:(0,MGe.promisify)(r.writeFile)},t}async function BUr(e,t,r){let n=yds(r);await uyl(e,t,n)}function cyl(e,t,r){return BUr(e,t,r).catch(()=>{})}function lyl(e,t){return t.fs_.unlink(e).catch(()=>{})}async function uyl(e,t,r){let n=await fyl(e,r);return await gyl(t,r),Ayl(e,t,n,r)}function gyl(e,t){return t.fs_.mkdir(KP.dirname(e),{recursive:!0})}function Ayl(e,t,r,n){let a=yds(n),o=[{generator:Cyl,extension:""}];return a.createCmdFile&&o.push({generator:myl,extension:iyl}),a.createPwshFile&&o.push({generator:_yl,extension:".ps1"}),Promise.all(o.map(l=>hyl(e,t+l.extension,r,l.generator,a)))}function dyl(e,t){return lyl(e,t)}function pyl(e,t){return yyl(e,t)}async function fyl(e,t){try{let a=(await t.fs_.readFile(e,"utf8")).trim().split(/\r*\n/)[0].match(syl);if(!a){let o=KP.extname(e).toLowerCase();return{program:ayl.get(o)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}catch(r){if(!vUr()||r.code!=="ENOENT")throw r;if(await t.fs_.stat(`${e}${Iyl()}`))return{program:null,additionalArgs:""};throw r}}function Iyl(){let e;return process.env.PATHEXT&&(e=process.env.PATHEXT.split(KP.delimiter).find(t=>t.toLowerCase()===".exe")),e||".exe"}async function hyl(e,t,r,n,a){let o=a.preserveSymlinks?"--preserve-symlinks":"",l=[r.additionalArgs,o].filter(A=>A).join(" ");return a=Object.assign({},a,{prog:r.program,args:l}),await dyl(t,a),await a.fs_.writeFile(t,n(e,t,a),"utf8"),pyl(t,a)}function myl(e,t,r){let a=KP.relative(KP.dirname(t),e).split("/").join("\\"),o=KP.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,l,A=r.prog,f=r.args||"",I=T7e(r.nodePath).win32,C=T7e(r.prependToPath).win32;A?A==="node"&&r.nodeExecPath?(A=`"${r.nodeExecPath}"`,a=o):(l=`"%~dp0\\${A}.exe"`,a=o):(A=o,f="",a="");let b=r.progArgs?`${r.progArgs.join(" ")} `:"",E=`@SETLOCAL\r `;return C&&(E+=`@SET "PATH=${C}:%PATH%"\r `),I&&(E+=`@IF NOT DEFINED NODE_PATH (\r @SET "NODE_PATH=${I}"\r @@ -1628,7 +1628,7 @@ GFS4: `),console.error(e)});YS[mx]||(Ids=global[mx]||[],mds(YS,Ids),YS.close=fun ${A} ${f} ${a} ${b}%*\r )\r `:E+=`@${A} ${f} ${a} ${b}%*\r -`,E}function b0l(e,t,r){let n=JP.relative(JP.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o;n=n.split("\\").join("/");let l=JP.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,A=r.args||"",f=R7e(r.nodePath).posix;a?r.prog==="node"&&r.nodeExecPath?(a=`"${r.nodeExecPath}"`,n=l):(o=`"$basedir/${r.prog}"`,n=l):(a=l,A="",n="");let I=r.progArgs?`${r.progArgs.join(" ")} `:"",C=`#!/bin/sh +`,E}function Cyl(e,t,r){let n=KP.relative(KP.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o;n=n.split("\\").join("/");let l=KP.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,A=r.args||"",f=T7e(r.nodePath).posix;a?r.prog==="node"&&r.nodeExecPath?(a=`"${r.nodeExecPath}"`,n=l):(o=`"$basedir/${r.prog}"`,n=l):(a=l,A="",n="");let I=r.progArgs?`${r.progArgs.join(" ")} `:"",C=`#!/bin/sh basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") case \`uname\` in @@ -1648,7 +1648,7 @@ else fi `:C+=`${a} ${A} ${n} ${I}"$@" exit $? -`,C}function E0l(e,t,r){let n=JP.relative(JP.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o=a&&`"${a}$exe"`,l;n=n.split("\\").join("/");let A=JP.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,f=r.args||"",I=R7e(r.nodePath),C=I.win32,b=I.posix,E=R7e(r.prependToPath),N=E.win32,B=E.posix;o?r.prog==="node"&&r.nodeExecPath?(o=`"${r.nodeExecPath}"`,n=A):(l=`"$basedir/${r.prog}$exe"`,n=A):(o=A,f="",n="");let F=r.progArgs?`${r.progArgs.join(" ")} `:"",Q=`#!/usr/bin/env pwsh +`,C}function _yl(e,t,r){let n=KP.relative(KP.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o=a&&`"${a}$exe"`,l;n=n.split("\\").join("/");let A=KP.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,f=r.args||"",I=T7e(r.nodePath),C=I.win32,b=I.posix,E=T7e(r.prependToPath),N=E.win32,B=E.posix;o?r.prog==="node"&&r.nodeExecPath?(o=`"${r.nodeExecPath}"`,n=A):(l=`"$basedir/${r.prog}$exe"`,n=A):(o=A,f="",n="");let F=r.progArgs?`${r.progArgs.join(" ")} `:"",Q=`#!/usr/bin/env pwsh $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent $exe="" @@ -1705,11 +1705,11 @@ if ($MyInvocation.ExpectingInput) { ${C?`$env:NODE_PATH=$env_node_path `:""}${N?`$env:PATH=$env_path `:""}exit $LASTEXITCODE -`,Q}function S0l(e,t){return t.fs_.chmod(e,493)}function R7e(e){if(!e||!e.length)return{win32:"",posix:""};let t=typeof e=="string"?e.split(JP.delimiter):Array.from(e),r={};for(let n=0;n`/mnt/${A.toLowerCase()}`):t[n];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${o}`:o,r[n]={win32:a,posix:o}}return r}yds.exports=_Ur});var TUr=H(T0e=>{"use strict";Object.defineProperty(T0e,"__esModule",{value:!0});T0e.NodeModulesLinker=T0e.NodeModulesMode=void 0;T0e.getGlobalHardlinksStore=Gds;var BUr=(Wa(),vi(Va)),ip=mn(),Bds=mn(),gJ=mn(),bUr=mn(),Fu=Io(),Hp=Io(),v0l=u8(),B0l=E7e(),yUr=E7e(),w0l=tM(),wds=OGe(),T0l=BUr.__importDefault(bds()),Eds=(Rl(),vi(ng)),Tds=BUr.__importDefault(Et("crypto")),R0l=BUr.__importDefault(Et("fs")),Rds=1,M2="node_modules",rFt=".bin",Nds=".yarn-state.yml",N0l=1e3,UP;(function(e){e.CLASSIC="classic",e.HARDLINKS_LOCAL="hardlinks-local",e.HARDLINKS_GLOBAL="hardlinks-global"})(UP||(T0e.NodeModulesMode=UP={}));var EUr=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let n=r.project.tryWorkspaceByLocator(t);if(n)return n.cwd;let a=await ip.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await vUr(r.project,{unrollAliases:!0}));if(a===null)throw new Eds.UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let o=a.locatorMap.get(ip.structUtils.stringifyLocator(t));if(!o){let f=new Eds.UsageError(`Couldn't find ${ip.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed node_modules map - running an install might help`);throw f.code="LOCATOR_NOT_INSTALLED",f}let l=o.locations.sort((f,I)=>f.split(Fu.ppath.sep).length-I.split(Fu.ppath.sep).length),A=Fu.ppath.join(r.project.configuration.startingCwd,M2);return l.find(f=>Fu.ppath.contains(A,f))||o.locations[0]}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=await ip.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await vUr(r.project,{unrollAliases:!0}));if(n===null)return null;let{locationRoot:a,segments:o}=nFt(Fu.ppath.resolve(t),{skipPrefix:r.project.cwd}),l=n.locationTree.get(a);if(!l)return null;let A=l.locator;for(let f of o){if(l=l.children.get(f),!l)break;A=l.locator||A}return ip.structUtils.parseLocator(A)}makeInstaller(t){return new SUr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="node-modules"}};T0e.NodeModulesLinker=EUr;var SUr=class{constructor(t){this.opts=t,this.localStore=new Map,this.realLocatorChecksums=new Map,this.customData={store:new Map}}attachCustomData(t){this.customData=t}async installPackage(t,r){let n=Fu.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(t.locatorHash);if(typeof a>"u"&&(a=await D0l(t,r),t.linkType===gJ.LinkType.HARD&&this.customData.store.set(t.locatorHash,a)),!ip.structUtils.isPackageCompatible(t,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let o=new Map,l=new Set;o.has(ip.structUtils.stringifyIdent(t))||o.set(ip.structUtils.stringifyIdent(t),t.reference);let A=t;if(ip.structUtils.isVirtualLocator(t)){A=ip.structUtils.devirtualizeLocator(t);for(let C of t.peerDependencies.values())o.set(ip.structUtils.stringifyIdent(C),null),l.add(ip.structUtils.stringifyIdent(C))}let f={packageLocation:`${Fu.npath.fromPortablePath(n)}/`,packageDependencies:o,packagePeers:l,linkType:t.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(t.locatorHash,{pkg:t,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(t,t.version),pnpNode:f});let I=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(A.locatorHash,I),{packageLocation:n,buildRequest:null}}async attachInternalDependencies(t,r){let n=this.localStore.get(t.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,o]of r){let l=ip.structUtils.areIdentsEqual(a,o)?o.reference:[ip.structUtils.stringifyIdent(o),o.reference];n.pnpNode.packageDependencies.set(ip.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let t=new Hp.VirtualFS({baseFs:new v0l.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),r=await vUr(this.opts.project),n=this.opts.project.configuration.get("nmMode");(r===null||n!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:n,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmHoistingLimits");try{N=ip.miscUtils.validateEnum(yUr.NodeModulesHoistingLimits,E.manifest.installConfig?.hoistingLimits??N)}catch{let B=ip.structUtils.prettyWorkspace(this.opts.project.configuration,E);this.opts.report.reportWarning(bUr.MessageName.INVALID_MANIFEST,`${B}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(yUr.NodeModulesHoistingLimits).join(", ")}, using default: "${N}"`)}return[E.relativeCwd,N]})),o=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmSelfReferences");return N=E.manifest.installConfig?.selfReferences??N,[E.relativeCwd,N]})),l={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(E,N)=>Array.isArray(N)?{name:N[0],reference:N[1]}:{name:E,reference:N},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(E=>{let N=E.anchoredLocator;return{name:ip.structUtils.stringifyIdent(N),reference:N.reference}}),getPackageInformation:E=>{let N=E.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:ip.structUtils.makeLocator(ip.structUtils.parseIdent(E.name),E.reference),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return B.pnpNode},findPackageLocator:E=>{let N=this.opts.project.tryWorkspaceByCwd(Fu.npath.toPortablePath(E));if(N!==null){let B=N.anchoredLocator;return{name:ip.structUtils.stringifyIdent(B),reference:B.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:E=>Fu.npath.fromPortablePath(Hp.VirtualFS.resolveVirtual(Fu.npath.toPortablePath(E)))},{tree:A,errors:f,preserveSymlinksRequired:I}=(0,B0l.buildNodeModulesTree)(l,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:o});if(!A){for(let{messageName:E,text:N}of f)this.opts.report.reportError(E,N);return}let C=(0,yUr.buildLocatorMap)(A);await V0l(r,C,{baseFs:t,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async E=>{let N=ip.structUtils.parseLocator(E),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the slot to exist");return B.customPackageData.manifest}});let b=[];for(let[E,N]of C.entries()){if(xds(E))continue;let B=ip.structUtils.parseLocator(E),F=this.localStore.get(B.locatorHash);if(typeof F>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(F.pkg))continue;let Q=wds.jsInstallUtils.extractBuildRequest(F.pkg,F.customPackageData,F.dependencyMeta,{configuration:this.opts.project.configuration});Q&&b.push({buildLocations:N.locations,locator:B,buildRequest:Q})}return I&&this.opts.report.reportWarning(bUr.MessageName.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${ip.formatUtils.pretty(this.opts.project.configuration,"--preserve-symlinks",ip.formatUtils.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:b}}};async function D0l(e,t){let r=await ip.Manifest.tryFind(t.prefixPath,{baseFs:t.packageFs})??new ip.Manifest,n=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())n.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:wds.jsInstallUtils.hasBindingGyp(t)}}}async function k0l(e,t,r,n,{installChangedByUser:a}){let o="";o+=`# Warning: This file is automatically generated. Removing it is fine, but will +`,Q}function yyl(e,t){return t.fs_.chmod(e,493)}function T7e(e){if(!e||!e.length)return{win32:"",posix:""};let t=typeof e=="string"?e.split(KP.delimiter):Array.from(e),r={};for(let n=0;n`/mnt/${A.toLowerCase()}`):t[n];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${o}`:o,r[n]={win32:a,posix:o}}return r}bds.exports=BUr});var GUr=H(T0e=>{"use strict";Object.defineProperty(T0e,"__esModule",{value:!0});T0e.NodeModulesLinker=T0e.NodeModulesMode=void 0;T0e.getGlobalHardlinksStore=Fds;var kUr=(Wa(),vi(Va)),ip=wn(),wds=wn(),AJ=wn(),TUr=wn(),Fu=No(),Hp=No(),byl=g8(),Eyl=b7e(),wUr=b7e(),Syl=LO(),Tds=OGe(),vyl=kUr.__importDefault(Eds()),Sds=(vl(),vi(ng)),Rds=kUr.__importDefault(Et("crypto")),Byl=kUr.__importDefault(Et("fs")),Nds=1,H2="node_modules",rFt=".bin",Dds=".yarn-state.yml",wyl=1e3,jP;(function(e){e.CLASSIC="classic",e.HARDLINKS_LOCAL="hardlinks-local",e.HARDLINKS_GLOBAL="hardlinks-global"})(jP||(T0e.NodeModulesMode=jP={}));var RUr=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let n=r.project.tryWorkspaceByLocator(t);if(n)return n.cwd;let a=await ip.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await DUr(r.project,{unrollAliases:!0}));if(a===null)throw new Sds.UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let o=a.locatorMap.get(ip.structUtils.stringifyLocator(t));if(!o){let f=new Sds.UsageError(`Couldn't find ${ip.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed node_modules map - running an install might help`);throw f.code="LOCATOR_NOT_INSTALLED",f}let l=o.locations.sort((f,I)=>f.split(Fu.ppath.sep).length-I.split(Fu.ppath.sep).length),A=Fu.ppath.join(r.project.configuration.startingCwd,H2);return l.find(f=>Fu.ppath.contains(A,f))||o.locations[0]}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=await ip.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await DUr(r.project,{unrollAliases:!0}));if(n===null)return null;let{locationRoot:a,segments:o}=nFt(Fu.ppath.resolve(t),{skipPrefix:r.project.cwd}),l=n.locationTree.get(a);if(!l)return null;let A=l.locator;for(let f of o){if(l=l.children.get(f),!l)break;A=l.locator||A}return ip.structUtils.parseLocator(A)}makeInstaller(t){return new NUr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="node-modules"}};T0e.NodeModulesLinker=RUr;var NUr=class{constructor(t){this.opts=t,this.localStore=new Map,this.realLocatorChecksums=new Map,this.customData={store:new Map}}attachCustomData(t){this.customData=t}async installPackage(t,r){let n=Fu.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(t.locatorHash);if(typeof a>"u"&&(a=await Tyl(t,r),t.linkType===AJ.LinkType.HARD&&this.customData.store.set(t.locatorHash,a)),!ip.structUtils.isPackageCompatible(t,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let o=new Map,l=new Set;o.has(ip.structUtils.stringifyIdent(t))||o.set(ip.structUtils.stringifyIdent(t),t.reference);let A=t;if(ip.structUtils.isVirtualLocator(t)){A=ip.structUtils.devirtualizeLocator(t);for(let C of t.peerDependencies.values())o.set(ip.structUtils.stringifyIdent(C),null),l.add(ip.structUtils.stringifyIdent(C))}let f={packageLocation:`${Fu.npath.fromPortablePath(n)}/`,packageDependencies:o,packagePeers:l,linkType:t.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(t.locatorHash,{pkg:t,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(t,t.version),pnpNode:f});let I=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(A.locatorHash,I),{packageLocation:n,buildRequest:null}}async attachInternalDependencies(t,r){let n=this.localStore.get(t.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,o]of r){let l=ip.structUtils.areIdentsEqual(a,o)?o.reference:[ip.structUtils.stringifyIdent(o),o.reference];n.pnpNode.packageDependencies.set(ip.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let t=new Hp.VirtualFS({baseFs:new byl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),r=await DUr(this.opts.project),n=this.opts.project.configuration.get("nmMode");(r===null||n!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:n,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmHoistingLimits");try{N=ip.miscUtils.validateEnum(wUr.NodeModulesHoistingLimits,E.manifest.installConfig?.hoistingLimits??N)}catch{let B=ip.structUtils.prettyWorkspace(this.opts.project.configuration,E);this.opts.report.reportWarning(TUr.MessageName.INVALID_MANIFEST,`${B}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(wUr.NodeModulesHoistingLimits).join(", ")}, using default: "${N}"`)}return[E.relativeCwd,N]})),o=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmSelfReferences");return N=E.manifest.installConfig?.selfReferences??N,[E.relativeCwd,N]})),l={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(E,N)=>Array.isArray(N)?{name:N[0],reference:N[1]}:{name:E,reference:N},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(E=>{let N=E.anchoredLocator;return{name:ip.structUtils.stringifyIdent(N),reference:N.reference}}),getPackageInformation:E=>{let N=E.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:ip.structUtils.makeLocator(ip.structUtils.parseIdent(E.name),E.reference),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return B.pnpNode},findPackageLocator:E=>{let N=this.opts.project.tryWorkspaceByCwd(Fu.npath.toPortablePath(E));if(N!==null){let B=N.anchoredLocator;return{name:ip.structUtils.stringifyIdent(B),reference:B.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:E=>Fu.npath.fromPortablePath(Hp.VirtualFS.resolveVirtual(Fu.npath.toPortablePath(E)))},{tree:A,errors:f,preserveSymlinksRequired:I}=(0,Eyl.buildNodeModulesTree)(l,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:o});if(!A){for(let{messageName:E,text:N}of f)this.opts.report.reportError(E,N);return}let C=(0,wUr.buildLocatorMap)(A);await Fyl(r,C,{baseFs:t,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async E=>{let N=ip.structUtils.parseLocator(E),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the slot to exist");return B.customPackageData.manifest}});let b=[];for(let[E,N]of C.entries()){if(Gds(E))continue;let B=ip.structUtils.parseLocator(E),F=this.localStore.get(B.locatorHash);if(typeof F>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(F.pkg))continue;let Q=Tds.jsInstallUtils.extractBuildRequest(F.pkg,F.customPackageData,F.dependencyMeta,{configuration:this.opts.project.configuration});Q&&b.push({buildLocations:N.locations,locator:B,buildRequest:Q})}return I&&this.opts.report.reportWarning(TUr.MessageName.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${ip.formatUtils.pretty(this.opts.project.configuration,"--preserve-symlinks",ip.formatUtils.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:b}}};async function Tyl(e,t){let r=await ip.Manifest.tryFind(t.prefixPath,{baseFs:t.packageFs})??new ip.Manifest,n=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())n.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:Tds.jsInstallUtils.hasBindingGyp(t)}}}async function Ryl(e,t,r,n,{installChangedByUser:a}){let o="";o+=`# Warning: This file is automatically generated. Removing it is fine, but will `,o+=`# cause your node_modules installation to become invalidated. `,o+=` `,o+=`__metadata: -`,o+=` version: ${Rds} +`,o+=` version: ${Nds} `,o+=` nmMode: ${n.value} `;let l=Array.from(t.keys()).sort(),A=ip.structUtils.stringifyLocator(e.topLevelWorkspace.anchoredLocator);for(let C of l){let b=t.get(C);o+=` `,o+=`${JSON.stringify(C)}: @@ -1719,53 +1719,53 @@ ${C?`$env:NODE_PATH=$env_node_path `;for(let E of b.aliases)o+=` - ${JSON.stringify(E)} `}if(C===A&&r.size>0){o+=` bin: `;for(let[E,N]of r){let B=Fu.ppath.contains(e.cwd,E);if(B===null)throw new Error(`Assertion failed: Expected the path to be within the project (${E})`);o+=` ${JSON.stringify(B)}: -`;for(let[F,Q]of N){let J=Fu.ppath.relative(Fu.ppath.join(E,M2),Q);o+=` ${JSON.stringify(F)}: ${JSON.stringify(J)} -`}}}}let f=e.cwd,I=Fu.ppath.join(f,M2,Nds);a&&await Hp.xfs.removePromise(I),await Hp.xfs.changeFilePromise(I,o,{automaticNewlines:!0})}async function vUr(e,{unrollAliases:t=!1}={}){let r=e.cwd,n=Fu.ppath.join(r,M2,Nds),a;try{a=await Hp.xfs.statPromise(n)}catch{}if(!a)return null;let o=(0,w0l.parseSyml)(await Hp.xfs.readFilePromise(n,"utf8"));if(o.__metadata.version>Rds)return null;let l=o.__metadata.nmMode||UP.CLASSIC,A=new Map,f=new Map;delete o.__metadata;for(let[I,C]of Object.entries(o)){let b=C.locations.map(N=>Fu.ppath.join(r,N)),E=C.bin;if(E)for(let[N,B]of Object.entries(E)){let F=Fu.ppath.join(r,Fu.npath.toPortablePath(N)),Q=ip.miscUtils.getMapWithDefault(f,F);for(let[J,ae]of Object.entries(B))Q.set(J,Fu.npath.toPortablePath([F,M2,ae].join(Fu.ppath.sep)))}if(A.set(I,{target:Fu.PortablePath.dot,linkType:gJ.LinkType.HARD,locations:b,aliases:C.aliases||[]}),t&&C.aliases)for(let N of C.aliases){let{scope:B,name:F}=ip.structUtils.parseLocator(I),Q=ip.structUtils.makeLocator(ip.structUtils.makeIdent(B,F),N),J=ip.structUtils.stringifyLocator(Q);A.set(J,{target:Fu.PortablePath.dot,linkType:gJ.LinkType.HARD,locations:b,aliases:[]})}}return{locatorMap:A,binSymlinks:f,locationTree:Dds(A,{skipPrefix:e.cwd}),nmMode:l,mtimeMs:a.mtimeMs}}var HGe=async(e,t)=>{if(e.split(Fu.ppath.sep).indexOf(M2)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${e}`);try{let r;if(!t.innerLoop&&(r=await Hp.xfs.lstatPromise(e),!r.isDirectory()&&!r.isSymbolicLink()||r.isSymbolicLink()&&!t.isWorkspaceDir)){await Hp.xfs.unlinkPromise(e);return}let n=await Hp.xfs.readdirPromise(e,{withFileTypes:!0});for(let o of n){let l=Fu.ppath.join(e,o.name);o.isDirectory()?(o.name!==M2||t&&t.innerLoop)&&await HGe(l,{innerLoop:!0,contentsOnly:!1}):await Hp.xfs.unlinkPromise(l)}let a=!t.innerLoop&&t.isWorkspaceDir&&r?.isSymbolicLink();!t.contentsOnly&&!a&&await Hp.xfs.rmdirPromise(e)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},Sds=4,nFt=(e,{skipPrefix:t})=>{let r=Fu.ppath.contains(t,e);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${e} which is outside project root: ${t}`);let n=r.split(Fu.ppath.sep).filter(f=>f!==""),a=n.indexOf(M2),o=n.slice(0,a).join(Fu.ppath.sep),l=Fu.ppath.join(t,o),A=n.slice(a);return{locationRoot:l,segments:A}},Dds=(e,{skipPrefix:t})=>{let r=new Map;if(e===null)return r;let n=()=>({children:new Map,linkType:gJ.LinkType.HARD});for(let[a,o]of e.entries()){if(o.linkType===gJ.LinkType.SOFT&&Fu.ppath.contains(t,o.target)!==null){let A=ip.miscUtils.getFactoryWithDefault(r,o.target,n);A.locator=a,A.linkType=o.linkType}for(let l of o.locations){let{locationRoot:A,segments:f}=nFt(l,{skipPrefix:t}),I=ip.miscUtils.getFactoryWithDefault(r,A,n);for(let C=0;C{if(process.platform==="win32"&&r===gJ.WindowsLinkType.JUNCTIONS){let n;try{n=await Hp.xfs.lstatPromise(e)}catch{}if(!n||n.isDirectory()){await Hp.xfs.symlinkPromise(e,t,"junction");return}}await Hp.xfs.symlinkPromise(Fu.ppath.relative(Fu.ppath.dirname(t),e),t)};async function kds(e,t,r){let n=Fu.ppath.join(e,`${Tds.default.randomBytes(16).toString("hex")}.tmp`);try{await Hp.xfs.writeFilePromise(n,r);try{await Hp.xfs.linkPromise(n,t)}catch{}}finally{await Hp.xfs.unlinkPromise(n)}}async function x0l({srcPath:e,dstPath:t,entry:r,globalHardlinksStore:n,baseFs:a,nmMode:o}){if(r.kind===tre.FILE){if(o.value===UP.HARDLINKS_GLOBAL&&n&&r.digest){let A=Fu.ppath.join(n,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),f;try{let I=await Hp.xfs.statPromise(A);if(I&&(!r.mtimeMs||I.mtimeMs>r.mtimeMs||I.mtimeMs{await Hp.xfs.mkdirPromise(e,{recursive:!0});let A=async(C=Fu.PortablePath.dot)=>{let b=Fu.ppath.join(t,C),E=await r.readdirPromise(b,{withFileTypes:!0}),N=new Map;for(let B of E){let F=Fu.ppath.join(C,B.name),Q,J=Fu.ppath.join(b,B.name);if(B.isFile()){if(Q={kind:tre.FILE,mode:(await r.lstatPromise(J)).mode},a.value===UP.HARDLINKS_GLOBAL){let ae=await Bds.hashUtils.checksumFile(J,{baseFs:r,algorithm:"sha1"});Q.digest=ae}}else if(B.isDirectory())Q={kind:tre.DIRECTORY};else if(B.isSymbolicLink())Q={kind:tre.SYMLINK,symlinkTo:await r.readlinkPromise(J)};else throw new Error(`Unsupported file type (file: ${J}, mode: 0o${await r.statSync(J).mode.toString(8).padStart(6,"0")})`);if(N.set(F,Q),B.isDirectory()&&F!==M2){let ae=await A(F);for(let[ne,ce]of ae)N.set(ne,ce)}}return N},f;if(a.value===UP.HARDLINKS_GLOBAL&&n&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);try{f=new Map(Object.entries(JSON.parse(await Hp.xfs.readFilePromise(C,"utf8"))))}catch{f=await A()}}else f=await A();let I=!1;for(let[C,b]of f){let E=Fu.ppath.join(t,C),N=Fu.ppath.join(e,C);if(b.kind===tre.DIRECTORY)await Hp.xfs.mkdirPromise(N,{recursive:!0});else if(b.kind===tre.FILE){let B=b.mtimeMs;await x0l({srcPath:E,dstPath:N,entry:b,nmMode:a,baseFs:r,globalHardlinksStore:n}),b.mtimeMs!==B&&(I=!0)}else b.kind===tre.SYMLINK&&await wUr(Fu.ppath.resolve(Fu.ppath.dirname(N),b.symlinkTo),N,o)}if(a.value===UP.HARDLINKS_GLOBAL&&n&&I&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);await Hp.xfs.removePromise(C),await kds(n,C,Buffer.from(JSON.stringify(Object.fromEntries(f))))}};function F0l(e,t,r,n){let a=new Map,o=new Map,l=new Map,A=!1,f=(I,C,b,E,N)=>{let B=!0,F=Fu.ppath.join(I,C),Q=new Set;if(C===M2||C.startsWith("@")){let ae;try{ae=Hp.xfs.statSync(F)}catch{}B=!!ae,ae?ae.mtimeMs>r?(A=!0,Q=new Set(Hp.xfs.readdirSync(F))):Q=new Set(b.children.get(C).children.keys()):A=!0;let ne=t.get(I);if(ne){let ce=Fu.ppath.join(I,M2,rFt),fe;try{fe=Hp.xfs.statSync(ce)}catch{}if(!fe)A=!0;else if(fe.mtimeMs>r){A=!0;let ue=new Set(Hp.xfs.readdirSync(ce)),de=new Map;o.set(I,de);for(let[be,Se]of ne)ue.has(be)&&de.set(be,Se)}else o.set(I,ne)}}else B=N.has(C);let J=b.children.get(C);if(B){let{linkType:ae,locator:ne}=J,ce={children:new Map,linkType:ae,locator:ne};if(E.children.set(C,ce),ne){let fe=ip.miscUtils.getSetWithDefault(l,ne);fe.add(F),l.set(ne,fe)}for(let fe of J.children.keys())f(F,fe,J,ce,Q)}else J.locator&&n.storedBuildState.delete(ip.structUtils.parseLocator(J.locator).locatorHash)};for(let[I,C]of e){let{linkType:b,locator:E}=C,N={children:new Map,linkType:b,locator:E};if(a.set(I,N),E){let B=ip.miscUtils.getSetWithDefault(l,C.locator);B.add(I),l.set(C.locator,B)}C.children.has(M2)&&f(I,M2,C,N,new Set)}return{locationTree:a,binSymlinks:o,locatorLocations:l,installChangedByUser:A}}function xds(e){let t=ip.structUtils.parseDescriptor(e);return ip.structUtils.isVirtualDescriptor(t)&&(t=ip.structUtils.devirtualizeDescriptor(t)),t.range.startsWith("link:")}async function Z0l(e,t,r,{loadManifest:n}){let a=new Map;for(let[A,{locations:f}]of e){let I=xds(A)?null:await n(A,f[0]),C=new Map;if(I)for(let[b,E]of I.bin){let N=Fu.ppath.join(f[0],E);E!==""&&Hp.xfs.existsSync(N)&&C.set(b,E)}a.set(A,C)}let o=new Map,l=(A,f,I)=>{let C=new Map,b=Fu.ppath.contains(r,A);if(I.locator&&b!==null){let E=a.get(I.locator);for(let[N,B]of E){let F=Fu.ppath.join(A,Fu.npath.toPortablePath(B));C.set(N,F)}for(let[N,B]of I.children){let F=Fu.ppath.join(A,N),Q=l(F,F,B);Q.size>0&&o.set(A,new Map([...o.get(A)||new Map,...Q]))}}else for(let[E,N]of I.children){let B=l(Fu.ppath.join(A,E),f,N);for(let[F,Q]of B)C.set(F,Q)}return C};for(let[A,f]of t){let I=l(A,A,f);I.size>0&&o.set(A,new Map([...o.get(A)||new Map,...I]))}return o}var vds=(e,t)=>{if(!e||!t)return e===t;let r=ip.structUtils.parseLocator(e);ip.structUtils.isVirtualLocator(r)&&(r=ip.structUtils.devirtualizeLocator(r));let n=ip.structUtils.parseLocator(t);return ip.structUtils.isVirtualLocator(n)&&(n=ip.structUtils.devirtualizeLocator(n)),ip.structUtils.areLocatorsEqual(r,n)};function Gds(e){return Fu.ppath.join(e.get("globalFolder"),"store")}function L0l(e,t){let r=n=>{let a=n.split(Fu.ppath.sep),o=a.lastIndexOf(M2);if(o<0||o==a.length-1)throw new Error(`Assertion failed. Path is outside of any node_modules package ${n}`);return a.slice(0,o+(a[o+1].startsWith("@")?3:2)).join(Fu.ppath.sep)};for(let n of e.values())for(let[a,o]of n)t.has(r(o))&&n.delete(a)}async function V0l(e,t,{baseFs:r,project:n,report:a,loadManifest:o,realLocatorChecksums:l}){let A=Fu.ppath.join(n.cwd,M2),{locationTree:f,binSymlinks:I,locatorLocations:C,installChangedByUser:b}=F0l(e.locationTree,e.binSymlinks,e.mtimeMs,n),E=Dds(t,{skipPrefix:n.cwd}),N=[],B=async({srcDir:Se,dstDir:De,linkType:k,globalHardlinksStore:tt,nmMode:ze,windowsLinkType:Le,packageChecksum:Je})=>{let ft=(async()=>{try{k===gJ.LinkType.SOFT?(await Hp.xfs.mkdirPromise(Fu.ppath.dirname(De),{recursive:!0}),await wUr(Fu.ppath.resolve(Se),De,Le)):await G0l(De,Se,{baseFs:r,globalHardlinksStore:tt,nmMode:ze,windowsLinkType:Le,packageChecksum:Je})}catch(lt){throw lt.message=`While persisting ${Se} -> ${De} ${lt.message}`,lt}finally{ce.tick()}})().then(()=>N.splice(N.indexOf(ft),1));N.push(ft),N.length>Sds&&await Promise.race(N)},F=async(Se,De,k)=>{let tt=(async()=>{let ze=async(Le,Je,ft)=>{try{ft.innerLoop||await Hp.xfs.mkdirPromise(Je,{recursive:!0});let lt=await Hp.xfs.readdirPromise(Le,{withFileTypes:!0});for(let Ot of lt){if(!ft.innerLoop&&Ot.name===rFt)continue;let Er=Fu.ppath.join(Le,Ot.name),Sr=Fu.ppath.join(Je,Ot.name);Ot.isDirectory()?(Ot.name!==M2||ft&&ft.innerLoop)&&(await Hp.xfs.mkdirPromise(Sr,{recursive:!0}),await ze(Er,Sr,{...ft,innerLoop:!0})):de.value===UP.HARDLINKS_LOCAL||de.value===UP.HARDLINKS_GLOBAL?await Hp.xfs.linkPromise(Er,Sr):await Hp.xfs.copyFilePromise(Er,Sr,R0l.default.constants.COPYFILE_FICLONE)}}catch(lt){throw ft.innerLoop||(lt.message=`While cloning ${Le} -> ${Je} ${lt.message}`),lt}finally{ft.innerLoop||ce.tick()}};await ze(Se,De,k)})().then(()=>N.splice(N.indexOf(tt),1));N.push(tt),N.length>Sds&&await Promise.race(N)},Q=async(Se,De,k)=>{if(k)for(let[tt,ze]of De.children){let Le=k.children.get(tt);await Q(Fu.ppath.join(Se,tt),ze,Le)}else{De.children.has(M2)&&await HGe(Fu.ppath.join(Se,M2),{contentsOnly:!1});let tt=Fu.ppath.basename(Se)===M2&&f.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await HGe(Se,{contentsOnly:Se===A,isWorkspaceDir:tt})}};for(let[Se,De]of f){let k=E.get(Se);for(let[tt,ze]of De.children){if(tt===".")continue;let Le=k&&k.children.get(tt),Je=Fu.ppath.join(Se,tt);await Q(Je,ze,Le)}}let J=async(Se,De,k)=>{if(k){vds(De.locator,k.locator)||await HGe(Se,{contentsOnly:De.linkType===gJ.LinkType.HARD});for(let[tt,ze]of De.children){let Le=k.children.get(tt);await J(Fu.ppath.join(Se,tt),ze,Le)}}else{De.children.has(M2)&&await HGe(Fu.ppath.join(Se,M2),{contentsOnly:!0});let tt=Fu.ppath.basename(Se)===M2&&E.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await HGe(Se,{contentsOnly:De.linkType===gJ.LinkType.HARD,isWorkspaceDir:tt})}};for(let[Se,De]of E){let k=f.get(Se);for(let[tt,ze]of De.children){if(tt===".")continue;let Le=k&&k.children.get(tt);await J(Fu.ppath.join(Se,tt),ze,Le)}}let ae=new Map,ne=[];for(let[Se,De]of C)for(let k of De){let{locationRoot:tt,segments:ze}=nFt(k,{skipPrefix:n.cwd}),Le=E.get(tt),Je=tt;if(Le){for(let ft of ze)if(Je=Fu.ppath.join(Je,ft),Le=Le.children.get(ft),!Le)break;if(Le){let ft=vds(Le.locator,Se),lt=t.get(Le.locator),Ot=lt.target,Er=Je,Sr=lt.linkType;if(ft)ae.has(Ot)||ae.set(Ot,Er);else if(Ot!==Er){let jt=ip.structUtils.parseLocator(Le.locator);ip.structUtils.isVirtualLocator(jt)&&(jt=ip.structUtils.devirtualizeLocator(jt)),ne.push({srcDir:Ot,dstDir:Er,linkType:Sr,realLocatorHash:jt.locatorHash})}}}}for(let[Se,{locations:De}]of t.entries())for(let k of De){let{locationRoot:tt,segments:ze}=nFt(k,{skipPrefix:n.cwd}),Le=f.get(tt),Je=E.get(tt),ft=tt,lt=t.get(Se),Ot=ip.structUtils.parseLocator(Se);ip.structUtils.isVirtualLocator(Ot)&&(Ot=ip.structUtils.devirtualizeLocator(Ot));let Er=Ot.locatorHash,Sr=lt.target,jt=k;if(Sr===jt)continue;let Bt=lt.linkType;for(let Dt of ze)Je=Je.children.get(Dt);if(!Le)ne.push({srcDir:Sr,dstDir:jt,linkType:Bt,realLocatorHash:Er});else for(let Dt of ze)if(ft=Fu.ppath.join(ft,Dt),Le=Le.children.get(Dt),!Le){ne.push({srcDir:Sr,dstDir:jt,linkType:Bt,realLocatorHash:Er});break}}let ce=ip.Report.progressViaCounter(ne.length),fe=a.reportProgress(ce),ue=n.configuration.get("nmMode"),de={value:ue},be=n.configuration.get("winLinkType");try{let Se=de.value===UP.HARDLINKS_GLOBAL?`${Gds(n.configuration)}/v1`:null;if(Se&&!await Hp.xfs.existsPromise(Se)){await Hp.xfs.mkdirpPromise(Se);for(let k=0;k<256;k++)await Hp.xfs.mkdirPromise(Fu.ppath.join(Se,k.toString(16).padStart(2,"0")))}for(let k of ne)(k.linkType===gJ.LinkType.SOFT||!ae.has(k.srcDir))&&(ae.set(k.srcDir,k.dstDir),await B({...k,globalHardlinksStore:Se,nmMode:de,windowsLinkType:be,packageChecksum:l.get(k.realLocatorHash)||null}));await Promise.all(N),N.length=0;for(let k of ne){let tt=ae.get(k.srcDir);k.linkType!==gJ.LinkType.SOFT&&k.dstDir!==tt&&await F(tt,k.dstDir,{nmMode:de})}await Promise.all(N),await Hp.xfs.mkdirPromise(A,{recursive:!0}),L0l(I,new Set(ne.map(k=>k.dstDir)));let De=await Z0l(t,E,n.cwd,{loadManifest:o});await W0l(I,De,n.cwd,be),await k0l(n,t,De,de,{installChangedByUser:b}),ue==UP.HARDLINKS_GLOBAL&&de.value==UP.HARDLINKS_LOCAL&&a.reportWarningOnce(bUr.MessageName.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{fe.stop()}}async function W0l(e,t,r,n){for(let a of e.keys()){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!t.has(a)){let o=Fu.ppath.join(a,M2,rFt);await Hp.xfs.removePromise(o)}}for(let[a,o]of t){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let l=Fu.ppath.join(a,M2,rFt),A=e.get(a)||new Map;await Hp.xfs.mkdirPromise(l,{recursive:!0});for(let f of A.keys())o.has(f)||(await Hp.xfs.removePromise(Fu.ppath.join(l,f)),process.platform==="win32"&&await Hp.xfs.removePromise(Fu.ppath.join(l,`${f}.cmd`)));for(let[f,I]of o){let C=A.get(f),b=Fu.ppath.join(l,f);C!==I&&(process.platform==="win32"?await(0,T0l.default)(Fu.npath.fromPortablePath(I),Fu.npath.fromPortablePath(b),{createPwshFile:!1}):(await Hp.xfs.removePromise(b),await wUr(I,b,n),Fu.ppath.contains(r,await Hp.xfs.realpathPromise(I))!==null&&await Hp.xfs.chmodPromise(I,493)))}}}});var Lds=H(iFt=>{"use strict";Object.defineProperty(iFt,"__esModule",{value:!0});iFt.PnpLooseLinker=void 0;var Fds=mn(),N7e=Io(),O0l=u8(),P0l=E7e(),Zds=OGe(),M0l=iUr(),RUr=class extends Zds.PnpLinker{constructor(){super(...arguments),this.mode="loose"}makeInstaller(t){return new NUr(t)}};iFt.PnpLooseLinker=RUr;var NUr=class extends Zds.PnpInstaller{constructor(){super(...arguments),this.mode="loose"}async transformPnpSettings(t){let r=new N7e.VirtualFS({baseFs:new O0l.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),n=(0,M0l.makeRuntimeApi)(t,this.opts.project.cwd,r),{tree:a,errors:o}=(0,P0l.buildNodeModulesTree)(n,{pnpifyFs:!1,project:this.opts.project});if(!a){for(let{messageName:C,text:b}of o)this.opts.report.reportError(C,b);return}let l=new Map;t.fallbackPool=l;let A=(C,b)=>{let E=Fds.structUtils.parseLocator(b.locator),N=Fds.structUtils.stringifyIdent(E);N===C?l.set(C,E.reference):l.set(C,[N,E.reference])},f=N7e.ppath.join(this.opts.project.cwd,N7e.Filename.nodeModules),I=a.get(f);if(!(typeof I>"u")){if("target"in I)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let C of I.dirList){let b=N7e.ppath.join(f,C),E=a.get(b);if(typeof E>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in E)A(C,E);else for(let N of E.dirList){let B=N7e.ppath.join(b,N),F=a.get(B);if(typeof F>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in F)A(`${C}/${N}`,F);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}}});var Wds=H(rre=>{"use strict";Object.defineProperty(rre,"__esModule",{value:!0});rre.PnpLooseLinker=rre.NodeModulesMode=rre.NodeModulesLinker=void 0;var DUr=mn(),H0l=Io(),sFt=E7e(),R0e=TUr();Object.defineProperty(rre,"NodeModulesLinker",{enumerable:!0,get:function(){return R0e.NodeModulesLinker}});Object.defineProperty(rre,"NodeModulesMode",{enumerable:!0,get:function(){return R0e.NodeModulesMode}});var Y0l=TUr(),Vds=Lds();Object.defineProperty(rre,"PnpLooseLinker",{enumerable:!0,get:function(){return Vds.PnpLooseLinker}});var Q0l={hooks:{cleanGlobalArtifacts:async e=>{let t=(0,Y0l.getGlobalHardlinksStore)(e);await H0l.xfs.removePromise(t)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:DUr.SettingsType.STRING,values:[sFt.NodeModulesHoistingLimits.WORKSPACES,sFt.NodeModulesHoistingLimits.DEPENDENCIES,sFt.NodeModulesHoistingLimits.NONE],default:sFt.NodeModulesHoistingLimits.NONE},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:DUr.SettingsType.STRING,values:[R0e.NodeModulesMode.CLASSIC,R0e.NodeModulesMode.HARDLINKS_LOCAL,R0e.NodeModulesMode.HARDLINKS_GLOBAL],default:R0e.NodeModulesMode.CLASSIC},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:DUr.SettingsType.BOOLEAN,default:!0}},linkers:[R0e.NodeModulesLinker,Vds.PnpLooseLinker]};rre.default=Q0l});var YGe=H(oFt=>{"use strict";Object.defineProperty(oFt,"__esModule",{value:!0});oFt.PROTOCOL=void 0;oFt.PROTOCOL="npm:"});var N0e=H(KP=>{"use strict";Object.defineProperty(KP,"__esModule",{value:!0});KP.RegistryType=void 0;KP.normalizeRegistry=QGe;KP.getAuditRegistry=U0l;KP.getPublishRegistry=K0l;KP.getScopeRegistry=Ods;KP.getDefaultRegistry=D7e;KP.getRegistryConfiguration=Pds;KP.getScopeConfiguration=kUr;KP.getAuthConfiguration=z0l;KP.isPackageApproved=tyl;var X0l=(Wa(),vi(Va)),aFt=mn(),J0l=X0l.__importDefault(Tk()),Mue;(function(e){e.AUDIT_REGISTRY="npmAuditRegistry",e.FETCH_REGISTRY="npmRegistryServer",e.PUBLISH_REGISTRY="npmPublishRegistry"})(Mue||(KP.RegistryType=Mue={}));function QGe(e){return e.replace(/\/$/,"")}function U0l({configuration:e}){return D7e({configuration:e,type:Mue.AUDIT_REGISTRY})}function K0l(e,{configuration:t}){return e.publishConfig?.registry?QGe(e.publishConfig.registry):e.name?Ods(e.name.scope,{configuration:t,type:Mue.PUBLISH_REGISTRY}):D7e({configuration:t,type:Mue.PUBLISH_REGISTRY})}function Ods(e,{configuration:t,type:r=Mue.FETCH_REGISTRY}){let n=kUr(e,{configuration:t});if(n===null)return D7e({configuration:t,type:r});let a=n.get(r);return a===null?D7e({configuration:t,type:r}):QGe(a)}function D7e({configuration:e,type:t=Mue.FETCH_REGISTRY}){let r=e.get(t);return QGe(r!==null?r:e.get(Mue.FETCH_REGISTRY))}function Pds(e,{configuration:t}){let r=t.get("npmRegistries"),n=QGe(e),a=r.get(n);if(typeof a<"u")return a;let o=r.get(n.replace(/^[a-z]+:/,""));return typeof o<"u"?o:null}var j0l=new Map([["npmRegistryServer","https://npm.jsr.io/"]]);function kUr(e,{configuration:t}){if(e===null)return null;let n=t.get("npmScopes").get(e);return n||(e==="jsr"?j0l:null)}function z0l(e,{configuration:t,ident:r}){let n=r&&kUr(r.scope,{configuration:t});return n?.get("npmAuthIdent")||n?.get("npmAuthToken")?n:Pds(e,{configuration:t})||t}function q0l({configuration:e,version:t,publishTimes:r}){let n=e.get("npmMinimalAgeGate");if(n){let a=r?.[t];if(typeof a>"u"||(new Date().getTime()-new Date(a).getTime())/60/1e3$0l(t,r,n))}function tyl(e){return!q0l(e)||eyl(e)}});var JGe=H(XH=>{"use strict";Object.defineProperty(XH,"__esModule",{value:!0});XH.AuthType=void 0;XH.handleInvalidAuthenticationError=Yue;XH.customPackageError=Yds;XH.getIdentUrl=GUr;XH.getPackageMetadata=cyl;XH.get=Jds;XH.post=dyl;XH.put=pyl;XH.del=fyl;var Hds=(Wa(),vi(Va)),TT=mn(),Hue=mn(),nre=Io(),Mds=z6e(),ryl=WO(),nyl=Hds.__importDefault(jC()),xUr=Hds.__importStar(N0e()),QH;(function(e){e[e.NO_AUTH=0]="NO_AUTH",e[e.BEST_EFFORT=1]="BEST_EFFORT",e[e.CONFIGURATION=2]="CONFIGURATION",e[e.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(QH||(XH.AuthType=QH={}));async function Yue(e,{attemptedAs:t,registry:r,headers:n,configuration:a}){if(lFt(e))throw new Hue.ReportError(Hue.MessageName.AUTHENTICATION_INVALID,"Invalid OTP token");if(e.originalError?.name==="HTTPError"&&e.originalError?.response.statusCode===401)throw new Hue.ReportError(Hue.MessageName.AUTHENTICATION_INVALID,`Invalid authentication (${typeof t!="string"?`as ${await hyl(r,n,{configuration:a})}`:`attempted as ${t}`})`)}function Yds(e,t){let r=e.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${TT.formatUtils.applyHyperlink(t,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}function GUr(e){return e.scope?`/@${e.scope}%2f${e.name}`:`/${e.name}`}var Qds=new Map,iyl=new Map;async function syl(e){return await TT.miscUtils.getFactoryWithDefault(Qds,e,async()=>{let t=null;try{t=await nre.xfs.readJsonPromise(e)}catch{}return t})}async function oyl(e,t,{configuration:r,cached:n,registry:a,headers:o,version:l,...A}){return await TT.miscUtils.getFactoryWithDefault(iyl,e,async()=>await Jds(GUr(t),{...A,customErrorMessage:Yds,configuration:r,registry:a,ident:t,headers:{...o,"If-None-Match":n?.etag,"If-Modified-Since":n?.lastModified},wrapNetworkRequest:async f=>async()=>{let I=await f();if(I.statusCode===304){if(n===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...I,body:n.metadata}}let C=lyl(JSON.parse(I.body.toString())),b={metadata:C,etag:I.headers.etag,lastModified:I.headers["last-modified"]};return Qds.set(e,Promise.resolve(b)),Promise.resolve().then(async()=>{let E=`${e}-${process.pid}.tmp`;await nre.xfs.mkdirPromise(nre.ppath.dirname(E),{recursive:!0}),await nre.xfs.writeJsonPromise(E,b,{compact:!0}),await nre.xfs.renamePromise(E,e)}).catch(()=>{}),{...I,body:C}}}))}function ayl(e){return e.scope!==null?`@${e.scope}-${e.name}-${e.scope.length}`:e.name}async function cyl(e,{cache:t,project:r,registry:n,headers:a,version:o,...l}){let{configuration:A}=r;n=k7e(A,{ident:e,registry:n});let f=gyl(A,n),I=nre.ppath.join(f,`${ayl(e)}.json`),C=null;if(!r.lockfileNeedsRefresh&&(C=await syl(I),C)){if(typeof o<"u"&&typeof C.metadata.versions[o]<"u")return C.metadata;if(A.get("enableOfflineMode")){let b=structuredClone(C.metadata),E=new Set;if(t){for(let B of Object.keys(b.versions)){let F=TT.structUtils.makeLocator(e,`npm:${B}`),Q=t.getLocatorMirrorPath(F);(!Q||!nre.xfs.existsSync(Q))&&(delete b.versions[B],E.add(B))}let N=b["dist-tags"].latest;if(E.has(N)){let B=Object.keys(C.metadata.versions).sort(nyl.default.compare),F=B.indexOf(N);for(;E.has(B[F])&&F>=0;)F-=1;F>=0?b["dist-tags"].latest=B[F]:delete b["dist-tags"].latest}}return b}}return await oyl(I,e,{...l,configuration:A,cached:C,registry:n,headers:a,version:o})}var Xds=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function lyl(e){return{"dist-tags":e["dist-tags"],versions:Object.fromEntries(Object.entries(e.versions).map(([t,r])=>[t,(0,ryl.pick)(r,Xds)])),time:e.time}}var uyl=TT.hashUtils.makeHash("time",...Xds).slice(0,6);function gyl(e,t){let r=Ayl(e),n=new URL(t);return nre.ppath.join(r,uyl,n.hostname)}function Ayl(e){return nre.ppath.join(e.get("globalFolder"),"metadata/npm")}async function Jds(e,{configuration:t,headers:r,ident:n,authType:a,allowOidc:o,registry:l,...A}){l=k7e(t,{ident:n,registry:l}),n&&n.scope&&typeof a>"u"&&(a=QH.BEST_EFFORT);let f=await cFt(l,{authType:a,allowOidc:o,configuration:t,ident:n});f&&(r={...r,authorization:f});try{return await TT.httpUtils.get(e.charAt(0)==="/"?`${l}${e}`:e,{configuration:t,headers:r,...A})}catch(I){throw await Yue(I,{registry:l,configuration:t,headers:r}),I}}async function dyl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=QH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=k7e(n,{ident:o,registry:f});let b=await cFt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...XGe(I)});try{return await TT.httpUtils.post(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!lFt(E)||I)throw await Yue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await FUr(E,{configuration:n});let N={...a,...XGe(I)};try{return await TT.httpUtils.post(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await Yue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function pyl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=QH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=k7e(n,{ident:o,registry:f});let b=await cFt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...XGe(I)});try{return await TT.httpUtils.put(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!lFt(E))throw await Yue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await FUr(E,{configuration:n});let N={...a,...XGe(I)};try{return await TT.httpUtils.put(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await Yue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function fyl(e,{attemptedAs:t,configuration:r,headers:n,ident:a,authType:o=QH.ALWAYS_AUTH,allowOidc:l,registry:A,otp:f,...I}){A=k7e(r,{ident:a,registry:A});let C=await cFt(A,{authType:o,allowOidc:l,configuration:r,ident:a});C&&(n={...n,authorization:C}),f&&(n={...n,...XGe(f)});try{return await TT.httpUtils.del(A+e,{configuration:r,headers:n,...I})}catch(b){if(!lFt(b)||f)throw await Yue(b,{attemptedAs:t,registry:A,configuration:r,headers:n}),b;f=await FUr(b,{configuration:r});let E={...n,...XGe(f)};try{return await TT.httpUtils.del(`${A}${e}`,{configuration:r,headers:E,...I})}catch(N){throw await Yue(N,{attemptedAs:t,registry:A,configuration:r,headers:n}),N}}}function k7e(e,{ident:t,registry:r}){if(typeof r>"u"&&t)return xUr.getScopeRegistry(t.scope,{configuration:e});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return xUr.normalizeRegistry(r)}async function cFt(e,{authType:t=QH.CONFIGURATION,allowOidc:r=!1,configuration:n,ident:a}){let o=xUr.getAuthConfiguration(e,{configuration:n,ident:a}),l=Iyl(o,t);if(!l)return null;let A=await n.reduceHook(f=>f.getNpmAuthenticationHeader,void 0,e,{configuration:n,ident:a});if(A)return A;if(o.get("npmAuthToken"))return`Bearer ${o.get("npmAuthToken")}`;if(o.get("npmAuthIdent")){let f=o.get("npmAuthIdent");return f.includes(":")?`Basic ${Buffer.from(f).toString("base64")}`:`Basic ${f}`}if(r&&a){let f=await myl(e,{configuration:n,ident:a});if(f)return`Bearer ${f}`}if(l&&t!==QH.BEST_EFFORT)throw new Hue.ReportError(Hue.MessageName.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function Iyl(e,t){switch(t){case QH.CONFIGURATION:return e.get("npmAlwaysAuth");case QH.BEST_EFFORT:case QH.ALWAYS_AUTH:return!0;case QH.NO_AUTH:return!1;default:throw new Error("Unreachable")}}async function hyl(e,t,{configuration:r}){if(typeof t>"u"||typeof t.authorization>"u")return"an anonymous user";try{return(await TT.httpUtils.get(new URL(`${e}/-/whoami`).href,{configuration:r,headers:t,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function FUr(e,{configuration:t}){let r=e.originalError?.response.headers["npm-notice"];if(r&&(await TT.StreamReport.start({configuration:t,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(Hue.MessageName.UNNAMED,r.replace(/(https?:\/\/\S+)/g,TT.formatUtils.pretty(t,"$1",TT.formatUtils.Type.URL))),!process.env.YARN_IS_TEST_ENV){let o=r.match(/open (https?:\/\/\S+)/i);if(o&&TT.nodeUtils.openUrl){let{openNow:l}=await(0,Mds.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});l&&(await TT.nodeUtils.openUrl(o[1])||(a.reportSeparator(),a.reportWarning(Hue.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` -`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:n}=await(0,Mds.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` -`),n}function lFt(e){if(e.originalError?.name!=="HTTPError")return!1;try{return(e.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function XGe(e){return{"npm-otp":e}}async function myl(e,{configuration:t,ident:r}){let n=null;if(process.env.GITLAB_CI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.CIRCLECI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.GITHUB_ACTIONS){if(!(process.env.ACTIONS_ID_TOKEN_REQUEST_URL&&process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN))return null;let a=`npm:${new URL(e).host.replace("registry.yarnpkg.com","registry.npmjs.org").replace("yarn.npmjs.org","registry.npmjs.org")}`,o=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);o.searchParams.append("audience",a),n=(await TT.httpUtils.get(o.href,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).value}if(!n)return null;try{return(await TT.httpUtils.post(`${e}/-/npm/v1/oidc/token/exchange/package${GUr(r)}`,null,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${n}`}})).token||null}catch{}return null}});var jds=H(uFt=>{"use strict";Object.defineProperty(uFt,"__esModule",{value:!0});uFt.NpmHttpFetcher=void 0;var Kds=(Wa(),vi(Va)),UGe=mn(),Cyl=Kds.__importDefault(jC()),_yl=YGe(),Uds=Kds.__importStar(JGe()),ZUr=class{supports(t,r){if(!t.reference.startsWith(_yl.PROTOCOL))return!1;let{selector:n,params:a}=UGe.structUtils.parseRange(t.reference);return!(!Cyl.default.valid(n)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${UGe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:UGe.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let{params:n}=UGe.structUtils.parseRange(t.reference);if(n===null||typeof n.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await Uds.get(n.__archiveUrl,{customErrorMessage:Uds.customPackageError,configuration:r.project.configuration,ident:t});return await UGe.tgzUtils.convertToZip(a,{configuration:r.project.configuration,prefixPath:UGe.structUtils.getIdentVendorPath(t),stripComponents:1})}};uFt.NpmHttpFetcher=ZUr});var zds=H(AFt=>{"use strict";Object.defineProperty(AFt,"__esModule",{value:!0});AFt.NpmRemapResolver=void 0;var gFt=mn(),x7e=YGe(),LUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(x7e.PROTOCOL)||!gFt.structUtils.tryParseDescriptor(t.range.slice(x7e.PROTOCOL.length),!0))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){let n=r.project.configuration.normalizeDependency(gFt.structUtils.parseDescriptor(t.range.slice(x7e.PROTOCOL.length),!0));return r.resolver.getResolutionDependencies(n,r)}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency(gFt.structUtils.parseDescriptor(t.range.slice(x7e.PROTOCOL.length),!0));return await n.resolver.getCandidates(a,r,n)}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency(gFt.structUtils.parseDescriptor(t.range.slice(x7e.PROTOCOL.length),!0));return a.resolver.getSatisfying(o,r,n,a)}resolve(t,r){throw new Error("Unreachable")}};AFt.NpmRemapResolver=LUr});var pFt=H(dFt=>{"use strict";Object.defineProperty(dFt,"__esModule",{value:!0});dFt.NpmSemverFetcher=void 0;var WUr=(Wa(),vi(Va)),G7e=mn(),qds=mn(),yyl=WUr.__importDefault(jC()),$ds=YGe(),byl=WUr.__importStar(N0e()),F7e=WUr.__importStar(JGe()),VUr=class e{supports(t,r){if(!t.reference.startsWith($ds.PROTOCOL))return!1;let n=new URL(t.reference);return!(!yyl.default.valid(n.pathname)||n.searchParams.has("__archiveUrl"))}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${G7e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:G7e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n;try{n=await F7e.get(e.getLocatorUrl(t),{customErrorMessage:F7e.customPackageError,configuration:r.project.configuration,ident:t})}catch{n=await F7e.get(e.getLocatorUrl(t).replace(/%2f/g,"/"),{customErrorMessage:F7e.customPackageError,configuration:r.project.configuration,ident:t})}return await G7e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:G7e.structUtils.getIdentVendorPath(t),stripComponents:1})}static isConventionalTarballUrl(t,r,{configuration:n}){let a=byl.getScopeRegistry(t.scope,{configuration:n}),o=e.getLocatorUrl(t);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+o||r===a+o.replace(/%2f/g,"/")}static getLocatorUrl(t){let r=G7e.semverUtils.clean(t.reference.slice($ds.PROTOCOL.length));if(r===null)throw new qds.ReportError(qds.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${F7e.getIdentUrl(t)}/-/${t.name}-${r}.tgz`}};dFt.NpmSemverFetcher=VUr});var nps=H(IFt=>{"use strict";Object.defineProperty(IFt,"__esModule",{value:!0});IFt.NpmSemverResolver=void 0;var rps=(Wa(),vi(Va)),IL=mn(),KGe=mn(),Eyl=mn(),D0e=mn(),eps=rps.__importDefault(jC()),Syl=pFt(),Nj=YGe(),vyl=N0e(),tps=rps.__importStar(JGe()),fFt=D0e.structUtils.makeIdent(null,"node-gyp"),Byl=/\b(node-gyp|prebuild-install)\b/,OUr=class{supportsDescriptor(t,r){return t.range.startsWith(Nj.PROTOCOL)?!!KGe.semverUtils.validRange(t.range.slice(Nj.PROTOCOL.length)):!1}supportsLocator(t,r){if(!t.reference.startsWith(Nj.PROTOCOL))return!1;let{selector:n}=D0e.structUtils.parseRange(t.reference);return!!eps.default.valid(n)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=KGe.semverUtils.validRange(t.range.slice(Nj.PROTOCOL.length));if(a===null)throw new Error(`Expected a valid range, got ${t.range.slice(Nj.PROTOCOL.length)}`);let o=await tps.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project,version:eps.default.valid(a.raw)?a.raw:void 0}),l=IL.miscUtils.mapAndFilter(Object.keys(o.versions),C=>{try{let b=new KGe.semverUtils.SemVer(C);if(a.test(b))return b}catch{}return IL.miscUtils.mapAndFilter.skip}),A=l.filter(C=>(0,vyl.isPackageApproved)({configuration:n.project.configuration,ident:t,version:C.raw,publishTimes:o.time}));if(l.length>0&&A.length===0)throw new IL.ReportError(IL.MessageName.REMOTE_NOT_FOUND,`All versions satisfying "${t.range.slice(Nj.PROTOCOL.length)}" are quarantined`);let f=A.filter(C=>!o.versions[C.raw].deprecated),I=f.length>0?f:A;return I.sort((C,b)=>-C.compare(b)),I.map(C=>{let b=D0e.structUtils.makeLocator(t,`${Nj.PROTOCOL}${C.raw}`),E=o.versions[C.raw].dist.tarball;return Syl.NpmSemverFetcher.isConventionalTarballUrl(b,E,{configuration:n.project.configuration})?b:D0e.structUtils.bindLocator(b,{__archiveUrl:E})})}async getSatisfying(t,r,n,a){let o=KGe.semverUtils.validRange(t.range.slice(Nj.PROTOCOL.length));if(o===null)throw new Error(`Expected a valid range, got ${t.range.slice(Nj.PROTOCOL.length)}`);return{locators:IL.miscUtils.mapAndFilter(n,f=>{if(f.identHash!==t.identHash)return IL.miscUtils.mapAndFilter.skip;let I=D0e.structUtils.tryParseRange(f.reference,{requireProtocol:Nj.PROTOCOL});if(!I)return IL.miscUtils.mapAndFilter.skip;let C=new KGe.semverUtils.SemVer(I.selector);return o.test(C)?{locator:f,version:C}:IL.miscUtils.mapAndFilter.skip}).sort((f,I)=>-f.version.compare(I.version)).map(({locator:f})=>f),sorted:!0}}async resolve(t,r){let{selector:n}=D0e.structUtils.parseRange(t.reference),a=KGe.semverUtils.clean(n);if(a===null)throw new IL.ReportError(IL.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let o=await tps.getPackageMetadata(t,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(o,"versions"))throw new IL.ReportError(IL.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(o.versions,a))throw new IL.ReportError(IL.MessageName.REMOTE_NOT_FOUND,`Registry failed to return reference "${a}"`);let l=new IL.Manifest;if(l.load(o.versions[a]),!l.dependencies.has(fFt.identHash)&&!l.peerDependencies.has(fFt.identHash)){for(let A of l.scripts.values())if(A.match(Byl)){l.dependencies.set(fFt.identHash,D0e.structUtils.makeDescriptor(fFt,"latest"));break}}return{...t,version:a,languageName:"node",linkType:Eyl.LinkType.HARD,conditions:l.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(l.dependencies),peerDependencies:l.peerDependencies,dependenciesMeta:l.dependenciesMeta,peerDependenciesMeta:l.peerDependenciesMeta,bin:l.bin}}};IFt.NpmSemverResolver=OUr});var ops=H(hFt=>{"use strict";Object.defineProperty(hFt,"__esModule",{value:!0});hFt.NpmTagResolver=void 0;var sps=(Wa(),vi(Va)),k0e=mn(),Z7e=mn(),PUr=sps.__importDefault(jC()),wyl=pFt(),jGe=YGe(),ips=N0e(),Tyl=sps.__importStar(JGe()),MUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(jGe.PROTOCOL)||!k0e.TAG_REGEXP.test(t.range.slice(jGe.PROTOCOL.length)))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(jGe.PROTOCOL.length),o=await Tyl.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project});if(!Object.hasOwn(o,"dist-tags"))throw new k0e.ReportError(k0e.MessageName.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let l=o["dist-tags"];if(!Object.hasOwn(l,a))throw new k0e.ReportError(k0e.MessageName.REMOTE_NOT_FOUND,`Registry failed to return tag "${a}"`);let A=Object.keys(o.versions),f=o.time,I=l[a];if(a==="latest"&&!(0,ips.isPackageApproved)({configuration:n.project.configuration,ident:t,version:I,publishTimes:f})){let E=I.includes("-"),N=PUr.default.rsort(A).find(B=>PUr.default.lt(B,I)&&(E||!B.includes("-"))&&(0,ips.isPackageApproved)({configuration:n.project.configuration,ident:t,version:B,publishTimes:f}));if(!N)throw new k0e.ReportError(k0e.MessageName.REMOTE_NOT_FOUND,`The version for tag "${a}" is quarantined, and no lower version is available`);I=N}let C=Z7e.structUtils.makeLocator(t,`${jGe.PROTOCOL}${I}`),b=o.versions[I].dist.tarball;return wyl.NpmSemverFetcher.isConventionalTarballUrl(C,b,{configuration:n.project.configuration})?[C]:[Z7e.structUtils.bindLocator(C,{__archiveUrl:b})]}async getSatisfying(t,r,n,a){let o=[];for(let l of n){if(l.identHash!==t.identHash)continue;let A=Z7e.structUtils.tryParseRange(l.reference,{requireProtocol:jGe.PROTOCOL});if(!(!A||!PUr.default.valid(A.selector))){if(A.params?.__archiveUrl){let f=Z7e.structUtils.makeRange({protocol:jGe.PROTOCOL,selector:A.selector,source:null,params:null}),[I]=await a.resolver.getCandidates(Z7e.structUtils.makeDescriptor(t,f),r,a);if(l.reference!==I.reference)continue}o.push(l)}}return{locators:o,sorted:!1}}async resolve(t,r){throw new Error("Unreachable")}};hFt.NpmTagResolver=MUr});var cF=H(mL=>{"use strict";var Ryl=mL&&mL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mL,"__esModule",{value:!0});mL.Minipass=mL.isWritable=mL.isReadable=mL.isStream=void 0;var aps=typeof process=="object"&&process?process:{stdout:null,stderr:null},KUr=Et("node:events"),gps=Ryl(Et("node:stream")),Nyl=Et("node:string_decoder"),Dyl=e=>!!e&&typeof e=="object"&&(e instanceof SFt||e instanceof gps.default||(0,mL.isReadable)(e)||(0,mL.isWritable)(e));mL.isStream=Dyl;var kyl=e=>!!e&&typeof e=="object"&&e instanceof KUr.EventEmitter&&typeof e.pipe=="function"&&e.pipe!==gps.default.Writable.prototype.pipe;mL.isReadable=kyl;var xyl=e=>!!e&&typeof e=="object"&&e instanceof KUr.EventEmitter&&typeof e.write=="function"&&typeof e.end=="function";mL.isWritable=xyl;var ire=Symbol("EOF"),sre=Symbol("maybeEmitEnd"),Que=Symbol("emittedEnd"),mFt=Symbol("emittingEnd"),L7e=Symbol("emittedError"),CFt=Symbol("closed"),cps=Symbol("read"),_Ft=Symbol("flush"),lps=Symbol("flushChunk"),AJ=Symbol("encoding"),zGe=Symbol("decoder"),BD=Symbol("flowing"),V7e=Symbol("paused"),qGe=Symbol("resume"),wD=Symbol("buffer"),hL=Symbol("pipes"),TD=Symbol("bufferLength"),HUr=Symbol("bufferPush"),yFt=Symbol("bufferShift"),aF=Symbol("objectMode"),Iw=Symbol("destroyed"),YUr=Symbol("error"),QUr=Symbol("emitData"),ups=Symbol("emitEnd"),XUr=Symbol("emitEnd2"),Dj=Symbol("async"),JUr=Symbol("abort"),bFt=Symbol("aborted"),W7e=Symbol("signal"),x0e=Symbol("dataListeners"),jP=Symbol("discarded"),O7e=e=>Promise.resolve().then(e),Gyl=e=>e(),Fyl=e=>e==="end"||e==="finish"||e==="prefinish",Zyl=e=>e instanceof ArrayBuffer||!!e&&typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,Lyl=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),EFt=class{src;dest;opts;ondrain;constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[qGe](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},UUr=class extends EFt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}},Vyl=e=>!!e.objectMode,Wyl=e=>!e.objectMode&&!!e.encoding&&e.encoding!=="buffer",SFt=class extends KUr.EventEmitter{[BD]=!1;[V7e]=!1;[hL]=[];[wD]=[];[aF];[AJ];[Dj];[zGe];[ire]=!1;[Que]=!1;[mFt]=!1;[CFt]=!1;[L7e]=null;[TD]=0;[Iw]=!1;[W7e];[bFt]=!1;[x0e]=0;[jP]=!1;writable=!0;readable=!0;constructor(...t){let r=t[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");Vyl(r)?(this[aF]=!0,this[AJ]=null):Wyl(r)?(this[AJ]=r.encoding,this[aF]=!1):(this[aF]=!1,this[AJ]=null),this[Dj]=!!r.async,this[zGe]=this[AJ]?new Nyl.StringDecoder(this[AJ]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[wD]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[hL]});let{signal:n}=r;n&&(this[W7e]=n,n.aborted?this[JUr]():n.addEventListener("abort",()=>this[JUr]()))}get bufferLength(){return this[TD]}get encoding(){return this[AJ]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[aF]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Dj]}set async(t){this[Dj]=this[Dj]||!!t}[JUr](){this[bFt]=!0,this.emit("abort",this[W7e]?.reason),this.destroy(this[W7e]?.reason)}get aborted(){return this[bFt]}set aborted(t){}write(t,r,n){if(this[bFt])return!1;if(this[ire])throw new Error("write after end");if(this[Iw])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[Dj]?O7e:Gyl;if(!this[aF]&&!Buffer.isBuffer(t)){if(Lyl(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(Zyl(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[aF]?(this[BD]&&this[TD]!==0&&this[_Ft](!0),this[BD]?this.emit("data",t):this[HUr](t),this[TD]!==0&&this.emit("readable"),n&&a(n),this[BD]):t.length?(typeof t=="string"&&!(r===this[AJ]&&!this[zGe]?.lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[AJ]&&(t=this[zGe].write(t)),this[BD]&&this[TD]!==0&&this[_Ft](!0),this[BD]?this.emit("data",t):this[HUr](t),this[TD]!==0&&this.emit("readable"),n&&a(n),this[BD]):(this[TD]!==0&&this.emit("readable"),n&&a(n),this[BD])}read(t){if(this[Iw])return null;if(this[jP]=!1,this[TD]===0||t===0||t&&t>this[TD])return this[sre](),null;this[aF]&&(t=null),this[wD].length>1&&!this[aF]&&(this[wD]=[this[AJ]?this[wD].join(""):Buffer.concat(this[wD],this[TD])]);let r=this[cps](t||null,this[wD][0]);return this[sre](),r}[cps](t,r){if(this[aF])this[yFt]();else{let n=r;t===n.length||t===null?this[yFt]():typeof n=="string"?(this[wD][0]=n.slice(t),r=n.slice(0,t),this[TD]-=t):(this[wD][0]=n.subarray(t),r=n.subarray(0,t),this[TD]-=t)}return this.emit("data",r),!this[wD].length&&!this[ire]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=void 0),typeof r=="function"&&(n=r,r="utf8"),t!==void 0&&this.write(t,r),n&&this.once("end",n),this[ire]=!0,this.writable=!1,(this[BD]||!this[V7e])&&this[sre](),this}[qGe](){this[Iw]||(!this[x0e]&&!this[hL].length&&(this[jP]=!0),this[V7e]=!1,this[BD]=!0,this.emit("resume"),this[wD].length?this[_Ft]():this[ire]?this[sre]():this.emit("drain"))}resume(){return this[qGe]()}pause(){this[BD]=!1,this[V7e]=!0,this[jP]=!1}get destroyed(){return this[Iw]}get flowing(){return this[BD]}get paused(){return this[V7e]}[HUr](t){this[aF]?this[TD]+=1:this[TD]+=t.length,this[wD].push(t)}[yFt](){return this[aF]?this[TD]-=1:this[TD]-=this[wD][0].length,this[wD].shift()}[_Ft](t=!1){do;while(this[lps](this[yFt]())&&this[wD].length);!t&&!this[wD].length&&!this[ire]&&this.emit("drain")}[lps](t){return this.emit("data",t),this[BD]}pipe(t,r){if(this[Iw])return t;this[jP]=!1;let n=this[Que];return r=r||{},t===aps.stdout||t===aps.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this[hL].push(r.proxyErrors?new UUr(this,t,r):new EFt(this,t,r)),this[Dj]?O7e(()=>this[qGe]()):this[qGe]()),t}unpipe(t){let r=this[hL].find(n=>n.dest===t);r&&(this[hL].length===1?(this[BD]&&this[x0e]===0&&(this[BD]=!1),this[hL]=[]):this[hL].splice(this[hL].indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);if(t==="data")this[jP]=!1,this[x0e]++,!this[hL].length&&!this[BD]&&this[qGe]();else if(t==="readable"&&this[TD]!==0)super.emit("readable");else if(Fyl(t)&&this[Que])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[L7e]){let a=r;this[Dj]?O7e(()=>a.call(this,this[L7e])):a.call(this,this[L7e])}return n}removeListener(t,r){return this.off(t,r)}off(t,r){let n=super.off(t,r);return t==="data"&&(this[x0e]=this.listeners("data").length,this[x0e]===0&&!this[jP]&&!this[hL].length&&(this[BD]=!1)),n}removeAllListeners(t){let r=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[x0e]=0,!this[jP]&&!this[hL].length&&(this[BD]=!1)),r}get emittedEnd(){return this[Que]}[sre](){!this[mFt]&&!this[Que]&&!this[Iw]&&this[wD].length===0&&this[ire]&&(this[mFt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[CFt]&&this.emit("close"),this[mFt]=!1)}emit(t,...r){let n=r[0];if(t!=="error"&&t!=="close"&&t!==Iw&&this[Iw])return!1;if(t==="data")return!this[aF]&&!n?!1:this[Dj]?(O7e(()=>this[QUr](n)),!0):this[QUr](n);if(t==="end")return this[ups]();if(t==="close"){if(this[CFt]=!0,!this[Que]&&!this[Iw])return!1;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[L7e]=n,super.emit(YUr,n);let o=!this[W7e]||this.listeners("error").length?super.emit("error",n):!1;return this[sre](),o}else if(t==="resume"){let o=super.emit("resume");return this[sre](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,...r);return this[sre](),a}[QUr](t){for(let n of this[hL])n.dest.write(t)===!1&&this.pause();let r=this[jP]?!1:super.emit("data",t);return this[sre](),r}[ups](){return this[Que]?!1:(this[Que]=!0,this.readable=!1,this[Dj]?(O7e(()=>this[XUr]()),!0):this[XUr]())}[XUr](){if(this[zGe]){let r=this[zGe].end();if(r){for(let n of this[hL])n.dest.write(r);this[jP]||super.emit("data",r)}}for(let r of this[hL])r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[aF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[aF]||(t.dataLength+=n.length)}),await r,t}async concat(){if(this[aF])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[AJ]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,r)=>{this.on(Iw,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[Symbol.asyncIterator](){this[jP]=!1;let t=!1,r=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return r();let a=this.read();if(a!==null)return Promise.resolve({done:!1,value:a});if(this[ire])return r();let o,l,A=b=>{this.off("data",f),this.off("end",I),this.off(Iw,C),r(),l(b)},f=b=>{this.off("error",A),this.off("end",I),this.off(Iw,C),this.pause(),o({value:b,done:!!this[ire]})},I=()=>{this.off("error",A),this.off("data",f),this.off(Iw,C),r(),o({done:!0,value:void 0})},C=()=>A(new Error("stream destroyed"));return new Promise((b,E)=>{l=E,o=b,this.once(Iw,C),this.once("error",A),this.once("end",I),this.once("data",f)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[jP]=!1;let t=!1,r=()=>(this.pause(),this.off(YUr,r),this.off(Iw,r),this.off("end",r),t=!0,{done:!0,value:void 0}),n=()=>{if(t)return r();let a=this.read();return a===null?r():{done:!1,value:a}};return this.once("end",r),this.once(YUr,r),this.once(Iw,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(t){if(this[Iw])return t?this.emit("error",t):this.emit(Iw),this;this[Iw]=!0,this[jP]=!0,this[wD].length=0,this[TD]=0;let r=this;return typeof r.close=="function"&&!this[CFt]&&r.close(),t?this.emit("error",t):this.emit(Iw),this}static get isStream(){return mL.isStream}};mL.Minipass=SFt});var are=H((ieg,kj)=>{"use strict";var M7e=Et("crypto"),{Minipass:Oyl}=cF(),zUr=["sha512","sha384","sha256"],$Ur=["sha512"],Pyl=/^[a-z0-9+/]+(?:=?=?)$/i,Myl=/^([a-z0-9]+)-([^?]+)([?\S*]*)$/,Hyl=/^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/,Yyl=/^[\x21-\x7E]+$/,H7e=e=>e?.length?`?${e.join("?")}`:"",qUr=class extends Oyl{#e;#t;#n;constructor(t){super(),this.size=0,this.opts=t,this.#r(),t?.algorithms?this.algorithms=[...t.algorithms]:this.algorithms=[...$Ur],this.algorithm!==null&&!this.algorithms.includes(this.algorithm)&&this.algorithms.push(this.algorithm),this.hashes=this.algorithms.map(M7e.createHash)}#r(){this.sri=this.opts?.integrity?zP(this.opts?.integrity,this.opts):null,this.expectedSize=this.opts?.size,this.sri?this.sri.isHash?(this.goodSri=!0,this.algorithm=this.sri.algorithm):(this.goodSri=!this.sri.isEmpty(),this.algorithm=this.sri.pickAlgorithm(this.opts)):this.algorithm=null,this.digests=this.goodSri?this.sri[this.algorithm]:null,this.optString=H7e(this.opts?.options)}on(t,r){return t==="size"&&this.#t?r(this.#t):t==="integrity"&&this.#e?r(this.#e):t==="verified"&&this.#n?r(this.#n):super.on(t,r)}emit(t,r){return t==="end"&&this.#i(),super.emit(t,r)}write(t){return this.size+=t.length,this.hashes.forEach(r=>r.update(t)),super.write(t)}#i(){this.goodSri||this.#r();let t=zP(this.hashes.map((n,a)=>`${this.algorithms[a]}-${n.digest("base64")}${this.optString}`).join(" "),this.opts),r=this.goodSri&&t.match(this.sri,this.opts);if(typeof this.expectedSize=="number"&&this.size!==this.expectedSize){let n=new Error(`stream size mismatch when checking ${this.sri}. +`;for(let[F,Q]of N){let J=Fu.ppath.relative(Fu.ppath.join(E,H2),Q);o+=` ${JSON.stringify(F)}: ${JSON.stringify(J)} +`}}}}let f=e.cwd,I=Fu.ppath.join(f,H2,Dds);a&&await Hp.xfs.removePromise(I),await Hp.xfs.changeFilePromise(I,o,{automaticNewlines:!0})}async function DUr(e,{unrollAliases:t=!1}={}){let r=e.cwd,n=Fu.ppath.join(r,H2,Dds),a;try{a=await Hp.xfs.statPromise(n)}catch{}if(!a)return null;let o=(0,Syl.parseSyml)(await Hp.xfs.readFilePromise(n,"utf8"));if(o.__metadata.version>Nds)return null;let l=o.__metadata.nmMode||jP.CLASSIC,A=new Map,f=new Map;delete o.__metadata;for(let[I,C]of Object.entries(o)){let b=C.locations.map(N=>Fu.ppath.join(r,N)),E=C.bin;if(E)for(let[N,B]of Object.entries(E)){let F=Fu.ppath.join(r,Fu.npath.toPortablePath(N)),Q=ip.miscUtils.getMapWithDefault(f,F);for(let[J,ae]of Object.entries(B))Q.set(J,Fu.npath.toPortablePath([F,H2,ae].join(Fu.ppath.sep)))}if(A.set(I,{target:Fu.PortablePath.dot,linkType:AJ.LinkType.HARD,locations:b,aliases:C.aliases||[]}),t&&C.aliases)for(let N of C.aliases){let{scope:B,name:F}=ip.structUtils.parseLocator(I),Q=ip.structUtils.makeLocator(ip.structUtils.makeIdent(B,F),N),J=ip.structUtils.stringifyLocator(Q);A.set(J,{target:Fu.PortablePath.dot,linkType:AJ.LinkType.HARD,locations:b,aliases:[]})}}return{locatorMap:A,binSymlinks:f,locationTree:kds(A,{skipPrefix:e.cwd}),nmMode:l,mtimeMs:a.mtimeMs}}var HGe=async(e,t)=>{if(e.split(Fu.ppath.sep).indexOf(H2)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${e}`);try{let r;if(!t.innerLoop&&(r=await Hp.xfs.lstatPromise(e),!r.isDirectory()&&!r.isSymbolicLink()||r.isSymbolicLink()&&!t.isWorkspaceDir)){await Hp.xfs.unlinkPromise(e);return}let n=await Hp.xfs.readdirPromise(e,{withFileTypes:!0});for(let o of n){let l=Fu.ppath.join(e,o.name);o.isDirectory()?(o.name!==H2||t&&t.innerLoop)&&await HGe(l,{innerLoop:!0,contentsOnly:!1}):await Hp.xfs.unlinkPromise(l)}let a=!t.innerLoop&&t.isWorkspaceDir&&r?.isSymbolicLink();!t.contentsOnly&&!a&&await Hp.xfs.rmdirPromise(e)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},vds=4,nFt=(e,{skipPrefix:t})=>{let r=Fu.ppath.contains(t,e);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${e} which is outside project root: ${t}`);let n=r.split(Fu.ppath.sep).filter(f=>f!==""),a=n.indexOf(H2),o=n.slice(0,a).join(Fu.ppath.sep),l=Fu.ppath.join(t,o),A=n.slice(a);return{locationRoot:l,segments:A}},kds=(e,{skipPrefix:t})=>{let r=new Map;if(e===null)return r;let n=()=>({children:new Map,linkType:AJ.LinkType.HARD});for(let[a,o]of e.entries()){if(o.linkType===AJ.LinkType.SOFT&&Fu.ppath.contains(t,o.target)!==null){let A=ip.miscUtils.getFactoryWithDefault(r,o.target,n);A.locator=a,A.linkType=o.linkType}for(let l of o.locations){let{locationRoot:A,segments:f}=nFt(l,{skipPrefix:t}),I=ip.miscUtils.getFactoryWithDefault(r,A,n);for(let C=0;C{if(process.platform==="win32"&&r===AJ.WindowsLinkType.JUNCTIONS){let n;try{n=await Hp.xfs.lstatPromise(e)}catch{}if(!n||n.isDirectory()){await Hp.xfs.symlinkPromise(e,t,"junction");return}}await Hp.xfs.symlinkPromise(Fu.ppath.relative(Fu.ppath.dirname(t),e),t)};async function xds(e,t,r){let n=Fu.ppath.join(e,`${Rds.default.randomBytes(16).toString("hex")}.tmp`);try{await Hp.xfs.writeFilePromise(n,r);try{await Hp.xfs.linkPromise(n,t)}catch{}}finally{await Hp.xfs.unlinkPromise(n)}}async function Nyl({srcPath:e,dstPath:t,entry:r,globalHardlinksStore:n,baseFs:a,nmMode:o}){if(r.kind===rre.FILE){if(o.value===jP.HARDLINKS_GLOBAL&&n&&r.digest){let A=Fu.ppath.join(n,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),f;try{let I=await Hp.xfs.statPromise(A);if(I&&(!r.mtimeMs||I.mtimeMs>r.mtimeMs||I.mtimeMs{await Hp.xfs.mkdirPromise(e,{recursive:!0});let A=async(C=Fu.PortablePath.dot)=>{let b=Fu.ppath.join(t,C),E=await r.readdirPromise(b,{withFileTypes:!0}),N=new Map;for(let B of E){let F=Fu.ppath.join(C,B.name),Q,J=Fu.ppath.join(b,B.name);if(B.isFile()){if(Q={kind:rre.FILE,mode:(await r.lstatPromise(J)).mode},a.value===jP.HARDLINKS_GLOBAL){let ae=await wds.hashUtils.checksumFile(J,{baseFs:r,algorithm:"sha1"});Q.digest=ae}}else if(B.isDirectory())Q={kind:rre.DIRECTORY};else if(B.isSymbolicLink())Q={kind:rre.SYMLINK,symlinkTo:await r.readlinkPromise(J)};else throw new Error(`Unsupported file type (file: ${J}, mode: 0o${await r.statSync(J).mode.toString(8).padStart(6,"0")})`);if(N.set(F,Q),B.isDirectory()&&F!==H2){let ae=await A(F);for(let[ne,ce]of ae)N.set(ne,ce)}}return N},f;if(a.value===jP.HARDLINKS_GLOBAL&&n&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);try{f=new Map(Object.entries(JSON.parse(await Hp.xfs.readFilePromise(C,"utf8"))))}catch{f=await A()}}else f=await A();let I=!1;for(let[C,b]of f){let E=Fu.ppath.join(t,C),N=Fu.ppath.join(e,C);if(b.kind===rre.DIRECTORY)await Hp.xfs.mkdirPromise(N,{recursive:!0});else if(b.kind===rre.FILE){let B=b.mtimeMs;await Nyl({srcPath:E,dstPath:N,entry:b,nmMode:a,baseFs:r,globalHardlinksStore:n}),b.mtimeMs!==B&&(I=!0)}else b.kind===rre.SYMLINK&&await xUr(Fu.ppath.resolve(Fu.ppath.dirname(N),b.symlinkTo),N,o)}if(a.value===jP.HARDLINKS_GLOBAL&&n&&I&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);await Hp.xfs.removePromise(C),await xds(n,C,Buffer.from(JSON.stringify(Object.fromEntries(f))))}};function kyl(e,t,r,n){let a=new Map,o=new Map,l=new Map,A=!1,f=(I,C,b,E,N)=>{let B=!0,F=Fu.ppath.join(I,C),Q=new Set;if(C===H2||C.startsWith("@")){let ae;try{ae=Hp.xfs.statSync(F)}catch{}B=!!ae,ae?ae.mtimeMs>r?(A=!0,Q=new Set(Hp.xfs.readdirSync(F))):Q=new Set(b.children.get(C).children.keys()):A=!0;let ne=t.get(I);if(ne){let ce=Fu.ppath.join(I,H2,rFt),fe;try{fe=Hp.xfs.statSync(ce)}catch{}if(!fe)A=!0;else if(fe.mtimeMs>r){A=!0;let ue=new Set(Hp.xfs.readdirSync(ce)),de=new Map;o.set(I,de);for(let[be,Se]of ne)ue.has(be)&&de.set(be,Se)}else o.set(I,ne)}}else B=N.has(C);let J=b.children.get(C);if(B){let{linkType:ae,locator:ne}=J,ce={children:new Map,linkType:ae,locator:ne};if(E.children.set(C,ce),ne){let fe=ip.miscUtils.getSetWithDefault(l,ne);fe.add(F),l.set(ne,fe)}for(let fe of J.children.keys())f(F,fe,J,ce,Q)}else J.locator&&n.storedBuildState.delete(ip.structUtils.parseLocator(J.locator).locatorHash)};for(let[I,C]of e){let{linkType:b,locator:E}=C,N={children:new Map,linkType:b,locator:E};if(a.set(I,N),E){let B=ip.miscUtils.getSetWithDefault(l,C.locator);B.add(I),l.set(C.locator,B)}C.children.has(H2)&&f(I,H2,C,N,new Set)}return{locationTree:a,binSymlinks:o,locatorLocations:l,installChangedByUser:A}}function Gds(e){let t=ip.structUtils.parseDescriptor(e);return ip.structUtils.isVirtualDescriptor(t)&&(t=ip.structUtils.devirtualizeDescriptor(t)),t.range.startsWith("link:")}async function xyl(e,t,r,{loadManifest:n}){let a=new Map;for(let[A,{locations:f}]of e){let I=Gds(A)?null:await n(A,f[0]),C=new Map;if(I)for(let[b,E]of I.bin){let N=Fu.ppath.join(f[0],E);E!==""&&Hp.xfs.existsSync(N)&&C.set(b,E)}a.set(A,C)}let o=new Map,l=(A,f,I)=>{let C=new Map,b=Fu.ppath.contains(r,A);if(I.locator&&b!==null){let E=a.get(I.locator);for(let[N,B]of E){let F=Fu.ppath.join(A,Fu.npath.toPortablePath(B));C.set(N,F)}for(let[N,B]of I.children){let F=Fu.ppath.join(A,N),Q=l(F,F,B);Q.size>0&&o.set(A,new Map([...o.get(A)||new Map,...Q]))}}else for(let[E,N]of I.children){let B=l(Fu.ppath.join(A,E),f,N);for(let[F,Q]of B)C.set(F,Q)}return C};for(let[A,f]of t){let I=l(A,A,f);I.size>0&&o.set(A,new Map([...o.get(A)||new Map,...I]))}return o}var Bds=(e,t)=>{if(!e||!t)return e===t;let r=ip.structUtils.parseLocator(e);ip.structUtils.isVirtualLocator(r)&&(r=ip.structUtils.devirtualizeLocator(r));let n=ip.structUtils.parseLocator(t);return ip.structUtils.isVirtualLocator(n)&&(n=ip.structUtils.devirtualizeLocator(n)),ip.structUtils.areLocatorsEqual(r,n)};function Fds(e){return Fu.ppath.join(e.get("globalFolder"),"store")}function Gyl(e,t){let r=n=>{let a=n.split(Fu.ppath.sep),o=a.lastIndexOf(H2);if(o<0||o==a.length-1)throw new Error(`Assertion failed. Path is outside of any node_modules package ${n}`);return a.slice(0,o+(a[o+1].startsWith("@")?3:2)).join(Fu.ppath.sep)};for(let n of e.values())for(let[a,o]of n)t.has(r(o))&&n.delete(a)}async function Fyl(e,t,{baseFs:r,project:n,report:a,loadManifest:o,realLocatorChecksums:l}){let A=Fu.ppath.join(n.cwd,H2),{locationTree:f,binSymlinks:I,locatorLocations:C,installChangedByUser:b}=kyl(e.locationTree,e.binSymlinks,e.mtimeMs,n),E=kds(t,{skipPrefix:n.cwd}),N=[],B=async({srcDir:Se,dstDir:De,linkType:k,globalHardlinksStore:tt,nmMode:ze,windowsLinkType:Le,packageChecksum:Je})=>{let ft=(async()=>{try{k===AJ.LinkType.SOFT?(await Hp.xfs.mkdirPromise(Fu.ppath.dirname(De),{recursive:!0}),await xUr(Fu.ppath.resolve(Se),De,Le)):await Dyl(De,Se,{baseFs:r,globalHardlinksStore:tt,nmMode:ze,windowsLinkType:Le,packageChecksum:Je})}catch(lt){throw lt.message=`While persisting ${Se} -> ${De} ${lt.message}`,lt}finally{ce.tick()}})().then(()=>N.splice(N.indexOf(ft),1));N.push(ft),N.length>vds&&await Promise.race(N)},F=async(Se,De,k)=>{let tt=(async()=>{let ze=async(Le,Je,ft)=>{try{ft.innerLoop||await Hp.xfs.mkdirPromise(Je,{recursive:!0});let lt=await Hp.xfs.readdirPromise(Le,{withFileTypes:!0});for(let Ot of lt){if(!ft.innerLoop&&Ot.name===rFt)continue;let Er=Fu.ppath.join(Le,Ot.name),Sr=Fu.ppath.join(Je,Ot.name);Ot.isDirectory()?(Ot.name!==H2||ft&&ft.innerLoop)&&(await Hp.xfs.mkdirPromise(Sr,{recursive:!0}),await ze(Er,Sr,{...ft,innerLoop:!0})):de.value===jP.HARDLINKS_LOCAL||de.value===jP.HARDLINKS_GLOBAL?await Hp.xfs.linkPromise(Er,Sr):await Hp.xfs.copyFilePromise(Er,Sr,Byl.default.constants.COPYFILE_FICLONE)}}catch(lt){throw ft.innerLoop||(lt.message=`While cloning ${Le} -> ${Je} ${lt.message}`),lt}finally{ft.innerLoop||ce.tick()}};await ze(Se,De,k)})().then(()=>N.splice(N.indexOf(tt),1));N.push(tt),N.length>vds&&await Promise.race(N)},Q=async(Se,De,k)=>{if(k)for(let[tt,ze]of De.children){let Le=k.children.get(tt);await Q(Fu.ppath.join(Se,tt),ze,Le)}else{De.children.has(H2)&&await HGe(Fu.ppath.join(Se,H2),{contentsOnly:!1});let tt=Fu.ppath.basename(Se)===H2&&f.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await HGe(Se,{contentsOnly:Se===A,isWorkspaceDir:tt})}};for(let[Se,De]of f){let k=E.get(Se);for(let[tt,ze]of De.children){if(tt===".")continue;let Le=k&&k.children.get(tt),Je=Fu.ppath.join(Se,tt);await Q(Je,ze,Le)}}let J=async(Se,De,k)=>{if(k){Bds(De.locator,k.locator)||await HGe(Se,{contentsOnly:De.linkType===AJ.LinkType.HARD});for(let[tt,ze]of De.children){let Le=k.children.get(tt);await J(Fu.ppath.join(Se,tt),ze,Le)}}else{De.children.has(H2)&&await HGe(Fu.ppath.join(Se,H2),{contentsOnly:!0});let tt=Fu.ppath.basename(Se)===H2&&E.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await HGe(Se,{contentsOnly:De.linkType===AJ.LinkType.HARD,isWorkspaceDir:tt})}};for(let[Se,De]of E){let k=f.get(Se);for(let[tt,ze]of De.children){if(tt===".")continue;let Le=k&&k.children.get(tt);await J(Fu.ppath.join(Se,tt),ze,Le)}}let ae=new Map,ne=[];for(let[Se,De]of C)for(let k of De){let{locationRoot:tt,segments:ze}=nFt(k,{skipPrefix:n.cwd}),Le=E.get(tt),Je=tt;if(Le){for(let ft of ze)if(Je=Fu.ppath.join(Je,ft),Le=Le.children.get(ft),!Le)break;if(Le){let ft=Bds(Le.locator,Se),lt=t.get(Le.locator),Ot=lt.target,Er=Je,Sr=lt.linkType;if(ft)ae.has(Ot)||ae.set(Ot,Er);else if(Ot!==Er){let jt=ip.structUtils.parseLocator(Le.locator);ip.structUtils.isVirtualLocator(jt)&&(jt=ip.structUtils.devirtualizeLocator(jt)),ne.push({srcDir:Ot,dstDir:Er,linkType:Sr,realLocatorHash:jt.locatorHash})}}}}for(let[Se,{locations:De}]of t.entries())for(let k of De){let{locationRoot:tt,segments:ze}=nFt(k,{skipPrefix:n.cwd}),Le=f.get(tt),Je=E.get(tt),ft=tt,lt=t.get(Se),Ot=ip.structUtils.parseLocator(Se);ip.structUtils.isVirtualLocator(Ot)&&(Ot=ip.structUtils.devirtualizeLocator(Ot));let Er=Ot.locatorHash,Sr=lt.target,jt=k;if(Sr===jt)continue;let Bt=lt.linkType;for(let Nt of ze)Je=Je.children.get(Nt);if(!Le)ne.push({srcDir:Sr,dstDir:jt,linkType:Bt,realLocatorHash:Er});else for(let Nt of ze)if(ft=Fu.ppath.join(ft,Nt),Le=Le.children.get(Nt),!Le){ne.push({srcDir:Sr,dstDir:jt,linkType:Bt,realLocatorHash:Er});break}}let ce=ip.Report.progressViaCounter(ne.length),fe=a.reportProgress(ce),ue=n.configuration.get("nmMode"),de={value:ue},be=n.configuration.get("winLinkType");try{let Se=de.value===jP.HARDLINKS_GLOBAL?`${Fds(n.configuration)}/v1`:null;if(Se&&!await Hp.xfs.existsPromise(Se)){await Hp.xfs.mkdirpPromise(Se);for(let k=0;k<256;k++)await Hp.xfs.mkdirPromise(Fu.ppath.join(Se,k.toString(16).padStart(2,"0")))}for(let k of ne)(k.linkType===AJ.LinkType.SOFT||!ae.has(k.srcDir))&&(ae.set(k.srcDir,k.dstDir),await B({...k,globalHardlinksStore:Se,nmMode:de,windowsLinkType:be,packageChecksum:l.get(k.realLocatorHash)||null}));await Promise.all(N),N.length=0;for(let k of ne){let tt=ae.get(k.srcDir);k.linkType!==AJ.LinkType.SOFT&&k.dstDir!==tt&&await F(tt,k.dstDir,{nmMode:de})}await Promise.all(N),await Hp.xfs.mkdirPromise(A,{recursive:!0}),Gyl(I,new Set(ne.map(k=>k.dstDir)));let De=await xyl(t,E,n.cwd,{loadManifest:o});await Zyl(I,De,n.cwd,be),await Ryl(n,t,De,de,{installChangedByUser:b}),ue==jP.HARDLINKS_GLOBAL&&de.value==jP.HARDLINKS_LOCAL&&a.reportWarningOnce(TUr.MessageName.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{fe.stop()}}async function Zyl(e,t,r,n){for(let a of e.keys()){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!t.has(a)){let o=Fu.ppath.join(a,H2,rFt);await Hp.xfs.removePromise(o)}}for(let[a,o]of t){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let l=Fu.ppath.join(a,H2,rFt),A=e.get(a)||new Map;await Hp.xfs.mkdirPromise(l,{recursive:!0});for(let f of A.keys())o.has(f)||(await Hp.xfs.removePromise(Fu.ppath.join(l,f)),process.platform==="win32"&&await Hp.xfs.removePromise(Fu.ppath.join(l,`${f}.cmd`)));for(let[f,I]of o){let C=A.get(f),b=Fu.ppath.join(l,f);C!==I&&(process.platform==="win32"?await(0,vyl.default)(Fu.npath.fromPortablePath(I),Fu.npath.fromPortablePath(b),{createPwshFile:!1}):(await Hp.xfs.removePromise(b),await xUr(I,b,n),Fu.ppath.contains(r,await Hp.xfs.realpathPromise(I))!==null&&await Hp.xfs.chmodPromise(I,493)))}}}});var Vds=H(iFt=>{"use strict";Object.defineProperty(iFt,"__esModule",{value:!0});iFt.PnpLooseLinker=void 0;var Zds=wn(),R7e=No(),Lyl=g8(),Vyl=b7e(),Lds=OGe(),Wyl=uUr(),FUr=class extends Lds.PnpLinker{constructor(){super(...arguments),this.mode="loose"}makeInstaller(t){return new ZUr(t)}};iFt.PnpLooseLinker=FUr;var ZUr=class extends Lds.PnpInstaller{constructor(){super(...arguments),this.mode="loose"}async transformPnpSettings(t){let r=new R7e.VirtualFS({baseFs:new Lyl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),n=(0,Wyl.makeRuntimeApi)(t,this.opts.project.cwd,r),{tree:a,errors:o}=(0,Vyl.buildNodeModulesTree)(n,{pnpifyFs:!1,project:this.opts.project});if(!a){for(let{messageName:C,text:b}of o)this.opts.report.reportError(C,b);return}let l=new Map;t.fallbackPool=l;let A=(C,b)=>{let E=Zds.structUtils.parseLocator(b.locator),N=Zds.structUtils.stringifyIdent(E);N===C?l.set(C,E.reference):l.set(C,[N,E.reference])},f=R7e.ppath.join(this.opts.project.cwd,R7e.Filename.nodeModules),I=a.get(f);if(!(typeof I>"u")){if("target"in I)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let C of I.dirList){let b=R7e.ppath.join(f,C),E=a.get(b);if(typeof E>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in E)A(C,E);else for(let N of E.dirList){let B=R7e.ppath.join(b,N),F=a.get(B);if(typeof F>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in F)A(`${C}/${N}`,F);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}}});var Ods=H(nre=>{"use strict";Object.defineProperty(nre,"__esModule",{value:!0});nre.PnpLooseLinker=nre.NodeModulesMode=nre.NodeModulesLinker=void 0;var LUr=wn(),Oyl=No(),sFt=b7e(),R0e=GUr();Object.defineProperty(nre,"NodeModulesLinker",{enumerable:!0,get:function(){return R0e.NodeModulesLinker}});Object.defineProperty(nre,"NodeModulesMode",{enumerable:!0,get:function(){return R0e.NodeModulesMode}});var Pyl=GUr(),Wds=Vds();Object.defineProperty(nre,"PnpLooseLinker",{enumerable:!0,get:function(){return Wds.PnpLooseLinker}});var Myl={hooks:{cleanGlobalArtifacts:async e=>{let t=(0,Pyl.getGlobalHardlinksStore)(e);await Oyl.xfs.removePromise(t)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:LUr.SettingsType.STRING,values:[sFt.NodeModulesHoistingLimits.WORKSPACES,sFt.NodeModulesHoistingLimits.DEPENDENCIES,sFt.NodeModulesHoistingLimits.NONE],default:sFt.NodeModulesHoistingLimits.NONE},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:LUr.SettingsType.STRING,values:[R0e.NodeModulesMode.CLASSIC,R0e.NodeModulesMode.HARDLINKS_LOCAL,R0e.NodeModulesMode.HARDLINKS_GLOBAL],default:R0e.NodeModulesMode.CLASSIC},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:LUr.SettingsType.BOOLEAN,default:!0}},linkers:[R0e.NodeModulesLinker,Wds.PnpLooseLinker]};nre.default=Myl});var YGe=H(oFt=>{"use strict";Object.defineProperty(oFt,"__esModule",{value:!0});oFt.PROTOCOL=void 0;oFt.PROTOCOL="npm:"});var N0e=H(zP=>{"use strict";Object.defineProperty(zP,"__esModule",{value:!0});zP.RegistryType=void 0;zP.normalizeRegistry=QGe;zP.getAuditRegistry=Qyl;zP.getPublishRegistry=Xyl;zP.getScopeRegistry=Pds;zP.getDefaultRegistry=N7e;zP.getRegistryConfiguration=Mds;zP.getScopeConfiguration=VUr;zP.getAuthConfiguration=Uyl;zP.isPackageApproved=qyl;var Hyl=(Wa(),vi(Va)),aFt=wn(),Yyl=Hyl.__importDefault(Rk()),Hue;(function(e){e.AUDIT_REGISTRY="npmAuditRegistry",e.FETCH_REGISTRY="npmRegistryServer",e.PUBLISH_REGISTRY="npmPublishRegistry"})(Hue||(zP.RegistryType=Hue={}));function QGe(e){return e.replace(/\/$/,"")}function Qyl({configuration:e}){return N7e({configuration:e,type:Hue.AUDIT_REGISTRY})}function Xyl(e,{configuration:t}){return e.publishConfig?.registry?QGe(e.publishConfig.registry):e.name?Pds(e.name.scope,{configuration:t,type:Hue.PUBLISH_REGISTRY}):N7e({configuration:t,type:Hue.PUBLISH_REGISTRY})}function Pds(e,{configuration:t,type:r=Hue.FETCH_REGISTRY}){let n=VUr(e,{configuration:t});if(n===null)return N7e({configuration:t,type:r});let a=n.get(r);return a===null?N7e({configuration:t,type:r}):QGe(a)}function N7e({configuration:e,type:t=Hue.FETCH_REGISTRY}){let r=e.get(t);return QGe(r!==null?r:e.get(Hue.FETCH_REGISTRY))}function Mds(e,{configuration:t}){let r=t.get("npmRegistries"),n=QGe(e),a=r.get(n);if(typeof a<"u")return a;let o=r.get(n.replace(/^[a-z]+:/,""));return typeof o<"u"?o:null}var Jyl=new Map([["npmRegistryServer","https://npm.jsr.io/"]]);function VUr(e,{configuration:t}){if(e===null)return null;let n=t.get("npmScopes").get(e);return n||(e==="jsr"?Jyl:null)}function Uyl(e,{configuration:t,ident:r}){let n=r&&VUr(r.scope,{configuration:t});return n?.get("npmAuthIdent")||n?.get("npmAuthToken")?n:Mds(e,{configuration:t})||t}function Kyl({configuration:e,version:t,publishTimes:r}){let n=e.get("npmMinimalAgeGate");if(n){let a=r?.[t];if(typeof a>"u"||(new Date().getTime()-new Date(a).getTime())/60/1e3jyl(t,r,n))}function qyl(e){return!Kyl(e)||zyl(e)}});var JGe=H(JH=>{"use strict";Object.defineProperty(JH,"__esModule",{value:!0});JH.AuthType=void 0;JH.handleInvalidAuthenticationError=Que;JH.customPackageError=Qds;JH.getIdentUrl=OUr;JH.getPackageMetadata=sbl;JH.get=Uds;JH.post=ubl;JH.put=gbl;JH.del=Abl;var Yds=(Wa(),vi(Va)),RT=wn(),Yue=wn(),ire=No(),Hds=j6e(),$yl=PO(),ebl=Yds.__importDefault(zC()),WUr=Yds.__importStar(N0e()),XH;(function(e){e[e.NO_AUTH=0]="NO_AUTH",e[e.BEST_EFFORT=1]="BEST_EFFORT",e[e.CONFIGURATION=2]="CONFIGURATION",e[e.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(XH||(JH.AuthType=XH={}));async function Que(e,{attemptedAs:t,registry:r,headers:n,configuration:a}){if(lFt(e))throw new Yue.ReportError(Yue.MessageName.AUTHENTICATION_INVALID,"Invalid OTP token");if(e.originalError?.name==="HTTPError"&&e.originalError?.response.statusCode===401)throw new Yue.ReportError(Yue.MessageName.AUTHENTICATION_INVALID,`Invalid authentication (${typeof t!="string"?`as ${await pbl(r,n,{configuration:a})}`:`attempted as ${t}`})`)}function Qds(e,t){let r=e.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${RT.formatUtils.applyHyperlink(t,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}function OUr(e){return e.scope?`/@${e.scope}%2f${e.name}`:`/${e.name}`}var Xds=new Map,tbl=new Map;async function rbl(e){return await RT.miscUtils.getFactoryWithDefault(Xds,e,async()=>{let t=null;try{t=await ire.xfs.readJsonPromise(e)}catch{}return t})}async function nbl(e,t,{configuration:r,cached:n,registry:a,headers:o,version:l,...A}){return await RT.miscUtils.getFactoryWithDefault(tbl,e,async()=>await Uds(OUr(t),{...A,customErrorMessage:Qds,configuration:r,registry:a,ident:t,headers:{...o,"If-None-Match":n?.etag,"If-Modified-Since":n?.lastModified},wrapNetworkRequest:async f=>async()=>{let I=await f();if(I.statusCode===304){if(n===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...I,body:n.metadata}}let C=obl(JSON.parse(I.body.toString())),b={metadata:C,etag:I.headers.etag,lastModified:I.headers["last-modified"]};return Xds.set(e,Promise.resolve(b)),Promise.resolve().then(async()=>{let E=`${e}-${process.pid}.tmp`;await ire.xfs.mkdirPromise(ire.ppath.dirname(E),{recursive:!0}),await ire.xfs.writeJsonPromise(E,b,{compact:!0}),await ire.xfs.renamePromise(E,e)}).catch(()=>{}),{...I,body:C}}}))}function ibl(e){return e.scope!==null?`@${e.scope}-${e.name}-${e.scope.length}`:e.name}async function sbl(e,{cache:t,project:r,registry:n,headers:a,version:o,...l}){let{configuration:A}=r;n=D7e(A,{ident:e,registry:n});let f=cbl(A,n),I=ire.ppath.join(f,`${ibl(e)}.json`),C=null;if(!r.lockfileNeedsRefresh&&(C=await rbl(I),C)){if(typeof o<"u"&&typeof C.metadata.versions[o]<"u")return C.metadata;if(A.get("enableOfflineMode")){let b=structuredClone(C.metadata),E=new Set;if(t){for(let B of Object.keys(b.versions)){let F=RT.structUtils.makeLocator(e,`npm:${B}`),Q=t.getLocatorMirrorPath(F);(!Q||!ire.xfs.existsSync(Q))&&(delete b.versions[B],E.add(B))}let N=b["dist-tags"].latest;if(E.has(N)){let B=Object.keys(C.metadata.versions).sort(ebl.default.compare),F=B.indexOf(N);for(;E.has(B[F])&&F>=0;)F-=1;F>=0?b["dist-tags"].latest=B[F]:delete b["dist-tags"].latest}}return b}}return await nbl(I,e,{...l,configuration:A,cached:C,registry:n,headers:a,version:o})}var Jds=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function obl(e){return{"dist-tags":e["dist-tags"],versions:Object.fromEntries(Object.entries(e.versions).map(([t,r])=>[t,(0,$yl.pick)(r,Jds)])),time:e.time}}var abl=RT.hashUtils.makeHash("time",...Jds).slice(0,6);function cbl(e,t){let r=lbl(e),n=new URL(t);return ire.ppath.join(r,abl,n.hostname)}function lbl(e){return ire.ppath.join(e.get("globalFolder"),"metadata/npm")}async function Uds(e,{configuration:t,headers:r,ident:n,authType:a,allowOidc:o,registry:l,...A}){l=D7e(t,{ident:n,registry:l}),n&&n.scope&&typeof a>"u"&&(a=XH.BEST_EFFORT);let f=await cFt(l,{authType:a,allowOidc:o,configuration:t,ident:n});f&&(r={...r,authorization:f});try{return await RT.httpUtils.get(e.charAt(0)==="/"?`${l}${e}`:e,{configuration:t,headers:r,...A})}catch(I){throw await Que(I,{registry:l,configuration:t,headers:r}),I}}async function ubl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=XH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=D7e(n,{ident:o,registry:f});let b=await cFt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...XGe(I)});try{return await RT.httpUtils.post(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!lFt(E)||I)throw await Que(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await PUr(E,{configuration:n});let N={...a,...XGe(I)};try{return await RT.httpUtils.post(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await Que(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function gbl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=XH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=D7e(n,{ident:o,registry:f});let b=await cFt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...XGe(I)});try{return await RT.httpUtils.put(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!lFt(E))throw await Que(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await PUr(E,{configuration:n});let N={...a,...XGe(I)};try{return await RT.httpUtils.put(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await Que(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function Abl(e,{attemptedAs:t,configuration:r,headers:n,ident:a,authType:o=XH.ALWAYS_AUTH,allowOidc:l,registry:A,otp:f,...I}){A=D7e(r,{ident:a,registry:A});let C=await cFt(A,{authType:o,allowOidc:l,configuration:r,ident:a});C&&(n={...n,authorization:C}),f&&(n={...n,...XGe(f)});try{return await RT.httpUtils.del(A+e,{configuration:r,headers:n,...I})}catch(b){if(!lFt(b)||f)throw await Que(b,{attemptedAs:t,registry:A,configuration:r,headers:n}),b;f=await PUr(b,{configuration:r});let E={...n,...XGe(f)};try{return await RT.httpUtils.del(`${A}${e}`,{configuration:r,headers:E,...I})}catch(N){throw await Que(N,{attemptedAs:t,registry:A,configuration:r,headers:n}),N}}}function D7e(e,{ident:t,registry:r}){if(typeof r>"u"&&t)return WUr.getScopeRegistry(t.scope,{configuration:e});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return WUr.normalizeRegistry(r)}async function cFt(e,{authType:t=XH.CONFIGURATION,allowOidc:r=!1,configuration:n,ident:a}){let o=WUr.getAuthConfiguration(e,{configuration:n,ident:a}),l=dbl(o,t);if(!l)return null;let A=await n.reduceHook(f=>f.getNpmAuthenticationHeader,void 0,e,{configuration:n,ident:a});if(A)return A;if(o.get("npmAuthToken"))return`Bearer ${o.get("npmAuthToken")}`;if(o.get("npmAuthIdent")){let f=o.get("npmAuthIdent");return f.includes(":")?`Basic ${Buffer.from(f).toString("base64")}`:`Basic ${f}`}if(r&&a){let f=await fbl(e,{configuration:n,ident:a});if(f)return`Bearer ${f}`}if(l&&t!==XH.BEST_EFFORT)throw new Yue.ReportError(Yue.MessageName.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function dbl(e,t){switch(t){case XH.CONFIGURATION:return e.get("npmAlwaysAuth");case XH.BEST_EFFORT:case XH.ALWAYS_AUTH:return!0;case XH.NO_AUTH:return!1;default:throw new Error("Unreachable")}}async function pbl(e,t,{configuration:r}){if(typeof t>"u"||typeof t.authorization>"u")return"an anonymous user";try{return(await RT.httpUtils.get(new URL(`${e}/-/whoami`).href,{configuration:r,headers:t,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function PUr(e,{configuration:t}){let r=e.originalError?.response.headers["npm-notice"];if(r&&(await RT.StreamReport.start({configuration:t,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(Yue.MessageName.UNNAMED,r.replace(/(https?:\/\/\S+)/g,RT.formatUtils.pretty(t,"$1",RT.formatUtils.Type.URL))),!process.env.YARN_IS_TEST_ENV){let o=r.match(/open (https?:\/\/\S+)/i);if(o&&RT.nodeUtils.openUrl){let{openNow:l}=await(0,Hds.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});l&&(await RT.nodeUtils.openUrl(o[1])||(a.reportSeparator(),a.reportWarning(Yue.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` +`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:n}=await(0,Hds.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` +`),n}function lFt(e){if(e.originalError?.name!=="HTTPError")return!1;try{return(e.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function XGe(e){return{"npm-otp":e}}async function fbl(e,{configuration:t,ident:r}){let n=null;if(process.env.GITLAB_CI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.CIRCLECI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.GITHUB_ACTIONS){if(!(process.env.ACTIONS_ID_TOKEN_REQUEST_URL&&process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN))return null;let a=`npm:${new URL(e).host.replace("registry.yarnpkg.com","registry.npmjs.org").replace("yarn.npmjs.org","registry.npmjs.org")}`,o=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);o.searchParams.append("audience",a),n=(await RT.httpUtils.get(o.href,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).value}if(!n)return null;try{return(await RT.httpUtils.post(`${e}/-/npm/v1/oidc/token/exchange/package${OUr(r)}`,null,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${n}`}})).token||null}catch{}return null}});var zds=H(uFt=>{"use strict";Object.defineProperty(uFt,"__esModule",{value:!0});uFt.NpmHttpFetcher=void 0;var jds=(Wa(),vi(Va)),UGe=wn(),Ibl=jds.__importDefault(zC()),hbl=YGe(),Kds=jds.__importStar(JGe()),MUr=class{supports(t,r){if(!t.reference.startsWith(hbl.PROTOCOL))return!1;let{selector:n,params:a}=UGe.structUtils.parseRange(t.reference);return!(!Ibl.default.valid(n)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${UGe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:UGe.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let{params:n}=UGe.structUtils.parseRange(t.reference);if(n===null||typeof n.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await Kds.get(n.__archiveUrl,{customErrorMessage:Kds.customPackageError,configuration:r.project.configuration,ident:t});return await UGe.tgzUtils.convertToZip(a,{configuration:r.project.configuration,prefixPath:UGe.structUtils.getIdentVendorPath(t),stripComponents:1})}};uFt.NpmHttpFetcher=MUr});var qds=H(AFt=>{"use strict";Object.defineProperty(AFt,"__esModule",{value:!0});AFt.NpmRemapResolver=void 0;var gFt=wn(),k7e=YGe(),HUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(k7e.PROTOCOL)||!gFt.structUtils.tryParseDescriptor(t.range.slice(k7e.PROTOCOL.length),!0))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){let n=r.project.configuration.normalizeDependency(gFt.structUtils.parseDescriptor(t.range.slice(k7e.PROTOCOL.length),!0));return r.resolver.getResolutionDependencies(n,r)}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency(gFt.structUtils.parseDescriptor(t.range.slice(k7e.PROTOCOL.length),!0));return await n.resolver.getCandidates(a,r,n)}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency(gFt.structUtils.parseDescriptor(t.range.slice(k7e.PROTOCOL.length),!0));return a.resolver.getSatisfying(o,r,n,a)}resolve(t,r){throw new Error("Unreachable")}};AFt.NpmRemapResolver=HUr});var pFt=H(dFt=>{"use strict";Object.defineProperty(dFt,"__esModule",{value:!0});dFt.NpmSemverFetcher=void 0;var QUr=(Wa(),vi(Va)),x7e=wn(),$ds=wn(),mbl=QUr.__importDefault(zC()),eps=YGe(),Cbl=QUr.__importStar(N0e()),G7e=QUr.__importStar(JGe()),YUr=class e{supports(t,r){if(!t.reference.startsWith(eps.PROTOCOL))return!1;let n=new URL(t.reference);return!(!mbl.default.valid(n.pathname)||n.searchParams.has("__archiveUrl"))}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${x7e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:x7e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n;try{n=await G7e.get(e.getLocatorUrl(t),{customErrorMessage:G7e.customPackageError,configuration:r.project.configuration,ident:t})}catch{n=await G7e.get(e.getLocatorUrl(t).replace(/%2f/g,"/"),{customErrorMessage:G7e.customPackageError,configuration:r.project.configuration,ident:t})}return await x7e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:x7e.structUtils.getIdentVendorPath(t),stripComponents:1})}static isConventionalTarballUrl(t,r,{configuration:n}){let a=Cbl.getScopeRegistry(t.scope,{configuration:n}),o=e.getLocatorUrl(t);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+o||r===a+o.replace(/%2f/g,"/")}static getLocatorUrl(t){let r=x7e.semverUtils.clean(t.reference.slice(eps.PROTOCOL.length));if(r===null)throw new $ds.ReportError($ds.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${G7e.getIdentUrl(t)}/-/${t.name}-${r}.tgz`}};dFt.NpmSemverFetcher=YUr});var ips=H(IFt=>{"use strict";Object.defineProperty(IFt,"__esModule",{value:!0});IFt.NpmSemverResolver=void 0;var nps=(Wa(),vi(Va)),hL=wn(),KGe=wn(),_bl=wn(),D0e=wn(),tps=nps.__importDefault(zC()),ybl=pFt(),Dj=YGe(),bbl=N0e(),rps=nps.__importStar(JGe()),fFt=D0e.structUtils.makeIdent(null,"node-gyp"),Ebl=/\b(node-gyp|prebuild-install)\b/,XUr=class{supportsDescriptor(t,r){return t.range.startsWith(Dj.PROTOCOL)?!!KGe.semverUtils.validRange(t.range.slice(Dj.PROTOCOL.length)):!1}supportsLocator(t,r){if(!t.reference.startsWith(Dj.PROTOCOL))return!1;let{selector:n}=D0e.structUtils.parseRange(t.reference);return!!tps.default.valid(n)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=KGe.semverUtils.validRange(t.range.slice(Dj.PROTOCOL.length));if(a===null)throw new Error(`Expected a valid range, got ${t.range.slice(Dj.PROTOCOL.length)}`);let o=await rps.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project,version:tps.default.valid(a.raw)?a.raw:void 0}),l=hL.miscUtils.mapAndFilter(Object.keys(o.versions),C=>{try{let b=new KGe.semverUtils.SemVer(C);if(a.test(b))return b}catch{}return hL.miscUtils.mapAndFilter.skip}),A=l.filter(C=>(0,bbl.isPackageApproved)({configuration:n.project.configuration,ident:t,version:C.raw,publishTimes:o.time}));if(l.length>0&&A.length===0)throw new hL.ReportError(hL.MessageName.REMOTE_NOT_FOUND,`All versions satisfying "${t.range.slice(Dj.PROTOCOL.length)}" are quarantined`);let f=A.filter(C=>!o.versions[C.raw].deprecated),I=f.length>0?f:A;return I.sort((C,b)=>-C.compare(b)),I.map(C=>{let b=D0e.structUtils.makeLocator(t,`${Dj.PROTOCOL}${C.raw}`),E=o.versions[C.raw].dist.tarball;return ybl.NpmSemverFetcher.isConventionalTarballUrl(b,E,{configuration:n.project.configuration})?b:D0e.structUtils.bindLocator(b,{__archiveUrl:E})})}async getSatisfying(t,r,n,a){let o=KGe.semverUtils.validRange(t.range.slice(Dj.PROTOCOL.length));if(o===null)throw new Error(`Expected a valid range, got ${t.range.slice(Dj.PROTOCOL.length)}`);return{locators:hL.miscUtils.mapAndFilter(n,f=>{if(f.identHash!==t.identHash)return hL.miscUtils.mapAndFilter.skip;let I=D0e.structUtils.tryParseRange(f.reference,{requireProtocol:Dj.PROTOCOL});if(!I)return hL.miscUtils.mapAndFilter.skip;let C=new KGe.semverUtils.SemVer(I.selector);return o.test(C)?{locator:f,version:C}:hL.miscUtils.mapAndFilter.skip}).sort((f,I)=>-f.version.compare(I.version)).map(({locator:f})=>f),sorted:!0}}async resolve(t,r){let{selector:n}=D0e.structUtils.parseRange(t.reference),a=KGe.semverUtils.clean(n);if(a===null)throw new hL.ReportError(hL.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let o=await rps.getPackageMetadata(t,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(o,"versions"))throw new hL.ReportError(hL.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(o.versions,a))throw new hL.ReportError(hL.MessageName.REMOTE_NOT_FOUND,`Registry failed to return reference "${a}"`);let l=new hL.Manifest;if(l.load(o.versions[a]),!l.dependencies.has(fFt.identHash)&&!l.peerDependencies.has(fFt.identHash)){for(let A of l.scripts.values())if(A.match(Ebl)){l.dependencies.set(fFt.identHash,D0e.structUtils.makeDescriptor(fFt,"latest"));break}}return{...t,version:a,languageName:"node",linkType:_bl.LinkType.HARD,conditions:l.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(l.dependencies),peerDependencies:l.peerDependencies,dependenciesMeta:l.dependenciesMeta,peerDependenciesMeta:l.peerDependenciesMeta,bin:l.bin}}};IFt.NpmSemverResolver=XUr});var aps=H(hFt=>{"use strict";Object.defineProperty(hFt,"__esModule",{value:!0});hFt.NpmTagResolver=void 0;var ops=(Wa(),vi(Va)),k0e=wn(),F7e=wn(),JUr=ops.__importDefault(zC()),Sbl=pFt(),jGe=YGe(),sps=N0e(),vbl=ops.__importStar(JGe()),UUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(jGe.PROTOCOL)||!k0e.TAG_REGEXP.test(t.range.slice(jGe.PROTOCOL.length)))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(jGe.PROTOCOL.length),o=await vbl.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project});if(!Object.hasOwn(o,"dist-tags"))throw new k0e.ReportError(k0e.MessageName.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let l=o["dist-tags"];if(!Object.hasOwn(l,a))throw new k0e.ReportError(k0e.MessageName.REMOTE_NOT_FOUND,`Registry failed to return tag "${a}"`);let A=Object.keys(o.versions),f=o.time,I=l[a];if(a==="latest"&&!(0,sps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:I,publishTimes:f})){let E=I.includes("-"),N=JUr.default.rsort(A).find(B=>JUr.default.lt(B,I)&&(E||!B.includes("-"))&&(0,sps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:B,publishTimes:f}));if(!N)throw new k0e.ReportError(k0e.MessageName.REMOTE_NOT_FOUND,`The version for tag "${a}" is quarantined, and no lower version is available`);I=N}let C=F7e.structUtils.makeLocator(t,`${jGe.PROTOCOL}${I}`),b=o.versions[I].dist.tarball;return Sbl.NpmSemverFetcher.isConventionalTarballUrl(C,b,{configuration:n.project.configuration})?[C]:[F7e.structUtils.bindLocator(C,{__archiveUrl:b})]}async getSatisfying(t,r,n,a){let o=[];for(let l of n){if(l.identHash!==t.identHash)continue;let A=F7e.structUtils.tryParseRange(l.reference,{requireProtocol:jGe.PROTOCOL});if(!(!A||!JUr.default.valid(A.selector))){if(A.params?.__archiveUrl){let f=F7e.structUtils.makeRange({protocol:jGe.PROTOCOL,selector:A.selector,source:null,params:null}),[I]=await a.resolver.getCandidates(F7e.structUtils.makeDescriptor(t,f),r,a);if(l.reference!==I.reference)continue}o.push(l)}}return{locators:o,sorted:!1}}async resolve(t,r){throw new Error("Unreachable")}};hFt.NpmTagResolver=UUr});var lF=H(CL=>{"use strict";var Bbl=CL&&CL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CL,"__esModule",{value:!0});CL.Minipass=CL.isWritable=CL.isReadable=CL.isStream=void 0;var cps=typeof process=="object"&&process?process:{stdout:null,stderr:null},tKr=Et("node:events"),Aps=Bbl(Et("node:stream")),wbl=Et("node:string_decoder"),Tbl=e=>!!e&&typeof e=="object"&&(e instanceof SFt||e instanceof Aps.default||(0,CL.isReadable)(e)||(0,CL.isWritable)(e));CL.isStream=Tbl;var Rbl=e=>!!e&&typeof e=="object"&&e instanceof tKr.EventEmitter&&typeof e.pipe=="function"&&e.pipe!==Aps.default.Writable.prototype.pipe;CL.isReadable=Rbl;var Nbl=e=>!!e&&typeof e=="object"&&e instanceof tKr.EventEmitter&&typeof e.write=="function"&&typeof e.end=="function";CL.isWritable=Nbl;var sre=Symbol("EOF"),ore=Symbol("maybeEmitEnd"),Xue=Symbol("emittedEnd"),mFt=Symbol("emittingEnd"),Z7e=Symbol("emittedError"),CFt=Symbol("closed"),lps=Symbol("read"),_Ft=Symbol("flush"),ups=Symbol("flushChunk"),dJ=Symbol("encoding"),zGe=Symbol("decoder"),wD=Symbol("flowing"),L7e=Symbol("paused"),qGe=Symbol("resume"),TD=Symbol("buffer"),mL=Symbol("pipes"),RD=Symbol("bufferLength"),KUr=Symbol("bufferPush"),yFt=Symbol("bufferShift"),cF=Symbol("objectMode"),hw=Symbol("destroyed"),jUr=Symbol("error"),zUr=Symbol("emitData"),gps=Symbol("emitEnd"),qUr=Symbol("emitEnd2"),kj=Symbol("async"),$Ur=Symbol("abort"),bFt=Symbol("aborted"),V7e=Symbol("signal"),x0e=Symbol("dataListeners"),qP=Symbol("discarded"),W7e=e=>Promise.resolve().then(e),Dbl=e=>e(),kbl=e=>e==="end"||e==="finish"||e==="prefinish",xbl=e=>e instanceof ArrayBuffer||!!e&&typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,Gbl=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),EFt=class{src;dest;opts;ondrain;constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[qGe](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},eKr=class extends EFt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}},Fbl=e=>!!e.objectMode,Zbl=e=>!e.objectMode&&!!e.encoding&&e.encoding!=="buffer",SFt=class extends tKr.EventEmitter{[wD]=!1;[L7e]=!1;[mL]=[];[TD]=[];[cF];[dJ];[kj];[zGe];[sre]=!1;[Xue]=!1;[mFt]=!1;[CFt]=!1;[Z7e]=null;[RD]=0;[hw]=!1;[V7e];[bFt]=!1;[x0e]=0;[qP]=!1;writable=!0;readable=!0;constructor(...t){let r=t[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");Fbl(r)?(this[cF]=!0,this[dJ]=null):Zbl(r)?(this[dJ]=r.encoding,this[cF]=!1):(this[cF]=!1,this[dJ]=null),this[kj]=!!r.async,this[zGe]=this[dJ]?new wbl.StringDecoder(this[dJ]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[TD]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[mL]});let{signal:n}=r;n&&(this[V7e]=n,n.aborted?this[$Ur]():n.addEventListener("abort",()=>this[$Ur]()))}get bufferLength(){return this[RD]}get encoding(){return this[dJ]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[cF]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[kj]}set async(t){this[kj]=this[kj]||!!t}[$Ur](){this[bFt]=!0,this.emit("abort",this[V7e]?.reason),this.destroy(this[V7e]?.reason)}get aborted(){return this[bFt]}set aborted(t){}write(t,r,n){if(this[bFt])return!1;if(this[sre])throw new Error("write after end");if(this[hw])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[kj]?W7e:Dbl;if(!this[cF]&&!Buffer.isBuffer(t)){if(Gbl(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(xbl(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[cF]?(this[wD]&&this[RD]!==0&&this[_Ft](!0),this[wD]?this.emit("data",t):this[KUr](t),this[RD]!==0&&this.emit("readable"),n&&a(n),this[wD]):t.length?(typeof t=="string"&&!(r===this[dJ]&&!this[zGe]?.lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[dJ]&&(t=this[zGe].write(t)),this[wD]&&this[RD]!==0&&this[_Ft](!0),this[wD]?this.emit("data",t):this[KUr](t),this[RD]!==0&&this.emit("readable"),n&&a(n),this[wD]):(this[RD]!==0&&this.emit("readable"),n&&a(n),this[wD])}read(t){if(this[hw])return null;if(this[qP]=!1,this[RD]===0||t===0||t&&t>this[RD])return this[ore](),null;this[cF]&&(t=null),this[TD].length>1&&!this[cF]&&(this[TD]=[this[dJ]?this[TD].join(""):Buffer.concat(this[TD],this[RD])]);let r=this[lps](t||null,this[TD][0]);return this[ore](),r}[lps](t,r){if(this[cF])this[yFt]();else{let n=r;t===n.length||t===null?this[yFt]():typeof n=="string"?(this[TD][0]=n.slice(t),r=n.slice(0,t),this[RD]-=t):(this[TD][0]=n.subarray(t),r=n.subarray(0,t),this[RD]-=t)}return this.emit("data",r),!this[TD].length&&!this[sre]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=void 0),typeof r=="function"&&(n=r,r="utf8"),t!==void 0&&this.write(t,r),n&&this.once("end",n),this[sre]=!0,this.writable=!1,(this[wD]||!this[L7e])&&this[ore](),this}[qGe](){this[hw]||(!this[x0e]&&!this[mL].length&&(this[qP]=!0),this[L7e]=!1,this[wD]=!0,this.emit("resume"),this[TD].length?this[_Ft]():this[sre]?this[ore]():this.emit("drain"))}resume(){return this[qGe]()}pause(){this[wD]=!1,this[L7e]=!0,this[qP]=!1}get destroyed(){return this[hw]}get flowing(){return this[wD]}get paused(){return this[L7e]}[KUr](t){this[cF]?this[RD]+=1:this[RD]+=t.length,this[TD].push(t)}[yFt](){return this[cF]?this[RD]-=1:this[RD]-=this[TD][0].length,this[TD].shift()}[_Ft](t=!1){do;while(this[ups](this[yFt]())&&this[TD].length);!t&&!this[TD].length&&!this[sre]&&this.emit("drain")}[ups](t){return this.emit("data",t),this[wD]}pipe(t,r){if(this[hw])return t;this[qP]=!1;let n=this[Xue];return r=r||{},t===cps.stdout||t===cps.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this[mL].push(r.proxyErrors?new eKr(this,t,r):new EFt(this,t,r)),this[kj]?W7e(()=>this[qGe]()):this[qGe]()),t}unpipe(t){let r=this[mL].find(n=>n.dest===t);r&&(this[mL].length===1?(this[wD]&&this[x0e]===0&&(this[wD]=!1),this[mL]=[]):this[mL].splice(this[mL].indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);if(t==="data")this[qP]=!1,this[x0e]++,!this[mL].length&&!this[wD]&&this[qGe]();else if(t==="readable"&&this[RD]!==0)super.emit("readable");else if(kbl(t)&&this[Xue])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[Z7e]){let a=r;this[kj]?W7e(()=>a.call(this,this[Z7e])):a.call(this,this[Z7e])}return n}removeListener(t,r){return this.off(t,r)}off(t,r){let n=super.off(t,r);return t==="data"&&(this[x0e]=this.listeners("data").length,this[x0e]===0&&!this[qP]&&!this[mL].length&&(this[wD]=!1)),n}removeAllListeners(t){let r=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[x0e]=0,!this[qP]&&!this[mL].length&&(this[wD]=!1)),r}get emittedEnd(){return this[Xue]}[ore](){!this[mFt]&&!this[Xue]&&!this[hw]&&this[TD].length===0&&this[sre]&&(this[mFt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[CFt]&&this.emit("close"),this[mFt]=!1)}emit(t,...r){let n=r[0];if(t!=="error"&&t!=="close"&&t!==hw&&this[hw])return!1;if(t==="data")return!this[cF]&&!n?!1:this[kj]?(W7e(()=>this[zUr](n)),!0):this[zUr](n);if(t==="end")return this[gps]();if(t==="close"){if(this[CFt]=!0,!this[Xue]&&!this[hw])return!1;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[Z7e]=n,super.emit(jUr,n);let o=!this[V7e]||this.listeners("error").length?super.emit("error",n):!1;return this[ore](),o}else if(t==="resume"){let o=super.emit("resume");return this[ore](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,...r);return this[ore](),a}[zUr](t){for(let n of this[mL])n.dest.write(t)===!1&&this.pause();let r=this[qP]?!1:super.emit("data",t);return this[ore](),r}[gps](){return this[Xue]?!1:(this[Xue]=!0,this.readable=!1,this[kj]?(W7e(()=>this[qUr]()),!0):this[qUr]())}[qUr](){if(this[zGe]){let r=this[zGe].end();if(r){for(let n of this[mL])n.dest.write(r);this[qP]||super.emit("data",r)}}for(let r of this[mL])r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[cF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[cF]||(t.dataLength+=n.length)}),await r,t}async concat(){if(this[cF])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[dJ]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,r)=>{this.on(hw,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[Symbol.asyncIterator](){this[qP]=!1;let t=!1,r=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return r();let a=this.read();if(a!==null)return Promise.resolve({done:!1,value:a});if(this[sre])return r();let o,l,A=b=>{this.off("data",f),this.off("end",I),this.off(hw,C),r(),l(b)},f=b=>{this.off("error",A),this.off("end",I),this.off(hw,C),this.pause(),o({value:b,done:!!this[sre]})},I=()=>{this.off("error",A),this.off("data",f),this.off(hw,C),r(),o({done:!0,value:void 0})},C=()=>A(new Error("stream destroyed"));return new Promise((b,E)=>{l=E,o=b,this.once(hw,C),this.once("error",A),this.once("end",I),this.once("data",f)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[qP]=!1;let t=!1,r=()=>(this.pause(),this.off(jUr,r),this.off(hw,r),this.off("end",r),t=!0,{done:!0,value:void 0}),n=()=>{if(t)return r();let a=this.read();return a===null?r():{done:!1,value:a}};return this.once("end",r),this.once(jUr,r),this.once(hw,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(t){if(this[hw])return t?this.emit("error",t):this.emit(hw),this;this[hw]=!0,this[qP]=!0,this[TD].length=0,this[RD]=0;let r=this;return typeof r.close=="function"&&!this[CFt]&&r.close(),t?this.emit("error",t):this.emit(hw),this}static get isStream(){return CL.isStream}};CL.Minipass=SFt});var cre=H((Ctg,xj)=>{"use strict";var P7e=Et("crypto"),{Minipass:Lbl}=lF(),nKr=["sha512","sha384","sha256"],sKr=["sha512"],Vbl=/^[a-z0-9+/]+(?:=?=?)$/i,Wbl=/^([a-z0-9]+)-([^?]+)([?\S*]*)$/,Obl=/^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/,Pbl=/^[\x21-\x7E]+$/,M7e=e=>e?.length?`?${e.join("?")}`:"",iKr=class extends Lbl{#e;#t;#n;constructor(t){super(),this.size=0,this.opts=t,this.#r(),t?.algorithms?this.algorithms=[...t.algorithms]:this.algorithms=[...sKr],this.algorithm!==null&&!this.algorithms.includes(this.algorithm)&&this.algorithms.push(this.algorithm),this.hashes=this.algorithms.map(P7e.createHash)}#r(){this.sri=this.opts?.integrity?$P(this.opts?.integrity,this.opts):null,this.expectedSize=this.opts?.size,this.sri?this.sri.isHash?(this.goodSri=!0,this.algorithm=this.sri.algorithm):(this.goodSri=!this.sri.isEmpty(),this.algorithm=this.sri.pickAlgorithm(this.opts)):this.algorithm=null,this.digests=this.goodSri?this.sri[this.algorithm]:null,this.optString=M7e(this.opts?.options)}on(t,r){return t==="size"&&this.#t?r(this.#t):t==="integrity"&&this.#e?r(this.#e):t==="verified"&&this.#n?r(this.#n):super.on(t,r)}emit(t,r){return t==="end"&&this.#i(),super.emit(t,r)}write(t){return this.size+=t.length,this.hashes.forEach(r=>r.update(t)),super.write(t)}#i(){this.goodSri||this.#r();let t=$P(this.hashes.map((n,a)=>`${this.algorithms[a]}-${n.digest("base64")}${this.optString}`).join(" "),this.opts),r=this.goodSri&&t.match(this.sri,this.opts);if(typeof this.expectedSize=="number"&&this.size!==this.expectedSize){let n=new Error(`stream size mismatch when checking ${this.sri}. Wanted: ${this.expectedSize} - Found: ${this.size}`);n.code="EBADSIZE",n.found=this.size,n.expected=this.expectedSize,n.sri=this.sri,this.emit("error",n)}else if(this.sri&&!r){let n=new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${t}. (${this.size} bytes)`);n.code="EINTEGRITY",n.found=t,n.expected=this.digests,n.algorithm=this.algorithm,n.sri=this.sri,this.emit("error",n)}else this.#t=this.size,this.emit("size",this.size),this.#e=t,this.emit("integrity",t),r&&(this.#n=r,this.emit("verified",r))}},ore=class{get isHash(){return!0}constructor(t,r){let n=r?.strict;this.source=t.trim(),this.digest="",this.algorithm="",this.options=[];let a=this.source.match(n?Hyl:Myl);if(!a||n&&!zUr.includes(a[1]))return;this.algorithm=a[1],this.digest=a[2];let o=a[3];o&&(this.options=o.slice(1).split("?"))}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}match(t,r){let n=zP(t,r);if(!n)return!1;if(n.isIntegrity){let a=n.pickAlgorithm(r,[this.algorithm]);if(!a)return!1;let o=n[a].find(l=>l.digest===this.digest);return o||!1}return n.digest===this.digest?n:!1}toString(t){return t?.strict&&!(zUr.includes(this.algorithm)&&this.digest.match(Pyl)&&this.options.every(r=>r.match(Yyl)))?"":`${this.algorithm}-${this.digest}${H7e(this.options)}`}};function Aps(e,t,r,n){let a=e!=="",o=!1,l="",A=n.length-1;for(let I=0;In[a].find(l=>o.digest===l.digest)))throw new Error("hashes do not match, cannot update integrity")}else this[a]=n[a]}match(t,r){let n=zP(t,r);if(!n)return!1;let a=n.pickAlgorithm(r,Object.keys(this));return!!a&&this[a]&&n[a]&&this[a].find(o=>n[a].find(l=>o.digest===l.digest))||!1}pickAlgorithm(t,r){let n=t?.pickAlgorithm||qyl,a=Object.keys(this).filter(o=>r?.length?r.includes(o):!0);return a.length?a.reduce((o,l)=>n(o,l)||o):null}};kj.exports.parse=zP;function zP(e,t){if(!e)return null;if(typeof e=="string")return jUr(e,t);if(e.algorithm&&e.digest){let r=new G0e;return r[e.algorithm]=[e],jUr(P7e(r,t),t)}else return jUr(P7e(e,t),t)}function jUr(e,t){if(t?.single)return new ore(e,t);let r=e.trim().split(/\s+/).reduce((n,a)=>{let o=new ore(a,t);if(o.algorithm&&o.digest){let l=o.algorithm;n[l]||(n[l]=[]),n[l].push(o)}return n},new G0e);return r.isEmpty()?null:r}kj.exports.stringify=P7e;function P7e(e,t){return e.algorithm&&e.digest?ore.prototype.toString.call(e,t):typeof e=="string"?P7e(zP(e,t),t):G0e.prototype.toString.call(e,t)}kj.exports.fromHex=Qyl;function Qyl(e,t,r){let n=H7e(r?.options);return zP(`${t}-${Buffer.from(e,"hex").toString("base64")}${n}`,r)}kj.exports.fromData=Xyl;function Xyl(e,t){let r=t?.algorithms||[...$Ur],n=H7e(t?.options);return r.reduce((a,o)=>{let l=M7e.createHash(o).update(e).digest("base64"),A=new ore(`${o}-${l}${n}`,t);if(A.algorithm&&A.digest){let f=A.algorithm;a[f]||(a[f]=[]),a[f].push(A)}return a},new G0e)}kj.exports.fromStream=Jyl;function Jyl(e,t){let r=eKr(t);return new Promise((n,a)=>{e.pipe(r),e.on("error",a),r.on("error",a);let o;r.on("integrity",l=>{o=l}),r.on("end",()=>n(o)),r.resume()})}kj.exports.checkData=Uyl;function Uyl(e,t,r){if(t=zP(t,r),!t||!Object.keys(t).length){if(r?.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let n=t.pickAlgorithm(r),a=M7e.createHash(n).update(e).digest("base64"),o=zP({algorithm:n,digest:a}),l=o.match(t,r);if(r=r||{},l||!r.error)return l;if(typeof r.size=="number"&&e.length!==r.size){let A=new Error(`data size mismatch when checking ${t}. + Found: ${this.size}`);n.code="EBADSIZE",n.found=this.size,n.expected=this.expectedSize,n.sri=this.sri,this.emit("error",n)}else if(this.sri&&!r){let n=new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${t}. (${this.size} bytes)`);n.code="EINTEGRITY",n.found=t,n.expected=this.digests,n.algorithm=this.algorithm,n.sri=this.sri,this.emit("error",n)}else this.#t=this.size,this.emit("size",this.size),this.#e=t,this.emit("integrity",t),r&&(this.#n=r,this.emit("verified",r))}},are=class{get isHash(){return!0}constructor(t,r){let n=r?.strict;this.source=t.trim(),this.digest="",this.algorithm="",this.options=[];let a=this.source.match(n?Obl:Wbl);if(!a||n&&!nKr.includes(a[1]))return;this.algorithm=a[1],this.digest=a[2];let o=a[3];o&&(this.options=o.slice(1).split("?"))}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}match(t,r){let n=$P(t,r);if(!n)return!1;if(n.isIntegrity){let a=n.pickAlgorithm(r,[this.algorithm]);if(!a)return!1;let o=n[a].find(l=>l.digest===this.digest);return o||!1}return n.digest===this.digest?n:!1}toString(t){return t?.strict&&!(nKr.includes(this.algorithm)&&this.digest.match(Vbl)&&this.options.every(r=>r.match(Pbl)))?"":`${this.algorithm}-${this.digest}${M7e(this.options)}`}};function dps(e,t,r,n){let a=e!=="",o=!1,l="",A=n.length-1;for(let I=0;In[a].find(l=>o.digest===l.digest)))throw new Error("hashes do not match, cannot update integrity")}else this[a]=n[a]}match(t,r){let n=$P(t,r);if(!n)return!1;let a=n.pickAlgorithm(r,Object.keys(this));return!!a&&this[a]&&n[a]&&this[a].find(o=>n[a].find(l=>o.digest===l.digest))||!1}pickAlgorithm(t,r){let n=t?.pickAlgorithm||Kbl,a=Object.keys(this).filter(o=>r?.length?r.includes(o):!0);return a.length?a.reduce((o,l)=>n(o,l)||o):null}};xj.exports.parse=$P;function $P(e,t){if(!e)return null;if(typeof e=="string")return rKr(e,t);if(e.algorithm&&e.digest){let r=new G0e;return r[e.algorithm]=[e],rKr(O7e(r,t),t)}else return rKr(O7e(e,t),t)}function rKr(e,t){if(t?.single)return new are(e,t);let r=e.trim().split(/\s+/).reduce((n,a)=>{let o=new are(a,t);if(o.algorithm&&o.digest){let l=o.algorithm;n[l]||(n[l]=[]),n[l].push(o)}return n},new G0e);return r.isEmpty()?null:r}xj.exports.stringify=O7e;function O7e(e,t){return e.algorithm&&e.digest?are.prototype.toString.call(e,t):typeof e=="string"?O7e($P(e,t),t):G0e.prototype.toString.call(e,t)}xj.exports.fromHex=Mbl;function Mbl(e,t,r){let n=M7e(r?.options);return $P(`${t}-${Buffer.from(e,"hex").toString("base64")}${n}`,r)}xj.exports.fromData=Hbl;function Hbl(e,t){let r=t?.algorithms||[...sKr],n=M7e(t?.options);return r.reduce((a,o)=>{let l=P7e.createHash(o).update(e).digest("base64"),A=new are(`${o}-${l}${n}`,t);if(A.algorithm&&A.digest){let f=A.algorithm;a[f]||(a[f]=[]),a[f].push(A)}return a},new G0e)}xj.exports.fromStream=Ybl;function Ybl(e,t){let r=oKr(t);return new Promise((n,a)=>{e.pipe(r),e.on("error",a),r.on("error",a);let o;r.on("integrity",l=>{o=l}),r.on("end",()=>n(o)),r.resume()})}xj.exports.checkData=Qbl;function Qbl(e,t,r){if(t=$P(t,r),!t||!Object.keys(t).length){if(r?.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let n=t.pickAlgorithm(r),a=P7e.createHash(n).update(e).digest("base64"),o=$P({algorithm:n,digest:a}),l=o.match(t,r);if(r=r||{},l||!r.error)return l;if(typeof r.size=="number"&&e.length!==r.size){let A=new Error(`data size mismatch when checking ${t}. Wanted: ${r.size} - Found: ${e.length}`);throw A.code="EBADSIZE",A.found=e.length,A.expected=r.size,A.sri=t,A}else{let A=new Error(`Integrity checksum failed when using ${n}: Wanted ${t}, but got ${o}. (${e.length} bytes)`);throw A.code="EINTEGRITY",A.found=o,A.expected=t,A.algorithm=n,A.sri=t,A}}kj.exports.checkStream=Kyl;function Kyl(e,t,r){if(r=r||Object.create(null),r.integrity=t,t=zP(t,r),!t||!Object.keys(t).length)return Promise.reject(Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"}));let n=eKr(r);return new Promise((a,o)=>{e.pipe(n),e.on("error",o),n.on("error",o);let l;n.on("verified",A=>{l=A}),n.on("end",()=>a(l)),n.resume()})}kj.exports.integrityStream=eKr;function eKr(e=Object.create(null)){return new qUr(e)}kj.exports.create=jyl;function jyl(e){let t=e?.algorithms||[...$Ur],r=H7e(e?.options),n=t.map(M7e.createHash);return{update:function(a,o){return n.forEach(l=>l.update(a,o)),this},digest:function(){return t.reduce((o,l)=>{let A=n.shift().digest("base64"),f=new ore(`${l}-${A}${r}`,e);if(f.algorithm&&f.digest){let I=f.algorithm;o[I]||(o[I]=[]),o[I].push(f)}return o},new G0e)}}}var zyl=M7e.getHashes(),dps=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(e=>zyl.includes(e));function qyl(e,t){return dps.indexOf(e.toLowerCase())>=dps.indexOf(t.toLowerCase())?e:t}});var tKr=H(Xue=>{"use strict";Object.defineProperty(Xue,"__esModule",{value:!0});Xue.Signature=Xue.Envelope=void 0;Xue.Envelope={fromJSON(e){return{payload:vFt(e.payload)?Buffer.from(pps(e.payload)):Buffer.alloc(0),payloadType:vFt(e.payloadType)?globalThis.String(e.payloadType):"",signatures:globalThis.Array.isArray(e?.signatures)?e.signatures.map(t=>Xue.Signature.fromJSON(t)):[]}},toJSON(e){let t={};return e.payload.length!==0&&(t.payload=fps(e.payload)),e.payloadType!==""&&(t.payloadType=e.payloadType),e.signatures?.length&&(t.signatures=e.signatures.map(r=>Xue.Signature.toJSON(r))),t}};Xue.Signature={fromJSON(e){return{sig:vFt(e.sig)?Buffer.from(pps(e.sig)):Buffer.alloc(0),keyid:vFt(e.keyid)?globalThis.String(e.keyid):""}},toJSON(e){let t={};return e.sig.length!==0&&(t.sig=fps(e.sig)),e.keyid!==""&&(t.keyid=e.keyid),t}};function pps(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function fps(e){return globalThis.Buffer.from(e).toString("base64")}function vFt(e){return e!=null}});var hps=H(BFt=>{"use strict";Object.defineProperty(BFt,"__esModule",{value:!0});BFt.Timestamp=void 0;BFt.Timestamp={fromJSON(e){return{seconds:Ips(e.seconds)?globalThis.String(e.seconds):"0",nanos:Ips(e.nanos)?globalThis.Number(e.nanos):0}},toJSON(e){let t={};return e.seconds!=="0"&&(t.seconds=e.seconds),e.nanos!==0&&(t.nanos=Math.round(e.nanos)),t}};function Ips(e){return e!=null}});var $Ge=H(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});Of.TimeRange=Of.X509CertificateChain=Of.SubjectAlternativeName=Of.X509Certificate=Of.DistinguishedName=Of.ObjectIdentifierValuePair=Of.ObjectIdentifier=Of.PublicKeyIdentifier=Of.PublicKey=Of.RFC3161SignedTimestamp=Of.LogId=Of.MessageSignature=Of.HashOutput=Of.SubjectAlternativeNameType=Of.PublicKeyDetails=Of.HashAlgorithm=void 0;Of.hashAlgorithmFromJSON=Cps;Of.hashAlgorithmToJSON=_ps;Of.publicKeyDetailsFromJSON=yps;Of.publicKeyDetailsToJSON=bps;Of.subjectAlternativeNameTypeFromJSON=Eps;Of.subjectAlternativeNameTypeToJSON=Sps;var $yl=hps(),rW;(function(e){e[e.HASH_ALGORITHM_UNSPECIFIED=0]="HASH_ALGORITHM_UNSPECIFIED",e[e.SHA2_256=1]="SHA2_256",e[e.SHA2_384=2]="SHA2_384",e[e.SHA2_512=3]="SHA2_512",e[e.SHA3_256=4]="SHA3_256",e[e.SHA3_384=5]="SHA3_384"})(rW||(Of.HashAlgorithm=rW={}));function Cps(e){switch(e){case 0:case"HASH_ALGORITHM_UNSPECIFIED":return rW.HASH_ALGORITHM_UNSPECIFIED;case 1:case"SHA2_256":return rW.SHA2_256;case 2:case"SHA2_384":return rW.SHA2_384;case 3:case"SHA2_512":return rW.SHA2_512;case 4:case"SHA3_256":return rW.SHA3_256;case 5:case"SHA3_384":return rW.SHA3_384;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}function _ps(e){switch(e){case rW.HASH_ALGORITHM_UNSPECIFIED:return"HASH_ALGORITHM_UNSPECIFIED";case rW.SHA2_256:return"SHA2_256";case rW.SHA2_384:return"SHA2_384";case rW.SHA2_512:return"SHA2_512";case rW.SHA3_256:return"SHA3_256";case rW.SHA3_384:return"SHA3_384";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}var Wf;(function(e){e[e.PUBLIC_KEY_DETAILS_UNSPECIFIED=0]="PUBLIC_KEY_DETAILS_UNSPECIFIED",e[e.PKCS1_RSA_PKCS1V5=1]="PKCS1_RSA_PKCS1V5",e[e.PKCS1_RSA_PSS=2]="PKCS1_RSA_PSS",e[e.PKIX_RSA_PKCS1V5=3]="PKIX_RSA_PKCS1V5",e[e.PKIX_RSA_PSS=4]="PKIX_RSA_PSS",e[e.PKIX_RSA_PKCS1V15_2048_SHA256=9]="PKIX_RSA_PKCS1V15_2048_SHA256",e[e.PKIX_RSA_PKCS1V15_3072_SHA256=10]="PKIX_RSA_PKCS1V15_3072_SHA256",e[e.PKIX_RSA_PKCS1V15_4096_SHA256=11]="PKIX_RSA_PKCS1V15_4096_SHA256",e[e.PKIX_RSA_PSS_2048_SHA256=16]="PKIX_RSA_PSS_2048_SHA256",e[e.PKIX_RSA_PSS_3072_SHA256=17]="PKIX_RSA_PSS_3072_SHA256",e[e.PKIX_RSA_PSS_4096_SHA256=18]="PKIX_RSA_PSS_4096_SHA256",e[e.PKIX_ECDSA_P256_HMAC_SHA_256=6]="PKIX_ECDSA_P256_HMAC_SHA_256",e[e.PKIX_ECDSA_P256_SHA_256=5]="PKIX_ECDSA_P256_SHA_256",e[e.PKIX_ECDSA_P384_SHA_384=12]="PKIX_ECDSA_P384_SHA_384",e[e.PKIX_ECDSA_P521_SHA_512=13]="PKIX_ECDSA_P521_SHA_512",e[e.PKIX_ED25519=7]="PKIX_ED25519",e[e.PKIX_ED25519_PH=8]="PKIX_ED25519_PH",e[e.PKIX_ECDSA_P384_SHA_256=19]="PKIX_ECDSA_P384_SHA_256",e[e.PKIX_ECDSA_P521_SHA_256=20]="PKIX_ECDSA_P521_SHA_256",e[e.LMS_SHA256=14]="LMS_SHA256",e[e.LMOTS_SHA256=15]="LMOTS_SHA256",e[e.ML_DSA_65=21]="ML_DSA_65",e[e.ML_DSA_87=22]="ML_DSA_87"})(Wf||(Of.PublicKeyDetails=Wf={}));function yps(e){switch(e){case 0:case"PUBLIC_KEY_DETAILS_UNSPECIFIED":return Wf.PUBLIC_KEY_DETAILS_UNSPECIFIED;case 1:case"PKCS1_RSA_PKCS1V5":return Wf.PKCS1_RSA_PKCS1V5;case 2:case"PKCS1_RSA_PSS":return Wf.PKCS1_RSA_PSS;case 3:case"PKIX_RSA_PKCS1V5":return Wf.PKIX_RSA_PKCS1V5;case 4:case"PKIX_RSA_PSS":return Wf.PKIX_RSA_PSS;case 9:case"PKIX_RSA_PKCS1V15_2048_SHA256":return Wf.PKIX_RSA_PKCS1V15_2048_SHA256;case 10:case"PKIX_RSA_PKCS1V15_3072_SHA256":return Wf.PKIX_RSA_PKCS1V15_3072_SHA256;case 11:case"PKIX_RSA_PKCS1V15_4096_SHA256":return Wf.PKIX_RSA_PKCS1V15_4096_SHA256;case 16:case"PKIX_RSA_PSS_2048_SHA256":return Wf.PKIX_RSA_PSS_2048_SHA256;case 17:case"PKIX_RSA_PSS_3072_SHA256":return Wf.PKIX_RSA_PSS_3072_SHA256;case 18:case"PKIX_RSA_PSS_4096_SHA256":return Wf.PKIX_RSA_PSS_4096_SHA256;case 6:case"PKIX_ECDSA_P256_HMAC_SHA_256":return Wf.PKIX_ECDSA_P256_HMAC_SHA_256;case 5:case"PKIX_ECDSA_P256_SHA_256":return Wf.PKIX_ECDSA_P256_SHA_256;case 12:case"PKIX_ECDSA_P384_SHA_384":return Wf.PKIX_ECDSA_P384_SHA_384;case 13:case"PKIX_ECDSA_P521_SHA_512":return Wf.PKIX_ECDSA_P521_SHA_512;case 7:case"PKIX_ED25519":return Wf.PKIX_ED25519;case 8:case"PKIX_ED25519_PH":return Wf.PKIX_ED25519_PH;case 19:case"PKIX_ECDSA_P384_SHA_256":return Wf.PKIX_ECDSA_P384_SHA_256;case 20:case"PKIX_ECDSA_P521_SHA_256":return Wf.PKIX_ECDSA_P521_SHA_256;case 14:case"LMS_SHA256":return Wf.LMS_SHA256;case 15:case"LMOTS_SHA256":return Wf.LMOTS_SHA256;case 21:case"ML_DSA_65":return Wf.ML_DSA_65;case 22:case"ML_DSA_87":return Wf.ML_DSA_87;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}function bps(e){switch(e){case Wf.PUBLIC_KEY_DETAILS_UNSPECIFIED:return"PUBLIC_KEY_DETAILS_UNSPECIFIED";case Wf.PKCS1_RSA_PKCS1V5:return"PKCS1_RSA_PKCS1V5";case Wf.PKCS1_RSA_PSS:return"PKCS1_RSA_PSS";case Wf.PKIX_RSA_PKCS1V5:return"PKIX_RSA_PKCS1V5";case Wf.PKIX_RSA_PSS:return"PKIX_RSA_PSS";case Wf.PKIX_RSA_PKCS1V15_2048_SHA256:return"PKIX_RSA_PKCS1V15_2048_SHA256";case Wf.PKIX_RSA_PKCS1V15_3072_SHA256:return"PKIX_RSA_PKCS1V15_3072_SHA256";case Wf.PKIX_RSA_PKCS1V15_4096_SHA256:return"PKIX_RSA_PKCS1V15_4096_SHA256";case Wf.PKIX_RSA_PSS_2048_SHA256:return"PKIX_RSA_PSS_2048_SHA256";case Wf.PKIX_RSA_PSS_3072_SHA256:return"PKIX_RSA_PSS_3072_SHA256";case Wf.PKIX_RSA_PSS_4096_SHA256:return"PKIX_RSA_PSS_4096_SHA256";case Wf.PKIX_ECDSA_P256_HMAC_SHA_256:return"PKIX_ECDSA_P256_HMAC_SHA_256";case Wf.PKIX_ECDSA_P256_SHA_256:return"PKIX_ECDSA_P256_SHA_256";case Wf.PKIX_ECDSA_P384_SHA_384:return"PKIX_ECDSA_P384_SHA_384";case Wf.PKIX_ECDSA_P521_SHA_512:return"PKIX_ECDSA_P521_SHA_512";case Wf.PKIX_ED25519:return"PKIX_ED25519";case Wf.PKIX_ED25519_PH:return"PKIX_ED25519_PH";case Wf.PKIX_ECDSA_P384_SHA_256:return"PKIX_ECDSA_P384_SHA_256";case Wf.PKIX_ECDSA_P521_SHA_256:return"PKIX_ECDSA_P521_SHA_256";case Wf.LMS_SHA256:return"LMS_SHA256";case Wf.LMOTS_SHA256:return"LMOTS_SHA256";case Wf.ML_DSA_65:return"ML_DSA_65";case Wf.ML_DSA_87:return"ML_DSA_87";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}var xj;(function(e){e[e.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED=0]="SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED",e[e.EMAIL=1]="EMAIL",e[e.URI=2]="URI",e[e.OTHER_NAME=3]="OTHER_NAME"})(xj||(Of.SubjectAlternativeNameType=xj={}));function Eps(e){switch(e){case 0:case"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED":return xj.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED;case 1:case"EMAIL":return xj.EMAIL;case 2:case"URI":return xj.URI;case 3:case"OTHER_NAME":return xj.OTHER_NAME;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}function Sps(e){switch(e){case xj.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED:return"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED";case xj.EMAIL:return"EMAIL";case xj.URI:return"URI";case xj.OTHER_NAME:return"OTHER_NAME";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}Of.HashOutput={fromJSON(e){return{algorithm:RT(e.algorithm)?Cps(e.algorithm):0,digest:RT(e.digest)?Buffer.from(F0e(e.digest)):Buffer.alloc(0)}},toJSON(e){let t={};return e.algorithm!==0&&(t.algorithm=_ps(e.algorithm)),e.digest.length!==0&&(t.digest=Z0e(e.digest)),t}};Of.MessageSignature={fromJSON(e){return{messageDigest:RT(e.messageDigest)?Of.HashOutput.fromJSON(e.messageDigest):void 0,signature:RT(e.signature)?Buffer.from(F0e(e.signature)):Buffer.alloc(0)}},toJSON(e){let t={};return e.messageDigest!==void 0&&(t.messageDigest=Of.HashOutput.toJSON(e.messageDigest)),e.signature.length!==0&&(t.signature=Z0e(e.signature)),t}};Of.LogId={fromJSON(e){return{keyId:RT(e.keyId)?Buffer.from(F0e(e.keyId)):Buffer.alloc(0)}},toJSON(e){let t={};return e.keyId.length!==0&&(t.keyId=Z0e(e.keyId)),t}};Of.RFC3161SignedTimestamp={fromJSON(e){return{signedTimestamp:RT(e.signedTimestamp)?Buffer.from(F0e(e.signedTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedTimestamp.length!==0&&(t.signedTimestamp=Z0e(e.signedTimestamp)),t}};Of.PublicKey={fromJSON(e){return{rawBytes:RT(e.rawBytes)?Buffer.from(F0e(e.rawBytes)):void 0,keyDetails:RT(e.keyDetails)?yps(e.keyDetails):0,validFor:RT(e.validFor)?Of.TimeRange.fromJSON(e.validFor):void 0}},toJSON(e){let t={};return e.rawBytes!==void 0&&(t.rawBytes=Z0e(e.rawBytes)),e.keyDetails!==0&&(t.keyDetails=bps(e.keyDetails)),e.validFor!==void 0&&(t.validFor=Of.TimeRange.toJSON(e.validFor)),t}};Of.PublicKeyIdentifier={fromJSON(e){return{hint:RT(e.hint)?globalThis.String(e.hint):""}},toJSON(e){let t={};return e.hint!==""&&(t.hint=e.hint),t}};Of.ObjectIdentifier={fromJSON(e){return{id:globalThis.Array.isArray(e?.id)?e.id.map(t=>globalThis.Number(t)):[]}},toJSON(e){let t={};return e.id?.length&&(t.id=e.id.map(r=>Math.round(r))),t}};Of.ObjectIdentifierValuePair={fromJSON(e){return{oid:RT(e.oid)?Of.ObjectIdentifier.fromJSON(e.oid):void 0,value:RT(e.value)?Buffer.from(F0e(e.value)):Buffer.alloc(0)}},toJSON(e){let t={};return e.oid!==void 0&&(t.oid=Of.ObjectIdentifier.toJSON(e.oid)),e.value.length!==0&&(t.value=Z0e(e.value)),t}};Of.DistinguishedName={fromJSON(e){return{organization:RT(e.organization)?globalThis.String(e.organization):"",commonName:RT(e.commonName)?globalThis.String(e.commonName):""}},toJSON(e){let t={};return e.organization!==""&&(t.organization=e.organization),e.commonName!==""&&(t.commonName=e.commonName),t}};Of.X509Certificate={fromJSON(e){return{rawBytes:RT(e.rawBytes)?Buffer.from(F0e(e.rawBytes)):Buffer.alloc(0)}},toJSON(e){let t={};return e.rawBytes.length!==0&&(t.rawBytes=Z0e(e.rawBytes)),t}};Of.SubjectAlternativeName={fromJSON(e){return{type:RT(e.type)?Eps(e.type):0,identity:RT(e.regexp)?{$case:"regexp",regexp:globalThis.String(e.regexp)}:RT(e.value)?{$case:"value",value:globalThis.String(e.value)}:void 0}},toJSON(e){let t={};return e.type!==0&&(t.type=Sps(e.type)),e.identity?.$case==="regexp"?t.regexp=e.identity.regexp:e.identity?.$case==="value"&&(t.value=e.identity.value),t}};Of.X509CertificateChain={fromJSON(e){return{certificates:globalThis.Array.isArray(e?.certificates)?e.certificates.map(t=>Of.X509Certificate.fromJSON(t)):[]}},toJSON(e){let t={};return e.certificates?.length&&(t.certificates=e.certificates.map(r=>Of.X509Certificate.toJSON(r))),t}};Of.TimeRange={fromJSON(e){return{start:RT(e.start)?mps(e.start):void 0,end:RT(e.end)?mps(e.end):void 0}},toJSON(e){let t={};return e.start!==void 0&&(t.start=e.start.toISOString()),e.end!==void 0&&(t.end=e.end.toISOString()),t}};function F0e(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function Z0e(e){return globalThis.Buffer.from(e).toString("base64")}function ebl(e){let t=(globalThis.Number(e.seconds)||0)*1e3;return t+=(e.nanos||0)/1e6,new globalThis.Date(t)}function mps(e){return e instanceof globalThis.Date?e:typeof e=="string"?new globalThis.Date(e):ebl($yl.Timestamp.fromJSON(e))}function RT(e){return e!=null}});var rKr=H(NT=>{"use strict";Object.defineProperty(NT,"__esModule",{value:!0});NT.TransparencyLogEntry=NT.InclusionPromise=NT.InclusionProof=NT.Checkpoint=NT.KindVersion=void 0;var vps=$Ge();NT.KindVersion={fromJSON(e){return{kind:CL(e.kind)?globalThis.String(e.kind):"",version:CL(e.version)?globalThis.String(e.version):""}},toJSON(e){let t={};return e.kind!==""&&(t.kind=e.kind),e.version!==""&&(t.version=e.version),t}};NT.Checkpoint={fromJSON(e){return{envelope:CL(e.envelope)?globalThis.String(e.envelope):""}},toJSON(e){let t={};return e.envelope!==""&&(t.envelope=e.envelope),t}};NT.InclusionProof={fromJSON(e){return{logIndex:CL(e.logIndex)?globalThis.String(e.logIndex):"0",rootHash:CL(e.rootHash)?Buffer.from(wFt(e.rootHash)):Buffer.alloc(0),treeSize:CL(e.treeSize)?globalThis.String(e.treeSize):"0",hashes:globalThis.Array.isArray(e?.hashes)?e.hashes.map(t=>Buffer.from(wFt(t))):[],checkpoint:CL(e.checkpoint)?NT.Checkpoint.fromJSON(e.checkpoint):void 0}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.rootHash.length!==0&&(t.rootHash=TFt(e.rootHash)),e.treeSize!=="0"&&(t.treeSize=e.treeSize),e.hashes?.length&&(t.hashes=e.hashes.map(r=>TFt(r))),e.checkpoint!==void 0&&(t.checkpoint=NT.Checkpoint.toJSON(e.checkpoint)),t}};NT.InclusionPromise={fromJSON(e){return{signedEntryTimestamp:CL(e.signedEntryTimestamp)?Buffer.from(wFt(e.signedEntryTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedEntryTimestamp.length!==0&&(t.signedEntryTimestamp=TFt(e.signedEntryTimestamp)),t}};NT.TransparencyLogEntry={fromJSON(e){return{logIndex:CL(e.logIndex)?globalThis.String(e.logIndex):"0",logId:CL(e.logId)?vps.LogId.fromJSON(e.logId):void 0,kindVersion:CL(e.kindVersion)?NT.KindVersion.fromJSON(e.kindVersion):void 0,integratedTime:CL(e.integratedTime)?globalThis.String(e.integratedTime):"0",inclusionPromise:CL(e.inclusionPromise)?NT.InclusionPromise.fromJSON(e.inclusionPromise):void 0,inclusionProof:CL(e.inclusionProof)?NT.InclusionProof.fromJSON(e.inclusionProof):void 0,canonicalizedBody:CL(e.canonicalizedBody)?Buffer.from(wFt(e.canonicalizedBody)):Buffer.alloc(0)}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.logId!==void 0&&(t.logId=vps.LogId.toJSON(e.logId)),e.kindVersion!==void 0&&(t.kindVersion=NT.KindVersion.toJSON(e.kindVersion)),e.integratedTime!=="0"&&(t.integratedTime=e.integratedTime),e.inclusionPromise!==void 0&&(t.inclusionPromise=NT.InclusionPromise.toJSON(e.inclusionPromise)),e.inclusionProof!==void 0&&(t.inclusionProof=NT.InclusionProof.toJSON(e.inclusionProof)),e.canonicalizedBody.length!==0&&(t.canonicalizedBody=TFt(e.canonicalizedBody)),t}};function wFt(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function TFt(e){return globalThis.Buffer.from(e).toString("base64")}function CL(e){return e!=null}});var nKr=H(JH=>{"use strict";Object.defineProperty(JH,"__esModule",{value:!0});JH.Bundle=JH.VerificationMaterial=JH.TimestampVerificationData=void 0;var Bps=tKr(),Gj=$Ge(),wps=rKr();JH.TimestampVerificationData={fromJSON(e){return{rfc3161Timestamps:globalThis.Array.isArray(e?.rfc3161Timestamps)?e.rfc3161Timestamps.map(t=>Gj.RFC3161SignedTimestamp.fromJSON(t)):[]}},toJSON(e){let t={};return e.rfc3161Timestamps?.length&&(t.rfc3161Timestamps=e.rfc3161Timestamps.map(r=>Gj.RFC3161SignedTimestamp.toJSON(r))),t}};JH.VerificationMaterial={fromJSON(e){return{content:Jue(e.publicKey)?{$case:"publicKey",publicKey:Gj.PublicKeyIdentifier.fromJSON(e.publicKey)}:Jue(e.x509CertificateChain)?{$case:"x509CertificateChain",x509CertificateChain:Gj.X509CertificateChain.fromJSON(e.x509CertificateChain)}:Jue(e.certificate)?{$case:"certificate",certificate:Gj.X509Certificate.fromJSON(e.certificate)}:void 0,tlogEntries:globalThis.Array.isArray(e?.tlogEntries)?e.tlogEntries.map(t=>wps.TransparencyLogEntry.fromJSON(t)):[],timestampVerificationData:Jue(e.timestampVerificationData)?JH.TimestampVerificationData.fromJSON(e.timestampVerificationData):void 0}},toJSON(e){let t={};return e.content?.$case==="publicKey"?t.publicKey=Gj.PublicKeyIdentifier.toJSON(e.content.publicKey):e.content?.$case==="x509CertificateChain"?t.x509CertificateChain=Gj.X509CertificateChain.toJSON(e.content.x509CertificateChain):e.content?.$case==="certificate"&&(t.certificate=Gj.X509Certificate.toJSON(e.content.certificate)),e.tlogEntries?.length&&(t.tlogEntries=e.tlogEntries.map(r=>wps.TransparencyLogEntry.toJSON(r))),e.timestampVerificationData!==void 0&&(t.timestampVerificationData=JH.TimestampVerificationData.toJSON(e.timestampVerificationData)),t}};JH.Bundle={fromJSON(e){return{mediaType:Jue(e.mediaType)?globalThis.String(e.mediaType):"",verificationMaterial:Jue(e.verificationMaterial)?JH.VerificationMaterial.fromJSON(e.verificationMaterial):void 0,content:Jue(e.messageSignature)?{$case:"messageSignature",messageSignature:Gj.MessageSignature.fromJSON(e.messageSignature)}:Jue(e.dsseEnvelope)?{$case:"dsseEnvelope",dsseEnvelope:Bps.Envelope.fromJSON(e.dsseEnvelope)}:void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.verificationMaterial!==void 0&&(t.verificationMaterial=JH.VerificationMaterial.toJSON(e.verificationMaterial)),e.content?.$case==="messageSignature"?t.messageSignature=Gj.MessageSignature.toJSON(e.content.messageSignature):e.content?.$case==="dsseEnvelope"&&(t.dsseEnvelope=Bps.Envelope.toJSON(e.content.dsseEnvelope)),t}};function Jue(e){return e!=null}});var iKr=H(WI=>{"use strict";Object.defineProperty(WI,"__esModule",{value:!0});WI.ClientTrustConfig=WI.ServiceConfiguration=WI.Service=WI.SigningConfig=WI.TrustedRoot=WI.CertificateAuthority=WI.TransparencyLogInstance=WI.ServiceSelector=void 0;WI.serviceSelectorFromJSON=Tps;WI.serviceSelectorToJSON=Rps;var lF=$Ge(),Fj;(function(e){e[e.SERVICE_SELECTOR_UNDEFINED=0]="SERVICE_SELECTOR_UNDEFINED",e[e.ALL=1]="ALL",e[e.ANY=2]="ANY",e[e.EXACT=3]="EXACT"})(Fj||(WI.ServiceSelector=Fj={}));function Tps(e){switch(e){case 0:case"SERVICE_SELECTOR_UNDEFINED":return Fj.SERVICE_SELECTOR_UNDEFINED;case 1:case"ALL":return Fj.ALL;case 2:case"ANY":return Fj.ANY;case 3:case"EXACT":return Fj.EXACT;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}function Rps(e){switch(e){case Fj.SERVICE_SELECTOR_UNDEFINED:return"SERVICE_SELECTOR_UNDEFINED";case Fj.ALL:return"ALL";case Fj.ANY:return"ANY";case Fj.EXACT:return"EXACT";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}WI.TransparencyLogInstance={fromJSON(e){return{baseUrl:H2(e.baseUrl)?globalThis.String(e.baseUrl):"",hashAlgorithm:H2(e.hashAlgorithm)?(0,lF.hashAlgorithmFromJSON)(e.hashAlgorithm):0,publicKey:H2(e.publicKey)?lF.PublicKey.fromJSON(e.publicKey):void 0,logId:H2(e.logId)?lF.LogId.fromJSON(e.logId):void 0,checkpointKeyId:H2(e.checkpointKeyId)?lF.LogId.fromJSON(e.checkpointKeyId):void 0,operator:H2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.baseUrl!==""&&(t.baseUrl=e.baseUrl),e.hashAlgorithm!==0&&(t.hashAlgorithm=(0,lF.hashAlgorithmToJSON)(e.hashAlgorithm)),e.publicKey!==void 0&&(t.publicKey=lF.PublicKey.toJSON(e.publicKey)),e.logId!==void 0&&(t.logId=lF.LogId.toJSON(e.logId)),e.checkpointKeyId!==void 0&&(t.checkpointKeyId=lF.LogId.toJSON(e.checkpointKeyId)),e.operator!==""&&(t.operator=e.operator),t}};WI.CertificateAuthority={fromJSON(e){return{subject:H2(e.subject)?lF.DistinguishedName.fromJSON(e.subject):void 0,uri:H2(e.uri)?globalThis.String(e.uri):"",certChain:H2(e.certChain)?lF.X509CertificateChain.fromJSON(e.certChain):void 0,validFor:H2(e.validFor)?lF.TimeRange.fromJSON(e.validFor):void 0,operator:H2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.subject!==void 0&&(t.subject=lF.DistinguishedName.toJSON(e.subject)),e.uri!==""&&(t.uri=e.uri),e.certChain!==void 0&&(t.certChain=lF.X509CertificateChain.toJSON(e.certChain)),e.validFor!==void 0&&(t.validFor=lF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};WI.TrustedRoot={fromJSON(e){return{mediaType:H2(e.mediaType)?globalThis.String(e.mediaType):"",tlogs:globalThis.Array.isArray(e?.tlogs)?e.tlogs.map(t=>WI.TransparencyLogInstance.fromJSON(t)):[],certificateAuthorities:globalThis.Array.isArray(e?.certificateAuthorities)?e.certificateAuthorities.map(t=>WI.CertificateAuthority.fromJSON(t)):[],ctlogs:globalThis.Array.isArray(e?.ctlogs)?e.ctlogs.map(t=>WI.TransparencyLogInstance.fromJSON(t)):[],timestampAuthorities:globalThis.Array.isArray(e?.timestampAuthorities)?e.timestampAuthorities.map(t=>WI.CertificateAuthority.fromJSON(t)):[]}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.tlogs?.length&&(t.tlogs=e.tlogs.map(r=>WI.TransparencyLogInstance.toJSON(r))),e.certificateAuthorities?.length&&(t.certificateAuthorities=e.certificateAuthorities.map(r=>WI.CertificateAuthority.toJSON(r))),e.ctlogs?.length&&(t.ctlogs=e.ctlogs.map(r=>WI.TransparencyLogInstance.toJSON(r))),e.timestampAuthorities?.length&&(t.timestampAuthorities=e.timestampAuthorities.map(r=>WI.CertificateAuthority.toJSON(r))),t}};WI.SigningConfig={fromJSON(e){return{mediaType:H2(e.mediaType)?globalThis.String(e.mediaType):"",caUrls:globalThis.Array.isArray(e?.caUrls)?e.caUrls.map(t=>WI.Service.fromJSON(t)):[],oidcUrls:globalThis.Array.isArray(e?.oidcUrls)?e.oidcUrls.map(t=>WI.Service.fromJSON(t)):[],rekorTlogUrls:globalThis.Array.isArray(e?.rekorTlogUrls)?e.rekorTlogUrls.map(t=>WI.Service.fromJSON(t)):[],rekorTlogConfig:H2(e.rekorTlogConfig)?WI.ServiceConfiguration.fromJSON(e.rekorTlogConfig):void 0,tsaUrls:globalThis.Array.isArray(e?.tsaUrls)?e.tsaUrls.map(t=>WI.Service.fromJSON(t)):[],tsaConfig:H2(e.tsaConfig)?WI.ServiceConfiguration.fromJSON(e.tsaConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.caUrls?.length&&(t.caUrls=e.caUrls.map(r=>WI.Service.toJSON(r))),e.oidcUrls?.length&&(t.oidcUrls=e.oidcUrls.map(r=>WI.Service.toJSON(r))),e.rekorTlogUrls?.length&&(t.rekorTlogUrls=e.rekorTlogUrls.map(r=>WI.Service.toJSON(r))),e.rekorTlogConfig!==void 0&&(t.rekorTlogConfig=WI.ServiceConfiguration.toJSON(e.rekorTlogConfig)),e.tsaUrls?.length&&(t.tsaUrls=e.tsaUrls.map(r=>WI.Service.toJSON(r))),e.tsaConfig!==void 0&&(t.tsaConfig=WI.ServiceConfiguration.toJSON(e.tsaConfig)),t}};WI.Service={fromJSON(e){return{url:H2(e.url)?globalThis.String(e.url):"",majorApiVersion:H2(e.majorApiVersion)?globalThis.Number(e.majorApiVersion):0,validFor:H2(e.validFor)?lF.TimeRange.fromJSON(e.validFor):void 0,operator:H2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.url!==""&&(t.url=e.url),e.majorApiVersion!==0&&(t.majorApiVersion=Math.round(e.majorApiVersion)),e.validFor!==void 0&&(t.validFor=lF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};WI.ServiceConfiguration={fromJSON(e){return{selector:H2(e.selector)?Tps(e.selector):0,count:H2(e.count)?globalThis.Number(e.count):0}},toJSON(e){let t={};return e.selector!==0&&(t.selector=Rps(e.selector)),e.count!==0&&(t.count=Math.round(e.count)),t}};WI.ClientTrustConfig={fromJSON(e){return{mediaType:H2(e.mediaType)?globalThis.String(e.mediaType):"",trustedRoot:H2(e.trustedRoot)?WI.TrustedRoot.fromJSON(e.trustedRoot):void 0,signingConfig:H2(e.signingConfig)?WI.SigningConfig.fromJSON(e.signingConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.trustedRoot!==void 0&&(t.trustedRoot=WI.TrustedRoot.toJSON(e.trustedRoot)),e.signingConfig!==void 0&&(t.signingConfig=WI.SigningConfig.toJSON(e.signingConfig)),t}};function H2(e){return e!=null}});var kps=H(OI=>{"use strict";Object.defineProperty(OI,"__esModule",{value:!0});OI.Input=OI.Artifact=OI.ArtifactVerificationOptions_ObserverTimestampOptions=OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions=OI.ArtifactVerificationOptions_TimestampAuthorityOptions=OI.ArtifactVerificationOptions_CtlogOptions=OI.ArtifactVerificationOptions_TlogOptions=OI.ArtifactVerificationOptions=OI.PublicKeyIdentities=OI.CertificateIdentities=OI.CertificateIdentity=void 0;var Nps=nKr(),Uue=$Ge(),Dps=iKr();OI.CertificateIdentity={fromJSON(e){return{issuer:iE(e.issuer)?globalThis.String(e.issuer):"",san:iE(e.san)?Uue.SubjectAlternativeName.fromJSON(e.san):void 0,oids:globalThis.Array.isArray(e?.oids)?e.oids.map(t=>Uue.ObjectIdentifierValuePair.fromJSON(t)):[]}},toJSON(e){let t={};return e.issuer!==""&&(t.issuer=e.issuer),e.san!==void 0&&(t.san=Uue.SubjectAlternativeName.toJSON(e.san)),e.oids?.length&&(t.oids=e.oids.map(r=>Uue.ObjectIdentifierValuePair.toJSON(r))),t}};OI.CertificateIdentities={fromJSON(e){return{identities:globalThis.Array.isArray(e?.identities)?e.identities.map(t=>OI.CertificateIdentity.fromJSON(t)):[]}},toJSON(e){let t={};return e.identities?.length&&(t.identities=e.identities.map(r=>OI.CertificateIdentity.toJSON(r))),t}};OI.PublicKeyIdentities={fromJSON(e){return{publicKeys:globalThis.Array.isArray(e?.publicKeys)?e.publicKeys.map(t=>Uue.PublicKey.fromJSON(t)):[]}},toJSON(e){let t={};return e.publicKeys?.length&&(t.publicKeys=e.publicKeys.map(r=>Uue.PublicKey.toJSON(r))),t}};OI.ArtifactVerificationOptions={fromJSON(e){return{signers:iE(e.certificateIdentities)?{$case:"certificateIdentities",certificateIdentities:OI.CertificateIdentities.fromJSON(e.certificateIdentities)}:iE(e.publicKeys)?{$case:"publicKeys",publicKeys:OI.PublicKeyIdentities.fromJSON(e.publicKeys)}:void 0,tlogOptions:iE(e.tlogOptions)?OI.ArtifactVerificationOptions_TlogOptions.fromJSON(e.tlogOptions):void 0,ctlogOptions:iE(e.ctlogOptions)?OI.ArtifactVerificationOptions_CtlogOptions.fromJSON(e.ctlogOptions):void 0,tsaOptions:iE(e.tsaOptions)?OI.ArtifactVerificationOptions_TimestampAuthorityOptions.fromJSON(e.tsaOptions):void 0,integratedTsOptions:iE(e.integratedTsOptions)?OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.fromJSON(e.integratedTsOptions):void 0,observerOptions:iE(e.observerOptions)?OI.ArtifactVerificationOptions_ObserverTimestampOptions.fromJSON(e.observerOptions):void 0}},toJSON(e){let t={};return e.signers?.$case==="certificateIdentities"?t.certificateIdentities=OI.CertificateIdentities.toJSON(e.signers.certificateIdentities):e.signers?.$case==="publicKeys"&&(t.publicKeys=OI.PublicKeyIdentities.toJSON(e.signers.publicKeys)),e.tlogOptions!==void 0&&(t.tlogOptions=OI.ArtifactVerificationOptions_TlogOptions.toJSON(e.tlogOptions)),e.ctlogOptions!==void 0&&(t.ctlogOptions=OI.ArtifactVerificationOptions_CtlogOptions.toJSON(e.ctlogOptions)),e.tsaOptions!==void 0&&(t.tsaOptions=OI.ArtifactVerificationOptions_TimestampAuthorityOptions.toJSON(e.tsaOptions)),e.integratedTsOptions!==void 0&&(t.integratedTsOptions=OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.toJSON(e.integratedTsOptions)),e.observerOptions!==void 0&&(t.observerOptions=OI.ArtifactVerificationOptions_ObserverTimestampOptions.toJSON(e.observerOptions)),t}};OI.ArtifactVerificationOptions_TlogOptions={fromJSON(e){return{threshold:iE(e.threshold)?globalThis.Number(e.threshold):0,performOnlineVerification:iE(e.performOnlineVerification)?globalThis.Boolean(e.performOnlineVerification):!1,disable:iE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.performOnlineVerification!==!1&&(t.performOnlineVerification=e.performOnlineVerification),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_CtlogOptions={fromJSON(e){return{threshold:iE(e.threshold)?globalThis.Number(e.threshold):0,disable:iE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_TimestampAuthorityOptions={fromJSON(e){return{threshold:iE(e.threshold)?globalThis.Number(e.threshold):0,disable:iE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions={fromJSON(e){return{threshold:iE(e.threshold)?globalThis.Number(e.threshold):0,disable:iE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_ObserverTimestampOptions={fromJSON(e){return{threshold:iE(e.threshold)?globalThis.Number(e.threshold):0,disable:iE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.Artifact={fromJSON(e){return{data:iE(e.artifactUri)?{$case:"artifactUri",artifactUri:globalThis.String(e.artifactUri)}:iE(e.artifact)?{$case:"artifact",artifact:Buffer.from(tbl(e.artifact))}:iE(e.artifactDigest)?{$case:"artifactDigest",artifactDigest:Uue.HashOutput.fromJSON(e.artifactDigest)}:void 0}},toJSON(e){let t={};return e.data?.$case==="artifactUri"?t.artifactUri=e.data.artifactUri:e.data?.$case==="artifact"?t.artifact=rbl(e.data.artifact):e.data?.$case==="artifactDigest"&&(t.artifactDigest=Uue.HashOutput.toJSON(e.data.artifactDigest)),t}};OI.Input={fromJSON(e){return{artifactTrustRoot:iE(e.artifactTrustRoot)?Dps.TrustedRoot.fromJSON(e.artifactTrustRoot):void 0,artifactVerificationOptions:iE(e.artifactVerificationOptions)?OI.ArtifactVerificationOptions.fromJSON(e.artifactVerificationOptions):void 0,bundle:iE(e.bundle)?Nps.Bundle.fromJSON(e.bundle):void 0,artifact:iE(e.artifact)?OI.Artifact.fromJSON(e.artifact):void 0}},toJSON(e){let t={};return e.artifactTrustRoot!==void 0&&(t.artifactTrustRoot=Dps.TrustedRoot.toJSON(e.artifactTrustRoot)),e.artifactVerificationOptions!==void 0&&(t.artifactVerificationOptions=OI.ArtifactVerificationOptions.toJSON(e.artifactVerificationOptions)),e.bundle!==void 0&&(t.bundle=Nps.Bundle.toJSON(e.bundle)),e.artifact!==void 0&&(t.artifact=OI.Artifact.toJSON(e.artifact)),t}};function tbl(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function rbl(e){return globalThis.Buffer.from(e).toString("base64")}function iE(e){return e!=null}});var Y7e=H(UH=>{"use strict";var nbl=UH&&UH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),eFe=UH&&UH.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&nbl(t,e,r)};Object.defineProperty(UH,"__esModule",{value:!0});eFe(tKr(),UH);eFe(nKr(),UH);eFe($Ge(),UH);eFe(rKr(),UH);eFe(iKr(),UH);eFe(kps(),UH)});var RFt=H(nW=>{"use strict";Object.defineProperty(nW,"__esModule",{value:!0});nW.BUNDLE_V03_MEDIA_TYPE=nW.BUNDLE_V03_LEGACY_MEDIA_TYPE=nW.BUNDLE_V02_MEDIA_TYPE=nW.BUNDLE_V01_MEDIA_TYPE=void 0;nW.isBundleWithCertificateChain=ibl;nW.isBundleWithPublicKey=sbl;nW.isBundleWithMessageSignature=obl;nW.isBundleWithDsseEnvelope=abl;nW.BUNDLE_V01_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.1";nW.BUNDLE_V02_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.2";nW.BUNDLE_V03_LEGACY_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.3";nW.BUNDLE_V03_MEDIA_TYPE="application/vnd.dev.sigstore.bundle.v0.3+json";function ibl(e){return e.verificationMaterial.content.$case==="x509CertificateChain"}function sbl(e){return e.verificationMaterial.content.$case==="publicKey"}function obl(e){return e.content.$case==="messageSignature"}function abl(e){return e.content.$case==="dsseEnvelope"}});var Gps=H(DFt=>{"use strict";Object.defineProperty(DFt,"__esModule",{value:!0});DFt.toMessageSignatureBundle=lbl;DFt.toDSSEBundle=ubl;var cbl=Y7e(),NFt=RFt();function lbl(e){return{mediaType:e.certificateChain?NFt.BUNDLE_V02_MEDIA_TYPE:NFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"messageSignature",messageSignature:{messageDigest:{algorithm:cbl.HashAlgorithm.SHA2_256,digest:e.digest},signature:e.signature}},verificationMaterial:xps(e)}}function ubl(e){return{mediaType:e.certificateChain?NFt.BUNDLE_V02_MEDIA_TYPE:NFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"dsseEnvelope",dsseEnvelope:gbl(e)},verificationMaterial:xps(e)}}function gbl(e){return{payloadType:e.artifactType,payload:e.artifact,signatures:[Abl(e)]}}function Abl(e){return{keyid:e.keyHint||"",sig:e.signature}}function xps(e){return{content:dbl(e),tlogEntries:[],timestampVerificationData:{rfc3161Timestamps:[]}}}function dbl(e){return e.certificate?e.certificateChain?{$case:"x509CertificateChain",x509CertificateChain:{certificates:[{rawBytes:e.certificate}]}}:{$case:"certificate",certificate:{rawBytes:e.certificate}}:{$case:"publicKey",publicKey:{hint:e.keyHint||""}}}});var oKr=H(kFt=>{"use strict";Object.defineProperty(kFt,"__esModule",{value:!0});kFt.ValidationError=void 0;var sKr=class extends Error{constructor(t,r){super(t),this.fields=r}};kFt.ValidationError=sKr});var aKr=H(L0e=>{"use strict";Object.defineProperty(L0e,"__esModule",{value:!0});L0e.assertBundle=pbl;L0e.assertBundleV01=Fps;L0e.isBundleV01=fbl;L0e.assertBundleV02=Ibl;L0e.assertBundleLatest=hbl;var xFt=oKr();function pbl(e){let t=GFt(e);if(t.length>0)throw new xFt.ValidationError("invalid bundle",t)}function Fps(e){let t=[];if(t.push(...GFt(e)),t.push(...mbl(e)),t.length>0)throw new xFt.ValidationError("invalid v0.1 bundle",t)}function fbl(e){try{return Fps(e),!0}catch{return!1}}function Ibl(e){let t=[];if(t.push(...GFt(e)),t.push(...Zps(e)),t.length>0)throw new xFt.ValidationError("invalid v0.2 bundle",t)}function hbl(e){let t=[];if(t.push(...GFt(e)),t.push(...Zps(e)),t.push(...Cbl(e)),t.length>0)throw new xFt.ValidationError("invalid bundle",t)}function GFt(e){let t=[];if((e.mediaType===void 0||!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\+json;version=\d\.\d/)&&!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\.v\d\.\d\+json/))&&t.push("mediaType"),e.content===void 0)t.push("content");else switch(e.content.$case){case"messageSignature":e.content.messageSignature.messageDigest===void 0?t.push("content.messageSignature.messageDigest"):e.content.messageSignature.messageDigest.digest.length===0&&t.push("content.messageSignature.messageDigest.digest"),e.content.messageSignature.signature.length===0&&t.push("content.messageSignature.signature");break;case"dsseEnvelope":e.content.dsseEnvelope.payload.length===0&&t.push("content.dsseEnvelope.payload"),e.content.dsseEnvelope.signatures.length!==1?t.push("content.dsseEnvelope.signatures"):e.content.dsseEnvelope.signatures[0].sig.length===0&&t.push("content.dsseEnvelope.signatures[0].sig");break}if(e.verificationMaterial===void 0)t.push("verificationMaterial");else{if(e.verificationMaterial.content===void 0)t.push("verificationMaterial.content");else switch(e.verificationMaterial.content.$case){case"x509CertificateChain":e.verificationMaterial.content.x509CertificateChain.certificates.length===0&&t.push("verificationMaterial.content.x509CertificateChain.certificates"),e.verificationMaterial.content.x509CertificateChain.certificates.forEach((r,n)=>{r.rawBytes.length===0&&t.push(`verificationMaterial.content.x509CertificateChain.certificates[${n}].rawBytes`)});break;case"certificate":e.verificationMaterial.content.certificate.rawBytes.length===0&&t.push("verificationMaterial.content.certificate.rawBytes");break}e.verificationMaterial.tlogEntries===void 0?t.push("verificationMaterial.tlogEntries"):e.verificationMaterial.tlogEntries.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.logId===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].logId`),r.kindVersion===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].kindVersion`)})}return t}function mbl(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionPromise===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionPromise`)}),t}function Zps(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionProof===void 0?t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof`):r.inclusionProof.checkpoint===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof.checkpoint`)}),t}function Cbl(e){let t=[];return e.verificationMaterial?.content?.$case==="x509CertificateChain"&&t.push("verificationMaterial.content.$case"),t}});var Vps=H(Zj=>{"use strict";Object.defineProperty(Zj,"__esModule",{value:!0});Zj.envelopeToJSON=Zj.envelopeFromJSON=Zj.bundleToJSON=Zj.bundleFromJSON=void 0;var FFt=Y7e(),Lps=RFt(),cKr=aKr(),_bl=e=>{let t=FFt.Bundle.fromJSON(e);switch(t.mediaType){case Lps.BUNDLE_V01_MEDIA_TYPE:(0,cKr.assertBundleV01)(t);break;case Lps.BUNDLE_V02_MEDIA_TYPE:(0,cKr.assertBundleV02)(t);break;default:(0,cKr.assertBundleLatest)(t);break}return t};Zj.bundleFromJSON=_bl;var ybl=e=>FFt.Bundle.toJSON(e);Zj.bundleToJSON=ybl;var bbl=e=>FFt.Envelope.fromJSON(e);Zj.envelopeFromJSON=bbl;var Ebl=e=>FFt.Envelope.toJSON(e);Zj.envelopeToJSON=Ebl});var X7e=H(Ih=>{"use strict";Object.defineProperty(Ih,"__esModule",{value:!0});Ih.isBundleV01=Ih.assertBundleV02=Ih.assertBundleV01=Ih.assertBundleLatest=Ih.assertBundle=Ih.envelopeToJSON=Ih.envelopeFromJSON=Ih.bundleToJSON=Ih.bundleFromJSON=Ih.ValidationError=Ih.isBundleWithPublicKey=Ih.isBundleWithMessageSignature=Ih.isBundleWithDsseEnvelope=Ih.isBundleWithCertificateChain=Ih.BUNDLE_V03_MEDIA_TYPE=Ih.BUNDLE_V03_LEGACY_MEDIA_TYPE=Ih.BUNDLE_V02_MEDIA_TYPE=Ih.BUNDLE_V01_MEDIA_TYPE=Ih.toMessageSignatureBundle=Ih.toDSSEBundle=void 0;var Wps=Gps();Object.defineProperty(Ih,"toDSSEBundle",{enumerable:!0,get:function(){return Wps.toDSSEBundle}});Object.defineProperty(Ih,"toMessageSignatureBundle",{enumerable:!0,get:function(){return Wps.toMessageSignatureBundle}});var Kue=RFt();Object.defineProperty(Ih,"BUNDLE_V01_MEDIA_TYPE",{enumerable:!0,get:function(){return Kue.BUNDLE_V01_MEDIA_TYPE}});Object.defineProperty(Ih,"BUNDLE_V02_MEDIA_TYPE",{enumerable:!0,get:function(){return Kue.BUNDLE_V02_MEDIA_TYPE}});Object.defineProperty(Ih,"BUNDLE_V03_LEGACY_MEDIA_TYPE",{enumerable:!0,get:function(){return Kue.BUNDLE_V03_LEGACY_MEDIA_TYPE}});Object.defineProperty(Ih,"BUNDLE_V03_MEDIA_TYPE",{enumerable:!0,get:function(){return Kue.BUNDLE_V03_MEDIA_TYPE}});Object.defineProperty(Ih,"isBundleWithCertificateChain",{enumerable:!0,get:function(){return Kue.isBundleWithCertificateChain}});Object.defineProperty(Ih,"isBundleWithDsseEnvelope",{enumerable:!0,get:function(){return Kue.isBundleWithDsseEnvelope}});Object.defineProperty(Ih,"isBundleWithMessageSignature",{enumerable:!0,get:function(){return Kue.isBundleWithMessageSignature}});Object.defineProperty(Ih,"isBundleWithPublicKey",{enumerable:!0,get:function(){return Kue.isBundleWithPublicKey}});var Sbl=oKr();Object.defineProperty(Ih,"ValidationError",{enumerable:!0,get:function(){return Sbl.ValidationError}});var ZFt=Vps();Object.defineProperty(Ih,"bundleFromJSON",{enumerable:!0,get:function(){return ZFt.bundleFromJSON}});Object.defineProperty(Ih,"bundleToJSON",{enumerable:!0,get:function(){return ZFt.bundleToJSON}});Object.defineProperty(Ih,"envelopeFromJSON",{enumerable:!0,get:function(){return ZFt.envelopeFromJSON}});Object.defineProperty(Ih,"envelopeToJSON",{enumerable:!0,get:function(){return ZFt.envelopeToJSON}});var Q7e=aKr();Object.defineProperty(Ih,"assertBundle",{enumerable:!0,get:function(){return Q7e.assertBundle}});Object.defineProperty(Ih,"assertBundleLatest",{enumerable:!0,get:function(){return Q7e.assertBundleLatest}});Object.defineProperty(Ih,"assertBundleV01",{enumerable:!0,get:function(){return Q7e.assertBundleV01}});Object.defineProperty(Ih,"assertBundleV02",{enumerable:!0,get:function(){return Q7e.assertBundleV02}});Object.defineProperty(Ih,"isBundleV01",{enumerable:!0,get:function(){return Q7e.isBundleV01}})});var J7e=H(VFt=>{"use strict";Object.defineProperty(VFt,"__esModule",{value:!0});VFt.ByteStream=void 0;var lKr=class extends Error{},LFt=class e{constructor(t){this.start=0,t?(this.buf=t,this.view=Buffer.from(t)):(this.buf=new ArrayBuffer(0),this.view=Buffer.from(this.buf))}get buffer(){return this.view.subarray(0,this.start)}get length(){return this.view.byteLength}get position(){return this.start}seek(t){this.start=t}slice(t,r){let n=t+r;if(n>this.length)throw new lKr("request past end of buffer");return this.view.subarray(t,n)}appendChar(t){this.ensureCapacity(1),this.view[this.start]=t,this.start+=1}appendUint16(t){this.ensureCapacity(2);let r=new Uint16Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[1],this.view[this.start+1]=n[0],this.start+=2}appendUint24(t){this.ensureCapacity(3);let r=new Uint32Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[2],this.view[this.start+1]=n[1],this.view[this.start+2]=n[0],this.start+=3}appendView(t){this.ensureCapacity(t.length),this.view.set(t,this.start),this.start+=t.length}getBlock(t){if(t<=0)return Buffer.alloc(0);if(this.start+t>this.view.length)throw new Error("request past end of buffer");let r=this.view.subarray(this.start,this.start+t);return this.start+=t,r}getUint8(){return this.getBlock(1)[0]}getUint16(){let t=this.getBlock(2);return t[0]<<8|t[1]}ensureCapacity(t){if(this.start+t>this.view.byteLength){let r=e.BLOCK_SIZE+(t>e.BLOCK_SIZE?t:0);this.realloc(this.view.byteLength+r)}}realloc(t){let r=new ArrayBuffer(t),n=Buffer.from(r);n.set(this.view),this.buf=r,this.view=n}};VFt.ByteStream=LFt;LFt.BLOCK_SIZE=1024});var WFt=H(tFe=>{"use strict";Object.defineProperty(tFe,"__esModule",{value:!0});tFe.ASN1TypeError=tFe.ASN1ParseError=void 0;var uKr=class extends Error{};tFe.ASN1ParseError=uKr;var gKr=class extends Error{};tFe.ASN1TypeError=gKr});var Pps=H(OFt=>{"use strict";Object.defineProperty(OFt,"__esModule",{value:!0});OFt.decodeLength=vbl;OFt.encodeLength=Bbl;var Ops=WFt();function vbl(e){let t=e.getUint8();if(!(t&128))return t;let r=t&127;if(r>6)throw new Ops.ASN1ParseError("length exceeds 6 byte limit");let n=0;for(let a=0;a0n;)r.unshift(Number(t&255n)),t=t>>8n;return Buffer.from([128|r.length,...r])}});var Hps=H(jue=>{"use strict";Object.defineProperty(jue,"__esModule",{value:!0});jue.parseInteger=Rbl;jue.parseStringASCII=Mps;jue.parseTime=Nbl;jue.parseOID=Dbl;jue.parseBoolean=kbl;jue.parseBitString=xbl;var wbl=/^(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/,Tbl=/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/;function Rbl(e){let t=0,r=e.length,n=e[t],a=n>127,o=a?255:0;for(;n==o&&++t=50?1900:2e3,n[1]=a.toString()}return new Date(`${n[1]}-${n[2]}-${n[3]}T${n[4]}:${n[5]}:${n[6]}Z`)}function Dbl(e){let t=0,r=e.length,n=e[t++],a=Math.floor(n/40),o=n%40,l=`${a}.${o}`,A=0;for(;t=A;--f)a.push(l>>f&1)}return a}});var Qps=H(PFt=>{"use strict";Object.defineProperty(PFt,"__esModule",{value:!0});PFt.ASN1Tag=void 0;var Yps=WFt(),V0e={BOOLEAN:1,INTEGER:2,BIT_STRING:3,OCTET_STRING:4,OBJECT_IDENTIFIER:6,SEQUENCE:16,SET:17,PRINTABLE_STRING:19,UTC_TIME:23,GENERALIZED_TIME:24},AKr={UNIVERSAL:0,APPLICATION:1,CONTEXT_SPECIFIC:2,PRIVATE:3},dKr=class{constructor(t){if(this.number=t&31,this.constructed=(t&32)===32,this.class=t>>6,this.number===31)throw new Yps.ASN1ParseError("long form tags not supported");if(this.class===AKr.UNIVERSAL&&this.number===0)throw new Yps.ASN1ParseError("unsupported tag 0x00")}isUniversal(){return this.class===AKr.UNIVERSAL}isContextSpecific(t){let r=this.class===AKr.CONTEXT_SPECIFIC;return t!==void 0?r&&this.number===t:r}isBoolean(){return this.isUniversal()&&this.number===V0e.BOOLEAN}isInteger(){return this.isUniversal()&&this.number===V0e.INTEGER}isBitString(){return this.isUniversal()&&this.number===V0e.BIT_STRING}isOctetString(){return this.isUniversal()&&this.number===V0e.OCTET_STRING}isOID(){return this.isUniversal()&&this.number===V0e.OBJECT_IDENTIFIER}isUTCTime(){return this.isUniversal()&&this.number===V0e.UTC_TIME}isGeneralizedTime(){return this.isUniversal()&&this.number===V0e.GENERALIZED_TIME}toDER(){return this.number|(this.constructed?32:0)|this.class<<6}};PFt.ASN1Tag=dKr});var Kps=H(HFt=>{"use strict";Object.defineProperty(HFt,"__esModule",{value:!0});HFt.ASN1Obj=void 0;var pKr=J7e(),W0e=WFt(),Jps=Pps(),rFe=Hps(),Gbl=Qps(),MFt=class{constructor(t,r,n){this.tag=t,this.value=r,this.subs=n}static parseBuffer(t){return Ups(new pKr.ByteStream(t))}toDER(){let t=new pKr.ByteStream;if(this.subs.length>0)for(let a of this.subs)t.appendView(a.toDER());else t.appendView(this.value);let r=t.buffer,n=new pKr.ByteStream;return n.appendChar(this.tag.toDER()),n.appendView((0,Jps.encodeLength)(r.length)),n.appendView(r),n.buffer}toBoolean(){if(!this.tag.isBoolean())throw new W0e.ASN1TypeError("not a boolean");return(0,rFe.parseBoolean)(this.value)}toInteger(){if(!this.tag.isInteger())throw new W0e.ASN1TypeError("not an integer");return(0,rFe.parseInteger)(this.value)}toOID(){if(!this.tag.isOID())throw new W0e.ASN1TypeError("not an OID");return(0,rFe.parseOID)(this.value)}toDate(){switch(!0){case this.tag.isUTCTime():return(0,rFe.parseTime)(this.value,!0);case this.tag.isGeneralizedTime():return(0,rFe.parseTime)(this.value,!1);default:throw new W0e.ASN1TypeError("not a date")}}toBitString(){if(!this.tag.isBitString())throw new W0e.ASN1TypeError("not a bit string");return(0,rFe.parseBitString)(this.value)}};HFt.ASN1Obj=MFt;function Ups(e){let t=new Gbl.ASN1Tag(e.getUint8()),r=(0,Jps.decodeLength)(e),n=e.slice(e.position,r),a=e.position,o=[];if(t.constructed)o=Xps(e,r);else if(t.isOctetString())try{o=Xps(e,r)}catch{}return o.length===0&&e.seek(a+r),new MFt(t,n,o)}function Xps(e,t){let r=e.position+t;if(r>e.length)throw new W0e.ASN1ParseError("invalid length");let n=[];for(;e.position{"use strict";Object.defineProperty(YFt,"__esModule",{value:!0});YFt.ASN1Obj=void 0;var Fbl=Kps();Object.defineProperty(YFt,"ASN1Obj",{enumerable:!0,get:function(){return Fbl.ASN1Obj}})});var nFe=H(zue=>{"use strict";var Zbl=zue&&zue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zue,"__esModule",{value:!0});zue.createPublicKey=Lbl;zue.digest=Vbl;zue.verify=Wbl;zue.bufferEqual=Obl;var U7e=Zbl(Et("crypto"));function Lbl(e,t="spki"){return typeof e=="string"?U7e.default.createPublicKey(e):U7e.default.createPublicKey({key:e,format:"der",type:t})}function Vbl(e,...t){let r=U7e.default.createHash(e);for(let n of t)r.update(n);return r.digest()}function Wbl(e,t,r,n){try{return U7e.default.verify(n,e,t,r)}catch{return!1}}function Obl(e,t){try{return U7e.default.timingSafeEqual(e,t)}catch{return!1}}});var jps=H(fKr=>{"use strict";Object.defineProperty(fKr,"__esModule",{value:!0});fKr.preAuthEncoding=Mbl;var Pbl="DSSEv1";function Mbl(e,t){let r=[Pbl,e.length,e,t.length,""].join(" ");return Buffer.concat([Buffer.from(r,"ascii"),t])}});var $ps=H(XFt=>{"use strict";Object.defineProperty(XFt,"__esModule",{value:!0});XFt.base64Encode=Hbl;XFt.base64Decode=Ybl;var zps="base64",qps="utf-8";function Hbl(e){return Buffer.from(e,qps).toString(zps)}function Ybl(e){return Buffer.from(e,zps).toString(qps)}});var efs=H(hKr=>{"use strict";Object.defineProperty(hKr,"__esModule",{value:!0});hKr.canonicalize=IKr;function IKr(e){let t="";if(e===null||typeof e!="object"||e.toJSON!=null)t+=JSON.stringify(e);else if(Array.isArray(e)){t+="[";let r=!0;e.forEach(n=>{r||(t+=","),r=!1,t+=IKr(n)}),t+="]"}else{t+="{";let r=!0;Object.keys(e).sort().forEach(n=>{r||(t+=","),r=!1,t+=JSON.stringify(n),t+=":",t+=IKr(e[n])}),t+="}"}return t}});var mKr=H(JFt=>{"use strict";Object.defineProperty(JFt,"__esModule",{value:!0});JFt.toDER=Jbl;JFt.fromDER=Ubl;var Qbl=/-----BEGIN (.*)-----/,Xbl=/-----END (.*)-----/;function Jbl(e){let t="";return e.split(` -`).forEach(r=>{r.match(Qbl)||r.match(Xbl)||(t+=r)}),Buffer.from(t,"base64")}function Ubl(e,t="CERTIFICATE"){let n=e.toString("base64").match(/.{1,64}/g)||"";return[`-----BEGIN ${t}-----`,...n,`-----END ${t}-----`].join(` + Found: ${e.length}`);throw A.code="EBADSIZE",A.found=e.length,A.expected=r.size,A.sri=t,A}else{let A=new Error(`Integrity checksum failed when using ${n}: Wanted ${t}, but got ${o}. (${e.length} bytes)`);throw A.code="EINTEGRITY",A.found=o,A.expected=t,A.algorithm=n,A.sri=t,A}}xj.exports.checkStream=Xbl;function Xbl(e,t,r){if(r=r||Object.create(null),r.integrity=t,t=$P(t,r),!t||!Object.keys(t).length)return Promise.reject(Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"}));let n=oKr(r);return new Promise((a,o)=>{e.pipe(n),e.on("error",o),n.on("error",o);let l;n.on("verified",A=>{l=A}),n.on("end",()=>a(l)),n.resume()})}xj.exports.integrityStream=oKr;function oKr(e=Object.create(null)){return new iKr(e)}xj.exports.create=Jbl;function Jbl(e){let t=e?.algorithms||[...sKr],r=M7e(e?.options),n=t.map(P7e.createHash);return{update:function(a,o){return n.forEach(l=>l.update(a,o)),this},digest:function(){return t.reduce((o,l)=>{let A=n.shift().digest("base64"),f=new are(`${l}-${A}${r}`,e);if(f.algorithm&&f.digest){let I=f.algorithm;o[I]||(o[I]=[]),o[I].push(f)}return o},new G0e)}}}var Ubl=P7e.getHashes(),pps=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(e=>Ubl.includes(e));function Kbl(e,t){return pps.indexOf(e.toLowerCase())>=pps.indexOf(t.toLowerCase())?e:t}});var aKr=H(Jue=>{"use strict";Object.defineProperty(Jue,"__esModule",{value:!0});Jue.Signature=Jue.Envelope=void 0;Jue.Envelope={fromJSON(e){return{payload:vFt(e.payload)?Buffer.from(fps(e.payload)):Buffer.alloc(0),payloadType:vFt(e.payloadType)?globalThis.String(e.payloadType):"",signatures:globalThis.Array.isArray(e?.signatures)?e.signatures.map(t=>Jue.Signature.fromJSON(t)):[]}},toJSON(e){let t={};return e.payload.length!==0&&(t.payload=Ips(e.payload)),e.payloadType!==""&&(t.payloadType=e.payloadType),e.signatures?.length&&(t.signatures=e.signatures.map(r=>Jue.Signature.toJSON(r))),t}};Jue.Signature={fromJSON(e){return{sig:vFt(e.sig)?Buffer.from(fps(e.sig)):Buffer.alloc(0),keyid:vFt(e.keyid)?globalThis.String(e.keyid):""}},toJSON(e){let t={};return e.sig.length!==0&&(t.sig=Ips(e.sig)),e.keyid!==""&&(t.keyid=e.keyid),t}};function fps(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function Ips(e){return globalThis.Buffer.from(e).toString("base64")}function vFt(e){return e!=null}});var mps=H(BFt=>{"use strict";Object.defineProperty(BFt,"__esModule",{value:!0});BFt.Timestamp=void 0;BFt.Timestamp={fromJSON(e){return{seconds:hps(e.seconds)?globalThis.String(e.seconds):"0",nanos:hps(e.nanos)?globalThis.Number(e.nanos):0}},toJSON(e){let t={};return e.seconds!=="0"&&(t.seconds=e.seconds),e.nanos!==0&&(t.nanos=Math.round(e.nanos)),t}};function hps(e){return e!=null}});var $Ge=H(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});Of.TimeRange=Of.X509CertificateChain=Of.SubjectAlternativeName=Of.X509Certificate=Of.DistinguishedName=Of.ObjectIdentifierValuePair=Of.ObjectIdentifier=Of.PublicKeyIdentifier=Of.PublicKey=Of.RFC3161SignedTimestamp=Of.LogId=Of.MessageSignature=Of.HashOutput=Of.SubjectAlternativeNameType=Of.PublicKeyDetails=Of.HashAlgorithm=void 0;Of.hashAlgorithmFromJSON=_ps;Of.hashAlgorithmToJSON=yps;Of.publicKeyDetailsFromJSON=bps;Of.publicKeyDetailsToJSON=Eps;Of.subjectAlternativeNameTypeFromJSON=Sps;Of.subjectAlternativeNameTypeToJSON=vps;var jbl=mps(),nW;(function(e){e[e.HASH_ALGORITHM_UNSPECIFIED=0]="HASH_ALGORITHM_UNSPECIFIED",e[e.SHA2_256=1]="SHA2_256",e[e.SHA2_384=2]="SHA2_384",e[e.SHA2_512=3]="SHA2_512",e[e.SHA3_256=4]="SHA3_256",e[e.SHA3_384=5]="SHA3_384"})(nW||(Of.HashAlgorithm=nW={}));function _ps(e){switch(e){case 0:case"HASH_ALGORITHM_UNSPECIFIED":return nW.HASH_ALGORITHM_UNSPECIFIED;case 1:case"SHA2_256":return nW.SHA2_256;case 2:case"SHA2_384":return nW.SHA2_384;case 3:case"SHA2_512":return nW.SHA2_512;case 4:case"SHA3_256":return nW.SHA3_256;case 5:case"SHA3_384":return nW.SHA3_384;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}function yps(e){switch(e){case nW.HASH_ALGORITHM_UNSPECIFIED:return"HASH_ALGORITHM_UNSPECIFIED";case nW.SHA2_256:return"SHA2_256";case nW.SHA2_384:return"SHA2_384";case nW.SHA2_512:return"SHA2_512";case nW.SHA3_256:return"SHA3_256";case nW.SHA3_384:return"SHA3_384";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}var Wf;(function(e){e[e.PUBLIC_KEY_DETAILS_UNSPECIFIED=0]="PUBLIC_KEY_DETAILS_UNSPECIFIED",e[e.PKCS1_RSA_PKCS1V5=1]="PKCS1_RSA_PKCS1V5",e[e.PKCS1_RSA_PSS=2]="PKCS1_RSA_PSS",e[e.PKIX_RSA_PKCS1V5=3]="PKIX_RSA_PKCS1V5",e[e.PKIX_RSA_PSS=4]="PKIX_RSA_PSS",e[e.PKIX_RSA_PKCS1V15_2048_SHA256=9]="PKIX_RSA_PKCS1V15_2048_SHA256",e[e.PKIX_RSA_PKCS1V15_3072_SHA256=10]="PKIX_RSA_PKCS1V15_3072_SHA256",e[e.PKIX_RSA_PKCS1V15_4096_SHA256=11]="PKIX_RSA_PKCS1V15_4096_SHA256",e[e.PKIX_RSA_PSS_2048_SHA256=16]="PKIX_RSA_PSS_2048_SHA256",e[e.PKIX_RSA_PSS_3072_SHA256=17]="PKIX_RSA_PSS_3072_SHA256",e[e.PKIX_RSA_PSS_4096_SHA256=18]="PKIX_RSA_PSS_4096_SHA256",e[e.PKIX_ECDSA_P256_HMAC_SHA_256=6]="PKIX_ECDSA_P256_HMAC_SHA_256",e[e.PKIX_ECDSA_P256_SHA_256=5]="PKIX_ECDSA_P256_SHA_256",e[e.PKIX_ECDSA_P384_SHA_384=12]="PKIX_ECDSA_P384_SHA_384",e[e.PKIX_ECDSA_P521_SHA_512=13]="PKIX_ECDSA_P521_SHA_512",e[e.PKIX_ED25519=7]="PKIX_ED25519",e[e.PKIX_ED25519_PH=8]="PKIX_ED25519_PH",e[e.PKIX_ECDSA_P384_SHA_256=19]="PKIX_ECDSA_P384_SHA_256",e[e.PKIX_ECDSA_P521_SHA_256=20]="PKIX_ECDSA_P521_SHA_256",e[e.LMS_SHA256=14]="LMS_SHA256",e[e.LMOTS_SHA256=15]="LMOTS_SHA256",e[e.ML_DSA_65=21]="ML_DSA_65",e[e.ML_DSA_87=22]="ML_DSA_87"})(Wf||(Of.PublicKeyDetails=Wf={}));function bps(e){switch(e){case 0:case"PUBLIC_KEY_DETAILS_UNSPECIFIED":return Wf.PUBLIC_KEY_DETAILS_UNSPECIFIED;case 1:case"PKCS1_RSA_PKCS1V5":return Wf.PKCS1_RSA_PKCS1V5;case 2:case"PKCS1_RSA_PSS":return Wf.PKCS1_RSA_PSS;case 3:case"PKIX_RSA_PKCS1V5":return Wf.PKIX_RSA_PKCS1V5;case 4:case"PKIX_RSA_PSS":return Wf.PKIX_RSA_PSS;case 9:case"PKIX_RSA_PKCS1V15_2048_SHA256":return Wf.PKIX_RSA_PKCS1V15_2048_SHA256;case 10:case"PKIX_RSA_PKCS1V15_3072_SHA256":return Wf.PKIX_RSA_PKCS1V15_3072_SHA256;case 11:case"PKIX_RSA_PKCS1V15_4096_SHA256":return Wf.PKIX_RSA_PKCS1V15_4096_SHA256;case 16:case"PKIX_RSA_PSS_2048_SHA256":return Wf.PKIX_RSA_PSS_2048_SHA256;case 17:case"PKIX_RSA_PSS_3072_SHA256":return Wf.PKIX_RSA_PSS_3072_SHA256;case 18:case"PKIX_RSA_PSS_4096_SHA256":return Wf.PKIX_RSA_PSS_4096_SHA256;case 6:case"PKIX_ECDSA_P256_HMAC_SHA_256":return Wf.PKIX_ECDSA_P256_HMAC_SHA_256;case 5:case"PKIX_ECDSA_P256_SHA_256":return Wf.PKIX_ECDSA_P256_SHA_256;case 12:case"PKIX_ECDSA_P384_SHA_384":return Wf.PKIX_ECDSA_P384_SHA_384;case 13:case"PKIX_ECDSA_P521_SHA_512":return Wf.PKIX_ECDSA_P521_SHA_512;case 7:case"PKIX_ED25519":return Wf.PKIX_ED25519;case 8:case"PKIX_ED25519_PH":return Wf.PKIX_ED25519_PH;case 19:case"PKIX_ECDSA_P384_SHA_256":return Wf.PKIX_ECDSA_P384_SHA_256;case 20:case"PKIX_ECDSA_P521_SHA_256":return Wf.PKIX_ECDSA_P521_SHA_256;case 14:case"LMS_SHA256":return Wf.LMS_SHA256;case 15:case"LMOTS_SHA256":return Wf.LMOTS_SHA256;case 21:case"ML_DSA_65":return Wf.ML_DSA_65;case 22:case"ML_DSA_87":return Wf.ML_DSA_87;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}function Eps(e){switch(e){case Wf.PUBLIC_KEY_DETAILS_UNSPECIFIED:return"PUBLIC_KEY_DETAILS_UNSPECIFIED";case Wf.PKCS1_RSA_PKCS1V5:return"PKCS1_RSA_PKCS1V5";case Wf.PKCS1_RSA_PSS:return"PKCS1_RSA_PSS";case Wf.PKIX_RSA_PKCS1V5:return"PKIX_RSA_PKCS1V5";case Wf.PKIX_RSA_PSS:return"PKIX_RSA_PSS";case Wf.PKIX_RSA_PKCS1V15_2048_SHA256:return"PKIX_RSA_PKCS1V15_2048_SHA256";case Wf.PKIX_RSA_PKCS1V15_3072_SHA256:return"PKIX_RSA_PKCS1V15_3072_SHA256";case Wf.PKIX_RSA_PKCS1V15_4096_SHA256:return"PKIX_RSA_PKCS1V15_4096_SHA256";case Wf.PKIX_RSA_PSS_2048_SHA256:return"PKIX_RSA_PSS_2048_SHA256";case Wf.PKIX_RSA_PSS_3072_SHA256:return"PKIX_RSA_PSS_3072_SHA256";case Wf.PKIX_RSA_PSS_4096_SHA256:return"PKIX_RSA_PSS_4096_SHA256";case Wf.PKIX_ECDSA_P256_HMAC_SHA_256:return"PKIX_ECDSA_P256_HMAC_SHA_256";case Wf.PKIX_ECDSA_P256_SHA_256:return"PKIX_ECDSA_P256_SHA_256";case Wf.PKIX_ECDSA_P384_SHA_384:return"PKIX_ECDSA_P384_SHA_384";case Wf.PKIX_ECDSA_P521_SHA_512:return"PKIX_ECDSA_P521_SHA_512";case Wf.PKIX_ED25519:return"PKIX_ED25519";case Wf.PKIX_ED25519_PH:return"PKIX_ED25519_PH";case Wf.PKIX_ECDSA_P384_SHA_256:return"PKIX_ECDSA_P384_SHA_256";case Wf.PKIX_ECDSA_P521_SHA_256:return"PKIX_ECDSA_P521_SHA_256";case Wf.LMS_SHA256:return"LMS_SHA256";case Wf.LMOTS_SHA256:return"LMOTS_SHA256";case Wf.ML_DSA_65:return"ML_DSA_65";case Wf.ML_DSA_87:return"ML_DSA_87";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}var Gj;(function(e){e[e.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED=0]="SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED",e[e.EMAIL=1]="EMAIL",e[e.URI=2]="URI",e[e.OTHER_NAME=3]="OTHER_NAME"})(Gj||(Of.SubjectAlternativeNameType=Gj={}));function Sps(e){switch(e){case 0:case"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED":return Gj.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED;case 1:case"EMAIL":return Gj.EMAIL;case 2:case"URI":return Gj.URI;case 3:case"OTHER_NAME":return Gj.OTHER_NAME;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}function vps(e){switch(e){case Gj.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED:return"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED";case Gj.EMAIL:return"EMAIL";case Gj.URI:return"URI";case Gj.OTHER_NAME:return"OTHER_NAME";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}Of.HashOutput={fromJSON(e){return{algorithm:NT(e.algorithm)?_ps(e.algorithm):0,digest:NT(e.digest)?Buffer.from(F0e(e.digest)):Buffer.alloc(0)}},toJSON(e){let t={};return e.algorithm!==0&&(t.algorithm=yps(e.algorithm)),e.digest.length!==0&&(t.digest=Z0e(e.digest)),t}};Of.MessageSignature={fromJSON(e){return{messageDigest:NT(e.messageDigest)?Of.HashOutput.fromJSON(e.messageDigest):void 0,signature:NT(e.signature)?Buffer.from(F0e(e.signature)):Buffer.alloc(0)}},toJSON(e){let t={};return e.messageDigest!==void 0&&(t.messageDigest=Of.HashOutput.toJSON(e.messageDigest)),e.signature.length!==0&&(t.signature=Z0e(e.signature)),t}};Of.LogId={fromJSON(e){return{keyId:NT(e.keyId)?Buffer.from(F0e(e.keyId)):Buffer.alloc(0)}},toJSON(e){let t={};return e.keyId.length!==0&&(t.keyId=Z0e(e.keyId)),t}};Of.RFC3161SignedTimestamp={fromJSON(e){return{signedTimestamp:NT(e.signedTimestamp)?Buffer.from(F0e(e.signedTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedTimestamp.length!==0&&(t.signedTimestamp=Z0e(e.signedTimestamp)),t}};Of.PublicKey={fromJSON(e){return{rawBytes:NT(e.rawBytes)?Buffer.from(F0e(e.rawBytes)):void 0,keyDetails:NT(e.keyDetails)?bps(e.keyDetails):0,validFor:NT(e.validFor)?Of.TimeRange.fromJSON(e.validFor):void 0}},toJSON(e){let t={};return e.rawBytes!==void 0&&(t.rawBytes=Z0e(e.rawBytes)),e.keyDetails!==0&&(t.keyDetails=Eps(e.keyDetails)),e.validFor!==void 0&&(t.validFor=Of.TimeRange.toJSON(e.validFor)),t}};Of.PublicKeyIdentifier={fromJSON(e){return{hint:NT(e.hint)?globalThis.String(e.hint):""}},toJSON(e){let t={};return e.hint!==""&&(t.hint=e.hint),t}};Of.ObjectIdentifier={fromJSON(e){return{id:globalThis.Array.isArray(e?.id)?e.id.map(t=>globalThis.Number(t)):[]}},toJSON(e){let t={};return e.id?.length&&(t.id=e.id.map(r=>Math.round(r))),t}};Of.ObjectIdentifierValuePair={fromJSON(e){return{oid:NT(e.oid)?Of.ObjectIdentifier.fromJSON(e.oid):void 0,value:NT(e.value)?Buffer.from(F0e(e.value)):Buffer.alloc(0)}},toJSON(e){let t={};return e.oid!==void 0&&(t.oid=Of.ObjectIdentifier.toJSON(e.oid)),e.value.length!==0&&(t.value=Z0e(e.value)),t}};Of.DistinguishedName={fromJSON(e){return{organization:NT(e.organization)?globalThis.String(e.organization):"",commonName:NT(e.commonName)?globalThis.String(e.commonName):""}},toJSON(e){let t={};return e.organization!==""&&(t.organization=e.organization),e.commonName!==""&&(t.commonName=e.commonName),t}};Of.X509Certificate={fromJSON(e){return{rawBytes:NT(e.rawBytes)?Buffer.from(F0e(e.rawBytes)):Buffer.alloc(0)}},toJSON(e){let t={};return e.rawBytes.length!==0&&(t.rawBytes=Z0e(e.rawBytes)),t}};Of.SubjectAlternativeName={fromJSON(e){return{type:NT(e.type)?Sps(e.type):0,identity:NT(e.regexp)?{$case:"regexp",regexp:globalThis.String(e.regexp)}:NT(e.value)?{$case:"value",value:globalThis.String(e.value)}:void 0}},toJSON(e){let t={};return e.type!==0&&(t.type=vps(e.type)),e.identity?.$case==="regexp"?t.regexp=e.identity.regexp:e.identity?.$case==="value"&&(t.value=e.identity.value),t}};Of.X509CertificateChain={fromJSON(e){return{certificates:globalThis.Array.isArray(e?.certificates)?e.certificates.map(t=>Of.X509Certificate.fromJSON(t)):[]}},toJSON(e){let t={};return e.certificates?.length&&(t.certificates=e.certificates.map(r=>Of.X509Certificate.toJSON(r))),t}};Of.TimeRange={fromJSON(e){return{start:NT(e.start)?Cps(e.start):void 0,end:NT(e.end)?Cps(e.end):void 0}},toJSON(e){let t={};return e.start!==void 0&&(t.start=e.start.toISOString()),e.end!==void 0&&(t.end=e.end.toISOString()),t}};function F0e(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function Z0e(e){return globalThis.Buffer.from(e).toString("base64")}function zbl(e){let t=(globalThis.Number(e.seconds)||0)*1e3;return t+=(e.nanos||0)/1e6,new globalThis.Date(t)}function Cps(e){return e instanceof globalThis.Date?e:typeof e=="string"?new globalThis.Date(e):zbl(jbl.Timestamp.fromJSON(e))}function NT(e){return e!=null}});var cKr=H(DT=>{"use strict";Object.defineProperty(DT,"__esModule",{value:!0});DT.TransparencyLogEntry=DT.InclusionPromise=DT.InclusionProof=DT.Checkpoint=DT.KindVersion=void 0;var Bps=$Ge();DT.KindVersion={fromJSON(e){return{kind:_L(e.kind)?globalThis.String(e.kind):"",version:_L(e.version)?globalThis.String(e.version):""}},toJSON(e){let t={};return e.kind!==""&&(t.kind=e.kind),e.version!==""&&(t.version=e.version),t}};DT.Checkpoint={fromJSON(e){return{envelope:_L(e.envelope)?globalThis.String(e.envelope):""}},toJSON(e){let t={};return e.envelope!==""&&(t.envelope=e.envelope),t}};DT.InclusionProof={fromJSON(e){return{logIndex:_L(e.logIndex)?globalThis.String(e.logIndex):"0",rootHash:_L(e.rootHash)?Buffer.from(wFt(e.rootHash)):Buffer.alloc(0),treeSize:_L(e.treeSize)?globalThis.String(e.treeSize):"0",hashes:globalThis.Array.isArray(e?.hashes)?e.hashes.map(t=>Buffer.from(wFt(t))):[],checkpoint:_L(e.checkpoint)?DT.Checkpoint.fromJSON(e.checkpoint):void 0}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.rootHash.length!==0&&(t.rootHash=TFt(e.rootHash)),e.treeSize!=="0"&&(t.treeSize=e.treeSize),e.hashes?.length&&(t.hashes=e.hashes.map(r=>TFt(r))),e.checkpoint!==void 0&&(t.checkpoint=DT.Checkpoint.toJSON(e.checkpoint)),t}};DT.InclusionPromise={fromJSON(e){return{signedEntryTimestamp:_L(e.signedEntryTimestamp)?Buffer.from(wFt(e.signedEntryTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedEntryTimestamp.length!==0&&(t.signedEntryTimestamp=TFt(e.signedEntryTimestamp)),t}};DT.TransparencyLogEntry={fromJSON(e){return{logIndex:_L(e.logIndex)?globalThis.String(e.logIndex):"0",logId:_L(e.logId)?Bps.LogId.fromJSON(e.logId):void 0,kindVersion:_L(e.kindVersion)?DT.KindVersion.fromJSON(e.kindVersion):void 0,integratedTime:_L(e.integratedTime)?globalThis.String(e.integratedTime):"0",inclusionPromise:_L(e.inclusionPromise)?DT.InclusionPromise.fromJSON(e.inclusionPromise):void 0,inclusionProof:_L(e.inclusionProof)?DT.InclusionProof.fromJSON(e.inclusionProof):void 0,canonicalizedBody:_L(e.canonicalizedBody)?Buffer.from(wFt(e.canonicalizedBody)):Buffer.alloc(0)}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.logId!==void 0&&(t.logId=Bps.LogId.toJSON(e.logId)),e.kindVersion!==void 0&&(t.kindVersion=DT.KindVersion.toJSON(e.kindVersion)),e.integratedTime!=="0"&&(t.integratedTime=e.integratedTime),e.inclusionPromise!==void 0&&(t.inclusionPromise=DT.InclusionPromise.toJSON(e.inclusionPromise)),e.inclusionProof!==void 0&&(t.inclusionProof=DT.InclusionProof.toJSON(e.inclusionProof)),e.canonicalizedBody.length!==0&&(t.canonicalizedBody=TFt(e.canonicalizedBody)),t}};function wFt(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function TFt(e){return globalThis.Buffer.from(e).toString("base64")}function _L(e){return e!=null}});var lKr=H(UH=>{"use strict";Object.defineProperty(UH,"__esModule",{value:!0});UH.Bundle=UH.VerificationMaterial=UH.TimestampVerificationData=void 0;var wps=aKr(),Fj=$Ge(),Tps=cKr();UH.TimestampVerificationData={fromJSON(e){return{rfc3161Timestamps:globalThis.Array.isArray(e?.rfc3161Timestamps)?e.rfc3161Timestamps.map(t=>Fj.RFC3161SignedTimestamp.fromJSON(t)):[]}},toJSON(e){let t={};return e.rfc3161Timestamps?.length&&(t.rfc3161Timestamps=e.rfc3161Timestamps.map(r=>Fj.RFC3161SignedTimestamp.toJSON(r))),t}};UH.VerificationMaterial={fromJSON(e){return{content:Uue(e.publicKey)?{$case:"publicKey",publicKey:Fj.PublicKeyIdentifier.fromJSON(e.publicKey)}:Uue(e.x509CertificateChain)?{$case:"x509CertificateChain",x509CertificateChain:Fj.X509CertificateChain.fromJSON(e.x509CertificateChain)}:Uue(e.certificate)?{$case:"certificate",certificate:Fj.X509Certificate.fromJSON(e.certificate)}:void 0,tlogEntries:globalThis.Array.isArray(e?.tlogEntries)?e.tlogEntries.map(t=>Tps.TransparencyLogEntry.fromJSON(t)):[],timestampVerificationData:Uue(e.timestampVerificationData)?UH.TimestampVerificationData.fromJSON(e.timestampVerificationData):void 0}},toJSON(e){let t={};return e.content?.$case==="publicKey"?t.publicKey=Fj.PublicKeyIdentifier.toJSON(e.content.publicKey):e.content?.$case==="x509CertificateChain"?t.x509CertificateChain=Fj.X509CertificateChain.toJSON(e.content.x509CertificateChain):e.content?.$case==="certificate"&&(t.certificate=Fj.X509Certificate.toJSON(e.content.certificate)),e.tlogEntries?.length&&(t.tlogEntries=e.tlogEntries.map(r=>Tps.TransparencyLogEntry.toJSON(r))),e.timestampVerificationData!==void 0&&(t.timestampVerificationData=UH.TimestampVerificationData.toJSON(e.timestampVerificationData)),t}};UH.Bundle={fromJSON(e){return{mediaType:Uue(e.mediaType)?globalThis.String(e.mediaType):"",verificationMaterial:Uue(e.verificationMaterial)?UH.VerificationMaterial.fromJSON(e.verificationMaterial):void 0,content:Uue(e.messageSignature)?{$case:"messageSignature",messageSignature:Fj.MessageSignature.fromJSON(e.messageSignature)}:Uue(e.dsseEnvelope)?{$case:"dsseEnvelope",dsseEnvelope:wps.Envelope.fromJSON(e.dsseEnvelope)}:void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.verificationMaterial!==void 0&&(t.verificationMaterial=UH.VerificationMaterial.toJSON(e.verificationMaterial)),e.content?.$case==="messageSignature"?t.messageSignature=Fj.MessageSignature.toJSON(e.content.messageSignature):e.content?.$case==="dsseEnvelope"&&(t.dsseEnvelope=wps.Envelope.toJSON(e.content.dsseEnvelope)),t}};function Uue(e){return e!=null}});var uKr=H(WI=>{"use strict";Object.defineProperty(WI,"__esModule",{value:!0});WI.ClientTrustConfig=WI.ServiceConfiguration=WI.Service=WI.SigningConfig=WI.TrustedRoot=WI.CertificateAuthority=WI.TransparencyLogInstance=WI.ServiceSelector=void 0;WI.serviceSelectorFromJSON=Rps;WI.serviceSelectorToJSON=Nps;var uF=$Ge(),Zj;(function(e){e[e.SERVICE_SELECTOR_UNDEFINED=0]="SERVICE_SELECTOR_UNDEFINED",e[e.ALL=1]="ALL",e[e.ANY=2]="ANY",e[e.EXACT=3]="EXACT"})(Zj||(WI.ServiceSelector=Zj={}));function Rps(e){switch(e){case 0:case"SERVICE_SELECTOR_UNDEFINED":return Zj.SERVICE_SELECTOR_UNDEFINED;case 1:case"ALL":return Zj.ALL;case 2:case"ANY":return Zj.ANY;case 3:case"EXACT":return Zj.EXACT;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}function Nps(e){switch(e){case Zj.SERVICE_SELECTOR_UNDEFINED:return"SERVICE_SELECTOR_UNDEFINED";case Zj.ALL:return"ALL";case Zj.ANY:return"ANY";case Zj.EXACT:return"EXACT";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}WI.TransparencyLogInstance={fromJSON(e){return{baseUrl:Y2(e.baseUrl)?globalThis.String(e.baseUrl):"",hashAlgorithm:Y2(e.hashAlgorithm)?(0,uF.hashAlgorithmFromJSON)(e.hashAlgorithm):0,publicKey:Y2(e.publicKey)?uF.PublicKey.fromJSON(e.publicKey):void 0,logId:Y2(e.logId)?uF.LogId.fromJSON(e.logId):void 0,checkpointKeyId:Y2(e.checkpointKeyId)?uF.LogId.fromJSON(e.checkpointKeyId):void 0,operator:Y2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.baseUrl!==""&&(t.baseUrl=e.baseUrl),e.hashAlgorithm!==0&&(t.hashAlgorithm=(0,uF.hashAlgorithmToJSON)(e.hashAlgorithm)),e.publicKey!==void 0&&(t.publicKey=uF.PublicKey.toJSON(e.publicKey)),e.logId!==void 0&&(t.logId=uF.LogId.toJSON(e.logId)),e.checkpointKeyId!==void 0&&(t.checkpointKeyId=uF.LogId.toJSON(e.checkpointKeyId)),e.operator!==""&&(t.operator=e.operator),t}};WI.CertificateAuthority={fromJSON(e){return{subject:Y2(e.subject)?uF.DistinguishedName.fromJSON(e.subject):void 0,uri:Y2(e.uri)?globalThis.String(e.uri):"",certChain:Y2(e.certChain)?uF.X509CertificateChain.fromJSON(e.certChain):void 0,validFor:Y2(e.validFor)?uF.TimeRange.fromJSON(e.validFor):void 0,operator:Y2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.subject!==void 0&&(t.subject=uF.DistinguishedName.toJSON(e.subject)),e.uri!==""&&(t.uri=e.uri),e.certChain!==void 0&&(t.certChain=uF.X509CertificateChain.toJSON(e.certChain)),e.validFor!==void 0&&(t.validFor=uF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};WI.TrustedRoot={fromJSON(e){return{mediaType:Y2(e.mediaType)?globalThis.String(e.mediaType):"",tlogs:globalThis.Array.isArray(e?.tlogs)?e.tlogs.map(t=>WI.TransparencyLogInstance.fromJSON(t)):[],certificateAuthorities:globalThis.Array.isArray(e?.certificateAuthorities)?e.certificateAuthorities.map(t=>WI.CertificateAuthority.fromJSON(t)):[],ctlogs:globalThis.Array.isArray(e?.ctlogs)?e.ctlogs.map(t=>WI.TransparencyLogInstance.fromJSON(t)):[],timestampAuthorities:globalThis.Array.isArray(e?.timestampAuthorities)?e.timestampAuthorities.map(t=>WI.CertificateAuthority.fromJSON(t)):[]}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.tlogs?.length&&(t.tlogs=e.tlogs.map(r=>WI.TransparencyLogInstance.toJSON(r))),e.certificateAuthorities?.length&&(t.certificateAuthorities=e.certificateAuthorities.map(r=>WI.CertificateAuthority.toJSON(r))),e.ctlogs?.length&&(t.ctlogs=e.ctlogs.map(r=>WI.TransparencyLogInstance.toJSON(r))),e.timestampAuthorities?.length&&(t.timestampAuthorities=e.timestampAuthorities.map(r=>WI.CertificateAuthority.toJSON(r))),t}};WI.SigningConfig={fromJSON(e){return{mediaType:Y2(e.mediaType)?globalThis.String(e.mediaType):"",caUrls:globalThis.Array.isArray(e?.caUrls)?e.caUrls.map(t=>WI.Service.fromJSON(t)):[],oidcUrls:globalThis.Array.isArray(e?.oidcUrls)?e.oidcUrls.map(t=>WI.Service.fromJSON(t)):[],rekorTlogUrls:globalThis.Array.isArray(e?.rekorTlogUrls)?e.rekorTlogUrls.map(t=>WI.Service.fromJSON(t)):[],rekorTlogConfig:Y2(e.rekorTlogConfig)?WI.ServiceConfiguration.fromJSON(e.rekorTlogConfig):void 0,tsaUrls:globalThis.Array.isArray(e?.tsaUrls)?e.tsaUrls.map(t=>WI.Service.fromJSON(t)):[],tsaConfig:Y2(e.tsaConfig)?WI.ServiceConfiguration.fromJSON(e.tsaConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.caUrls?.length&&(t.caUrls=e.caUrls.map(r=>WI.Service.toJSON(r))),e.oidcUrls?.length&&(t.oidcUrls=e.oidcUrls.map(r=>WI.Service.toJSON(r))),e.rekorTlogUrls?.length&&(t.rekorTlogUrls=e.rekorTlogUrls.map(r=>WI.Service.toJSON(r))),e.rekorTlogConfig!==void 0&&(t.rekorTlogConfig=WI.ServiceConfiguration.toJSON(e.rekorTlogConfig)),e.tsaUrls?.length&&(t.tsaUrls=e.tsaUrls.map(r=>WI.Service.toJSON(r))),e.tsaConfig!==void 0&&(t.tsaConfig=WI.ServiceConfiguration.toJSON(e.tsaConfig)),t}};WI.Service={fromJSON(e){return{url:Y2(e.url)?globalThis.String(e.url):"",majorApiVersion:Y2(e.majorApiVersion)?globalThis.Number(e.majorApiVersion):0,validFor:Y2(e.validFor)?uF.TimeRange.fromJSON(e.validFor):void 0,operator:Y2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.url!==""&&(t.url=e.url),e.majorApiVersion!==0&&(t.majorApiVersion=Math.round(e.majorApiVersion)),e.validFor!==void 0&&(t.validFor=uF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};WI.ServiceConfiguration={fromJSON(e){return{selector:Y2(e.selector)?Rps(e.selector):0,count:Y2(e.count)?globalThis.Number(e.count):0}},toJSON(e){let t={};return e.selector!==0&&(t.selector=Nps(e.selector)),e.count!==0&&(t.count=Math.round(e.count)),t}};WI.ClientTrustConfig={fromJSON(e){return{mediaType:Y2(e.mediaType)?globalThis.String(e.mediaType):"",trustedRoot:Y2(e.trustedRoot)?WI.TrustedRoot.fromJSON(e.trustedRoot):void 0,signingConfig:Y2(e.signingConfig)?WI.SigningConfig.fromJSON(e.signingConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.trustedRoot!==void 0&&(t.trustedRoot=WI.TrustedRoot.toJSON(e.trustedRoot)),e.signingConfig!==void 0&&(t.signingConfig=WI.SigningConfig.toJSON(e.signingConfig)),t}};function Y2(e){return e!=null}});var xps=H(OI=>{"use strict";Object.defineProperty(OI,"__esModule",{value:!0});OI.Input=OI.Artifact=OI.ArtifactVerificationOptions_ObserverTimestampOptions=OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions=OI.ArtifactVerificationOptions_TimestampAuthorityOptions=OI.ArtifactVerificationOptions_CtlogOptions=OI.ArtifactVerificationOptions_TlogOptions=OI.ArtifactVerificationOptions=OI.PublicKeyIdentities=OI.CertificateIdentities=OI.CertificateIdentity=void 0;var Dps=lKr(),Kue=$Ge(),kps=uKr();OI.CertificateIdentity={fromJSON(e){return{issuer:sE(e.issuer)?globalThis.String(e.issuer):"",san:sE(e.san)?Kue.SubjectAlternativeName.fromJSON(e.san):void 0,oids:globalThis.Array.isArray(e?.oids)?e.oids.map(t=>Kue.ObjectIdentifierValuePair.fromJSON(t)):[]}},toJSON(e){let t={};return e.issuer!==""&&(t.issuer=e.issuer),e.san!==void 0&&(t.san=Kue.SubjectAlternativeName.toJSON(e.san)),e.oids?.length&&(t.oids=e.oids.map(r=>Kue.ObjectIdentifierValuePair.toJSON(r))),t}};OI.CertificateIdentities={fromJSON(e){return{identities:globalThis.Array.isArray(e?.identities)?e.identities.map(t=>OI.CertificateIdentity.fromJSON(t)):[]}},toJSON(e){let t={};return e.identities?.length&&(t.identities=e.identities.map(r=>OI.CertificateIdentity.toJSON(r))),t}};OI.PublicKeyIdentities={fromJSON(e){return{publicKeys:globalThis.Array.isArray(e?.publicKeys)?e.publicKeys.map(t=>Kue.PublicKey.fromJSON(t)):[]}},toJSON(e){let t={};return e.publicKeys?.length&&(t.publicKeys=e.publicKeys.map(r=>Kue.PublicKey.toJSON(r))),t}};OI.ArtifactVerificationOptions={fromJSON(e){return{signers:sE(e.certificateIdentities)?{$case:"certificateIdentities",certificateIdentities:OI.CertificateIdentities.fromJSON(e.certificateIdentities)}:sE(e.publicKeys)?{$case:"publicKeys",publicKeys:OI.PublicKeyIdentities.fromJSON(e.publicKeys)}:void 0,tlogOptions:sE(e.tlogOptions)?OI.ArtifactVerificationOptions_TlogOptions.fromJSON(e.tlogOptions):void 0,ctlogOptions:sE(e.ctlogOptions)?OI.ArtifactVerificationOptions_CtlogOptions.fromJSON(e.ctlogOptions):void 0,tsaOptions:sE(e.tsaOptions)?OI.ArtifactVerificationOptions_TimestampAuthorityOptions.fromJSON(e.tsaOptions):void 0,integratedTsOptions:sE(e.integratedTsOptions)?OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.fromJSON(e.integratedTsOptions):void 0,observerOptions:sE(e.observerOptions)?OI.ArtifactVerificationOptions_ObserverTimestampOptions.fromJSON(e.observerOptions):void 0}},toJSON(e){let t={};return e.signers?.$case==="certificateIdentities"?t.certificateIdentities=OI.CertificateIdentities.toJSON(e.signers.certificateIdentities):e.signers?.$case==="publicKeys"&&(t.publicKeys=OI.PublicKeyIdentities.toJSON(e.signers.publicKeys)),e.tlogOptions!==void 0&&(t.tlogOptions=OI.ArtifactVerificationOptions_TlogOptions.toJSON(e.tlogOptions)),e.ctlogOptions!==void 0&&(t.ctlogOptions=OI.ArtifactVerificationOptions_CtlogOptions.toJSON(e.ctlogOptions)),e.tsaOptions!==void 0&&(t.tsaOptions=OI.ArtifactVerificationOptions_TimestampAuthorityOptions.toJSON(e.tsaOptions)),e.integratedTsOptions!==void 0&&(t.integratedTsOptions=OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.toJSON(e.integratedTsOptions)),e.observerOptions!==void 0&&(t.observerOptions=OI.ArtifactVerificationOptions_ObserverTimestampOptions.toJSON(e.observerOptions)),t}};OI.ArtifactVerificationOptions_TlogOptions={fromJSON(e){return{threshold:sE(e.threshold)?globalThis.Number(e.threshold):0,performOnlineVerification:sE(e.performOnlineVerification)?globalThis.Boolean(e.performOnlineVerification):!1,disable:sE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.performOnlineVerification!==!1&&(t.performOnlineVerification=e.performOnlineVerification),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_CtlogOptions={fromJSON(e){return{threshold:sE(e.threshold)?globalThis.Number(e.threshold):0,disable:sE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_TimestampAuthorityOptions={fromJSON(e){return{threshold:sE(e.threshold)?globalThis.Number(e.threshold):0,disable:sE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions={fromJSON(e){return{threshold:sE(e.threshold)?globalThis.Number(e.threshold):0,disable:sE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.ArtifactVerificationOptions_ObserverTimestampOptions={fromJSON(e){return{threshold:sE(e.threshold)?globalThis.Number(e.threshold):0,disable:sE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};OI.Artifact={fromJSON(e){return{data:sE(e.artifactUri)?{$case:"artifactUri",artifactUri:globalThis.String(e.artifactUri)}:sE(e.artifact)?{$case:"artifact",artifact:Buffer.from(qbl(e.artifact))}:sE(e.artifactDigest)?{$case:"artifactDigest",artifactDigest:Kue.HashOutput.fromJSON(e.artifactDigest)}:void 0}},toJSON(e){let t={};return e.data?.$case==="artifactUri"?t.artifactUri=e.data.artifactUri:e.data?.$case==="artifact"?t.artifact=$bl(e.data.artifact):e.data?.$case==="artifactDigest"&&(t.artifactDigest=Kue.HashOutput.toJSON(e.data.artifactDigest)),t}};OI.Input={fromJSON(e){return{artifactTrustRoot:sE(e.artifactTrustRoot)?kps.TrustedRoot.fromJSON(e.artifactTrustRoot):void 0,artifactVerificationOptions:sE(e.artifactVerificationOptions)?OI.ArtifactVerificationOptions.fromJSON(e.artifactVerificationOptions):void 0,bundle:sE(e.bundle)?Dps.Bundle.fromJSON(e.bundle):void 0,artifact:sE(e.artifact)?OI.Artifact.fromJSON(e.artifact):void 0}},toJSON(e){let t={};return e.artifactTrustRoot!==void 0&&(t.artifactTrustRoot=kps.TrustedRoot.toJSON(e.artifactTrustRoot)),e.artifactVerificationOptions!==void 0&&(t.artifactVerificationOptions=OI.ArtifactVerificationOptions.toJSON(e.artifactVerificationOptions)),e.bundle!==void 0&&(t.bundle=Dps.Bundle.toJSON(e.bundle)),e.artifact!==void 0&&(t.artifact=OI.Artifact.toJSON(e.artifact)),t}};function qbl(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function $bl(e){return globalThis.Buffer.from(e).toString("base64")}function sE(e){return e!=null}});var H7e=H(KH=>{"use strict";var eEl=KH&&KH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),eFe=KH&&KH.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&eEl(t,e,r)};Object.defineProperty(KH,"__esModule",{value:!0});eFe(aKr(),KH);eFe(lKr(),KH);eFe($Ge(),KH);eFe(cKr(),KH);eFe(uKr(),KH);eFe(xps(),KH)});var RFt=H(iW=>{"use strict";Object.defineProperty(iW,"__esModule",{value:!0});iW.BUNDLE_V03_MEDIA_TYPE=iW.BUNDLE_V03_LEGACY_MEDIA_TYPE=iW.BUNDLE_V02_MEDIA_TYPE=iW.BUNDLE_V01_MEDIA_TYPE=void 0;iW.isBundleWithCertificateChain=tEl;iW.isBundleWithPublicKey=rEl;iW.isBundleWithMessageSignature=nEl;iW.isBundleWithDsseEnvelope=iEl;iW.BUNDLE_V01_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.1";iW.BUNDLE_V02_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.2";iW.BUNDLE_V03_LEGACY_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.3";iW.BUNDLE_V03_MEDIA_TYPE="application/vnd.dev.sigstore.bundle.v0.3+json";function tEl(e){return e.verificationMaterial.content.$case==="x509CertificateChain"}function rEl(e){return e.verificationMaterial.content.$case==="publicKey"}function nEl(e){return e.content.$case==="messageSignature"}function iEl(e){return e.content.$case==="dsseEnvelope"}});var Fps=H(DFt=>{"use strict";Object.defineProperty(DFt,"__esModule",{value:!0});DFt.toMessageSignatureBundle=oEl;DFt.toDSSEBundle=aEl;var sEl=H7e(),NFt=RFt();function oEl(e){return{mediaType:e.certificateChain?NFt.BUNDLE_V02_MEDIA_TYPE:NFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"messageSignature",messageSignature:{messageDigest:{algorithm:sEl.HashAlgorithm.SHA2_256,digest:e.digest},signature:e.signature}},verificationMaterial:Gps(e)}}function aEl(e){return{mediaType:e.certificateChain?NFt.BUNDLE_V02_MEDIA_TYPE:NFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"dsseEnvelope",dsseEnvelope:cEl(e)},verificationMaterial:Gps(e)}}function cEl(e){return{payloadType:e.artifactType,payload:e.artifact,signatures:[lEl(e)]}}function lEl(e){return{keyid:e.keyHint||"",sig:e.signature}}function Gps(e){return{content:uEl(e),tlogEntries:[],timestampVerificationData:{rfc3161Timestamps:[]}}}function uEl(e){return e.certificate?e.certificateChain?{$case:"x509CertificateChain",x509CertificateChain:{certificates:[{rawBytes:e.certificate}]}}:{$case:"certificate",certificate:{rawBytes:e.certificate}}:{$case:"publicKey",publicKey:{hint:e.keyHint||""}}}});var AKr=H(kFt=>{"use strict";Object.defineProperty(kFt,"__esModule",{value:!0});kFt.ValidationError=void 0;var gKr=class extends Error{constructor(t,r){super(t),this.fields=r}};kFt.ValidationError=gKr});var dKr=H(L0e=>{"use strict";Object.defineProperty(L0e,"__esModule",{value:!0});L0e.assertBundle=gEl;L0e.assertBundleV01=Zps;L0e.isBundleV01=AEl;L0e.assertBundleV02=dEl;L0e.assertBundleLatest=pEl;var xFt=AKr();function gEl(e){let t=GFt(e);if(t.length>0)throw new xFt.ValidationError("invalid bundle",t)}function Zps(e){let t=[];if(t.push(...GFt(e)),t.push(...fEl(e)),t.length>0)throw new xFt.ValidationError("invalid v0.1 bundle",t)}function AEl(e){try{return Zps(e),!0}catch{return!1}}function dEl(e){let t=[];if(t.push(...GFt(e)),t.push(...Lps(e)),t.length>0)throw new xFt.ValidationError("invalid v0.2 bundle",t)}function pEl(e){let t=[];if(t.push(...GFt(e)),t.push(...Lps(e)),t.push(...IEl(e)),t.length>0)throw new xFt.ValidationError("invalid bundle",t)}function GFt(e){let t=[];if((e.mediaType===void 0||!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\+json;version=\d\.\d/)&&!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\.v\d\.\d\+json/))&&t.push("mediaType"),e.content===void 0)t.push("content");else switch(e.content.$case){case"messageSignature":e.content.messageSignature.messageDigest===void 0?t.push("content.messageSignature.messageDigest"):e.content.messageSignature.messageDigest.digest.length===0&&t.push("content.messageSignature.messageDigest.digest"),e.content.messageSignature.signature.length===0&&t.push("content.messageSignature.signature");break;case"dsseEnvelope":e.content.dsseEnvelope.payload.length===0&&t.push("content.dsseEnvelope.payload"),e.content.dsseEnvelope.signatures.length!==1?t.push("content.dsseEnvelope.signatures"):e.content.dsseEnvelope.signatures[0].sig.length===0&&t.push("content.dsseEnvelope.signatures[0].sig");break}if(e.verificationMaterial===void 0)t.push("verificationMaterial");else{if(e.verificationMaterial.content===void 0)t.push("verificationMaterial.content");else switch(e.verificationMaterial.content.$case){case"x509CertificateChain":e.verificationMaterial.content.x509CertificateChain.certificates.length===0&&t.push("verificationMaterial.content.x509CertificateChain.certificates"),e.verificationMaterial.content.x509CertificateChain.certificates.forEach((r,n)=>{r.rawBytes.length===0&&t.push(`verificationMaterial.content.x509CertificateChain.certificates[${n}].rawBytes`)});break;case"certificate":e.verificationMaterial.content.certificate.rawBytes.length===0&&t.push("verificationMaterial.content.certificate.rawBytes");break}e.verificationMaterial.tlogEntries===void 0?t.push("verificationMaterial.tlogEntries"):e.verificationMaterial.tlogEntries.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.logId===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].logId`),r.kindVersion===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].kindVersion`)})}return t}function fEl(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionPromise===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionPromise`)}),t}function Lps(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionProof===void 0?t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof`):r.inclusionProof.checkpoint===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof.checkpoint`)}),t}function IEl(e){let t=[];return e.verificationMaterial?.content?.$case==="x509CertificateChain"&&t.push("verificationMaterial.content.$case"),t}});var Wps=H(Lj=>{"use strict";Object.defineProperty(Lj,"__esModule",{value:!0});Lj.envelopeToJSON=Lj.envelopeFromJSON=Lj.bundleToJSON=Lj.bundleFromJSON=void 0;var FFt=H7e(),Vps=RFt(),pKr=dKr(),hEl=e=>{let t=FFt.Bundle.fromJSON(e);switch(t.mediaType){case Vps.BUNDLE_V01_MEDIA_TYPE:(0,pKr.assertBundleV01)(t);break;case Vps.BUNDLE_V02_MEDIA_TYPE:(0,pKr.assertBundleV02)(t);break;default:(0,pKr.assertBundleLatest)(t);break}return t};Lj.bundleFromJSON=hEl;var mEl=e=>FFt.Bundle.toJSON(e);Lj.bundleToJSON=mEl;var CEl=e=>FFt.Envelope.fromJSON(e);Lj.envelopeFromJSON=CEl;var _El=e=>FFt.Envelope.toJSON(e);Lj.envelopeToJSON=_El});var Q7e=H(Ih=>{"use strict";Object.defineProperty(Ih,"__esModule",{value:!0});Ih.isBundleV01=Ih.assertBundleV02=Ih.assertBundleV01=Ih.assertBundleLatest=Ih.assertBundle=Ih.envelopeToJSON=Ih.envelopeFromJSON=Ih.bundleToJSON=Ih.bundleFromJSON=Ih.ValidationError=Ih.isBundleWithPublicKey=Ih.isBundleWithMessageSignature=Ih.isBundleWithDsseEnvelope=Ih.isBundleWithCertificateChain=Ih.BUNDLE_V03_MEDIA_TYPE=Ih.BUNDLE_V03_LEGACY_MEDIA_TYPE=Ih.BUNDLE_V02_MEDIA_TYPE=Ih.BUNDLE_V01_MEDIA_TYPE=Ih.toMessageSignatureBundle=Ih.toDSSEBundle=void 0;var Ops=Fps();Object.defineProperty(Ih,"toDSSEBundle",{enumerable:!0,get:function(){return Ops.toDSSEBundle}});Object.defineProperty(Ih,"toMessageSignatureBundle",{enumerable:!0,get:function(){return Ops.toMessageSignatureBundle}});var jue=RFt();Object.defineProperty(Ih,"BUNDLE_V01_MEDIA_TYPE",{enumerable:!0,get:function(){return jue.BUNDLE_V01_MEDIA_TYPE}});Object.defineProperty(Ih,"BUNDLE_V02_MEDIA_TYPE",{enumerable:!0,get:function(){return jue.BUNDLE_V02_MEDIA_TYPE}});Object.defineProperty(Ih,"BUNDLE_V03_LEGACY_MEDIA_TYPE",{enumerable:!0,get:function(){return jue.BUNDLE_V03_LEGACY_MEDIA_TYPE}});Object.defineProperty(Ih,"BUNDLE_V03_MEDIA_TYPE",{enumerable:!0,get:function(){return jue.BUNDLE_V03_MEDIA_TYPE}});Object.defineProperty(Ih,"isBundleWithCertificateChain",{enumerable:!0,get:function(){return jue.isBundleWithCertificateChain}});Object.defineProperty(Ih,"isBundleWithDsseEnvelope",{enumerable:!0,get:function(){return jue.isBundleWithDsseEnvelope}});Object.defineProperty(Ih,"isBundleWithMessageSignature",{enumerable:!0,get:function(){return jue.isBundleWithMessageSignature}});Object.defineProperty(Ih,"isBundleWithPublicKey",{enumerable:!0,get:function(){return jue.isBundleWithPublicKey}});var yEl=AKr();Object.defineProperty(Ih,"ValidationError",{enumerable:!0,get:function(){return yEl.ValidationError}});var ZFt=Wps();Object.defineProperty(Ih,"bundleFromJSON",{enumerable:!0,get:function(){return ZFt.bundleFromJSON}});Object.defineProperty(Ih,"bundleToJSON",{enumerable:!0,get:function(){return ZFt.bundleToJSON}});Object.defineProperty(Ih,"envelopeFromJSON",{enumerable:!0,get:function(){return ZFt.envelopeFromJSON}});Object.defineProperty(Ih,"envelopeToJSON",{enumerable:!0,get:function(){return ZFt.envelopeToJSON}});var Y7e=dKr();Object.defineProperty(Ih,"assertBundle",{enumerable:!0,get:function(){return Y7e.assertBundle}});Object.defineProperty(Ih,"assertBundleLatest",{enumerable:!0,get:function(){return Y7e.assertBundleLatest}});Object.defineProperty(Ih,"assertBundleV01",{enumerable:!0,get:function(){return Y7e.assertBundleV01}});Object.defineProperty(Ih,"assertBundleV02",{enumerable:!0,get:function(){return Y7e.assertBundleV02}});Object.defineProperty(Ih,"isBundleV01",{enumerable:!0,get:function(){return Y7e.isBundleV01}})});var X7e=H(VFt=>{"use strict";Object.defineProperty(VFt,"__esModule",{value:!0});VFt.ByteStream=void 0;var fKr=class extends Error{},LFt=class e{constructor(t){this.start=0,t?(this.buf=t,this.view=Buffer.from(t)):(this.buf=new ArrayBuffer(0),this.view=Buffer.from(this.buf))}get buffer(){return this.view.subarray(0,this.start)}get length(){return this.view.byteLength}get position(){return this.start}seek(t){this.start=t}slice(t,r){let n=t+r;if(n>this.length)throw new fKr("request past end of buffer");return this.view.subarray(t,n)}appendChar(t){this.ensureCapacity(1),this.view[this.start]=t,this.start+=1}appendUint16(t){this.ensureCapacity(2);let r=new Uint16Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[1],this.view[this.start+1]=n[0],this.start+=2}appendUint24(t){this.ensureCapacity(3);let r=new Uint32Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[2],this.view[this.start+1]=n[1],this.view[this.start+2]=n[0],this.start+=3}appendView(t){this.ensureCapacity(t.length),this.view.set(t,this.start),this.start+=t.length}getBlock(t){if(t<=0)return Buffer.alloc(0);if(this.start+t>this.view.length)throw new Error("request past end of buffer");let r=this.view.subarray(this.start,this.start+t);return this.start+=t,r}getUint8(){return this.getBlock(1)[0]}getUint16(){let t=this.getBlock(2);return t[0]<<8|t[1]}ensureCapacity(t){if(this.start+t>this.view.byteLength){let r=e.BLOCK_SIZE+(t>e.BLOCK_SIZE?t:0);this.realloc(this.view.byteLength+r)}}realloc(t){let r=new ArrayBuffer(t),n=Buffer.from(r);n.set(this.view),this.buf=r,this.view=n}};VFt.ByteStream=LFt;LFt.BLOCK_SIZE=1024});var WFt=H(tFe=>{"use strict";Object.defineProperty(tFe,"__esModule",{value:!0});tFe.ASN1TypeError=tFe.ASN1ParseError=void 0;var IKr=class extends Error{};tFe.ASN1ParseError=IKr;var hKr=class extends Error{};tFe.ASN1TypeError=hKr});var Mps=H(OFt=>{"use strict";Object.defineProperty(OFt,"__esModule",{value:!0});OFt.decodeLength=bEl;OFt.encodeLength=EEl;var Pps=WFt();function bEl(e){let t=e.getUint8();if(!(t&128))return t;let r=t&127;if(r>6)throw new Pps.ASN1ParseError("length exceeds 6 byte limit");let n=0;for(let a=0;a0n;)r.unshift(Number(t&255n)),t=t>>8n;return Buffer.from([128|r.length,...r])}});var Yps=H(zue=>{"use strict";Object.defineProperty(zue,"__esModule",{value:!0});zue.parseInteger=BEl;zue.parseStringASCII=Hps;zue.parseTime=wEl;zue.parseOID=TEl;zue.parseBoolean=REl;zue.parseBitString=NEl;var SEl=/^(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/,vEl=/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/;function BEl(e){let t=0,r=e.length,n=e[t],a=n>127,o=a?255:0;for(;n==o&&++t=50?1900:2e3,n[1]=a.toString()}return new Date(`${n[1]}-${n[2]}-${n[3]}T${n[4]}:${n[5]}:${n[6]}Z`)}function TEl(e){let t=0,r=e.length,n=e[t++],a=Math.floor(n/40),o=n%40,l=`${a}.${o}`,A=0;for(;t=A;--f)a.push(l>>f&1)}return a}});var Xps=H(PFt=>{"use strict";Object.defineProperty(PFt,"__esModule",{value:!0});PFt.ASN1Tag=void 0;var Qps=WFt(),V0e={BOOLEAN:1,INTEGER:2,BIT_STRING:3,OCTET_STRING:4,OBJECT_IDENTIFIER:6,SEQUENCE:16,SET:17,PRINTABLE_STRING:19,UTC_TIME:23,GENERALIZED_TIME:24},mKr={UNIVERSAL:0,APPLICATION:1,CONTEXT_SPECIFIC:2,PRIVATE:3},CKr=class{constructor(t){if(this.number=t&31,this.constructed=(t&32)===32,this.class=t>>6,this.number===31)throw new Qps.ASN1ParseError("long form tags not supported");if(this.class===mKr.UNIVERSAL&&this.number===0)throw new Qps.ASN1ParseError("unsupported tag 0x00")}isUniversal(){return this.class===mKr.UNIVERSAL}isContextSpecific(t){let r=this.class===mKr.CONTEXT_SPECIFIC;return t!==void 0?r&&this.number===t:r}isBoolean(){return this.isUniversal()&&this.number===V0e.BOOLEAN}isInteger(){return this.isUniversal()&&this.number===V0e.INTEGER}isBitString(){return this.isUniversal()&&this.number===V0e.BIT_STRING}isOctetString(){return this.isUniversal()&&this.number===V0e.OCTET_STRING}isOID(){return this.isUniversal()&&this.number===V0e.OBJECT_IDENTIFIER}isUTCTime(){return this.isUniversal()&&this.number===V0e.UTC_TIME}isGeneralizedTime(){return this.isUniversal()&&this.number===V0e.GENERALIZED_TIME}toDER(){return this.number|(this.constructed?32:0)|this.class<<6}};PFt.ASN1Tag=CKr});var jps=H(HFt=>{"use strict";Object.defineProperty(HFt,"__esModule",{value:!0});HFt.ASN1Obj=void 0;var _Kr=X7e(),W0e=WFt(),Ups=Mps(),rFe=Yps(),DEl=Xps(),MFt=class{constructor(t,r,n){this.tag=t,this.value=r,this.subs=n}static parseBuffer(t){return Kps(new _Kr.ByteStream(t))}toDER(){let t=new _Kr.ByteStream;if(this.subs.length>0)for(let a of this.subs)t.appendView(a.toDER());else t.appendView(this.value);let r=t.buffer,n=new _Kr.ByteStream;return n.appendChar(this.tag.toDER()),n.appendView((0,Ups.encodeLength)(r.length)),n.appendView(r),n.buffer}toBoolean(){if(!this.tag.isBoolean())throw new W0e.ASN1TypeError("not a boolean");return(0,rFe.parseBoolean)(this.value)}toInteger(){if(!this.tag.isInteger())throw new W0e.ASN1TypeError("not an integer");return(0,rFe.parseInteger)(this.value)}toOID(){if(!this.tag.isOID())throw new W0e.ASN1TypeError("not an OID");return(0,rFe.parseOID)(this.value)}toDate(){switch(!0){case this.tag.isUTCTime():return(0,rFe.parseTime)(this.value,!0);case this.tag.isGeneralizedTime():return(0,rFe.parseTime)(this.value,!1);default:throw new W0e.ASN1TypeError("not a date")}}toBitString(){if(!this.tag.isBitString())throw new W0e.ASN1TypeError("not a bit string");return(0,rFe.parseBitString)(this.value)}};HFt.ASN1Obj=MFt;function Kps(e){let t=new DEl.ASN1Tag(e.getUint8()),r=(0,Ups.decodeLength)(e),n=e.slice(e.position,r),a=e.position,o=[];if(t.constructed)o=Jps(e,r);else if(t.isOctetString())try{o=Jps(e,r)}catch{}return o.length===0&&e.seek(a+r),new MFt(t,n,o)}function Jps(e,t){let r=e.position+t;if(r>e.length)throw new W0e.ASN1ParseError("invalid length");let n=[];for(;e.position{"use strict";Object.defineProperty(YFt,"__esModule",{value:!0});YFt.ASN1Obj=void 0;var kEl=jps();Object.defineProperty(YFt,"ASN1Obj",{enumerable:!0,get:function(){return kEl.ASN1Obj}})});var nFe=H(que=>{"use strict";var xEl=que&&que.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(que,"__esModule",{value:!0});que.createPublicKey=GEl;que.digest=FEl;que.verify=ZEl;que.bufferEqual=LEl;var J7e=xEl(Et("crypto"));function GEl(e,t="spki"){return typeof e=="string"?J7e.default.createPublicKey(e):J7e.default.createPublicKey({key:e,format:"der",type:t})}function FEl(e,...t){let r=J7e.default.createHash(e);for(let n of t)r.update(n);return r.digest()}function ZEl(e,t,r,n){try{return J7e.default.verify(n,e,t,r)}catch{return!1}}function LEl(e,t){try{return J7e.default.timingSafeEqual(e,t)}catch{return!1}}});var zps=H(yKr=>{"use strict";Object.defineProperty(yKr,"__esModule",{value:!0});yKr.preAuthEncoding=WEl;var VEl="DSSEv1";function WEl(e,t){let r=[VEl,e.length,e,t.length,""].join(" ");return Buffer.concat([Buffer.from(r,"ascii"),t])}});var efs=H(XFt=>{"use strict";Object.defineProperty(XFt,"__esModule",{value:!0});XFt.base64Encode=OEl;XFt.base64Decode=PEl;var qps="base64",$ps="utf-8";function OEl(e){return Buffer.from(e,$ps).toString(qps)}function PEl(e){return Buffer.from(e,qps).toString($ps)}});var tfs=H(EKr=>{"use strict";Object.defineProperty(EKr,"__esModule",{value:!0});EKr.canonicalize=bKr;function bKr(e){let t="";if(e===null||typeof e!="object"||e.toJSON!=null)t+=JSON.stringify(e);else if(Array.isArray(e)){t+="[";let r=!0;e.forEach(n=>{r||(t+=","),r=!1,t+=bKr(n)}),t+="]"}else{t+="{";let r=!0;Object.keys(e).sort().forEach(n=>{r||(t+=","),r=!1,t+=JSON.stringify(n),t+=":",t+=bKr(e[n])}),t+="}"}return t}});var SKr=H(JFt=>{"use strict";Object.defineProperty(JFt,"__esModule",{value:!0});JFt.toDER=YEl;JFt.fromDER=QEl;var MEl=/-----BEGIN (.*)-----/,HEl=/-----END (.*)-----/;function YEl(e){let t="";return e.split(` +`).forEach(r=>{r.match(MEl)||r.match(HEl)||(t+=r)}),Buffer.from(t,"base64")}function QEl(e,t="CERTIFICATE"){let n=e.toString("base64").match(/.{1,64}/g)||"";return[`-----BEGIN ${t}-----`,...n,`-----END ${t}-----`].join(` `).concat(` -`)}});var UFt=H(iFe=>{"use strict";Object.defineProperty(iFe,"__esModule",{value:!0});iFe.SHA2_HASH_ALGOS=iFe.ECDSA_SIGNATURE_ALGOS=void 0;iFe.ECDSA_SIGNATURE_ALGOS={"1.2.840.10045.4.3.1":"sha224","1.2.840.10045.4.3.2":"sha256","1.2.840.10045.4.3.3":"sha384","1.2.840.10045.4.3.4":"sha512"};iFe.SHA2_HASH_ALGOS={"2.16.840.1.101.3.4.2.1":"sha256","2.16.840.1.101.3.4.2.2":"sha384","2.16.840.1.101.3.4.2.3":"sha512"}});var _Kr=H(KFt=>{"use strict";Object.defineProperty(KFt,"__esModule",{value:!0});KFt.RFC3161TimestampVerificationError=void 0;var CKr=class extends Error{};KFt.RFC3161TimestampVerificationError=CKr});var rfs=H(Lj=>{"use strict";var Kbl=Lj&&Lj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jbl=Lj&&Lj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),zbl=Lj&&Lj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Kbl(t,e,r);return jbl(t,e),t};Object.defineProperty(Lj,"__esModule",{value:!0});Lj.TSTInfo=void 0;var tfs=zbl(nFe()),qbl=UFt(),$bl=_Kr(),yKr=class{constructor(t){this.root=t}get version(){return this.root.subs[0].toInteger()}get genTime(){return this.root.subs[4].toDate()}get messageImprintHashAlgorithm(){let t=this.messageImprintObj.subs[0].subs[0].toOID();return qbl.SHA2_HASH_ALGOS[t]}get messageImprintHashedMessage(){return this.messageImprintObj.subs[1].value}get raw(){return this.root.toDER()}verify(t){let r=tfs.digest(this.messageImprintHashAlgorithm,t);if(!tfs.bufferEqual(r,this.messageImprintHashedMessage))throw new $bl.RFC3161TimestampVerificationError("message imprint does not match artifact")}get messageImprintObj(){return this.root.subs[2]}};Lj.TSTInfo=yKr});var ifs=H(Vj=>{"use strict";var eEl=Vj&&Vj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),tEl=Vj&&Vj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),rEl=Vj&&Vj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&eEl(t,e,r);return tEl(t,e),t};Object.defineProperty(Vj,"__esModule",{value:!0});Vj.RFC3161Timestamp=void 0;var nEl=QFt(),bKr=rEl(nFe()),nfs=UFt(),K7e=_Kr(),iEl=rfs(),sEl="1.2.840.113549.1.7.2",oEl="1.2.840.113549.1.9.16.1.4",aEl="1.2.840.113549.1.9.4",EKr=class e{constructor(t){this.root=t}static parse(t){let r=nEl.ASN1Obj.parseBuffer(t);return new e(r)}get status(){return this.pkiStatusInfoObj.subs[0].toInteger()}get contentType(){return this.contentTypeObj.toOID()}get eContentType(){return this.eContentTypeObj.toOID()}get signingTime(){return this.tstInfo.genTime}get signerIssuer(){return this.signerSidObj.subs[0].value}get signerSerialNumber(){return this.signerSidObj.subs[1].value}get signerDigestAlgorithm(){let t=this.signerDigestAlgorithmObj.subs[0].toOID();return nfs.SHA2_HASH_ALGOS[t]}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return nfs.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value}get tstInfo(){return new iEl.TSTInfo(this.eContentObj.subs[0].subs[0])}verify(t,r){if(!this.timeStampTokenObj)throw new K7e.RFC3161TimestampVerificationError("timeStampToken is missing");if(this.contentType!==sEl)throw new K7e.RFC3161TimestampVerificationError(`incorrect content type: ${this.contentType}`);if(this.eContentType!==oEl)throw new K7e.RFC3161TimestampVerificationError(`incorrect encapsulated content type: ${this.eContentType}`);this.tstInfo.verify(t),this.verifyMessageDigest(),this.verifySignature(r)}verifyMessageDigest(){let t=bKr.digest(this.signerDigestAlgorithm,this.tstInfo.raw),r=this.messageDigestAttributeObj.subs[1].subs[0].value;if(!bKr.bufferEqual(t,r))throw new K7e.RFC3161TimestampVerificationError("signed data does not match tstInfo")}verifySignature(t){let r=this.signedAttrsObj.toDER();if(r[0]=49,!bKr.verify(r,t,this.signatureValue,this.signatureAlgorithm))throw new K7e.RFC3161TimestampVerificationError("signature verification failed")}get pkiStatusInfoObj(){return this.root.subs[0]}get timeStampTokenObj(){return this.root.subs[1]}get contentTypeObj(){return this.timeStampTokenObj.subs[0]}get signedDataObj(){return this.timeStampTokenObj.subs.find(r=>r.tag.isContextSpecific(0)).subs[0]}get encapContentInfoObj(){return this.signedDataObj.subs[2]}get signerInfosObj(){let t=this.signedDataObj;return t.subs[t.subs.length-1]}get signerInfoObj(){return this.signerInfosObj.subs[0]}get eContentTypeObj(){return this.encapContentInfoObj.subs[0]}get eContentObj(){return this.encapContentInfoObj.subs[1]}get signedAttrsObj(){return this.signerInfoObj.subs.find(r=>r.tag.isContextSpecific(0))}get messageDigestAttributeObj(){return this.signedAttrsObj.subs.find(r=>r.subs[0].tag.isOID()&&r.subs[0].toOID()===aEl)}get signerSidObj(){return this.signerInfoObj.subs[1]}get signerDigestAlgorithmObj(){return this.signerInfoObj.subs[2]}get signatureAlgorithmObj(){return this.signerInfoObj.subs[4]}get signatureValueObj(){return this.signerInfoObj.subs[5]}};Vj.RFC3161Timestamp=EKr});var sfs=H(jFt=>{"use strict";Object.defineProperty(jFt,"__esModule",{value:!0});jFt.RFC3161Timestamp=void 0;var cEl=ifs();Object.defineProperty(jFt,"RFC3161Timestamp",{enumerable:!0,get:function(){return cEl.RFC3161Timestamp}})});var afs=H(Wj=>{"use strict";var lEl=Wj&&Wj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uEl=Wj&&Wj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gEl=Wj&&Wj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&lEl(t,e,r);return uEl(t,e),t};Object.defineProperty(Wj,"__esModule",{value:!0});Wj.SignedCertificateTimestamp=void 0;var AEl=gEl(nFe()),ofs=J7e(),SKr=class e{constructor(t){this.version=t.version,this.logID=t.logID,this.timestamp=t.timestamp,this.extensions=t.extensions,this.hashAlgorithm=t.hashAlgorithm,this.signatureAlgorithm=t.signatureAlgorithm,this.signature=t.signature}get datetime(){return new Date(Number(this.timestamp.readBigInt64BE()))}get algorithm(){switch(this.hashAlgorithm){case 0:return"none";case 1:return"md5";case 2:return"sha1";case 3:return"sha224";case 4:return"sha256";case 5:return"sha384";case 6:return"sha512";default:return"unknown"}}verify(t,r){let n=new ofs.ByteStream;return n.appendChar(this.version),n.appendChar(0),n.appendView(this.timestamp),n.appendUint16(1),n.appendView(t),n.appendUint16(this.extensions.byteLength),this.extensions.byteLength>0&&n.appendView(this.extensions),AEl.verify(n.buffer,r,this.signature,this.algorithm)}static parse(t){let r=new ofs.ByteStream(t),n=r.getUint8(),a=r.getBlock(32),o=r.getBlock(8),l=r.getUint16(),A=r.getBlock(l),f=r.getUint8(),I=r.getUint8(),C=r.getUint16(),b=r.getBlock(C);if(r.position!==t.length)throw new Error("SCT buffer length mismatch");return new e({version:n,logID:a,timestamp:o,extensions:A,hashAlgorithm:f,signatureAlgorithm:I,signature:b})}};Wj.SignedCertificateTimestamp=SKr});var DKr=H(uF=>{"use strict";Object.defineProperty(uF,"__esModule",{value:!0});uF.X509SCTExtension=uF.X509SubjectKeyIDExtension=uF.X509AuthorityKeyIDExtension=uF.X509SubjectAlternativeNameExtension=uF.X509KeyUsageExtension=uF.X509BasicConstraintsExtension=uF.X509Extension=void 0;var dEl=J7e(),pEl=afs(),cre=class{constructor(t){this.root=t}get oid(){return this.root.subs[0].toOID()}get critical(){return this.root.subs.length===3?this.root.subs[1].toBoolean():!1}get value(){return this.extnValueObj.value}get valueObj(){return this.extnValueObj}get extnValueObj(){return this.root.subs[this.root.subs.length-1]}};uF.X509Extension=cre;var vKr=class extends cre{get isCA(){return this.sequence.subs[0]?.toBoolean()??!1}get pathLenConstraint(){return this.sequence.subs.length>1?this.sequence.subs[1].toInteger():void 0}get sequence(){return this.extnValueObj.subs[0]}};uF.X509BasicConstraintsExtension=vKr;var BKr=class extends cre{get digitalSignature(){return this.bitString[0]===1}get keyCertSign(){return this.bitString[5]===1}get crlSign(){return this.bitString[6]===1}get bitString(){return this.extnValueObj.subs[0].toBitString()}};uF.X509KeyUsageExtension=BKr;var wKr=class extends cre{get rfc822Name(){return this.findGeneralName(1)?.value.toString("ascii")}get uri(){return this.findGeneralName(6)?.value.toString("ascii")}otherName(t){let r=this.findGeneralName(0);return r===void 0||r.subs[0].toOID()!==t?void 0:r.subs[1].subs[0].value.toString("ascii")}findGeneralName(t){return this.generalNames.find(r=>r.tag.isContextSpecific(t))}get generalNames(){return this.extnValueObj.subs[0].subs}};uF.X509SubjectAlternativeNameExtension=wKr;var TKr=class extends cre{get keyIdentifier(){return this.findSequenceMember(0)?.value}findSequenceMember(t){return this.sequence.subs.find(r=>r.tag.isContextSpecific(t))}get sequence(){return this.extnValueObj.subs[0]}};uF.X509AuthorityKeyIDExtension=TKr;var RKr=class extends cre{get keyIdentifier(){return this.extnValueObj.subs[0].value}};uF.X509SubjectKeyIDExtension=RKr;var NKr=class extends cre{constructor(t){super(t)}get signedCertificateTimestamps(){let t=this.extnValueObj.subs[0].value,r=new dEl.ByteStream(t),n=r.getUint16()+2,a=[];for(;r.position{"use strict";var fEl=qP&&qP.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),IEl=qP&&qP.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),lfs=qP&&qP.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&fEl(t,e,r);return IEl(t,e),t};Object.defineProperty(qP,"__esModule",{value:!0});qP.X509Certificate=qP.EXTENSION_OID_SCT=void 0;var hEl=QFt(),cfs=lfs(nFe()),mEl=UFt(),CEl=lfs(mKr()),O0e=DKr(),_El="2.5.29.14",yEl="2.5.29.15",bEl="2.5.29.17",EEl="2.5.29.19",SEl="2.5.29.35";qP.EXTENSION_OID_SCT="1.3.6.1.4.1.11129.2.4.2";var kKr=class e{constructor(t){this.root=t}static parse(t){let r=typeof t=="string"?CEl.toDER(t):t,n=hEl.ASN1Obj.parseBuffer(r);return new e(n)}get tbsCertificate(){return this.tbsCertificateObj}get version(){return`v${(this.versionObj.subs[0].toInteger()+BigInt(1)).toString()}`}get serialNumber(){return this.serialNumberObj.value}get notBefore(){return this.validityObj.subs[0].toDate()}get notAfter(){return this.validityObj.subs[1].toDate()}get issuer(){return this.issuerObj.value}get subject(){return this.subjectObj.value}get publicKey(){return this.subjectPublicKeyInfoObj.toDER()}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return mEl.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value.subarray(1)}get subjectAltName(){let t=this.extSubjectAltName;return t?.uri||t?.rfc822Name}get extensions(){return this.extensionsObj?.subs[0]?.subs||[]}get extKeyUsage(){let t=this.findExtension(yEl);return t?new O0e.X509KeyUsageExtension(t):void 0}get extBasicConstraints(){let t=this.findExtension(EEl);return t?new O0e.X509BasicConstraintsExtension(t):void 0}get extSubjectAltName(){let t=this.findExtension(bEl);return t?new O0e.X509SubjectAlternativeNameExtension(t):void 0}get extAuthorityKeyID(){let t=this.findExtension(SEl);return t?new O0e.X509AuthorityKeyIDExtension(t):void 0}get extSubjectKeyID(){let t=this.findExtension(_El);return t?new O0e.X509SubjectKeyIDExtension(t):void 0}get extSCT(){let t=this.findExtension(qP.EXTENSION_OID_SCT);return t?new O0e.X509SCTExtension(t):void 0}get isCA(){let t=this.extBasicConstraints?.isCA||!1;return this.extKeyUsage?t&&this.extKeyUsage.keyCertSign:t}extension(t){let r=this.findExtension(t);return r?new O0e.X509Extension(r):void 0}verify(t){let r=t?.publicKey||this.publicKey,n=cfs.createPublicKey(r);return cfs.verify(this.tbsCertificate.toDER(),n,this.signatureValue,this.signatureAlgorithm)}validForDate(t){return this.notBefore<=t&&t<=this.notAfter}equals(t){return this.root.toDER().equals(t.root.toDER())}clone(){let t=this.root.toDER(),r=Buffer.alloc(t.length);return t.copy(r),e.parse(r)}findExtension(t){return this.extensions.find(r=>r.subs[0].toOID()===t)}get tbsCertificateObj(){return this.root.subs[0]}get signatureAlgorithmObj(){return this.root.subs[1]}get signatureValueObj(){return this.root.subs[2]}get versionObj(){return this.tbsCertificateObj.subs[0]}get serialNumberObj(){return this.tbsCertificateObj.subs[1]}get issuerObj(){return this.tbsCertificateObj.subs[3]}get validityObj(){return this.tbsCertificateObj.subs[4]}get subjectObj(){return this.tbsCertificateObj.subs[5]}get subjectPublicKeyInfoObj(){return this.tbsCertificateObj.subs[6]}get extensionsObj(){return this.tbsCertificateObj.subs.find(t=>t.tag.isContextSpecific(3))}};qP.X509Certificate=kKr});var Afs=H(que=>{"use strict";Object.defineProperty(que,"__esModule",{value:!0});que.X509SCTExtension=que.X509Certificate=que.EXTENSION_OID_SCT=void 0;var gfs=ufs();Object.defineProperty(que,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return gfs.EXTENSION_OID_SCT}});Object.defineProperty(que,"X509Certificate",{enumerable:!0,get:function(){return gfs.X509Certificate}});var vEl=DKr();Object.defineProperty(que,"X509SCTExtension",{enumerable:!0,get:function(){return vEl.X509SCTExtension}})});var iW=H(q0=>{"use strict";var BEl=q0&&q0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wEl=q0&&q0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),j7e=q0&&q0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&BEl(t,e,r);return wEl(t,e),t};Object.defineProperty(q0,"__esModule",{value:!0});q0.X509SCTExtension=q0.X509Certificate=q0.EXTENSION_OID_SCT=q0.ByteStream=q0.RFC3161Timestamp=q0.pem=q0.json=q0.encoding=q0.dsse=q0.crypto=q0.ASN1Obj=void 0;var TEl=QFt();Object.defineProperty(q0,"ASN1Obj",{enumerable:!0,get:function(){return TEl.ASN1Obj}});q0.crypto=j7e(nFe());q0.dsse=j7e(jps());q0.encoding=j7e($ps());q0.json=j7e(efs());q0.pem=j7e(mKr());var REl=sfs();Object.defineProperty(q0,"RFC3161Timestamp",{enumerable:!0,get:function(){return REl.RFC3161Timestamp}});var NEl=J7e();Object.defineProperty(q0,"ByteStream",{enumerable:!0,get:function(){return NEl.ByteStream}});var xKr=Afs();Object.defineProperty(q0,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return xKr.EXTENSION_OID_SCT}});Object.defineProperty(q0,"X509Certificate",{enumerable:!0,get:function(){return xKr.X509Certificate}});Object.defineProperty(q0,"X509SCTExtension",{enumerable:!0,get:function(){return xKr.X509SCTExtension}})});var dfs=H(GKr=>{"use strict";Object.defineProperty(GKr,"__esModule",{value:!0});GKr.extractJWTSubject=kEl;var DEl=iW();function kEl(e){let t=e.split(".",3),r=JSON.parse(DEl.encoding.base64Decode(t[1]));switch(r.iss){case"https://accounts.google.com":case"https://oauth2.sigstore.dev/auth":return r.email;default:return r.sub}}});var pfs=H((Meg,xEl)=>{xEl.exports={name:"@sigstore/sign",version:"3.1.0",description:"Sigstore signing library",main:"dist/index.js",types:"dist/index.d.ts",scripts:{clean:"shx rm -rf dist *.tsbuildinfo",build:"tsc --build",test:"jest"},files:["dist"],author:"bdehamer@github.com",license:"Apache-2.0",repository:{type:"git",url:"git+https://github.com/sigstore/sigstore-js.git"},bugs:{url:"https://github.com/sigstore/sigstore-js/issues"},homepage:"https://github.com/sigstore/sigstore-js/tree/main/packages/sign#readme",publishConfig:{provenance:!0},devDependencies:{"@sigstore/jest":"^0.0.0","@sigstore/mock":"^0.10.0","@sigstore/rekor-types":"^3.0.0","@types/make-fetch-happen":"^10.0.4","@types/promise-retry":"^1.1.6"},dependencies:{"@sigstore/bundle":"^3.1.0","@sigstore/core":"^2.0.0","@sigstore/protobuf-specs":"^0.4.0","make-fetch-happen":"^14.0.2","proc-log":"^5.0.0","promise-retry":"^2.0.1"},engines:{node:"^18.17.0 || >=20.5.0"}}});var Ifs=H(sFe=>{"use strict";var GEl=sFe&&sFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sFe,"__esModule",{value:!0});sFe.getUserAgent=void 0;var ffs=GEl(Et("os")),FEl=()=>{let e=pfs().version,t=process.version,r=ffs.default.platform(),n=ffs.default.arch();return`sigstore-js/${e} (Node ${t}) (${r}/${n})`};sFe.getUserAgent=FEl});var $ue=H(oB=>{"use strict";var ZEl=oB&&oB.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LEl=oB&&oB.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hfs=oB&&oB.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(zFt,"__esModule",{value:!0});zFt.BaseBundleBuilder=void 0;var FKr=class{constructor(t){this.signer=t.signer,this.witnesses=t.witnesses}async create(t){let r=await this.prepare(t).then(A=>this.signer.sign(A)),n=await this.package(t,r),a=await Promise.all(this.witnesses.map(A=>A.testify(n.content,VEl(r.key)))),o=[],l=[];return a.forEach(({tlogEntries:A,rfc3161Timestamps:f})=>{o.push(...A??[]),l.push(...f??[])}),n.verificationMaterial.tlogEntries=o,n.verificationMaterial.timestampVerificationData={rfc3161Timestamps:l},n}async prepare(t){return t.data}};zFt.BaseBundleBuilder=FKr;function VEl(e){switch(e.$case){case"publicKey":return e.publicKey;case"x509Certificate":return e.certificate}}});var VKr=H(Oj=>{"use strict";var WEl=Oj&&Oj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OEl=Oj&&Oj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),PEl=Oj&&Oj.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(qFt,"__esModule",{value:!0});qFt.DSSEBundleBuilder=void 0;var YEl=$ue(),QEl=ZKr(),XEl=VKr(),WKr=class extends QEl.BaseBundleBuilder{constructor(t){super(t),this.certificateChain=t.certificateChain??!1}async prepare(t){let r=Cfs(t);return YEl.dsse.preAuthEncoding(r.type,r.data)}async package(t,r){return(0,XEl.toDSSEBundle)(Cfs(t),r,this.certificateChain)}};qFt.DSSEBundleBuilder=WKr;function Cfs(e){return{...e,type:e.type??""}}});var yfs=H($Ft=>{"use strict";Object.defineProperty($Ft,"__esModule",{value:!0});$Ft.MessageSignatureBundleBuilder=void 0;var JEl=ZKr(),UEl=VKr(),OKr=class extends JEl.BaseBundleBuilder{constructor(t){super(t)}async package(t,r){return(0,UEl.toMessageSignatureBundle)(t,r)}};$Ft.MessageSignatureBundleBuilder=OKr});var bfs=H(oFe=>{"use strict";Object.defineProperty(oFe,"__esModule",{value:!0});oFe.MessageSignatureBundleBuilder=oFe.DSSEBundleBuilder=void 0;var KEl=_fs();Object.defineProperty(oFe,"DSSEBundleBuilder",{enumerable:!0,get:function(){return KEl.DSSEBundleBuilder}});var jEl=yfs();Object.defineProperty(oFe,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return jEl.MessageSignatureBundleBuilder}})});var tZt=H(eZt=>{"use strict";Object.defineProperty(eZt,"__esModule",{value:!0});eZt.HTTPError=void 0;var PKr=class extends Error{constructor({status:t,message:r,location:n}){super(`(${t}) ${r}`),this.statusCode=t,this.location=n}};eZt.HTTPError=PKr});var aFe=H(q7e=>{"use strict";Object.defineProperty(q7e,"__esModule",{value:!0});q7e.InternalError=void 0;q7e.internalError=qEl;var zEl=tZt(),rZt=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.name=this.constructor.name,this.cause=n,this.code=t}};q7e.InternalError=rZt;function qEl(e,t,r){throw e instanceof zEl.HTTPError&&(r+=` - ${e.message}`),new rZt({code:t,message:r,cause:e})}});var MKr=H(cFe=>{"use strict";var $El=cFe&&cFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cFe,"__esModule",{value:!0});cFe.constants=void 0;var e1l=$El(Et("zlib")),t1l=e1l.default.constants||{ZLIB_VERNUM:4736};cFe.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},t1l))});var vfs=H(xm=>{"use strict";var r1l=xm&&xm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),n1l=xm&&xm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i1l=xm&&xm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;ae,HKr=Sfs?.writable===!0||Sfs?.set!==void 0?e=>{P0e.Buffer.concat=e?l1l:c1l}:e=>{},M0e=Symbol("_superWrite"),H0e=class extends Error{code;errno;constructor(t,r){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,r??this.constructor)}get name(){return"ZlibError"}};xm.ZlibError=H0e;var YKr=Symbol("flushFlag"),$7e=class extends o1l.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#n=t.flush??0,this.#r=t.finishFlush??0,this.#i=t.fullFlushFlag??0,typeof Efs[r]!="function")throw new TypeError("Compression method not supported: "+r);try{this.#s=new Efs[r](t)}catch(n){throw new H0e(n,this.constructor)}this.#o=n=>{this.#e||(this.#e=!0,this.close(),this.emit("error",n))},this.#s?.on("error",n=>this.#o(new H0e(n))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,QKr.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#i),this.write(Object.assign(P0e.Buffer.alloc(0),{[YKr]:t})))}end(t,r,n){return typeof t=="function"&&(n=t,r=void 0,t=void 0),typeof r=="function"&&(n=r,r=void 0),t&&(r?this.write(t,r):this.write(t)),this.flush(this.#r),this.#t=!0,super.end(n)}get ended(){return this.#t}[M0e](t){return super.write(t)}write(t,r,n){if(typeof r=="function"&&(n=r,r="utf8"),typeof t=="string"&&(t=P0e.Buffer.from(t,r)),this.#e)return;(0,QKr.default)(this.#s,"zlib binding closed");let a=this.#s._handle,o=a.close;a.close=()=>{};let l=this.#s.close;this.#s.close=()=>{},HKr(!0);let A;try{let I=typeof t[YKr]=="number"?t[YKr]:this.#n;A=this.#s._processChunk(t,I),HKr(!1)}catch(I){HKr(!1),this.#o(new H0e(I,this.write))}finally{this.#s&&(this.#s._handle=a,a.close=o,this.#s.close=l,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",I=>this.#o(new H0e(I,this.write)));let f;if(A)if(Array.isArray(A)&&A.length>0){let I=A[0];f=this[M0e](P0e.Buffer.from(I));for(let C=1;C{typeof a=="function"&&(o=a,a=this.flushFlag),this.flush(a),o?.()};try{this.handle.params(t,r)}finally{this.handle.flush=n}this.handle&&(this.#e=t,this.#t=r)}}}};xm.Zlib=Mj;var XKr=class extends Mj{constructor(t){super(t,"Deflate")}};xm.Deflate=XKr;var JKr=class extends Mj{constructor(t){super(t,"Inflate")}};xm.Inflate=JKr;var UKr=class extends Mj{#e;constructor(t){super(t,"Gzip"),this.#e=t&&!!t.portable}[M0e](t){return this.#e?(this.#e=!1,t[9]=255,super[M0e](t)):super[M0e](t)}};xm.Gzip=UKr;var KKr=class extends Mj{constructor(t){super(t,"Gunzip")}};xm.Gunzip=KKr;var jKr=class extends Mj{constructor(t){super(t,"DeflateRaw")}};xm.DeflateRaw=jKr;var zKr=class extends Mj{constructor(t){super(t,"InflateRaw")}};xm.InflateRaw=zKr;var qKr=class extends Mj{constructor(t){super(t,"Unzip")}};xm.Unzip=qKr;var nZt=class extends $7e{constructor(t,r){t=t||{},t.flush=t.flush||Pj.constants.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||Pj.constants.BROTLI_OPERATION_FINISH,t.fullFlushFlag=Pj.constants.BROTLI_OPERATION_FLUSH,super(t,r)}},$Kr=class extends nZt{constructor(t){super(t,"BrotliCompress")}};xm.BrotliCompress=$Kr;var e8r=class extends nZt{constructor(t){super(t,"BrotliDecompress")}};xm.BrotliDecompress=e8r;var iZt=class extends $7e{constructor(t,r){t=t||{},t.flush=t.flush||Pj.constants.ZSTD_e_continue,t.finishFlush=t.finishFlush||Pj.constants.ZSTD_e_end,t.fullFlushFlag=Pj.constants.ZSTD_e_flush,super(t,r)}},t8r=class extends iZt{constructor(t){super(t,"ZstdCompress")}};xm.ZstdCompress=t8r;var r8r=class extends iZt{constructor(t){super(t,"ZstdDecompress")}};xm.ZstdDecompress=r8r});var uZt=H((etg,Gfs)=>{"use strict";var Bfs=typeof process=="object"&&process?process:{stdout:null,stderr:null},u1l=Et("events"),wfs=Et("stream"),Tfs=Et("string_decoder").StringDecoder,lre=Symbol("EOF"),ure=Symbol("maybeEmitEnd"),ege=Symbol("emittedEnd"),sZt=Symbol("emittingEnd"),eze=Symbol("emittedError"),oZt=Symbol("closed"),Rfs=Symbol("read"),aZt=Symbol("flush"),Nfs=Symbol("flushChunk"),sW=Symbol("encoding"),gre=Symbol("decoder"),cZt=Symbol("flowing"),tze=Symbol("paused"),lFe=Symbol("resume"),RD=Symbol("bufferLength"),n8r=Symbol("bufferPush"),i8r=Symbol("bufferShift"),gF=Symbol("objectMode"),AF=Symbol("destroyed"),s8r=Symbol("emitData"),Dfs=Symbol("emitEnd"),o8r=Symbol("emitEnd2"),Are=Symbol("async"),rze=e=>Promise.resolve().then(e),kfs=global._MP_NO_ITERATOR_SYMBOLS_!=="1",g1l=kfs&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),A1l=kfs&&Symbol.iterator||Symbol("iterator not implemented"),d1l=e=>e==="end"||e==="finish"||e==="prefinish",p1l=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,f1l=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),lZt=class{constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[lFe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},a8r=class extends lZt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}};Gfs.exports=class xfs extends wfs{constructor(t){super(),this[cZt]=!1,this[tze]=!1,this.pipes=[],this.buffer=[],this[gF]=t&&t.objectMode||!1,this[gF]?this[sW]=null:this[sW]=t&&t.encoding||null,this[sW]==="buffer"&&(this[sW]=null),this[Are]=t&&!!t.async||!1,this[gre]=this[sW]?new Tfs(this[sW]):null,this[lre]=!1,this[ege]=!1,this[sZt]=!1,this[oZt]=!1,this[eze]=null,this.writable=!0,this.readable=!0,this[RD]=0,this[AF]=!1}get bufferLength(){return this[RD]}get encoding(){return this[sW]}set encoding(t){if(this[gF])throw new Error("cannot set encoding in objectMode");if(this[sW]&&t!==this[sW]&&(this[gre]&&this[gre].lastNeed||this[RD]))throw new Error("cannot change encoding");this[sW]!==t&&(this[gre]=t?new Tfs(t):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[gre].write(r)))),this[sW]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[gF]}set objectMode(t){this[gF]=this[gF]||!!t}get async(){return this[Are]}set async(t){this[Are]=this[Are]||!!t}write(t,r,n){if(this[lre])throw new Error("write after end");if(this[AF])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[Are]?rze:o=>o();return!this[gF]&&!Buffer.isBuffer(t)&&(f1l(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):p1l(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[gF]?(this.flowing&&this[RD]!==0&&this[aZt](!0),this.flowing?this.emit("data",t):this[n8r](t),this[RD]!==0&&this.emit("readable"),n&&a(n),this.flowing):t.length?(typeof t=="string"&&!(r===this[sW]&&!this[gre].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[sW]&&(t=this[gre].write(t)),this.flowing&&this[RD]!==0&&this[aZt](!0),this.flowing?this.emit("data",t):this[n8r](t),this[RD]!==0&&this.emit("readable"),n&&a(n),this.flowing):(this[RD]!==0&&this.emit("readable"),n&&a(n),this.flowing)}read(t){if(this[AF])return null;if(this[RD]===0||t===0||t>this[RD])return this[ure](),null;this[gF]&&(t=null),this.buffer.length>1&&!this[gF]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[RD])]);let r=this[Rfs](t||null,this.buffer[0]);return this[ure](),r}[Rfs](t,r){return t===r.length||t===null?this[i8r]():(this.buffer[0]=r.slice(t),r=r.slice(0,t),this[RD]-=t),this.emit("data",r),!this.buffer.length&&!this[lre]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r),n&&this.once("end",n),this[lre]=!0,this.writable=!1,(this.flowing||!this[tze])&&this[ure](),this}[lFe](){this[AF]||(this[tze]=!1,this[cZt]=!0,this.emit("resume"),this.buffer.length?this[aZt]():this[lre]?this[ure]():this.emit("drain"))}resume(){return this[lFe]()}pause(){this[cZt]=!1,this[tze]=!0}get destroyed(){return this[AF]}get flowing(){return this[cZt]}get paused(){return this[tze]}[n8r](t){this[gF]?this[RD]+=1:this[RD]+=t.length,this.buffer.push(t)}[i8r](){return this.buffer.length&&(this[gF]?this[RD]-=1:this[RD]-=this.buffer[0].length),this.buffer.shift()}[aZt](t){do;while(this[Nfs](this[i8r]()));!t&&!this.buffer.length&&!this[lre]&&this.emit("drain")}[Nfs](t){return t?(this.emit("data",t),this.flowing):!1}pipe(t,r){if(this[AF])return;let n=this[ege];return r=r||{},t===Bfs.stdout||t===Bfs.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this.pipes.push(r.proxyErrors?new a8r(this,t,r):new lZt(this,t,r)),this[Are]?rze(()=>this[lFe]()):this[lFe]()),t}unpipe(t){let r=this.pipes.find(n=>n.dest===t);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);return t==="data"&&!this.pipes.length&&!this.flowing?this[lFe]():t==="readable"&&this[RD]!==0?super.emit("readable"):d1l(t)&&this[ege]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[eze]&&(this[Are]?rze(()=>r.call(this,this[eze])):r.call(this,this[eze])),n}get emittedEnd(){return this[ege]}[ure](){!this[sZt]&&!this[ege]&&!this[AF]&&this.buffer.length===0&&this[lre]&&(this[sZt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[oZt]&&this.emit("close"),this[sZt]=!1)}emit(t,r,...n){if(t!=="error"&&t!=="close"&&t!==AF&&this[AF])return;if(t==="data")return r?this[Are]?rze(()=>this[s8r](r)):this[s8r](r):!1;if(t==="end")return this[Dfs]();if(t==="close"){if(this[oZt]=!0,!this[ege]&&!this[AF])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[eze]=r;let o=super.emit("error",r);return this[ure](),o}else if(t==="resume"){let o=super.emit("resume");return this[ure](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...n);return this[ure](),a}[s8r](t){for(let n of this.pipes)n.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[ure](),r}[Dfs](){this[ege]||(this[ege]=!0,this.readable=!1,this[Are]?rze(()=>this[o8r]()):this[o8r]())}[o8r](){if(this[gre]){let r=this[gre].end();if(r){for(let n of this.pipes)n.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[gF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[gF]||(t.dataLength+=n.length)}),r.then(()=>t)}concat(){return this[gF]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[gF]?Promise.reject(new Error("cannot concat in objectMode")):this[sW]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(AF,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[g1l](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[lre])return Promise.resolve({done:!0});let n=null,a=null,o=I=>{this.removeListener("data",l),this.removeListener("end",A),a(I)},l=I=>{this.removeListener("error",o),this.removeListener("end",A),this.pause(),n({value:I,done:!!this[lre]})},A=()=>{this.removeListener("error",o),this.removeListener("data",l),n({done:!0})},f=()=>o(new Error("stream destroyed"));return new Promise((I,C)=>{a=C,n=I,this.once(AF,f),this.once("error",o),this.once("end",A),this.once("data",l)})}}}[A1l](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(t){return this[AF]?(t?this.emit("error",t):this.emit(AF),this):(this[AF]=!0,this.buffer.length=0,this[RD]=0,typeof this.close=="function"&&!this[oZt]&&this.close(),t?this.emit("error",t):this.emit(AF),this)}static isStream(t){return!!t&&(t instanceof xfs||t instanceof wfs||t instanceof u1l&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}}});var Zfs=H((ttg,Ffs)=>{var I1l=uZt(),nze=class extends Error{constructor(t,r){super(`Bad data size: expected ${r} bytes, but got ${t}`),this.expect=r,this.found=t,this.code="EBADSIZE",Error.captureStackTrace(this,this.constructor)}get name(){return"SizeError"}},gZt=class extends I1l{constructor(t={}){if(super(t),t.objectMode)throw new TypeError(`${this.constructor.name} streams only work with string and buffer data`);if(this.found=0,this.expect=t.size,typeof this.expect!="number"||this.expect>Number.MAX_SAFE_INTEGER||isNaN(this.expect)||this.expect<0||!isFinite(this.expect)||this.expect!==Math.floor(this.expect))throw new Error("invalid expected size: "+this.expect)}write(t,r,n){let a=Buffer.isBuffer(t)?t:typeof t=="string"?Buffer.from(t,typeof r=="string"?r:"utf8"):t;return Buffer.isBuffer(a)?(this.found+=a.length,this.found>this.expect&&this.emit("error",new nze(this.found,this.expect)),super.write(t,r,n)):(this.emit("error",new TypeError(`${this.constructor.name} streams only work with string and buffer data`)),!1)}emit(t,...r){return t==="end"&&this.found!==this.expect&&this.emit("error",new nze(this.found,this.expect)),super.emit(t,...r)}};gZt.SizeError=nze;Ffs.exports=gZt});var Vfs=H((rtg,Lfs)=>{"use strict";var{Minipass:h1l}=cF(),c8r=Symbol("type"),dre=Symbol("buffer"),AZt=class e{constructor(t,r){this[c8r]="";let n=[],a=0;if(t){let l=t,A=Number(l.length);for(let f=0;f{"use strict";var l8r=class extends Error{constructor(t,r,n){super(t),this.code="FETCH_ERROR",n&&Object.assign(this,n),this.errno=this.code,this.type=this.code==="EBADSIZE"&&this.found>this.expect?"max-size":r,this.message=t,Error.captureStackTrace(this,this.constructor)}get name(){return"FetchError"}set name(t){}get[Symbol.toStringTag](){return"FetchError"}};Wfs.exports=l8r});var pre=H((itg,Ofs)=>{"use strict";var dZt=Et("buffer"),uFe=dZt.Buffer,KH={},jH;for(jH in dZt)dZt.hasOwnProperty(jH)&&(jH==="SlowBuffer"||jH==="Buffer"||(KH[jH]=dZt[jH]));var gFe=KH.Buffer={};for(jH in uFe)uFe.hasOwnProperty(jH)&&(jH==="allocUnsafe"||jH==="allocUnsafeSlow"||(gFe[jH]=uFe[jH]));KH.Buffer.prototype=uFe.prototype;(!gFe.from||gFe.from===Uint8Array.from)&&(gFe.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return uFe(e,t,r)});gFe.alloc||(gFe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=uFe(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!KH.kStringMaxLength)try{KH.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}KH.constants||(KH.constants={MAX_LENGTH:KH.kMaxLength},KH.kStringMaxLength&&(KH.constants.MAX_STRING_LENGTH=KH.kStringMaxLength));Ofs.exports=KH});var Mfs=H(d8r=>{"use strict";var Pfs="\uFEFF";d8r.PrependBOM=g8r;function g8r(e,t){this.encoder=e,this.addBOM=!0}g8r.prototype.write=function(e){return this.addBOM&&(e=Pfs+e,this.addBOM=!1),this.encoder.write(e)};g8r.prototype.end=function(){return this.encoder.end()};d8r.StripBOM=A8r;function A8r(e,t){this.decoder=e,this.pass=!1,this.options=t||{}}A8r.prototype.write=function(e){var t=this.decoder.write(e);return this.pass||!t||(t[0]===Pfs&&(t=t.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),t};A8r.prototype.end=function(){return this.decoder.end()}});var Yfs=H((otg,Hfs)=>{"use strict";var Y0e=pre().Buffer;Hfs.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:f8r};function f8r(e,t){this.enc=e.encodingName,this.bomAware=e.bomAware,this.enc==="base64"?this.encoder=m8r:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=C8r,Y0e.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=_8r,this.defaultCharUnicode=t.defaultCharUnicode))}f8r.prototype.encoder=h8r;f8r.prototype.decoder=I8r;var p8r=Et("string_decoder").StringDecoder;p8r.prototype.end||(p8r.prototype.end=function(){});function I8r(e,t){this.decoder=new p8r(t.enc)}I8r.prototype.write=function(e){return Y0e.isBuffer(e)||(e=Y0e.from(e)),this.decoder.write(e)};I8r.prototype.end=function(){return this.decoder.end()};function h8r(e,t){this.enc=t.enc}h8r.prototype.write=function(e){return Y0e.from(e,this.enc)};h8r.prototype.end=function(){};function m8r(e,t){this.prevStr=""}m8r.prototype.write=function(e){e=this.prevStr+e;var t=e.length-e.length%4;return this.prevStr=e.slice(t),e=e.slice(0,t),Y0e.from(e,"base64")};m8r.prototype.end=function(){return Y0e.from(this.prevStr,"base64")};function C8r(e,t){}C8r.prototype.write=function(e){for(var t=Y0e.alloc(e.length*3),r=0,n=0;n>>6),t[r++]=128+(a&63)):(t[r++]=224+(a>>>12),t[r++]=128+(a>>>6&63),t[r++]=128+(a&63))}return t.slice(0,r)};C8r.prototype.end=function(){};function _8r(e,t){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=t.defaultCharUnicode}_8r.prototype.write=function(e){for(var t=this.acc,r=this.contBytes,n=this.accBytes,a="",o=0;o0&&(a+=this.defaultCharUnicode,r=0),l<128?a+=String.fromCharCode(l):l<224?(t=l&31,r=1,n=1):l<240?(t=l&15,r=2,n=1):a+=this.defaultCharUnicode):r>0?(t=t<<6|l&63,r--,n++,r===0&&(n===2&&t<128&&t>0?a+=this.defaultCharUnicode:n===3&&t<2048?a+=this.defaultCharUnicode:a+=String.fromCharCode(t))):a+=this.defaultCharUnicode}return this.acc=t,this.contBytes=r,this.accBytes=n,a};_8r.prototype.end=function(){var e=0;return this.contBytes>0&&(e+=this.defaultCharUnicode),e}});var Jfs=H(tge=>{"use strict";var pZt=pre().Buffer;tge._utf32=y8r;function y8r(e,t){this.iconv=t,this.bomAware=!0,this.isLE=e.isLE}tge.utf32le={type:"_utf32",isLE:!0};tge.utf32be={type:"_utf32",isLE:!1};tge.ucs4le="utf32le";tge.ucs4be="utf32be";y8r.prototype.encoder=b8r;y8r.prototype.decoder=E8r;function b8r(e,t){this.isLE=t.isLE,this.highSurrogate=0}b8r.prototype.write=function(e){for(var t=pZt.from(e,"ucs2"),r=pZt.alloc(t.length*2),n=this.isLE?r.writeUInt32LE:r.writeUInt32BE,a=0,o=0;o0){for(;t1114111)&&(r=n),r>=65536){r-=65536;var a=55296|r>>10;e[t++]=a&255,e[t++]=a>>8;var r=56320|r&1023}return e[t++]=r&255,e[t++]=r>>8,t}E8r.prototype.end=function(){this.overflow.length=0};tge.utf32=S8r;tge.ucs4="utf32";function S8r(e,t){this.iconv=t}S8r.prototype.encoder=v8r;S8r.prototype.decoder=B8r;function v8r(e,t){e=e||{},e.addBOM===void 0&&(e.addBOM=!0),this.encoder=t.iconv.getEncoder(e.defaultEncoding||"utf-32le",e)}v8r.prototype.write=function(e){return this.encoder.write(e)};v8r.prototype.end=function(){return this.encoder.end()};function B8r(e,t){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=e||{},this.iconv=t.iconv}B8r.prototype.write=function(e){if(!this.decoder){if(this.initialBufs.push(e),this.initialBufsLen+=e.length,this.initialBufsLen<32)return"";var t=Xfs(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(t,this.options);for(var r="",n=0;n16)&&o++,(r[3]!==0||r[2]>16)&&a++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&A++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&l++,r.length=0,n++,n>=100)break e}return A-o>l-a?"utf-32be":A-o{"use strict";var Ufs=pre().Buffer;k8r.utf16be=fZt;function fZt(){}fZt.prototype.encoder=w8r;fZt.prototype.decoder=T8r;fZt.prototype.bomAware=!0;function w8r(){}w8r.prototype.write=function(e){for(var t=Ufs.from(e,"ucs2"),r=0;r=100)break e}return o>a?"utf-16be":o{"use strict";var Hj=pre().Buffer;mZt.utf7=IZt;mZt.unicode11utf7="utf7";function IZt(e,t){this.iconv=t}IZt.prototype.encoder=G8r;IZt.prototype.decoder=F8r;IZt.prototype.bomAware=!0;var m1l=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function G8r(e,t){this.iconv=t.iconv}G8r.prototype.write=function(e){return Hj.from(e.replace(m1l,function(t){return"+"+(t==="+"?"":this.iconv.encode(t,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};G8r.prototype.end=function(){};function F8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var C1l=/[A-Za-z0-9\/+]/,Z8r=[];for(ize=0;ize<256;ize++)Z8r[ize]=C1l.test(String.fromCharCode(ize));var ize,_1l=43,Q0e=45,x8r=38;F8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(Hj.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e};mZt.utf7imap=hZt;function hZt(e,t){this.iconv=t}hZt.prototype.encoder=L8r;hZt.prototype.decoder=V8r;hZt.prototype.bomAware=!0;function L8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=Hj.alloc(6),this.base64AccumIdx=0}L8r.prototype.write=function(e){for(var t=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,a=Hj.alloc(e.length*5+10),o=0,l=0;l0&&(o+=a.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),o),n=0),a[o++]=Q0e,t=!1),t||(a[o++]=A,A===x8r&&(a[o++]=Q0e))):(t||(a[o++]=x8r,t=!0),t&&(r[n++]=A>>8,r[n++]=A&255,n==r.length&&(o+=a.write(r.toString("base64").replace(/\//g,","),o),n=0)))}return this.inBase64=t,this.base64AccumIdx=n,a.slice(0,o)};L8r.prototype.end=function(){var e=Hj.alloc(10),t=0;return this.inBase64&&(this.base64AccumIdx>0&&(t+=e.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),t),this.base64AccumIdx=0),e[t++]=Q0e,this.inBase64=!1),e.slice(0,t)};function V8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var zfs=Z8r.slice();zfs[44]=!0;V8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(Hj.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e}});var eIs=H($fs=>{"use strict";var CZt=pre().Buffer;$fs._sbcs=W8r;function W8r(e,t){if(!e)throw new Error("SBCS codec is called without the data.");if(!e.chars||e.chars.length!==128&&e.chars.length!==256)throw new Error("Encoding '"+e.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(e.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);e.chars=r+e.chars}this.decodeBuf=CZt.from(e.chars,"ucs2");for(var a=CZt.alloc(65536,t.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";tIs.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var iIs=H((Atg,nIs)=>{"use strict";nIs.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b +`)}});var UFt=H(iFe=>{"use strict";Object.defineProperty(iFe,"__esModule",{value:!0});iFe.SHA2_HASH_ALGOS=iFe.ECDSA_SIGNATURE_ALGOS=void 0;iFe.ECDSA_SIGNATURE_ALGOS={"1.2.840.10045.4.3.1":"sha224","1.2.840.10045.4.3.2":"sha256","1.2.840.10045.4.3.3":"sha384","1.2.840.10045.4.3.4":"sha512"};iFe.SHA2_HASH_ALGOS={"2.16.840.1.101.3.4.2.1":"sha256","2.16.840.1.101.3.4.2.2":"sha384","2.16.840.1.101.3.4.2.3":"sha512"}});var BKr=H(KFt=>{"use strict";Object.defineProperty(KFt,"__esModule",{value:!0});KFt.RFC3161TimestampVerificationError=void 0;var vKr=class extends Error{};KFt.RFC3161TimestampVerificationError=vKr});var nfs=H(Vj=>{"use strict";var XEl=Vj&&Vj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),JEl=Vj&&Vj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),UEl=Vj&&Vj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&XEl(t,e,r);return JEl(t,e),t};Object.defineProperty(Vj,"__esModule",{value:!0});Vj.TSTInfo=void 0;var rfs=UEl(nFe()),KEl=UFt(),jEl=BKr(),wKr=class{constructor(t){this.root=t}get version(){return this.root.subs[0].toInteger()}get genTime(){return this.root.subs[4].toDate()}get messageImprintHashAlgorithm(){let t=this.messageImprintObj.subs[0].subs[0].toOID();return KEl.SHA2_HASH_ALGOS[t]}get messageImprintHashedMessage(){return this.messageImprintObj.subs[1].value}get raw(){return this.root.toDER()}verify(t){let r=rfs.digest(this.messageImprintHashAlgorithm,t);if(!rfs.bufferEqual(r,this.messageImprintHashedMessage))throw new jEl.RFC3161TimestampVerificationError("message imprint does not match artifact")}get messageImprintObj(){return this.root.subs[2]}};Vj.TSTInfo=wKr});var sfs=H(Wj=>{"use strict";var zEl=Wj&&Wj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),qEl=Wj&&Wj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),$El=Wj&&Wj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&zEl(t,e,r);return qEl(t,e),t};Object.defineProperty(Wj,"__esModule",{value:!0});Wj.RFC3161Timestamp=void 0;var e1l=QFt(),TKr=$El(nFe()),ifs=UFt(),U7e=BKr(),t1l=nfs(),r1l="1.2.840.113549.1.7.2",n1l="1.2.840.113549.1.9.16.1.4",i1l="1.2.840.113549.1.9.4",RKr=class e{constructor(t){this.root=t}static parse(t){let r=e1l.ASN1Obj.parseBuffer(t);return new e(r)}get status(){return this.pkiStatusInfoObj.subs[0].toInteger()}get contentType(){return this.contentTypeObj.toOID()}get eContentType(){return this.eContentTypeObj.toOID()}get signingTime(){return this.tstInfo.genTime}get signerIssuer(){return this.signerSidObj.subs[0].value}get signerSerialNumber(){return this.signerSidObj.subs[1].value}get signerDigestAlgorithm(){let t=this.signerDigestAlgorithmObj.subs[0].toOID();return ifs.SHA2_HASH_ALGOS[t]}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return ifs.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value}get tstInfo(){return new t1l.TSTInfo(this.eContentObj.subs[0].subs[0])}verify(t,r){if(!this.timeStampTokenObj)throw new U7e.RFC3161TimestampVerificationError("timeStampToken is missing");if(this.contentType!==r1l)throw new U7e.RFC3161TimestampVerificationError(`incorrect content type: ${this.contentType}`);if(this.eContentType!==n1l)throw new U7e.RFC3161TimestampVerificationError(`incorrect encapsulated content type: ${this.eContentType}`);this.tstInfo.verify(t),this.verifyMessageDigest(),this.verifySignature(r)}verifyMessageDigest(){let t=TKr.digest(this.signerDigestAlgorithm,this.tstInfo.raw),r=this.messageDigestAttributeObj.subs[1].subs[0].value;if(!TKr.bufferEqual(t,r))throw new U7e.RFC3161TimestampVerificationError("signed data does not match tstInfo")}verifySignature(t){let r=this.signedAttrsObj.toDER();if(r[0]=49,!TKr.verify(r,t,this.signatureValue,this.signatureAlgorithm))throw new U7e.RFC3161TimestampVerificationError("signature verification failed")}get pkiStatusInfoObj(){return this.root.subs[0]}get timeStampTokenObj(){return this.root.subs[1]}get contentTypeObj(){return this.timeStampTokenObj.subs[0]}get signedDataObj(){return this.timeStampTokenObj.subs.find(r=>r.tag.isContextSpecific(0)).subs[0]}get encapContentInfoObj(){return this.signedDataObj.subs[2]}get signerInfosObj(){let t=this.signedDataObj;return t.subs[t.subs.length-1]}get signerInfoObj(){return this.signerInfosObj.subs[0]}get eContentTypeObj(){return this.encapContentInfoObj.subs[0]}get eContentObj(){return this.encapContentInfoObj.subs[1]}get signedAttrsObj(){return this.signerInfoObj.subs.find(r=>r.tag.isContextSpecific(0))}get messageDigestAttributeObj(){return this.signedAttrsObj.subs.find(r=>r.subs[0].tag.isOID()&&r.subs[0].toOID()===i1l)}get signerSidObj(){return this.signerInfoObj.subs[1]}get signerDigestAlgorithmObj(){return this.signerInfoObj.subs[2]}get signatureAlgorithmObj(){return this.signerInfoObj.subs[4]}get signatureValueObj(){return this.signerInfoObj.subs[5]}};Wj.RFC3161Timestamp=RKr});var ofs=H(jFt=>{"use strict";Object.defineProperty(jFt,"__esModule",{value:!0});jFt.RFC3161Timestamp=void 0;var s1l=sfs();Object.defineProperty(jFt,"RFC3161Timestamp",{enumerable:!0,get:function(){return s1l.RFC3161Timestamp}})});var cfs=H(Oj=>{"use strict";var o1l=Oj&&Oj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),a1l=Oj&&Oj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),c1l=Oj&&Oj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&o1l(t,e,r);return a1l(t,e),t};Object.defineProperty(Oj,"__esModule",{value:!0});Oj.SignedCertificateTimestamp=void 0;var l1l=c1l(nFe()),afs=X7e(),NKr=class e{constructor(t){this.version=t.version,this.logID=t.logID,this.timestamp=t.timestamp,this.extensions=t.extensions,this.hashAlgorithm=t.hashAlgorithm,this.signatureAlgorithm=t.signatureAlgorithm,this.signature=t.signature}get datetime(){return new Date(Number(this.timestamp.readBigInt64BE()))}get algorithm(){switch(this.hashAlgorithm){case 0:return"none";case 1:return"md5";case 2:return"sha1";case 3:return"sha224";case 4:return"sha256";case 5:return"sha384";case 6:return"sha512";default:return"unknown"}}verify(t,r){let n=new afs.ByteStream;return n.appendChar(this.version),n.appendChar(0),n.appendView(this.timestamp),n.appendUint16(1),n.appendView(t),n.appendUint16(this.extensions.byteLength),this.extensions.byteLength>0&&n.appendView(this.extensions),l1l.verify(n.buffer,r,this.signature,this.algorithm)}static parse(t){let r=new afs.ByteStream(t),n=r.getUint8(),a=r.getBlock(32),o=r.getBlock(8),l=r.getUint16(),A=r.getBlock(l),f=r.getUint8(),I=r.getUint8(),C=r.getUint16(),b=r.getBlock(C);if(r.position!==t.length)throw new Error("SCT buffer length mismatch");return new e({version:n,logID:a,timestamp:o,extensions:A,hashAlgorithm:f,signatureAlgorithm:I,signature:b})}};Oj.SignedCertificateTimestamp=NKr});var LKr=H(gF=>{"use strict";Object.defineProperty(gF,"__esModule",{value:!0});gF.X509SCTExtension=gF.X509SubjectKeyIDExtension=gF.X509AuthorityKeyIDExtension=gF.X509SubjectAlternativeNameExtension=gF.X509KeyUsageExtension=gF.X509BasicConstraintsExtension=gF.X509Extension=void 0;var u1l=X7e(),g1l=cfs(),lre=class{constructor(t){this.root=t}get oid(){return this.root.subs[0].toOID()}get critical(){return this.root.subs.length===3?this.root.subs[1].toBoolean():!1}get value(){return this.extnValueObj.value}get valueObj(){return this.extnValueObj}get extnValueObj(){return this.root.subs[this.root.subs.length-1]}};gF.X509Extension=lre;var DKr=class extends lre{get isCA(){return this.sequence.subs[0]?.toBoolean()??!1}get pathLenConstraint(){return this.sequence.subs.length>1?this.sequence.subs[1].toInteger():void 0}get sequence(){return this.extnValueObj.subs[0]}};gF.X509BasicConstraintsExtension=DKr;var kKr=class extends lre{get digitalSignature(){return this.bitString[0]===1}get keyCertSign(){return this.bitString[5]===1}get crlSign(){return this.bitString[6]===1}get bitString(){return this.extnValueObj.subs[0].toBitString()}};gF.X509KeyUsageExtension=kKr;var xKr=class extends lre{get rfc822Name(){return this.findGeneralName(1)?.value.toString("ascii")}get uri(){return this.findGeneralName(6)?.value.toString("ascii")}otherName(t){let r=this.findGeneralName(0);return r===void 0||r.subs[0].toOID()!==t?void 0:r.subs[1].subs[0].value.toString("ascii")}findGeneralName(t){return this.generalNames.find(r=>r.tag.isContextSpecific(t))}get generalNames(){return this.extnValueObj.subs[0].subs}};gF.X509SubjectAlternativeNameExtension=xKr;var GKr=class extends lre{get keyIdentifier(){return this.findSequenceMember(0)?.value}findSequenceMember(t){return this.sequence.subs.find(r=>r.tag.isContextSpecific(t))}get sequence(){return this.extnValueObj.subs[0]}};gF.X509AuthorityKeyIDExtension=GKr;var FKr=class extends lre{get keyIdentifier(){return this.extnValueObj.subs[0].value}};gF.X509SubjectKeyIDExtension=FKr;var ZKr=class extends lre{constructor(t){super(t)}get signedCertificateTimestamps(){let t=this.extnValueObj.subs[0].value,r=new u1l.ByteStream(t),n=r.getUint16()+2,a=[];for(;r.position{"use strict";var A1l=e3&&e3.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),d1l=e3&&e3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ufs=e3&&e3.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&A1l(t,e,r);return d1l(t,e),t};Object.defineProperty(e3,"__esModule",{value:!0});e3.X509Certificate=e3.EXTENSION_OID_SCT=void 0;var p1l=QFt(),lfs=ufs(nFe()),f1l=UFt(),I1l=ufs(SKr()),O0e=LKr(),h1l="2.5.29.14",m1l="2.5.29.15",C1l="2.5.29.17",_1l="2.5.29.19",y1l="2.5.29.35";e3.EXTENSION_OID_SCT="1.3.6.1.4.1.11129.2.4.2";var VKr=class e{constructor(t){this.root=t}static parse(t){let r=typeof t=="string"?I1l.toDER(t):t,n=p1l.ASN1Obj.parseBuffer(r);return new e(n)}get tbsCertificate(){return this.tbsCertificateObj}get version(){return`v${(this.versionObj.subs[0].toInteger()+BigInt(1)).toString()}`}get serialNumber(){return this.serialNumberObj.value}get notBefore(){return this.validityObj.subs[0].toDate()}get notAfter(){return this.validityObj.subs[1].toDate()}get issuer(){return this.issuerObj.value}get subject(){return this.subjectObj.value}get publicKey(){return this.subjectPublicKeyInfoObj.toDER()}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return f1l.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value.subarray(1)}get subjectAltName(){let t=this.extSubjectAltName;return t?.uri||t?.rfc822Name}get extensions(){return this.extensionsObj?.subs[0]?.subs||[]}get extKeyUsage(){let t=this.findExtension(m1l);return t?new O0e.X509KeyUsageExtension(t):void 0}get extBasicConstraints(){let t=this.findExtension(_1l);return t?new O0e.X509BasicConstraintsExtension(t):void 0}get extSubjectAltName(){let t=this.findExtension(C1l);return t?new O0e.X509SubjectAlternativeNameExtension(t):void 0}get extAuthorityKeyID(){let t=this.findExtension(y1l);return t?new O0e.X509AuthorityKeyIDExtension(t):void 0}get extSubjectKeyID(){let t=this.findExtension(h1l);return t?new O0e.X509SubjectKeyIDExtension(t):void 0}get extSCT(){let t=this.findExtension(e3.EXTENSION_OID_SCT);return t?new O0e.X509SCTExtension(t):void 0}get isCA(){let t=this.extBasicConstraints?.isCA||!1;return this.extKeyUsage?t&&this.extKeyUsage.keyCertSign:t}extension(t){let r=this.findExtension(t);return r?new O0e.X509Extension(r):void 0}verify(t){let r=t?.publicKey||this.publicKey,n=lfs.createPublicKey(r);return lfs.verify(this.tbsCertificate.toDER(),n,this.signatureValue,this.signatureAlgorithm)}validForDate(t){return this.notBefore<=t&&t<=this.notAfter}equals(t){return this.root.toDER().equals(t.root.toDER())}clone(){let t=this.root.toDER(),r=Buffer.alloc(t.length);return t.copy(r),e.parse(r)}findExtension(t){return this.extensions.find(r=>r.subs[0].toOID()===t)}get tbsCertificateObj(){return this.root.subs[0]}get signatureAlgorithmObj(){return this.root.subs[1]}get signatureValueObj(){return this.root.subs[2]}get versionObj(){return this.tbsCertificateObj.subs[0]}get serialNumberObj(){return this.tbsCertificateObj.subs[1]}get issuerObj(){return this.tbsCertificateObj.subs[3]}get validityObj(){return this.tbsCertificateObj.subs[4]}get subjectObj(){return this.tbsCertificateObj.subs[5]}get subjectPublicKeyInfoObj(){return this.tbsCertificateObj.subs[6]}get extensionsObj(){return this.tbsCertificateObj.subs.find(t=>t.tag.isContextSpecific(3))}};e3.X509Certificate=VKr});var dfs=H($ue=>{"use strict";Object.defineProperty($ue,"__esModule",{value:!0});$ue.X509SCTExtension=$ue.X509Certificate=$ue.EXTENSION_OID_SCT=void 0;var Afs=gfs();Object.defineProperty($ue,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return Afs.EXTENSION_OID_SCT}});Object.defineProperty($ue,"X509Certificate",{enumerable:!0,get:function(){return Afs.X509Certificate}});var b1l=LKr();Object.defineProperty($ue,"X509SCTExtension",{enumerable:!0,get:function(){return b1l.X509SCTExtension}})});var sW=H($0=>{"use strict";var E1l=$0&&$0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),S1l=$0&&$0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),K7e=$0&&$0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&E1l(t,e,r);return S1l(t,e),t};Object.defineProperty($0,"__esModule",{value:!0});$0.X509SCTExtension=$0.X509Certificate=$0.EXTENSION_OID_SCT=$0.ByteStream=$0.RFC3161Timestamp=$0.pem=$0.json=$0.encoding=$0.dsse=$0.crypto=$0.ASN1Obj=void 0;var v1l=QFt();Object.defineProperty($0,"ASN1Obj",{enumerable:!0,get:function(){return v1l.ASN1Obj}});$0.crypto=K7e(nFe());$0.dsse=K7e(zps());$0.encoding=K7e(efs());$0.json=K7e(tfs());$0.pem=K7e(SKr());var B1l=ofs();Object.defineProperty($0,"RFC3161Timestamp",{enumerable:!0,get:function(){return B1l.RFC3161Timestamp}});var w1l=X7e();Object.defineProperty($0,"ByteStream",{enumerable:!0,get:function(){return w1l.ByteStream}});var WKr=dfs();Object.defineProperty($0,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return WKr.EXTENSION_OID_SCT}});Object.defineProperty($0,"X509Certificate",{enumerable:!0,get:function(){return WKr.X509Certificate}});Object.defineProperty($0,"X509SCTExtension",{enumerable:!0,get:function(){return WKr.X509SCTExtension}})});var pfs=H(OKr=>{"use strict";Object.defineProperty(OKr,"__esModule",{value:!0});OKr.extractJWTSubject=R1l;var T1l=sW();function R1l(e){let t=e.split(".",3),r=JSON.parse(T1l.encoding.base64Decode(t[1]));switch(r.iss){case"https://accounts.google.com":case"https://oauth2.sigstore.dev/auth":return r.email;default:return r.sub}}});var ffs=H((nrg,N1l)=>{N1l.exports={name:"@sigstore/sign",version:"3.1.0",description:"Sigstore signing library",main:"dist/index.js",types:"dist/index.d.ts",scripts:{clean:"shx rm -rf dist *.tsbuildinfo",build:"tsc --build",test:"jest"},files:["dist"],author:"bdehamer@github.com",license:"Apache-2.0",repository:{type:"git",url:"git+https://github.com/sigstore/sigstore-js.git"},bugs:{url:"https://github.com/sigstore/sigstore-js/issues"},homepage:"https://github.com/sigstore/sigstore-js/tree/main/packages/sign#readme",publishConfig:{provenance:!0},devDependencies:{"@sigstore/jest":"^0.0.0","@sigstore/mock":"^0.10.0","@sigstore/rekor-types":"^3.0.0","@types/make-fetch-happen":"^10.0.4","@types/promise-retry":"^1.1.6"},dependencies:{"@sigstore/bundle":"^3.1.0","@sigstore/core":"^2.0.0","@sigstore/protobuf-specs":"^0.4.0","make-fetch-happen":"^14.0.2","proc-log":"^5.0.0","promise-retry":"^2.0.1"},engines:{node:"^18.17.0 || >=20.5.0"}}});var hfs=H(sFe=>{"use strict";var D1l=sFe&&sFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sFe,"__esModule",{value:!0});sFe.getUserAgent=void 0;var Ifs=D1l(Et("os")),k1l=()=>{let e=ffs().version,t=process.version,r=Ifs.default.platform(),n=Ifs.default.arch();return`sigstore-js/${e} (Node ${t}) (${r}/${n})`};sFe.getUserAgent=k1l});var ege=H(aB=>{"use strict";var x1l=aB&&aB.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),G1l=aB&&aB.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),mfs=aB&&aB.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(zFt,"__esModule",{value:!0});zFt.BaseBundleBuilder=void 0;var PKr=class{constructor(t){this.signer=t.signer,this.witnesses=t.witnesses}async create(t){let r=await this.prepare(t).then(A=>this.signer.sign(A)),n=await this.package(t,r),a=await Promise.all(this.witnesses.map(A=>A.testify(n.content,F1l(r.key)))),o=[],l=[];return a.forEach(({tlogEntries:A,rfc3161Timestamps:f})=>{o.push(...A??[]),l.push(...f??[])}),n.verificationMaterial.tlogEntries=o,n.verificationMaterial.timestampVerificationData={rfc3161Timestamps:l},n}async prepare(t){return t.data}};zFt.BaseBundleBuilder=PKr;function F1l(e){switch(e.$case){case"publicKey":return e.publicKey;case"x509Certificate":return e.certificate}}});var YKr=H(Pj=>{"use strict";var Z1l=Pj&&Pj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),L1l=Pj&&Pj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),V1l=Pj&&Pj.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(qFt,"__esModule",{value:!0});qFt.DSSEBundleBuilder=void 0;var P1l=ege(),M1l=MKr(),H1l=YKr(),QKr=class extends M1l.BaseBundleBuilder{constructor(t){super(t),this.certificateChain=t.certificateChain??!1}async prepare(t){let r=_fs(t);return P1l.dsse.preAuthEncoding(r.type,r.data)}async package(t,r){return(0,H1l.toDSSEBundle)(_fs(t),r,this.certificateChain)}};qFt.DSSEBundleBuilder=QKr;function _fs(e){return{...e,type:e.type??""}}});var bfs=H($Ft=>{"use strict";Object.defineProperty($Ft,"__esModule",{value:!0});$Ft.MessageSignatureBundleBuilder=void 0;var Y1l=MKr(),Q1l=YKr(),XKr=class extends Y1l.BaseBundleBuilder{constructor(t){super(t)}async package(t,r){return(0,Q1l.toMessageSignatureBundle)(t,r)}};$Ft.MessageSignatureBundleBuilder=XKr});var Efs=H(oFe=>{"use strict";Object.defineProperty(oFe,"__esModule",{value:!0});oFe.MessageSignatureBundleBuilder=oFe.DSSEBundleBuilder=void 0;var X1l=yfs();Object.defineProperty(oFe,"DSSEBundleBuilder",{enumerable:!0,get:function(){return X1l.DSSEBundleBuilder}});var J1l=bfs();Object.defineProperty(oFe,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return J1l.MessageSignatureBundleBuilder}})});var tZt=H(eZt=>{"use strict";Object.defineProperty(eZt,"__esModule",{value:!0});eZt.HTTPError=void 0;var JKr=class extends Error{constructor({status:t,message:r,location:n}){super(`(${t}) ${r}`),this.statusCode=t,this.location=n}};eZt.HTTPError=JKr});var aFe=H(z7e=>{"use strict";Object.defineProperty(z7e,"__esModule",{value:!0});z7e.InternalError=void 0;z7e.internalError=K1l;var U1l=tZt(),rZt=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.name=this.constructor.name,this.cause=n,this.code=t}};z7e.InternalError=rZt;function K1l(e,t,r){throw e instanceof U1l.HTTPError&&(r+=` - ${e.message}`),new rZt({code:t,message:r,cause:e})}});var UKr=H(cFe=>{"use strict";var j1l=cFe&&cFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cFe,"__esModule",{value:!0});cFe.constants=void 0;var z1l=j1l(Et("zlib")),q1l=z1l.default.constants||{ZLIB_VERNUM:4736};cFe.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},q1l))});var Bfs=H(xm=>{"use strict";var $1l=xm&&xm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),e2l=xm&&xm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),t2l=xm&&xm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;ae,KKr=vfs?.writable===!0||vfs?.set!==void 0?e=>{P0e.Buffer.concat=e?o2l:s2l}:e=>{},M0e=Symbol("_superWrite"),H0e=class extends Error{code;errno;constructor(t,r){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,r??this.constructor)}get name(){return"ZlibError"}};xm.ZlibError=H0e;var jKr=Symbol("flushFlag"),q7e=class extends n2l.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#n=t.flush??0,this.#r=t.finishFlush??0,this.#i=t.fullFlushFlag??0,typeof Sfs[r]!="function")throw new TypeError("Compression method not supported: "+r);try{this.#s=new Sfs[r](t)}catch(n){throw new H0e(n,this.constructor)}this.#o=n=>{this.#e||(this.#e=!0,this.close(),this.emit("error",n))},this.#s?.on("error",n=>this.#o(new H0e(n))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,zKr.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#i),this.write(Object.assign(P0e.Buffer.alloc(0),{[jKr]:t})))}end(t,r,n){return typeof t=="function"&&(n=t,r=void 0,t=void 0),typeof r=="function"&&(n=r,r=void 0),t&&(r?this.write(t,r):this.write(t)),this.flush(this.#r),this.#t=!0,super.end(n)}get ended(){return this.#t}[M0e](t){return super.write(t)}write(t,r,n){if(typeof r=="function"&&(n=r,r="utf8"),typeof t=="string"&&(t=P0e.Buffer.from(t,r)),this.#e)return;(0,zKr.default)(this.#s,"zlib binding closed");let a=this.#s._handle,o=a.close;a.close=()=>{};let l=this.#s.close;this.#s.close=()=>{},KKr(!0);let A;try{let I=typeof t[jKr]=="number"?t[jKr]:this.#n;A=this.#s._processChunk(t,I),KKr(!1)}catch(I){KKr(!1),this.#o(new H0e(I,this.write))}finally{this.#s&&(this.#s._handle=a,a.close=o,this.#s.close=l,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",I=>this.#o(new H0e(I,this.write)));let f;if(A)if(Array.isArray(A)&&A.length>0){let I=A[0];f=this[M0e](P0e.Buffer.from(I));for(let C=1;C{typeof a=="function"&&(o=a,a=this.flushFlag),this.flush(a),o?.()};try{this.handle.params(t,r)}finally{this.handle.flush=n}this.handle&&(this.#e=t,this.#t=r)}}}};xm.Zlib=Hj;var qKr=class extends Hj{constructor(t){super(t,"Deflate")}};xm.Deflate=qKr;var $Kr=class extends Hj{constructor(t){super(t,"Inflate")}};xm.Inflate=$Kr;var e8r=class extends Hj{#e;constructor(t){super(t,"Gzip"),this.#e=t&&!!t.portable}[M0e](t){return this.#e?(this.#e=!1,t[9]=255,super[M0e](t)):super[M0e](t)}};xm.Gzip=e8r;var t8r=class extends Hj{constructor(t){super(t,"Gunzip")}};xm.Gunzip=t8r;var r8r=class extends Hj{constructor(t){super(t,"DeflateRaw")}};xm.DeflateRaw=r8r;var n8r=class extends Hj{constructor(t){super(t,"InflateRaw")}};xm.InflateRaw=n8r;var i8r=class extends Hj{constructor(t){super(t,"Unzip")}};xm.Unzip=i8r;var nZt=class extends q7e{constructor(t,r){t=t||{},t.flush=t.flush||Mj.constants.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||Mj.constants.BROTLI_OPERATION_FINISH,t.fullFlushFlag=Mj.constants.BROTLI_OPERATION_FLUSH,super(t,r)}},s8r=class extends nZt{constructor(t){super(t,"BrotliCompress")}};xm.BrotliCompress=s8r;var o8r=class extends nZt{constructor(t){super(t,"BrotliDecompress")}};xm.BrotliDecompress=o8r;var iZt=class extends q7e{constructor(t,r){t=t||{},t.flush=t.flush||Mj.constants.ZSTD_e_continue,t.finishFlush=t.finishFlush||Mj.constants.ZSTD_e_end,t.fullFlushFlag=Mj.constants.ZSTD_e_flush,super(t,r)}},a8r=class extends iZt{constructor(t){super(t,"ZstdCompress")}};xm.ZstdCompress=a8r;var c8r=class extends iZt{constructor(t){super(t,"ZstdDecompress")}};xm.ZstdDecompress=c8r});var uZt=H((Irg,Ffs)=>{"use strict";var wfs=typeof process=="object"&&process?process:{stdout:null,stderr:null},a2l=Et("events"),Tfs=Et("stream"),Rfs=Et("string_decoder").StringDecoder,ure=Symbol("EOF"),gre=Symbol("maybeEmitEnd"),tge=Symbol("emittedEnd"),sZt=Symbol("emittingEnd"),$7e=Symbol("emittedError"),oZt=Symbol("closed"),Nfs=Symbol("read"),aZt=Symbol("flush"),Dfs=Symbol("flushChunk"),oW=Symbol("encoding"),Are=Symbol("decoder"),cZt=Symbol("flowing"),eze=Symbol("paused"),lFe=Symbol("resume"),ND=Symbol("bufferLength"),l8r=Symbol("bufferPush"),u8r=Symbol("bufferShift"),AF=Symbol("objectMode"),dF=Symbol("destroyed"),g8r=Symbol("emitData"),kfs=Symbol("emitEnd"),A8r=Symbol("emitEnd2"),dre=Symbol("async"),tze=e=>Promise.resolve().then(e),xfs=global._MP_NO_ITERATOR_SYMBOLS_!=="1",c2l=xfs&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),l2l=xfs&&Symbol.iterator||Symbol("iterator not implemented"),u2l=e=>e==="end"||e==="finish"||e==="prefinish",g2l=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,A2l=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),lZt=class{constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[lFe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},d8r=class extends lZt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}};Ffs.exports=class Gfs extends Tfs{constructor(t){super(),this[cZt]=!1,this[eze]=!1,this.pipes=[],this.buffer=[],this[AF]=t&&t.objectMode||!1,this[AF]?this[oW]=null:this[oW]=t&&t.encoding||null,this[oW]==="buffer"&&(this[oW]=null),this[dre]=t&&!!t.async||!1,this[Are]=this[oW]?new Rfs(this[oW]):null,this[ure]=!1,this[tge]=!1,this[sZt]=!1,this[oZt]=!1,this[$7e]=null,this.writable=!0,this.readable=!0,this[ND]=0,this[dF]=!1}get bufferLength(){return this[ND]}get encoding(){return this[oW]}set encoding(t){if(this[AF])throw new Error("cannot set encoding in objectMode");if(this[oW]&&t!==this[oW]&&(this[Are]&&this[Are].lastNeed||this[ND]))throw new Error("cannot change encoding");this[oW]!==t&&(this[Are]=t?new Rfs(t):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[Are].write(r)))),this[oW]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[AF]}set objectMode(t){this[AF]=this[AF]||!!t}get async(){return this[dre]}set async(t){this[dre]=this[dre]||!!t}write(t,r,n){if(this[ure])throw new Error("write after end");if(this[dF])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[dre]?tze:o=>o();return!this[AF]&&!Buffer.isBuffer(t)&&(A2l(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):g2l(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[AF]?(this.flowing&&this[ND]!==0&&this[aZt](!0),this.flowing?this.emit("data",t):this[l8r](t),this[ND]!==0&&this.emit("readable"),n&&a(n),this.flowing):t.length?(typeof t=="string"&&!(r===this[oW]&&!this[Are].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[oW]&&(t=this[Are].write(t)),this.flowing&&this[ND]!==0&&this[aZt](!0),this.flowing?this.emit("data",t):this[l8r](t),this[ND]!==0&&this.emit("readable"),n&&a(n),this.flowing):(this[ND]!==0&&this.emit("readable"),n&&a(n),this.flowing)}read(t){if(this[dF])return null;if(this[ND]===0||t===0||t>this[ND])return this[gre](),null;this[AF]&&(t=null),this.buffer.length>1&&!this[AF]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[ND])]);let r=this[Nfs](t||null,this.buffer[0]);return this[gre](),r}[Nfs](t,r){return t===r.length||t===null?this[u8r]():(this.buffer[0]=r.slice(t),r=r.slice(0,t),this[ND]-=t),this.emit("data",r),!this.buffer.length&&!this[ure]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r),n&&this.once("end",n),this[ure]=!0,this.writable=!1,(this.flowing||!this[eze])&&this[gre](),this}[lFe](){this[dF]||(this[eze]=!1,this[cZt]=!0,this.emit("resume"),this.buffer.length?this[aZt]():this[ure]?this[gre]():this.emit("drain"))}resume(){return this[lFe]()}pause(){this[cZt]=!1,this[eze]=!0}get destroyed(){return this[dF]}get flowing(){return this[cZt]}get paused(){return this[eze]}[l8r](t){this[AF]?this[ND]+=1:this[ND]+=t.length,this.buffer.push(t)}[u8r](){return this.buffer.length&&(this[AF]?this[ND]-=1:this[ND]-=this.buffer[0].length),this.buffer.shift()}[aZt](t){do;while(this[Dfs](this[u8r]()));!t&&!this.buffer.length&&!this[ure]&&this.emit("drain")}[Dfs](t){return t?(this.emit("data",t),this.flowing):!1}pipe(t,r){if(this[dF])return;let n=this[tge];return r=r||{},t===wfs.stdout||t===wfs.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this.pipes.push(r.proxyErrors?new d8r(this,t,r):new lZt(this,t,r)),this[dre]?tze(()=>this[lFe]()):this[lFe]()),t}unpipe(t){let r=this.pipes.find(n=>n.dest===t);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);return t==="data"&&!this.pipes.length&&!this.flowing?this[lFe]():t==="readable"&&this[ND]!==0?super.emit("readable"):u2l(t)&&this[tge]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[$7e]&&(this[dre]?tze(()=>r.call(this,this[$7e])):r.call(this,this[$7e])),n}get emittedEnd(){return this[tge]}[gre](){!this[sZt]&&!this[tge]&&!this[dF]&&this.buffer.length===0&&this[ure]&&(this[sZt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[oZt]&&this.emit("close"),this[sZt]=!1)}emit(t,r,...n){if(t!=="error"&&t!=="close"&&t!==dF&&this[dF])return;if(t==="data")return r?this[dre]?tze(()=>this[g8r](r)):this[g8r](r):!1;if(t==="end")return this[kfs]();if(t==="close"){if(this[oZt]=!0,!this[tge]&&!this[dF])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[$7e]=r;let o=super.emit("error",r);return this[gre](),o}else if(t==="resume"){let o=super.emit("resume");return this[gre](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...n);return this[gre](),a}[g8r](t){for(let n of this.pipes)n.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[gre](),r}[kfs](){this[tge]||(this[tge]=!0,this.readable=!1,this[dre]?tze(()=>this[A8r]()):this[A8r]())}[A8r](){if(this[Are]){let r=this[Are].end();if(r){for(let n of this.pipes)n.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[AF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[AF]||(t.dataLength+=n.length)}),r.then(()=>t)}concat(){return this[AF]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[AF]?Promise.reject(new Error("cannot concat in objectMode")):this[oW]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(dF,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[c2l](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[ure])return Promise.resolve({done:!0});let n=null,a=null,o=I=>{this.removeListener("data",l),this.removeListener("end",A),a(I)},l=I=>{this.removeListener("error",o),this.removeListener("end",A),this.pause(),n({value:I,done:!!this[ure]})},A=()=>{this.removeListener("error",o),this.removeListener("data",l),n({done:!0})},f=()=>o(new Error("stream destroyed"));return new Promise((I,C)=>{a=C,n=I,this.once(dF,f),this.once("error",o),this.once("end",A),this.once("data",l)})}}}[l2l](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(t){return this[dF]?(t?this.emit("error",t):this.emit(dF),this):(this[dF]=!0,this.buffer.length=0,this[ND]=0,typeof this.close=="function"&&!this[oZt]&&this.close(),t?this.emit("error",t):this.emit(dF),this)}static isStream(t){return!!t&&(t instanceof Gfs||t instanceof Tfs||t instanceof a2l&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}}});var Lfs=H((hrg,Zfs)=>{var d2l=uZt(),rze=class extends Error{constructor(t,r){super(`Bad data size: expected ${r} bytes, but got ${t}`),this.expect=r,this.found=t,this.code="EBADSIZE",Error.captureStackTrace(this,this.constructor)}get name(){return"SizeError"}},gZt=class extends d2l{constructor(t={}){if(super(t),t.objectMode)throw new TypeError(`${this.constructor.name} streams only work with string and buffer data`);if(this.found=0,this.expect=t.size,typeof this.expect!="number"||this.expect>Number.MAX_SAFE_INTEGER||isNaN(this.expect)||this.expect<0||!isFinite(this.expect)||this.expect!==Math.floor(this.expect))throw new Error("invalid expected size: "+this.expect)}write(t,r,n){let a=Buffer.isBuffer(t)?t:typeof t=="string"?Buffer.from(t,typeof r=="string"?r:"utf8"):t;return Buffer.isBuffer(a)?(this.found+=a.length,this.found>this.expect&&this.emit("error",new rze(this.found,this.expect)),super.write(t,r,n)):(this.emit("error",new TypeError(`${this.constructor.name} streams only work with string and buffer data`)),!1)}emit(t,...r){return t==="end"&&this.found!==this.expect&&this.emit("error",new rze(this.found,this.expect)),super.emit(t,...r)}};gZt.SizeError=rze;Zfs.exports=gZt});var Wfs=H((mrg,Vfs)=>{"use strict";var{Minipass:p2l}=lF(),p8r=Symbol("type"),pre=Symbol("buffer"),AZt=class e{constructor(t,r){this[p8r]="";let n=[],a=0;if(t){let l=t,A=Number(l.length);for(let f=0;f{"use strict";var f8r=class extends Error{constructor(t,r,n){super(t),this.code="FETCH_ERROR",n&&Object.assign(this,n),this.errno=this.code,this.type=this.code==="EBADSIZE"&&this.found>this.expect?"max-size":r,this.message=t,Error.captureStackTrace(this,this.constructor)}get name(){return"FetchError"}set name(t){}get[Symbol.toStringTag](){return"FetchError"}};Ofs.exports=f8r});var fre=H((_rg,Pfs)=>{"use strict";var dZt=Et("buffer"),uFe=dZt.Buffer,jH={},zH;for(zH in dZt)dZt.hasOwnProperty(zH)&&(zH==="SlowBuffer"||zH==="Buffer"||(jH[zH]=dZt[zH]));var gFe=jH.Buffer={};for(zH in uFe)uFe.hasOwnProperty(zH)&&(zH==="allocUnsafe"||zH==="allocUnsafeSlow"||(gFe[zH]=uFe[zH]));jH.Buffer.prototype=uFe.prototype;(!gFe.from||gFe.from===Uint8Array.from)&&(gFe.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return uFe(e,t,r)});gFe.alloc||(gFe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=uFe(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!jH.kStringMaxLength)try{jH.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}jH.constants||(jH.constants={MAX_LENGTH:jH.kMaxLength},jH.kStringMaxLength&&(jH.constants.MAX_STRING_LENGTH=jH.kStringMaxLength));Pfs.exports=jH});var Hfs=H(C8r=>{"use strict";var Mfs="\uFEFF";C8r.PrependBOM=h8r;function h8r(e,t){this.encoder=e,this.addBOM=!0}h8r.prototype.write=function(e){return this.addBOM&&(e=Mfs+e,this.addBOM=!1),this.encoder.write(e)};h8r.prototype.end=function(){return this.encoder.end()};C8r.StripBOM=m8r;function m8r(e,t){this.decoder=e,this.pass=!1,this.options=t||{}}m8r.prototype.write=function(e){var t=this.decoder.write(e);return this.pass||!t||(t[0]===Mfs&&(t=t.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),t};m8r.prototype.end=function(){return this.decoder.end()}});var Qfs=H((brg,Yfs)=>{"use strict";var Y0e=fre().Buffer;Yfs.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:y8r};function y8r(e,t){this.enc=e.encodingName,this.bomAware=e.bomAware,this.enc==="base64"?this.encoder=S8r:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=v8r,Y0e.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=B8r,this.defaultCharUnicode=t.defaultCharUnicode))}y8r.prototype.encoder=E8r;y8r.prototype.decoder=b8r;var _8r=Et("string_decoder").StringDecoder;_8r.prototype.end||(_8r.prototype.end=function(){});function b8r(e,t){this.decoder=new _8r(t.enc)}b8r.prototype.write=function(e){return Y0e.isBuffer(e)||(e=Y0e.from(e)),this.decoder.write(e)};b8r.prototype.end=function(){return this.decoder.end()};function E8r(e,t){this.enc=t.enc}E8r.prototype.write=function(e){return Y0e.from(e,this.enc)};E8r.prototype.end=function(){};function S8r(e,t){this.prevStr=""}S8r.prototype.write=function(e){e=this.prevStr+e;var t=e.length-e.length%4;return this.prevStr=e.slice(t),e=e.slice(0,t),Y0e.from(e,"base64")};S8r.prototype.end=function(){return Y0e.from(this.prevStr,"base64")};function v8r(e,t){}v8r.prototype.write=function(e){for(var t=Y0e.alloc(e.length*3),r=0,n=0;n>>6),t[r++]=128+(a&63)):(t[r++]=224+(a>>>12),t[r++]=128+(a>>>6&63),t[r++]=128+(a&63))}return t.slice(0,r)};v8r.prototype.end=function(){};function B8r(e,t){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=t.defaultCharUnicode}B8r.prototype.write=function(e){for(var t=this.acc,r=this.contBytes,n=this.accBytes,a="",o=0;o0&&(a+=this.defaultCharUnicode,r=0),l<128?a+=String.fromCharCode(l):l<224?(t=l&31,r=1,n=1):l<240?(t=l&15,r=2,n=1):a+=this.defaultCharUnicode):r>0?(t=t<<6|l&63,r--,n++,r===0&&(n===2&&t<128&&t>0?a+=this.defaultCharUnicode:n===3&&t<2048?a+=this.defaultCharUnicode:a+=String.fromCharCode(t))):a+=this.defaultCharUnicode}return this.acc=t,this.contBytes=r,this.accBytes=n,a};B8r.prototype.end=function(){var e=0;return this.contBytes>0&&(e+=this.defaultCharUnicode),e}});var Ufs=H(rge=>{"use strict";var pZt=fre().Buffer;rge._utf32=w8r;function w8r(e,t){this.iconv=t,this.bomAware=!0,this.isLE=e.isLE}rge.utf32le={type:"_utf32",isLE:!0};rge.utf32be={type:"_utf32",isLE:!1};rge.ucs4le="utf32le";rge.ucs4be="utf32be";w8r.prototype.encoder=T8r;w8r.prototype.decoder=R8r;function T8r(e,t){this.isLE=t.isLE,this.highSurrogate=0}T8r.prototype.write=function(e){for(var t=pZt.from(e,"ucs2"),r=pZt.alloc(t.length*2),n=this.isLE?r.writeUInt32LE:r.writeUInt32BE,a=0,o=0;o0){for(;t1114111)&&(r=n),r>=65536){r-=65536;var a=55296|r>>10;e[t++]=a&255,e[t++]=a>>8;var r=56320|r&1023}return e[t++]=r&255,e[t++]=r>>8,t}R8r.prototype.end=function(){this.overflow.length=0};rge.utf32=N8r;rge.ucs4="utf32";function N8r(e,t){this.iconv=t}N8r.prototype.encoder=D8r;N8r.prototype.decoder=k8r;function D8r(e,t){e=e||{},e.addBOM===void 0&&(e.addBOM=!0),this.encoder=t.iconv.getEncoder(e.defaultEncoding||"utf-32le",e)}D8r.prototype.write=function(e){return this.encoder.write(e)};D8r.prototype.end=function(){return this.encoder.end()};function k8r(e,t){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=e||{},this.iconv=t.iconv}k8r.prototype.write=function(e){if(!this.decoder){if(this.initialBufs.push(e),this.initialBufsLen+=e.length,this.initialBufsLen<32)return"";var t=Jfs(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(t,this.options);for(var r="",n=0;n16)&&o++,(r[3]!==0||r[2]>16)&&a++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&A++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&l++,r.length=0,n++,n>=100)break e}return A-o>l-a?"utf-32be":A-o{"use strict";var Kfs=fre().Buffer;V8r.utf16be=fZt;function fZt(){}fZt.prototype.encoder=x8r;fZt.prototype.decoder=G8r;fZt.prototype.bomAware=!0;function x8r(){}x8r.prototype.write=function(e){for(var t=Kfs.from(e,"ucs2"),r=0;r=100)break e}return o>a?"utf-16be":o{"use strict";var Yj=fre().Buffer;mZt.utf7=IZt;mZt.unicode11utf7="utf7";function IZt(e,t){this.iconv=t}IZt.prototype.encoder=O8r;IZt.prototype.decoder=P8r;IZt.prototype.bomAware=!0;var f2l=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function O8r(e,t){this.iconv=t.iconv}O8r.prototype.write=function(e){return Yj.from(e.replace(f2l,function(t){return"+"+(t==="+"?"":this.iconv.encode(t,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};O8r.prototype.end=function(){};function P8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var I2l=/[A-Za-z0-9\/+]/,M8r=[];for(nze=0;nze<256;nze++)M8r[nze]=I2l.test(String.fromCharCode(nze));var nze,h2l=43,Q0e=45,W8r=38;P8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(Yj.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e};mZt.utf7imap=hZt;function hZt(e,t){this.iconv=t}hZt.prototype.encoder=H8r;hZt.prototype.decoder=Y8r;hZt.prototype.bomAware=!0;function H8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=Yj.alloc(6),this.base64AccumIdx=0}H8r.prototype.write=function(e){for(var t=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,a=Yj.alloc(e.length*5+10),o=0,l=0;l0&&(o+=a.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),o),n=0),a[o++]=Q0e,t=!1),t||(a[o++]=A,A===W8r&&(a[o++]=Q0e))):(t||(a[o++]=W8r,t=!0),t&&(r[n++]=A>>8,r[n++]=A&255,n==r.length&&(o+=a.write(r.toString("base64").replace(/\//g,","),o),n=0)))}return this.inBase64=t,this.base64AccumIdx=n,a.slice(0,o)};H8r.prototype.end=function(){var e=Yj.alloc(10),t=0;return this.inBase64&&(this.base64AccumIdx>0&&(t+=e.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),t),this.base64AccumIdx=0),e[t++]=Q0e,this.inBase64=!1),e.slice(0,t)};function Y8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var qfs=M8r.slice();qfs[44]=!0;Y8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(Yj.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e}});var tIs=H(eIs=>{"use strict";var CZt=fre().Buffer;eIs._sbcs=Q8r;function Q8r(e,t){if(!e)throw new Error("SBCS codec is called without the data.");if(!e.chars||e.chars.length!==128&&e.chars.length!==256)throw new Error("Encoding '"+e.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(e.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);e.chars=r+e.chars}this.decodeBuf=CZt.from(e.chars,"ucs2");for(var a=CZt.alloc(65536,t.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";rIs.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var sIs=H((Trg,iIs)=>{"use strict";iIs.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b \v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b \v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var aIs=H(oIs=>{"use strict";var M8r=pre().Buffer;oIs._dbcs=fre;var Cx=-1,sIs=-2,zH=-10,_L=-1e3,AFe=new Array(256),sze=-1;for(_Zt=0;_Zt<256;_Zt++)AFe[_Zt]=Cx;var _Zt;function fre(e,t){if(this.encodingName=e.encodingName,!e)throw new Error("DBCS codec is called without the data.");if(!e.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=e.table();this.decodeTables=[],this.decodeTables[0]=AFe.slice(0),this.decodeTableSeq=[];for(var n=0;n_L)throw new Error("gb18030 decode tables conflict at byte 2");for(var I=this.decodeTables[_L-A[f]],C=129;C<=254;C++){if(I[C]===Cx)I[C]=_L-o;else{if(I[C]===_L-o)continue;if(I[C]>_L)throw new Error("gb18030 decode tables conflict at byte 3")}for(var b=this.decodeTables[_L-I[C]],E=48;E<=57;E++)b[E]===Cx&&(b[E]=sIs)}}}this.defaultCharUnicode=t.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var N={};if(e.encodeSkipVals)for(var n=0;n0;e>>>=8)t.push(e&255);t.length==0&&t.push(0);for(var r=this.decodeTables[0],n=t.length-1;n>0;n--){var a=r[t[n]];if(a==Cx)r[t[n]]=_L-this.decodeTables.length,this.decodeTables.push(r=AFe.slice(0));else if(a<=_L)r=this.decodeTables[_L-a];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+e.toString(16))}return r};fre.prototype._addDecodeChunk=function(e){var t=parseInt(e[0],16),r=this._getDecodeTrieNode(t);t=t&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+e[0]+": too long"+t)};fre.prototype._getEncodeBucket=function(e){var t=e>>8;return this.encodeTable[t]===void 0&&(this.encodeTable[t]=AFe.slice(0)),this.encodeTable[t]};fre.prototype._setEncodeChar=function(e,t){var r=this._getEncodeBucket(e),n=e&255;r[n]<=zH?this.encodeTableSeq[zH-r[n]][sze]=t:r[n]==Cx&&(r[n]=t)};fre.prototype._setEncodeSequence=function(e,t){var r=e[0],n=this._getEncodeBucket(r),a=r&255,o;n[a]<=zH?o=this.encodeTableSeq[zH-n[a]]:(o={},n[a]!==Cx&&(o[sze]=n[a]),n[a]=zH-this.encodeTableSeq.length,this.encodeTableSeq.push(o));for(var l=1;l=0)this._setEncodeChar(A,f),a=!0;else if(A<=_L){var I=_L-A;if(!o[I]){var C=f<<8>>>0;this._fillEncodeTable(I,C,r)?a=!0:o[I]=!0}}else A<=zH&&(this._setEncodeSequence(this.decodeTableSeq[zH-A],f),a=!0)}return a};function yZt(e,t){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=t.encodeTable,this.encodeTableSeq=t.encodeTableSeq,this.defaultCharSingleByte=t.defCharSB,this.gb18030=t.gb18030}yZt.prototype.write=function(e){for(var t=M8r.alloc(e.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,a=-1,o=0,l=0;;){if(a===-1){if(o==e.length)break;var A=e.charCodeAt(o++)}else{var A=a;a=-1}if(55296<=A&&A<57344)if(A<56320)if(r===-1){r=A;continue}else r=A,A=Cx;else r!==-1?(A=65536+(r-55296)*1024+(A-56320),r=-1):A=Cx;else r!==-1&&(a=A,A=Cx,r=-1);var f=Cx;if(n!==void 0&&A!=Cx){var I=n[A];if(typeof I=="object"){n=I;continue}else typeof I=="number"?f=I:I==null&&(I=n[sze],I!==void 0&&(f=I,a=A));n=void 0}else if(A>=0){var C=this.encodeTable[A>>8];if(C!==void 0&&(f=C[A&255]),f<=zH){n=this.encodeTableSeq[zH-f];continue}if(f==Cx&&this.gb18030){var b=Y8r(this.gb18030.uChars,A);if(b!=-1){var f=this.gb18030.gbChars[b]+(A-this.gb18030.uChars[b]);t[l++]=129+Math.floor(f/12600),f=f%12600,t[l++]=48+Math.floor(f/1260),f=f%1260,t[l++]=129+Math.floor(f/10),f=f%10,t[l++]=48+f;continue}}}f===Cx&&(f=this.defaultCharSingleByte),f<256?t[l++]=f:f<65536?(t[l++]=f>>8,t[l++]=f&255):f<16777216?(t[l++]=f>>16,t[l++]=f>>8&255,t[l++]=f&255):(t[l++]=f>>>24,t[l++]=f>>>16&255,t[l++]=f>>>8&255,t[l++]=f&255)}return this.seqObj=n,this.leadSurrogate=r,t.slice(0,l)};yZt.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var e=M8r.alloc(10),t=0;if(this.seqObj){var r=this.seqObj[sze];r!==void 0&&(r<256?e[t++]=r:(e[t++]=r>>8,e[t++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(e[t++]=this.defaultCharSingleByte,this.leadSurrogate=-1),e.slice(0,t)}};yZt.prototype.findIdx=Y8r;function H8r(e,t){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=t.decodeTables,this.decodeTableSeq=t.decodeTableSeq,this.defaultCharUnicode=t.defaultCharUnicode,this.gb18030=t.gb18030}H8r.prototype.write=function(e){for(var t=M8r.alloc(e.length*2),r=this.nodeIdx,n=this.prevBytes,a=this.prevBytes.length,o=-this.prevBytes.length,l,A=0,f=0;A=0?e[A]:n[A+a],l=this.decodeTables[r][I];if(!(l>=0))if(l===Cx)l=this.defaultCharUnicode.charCodeAt(0),A=o;else if(l===sIs){if(A>=3)var C=(e[A-3]-129)*12600+(e[A-2]-48)*1260+(e[A-1]-129)*10+(I-48);else var C=(n[A-3+a]-129)*12600+((A-2>=0?e[A-2]:n[A-2+a])-48)*1260+((A-1>=0?e[A-1]:n[A-1+a])-129)*10+(I-48);var b=Y8r(this.gb18030.gbChars,C);l=this.gb18030.uChars[b]+C-this.gb18030.gbChars[b]}else if(l<=_L){r=_L-l;continue}else if(l<=zH){for(var E=this.decodeTableSeq[zH-l],N=0;N>8;l=E[E.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+l+" at "+r+"/"+I);if(l>=65536){l-=65536;var B=55296|l>>10;t[f++]=B&255,t[f++]=B>>8,l=56320|l&1023}t[f++]=l&255,t[f++]=l>>8,r=0,o=A+1}return this.nodeIdx=r,this.prevBytes=o>=0?Array.prototype.slice.call(e,o):n.slice(o+a).concat(Array.prototype.slice.call(e)),t.slice(0,f).toString("ucs2")};H8r.prototype.end=function(){for(var e="";this.prevBytes.length>0;){e+=this.defaultCharUnicode;var t=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,t.length>0&&(e+=this.write(t))}return this.prevBytes=[],this.nodeIdx=0,e};function Y8r(e,t){if(e[0]>t)return-1;for(var r=0,n=e.length;r>1);e[a]<=t?r=a:n=a}return r}});var cIs=H((ptg,y1l)=>{y1l.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var lIs=H((ftg,b1l)=>{b1l.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var bZt=H((Itg,E1l)=>{E1l.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var Q8r=H((htg,S1l)=>{S1l.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var uIs=H((mtg,v1l)=>{v1l.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var gIs=H((Ctg,B1l)=>{B1l.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var X8r=H((_tg,w1l)=>{w1l.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var AIs=H((ytg,T1l)=>{T1l.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var pIs=H((btg,dIs)=>{"use strict";dIs.exports={shiftjis:{type:"_dbcs",table:function(){return cIs()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return lIs()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return bZt()}},gbk:{type:"_dbcs",table:function(){return bZt().concat(Q8r())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return bZt().concat(Q8r())},gb18030:function(){return uIs()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return gIs()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return X8r()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return X8r().concat(AIs())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var hIs=H((IIs,dFe)=>{"use strict";var fIs=[Yfs(),Jfs(),jfs(),qfs(),eIs(),rIs(),iIs(),aIs(),pIs()];for(EZt=0;EZt{"use strict";var mIs=pre().Buffer;CIs.exports=function(e){var t=e.Transform;function r(a,o){this.conv=a,o=o||{},o.decodeStrings=!1,t.call(this,o)}r.prototype=Object.create(t.prototype,{constructor:{value:r}}),r.prototype._transform=function(a,o,l){if(typeof a!="string")return l(new Error("Iconv encoding stream needs strings as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A),l()}catch(f){l(f)}},r.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o),a()}catch(l){a(l)}},r.prototype.collect=function(a){var o=[];return this.on("error",a),this.on("data",function(l){o.push(l)}),this.on("end",function(){a(null,mIs.concat(o))}),this};function n(a,o){this.conv=a,o=o||{},o.encoding=this.encoding="utf8",t.call(this,o)}return n.prototype=Object.create(t.prototype,{constructor:{value:n}}),n.prototype._transform=function(a,o,l){if(!mIs.isBuffer(a)&&!(a instanceof Uint8Array))return l(new Error("Iconv decoding stream needs buffers as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A,this.encoding),l()}catch(f){l(f)}},n.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o,this.encoding),a()}catch(l){a(l)}},n.prototype.collect=function(a){var o="";return this.on("error",a),this.on("data",function(l){o+=l}),this.on("end",function(){a(null,o)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:n}}});var SIs=H((Stg,EIs)=>{"use strict";var yIs=pre().Buffer,bIs=Mfs(),eh=EIs.exports;eh.encodings=null;eh.defaultCharUnicode="\uFFFD";eh.defaultCharSingleByte="?";eh.encode=function(t,r,n){t=""+(t||"");var a=eh.getEncoder(r,n),o=a.write(t),l=a.end();return l&&l.length>0?yIs.concat([o,l]):o};eh.decode=function(t,r,n){typeof t=="string"&&(eh.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),eh.skipDecodeWarning=!0),t=yIs.from(""+(t||""),"binary"));var a=eh.getDecoder(r,n),o=a.write(t),l=a.end();return l?o+l:o};eh.encodingExists=function(t){try{return eh.getCodec(t),!0}catch{return!1}};eh.toEncoding=eh.encode;eh.fromEncoding=eh.decode;eh._codecDataCache={};eh.getCodec=function(t){eh.encodings||(eh.encodings=hIs());for(var r=eh._canonicalizeEncoding(t),n={};;){var a=eh._codecDataCache[r];if(a)return a;var o=eh.encodings[r];switch(typeof o){case"string":r=o;break;case"object":for(var l in o)n[l]=o[l];n.encodingName||(n.encodingName=r),r=o.type;break;case"function":return n.encodingName||(n.encodingName=r),a=new o(n,eh),eh._codecDataCache[n.encodingName]=a,a;default:throw new Error("Encoding not recognized: '"+t+"' (searched as: '"+r+"')")}}};eh._canonicalizeEncoding=function(e){return(""+e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};eh.getEncoder=function(t,r){var n=eh.getCodec(t),a=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(a=new bIs.PrependBOM(a,r)),a};eh.getDecoder=function(t,r){var n=eh.getCodec(t),a=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(a=new bIs.StripBOM(a,r)),a};eh.enableStreamingAPI=function(t){if(!eh.supportsStreams){var r=_Is()(t);eh.IconvLiteEncoderStream=r.IconvLiteEncoderStream,eh.IconvLiteDecoderStream=r.IconvLiteDecoderStream,eh.encodeStream=function(a,o){return new eh.IconvLiteEncoderStream(eh.getEncoder(a,o),o)},eh.decodeStream=function(a,o){return new eh.IconvLiteDecoderStream(eh.getDecoder(a,o),o)},eh.supportsStreams=!0}};var vZt;try{vZt=Et("stream")}catch{}vZt&&vZt.Transform?eh.enableStreamingAPI(vZt):eh.encodeStream=eh.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var wIs=H((vtg,BIs)=>{"use strict";var BZt=SIs();BIs.exports.convert=R1l;function R1l(e,t,r){r=vIs(r||"UTF-8"),t=vIs(t||"UTF-8"),e=e||"";var n;if(r!=="UTF-8"&&typeof e=="string"&&(e=Buffer.from(e,"binary")),r===t)typeof e=="string"?n=Buffer.from(e):n=e;else try{n=N1l(e,t,r)}catch(a){console.error(a),n=e}return typeof n=="string"&&(n=Buffer.from(n,"utf-8")),n}function N1l(e,t,r){return t==="UTF-8"?BZt.decode(e,r):r==="UTF-8"?BZt.encode(e,t):BZt.encode(BZt.decode(e,r),t)}function vIs(e){return(e||"").toString().trim().replace(/^latin[\-_]?(\d+)$/i,"ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i,"WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i,"UTF-$1").replace(/^ks_c_5601\-1987$/i,"CP949").replace(/^us[\-_]?ascii$/i,"ASCII").toUpperCase()}});var TZt=H((Btg,NIs)=>{"use strict";var{Minipass:Yj}=cF(),J8r=Zfs(),RIs=Vfs(),{BUFFER:D1l}=RIs,oze=u8r(),U8r;try{U8r=wIs().convert}catch{}var Ire=Symbol("Body internals"),X0e=Symbol("consumeBody"),wZt=class{constructor(t,r={}){let{size:n=0,timeout:a=0}=r,o=t==null?null:TIs(t)?Buffer.from(t.toString()):aze(t)||Buffer.isBuffer(t)?t:Object.prototype.toString.call(t)==="[object ArrayBuffer]"?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Yj.isStream(t)?t:Buffer.from(String(t));this[Ire]={body:o,disturbed:!1,error:null},this.size=n,this.timeout=a,Yj.isStream(o)&&o.on("error",l=>{let A=l.name==="AbortError"?l:new oze(`Invalid response while trying to fetch ${this.url}: ${l.message}`,"system",l);this[Ire].error=A})}get body(){return this[Ire].body}get bodyUsed(){return this[Ire].disturbed}arrayBuffer(){return this[X0e]().then(t=>t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength))}blob(){let t=this.headers&&this.headers.get("content-type")||"";return this[X0e]().then(r=>Object.assign(new RIs([],{type:t.toLowerCase()}),{[D1l]:r}))}async json(){let t=await this[X0e]();try{return JSON.parse(t.toString())}catch(r){throw new oze(`invalid json response body at ${this.url} reason: ${r.message}`,"invalid-json")}}text(){return this[X0e]().then(t=>t.toString())}buffer(){return this[X0e]()}textConverted(){return this[X0e]().then(t=>k1l(t,this.headers))}[X0e](){if(this[Ire].disturbed)return Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[Ire].disturbed=!0,this[Ire].error)return Promise.reject(this[Ire].error);if(this.body===null)return Promise.resolve(Buffer.alloc(0));if(Buffer.isBuffer(this.body))return Promise.resolve(this.body);let t=aze(this.body)?this.body.stream():this.body;if(!Yj.isStream(t))return Promise.resolve(Buffer.alloc(0));let r=this.size&&t instanceof J8r||!this.size&&t instanceof Yj&&!(t instanceof J8r)?t:this.size?new J8r({size:this.size}):new Yj,n=this.timeout&&r.writable?setTimeout(()=>{r.emit("error",new oze(`Response timeout while trying to fetch ${this.url} (over ${this.timeout}ms)`,"body-timeout"))},this.timeout):null;return n&&n.unref&&n.unref(),new Promise(a=>{r!==t&&(t.on("error",o=>r.emit("error",o)),t.pipe(r)),a()}).then(()=>r.concat()).then(a=>(clearTimeout(n),a)).catch(a=>{throw clearTimeout(n),a.name==="AbortError"||a.name==="FetchError"?a:a.name==="RangeError"?new oze(`Could not create Buffer from response body for ${this.url}: ${a.message}`,"system",a):new oze(`Invalid response body while trying to fetch ${this.url}: ${a.message}`,"system",a)})}static clone(t){if(t.bodyUsed)throw new Error("cannot clone body after it is used");let r=t.body;if(Yj.isStream(r)&&typeof r.getBoundary!="function"){let n=new Yj,a=new Yj,o=new Yj;return n.on("error",l=>{a.emit("error",l),o.emit("error",l)}),r.on("error",l=>n.emit("error",l)),n.pipe(a),n.pipe(o),r.pipe(n),t[Ire].body=a,o}else return t.body}static extractContentType(t){return t==null?null:typeof t=="string"?"text/plain;charset=UTF-8":TIs(t)?"application/x-www-form-urlencoded;charset=UTF-8":aze(t)?t.type||null:Buffer.isBuffer(t)||Object.prototype.toString.call(t)==="[object ArrayBuffer]"||ArrayBuffer.isView(t)?null:typeof t.getBoundary=="function"?`multipart/form-data;boundary=${t.getBoundary()}`:Yj.isStream(t)?null:"text/plain;charset=UTF-8"}static getTotalBytes(t){let{body:r}=t;return r==null?0:aze(r)?r.size:Buffer.isBuffer(r)?r.length:r&&typeof r.getLengthSync=="function"&&(r._lengthRetrievers&&r._lengthRetrievers.length===0||r.hasKnownLength&&r.hasKnownLength())?r.getLengthSync():null}static writeToStream(t,r){let{body:n}=r;return n==null?t.end():Buffer.isBuffer(n)||typeof n=="string"?t.end(n):(aze(n)?n.stream():n).on("error",o=>t.emit("error",o)).pipe(t),t}};Object.defineProperties(wZt.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});var TIs=e=>typeof e!="object"||typeof e.append!="function"||typeof e.delete!="function"||typeof e.get!="function"||typeof e.getAll!="function"||typeof e.has!="function"||typeof e.set!="function"?!1:e.constructor.name==="URLSearchParams"||Object.prototype.toString.call(e)==="[object URLSearchParams]"||typeof e.sort=="function",aze=e=>typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&typeof e.constructor.name=="string"&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag]),k1l=(e,t)=>{if(typeof U8r!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let r=t&&t.get("content-type"),n="utf-8",a;r&&(a=/charset=([^;]*)/i.exec(r));let o=e.slice(0,1024).toString();return!a&&o&&(a=/{"use strict";var kIs=/[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/,j8r=/[^\t\x20-\x7e\x80-\xff]/,cze=e=>{if(e=`${e}`,kIs.test(e)||e==="")throw new TypeError(`${e} is not a legal HTTP header name`)},DIs=e=>{if(e=`${e}`,j8r.test(e))throw new TypeError(`${e} is not a legal HTTP header value`)},pFe=(e,t)=>{t=t.toLowerCase();for(let r in e)if(r.toLowerCase()===t)return r},hw=Symbol("map"),RZt=class e{constructor(t=void 0){if(this[hw]=Object.create(null),t instanceof e){let r=t.raw(),n=Object.keys(r);for(let a of n)for(let o of r[a])this.append(a,o);return}if(t!=null)if(typeof t=="object"){let r=t[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");let n=[];for(let a of t){if(typeof a!="object"||typeof a[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");let o=Array.from(a);if(o.length!==2)throw new TypeError("Each header pair must be a name/value tuple");n.push(o)}for(let a of n)this.append(a[0],a[1])}else for(let n of Object.keys(t))this.append(n,t[n])}else throw new TypeError("Provided initializer must be an object")}get(t){t=`${t}`,cze(t);let r=pFe(this[hw],t);return r===void 0?null:this[hw][r].join(", ")}forEach(t,r=void 0){let n=z8r(this);for(let a=0;aObject.keys(e[hw]).sort().map(t==="key"?r=>r.toLowerCase():t==="value"?r=>e[hw][r].join(", "):r=>[r.toLowerCase(),e[hw][r].join(", ")]),K8r=Symbol("internal"),J0e=class e{constructor(t,r){this[K8r]={target:t,kind:r,index:0}}get[Symbol.toStringTag](){return"HeadersIterator"}next(){if(!this||Object.getPrototypeOf(this)!==e.prototype)throw new TypeError("Value of `this` is not a HeadersIterator");let{target:t,kind:r,index:n}=this[K8r],a=z8r(t,r),o=a.length;return n>=o?{value:void 0,done:!0}:(this[K8r].index++,{value:a[n],done:!1})}};Object.setPrototypeOf(J0e.prototype,Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));xIs.exports=RZt});var LIs=H((Ttg,ZIs)=>{"use strict";var x1l=Et("http"),{STATUS_CODES:G1l}=x1l,GIs=NZt(),FIs=TZt(),{clone:F1l,extractContentType:Z1l}=FIs,hre=Symbol("Response internals"),DZt=class e extends FIs{constructor(t=null,r={}){super(t,r);let n=r.status||200,a=new GIs(r.headers);if(t!=null&&!a.has("Content-Type")){let o=Z1l(t);o&&a.append("Content-Type",o)}this[hre]={url:r.url,status:n,statusText:r.statusText||G1l[n],headers:a,counter:r.counter,trailer:Promise.resolve(r.trailer||new GIs)}}get trailer(){return this[hre].trailer}get url(){return this[hre].url||""}get status(){return this[hre].status}get ok(){return this[hre].status>=200&&this[hre].status<300}get redirected(){return this[hre].counter>0}get statusText(){return this[hre].statusText}get headers(){return this[hre].headers}clone(){return new e(F1l(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,trailer:this.trailer})}get[Symbol.toStringTag](){return"Response"}};ZIs.exports=DZt;Object.defineProperties(DZt.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var VIs=H((Rtg,L1l)=>{L1l.exports={name:"minipass-fetch",version:"4.0.1",description:"An implementation of window.fetch in Node.js using Minipass streams",license:"MIT",main:"lib/index.js",scripts:{"test:tls-fixtures":"./test/fixtures/tls/setup.sh",test:"tap",snap:"tap",lint:"npm run eslint",postlint:"template-oss-check",lintfix:"npm run eslint -- --fix",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},tap:{"coverage-map":"map.js","check-coverage":!0,"nyc-arg":["--exclude","tap-snapshots/**"]},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3","@ungap/url-search-params":"^0.2.2","abort-controller":"^3.0.0","abortcontroller-polyfill":"~1.7.3",encoding:"^0.1.13","form-data":"^4.0.0",nock:"^13.2.4",parted:"^0.1.1","string-to-arraybuffer":"^1.0.2",tap:"^16.0.0"},dependencies:{minipass:"^7.0.3","minipass-sized":"^1.0.3",minizlib:"^3.0.1"},optionalDependencies:{encoding:"^0.1.13"},repository:{type:"git",url:"git+https://github.com/npm/minipass-fetch.git"},keywords:["fetch","minipass","node-fetch","window.fetch"],files:["bin/","lib/"],engines:{node:"^18.17.0 || >=20.5.0"},author:"GitHub Inc.",templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.3",publish:"true"}}});var PIs=H((Ntg,OIs)=>{"use strict";var{URL:q8r}=Et("url"),{Minipass:V1l}=cF(),$8r=NZt(),{exportNodeCompatibleHeaders:W1l}=$8r,WIs=TZt(),{clone:O1l,extractContentType:P1l,getTotalBytes:M1l}=WIs,H1l=VIs().version,Y1l=`minipass-fetch/${H1l} (+https://github.com/isaacs/minipass-fetch)`,dJ=Symbol("Request internals"),kZt=e=>typeof e=="object"&&typeof e[dJ]=="object",Q1l=e=>{let t=e&&typeof e=="object"&&Object.getPrototypeOf(e);return!!(t&&t.constructor.name==="AbortSignal")},xZt=class e extends WIs{constructor(t,r={}){let n=kZt(t)?new q8r(t.url):t&&t.href?new q8r(t.href):new q8r(`${t}`);kZt(t)?r={...t[dJ],...r}:(!t||typeof t=="string")&&(t={});let a=(r.method||t.method||"GET").toUpperCase(),o=a==="GET"||a==="HEAD";if((r.body!==null&&r.body!==void 0||kZt(t)&&t.body!==null)&&o)throw new TypeError("Request with GET/HEAD method cannot have body");let l=r.body!==null&&r.body!==void 0?r.body:kZt(t)&&t.body!==null?O1l(t):null;super(l,{timeout:r.timeout||t.timeout||0,size:r.size||t.size||0});let A=new $8r(r.headers||t.headers||{});if(l!=null&&!A.has("Content-Type")){let De=P1l(l);De&&A.append("Content-Type",De)}let f="signal"in r?r.signal:null;if(f!=null&&!Q1l(f))throw new TypeError("Expected signal must be an instanceof AbortSignal");let{ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:J,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0",secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se}=r;this[dJ]={method:a,redirect:r.redirect||t.redirect||"follow",headers:A,parsedURL:n,signal:f,ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:J,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe,secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se},this.follow=r.follow!==void 0?r.follow:t.follow!==void 0?t.follow:20,this.compress=r.compress!==void 0?r.compress:t.compress!==void 0?t.compress:!0,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent}get method(){return this[dJ].method}get url(){return this[dJ].parsedURL.toString()}get headers(){return this[dJ].headers}get redirect(){return this[dJ].redirect}get signal(){return this[dJ].signal}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}static getNodeRequestOptions(t){let r=t[dJ].parsedURL,n=new $8r(t[dJ].headers);if(n.has("Accept")||n.set("Accept","*/*"),!/^https?:$/.test(r.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&V1l.isStream(t.body)&&typeof t.body.destroy!="function")throw new Error("Cancellation of streamed requests with AbortSignal is not supported");let a=(t.body===null||t.body===void 0)&&/^(POST|PUT)$/i.test(t.method)?"0":t.body!==null&&t.body!==void 0?M1l(t):null;a&&n.set("Content-Length",a+""),n.has("User-Agent")||n.set("User-Agent",Y1l),t.compress&&!n.has("Accept-Encoding")&&n.set("Accept-Encoding","gzip,deflate");let o=typeof t.agent=="function"?t.agent(r):t.agent;!n.has("Connection")&&!o&&n.set("Connection","close");let{ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:J,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue}=t[dJ];return{...{auth:r.username||r.password?`${r.username}:${r.password}`:"",host:r.host,hostname:r.hostname,path:`${r.pathname}${r.search}`,port:r.port,protocol:r.protocol},method:t.method,headers:W1l(n),agent:o,ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:J,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue,timeout:t.timeout}}};OIs.exports=xZt;Object.defineProperties(xZt.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}})});var HIs=H((Dtg,MIs)=>{"use strict";var e6r=class extends Error{constructor(t){super(t),this.code="FETCH_ABORTED",this.type="aborted",Error.captureStackTrace(this,this.constructor)}get name(){return"AbortError"}set name(t){}};MIs.exports=e6r});var gze=H((ktg,XIs)=>{"use strict";var{URL:lze}=Et("url"),X1l=Et("http"),J1l=Et("https"),fFe=vfs(),{Minipass:YIs}=cF(),U1l=TZt(),{writeToStream:K1l,getTotalBytes:j1l}=U1l,U0e=LIs(),r6r=NZt(),{createHeadersLenient:QIs}=r6r,uze=PIs(),{getNodeRequestOptions:z1l}=uze,rge=u8r(),t6r=HIs(),mre=async(e,t)=>{if(/^data:/.test(e)){let r=new uze(e,t);return Promise.resolve().then(()=>new Promise((n,a)=>{let o,l;try{let{pathname:I,search:C}=new lze(e),b=I.split(",");if(b.length<2)throw new Error("invalid data: URI");let E=b.shift(),N=/;base64$/.test(E);o=N?E.slice(0,-1*7):E;let B=decodeURIComponent(b.join(",")+C);l=N?Buffer.from(B,"base64"):Buffer.from(B)}catch(I){return a(new rge(`[${r.method}] ${r.url} invalid URL, ${I.message}`,"system",I))}let{signal:A}=r;if(A&&A.aborted)return a(new t6r("The user aborted a request."));let f={"Content-Length":l.length};return o&&(f["Content-Type"]=o),n(new U0e(l,{headers:f}))}))}return new Promise((r,n)=>{let a=new uze(e,t),o;try{o=z1l(a)}catch(B){return n(B)}let l=(o.protocol==="https:"?J1l:X1l).request,{signal:A}=a,f=null,I=()=>{let B=new t6r("The user aborted a request.");n(B),YIs.isStream(a.body)&&typeof a.body.destroy=="function"&&a.body.destroy(B),f&&f.body&&f.body.emit("error",B)};if(A&&A.aborted)return I();let C=()=>{I(),b()},b=()=>{E.abort(),A&&A.removeEventListener("abort",C),clearTimeout(N)},E=l(o);A&&A.addEventListener("abort",C);let N=null;a.timeout&&E.once("socket",()=>{N=setTimeout(()=>{n(new rge(`network timeout at: ${a.url}`,"request-timeout")),b()},a.timeout)}),E.on("error",B=>{E.res&&E.res.emit("error",B),n(new rge(`request to ${a.url} failed, reason: ${B.message}`,"system",B)),b()}),E.on("response",B=>{clearTimeout(N);let F=QIs(B.headers);if(mre.isRedirect(B.statusCode)){let fe=F.get("Location"),ue=null;try{ue=fe===null?null:new lze(fe,a.url).toString()}catch{if(a.redirect!=="manual"){n(new rge(`uri requested responds with an invalid redirect URL: ${fe}`,"invalid-redirect")),b();return}}if(a.redirect==="error"){n(new rge(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),b();return}else if(a.redirect==="manual"){if(ue!==null)try{F.set("Location",ue)}catch(de){n(de)}}else if(a.redirect==="follow"&&ue!==null){if(a.counter>=a.follow){n(new rge(`maximum redirect reached at: ${a.url}`,"max-redirect")),b();return}if(B.statusCode!==303&&a.body&&j1l(a)===null){n(new rge("Cannot follow redirect with body being a readable stream","unsupported-redirect")),b();return}a.headers.set("host",new lze(ue).host);let de={headers:new r6r(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout},be=new lze(a.url),Se=new lze(ue);be.hostname!==Se.hostname&&(de.headers.delete("authorization"),de.headers.delete("cookie")),(B.statusCode===303||(B.statusCode===301||B.statusCode===302)&&a.method==="POST")&&(de.method="GET",de.body=void 0,de.headers.delete("content-length")),r(mre(new uze(ue,de))),b();return}}B.once("end",()=>A&&A.removeEventListener("abort",C));let Q=new YIs;Q.on("error",b),B.on("error",fe=>Q.emit("error",fe)),B.on("data",fe=>Q.write(fe)),B.on("end",()=>Q.end());let J={url:a.url,status:B.statusCode,statusText:B.statusMessage,headers:F,size:a.size,timeout:a.timeout,counter:a.counter,trailer:new Promise(fe=>B.on("end",()=>fe(QIs(B.trailers))))},ae=F.get("Content-Encoding");if(!a.compress||a.method==="HEAD"||ae===null||B.statusCode===204||B.statusCode===304){f=new U0e(Q,J),r(f);return}let ne={flush:fFe.constants.Z_SYNC_FLUSH,finishFlush:fFe.constants.Z_SYNC_FLUSH};if(ae==="gzip"||ae==="x-gzip"){let fe=new fFe.Gunzip(ne);f=new U0e(Q.on("error",ue=>fe.emit("error",ue)).pipe(fe),J),r(f);return}if(ae==="deflate"||ae==="x-deflate"){B.once("data",fe=>{let ue=(fe[0]&15)===8?new fFe.Inflate:new fFe.InflateRaw;Q.on("error",de=>ue.emit("error",de)).pipe(ue),f=new U0e(ue,J),r(f)});return}if(ae==="br"){try{var ce=new fFe.BrotliDecompress}catch(fe){n(fe),b();return}Q.on("error",fe=>ce.emit("error",fe)).pipe(ce),f=new U0e(ce,J),r(f);return}f=new U0e(Q,J),r(f)}),K1l(E,a)})};XIs.exports=mre;mre.isRedirect=e=>e===301||e===302||e===303||e===307||e===308;mre.Headers=r6r;mre.Request=uze;mre.Response=U0e;mre.FetchError=rge;mre.AbortError=t6r});var UIs=H((xtg,JIs)=>{var q1l=Et("dns"),$1l=["if-modified-since","if-none-match","if-unmodified-since","if-match","if-range"],e2l=e=>{let{strictSSL:t,...r}={...e};if(r.method=r.method?r.method.toUpperCase():"GET",t==null?r.rejectUnauthorized=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0":r.rejectUnauthorized=t!==!1,!r.retry)r.retry={retries:0};else if(typeof r.retry=="string"){let n=parseInt(r.retry,10);isFinite(n)?r.retry={retries:n}:r.retry={retries:0}}else typeof r.retry=="number"?r.retry={retries:r.retry}:r.retry={retries:0,...r.retry};return r.dns={ttl:5*60*1e3,lookup:q1l.lookup,...r.dns},r.cache=r.cache||"default",r.cache==="default"&&Object.keys(r.headers||{}).some(a=>$1l.includes(a.toLowerCase()))&&(r.cache="no-store"),r.cacheAdditionalHeaders=r.cacheAdditionalHeaders||[],r.cacheManager&&!r.cachePath&&(r.cachePath=r.cacheManager),r};JIs.exports=e2l});var qIs=H((Gtg,n6r)=>{"use strict";n6r.exports=zIs;n6r.exports.preferredCharsets=zIs;var t2l=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function r2l(e){for(var t=e.split(","),r=0,n=0;r0}});var rhs=H((Ftg,i6r)=>{"use strict";i6r.exports=ths;i6r.exports.preferredEncodings=ths;var a2l=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function c2l(e){for(var t=e.split(","),r=!1,n=1,a=0,o=0;a0}});var ahs=H((Ztg,s6r)=>{"use strict";s6r.exports=ohs;s6r.exports.preferredLanguages=ohs;var d2l=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function p2l(e){for(var t=e.split(","),r=0,n=0;r0}});var dhs=H((Ltg,o6r)=>{"use strict";o6r.exports=ghs;o6r.exports.preferredMediaTypes=ghs;var m2l=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function C2l(e){for(var t=S2l(e),r=0,n=0;r0)if(o.every(function(l){return t.params[l]=="*"||(t.params[l]||"").toLowerCase()==(n.params[l]||"").toLowerCase()}))a|=1;else return null;return{i:r,o:t.i,q:t.q,s:a}}function ghs(e,t){var r=C2l(e===void 0?"*/*":e||"");if(!t)return r.filter(lhs).sort(chs).map(b2l);var n=t.map(function(o,l){return _2l(o,r,l)});return n.filter(lhs).sort(chs).map(function(o){return t[n.indexOf(o)]})}function chs(e,t){return t.q-e.q||t.s-e.s||e.o-t.o||e.i-t.i||0}function b2l(e){return e.type+"/"+e.subtype}function lhs(e){return e.q>0}function Ahs(e){for(var t=0,r=0;(r=e.indexOf('"',r))!==-1;)t++,r++;return t}function E2l(e){var t=e.indexOf("="),r,n;return t===-1?r=e:(r=e.slice(0,t),n=e.slice(t+1)),[r,n]}function S2l(e){for(var t=e.split(","),r=1,n=0;r{"use strict";var B2l=qIs(),w2l=rhs(),T2l=ahs(),R2l=dhs();a6r.exports=fb;a6r.exports.Negotiator=fb;function fb(e){if(!(this instanceof fb))return new fb(e);this.request=e}fb.prototype.charset=function(t){var r=this.charsets(t);return r&&r[0]};fb.prototype.charsets=function(t){return B2l(this.request.headers["accept-charset"],t)};fb.prototype.encoding=function(t,r){var n=this.encodings(t,r);return n&&n[0]};fb.prototype.encodings=function(t,r){var n=r||{};return w2l(this.request.headers["accept-encoding"],t,n.preferred)};fb.prototype.language=function(t){var r=this.languages(t);return r&&r[0]};fb.prototype.languages=function(t){return T2l(this.request.headers["accept-language"],t)};fb.prototype.mediaType=function(t){var r=this.mediaTypes(t);return r&&r[0]};fb.prototype.mediaTypes=function(t){return R2l(this.request.headers.accept,t)};fb.prototype.preferredCharset=fb.prototype.charset;fb.prototype.preferredCharsets=fb.prototype.charsets;fb.prototype.preferredEncoding=fb.prototype.encoding;fb.prototype.preferredEncodings=fb.prototype.encodings;fb.prototype.preferredLanguage=fb.prototype.language;fb.prototype.preferredLanguages=fb.prototype.languages;fb.prototype.preferredMediaType=fb.prototype.mediaType;fb.prototype.preferredMediaTypes=fb.prototype.mediaTypes});var l6r=H((Wtg,Chs)=>{var fhs=vgr(),Ihs=phs(),N2l=are(),hhs={shared:!1,ignoreCargoCult:!0},D2l={status:200,headers:{}},IFe=e=>{let t={method:e.method,url:e.url,headers:{},compress:e.compress};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},mhs=e=>{let t={status:e.status,headers:{}};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},c6r=class{constructor({entry:t,request:r,response:n,options:a}){this.entry=t,this.request=IFe(r),this.response=mhs(n),this.options=a,this.policy=new fhs(this.request,this.response,hhs),this.entry&&(this.policy._responseTime=this.entry.metadata.time)}static storable(t,r){return!r.cachePath||r.cache==="no-store"||!["GET","HEAD"].includes(t.method)?!1:new fhs(IFe(t),D2l,hhs).storable()}satisfies(t){let r=IFe(t);if(this.request.headers.host!==r.headers.host||this.request.compress!==r.compress)return!1;let n=new Ihs(this.request),a=new Ihs(r);return JSON.stringify(n.mediaTypes())!==JSON.stringify(a.mediaTypes())||JSON.stringify(n.languages())!==JSON.stringify(a.languages())||JSON.stringify(n.encodings())!==JSON.stringify(a.encodings())?!1:this.options.integrity?N2l.parse(this.options.integrity).match(this.entry.integrity):!0}storable(){return this.policy.storable()}get mustRevalidate(){return!!this.policy._rescc["must-revalidate"]}needsRevalidation(t){let r=IFe(t);return r.method="GET",!this.policy.satisfiesWithoutRevalidation(r)}responseHeaders(){return this.policy.responseHeaders()}revalidationHeaders(t){let r=IFe(t);return this.policy.revalidationHeaders(r)}revalidated(t,r){let n=IFe(t),a=mhs(r);return!this.policy.revalidatedPolicy(n,a).modified}};Chs.exports=c6r});var yhs=H((Otg,_hs)=>{var u6r=class extends Error{constructor(t){super(`request to ${t} failed: cache mode is 'only-if-cached' but no cached response is available.`),this.code="ENOTCACHED"}};_hs.exports={NotCachedError:u6r}});var GZt=H((Ptg,vhs)=>{var k2l=uZt(),bhs=Symbol("_flush"),Ehs=Symbol("_flushed"),Shs=Symbol("_flushing"),g6r=class extends k2l{constructor(t={}){if(typeof t=="function"&&(t={flush:t}),super(t),typeof t.flush!="function"&&typeof this.flush!="function")throw new TypeError("must provide flush function in options");this[bhs]=t.flush||this.flush}emit(t,...r){if(t!=="end"&&t!=="finish"||this[Ehs])return super.emit(t,...r);if(this[Shs])return;this[Shs]=!0;let n=o=>{this[Ehs]=!0,o?super.emit("error",o):super.emit("end")},a=this[bhs](n);a&&a.then&&a.then(()=>n(),o=>n(o))}};vhs.exports=g6r});var f6r=H((Mtg,p6r)=>{var{Minipass:Bhs}=cF(),hFe=Symbol("_data"),mFe=Symbol("_length"),A6r=class extends Bhs{constructor(t){super(t),this[hFe]=[],this[mFe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[hFe].push(a),this[mFe]+=a.length,n&&n(),!0}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[hFe],this[mFe]);return super.write(a),super.end(n)}};p6r.exports=A6r;var d6r=class extends Bhs{constructor(t){super(t),this[hFe]=[],this[mFe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[hFe].push(a),this[mFe]+=a.length,super.write(t,r,n)}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[hFe],this[mFe]);return this.emit("collect",a),super.end(n)}};p6r.exports.PassThrough=d6r});var CFe=H((Htg,Nhs)=>{var x2l=uZt(),G2l=Et("events"),F2l=e=>e&&e instanceof G2l&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"),K0e=Symbol("_head"),$P=Symbol("_tail"),I6r=Symbol("_linkStreams"),h6r=Symbol("_setHead"),m6r=Symbol("_setTail"),whs=Symbol("_onError"),Ths=Symbol("_onData"),C6r=Symbol("_onEnd"),Rhs=Symbol("_onDrain"),FZt=Symbol("_streams"),_6r=class extends x2l{constructor(t,...r){F2l(t)&&(r.unshift(t),t={}),super(t),this[FZt]=[],r.length&&this.push(...r)}[I6r](t){return t.reduce((r,n)=>(r.on("error",a=>n.emit("error",a)),r.pipe(n),n))}push(...t){this[FZt].push(...t),this[$P]&&t.unshift(this[$P]);let r=this[I6r](t);this[m6r](r),this[K0e]||this[h6r](t[0])}unshift(...t){this[FZt].unshift(...t),this[K0e]&&t.push(this[K0e]);let r=this[I6r](t);this[h6r](t[0]),this[$P]||this[m6r](r)}destroy(t){return this[FZt].forEach(r=>typeof r.destroy=="function"&&r.destroy()),super.destroy(t)}[m6r](t){this[$P]=t,t.on("error",r=>this[whs](t,r)),t.on("data",r=>this[Ths](t,r)),t.on("end",()=>this[C6r](t)),t.on("finish",()=>this[C6r](t))}[whs](t,r){t===this[$P]&&this.emit("error",r)}[Ths](t,r){t===this[$P]&&super.write(r)}[C6r](t){t===this[$P]&&super.end()}pause(){return super.pause(),this[$P]&&this[$P].pause&&this[$P].pause()}emit(t,...r){return t==="resume"&&this[$P]&&this[$P].resume&&this[$P].resume(),super.emit(t,...r)}[h6r](t){this[K0e]=t,t.on("drain",()=>this[Rhs](t))}[Rhs](t){t===this[K0e]&&this.emit("drain")}write(t,r,n){return this[K0e].write(t,r,n)&&(this.flowing||this.buffer.length===0)}end(t,r,n){return this[K0e].end(t,r,n),this}};Nhs.exports=_6r});var Dhs=H((Ytg,y6r)=>{(function(){var e;function t(r,n){var a=this instanceof t?this:e;if(a.reset(n),typeof r=="string"&&r.length>0&&a.hash(r),a!==this)return a}t.prototype.hash=function(r){var n,a,o,l,A;switch(A=r.length,this.len+=A,a=this.k1,o=0,this.rem){case 0:a^=A>o?r.charCodeAt(o++)&65535:0;case 1:a^=A>o?(r.charCodeAt(o++)&65535)<<8:0;case 2:a^=A>o?(r.charCodeAt(o++)&65535)<<16:0;case 3:a^=A>o?(r.charCodeAt(o)&255)<<24:0,a^=A>o?(r.charCodeAt(o++)&65280)>>8:0}if(this.rem=A+this.rem&3,A-=this.rem,A>0){for(n=this.h1;a=a*11601+(a&65535)*3432906752&4294967295,a=a<<15|a>>>17,a=a*13715+(a&65535)*461832192&4294967295,n^=a,n=n<<13|n>>>19,n=n*5+3864292196&4294967295,!(o>=A);)a=r.charCodeAt(o++)&65535^(r.charCodeAt(o++)&65535)<<8^(r.charCodeAt(o++)&65535)<<16,l=r.charCodeAt(o++),a^=(l&255)<<24^(l&65280)>>8;switch(a=0,this.rem){case 3:a^=(r.charCodeAt(o+2)&65535)<<16;case 2:a^=(r.charCodeAt(o+1)&65535)<<8;case 1:a^=r.charCodeAt(o)&65535}this.h1=n}return this.k1=a,this},t.prototype.result=function(){var r,n;return r=this.k1,n=this.h1,r>0&&(r=r*11601+(r&65535)*3432906752&4294967295,r=r<<15|r>>>17,r=r*13715+(r&65535)*461832192&4294967295,n^=r),n^=this.len,n^=n>>>16,n=n*51819+(n&65535)*2246770688&4294967295,n^=n>>>13,n=n*44597+(n&65535)*3266445312&4294967295,n^=n>>>16,n>>>0},t.prototype.reset=function(r){return this.h1=typeof r=="number"?r:0,this.rem=this.k1=this.len=0,this},e=new t,typeof y6r<"u"?y6r.exports=t:this.MurmurHash3=t})()});var xhs=H((Qtg,khs)=>{"use strict";var Z2l=Dhs();khs.exports=function(e){if(e){var t=new Z2l(e);return("00000000"+t.result().toString(16)).slice(-8)}else return(Math.random().toString(16)+"0000000").slice(2,10)}});var b6r=H((Xtg,Ghs)=>{var L2l=Et("path"),V2l=xhs();Ghs.exports=function(e,t,r){return L2l.join(e,(t?t+"-":"")+V2l(r))}});var E6r=H((Jtg,W2l)=>{W2l.exports={name:"cacache",version:"19.0.1","cache-version":{content:"2",index:"5"},description:"Fast, fault-tolerant, cross-platform, disk-based, data-agnostic, content-addressable cache.",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",snap:"tap",coverage:"tap","test-docker":'docker run -it --rm --name pacotest -v "$PWD":/tmp -w /tmp node:latest npm test',lint:"npm run eslint",npmclilint:"npmcli-lint",lintfix:"npm run eslint -- --fix",postsnap:"npm run lintfix --",postlint:"template-oss-check",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},repository:{type:"git",url:"git+https://github.com/npm/cacache.git"},keywords:["cache","caching","content-addressable","sri","sri hash","subresource integrity","cache","storage","store","file store","filesystem","disk cache","disk storage"],license:"ISC",dependencies:{"@npmcli/fs":"^4.0.0","fs-minipass":"^3.0.0",glob:"^10.2.2","lru-cache":"^10.0.1",minipass:"^7.0.3","minipass-collect":"^2.0.1","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4","p-map":"^7.0.2",ssri:"^12.0.0",tar:"^7.4.3","unique-filename":"^4.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",windowsCI:!1,version:"4.23.3",publish:"true"},author:"GitHub Inc.",tap:{"nyc-arg":["--exclude","tap-snapshots/**"]}}});var S6r=H((Utg,Fhs)=>{"use strict";Fhs.exports=O2l;function O2l(e){return[e.slice(0,2),e.slice(2,4),e.slice(4)]}});var _Fe=H((Ktg,v6r)=>{"use strict";var P2l=E6r()["cache-version"].content,M2l=S6r(),Zhs=Et("path"),H2l=are();v6r.exports=Y2l;function Y2l(e,t){let r=H2l.parse(t,{single:!0});return Zhs.join(Lhs(e),r.algorithm,...M2l(r.hexDigest()))}v6r.exports.contentDir=Lhs;function Lhs(e){return Zhs.join(e,`content-v${P2l}`)}});var B6r=H((jtg,Vhs)=>{var Q2l=(e,{copy:t,wrap:r})=>{let n={};if(e&&typeof e=="object")for(let a of t)e[a]!==void 0&&(n[a]=e[a]);else n[r]=e;return n};Vhs.exports=Q2l});var Ohs=H((ztg,Whs)=>{var X2l=jC(),J2l=e=>X2l.satisfies(process.version,e,{includePrerelease:!0});Whs.exports={satisfies:J2l}});var Phs=H((erg,T6r)=>{"use strict";var{inspect:U2l}=Et("util"),w6r=class{constructor(t,r,n){let a=`${r}: ${n.syscall} returned ${n.code} (${n.message})`;n.path!==void 0&&(a+=` ${n.path}`),n.dest!==void 0&&(a+=` => ${n.dest}`),this.code=t,Object.defineProperties(this,{name:{value:"SystemError",enumerable:!1,writable:!0,configurable:!0},message:{value:a,enumerable:!1,writable:!0,configurable:!0},info:{value:n,enumerable:!0,configurable:!0,writable:!1},errno:{get(){return n.errno},set(o){n.errno=o},enumerable:!0,configurable:!0},syscall:{get(){return n.syscall},set(o){n.syscall=o},enumerable:!0,configurable:!0}}),n.path!==void 0&&Object.defineProperty(this,"path",{get(){return n.path},set(o){n.path=o},enumerable:!0,configurable:!0}),n.dest!==void 0&&Object.defineProperty(this,"dest",{get(){return n.dest},set(o){n.dest=o},enumerable:!0,configurable:!0})}toString(){return`${this.name} [${this.code}]: ${this.message}`}[Symbol.for("nodejs.util.inspect.custom")](t,r){return U2l(this,{...r,getters:!0,customInspect:!1})}};function Cre(e,t){T6r.exports[e]=class extends w6r{constructor(n){super(e,t,n)}}}Cre("ERR_FS_CP_DIR_TO_NON_DIR","Cannot overwrite directory with non-directory");Cre("ERR_FS_CP_EEXIST","Target already exists");Cre("ERR_FS_CP_EINVAL","Invalid src or dest");Cre("ERR_FS_CP_FIFO_PIPE","Cannot copy a FIFO pipe");Cre("ERR_FS_CP_NON_DIR_TO_DIR","Cannot overwrite non-directory with directory");Cre("ERR_FS_CP_SOCKET","Cannot copy a socket file");Cre("ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY","Cannot overwrite symlink in subdirectory of self");Cre("ERR_FS_CP_UNKNOWN","Cannot copy an unknown file type");Cre("ERR_FS_EISDIR","Path is a directory");T6r.exports.ERR_INVALID_ARG_TYPE=class extends Error{constructor(t,r,n){super(),this.code="ERR_INVALID_ARG_TYPE",this.message=`The ${t} argument must be ${r}. Received ${typeof n}`}}});var oms=H((trg,sms)=>{"use strict";var{ERR_FS_CP_DIR_TO_NON_DIR:K2l,ERR_FS_CP_EEXIST:j2l,ERR_FS_CP_EINVAL:ZZt,ERR_FS_CP_FIFO_PIPE:z2l,ERR_FS_CP_NON_DIR_TO_DIR:q2l,ERR_FS_CP_SOCKET:$2l,ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY:eSl,ERR_FS_CP_UNKNOWN:tSl,ERR_FS_EISDIR:rSl,ERR_INVALID_ARG_TYPE:nSl}=Phs(),{constants:{errno:{EEXIST:iSl,EISDIR:sSl,EINVAL:_re,ENOTDIR:oSl}}}=Et("os"),{chmod:aSl,copyFile:cSl,lstat:jhs,mkdir:zhs,readdir:lSl,readlink:Mhs,stat:yFe,symlink:R6r,unlink:qhs,utimes:uSl}=Et("fs/promises"),{dirname:Aze,isAbsolute:Hhs,join:Yhs,parse:gSl,resolve:dze,sep:ASl,toNamespacedPath:Qhs}=Et("path"),{fileURLToPath:dSl}=Et("url"),pSl={dereference:!1,errorOnExist:!1,filter:void 0,force:!0,preserveTimestamps:!1,recursive:!1};async function fSl(e,t,r){if(r!=null&&typeof r!="object")throw new nSl("options",["Object"],r);return ISl(Qhs(Xhs(e)),Qhs(Xhs(t)),{...pSl,...r})}function Xhs(e){return e!=null&&e.href&&e.origin?dSl(e):e}async function ISl(e,t,r){r.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning("Using the preserveTimestamps option in 32-bit node is not recommended","TimestampPrecisionWarning");let n=await $hs(e,t,r),{srcStat:a,destStat:o}=n;return await tms(e,a,t),r.filter?rms(Jhs,o,e,t,r):Jhs(o,e,t,r)}async function $hs(e,t,r){let{0:n,1:a}=await hSl(e,t,r);if(a){if(ems(n,a))throw new ZZt({message:"src and dest cannot be the same",path:t,syscall:"cp",errno:_re});if(n.isDirectory()&&!a.isDirectory())throw new K2l({message:`cannot overwrite directory ${e} with non-directory ${t}`,path:t,syscall:"cp",errno:sSl});if(!n.isDirectory()&&a.isDirectory())throw new q2l({message:`cannot overwrite non-directory ${e} with directory ${t}`,path:t,syscall:"cp",errno:oSl})}if(n.isDirectory()&&N6r(e,t))throw new ZZt({message:`cannot copy ${e} to a subdirectory of self ${t}`,path:t,syscall:"cp",errno:_re});return{srcStat:n,destStat:a}}function ems(e,t){return t.ino&&t.dev&&t.ino===e.ino&&t.dev===e.dev}function hSl(e,t,r){let n=r.dereference?a=>yFe(a,{bigint:!0}):a=>jhs(a,{bigint:!0});return Promise.all([n(e),n(t).catch(a=>{if(a.code==="ENOENT")return null;throw a})])}async function Jhs(e,t,r,n){let a=Aze(r);return await mSl(a)||await zhs(a,{recursive:!0}),LZt(e,t,r,n)}function mSl(e){return yFe(e).then(()=>!0,t=>t.code==="ENOENT"?!1:Promise.reject(t))}async function tms(e,t,r){let n=dze(Aze(e)),a=dze(Aze(r));if(a===n||a===gSl(a).root)return;let o;try{o=await yFe(a,{bigint:!0})}catch(l){if(l.code==="ENOENT")return;throw l}if(ems(t,o))throw new ZZt({message:`cannot copy ${e} to a subdirectory of self ${r}`,path:r,syscall:"cp",errno:_re});return tms(e,t,a)}var Uhs=e=>dze(e).split(ASl).filter(Boolean);function N6r(e,t){let r=Uhs(e),n=Uhs(t);return r.every((a,o)=>n[o]===a)}async function rms(e,t,r,n,a,o){if(await a.filter(r,n))return e(t,r,n,a,o)}function CSl(e,t,r,n){return n.filter?rms(LZt,e,t,r,n):LZt(e,t,r,n)}async function LZt(e,t,r,n){let o=await(n.dereference?yFe:jhs)(t);if(o.isDirectory()&&n.recursive)return BSl(o,e,t,r,n);if(o.isDirectory())throw new rSl({message:`${t} is a directory (not copied)`,path:t,syscall:"cp",errno:_re});if(o.isFile()||o.isCharacterDevice()||o.isBlockDevice())return _Sl(o,e,t,r,n);if(o.isSymbolicLink())return TSl(e,t,r);throw o.isSocket()?new $2l({message:`cannot copy a socket file: ${r}`,path:r,syscall:"cp",errno:_re}):o.isFIFO()?new z2l({message:`cannot copy a FIFO pipe: ${r}`,path:r,syscall:"cp",errno:_re}):new tSl({message:`cannot copy an unknown file type: ${r}`,path:r,syscall:"cp",errno:_re})}function _Sl(e,t,r,n,a){return t?ySl(e,r,n,a):nms(e,r,n,a)}async function ySl(e,t,r,n){if(n.force)return await qhs(r),nms(e,t,r,n);if(n.errorOnExist)throw new j2l({message:`${r} already exists`,path:r,syscall:"cp",errno:iSl})}async function nms(e,t,r,n){return await cSl(t,r),n.preserveTimestamps?bSl(e.mode,t,r):VZt(r,e.mode)}async function bSl(e,t,r){return ESl(e)&&await SSl(r,e),Khs(e,t,r)}function ESl(e){return(e&128)===0}function SSl(e,t){return VZt(e,t|128)}async function Khs(e,t,r){return await vSl(t,r),VZt(r,e)}function VZt(e,t){return aSl(e,t)}async function vSl(e,t){let r=await yFe(e);return uSl(t,r.atime,r.mtime)}function BSl(e,t,r,n,a){return t?ims(r,n,a):wSl(e.mode,r,n,a)}async function wSl(e,t,r,n){return await zhs(r),await ims(t,r,n),VZt(r,e)}async function ims(e,t,r){let n=await lSl(e);for(let a=0;a{var NSl=Et("fs/promises"),DSl=B6r(),kSl=Ohs(),xSl=oms(),GSl=kSl.satisfies(">=16.7.0"),FSl=async(e,t,r)=>{let n=DSl(r,{copy:["dereference","errorOnExist","filter","force","preserveTimestamps","recursive"]});return GSl?NSl.cp(e,t,n):xSl(e,t,n)};ams.exports=FSl});var ums=H((nrg,lms)=>{var{join:ZSl,sep:LSl}=Et("path"),VSl=B6r(),{mkdir:WSl,mkdtemp:OSl,rm:PSl}=Et("fs/promises"),MSl=async(e,t,r)=>{let n=VSl(r,{copy:["tmpPrefix"]});await WSl(e,{recursive:!0});let a=await OSl(ZSl(`${e}${LSl}`,n.tmpPrefix||"")),o,l;try{l=await t(a)}catch(A){o=A}try{await PSl(a,{force:!0,recursive:!0})}catch{}if(o)throw o;return l};lms.exports=MSl});var pms=H((irg,dms)=>{var{readdir:gms}=Et("fs/promises"),{join:Ams}=Et("path"),HSl=async e=>{let t=[];for(let r of await gms(e))if(r.startsWith("@"))for(let n of await gms(Ams(e,r)))t.push(Ams(r,n));else t.push(r);return t};dms.exports=HSl});var _ms=H((srg,Cms)=>{var{dirname:fms,join:Ims,resolve:hms,relative:YSl,isAbsolute:QSl}=Et("path"),Qj=Et("fs/promises"),XSl=async e=>{try{return await Qj.access(e),!0}catch(t){return t.code!=="ENOENT"}},mms=async(e,t,r={},n=!0,a=[])=>{if(!e||!t)throw new TypeError("`source` and `destination` file required");if(r={overwrite:!0,...r},!r.overwrite&&await XSl(t))throw new Error(`The destination file exists: ${t}`);await Qj.mkdir(fms(t),{recursive:!0});try{await Qj.rename(e,t)}catch(o){if(o.code==="EXDEV"||o.code==="EPERM"){let l=await Qj.lstat(e);if(l.isDirectory()){let A=await Qj.readdir(e);await Promise.all(A.map(f=>mms(Ims(e,f),Ims(t,f),r,!1,a)))}else l.isSymbolicLink()?a.push({source:e,destination:t}):await Qj.copyFile(e,t)}else throw o}n&&(await Promise.all(a.map(async({source:o,destination:l})=>{let A=await Qj.readlink(o);QSl(A)&&(A=hms(l,YSl(o,A)));let f="file";try{f=await Qj.stat(hms(fms(o),A)),f.isDirectory()&&(f="junction")}catch{}await Qj.symlink(A,l,f)})),await Qj.rm(e,{recursive:!0,force:!0}))};Cms.exports=mms});var WZt=H((org,yms)=>{"use strict";var JSl=cms(),USl=ums(),KSl=pms(),jSl=_ms();yms.exports={cp:JSl,withTempDir:USl,readdirScoped:KSl,moveFile:jSl}});var OZt={};Uf(OZt,{default:()=>bms,pMapIterable:()=>zSl,pMapSkip:()=>pze});async function bms(e,t,{concurrency:r=Number.POSITIVE_INFINITY,stopOnError:n=!0,signal:a}={}){return new Promise((o,l)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!(Number.isSafeInteger(r)&&r>=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);let A=[],f=[],I=new Map,C=!1,b=!1,E=!1,N=0,B=0,F=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),Q=()=>{ne(a.reason)},J=()=>{a?.removeEventListener("abort",Q)},ae=fe=>{o(fe),J()},ne=fe=>{C=!0,b=!0,l(fe),J()};a&&(a.aborted&&ne(a.reason),a.addEventListener("abort",Q,{once:!0}));let ce=async()=>{if(b)return;let fe=await F.next(),ue=B;if(B++,fe.done){if(E=!0,N===0&&!b){if(!n&&f.length>0){ne(new AggregateError(f));return}if(b=!0,I.size===0){ae(A);return}let de=[];for(let[be,Se]of A.entries())I.get(be)!==pze&&de.push(Se);ae(de)}return}N++,(async()=>{try{let de=await fe.value;if(b)return;let be=await t(de,ue);be===pze&&I.set(ue,be),A[ue]=be,N--,await ce()}catch(de){if(n)ne(de);else{f.push(de),N--;try{await ce()}catch(be){ne(be)}}}})()};(async()=>{for(let fe=0;fe=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);if(!(Number.isSafeInteger(n)&&n>=r||n===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`backpressure\` to be an integer from \`concurrency\` (${r}) and up or \`Infinity\`, got \`${n}\` (${typeof n})`);return{async*[Symbol.asyncIterator](){let a=e[Symbol.asyncIterator]===void 0?e[Symbol.iterator]():e[Symbol.asyncIterator](),o=[],l=0,A=!1,f=0;function I(){if(A||!(l{let{done:b,value:E}=await a.next();if(b)return l--,{done:!0};I();try{let N=await t(await E,f++);if(l--,N===pze){let B=o.indexOf(C);B>0&&o.splice(B,1)}return I(),{done:!1,value:N}}catch(N){return l--,A=!0,{error:N}}})();o.push(C)}for(I();o.length>0;){let{error:C,done:b,value:E}=await o[0];if(o.shift(),C)throw C;if(b)return;I(),E!==pze&&(yield E)}}}}var pze,PZt=bc(()=>{pze=Symbol("skip")});var bFe=H((lrg,e3)=>{"use strict";var qSl=Et("crypto"),{appendFile:$Sl,mkdir:x6r,readFile:evl,readdir:tvl,rm:Ems,writeFile:rvl}=Et("fs/promises"),{Minipass:nvl}=cF(),Xj=Et("path"),ivl=are(),svl=b6r(),ovl=_Fe(),avl=S6r(),cvl=E6r()["cache-version"].index,{moveFile:lvl}=WZt(),D6r=5;e3.exports.NotFoundError=class extends Error{constructor(t,r){super(`No cache entry for ${r} found in ${t}`),this.code="ENOENT",this.cache=t,this.key=r}};e3.exports.compact=uvl;async function uvl(e,t,r,n={}){let a=fze(e,t),o=await MZt(a),l=[];for(let E=o.length-1;E>=0;--E){let N=o[E];if(N.integrity===null&&!n.validateEntry)break;(!n.validateEntry||n.validateEntry(N)===!0)&&(l.length===0||!l.find(B=>r(B,N)))&&l.unshift(N)}let A=` +\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var cIs=H(aIs=>{"use strict";var U8r=fre().Buffer;aIs._dbcs=Ire;var _x=-1,oIs=-2,qH=-10,yL=-1e3,AFe=new Array(256),ize=-1;for(_Zt=0;_Zt<256;_Zt++)AFe[_Zt]=_x;var _Zt;function Ire(e,t){if(this.encodingName=e.encodingName,!e)throw new Error("DBCS codec is called without the data.");if(!e.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=e.table();this.decodeTables=[],this.decodeTables[0]=AFe.slice(0),this.decodeTableSeq=[];for(var n=0;nyL)throw new Error("gb18030 decode tables conflict at byte 2");for(var I=this.decodeTables[yL-A[f]],C=129;C<=254;C++){if(I[C]===_x)I[C]=yL-o;else{if(I[C]===yL-o)continue;if(I[C]>yL)throw new Error("gb18030 decode tables conflict at byte 3")}for(var b=this.decodeTables[yL-I[C]],E=48;E<=57;E++)b[E]===_x&&(b[E]=oIs)}}}this.defaultCharUnicode=t.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var N={};if(e.encodeSkipVals)for(var n=0;n0;e>>>=8)t.push(e&255);t.length==0&&t.push(0);for(var r=this.decodeTables[0],n=t.length-1;n>0;n--){var a=r[t[n]];if(a==_x)r[t[n]]=yL-this.decodeTables.length,this.decodeTables.push(r=AFe.slice(0));else if(a<=yL)r=this.decodeTables[yL-a];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+e.toString(16))}return r};Ire.prototype._addDecodeChunk=function(e){var t=parseInt(e[0],16),r=this._getDecodeTrieNode(t);t=t&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+e[0]+": too long"+t)};Ire.prototype._getEncodeBucket=function(e){var t=e>>8;return this.encodeTable[t]===void 0&&(this.encodeTable[t]=AFe.slice(0)),this.encodeTable[t]};Ire.prototype._setEncodeChar=function(e,t){var r=this._getEncodeBucket(e),n=e&255;r[n]<=qH?this.encodeTableSeq[qH-r[n]][ize]=t:r[n]==_x&&(r[n]=t)};Ire.prototype._setEncodeSequence=function(e,t){var r=e[0],n=this._getEncodeBucket(r),a=r&255,o;n[a]<=qH?o=this.encodeTableSeq[qH-n[a]]:(o={},n[a]!==_x&&(o[ize]=n[a]),n[a]=qH-this.encodeTableSeq.length,this.encodeTableSeq.push(o));for(var l=1;l=0)this._setEncodeChar(A,f),a=!0;else if(A<=yL){var I=yL-A;if(!o[I]){var C=f<<8>>>0;this._fillEncodeTable(I,C,r)?a=!0:o[I]=!0}}else A<=qH&&(this._setEncodeSequence(this.decodeTableSeq[qH-A],f),a=!0)}return a};function yZt(e,t){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=t.encodeTable,this.encodeTableSeq=t.encodeTableSeq,this.defaultCharSingleByte=t.defCharSB,this.gb18030=t.gb18030}yZt.prototype.write=function(e){for(var t=U8r.alloc(e.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,a=-1,o=0,l=0;;){if(a===-1){if(o==e.length)break;var A=e.charCodeAt(o++)}else{var A=a;a=-1}if(55296<=A&&A<57344)if(A<56320)if(r===-1){r=A;continue}else r=A,A=_x;else r!==-1?(A=65536+(r-55296)*1024+(A-56320),r=-1):A=_x;else r!==-1&&(a=A,A=_x,r=-1);var f=_x;if(n!==void 0&&A!=_x){var I=n[A];if(typeof I=="object"){n=I;continue}else typeof I=="number"?f=I:I==null&&(I=n[ize],I!==void 0&&(f=I,a=A));n=void 0}else if(A>=0){var C=this.encodeTable[A>>8];if(C!==void 0&&(f=C[A&255]),f<=qH){n=this.encodeTableSeq[qH-f];continue}if(f==_x&&this.gb18030){var b=j8r(this.gb18030.uChars,A);if(b!=-1){var f=this.gb18030.gbChars[b]+(A-this.gb18030.uChars[b]);t[l++]=129+Math.floor(f/12600),f=f%12600,t[l++]=48+Math.floor(f/1260),f=f%1260,t[l++]=129+Math.floor(f/10),f=f%10,t[l++]=48+f;continue}}}f===_x&&(f=this.defaultCharSingleByte),f<256?t[l++]=f:f<65536?(t[l++]=f>>8,t[l++]=f&255):f<16777216?(t[l++]=f>>16,t[l++]=f>>8&255,t[l++]=f&255):(t[l++]=f>>>24,t[l++]=f>>>16&255,t[l++]=f>>>8&255,t[l++]=f&255)}return this.seqObj=n,this.leadSurrogate=r,t.slice(0,l)};yZt.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var e=U8r.alloc(10),t=0;if(this.seqObj){var r=this.seqObj[ize];r!==void 0&&(r<256?e[t++]=r:(e[t++]=r>>8,e[t++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(e[t++]=this.defaultCharSingleByte,this.leadSurrogate=-1),e.slice(0,t)}};yZt.prototype.findIdx=j8r;function K8r(e,t){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=t.decodeTables,this.decodeTableSeq=t.decodeTableSeq,this.defaultCharUnicode=t.defaultCharUnicode,this.gb18030=t.gb18030}K8r.prototype.write=function(e){for(var t=U8r.alloc(e.length*2),r=this.nodeIdx,n=this.prevBytes,a=this.prevBytes.length,o=-this.prevBytes.length,l,A=0,f=0;A=0?e[A]:n[A+a],l=this.decodeTables[r][I];if(!(l>=0))if(l===_x)l=this.defaultCharUnicode.charCodeAt(0),A=o;else if(l===oIs){if(A>=3)var C=(e[A-3]-129)*12600+(e[A-2]-48)*1260+(e[A-1]-129)*10+(I-48);else var C=(n[A-3+a]-129)*12600+((A-2>=0?e[A-2]:n[A-2+a])-48)*1260+((A-1>=0?e[A-1]:n[A-1+a])-129)*10+(I-48);var b=j8r(this.gb18030.gbChars,C);l=this.gb18030.uChars[b]+C-this.gb18030.gbChars[b]}else if(l<=yL){r=yL-l;continue}else if(l<=qH){for(var E=this.decodeTableSeq[qH-l],N=0;N>8;l=E[E.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+l+" at "+r+"/"+I);if(l>=65536){l-=65536;var B=55296|l>>10;t[f++]=B&255,t[f++]=B>>8,l=56320|l&1023}t[f++]=l&255,t[f++]=l>>8,r=0,o=A+1}return this.nodeIdx=r,this.prevBytes=o>=0?Array.prototype.slice.call(e,o):n.slice(o+a).concat(Array.prototype.slice.call(e)),t.slice(0,f).toString("ucs2")};K8r.prototype.end=function(){for(var e="";this.prevBytes.length>0;){e+=this.defaultCharUnicode;var t=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,t.length>0&&(e+=this.write(t))}return this.prevBytes=[],this.nodeIdx=0,e};function j8r(e,t){if(e[0]>t)return-1;for(var r=0,n=e.length;r>1);e[a]<=t?r=a:n=a}return r}});var lIs=H((Nrg,m2l)=>{m2l.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var uIs=H((Drg,C2l)=>{C2l.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var bZt=H((krg,_2l)=>{_2l.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var z8r=H((xrg,y2l)=>{y2l.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var gIs=H((Grg,b2l)=>{b2l.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var AIs=H((Frg,E2l)=>{E2l.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var q8r=H((Zrg,S2l)=>{S2l.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var dIs=H((Lrg,v2l)=>{v2l.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var fIs=H((Vrg,pIs)=>{"use strict";pIs.exports={shiftjis:{type:"_dbcs",table:function(){return lIs()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return uIs()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return bZt()}},gbk:{type:"_dbcs",table:function(){return bZt().concat(z8r())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return bZt().concat(z8r())},gb18030:function(){return gIs()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return AIs()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return q8r()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return q8r().concat(dIs())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var mIs=H((hIs,dFe)=>{"use strict";var IIs=[Qfs(),Ufs(),zfs(),$fs(),tIs(),nIs(),sIs(),cIs(),fIs()];for(EZt=0;EZt{"use strict";var CIs=fre().Buffer;_Is.exports=function(e){var t=e.Transform;function r(a,o){this.conv=a,o=o||{},o.decodeStrings=!1,t.call(this,o)}r.prototype=Object.create(t.prototype,{constructor:{value:r}}),r.prototype._transform=function(a,o,l){if(typeof a!="string")return l(new Error("Iconv encoding stream needs strings as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A),l()}catch(f){l(f)}},r.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o),a()}catch(l){a(l)}},r.prototype.collect=function(a){var o=[];return this.on("error",a),this.on("data",function(l){o.push(l)}),this.on("end",function(){a(null,CIs.concat(o))}),this};function n(a,o){this.conv=a,o=o||{},o.encoding=this.encoding="utf8",t.call(this,o)}return n.prototype=Object.create(t.prototype,{constructor:{value:n}}),n.prototype._transform=function(a,o,l){if(!CIs.isBuffer(a)&&!(a instanceof Uint8Array))return l(new Error("Iconv decoding stream needs buffers as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A,this.encoding),l()}catch(f){l(f)}},n.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o,this.encoding),a()}catch(l){a(l)}},n.prototype.collect=function(a){var o="";return this.on("error",a),this.on("data",function(l){o+=l}),this.on("end",function(){a(null,o)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:n}}});var vIs=H((Org,SIs)=>{"use strict";var bIs=fre().Buffer,EIs=Hfs(),eh=SIs.exports;eh.encodings=null;eh.defaultCharUnicode="\uFFFD";eh.defaultCharSingleByte="?";eh.encode=function(t,r,n){t=""+(t||"");var a=eh.getEncoder(r,n),o=a.write(t),l=a.end();return l&&l.length>0?bIs.concat([o,l]):o};eh.decode=function(t,r,n){typeof t=="string"&&(eh.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),eh.skipDecodeWarning=!0),t=bIs.from(""+(t||""),"binary"));var a=eh.getDecoder(r,n),o=a.write(t),l=a.end();return l?o+l:o};eh.encodingExists=function(t){try{return eh.getCodec(t),!0}catch{return!1}};eh.toEncoding=eh.encode;eh.fromEncoding=eh.decode;eh._codecDataCache={};eh.getCodec=function(t){eh.encodings||(eh.encodings=mIs());for(var r=eh._canonicalizeEncoding(t),n={};;){var a=eh._codecDataCache[r];if(a)return a;var o=eh.encodings[r];switch(typeof o){case"string":r=o;break;case"object":for(var l in o)n[l]=o[l];n.encodingName||(n.encodingName=r),r=o.type;break;case"function":return n.encodingName||(n.encodingName=r),a=new o(n,eh),eh._codecDataCache[n.encodingName]=a,a;default:throw new Error("Encoding not recognized: '"+t+"' (searched as: '"+r+"')")}}};eh._canonicalizeEncoding=function(e){return(""+e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};eh.getEncoder=function(t,r){var n=eh.getCodec(t),a=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(a=new EIs.PrependBOM(a,r)),a};eh.getDecoder=function(t,r){var n=eh.getCodec(t),a=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(a=new EIs.StripBOM(a,r)),a};eh.enableStreamingAPI=function(t){if(!eh.supportsStreams){var r=yIs()(t);eh.IconvLiteEncoderStream=r.IconvLiteEncoderStream,eh.IconvLiteDecoderStream=r.IconvLiteDecoderStream,eh.encodeStream=function(a,o){return new eh.IconvLiteEncoderStream(eh.getEncoder(a,o),o)},eh.decodeStream=function(a,o){return new eh.IconvLiteDecoderStream(eh.getDecoder(a,o),o)},eh.supportsStreams=!0}};var vZt;try{vZt=Et("stream")}catch{}vZt&&vZt.Transform?eh.enableStreamingAPI(vZt):eh.encodeStream=eh.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var TIs=H((Prg,wIs)=>{"use strict";var BZt=vIs();wIs.exports.convert=B2l;function B2l(e,t,r){r=BIs(r||"UTF-8"),t=BIs(t||"UTF-8"),e=e||"";var n;if(r!=="UTF-8"&&typeof e=="string"&&(e=Buffer.from(e,"binary")),r===t)typeof e=="string"?n=Buffer.from(e):n=e;else try{n=w2l(e,t,r)}catch(a){console.error(a),n=e}return typeof n=="string"&&(n=Buffer.from(n,"utf-8")),n}function w2l(e,t,r){return t==="UTF-8"?BZt.decode(e,r):r==="UTF-8"?BZt.encode(e,t):BZt.encode(BZt.decode(e,r),t)}function BIs(e){return(e||"").toString().trim().replace(/^latin[\-_]?(\d+)$/i,"ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i,"WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i,"UTF-$1").replace(/^ks_c_5601\-1987$/i,"CP949").replace(/^us[\-_]?ascii$/i,"ASCII").toUpperCase()}});var TZt=H((Mrg,DIs)=>{"use strict";var{Minipass:Qj}=lF(),$8r=Lfs(),NIs=Wfs(),{BUFFER:T2l}=NIs,sze=I8r(),e6r;try{e6r=TIs().convert}catch{}var hre=Symbol("Body internals"),X0e=Symbol("consumeBody"),wZt=class{constructor(t,r={}){let{size:n=0,timeout:a=0}=r,o=t==null?null:RIs(t)?Buffer.from(t.toString()):oze(t)||Buffer.isBuffer(t)?t:Object.prototype.toString.call(t)==="[object ArrayBuffer]"?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Qj.isStream(t)?t:Buffer.from(String(t));this[hre]={body:o,disturbed:!1,error:null},this.size=n,this.timeout=a,Qj.isStream(o)&&o.on("error",l=>{let A=l.name==="AbortError"?l:new sze(`Invalid response while trying to fetch ${this.url}: ${l.message}`,"system",l);this[hre].error=A})}get body(){return this[hre].body}get bodyUsed(){return this[hre].disturbed}arrayBuffer(){return this[X0e]().then(t=>t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength))}blob(){let t=this.headers&&this.headers.get("content-type")||"";return this[X0e]().then(r=>Object.assign(new NIs([],{type:t.toLowerCase()}),{[T2l]:r}))}async json(){let t=await this[X0e]();try{return JSON.parse(t.toString())}catch(r){throw new sze(`invalid json response body at ${this.url} reason: ${r.message}`,"invalid-json")}}text(){return this[X0e]().then(t=>t.toString())}buffer(){return this[X0e]()}textConverted(){return this[X0e]().then(t=>R2l(t,this.headers))}[X0e](){if(this[hre].disturbed)return Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[hre].disturbed=!0,this[hre].error)return Promise.reject(this[hre].error);if(this.body===null)return Promise.resolve(Buffer.alloc(0));if(Buffer.isBuffer(this.body))return Promise.resolve(this.body);let t=oze(this.body)?this.body.stream():this.body;if(!Qj.isStream(t))return Promise.resolve(Buffer.alloc(0));let r=this.size&&t instanceof $8r||!this.size&&t instanceof Qj&&!(t instanceof $8r)?t:this.size?new $8r({size:this.size}):new Qj,n=this.timeout&&r.writable?setTimeout(()=>{r.emit("error",new sze(`Response timeout while trying to fetch ${this.url} (over ${this.timeout}ms)`,"body-timeout"))},this.timeout):null;return n&&n.unref&&n.unref(),new Promise(a=>{r!==t&&(t.on("error",o=>r.emit("error",o)),t.pipe(r)),a()}).then(()=>r.concat()).then(a=>(clearTimeout(n),a)).catch(a=>{throw clearTimeout(n),a.name==="AbortError"||a.name==="FetchError"?a:a.name==="RangeError"?new sze(`Could not create Buffer from response body for ${this.url}: ${a.message}`,"system",a):new sze(`Invalid response body while trying to fetch ${this.url}: ${a.message}`,"system",a)})}static clone(t){if(t.bodyUsed)throw new Error("cannot clone body after it is used");let r=t.body;if(Qj.isStream(r)&&typeof r.getBoundary!="function"){let n=new Qj,a=new Qj,o=new Qj;return n.on("error",l=>{a.emit("error",l),o.emit("error",l)}),r.on("error",l=>n.emit("error",l)),n.pipe(a),n.pipe(o),r.pipe(n),t[hre].body=a,o}else return t.body}static extractContentType(t){return t==null?null:typeof t=="string"?"text/plain;charset=UTF-8":RIs(t)?"application/x-www-form-urlencoded;charset=UTF-8":oze(t)?t.type||null:Buffer.isBuffer(t)||Object.prototype.toString.call(t)==="[object ArrayBuffer]"||ArrayBuffer.isView(t)?null:typeof t.getBoundary=="function"?`multipart/form-data;boundary=${t.getBoundary()}`:Qj.isStream(t)?null:"text/plain;charset=UTF-8"}static getTotalBytes(t){let{body:r}=t;return r==null?0:oze(r)?r.size:Buffer.isBuffer(r)?r.length:r&&typeof r.getLengthSync=="function"&&(r._lengthRetrievers&&r._lengthRetrievers.length===0||r.hasKnownLength&&r.hasKnownLength())?r.getLengthSync():null}static writeToStream(t,r){let{body:n}=r;return n==null?t.end():Buffer.isBuffer(n)||typeof n=="string"?t.end(n):(oze(n)?n.stream():n).on("error",o=>t.emit("error",o)).pipe(t),t}};Object.defineProperties(wZt.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});var RIs=e=>typeof e!="object"||typeof e.append!="function"||typeof e.delete!="function"||typeof e.get!="function"||typeof e.getAll!="function"||typeof e.has!="function"||typeof e.set!="function"?!1:e.constructor.name==="URLSearchParams"||Object.prototype.toString.call(e)==="[object URLSearchParams]"||typeof e.sort=="function",oze=e=>typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&typeof e.constructor.name=="string"&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag]),R2l=(e,t)=>{if(typeof e6r!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let r=t&&t.get("content-type"),n="utf-8",a;r&&(a=/charset=([^;]*)/i.exec(r));let o=e.slice(0,1024).toString();return!a&&o&&(a=/{"use strict";var xIs=/[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/,r6r=/[^\t\x20-\x7e\x80-\xff]/,aze=e=>{if(e=`${e}`,xIs.test(e)||e==="")throw new TypeError(`${e} is not a legal HTTP header name`)},kIs=e=>{if(e=`${e}`,r6r.test(e))throw new TypeError(`${e} is not a legal HTTP header value`)},pFe=(e,t)=>{t=t.toLowerCase();for(let r in e)if(r.toLowerCase()===t)return r},mw=Symbol("map"),RZt=class e{constructor(t=void 0){if(this[mw]=Object.create(null),t instanceof e){let r=t.raw(),n=Object.keys(r);for(let a of n)for(let o of r[a])this.append(a,o);return}if(t!=null)if(typeof t=="object"){let r=t[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");let n=[];for(let a of t){if(typeof a!="object"||typeof a[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");let o=Array.from(a);if(o.length!==2)throw new TypeError("Each header pair must be a name/value tuple");n.push(o)}for(let a of n)this.append(a[0],a[1])}else for(let n of Object.keys(t))this.append(n,t[n])}else throw new TypeError("Provided initializer must be an object")}get(t){t=`${t}`,aze(t);let r=pFe(this[mw],t);return r===void 0?null:this[mw][r].join(", ")}forEach(t,r=void 0){let n=n6r(this);for(let a=0;aObject.keys(e[mw]).sort().map(t==="key"?r=>r.toLowerCase():t==="value"?r=>e[mw][r].join(", "):r=>[r.toLowerCase(),e[mw][r].join(", ")]),t6r=Symbol("internal"),J0e=class e{constructor(t,r){this[t6r]={target:t,kind:r,index:0}}get[Symbol.toStringTag](){return"HeadersIterator"}next(){if(!this||Object.getPrototypeOf(this)!==e.prototype)throw new TypeError("Value of `this` is not a HeadersIterator");let{target:t,kind:r,index:n}=this[t6r],a=n6r(t,r),o=a.length;return n>=o?{value:void 0,done:!0}:(this[t6r].index++,{value:a[n],done:!1})}};Object.setPrototypeOf(J0e.prototype,Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));GIs.exports=RZt});var VIs=H((Yrg,LIs)=>{"use strict";var N2l=Et("http"),{STATUS_CODES:D2l}=N2l,FIs=NZt(),ZIs=TZt(),{clone:k2l,extractContentType:x2l}=ZIs,mre=Symbol("Response internals"),DZt=class e extends ZIs{constructor(t=null,r={}){super(t,r);let n=r.status||200,a=new FIs(r.headers);if(t!=null&&!a.has("Content-Type")){let o=x2l(t);o&&a.append("Content-Type",o)}this[mre]={url:r.url,status:n,statusText:r.statusText||D2l[n],headers:a,counter:r.counter,trailer:Promise.resolve(r.trailer||new FIs)}}get trailer(){return this[mre].trailer}get url(){return this[mre].url||""}get status(){return this[mre].status}get ok(){return this[mre].status>=200&&this[mre].status<300}get redirected(){return this[mre].counter>0}get statusText(){return this[mre].statusText}get headers(){return this[mre].headers}clone(){return new e(k2l(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,trailer:this.trailer})}get[Symbol.toStringTag](){return"Response"}};LIs.exports=DZt;Object.defineProperties(DZt.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var WIs=H((Qrg,G2l)=>{G2l.exports={name:"minipass-fetch",version:"4.0.1",description:"An implementation of window.fetch in Node.js using Minipass streams",license:"MIT",main:"lib/index.js",scripts:{"test:tls-fixtures":"./test/fixtures/tls/setup.sh",test:"tap",snap:"tap",lint:"npm run eslint",postlint:"template-oss-check",lintfix:"npm run eslint -- --fix",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},tap:{"coverage-map":"map.js","check-coverage":!0,"nyc-arg":["--exclude","tap-snapshots/**"]},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3","@ungap/url-search-params":"^0.2.2","abort-controller":"^3.0.0","abortcontroller-polyfill":"~1.7.3",encoding:"^0.1.13","form-data":"^4.0.0",nock:"^13.2.4",parted:"^0.1.1","string-to-arraybuffer":"^1.0.2",tap:"^16.0.0"},dependencies:{minipass:"^7.0.3","minipass-sized":"^1.0.3",minizlib:"^3.0.1"},optionalDependencies:{encoding:"^0.1.13"},repository:{type:"git",url:"git+https://github.com/npm/minipass-fetch.git"},keywords:["fetch","minipass","node-fetch","window.fetch"],files:["bin/","lib/"],engines:{node:"^18.17.0 || >=20.5.0"},author:"GitHub Inc.",templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.3",publish:"true"}}});var MIs=H((Xrg,PIs)=>{"use strict";var{URL:i6r}=Et("url"),{Minipass:F2l}=lF(),s6r=NZt(),{exportNodeCompatibleHeaders:Z2l}=s6r,OIs=TZt(),{clone:L2l,extractContentType:V2l,getTotalBytes:W2l}=OIs,O2l=WIs().version,P2l=`minipass-fetch/${O2l} (+https://github.com/isaacs/minipass-fetch)`,pJ=Symbol("Request internals"),kZt=e=>typeof e=="object"&&typeof e[pJ]=="object",M2l=e=>{let t=e&&typeof e=="object"&&Object.getPrototypeOf(e);return!!(t&&t.constructor.name==="AbortSignal")},xZt=class e extends OIs{constructor(t,r={}){let n=kZt(t)?new i6r(t.url):t&&t.href?new i6r(t.href):new i6r(`${t}`);kZt(t)?r={...t[pJ],...r}:(!t||typeof t=="string")&&(t={});let a=(r.method||t.method||"GET").toUpperCase(),o=a==="GET"||a==="HEAD";if((r.body!==null&&r.body!==void 0||kZt(t)&&t.body!==null)&&o)throw new TypeError("Request with GET/HEAD method cannot have body");let l=r.body!==null&&r.body!==void 0?r.body:kZt(t)&&t.body!==null?L2l(t):null;super(l,{timeout:r.timeout||t.timeout||0,size:r.size||t.size||0});let A=new s6r(r.headers||t.headers||{});if(l!=null&&!A.has("Content-Type")){let De=V2l(l);De&&A.append("Content-Type",De)}let f="signal"in r?r.signal:null;if(f!=null&&!M2l(f))throw new TypeError("Expected signal must be an instanceof AbortSignal");let{ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:J,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0",secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se}=r;this[pJ]={method:a,redirect:r.redirect||t.redirect||"follow",headers:A,parsedURL:n,signal:f,ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:J,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe,secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se},this.follow=r.follow!==void 0?r.follow:t.follow!==void 0?t.follow:20,this.compress=r.compress!==void 0?r.compress:t.compress!==void 0?t.compress:!0,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent}get method(){return this[pJ].method}get url(){return this[pJ].parsedURL.toString()}get headers(){return this[pJ].headers}get redirect(){return this[pJ].redirect}get signal(){return this[pJ].signal}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}static getNodeRequestOptions(t){let r=t[pJ].parsedURL,n=new s6r(t[pJ].headers);if(n.has("Accept")||n.set("Accept","*/*"),!/^https?:$/.test(r.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&F2l.isStream(t.body)&&typeof t.body.destroy!="function")throw new Error("Cancellation of streamed requests with AbortSignal is not supported");let a=(t.body===null||t.body===void 0)&&/^(POST|PUT)$/i.test(t.method)?"0":t.body!==null&&t.body!==void 0?W2l(t):null;a&&n.set("Content-Length",a+""),n.has("User-Agent")||n.set("User-Agent",P2l),t.compress&&!n.has("Accept-Encoding")&&n.set("Accept-Encoding","gzip,deflate");let o=typeof t.agent=="function"?t.agent(r):t.agent;!n.has("Connection")&&!o&&n.set("Connection","close");let{ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:J,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue}=t[pJ];return{...{auth:r.username||r.password?`${r.username}:${r.password}`:"",host:r.host,hostname:r.hostname,path:`${r.pathname}${r.search}`,port:r.port,protocol:r.protocol},method:t.method,headers:Z2l(n),agent:o,ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:J,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue,timeout:t.timeout}}};PIs.exports=xZt;Object.defineProperties(xZt.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}})});var YIs=H((Jrg,HIs)=>{"use strict";var o6r=class extends Error{constructor(t){super(t),this.code="FETCH_ABORTED",this.type="aborted",Error.captureStackTrace(this,this.constructor)}get name(){return"AbortError"}set name(t){}};HIs.exports=o6r});var uze=H((Urg,JIs)=>{"use strict";var{URL:cze}=Et("url"),H2l=Et("http"),Y2l=Et("https"),fFe=Bfs(),{Minipass:QIs}=lF(),Q2l=TZt(),{writeToStream:X2l,getTotalBytes:J2l}=Q2l,U0e=VIs(),c6r=NZt(),{createHeadersLenient:XIs}=c6r,lze=MIs(),{getNodeRequestOptions:U2l}=lze,nge=I8r(),a6r=YIs(),Cre=async(e,t)=>{if(/^data:/.test(e)){let r=new lze(e,t);return Promise.resolve().then(()=>new Promise((n,a)=>{let o,l;try{let{pathname:I,search:C}=new cze(e),b=I.split(",");if(b.length<2)throw new Error("invalid data: URI");let E=b.shift(),N=/;base64$/.test(E);o=N?E.slice(0,-1*7):E;let B=decodeURIComponent(b.join(",")+C);l=N?Buffer.from(B,"base64"):Buffer.from(B)}catch(I){return a(new nge(`[${r.method}] ${r.url} invalid URL, ${I.message}`,"system",I))}let{signal:A}=r;if(A&&A.aborted)return a(new a6r("The user aborted a request."));let f={"Content-Length":l.length};return o&&(f["Content-Type"]=o),n(new U0e(l,{headers:f}))}))}return new Promise((r,n)=>{let a=new lze(e,t),o;try{o=U2l(a)}catch(B){return n(B)}let l=(o.protocol==="https:"?Y2l:H2l).request,{signal:A}=a,f=null,I=()=>{let B=new a6r("The user aborted a request.");n(B),QIs.isStream(a.body)&&typeof a.body.destroy=="function"&&a.body.destroy(B),f&&f.body&&f.body.emit("error",B)};if(A&&A.aborted)return I();let C=()=>{I(),b()},b=()=>{E.abort(),A&&A.removeEventListener("abort",C),clearTimeout(N)},E=l(o);A&&A.addEventListener("abort",C);let N=null;a.timeout&&E.once("socket",()=>{N=setTimeout(()=>{n(new nge(`network timeout at: ${a.url}`,"request-timeout")),b()},a.timeout)}),E.on("error",B=>{E.res&&E.res.emit("error",B),n(new nge(`request to ${a.url} failed, reason: ${B.message}`,"system",B)),b()}),E.on("response",B=>{clearTimeout(N);let F=XIs(B.headers);if(Cre.isRedirect(B.statusCode)){let fe=F.get("Location"),ue=null;try{ue=fe===null?null:new cze(fe,a.url).toString()}catch{if(a.redirect!=="manual"){n(new nge(`uri requested responds with an invalid redirect URL: ${fe}`,"invalid-redirect")),b();return}}if(a.redirect==="error"){n(new nge(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),b();return}else if(a.redirect==="manual"){if(ue!==null)try{F.set("Location",ue)}catch(de){n(de)}}else if(a.redirect==="follow"&&ue!==null){if(a.counter>=a.follow){n(new nge(`maximum redirect reached at: ${a.url}`,"max-redirect")),b();return}if(B.statusCode!==303&&a.body&&J2l(a)===null){n(new nge("Cannot follow redirect with body being a readable stream","unsupported-redirect")),b();return}a.headers.set("host",new cze(ue).host);let de={headers:new c6r(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout},be=new cze(a.url),Se=new cze(ue);be.hostname!==Se.hostname&&(de.headers.delete("authorization"),de.headers.delete("cookie")),(B.statusCode===303||(B.statusCode===301||B.statusCode===302)&&a.method==="POST")&&(de.method="GET",de.body=void 0,de.headers.delete("content-length")),r(Cre(new lze(ue,de))),b();return}}B.once("end",()=>A&&A.removeEventListener("abort",C));let Q=new QIs;Q.on("error",b),B.on("error",fe=>Q.emit("error",fe)),B.on("data",fe=>Q.write(fe)),B.on("end",()=>Q.end());let J={url:a.url,status:B.statusCode,statusText:B.statusMessage,headers:F,size:a.size,timeout:a.timeout,counter:a.counter,trailer:new Promise(fe=>B.on("end",()=>fe(XIs(B.trailers))))},ae=F.get("Content-Encoding");if(!a.compress||a.method==="HEAD"||ae===null||B.statusCode===204||B.statusCode===304){f=new U0e(Q,J),r(f);return}let ne={flush:fFe.constants.Z_SYNC_FLUSH,finishFlush:fFe.constants.Z_SYNC_FLUSH};if(ae==="gzip"||ae==="x-gzip"){let fe=new fFe.Gunzip(ne);f=new U0e(Q.on("error",ue=>fe.emit("error",ue)).pipe(fe),J),r(f);return}if(ae==="deflate"||ae==="x-deflate"){B.once("data",fe=>{let ue=(fe[0]&15)===8?new fFe.Inflate:new fFe.InflateRaw;Q.on("error",de=>ue.emit("error",de)).pipe(ue),f=new U0e(ue,J),r(f)});return}if(ae==="br"){try{var ce=new fFe.BrotliDecompress}catch(fe){n(fe),b();return}Q.on("error",fe=>ce.emit("error",fe)).pipe(ce),f=new U0e(ce,J),r(f);return}f=new U0e(Q,J),r(f)}),X2l(E,a)})};JIs.exports=Cre;Cre.isRedirect=e=>e===301||e===302||e===303||e===307||e===308;Cre.Headers=c6r;Cre.Request=lze;Cre.Response=U0e;Cre.FetchError=nge;Cre.AbortError=a6r});var KIs=H((Krg,UIs)=>{var K2l=Et("dns"),j2l=["if-modified-since","if-none-match","if-unmodified-since","if-match","if-range"],z2l=e=>{let{strictSSL:t,...r}={...e};if(r.method=r.method?r.method.toUpperCase():"GET",t==null?r.rejectUnauthorized=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0":r.rejectUnauthorized=t!==!1,!r.retry)r.retry={retries:0};else if(typeof r.retry=="string"){let n=parseInt(r.retry,10);isFinite(n)?r.retry={retries:n}:r.retry={retries:0}}else typeof r.retry=="number"?r.retry={retries:r.retry}:r.retry={retries:0,...r.retry};return r.dns={ttl:5*60*1e3,lookup:K2l.lookup,...r.dns},r.cache=r.cache||"default",r.cache==="default"&&Object.keys(r.headers||{}).some(a=>j2l.includes(a.toLowerCase()))&&(r.cache="no-store"),r.cacheAdditionalHeaders=r.cacheAdditionalHeaders||[],r.cacheManager&&!r.cachePath&&(r.cachePath=r.cacheManager),r};UIs.exports=z2l});var $Is=H((jrg,l6r)=>{"use strict";l6r.exports=qIs;l6r.exports.preferredCharsets=qIs;var q2l=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function $2l(e){for(var t=e.split(","),r=0,n=0;r0}});var nhs=H((zrg,u6r)=>{"use strict";u6r.exports=rhs;u6r.exports.preferredEncodings=rhs;var iSl=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function sSl(e){for(var t=e.split(","),r=!1,n=1,a=0,o=0;a0}});var chs=H((qrg,g6r)=>{"use strict";g6r.exports=ahs;g6r.exports.preferredLanguages=ahs;var uSl=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function gSl(e){for(var t=e.split(","),r=0,n=0;r0}});var phs=H(($rg,A6r)=>{"use strict";A6r.exports=Ahs;A6r.exports.preferredMediaTypes=Ahs;var fSl=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function ISl(e){for(var t=ySl(e),r=0,n=0;r0)if(o.every(function(l){return t.params[l]=="*"||(t.params[l]||"").toLowerCase()==(n.params[l]||"").toLowerCase()}))a|=1;else return null;return{i:r,o:t.i,q:t.q,s:a}}function Ahs(e,t){var r=ISl(e===void 0?"*/*":e||"");if(!t)return r.filter(uhs).sort(lhs).map(CSl);var n=t.map(function(o,l){return hSl(o,r,l)});return n.filter(uhs).sort(lhs).map(function(o){return t[n.indexOf(o)]})}function lhs(e,t){return t.q-e.q||t.s-e.s||e.o-t.o||e.i-t.i||0}function CSl(e){return e.type+"/"+e.subtype}function uhs(e){return e.q>0}function dhs(e){for(var t=0,r=0;(r=e.indexOf('"',r))!==-1;)t++,r++;return t}function _Sl(e){var t=e.indexOf("="),r,n;return t===-1?r=e:(r=e.slice(0,t),n=e.slice(t+1)),[r,n]}function ySl(e){for(var t=e.split(","),r=1,n=0;r{"use strict";var ESl=$Is(),SSl=nhs(),vSl=chs(),BSl=phs();d6r.exports=Ib;d6r.exports.Negotiator=Ib;function Ib(e){if(!(this instanceof Ib))return new Ib(e);this.request=e}Ib.prototype.charset=function(t){var r=this.charsets(t);return r&&r[0]};Ib.prototype.charsets=function(t){return ESl(this.request.headers["accept-charset"],t)};Ib.prototype.encoding=function(t,r){var n=this.encodings(t,r);return n&&n[0]};Ib.prototype.encodings=function(t,r){var n=r||{};return SSl(this.request.headers["accept-encoding"],t,n.preferred)};Ib.prototype.language=function(t){var r=this.languages(t);return r&&r[0]};Ib.prototype.languages=function(t){return vSl(this.request.headers["accept-language"],t)};Ib.prototype.mediaType=function(t){var r=this.mediaTypes(t);return r&&r[0]};Ib.prototype.mediaTypes=function(t){return BSl(this.request.headers.accept,t)};Ib.prototype.preferredCharset=Ib.prototype.charset;Ib.prototype.preferredCharsets=Ib.prototype.charsets;Ib.prototype.preferredEncoding=Ib.prototype.encoding;Ib.prototype.preferredEncodings=Ib.prototype.encodings;Ib.prototype.preferredLanguage=Ib.prototype.language;Ib.prototype.preferredLanguages=Ib.prototype.languages;Ib.prototype.preferredMediaType=Ib.prototype.mediaType;Ib.prototype.preferredMediaTypes=Ib.prototype.mediaTypes});var f6r=H((tng,_hs)=>{var Ihs=vgr(),hhs=fhs(),wSl=cre(),mhs={shared:!1,ignoreCargoCult:!0},TSl={status:200,headers:{}},IFe=e=>{let t={method:e.method,url:e.url,headers:{},compress:e.compress};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},Chs=e=>{let t={status:e.status,headers:{}};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},p6r=class{constructor({entry:t,request:r,response:n,options:a}){this.entry=t,this.request=IFe(r),this.response=Chs(n),this.options=a,this.policy=new Ihs(this.request,this.response,mhs),this.entry&&(this.policy._responseTime=this.entry.metadata.time)}static storable(t,r){return!r.cachePath||r.cache==="no-store"||!["GET","HEAD"].includes(t.method)?!1:new Ihs(IFe(t),TSl,mhs).storable()}satisfies(t){let r=IFe(t);if(this.request.headers.host!==r.headers.host||this.request.compress!==r.compress)return!1;let n=new hhs(this.request),a=new hhs(r);return JSON.stringify(n.mediaTypes())!==JSON.stringify(a.mediaTypes())||JSON.stringify(n.languages())!==JSON.stringify(a.languages())||JSON.stringify(n.encodings())!==JSON.stringify(a.encodings())?!1:this.options.integrity?wSl.parse(this.options.integrity).match(this.entry.integrity):!0}storable(){return this.policy.storable()}get mustRevalidate(){return!!this.policy._rescc["must-revalidate"]}needsRevalidation(t){let r=IFe(t);return r.method="GET",!this.policy.satisfiesWithoutRevalidation(r)}responseHeaders(){return this.policy.responseHeaders()}revalidationHeaders(t){let r=IFe(t);return this.policy.revalidationHeaders(r)}revalidated(t,r){let n=IFe(t),a=Chs(r);return!this.policy.revalidatedPolicy(n,a).modified}};_hs.exports=p6r});var bhs=H((rng,yhs)=>{var I6r=class extends Error{constructor(t){super(`request to ${t} failed: cache mode is 'only-if-cached' but no cached response is available.`),this.code="ENOTCACHED"}};yhs.exports={NotCachedError:I6r}});var GZt=H((nng,Bhs)=>{var RSl=uZt(),Ehs=Symbol("_flush"),Shs=Symbol("_flushed"),vhs=Symbol("_flushing"),h6r=class extends RSl{constructor(t={}){if(typeof t=="function"&&(t={flush:t}),super(t),typeof t.flush!="function"&&typeof this.flush!="function")throw new TypeError("must provide flush function in options");this[Ehs]=t.flush||this.flush}emit(t,...r){if(t!=="end"&&t!=="finish"||this[Shs])return super.emit(t,...r);if(this[vhs])return;this[vhs]=!0;let n=o=>{this[Shs]=!0,o?super.emit("error",o):super.emit("end")},a=this[Ehs](n);a&&a.then&&a.then(()=>n(),o=>n(o))}};Bhs.exports=h6r});var y6r=H((ing,_6r)=>{var{Minipass:whs}=lF(),hFe=Symbol("_data"),mFe=Symbol("_length"),m6r=class extends whs{constructor(t){super(t),this[hFe]=[],this[mFe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[hFe].push(a),this[mFe]+=a.length,n&&n(),!0}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[hFe],this[mFe]);return super.write(a),super.end(n)}};_6r.exports=m6r;var C6r=class extends whs{constructor(t){super(t),this[hFe]=[],this[mFe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[hFe].push(a),this[mFe]+=a.length,super.write(t,r,n)}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[hFe],this[mFe]);return this.emit("collect",a),super.end(n)}};_6r.exports.PassThrough=C6r});var CFe=H((sng,Dhs)=>{var NSl=uZt(),DSl=Et("events"),kSl=e=>e&&e instanceof DSl&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"),K0e=Symbol("_head"),t3=Symbol("_tail"),b6r=Symbol("_linkStreams"),E6r=Symbol("_setHead"),S6r=Symbol("_setTail"),Ths=Symbol("_onError"),Rhs=Symbol("_onData"),v6r=Symbol("_onEnd"),Nhs=Symbol("_onDrain"),FZt=Symbol("_streams"),B6r=class extends NSl{constructor(t,...r){kSl(t)&&(r.unshift(t),t={}),super(t),this[FZt]=[],r.length&&this.push(...r)}[b6r](t){return t.reduce((r,n)=>(r.on("error",a=>n.emit("error",a)),r.pipe(n),n))}push(...t){this[FZt].push(...t),this[t3]&&t.unshift(this[t3]);let r=this[b6r](t);this[S6r](r),this[K0e]||this[E6r](t[0])}unshift(...t){this[FZt].unshift(...t),this[K0e]&&t.push(this[K0e]);let r=this[b6r](t);this[E6r](t[0]),this[t3]||this[S6r](r)}destroy(t){return this[FZt].forEach(r=>typeof r.destroy=="function"&&r.destroy()),super.destroy(t)}[S6r](t){this[t3]=t,t.on("error",r=>this[Ths](t,r)),t.on("data",r=>this[Rhs](t,r)),t.on("end",()=>this[v6r](t)),t.on("finish",()=>this[v6r](t))}[Ths](t,r){t===this[t3]&&this.emit("error",r)}[Rhs](t,r){t===this[t3]&&super.write(r)}[v6r](t){t===this[t3]&&super.end()}pause(){return super.pause(),this[t3]&&this[t3].pause&&this[t3].pause()}emit(t,...r){return t==="resume"&&this[t3]&&this[t3].resume&&this[t3].resume(),super.emit(t,...r)}[E6r](t){this[K0e]=t,t.on("drain",()=>this[Nhs](t))}[Nhs](t){t===this[K0e]&&this.emit("drain")}write(t,r,n){return this[K0e].write(t,r,n)&&(this.flowing||this.buffer.length===0)}end(t,r,n){return this[K0e].end(t,r,n),this}};Dhs.exports=B6r});var khs=H((ong,w6r)=>{(function(){var e;function t(r,n){var a=this instanceof t?this:e;if(a.reset(n),typeof r=="string"&&r.length>0&&a.hash(r),a!==this)return a}t.prototype.hash=function(r){var n,a,o,l,A;switch(A=r.length,this.len+=A,a=this.k1,o=0,this.rem){case 0:a^=A>o?r.charCodeAt(o++)&65535:0;case 1:a^=A>o?(r.charCodeAt(o++)&65535)<<8:0;case 2:a^=A>o?(r.charCodeAt(o++)&65535)<<16:0;case 3:a^=A>o?(r.charCodeAt(o)&255)<<24:0,a^=A>o?(r.charCodeAt(o++)&65280)>>8:0}if(this.rem=A+this.rem&3,A-=this.rem,A>0){for(n=this.h1;a=a*11601+(a&65535)*3432906752&4294967295,a=a<<15|a>>>17,a=a*13715+(a&65535)*461832192&4294967295,n^=a,n=n<<13|n>>>19,n=n*5+3864292196&4294967295,!(o>=A);)a=r.charCodeAt(o++)&65535^(r.charCodeAt(o++)&65535)<<8^(r.charCodeAt(o++)&65535)<<16,l=r.charCodeAt(o++),a^=(l&255)<<24^(l&65280)>>8;switch(a=0,this.rem){case 3:a^=(r.charCodeAt(o+2)&65535)<<16;case 2:a^=(r.charCodeAt(o+1)&65535)<<8;case 1:a^=r.charCodeAt(o)&65535}this.h1=n}return this.k1=a,this},t.prototype.result=function(){var r,n;return r=this.k1,n=this.h1,r>0&&(r=r*11601+(r&65535)*3432906752&4294967295,r=r<<15|r>>>17,r=r*13715+(r&65535)*461832192&4294967295,n^=r),n^=this.len,n^=n>>>16,n=n*51819+(n&65535)*2246770688&4294967295,n^=n>>>13,n=n*44597+(n&65535)*3266445312&4294967295,n^=n>>>16,n>>>0},t.prototype.reset=function(r){return this.h1=typeof r=="number"?r:0,this.rem=this.k1=this.len=0,this},e=new t,typeof w6r<"u"?w6r.exports=t:this.MurmurHash3=t})()});var Ghs=H((ang,xhs)=>{"use strict";var xSl=khs();xhs.exports=function(e){if(e){var t=new xSl(e);return("00000000"+t.result().toString(16)).slice(-8)}else return(Math.random().toString(16)+"0000000").slice(2,10)}});var T6r=H((cng,Fhs)=>{var GSl=Et("path"),FSl=Ghs();Fhs.exports=function(e,t,r){return GSl.join(e,(t?t+"-":"")+FSl(r))}});var R6r=H((lng,ZSl)=>{ZSl.exports={name:"cacache",version:"19.0.1","cache-version":{content:"2",index:"5"},description:"Fast, fault-tolerant, cross-platform, disk-based, data-agnostic, content-addressable cache.",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",snap:"tap",coverage:"tap","test-docker":'docker run -it --rm --name pacotest -v "$PWD":/tmp -w /tmp node:latest npm test',lint:"npm run eslint",npmclilint:"npmcli-lint",lintfix:"npm run eslint -- --fix",postsnap:"npm run lintfix --",postlint:"template-oss-check",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},repository:{type:"git",url:"git+https://github.com/npm/cacache.git"},keywords:["cache","caching","content-addressable","sri","sri hash","subresource integrity","cache","storage","store","file store","filesystem","disk cache","disk storage"],license:"ISC",dependencies:{"@npmcli/fs":"^4.0.0","fs-minipass":"^3.0.0",glob:"^10.2.2","lru-cache":"^10.0.1",minipass:"^7.0.3","minipass-collect":"^2.0.1","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4","p-map":"^7.0.2",ssri:"^12.0.0",tar:"^7.4.3","unique-filename":"^4.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",windowsCI:!1,version:"4.23.3",publish:"true"},author:"GitHub Inc.",tap:{"nyc-arg":["--exclude","tap-snapshots/**"]}}});var N6r=H((ung,Zhs)=>{"use strict";Zhs.exports=LSl;function LSl(e){return[e.slice(0,2),e.slice(2,4),e.slice(4)]}});var _Fe=H((gng,D6r)=>{"use strict";var VSl=R6r()["cache-version"].content,WSl=N6r(),Lhs=Et("path"),OSl=cre();D6r.exports=PSl;function PSl(e,t){let r=OSl.parse(t,{single:!0});return Lhs.join(Vhs(e),r.algorithm,...WSl(r.hexDigest()))}D6r.exports.contentDir=Vhs;function Vhs(e){return Lhs.join(e,`content-v${VSl}`)}});var k6r=H((Ang,Whs)=>{var MSl=(e,{copy:t,wrap:r})=>{let n={};if(e&&typeof e=="object")for(let a of t)e[a]!==void 0&&(n[a]=e[a]);else n[r]=e;return n};Whs.exports=MSl});var Phs=H((dng,Ohs)=>{var HSl=zC(),YSl=e=>HSl.satisfies(process.version,e,{includePrerelease:!0});Ohs.exports={satisfies:YSl}});var Mhs=H((Ing,G6r)=>{"use strict";var{inspect:QSl}=Et("util"),x6r=class{constructor(t,r,n){let a=`${r}: ${n.syscall} returned ${n.code} (${n.message})`;n.path!==void 0&&(a+=` ${n.path}`),n.dest!==void 0&&(a+=` => ${n.dest}`),this.code=t,Object.defineProperties(this,{name:{value:"SystemError",enumerable:!1,writable:!0,configurable:!0},message:{value:a,enumerable:!1,writable:!0,configurable:!0},info:{value:n,enumerable:!0,configurable:!0,writable:!1},errno:{get(){return n.errno},set(o){n.errno=o},enumerable:!0,configurable:!0},syscall:{get(){return n.syscall},set(o){n.syscall=o},enumerable:!0,configurable:!0}}),n.path!==void 0&&Object.defineProperty(this,"path",{get(){return n.path},set(o){n.path=o},enumerable:!0,configurable:!0}),n.dest!==void 0&&Object.defineProperty(this,"dest",{get(){return n.dest},set(o){n.dest=o},enumerable:!0,configurable:!0})}toString(){return`${this.name} [${this.code}]: ${this.message}`}[Symbol.for("nodejs.util.inspect.custom")](t,r){return QSl(this,{...r,getters:!0,customInspect:!1})}};function _re(e,t){G6r.exports[e]=class extends x6r{constructor(n){super(e,t,n)}}}_re("ERR_FS_CP_DIR_TO_NON_DIR","Cannot overwrite directory with non-directory");_re("ERR_FS_CP_EEXIST","Target already exists");_re("ERR_FS_CP_EINVAL","Invalid src or dest");_re("ERR_FS_CP_FIFO_PIPE","Cannot copy a FIFO pipe");_re("ERR_FS_CP_NON_DIR_TO_DIR","Cannot overwrite non-directory with directory");_re("ERR_FS_CP_SOCKET","Cannot copy a socket file");_re("ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY","Cannot overwrite symlink in subdirectory of self");_re("ERR_FS_CP_UNKNOWN","Cannot copy an unknown file type");_re("ERR_FS_EISDIR","Path is a directory");G6r.exports.ERR_INVALID_ARG_TYPE=class extends Error{constructor(t,r,n){super(),this.code="ERR_INVALID_ARG_TYPE",this.message=`The ${t} argument must be ${r}. Received ${typeof n}`}}});var ams=H((hng,oms)=>{"use strict";var{ERR_FS_CP_DIR_TO_NON_DIR:XSl,ERR_FS_CP_EEXIST:JSl,ERR_FS_CP_EINVAL:ZZt,ERR_FS_CP_FIFO_PIPE:USl,ERR_FS_CP_NON_DIR_TO_DIR:KSl,ERR_FS_CP_SOCKET:jSl,ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY:zSl,ERR_FS_CP_UNKNOWN:qSl,ERR_FS_EISDIR:$Sl,ERR_INVALID_ARG_TYPE:evl}=Mhs(),{constants:{errno:{EEXIST:tvl,EISDIR:rvl,EINVAL:yre,ENOTDIR:nvl}}}=Et("os"),{chmod:ivl,copyFile:svl,lstat:zhs,mkdir:qhs,readdir:ovl,readlink:Hhs,stat:yFe,symlink:F6r,unlink:$hs,utimes:avl}=Et("fs/promises"),{dirname:gze,isAbsolute:Yhs,join:Qhs,parse:cvl,resolve:Aze,sep:lvl,toNamespacedPath:Xhs}=Et("path"),{fileURLToPath:uvl}=Et("url"),gvl={dereference:!1,errorOnExist:!1,filter:void 0,force:!0,preserveTimestamps:!1,recursive:!1};async function Avl(e,t,r){if(r!=null&&typeof r!="object")throw new evl("options",["Object"],r);return dvl(Xhs(Jhs(e)),Xhs(Jhs(t)),{...gvl,...r})}function Jhs(e){return e!=null&&e.href&&e.origin?uvl(e):e}async function dvl(e,t,r){r.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning("Using the preserveTimestamps option in 32-bit node is not recommended","TimestampPrecisionWarning");let n=await ems(e,t,r),{srcStat:a,destStat:o}=n;return await rms(e,a,t),r.filter?nms(Uhs,o,e,t,r):Uhs(o,e,t,r)}async function ems(e,t,r){let{0:n,1:a}=await pvl(e,t,r);if(a){if(tms(n,a))throw new ZZt({message:"src and dest cannot be the same",path:t,syscall:"cp",errno:yre});if(n.isDirectory()&&!a.isDirectory())throw new XSl({message:`cannot overwrite directory ${e} with non-directory ${t}`,path:t,syscall:"cp",errno:rvl});if(!n.isDirectory()&&a.isDirectory())throw new KSl({message:`cannot overwrite non-directory ${e} with directory ${t}`,path:t,syscall:"cp",errno:nvl})}if(n.isDirectory()&&Z6r(e,t))throw new ZZt({message:`cannot copy ${e} to a subdirectory of self ${t}`,path:t,syscall:"cp",errno:yre});return{srcStat:n,destStat:a}}function tms(e,t){return t.ino&&t.dev&&t.ino===e.ino&&t.dev===e.dev}function pvl(e,t,r){let n=r.dereference?a=>yFe(a,{bigint:!0}):a=>zhs(a,{bigint:!0});return Promise.all([n(e),n(t).catch(a=>{if(a.code==="ENOENT")return null;throw a})])}async function Uhs(e,t,r,n){let a=gze(r);return await fvl(a)||await qhs(a,{recursive:!0}),LZt(e,t,r,n)}function fvl(e){return yFe(e).then(()=>!0,t=>t.code==="ENOENT"?!1:Promise.reject(t))}async function rms(e,t,r){let n=Aze(gze(e)),a=Aze(gze(r));if(a===n||a===cvl(a).root)return;let o;try{o=await yFe(a,{bigint:!0})}catch(l){if(l.code==="ENOENT")return;throw l}if(tms(t,o))throw new ZZt({message:`cannot copy ${e} to a subdirectory of self ${r}`,path:r,syscall:"cp",errno:yre});return rms(e,t,a)}var Khs=e=>Aze(e).split(lvl).filter(Boolean);function Z6r(e,t){let r=Khs(e),n=Khs(t);return r.every((a,o)=>n[o]===a)}async function nms(e,t,r,n,a,o){if(await a.filter(r,n))return e(t,r,n,a,o)}function Ivl(e,t,r,n){return n.filter?nms(LZt,e,t,r,n):LZt(e,t,r,n)}async function LZt(e,t,r,n){let o=await(n.dereference?yFe:zhs)(t);if(o.isDirectory()&&n.recursive)return Evl(o,e,t,r,n);if(o.isDirectory())throw new $Sl({message:`${t} is a directory (not copied)`,path:t,syscall:"cp",errno:yre});if(o.isFile()||o.isCharacterDevice()||o.isBlockDevice())return hvl(o,e,t,r,n);if(o.isSymbolicLink())return vvl(e,t,r);throw o.isSocket()?new jSl({message:`cannot copy a socket file: ${r}`,path:r,syscall:"cp",errno:yre}):o.isFIFO()?new USl({message:`cannot copy a FIFO pipe: ${r}`,path:r,syscall:"cp",errno:yre}):new qSl({message:`cannot copy an unknown file type: ${r}`,path:r,syscall:"cp",errno:yre})}function hvl(e,t,r,n,a){return t?mvl(e,r,n,a):ims(e,r,n,a)}async function mvl(e,t,r,n){if(n.force)return await $hs(r),ims(e,t,r,n);if(n.errorOnExist)throw new JSl({message:`${r} already exists`,path:r,syscall:"cp",errno:tvl})}async function ims(e,t,r,n){return await svl(t,r),n.preserveTimestamps?Cvl(e.mode,t,r):VZt(r,e.mode)}async function Cvl(e,t,r){return _vl(e)&&await yvl(r,e),jhs(e,t,r)}function _vl(e){return(e&128)===0}function yvl(e,t){return VZt(e,t|128)}async function jhs(e,t,r){return await bvl(t,r),VZt(r,e)}function VZt(e,t){return ivl(e,t)}async function bvl(e,t){let r=await yFe(e);return avl(t,r.atime,r.mtime)}function Evl(e,t,r,n,a){return t?sms(r,n,a):Svl(e.mode,r,n,a)}async function Svl(e,t,r,n){return await qhs(r),await sms(t,r,n),VZt(r,e)}async function sms(e,t,r){let n=await ovl(e);for(let a=0;a{var wvl=Et("fs/promises"),Tvl=k6r(),Rvl=Phs(),Nvl=ams(),Dvl=Rvl.satisfies(">=16.7.0"),kvl=async(e,t,r)=>{let n=Tvl(r,{copy:["dereference","errorOnExist","filter","force","preserveTimestamps","recursive"]});return Dvl?wvl.cp(e,t,n):Nvl(e,t,n)};cms.exports=kvl});var gms=H((Cng,ums)=>{var{join:xvl,sep:Gvl}=Et("path"),Fvl=k6r(),{mkdir:Zvl,mkdtemp:Lvl,rm:Vvl}=Et("fs/promises"),Wvl=async(e,t,r)=>{let n=Fvl(r,{copy:["tmpPrefix"]});await Zvl(e,{recursive:!0});let a=await Lvl(xvl(`${e}${Gvl}`,n.tmpPrefix||"")),o,l;try{l=await t(a)}catch(A){o=A}try{await Vvl(a,{force:!0,recursive:!0})}catch{}if(o)throw o;return l};ums.exports=Wvl});var fms=H((_ng,pms)=>{var{readdir:Ams}=Et("fs/promises"),{join:dms}=Et("path"),Ovl=async e=>{let t=[];for(let r of await Ams(e))if(r.startsWith("@"))for(let n of await Ams(dms(e,r)))t.push(dms(r,n));else t.push(r);return t};pms.exports=Ovl});var yms=H((yng,_ms)=>{var{dirname:Ims,join:hms,resolve:mms,relative:Pvl,isAbsolute:Mvl}=Et("path"),Xj=Et("fs/promises"),Hvl=async e=>{try{return await Xj.access(e),!0}catch(t){return t.code!=="ENOENT"}},Cms=async(e,t,r={},n=!0,a=[])=>{if(!e||!t)throw new TypeError("`source` and `destination` file required");if(r={overwrite:!0,...r},!r.overwrite&&await Hvl(t))throw new Error(`The destination file exists: ${t}`);await Xj.mkdir(Ims(t),{recursive:!0});try{await Xj.rename(e,t)}catch(o){if(o.code==="EXDEV"||o.code==="EPERM"){let l=await Xj.lstat(e);if(l.isDirectory()){let A=await Xj.readdir(e);await Promise.all(A.map(f=>Cms(hms(e,f),hms(t,f),r,!1,a)))}else l.isSymbolicLink()?a.push({source:e,destination:t}):await Xj.copyFile(e,t)}else throw o}n&&(await Promise.all(a.map(async({source:o,destination:l})=>{let A=await Xj.readlink(o);Mvl(A)&&(A=mms(l,Pvl(o,A)));let f="file";try{f=await Xj.stat(mms(Ims(o),A)),f.isDirectory()&&(f="junction")}catch{}await Xj.symlink(A,l,f)})),await Xj.rm(e,{recursive:!0,force:!0}))};_ms.exports=Cms});var WZt=H((bng,bms)=>{"use strict";var Yvl=lms(),Qvl=gms(),Xvl=fms(),Jvl=yms();bms.exports={cp:Yvl,withTempDir:Qvl,readdirScoped:Xvl,moveFile:Jvl}});var OZt={};Uf(OZt,{default:()=>Ems,pMapIterable:()=>Uvl,pMapSkip:()=>dze});async function Ems(e,t,{concurrency:r=Number.POSITIVE_INFINITY,stopOnError:n=!0,signal:a}={}){return new Promise((o,l)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!(Number.isSafeInteger(r)&&r>=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);let A=[],f=[],I=new Map,C=!1,b=!1,E=!1,N=0,B=0,F=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),Q=()=>{ne(a.reason)},J=()=>{a?.removeEventListener("abort",Q)},ae=fe=>{o(fe),J()},ne=fe=>{C=!0,b=!0,l(fe),J()};a&&(a.aborted&&ne(a.reason),a.addEventListener("abort",Q,{once:!0}));let ce=async()=>{if(b)return;let fe=await F.next(),ue=B;if(B++,fe.done){if(E=!0,N===0&&!b){if(!n&&f.length>0){ne(new AggregateError(f));return}if(b=!0,I.size===0){ae(A);return}let de=[];for(let[be,Se]of A.entries())I.get(be)!==dze&&de.push(Se);ae(de)}return}N++,(async()=>{try{let de=await fe.value;if(b)return;let be=await t(de,ue);be===dze&&I.set(ue,be),A[ue]=be,N--,await ce()}catch(de){if(n)ne(de);else{f.push(de),N--;try{await ce()}catch(be){ne(be)}}}})()};(async()=>{for(let fe=0;fe=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);if(!(Number.isSafeInteger(n)&&n>=r||n===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`backpressure\` to be an integer from \`concurrency\` (${r}) and up or \`Infinity\`, got \`${n}\` (${typeof n})`);return{async*[Symbol.asyncIterator](){let a=e[Symbol.asyncIterator]===void 0?e[Symbol.iterator]():e[Symbol.asyncIterator](),o=[],l=0,A=!1,f=0;function I(){if(A||!(l{let{done:b,value:E}=await a.next();if(b)return l--,{done:!0};I();try{let N=await t(await E,f++);if(l--,N===dze){let B=o.indexOf(C);B>0&&o.splice(B,1)}return I(),{done:!1,value:N}}catch(N){return l--,A=!0,{error:N}}})();o.push(C)}for(I();o.length>0;){let{error:C,done:b,value:E}=await o[0];if(o.shift(),C)throw C;if(b)return;I(),E!==dze&&(yield E)}}}}var dze,PZt=bc(()=>{dze=Symbol("skip")});var bFe=H((Sng,r3)=>{"use strict";var Kvl=Et("crypto"),{appendFile:jvl,mkdir:W6r,readFile:zvl,readdir:qvl,rm:Sms,writeFile:$vl}=Et("fs/promises"),{Minipass:eBl}=lF(),Jj=Et("path"),tBl=cre(),rBl=T6r(),nBl=_Fe(),iBl=N6r(),sBl=R6r()["cache-version"].index,{moveFile:oBl}=WZt(),L6r=5;r3.exports.NotFoundError=class extends Error{constructor(t,r){super(`No cache entry for ${r} found in ${t}`),this.code="ENOENT",this.cache=t,this.key=r}};r3.exports.compact=aBl;async function aBl(e,t,r,n={}){let a=pze(e,t),o=await MZt(a),l=[];for(let E=o.length-1;E>=0;--E){let N=o[E];if(N.integrity===null&&!n.validateEntry)break;(!n.validateEntry||n.validateEntry(N)===!0)&&(l.length===0||!l.find(B=>r(B,N)))&&l.unshift(N)}let A=` `+l.map(E=>{let N=JSON.stringify(E);return`${HZt(N)} ${N}`}).join(` -`),f=async()=>{let E=svl(Xj.join(e,"tmp"),n.tmpPrefix);return await x6r(Xj.dirname(E),{recursive:!0}),{target:E,moved:!1}},I=async E=>{if(!E.moved)return Ems(E.target,{recursive:!0,force:!0})},C=async E=>{await rvl(E.target,A,{flag:"wx"}),await x6r(Xj.dirname(a),{recursive:!0}),await lvl(E.target,a),E.moved=!0},b=await f();try{await C(b)}finally{await I(b)}return l.reverse().map(E=>YZt(e,E,!0))}e3.exports.insert=Sms;async function Sms(e,t,r,n={}){let{metadata:a,size:o,time:l}=n,A=fze(e,t),f={key:t,integrity:r&&ivl.stringify(r),time:l||Date.now(),size:o,metadata:a};try{await x6r(Xj.dirname(A),{recursive:!0});let I=JSON.stringify(f);await $Sl(A,` -${HZt(I)} ${I}`)}catch(I){if(I.code==="ENOENT")return;throw I}return YZt(e,f)}e3.exports.find=gvl;async function gvl(e,t){let r=fze(e,t);try{return(await MZt(r)).reduce((a,o)=>o&&o.key===t?YZt(e,o):a,null)}catch(n){if(n.code==="ENOENT")return null;throw n}}e3.exports.delete=Avl;function Avl(e,t,r={}){if(!r.removeFully)return Sms(e,t,null,r);let n=fze(e,t);return Ems(n,{recursive:!0,force:!0})}e3.exports.lsStream=vms;function vms(e){let t=G6r(e),r=new nvl({objectMode:!0});return Promise.resolve().then(async()=>{let{default:n}=await Promise.resolve().then(()=>(PZt(),OZt)),a=await k6r(t);return await n(a,async o=>{let l=Xj.join(t,o),A=await k6r(l);await n(A,async f=>{let I=Xj.join(l,f),C=await k6r(I);await n(C,async b=>{let E=Xj.join(I,b);try{let B=(await MZt(E)).reduce((F,Q)=>(F.set(Q.key,Q),F),new Map);for(let F of B.values()){let Q=YZt(e,F);Q&&r.write(Q)}}catch(N){if(N.code==="ENOENT")return;throw N}},{concurrency:D6r})},{concurrency:D6r})},{concurrency:D6r}),r.end(),r}).catch(n=>r.emit("error",n)),r}e3.exports.ls=dvl;async function dvl(e){return(await vms(e).collect()).reduce((r,n)=>(r[n.key]=n,r),{})}e3.exports.bucketEntries=MZt;async function MZt(e,t){let r=await evl(e,"utf8");return pvl(r,t)}function pvl(e){let t=[];return e.split(` -`).forEach(r=>{if(!r)return;let n=r.split(" ");if(!n[1]||HZt(n[1])!==n[0])return;let a;try{a=JSON.parse(n[1])}catch{}a&&t.push(a)}),t}e3.exports.bucketDir=G6r;function G6r(e){return Xj.join(e,`index-v${cvl}`)}e3.exports.bucketPath=fze;function fze(e,t){let r=Bms(t);return Xj.join.apply(Xj,[G6r(e)].concat(avl(r)))}e3.exports.hashKey=Bms;function Bms(e){return wms(e,"sha256")}e3.exports.hashEntry=HZt;function HZt(e){return wms(e,"sha1")}function wms(e,t){return qSl.createHash(t).update(e).digest("hex")}function YZt(e,t,r){return!t.integrity&&!r?null:{key:t.key,integrity:t.integrity,path:t.integrity?ovl(e,t.integrity):void 0,size:t.size,time:t.time,metadata:t.metadata}}function k6r(e){return tvl(e).catch(t=>{if(t.code==="ENOENT"||t.code==="ENOTDIR")return[];throw t})}});var Ize=H((urg,EFe)=>{"use strict";var{LRUCache:fvl}=VIe(),QZt=new fvl({max:500,maxSize:50*1024*1024,ttl:3*60*1e3,sizeCalculation:(e,t)=>t.startsWith("key:")?e.data.length:e.length});EFe.exports.clearMemoized=Ivl;function Ivl(){let e={};return QZt.forEach((t,r)=>{e[r]=t}),QZt.clear(),e}EFe.exports.put=hvl;function hvl(e,t,r,n){XZt(n).set(`key:${e}:${t.key}`,{entry:t,data:r}),Tms(e,t.integrity,r,n)}EFe.exports.put.byDigest=Tms;function Tms(e,t,r,n){XZt(n).set(`digest:${e}:${t}`,r)}EFe.exports.get=mvl;function mvl(e,t,r){return XZt(r).get(`key:${e}:${t}`)}EFe.exports.get.byDigest=Cvl;function Cvl(e,t,r){return XZt(r).get(`digest:${e}:${t}`)}var F6r=class{constructor(t){this.obj=t}get(t){return this.obj[t]}set(t,r){this.obj[t]=r}};function XZt(e){return!e||!e.memoize?QZt:e.memoize.get&&e.memoize.set?e.memoize:typeof e.memoize=="object"?new F6r(e.memoize):QZt}});var eLt=H(mze=>{"use strict";var{Minipass:_vl}=cF(),yvl=Et("events").EventEmitter,oW=Et("fs"),bvl=oW.writev,TFe=Symbol("_autoClose"),pJ=Symbol("_close"),hze=Symbol("_ended"),Ib=Symbol("_fd"),Rms=Symbol("_finished"),ige=Symbol("_flags"),Z6r=Symbol("_flush"),V6r=Symbol("_handleChunk"),W6r=Symbol("_makeBuf"),zZt=Symbol("_mode"),JZt=Symbol("_needDrain"),BFe=Symbol("_onerror"),RFe=Symbol("_onopen"),L6r=Symbol("_onread"),SFe=Symbol("_onwrite"),sge=Symbol("_open"),yre=Symbol("_path"),z0e=Symbol("_pos"),Jj=Symbol("_queue"),vFe=Symbol("_read"),Nms=Symbol("_readSize"),nge=Symbol("_reading"),UZt=Symbol("_remain"),Dms=Symbol("_size"),KZt=Symbol("_write"),j0e=Symbol("_writing"),jZt=Symbol("_defaultFlag"),wFe=Symbol("_errored"),qZt=class extends _vl{constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[wFe]=!1,this[Ib]=typeof r.fd=="number"?r.fd:null,this[yre]=t,this[Nms]=r.readSize||16*1024*1024,this[nge]=!1,this[Dms]=typeof r.size=="number"?r.size:1/0,this[UZt]=this[Dms],this[TFe]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[Ib]=="number"?this[vFe]():this[sge]()}get fd(){return this[Ib]}get path(){return this[yre]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[sge](){oW.open(this[yre],"r",(t,r)=>this[RFe](t,r))}[RFe](t,r){t?this[BFe](t):(this[Ib]=r,this.emit("open",r),this[vFe]())}[W6r](){return Buffer.allocUnsafe(Math.min(this[Nms],this[UZt]))}[vFe](){if(!this[nge]){this[nge]=!0;let t=this[W6r]();if(t.length===0)return process.nextTick(()=>this[L6r](null,0,t));oW.read(this[Ib],t,0,t.length,null,(r,n,a)=>this[L6r](r,n,a))}}[L6r](t,r,n){this[nge]=!1,t?this[BFe](t):this[V6r](r,n)&&this[vFe]()}[pJ](){if(this[TFe]&&typeof this[Ib]=="number"){let t=this[Ib];this[Ib]=null,oW.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[BFe](t){this[nge]=!0,this[pJ](),this.emit("error",t)}[V6r](t,r){let n=!1;return this[UZt]-=t,t>0&&(n=super.write(tthis[RFe](t,r))}[RFe](t,r){this[jZt]&&this[ige]==="r+"&&t&&t.code==="ENOENT"?(this[ige]="w",this[sge]()):t?this[BFe](t):(this[Ib]=r,this.emit("open",r),this[j0e]||this[Z6r]())}end(t,r){return t&&this.write(t,r),this[hze]=!0,!this[j0e]&&!this[Jj].length&&typeof this[Ib]=="number"&&this[SFe](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[hze]?(this.emit("error",new Error("write() after end()")),!1):this[Ib]===null||this[j0e]||this[Jj].length?(this[Jj].push(t),this[JZt]=!0,!1):(this[j0e]=!0,this[KZt](t),!0)}[KZt](t){oW.write(this[Ib],t,0,t.length,this[z0e],(r,n)=>this[SFe](r,n))}[SFe](t,r){t?this[BFe](t):(this[z0e]!==null&&(this[z0e]+=r),this[Jj].length?this[Z6r]():(this[j0e]=!1,this[hze]&&!this[Rms]?(this[Rms]=!0,this[pJ](),this.emit("finish")):this[JZt]&&(this[JZt]=!1,this.emit("drain"))))}[Z6r](){if(this[Jj].length===0)this[hze]&&this[SFe](null,0);else if(this[Jj].length===1)this[KZt](this[Jj].pop());else{let t=this[Jj];this[Jj]=[],bvl(this[Ib],t,this[z0e],(r,n)=>this[SFe](r,n))}}[pJ](){if(this[TFe]&&typeof this[Ib]=="number"){let t=this[Ib];this[Ib]=null,oW.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},P6r=class extends $Zt{[sge](){let t;if(this[jZt]&&this[ige]==="r+")try{t=oW.openSync(this[yre],this[ige],this[zZt])}catch(r){if(r.code==="ENOENT")return this[ige]="w",this[sge]();throw r}else t=oW.openSync(this[yre],this[ige],this[zZt]);this[RFe](null,t)}[pJ](){if(this[TFe]&&typeof this[Ib]=="number"){let t=this[Ib];this[Ib]=null,oW.closeSync(t),this.emit("close")}}[KZt](t){let r=!0;try{this[SFe](null,oW.writeSync(this[Ib],t,0,t.length,this[z0e])),r=!1}finally{if(r)try{this[pJ]()}catch{}}}};mze.ReadStream=qZt;mze.ReadStreamSync=O6r;mze.WriteStream=$Zt;mze.WriteStreamSync=P6r});var H6r=H((Arg,NFe)=>{"use strict";var Cze=Et("fs/promises"),Evl=eLt(),M6r=are(),Svl=_Fe(),kms=CFe();NFe.exports=vvl;var xms=64*1024*1024;async function vvl(e,t,r={}){let{size:n}=r,{stat:a,cpath:o,sri:l}=await _ze(e,t,async(f,I)=>({stat:n?{size:n}:await Cze.stat(f),cpath:f,sri:I}));if(a.size>xms)return Gms(o,a.size,l,new kms).concat();let A=await Cze.readFile(o,{encoding:null});if(a.size!==A.length)throw Tvl(a.size,A.length);if(!M6r.checkData(A,l))throw Rvl(l,o);return A}var Gms=(e,t,r,n)=>(n.push(new Evl.ReadStream(e,{size:t,readSize:xms}),M6r.integrityStream({integrity:r,size:t})),n);NFe.exports.stream=Fms;NFe.exports.readStream=Fms;function Fms(e,t,r={}){let{size:n}=r,a=new kms;return Promise.resolve().then(async()=>{let{stat:o,cpath:l,sri:A}=await _ze(e,t,async(f,I)=>({stat:n?{size:n}:await Cze.stat(f),cpath:f,sri:I}));return Gms(l,o.size,A,a)}).catch(o=>a.emit("error",o)),a}NFe.exports.copy=Bvl;function Bvl(e,t,r){return _ze(e,t,n=>Cze.copyFile(n,r))}NFe.exports.hasContent=wvl;async function wvl(e,t){if(!t)return!1;try{return await _ze(e,t,async(r,n)=>{let a=await Cze.stat(r);return{size:a.size,sri:n,stat:a}})}catch(r){if(r.code==="ENOENT")return!1;if(r.code==="EPERM"){if(process.platform!=="win32")throw r;return!1}}}async function _ze(e,t,r){let n=M6r.parse(t),a=n.pickAlgorithm(),o=n[a];if(o.length<=1){let l=Svl(e,o[0]);return r(l,o[0])}else{let l=await Promise.all(o.map(async I=>{try{return await _ze(e,I,r)}catch(C){return C.code==="ENOENT"?Object.assign(new Error("No matching content found for "+n.toString()),{code:"ENOENT"}):C}})),A=l.find(I=>!(I instanceof Error));if(A)return A;let f=l.find(I=>I.code==="ENOENT");throw f||l.find(I=>I instanceof Error)}}function Tvl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function Rvl(e,t){let r=new Error(`Integrity verification failed for ${e} (${t})`);return r.code="EINTEGRITY",r.sri=e,r.path=t,r}});var Wms=H((drg,Ere)=>{"use strict";var Zms=f6r(),{Minipass:Lms}=cF(),Vms=CFe(),q0e=bFe(),bre=Ize(),$0e=H6r();async function Nvl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=bre.get(e,t,r);if(l&&a!==!1)return{metadata:l.entry.metadata,data:l.data,integrity:l.entry.integrity,size:l.entry.size};let A=await q0e.find(e,t,r);if(!A)throw new q0e.NotFoundError(e,t);let f=await $0e(e,A.integrity,{integrity:n,size:o});return a&&bre.put(e,A,f,r),{data:f,metadata:A.metadata,size:A.size,integrity:A.integrity}}Ere.exports=Nvl;async function Dvl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=bre.get.byDigest(e,t,r);if(l&&a!==!1)return l;let A=await $0e(e,t,{integrity:n,size:o});return a&&bre.put.byDigest(e,t,A,r),A}Ere.exports.byDigest=Dvl;var kvl=e=>{let t=new Lms;return t.on("newListener",function(r,n){r==="metadata"&&n(e.entry.metadata),r==="integrity"&&n(e.entry.integrity),r==="size"&&n(e.entry.size)}),t.end(e.data),t};function xvl(e,t,r={}){let{memoize:n,size:a}=r,o=bre.get(e,t,r);if(o&&n!==!1)return kvl(o);let l=new Vms;return Promise.resolve().then(async()=>{let A=await q0e.find(e,t);if(!A)throw new q0e.NotFoundError(e,t);l.emit("metadata",A.metadata),l.emit("integrity",A.integrity),l.emit("size",A.size),l.on("newListener",function(I,C){I==="metadata"&&C(A.metadata),I==="integrity"&&C(A.integrity),I==="size"&&C(A.size)});let f=$0e.readStream(e,A.integrity,{...r,size:typeof a!="number"?A.size:a});if(n){let I=new Zms.PassThrough;I.on("collect",C=>bre.put(e,A,C,r)),l.unshift(I)}return l.unshift(f),l}).catch(A=>l.emit("error",A)),l}Ere.exports.stream=xvl;function Gvl(e,t,r={}){let{memoize:n}=r,a=bre.get.byDigest(e,t,r);if(a&&n!==!1){let o=new Lms;return o.end(a),o}else{let o=$0e.readStream(e,t,r);if(!n)return o;let l=new Zms.PassThrough;return l.on("collect",A=>bre.put.byDigest(e,t,A,r)),new Vms(o,l)}}Ere.exports.stream.byDigest=Gvl;function Fvl(e,t,r={}){let{memoize:n}=r,a=bre.get(e,t,r);return a&&n!==!1?Promise.resolve(a.entry):q0e.find(e,t)}Ere.exports.info=Fvl;async function Zvl(e,t,r,n={}){let a=await q0e.find(e,t,n);if(!a)throw new q0e.NotFoundError(e,t);return await $0e.copy(e,a.integrity,r,n),{metadata:a.metadata,size:a.size,integrity:a.integrity}}Ere.exports.copy=Zvl;async function Lvl(e,t,r,n={}){return await $0e.copy(e,t,r,n),t}Ere.exports.copy.byDigest=Lvl;Ere.exports.hasContent=$0e.hasContent});var Yms=H((prg,J6r)=>{"use strict";var Oms=Et("events"),Vvl=_Fe(),bze=Et("fs/promises"),{moveFile:Wvl}=WZt(),{Minipass:Ovl}=cF(),Pms=CFe(),Pvl=GZt(),Y6r=Et("path"),Q6r=are(),Mvl=b6r(),Hvl=eLt();J6r.exports=Yvl;var yze=new Map;async function Yvl(e,t,r={}){let{algorithms:n,size:a,integrity:o}=r;if(typeof a=="number"&&t.length!==a)throw Uvl(a,t.length);let l=Q6r.fromData(t,n?{algorithms:n}:{});if(o&&!Q6r.checkData(t,o,r))throw Kvl(o,l);for(let A in l){let f=await Mms(e,r),I=l[A].toString();try{await bze.writeFile(f.target,t,{flag:"wx"}),await Hms(f,e,I,r)}finally{f.moved||await bze.rm(f.target,{recursive:!0,force:!0})}}return{integrity:l,size:t.length}}J6r.exports.stream=Qvl;var X6r=class extends Pvl{constructor(t,r){super(),this.opts=r,this.cache=t,this.inputStream=new Ovl,this.inputStream.on("error",n=>this.emit("error",n)),this.inputStream.on("drain",()=>this.emit("drain")),this.handleContentP=null}write(t,r,n){return this.handleContentP||(this.handleContentP=Xvl(this.inputStream,this.cache,this.opts),this.handleContentP.catch(a=>this.emit("error",a))),this.inputStream.write(t,r,n)}flush(t){this.inputStream.end(()=>{if(!this.handleContentP){let r=new Error("Cache input stream was empty");return r.code="ENODATA",Promise.reject(r).catch(t)}this.handleContentP.then(r=>{r.integrity&&this.emit("integrity",r.integrity),r.size!==null&&this.emit("size",r.size),t()},r=>t(r))})}};function Qvl(e,t={}){return new X6r(e,t)}async function Xvl(e,t,r){let n=await Mms(t,r);try{let a=await Jvl(e,t,n.target,r);return await Hms(n,t,a.integrity,r),a}finally{n.moved||await bze.rm(n.target,{recursive:!0,force:!0})}}async function Jvl(e,t,r,n){let a=new Hvl.WriteStream(r,{flags:"wx"});if(n.integrityEmitter){let[I,C]=await Promise.all([Oms.once(n.integrityEmitter,"integrity").then(b=>b[0]),Oms.once(n.integrityEmitter,"size").then(b=>b[0]),new Pms(e,a).promise()]);return{integrity:I,size:C}}let o,l,A=Q6r.integrityStream({integrity:n.integrity,algorithms:n.algorithms,size:n.size});return A.on("integrity",I=>{o=I}),A.on("size",I=>{l=I}),await new Pms(e,A,a).promise(),{integrity:o,size:l}}async function Mms(e,t){let r=Mvl(Y6r.join(e,"tmp"),t.tmpPrefix);return await bze.mkdir(Y6r.dirname(r),{recursive:!0}),{target:r,moved:!1}}async function Hms(e,t,r){let n=Vvl(t,r),a=Y6r.dirname(n);return yze.has(n)||yze.set(n,bze.mkdir(a,{recursive:!0}).then(async()=>(await Wvl(e.target,n,{overwrite:!1}),e.moved=!0,e.moved)).catch(o=>{if(!o.message.startsWith("The destination file exists"))throw Object.assign(o,{code:"EEXIST"})}).finally(()=>{yze.delete(n)})),yze.get(n)}function Uvl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function Kvl(e,t){let r=new Error(`Integrity check failed: +`),f=async()=>{let E=rBl(Jj.join(e,"tmp"),n.tmpPrefix);return await W6r(Jj.dirname(E),{recursive:!0}),{target:E,moved:!1}},I=async E=>{if(!E.moved)return Sms(E.target,{recursive:!0,force:!0})},C=async E=>{await $vl(E.target,A,{flag:"wx"}),await W6r(Jj.dirname(a),{recursive:!0}),await oBl(E.target,a),E.moved=!0},b=await f();try{await C(b)}finally{await I(b)}return l.reverse().map(E=>YZt(e,E,!0))}r3.exports.insert=vms;async function vms(e,t,r,n={}){let{metadata:a,size:o,time:l}=n,A=pze(e,t),f={key:t,integrity:r&&tBl.stringify(r),time:l||Date.now(),size:o,metadata:a};try{await W6r(Jj.dirname(A),{recursive:!0});let I=JSON.stringify(f);await jvl(A,` +${HZt(I)} ${I}`)}catch(I){if(I.code==="ENOENT")return;throw I}return YZt(e,f)}r3.exports.find=cBl;async function cBl(e,t){let r=pze(e,t);try{return(await MZt(r)).reduce((a,o)=>o&&o.key===t?YZt(e,o):a,null)}catch(n){if(n.code==="ENOENT")return null;throw n}}r3.exports.delete=lBl;function lBl(e,t,r={}){if(!r.removeFully)return vms(e,t,null,r);let n=pze(e,t);return Sms(n,{recursive:!0,force:!0})}r3.exports.lsStream=Bms;function Bms(e){let t=O6r(e),r=new eBl({objectMode:!0});return Promise.resolve().then(async()=>{let{default:n}=await Promise.resolve().then(()=>(PZt(),OZt)),a=await V6r(t);return await n(a,async o=>{let l=Jj.join(t,o),A=await V6r(l);await n(A,async f=>{let I=Jj.join(l,f),C=await V6r(I);await n(C,async b=>{let E=Jj.join(I,b);try{let B=(await MZt(E)).reduce((F,Q)=>(F.set(Q.key,Q),F),new Map);for(let F of B.values()){let Q=YZt(e,F);Q&&r.write(Q)}}catch(N){if(N.code==="ENOENT")return;throw N}},{concurrency:L6r})},{concurrency:L6r})},{concurrency:L6r}),r.end(),r}).catch(n=>r.emit("error",n)),r}r3.exports.ls=uBl;async function uBl(e){return(await Bms(e).collect()).reduce((r,n)=>(r[n.key]=n,r),{})}r3.exports.bucketEntries=MZt;async function MZt(e,t){let r=await zvl(e,"utf8");return gBl(r,t)}function gBl(e){let t=[];return e.split(` +`).forEach(r=>{if(!r)return;let n=r.split(" ");if(!n[1]||HZt(n[1])!==n[0])return;let a;try{a=JSON.parse(n[1])}catch{}a&&t.push(a)}),t}r3.exports.bucketDir=O6r;function O6r(e){return Jj.join(e,`index-v${sBl}`)}r3.exports.bucketPath=pze;function pze(e,t){let r=wms(t);return Jj.join.apply(Jj,[O6r(e)].concat(iBl(r)))}r3.exports.hashKey=wms;function wms(e){return Tms(e,"sha256")}r3.exports.hashEntry=HZt;function HZt(e){return Tms(e,"sha1")}function Tms(e,t){return Kvl.createHash(t).update(e).digest("hex")}function YZt(e,t,r){return!t.integrity&&!r?null:{key:t.key,integrity:t.integrity,path:t.integrity?nBl(e,t.integrity):void 0,size:t.size,time:t.time,metadata:t.metadata}}function V6r(e){return qvl(e).catch(t=>{if(t.code==="ENOENT"||t.code==="ENOTDIR")return[];throw t})}});var fze=H((vng,EFe)=>{"use strict";var{LRUCache:ABl}=WIe(),QZt=new ABl({max:500,maxSize:50*1024*1024,ttl:3*60*1e3,sizeCalculation:(e,t)=>t.startsWith("key:")?e.data.length:e.length});EFe.exports.clearMemoized=dBl;function dBl(){let e={};return QZt.forEach((t,r)=>{e[r]=t}),QZt.clear(),e}EFe.exports.put=pBl;function pBl(e,t,r,n){XZt(n).set(`key:${e}:${t.key}`,{entry:t,data:r}),Rms(e,t.integrity,r,n)}EFe.exports.put.byDigest=Rms;function Rms(e,t,r,n){XZt(n).set(`digest:${e}:${t}`,r)}EFe.exports.get=fBl;function fBl(e,t,r){return XZt(r).get(`key:${e}:${t}`)}EFe.exports.get.byDigest=IBl;function IBl(e,t,r){return XZt(r).get(`digest:${e}:${t}`)}var P6r=class{constructor(t){this.obj=t}get(t){return this.obj[t]}set(t,r){this.obj[t]=r}};function XZt(e){return!e||!e.memoize?QZt:e.memoize.get&&e.memoize.set?e.memoize:typeof e.memoize=="object"?new P6r(e.memoize):QZt}});var eLt=H(hze=>{"use strict";var{Minipass:hBl}=lF(),mBl=Et("events").EventEmitter,aW=Et("fs"),CBl=aW.writev,TFe=Symbol("_autoClose"),fJ=Symbol("_close"),Ize=Symbol("_ended"),hb=Symbol("_fd"),Nms=Symbol("_finished"),sge=Symbol("_flags"),M6r=Symbol("_flush"),Y6r=Symbol("_handleChunk"),Q6r=Symbol("_makeBuf"),zZt=Symbol("_mode"),JZt=Symbol("_needDrain"),BFe=Symbol("_onerror"),RFe=Symbol("_onopen"),H6r=Symbol("_onread"),SFe=Symbol("_onwrite"),oge=Symbol("_open"),bre=Symbol("_path"),z0e=Symbol("_pos"),Uj=Symbol("_queue"),vFe=Symbol("_read"),Dms=Symbol("_readSize"),ige=Symbol("_reading"),UZt=Symbol("_remain"),kms=Symbol("_size"),KZt=Symbol("_write"),j0e=Symbol("_writing"),jZt=Symbol("_defaultFlag"),wFe=Symbol("_errored"),qZt=class extends hBl{constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[wFe]=!1,this[hb]=typeof r.fd=="number"?r.fd:null,this[bre]=t,this[Dms]=r.readSize||16*1024*1024,this[ige]=!1,this[kms]=typeof r.size=="number"?r.size:1/0,this[UZt]=this[kms],this[TFe]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[hb]=="number"?this[vFe]():this[oge]()}get fd(){return this[hb]}get path(){return this[bre]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[oge](){aW.open(this[bre],"r",(t,r)=>this[RFe](t,r))}[RFe](t,r){t?this[BFe](t):(this[hb]=r,this.emit("open",r),this[vFe]())}[Q6r](){return Buffer.allocUnsafe(Math.min(this[Dms],this[UZt]))}[vFe](){if(!this[ige]){this[ige]=!0;let t=this[Q6r]();if(t.length===0)return process.nextTick(()=>this[H6r](null,0,t));aW.read(this[hb],t,0,t.length,null,(r,n,a)=>this[H6r](r,n,a))}}[H6r](t,r,n){this[ige]=!1,t?this[BFe](t):this[Y6r](r,n)&&this[vFe]()}[fJ](){if(this[TFe]&&typeof this[hb]=="number"){let t=this[hb];this[hb]=null,aW.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[BFe](t){this[ige]=!0,this[fJ](),this.emit("error",t)}[Y6r](t,r){let n=!1;return this[UZt]-=t,t>0&&(n=super.write(tthis[RFe](t,r))}[RFe](t,r){this[jZt]&&this[sge]==="r+"&&t&&t.code==="ENOENT"?(this[sge]="w",this[oge]()):t?this[BFe](t):(this[hb]=r,this.emit("open",r),this[j0e]||this[M6r]())}end(t,r){return t&&this.write(t,r),this[Ize]=!0,!this[j0e]&&!this[Uj].length&&typeof this[hb]=="number"&&this[SFe](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[Ize]?(this.emit("error",new Error("write() after end()")),!1):this[hb]===null||this[j0e]||this[Uj].length?(this[Uj].push(t),this[JZt]=!0,!1):(this[j0e]=!0,this[KZt](t),!0)}[KZt](t){aW.write(this[hb],t,0,t.length,this[z0e],(r,n)=>this[SFe](r,n))}[SFe](t,r){t?this[BFe](t):(this[z0e]!==null&&(this[z0e]+=r),this[Uj].length?this[M6r]():(this[j0e]=!1,this[Ize]&&!this[Nms]?(this[Nms]=!0,this[fJ](),this.emit("finish")):this[JZt]&&(this[JZt]=!1,this.emit("drain"))))}[M6r](){if(this[Uj].length===0)this[Ize]&&this[SFe](null,0);else if(this[Uj].length===1)this[KZt](this[Uj].pop());else{let t=this[Uj];this[Uj]=[],CBl(this[hb],t,this[z0e],(r,n)=>this[SFe](r,n))}}[fJ](){if(this[TFe]&&typeof this[hb]=="number"){let t=this[hb];this[hb]=null,aW.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},J6r=class extends $Zt{[oge](){let t;if(this[jZt]&&this[sge]==="r+")try{t=aW.openSync(this[bre],this[sge],this[zZt])}catch(r){if(r.code==="ENOENT")return this[sge]="w",this[oge]();throw r}else t=aW.openSync(this[bre],this[sge],this[zZt]);this[RFe](null,t)}[fJ](){if(this[TFe]&&typeof this[hb]=="number"){let t=this[hb];this[hb]=null,aW.closeSync(t),this.emit("close")}}[KZt](t){let r=!0;try{this[SFe](null,aW.writeSync(this[hb],t,0,t.length,this[z0e])),r=!1}finally{if(r)try{this[fJ]()}catch{}}}};hze.ReadStream=qZt;hze.ReadStreamSync=X6r;hze.WriteStream=$Zt;hze.WriteStreamSync=J6r});var K6r=H((wng,NFe)=>{"use strict";var mze=Et("fs/promises"),_Bl=eLt(),U6r=cre(),yBl=_Fe(),xms=CFe();NFe.exports=bBl;var Gms=64*1024*1024;async function bBl(e,t,r={}){let{size:n}=r,{stat:a,cpath:o,sri:l}=await Cze(e,t,async(f,I)=>({stat:n?{size:n}:await mze.stat(f),cpath:f,sri:I}));if(a.size>Gms)return Fms(o,a.size,l,new xms).concat();let A=await mze.readFile(o,{encoding:null});if(a.size!==A.length)throw vBl(a.size,A.length);if(!U6r.checkData(A,l))throw BBl(l,o);return A}var Fms=(e,t,r,n)=>(n.push(new _Bl.ReadStream(e,{size:t,readSize:Gms}),U6r.integrityStream({integrity:r,size:t})),n);NFe.exports.stream=Zms;NFe.exports.readStream=Zms;function Zms(e,t,r={}){let{size:n}=r,a=new xms;return Promise.resolve().then(async()=>{let{stat:o,cpath:l,sri:A}=await Cze(e,t,async(f,I)=>({stat:n?{size:n}:await mze.stat(f),cpath:f,sri:I}));return Fms(l,o.size,A,a)}).catch(o=>a.emit("error",o)),a}NFe.exports.copy=EBl;function EBl(e,t,r){return Cze(e,t,n=>mze.copyFile(n,r))}NFe.exports.hasContent=SBl;async function SBl(e,t){if(!t)return!1;try{return await Cze(e,t,async(r,n)=>{let a=await mze.stat(r);return{size:a.size,sri:n,stat:a}})}catch(r){if(r.code==="ENOENT")return!1;if(r.code==="EPERM"){if(process.platform!=="win32")throw r;return!1}}}async function Cze(e,t,r){let n=U6r.parse(t),a=n.pickAlgorithm(),o=n[a];if(o.length<=1){let l=yBl(e,o[0]);return r(l,o[0])}else{let l=await Promise.all(o.map(async I=>{try{return await Cze(e,I,r)}catch(C){return C.code==="ENOENT"?Object.assign(new Error("No matching content found for "+n.toString()),{code:"ENOENT"}):C}})),A=l.find(I=>!(I instanceof Error));if(A)return A;let f=l.find(I=>I.code==="ENOENT");throw f||l.find(I=>I instanceof Error)}}function vBl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function BBl(e,t){let r=new Error(`Integrity verification failed for ${e} (${t})`);return r.code="EINTEGRITY",r.sri=e,r.path=t,r}});var Oms=H((Tng,Sre)=>{"use strict";var Lms=y6r(),{Minipass:Vms}=lF(),Wms=CFe(),q0e=bFe(),Ere=fze(),$0e=K6r();async function wBl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=Ere.get(e,t,r);if(l&&a!==!1)return{metadata:l.entry.metadata,data:l.data,integrity:l.entry.integrity,size:l.entry.size};let A=await q0e.find(e,t,r);if(!A)throw new q0e.NotFoundError(e,t);let f=await $0e(e,A.integrity,{integrity:n,size:o});return a&&Ere.put(e,A,f,r),{data:f,metadata:A.metadata,size:A.size,integrity:A.integrity}}Sre.exports=wBl;async function TBl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=Ere.get.byDigest(e,t,r);if(l&&a!==!1)return l;let A=await $0e(e,t,{integrity:n,size:o});return a&&Ere.put.byDigest(e,t,A,r),A}Sre.exports.byDigest=TBl;var RBl=e=>{let t=new Vms;return t.on("newListener",function(r,n){r==="metadata"&&n(e.entry.metadata),r==="integrity"&&n(e.entry.integrity),r==="size"&&n(e.entry.size)}),t.end(e.data),t};function NBl(e,t,r={}){let{memoize:n,size:a}=r,o=Ere.get(e,t,r);if(o&&n!==!1)return RBl(o);let l=new Wms;return Promise.resolve().then(async()=>{let A=await q0e.find(e,t);if(!A)throw new q0e.NotFoundError(e,t);l.emit("metadata",A.metadata),l.emit("integrity",A.integrity),l.emit("size",A.size),l.on("newListener",function(I,C){I==="metadata"&&C(A.metadata),I==="integrity"&&C(A.integrity),I==="size"&&C(A.size)});let f=$0e.readStream(e,A.integrity,{...r,size:typeof a!="number"?A.size:a});if(n){let I=new Lms.PassThrough;I.on("collect",C=>Ere.put(e,A,C,r)),l.unshift(I)}return l.unshift(f),l}).catch(A=>l.emit("error",A)),l}Sre.exports.stream=NBl;function DBl(e,t,r={}){let{memoize:n}=r,a=Ere.get.byDigest(e,t,r);if(a&&n!==!1){let o=new Vms;return o.end(a),o}else{let o=$0e.readStream(e,t,r);if(!n)return o;let l=new Lms.PassThrough;return l.on("collect",A=>Ere.put.byDigest(e,t,A,r)),new Wms(o,l)}}Sre.exports.stream.byDigest=DBl;function kBl(e,t,r={}){let{memoize:n}=r,a=Ere.get(e,t,r);return a&&n!==!1?Promise.resolve(a.entry):q0e.find(e,t)}Sre.exports.info=kBl;async function xBl(e,t,r,n={}){let a=await q0e.find(e,t,n);if(!a)throw new q0e.NotFoundError(e,t);return await $0e.copy(e,a.integrity,r,n),{metadata:a.metadata,size:a.size,integrity:a.integrity}}Sre.exports.copy=xBl;async function GBl(e,t,r,n={}){return await $0e.copy(e,t,r,n),t}Sre.exports.copy.byDigest=GBl;Sre.exports.hasContent=$0e.hasContent});var Qms=H((Rng,$6r)=>{"use strict";var Pms=Et("events"),FBl=_Fe(),yze=Et("fs/promises"),{moveFile:ZBl}=WZt(),{Minipass:LBl}=lF(),Mms=CFe(),VBl=GZt(),j6r=Et("path"),z6r=cre(),WBl=T6r(),OBl=eLt();$6r.exports=PBl;var _ze=new Map;async function PBl(e,t,r={}){let{algorithms:n,size:a,integrity:o}=r;if(typeof a=="number"&&t.length!==a)throw QBl(a,t.length);let l=z6r.fromData(t,n?{algorithms:n}:{});if(o&&!z6r.checkData(t,o,r))throw XBl(o,l);for(let A in l){let f=await Hms(e,r),I=l[A].toString();try{await yze.writeFile(f.target,t,{flag:"wx"}),await Yms(f,e,I,r)}finally{f.moved||await yze.rm(f.target,{recursive:!0,force:!0})}}return{integrity:l,size:t.length}}$6r.exports.stream=MBl;var q6r=class extends VBl{constructor(t,r){super(),this.opts=r,this.cache=t,this.inputStream=new LBl,this.inputStream.on("error",n=>this.emit("error",n)),this.inputStream.on("drain",()=>this.emit("drain")),this.handleContentP=null}write(t,r,n){return this.handleContentP||(this.handleContentP=HBl(this.inputStream,this.cache,this.opts),this.handleContentP.catch(a=>this.emit("error",a))),this.inputStream.write(t,r,n)}flush(t){this.inputStream.end(()=>{if(!this.handleContentP){let r=new Error("Cache input stream was empty");return r.code="ENODATA",Promise.reject(r).catch(t)}this.handleContentP.then(r=>{r.integrity&&this.emit("integrity",r.integrity),r.size!==null&&this.emit("size",r.size),t()},r=>t(r))})}};function MBl(e,t={}){return new q6r(e,t)}async function HBl(e,t,r){let n=await Hms(t,r);try{let a=await YBl(e,t,n.target,r);return await Yms(n,t,a.integrity,r),a}finally{n.moved||await yze.rm(n.target,{recursive:!0,force:!0})}}async function YBl(e,t,r,n){let a=new OBl.WriteStream(r,{flags:"wx"});if(n.integrityEmitter){let[I,C]=await Promise.all([Pms.once(n.integrityEmitter,"integrity").then(b=>b[0]),Pms.once(n.integrityEmitter,"size").then(b=>b[0]),new Mms(e,a).promise()]);return{integrity:I,size:C}}let o,l,A=z6r.integrityStream({integrity:n.integrity,algorithms:n.algorithms,size:n.size});return A.on("integrity",I=>{o=I}),A.on("size",I=>{l=I}),await new Mms(e,A,a).promise(),{integrity:o,size:l}}async function Hms(e,t){let r=WBl(j6r.join(e,"tmp"),t.tmpPrefix);return await yze.mkdir(j6r.dirname(r),{recursive:!0}),{target:r,moved:!1}}async function Yms(e,t,r){let n=FBl(t,r),a=j6r.dirname(n);return _ze.has(n)||_ze.set(n,yze.mkdir(a,{recursive:!0}).then(async()=>(await ZBl(e.target,n,{overwrite:!1}),e.moved=!0,e.moved)).catch(o=>{if(!o.message.startsWith("The destination file exists"))throw Object.assign(o,{code:"EEXIST"})}).finally(()=>{_ze.delete(n)})),_ze.get(n)}function QBl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function XBl(e,t){let r=new Error(`Integrity check failed: Wanted: ${e} - Found: ${t}`);return r.code="EINTEGRITY",r.expected=e,r.found=t,r}});var Kms=H((frg,U6r)=>{"use strict";var Qms=bFe(),Xms=Ize(),Jms=Yms(),jvl=GZt(),{PassThrough:zvl}=f6r(),qvl=CFe(),Ums=e=>({algorithms:["sha512"],...e});U6r.exports=$vl;async function $vl(e,t,r,n={}){let{memoize:a}=n;n=Ums(n);let o=await Jms(e,r,n),l=await Qms.insert(e,t,o.integrity,{...n,size:o.size});return a&&Xms.put(e,l,r,n),o.integrity}U6r.exports.stream=eBl;function eBl(e,t,r={}){let{memoize:n}=r;r=Ums(r);let a,o,l,A,f=new qvl;if(n){let C=new zvl().on("collect",b=>{A=b});f.push(C)}let I=Jms.stream(e,r).on("integrity",C=>{a=C}).on("size",C=>{o=C}).on("error",C=>{l=C});return f.push(I),f.push(new jvl({async flush(){if(!l){let C=await Qms.insert(e,t,a,{...r,size:o});n&&A&&Xms.put(e,C,A,r),f.emit("integrity",a),f.emit("size",o)}}})),f}});var K6r=H((Irg,$ms)=>{"use strict";$ms.exports=zms;function zms(e,t,r){e instanceof RegExp&&(e=jms(e,r)),t instanceof RegExp&&(t=jms(t,r));var n=qms(e,t,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+e.length,n[1]),post:r.slice(n[1]+t.length)}}function jms(e,t){var r=t.match(e);return r?r[0]:null}zms.range=qms;function qms(e,t,r){var n,a,o,l,A,f=r.indexOf(e),I=r.indexOf(t,f+1),C=f;if(f>=0&&I>0){if(e===t)return[f,I];for(n=[],o=r.length;C>=0&&!A;)C==f?(n.push(C),f=r.indexOf(e,C+1)):n.length==1?A=[n.pop(),I]:(a=n.pop(),a=0?f:I;n.length&&(A=[o,l])}return A}});var aCs=H((hrg,oCs)=>{var eCs=K6r();oCs.exports=nBl;var tCs="\0SLASH"+Math.random()+"\0",rCs="\0OPEN"+Math.random()+"\0",z6r="\0CLOSE"+Math.random()+"\0",nCs="\0COMMA"+Math.random()+"\0",iCs="\0PERIOD"+Math.random()+"\0";function j6r(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function tBl(e){return e.split("\\\\").join(tCs).split("\\{").join(rCs).split("\\}").join(z6r).split("\\,").join(nCs).split("\\.").join(iCs)}function rBl(e){return e.split(tCs).join("\\").split(rCs).join("{").split(z6r).join("}").split(nCs).join(",").split(iCs).join(".")}function sCs(e){if(!e)return[""];var t=[],r=eCs("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=sCs(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function nBl(e){return e?(e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),Eze(tBl(e),!0).map(rBl)):[]}function iBl(e){return"{"+e+"}"}function sBl(e){return/^-?0\d/.test(e)}function oBl(e,t){return e<=t}function aBl(e,t){return e>=t}function Eze(e,t){var r=[],n=eCs("{","}",e);if(!n)return[e];var a=n.pre,o=n.post.length?Eze(n.post,!1):[""];if(/\$$/.test(n.pre))for(var l=0;l=0;if(!C&&!b)return n.post.match(/,.*\}/)?(e=n.pre+"{"+n.body+z6r+n.post,Eze(e)):[e];var E;if(C)E=n.body.split(/\.\./);else if(E=sCs(n.body),E.length===1&&(E=Eze(E[0],!1).map(iBl),E.length===1))return o.map(function(De){return n.pre+E[0]+De});var N;if(C){var B=j6r(E[0]),F=j6r(E[1]),Q=Math.max(E[0].length,E[1].length),J=E.length==3?Math.abs(j6r(E[2])):1,ae=oBl,ne=F0){var be=new Array(de+1).join("0");fe<0?ue="-"+be+ue.slice(1):ue=be+ue}}N.push(ue)}}else{N=[];for(var Se=0;Se{"use strict";Object.defineProperty(tLt,"__esModule",{value:!0});tLt.assertValidPattern=void 0;var cBl=1024*64,lBl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>cBl)throw new TypeError("pattern is too long")};tLt.assertValidPattern=lBl});var uCs=H(rLt=>{"use strict";Object.defineProperty(rLt,"__esModule",{value:!0});rLt.parseClass=void 0;var uBl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Sze=e=>e.replace(/[[\]\\-]/g,"\\$&"),gBl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),lCs=e=>e.join(""),ABl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(Sze(b)+"-"+Sze(F)):F===b&&n.push(Sze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(Sze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(Sze(F)),o++}if(C{"use strict";Object.defineProperty(nLt,"__esModule",{value:!0});nLt.unescape=void 0;var dBl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");nLt.unescape=dBl});var ejr=H(aLt=>{"use strict";Object.defineProperty(aLt,"__esModule",{value:!0});aLt.AST=void 0;var pBl=uCs(),sLt=iLt(),fBl=new Set(["!","?","+","*","@"]),gCs=e=>fBl.has(e),IBl="(?!(?:^|/)\\.\\.?(?:$|/))",oLt="(?!\\.)",hBl=new Set(["[","."]),mBl=new Set(["..","."]),CBl=new Set("().*{}+?[]^$\\!"),_Bl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),$6r="[^/]",ACs=$6r+"*?",dCs=$6r+"+?",q6r=class e{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,J]=typeof N=="string"?e.#d(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||J,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&mBl.has(this.#r[0]))){let B=hBl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?IBl:Q?oLt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,sLt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#I(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString();return this.#r=[f],this.type=null,this.#t=void 0,[f,(0,sLt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!oLt?"":this.#I(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?oLt:"")+dCs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?oLt:"")+ACs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,sLt.unescape)(o),this.#t=!!this.#t,this.#n]}#I(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#d(t,r,n=!1){let a=!1,o="",l=!1;for(let A=0;A{"use strict";Object.defineProperty(cLt,"__esModule",{value:!0});cLt.escape=void 0;var yBl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");cLt.escape=yBl});var oge=H(ud=>{"use strict";var bBl=ud&&ud.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ud,"__esModule",{value:!0});ud.unescape=ud.escape=ud.AST=ud.Minimatch=ud.match=ud.makeRe=ud.braceExpand=ud.defaults=ud.filter=ud.GLOBSTAR=ud.sep=ud.minimatch=void 0;var EBl=bBl(aCs()),lLt=cCs(),ICs=ejr(),SBl=tjr(),vBl=iLt(),BBl=(e,t,r={})=>((0,lLt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new eye(t,r).match(e));ud.minimatch=BBl;var wBl=/^\*+([^+@!?\*\[\(]*)$/,TBl=e=>t=>!t.startsWith(".")&&t.endsWith(e),RBl=e=>t=>t.endsWith(e),NBl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),DBl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),kBl=/^\*+\.\*+$/,xBl=e=>!e.startsWith(".")&&e.includes("."),GBl=e=>e!=="."&&e!==".."&&e.includes("."),FBl=/^\.\*+$/,ZBl=e=>e!=="."&&e!==".."&&e.startsWith("."),LBl=/^\*+$/,VBl=e=>e.length!==0&&!e.startsWith("."),WBl=e=>e.length!==0&&e!=="."&&e!=="..",OBl=/^\?+([^+@!?\*\[\(]*)?$/,PBl=([e,t=""])=>{let r=hCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},MBl=([e,t=""])=>{let r=mCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},HBl=([e,t=""])=>{let r=mCs([e]);return t?n=>r(n)&&n.endsWith(t):r},YBl=([e,t=""])=>{let r=hCs([e]);return t?n=>r(n)&&n.endsWith(t):r},hCs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},mCs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},CCs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",pCs={win32:{sep:"\\"},posix:{sep:"/"}};ud.sep=CCs==="win32"?pCs.win32.sep:pCs.posix.sep;ud.minimatch.sep=ud.sep;ud.GLOBSTAR=Symbol("globstar **");ud.minimatch.GLOBSTAR=ud.GLOBSTAR;var QBl="[^/]",XBl=QBl+"*?",JBl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",UBl="(?:(?!(?:\\/|^)\\.).)*?",KBl=(e,t={})=>r=>(0,ud.minimatch)(r,e,t);ud.filter=KBl;ud.minimatch.filter=ud.filter;var qH=(e,t={})=>Object.assign({},e,t),jBl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return ud.minimatch;let t=ud.minimatch;return Object.assign((n,a,o={})=>t(n,a,qH(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,qH(e,o))}static defaults(a){return t.defaults(qH(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,qH(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,qH(e,o))}},unescape:(n,a={})=>t.unescape(n,qH(e,a)),escape:(n,a={})=>t.escape(n,qH(e,a)),filter:(n,a={})=>t.filter(n,qH(e,a)),defaults:n=>t.defaults(qH(e,n)),makeRe:(n,a={})=>t.makeRe(n,qH(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,qH(e,a)),match:(n,a,o={})=>t.match(n,a,qH(e,o)),sep:t.sep,GLOBSTAR:ud.GLOBSTAR})};ud.defaults=jBl;ud.minimatch.defaults=ud.defaults;var zBl=(e,t={})=>((0,lLt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,EBl.default)(e));ud.braceExpand=zBl;ud.minimatch.braceExpand=ud.braceExpand;var qBl=(e,t={})=>new eye(e,t).makeRe();ud.makeRe=qBl;ud.minimatch.makeRe=ud.makeRe;var $Bl=(e,t,r={})=>{let n=new eye(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};ud.match=$Bl;ud.minimatch.match=ud.match;var fCs=/[?*]|[+@!]\(.*?\)|\[|\]/,ewl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),eye=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,r={}){(0,lLt.assertValidPattern)(t),r=r||{},this.options=r,this.pattern=t,this.platform=r.platform||CCs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!fCs.test(o[2]))&&!fCs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;ane?r=r.slice(ce):ne>ce&&(t=t.slice(ne)))}}let{optimizationLevel:o=1}=this.options;o>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:r}),this.debug("matchOne",t.length,r.length);for(var l=0,A=0,f=t.length,I=r.length;l{"use strict";var Xms=bFe(),Jms=fze(),Ums=Qms(),JBl=GZt(),{PassThrough:UBl}=y6r(),KBl=CFe(),Kms=e=>({algorithms:["sha512"],...e});ejr.exports=jBl;async function jBl(e,t,r,n={}){let{memoize:a}=n;n=Kms(n);let o=await Ums(e,r,n),l=await Xms.insert(e,t,o.integrity,{...n,size:o.size});return a&&Jms.put(e,l,r,n),o.integrity}ejr.exports.stream=zBl;function zBl(e,t,r={}){let{memoize:n}=r;r=Kms(r);let a,o,l,A,f=new KBl;if(n){let C=new UBl().on("collect",b=>{A=b});f.push(C)}let I=Ums.stream(e,r).on("integrity",C=>{a=C}).on("size",C=>{o=C}).on("error",C=>{l=C});return f.push(I),f.push(new JBl({async flush(){if(!l){let C=await Xms.insert(e,t,a,{...r,size:o});n&&A&&Jms.put(e,C,A,r),f.emit("integrity",a),f.emit("size",o)}}})),f}});var tjr=H((Dng,eCs)=>{"use strict";eCs.exports=qms;function qms(e,t,r){e instanceof RegExp&&(e=zms(e,r)),t instanceof RegExp&&(t=zms(t,r));var n=$ms(e,t,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+e.length,n[1]),post:r.slice(n[1]+t.length)}}function zms(e,t){var r=t.match(e);return r?r[0]:null}qms.range=$ms;function $ms(e,t,r){var n,a,o,l,A,f=r.indexOf(e),I=r.indexOf(t,f+1),C=f;if(f>=0&&I>0){if(e===t)return[f,I];for(n=[],o=r.length;C>=0&&!A;)C==f?(n.push(C),f=r.indexOf(e,C+1)):n.length==1?A=[n.pop(),I]:(a=n.pop(),a=0?f:I;n.length&&(A=[o,l])}return A}});var cCs=H((kng,aCs)=>{var tCs=tjr();aCs.exports=ewl;var rCs="\0SLASH"+Math.random()+"\0",nCs="\0OPEN"+Math.random()+"\0",njr="\0CLOSE"+Math.random()+"\0",iCs="\0COMMA"+Math.random()+"\0",sCs="\0PERIOD"+Math.random()+"\0";function rjr(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function qBl(e){return e.split("\\\\").join(rCs).split("\\{").join(nCs).split("\\}").join(njr).split("\\,").join(iCs).split("\\.").join(sCs)}function $Bl(e){return e.split(rCs).join("\\").split(nCs).join("{").split(njr).join("}").split(iCs).join(",").split(sCs).join(".")}function oCs(e){if(!e)return[""];var t=[],r=tCs("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=oCs(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function ewl(e){return e?(e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),bze(qBl(e),!0).map($Bl)):[]}function twl(e){return"{"+e+"}"}function rwl(e){return/^-?0\d/.test(e)}function nwl(e,t){return e<=t}function iwl(e,t){return e>=t}function bze(e,t){var r=[],n=tCs("{","}",e);if(!n)return[e];var a=n.pre,o=n.post.length?bze(n.post,!1):[""];if(/\$$/.test(n.pre))for(var l=0;l=0;if(!C&&!b)return n.post.match(/,.*\}/)?(e=n.pre+"{"+n.body+njr+n.post,bze(e)):[e];var E;if(C)E=n.body.split(/\.\./);else if(E=oCs(n.body),E.length===1&&(E=bze(E[0],!1).map(twl),E.length===1))return o.map(function(De){return n.pre+E[0]+De});var N;if(C){var B=rjr(E[0]),F=rjr(E[1]),Q=Math.max(E[0].length,E[1].length),J=E.length==3?Math.abs(rjr(E[2])):1,ae=nwl,ne=F0){var be=new Array(de+1).join("0");fe<0?ue="-"+be+ue.slice(1):ue=be+ue}}N.push(ue)}}else{N=[];for(var Se=0;Se{"use strict";Object.defineProperty(tLt,"__esModule",{value:!0});tLt.assertValidPattern=void 0;var swl=1024*64,owl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>swl)throw new TypeError("pattern is too long")};tLt.assertValidPattern=owl});var gCs=H(rLt=>{"use strict";Object.defineProperty(rLt,"__esModule",{value:!0});rLt.parseClass=void 0;var awl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Eze=e=>e.replace(/[[\]\\-]/g,"\\$&"),cwl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),uCs=e=>e.join(""),lwl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(Eze(b)+"-"+Eze(F)):F===b&&n.push(Eze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(Eze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(Eze(F)),o++}if(C{"use strict";Object.defineProperty(nLt,"__esModule",{value:!0});nLt.unescape=void 0;var uwl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");nLt.unescape=uwl});var ojr=H(aLt=>{"use strict";Object.defineProperty(aLt,"__esModule",{value:!0});aLt.AST=void 0;var gwl=gCs(),sLt=iLt(),Awl=new Set(["!","?","+","*","@"]),ACs=e=>Awl.has(e),dwl="(?!(?:^|/)\\.\\.?(?:$|/))",oLt="(?!\\.)",pwl=new Set(["[","."]),fwl=new Set(["..","."]),Iwl=new Set("().*{}+?[]^$\\!"),hwl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),sjr="[^/]",dCs=sjr+"*?",pCs=sjr+"+?",ijr=class e{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,J]=typeof N=="string"?e.#d(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||J,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&fwl.has(this.#r[0]))){let B=pwl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?dwl:Q?oLt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,sLt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#I(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString();return this.#r=[f],this.type=null,this.#t=void 0,[f,(0,sLt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!oLt?"":this.#I(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?oLt:"")+pCs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?oLt:"")+dCs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,sLt.unescape)(o),this.#t=!!this.#t,this.#n]}#I(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#d(t,r,n=!1){let a=!1,o="",l=!1;for(let A=0;A{"use strict";Object.defineProperty(cLt,"__esModule",{value:!0});cLt.escape=void 0;var mwl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");cLt.escape=mwl});var age=H(ud=>{"use strict";var Cwl=ud&&ud.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ud,"__esModule",{value:!0});ud.unescape=ud.escape=ud.AST=ud.Minimatch=ud.match=ud.makeRe=ud.braceExpand=ud.defaults=ud.filter=ud.GLOBSTAR=ud.sep=ud.minimatch=void 0;var _wl=Cwl(cCs()),lLt=lCs(),hCs=ojr(),ywl=ajr(),bwl=iLt(),Ewl=(e,t,r={})=>((0,lLt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new eye(t,r).match(e));ud.minimatch=Ewl;var Swl=/^\*+([^+@!?\*\[\(]*)$/,vwl=e=>t=>!t.startsWith(".")&&t.endsWith(e),Bwl=e=>t=>t.endsWith(e),wwl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),Twl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),Rwl=/^\*+\.\*+$/,Nwl=e=>!e.startsWith(".")&&e.includes("."),Dwl=e=>e!=="."&&e!==".."&&e.includes("."),kwl=/^\.\*+$/,xwl=e=>e!=="."&&e!==".."&&e.startsWith("."),Gwl=/^\*+$/,Fwl=e=>e.length!==0&&!e.startsWith("."),Zwl=e=>e.length!==0&&e!=="."&&e!=="..",Lwl=/^\?+([^+@!?\*\[\(]*)?$/,Vwl=([e,t=""])=>{let r=mCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},Wwl=([e,t=""])=>{let r=CCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},Owl=([e,t=""])=>{let r=CCs([e]);return t?n=>r(n)&&n.endsWith(t):r},Pwl=([e,t=""])=>{let r=mCs([e]);return t?n=>r(n)&&n.endsWith(t):r},mCs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},CCs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},_Cs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",fCs={win32:{sep:"\\"},posix:{sep:"/"}};ud.sep=_Cs==="win32"?fCs.win32.sep:fCs.posix.sep;ud.minimatch.sep=ud.sep;ud.GLOBSTAR=Symbol("globstar **");ud.minimatch.GLOBSTAR=ud.GLOBSTAR;var Mwl="[^/]",Hwl=Mwl+"*?",Ywl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Qwl="(?:(?!(?:\\/|^)\\.).)*?",Xwl=(e,t={})=>r=>(0,ud.minimatch)(r,e,t);ud.filter=Xwl;ud.minimatch.filter=ud.filter;var $H=(e,t={})=>Object.assign({},e,t),Jwl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return ud.minimatch;let t=ud.minimatch;return Object.assign((n,a,o={})=>t(n,a,$H(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,$H(e,o))}static defaults(a){return t.defaults($H(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,$H(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,$H(e,o))}},unescape:(n,a={})=>t.unescape(n,$H(e,a)),escape:(n,a={})=>t.escape(n,$H(e,a)),filter:(n,a={})=>t.filter(n,$H(e,a)),defaults:n=>t.defaults($H(e,n)),makeRe:(n,a={})=>t.makeRe(n,$H(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,$H(e,a)),match:(n,a,o={})=>t.match(n,a,$H(e,o)),sep:t.sep,GLOBSTAR:ud.GLOBSTAR})};ud.defaults=Jwl;ud.minimatch.defaults=ud.defaults;var Uwl=(e,t={})=>((0,lLt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,_wl.default)(e));ud.braceExpand=Uwl;ud.minimatch.braceExpand=ud.braceExpand;var Kwl=(e,t={})=>new eye(e,t).makeRe();ud.makeRe=Kwl;ud.minimatch.makeRe=ud.makeRe;var jwl=(e,t,r={})=>{let n=new eye(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};ud.match=jwl;ud.minimatch.match=ud.match;var ICs=/[?*]|[+@!]\(.*?\)|\[|\]/,zwl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),eye=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,r={}){(0,lLt.assertValidPattern)(t),r=r||{},this.options=r,this.pattern=t,this.platform=r.platform||_Cs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!ICs.test(o[2]))&&!ICs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;ane?r=r.slice(ce):ne>ce&&(t=t.slice(ne)))}}let{optimizationLevel:o=1}=this.options;o>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:r}),this.debug("matchOne",t.length,r.length);for(var l=0,A=0,f=t.length,I=r.length;l>> no match, partial?`,t,E,r,N),E===f))}let F;if(typeof C=="string"?(F=b===C,this.debug("string match",C,b,F)):(F=C.test(b),this.debug("pattern match",C,b,F)),!F)return!1}if(l===f&&A===I)return!0;if(l===f)return n;if(A===I)return l===f-1&&t[l]==="";throw new Error("wtf?")}braceExpand(){return(0,ud.braceExpand)(this.pattern,this.options)}parse(t){(0,lLt.assertValidPattern)(t);let r=this.options;if(t==="**")return ud.GLOBSTAR;if(t==="")return"";let n,a=null;(n=t.match(LBl))?a=r.dot?WBl:VBl:(n=t.match(wBl))?a=(r.nocase?r.dot?DBl:NBl:r.dot?RBl:TBl)(n[1]):(n=t.match(OBl))?a=(r.nocase?r.dot?MBl:PBl:r.dot?HBl:YBl)(n):(n=t.match(kBl))?a=r.dot?GBl:xBl:(n=t.match(FBl))&&(a=ZBl);let o=ICs.AST.fromGlob(t,this.options).toMMPattern();return a&&typeof o=="object"&&Reflect.defineProperty(o,"test",{value:a}),o}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let t=this.set;if(!t.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?XBl:r.dot?JBl:UBl,a=new Set(r.nocase?["i"]:[]),o=t.map(f=>{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?ewl(C):C===ud.GLOBSTAR?ud.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==ud.GLOBSTAR||N===ud.GLOBSTAR||(N===void 0?E!==void 0&&E!==ud.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==ud.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=ud.GLOBSTAR))}),I.filter(C=>C!==ud.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var iwl=$0&&$0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),swl=$0&&$0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),owl=$0&&$0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&iwl(t,e,r);return swl(t,e),t};Object.defineProperty($0,"__esModule",{value:!0});$0.PathScurry=$0.Path=$0.PathScurryDarwin=$0.PathScurryPosix=$0.PathScurryWin32=$0.PathScurryBase=$0.PathPosix=$0.PathWin32=$0.PathBase=$0.ChildrenCache=$0.ResolveCache=void 0;var vCs=VIe(),pLt=Et("node:path"),awl=Et("node:url"),Bze=Et("fs"),cwl=owl(Et("node:fs")),lwl=Bze.realpathSync.native,uLt=Et("node:fs/promises"),_Cs=cF(),wze={lstatSync:Bze.lstatSync,readdir:Bze.readdir,readdirSync:Bze.readdirSync,readlinkSync:Bze.readlinkSync,realpathSync:lwl,promises:{lstat:uLt.lstat,readdir:uLt.readdir,readlink:uLt.readlink,realpath:uLt.realpath}},BCs=e=>!e||e===wze||e===cwl?wze:{...wze,...e,promises:{...wze.promises,...e.promises||{}}},wCs=/^\\\\\?\\([a-z]:)\\?$/i,uwl=e=>e.replace(/\//g,"\\").replace(wCs,"$1\\"),gwl=/[\\\/]/,eY=0,TCs=1,RCs=2,Uj=4,NCs=6,DCs=8,tye=10,kCs=12,$H=15,vze=~$H,rjr=16,yCs=32,Tze=64,fJ=128,gLt=256,dLt=512,bCs=Tze|fJ|dLt,Awl=1023,njr=e=>e.isFile()?DCs:e.isDirectory()?Uj:e.isSymbolicLink()?tye:e.isCharacterDevice()?RCs:e.isBlockDevice()?NCs:e.isSocket()?kCs:e.isFIFO()?TCs:eY,ECs=new Map,Rze=e=>{let t=ECs.get(e);if(t)return t;let r=e.normalize("NFKD");return ECs.set(e,r),r},SCs=new Map,ALt=e=>{let t=SCs.get(e);if(t)return t;let r=Rze(e.toLowerCase());return SCs.set(e,r),r},Nze=class extends vCs.LRUCache{constructor(){super({max:256})}};$0.ResolveCache=Nze;var fLt=class extends vCs.LRUCache{constructor(t=16*1024){super({maxSize:t,sizeCalculation:r=>r.length+1})}};$0.ChildrenCache=fLt;var xCs=Symbol("PathScurry setAsCwd"),_x=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#i;get uid(){return this.#i}#s;get gid(){return this.#s}#o;get rdev(){return this.#o}#g;get blksize(){return this.#g}#l;get ino(){return this.#l}#u;get size(){return this.#u}#a;get blocks(){return this.#a}#m;get atimeMs(){return this.#m}#f;get mtimeMs(){return this.#f}#I;get ctimeMs(){return this.#I}#d;get birthtimeMs(){return this.#d}#b;get atime(){return this.#b}#h;get mtime(){return this.#h}#S;get ctime(){return this.#S}#v;get birthtime(){return this.#v}#C;#E;#_;#p;#B;#w;#c;#k;#y;#N;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(t,r=eY,n,a,o,l,A){this.name=t,this.#C=o?ALt(t):Rze(t),this.#c=r&Awl,this.nocase=o,this.roots=a,this.root=n||this,this.#k=l,this.#_=A.fullpath,this.#B=A.relative,this.#w=A.relativePosix,this.parent=A.parent,this.parent?this.#e=this.parent.#e:this.#e=BCs(A.fs)}depth(){return this.#E!==void 0?this.#E:this.parent?this.#E=this.parent.depth()+1:this.#E=0}childrenCache(){return this.#k}resolve(t){if(!t)return this;let r=this.getRootString(t),a=t.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#x(a):this.#x(a)}#x(t){let r=this;for(let n of t)r=r.child(n);return r}children(){let t=this.#k.get(this);if(t)return t;let r=Object.assign([],{provisional:0});return this.#k.set(this,r),this.#c&=~rjr,r}child(t,r){if(t===""||t===".")return this;if(t==="..")return this.parent||this;let n=this.children(),a=this.nocase?ALt(t):Rze(t);for(let f of n)if(f.#C===a)return f;let o=this.parent?this.sep:"",l=this.#_?this.#_+o+t:void 0,A=this.newChild(t,eY,{...r,parent:this,fullpath:l});return this.canReaddir()||(A.#c|=fJ),n.push(A),A}relative(){if(this.isCWD)return"";if(this.#B!==void 0)return this.#B;let t=this.name,r=this.parent;if(!r)return this.#B=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+t}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#w!==void 0)return this.#w;let t=this.name,r=this.parent;if(!r)return this.#w=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+t}fullpath(){if(this.#_!==void 0)return this.#_;let t=this.name,r=this.parent;if(!r)return this.#_=this.name;let a=r.fullpath()+(r.parent?this.sep:"")+t;return this.#_=a}fullpathPosix(){if(this.#p!==void 0)return this.#p;if(this.sep==="/")return this.#p=this.fullpath();if(!this.parent){let a=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(a)?this.#p=`//?/${a}`:this.#p=a}let t=this.parent,r=t.fullpathPosix(),n=r+(!r||!t.parent?"":"/")+this.name;return this.#p=n}isUnknown(){return(this.#c&$H)===eY}isType(t){return this[`is${t}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#c&$H)===DCs}isDirectory(){return(this.#c&$H)===Uj}isCharacterDevice(){return(this.#c&$H)===RCs}isBlockDevice(){return(this.#c&$H)===NCs}isFIFO(){return(this.#c&$H)===TCs}isSocket(){return(this.#c&$H)===kCs}isSymbolicLink(){return(this.#c&tye)===tye}lstatCached(){return this.#c&yCs?this:void 0}readlinkCached(){return this.#y}realpathCached(){return this.#N}readdirCached(){let t=this.children();return t.slice(0,t.provisional)}canReadlink(){if(this.#y)return!0;if(!this.parent)return!1;let t=this.#c&$H;return!(t!==eY&&t!==tye||this.#c&gLt||this.#c&fJ)}calledReaddir(){return!!(this.#c&rjr)}isENOENT(){return!!(this.#c&fJ)}isNamed(t){return this.nocase?this.#C===ALt(t):this.#C===Rze(t)}async readlink(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}readlinkSync(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}#G(t){this.#c|=rjr;for(let r=t.provisional;rn(null,t))}readdirCB(t,r=!1){if(!this.canReaddir()){r?t(null,[]):queueMicrotask(()=>t(null,[]));return}let n=this.children();if(this.calledReaddir()){let o=n.slice(0,n.provisional);r?t(null,o):queueMicrotask(()=>t(null,o));return}if(this.#H.push(t),this.#Y)return;this.#Y=!0;let a=this.fullpath();this.#e.readdir(a,{withFileTypes:!0},(o,l)=>{if(o)this.#L(o.code),n.provisional=0;else{for(let A of l)this.#W(A,n);this.#G(n)}this.#X(n.slice(0,n.provisional))})}#M;async readdir(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();if(this.#M)await this.#M;else{let n=()=>{};this.#M=new Promise(a=>n=a);try{for(let a of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#W(a,t);this.#G(t)}catch(a){this.#L(a.code),t.provisional=0}this.#M=void 0,n()}return t.slice(0,t.provisional)}readdirSync(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#W(n,t);this.#G(t)}catch(n){this.#L(n.code),t.provisional=0}return t.slice(0,t.provisional)}canReaddir(){if(this.#c&bCs)return!1;let t=$H&this.#c;return t===eY||t===Uj||t===tye}shouldWalk(t,r){return(this.#c&Uj)===Uj&&!(this.#c&bCs)&&!t.has(this)&&(!r||r(this))}async realpath(){if(this.#N)return this.#N;if(!((dLt|gLt|fJ)&this.#c))try{let t=await this.#e.promises.realpath(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}realpathSync(){if(this.#N)return this.#N;if(!((dLt|gLt|fJ)&this.#c))try{let t=this.#e.realpathSync(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}[xCs](t){if(t===this)return;t.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],a=this;for(;a&&a.parent;)r.add(a),a.#B=n.join(this.sep),a.#w=n.join("/"),a=a.parent,n.push("..");for(a=t;a&&a.parent&&!r.has(a);)a.#B=void 0,a.#w=void 0,a=a.parent}};$0.PathBase=_x;var Dze=class e extends _x{sep="\\";splitSep=gwl;constructor(t,r=eY,n,a,o,l,A){super(t,r,n,a,o,l,A)}newChild(t,r=eY,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(t){return pLt.win32.parse(t).root}getRoot(t){if(t=uwl(t.toUpperCase()),t===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(t,r))return this.roots[t]=n;return this.roots[t]=new Gze(t,this).root}sameRoot(t,r=this.root.name){return t=t.toUpperCase().replace(/\//g,"\\").replace(wCs,"$1\\"),t===r}};$0.PathWin32=Dze;var kze=class e extends _x{splitSep="/";sep="/";constructor(t,r=eY,n,a,o,l,A){super(t,r,n,a,o,l,A)}getRootString(t){return t.startsWith("/")?"/":""}getRoot(t){return this.root}newChild(t,r=eY,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}};$0.PathPosix=kze;var xze=class{root;rootPath;roots;cwd;#e;#t;#n;nocase;#r;constructor(t=process.cwd(),r,n,{nocase:a,childrenCacheSize:o=16*1024,fs:l=wze}={}){this.#r=BCs(l),(t instanceof URL||t.startsWith("file://"))&&(t=(0,awl.fileURLToPath)(t));let A=r.resolve(t);this.roots=Object.create(null),this.rootPath=this.parseRootPath(A),this.#e=new Nze,this.#t=new Nze,this.#n=new fLt(o);let f=A.substring(this.rootPath.length).split(n);if(f.length===1&&!f[0]&&f.pop(),a===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=a,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let I=this.root,C=f.length-1,b=r.sep,E=this.rootPath,N=!1;for(let B of f){let F=C--;I=I.child(B,{relative:new Array(F).fill("..").join(b),relativePosix:new Array(F).fill("..").join("/"),fullpath:E+=(N?"":b)+B}),N=!0}this.cwd=I}depth(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.depth()}childrenCache(){return this.#n}resolve(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#e.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpath();return this.#e.set(r,a),a}resolvePosix(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#t.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpathPosix();return this.#t.set(r,a),a}relative(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relative()}relativePosix(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relativePosix()}basename(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.name}dirname(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),(t.parent||t).fullpath()}async readdir(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd);let{withFileTypes:n}=r;if(t.canReaddir()){let a=await t.readdir();return n?a:a.map(o=>o.name)}else return[]}readdirSync(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd);let{withFileTypes:n=!0}=r;return t.canReaddir()?n?t.readdirSync():t.readdirSync().map(a=>a.name):[]}async lstat(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstat()}lstatSync(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstatSync()}async readlink(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t.withFileTypes,t=this.cwd);let n=await t.readlink();return r?n:n?.fullpath()}readlinkSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t.withFileTypes,t=this.cwd);let n=t.readlinkSync();return r?n:n?.fullpath()}async realpath(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t.withFileTypes,t=this.cwd);let n=await t.realpath();return r?n:n?.fullpath()}realpathSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t.withFileTypes,t=this.cwd);let n=t.realpathSync();return r?n:n?.fullpath()}async walk(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set,I=(b,E)=>{f.add(b),b.readdirCB((N,B)=>{if(N)return E(N);let F=B.length;if(!F)return E();let Q=()=>{--F===0&&E()};for(let J of B)(!o||o(J))&&A.push(n?J:J.fullpath()),a&&J.isSymbolicLink()?J.realpath().then(ae=>ae?.isUnknown()?ae.lstat():ae).then(ae=>ae?.shouldWalk(f,l)?I(ae,Q):Q()):J.shouldWalk(f,l)?I(J,Q):Q()},!0)},C=t;return new Promise((b,E)=>{I(C,N=>{if(N)return E(N);b(A)})})}walkSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set([t]);for(let I of f){let C=I.readdirSync();for(let b of C){(!o||o(b))&&A.push(n?b:b.fullpath());let E=b;if(b.isSymbolicLink()){if(!(a&&(E=b.realpathSync())))continue;E.isUnknown()&&E.lstatSync()}E.shouldWalk(f,l)&&f.add(E)}}return A}[Symbol.asyncIterator](){return this.iterate()}iterate(t=this.cwd,r={}){return typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd),this.stream(t,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r;(!o||o(t))&&(yield n?t:t.fullpath());let A=new Set([t]);for(let f of A){let I=f.readdirSync();for(let C of I){(!o||o(C))&&(yield n?C:C.fullpath());let b=C;if(C.isSymbolicLink()){if(!(a&&(b=C.realpathSync())))continue;b.isUnknown()&&b.lstatSync()}b.shouldWalk(A,l)&&A.add(b)}}}stream(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new _Cs.Minipass({objectMode:!0});(!o||o(t))&&A.write(n?t:t.fullpath());let f=new Set,I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=(Q,J,ae=!1)=>{if(Q)return A.emit("error",Q);if(a&&!ae){let ne=[];for(let ce of J)ce.isSymbolicLink()&&ne.push(ce.realpath().then(fe=>fe?.isUnknown()?fe.lstat():fe));if(ne.length){Promise.all(ne).then(()=>B(null,J,!0));return}}for(let ne of J)ne&&(!o||o(ne))&&(A.write(n?ne:ne.fullpath())||(E=!0));C--;for(let ne of J){let ce=ne.realpathCached()||ne;ce.shouldWalk(f,l)&&I.push(ce)}E&&!A.flowing?A.once("drain",b):F||b()},F=!0;N.readdirCB(B,!0),F=!1}};return b(),A}streamSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof _x||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new _Cs.Minipass({objectMode:!0}),f=new Set;(!o||o(t))&&A.write(n?t:t.fullpath());let I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=N.readdirSync();for(let F of B)(!o||o(F))&&(A.write(n?F:F.fullpath())||(E=!0));C--;for(let F of B){let Q=F;if(F.isSymbolicLink()){if(!(a&&(Q=F.realpathSync())))continue;Q.isUnknown()&&Q.lstatSync()}Q.shouldWalk(f,l)&&I.push(Q)}}E&&!A.flowing&&A.once("drain",b)};return b(),A}chdir(t=this.cwd){let r=this.cwd;this.cwd=typeof t=="string"?this.cwd.resolve(t):t,this.cwd[xCs](r)}};$0.PathScurryBase=xze;var Gze=class extends xze{sep="\\";constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,pLt.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let a=this.cwd;a;a=a.parent)a.nocase=this.nocase}parseRootPath(t){return pLt.win32.parse(t).root.toUpperCase()}newRoot(t){return new Dze(this.rootPath,Uj,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}};$0.PathScurryWin32=Gze;var Fze=class extends xze{sep="/";constructor(t=process.cwd(),r={}){let{nocase:n=!1}=r;super(t,pLt.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(t){return"/"}newRoot(t){return new kze(this.rootPath,Uj,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}};$0.PathScurryPosix=Fze;var ILt=class extends Fze{constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,{...r,nocase:n})}};$0.PathScurryDarwin=ILt;$0.Path=process.platform==="win32"?Dze:kze;$0.PathScurry=process.platform==="win32"?Gze:process.platform==="darwin"?ILt:Fze});var sjr=H(hLt=>{"use strict";Object.defineProperty(hLt,"__esModule",{value:!0});hLt.Pattern=void 0;var dwl=oge(),pwl=e=>e.length>=1,fwl=e=>e.length>=1,ijr=class e{#e;#t;#n;length;#r;#i;#s;#o;#g;#l;#u=!0;constructor(t,r,n,a){if(!pwl(t))throw new TypeError("empty pattern list");if(!fwl(r))throw new TypeError("empty glob list");if(r.length!==t.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=t.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=t,this.#t=r,this.#n=n,this.#r=a,this.#n===0){if(this.isUNC()){let[o,l,A,f,...I]=this.#e,[C,b,E,N,...B]=this.#t;I[0]===""&&(I.shift(),B.shift());let F=[o,l,A,f,""].join("/"),Q=[C,b,E,N,""].join("/");this.#e=[F,...I],this.#t=[Q,...B],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[o,...l]=this.#e,[A,...f]=this.#t;l[0]===""&&(l.shift(),f.shift());let I=o+"/",C=A+"/";this.#e=[I,...l],this.#t=[C,...f],this.length=this.#e.length}}}pattern(){return this.#e[this.#n]}isString(){return typeof this.#e[this.#n]=="string"}isGlobstar(){return this.#e[this.#n]===dwl.GLOBSTAR}isRegExp(){return this.#e[this.#n]instanceof RegExp}globString(){return this.#s=this.#s||(this.#n===0?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#i!==void 0?this.#i:this.hasMore()?(this.#i=new e(this.#e,this.#t,this.#n+1,this.#r),this.#i.#l=this.#l,this.#i.#g=this.#g,this.#i.#o=this.#o,this.#i):this.#i=null}isUNC(){let t=this.#e;return this.#g!==void 0?this.#g:this.#g=this.#r==="win32"&&this.#n===0&&t[0]===""&&t[1]===""&&typeof t[2]=="string"&&!!t[2]&&typeof t[3]=="string"&&!!t[3]}isDrive(){let t=this.#e;return this.#o!==void 0?this.#o:this.#o=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0])}isAbsolute(){let t=this.#e;return this.#l!==void 0?this.#l:this.#l=t[0]===""&&t.length>1||this.isDrive()||this.isUNC()}root(){let t=this.#e[0];return typeof t=="string"&&this.isAbsolute()&&this.#n===0?t:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#u)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#u?!1:(this.#u=!1,!0)}};hLt.Pattern=ijr});var ajr=H(mLt=>{"use strict";Object.defineProperty(mLt,"__esModule",{value:!0});mLt.Ignore=void 0;var FCs=oge(),Iwl=sjr(),hwl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",ojr=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(t,{nobrace:r,nocase:n,noext:a,noglobstar:o,platform:l=hwl}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=l,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:a,noglobstar:o,optimizationLevel:2,platform:l,nocomment:!0,nonegate:!0};for(let A of t)this.add(A)}add(t){let r=new FCs.Minimatch(t,this.mmopts);for(let n=0;n{"use strict";Object.defineProperty(Kj,"__esModule",{value:!0});Kj.Processor=Kj.SubWalks=Kj.MatchRecord=Kj.HasWalkedCache=void 0;var ZCs=oge(),CLt=class e{store;constructor(t=new Map){this.store=t}copy(){return new e(new Map(this.store))}hasWalked(t,r){return this.store.get(t.fullpath())?.has(r.globString())}storeWalked(t,r){let n=t.fullpath(),a=this.store.get(n);a?a.add(r.globString()):this.store.set(n,new Set([r.globString()]))}};Kj.HasWalkedCache=CLt;var _Lt=class{store=new Map;add(t,r,n){let a=(r?2:0)|(n?1:0),o=this.store.get(t);this.store.set(t,o===void 0?a:a&o)}entries(){return[...this.store.entries()].map(([t,r])=>[t,!!(r&2),!!(r&1)])}};Kj.MatchRecord=_Lt;var yLt=class{store=new Map;add(t,r){if(!t.canReaddir())return;let n=this.store.get(t);n?n.find(a=>a.globString()===r.globString())||n.push(r):this.store.set(t,[r])}get(t){let r=this.store.get(t);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(t=>[t,this.store.get(t)])}keys(){return[...this.store.keys()].filter(t=>t.canReaddir())}};Kj.SubWalks=yLt;var cjr=class e{hasWalkedCache;matches=new _Lt;subwalks=new yLt;patterns;follow;dot;opts;constructor(t,r){this.opts=t,this.follow=!!t.follow,this.dot=!!t.dot,this.hasWalkedCache=r?r.copy():new CLt}processPatterns(t,r){this.patterns=r;let n=r.map(a=>[t,a]);for(let[a,o]of n){this.hasWalkedCache.storeWalked(a,o);let l=o.root(),A=o.isAbsolute()&&this.opts.absolute!==!1;if(l){a=a.resolve(l==="/"&&this.opts.root!==void 0?this.opts.root:l);let b=o.rest();if(b)o=b;else{this.matches.add(a,!0,!1);continue}}if(a.isENOENT())continue;let f,I,C=!1;for(;typeof(f=o.pattern())=="string"&&(I=o.rest());)a=a.resolve(f),o=I,C=!0;if(f=o.pattern(),I=o.rest(),C){if(this.hasWalkedCache.hasWalked(a,o))continue;this.hasWalkedCache.storeWalked(a,o)}if(typeof f=="string"){let b=f===".."||f===""||f===".";this.matches.add(a.resolve(f),A,b);continue}else if(f===ZCs.GLOBSTAR){(!a.isSymbolicLink()||this.follow||o.checkFollowGlobstar())&&this.subwalks.add(a,o);let b=I?.pattern(),E=I?.rest();if(!I||(b===""||b===".")&&!E)this.matches.add(a,A,b===""||b===".");else if(b===".."){let N=a.parent||a;E?this.hasWalkedCache.hasWalked(N,E)||this.subwalks.add(N,E):this.matches.add(N,A,!0)}}else f instanceof RegExp&&this.subwalks.add(a,o)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new e(this.opts,this.hasWalkedCache)}filterEntries(t,r){let n=this.subwalks.get(t),a=this.child();for(let o of r)for(let l of n){let A=l.isAbsolute(),f=l.pattern(),I=l.rest();f===ZCs.GLOBSTAR?a.testGlobstar(o,l,I,A):f instanceof RegExp?a.testRegExp(o,f,I,A):a.testString(o,f,I,A)}return a}testGlobstar(t,r,n,a){if((this.dot||!t.name.startsWith("."))&&(r.hasMore()||this.matches.add(t,a,!1),t.canReaddir()&&(this.follow||!t.isSymbolicLink()?this.subwalks.add(t,r):t.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(t,n):r.markFollowGlobstar()&&this.subwalks.add(t,r)))),n){let o=n.pattern();if(typeof o=="string"&&o!==".."&&o!==""&&o!==".")this.testString(t,o,n.rest(),a);else if(o===".."){let l=t.parent||t;this.subwalks.add(l,n)}else o instanceof RegExp&&this.testRegExp(t,o,n.rest(),a)}}testRegExp(t,r,n,a){r.test(t.name)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}testString(t,r,n,a){t.isNamed(r)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}};Kj.Processor=cjr});var OCs=H(age=>{"use strict";Object.defineProperty(age,"__esModule",{value:!0});age.GlobStream=age.GlobWalker=age.GlobUtil=void 0;var mwl=cF(),VCs=ajr(),WCs=LCs(),Cwl=(e,t)=>typeof e=="string"?new VCs.Ignore([e],t):Array.isArray(e)?new VCs.Ignore(e,t):e,Zze=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#n;signal;maxDepth;includeChildMatches;constructor(t,r,n){if(this.patterns=t,this.path=r,this.opts=n,this.#n=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#t=Cwl(n.ignore??[],n),!this.includeChildMatches&&typeof this.#t.add!="function")){let a="cannot ignore child matches, ignore lacks add() method.";throw new Error(a)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(t){return this.seen.has(t)||!!this.#t?.ignored?.(t)}#i(t){return!!this.#t?.childrenIgnored?.(t)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let t;for(;!this.paused&&(t=this.#e.shift());)t()}onResume(t){this.signal?.aborted||(this.paused?this.#e.push(t):t())}async matchCheck(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||await t.realpath(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?await t.lstat():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=await o.realpath();l&&(l.isUnknown()||this.opts.stat)&&await l.lstat()}return this.matchCheckTest(o,r)}matchCheckTest(t,r){return t&&(this.maxDepth===1/0||t.depth()<=this.maxDepth)&&(!r||t.canReaddir())&&(!this.opts.nodir||!t.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!t.isSymbolicLink()||!t.realpathCached()?.isDirectory())&&!this.#r(t)?t:void 0}matchCheckSync(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||t.realpathSync(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?t.lstatSync():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=o.realpathSync();l&&(l?.isUnknown()||this.opts.stat)&&l.lstatSync()}return this.matchCheckTest(o,r)}matchFinish(t,r){if(this.#r(t))return;if(!this.includeChildMatches&&this.#t?.add){let o=`${t.relativePosix()}/**`;this.#t.add(o)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(t);let a=this.opts.mark&&t.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(t);else if(n){let o=this.opts.posix?t.fullpathPosix():t.fullpath();this.matchEmit(o+a)}else{let o=this.opts.posix?t.relativePosix():t.relative(),l=this.opts.dotRelative&&!o.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(o?l+o+a:"."+a)}}async match(t,r,n){let a=await this.matchCheck(t,n);a&&this.matchFinish(a,r)}matchSync(t,r,n){let a=this.matchCheckSync(t,n);a&&this.matchFinish(a,r)}walkCB(t,r,n){this.signal?.aborted&&n(),this.walkCB2(t,r,new WCs.Processor(this.opts),n)}walkCB2(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirCached();A.calledReaddir()?this.walkCB3(A,f,n,l):A.readdirCB((I,C)=>this.walkCB3(A,C,n,l),!0)}l()}walkCB3(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let[A,f]of n.subwalks.entries())o++,this.walkCB2(A,f,n.child(),l);l()}walkCBSync(t,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(t,r,new WCs.Processor(this.opts),n)}walkCB2Sync(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2Sync(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirSync();this.walkCB3Sync(A,f,n,l)}l()}walkCB3Sync(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let[A,f]of n.subwalks.entries())o++,this.walkCB2Sync(A,f,n.child(),l);l()}};age.GlobUtil=Zze;var ljr=class extends Zze{matches=new Set;constructor(t,r,n){super(t,r,n)}matchEmit(t){this.matches.add(t)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((t,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):t(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}};age.GlobWalker=ljr;var ujr=class extends Zze{results;constructor(t,r,n){super(t,r,n),this.results=new mwl.Minipass({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(t){this.results.write(t),this.results.flowing||this.pause()}stream(){let t=this.path;return t.isUnknown()?t.lstat().then(()=>{this.walkCB(t,this.patterns,()=>this.results.end())}):this.walkCB(t,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};age.GlobStream=ujr});var Ajr=H(SLt=>{"use strict";Object.defineProperty(SLt,"__esModule",{value:!0});SLt.Glob=void 0;var _wl=oge(),ywl=Et("node:url"),bLt=GCs(),bwl=sjr(),ELt=OCs(),Ewl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",gjr=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(t,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,ywl.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof t=="string"&&(t=[t]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(t=t.map(f=>f.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");t=t.map(f=>f.includes("/")?f:`./**/${f}`)}if(this.pattern=t,this.platform=r.platform||Ewl,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let f=r.platform==="win32"?bLt.PathScurryWin32:r.platform==="darwin"?bLt.PathScurryDarwin:r.platform?bLt.PathScurryPosix:bLt.PathScurry;this.scurry=new f(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",a={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},o=this.pattern.map(f=>new _wl.Minimatch(f,a)),[l,A]=o.reduce((f,I)=>(f[0].push(...I.set),f[1].push(...I.globParts),f),[[],[]]);this.patterns=l.map((f,I)=>{let C=A[I];if(!C)throw new Error("invalid pattern object");return new bwl.Pattern(f,C,0,this.platform)})}async walk(){return[...await new ELt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new ELt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new ELt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new ELt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};SLt.Glob=gjr});var djr=H(vLt=>{"use strict";Object.defineProperty(vLt,"__esModule",{value:!0});vLt.hasMagic=void 0;var Swl=oge(),vwl=(e,t={})=>{Array.isArray(e)||(e=[e]);for(let r of e)if(new Swl.Minimatch(r,t).hasMagic())return!0;return!1};vLt.hasMagic=vwl});var YCs=H(AC=>{"use strict";Object.defineProperty(AC,"__esModule",{value:!0});AC.glob=AC.sync=AC.iterate=AC.iterateSync=AC.stream=AC.streamSync=AC.Ignore=AC.hasMagic=AC.Glob=AC.unescape=AC.escape=void 0;AC.globStreamSync=Lze;AC.globStream=pjr;AC.globSync=fjr;AC.globIterateSync=Vze;AC.globIterate=Ijr;var PCs=oge(),rye=Ajr(),Bwl=djr(),HCs=oge();Object.defineProperty(AC,"escape",{enumerable:!0,get:function(){return HCs.escape}});Object.defineProperty(AC,"unescape",{enumerable:!0,get:function(){return HCs.unescape}});var wwl=Ajr();Object.defineProperty(AC,"Glob",{enumerable:!0,get:function(){return wwl.Glob}});var Twl=djr();Object.defineProperty(AC,"hasMagic",{enumerable:!0,get:function(){return Twl.hasMagic}});var Rwl=ajr();Object.defineProperty(AC,"Ignore",{enumerable:!0,get:function(){return Rwl.Ignore}});function Lze(e,t={}){return new rye.Glob(e,t).streamSync()}function pjr(e,t={}){return new rye.Glob(e,t).stream()}function fjr(e,t={}){return new rye.Glob(e,t).walkSync()}async function MCs(e,t={}){return new rye.Glob(e,t).walk()}function Vze(e,t={}){return new rye.Glob(e,t).iterateSync()}function Ijr(e,t={}){return new rye.Glob(e,t).iterate()}AC.streamSync=Lze;AC.stream=Object.assign(pjr,{sync:Lze});AC.iterateSync=Vze;AC.iterate=Object.assign(Ijr,{sync:Vze});AC.sync=Object.assign(fjr,{stream:Lze,iterate:Vze});AC.glob=Object.assign(MCs,{glob:MCs,globSync:fjr,sync:AC.sync,globStream:pjr,stream:AC.stream,globStreamSync:Lze,streamSync:AC.streamSync,globIterate:Ijr,iterate:AC.iterate,globIterateSync:Vze,iterateSync:AC.iterateSync,Glob:rye.Glob,hasMagic:Bwl.hasMagic,escape:PCs.escape,unescape:PCs.unescape});AC.glob.glob=AC.glob});var hjr=H((Grg,XCs)=>{"use strict";var{glob:Nwl}=YCs(),QCs=Et("path"),Dwl=e=>e.split(QCs.win32.sep).join(QCs.posix.sep);XCs.exports=(e,t)=>Nwl(Dwl(e),t)});var UCs=H((Frg,JCs)=>{"use strict";var kwl=Et("fs/promises"),xwl=_Fe(),{hasContent:Gwl}=H6r();JCs.exports=Fwl;async function Fwl(e,t){let r=await Gwl(e,t);return r&&r.sri?(await kwl.rm(xwl(e,r.sri),{recursive:!0,force:!0}),!0):!1}});var jCs=H((Zrg,Wze)=>{"use strict";var{rm:Zwl}=Et("fs/promises"),Lwl=hjr(),Vwl=bFe(),mjr=Ize(),Wwl=Et("path"),Owl=UCs();Wze.exports=KCs;Wze.exports.entry=KCs;function KCs(e,t,r){return mjr.clearMemoized(),Vwl.delete(e,t,r)}Wze.exports.content=Pwl;function Pwl(e,t){return mjr.clearMemoized(),Owl(e,t)}Wze.exports.all=Mwl;async function Mwl(e){mjr.clearMemoized();let t=await Lwl(Wwl.join(e,"*(content-*|index-*)"),{silent:!0,nosort:!0});return Promise.all(t.map(r=>Zwl(r,{recursive:!0,force:!0})))}});var qCs=H((Lrg,bjr)=>{"use strict";var{mkdir:Hwl,readFile:Ywl,rm:_jr,stat:yjr,truncate:Qwl,writeFile:Xwl}=Et("fs/promises"),zCs=_Fe(),Jwl=eLt(),Uwl=hjr(),DFe=bFe(),BLt=Et("path"),Cjr=are(),Kwl=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),jwl=e=>({concurrency:20,log:{silly(){}},...e});bjr.exports=zwl;async function zwl(e,t){t=jwl(t),t.log.silly("verify","verifying cache at",e);let r=[qwl,eTl,tTl,nTl,sTl,oTl,$wl],n={};for(let a of r){let o=a.name,l=new Date,A=await a(e,t);A&&Object.keys(A).forEach(I=>{n[I]=A[I]});let f=new Date;n.runTime||(n.runTime={}),n.runTime[o]=f-l}return n.runTime.total=n.endTime-n.startTime,t.log.silly("verify","verification finished for",e,"in",`${n.runTime.total}ms`),n}async function qwl(){return{startTime:new Date}}async function $wl(){return{endTime:new Date}}async function eTl(e,t){return t.log.silly("verify","fixing cache permissions"),await Hwl(e,{recursive:!0}),null}async function tTl(e,t){t.log.silly("verify","garbage collecting content");let{default:r}=await Promise.resolve().then(()=>(PZt(),OZt)),n=DFe.lsStream(e),a=new Set;n.on("data",f=>{if(t.filter&&!t.filter(f))return;let I=Cjr.parse(f.integrity);for(let C in I)a.add(I[C].toString())}),await new Promise((f,I)=>{n.on("end",f).on("error",I)});let o=zCs.contentDir(e),l=await Uwl(BLt.join(o,"**"),{follow:!1,nodir:!0,nosort:!0}),A={verifiedContent:0,reclaimedCount:0,reclaimedSize:0,badContentCount:0,keptSize:0};return await r(l,async f=>{let I=f.split(/[/\\]/),C=I.slice(I.length-3).join(""),b=I[I.length-4],E=Cjr.fromHex(C,b);if(a.has(E.toString())){let N=await rTl(f,E);N.valid?(A.verifiedContent++,A.keptSize+=N.size):(A.reclaimedCount++,A.badContentCount++,A.reclaimedSize+=N.size)}else{A.reclaimedCount++;let N=await yjr(f);await _jr(f,{recursive:!0,force:!0}),A.reclaimedSize+=N.size}return A},{concurrency:t.concurrency}),A}async function rTl(e,t){let r={};try{let{size:n}=await yjr(e);r.size=n,r.valid=!0,await Cjr.checkStream(new Jwl.ReadStream(e),t)}catch(n){if(n.code==="ENOENT")return{size:0,valid:!1};if(n.code!=="EINTEGRITY")throw n;await _jr(e,{recursive:!0,force:!0}),r.valid=!1}return r}async function nTl(e,t){t.log.silly("verify","rebuilding index");let{default:r}=await Promise.resolve().then(()=>(PZt(),OZt)),n=await DFe.ls(e),a={missingContent:0,rejectedEntries:0,totalEntries:0},o={};for(let l in n)if(Kwl(n,l)){let A=DFe.hashKey(l),f=n[l],I=t.filter&&!t.filter(f);I&&a.rejectedEntries++,o[A]&&!I?o[A].push(f):o[A]&&I||(I?(o[A]=[],o[A]._path=DFe.bucketPath(e,l)):(o[A]=[f],o[A]._path=DFe.bucketPath(e,l)))}return await r(Object.keys(o),l=>iTl(e,o[l],a,t),{concurrency:t.concurrency}),a}async function iTl(e,t,r){await Qwl(t._path);for(let n of t){let a=zCs(e,n.integrity);try{await yjr(a),await DFe.insert(e,n.key,n.integrity,{metadata:n.metadata,size:n.size,time:n.time}),r.totalEntries++}catch(o){if(o.code==="ENOENT")r.rejectedEntries++,r.missingContent++;else throw o}}}function sTl(e,t){return t.log.silly("verify","cleaning tmp directory"),_jr(BLt.join(e,"tmp"),{recursive:!0,force:!0})}async function oTl(e,t){let r=BLt.join(e,"_lastverified");return t.log.silly("verify","writing verifile to "+r),Xwl(r,`${Date.now()}`)}bjr.exports.lastRun=aTl;async function aTl(e){let t=await Ywl(BLt.join(e,"_lastverified"),{encoding:"utf8"});return new Date(+t)}});var e_s=H((Vrg,Sjr)=>{"use strict";var{withTempDir:cTl}=WZt(),$Cs=Et("fs/promises"),Ejr=Et("path");Sjr.exports.mkdir=lTl;async function lTl(e,t={}){let{tmpPrefix:r}=t,n=Ejr.join(e,"tmp");await $Cs.mkdir(n,{recursive:!0,owner:"inherit"});let a=`${n}${Ejr.sep}${r||""}`;return $Cs.mkdtemp(a,{owner:"inherit"})}Sjr.exports.withTmp=uTl;function uTl(e,t,r){return r||(r=t,t={}),cTl(Ejr.join(e,"tmp"),r,t)}});var i_s=H((Wrg,sE)=>{"use strict";var cge=Wms(),t_s=Kms(),vjr=jCs(),r_s=qCs(),{clearMemoized:gTl}=Ize(),n_s=e_s(),wLt=bFe();sE.exports.index={};sE.exports.index.compact=wLt.compact;sE.exports.index.insert=wLt.insert;sE.exports.ls=wLt.ls;sE.exports.ls.stream=wLt.lsStream;sE.exports.get=cge;sE.exports.get.byDigest=cge.byDigest;sE.exports.get.stream=cge.stream;sE.exports.get.stream.byDigest=cge.stream.byDigest;sE.exports.get.copy=cge.copy;sE.exports.get.copy.byDigest=cge.copy.byDigest;sE.exports.get.info=cge.info;sE.exports.get.hasContent=cge.hasContent;sE.exports.put=t_s;sE.exports.put.stream=t_s.stream;sE.exports.rm=vjr.entry;sE.exports.rm.all=vjr.all;sE.exports.rm.entry=sE.exports.rm;sE.exports.rm.content=vjr.content;sE.exports.clearMemoized=gTl;sE.exports.tmp={};sE.exports.tmp.mkdir=n_s.mkdir;sE.exports.tmp.withTmp=n_s.withTmp;sE.exports.verify=r_s;sE.exports.verify.lastRun=r_s.lastRun});var wjr=H((Org,s_s)=>{"use strict";var ATl=CFe(),Bjr=class extends ATl{#e=[];#t=new Map;constructor(t,...r){super(),this.#e=t.events,r.length&&this.push(...r)}on(t,r){return this.#e.includes(t)&&this.#t.has(t)?r(...this.#t.get(t)):super.on(t,r)}emit(t,...r){return this.#e.includes(t)&&this.#t.set(t,r),super.emit(t,...r)}};s_s.exports=Bjr});var a_s=H((Prg,o_s)=>{var{URL:dTl,format:pTl}=Et("url"),fTl={auth:!1,fragment:!1,search:!0,unicode:!1},ITl=e=>{let t=new dTl(e.url);return`make-fetch-happen:request-cache:${pTl(t,fTl)}`};o_s.exports=ITl});var u_s=H((Mrg,l_s)=>{"use strict";function c_s(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function hTl(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=void 0),t!=null&&(r.code=t);try{return c_s(e,r)}catch{r.message=e.message,r.stack=e.stack;let a=function(){};return a.prototype=Object.create(Object.getPrototypeOf(e)),c_s(new a,r)}}l_s.exports=hTl});var A_s=H((Hrg,g_s)=>{function tY(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}g_s.exports=tY;tY.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};tY.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};tY.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift();else return!1;var n=this,a=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r);return this._options.unref&&a.unref(),!0};tY.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};tY.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};tY.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};tY.prototype.start=tY.prototype.try;tY.prototype.errors=function(){return this._errors};tY.prototype.attempts=function(){return this._attempts};tY.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=a,r=l)}return t}});var d_s=H(nye=>{var mTl=A_s();nye.operation=function(e){var t=nye.timeouts(e);return new mTl(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};nye.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],a=0;a{p_s.exports=d_s()});var Tjr=H((Xrg,h_s)=>{"use strict";var CTl=u_s(),_Tl=f_s(),yTl=Object.prototype.hasOwnProperty;function I_s(e){return e&&e.code==="EPROMISERETRY"&&yTl.call(e,"retried")}function bTl(e,t){var r,n;return typeof e=="object"&&typeof t=="function"&&(r=t,t=e,e=r),n=_Tl.operation(t),new Promise(function(a,o){n.attempt(function(l){Promise.resolve().then(function(){return e(function(A){throw I_s(A)&&(A=A.retried),CTl(new Error("Retrying"),"EPROMISERETRY",{retried:A})},l)}).then(a,function(A){I_s(A)&&(A=A.retried,n.retry(A||new Error))||o(A)})})})}h_s.exports=bTl});var Rjr=H((Jrg,m_s)=>{var ETl=Symbol("proc-log.meta");m_s.exports={META:ETl,output:{LEVELS:["standard","error","buffer","flush"],KEYS:{standard:"standard",error:"error",buffer:"buffer",flush:"flush"},standard:function(...e){return process.emit("output","standard",...e)},error:function(...e){return process.emit("output","error",...e)},buffer:function(...e){return process.emit("output","buffer",...e)},flush:function(...e){return process.emit("output","flush",...e)}},log:{LEVELS:["notice","error","warn","info","verbose","http","silly","timing","pause","resume"],KEYS:{notice:"notice",error:"error",warn:"warn",info:"info",verbose:"verbose",http:"http",silly:"silly",timing:"timing",pause:"pause",resume:"resume"},error:function(...e){return process.emit("log","error",...e)},notice:function(...e){return process.emit("log","notice",...e)},warn:function(...e){return process.emit("log","warn",...e)},info:function(...e){return process.emit("log","info",...e)},verbose:function(...e){return process.emit("log","verbose",...e)},http:function(...e){return process.emit("log","http",...e)},silly:function(...e){return process.emit("log","silly",...e)},timing:function(...e){return process.emit("log","timing",...e)},pause:function(){return process.emit("log","pause")},resume:function(){return process.emit("log","resume")}},time:{LEVELS:["start","end"],KEYS:{start:"start",end:"end"},start:function(e,t){process.emit("time","start",e);function r(){return process.emit("time","end",e)}if(typeof t=="function"){let n=t();return n&&n.finally?n.finally(r):(r(),n)}return r},end:function(e){return process.emit("time","end",e)}},input:{LEVELS:["start","end","read"],KEYS:{start:"start",end:"end",read:"read"},start:function(e){process.emit("input","start");function t(){return process.emit("input","end")}if(typeof e=="function"){let r=e();return r&&r.finally?r.finally(t):(t(),r)}return t},end:function(){return process.emit("input","end")},read:function(...e){let t,r,n=new Promise((a,o)=>{t=a,r=o});return process.emit("input","read",t,r,...e),n}}}});var Njr=H((Urg,__s)=>{"use strict";var{LRUCache:STl}=VIe(),C_s=Et("dns"),TLt=new STl({max:50}),vTl=({family:e=0,hints:t=C_s.ADDRCONFIG,all:r=!1,verbatim:n=void 0,ttl:a=5*60*1e3,lookup:o=C_s.lookup})=>({hints:t,lookup:(l,...A)=>{let f=A.pop(),I=A[0]??{},C={family:e,hints:t,all:r,verbatim:n,...typeof I=="number"?{family:I}:I},b=JSON.stringify({hostname:l,...C});if(TLt.has(b)){let E=TLt.get(b);return process.nextTick(f,null,...E)}o(l,C,(E,...N)=>E?f(E):(TLt.set(b,N,{ttl:a}),f(null,...N)))}});__s.exports={cache:TLt,getOptions:vTl}});var Djr=H((Krg,b_s)=>{"use strict";var BTl=Njr(),wTl=e=>{let t=parseInt(e.family??"0",10),r=e.keepAlive??!0,n={keepAliveMsecs:r?1e3:void 0,maxSockets:e.maxSockets??15,maxTotalSockets:1/0,maxFreeSockets:r?256:void 0,scheduling:"fifo",...e,family:t,keepAlive:r,timeouts:{idle:e.timeout??0,connection:0,response:0,transfer:0,...e.timeouts},...BTl.getOptions({family:t,...e.dns})};return delete n.timeout,n},y_s=e=>{let t="",r=Object.entries(e).sort((n,a)=>n[0]-a[0]);for(let[n,a]of r)a==null?a="null":a instanceof URL?a=a.toString():typeof a=="object"&&(a=y_s(a)),t+=`${n}:${a}:`;return t},TTl=({secureEndpoint:e,...t})=>y_s({secureEndpoint:!!e,family:t.family,hints:t.hints,localAddress:t.localAddress,strictSsl:e?!!t.rejectUnauthorized:!1,ca:e?t.ca:null,cert:e?t.cert:null,key:e?t.key:null,keepAlive:t.keepAlive,keepAliveMsecs:t.keepAliveMsecs,maxSockets:t.maxSockets,maxTotalSockets:t.maxTotalSockets,maxFreeSockets:t.maxFreeSockets,scheduling:t.scheduling,timeouts:t.timeouts,proxy:t.proxy});b_s.exports={normalizeOptions:wTl,cacheOptions:TTl}});var v_s=H(aW=>{"use strict";var RTl=aW&&aW.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),NTl=aW&&aW.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),E_s=aW&&aW.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&RTl(t,e,r);return NTl(t,e),t};Object.defineProperty(aW,"__esModule",{value:!0});aW.req=aW.json=aW.toBuffer=void 0;var DTl=E_s(Et("http")),kTl=E_s(Et("https"));async function S_s(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}aW.toBuffer=S_s;async function xTl(e){let r=(await S_s(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let a=n;throw a.message+=` (input: ${r})`,a}}aW.json=xTl;function GTl(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?kTl:DTl).request(e,t),a=new Promise((o,l)=>{n.once("response",o).once("error",l).end()});return n.then=a.then.bind(a),n}aW.req=GTl});var Oze=H(t3=>{"use strict";var w_s=t3&&t3.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),FTl=t3&&t3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),T_s=t3&&t3.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&w_s(t,e,r);return FTl(t,e),t},ZTl=t3&&t3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&w_s(t,e,r)};Object.defineProperty(t3,"__esModule",{value:!0});t3.Agent=void 0;var LTl=T_s(Et("net")),B_s=T_s(Et("http")),VTl=Et("https");ZTl(v_s(),t3);var jj=Symbol("AgentBaseInternalState"),kjr=class extends B_s.Agent{constructor(t){super(t),this[jj]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new LTl.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],a=n.indexOf(r);a!==-1&&(n.splice(a,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return(typeof t.secureEndpoint=="boolean"?t.secureEndpoint:this.isSecureEndpoint(t))?VTl.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let a={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(a),l=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(t,a)).then(A=>{if(this.decrementSockets(o,l),A instanceof B_s.Agent)return A.addRequest(t,a);this[jj].currentSocket=A,super.createSocket(t,r,n)},A=>{this.decrementSockets(o,l),n(A)})}createConnection(){let t=this[jj].currentSocket;if(this[jj].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[jj].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[jj]&&(this[jj].defaultPort=t)}get protocol(){return this[jj].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[jj]&&(this[jj].protocol=t)}};t3.Agent=kjr});var D_s=H(rY=>{"use strict";var WTl=rY&&rY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OTl=rY&&rY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),N_s=rY&&rY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&WTl(t,e,r);return OTl(t,e),t},PTl=rY&&rY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(rY,"__esModule",{value:!0});rY.HttpProxyAgent=void 0;var MTl=N_s(Et("net")),HTl=N_s(Et("tls")),YTl=PTl(fT()),QTl=Et("events"),XTl=Oze(),R_s=Et("url"),kFe=(0,YTl.default)("http-proxy-agent"),RLt=class extends XTl.Agent{constructor(t,r){super(r),this.proxy=typeof t=="string"?new R_s.URL(t):t,this.proxyHeaders=r?.headers??{},kFe("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?JTl(r,"headers"):null,host:n,port:a}}addRequest(t,r){t._header=null,this.setRequestProps(t,r),super.addRequest(t,r)}setRequestProps(t,r){let{proxy:n}=this,a=r.secureEndpoint?"https:":"http:",o=t.getHeader("host")||"localhost",l=`${a}//${o}`,A=new R_s.URL(t.path,l);r.port!==80&&(A.port=String(r.port)),t.path=String(A);let f=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let I=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;f["Proxy-Authorization"]=`Basic ${Buffer.from(I).toString("base64")}`}f["Proxy-Connection"]||(f["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let I of Object.keys(f)){let C=f[I];C&&t.setHeader(I,C)}}async connect(t,r){t._header=null,t.path.includes("://")||this.setRequestProps(t,r);let n,a;kFe("Regenerating stored HTTP header string for request"),t._implicitHeader(),t.outputData&&t.outputData.length>0&&(kFe("Patching connection write() output buffer with updated header"),n=t.outputData[0].data,a=n.indexOf(`\r +>>> no match, partial?`,t,E,r,N),E===f))}let F;if(typeof C=="string"?(F=b===C,this.debug("string match",C,b,F)):(F=C.test(b),this.debug("pattern match",C,b,F)),!F)return!1}if(l===f&&A===I)return!0;if(l===f)return n;if(A===I)return l===f-1&&t[l]==="";throw new Error("wtf?")}braceExpand(){return(0,ud.braceExpand)(this.pattern,this.options)}parse(t){(0,lLt.assertValidPattern)(t);let r=this.options;if(t==="**")return ud.GLOBSTAR;if(t==="")return"";let n,a=null;(n=t.match(Gwl))?a=r.dot?Zwl:Fwl:(n=t.match(Swl))?a=(r.nocase?r.dot?Twl:wwl:r.dot?Bwl:vwl)(n[1]):(n=t.match(Lwl))?a=(r.nocase?r.dot?Wwl:Vwl:r.dot?Owl:Pwl)(n):(n=t.match(Rwl))?a=r.dot?Dwl:Nwl:(n=t.match(kwl))&&(a=xwl);let o=hCs.AST.fromGlob(t,this.options).toMMPattern();return a&&typeof o=="object"&&Reflect.defineProperty(o,"test",{value:a}),o}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let t=this.set;if(!t.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?Hwl:r.dot?Ywl:Qwl,a=new Set(r.nocase?["i"]:[]),o=t.map(f=>{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?zwl(C):C===ud.GLOBSTAR?ud.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==ud.GLOBSTAR||N===ud.GLOBSTAR||(N===void 0?E!==void 0&&E!==ud.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==ud.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=ud.GLOBSTAR))}),I.filter(C=>C!==ud.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var tTl=ey&&ey.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rTl=ey&&ey.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nTl=ey&&ey.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&tTl(t,e,r);return rTl(t,e),t};Object.defineProperty(ey,"__esModule",{value:!0});ey.PathScurry=ey.Path=ey.PathScurryDarwin=ey.PathScurryPosix=ey.PathScurryWin32=ey.PathScurryBase=ey.PathPosix=ey.PathWin32=ey.PathBase=ey.ChildrenCache=ey.ResolveCache=void 0;var BCs=WIe(),pLt=Et("node:path"),iTl=Et("node:url"),vze=Et("fs"),sTl=nTl(Et("node:fs")),oTl=vze.realpathSync.native,uLt=Et("node:fs/promises"),yCs=lF(),Bze={lstatSync:vze.lstatSync,readdir:vze.readdir,readdirSync:vze.readdirSync,readlinkSync:vze.readlinkSync,realpathSync:oTl,promises:{lstat:uLt.lstat,readdir:uLt.readdir,readlink:uLt.readlink,realpath:uLt.realpath}},wCs=e=>!e||e===Bze||e===sTl?Bze:{...Bze,...e,promises:{...Bze.promises,...e.promises||{}}},TCs=/^\\\\\?\\([a-z]:)\\?$/i,aTl=e=>e.replace(/\//g,"\\").replace(TCs,"$1\\"),cTl=/[\\\/]/,tY=0,RCs=1,NCs=2,Kj=4,DCs=6,kCs=8,tye=10,xCs=12,eY=15,Sze=~eY,cjr=16,bCs=32,wze=64,IJ=128,gLt=256,dLt=512,ECs=wze|IJ|dLt,lTl=1023,ljr=e=>e.isFile()?kCs:e.isDirectory()?Kj:e.isSymbolicLink()?tye:e.isCharacterDevice()?NCs:e.isBlockDevice()?DCs:e.isSocket()?xCs:e.isFIFO()?RCs:tY,SCs=new Map,Tze=e=>{let t=SCs.get(e);if(t)return t;let r=e.normalize("NFKD");return SCs.set(e,r),r},vCs=new Map,ALt=e=>{let t=vCs.get(e);if(t)return t;let r=Tze(e.toLowerCase());return vCs.set(e,r),r},Rze=class extends BCs.LRUCache{constructor(){super({max:256})}};ey.ResolveCache=Rze;var fLt=class extends BCs.LRUCache{constructor(t=16*1024){super({maxSize:t,sizeCalculation:r=>r.length+1})}};ey.ChildrenCache=fLt;var GCs=Symbol("PathScurry setAsCwd"),yx=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#i;get uid(){return this.#i}#s;get gid(){return this.#s}#o;get rdev(){return this.#o}#g;get blksize(){return this.#g}#l;get ino(){return this.#l}#u;get size(){return this.#u}#a;get blocks(){return this.#a}#m;get atimeMs(){return this.#m}#f;get mtimeMs(){return this.#f}#I;get ctimeMs(){return this.#I}#d;get birthtimeMs(){return this.#d}#b;get atime(){return this.#b}#h;get mtime(){return this.#h}#S;get ctime(){return this.#S}#v;get birthtime(){return this.#v}#C;#E;#_;#p;#B;#w;#c;#k;#y;#N;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(t,r=tY,n,a,o,l,A){this.name=t,this.#C=o?ALt(t):Tze(t),this.#c=r&lTl,this.nocase=o,this.roots=a,this.root=n||this,this.#k=l,this.#_=A.fullpath,this.#B=A.relative,this.#w=A.relativePosix,this.parent=A.parent,this.parent?this.#e=this.parent.#e:this.#e=wCs(A.fs)}depth(){return this.#E!==void 0?this.#E:this.parent?this.#E=this.parent.depth()+1:this.#E=0}childrenCache(){return this.#k}resolve(t){if(!t)return this;let r=this.getRootString(t),a=t.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#x(a):this.#x(a)}#x(t){let r=this;for(let n of t)r=r.child(n);return r}children(){let t=this.#k.get(this);if(t)return t;let r=Object.assign([],{provisional:0});return this.#k.set(this,r),this.#c&=~cjr,r}child(t,r){if(t===""||t===".")return this;if(t==="..")return this.parent||this;let n=this.children(),a=this.nocase?ALt(t):Tze(t);for(let f of n)if(f.#C===a)return f;let o=this.parent?this.sep:"",l=this.#_?this.#_+o+t:void 0,A=this.newChild(t,tY,{...r,parent:this,fullpath:l});return this.canReaddir()||(A.#c|=IJ),n.push(A),A}relative(){if(this.isCWD)return"";if(this.#B!==void 0)return this.#B;let t=this.name,r=this.parent;if(!r)return this.#B=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+t}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#w!==void 0)return this.#w;let t=this.name,r=this.parent;if(!r)return this.#w=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+t}fullpath(){if(this.#_!==void 0)return this.#_;let t=this.name,r=this.parent;if(!r)return this.#_=this.name;let a=r.fullpath()+(r.parent?this.sep:"")+t;return this.#_=a}fullpathPosix(){if(this.#p!==void 0)return this.#p;if(this.sep==="/")return this.#p=this.fullpath();if(!this.parent){let a=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(a)?this.#p=`//?/${a}`:this.#p=a}let t=this.parent,r=t.fullpathPosix(),n=r+(!r||!t.parent?"":"/")+this.name;return this.#p=n}isUnknown(){return(this.#c&eY)===tY}isType(t){return this[`is${t}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#c&eY)===kCs}isDirectory(){return(this.#c&eY)===Kj}isCharacterDevice(){return(this.#c&eY)===NCs}isBlockDevice(){return(this.#c&eY)===DCs}isFIFO(){return(this.#c&eY)===RCs}isSocket(){return(this.#c&eY)===xCs}isSymbolicLink(){return(this.#c&tye)===tye}lstatCached(){return this.#c&bCs?this:void 0}readlinkCached(){return this.#y}realpathCached(){return this.#N}readdirCached(){let t=this.children();return t.slice(0,t.provisional)}canReadlink(){if(this.#y)return!0;if(!this.parent)return!1;let t=this.#c&eY;return!(t!==tY&&t!==tye||this.#c&gLt||this.#c&IJ)}calledReaddir(){return!!(this.#c&cjr)}isENOENT(){return!!(this.#c&IJ)}isNamed(t){return this.nocase?this.#C===ALt(t):this.#C===Tze(t)}async readlink(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}readlinkSync(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}#G(t){this.#c|=cjr;for(let r=t.provisional;rn(null,t))}readdirCB(t,r=!1){if(!this.canReaddir()){r?t(null,[]):queueMicrotask(()=>t(null,[]));return}let n=this.children();if(this.calledReaddir()){let o=n.slice(0,n.provisional);r?t(null,o):queueMicrotask(()=>t(null,o));return}if(this.#H.push(t),this.#Y)return;this.#Y=!0;let a=this.fullpath();this.#e.readdir(a,{withFileTypes:!0},(o,l)=>{if(o)this.#L(o.code),n.provisional=0;else{for(let A of l)this.#W(A,n);this.#G(n)}this.#X(n.slice(0,n.provisional))})}#M;async readdir(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();if(this.#M)await this.#M;else{let n=()=>{};this.#M=new Promise(a=>n=a);try{for(let a of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#W(a,t);this.#G(t)}catch(a){this.#L(a.code),t.provisional=0}this.#M=void 0,n()}return t.slice(0,t.provisional)}readdirSync(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#W(n,t);this.#G(t)}catch(n){this.#L(n.code),t.provisional=0}return t.slice(0,t.provisional)}canReaddir(){if(this.#c&ECs)return!1;let t=eY&this.#c;return t===tY||t===Kj||t===tye}shouldWalk(t,r){return(this.#c&Kj)===Kj&&!(this.#c&ECs)&&!t.has(this)&&(!r||r(this))}async realpath(){if(this.#N)return this.#N;if(!((dLt|gLt|IJ)&this.#c))try{let t=await this.#e.promises.realpath(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}realpathSync(){if(this.#N)return this.#N;if(!((dLt|gLt|IJ)&this.#c))try{let t=this.#e.realpathSync(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}[GCs](t){if(t===this)return;t.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],a=this;for(;a&&a.parent;)r.add(a),a.#B=n.join(this.sep),a.#w=n.join("/"),a=a.parent,n.push("..");for(a=t;a&&a.parent&&!r.has(a);)a.#B=void 0,a.#w=void 0,a=a.parent}};ey.PathBase=yx;var Nze=class e extends yx{sep="\\";splitSep=cTl;constructor(t,r=tY,n,a,o,l,A){super(t,r,n,a,o,l,A)}newChild(t,r=tY,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(t){return pLt.win32.parse(t).root}getRoot(t){if(t=aTl(t.toUpperCase()),t===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(t,r))return this.roots[t]=n;return this.roots[t]=new xze(t,this).root}sameRoot(t,r=this.root.name){return t=t.toUpperCase().replace(/\//g,"\\").replace(TCs,"$1\\"),t===r}};ey.PathWin32=Nze;var Dze=class e extends yx{splitSep="/";sep="/";constructor(t,r=tY,n,a,o,l,A){super(t,r,n,a,o,l,A)}getRootString(t){return t.startsWith("/")?"/":""}getRoot(t){return this.root}newChild(t,r=tY,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}};ey.PathPosix=Dze;var kze=class{root;rootPath;roots;cwd;#e;#t;#n;nocase;#r;constructor(t=process.cwd(),r,n,{nocase:a,childrenCacheSize:o=16*1024,fs:l=Bze}={}){this.#r=wCs(l),(t instanceof URL||t.startsWith("file://"))&&(t=(0,iTl.fileURLToPath)(t));let A=r.resolve(t);this.roots=Object.create(null),this.rootPath=this.parseRootPath(A),this.#e=new Rze,this.#t=new Rze,this.#n=new fLt(o);let f=A.substring(this.rootPath.length).split(n);if(f.length===1&&!f[0]&&f.pop(),a===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=a,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let I=this.root,C=f.length-1,b=r.sep,E=this.rootPath,N=!1;for(let B of f){let F=C--;I=I.child(B,{relative:new Array(F).fill("..").join(b),relativePosix:new Array(F).fill("..").join("/"),fullpath:E+=(N?"":b)+B}),N=!0}this.cwd=I}depth(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.depth()}childrenCache(){return this.#n}resolve(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#e.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpath();return this.#e.set(r,a),a}resolvePosix(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#t.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpathPosix();return this.#t.set(r,a),a}relative(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relative()}relativePosix(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relativePosix()}basename(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.name}dirname(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),(t.parent||t).fullpath()}async readdir(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd);let{withFileTypes:n}=r;if(t.canReaddir()){let a=await t.readdir();return n?a:a.map(o=>o.name)}else return[]}readdirSync(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd);let{withFileTypes:n=!0}=r;return t.canReaddir()?n?t.readdirSync():t.readdirSync().map(a=>a.name):[]}async lstat(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstat()}lstatSync(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstatSync()}async readlink(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t.withFileTypes,t=this.cwd);let n=await t.readlink();return r?n:n?.fullpath()}readlinkSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t.withFileTypes,t=this.cwd);let n=t.readlinkSync();return r?n:n?.fullpath()}async realpath(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t.withFileTypes,t=this.cwd);let n=await t.realpath();return r?n:n?.fullpath()}realpathSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t.withFileTypes,t=this.cwd);let n=t.realpathSync();return r?n:n?.fullpath()}async walk(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set,I=(b,E)=>{f.add(b),b.readdirCB((N,B)=>{if(N)return E(N);let F=B.length;if(!F)return E();let Q=()=>{--F===0&&E()};for(let J of B)(!o||o(J))&&A.push(n?J:J.fullpath()),a&&J.isSymbolicLink()?J.realpath().then(ae=>ae?.isUnknown()?ae.lstat():ae).then(ae=>ae?.shouldWalk(f,l)?I(ae,Q):Q()):J.shouldWalk(f,l)?I(J,Q):Q()},!0)},C=t;return new Promise((b,E)=>{I(C,N=>{if(N)return E(N);b(A)})})}walkSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set([t]);for(let I of f){let C=I.readdirSync();for(let b of C){(!o||o(b))&&A.push(n?b:b.fullpath());let E=b;if(b.isSymbolicLink()){if(!(a&&(E=b.realpathSync())))continue;E.isUnknown()&&E.lstatSync()}E.shouldWalk(f,l)&&f.add(E)}}return A}[Symbol.asyncIterator](){return this.iterate()}iterate(t=this.cwd,r={}){return typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd),this.stream(t,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r;(!o||o(t))&&(yield n?t:t.fullpath());let A=new Set([t]);for(let f of A){let I=f.readdirSync();for(let C of I){(!o||o(C))&&(yield n?C:C.fullpath());let b=C;if(C.isSymbolicLink()){if(!(a&&(b=C.realpathSync())))continue;b.isUnknown()&&b.lstatSync()}b.shouldWalk(A,l)&&A.add(b)}}}stream(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new yCs.Minipass({objectMode:!0});(!o||o(t))&&A.write(n?t:t.fullpath());let f=new Set,I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=(Q,J,ae=!1)=>{if(Q)return A.emit("error",Q);if(a&&!ae){let ne=[];for(let ce of J)ce.isSymbolicLink()&&ne.push(ce.realpath().then(fe=>fe?.isUnknown()?fe.lstat():fe));if(ne.length){Promise.all(ne).then(()=>B(null,J,!0));return}}for(let ne of J)ne&&(!o||o(ne))&&(A.write(n?ne:ne.fullpath())||(E=!0));C--;for(let ne of J){let ce=ne.realpathCached()||ne;ce.shouldWalk(f,l)&&I.push(ce)}E&&!A.flowing?A.once("drain",b):F||b()},F=!0;N.readdirCB(B,!0),F=!1}};return b(),A}streamSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof yx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new yCs.Minipass({objectMode:!0}),f=new Set;(!o||o(t))&&A.write(n?t:t.fullpath());let I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=N.readdirSync();for(let F of B)(!o||o(F))&&(A.write(n?F:F.fullpath())||(E=!0));C--;for(let F of B){let Q=F;if(F.isSymbolicLink()){if(!(a&&(Q=F.realpathSync())))continue;Q.isUnknown()&&Q.lstatSync()}Q.shouldWalk(f,l)&&I.push(Q)}}E&&!A.flowing&&A.once("drain",b)};return b(),A}chdir(t=this.cwd){let r=this.cwd;this.cwd=typeof t=="string"?this.cwd.resolve(t):t,this.cwd[GCs](r)}};ey.PathScurryBase=kze;var xze=class extends kze{sep="\\";constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,pLt.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let a=this.cwd;a;a=a.parent)a.nocase=this.nocase}parseRootPath(t){return pLt.win32.parse(t).root.toUpperCase()}newRoot(t){return new Nze(this.rootPath,Kj,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}};ey.PathScurryWin32=xze;var Gze=class extends kze{sep="/";constructor(t=process.cwd(),r={}){let{nocase:n=!1}=r;super(t,pLt.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(t){return"/"}newRoot(t){return new Dze(this.rootPath,Kj,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}};ey.PathScurryPosix=Gze;var ILt=class extends Gze{constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,{...r,nocase:n})}};ey.PathScurryDarwin=ILt;ey.Path=process.platform==="win32"?Nze:Dze;ey.PathScurry=process.platform==="win32"?xze:process.platform==="darwin"?ILt:Gze});var gjr=H(hLt=>{"use strict";Object.defineProperty(hLt,"__esModule",{value:!0});hLt.Pattern=void 0;var uTl=age(),gTl=e=>e.length>=1,ATl=e=>e.length>=1,ujr=class e{#e;#t;#n;length;#r;#i;#s;#o;#g;#l;#u=!0;constructor(t,r,n,a){if(!gTl(t))throw new TypeError("empty pattern list");if(!ATl(r))throw new TypeError("empty glob list");if(r.length!==t.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=t.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=t,this.#t=r,this.#n=n,this.#r=a,this.#n===0){if(this.isUNC()){let[o,l,A,f,...I]=this.#e,[C,b,E,N,...B]=this.#t;I[0]===""&&(I.shift(),B.shift());let F=[o,l,A,f,""].join("/"),Q=[C,b,E,N,""].join("/");this.#e=[F,...I],this.#t=[Q,...B],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[o,...l]=this.#e,[A,...f]=this.#t;l[0]===""&&(l.shift(),f.shift());let I=o+"/",C=A+"/";this.#e=[I,...l],this.#t=[C,...f],this.length=this.#e.length}}}pattern(){return this.#e[this.#n]}isString(){return typeof this.#e[this.#n]=="string"}isGlobstar(){return this.#e[this.#n]===uTl.GLOBSTAR}isRegExp(){return this.#e[this.#n]instanceof RegExp}globString(){return this.#s=this.#s||(this.#n===0?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#i!==void 0?this.#i:this.hasMore()?(this.#i=new e(this.#e,this.#t,this.#n+1,this.#r),this.#i.#l=this.#l,this.#i.#g=this.#g,this.#i.#o=this.#o,this.#i):this.#i=null}isUNC(){let t=this.#e;return this.#g!==void 0?this.#g:this.#g=this.#r==="win32"&&this.#n===0&&t[0]===""&&t[1]===""&&typeof t[2]=="string"&&!!t[2]&&typeof t[3]=="string"&&!!t[3]}isDrive(){let t=this.#e;return this.#o!==void 0?this.#o:this.#o=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0])}isAbsolute(){let t=this.#e;return this.#l!==void 0?this.#l:this.#l=t[0]===""&&t.length>1||this.isDrive()||this.isUNC()}root(){let t=this.#e[0];return typeof t=="string"&&this.isAbsolute()&&this.#n===0?t:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#u)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#u?!1:(this.#u=!1,!0)}};hLt.Pattern=ujr});var djr=H(mLt=>{"use strict";Object.defineProperty(mLt,"__esModule",{value:!0});mLt.Ignore=void 0;var ZCs=age(),dTl=gjr(),pTl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Ajr=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(t,{nobrace:r,nocase:n,noext:a,noglobstar:o,platform:l=pTl}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=l,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:a,noglobstar:o,optimizationLevel:2,platform:l,nocomment:!0,nonegate:!0};for(let A of t)this.add(A)}add(t){let r=new ZCs.Minimatch(t,this.mmopts);for(let n=0;n{"use strict";Object.defineProperty(jj,"__esModule",{value:!0});jj.Processor=jj.SubWalks=jj.MatchRecord=jj.HasWalkedCache=void 0;var LCs=age(),CLt=class e{store;constructor(t=new Map){this.store=t}copy(){return new e(new Map(this.store))}hasWalked(t,r){return this.store.get(t.fullpath())?.has(r.globString())}storeWalked(t,r){let n=t.fullpath(),a=this.store.get(n);a?a.add(r.globString()):this.store.set(n,new Set([r.globString()]))}};jj.HasWalkedCache=CLt;var _Lt=class{store=new Map;add(t,r,n){let a=(r?2:0)|(n?1:0),o=this.store.get(t);this.store.set(t,o===void 0?a:a&o)}entries(){return[...this.store.entries()].map(([t,r])=>[t,!!(r&2),!!(r&1)])}};jj.MatchRecord=_Lt;var yLt=class{store=new Map;add(t,r){if(!t.canReaddir())return;let n=this.store.get(t);n?n.find(a=>a.globString()===r.globString())||n.push(r):this.store.set(t,[r])}get(t){let r=this.store.get(t);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(t=>[t,this.store.get(t)])}keys(){return[...this.store.keys()].filter(t=>t.canReaddir())}};jj.SubWalks=yLt;var pjr=class e{hasWalkedCache;matches=new _Lt;subwalks=new yLt;patterns;follow;dot;opts;constructor(t,r){this.opts=t,this.follow=!!t.follow,this.dot=!!t.dot,this.hasWalkedCache=r?r.copy():new CLt}processPatterns(t,r){this.patterns=r;let n=r.map(a=>[t,a]);for(let[a,o]of n){this.hasWalkedCache.storeWalked(a,o);let l=o.root(),A=o.isAbsolute()&&this.opts.absolute!==!1;if(l){a=a.resolve(l==="/"&&this.opts.root!==void 0?this.opts.root:l);let b=o.rest();if(b)o=b;else{this.matches.add(a,!0,!1);continue}}if(a.isENOENT())continue;let f,I,C=!1;for(;typeof(f=o.pattern())=="string"&&(I=o.rest());)a=a.resolve(f),o=I,C=!0;if(f=o.pattern(),I=o.rest(),C){if(this.hasWalkedCache.hasWalked(a,o))continue;this.hasWalkedCache.storeWalked(a,o)}if(typeof f=="string"){let b=f===".."||f===""||f===".";this.matches.add(a.resolve(f),A,b);continue}else if(f===LCs.GLOBSTAR){(!a.isSymbolicLink()||this.follow||o.checkFollowGlobstar())&&this.subwalks.add(a,o);let b=I?.pattern(),E=I?.rest();if(!I||(b===""||b===".")&&!E)this.matches.add(a,A,b===""||b===".");else if(b===".."){let N=a.parent||a;E?this.hasWalkedCache.hasWalked(N,E)||this.subwalks.add(N,E):this.matches.add(N,A,!0)}}else f instanceof RegExp&&this.subwalks.add(a,o)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new e(this.opts,this.hasWalkedCache)}filterEntries(t,r){let n=this.subwalks.get(t),a=this.child();for(let o of r)for(let l of n){let A=l.isAbsolute(),f=l.pattern(),I=l.rest();f===LCs.GLOBSTAR?a.testGlobstar(o,l,I,A):f instanceof RegExp?a.testRegExp(o,f,I,A):a.testString(o,f,I,A)}return a}testGlobstar(t,r,n,a){if((this.dot||!t.name.startsWith("."))&&(r.hasMore()||this.matches.add(t,a,!1),t.canReaddir()&&(this.follow||!t.isSymbolicLink()?this.subwalks.add(t,r):t.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(t,n):r.markFollowGlobstar()&&this.subwalks.add(t,r)))),n){let o=n.pattern();if(typeof o=="string"&&o!==".."&&o!==""&&o!==".")this.testString(t,o,n.rest(),a);else if(o===".."){let l=t.parent||t;this.subwalks.add(l,n)}else o instanceof RegExp&&this.testRegExp(t,o,n.rest(),a)}}testRegExp(t,r,n,a){r.test(t.name)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}testString(t,r,n,a){t.isNamed(r)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}};jj.Processor=pjr});var PCs=H(cge=>{"use strict";Object.defineProperty(cge,"__esModule",{value:!0});cge.GlobStream=cge.GlobWalker=cge.GlobUtil=void 0;var fTl=lF(),WCs=djr(),OCs=VCs(),ITl=(e,t)=>typeof e=="string"?new WCs.Ignore([e],t):Array.isArray(e)?new WCs.Ignore(e,t):e,Fze=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#n;signal;maxDepth;includeChildMatches;constructor(t,r,n){if(this.patterns=t,this.path=r,this.opts=n,this.#n=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#t=ITl(n.ignore??[],n),!this.includeChildMatches&&typeof this.#t.add!="function")){let a="cannot ignore child matches, ignore lacks add() method.";throw new Error(a)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(t){return this.seen.has(t)||!!this.#t?.ignored?.(t)}#i(t){return!!this.#t?.childrenIgnored?.(t)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let t;for(;!this.paused&&(t=this.#e.shift());)t()}onResume(t){this.signal?.aborted||(this.paused?this.#e.push(t):t())}async matchCheck(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||await t.realpath(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?await t.lstat():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=await o.realpath();l&&(l.isUnknown()||this.opts.stat)&&await l.lstat()}return this.matchCheckTest(o,r)}matchCheckTest(t,r){return t&&(this.maxDepth===1/0||t.depth()<=this.maxDepth)&&(!r||t.canReaddir())&&(!this.opts.nodir||!t.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!t.isSymbolicLink()||!t.realpathCached()?.isDirectory())&&!this.#r(t)?t:void 0}matchCheckSync(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||t.realpathSync(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?t.lstatSync():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=o.realpathSync();l&&(l?.isUnknown()||this.opts.stat)&&l.lstatSync()}return this.matchCheckTest(o,r)}matchFinish(t,r){if(this.#r(t))return;if(!this.includeChildMatches&&this.#t?.add){let o=`${t.relativePosix()}/**`;this.#t.add(o)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(t);let a=this.opts.mark&&t.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(t);else if(n){let o=this.opts.posix?t.fullpathPosix():t.fullpath();this.matchEmit(o+a)}else{let o=this.opts.posix?t.relativePosix():t.relative(),l=this.opts.dotRelative&&!o.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(o?l+o+a:"."+a)}}async match(t,r,n){let a=await this.matchCheck(t,n);a&&this.matchFinish(a,r)}matchSync(t,r,n){let a=this.matchCheckSync(t,n);a&&this.matchFinish(a,r)}walkCB(t,r,n){this.signal?.aborted&&n(),this.walkCB2(t,r,new OCs.Processor(this.opts),n)}walkCB2(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirCached();A.calledReaddir()?this.walkCB3(A,f,n,l):A.readdirCB((I,C)=>this.walkCB3(A,C,n,l),!0)}l()}walkCB3(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let[A,f]of n.subwalks.entries())o++,this.walkCB2(A,f,n.child(),l);l()}walkCBSync(t,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(t,r,new OCs.Processor(this.opts),n)}walkCB2Sync(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2Sync(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirSync();this.walkCB3Sync(A,f,n,l)}l()}walkCB3Sync(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let[A,f]of n.subwalks.entries())o++,this.walkCB2Sync(A,f,n.child(),l);l()}};cge.GlobUtil=Fze;var fjr=class extends Fze{matches=new Set;constructor(t,r,n){super(t,r,n)}matchEmit(t){this.matches.add(t)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((t,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):t(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}};cge.GlobWalker=fjr;var Ijr=class extends Fze{results;constructor(t,r,n){super(t,r,n),this.results=new fTl.Minipass({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(t){this.results.write(t),this.results.flowing||this.pause()}stream(){let t=this.path;return t.isUnknown()?t.lstat().then(()=>{this.walkCB(t,this.patterns,()=>this.results.end())}):this.walkCB(t,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};cge.GlobStream=Ijr});var mjr=H(SLt=>{"use strict";Object.defineProperty(SLt,"__esModule",{value:!0});SLt.Glob=void 0;var hTl=age(),mTl=Et("node:url"),bLt=FCs(),CTl=gjr(),ELt=PCs(),_Tl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",hjr=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(t,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,mTl.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof t=="string"&&(t=[t]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(t=t.map(f=>f.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");t=t.map(f=>f.includes("/")?f:`./**/${f}`)}if(this.pattern=t,this.platform=r.platform||_Tl,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let f=r.platform==="win32"?bLt.PathScurryWin32:r.platform==="darwin"?bLt.PathScurryDarwin:r.platform?bLt.PathScurryPosix:bLt.PathScurry;this.scurry=new f(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",a={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},o=this.pattern.map(f=>new hTl.Minimatch(f,a)),[l,A]=o.reduce((f,I)=>(f[0].push(...I.set),f[1].push(...I.globParts),f),[[],[]]);this.patterns=l.map((f,I)=>{let C=A[I];if(!C)throw new Error("invalid pattern object");return new CTl.Pattern(f,C,0,this.platform)})}async walk(){return[...await new ELt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new ELt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new ELt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new ELt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};SLt.Glob=hjr});var Cjr=H(vLt=>{"use strict";Object.defineProperty(vLt,"__esModule",{value:!0});vLt.hasMagic=void 0;var yTl=age(),bTl=(e,t={})=>{Array.isArray(e)||(e=[e]);for(let r of e)if(new yTl.Minimatch(r,t).hasMagic())return!0;return!1};vLt.hasMagic=bTl});var QCs=H(AC=>{"use strict";Object.defineProperty(AC,"__esModule",{value:!0});AC.glob=AC.sync=AC.iterate=AC.iterateSync=AC.stream=AC.streamSync=AC.Ignore=AC.hasMagic=AC.Glob=AC.unescape=AC.escape=void 0;AC.globStreamSync=Zze;AC.globStream=_jr;AC.globSync=yjr;AC.globIterateSync=Lze;AC.globIterate=bjr;var MCs=age(),rye=mjr(),ETl=Cjr(),YCs=age();Object.defineProperty(AC,"escape",{enumerable:!0,get:function(){return YCs.escape}});Object.defineProperty(AC,"unescape",{enumerable:!0,get:function(){return YCs.unescape}});var STl=mjr();Object.defineProperty(AC,"Glob",{enumerable:!0,get:function(){return STl.Glob}});var vTl=Cjr();Object.defineProperty(AC,"hasMagic",{enumerable:!0,get:function(){return vTl.hasMagic}});var BTl=djr();Object.defineProperty(AC,"Ignore",{enumerable:!0,get:function(){return BTl.Ignore}});function Zze(e,t={}){return new rye.Glob(e,t).streamSync()}function _jr(e,t={}){return new rye.Glob(e,t).stream()}function yjr(e,t={}){return new rye.Glob(e,t).walkSync()}async function HCs(e,t={}){return new rye.Glob(e,t).walk()}function Lze(e,t={}){return new rye.Glob(e,t).iterateSync()}function bjr(e,t={}){return new rye.Glob(e,t).iterate()}AC.streamSync=Zze;AC.stream=Object.assign(_jr,{sync:Zze});AC.iterateSync=Lze;AC.iterate=Object.assign(bjr,{sync:Lze});AC.sync=Object.assign(yjr,{stream:Zze,iterate:Lze});AC.glob=Object.assign(HCs,{glob:HCs,globSync:yjr,sync:AC.sync,globStream:_jr,stream:AC.stream,globStreamSync:Zze,streamSync:AC.streamSync,globIterate:bjr,iterate:AC.iterate,globIterateSync:Lze,iterateSync:AC.iterateSync,Glob:rye.Glob,hasMagic:ETl.hasMagic,escape:MCs.escape,unescape:MCs.unescape});AC.glob.glob=AC.glob});var Ejr=H((Kng,JCs)=>{"use strict";var{glob:wTl}=QCs(),XCs=Et("path"),TTl=e=>e.split(XCs.win32.sep).join(XCs.posix.sep);JCs.exports=(e,t)=>wTl(TTl(e),t)});var KCs=H((jng,UCs)=>{"use strict";var RTl=Et("fs/promises"),NTl=_Fe(),{hasContent:DTl}=K6r();UCs.exports=kTl;async function kTl(e,t){let r=await DTl(e,t);return r&&r.sri?(await RTl.rm(NTl(e,r.sri),{recursive:!0,force:!0}),!0):!1}});var zCs=H((zng,Vze)=>{"use strict";var{rm:xTl}=Et("fs/promises"),GTl=Ejr(),FTl=bFe(),Sjr=fze(),ZTl=Et("path"),LTl=KCs();Vze.exports=jCs;Vze.exports.entry=jCs;function jCs(e,t,r){return Sjr.clearMemoized(),FTl.delete(e,t,r)}Vze.exports.content=VTl;function VTl(e,t){return Sjr.clearMemoized(),LTl(e,t)}Vze.exports.all=WTl;async function WTl(e){Sjr.clearMemoized();let t=await GTl(ZTl.join(e,"*(content-*|index-*)"),{silent:!0,nosort:!0});return Promise.all(t.map(r=>xTl(r,{recursive:!0,force:!0})))}});var $Cs=H((qng,Tjr)=>{"use strict";var{mkdir:OTl,readFile:PTl,rm:Bjr,stat:wjr,truncate:MTl,writeFile:HTl}=Et("fs/promises"),qCs=_Fe(),YTl=eLt(),QTl=Ejr(),DFe=bFe(),BLt=Et("path"),vjr=cre(),XTl=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),JTl=e=>({concurrency:20,log:{silly(){}},...e});Tjr.exports=UTl;async function UTl(e,t){t=JTl(t),t.log.silly("verify","verifying cache at",e);let r=[KTl,zTl,qTl,eRl,rRl,nRl,jTl],n={};for(let a of r){let o=a.name,l=new Date,A=await a(e,t);A&&Object.keys(A).forEach(I=>{n[I]=A[I]});let f=new Date;n.runTime||(n.runTime={}),n.runTime[o]=f-l}return n.runTime.total=n.endTime-n.startTime,t.log.silly("verify","verification finished for",e,"in",`${n.runTime.total}ms`),n}async function KTl(){return{startTime:new Date}}async function jTl(){return{endTime:new Date}}async function zTl(e,t){return t.log.silly("verify","fixing cache permissions"),await OTl(e,{recursive:!0}),null}async function qTl(e,t){t.log.silly("verify","garbage collecting content");let{default:r}=await Promise.resolve().then(()=>(PZt(),OZt)),n=DFe.lsStream(e),a=new Set;n.on("data",f=>{if(t.filter&&!t.filter(f))return;let I=vjr.parse(f.integrity);for(let C in I)a.add(I[C].toString())}),await new Promise((f,I)=>{n.on("end",f).on("error",I)});let o=qCs.contentDir(e),l=await QTl(BLt.join(o,"**"),{follow:!1,nodir:!0,nosort:!0}),A={verifiedContent:0,reclaimedCount:0,reclaimedSize:0,badContentCount:0,keptSize:0};return await r(l,async f=>{let I=f.split(/[/\\]/),C=I.slice(I.length-3).join(""),b=I[I.length-4],E=vjr.fromHex(C,b);if(a.has(E.toString())){let N=await $Tl(f,E);N.valid?(A.verifiedContent++,A.keptSize+=N.size):(A.reclaimedCount++,A.badContentCount++,A.reclaimedSize+=N.size)}else{A.reclaimedCount++;let N=await wjr(f);await Bjr(f,{recursive:!0,force:!0}),A.reclaimedSize+=N.size}return A},{concurrency:t.concurrency}),A}async function $Tl(e,t){let r={};try{let{size:n}=await wjr(e);r.size=n,r.valid=!0,await vjr.checkStream(new YTl.ReadStream(e),t)}catch(n){if(n.code==="ENOENT")return{size:0,valid:!1};if(n.code!=="EINTEGRITY")throw n;await Bjr(e,{recursive:!0,force:!0}),r.valid=!1}return r}async function eRl(e,t){t.log.silly("verify","rebuilding index");let{default:r}=await Promise.resolve().then(()=>(PZt(),OZt)),n=await DFe.ls(e),a={missingContent:0,rejectedEntries:0,totalEntries:0},o={};for(let l in n)if(XTl(n,l)){let A=DFe.hashKey(l),f=n[l],I=t.filter&&!t.filter(f);I&&a.rejectedEntries++,o[A]&&!I?o[A].push(f):o[A]&&I||(I?(o[A]=[],o[A]._path=DFe.bucketPath(e,l)):(o[A]=[f],o[A]._path=DFe.bucketPath(e,l)))}return await r(Object.keys(o),l=>tRl(e,o[l],a,t),{concurrency:t.concurrency}),a}async function tRl(e,t,r){await MTl(t._path);for(let n of t){let a=qCs(e,n.integrity);try{await wjr(a),await DFe.insert(e,n.key,n.integrity,{metadata:n.metadata,size:n.size,time:n.time}),r.totalEntries++}catch(o){if(o.code==="ENOENT")r.rejectedEntries++,r.missingContent++;else throw o}}}function rRl(e,t){return t.log.silly("verify","cleaning tmp directory"),Bjr(BLt.join(e,"tmp"),{recursive:!0,force:!0})}async function nRl(e,t){let r=BLt.join(e,"_lastverified");return t.log.silly("verify","writing verifile to "+r),HTl(r,`${Date.now()}`)}Tjr.exports.lastRun=iRl;async function iRl(e){let t=await PTl(BLt.join(e,"_lastverified"),{encoding:"utf8"});return new Date(+t)}});var t_s=H(($ng,Njr)=>{"use strict";var{withTempDir:sRl}=WZt(),e_s=Et("fs/promises"),Rjr=Et("path");Njr.exports.mkdir=oRl;async function oRl(e,t={}){let{tmpPrefix:r}=t,n=Rjr.join(e,"tmp");await e_s.mkdir(n,{recursive:!0,owner:"inherit"});let a=`${n}${Rjr.sep}${r||""}`;return e_s.mkdtemp(a,{owner:"inherit"})}Njr.exports.withTmp=aRl;function aRl(e,t,r){return r||(r=t,t={}),sRl(Rjr.join(e,"tmp"),r,t)}});var s_s=H((eig,oE)=>{"use strict";var lge=Oms(),r_s=jms(),Djr=zCs(),n_s=$Cs(),{clearMemoized:cRl}=fze(),i_s=t_s(),wLt=bFe();oE.exports.index={};oE.exports.index.compact=wLt.compact;oE.exports.index.insert=wLt.insert;oE.exports.ls=wLt.ls;oE.exports.ls.stream=wLt.lsStream;oE.exports.get=lge;oE.exports.get.byDigest=lge.byDigest;oE.exports.get.stream=lge.stream;oE.exports.get.stream.byDigest=lge.stream.byDigest;oE.exports.get.copy=lge.copy;oE.exports.get.copy.byDigest=lge.copy.byDigest;oE.exports.get.info=lge.info;oE.exports.get.hasContent=lge.hasContent;oE.exports.put=r_s;oE.exports.put.stream=r_s.stream;oE.exports.rm=Djr.entry;oE.exports.rm.all=Djr.all;oE.exports.rm.entry=oE.exports.rm;oE.exports.rm.content=Djr.content;oE.exports.clearMemoized=cRl;oE.exports.tmp={};oE.exports.tmp.mkdir=i_s.mkdir;oE.exports.tmp.withTmp=i_s.withTmp;oE.exports.verify=n_s;oE.exports.verify.lastRun=n_s.lastRun});var xjr=H((tig,o_s)=>{"use strict";var lRl=CFe(),kjr=class extends lRl{#e=[];#t=new Map;constructor(t,...r){super(),this.#e=t.events,r.length&&this.push(...r)}on(t,r){return this.#e.includes(t)&&this.#t.has(t)?r(...this.#t.get(t)):super.on(t,r)}emit(t,...r){return this.#e.includes(t)&&this.#t.set(t,r),super.emit(t,...r)}};o_s.exports=kjr});var c_s=H((rig,a_s)=>{var{URL:uRl,format:gRl}=Et("url"),ARl={auth:!1,fragment:!1,search:!0,unicode:!1},dRl=e=>{let t=new uRl(e.url);return`make-fetch-happen:request-cache:${gRl(t,ARl)}`};a_s.exports=dRl});var g_s=H((nig,u_s)=>{"use strict";function l_s(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function pRl(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=void 0),t!=null&&(r.code=t);try{return l_s(e,r)}catch{r.message=e.message,r.stack=e.stack;let a=function(){};return a.prototype=Object.create(Object.getPrototypeOf(e)),l_s(new a,r)}}u_s.exports=pRl});var d_s=H((iig,A_s)=>{function rY(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}A_s.exports=rY;rY.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};rY.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};rY.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift();else return!1;var n=this,a=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r);return this._options.unref&&a.unref(),!0};rY.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};rY.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};rY.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};rY.prototype.start=rY.prototype.try;rY.prototype.errors=function(){return this._errors};rY.prototype.attempts=function(){return this._attempts};rY.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=a,r=l)}return t}});var p_s=H(nye=>{var fRl=d_s();nye.operation=function(e){var t=nye.timeouts(e);return new fRl(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};nye.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],a=0;a{f_s.exports=p_s()});var Gjr=H((aig,m_s)=>{"use strict";var IRl=g_s(),hRl=I_s(),mRl=Object.prototype.hasOwnProperty;function h_s(e){return e&&e.code==="EPROMISERETRY"&&mRl.call(e,"retried")}function CRl(e,t){var r,n;return typeof e=="object"&&typeof t=="function"&&(r=t,t=e,e=r),n=hRl.operation(t),new Promise(function(a,o){n.attempt(function(l){Promise.resolve().then(function(){return e(function(A){throw h_s(A)&&(A=A.retried),IRl(new Error("Retrying"),"EPROMISERETRY",{retried:A})},l)}).then(a,function(A){h_s(A)&&(A=A.retried,n.retry(A||new Error))||o(A)})})})}m_s.exports=CRl});var Fjr=H((cig,C_s)=>{var _Rl=Symbol("proc-log.meta");C_s.exports={META:_Rl,output:{LEVELS:["standard","error","buffer","flush"],KEYS:{standard:"standard",error:"error",buffer:"buffer",flush:"flush"},standard:function(...e){return process.emit("output","standard",...e)},error:function(...e){return process.emit("output","error",...e)},buffer:function(...e){return process.emit("output","buffer",...e)},flush:function(...e){return process.emit("output","flush",...e)}},log:{LEVELS:["notice","error","warn","info","verbose","http","silly","timing","pause","resume"],KEYS:{notice:"notice",error:"error",warn:"warn",info:"info",verbose:"verbose",http:"http",silly:"silly",timing:"timing",pause:"pause",resume:"resume"},error:function(...e){return process.emit("log","error",...e)},notice:function(...e){return process.emit("log","notice",...e)},warn:function(...e){return process.emit("log","warn",...e)},info:function(...e){return process.emit("log","info",...e)},verbose:function(...e){return process.emit("log","verbose",...e)},http:function(...e){return process.emit("log","http",...e)},silly:function(...e){return process.emit("log","silly",...e)},timing:function(...e){return process.emit("log","timing",...e)},pause:function(){return process.emit("log","pause")},resume:function(){return process.emit("log","resume")}},time:{LEVELS:["start","end"],KEYS:{start:"start",end:"end"},start:function(e,t){process.emit("time","start",e);function r(){return process.emit("time","end",e)}if(typeof t=="function"){let n=t();return n&&n.finally?n.finally(r):(r(),n)}return r},end:function(e){return process.emit("time","end",e)}},input:{LEVELS:["start","end","read"],KEYS:{start:"start",end:"end",read:"read"},start:function(e){process.emit("input","start");function t(){return process.emit("input","end")}if(typeof e=="function"){let r=e();return r&&r.finally?r.finally(t):(t(),r)}return t},end:function(){return process.emit("input","end")},read:function(...e){let t,r,n=new Promise((a,o)=>{t=a,r=o});return process.emit("input","read",t,r,...e),n}}}});var Zjr=H((lig,y_s)=>{"use strict";var{LRUCache:yRl}=WIe(),__s=Et("dns"),TLt=new yRl({max:50}),bRl=({family:e=0,hints:t=__s.ADDRCONFIG,all:r=!1,verbatim:n=void 0,ttl:a=5*60*1e3,lookup:o=__s.lookup})=>({hints:t,lookup:(l,...A)=>{let f=A.pop(),I=A[0]??{},C={family:e,hints:t,all:r,verbatim:n,...typeof I=="number"?{family:I}:I},b=JSON.stringify({hostname:l,...C});if(TLt.has(b)){let E=TLt.get(b);return process.nextTick(f,null,...E)}o(l,C,(E,...N)=>E?f(E):(TLt.set(b,N,{ttl:a}),f(null,...N)))}});y_s.exports={cache:TLt,getOptions:bRl}});var Ljr=H((uig,E_s)=>{"use strict";var ERl=Zjr(),SRl=e=>{let t=parseInt(e.family??"0",10),r=e.keepAlive??!0,n={keepAliveMsecs:r?1e3:void 0,maxSockets:e.maxSockets??15,maxTotalSockets:1/0,maxFreeSockets:r?256:void 0,scheduling:"fifo",...e,family:t,keepAlive:r,timeouts:{idle:e.timeout??0,connection:0,response:0,transfer:0,...e.timeouts},...ERl.getOptions({family:t,...e.dns})};return delete n.timeout,n},b_s=e=>{let t="",r=Object.entries(e).sort((n,a)=>n[0]-a[0]);for(let[n,a]of r)a==null?a="null":a instanceof URL?a=a.toString():typeof a=="object"&&(a=b_s(a)),t+=`${n}:${a}:`;return t},vRl=({secureEndpoint:e,...t})=>b_s({secureEndpoint:!!e,family:t.family,hints:t.hints,localAddress:t.localAddress,strictSsl:e?!!t.rejectUnauthorized:!1,ca:e?t.ca:null,cert:e?t.cert:null,key:e?t.key:null,keepAlive:t.keepAlive,keepAliveMsecs:t.keepAliveMsecs,maxSockets:t.maxSockets,maxTotalSockets:t.maxTotalSockets,maxFreeSockets:t.maxFreeSockets,scheduling:t.scheduling,timeouts:t.timeouts,proxy:t.proxy});E_s.exports={normalizeOptions:SRl,cacheOptions:vRl}});var B_s=H(cW=>{"use strict";var BRl=cW&&cW.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wRl=cW&&cW.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S_s=cW&&cW.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&BRl(t,e,r);return wRl(t,e),t};Object.defineProperty(cW,"__esModule",{value:!0});cW.req=cW.json=cW.toBuffer=void 0;var TRl=S_s(Et("http")),RRl=S_s(Et("https"));async function v_s(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}cW.toBuffer=v_s;async function NRl(e){let r=(await v_s(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let a=n;throw a.message+=` (input: ${r})`,a}}cW.json=NRl;function DRl(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?RRl:TRl).request(e,t),a=new Promise((o,l)=>{n.once("response",o).once("error",l).end()});return n.then=a.then.bind(a),n}cW.req=DRl});var Wze=H(n3=>{"use strict";var T_s=n3&&n3.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kRl=n3&&n3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),R_s=n3&&n3.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&T_s(t,e,r);return kRl(t,e),t},xRl=n3&&n3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&T_s(t,e,r)};Object.defineProperty(n3,"__esModule",{value:!0});n3.Agent=void 0;var GRl=R_s(Et("net")),w_s=R_s(Et("http")),FRl=Et("https");xRl(B_s(),n3);var zj=Symbol("AgentBaseInternalState"),Vjr=class extends w_s.Agent{constructor(t){super(t),this[zj]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` +`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new GRl.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],a=n.indexOf(r);a!==-1&&(n.splice(a,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return(typeof t.secureEndpoint=="boolean"?t.secureEndpoint:this.isSecureEndpoint(t))?FRl.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let a={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(a),l=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(t,a)).then(A=>{if(this.decrementSockets(o,l),A instanceof w_s.Agent)return A.addRequest(t,a);this[zj].currentSocket=A,super.createSocket(t,r,n)},A=>{this.decrementSockets(o,l),n(A)})}createConnection(){let t=this[zj].currentSocket;if(this[zj].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[zj].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[zj]&&(this[zj].defaultPort=t)}get protocol(){return this[zj].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[zj]&&(this[zj].protocol=t)}};n3.Agent=Vjr});var k_s=H(nY=>{"use strict";var ZRl=nY&&nY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LRl=nY&&nY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),D_s=nY&&nY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&ZRl(t,e,r);return LRl(t,e),t},VRl=nY&&nY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nY,"__esModule",{value:!0});nY.HttpProxyAgent=void 0;var WRl=D_s(Et("net")),ORl=D_s(Et("tls")),PRl=VRl(IT()),MRl=Et("events"),HRl=Wze(),N_s=Et("url"),kFe=(0,PRl.default)("http-proxy-agent"),RLt=class extends HRl.Agent{constructor(t,r){super(r),this.proxy=typeof t=="string"?new N_s.URL(t):t,this.proxyHeaders=r?.headers??{},kFe("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?YRl(r,"headers"):null,host:n,port:a}}addRequest(t,r){t._header=null,this.setRequestProps(t,r),super.addRequest(t,r)}setRequestProps(t,r){let{proxy:n}=this,a=r.secureEndpoint?"https:":"http:",o=t.getHeader("host")||"localhost",l=`${a}//${o}`,A=new N_s.URL(t.path,l);r.port!==80&&(A.port=String(r.port)),t.path=String(A);let f=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let I=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;f["Proxy-Authorization"]=`Basic ${Buffer.from(I).toString("base64")}`}f["Proxy-Connection"]||(f["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let I of Object.keys(f)){let C=f[I];C&&t.setHeader(I,C)}}async connect(t,r){t._header=null,t.path.includes("://")||this.setRequestProps(t,r);let n,a;kFe("Regenerating stored HTTP header string for request"),t._implicitHeader(),t.outputData&&t.outputData.length>0&&(kFe("Patching connection write() output buffer with updated header"),n=t.outputData[0].data,a=n.indexOf(`\r \r -`)+4,t.outputData[0].data=t._header+n.substring(a),kFe("Output buffer: %o",t.outputData[0].data));let o;return this.proxy.protocol==="https:"?(kFe("Creating `tls.Socket`: %o",this.connectOpts),o=HTl.connect(this.connectOpts)):(kFe("Creating `net.Socket`: %o",this.connectOpts),o=MTl.connect(this.connectOpts)),await(0,QTl.once)(o,"connect"),o}};RLt.protocols=["http","https"];rY.HttpProxyAgent=RLt;function JTl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var k_s=H(xFe=>{"use strict";var UTl=xFe&&xFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xFe,"__esModule",{value:!0});xFe.parseProxyResponse=void 0;var KTl=UTl(fT()),NLt=(0,KTl.default)("https-proxy-agent:parse-proxy-response");function jTl(e){return new Promise((t,r)=>{let n=0,a=[];function o(){let C=e.read();C?I(C):e.once("readable",o)}function l(){e.removeListener("end",A),e.removeListener("error",f),e.removeListener("readable",o)}function A(){l(),NLt("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function f(C){l(),NLt("onerror %o",C),r(C)}function I(C){a.push(C),n+=C.length;let b=Buffer.concat(a,n),E=b.indexOf(`\r +`)+4,t.outputData[0].data=t._header+n.substring(a),kFe("Output buffer: %o",t.outputData[0].data));let o;return this.proxy.protocol==="https:"?(kFe("Creating `tls.Socket`: %o",this.connectOpts),o=ORl.connect(this.connectOpts)):(kFe("Creating `net.Socket`: %o",this.connectOpts),o=WRl.connect(this.connectOpts)),await(0,MRl.once)(o,"connect"),o}};RLt.protocols=["http","https"];nY.HttpProxyAgent=RLt;function YRl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var x_s=H(xFe=>{"use strict";var QRl=xFe&&xFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xFe,"__esModule",{value:!0});xFe.parseProxyResponse=void 0;var XRl=QRl(IT()),NLt=(0,XRl.default)("https-proxy-agent:parse-proxy-response");function JRl(e){return new Promise((t,r)=>{let n=0,a=[];function o(){let C=e.read();C?I(C):e.once("readable",o)}function l(){e.removeListener("end",A),e.removeListener("error",f),e.removeListener("readable",o)}function A(){l(),NLt("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function f(C){l(),NLt("onerror %o",C),r(C)}function I(C){a.push(C),n+=C.length;let b=Buffer.concat(a,n),E=b.indexOf(`\r \r `);if(E===-1){NLt("have not received end of HTTP headers yet..."),o();return}let N=b.slice(0,E).toString("ascii").split(`\r -`),B=N.shift();if(!B)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let F=B.split(" "),Q=+F[1],J=F.slice(2).join(" "),ae={};for(let ne of N){if(!ne)continue;let ce=ne.indexOf(":");if(ce===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${ne}"`));let fe=ne.slice(0,ce).toLowerCase(),ue=ne.slice(ce+1).trimStart(),de=ae[fe];typeof de=="string"?ae[fe]=[de,ue]:Array.isArray(de)?de.push(ue):ae[fe]=ue}NLt("got proxy server response: %o %o",B,ae),l(),t({connect:{statusCode:Q,statusText:J,headers:ae},buffered:b})}e.on("error",f),e.on("end",A),o()})}xFe.parseProxyResponse=jTl});var L_s=H(nY=>{"use strict";var zTl=nY&&nY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),qTl=nY&&nY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),F_s=nY&&nY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&zTl(t,e,r);return qTl(t,e),t},Z_s=nY&&nY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nY,"__esModule",{value:!0});nY.HttpsProxyAgent=void 0;var xjr=F_s(Et("net")),x_s=F_s(Et("tls")),$Tl=Z_s(Et("assert")),eRl=Z_s(fT()),tRl=Oze(),rRl=Et("url"),nRl=k_s(),Pze=(0,eRl.default)("https-proxy-agent"),DLt=class extends tRl.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new rRl.URL(t):t,this.proxyHeaders=r?.headers??{},Pze("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?G_s(r,"headers"):null,host:n,port:a}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let a;if(n.protocol==="https:"){Pze("Creating `tls.Socket`: %o",this.connectOpts);let E=this.connectOpts.servername||this.connectOpts.host;a=x_s.connect({...this.connectOpts,servername:E})}else Pze("Creating `net.Socket`: %o",this.connectOpts),a=xjr.connect(this.connectOpts);let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},l=xjr.isIPv6(r.host)?`[${r.host}]`:r.host,A=`CONNECT ${l}:${r.port} HTTP/1.1\r +`),B=N.shift();if(!B)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let F=B.split(" "),Q=+F[1],J=F.slice(2).join(" "),ae={};for(let ne of N){if(!ne)continue;let ce=ne.indexOf(":");if(ce===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${ne}"`));let fe=ne.slice(0,ce).toLowerCase(),ue=ne.slice(ce+1).trimStart(),de=ae[fe];typeof de=="string"?ae[fe]=[de,ue]:Array.isArray(de)?de.push(ue):ae[fe]=ue}NLt("got proxy server response: %o %o",B,ae),l(),t({connect:{statusCode:Q,statusText:J,headers:ae},buffered:b})}e.on("error",f),e.on("end",A),o()})}xFe.parseProxyResponse=JRl});var V_s=H(iY=>{"use strict";var URl=iY&&iY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),KRl=iY&&iY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Z_s=iY&&iY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&URl(t,e,r);return KRl(t,e),t},L_s=iY&&iY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iY,"__esModule",{value:!0});iY.HttpsProxyAgent=void 0;var Wjr=Z_s(Et("net")),G_s=Z_s(Et("tls")),jRl=L_s(Et("assert")),zRl=L_s(IT()),qRl=Wze(),$Rl=Et("url"),eNl=x_s(),Oze=(0,zRl.default)("https-proxy-agent"),DLt=class extends qRl.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new $Rl.URL(t):t,this.proxyHeaders=r?.headers??{},Oze("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?F_s(r,"headers"):null,host:n,port:a}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let a;if(n.protocol==="https:"){Oze("Creating `tls.Socket`: %o",this.connectOpts);let E=this.connectOpts.servername||this.connectOpts.host;a=G_s.connect({...this.connectOpts,servername:E})}else Oze("Creating `net.Socket`: %o",this.connectOpts),a=Wjr.connect(this.connectOpts);let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},l=Wjr.isIPv6(r.host)?`[${r.host}]`:r.host,A=`CONNECT ${l}:${r.port} HTTP/1.1\r `;if(n.username||n.password){let E=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(E).toString("base64")}`}o.Host=`${l}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let E of Object.keys(o))A+=`${E}: ${o[E]}\r -`;let f=(0,nRl.parseProxyResponse)(a);a.write(`${A}\r -`);let{connect:I,buffered:C}=await f;if(t.emit("proxyConnect",I),this.emit("proxyConnect",I,t),I.statusCode===200){if(t.once("socket",iRl),r.secureEndpoint){Pze("Upgrading socket connection to TLS");let E=r.servername||r.host;return x_s.connect({...G_s(r,"host","path","port"),socket:a,servername:E})}return a}a.destroy();let b=new xjr.Socket({writable:!1});return b.readable=!0,t.once("socket",E=>{Pze("Replaying proxy buffer for failed request"),(0,$Tl.default)(E.listenerCount("data")>0),E.push(C),E.push(null)}),b}};DLt.protocols=["http","https"];nY.HttpsProxyAgent=DLt;function iRl(e){e.resume()}function G_s(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var P_s=H(Sre=>{"use strict";Object.defineProperty(Sre,"__esModule",{value:!0});var V_s=Et("buffer"),iye={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};Sre.ERRORS=iye;function sRl(e){if(!V_s.Buffer.isEncoding(e))throw new Error(iye.INVALID_ENCODING)}Sre.checkEncoding=sRl;function W_s(e){return typeof e=="number"&&isFinite(e)&&lRl(e)}Sre.isFiniteInteger=W_s;function O_s(e,t){if(typeof e=="number"){if(!W_s(e)||e<0)throw new Error(t?iye.INVALID_OFFSET:iye.INVALID_LENGTH)}else throw new Error(t?iye.INVALID_OFFSET_NON_NUMBER:iye.INVALID_LENGTH_NON_NUMBER)}function oRl(e){O_s(e,!1)}Sre.checkLengthValue=oRl;function aRl(e){O_s(e,!0)}Sre.checkOffsetValue=aRl;function cRl(e,t){if(e<0||e>t.length)throw new Error(iye.INVALID_TARGET_OFFSET)}Sre.checkTargetOffset=cRl;function lRl(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e}function uRl(e){if(typeof BigInt>"u")throw new Error("Platform does not support JS BigInt type.");if(typeof V_s.Buffer.prototype[e]>"u")throw new Error(`Platform does not support Buffer.prototype.${e}.`)}Sre.bigIntAndBufferInt64Check=uRl});var H_s=H(Fjr=>{"use strict";Object.defineProperty(Fjr,"__esModule",{value:!0});var Uh=P_s(),M_s=4096,gRl="utf8",Gjr=class e{constructor(t){if(this.length=0,this._encoding=gRl,this._writeOffset=0,this._readOffset=0,e.isSmartBufferOptions(t))if(t.encoding&&(Uh.checkEncoding(t.encoding),this._encoding=t.encoding),t.size)if(Uh.isFiniteInteger(t.size)&&t.size>0)this._buff=Buffer.allocUnsafe(t.size);else throw new Error(Uh.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(t.buff)if(Buffer.isBuffer(t.buff))this._buff=t.buff,this.length=t.buff.length;else throw new Error(Uh.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(M_s);else{if(typeof t<"u")throw new Error(Uh.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(M_s)}}static fromSize(t,r){return new this({size:t,encoding:r})}static fromBuffer(t,r){return new this({buff:t,encoding:r})}static fromOptions(t){return new this(t)}static isSmartBufferOptions(t){let r=t;return r&&(r.encoding!==void 0||r.size!==void 0||r.buff!==void 0)}readInt8(t){return this._readNumberValue(Buffer.prototype.readInt8,1,t)}readInt16BE(t){return this._readNumberValue(Buffer.prototype.readInt16BE,2,t)}readInt16LE(t){return this._readNumberValue(Buffer.prototype.readInt16LE,2,t)}readInt32BE(t){return this._readNumberValue(Buffer.prototype.readInt32BE,4,t)}readInt32LE(t){return this._readNumberValue(Buffer.prototype.readInt32LE,4,t)}readBigInt64BE(t){return Uh.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,t)}readBigInt64LE(t){return Uh.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,t)}writeInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeInt8,1,t,r),this}insertInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeInt8,1,t,r)}writeInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}insertInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}writeInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}insertInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}writeInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}insertInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}writeInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}insertInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}writeBigInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}insertBigInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}writeBigInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}insertBigInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}readUInt8(t){return this._readNumberValue(Buffer.prototype.readUInt8,1,t)}readUInt16BE(t){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,t)}readUInt16LE(t){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,t)}readUInt32BE(t){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,t)}readUInt32LE(t){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,t)}readBigUInt64BE(t){return Uh.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,t)}readBigUInt64LE(t){return Uh.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,t)}writeUInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,t,r)}insertUInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,t,r)}writeUInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}insertUInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}writeUInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}insertUInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}writeUInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}insertUInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}writeUInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}insertUInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}writeBigUInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}insertBigUInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}writeBigUInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}insertBigUInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}readFloatBE(t){return this._readNumberValue(Buffer.prototype.readFloatBE,4,t)}readFloatLE(t){return this._readNumberValue(Buffer.prototype.readFloatLE,4,t)}writeFloatBE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}insertFloatBE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}writeFloatLE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}insertFloatLE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}readDoubleBE(t){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,t)}readDoubleLE(t){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,t)}writeDoubleBE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}insertDoubleBE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}writeDoubleLE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}insertDoubleLE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}readString(t,r){let n;typeof t=="number"?(Uh.checkLengthValue(t),n=Math.min(t,this.length-this._readOffset)):(r=t,n=this.length-this._readOffset),typeof r<"u"&&Uh.checkEncoding(r);let a=this._buff.slice(this._readOffset,this._readOffset+n).toString(r||this._encoding);return this._readOffset+=n,a}insertString(t,r,n){return Uh.checkOffsetValue(r),this._handleString(t,!0,r,n)}writeString(t,r,n){return this._handleString(t,!1,r,n)}readStringNT(t){typeof t<"u"&&Uh.checkEncoding(t);let r=this.length;for(let a=this._readOffset;athis.length)throw new Error(Uh.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(t,r){Uh.checkOffsetValue(r),this._ensureCapacity(this.length+t),rthis.length?this.length=r+t:this.length+=t}_ensureWriteable(t,r){let n=typeof r=="number"?r:this._writeOffset;this._ensureCapacity(n+t),n+t>this.length&&(this.length=n+t)}_ensureCapacity(t){let r=this._buff.length;if(t>r){let n=this._buff,a=r*3/2+1;a"u"&&(this._readOffset+=r),a}_insertNumberValue(t,r,n,a){return Uh.checkOffsetValue(a),this.ensureInsertable(r,a),t.call(this._buff,n,a),this._writeOffset+=r,this}_writeNumberValue(t,r,n,a){if(typeof a=="number"){if(a<0)throw new Error(Uh.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);Uh.checkOffsetValue(a)}let o=typeof a=="number"?a:this._writeOffset;return this._ensureWriteable(r,o),t.call(this._buff,n,o),typeof a=="number"?this._writeOffset=Math.max(this._writeOffset,o+r):this._writeOffset+=r,this}};Fjr.SmartBuffer=Gjr});var Zjr=H(XE=>{"use strict";Object.defineProperty(XE,"__esModule",{value:!0});XE.SOCKS5_NO_ACCEPTABLE_AUTH=XE.SOCKS5_CUSTOM_AUTH_END=XE.SOCKS5_CUSTOM_AUTH_START=XE.SOCKS_INCOMING_PACKET_SIZES=XE.SocksClientState=XE.Socks5Response=XE.Socks5HostType=XE.Socks5Auth=XE.Socks4Response=XE.SocksCommand=XE.ERRORS=XE.DEFAULT_TIMEOUT=void 0;var ARl=3e4;XE.DEFAULT_TIMEOUT=ARl;var dRl={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};XE.ERRORS=dRl;var pRl={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:e=>e+7,Socks4Response:8};XE.SOCKS_INCOMING_PACKET_SIZES=pRl;var Y_s;(function(e){e[e.connect=1]="connect",e[e.bind=2]="bind",e[e.associate=3]="associate"})(Y_s||(XE.SocksCommand=Y_s={}));var Q_s;(function(e){e[e.Granted=90]="Granted",e[e.Failed=91]="Failed",e[e.Rejected=92]="Rejected",e[e.RejectedIdent=93]="RejectedIdent"})(Q_s||(XE.Socks4Response=Q_s={}));var X_s;(function(e){e[e.NoAuth=0]="NoAuth",e[e.GSSApi=1]="GSSApi",e[e.UserPass=2]="UserPass"})(X_s||(XE.Socks5Auth=X_s={}));var fRl=128;XE.SOCKS5_CUSTOM_AUTH_START=fRl;var IRl=254;XE.SOCKS5_CUSTOM_AUTH_END=IRl;var hRl=255;XE.SOCKS5_NO_ACCEPTABLE_AUTH=hRl;var J_s;(function(e){e[e.Granted=0]="Granted",e[e.Failure=1]="Failure",e[e.NotAllowed=2]="NotAllowed",e[e.NetworkUnreachable=3]="NetworkUnreachable",e[e.HostUnreachable=4]="HostUnreachable",e[e.ConnectionRefused=5]="ConnectionRefused",e[e.TTLExpired=6]="TTLExpired",e[e.CommandNotSupported=7]="CommandNotSupported",e[e.AddressNotSupported=8]="AddressNotSupported"})(J_s||(XE.Socks5Response=J_s={}));var U_s;(function(e){e[e.IPv4=1]="IPv4",e[e.Hostname=3]="Hostname",e[e.IPv6=4]="IPv6"})(U_s||(XE.Socks5HostType=U_s={}));var K_s;(function(e){e[e.Created=0]="Created",e[e.Connecting=1]="Connecting",e[e.Connected=2]="Connected",e[e.SentInitialHandshake=3]="SentInitialHandshake",e[e.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",e[e.SentAuthentication=5]="SentAuthentication",e[e.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",e[e.SentFinalHandshake=7]="SentFinalHandshake",e[e.ReceivedFinalResponse=8]="ReceivedFinalResponse",e[e.BoundWaitingForConnection=9]="BoundWaitingForConnection",e[e.Established=10]="Established",e[e.Disconnected=11]="Disconnected",e[e.Error=99]="Error"})(K_s||(XE.SocksClientState=K_s={}))});var Vjr=H(GFe=>{"use strict";Object.defineProperty(GFe,"__esModule",{value:!0});GFe.shuffleArray=GFe.SocksClientError=void 0;var Ljr=class extends Error{constructor(t,r){super(t),this.options=r}};GFe.SocksClientError=Ljr;function mRl(e){for(let t=e.length-1;t>0;t--){let r=Math.floor(Math.random()*(t+1));[e[t],e[r]]=[e[r],e[t]]}}GFe.shuffleArray=mRl});var Wjr=H(FFe=>{"use strict";Object.defineProperty(FFe,"__esModule",{value:!0});FFe.isCorrect=FFe.isInSubnet=void 0;function CRl(e){return this.subnetMask{"use strict";Object.defineProperty(zj,"__esModule",{value:!0});zj.RE_SUBNET_STRING=zj.RE_ADDRESS=zj.GROUPS=zj.BITS=void 0;zj.BITS=32;zj.GROUPS=4;zj.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;zj.RE_SUBNET_STRING=/\/\d{1,2}$/});var xLt=H(kLt=>{"use strict";Object.defineProperty(kLt,"__esModule",{value:!0});kLt.AddressError=void 0;var Pjr=class extends Error{constructor(t,r){super(t),this.name="AddressError",r!==null&&(this.parseMessage=r)}};kLt.AddressError=Pjr});var Mjr=H((GLt,j_s)=>{(function(){var e,t=0xdeadbeefcafe,r=(t&16777215)==15715070;function n(vr,Zt,bn){vr!=null&&(typeof vr=="number"?this.fromNumber(vr,Zt,bn):Zt==null&&typeof vr!="string"?this.fromString(vr,256):this.fromString(vr,Zt))}function a(){return new n(null)}function o(vr,Zt,bn,ls,oa,Fs){for(;--Fs>=0;){var Oa=Zt*this[vr++]+bn[ls]+oa;oa=Math.floor(Oa/67108864),bn[ls++]=Oa&67108863}return oa}function l(vr,Zt,bn,ls,oa,Fs){for(var Oa=Zt&32767,Ca=Zt>>15;--Fs>=0;){var gd=this[vr]&32767,Dp=this[vr++]>>15,sp=Ca*gd+Dp*Oa;gd=Oa*gd+((sp&32767)<<15)+bn[ls]+(oa&1073741823),oa=(gd>>>30)+(sp>>>15)+Ca*Dp+(oa>>>30),bn[ls++]=gd&1073741823}return oa}function A(vr,Zt,bn,ls,oa,Fs){for(var Oa=Zt&16383,Ca=Zt>>14;--Fs>=0;){var gd=this[vr]&16383,Dp=this[vr++]>>14,sp=Ca*gd+Dp*Oa;gd=Oa*gd+((sp&16383)<<14)+bn[ls]+oa,oa=(gd>>28)+(sp>>14)+Ca*Dp,bn[ls++]=gd&268435455}return oa}var f=typeof navigator<"u";f&&r&&navigator.appName=="Microsoft Internet Explorer"?(n.prototype.am=l,e=30):f&&r&&navigator.appName!="Netscape"?(n.prototype.am=o,e=26):(n.prototype.am=A,e=28),n.prototype.DB=e,n.prototype.DM=(1<=0;--Zt)vr[Zt]=this[Zt];vr.t=this.t,vr.s=this.s}function J(vr){this.t=1,this.s=vr<0?-1:0,vr>0?this[0]=vr:vr<-1?this[0]=vr+this.DV:this.t=0}function ae(vr){var Zt=a();return Zt.fromInt(vr),Zt}function ne(vr,Zt){var bn;if(Zt==16)bn=4;else if(Zt==8)bn=3;else if(Zt==256)bn=8;else if(Zt==2)bn=1;else if(Zt==32)bn=5;else if(Zt==4)bn=2;else{this.fromRadix(vr,Zt);return}this.t=0,this.s=0;for(var ls=vr.length,oa=!1,Fs=0;--ls>=0;){var Oa=bn==8?vr[ls]&255:F(vr,ls);if(Oa<0){vr.charAt(ls)=="-"&&(oa=!0);continue}oa=!1,Fs==0?this[this.t++]=Oa:Fs+bn>this.DB?(this[this.t-1]|=(Oa&(1<>this.DB-Fs):this[this.t-1]|=Oa<=this.DB&&(Fs-=this.DB)}bn==8&&vr[0]&128&&(this.s=-1,Fs>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==vr;)--this.t}function fe(vr){if(this.s<0)return"-"+this.negate().toString(vr);var Zt;if(vr==16)Zt=4;else if(vr==8)Zt=3;else if(vr==2)Zt=1;else if(vr==32)Zt=5;else if(vr==4)Zt=2;else return this.toRadix(vr);var bn=(1<0)for(Ca>Ca)>0&&(oa=!0,Fs=B(ls));Oa>=0;)Ca>(Ca+=this.DB-Zt)):(ls=this[Oa]>>(Ca-=Zt)&bn,Ca<=0&&(Ca+=this.DB,--Oa)),ls>0&&(oa=!0),oa&&(Fs+=B(ls));return oa?Fs:"0"}function ue(){var vr=a();return n.ZERO.subTo(this,vr),vr}function de(){return this.s<0?this.negate():this}function be(vr){var Zt=this.s-vr.s;if(Zt!=0)return Zt;var bn=this.t;if(Zt=bn-vr.t,Zt!=0)return this.s<0?-Zt:Zt;for(;--bn>=0;)if((Zt=this[bn]-vr[bn])!=0)return Zt;return 0}function Se(vr){var Zt=1,bn;return(bn=vr>>>16)!=0&&(vr=bn,Zt+=16),(bn=vr>>8)!=0&&(vr=bn,Zt+=8),(bn=vr>>4)!=0&&(vr=bn,Zt+=4),(bn=vr>>2)!=0&&(vr=bn,Zt+=2),(bn=vr>>1)!=0&&(vr=bn,Zt+=1),Zt}function De(){return this.t<=0?0:this.DB*(this.t-1)+Se(this[this.t-1]^this.s&this.DM)}function k(vr,Zt){var bn;for(bn=this.t-1;bn>=0;--bn)Zt[bn+vr]=this[bn];for(bn=vr-1;bn>=0;--bn)Zt[bn]=0;Zt.t=this.t+vr,Zt.s=this.s}function tt(vr,Zt){for(var bn=vr;bn=0;--Ca)Zt[Ca+Fs+1]=this[Ca]>>ls|Oa,Oa=(this[Ca]&oa)<=0;--Ca)Zt[Ca]=0;Zt[Fs]=Oa,Zt.t=this.t+Fs+1,Zt.s=this.s,Zt.clamp()}function Le(vr,Zt){Zt.s=this.s;var bn=Math.floor(vr/this.DB);if(bn>=this.t){Zt.t=0;return}var ls=vr%this.DB,oa=this.DB-ls,Fs=(1<>ls;for(var Oa=bn+1;Oa>ls;ls>0&&(Zt[this.t-bn-1]|=(this.s&Fs)<>=this.DB;if(vr.t>=this.DB;ls+=this.s}else{for(ls+=this.s;bn>=this.DB;ls-=vr.s}Zt.s=ls<0?-1:0,ls<-1?Zt[bn++]=this.DV+ls:ls>0&&(Zt[bn++]=ls),Zt.t=bn,Zt.clamp()}function ft(vr,Zt){var bn=this.abs(),ls=vr.abs(),oa=bn.t;for(Zt.t=oa+ls.t;--oa>=0;)Zt[oa]=0;for(oa=0;oa=0;)vr[bn]=0;for(bn=0;bn=Zt.DV&&(vr[bn+Zt.t]-=Zt.DV,vr[bn+Zt.t+1]=1)}vr.t>0&&(vr[vr.t-1]+=Zt.am(bn,Zt[bn],vr,2*bn,0,1)),vr.s=0,vr.clamp()}function Ot(vr,Zt,bn){var ls=vr.abs();if(!(ls.t<=0)){var oa=this.abs();if(oa.t0?(ls.lShiftTo(gd,Fs),oa.lShiftTo(gd,bn)):(ls.copyTo(Fs),oa.copyTo(bn));var Dp=Fs.t,sp=Fs[Dp-1];if(sp!=0){var QA=sp*(1<1?Fs[Dp-2]>>this.F2:0),ff=this.FV/QA,Zs=(1<=0&&(bn[bn.t++]=1,bn.subTo(Dr,bn)),n.ONE.dlShiftTo(Dp,Dr),Dr.subTo(Fs,Fs);Fs.t=0;){var On=bn[--Ea]==sp?this.DM:Math.floor(bn[Ea]*ff+(bn[Ea-1]+io)*Zs);if((bn[Ea]+=Fs.am(0,On,bn,Hl,0,Dp))0&&bn.rShiftTo(gd,bn),Oa<0&&n.ZERO.subTo(bn,bn)}}}function Er(vr){var Zt=a();return this.abs().divRemTo(vr,null,Zt),this.s<0&&Zt.compareTo(n.ZERO)>0&&vr.subTo(Zt,Zt),Zt}function Sr(vr){this.m=vr}function jt(vr){return vr.s<0||vr.compareTo(this.m)>=0?vr.mod(this.m):vr}function Bt(vr){return vr}function Dt(vr){vr.divRemTo(this.m,null,vr)}function Fr(vr,Zt,bn){vr.multiplyTo(Zt,bn),this.reduce(bn)}function $t(vr,Zt){vr.squareTo(Zt),this.reduce(Zt)}Sr.prototype.convert=jt,Sr.prototype.revert=Bt,Sr.prototype.reduce=Dt,Sr.prototype.mulTo=Fr,Sr.prototype.sqrTo=$t;function Xt(){if(this.t<1)return 0;var vr=this[0];if(!(vr&1))return 0;var Zt=vr&3;return Zt=Zt*(2-(vr&15)*Zt)&15,Zt=Zt*(2-(vr&255)*Zt)&255,Zt=Zt*(2-((vr&65535)*Zt&65535))&65535,Zt=Zt*(2-vr*Zt%this.DV)%this.DV,Zt>0?this.DV-Zt:-Zt}function lr(vr){this.m=vr,this.mp=vr.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(Zt,Zt),Zt}function Ar(vr){var Zt=a();return vr.copyTo(Zt),this.reduce(Zt),Zt}function qr(vr){for(;vr.t<=this.mt2;)vr[vr.t++]=0;for(var Zt=0;Zt>15)*this.mpl&this.um)<<15)&vr.DM;for(bn=Zt+this.m.t,vr[bn]+=this.m.am(0,ls,vr,Zt,0,this.m.t);vr[bn]>=vr.DV;)vr[bn]-=vr.DV,vr[++bn]++}vr.clamp(),vr.drShiftTo(this.m.t,vr),vr.compareTo(this.m)>=0&&vr.subTo(this.m,vr)}function yn(vr,Zt){vr.squareTo(Zt),this.reduce(Zt)}function ke(vr,Zt,bn){vr.multiplyTo(Zt,bn),this.reduce(bn)}lr.prototype.convert=cr,lr.prototype.revert=Ar,lr.prototype.reduce=qr,lr.prototype.mulTo=ke,lr.prototype.sqrTo=yn;function zt(){return(this.t>0?this[0]&1:this.s)==0}function Fn(vr,Zt){if(vr>4294967295||vr<1)return n.ONE;var bn=a(),ls=a(),oa=Zt.convert(this),Fs=Se(vr)-1;for(oa.copyTo(bn);--Fs>=0;)if(Zt.sqrTo(bn,ls),(vr&1<0)Zt.mulTo(ls,oa,bn);else{var Oa=bn;bn=ls,ls=Oa}return Zt.revert(bn)}function Nn(vr,Zt){var bn;return vr<256||Zt.isEven()?bn=new Sr(Zt):bn=new lr(Zt),this.exp(vr,bn)}n.prototype.copyTo=Q,n.prototype.fromInt=J,n.prototype.fromString=ne,n.prototype.clamp=ce,n.prototype.dlShiftTo=k,n.prototype.drShiftTo=tt,n.prototype.lShiftTo=ze,n.prototype.rShiftTo=Le,n.prototype.subTo=Je,n.prototype.multiplyTo=ft,n.prototype.squareTo=lt,n.prototype.divRemTo=Ot,n.prototype.invDigit=Xt,n.prototype.isEven=zt,n.prototype.exp=Fn,n.prototype.toString=fe,n.prototype.negate=ue,n.prototype.abs=de,n.prototype.compareTo=be,n.prototype.bitLength=De,n.prototype.mod=Er,n.prototype.modPowInt=Nn,n.ZERO=ae(0),n.ONE=ae(1);function Hi(){var vr=a();return this.copyTo(vr),vr}function Ao(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function xi(){return this.t==0?this.s:this[0]<<16>>16}function no(vr){return Math.floor(Math.LN2*this.DB/Math.log(vr))}function ga(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function Ya(vr){if(vr==null&&(vr=10),this.signum()==0||vr<2||vr>36)return"0";var Zt=this.chunkSize(vr),bn=Math.pow(vr,Zt),ls=ae(bn),oa=a(),Fs=a(),Oa="";for(this.divRemTo(ls,oa,Fs);oa.signum()>0;)Oa=(bn+Fs.intValue()).toString(vr).substr(1)+Oa,oa.divRemTo(ls,oa,Fs);return Fs.intValue().toString(vr)+Oa}function Gc(vr,Zt){this.fromInt(0),Zt==null&&(Zt=10);for(var bn=this.chunkSize(Zt),ls=Math.pow(Zt,bn),oa=!1,Fs=0,Oa=0,Ca=0;Ca=bn&&(this.dMultiply(ls),this.dAddOffset(Oa,0),Fs=0,Oa=0)}Fs>0&&(this.dMultiply(Math.pow(Zt,Fs)),this.dAddOffset(Oa,0)),oa&&n.ZERO.subTo(this,this)}function ol(vr,Zt,bn){if(typeof Zt=="number")if(vr<2)this.fromInt(1);else for(this.fromNumber(vr,bn),this.testBit(vr-1)||this.bitwiseTo(n.ONE.shiftLeft(vr-1),Qi,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(Zt);)this.dAddOffset(2,0),this.bitLength()>vr&&this.subTo(n.ONE.shiftLeft(vr-1),this);else{var ls=new Array,oa=vr&7;ls.length=(vr>>3)+1,Zt.nextBytes(ls),oa>0?ls[0]&=(1<0)for(bn>bn)!=(this.s&this.DM)>>bn&&(Zt[oa++]=ls|this.s<=0;)bn<8?(ls=(this[vr]&(1<>(bn+=this.DB-8)):(ls=this[vr]>>(bn-=8)&255,bn<=0&&(bn+=this.DB,--vr)),ls&128&&(ls|=-256),oa==0&&(this.s&128)!=(ls&128)&&++oa,(oa>0||ls!=this.s)&&(Zt[oa++]=ls);return Zt}function Hr(vr){return this.compareTo(vr)==0}function Or(vr){return this.compareTo(vr)<0?this:vr}function Ft(vr){return this.compareTo(vr)>0?this:vr}function zr(vr,Zt,bn){var ls,oa,Fs=Math.min(vr.t,this.t);for(ls=0;ls>=16,Zt+=16),vr&255||(vr>>=8,Zt+=8),vr&15||(vr>>=4,Zt+=4),vr&3||(vr>>=2,Zt+=2),vr&1||++Zt,Zt}function vu(){for(var vr=0;vr=this.t?this.s!=0:(this[Zt]&1<>=this.DB;if(vr.t>=this.DB;ls+=this.s}else{for(ls+=this.s;bn>=this.DB;ls+=vr.s}Zt.s=ls<0?-1:0,ls>0?Zt[bn++]=ls:ls<-1&&(Zt[bn++]=this.DV+ls),Zt.t=bn,Zt.clamp()}function Kl(vr){var Zt=a();return this.addTo(vr,Zt),Zt}function Ju(vr){var Zt=a();return this.subTo(vr,Zt),Zt}function Da(vr){var Zt=a();return this.multiplyTo(vr,Zt),Zt}function fu(){var vr=a();return this.squareTo(vr),vr}function yg(vr){var Zt=a();return this.divRemTo(vr,Zt,null),Zt}function _I(vr){var Zt=a();return this.divRemTo(vr,null,Zt),Zt}function Kh(vr){var Zt=a(),bn=a();return this.divRemTo(vr,Zt,bn),new Array(Zt,bn)}function Ri(vr){this[this.t]=this.am(0,vr-1,this,0,0,this.t),++this.t,this.clamp()}function Do(vr,Zt){if(vr!=0){for(;this.t<=Zt;)this[this.t++]=0;for(this[Zt]+=vr;this[Zt]>=this.DV;)this[Zt]-=this.DV,++Zt>=this.t&&(this[this.t++]=0),++this[Zt]}}function Pt(){}function Hu(vr){return vr}function Ru(vr,Zt,bn){vr.multiplyTo(Zt,bn)}function Vs(vr,Zt){vr.squareTo(Zt)}Pt.prototype.convert=Hu,Pt.prototype.revert=Hu,Pt.prototype.mulTo=Ru,Pt.prototype.sqrTo=Vs;function Uu(vr){return this.exp(vr,new Pt)}function Yn(vr,Zt,bn){var ls=Math.min(this.t+vr.t,Zt);for(bn.s=0,bn.t=ls;ls>0;)bn[--ls]=0;var oa;for(oa=bn.t-this.t;ls=0;)bn[ls]=0;for(ls=Math.max(Zt-this.t,0);ls2*this.m.t)return vr.mod(this.m);if(vr.compareTo(this.m)<0)return vr;var Zt=a();return vr.copyTo(Zt),this.reduce(Zt),Zt}function ZA(vr){return vr}function $i(vr){for(vr.drShiftTo(this.m.t-1,this.r2),vr.t>this.m.t+1&&(vr.t=this.m.t+1,vr.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);vr.compareTo(this.r2)<0;)vr.dAddOffset(1,this.m.t+1);for(vr.subTo(this.r2,vr);vr.compareTo(this.m)>=0;)vr.subTo(this.m,vr)}function gl(vr,Zt){vr.squareTo(Zt),this.reduce(Zt)}function zf(vr,Zt,bn){vr.multiplyTo(Zt,bn),this.reduce(bn)}Sg.prototype.convert=HA,Sg.prototype.revert=ZA,Sg.prototype.reduce=$i,Sg.prototype.mulTo=zf,Sg.prototype.sqrTo=gl;function zd(vr,Zt){var bn=vr.bitLength(),ls,oa=ae(1),Fs;if(bn<=0)return oa;bn<18?ls=1:bn<48?ls=3:bn<144?ls=4:bn<768?ls=5:ls=6,bn<8?Fs=new Sr(Zt):Zt.isEven()?Fs=new Sg(Zt):Fs=new lr(Zt);var Oa=new Array,Ca=3,gd=ls-1,Dp=(1<1){var sp=a();for(Fs.sqrTo(Oa[1],sp);Ca<=Dp;)Oa[Ca]=a(),Fs.mulTo(sp,Oa[Ca-2],Oa[Ca]),Ca+=2}var QA=vr.t-1,ff,Zs=!0,io=a(),Ea;for(bn=Se(vr[QA])-1;QA>=0;){for(bn>=gd?ff=vr[QA]>>bn-gd&Dp:(ff=(vr[QA]&(1<0&&(ff|=vr[QA-1]>>this.DB+bn-gd)),Ca=ls;!(ff&1);)ff>>=1,--Ca;if((bn-=Ca)<0&&(bn+=this.DB,--QA),Zs)Oa[ff].copyTo(oa),Zs=!1;else{for(;Ca>1;)Fs.sqrTo(oa,io),Fs.sqrTo(io,oa),Ca-=2;Ca>0?Fs.sqrTo(oa,io):(Ea=oa,oa=io,io=Ea),Fs.mulTo(io,Oa[ff],oa)}for(;QA>=0&&!(vr[QA]&1<0&&(Zt.rShiftTo(Fs,Zt),bn.rShiftTo(Fs,bn));Zt.signum()>0;)(oa=Zt.getLowestSetBit())>0&&Zt.rShiftTo(oa,Zt),(oa=bn.getLowestSetBit())>0&&bn.rShiftTo(oa,bn),Zt.compareTo(bn)>=0?(Zt.subTo(bn,Zt),Zt.rShiftTo(1,Zt)):(bn.subTo(Zt,bn),bn.rShiftTo(1,bn));return Fs>0&&bn.lShiftTo(Fs,bn),bn}function so(vr){if(vr<=0)return 0;var Zt=this.DV%vr,bn=this.s<0?vr-1:0;if(this.t>0)if(Zt==0)bn=this[0]%vr;else for(var ls=this.t-1;ls>=0;--ls)bn=(Zt*bn+this[ls])%vr;return bn}function Ki(vr){var Zt=vr.isEven();if(this.isEven()&&Zt||vr.signum()==0)return n.ZERO;for(var bn=vr.clone(),ls=this.clone(),oa=ae(1),Fs=ae(0),Oa=ae(0),Ca=ae(1);bn.signum()!=0;){for(;bn.isEven();)bn.rShiftTo(1,bn),Zt?((!oa.isEven()||!Fs.isEven())&&(oa.addTo(this,oa),Fs.subTo(vr,Fs)),oa.rShiftTo(1,oa)):Fs.isEven()||Fs.subTo(vr,Fs),Fs.rShiftTo(1,Fs);for(;ls.isEven();)ls.rShiftTo(1,ls),Zt?((!Oa.isEven()||!Ca.isEven())&&(Oa.addTo(this,Oa),Ca.subTo(vr,Ca)),Oa.rShiftTo(1,Oa)):Ca.isEven()||Ca.subTo(vr,Ca),Ca.rShiftTo(1,Ca);bn.compareTo(ls)>=0?(bn.subTo(ls,bn),Zt&&oa.subTo(Oa,oa),Fs.subTo(Ca,Fs)):(ls.subTo(bn,ls),Zt&&Oa.subTo(oa,Oa),Ca.subTo(Fs,Ca))}if(ls.compareTo(n.ONE)!=0)return n.ZERO;if(Ca.compareTo(vr)>=0)return Ca.subtract(vr);if(Ca.signum()<0)Ca.addTo(vr,Ca);else return Ca;return Ca.signum()<0?Ca.add(vr):Ca}var cc=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Xs=(1<<26)/cc[cc.length-1];function ws(vr){var Zt,bn=this.abs();if(bn.t==1&&bn[0]<=cc[cc.length-1]){for(Zt=0;Zt>1,vr>cc.length&&(vr=cc.length);for(var oa=a(),Fs=0;Fs>8&255,Dc[As++]^=vr>>16&255,Dc[As++]^=vr>>24&255,As>=YA&&(As-=YA)}function Am(){Nf(new Date().getTime())}if(Dc==null){Dc=new Array,As=0;var Zl;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var rc=new Uint8Array(32);for(window.crypto.getRandomValues(rc),Zl=0;Zl<32;++Zl)Dc[As++]=rc[Zl]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var ad=window.crypto.random(32);for(Zl=0;Zl>>8,Dc[As++]=Zl&255;As=0,Am()}function Qm(){if(Ma==null){for(Am(),Ma=Yp(),Ma.init(Dc),As=0;As{(function(){"use strict";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(l){return n(o(l),arguments)}function r(l,A){return t.apply(null,[l].concat(A||[]))}function n(l,A){var f=1,I=l.length,C,b="",E,N,B,F,Q,J,ae,ne;for(E=0;E=0),B.type){case"b":C=parseInt(C,10).toString(2);break;case"c":C=String.fromCharCode(parseInt(C,10));break;case"d":case"i":C=parseInt(C,10);break;case"j":C=JSON.stringify(C,null,B.width?parseInt(B.width):0);break;case"e":C=B.precision?parseFloat(C).toExponential(B.precision):parseFloat(C).toExponential();break;case"f":C=B.precision?parseFloat(C).toFixed(B.precision):parseFloat(C);break;case"g":C=B.precision?String(Number(C.toPrecision(B.precision))):parseFloat(C);break;case"o":C=(parseInt(C,10)>>>0).toString(8);break;case"s":C=String(C),C=B.precision?C.substring(0,B.precision):C;break;case"t":C=String(!!C),C=B.precision?C.substring(0,B.precision):C;break;case"T":C=Object.prototype.toString.call(C).slice(8,-1).toLowerCase(),C=B.precision?C.substring(0,B.precision):C;break;case"u":C=parseInt(C,10)>>>0;break;case"v":C=C.valueOf(),C=B.precision?C.substring(0,B.precision):C;break;case"x":C=(parseInt(C,10)>>>0).toString(16);break;case"X":C=(parseInt(C,10)>>>0).toString(16).toUpperCase();break}e.json.test(B.type)?b+=C:(e.number.test(B.type)&&(!ae||B.sign)?(ne=ae?"+":"-",C=C.toString().replace(e.sign,"")):ne="",Q=B.pad_char?B.pad_char==="0"?"0":B.pad_char.charAt(1):" ",J=B.width-(ne+C).length,F=B.width&&J>0?Q.repeat(J):"",b+=B.align?ne+C+F:Q==="0"?ne+F+C:F+ne+C)}return b}var a=Object.create(null);function o(l){if(a[l])return a[l];for(var A=l,f,I=[],C=0;A;){if((f=e.text.exec(A))!==null)I.push(f[0]);else if((f=e.modulo.exec(A))!==null)I.push("%");else if((f=e.placeholder.exec(A))!==null){if(f[2]){C|=1;var b=[],E=f[2],N=[];if((N=e.key.exec(E))!==null)for(b.push(N[1]);(E=E.substring(N[0].length))!=="";)if((N=e.key_access.exec(E))!==null)b.push(N[1]);else if((N=e.index_access.exec(E))!==null)b.push(N[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=b}else C|=2;if(C===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");I.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");A=A.substring(f[0].length)}return a[l]=I}typeof FLt<"u"&&(FLt.sprintf=t,FLt.vsprintf=r),typeof window<"u"&&(window.sprintf=t,window.vsprintf=r,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:r}}))})()});var Yjr=H(qj=>{"use strict";var yRl=qj&&qj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bRl=qj&&qj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),$_s=qj&&qj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&yRl(t,e,r);return bRl(t,e),t};Object.defineProperty(qj,"__esModule",{value:!0});qj.Address4=void 0;var z_s=$_s(Wjr()),IJ=$_s(Ojr()),q_s=xLt(),Hze=Mjr(),ZFe=Mze(),Hjr=class e{constructor(t){this.groups=IJ.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=z_s.isCorrect(IJ.BITS),this.isInSubnet=z_s.isInSubnet,this.address=t;let r=IJ.RE_SUBNET_STRING.exec(t);if(r){if(this.parsedSubnet=r[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>IJ.BITS)throw new q_s.AddressError("Invalid subnet mask.");t=t.replace(IJ.RE_SUBNET_STRING,"")}this.addressMinusSuffix=t,this.parsedAddress=this.parse(t)}static isValid(t){try{return new e(t),!0}catch{return!1}}parse(t){let r=t.split(".");if(!t.match(IJ.RE_ADDRESS))throw new q_s.AddressError("Invalid IPv4 address.");return r}correctForm(){return this.parsedAddress.map(t=>parseInt(t,10)).join(".")}static fromHex(t){let r=t.replace(/:/g,"").padStart(8,"0"),n=[],a;for(a=0;a<8;a+=2){let o=r.slice(a,a+2);n.push(parseInt(o,16))}return new e(n.join("."))}static fromInteger(t){return e.fromHex(t.toString(16))}static fromArpa(t){let n=t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new e(n)}toHex(){return this.parsedAddress.map(t=>(0,ZFe.sprintf)("%02x",parseInt(t,10))).join(":")}toArray(){return this.parsedAddress.map(t=>parseInt(t,10))}toGroup6(){let t=[],r;for(r=0;r(0,ZFe.sprintf)("%02x",parseInt(t,10))).join(""),16)}_startAddress(){return new Hze.BigInteger(this.mask()+"0".repeat(IJ.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new Hze.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new Hze.BigInteger(this.mask()+"1".repeat(IJ.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new Hze.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}static fromBigInteger(t){return e.fromInteger(parseInt(t.toString(),10))}mask(t){return t===void 0&&(t=this.subnetMask),this.getBitsBase2(0,t)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}reverseForm(t){t||(t={});let r=this.correctForm().split(".").reverse().join(".");return t.omitSuffix?r:(0,ZFe.sprintf)("%s.in-addr.arpa.",r)}isMulticast(){return this.isInSubnet(new e("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(IJ.BITS,"0")}groupForV6(){let t=this.parsedAddress;return this.address.replace(IJ.RE_ADDRESS,(0,ZFe.sprintf)('%s.%s',t.slice(0,2).join("."),t.slice(2,4).join(".")))}};qj.Address4=Hjr});var Qjr=H(aB=>{"use strict";Object.defineProperty(aB,"__esModule",{value:!0});aB.RE_URL_WITH_PORT=aB.RE_URL=aB.RE_ZONE_STRING=aB.RE_SUBNET_STRING=aB.RE_BAD_ADDRESS=aB.RE_BAD_CHARACTERS=aB.TYPES=aB.SCOPES=aB.GROUPS=aB.BITS=void 0;aB.BITS=128;aB.GROUPS=8;aB.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};aB.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};aB.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;aB.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;aB.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;aB.RE_ZONE_STRING=/%.*$/;aB.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/);aB.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)});var Xjr=H($j=>{"use strict";Object.defineProperty($j,"__esModule",{value:!0});$j.simpleGroup=$j.spanLeadingZeroes=$j.spanAll=$j.spanAllZeroes=void 0;var e0s=Mze();function t0s(e){return e.replace(/(0+)/g,'$1')}$j.spanAllZeroes=t0s;function ERl(e,t=0){return e.split("").map((n,a)=>(0,e0s.sprintf)('%s',n,a+t,t0s(n))).join("")}$j.spanAll=ERl;function r0s(e){return e.replace(/^(0+)/,'$1')}function SRl(e){return e.split(":").map(r=>r0s(r)).join(":")}$j.spanLeadingZeroes=SRl;function vRl(e,t=0){return e.split(":").map((n,a)=>/group-v4/.test(n)?n:(0,e0s.sprintf)('%s',a+t,r0s(n)))}$j.simpleGroup=vRl});var n0s=H(ND=>{"use strict";var BRl=ND&&ND.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wRl=ND&&ND.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),TRl=ND&&ND.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&BRl(t,e,r);return wRl(t,e),t};Object.defineProperty(ND,"__esModule",{value:!0});ND.possibleElisions=ND.simpleRegularExpression=ND.ADDRESS_BOUNDARY=ND.padGroup=ND.groupPossibilities=void 0;var RRl=TRl(Qjr()),LFe=Mze();function LLt(e){return(0,LFe.sprintf)("(%s)",e.join("|"))}ND.groupPossibilities=LLt;function ZLt(e){return e.length<4?(0,LFe.sprintf)("0{0,%d}%s",4-e.length,e):e}ND.padGroup=ZLt;ND.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function NRl(e){let t=[];e.forEach((n,a)=>{parseInt(n,16)===0&&t.push(a)});let r=t.map(n=>e.map((a,o)=>{if(o===n){let l=o===0||o===RRl.GROUPS-1?":":"";return LLt([ZLt(a),l])}return ZLt(a)}).join(":"));return r.push(e.map(ZLt).join(":")),LLt(r)}ND.simpleRegularExpression=NRl;function DRl(e,t,r){let n=t?"":":",a=r?"":":",o=[];!t&&!r&&o.push("::"),t&&r&&o.push(""),(r&&!t||!r&&t)&&o.push(":"),o.push((0,LFe.sprintf)("%s(:0{1,4}){1,%d}",n,e-1)),o.push((0,LFe.sprintf)("(0{1,4}:){1,%d}%s",e-1,a)),o.push((0,LFe.sprintf)("(0{1,4}:){%d}0{1,4}",e-1));for(let l=1;l{"use strict";var kRl=e7&&e7.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xRl=e7&&e7.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),WLt=e7&&e7.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&kRl(t,e,r);return xRl(t,e),t};Object.defineProperty(e7,"__esModule",{value:!0});e7.Address6=void 0;var i0s=WLt(Wjr()),Jjr=WLt(Ojr()),JE=WLt(Qjr()),Ujr=WLt(Xjr()),sye=Yjr(),oye=n0s(),vre=xLt(),yL=Mjr(),bL=Mze();function VLt(e){if(!e)throw new Error("Assertion failed.")}function GRl(e){let t=/(\d+)(\d{3})/;for(;t.test(e);)e=e.replace(t,"$1,$2");return e}function FRl(e){return e=e.replace(/^(0{1,})([1-9]+)$/,'$1$2'),e=e.replace(/^(0{1,})(0)$/,'$1$2'),e}function ZRl(e,t){let r=[],n=[],a;for(a=0;at[1]&&n.push(e[a]);return r.concat(["compact"]).concat(n)}function s0s(e){return(0,bL.sprintf)("%04x",parseInt(e,16))}function o0s(e){return e&255}var Kjr=class e{constructor(t,r){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=i0s.isInSubnet,this.isCorrect=i0s.isCorrect(JE.BITS),r===void 0?this.groups=JE.GROUPS:this.groups=r,this.address=t;let n=JE.RE_SUBNET_STRING.exec(t);if(n){if(this.parsedSubnet=n[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>JE.BITS)throw new vre.AddressError("Invalid subnet mask.");t=t.replace(JE.RE_SUBNET_STRING,"")}else if(/\//.test(t))throw new vre.AddressError("Invalid subnet mask.");let a=JE.RE_ZONE_STRING.exec(t);a&&(this.zone=a[0],t=t.replace(JE.RE_ZONE_STRING,"")),this.addressMinusSuffix=t,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(t){try{return new e(t),!0}catch{return!1}}static fromBigInteger(t){let r=t.toString(16).padStart(32,"0"),n=[],a;for(a=0;a65536)&&(n=null)):n=null,{address:new e(r),port:n}}static fromAddress4(t){let r=new sye.Address4(t),n=JE.BITS-(Jjr.BITS-r.subnetMask);return new e(`::ffff:${r.correctForm()}/${n}`)}static fromArpa(t){let r=t.replace(/(\.ip6\.arpa)?\.$/,""),n=7;if(r.length!==63)throw new vre.AddressError("Invalid 'ip6.arpa' form.");let a=r.split(".").reverse();for(let o=n;o>0;o--){let l=o*4;a.splice(l,0,":")}return r=a.join(""),new e(r)}microsoftTranscription(){return(0,bL.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(t=this.subnetMask){return this.getBitsBase2(0,t)}possibleSubnets(t=128){let r=JE.BITS-this.subnetMask,n=Math.abs(t-JE.BITS),a=r-n;return a<0?"0":GRl(new yL.BigInteger("2",10).pow(a).toString(10))}_startAddress(){return new yL.BigInteger(this.mask()+"0".repeat(JE.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new yL.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new yL.BigInteger(this.mask()+"1".repeat(JE.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new yL.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}getScope(){let t=JE.SCOPES[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&t!=="Link local"&&(t="Global"),t||"Unknown"}getType(){for(let t of Object.keys(JE.TYPES))if(this.isInSubnet(new e(t)))return JE.TYPES[t];return"Global unicast"}getBits(t,r){return new yL.BigInteger(this.getBitsBase2(t,r),2)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}getBitsBase16(t,r){let n=r-t;if(n%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(t,r).toString(16).padStart(n/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,JE.BITS)}reverseForm(t){t||(t={});let r=Math.floor(this.subnetMask/4),n=this.canonicalForm().replace(/:/g,"").split("").slice(0,r).reverse().join(".");return r>0?t.omitSuffix?n:(0,bL.sprintf)("%s.ip6.arpa.",n):t.omitSuffix?"":"ip6.arpa."}correctForm(){let t,r=[],n=0,a=[];for(t=0;t0&&(n>1&&a.push([t-n,t-1]),n=0)}n>1&&a.push([this.parsedAddress.length-n,this.parsedAddress.length-1]);let o=a.map(A=>A[1]-A[0]+1);if(a.length>0){let A=o.indexOf(Math.max(...o));r=ZRl(this.parsedAddress,a[A])}else r=this.parsedAddress;for(t=0;t1?"s":"",r.join("")),t.replace(JE.RE_BAD_CHARACTERS,'$1'));let n=t.match(JE.RE_BAD_ADDRESS);if(n)throw new vre.AddressError((0,bL.sprintf)("Address failed regex: %s",n.join("")),t.replace(JE.RE_BAD_ADDRESS,'$1'));let a=[],o=t.split("::");if(o.length===2){let l=o[0].split(":"),A=o[1].split(":");l.length===1&&l[0]===""&&(l=[]),A.length===1&&A[0]===""&&(A=[]);let f=this.groups-(l.length+A.length);if(!f)throw new vre.AddressError("Error parsing groups");this.elidedGroups=f,this.elisionBegin=l.length,this.elisionEnd=l.length+this.elidedGroups,a=a.concat(l);for(let I=0;I(0,bL.sprintf)("%x",parseInt(l,16))),a.length!==this.groups)throw new vre.AddressError("Incorrect number of groups found");return a}canonicalForm(){return this.parsedAddress.map(s0s).join(":")}decimal(){return this.parsedAddress.map(t=>(0,bL.sprintf)("%05d",parseInt(t,16))).join(":")}bigInteger(){return new yL.BigInteger(this.parsedAddress.map(s0s).join(""),16)}to4(){let t=this.binaryZeroPad().split("");return sye.Address4.fromHex(new yL.BigInteger(t.slice(96,128).join(""),2).toString(16))}to4in6(){let t=this.to4(),n=new e(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),a="";return/:$/.test(n)||(a=":"),n+a+t.address}inspectTeredo(){let t=this.getBitsBase16(0,32),r=this.getBits(80,96).xor(new yL.BigInteger("ffff",16)).toString(),n=sye.Address4.fromHex(this.getBitsBase16(32,64)),a=sye.Address4.fromHex(this.getBits(96,128).xor(new yL.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),l=this.getBitsBase2(64,80),A=o.testBit(15),f=o.testBit(14),I=o.testBit(8),C=o.testBit(9),b=new yL.BigInteger(l.slice(2,6)+l.slice(8,16),2).toString(10);return{prefix:(0,bL.sprintf)("%s:%s",t.slice(0,4),t.slice(4,8)),server4:n.address,client4:a.address,flags:l,coneNat:A,microsoft:{reserved:f,universalLocal:C,groupIndividual:I,nonce:b},udpPort:r}}inspect6to4(){let t=this.getBitsBase16(0,16),r=sye.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,bL.sprintf)("%s",t.slice(0,4)),gateway:r.address}}to6to4(){if(!this.is4())return null;let t=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new e(t)}toByteArray(){let t=this.bigInteger().toByteArray();return t.length===17&&t[0]===0?t.slice(1):t}toUnsignedByteArray(){return this.toByteArray().map(o0s)}static fromByteArray(t){return this.fromUnsignedByteArray(t.map(o0s))}static fromUnsignedByteArray(t){let r=new yL.BigInteger("256",10),n=new yL.BigInteger("0",10),a=new yL.BigInteger("1",10);for(let o=t.length-1;o>=0;o--)n=n.add(a.multiply(new yL.BigInteger(t[o].toString(10),10))),a=a.multiply(r);return e.fromBigInteger(n)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new e("2001::/32"))}is6to4(){return this.isInSubnet(new e("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(t){return t===void 0?t="":t=(0,bL.sprintf)(":%s",t),(0,bL.sprintf)("http://[%s]%s/",this.correctForm(),t)}link(t){t||(t={}),t.className===void 0&&(t.className=""),t.prefix===void 0&&(t.prefix="/#address="),t.v4===void 0&&(t.v4=!1);let r=this.correctForm;return t.v4&&(r=this.to4in6),t.className?(0,bL.sprintf)('%2$s',t.prefix,r.call(this),t.className):(0,bL.sprintf)('%2$s',t.prefix,r.call(this))}group(){if(this.elidedGroups===0)return Ujr.simpleGroup(this.address).join(":");VLt(typeof this.elidedGroups=="number"),VLt(typeof this.elisionBegin=="number");let t=[],[r,n]=this.address.split("::");r.length?t.push(...Ujr.simpleGroup(r)):t.push("");let a=["hover-group"];for(let o=this.elisionBegin;o',a.join(" "))),n.length?t.push(...Ujr.simpleGroup(n,this.elisionEnd)):t.push(""),this.is4()&&(VLt(this.address4 instanceof sye.Address4),t.pop(),t.push(this.address4.groupForV6())),t.join(":")}regularExpressionString(t=!1){let r=[],n=new e(this.correctForm());if(n.elidedGroups===0)r.push((0,oye.simpleRegularExpression)(n.parsedAddress));else if(n.elidedGroups===JE.GROUPS)r.push((0,oye.possibleElisions)(JE.GROUPS));else{let a=n.address.split("::");a[0].length&&r.push((0,oye.simpleRegularExpression)(a[0].split(":"))),VLt(typeof n.elidedGroups=="number"),r.push((0,oye.possibleElisions)(n.elidedGroups,a[0].length!==0,a[1].length!==0)),a[1].length&&r.push((0,oye.simpleRegularExpression)(a[1].split(":"))),r=[r.join(":")]}return t||(r=["(?=^|",oye.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...r,")(?=[^\\w\\:]|",oye.ADDRESS_BOUNDARY,"|$)"]),r.join("")}regularExpression(t=!1){return new RegExp(this.regularExpressionString(t),"i")}};e7.Address6=Kjr});var jjr=H(dF=>{"use strict";var LRl=dF&&dF.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),VRl=dF&&dF.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),WRl=dF&&dF.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&LRl(t,e,r);return VRl(t,e),t};Object.defineProperty(dF,"__esModule",{value:!0});dF.v6=dF.AddressError=dF.Address6=dF.Address4=void 0;var ORl=Yjr();Object.defineProperty(dF,"Address4",{enumerable:!0,get:function(){return ORl.Address4}});var PRl=a0s();Object.defineProperty(dF,"Address6",{enumerable:!0,get:function(){return PRl.Address6}});var MRl=xLt();Object.defineProperty(dF,"AddressError",{enumerable:!0,get:function(){return MRl.AddressError}});var HRl=WRl(Xjr());dF.v6={helpers:HRl}});var d0s=H(iY=>{"use strict";Object.defineProperty(iY,"__esModule",{value:!0});iY.ipToBuffer=iY.int32ToIpv4=iY.ipv4ToInt32=iY.validateSocksClientChainOptions=iY.validateSocksClientOptions=void 0;var EL=Vjr(),DD=Zjr(),YRl=Et("stream"),zjr=jjr(),c0s=Et("net");function QRl(e,t=["connect","bind","associate"]){if(!DD.SocksCommand[e.command])throw new EL.SocksClientError(DD.ERRORS.InvalidSocksCommand,e);if(t.indexOf(e.command)===-1)throw new EL.SocksClientError(DD.ERRORS.InvalidSocksCommandForOperation,e);if(!u0s(e.destination))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!g0s(e.proxy))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsProxy,e);if(l0s(e.proxy,e),e.timeout&&!A0s(e.timeout))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsTimeout,e);if(e.existing_socket&&!(e.existing_socket instanceof YRl.Duplex))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsExistingSocket,e)}iY.validateSocksClientOptions=QRl;function XRl(e){if(e.command!=="connect")throw new EL.SocksClientError(DD.ERRORS.InvalidSocksCommandChain,e);if(!u0s(e.destination))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!(e.proxies&&Array.isArray(e.proxies)&&e.proxies.length>=2))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsProxiesLength,e);if(e.proxies.forEach(t=>{if(!g0s(t))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsProxy,e);l0s(t,e)}),e.timeout&&!A0s(e.timeout))throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsTimeout,e)}iY.validateSocksClientChainOptions=XRl;function l0s(e,t){if(e.custom_auth_method!==void 0){if(e.custom_auth_methodDD.SOCKS5_CUSTOM_AUTH_END)throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsCustomAuthRange,t);if(e.custom_auth_request_handler===void 0||typeof e.custom_auth_request_handler!="function")throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_size===void 0)throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_handler===void 0||typeof e.custom_auth_response_handler!="function")throw new EL.SocksClientError(DD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t)}}function u0s(e){return e&&typeof e.host=="string"&&typeof e.port=="number"&&e.port>=0&&e.port<=65535}function g0s(e){return e&&(typeof e.host=="string"||typeof e.ipaddress=="string")&&typeof e.port=="number"&&e.port>=0&&e.port<=65535&&(e.type===4||e.type===5)}function A0s(e){return typeof e=="number"&&e>0}function JRl(e){return new zjr.Address4(e).toArray().reduce((r,n)=>(r<<8)+n,0)}iY.ipv4ToInt32=JRl;function URl(e){let t=e>>>24&255,r=e>>>16&255,n=e>>>8&255,a=e&255;return[t,r,n,a].join(".")}iY.int32ToIpv4=URl;function KRl(e){if(c0s.isIPv4(e)){let t=new zjr.Address4(e);return Buffer.from(t.toArray())}else if(c0s.isIPv6(e)){let t=new zjr.Address6(e);return Buffer.from(t.canonicalForm().split(":").map(r=>r.padStart(4,"0")).join(""),"hex")}else throw new Error("Invalid IP address format")}iY.ipToBuffer=KRl});var p0s=H(OLt=>{"use strict";Object.defineProperty(OLt,"__esModule",{value:!0});OLt.ReceiveBuffer=void 0;var qjr=class{constructor(t=4096){this.buffer=Buffer.allocUnsafe(t),this.offset=0,this.originalSize=t}get length(){return this.offset}append(t){if(!Buffer.isBuffer(t))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+t.length>=this.buffer.length){let r=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+t.length)),r.copy(this.buffer)}return t.copy(this.buffer,this.offset),this.offset+=t.length}peek(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,t)}get(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");let r=Buffer.allocUnsafe(t);return this.buffer.slice(0,t).copy(r),this.buffer.copyWithin(0,t,t+this.offset-t),this.offset-=t,r}};OLt.ReceiveBuffer=qjr});var f0s=H(lge=>{"use strict";var VFe=lge&&lge.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(lge,"__esModule",{value:!0});lge.SocksClientError=lge.SocksClient=void 0;var jRl=Et("events"),WFe=Et("net"),cW=H_s(),uu=Zjr(),r3=d0s(),zRl=p0s(),e7r=Vjr();Object.defineProperty(lge,"SocksClientError",{enumerable:!0,get:function(){return e7r.SocksClientError}});var $jr=jjr(),t7r=class e extends jRl.EventEmitter{constructor(t){super(),this.options=Object.assign({},t),(0,r3.validateSocksClientOptions)(t),this.setState(uu.SocksClientState.Created)}static createConnection(t,r){return new Promise((n,a)=>{try{(0,r3.validateSocksClientOptions)(t,["connect"])}catch(l){return typeof r=="function"?(r(l),n(l)):a(l)}let o=new e(t);o.connect(t.existing_socket),o.once("established",l=>{o.removeAllListeners(),typeof r=="function"&&r(null,l),n(l)}),o.once("error",l=>{o.removeAllListeners(),typeof r=="function"?(r(l),n(l)):a(l)})})}static createConnectionChain(t,r){return new Promise((n,a)=>VFe(this,void 0,void 0,function*(){try{(0,r3.validateSocksClientChainOptions)(t)}catch(o){return typeof r=="function"?(r(o),n(o)):a(o)}t.randomizeChain&&(0,e7r.shuffleArray)(t.proxies);try{let o;for(let l=0;lthis.onDataReceivedHandler(n),this.onClose=()=>this.onCloseHandler(),this.onError=n=>this.onErrorHandler(n),this.onConnect=()=>this.onConnectHandler();let r=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||uu.DEFAULT_TIMEOUT);r.unref&&typeof r.unref=="function"&&r.unref(),t?this.socket=t:this.socket=new WFe.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(uu.SocksClientState.Connecting),this.receiveBuffer=new zRl.ReceiveBuffer,t?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",n=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let a=this.receiveBuffer.get(this.receiveBuffer.length);n.socket.emit("data",a)}n.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==uu.SocksClientState.Established&&this.state!==uu.SocksClientState.BoundWaitingForConnection&&this.closeSocket(uu.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState(uu.SocksClientState.Connected),this.options.proxy.type===4?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState(uu.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(t){this.receiveBuffer.append(t),this.processData()}processData(){for(;this.state!==uu.SocksClientState.Established&&this.state!==uu.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===uu.SocksClientState.SentInitialHandshake)this.options.proxy.type===4?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===uu.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===uu.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===uu.SocksClientState.BoundWaitingForConnection)this.options.proxy.type===4?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(uu.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(uu.ERRORS.SocketClosed)}onErrorHandler(t){this.closeSocket(t.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(t){this.state!==uu.SocksClientState.Error&&(this.setState(uu.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new e7r.SocksClientError(t,this.options)))}sendSocks4InitialHandshake(){let t=this.options.proxy.userId||"",r=new cW.SmartBuffer;r.writeUInt8(4),r.writeUInt8(uu.SocksCommand[this.options.command]),r.writeUInt16BE(this.options.destination.port),WFe.isIPv4(this.options.destination.host)?(r.writeBuffer((0,r3.ipToBuffer)(this.options.destination.host)),r.writeStringNT(t)):(r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(1),r.writeStringNT(t),r.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(r.toBuffer())}handleSocks4FinalHandshakeResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==uu.Socks4Response.Granted)this.closeSocket(`${uu.ERRORS.Socks4ProxyRejectedConnection} - (${uu.Socks4Response[t[1]]})`);else if(uu.SocksCommand[this.options.command]===uu.SocksCommand.bind){let r=cW.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,r3.int32ToIpv4)(r.readUInt32BE())};n.host==="0.0.0.0"&&(n.host=this.options.proxy.ipaddress),this.setState(uu.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:n,socket:this.socket})}else this.setState(uu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==uu.Socks4Response.Granted)this.closeSocket(`${uu.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${uu.Socks4Response[t[1]]})`);else{let r=cW.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,r3.int32ToIpv4)(r.readUInt32BE())};this.setState(uu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:n,socket:this.socket})}}sendSocks5InitialHandshake(){let t=new cW.SmartBuffer,r=[uu.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&r.push(uu.Socks5Auth.UserPass),this.options.proxy.custom_auth_method!==void 0&&r.push(this.options.proxy.custom_auth_method),t.writeUInt8(5),t.writeUInt8(r.length);for(let n of r)t.writeUInt8(n);this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(t.toBuffer()),this.setState(uu.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let t=this.receiveBuffer.get(2);t[0]!==5?this.closeSocket(uu.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):t[1]===uu.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket(uu.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):t[1]===uu.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=uu.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):t[1]===uu.Socks5Auth.UserPass?(this.socks5ChosenAuthType=uu.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):t[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket(uu.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let t=this.options.proxy.userId||"",r=this.options.proxy.password||"",n=new cW.SmartBuffer;n.writeUInt8(1),n.writeUInt8(Buffer.byteLength(t)),n.writeString(t),n.writeUInt8(Buffer.byteLength(r)),n.writeString(r),this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(n.toBuffer()),this.setState(uu.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return VFe(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(uu.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(t){return VFe(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(t)})}handleSocks5AuthenticationNoAuthHandshakeResponse(t){return VFe(this,void 0,void 0,function*(){return t[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(t){return VFe(this,void 0,void 0,function*(){return t[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return VFe(this,void 0,void 0,function*(){this.setState(uu.SocksClientState.ReceivedAuthenticationResponse);let t=!1;this.socks5ChosenAuthType===uu.Socks5Auth.NoAuth?t=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===uu.Socks5Auth.UserPass?t=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(t=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),t?this.sendSocks5CommandRequest():this.closeSocket(uu.ERRORS.Socks5AuthenticationFailed)})}sendSocks5CommandRequest(){let t=new cW.SmartBuffer;t.writeUInt8(5),t.writeUInt8(uu.SocksCommand[this.options.command]),t.writeUInt8(0),WFe.isIPv4(this.options.destination.host)?(t.writeUInt8(uu.Socks5HostType.IPv4),t.writeBuffer((0,r3.ipToBuffer)(this.options.destination.host))):WFe.isIPv6(this.options.destination.host)?(t.writeUInt8(uu.Socks5HostType.IPv6),t.writeBuffer((0,r3.ipToBuffer)(this.options.destination.host))):(t.writeUInt8(uu.Socks5HostType.Hostname),t.writeUInt8(this.options.destination.host.length),t.writeString(this.options.destination.host)),t.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(t.toBuffer()),this.setState(uu.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let t=this.receiveBuffer.peek(5);if(t[0]!==5||t[1]!==uu.Socks5Response.Granted)this.closeSocket(`${uu.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${uu.Socks5Response[t[1]]}`);else{let r=t[3],n,a;if(r===uu.Socks5HostType.IPv4){let o=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length{"use strict";var qRl=aye&&aye.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$Rl=aye&&aye.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qRl(t,e,r)};Object.defineProperty(aye,"__esModule",{value:!0});$Rl(f0s(),aye)});var m0s=H(sY=>{"use strict";var eNl=sY&&sY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),tNl=sY&&sY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),h0s=sY&&sY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&eNl(t,e,r);return tNl(t,e),t},rNl=sY&&sY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sY,"__esModule",{value:!0});sY.SocksProxyAgent=void 0;var nNl=I0s(),iNl=Oze(),sNl=rNl(fT()),oNl=h0s(Et("dns")),aNl=h0s(Et("tls")),cNl=Et("url"),PLt=(0,sNl.default)("socks-proxy-agent");function lNl(e){let t=!1,r=5,n=e.hostname,a=parseInt(e.port,10)||1080;switch(e.protocol.replace(":","")){case"socks4":t=!0,r=4;break;case"socks4a":r=4;break;case"socks5":t=!0,r=5;break;case"socks":r=5;break;case"socks5h":r=5;break;default:throw new TypeError(`A "socks" protocol must be specified! Got: ${String(e.protocol)}`)}let o={host:n,port:a,type:r};return e.username&&Object.defineProperty(o,"userId",{value:decodeURIComponent(e.username),enumerable:!1}),e.password!=null&&Object.defineProperty(o,"password",{value:decodeURIComponent(e.password),enumerable:!1}),{lookup:t,proxy:o}}var MLt=class extends iNl.Agent{constructor(t,r){super(r);let n=typeof t=="string"?new cNl.URL(t):t,{proxy:a,lookup:o}=lNl(n);this.shouldLookup=o,this.proxy=a,this.timeout=r?.timeout??null,this.socketOptions=r?.socketOptions??null}async connect(t,r){let{shouldLookup:n,proxy:a,timeout:o}=this;if(!r.host)throw new Error("No `host` defined!");let{host:l}=r,{port:A,lookup:f=oNl.lookup}=r;n&&(l=await new Promise((E,N)=>{f(l,{},(B,F)=>{B?N(B):E(F)})}));let I={proxy:a,destination:{host:l,port:typeof A=="number"?A:parseInt(A,10)},command:"connect",timeout:o??void 0,socket_options:this.socketOptions??void 0},C=E=>{t.destroy(),b.destroy(),E&&E.destroy()};PLt("Creating socks proxy connection: %o",I);let{socket:b}=await nNl.SocksClient.createConnection(I);if(PLt("Successfully created socks proxy connection"),o!==null&&(b.setTimeout(o),b.on("timeout",()=>C())),r.secureEndpoint){PLt("Upgrading socket connection to TLS");let E=r.servername||r.host,N=aNl.connect({...uNl(r,"host","path","port"),socket:b,servername:E});return N.once("error",B=>{PLt("Socket TLS error",B.message),C(N)}),N}return b}};MLt.protocols=["socks","socks4","socks4a","socks5","socks5h"];sY.SocksProxyAgent=MLt;function uNl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var a7r=H((_ng,C0s)=>{"use strict";var r7r=class extends Error{constructor(t){super(`Invalid protocol \`${t.protocol}\` connecting to proxy \`${t.host}\``),this.code="EINVALIDPROXY",this.proxy=t}},n7r=class extends Error{constructor(t){super(`Timeout connecting to host \`${t}\``),this.code="ECONNECTIONTIMEOUT",this.host=t}},i7r=class extends Error{constructor(t){super(`Idle timeout reached for host \`${t}\``),this.code="EIDLETIMEOUT",this.host=t}},s7r=class extends Error{constructor(t,r){let n="Response timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`connecting to host \`${t.host}\``,super(n),this.code="ERESPONSETIMEOUT",this.proxy=r,this.request=t}},o7r=class extends Error{constructor(t,r){let n="Transfer timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`for \`${t.host}\``,super(n),this.code="ETRANSFERTIMEOUT",this.proxy=r,this.request=t}};C0s.exports={InvalidProxyProtocolError:r7r,ConnectionTimeoutError:n7r,IdleTimeoutError:i7r,ResponseTimeoutError:s7r,TransferTimeoutError:o7r}});var c7r=H((yng,y0s)=>{"use strict";var{HttpProxyAgent:gNl}=D_s(),{HttpsProxyAgent:ANl}=L_s(),{SocksProxyAgent:_0s}=m0s(),{LRUCache:dNl}=VIe(),{InvalidProxyProtocolError:pNl}=a7r(),fNl=new dNl({max:20}),INl=new Set(_0s.protocols),hNl=new Set(["https_proxy","http_proxy","proxy","no_proxy"]),Yze=Object.entries(process.env).reduce((e,[t,r])=>(t=t.toLowerCase(),hNl.has(t)&&(e[t]=r),e),{}),mNl=e=>{e=new URL(e);let t=e.protocol.slice(0,-1);if(INl.has(t))return _0s;if(t==="https"||t==="http")return[gNl,ANl];throw new pNl(e)},CNl=(e,t)=>{if(typeof t=="string"&&(t=t.split(",").map(n=>n.trim()).filter(Boolean)),!t||!t.length)return!1;let r=e.hostname.split(".").reverse();return t.some(n=>{let a=n.split(".").filter(Boolean).reverse();if(!a.length)return!1;for(let o=0;o(e=new URL(e),t||(t=e.protocol==="https:"?Yze.https_proxy:Yze.https_proxy||Yze.http_proxy||Yze.proxy),r||(r=Yze.no_proxy),!t||CNl(e,r)?null:new URL(t));y0s.exports={getProxyAgent:mNl,getProxy:_Nl,proxyCache:fNl}});var S0s=H((Eng,E0s)=>{"use strict";var yNl=Et("net"),bNl=Et("tls"),{once:b0s}=Et("events"),ENl=Et("timers/promises"),{normalizeOptions:SNl,cacheOptions:vNl}=Djr(),{getProxy:BNl,getProxyAgent:wNl,proxyCache:l7r}=c7r(),HLt=a7r(),{Agent:TNl}=Oze();E0s.exports=class extends TNl{#e;#t;#n;#r;#i;constructor(t={}){let{timeouts:r,proxy:n,noProxy:a,...o}=SNl(t);super(o),this.#e=o,this.#t=r,n&&(this.#n=new URL(n),this.#r=a,this.#i=wNl(n))}get proxy(){return this.#n?{url:this.#n}:{}}#s(t){if(!this.#n)return;let r=BNl(`${t.protocol}//${t.host}:${t.port}`,{proxy:this.#n,noProxy:this.#r});if(!r)return;let n=vNl({...t,...this.#e,timeouts:this.#t,proxy:r});if(l7r.has(n))return l7r.get(n);let a=this.#i;Array.isArray(a)&&(a=this.isSecureEndpoint(t)?a[1]:a[0]);let o=new a(r,{...this.#e,socketOptions:{family:this.#e.family}});return l7r.set(n,o),o}async#o({promises:t,options:r,timeout:n},a=new AbortController){if(n){let l=ENl.setTimeout(n,null,{signal:a.signal}).then(()=>{throw new HLt.ConnectionTimeoutError(`${r.host}:${r.port}`)}).catch(A=>{if(A.name!=="AbortError")throw A});t.push(l)}let o;try{o=await Promise.race(t),a.abort()}catch(l){throw a.abort(),l}return o}async connect(t,r){r.lookup??=this.#e.lookup;let n,a=this.#t.connection,o=this.isSecureEndpoint(r),l=this.#s(r);if(l){let C=Date.now();n=await this.#o({options:r,timeout:a,promises:[l.connect(t,r)]}),a&&(a=a-(Date.now()-C))}else n=(o?bNl:yNl).connect(r);n.setKeepAlive(this.keepAlive,this.keepAliveMsecs),n.setNoDelay(this.keepAlive);let A=new AbortController,{signal:f}=A,I=n[o?"secureConnecting":"connecting"]?b0s(n,o?"secureConnect":"connect",{signal:f}):Promise.resolve();return await this.#o({options:r,timeout:a,promises:[I,b0s(n,"error",{signal:f}).then(C=>{throw C[0]})]},A),this.#t.idle&&n.setTimeout(this.#t.idle,()=>{n.destroy(new HLt.IdleTimeoutError(`${r.host}:${r.port}`))}),n}addRequest(t,r){let n=this.#s(r);if(n?.setRequestProps&&n.setRequestProps(t,r),t.setHeader("connection",this.keepAlive?"keep-alive":"close"),this.#t.response){let a;t.once("finish",()=>{setTimeout(()=>{t.destroy(new HLt.ResponseTimeoutError(t,this.#n))},this.#t.response)}),t.once("response",()=>{clearTimeout(a)})}if(this.#t.transfer){let a;t.once("response",o=>{setTimeout(()=>{o.destroy(new HLt.TransferTimeoutError(t,this.#n))},this.#t.transfer),o.once("close",()=>{clearTimeout(a)})})}return super.addRequest(t,r)}}});var T0s=H((Sng,w0s)=>{"use strict";var{LRUCache:RNl}=VIe(),{normalizeOptions:NNl,cacheOptions:DNl}=Djr(),{getProxy:kNl,proxyCache:v0s}=c7r(),B0s=Njr(),YLt=S0s(),Qze=new RNl({max:20}),xNl=(e,{agent:t,proxy:r,noProxy:n,...a}={})=>{if(t!=null)return t;e=new URL(e);let o=kNl(e,{proxy:r,noProxy:n}),l={...NNl(a),proxy:o},A=DNl({...l,secureEndpoint:e.protocol==="https:"});if(Qze.has(A))return Qze.get(A);let f=new YLt(l);return Qze.set(A,f),f};w0s.exports={getAgent:xNl,Agent:YLt,HttpAgent:YLt,HttpsAgent:YLt,cache:{proxy:v0s,agent:Qze,dns:B0s.cache,clear:()=>{v0s.clear(),Qze.clear(),B0s.cache.clear()}}}});var R0s=H((vng,GNl)=>{GNl.exports={name:"make-fetch-happen",version:"14.0.3",description:"Opinionated, caching, retrying fetch client",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",posttest:"npm run lint",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"',lint:"npm run eslint",lintfix:"npm run eslint -- --fix",postlint:"template-oss-check",snap:"tap","template-oss-apply":"template-oss-apply --force"},repository:{type:"git",url:"git+https://github.com/npm/make-fetch-happen.git"},keywords:["http","request","fetch","mean girls","caching","cache","subresource integrity"],author:"GitHub Inc.",license:"ISC",dependencies:{"@npmcli/agent":"^3.0.0",cacache:"^19.0.1","http-cache-semantics":"^4.1.1",minipass:"^7.0.2","minipass-fetch":"^4.0.0","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4",negotiator:"^1.0.0","proc-log":"^5.0.0","promise-retry":"^2.0.1",ssri:"^12.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.4",nock:"^13.2.4","safe-buffer":"^5.2.1","standard-version":"^9.3.2",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},tap:{color:1,files:"test/*.js","check-coverage":!0,timeout:60,"nyc-arg":["--exclude","tap-snapshots/**"]},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.4",publish:"true"}}});var XLt=H((Bng,D0s)=>{var{Minipass:FNl}=cF(),QLt=gze(),ZNl=Tjr(),LNl=are(),{log:N0s}=Rjr(),VNl=wjr(),{getAgent:WNl}=T0s(),u7r=R0s(),ONl=`${u7r.name}/${u7r.version} (+https://npm.im/${u7r.name})`,PNl=["ECONNRESET","ECONNREFUSED","EADDRINUSE","ETIMEDOUT","ECONNECTIONTIMEOUT","EIDLETIMEOUT","ERESPONSETIMEOUT","ETRANSFERTIMEOUT"],MNl=["request-timeout"],HNl=(e,t)=>{let r=WNl(e.url,{...t,signal:void 0});e.headers.has("connection")||e.headers.set("connection",r?"keep-alive":"close"),e.headers.has("user-agent")||e.headers.set("user-agent",ONl);let n={...t,agent:r,redirect:"manual"};return ZNl(async(a,o)=>{let l=new QLt.Request(e,n);try{let A=await QLt(l,n);if(n.integrity&&A.status===200){let C=LNl.integrityStream({algorithms:n.algorithms,integrity:n.integrity,size:n.size}),b=new VNl({events:["integrity","size"]},A.body,C);C.on("integrity",E=>b.emit("integrity",E)),C.on("size",E=>b.emit("size",E)),A=new QLt.Response(b,A),A.body.hasIntegrityEmitter=!0}A.headers.set("x-fetch-attempts",o);let f=FNl.isStream(l.body);return l.method!=="POST"&&!f&&([408,420,429].includes(A.status)||A.status>=500)?(typeof t.onRetry=="function"&&t.onRetry(A),N0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.status}`),a(A)):A}catch(A){let f=A.code==="EPROMISERETRY"?A.retried.code:A.code,I=A.retried instanceof QLt.Response||PNl.includes(f)&&MNl.includes(A.type);if(l.method==="POST"||I)throw A;return typeof t.onRetry=="function"&&t.onRetry(A),N0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.code}`),a(A)}},t.retry).catch(a=>{if(a.status>=400&&a.type!=="system")return a;throw a})};D0s.exports=HNl});var L0s=H((wng,Z0s)=>{var{Request:k0s,Response:g7r}=gze(),{Minipass:x0s}=cF(),YNl=GZt(),cye=i_s(),QNl=Et("url"),XNl=wjr(),JNl=l6r(),A7r=a_s(),UNl=XLt(),Xze=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),KNl=["accept-charset","accept-encoding","accept-language","accept","cache-control"],F0s=["cache-control","content-encoding","content-language","content-type","date","etag","expires","last-modified","link","location","pragma","vary"],G0s=(e,t,r)=>{let n={time:Date.now(),url:e.url,reqHeaders:{},resHeaders:{},options:{compress:r.compress!=null?r.compress:e.compress}};t.status!==200&&t.status!==304&&(n.status=t.status);for(let l of KNl)e.headers.has(l)&&(n.reqHeaders[l]=e.headers.get(l));let a=e.headers.get("host"),o=new QNl.URL(e.url);if(a&&o.host!==a&&(n.reqHeaders.host=a),t.headers.has("vary")){let l=t.headers.get("vary");if(l!=="*"){let A=l.trim().toLowerCase().split(/\s*,\s*/);for(let f of A)e.headers.has(f)&&(n.reqHeaders[f]=e.headers.get(f))}}for(let l of F0s)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));for(let l of r.cacheAdditionalHeaders)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));return n},JLt=Symbol("request"),ULt=Symbol("response"),KLt=Symbol("policy"),d7r=class e{constructor({entry:t,request:r,response:n,options:a}){t?(this.key=t.key,this.entry=t,this.entry.metadata.time=this.entry.metadata.time||this.entry.time):this.key=A7r(r),this.options=a,this[JLt]=r,this[ULt]=n,this[KLt]=null}static async find(t,r){try{var n=await cye.index.compact(r.cachePath,A7r(t),(o,l)=>{let A=new e({entry:o,options:r}),f=new e({entry:l,options:r});return A.policy.satisfies(f.request)},{validateEntry:o=>o.metadata&&o.metadata.resHeaders&&o.metadata.resHeaders["content-encoding"]===null?!1:o.integrity===null?!!(o.metadata&&o.metadata.status):!0})}catch{return}if(r.cache==="reload")return;let a;for(let o of n){let l=new e({entry:o,options:r});if(l.policy.satisfies(t)){a=l;break}}return a}static async invalidate(t,r){let n=A7r(t);try{await cye.rm.entry(r.cachePath,n,{removeFully:!0})}catch{}}get request(){return this[JLt]||(this[JLt]=new k0s(this.entry.metadata.url,{method:"GET",headers:this.entry.metadata.reqHeaders,...this.entry.metadata.options})),this[JLt]}get response(){return this[ULt]||(this[ULt]=new g7r(null,{url:this.entry.metadata.url,counter:this.options.counter,status:this.entry.metadata.status||200,headers:{...this.entry.metadata.resHeaders,"content-length":this.entry.size}})),this[ULt]}get policy(){return this[KLt]||(this[KLt]=new JNl({entry:this.entry,request:this.request,response:this.response,options:this.options})),this[KLt]}async store(t){if(this.request.method!=="GET"||![200,301,308].includes(this.response.status)||!this.policy.storable())return this.response.headers.set("x-local-cache-status","skip"),this.response;let r=this.response.headers.get("content-length"),n={algorithms:this.options.algorithms,metadata:G0s(this.request,this.response,this.options),size:r,integrity:this.options.integrity,integrityEmitter:this.response.body.hasIntegrityEmitter&&this.response.body},a=null;if(this.response.status===200){let l,A,f=new Promise((C,b)=>{l=C,A=b}).catch(C=>{a.emit("error",C)});a=new XNl({events:["integrity","size"]},new YNl({flush(){return f}})),a.hasIntegrityEmitter=!0;let I=()=>{let C=new x0s,b=cye.put.stream(this.options.cachePath,this.key,n);b.on("integrity",E=>a.emit("integrity",E)),b.on("size",E=>a.emit("size",E)),C.pipe(b),b.promise().then(l,A),a.unshift(C),a.unshift(this.response.body)};a.once("resume",I),a.once("end",()=>a.removeListener("resume",I))}else await cye.index.insert(this.options.cachePath,this.key,null,n);return this.response.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),this.response.headers.set("x-local-cache-key",encodeURIComponent(this.key)),this.response.headers.set("x-local-cache-mode","stream"),this.response.headers.set("x-local-cache-status",t),this.response.headers.set("x-local-cache-time",new Date().toISOString()),new g7r(a,{url:this.response.url,status:this.response.status,headers:this.response.headers,counter:this.options.counter})}async respond(t,r,n){let a;if(t==="HEAD"||[301,308].includes(this.response.status))a=this.response;else{let o=new x0s,l={...this.policy.responseHeaders()},A=()=>{let f=cye.get.stream.byDigest(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize});f.on("error",async I=>{f.pause(),I.code==="EINTEGRITY"&&await cye.rm.content(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize}),(I.code==="ENOENT"||I.code==="EINTEGRITY")&&await e.invalidate(this.request,this.options),o.emit("error",I),f.resume()}),o.emit("integrity",this.entry.integrity),o.emit("size",Number(l["content-length"])),f.pipe(o)};o.once("resume",A),o.once("end",()=>o.removeListener("resume",A)),a=new g7r(o,{url:this.entry.metadata.url,counter:r.counter,status:200,headers:l})}return a.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),a.headers.set("x-local-cache-hash",encodeURIComponent(this.entry.integrity)),a.headers.set("x-local-cache-key",encodeURIComponent(this.key)),a.headers.set("x-local-cache-mode","stream"),a.headers.set("x-local-cache-status",n),a.headers.set("x-local-cache-time",new Date(this.entry.metadata.time).toUTCString()),a}async revalidate(t,r){let n=new k0s(t,{headers:this.policy.revalidationHeaders(t)});try{var a=await UNl(n,{...r,headers:void 0})}catch(l){if(!this.policy.mustRevalidate)return this.respond(t.method,r,"stale");throw l}if(this.policy.revalidated(n,a)){let l=G0s(t,a,r);for(let A of F0s)!Xze(l.resHeaders,A)&&Xze(this.entry.metadata.resHeaders,A)&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]);for(let A of r.cacheAdditionalHeaders){let f=Xze(l.resHeaders,A),I=Xze(this.entry.metadata.resHeaders,A),C=Xze(this.policy.response.headers,A);!f&&I&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]),!C&&f&&(this.policy.response.headers[A]=l.resHeaders[A])}try{await cye.index.insert(r.cachePath,this.key,this.entry.integrity,{size:this.entry.size,metadata:l})}catch{}return this.respond(t.method,r,"revalidated")}return new e({request:t,response:a,options:r}).store("updated")}};Z0s.exports=d7r});var O0s=H((Tng,W0s)=>{var{NotCachedError:jNl}=yhs(),p7r=L0s(),zNl=XLt(),V0s=async(e,t)=>{let r=await p7r.find(e,t);if(!r){if(t.cache==="only-if-cached")throw new jNl(e.url);let a=await zNl(e,t);return new p7r({request:e,response:a,options:t}).store("miss")}if(t.cache==="no-cache")return r.revalidate(e,t);let n=r.policy.needsRevalidation(e);return t.cache==="force-cache"||t.cache==="only-if-cached"||!n?r.respond(e.method,t,n?"stale":"hit"):r.revalidate(e,t)};V0s.invalidate=async(e,t)=>{if(t.cachePath)return p7r.invalidate(e,t)};W0s.exports=V0s});var Y0s=H((Rng,H0s)=>{"use strict";var{FetchError:f7r,Request:qNl,isRedirect:$Nl}=gze(),I7r=Et("url"),eDl=l6r(),P0s=O0s(),tDl=XLt(),rDl=(e,t,r)=>{if(!$Nl(t.status)||r.redirect==="manual")return!1;if(r.redirect==="error")throw new f7r(`redirect mode is set to error: ${e.url}`,"no-redirect",{code:"ENOREDIRECT"});if(!t.headers.has("location"))throw new f7r(`redirect location header missing for: ${e.url}`,"no-location",{code:"EINVALIDREDIRECT"});if(e.counter>=e.follow)throw new f7r(`maximum redirect reached at: ${e.url}`,"max-redirect",{code:"EMAXREDIRECT"});return!0},nDl=(e,t,r)=>{let n={...r},a=t.headers.get("location"),o=new I7r.URL(a,/^https?:/.test(a)?void 0:e.url);return new I7r.URL(e.url).hostname!==o.hostname&&(e.headers.delete("authorization"),e.headers.delete("cookie")),(t.status===303||e.method==="POST"&&[301,302].includes(t.status))&&(n.method="GET",n.body=null,e.headers.delete("content-length")),n.headers={},e.headers.forEach((A,f)=>{n.headers[f]=A}),n.counter=++e.counter,{request:new qNl(I7r.format(o),n),options:n}},M0s=async(e,t)=>{let r=eDl.storable(e,t)?await P0s(e,t):await tDl(e,t);if(!["GET","HEAD"].includes(e.method)&&r.status>=200&&r.status<=399&&await P0s.invalidate(e,t),!rDl(e,r,t))return r;let n=nDl(e,r,t);return M0s(n.request,n.options)};H0s.exports=M0s});var zLt=H((Nng,OFe)=>{var{FetchError:iDl,Headers:sDl,Request:Q0s,Response:oDl}=gze(),aDl=UIs(),cDl=Y0s(),jLt=(e,t)=>{let r=aDl(t),n=new Q0s(e,r);return cDl(n,r)};jLt.defaults=(e,t={},r=jLt)=>{typeof e=="object"&&(t=e,e=null);let n=(a,o={})=>{let l=a||e,A={...t,...o,headers:{...t.headers,...o.headers}};return r(l,A)};return n.defaults=(a,o={})=>jLt.defaults(a,o,n),n};OFe.exports=jLt;OFe.exports.FetchError=iDl;OFe.exports.Headers=sDl;OFe.exports.Request=Q0s;OFe.exports.Response=oDl});var X0s=H(PFe=>{"use strict";var lDl=PFe&&PFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PFe,"__esModule",{value:!0});PFe.CIContextProvider=void 0;var uDl=lDl(zLt()),gDl=[ADl,dDl],h7r=class{constructor(t="sigstore"){this.audience=t}async getToken(){return Promise.any(gDl.map(t=>t(this.audience))).catch(()=>Promise.reject("CI: no tokens available"))}};PFe.CIContextProvider=h7r;async function ADl(e){if(!process.env.ACTIONS_ID_TOKEN_REQUEST_URL||!process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN)return Promise.reject("no token available");let t=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);return t.searchParams.append("audience",e),(await(0,uDl.default)(t.href,{retry:2,headers:{Accept:"application/json",Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).json().then(n=>n.value)}async function dDl(){return process.env.SIGSTORE_ID_TOKEN?process.env.SIGSTORE_ID_TOKEN:Promise.reject("no token available")}});var J0s=H(qLt=>{"use strict";Object.defineProperty(qLt,"__esModule",{value:!0});qLt.CIContextProvider=void 0;var pDl=X0s();Object.defineProperty(qLt,"CIContextProvider",{enumerable:!0,get:function(){return pDl.CIContextProvider}})});var $Lt=H(Jze=>{"use strict";var K0s=Jze&&Jze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Jze,"__esModule",{value:!0});Jze.fetchWithRetry=BDl;var fDl=Et("http2"),IDl=K0s(zLt()),U0s=Rjr(),hDl=K0s(Tjr()),mDl=$ue(),CDl=tZt(),{HTTP2_HEADER_LOCATION:_Dl,HTTP2_HEADER_CONTENT_TYPE:yDl,HTTP2_HEADER_USER_AGENT:bDl,HTTP_STATUS_INTERNAL_SERVER_ERROR:EDl,HTTP_STATUS_TOO_MANY_REQUESTS:SDl,HTTP_STATUS_REQUEST_TIMEOUT:vDl}=fDl.constants;async function BDl(e,t){return(0,hDl.default)(async(r,n)=>{let a=t.method||"POST",o={[bDl]:mDl.ua.getUserAgent(),...t.headers},l=await(0,IDl.default)(e,{method:a,headers:o,body:t.body,timeout:t.timeout,retry:!1}).catch(A=>(U0s.log.http("fetch",`${a} ${e} attempt ${n} failed with ${A}`),r(A)));if(l.ok)return l;{let A=await wDl(l);if(U0s.log.http("fetch",`${a} ${e} attempt ${n} failed with ${l.status}`),TDl(l.status))return r(A);throw A}},RDl(t.retry))}var wDl=async e=>{let t=e.statusText,r=e.headers.get(_Dl)||void 0;if(e.headers.get(yDl)?.includes("application/json"))try{t=(await e.json()).message||t}catch{}return new CDl.HTTPError({status:e.status,message:t,location:r})},TDl=e=>[vDl,SDl].includes(e)||e>=EDl,RDl=e=>typeof e=="boolean"?{retries:e?1:0}:typeof e=="number"?{retries:e}:{retries:0,...e}});var j0s=H(e9t=>{"use strict";Object.defineProperty(e9t,"__esModule",{value:!0});e9t.Fulcio=void 0;var NDl=$Lt(),m7r=class{constructor(t){this.options=t}async createSigningCertificate(t){let{baseURL:r,retry:n,timeout:a}=this.options,o=`${r}/api/v2/signingCert`;return(await(0,NDl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:a,retry:n})).json()}};e9t.Fulcio=m7r});var z0s=H(t9t=>{"use strict";Object.defineProperty(t9t,"__esModule",{value:!0});t9t.CAClient=void 0;var DDl=aFe(),kDl=j0s(),C7r=class{constructor(t){this.fulcio=new kDl.Fulcio({baseURL:t.fulcioBaseURL,retry:t.retry,timeout:t.timeout})}async createSigningCertificate(t,r,n){let a=xDl(t,r,n);try{let o=await this.fulcio.createSigningCertificate(a);return(o.signedCertificateEmbeddedSct?o.signedCertificateEmbeddedSct:o.signedCertificateDetachedSct).chain.certificates}catch(o){(0,DDl.internalError)(o,"CA_CREATE_SIGNING_CERTIFICATE_ERROR","error creating signing certificate")}}};t9t.CAClient=C7r;function xDl(e,t,r){return{credentials:{oidcIdentityToken:e},publicKeyRequest:{publicKey:{algorithm:"ECDSA",content:t},proofOfPossession:r.toString("base64")}}}});var $0s=H(MFe=>{"use strict";var GDl=MFe&&MFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MFe,"__esModule",{value:!0});MFe.EphemeralSigner=void 0;var q0s=GDl(Et("crypto")),FDl="ec",ZDl="P-256",_7r=class{constructor(){this.keypair=q0s.default.generateKeyPairSync(FDl,{namedCurve:ZDl})}async sign(t){let r=q0s.default.sign(null,t,this.keypair.privateKey),n=this.keypair.publicKey.export({format:"pem",type:"spki"}).toString("ascii");return{signature:r,key:{$case:"publicKey",publicKey:n}}}};MFe.EphemeralSigner=_7r});var eys=H(lye=>{"use strict";Object.defineProperty(lye,"__esModule",{value:!0});lye.FulcioSigner=lye.DEFAULT_FULCIO_URL=void 0;var y7r=aFe(),LDl=$ue(),VDl=z0s(),WDl=$0s();lye.DEFAULT_FULCIO_URL="https://fulcio.sigstore.dev";var b7r=class{constructor(t){this.ca=new VDl.CAClient({...t,fulcioBaseURL:t.fulcioBaseURL||lye.DEFAULT_FULCIO_URL}),this.identityProvider=t.identityProvider,this.keyHolder=t.keyHolder||new WDl.EphemeralSigner}async sign(t){let r=await this.getIdentityToken(),n;try{n=LDl.oidc.extractJWTSubject(r)}catch(A){throw new y7r.InternalError({code:"IDENTITY_TOKEN_PARSE_ERROR",message:`invalid identity token: ${r}`,cause:A})}let a=await this.keyHolder.sign(Buffer.from(n));if(a.key.$case!=="publicKey")throw new y7r.InternalError({code:"CA_CREATE_SIGNING_CERTIFICATE_ERROR",message:"unexpected format for signing key"});let o=await this.ca.createSigningCertificate(r,a.key.publicKey,a.signature);return{signature:(await this.keyHolder.sign(t)).signature,key:{$case:"x509Certificate",certificate:o[0]}}}async getIdentityToken(){try{return await this.identityProvider.getToken()}catch(t){throw new y7r.InternalError({code:"IDENTITY_TOKEN_READ_ERROR",message:"error retrieving identity token",cause:t})}}};lye.FulcioSigner=b7r});var rys=H(HFe=>{"use strict";Object.defineProperty(HFe,"__esModule",{value:!0});HFe.FulcioSigner=HFe.DEFAULT_FULCIO_URL=void 0;var tys=eys();Object.defineProperty(HFe,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return tys.DEFAULT_FULCIO_URL}});Object.defineProperty(HFe,"FulcioSigner",{enumerable:!0,get:function(){return tys.FulcioSigner}})});var sys=H(r9t=>{"use strict";Object.defineProperty(r9t,"__esModule",{value:!0});r9t.Rekor=void 0;var nys=$Lt(),E7r=class{constructor(t){this.options=t}async createEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries`,A=await(await(0,nys.fetchWithRetry)(o,{headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).json();return iys(A)}async getEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries/${t}`,A=await(await(0,nys.fetchWithRetry)(o,{method:"GET",headers:{Accept:"application/json"},timeout:n,retry:a})).json();return iys(A)}};r9t.Rekor=E7r;function iys(e){let t=Object.entries(e);if(t.length!=1)throw new Error("Received multiple entries in Rekor response");let[r,n]=t[0];return{...n,uuid:r}}});var ays=H(n9t=>{"use strict";Object.defineProperty(n9t,"__esModule",{value:!0});n9t.TLogClient=void 0;var oys=aFe(),ODl=tZt(),PDl=sys(),S7r=class{constructor(t){this.fetchOnConflict=t.fetchOnConflict??!1,this.rekor=new PDl.Rekor({baseURL:t.rekorBaseURL,retry:t.retry,timeout:t.timeout})}async createEntry(t){let r;try{r=await this.rekor.createEntry(t)}catch(n){if(MDl(n)&&this.fetchOnConflict){let a=n.location.split("/").pop()||"";try{r=await this.rekor.getEntry(a)}catch(o){(0,oys.internalError)(o,"TLOG_FETCH_ENTRY_ERROR","error fetching tlog entry")}}else(0,oys.internalError)(n,"TLOG_CREATE_ENTRY_ERROR","error creating tlog entry")}return r}};n9t.TLogClient=S7r;function MDl(e){return e instanceof ODl.HTTPError&&e.statusCode===409&&e.location!==void 0}});var cys=H(v7r=>{"use strict";Object.defineProperty(v7r,"__esModule",{value:!0});v7r.toProposedEntry=YDl;var HDl=X7e(),uge=$ue(),Uze="sha256";function YDl(e,t,r="dsse"){switch(e.$case){case"dsseEnvelope":return r==="intoto"?JDl(e.dsseEnvelope,t):XDl(e.dsseEnvelope,t);case"messageSignature":return QDl(e.messageSignature,t)}}function QDl(e,t){let r=e.messageDigest.digest.toString("hex"),n=e.signature.toString("base64"),a=uge.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"hashedrekord",spec:{data:{hash:{algorithm:Uze,value:r}},signature:{content:n,publicKey:{content:a}}}}}function XDl(e,t){let r=JSON.stringify((0,HDl.envelopeToJSON)(e)),n=uge.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"dsse",spec:{proposedContent:{envelope:r,verifiers:[n]}}}}function JDl(e,t){let r=uge.crypto.digest(Uze,e.payload).toString("hex"),n=UDl(e,t),a=uge.encoding.base64Encode(e.payload.toString("base64")),o=uge.encoding.base64Encode(e.signatures[0].sig.toString("base64")),l=e.signatures[0].keyid,A=uge.encoding.base64Encode(t),f={payloadType:e.payloadType,payload:a,signatures:[{sig:o,publicKey:A}]};return l.length>0&&(f.signatures[0].keyid=l),{apiVersion:"0.0.2",kind:"intoto",spec:{content:{envelope:f,hash:{algorithm:Uze,value:n},payloadHash:{algorithm:Uze,value:r}}}}}function UDl(e,t){let r={payloadType:e.payloadType,payload:e.payload.toString("base64"),signatures:[{sig:e.signatures[0].sig.toString("base64"),publicKey:t}]};return e.signatures[0].keyid.length>0&&(r.signatures[0].keyid=e.signatures[0].keyid),uge.crypto.digest(Uze,uge.json.canonicalize(r)).toString("hex")}});var lys=H(uye=>{"use strict";Object.defineProperty(uye,"__esModule",{value:!0});uye.RekorWitness=uye.DEFAULT_REKOR_URL=void 0;var KDl=$ue(),jDl=ays(),zDl=cys();uye.DEFAULT_REKOR_URL="https://rekor.sigstore.dev";var B7r=class{constructor(t){this.entryType=t.entryType,this.tlog=new jDl.TLogClient({...t,rekorBaseURL:t.rekorBaseURL||uye.DEFAULT_REKOR_URL})}async testify(t,r){let n=(0,zDl.toProposedEntry)(t,r,this.entryType),a=await this.tlog.createEntry(n);return qDl(a)}};uye.RekorWitness=B7r;function qDl(e){let t=Buffer.from(e.logID,"hex"),r=KDl.encoding.base64Decode(e.body),n=JSON.parse(r),a=e?.verification?.signedEntryTimestamp?$Dl(e.verification.signedEntryTimestamp):void 0,o=e?.verification?.inclusionProof?ekl(e.verification.inclusionProof):void 0;return{tlogEntries:[{logIndex:e.logIndex.toString(),logId:{keyId:t},integratedTime:e.integratedTime.toString(),kindVersion:{kind:n.kind,version:n.apiVersion},inclusionPromise:a,inclusionProof:o,canonicalizedBody:Buffer.from(e.body,"base64")}]}}function $Dl(e){return{signedEntryTimestamp:Buffer.from(e,"base64")}}function ekl(e){return{logIndex:e.logIndex.toString(),treeSize:e.treeSize.toString(),rootHash:Buffer.from(e.rootHash,"hex"),hashes:e.hashes.map(t=>Buffer.from(t,"hex")),checkpoint:{envelope:e.checkpoint}}}});var uys=H(i9t=>{"use strict";Object.defineProperty(i9t,"__esModule",{value:!0});i9t.TimestampAuthority=void 0;var tkl=$Lt(),w7r=class{constructor(t){this.options=t}async createTimestamp(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/timestamp`;return(await(0,tkl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).buffer()}};i9t.TimestampAuthority=w7r});var Ays=H(s9t=>{"use strict";Object.defineProperty(s9t,"__esModule",{value:!0});s9t.TSAClient=void 0;var rkl=aFe(),nkl=uys(),ikl=$ue(),gys="sha256",T7r=class{constructor(t){this.tsa=new nkl.TimestampAuthority({baseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async createTimestamp(t){let r={artifactHash:ikl.crypto.digest(gys,t).toString("base64"),hashAlgorithm:gys};try{return await this.tsa.createTimestamp(r)}catch(n){(0,rkl.internalError)(n,"TSA_CREATE_TIMESTAMP_ERROR","error creating timestamp")}}};s9t.TSAClient=T7r});var dys=H(o9t=>{"use strict";Object.defineProperty(o9t,"__esModule",{value:!0});o9t.TSAWitness=void 0;var skl=Ays(),R7r=class{constructor(t){this.tsa=new skl.TSAClient({tsaBaseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async testify(t){let r=okl(t);return{rfc3161Timestamps:[{signedTimestamp:await this.tsa.createTimestamp(r)}]}}};o9t.TSAWitness=R7r;function okl(e){switch(e.$case){case"dsseEnvelope":return e.dsseEnvelope.signatures[0].sig;case"messageSignature":return e.messageSignature.signature}}});var fys=H(gge=>{"use strict";Object.defineProperty(gge,"__esModule",{value:!0});gge.TSAWitness=gge.RekorWitness=gge.DEFAULT_REKOR_URL=void 0;var pys=lys();Object.defineProperty(gge,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return pys.DEFAULT_REKOR_URL}});Object.defineProperty(gge,"RekorWitness",{enumerable:!0,get:function(){return pys.RekorWitness}});var akl=dys();Object.defineProperty(gge,"TSAWitness",{enumerable:!0,get:function(){return akl.TSAWitness}})});var D7r=H(DT=>{"use strict";Object.defineProperty(DT,"__esModule",{value:!0});DT.TSAWitness=DT.RekorWitness=DT.DEFAULT_REKOR_URL=DT.FulcioSigner=DT.DEFAULT_FULCIO_URL=DT.CIContextProvider=DT.InternalError=DT.MessageSignatureBundleBuilder=DT.DSSEBundleBuilder=void 0;var Iys=bfs();Object.defineProperty(DT,"DSSEBundleBuilder",{enumerable:!0,get:function(){return Iys.DSSEBundleBuilder}});Object.defineProperty(DT,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return Iys.MessageSignatureBundleBuilder}});var ckl=aFe();Object.defineProperty(DT,"InternalError",{enumerable:!0,get:function(){return ckl.InternalError}});var lkl=J0s();Object.defineProperty(DT,"CIContextProvider",{enumerable:!0,get:function(){return lkl.CIContextProvider}});var hys=rys();Object.defineProperty(DT,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return hys.DEFAULT_FULCIO_URL}});Object.defineProperty(DT,"FulcioSigner",{enumerable:!0,get:function(){return hys.FulcioSigner}});var N7r=fys();Object.defineProperty(DT,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return N7r.DEFAULT_REKOR_URL}});Object.defineProperty(DT,"RekorWitness",{enumerable:!0,get:function(){return N7r.RekorWitness}});Object.defineProperty(DT,"TSAWitness",{enumerable:!0,get:function(){return N7r.TSAWitness}})});var Cys=H(Kze=>{"use strict";var mys=Kze&&Kze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Kze,"__esModule",{value:!0});Kze.appDataPath=gkl;var ukl=mys(Et("os")),YFe=mys(Et("path"));function gkl(e){let t=ukl.default.homedir();switch(process.platform){case"darwin":{let r=YFe.default.join(t,"Library","Application Support");return YFe.default.join(r,e)}case"win32":{let r=process.env.LOCALAPPDATA||YFe.default.join(t,"AppData","Local");return YFe.default.join(r,e,"Data")}default:{let r=process.env.XDG_DATA_HOME||YFe.default.join(t,".local","share");return YFe.default.join(r,e)}}}});var t7=H(lW=>{"use strict";Object.defineProperty(lW,"__esModule",{value:!0});lW.UnsupportedAlgorithmError=lW.CryptoError=lW.LengthOrHashMismatchError=lW.UnsignedMetadataError=lW.RepositoryError=lW.ValueError=void 0;var k7r=class extends Error{};lW.ValueError=k7r;var jze=class extends Error{};lW.RepositoryError=jze;var x7r=class extends jze{};lW.UnsignedMetadataError=x7r;var G7r=class extends jze{};lW.LengthOrHashMismatchError=G7r;var a9t=class extends Error{};lW.CryptoError=a9t;var F7r=class extends a9t{};lW.UnsupportedAlgorithmError=F7r});var yys=H(Age=>{"use strict";Object.defineProperty(Age,"__esModule",{value:!0});Age.isDefined=Akl;Age.isObject=_ys;Age.isStringArray=dkl;Age.isObjectArray=pkl;Age.isStringRecord=fkl;Age.isObjectRecord=Ikl;function Akl(e){return e!==void 0}function _ys(e){return typeof e=="object"&&e!==null}function dkl(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function pkl(e){return Array.isArray(e)&&e.every(_ys)}function fkl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="string")}function Ikl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="object"&&t!==null)}});var L7r=H((zng,Sys)=>{var bys=",",hkl=":",mkl="[",Ckl="]",_kl="{",ykl="}";function Z7r(e){let t=[];if(typeof e=="string")t.push(Eys(e));else if(typeof e=="boolean")t.push(JSON.stringify(e));else if(Number.isInteger(e))t.push(JSON.stringify(e));else if(e===null)t.push(JSON.stringify(e));else if(Array.isArray(e)){t.push(mkl);let r=!0;e.forEach(n=>{r||t.push(bys),r=!1,t.push(Z7r(n))}),t.push(Ckl)}else if(typeof e=="object"){t.push(_kl);let r=!0;Object.keys(e).sort().forEach(n=>{r||t.push(bys),r=!1,t.push(Eys(n)),t.push(hkl),t.push(Z7r(e[n]))}),t.push(ykl)}else throw new TypeError("cannot encode "+e.toString());return t.join("")}function Eys(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'}Sys.exports={canonicalize:Z7r}});var vys=H(QFe=>{"use strict";var bkl=QFe&&QFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QFe,"__esModule",{value:!0});QFe.verifySignature=void 0;var Ekl=L7r(),Skl=bkl(Et("crypto")),vkl=(e,t,r)=>{let n=Buffer.from((0,Ekl.canonicalize)(e));return Skl.default.verify(void 0,n,t,Buffer.from(r,"hex"))};QFe.verifySignature=vkl});var hJ=H(oY=>{"use strict";var Bkl=oY&&oY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wkl=oY&&oY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Bys=oY&&oY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Bkl(t,e,r);return wkl(t,e),t};Object.defineProperty(oY,"__esModule",{value:!0});oY.crypto=oY.guard=void 0;oY.guard=Bys(yys());oY.crypto=Bys(vys())});var gye=H(Bre=>{"use strict";var Tkl=Bre&&Bre.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Bre,"__esModule",{value:!0});Bre.Signed=Bre.MetadataKind=void 0;Bre.isMetadataKind=Nkl;var Rkl=Tkl(Et("util")),zze=t7(),V7r=hJ(),wys=["1","0","31"],W7r;(function(e){e.Root="root",e.Timestamp="timestamp",e.Snapshot="snapshot",e.Targets="targets"})(W7r||(Bre.MetadataKind=W7r={}));function Nkl(e){return typeof e=="string"&&Object.values(W7r).includes(e)}var O7r=class e{constructor(t){this.specVersion=t.specVersion||wys.join(".");let r=this.specVersion.split(".");if(!(r.length===2||r.length===3)||!r.every(n=>Dkl(n)))throw new zze.ValueError("Failed to parse specVersion");if(r[0]!=wys[0])throw new zze.ValueError("Unsupported specVersion");this.expires=t.expires,this.version=t.version,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.specVersion===t.specVersion&&this.expires===t.expires&&this.version===t.version&&Rkl.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}isExpired(t){return t||(t=new Date),t>=new Date(this.expires)}static commonFieldsFromJSON(t){let{spec_version:r,expires:n,version:a,...o}=t;if(V7r.guard.isDefined(r)){if(typeof r!="string")throw new TypeError("spec_version must be a string")}else throw new zze.ValueError("spec_version is not defined");if(V7r.guard.isDefined(n)){if(typeof n!="string")throw new TypeError("expires must be a string")}else throw new zze.ValueError("expires is not defined");if(V7r.guard.isDefined(a)){if(typeof a!="number")throw new TypeError("version must be a number")}else throw new zze.ValueError("version is not defined");return{specVersion:r,expires:n,version:a,unrecognizedFields:o}}};Bre.Signed=O7r;function Dkl(e){return!isNaN(Number(e))}});var qze=H(pge=>{"use strict";var Tys=pge&&pge.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pge,"__esModule",{value:!0});pge.TargetFile=pge.MetaFile=void 0;var Rys=Tys(Et("crypto")),l9t=Tys(Et("util")),dge=t7(),c9t=hJ(),P7r=class e{constructor(t){if(t.version<=0)throw new dge.ValueError("Metafile version must be at least 1");t.length!==void 0&&Nys(t.length),this.version=t.version,this.length=t.length,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.version===t.version&&this.length===t.length&&l9t.default.isDeepStrictEqual(this.hashes,t.hashes)&&l9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}verify(t){if(this.length!==void 0&&t.length!==this.length)throw new dge.LengthOrHashMismatchError(`Expected length ${this.length} but got ${t.length}`);this.hashes&&Object.entries(this.hashes).forEach(([r,n])=>{let a;try{a=Rys.default.createHash(r)}catch{throw new dge.LengthOrHashMismatchError(`Hash algorithm ${r} not supported`)}let o=a.update(t).digest("hex");if(o!==n)throw new dge.LengthOrHashMismatchError(`Expected hash ${n} but got ${o}`)})}toJSON(){let t={version:this.version,...this.unrecognizedFields};return this.length!==void 0&&(t.length=this.length),this.hashes&&(t.hashes=this.hashes),t}static fromJSON(t){let{version:r,length:n,hashes:a,...o}=t;if(typeof r!="number")throw new TypeError("version must be a number");if(c9t.guard.isDefined(n)&&typeof n!="number")throw new TypeError("length must be a number");if(c9t.guard.isDefined(a)&&!c9t.guard.isStringRecord(a))throw new TypeError("hashes must be string keys and values");return new e({version:r,length:n,hashes:a,unrecognizedFields:o})}};pge.MetaFile=P7r;var M7r=class e{constructor(t){Nys(t.length),this.length=t.length,this.path=t.path,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}get custom(){let t=this.unrecognizedFields.custom;return!t||Array.isArray(t)||typeof t!="object"?{}:t}equals(t){return t instanceof e?this.length===t.length&&this.path===t.path&&l9t.default.isDeepStrictEqual(this.hashes,t.hashes)&&l9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}async verify(t){let r=0,n=Object.keys(this.hashes).reduce((a,o)=>{try{a[o]=Rys.default.createHash(o)}catch{throw new dge.LengthOrHashMismatchError(`Hash algorithm ${o} not supported`)}return a},{});for await(let a of t)r+=a.length,Object.values(n).forEach(o=>{o.update(a)});if(r!==this.length)throw new dge.LengthOrHashMismatchError(`Expected length ${this.length} but got ${r}`);Object.entries(n).forEach(([a,o])=>{let l=this.hashes[a],A=o.digest("hex");if(A!==l)throw new dge.LengthOrHashMismatchError(`Expected hash ${l} but got ${A}`)})}toJSON(){return{length:this.length,hashes:this.hashes,...this.unrecognizedFields}}static fromJSON(t,r){let{length:n,hashes:a,...o}=r;if(typeof n!="number")throw new TypeError("length must be a number");if(!c9t.guard.isStringRecord(a))throw new TypeError("hashes must have string keys and values");return new e({length:n,path:t,hashes:a,unrecognizedFields:o})}};pge.TargetFile=M7r;function Nys(e){if(e<0)throw new dge.ValueError("Length must be at least 0")}});var Dys=H(H7r=>{"use strict";Object.defineProperty(H7r,"__esModule",{value:!0});H7r.encodeOIDString=xkl;var kkl=6;function xkl(e){let t=e.split("."),r=parseInt(t[0],10)*40+parseInt(t[1],10),n=[];t.slice(2).forEach(o=>{let l=Gkl(parseInt(o,10));n.push(...l)});let a=Buffer.from([r,...n]);return Buffer.from([kkl,a.length,...a])}function Gkl(e){let t=[],r=0;for(;e>0;)t.unshift(e&127|r),e>>=7,r=128;return t}});var Fys=H(eqe=>{"use strict";var Fkl=eqe&&eqe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(eqe,"__esModule",{value:!0});eqe.getPublicKey=Wkl;var XFe=Fkl(Et("crypto")),$ze=t7(),Y7r=Dys(),u9t=48,kys=3,xys=0,Zkl="1.3.101.112",Lkl="1.2.840.10045.2.1",Vkl="1.2.840.10045.3.1.7",Q7r="-----BEGIN PUBLIC KEY-----";function Wkl(e){switch(e.keyType){case"rsa":return Okl(e);case"ed25519":return Pkl(e);case"ecdsa":case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":return Mkl(e);default:throw new $ze.UnsupportedAlgorithmError(`Unsupported key type: ${e.keyType}`)}}function Okl(e){if(!e.keyVal.startsWith(Q7r))throw new $ze.CryptoError("Invalid key format");let t=XFe.default.createPublicKey(e.keyVal);switch(e.scheme){case"rsassa-pss-sha256":return{key:t,padding:XFe.default.constants.RSA_PKCS1_PSS_PADDING};default:throw new $ze.UnsupportedAlgorithmError(`Unsupported RSA scheme: ${e.scheme}`)}}function Pkl(e){let t;if(e.keyVal.startsWith(Q7r))t=XFe.default.createPublicKey(e.keyVal);else{if(!Gys(e.keyVal))throw new $ze.CryptoError("Invalid key format");t=XFe.default.createPublicKey({key:Hkl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}function Mkl(e){let t;if(e.keyVal.startsWith(Q7r))t=XFe.default.createPublicKey(e.keyVal);else{if(!Gys(e.keyVal))throw new $ze.CryptoError("Invalid key format");t=XFe.default.createPublicKey({key:Ykl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}var Hkl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=(0,Y7r.encodeOIDString)(Zkl),n=Buffer.concat([Buffer.concat([Buffer.from([u9t]),Buffer.from([r.length]),r]),Buffer.concat([Buffer.from([kys]),Buffer.from([t.length+1]),Buffer.from([xys]),t])]);return Buffer.concat([Buffer.from([u9t]),Buffer.from([n.length]),n])}},Ykl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=Buffer.concat([Buffer.from([kys]),Buffer.from([t.length+1]),Buffer.from([xys]),t]),n=Buffer.concat([(0,Y7r.encodeOIDString)(Lkl),(0,Y7r.encodeOIDString)(Vkl)]),a=Buffer.concat([Buffer.from([u9t]),Buffer.from([n.length]),n]);return Buffer.concat([Buffer.from([u9t]),Buffer.from([a.length+r.length]),a,r])}},Gys=e=>/^[0-9a-fA-F]+$/.test(e)});var g9t=H(JFe=>{"use strict";var Qkl=JFe&&JFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JFe,"__esModule",{value:!0});JFe.Key=void 0;var Zys=Qkl(Et("util")),tqe=t7(),Lys=hJ(),Xkl=Fys(),X7r=class e{constructor(t){let{keyID:r,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l}=t;this.keyID=r,this.keyType=n,this.scheme=a,this.keyVal=o,this.unrecognizedFields=l||{}}verifySignature(t){let r=t.signatures[this.keyID];if(!r)throw new tqe.UnsignedMetadataError("no signature for key found in metadata");if(!this.keyVal.public)throw new tqe.UnsignedMetadataError("no public key found");let n=(0,Xkl.getPublicKey)({keyType:this.keyType,scheme:this.scheme,keyVal:this.keyVal.public}),a=t.signed.toJSON();try{if(!Lys.crypto.verifySignature(a,n,r.sig))throw new tqe.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}catch(o){throw o instanceof tqe.UnsignedMetadataError?o:new tqe.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}}equals(t){return t instanceof e?this.keyID===t.keyID&&this.keyType===t.keyType&&this.scheme===t.scheme&&Zys.default.isDeepStrictEqual(this.keyVal,t.keyVal)&&Zys.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keytype:this.keyType,scheme:this.scheme,keyval:this.keyVal,...this.unrecognizedFields}}static fromJSON(t,r){let{keytype:n,scheme:a,keyval:o,...l}=r;if(typeof n!="string")throw new TypeError("keytype must be a string");if(typeof a!="string")throw new TypeError("scheme must be a string");if(!Lys.guard.isStringRecord(o))throw new TypeError("keyval must be a string record");return new e({keyID:t,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l})}};JFe.Key=X7r});var Qys=H((sig,Yys)=>{var Vys=K6r();Yys.exports=Kkl;var Wys="\0SLASH"+Math.random()+"\0",Oys="\0OPEN"+Math.random()+"\0",U7r="\0CLOSE"+Math.random()+"\0",Pys="\0COMMA"+Math.random()+"\0",Mys="\0PERIOD"+Math.random()+"\0";function J7r(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function Jkl(e){return e.split("\\\\").join(Wys).split("\\{").join(Oys).split("\\}").join(U7r).split("\\,").join(Pys).split("\\.").join(Mys)}function Ukl(e){return e.split(Wys).join("\\").split(Oys).join("{").split(U7r).join("}").split(Pys).join(",").split(Mys).join(".")}function Hys(e){if(!e)return[""];var t=[],r=Vys("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=Hys(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function Kkl(e,t){if(!e)return[];t=t||{};var r=t.max==null?1/0:t.max;return e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),rqe(Jkl(e),r,!0).map(Ukl)}function jkl(e){return"{"+e+"}"}function zkl(e){return/^-?0\d/.test(e)}function qkl(e,t){return e<=t}function $kl(e,t){return e>=t}function rqe(e,t,r){var n=[],a=Vys("{","}",e);if(!a)return[e];var o=a.pre,l=a.post.length?rqe(a.post,t,!1):[""];if(/\$$/.test(a.pre))for(var A=0;A=0;if(!b&&!E)return a.post.match(/,(?!,).*\}/)?(e=a.pre+"{"+a.body+U7r+a.post,rqe(e,t,!0)):[e];var N;if(b)N=a.body.split(/\.\./);else if(N=Hys(a.body),N.length===1&&(N=rqe(N[0],t,!1).map(jkl),N.length===1))return l.map(function(k){return a.pre+N[0]+k});var B;if(b){var F=J7r(N[0]),Q=J7r(N[1]),J=Math.max(N[0].length,N[1].length),ae=N.length==3?Math.max(Math.abs(J7r(N[2])),1):1,ne=qkl,ce=Q0){var Se=new Array(be+1).join("0");ue<0?de="-"+Se+de.slice(1):de=Se+de}}B.push(de)}}else{B=[];for(var De=0;De{"use strict";Object.defineProperty(A9t,"__esModule",{value:!0});A9t.assertValidPattern=void 0;var exl=1024*64,txl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>exl)throw new TypeError("pattern is too long")};A9t.assertValidPattern=txl});var Uys=H(d9t=>{"use strict";Object.defineProperty(d9t,"__esModule",{value:!0});d9t.parseClass=void 0;var rxl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},nqe=e=>e.replace(/[[\]\\-]/g,"\\$&"),nxl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Jys=e=>e.join(""),ixl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(nqe(b)+"-"+nqe(F)):F===b&&n.push(nqe(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(nqe(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(nqe(F)),o++}if(C{"use strict";Object.defineProperty(p9t,"__esModule",{value:!0});p9t.unescape=void 0;var sxl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");p9t.unescape=sxl});var z7r=H(C9t=>{"use strict";var uW;Object.defineProperty(C9t,"__esModule",{value:!0});C9t.AST=void 0;var oxl=Uys(),I9t=f9t(),axl=new Set(["!","?","+","*","@"]),K7r=e=>axl.has(e),Kys=e=>K7r(e.type),cxl=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),lxl=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),uxl=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),jys=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),gxl="(?!(?:^|/)\\.\\.?(?:$|/))",h9t="(?!\\.)",Axl=new Set(["[","."]),dxl=new Set(["..","."]),pxl=new Set("().*{}+?[]^$\\!"),fxl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),j7r="[^/]",zys=j7r+"*?",qys=j7r+"+?",m9t=class{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,J]=typeof N=="string"?uW.#B(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||J,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&dxl.has(this.#r[0]))){let B=Axl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?gxl:Q?h9t:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,I9t.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#p(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString(),I=this;return I.#r=[f],I.type=null,I.#t=void 0,[f,(0,I9t.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!h9t?"":this.#p(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?h9t:"")+qys;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?h9t:"")+zys+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,I9t.unescape)(o),this.#t=!!this.#t,this.#n]}#p(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#B(t,r,n=!1){let a=!1,o="",l=!1,A=!1;for(let f=0;f{"use strict";Object.defineProperty(_9t,"__esModule",{value:!0});_9t.escape=void 0;var Ixl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");_9t.escape=Ixl});var sbs=H(FA=>{"use strict";var hxl=FA&&FA.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FA,"__esModule",{value:!0});FA.unescape=FA.escape=FA.AST=FA.Minimatch=FA.match=FA.makeRe=FA.braceExpand=FA.defaults=FA.filter=FA.GLOBSTAR=FA.sep=FA.minimatch=void 0;var mxl=hxl(Qys()),y9t=Xys(),tbs=z7r(),Cxl=q7r(),_xl=f9t(),yxl=(e,t,r={})=>((0,y9t.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new Aye(t,r).match(e));FA.minimatch=yxl;var bxl=/^\*+([^+@!?\*\[\(]*)$/,Exl=e=>t=>!t.startsWith(".")&&t.endsWith(e),Sxl=e=>t=>t.endsWith(e),vxl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),Bxl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),wxl=/^\*+\.\*+$/,Txl=e=>!e.startsWith(".")&&e.includes("."),Rxl=e=>e!=="."&&e!==".."&&e.includes("."),Nxl=/^\.\*+$/,Dxl=e=>e!=="."&&e!==".."&&e.startsWith("."),kxl=/^\*+$/,xxl=e=>e.length!==0&&!e.startsWith("."),Gxl=e=>e.length!==0&&e!=="."&&e!=="..",Fxl=/^\?+([^+@!?\*\[\(]*)?$/,Zxl=([e,t=""])=>{let r=rbs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},Lxl=([e,t=""])=>{let r=nbs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},Vxl=([e,t=""])=>{let r=nbs([e]);return t?n=>r(n)&&n.endsWith(t):r},Wxl=([e,t=""])=>{let r=rbs([e]);return t?n=>r(n)&&n.endsWith(t):r},rbs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},nbs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},ibs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",$ys={win32:{sep:"\\"},posix:{sep:"/"}};FA.sep=ibs==="win32"?$ys.win32.sep:$ys.posix.sep;FA.minimatch.sep=FA.sep;FA.GLOBSTAR=Symbol("globstar **");FA.minimatch.GLOBSTAR=FA.GLOBSTAR;var Oxl="[^/]",Pxl=Oxl+"*?",Mxl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Hxl="(?:(?!(?:\\/|^)\\.).)*?",Yxl=(e,t={})=>r=>(0,FA.minimatch)(r,e,t);FA.filter=Yxl;FA.minimatch.filter=FA.filter;var aY=(e,t={})=>Object.assign({},e,t),Qxl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return FA.minimatch;let t=FA.minimatch;return Object.assign((n,a,o={})=>t(n,a,aY(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,aY(e,o))}static defaults(a){return t.defaults(aY(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,aY(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,aY(e,o))}},unescape:(n,a={})=>t.unescape(n,aY(e,a)),escape:(n,a={})=>t.escape(n,aY(e,a)),filter:(n,a={})=>t.filter(n,aY(e,a)),defaults:n=>t.defaults(aY(e,n)),makeRe:(n,a={})=>t.makeRe(n,aY(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,aY(e,a)),match:(n,a,o={})=>t.match(n,a,aY(e,o)),sep:t.sep,GLOBSTAR:FA.GLOBSTAR})};FA.defaults=Qxl;FA.minimatch.defaults=FA.defaults;var Xxl=(e,t={})=>((0,y9t.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,mxl.default)(e));FA.braceExpand=Xxl;FA.minimatch.braceExpand=FA.braceExpand;var Jxl=(e,t={})=>new Aye(e,t).makeRe();FA.makeRe=Jxl;FA.minimatch.makeRe=FA.makeRe;var Uxl=(e,t,r={})=>{let n=new Aye(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};FA.match=Uxl;FA.minimatch.match=FA.match;var ebs=/[?*]|[+@!]\(.*?\)|\[|\]/,Kxl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Aye=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(t,r={}){(0,y9t.assertValidPattern)(t),r=r||{},this.options=r,this.maxGlobstarRecursion=r.maxGlobstarRecursion??200,this.pattern=t,this.platform=r.platform||ibs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!ebs.test(o[2]))&&!ebs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;a=2&&(t=this.levelTwoFileOptimize(t)),r.includes(FA.GLOBSTAR)?this.#e(t,r,n,a,o):this.#n(t,r,n,a,o)}#e(t,r,n,a,o){let l=r.indexOf(FA.GLOBSTAR,o),A=r.lastIndexOf(FA.GLOBSTAR),[f,I,C]=n?[r.slice(o,l),r.slice(l+1),[]]:[r.slice(o,l),r.slice(l+1,A),r.slice(A+1)];if(f.length){let ae=t.slice(a,a+f.length);if(!this.#n(ae,f,n,0,0))return!1;a+=f.length}let b=0;if(C.length){if(C.length+a>t.length)return!1;let ae=t.length-C.length;if(this.#n(t,C,n,ae,0))b=C.length;else{if(t[t.length-1]!==""||a+C.length===t.length||(ae--,!this.#n(t,C,n,ae,0)))return!1;b=C.length+1}}if(!I.length){let ae=!!b;for(let ne=a;ne{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?Kxl(C):C===FA.GLOBSTAR?FA.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==FA.GLOBSTAR||N===FA.GLOBSTAR||(N===void 0?E!==void 0&&E!==FA.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==FA.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=FA.GLOBSTAR))}),I.filter(C=>C!==FA.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var obs=cY&&cY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cY,"__esModule",{value:!0});cY.SuccinctRoles=cY.DelegatedRole=cY.Role=cY.TOP_LEVEL_ROLE_NAMES=void 0;var abs=obs(Et("crypto")),$xl=sbs(),b9t=obs(Et("util")),E9t=t7(),dye=hJ();cY.TOP_LEVEL_ROLE_NAMES=["root","targets","snapshot","timestamp"];var iqe=class e{constructor(t){let{keyIDs:r,threshold:n,unrecognizedFields:a}=t;if(eGl(r))throw new E9t.ValueError("duplicate key IDs found");if(n<1)throw new E9t.ValueError("threshold must be at least 1");this.keyIDs=r,this.threshold=n,this.unrecognizedFields=a||{}}equals(t){return t instanceof e?this.threshold===t.threshold&&b9t.default.isDeepStrictEqual(this.keyIDs,t.keyIDs)&&b9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keyids:this.keyIDs,threshold:this.threshold,...this.unrecognizedFields}}static fromJSON(t){let{keyids:r,threshold:n,...a}=t;if(!dye.guard.isStringArray(r))throw new TypeError("keyids must be an array");if(typeof n!="number")throw new TypeError("threshold must be a number");return new e({keyIDs:r,threshold:n,unrecognizedFields:a})}};cY.Role=iqe;function eGl(e){return new Set(e).size!==e.length}var $7r=class e extends iqe{constructor(t){super(t);let{name:r,terminating:n,paths:a,pathHashPrefixes:o}=t;if(this.name=r,this.terminating=n,t.paths&&t.pathHashPrefixes)throw new E9t.ValueError("paths and pathHashPrefixes are mutually exclusive");this.paths=a,this.pathHashPrefixes=o}equals(t){return t instanceof e?super.equals(t)&&this.name===t.name&&this.terminating===t.terminating&&b9t.default.isDeepStrictEqual(this.paths,t.paths)&&b9t.default.isDeepStrictEqual(this.pathHashPrefixes,t.pathHashPrefixes):!1}isDelegatedPath(t){if(this.paths)return this.paths.some(r=>rGl(t,r));if(this.pathHashPrefixes){let n=abs.default.createHash("sha256").update(t).digest("hex");return this.pathHashPrefixes.some(a=>n.startsWith(a))}return!1}toJSON(){let t={...super.toJSON(),name:this.name,terminating:this.terminating};return this.paths&&(t.paths=this.paths),this.pathHashPrefixes&&(t.path_hash_prefixes=this.pathHashPrefixes),t}static fromJSON(t){let{keyids:r,threshold:n,name:a,terminating:o,paths:l,path_hash_prefixes:A,...f}=t;if(!dye.guard.isStringArray(r))throw new TypeError("keyids must be an array of strings");if(typeof n!="number")throw new TypeError("threshold must be a number");if(typeof a!="string")throw new TypeError("name must be a string");if(typeof o!="boolean")throw new TypeError("terminating must be a boolean");if(dye.guard.isDefined(l)&&!dye.guard.isStringArray(l))throw new TypeError("paths must be an array of strings");if(dye.guard.isDefined(A)&&!dye.guard.isStringArray(A))throw new TypeError("path_hash_prefixes must be an array of strings");return new e({keyIDs:r,threshold:n,name:a,terminating:o,paths:l,pathHashPrefixes:A,unrecognizedFields:f})}};cY.DelegatedRole=$7r;var tGl=(e,t)=>e.map((r,n)=>[r,t[n]]);function rGl(e,t){let r=e.split("/"),n=t.split("/");return n.length!=r.length?!1:tGl(r,n).every(([a,o])=>(0,$xl.minimatch)(a,o))}var ezr=class e extends iqe{constructor(t){super(t);let{bitLength:r,namePrefix:n}=t;if(r<=0||r>32)throw new E9t.ValueError("bitLength must be between 1 and 32");this.bitLength=r,this.namePrefix=n,this.numberOfBins=Math.pow(2,r),this.suffixLen=(this.numberOfBins-1).toString(16).length}equals(t){return t instanceof e?super.equals(t)&&this.bitLength===t.bitLength&&this.namePrefix===t.namePrefix:!1}getRoleForTarget(t){let a=abs.default.createHash("sha256").update(t).digest().subarray(0,4),o=32-this.bitLength,A=(a.readUInt32BE()>>>o).toString(16).padStart(this.suffixLen,"0");return`${this.namePrefix}-${A}`}*getRoles(){for(let t=0;t{"use strict";var nGl=UFe&&UFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UFe,"__esModule",{value:!0});UFe.Root=void 0;var cbs=nGl(Et("util")),rzr=gye(),lbs=t7(),iGl=g9t(),S9t=tzr(),v9t=hJ(),nzr=class e extends rzr.Signed{constructor(t){if(super(t),this.type=rzr.MetadataKind.Root,this.keys=t.keys||{},this.consistentSnapshot=t.consistentSnapshot??!0,!t.roles)this.roles=S9t.TOP_LEVEL_ROLE_NAMES.reduce((r,n)=>({...r,[n]:new S9t.Role({keyIDs:[],threshold:1})}),{});else{let r=new Set(Object.keys(t.roles));if(!S9t.TOP_LEVEL_ROLE_NAMES.every(n=>r.has(n)))throw new lbs.ValueError("missing top-level role");this.roles=t.roles}}addKey(t,r){if(!this.roles[r])throw new lbs.ValueError(`role ${r} does not exist`);this.roles[r].keyIDs.includes(t.keyID)||this.roles[r].keyIDs.push(t.keyID),this.keys[t.keyID]=t}equals(t){return t instanceof e?super.equals(t)&&this.consistentSnapshot===t.consistentSnapshot&&cbs.default.isDeepStrictEqual(this.keys,t.keys)&&cbs.default.isDeepStrictEqual(this.roles,t.roles):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,keys:sGl(this.keys),roles:oGl(this.roles),consistent_snapshot:this.consistentSnapshot,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=rzr.Signed.commonFieldsFromJSON(t),{keys:a,roles:o,consistent_snapshot:l,...A}=r;if(typeof l!="boolean")throw new TypeError("consistent_snapshot must be a boolean");return new e({...n,keys:aGl(a),roles:cGl(o),consistentSnapshot:l,unrecognizedFields:A})}};UFe.Root=nzr;function sGl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function oGl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function aGl(e){let t;if(v9t.guard.isDefined(e)){if(!v9t.guard.isObjectRecord(e))throw new TypeError("keys must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:iGl.Key.fromJSON(n,a)}),{})}return t}function cGl(e){let t;if(v9t.guard.isDefined(e)){if(!v9t.guard.isObjectRecord(e))throw new TypeError("roles must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:S9t.Role.fromJSON(a)}),{})}return t}});var ozr=H(B9t=>{"use strict";Object.defineProperty(B9t,"__esModule",{value:!0});B9t.Signature=void 0;var szr=class e{constructor(t){let{keyID:r,sig:n}=t;this.keyID=r,this.sig=n}toJSON(){return{keyid:this.keyID,sig:this.sig}}static fromJSON(t){let{keyid:r,sig:n}=t;if(typeof r!="string")throw new TypeError("keyid must be a string");if(typeof n!="string")throw new TypeError("sig must be a string");return new e({keyID:r,sig:n})}};B9t.Signature=szr});var lzr=H(KFe=>{"use strict";var lGl=KFe&&KFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KFe,"__esModule",{value:!0});KFe.Snapshot=void 0;var uGl=lGl(Et("util")),azr=gye(),gbs=qze(),ubs=hJ(),czr=class e extends azr.Signed{constructor(t){super(t),this.type=azr.MetadataKind.Snapshot,this.meta=t.meta||{"targets.json":new gbs.MetaFile({version:1})}}equals(t){return t instanceof e?super.equals(t)&&uGl.default.isDeepStrictEqual(this.meta,t.meta):!1}toJSON(){return{_type:this.type,meta:gGl(this.meta),spec_version:this.specVersion,version:this.version,expires:this.expires,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=azr.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,meta:AGl(a),unrecognizedFields:o})}};KFe.Snapshot=czr;function gGl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function AGl(e){let t;if(ubs.guard.isDefined(e))if(ubs.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:gbs.MetaFile.fromJSON(a)}),{});else throw new TypeError("meta field is malformed");return t}});var Abs=H(jFe=>{"use strict";var dGl=jFe&&jFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jFe,"__esModule",{value:!0});jFe.Delegations=void 0;var w9t=dGl(Et("util")),pGl=t7(),fGl=g9t(),uzr=tzr(),T9t=hJ(),gzr=class e{constructor(t){if(this.keys=t.keys,this.unrecognizedFields=t.unrecognizedFields||{},t.roles&&Object.keys(t.roles).some(r=>uzr.TOP_LEVEL_ROLE_NAMES.includes(r)))throw new pGl.ValueError("Delegated role name conflicts with top-level role name");this.succinctRoles=t.succinctRoles,this.roles=t.roles}equals(t){return t instanceof e?w9t.default.isDeepStrictEqual(this.keys,t.keys)&&w9t.default.isDeepStrictEqual(this.roles,t.roles)&&w9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields)&&w9t.default.isDeepStrictEqual(this.succinctRoles,t.succinctRoles):!1}*rolesForTarget(t){if(this.roles)for(let r of Object.values(this.roles))r.isDelegatedPath(t)&&(yield{role:r.name,terminating:r.terminating});else this.succinctRoles&&(yield{role:this.succinctRoles.getRoleForTarget(t),terminating:!0})}toJSON(){let t={keys:IGl(this.keys),...this.unrecognizedFields};return this.roles?t.roles=hGl(this.roles):this.succinctRoles&&(t.succinct_roles=this.succinctRoles.toJSON()),t}static fromJSON(t){let{keys:r,roles:n,succinct_roles:a,...o}=t,l;return T9t.guard.isObject(a)&&(l=uzr.SuccinctRoles.fromJSON(a)),new e({keys:mGl(r),roles:CGl(n),unrecognizedFields:o,succinctRoles:l})}};jFe.Delegations=gzr;function IGl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function hGl(e){return Object.values(e).map(t=>t.toJSON())}function mGl(e){if(!T9t.guard.isObjectRecord(e))throw new TypeError("keys is malformed");return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:fGl.Key.fromJSON(r,n)}),{})}function CGl(e){let t;if(T9t.guard.isDefined(e)){if(!T9t.guard.isObjectArray(e))throw new TypeError("roles is malformed");t=e.reduce((r,n)=>{let a=uzr.DelegatedRole.fromJSON(n);return{...r,[a.name]:a}},{})}return t}});var pzr=H(zFe=>{"use strict";var _Gl=zFe&&zFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zFe,"__esModule",{value:!0});zFe.Targets=void 0;var dbs=_Gl(Et("util")),Azr=gye(),yGl=Abs(),bGl=qze(),R9t=hJ(),dzr=class e extends Azr.Signed{constructor(t){super(t),this.type=Azr.MetadataKind.Targets,this.targets=t.targets||{},this.delegations=t.delegations}addTarget(t){this.targets[t.path]=t}equals(t){return t instanceof e?super.equals(t)&&dbs.default.isDeepStrictEqual(this.targets,t.targets)&&dbs.default.isDeepStrictEqual(this.delegations,t.delegations):!1}toJSON(){let t={_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,targets:EGl(this.targets),...this.unrecognizedFields};return this.delegations&&(t.delegations=this.delegations.toJSON()),t}static fromJSON(t){let{unrecognizedFields:r,...n}=Azr.Signed.commonFieldsFromJSON(t),{targets:a,delegations:o,...l}=r;return new e({...n,targets:SGl(a),delegations:vGl(o),unrecognizedFields:l})}};zFe.Targets=dzr;function EGl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function SGl(e){let t;if(R9t.guard.isDefined(e))if(R9t.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:bGl.TargetFile.fromJSON(n,a)}),{});else throw new TypeError("targets must be an object");return t}function vGl(e){let t;if(R9t.guard.isDefined(e))if(R9t.guard.isObject(e))t=yGl.Delegations.fromJSON(e);else throw new TypeError("delegations must be an object");return t}});var mzr=H(N9t=>{"use strict";Object.defineProperty(N9t,"__esModule",{value:!0});N9t.Timestamp=void 0;var fzr=gye(),pbs=qze(),Izr=hJ(),hzr=class e extends fzr.Signed{constructor(t){super(t),this.type=fzr.MetadataKind.Timestamp,this.snapshotMeta=t.snapshotMeta||new pbs.MetaFile({version:1})}equals(t){return t instanceof e?super.equals(t)&&this.snapshotMeta.equals(t.snapshotMeta):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,meta:{"snapshot.json":this.snapshotMeta.toJSON()},...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=fzr.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,snapshotMeta:BGl(a),unrecognizedFields:o})}};N9t.Timestamp=hzr;function BGl(e){let t;if(Izr.guard.isDefined(e)){let r=e["snapshot.json"];if(!Izr.guard.isDefined(r)||!Izr.guard.isObject(r))throw new TypeError("missing snapshot.json in meta");t=pbs.MetaFile.fromJSON(r)}return t}});var Ibs=H($Fe=>{"use strict";var wGl=$Fe&&$Fe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($Fe,"__esModule",{value:!0});$Fe.Metadata=void 0;var TGl=L7r(),fbs=wGl(Et("util")),qFe=gye(),sqe=t7(),RGl=izr(),NGl=ozr(),DGl=lzr(),kGl=pzr(),xGl=mzr(),Czr=hJ(),_zr=class e{constructor(t,r,n){this.signed=t,this.signatures=r||{},this.unrecognizedFields=n||{}}sign(t,r=!0){let n=Buffer.from((0,TGl.canonicalize)(this.signed.toJSON())),a=t(n);r||(this.signatures={}),this.signatures[a.keyID]=a}verifyDelegate(t,r){let n,a={};switch(this.signed.type){case qFe.MetadataKind.Root:a=this.signed.keys,n=this.signed.roles[t];break;case qFe.MetadataKind.Targets:if(!this.signed.delegations)throw new sqe.ValueError(`No delegations found for ${t}`);a=this.signed.delegations.keys,this.signed.delegations.roles?n=this.signed.delegations.roles[t]:this.signed.delegations.succinctRoles&&this.signed.delegations.succinctRoles.isDelegatedRole(t)&&(n=this.signed.delegations.succinctRoles);break;default:throw new TypeError("invalid metadata type")}if(!n)throw new sqe.ValueError(`no delegation found for ${t}`);let o=new Set;if(n.keyIDs.forEach(l=>{let A=a[l];if(A)try{A.verifySignature(r),o.add(A.keyID)}catch{}}),o.sizer.toJSON()),signed:this.signed.toJSON(),...this.unrecognizedFields}}static fromJSON(t,r){let{signed:n,signatures:a,...o}=r;if(!Czr.guard.isDefined(n)||!Czr.guard.isObject(n))throw new TypeError("signed is not defined");if(t!==n._type)throw new sqe.ValueError(`expected '${t}', got ${n._type}`);if(!Czr.guard.isObjectArray(a))throw new TypeError("signatures is not an array");let l;switch(t){case qFe.MetadataKind.Root:l=RGl.Root.fromJSON(n);break;case qFe.MetadataKind.Timestamp:l=xGl.Timestamp.fromJSON(n);break;case qFe.MetadataKind.Snapshot:l=DGl.Snapshot.fromJSON(n);break;case qFe.MetadataKind.Targets:l=kGl.Targets.fromJSON(n);break;default:throw new TypeError("invalid metadata type")}let A={};return a.forEach(f=>{let I=NGl.Signature.fromJSON(f);if(A[I.keyID])throw new sqe.ValueError(`multiple signatures found for keyid: ${I.keyID}`);A[I.keyID]=I}),new e(l,A,o)}};$Fe.Metadata=_zr});var D9t=H(Y2=>{"use strict";Object.defineProperty(Y2,"__esModule",{value:!0});Y2.Timestamp=Y2.Targets=Y2.Snapshot=Y2.Signature=Y2.Root=Y2.Metadata=Y2.Key=Y2.TargetFile=Y2.MetaFile=Y2.ValueError=Y2.MetadataKind=void 0;var GGl=gye();Object.defineProperty(Y2,"MetadataKind",{enumerable:!0,get:function(){return GGl.MetadataKind}});var FGl=t7();Object.defineProperty(Y2,"ValueError",{enumerable:!0,get:function(){return FGl.ValueError}});var hbs=qze();Object.defineProperty(Y2,"MetaFile",{enumerable:!0,get:function(){return hbs.MetaFile}});Object.defineProperty(Y2,"TargetFile",{enumerable:!0,get:function(){return hbs.TargetFile}});var ZGl=g9t();Object.defineProperty(Y2,"Key",{enumerable:!0,get:function(){return ZGl.Key}});var LGl=Ibs();Object.defineProperty(Y2,"Metadata",{enumerable:!0,get:function(){return LGl.Metadata}});var VGl=izr();Object.defineProperty(Y2,"Root",{enumerable:!0,get:function(){return VGl.Root}});var WGl=ozr();Object.defineProperty(Y2,"Signature",{enumerable:!0,get:function(){return WGl.Signature}});var OGl=lzr();Object.defineProperty(Y2,"Snapshot",{enumerable:!0,get:function(){return OGl.Snapshot}});var PGl=pzr();Object.defineProperty(Y2,"Targets",{enumerable:!0,get:function(){return PGl.Targets}});var MGl=mzr();Object.defineProperty(Y2,"Timestamp",{enumerable:!0,get:function(){return MGl.Timestamp}})});var yzr=H((Eig,mbs)=>{function HGl(e){r.debug=r,r.default=r,r.coerce=f,r.disable=l,r.enable=a,r.enabled=A,r.humanize=ISr(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(J,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(J,Q),(J.log||r.log).apply(J,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b=(typeof C=="string"?C:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let E of b)E[0]==="-"?r.skips.push(E.slice(1)):r.names.push(E)}function o(C,b){let E=0,N=0,B=-1,F=0;for(;E"-"+b)].join(",");return r.enable(""),C}function A(C){for(let b of r.skips)if(o(C,b))return!1;for(let b of r.names)if(o(C,b))return!0;return!1}function f(C){return C instanceof Error?C.stack||C.message:C}function I(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}mbs.exports=HGl});var Cbs=H((gW,k9t)=>{gW.formatArgs=QGl;gW.save=XGl;gW.load=JGl;gW.useColors=YGl;gW.storage=UGl();gW.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();gW.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function YGl(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function QGl(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+k9t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}gW.log=console.debug||console.log||(()=>{});function XGl(e){try{e?gW.storage.setItem("debug",e):gW.storage.removeItem("debug")}catch{}}function JGl(){let e;try{e=gW.storage.getItem("debug")||gW.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function UGl(){try{return localStorage}catch{}}k9t.exports=yzr()(gW);var{formatters:KGl}=k9t.exports;KGl.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var ybs=H((kD,G9t)=>{var jGl=Et("tty"),x9t=Et("util");kD.init=nFl;kD.log=eFl;kD.formatArgs=qGl;kD.save=tFl;kD.load=rFl;kD.useColors=zGl;kD.destroy=x9t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");kD.colors=[6,2,3,4,5,1];try{let e=Et("supports-color");e&&(e.stderr||e).level>=2&&(kD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}kD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function zGl(){return"colors"in kD.inspectOpts?!!kD.inspectOpts.colors:jGl.isatty(process.stderr.fd)}function qGl(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +`;let f=(0,eNl.parseProxyResponse)(a);a.write(`${A}\r +`);let{connect:I,buffered:C}=await f;if(t.emit("proxyConnect",I),this.emit("proxyConnect",I,t),I.statusCode===200){if(t.once("socket",tNl),r.secureEndpoint){Oze("Upgrading socket connection to TLS");let E=r.servername||r.host;return G_s.connect({...F_s(r,"host","path","port"),socket:a,servername:E})}return a}a.destroy();let b=new Wjr.Socket({writable:!1});return b.readable=!0,t.once("socket",E=>{Oze("Replaying proxy buffer for failed request"),(0,jRl.default)(E.listenerCount("data")>0),E.push(C),E.push(null)}),b}};DLt.protocols=["http","https"];iY.HttpsProxyAgent=DLt;function tNl(e){e.resume()}function F_s(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var M_s=H(vre=>{"use strict";Object.defineProperty(vre,"__esModule",{value:!0});var W_s=Et("buffer"),iye={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};vre.ERRORS=iye;function rNl(e){if(!W_s.Buffer.isEncoding(e))throw new Error(iye.INVALID_ENCODING)}vre.checkEncoding=rNl;function O_s(e){return typeof e=="number"&&isFinite(e)&&oNl(e)}vre.isFiniteInteger=O_s;function P_s(e,t){if(typeof e=="number"){if(!O_s(e)||e<0)throw new Error(t?iye.INVALID_OFFSET:iye.INVALID_LENGTH)}else throw new Error(t?iye.INVALID_OFFSET_NON_NUMBER:iye.INVALID_LENGTH_NON_NUMBER)}function nNl(e){P_s(e,!1)}vre.checkLengthValue=nNl;function iNl(e){P_s(e,!0)}vre.checkOffsetValue=iNl;function sNl(e,t){if(e<0||e>t.length)throw new Error(iye.INVALID_TARGET_OFFSET)}vre.checkTargetOffset=sNl;function oNl(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e}function aNl(e){if(typeof BigInt>"u")throw new Error("Platform does not support JS BigInt type.");if(typeof W_s.Buffer.prototype[e]>"u")throw new Error(`Platform does not support Buffer.prototype.${e}.`)}vre.bigIntAndBufferInt64Check=aNl});var Y_s=H(Pjr=>{"use strict";Object.defineProperty(Pjr,"__esModule",{value:!0});var Uh=M_s(),H_s=4096,cNl="utf8",Ojr=class e{constructor(t){if(this.length=0,this._encoding=cNl,this._writeOffset=0,this._readOffset=0,e.isSmartBufferOptions(t))if(t.encoding&&(Uh.checkEncoding(t.encoding),this._encoding=t.encoding),t.size)if(Uh.isFiniteInteger(t.size)&&t.size>0)this._buff=Buffer.allocUnsafe(t.size);else throw new Error(Uh.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(t.buff)if(Buffer.isBuffer(t.buff))this._buff=t.buff,this.length=t.buff.length;else throw new Error(Uh.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(H_s);else{if(typeof t<"u")throw new Error(Uh.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(H_s)}}static fromSize(t,r){return new this({size:t,encoding:r})}static fromBuffer(t,r){return new this({buff:t,encoding:r})}static fromOptions(t){return new this(t)}static isSmartBufferOptions(t){let r=t;return r&&(r.encoding!==void 0||r.size!==void 0||r.buff!==void 0)}readInt8(t){return this._readNumberValue(Buffer.prototype.readInt8,1,t)}readInt16BE(t){return this._readNumberValue(Buffer.prototype.readInt16BE,2,t)}readInt16LE(t){return this._readNumberValue(Buffer.prototype.readInt16LE,2,t)}readInt32BE(t){return this._readNumberValue(Buffer.prototype.readInt32BE,4,t)}readInt32LE(t){return this._readNumberValue(Buffer.prototype.readInt32LE,4,t)}readBigInt64BE(t){return Uh.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,t)}readBigInt64LE(t){return Uh.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,t)}writeInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeInt8,1,t,r),this}insertInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeInt8,1,t,r)}writeInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}insertInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}writeInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}insertInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}writeInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}insertInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}writeInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}insertInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}writeBigInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}insertBigInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}writeBigInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}insertBigInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}readUInt8(t){return this._readNumberValue(Buffer.prototype.readUInt8,1,t)}readUInt16BE(t){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,t)}readUInt16LE(t){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,t)}readUInt32BE(t){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,t)}readUInt32LE(t){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,t)}readBigUInt64BE(t){return Uh.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,t)}readBigUInt64LE(t){return Uh.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,t)}writeUInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,t,r)}insertUInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,t,r)}writeUInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}insertUInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}writeUInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}insertUInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}writeUInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}insertUInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}writeUInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}insertUInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}writeBigUInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}insertBigUInt64BE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}writeBigUInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}insertBigUInt64LE(t,r){return Uh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}readFloatBE(t){return this._readNumberValue(Buffer.prototype.readFloatBE,4,t)}readFloatLE(t){return this._readNumberValue(Buffer.prototype.readFloatLE,4,t)}writeFloatBE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}insertFloatBE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}writeFloatLE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}insertFloatLE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}readDoubleBE(t){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,t)}readDoubleLE(t){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,t)}writeDoubleBE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}insertDoubleBE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}writeDoubleLE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}insertDoubleLE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}readString(t,r){let n;typeof t=="number"?(Uh.checkLengthValue(t),n=Math.min(t,this.length-this._readOffset)):(r=t,n=this.length-this._readOffset),typeof r<"u"&&Uh.checkEncoding(r);let a=this._buff.slice(this._readOffset,this._readOffset+n).toString(r||this._encoding);return this._readOffset+=n,a}insertString(t,r,n){return Uh.checkOffsetValue(r),this._handleString(t,!0,r,n)}writeString(t,r,n){return this._handleString(t,!1,r,n)}readStringNT(t){typeof t<"u"&&Uh.checkEncoding(t);let r=this.length;for(let a=this._readOffset;athis.length)throw new Error(Uh.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(t,r){Uh.checkOffsetValue(r),this._ensureCapacity(this.length+t),rthis.length?this.length=r+t:this.length+=t}_ensureWriteable(t,r){let n=typeof r=="number"?r:this._writeOffset;this._ensureCapacity(n+t),n+t>this.length&&(this.length=n+t)}_ensureCapacity(t){let r=this._buff.length;if(t>r){let n=this._buff,a=r*3/2+1;a"u"&&(this._readOffset+=r),a}_insertNumberValue(t,r,n,a){return Uh.checkOffsetValue(a),this.ensureInsertable(r,a),t.call(this._buff,n,a),this._writeOffset+=r,this}_writeNumberValue(t,r,n,a){if(typeof a=="number"){if(a<0)throw new Error(Uh.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);Uh.checkOffsetValue(a)}let o=typeof a=="number"?a:this._writeOffset;return this._ensureWriteable(r,o),t.call(this._buff,n,o),typeof a=="number"?this._writeOffset=Math.max(this._writeOffset,o+r):this._writeOffset+=r,this}};Pjr.SmartBuffer=Ojr});var Mjr=H(JE=>{"use strict";Object.defineProperty(JE,"__esModule",{value:!0});JE.SOCKS5_NO_ACCEPTABLE_AUTH=JE.SOCKS5_CUSTOM_AUTH_END=JE.SOCKS5_CUSTOM_AUTH_START=JE.SOCKS_INCOMING_PACKET_SIZES=JE.SocksClientState=JE.Socks5Response=JE.Socks5HostType=JE.Socks5Auth=JE.Socks4Response=JE.SocksCommand=JE.ERRORS=JE.DEFAULT_TIMEOUT=void 0;var lNl=3e4;JE.DEFAULT_TIMEOUT=lNl;var uNl={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};JE.ERRORS=uNl;var gNl={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:e=>e+7,Socks4Response:8};JE.SOCKS_INCOMING_PACKET_SIZES=gNl;var Q_s;(function(e){e[e.connect=1]="connect",e[e.bind=2]="bind",e[e.associate=3]="associate"})(Q_s||(JE.SocksCommand=Q_s={}));var X_s;(function(e){e[e.Granted=90]="Granted",e[e.Failed=91]="Failed",e[e.Rejected=92]="Rejected",e[e.RejectedIdent=93]="RejectedIdent"})(X_s||(JE.Socks4Response=X_s={}));var J_s;(function(e){e[e.NoAuth=0]="NoAuth",e[e.GSSApi=1]="GSSApi",e[e.UserPass=2]="UserPass"})(J_s||(JE.Socks5Auth=J_s={}));var ANl=128;JE.SOCKS5_CUSTOM_AUTH_START=ANl;var dNl=254;JE.SOCKS5_CUSTOM_AUTH_END=dNl;var pNl=255;JE.SOCKS5_NO_ACCEPTABLE_AUTH=pNl;var U_s;(function(e){e[e.Granted=0]="Granted",e[e.Failure=1]="Failure",e[e.NotAllowed=2]="NotAllowed",e[e.NetworkUnreachable=3]="NetworkUnreachable",e[e.HostUnreachable=4]="HostUnreachable",e[e.ConnectionRefused=5]="ConnectionRefused",e[e.TTLExpired=6]="TTLExpired",e[e.CommandNotSupported=7]="CommandNotSupported",e[e.AddressNotSupported=8]="AddressNotSupported"})(U_s||(JE.Socks5Response=U_s={}));var K_s;(function(e){e[e.IPv4=1]="IPv4",e[e.Hostname=3]="Hostname",e[e.IPv6=4]="IPv6"})(K_s||(JE.Socks5HostType=K_s={}));var j_s;(function(e){e[e.Created=0]="Created",e[e.Connecting=1]="Connecting",e[e.Connected=2]="Connected",e[e.SentInitialHandshake=3]="SentInitialHandshake",e[e.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",e[e.SentAuthentication=5]="SentAuthentication",e[e.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",e[e.SentFinalHandshake=7]="SentFinalHandshake",e[e.ReceivedFinalResponse=8]="ReceivedFinalResponse",e[e.BoundWaitingForConnection=9]="BoundWaitingForConnection",e[e.Established=10]="Established",e[e.Disconnected=11]="Disconnected",e[e.Error=99]="Error"})(j_s||(JE.SocksClientState=j_s={}))});var Yjr=H(GFe=>{"use strict";Object.defineProperty(GFe,"__esModule",{value:!0});GFe.shuffleArray=GFe.SocksClientError=void 0;var Hjr=class extends Error{constructor(t,r){super(t),this.options=r}};GFe.SocksClientError=Hjr;function fNl(e){for(let t=e.length-1;t>0;t--){let r=Math.floor(Math.random()*(t+1));[e[t],e[r]]=[e[r],e[t]]}}GFe.shuffleArray=fNl});var Qjr=H(FFe=>{"use strict";Object.defineProperty(FFe,"__esModule",{value:!0});FFe.isCorrect=FFe.isInSubnet=void 0;function INl(e){return this.subnetMask{"use strict";Object.defineProperty(qj,"__esModule",{value:!0});qj.RE_SUBNET_STRING=qj.RE_ADDRESS=qj.GROUPS=qj.BITS=void 0;qj.BITS=32;qj.GROUPS=4;qj.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;qj.RE_SUBNET_STRING=/\/\d{1,2}$/});var xLt=H(kLt=>{"use strict";Object.defineProperty(kLt,"__esModule",{value:!0});kLt.AddressError=void 0;var Jjr=class extends Error{constructor(t,r){super(t),this.name="AddressError",r!==null&&(this.parseMessage=r)}};kLt.AddressError=Jjr});var Ujr=H((GLt,z_s)=>{(function(){var e,t=0xdeadbeefcafe,r=(t&16777215)==15715070;function n(vr,Zt,yn){vr!=null&&(typeof vr=="number"?this.fromNumber(vr,Zt,yn):Zt==null&&typeof vr!="string"?this.fromString(vr,256):this.fromString(vr,Zt))}function a(){return new n(null)}function o(vr,Zt,yn,ls,oa,Fs){for(;--Fs>=0;){var Oa=Zt*this[vr++]+yn[ls]+oa;oa=Math.floor(Oa/67108864),yn[ls++]=Oa&67108863}return oa}function l(vr,Zt,yn,ls,oa,Fs){for(var Oa=Zt&32767,Ca=Zt>>15;--Fs>=0;){var gd=this[vr]&32767,Dp=this[vr++]>>15,sp=Ca*gd+Dp*Oa;gd=Oa*gd+((sp&32767)<<15)+yn[ls]+(oa&1073741823),oa=(gd>>>30)+(sp>>>15)+Ca*Dp+(oa>>>30),yn[ls++]=gd&1073741823}return oa}function A(vr,Zt,yn,ls,oa,Fs){for(var Oa=Zt&16383,Ca=Zt>>14;--Fs>=0;){var gd=this[vr]&16383,Dp=this[vr++]>>14,sp=Ca*gd+Dp*Oa;gd=Oa*gd+((sp&16383)<<14)+yn[ls]+oa,oa=(gd>>28)+(sp>>14)+Ca*Dp,yn[ls++]=gd&268435455}return oa}var f=typeof navigator<"u";f&&r&&navigator.appName=="Microsoft Internet Explorer"?(n.prototype.am=l,e=30):f&&r&&navigator.appName!="Netscape"?(n.prototype.am=o,e=26):(n.prototype.am=A,e=28),n.prototype.DB=e,n.prototype.DM=(1<=0;--Zt)vr[Zt]=this[Zt];vr.t=this.t,vr.s=this.s}function J(vr){this.t=1,this.s=vr<0?-1:0,vr>0?this[0]=vr:vr<-1?this[0]=vr+this.DV:this.t=0}function ae(vr){var Zt=a();return Zt.fromInt(vr),Zt}function ne(vr,Zt){var yn;if(Zt==16)yn=4;else if(Zt==8)yn=3;else if(Zt==256)yn=8;else if(Zt==2)yn=1;else if(Zt==32)yn=5;else if(Zt==4)yn=2;else{this.fromRadix(vr,Zt);return}this.t=0,this.s=0;for(var ls=vr.length,oa=!1,Fs=0;--ls>=0;){var Oa=yn==8?vr[ls]&255:F(vr,ls);if(Oa<0){vr.charAt(ls)=="-"&&(oa=!0);continue}oa=!1,Fs==0?this[this.t++]=Oa:Fs+yn>this.DB?(this[this.t-1]|=(Oa&(1<>this.DB-Fs):this[this.t-1]|=Oa<=this.DB&&(Fs-=this.DB)}yn==8&&vr[0]&128&&(this.s=-1,Fs>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==vr;)--this.t}function fe(vr){if(this.s<0)return"-"+this.negate().toString(vr);var Zt;if(vr==16)Zt=4;else if(vr==8)Zt=3;else if(vr==2)Zt=1;else if(vr==32)Zt=5;else if(vr==4)Zt=2;else return this.toRadix(vr);var yn=(1<0)for(Ca>Ca)>0&&(oa=!0,Fs=B(ls));Oa>=0;)Ca>(Ca+=this.DB-Zt)):(ls=this[Oa]>>(Ca-=Zt)&yn,Ca<=0&&(Ca+=this.DB,--Oa)),ls>0&&(oa=!0),oa&&(Fs+=B(ls));return oa?Fs:"0"}function ue(){var vr=a();return n.ZERO.subTo(this,vr),vr}function de(){return this.s<0?this.negate():this}function be(vr){var Zt=this.s-vr.s;if(Zt!=0)return Zt;var yn=this.t;if(Zt=yn-vr.t,Zt!=0)return this.s<0?-Zt:Zt;for(;--yn>=0;)if((Zt=this[yn]-vr[yn])!=0)return Zt;return 0}function Se(vr){var Zt=1,yn;return(yn=vr>>>16)!=0&&(vr=yn,Zt+=16),(yn=vr>>8)!=0&&(vr=yn,Zt+=8),(yn=vr>>4)!=0&&(vr=yn,Zt+=4),(yn=vr>>2)!=0&&(vr=yn,Zt+=2),(yn=vr>>1)!=0&&(vr=yn,Zt+=1),Zt}function De(){return this.t<=0?0:this.DB*(this.t-1)+Se(this[this.t-1]^this.s&this.DM)}function k(vr,Zt){var yn;for(yn=this.t-1;yn>=0;--yn)Zt[yn+vr]=this[yn];for(yn=vr-1;yn>=0;--yn)Zt[yn]=0;Zt.t=this.t+vr,Zt.s=this.s}function tt(vr,Zt){for(var yn=vr;yn=0;--Ca)Zt[Ca+Fs+1]=this[Ca]>>ls|Oa,Oa=(this[Ca]&oa)<=0;--Ca)Zt[Ca]=0;Zt[Fs]=Oa,Zt.t=this.t+Fs+1,Zt.s=this.s,Zt.clamp()}function Le(vr,Zt){Zt.s=this.s;var yn=Math.floor(vr/this.DB);if(yn>=this.t){Zt.t=0;return}var ls=vr%this.DB,oa=this.DB-ls,Fs=(1<>ls;for(var Oa=yn+1;Oa>ls;ls>0&&(Zt[this.t-yn-1]|=(this.s&Fs)<>=this.DB;if(vr.t>=this.DB;ls+=this.s}else{for(ls+=this.s;yn>=this.DB;ls-=vr.s}Zt.s=ls<0?-1:0,ls<-1?Zt[yn++]=this.DV+ls:ls>0&&(Zt[yn++]=ls),Zt.t=yn,Zt.clamp()}function ft(vr,Zt){var yn=this.abs(),ls=vr.abs(),oa=yn.t;for(Zt.t=oa+ls.t;--oa>=0;)Zt[oa]=0;for(oa=0;oa=0;)vr[yn]=0;for(yn=0;yn=Zt.DV&&(vr[yn+Zt.t]-=Zt.DV,vr[yn+Zt.t+1]=1)}vr.t>0&&(vr[vr.t-1]+=Zt.am(yn,Zt[yn],vr,2*yn,0,1)),vr.s=0,vr.clamp()}function Ot(vr,Zt,yn){var ls=vr.abs();if(!(ls.t<=0)){var oa=this.abs();if(oa.t0?(ls.lShiftTo(gd,Fs),oa.lShiftTo(gd,yn)):(ls.copyTo(Fs),oa.copyTo(yn));var Dp=Fs.t,sp=Fs[Dp-1];if(sp!=0){var QA=sp*(1<1?Fs[Dp-2]>>this.F2:0),ff=this.FV/QA,Zs=(1<=0&&(yn[yn.t++]=1,yn.subTo(Dr,yn)),n.ONE.dlShiftTo(Dp,Dr),Dr.subTo(Fs,Fs);Fs.t=0;){var On=yn[--Ea]==sp?this.DM:Math.floor(yn[Ea]*ff+(yn[Ea-1]+io)*Zs);if((yn[Ea]+=Fs.am(0,On,yn,Hl,0,Dp))0&&yn.rShiftTo(gd,yn),Oa<0&&n.ZERO.subTo(yn,yn)}}}function Er(vr){var Zt=a();return this.abs().divRemTo(vr,null,Zt),this.s<0&&Zt.compareTo(n.ZERO)>0&&vr.subTo(Zt,Zt),Zt}function Sr(vr){this.m=vr}function jt(vr){return vr.s<0||vr.compareTo(this.m)>=0?vr.mod(this.m):vr}function Bt(vr){return vr}function Nt(vr){vr.divRemTo(this.m,null,vr)}function Fr(vr,Zt,yn){vr.multiplyTo(Zt,yn),this.reduce(yn)}function $t(vr,Zt){vr.squareTo(Zt),this.reduce(Zt)}Sr.prototype.convert=jt,Sr.prototype.revert=Bt,Sr.prototype.reduce=Nt,Sr.prototype.mulTo=Fr,Sr.prototype.sqrTo=$t;function Xt(){if(this.t<1)return 0;var vr=this[0];if(!(vr&1))return 0;var Zt=vr&3;return Zt=Zt*(2-(vr&15)*Zt)&15,Zt=Zt*(2-(vr&255)*Zt)&255,Zt=Zt*(2-((vr&65535)*Zt&65535))&65535,Zt=Zt*(2-vr*Zt%this.DV)%this.DV,Zt>0?this.DV-Zt:-Zt}function lr(vr){this.m=vr,this.mp=vr.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(Zt,Zt),Zt}function Ar(vr){var Zt=a();return vr.copyTo(Zt),this.reduce(Zt),Zt}function qr(vr){for(;vr.t<=this.mt2;)vr[vr.t++]=0;for(var Zt=0;Zt>15)*this.mpl&this.um)<<15)&vr.DM;for(yn=Zt+this.m.t,vr[yn]+=this.m.am(0,ls,vr,Zt,0,this.m.t);vr[yn]>=vr.DV;)vr[yn]-=vr.DV,vr[++yn]++}vr.clamp(),vr.drShiftTo(this.m.t,vr),vr.compareTo(this.m)>=0&&vr.subTo(this.m,vr)}function _n(vr,Zt){vr.squareTo(Zt),this.reduce(Zt)}function ke(vr,Zt,yn){vr.multiplyTo(Zt,yn),this.reduce(yn)}lr.prototype.convert=cr,lr.prototype.revert=Ar,lr.prototype.reduce=qr,lr.prototype.mulTo=ke,lr.prototype.sqrTo=_n;function zt(){return(this.t>0?this[0]&1:this.s)==0}function Fn(vr,Zt){if(vr>4294967295||vr<1)return n.ONE;var yn=a(),ls=a(),oa=Zt.convert(this),Fs=Se(vr)-1;for(oa.copyTo(yn);--Fs>=0;)if(Zt.sqrTo(yn,ls),(vr&1<0)Zt.mulTo(ls,oa,yn);else{var Oa=yn;yn=ls,ls=Oa}return Zt.revert(yn)}function Nn(vr,Zt){var yn;return vr<256||Zt.isEven()?yn=new Sr(Zt):yn=new lr(Zt),this.exp(vr,yn)}n.prototype.copyTo=Q,n.prototype.fromInt=J,n.prototype.fromString=ne,n.prototype.clamp=ce,n.prototype.dlShiftTo=k,n.prototype.drShiftTo=tt,n.prototype.lShiftTo=ze,n.prototype.rShiftTo=Le,n.prototype.subTo=Je,n.prototype.multiplyTo=ft,n.prototype.squareTo=lt,n.prototype.divRemTo=Ot,n.prototype.invDigit=Xt,n.prototype.isEven=zt,n.prototype.exp=Fn,n.prototype.toString=fe,n.prototype.negate=ue,n.prototype.abs=de,n.prototype.compareTo=be,n.prototype.bitLength=De,n.prototype.mod=Er,n.prototype.modPowInt=Nn,n.ZERO=ae(0),n.ONE=ae(1);function Hi(){var vr=a();return this.copyTo(vr),vr}function Ao(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function xi(){return this.t==0?this.s:this[0]<<16>>16}function no(vr){return Math.floor(Math.LN2*this.DB/Math.log(vr))}function ga(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function Ya(vr){if(vr==null&&(vr=10),this.signum()==0||vr<2||vr>36)return"0";var Zt=this.chunkSize(vr),yn=Math.pow(vr,Zt),ls=ae(yn),oa=a(),Fs=a(),Oa="";for(this.divRemTo(ls,oa,Fs);oa.signum()>0;)Oa=(yn+Fs.intValue()).toString(vr).substr(1)+Oa,oa.divRemTo(ls,oa,Fs);return Fs.intValue().toString(vr)+Oa}function Gc(vr,Zt){this.fromInt(0),Zt==null&&(Zt=10);for(var yn=this.chunkSize(Zt),ls=Math.pow(Zt,yn),oa=!1,Fs=0,Oa=0,Ca=0;Ca=yn&&(this.dMultiply(ls),this.dAddOffset(Oa,0),Fs=0,Oa=0)}Fs>0&&(this.dMultiply(Math.pow(Zt,Fs)),this.dAddOffset(Oa,0)),oa&&n.ZERO.subTo(this,this)}function al(vr,Zt,yn){if(typeof Zt=="number")if(vr<2)this.fromInt(1);else for(this.fromNumber(vr,yn),this.testBit(vr-1)||this.bitwiseTo(n.ONE.shiftLeft(vr-1),Qi,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(Zt);)this.dAddOffset(2,0),this.bitLength()>vr&&this.subTo(n.ONE.shiftLeft(vr-1),this);else{var ls=new Array,oa=vr&7;ls.length=(vr>>3)+1,Zt.nextBytes(ls),oa>0?ls[0]&=(1<0)for(yn>yn)!=(this.s&this.DM)>>yn&&(Zt[oa++]=ls|this.s<=0;)yn<8?(ls=(this[vr]&(1<>(yn+=this.DB-8)):(ls=this[vr]>>(yn-=8)&255,yn<=0&&(yn+=this.DB,--vr)),ls&128&&(ls|=-256),oa==0&&(this.s&128)!=(ls&128)&&++oa,(oa>0||ls!=this.s)&&(Zt[oa++]=ls);return Zt}function Hr(vr){return this.compareTo(vr)==0}function Or(vr){return this.compareTo(vr)<0?this:vr}function Ft(vr){return this.compareTo(vr)>0?this:vr}function zr(vr,Zt,yn){var ls,oa,Fs=Math.min(vr.t,this.t);for(ls=0;ls>=16,Zt+=16),vr&255||(vr>>=8,Zt+=8),vr&15||(vr>>=4,Zt+=4),vr&3||(vr>>=2,Zt+=2),vr&1||++Zt,Zt}function vu(){for(var vr=0;vr=this.t?this.s!=0:(this[Zt]&1<>=this.DB;if(vr.t>=this.DB;ls+=this.s}else{for(ls+=this.s;yn>=this.DB;ls+=vr.s}Zt.s=ls<0?-1:0,ls>0?Zt[yn++]=ls:ls<-1&&(Zt[yn++]=this.DV+ls),Zt.t=yn,Zt.clamp()}function Kl(vr){var Zt=a();return this.addTo(vr,Zt),Zt}function Ju(vr){var Zt=a();return this.subTo(vr,Zt),Zt}function Da(vr){var Zt=a();return this.multiplyTo(vr,Zt),Zt}function fu(){var vr=a();return this.squareTo(vr),vr}function yg(vr){var Zt=a();return this.divRemTo(vr,Zt,null),Zt}function _I(vr){var Zt=a();return this.divRemTo(vr,null,Zt),Zt}function Kh(vr){var Zt=a(),yn=a();return this.divRemTo(vr,Zt,yn),new Array(Zt,yn)}function Ri(vr){this[this.t]=this.am(0,vr-1,this,0,0,this.t),++this.t,this.clamp()}function Do(vr,Zt){if(vr!=0){for(;this.t<=Zt;)this[this.t++]=0;for(this[Zt]+=vr;this[Zt]>=this.DV;)this[Zt]-=this.DV,++Zt>=this.t&&(this[this.t++]=0),++this[Zt]}}function Pt(){}function Hu(vr){return vr}function Ru(vr,Zt,yn){vr.multiplyTo(Zt,yn)}function Vs(vr,Zt){vr.squareTo(Zt)}Pt.prototype.convert=Hu,Pt.prototype.revert=Hu,Pt.prototype.mulTo=Ru,Pt.prototype.sqrTo=Vs;function Uu(vr){return this.exp(vr,new Pt)}function Yn(vr,Zt,yn){var ls=Math.min(this.t+vr.t,Zt);for(yn.s=0,yn.t=ls;ls>0;)yn[--ls]=0;var oa;for(oa=yn.t-this.t;ls=0;)yn[ls]=0;for(ls=Math.max(Zt-this.t,0);ls2*this.m.t)return vr.mod(this.m);if(vr.compareTo(this.m)<0)return vr;var Zt=a();return vr.copyTo(Zt),this.reduce(Zt),Zt}function ZA(vr){return vr}function $i(vr){for(vr.drShiftTo(this.m.t-1,this.r2),vr.t>this.m.t+1&&(vr.t=this.m.t+1,vr.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);vr.compareTo(this.r2)<0;)vr.dAddOffset(1,this.m.t+1);for(vr.subTo(this.r2,vr);vr.compareTo(this.m)>=0;)vr.subTo(this.m,vr)}function Al(vr,Zt){vr.squareTo(Zt),this.reduce(Zt)}function zf(vr,Zt,yn){vr.multiplyTo(Zt,yn),this.reduce(yn)}Sg.prototype.convert=HA,Sg.prototype.revert=ZA,Sg.prototype.reduce=$i,Sg.prototype.mulTo=zf,Sg.prototype.sqrTo=Al;function zd(vr,Zt){var yn=vr.bitLength(),ls,oa=ae(1),Fs;if(yn<=0)return oa;yn<18?ls=1:yn<48?ls=3:yn<144?ls=4:yn<768?ls=5:ls=6,yn<8?Fs=new Sr(Zt):Zt.isEven()?Fs=new Sg(Zt):Fs=new lr(Zt);var Oa=new Array,Ca=3,gd=ls-1,Dp=(1<1){var sp=a();for(Fs.sqrTo(Oa[1],sp);Ca<=Dp;)Oa[Ca]=a(),Fs.mulTo(sp,Oa[Ca-2],Oa[Ca]),Ca+=2}var QA=vr.t-1,ff,Zs=!0,io=a(),Ea;for(yn=Se(vr[QA])-1;QA>=0;){for(yn>=gd?ff=vr[QA]>>yn-gd&Dp:(ff=(vr[QA]&(1<0&&(ff|=vr[QA-1]>>this.DB+yn-gd)),Ca=ls;!(ff&1);)ff>>=1,--Ca;if((yn-=Ca)<0&&(yn+=this.DB,--QA),Zs)Oa[ff].copyTo(oa),Zs=!1;else{for(;Ca>1;)Fs.sqrTo(oa,io),Fs.sqrTo(io,oa),Ca-=2;Ca>0?Fs.sqrTo(oa,io):(Ea=oa,oa=io,io=Ea),Fs.mulTo(io,Oa[ff],oa)}for(;QA>=0&&!(vr[QA]&1<0&&(Zt.rShiftTo(Fs,Zt),yn.rShiftTo(Fs,yn));Zt.signum()>0;)(oa=Zt.getLowestSetBit())>0&&Zt.rShiftTo(oa,Zt),(oa=yn.getLowestSetBit())>0&&yn.rShiftTo(oa,yn),Zt.compareTo(yn)>=0?(Zt.subTo(yn,Zt),Zt.rShiftTo(1,Zt)):(yn.subTo(Zt,yn),yn.rShiftTo(1,yn));return Fs>0&&yn.lShiftTo(Fs,yn),yn}function so(vr){if(vr<=0)return 0;var Zt=this.DV%vr,yn=this.s<0?vr-1:0;if(this.t>0)if(Zt==0)yn=this[0]%vr;else for(var ls=this.t-1;ls>=0;--ls)yn=(Zt*yn+this[ls])%vr;return yn}function Ki(vr){var Zt=vr.isEven();if(this.isEven()&&Zt||vr.signum()==0)return n.ZERO;for(var yn=vr.clone(),ls=this.clone(),oa=ae(1),Fs=ae(0),Oa=ae(0),Ca=ae(1);yn.signum()!=0;){for(;yn.isEven();)yn.rShiftTo(1,yn),Zt?((!oa.isEven()||!Fs.isEven())&&(oa.addTo(this,oa),Fs.subTo(vr,Fs)),oa.rShiftTo(1,oa)):Fs.isEven()||Fs.subTo(vr,Fs),Fs.rShiftTo(1,Fs);for(;ls.isEven();)ls.rShiftTo(1,ls),Zt?((!Oa.isEven()||!Ca.isEven())&&(Oa.addTo(this,Oa),Ca.subTo(vr,Ca)),Oa.rShiftTo(1,Oa)):Ca.isEven()||Ca.subTo(vr,Ca),Ca.rShiftTo(1,Ca);yn.compareTo(ls)>=0?(yn.subTo(ls,yn),Zt&&oa.subTo(Oa,oa),Fs.subTo(Ca,Fs)):(ls.subTo(yn,ls),Zt&&Oa.subTo(oa,Oa),Ca.subTo(Fs,Ca))}if(ls.compareTo(n.ONE)!=0)return n.ZERO;if(Ca.compareTo(vr)>=0)return Ca.subtract(vr);if(Ca.signum()<0)Ca.addTo(vr,Ca);else return Ca;return Ca.signum()<0?Ca.add(vr):Ca}var cc=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Xs=(1<<26)/cc[cc.length-1];function ws(vr){var Zt,yn=this.abs();if(yn.t==1&&yn[0]<=cc[cc.length-1]){for(Zt=0;Zt>1,vr>cc.length&&(vr=cc.length);for(var oa=a(),Fs=0;Fs>8&255,Dc[As++]^=vr>>16&255,Dc[As++]^=vr>>24&255,As>=YA&&(As-=YA)}function Am(){Nf(new Date().getTime())}if(Dc==null){Dc=new Array,As=0;var Zl;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var rc=new Uint8Array(32);for(window.crypto.getRandomValues(rc),Zl=0;Zl<32;++Zl)Dc[As++]=rc[Zl]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var ad=window.crypto.random(32);for(Zl=0;Zl>>8,Dc[As++]=Zl&255;As=0,Am()}function Qm(){if(Ma==null){for(Am(),Ma=Yp(),Ma.init(Dc),As=0;As{(function(){"use strict";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(l){return n(o(l),arguments)}function r(l,A){return t.apply(null,[l].concat(A||[]))}function n(l,A){var f=1,I=l.length,C,b="",E,N,B,F,Q,J,ae,ne;for(E=0;E=0),B.type){case"b":C=parseInt(C,10).toString(2);break;case"c":C=String.fromCharCode(parseInt(C,10));break;case"d":case"i":C=parseInt(C,10);break;case"j":C=JSON.stringify(C,null,B.width?parseInt(B.width):0);break;case"e":C=B.precision?parseFloat(C).toExponential(B.precision):parseFloat(C).toExponential();break;case"f":C=B.precision?parseFloat(C).toFixed(B.precision):parseFloat(C);break;case"g":C=B.precision?String(Number(C.toPrecision(B.precision))):parseFloat(C);break;case"o":C=(parseInt(C,10)>>>0).toString(8);break;case"s":C=String(C),C=B.precision?C.substring(0,B.precision):C;break;case"t":C=String(!!C),C=B.precision?C.substring(0,B.precision):C;break;case"T":C=Object.prototype.toString.call(C).slice(8,-1).toLowerCase(),C=B.precision?C.substring(0,B.precision):C;break;case"u":C=parseInt(C,10)>>>0;break;case"v":C=C.valueOf(),C=B.precision?C.substring(0,B.precision):C;break;case"x":C=(parseInt(C,10)>>>0).toString(16);break;case"X":C=(parseInt(C,10)>>>0).toString(16).toUpperCase();break}e.json.test(B.type)?b+=C:(e.number.test(B.type)&&(!ae||B.sign)?(ne=ae?"+":"-",C=C.toString().replace(e.sign,"")):ne="",Q=B.pad_char?B.pad_char==="0"?"0":B.pad_char.charAt(1):" ",J=B.width-(ne+C).length,F=B.width&&J>0?Q.repeat(J):"",b+=B.align?ne+C+F:Q==="0"?ne+F+C:F+ne+C)}return b}var a=Object.create(null);function o(l){if(a[l])return a[l];for(var A=l,f,I=[],C=0;A;){if((f=e.text.exec(A))!==null)I.push(f[0]);else if((f=e.modulo.exec(A))!==null)I.push("%");else if((f=e.placeholder.exec(A))!==null){if(f[2]){C|=1;var b=[],E=f[2],N=[];if((N=e.key.exec(E))!==null)for(b.push(N[1]);(E=E.substring(N[0].length))!=="";)if((N=e.key_access.exec(E))!==null)b.push(N[1]);else if((N=e.index_access.exec(E))!==null)b.push(N[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=b}else C|=2;if(C===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");I.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");A=A.substring(f[0].length)}return a[l]=I}typeof FLt<"u"&&(FLt.sprintf=t,FLt.vsprintf=r),typeof window<"u"&&(window.sprintf=t,window.vsprintf=r,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:r}}))})()});var jjr=H($j=>{"use strict";var mNl=$j&&$j.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),CNl=$j&&$j.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),e0s=$j&&$j.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&mNl(t,e,r);return CNl(t,e),t};Object.defineProperty($j,"__esModule",{value:!0});$j.Address4=void 0;var q_s=e0s(Qjr()),hJ=e0s(Xjr()),$_s=xLt(),Mze=Ujr(),ZFe=Pze(),Kjr=class e{constructor(t){this.groups=hJ.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=q_s.isCorrect(hJ.BITS),this.isInSubnet=q_s.isInSubnet,this.address=t;let r=hJ.RE_SUBNET_STRING.exec(t);if(r){if(this.parsedSubnet=r[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>hJ.BITS)throw new $_s.AddressError("Invalid subnet mask.");t=t.replace(hJ.RE_SUBNET_STRING,"")}this.addressMinusSuffix=t,this.parsedAddress=this.parse(t)}static isValid(t){try{return new e(t),!0}catch{return!1}}parse(t){let r=t.split(".");if(!t.match(hJ.RE_ADDRESS))throw new $_s.AddressError("Invalid IPv4 address.");return r}correctForm(){return this.parsedAddress.map(t=>parseInt(t,10)).join(".")}static fromHex(t){let r=t.replace(/:/g,"").padStart(8,"0"),n=[],a;for(a=0;a<8;a+=2){let o=r.slice(a,a+2);n.push(parseInt(o,16))}return new e(n.join("."))}static fromInteger(t){return e.fromHex(t.toString(16))}static fromArpa(t){let n=t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new e(n)}toHex(){return this.parsedAddress.map(t=>(0,ZFe.sprintf)("%02x",parseInt(t,10))).join(":")}toArray(){return this.parsedAddress.map(t=>parseInt(t,10))}toGroup6(){let t=[],r;for(r=0;r(0,ZFe.sprintf)("%02x",parseInt(t,10))).join(""),16)}_startAddress(){return new Mze.BigInteger(this.mask()+"0".repeat(hJ.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new Mze.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new Mze.BigInteger(this.mask()+"1".repeat(hJ.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new Mze.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}static fromBigInteger(t){return e.fromInteger(parseInt(t.toString(),10))}mask(t){return t===void 0&&(t=this.subnetMask),this.getBitsBase2(0,t)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}reverseForm(t){t||(t={});let r=this.correctForm().split(".").reverse().join(".");return t.omitSuffix?r:(0,ZFe.sprintf)("%s.in-addr.arpa.",r)}isMulticast(){return this.isInSubnet(new e("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(hJ.BITS,"0")}groupForV6(){let t=this.parsedAddress;return this.address.replace(hJ.RE_ADDRESS,(0,ZFe.sprintf)('%s.%s',t.slice(0,2).join("."),t.slice(2,4).join(".")))}};$j.Address4=Kjr});var zjr=H(cB=>{"use strict";Object.defineProperty(cB,"__esModule",{value:!0});cB.RE_URL_WITH_PORT=cB.RE_URL=cB.RE_ZONE_STRING=cB.RE_SUBNET_STRING=cB.RE_BAD_ADDRESS=cB.RE_BAD_CHARACTERS=cB.TYPES=cB.SCOPES=cB.GROUPS=cB.BITS=void 0;cB.BITS=128;cB.GROUPS=8;cB.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};cB.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};cB.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;cB.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;cB.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;cB.RE_ZONE_STRING=/%.*$/;cB.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/);cB.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)});var qjr=H(e7=>{"use strict";Object.defineProperty(e7,"__esModule",{value:!0});e7.simpleGroup=e7.spanLeadingZeroes=e7.spanAll=e7.spanAllZeroes=void 0;var t0s=Pze();function r0s(e){return e.replace(/(0+)/g,'$1')}e7.spanAllZeroes=r0s;function _Nl(e,t=0){return e.split("").map((n,a)=>(0,t0s.sprintf)('%s',n,a+t,r0s(n))).join("")}e7.spanAll=_Nl;function n0s(e){return e.replace(/^(0+)/,'$1')}function yNl(e){return e.split(":").map(r=>n0s(r)).join(":")}e7.spanLeadingZeroes=yNl;function bNl(e,t=0){return e.split(":").map((n,a)=>/group-v4/.test(n)?n:(0,t0s.sprintf)('%s',a+t,n0s(n)))}e7.simpleGroup=bNl});var i0s=H(DD=>{"use strict";var ENl=DD&&DD.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),SNl=DD&&DD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),vNl=DD&&DD.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&ENl(t,e,r);return SNl(t,e),t};Object.defineProperty(DD,"__esModule",{value:!0});DD.possibleElisions=DD.simpleRegularExpression=DD.ADDRESS_BOUNDARY=DD.padGroup=DD.groupPossibilities=void 0;var BNl=vNl(zjr()),LFe=Pze();function LLt(e){return(0,LFe.sprintf)("(%s)",e.join("|"))}DD.groupPossibilities=LLt;function ZLt(e){return e.length<4?(0,LFe.sprintf)("0{0,%d}%s",4-e.length,e):e}DD.padGroup=ZLt;DD.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function wNl(e){let t=[];e.forEach((n,a)=>{parseInt(n,16)===0&&t.push(a)});let r=t.map(n=>e.map((a,o)=>{if(o===n){let l=o===0||o===BNl.GROUPS-1?":":"";return LLt([ZLt(a),l])}return ZLt(a)}).join(":"));return r.push(e.map(ZLt).join(":")),LLt(r)}DD.simpleRegularExpression=wNl;function TNl(e,t,r){let n=t?"":":",a=r?"":":",o=[];!t&&!r&&o.push("::"),t&&r&&o.push(""),(r&&!t||!r&&t)&&o.push(":"),o.push((0,LFe.sprintf)("%s(:0{1,4}){1,%d}",n,e-1)),o.push((0,LFe.sprintf)("(0{1,4}:){1,%d}%s",e-1,a)),o.push((0,LFe.sprintf)("(0{1,4}:){%d}0{1,4}",e-1));for(let l=1;l{"use strict";var RNl=t7&&t7.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),NNl=t7&&t7.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),WLt=t7&&t7.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&RNl(t,e,r);return NNl(t,e),t};Object.defineProperty(t7,"__esModule",{value:!0});t7.Address6=void 0;var s0s=WLt(Qjr()),$jr=WLt(Xjr()),UE=WLt(zjr()),e7r=WLt(qjr()),sye=jjr(),oye=i0s(),Bre=xLt(),bL=Ujr(),EL=Pze();function VLt(e){if(!e)throw new Error("Assertion failed.")}function DNl(e){let t=/(\d+)(\d{3})/;for(;t.test(e);)e=e.replace(t,"$1,$2");return e}function kNl(e){return e=e.replace(/^(0{1,})([1-9]+)$/,'$1$2'),e=e.replace(/^(0{1,})(0)$/,'$1$2'),e}function xNl(e,t){let r=[],n=[],a;for(a=0;at[1]&&n.push(e[a]);return r.concat(["compact"]).concat(n)}function o0s(e){return(0,EL.sprintf)("%04x",parseInt(e,16))}function a0s(e){return e&255}var t7r=class e{constructor(t,r){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=s0s.isInSubnet,this.isCorrect=s0s.isCorrect(UE.BITS),r===void 0?this.groups=UE.GROUPS:this.groups=r,this.address=t;let n=UE.RE_SUBNET_STRING.exec(t);if(n){if(this.parsedSubnet=n[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>UE.BITS)throw new Bre.AddressError("Invalid subnet mask.");t=t.replace(UE.RE_SUBNET_STRING,"")}else if(/\//.test(t))throw new Bre.AddressError("Invalid subnet mask.");let a=UE.RE_ZONE_STRING.exec(t);a&&(this.zone=a[0],t=t.replace(UE.RE_ZONE_STRING,"")),this.addressMinusSuffix=t,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(t){try{return new e(t),!0}catch{return!1}}static fromBigInteger(t){let r=t.toString(16).padStart(32,"0"),n=[],a;for(a=0;a65536)&&(n=null)):n=null,{address:new e(r),port:n}}static fromAddress4(t){let r=new sye.Address4(t),n=UE.BITS-($jr.BITS-r.subnetMask);return new e(`::ffff:${r.correctForm()}/${n}`)}static fromArpa(t){let r=t.replace(/(\.ip6\.arpa)?\.$/,""),n=7;if(r.length!==63)throw new Bre.AddressError("Invalid 'ip6.arpa' form.");let a=r.split(".").reverse();for(let o=n;o>0;o--){let l=o*4;a.splice(l,0,":")}return r=a.join(""),new e(r)}microsoftTranscription(){return(0,EL.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(t=this.subnetMask){return this.getBitsBase2(0,t)}possibleSubnets(t=128){let r=UE.BITS-this.subnetMask,n=Math.abs(t-UE.BITS),a=r-n;return a<0?"0":DNl(new bL.BigInteger("2",10).pow(a).toString(10))}_startAddress(){return new bL.BigInteger(this.mask()+"0".repeat(UE.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new bL.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new bL.BigInteger(this.mask()+"1".repeat(UE.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new bL.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}getScope(){let t=UE.SCOPES[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&t!=="Link local"&&(t="Global"),t||"Unknown"}getType(){for(let t of Object.keys(UE.TYPES))if(this.isInSubnet(new e(t)))return UE.TYPES[t];return"Global unicast"}getBits(t,r){return new bL.BigInteger(this.getBitsBase2(t,r),2)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}getBitsBase16(t,r){let n=r-t;if(n%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(t,r).toString(16).padStart(n/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,UE.BITS)}reverseForm(t){t||(t={});let r=Math.floor(this.subnetMask/4),n=this.canonicalForm().replace(/:/g,"").split("").slice(0,r).reverse().join(".");return r>0?t.omitSuffix?n:(0,EL.sprintf)("%s.ip6.arpa.",n):t.omitSuffix?"":"ip6.arpa."}correctForm(){let t,r=[],n=0,a=[];for(t=0;t0&&(n>1&&a.push([t-n,t-1]),n=0)}n>1&&a.push([this.parsedAddress.length-n,this.parsedAddress.length-1]);let o=a.map(A=>A[1]-A[0]+1);if(a.length>0){let A=o.indexOf(Math.max(...o));r=xNl(this.parsedAddress,a[A])}else r=this.parsedAddress;for(t=0;t1?"s":"",r.join("")),t.replace(UE.RE_BAD_CHARACTERS,'$1'));let n=t.match(UE.RE_BAD_ADDRESS);if(n)throw new Bre.AddressError((0,EL.sprintf)("Address failed regex: %s",n.join("")),t.replace(UE.RE_BAD_ADDRESS,'$1'));let a=[],o=t.split("::");if(o.length===2){let l=o[0].split(":"),A=o[1].split(":");l.length===1&&l[0]===""&&(l=[]),A.length===1&&A[0]===""&&(A=[]);let f=this.groups-(l.length+A.length);if(!f)throw new Bre.AddressError("Error parsing groups");this.elidedGroups=f,this.elisionBegin=l.length,this.elisionEnd=l.length+this.elidedGroups,a=a.concat(l);for(let I=0;I(0,EL.sprintf)("%x",parseInt(l,16))),a.length!==this.groups)throw new Bre.AddressError("Incorrect number of groups found");return a}canonicalForm(){return this.parsedAddress.map(o0s).join(":")}decimal(){return this.parsedAddress.map(t=>(0,EL.sprintf)("%05d",parseInt(t,16))).join(":")}bigInteger(){return new bL.BigInteger(this.parsedAddress.map(o0s).join(""),16)}to4(){let t=this.binaryZeroPad().split("");return sye.Address4.fromHex(new bL.BigInteger(t.slice(96,128).join(""),2).toString(16))}to4in6(){let t=this.to4(),n=new e(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),a="";return/:$/.test(n)||(a=":"),n+a+t.address}inspectTeredo(){let t=this.getBitsBase16(0,32),r=this.getBits(80,96).xor(new bL.BigInteger("ffff",16)).toString(),n=sye.Address4.fromHex(this.getBitsBase16(32,64)),a=sye.Address4.fromHex(this.getBits(96,128).xor(new bL.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),l=this.getBitsBase2(64,80),A=o.testBit(15),f=o.testBit(14),I=o.testBit(8),C=o.testBit(9),b=new bL.BigInteger(l.slice(2,6)+l.slice(8,16),2).toString(10);return{prefix:(0,EL.sprintf)("%s:%s",t.slice(0,4),t.slice(4,8)),server4:n.address,client4:a.address,flags:l,coneNat:A,microsoft:{reserved:f,universalLocal:C,groupIndividual:I,nonce:b},udpPort:r}}inspect6to4(){let t=this.getBitsBase16(0,16),r=sye.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,EL.sprintf)("%s",t.slice(0,4)),gateway:r.address}}to6to4(){if(!this.is4())return null;let t=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new e(t)}toByteArray(){let t=this.bigInteger().toByteArray();return t.length===17&&t[0]===0?t.slice(1):t}toUnsignedByteArray(){return this.toByteArray().map(a0s)}static fromByteArray(t){return this.fromUnsignedByteArray(t.map(a0s))}static fromUnsignedByteArray(t){let r=new bL.BigInteger("256",10),n=new bL.BigInteger("0",10),a=new bL.BigInteger("1",10);for(let o=t.length-1;o>=0;o--)n=n.add(a.multiply(new bL.BigInteger(t[o].toString(10),10))),a=a.multiply(r);return e.fromBigInteger(n)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new e("2001::/32"))}is6to4(){return this.isInSubnet(new e("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(t){return t===void 0?t="":t=(0,EL.sprintf)(":%s",t),(0,EL.sprintf)("http://[%s]%s/",this.correctForm(),t)}link(t){t||(t={}),t.className===void 0&&(t.className=""),t.prefix===void 0&&(t.prefix="/#address="),t.v4===void 0&&(t.v4=!1);let r=this.correctForm;return t.v4&&(r=this.to4in6),t.className?(0,EL.sprintf)('%2$s',t.prefix,r.call(this),t.className):(0,EL.sprintf)('%2$s',t.prefix,r.call(this))}group(){if(this.elidedGroups===0)return e7r.simpleGroup(this.address).join(":");VLt(typeof this.elidedGroups=="number"),VLt(typeof this.elisionBegin=="number");let t=[],[r,n]=this.address.split("::");r.length?t.push(...e7r.simpleGroup(r)):t.push("");let a=["hover-group"];for(let o=this.elisionBegin;o',a.join(" "))),n.length?t.push(...e7r.simpleGroup(n,this.elisionEnd)):t.push(""),this.is4()&&(VLt(this.address4 instanceof sye.Address4),t.pop(),t.push(this.address4.groupForV6())),t.join(":")}regularExpressionString(t=!1){let r=[],n=new e(this.correctForm());if(n.elidedGroups===0)r.push((0,oye.simpleRegularExpression)(n.parsedAddress));else if(n.elidedGroups===UE.GROUPS)r.push((0,oye.possibleElisions)(UE.GROUPS));else{let a=n.address.split("::");a[0].length&&r.push((0,oye.simpleRegularExpression)(a[0].split(":"))),VLt(typeof n.elidedGroups=="number"),r.push((0,oye.possibleElisions)(n.elidedGroups,a[0].length!==0,a[1].length!==0)),a[1].length&&r.push((0,oye.simpleRegularExpression)(a[1].split(":"))),r=[r.join(":")]}return t||(r=["(?=^|",oye.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...r,")(?=[^\\w\\:]|",oye.ADDRESS_BOUNDARY,"|$)"]),r.join("")}regularExpression(t=!1){return new RegExp(this.regularExpressionString(t),"i")}};t7.Address6=t7r});var r7r=H(pF=>{"use strict";var GNl=pF&&pF.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),FNl=pF&&pF.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ZNl=pF&&pF.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&GNl(t,e,r);return FNl(t,e),t};Object.defineProperty(pF,"__esModule",{value:!0});pF.v6=pF.AddressError=pF.Address6=pF.Address4=void 0;var LNl=jjr();Object.defineProperty(pF,"Address4",{enumerable:!0,get:function(){return LNl.Address4}});var VNl=c0s();Object.defineProperty(pF,"Address6",{enumerable:!0,get:function(){return VNl.Address6}});var WNl=xLt();Object.defineProperty(pF,"AddressError",{enumerable:!0,get:function(){return WNl.AddressError}});var ONl=ZNl(qjr());pF.v6={helpers:ONl}});var p0s=H(sY=>{"use strict";Object.defineProperty(sY,"__esModule",{value:!0});sY.ipToBuffer=sY.int32ToIpv4=sY.ipv4ToInt32=sY.validateSocksClientChainOptions=sY.validateSocksClientOptions=void 0;var SL=Yjr(),kD=Mjr(),PNl=Et("stream"),n7r=r7r(),l0s=Et("net");function MNl(e,t=["connect","bind","associate"]){if(!kD.SocksCommand[e.command])throw new SL.SocksClientError(kD.ERRORS.InvalidSocksCommand,e);if(t.indexOf(e.command)===-1)throw new SL.SocksClientError(kD.ERRORS.InvalidSocksCommandForOperation,e);if(!g0s(e.destination))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!A0s(e.proxy))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsProxy,e);if(u0s(e.proxy,e),e.timeout&&!d0s(e.timeout))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsTimeout,e);if(e.existing_socket&&!(e.existing_socket instanceof PNl.Duplex))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsExistingSocket,e)}sY.validateSocksClientOptions=MNl;function HNl(e){if(e.command!=="connect")throw new SL.SocksClientError(kD.ERRORS.InvalidSocksCommandChain,e);if(!g0s(e.destination))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!(e.proxies&&Array.isArray(e.proxies)&&e.proxies.length>=2))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsProxiesLength,e);if(e.proxies.forEach(t=>{if(!A0s(t))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsProxy,e);u0s(t,e)}),e.timeout&&!d0s(e.timeout))throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsTimeout,e)}sY.validateSocksClientChainOptions=HNl;function u0s(e,t){if(e.custom_auth_method!==void 0){if(e.custom_auth_methodkD.SOCKS5_CUSTOM_AUTH_END)throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsCustomAuthRange,t);if(e.custom_auth_request_handler===void 0||typeof e.custom_auth_request_handler!="function")throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_size===void 0)throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_handler===void 0||typeof e.custom_auth_response_handler!="function")throw new SL.SocksClientError(kD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t)}}function g0s(e){return e&&typeof e.host=="string"&&typeof e.port=="number"&&e.port>=0&&e.port<=65535}function A0s(e){return e&&(typeof e.host=="string"||typeof e.ipaddress=="string")&&typeof e.port=="number"&&e.port>=0&&e.port<=65535&&(e.type===4||e.type===5)}function d0s(e){return typeof e=="number"&&e>0}function YNl(e){return new n7r.Address4(e).toArray().reduce((r,n)=>(r<<8)+n,0)}sY.ipv4ToInt32=YNl;function QNl(e){let t=e>>>24&255,r=e>>>16&255,n=e>>>8&255,a=e&255;return[t,r,n,a].join(".")}sY.int32ToIpv4=QNl;function XNl(e){if(l0s.isIPv4(e)){let t=new n7r.Address4(e);return Buffer.from(t.toArray())}else if(l0s.isIPv6(e)){let t=new n7r.Address6(e);return Buffer.from(t.canonicalForm().split(":").map(r=>r.padStart(4,"0")).join(""),"hex")}else throw new Error("Invalid IP address format")}sY.ipToBuffer=XNl});var f0s=H(OLt=>{"use strict";Object.defineProperty(OLt,"__esModule",{value:!0});OLt.ReceiveBuffer=void 0;var i7r=class{constructor(t=4096){this.buffer=Buffer.allocUnsafe(t),this.offset=0,this.originalSize=t}get length(){return this.offset}append(t){if(!Buffer.isBuffer(t))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+t.length>=this.buffer.length){let r=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+t.length)),r.copy(this.buffer)}return t.copy(this.buffer,this.offset),this.offset+=t.length}peek(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,t)}get(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");let r=Buffer.allocUnsafe(t);return this.buffer.slice(0,t).copy(r),this.buffer.copyWithin(0,t,t+this.offset-t),this.offset-=t,r}};OLt.ReceiveBuffer=i7r});var I0s=H(uge=>{"use strict";var VFe=uge&&uge.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(uge,"__esModule",{value:!0});uge.SocksClientError=uge.SocksClient=void 0;var JNl=Et("events"),WFe=Et("net"),lW=Y_s(),uu=Mjr(),i3=p0s(),UNl=f0s(),o7r=Yjr();Object.defineProperty(uge,"SocksClientError",{enumerable:!0,get:function(){return o7r.SocksClientError}});var s7r=r7r(),a7r=class e extends JNl.EventEmitter{constructor(t){super(),this.options=Object.assign({},t),(0,i3.validateSocksClientOptions)(t),this.setState(uu.SocksClientState.Created)}static createConnection(t,r){return new Promise((n,a)=>{try{(0,i3.validateSocksClientOptions)(t,["connect"])}catch(l){return typeof r=="function"?(r(l),n(l)):a(l)}let o=new e(t);o.connect(t.existing_socket),o.once("established",l=>{o.removeAllListeners(),typeof r=="function"&&r(null,l),n(l)}),o.once("error",l=>{o.removeAllListeners(),typeof r=="function"?(r(l),n(l)):a(l)})})}static createConnectionChain(t,r){return new Promise((n,a)=>VFe(this,void 0,void 0,function*(){try{(0,i3.validateSocksClientChainOptions)(t)}catch(o){return typeof r=="function"?(r(o),n(o)):a(o)}t.randomizeChain&&(0,o7r.shuffleArray)(t.proxies);try{let o;for(let l=0;lthis.onDataReceivedHandler(n),this.onClose=()=>this.onCloseHandler(),this.onError=n=>this.onErrorHandler(n),this.onConnect=()=>this.onConnectHandler();let r=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||uu.DEFAULT_TIMEOUT);r.unref&&typeof r.unref=="function"&&r.unref(),t?this.socket=t:this.socket=new WFe.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(uu.SocksClientState.Connecting),this.receiveBuffer=new UNl.ReceiveBuffer,t?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",n=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let a=this.receiveBuffer.get(this.receiveBuffer.length);n.socket.emit("data",a)}n.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==uu.SocksClientState.Established&&this.state!==uu.SocksClientState.BoundWaitingForConnection&&this.closeSocket(uu.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState(uu.SocksClientState.Connected),this.options.proxy.type===4?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState(uu.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(t){this.receiveBuffer.append(t),this.processData()}processData(){for(;this.state!==uu.SocksClientState.Established&&this.state!==uu.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===uu.SocksClientState.SentInitialHandshake)this.options.proxy.type===4?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===uu.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===uu.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===uu.SocksClientState.BoundWaitingForConnection)this.options.proxy.type===4?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(uu.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(uu.ERRORS.SocketClosed)}onErrorHandler(t){this.closeSocket(t.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(t){this.state!==uu.SocksClientState.Error&&(this.setState(uu.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new o7r.SocksClientError(t,this.options)))}sendSocks4InitialHandshake(){let t=this.options.proxy.userId||"",r=new lW.SmartBuffer;r.writeUInt8(4),r.writeUInt8(uu.SocksCommand[this.options.command]),r.writeUInt16BE(this.options.destination.port),WFe.isIPv4(this.options.destination.host)?(r.writeBuffer((0,i3.ipToBuffer)(this.options.destination.host)),r.writeStringNT(t)):(r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(1),r.writeStringNT(t),r.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(r.toBuffer())}handleSocks4FinalHandshakeResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==uu.Socks4Response.Granted)this.closeSocket(`${uu.ERRORS.Socks4ProxyRejectedConnection} - (${uu.Socks4Response[t[1]]})`);else if(uu.SocksCommand[this.options.command]===uu.SocksCommand.bind){let r=lW.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,i3.int32ToIpv4)(r.readUInt32BE())};n.host==="0.0.0.0"&&(n.host=this.options.proxy.ipaddress),this.setState(uu.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:n,socket:this.socket})}else this.setState(uu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==uu.Socks4Response.Granted)this.closeSocket(`${uu.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${uu.Socks4Response[t[1]]})`);else{let r=lW.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,i3.int32ToIpv4)(r.readUInt32BE())};this.setState(uu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:n,socket:this.socket})}}sendSocks5InitialHandshake(){let t=new lW.SmartBuffer,r=[uu.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&r.push(uu.Socks5Auth.UserPass),this.options.proxy.custom_auth_method!==void 0&&r.push(this.options.proxy.custom_auth_method),t.writeUInt8(5),t.writeUInt8(r.length);for(let n of r)t.writeUInt8(n);this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(t.toBuffer()),this.setState(uu.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let t=this.receiveBuffer.get(2);t[0]!==5?this.closeSocket(uu.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):t[1]===uu.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket(uu.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):t[1]===uu.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=uu.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):t[1]===uu.Socks5Auth.UserPass?(this.socks5ChosenAuthType=uu.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):t[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket(uu.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let t=this.options.proxy.userId||"",r=this.options.proxy.password||"",n=new lW.SmartBuffer;n.writeUInt8(1),n.writeUInt8(Buffer.byteLength(t)),n.writeString(t),n.writeUInt8(Buffer.byteLength(r)),n.writeString(r),this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(n.toBuffer()),this.setState(uu.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return VFe(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(uu.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(t){return VFe(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(t)})}handleSocks5AuthenticationNoAuthHandshakeResponse(t){return VFe(this,void 0,void 0,function*(){return t[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(t){return VFe(this,void 0,void 0,function*(){return t[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return VFe(this,void 0,void 0,function*(){this.setState(uu.SocksClientState.ReceivedAuthenticationResponse);let t=!1;this.socks5ChosenAuthType===uu.Socks5Auth.NoAuth?t=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===uu.Socks5Auth.UserPass?t=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(t=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),t?this.sendSocks5CommandRequest():this.closeSocket(uu.ERRORS.Socks5AuthenticationFailed)})}sendSocks5CommandRequest(){let t=new lW.SmartBuffer;t.writeUInt8(5),t.writeUInt8(uu.SocksCommand[this.options.command]),t.writeUInt8(0),WFe.isIPv4(this.options.destination.host)?(t.writeUInt8(uu.Socks5HostType.IPv4),t.writeBuffer((0,i3.ipToBuffer)(this.options.destination.host))):WFe.isIPv6(this.options.destination.host)?(t.writeUInt8(uu.Socks5HostType.IPv6),t.writeBuffer((0,i3.ipToBuffer)(this.options.destination.host))):(t.writeUInt8(uu.Socks5HostType.Hostname),t.writeUInt8(this.options.destination.host.length),t.writeString(this.options.destination.host)),t.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(t.toBuffer()),this.setState(uu.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let t=this.receiveBuffer.peek(5);if(t[0]!==5||t[1]!==uu.Socks5Response.Granted)this.closeSocket(`${uu.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${uu.Socks5Response[t[1]]}`);else{let r=t[3],n,a;if(r===uu.Socks5HostType.IPv4){let o=uu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length{"use strict";var KNl=aye&&aye.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jNl=aye&&aye.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&KNl(t,e,r)};Object.defineProperty(aye,"__esModule",{value:!0});jNl(I0s(),aye)});var C0s=H(oY=>{"use strict";var zNl=oY&&oY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),qNl=oY&&oY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),m0s=oY&&oY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&zNl(t,e,r);return qNl(t,e),t},$Nl=oY&&oY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(oY,"__esModule",{value:!0});oY.SocksProxyAgent=void 0;var eDl=h0s(),tDl=Wze(),rDl=$Nl(IT()),nDl=m0s(Et("dns")),iDl=m0s(Et("tls")),sDl=Et("url"),PLt=(0,rDl.default)("socks-proxy-agent");function oDl(e){let t=!1,r=5,n=e.hostname,a=parseInt(e.port,10)||1080;switch(e.protocol.replace(":","")){case"socks4":t=!0,r=4;break;case"socks4a":r=4;break;case"socks5":t=!0,r=5;break;case"socks":r=5;break;case"socks5h":r=5;break;default:throw new TypeError(`A "socks" protocol must be specified! Got: ${String(e.protocol)}`)}let o={host:n,port:a,type:r};return e.username&&Object.defineProperty(o,"userId",{value:decodeURIComponent(e.username),enumerable:!1}),e.password!=null&&Object.defineProperty(o,"password",{value:decodeURIComponent(e.password),enumerable:!1}),{lookup:t,proxy:o}}var MLt=class extends tDl.Agent{constructor(t,r){super(r);let n=typeof t=="string"?new sDl.URL(t):t,{proxy:a,lookup:o}=oDl(n);this.shouldLookup=o,this.proxy=a,this.timeout=r?.timeout??null,this.socketOptions=r?.socketOptions??null}async connect(t,r){let{shouldLookup:n,proxy:a,timeout:o}=this;if(!r.host)throw new Error("No `host` defined!");let{host:l}=r,{port:A,lookup:f=nDl.lookup}=r;n&&(l=await new Promise((E,N)=>{f(l,{},(B,F)=>{B?N(B):E(F)})}));let I={proxy:a,destination:{host:l,port:typeof A=="number"?A:parseInt(A,10)},command:"connect",timeout:o??void 0,socket_options:this.socketOptions??void 0},C=E=>{t.destroy(),b.destroy(),E&&E.destroy()};PLt("Creating socks proxy connection: %o",I);let{socket:b}=await eDl.SocksClient.createConnection(I);if(PLt("Successfully created socks proxy connection"),o!==null&&(b.setTimeout(o),b.on("timeout",()=>C())),r.secureEndpoint){PLt("Upgrading socket connection to TLS");let E=r.servername||r.host,N=iDl.connect({...aDl(r,"host","path","port"),socket:b,servername:E});return N.once("error",B=>{PLt("Socket TLS error",B.message),C(N)}),N}return b}};MLt.protocols=["socks","socks4","socks4a","socks5","socks5h"];oY.SocksProxyAgent=MLt;function aDl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var d7r=H((Fig,_0s)=>{"use strict";var c7r=class extends Error{constructor(t){super(`Invalid protocol \`${t.protocol}\` connecting to proxy \`${t.host}\``),this.code="EINVALIDPROXY",this.proxy=t}},l7r=class extends Error{constructor(t){super(`Timeout connecting to host \`${t}\``),this.code="ECONNECTIONTIMEOUT",this.host=t}},u7r=class extends Error{constructor(t){super(`Idle timeout reached for host \`${t}\``),this.code="EIDLETIMEOUT",this.host=t}},g7r=class extends Error{constructor(t,r){let n="Response timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`connecting to host \`${t.host}\``,super(n),this.code="ERESPONSETIMEOUT",this.proxy=r,this.request=t}},A7r=class extends Error{constructor(t,r){let n="Transfer timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`for \`${t.host}\``,super(n),this.code="ETRANSFERTIMEOUT",this.proxy=r,this.request=t}};_0s.exports={InvalidProxyProtocolError:c7r,ConnectionTimeoutError:l7r,IdleTimeoutError:u7r,ResponseTimeoutError:g7r,TransferTimeoutError:A7r}});var p7r=H((Zig,b0s)=>{"use strict";var{HttpProxyAgent:cDl}=k_s(),{HttpsProxyAgent:lDl}=V_s(),{SocksProxyAgent:y0s}=C0s(),{LRUCache:uDl}=WIe(),{InvalidProxyProtocolError:gDl}=d7r(),ADl=new uDl({max:20}),dDl=new Set(y0s.protocols),pDl=new Set(["https_proxy","http_proxy","proxy","no_proxy"]),Hze=Object.entries(process.env).reduce((e,[t,r])=>(t=t.toLowerCase(),pDl.has(t)&&(e[t]=r),e),{}),fDl=e=>{e=new URL(e);let t=e.protocol.slice(0,-1);if(dDl.has(t))return y0s;if(t==="https"||t==="http")return[cDl,lDl];throw new gDl(e)},IDl=(e,t)=>{if(typeof t=="string"&&(t=t.split(",").map(n=>n.trim()).filter(Boolean)),!t||!t.length)return!1;let r=e.hostname.split(".").reverse();return t.some(n=>{let a=n.split(".").filter(Boolean).reverse();if(!a.length)return!1;for(let o=0;o(e=new URL(e),t||(t=e.protocol==="https:"?Hze.https_proxy:Hze.https_proxy||Hze.http_proxy||Hze.proxy),r||(r=Hze.no_proxy),!t||IDl(e,r)?null:new URL(t));b0s.exports={getProxyAgent:fDl,getProxy:hDl,proxyCache:ADl}});var v0s=H((Vig,S0s)=>{"use strict";var mDl=Et("net"),CDl=Et("tls"),{once:E0s}=Et("events"),_Dl=Et("timers/promises"),{normalizeOptions:yDl,cacheOptions:bDl}=Ljr(),{getProxy:EDl,getProxyAgent:SDl,proxyCache:f7r}=p7r(),HLt=d7r(),{Agent:vDl}=Wze();S0s.exports=class extends vDl{#e;#t;#n;#r;#i;constructor(t={}){let{timeouts:r,proxy:n,noProxy:a,...o}=yDl(t);super(o),this.#e=o,this.#t=r,n&&(this.#n=new URL(n),this.#r=a,this.#i=SDl(n))}get proxy(){return this.#n?{url:this.#n}:{}}#s(t){if(!this.#n)return;let r=EDl(`${t.protocol}//${t.host}:${t.port}`,{proxy:this.#n,noProxy:this.#r});if(!r)return;let n=bDl({...t,...this.#e,timeouts:this.#t,proxy:r});if(f7r.has(n))return f7r.get(n);let a=this.#i;Array.isArray(a)&&(a=this.isSecureEndpoint(t)?a[1]:a[0]);let o=new a(r,{...this.#e,socketOptions:{family:this.#e.family}});return f7r.set(n,o),o}async#o({promises:t,options:r,timeout:n},a=new AbortController){if(n){let l=_Dl.setTimeout(n,null,{signal:a.signal}).then(()=>{throw new HLt.ConnectionTimeoutError(`${r.host}:${r.port}`)}).catch(A=>{if(A.name!=="AbortError")throw A});t.push(l)}let o;try{o=await Promise.race(t),a.abort()}catch(l){throw a.abort(),l}return o}async connect(t,r){r.lookup??=this.#e.lookup;let n,a=this.#t.connection,o=this.isSecureEndpoint(r),l=this.#s(r);if(l){let C=Date.now();n=await this.#o({options:r,timeout:a,promises:[l.connect(t,r)]}),a&&(a=a-(Date.now()-C))}else n=(o?CDl:mDl).connect(r);n.setKeepAlive(this.keepAlive,this.keepAliveMsecs),n.setNoDelay(this.keepAlive);let A=new AbortController,{signal:f}=A,I=n[o?"secureConnecting":"connecting"]?E0s(n,o?"secureConnect":"connect",{signal:f}):Promise.resolve();return await this.#o({options:r,timeout:a,promises:[I,E0s(n,"error",{signal:f}).then(C=>{throw C[0]})]},A),this.#t.idle&&n.setTimeout(this.#t.idle,()=>{n.destroy(new HLt.IdleTimeoutError(`${r.host}:${r.port}`))}),n}addRequest(t,r){let n=this.#s(r);if(n?.setRequestProps&&n.setRequestProps(t,r),t.setHeader("connection",this.keepAlive?"keep-alive":"close"),this.#t.response){let a;t.once("finish",()=>{setTimeout(()=>{t.destroy(new HLt.ResponseTimeoutError(t,this.#n))},this.#t.response)}),t.once("response",()=>{clearTimeout(a)})}if(this.#t.transfer){let a;t.once("response",o=>{setTimeout(()=>{o.destroy(new HLt.TransferTimeoutError(t,this.#n))},this.#t.transfer),o.once("close",()=>{clearTimeout(a)})})}return super.addRequest(t,r)}}});var R0s=H((Wig,T0s)=>{"use strict";var{LRUCache:BDl}=WIe(),{normalizeOptions:wDl,cacheOptions:TDl}=Ljr(),{getProxy:RDl,proxyCache:B0s}=p7r(),w0s=Zjr(),YLt=v0s(),Yze=new BDl({max:20}),NDl=(e,{agent:t,proxy:r,noProxy:n,...a}={})=>{if(t!=null)return t;e=new URL(e);let o=RDl(e,{proxy:r,noProxy:n}),l={...wDl(a),proxy:o},A=TDl({...l,secureEndpoint:e.protocol==="https:"});if(Yze.has(A))return Yze.get(A);let f=new YLt(l);return Yze.set(A,f),f};T0s.exports={getAgent:NDl,Agent:YLt,HttpAgent:YLt,HttpsAgent:YLt,cache:{proxy:B0s,agent:Yze,dns:w0s.cache,clear:()=>{B0s.clear(),Yze.clear(),w0s.cache.clear()}}}});var N0s=H((Oig,DDl)=>{DDl.exports={name:"make-fetch-happen",version:"14.0.3",description:"Opinionated, caching, retrying fetch client",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",posttest:"npm run lint",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"',lint:"npm run eslint",lintfix:"npm run eslint -- --fix",postlint:"template-oss-check",snap:"tap","template-oss-apply":"template-oss-apply --force"},repository:{type:"git",url:"git+https://github.com/npm/make-fetch-happen.git"},keywords:["http","request","fetch","mean girls","caching","cache","subresource integrity"],author:"GitHub Inc.",license:"ISC",dependencies:{"@npmcli/agent":"^3.0.0",cacache:"^19.0.1","http-cache-semantics":"^4.1.1",minipass:"^7.0.2","minipass-fetch":"^4.0.0","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4",negotiator:"^1.0.0","proc-log":"^5.0.0","promise-retry":"^2.0.1",ssri:"^12.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.4",nock:"^13.2.4","safe-buffer":"^5.2.1","standard-version":"^9.3.2",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},tap:{color:1,files:"test/*.js","check-coverage":!0,timeout:60,"nyc-arg":["--exclude","tap-snapshots/**"]},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.4",publish:"true"}}});var XLt=H((Pig,k0s)=>{var{Minipass:kDl}=lF(),QLt=uze(),xDl=Gjr(),GDl=cre(),{log:D0s}=Fjr(),FDl=xjr(),{getAgent:ZDl}=R0s(),I7r=N0s(),LDl=`${I7r.name}/${I7r.version} (+https://npm.im/${I7r.name})`,VDl=["ECONNRESET","ECONNREFUSED","EADDRINUSE","ETIMEDOUT","ECONNECTIONTIMEOUT","EIDLETIMEOUT","ERESPONSETIMEOUT","ETRANSFERTIMEOUT"],WDl=["request-timeout"],ODl=(e,t)=>{let r=ZDl(e.url,{...t,signal:void 0});e.headers.has("connection")||e.headers.set("connection",r?"keep-alive":"close"),e.headers.has("user-agent")||e.headers.set("user-agent",LDl);let n={...t,agent:r,redirect:"manual"};return xDl(async(a,o)=>{let l=new QLt.Request(e,n);try{let A=await QLt(l,n);if(n.integrity&&A.status===200){let C=GDl.integrityStream({algorithms:n.algorithms,integrity:n.integrity,size:n.size}),b=new FDl({events:["integrity","size"]},A.body,C);C.on("integrity",E=>b.emit("integrity",E)),C.on("size",E=>b.emit("size",E)),A=new QLt.Response(b,A),A.body.hasIntegrityEmitter=!0}A.headers.set("x-fetch-attempts",o);let f=kDl.isStream(l.body);return l.method!=="POST"&&!f&&([408,420,429].includes(A.status)||A.status>=500)?(typeof t.onRetry=="function"&&t.onRetry(A),D0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.status}`),a(A)):A}catch(A){let f=A.code==="EPROMISERETRY"?A.retried.code:A.code,I=A.retried instanceof QLt.Response||VDl.includes(f)&&WDl.includes(A.type);if(l.method==="POST"||I)throw A;return typeof t.onRetry=="function"&&t.onRetry(A),D0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.code}`),a(A)}},t.retry).catch(a=>{if(a.status>=400&&a.type!=="system")return a;throw a})};k0s.exports=ODl});var V0s=H((Mig,L0s)=>{var{Request:x0s,Response:h7r}=uze(),{Minipass:G0s}=lF(),PDl=GZt(),cye=s_s(),MDl=Et("url"),HDl=xjr(),YDl=f6r(),m7r=c_s(),QDl=XLt(),Qze=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),XDl=["accept-charset","accept-encoding","accept-language","accept","cache-control"],Z0s=["cache-control","content-encoding","content-language","content-type","date","etag","expires","last-modified","link","location","pragma","vary"],F0s=(e,t,r)=>{let n={time:Date.now(),url:e.url,reqHeaders:{},resHeaders:{},options:{compress:r.compress!=null?r.compress:e.compress}};t.status!==200&&t.status!==304&&(n.status=t.status);for(let l of XDl)e.headers.has(l)&&(n.reqHeaders[l]=e.headers.get(l));let a=e.headers.get("host"),o=new MDl.URL(e.url);if(a&&o.host!==a&&(n.reqHeaders.host=a),t.headers.has("vary")){let l=t.headers.get("vary");if(l!=="*"){let A=l.trim().toLowerCase().split(/\s*,\s*/);for(let f of A)e.headers.has(f)&&(n.reqHeaders[f]=e.headers.get(f))}}for(let l of Z0s)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));for(let l of r.cacheAdditionalHeaders)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));return n},JLt=Symbol("request"),ULt=Symbol("response"),KLt=Symbol("policy"),C7r=class e{constructor({entry:t,request:r,response:n,options:a}){t?(this.key=t.key,this.entry=t,this.entry.metadata.time=this.entry.metadata.time||this.entry.time):this.key=m7r(r),this.options=a,this[JLt]=r,this[ULt]=n,this[KLt]=null}static async find(t,r){try{var n=await cye.index.compact(r.cachePath,m7r(t),(o,l)=>{let A=new e({entry:o,options:r}),f=new e({entry:l,options:r});return A.policy.satisfies(f.request)},{validateEntry:o=>o.metadata&&o.metadata.resHeaders&&o.metadata.resHeaders["content-encoding"]===null?!1:o.integrity===null?!!(o.metadata&&o.metadata.status):!0})}catch{return}if(r.cache==="reload")return;let a;for(let o of n){let l=new e({entry:o,options:r});if(l.policy.satisfies(t)){a=l;break}}return a}static async invalidate(t,r){let n=m7r(t);try{await cye.rm.entry(r.cachePath,n,{removeFully:!0})}catch{}}get request(){return this[JLt]||(this[JLt]=new x0s(this.entry.metadata.url,{method:"GET",headers:this.entry.metadata.reqHeaders,...this.entry.metadata.options})),this[JLt]}get response(){return this[ULt]||(this[ULt]=new h7r(null,{url:this.entry.metadata.url,counter:this.options.counter,status:this.entry.metadata.status||200,headers:{...this.entry.metadata.resHeaders,"content-length":this.entry.size}})),this[ULt]}get policy(){return this[KLt]||(this[KLt]=new YDl({entry:this.entry,request:this.request,response:this.response,options:this.options})),this[KLt]}async store(t){if(this.request.method!=="GET"||![200,301,308].includes(this.response.status)||!this.policy.storable())return this.response.headers.set("x-local-cache-status","skip"),this.response;let r=this.response.headers.get("content-length"),n={algorithms:this.options.algorithms,metadata:F0s(this.request,this.response,this.options),size:r,integrity:this.options.integrity,integrityEmitter:this.response.body.hasIntegrityEmitter&&this.response.body},a=null;if(this.response.status===200){let l,A,f=new Promise((C,b)=>{l=C,A=b}).catch(C=>{a.emit("error",C)});a=new HDl({events:["integrity","size"]},new PDl({flush(){return f}})),a.hasIntegrityEmitter=!0;let I=()=>{let C=new G0s,b=cye.put.stream(this.options.cachePath,this.key,n);b.on("integrity",E=>a.emit("integrity",E)),b.on("size",E=>a.emit("size",E)),C.pipe(b),b.promise().then(l,A),a.unshift(C),a.unshift(this.response.body)};a.once("resume",I),a.once("end",()=>a.removeListener("resume",I))}else await cye.index.insert(this.options.cachePath,this.key,null,n);return this.response.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),this.response.headers.set("x-local-cache-key",encodeURIComponent(this.key)),this.response.headers.set("x-local-cache-mode","stream"),this.response.headers.set("x-local-cache-status",t),this.response.headers.set("x-local-cache-time",new Date().toISOString()),new h7r(a,{url:this.response.url,status:this.response.status,headers:this.response.headers,counter:this.options.counter})}async respond(t,r,n){let a;if(t==="HEAD"||[301,308].includes(this.response.status))a=this.response;else{let o=new G0s,l={...this.policy.responseHeaders()},A=()=>{let f=cye.get.stream.byDigest(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize});f.on("error",async I=>{f.pause(),I.code==="EINTEGRITY"&&await cye.rm.content(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize}),(I.code==="ENOENT"||I.code==="EINTEGRITY")&&await e.invalidate(this.request,this.options),o.emit("error",I),f.resume()}),o.emit("integrity",this.entry.integrity),o.emit("size",Number(l["content-length"])),f.pipe(o)};o.once("resume",A),o.once("end",()=>o.removeListener("resume",A)),a=new h7r(o,{url:this.entry.metadata.url,counter:r.counter,status:200,headers:l})}return a.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),a.headers.set("x-local-cache-hash",encodeURIComponent(this.entry.integrity)),a.headers.set("x-local-cache-key",encodeURIComponent(this.key)),a.headers.set("x-local-cache-mode","stream"),a.headers.set("x-local-cache-status",n),a.headers.set("x-local-cache-time",new Date(this.entry.metadata.time).toUTCString()),a}async revalidate(t,r){let n=new x0s(t,{headers:this.policy.revalidationHeaders(t)});try{var a=await QDl(n,{...r,headers:void 0})}catch(l){if(!this.policy.mustRevalidate)return this.respond(t.method,r,"stale");throw l}if(this.policy.revalidated(n,a)){let l=F0s(t,a,r);for(let A of Z0s)!Qze(l.resHeaders,A)&&Qze(this.entry.metadata.resHeaders,A)&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]);for(let A of r.cacheAdditionalHeaders){let f=Qze(l.resHeaders,A),I=Qze(this.entry.metadata.resHeaders,A),C=Qze(this.policy.response.headers,A);!f&&I&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]),!C&&f&&(this.policy.response.headers[A]=l.resHeaders[A])}try{await cye.index.insert(r.cachePath,this.key,this.entry.integrity,{size:this.entry.size,metadata:l})}catch{}return this.respond(t.method,r,"revalidated")}return new e({request:t,response:a,options:r}).store("updated")}};L0s.exports=C7r});var P0s=H((Hig,O0s)=>{var{NotCachedError:JDl}=bhs(),_7r=V0s(),UDl=XLt(),W0s=async(e,t)=>{let r=await _7r.find(e,t);if(!r){if(t.cache==="only-if-cached")throw new JDl(e.url);let a=await UDl(e,t);return new _7r({request:e,response:a,options:t}).store("miss")}if(t.cache==="no-cache")return r.revalidate(e,t);let n=r.policy.needsRevalidation(e);return t.cache==="force-cache"||t.cache==="only-if-cached"||!n?r.respond(e.method,t,n?"stale":"hit"):r.revalidate(e,t)};W0s.invalidate=async(e,t)=>{if(t.cachePath)return _7r.invalidate(e,t)};O0s.exports=W0s});var Q0s=H((Yig,Y0s)=>{"use strict";var{FetchError:y7r,Request:KDl,isRedirect:jDl}=uze(),b7r=Et("url"),zDl=f6r(),M0s=P0s(),qDl=XLt(),$Dl=(e,t,r)=>{if(!jDl(t.status)||r.redirect==="manual")return!1;if(r.redirect==="error")throw new y7r(`redirect mode is set to error: ${e.url}`,"no-redirect",{code:"ENOREDIRECT"});if(!t.headers.has("location"))throw new y7r(`redirect location header missing for: ${e.url}`,"no-location",{code:"EINVALIDREDIRECT"});if(e.counter>=e.follow)throw new y7r(`maximum redirect reached at: ${e.url}`,"max-redirect",{code:"EMAXREDIRECT"});return!0},ekl=(e,t,r)=>{let n={...r},a=t.headers.get("location"),o=new b7r.URL(a,/^https?:/.test(a)?void 0:e.url);return new b7r.URL(e.url).hostname!==o.hostname&&(e.headers.delete("authorization"),e.headers.delete("cookie")),(t.status===303||e.method==="POST"&&[301,302].includes(t.status))&&(n.method="GET",n.body=null,e.headers.delete("content-length")),n.headers={},e.headers.forEach((A,f)=>{n.headers[f]=A}),n.counter=++e.counter,{request:new KDl(b7r.format(o),n),options:n}},H0s=async(e,t)=>{let r=zDl.storable(e,t)?await M0s(e,t):await qDl(e,t);if(!["GET","HEAD"].includes(e.method)&&r.status>=200&&r.status<=399&&await M0s.invalidate(e,t),!$Dl(e,r,t))return r;let n=ekl(e,r,t);return H0s(n.request,n.options)};Y0s.exports=H0s});var zLt=H((Qig,OFe)=>{var{FetchError:tkl,Headers:rkl,Request:X0s,Response:nkl}=uze(),ikl=KIs(),skl=Q0s(),jLt=(e,t)=>{let r=ikl(t),n=new X0s(e,r);return skl(n,r)};jLt.defaults=(e,t={},r=jLt)=>{typeof e=="object"&&(t=e,e=null);let n=(a,o={})=>{let l=a||e,A={...t,...o,headers:{...t.headers,...o.headers}};return r(l,A)};return n.defaults=(a,o={})=>jLt.defaults(a,o,n),n};OFe.exports=jLt;OFe.exports.FetchError=tkl;OFe.exports.Headers=rkl;OFe.exports.Request=X0s;OFe.exports.Response=nkl});var J0s=H(PFe=>{"use strict";var okl=PFe&&PFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PFe,"__esModule",{value:!0});PFe.CIContextProvider=void 0;var akl=okl(zLt()),ckl=[lkl,ukl],E7r=class{constructor(t="sigstore"){this.audience=t}async getToken(){return Promise.any(ckl.map(t=>t(this.audience))).catch(()=>Promise.reject("CI: no tokens available"))}};PFe.CIContextProvider=E7r;async function lkl(e){if(!process.env.ACTIONS_ID_TOKEN_REQUEST_URL||!process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN)return Promise.reject("no token available");let t=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);return t.searchParams.append("audience",e),(await(0,akl.default)(t.href,{retry:2,headers:{Accept:"application/json",Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).json().then(n=>n.value)}async function ukl(){return process.env.SIGSTORE_ID_TOKEN?process.env.SIGSTORE_ID_TOKEN:Promise.reject("no token available")}});var U0s=H(qLt=>{"use strict";Object.defineProperty(qLt,"__esModule",{value:!0});qLt.CIContextProvider=void 0;var gkl=J0s();Object.defineProperty(qLt,"CIContextProvider",{enumerable:!0,get:function(){return gkl.CIContextProvider}})});var $Lt=H(Xze=>{"use strict";var j0s=Xze&&Xze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Xze,"__esModule",{value:!0});Xze.fetchWithRetry=Ekl;var Akl=Et("http2"),dkl=j0s(zLt()),K0s=Fjr(),pkl=j0s(Gjr()),fkl=ege(),Ikl=tZt(),{HTTP2_HEADER_LOCATION:hkl,HTTP2_HEADER_CONTENT_TYPE:mkl,HTTP2_HEADER_USER_AGENT:Ckl,HTTP_STATUS_INTERNAL_SERVER_ERROR:_kl,HTTP_STATUS_TOO_MANY_REQUESTS:ykl,HTTP_STATUS_REQUEST_TIMEOUT:bkl}=Akl.constants;async function Ekl(e,t){return(0,pkl.default)(async(r,n)=>{let a=t.method||"POST",o={[Ckl]:fkl.ua.getUserAgent(),...t.headers},l=await(0,dkl.default)(e,{method:a,headers:o,body:t.body,timeout:t.timeout,retry:!1}).catch(A=>(K0s.log.http("fetch",`${a} ${e} attempt ${n} failed with ${A}`),r(A)));if(l.ok)return l;{let A=await Skl(l);if(K0s.log.http("fetch",`${a} ${e} attempt ${n} failed with ${l.status}`),vkl(l.status))return r(A);throw A}},Bkl(t.retry))}var Skl=async e=>{let t=e.statusText,r=e.headers.get(hkl)||void 0;if(e.headers.get(mkl)?.includes("application/json"))try{t=(await e.json()).message||t}catch{}return new Ikl.HTTPError({status:e.status,message:t,location:r})},vkl=e=>[bkl,ykl].includes(e)||e>=_kl,Bkl=e=>typeof e=="boolean"?{retries:e?1:0}:typeof e=="number"?{retries:e}:{retries:0,...e}});var z0s=H(e9t=>{"use strict";Object.defineProperty(e9t,"__esModule",{value:!0});e9t.Fulcio=void 0;var wkl=$Lt(),S7r=class{constructor(t){this.options=t}async createSigningCertificate(t){let{baseURL:r,retry:n,timeout:a}=this.options,o=`${r}/api/v2/signingCert`;return(await(0,wkl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:a,retry:n})).json()}};e9t.Fulcio=S7r});var q0s=H(t9t=>{"use strict";Object.defineProperty(t9t,"__esModule",{value:!0});t9t.CAClient=void 0;var Tkl=aFe(),Rkl=z0s(),v7r=class{constructor(t){this.fulcio=new Rkl.Fulcio({baseURL:t.fulcioBaseURL,retry:t.retry,timeout:t.timeout})}async createSigningCertificate(t,r,n){let a=Nkl(t,r,n);try{let o=await this.fulcio.createSigningCertificate(a);return(o.signedCertificateEmbeddedSct?o.signedCertificateEmbeddedSct:o.signedCertificateDetachedSct).chain.certificates}catch(o){(0,Tkl.internalError)(o,"CA_CREATE_SIGNING_CERTIFICATE_ERROR","error creating signing certificate")}}};t9t.CAClient=v7r;function Nkl(e,t,r){return{credentials:{oidcIdentityToken:e},publicKeyRequest:{publicKey:{algorithm:"ECDSA",content:t},proofOfPossession:r.toString("base64")}}}});var eys=H(MFe=>{"use strict";var Dkl=MFe&&MFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MFe,"__esModule",{value:!0});MFe.EphemeralSigner=void 0;var $0s=Dkl(Et("crypto")),kkl="ec",xkl="P-256",B7r=class{constructor(){this.keypair=$0s.default.generateKeyPairSync(kkl,{namedCurve:xkl})}async sign(t){let r=$0s.default.sign(null,t,this.keypair.privateKey),n=this.keypair.publicKey.export({format:"pem",type:"spki"}).toString("ascii");return{signature:r,key:{$case:"publicKey",publicKey:n}}}};MFe.EphemeralSigner=B7r});var tys=H(lye=>{"use strict";Object.defineProperty(lye,"__esModule",{value:!0});lye.FulcioSigner=lye.DEFAULT_FULCIO_URL=void 0;var w7r=aFe(),Gkl=ege(),Fkl=q0s(),Zkl=eys();lye.DEFAULT_FULCIO_URL="https://fulcio.sigstore.dev";var T7r=class{constructor(t){this.ca=new Fkl.CAClient({...t,fulcioBaseURL:t.fulcioBaseURL||lye.DEFAULT_FULCIO_URL}),this.identityProvider=t.identityProvider,this.keyHolder=t.keyHolder||new Zkl.EphemeralSigner}async sign(t){let r=await this.getIdentityToken(),n;try{n=Gkl.oidc.extractJWTSubject(r)}catch(A){throw new w7r.InternalError({code:"IDENTITY_TOKEN_PARSE_ERROR",message:`invalid identity token: ${r}`,cause:A})}let a=await this.keyHolder.sign(Buffer.from(n));if(a.key.$case!=="publicKey")throw new w7r.InternalError({code:"CA_CREATE_SIGNING_CERTIFICATE_ERROR",message:"unexpected format for signing key"});let o=await this.ca.createSigningCertificate(r,a.key.publicKey,a.signature);return{signature:(await this.keyHolder.sign(t)).signature,key:{$case:"x509Certificate",certificate:o[0]}}}async getIdentityToken(){try{return await this.identityProvider.getToken()}catch(t){throw new w7r.InternalError({code:"IDENTITY_TOKEN_READ_ERROR",message:"error retrieving identity token",cause:t})}}};lye.FulcioSigner=T7r});var nys=H(HFe=>{"use strict";Object.defineProperty(HFe,"__esModule",{value:!0});HFe.FulcioSigner=HFe.DEFAULT_FULCIO_URL=void 0;var rys=tys();Object.defineProperty(HFe,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return rys.DEFAULT_FULCIO_URL}});Object.defineProperty(HFe,"FulcioSigner",{enumerable:!0,get:function(){return rys.FulcioSigner}})});var oys=H(r9t=>{"use strict";Object.defineProperty(r9t,"__esModule",{value:!0});r9t.Rekor=void 0;var iys=$Lt(),R7r=class{constructor(t){this.options=t}async createEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries`,A=await(await(0,iys.fetchWithRetry)(o,{headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).json();return sys(A)}async getEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries/${t}`,A=await(await(0,iys.fetchWithRetry)(o,{method:"GET",headers:{Accept:"application/json"},timeout:n,retry:a})).json();return sys(A)}};r9t.Rekor=R7r;function sys(e){let t=Object.entries(e);if(t.length!=1)throw new Error("Received multiple entries in Rekor response");let[r,n]=t[0];return{...n,uuid:r}}});var cys=H(n9t=>{"use strict";Object.defineProperty(n9t,"__esModule",{value:!0});n9t.TLogClient=void 0;var ays=aFe(),Lkl=tZt(),Vkl=oys(),N7r=class{constructor(t){this.fetchOnConflict=t.fetchOnConflict??!1,this.rekor=new Vkl.Rekor({baseURL:t.rekorBaseURL,retry:t.retry,timeout:t.timeout})}async createEntry(t){let r;try{r=await this.rekor.createEntry(t)}catch(n){if(Wkl(n)&&this.fetchOnConflict){let a=n.location.split("/").pop()||"";try{r=await this.rekor.getEntry(a)}catch(o){(0,ays.internalError)(o,"TLOG_FETCH_ENTRY_ERROR","error fetching tlog entry")}}else(0,ays.internalError)(n,"TLOG_CREATE_ENTRY_ERROR","error creating tlog entry")}return r}};n9t.TLogClient=N7r;function Wkl(e){return e instanceof Lkl.HTTPError&&e.statusCode===409&&e.location!==void 0}});var lys=H(D7r=>{"use strict";Object.defineProperty(D7r,"__esModule",{value:!0});D7r.toProposedEntry=Pkl;var Okl=Q7e(),gge=ege(),Jze="sha256";function Pkl(e,t,r="dsse"){switch(e.$case){case"dsseEnvelope":return r==="intoto"?Ykl(e.dsseEnvelope,t):Hkl(e.dsseEnvelope,t);case"messageSignature":return Mkl(e.messageSignature,t)}}function Mkl(e,t){let r=e.messageDigest.digest.toString("hex"),n=e.signature.toString("base64"),a=gge.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"hashedrekord",spec:{data:{hash:{algorithm:Jze,value:r}},signature:{content:n,publicKey:{content:a}}}}}function Hkl(e,t){let r=JSON.stringify((0,Okl.envelopeToJSON)(e)),n=gge.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"dsse",spec:{proposedContent:{envelope:r,verifiers:[n]}}}}function Ykl(e,t){let r=gge.crypto.digest(Jze,e.payload).toString("hex"),n=Qkl(e,t),a=gge.encoding.base64Encode(e.payload.toString("base64")),o=gge.encoding.base64Encode(e.signatures[0].sig.toString("base64")),l=e.signatures[0].keyid,A=gge.encoding.base64Encode(t),f={payloadType:e.payloadType,payload:a,signatures:[{sig:o,publicKey:A}]};return l.length>0&&(f.signatures[0].keyid=l),{apiVersion:"0.0.2",kind:"intoto",spec:{content:{envelope:f,hash:{algorithm:Jze,value:n},payloadHash:{algorithm:Jze,value:r}}}}}function Qkl(e,t){let r={payloadType:e.payloadType,payload:e.payload.toString("base64"),signatures:[{sig:e.signatures[0].sig.toString("base64"),publicKey:t}]};return e.signatures[0].keyid.length>0&&(r.signatures[0].keyid=e.signatures[0].keyid),gge.crypto.digest(Jze,gge.json.canonicalize(r)).toString("hex")}});var uys=H(uye=>{"use strict";Object.defineProperty(uye,"__esModule",{value:!0});uye.RekorWitness=uye.DEFAULT_REKOR_URL=void 0;var Xkl=ege(),Jkl=cys(),Ukl=lys();uye.DEFAULT_REKOR_URL="https://rekor.sigstore.dev";var k7r=class{constructor(t){this.entryType=t.entryType,this.tlog=new Jkl.TLogClient({...t,rekorBaseURL:t.rekorBaseURL||uye.DEFAULT_REKOR_URL})}async testify(t,r){let n=(0,Ukl.toProposedEntry)(t,r,this.entryType),a=await this.tlog.createEntry(n);return Kkl(a)}};uye.RekorWitness=k7r;function Kkl(e){let t=Buffer.from(e.logID,"hex"),r=Xkl.encoding.base64Decode(e.body),n=JSON.parse(r),a=e?.verification?.signedEntryTimestamp?jkl(e.verification.signedEntryTimestamp):void 0,o=e?.verification?.inclusionProof?zkl(e.verification.inclusionProof):void 0;return{tlogEntries:[{logIndex:e.logIndex.toString(),logId:{keyId:t},integratedTime:e.integratedTime.toString(),kindVersion:{kind:n.kind,version:n.apiVersion},inclusionPromise:a,inclusionProof:o,canonicalizedBody:Buffer.from(e.body,"base64")}]}}function jkl(e){return{signedEntryTimestamp:Buffer.from(e,"base64")}}function zkl(e){return{logIndex:e.logIndex.toString(),treeSize:e.treeSize.toString(),rootHash:Buffer.from(e.rootHash,"hex"),hashes:e.hashes.map(t=>Buffer.from(t,"hex")),checkpoint:{envelope:e.checkpoint}}}});var gys=H(i9t=>{"use strict";Object.defineProperty(i9t,"__esModule",{value:!0});i9t.TimestampAuthority=void 0;var qkl=$Lt(),x7r=class{constructor(t){this.options=t}async createTimestamp(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/timestamp`;return(await(0,qkl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).buffer()}};i9t.TimestampAuthority=x7r});var dys=H(s9t=>{"use strict";Object.defineProperty(s9t,"__esModule",{value:!0});s9t.TSAClient=void 0;var $kl=aFe(),exl=gys(),txl=ege(),Ays="sha256",G7r=class{constructor(t){this.tsa=new exl.TimestampAuthority({baseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async createTimestamp(t){let r={artifactHash:txl.crypto.digest(Ays,t).toString("base64"),hashAlgorithm:Ays};try{return await this.tsa.createTimestamp(r)}catch(n){(0,$kl.internalError)(n,"TSA_CREATE_TIMESTAMP_ERROR","error creating timestamp")}}};s9t.TSAClient=G7r});var pys=H(o9t=>{"use strict";Object.defineProperty(o9t,"__esModule",{value:!0});o9t.TSAWitness=void 0;var rxl=dys(),F7r=class{constructor(t){this.tsa=new rxl.TSAClient({tsaBaseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async testify(t){let r=nxl(t);return{rfc3161Timestamps:[{signedTimestamp:await this.tsa.createTimestamp(r)}]}}};o9t.TSAWitness=F7r;function nxl(e){switch(e.$case){case"dsseEnvelope":return e.dsseEnvelope.signatures[0].sig;case"messageSignature":return e.messageSignature.signature}}});var Iys=H(Age=>{"use strict";Object.defineProperty(Age,"__esModule",{value:!0});Age.TSAWitness=Age.RekorWitness=Age.DEFAULT_REKOR_URL=void 0;var fys=uys();Object.defineProperty(Age,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return fys.DEFAULT_REKOR_URL}});Object.defineProperty(Age,"RekorWitness",{enumerable:!0,get:function(){return fys.RekorWitness}});var ixl=pys();Object.defineProperty(Age,"TSAWitness",{enumerable:!0,get:function(){return ixl.TSAWitness}})});var L7r=H(kT=>{"use strict";Object.defineProperty(kT,"__esModule",{value:!0});kT.TSAWitness=kT.RekorWitness=kT.DEFAULT_REKOR_URL=kT.FulcioSigner=kT.DEFAULT_FULCIO_URL=kT.CIContextProvider=kT.InternalError=kT.MessageSignatureBundleBuilder=kT.DSSEBundleBuilder=void 0;var hys=Efs();Object.defineProperty(kT,"DSSEBundleBuilder",{enumerable:!0,get:function(){return hys.DSSEBundleBuilder}});Object.defineProperty(kT,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return hys.MessageSignatureBundleBuilder}});var sxl=aFe();Object.defineProperty(kT,"InternalError",{enumerable:!0,get:function(){return sxl.InternalError}});var oxl=U0s();Object.defineProperty(kT,"CIContextProvider",{enumerable:!0,get:function(){return oxl.CIContextProvider}});var mys=nys();Object.defineProperty(kT,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return mys.DEFAULT_FULCIO_URL}});Object.defineProperty(kT,"FulcioSigner",{enumerable:!0,get:function(){return mys.FulcioSigner}});var Z7r=Iys();Object.defineProperty(kT,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return Z7r.DEFAULT_REKOR_URL}});Object.defineProperty(kT,"RekorWitness",{enumerable:!0,get:function(){return Z7r.RekorWitness}});Object.defineProperty(kT,"TSAWitness",{enumerable:!0,get:function(){return Z7r.TSAWitness}})});var _ys=H(Uze=>{"use strict";var Cys=Uze&&Uze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Uze,"__esModule",{value:!0});Uze.appDataPath=cxl;var axl=Cys(Et("os")),YFe=Cys(Et("path"));function cxl(e){let t=axl.default.homedir();switch(process.platform){case"darwin":{let r=YFe.default.join(t,"Library","Application Support");return YFe.default.join(r,e)}case"win32":{let r=process.env.LOCALAPPDATA||YFe.default.join(t,"AppData","Local");return YFe.default.join(r,e,"Data")}default:{let r=process.env.XDG_DATA_HOME||YFe.default.join(t,".local","share");return YFe.default.join(r,e)}}}});var r7=H(uW=>{"use strict";Object.defineProperty(uW,"__esModule",{value:!0});uW.UnsupportedAlgorithmError=uW.CryptoError=uW.LengthOrHashMismatchError=uW.UnsignedMetadataError=uW.RepositoryError=uW.ValueError=void 0;var V7r=class extends Error{};uW.ValueError=V7r;var Kze=class extends Error{};uW.RepositoryError=Kze;var W7r=class extends Kze{};uW.UnsignedMetadataError=W7r;var O7r=class extends Kze{};uW.LengthOrHashMismatchError=O7r;var a9t=class extends Error{};uW.CryptoError=a9t;var P7r=class extends a9t{};uW.UnsupportedAlgorithmError=P7r});var bys=H(dge=>{"use strict";Object.defineProperty(dge,"__esModule",{value:!0});dge.isDefined=lxl;dge.isObject=yys;dge.isStringArray=uxl;dge.isObjectArray=gxl;dge.isStringRecord=Axl;dge.isObjectRecord=dxl;function lxl(e){return e!==void 0}function yys(e){return typeof e=="object"&&e!==null}function uxl(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function gxl(e){return Array.isArray(e)&&e.every(yys)}function Axl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="string")}function dxl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="object"&&t!==null)}});var H7r=H((Asg,vys)=>{var Eys=",",pxl=":",fxl="[",Ixl="]",hxl="{",mxl="}";function M7r(e){let t=[];if(typeof e=="string")t.push(Sys(e));else if(typeof e=="boolean")t.push(JSON.stringify(e));else if(Number.isInteger(e))t.push(JSON.stringify(e));else if(e===null)t.push(JSON.stringify(e));else if(Array.isArray(e)){t.push(fxl);let r=!0;e.forEach(n=>{r||t.push(Eys),r=!1,t.push(M7r(n))}),t.push(Ixl)}else if(typeof e=="object"){t.push(hxl);let r=!0;Object.keys(e).sort().forEach(n=>{r||t.push(Eys),r=!1,t.push(Sys(n)),t.push(pxl),t.push(M7r(e[n]))}),t.push(mxl)}else throw new TypeError("cannot encode "+e.toString());return t.join("")}function Sys(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'}vys.exports={canonicalize:M7r}});var Bys=H(QFe=>{"use strict";var Cxl=QFe&&QFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QFe,"__esModule",{value:!0});QFe.verifySignature=void 0;var _xl=H7r(),yxl=Cxl(Et("crypto")),bxl=(e,t,r)=>{let n=Buffer.from((0,_xl.canonicalize)(e));return yxl.default.verify(void 0,n,t,Buffer.from(r,"hex"))};QFe.verifySignature=bxl});var mJ=H(aY=>{"use strict";var Exl=aY&&aY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Sxl=aY&&aY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),wys=aY&&aY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Exl(t,e,r);return Sxl(t,e),t};Object.defineProperty(aY,"__esModule",{value:!0});aY.crypto=aY.guard=void 0;aY.guard=wys(bys());aY.crypto=wys(Bys())});var gye=H(wre=>{"use strict";var vxl=wre&&wre.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wre,"__esModule",{value:!0});wre.Signed=wre.MetadataKind=void 0;wre.isMetadataKind=wxl;var Bxl=vxl(Et("util")),jze=r7(),Y7r=mJ(),Tys=["1","0","31"],Q7r;(function(e){e.Root="root",e.Timestamp="timestamp",e.Snapshot="snapshot",e.Targets="targets"})(Q7r||(wre.MetadataKind=Q7r={}));function wxl(e){return typeof e=="string"&&Object.values(Q7r).includes(e)}var X7r=class e{constructor(t){this.specVersion=t.specVersion||Tys.join(".");let r=this.specVersion.split(".");if(!(r.length===2||r.length===3)||!r.every(n=>Txl(n)))throw new jze.ValueError("Failed to parse specVersion");if(r[0]!=Tys[0])throw new jze.ValueError("Unsupported specVersion");this.expires=t.expires,this.version=t.version,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.specVersion===t.specVersion&&this.expires===t.expires&&this.version===t.version&&Bxl.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}isExpired(t){return t||(t=new Date),t>=new Date(this.expires)}static commonFieldsFromJSON(t){let{spec_version:r,expires:n,version:a,...o}=t;if(Y7r.guard.isDefined(r)){if(typeof r!="string")throw new TypeError("spec_version must be a string")}else throw new jze.ValueError("spec_version is not defined");if(Y7r.guard.isDefined(n)){if(typeof n!="string")throw new TypeError("expires must be a string")}else throw new jze.ValueError("expires is not defined");if(Y7r.guard.isDefined(a)){if(typeof a!="number")throw new TypeError("version must be a number")}else throw new jze.ValueError("version is not defined");return{specVersion:r,expires:n,version:a,unrecognizedFields:o}}};wre.Signed=X7r;function Txl(e){return!isNaN(Number(e))}});var zze=H(fge=>{"use strict";var Rys=fge&&fge.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(fge,"__esModule",{value:!0});fge.TargetFile=fge.MetaFile=void 0;var Nys=Rys(Et("crypto")),l9t=Rys(Et("util")),pge=r7(),c9t=mJ(),J7r=class e{constructor(t){if(t.version<=0)throw new pge.ValueError("Metafile version must be at least 1");t.length!==void 0&&Dys(t.length),this.version=t.version,this.length=t.length,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.version===t.version&&this.length===t.length&&l9t.default.isDeepStrictEqual(this.hashes,t.hashes)&&l9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}verify(t){if(this.length!==void 0&&t.length!==this.length)throw new pge.LengthOrHashMismatchError(`Expected length ${this.length} but got ${t.length}`);this.hashes&&Object.entries(this.hashes).forEach(([r,n])=>{let a;try{a=Nys.default.createHash(r)}catch{throw new pge.LengthOrHashMismatchError(`Hash algorithm ${r} not supported`)}let o=a.update(t).digest("hex");if(o!==n)throw new pge.LengthOrHashMismatchError(`Expected hash ${n} but got ${o}`)})}toJSON(){let t={version:this.version,...this.unrecognizedFields};return this.length!==void 0&&(t.length=this.length),this.hashes&&(t.hashes=this.hashes),t}static fromJSON(t){let{version:r,length:n,hashes:a,...o}=t;if(typeof r!="number")throw new TypeError("version must be a number");if(c9t.guard.isDefined(n)&&typeof n!="number")throw new TypeError("length must be a number");if(c9t.guard.isDefined(a)&&!c9t.guard.isStringRecord(a))throw new TypeError("hashes must be string keys and values");return new e({version:r,length:n,hashes:a,unrecognizedFields:o})}};fge.MetaFile=J7r;var U7r=class e{constructor(t){Dys(t.length),this.length=t.length,this.path=t.path,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}get custom(){let t=this.unrecognizedFields.custom;return!t||Array.isArray(t)||typeof t!="object"?{}:t}equals(t){return t instanceof e?this.length===t.length&&this.path===t.path&&l9t.default.isDeepStrictEqual(this.hashes,t.hashes)&&l9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}async verify(t){let r=0,n=Object.keys(this.hashes).reduce((a,o)=>{try{a[o]=Nys.default.createHash(o)}catch{throw new pge.LengthOrHashMismatchError(`Hash algorithm ${o} not supported`)}return a},{});for await(let a of t)r+=a.length,Object.values(n).forEach(o=>{o.update(a)});if(r!==this.length)throw new pge.LengthOrHashMismatchError(`Expected length ${this.length} but got ${r}`);Object.entries(n).forEach(([a,o])=>{let l=this.hashes[a],A=o.digest("hex");if(A!==l)throw new pge.LengthOrHashMismatchError(`Expected hash ${l} but got ${A}`)})}toJSON(){return{length:this.length,hashes:this.hashes,...this.unrecognizedFields}}static fromJSON(t,r){let{length:n,hashes:a,...o}=r;if(typeof n!="number")throw new TypeError("length must be a number");if(!c9t.guard.isStringRecord(a))throw new TypeError("hashes must have string keys and values");return new e({length:n,path:t,hashes:a,unrecognizedFields:o})}};fge.TargetFile=U7r;function Dys(e){if(e<0)throw new pge.ValueError("Length must be at least 0")}});var kys=H(K7r=>{"use strict";Object.defineProperty(K7r,"__esModule",{value:!0});K7r.encodeOIDString=Nxl;var Rxl=6;function Nxl(e){let t=e.split("."),r=parseInt(t[0],10)*40+parseInt(t[1],10),n=[];t.slice(2).forEach(o=>{let l=Dxl(parseInt(o,10));n.push(...l)});let a=Buffer.from([r,...n]);return Buffer.from([Rxl,a.length,...a])}function Dxl(e){let t=[],r=0;for(;e>0;)t.unshift(e&127|r),e>>=7,r=128;return t}});var Zys=H($ze=>{"use strict";var kxl=$ze&&$ze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($ze,"__esModule",{value:!0});$ze.getPublicKey=Zxl;var XFe=kxl(Et("crypto")),qze=r7(),j7r=kys(),u9t=48,xys=3,Gys=0,xxl="1.3.101.112",Gxl="1.2.840.10045.2.1",Fxl="1.2.840.10045.3.1.7",z7r="-----BEGIN PUBLIC KEY-----";function Zxl(e){switch(e.keyType){case"rsa":return Lxl(e);case"ed25519":return Vxl(e);case"ecdsa":case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":return Wxl(e);default:throw new qze.UnsupportedAlgorithmError(`Unsupported key type: ${e.keyType}`)}}function Lxl(e){if(!e.keyVal.startsWith(z7r))throw new qze.CryptoError("Invalid key format");let t=XFe.default.createPublicKey(e.keyVal);switch(e.scheme){case"rsassa-pss-sha256":return{key:t,padding:XFe.default.constants.RSA_PKCS1_PSS_PADDING};default:throw new qze.UnsupportedAlgorithmError(`Unsupported RSA scheme: ${e.scheme}`)}}function Vxl(e){let t;if(e.keyVal.startsWith(z7r))t=XFe.default.createPublicKey(e.keyVal);else{if(!Fys(e.keyVal))throw new qze.CryptoError("Invalid key format");t=XFe.default.createPublicKey({key:Oxl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}function Wxl(e){let t;if(e.keyVal.startsWith(z7r))t=XFe.default.createPublicKey(e.keyVal);else{if(!Fys(e.keyVal))throw new qze.CryptoError("Invalid key format");t=XFe.default.createPublicKey({key:Pxl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}var Oxl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=(0,j7r.encodeOIDString)(xxl),n=Buffer.concat([Buffer.concat([Buffer.from([u9t]),Buffer.from([r.length]),r]),Buffer.concat([Buffer.from([xys]),Buffer.from([t.length+1]),Buffer.from([Gys]),t])]);return Buffer.concat([Buffer.from([u9t]),Buffer.from([n.length]),n])}},Pxl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=Buffer.concat([Buffer.from([xys]),Buffer.from([t.length+1]),Buffer.from([Gys]),t]),n=Buffer.concat([(0,j7r.encodeOIDString)(Gxl),(0,j7r.encodeOIDString)(Fxl)]),a=Buffer.concat([Buffer.from([u9t]),Buffer.from([n.length]),n]);return Buffer.concat([Buffer.from([u9t]),Buffer.from([a.length+r.length]),a,r])}},Fys=e=>/^[0-9a-fA-F]+$/.test(e)});var g9t=H(JFe=>{"use strict";var Mxl=JFe&&JFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JFe,"__esModule",{value:!0});JFe.Key=void 0;var Lys=Mxl(Et("util")),eqe=r7(),Vys=mJ(),Hxl=Zys(),q7r=class e{constructor(t){let{keyID:r,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l}=t;this.keyID=r,this.keyType=n,this.scheme=a,this.keyVal=o,this.unrecognizedFields=l||{}}verifySignature(t){let r=t.signatures[this.keyID];if(!r)throw new eqe.UnsignedMetadataError("no signature for key found in metadata");if(!this.keyVal.public)throw new eqe.UnsignedMetadataError("no public key found");let n=(0,Hxl.getPublicKey)({keyType:this.keyType,scheme:this.scheme,keyVal:this.keyVal.public}),a=t.signed.toJSON();try{if(!Vys.crypto.verifySignature(a,n,r.sig))throw new eqe.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}catch(o){throw o instanceof eqe.UnsignedMetadataError?o:new eqe.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}}equals(t){return t instanceof e?this.keyID===t.keyID&&this.keyType===t.keyType&&this.scheme===t.scheme&&Lys.default.isDeepStrictEqual(this.keyVal,t.keyVal)&&Lys.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keytype:this.keyType,scheme:this.scheme,keyval:this.keyVal,...this.unrecognizedFields}}static fromJSON(t,r){let{keytype:n,scheme:a,keyval:o,...l}=r;if(typeof n!="string")throw new TypeError("keytype must be a string");if(typeof a!="string")throw new TypeError("scheme must be a string");if(!Vys.guard.isStringRecord(o))throw new TypeError("keyval must be a string record");return new e({keyID:t,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l})}};JFe.Key=q7r});var Xys=H((_sg,Qys)=>{var Wys=tjr();Qys.exports=Xxl;var Oys="\0SLASH"+Math.random()+"\0",Pys="\0OPEN"+Math.random()+"\0",ezr="\0CLOSE"+Math.random()+"\0",Mys="\0COMMA"+Math.random()+"\0",Hys="\0PERIOD"+Math.random()+"\0";function $7r(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function Yxl(e){return e.split("\\\\").join(Oys).split("\\{").join(Pys).split("\\}").join(ezr).split("\\,").join(Mys).split("\\.").join(Hys)}function Qxl(e){return e.split(Oys).join("\\").split(Pys).join("{").split(ezr).join("}").split(Mys).join(",").split(Hys).join(".")}function Yys(e){if(!e)return[""];var t=[],r=Wys("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=Yys(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function Xxl(e,t){if(!e)return[];t=t||{};var r=t.max==null?1/0:t.max;return e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),tqe(Yxl(e),r,!0).map(Qxl)}function Jxl(e){return"{"+e+"}"}function Uxl(e){return/^-?0\d/.test(e)}function Kxl(e,t){return e<=t}function jxl(e,t){return e>=t}function tqe(e,t,r){var n=[],a=Wys("{","}",e);if(!a)return[e];var o=a.pre,l=a.post.length?tqe(a.post,t,!1):[""];if(/\$$/.test(a.pre))for(var A=0;A=0;if(!b&&!E)return a.post.match(/,(?!,).*\}/)?(e=a.pre+"{"+a.body+ezr+a.post,tqe(e,t,!0)):[e];var N;if(b)N=a.body.split(/\.\./);else if(N=Yys(a.body),N.length===1&&(N=tqe(N[0],t,!1).map(Jxl),N.length===1))return l.map(function(k){return a.pre+N[0]+k});var B;if(b){var F=$7r(N[0]),Q=$7r(N[1]),J=Math.max(N[0].length,N[1].length),ae=N.length==3?Math.max(Math.abs($7r(N[2])),1):1,ne=Kxl,ce=Q0){var Se=new Array(be+1).join("0");ue<0?de="-"+Se+de.slice(1):de=Se+de}}B.push(de)}}else{B=[];for(var De=0;De{"use strict";Object.defineProperty(A9t,"__esModule",{value:!0});A9t.assertValidPattern=void 0;var zxl=1024*64,qxl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>zxl)throw new TypeError("pattern is too long")};A9t.assertValidPattern=qxl});var Kys=H(d9t=>{"use strict";Object.defineProperty(d9t,"__esModule",{value:!0});d9t.parseClass=void 0;var $xl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},rqe=e=>e.replace(/[[\]\\-]/g,"\\$&"),eGl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Uys=e=>e.join(""),tGl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(rqe(b)+"-"+rqe(F)):F===b&&n.push(rqe(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(rqe(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(rqe(F)),o++}if(C{"use strict";Object.defineProperty(p9t,"__esModule",{value:!0});p9t.unescape=void 0;var rGl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");p9t.unescape=rGl});var nzr=H(C9t=>{"use strict";var gW;Object.defineProperty(C9t,"__esModule",{value:!0});C9t.AST=void 0;var nGl=Kys(),I9t=f9t(),iGl=new Set(["!","?","+","*","@"]),tzr=e=>iGl.has(e),jys=e=>tzr(e.type),sGl=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),oGl=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),aGl=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),zys=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),cGl="(?!(?:^|/)\\.\\.?(?:$|/))",h9t="(?!\\.)",lGl=new Set(["[","."]),uGl=new Set(["..","."]),gGl=new Set("().*{}+?[]^$\\!"),AGl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),rzr="[^/]",qys=rzr+"*?",$ys=rzr+"+?",m9t=class{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,J]=typeof N=="string"?gW.#B(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||J,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&uGl.has(this.#r[0]))){let B=lGl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?cGl:Q?h9t:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,I9t.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#p(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString(),I=this;return I.#r=[f],I.type=null,I.#t=void 0,[f,(0,I9t.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!h9t?"":this.#p(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?h9t:"")+$ys;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?h9t:"")+qys+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,I9t.unescape)(o),this.#t=!!this.#t,this.#n]}#p(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#B(t,r,n=!1){let a=!1,o="",l=!1,A=!1;for(let f=0;f{"use strict";Object.defineProperty(_9t,"__esModule",{value:!0});_9t.escape=void 0;var dGl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");_9t.escape=dGl});var obs=H(FA=>{"use strict";var pGl=FA&&FA.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FA,"__esModule",{value:!0});FA.unescape=FA.escape=FA.AST=FA.Minimatch=FA.match=FA.makeRe=FA.braceExpand=FA.defaults=FA.filter=FA.GLOBSTAR=FA.sep=FA.minimatch=void 0;var fGl=pGl(Xys()),y9t=Jys(),rbs=nzr(),IGl=izr(),hGl=f9t(),mGl=(e,t,r={})=>((0,y9t.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new Aye(t,r).match(e));FA.minimatch=mGl;var CGl=/^\*+([^+@!?\*\[\(]*)$/,_Gl=e=>t=>!t.startsWith(".")&&t.endsWith(e),yGl=e=>t=>t.endsWith(e),bGl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),EGl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),SGl=/^\*+\.\*+$/,vGl=e=>!e.startsWith(".")&&e.includes("."),BGl=e=>e!=="."&&e!==".."&&e.includes("."),wGl=/^\.\*+$/,TGl=e=>e!=="."&&e!==".."&&e.startsWith("."),RGl=/^\*+$/,NGl=e=>e.length!==0&&!e.startsWith("."),DGl=e=>e.length!==0&&e!=="."&&e!=="..",kGl=/^\?+([^+@!?\*\[\(]*)?$/,xGl=([e,t=""])=>{let r=nbs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},GGl=([e,t=""])=>{let r=ibs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},FGl=([e,t=""])=>{let r=ibs([e]);return t?n=>r(n)&&n.endsWith(t):r},ZGl=([e,t=""])=>{let r=nbs([e]);return t?n=>r(n)&&n.endsWith(t):r},nbs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},ibs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},sbs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",ebs={win32:{sep:"\\"},posix:{sep:"/"}};FA.sep=sbs==="win32"?ebs.win32.sep:ebs.posix.sep;FA.minimatch.sep=FA.sep;FA.GLOBSTAR=Symbol("globstar **");FA.minimatch.GLOBSTAR=FA.GLOBSTAR;var LGl="[^/]",VGl=LGl+"*?",WGl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",OGl="(?:(?!(?:\\/|^)\\.).)*?",PGl=(e,t={})=>r=>(0,FA.minimatch)(r,e,t);FA.filter=PGl;FA.minimatch.filter=FA.filter;var cY=(e,t={})=>Object.assign({},e,t),MGl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return FA.minimatch;let t=FA.minimatch;return Object.assign((n,a,o={})=>t(n,a,cY(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,cY(e,o))}static defaults(a){return t.defaults(cY(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,cY(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,cY(e,o))}},unescape:(n,a={})=>t.unescape(n,cY(e,a)),escape:(n,a={})=>t.escape(n,cY(e,a)),filter:(n,a={})=>t.filter(n,cY(e,a)),defaults:n=>t.defaults(cY(e,n)),makeRe:(n,a={})=>t.makeRe(n,cY(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,cY(e,a)),match:(n,a,o={})=>t.match(n,a,cY(e,o)),sep:t.sep,GLOBSTAR:FA.GLOBSTAR})};FA.defaults=MGl;FA.minimatch.defaults=FA.defaults;var HGl=(e,t={})=>((0,y9t.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,fGl.default)(e));FA.braceExpand=HGl;FA.minimatch.braceExpand=FA.braceExpand;var YGl=(e,t={})=>new Aye(e,t).makeRe();FA.makeRe=YGl;FA.minimatch.makeRe=FA.makeRe;var QGl=(e,t,r={})=>{let n=new Aye(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};FA.match=QGl;FA.minimatch.match=FA.match;var tbs=/[?*]|[+@!]\(.*?\)|\[|\]/,XGl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Aye=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(t,r={}){(0,y9t.assertValidPattern)(t),r=r||{},this.options=r,this.maxGlobstarRecursion=r.maxGlobstarRecursion??200,this.pattern=t,this.platform=r.platform||sbs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!tbs.test(o[2]))&&!tbs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;a=2&&(t=this.levelTwoFileOptimize(t)),r.includes(FA.GLOBSTAR)?this.#e(t,r,n,a,o):this.#n(t,r,n,a,o)}#e(t,r,n,a,o){let l=r.indexOf(FA.GLOBSTAR,o),A=r.lastIndexOf(FA.GLOBSTAR),[f,I,C]=n?[r.slice(o,l),r.slice(l+1),[]]:[r.slice(o,l),r.slice(l+1,A),r.slice(A+1)];if(f.length){let ae=t.slice(a,a+f.length);if(!this.#n(ae,f,n,0,0))return!1;a+=f.length}let b=0;if(C.length){if(C.length+a>t.length)return!1;let ae=t.length-C.length;if(this.#n(t,C,n,ae,0))b=C.length;else{if(t[t.length-1]!==""||a+C.length===t.length||(ae--,!this.#n(t,C,n,ae,0)))return!1;b=C.length+1}}if(!I.length){let ae=!!b;for(let ne=a;ne{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?XGl(C):C===FA.GLOBSTAR?FA.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==FA.GLOBSTAR||N===FA.GLOBSTAR||(N===void 0?E!==void 0&&E!==FA.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==FA.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=FA.GLOBSTAR))}),I.filter(C=>C!==FA.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var abs=lY&&lY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(lY,"__esModule",{value:!0});lY.SuccinctRoles=lY.DelegatedRole=lY.Role=lY.TOP_LEVEL_ROLE_NAMES=void 0;var cbs=abs(Et("crypto")),jGl=obs(),b9t=abs(Et("util")),E9t=r7(),dye=mJ();lY.TOP_LEVEL_ROLE_NAMES=["root","targets","snapshot","timestamp"];var nqe=class e{constructor(t){let{keyIDs:r,threshold:n,unrecognizedFields:a}=t;if(zGl(r))throw new E9t.ValueError("duplicate key IDs found");if(n<1)throw new E9t.ValueError("threshold must be at least 1");this.keyIDs=r,this.threshold=n,this.unrecognizedFields=a||{}}equals(t){return t instanceof e?this.threshold===t.threshold&&b9t.default.isDeepStrictEqual(this.keyIDs,t.keyIDs)&&b9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keyids:this.keyIDs,threshold:this.threshold,...this.unrecognizedFields}}static fromJSON(t){let{keyids:r,threshold:n,...a}=t;if(!dye.guard.isStringArray(r))throw new TypeError("keyids must be an array");if(typeof n!="number")throw new TypeError("threshold must be a number");return new e({keyIDs:r,threshold:n,unrecognizedFields:a})}};lY.Role=nqe;function zGl(e){return new Set(e).size!==e.length}var szr=class e extends nqe{constructor(t){super(t);let{name:r,terminating:n,paths:a,pathHashPrefixes:o}=t;if(this.name=r,this.terminating=n,t.paths&&t.pathHashPrefixes)throw new E9t.ValueError("paths and pathHashPrefixes are mutually exclusive");this.paths=a,this.pathHashPrefixes=o}equals(t){return t instanceof e?super.equals(t)&&this.name===t.name&&this.terminating===t.terminating&&b9t.default.isDeepStrictEqual(this.paths,t.paths)&&b9t.default.isDeepStrictEqual(this.pathHashPrefixes,t.pathHashPrefixes):!1}isDelegatedPath(t){if(this.paths)return this.paths.some(r=>$Gl(t,r));if(this.pathHashPrefixes){let n=cbs.default.createHash("sha256").update(t).digest("hex");return this.pathHashPrefixes.some(a=>n.startsWith(a))}return!1}toJSON(){let t={...super.toJSON(),name:this.name,terminating:this.terminating};return this.paths&&(t.paths=this.paths),this.pathHashPrefixes&&(t.path_hash_prefixes=this.pathHashPrefixes),t}static fromJSON(t){let{keyids:r,threshold:n,name:a,terminating:o,paths:l,path_hash_prefixes:A,...f}=t;if(!dye.guard.isStringArray(r))throw new TypeError("keyids must be an array of strings");if(typeof n!="number")throw new TypeError("threshold must be a number");if(typeof a!="string")throw new TypeError("name must be a string");if(typeof o!="boolean")throw new TypeError("terminating must be a boolean");if(dye.guard.isDefined(l)&&!dye.guard.isStringArray(l))throw new TypeError("paths must be an array of strings");if(dye.guard.isDefined(A)&&!dye.guard.isStringArray(A))throw new TypeError("path_hash_prefixes must be an array of strings");return new e({keyIDs:r,threshold:n,name:a,terminating:o,paths:l,pathHashPrefixes:A,unrecognizedFields:f})}};lY.DelegatedRole=szr;var qGl=(e,t)=>e.map((r,n)=>[r,t[n]]);function $Gl(e,t){let r=e.split("/"),n=t.split("/");return n.length!=r.length?!1:qGl(r,n).every(([a,o])=>(0,jGl.minimatch)(a,o))}var ozr=class e extends nqe{constructor(t){super(t);let{bitLength:r,namePrefix:n}=t;if(r<=0||r>32)throw new E9t.ValueError("bitLength must be between 1 and 32");this.bitLength=r,this.namePrefix=n,this.numberOfBins=Math.pow(2,r),this.suffixLen=(this.numberOfBins-1).toString(16).length}equals(t){return t instanceof e?super.equals(t)&&this.bitLength===t.bitLength&&this.namePrefix===t.namePrefix:!1}getRoleForTarget(t){let a=cbs.default.createHash("sha256").update(t).digest().subarray(0,4),o=32-this.bitLength,A=(a.readUInt32BE()>>>o).toString(16).padStart(this.suffixLen,"0");return`${this.namePrefix}-${A}`}*getRoles(){for(let t=0;t{"use strict";var eFl=UFe&&UFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UFe,"__esModule",{value:!0});UFe.Root=void 0;var lbs=eFl(Et("util")),czr=gye(),ubs=r7(),tFl=g9t(),S9t=azr(),v9t=mJ(),lzr=class e extends czr.Signed{constructor(t){if(super(t),this.type=czr.MetadataKind.Root,this.keys=t.keys||{},this.consistentSnapshot=t.consistentSnapshot??!0,!t.roles)this.roles=S9t.TOP_LEVEL_ROLE_NAMES.reduce((r,n)=>({...r,[n]:new S9t.Role({keyIDs:[],threshold:1})}),{});else{let r=new Set(Object.keys(t.roles));if(!S9t.TOP_LEVEL_ROLE_NAMES.every(n=>r.has(n)))throw new ubs.ValueError("missing top-level role");this.roles=t.roles}}addKey(t,r){if(!this.roles[r])throw new ubs.ValueError(`role ${r} does not exist`);this.roles[r].keyIDs.includes(t.keyID)||this.roles[r].keyIDs.push(t.keyID),this.keys[t.keyID]=t}equals(t){return t instanceof e?super.equals(t)&&this.consistentSnapshot===t.consistentSnapshot&&lbs.default.isDeepStrictEqual(this.keys,t.keys)&&lbs.default.isDeepStrictEqual(this.roles,t.roles):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,keys:rFl(this.keys),roles:nFl(this.roles),consistent_snapshot:this.consistentSnapshot,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=czr.Signed.commonFieldsFromJSON(t),{keys:a,roles:o,consistent_snapshot:l,...A}=r;if(typeof l!="boolean")throw new TypeError("consistent_snapshot must be a boolean");return new e({...n,keys:iFl(a),roles:sFl(o),consistentSnapshot:l,unrecognizedFields:A})}};UFe.Root=lzr;function rFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function nFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function iFl(e){let t;if(v9t.guard.isDefined(e)){if(!v9t.guard.isObjectRecord(e))throw new TypeError("keys must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:tFl.Key.fromJSON(n,a)}),{})}return t}function sFl(e){let t;if(v9t.guard.isDefined(e)){if(!v9t.guard.isObjectRecord(e))throw new TypeError("roles must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:S9t.Role.fromJSON(a)}),{})}return t}});var Azr=H(B9t=>{"use strict";Object.defineProperty(B9t,"__esModule",{value:!0});B9t.Signature=void 0;var gzr=class e{constructor(t){let{keyID:r,sig:n}=t;this.keyID=r,this.sig=n}toJSON(){return{keyid:this.keyID,sig:this.sig}}static fromJSON(t){let{keyid:r,sig:n}=t;if(typeof r!="string")throw new TypeError("keyid must be a string");if(typeof n!="string")throw new TypeError("sig must be a string");return new e({keyID:r,sig:n})}};B9t.Signature=gzr});var fzr=H(KFe=>{"use strict";var oFl=KFe&&KFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KFe,"__esModule",{value:!0});KFe.Snapshot=void 0;var aFl=oFl(Et("util")),dzr=gye(),Abs=zze(),gbs=mJ(),pzr=class e extends dzr.Signed{constructor(t){super(t),this.type=dzr.MetadataKind.Snapshot,this.meta=t.meta||{"targets.json":new Abs.MetaFile({version:1})}}equals(t){return t instanceof e?super.equals(t)&&aFl.default.isDeepStrictEqual(this.meta,t.meta):!1}toJSON(){return{_type:this.type,meta:cFl(this.meta),spec_version:this.specVersion,version:this.version,expires:this.expires,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=dzr.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,meta:lFl(a),unrecognizedFields:o})}};KFe.Snapshot=pzr;function cFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function lFl(e){let t;if(gbs.guard.isDefined(e))if(gbs.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:Abs.MetaFile.fromJSON(a)}),{});else throw new TypeError("meta field is malformed");return t}});var dbs=H(jFe=>{"use strict";var uFl=jFe&&jFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jFe,"__esModule",{value:!0});jFe.Delegations=void 0;var w9t=uFl(Et("util")),gFl=r7(),AFl=g9t(),Izr=azr(),T9t=mJ(),hzr=class e{constructor(t){if(this.keys=t.keys,this.unrecognizedFields=t.unrecognizedFields||{},t.roles&&Object.keys(t.roles).some(r=>Izr.TOP_LEVEL_ROLE_NAMES.includes(r)))throw new gFl.ValueError("Delegated role name conflicts with top-level role name");this.succinctRoles=t.succinctRoles,this.roles=t.roles}equals(t){return t instanceof e?w9t.default.isDeepStrictEqual(this.keys,t.keys)&&w9t.default.isDeepStrictEqual(this.roles,t.roles)&&w9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields)&&w9t.default.isDeepStrictEqual(this.succinctRoles,t.succinctRoles):!1}*rolesForTarget(t){if(this.roles)for(let r of Object.values(this.roles))r.isDelegatedPath(t)&&(yield{role:r.name,terminating:r.terminating});else this.succinctRoles&&(yield{role:this.succinctRoles.getRoleForTarget(t),terminating:!0})}toJSON(){let t={keys:dFl(this.keys),...this.unrecognizedFields};return this.roles?t.roles=pFl(this.roles):this.succinctRoles&&(t.succinct_roles=this.succinctRoles.toJSON()),t}static fromJSON(t){let{keys:r,roles:n,succinct_roles:a,...o}=t,l;return T9t.guard.isObject(a)&&(l=Izr.SuccinctRoles.fromJSON(a)),new e({keys:fFl(r),roles:IFl(n),unrecognizedFields:o,succinctRoles:l})}};jFe.Delegations=hzr;function dFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function pFl(e){return Object.values(e).map(t=>t.toJSON())}function fFl(e){if(!T9t.guard.isObjectRecord(e))throw new TypeError("keys is malformed");return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:AFl.Key.fromJSON(r,n)}),{})}function IFl(e){let t;if(T9t.guard.isDefined(e)){if(!T9t.guard.isObjectArray(e))throw new TypeError("roles is malformed");t=e.reduce((r,n)=>{let a=Izr.DelegatedRole.fromJSON(n);return{...r,[a.name]:a}},{})}return t}});var _zr=H(zFe=>{"use strict";var hFl=zFe&&zFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zFe,"__esModule",{value:!0});zFe.Targets=void 0;var pbs=hFl(Et("util")),mzr=gye(),mFl=dbs(),CFl=zze(),R9t=mJ(),Czr=class e extends mzr.Signed{constructor(t){super(t),this.type=mzr.MetadataKind.Targets,this.targets=t.targets||{},this.delegations=t.delegations}addTarget(t){this.targets[t.path]=t}equals(t){return t instanceof e?super.equals(t)&&pbs.default.isDeepStrictEqual(this.targets,t.targets)&&pbs.default.isDeepStrictEqual(this.delegations,t.delegations):!1}toJSON(){let t={_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,targets:_Fl(this.targets),...this.unrecognizedFields};return this.delegations&&(t.delegations=this.delegations.toJSON()),t}static fromJSON(t){let{unrecognizedFields:r,...n}=mzr.Signed.commonFieldsFromJSON(t),{targets:a,delegations:o,...l}=r;return new e({...n,targets:yFl(a),delegations:bFl(o),unrecognizedFields:l})}};zFe.Targets=Czr;function _Fl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function yFl(e){let t;if(R9t.guard.isDefined(e))if(R9t.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:CFl.TargetFile.fromJSON(n,a)}),{});else throw new TypeError("targets must be an object");return t}function bFl(e){let t;if(R9t.guard.isDefined(e))if(R9t.guard.isObject(e))t=mFl.Delegations.fromJSON(e);else throw new TypeError("delegations must be an object");return t}});var Szr=H(N9t=>{"use strict";Object.defineProperty(N9t,"__esModule",{value:!0});N9t.Timestamp=void 0;var yzr=gye(),fbs=zze(),bzr=mJ(),Ezr=class e extends yzr.Signed{constructor(t){super(t),this.type=yzr.MetadataKind.Timestamp,this.snapshotMeta=t.snapshotMeta||new fbs.MetaFile({version:1})}equals(t){return t instanceof e?super.equals(t)&&this.snapshotMeta.equals(t.snapshotMeta):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,meta:{"snapshot.json":this.snapshotMeta.toJSON()},...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=yzr.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,snapshotMeta:EFl(a),unrecognizedFields:o})}};N9t.Timestamp=Ezr;function EFl(e){let t;if(bzr.guard.isDefined(e)){let r=e["snapshot.json"];if(!bzr.guard.isDefined(r)||!bzr.guard.isObject(r))throw new TypeError("missing snapshot.json in meta");t=fbs.MetaFile.fromJSON(r)}return t}});var hbs=H($Fe=>{"use strict";var SFl=$Fe&&$Fe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($Fe,"__esModule",{value:!0});$Fe.Metadata=void 0;var vFl=H7r(),Ibs=SFl(Et("util")),qFe=gye(),iqe=r7(),BFl=uzr(),wFl=Azr(),TFl=fzr(),RFl=_zr(),NFl=Szr(),vzr=mJ(),Bzr=class e{constructor(t,r,n){this.signed=t,this.signatures=r||{},this.unrecognizedFields=n||{}}sign(t,r=!0){let n=Buffer.from((0,vFl.canonicalize)(this.signed.toJSON())),a=t(n);r||(this.signatures={}),this.signatures[a.keyID]=a}verifyDelegate(t,r){let n,a={};switch(this.signed.type){case qFe.MetadataKind.Root:a=this.signed.keys,n=this.signed.roles[t];break;case qFe.MetadataKind.Targets:if(!this.signed.delegations)throw new iqe.ValueError(`No delegations found for ${t}`);a=this.signed.delegations.keys,this.signed.delegations.roles?n=this.signed.delegations.roles[t]:this.signed.delegations.succinctRoles&&this.signed.delegations.succinctRoles.isDelegatedRole(t)&&(n=this.signed.delegations.succinctRoles);break;default:throw new TypeError("invalid metadata type")}if(!n)throw new iqe.ValueError(`no delegation found for ${t}`);let o=new Set;if(n.keyIDs.forEach(l=>{let A=a[l];if(A)try{A.verifySignature(r),o.add(A.keyID)}catch{}}),o.sizer.toJSON()),signed:this.signed.toJSON(),...this.unrecognizedFields}}static fromJSON(t,r){let{signed:n,signatures:a,...o}=r;if(!vzr.guard.isDefined(n)||!vzr.guard.isObject(n))throw new TypeError("signed is not defined");if(t!==n._type)throw new iqe.ValueError(`expected '${t}', got ${n._type}`);if(!vzr.guard.isObjectArray(a))throw new TypeError("signatures is not an array");let l;switch(t){case qFe.MetadataKind.Root:l=BFl.Root.fromJSON(n);break;case qFe.MetadataKind.Timestamp:l=NFl.Timestamp.fromJSON(n);break;case qFe.MetadataKind.Snapshot:l=TFl.Snapshot.fromJSON(n);break;case qFe.MetadataKind.Targets:l=RFl.Targets.fromJSON(n);break;default:throw new TypeError("invalid metadata type")}let A={};return a.forEach(f=>{let I=wFl.Signature.fromJSON(f);if(A[I.keyID])throw new iqe.ValueError(`multiple signatures found for keyid: ${I.keyID}`);A[I.keyID]=I}),new e(l,A,o)}};$Fe.Metadata=Bzr});var D9t=H(Q2=>{"use strict";Object.defineProperty(Q2,"__esModule",{value:!0});Q2.Timestamp=Q2.Targets=Q2.Snapshot=Q2.Signature=Q2.Root=Q2.Metadata=Q2.Key=Q2.TargetFile=Q2.MetaFile=Q2.ValueError=Q2.MetadataKind=void 0;var DFl=gye();Object.defineProperty(Q2,"MetadataKind",{enumerable:!0,get:function(){return DFl.MetadataKind}});var kFl=r7();Object.defineProperty(Q2,"ValueError",{enumerable:!0,get:function(){return kFl.ValueError}});var mbs=zze();Object.defineProperty(Q2,"MetaFile",{enumerable:!0,get:function(){return mbs.MetaFile}});Object.defineProperty(Q2,"TargetFile",{enumerable:!0,get:function(){return mbs.TargetFile}});var xFl=g9t();Object.defineProperty(Q2,"Key",{enumerable:!0,get:function(){return xFl.Key}});var GFl=hbs();Object.defineProperty(Q2,"Metadata",{enumerable:!0,get:function(){return GFl.Metadata}});var FFl=uzr();Object.defineProperty(Q2,"Root",{enumerable:!0,get:function(){return FFl.Root}});var ZFl=Azr();Object.defineProperty(Q2,"Signature",{enumerable:!0,get:function(){return ZFl.Signature}});var LFl=fzr();Object.defineProperty(Q2,"Snapshot",{enumerable:!0,get:function(){return LFl.Snapshot}});var VFl=_zr();Object.defineProperty(Q2,"Targets",{enumerable:!0,get:function(){return VFl.Targets}});var WFl=Szr();Object.defineProperty(Q2,"Timestamp",{enumerable:!0,get:function(){return WFl.Timestamp}})});var wzr=H((Vsg,Cbs)=>{function OFl(e){r.debug=r,r.default=r,r.coerce=f,r.disable=l,r.enable=a,r.enabled=A,r.humanize=mSr(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(J,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(J,Q),(J.log||r.log).apply(J,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b=(typeof C=="string"?C:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let E of b)E[0]==="-"?r.skips.push(E.slice(1)):r.names.push(E)}function o(C,b){let E=0,N=0,B=-1,F=0;for(;E"-"+b)].join(",");return r.enable(""),C}function A(C){for(let b of r.skips)if(o(C,b))return!1;for(let b of r.names)if(o(C,b))return!0;return!1}function f(C){return C instanceof Error?C.stack||C.message:C}function I(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Cbs.exports=OFl});var _bs=H((AW,k9t)=>{AW.formatArgs=MFl;AW.save=HFl;AW.load=YFl;AW.useColors=PFl;AW.storage=QFl();AW.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();AW.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function PFl(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function MFl(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+k9t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}AW.log=console.debug||console.log||(()=>{});function HFl(e){try{e?AW.storage.setItem("debug",e):AW.storage.removeItem("debug")}catch{}}function YFl(){let e;try{e=AW.storage.getItem("debug")||AW.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function QFl(){try{return localStorage}catch{}}k9t.exports=wzr()(AW);var{formatters:XFl}=k9t.exports;XFl.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var bbs=H((xD,G9t)=>{var JFl=Et("tty"),x9t=Et("util");xD.init=eZl;xD.log=zFl;xD.formatArgs=KFl;xD.save=qFl;xD.load=$Fl;xD.useColors=UFl;xD.destroy=x9t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");xD.colors=[6,2,3,4,5,1];try{let e=Et("supports-color");e&&(e.stderr||e).level>=2&&(xD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}xD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function UFl(){return"colors"in xD.inspectOpts?!!xD.inspectOpts.colors:JFl.isatty(process.stderr.fd)}function KFl(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+G9t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=$Gl()+t+" "+e[0]}function $Gl(){return kD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function eFl(...e){return process.stderr.write(x9t.formatWithOptions(kD.inspectOpts,...e)+` -`)}function tFl(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function rFl(){return process.env.DEBUG}function nFl(e){e.inspectOpts={};let t=Object.keys(kD.inspectOpts);for(let r=0;rt.trim()).join(" ")};_bs.O=function(e){return this.inspectOpts.colors=this.useColors,x9t.inspect(e,this.inspectOpts)}});var Ezr=H((Sig,bzr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?bzr.exports=Cbs():bzr.exports=ybs()});var Z9t=H(cB=>{"use strict";Object.defineProperty(cB,"__esModule",{value:!0});cB.DownloadHTTPError=cB.DownloadLengthMismatchError=cB.DownloadError=cB.ExpiredMetadataError=cB.EqualVersionError=cB.BadVersionError=cB.RepositoryError=cB.PersistError=cB.RuntimeError=cB.ValueError=void 0;var Szr=class extends Error{};cB.ValueError=Szr;var vzr=class extends Error{};cB.RuntimeError=vzr;var Bzr=class extends Error{};cB.PersistError=Bzr;var oqe=class extends Error{};cB.RepositoryError=oqe;var F9t=class extends oqe{};cB.BadVersionError=F9t;var wzr=class extends F9t{};cB.EqualVersionError=wzr;var Tzr=class extends oqe{};cB.ExpiredMetadataError=Tzr;var aqe=class extends Error{};cB.DownloadError=aqe;var Rzr=class extends aqe{};cB.DownloadLengthMismatchError=Rzr;var Nzr=class extends aqe{statusCode;constructor(t,r){super(t),this.statusCode=r}};cB.DownloadHTTPError=Nzr});var Ebs=H(eZe=>{"use strict";var kzr=eZe&&eZe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(eZe,"__esModule",{value:!0});eZe.withTempFile=void 0;var Dzr=kzr(Et("fs/promises")),iFl=kzr(Et("os")),bbs=kzr(Et("path")),sFl=async e=>oFl(async t=>e(bbs.default.join(t,"tempfile")));eZe.withTempFile=sFl;var oFl=async e=>{let t=await Dzr.default.realpath(iFl.default.tmpdir()),r=await Dzr.default.mkdtemp(t+bbs.default.sep);try{return await e(r)}finally{await Dzr.default.rm(r,{force:!0,recursive:!0,maxRetries:3})}}});var Gzr=H(fge=>{"use strict";var V9t=fge&&fge.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(fge,"__esModule",{value:!0});fge.DefaultFetcher=fge.BaseFetcher=void 0;var aFl=V9t(Ezr()),Sbs=V9t(Et("fs")),cFl=V9t(zLt()),lFl=V9t(Et("util")),vbs=Z9t(),uFl=Ebs(),gFl=(0,aFl.default)("tuf:fetch"),L9t=class{async downloadFile(t,r,n){return(0,uFl.withTempFile)(async a=>{let o=await this.fetch(t),l=0,A=Sbs.default.createWriteStream(a);try{for await(let f of o){if(l+=f.length,l>r)throw new vbs.DownloadLengthMismatchError("Max length reached");await AFl(A,f)}}finally{await lFl.default.promisify(A.close).bind(A)()}return n(a)})}async downloadBytes(t,r){return this.downloadFile(t,r,async n=>{let a=Sbs.default.createReadStream(n),o=[];for await(let l of a)o.push(l);return Buffer.concat(o)})}};fge.BaseFetcher=L9t;var xzr=class extends L9t{timeout;retry;constructor(t={}){super(),this.timeout=t.timeout,this.retry=t.retry}async fetch(t){gFl("GET %s",t);let r=await(0,cFl.default)(t,{timeout:this.timeout,retry:this.retry});if(!r.ok||!r?.body)throw new vbs.DownloadHTTPError("Failed to download",r.status);return r.body}};fge.DefaultFetcher=xzr;var AFl=async(e,t)=>new Promise((r,n)=>{e.write(t,a=>{a&&n(a),r(!0)})})});var Bbs=H(W9t=>{"use strict";Object.defineProperty(W9t,"__esModule",{value:!0});W9t.defaultConfig=void 0;W9t.defaultConfig={maxRootRotations:256,maxDelegations:32,rootMaxLength:512e3,timestampMaxLength:16384,snapshotMaxLength:2e6,targetsMaxLength:5e6,prefixTargetsWithHash:!0,fetchTimeout:1e5,fetchRetries:void 0,fetchRetry:2}});var wbs=H(O9t=>{"use strict";Object.defineProperty(O9t,"__esModule",{value:!0});O9t.TrustedMetadataStore=void 0;var kT=D9t(),QS=Z9t(),Fzr=class{trustedSet={};referenceTime;constructor(t){this.referenceTime=new Date,this.loadTrustedRoot(t)}get root(){if(!this.trustedSet.root)throw new ReferenceError("No trusted root metadata");return this.trustedSet.root}get timestamp(){return this.trustedSet.timestamp}get snapshot(){return this.trustedSet.snapshot}get targets(){return this.trustedSet.targets}getRole(t){return this.trustedSet[t]}updateRoot(t){let r=JSON.parse(t.toString("utf8")),n=kT.Metadata.fromJSON(kT.MetadataKind.Root,r);if(n.signed.type!=kT.MetadataKind.Root)throw new QS.RepositoryError(`Expected 'root', got ${n.signed.type}`);if(this.root.verifyDelegate(kT.MetadataKind.Root,n),n.signed.version!=this.root.signed.version+1)throw new QS.BadVersionError(`Expected version ${this.root.signed.version+1}, got ${n.signed.version}`);return n.verifyDelegate(kT.MetadataKind.Root,n),this.trustedSet.root=n,n}updateTimestamp(t){if(this.snapshot)throw new QS.RuntimeError("Cannot update timestamp after snapshot");if(this.root.signed.isExpired(this.referenceTime))throw new QS.ExpiredMetadataError("Final root.json is expired");let r=JSON.parse(t.toString("utf8")),n=kT.Metadata.fromJSON(kT.MetadataKind.Timestamp,r);if(n.signed.type!=kT.MetadataKind.Timestamp)throw new QS.RepositoryError(`Expected 'timestamp', got ${n.signed.type}`);if(this.root.verifyDelegate(kT.MetadataKind.Timestamp,n),this.timestamp){if(n.signed.version{let f=o.signed.meta[l];if(!f)throw new QS.RepositoryError(`Missing file ${l} in new snapshot`);if(f.version{"use strict";Object.defineProperty(Zzr,"__esModule",{value:!0});Zzr.join=pFl;var dFl=Et("url");function pFl(e,t){return new dFl.URL(fFl(e)+IFl(t)).toString()}function fFl(e){return e.endsWith("/")?e:e+"/"}function IFl(e){return e.startsWith("/")?e.slice(1):e}});var Rbs=H(lY=>{"use strict";var hFl=lY&&lY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mFl=lY&&lY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wzr=lY&&lY.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{await t.verify(tZe.createReadStream(f)),Lzr("WRITE %s",a),tZe.copyFileSync(f,a)}),a}async findCachedTarget(t,r){r||(r=this.generateTargetPath(t));try{if(tZe.existsSync(r))return await t.verify(tZe.createReadStream(r)),r}catch{return}}loadLocalMetadata(t){let r=P9t.join(this.dir,`${t}.json`);return Lzr("READ %s",r),tZe.readFileSync(r)}async loadRoot(){let r=this.trustedSet.root.signed.version+1,n=r+this.config.maxRootRotations;for(let a=r;a0;){let{roleName:a,parentRoleName:o}=r.pop();if(n.has(a))continue;let l=(await this.loadTargets(a,o))?.signed;if(!l)continue;let A=l.targets?.[t];if(A)return A;if(n.add(a),l.delegations){let f=[],I=l.delegations.rolesForTarget(t);for(let{role:C,terminating:b}of I)if(f.push({roleName:C,parentRoleName:a}),b){r.splice(0);break}f.reverse(),r.push(...f)}}}generateTargetPath(t){if(!this.targetDir)throw new pye.ValueError("Target directory not set");let r=encodeURIComponent(t.path);return P9t.join(this.targetDir,r)}persistMetadata(t,r){let n=encodeURIComponent(t);try{let a=P9t.join(this.dir,`${n}.json`);Lzr("WRITE %s",a),tZe.writeFileSync(a,r.toString("utf8"))}catch(a){throw new pye.PersistError(`Failed to persist metadata ${n} error: ${a}`)}}};lY.Updater=Vzr});var Nbs=H(Ige=>{"use strict";Object.defineProperty(Ige,"__esModule",{value:!0});Ige.Updater=Ige.BaseFetcher=Ige.TargetFile=void 0;var SFl=D9t();Object.defineProperty(Ige,"TargetFile",{enumerable:!0,get:function(){return SFl.TargetFile}});var vFl=Gzr();Object.defineProperty(Ige,"BaseFetcher",{enumerable:!0,get:function(){return vFl.BaseFetcher}});var BFl=Rbs();Object.defineProperty(Ige,"Updater",{enumerable:!0,get:function(){return BFl.Updater}})});var Pzr=H(M9t=>{"use strict";Object.defineProperty(M9t,"__esModule",{value:!0});M9t.TUFError=void 0;var Ozr=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}};M9t.TUFError=Ozr});var Dbs=H(lqe=>{"use strict";var wFl=lqe&&lqe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(lqe,"__esModule",{value:!0});lqe.readTarget=RFl;var TFl=wFl(Et("fs")),H9t=Pzr();async function RFl(e,t){let r=await NFl(e,t);return new Promise((n,a)=>{TFl.default.readFile(r,"utf-8",(o,l)=>{o?a(new H9t.TUFError({code:"TUF_READ_TARGET_ERROR",message:`error reading target ${r}`,cause:o})):n(l)})})}async function NFl(e,t){let r;try{r=await e.getTargetInfo(t)}catch(a){throw new H9t.TUFError({code:"TUF_REFRESH_METADATA_ERROR",message:"error refreshing TUF metadata",cause:a})}if(!r)throw new H9t.TUFError({code:"TUF_FIND_TARGET_ERROR",message:`target ${t} not found`});let n=await e.findCachedTarget(r);if(!n)try{n=await e.downloadTarget(r)}catch(a){throw new H9t.TUFError({code:"TUF_DOWNLOAD_TARGET_ERROR",message:`error downloading target ${n}`,cause:a})}return n}});var kbs=H((Fig,DFl)=>{DFl.exports={"https://tuf-repo-cdn.sigstore.dev":{"root.json":"ewogInNpZ25hdHVyZXMiOiBbCiAgewogICAia2V5aWQiOiAiNmYyNjAwODlkNTkyM2RhZjIwMTY2Y2E2NTdjNTQzYWY2MTgzNDZhYjk3MTg4NGE5OTk2MmIwMTk4OGJiZTBjMyIsCiAgICJzaWciOiAiIgogIH0sCiAgewogICAia2V5aWQiOiAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICJzaWciOiAiMzA0NTAyMjEwMGIwYmNmMTg5Y2UxYjkzZTdkYjk2NDlkNWJlNTEyYTE4ODBjMGUzNTg4NzBlMzkzM2U0MjZjNWFmYjhhNDA2MTAwMjIwNmQyMTRiZDc5YjA5ZjQ1OGNjYzUyMWEyOTBhYTk2MGM0MTcwMTRmYzE2ZTYwNmY4MjA5MWI1ZTMxODE0ODg2YSIKICB9LAogIHsKICAgImtleWlkIjogIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAic2lnIjogIiIKICB9LAogIHsKICAgImtleWlkIjogIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAic2lnIjogIjMwNDUwMjIxMDBhOWI5ZTI5NGVjMjFiNjJkZmNhNmExNmExOWQwODQxODJjMTI1NzJlMzNkOWM0ZGNhYjUzMTdmYTFlOGE0NTlkMDIyMDY5ZjY4ZTU1ZWExZjk1YzVhMzY3YWFjN2E2MWE2NTc1N2Y5M2RhNWEwMDZhNWY0ZDFjZjk5NWJlODEyZDc2MDIiCiAgfSwKICB7CiAgICJrZXlpZCI6ICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIiwKICAgInNpZyI6ICIzMDQ0MDIyMDc4MTE3OGVjMzkxNWNiMTZhY2E3NTdkNDBlMjg0MzVhYzUzNzhkNmI0ODdhY2IxMTFkMWVlYjMzOTM5N2Y3OWEwMjIwNzgxY2NlNDhhZTQ2ZjllNDdiOTdhODQxNGZjZjQ2NmE5ODY3MjZhNTg5NmM3MmEwZTRhYmEzMTYyY2I4MjZkZCIKICB9CiBdLAogInNpZ25lZCI6IHsKICAiX3R5cGUiOiAicm9vdCIsCiAgImNvbnNpc3RlbnRfc25hcHNob3QiOiB0cnVlLAogICJleHBpcmVzIjogIjIwMjUtMDgtMTlUMTQ6MzM6MDlaIiwKICAia2V5cyI6IHsKICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVXUmlHcjUraiszSjVTc0grWnRyNW5FMkgyd083XG5CVituTzNzOTNnTGNhMThxVE96SFkxb1d5QUdEeWtNU3NHVFVCU3Q5RCtBbjBLZktzRDJtZlNNNDJRPT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2ktb25saW5lLXVyaSI6ICJnY3BrbXM6cHJvamVjdHMvc2lnc3RvcmUtcm9vdC1zaWduaW5nL2xvY2F0aW9ucy9nbG9iYWwva2V5UmluZ3Mvcm9vdC9jcnlwdG9LZXlzL3RpbWVzdGFtcC9jcnlwdG9LZXlWZXJzaW9ucy8xIgogICB9LAogICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiI6IHsKICAgICJrZXlpZF9oYXNoX2FsZ29yaXRobXMiOiBbCiAgICAgInNoYTI1NiIsCiAgICAgInNoYTUxMiIKICAgIF0sCiAgICAia2V5dHlwZSI6ICJlY2RzYSIsCiAgICAia2V5dmFsIjogewogICAgICJwdWJsaWMiOiAiLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS1cbk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRXpCelZPbUhDUG9qTVZMU0kzNjRXaWlWOE5QckRcbjZJZ1J4Vmxpc2t6L3YreTNKRVI1bWNWR2NPTmxpRGNXTUM1SjJsZkhtalBOUGhiNEg3eG04THpmU0E9PVxuLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tXG4iCiAgICB9LAogICAgInNjaGVtZSI6ICJlY2RzYS1zaGEyLW5pc3RwMjU2IiwKICAgICJ4LXR1Zi1vbi1jaS1rZXlvd25lciI6ICJAc2FudGlhZ290b3JyZXMiCiAgIH0sCiAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaW5pa1NzQVFtWWtOZUg1ZVlxL0NuSXpMYWFjT1xueGxTYWF3UURPd3FLeS90Q3F4cTV4eFBTSmMyMUs0V0loczlHeU9rS2Z6dWVZM0dJTHpjTUpaNGNXdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBib2JjYWxsYXdheSIKICAgfSwKICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUV5OFhLc21oQllESThKYzBHd3pCeGVLYXgwY201XG5TVEtFVTY1SFBGdW5VbjQxc1Q4cGkwRmpNNElrSHovWVVtd21MVU8wV3Q3bHhoajZCa0xJSzRxWUF3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQGRsb3JlbmMiCiAgIH0sCiAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFMGdocmg5Mkx3MVlyM2lkR1Y1V3FDdE1EQjhDeFxuK0Q4aGRDNHcyWkxOSXBsVlJvVkdMc2tZYTNnaGVNeU9qaUo4a1BpMTVhUTIvLzdQK29qN1V2SlBHdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBqb3NodWFnbCIKICAgfSwKICAgImU3MWE1NGQ1NDM4MzViYTg2YWRhZDk0NjAzNzljNzY0MWZiODcyNmQxNjRlYTc2NjgwMWExYzUyMmFiYTdlYTIiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVFWHN6M1NaWEZiOGpNVjQyajZwSmx5amJqUjhLXG5OM0J3b2NleHE2TE1JYjVxc1dLT1F2TE4xNk5VZWZMYzRIc3dPb3VtUnNWVmFhalNwUVM2Zm9ia1J3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQG1ubTY3OCIKICAgfQogIH0sCiAgInJvbGVzIjogewogICAicm9vdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiLAogICAgICJlNzFhNTRkNTQzODM1YmE4NmFkYWQ5NDYwMzc5Yzc2NDFmYjg3MjZkMTY0ZWE3NjY4MDFhMWM1MjJhYmE3ZWEyIiwKICAgICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiIsCiAgICAgIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIgogICAgXSwKICAgICJ0aHJlc2hvbGQiOiAzCiAgIH0sCiAgICJzbmFwc2hvdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiCiAgICBdLAogICAgInRocmVzaG9sZCI6IDEsCiAgICAieC10dWYtb24tY2ktZXhwaXJ5LXBlcmlvZCI6IDM2NTAsCiAgICAieC10dWYtb24tY2ktc2lnbmluZy1wZXJpb2QiOiAzNjUKICAgfSwKICAgInRhcmdldHMiOiB7CiAgICAia2V5aWRzIjogWwogICAgICI2ZjI2MDA4OWQ1OTIzZGFmMjAxNjZjYTY1N2M1NDNhZjYxODM0NmFiOTcxODg0YTk5OTYyYjAxOTg4YmJlMGMzIiwKICAgICAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICAgIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIiwKICAgICAiYTY4N2U1YmY0ZmFiODJiMGVlNThkNDZlMDVjOTUzNTE0NWEyYzlhZmI0NThmNDNkNDJiNDVjYTBmZGNlMmE3MCIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMwogICB9LAogICAidGltZXN0YW1wIjogewogICAgImtleWlkcyI6IFsKICAgICAiMGM4NzQzMmMzYmYwOWZkOTkxODlmZGMzMmZhNWVhZWRmNGU0YTVmYWM3YmFiNzNmYTA0YTJlMGZjNjRhZjZmNSIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMSwKICAgICJ4LXR1Zi1vbi1jaS1leHBpcnktcGVyaW9kIjogNywKICAgICJ4LXR1Zi1vbi1jaS1zaWduaW5nLXBlcmlvZCI6IDYKICAgfQogIH0sCiAgInNwZWNfdmVyc2lvbiI6ICIxLjAiLAogICJ2ZXJzaW9uIjogMTIsCiAgIngtdHVmLW9uLWNpLWV4cGlyeS1wZXJpb2QiOiAxOTcsCiAgIngtdHVmLW9uLWNpLXNpZ25pbmctcGVyaW9kIjogNDYKIH0KfQ==",targets:{"trusted_root.json":"ewogICJtZWRpYVR5cGUiOiAiYXBwbGljYXRpb24vdm5kLmRldi5zaWdzdG9yZS50cnVzdGVkcm9vdCtqc29uO3ZlcnNpb249MC4xIiwKICAidGxvZ3MiOiBbCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vcmVrb3Iuc2lnc3RvcmUuZGV2IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUyRzJZKzJ0YWJkVFY1QmNHaUJJeDBhOWZBRndya0JibUxTR3RrczRMM3FYNnlZWTB6dWZCbmhDOFVyL2l5NTVHaFdQLzlBL2JZMkxoQzMwTTkrUll0dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDEtMTJUMTE6NTM6MjcuMDAwWiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAid05JOWF0UUdseitWV2ZPNkxSeWdINFFVZlkvOFc0UkZ3aVQ1aTVXUmdCMD0iCiAgICAgIH0KICAgIH0KICBdLAogICJjZXJ0aWZpY2F0ZUF1dGhvcml0aWVzIjogWwogICAgewogICAgICAic3ViamVjdCI6IHsKICAgICAgICAib3JnYW5pemF0aW9uIjogInNpZ3N0b3JlLmRldiIsCiAgICAgICAgImNvbW1vbk5hbWUiOiAic2lnc3RvcmUiCiAgICAgIH0sCiAgICAgICJ1cmkiOiAiaHR0cHM6Ly9mdWxjaW8uc2lnc3RvcmUuZGV2IiwKICAgICAgImNlcnRDaGFpbiI6IHsKICAgICAgICAiY2VydGlmaWNhdGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAicmF3Qnl0ZXMiOiAiTUlJQitEQ0NBWDZnQXdJQkFnSVROVmtEWm9DaW9mUERzeTdkZm02Z2VMYnVoekFLQmdncWhrak9QUVFEQXpBcU1SVXdFd1lEVlFRS0V3eHphV2R6ZEc5eVpTNWtaWFl4RVRBUEJnTlZCQU1UQ0hOcFozTjBiM0psTUI0WERUSXhNRE13TnpBek1qQXlPVm9YRFRNeE1ESXlNekF6TWpBeU9Wb3dLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQjJNQkFHQnlxR1NNNDlBZ0VHQlN1QkJBQWlBMklBQkxTeUE3SWk1aytwTk84WkVXWTB5bGVtV0Rvd09rTmEza0wrR1pFNVo1R1dlaEw5L0E5YlJOQTNSYnJzWjVpMEpjYXN0YVJMN1NwNWZwL2pENWR4cWMvVWRUVm5sdlMxNmFuKzJZZnN3ZS9RdUxvbFJVQ3JjT0UyKzJpQTUrdHpkNk5tTUdRd0RnWURWUjBQQVFIL0JBUURBZ0VHTUJJR0ExVWRFd0VCL3dRSU1BWUJBZjhDQVFFd0hRWURWUjBPQkJZRUZNakZIUUJCbWlRcE1sRWs2dzJ1U3UxS0J0UHNNQjhHQTFVZEl3UVlNQmFBRk1qRkhRQkJtaVFwTWxFazZ3MnVTdTFLQnRQc01Bb0dDQ3FHU000OUJBTURBMmdBTUdVQ01IOGxpV0pmTXVpNnZYWEJoakRnWTRNd3NsbU4vVEp4VmUvODNXckZvbXdtTmYwNTZ5MVg0OEY5YzRtM2Ezb3pYQUl4QUtqUmF5NS9hai9qc0tLR0lrbVFhdGpJOHV1cEhyLytDeEZ2YUpXbXBZcU5rTERHUlUrOW9yemg1aEkyUnJjdWFRPT0iCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMDdUMDM6MjA6MjkuMDAwWiIsCiAgICAgICAgImVuZCI6ICIyMDIyLTEyLTMxVDIzOjU5OjU5Ljk5OVoiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJzdWJqZWN0IjogewogICAgICAgICJvcmdhbml6YXRpb24iOiAic2lnc3RvcmUuZGV2IiwKICAgICAgICAiY29tbW9uTmFtZSI6ICJzaWdzdG9yZSIKICAgICAgfSwKICAgICAgInVyaSI6ICJodHRwczovL2Z1bGNpby5zaWdzdG9yZS5kZXYiLAogICAgICAiY2VydENoYWluIjogewogICAgICAgICJjZXJ0aWZpY2F0ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNSUlDR2pDQ0FhR2dBd0lCQWdJVUFMblZpVmZuVTBickphc21Sa0hybi9VbmZhUXdDZ1lJS29aSXpqMEVBd013S2pFVk1CTUdBMVVFQ2hNTWMybG5jM1J2Y21VdVpHVjJNUkV3RHdZRFZRUURFd2h6YVdkemRHOXlaVEFlRncweU1qQTBNVE15TURBMk1UVmFGdzB6TVRFd01EVXhNelUyTlRoYU1EY3hGVEFUQmdOVkJBb1RESE5wWjNOMGIzSmxMbVJsZGpFZU1Cd0dBMVVFQXhNVmMybG5jM1J2Y21VdGFXNTBaWEp0WldScFlYUmxNSFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0lEWWdBRThSVlMveXNIK05PdnVEWnlQSVp0aWxnVUY5TmxhcllwQWQ5SFAxdkJCSDFVNUNWNzdMU1M3czBaaUg0bkU3SHY3cHRTNkx2dlIvU1RrNzk4TFZnTXpMbEo0SGVJZkYzdEhTYWV4TGNZcFNBU3Ixa1MwTi9SZ0JKei85aldDaVhubzNzd2VUQU9CZ05WSFE4QkFmOEVCQU1DQVFZd0V3WURWUjBsQkF3d0NnWUlLd1lCQlFVSEF3TXdFZ1lEVlIwVEFRSC9CQWd3QmdFQi93SUJBREFkQmdOVkhRNEVGZ1FVMzlQcHoxWWtFWmI1cU5qcEtGV2l4aTRZWkQ4d0h3WURWUjBqQkJnd0ZvQVVXTUFlWDVGRnBXYXBlc3lRb1pNaTBDckZ4Zm93Q2dZSUtvWkl6ajBFQXdNRFp3QXdaQUl3UENzUUs0RFlpWllEUElhRGk1SEZLbmZ4WHg2QVNTVm1FUmZzeW5ZQmlYMlg2U0pSblpVODQvOURaZG5GdnZ4bUFqQk90NlFwQmxjNEovMER4dmtUQ3FwY2x2emlMNkJDQ1BuamRsSUIzUHUzQnhzUG15Z1VZN0lpMnpiZENkbGlpb3c9IgogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgInJhd0J5dGVzIjogIk1JSUI5ekNDQVh5Z0F3SUJBZ0lVQUxaTkFQRmR4SFB3amVEbG9Ed3lZQ2hBTy80d0NnWUlLb1pJemowRUF3TXdLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQWVGdzB5TVRFd01EY3hNelUyTlRsYUZ3MHpNVEV3TURVeE16VTJOVGhhTUNveEZUQVRCZ05WQkFvVERITnBaM04wYjNKbExtUmxkakVSTUE4R0ExVUVBeE1JYzJsbmMzUnZjbVV3ZGpBUUJnY3Foa2pPUFFJQkJnVXJnUVFBSWdOaUFBVDdYZUZUNHJiM1BRR3dTNElhanRMazMvT2xucGdhbmdhQmNsWXBzWUJyNWkrNHluQjA3Y2ViM0xQME9JT1pkeGV4WDY5YzVpVnV5SlJRK0h6MDV5aStVRjN1QldBbEhwaVM1c2gwK0gyR0hFN1NYcmsxRUM1bTFUcjE5TDlnZzkyall6QmhNQTRHQTFVZER3RUIvd1FFQXdJQkJqQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01CMEdBMVVkRGdRV0JCUll3QjVma1VXbFpxbDZ6SkNoa3lMUUtzWEYrakFmQmdOVkhTTUVHREFXZ0JSWXdCNWZrVVdsWnFsNnpKQ2hreUxRS3NYRitqQUtCZ2dxaGtqT1BRUURBd05wQURCbUFqRUFqMW5IZVhacCsxM05XQk5hK0VEc0RQOEcxV1dnMXRDTVdQL1dIUHFwYVZvMGpoc3dlTkZaZ1NzMGVFN3dZSTRxQWpFQTJXQjlvdDk4c0lrb0YzdlpZZGQzL1Z0V0I1YjlUTk1lYTdJeC9zdEo1VGZjTExlQUJMRTRCTkpPc1E0dm5CSEoiCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjItMDQtMTNUMjA6MDY6MTUuMDAwWiIKICAgICAgfQogICAgfQogIF0sCiAgImN0bG9ncyI6IFsKICAgIHsKICAgICAgImJhc2VVcmwiOiAiaHR0cHM6Ly9jdGZlLnNpZ3N0b3JlLmRldi90ZXN0IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUViZndSK1JKdWRYc2NnUkJScEtYMVhGRHkzUHl1ZER4ei9TZm5SaTFmVDhla3BmQmQyTzF1b3o3anIzWjhuS3p4QTY5RVVRK2VGQ0ZJM3pldWJQV1U3dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMTRUMDA6MDA6MDAuMDAwWiIsCiAgICAgICAgICAiZW5kIjogIjIwMjItMTAtMzFUMjM6NTk6NTkuOTk5WiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAiQ0dDUzhDaFMvMmhGMGRGcko0U2NSV2NZckJZOXd6alNiZWE4SWdZMmIzST0iCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vY3RmZS5zaWdzdG9yZS5kZXYvMjAyMiIsCiAgICAgICJoYXNoQWxnb3JpdGhtIjogIlNIQTJfMjU2IiwKICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAicmF3Qnl0ZXMiOiAiTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaVBTbEZpMENtRlRmRWpDVXFGOUh1Q0VjWVhOS0FhWWFsSUptQlo4eXllelBqVHFoeHJLQnBNbmFvY1Z0TEpCSTFlTTN1WG5RelFHQUpkSjRnczlGeXc9PSIsCiAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICJzdGFydCI6ICIyMDIyLTEwLTIwVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgfQogICAgICB9LAogICAgICAibG9nSWQiOiB7CiAgICAgICAgImtleUlkIjogIjNUMHdhc2JIRVRKakdSNGNtV2MzQXFKS1hyamVQSzMvaDRweWdDOHA3bzQ9IgogICAgICB9CiAgICB9CiAgXQp9Cg==","registry.npmjs.org%2Fkeys.json":"ewogICAgImtleXMiOiBbCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OmpsM2J3c3d1ODBQampva0NnaDBvMnc1YzJVNExoUUFFNTdnajljejFrekEiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTFPbGIzek1BRkZ4WEtIaUlrUU81Y0ozWWhsNWk2VVBwK0lodXRlQkpidUhjQTVVb2dLbzBFV3RsV3dXNktTYUtvVE5FWUw3SmxDUWlWbmtoQmt0VWdnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIxOTk5LTAxLTAxVDAwOjAwOjAwLjAwMFoiLAogICAgICAgICAgICAgICAgICAgICJlbmQiOiAiMjAyNS0wMS0yOVQwMDowMDowMC4wMDBaIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgICJrZXlJZCI6ICJTSEEyNTY6amwzYndzd3U4MFBqam9rQ2doMG8ydzVjMlU0TGhRQUU1N2dqOWN6MWt6QSIsCiAgICAgICAgICAgICJrZXlVc2FnZSI6ICJucG06YXR0ZXN0YXRpb25zIiwKICAgICAgICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUxT2xiM3pNQUZGeFhLSGlJa1FPNWNKM1lobDVpNlVQcCtJaHV0ZUJKYnVIY0E1VW9nS28wRVd0bFd3VzZLU2FLb1RORVlMN0psQ1FpVm5raEJrdFVnZz09IiwKICAgICAgICAgICAgICAgICJrZXlEZXRhaWxzIjogIlBLSVhfRUNEU0FfUDI1Nl9TSEFfMjU2IiwKICAgICAgICAgICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICAgICAgICAgICAic3RhcnQiOiAiMjAyMi0xMi0wMVQwMDowMDowMC4wMDBaIiwKICAgICAgICAgICAgICAgICAgICAiZW5kIjogIjIwMjUtMDEtMjlUMDA6MDA6MDAuMDAwWiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OkRoUTh3UjVBUEJ2RkhMRi8rVGMrQVl2UE9kVHBjSURxT2h4c0JIUndDN1UiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICAgImtleUlkIjogIlNIQTI1NjpEaFE4d1I1QVBCdkZITEYvK1RjK0FZdlBPZFRwY0lEcU9oeHNCSFJ3QzdVIiwKICAgICAgICAgICAgImtleVVzYWdlIjogIm5wbTphdHRlc3RhdGlvbnMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICBdCn0K"}}}});var Gbs=H(rZe=>{"use strict";var xbs=rZe&&rZe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(rZe,"__esModule",{value:!0});rZe.TUFClient=void 0;var hge=xbs(Et("fs")),uqe=xbs(Et("path")),kFl=Nbs(),xFl=Y9t(),GFl=Dbs(),Hzr="targets",Mzr=class{constructor(t){let r=new URL(t.mirrorURL),n=encodeURIComponent(r.host+r.pathname.replace(/\/$/,"")),a=uqe.default.join(t.cachePath,n);FFl(a),ZFl({cachePath:a,mirrorURL:t.mirrorURL,tufRootPath:t.rootPath,forceInit:t.forceInit}),this.updater=LFl({mirrorURL:t.mirrorURL,cachePath:a,forceCache:t.forceCache,retry:t.retry,timeout:t.timeout})}async refresh(){return this.updater.refresh()}getTarget(t){return(0,GFl.readTarget)(this.updater,t)}};rZe.TUFClient=Mzr;function FFl(e){let t=uqe.default.join(e,Hzr);hge.default.existsSync(e)||hge.default.mkdirSync(e,{recursive:!0}),hge.default.existsSync(t)||hge.default.mkdirSync(t)}function ZFl({cachePath:e,mirrorURL:t,tufRootPath:r,forceInit:n}){let a=uqe.default.join(e,"root.json");if(!hge.default.existsSync(a)||n)if(r)hge.default.copyFileSync(r,a);else{let l=kbs()[t];if(!l)throw new xFl.TUFError({code:"TUF_INIT_CACHE_ERROR",message:`No root.json found for mirror: ${t}`});hge.default.writeFileSync(a,Buffer.from(l["root.json"],"base64")),Object.entries(l.targets).forEach(([A,f])=>{hge.default.writeFileSync(uqe.default.join(e,Hzr,A),Buffer.from(f,"base64"))})}}function LFl(e){let t={fetchTimeout:e.timeout,fetchRetry:e.retry};return new kFl.Updater({metadataBaseUrl:e.mirrorURL,targetBaseUrl:`${e.mirrorURL}/targets`,metadataDir:e.cachePath,targetDir:uqe.default.join(e.cachePath,Hzr),forceCache:e.forceCache,config:t})}});var Y9t=H(wre=>{"use strict";Object.defineProperty(wre,"__esModule",{value:!0});wre.TUFError=wre.DEFAULT_MIRROR_URL=void 0;wre.getTrustedRoot=QFl;wre.initTUF=XFl;var VFl=Y7e(),WFl=Cys(),OFl=Gbs();wre.DEFAULT_MIRROR_URL="https://tuf-repo-cdn.sigstore.dev";var PFl="sigstore-js",MFl={retries:2},HFl=5e3,YFl="trusted_root.json";async function QFl(e={}){let r=await Fbs(e).getTarget(YFl);return VFl.TrustedRoot.fromJSON(JSON.parse(r))}async function XFl(e={}){let t=Fbs(e);return t.refresh().then(()=>t)}function Fbs(e){return new OFl.TUFClient({cachePath:e.cachePath||(0,WFl.appDataPath)(PFl),rootPath:e.rootPath,mirrorURL:e.mirrorURL||wre.DEFAULT_MIRROR_URL,retry:e.retry??MFl,timeout:e.timeout??HFl,forceCache:e.forceCache??!1,forceInit:e.forceInit??e.force??!1})}var JFl=Pzr();Object.defineProperty(wre,"TUFError",{enumerable:!0,get:function(){return JFl.TUFError}})});var Zbs=H(Q9t=>{"use strict";Object.defineProperty(Q9t,"__esModule",{value:!0});Q9t.DSSESignatureContent=void 0;var gqe=iW(),Yzr=class{constructor(t){this.env=t}compareDigest(t){return gqe.crypto.bufferEqual(t,gqe.crypto.digest("sha256",this.env.payload))}compareSignature(t){return gqe.crypto.bufferEqual(t,this.signature)}verifySignature(t){return gqe.crypto.verify(this.preAuthEncoding,t,this.signature)}get signature(){return this.env.signatures.length>0?this.env.signatures[0].sig:Buffer.from("")}get preAuthEncoding(){return gqe.dsse.preAuthEncoding(this.env.payloadType,this.env.payload)}};Q9t.DSSESignatureContent=Yzr});var Lbs=H(X9t=>{"use strict";Object.defineProperty(X9t,"__esModule",{value:!0});X9t.MessageSignatureContent=void 0;var Qzr=iW(),Xzr=class{constructor(t,r){this.signature=t.signature,this.messageDigest=t.messageDigest.digest,this.artifact=r}compareSignature(t){return Qzr.crypto.bufferEqual(t,this.signature)}compareDigest(t){return Qzr.crypto.bufferEqual(t,this.messageDigest)}verifySignature(t){return Qzr.crypto.verify(this.artifact,t,this.signature)}};X9t.MessageSignatureContent=Xzr});var Wbs=H(J9t=>{"use strict";Object.defineProperty(J9t,"__esModule",{value:!0});J9t.toSignedEntity=jFl;J9t.signatureContent=Vbs;var Jzr=iW(),UFl=Zbs(),KFl=Lbs();function jFl(e,t){let{tlogEntries:r,timestampVerificationData:n}=e.verificationMaterial,a=[];for(let o of r)a.push({$case:"transparency-log",tlogEntry:o});for(let o of n?.rfc3161Timestamps??[])a.push({$case:"timestamp-authority",timestamp:Jzr.RFC3161Timestamp.parse(o.signedTimestamp)});return{signature:Vbs(e,t),key:zFl(e),tlogEntries:r,timestamps:a}}function Vbs(e,t){switch(e.content.$case){case"dsseEnvelope":return new UFl.DSSESignatureContent(e.content.dsseEnvelope);case"messageSignature":return new KFl.MessageSignatureContent(e.content.messageSignature,t)}}function zFl(e){switch(e.verificationMaterial.content.$case){case"publicKey":return{$case:"public-key",hint:e.verificationMaterial.content.publicKey.hint};case"x509CertificateChain":return{$case:"certificate",certificate:Jzr.X509Certificate.parse(e.verificationMaterial.content.x509CertificateChain.certificates[0].rawBytes)};case"certificate":return{$case:"certificate",certificate:Jzr.X509Certificate.parse(e.verificationMaterial.content.certificate.rawBytes)}}}});var yx=H(nZe=>{"use strict";Object.defineProperty(nZe,"__esModule",{value:!0});nZe.PolicyError=nZe.VerificationError=void 0;var U9t=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}},Uzr=class extends U9t{};nZe.VerificationError=Uzr;var Kzr=class extends U9t{};nZe.PolicyError=Kzr});var Obs=H(K9t=>{"use strict";Object.defineProperty(K9t,"__esModule",{value:!0});K9t.filterCertAuthorities=qFl;K9t.filterTLogAuthorities=$Fl;function qFl(e,t){return e.filter(r=>r.validFor.start<=t&&r.validFor.end>=t)}function $Fl(e,t){return e.filter(r=>t.logID&&!r.logID.equals(t.logID)?!1:r.validFor.start<=t.targetDate&&t.targetDate<=r.validFor.end)}});var Iye=H(fye=>{"use strict";Object.defineProperty(fye,"__esModule",{value:!0});fye.filterTLogAuthorities=fye.filterCertAuthorities=void 0;fye.toTrustMaterial=tZl;var jzr=iW(),Aqe=Y7e(),eZl=yx(),zzr=new Date(0),qzr=new Date(864e13),Hbs=Obs();Object.defineProperty(fye,"filterCertAuthorities",{enumerable:!0,get:function(){return Hbs.filterCertAuthorities}});Object.defineProperty(fye,"filterTLogAuthorities",{enumerable:!0,get:function(){return Hbs.filterTLogAuthorities}});function tZl(e,t){let r=typeof t=="function"?t:rZl(t);return{certificateAuthorities:e.certificateAuthorities.map(Mbs),timestampAuthorities:e.timestampAuthorities.map(Mbs),tlogs:e.tlogs.map(Pbs),ctlogs:e.ctlogs.map(Pbs),publicKey:r}}function Pbs(e){let t=e.publicKey.keyDetails,r=t===Aqe.PublicKeyDetails.PKCS1_RSA_PKCS1V5||t===Aqe.PublicKeyDetails.PKIX_RSA_PKCS1V5||t===Aqe.PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256||t===Aqe.PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256||t===Aqe.PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256?"pkcs1":"spki";return{logID:e.logId.keyId,publicKey:jzr.crypto.createPublicKey(e.publicKey.rawBytes,r),validFor:{start:e.publicKey.validFor?.start||zzr,end:e.publicKey.validFor?.end||qzr}}}function Mbs(e){return{certChain:e.certChain.certificates.map(t=>jzr.X509Certificate.parse(t.rawBytes)),validFor:{start:e.validFor?.start||zzr,end:e.validFor?.end||qzr}}}function rZl(e){return t=>{let r=(e||{})[t];if(!r)throw new eZl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:jzr.crypto.createPublicKey(r.rawBytes),validFor:n=>(r.validFor?.start||zzr)<=n&&(r.validFor?.end||qzr)>=n}}}});var $zr=H(dqe=>{"use strict";Object.defineProperty(dqe,"__esModule",{value:!0});dqe.CertificateChainVerifier=void 0;dqe.verifyCertificateChain=iZl;var mge=yx(),nZl=Iye();function iZl(e,t,r){let n=(0,nZl.filterCertAuthorities)(r,e),a;for(let o of n)try{return new j9t({trustedCerts:o.certChain,untrustedCert:t,timestamp:e}).verify()}catch(l){a=l}throw new mge.VerificationError({code:"CERTIFICATE_ERROR",message:"Failed to verify certificate chain",cause:a})}var j9t=class{constructor(t){this.untrustedCert=t.untrustedCert,this.trustedCerts=t.trustedCerts,this.localCerts=sZl([...t.trustedCerts,t.untrustedCert]),this.timestamp=t.timestamp}verify(){let t=this.sort();if(this.checkPath(t),!t.every(n=>n.validForDate(this.timestamp)))throw new mge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate is not valid or expired at the specified date"});return t}sort(){let t=this.untrustedCert,r=this.buildPaths(t);if(r=r.filter(a=>a.some(o=>this.trustedCerts.includes(o))),r.length===0)throw new mge.VerificationError({code:"CERTIFICATE_ERROR",message:"no trusted certificate path found"});let n=r.reduce((a,o)=>a.length{if(n&&a.extSubjectKeyID){a.extSubjectKeyID.keyIdentifier.equals(n)&&r.push(a);return}a.subject.equals(t.issuer)&&r.push(a)}),r=r.filter(a=>{try{return t.verify(a)}catch{return!1}}),r)}checkPath(t){if(t.length<1)throw new mge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate chain must contain at least one certificate"});if(!t.slice(1).every(n=>n.isCA))throw new mge.VerificationError({code:"CERTIFICATE_ERROR",message:"intermediate certificate is not a CA"});for(let n=t.length-2;n>=0;n--)if(!t[n].issuer.equals(t[n+1].subject))throw new mge.VerificationError({code:"CERTIFICATE_ERROR",message:"incorrect certificate name chaining"});for(let n=0;n{"use strict";Object.defineProperty(eqr,"__esModule",{value:!0});eqr.verifySCTs=cZl;var z9t=iW(),oZl=yx(),aZl=Iye();function cZl(e,t,r){let n,a=e.clone();for(let f=0;f{if(!(0,aZl.filterTLogAuthorities)(r,{logID:f.logID,targetDate:f.datetime}).some(b=>f.verify(o.buffer,b.publicKey)))throw new oZl.VerificationError({code:"CERTIFICATE_ERROR",message:"SCT verification failed"});return f.logID})}});var Qbs=H(q9t=>{"use strict";Object.defineProperty(q9t,"__esModule",{value:!0});q9t.verifyPublicKey=fZl;q9t.verifyCertificate=IZl;var lZl=iW(),uZl=yx(),gZl=$zr(),AZl=Ybs(),dZl="1.3.6.1.4.1.57264.1.1",pZl="1.3.6.1.4.1.57264.1.8";function fZl(e,t,r){let n=r.publicKey(e);return t.forEach(a=>{if(!n.validFor(a))throw new uZl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`Public key is not valid for timestamp: ${a.toISOString()}`})}),{key:n.publicKey}}function IZl(e,t,r){let n=[];return t.forEach(a=>{n=(0,gZl.verifyCertificateChain)(a,e,r.certificateAuthorities)}),{scts:(0,AZl.verifySCTs)(n[0],n[1],r.ctlogs),signer:hZl(n[0])}}function hZl(e){let t,r=e.extension(pZl);r?t=r.valueObj.subs?.[0]?.value.toString("ascii"):t=e.extension(dZl)?.value.toString("ascii");let n={extensions:{issuer:t},subjectAlternativeName:e.subjectAltName};return{key:lZl.crypto.createPublicKey(e.publicKey),identity:n}}});var Jbs=H($9t=>{"use strict";Object.defineProperty($9t,"__esModule",{value:!0});$9t.verifySubjectAlternativeName=mZl;$9t.verifyExtensions=CZl;var Xbs=yx();function mZl(e,t){if(t===void 0||!t.match(e))throw new Xbs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`certificate identity error - expected ${e}, got ${t}`})}function CZl(e,t={}){let r;for(r in e)if(t[r]!==e[r])throw new Xbs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`invalid certificate extension - expected ${r}=${e[r]}, got ${r}=${t[r]}`})}});var Ubs=H(sqr=>{"use strict";Object.defineProperty(sqr,"__esModule",{value:!0});sqr.verifyCheckpoint=bZl;var rqr=iW(),iZe=yx(),_Zl=Iye(),tqr=` - -`,yZl=/\u2014 (\S+) (\S+)\n/g;function bZl(e,t){let r=(0,_Zl.filterTLogAuthorities)(t,{targetDate:new Date(Number(e.integratedTime)*1e3)}),n=e.inclusionProof,a=nqr.fromString(n.checkpoint.envelope),o=iqr.fromString(a.note);if(!EZl(a,r))throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid checkpoint signature"});if(!rqr.crypto.bufferEqual(o.logHash,n.rootHash))throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"root hash mismatch"})}function EZl(e,t){let r=Buffer.from(e.note,"utf-8");return e.signatures.every(n=>{let a=t.find(o=>rqr.crypto.bufferEqual(o.logID.subarray(0,4),n.keyHint));return a?rqr.crypto.verify(r,a.publicKey,n.signature):!1})}var nqr=class e{constructor(t,r){this.note=t,this.signatures=r}static fromString(t){if(!t.includes(tqr))throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"missing checkpoint separator"});let r=t.indexOf(tqr),n=t.slice(0,r+1),o=t.slice(r+tqr.length).matchAll(yZl),l=Array.from(o,A=>{let[,f,I]=A,C=Buffer.from(I,"base64");if(C.length<5)throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"malformed checkpoint signature"});return{name:f,keyHint:C.subarray(0,4),signature:C.subarray(4)}});if(l.length===0)throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"no signatures found in checkpoint"});return new e(n,l)}},iqr=class e{constructor(t,r,n,a){this.origin=t,this.logSize=r,this.logHash=n,this.rest=a}static fromString(t){let r=t.trimEnd().split(` -`);if(r.length<3)throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"too few lines in checkpoint header"});let n=r[0],a=BigInt(r[1]),o=Buffer.from(r[2],"base64"),l=r.slice(3);return new e(n,a,o,l)}}});var Kbs=H(lqr=>{"use strict";Object.defineProperty(lqr,"__esModule",{value:!0});lqr.verifyMerkleInclusion=BZl;var cqr=iW(),oqr=yx(),SZl=Buffer.from([0]),vZl=Buffer.from([1]);function BZl(e){let t=e.inclusionProof,r=BigInt(t.logIndex),n=BigInt(t.treeSize);if(r<0n||r>=n)throw new oqr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:`invalid index: ${r}`});let{inner:a,border:o}=wZl(r,n);if(t.hashes.length!==a+o)throw new oqr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid hash count"});let l=t.hashes.slice(0,a),A=t.hashes.slice(a),f=xZl(e.canonicalizedBody),I=RZl(TZl(f,l,r),A);if(!cqr.crypto.bufferEqual(I,t.rootHash))throw new oqr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"calculated root hash does not match inclusion proof"})}function wZl(e,t){let r=NZl(e,t),n=DZl(e>>BigInt(r));return{inner:r,border:n}}function TZl(e,t,r){return t.reduce((n,a,o)=>r>>BigInt(o)&BigInt(1)?aqr(a,n):aqr(n,a),e)}function RZl(e,t){return t.reduce((r,n)=>aqr(n,r),e)}function NZl(e,t){return kZl(e^t-BigInt(1))}function DZl(e){return e.toString(2).split("1").length-1}function kZl(e){return e===0n?0:e.toString(2).length}function aqr(e,t){return cqr.crypto.digest("sha256",vZl,e,t)}function xZl(e){return cqr.crypto.digest("sha256",SZl,e)}});var zbs=H(uqr=>{"use strict";Object.defineProperty(uqr,"__esModule",{value:!0});uqr.verifyTLogSET=ZZl;var jbs=iW(),GZl=yx(),FZl=Iye();function ZZl(e,t){if(!(0,FZl.filterTLogAuthorities)(t,{logID:e.logId.keyId,targetDate:new Date(Number(e.integratedTime)*1e3)}).some(a=>{let o=LZl(e),l=Buffer.from(jbs.json.canonicalize(o),"utf8"),A=e.inclusionPromise.signedEntryTimestamp;return jbs.crypto.verify(l,a.publicKey,A)}))throw new GZl.VerificationError({code:"TLOG_INCLUSION_PROMISE_ERROR",message:"inclusion promise could not be verified"})}function LZl(e){let{integratedTime:t,logIndex:r,logId:n,canonicalizedBody:a}=e;return{body:a.toString("base64"),integratedTime:Number(t),logIndex:Number(r),logID:n.keyId.toString("hex")}}});var $bs=H(Aqr=>{"use strict";Object.defineProperty(Aqr,"__esModule",{value:!0});Aqr.verifyRFC3161Timestamp=OZl;var gqr=iW(),qbs=yx(),VZl=$zr(),WZl=Iye();function OZl(e,t,r){let n=e.signingTime;if(r=(0,WZl.filterCertAuthorities)(r,n),r=MZl(r,{serialNumber:e.signerSerialNumber,issuer:e.signerIssuer}),!r.some(o=>{try{return PZl(e,t,o),!0}catch{return!1}}))throw new qbs.VerificationError({code:"TIMESTAMP_ERROR",message:"timestamp could not be verified"})}function PZl(e,t,r){let[n,...a]=r.certChain,o=gqr.crypto.createPublicKey(n.publicKey),l=e.signingTime;try{new VZl.CertificateChainVerifier({untrustedCert:n,trustedCerts:a,timestamp:l}).verify()}catch{throw new qbs.VerificationError({code:"TIMESTAMP_ERROR",message:"invalid certificate chain"})}e.verify(t,o)}function MZl(e,t){return e.filter(r=>r.certChain.length>0&&gqr.crypto.bufferEqual(r.certChain[0].serialNumber,t.serialNumber)&&gqr.crypto.bufferEqual(r.certChain[0].issuer,t.issuer))}});var eEs=H(eVt=>{"use strict";Object.defineProperty(eVt,"__esModule",{value:!0});eVt.verifyTSATimestamp=UZl;eVt.verifyTLogTimestamp=KZl;var HZl=yx(),YZl=Ubs(),QZl=Kbs(),XZl=zbs(),JZl=$bs();function UZl(e,t,r){return(0,JZl.verifyRFC3161Timestamp)(e,t,r),{type:"timestamp-authority",logID:e.signerSerialNumber,timestamp:e.signingTime}}function KZl(e,t){let r=!1;if(jZl(e)&&((0,XZl.verifyTLogSET)(e,t),r=!0),zZl(e)&&((0,QZl.verifyMerkleInclusion)(e),(0,YZl.verifyCheckpoint)(e,t),r=!0),!r)throw new HZl.VerificationError({code:"TLOG_MISSING_INCLUSION_ERROR",message:"inclusion could not be verified"});return{type:"transparency-log",logID:e.logId.keyId,timestamp:new Date(Number(e.integratedTime)*1e3)}}function jZl(e){return e.inclusionPromise!==void 0}function zZl(e){return e.inclusionProof!==void 0}});var tEs=H(dqr=>{"use strict";Object.defineProperty(dqr,"__esModule",{value:!0});dqr.verifyDSSETLogBody=qZl;var tVt=yx();function qZl(e,t){switch(e.apiVersion){case"0.0.1":return $Zl(e,t);default:throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported dsse version: ${e.apiVersion}`})}}function $Zl(e,t){if(e.spec.signatures?.length!==1)throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=e.spec.signatures[0].signature;if(!t.compareSignature(Buffer.from(r,"base64")))throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}});var rEs=H(fqr=>{"use strict";Object.defineProperty(fqr,"__esModule",{value:!0});fqr.verifyHashedRekordTLogBody=eLl;var pqr=yx();function eLl(e,t){switch(e.apiVersion){case"0.0.1":return tLl(e,t);default:throw new pqr.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported hashedrekord version: ${e.apiVersion}`})}}function tLl(e,t){let r=e.spec.signature.content||"";if(!t.compareSignature(Buffer.from(r,"base64")))throw new pqr.VerificationError({code:"TLOG_BODY_ERROR",message:"signature mismatch"});let n=e.spec.data.hash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new pqr.VerificationError({code:"TLOG_BODY_ERROR",message:"digest mismatch"})}});var nEs=H(Iqr=>{"use strict";Object.defineProperty(Iqr,"__esModule",{value:!0});Iqr.verifyIntotoTLogBody=rLl;var rVt=yx();function rLl(e,t){switch(e.apiVersion){case"0.0.2":return nLl(e,t);default:throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported intoto version: ${e.apiVersion}`})}}function nLl(e,t){if(e.spec.content.envelope.signatures?.length!==1)throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=iLl(e.spec.content.envelope.signatures[0].sig);if(!t.compareSignature(Buffer.from(r,"base64")))throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.content.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}function iLl(e){return Buffer.from(e,"base64").toString("utf-8")}});var sEs=H(hqr=>{"use strict";Object.defineProperty(hqr,"__esModule",{value:!0});hqr.verifyTLogBody=cLl;var iEs=yx(),sLl=tEs(),oLl=rEs(),aLl=nEs();function cLl(e,t){let{kind:r,version:n}=e.kindVersion,a=JSON.parse(e.canonicalizedBody.toString("utf8"));if(r!==a.kind||n!==a.apiVersion)throw new iEs.VerificationError({code:"TLOG_BODY_ERROR",message:`kind/version mismatch - expected: ${r}/${n}, received: ${a.kind}/${a.apiVersion}`});switch(a.kind){case"dsse":return(0,sLl.verifyDSSETLogBody)(a,t);case"intoto":return(0,aLl.verifyIntotoTLogBody)(a,t);case"hashedrekord":return(0,oLl.verifyHashedRekordTLogBody)(a,t);default:throw new iEs.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported kind: ${r}`})}}});var uEs=H(nVt=>{"use strict";Object.defineProperty(nVt,"__esModule",{value:!0});nVt.Verifier=void 0;var lLl=Et("util"),sZe=yx(),oEs=Qbs(),aEs=Jbs(),cEs=eEs(),uLl=sEs(),mqr=class{constructor(t,r={}){this.trustMaterial=t,this.options={ctlogThreshold:r.ctlogThreshold??1,tlogThreshold:r.tlogThreshold??1,tsaThreshold:r.tsaThreshold??0}}verify(t,r){let n=this.verifyTimestamps(t),a=this.verifySigningKey(t,n);return this.verifyTLogs(t),this.verifySignature(t,a),r&&this.verifyPolicy(r,a.identity||{}),a}verifyTimestamps(t){let r=0,n=0,a=t.timestamps.map(o=>{switch(o.$case){case"timestamp-authority":return n++,(0,cEs.verifyTSATimestamp)(o.timestamp,t.signature.signature,this.trustMaterial.timestampAuthorities);case"transparency-log":return r++,(0,cEs.verifyTLogTimestamp)(o.tlogEntry,this.trustMaterial.tlogs)}});if(lEs(a))throw new sZe.VerificationError({code:"TIMESTAMP_ERROR",message:"duplicate timestamp"});if(ro.timestamp)}verifySigningKey({key:t},r){switch(t.$case){case"public-key":return(0,oEs.verifyPublicKey)(t.hint,r,this.trustMaterial);case"certificate":{let n=(0,oEs.verifyCertificate)(t.certificate,r,this.trustMaterial);if(lEs(n.scts))throw new sZe.VerificationError({code:"CERTIFICATE_ERROR",message:"duplicate SCT"});if(n.scts.length(0,uLl.verifyTLogBody)(n,t))}verifySignature(t,r){if(!t.signature.verifySignature(r.key))throw new sZe.VerificationError({code:"SIGNATURE_ERROR",message:"signature verification failed"})}verifyPolicy(t,r){t.subjectAlternativeName&&(0,aEs.verifySubjectAlternativeName)(t.subjectAlternativeName,r.subjectAlternativeName),t.extensions&&(0,aEs.verifyExtensions)(t.extensions,r.extensions)}};nVt.Verifier=mqr;function lEs(e){for(let t=0;t{"use strict";Object.defineProperty(uY,"__esModule",{value:!0});uY.Verifier=uY.toTrustMaterial=uY.VerificationError=uY.PolicyError=uY.toSignedEntity=void 0;var gLl=Wbs();Object.defineProperty(uY,"toSignedEntity",{enumerable:!0,get:function(){return gLl.toSignedEntity}});var gEs=yx();Object.defineProperty(uY,"PolicyError",{enumerable:!0,get:function(){return gEs.PolicyError}});Object.defineProperty(uY,"VerificationError",{enumerable:!0,get:function(){return gEs.VerificationError}});var ALl=Iye();Object.defineProperty(uY,"toTrustMaterial",{enumerable:!0,get:function(){return ALl.toTrustMaterial}});var dLl=uEs();Object.defineProperty(uY,"Verifier",{enumerable:!0,get:function(){return dLl.Verifier}})});var AEs=H(SL=>{"use strict";Object.defineProperty(SL,"__esModule",{value:!0});SL.DEFAULT_TIMEOUT=SL.DEFAULT_RETRY=void 0;SL.createBundleBuilder=ILl;SL.createKeyFinder=hLl;SL.createVerificationPolicy=mLl;var pLl=iW(),oZe=D7r(),fLl=iVt();SL.DEFAULT_RETRY={retries:2};SL.DEFAULT_TIMEOUT=5e3;function ILl(e,t){let r={signer:CLl(t),witnesses:yLl(t)};switch(e){case"messageSignature":return new oZe.MessageSignatureBundleBuilder(r);case"dsseEnvelope":return new oZe.DSSEBundleBuilder({...r,certificateChain:t.legacyCompatibility})}}function hLl(e){return t=>{let r=e(t);if(!r)throw new fLl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:pLl.crypto.createPublicKey(r),validFor:()=>!0}}}function mLl(e){let t={},r=e.certificateIdentityEmail||e.certificateIdentityURI;return r&&(t.subjectAlternativeName=r),e.certificateIssuer&&(t.extensions={issuer:e.certificateIssuer}),t}function CLl(e){return new oZe.FulcioSigner({fulcioBaseURL:e.fulcioURL,identityProvider:e.identityProvider||_Ll(e),retry:e.retry??SL.DEFAULT_RETRY,timeout:e.timeout??SL.DEFAULT_TIMEOUT})}function _Ll(e){let t=e.identityToken;return t?{getToken:()=>Promise.resolve(t)}:new oZe.CIContextProvider("sigstore")}function yLl(e){let t=[];return bLl(e)&&t.push(new oZe.RekorWitness({rekorBaseURL:e.rekorURL,entryType:e.legacyCompatibility?"intoto":"dsse",fetchOnConflict:!1,retry:e.retry??SL.DEFAULT_RETRY,timeout:e.timeout??SL.DEFAULT_TIMEOUT})),ELl(e)&&t.push(new oZe.TSAWitness({tsaBaseURL:e.tsaServerURL,retry:e.retry??SL.DEFAULT_RETRY,timeout:e.timeout??SL.DEFAULT_TIMEOUT})),t}function bLl(e){return e.tlogUpload!==!1}function ELl(e){return e.tsaServerURL!==void 0}});var fEs=H(gY=>{"use strict";var SLl=gY&&gY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),vLl=gY&&gY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),dEs=gY&&gY.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aa.verify(e,n))}async function pEs(e={}){let t=await BLl.getTrustedRoot({mirrorURL:e.tufMirrorURL,rootPath:e.tufRootPath,cachePath:e.tufCachePath,forceCache:e.tufForceCache,retry:e.retry??aZe.DEFAULT_RETRY,timeout:e.timeout??aZe.DEFAULT_TIMEOUT}),r=e.keySelector?aZe.createKeyFinder(e.keySelector):void 0,n=(0,Cqr.toTrustMaterial)(t,r),a={ctlogThreshold:e.ctLogThreshold,tlogThreshold:e.tlogThreshold},o=new Cqr.Verifier(n,a),l=aZe.createVerificationPolicy(e);return{verify:(A,f)=>{let I=(0,_qr.bundleFromJSON)(A),C=(0,Cqr.toSignedEntity)(I,f);o.verify(C,l)}}}});var hEs=H(Q2=>{"use strict";Object.defineProperty(Q2,"__esModule",{value:!0});Q2.verify=Q2.sign=Q2.createVerifier=Q2.attest=Q2.VerificationError=Q2.PolicyError=Q2.TUFError=Q2.InternalError=Q2.DEFAULT_REKOR_URL=Q2.DEFAULT_FULCIO_URL=Q2.ValidationError=void 0;var NLl=X7e();Object.defineProperty(Q2,"ValidationError",{enumerable:!0,get:function(){return NLl.ValidationError}});var yqr=D7r();Object.defineProperty(Q2,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return yqr.DEFAULT_FULCIO_URL}});Object.defineProperty(Q2,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return yqr.DEFAULT_REKOR_URL}});Object.defineProperty(Q2,"InternalError",{enumerable:!0,get:function(){return yqr.InternalError}});var DLl=Y9t();Object.defineProperty(Q2,"TUFError",{enumerable:!0,get:function(){return DLl.TUFError}});var IEs=iVt();Object.defineProperty(Q2,"PolicyError",{enumerable:!0,get:function(){return IEs.PolicyError}});Object.defineProperty(Q2,"VerificationError",{enumerable:!0,get:function(){return IEs.VerificationError}});var sVt=fEs();Object.defineProperty(Q2,"attest",{enumerable:!0,get:function(){return sVt.attest}});Object.defineProperty(Q2,"createVerifier",{enumerable:!0,get:function(){return sVt.createVerifier}});Object.defineProperty(Q2,"sign",{enumerable:!0,get:function(){return sVt.sign}});Object.defineProperty(Q2,"verify",{enumerable:!0,get:function(){return sVt.verify}})});var mEs=H(oVt=>{"use strict";Object.defineProperty(oVt,"__esModule",{value:!0});oVt.generateProvenance=void 0;var kLl=(Wa(),vi(Va)),cZe=mn(),xLl=kLl.__importStar(hEs()),{env:zc}=process,GLl="application/vnd.in-toto+json",FLl="https://in-toto.io/Statement/v0.1",ZLl="https://in-toto.io/Statement/v1",LLl="https://slsa.dev/provenance/v0.2",VLl="https://slsa.dev/provenance/v1",WLl="https://github.com/actions/runner",OLl="https://slsa-framework.github.io/github-actions-buildtypes/workflow/v1",PLl="https://github.com/npm/cli/gitlab",MLl="v0alpha1",HLl=async(e,t)=>{let r;if(zc.GITHUB_ACTIONS){if(!zc.ACTIONS_ID_TOKEN_REQUEST_URL)throw new cZe.ReportError(cZe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,'Provenance generation in GitHub Actions requires "write" access to the "id-token" permission');let n=(zc.GITHUB_WORKFLOW_REF||"").replace(`${zc.GITHUB_REPOSITORY}/`,""),a=n.indexOf("@"),o=n.slice(0,a),l=n.slice(a+1);r={_type:ZLl,subject:e,predicateType:VLl,predicate:{buildDefinition:{buildType:OLl,externalParameters:{workflow:{ref:l,repository:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}`,path:o}},internalParameters:{github:{event_name:zc.GITHUB_EVENT_NAME,repository_id:zc.GITHUB_REPOSITORY_ID,repository_owner_id:zc.GITHUB_REPOSITORY_OWNER_ID}},resolvedDependencies:[{uri:`git+${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}@${zc.GITHUB_REF}`,digest:{gitCommit:zc.GITHUB_SHA}}]},runDetails:{builder:{id:`${WLl}/${zc.RUNNER_ENVIRONMENT}`},metadata:{invocationId:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}/actions/runs/${zc.GITHUB_RUN_ID}/attempts/${zc.GITHUB_RUN_ATTEMPT}`}}}}}else if(zc.GITLAB_CI){if(!zc.SIGSTORE_ID_TOKEN)throw new cZe.ReportError(cZe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,`Provenance generation in GitLab CI requires "SIGSTORE_ID_TOKEN" with "sigstore" audience to be present in "id_tokens". For more info see: -https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html`);r={_type:FLl,subject:e,predicateType:LLl,predicate:{buildType:`${PLl}/${MLl}`,builder:{id:`${zc.CI_PROJECT_URL}/-/runners/${zc.CI_RUNNER_ID}`},invocation:{configSource:{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA},entryPoint:zc.CI_JOB_NAME},parameters:{CI:zc.CI,CI_API_GRAPHQL_URL:zc.CI_API_GRAPHQL_URL,CI_API_V4_URL:zc.CI_API_V4_URL,CI_BUILD_BEFORE_SHA:zc.CI_BUILD_BEFORE_SHA,CI_BUILD_ID:zc.CI_BUILD_ID,CI_BUILD_NAME:zc.CI_BUILD_NAME,CI_BUILD_REF:zc.CI_BUILD_REF,CI_BUILD_REF_NAME:zc.CI_BUILD_REF_NAME,CI_BUILD_REF_SLUG:zc.CI_BUILD_REF_SLUG,CI_BUILD_STAGE:zc.CI_BUILD_STAGE,CI_COMMIT_BEFORE_SHA:zc.CI_COMMIT_BEFORE_SHA,CI_COMMIT_BRANCH:zc.CI_COMMIT_BRANCH,CI_COMMIT_REF_NAME:zc.CI_COMMIT_REF_NAME,CI_COMMIT_REF_PROTECTED:zc.CI_COMMIT_REF_PROTECTED,CI_COMMIT_REF_SLUG:zc.CI_COMMIT_REF_SLUG,CI_COMMIT_SHA:zc.CI_COMMIT_SHA,CI_COMMIT_SHORT_SHA:zc.CI_COMMIT_SHORT_SHA,CI_COMMIT_TIMESTAMP:zc.CI_COMMIT_TIMESTAMP,CI_COMMIT_TITLE:zc.CI_COMMIT_TITLE,CI_CONFIG_PATH:zc.CI_CONFIG_PATH,CI_DEFAULT_BRANCH:zc.CI_DEFAULT_BRANCH,CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_SERVER:zc.CI_DEPENDENCY_PROXY_SERVER,CI_DEPENDENCY_PROXY_USER:zc.CI_DEPENDENCY_PROXY_USER,CI_JOB_ID:zc.CI_JOB_ID,CI_JOB_NAME:zc.CI_JOB_NAME,CI_JOB_NAME_SLUG:zc.CI_JOB_NAME_SLUG,CI_JOB_STAGE:zc.CI_JOB_STAGE,CI_JOB_STARTED_AT:zc.CI_JOB_STARTED_AT,CI_JOB_URL:zc.CI_JOB_URL,CI_NODE_TOTAL:zc.CI_NODE_TOTAL,CI_PAGES_DOMAIN:zc.CI_PAGES_DOMAIN,CI_PAGES_URL:zc.CI_PAGES_URL,CI_PIPELINE_CREATED_AT:zc.CI_PIPELINE_CREATED_AT,CI_PIPELINE_ID:zc.CI_PIPELINE_ID,CI_PIPELINE_IID:zc.CI_PIPELINE_IID,CI_PIPELINE_SOURCE:zc.CI_PIPELINE_SOURCE,CI_PIPELINE_URL:zc.CI_PIPELINE_URL,CI_PROJECT_CLASSIFICATION_LABEL:zc.CI_PROJECT_CLASSIFICATION_LABEL,CI_PROJECT_DESCRIPTION:zc.CI_PROJECT_DESCRIPTION,CI_PROJECT_ID:zc.CI_PROJECT_ID,CI_PROJECT_NAME:zc.CI_PROJECT_NAME,CI_PROJECT_NAMESPACE:zc.CI_PROJECT_NAMESPACE,CI_PROJECT_NAMESPACE_ID:zc.CI_PROJECT_NAMESPACE_ID,CI_PROJECT_PATH:zc.CI_PROJECT_PATH,CI_PROJECT_PATH_SLUG:zc.CI_PROJECT_PATH_SLUG,CI_PROJECT_REPOSITORY_LANGUAGES:zc.CI_PROJECT_REPOSITORY_LANGUAGES,CI_PROJECT_ROOT_NAMESPACE:zc.CI_PROJECT_ROOT_NAMESPACE,CI_PROJECT_TITLE:zc.CI_PROJECT_TITLE,CI_PROJECT_URL:zc.CI_PROJECT_URL,CI_PROJECT_VISIBILITY:zc.CI_PROJECT_VISIBILITY,CI_REGISTRY:zc.CI_REGISTRY,CI_REGISTRY_IMAGE:zc.CI_REGISTRY_IMAGE,CI_REGISTRY_USER:zc.CI_REGISTRY_USER,CI_RUNNER_DESCRIPTION:zc.CI_RUNNER_DESCRIPTION,CI_RUNNER_ID:zc.CI_RUNNER_ID,CI_RUNNER_TAGS:zc.CI_RUNNER_TAGS,CI_SERVER_HOST:zc.CI_SERVER_HOST,CI_SERVER_NAME:zc.CI_SERVER_NAME,CI_SERVER_PORT:zc.CI_SERVER_PORT,CI_SERVER_PROTOCOL:zc.CI_SERVER_PROTOCOL,CI_SERVER_REVISION:zc.CI_SERVER_REVISION,CI_SERVER_SHELL_SSH_HOST:zc.CI_SERVER_SHELL_SSH_HOST,CI_SERVER_SHELL_SSH_PORT:zc.CI_SERVER_SHELL_SSH_PORT,CI_SERVER_URL:zc.CI_SERVER_URL,CI_SERVER_VERSION:zc.CI_SERVER_VERSION,CI_SERVER_VERSION_MAJOR:zc.CI_SERVER_VERSION_MAJOR,CI_SERVER_VERSION_MINOR:zc.CI_SERVER_VERSION_MINOR,CI_SERVER_VERSION_PATCH:zc.CI_SERVER_VERSION_PATCH,CI_TEMPLATE_REGISTRY_HOST:zc.CI_TEMPLATE_REGISTRY_HOST,GITLAB_CI:zc.GITLAB_CI,GITLAB_FEATURES:zc.GITLAB_FEATURES,GITLAB_USER_ID:zc.GITLAB_USER_ID,GITLAB_USER_LOGIN:zc.GITLAB_USER_LOGIN,RUNNER_GENERATE_ARTIFACTS_METADATA:zc.RUNNER_GENERATE_ARTIFACTS_METADATA},environment:{name:zc.CI_RUNNER_DESCRIPTION,architecture:zc.CI_RUNNER_EXECUTABLE_ARCH,server:zc.CI_SERVER_URL,project:zc.CI_PROJECT_PATH,job:{id:zc.CI_JOB_ID},pipeline:{id:zc.CI_PIPELINE_ID,ref:zc.CI_CONFIG_PATH}}},metadata:{buildInvocationId:`${zc.CI_JOB_URL}`,completeness:{parameters:!0,environment:!0,materials:!1},reproducible:!1},materials:[{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA}}]}}}else throw new cZe.ReportError(cZe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,"Provenance generation is only supported in GitHub Actions and GitLab CI");return xLl.attest(Buffer.from(JSON.stringify(r)),GLl,t)};oVt.generateProvenance=HLl});var EEs=H(lZe=>{"use strict";Object.defineProperty(lZe,"__esModule",{value:!0});lZe.makePublishBody=jLl;lZe.getGitHead=zLl;lZe.getPublishAccess=yEs;lZe.getReadmeContent=bEs;var YLl=(Wa(),vi(Va)),QLl=mn(),_Es=mn(),CEs=Io(),XLl=Ime(),JLl=YLl.__importDefault(are()),ULl=N0e(),KLl=mEs();async function jLl(e,t,{access:r,tag:n,registry:a,gitHead:o,provenance:l}){let A=e.manifest.name,f=e.manifest.version,I=_Es.structUtils.stringifyIdent(A),C=JLl.default.fromData(t,{algorithms:["sha1","sha512"]}),b=r??yEs(e,A),E=await bEs(e),N=await XLl.packUtils.genPackageManifest(e),B=`${I}-${f}.tgz`,F=new URL(`${(0,ULl.normalizeRegistry)(a)}/${I}/-/${B}`),Q={[B]:{content_type:"application/octet-stream",data:t.toString("base64"),length:t.length}};if(l){let J={name:`pkg:npm/${I.replace(/^@/,"%40")}@${f}`,digest:{sha512:C.sha512[0].hexDigest()}},ae=await(0,KLl.generateProvenance)([J]),ne=JSON.stringify(ae);Q[`${I}-${f}.sigstore`]={content_type:ae.mediaType,data:ne,length:ne.length}}return{_id:I,_attachments:Q,name:I,access:b,"dist-tags":{[n]:f},versions:{[f]:{...N,_id:`${I}@${f}`,name:I,version:f,gitHead:o,dist:{shasum:C.sha1[0].hexDigest(),integrity:C.sha512[0].toString(),tarball:F.toString()}}},readme:E}}async function zLl(e){try{let{stdout:t}=await QLl.execUtils.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:e});return t.trim()===""?void 0:t.trim()}catch{return}}function yEs(e,t){let r=e.project.configuration;return e.manifest.publishConfig&&typeof e.manifest.publishConfig.access=="string"?e.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):t.scope?"restricted":"public"}async function bEs(e){let t=CEs.npath.toPortablePath(`${e.cwd}/README.md`),r=e.manifest.name,a=`# ${_Es.structUtils.stringifyIdent(r)} -`;try{a=await CEs.xfs.readFilePromise(t,"utf8")}catch(o){if(o.code==="ENOENT")return a;throw o}return a}});var mJ=H(jR=>{"use strict";Object.defineProperty(jR,"__esModule",{value:!0});jR.NpmTagResolver=jR.NpmSemverResolver=jR.NpmSemverFetcher=jR.NpmRemapResolver=jR.NpmHttpFetcher=jR.npmPublishUtils=jR.npmHttpUtils=jR.npmConfigUtils=void 0;var Eqr=(Wa(),vi(Va)),n3=mn(),vEs=jds();Object.defineProperty(jR,"NpmHttpFetcher",{enumerable:!0,get:function(){return vEs.NpmHttpFetcher}});var BEs=zds();Object.defineProperty(jR,"NpmRemapResolver",{enumerable:!0,get:function(){return BEs.NpmRemapResolver}});var wEs=pFt();Object.defineProperty(jR,"NpmSemverFetcher",{enumerable:!0,get:function(){return wEs.NpmSemverFetcher}});var TEs=nps();Object.defineProperty(jR,"NpmSemverResolver",{enumerable:!0,get:function(){return TEs.NpmSemverResolver}});var REs=ops();Object.defineProperty(jR,"NpmTagResolver",{enumerable:!0,get:function(){return REs.NpmTagResolver}});var NEs=Eqr.__importStar(N0e());jR.npmConfigUtils=NEs;var qLl=Eqr.__importStar(JGe());jR.npmHttpUtils=qLl;var $Ll=Eqr.__importStar(EEs());jR.npmPublishUtils=$Ll;var bqr={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:n3.SettingsType.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:n3.SettingsType.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:n3.SettingsType.SECRET,default:null}},SEs={npmAuditRegistry:{description:"Registry to query for audit reports",type:n3.SettingsType.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:n3.SettingsType.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:n3.SettingsType.STRING,default:"https://registry.yarnpkg.com"}},e9l={npmMinimalAgeGate:{description:"Minimum age of a package version according to the publish date on the npm registry to be considered for installation",type:n3.SettingsType.DURATION,unit:n3.DurationUnit.MINUTES,default:"0m"},npmPreapprovedPackages:{description:"Array of package descriptors or package name glob patterns to exclude from the minimum release age check",type:n3.SettingsType.STRING,isArray:!0,default:[]}},t9l={configuration:{...bqr,...SEs,...e9l,npmScopes:{description:"Settings per package scope",type:n3.SettingsType.MAP,valueDefinition:{description:"",type:n3.SettingsType.SHAPE,properties:{...bqr,...SEs}}},npmRegistries:{description:"Settings per registry",type:n3.SettingsType.MAP,normalizeKeys:NEs.normalizeRegistry,valueDefinition:{description:"",type:n3.SettingsType.SHAPE,properties:{...bqr}}}},fetchers:[vEs.NpmHttpFetcher,wEs.NpmSemverFetcher],resolvers:[BEs.NpmRemapResolver,TEs.NpmSemverResolver,REs.NpmTagResolver]};jR.default=t9l});var aVt=H(uZe=>{"use strict";Object.defineProperty(uZe,"__esModule",{value:!0});uZe.Severity=uZe.Environment=void 0;var DEs;(function(e){e.All="all",e.Production="production",e.Development="development"})(DEs||(uZe.Environment=DEs={}));var kEs;(function(e){e.Info="info",e.Low="low",e.Moderate="moderate",e.High="high",e.Critical="critical"})(kEs||(uZe.Severity=kEs={}))});var Sqr=H(CJ=>{"use strict";Object.defineProperty(CJ,"__esModule",{value:!0});CJ.allSeverities=void 0;CJ.getSeverityInclusions=n9l;CJ.getReportTree=i9l;CJ.getTopLevelDependencies=s9l;CJ.getPackages=o9l;var xEs=(Wa(),vi(Va)),UE=mn(),r9l=xEs.__importDefault(jC()),Tre=xEs.__importStar(aVt());CJ.allSeverities=[Tre.Severity.Info,Tre.Severity.Low,Tre.Severity.Moderate,Tre.Severity.High,Tre.Severity.Critical];function n9l(e){if(typeof e>"u")return new Set(CJ.allSeverities);let t=CJ.allSeverities.indexOf(e),r=CJ.allSeverities.slice(t);return new Set(r)}function i9l(e){let t={},r={children:t};for(let[n,a]of UE.miscUtils.sortMap(Object.entries(e),o=>o[0]))for(let o of UE.miscUtils.sortMap(a,l=>`${l.id}`))t[`${n}/${o.id}`]={value:UE.formatUtils.tuple(UE.formatUtils.Type.IDENT,UE.structUtils.parseIdent(n)),children:{ID:typeof o.id<"u"&&{label:"ID",value:UE.formatUtils.tuple(UE.formatUtils.Type.ID,o.id)},Issue:{label:"Issue",value:UE.formatUtils.tuple(UE.formatUtils.Type.NO_HINT,o.title)},URL:typeof o.url<"u"&&{label:"URL",value:UE.formatUtils.tuple(UE.formatUtils.Type.URL,o.url)},Severity:{label:"Severity",value:UE.formatUtils.tuple(UE.formatUtils.Type.NO_HINT,o.severity)},"Vulnerable Versions":{label:"Vulnerable Versions",value:UE.formatUtils.tuple(UE.formatUtils.Type.RANGE,o.vulnerable_versions)},"Tree Versions":{label:"Tree Versions",children:[...o.versions].sort(r9l.default.compare).map(l=>({value:UE.formatUtils.tuple(UE.formatUtils.Type.REFERENCE,l)}))},Dependents:{label:"Dependents",children:UE.miscUtils.sortMap(o.dependents,l=>UE.structUtils.stringifyLocator(l)).map(l=>({value:UE.formatUtils.tuple(UE.formatUtils.Type.LOCATOR,l)}))}}};return r}function s9l(e,t,{all:r,environment:n}){let a=[],o=r?e.workspaces:[t],l=[Tre.Environment.All,Tre.Environment.Production].includes(n),A=[Tre.Environment.All,Tre.Environment.Development].includes(n);for(let f of o)for(let I of f.anchoredPackage.dependencies.values())(f.manifest.devDependencies.has(I.identHash)?!A:!l)||a.push({workspace:f,dependency:I});return a}function o9l(e,t,{recursive:r}){let n=new Map,a=new Set,o=[],l=e.configuration.makeResolver(),A={project:e,resolver:l},f=(I,C)=>{let b=e.storedResolutions.get(C.descriptorHash);if(typeof b>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(b))a.add(b);else return;let E=e.storedPackages.get(b);if(typeof E>"u")throw new Error("Assertion failed: The package should have been registered");let N=UE.structUtils.ensureDevirtualizedDescriptor(C);if(l.supportsDescriptor(N,A)){let F=l.getResolutionDependencies(N,A);if(Object.keys(F).length>0)for(let Q of Object.values(F))f(I,Q)}if(UE.structUtils.ensureDevirtualizedLocator(E).reference.startsWith("npm:")&&E.version!==null){let F=UE.structUtils.stringifyIdent(E),Q=UE.miscUtils.getMapWithDefault(n,F);UE.miscUtils.getArrayWithDefault(Q,E.version).push(I)}if(r)for(let F of E.dependencies.values())o.push([E,F])};for(let{workspace:I,dependency:C}of t)o.push([I.anchoredLocator,C]);for(;o.length>0;){let[I,C]=o.shift();f(I,C)}return n}});var LEs=H(vqr=>{"use strict";Object.defineProperty(vqr,"__esModule",{value:!0});var lVt=(Wa(),vi(Va)),GEs=dl(),n7=mn(),a9l=mn(),cVt=mJ(),Rre=(Rl(),vi(ng)),FEs=lVt.__importDefault(Tk()),ZEs=lVt.__importStar((vZ(),vi(SZ))),pqe=lVt.__importStar(aVt()),fqe=lVt.__importStar(Sqr()),Iqe=class extends GEs.BaseCommand{constructor(){super(...arguments),this.all=Rre.Option.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"}),this.recursive=Rre.Option.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"}),this.environment=Rre.Option.String("--environment",pqe.Environment.All,{description:"Which environments to cover",validator:ZEs.isEnum(pqe.Environment)}),this.json=Rre.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.noDeprecations=Rre.Option.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"}),this.severity=Rre.Option.String("--severity",pqe.Severity.Info,{description:"Minimal severity requested for packages to be displayed",validator:ZEs.isEnum(pqe.Severity)}),this.excludes=Rre.Option.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"}),this.ignores=Rre.Option.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let t=await n7.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await n7.Project.find(t,this.context.cwd);if(!n)throw new GEs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=fqe.getTopLevelDependencies(r,n,{all:this.all,environment:this.environment}),o=fqe.getPackages(r,a,{recursive:this.recursive}),l=Array.from(new Set([...t.get("npmAuditExcludePackages"),...this.excludes])),A=Object.create(null);for(let[F,Q]of o)l.some(J=>FEs.default.isMatch(F,J))||(A[F]=[...Q.keys()]);let f=cVt.npmConfigUtils.getAuditRegistry({configuration:t}),I,C=await n7.LightReport.start({configuration:t,stdout:this.context.stdout},async()=>{let F=cVt.npmHttpUtils.post("/-/npm/v1/security/advisories/bulk",A,{authType:cVt.npmHttpUtils.AuthType.BEST_EFFORT,configuration:t,jsonResponse:!0,registry:f}),Q=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(A),async([ae,ne])=>{let ce=await cVt.npmHttpUtils.getPackageMetadata(a9l.structUtils.parseIdent(ae),{project:r});return n7.miscUtils.mapAndFilter(ne,fe=>{let{deprecated:ue}=ce.versions[fe];return ue?[ae,fe,ue]:n7.miscUtils.mapAndFilter.skip})})),J=await F;for(let[ae,ne,ce]of Q.flat(1))Object.hasOwn(J,ae)&&J[ae].some(fe=>n7.semverUtils.satisfiesWithPrereleases(ne,fe.vulnerable_versions))||(J[ae]??=[],J[ae].push({id:`${ae} (deprecation)`,title:(typeof ce=="string"?ce:"").trim()||"This package has been deprecated.",severity:pqe.Severity.Moderate,vulnerable_versions:ne}));I=J});if(C.hasErrors())return C.exitCode();let b=fqe.getSeverityInclusions(this.severity),E=Array.from(new Set([...t.get("npmAuditIgnoreAdvisories"),...this.ignores])),N=Object.create(null);for(let[F,Q]of Object.entries(I)){let J=Q.filter(ae=>!FEs.default.isMatch(`${ae.id}`,E)&&b.has(ae.severity));J.length>0&&(N[F]=J.map(ae=>{let ne=o.get(F);if(typeof ne>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let ce=[...ne.keys()].filter(ue=>n7.semverUtils.satisfiesWithPrereleases(ue,ae.vulnerable_versions)),fe=new Map;for(let ue of ce)for(let de of ne.get(ue))fe.set(de.locatorHash,de);return{...ae,versions:ce,dependents:[...fe.values()]}}))}let B=Object.keys(N).length>0;return B?(n7.treeUtils.emitTree(fqe.getReportTree(N),{configuration:t,json:this.json,stdout:this.context.stdout,separators:2}),1):(await n7.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async F=>{F.reportInfo(n7.MessageName.EXCEPTION,"No audit suggestions")}),B?1:0)}};Iqe.paths=[["npm","audit"]];Iqe.usage=Rre.Command.Usage({description:"perform a vulnerability audit against the installed packages",details:` +`+o),e.push(a+"m+"+G9t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=jFl()+t+" "+e[0]}function jFl(){return xD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function zFl(...e){return process.stderr.write(x9t.formatWithOptions(xD.inspectOpts,...e)+` +`)}function qFl(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function $Fl(){return process.env.DEBUG}function eZl(e){e.inspectOpts={};let t=Object.keys(xD.inspectOpts);for(let r=0;rt.trim()).join(" ")};ybs.O=function(e){return this.inspectOpts.colors=this.useColors,x9t.inspect(e,this.inspectOpts)}});var Rzr=H((Wsg,Tzr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Tzr.exports=_bs():Tzr.exports=bbs()});var Z9t=H(lB=>{"use strict";Object.defineProperty(lB,"__esModule",{value:!0});lB.DownloadHTTPError=lB.DownloadLengthMismatchError=lB.DownloadError=lB.ExpiredMetadataError=lB.EqualVersionError=lB.BadVersionError=lB.RepositoryError=lB.PersistError=lB.RuntimeError=lB.ValueError=void 0;var Nzr=class extends Error{};lB.ValueError=Nzr;var Dzr=class extends Error{};lB.RuntimeError=Dzr;var kzr=class extends Error{};lB.PersistError=kzr;var sqe=class extends Error{};lB.RepositoryError=sqe;var F9t=class extends sqe{};lB.BadVersionError=F9t;var xzr=class extends F9t{};lB.EqualVersionError=xzr;var Gzr=class extends sqe{};lB.ExpiredMetadataError=Gzr;var oqe=class extends Error{};lB.DownloadError=oqe;var Fzr=class extends oqe{};lB.DownloadLengthMismatchError=Fzr;var Zzr=class extends oqe{statusCode;constructor(t,r){super(t),this.statusCode=r}};lB.DownloadHTTPError=Zzr});var Sbs=H(eZe=>{"use strict";var Vzr=eZe&&eZe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(eZe,"__esModule",{value:!0});eZe.withTempFile=void 0;var Lzr=Vzr(Et("fs/promises")),tZl=Vzr(Et("os")),Ebs=Vzr(Et("path")),rZl=async e=>nZl(async t=>e(Ebs.default.join(t,"tempfile")));eZe.withTempFile=rZl;var nZl=async e=>{let t=await Lzr.default.realpath(tZl.default.tmpdir()),r=await Lzr.default.mkdtemp(t+Ebs.default.sep);try{return await e(r)}finally{await Lzr.default.rm(r,{force:!0,recursive:!0,maxRetries:3})}}});var Ozr=H(Ige=>{"use strict";var V9t=Ige&&Ige.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ige,"__esModule",{value:!0});Ige.DefaultFetcher=Ige.BaseFetcher=void 0;var iZl=V9t(Rzr()),vbs=V9t(Et("fs")),sZl=V9t(zLt()),oZl=V9t(Et("util")),Bbs=Z9t(),aZl=Sbs(),cZl=(0,iZl.default)("tuf:fetch"),L9t=class{async downloadFile(t,r,n){return(0,aZl.withTempFile)(async a=>{let o=await this.fetch(t),l=0,A=vbs.default.createWriteStream(a);try{for await(let f of o){if(l+=f.length,l>r)throw new Bbs.DownloadLengthMismatchError("Max length reached");await lZl(A,f)}}finally{await oZl.default.promisify(A.close).bind(A)()}return n(a)})}async downloadBytes(t,r){return this.downloadFile(t,r,async n=>{let a=vbs.default.createReadStream(n),o=[];for await(let l of a)o.push(l);return Buffer.concat(o)})}};Ige.BaseFetcher=L9t;var Wzr=class extends L9t{timeout;retry;constructor(t={}){super(),this.timeout=t.timeout,this.retry=t.retry}async fetch(t){cZl("GET %s",t);let r=await(0,sZl.default)(t,{timeout:this.timeout,retry:this.retry});if(!r.ok||!r?.body)throw new Bbs.DownloadHTTPError("Failed to download",r.status);return r.body}};Ige.DefaultFetcher=Wzr;var lZl=async(e,t)=>new Promise((r,n)=>{e.write(t,a=>{a&&n(a),r(!0)})})});var wbs=H(W9t=>{"use strict";Object.defineProperty(W9t,"__esModule",{value:!0});W9t.defaultConfig=void 0;W9t.defaultConfig={maxRootRotations:256,maxDelegations:32,rootMaxLength:512e3,timestampMaxLength:16384,snapshotMaxLength:2e6,targetsMaxLength:5e6,prefixTargetsWithHash:!0,fetchTimeout:1e5,fetchRetries:void 0,fetchRetry:2}});var Tbs=H(O9t=>{"use strict";Object.defineProperty(O9t,"__esModule",{value:!0});O9t.TrustedMetadataStore=void 0;var xT=D9t(),XS=Z9t(),Pzr=class{trustedSet={};referenceTime;constructor(t){this.referenceTime=new Date,this.loadTrustedRoot(t)}get root(){if(!this.trustedSet.root)throw new ReferenceError("No trusted root metadata");return this.trustedSet.root}get timestamp(){return this.trustedSet.timestamp}get snapshot(){return this.trustedSet.snapshot}get targets(){return this.trustedSet.targets}getRole(t){return this.trustedSet[t]}updateRoot(t){let r=JSON.parse(t.toString("utf8")),n=xT.Metadata.fromJSON(xT.MetadataKind.Root,r);if(n.signed.type!=xT.MetadataKind.Root)throw new XS.RepositoryError(`Expected 'root', got ${n.signed.type}`);if(this.root.verifyDelegate(xT.MetadataKind.Root,n),n.signed.version!=this.root.signed.version+1)throw new XS.BadVersionError(`Expected version ${this.root.signed.version+1}, got ${n.signed.version}`);return n.verifyDelegate(xT.MetadataKind.Root,n),this.trustedSet.root=n,n}updateTimestamp(t){if(this.snapshot)throw new XS.RuntimeError("Cannot update timestamp after snapshot");if(this.root.signed.isExpired(this.referenceTime))throw new XS.ExpiredMetadataError("Final root.json is expired");let r=JSON.parse(t.toString("utf8")),n=xT.Metadata.fromJSON(xT.MetadataKind.Timestamp,r);if(n.signed.type!=xT.MetadataKind.Timestamp)throw new XS.RepositoryError(`Expected 'timestamp', got ${n.signed.type}`);if(this.root.verifyDelegate(xT.MetadataKind.Timestamp,n),this.timestamp){if(n.signed.version{let f=o.signed.meta[l];if(!f)throw new XS.RepositoryError(`Missing file ${l} in new snapshot`);if(f.version{"use strict";Object.defineProperty(Mzr,"__esModule",{value:!0});Mzr.join=gZl;var uZl=Et("url");function gZl(e,t){return new uZl.URL(AZl(e)+dZl(t)).toString()}function AZl(e){return e.endsWith("/")?e:e+"/"}function dZl(e){return e.startsWith("/")?e.slice(1):e}});var Nbs=H(uY=>{"use strict";var pZl=uY&&uY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fZl=uY&&uY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Qzr=uY&&uY.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{await t.verify(tZe.createReadStream(f)),Hzr("WRITE %s",a),tZe.copyFileSync(f,a)}),a}async findCachedTarget(t,r){r||(r=this.generateTargetPath(t));try{if(tZe.existsSync(r))return await t.verify(tZe.createReadStream(r)),r}catch{return}}loadLocalMetadata(t){let r=P9t.join(this.dir,`${t}.json`);return Hzr("READ %s",r),tZe.readFileSync(r)}async loadRoot(){let r=this.trustedSet.root.signed.version+1,n=r+this.config.maxRootRotations;for(let a=r;a0;){let{roleName:a,parentRoleName:o}=r.pop();if(n.has(a))continue;let l=(await this.loadTargets(a,o))?.signed;if(!l)continue;let A=l.targets?.[t];if(A)return A;if(n.add(a),l.delegations){let f=[],I=l.delegations.rolesForTarget(t);for(let{role:C,terminating:b}of I)if(f.push({roleName:C,parentRoleName:a}),b){r.splice(0);break}f.reverse(),r.push(...f)}}}generateTargetPath(t){if(!this.targetDir)throw new pye.ValueError("Target directory not set");let r=encodeURIComponent(t.path);return P9t.join(this.targetDir,r)}persistMetadata(t,r){let n=encodeURIComponent(t);try{let a=P9t.join(this.dir,`${n}.json`);Hzr("WRITE %s",a),tZe.writeFileSync(a,r.toString("utf8"))}catch(a){throw new pye.PersistError(`Failed to persist metadata ${n} error: ${a}`)}}};uY.Updater=Yzr});var Dbs=H(hge=>{"use strict";Object.defineProperty(hge,"__esModule",{value:!0});hge.Updater=hge.BaseFetcher=hge.TargetFile=void 0;var yZl=D9t();Object.defineProperty(hge,"TargetFile",{enumerable:!0,get:function(){return yZl.TargetFile}});var bZl=Ozr();Object.defineProperty(hge,"BaseFetcher",{enumerable:!0,get:function(){return bZl.BaseFetcher}});var EZl=Nbs();Object.defineProperty(hge,"Updater",{enumerable:!0,get:function(){return EZl.Updater}})});var Jzr=H(M9t=>{"use strict";Object.defineProperty(M9t,"__esModule",{value:!0});M9t.TUFError=void 0;var Xzr=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}};M9t.TUFError=Xzr});var kbs=H(cqe=>{"use strict";var SZl=cqe&&cqe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cqe,"__esModule",{value:!0});cqe.readTarget=BZl;var vZl=SZl(Et("fs")),H9t=Jzr();async function BZl(e,t){let r=await wZl(e,t);return new Promise((n,a)=>{vZl.default.readFile(r,"utf-8",(o,l)=>{o?a(new H9t.TUFError({code:"TUF_READ_TARGET_ERROR",message:`error reading target ${r}`,cause:o})):n(l)})})}async function wZl(e,t){let r;try{r=await e.getTargetInfo(t)}catch(a){throw new H9t.TUFError({code:"TUF_REFRESH_METADATA_ERROR",message:"error refreshing TUF metadata",cause:a})}if(!r)throw new H9t.TUFError({code:"TUF_FIND_TARGET_ERROR",message:`target ${t} not found`});let n=await e.findCachedTarget(r);if(!n)try{n=await e.downloadTarget(r)}catch(a){throw new H9t.TUFError({code:"TUF_DOWNLOAD_TARGET_ERROR",message:`error downloading target ${n}`,cause:a})}return n}});var xbs=H((jsg,TZl)=>{TZl.exports={"https://tuf-repo-cdn.sigstore.dev":{"root.json":"ewogInNpZ25hdHVyZXMiOiBbCiAgewogICAia2V5aWQiOiAiNmYyNjAwODlkNTkyM2RhZjIwMTY2Y2E2NTdjNTQzYWY2MTgzNDZhYjk3MTg4NGE5OTk2MmIwMTk4OGJiZTBjMyIsCiAgICJzaWciOiAiIgogIH0sCiAgewogICAia2V5aWQiOiAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICJzaWciOiAiMzA0NTAyMjEwMGIwYmNmMTg5Y2UxYjkzZTdkYjk2NDlkNWJlNTEyYTE4ODBjMGUzNTg4NzBlMzkzM2U0MjZjNWFmYjhhNDA2MTAwMjIwNmQyMTRiZDc5YjA5ZjQ1OGNjYzUyMWEyOTBhYTk2MGM0MTcwMTRmYzE2ZTYwNmY4MjA5MWI1ZTMxODE0ODg2YSIKICB9LAogIHsKICAgImtleWlkIjogIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAic2lnIjogIiIKICB9LAogIHsKICAgImtleWlkIjogIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAic2lnIjogIjMwNDUwMjIxMDBhOWI5ZTI5NGVjMjFiNjJkZmNhNmExNmExOWQwODQxODJjMTI1NzJlMzNkOWM0ZGNhYjUzMTdmYTFlOGE0NTlkMDIyMDY5ZjY4ZTU1ZWExZjk1YzVhMzY3YWFjN2E2MWE2NTc1N2Y5M2RhNWEwMDZhNWY0ZDFjZjk5NWJlODEyZDc2MDIiCiAgfSwKICB7CiAgICJrZXlpZCI6ICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIiwKICAgInNpZyI6ICIzMDQ0MDIyMDc4MTE3OGVjMzkxNWNiMTZhY2E3NTdkNDBlMjg0MzVhYzUzNzhkNmI0ODdhY2IxMTFkMWVlYjMzOTM5N2Y3OWEwMjIwNzgxY2NlNDhhZTQ2ZjllNDdiOTdhODQxNGZjZjQ2NmE5ODY3MjZhNTg5NmM3MmEwZTRhYmEzMTYyY2I4MjZkZCIKICB9CiBdLAogInNpZ25lZCI6IHsKICAiX3R5cGUiOiAicm9vdCIsCiAgImNvbnNpc3RlbnRfc25hcHNob3QiOiB0cnVlLAogICJleHBpcmVzIjogIjIwMjUtMDgtMTlUMTQ6MzM6MDlaIiwKICAia2V5cyI6IHsKICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVXUmlHcjUraiszSjVTc0grWnRyNW5FMkgyd083XG5CVituTzNzOTNnTGNhMThxVE96SFkxb1d5QUdEeWtNU3NHVFVCU3Q5RCtBbjBLZktzRDJtZlNNNDJRPT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2ktb25saW5lLXVyaSI6ICJnY3BrbXM6cHJvamVjdHMvc2lnc3RvcmUtcm9vdC1zaWduaW5nL2xvY2F0aW9ucy9nbG9iYWwva2V5UmluZ3Mvcm9vdC9jcnlwdG9LZXlzL3RpbWVzdGFtcC9jcnlwdG9LZXlWZXJzaW9ucy8xIgogICB9LAogICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiI6IHsKICAgICJrZXlpZF9oYXNoX2FsZ29yaXRobXMiOiBbCiAgICAgInNoYTI1NiIsCiAgICAgInNoYTUxMiIKICAgIF0sCiAgICAia2V5dHlwZSI6ICJlY2RzYSIsCiAgICAia2V5dmFsIjogewogICAgICJwdWJsaWMiOiAiLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS1cbk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRXpCelZPbUhDUG9qTVZMU0kzNjRXaWlWOE5QckRcbjZJZ1J4Vmxpc2t6L3YreTNKRVI1bWNWR2NPTmxpRGNXTUM1SjJsZkhtalBOUGhiNEg3eG04THpmU0E9PVxuLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tXG4iCiAgICB9LAogICAgInNjaGVtZSI6ICJlY2RzYS1zaGEyLW5pc3RwMjU2IiwKICAgICJ4LXR1Zi1vbi1jaS1rZXlvd25lciI6ICJAc2FudGlhZ290b3JyZXMiCiAgIH0sCiAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaW5pa1NzQVFtWWtOZUg1ZVlxL0NuSXpMYWFjT1xueGxTYWF3UURPd3FLeS90Q3F4cTV4eFBTSmMyMUs0V0loczlHeU9rS2Z6dWVZM0dJTHpjTUpaNGNXdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBib2JjYWxsYXdheSIKICAgfSwKICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUV5OFhLc21oQllESThKYzBHd3pCeGVLYXgwY201XG5TVEtFVTY1SFBGdW5VbjQxc1Q4cGkwRmpNNElrSHovWVVtd21MVU8wV3Q3bHhoajZCa0xJSzRxWUF3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQGRsb3JlbmMiCiAgIH0sCiAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFMGdocmg5Mkx3MVlyM2lkR1Y1V3FDdE1EQjhDeFxuK0Q4aGRDNHcyWkxOSXBsVlJvVkdMc2tZYTNnaGVNeU9qaUo4a1BpMTVhUTIvLzdQK29qN1V2SlBHdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBqb3NodWFnbCIKICAgfSwKICAgImU3MWE1NGQ1NDM4MzViYTg2YWRhZDk0NjAzNzljNzY0MWZiODcyNmQxNjRlYTc2NjgwMWExYzUyMmFiYTdlYTIiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVFWHN6M1NaWEZiOGpNVjQyajZwSmx5amJqUjhLXG5OM0J3b2NleHE2TE1JYjVxc1dLT1F2TE4xNk5VZWZMYzRIc3dPb3VtUnNWVmFhalNwUVM2Zm9ia1J3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQG1ubTY3OCIKICAgfQogIH0sCiAgInJvbGVzIjogewogICAicm9vdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiLAogICAgICJlNzFhNTRkNTQzODM1YmE4NmFkYWQ5NDYwMzc5Yzc2NDFmYjg3MjZkMTY0ZWE3NjY4MDFhMWM1MjJhYmE3ZWEyIiwKICAgICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiIsCiAgICAgIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIgogICAgXSwKICAgICJ0aHJlc2hvbGQiOiAzCiAgIH0sCiAgICJzbmFwc2hvdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiCiAgICBdLAogICAgInRocmVzaG9sZCI6IDEsCiAgICAieC10dWYtb24tY2ktZXhwaXJ5LXBlcmlvZCI6IDM2NTAsCiAgICAieC10dWYtb24tY2ktc2lnbmluZy1wZXJpb2QiOiAzNjUKICAgfSwKICAgInRhcmdldHMiOiB7CiAgICAia2V5aWRzIjogWwogICAgICI2ZjI2MDA4OWQ1OTIzZGFmMjAxNjZjYTY1N2M1NDNhZjYxODM0NmFiOTcxODg0YTk5OTYyYjAxOTg4YmJlMGMzIiwKICAgICAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICAgIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIiwKICAgICAiYTY4N2U1YmY0ZmFiODJiMGVlNThkNDZlMDVjOTUzNTE0NWEyYzlhZmI0NThmNDNkNDJiNDVjYTBmZGNlMmE3MCIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMwogICB9LAogICAidGltZXN0YW1wIjogewogICAgImtleWlkcyI6IFsKICAgICAiMGM4NzQzMmMzYmYwOWZkOTkxODlmZGMzMmZhNWVhZWRmNGU0YTVmYWM3YmFiNzNmYTA0YTJlMGZjNjRhZjZmNSIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMSwKICAgICJ4LXR1Zi1vbi1jaS1leHBpcnktcGVyaW9kIjogNywKICAgICJ4LXR1Zi1vbi1jaS1zaWduaW5nLXBlcmlvZCI6IDYKICAgfQogIH0sCiAgInNwZWNfdmVyc2lvbiI6ICIxLjAiLAogICJ2ZXJzaW9uIjogMTIsCiAgIngtdHVmLW9uLWNpLWV4cGlyeS1wZXJpb2QiOiAxOTcsCiAgIngtdHVmLW9uLWNpLXNpZ25pbmctcGVyaW9kIjogNDYKIH0KfQ==",targets:{"trusted_root.json":"ewogICJtZWRpYVR5cGUiOiAiYXBwbGljYXRpb24vdm5kLmRldi5zaWdzdG9yZS50cnVzdGVkcm9vdCtqc29uO3ZlcnNpb249MC4xIiwKICAidGxvZ3MiOiBbCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vcmVrb3Iuc2lnc3RvcmUuZGV2IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUyRzJZKzJ0YWJkVFY1QmNHaUJJeDBhOWZBRndya0JibUxTR3RrczRMM3FYNnlZWTB6dWZCbmhDOFVyL2l5NTVHaFdQLzlBL2JZMkxoQzMwTTkrUll0dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDEtMTJUMTE6NTM6MjcuMDAwWiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAid05JOWF0UUdseitWV2ZPNkxSeWdINFFVZlkvOFc0UkZ3aVQ1aTVXUmdCMD0iCiAgICAgIH0KICAgIH0KICBdLAogICJjZXJ0aWZpY2F0ZUF1dGhvcml0aWVzIjogWwogICAgewogICAgICAic3ViamVjdCI6IHsKICAgICAgICAib3JnYW5pemF0aW9uIjogInNpZ3N0b3JlLmRldiIsCiAgICAgICAgImNvbW1vbk5hbWUiOiAic2lnc3RvcmUiCiAgICAgIH0sCiAgICAgICJ1cmkiOiAiaHR0cHM6Ly9mdWxjaW8uc2lnc3RvcmUuZGV2IiwKICAgICAgImNlcnRDaGFpbiI6IHsKICAgICAgICAiY2VydGlmaWNhdGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAicmF3Qnl0ZXMiOiAiTUlJQitEQ0NBWDZnQXdJQkFnSVROVmtEWm9DaW9mUERzeTdkZm02Z2VMYnVoekFLQmdncWhrak9QUVFEQXpBcU1SVXdFd1lEVlFRS0V3eHphV2R6ZEc5eVpTNWtaWFl4RVRBUEJnTlZCQU1UQ0hOcFozTjBiM0psTUI0WERUSXhNRE13TnpBek1qQXlPVm9YRFRNeE1ESXlNekF6TWpBeU9Wb3dLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQjJNQkFHQnlxR1NNNDlBZ0VHQlN1QkJBQWlBMklBQkxTeUE3SWk1aytwTk84WkVXWTB5bGVtV0Rvd09rTmEza0wrR1pFNVo1R1dlaEw5L0E5YlJOQTNSYnJzWjVpMEpjYXN0YVJMN1NwNWZwL2pENWR4cWMvVWRUVm5sdlMxNmFuKzJZZnN3ZS9RdUxvbFJVQ3JjT0UyKzJpQTUrdHpkNk5tTUdRd0RnWURWUjBQQVFIL0JBUURBZ0VHTUJJR0ExVWRFd0VCL3dRSU1BWUJBZjhDQVFFd0hRWURWUjBPQkJZRUZNakZIUUJCbWlRcE1sRWs2dzJ1U3UxS0J0UHNNQjhHQTFVZEl3UVlNQmFBRk1qRkhRQkJtaVFwTWxFazZ3MnVTdTFLQnRQc01Bb0dDQ3FHU000OUJBTURBMmdBTUdVQ01IOGxpV0pmTXVpNnZYWEJoakRnWTRNd3NsbU4vVEp4VmUvODNXckZvbXdtTmYwNTZ5MVg0OEY5YzRtM2Ezb3pYQUl4QUtqUmF5NS9hai9qc0tLR0lrbVFhdGpJOHV1cEhyLytDeEZ2YUpXbXBZcU5rTERHUlUrOW9yemg1aEkyUnJjdWFRPT0iCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMDdUMDM6MjA6MjkuMDAwWiIsCiAgICAgICAgImVuZCI6ICIyMDIyLTEyLTMxVDIzOjU5OjU5Ljk5OVoiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJzdWJqZWN0IjogewogICAgICAgICJvcmdhbml6YXRpb24iOiAic2lnc3RvcmUuZGV2IiwKICAgICAgICAiY29tbW9uTmFtZSI6ICJzaWdzdG9yZSIKICAgICAgfSwKICAgICAgInVyaSI6ICJodHRwczovL2Z1bGNpby5zaWdzdG9yZS5kZXYiLAogICAgICAiY2VydENoYWluIjogewogICAgICAgICJjZXJ0aWZpY2F0ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNSUlDR2pDQ0FhR2dBd0lCQWdJVUFMblZpVmZuVTBickphc21Sa0hybi9VbmZhUXdDZ1lJS29aSXpqMEVBd013S2pFVk1CTUdBMVVFQ2hNTWMybG5jM1J2Y21VdVpHVjJNUkV3RHdZRFZRUURFd2h6YVdkemRHOXlaVEFlRncweU1qQTBNVE15TURBMk1UVmFGdzB6TVRFd01EVXhNelUyTlRoYU1EY3hGVEFUQmdOVkJBb1RESE5wWjNOMGIzSmxMbVJsZGpFZU1Cd0dBMVVFQXhNVmMybG5jM1J2Y21VdGFXNTBaWEp0WldScFlYUmxNSFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0lEWWdBRThSVlMveXNIK05PdnVEWnlQSVp0aWxnVUY5TmxhcllwQWQ5SFAxdkJCSDFVNUNWNzdMU1M3czBaaUg0bkU3SHY3cHRTNkx2dlIvU1RrNzk4TFZnTXpMbEo0SGVJZkYzdEhTYWV4TGNZcFNBU3Ixa1MwTi9SZ0JKei85aldDaVhubzNzd2VUQU9CZ05WSFE4QkFmOEVCQU1DQVFZd0V3WURWUjBsQkF3d0NnWUlLd1lCQlFVSEF3TXdFZ1lEVlIwVEFRSC9CQWd3QmdFQi93SUJBREFkQmdOVkhRNEVGZ1FVMzlQcHoxWWtFWmI1cU5qcEtGV2l4aTRZWkQ4d0h3WURWUjBqQkJnd0ZvQVVXTUFlWDVGRnBXYXBlc3lRb1pNaTBDckZ4Zm93Q2dZSUtvWkl6ajBFQXdNRFp3QXdaQUl3UENzUUs0RFlpWllEUElhRGk1SEZLbmZ4WHg2QVNTVm1FUmZzeW5ZQmlYMlg2U0pSblpVODQvOURaZG5GdnZ4bUFqQk90NlFwQmxjNEovMER4dmtUQ3FwY2x2emlMNkJDQ1BuamRsSUIzUHUzQnhzUG15Z1VZN0lpMnpiZENkbGlpb3c9IgogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgInJhd0J5dGVzIjogIk1JSUI5ekNDQVh5Z0F3SUJBZ0lVQUxaTkFQRmR4SFB3amVEbG9Ed3lZQ2hBTy80d0NnWUlLb1pJemowRUF3TXdLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQWVGdzB5TVRFd01EY3hNelUyTlRsYUZ3MHpNVEV3TURVeE16VTJOVGhhTUNveEZUQVRCZ05WQkFvVERITnBaM04wYjNKbExtUmxkakVSTUE4R0ExVUVBeE1JYzJsbmMzUnZjbVV3ZGpBUUJnY3Foa2pPUFFJQkJnVXJnUVFBSWdOaUFBVDdYZUZUNHJiM1BRR3dTNElhanRMazMvT2xucGdhbmdhQmNsWXBzWUJyNWkrNHluQjA3Y2ViM0xQME9JT1pkeGV4WDY5YzVpVnV5SlJRK0h6MDV5aStVRjN1QldBbEhwaVM1c2gwK0gyR0hFN1NYcmsxRUM1bTFUcjE5TDlnZzkyall6QmhNQTRHQTFVZER3RUIvd1FFQXdJQkJqQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01CMEdBMVVkRGdRV0JCUll3QjVma1VXbFpxbDZ6SkNoa3lMUUtzWEYrakFmQmdOVkhTTUVHREFXZ0JSWXdCNWZrVVdsWnFsNnpKQ2hreUxRS3NYRitqQUtCZ2dxaGtqT1BRUURBd05wQURCbUFqRUFqMW5IZVhacCsxM05XQk5hK0VEc0RQOEcxV1dnMXRDTVdQL1dIUHFwYVZvMGpoc3dlTkZaZ1NzMGVFN3dZSTRxQWpFQTJXQjlvdDk4c0lrb0YzdlpZZGQzL1Z0V0I1YjlUTk1lYTdJeC9zdEo1VGZjTExlQUJMRTRCTkpPc1E0dm5CSEoiCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjItMDQtMTNUMjA6MDY6MTUuMDAwWiIKICAgICAgfQogICAgfQogIF0sCiAgImN0bG9ncyI6IFsKICAgIHsKICAgICAgImJhc2VVcmwiOiAiaHR0cHM6Ly9jdGZlLnNpZ3N0b3JlLmRldi90ZXN0IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUViZndSK1JKdWRYc2NnUkJScEtYMVhGRHkzUHl1ZER4ei9TZm5SaTFmVDhla3BmQmQyTzF1b3o3anIzWjhuS3p4QTY5RVVRK2VGQ0ZJM3pldWJQV1U3dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMTRUMDA6MDA6MDAuMDAwWiIsCiAgICAgICAgICAiZW5kIjogIjIwMjItMTAtMzFUMjM6NTk6NTkuOTk5WiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAiQ0dDUzhDaFMvMmhGMGRGcko0U2NSV2NZckJZOXd6alNiZWE4SWdZMmIzST0iCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vY3RmZS5zaWdzdG9yZS5kZXYvMjAyMiIsCiAgICAgICJoYXNoQWxnb3JpdGhtIjogIlNIQTJfMjU2IiwKICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAicmF3Qnl0ZXMiOiAiTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaVBTbEZpMENtRlRmRWpDVXFGOUh1Q0VjWVhOS0FhWWFsSUptQlo4eXllelBqVHFoeHJLQnBNbmFvY1Z0TEpCSTFlTTN1WG5RelFHQUpkSjRnczlGeXc9PSIsCiAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICJzdGFydCI6ICIyMDIyLTEwLTIwVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgfQogICAgICB9LAogICAgICAibG9nSWQiOiB7CiAgICAgICAgImtleUlkIjogIjNUMHdhc2JIRVRKakdSNGNtV2MzQXFKS1hyamVQSzMvaDRweWdDOHA3bzQ9IgogICAgICB9CiAgICB9CiAgXQp9Cg==","registry.npmjs.org%2Fkeys.json":"ewogICAgImtleXMiOiBbCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OmpsM2J3c3d1ODBQampva0NnaDBvMnc1YzJVNExoUUFFNTdnajljejFrekEiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTFPbGIzek1BRkZ4WEtIaUlrUU81Y0ozWWhsNWk2VVBwK0lodXRlQkpidUhjQTVVb2dLbzBFV3RsV3dXNktTYUtvVE5FWUw3SmxDUWlWbmtoQmt0VWdnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIxOTk5LTAxLTAxVDAwOjAwOjAwLjAwMFoiLAogICAgICAgICAgICAgICAgICAgICJlbmQiOiAiMjAyNS0wMS0yOVQwMDowMDowMC4wMDBaIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgICJrZXlJZCI6ICJTSEEyNTY6amwzYndzd3U4MFBqam9rQ2doMG8ydzVjMlU0TGhRQUU1N2dqOWN6MWt6QSIsCiAgICAgICAgICAgICJrZXlVc2FnZSI6ICJucG06YXR0ZXN0YXRpb25zIiwKICAgICAgICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUxT2xiM3pNQUZGeFhLSGlJa1FPNWNKM1lobDVpNlVQcCtJaHV0ZUJKYnVIY0E1VW9nS28wRVd0bFd3VzZLU2FLb1RORVlMN0psQ1FpVm5raEJrdFVnZz09IiwKICAgICAgICAgICAgICAgICJrZXlEZXRhaWxzIjogIlBLSVhfRUNEU0FfUDI1Nl9TSEFfMjU2IiwKICAgICAgICAgICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICAgICAgICAgICAic3RhcnQiOiAiMjAyMi0xMi0wMVQwMDowMDowMC4wMDBaIiwKICAgICAgICAgICAgICAgICAgICAiZW5kIjogIjIwMjUtMDEtMjlUMDA6MDA6MDAuMDAwWiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OkRoUTh3UjVBUEJ2RkhMRi8rVGMrQVl2UE9kVHBjSURxT2h4c0JIUndDN1UiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICAgImtleUlkIjogIlNIQTI1NjpEaFE4d1I1QVBCdkZITEYvK1RjK0FZdlBPZFRwY0lEcU9oeHNCSFJ3QzdVIiwKICAgICAgICAgICAgImtleVVzYWdlIjogIm5wbTphdHRlc3RhdGlvbnMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICBdCn0K"}}}});var Fbs=H(rZe=>{"use strict";var Gbs=rZe&&rZe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(rZe,"__esModule",{value:!0});rZe.TUFClient=void 0;var mge=Gbs(Et("fs")),lqe=Gbs(Et("path")),RZl=Dbs(),NZl=Y9t(),DZl=kbs(),Kzr="targets",Uzr=class{constructor(t){let r=new URL(t.mirrorURL),n=encodeURIComponent(r.host+r.pathname.replace(/\/$/,"")),a=lqe.default.join(t.cachePath,n);kZl(a),xZl({cachePath:a,mirrorURL:t.mirrorURL,tufRootPath:t.rootPath,forceInit:t.forceInit}),this.updater=GZl({mirrorURL:t.mirrorURL,cachePath:a,forceCache:t.forceCache,retry:t.retry,timeout:t.timeout})}async refresh(){return this.updater.refresh()}getTarget(t){return(0,DZl.readTarget)(this.updater,t)}};rZe.TUFClient=Uzr;function kZl(e){let t=lqe.default.join(e,Kzr);mge.default.existsSync(e)||mge.default.mkdirSync(e,{recursive:!0}),mge.default.existsSync(t)||mge.default.mkdirSync(t)}function xZl({cachePath:e,mirrorURL:t,tufRootPath:r,forceInit:n}){let a=lqe.default.join(e,"root.json");if(!mge.default.existsSync(a)||n)if(r)mge.default.copyFileSync(r,a);else{let l=xbs()[t];if(!l)throw new NZl.TUFError({code:"TUF_INIT_CACHE_ERROR",message:`No root.json found for mirror: ${t}`});mge.default.writeFileSync(a,Buffer.from(l["root.json"],"base64")),Object.entries(l.targets).forEach(([A,f])=>{mge.default.writeFileSync(lqe.default.join(e,Kzr,A),Buffer.from(f,"base64"))})}}function GZl(e){let t={fetchTimeout:e.timeout,fetchRetry:e.retry};return new RZl.Updater({metadataBaseUrl:e.mirrorURL,targetBaseUrl:`${e.mirrorURL}/targets`,metadataDir:e.cachePath,targetDir:lqe.default.join(e.cachePath,Kzr),forceCache:e.forceCache,config:t})}});var Y9t=H(Tre=>{"use strict";Object.defineProperty(Tre,"__esModule",{value:!0});Tre.TUFError=Tre.DEFAULT_MIRROR_URL=void 0;Tre.getTrustedRoot=MZl;Tre.initTUF=HZl;var FZl=H7e(),ZZl=_ys(),LZl=Fbs();Tre.DEFAULT_MIRROR_URL="https://tuf-repo-cdn.sigstore.dev";var VZl="sigstore-js",WZl={retries:2},OZl=5e3,PZl="trusted_root.json";async function MZl(e={}){let r=await Zbs(e).getTarget(PZl);return FZl.TrustedRoot.fromJSON(JSON.parse(r))}async function HZl(e={}){let t=Zbs(e);return t.refresh().then(()=>t)}function Zbs(e){return new LZl.TUFClient({cachePath:e.cachePath||(0,ZZl.appDataPath)(VZl),rootPath:e.rootPath,mirrorURL:e.mirrorURL||Tre.DEFAULT_MIRROR_URL,retry:e.retry??WZl,timeout:e.timeout??OZl,forceCache:e.forceCache??!1,forceInit:e.forceInit??e.force??!1})}var YZl=Jzr();Object.defineProperty(Tre,"TUFError",{enumerable:!0,get:function(){return YZl.TUFError}})});var Lbs=H(Q9t=>{"use strict";Object.defineProperty(Q9t,"__esModule",{value:!0});Q9t.DSSESignatureContent=void 0;var uqe=sW(),jzr=class{constructor(t){this.env=t}compareDigest(t){return uqe.crypto.bufferEqual(t,uqe.crypto.digest("sha256",this.env.payload))}compareSignature(t){return uqe.crypto.bufferEqual(t,this.signature)}verifySignature(t){return uqe.crypto.verify(this.preAuthEncoding,t,this.signature)}get signature(){return this.env.signatures.length>0?this.env.signatures[0].sig:Buffer.from("")}get preAuthEncoding(){return uqe.dsse.preAuthEncoding(this.env.payloadType,this.env.payload)}};Q9t.DSSESignatureContent=jzr});var Vbs=H(X9t=>{"use strict";Object.defineProperty(X9t,"__esModule",{value:!0});X9t.MessageSignatureContent=void 0;var zzr=sW(),qzr=class{constructor(t,r){this.signature=t.signature,this.messageDigest=t.messageDigest.digest,this.artifact=r}compareSignature(t){return zzr.crypto.bufferEqual(t,this.signature)}compareDigest(t){return zzr.crypto.bufferEqual(t,this.messageDigest)}verifySignature(t){return zzr.crypto.verify(this.artifact,t,this.signature)}};X9t.MessageSignatureContent=qzr});var Obs=H(J9t=>{"use strict";Object.defineProperty(J9t,"__esModule",{value:!0});J9t.toSignedEntity=JZl;J9t.signatureContent=Wbs;var $zr=sW(),QZl=Lbs(),XZl=Vbs();function JZl(e,t){let{tlogEntries:r,timestampVerificationData:n}=e.verificationMaterial,a=[];for(let o of r)a.push({$case:"transparency-log",tlogEntry:o});for(let o of n?.rfc3161Timestamps??[])a.push({$case:"timestamp-authority",timestamp:$zr.RFC3161Timestamp.parse(o.signedTimestamp)});return{signature:Wbs(e,t),key:UZl(e),tlogEntries:r,timestamps:a}}function Wbs(e,t){switch(e.content.$case){case"dsseEnvelope":return new QZl.DSSESignatureContent(e.content.dsseEnvelope);case"messageSignature":return new XZl.MessageSignatureContent(e.content.messageSignature,t)}}function UZl(e){switch(e.verificationMaterial.content.$case){case"publicKey":return{$case:"public-key",hint:e.verificationMaterial.content.publicKey.hint};case"x509CertificateChain":return{$case:"certificate",certificate:$zr.X509Certificate.parse(e.verificationMaterial.content.x509CertificateChain.certificates[0].rawBytes)};case"certificate":return{$case:"certificate",certificate:$zr.X509Certificate.parse(e.verificationMaterial.content.certificate.rawBytes)}}}});var bx=H(nZe=>{"use strict";Object.defineProperty(nZe,"__esModule",{value:!0});nZe.PolicyError=nZe.VerificationError=void 0;var U9t=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}},eqr=class extends U9t{};nZe.VerificationError=eqr;var tqr=class extends U9t{};nZe.PolicyError=tqr});var Pbs=H(K9t=>{"use strict";Object.defineProperty(K9t,"__esModule",{value:!0});K9t.filterCertAuthorities=KZl;K9t.filterTLogAuthorities=jZl;function KZl(e,t){return e.filter(r=>r.validFor.start<=t&&r.validFor.end>=t)}function jZl(e,t){return e.filter(r=>t.logID&&!r.logID.equals(t.logID)?!1:r.validFor.start<=t.targetDate&&t.targetDate<=r.validFor.end)}});var Iye=H(fye=>{"use strict";Object.defineProperty(fye,"__esModule",{value:!0});fye.filterTLogAuthorities=fye.filterCertAuthorities=void 0;fye.toTrustMaterial=qZl;var rqr=sW(),gqe=H7e(),zZl=bx(),nqr=new Date(0),iqr=new Date(864e13),Ybs=Pbs();Object.defineProperty(fye,"filterCertAuthorities",{enumerable:!0,get:function(){return Ybs.filterCertAuthorities}});Object.defineProperty(fye,"filterTLogAuthorities",{enumerable:!0,get:function(){return Ybs.filterTLogAuthorities}});function qZl(e,t){let r=typeof t=="function"?t:$Zl(t);return{certificateAuthorities:e.certificateAuthorities.map(Hbs),timestampAuthorities:e.timestampAuthorities.map(Hbs),tlogs:e.tlogs.map(Mbs),ctlogs:e.ctlogs.map(Mbs),publicKey:r}}function Mbs(e){let t=e.publicKey.keyDetails,r=t===gqe.PublicKeyDetails.PKCS1_RSA_PKCS1V5||t===gqe.PublicKeyDetails.PKIX_RSA_PKCS1V5||t===gqe.PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256||t===gqe.PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256||t===gqe.PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256?"pkcs1":"spki";return{logID:e.logId.keyId,publicKey:rqr.crypto.createPublicKey(e.publicKey.rawBytes,r),validFor:{start:e.publicKey.validFor?.start||nqr,end:e.publicKey.validFor?.end||iqr}}}function Hbs(e){return{certChain:e.certChain.certificates.map(t=>rqr.X509Certificate.parse(t.rawBytes)),validFor:{start:e.validFor?.start||nqr,end:e.validFor?.end||iqr}}}function $Zl(e){return t=>{let r=(e||{})[t];if(!r)throw new zZl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:rqr.crypto.createPublicKey(r.rawBytes),validFor:n=>(r.validFor?.start||nqr)<=n&&(r.validFor?.end||iqr)>=n}}}});var sqr=H(Aqe=>{"use strict";Object.defineProperty(Aqe,"__esModule",{value:!0});Aqe.CertificateChainVerifier=void 0;Aqe.verifyCertificateChain=tLl;var Cge=bx(),eLl=Iye();function tLl(e,t,r){let n=(0,eLl.filterCertAuthorities)(r,e),a;for(let o of n)try{return new j9t({trustedCerts:o.certChain,untrustedCert:t,timestamp:e}).verify()}catch(l){a=l}throw new Cge.VerificationError({code:"CERTIFICATE_ERROR",message:"Failed to verify certificate chain",cause:a})}var j9t=class{constructor(t){this.untrustedCert=t.untrustedCert,this.trustedCerts=t.trustedCerts,this.localCerts=rLl([...t.trustedCerts,t.untrustedCert]),this.timestamp=t.timestamp}verify(){let t=this.sort();if(this.checkPath(t),!t.every(n=>n.validForDate(this.timestamp)))throw new Cge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate is not valid or expired at the specified date"});return t}sort(){let t=this.untrustedCert,r=this.buildPaths(t);if(r=r.filter(a=>a.some(o=>this.trustedCerts.includes(o))),r.length===0)throw new Cge.VerificationError({code:"CERTIFICATE_ERROR",message:"no trusted certificate path found"});let n=r.reduce((a,o)=>a.length{if(n&&a.extSubjectKeyID){a.extSubjectKeyID.keyIdentifier.equals(n)&&r.push(a);return}a.subject.equals(t.issuer)&&r.push(a)}),r=r.filter(a=>{try{return t.verify(a)}catch{return!1}}),r)}checkPath(t){if(t.length<1)throw new Cge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate chain must contain at least one certificate"});if(!t.slice(1).every(n=>n.isCA))throw new Cge.VerificationError({code:"CERTIFICATE_ERROR",message:"intermediate certificate is not a CA"});for(let n=t.length-2;n>=0;n--)if(!t[n].issuer.equals(t[n+1].subject))throw new Cge.VerificationError({code:"CERTIFICATE_ERROR",message:"incorrect certificate name chaining"});for(let n=0;n{"use strict";Object.defineProperty(oqr,"__esModule",{value:!0});oqr.verifySCTs=sLl;var z9t=sW(),nLl=bx(),iLl=Iye();function sLl(e,t,r){let n,a=e.clone();for(let f=0;f{if(!(0,iLl.filterTLogAuthorities)(r,{logID:f.logID,targetDate:f.datetime}).some(b=>f.verify(o.buffer,b.publicKey)))throw new nLl.VerificationError({code:"CERTIFICATE_ERROR",message:"SCT verification failed"});return f.logID})}});var Xbs=H(q9t=>{"use strict";Object.defineProperty(q9t,"__esModule",{value:!0});q9t.verifyPublicKey=ALl;q9t.verifyCertificate=dLl;var oLl=sW(),aLl=bx(),cLl=sqr(),lLl=Qbs(),uLl="1.3.6.1.4.1.57264.1.1",gLl="1.3.6.1.4.1.57264.1.8";function ALl(e,t,r){let n=r.publicKey(e);return t.forEach(a=>{if(!n.validFor(a))throw new aLl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`Public key is not valid for timestamp: ${a.toISOString()}`})}),{key:n.publicKey}}function dLl(e,t,r){let n=[];return t.forEach(a=>{n=(0,cLl.verifyCertificateChain)(a,e,r.certificateAuthorities)}),{scts:(0,lLl.verifySCTs)(n[0],n[1],r.ctlogs),signer:pLl(n[0])}}function pLl(e){let t,r=e.extension(gLl);r?t=r.valueObj.subs?.[0]?.value.toString("ascii"):t=e.extension(uLl)?.value.toString("ascii");let n={extensions:{issuer:t},subjectAlternativeName:e.subjectAltName};return{key:oLl.crypto.createPublicKey(e.publicKey),identity:n}}});var Ubs=H($9t=>{"use strict";Object.defineProperty($9t,"__esModule",{value:!0});$9t.verifySubjectAlternativeName=fLl;$9t.verifyExtensions=ILl;var Jbs=bx();function fLl(e,t){if(t===void 0||!t.match(e))throw new Jbs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`certificate identity error - expected ${e}, got ${t}`})}function ILl(e,t={}){let r;for(r in e)if(t[r]!==e[r])throw new Jbs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`invalid certificate extension - expected ${r}=${e[r]}, got ${r}=${t[r]}`})}});var Kbs=H(gqr=>{"use strict";Object.defineProperty(gqr,"__esModule",{value:!0});gqr.verifyCheckpoint=CLl;var cqr=sW(),iZe=bx(),hLl=Iye(),aqr=` + +`,mLl=/\u2014 (\S+) (\S+)\n/g;function CLl(e,t){let r=(0,hLl.filterTLogAuthorities)(t,{targetDate:new Date(Number(e.integratedTime)*1e3)}),n=e.inclusionProof,a=lqr.fromString(n.checkpoint.envelope),o=uqr.fromString(a.note);if(!_Ll(a,r))throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid checkpoint signature"});if(!cqr.crypto.bufferEqual(o.logHash,n.rootHash))throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"root hash mismatch"})}function _Ll(e,t){let r=Buffer.from(e.note,"utf-8");return e.signatures.every(n=>{let a=t.find(o=>cqr.crypto.bufferEqual(o.logID.subarray(0,4),n.keyHint));return a?cqr.crypto.verify(r,a.publicKey,n.signature):!1})}var lqr=class e{constructor(t,r){this.note=t,this.signatures=r}static fromString(t){if(!t.includes(aqr))throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"missing checkpoint separator"});let r=t.indexOf(aqr),n=t.slice(0,r+1),o=t.slice(r+aqr.length).matchAll(mLl),l=Array.from(o,A=>{let[,f,I]=A,C=Buffer.from(I,"base64");if(C.length<5)throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"malformed checkpoint signature"});return{name:f,keyHint:C.subarray(0,4),signature:C.subarray(4)}});if(l.length===0)throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"no signatures found in checkpoint"});return new e(n,l)}},uqr=class e{constructor(t,r,n,a){this.origin=t,this.logSize=r,this.logHash=n,this.rest=a}static fromString(t){let r=t.trimEnd().split(` +`);if(r.length<3)throw new iZe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"too few lines in checkpoint header"});let n=r[0],a=BigInt(r[1]),o=Buffer.from(r[2],"base64"),l=r.slice(3);return new e(n,a,o,l)}}});var jbs=H(fqr=>{"use strict";Object.defineProperty(fqr,"__esModule",{value:!0});fqr.verifyMerkleInclusion=ELl;var pqr=sW(),Aqr=bx(),yLl=Buffer.from([0]),bLl=Buffer.from([1]);function ELl(e){let t=e.inclusionProof,r=BigInt(t.logIndex),n=BigInt(t.treeSize);if(r<0n||r>=n)throw new Aqr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:`invalid index: ${r}`});let{inner:a,border:o}=SLl(r,n);if(t.hashes.length!==a+o)throw new Aqr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid hash count"});let l=t.hashes.slice(0,a),A=t.hashes.slice(a),f=NLl(e.canonicalizedBody),I=BLl(vLl(f,l,r),A);if(!pqr.crypto.bufferEqual(I,t.rootHash))throw new Aqr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"calculated root hash does not match inclusion proof"})}function SLl(e,t){let r=wLl(e,t),n=TLl(e>>BigInt(r));return{inner:r,border:n}}function vLl(e,t,r){return t.reduce((n,a,o)=>r>>BigInt(o)&BigInt(1)?dqr(a,n):dqr(n,a),e)}function BLl(e,t){return t.reduce((r,n)=>dqr(n,r),e)}function wLl(e,t){return RLl(e^t-BigInt(1))}function TLl(e){return e.toString(2).split("1").length-1}function RLl(e){return e===0n?0:e.toString(2).length}function dqr(e,t){return pqr.crypto.digest("sha256",bLl,e,t)}function NLl(e){return pqr.crypto.digest("sha256",yLl,e)}});var qbs=H(Iqr=>{"use strict";Object.defineProperty(Iqr,"__esModule",{value:!0});Iqr.verifyTLogSET=xLl;var zbs=sW(),DLl=bx(),kLl=Iye();function xLl(e,t){if(!(0,kLl.filterTLogAuthorities)(t,{logID:e.logId.keyId,targetDate:new Date(Number(e.integratedTime)*1e3)}).some(a=>{let o=GLl(e),l=Buffer.from(zbs.json.canonicalize(o),"utf8"),A=e.inclusionPromise.signedEntryTimestamp;return zbs.crypto.verify(l,a.publicKey,A)}))throw new DLl.VerificationError({code:"TLOG_INCLUSION_PROMISE_ERROR",message:"inclusion promise could not be verified"})}function GLl(e){let{integratedTime:t,logIndex:r,logId:n,canonicalizedBody:a}=e;return{body:a.toString("base64"),integratedTime:Number(t),logIndex:Number(r),logID:n.keyId.toString("hex")}}});var eEs=H(mqr=>{"use strict";Object.defineProperty(mqr,"__esModule",{value:!0});mqr.verifyRFC3161Timestamp=LLl;var hqr=sW(),$bs=bx(),FLl=sqr(),ZLl=Iye();function LLl(e,t,r){let n=e.signingTime;if(r=(0,ZLl.filterCertAuthorities)(r,n),r=WLl(r,{serialNumber:e.signerSerialNumber,issuer:e.signerIssuer}),!r.some(o=>{try{return VLl(e,t,o),!0}catch{return!1}}))throw new $bs.VerificationError({code:"TIMESTAMP_ERROR",message:"timestamp could not be verified"})}function VLl(e,t,r){let[n,...a]=r.certChain,o=hqr.crypto.createPublicKey(n.publicKey),l=e.signingTime;try{new FLl.CertificateChainVerifier({untrustedCert:n,trustedCerts:a,timestamp:l}).verify()}catch{throw new $bs.VerificationError({code:"TIMESTAMP_ERROR",message:"invalid certificate chain"})}e.verify(t,o)}function WLl(e,t){return e.filter(r=>r.certChain.length>0&&hqr.crypto.bufferEqual(r.certChain[0].serialNumber,t.serialNumber)&&hqr.crypto.bufferEqual(r.certChain[0].issuer,t.issuer))}});var tEs=H(eVt=>{"use strict";Object.defineProperty(eVt,"__esModule",{value:!0});eVt.verifyTSATimestamp=QLl;eVt.verifyTLogTimestamp=XLl;var OLl=bx(),PLl=Kbs(),MLl=jbs(),HLl=qbs(),YLl=eEs();function QLl(e,t,r){return(0,YLl.verifyRFC3161Timestamp)(e,t,r),{type:"timestamp-authority",logID:e.signerSerialNumber,timestamp:e.signingTime}}function XLl(e,t){let r=!1;if(JLl(e)&&((0,HLl.verifyTLogSET)(e,t),r=!0),ULl(e)&&((0,MLl.verifyMerkleInclusion)(e),(0,PLl.verifyCheckpoint)(e,t),r=!0),!r)throw new OLl.VerificationError({code:"TLOG_MISSING_INCLUSION_ERROR",message:"inclusion could not be verified"});return{type:"transparency-log",logID:e.logId.keyId,timestamp:new Date(Number(e.integratedTime)*1e3)}}function JLl(e){return e.inclusionPromise!==void 0}function ULl(e){return e.inclusionProof!==void 0}});var rEs=H(Cqr=>{"use strict";Object.defineProperty(Cqr,"__esModule",{value:!0});Cqr.verifyDSSETLogBody=KLl;var tVt=bx();function KLl(e,t){switch(e.apiVersion){case"0.0.1":return jLl(e,t);default:throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported dsse version: ${e.apiVersion}`})}}function jLl(e,t){if(e.spec.signatures?.length!==1)throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=e.spec.signatures[0].signature;if(!t.compareSignature(Buffer.from(r,"base64")))throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new tVt.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}});var nEs=H(yqr=>{"use strict";Object.defineProperty(yqr,"__esModule",{value:!0});yqr.verifyHashedRekordTLogBody=zLl;var _qr=bx();function zLl(e,t){switch(e.apiVersion){case"0.0.1":return qLl(e,t);default:throw new _qr.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported hashedrekord version: ${e.apiVersion}`})}}function qLl(e,t){let r=e.spec.signature.content||"";if(!t.compareSignature(Buffer.from(r,"base64")))throw new _qr.VerificationError({code:"TLOG_BODY_ERROR",message:"signature mismatch"});let n=e.spec.data.hash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new _qr.VerificationError({code:"TLOG_BODY_ERROR",message:"digest mismatch"})}});var iEs=H(bqr=>{"use strict";Object.defineProperty(bqr,"__esModule",{value:!0});bqr.verifyIntotoTLogBody=$Ll;var rVt=bx();function $Ll(e,t){switch(e.apiVersion){case"0.0.2":return e9l(e,t);default:throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported intoto version: ${e.apiVersion}`})}}function e9l(e,t){if(e.spec.content.envelope.signatures?.length!==1)throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=t9l(e.spec.content.envelope.signatures[0].sig);if(!t.compareSignature(Buffer.from(r,"base64")))throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.content.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new rVt.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}function t9l(e){return Buffer.from(e,"base64").toString("utf-8")}});var oEs=H(Eqr=>{"use strict";Object.defineProperty(Eqr,"__esModule",{value:!0});Eqr.verifyTLogBody=s9l;var sEs=bx(),r9l=rEs(),n9l=nEs(),i9l=iEs();function s9l(e,t){let{kind:r,version:n}=e.kindVersion,a=JSON.parse(e.canonicalizedBody.toString("utf8"));if(r!==a.kind||n!==a.apiVersion)throw new sEs.VerificationError({code:"TLOG_BODY_ERROR",message:`kind/version mismatch - expected: ${r}/${n}, received: ${a.kind}/${a.apiVersion}`});switch(a.kind){case"dsse":return(0,r9l.verifyDSSETLogBody)(a,t);case"intoto":return(0,i9l.verifyIntotoTLogBody)(a,t);case"hashedrekord":return(0,n9l.verifyHashedRekordTLogBody)(a,t);default:throw new sEs.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported kind: ${r}`})}}});var gEs=H(nVt=>{"use strict";Object.defineProperty(nVt,"__esModule",{value:!0});nVt.Verifier=void 0;var o9l=Et("util"),sZe=bx(),aEs=Xbs(),cEs=Ubs(),lEs=tEs(),a9l=oEs(),Sqr=class{constructor(t,r={}){this.trustMaterial=t,this.options={ctlogThreshold:r.ctlogThreshold??1,tlogThreshold:r.tlogThreshold??1,tsaThreshold:r.tsaThreshold??0}}verify(t,r){let n=this.verifyTimestamps(t),a=this.verifySigningKey(t,n);return this.verifyTLogs(t),this.verifySignature(t,a),r&&this.verifyPolicy(r,a.identity||{}),a}verifyTimestamps(t){let r=0,n=0,a=t.timestamps.map(o=>{switch(o.$case){case"timestamp-authority":return n++,(0,lEs.verifyTSATimestamp)(o.timestamp,t.signature.signature,this.trustMaterial.timestampAuthorities);case"transparency-log":return r++,(0,lEs.verifyTLogTimestamp)(o.tlogEntry,this.trustMaterial.tlogs)}});if(uEs(a))throw new sZe.VerificationError({code:"TIMESTAMP_ERROR",message:"duplicate timestamp"});if(ro.timestamp)}verifySigningKey({key:t},r){switch(t.$case){case"public-key":return(0,aEs.verifyPublicKey)(t.hint,r,this.trustMaterial);case"certificate":{let n=(0,aEs.verifyCertificate)(t.certificate,r,this.trustMaterial);if(uEs(n.scts))throw new sZe.VerificationError({code:"CERTIFICATE_ERROR",message:"duplicate SCT"});if(n.scts.length(0,a9l.verifyTLogBody)(n,t))}verifySignature(t,r){if(!t.signature.verifySignature(r.key))throw new sZe.VerificationError({code:"SIGNATURE_ERROR",message:"signature verification failed"})}verifyPolicy(t,r){t.subjectAlternativeName&&(0,cEs.verifySubjectAlternativeName)(t.subjectAlternativeName,r.subjectAlternativeName),t.extensions&&(0,cEs.verifyExtensions)(t.extensions,r.extensions)}};nVt.Verifier=Sqr;function uEs(e){for(let t=0;t{"use strict";Object.defineProperty(gY,"__esModule",{value:!0});gY.Verifier=gY.toTrustMaterial=gY.VerificationError=gY.PolicyError=gY.toSignedEntity=void 0;var c9l=Obs();Object.defineProperty(gY,"toSignedEntity",{enumerable:!0,get:function(){return c9l.toSignedEntity}});var AEs=bx();Object.defineProperty(gY,"PolicyError",{enumerable:!0,get:function(){return AEs.PolicyError}});Object.defineProperty(gY,"VerificationError",{enumerable:!0,get:function(){return AEs.VerificationError}});var l9l=Iye();Object.defineProperty(gY,"toTrustMaterial",{enumerable:!0,get:function(){return l9l.toTrustMaterial}});var u9l=gEs();Object.defineProperty(gY,"Verifier",{enumerable:!0,get:function(){return u9l.Verifier}})});var dEs=H(vL=>{"use strict";Object.defineProperty(vL,"__esModule",{value:!0});vL.DEFAULT_TIMEOUT=vL.DEFAULT_RETRY=void 0;vL.createBundleBuilder=d9l;vL.createKeyFinder=p9l;vL.createVerificationPolicy=f9l;var g9l=sW(),oZe=L7r(),A9l=iVt();vL.DEFAULT_RETRY={retries:2};vL.DEFAULT_TIMEOUT=5e3;function d9l(e,t){let r={signer:I9l(t),witnesses:m9l(t)};switch(e){case"messageSignature":return new oZe.MessageSignatureBundleBuilder(r);case"dsseEnvelope":return new oZe.DSSEBundleBuilder({...r,certificateChain:t.legacyCompatibility})}}function p9l(e){return t=>{let r=e(t);if(!r)throw new A9l.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:g9l.crypto.createPublicKey(r),validFor:()=>!0}}}function f9l(e){let t={},r=e.certificateIdentityEmail||e.certificateIdentityURI;return r&&(t.subjectAlternativeName=r),e.certificateIssuer&&(t.extensions={issuer:e.certificateIssuer}),t}function I9l(e){return new oZe.FulcioSigner({fulcioBaseURL:e.fulcioURL,identityProvider:e.identityProvider||h9l(e),retry:e.retry??vL.DEFAULT_RETRY,timeout:e.timeout??vL.DEFAULT_TIMEOUT})}function h9l(e){let t=e.identityToken;return t?{getToken:()=>Promise.resolve(t)}:new oZe.CIContextProvider("sigstore")}function m9l(e){let t=[];return C9l(e)&&t.push(new oZe.RekorWitness({rekorBaseURL:e.rekorURL,entryType:e.legacyCompatibility?"intoto":"dsse",fetchOnConflict:!1,retry:e.retry??vL.DEFAULT_RETRY,timeout:e.timeout??vL.DEFAULT_TIMEOUT})),_9l(e)&&t.push(new oZe.TSAWitness({tsaBaseURL:e.tsaServerURL,retry:e.retry??vL.DEFAULT_RETRY,timeout:e.timeout??vL.DEFAULT_TIMEOUT})),t}function C9l(e){return e.tlogUpload!==!1}function _9l(e){return e.tsaServerURL!==void 0}});var IEs=H(AY=>{"use strict";var y9l=AY&&AY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),b9l=AY&&AY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pEs=AY&&AY.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aa.verify(e,n))}async function fEs(e={}){let t=await E9l.getTrustedRoot({mirrorURL:e.tufMirrorURL,rootPath:e.tufRootPath,cachePath:e.tufCachePath,forceCache:e.tufForceCache,retry:e.retry??aZe.DEFAULT_RETRY,timeout:e.timeout??aZe.DEFAULT_TIMEOUT}),r=e.keySelector?aZe.createKeyFinder(e.keySelector):void 0,n=(0,vqr.toTrustMaterial)(t,r),a={ctlogThreshold:e.ctLogThreshold,tlogThreshold:e.tlogThreshold},o=new vqr.Verifier(n,a),l=aZe.createVerificationPolicy(e);return{verify:(A,f)=>{let I=(0,Bqr.bundleFromJSON)(A),C=(0,vqr.toSignedEntity)(I,f);o.verify(C,l)}}}});var mEs=H(X2=>{"use strict";Object.defineProperty(X2,"__esModule",{value:!0});X2.verify=X2.sign=X2.createVerifier=X2.attest=X2.VerificationError=X2.PolicyError=X2.TUFError=X2.InternalError=X2.DEFAULT_REKOR_URL=X2.DEFAULT_FULCIO_URL=X2.ValidationError=void 0;var w9l=Q7e();Object.defineProperty(X2,"ValidationError",{enumerable:!0,get:function(){return w9l.ValidationError}});var wqr=L7r();Object.defineProperty(X2,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return wqr.DEFAULT_FULCIO_URL}});Object.defineProperty(X2,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return wqr.DEFAULT_REKOR_URL}});Object.defineProperty(X2,"InternalError",{enumerable:!0,get:function(){return wqr.InternalError}});var T9l=Y9t();Object.defineProperty(X2,"TUFError",{enumerable:!0,get:function(){return T9l.TUFError}});var hEs=iVt();Object.defineProperty(X2,"PolicyError",{enumerable:!0,get:function(){return hEs.PolicyError}});Object.defineProperty(X2,"VerificationError",{enumerable:!0,get:function(){return hEs.VerificationError}});var sVt=IEs();Object.defineProperty(X2,"attest",{enumerable:!0,get:function(){return sVt.attest}});Object.defineProperty(X2,"createVerifier",{enumerable:!0,get:function(){return sVt.createVerifier}});Object.defineProperty(X2,"sign",{enumerable:!0,get:function(){return sVt.sign}});Object.defineProperty(X2,"verify",{enumerable:!0,get:function(){return sVt.verify}})});var CEs=H(oVt=>{"use strict";Object.defineProperty(oVt,"__esModule",{value:!0});oVt.generateProvenance=void 0;var R9l=(Wa(),vi(Va)),cZe=wn(),N9l=R9l.__importStar(mEs()),{env:zc}=process,D9l="application/vnd.in-toto+json",k9l="https://in-toto.io/Statement/v0.1",x9l="https://in-toto.io/Statement/v1",G9l="https://slsa.dev/provenance/v0.2",F9l="https://slsa.dev/provenance/v1",Z9l="https://github.com/actions/runner",L9l="https://slsa-framework.github.io/github-actions-buildtypes/workflow/v1",V9l="https://github.com/npm/cli/gitlab",W9l="v0alpha1",O9l=async(e,t)=>{let r;if(zc.GITHUB_ACTIONS){if(!zc.ACTIONS_ID_TOKEN_REQUEST_URL)throw new cZe.ReportError(cZe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,'Provenance generation in GitHub Actions requires "write" access to the "id-token" permission');let n=(zc.GITHUB_WORKFLOW_REF||"").replace(`${zc.GITHUB_REPOSITORY}/`,""),a=n.indexOf("@"),o=n.slice(0,a),l=n.slice(a+1);r={_type:x9l,subject:e,predicateType:F9l,predicate:{buildDefinition:{buildType:L9l,externalParameters:{workflow:{ref:l,repository:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}`,path:o}},internalParameters:{github:{event_name:zc.GITHUB_EVENT_NAME,repository_id:zc.GITHUB_REPOSITORY_ID,repository_owner_id:zc.GITHUB_REPOSITORY_OWNER_ID}},resolvedDependencies:[{uri:`git+${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}@${zc.GITHUB_REF}`,digest:{gitCommit:zc.GITHUB_SHA}}]},runDetails:{builder:{id:`${Z9l}/${zc.RUNNER_ENVIRONMENT}`},metadata:{invocationId:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}/actions/runs/${zc.GITHUB_RUN_ID}/attempts/${zc.GITHUB_RUN_ATTEMPT}`}}}}}else if(zc.GITLAB_CI){if(!zc.SIGSTORE_ID_TOKEN)throw new cZe.ReportError(cZe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,`Provenance generation in GitLab CI requires "SIGSTORE_ID_TOKEN" with "sigstore" audience to be present in "id_tokens". For more info see: +https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html`);r={_type:k9l,subject:e,predicateType:G9l,predicate:{buildType:`${V9l}/${W9l}`,builder:{id:`${zc.CI_PROJECT_URL}/-/runners/${zc.CI_RUNNER_ID}`},invocation:{configSource:{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA},entryPoint:zc.CI_JOB_NAME},parameters:{CI:zc.CI,CI_API_GRAPHQL_URL:zc.CI_API_GRAPHQL_URL,CI_API_V4_URL:zc.CI_API_V4_URL,CI_BUILD_BEFORE_SHA:zc.CI_BUILD_BEFORE_SHA,CI_BUILD_ID:zc.CI_BUILD_ID,CI_BUILD_NAME:zc.CI_BUILD_NAME,CI_BUILD_REF:zc.CI_BUILD_REF,CI_BUILD_REF_NAME:zc.CI_BUILD_REF_NAME,CI_BUILD_REF_SLUG:zc.CI_BUILD_REF_SLUG,CI_BUILD_STAGE:zc.CI_BUILD_STAGE,CI_COMMIT_BEFORE_SHA:zc.CI_COMMIT_BEFORE_SHA,CI_COMMIT_BRANCH:zc.CI_COMMIT_BRANCH,CI_COMMIT_REF_NAME:zc.CI_COMMIT_REF_NAME,CI_COMMIT_REF_PROTECTED:zc.CI_COMMIT_REF_PROTECTED,CI_COMMIT_REF_SLUG:zc.CI_COMMIT_REF_SLUG,CI_COMMIT_SHA:zc.CI_COMMIT_SHA,CI_COMMIT_SHORT_SHA:zc.CI_COMMIT_SHORT_SHA,CI_COMMIT_TIMESTAMP:zc.CI_COMMIT_TIMESTAMP,CI_COMMIT_TITLE:zc.CI_COMMIT_TITLE,CI_CONFIG_PATH:zc.CI_CONFIG_PATH,CI_DEFAULT_BRANCH:zc.CI_DEFAULT_BRANCH,CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_SERVER:zc.CI_DEPENDENCY_PROXY_SERVER,CI_DEPENDENCY_PROXY_USER:zc.CI_DEPENDENCY_PROXY_USER,CI_JOB_ID:zc.CI_JOB_ID,CI_JOB_NAME:zc.CI_JOB_NAME,CI_JOB_NAME_SLUG:zc.CI_JOB_NAME_SLUG,CI_JOB_STAGE:zc.CI_JOB_STAGE,CI_JOB_STARTED_AT:zc.CI_JOB_STARTED_AT,CI_JOB_URL:zc.CI_JOB_URL,CI_NODE_TOTAL:zc.CI_NODE_TOTAL,CI_PAGES_DOMAIN:zc.CI_PAGES_DOMAIN,CI_PAGES_URL:zc.CI_PAGES_URL,CI_PIPELINE_CREATED_AT:zc.CI_PIPELINE_CREATED_AT,CI_PIPELINE_ID:zc.CI_PIPELINE_ID,CI_PIPELINE_IID:zc.CI_PIPELINE_IID,CI_PIPELINE_SOURCE:zc.CI_PIPELINE_SOURCE,CI_PIPELINE_URL:zc.CI_PIPELINE_URL,CI_PROJECT_CLASSIFICATION_LABEL:zc.CI_PROJECT_CLASSIFICATION_LABEL,CI_PROJECT_DESCRIPTION:zc.CI_PROJECT_DESCRIPTION,CI_PROJECT_ID:zc.CI_PROJECT_ID,CI_PROJECT_NAME:zc.CI_PROJECT_NAME,CI_PROJECT_NAMESPACE:zc.CI_PROJECT_NAMESPACE,CI_PROJECT_NAMESPACE_ID:zc.CI_PROJECT_NAMESPACE_ID,CI_PROJECT_PATH:zc.CI_PROJECT_PATH,CI_PROJECT_PATH_SLUG:zc.CI_PROJECT_PATH_SLUG,CI_PROJECT_REPOSITORY_LANGUAGES:zc.CI_PROJECT_REPOSITORY_LANGUAGES,CI_PROJECT_ROOT_NAMESPACE:zc.CI_PROJECT_ROOT_NAMESPACE,CI_PROJECT_TITLE:zc.CI_PROJECT_TITLE,CI_PROJECT_URL:zc.CI_PROJECT_URL,CI_PROJECT_VISIBILITY:zc.CI_PROJECT_VISIBILITY,CI_REGISTRY:zc.CI_REGISTRY,CI_REGISTRY_IMAGE:zc.CI_REGISTRY_IMAGE,CI_REGISTRY_USER:zc.CI_REGISTRY_USER,CI_RUNNER_DESCRIPTION:zc.CI_RUNNER_DESCRIPTION,CI_RUNNER_ID:zc.CI_RUNNER_ID,CI_RUNNER_TAGS:zc.CI_RUNNER_TAGS,CI_SERVER_HOST:zc.CI_SERVER_HOST,CI_SERVER_NAME:zc.CI_SERVER_NAME,CI_SERVER_PORT:zc.CI_SERVER_PORT,CI_SERVER_PROTOCOL:zc.CI_SERVER_PROTOCOL,CI_SERVER_REVISION:zc.CI_SERVER_REVISION,CI_SERVER_SHELL_SSH_HOST:zc.CI_SERVER_SHELL_SSH_HOST,CI_SERVER_SHELL_SSH_PORT:zc.CI_SERVER_SHELL_SSH_PORT,CI_SERVER_URL:zc.CI_SERVER_URL,CI_SERVER_VERSION:zc.CI_SERVER_VERSION,CI_SERVER_VERSION_MAJOR:zc.CI_SERVER_VERSION_MAJOR,CI_SERVER_VERSION_MINOR:zc.CI_SERVER_VERSION_MINOR,CI_SERVER_VERSION_PATCH:zc.CI_SERVER_VERSION_PATCH,CI_TEMPLATE_REGISTRY_HOST:zc.CI_TEMPLATE_REGISTRY_HOST,GITLAB_CI:zc.GITLAB_CI,GITLAB_FEATURES:zc.GITLAB_FEATURES,GITLAB_USER_ID:zc.GITLAB_USER_ID,GITLAB_USER_LOGIN:zc.GITLAB_USER_LOGIN,RUNNER_GENERATE_ARTIFACTS_METADATA:zc.RUNNER_GENERATE_ARTIFACTS_METADATA},environment:{name:zc.CI_RUNNER_DESCRIPTION,architecture:zc.CI_RUNNER_EXECUTABLE_ARCH,server:zc.CI_SERVER_URL,project:zc.CI_PROJECT_PATH,job:{id:zc.CI_JOB_ID},pipeline:{id:zc.CI_PIPELINE_ID,ref:zc.CI_CONFIG_PATH}}},metadata:{buildInvocationId:`${zc.CI_JOB_URL}`,completeness:{parameters:!0,environment:!0,materials:!1},reproducible:!1},materials:[{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA}}]}}}else throw new cZe.ReportError(cZe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,"Provenance generation is only supported in GitHub Actions and GitLab CI");return N9l.attest(Buffer.from(JSON.stringify(r)),D9l,t)};oVt.generateProvenance=O9l});var SEs=H(lZe=>{"use strict";Object.defineProperty(lZe,"__esModule",{value:!0});lZe.makePublishBody=J9l;lZe.getGitHead=U9l;lZe.getPublishAccess=bEs;lZe.getReadmeContent=EEs;var P9l=(Wa(),vi(Va)),M9l=wn(),yEs=wn(),_Es=No(),H9l=hme(),Y9l=P9l.__importDefault(cre()),Q9l=N0e(),X9l=CEs();async function J9l(e,t,{access:r,tag:n,registry:a,gitHead:o,provenance:l}){let A=e.manifest.name,f=e.manifest.version,I=yEs.structUtils.stringifyIdent(A),C=Y9l.default.fromData(t,{algorithms:["sha1","sha512"]}),b=r??bEs(e,A),E=await EEs(e),N=await H9l.packUtils.genPackageManifest(e),B=`${I}-${f}.tgz`,F=new URL(`${(0,Q9l.normalizeRegistry)(a)}/${I}/-/${B}`),Q={[B]:{content_type:"application/octet-stream",data:t.toString("base64"),length:t.length}};if(l){let J={name:`pkg:npm/${I.replace(/^@/,"%40")}@${f}`,digest:{sha512:C.sha512[0].hexDigest()}},ae=await(0,X9l.generateProvenance)([J]),ne=JSON.stringify(ae);Q[`${I}-${f}.sigstore`]={content_type:ae.mediaType,data:ne,length:ne.length}}return{_id:I,_attachments:Q,name:I,access:b,"dist-tags":{[n]:f},versions:{[f]:{...N,_id:`${I}@${f}`,name:I,version:f,gitHead:o,dist:{shasum:C.sha1[0].hexDigest(),integrity:C.sha512[0].toString(),tarball:F.toString()}}},readme:E}}async function U9l(e){try{let{stdout:t}=await M9l.execUtils.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:e});return t.trim()===""?void 0:t.trim()}catch{return}}function bEs(e,t){let r=e.project.configuration;return e.manifest.publishConfig&&typeof e.manifest.publishConfig.access=="string"?e.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):t.scope?"restricted":"public"}async function EEs(e){let t=_Es.npath.toPortablePath(`${e.cwd}/README.md`),r=e.manifest.name,a=`# ${yEs.structUtils.stringifyIdent(r)} +`;try{a=await _Es.xfs.readFilePromise(t,"utf8")}catch(o){if(o.code==="ENOENT")return a;throw o}return a}});var CJ=H(zR=>{"use strict";Object.defineProperty(zR,"__esModule",{value:!0});zR.NpmTagResolver=zR.NpmSemverResolver=zR.NpmSemverFetcher=zR.NpmRemapResolver=zR.NpmHttpFetcher=zR.npmPublishUtils=zR.npmHttpUtils=zR.npmConfigUtils=void 0;var Rqr=(Wa(),vi(Va)),s3=wn(),BEs=zds();Object.defineProperty(zR,"NpmHttpFetcher",{enumerable:!0,get:function(){return BEs.NpmHttpFetcher}});var wEs=qds();Object.defineProperty(zR,"NpmRemapResolver",{enumerable:!0,get:function(){return wEs.NpmRemapResolver}});var TEs=pFt();Object.defineProperty(zR,"NpmSemverFetcher",{enumerable:!0,get:function(){return TEs.NpmSemverFetcher}});var REs=ips();Object.defineProperty(zR,"NpmSemverResolver",{enumerable:!0,get:function(){return REs.NpmSemverResolver}});var NEs=aps();Object.defineProperty(zR,"NpmTagResolver",{enumerable:!0,get:function(){return NEs.NpmTagResolver}});var DEs=Rqr.__importStar(N0e());zR.npmConfigUtils=DEs;var K9l=Rqr.__importStar(JGe());zR.npmHttpUtils=K9l;var j9l=Rqr.__importStar(SEs());zR.npmPublishUtils=j9l;var Tqr={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:s3.SettingsType.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:s3.SettingsType.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:s3.SettingsType.SECRET,default:null}},vEs={npmAuditRegistry:{description:"Registry to query for audit reports",type:s3.SettingsType.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:s3.SettingsType.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:s3.SettingsType.STRING,default:"https://registry.yarnpkg.com"}},z9l={npmMinimalAgeGate:{description:"Minimum age of a package version according to the publish date on the npm registry to be considered for installation",type:s3.SettingsType.DURATION,unit:s3.DurationUnit.MINUTES,default:"0m"},npmPreapprovedPackages:{description:"Array of package descriptors or package name glob patterns to exclude from the minimum release age check",type:s3.SettingsType.STRING,isArray:!0,default:[]}},q9l={configuration:{...Tqr,...vEs,...z9l,npmScopes:{description:"Settings per package scope",type:s3.SettingsType.MAP,valueDefinition:{description:"",type:s3.SettingsType.SHAPE,properties:{...Tqr,...vEs}}},npmRegistries:{description:"Settings per registry",type:s3.SettingsType.MAP,normalizeKeys:DEs.normalizeRegistry,valueDefinition:{description:"",type:s3.SettingsType.SHAPE,properties:{...Tqr}}}},fetchers:[BEs.NpmHttpFetcher,TEs.NpmSemverFetcher],resolvers:[wEs.NpmRemapResolver,REs.NpmSemverResolver,NEs.NpmTagResolver]};zR.default=q9l});var aVt=H(uZe=>{"use strict";Object.defineProperty(uZe,"__esModule",{value:!0});uZe.Severity=uZe.Environment=void 0;var kEs;(function(e){e.All="all",e.Production="production",e.Development="development"})(kEs||(uZe.Environment=kEs={}));var xEs;(function(e){e.Info="info",e.Low="low",e.Moderate="moderate",e.High="high",e.Critical="critical"})(xEs||(uZe.Severity=xEs={}))});var Nqr=H(_J=>{"use strict";Object.defineProperty(_J,"__esModule",{value:!0});_J.allSeverities=void 0;_J.getSeverityInclusions=eVl;_J.getReportTree=tVl;_J.getTopLevelDependencies=rVl;_J.getPackages=nVl;var GEs=(Wa(),vi(Va)),KE=wn(),$9l=GEs.__importDefault(zC()),Rre=GEs.__importStar(aVt());_J.allSeverities=[Rre.Severity.Info,Rre.Severity.Low,Rre.Severity.Moderate,Rre.Severity.High,Rre.Severity.Critical];function eVl(e){if(typeof e>"u")return new Set(_J.allSeverities);let t=_J.allSeverities.indexOf(e),r=_J.allSeverities.slice(t);return new Set(r)}function tVl(e){let t={},r={children:t};for(let[n,a]of KE.miscUtils.sortMap(Object.entries(e),o=>o[0]))for(let o of KE.miscUtils.sortMap(a,l=>`${l.id}`))t[`${n}/${o.id}`]={value:KE.formatUtils.tuple(KE.formatUtils.Type.IDENT,KE.structUtils.parseIdent(n)),children:{ID:typeof o.id<"u"&&{label:"ID",value:KE.formatUtils.tuple(KE.formatUtils.Type.ID,o.id)},Issue:{label:"Issue",value:KE.formatUtils.tuple(KE.formatUtils.Type.NO_HINT,o.title)},URL:typeof o.url<"u"&&{label:"URL",value:KE.formatUtils.tuple(KE.formatUtils.Type.URL,o.url)},Severity:{label:"Severity",value:KE.formatUtils.tuple(KE.formatUtils.Type.NO_HINT,o.severity)},"Vulnerable Versions":{label:"Vulnerable Versions",value:KE.formatUtils.tuple(KE.formatUtils.Type.RANGE,o.vulnerable_versions)},"Tree Versions":{label:"Tree Versions",children:[...o.versions].sort($9l.default.compare).map(l=>({value:KE.formatUtils.tuple(KE.formatUtils.Type.REFERENCE,l)}))},Dependents:{label:"Dependents",children:KE.miscUtils.sortMap(o.dependents,l=>KE.structUtils.stringifyLocator(l)).map(l=>({value:KE.formatUtils.tuple(KE.formatUtils.Type.LOCATOR,l)}))}}};return r}function rVl(e,t,{all:r,environment:n}){let a=[],o=r?e.workspaces:[t],l=[Rre.Environment.All,Rre.Environment.Production].includes(n),A=[Rre.Environment.All,Rre.Environment.Development].includes(n);for(let f of o)for(let I of f.anchoredPackage.dependencies.values())(f.manifest.devDependencies.has(I.identHash)?!A:!l)||a.push({workspace:f,dependency:I});return a}function nVl(e,t,{recursive:r}){let n=new Map,a=new Set,o=[],l=e.configuration.makeResolver(),A={project:e,resolver:l},f=(I,C)=>{let b=e.storedResolutions.get(C.descriptorHash);if(typeof b>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(b))a.add(b);else return;let E=e.storedPackages.get(b);if(typeof E>"u")throw new Error("Assertion failed: The package should have been registered");let N=KE.structUtils.ensureDevirtualizedDescriptor(C);if(l.supportsDescriptor(N,A)){let F=l.getResolutionDependencies(N,A);if(Object.keys(F).length>0)for(let Q of Object.values(F))f(I,Q)}if(KE.structUtils.ensureDevirtualizedLocator(E).reference.startsWith("npm:")&&E.version!==null){let F=KE.structUtils.stringifyIdent(E),Q=KE.miscUtils.getMapWithDefault(n,F);KE.miscUtils.getArrayWithDefault(Q,E.version).push(I)}if(r)for(let F of E.dependencies.values())o.push([E,F])};for(let{workspace:I,dependency:C}of t)o.push([I.anchoredLocator,C]);for(;o.length>0;){let[I,C]=o.shift();f(I,C)}return n}});var VEs=H(Dqr=>{"use strict";Object.defineProperty(Dqr,"__esModule",{value:!0});var lVt=(Wa(),vi(Va)),FEs=sl(),i7=wn(),iVl=wn(),cVt=CJ(),Nre=(vl(),vi(ng)),ZEs=lVt.__importDefault(Rk()),LEs=lVt.__importStar((BZ(),vi(vZ))),dqe=lVt.__importStar(aVt()),pqe=lVt.__importStar(Nqr()),fqe=class extends FEs.BaseCommand{constructor(){super(...arguments),this.all=Nre.Option.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"}),this.recursive=Nre.Option.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"}),this.environment=Nre.Option.String("--environment",dqe.Environment.All,{description:"Which environments to cover",validator:LEs.isEnum(dqe.Environment)}),this.json=Nre.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.noDeprecations=Nre.Option.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"}),this.severity=Nre.Option.String("--severity",dqe.Severity.Info,{description:"Minimal severity requested for packages to be displayed",validator:LEs.isEnum(dqe.Severity)}),this.excludes=Nre.Option.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"}),this.ignores=Nre.Option.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let t=await i7.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await i7.Project.find(t,this.context.cwd);if(!n)throw new FEs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=pqe.getTopLevelDependencies(r,n,{all:this.all,environment:this.environment}),o=pqe.getPackages(r,a,{recursive:this.recursive}),l=Array.from(new Set([...t.get("npmAuditExcludePackages"),...this.excludes])),A=Object.create(null);for(let[F,Q]of o)l.some(J=>ZEs.default.isMatch(F,J))||(A[F]=[...Q.keys()]);let f=cVt.npmConfigUtils.getAuditRegistry({configuration:t}),I,C=await i7.LightReport.start({configuration:t,stdout:this.context.stdout},async()=>{let F=cVt.npmHttpUtils.post("/-/npm/v1/security/advisories/bulk",A,{authType:cVt.npmHttpUtils.AuthType.BEST_EFFORT,configuration:t,jsonResponse:!0,registry:f}),Q=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(A),async([ae,ne])=>{let ce=await cVt.npmHttpUtils.getPackageMetadata(iVl.structUtils.parseIdent(ae),{project:r});return i7.miscUtils.mapAndFilter(ne,fe=>{let{deprecated:ue}=ce.versions[fe];return ue?[ae,fe,ue]:i7.miscUtils.mapAndFilter.skip})})),J=await F;for(let[ae,ne,ce]of Q.flat(1))Object.hasOwn(J,ae)&&J[ae].some(fe=>i7.semverUtils.satisfiesWithPrereleases(ne,fe.vulnerable_versions))||(J[ae]??=[],J[ae].push({id:`${ae} (deprecation)`,title:(typeof ce=="string"?ce:"").trim()||"This package has been deprecated.",severity:dqe.Severity.Moderate,vulnerable_versions:ne}));I=J});if(C.hasErrors())return C.exitCode();let b=pqe.getSeverityInclusions(this.severity),E=Array.from(new Set([...t.get("npmAuditIgnoreAdvisories"),...this.ignores])),N=Object.create(null);for(let[F,Q]of Object.entries(I)){let J=Q.filter(ae=>!ZEs.default.isMatch(`${ae.id}`,E)&&b.has(ae.severity));J.length>0&&(N[F]=J.map(ae=>{let ne=o.get(F);if(typeof ne>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let ce=[...ne.keys()].filter(ue=>i7.semverUtils.satisfiesWithPrereleases(ue,ae.vulnerable_versions)),fe=new Map;for(let ue of ce)for(let de of ne.get(ue))fe.set(de.locatorHash,de);return{...ae,versions:ce,dependents:[...fe.values()]}}))}let B=Object.keys(N).length>0;return B?(i7.treeUtils.emitTree(pqe.getReportTree(N),{configuration:t,json:this.json,stdout:this.context.stdout,separators:2}),1):(await i7.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async F=>{F.reportInfo(i7.MessageName.EXCEPTION,"No audit suggestions")}),B?1:0)}};fqe.paths=[["npm","audit"]];fqe.usage=Nre.Command.Usage({description:"perform a vulnerability audit against the installed packages",details:` This command checks for known security reports on the packages you use. The reports are by default extracted from the npm registry, and may or may not be relevant to your actual program (not all vulnerabilities affect all code paths). For consistency with our other commands the default is to only check the direct dependencies for the active workspace. To extend this search to all workspaces, use \`-A,--all\`. To extend this search to both direct and transitive dependencies, use \`-R,--recursive\`. - Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${fqe.allSeverities.map(e=>`\`${e}\``).join(", ")}. + Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${pqe.allSeverities.map(e=>`\`${e}\``).join(", ")}. If the \`--json\` flag is set, Yarn will print the output exactly as received from the registry. Regardless of this flag, the process will exit with a non-zero exit code if a report is found for the selected packages. @@ -1774,39 +1774,38 @@ https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html`);r={_type:FL If particular advisories are needed to be ignored, the \`--ignore\` flag can be used with Advisory ID's to ignore any number of advisories in the audit report. This can also be set in the configuration file with the \`npmAuditIgnoreAdvisories\` option. To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why package\` to get more information as to who depends on them. - `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});vqr.default=Iqe});var OEs=H(Rqr=>{"use strict";Object.defineProperty(Rqr,"__esModule",{value:!0});var c9l=(Wa(),vi(Va)),l9l=dl(),_J=mn(),hqe=mn(),Bqr=Io(),wqr=mJ(),mqe=(Rl(),vi(ng)),VEs=c9l.__importDefault(jC()),WEs=Et("util"),Cqe=class extends l9l.BaseCommand{constructor(){super(...arguments),this.fields=mqe.Option.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"}),this.json=mqe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.packages=mqe.Option.Rest()}async execute(){let t=await _J.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await _J.Project.find(t,this.context.cwd),n=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,a=[],o=!1,l=await hqe.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async A=>{for(let f of this.packages){let I;if(f==="."){let ne=r.topLevelWorkspace;if(!ne.manifest.name)throw new mqe.UsageError(`Missing ${_J.formatUtils.pretty(t,"name",_J.formatUtils.Type.CODE)} field in ${Bqr.npath.fromPortablePath(Bqr.ppath.join(ne.cwd,Bqr.Filename.manifest))}`);I=_J.structUtils.makeDescriptor(ne.manifest.name,"unknown")}else I=_J.structUtils.parseDescriptor(f);let C=wqr.npmHttpUtils.getIdentUrl(I),b=Tqr(await wqr.npmHttpUtils.get(C,{configuration:t,ident:I,jsonResponse:!0,customErrorMessage:wqr.npmHttpUtils.customPackageError})),E=Object.keys(b.versions).sort(VEs.default.compareLoose),B=b["dist-tags"].latest||E[E.length-1],F=hqe.semverUtils.validRange(I.range);if(F){let ne=VEs.default.maxSatisfying(E,F);ne!==null?B=ne:(A.reportWarning(hqe.MessageName.UNNAMED,`Unmet range ${_J.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0)}else Object.hasOwn(b["dist-tags"],I.range)?B=b["dist-tags"][I.range]:I.range!=="unknown"&&(A.reportWarning(hqe.MessageName.UNNAMED,`Unknown tag ${_J.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0);let Q=b.versions[B],J={...b,...Q,version:B,versions:E},ae;if(n!==null){ae={};for(let ne of n){let ce=J[ne];if(typeof ce<"u")ae[ne]=ce;else{A.reportWarning(hqe.MessageName.EXCEPTION,`The ${_J.formatUtils.pretty(t,ne,_J.formatUtils.Type.CODE)} field doesn't exist inside ${_J.structUtils.prettyIdent(t,I)}'s information`),o=!0;continue}}}else this.json||(delete J.dist,delete J.readme,delete J.users),ae=J;A.reportJson(ae),this.json||a.push(ae)}});WEs.inspect.styles.name="cyan";for(let A of a)(A!==a[0]||o)&&this.context.stdout.write(` -`),this.context.stdout.write(`${(0,WEs.inspect)(A,{depth:1/0,colors:!0,compact:!1})} -`);return l.exitCode()}};Cqe.paths=[["npm","info"]];Cqe.usage=mqe.Command.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches information about a package from the npm registry and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range or to the corresponding tagged version. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package information.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react@16.12.0","yarn npm info react@16.12.0"],["Show all available information about react@next","yarn npm info react@next"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});Rqr.default=Cqe;function Tqr(e){if(Array.isArray(e)){let t=[];for(let r of e)r=Tqr(r),r&&t.push(r);return t}else if(typeof e=="object"&&e!==null){let t={};for(let r of Object.keys(e)){if(r.startsWith("_"))continue;let n=Tqr(e[r]);n&&(t[r]=n)}return t}else return e||null}});var Nqr=H(uVt=>{"use strict";Object.defineProperty(uVt,"__esModule",{value:!0});uVt.getRegistry=HEs;var PEs=dl(),bx=mn(),u9l=mn(),AY=mJ(),_qe=(Rl(),vi(ng)),MEs=z6e(),yqe=class extends PEs.BaseCommand{constructor(){super(...arguments),this.scope=_qe.Option.String("-s,--scope",{description:"Login to the registry configured for a given scope"}),this.publish=_qe.Option.Boolean("--publish",!1,{description:"Login to the publish registry"}),this.alwaysAuth=_qe.Option.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"}),this.webLogin=_qe.Option.Boolean("--web-login",{description:"Enable web login"})}async execute(){let t=await bx.Configuration.find(this.context.cwd,this.context.plugins),r=await HEs({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await u9l.StreamReport.start({configuration:t,stdout:this.context.stdout,includeFooter:!1},async a=>{let o=await f9l({registry:r,configuration:t,report:a,webLogin:this.webLogin,stdin:this.context.stdin,stdout:this.context.stdout});return await h9l(r,o,{alwaysAuth:this.alwaysAuth,scope:this.scope}),a.reportInfo(bx.MessageName.UNNAMED,"Successfully logged in")})).exitCode()}};yqe.paths=[["npm","login"]];yqe.usage=_qe.Command.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});uVt.default=yqe;async function HEs({scope:e,publish:t,configuration:r,cwd:n}){return e&&t?AY.npmConfigUtils.getScopeRegistry(e,{configuration:r,type:AY.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):e?AY.npmConfigUtils.getScopeRegistry(e,{configuration:r}):t?AY.npmConfigUtils.getPublishRegistry((await(0,PEs.openWorkspace)(r,n)).manifest,{configuration:r}):AY.npmConfigUtils.getDefaultRegistry({configuration:r})}async function g9l(e,t){let r;try{r=await AY.npmHttpUtils.post("/-/v1/login",null,{configuration:t,registry:e,authType:AY.npmHttpUtils.AuthType.NO_AUTH,jsonResponse:!0,headers:{"npm-auth-type":"web"}})}catch{return null}return r}async function A9l(e,t){let r=await bx.httpUtils.request(e,null,{configuration:t,jsonResponse:!0});if(r.statusCode===202){let n=r.headers["retry-after"]??"1";return{type:"waiting",sleep:parseInt(n,10)}}return r.statusCode===200?{type:"success",token:r.body.token}:null}async function d9l({registry:e,configuration:t,report:r}){let n=await g9l(e,t);if(!n)return null;if(bx.nodeUtils.openUrl){r.reportInfo(bx.MessageName.UNNAMED,"Starting the web login process..."),r.reportSeparator();let{openNow:a}=await(0,MEs.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open your browser now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});r.reportSeparator(),(!a||!await bx.nodeUtils.openUrl(n.loginUrl))&&(r.reportWarning(bx.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice:"),r.reportWarning(bx.MessageName.UNNAMED,bx.formatUtils.pretty(t,n.loginUrl,bx.formatUtils.Type.URL)),r.reportSeparator())}for(;;){let a=await A9l(n.doneUrl,t);if(a===null)return null;if(a.type==="waiting")await new Promise(o=>setTimeout(o,a.sleep*1e3));else return a.token}}var p9l=["https://registry.yarnpkg.com","https://registry.npmjs.org"];async function f9l(e){if(e.webLogin??p9l.includes(e.registry)){let t=await d9l(e);if(t!==null)return t}return await I9l(e)}async function I9l({registry:e,configuration:t,report:r,stdin:n,stdout:a}){let o=await m9l({configuration:t,registry:e,report:r,stdin:n,stdout:a}),l=`/-/user/org.couchdb.user:${encodeURIComponent(o.name)}`,A={_id:`org.couchdb.user:${o.name}`,name:o.name,password:o.password,type:"user",roles:[],date:new Date().toISOString()},f={attemptedAs:o.name,configuration:t,registry:e,jsonResponse:!0,authType:AY.npmHttpUtils.AuthType.NO_AUTH};try{return(await AY.npmHttpUtils.put(l,A,f)).token}catch(N){if(!(N.originalError?.name==="HTTPError"&&N.originalError?.response.statusCode===409))throw N}let I={...f,authType:AY.npmHttpUtils.AuthType.NO_AUTH,headers:{authorization:`Basic ${Buffer.from(`${o.name}:${o.password}`).toString("base64")}`}},C=await AY.npmHttpUtils.get(l,I);for(let[N,B]of Object.entries(C))(!A[N]||N==="roles")&&(A[N]=B);let b=`${l}/-rev/${A._rev}`;return(await AY.npmHttpUtils.put(b,A,I)).token}async function h9l(e,t,{alwaysAuth:r,scope:n}){let a=l=>A=>{let f=bx.miscUtils.isIndexableObject(A)?A:{},I=f[l],C=bx.miscUtils.isIndexableObject(I)?I:{};return{...f,[l]:{...C,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:t}}},o=n?{npmScopes:a(n)}:{npmRegistries:a(e)};return await bx.Configuration.updateHomeConfiguration(o)}async function m9l({configuration:e,registry:t,report:r,stdin:n,stdout:a}){r.reportInfo(bx.MessageName.UNNAMED,`Logging in to ${bx.formatUtils.pretty(e,t,bx.formatUtils.Type.URL)}`);let o=!1;if(t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(bx.MessageName.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),o=!0),r.reportSeparator(),e.env.YARN_IS_TEST_ENV)return{name:e.env.YARN_INJECT_NPM_USER||"",password:e.env.YARN_INJECT_NPM_PASSWORD||""};let l=await(0,MEs.prompt)([{type:"input",name:"name",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a},{type:"password",name:"password",message:o?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a}]);return r.reportSeparator(),l}});var XEs=H(Dqr=>{"use strict";Object.defineProperty(Dqr,"__esModule",{value:!0});var C9l=dl(),AW=mn(),_9l=mn(),y9l=mJ(),gVt=(Rl(),vi(ng)),YEs=Nqr(),gZe=new Set(["npmAuthIdent","npmAuthToken"]),bqe=class extends C9l.BaseCommand{constructor(){super(...arguments),this.scope=gVt.Option.String("-s,--scope",{description:"Logout of the registry configured for a given scope"}),this.publish=gVt.Option.Boolean("--publish",!1,{description:"Logout of the publish registry"}),this.all=gVt.Option.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let t=await AW.Configuration.find(this.context.cwd,this.context.plugins),r=async()=>{let a=await(0,YEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),o=await AW.Configuration.find(this.context.cwd,this.context.plugins),l=AW.structUtils.makeIdent(this.scope??null,"pkg");return!y9l.npmConfigUtils.getAuthConfiguration(a,{configuration:o,ident:l}).get("npmAuthToken")};return(await _9l.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{if(this.all&&(await E9l(),a.reportInfo(AW.MessageName.UNNAMED,"Successfully logged out from everything")),this.scope){await QEs("npmScopes",this.scope),await r()?a.reportInfo(AW.MessageName.UNNAMED,`Successfully logged out from ${this.scope}`):a.reportWarning(AW.MessageName.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let o=await(0,YEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish});await QEs("npmRegistries",o),await r()?a.reportInfo(AW.MessageName.UNNAMED,`Successfully logged out from ${o}`):a.reportWarning(AW.MessageName.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};bqe.paths=[["npm","logout"]];bqe.usage=gVt.Command.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});Dqr.default=bqe;function b9l(e,t){let r=e[t];if(!AW.miscUtils.isIndexableObject(r))return!1;let n=new Set(Object.keys(r));if([...gZe].every(o=>!n.has(o)))return!1;for(let o of gZe)n.delete(o);if(n.size===0)return e[t]=void 0,!0;let a={...r};for(let o of gZe)delete a[o];return e[t]=a,!0}async function E9l(){let e=t=>{let r=!1,n=AW.miscUtils.isIndexableObject(t)?{...t}:{};n.npmAuthToken&&(delete n.npmAuthToken,r=!0);for(let a of Object.keys(n))b9l(n,a)&&(r=!0);if(Object.keys(n).length!==0)return r?n:t};return await AW.Configuration.updateHomeConfiguration({npmRegistries:e,npmScopes:e})}async function QEs(e,t){return await AW.Configuration.updateHomeConfiguration({[e]:r=>{let n=AW.miscUtils.isIndexableObject(r)?r:{};if(!Object.hasOwn(n,t))return r;let a=n[t],o=AW.miscUtils.isIndexableObject(a)?a:{},l=new Set(Object.keys(o));if([...gZe].every(f=>!l.has(f)))return r;for(let f of gZe)l.delete(f);if(l.size===0)return Object.keys(n).length===1?void 0:{...n,[t]:void 0};let A={};for(let f of gZe)A[f]=void 0;return{...n,[t]:{...o,...A}}}})}});var UEs=H(Gqr=>{"use strict";Object.defineProperty(Gqr,"__esModule",{value:!0});var JEs=dl(),dY=mn(),kqr=Io(),hye=mJ(),xqr=Ime(),i7=(Rl(),vi(ng)),Eqe=class extends JEs.BaseCommand{constructor(){super(...arguments),this.access=i7.Option.String("--access",{description:"The access for the published package (public or restricted)"}),this.tag=i7.Option.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"}),this.tolerateRepublish=i7.Option.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"}),this.otp=i7.Option.String("--otp",{description:"The OTP token to use with the command"}),this.provenance=i7.Option.Boolean("--provenance",!1,{description:"Generate provenance for the package. Only available in GitHub Actions and GitLab CI. Can be set globally through the `npmPublishProvenance` setting or the `YARN_NPM_CONFIG_PROVENANCE` environment variable, or per-package through the `publishConfig.provenance` field in package.json."}),this.dryRun=i7.Option.Boolean("-n,--dry-run",!1,{description:"Show what would be published without actually publishing"}),this.json=i7.Option.Boolean("--json",!1,{description:"Output the result in JSON format"})}async execute(){let t=await dY.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await dY.Project.find(t,this.context.cwd);if(!n)throw new JEs.WorkspaceRequiredError(r.cwd,this.context.cwd);if(n.manifest.private)throw new i7.UsageError("Private workspaces cannot be published");if(n.manifest.name===null||n.manifest.version===null)throw new i7.UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let a=n.manifest.name,o=n.manifest.version,l=hye.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t});return(await dY.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async f=>{if(f.reportInfo(dY.MessageName.UNNAMED,`Publishing to ${l} with tag ${this.tag}`),this.tolerateRepublish)try{let I=await hye.npmHttpUtils.get(hye.npmHttpUtils.getIdentUrl(a),{configuration:t,registry:l,ident:a,jsonResponse:!0});if(!Object.hasOwn(I,"versions"))throw new dY.ReportError(dY.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(I.versions,o)){let C=`Registry already knows about version ${o}; skipping.`;f.reportWarning(dY.MessageName.UNNAMED,C),f.reportJson({name:dY.structUtils.stringifyIdent(a),version:o,registry:l,warning:C,skipped:!0});return}}catch(I){if(I.originalError?.response?.statusCode!==404)throw I}await dY.scriptUtils.maybeExecuteWorkspaceLifecycleScript(n,"prepublish",{report:f}),await xqr.packUtils.prepareForPack(n,{report:f},async()=>{let I=await xqr.packUtils.genPackList(n);for(let J of I)f.reportInfo(null,kqr.npath.fromPortablePath(J)),f.reportJson({file:kqr.npath.fromPortablePath(J)});let C=await xqr.packUtils.genPackStream(n,I),b=await dY.miscUtils.bufferStream(C),E=await hye.npmPublishUtils.getGitHead(n.cwd),N=!1,B="";n.manifest.publishConfig&&"provenance"in n.manifest.publishConfig?(N=!!n.manifest.publishConfig.provenance,B=N?"Generating provenance statement because `publishConfig.provenance` field is set.":"Skipping provenance statement because `publishConfig.provenance` field is set to false."):this.provenance?(N=!0,B="Generating provenance statement because `--provenance` flag is set."):t.get("npmPublishProvenance")&&(N=!0,B="Generating provenance statement because `npmPublishProvenance` setting is set."),B&&(f.reportInfo(null,B),f.reportJson({type:"provenance",enabled:N,provenanceMessage:B}));let F=await hye.npmPublishUtils.makePublishBody(n,b,{access:this.access,tag:this.tag,registry:l,gitHead:E,provenance:N});this.dryRun||await hye.npmHttpUtils.put(hye.npmHttpUtils.getIdentUrl(a),F,{configuration:t,registry:l,ident:a,otp:this.otp,jsonResponse:!0,allowOidc:!!(process.env.CI&&(process.env.GITHUB_ACTIONS||process.env.GITLAB_CI))});let Q=this.dryRun?"Package archive not published (dry run)":"Package archive published";f.reportInfo(dY.MessageName.UNNAMED,Q),f.reportJson({name:dY.structUtils.stringifyIdent(a),version:o,registry:l,tag:this.tag||"latest",files:I.map(J=>kqr.npath.fromPortablePath(J)),access:this.access||null,dryRun:this.dryRun,published:!this.dryRun,message:Q,provenance:!!N})})})).exitCode()}};Eqe.paths=[["npm","publish"]];Eqe.usage=i7.Command.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overridden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});Gqr.default=Eqe});var pVt=H(dVt=>{"use strict";Object.defineProperty(dVt,"__esModule",{value:!0});dVt.getDistTags=jEs;var KEs=dl(),Nre=mn(),Fqr=Io(),Zqr=mJ(),AVt=(Rl(),vi(ng)),Sqe=class extends KEs.BaseCommand{constructor(){super(...arguments),this.json=AVt.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=AVt.Option.String({required:!1})}async execute(){let t=await Nre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Nre.Project.find(t,this.context.cwd),a;if(typeof this.package<"u")a=Nre.structUtils.parseIdent(this.package);else{if(!n)throw new KEs.WorkspaceRequiredError(r.cwd,this.context.cwd);if(!n.manifest.name)throw new AVt.UsageError(`Missing 'name' field in ${Fqr.npath.fromPortablePath(Fqr.ppath.join(n.cwd,Fqr.Filename.manifest))}`);a=n.manifest.name}let o=await jEs(a,t),A={children:Nre.miscUtils.sortMap(Object.entries(o),([f])=>f).map(([f,I])=>({value:Nre.formatUtils.tuple(Nre.formatUtils.Type.RESOLUTION,{descriptor:Nre.structUtils.makeDescriptor(a,f),locator:Nre.structUtils.makeLocator(a,I)})}))};return Nre.treeUtils.emitTree(A,{configuration:t,json:this.json,stdout:this.context.stdout})}};Sqe.paths=[["npm","tag","list"]];Sqe.usage=AVt.Command.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` + `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});Dqr.default=fqe});var PEs=H(Fqr=>{"use strict";Object.defineProperty(Fqr,"__esModule",{value:!0});var sVl=(Wa(),vi(Va)),oVl=sl(),yJ=wn(),Iqe=wn(),kqr=No(),xqr=CJ(),hqe=(vl(),vi(ng)),WEs=sVl.__importDefault(zC()),OEs=Et("util"),mqe=class extends oVl.BaseCommand{constructor(){super(...arguments),this.fields=hqe.Option.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"}),this.json=hqe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.packages=hqe.Option.Rest()}async execute(){let t=await yJ.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await yJ.Project.find(t,this.context.cwd),n=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,a=[],o=!1,l=await Iqe.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async A=>{for(let f of this.packages){let I;if(f==="."){let ne=r.topLevelWorkspace;if(!ne.manifest.name)throw new hqe.UsageError(`Missing ${yJ.formatUtils.pretty(t,"name",yJ.formatUtils.Type.CODE)} field in ${kqr.npath.fromPortablePath(kqr.ppath.join(ne.cwd,kqr.Filename.manifest))}`);I=yJ.structUtils.makeDescriptor(ne.manifest.name,"unknown")}else I=yJ.structUtils.parseDescriptor(f);let C=xqr.npmHttpUtils.getIdentUrl(I),b=Gqr(await xqr.npmHttpUtils.get(C,{configuration:t,ident:I,jsonResponse:!0,customErrorMessage:xqr.npmHttpUtils.customPackageError})),E=Object.keys(b.versions).sort(WEs.default.compareLoose),B=b["dist-tags"].latest||E[E.length-1],F=Iqe.semverUtils.validRange(I.range);if(F){let ne=WEs.default.maxSatisfying(E,F);ne!==null?B=ne:(A.reportWarning(Iqe.MessageName.UNNAMED,`Unmet range ${yJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0)}else Object.hasOwn(b["dist-tags"],I.range)?B=b["dist-tags"][I.range]:I.range!=="unknown"&&(A.reportWarning(Iqe.MessageName.UNNAMED,`Unknown tag ${yJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0);let Q=b.versions[B],J={...b,...Q,version:B,versions:E},ae;if(n!==null){ae={};for(let ne of n){let ce=J[ne];if(typeof ce<"u")ae[ne]=ce;else{A.reportWarning(Iqe.MessageName.EXCEPTION,`The ${yJ.formatUtils.pretty(t,ne,yJ.formatUtils.Type.CODE)} field doesn't exist inside ${yJ.structUtils.prettyIdent(t,I)}'s information`),o=!0;continue}}}else this.json||(delete J.dist,delete J.readme,delete J.users),ae=J;A.reportJson(ae),this.json||a.push(ae)}});OEs.inspect.styles.name="cyan";for(let A of a)(A!==a[0]||o)&&this.context.stdout.write(` +`),this.context.stdout.write(`${(0,OEs.inspect)(A,{depth:1/0,colors:!0,compact:!1})} +`);return l.exitCode()}};mqe.paths=[["npm","info"]];mqe.usage=hqe.Command.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches information about a package from the npm registry and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range or to the corresponding tagged version. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package information.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react@16.12.0","yarn npm info react@16.12.0"],["Show all available information about react@next","yarn npm info react@next"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});Fqr.default=mqe;function Gqr(e){if(Array.isArray(e)){let t=[];for(let r of e)r=Gqr(r),r&&t.push(r);return t}else if(typeof e=="object"&&e!==null){let t={};for(let r of Object.keys(e)){if(r.startsWith("_"))continue;let n=Gqr(e[r]);n&&(t[r]=n)}return t}else return e||null}});var Zqr=H(uVt=>{"use strict";Object.defineProperty(uVt,"__esModule",{value:!0});uVt.getRegistry=YEs;var MEs=sl(),Ex=wn(),aVl=wn(),dY=CJ(),Cqe=(vl(),vi(ng)),HEs=j6e(),_qe=class extends MEs.BaseCommand{constructor(){super(...arguments),this.scope=Cqe.Option.String("-s,--scope",{description:"Login to the registry configured for a given scope"}),this.publish=Cqe.Option.Boolean("--publish",!1,{description:"Login to the publish registry"}),this.alwaysAuth=Cqe.Option.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"}),this.webLogin=Cqe.Option.Boolean("--web-login",{description:"Enable web login"})}async execute(){let t=await Ex.Configuration.find(this.context.cwd,this.context.plugins),r=await YEs({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await aVl.StreamReport.start({configuration:t,stdout:this.context.stdout,includeFooter:!1},async a=>{let o=await AVl({registry:r,configuration:t,report:a,webLogin:this.webLogin,stdin:this.context.stdin,stdout:this.context.stdout});return await pVl(r,o,{alwaysAuth:this.alwaysAuth,scope:this.scope}),a.reportInfo(Ex.MessageName.UNNAMED,"Successfully logged in")})).exitCode()}};_qe.paths=[["npm","login"]];_qe.usage=Cqe.Command.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});uVt.default=_qe;async function YEs({scope:e,publish:t,configuration:r,cwd:n}){return e&&t?dY.npmConfigUtils.getScopeRegistry(e,{configuration:r,type:dY.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):e?dY.npmConfigUtils.getScopeRegistry(e,{configuration:r}):t?dY.npmConfigUtils.getPublishRegistry((await(0,MEs.openWorkspace)(r,n)).manifest,{configuration:r}):dY.npmConfigUtils.getDefaultRegistry({configuration:r})}async function cVl(e,t){let r;try{r=await dY.npmHttpUtils.post("/-/v1/login",null,{configuration:t,registry:e,authType:dY.npmHttpUtils.AuthType.NO_AUTH,jsonResponse:!0,headers:{"npm-auth-type":"web"}})}catch{return null}return r}async function lVl(e,t){let r=await Ex.httpUtils.request(e,null,{configuration:t,jsonResponse:!0});if(r.statusCode===202){let n=r.headers["retry-after"]??"1";return{type:"waiting",sleep:parseInt(n,10)}}return r.statusCode===200?{type:"success",token:r.body.token}:null}async function uVl({registry:e,configuration:t,report:r}){let n=await cVl(e,t);if(!n)return null;if(Ex.nodeUtils.openUrl){r.reportInfo(Ex.MessageName.UNNAMED,"Starting the web login process..."),r.reportSeparator();let{openNow:a}=await(0,HEs.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open your browser now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});r.reportSeparator(),(!a||!await Ex.nodeUtils.openUrl(n.loginUrl))&&(r.reportWarning(Ex.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice:"),r.reportWarning(Ex.MessageName.UNNAMED,Ex.formatUtils.pretty(t,n.loginUrl,Ex.formatUtils.Type.URL)),r.reportSeparator())}for(;;){let a=await lVl(n.doneUrl,t);if(a===null)return null;if(a.type==="waiting")await new Promise(o=>setTimeout(o,a.sleep*1e3));else return a.token}}var gVl=["https://registry.yarnpkg.com","https://registry.npmjs.org"];async function AVl(e){if(e.webLogin??gVl.includes(e.registry)){let t=await uVl(e);if(t!==null)return t}return await dVl(e)}async function dVl({registry:e,configuration:t,report:r,stdin:n,stdout:a}){let o=await fVl({configuration:t,registry:e,report:r,stdin:n,stdout:a}),l=`/-/user/org.couchdb.user:${encodeURIComponent(o.name)}`,A={_id:`org.couchdb.user:${o.name}`,name:o.name,password:o.password,type:"user",roles:[],date:new Date().toISOString()},f={attemptedAs:o.name,configuration:t,registry:e,jsonResponse:!0,authType:dY.npmHttpUtils.AuthType.NO_AUTH};try{return(await dY.npmHttpUtils.put(l,A,f)).token}catch(N){if(!(N.originalError?.name==="HTTPError"&&N.originalError?.response.statusCode===409))throw N}let I={...f,authType:dY.npmHttpUtils.AuthType.NO_AUTH,headers:{authorization:`Basic ${Buffer.from(`${o.name}:${o.password}`).toString("base64")}`}},C=await dY.npmHttpUtils.get(l,I);for(let[N,B]of Object.entries(C))(!A[N]||N==="roles")&&(A[N]=B);let b=`${l}/-rev/${A._rev}`;return(await dY.npmHttpUtils.put(b,A,I)).token}async function pVl(e,t,{alwaysAuth:r,scope:n}){let a=l=>A=>{let f=Ex.miscUtils.isIndexableObject(A)?A:{},I=f[l],C=Ex.miscUtils.isIndexableObject(I)?I:{};return{...f,[l]:{...C,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:t}}},o=n?{npmScopes:a(n)}:{npmRegistries:a(e)};return await Ex.Configuration.updateHomeConfiguration(o)}async function fVl({configuration:e,registry:t,report:r,stdin:n,stdout:a}){r.reportInfo(Ex.MessageName.UNNAMED,`Logging in to ${Ex.formatUtils.pretty(e,t,Ex.formatUtils.Type.URL)}`);let o=!1;if(t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(Ex.MessageName.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),o=!0),r.reportSeparator(),e.env.YARN_IS_TEST_ENV)return{name:e.env.YARN_INJECT_NPM_USER||"",password:e.env.YARN_INJECT_NPM_PASSWORD||""};let l=await(0,HEs.prompt)([{type:"input",name:"name",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a},{type:"password",name:"password",message:o?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a}]);return r.reportSeparator(),l}});var JEs=H(Lqr=>{"use strict";Object.defineProperty(Lqr,"__esModule",{value:!0});var IVl=sl(),dW=wn(),hVl=wn(),mVl=CJ(),gVt=(vl(),vi(ng)),QEs=Zqr(),gZe=new Set(["npmAuthIdent","npmAuthToken"]),yqe=class extends IVl.BaseCommand{constructor(){super(...arguments),this.scope=gVt.Option.String("-s,--scope",{description:"Logout of the registry configured for a given scope"}),this.publish=gVt.Option.Boolean("--publish",!1,{description:"Logout of the publish registry"}),this.all=gVt.Option.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let t=await dW.Configuration.find(this.context.cwd,this.context.plugins),r=async()=>{let a=await(0,QEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),o=await dW.Configuration.find(this.context.cwd,this.context.plugins),l=dW.structUtils.makeIdent(this.scope??null,"pkg");return!mVl.npmConfigUtils.getAuthConfiguration(a,{configuration:o,ident:l}).get("npmAuthToken")};return(await hVl.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{if(this.all&&(await _Vl(),a.reportInfo(dW.MessageName.UNNAMED,"Successfully logged out from everything")),this.scope){await XEs("npmScopes",this.scope),await r()?a.reportInfo(dW.MessageName.UNNAMED,`Successfully logged out from ${this.scope}`):a.reportWarning(dW.MessageName.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let o=await(0,QEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish});await XEs("npmRegistries",o),await r()?a.reportInfo(dW.MessageName.UNNAMED,`Successfully logged out from ${o}`):a.reportWarning(dW.MessageName.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};yqe.paths=[["npm","logout"]];yqe.usage=gVt.Command.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});Lqr.default=yqe;function CVl(e,t){let r=e[t];if(!dW.miscUtils.isIndexableObject(r))return!1;let n=new Set(Object.keys(r));if([...gZe].every(o=>!n.has(o)))return!1;for(let o of gZe)n.delete(o);if(n.size===0)return e[t]=void 0,!0;let a={...r};for(let o of gZe)delete a[o];return e[t]=a,!0}async function _Vl(){let e=t=>{let r=!1,n=dW.miscUtils.isIndexableObject(t)?{...t}:{};n.npmAuthToken&&(delete n.npmAuthToken,r=!0);for(let a of Object.keys(n))CVl(n,a)&&(r=!0);if(Object.keys(n).length!==0)return r?n:t};return await dW.Configuration.updateHomeConfiguration({npmRegistries:e,npmScopes:e})}async function XEs(e,t){return await dW.Configuration.updateHomeConfiguration({[e]:r=>{let n=dW.miscUtils.isIndexableObject(r)?r:{};if(!Object.hasOwn(n,t))return r;let a=n[t],o=dW.miscUtils.isIndexableObject(a)?a:{},l=new Set(Object.keys(o));if([...gZe].every(f=>!l.has(f)))return r;for(let f of gZe)l.delete(f);if(l.size===0)return Object.keys(n).length===1?void 0:{...n,[t]:void 0};let A={};for(let f of gZe)A[f]=void 0;return{...n,[t]:{...o,...A}}}})}});var KEs=H(Oqr=>{"use strict";Object.defineProperty(Oqr,"__esModule",{value:!0});var UEs=sl(),pY=wn(),Vqr=No(),hye=CJ(),Wqr=hme(),s7=(vl(),vi(ng)),bqe=class extends UEs.BaseCommand{constructor(){super(...arguments),this.access=s7.Option.String("--access",{description:"The access for the published package (public or restricted)"}),this.tag=s7.Option.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"}),this.tolerateRepublish=s7.Option.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"}),this.otp=s7.Option.String("--otp",{description:"The OTP token to use with the command"}),this.provenance=s7.Option.Boolean("--provenance",!1,{description:"Generate provenance for the package. Only available in GitHub Actions and GitLab CI. Can be set globally through the `npmPublishProvenance` setting or the `YARN_NPM_CONFIG_PROVENANCE` environment variable, or per-package through the `publishConfig.provenance` field in package.json."}),this.dryRun=s7.Option.Boolean("-n,--dry-run",!1,{description:"Show what would be published without actually publishing"}),this.json=s7.Option.Boolean("--json",!1,{description:"Output the result in JSON format"})}async execute(){let t=await pY.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await pY.Project.find(t,this.context.cwd);if(!n)throw new UEs.WorkspaceRequiredError(r.cwd,this.context.cwd);if(n.manifest.private)throw new s7.UsageError("Private workspaces cannot be published");if(n.manifest.name===null||n.manifest.version===null)throw new s7.UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let a=n.manifest.name,o=n.manifest.version,l=hye.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t});return(await pY.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async f=>{if(f.reportInfo(pY.MessageName.UNNAMED,`Publishing to ${l} with tag ${this.tag}`),this.tolerateRepublish)try{let I=await hye.npmHttpUtils.get(hye.npmHttpUtils.getIdentUrl(a),{configuration:t,registry:l,ident:a,jsonResponse:!0});if(!Object.hasOwn(I,"versions"))throw new pY.ReportError(pY.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(I.versions,o)){let C=`Registry already knows about version ${o}; skipping.`;f.reportWarning(pY.MessageName.UNNAMED,C),f.reportJson({name:pY.structUtils.stringifyIdent(a),version:o,registry:l,warning:C,skipped:!0});return}}catch(I){if(I.originalError?.response?.statusCode!==404)throw I}await pY.scriptUtils.maybeExecuteWorkspaceLifecycleScript(n,"prepublish",{report:f}),await Wqr.packUtils.prepareForPack(n,{report:f},async()=>{let I=await Wqr.packUtils.genPackList(n);for(let J of I)f.reportInfo(null,Vqr.npath.fromPortablePath(J)),f.reportJson({file:Vqr.npath.fromPortablePath(J)});let C=await Wqr.packUtils.genPackStream(n,I),b=await pY.miscUtils.bufferStream(C),E=await hye.npmPublishUtils.getGitHead(n.cwd),N=!1,B="";n.manifest.publishConfig&&"provenance"in n.manifest.publishConfig?(N=!!n.manifest.publishConfig.provenance,B=N?"Generating provenance statement because `publishConfig.provenance` field is set.":"Skipping provenance statement because `publishConfig.provenance` field is set to false."):this.provenance?(N=!0,B="Generating provenance statement because `--provenance` flag is set."):t.get("npmPublishProvenance")&&(N=!0,B="Generating provenance statement because `npmPublishProvenance` setting is set."),B&&(f.reportInfo(null,B),f.reportJson({type:"provenance",enabled:N,provenanceMessage:B}));let F=await hye.npmPublishUtils.makePublishBody(n,b,{access:this.access,tag:this.tag,registry:l,gitHead:E,provenance:N});this.dryRun||await hye.npmHttpUtils.put(hye.npmHttpUtils.getIdentUrl(a),F,{configuration:t,registry:l,ident:a,otp:this.otp,jsonResponse:!0,allowOidc:!!(process.env.CI&&(process.env.GITHUB_ACTIONS||process.env.GITLAB_CI))});let Q=this.dryRun?"Package archive not published (dry run)":"Package archive published";f.reportInfo(pY.MessageName.UNNAMED,Q),f.reportJson({name:pY.structUtils.stringifyIdent(a),version:o,registry:l,tag:this.tag||"latest",files:I.map(J=>Vqr.npath.fromPortablePath(J)),access:this.access||null,dryRun:this.dryRun,published:!this.dryRun,message:Q,provenance:!!N})})})).exitCode()}};bqe.paths=[["npm","publish"]];bqe.usage=s7.Command.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overridden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});Oqr.default=bqe});var pVt=H(dVt=>{"use strict";Object.defineProperty(dVt,"__esModule",{value:!0});dVt.getDistTags=zEs;var jEs=sl(),Dre=wn(),Pqr=No(),Mqr=CJ(),AVt=(vl(),vi(ng)),Eqe=class extends jEs.BaseCommand{constructor(){super(...arguments),this.json=AVt.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=AVt.Option.String({required:!1})}async execute(){let t=await Dre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Dre.Project.find(t,this.context.cwd),a;if(typeof this.package<"u")a=Dre.structUtils.parseIdent(this.package);else{if(!n)throw new jEs.WorkspaceRequiredError(r.cwd,this.context.cwd);if(!n.manifest.name)throw new AVt.UsageError(`Missing 'name' field in ${Pqr.npath.fromPortablePath(Pqr.ppath.join(n.cwd,Pqr.Filename.manifest))}`);a=n.manifest.name}let o=await zEs(a,t),A={children:Dre.miscUtils.sortMap(Object.entries(o),([f])=>f).map(([f,I])=>({value:Dre.formatUtils.tuple(Dre.formatUtils.Type.RESOLUTION,{descriptor:Dre.structUtils.makeDescriptor(a,f),locator:Dre.structUtils.makeLocator(a,I)})}))};return Dre.treeUtils.emitTree(A,{configuration:t,json:this.json,stdout:this.context.stdout})}};Eqe.paths=[["npm","tag","list"]];Eqe.usage=AVt.Command.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` This command will list all tags of a package from the npm registry. If the package is not specified, Yarn will default to the current workspace. - `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});dVt.default=Sqe;async function jEs(e,t){let r=`/-/package${Zqr.npmHttpUtils.getIdentUrl(e)}/dist-tags`;return Zqr.npmHttpUtils.get(r,{configuration:t,ident:e,jsonResponse:!0,customErrorMessage:Zqr.npmHttpUtils.customPackageError})}});var qEs=H(Vqr=>{"use strict";Object.defineProperty(Vqr,"__esModule",{value:!0});var S9l=(Wa(),vi(Va)),zEs=dl(),dW=mn(),Lqr=mJ(),fVt=(Rl(),vi(ng)),v9l=S9l.__importDefault(jC()),B9l=pVt(),vqe=class extends zEs.BaseCommand{constructor(){super(...arguments),this.package=fVt.Option.String(),this.tag=fVt.Option.String()}async execute(){let t=await dW.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await dW.Project.find(t,this.context.cwd);if(!n)throw new zEs.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=dW.structUtils.parseDescriptor(this.package,!0),o=a.range;if(!v9l.default.valid(o))throw new fVt.UsageError(`The range ${dW.formatUtils.pretty(t,a.range,dW.formatUtils.Type.RANGE)} must be a valid semver version`);let l=Lqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),A=dW.formatUtils.pretty(t,a,dW.formatUtils.Type.IDENT),f=dW.formatUtils.pretty(t,o,dW.formatUtils.Type.RANGE),I=dW.formatUtils.pretty(t,this.tag,dW.formatUtils.Type.CODE);return(await dW.StreamReport.start({configuration:t,stdout:this.context.stdout},async b=>{let E=await(0,B9l.getDistTags)(a,t);Object.hasOwn(E,this.tag)&&E[this.tag]===o&&b.reportWarning(dW.MessageName.UNNAMED,`Tag ${I} is already set to version ${f}`);let N=`/-/package${Lqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await Lqr.npmHttpUtils.put(N,o,{configuration:t,registry:l,ident:a,jsonRequest:!0,jsonResponse:!0}),b.reportInfo(dW.MessageName.UNNAMED,`Tag ${I} added to version ${f} of package ${A}`)})).exitCode()}};vqe.paths=[["npm","tag","add"]];vqe.usage=fVt.Command.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` + `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});dVt.default=Eqe;async function zEs(e,t){let r=`/-/package${Mqr.npmHttpUtils.getIdentUrl(e)}/dist-tags`;return Mqr.npmHttpUtils.get(r,{configuration:t,ident:e,jsonResponse:!0,customErrorMessage:Mqr.npmHttpUtils.customPackageError})}});var $Es=H(Yqr=>{"use strict";Object.defineProperty(Yqr,"__esModule",{value:!0});var yVl=(Wa(),vi(Va)),qEs=sl(),pW=wn(),Hqr=CJ(),fVt=(vl(),vi(ng)),bVl=yVl.__importDefault(zC()),EVl=pVt(),Sqe=class extends qEs.BaseCommand{constructor(){super(...arguments),this.package=fVt.Option.String(),this.tag=fVt.Option.String()}async execute(){let t=await pW.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await pW.Project.find(t,this.context.cwd);if(!n)throw new qEs.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=pW.structUtils.parseDescriptor(this.package,!0),o=a.range;if(!bVl.default.valid(o))throw new fVt.UsageError(`The range ${pW.formatUtils.pretty(t,a.range,pW.formatUtils.Type.RANGE)} must be a valid semver version`);let l=Hqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),A=pW.formatUtils.pretty(t,a,pW.formatUtils.Type.IDENT),f=pW.formatUtils.pretty(t,o,pW.formatUtils.Type.RANGE),I=pW.formatUtils.pretty(t,this.tag,pW.formatUtils.Type.CODE);return(await pW.StreamReport.start({configuration:t,stdout:this.context.stdout},async b=>{let E=await(0,EVl.getDistTags)(a,t);Object.hasOwn(E,this.tag)&&E[this.tag]===o&&b.reportWarning(pW.MessageName.UNNAMED,`Tag ${I} is already set to version ${f}`);let N=`/-/package${Hqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await Hqr.npmHttpUtils.put(N,o,{configuration:t,registry:l,ident:a,jsonRequest:!0,jsonResponse:!0}),b.reportInfo(pW.MessageName.UNNAMED,`Tag ${I} added to version ${f} of package ${A}`)})).exitCode()}};Sqe.paths=[["npm","tag","add"]];Sqe.usage=fVt.Command.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` This command will add a tag to the npm registry for a specific version of a package. If the tag already exists, it will be overwritten. - `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});Vqr.default=vqe});var e1s=H(Oqr=>{"use strict";Object.defineProperty(Oqr,"__esModule",{value:!0});var $Es=dl(),Dre=mn(),Wqr=mJ(),Bqe=(Rl(),vi(ng)),w9l=pVt(),wqe=class extends $Es.BaseCommand{constructor(){super(...arguments),this.package=Bqe.Option.String(),this.tag=Bqe.Option.String()}async execute(){if(this.tag==="latest")throw new Bqe.UsageError("The 'latest' tag cannot be removed.");let t=await Dre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Dre.Project.find(t,this.context.cwd);if(!n)throw new $Es.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=Dre.structUtils.parseIdent(this.package),o=Wqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),l=Dre.formatUtils.pretty(t,this.tag,Dre.formatUtils.Type.CODE),A=Dre.formatUtils.pretty(t,a,Dre.formatUtils.Type.IDENT),f=await(0,w9l.getDistTags)(a,t);if(!Object.hasOwn(f,this.tag))throw new Bqe.UsageError(`${l} is not a tag of package ${A}`);return(await Dre.StreamReport.start({configuration:t,stdout:this.context.stdout},async C=>{let b=`/-/package${Wqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await Wqr.npmHttpUtils.del(b,{configuration:t,registry:o,ident:a,jsonResponse:!0}),C.reportInfo(Dre.MessageName.UNNAMED,`Tag ${l} removed from package ${A}`)})).exitCode()}};wqe.paths=[["npm","tag","remove"]];wqe.usage=Bqe.Command.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` + `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});Yqr.default=Sqe});var t1s=H(Xqr=>{"use strict";Object.defineProperty(Xqr,"__esModule",{value:!0});var e1s=sl(),kre=wn(),Qqr=CJ(),vqe=(vl(),vi(ng)),SVl=pVt(),Bqe=class extends e1s.BaseCommand{constructor(){super(...arguments),this.package=vqe.Option.String(),this.tag=vqe.Option.String()}async execute(){if(this.tag==="latest")throw new vqe.UsageError("The 'latest' tag cannot be removed.");let t=await kre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kre.Project.find(t,this.context.cwd);if(!n)throw new e1s.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=kre.structUtils.parseIdent(this.package),o=Qqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),l=kre.formatUtils.pretty(t,this.tag,kre.formatUtils.Type.CODE),A=kre.formatUtils.pretty(t,a,kre.formatUtils.Type.IDENT),f=await(0,SVl.getDistTags)(a,t);if(!Object.hasOwn(f,this.tag))throw new vqe.UsageError(`${l} is not a tag of package ${A}`);return(await kre.StreamReport.start({configuration:t,stdout:this.context.stdout},async C=>{let b=`/-/package${Qqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await Qqr.npmHttpUtils.del(b,{configuration:t,registry:o,ident:a,jsonResponse:!0}),C.reportInfo(kre.MessageName.UNNAMED,`Tag ${l} removed from package ${A}`)})).exitCode()}};Bqe.paths=[["npm","tag","remove"]];Bqe.usage=vqe.Command.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` This command will remove a tag from a package from the npm registry. - `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});Oqr.default=wqe});var n1s=H(Hqr=>{"use strict";Object.defineProperty(Hqr,"__esModule",{value:!0});var t1s=dl(),Pqr=mn(),r1s=mn(),mye=mJ(),Mqr=(Rl(),vi(ng)),Tqe=class extends t1s.BaseCommand{constructor(){super(...arguments),this.scope=Mqr.Option.String("-s,--scope",{description:"Print username for the registry configured for a given scope"}),this.publish=Mqr.Option.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let t=await Pqr.Configuration.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=mye.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t,type:mye.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):this.scope?r=mye.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t}):this.publish?r=mye.npmConfigUtils.getPublishRegistry((await(0,t1s.openWorkspace)(t,this.context.cwd)).manifest,{configuration:t}):r=mye.npmConfigUtils.getDefaultRegistry({configuration:t}),(await r1s.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o;try{o=await mye.npmHttpUtils.get("/-/whoami",{configuration:t,registry:r,authType:mye.npmHttpUtils.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?r1s.structUtils.makeIdent(this.scope,""):void 0})}catch(l){if(l.response?.statusCode===401||l.response?.statusCode===403){a.reportError(Pqr.MessageName.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}a.reportInfo(Pqr.MessageName.UNNAMED,o.username)})).exitCode()}};Tqe.paths=[["npm","whoami"]];Tqe.usage=Mqr.Command.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});Hqr.default=Tqe});var d1s=H(z1=>{"use strict";Object.defineProperty(z1,"__esModule",{value:!0});z1.NpmWhoamiCommand=z1.NpmTagRemoveCommand=z1.NpmTagListCommand=z1.NpmTagAddCommand=z1.NpmPublishCommand=z1.NpmLogoutCommand=z1.NpmLoginCommand=z1.NpmInfoCommand=z1.NpmAuditCommand=z1.npmAuditUtils=z1.npmAuditTypes=void 0;var yJ=(Wa(),vi(Va)),IVt=mn(),i1s=yJ.__importDefault(LEs());z1.NpmAuditCommand=i1s.default;var s1s=yJ.__importDefault(OEs());z1.NpmInfoCommand=s1s.default;var o1s=yJ.__importDefault(Nqr());z1.NpmLoginCommand=o1s.default;var a1s=yJ.__importDefault(XEs());z1.NpmLogoutCommand=a1s.default;var c1s=yJ.__importDefault(UEs());z1.NpmPublishCommand=c1s.default;var l1s=yJ.__importDefault(qEs());z1.NpmTagAddCommand=l1s.default;var u1s=yJ.__importDefault(pVt());z1.NpmTagListCommand=u1s.default;var g1s=yJ.__importDefault(e1s());z1.NpmTagRemoveCommand=g1s.default;var A1s=yJ.__importDefault(n1s());z1.NpmWhoamiCommand=A1s.default;var T9l=yJ.__importStar(aVt());z1.npmAuditTypes=T9l;var R9l=yJ.__importStar(Sqr());z1.npmAuditUtils=R9l;var N9l={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:IVt.SettingsType.STRING,default:null},npmPublishProvenance:{description:"Whether to generate provenance for the published packages",type:IVt.SettingsType.BOOLEAN,default:!1},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:IVt.SettingsType.STRING,default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:IVt.SettingsType.STRING,default:[],isArray:!0}},commands:[i1s.default,s1s.default,o1s.default,a1s.default,c1s.default,l1s.default,u1s.default,g1s.default,A1s.default]};z1.default=N9l});var p1s=H(hVt=>{"use strict";Object.defineProperty(hVt,"__esModule",{value:!0});hVt.CACHE_VERSION=void 0;hVt.CACHE_VERSION=3});var CVt=H(vL=>{"use strict";Object.defineProperty(vL,"__esModule",{value:!0});vL.PatchMutationType=vL.EXECUTABLE_FILE_MODE=vL.NON_EXECUTABLE_FILE_MODE=void 0;vL.getPath=Cye;vL.parseHunkHeaderLine=I1s;vL.interpretParsedPatchFile=h1s;vL.parsePatchFile=F9l;vL.verifyHunkIntegrity=m1s;var Yqr=mn(),Rqe=Io(),D9l=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function Cye(e){return Rqe.ppath.relative(Rqe.PortablePath.root,Rqe.ppath.resolve(Rqe.PortablePath.root,Rqe.npath.toPortablePath(e)))}function I1s(e){let t=e.trim().match(D9l);if(!t)throw new Error(`Bad header line: '${e}'`);return{original:{start:Math.max(Number(t[1]),1),length:Number(t[3]||1)},patched:{start:Math.max(Number(t[4]),1),length:Number(t[6]||1)}}}vL.NON_EXECUTABLE_FILE_MODE=420;vL.EXECUTABLE_FILE_MODE=493;var pY;(function(e){e.Context="context",e.Insertion="insertion",e.Deletion="deletion"})(pY||(vL.PatchMutationType=pY={}));var f1s=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),k9l=e=>({header:I1s(e),parts:[]}),x9l={"@":"header","-":pY.Deletion,"+":pY.Insertion," ":pY.Context,"\\":"pragma",undefined:pY.Context};function G9l(e){let t=[],r=f1s(),n="parsing header",a=null,o=null;function l(){a&&(o&&(a.parts.push(o),o=null),r.hunks.push(a),a=null)}function A(){l(),t.push(r),r=f1s()}for(let f=0;f0?"patch":"mode change",ae=null;switch(J){case"rename":{if(!C||!b)throw new Error("Bad parser state: rename from & to not given");t.push({type:"rename",semverExclusivity:n,fromPath:Cye(C),toPath:Cye(b)}),ae=b}break;case"file deletion":{let ne=a||B;if(!ne)throw new Error("Bad parse state: no path given for file deletion");t.push({type:"file deletion",semverExclusivity:n,hunk:Q&&Q[0]||null,path:Cye(ne),mode:mVt(f),hash:E})}break;case"file creation":{let ne=o||F;if(!ne)throw new Error("Bad parse state: no path given for file creation");t.push({type:"file creation",semverExclusivity:n,hunk:Q&&Q[0]||null,path:Cye(ne),mode:mVt(I),hash:N})}break;case"patch":case"mode change":ae=F||o;break;default:Yqr.miscUtils.assertNever(J);break}ae&&l&&A&&l!==A&&t.push({type:"mode change",semverExclusivity:n,path:Cye(ae),oldMode:mVt(l),newMode:mVt(A)}),ae&&Q&&Q.length&&t.push({type:"patch",semverExclusivity:n,path:Cye(ae),hunks:Q,beforeHash:E,afterHash:N})}if(t.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return t}function mVt(e){let t=parseInt(e,8)&511;if(t!==vL.NON_EXECUTABLE_FILE_MODE&&t!==vL.EXECUTABLE_FILE_MODE)throw new Error(`Unexpected file mode string: ${e}`);return t}function F9l(e){let t=e.split(/\n/g);return t[t.length-1]===""&&t.pop(),h1s(G9l(t))}function m1s(e){let t=0,r=0;for(let{type:n,lines:a}of e.parts)switch(n){case pY.Context:r+=a.length,t+=a.length;break;case pY.Deletion:t+=a.length;break;case pY.Insertion:r+=a.length;break;default:Yqr.miscUtils.assertNever(n);break}if(t!==e.header.original.length||r!==e.header.patched.length){let n=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${n(e.header.original.length)} ${n(e.header.patched.length)} @@, got @@ ${n(t)} ${n(r)} @@)`)}}});var Xqr=H(_Vt=>{"use strict";Object.defineProperty(_Vt,"__esModule",{value:!0});_Vt.UnmatchedHunkError=void 0;var Qqr=class extends Error{constructor(t,r){super(`Cannot apply hunk #${t+1}`),this.hunk=r}};_Vt.UnmatchedHunkError=Qqr});var E1s=H(EVt=>{"use strict";Object.defineProperty(EVt,"__esModule",{value:!0});EVt.applyPatchFile=L9l;EVt.applyPatch=b1s;var bVt=mn(),kre=Io(),Z9l=Xqr(),yVt=CVt();async function AZe(e,t,r){let n=await e.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await e.lutimesPromise(t,n.atime,n.mtime)}async function L9l(e,{baseFs:t=new kre.NodeFS,dryRun:r=!1,version:n=null}={}){for(let a of e)if(!(a.semverExclusivity!==null&&n!==null&&!bVt.semverUtils.satisfiesWithPrereleases(n,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!t.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await AZe(t,kre.ppath.dirname(a.path),async()=>{await t.unlinkPromise(a.path)});break;case"rename":if(r){if(!t.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await AZe(t,kre.ppath.dirname(a.fromPath),async()=>{await AZe(t,kre.ppath.dirname(a.toPath),async()=>{await AZe(t,a.fromPath,async()=>(await t.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(t.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let o=a.hunk?a.hunk.parts[0].lines.join(` + `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});Xqr.default=Bqe});var i1s=H(Kqr=>{"use strict";Object.defineProperty(Kqr,"__esModule",{value:!0});var r1s=sl(),Jqr=wn(),n1s=wn(),mye=CJ(),Uqr=(vl(),vi(ng)),wqe=class extends r1s.BaseCommand{constructor(){super(...arguments),this.scope=Uqr.Option.String("-s,--scope",{description:"Print username for the registry configured for a given scope"}),this.publish=Uqr.Option.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let t=await Jqr.Configuration.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=mye.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t,type:mye.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):this.scope?r=mye.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t}):this.publish?r=mye.npmConfigUtils.getPublishRegistry((await(0,r1s.openWorkspace)(t,this.context.cwd)).manifest,{configuration:t}):r=mye.npmConfigUtils.getDefaultRegistry({configuration:t}),(await n1s.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o;try{o=await mye.npmHttpUtils.get("/-/whoami",{configuration:t,registry:r,authType:mye.npmHttpUtils.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?n1s.structUtils.makeIdent(this.scope,""):void 0})}catch(l){if(l.response?.statusCode===401||l.response?.statusCode===403){a.reportError(Jqr.MessageName.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}a.reportInfo(Jqr.MessageName.UNNAMED,o.username)})).exitCode()}};wqe.paths=[["npm","whoami"]];wqe.usage=Uqr.Command.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});Kqr.default=wqe});var p1s=H(q1=>{"use strict";Object.defineProperty(q1,"__esModule",{value:!0});q1.NpmWhoamiCommand=q1.NpmTagRemoveCommand=q1.NpmTagListCommand=q1.NpmTagAddCommand=q1.NpmPublishCommand=q1.NpmLogoutCommand=q1.NpmLoginCommand=q1.NpmInfoCommand=q1.NpmAuditCommand=q1.npmAuditUtils=q1.npmAuditTypes=void 0;var bJ=(Wa(),vi(Va)),IVt=wn(),s1s=bJ.__importDefault(VEs());q1.NpmAuditCommand=s1s.default;var o1s=bJ.__importDefault(PEs());q1.NpmInfoCommand=o1s.default;var a1s=bJ.__importDefault(Zqr());q1.NpmLoginCommand=a1s.default;var c1s=bJ.__importDefault(JEs());q1.NpmLogoutCommand=c1s.default;var l1s=bJ.__importDefault(KEs());q1.NpmPublishCommand=l1s.default;var u1s=bJ.__importDefault($Es());q1.NpmTagAddCommand=u1s.default;var g1s=bJ.__importDefault(pVt());q1.NpmTagListCommand=g1s.default;var A1s=bJ.__importDefault(t1s());q1.NpmTagRemoveCommand=A1s.default;var d1s=bJ.__importDefault(i1s());q1.NpmWhoamiCommand=d1s.default;var vVl=bJ.__importStar(aVt());q1.npmAuditTypes=vVl;var BVl=bJ.__importStar(Nqr());q1.npmAuditUtils=BVl;var wVl={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:IVt.SettingsType.STRING,default:null},npmPublishProvenance:{description:"Whether to generate provenance for the published packages",type:IVt.SettingsType.BOOLEAN,default:!1},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:IVt.SettingsType.STRING,default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:IVt.SettingsType.STRING,default:[],isArray:!0}},commands:[s1s.default,o1s.default,a1s.default,c1s.default,l1s.default,u1s.default,g1s.default,A1s.default,d1s.default]};q1.default=wVl});var f1s=H(hVt=>{"use strict";Object.defineProperty(hVt,"__esModule",{value:!0});hVt.CACHE_VERSION=void 0;hVt.CACHE_VERSION=3});var CVt=H(BL=>{"use strict";Object.defineProperty(BL,"__esModule",{value:!0});BL.PatchMutationType=BL.EXECUTABLE_FILE_MODE=BL.NON_EXECUTABLE_FILE_MODE=void 0;BL.getPath=Cye;BL.parseHunkHeaderLine=h1s;BL.interpretParsedPatchFile=m1s;BL.parsePatchFile=kVl;BL.verifyHunkIntegrity=C1s;var jqr=wn(),Tqe=No(),TVl=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function Cye(e){return Tqe.ppath.relative(Tqe.PortablePath.root,Tqe.ppath.resolve(Tqe.PortablePath.root,Tqe.npath.toPortablePath(e)))}function h1s(e){let t=e.trim().match(TVl);if(!t)throw new Error(`Bad header line: '${e}'`);return{original:{start:Math.max(Number(t[1]),1),length:Number(t[3]||1)},patched:{start:Math.max(Number(t[4]),1),length:Number(t[6]||1)}}}BL.NON_EXECUTABLE_FILE_MODE=420;BL.EXECUTABLE_FILE_MODE=493;var fY;(function(e){e.Context="context",e.Insertion="insertion",e.Deletion="deletion"})(fY||(BL.PatchMutationType=fY={}));var I1s=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),RVl=e=>({header:h1s(e),parts:[]}),NVl={"@":"header","-":fY.Deletion,"+":fY.Insertion," ":fY.Context,"\\":"pragma",undefined:fY.Context};function DVl(e){let t=[],r=I1s(),n="parsing header",a=null,o=null;function l(){a&&(o&&(a.parts.push(o),o=null),r.hunks.push(a),a=null)}function A(){l(),t.push(r),r=I1s()}for(let f=0;f0?"patch":"mode change",ae=null;switch(J){case"rename":{if(!C||!b)throw new Error("Bad parser state: rename from & to not given");t.push({type:"rename",semverExclusivity:n,fromPath:Cye(C),toPath:Cye(b)}),ae=b}break;case"file deletion":{let ne=a||B;if(!ne)throw new Error("Bad parse state: no path given for file deletion");t.push({type:"file deletion",semverExclusivity:n,hunk:Q&&Q[0]||null,path:Cye(ne),mode:mVt(f),hash:E})}break;case"file creation":{let ne=o||F;if(!ne)throw new Error("Bad parse state: no path given for file creation");t.push({type:"file creation",semverExclusivity:n,hunk:Q&&Q[0]||null,path:Cye(ne),mode:mVt(I),hash:N})}break;case"patch":case"mode change":ae=F||o;break;default:jqr.miscUtils.assertNever(J);break}ae&&l&&A&&l!==A&&t.push({type:"mode change",semverExclusivity:n,path:Cye(ae),oldMode:mVt(l),newMode:mVt(A)}),ae&&Q&&Q.length&&t.push({type:"patch",semverExclusivity:n,path:Cye(ae),hunks:Q,beforeHash:E,afterHash:N})}if(t.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return t}function mVt(e){let t=parseInt(e,8)&511;if(t!==BL.NON_EXECUTABLE_FILE_MODE&&t!==BL.EXECUTABLE_FILE_MODE)throw new Error(`Unexpected file mode string: ${e}`);return t}function kVl(e){let t=e.split(/\n/g);return t[t.length-1]===""&&t.pop(),m1s(DVl(t))}function C1s(e){let t=0,r=0;for(let{type:n,lines:a}of e.parts)switch(n){case fY.Context:r+=a.length,t+=a.length;break;case fY.Deletion:t+=a.length;break;case fY.Insertion:r+=a.length;break;default:jqr.miscUtils.assertNever(n);break}if(t!==e.header.original.length||r!==e.header.patched.length){let n=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${n(e.header.original.length)} ${n(e.header.patched.length)} @@, got @@ ${n(t)} ${n(r)} @@)`)}}});var qqr=H(_Vt=>{"use strict";Object.defineProperty(_Vt,"__esModule",{value:!0});_Vt.UnmatchedHunkError=void 0;var zqr=class extends Error{constructor(t,r){super(`Cannot apply hunk #${t+1}`),this.hunk=r}};_Vt.UnmatchedHunkError=zqr});var S1s=H(EVt=>{"use strict";Object.defineProperty(EVt,"__esModule",{value:!0});EVt.applyPatchFile=GVl;EVt.applyPatch=E1s;var bVt=wn(),xre=No(),xVl=qqr(),yVt=CVt();async function AZe(e,t,r){let n=await e.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await e.lutimesPromise(t,n.atime,n.mtime)}async function GVl(e,{baseFs:t=new xre.NodeFS,dryRun:r=!1,version:n=null}={}){for(let a of e)if(!(a.semverExclusivity!==null&&n!==null&&!bVt.semverUtils.satisfiesWithPrereleases(n,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!t.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await AZe(t,xre.ppath.dirname(a.path),async()=>{await t.unlinkPromise(a.path)});break;case"rename":if(r){if(!t.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await AZe(t,xre.ppath.dirname(a.fromPath),async()=>{await AZe(t,xre.ppath.dirname(a.toPath),async()=>{await AZe(t,a.fromPath,async()=>(await t.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(t.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let o=a.hunk?a.hunk.parts[0].lines.join(` `)+(a.hunk.parts[0].noNewlineAtEndOfFile?"":` -`):"";await t.mkdirpPromise(kre.ppath.dirname(a.path),{chmod:493,utimes:[kre.constants.SAFE_TIME,kre.constants.SAFE_TIME]}),await t.writeFilePromise(a.path,o,{mode:a.mode}),await t.utimesPromise(a.path,kre.constants.SAFE_TIME,kre.constants.SAFE_TIME)}break;case"patch":await AZe(t,a.path,async()=>{await b1s(a,{baseFs:t,dryRun:r})});break;case"mode change":{let l=(await t.statPromise(a.path)).mode;if(C1s(a.newMode)!==C1s(l))continue;await AZe(t,a.path,async()=>{await t.chmodPromise(a.path,a.newMode)})}break;default:bVt.miscUtils.assertNever(a);break}}function C1s(e){return(e&64)>0}function _1s(e){return e.replace(/\s+$/,"")}function V9l(e,t){return _1s(e)===_1s(t)}async function b1s({hunks:e,path:t},{baseFs:r,dryRun:n=!1}){let a=await r.statSync(t).mode,l=(await r.readFileSync(t,"utf8")).split(/\n/),A=[],f=0,I=0;for(let b of e){let E=Math.max(I,b.header.patched.start+f),N=Math.max(0,E-I),B=Math.max(0,l.length-E-b.header.original.length),F=Math.max(N,B),Q=0,J=0,ae=null;for(;Q<=F;){if(Q<=N&&(J=E-Q,ae=y1s(b,l,J),ae!==null)){Q=-Q;break}if(Q<=B&&(J=E+Q,ae=y1s(b,l,J),ae!==null))break;Q+=1}if(ae===null)throw new Z9l.UnmatchedHunkError(e.indexOf(b),b);A.push(ae),f+=Q,I=J+b.header.original.length}if(n)return;let C=0;for(let b of A)for(let E of b)switch(E.type){case"splice":{let N=E.index+C;l.splice(N,E.numToDelete,...E.linesToInsert),C+=E.linesToInsert.length-E.numToDelete}break;case"pop":l.pop();break;case"push":l.push(E.line);break;default:bVt.miscUtils.assertNever(E);break}await r.writeFilePromise(t,l.join(` -`),{mode:a})}function y1s(e,t,r){let n=[];for(let a of e.parts)switch(a.type){case yVt.PatchMutationType.Context:case yVt.PatchMutationType.Deletion:{for(let o of a.lines){let l=t[r];if(l==null||!V9l(l,o))return null;r+=1}a.type===yVt.PatchMutationType.Deletion&&(n.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&n.push({type:"push",line:""}))}break;case yVt.PatchMutationType.Insertion:n.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&n.push({type:"pop"});break;default:bVt.miscUtils.assertNever(a.type);break}return n}});var pZe=H(lB=>{"use strict";Object.defineProperty(lB,"__esModule",{value:!0});lB.parsePatchFile=lB.applyPatchFile=void 0;lB.isPatchDescriptor=v1s;lB.isPatchLocator=B1s;lB.parseDescriptor=M9l;lB.parseLocator=H9l;lB.unpatchDescriptor=Y9l;lB.unpatchLocator=Q9l;lB.ensureUnpatchedDescriptor=X9l;lB.ensureUnpatchedLocator=w1s;lB.makeDescriptor=J9l;lB.makeLocator=U9l;lB.extractPatchFlags=N1s;lB.isParentRequired=K9l;lB.loadPatchFiles=j9l;lB.extractPackageToDisk=z9l;lB.diffFolders=q9l;lB.makePatchHash=$9l;var X2=mn(),mw=Io(),W9l=p1s(),S1s=CVt();Object.defineProperty(lB,"parsePatchFile",{enumerable:!0,get:function(){return S1s.parsePatchFile}});var O9l=E1s();Object.defineProperty(lB,"applyPatchFile",{enumerable:!0,get:function(){return O9l.applyPatchFile}});var P9l=/^builtin<([^>]+)>$/;function dZe(e,t){let{protocol:r,source:n,selector:a,params:o}=X2.structUtils.parseRange(e);if(r!=="patch:")throw new Error("Invalid patch range");if(n===null)throw new Error("Patch locators must explicitly define their source");let l=a?a.split(/&/).map(C=>mw.npath.toPortablePath(C)):[],A=o&&typeof o.locator=="string"?X2.structUtils.parseLocator(o.locator):null,f=o&&typeof o.version=="string"?o.version:null,I=t(n);return{parentLocator:A,sourceItem:I,patchPaths:l,sourceVersion:f}}function v1s(e){return e.range.startsWith("patch:")}function B1s(e){return e.reference.startsWith("patch:")}function M9l(e){let{sourceItem:t,...r}=dZe(e.range,X2.structUtils.parseDescriptor);return{...r,sourceDescriptor:t}}function H9l(e){let{sourceItem:t,...r}=dZe(e.reference,X2.structUtils.parseLocator);return{...r,sourceLocator:t}}function Y9l(e){let{sourceItem:t}=dZe(e.range,X2.structUtils.parseDescriptor);return t}function Q9l(e){let{sourceItem:t}=dZe(e.reference,X2.structUtils.parseLocator);return t}function X9l(e){if(!v1s(e))return e;let{sourceItem:t}=dZe(e.range,X2.structUtils.parseDescriptor);return t}function w1s(e){if(!B1s(e))return e;let{sourceItem:t}=dZe(e.reference,X2.structUtils.parseLocator);return t}function T1s({parentLocator:e,sourceItem:t,patchPaths:r,sourceVersion:n,patchHash:a},o){let l=e!==null?{locator:X2.structUtils.stringifyLocator(e)}:{},A=typeof n<"u"?{version:n}:{},f=typeof a<"u"?{hash:a}:{};return X2.structUtils.makeRange({protocol:"patch:",source:o(t),selector:r.join("&"),params:{...A,...f,...l}})}function J9l(e,{parentLocator:t,sourceDescriptor:r,patchPaths:n}){return X2.structUtils.makeDescriptor(e,T1s({parentLocator:t,sourceItem:r,patchPaths:n},X2.structUtils.stringifyDescriptor))}function U9l(e,{parentLocator:t,sourcePackage:r,patchPaths:n,patchHash:a}){return X2.structUtils.makeLocator(e,T1s({parentLocator:t,sourceItem:r,sourceVersion:r.version,patchPaths:n,patchHash:a},X2.structUtils.stringifyLocator))}function R1s({onAbsolute:e,onRelative:t,onProject:r,onBuiltin:n},a){let o=a.lastIndexOf("!");o!==-1&&(a=a.slice(o+1));let l=a.match(P9l);return l!==null?n(l[1]):a.startsWith("~/")?r(a.slice(2)):mw.ppath.isAbsolute(a)?e(a):t(a)}function N1s(e){let t=e.lastIndexOf("!");return{optional:(t!==-1?new Set(e.slice(0,t).split(/!/)):new Set).has("optional")}}function K9l(e){return R1s({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},e)}async function j9l(e,t,r){let n=e!==null?await r.fetcher.fetch(e,r):null,a=n&&n.localPath?{packageFs:new mw.CwdFS(mw.PortablePath.root),prefixPath:mw.ppath.relative(mw.PortablePath.root,n.localPath)}:n;n&&n!==a&&n.releaseFs&&n.releaseFs();let o=await X2.miscUtils.releaseAfterUseAsync(async()=>await Promise.all(t.map(async l=>{let A=N1s(l),f=await R1s({onAbsolute:async I=>await mw.xfs.readFilePromise(I,"utf8"),onRelative:async I=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(mw.ppath.join(a.prefixPath,I),"utf8")},onProject:async I=>await mw.xfs.readFilePromise(mw.ppath.join(r.project.cwd,I),"utf8"),onBuiltin:async I=>await r.project.configuration.firstHook(C=>C.getBuiltinPatch,r.project,I)},l);return{...A,source:f}})));for(let l of o)typeof l.source=="string"&&(l.source=l.source.replace(/\r\n?/g,` -`));return o}async function z9l(e,{cache:t,project:r}){let n=r.storedPackages.get(e.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=w1s(e),o=r.storedChecksums,l=new X2.ThrowReport,A=await mw.xfs.mktempPromise(),f=mw.ppath.join(A,"source"),I=mw.ppath.join(A,"user"),C=mw.ppath.join(A,".yarn-patch.json"),b=r.configuration.makeFetcher(),E=[];try{let N,B;if(e.locatorHash===a.locatorHash){let F=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l});E.push(()=>F.releaseFs?.()),N=F,B=F}else N=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>N.releaseFs?.()),B=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>B.releaseFs?.());await Promise.all([mw.xfs.copyPromise(f,N.prefixPath,{baseFs:N.packageFs}),mw.xfs.copyPromise(I,B.prefixPath,{baseFs:B.packageFs}),mw.xfs.writeJsonPromise(C,{locator:X2.structUtils.stringifyLocator(e),version:n.version})])}finally{for(let N of E)N()}return mw.xfs.detachTemp(A),I}async function q9l(e,t){let r=mw.npath.fromPortablePath(e).replace(/\\/g,"/"),n=mw.npath.fromPortablePath(t).replace(/\\/g,"/"),{stdout:a,stderr:o}=await X2.execUtils.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,n],{cwd:mw.npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(o.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. +`):"";await t.mkdirpPromise(xre.ppath.dirname(a.path),{chmod:493,utimes:[xre.constants.SAFE_TIME,xre.constants.SAFE_TIME]}),await t.writeFilePromise(a.path,o,{mode:a.mode}),await t.utimesPromise(a.path,xre.constants.SAFE_TIME,xre.constants.SAFE_TIME)}break;case"patch":await AZe(t,a.path,async()=>{await E1s(a,{baseFs:t,dryRun:r})});break;case"mode change":{let l=(await t.statPromise(a.path)).mode;if(_1s(a.newMode)!==_1s(l))continue;await AZe(t,a.path,async()=>{await t.chmodPromise(a.path,a.newMode)})}break;default:bVt.miscUtils.assertNever(a);break}}function _1s(e){return(e&64)>0}function y1s(e){return e.replace(/\s+$/,"")}function FVl(e,t){return y1s(e)===y1s(t)}async function E1s({hunks:e,path:t},{baseFs:r,dryRun:n=!1}){let a=await r.statSync(t).mode,l=(await r.readFileSync(t,"utf8")).split(/\n/),A=[],f=0,I=0;for(let b of e){let E=Math.max(I,b.header.patched.start+f),N=Math.max(0,E-I),B=Math.max(0,l.length-E-b.header.original.length),F=Math.max(N,B),Q=0,J=0,ae=null;for(;Q<=F;){if(Q<=N&&(J=E-Q,ae=b1s(b,l,J),ae!==null)){Q=-Q;break}if(Q<=B&&(J=E+Q,ae=b1s(b,l,J),ae!==null))break;Q+=1}if(ae===null)throw new xVl.UnmatchedHunkError(e.indexOf(b),b);A.push(ae),f+=Q,I=J+b.header.original.length}if(n)return;let C=0;for(let b of A)for(let E of b)switch(E.type){case"splice":{let N=E.index+C;l.splice(N,E.numToDelete,...E.linesToInsert),C+=E.linesToInsert.length-E.numToDelete}break;case"pop":l.pop();break;case"push":l.push(E.line);break;default:bVt.miscUtils.assertNever(E);break}await r.writeFilePromise(t,l.join(` +`),{mode:a})}function b1s(e,t,r){let n=[];for(let a of e.parts)switch(a.type){case yVt.PatchMutationType.Context:case yVt.PatchMutationType.Deletion:{for(let o of a.lines){let l=t[r];if(l==null||!FVl(l,o))return null;r+=1}a.type===yVt.PatchMutationType.Deletion&&(n.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&n.push({type:"push",line:""}))}break;case yVt.PatchMutationType.Insertion:n.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&n.push({type:"pop"});break;default:bVt.miscUtils.assertNever(a.type);break}return n}});var pZe=H(uB=>{"use strict";Object.defineProperty(uB,"__esModule",{value:!0});uB.parsePatchFile=uB.applyPatchFile=void 0;uB.isPatchDescriptor=B1s;uB.isPatchLocator=w1s;uB.parseDescriptor=WVl;uB.parseLocator=OVl;uB.unpatchDescriptor=PVl;uB.unpatchLocator=MVl;uB.ensureUnpatchedDescriptor=HVl;uB.ensureUnpatchedLocator=T1s;uB.makeDescriptor=YVl;uB.makeLocator=QVl;uB.extractPatchFlags=D1s;uB.isParentRequired=XVl;uB.loadPatchFiles=JVl;uB.extractPackageToDisk=UVl;uB.diffFolders=KVl;uB.makePatchHash=jVl;var J2=wn(),Cw=No(),ZVl=f1s(),v1s=CVt();Object.defineProperty(uB,"parsePatchFile",{enumerable:!0,get:function(){return v1s.parsePatchFile}});var LVl=S1s();Object.defineProperty(uB,"applyPatchFile",{enumerable:!0,get:function(){return LVl.applyPatchFile}});var VVl=/^builtin<([^>]+)>$/;function dZe(e,t){let{protocol:r,source:n,selector:a,params:o}=J2.structUtils.parseRange(e);if(r!=="patch:")throw new Error("Invalid patch range");if(n===null)throw new Error("Patch locators must explicitly define their source");let l=a?a.split(/&/).map(C=>Cw.npath.toPortablePath(C)):[],A=o&&typeof o.locator=="string"?J2.structUtils.parseLocator(o.locator):null,f=o&&typeof o.version=="string"?o.version:null,I=t(n);return{parentLocator:A,sourceItem:I,patchPaths:l,sourceVersion:f}}function B1s(e){return e.range.startsWith("patch:")}function w1s(e){return e.reference.startsWith("patch:")}function WVl(e){let{sourceItem:t,...r}=dZe(e.range,J2.structUtils.parseDescriptor);return{...r,sourceDescriptor:t}}function OVl(e){let{sourceItem:t,...r}=dZe(e.reference,J2.structUtils.parseLocator);return{...r,sourceLocator:t}}function PVl(e){let{sourceItem:t}=dZe(e.range,J2.structUtils.parseDescriptor);return t}function MVl(e){let{sourceItem:t}=dZe(e.reference,J2.structUtils.parseLocator);return t}function HVl(e){if(!B1s(e))return e;let{sourceItem:t}=dZe(e.range,J2.structUtils.parseDescriptor);return t}function T1s(e){if(!w1s(e))return e;let{sourceItem:t}=dZe(e.reference,J2.structUtils.parseLocator);return t}function R1s({parentLocator:e,sourceItem:t,patchPaths:r,sourceVersion:n,patchHash:a},o){let l=e!==null?{locator:J2.structUtils.stringifyLocator(e)}:{},A=typeof n<"u"?{version:n}:{},f=typeof a<"u"?{hash:a}:{};return J2.structUtils.makeRange({protocol:"patch:",source:o(t),selector:r.join("&"),params:{...A,...f,...l}})}function YVl(e,{parentLocator:t,sourceDescriptor:r,patchPaths:n}){return J2.structUtils.makeDescriptor(e,R1s({parentLocator:t,sourceItem:r,patchPaths:n},J2.structUtils.stringifyDescriptor))}function QVl(e,{parentLocator:t,sourcePackage:r,patchPaths:n,patchHash:a}){return J2.structUtils.makeLocator(e,R1s({parentLocator:t,sourceItem:r,sourceVersion:r.version,patchPaths:n,patchHash:a},J2.structUtils.stringifyLocator))}function N1s({onAbsolute:e,onRelative:t,onProject:r,onBuiltin:n},a){let o=a.lastIndexOf("!");o!==-1&&(a=a.slice(o+1));let l=a.match(VVl);return l!==null?n(l[1]):a.startsWith("~/")?r(a.slice(2)):Cw.ppath.isAbsolute(a)?e(a):t(a)}function D1s(e){let t=e.lastIndexOf("!");return{optional:(t!==-1?new Set(e.slice(0,t).split(/!/)):new Set).has("optional")}}function XVl(e){return N1s({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},e)}async function JVl(e,t,r){let n=e!==null?await r.fetcher.fetch(e,r):null,a=n&&n.localPath?{packageFs:new Cw.CwdFS(Cw.PortablePath.root),prefixPath:Cw.ppath.relative(Cw.PortablePath.root,n.localPath)}:n;n&&n!==a&&n.releaseFs&&n.releaseFs();let o=await J2.miscUtils.releaseAfterUseAsync(async()=>await Promise.all(t.map(async l=>{let A=D1s(l),f=await N1s({onAbsolute:async I=>await Cw.xfs.readFilePromise(I,"utf8"),onRelative:async I=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(Cw.ppath.join(a.prefixPath,I),"utf8")},onProject:async I=>await Cw.xfs.readFilePromise(Cw.ppath.join(r.project.cwd,I),"utf8"),onBuiltin:async I=>await r.project.configuration.firstHook(C=>C.getBuiltinPatch,r.project,I)},l);return{...A,source:f}})));for(let l of o)typeof l.source=="string"&&(l.source=l.source.replace(/\r\n?/g,` +`));return o}async function UVl(e,{cache:t,project:r}){let n=r.storedPackages.get(e.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=T1s(e),o=r.storedChecksums,l=new J2.ThrowReport,A=await Cw.xfs.mktempPromise(),f=Cw.ppath.join(A,"source"),I=Cw.ppath.join(A,"user"),C=Cw.ppath.join(A,".yarn-patch.json"),b=r.configuration.makeFetcher(),E=[];try{let N,B;if(e.locatorHash===a.locatorHash){let F=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l});E.push(()=>F.releaseFs?.()),N=F,B=F}else N=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>N.releaseFs?.()),B=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>B.releaseFs?.());await Promise.all([Cw.xfs.copyPromise(f,N.prefixPath,{baseFs:N.packageFs}),Cw.xfs.copyPromise(I,B.prefixPath,{baseFs:B.packageFs}),Cw.xfs.writeJsonPromise(C,{locator:J2.structUtils.stringifyLocator(e),version:n.version})])}finally{for(let N of E)N()}return Cw.xfs.detachTemp(A),I}async function KVl(e,t){let r=Cw.npath.fromPortablePath(e).replace(/\\/g,"/"),n=Cw.npath.fromPortablePath(t).replace(/\\/g,"/"),{stdout:a,stderr:o}=await J2.execUtils.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,n],{cwd:Cw.npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(o.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. The following error was reported by 'git': -${o}`);let l=r.startsWith("/")?A=>A.slice(1):A=>A;return a.replace(new RegExp(`(a|b)(${X2.miscUtils.escapeRegExp(`/${l(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${X2.miscUtils.escapeRegExp(`/${l(n)}/`)}`,"g"),"$1/").replace(new RegExp(X2.miscUtils.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(X2.miscUtils.escapeRegExp(`${n}/`),"g"),"")}function $9l(e,t){let r=[];for(let{source:n}of e){if(n===null)continue;let a=(0,S1s.parsePatchFile)(n);for(let o of a){let{semverExclusivity:l,...A}=o;l!==null&&t!==null&&!X2.semverUtils.satisfiesWithPrereleases(t,l)||r.push(JSON.stringify(A))}}return X2.hashUtils.makeHash(`${W9l.CACHE_VERSION}`,...r).slice(0,6)}});var D1s=H(Uqr=>{"use strict";Object.defineProperty(Uqr,"__esModule",{value:!0});Uqr.reportHunk=eVl;var Cge=mn(),Jqr=CVt();function eVl(e,{configuration:t,report:r}){for(let n of e.parts)for(let a of n.lines)switch(n.type){case Jqr.PatchMutationType.Context:r.reportInfo(null,` ${Cge.formatUtils.pretty(t,a,"grey")}`);break;case Jqr.PatchMutationType.Deletion:r.reportError(Cge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`- ${Cge.formatUtils.pretty(t,a,Cge.formatUtils.Type.REMOVED)}`);break;case Jqr.PatchMutationType.Insertion:r.reportError(Cge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`+ ${Cge.formatUtils.pretty(t,a,Cge.formatUtils.Type.ADDED)}`);break;default:Cge.miscUtils.assertNever(n.type)}}});var k1s=H(SVt=>{"use strict";Object.defineProperty(SVt,"__esModule",{value:!0});SVt.PatchFetcher=void 0;var tVl=(Wa(),vi(Va)),Kqr=mn(),Nqe=mn(),Dqe=Io(),jqr=u8(),kqe=tVl.__importStar(pZe()),rVl=Xqr(),nVl=D1s(),zqr=class{supports(t,r){return!!kqe.isPatchLocator(t)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Nqe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Nqe.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async patchPackage(t,r){let{parentLocator:n,sourceLocator:a,sourceVersion:o,patchPaths:l}=kqe.parseLocator(t),A=await kqe.loadPatchFiles(n,l,r),f=await Dqe.xfs.mktempPromise(),I=Dqe.ppath.join(f,"current.zip"),C=await r.fetcher.fetch(a,r),b=Nqe.structUtils.getIdentVendorPath(t),E=new jqr.ZipFS(I,{create:!0,level:r.project.configuration.get("compressionLevel")});await Nqe.miscUtils.releaseAfterUseAsync(async()=>{await E.copyPromise(b,C.prefixPath,{baseFs:C.packageFs,stableSort:!0})},C.releaseFs),E.saveAndClose();for(let{source:N,optional:B}of A){if(N===null)continue;let F=new jqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")}),Q=new Dqe.CwdFS(Dqe.ppath.resolve(Dqe.PortablePath.root,b),{baseFs:F});try{await kqe.applyPatchFile(kqe.parsePatchFile(N),{baseFs:Q,version:o})}catch(J){if(!(J instanceof rVl.UnmatchedHunkError))throw J;let ae=r.project.configuration.get("enableInlineHunks"),ne=!ae&&!B?" (set enableInlineHunks for details)":"",ce=`${Nqe.structUtils.prettyLocator(r.project.configuration,t)}: ${J.message}${ne}`,fe=ue=>{ae&&(0,nVl.reportHunk)(J.hunk,{configuration:r.project.configuration,report:ue})};if(F.discardAndClose(),B){r.report.reportWarningOnce(Kqr.MessageName.PATCH_HUNK_FAILED,ce,{reportExtra:fe});continue}else throw new Kqr.ReportError(Kqr.MessageName.PATCH_HUNK_FAILED,ce,fe)}F.saveAndClose()}return new jqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")})}};SVt.PatchFetcher=zqr});var G1s=H(vVt=>{"use strict";Object.defineProperty(vVt,"__esModule",{value:!0});vVt.PatchResolver=void 0;var iVl=(Wa(),vi(Va)),x1s=mn(),s7=iVl.__importStar(pZe()),qqr=class{supportsDescriptor(t,r){return!!s7.isPatchDescriptor(t)}supportsLocator(t,r){return!!s7.isPatchLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){let{patchPaths:a}=s7.parseDescriptor(t);return a.every(o=>!s7.isParentRequired(o))?t:x1s.structUtils.bindDescriptor(t,{locator:x1s.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){let{sourceDescriptor:n}=s7.parseDescriptor(t);return{sourceDescriptor:r.project.configuration.normalizeDependency(n)}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:o}=s7.parseDescriptor(t),l=await s7.loadPatchFiles(a,o,n.fetchOptions),A=r.sourceDescriptor;if(typeof A>"u")throw new Error("Assertion failed: The dependency should have been resolved");let f=s7.makePatchHash(l,A.version);return[s7.makeLocator(t,{parentLocator:a,sourcePackage:A,patchPaths:o,patchHash:f})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let{sourceLocator:n}=s7.parseLocator(t);return{...await r.resolver.resolve(n,r),...t}}};vVt.PatchResolver=qqr});var Z1s=H($qr=>{"use strict";Object.defineProperty($qr,"__esModule",{value:!0});var sVl=(Wa(),vi(Va)),F1s=dl(),o7=mn(),BL=Io(),xqe=(Rl(),vi(ng)),BVt=sVl.__importStar(pZe()),Gqe=class extends F1s.BaseCommand{constructor(){super(...arguments),this.save=xqe.Option.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"}),this.patchFolder=xqe.Option.String()}async execute(){let t=await o7.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await o7.Project.find(t,this.context.cwd);if(!n)throw new F1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=BL.ppath.resolve(this.context.cwd,BL.npath.toPortablePath(this.patchFolder)),o=BL.ppath.join(a,"../source"),l=BL.ppath.join(a,"../.yarn-patch.json");if(!BL.xfs.existsSync(o))throw new xqe.UsageError("The argument folder didn't get created by 'yarn patch'");let A=await BVt.diffFolders(o,a),f=await BL.xfs.readJsonPromise(l),I=o7.structUtils.parseLocator(f.locator,!0);if(!r.storedPackages.has(I.locatorHash))throw new xqe.UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(A);return}let C=t.get("patchFolder"),b=BL.ppath.join(C,`${o7.structUtils.slugifyLocator(I)}.patch`);await BL.xfs.mkdirPromise(C,{recursive:!0}),await BL.xfs.writeFilePromise(b,A);let E=[],N=new Map;for(let B of r.storedPackages.values()){if(o7.structUtils.isVirtualLocator(B))continue;let F=B.dependencies.get(I.identHash);if(!F)continue;let Q=o7.structUtils.ensureDevirtualizedDescriptor(F),J=BVt.ensureUnpatchedDescriptor(Q),ae=r.storedResolutions.get(J.descriptorHash);if(!ae)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!r.storedPackages.get(ae))throw new Error("Assertion failed: Expected the package to have been registered");let ce=r.tryWorkspaceByLocator(B);if(ce)E.push(ce);else{let fe=r.originalPackages.get(B.locatorHash);if(!fe)throw new Error("Assertion failed: Expected the original package to have been registered");let ue=fe.dependencies.get(F.identHash);if(!ue)throw new Error("Assertion failed: Expected the original dependency to have been registered");N.set(ue.descriptorHash,ue)}}for(let B of E)for(let F of o7.Manifest.hardDependencies){let Q=B.manifest[F].get(I.identHash);if(!Q)continue;let J=BVt.makeDescriptor(Q,{parentLocator:null,sourceDescriptor:o7.structUtils.convertLocatorToDescriptor(I),patchPaths:[BL.ppath.join(BL.Filename.home,BL.ppath.relative(r.cwd,b))]});B.manifest[F].set(Q.identHash,J)}for(let B of N.values()){let F=BVt.makeDescriptor(B,{parentLocator:null,sourceDescriptor:o7.structUtils.convertLocatorToDescriptor(I),patchPaths:[BL.ppath.join(BL.Filename.home,BL.ppath.relative(r.cwd,b))]});r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:o7.structUtils.stringifyIdent(F),description:B.range}},reference:F.range})}await r.persist()}};Gqe.paths=[["patch-commit"]];Gqe.usage=xqe.Command.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});$qr.default=Gqe});var V1s=H(r$r=>{"use strict";Object.defineProperty(r$r,"__esModule",{value:!0});var oVl=(Wa(),vi(Va)),L1s=dl(),xD=mn(),e$r=Io(),_ye=(Rl(),vi(ng)),t$r=oVl.__importStar(pZe()),Fqe=class extends L1s.BaseCommand{constructor(){super(...arguments),this.update=_ye.Option.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"}),this.json=_ye.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=_ye.Option.String()}async execute(){let t=await xD.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await xD.Project.find(t,this.context.cwd),a=await xD.Cache.find(t);if(!n)throw new L1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=xD.structUtils.parseLocator(this.package);if(o.reference==="unknown"){let l=xD.miscUtils.mapAndFilter([...r.storedPackages.values()],A=>A.identHash!==o.identHash||xD.structUtils.isVirtualLocator(A)||t$r.isPatchLocator(A)!==this.update?xD.miscUtils.mapAndFilter.skip:A);if(l.length===0)throw new _ye.UsageError("No package found in the project for the given locator");if(l.length>1)throw new _ye.UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): +${o}`);let l=r.startsWith("/")?A=>A.slice(1):A=>A;return a.replace(new RegExp(`(a|b)(${J2.miscUtils.escapeRegExp(`/${l(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${J2.miscUtils.escapeRegExp(`/${l(n)}/`)}`,"g"),"$1/").replace(new RegExp(J2.miscUtils.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(J2.miscUtils.escapeRegExp(`${n}/`),"g"),"")}function jVl(e,t){let r=[];for(let{source:n}of e){if(n===null)continue;let a=(0,v1s.parsePatchFile)(n);for(let o of a){let{semverExclusivity:l,...A}=o;l!==null&&t!==null&&!J2.semverUtils.satisfiesWithPrereleases(t,l)||r.push(JSON.stringify(A))}}return J2.hashUtils.makeHash(`${ZVl.CACHE_VERSION}`,...r).slice(0,6)}});var k1s=H(e$r=>{"use strict";Object.defineProperty(e$r,"__esModule",{value:!0});e$r.reportHunk=zVl;var _ge=wn(),$qr=CVt();function zVl(e,{configuration:t,report:r}){for(let n of e.parts)for(let a of n.lines)switch(n.type){case $qr.PatchMutationType.Context:r.reportInfo(null,` ${_ge.formatUtils.pretty(t,a,"grey")}`);break;case $qr.PatchMutationType.Deletion:r.reportError(_ge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`- ${_ge.formatUtils.pretty(t,a,_ge.formatUtils.Type.REMOVED)}`);break;case $qr.PatchMutationType.Insertion:r.reportError(_ge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`+ ${_ge.formatUtils.pretty(t,a,_ge.formatUtils.Type.ADDED)}`);break;default:_ge.miscUtils.assertNever(n.type)}}});var x1s=H(SVt=>{"use strict";Object.defineProperty(SVt,"__esModule",{value:!0});SVt.PatchFetcher=void 0;var qVl=(Wa(),vi(Va)),t$r=wn(),Rqe=wn(),Nqe=No(),r$r=g8(),Dqe=qVl.__importStar(pZe()),$Vl=qqr(),eWl=k1s(),n$r=class{supports(t,r){return!!Dqe.isPatchLocator(t)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Rqe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Rqe.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async patchPackage(t,r){let{parentLocator:n,sourceLocator:a,sourceVersion:o,patchPaths:l}=Dqe.parseLocator(t),A=await Dqe.loadPatchFiles(n,l,r),f=await Nqe.xfs.mktempPromise(),I=Nqe.ppath.join(f,"current.zip"),C=await r.fetcher.fetch(a,r),b=Rqe.structUtils.getIdentVendorPath(t),E=new r$r.ZipFS(I,{create:!0,level:r.project.configuration.get("compressionLevel")});await Rqe.miscUtils.releaseAfterUseAsync(async()=>{await E.copyPromise(b,C.prefixPath,{baseFs:C.packageFs,stableSort:!0})},C.releaseFs),E.saveAndClose();for(let{source:N,optional:B}of A){if(N===null)continue;let F=new r$r.ZipFS(I,{level:r.project.configuration.get("compressionLevel")}),Q=new Nqe.CwdFS(Nqe.ppath.resolve(Nqe.PortablePath.root,b),{baseFs:F});try{await Dqe.applyPatchFile(Dqe.parsePatchFile(N),{baseFs:Q,version:o})}catch(J){if(!(J instanceof $Vl.UnmatchedHunkError))throw J;let ae=r.project.configuration.get("enableInlineHunks"),ne=!ae&&!B?" (set enableInlineHunks for details)":"",ce=`${Rqe.structUtils.prettyLocator(r.project.configuration,t)}: ${J.message}${ne}`,fe=ue=>{ae&&(0,eWl.reportHunk)(J.hunk,{configuration:r.project.configuration,report:ue})};if(F.discardAndClose(),B){r.report.reportWarningOnce(t$r.MessageName.PATCH_HUNK_FAILED,ce,{reportExtra:fe});continue}else throw new t$r.ReportError(t$r.MessageName.PATCH_HUNK_FAILED,ce,fe)}F.saveAndClose()}return new r$r.ZipFS(I,{level:r.project.configuration.get("compressionLevel")})}};SVt.PatchFetcher=n$r});var F1s=H(vVt=>{"use strict";Object.defineProperty(vVt,"__esModule",{value:!0});vVt.PatchResolver=void 0;var tWl=(Wa(),vi(Va)),G1s=wn(),o7=tWl.__importStar(pZe()),i$r=class{supportsDescriptor(t,r){return!!o7.isPatchDescriptor(t)}supportsLocator(t,r){return!!o7.isPatchLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){let{patchPaths:a}=o7.parseDescriptor(t);return a.every(o=>!o7.isParentRequired(o))?t:G1s.structUtils.bindDescriptor(t,{locator:G1s.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){let{sourceDescriptor:n}=o7.parseDescriptor(t);return{sourceDescriptor:r.project.configuration.normalizeDependency(n)}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:o}=o7.parseDescriptor(t),l=await o7.loadPatchFiles(a,o,n.fetchOptions),A=r.sourceDescriptor;if(typeof A>"u")throw new Error("Assertion failed: The dependency should have been resolved");let f=o7.makePatchHash(l,A.version);return[o7.makeLocator(t,{parentLocator:a,sourcePackage:A,patchPaths:o,patchHash:f})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let{sourceLocator:n}=o7.parseLocator(t);return{...await r.resolver.resolve(n,r),...t}}};vVt.PatchResolver=i$r});var L1s=H(s$r=>{"use strict";Object.defineProperty(s$r,"__esModule",{value:!0});var rWl=(Wa(),vi(Va)),Z1s=sl(),a7=wn(),wL=No(),kqe=(vl(),vi(ng)),BVt=rWl.__importStar(pZe()),xqe=class extends Z1s.BaseCommand{constructor(){super(...arguments),this.save=kqe.Option.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"}),this.patchFolder=kqe.Option.String()}async execute(){let t=await a7.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await a7.Project.find(t,this.context.cwd);if(!n)throw new Z1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=wL.ppath.resolve(this.context.cwd,wL.npath.toPortablePath(this.patchFolder)),o=wL.ppath.join(a,"../source"),l=wL.ppath.join(a,"../.yarn-patch.json");if(!wL.xfs.existsSync(o))throw new kqe.UsageError("The argument folder didn't get created by 'yarn patch'");let A=await BVt.diffFolders(o,a),f=await wL.xfs.readJsonPromise(l),I=a7.structUtils.parseLocator(f.locator,!0);if(!r.storedPackages.has(I.locatorHash))throw new kqe.UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(A);return}let C=t.get("patchFolder"),b=wL.ppath.join(C,`${a7.structUtils.slugifyLocator(I)}.patch`);await wL.xfs.mkdirPromise(C,{recursive:!0}),await wL.xfs.writeFilePromise(b,A);let E=[],N=new Map;for(let B of r.storedPackages.values()){if(a7.structUtils.isVirtualLocator(B))continue;let F=B.dependencies.get(I.identHash);if(!F)continue;let Q=a7.structUtils.ensureDevirtualizedDescriptor(F),J=BVt.ensureUnpatchedDescriptor(Q),ae=r.storedResolutions.get(J.descriptorHash);if(!ae)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!r.storedPackages.get(ae))throw new Error("Assertion failed: Expected the package to have been registered");let ce=r.tryWorkspaceByLocator(B);if(ce)E.push(ce);else{let fe=r.originalPackages.get(B.locatorHash);if(!fe)throw new Error("Assertion failed: Expected the original package to have been registered");let ue=fe.dependencies.get(F.identHash);if(!ue)throw new Error("Assertion failed: Expected the original dependency to have been registered");N.set(ue.descriptorHash,ue)}}for(let B of E)for(let F of a7.Manifest.hardDependencies){let Q=B.manifest[F].get(I.identHash);if(!Q)continue;let J=BVt.makeDescriptor(Q,{parentLocator:null,sourceDescriptor:a7.structUtils.convertLocatorToDescriptor(I),patchPaths:[wL.ppath.join(wL.Filename.home,wL.ppath.relative(r.cwd,b))]});B.manifest[F].set(Q.identHash,J)}for(let B of N.values()){let F=BVt.makeDescriptor(B,{parentLocator:null,sourceDescriptor:a7.structUtils.convertLocatorToDescriptor(I),patchPaths:[wL.ppath.join(wL.Filename.home,wL.ppath.relative(r.cwd,b))]});r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:a7.structUtils.stringifyIdent(F),description:B.range}},reference:F.range})}await r.persist()}};xqe.paths=[["patch-commit"]];xqe.usage=kqe.Command.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});s$r.default=xqe});var W1s=H(c$r=>{"use strict";Object.defineProperty(c$r,"__esModule",{value:!0});var nWl=(Wa(),vi(Va)),V1s=sl(),GD=wn(),o$r=No(),_ye=(vl(),vi(ng)),a$r=nWl.__importStar(pZe()),Gqe=class extends V1s.BaseCommand{constructor(){super(...arguments),this.update=_ye.Option.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"}),this.json=_ye.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=_ye.Option.String()}async execute(){let t=await GD.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await GD.Project.find(t,this.context.cwd),a=await GD.Cache.find(t);if(!n)throw new V1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=GD.structUtils.parseLocator(this.package);if(o.reference==="unknown"){let l=GD.miscUtils.mapAndFilter([...r.storedPackages.values()],A=>A.identHash!==o.identHash||GD.structUtils.isVirtualLocator(A)||a$r.isPatchLocator(A)!==this.update?GD.miscUtils.mapAndFilter.skip:A);if(l.length===0)throw new _ye.UsageError("No package found in the project for the given locator");if(l.length>1)throw new _ye.UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): ${l.map(A=>` -- ${xD.structUtils.prettyLocator(t,A)}`).join("")}`);o=l[0]}if(!r.storedPackages.has(o.locatorHash))throw new _ye.UsageError("No package found in the project for the given locator");await xD.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=t$r.ensureUnpatchedLocator(o),f=await t$r.extractPackageToDisk(o,{cache:a,project:r});l.reportJson({locator:xD.structUtils.stringifyLocator(A),path:e$r.npath.fromPortablePath(f)});let I=this.update?" along with its current modifications":"";l.reportInfo(xD.MessageName.UNNAMED,`Package ${xD.structUtils.prettyLocator(t,A)} got extracted with success${I}!`),l.reportInfo(xD.MessageName.UNNAMED,`You can now edit the following folder: ${xD.formatUtils.pretty(t,e$r.npath.fromPortablePath(f),"magenta")}`),l.reportInfo(xD.MessageName.UNNAMED,`Once you are done run ${xD.formatUtils.pretty(t,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${e$r.npath.fromPortablePath(f)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};Fqe.paths=[["patch"]];Fqe.usage=_ye.Command.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});r$r.default=Fqe});var Y1s=H(i3=>{"use strict";Object.defineProperty(i3,"__esModule",{value:!0});i3.patchUtils=i3.PatchCommand=i3.PatchCommitCommand=i3.PatchResolver=i3.PatchFetcher=void 0;var n$r=(Wa(),vi(Va)),W1s=mn(),O1s=k1s();Object.defineProperty(i3,"PatchFetcher",{enumerable:!0,get:function(){return O1s.PatchFetcher}});var P1s=G1s();Object.defineProperty(i3,"PatchResolver",{enumerable:!0,get:function(){return P1s.PatchResolver}});var M1s=n$r.__importDefault(Z1s());i3.PatchCommitCommand=M1s.default;var H1s=n$r.__importDefault(V1s());i3.PatchCommand=H1s.default;var aVl=n$r.__importStar(pZe());i3.patchUtils=aVl;var cVl={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:W1s.SettingsType.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:W1s.SettingsType.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[M1s.default,H1s.default],fetchers:[O1s.PatchFetcher],resolvers:[P1s.PatchResolver]};i3.default=cVl});var U1s=H(wVt=>{"use strict";Object.defineProperty(wVt,"__esModule",{value:!0});wVt.PnpmLinker=void 0;var XS=mn(),Ym=Io(),Q1s=OGe(),i$r=(Rl(),vi(ng)),s$r=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new i$r.UsageError(`The project in ${XS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,XS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=a.pathsByLocator.get(t.locatorHash);if(typeof o>"u")throw new i$r.UsageError(`Couldn't find ${XS.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed pnpm map - running an install might help`);return o.packageLocation}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new i$r.UsageError(`The project in ${XS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,XS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=t.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(o){let f=a.locatorByPath.get(o[1]);if(f)return f}let l=t,A=t;do{A=l,l=Ym.ppath.dirname(A);let f=a.locatorByPath.get(A);if(f)return f}while(l!==A);return null}makeInstaller(t){return new o$r(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="pnpm"}};wVt.PnpmLinker=s$r;var o$r=class{constructor(t){this.opts=t,this.asyncActions=new XS.miscUtils.AsyncActions(10),this.customData={pathsByLocator:new Map,locatorByPath:new Map},this.indexFolderPromise=(0,Ym.setupCopyIndex)(Ym.xfs,{indexPath:Ym.ppath.join(t.project.configuration.get("globalFolder"),"index")})}attachCustomData(t){}async installPackage(t,r,n){switch(t.linkType){case XS.LinkType.SOFT:return this.installPackageSoft(t,r,n);case XS.LinkType.HARD:return this.installPackageHard(t,r,n)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(t,r,n){let a=Ym.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),o=this.opts.project.tryWorkspaceByLocator(t)?Ym.ppath.join(a,Ym.Filename.nodeModules):null;return this.customData.pathsByLocator.set(t.locatorHash,{packageLocation:a,dependenciesLocation:o}),{packageLocation:a,buildRequest:null}}async installPackageHard(t,r,n){let a=uVl(t,{project:this.opts.project}),o=a.packageLocation;this.customData.locatorByPath.set(o,XS.structUtils.stringifyLocator(t)),this.customData.pathsByLocator.set(t.locatorHash,a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{await Ym.xfs.mkdirPromise(o,{recursive:!0}),await Ym.xfs.copyPromise(o,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let A=XS.structUtils.isVirtualLocator(t)?XS.structUtils.devirtualizeLocator(t):t,f={manifest:await XS.Manifest.tryFind(r.prefixPath,{baseFs:r.packageFs})??new XS.Manifest,misc:{hasBindingGyp:Q1s.jsInstallUtils.hasBindingGyp(r)}},I=this.opts.project.getDependencyMeta(A,t.version),C=Q1s.jsInstallUtils.extractBuildRequest(t,f,I,{configuration:this.opts.project.configuration});return{packageLocation:o,buildRequest:C}}async attachInternalDependencies(t,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!X1s(t,{project:this.opts.project}))return;let n=this.customData.pathsByLocator.get(t.locatorHash);if(typeof n>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${XS.structUtils.stringifyLocator(t)})`);let{dependenciesLocation:a}=n;a&&this.asyncActions.reduce(t.locatorHash,async o=>{await Ym.xfs.mkdirPromise(a,{recursive:!0});let l=await gVl(a),A=new Map(l),f=[o],I=(b,E)=>{let N=E;X1s(E,{project:this.opts.project})||(this.opts.report.reportWarningOnce(XS.MessageName.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),N=XS.structUtils.devirtualizeLocator(E));let B=this.customData.pathsByLocator.get(N.locatorHash);if(typeof B>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${XS.structUtils.stringifyLocator(E)})`);let F=XS.structUtils.stringifyIdent(b),Q=Ym.ppath.join(a,F),J=Ym.ppath.relative(Ym.ppath.dirname(Q),B.packageLocation),ae=A.get(F);A.delete(F),f.push(Promise.resolve().then(async()=>{if(ae){if(ae.isSymbolicLink()&&await Ym.xfs.readlinkPromise(Q)===J)return;await Ym.xfs.removePromise(Q)}await Ym.xfs.mkdirpPromise(Ym.ppath.dirname(Q)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")===XS.WindowsLinkType.JUNCTIONS?await Ym.xfs.symlinkPromise(B.packageLocation,Q,"junction"):await Ym.xfs.symlinkPromise(J,Q)}))},C=!1;for(let[b,E]of r)b.identHash===t.identHash&&(C=!0),I(b,E);!C&&!this.opts.project.tryWorkspaceByLocator(t)&&I(XS.structUtils.convertLocatorToDescriptor(t),t),f.push(AVl(a,A)),await Promise.all(f)})}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let t=J1s(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await Ym.xfs.removePromise(t);else{let r;try{r=new Set(await Ym.xfs.readdirPromise(t))}catch{r=new Set}for(let{dependenciesLocation:n}of this.customData.pathsByLocator.values()){if(!n)continue;let a=Ym.ppath.contains(t,n);if(a===null)continue;let[o]=a.split(Ym.ppath.sep);r.delete(o)}await Promise.all([...r].map(async n=>{await Ym.xfs.removePromise(Ym.ppath.join(t,n))}))}return await this.asyncActions.wait(),await a$r(t),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await a$r(lVl(this.opts.project)),{customData:this.customData}}};function lVl(e){return Ym.ppath.join(e.cwd,Ym.Filename.nodeModules)}function J1s(e){return e.configuration.get("pnpmStoreFolder")}function uVl(e,{project:t}){let r=XS.structUtils.slugifyLocator(e),n=J1s(t),a=Ym.ppath.join(n,r,"package"),o=Ym.ppath.join(n,r,Ym.Filename.nodeModules);return{packageLocation:a,dependenciesLocation:o}}function X1s(e,{project:t}){return!XS.structUtils.isVirtualLocator(e)||!t.tryWorkspaceByLocator(e)}async function gVl(e){let t=new Map,r=[];try{r=await Ym.xfs.readdirPromise(e,{withFileTypes:!0})}catch(n){if(n.code!=="ENOENT")throw n}try{for(let n of r)if(!n.name.startsWith("."))if(n.name.startsWith("@")){let a=await Ym.xfs.readdirPromise(Ym.ppath.join(e,n.name),{withFileTypes:!0});if(a.length===0)t.set(n.name,n);else for(let o of a)t.set(`${n.name}/${o.name}`,o)}else t.set(n.name,n)}catch(n){if(n.code!=="ENOENT")throw n}return t}async function AVl(e,t){let r=[],n=new Set;for(let a of t.keys()){r.push(Ym.xfs.removePromise(Ym.ppath.join(e,a)));let o=XS.structUtils.tryParseIdent(a)?.scope;o&&n.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...n].map(a=>a$r(Ym.ppath.join(e,a)))))}async function a$r(e){try{await Ym.xfs.rmdirPromise(e)}catch(t){if(t.code!=="ENOENT"&&t.code!=="ENOTEMPTY"&&t.code!=="EBUSY")throw t}}});var j1s=H(Zqe=>{"use strict";Object.defineProperty(Zqe,"__esModule",{value:!0});Zqe.PnpmLinker=void 0;var dVl=mn(),K1s=U1s();Object.defineProperty(Zqe,"PnpmLinker",{enumerable:!0,get:function(){return K1s.PnpmLinker}});var pVl={configuration:{pnpmStoreFolder:{description:"By default, the store is stored in the 'node_modules/.store' of the project. Sometimes in CI scenario's it is convenient to store this in a different location so it can be cached and reused.",type:dVl.SettingsType.ABSOLUTE_PATH,default:"./node_modules/.store"}},linkers:[K1s.PnpmLinker]};Zqe.default=pVl});var c$r=H(bJ=>{"use strict";Object.defineProperty(bJ,"__esModule",{value:!0});bJ.ActionType=void 0;bJ.findVcsRoot=fVl;bJ.isYarnFile=IVl;bJ.expandDirectory=hVl;bJ.checkConsensus=TVt;bJ.findConsensus=mVl;bJ.getCommitPrefix=z1s;bJ.genCommitMessage=_Vl;var _ge=Io(),yye;(function(e){e[e.CREATE=0]="CREATE",e[e.DELETE=1]="DELETE",e[e.ADD=2]="ADD",e[e.REMOVE=3]="REMOVE",e[e.MODIFY=4]="MODIFY"})(yye||(bJ.ActionType=yye={}));async function fVl(e,{marker:t}){do if(!_ge.xfs.existsSync(_ge.ppath.join(e,t)))e=_ge.ppath.dirname(e);else return e;while(e!=="/");return null}function IVl(e,{roots:t,names:r}){if(r.has(_ge.ppath.basename(e)))return!0;do if(!t.has(e))e=_ge.ppath.dirname(e);else return!0;while(e!=="/");return!1}function hVl(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop(),a=_ge.xfs.readdirSync(n);for(let o of a){let l=_ge.ppath.resolve(n,o);_ge.xfs.lstatSync(l).isDirectory()?r.push(l):t.push(l)}}return t}function TVt(e,t){let r=0,n=0;for(let a of e)a!=="wip"&&(t.test(a)?r+=1:n+=1);return r>=n}function mVl(e){let t=TVt(e,/^(\w\(\w+\):\s*)?\w+s/),r=TVt(e,/^(\w\(\w+\):\s*)?[A-Z]/),n=TVt(e,/^\w\(\w+\):/);return{useThirdPerson:t,useUpperCase:r,useComponent:n}}function z1s(e){return e.useComponent?"chore(yarn): ":""}var CVl=new Map([[yye.CREATE,"create"],[yye.DELETE,"delete"],[yye.ADD,"add"],[yye.REMOVE,"remove"],[yye.MODIFY,"update"]]);function _Vl(e,t){let r=z1s(e),n=[],a=t.slice().sort((o,l)=>o[0]-l[0]);for(;a.length>0;){let[o,l]=a.shift(),A=CVl.get(o);e.useUpperCase&&n.length===0&&(A=`${A[0].toUpperCase()}${A.slice(1)}`),e.useThirdPerson&&(A+="s");let f=[l];for(;a.length>0&&a[0][0]===o;){let[,C]=a.shift();f.push(C)}f.sort();let I=f.shift();f.length===1?I+=" (and one other)":f.length>1&&(I+=` (and ${f.length} others)`),n.push(`${A} ${I}`)}return`${r}${n.join(", ")}`}});var $1s=H(RVt=>{"use strict";Object.defineProperty(RVt,"__esModule",{value:!0});RVt.Driver=void 0;var yVl=(Wa(),vi(Va)),Ex=mn(),fZe=Io(),q1=yVl.__importStar(c$r()),bVl="Commit generated via `yarn stage`",EVl=11;async function q1s(e){let{code:t,stdout:r}=await Ex.execUtils.execvp("git",["log","-1","--pretty=format:%H"],{cwd:e});return t===0?r.trim():null}async function SVl(e,t){let r=[],n=t.filter(I=>fZe.ppath.basename(I.path)==="package.json");for(let{action:I,path:C}of n){let b=fZe.ppath.relative(e,C);if(I===q1.ActionType.MODIFY){let E=await q1s(e),{stdout:N}=await Ex.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await Ex.Manifest.fromText(N),F=await Ex.Manifest.fromFile(C),Q=new Map([...F.dependencies,...F.devDependencies]),J=new Map([...B.dependencies,...B.devDependencies]);for(let[ae,ne]of J){let ce=Ex.structUtils.stringifyIdent(ne),fe=Q.get(ae);fe?fe.range!==ne.range&&r.push([q1.ActionType.MODIFY,`${ce} to ${fe.range}`]):r.push([q1.ActionType.REMOVE,ce])}for(let[ae,ne]of Q)J.has(ae)||r.push([q1.ActionType.ADD,Ex.structUtils.stringifyIdent(ne)])}else if(I===q1.ActionType.CREATE){let E=await Ex.Manifest.fromFile(C);E.name?r.push([q1.ActionType.CREATE,Ex.structUtils.stringifyIdent(E.name)]):r.push([q1.ActionType.CREATE,"a package"])}else if(I===q1.ActionType.DELETE){let E=await q1s(e),{stdout:N}=await Ex.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await Ex.Manifest.fromText(N);B.name?r.push([q1.ActionType.DELETE,Ex.structUtils.stringifyIdent(B.name)]):r.push([q1.ActionType.DELETE,"a package"])}else throw new Error("Assertion failed: Unsupported action type")}let{code:a,stdout:o}=await Ex.execUtils.execvp("git",["log",`-${EVl}`,"--pretty=format:%s"],{cwd:e}),l=a===0?o.split(/\n/g).filter(I=>I!==""):[],A=q1.findConsensus(l);return q1.genCommitMessage(A,r)}var vVl={[q1.ActionType.CREATE]:[" A ","?? "],[q1.ActionType.MODIFY]:[" M "],[q1.ActionType.DELETE]:[" D "]},BVl={[q1.ActionType.CREATE]:["A "],[q1.ActionType.MODIFY]:["M "],[q1.ActionType.DELETE]:["D "]};RVt.Driver={async findRoot(e){return await q1.findVcsRoot(e,{marker:".git"})},async filterChanges(e,t,r,n){let{stdout:a}=await Ex.execUtils.execvp("git",["status","-s"],{cwd:e,strict:!0}),o=a.toString().split(/\n/g),l=n?.staged?BVl:vVl;return[].concat(...o.map(f=>{if(f==="")return[];let I=f.slice(0,3),C=fZe.ppath.resolve(e,f.slice(3));if(!n?.staged&&I==="?? "&&f.endsWith("/"))return q1.expandDirectory(C).map(b=>({action:q1.ActionType.CREATE,path:b}));{let E=[q1.ActionType.CREATE,q1.ActionType.MODIFY,q1.ActionType.DELETE].find(N=>l[N].includes(I));return E!==void 0?[{action:E,path:C}]:[]}})).filter(f=>q1.isYarnFile(f.path,{roots:t,names:r}))},async genCommitMessage(e,t){return await SVl(e,t)},async makeStage(e,t){let r=t.map(n=>fZe.npath.fromPortablePath(n.path));await Ex.execUtils.execvp("git",["add","--",...r],{cwd:e,strict:!0})},async makeCommit(e,t,r){let n=t.map(a=>fZe.npath.fromPortablePath(a.path));await Ex.execUtils.execvp("git",["add","-N","--",...n],{cwd:e,strict:!0}),await Ex.execUtils.execvp("git",["commit","-m",`${r} +- ${GD.structUtils.prettyLocator(t,A)}`).join("")}`);o=l[0]}if(!r.storedPackages.has(o.locatorHash))throw new _ye.UsageError("No package found in the project for the given locator");await GD.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=a$r.ensureUnpatchedLocator(o),f=await a$r.extractPackageToDisk(o,{cache:a,project:r});l.reportJson({locator:GD.structUtils.stringifyLocator(A),path:o$r.npath.fromPortablePath(f)});let I=this.update?" along with its current modifications":"";l.reportInfo(GD.MessageName.UNNAMED,`Package ${GD.structUtils.prettyLocator(t,A)} got extracted with success${I}!`),l.reportInfo(GD.MessageName.UNNAMED,`You can now edit the following folder: ${GD.formatUtils.pretty(t,o$r.npath.fromPortablePath(f),"magenta")}`),l.reportInfo(GD.MessageName.UNNAMED,`Once you are done run ${GD.formatUtils.pretty(t,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${o$r.npath.fromPortablePath(f)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};Gqe.paths=[["patch"]];Gqe.usage=_ye.Command.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});c$r.default=Gqe});var Q1s=H(o3=>{"use strict";Object.defineProperty(o3,"__esModule",{value:!0});o3.patchUtils=o3.PatchCommand=o3.PatchCommitCommand=o3.PatchResolver=o3.PatchFetcher=void 0;var l$r=(Wa(),vi(Va)),O1s=wn(),P1s=x1s();Object.defineProperty(o3,"PatchFetcher",{enumerable:!0,get:function(){return P1s.PatchFetcher}});var M1s=F1s();Object.defineProperty(o3,"PatchResolver",{enumerable:!0,get:function(){return M1s.PatchResolver}});var H1s=l$r.__importDefault(L1s());o3.PatchCommitCommand=H1s.default;var Y1s=l$r.__importDefault(W1s());o3.PatchCommand=Y1s.default;var iWl=l$r.__importStar(pZe());o3.patchUtils=iWl;var sWl={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:O1s.SettingsType.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:O1s.SettingsType.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[H1s.default,Y1s.default],fetchers:[P1s.PatchFetcher],resolvers:[M1s.PatchResolver]};o3.default=sWl});var K1s=H(wVt=>{"use strict";Object.defineProperty(wVt,"__esModule",{value:!0});wVt.PnpmLinker=void 0;var JS=wn(),Ym=No(),X1s=OGe(),u$r=(vl(),vi(ng)),g$r=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new u$r.UsageError(`The project in ${JS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,JS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=a.pathsByLocator.get(t.locatorHash);if(typeof o>"u")throw new u$r.UsageError(`Couldn't find ${JS.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed pnpm map - running an install might help`);return o.packageLocation}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new u$r.UsageError(`The project in ${JS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,JS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=t.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(o){let f=a.locatorByPath.get(o[1]);if(f)return f}let l=t,A=t;do{A=l,l=Ym.ppath.dirname(A);let f=a.locatorByPath.get(A);if(f)return f}while(l!==A);return null}makeInstaller(t){return new A$r(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="pnpm"}};wVt.PnpmLinker=g$r;var A$r=class{constructor(t){this.opts=t,this.asyncActions=new JS.miscUtils.AsyncActions(10),this.customData={pathsByLocator:new Map,locatorByPath:new Map},this.indexFolderPromise=(0,Ym.setupCopyIndex)(Ym.xfs,{indexPath:Ym.ppath.join(t.project.configuration.get("globalFolder"),"index")})}attachCustomData(t){}async installPackage(t,r,n){switch(t.linkType){case JS.LinkType.SOFT:return this.installPackageSoft(t,r,n);case JS.LinkType.HARD:return this.installPackageHard(t,r,n)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(t,r,n){let a=Ym.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),o=this.opts.project.tryWorkspaceByLocator(t)?Ym.ppath.join(a,Ym.Filename.nodeModules):null;return this.customData.pathsByLocator.set(t.locatorHash,{packageLocation:a,dependenciesLocation:o}),{packageLocation:a,buildRequest:null}}async installPackageHard(t,r,n){let a=aWl(t,{project:this.opts.project}),o=a.packageLocation;this.customData.locatorByPath.set(o,JS.structUtils.stringifyLocator(t)),this.customData.pathsByLocator.set(t.locatorHash,a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{await Ym.xfs.mkdirPromise(o,{recursive:!0}),await Ym.xfs.copyPromise(o,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let A=JS.structUtils.isVirtualLocator(t)?JS.structUtils.devirtualizeLocator(t):t,f={manifest:await JS.Manifest.tryFind(r.prefixPath,{baseFs:r.packageFs})??new JS.Manifest,misc:{hasBindingGyp:X1s.jsInstallUtils.hasBindingGyp(r)}},I=this.opts.project.getDependencyMeta(A,t.version),C=X1s.jsInstallUtils.extractBuildRequest(t,f,I,{configuration:this.opts.project.configuration});return{packageLocation:o,buildRequest:C}}async attachInternalDependencies(t,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!J1s(t,{project:this.opts.project}))return;let n=this.customData.pathsByLocator.get(t.locatorHash);if(typeof n>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${JS.structUtils.stringifyLocator(t)})`);let{dependenciesLocation:a}=n;a&&this.asyncActions.reduce(t.locatorHash,async o=>{await Ym.xfs.mkdirPromise(a,{recursive:!0});let l=await cWl(a),A=new Map(l),f=[o],I=(b,E)=>{let N=E;J1s(E,{project:this.opts.project})||(this.opts.report.reportWarningOnce(JS.MessageName.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),N=JS.structUtils.devirtualizeLocator(E));let B=this.customData.pathsByLocator.get(N.locatorHash);if(typeof B>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${JS.structUtils.stringifyLocator(E)})`);let F=JS.structUtils.stringifyIdent(b),Q=Ym.ppath.join(a,F),J=Ym.ppath.relative(Ym.ppath.dirname(Q),B.packageLocation),ae=A.get(F);A.delete(F),f.push(Promise.resolve().then(async()=>{if(ae){if(ae.isSymbolicLink()&&await Ym.xfs.readlinkPromise(Q)===J)return;await Ym.xfs.removePromise(Q)}await Ym.xfs.mkdirpPromise(Ym.ppath.dirname(Q)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")===JS.WindowsLinkType.JUNCTIONS?await Ym.xfs.symlinkPromise(B.packageLocation,Q,"junction"):await Ym.xfs.symlinkPromise(J,Q)}))},C=!1;for(let[b,E]of r)b.identHash===t.identHash&&(C=!0),I(b,E);!C&&!this.opts.project.tryWorkspaceByLocator(t)&&I(JS.structUtils.convertLocatorToDescriptor(t),t),f.push(lWl(a,A)),await Promise.all(f)})}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let t=U1s(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await Ym.xfs.removePromise(t);else{let r;try{r=new Set(await Ym.xfs.readdirPromise(t))}catch{r=new Set}for(let{dependenciesLocation:n}of this.customData.pathsByLocator.values()){if(!n)continue;let a=Ym.ppath.contains(t,n);if(a===null)continue;let[o]=a.split(Ym.ppath.sep);r.delete(o)}await Promise.all([...r].map(async n=>{await Ym.xfs.removePromise(Ym.ppath.join(t,n))}))}return await this.asyncActions.wait(),await d$r(t),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await d$r(oWl(this.opts.project)),{customData:this.customData}}};function oWl(e){return Ym.ppath.join(e.cwd,Ym.Filename.nodeModules)}function U1s(e){return e.configuration.get("pnpmStoreFolder")}function aWl(e,{project:t}){let r=JS.structUtils.slugifyLocator(e),n=U1s(t),a=Ym.ppath.join(n,r,"package"),o=Ym.ppath.join(n,r,Ym.Filename.nodeModules);return{packageLocation:a,dependenciesLocation:o}}function J1s(e,{project:t}){return!JS.structUtils.isVirtualLocator(e)||!t.tryWorkspaceByLocator(e)}async function cWl(e){let t=new Map,r=[];try{r=await Ym.xfs.readdirPromise(e,{withFileTypes:!0})}catch(n){if(n.code!=="ENOENT")throw n}try{for(let n of r)if(!n.name.startsWith("."))if(n.name.startsWith("@")){let a=await Ym.xfs.readdirPromise(Ym.ppath.join(e,n.name),{withFileTypes:!0});if(a.length===0)t.set(n.name,n);else for(let o of a)t.set(`${n.name}/${o.name}`,o)}else t.set(n.name,n)}catch(n){if(n.code!=="ENOENT")throw n}return t}async function lWl(e,t){let r=[],n=new Set;for(let a of t.keys()){r.push(Ym.xfs.removePromise(Ym.ppath.join(e,a)));let o=JS.structUtils.tryParseIdent(a)?.scope;o&&n.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...n].map(a=>d$r(Ym.ppath.join(e,a)))))}async function d$r(e){try{await Ym.xfs.rmdirPromise(e)}catch(t){if(t.code!=="ENOENT"&&t.code!=="ENOTEMPTY"&&t.code!=="EBUSY")throw t}}});var z1s=H(Fqe=>{"use strict";Object.defineProperty(Fqe,"__esModule",{value:!0});Fqe.PnpmLinker=void 0;var uWl=wn(),j1s=K1s();Object.defineProperty(Fqe,"PnpmLinker",{enumerable:!0,get:function(){return j1s.PnpmLinker}});var gWl={configuration:{pnpmStoreFolder:{description:"By default, the store is stored in the 'node_modules/.store' of the project. Sometimes in CI scenario's it is convenient to store this in a different location so it can be cached and reused.",type:uWl.SettingsType.ABSOLUTE_PATH,default:"./node_modules/.store"}},linkers:[j1s.PnpmLinker]};Fqe.default=gWl});var p$r=H(EJ=>{"use strict";Object.defineProperty(EJ,"__esModule",{value:!0});EJ.ActionType=void 0;EJ.findVcsRoot=AWl;EJ.isYarnFile=dWl;EJ.expandDirectory=pWl;EJ.checkConsensus=TVt;EJ.findConsensus=fWl;EJ.getCommitPrefix=q1s;EJ.genCommitMessage=hWl;var yge=No(),yye;(function(e){e[e.CREATE=0]="CREATE",e[e.DELETE=1]="DELETE",e[e.ADD=2]="ADD",e[e.REMOVE=3]="REMOVE",e[e.MODIFY=4]="MODIFY"})(yye||(EJ.ActionType=yye={}));async function AWl(e,{marker:t}){do if(!yge.xfs.existsSync(yge.ppath.join(e,t)))e=yge.ppath.dirname(e);else return e;while(e!=="/");return null}function dWl(e,{roots:t,names:r}){if(r.has(yge.ppath.basename(e)))return!0;do if(!t.has(e))e=yge.ppath.dirname(e);else return!0;while(e!=="/");return!1}function pWl(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop(),a=yge.xfs.readdirSync(n);for(let o of a){let l=yge.ppath.resolve(n,o);yge.xfs.lstatSync(l).isDirectory()?r.push(l):t.push(l)}}return t}function TVt(e,t){let r=0,n=0;for(let a of e)a!=="wip"&&(t.test(a)?r+=1:n+=1);return r>=n}function fWl(e){let t=TVt(e,/^(\w\(\w+\):\s*)?\w+s/),r=TVt(e,/^(\w\(\w+\):\s*)?[A-Z]/),n=TVt(e,/^\w\(\w+\):/);return{useThirdPerson:t,useUpperCase:r,useComponent:n}}function q1s(e){return e.useComponent?"chore(yarn): ":""}var IWl=new Map([[yye.CREATE,"create"],[yye.DELETE,"delete"],[yye.ADD,"add"],[yye.REMOVE,"remove"],[yye.MODIFY,"update"]]);function hWl(e,t){let r=q1s(e),n=[],a=t.slice().sort((o,l)=>o[0]-l[0]);for(;a.length>0;){let[o,l]=a.shift(),A=IWl.get(o);e.useUpperCase&&n.length===0&&(A=`${A[0].toUpperCase()}${A.slice(1)}`),e.useThirdPerson&&(A+="s");let f=[l];for(;a.length>0&&a[0][0]===o;){let[,C]=a.shift();f.push(C)}f.sort();let I=f.shift();f.length===1?I+=" (and one other)":f.length>1&&(I+=` (and ${f.length} others)`),n.push(`${A} ${I}`)}return`${r}${n.join(", ")}`}});var e2s=H(RVt=>{"use strict";Object.defineProperty(RVt,"__esModule",{value:!0});RVt.Driver=void 0;var mWl=(Wa(),vi(Va)),Sx=wn(),fZe=No(),$1=mWl.__importStar(p$r()),CWl="Commit generated via `yarn stage`",_Wl=11;async function $1s(e){let{code:t,stdout:r}=await Sx.execUtils.execvp("git",["log","-1","--pretty=format:%H"],{cwd:e});return t===0?r.trim():null}async function yWl(e,t){let r=[],n=t.filter(I=>fZe.ppath.basename(I.path)==="package.json");for(let{action:I,path:C}of n){let b=fZe.ppath.relative(e,C);if(I===$1.ActionType.MODIFY){let E=await $1s(e),{stdout:N}=await Sx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await Sx.Manifest.fromText(N),F=await Sx.Manifest.fromFile(C),Q=new Map([...F.dependencies,...F.devDependencies]),J=new Map([...B.dependencies,...B.devDependencies]);for(let[ae,ne]of J){let ce=Sx.structUtils.stringifyIdent(ne),fe=Q.get(ae);fe?fe.range!==ne.range&&r.push([$1.ActionType.MODIFY,`${ce} to ${fe.range}`]):r.push([$1.ActionType.REMOVE,ce])}for(let[ae,ne]of Q)J.has(ae)||r.push([$1.ActionType.ADD,Sx.structUtils.stringifyIdent(ne)])}else if(I===$1.ActionType.CREATE){let E=await Sx.Manifest.fromFile(C);E.name?r.push([$1.ActionType.CREATE,Sx.structUtils.stringifyIdent(E.name)]):r.push([$1.ActionType.CREATE,"a package"])}else if(I===$1.ActionType.DELETE){let E=await $1s(e),{stdout:N}=await Sx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await Sx.Manifest.fromText(N);B.name?r.push([$1.ActionType.DELETE,Sx.structUtils.stringifyIdent(B.name)]):r.push([$1.ActionType.DELETE,"a package"])}else throw new Error("Assertion failed: Unsupported action type")}let{code:a,stdout:o}=await Sx.execUtils.execvp("git",["log",`-${_Wl}`,"--pretty=format:%s"],{cwd:e}),l=a===0?o.split(/\n/g).filter(I=>I!==""):[],A=$1.findConsensus(l);return $1.genCommitMessage(A,r)}var bWl={[$1.ActionType.CREATE]:[" A ","?? "],[$1.ActionType.MODIFY]:[" M "],[$1.ActionType.DELETE]:[" D "]},EWl={[$1.ActionType.CREATE]:["A "],[$1.ActionType.MODIFY]:["M "],[$1.ActionType.DELETE]:["D "]};RVt.Driver={async findRoot(e){return await $1.findVcsRoot(e,{marker:".git"})},async filterChanges(e,t,r,n){let{stdout:a}=await Sx.execUtils.execvp("git",["status","-s"],{cwd:e,strict:!0}),o=a.toString().split(/\n/g),l=n?.staged?EWl:bWl;return[].concat(...o.map(f=>{if(f==="")return[];let I=f.slice(0,3),C=fZe.ppath.resolve(e,f.slice(3));if(!n?.staged&&I==="?? "&&f.endsWith("/"))return $1.expandDirectory(C).map(b=>({action:$1.ActionType.CREATE,path:b}));{let E=[$1.ActionType.CREATE,$1.ActionType.MODIFY,$1.ActionType.DELETE].find(N=>l[N].includes(I));return E!==void 0?[{action:E,path:C}]:[]}})).filter(f=>$1.isYarnFile(f.path,{roots:t,names:r}))},async genCommitMessage(e,t){return await yWl(e,t)},async makeStage(e,t){let r=t.map(n=>fZe.npath.fromPortablePath(n.path));await Sx.execUtils.execvp("git",["add","--",...r],{cwd:e,strict:!0})},async makeCommit(e,t,r){let n=t.map(a=>fZe.npath.fromPortablePath(a.path));await Sx.execUtils.execvp("git",["add","-N","--",...n],{cwd:e,strict:!0}),await Sx.execUtils.execvp("git",["commit","-m",`${r} -${bVl} -`,"--",...n],{cwd:e,strict:!0})},async makeReset(e,t){let r=t.map(n=>fZe.npath.fromPortablePath(n.path));await Ex.execUtils.execvp("git",["reset","HEAD","--",...r],{cwd:e,strict:!0})}}});var t2s=H(l$r=>{"use strict";Object.defineProperty(l$r,"__esModule",{value:!0});var wVl=dl(),e2s=mn(),bye=Io(),IZe=(Rl(),vi(ng)),TVl=$1s(),RVl=[TVl.Driver],Lqe=class extends wVl.BaseCommand{constructor(){super(...arguments),this.commit=IZe.Option.Boolean("-c,--commit",!1,{description:"Commit the staged files"}),this.reset=IZe.Option.Boolean("-r,--reset",!1,{description:"Remove all files from the staging area"}),this.dryRun=IZe.Option.Boolean("-n,--dry-run",!1,{description:"Print the commit message and the list of modified files without staging / committing"}),this.update=IZe.Option.Boolean("-u,--update",!1,{hidden:!0})}async execute(){let t=await e2s.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await e2s.Project.find(t,this.context.cwd),{driver:n,root:a}=await NVl(r.cwd),o=[t.get("cacheFolder"),t.get("globalFolder"),t.get("virtualFolder"),t.get("yarnPath")];await t.triggerHook(C=>C.populateYarnPaths,r,C=>{o.push(C)});let l=new Set;for(let C of o)for(let b of DVl(a,C))l.add(b);let A=new Set([t.get("rcFilename"),bye.Filename.lockfile,bye.Filename.manifest]),f=await n.filterChanges(a,l,A),I=await n.genCommitMessage(a,f);if(this.dryRun)if(this.commit)this.context.stdout.write(`${I} +${CWl} +`,"--",...n],{cwd:e,strict:!0})},async makeReset(e,t){let r=t.map(n=>fZe.npath.fromPortablePath(n.path));await Sx.execUtils.execvp("git",["reset","HEAD","--",...r],{cwd:e,strict:!0})}}});var r2s=H(f$r=>{"use strict";Object.defineProperty(f$r,"__esModule",{value:!0});var SWl=sl(),t2s=wn(),bye=No(),IZe=(vl(),vi(ng)),vWl=e2s(),BWl=[vWl.Driver],Zqe=class extends SWl.BaseCommand{constructor(){super(...arguments),this.commit=IZe.Option.Boolean("-c,--commit",!1,{description:"Commit the staged files"}),this.reset=IZe.Option.Boolean("-r,--reset",!1,{description:"Remove all files from the staging area"}),this.dryRun=IZe.Option.Boolean("-n,--dry-run",!1,{description:"Print the commit message and the list of modified files without staging / committing"}),this.update=IZe.Option.Boolean("-u,--update",!1,{hidden:!0})}async execute(){let t=await t2s.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await t2s.Project.find(t,this.context.cwd),{driver:n,root:a}=await wWl(r.cwd),o=[t.get("cacheFolder"),t.get("globalFolder"),t.get("virtualFolder"),t.get("yarnPath")];await t.triggerHook(C=>C.populateYarnPaths,r,C=>{o.push(C)});let l=new Set;for(let C of o)for(let b of TWl(a,C))l.add(b);let A=new Set([t.get("rcFilename"),bye.Filename.lockfile,bye.Filename.manifest]),f=await n.filterChanges(a,l,A),I=await n.genCommitMessage(a,f);if(this.dryRun)if(this.commit)this.context.stdout.write(`${I} `);else for(let C of f)this.context.stdout.write(`${bye.npath.fromPortablePath(C.path)} -`);else if(this.reset){let C=await n.filterChanges(a,l,A,{staged:!0});C.length===0?this.context.stdout.write("No staged changes found!"):await n.makeReset(a,C)}else f.length===0?this.context.stdout.write("No changes found!"):this.commit?await n.makeCommit(a,f,I):(await n.makeStage(a,f),this.context.stdout.write(I))}};Lqe.paths=[["stage"]];Lqe.usage=IZe.Command.Usage({description:"add all yarn files to your vcs",details:"\n This command will add to your staging area the files belonging to Yarn (typically any modified `package.json` and `.yarnrc.yml` files, but also linker-generated files, cache data, etc). It will take your ignore list into account, so the cache files won't be added if the cache is ignored in a `.gitignore` file (assuming you use Git).\n\n Running `--reset` will instead remove them from the staging area (the changes will still be there, but won't be committed until you stage them back).\n\n Since the staging area is a non-existent concept in Mercurial, Yarn will always create a new commit when running this command on Mercurial repositories. You can get this behavior when using Git by using the `--commit` flag which will directly create a commit.\n ",examples:[["Adds all modified project files to the staging area","yarn stage"],["Creates a new commit containing all modified project files","yarn stage --commit"]]});l$r.default=Lqe;async function NVl(e){let t=null,r=null;for(let n of RVl)if((r=await n.findRoot(e))!==null){t=n;break}if(t===null||r===null)throw new IZe.UsageError("No stage driver has been found for your current project");return{driver:t,root:r}}function DVl(e,t){let r=[];if(t===null)return r;for(;;){(t===e||t.startsWith(`${e}/`))&&r.push(t);let n;try{n=bye.xfs.statSync(t)}catch{break}if(n.isSymbolicLink())t=bye.ppath.resolve(bye.ppath.dirname(t),bye.xfs.readlinkSync(t));else break}return r}});var i2s=H(Eye=>{"use strict";Object.defineProperty(Eye,"__esModule",{value:!0});Eye.stageUtils=Eye.StageCommand=void 0;var r2s=(Wa(),vi(Va)),n2s=r2s.__importDefault(t2s());Eye.StageCommand=n2s.default;var kVl=r2s.__importStar(c$r());Eye.stageUtils=kVl;var xVl={commands:[n2s.default]};Eye.default=xVl});var g$r=Nt(dl(),1),A$r=Nt(Io(),1),d$r=Nt(Io(),1);var GVl=Nt(dl()),FVl=Nt(mn()),ZVl=Nt(Io()),LVl=Nt(u8()),VVl=Nt(tM()),WVl=Nt(M5e());Rl();var OVl=Nt(jC());vZ();var Fpr={};Uf(Fpr,{BadgesCommand:()=>_Me,default:()=>TVn});var bVn=Nt(dl(),1),EVn=Nt(dl(),1),SVn=Nt(mn(),1),vVn=Nt(mn(),1),BVn=Nt(mn(),1),CMe=Nt(mn(),1),wVn=Nt(mn(),1);import{readFileSync as nHo}from"node:fs";import{writeFileSync as iHo}from"node:fs";import{join as yVn}from"node:path";import{PassThrough as rHo}from"node:stream";var mMe=class{stream=new rHo;chunks=[];constructor(){this.stream.on("data",t=>this.chunks.push(t))}get data(){return Buffer.concat(this.chunks).toString()}};var Edt=class{stdout;stderr;stdoutOutput=new mMe;stderrOutput=new mMe;constructor(){this.stdout=this.stdoutOutput.stream,this.stderr=this.stderrOutput.stream}get output(){return[this.stdoutOutput.data,this.stderrOutput.data].filter(Boolean).join(` -`)}};var CVn=Nt(mn(),1),xpr=Nt(mn(),1),Sdt=class e{constructor(t,r){this.stdout=t;this.configuration=r}static PROGRESS_FRAMES=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];static PROGRESS_INTERVAL=120;running=!1;position=0;isEnabled(){return this.stdout.isTTY&&!process.env.TOOLS_DISABLE_PROGRESS}start(){this.isEnabled()&&(this.running=!0,this.write(),this.tick())}end(){this.isEnabled()&&this.running&&(this.running=!1,this.clear(!0))}tick(){setTimeout(()=>{this.running&&(this.clear(),this.write(),this.position=this.position===e.PROGRESS_FRAMES.length-1?0:this.position+1,this.tick())},e.PROGRESS_INTERVAL)}write(){let t=e.PROGRESS_FRAMES[this.position],r=xpr.formatUtils.pretty(this.configuration,`YN${CVn.MessageName.UNNAMED.toString(10).padStart(4,"0")}`,"gray");this.stdout.write(`${xpr.formatUtils.pretty(this.configuration,"\u27A4","blueBright")} ${r}: \u2502 ${t} -`)}clear(t=!1){this.stdout.write("\x1B[0A"),t&&this.stdout.write("\x1B[0J")}};var _Vn=["@atls/code-service","@atls/schematics","@atls/next-identity-integration","@atls/react-kratos-browser-flows","@atls/nestjs-dataloader","@atls/nestjs-external-renderer","@atls/nestjs-gateway","@atls/nestjs-grpc-errors","@atls/nestjs-grpc-http-proxy","@atls/nestjs-grpc-identity","@atls/nestjs-grpc-playground","@atls/nestjs-grpc-reflection","@atls/nestjs-hydra","@atls/nestjs-keto","@atls/nestjs-kratos","@atls/nestjs-typesense-typeorm","@atls/nestjs-typesense","@atls-ui-generators/button","@atls-ui-generators/input","@atls-ui-generators/icons"],Gpr={"@atls/nestjs":{labelColor:"#CB5458",color:"#BE4045"},"@atls/next":{labelColor:"#354247",color:"#1D282D"},"@atls/react":{labelColor:"#43CFF4",color:"#2DBFE6"},"@atls-ui":{labelColor:"#097CEB",color:"#0B6DCC"},tools:{labelColor:"#ECEEF5",color:"#D7DCEB"}};var _Me=class e extends bVn.BaseCommand{static paths=[["badges","generate"]];static VERSIONS_SEPARATOR="[//]: # (VERSIONS)";static BADGE_URL="https://img.shields.io/static/v1";static BADGE_STYLE="for-the-badge";static REGISTRY_URL="https://npmjs.com";static REGISTRY_PACKAGE_PATH="/package";async execute(){let t=await vVn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await BVn.Project.find(t,this.context.cwd);if(!n)throw new EVn.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await SVn.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Generating badges",async()=>{let l=new Sdt(this.context.stdout,t);l.start();let A=J=>{let ae=J.anchoredLocator.locatorHash,ne=new Map,ce=[ae];for(;ce.length>0;){let fe=ce.shift();if(fe){if(ne.has(fe))continue;let ue=r.storedPackages.get(fe);if(typeof ue>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ne.set(fe,ue),CMe.structUtils.isVirtualLocator(ue)&&ce.push(CMe.structUtils.devirtualizeLocator(ue).locatorHash),fe!==ae)continue;for(let de of ue.dependencies.values()){let be=r.storedResolutions.get(de.descriptorHash);if(typeof be>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ce.push(be)}}}return ne.values()},I=(()=>{let J=new Map;for(let ae of r.workspaces)for(let ne of A(ae))J.set(ne.locatorHash,ne);return J.values()})(),C=wVn.miscUtils.sortMap([...I],J=>CMe.structUtils.stringifyLocator(J)),b=async J=>{let ae=CMe.structUtils.parseDescriptor(J),ne=C.filter(ce=>ce.scope===ae.scope&&ce.name===ae.name);return ne.length>0&&ne.shift()?.version||""},E=yVn(process.cwd(),"README.md"),B=nHo(E).toString("utf-8").split(e.VERSIONS_SEPARATOR),F=await Promise.all(_Vn.map(async J=>({name:J,version:await b(J)}))),Q=(J,ae)=>{let ne=()=>{let ce=ue=>({labelColor:ue.labelColor.replace("#",""),color:ue.color.replace("#","")}),fe=Object.entries(Gpr).find(([ue])=>ae.name.search(ue)!==-1);if(fe){let[,ue]=fe;return ce(ue)}return ce(Gpr.tools)};if(ae.version){let ce=`${e.REGISTRY_URL}${e.REGISTRY_PACKAGE_PATH}/${ae.name}`;yVn(e.REGISTRY_URL,e.REGISTRY_PACKAGE_PATH,ae.name);let fe=new URLSearchParams({style:e.BADGE_STYLE,label:ae.name,message:ae.version,...ne()}),ue=`badge`;return`${J}${((be,Se)=>`[${be}](${Se})`)(ue,ce)} `}return J};B[1]=F.reduce(Q,""),B[1]=` +`);else if(this.reset){let C=await n.filterChanges(a,l,A,{staged:!0});C.length===0?this.context.stdout.write("No staged changes found!"):await n.makeReset(a,C)}else f.length===0?this.context.stdout.write("No changes found!"):this.commit?await n.makeCommit(a,f,I):(await n.makeStage(a,f),this.context.stdout.write(I))}};Zqe.paths=[["stage"]];Zqe.usage=IZe.Command.Usage({description:"add all yarn files to your vcs",details:"\n This command will add to your staging area the files belonging to Yarn (typically any modified `package.json` and `.yarnrc.yml` files, but also linker-generated files, cache data, etc). It will take your ignore list into account, so the cache files won't be added if the cache is ignored in a `.gitignore` file (assuming you use Git).\n\n Running `--reset` will instead remove them from the staging area (the changes will still be there, but won't be committed until you stage them back).\n\n Since the staging area is a non-existent concept in Mercurial, Yarn will always create a new commit when running this command on Mercurial repositories. You can get this behavior when using Git by using the `--commit` flag which will directly create a commit.\n ",examples:[["Adds all modified project files to the staging area","yarn stage"],["Creates a new commit containing all modified project files","yarn stage --commit"]]});f$r.default=Zqe;async function wWl(e){let t=null,r=null;for(let n of BWl)if((r=await n.findRoot(e))!==null){t=n;break}if(t===null||r===null)throw new IZe.UsageError("No stage driver has been found for your current project");return{driver:t,root:r}}function TWl(e,t){let r=[];if(t===null)return r;for(;;){(t===e||t.startsWith(`${e}/`))&&r.push(t);let n;try{n=bye.xfs.statSync(t)}catch{break}if(n.isSymbolicLink())t=bye.ppath.resolve(bye.ppath.dirname(t),bye.xfs.readlinkSync(t));else break}return r}});var s2s=H(Eye=>{"use strict";Object.defineProperty(Eye,"__esModule",{value:!0});Eye.stageUtils=Eye.StageCommand=void 0;var n2s=(Wa(),vi(Va)),i2s=n2s.__importDefault(r2s());Eye.StageCommand=i2s.default;var RWl=n2s.__importStar(p$r());Eye.stageUtils=RWl;var NWl={commands:[i2s.default]};Eye.default=NWl});var h$r=xt(sl(),1),m$r=xt(No(),1),C$r=xt(No(),1);var DWl=xt(sl()),kWl=xt(wn()),xWl=xt(No()),GWl=xt(g8()),FWl=xt(LO()),ZWl=xt(M5e());vl();var LWl=xt(zC());BZ();var Fpr={};Uf(Fpr,{BadgesCommand:()=>CMe,default:()=>GVn});var TVn=xt(sl(),1),RVn=xt(sl(),1),NVn=xt(wn(),1),DVn=xt(wn(),1),kVn=xt(wn(),1),mMe=xt(wn(),1),xVn=xt(wn(),1);import{readFileSync as nHo}from"node:fs";import{writeFileSync as iHo}from"node:fs";import{join as wVn}from"node:path";var vVn=["@atls/code-service","@atls/schematics","@atls/next-identity-integration","@atls/react-kratos-browser-flows","@atls/nestjs-dataloader","@atls/nestjs-external-renderer","@atls/nestjs-gateway","@atls/nestjs-grpc-errors","@atls/nestjs-grpc-http-proxy","@atls/nestjs-grpc-identity","@atls/nestjs-grpc-playground","@atls/nestjs-grpc-reflection","@atls/nestjs-hydra","@atls/nestjs-keto","@atls/nestjs-kratos","@atls/nestjs-typesense-typeorm","@atls/nestjs-typesense","@atls-ui-generators/button","@atls-ui-generators/input","@atls-ui-generators/icons"],xpr={"@atls/nestjs":{labelColor:"#CB5458",color:"#BE4045"},"@atls/next":{labelColor:"#354247",color:"#1D282D"},"@atls/react":{labelColor:"#43CFF4",color:"#2DBFE6"},"@atls-ui":{labelColor:"#097CEB",color:"#0B6DCC"},tools:{labelColor:"#ECEEF5",color:"#D7DCEB"}};var BVn=xt(wn(),1),Gpr=xt(wn(),1),bdt=class e{constructor(t,r){this.stdout=t;this.configuration=r}static PROGRESS_FRAMES=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];static PROGRESS_INTERVAL=120;running=!1;position=0;isEnabled(){return this.stdout.isTTY&&!process.env.TOOLS_DISABLE_PROGRESS}start(){this.isEnabled()&&(this.running=!0,this.write(),this.tick())}end(){this.isEnabled()&&this.running&&(this.running=!1,this.clear(!0))}tick(){setTimeout(()=>{this.running&&(this.clear(),this.write(),this.position=this.position===e.PROGRESS_FRAMES.length-1?0:this.position+1,this.tick())},e.PROGRESS_INTERVAL)}write(){let t=e.PROGRESS_FRAMES[this.position],r=Gpr.formatUtils.pretty(this.configuration,`YN${BVn.MessageName.UNNAMED.toString(10).padStart(4,"0")}`,"gray");this.stdout.write(`${Gpr.formatUtils.pretty(this.configuration,"\u27A4","blueBright")} ${r}: \u2502 ${t} +`)}clear(t=!1){this.stdout.write("\x1B[0A"),t&&this.stdout.write("\x1B[0J")}};var CMe=class e extends TVn.BaseCommand{static paths=[["badges","generate"]];static VERSIONS_SEPARATOR="[//]: # (VERSIONS)";static BADGE_URL="https://img.shields.io/static/v1";static BADGE_STYLE="for-the-badge";static REGISTRY_URL="https://npmjs.com";static REGISTRY_PACKAGE_PATH="/package";async execute(){let t=await DVn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kVn.Project.find(t,this.context.cwd);if(!n)throw new RVn.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await NVn.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Generating badges",async()=>{let l=new bdt(this.context.stdout,t);l.start();let A=J=>{let ae=J.anchoredLocator.locatorHash,ne=new Map,ce=[ae];for(;ce.length>0;){let fe=ce.shift();if(fe){if(ne.has(fe))continue;let ue=r.storedPackages.get(fe);if(typeof ue>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ne.set(fe,ue),mMe.structUtils.isVirtualLocator(ue)&&ce.push(mMe.structUtils.devirtualizeLocator(ue).locatorHash),fe!==ae)continue;for(let de of ue.dependencies.values()){let be=r.storedResolutions.get(de.descriptorHash);if(typeof be>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ce.push(be)}}}return ne.values()},I=(()=>{let J=new Map;for(let ae of r.workspaces)for(let ne of A(ae))J.set(ne.locatorHash,ne);return J.values()})(),C=xVn.miscUtils.sortMap([...I],J=>mMe.structUtils.stringifyLocator(J)),b=async J=>{let ae=mMe.structUtils.parseDescriptor(J),ne=C.filter(ce=>ce.scope===ae.scope&&ce.name===ae.name);return ne.length>0&&ne.shift()?.version||""},E=wVn(process.cwd(),"README.md"),B=nHo(E).toString("utf-8").split(e.VERSIONS_SEPARATOR),F=await Promise.all(vVn.map(async J=>({name:J,version:await b(J)}))),Q=(J,ae)=>{let ne=()=>{let ce=ue=>({labelColor:ue.labelColor.replace("#",""),color:ue.color.replace("#","")}),fe=Object.entries(xpr).find(([ue])=>ae.name.search(ue)!==-1);if(fe){let[,ue]=fe;return ce(ue)}return ce(xpr.tools)};if(ae.version){let ce=`${e.REGISTRY_URL}${e.REGISTRY_PACKAGE_PATH}/${ae.name}`;wVn(e.REGISTRY_URL,e.REGISTRY_PACKAGE_PATH,ae.name);let fe=new URLSearchParams({style:e.BADGE_STYLE,label:ae.name,message:ae.version,...ne()}),ue=`badge`;return`${J}${((be,Se)=>`[${be}](${Se})`)(ue,ce)} `}return J};B[1]=F.reduce(Q,""),B[1]=` ${B[1]} -`,iHo(E,B.join("[//]: # (VERSIONS)")),l.end()})})).exitCode()}};var TVn={commands:[_Me]};var EIr={};Uf(EIr,{default:()=>g5n});var o5n=Nt(dl(),1),a5n=Nt(dl(),1),c5n=Nt(mn(),1),l5n=Nt(mn(),1),u5n=Nt(mn(),1);Rl();import{relative as TJo}from"node:path";import{readFile as vJo}from"node:fs/promises";import{writeFile as BJo}from"node:fs/promises";import{join as s5n}from"node:path";import{dirname as wJo}from"node:path";var Q3n=Nt(xVn(),1);import{Readable as H3n,Transform as Y3n}from"stream";import{execFileSync as pJo}from"child_process";import{Readable as IHo}from"stream";import{spawn as sHo}from"child_process";function oHo(e){return new Promise(t=>{let r="",n=null;e.stderr.on("data",a=>{r+=a.toString()}),e.on("error",a=>{n=a}),e.on("close",()=>{r&&(n=new Error(r)),t(n)})})}async function*Bdt(e,t,r){let n=sHo(e,t,r),a=oHo(n);yield*n.stdout;let o=await a;if(o)throw o}async function NIe(e,t,r){let n=Bdt(e,t,r),a,o=[];for await(a of n)o.push(a);return Buffer.concat(o)}async function*GVn(e,t){let r,n,a="";for await(r of e)a+=r.toString(),a.includes(t)&&(n=a.split(t),a=n.pop()||"",yield*n);a&&(yield a)}function vdt(e,t){return`${e.length===1?"-":"--"}${e.replace(/[A-Z]/g,"-$&").toLowerCase()}${t?`=${t}`:""}`}function aHo(e){let t=[],r,n,a;for(r in e)if(n=e[r],n===!0)t.push(vdt(r));else if(n===!1)t.push(vdt(`no-${r}`));else if(Array.isArray(n))for(a of n)t.push(vdt(r,a));else n&&t.push(vdt(r,n));return t}function Wpr(...e){let t=[];for(let r of e)r&&(Array.isArray(r)?t.push(...Wpr(...r)):typeof r=="object"&&!(r instanceof RegExp)?t.push(...aHo(r)):t.push(String(r)));return t}var FVn="------------------------ >8 ------------------------",oBe=class{cwd;debug;constructor(t,r=!1){this.cwd=t,this.debug=r}formatArgs(...t){let r=Wpr(...t);return this.debug&&this.debug(r),r}async*getRawCommits(t={}){let{path:r,from:n="",to:a="HEAD",format:o="%B",ignore:l,...A}=t,f=l?N=>!l.test(N):()=>!0,I=this.formatArgs("log",`--format=${o}%n${FVn}`,[n,a].filter(Boolean).join(".."),A,r&&["--",r]),C=Bdt("git",I,{cwd:this.cwd}),b=GVn(C,`${FVn} -`),E;for await(E of b)f(E)&&(yield E)}async*getTags(t={}){let r=/tag:\s*(.+?)[,)]/gi,n=this.formatArgs("log","--decorate","--no-color","--date-order",t),a=Bdt("git",n,{cwd:this.cwd}),o,l,A;for await(o of a){l=o.toString().trim().matchAll(r);for([,A]of l)yield A}}async getLastTag(t={}){return(await this.getTags(t).next()).value||null}async checkIgnore(t,r={}){let n=this.formatArgs("check-ignore",t,r);try{return await NIe("git",n,{cwd:this.cwd}),!0}catch{return!1}}async add(t,r={}){let n=this.formatArgs("add",t,r);await NIe("git",n,{cwd:this.cwd})}async commit(t){let{verify:r=!0,sign:n=!1,files:a=[],message:o,...l}=t,A=this.formatArgs("commit",!r&&"--no-verify",n&&"-S",a,"-m",o,l);await NIe("git",A,{cwd:this.cwd})}async tag(t){let{sign:r=!1,name:n,message:a,...o}=t;r&&(a="");let l=this.formatArgs("tag",r&&"-s",a&&"-a",n,a&&["-m",a],o);await NIe("git",l,{cwd:this.cwd})}async getCurrentBranch(t={}){let r=this.formatArgs("rev-parse","--abbrev-ref","HEAD",t);return(await NIe("git",r,{cwd:this.cwd})).toString().trim()}async push(t,r={}){let n=this.formatArgs("push","--follow-tags","origin",t,r);await NIe("git",n,{cwd:this.cwd})}};var EMe=Nt(jC(),1);function eWn(e){return e?`${e}@`:/^.+@/}var wdt=class extends oBe{deps=null;loadDeps(){return this.deps?this.deps:(this.deps=Promise.all([Promise.resolve().then(()=>(Ypr(),UVn)).then(({parseCommits:t})=>t),Promise.resolve().then(()=>(Jpr(),$Vn)).then(({filterRevertedCommits:t})=>t)]),this.deps)}async*getCommits(t={},r={}){let{filterReverts:n,...a}=t,[o,l]=await this.loadDeps();if(n){yield*l(this.getCommits(a,r));return}let A=o(r),f=this.getRawCommits(a);yield*A(f)}async*getSemverTags(t={}){let{prefix:r,skipUnstable:n,clean:a,...o}=t,l=this.getTags(o),A=/.+-\w+\.\d+$/,f=a?(b,E)=>EMe.default.clean(E||b):b=>b,I,C;for await(C of l)n&&A.test(C)||(r?(typeof r=="string"?C.startsWith(r):r.test(C))&&(I=C.replace(r,""),EMe.default.valid(I)&&(C=f(C,I),C&&(yield C))):EMe.default.valid(C)&&(C=f(C),C&&(yield C)))}async getLastSemverTag(t={}){return(await this.getSemverTags(t).next()).value||null}async getVersionFromTags(t={}){let r=this.getSemverTags({clean:!0,...t}),n=[];for await(let a of r)n.push(a);return n.length&&n.sort(EMe.default.rcompare)[0]||null}};function hHo(e={}){let t={cwd:process.cwd(),...e};return e.debug&&(t.debug=r=>{e.debug(`Your git-log command is: -git `+r.join(" "))}),t}async function*mHo(e){let{cwd:t,debug:r,...n}=hHo(e),a=new oBe(t,r),o;typeof n.ignore=="string"&&(n.ignore=new RegExp(n.ignore));for await(o of a.getRawCommits(n))yield o}function Upr(e){return IHo.from(mHo(e))}Ypr();var nWn=Nt(jC(),1);function tWn(e){return new Date(e).toISOString().slice(0,10)}function rWn(e){let t=[],r=[],n;function a(l){return t[0]===l?"[Circular ~]":`[Circular ~.${r.slice(0,t.indexOf(l)).join(".")}]`}function o(l,A){let f=A;return t.length>0?(n=t.indexOf(this),n!==-1?(t.splice(n+1),r.splice(n,1/0,l)):(t.push(this),r.push(l)),t.includes(f)&&(f=a(f))):t.push(f),f}return JSON.stringify(e,o," ")}function SMe(e){return typeof e=="string"?(t,r)=>(t[e]||"").localeCompare(r[e]||""):Array.isArray(e)?(t,r)=>{let n="",a="";for(let o of e)n+=t[o]||"",a+=r[o]||"";return n.localeCompare(a)}:e}var CHo=7,_Ho=100;function iWn(e,t,r){let{hash:n,header:a,committerDate:o}=e;return{hash:typeof n=="string"?n.substring(0,CHo):n,header:typeof a=="string"?a.substring(0,_Ho):a,committerDate:o&&r.formatDate(o)}}function sWn(e,t){let r={groupBy:"type",commitsSort:"header",noteGroupsSort:"title",notesSort:"text",transform:iWn,generateOn:a=>!!(0,nWn.valid)(a.version),finalizeContext:a=>a,debug:()=>{},formatDate:tWn,reverse:!1,ignoreReverted:!0,doFlush:!0,...t,...e};return{...r,commitGroupsSort:SMe(r.commitGroupsSort),commitsSort:SMe(r.commitsSort),noteGroupsSort:SMe(r.noteGroupsSort),notesSort:SMe(r.notesSort)}}function oWn(e,t){let{generateOn:r}=t;return typeof r=="string"?n=>typeof n[r]<"u":typeof r!="function"?()=>!1:(n,a)=>r(n,a,e,t)}import{Transform as IXo}from"stream";var hBe=Nt(zOn(),1);Jpr();var Ofr=Nt(jC(),1);function AXo(e,t){let{groupBy:r,commitGroupsSort:n,commitsSort:a}=t,o=[],l=e.reduce((A,f)=>{let I=f[r]||"";return A[I]?A[I].push(f):A[I]=[f],A},{});return Object.entries(l).forEach(([A,f])=>{a&&f.sort(a),o.push({title:A,commits:f})}),n&&o.sort(n),o}function dXo(e,t){let{noteGroupsSort:r,notesSort:n}=t,a=[];return e.forEach(o=>{let{title:l}=o,A=!1;a.forEach(f=>{f.title===l&&(A=!0,f.notes.push(o))}),A||a.push({title:l,notes:[o]})}),r&&a.sort(r),n&&a.forEach(o=>{o.notes.sort(n)}),a}function pXo(e,t,r){return{commitGroups:AXo(e,r),noteGroups:dXo(t,r)}}function qOn(e,t){let r={commit:"commits",issue:"issues",date:t.formatDate(new Date),...e};return typeof r.linkReferences!="boolean"&&(r.repository||r.repoUrl)&&r.commit&&r.issue&&(r.linkReferences=!0),r}async function $On(e,t,r,n,a,o){let l={...a,...e,...pXo(r,n,o)};return e?.committerDate&&(l.date=e.committerDate),l.version&&Ofr.default.valid(l.version)&&(l.isPatch=l.isPatch||Ofr.default.patch(l.version)!==0),l=await o.finalizeContext(l,o,r,e,t),o.debug(`Your final context is: -${rWn(l)}`),l}async function ePn(e={}){let t=` +`,iHo(E,B.join("[//]: # (VERSIONS)")),l.end()})})).exitCode()}};var GVn={commands:[CMe]};var EIr={};Uf(EIr,{default:()=>h5n});var A5n=xt(sl(),1),d5n=xt(sl(),1),p5n=xt(wn(),1),f5n=xt(wn(),1),I5n=xt(wn(),1);vl();import{relative as TJo}from"node:path";import{readFile as vJo}from"node:fs/promises";import{writeFile as BJo}from"node:fs/promises";import{join as g5n}from"node:path";import{dirname as wJo}from"node:path";var z3n=xt(WVn(),1);import{Readable as K3n,Transform as j3n}from"stream";import{execFileSync as pJo}from"child_process";import{Readable as IHo}from"stream";import{spawn as sHo}from"child_process";function oHo(e){return new Promise(t=>{let r="",n=null;e.stderr.on("data",a=>{r+=a.toString()}),e.on("error",a=>{n=a}),e.on("close",()=>{r&&(n=new Error(r)),t(n)})})}async function*Sdt(e,t,r){let n=sHo(e,t,r),a=oHo(n);yield*n.stdout;let o=await a;if(o)throw o}async function DIe(e,t,r){let n=Sdt(e,t,r),a,o=[];for await(a of n)o.push(a);return Buffer.concat(o)}async function*OVn(e,t){let r,n,a="";for await(r of e)a+=r.toString(),a.includes(t)&&(n=a.split(t),a=n.pop()||"",yield*n);a&&(yield a)}function Edt(e,t){return`${e.length===1?"-":"--"}${e.replace(/[A-Z]/g,"-$&").toLowerCase()}${t?`=${t}`:""}`}function aHo(e){let t=[],r,n,a;for(r in e)if(n=e[r],n===!0)t.push(Edt(r));else if(n===!1)t.push(Edt(`no-${r}`));else if(Array.isArray(n))for(a of n)t.push(Edt(r,a));else n&&t.push(Edt(r,n));return t}function Wpr(...e){let t=[];for(let r of e)r&&(Array.isArray(r)?t.push(...Wpr(...r)):typeof r=="object"&&!(r instanceof RegExp)?t.push(...aHo(r)):t.push(String(r)));return t}var PVn="------------------------ >8 ------------------------",oBe=class{cwd;debug;constructor(t,r=!1){this.cwd=t,this.debug=r}formatArgs(...t){let r=Wpr(...t);return this.debug&&this.debug(r),r}async*getRawCommits(t={}){let{path:r,from:n="",to:a="HEAD",format:o="%B",ignore:l,...A}=t,f=l?N=>!l.test(N):()=>!0,I=this.formatArgs("log",`--format=${o}%n${PVn}`,[n,a].filter(Boolean).join(".."),A,r&&["--",r]),C=Sdt("git",I,{cwd:this.cwd}),b=OVn(C,`${PVn} +`),E;for await(E of b)f(E)&&(yield E)}async*getTags(t={}){let r=/tag:\s*(.+?)[,)]/gi,n=this.formatArgs("log","--decorate","--no-color","--date-order",t),a=Sdt("git",n,{cwd:this.cwd}),o,l,A;for await(o of a){l=o.toString().trim().matchAll(r);for([,A]of l)yield A}}async getLastTag(t={}){return(await this.getTags(t).next()).value||null}async checkIgnore(t,r={}){let n=this.formatArgs("check-ignore",t,r);try{return await DIe("git",n,{cwd:this.cwd}),!0}catch{return!1}}async add(t,r={}){let n=this.formatArgs("add",t,r);await DIe("git",n,{cwd:this.cwd})}async commit(t){let{verify:r=!0,sign:n=!1,files:a=[],message:o,...l}=t,A=this.formatArgs("commit",!r&&"--no-verify",n&&"-S",a,"-m",o,l);await DIe("git",A,{cwd:this.cwd})}async tag(t){let{sign:r=!1,name:n,message:a,...o}=t;r&&(a="");let l=this.formatArgs("tag",r&&"-s",a&&"-a",n,a&&["-m",a],o);await DIe("git",l,{cwd:this.cwd})}async getCurrentBranch(t={}){let r=this.formatArgs("rev-parse","--abbrev-ref","HEAD",t);return(await DIe("git",r,{cwd:this.cwd})).toString().trim()}async push(t,r={}){let n=this.formatArgs("push","--follow-tags","origin",t,r);await DIe("git",n,{cwd:this.cwd})}};var bMe=xt(zC(),1);function oWn(e){return e?`${e}@`:/^.+@/}var vdt=class extends oBe{deps=null;loadDeps(){return this.deps?this.deps:(this.deps=Promise.all([Promise.resolve().then(()=>(Ypr(),eWn)).then(({parseCommits:t})=>t),Promise.resolve().then(()=>(Jpr(),sWn)).then(({filterRevertedCommits:t})=>t)]),this.deps)}async*getCommits(t={},r={}){let{filterReverts:n,...a}=t,[o,l]=await this.loadDeps();if(n){yield*l(this.getCommits(a,r));return}let A=o(r),f=this.getRawCommits(a);yield*A(f)}async*getSemverTags(t={}){let{prefix:r,skipUnstable:n,clean:a,...o}=t,l=this.getTags(o),A=/.+-\w+\.\d+$/,f=a?(b,E)=>bMe.default.clean(E||b):b=>b,I,C;for await(C of l)n&&A.test(C)||(r?(typeof r=="string"?C.startsWith(r):r.test(C))&&(I=C.replace(r,""),bMe.default.valid(I)&&(C=f(C,I),C&&(yield C))):bMe.default.valid(C)&&(C=f(C),C&&(yield C)))}async getLastSemverTag(t={}){return(await this.getSemverTags(t).next()).value||null}async getVersionFromTags(t={}){let r=this.getSemverTags({clean:!0,...t}),n=[];for await(let a of r)n.push(a);return n.length&&n.sort(bMe.default.rcompare)[0]||null}};function hHo(e={}){let t={cwd:process.cwd(),...e};return e.debug&&(t.debug=r=>{e.debug(`Your git-log command is: +git `+r.join(" "))}),t}async function*mHo(e){let{cwd:t,debug:r,...n}=hHo(e),a=new oBe(t,r),o;typeof n.ignore=="string"&&(n.ignore=new RegExp(n.ignore));for await(o of a.getRawCommits(n))yield o}function Upr(e){return IHo.from(mHo(e))}Ypr();var lWn=xt(zC(),1);function aWn(e){return new Date(e).toISOString().slice(0,10)}function cWn(e){let t=[],r=[],n;function a(l){return t[0]===l?"[Circular ~]":`[Circular ~.${r.slice(0,t.indexOf(l)).join(".")}]`}function o(l,A){let f=A;return t.length>0?(n=t.indexOf(this),n!==-1?(t.splice(n+1),r.splice(n,1/0,l)):(t.push(this),r.push(l)),t.includes(f)&&(f=a(f))):t.push(f),f}return JSON.stringify(e,o," ")}function EMe(e){return typeof e=="string"?(t,r)=>(t[e]||"").localeCompare(r[e]||""):Array.isArray(e)?(t,r)=>{let n="",a="";for(let o of e)n+=t[o]||"",a+=r[o]||"";return n.localeCompare(a)}:e}var CHo=7,_Ho=100;function uWn(e,t,r){let{hash:n,header:a,committerDate:o}=e;return{hash:typeof n=="string"?n.substring(0,CHo):n,header:typeof a=="string"?a.substring(0,_Ho):a,committerDate:o&&r.formatDate(o)}}function gWn(e,t){let r={groupBy:"type",commitsSort:"header",noteGroupsSort:"title",notesSort:"text",transform:uWn,generateOn:a=>!!(0,lWn.valid)(a.version),finalizeContext:a=>a,debug:()=>{},formatDate:aWn,reverse:!1,ignoreReverted:!0,doFlush:!0,...t,...e};return{...r,commitGroupsSort:EMe(r.commitGroupsSort),commitsSort:EMe(r.commitsSort),noteGroupsSort:EMe(r.noteGroupsSort),notesSort:EMe(r.notesSort)}}function AWn(e,t){let{generateOn:r}=t;return typeof r=="string"?n=>typeof n[r]<"u":typeof r!="function"?()=>!1:(n,a)=>r(n,a,e,t)}import{Transform as IXo}from"stream";var hBe=xt(nPn(),1);Jpr();var Ofr=xt(zC(),1);function AXo(e,t){let{groupBy:r,commitGroupsSort:n,commitsSort:a}=t,o=[],l=e.reduce((A,f)=>{let I=f[r]||"";return A[I]?A[I].push(f):A[I]=[f],A},{});return Object.entries(l).forEach(([A,f])=>{a&&f.sort(a),o.push({title:A,commits:f})}),n&&o.sort(n),o}function dXo(e,t){let{noteGroupsSort:r,notesSort:n}=t,a=[];return e.forEach(o=>{let{title:l}=o,A=!1;a.forEach(f=>{f.title===l&&(A=!0,f.notes.push(o))}),A||a.push({title:l,notes:[o]})}),r&&a.sort(r),n&&a.forEach(o=>{o.notes.sort(n)}),a}function pXo(e,t,r){return{commitGroups:AXo(e,r),noteGroups:dXo(t,r)}}function iPn(e,t){let r={commit:"commits",issue:"issues",date:t.formatDate(new Date),...e};return typeof r.linkReferences!="boolean"&&(r.repository||r.repoUrl)&&r.commit&&r.issue&&(r.linkReferences=!0),r}async function sPn(e,t,r,n,a,o){let l={...a,...e,...pXo(r,n,o)};return e?.committerDate&&(l.date=e.committerDate),l.version&&Ofr.default.valid(l.version)&&(l.isPatch=l.isPatch||Ofr.default.patch(l.version)!==0),l=await o.finalizeContext(l,o,r,e,t),o.debug(`Your final context is: +${cWn(l)}`),l}async function oPn(e={}){let t=` {{> header}} {{#each commitGroups}} @@ -1894,7 +1893,7 @@ ${rWn(l)}`),l}async function ePn(e={}){let t=` {{/each}} {{/each}} {{/if}} - `;if(e.mainTemplate&&e.headerPartial&&e.commitPartial&&e.footerPartial){let[o,l,A,f]=await Promise.all([e.mainTemplate,e.headerPartial,e.commitPartial,e.footerPartial]);return{mainTemplate:o,headerPartial:l,commitPartial:A,footerPartial:f}}return{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a}}function fXo(e){let{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a,partials:o}=e;return hBe.default.registerPartial("header",r),hBe.default.registerPartial("commit",n),hBe.default.registerPartial("footer",a),o&&Object.entries(o).forEach(([l,A])=>{typeof A=="string"&&hBe.default.registerPartial(l,A)}),hBe.default.compile(t,{noEscape:!0})}function tPn(e,t){let{ignoreReverted:r}=t,n=fXo(t);return async(a,o)=>{let l=[],A=(r?Array.from(Xpr(a)):a).map(I=>({...I,notes:I.notes.map(C=>{let b={...C,commit:I};return l.push(b),b})})),f=await $On(o,a,A,l,e,t);return n(f)}}function rPn(e){return new Proxy(e,{get(t,r){let n=t[r];return typeof n=="object"&&n!==null?rPn(n):n},set(){throw new Error("Cannot modify immutable object.")},deleteProperty(){throw new Error("Cannot modify immutable object.")}})}async function nPn(e,t,r,n){let a={};return typeof t=="function"&&(a=await t(rPn(e),r,n),!a)?null:{...e,...a,raw:e}}async function hXo(e={},t={}){let r=await ePn(t),n=sWn(t,r),a=qOn(e,n),o=oWn(a,n),l=tPn(a,n);return{finalContext:a,finalOptions:n,generateOn:o,renderTemplate:l}}function mXo(e={},t={},r=!1){let n=hXo(e,t),a=r?(o,l)=>({log:o,keyCommit:l}):o=>o;return async function*(l){let{finalContext:A,finalOptions:f,generateOn:I,renderTemplate:C}=await n,{transform:b,reverse:E,doFlush:N}=f,B,F,Q,J=[],ae=!0,ne,ce=null,fe=!0;for await(B of l)F=await nPn(B,b,A,f),Q=F||B,E?(F&&J.push(F),I(Q,J)&&(ae=!1,ne=await C(J,Q),J=[],yield a(ne,Q))):(I(Q,J)&&(ae=!1,ne=await C(J,ce),J=[],(!fe||N)&&(yield a(ne,ce)),fe=!1,ce=Q),F&&J.push(F));!N&&(E||ae)||(ne=await C(J,ce),yield a(ne,ce))}}function iPn(e,t,r=!1){return IXo.from(mXo(e,t,r))}var O3n=Nt(Jfr(),1),P3n=Nt(mPn(),1);import oJo from"fs/promises";import{exec as aJo}from"child_process";import{URL as cJo}from"url";function ZXo(e={}){if(e.package&&!e.lernaTags)throw new Error("opts.package should only be used when running in lerna mode");return{cwd:e.cwd||process.cwd(),prefix:e.lernaTags?eWn(e.package):e.tagPrefix,skipUnstable:e.skipUnstable}}async function CPn(e={}){let{cwd:t,...r}=ZXo(e),n=new wdt(t),a=[];for await(let o of n.getSemverTags(r))a.push(o);return a}var M3n=Nt(rIr(),1);var e3n={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#","gh-"]};var t3n={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing"],issuePrefixes:["#"]};var r3n={issue:"issue",commit:"commits",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing","resolve","resolves","resolved","resolving"],issuePrefixes:["#"]};var lJo=/github|bitbucket|gitlab/i,uJo=Intl.DateTimeFormat("sv-SE",{timeZone:"UTC"});function gJo(e,t){return e?e[0]==="v"&&t[0]!=="v"?"v"+t:e[0]!=="v"&&t[0]==="v"?t.replace(/^v/,""):t:t[0]!=="v"?"v"+t:t}function AJo(e){if(!e)return{};let t={};for(let r in e)e[r]!==void 0&&(t[r]=e[r]);return t}function dJo(e){return new Promise((t,r)=>{aJo("git config --get remote.origin.url",{cwd:e},(n,a)=>{n?r(n):t(a.trim())})})}async function mIr(e,t,r,n,a,o){let l;e=AJo(e),t=t||{},r=r||{},o={cwd:e?.cwd,...o||{}};let A=e&&e.tagPrefix?new RegExp(`tag:\\s*[=]?${e.tagPrefix}(.+?)[,)]`,"gi"):/tag:\s*[v=]?(.+?)[,)]/gi;e={append:!1,releaseCount:1,skipUnstable:!1,debug:function(){},transform:function(ne,ce){if(typeof ne.gitTags=="string"){let fe=A.exec(ne.gitTags);A.lastIndex=0,fe&&(ne.version=fe[1])}ne.committerDate&&(ne.committerDate=uJo.format(new Date(ne.committerDate))),ce(null,ne)},lernaPackage:null,...e,pkg:{transform:function(ne){return ne},...e?.pkg}},e.warn=e.warn||e.debug,e.pkg&&(e.pkg.path?l=Promise.resolve().then(()=>(hIr(),k3n)).then(async({parsePackage:ne})=>{let ce=await oJo.readFile(e.pkg.path,"utf-8");return ne(ce)}):l=Promise.resolve().then(()=>(W3n(),V3n)).then(async({readPackageUp:ne})=>{let{packageJson:ce}=await ne({cwd:e.cwd});return ce}));let f=typeof e.config=="function"?e.config():e.config,[I,C,b,E]=await Promise.allSettled([f,l,CPn({lernaTags:!!e.lernaPackage,package:e.lernaPackage,tagPrefix:e.tagPrefix,skipUnstable:e.skipUnstable,cwd:e.cwd}),dJo(e.cwd)]),N,B,F,Q,J,ae=[];if(e.config?I.status==="fulfilled"?N=I.value:(e.warn(I.reason.toString()),N={}):N={},t={...t,...N.context},e.pkg&&(C.status==="fulfilled"?(B=C.value||{},B=e.pkg.transform(B)):e.pkg.path&&e.warn(C.reason.toString())),(!B||!B.repository||!B.repository.url)&&E.status==="fulfilled"&&(B=B||{},B.repository=B.repository||{},B.repository.url=E.value,(0,M3n.default)(B)),B){t.version=t.version||B.version;try{let ne=typeof B.repository=="string"?B.repository:B.repository.url;ne&&(Q=O3n.default.fromUrl(ne)||(0,P3n.default)(ne))}catch{Q={}}if(Q.browse){let ne=Q.browse();if(!t.host)if(Q.domain){let ce=new cJo(ne);ce.origin.indexOf("//")!==-1?t.host=ce.protocol+"//"+Q.domain:t.host=ce.protocol+Q.domain}else t.host=null;t.owner=t.owner||Q.user||"",t.repository=t.repository||Q.project,Q.host&&Q.project&&Q.user?t.repoUrl=ne:t.repoUrl=t.host}t.packageData=B}if(t.version=t.version||"",b.status==="fulfilled"){ae=t.gitSemverTags=b.value,F=ae[e.releaseCount-1];let ne=ae[0];(ne===t.version||ne==="v"+t.version)&&(e.outputUnreleased?t.version="Unreleased":e.outputUnreleased=!1)}if(typeof e.outputUnreleased!="boolean"&&(e.outputUnreleased=!0),t.host&&(!t.issue||!t.commit||!n||!n.referenceActions)){let ne;if(t.host){let ce=t.host.match(lJo);ce&&(ne=ce[0])}else Q&&Q.type&&(ne=Q.type);if(ne){switch(ne){case"gitlab":J=t3n;break;case"bitbucket":J=r3n;break;default:J=e3n;break}t={issue:J.issue,commit:J.commit,...t}}else e.warn('Host: "'+t.host+'" does not exist'),J={}}else J={};return t.resetChangelog&&(F=null),r={format:"%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci",from:F,merges:!1,debug:e.debug,...N.commits,...r},e.append&&(r.reverse=r.reverse||!0),n={...N.parser,warn:e.warn,...n},J.referenceActions&&n&&(n.referenceActions=J.referenceActions),!n.issuePrefixes?.length&&J.issuePrefixes&&(n.issuePrefixes=J.issuePrefixes),a={finalizeContext:function(ne,ce,fe,ue,de){let be=de[0],Se=de[de.length-1],De=be?be.hash:null,k=Se?Se.hash:null;if((!ne.currentTag||!ne.previousTag)&&ue){let tt=/tag:\s*(.+?)[,)]/gi.exec(ue.gitTags),ze=ne.currentTag;ne.currentTag=ze||tt?tt[1]:null;let Le=ae.indexOf(ne.currentTag);Le===-1?ne.currentTag=ze||null:(ne.previousTag=ae[Le+1])||(e.append?ne.previousTag=ne.previousTag||De:ne.previousTag=ne.previousTag||k)}else ne.previousTag=ne.previousTag||ae[0],ne.version==="Unreleased"?e.append?ne.currentTag=ne.currentTag||k:ne.currentTag=ne.currentTag||De:ne.currentTag||(e.lernaPackage?ne.currentTag=e.lernaPackage+"@"+ne.version:e.tagPrefix?ne.currentTag=e.tagPrefix+ne.version:ne.currentTag=gJo(ae[0],ne.version));return typeof ne.linkCompare!="boolean"&&ne.previousTag&&ne.currentTag&&(ne.linkCompare=!0),ne},debug:e.debug,...N.writer,reverse:e.append,doFlush:e.outputUnreleased,...a},{options:e,context:t,gitRawCommitsOpts:r,parserOpts:n,writerOpts:a,gitRawExecOpts:o}}function CIr(e,t,r,n,a,o){let l=e?.cwd;a=a||{};let A=new H3n({objectMode:a.includeDetails});A._read=function(){};let f=!1,I=new H3n({objectMode:!0});I._read=function(){};function C(b,E){return Upr({...r,from:b,to:E,cwd:l}).on("error",function(N){f||(setImmediate(I.emit.bind(I),"error",N),f=!0)})}return mIr(e,t,r,n,a,o).then(function(b){e=b.options,t=b.context,r=b.gitRawCommitsOpts,n=b.parserOpts,a=b.writerOpts,o=b.gitRawExecOpts;try{pJo("git",["rev-parse","--verify","HEAD"],{cwd:l,stdio:"ignore"});let E=t.gitSemverTags.slice(0).reverse();E.push("HEAD"),r.from&&(E.indexOf(r.from)!==-1?E=E.slice(E.indexOf(r.from)):E=[r.from,"HEAD"]);let N=E.map((B,F)=>{let Q=F>0?E[F-1]:"";return C(Q,B)});r.from&&(N=N.splice(1)),r.reverse&&N.reverse(),N.reduce((B,F)=>F.pipe((0,Q3n.default)(B))).on("data",function(B){setImmediate(I.emit.bind(I),"data",B)}).on("end",function(){setImmediate(I.emit.bind(I),"end")})}catch{I=Upr({...r,...o})}I.on("error",function(E){E.message="Error in git-raw-commits: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(Hpr(n)).on("error",function(E){E.message="Error in conventional-commits-parser: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new Y3n({objectMode:!0,highWaterMark:16,transform(E,N,B){try{e.transform.call(this,E,B)}catch(F){B(F)}}})).on("error",function(E){E.message="Error in options.transform: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(iPn(t,a,a.includeDetails)).on("error",function(E){E.message="Error in conventional-changelog-writer: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new Y3n({objectMode:a.includeDetails,transform(E,N,B){try{A.push(E)}catch(F){setImmediate(function(){throw F})}B()},flush(E){A.push(null),E()}}))}).catch(function(b){setImmediate(A.emit.bind(A),"error",b)}),A}import fJo from"path";function IJo(e){if(fJo.isAbsolute(e))return[e];let t="",r=e.toLocaleLowerCase();if(e.startsWith("@")){let a=e.split("/");if(t=`${a.shift()}/`,t==="@conventional-changelog/")return[e];r=a.join("/")}r.startsWith("conventional-changelog-")||(r=`conventional-changelog-${r}`);let n=`${t}${r}`;return n!==e?[n,e]:[e]}function hJo(e){return("__esModule"in e||Object.getPrototypeOf(e)===null)&&"default"in e?e.default:e}async function mJo(e,t){let r=null;for(let n of t)try{return hJo(await e(n))}catch(a){r||(r=a)}throw r}function CJo(e){return async function(r){let n="",a=null;if(typeof r=="string")n=r;else if(typeof r=="object"&&typeof r.name=="string")n=r.name,a=r;else throw Error("Preset must be string or object with property `name`");let o=IJo(n),l=null;try{l=await mJo(e,o)}catch(A){throw new Error(`Unable to load the "${n}" preset. Please make sure it's installed.`,{cause:A})}if(typeof l!="function")throw new Error(`The "${n}" preset does not export a function. Maybe you are using an old version of the preset. Please upgrade.`);return a?await l(a):await l()}}var X3n=CJo(e=>import(e));function _Ir(e,t,r,n,a){if(e.warn=e.warn||function(){},e.preset)try{e.config=X3n(e.preset)}catch(o){typeof e.preset=="object"?e.warn(`Preset: "${e.preset.name}" ${o.message}`):typeof e.preset=="string"?e.warn(`Preset: "${e.preset}" ${o.message}`):e.warn(`Preset: ${o.message}`)}return CIr(e,t,r,n,a)}function J3n(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]}}var r5n=Nt(yIr(),1);async function n5n(){let e=` + `;if(e.mainTemplate&&e.headerPartial&&e.commitPartial&&e.footerPartial){let[o,l,A,f]=await Promise.all([e.mainTemplate,e.headerPartial,e.commitPartial,e.footerPartial]);return{mainTemplate:o,headerPartial:l,commitPartial:A,footerPartial:f}}return{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a}}function fXo(e){let{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a,partials:o}=e;return hBe.default.registerPartial("header",r),hBe.default.registerPartial("commit",n),hBe.default.registerPartial("footer",a),o&&Object.entries(o).forEach(([l,A])=>{typeof A=="string"&&hBe.default.registerPartial(l,A)}),hBe.default.compile(t,{noEscape:!0})}function aPn(e,t){let{ignoreReverted:r}=t,n=fXo(t);return async(a,o)=>{let l=[],A=(r?Array.from(Xpr(a)):a).map(I=>({...I,notes:I.notes.map(C=>{let b={...C,commit:I};return l.push(b),b})})),f=await sPn(o,a,A,l,e,t);return n(f)}}function cPn(e){return new Proxy(e,{get(t,r){let n=t[r];return typeof n=="object"&&n!==null?cPn(n):n},set(){throw new Error("Cannot modify immutable object.")},deleteProperty(){throw new Error("Cannot modify immutable object.")}})}async function lPn(e,t,r,n){let a={};return typeof t=="function"&&(a=await t(cPn(e),r,n),!a)?null:{...e,...a,raw:e}}async function hXo(e={},t={}){let r=await oPn(t),n=gWn(t,r),a=iPn(e,n),o=AWn(a,n),l=aPn(a,n);return{finalContext:a,finalOptions:n,generateOn:o,renderTemplate:l}}function mXo(e={},t={},r=!1){let n=hXo(e,t),a=r?(o,l)=>({log:o,keyCommit:l}):o=>o;return async function*(l){let{finalContext:A,finalOptions:f,generateOn:I,renderTemplate:C}=await n,{transform:b,reverse:E,doFlush:N}=f,B,F,Q,J=[],ae=!0,ne,ce=null,fe=!0;for await(B of l)F=await lPn(B,b,A,f),Q=F||B,E?(F&&J.push(F),I(Q,J)&&(ae=!1,ne=await C(J,Q),J=[],yield a(ne,Q))):(I(Q,J)&&(ae=!1,ne=await C(J,ce),J=[],(!fe||N)&&(yield a(ne,ce)),fe=!1,ce=Q),F&&J.push(F));!N&&(E||ae)||(ne=await C(J,ce),yield a(ne,ce))}}function uPn(e,t,r=!1){return IXo.from(mXo(e,t,r))}var X3n=xt(Jfr(),1),J3n=xt(SPn(),1);import oJo from"fs/promises";import{exec as aJo}from"child_process";import{URL as cJo}from"url";function ZXo(e={}){if(e.package&&!e.lernaTags)throw new Error("opts.package should only be used when running in lerna mode");return{cwd:e.cwd||process.cwd(),prefix:e.lernaTags?oWn(e.package):e.tagPrefix,skipUnstable:e.skipUnstable}}async function vPn(e={}){let{cwd:t,...r}=ZXo(e),n=new vdt(t),a=[];for await(let o of n.getSemverTags(r))a.push(o);return a}var U3n=xt(rIr(),1);var o3n={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#","gh-"]};var a3n={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing"],issuePrefixes:["#"]};var c3n={issue:"issue",commit:"commits",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing","resolve","resolves","resolved","resolving"],issuePrefixes:["#"]};var lJo=/github|bitbucket|gitlab/i,uJo=Intl.DateTimeFormat("sv-SE",{timeZone:"UTC"});function gJo(e,t){return e?e[0]==="v"&&t[0]!=="v"?"v"+t:e[0]!=="v"&&t[0]==="v"?t.replace(/^v/,""):t:t[0]!=="v"?"v"+t:t}function AJo(e){if(!e)return{};let t={};for(let r in e)e[r]!==void 0&&(t[r]=e[r]);return t}function dJo(e){return new Promise((t,r)=>{aJo("git config --get remote.origin.url",{cwd:e},(n,a)=>{n?r(n):t(a.trim())})})}async function mIr(e,t,r,n,a,o){let l;e=AJo(e),t=t||{},r=r||{},o={cwd:e?.cwd,...o||{}};let A=e&&e.tagPrefix?new RegExp(`tag:\\s*[=]?${e.tagPrefix}(.+?)[,)]`,"gi"):/tag:\s*[v=]?(.+?)[,)]/gi;e={append:!1,releaseCount:1,skipUnstable:!1,debug:function(){},transform:function(ne,ce){if(typeof ne.gitTags=="string"){let fe=A.exec(ne.gitTags);A.lastIndex=0,fe&&(ne.version=fe[1])}ne.committerDate&&(ne.committerDate=uJo.format(new Date(ne.committerDate))),ce(null,ne)},lernaPackage:null,...e,pkg:{transform:function(ne){return ne},...e?.pkg}},e.warn=e.warn||e.debug,e.pkg&&(e.pkg.path?l=Promise.resolve().then(()=>(hIr(),V3n)).then(async({parsePackage:ne})=>{let ce=await oJo.readFile(e.pkg.path,"utf-8");return ne(ce)}):l=Promise.resolve().then(()=>(Q3n(),Y3n)).then(async({readPackageUp:ne})=>{let{packageJson:ce}=await ne({cwd:e.cwd});return ce}));let f=typeof e.config=="function"?e.config():e.config,[I,C,b,E]=await Promise.allSettled([f,l,vPn({lernaTags:!!e.lernaPackage,package:e.lernaPackage,tagPrefix:e.tagPrefix,skipUnstable:e.skipUnstable,cwd:e.cwd}),dJo(e.cwd)]),N,B,F,Q,J,ae=[];if(e.config?I.status==="fulfilled"?N=I.value:(e.warn(I.reason.toString()),N={}):N={},t={...t,...N.context},e.pkg&&(C.status==="fulfilled"?(B=C.value||{},B=e.pkg.transform(B)):e.pkg.path&&e.warn(C.reason.toString())),(!B||!B.repository||!B.repository.url)&&E.status==="fulfilled"&&(B=B||{},B.repository=B.repository||{},B.repository.url=E.value,(0,U3n.default)(B)),B){t.version=t.version||B.version;try{let ne=typeof B.repository=="string"?B.repository:B.repository.url;ne&&(Q=X3n.default.fromUrl(ne)||(0,J3n.default)(ne))}catch{Q={}}if(Q.browse){let ne=Q.browse();if(!t.host)if(Q.domain){let ce=new cJo(ne);ce.origin.indexOf("//")!==-1?t.host=ce.protocol+"//"+Q.domain:t.host=ce.protocol+Q.domain}else t.host=null;t.owner=t.owner||Q.user||"",t.repository=t.repository||Q.project,Q.host&&Q.project&&Q.user?t.repoUrl=ne:t.repoUrl=t.host}t.packageData=B}if(t.version=t.version||"",b.status==="fulfilled"){ae=t.gitSemverTags=b.value,F=ae[e.releaseCount-1];let ne=ae[0];(ne===t.version||ne==="v"+t.version)&&(e.outputUnreleased?t.version="Unreleased":e.outputUnreleased=!1)}if(typeof e.outputUnreleased!="boolean"&&(e.outputUnreleased=!0),t.host&&(!t.issue||!t.commit||!n||!n.referenceActions)){let ne;if(t.host){let ce=t.host.match(lJo);ce&&(ne=ce[0])}else Q&&Q.type&&(ne=Q.type);if(ne){switch(ne){case"gitlab":J=a3n;break;case"bitbucket":J=c3n;break;default:J=o3n;break}t={issue:J.issue,commit:J.commit,...t}}else e.warn('Host: "'+t.host+'" does not exist'),J={}}else J={};return t.resetChangelog&&(F=null),r={format:"%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci",from:F,merges:!1,debug:e.debug,...N.commits,...r},e.append&&(r.reverse=r.reverse||!0),n={...N.parser,warn:e.warn,...n},J.referenceActions&&n&&(n.referenceActions=J.referenceActions),!n.issuePrefixes?.length&&J.issuePrefixes&&(n.issuePrefixes=J.issuePrefixes),a={finalizeContext:function(ne,ce,fe,ue,de){let be=de[0],Se=de[de.length-1],De=be?be.hash:null,k=Se?Se.hash:null;if((!ne.currentTag||!ne.previousTag)&&ue){let tt=/tag:\s*(.+?)[,)]/gi.exec(ue.gitTags),ze=ne.currentTag;ne.currentTag=ze||tt?tt[1]:null;let Le=ae.indexOf(ne.currentTag);Le===-1?ne.currentTag=ze||null:(ne.previousTag=ae[Le+1])||(e.append?ne.previousTag=ne.previousTag||De:ne.previousTag=ne.previousTag||k)}else ne.previousTag=ne.previousTag||ae[0],ne.version==="Unreleased"?e.append?ne.currentTag=ne.currentTag||k:ne.currentTag=ne.currentTag||De:ne.currentTag||(e.lernaPackage?ne.currentTag=e.lernaPackage+"@"+ne.version:e.tagPrefix?ne.currentTag=e.tagPrefix+ne.version:ne.currentTag=gJo(ae[0],ne.version));return typeof ne.linkCompare!="boolean"&&ne.previousTag&&ne.currentTag&&(ne.linkCompare=!0),ne},debug:e.debug,...N.writer,reverse:e.append,doFlush:e.outputUnreleased,...a},{options:e,context:t,gitRawCommitsOpts:r,parserOpts:n,writerOpts:a,gitRawExecOpts:o}}function CIr(e,t,r,n,a,o){let l=e?.cwd;a=a||{};let A=new K3n({objectMode:a.includeDetails});A._read=function(){};let f=!1,I=new K3n({objectMode:!0});I._read=function(){};function C(b,E){return Upr({...r,from:b,to:E,cwd:l}).on("error",function(N){f||(setImmediate(I.emit.bind(I),"error",N),f=!0)})}return mIr(e,t,r,n,a,o).then(function(b){e=b.options,t=b.context,r=b.gitRawCommitsOpts,n=b.parserOpts,a=b.writerOpts,o=b.gitRawExecOpts;try{pJo("git",["rev-parse","--verify","HEAD"],{cwd:l,stdio:"ignore"});let E=t.gitSemverTags.slice(0).reverse();E.push("HEAD"),r.from&&(E.indexOf(r.from)!==-1?E=E.slice(E.indexOf(r.from)):E=[r.from,"HEAD"]);let N=E.map((B,F)=>{let Q=F>0?E[F-1]:"";return C(Q,B)});r.from&&(N=N.splice(1)),r.reverse&&N.reverse(),N.reduce((B,F)=>F.pipe((0,z3n.default)(B))).on("data",function(B){setImmediate(I.emit.bind(I),"data",B)}).on("end",function(){setImmediate(I.emit.bind(I),"end")})}catch{I=Upr({...r,...o})}I.on("error",function(E){E.message="Error in git-raw-commits: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(Hpr(n)).on("error",function(E){E.message="Error in conventional-commits-parser: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new j3n({objectMode:!0,highWaterMark:16,transform(E,N,B){try{e.transform.call(this,E,B)}catch(F){B(F)}}})).on("error",function(E){E.message="Error in options.transform: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(uPn(t,a,a.includeDetails)).on("error",function(E){E.message="Error in conventional-changelog-writer: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new j3n({objectMode:a.includeDetails,transform(E,N,B){try{A.push(E)}catch(F){setImmediate(function(){throw F})}B()},flush(E){A.push(null),E()}}))}).catch(function(b){setImmediate(A.emit.bind(A),"error",b)}),A}import fJo from"path";function IJo(e){if(fJo.isAbsolute(e))return[e];let t="",r=e.toLocaleLowerCase();if(e.startsWith("@")){let a=e.split("/");if(t=`${a.shift()}/`,t==="@conventional-changelog/")return[e];r=a.join("/")}r.startsWith("conventional-changelog-")||(r=`conventional-changelog-${r}`);let n=`${t}${r}`;return n!==e?[n,e]:[e]}function hJo(e){return("__esModule"in e||Object.getPrototypeOf(e)===null)&&"default"in e?e.default:e}async function mJo(e,t){let r=null;for(let n of t)try{return hJo(await e(n))}catch(a){r||(r=a)}throw r}function CJo(e){return async function(r){let n="",a=null;if(typeof r=="string")n=r;else if(typeof r=="object"&&typeof r.name=="string")n=r.name,a=r;else throw Error("Preset must be string or object with property `name`");let o=IJo(n),l=null;try{l=await mJo(e,o)}catch(A){throw new Error(`Unable to load the "${n}" preset. Please make sure it's installed.`,{cause:A})}if(typeof l!="function")throw new Error(`The "${n}" preset does not export a function. Maybe you are using an old version of the preset. Please upgrade.`);return a?await l(a):await l()}}var q3n=CJo(e=>import(e));function _Ir(e,t,r,n,a){if(e.warn=e.warn||function(){},e.preset)try{e.config=q3n(e.preset)}catch(o){typeof e.preset=="object"?e.warn(`Preset: "${e.preset.name}" ${o.message}`):typeof e.preset=="string"?e.warn(`Preset: "${e.preset}" ${o.message}`):e.warn(`Preset: ${o.message}`)}return CIr(e,t,r,n,a)}function $3n(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]}}var c5n=xt(yIr(),1);async function l5n(){let e=` {{> header}} {{#each commitGroups}} @@ -2009,135 +2008,136 @@ ${rWn(l)}`),l}async function ePn(e={}){let t=` {{/each}} {{/if}} -`,a=SJo();return a.mainTemplate=e,a.headerPartial=t,a.commitPartial=r,a.footerPartial=n,a}function SJo(){return{transform:(e,t)=>{let r=!0,n=e.notes.map(C=>(r=!1,{...C,title:"BREAKING CHANGES"})),a=e.type;if(e.type==="feat")a="Features";else if(e.type==="fix")a="Bug Fixes";else if(e.type==="perf")a="Performance Improvements";else if(e.type==="revert"||e.revert)a="Reverts";else{if(r)return;e.type==="docs"?a="Documentation":e.type==="style"?a="Styles":e.type==="refactor"?a="Code Refactoring":e.type==="test"?a="Tests":e.type==="build"?a="Build System":e.type==="ci"&&(a="Continuous Integration")}let o=e.scope==="*"?"":e.scope,l=typeof e.hash=="string"?e.hash.substring(0,7):e.shortHash,A=[],f=e.subject;if(typeof f=="string"){let C=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;C&&(C=`${C}/issues/`,f=f.replace(/#([0-9]+)/g,(b,E)=>(A.push(E),`[#${E}](${C}${E})`))),t.host&&(f=f.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(b,E)=>E.includes("/")?`@${E}`:`[@${E}](${t.host}/${E})`))}let I=e.references.filter(C=>!A.includes(C.issue));return{notes:n,type:a,scope:o,shortHash:l,subject:f,references:I}},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:r5n.default}}function i5n(e){let t=2,r=0,n=0;return e.forEach(a=>{a.notes.length>0?(r+=a.notes.length,t=0):a.type==="feat"&&(n+=1,t===2&&(t=1))}),{level:t,reason:r===1?`There is ${r} BREAKING CHANGE and ${n} features`:`There are ${r} BREAKING CHANGES and ${n} features`}}async function bIr(){return{parser:J3n(),writer:await n5n(),whatBump:i5n}}var _Be=class{async generate({path:t,packageName:r,debug:n,tagPrefix:a,file:o,releaseCount:l}){let A={lernaPackage:`${r}`,tagPrefix:a,debug:n?console.debug:void 0,warn:console.warn,append:!0,releaseCount:l,pkg:{path:s5n(t,"package.json")},config:bIr};return o?this.generateToFile(A,t):this.generateToStdOut(A)}async generateToStdOut(t){return new Promise((r,n)=>{let a=_Ir(t,void 0,{path:wJo(t.pkg?.path??"./")}),o="";a.on("data",l=>{o+=l.toString()}),a.on("end",()=>{r(o)}),a.on("error",l=>{n(l)})})}async generateToFile(t,r){let n=s5n(r,"CHANGELOG.md");try{let a=await this.generateToStdOut(t),o="";try{o=await vJo(n,"utf8")}catch(A){let f=A;if(f.code!=="ENOENT")throw f}let l=o?`${a} -${o}`:a;return await BJo(n,l,"utf8"),l}catch(a){throw console.error("Error generating changelog:",a),a}}};var Ept=class extends o5n.BaseCommand{static paths=[["changelog","generate"]];debug=vA.Boolean("--debug");tagPrefix=vA.String("-t,--tag-prefix");stdOut=vA.Boolean("--stdout",!1);async execute(){let t=await c5n.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await u5n.Project.find(t,this.context.cwd);if(!n)throw new a5n.WorkspaceRequiredError(r.cwd,this.context.cwd);let a;return(await l5n.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Generating changelog",async()=>{let A="";n.manifest.name?.scope&&(A+=`@${n.manifest.name.scope}/`),A+=`${n.manifest.name?.name}`;let f=TJo(r.cwd,this.context.cwd);a=await new _Be().generate({path:f,packageName:A,debug:this.debug,file:!this.stdOut,tagPrefix:this.tagPrefix}),this.stdOut&&console.log(a)})})).exitCode()}};var g5n={commands:[Ept]};var SIr={};Uf(SIr,{CheckCommand:()=>MMe,default:()=>d5n});var A5n=Nt(dl(),1),MMe=class extends A5n.BaseCommand{static paths=[["check"]];async execute(){await this.cli.run(["format"]),await this.cli.run(["typecheck"]),await this.cli.run(["lint"])}};var d5n={commands:[MMe]};var B1r={};Uf(B1r,{ChecksLintCommand:()=>kQe,ChecksTestIntegrationCommand:()=>GQe,ChecksTestUnitCommand:()=>FQe,ChecksTypeCheckCommand:()=>ZQe,default:()=>kii});var Oni=Nt(dl(),1),Pni=Nt(mn(),1),e1r=Nt(mn(),1),Mni=Nt(mn(),1),t1r=Nt(mn(),1),r1r=Nt(Io(),1),Hni=Nt(FIr(),1),Yni=Nt(mn(),1),Qni=Nt(mn(),1),n1r=Nt(Io(),1),Xni=Nt(Io(),1);Rl();import{readFileSync as Vya}from"node:fs";import{resolve as Wya}from"node:path";var tmr=Nt(ul(),1),rae=Nt(ul(),1);var qhr=Nt(ul(),1),$hr=Nt(Wc(),1),v8=({children:e,line:t=0,column:r=0})=>(0,$hr.jsxs)(qhr.Text,{color:"cyan",children:[e,(0,$hr.jsxs)(qhr.Text,{color:"yellow",children:[":",t,":",r]})]});var VYn=Nt(ul(),1),WYn=Nt(Wc(),1),$9=({offset:e=0})=>(0,WYn.jsx)(VYn.Text,{color:"gray",children:Array.from({length:process.stdout.columns-e},()=>"\u2500").join("")});var MYn=Nt(FIr(),1),HYn=Nt(ul(),1);import emr from"node:process";import H6o from"node:os";import OYn from"node:tty";function NM(e,t=globalThis.Deno?globalThis.Deno.args:emr.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function X6o(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=Y6o();n!==void 0&&(uft=n);let a=r?uft:n;if(a===0)return 0;if(r){if(NM("color=16m")||NM("color=full")||NM("color=truecolor"))return 3;if(NM("color=256"))return 2}if("TF_BUILD"in DS&&"AGENT_NAME"in DS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(DS.TERM==="dumb")return o;if(emr.platform==="win32"){let l=H6o.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in DS)return"GITHUB_ACTIONS"in DS||"GITEA_ACTIONS"in DS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in DS)||DS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in DS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(DS.TEAMCITY_VERSION)?1:0;if(DS.COLORTERM==="truecolor"||DS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in DS){let l=Number.parseInt((DS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(DS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(DS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(DS.TERM)||"COLORTERM"in DS?1:o}function gft(e,t={}){let r=X6o(e,{streamIsTTY:e&&e.isTTY,...t});return Q6o(r)}var ltu={stdout:gft({isTTY:OYn.isatty(1)}),stderr:gft({isTTY:OYn.isatty(2)})};var YYn=Nt(Wc(),1),{level:J6o}=gft({isTTY:!0})||{level:0},PYn=J6o>=1,U6o=(e,t,r,n)=>(0,MYn.codeFrameColumns)(e,{start:{column:r,line:t}},{highlightCode:PYn,forceColor:PYn,message:n}),B8=({children:e,line:t,column:r,message:n})=>(0,YYn.jsx)(HYn.Text,{children:U6o(e,t,r,n)});var nD=Nt(Wc(),1),QYn=({filePath:e,message:t,source:r})=>(0,nD.jsxs)(rae.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,nD.jsxs)(rae.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,nD.jsx)(rae.Box,{flexDirection:"row",flexGrow:1,children:(0,nD.jsx)(v8,{line:t.line,column:t.column,children:e})}),(0,nD.jsx)(rae.Box,{children:(0,nD.jsxs)(tmr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,nD.jsx)(rae.Box,{children:(0,nD.jsx)($9,{offset:2})}),!!r&&(0,nD.jsxs)(nD.Fragment,{children:[(0,nD.jsx)(rae.Box,{children:(0,nD.jsx)(B8,{line:t.line,column:t.column,children:r})}),(0,nD.jsx)($9,{offset:2})]}),(0,nD.jsx)(rae.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,nD.jsxs)(tmr.Text,{color:"white",children:[" ",t.message]})})]});var UYn=Nt(ul(),1);import{isAbsolute as z6o}from"node:path";import{relative as q6o}from"node:path";import{webcrypto as JYn}from"node:crypto";var XYn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var K6o=128,UIe,VBe;function j6o(e){!UIe||UIe.lengthUIe.length&&(JYn.getRandomValues(UIe),VBe=0),VBe+=e}function UO(e=21){j6o(e-=0);let t="";for(let r=VBe-e;r{let a=(0,KYn.useMemo)(()=>z6o(e)?q6o(n,e):e,[e]);return r.length===0?null:(0,rmr.jsx)(UYn.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,rmr.jsx)(QYn,{filePath:a,message:o,source:t},UO()))})};import xjo from"node:events";import{readFileSync as Gjo}from"node:fs";import{readFile as Fjo}from"node:fs/promises";import{writeFile as Zjo}from"node:fs/promises";import{relative as Ljo}from"node:path";import{join as xQn}from"node:path";var _Qn=Nt(ylr(),1),ZHe=Nt(vve(),1),FHe=Nt(nQn(),1);import Sjo from"node:fs";import vjo from"node:path";var Amr=Nt(vve(),1),dQn=Nt(xHe(),1);import _jo from"node:process";import AQn from"node:fs";import OBe from"node:path";function WBe(e){let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}import{fileURLToPath as mjo}from"node:url";import{Transform as Cjo}from"node:stream";var GHe=e=>e instanceof URL?mjo(e):e,dft=class extends Cjo{constructor(t){super({objectMode:!0,transform(r,n,a){a(void 0,t(r)?r:void 0)}})}},pft=e=>e[0]==="!";var pQn={ignore:["**/node_modules","**/flow-typed","**/coverage","**/.git"],absolute:!0,dot:!0},fQn="**/.gitignore",yjo=(e,t)=>pft(e)?"!"+OBe.posix.join(t,e.slice(1)):OBe.posix.join(t,e),bjo=(e,t)=>{let r=WBe(OBe.relative(t,OBe.dirname(e.filePath)));return e.content.split(/\r?\n/).filter(n=>n&&!n.startsWith("#")).map(n=>yjo(n,r))},Ejo=(e,t)=>{if(t=WBe(t),OBe.isAbsolute(e)){if(WBe(e).startsWith(t))return OBe.relative(t,e);throw new Error(`Path ${e} is not in cwd ${t}`)}return e},IQn=(e,t)=>{let r=e.flatMap(a=>bjo(a,t)),n=(0,dQn.default)().add(r);return a=>(a=GHe(a),a=Ejo(a,t),a?n.ignores(WBe(a)):!1)},hQn=(e={})=>({cwd:GHe(e.cwd)||_jo.cwd(),suppressErrors:!!e.suppressErrors,deep:typeof e.deep=="number"?e.deep:Number.POSITIVE_INFINITY}),mQn=async(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=hQn(t),o=await(0,Amr.default)(e,{cwd:r,suppressErrors:n,deep:a,...pQn}),l=await Promise.all(o.map(async A=>({filePath:A,content:await AQn.promises.readFile(A,"utf8")})));return IQn(l,r)},CQn=(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=hQn(t),l=Amr.default.sync(e,{cwd:r,suppressErrors:n,deep:a,...pQn}).map(A=>({filePath:A,content:AQn.readFileSync(A,"utf8")}));return IQn(l,r)};var Bjo=e=>{if(e.some(t=>typeof t!="string"))throw new TypeError("Patterns must be a string or an array of strings")},dmr=e=>(e=[...new Set([e].flat())],Bjo(e),e),wjo=e=>{if(!e.cwd)return;let t;try{t=Sjo.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},yQn=(e={})=>(e={...e,ignore:e.ignore||[],expandDirectories:e.expandDirectories===void 0?!0:e.expandDirectories,cwd:GHe(e.cwd)},wjo(e),e),bQn=e=>async(t,r)=>e(dmr(t),yQn(r)),fft=e=>(t,r)=>e(dmr(t),yQn(r)),EQn=e=>{let{ignoreFiles:t,gitignore:r}=e,n=t?dmr(t):[];return r&&n.push(fQn),n},Tjo=async e=>{let t=EQn(e);return vQn(t.length>0&&await mQn(t,e))},SQn=e=>{let t=EQn(e);return vQn(t.length>0&&CQn(t,e))},vQn=e=>{let t=new Set;return r=>{let n=r.path||r,a=vjo.normalize(n),o=t.has(a)||e&&e(n);return t.add(a),!o}},BQn=(e,t)=>e.flat().filter(r=>t(r)),Rjo=(e,t)=>(0,_Qn.default)(e).pipe(new dft(r=>t(r))),wQn=(e,t)=>{let r=[];for(;e.length>0;){let n=e.findIndex(o=>pft(o));if(n===-1){r.push({patterns:e,options:t});break}let a=e[n].slice(1);for(let o of r)o.options.ignore.push(a);n!==0&&r.push({patterns:e.slice(0,n),options:{...t,ignore:[...t.ignore,a]}}),e=e.slice(n+1)}return r},TQn=(e,t)=>({...t?{cwd:t}:{},...Array.isArray(e)?{files:e}:e}),RQn=async(e,t)=>{let r=wQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=TQn(a,n),l=n?{cwd:n}:void 0;return Promise.all(r.map(async A=>{let{patterns:f,options:I}=A;return[f,I.ignore]=await Promise.all([(0,FHe.default)(f,o),(0,FHe.default)(I.ignore,l)]),{patterns:f,options:I}}))},pmr=(e,t)=>{let r=wQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=TQn(a,n),l=n?{cwd:n}:void 0;return r.map(A=>{let{patterns:f,options:I}=A;return f=FHe.default.sync(f,o),I.ignore=FHe.default.sync(I.ignore,l),{patterns:f,options:I}})},Z$=bQn(async(e,t)=>{let[r,n]=await Promise.all([RQn(e,t),Tjo(t)]),a=await Promise.all(r.map(o=>(0,ZHe.default)(o.patterns,o.options)));return BQn(a,n)}),NQn=fft((e,t)=>{let r=pmr(e,t),n=SQn(t),a=r.map(o=>ZHe.default.sync(o.patterns,o.options));return BQn(a,n)}),jtu=fft((e,t)=>{let r=pmr(e,t),n=SQn(t),a=r.map(o=>ZHe.default.stream(o.patterns,o.options));return Rjo(a,n)}),ztu=fft((e,t)=>e.some(r=>ZHe.default.isDynamicPattern(r,t))),qtu=bQn(RQn),$tu=fft(pmr);var GQn=Nt(xHe(),1);import{join as Njo}from"node:path";var DQn=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".pnp-ts.loader.mjs",".git","node_modules","coverage","bundles","dist","gen",".yarn",".vscode",".next","**/**/dist/*","**/**/build/*","**/**/.cache/*","**/**/bundles/*","**/**/templates/*.yaml","**/templates/*.yaml","**/types/**",".terraform",".idea","yarn.mjs"],Djo=["./**/*.{js,mjs,cjs,jsx,ts,tsx}"],kjo=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/gen/**","!**/.idea/**"],kQn=e=>[...Djo.map(t=>Njo(e,t)),...kjo];var fmr=(e,t,r)=>({filePath:e,source:t,messages:r,fixableErrorCount:0,fixableWarningCount:0,usedDeprecatedRules:[],suppressedMessages:[],errorCount:r.filter(n=>n.severity===1).length,fatalErrorCount:r.filter(n=>n.fatal).length,warningCount:r.filter(n=>n.severity===2).length});var PBe=class e extends xjo{constructor(r,n,a,o){super();this.linter=r;this.cacheLinter=n;this.config=a;this.cwd=o;this.ignore=GQn.default.default().add(DQn).add(this.getProjectIgnorePatterns())}ignore;static async initialize(r,n){let{Linter:a,ESLint:o}=await import("@atls/code-runtime/eslint"),{eslintconfig:l}=await import("@atls/code-runtime/eslint"),A=new a({configType:"flat"}),f=l.map(C=>({...C,languageOptions:{...C.languageOptions||{},parserOptions:{...C.languageOptions?.parserOptions||{},tsconfigRootDir:r}}})),I=new o({cache:!0,baseConfig:f,overrideConfigFile:!0,cwd:n,cacheLocation:xQn(r,".config/eslint/.eslintcache")});return new e(A,I,f,n)}async lintFile(r,n){let a=await Fjo(r,"utf8");if(n?.fix){let{messages:o,fixed:l,output:A}=this.linter.verifyAndFix(a,this.config,{filename:r});return l&&await Zjo(r,A,"utf8"),fmr(r,A,o)}return fmr(r,a,this.linter.verify(a,this.config,{filename:r}))}async lintFiles(r=[],n){let a=[];this.emit("start",{files:r});for await(let o of r){this.emit("lint:start",{file:o});let l=await this.lintFile(o,n);a.push(l),this.emit("lint:end",{result:l})}return this.emit("end",{results:a}),a}async lint(r,n){let o=(r&&r.length>0?r:await Z$(kQn(this.cwd),{dot:!0})).filter(l=>this.ignore.filter([Ljo(this.cwd,l)]).length!==0);return n?.cache?this.lintWithCache(o):this.lintFiles(o,n)}async lintWithCache(r=[]){this.emit("start",{files:r});let n=await this.cacheLinter.lintFiles(r);for(let a of n)this.emit("lint:end",{result:a});return this.emit("end",{results:n}),n}getProjectIgnorePatterns(){let r=Gjo(xQn(this.cwd,"package.json"),"utf-8"),{linterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var FQn=Nt(ul(),1);import{EventEmitter as Vjo}from"node:events";var Ift=class extends Vjo{frames=[];get columns(){return process.stdout.columns||160}write=t=>{this.frames.push(t)}},ZE=e=>{let t=new Ift,r=new Ift,{cleanup:n}=(0,FQn.render)(e,{stdout:t,stderr:r,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return n(),[...t.frames,...r.frames].join(` -`)};var $Er={};Uf($Er,{FilesChangedListCommand:()=>DQe,default:()=>Vni,getChangedCommmits:()=>Dni,getChangedFiles:()=>dP,getCommitData:()=>Nni,getEventCommmits:()=>Rni,getGithubChangedFiles:()=>kni});var xni=Nt(dl(),1),Gni=Nt(dl(),1),Fni=Nt(mn(),1),Zni=Nt(mn(),1),Lni=Nt(mn(),1);Rl();var AP=Nt(wTe(),1),aCt=Nt(wTe(),1),Tni=Nt(mn(),1),Rni=async()=>{if(AP.context.eventName==="push")return AP.context.payload.commits;if(AP.context.eventName==="pull_request"&&AP.context.payload.pull_request){let e=AP.context.payload.pull_request.commits_url;return(0,aCt.getOctokit)(process.env.GITHUB_TOKEN).paginate(`GET ${e}`,AP.context.repo)}return console.log(`Unknown event "${AP.context.eventName}". Only "push" and "pull_request" supported.`),[]},Nni=async e=>await(0,aCt.getOctokit)(process.env.GITHUB_TOKEN).rest.repos.getCommit({...AP.context.repo,ref:e}),Dni=async()=>{let e=await Rni();return Promise.all(e.map(async t=>Nni(t.id||t.sha)))},kni=async()=>{if(AP.context.eventName==="pull_request"&&AP.context.payload.pull_request){let t=(0,aCt.getOctokit)(process.env.GITHUB_TOKEN);return(await t.paginate(t.rest.pulls.listFiles,{...AP.context.repo,pull_number:AP.context.payload.pull_request.number,per_page:100})).map(n=>n.filename).filter(Boolean)}return(await Dni()).map(t=>t.data.files?t.data.files.map(r=>r.filename).filter(Boolean):[]).flat()},dP=async(e,t)=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return kni();let{stdout:r}=await Tni.execUtils.execvp("git",["diff","--name-only",...t?[t]:[]],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)};var DQe=class extends xni.BaseCommand{static paths=[["files","changed","list"]];json=vA.Boolean("--json",!1);async execute(){let t=await Fni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Zni.Project.find(t,this.context.cwd);if(!n)throw new Gni.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Lni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await dP(r);for(let A of l)o.reportInfo(null,A),o.reportJson({location:A})})).exitCode()}};var Vni={commands:[DQe]};var Wni=Nt(wTe(),1),TTe=Nt(wTe(),1);var UM=class{constructor(t){this.name=t;if(process.env.GITHUB_TOKEN==null)throw new Error("GITHUB_TOKEN is not defined");this.octokit=(0,Wni.getOctokit)(process.env.GITHUB_TOKEN)}octokit;async create(t){return(await this.octokit.rest.checks.create(t)).data}async update(t){return(await this.octokit.rest.checks.update(t)).data}async start(){let{payload:t}=TTe.context;return this.create({...TTe.context.repo,name:this.name,head_sha:t.after||t.pull_request?.head.sha||process.env.GITHUB_SHA,started_at:new Date().toISOString(),status:"in_progress"})}async complete(t,r){return this.update({...TTe.context.repo,check_run_id:t,completed_at:new Date().toISOString(),status:"completed",conclusion:r.annotations.length>0?"failure":"success",output:r.annotations.length>50?{...r,annotations:r.annotations.slice(0,50)}:r})}async failure(t,r){let{payload:n}=TTe.context,a={...TTe.context.repo,completed_at:new Date().toISOString(),status:"completed",conclusion:"failure",output:t.annotations&&t.annotations.length>50?{...t,annotations:t.annotations.slice(0,50)}:t};return r?this.update({...a,check_run_id:r}):this.create({...a,name:this.name,head_sha:n.after||n.pull_request?.head.sha||process.env.GITHUB_SHA})}};var Jni=Nt(Wc(),1),kQe=class extends Oni.BaseCommand{static paths=[["checks","lint"]];changed=vA.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(r1r.Filename.pnpCjs)&&t.includes(r1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await e1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await t1r.Project.find(t,this.context.cwd),n=await n1r.xfs.mktempPromise(),a=["checks","lint",...this.changed?["--changed"]:[]],{code:o}=await Yni.execUtils.pipevp("yarn",a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await Qni.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await e1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await t1r.Project.find(t,this.context.cwd);return(await Pni.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new UM("Lint"),{id:l}=await o.start();await a.startTimerPromise("Lint",async()=>{try{let A=await PBe.initialize(r.cwd,this.context.cwd),f=await this.getLintTargets(r),I=[];f===null?I=await A.lint():f.length>0&&(I=await A.lint(f)),I.filter(N=>N.messages.length>0).forEach(N=>{ZE((0,Jni.jsx)(jYn,{...N})).split(` -`).forEach(F=>{a.reportInfo(Mni.MessageName.UNNAMED,F)})});let C=this.formatResults(I,r.cwd),b=C.filter(N=>N.annotation_level==="warning").length,E=C.filter(N=>N.annotation_level==="failure").length;await o.complete(l,{title:C.length>0?`Errors ${E}, Warnings ${b}`:"Successful",summary:C.length>0?`Found ${E} errors and ${b} warnings`:"All checks passed",annotations:C})}catch(A){await o.failure({title:"Lint run failed",summary:A instanceof Error?A.message:A},l)}})})).exitCode()}async getLintTargets(t){if(!this.changed)return null;let r=(await dP(t)).filter(a=>/\.(c|m)?(j|t)sx?$/.test(a)),n=await Promise.all(r.map(async a=>n1r.xfs.existsPromise(Xni.npath.toPortablePath(Wya(t.cwd,a)))));return r.filter((a,o)=>n[o])}getAnnotationLevel(t){return t===1?"warning":"failure"}formatResults(t,r){return t.filter(n=>n.messages.length>0).map(({filePath:n,messages:a=[]})=>a.map(o=>{let l=(o.line||0)+1;return{path:r?n.substring(r.length+1):n,start_line:l,end_line:l,annotation_level:this.getAnnotationLevel(o.severity),raw_details:(0,Hni.codeFrameColumns)(Vya(n).toString(),{start:{line:o.line||0,column:o.column||0}},{highlightCode:!1}),title:`(${o.ruleId||"unknown"}): ${o.message}`,message:o.message}})).flat()}};var $ni=Nt(dl(),1),s1r=Nt(mn(),1),o1r=Nt(mn(),1),a1r=Nt(Io(),1),eii=Nt(mn(),1),tii=Nt(mn(),1),rii=Nt(Io(),1),nii=Nt(Io(),1);xQe();var Kni=Nt(mn(),1),jni=e=>{let{project:t}=e,r=new Set,n=({manifest:a})=>{for(let o of Kni.Manifest.hardDependencies)for(let l of a.getForScope(o).values()){let A=t.tryWorkspaceByDescriptor(l);A&&!r.has(A)&&(r.add(A),n(A))}};return n(e),[...r]};var zni=Nt(mn(),1);var qni=e=>{let t=new Set;for(let r of e.project.workspaces)jni(r).some(a=>zni.structUtils.areLocatorsEqual(a.anchoredLocator,e.anchoredLocator))&&t.add(r);return[...t]};var RTe=(e,t)=>{let r=new Set;for(let n of e.workspaces)if(t.some(o=>o.startsWith(n.relativeCwd))&&!r.has(n)){r.add(n);for(let o of qni(n))r.add(o)}return[...r]};var cCt=class extends $ni.BaseCommand{static paths=[["checks","release"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(a1r.Filename.pnpCjs)&&t.includes(a1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await s1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await o1r.Project.find(t,this.context.cwd),n=await nii.xfs.mktempPromise(),{code:a}=await eii.execUtils.pipevp("yarn",["checks","release"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await tii.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return a}async executeRegular(){let{project:t}=await o1r.Project.find(await s1r.Configuration.find(this.context.cwd,this.context.plugins),this.context.cwd),r=RTe(t,await dP(t)),n=new UM("Release"),{id:a}=await n.start();try{let o=[];for await(let l of r)if(l.manifest.scripts.get("build")){let A=new Edt,f=C=>this.context.stdout.write(C);A.stdout.on("data",f),A.stderr.on("data",f);let I=await this.cli.run(["workspace",l.manifest.raw.name,"build"],A);I>0&&o.push({annotation_level:"failure",title:`Error release workspace ${l.manifest.raw.name??l.relativeCwd}`,message:`Exit code ${I}`,raw_details:lee(A.output),path:rii.ppath.join(l.relativeCwd,"package.json"),start_line:1,end_line:1}),A.stdout.off("data",f),A.stderr.off("data",f)}await n.complete(a,{title:o.length>0?`Errors ${o.length}`:"Successful",summary:o.length>0?`Found ${o.length} errors`:"All checks passed",annotations:o})}catch(o){await n.failure({title:"Release run failed",summary:o instanceof Error?o.message:o},a)}return 0}};var iii=Nt(dl(),1),sii=Nt(mn(),1),oii=Nt(mn(),1),c1r=Nt(mn(),1),aii=Nt(mn(),1),cii=Nt(mn(),1),lii=Nt(mn(),1),uii=Nt(Io(),1);Rl();var lCt=class extends iii.BaseCommand{static paths=[["checks","run"]];changed=vA.Boolean("--changed",!1);async execute(){let t=await oii.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await aii.Project.find(t,this.context.cwd);return(await sii.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await this.runCheck(r,r.cwd,["typecheck"],a)!==0||await this.runCheck(r,r.cwd,["lint"],a)!==0||(await Promise.all([this.runCheck(r,r.cwd,["test","unit"],a),this.runCheck(r,r.cwd,["test","integration"],a)])).some(l=>l!==0)||await this.runCheck(r,r.cwd,["release"],a)})).exitCode()}async runCheck(t,r,n,a){try{let l=this.changed&&(n[0]==="lint"||n[0]==="typecheck")&&!n.includes("--changed")?[...n,"--changed"]:n,A=await uii.xfs.mktempPromise(),f=await lii.scriptUtils.makeScriptEnv({binFolder:A,project:t,ignoreCorepack:!0}),{code:I}=await cii.execUtils.pipevp("yarn",["checks",...l],{cwd:r,env:f,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return I!==0&&a.reportError(c1r.MessageName.UNNAMED,`Run check ${n.join(" ")} failed: ${I}`),I}catch(o){return a.reportError(c1r.MessageName.UNNAMED,`Run check ${n.join(" ")} error: ${o instanceof Error?o.message:o}`),1}}};var Cii=Nt(mn(),1),d1r=Nt(mn(),1),p1r=Nt(mn(),1),ACt=Nt(Io(),1),_ii=Nt(mn(),1),yii=Nt(mn(),1),f1r=Nt(Io(),1),bii=Nt(Io(),1),Eii=Nt(Io(),1);import{pathToFileURL as tba}from"node:url";import Mya from"node:events";import{readFileSync as Hya}from"node:fs";import{relative as l1r}from"node:path";import{join as Yya}from"node:path";import{run as Aii}from"node:test";import{tap as Qya}from"node:test/reporters";var dii=Nt(xHe(),1);import{readFile as Pya}from"node:fs/promises";var uCt=class{static async load(t){return Promise.all(t.map(async r=>{let n=await Pya(r,"utf8");return{file:r,source:n,tests:n.match(/test\(/gm)?.length||0}}))}};var Phe="RAIJIN_TEST_EXEC_ARGV",NTe=e=>{let t=["--loader","@atls/code-runtime/ts-node-register"];return e&&t.push("--loader",e),t.push("--loader","@atls/code-runtime/ts-ext-register"),t.push("--enable-source-maps"),t},gii=(e=process.env[Phe])=>{if(!e)return[];try{let t=JSON.parse(e);if(Array.isArray(t)&&t.every(r=>typeof r=="string"))return t}catch{return[]}return[]};var z8=class e extends Mya{constructor(r){super();this.cwd=r;this.ignore=dii.default.default().add(this.getProjectIgnorePatterns())}ignore;async run(r,n,a,o=!1,l){let A=gii(),f={files:r,timeout:n,concurrency:a,watch:o,...A.length>0?{execArgv:A}:{}};if(l==="tap"){let F=Aii(f).compose(Qya);return F.pipe(process.stdout),F.toArray()}let I=await uCt.load(r);this.emit("start",{tests:I});let C=Aii(f),b=F=>{this.emit("test:pass",F)},E=F=>{this.emit("test:fail",F)},N=F=>{this.emit("test:stdout",F)},B=F=>{this.emit("test:stderr",F)};C.on("test:pass",b),C.on("test:fail",E),C.on("test:stdout",N),C.on("test:stderr",B);try{return await C.toArray()}finally{this.emit("end"),C.off("test:pass",b),C.off("test:fail",E),C.off("test:stdout",N),C.off("test:stderr",B)}}static async initialize(r){return new e(r)}async unit(r,n){let o=(await this.collectTestFiles(r,"unit",n?.files)).filter(l=>this.ignore.filter([l1r(this.cwd,l)]).length!==0);return this.run(o,24e4,!0,n?.watch,n?.testReporter)}async integration(r,n){let o=(await this.collectTestFiles(r,"integration",n?.files)).filter(l=>this.ignore.filter([l1r(this.cwd,l)]).length!==0);return this.run(o,42e4,!1,n?.watch,n?.testReporter)}async general(r,n){let o=(await this.collectTestFiles(r,void 0,n?.files)).filter(l=>this.ignore.filter([l1r(this.cwd,l)]).length!==0);return this.run(o,42e4,!0,n?.watch,n?.testReporter)}async collectTestFiles(r,n,a){let o="*";return n!==void 0&&(o=n==="unit"?"!(integration)":"integration"),!a||a.length<1?Z$([`**/${o}/*.test.{ts,tsx,js,jsx}`],{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]}):Z$(a.map(l=>this.isFilename(l)?`**/${o}/*${l}*.test.{ts,tsx,js,jsx}`:this.isRootPath(l)?l:`**/${l}`),{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]})}isFilename(r){let n=r.includes("/")||r.includes("\\"),a=/\.(js|jsx|ts|tsx)$/.test(r);return!n&&!a}isRootPath(r){return r.startsWith("/")||r.startsWith("\\")}getProjectIgnorePatterns(){let r=Hya(Yya(this.cwd,"package.json"),"utf-8"),{testIgnorePatterns:n=[]}=JSON.parse(r);return n}};var mii=Nt(dl(),1);import{relative as Xya}from"node:path";var Jya=1,Uya="failure",fii=new Set(["test failed"]),Kya=["Error","AssertionError","TypeError:","SyntaxError:","ReferenceError:","RangeError:"],g1r=e=>typeof e=="object"&&e!==null,u1r=e=>typeof e=="string"&&e.length>0?e:void 0,Mhe=e=>g1r(e)?u1r(e.message):u1r(e),pii=e=>{if(g1r(e))return u1r(e.stack)},gCt=e=>{if(!g1r(e)||e.cause===void 0)return e;let t=gCt(e.cause),r=Mhe(t);return r&&!fii.has(r)?t:e},A1r=e=>e===void 0||fii.has(e),jya=e=>e.reduce((t,r)=>{if(r.type!=="test:stderr")return t;let{file:n,message:a}=r.data;return n&&a&&t.set(n,`${t.get(n)??""}${a}`),t},new Map),Iii=e=>e?e.split(` -`).map(r=>r.trim()).filter(Boolean).find(r=>Kya.some(n=>r.startsWith(n))):void 0,zya=e=>e.reduce((t,r)=>(r.file&&t.set(r.file,(t.get(r.file)??0)+1),t),new Map),qya=(e,t,r)=>{if(!t||r>1)return!1;let n=gCt(e),a=Mhe(n);return A1r(a)&&Iii(t)!==void 0},$ya=(e,t)=>{let r=gCt(e),n=Mhe(r),a=Iii(t);return a&&A1r(n)?a:n??Mhe(e)??"Test failed"},eba=(e,t)=>{let r=gCt(e),n=Mhe(r);return t&&A1r(n)?t.trim():pii(r)??Mhe(r)??pii(e)??Mhe(e)??"Test failed"},hii=(e,t,r=[])=>{let n=jya(r),a=zya(e);return e.map(o=>{let l=o.file?n.get(o.file):void 0,A=o.file?a.get(o.file)??0:0,f=qya(o.details.error,l,A)?l:void 0,I=$ya(o.details.error,f),C=o.line??Jya;return{path:o.file?Xya(t,o.file):t,start_line:C,end_line:C,annotation_level:Uya,raw_details:eba(o.details.error,f),title:I,message:I}})};var DTe=class extends mii.BaseCommand{formatResults(t,r,n=[]){return hii(t,r,n)}};var GQe=class extends DTe{static paths=[["checks","test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(ACt.Filename.pnpCjs)&&t.includes(ACt.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await d1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await p1r.Project.find(t,this.context.cwd),n=await f1r.xfs.mktempPromise(),a=await yii.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),o=bii.ppath.join(r.cwd,ACt.Filename.pnpEsmLoader),l=await f1r.xfs.existsPromise(o)?tba(Eii.npath.fromPortablePath(o)).href:void 0;a[Phe]=JSON.stringify(NTe(l)),a.COMMAND_PROXY_EXECUTION="true";let{code:A}=await _ii.execUtils.pipevp("yarn",["checks","test","integration"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:a});return A}async executeRegular(){let t=await d1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await p1r.Project.find(t,this.context.cwd);return(await Cii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new UM("Test:Integration"),{id:o}=await a.start();try{let A=await(await z8.initialize(this.context.cwd)).integration(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Integration run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var Sii=Nt(mn(),1),I1r=Nt(mn(),1),h1r=Nt(mn(),1),dCt=Nt(Io(),1),vii=Nt(mn(),1),Bii=Nt(mn(),1),m1r=Nt(Io(),1),wii=Nt(Io(),1),Tii=Nt(Io(),1);import{pathToFileURL as rba}from"node:url";var FQe=class extends DTe{static paths=[["checks","test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(dCt.Filename.pnpCjs)&&t.includes(dCt.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await I1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await h1r.Project.find(t,this.context.cwd),n=await m1r.xfs.mktempPromise(),a=await Bii.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),o=wii.ppath.join(r.cwd,dCt.Filename.pnpEsmLoader),l=await m1r.xfs.existsPromise(o)?rba(Tii.npath.fromPortablePath(o)).href:void 0;a[Phe]=JSON.stringify(NTe(l)),a.COMMAND_PROXY_EXECUTION="true";let{code:A}=await vii.execUtils.pipevp("yarn",["checks","test","unit"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:a});return A}async executeRegular(){let t=await I1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await h1r.Project.find(t,this.context.cwd);return(await Sii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new UM("Test:Unit"),{id:o}=await a.start();try{let A=await(await z8.initialize(this.context.cwd)).unit(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Unit run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var Rii=Nt(dl(),1),_1r=Nt(mn(),1),y1r=Nt(mn(),1),Nii=Nt(mn(),1),pCt=Nt(mn(),1),b1r=Nt(Io(),1),Dii=Nt(mn(),1),E1r=Nt(mn(),1),kTe=Nt(Io(),1),S1r=Nt(Io(),1),v1r=Nt(Io(),1);Rl();import{spawn as nba}from"node:child_process";import{resolve as iba}from"node:path";var C1r=5*60*1e3,ZQe=class extends Rii.BaseCommand{static paths=[["checks","typecheck"]];changed=vA.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(b1r.Filename.pnpCjs)&&t.includes(b1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await _1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await y1r.Project.find(t,this.context.cwd),n=await kTe.xfs.mktempPromise(),a=["checks","typecheck",...this.changed?["--changed"]:[]],{code:o}=await Dii.execUtils.pipevp("yarn",a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await E1r.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await _1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await y1r.Project.find(t,this.context.cwd);return(await Nii.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new UM("TypeCheck");try{let{id:l}=await o.start();await a.startTimerPromise("TypeCheck",async()=>{try{let A=await this.getIncludes(r);if(this.changed&&A.length===0){a.reportInfo(pCt.MessageName.UNNAMED,"No TypeScript files changed"),await o.complete(l,{title:"Successful",summary:"No TypeScript files changed",annotations:[]});return}a.reportInfo(pCt.MessageName.UNNAMED,`TypeCheck targets: ${A.length}`);let f=await this.runTypecheck(r,A);f===0?await o.complete(l,{title:"Successful",summary:"All checks passed",annotations:[]}):(await o.failure({title:"TypeCheck run failed",summary:f===124?`TypeCheck timed out after ${C1r/1e3}s`:`TypeCheck failed with exit code ${f}`},l),a.reportError(pCt.MessageName.UNNAMED,f===124?`TypeCheck timed out after ${C1r/1e3}s`:`TypeCheck failed with exit code ${f}`))}catch(A){await o.failure({title:"TypeCheck run failed",summary:A instanceof Error?A.message:A},l)}})}catch(l){await o.failure({title:"TypeCheck start failed",summary:l instanceof Error?l.message:l})}})).exitCode()}async getIncludes(t){if(this.changed){let r=(await dP(t)).filter(a=>/\.(cts|mts|ts|tsx)$/.test(a)),n=await Promise.all(r.map(async a=>kTe.xfs.existsPromise(S1r.npath.toPortablePath(iba(t.cwd,a)))));return r.filter((a,o)=>n[o])}if(await kTe.xfs.existsPromise(v1r.ppath.join(t.cwd,"tsconfig.json"))){let r=await kTe.xfs.readJsonPromise(v1r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}async runTypecheck(t,r){let n=await kTe.xfs.mktempPromise(),a={...await E1r.scriptUtils.makeScriptEnv({binFolder:n,project:t,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"},o;return new Promise((l,A)=>{let f=!1,I=nba("yarn",["typecheck",...r],{cwd:S1r.npath.fromPortablePath(t.cwd),env:a,stdio:["ignore","pipe","pipe"]});I.stdout.pipe(this.context.stdout,{end:!1}),I.stderr.pipe(this.context.stderr,{end:!1}),o=setTimeout(()=>{f=!0,I.kill("SIGTERM"),setTimeout(()=>{I.killed||I.kill("SIGKILL")},5e3).unref()},C1r),I.on("error",A),I.on("close",C=>{o&&clearTimeout(o),l(f?124:C??1)})})}};var kii={commands:[GQe,FQe,ZQe,kQe,cCt,lCt]};var T1r={};Uf(T1r,{beforeWorkspacePacking:()=>w1r,default:()=>xii});var w1r=(e,t)=>{t.name==="@atls/yarn-cli"&&(t.dependencies=new Proxy({},{set:()=>!0}))};var xii={hooks:{beforeWorkspacePacking:w1r}};var qBr={};Uf(qBr,{default:()=>Ehi});var Tli=Nt(dl(),1),Rli=Nt(mn(),1),Nli=Nt(mn(),1);var zsi=Nt(Lii(),1);var zii=Nt(Kii(),1);function jii(e){let t=[];return new Promise((r,n)=>e.on("data",a=>t.push(a.toString("utf-8"))).on("error",n).on("end",()=>r(t)))}async function qii(e,t={}){return jii((0,zii.default)(e,{cwd:t.cwd}))}import Tba from"path";import VQe from"node:path";import _ba from"node:process";import yba from"node:path";import Mcu,{promises as $ii}from"node:fs";import{fileURLToPath as bba}from"node:url";var R1r=class{value;next;constructor(t){this.value=t}},LQe=class{#e;#t;#n;constructor(){this.clear()}enqueue(t){let r=new R1r(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#n++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#n--,t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#n=0}get size(){return this.#n}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}};function ICt(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=new LQe,r=0,n=()=>{r--,t.size>0&&t.dequeue()()},a=async(A,f,I)=>{r++;let C=(async()=>A(...I))();f(C);try{await C}catch{}n()},o=(A,f,I)=>{t.enqueue(a.bind(void 0,A,f,I)),(async()=>(await Promise.resolve(),r0&&t.dequeue()()))()},l=(A,...f)=>new Promise(I=>{o(A,I,f)});return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),l}var hCt=class extends Error{constructor(t){super(),this.value=t}},mba=async(e,t)=>t(await e),Cba=async e=>{let t=await Promise.all(e);if(t[1]===!0)throw new hCt(t[0]);return!1};async function N1r(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:n=!0}={}){let a=ICt(r),o=[...e].map(A=>[A,a(mba,A,t)]),l=ICt(n?1:Number.POSITIVE_INFINITY);try{await Promise.all(o.map(A=>l(Cba,A)))}catch(A){if(A instanceof hCt)return A.value;throw A}}var esi={directory:"isDirectory",file:"isFile"};function Eba(e){if(!Object.hasOwnProperty.call(esi,e))throw new Error(`Invalid type specified: ${e}`)}var Sba=(e,t)=>t[esi[e]](),vba=e=>e instanceof URL?bba(e):e;async function D1r(e,{cwd:t=_ba.cwd(),type:r="file",allowSymlinks:n=!0,concurrency:a,preserveOrder:o}={}){Eba(r),t=vba(t);let l=n?$ii.stat:$ii.lstat;return N1r(e,async A=>{try{let f=await l(yba.resolve(t,A));return Sba(r,f)}catch{return!1}},{concurrency:a,preserveOrder:o})}dIr();var Bba=Symbol("findUpStop");async function wba(e,t={}){let r=VQe.resolve(PMe(t.cwd)??""),{root:n}=VQe.parse(r),a=VQe.resolve(r,PMe(t.stopAt??n)),o=t.limit??Number.POSITIVE_INFINITY,l=[e].flat(),A=async I=>{if(typeof e!="function")return D1r(l,I);let C=await e(I.cwd);return typeof C=="string"?D1r([C],I):C},f=[];for(;;){let I=await A({...t,cwd:r});if(I===Bba||(I&&f.push(VQe.resolve(r,I)),r===a||f.length>=o))break;r=VQe.dirname(r)}return f}async function k1r(e,t={}){return(await wba(e,{...t,limit:1}))[0]}var tsi=Rba;async function Rba(e){let t=await Nba(e);return typeof t!="string"?t:Tba.join(t,"..")}async function Nba(e){let t=await k1r(".git",{cwd:e,type:"file"}),r=await k1r(".git",{cwd:e,type:"directory"});return t||r}import Dba from"fs/promises";import mCt from"path";import rsi from"fs/promises";async function nsi(e,t){if(typeof t=="string")return mCt.resolve(e,t);let r=mCt.join(e,".git");if((await rsi.lstat(r)).isDirectory())return mCt.join(e,".git/COMMIT_EDITMSG");let o=(await rsi.readFile(r,{encoding:"utf-8"})).replace("gitdir: ","").replace(` -`,"");return mCt.resolve(e,o,"COMMIT_EDITMSG")}async function isi(e,t){let r=await tsi(e);if(typeof r!="string")throw new TypeError(`Could not find git root from ${e}`);let n=await nsi(r,t);return[`${(await Dba.readFile(n)).toString("utf-8")} -`]}var Jsi=Nt(slt(),1);import{Buffer as XEa}from"node:buffer";import JEa from"node:path";import n2r from"node:child_process";import xCt from"node:process";function x1r(e){let t=typeof e=="string"?` -`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}import _Ct from"node:process";import WQe from"node:path";import{fileURLToPath as ssi}from"node:url";function CCt(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"}var kba=({cwd:e=_Ct.cwd(),path:t=_Ct.env[CCt()],preferLocal:r=!0,execPath:n=_Ct.execPath,addExecPath:a=!0}={})=>{let o=e instanceof URL?ssi(e):e,l=WQe.resolve(o),A=[];return r&&xba(A,l),a&&Gba(A,n,l),[...A,t].join(WQe.delimiter)},xba=(e,t)=>{let r;for(;r!==t;)e.push(WQe.join(t,"node_modules/.bin")),r=t,t=WQe.resolve(t,"..")},Gba=(e,t,r)=>{let n=t instanceof URL?ssi(t):t;e.push(WQe.resolve(r,n,".."))},osi=({env:e=_Ct.env,...t}={})=>{e={...e};let r=CCt({env:e});return t.path=e[r],e[r]=kba(t),e};var Fba=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!Zba(a,o)&&n||Object.defineProperty(e,r,o)},Zba=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},Lba=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},Vba=(e,t)=>`/* Wrapped ${e}*/ -${t}`,Wba=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),Oba=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),Pba=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=Vba.bind(null,n,t.toString());Object.defineProperty(a,"name",Oba),Object.defineProperty(e,"toString",{...Wba,value:a})};function G1r(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))Fba(e,t,a,r);return Lba(e,t),Pba(e,t,n),e}var yCt=new WeakMap,asi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(yCt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return G1r(o,e),yCt.set(o,n),o};asi.callCount=e=>{if(!yCt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return yCt.get(e)};var csi=asi;import zba from"node:process";import{constants as Qba}from"node:os";var lsi=()=>{let e=gsi-usi+1;return Array.from({length:e},Mba)},Mba=(e,t)=>({name:`SIGRT${t+1}`,number:usi+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),usi=34,gsi=64;import{constants as Hba}from"node:os";var Asi=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var F1r=()=>{let e=lsi();return[...Asi,...e].map(Yba)},Yba=({name:e,number:t,description:r,action:n,forced:a=!1,standard:o})=>{let{signals:{[e]:l}}=Hba,A=l!==void 0;return{name:e,number:A?l:t,description:r,supported:A,action:n,forced:a,standard:o}};var Xba=()=>{let e=F1r();return Object.fromEntries(e.map(Jba))},Jba=({name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l})=>[e,{name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l}],dsi=Xba(),Uba=()=>{let e=F1r(),t=65,r=Array.from({length:t},(n,a)=>Kba(a,e));return Object.assign({},...r)},Kba=(e,t)=>{let r=jba(e,t);if(r===void 0)return{};let{name:n,description:a,supported:o,action:l,forced:A,standard:f}=r;return{[e]:{name:n,number:e,description:a,supported:o,action:l,forced:A,standard:f}}},jba=(e,t)=>{let r=t.find(({name:n})=>Qba.signals[n]===e);return r!==void 0?r:t.find(n=>n.number===e)},Rlu=Uba();var qba=({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:a,exitCode:o,isCanceled:l})=>e?`timed out after ${t} milliseconds`:l?"was canceled":r!==void 0?`failed with ${r}`:n!==void 0?`was killed with ${n} (${a})`:o!==void 0?`failed with exit code ${o}`:"failed",OQe=({stdout:e,stderr:t,all:r,error:n,signal:a,exitCode:o,command:l,escapedCommand:A,timedOut:f,isCanceled:I,killed:C,parsed:{options:{timeout:b,cwd:E=zba.cwd()}}})=>{o=o===null?void 0:o,a=a===null?void 0:a;let N=a===void 0?void 0:dsi[a].description,B=n&&n.code,Q=`Command ${qba({timedOut:f,timeout:b,errorCode:B,signal:a,signalDescription:N,exitCode:o,isCanceled:I})}: ${l}`,J=Object.prototype.toString.call(n)==="[object Error]",ae=J?`${Q} +`,a=SJo();return a.mainTemplate=e,a.headerPartial=t,a.commitPartial=r,a.footerPartial=n,a}function SJo(){return{transform:(e,t)=>{let r=!0,n=e.notes.map(C=>(r=!1,{...C,title:"BREAKING CHANGES"})),a=e.type;if(e.type==="feat")a="Features";else if(e.type==="fix")a="Bug Fixes";else if(e.type==="perf")a="Performance Improvements";else if(e.type==="revert"||e.revert)a="Reverts";else{if(r)return;e.type==="docs"?a="Documentation":e.type==="style"?a="Styles":e.type==="refactor"?a="Code Refactoring":e.type==="test"?a="Tests":e.type==="build"?a="Build System":e.type==="ci"&&(a="Continuous Integration")}let o=e.scope==="*"?"":e.scope,l=typeof e.hash=="string"?e.hash.substring(0,7):e.shortHash,A=[],f=e.subject;if(typeof f=="string"){let C=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;C&&(C=`${C}/issues/`,f=f.replace(/#([0-9]+)/g,(b,E)=>(A.push(E),`[#${E}](${C}${E})`))),t.host&&(f=f.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(b,E)=>E.includes("/")?`@${E}`:`[@${E}](${t.host}/${E})`))}let I=e.references.filter(C=>!A.includes(C.issue));return{notes:n,type:a,scope:o,shortHash:l,subject:f,references:I}},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:c5n.default}}function u5n(e){let t=2,r=0,n=0;return e.forEach(a=>{a.notes.length>0?(r+=a.notes.length,t=0):a.type==="feat"&&(n+=1,t===2&&(t=1))}),{level:t,reason:r===1?`There is ${r} BREAKING CHANGE and ${n} features`:`There are ${r} BREAKING CHANGES and ${n} features`}}async function bIr(){return{parser:$3n(),writer:await l5n(),whatBump:u5n}}var _Be=class{async generate({path:t,packageName:r,debug:n,tagPrefix:a,file:o,releaseCount:l}){let A={lernaPackage:`${r}`,tagPrefix:a,debug:n?console.debug:void 0,warn:console.warn,append:!0,releaseCount:l,pkg:{path:g5n(t,"package.json")},config:bIr};return o?this.generateToFile(A,t):this.generateToStdOut(A)}async generateToStdOut(t){return new Promise((r,n)=>{let a=_Ir(t,void 0,{path:wJo(t.pkg?.path??"./")}),o="";a.on("data",l=>{o+=l.toString()}),a.on("end",()=>{r(o)}),a.on("error",l=>{n(l)})})}async generateToFile(t,r){let n=g5n(r,"CHANGELOG.md");try{let a=await this.generateToStdOut(t),o="";try{o=await vJo(n,"utf8")}catch(A){let f=A;if(f.code!=="ENOENT")throw f}let l=o?`${a} +${o}`:a;return await BJo(n,l,"utf8"),l}catch(a){throw console.error("Error generating changelog:",a),a}}};var ypt=class extends A5n.BaseCommand{static paths=[["changelog","generate"]];debug=sA.Boolean("--debug");tagPrefix=sA.String("-t,--tag-prefix");stdOut=sA.Boolean("--stdout",!1);async execute(){let t=await p5n.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await I5n.Project.find(t,this.context.cwd);if(!n)throw new d5n.WorkspaceRequiredError(r.cwd,this.context.cwd);let a;return(await f5n.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Generating changelog",async()=>{let A="";n.manifest.name?.scope&&(A+=`@${n.manifest.name.scope}/`),A+=`${n.manifest.name?.name}`;let f=TJo(r.cwd,this.context.cwd);a=await new _Be().generate({path:f,packageName:A,debug:this.debug,file:!this.stdOut,tagPrefix:this.tagPrefix}),this.stdOut&&console.log(a)})})).exitCode()}};var h5n={commands:[ypt]};var SIr={};Uf(SIr,{CheckCommand:()=>PMe,default:()=>C5n});var m5n=xt(sl(),1),PMe=class extends m5n.BaseCommand{static paths=[["check"]];async execute(){await this.cli.run(["format"]),await this.cli.run(["typecheck"]),await this.cli.run(["lint"])}};var C5n={commands:[PMe]};var T1r={};Uf(T1r,{ChecksLintCommand:()=>DQe,ChecksTestIntegrationCommand:()=>ZQe,ChecksTestUnitCommand:()=>LQe,ChecksTypeCheckCommand:()=>VQe,default:()=>Hii});var Xni=xt(sl(),1),Jni=xt(wn(),1),e1r=xt(wn(),1),Uni=xt(wn(),1),t1r=xt(wn(),1),r1r=xt(No(),1),Kni=xt(FIr(),1),jni=xt(wn(),1),n1r=xt(No(),1),zni=xt(No(),1);vl();import{readFileSync as Pya}from"node:fs";import{resolve as Mya}from"node:path";var tmr=xt(gl(),1),nae=xt(gl(),1);var qhr=xt(gl(),1),$hr=xt(Wc(),1),B8=({children:e,line:t=0,column:r=0})=>(0,$hr.jsxs)(qhr.Text,{color:"cyan",children:[e,(0,$hr.jsxs)(qhr.Text,{color:"yellow",children:[":",t,":",r]})]});var YYn=xt(gl(),1),QYn=xt(Wc(),1),eV=({offset:e=0})=>(0,QYn.jsx)(YYn.Text,{color:"gray",children:Array.from({length:process.stdout.columns-e},()=>"\u2500").join("")});var UYn=xt(FIr(),1),KYn=xt(gl(),1);import emr from"node:process";import H6o from"node:os";import XYn from"node:tty";function DM(e,t=globalThis.Deno?globalThis.Deno.args:emr.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function X6o(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=Y6o();n!==void 0&&(cft=n);let a=r?cft:n;if(a===0)return 0;if(r){if(DM("color=16m")||DM("color=full")||DM("color=truecolor"))return 3;if(DM("color=256"))return 2}if("TF_BUILD"in kS&&"AGENT_NAME"in kS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(kS.TERM==="dumb")return o;if(emr.platform==="win32"){let l=H6o.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in kS)return"GITHUB_ACTIONS"in kS||"GITEA_ACTIONS"in kS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in kS)||kS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in kS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(kS.TEAMCITY_VERSION)?1:0;if(kS.COLORTERM==="truecolor"||kS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in kS){let l=Number.parseInt((kS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(kS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(kS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(kS.TERM)||"COLORTERM"in kS?1:o}function lft(e,t={}){let r=X6o(e,{streamIsTTY:e&&e.isTTY,...t});return Q6o(r)}var qtu={stdout:lft({isTTY:XYn.isatty(1)}),stderr:lft({isTTY:XYn.isatty(2)})};var jYn=xt(Wc(),1),{level:J6o}=lft({isTTY:!0})||{level:0},JYn=J6o>=1,U6o=(e,t,r,n)=>(0,UYn.codeFrameColumns)(e,{start:{column:r,line:t}},{highlightCode:JYn,forceColor:JYn,message:n}),w8=({children:e,line:t,column:r,message:n})=>(0,jYn.jsx)(KYn.Text,{children:U6o(e,t,r,n)});var iD=xt(Wc(),1),zYn=({filePath:e,message:t,source:r})=>(0,iD.jsxs)(nae.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,iD.jsxs)(nae.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,iD.jsx)(nae.Box,{flexDirection:"row",flexGrow:1,children:(0,iD.jsx)(B8,{line:t.line,column:t.column,children:e})}),(0,iD.jsx)(nae.Box,{children:(0,iD.jsxs)(tmr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,iD.jsx)(nae.Box,{children:(0,iD.jsx)(eV,{offset:2})}),!!r&&(0,iD.jsxs)(iD.Fragment,{children:[(0,iD.jsx)(nae.Box,{children:(0,iD.jsx)(w8,{line:t.line,column:t.column,children:r})}),(0,iD.jsx)(eV,{offset:2})]}),(0,iD.jsx)(nae.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,iD.jsxs)(tmr.Text,{color:"white",children:[" ",t.message]})})]});var eQn=xt(gl(),1);import{isAbsolute as z6o}from"node:path";import{relative as q6o}from"node:path";import{webcrypto as $Yn}from"node:crypto";var qYn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var K6o=128,KIe,VBe;function j6o(e){!KIe||KIe.lengthKIe.length&&($Yn.getRandomValues(KIe),VBe=0),VBe+=e}function jO(e=21){j6o(e-=0);let t="";for(let r=VBe-e;r{let a=(0,tQn.useMemo)(()=>z6o(e)?q6o(n,e):e,[e]);return r.length===0?null:(0,rmr.jsx)(eQn.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,rmr.jsx)(zYn,{filePath:a,message:o,source:t},jO()))})};import xjo from"node:events";import{readFileSync as Gjo}from"node:fs";import{readFile as Fjo}from"node:fs/promises";import{writeFile as Zjo}from"node:fs/promises";import{relative as Ljo}from"node:path";import{join as WQn}from"node:path";var BQn=xt(ylr(),1),FHe=xt(vve(),1),GHe=xt(lQn(),1);import Sjo from"node:fs";import vjo from"node:path";var Amr=xt(vve(),1),CQn=xt(kHe(),1);import _jo from"node:process";import mQn from"node:fs";import OBe from"node:path";function WBe(e){let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}import{fileURLToPath as mjo}from"node:url";import{Transform as Cjo}from"node:stream";var xHe=e=>e instanceof URL?mjo(e):e,gft=class extends Cjo{constructor(t){super({objectMode:!0,transform(r,n,a){a(void 0,t(r)?r:void 0)}})}},Aft=e=>e[0]==="!";var _Qn={ignore:["**/node_modules","**/flow-typed","**/coverage","**/.git"],absolute:!0,dot:!0},yQn="**/.gitignore",yjo=(e,t)=>Aft(e)?"!"+OBe.posix.join(t,e.slice(1)):OBe.posix.join(t,e),bjo=(e,t)=>{let r=WBe(OBe.relative(t,OBe.dirname(e.filePath)));return e.content.split(/\r?\n/).filter(n=>n&&!n.startsWith("#")).map(n=>yjo(n,r))},Ejo=(e,t)=>{if(t=WBe(t),OBe.isAbsolute(e)){if(WBe(e).startsWith(t))return OBe.relative(t,e);throw new Error(`Path ${e} is not in cwd ${t}`)}return e},bQn=(e,t)=>{let r=e.flatMap(a=>bjo(a,t)),n=(0,CQn.default)().add(r);return a=>(a=xHe(a),a=Ejo(a,t),a?n.ignores(WBe(a)):!1)},EQn=(e={})=>({cwd:xHe(e.cwd)||_jo.cwd(),suppressErrors:!!e.suppressErrors,deep:typeof e.deep=="number"?e.deep:Number.POSITIVE_INFINITY}),SQn=async(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=EQn(t),o=await(0,Amr.default)(e,{cwd:r,suppressErrors:n,deep:a,..._Qn}),l=await Promise.all(o.map(async A=>({filePath:A,content:await mQn.promises.readFile(A,"utf8")})));return bQn(l,r)},vQn=(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=EQn(t),l=Amr.default.sync(e,{cwd:r,suppressErrors:n,deep:a,..._Qn}).map(A=>({filePath:A,content:mQn.readFileSync(A,"utf8")}));return bQn(l,r)};var Bjo=e=>{if(e.some(t=>typeof t!="string"))throw new TypeError("Patterns must be a string or an array of strings")},dmr=e=>(e=[...new Set([e].flat())],Bjo(e),e),wjo=e=>{if(!e.cwd)return;let t;try{t=Sjo.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},wQn=(e={})=>(e={...e,ignore:e.ignore||[],expandDirectories:e.expandDirectories===void 0?!0:e.expandDirectories,cwd:xHe(e.cwd)},wjo(e),e),TQn=e=>async(t,r)=>e(dmr(t),wQn(r)),dft=e=>(t,r)=>e(dmr(t),wQn(r)),RQn=e=>{let{ignoreFiles:t,gitignore:r}=e,n=t?dmr(t):[];return r&&n.push(yQn),n},Tjo=async e=>{let t=RQn(e);return DQn(t.length>0&&await SQn(t,e))},NQn=e=>{let t=RQn(e);return DQn(t.length>0&&vQn(t,e))},DQn=e=>{let t=new Set;return r=>{let n=r.path||r,a=vjo.normalize(n),o=t.has(a)||e&&e(n);return t.add(a),!o}},kQn=(e,t)=>e.flat().filter(r=>t(r)),Rjo=(e,t)=>(0,BQn.default)(e).pipe(new gft(r=>t(r))),xQn=(e,t)=>{let r=[];for(;e.length>0;){let n=e.findIndex(o=>Aft(o));if(n===-1){r.push({patterns:e,options:t});break}let a=e[n].slice(1);for(let o of r)o.options.ignore.push(a);n!==0&&r.push({patterns:e.slice(0,n),options:{...t,ignore:[...t.ignore,a]}}),e=e.slice(n+1)}return r},GQn=(e,t)=>({...t?{cwd:t}:{},...Array.isArray(e)?{files:e}:e}),FQn=async(e,t)=>{let r=xQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=GQn(a,n),l=n?{cwd:n}:void 0;return Promise.all(r.map(async A=>{let{patterns:f,options:I}=A;return[f,I.ignore]=await Promise.all([(0,GHe.default)(f,o),(0,GHe.default)(I.ignore,l)]),{patterns:f,options:I}}))},pmr=(e,t)=>{let r=xQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=GQn(a,n),l=n?{cwd:n}:void 0;return r.map(A=>{let{patterns:f,options:I}=A;return f=GHe.default.sync(f,o),I.ignore=GHe.default.sync(I.ignore,l),{patterns:f,options:I}})},L$=TQn(async(e,t)=>{let[r,n]=await Promise.all([FQn(e,t),Tjo(t)]),a=await Promise.all(r.map(o=>(0,FHe.default)(o.patterns,o.options)));return kQn(a,n)}),ZQn=dft((e,t)=>{let r=pmr(e,t),n=NQn(t),a=r.map(o=>FHe.default.sync(o.patterns,o.options));return kQn(a,n)}),Wru=dft((e,t)=>{let r=pmr(e,t),n=NQn(t),a=r.map(o=>FHe.default.stream(o.patterns,o.options));return Rjo(a,n)}),Oru=dft((e,t)=>e.some(r=>FHe.default.isDynamicPattern(r,t))),Pru=TQn(FQn),Mru=dft(pmr);var OQn=xt(kHe(),1);import{join as Njo}from"node:path";var LQn=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".pnp-ts.loader.mjs",".git","node_modules","coverage","bundles","dist","gen",".yarn",".vscode",".next","**/**/dist/*","**/**/build/*","**/**/.cache/*","**/**/bundles/*","**/**/templates/*.yaml","**/templates/*.yaml","**/types/**",".terraform",".idea","yarn.mjs"],Djo=["./**/*.{js,mjs,cjs,jsx,ts,tsx}"],kjo=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/gen/**","!**/.idea/**"],VQn=e=>[...Djo.map(t=>Njo(e,t)),...kjo];var fmr=(e,t,r)=>({filePath:e,source:t,messages:r,fixableErrorCount:0,fixableWarningCount:0,usedDeprecatedRules:[],suppressedMessages:[],errorCount:r.filter(n=>n.severity===1).length,fatalErrorCount:r.filter(n=>n.fatal).length,warningCount:r.filter(n=>n.severity===2).length});var PBe=class e extends xjo{constructor(r,n,a,o){super();this.linter=r;this.cacheLinter=n;this.config=a;this.cwd=o;this.ignore=OQn.default.default().add(LQn).add(this.getProjectIgnorePatterns())}ignore;static async initialize(r,n){let{Linter:a,ESLint:o}=await import("@atls/code-runtime/eslint"),{eslintconfig:l}=await import("@atls/code-runtime/eslint"),A=new a({configType:"flat"}),f=l.map(C=>({...C,languageOptions:{...C.languageOptions||{},parserOptions:{...C.languageOptions?.parserOptions||{},tsconfigRootDir:r}}})),I=new o({cache:!0,baseConfig:f,overrideConfigFile:!0,cwd:n,cacheLocation:WQn(r,".config/eslint/.eslintcache")});return new e(A,I,f,n)}async lintFile(r,n){let a=await Fjo(r,"utf8");if(n?.fix){let{messages:o,fixed:l,output:A}=this.linter.verifyAndFix(a,this.config,{filename:r});return l&&await Zjo(r,A,"utf8"),fmr(r,A,o)}return fmr(r,a,this.linter.verify(a,this.config,{filename:r}))}async lintFiles(r=[],n){let a=[];this.emit("start",{files:r});for await(let o of r){this.emit("lint:start",{file:o});let l=await this.lintFile(o,n);a.push(l),this.emit("lint:end",{result:l})}return this.emit("end",{results:a}),a}async lint(r,n){let o=(r&&r.length>0?r:await L$(VQn(this.cwd),{dot:!0})).filter(l=>this.ignore.filter([Ljo(this.cwd,l)]).length!==0);return n?.cache?this.lintWithCache(o):this.lintFiles(o,n)}async lintWithCache(r=[]){this.emit("start",{files:r});let n=await this.cacheLinter.lintFiles(r);for(let a of n)this.emit("lint:end",{result:a});return this.emit("end",{results:n}),n}getProjectIgnorePatterns(){let r=Gjo(WQn(this.cwd,"package.json"),"utf-8"),{linterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var PQn=xt(gl(),1);import{EventEmitter as Vjo}from"node:events";var pft=class extends Vjo{frames=[];get columns(){return process.stdout.columns||160}write=t=>{this.frames.push(t)}},LE=e=>{let t=new pft,r=new pft,{cleanup:n}=(0,PQn.render)(e,{stdout:t,stderr:r,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return n(),[...t.frames,...r.frames].join(` +`)};var $Er={};Uf($Er,{FilesChangedListCommand:()=>NQe,default:()=>Hni,getChangedCommmits:()=>oCt,getChangedFiles:()=>fP,getCommitData:()=>Zni,getEventCommmits:()=>Fni,getGithubChangedFiles:()=>Lni});var Vni=xt(sl(),1),Wni=xt(sl(),1),Oni=xt(wn(),1),Pni=xt(wn(),1),Mni=xt(wn(),1);vl();var pP=xt(wTe(),1),sCt=xt(wTe(),1),Gni=xt(wn(),1),Lya=100,Fni=async()=>{if(pP.context.eventName==="push")return pP.context.payload.commits;if(pP.context.eventName==="pull_request"&&pP.context.payload.pull_request){let e=pP.context.payload.pull_request.commits_url;return(0,sCt.getOctokit)(process.env.GITHUB_TOKEN).paginate(`GET ${e}`,pP.context.repo)}return console.log(`Unknown event "${pP.context.eventName}". Only "push" and "pull_request" supported.`),[]},Zni=async e=>{let t=(0,sCt.getOctokit)(process.env.GITHUB_TOKEN),r=[],n;for await(let a of t.paginate.iterator(t.rest.repos.getCommit,{...pP.context.repo,ref:e,per_page:Lya})){let o=a;n??=o,r.push(...o.data.files??[])}if(!n)throw new Error(`Could not resolve commit "${e}"`);return{...n,data:{...n.data,files:r}}},oCt=async()=>{let e=await Fni();return Promise.all(e.map(async t=>Zni(t.id||t.sha)))},Lni=async()=>{if(pP.context.eventName==="pull_request"&&pP.context.payload.pull_request){let t=(0,sCt.getOctokit)(process.env.GITHUB_TOKEN);return(await t.paginate(t.rest.pulls.listFiles,{...pP.context.repo,pull_number:pP.context.payload.pull_request.number,per_page:100})).map(n=>n.filename).filter(Boolean)}return(await oCt()).map(t=>t.data.files?t.data.files.map(r=>r.filename).filter(Boolean):[]).flat()},fP=async(e,t)=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return Lni();let{stdout:r}=await Gni.execUtils.execvp("git",["diff","--name-only",...t?[t]:[]],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)};var NQe=class extends Vni.BaseCommand{static paths=[["files","changed","list"]];json=sA.Boolean("--json",!1);async execute(){let t=await Oni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Pni.Project.find(t,this.context.cwd);if(!n)throw new Wni.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Mni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await fP(r);for(let A of l)o.reportInfo(null,A),o.reportJson({location:A})})).exitCode()}};var Hni={commands:[NQe]};var Yni=xt(wn(),1);import{join as Vya}from"node:path";var Wya=process.platform==="win32"?"yarn.cmd":"yarn",BC=async({binFolder:e,project:t,env:r={}})=>{let n=await Yni.scriptUtils.makeScriptEnv({binFolder:e,project:t,ignoreCorepack:!0});return{executable:Vya(n.BERRY_BIN_FOLDER,Wya),env:{...n,...r}}};var Qni=xt(wTe(),1),TTe=xt(wTe(),1);var KM=class{constructor(t){this.name=t;if(process.env.GITHUB_TOKEN==null)throw new Error("GITHUB_TOKEN is not defined");this.octokit=(0,Qni.getOctokit)(process.env.GITHUB_TOKEN)}octokit;async create(t){return(await this.octokit.rest.checks.create(t)).data}async update(t){return(await this.octokit.rest.checks.update(t)).data}async start(){let{payload:t}=TTe.context;return this.create({...TTe.context.repo,name:this.name,head_sha:t.after||t.pull_request?.head.sha||process.env.GITHUB_SHA,started_at:new Date().toISOString(),status:"in_progress"})}async complete(t,r){return this.update({...TTe.context.repo,check_run_id:t,completed_at:new Date().toISOString(),status:"completed",conclusion:r.annotations.length>0?"failure":"success",output:r.annotations.length>50?{...r,annotations:r.annotations.slice(0,50)}:r})}async failure(t,r){let{payload:n}=TTe.context,a={...TTe.context.repo,completed_at:new Date().toISOString(),status:"completed",conclusion:"failure",output:t.annotations&&t.annotations.length>50?{...t,annotations:t.annotations.slice(0,50)}:t};return r?this.update({...a,check_run_id:r}):this.create({...a,name:this.name,head_sha:n.after||n.pull_request?.head.sha||process.env.GITHUB_SHA})}};var qni=xt(Wc(),1),DQe=class extends Xni.BaseCommand{static paths=[["checks","lint"]];changed=sA.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(r1r.Filename.pnpCjs)&&t.includes(r1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await e1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await t1r.Project.find(t,this.context.cwd),n=await n1r.xfs.mktempPromise(),a=["checks","lint",...this.changed?["--changed"]:[]],{executable:o,env:l}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await jni.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await e1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await t1r.Project.find(t,this.context.cwd);return(await Jni.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new KM("Lint"),{id:l}=await o.start();await a.startTimerPromise("Lint",async()=>{try{let A=await PBe.initialize(r.cwd,this.context.cwd),f=await this.getLintTargets(r),I=[];f===null?I=await A.lint():f.length>0&&(I=await A.lint(f)),I.filter(N=>N.messages.length>0).forEach(N=>{LE((0,qni.jsx)(rQn,{...N})).split(` +`).forEach(F=>{a.reportInfo(Uni.MessageName.UNNAMED,F)})});let C=this.formatResults(I,r.cwd),b=C.filter(N=>N.annotation_level==="warning").length,E=C.filter(N=>N.annotation_level==="failure").length;await o.complete(l,{title:C.length>0?`Errors ${E}, Warnings ${b}`:"Successful",summary:C.length>0?`Found ${E} errors and ${b} warnings`:"All checks passed",annotations:C})}catch(A){await o.failure({title:"Lint run failed",summary:A instanceof Error?A.message:A},l)}})})).exitCode()}async getLintTargets(t){if(!this.changed)return null;let r=(await fP(t)).filter(a=>/\.(c|m)?(j|t)sx?$/.test(a)),n=await Promise.all(r.map(async a=>n1r.xfs.existsPromise(zni.npath.toPortablePath(Mya(t.cwd,a)))));return r.filter((a,o)=>n[o])}getAnnotationLevel(t){return t===1?"warning":"failure"}formatResults(t,r){return t.filter(n=>n.messages.length>0).map(({filePath:n,messages:a=[]})=>a.map(o=>{let l=(o.line||0)+1;return{path:r?n.substring(r.length+1):n,start_line:l,end_line:l,annotation_level:this.getAnnotationLevel(o.severity),raw_details:(0,Kni.codeFrameColumns)(Pya(n).toString(),{start:{line:o.line||0,column:o.column||0}},{highlightCode:!1}),title:`(${o.ruleId||"unknown"}): ${o.message}`,message:o.message}})).flat()}};var fii=xt(sl(),1),c1r=xt(wn(),1),l1r=xt(wn(),1),u1r=xt(No(),1),Iii=xt(wn(),1),hii=xt(No(),1),mii=xt(No(),1);kQe();var a1r={};Uf(a1r,{WorkspacesChangedForeachCommand:()=>xQe,WorkspacesChangedListCommand:()=>GQe,default:()=>pii,getChangedWorkspaces:()=>Mhe,getWorkspaceDependencies:()=>s1r,getWorkspaceDependents:()=>o1r});var rii=xt(sl(),1),nii=xt(sl(),1),iii=xt(wn(),1),sii=xt(wn(),1),oii=xt(wn(),1),aii=xt(wn(),1);vl();var tii=xt(wn(),1);var eii=xt(wn(),1),s1r=e=>{let{project:t}=e,r=new Set,n=({manifest:a})=>{for(let o of eii.Manifest.hardDependencies)for(let l of a.getForScope(o).values()){let A=t.tryWorkspaceByDescriptor(l);A&&!r.has(A)&&(r.add(A),n(A))}};return n(e),[...r]};var o1r=e=>{let t=new Set;for(let r of e.project.workspaces)s1r(r).some(a=>tii.structUtils.areLocatorsEqual(a.anchoredLocator,e.anchoredLocator))&&t.add(r);return[...t]};var Mhe=(e,t)=>{let r=new Set;for(let n of e.workspaces)if(t.some(o=>o.startsWith(n.relativeCwd))&&!r.has(n)){r.add(n);for(let o of o1r(n))r.add(o)}return[...r]};var xQe=class extends rii.BaseCommand{static paths=[["workspaces","changed","foreach"]];exclude=sA.String("--exclude","");verbose=sA.Boolean("-v,--verbose",!1);parallel=sA.Boolean("-p,--parallel",!1);workTree=sA.Boolean("-W,--worktree",!0);all=sA.Boolean("-A,--all",!1);recursive=sA.Boolean("-R,--recursive",!1);since=sA.String("--since","");interlaced=sA.Boolean("-i,--interlaced",!1);publicOnly=sA.Boolean("--no-private",!1);topological=sA.Boolean("-t,--topological",!1);topologicalDev=sA.Boolean("--topological-dev",!1);jobs=sA.String("-j,--jobs");commandName=sA.String();args=sA.Proxy();async execute(){let t=await iii.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await sii.Project.find(t,this.context.cwd);if(!n)throw new nii.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await fP(r),o=Mhe(r,a);if(!o.length)return(await oii.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{f.reportInfo(null,"No workspaces changed")})).exitCode();let l=["workspaces","foreach"];return o.forEach(A=>{l.push("--include"),l.push(aii.structUtils.stringifyIdent(A.anchoredLocator))}),this.all?l.push("--all"):this.since.length>0?(l.push("--since"),l.push(this.since)):this.workTree&&l.push("--worktree"),this.exclude&&(l.push("--exclude"),l.push(this.exclude)),this.verbose&&l.push("--verbose"),this.parallel&&l.push("--parallel"),this.interlaced&&l.push("--interlaced"),this.publicOnly&&l.push("--no-private"),this.topological&&l.push("--topological"),this.topologicalDev&&l.push("--topological-dev"),this.jobs&&l.push("--jobs"),this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var cii=xt(sl(),1),lii=xt(sl(),1),uii=xt(wn(),1),gii=xt(wn(),1),Aii=xt(wn(),1),dii=xt(wn(),1);vl();var GQe=class extends cii.BaseCommand{static paths=[["workspaces","changed","list"]];json=sA.Boolean("--json",!1);async execute(){let t=await uii.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await gii.Project.find(t,this.context.cwd);if(!n)throw new lii.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Aii.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await fP(r),A=Mhe(r,l);for(let f of A)o.reportInfo(null,f.relativeCwd),o.reportJson({name:f.manifest.name?dii.structUtils.stringifyIdent(f.manifest.name):null,location:f.relativeCwd})})).exitCode()}};var pii={commands:[xQe,GQe]};import{PassThrough as Yya}from"node:stream";var FQe=class{stream=new Yya;chunks=[];constructor(){this.stream.on("data",t=>this.chunks.push(t))}get data(){return Buffer.concat(this.chunks).toString()}};var aCt=class{stdout;stderr;stdoutOutput=new FQe;stderrOutput=new FQe;constructor(){this.stdout=this.stdoutOutput.stream,this.stderr=this.stderrOutput.stream}get output(){return[this.stdoutOutput.data,this.stderrOutput.data].filter(Boolean).join(` +`)}};var cCt=class extends fii.BaseCommand{static paths=[["checks","release"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(u1r.Filename.pnpCjs)&&t.includes(u1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await c1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await l1r.Project.find(t,this.context.cwd),n=await mii.xfs.mktempPromise(),{executable:a,env:o}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await Iii.execUtils.pipevp(a,["checks","release"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let{project:t}=await l1r.Project.find(await c1r.Configuration.find(this.context.cwd,this.context.plugins),this.context.cwd),r=Mhe(t,await fP(t)),n=new KM("Release"),{id:a}=await n.start();try{let o=[];for await(let l of r)if(l.manifest.scripts.get("build")){let A=new aCt,f=C=>this.context.stdout.write(C);A.stdout.on("data",f),A.stderr.on("data",f);let I=await this.cli.run(["workspace",l.manifest.raw.name,"build"],A);I>0&&o.push({annotation_level:"failure",title:`Error release workspace ${l.manifest.raw.name??l.relativeCwd}`,message:`Exit code ${I}`,raw_details:uee(A.output),path:hii.ppath.join(l.relativeCwd,"package.json"),start_line:1,end_line:1}),A.stdout.off("data",f),A.stderr.off("data",f)}await n.complete(a,{title:o.length>0?`Errors ${o.length}`:"Successful",summary:o.length>0?`Found ${o.length} errors`:"All checks passed",annotations:o})}catch(o){await n.failure({title:"Release run failed",summary:o instanceof Error?o.message:o},a)}return 0}};var Cii=xt(sl(),1),_ii=xt(wn(),1),yii=xt(wn(),1),g1r=xt(wn(),1),bii=xt(wn(),1),Eii=xt(wn(),1),Sii=xt(No(),1);vl();var lCt=class extends Cii.BaseCommand{static paths=[["checks","run"]];changed=sA.Boolean("--changed",!1);async execute(){let t=await yii.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await bii.Project.find(t,this.context.cwd);return(await _ii.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await this.runCheck(r,r.cwd,["typecheck"],a)!==0||await this.runCheck(r,r.cwd,["lint"],a)!==0||(await Promise.all([this.runCheck(r,r.cwd,["test","unit"],a),this.runCheck(r,r.cwd,["test","integration"],a)])).some(l=>l!==0)||await this.runCheck(r,r.cwd,["release"],a)})).exitCode()}async runCheck(t,r,n,a){try{let l=this.changed&&(n[0]==="lint"||n[0]==="typecheck")&&!n.includes("--changed")?[...n,"--changed"]:n,A=await Sii.xfs.mktempPromise(),{executable:f,env:I}=await BC({binFolder:A,project:t}),{code:C}=await Eii.execUtils.pipevp(f,["checks",...l],{cwd:r,env:I,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return C!==0&&a.reportError(g1r.MessageName.UNNAMED,`Run check ${n.join(" ")} failed: ${C}`),C}catch(o){return a.reportError(g1r.MessageName.UNNAMED,`Run check ${n.join(" ")} error: ${o instanceof Error?o.message:o}`),1}}};var Gii=xt(wn(),1),I1r=xt(wn(),1),h1r=xt(wn(),1),m1r=xt(No(),1),Fii=xt(wn(),1),Zii=xt(No(),1);import Kya from"node:events";import{readFileSync as jya}from"node:fs";import{relative as A1r}from"node:path";import{join as zya}from"node:path";import{run as wii}from"node:test";import{tap as qya}from"node:test/reporters";var Tii=xt(kHe(),1);import{readFile as Qya}from"node:fs/promises";var uCt=class{static async load(t){return Promise.all(t.map(async r=>{let n=await Qya(r,"utf8");return{file:r,source:n,tests:n.match(/test\(/gm)?.length||0}}))}};var Xya="RAIJIN_TEST_EXEC_ARGV";var Jya="@atls/code-runtime/runtime-exec-argv",Uya=async()=>await import(Jya);var vii=async e=>{let{createRuntimeExecArgv:t}=await Uya();return t(e)},Bii=(e=process.env[Xya])=>{if(!e)return[];try{let t=JSON.parse(e);if(Array.isArray(t)&&t.every(r=>typeof r=="string"))return t}catch{return[]}return[]};var q8=class e extends Kya{constructor(r){super();this.cwd=r;this.ignore=Tii.default.default().add(this.getProjectIgnorePatterns())}ignore;async run(r,n,a,o=!1,l){let A=Bii(),f=A.length>0?A:await vii(this.cwd),I={files:r,timeout:n,concurrency:a,watch:o,...f.length>0?{execArgv:f}:{}};if(l==="tap"){let Q=wii(I).compose(qya);return Q.pipe(process.stdout),Q.toArray()}let C=await uCt.load(r);this.emit("start",{tests:C});let b=wii(I),E=Q=>{this.emit("test:pass",Q)},N=Q=>{this.emit("test:fail",Q)},B=Q=>{this.emit("test:stdout",Q)},F=Q=>{this.emit("test:stderr",Q)};b.on("test:pass",E),b.on("test:fail",N),b.on("test:stdout",B),b.on("test:stderr",F);try{return await b.toArray()}finally{this.emit("end"),b.off("test:pass",E),b.off("test:fail",N),b.off("test:stdout",B),b.off("test:stderr",F)}}static async initialize(r){return new e(r)}async unit(r,n){let o=(await this.collectTestFiles(r,"unit",n?.files)).filter(l=>this.ignore.filter([A1r(this.cwd,l)]).length!==0);return this.run(o,24e4,!0,n?.watch,n?.testReporter)}async integration(r,n){let o=(await this.collectTestFiles(r,"integration",n?.files)).filter(l=>this.ignore.filter([A1r(this.cwd,l)]).length!==0);return this.run(o,42e4,!1,n?.watch,n?.testReporter)}async general(r,n){let o=(await this.collectTestFiles(r,void 0,n?.files)).filter(l=>this.ignore.filter([A1r(this.cwd,l)]).length!==0);return this.run(o,42e4,!0,n?.watch,n?.testReporter)}async collectTestFiles(r,n,a){let o="*";return n!==void 0&&(o=n==="unit"?"!(integration)":"integration"),!a||a.length<1?L$([`**/${o}/*.test.{ts,tsx,js,jsx}`],{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]}):L$(a.map(l=>this.isFilename(l)?`**/${o}/*${l}*.test.{ts,tsx,js,jsx}`:this.isRootPath(l)?l:`**/${l}`),{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]})}isFilename(r){let n=r.includes("/")||r.includes("\\"),a=/\.(js|jsx|ts|tsx)$/.test(r);return!n&&!a}isRootPath(r){return r.startsWith("/")||r.startsWith("\\")}getProjectIgnorePatterns(){let r=jya(zya(this.cwd,"package.json"),"utf-8"),{testIgnorePatterns:n=[]}=JSON.parse(r);return n}};var xii=xt(sl(),1);import{relative as $ya}from"node:path";var eba=1,tba="failure",Nii=new Set(["test failed"]),rba=["Error","AssertionError","TypeError:","SyntaxError:","ReferenceError:","RangeError:"],p1r=e=>typeof e=="object"&&e!==null,d1r=e=>typeof e=="string"&&e.length>0?e:void 0,Hhe=e=>p1r(e)?d1r(e.message):d1r(e),Rii=e=>{if(p1r(e))return d1r(e.stack)},gCt=e=>{if(!p1r(e)||e.cause===void 0)return e;let t=gCt(e.cause),r=Hhe(t);return r&&!Nii.has(r)?t:e},f1r=e=>e===void 0||Nii.has(e),nba=e=>e.reduce((t,r)=>{if(r.type!=="test:stderr")return t;let{file:n,message:a}=r.data;return n&&a&&t.set(n,`${t.get(n)??""}${a}`),t},new Map),Dii=e=>e?e.split(` +`).map(r=>r.trim()).filter(Boolean).find(r=>rba.some(n=>r.startsWith(n))):void 0,iba=e=>e.reduce((t,r)=>(r.file&&t.set(r.file,(t.get(r.file)??0)+1),t),new Map),sba=(e,t,r)=>{if(!t||r>1)return!1;let n=gCt(e),a=Hhe(n);return f1r(a)&&Dii(t)!==void 0},oba=(e,t)=>{let r=gCt(e),n=Hhe(r),a=Dii(t);return a&&f1r(n)?a:n??Hhe(e)??"Test failed"},aba=(e,t)=>{let r=gCt(e),n=Hhe(r);return t&&f1r(n)?t.trim():Rii(r)??Hhe(r)??Rii(e)??Hhe(e)??"Test failed"},kii=(e,t,r=[])=>{let n=nba(r),a=iba(e);return e.map(o=>{let l=o.file?n.get(o.file):void 0,A=o.file?a.get(o.file)??0:0,f=sba(o.details.error,l,A)?l:void 0,I=oba(o.details.error,f),C=o.line??eba;return{path:o.file?$ya(t,o.file):t,start_line:C,end_line:C,annotation_level:tba,raw_details:aba(o.details.error,f),title:I,message:I}})};var RTe=class extends xii.BaseCommand{formatResults(t,r,n=[]){return kii(t,r,n)}};var ZQe=class extends RTe{static paths=[["checks","test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(m1r.Filename.pnpCjs)&&t.includes(m1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await I1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await h1r.Project.find(t,this.context.cwd),n=await Zii.xfs.mktempPromise(),{executable:a,env:o}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await Fii.execUtils.pipevp(a,["checks","test","integration"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let t=await I1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await h1r.Project.find(t,this.context.cwd);return(await Gii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new KM("Test:Integration"),{id:o}=await a.start();try{let A=await(await q8.initialize(this.context.cwd)).integration(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Integration run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var Lii=xt(wn(),1),C1r=xt(wn(),1),_1r=xt(wn(),1),y1r=xt(No(),1),Vii=xt(wn(),1),Wii=xt(No(),1);var LQe=class extends RTe{static paths=[["checks","test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(y1r.Filename.pnpCjs)&&t.includes(y1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await C1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await _1r.Project.find(t,this.context.cwd),n=await Wii.xfs.mktempPromise(),{executable:a,env:o}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await Vii.execUtils.pipevp(a,["checks","test","unit"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let t=await C1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await _1r.Project.find(t,this.context.cwd);return(await Lii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new KM("Test:Unit"),{id:o}=await a.start();try{let A=await(await q8.initialize(this.context.cwd)).unit(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Unit run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var Oii=xt(sl(),1),E1r=xt(wn(),1),S1r=xt(wn(),1),Pii=xt(wn(),1),ACt=xt(wn(),1),v1r=xt(No(),1),Mii=xt(wn(),1),NTe=xt(No(),1),B1r=xt(No(),1),w1r=xt(No(),1);vl();import{spawn as cba}from"node:child_process";import{resolve as lba}from"node:path";var b1r=5*60*1e3,VQe=class extends Oii.BaseCommand{static paths=[["checks","typecheck"]];changed=sA.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(v1r.Filename.pnpCjs)&&t.includes(v1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await E1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await S1r.Project.find(t,this.context.cwd),n=await NTe.xfs.mktempPromise(),a=["checks","typecheck",...this.changed?["--changed"]:[]],{executable:o,env:l}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Mii.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await E1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await S1r.Project.find(t,this.context.cwd);return(await Pii.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new KM("TypeCheck");try{let{id:l}=await o.start();await a.startTimerPromise("TypeCheck",async()=>{try{let A=await this.getIncludes(r);if(this.changed&&A.length===0){a.reportInfo(ACt.MessageName.UNNAMED,"No TypeScript files changed"),await o.complete(l,{title:"Successful",summary:"No TypeScript files changed",annotations:[]});return}a.reportInfo(ACt.MessageName.UNNAMED,`TypeCheck targets: ${A.length}`);let f=await this.runTypecheck(r,A);f===0?await o.complete(l,{title:"Successful",summary:"All checks passed",annotations:[]}):(await o.failure({title:"TypeCheck run failed",summary:f===124?`TypeCheck timed out after ${b1r/1e3}s`:`TypeCheck failed with exit code ${f}`},l),a.reportError(ACt.MessageName.UNNAMED,f===124?`TypeCheck timed out after ${b1r/1e3}s`:`TypeCheck failed with exit code ${f}`))}catch(A){await o.failure({title:"TypeCheck run failed",summary:A instanceof Error?A.message:A},l)}})}catch(l){await o.failure({title:"TypeCheck start failed",summary:l instanceof Error?l.message:l})}})).exitCode()}async getIncludes(t){if(this.changed){let r=(await fP(t)).filter(a=>/\.(cts|mts|ts|tsx)$/.test(a)),n=await Promise.all(r.map(async a=>NTe.xfs.existsPromise(B1r.npath.toPortablePath(lba(t.cwd,a)))));return r.filter((a,o)=>n[o])}if(await NTe.xfs.existsPromise(w1r.ppath.join(t.cwd,"tsconfig.json"))){let r=await NTe.xfs.readJsonPromise(w1r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}async runTypecheck(t,r){let n=await NTe.xfs.mktempPromise(),{executable:a,env:o}=await BC({binFolder:n,project:t,env:{COMMAND_PROXY_EXECUTION:"true"}}),l;return new Promise((A,f)=>{let I=!1,C=cba(a,["typecheck",...r],{cwd:B1r.npath.fromPortablePath(t.cwd),env:o,stdio:["ignore","pipe","pipe"]});C.stdout.pipe(this.context.stdout,{end:!1}),C.stderr.pipe(this.context.stderr,{end:!1}),l=setTimeout(()=>{I=!0,C.kill("SIGTERM"),setTimeout(()=>{C.killed||C.kill("SIGKILL")},5e3).unref()},b1r),C.on("error",f),C.on("close",b=>{l&&clearTimeout(l),A(I?124:b??1)})})}};var Hii={commands:[ZQe,LQe,VQe,DQe,cCt,lCt]};var N1r={};Uf(N1r,{beforeWorkspacePacking:()=>R1r,default:()=>Yii});var R1r=(e,t)=>{t.name==="@atls/yarn-cli"&&(t.dependencies=new Proxy({},{set:()=>!0}))};var Yii={hooks:{beforeWorkspacePacking:R1r}};var ewr={};Uf(ewr,{default:()=>Ghi});var Wli=xt(sl(),1),Oli=xt(wn(),1),Pli=xt(wn(),1);var coi=xt(Uii(),1);var csi=xt(osi(),1);function asi(e){let t=[];return new Promise((r,n)=>e.on("data",a=>t.push(a.toString("utf-8"))).on("error",n).on("end",()=>r(t)))}async function lsi(e,t={}){return asi((0,csi.default)(e,{cwd:t.cwd}))}import xba from"path";import OQe from"node:path";import vba from"node:process";import Bba from"node:path";import zlu,{promises as usi}from"node:fs";import{fileURLToPath as wba}from"node:url";var D1r=class{value;next;constructor(t){this.value=t}},WQe=class{#e;#t;#n;constructor(){this.clear()}enqueue(t){let r=new D1r(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#n++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#n--,t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#n=0}get size(){return this.#n}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}};function pCt(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=new WQe,r=0,n=()=>{r--,t.size>0&&t.dequeue()()},a=async(A,f,I)=>{r++;let C=(async()=>A(...I))();f(C);try{await C}catch{}n()},o=(A,f,I)=>{t.enqueue(a.bind(void 0,A,f,I)),(async()=>(await Promise.resolve(),r0&&t.dequeue()()))()},l=(A,...f)=>new Promise(I=>{o(A,I,f)});return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),l}var fCt=class extends Error{constructor(t){super(),this.value=t}},Eba=async(e,t)=>t(await e),Sba=async e=>{let t=await Promise.all(e);if(t[1]===!0)throw new fCt(t[0]);return!1};async function k1r(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:n=!0}={}){let a=pCt(r),o=[...e].map(A=>[A,a(Eba,A,t)]),l=pCt(n?1:Number.POSITIVE_INFINITY);try{await Promise.all(o.map(A=>l(Sba,A)))}catch(A){if(A instanceof fCt)return A.value;throw A}}var gsi={directory:"isDirectory",file:"isFile"};function Tba(e){if(!Object.hasOwnProperty.call(gsi,e))throw new Error(`Invalid type specified: ${e}`)}var Rba=(e,t)=>t[gsi[e]](),Nba=e=>e instanceof URL?wba(e):e;async function x1r(e,{cwd:t=vba.cwd(),type:r="file",allowSymlinks:n=!0,concurrency:a,preserveOrder:o}={}){Tba(r),t=Nba(t);let l=n?usi.stat:usi.lstat;return k1r(e,async A=>{try{let f=await l(Bba.resolve(t,A));return Rba(r,f)}catch{return!1}},{concurrency:a,preserveOrder:o})}dIr();var Dba=Symbol("findUpStop");async function kba(e,t={}){let r=OQe.resolve(OMe(t.cwd)??""),{root:n}=OQe.parse(r),a=OQe.resolve(r,OMe(t.stopAt??n)),o=t.limit??Number.POSITIVE_INFINITY,l=[e].flat(),A=async I=>{if(typeof e!="function")return x1r(l,I);let C=await e(I.cwd);return typeof C=="string"?x1r([C],I):C},f=[];for(;;){let I=await A({...t,cwd:r});if(I===Dba||(I&&f.push(OQe.resolve(r,I)),r===a||f.length>=o))break;r=OQe.dirname(r)}return f}async function G1r(e,t={}){return(await kba(e,{...t,limit:1}))[0]}var Asi=Gba;async function Gba(e){let t=await Fba(e);return typeof t!="string"?t:xba.join(t,"..")}async function Fba(e){let t=await G1r(".git",{cwd:e,type:"file"}),r=await G1r(".git",{cwd:e,type:"directory"});return t||r}import Zba from"fs/promises";import ICt from"path";import dsi from"fs/promises";async function psi(e,t){if(typeof t=="string")return ICt.resolve(e,t);let r=ICt.join(e,".git");if((await dsi.lstat(r)).isDirectory())return ICt.join(e,".git/COMMIT_EDITMSG");let o=(await dsi.readFile(r,{encoding:"utf-8"})).replace("gitdir: ","").replace(` +`,"");return ICt.resolve(e,o,"COMMIT_EDITMSG")}async function fsi(e,t){let r=await Asi(e);if(typeof r!="string")throw new TypeError(`Could not find git root from ${e}`);let n=await psi(r,t);return[`${(await Zba.readFile(n)).toString("utf-8")} +`]}var ioi=xt(ilt(),1);import{Buffer as zEa}from"node:buffer";import qEa from"node:path";import s2r from"node:child_process";import DCt from"node:process";function F1r(e){let t=typeof e=="string"?` +`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}import mCt from"node:process";import PQe from"node:path";import{fileURLToPath as Isi}from"node:url";function hCt(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"}var Lba=({cwd:e=mCt.cwd(),path:t=mCt.env[hCt()],preferLocal:r=!0,execPath:n=mCt.execPath,addExecPath:a=!0}={})=>{let o=e instanceof URL?Isi(e):e,l=PQe.resolve(o),A=[];return r&&Vba(A,l),a&&Wba(A,n,l),[...A,t].join(PQe.delimiter)},Vba=(e,t)=>{let r;for(;r!==t;)e.push(PQe.join(t,"node_modules/.bin")),r=t,t=PQe.resolve(t,"..")},Wba=(e,t,r)=>{let n=t instanceof URL?Isi(t):t;e.push(PQe.resolve(r,n,".."))},hsi=({env:e=mCt.env,...t}={})=>{e={...e};let r=hCt({env:e});return t.path=e[r],e[r]=Lba(t),e};var Oba=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!Pba(a,o)&&n||Object.defineProperty(e,r,o)},Pba=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},Mba=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},Hba=(e,t)=>`/* Wrapped ${e}*/ +${t}`,Yba=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),Qba=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),Xba=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=Hba.bind(null,n,t.toString());Object.defineProperty(a,"name",Qba),Object.defineProperty(e,"toString",{...Yba,value:a})};function Z1r(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))Oba(e,t,a,r);return Mba(e,t),Xba(e,t,n),e}var CCt=new WeakMap,msi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(CCt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return Z1r(o,e),CCt.set(o,n),o};msi.callCount=e=>{if(!CCt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return CCt.get(e)};var Csi=msi;import rEa from"node:process";import{constants as jba}from"node:os";var _si=()=>{let e=bsi-ysi+1;return Array.from({length:e},Jba)},Jba=(e,t)=>({name:`SIGRT${t+1}`,number:ysi+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),ysi=34,bsi=64;import{constants as Uba}from"node:os";var Esi=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var L1r=()=>{let e=_si();return[...Esi,...e].map(Kba)},Kba=({name:e,number:t,description:r,action:n,forced:a=!1,standard:o})=>{let{signals:{[e]:l}}=Uba,A=l!==void 0;return{name:e,number:A?l:t,description:r,supported:A,action:n,forced:a,standard:o}};var zba=()=>{let e=L1r();return Object.fromEntries(e.map(qba))},qba=({name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l})=>[e,{name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l}],Ssi=zba(),$ba=()=>{let e=L1r(),t=65,r=Array.from({length:t},(n,a)=>eEa(a,e));return Object.assign({},...r)},eEa=(e,t)=>{let r=tEa(e,t);if(r===void 0)return{};let{name:n,description:a,supported:o,action:l,forced:A,standard:f}=r;return{[e]:{name:n,number:e,description:a,supported:o,action:l,forced:A,standard:f}}},tEa=(e,t)=>{let r=t.find(({name:n})=>jba.signals[n]===e);return r!==void 0?r:t.find(n=>n.number===e)},Vuu=$ba();var nEa=({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:a,exitCode:o,isCanceled:l})=>e?`timed out after ${t} milliseconds`:l?"was canceled":r!==void 0?`failed with ${r}`:n!==void 0?`was killed with ${n} (${a})`:o!==void 0?`failed with exit code ${o}`:"failed",MQe=({stdout:e,stderr:t,all:r,error:n,signal:a,exitCode:o,command:l,escapedCommand:A,timedOut:f,isCanceled:I,killed:C,parsed:{options:{timeout:b,cwd:E=rEa.cwd()}}})=>{o=o===null?void 0:o,a=a===null?void 0:a;let N=a===void 0?void 0:Ssi[a].description,B=n&&n.code,Q=`Command ${nEa({timedOut:f,timeout:b,errorCode:B,signal:a,signalDescription:N,exitCode:o,isCanceled:I})}: ${l}`,J=Object.prototype.toString.call(n)==="[object Error]",ae=J?`${Q} ${n.message}`:Q,ne=[ae,t,e].filter(Boolean).join(` -`);return J?(n.originalMessage=n.message,n.message=ne):n=new Error(ne),n.shortMessage=ae,n.command=l,n.escapedCommand=A,n.exitCode=o,n.signal=a,n.signalDescription=N,n.stdout=e,n.stderr=t,n.cwd=E,r!==void 0&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!f,n.isCanceled=I,n.killed=C&&!f,n};var bCt=["stdin","stdout","stderr"],$ba=e=>bCt.some(t=>e[t]!==void 0),psi=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return bCt.map(n=>e[n]);if($ba(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${bCt.map(n=>`\`${n}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,bCt.length);return Array.from({length:r},(n,a)=>t[a])};M1r();import rEa from"node:os";var nEa=1e3*5,Isi=(e,t="SIGTERM",r={})=>{let n=e(t);return iEa(e,t,r,n),n},iEa=(e,t,r,n)=>{if(!sEa(t,r,n))return;let a=aEa(r),o=setTimeout(()=>{e("SIGKILL")},a);o.unref&&o.unref()},sEa=(e,{forceKillAfterTimeout:t},r)=>oEa(e)&&t!==!1&&r,oEa=e=>e===rEa.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",aEa=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return nEa;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},hsi=(e,t)=>{e.kill()&&(t.isCanceled=!0)},cEa=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},msi=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{if(t===0||t===void 0)return n;let a,o=new Promise((A,f)=>{a=setTimeout(()=>{cEa(e,r,f)},t)}),l=n.finally(()=>{clearTimeout(a)});return Promise.race([o,l])},Csi=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},_si=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let a=vCt(()=>{e.kill()});return n.finally(()=>{a()})};import{createWriteStream as lEa}from"node:fs";import{ChildProcess as uEa}from"node:child_process";function BCt(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function H1r(e){return BCt(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var gEa=e=>e instanceof uEa&&typeof e.then=="function",Y1r=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(lEa(r)),e;if(H1r(r))return e[t].pipe(r),e;if(!gEa(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!H1r(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},ysi=e=>{e.stdout!==null&&(e.pipeStdout=Y1r.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=Y1r.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=Y1r.bind(void 0,e,"all"))};import{createReadStream as NEa,readFileSync as DEa}from"node:fs";import{setTimeout as kEa}from"node:timers/promises";var PQe=async(e,{init:t,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,finalize:A},{maxBuffer:f=Number.POSITIVE_INFINITY}={})=>{if(!dEa(e))throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");let I=t();I.length=0;try{for await(let C of e){let b=pEa(C),E=r[b](C,I);Ssi({convertedChunk:E,state:I,getSize:n,truncateChunk:a,addChunk:o,maxBuffer:f})}return AEa({state:I,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,maxBuffer:f}),A(I)}catch(C){throw C.bufferedData=A(I),C}},AEa=({state:e,getSize:t,truncateChunk:r,addChunk:n,getFinalChunk:a,maxBuffer:o})=>{let l=a(e);l!==void 0&&Ssi({convertedChunk:l,state:e,getSize:t,truncateChunk:r,addChunk:n,maxBuffer:o})},Ssi=({convertedChunk:e,state:t,getSize:r,truncateChunk:n,addChunk:a,maxBuffer:o})=>{let l=r(e),A=t.length+l;if(A<=o){bsi(e,t,a,A);return}let f=n(e,o-t.length);throw f!==void 0&&bsi(f,t,a,o),new wCt},bsi=(e,t,r,n)=>{t.contents=r(e,t,n),t.length=n},dEa=e=>typeof e=="object"&&e!==null&&typeof e[Symbol.asyncIterator]=="function",pEa=e=>{let t=typeof e;if(t==="string")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=Esi.call(e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.isInteger(e.byteOffset)&&Esi.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:Esi}=Object.prototype,wCt=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}};var Q1r=e=>e,X1r=()=>{},J1r=({contents:e})=>e,TCt=e=>{throw new Error(`Streams in object mode are not supported: ${String(e)}`)},RCt=e=>e.length;async function U1r(e,t){return PQe(e,EEa,t)}var fEa=()=>({contents:new ArrayBuffer(0)}),IEa=e=>hEa.encode(e),hEa=new TextEncoder,vsi=e=>new Uint8Array(e),Bsi=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),mEa=(e,t)=>e.slice(0,t),CEa=(e,{contents:t,length:r},n)=>{let a=Rsi()?yEa(t,n):_Ea(t,n);return new Uint8Array(a).set(e,r),a},_Ea=(e,t)=>{if(t<=e.byteLength)return e;let r=new ArrayBuffer(Tsi(t));return new Uint8Array(r).set(new Uint8Array(e),0),r},yEa=(e,t)=>{if(t<=e.maxByteLength)return e.resize(t),e;let r=new ArrayBuffer(t,{maxByteLength:Tsi(t)});return new Uint8Array(r).set(new Uint8Array(e),0),r},Tsi=e=>wsi**Math.ceil(Math.log(e)/Math.log(wsi)),wsi=2,bEa=({contents:e,length:t})=>Rsi()?e:e.slice(0,t),Rsi=()=>"resize"in ArrayBuffer.prototype,EEa={init:fEa,convertChunk:{string:IEa,buffer:vsi,arrayBuffer:vsi,dataView:Bsi,typedArray:Bsi,others:TCt},getSize:RCt,truncateChunk:mEa,addChunk:CEa,getFinalChunk:X1r,finalize:bEa};async function NCt(e,t){if(!("Buffer"in globalThis))throw new Error("getStreamAsBuffer() is only supported in Node.js");try{return Nsi(await U1r(e,t))}catch(r){throw r.bufferedData!==void 0&&(r.bufferedData=Nsi(r.bufferedData)),r}}var Nsi=e=>globalThis.Buffer.from(e);async function K1r(e,t){return PQe(e,TEa,t)}var SEa=()=>({contents:"",textDecoder:new TextDecoder}),DCt=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),vEa=(e,{contents:t})=>t+e,BEa=(e,t)=>e.slice(0,t),wEa=({textDecoder:e})=>{let t=e.decode();return t===""?void 0:t},TEa={init:SEa,convertChunk:{string:Q1r,buffer:DCt,arrayBuffer:DCt,dataView:DCt,typedArray:DCt,others:TCt},getSize:RCt,truncateChunk:BEa,addChunk:vEa,getFinalChunk:wEa,finalize:J1r};var xsi=Nt(ksi(),1),Gsi=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},xEa=({input:e,inputFile:t})=>typeof t!="string"?e:(Gsi(e),DEa(t)),Fsi=e=>{let t=xEa(e);if(BCt(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},GEa=({input:e,inputFile:t})=>typeof t!="string"?e:(Gsi(e),NEa(t)),Zsi=(e,t)=>{let r=GEa(t);r!==void 0&&(BCt(r)?r.pipe(e.stdin):e.stdin.end(r))},Lsi=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,xsi.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},j1r=async(e,t)=>{if(!(!e||t===void 0)){await kEa(0),e.destroy();try{return await t}catch(r){return r.bufferedData}}},z1r=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(!(!e||!r))return t==="utf8"||t==="utf-8"?K1r(e,{maxBuffer:n}):t===null||t==="buffer"?NCt(e,{maxBuffer:n}):FEa(e,n,t)},FEa=async(e,t,r)=>(await NCt(e,{maxBuffer:t})).toString(r),Vsi=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:a,maxBuffer:o},l)=>{let A=z1r(e,{encoding:n,buffer:a,maxBuffer:o}),f=z1r(t,{encoding:n,buffer:a,maxBuffer:o}),I=z1r(r,{encoding:n,buffer:a,maxBuffer:o*2});try{return await Promise.all([l,A,f,I])}catch(C){return Promise.all([{error:C,signal:C.signal,timedOut:C.timedOut},j1r(e,A),j1r(t,f),j1r(r,I)])}};var ZEa=(async()=>{})().constructor.prototype,LEa=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(ZEa,e)]),q1r=(e,t)=>{for(let[r,n]of LEa){let a=typeof t=="function"?(...o)=>Reflect.apply(n.value,t(),o):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:a})}},Wsi=e=>new Promise((t,r)=>{e.on("exit",(n,a)=>{t({exitCode:n,signal:a})}),e.on("error",n=>{r(n)}),e.stdin&&e.stdin.on("error",n=>{r(n)})});import{Buffer as VEa}from"node:buffer";import{ChildProcess as WEa}from"node:child_process";var Msi=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],OEa=/^[\w.-]+$/,PEa=e=>typeof e!="string"||OEa.test(e)?e:`"${e.replaceAll('"','\\"')}"`,$1r=(e,t)=>Msi(e,t).join(" "),e2r=(e,t)=>Msi(e,t).map(r=>PEa(r)).join(" "),Hsi=/ +/g,Ysi=e=>{let t=[];for(let r of e.trim().split(Hsi)){let n=t.at(-1);n&&n.endsWith("\\")?t[t.length-1]=`${n.slice(0,-1)} ${r}`:t.push(r)}return t},Osi=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof WEa)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(VEa.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},Psi=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e.at(-1)}${t[0]}`,...t.slice(1)],MEa=({templates:e,expressions:t,tokens:r,index:n,template:a})=>{let o=a??e.raw[n],l=o.split(Hsi).filter(Boolean),A=Psi(r,l,o.startsWith(" "));if(n===t.length)return A;let f=t[n],I=Array.isArray(f)?f.map(C=>Osi(C)):[Osi(f)];return Psi(A,I,o.endsWith(" "))},t2r=(e,t)=>{let r=[];for(let[n,a]of e.entries())r=MEa({templates:e,expressions:t,tokens:r,index:n,template:a});return r};import{debuglog as HEa}from"node:util";import YEa from"node:process";var Qsi=HEa("execa").enabled,kCt=(e,t)=>String(e).padStart(t,"0"),QEa=()=>{let e=new Date;return`${kCt(e.getHours(),2)}:${kCt(e.getMinutes(),2)}:${kCt(e.getSeconds(),2)}.${kCt(e.getMilliseconds(),3)}`},r2r=(e,{verbose:t})=>{t&&YEa.stderr.write(`[${QEa()}] ${e} -`)};var UEa=1e3*1e3*100,KEa=({env:e,extendEnv:t,preferLocal:r,localDir:n,execPath:a})=>{let o=t?{...xCt.env,...e}:e;return r?osi({env:o,cwd:n,execPath:a}):o},Usi=(e,t,r={})=>{let n=Jsi.default._parse(e,t,r);return e=n.command,t=n.args,r=n.options,r={maxBuffer:UEa,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||xCt.cwd(),execPath:xCt.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,verbose:Qsi,...r},r.env=KEa(r),r.stdio=psi(r),xCt.platform==="win32"&&JEa.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},MQe=(e,t,r)=>typeof t!="string"&&!XEa.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?x1r(t):t;function uee(e,t,r){let n=Usi(e,t,r),a=$1r(e,t),o=e2r(e,t);r2r(o,n.options),Csi(n.options);let l;try{l=n2r.spawn(n.file,n.args,n.options)}catch(N){let B=new n2r.ChildProcess,F=Promise.reject(OQe({error:N,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return q1r(B,F),B}let A=Wsi(l),f=msi(l,n.options,A),I=_si(l,n.options,f),C={isCanceled:!1};l.kill=Isi.bind(null,l.kill.bind(l)),l.cancel=hsi.bind(null,l,C);let E=csi(async()=>{let[{error:N,exitCode:B,signal:F,timedOut:Q},J,ae,ne]=await Vsi(l,n.options,I),ce=MQe(n.options,J),fe=MQe(n.options,ae),ue=MQe(n.options,ne);if(N||B!==0||F!==null){let de=OQe({error:N,exitCode:B,signal:F,stdout:ce,stderr:fe,all:ue,command:a,escapedCommand:o,parsed:n,timedOut:Q,isCanceled:C.isCanceled||(n.options.signal?n.options.signal.aborted:!1),killed:l.killed});if(!n.options.reject)return de;throw de}return{command:a,escapedCommand:o,exitCode:0,stdout:ce,stderr:fe,all:ue,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return Zsi(l,n.options),l.all=Lsi(l,n.options),ysi(l),q1r(l,E),l}function jEa(e,t,r){let n=Usi(e,t,r),a=$1r(e,t),o=e2r(e,t);r2r(o,n.options);let l=Fsi(n.options),A;try{A=n2r.spawnSync(n.file,n.args,{...n.options,input:l})}catch(C){throw OQe({error:C,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}let f=MQe(n.options,A.stdout,A.error),I=MQe(n.options,A.stderr,A.error);if(A.error||A.status!==0||A.signal!==null){let C=OQe({stdout:f,stderr:I,error:A.error,signal:A.signal,exitCode:A.status,command:a,escapedCommand:o,parsed:n,timedOut:A.error&&A.error.code==="ETIMEDOUT",isCanceled:!1,killed:A.signal!==null});if(!n.options.reject)return C;throw C}return{command:a,escapedCommand:o,exitCode:0,stdout:f,stderr:I,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}var zEa=({input:e,inputFile:t,stdio:r})=>e===void 0&&t===void 0&&r===void 0?{stdin:"inherit"}:{},Xsi=(e={})=>({preferLocal:!0,...zEa(e),...e});function Ksi(e){function t(r,...n){if(!Array.isArray(r))return Ksi({...e,...r});let[a,...o]=t2r(r,n);return uee(a,o,Xsi(e))}return t.sync=(r,...n)=>{if(!Array.isArray(r))throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");let[a,...o]=t2r(r,n);return jEa(a,o,Xsi(e))},t}var Huu=Ksi();function jsi(e,t){let[r,...n]=Ysi(e);return uee(r,n,t)}async function GCt(e){let{cwd:t,fromLastTag:r,to:n,last:a,edit:o,gitLogArgs:l}=e,A=e.from;if(o)return isi(t,o);if(a){let C=(await uee("git",["log","-1","--pretty=format:%B"],{cwd:t})).stdout;return C[0]=='"'&&C[C.length-1]=='"'&&(C=C.slice(1,-1)),[C]}if(!A&&r){let{stdout:I}=await uee("git",["describe","--abbrev=40","--always","--first-parent","--long","--tags"],{cwd:t});if(I.length===40)A=I;else{let C=I.lastIndexOf("-",I.length-43);A=I.slice(0,C)}}let f={from:A,to:n};return l&&(f={...(0,zsi.default)(l.split(" ")),from:A,to:n}),qii(f,{cwd:t})}var FCt;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(FCt||(FCt={}));var qsi;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(qsi||(qsi={}));var $si=(e=0)=>t=>`\x1B[${t+e}m`,eoi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,toi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,N2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[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],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},sgu=Object.keys(N2.modifier),qEa=Object.keys(N2.color),$Ea=Object.keys(N2.bgColor),ogu=[...qEa,...$Ea];function e1a(){let e=new Map;for(let[t,r]of Object.entries(N2)){for(let[n,a]of Object.entries(r))N2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=N2[n],e.set(a[0],a[1]);Object.defineProperty(N2,t,{value:r,enumerable:!1})}return Object.defineProperty(N2,"codes",{value:e,enumerable:!1}),N2.color.close="\x1B[39m",N2.bgColor.close="\x1B[49m",N2.color.ansi=$si(),N2.color.ansi256=eoi(),N2.color.ansi16m=toi(),N2.bgColor.ansi=$si(10),N2.bgColor.ansi256=eoi(10),N2.bgColor.ansi16m=toi(10),Object.defineProperties(N2,{rgbToAnsi256:{value(t,r,n){return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>N2.rgbToAnsi256(...N2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>N2.ansi256ToAnsi(N2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>N2.ansi256ToAnsi(N2.hexToAnsi256(t)),enumerable:!1}}),N2}var t1a=e1a(),qX=t1a;import i2r from"node:process";import r1a from"node:os";import roi from"node:tty";function KM(e,t=globalThis.Deno?globalThis.Deno.args:i2r.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function s1a(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=n1a();n!==void 0&&(ZCt=n);let a=r?ZCt:n;if(a===0)return 0;if(r){if(KM("color=16m")||KM("color=full")||KM("color=truecolor"))return 3;if(KM("color=256"))return 2}if("TF_BUILD"in ZS&&"AGENT_NAME"in ZS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(ZS.TERM==="dumb")return o;if(i2r.platform==="win32"){let l=r1a.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in ZS)return"GITHUB_ACTIONS"in ZS||"GITEA_ACTIONS"in ZS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in ZS)||ZS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in ZS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ZS.TEAMCITY_VERSION)?1:0;if(ZS.COLORTERM==="truecolor"||ZS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in ZS){let l=Number.parseInt((ZS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(ZS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(ZS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ZS.TERM)||"COLORTERM"in ZS?1:o}function noi(e,t={}){let r=s1a(e,{streamIsTTY:e&&e.isTTY,...t});return i1a(r)}var o1a={stdout:noi({isTTY:roi.isatty(1)}),stderr:noi({isTTY:roi.isatty(2)})},ioi=o1a;function soi(e,t,r){let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.slice(o,n)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.slice(o),l}function ooi(e,t,r,n){let a=0,o="";do{let l=e[n-1]==="\r";o+=e.slice(a,l?n-1:n)+t+(l?`\r +`);return J?(n.originalMessage=n.message,n.message=ne):n=new Error(ne),n.shortMessage=ae,n.command=l,n.escapedCommand=A,n.exitCode=o,n.signal=a,n.signalDescription=N,n.stdout=e,n.stderr=t,n.cwd=E,r!==void 0&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!f,n.isCanceled=I,n.killed=C&&!f,n};var _Ct=["stdin","stdout","stderr"],iEa=e=>_Ct.some(t=>e[t]!==void 0),vsi=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return _Ct.map(n=>e[n]);if(iEa(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${_Ct.map(n=>`\`${n}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,_Ct.length);return Array.from({length:r},(n,a)=>t[a])};Y1r();import aEa from"node:os";var cEa=1e3*5,wsi=(e,t="SIGTERM",r={})=>{let n=e(t);return lEa(e,t,r,n),n},lEa=(e,t,r,n)=>{if(!uEa(t,r,n))return;let a=AEa(r),o=setTimeout(()=>{e("SIGKILL")},a);o.unref&&o.unref()},uEa=(e,{forceKillAfterTimeout:t},r)=>gEa(e)&&t!==!1&&r,gEa=e=>e===aEa.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",AEa=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return cEa;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},Tsi=(e,t)=>{e.kill()&&(t.isCanceled=!0)},dEa=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},Rsi=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{if(t===0||t===void 0)return n;let a,o=new Promise((A,f)=>{a=setTimeout(()=>{dEa(e,r,f)},t)}),l=n.finally(()=>{clearTimeout(a)});return Promise.race([o,l])},Nsi=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},Dsi=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let a=ECt(()=>{e.kill()});return n.finally(()=>{a()})};import{createWriteStream as pEa}from"node:fs";import{ChildProcess as fEa}from"node:child_process";function SCt(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function Q1r(e){return SCt(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var IEa=e=>e instanceof fEa&&typeof e.then=="function",X1r=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(pEa(r)),e;if(Q1r(r))return e[t].pipe(r),e;if(!IEa(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!Q1r(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},ksi=e=>{e.stdout!==null&&(e.pipeStdout=X1r.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=X1r.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=X1r.bind(void 0,e,"all"))};import{createReadStream as FEa,readFileSync as ZEa}from"node:fs";import{setTimeout as LEa}from"node:timers/promises";var HQe=async(e,{init:t,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,finalize:A},{maxBuffer:f=Number.POSITIVE_INFINITY}={})=>{if(!mEa(e))throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");let I=t();I.length=0;try{for await(let C of e){let b=CEa(C),E=r[b](C,I);Fsi({convertedChunk:E,state:I,getSize:n,truncateChunk:a,addChunk:o,maxBuffer:f})}return hEa({state:I,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,maxBuffer:f}),A(I)}catch(C){throw C.bufferedData=A(I),C}},hEa=({state:e,getSize:t,truncateChunk:r,addChunk:n,getFinalChunk:a,maxBuffer:o})=>{let l=a(e);l!==void 0&&Fsi({convertedChunk:l,state:e,getSize:t,truncateChunk:r,addChunk:n,maxBuffer:o})},Fsi=({convertedChunk:e,state:t,getSize:r,truncateChunk:n,addChunk:a,maxBuffer:o})=>{let l=r(e),A=t.length+l;if(A<=o){xsi(e,t,a,A);return}let f=n(e,o-t.length);throw f!==void 0&&xsi(f,t,a,o),new vCt},xsi=(e,t,r,n)=>{t.contents=r(e,t,n),t.length=n},mEa=e=>typeof e=="object"&&e!==null&&typeof e[Symbol.asyncIterator]=="function",CEa=e=>{let t=typeof e;if(t==="string")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=Gsi.call(e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.isInteger(e.byteOffset)&&Gsi.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:Gsi}=Object.prototype,vCt=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}};var J1r=e=>e,U1r=()=>{},K1r=({contents:e})=>e,BCt=e=>{throw new Error(`Streams in object mode are not supported: ${String(e)}`)},wCt=e=>e.length;async function j1r(e,t){return HQe(e,TEa,t)}var _Ea=()=>({contents:new ArrayBuffer(0)}),yEa=e=>bEa.encode(e),bEa=new TextEncoder,Zsi=e=>new Uint8Array(e),Lsi=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),EEa=(e,t)=>e.slice(0,t),SEa=(e,{contents:t,length:r},n)=>{let a=Osi()?BEa(t,n):vEa(t,n);return new Uint8Array(a).set(e,r),a},vEa=(e,t)=>{if(t<=e.byteLength)return e;let r=new ArrayBuffer(Wsi(t));return new Uint8Array(r).set(new Uint8Array(e),0),r},BEa=(e,t)=>{if(t<=e.maxByteLength)return e.resize(t),e;let r=new ArrayBuffer(t,{maxByteLength:Wsi(t)});return new Uint8Array(r).set(new Uint8Array(e),0),r},Wsi=e=>Vsi**Math.ceil(Math.log(e)/Math.log(Vsi)),Vsi=2,wEa=({contents:e,length:t})=>Osi()?e:e.slice(0,t),Osi=()=>"resize"in ArrayBuffer.prototype,TEa={init:_Ea,convertChunk:{string:yEa,buffer:Zsi,arrayBuffer:Zsi,dataView:Lsi,typedArray:Lsi,others:BCt},getSize:wCt,truncateChunk:EEa,addChunk:SEa,getFinalChunk:U1r,finalize:wEa};async function TCt(e,t){if(!("Buffer"in globalThis))throw new Error("getStreamAsBuffer() is only supported in Node.js");try{return Psi(await j1r(e,t))}catch(r){throw r.bufferedData!==void 0&&(r.bufferedData=Psi(r.bufferedData)),r}}var Psi=e=>globalThis.Buffer.from(e);async function z1r(e,t){return HQe(e,xEa,t)}var REa=()=>({contents:"",textDecoder:new TextDecoder}),RCt=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),NEa=(e,{contents:t})=>t+e,DEa=(e,t)=>e.slice(0,t),kEa=({textDecoder:e})=>{let t=e.decode();return t===""?void 0:t},xEa={init:REa,convertChunk:{string:J1r,buffer:RCt,arrayBuffer:RCt,dataView:RCt,typedArray:RCt,others:BCt},getSize:wCt,truncateChunk:DEa,addChunk:NEa,getFinalChunk:kEa,finalize:K1r};var Ysi=xt(Hsi(),1),Qsi=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},VEa=({input:e,inputFile:t})=>typeof t!="string"?e:(Qsi(e),ZEa(t)),Xsi=e=>{let t=VEa(e);if(SCt(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},WEa=({input:e,inputFile:t})=>typeof t!="string"?e:(Qsi(e),FEa(t)),Jsi=(e,t)=>{let r=WEa(t);r!==void 0&&(SCt(r)?r.pipe(e.stdin):e.stdin.end(r))},Usi=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,Ysi.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},q1r=async(e,t)=>{if(!(!e||t===void 0)){await LEa(0),e.destroy();try{return await t}catch(r){return r.bufferedData}}},$1r=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(!(!e||!r))return t==="utf8"||t==="utf-8"?z1r(e,{maxBuffer:n}):t===null||t==="buffer"?TCt(e,{maxBuffer:n}):OEa(e,n,t)},OEa=async(e,t,r)=>(await TCt(e,{maxBuffer:t})).toString(r),Ksi=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:a,maxBuffer:o},l)=>{let A=$1r(e,{encoding:n,buffer:a,maxBuffer:o}),f=$1r(t,{encoding:n,buffer:a,maxBuffer:o}),I=$1r(r,{encoding:n,buffer:a,maxBuffer:o*2});try{return await Promise.all([l,A,f,I])}catch(C){return Promise.all([{error:C,signal:C.signal,timedOut:C.timedOut},q1r(e,A),q1r(t,f),q1r(r,I)])}};var PEa=(async()=>{})().constructor.prototype,MEa=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(PEa,e)]),e2r=(e,t)=>{for(let[r,n]of MEa){let a=typeof t=="function"?(...o)=>Reflect.apply(n.value,t(),o):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:a})}},jsi=e=>new Promise((t,r)=>{e.on("exit",(n,a)=>{t({exitCode:n,signal:a})}),e.on("error",n=>{r(n)}),e.stdin&&e.stdin.on("error",n=>{r(n)})});import{Buffer as HEa}from"node:buffer";import{ChildProcess as YEa}from"node:child_process";var $si=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],QEa=/^[\w.-]+$/,XEa=e=>typeof e!="string"||QEa.test(e)?e:`"${e.replaceAll('"','\\"')}"`,t2r=(e,t)=>$si(e,t).join(" "),r2r=(e,t)=>$si(e,t).map(r=>XEa(r)).join(" "),eoi=/ +/g,toi=e=>{let t=[];for(let r of e.trim().split(eoi)){let n=t.at(-1);n&&n.endsWith("\\")?t[t.length-1]=`${n.slice(0,-1)} ${r}`:t.push(r)}return t},zsi=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof YEa)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(HEa.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},qsi=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e.at(-1)}${t[0]}`,...t.slice(1)],JEa=({templates:e,expressions:t,tokens:r,index:n,template:a})=>{let o=a??e.raw[n],l=o.split(eoi).filter(Boolean),A=qsi(r,l,o.startsWith(" "));if(n===t.length)return A;let f=t[n],I=Array.isArray(f)?f.map(C=>zsi(C)):[zsi(f)];return qsi(A,I,o.endsWith(" "))},n2r=(e,t)=>{let r=[];for(let[n,a]of e.entries())r=JEa({templates:e,expressions:t,tokens:r,index:n,template:a});return r};import{debuglog as UEa}from"node:util";import KEa from"node:process";var roi=UEa("execa").enabled,NCt=(e,t)=>String(e).padStart(t,"0"),jEa=()=>{let e=new Date;return`${NCt(e.getHours(),2)}:${NCt(e.getMinutes(),2)}:${NCt(e.getSeconds(),2)}.${NCt(e.getMilliseconds(),3)}`},i2r=(e,{verbose:t})=>{t&&KEa.stderr.write(`[${jEa()}] ${e} +`)};var $Ea=1e3*1e3*100,e1a=({env:e,extendEnv:t,preferLocal:r,localDir:n,execPath:a})=>{let o=t?{...DCt.env,...e}:e;return r?hsi({env:o,cwd:n,execPath:a}):o},soi=(e,t,r={})=>{let n=ioi.default._parse(e,t,r);return e=n.command,t=n.args,r=n.options,r={maxBuffer:$Ea,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||DCt.cwd(),execPath:DCt.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,verbose:roi,...r},r.env=e1a(r),r.stdio=vsi(r),DCt.platform==="win32"&&qEa.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},YQe=(e,t,r)=>typeof t!="string"&&!zEa.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?F1r(t):t;function gee(e,t,r){let n=soi(e,t,r),a=t2r(e,t),o=r2r(e,t);i2r(o,n.options),Nsi(n.options);let l;try{l=s2r.spawn(n.file,n.args,n.options)}catch(N){let B=new s2r.ChildProcess,F=Promise.reject(MQe({error:N,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return e2r(B,F),B}let A=jsi(l),f=Rsi(l,n.options,A),I=Dsi(l,n.options,f),C={isCanceled:!1};l.kill=wsi.bind(null,l.kill.bind(l)),l.cancel=Tsi.bind(null,l,C);let E=Csi(async()=>{let[{error:N,exitCode:B,signal:F,timedOut:Q},J,ae,ne]=await Ksi(l,n.options,I),ce=YQe(n.options,J),fe=YQe(n.options,ae),ue=YQe(n.options,ne);if(N||B!==0||F!==null){let de=MQe({error:N,exitCode:B,signal:F,stdout:ce,stderr:fe,all:ue,command:a,escapedCommand:o,parsed:n,timedOut:Q,isCanceled:C.isCanceled||(n.options.signal?n.options.signal.aborted:!1),killed:l.killed});if(!n.options.reject)return de;throw de}return{command:a,escapedCommand:o,exitCode:0,stdout:ce,stderr:fe,all:ue,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return Jsi(l,n.options),l.all=Usi(l,n.options),ksi(l),e2r(l,E),l}function t1a(e,t,r){let n=soi(e,t,r),a=t2r(e,t),o=r2r(e,t);i2r(o,n.options);let l=Xsi(n.options),A;try{A=s2r.spawnSync(n.file,n.args,{...n.options,input:l})}catch(C){throw MQe({error:C,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}let f=YQe(n.options,A.stdout,A.error),I=YQe(n.options,A.stderr,A.error);if(A.error||A.status!==0||A.signal!==null){let C=MQe({stdout:f,stderr:I,error:A.error,signal:A.signal,exitCode:A.status,command:a,escapedCommand:o,parsed:n,timedOut:A.error&&A.error.code==="ETIMEDOUT",isCanceled:!1,killed:A.signal!==null});if(!n.options.reject)return C;throw C}return{command:a,escapedCommand:o,exitCode:0,stdout:f,stderr:I,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}var r1a=({input:e,inputFile:t,stdio:r})=>e===void 0&&t===void 0&&r===void 0?{stdin:"inherit"}:{},noi=(e={})=>({preferLocal:!0,...r1a(e),...e});function ooi(e){function t(r,...n){if(!Array.isArray(r))return ooi({...e,...r});let[a,...o]=n2r(r,n);return gee(a,o,noi(e))}return t.sync=(r,...n)=>{if(!Array.isArray(r))throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");let[a,...o]=n2r(r,n);return t1a(a,o,noi(e))},t}var qgu=ooi();function aoi(e,t){let[r,...n]=toi(e);return gee(r,n,t)}async function kCt(e){let{cwd:t,fromLastTag:r,to:n,last:a,edit:o,gitLogArgs:l}=e,A=e.from;if(o)return fsi(t,o);if(a){let C=(await gee("git",["log","-1","--pretty=format:%B"],{cwd:t})).stdout;return C[0]=='"'&&C[C.length-1]=='"'&&(C=C.slice(1,-1)),[C]}if(!A&&r){let{stdout:I}=await gee("git",["describe","--abbrev=40","--always","--first-parent","--long","--tags"],{cwd:t});if(I.length===40)A=I;else{let C=I.lastIndexOf("-",I.length-43);A=I.slice(0,C)}}let f={from:A,to:n};return l&&(f={...(0,coi.default)(l.split(" ")),from:A,to:n}),lsi(f,{cwd:t})}var xCt;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(xCt||(xCt={}));var loi;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(loi||(loi={}));var uoi=(e=0)=>t=>`\x1B[${t+e}m`,goi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,Aoi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,D2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[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],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},pAu=Object.keys(D2.modifier),n1a=Object.keys(D2.color),i1a=Object.keys(D2.bgColor),fAu=[...n1a,...i1a];function s1a(){let e=new Map;for(let[t,r]of Object.entries(D2)){for(let[n,a]of Object.entries(r))D2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=D2[n],e.set(a[0],a[1]);Object.defineProperty(D2,t,{value:r,enumerable:!1})}return Object.defineProperty(D2,"codes",{value:e,enumerable:!1}),D2.color.close="\x1B[39m",D2.bgColor.close="\x1B[49m",D2.color.ansi=uoi(),D2.color.ansi256=goi(),D2.color.ansi16m=Aoi(),D2.bgColor.ansi=uoi(10),D2.bgColor.ansi256=goi(10),D2.bgColor.ansi16m=Aoi(10),Object.defineProperties(D2,{rgbToAnsi256:{value(t,r,n){return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>D2.rgbToAnsi256(...D2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>D2.ansi256ToAnsi(D2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>D2.ansi256ToAnsi(D2.hexToAnsi256(t)),enumerable:!1}}),D2}var o1a=s1a(),$X=o1a;import o2r from"node:process";import a1a from"node:os";import doi from"node:tty";function jM(e,t=globalThis.Deno?globalThis.Deno.args:o2r.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function u1a(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=c1a();n!==void 0&&(GCt=n);let a=r?GCt:n;if(a===0)return 0;if(r){if(jM("color=16m")||jM("color=full")||jM("color=truecolor"))return 3;if(jM("color=256"))return 2}if("TF_BUILD"in LS&&"AGENT_NAME"in LS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(LS.TERM==="dumb")return o;if(o2r.platform==="win32"){let l=a1a.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in LS)return"GITHUB_ACTIONS"in LS||"GITEA_ACTIONS"in LS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in LS)||LS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in LS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(LS.TEAMCITY_VERSION)?1:0;if(LS.COLORTERM==="truecolor"||LS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in LS){let l=Number.parseInt((LS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(LS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(LS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(LS.TERM)||"COLORTERM"in LS?1:o}function poi(e,t={}){let r=u1a(e,{streamIsTTY:e&&e.isTTY,...t});return l1a(r)}var g1a={stdout:poi({isTTY:doi.isatty(1)}),stderr:poi({isTTY:doi.isatty(2)})},foi=g1a;function Ioi(e,t,r){let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.slice(o,n)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.slice(o),l}function hoi(e,t,r,n){let a=0,o="";do{let l=e[n-1]==="\r";o+=e.slice(a,l?n-1:n)+t+(l?`\r `:` `)+r,a=n+1,n=e.indexOf(` -`,a)}while(n!==-1);return o+=e.slice(a),o}var{stdout:aoi,stderr:coi}=ioi,s2r=Symbol("GENERATOR"),xTe=Symbol("STYLER"),HQe=Symbol("IS_EMPTY"),loi=["ansi","ansi","ansi256","ansi16m"],GTe=Object.create(null),a1a=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=aoi?aoi.level:0;e.level=t.level===void 0?r:t.level};var c1a=e=>{let t=(...r)=>r.join(" ");return a1a(t,e),Object.setPrototypeOf(t,YQe.prototype),t};function YQe(e){return c1a(e)}Object.setPrototypeOf(YQe.prototype,Function.prototype);for(let[e,t]of Object.entries(qX))GTe[e]={get(){let r=LCt(this,a2r(t.open,t.close,this[xTe]),this[HQe]);return Object.defineProperty(this,e,{value:r}),r}};GTe.visible={get(){let e=LCt(this,this[xTe],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var o2r=(e,t,r,...n)=>e==="rgb"?t==="ansi16m"?qX[r].ansi16m(...n):t==="ansi256"?qX[r].ansi256(qX.rgbToAnsi256(...n)):qX[r].ansi(qX.rgbToAnsi(...n)):e==="hex"?o2r("rgb",t,r,...qX.hexToRgb(...n)):qX[r][e](...n),l1a=["rgb","hex","ansi256"];for(let e of l1a){GTe[e]={get(){let{level:r}=this;return function(...n){let a=a2r(o2r(e,loi[r],"color",...n),qX.color.close,this[xTe]);return LCt(this,a,this[HQe])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);GTe[t]={get(){let{level:r}=this;return function(...n){let a=a2r(o2r(e,loi[r],"bgColor",...n),qX.bgColor.close,this[xTe]);return LCt(this,a,this[HQe])}}}}var u1a=Object.defineProperties(()=>{},{...GTe,level:{enumerable:!0,get(){return this[s2r].level},set(e){this[s2r].level=e}}}),a2r=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},LCt=(e,t,r)=>{let n=(...a)=>g1a(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,u1a),n[s2r]=e,n[xTe]=t,n[HQe]=r,n},g1a=(e,t)=>{if(e.level<=0||!t)return e[HQe]?"":t;let r=e[xTe];if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=soi(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=ooi(t,a,n,o)),n+t+a};Object.defineProperties(YQe.prototype,GTe);var A1a=YQe(),Igu=YQe({level:coi?coi.level:0});var hp=A1a;var d1a=[" ","\u26A0","\u2716"],p1a=["white","yellow","red"];function uoi(e={},t={}){let{results:r=[]}=e,n=o=>f1a(o,t),a=o=>I1a(o,t);return r.filter(o=>Array.isArray(o.warnings)||Array.isArray(o.errors)).map(o=>[...n(o),...a(o)]).reduce((o,l)=>Array.isArray(l)?[...o,...l]:[...o,l],[]).join(` -`)}function f1a(e,t={}){let{color:r=!0}=t,{errors:n=[],warnings:a=[],input:o=""}=e;if(!o)return[""];let l="\u29D7",A=r?hp.gray(l):l,f=r?hp.bold(o):o,I=n.length>0||a.length>0;return t.verbose||I?[`${A} input: ${f}`]:[]}function I1a(e={},t={}){let{signs:r=d1a,colors:n=p1a,color:a=!0}=t,{errors:o=[],warnings:l=[]}=e,A=[...o,...l].map(J=>{let ae=r[J.level]||"",ne=n[J.level]||"white",ce=a?hp[ne](ae):ae,fe=a?hp.grey(`[${J.name}]`):`[${J.name}]`;return`${ce} ${J.message} ${fe}`}),f=h1a(e),I=m1a(e),C=a?hp[I](f):f,b=o.length,E=l.length,N=A.length>0,B=t.verbose||N?`${C} found ${b} problems, ${E} warnings`:void 0,F=a&&typeof B=="string"?hp.bold(B):B,Q=N&&t.helpUrl?`\u24D8 Get help: ${t.helpUrl}`:void 0;return[...A,N?"":void 0,F,Q,N?"":void 0].filter(J=>typeof J=="string")}function h1a(e){return(e.errors||[]).length>0?"\u2716":(e.warnings||[]).length?"\u26A0":"\u2714"}function m1a(e){return(e.errors||[]).length>0?"red":(e.warnings||[]).length?"yellow":"green"}import OTe from"util";var goi=Nt(jC(),1),C1a=e=>{let t=e.split(` -`).shift();if(typeof t!="string")return!1;let r=t.replace(/^chore(\([^)]+\))?:/,"").trim();return goi.default.valid(r)!==null},Fae=e=>e.test.bind(e),Aoi=[Fae(/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m),Fae(/^(Merge tag (.*?))(?:\r?\n)*$/m),Fae(/^(R|r)evert (.*)/),Fae(/^(amend|fixup|squash)!/),C1a,Fae(/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/),Fae(/^Merge remote-tracking branch(\s*)(.*)/),Fae(/^Automatic merge(.*)/),Fae(/^Auto-merged (.*?) into (.*)/)];function VCt(e="",t={}){let r=typeof t.ignores>"u"?[]:t.ignores;if(!Array.isArray(r))throw new Error(`ignores must be of type array, received ${r} of type ${typeof r}`);let n=r.filter(o=>typeof o!="function");if(n.length>0)throw new Error(`ignores must be array of type function, received items of type: ${n.map(o=>typeof o).join(", ")}`);return[...t.defaults===!1?[]:Aoi,...r].some(o=>o(e))}var xoi=Nt(boi(),1),Goi=Nt(koi(),1);async function H1a(e,t=xoi.sync,r){let o={...(await(0,Goi.default)()).parserOpts,fieldPattern:null,...r||{}},l=t(e,o);return l.raw=e,l}var Foi=H1a;var S2r=Nt(oai(),1),Wci=Nt(Rai(),1),Oci=Nt(qai(),1),v2r=Nt(dci(),1),Pci=Nt(Vci(),1);function QCt(e,t){switch(t){case"camel-case":return(0,S2r.default)(e);case"kebab-case":return(0,Wci.default)(e);case"snake-case":return(0,Oci.default)(e);case"pascal-case":return(0,v2r.default)((0,S2r.default)(e));case"start-case":return(0,Pci.default)(e);case"upper-case":case"uppercase":return e.toUpperCase();case"sentence-case":case"sentencecase":return(0,v2r.default)(e);case"lower-case":case"lowercase":case"lowerCase":return e.toLowerCase();default:throw new TypeError(`to-case: Unknown target case "${t}"`)}}var $X=GBa;function GBa(e="",t="lowercase"){let r=String(e).replace(/`.*?`|".*?"|'.*?'/g,"").trim(),n=QCt(r,t);return n===""||n.match(/^\d/)?!0:n===r}var QQe=(e,t=[])=>e===void 0||!Array.isArray(t)?!1:t.indexOf(e)>-1;var KZ=(e,t)=>typeof e=="string"&&e.length<=t;var XQe=(e,t)=>typeof e=="string"&&e.split(/\r?\n/).every(r=>KZ(r,t));var pP=(e,t)=>typeof e=="string"&&e.length>=t;var e4=e=>typeof e=="string"&&e.length>0;function jf(e=[]){return e.filter(Boolean).join(" ")}var B2r=e=>e==="never",Mci=(e,t="always",r=[])=>{let{body:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=$X(n,A.case);return B2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[B2r(t)?!o:o,jf(["body must",B2r(t)?"not":null,`be ${l}`])]};var Hci=(e,t="always")=>{let r=t==="never",n=e4(e.body||"");return[r?n:!n,jf(["body",r?"may not":"must","be empty"])]};var Yci=(e,t="always",r=".")=>{let n=e.body;if(!n)return[!0];let a=t==="never",o=n[n.length-1]===r;return[a?!o:o,jf(["body",a?"may not":"must","end with full stop"])]};function q8(e){return typeof e!="string"?[]:e.split(/(?:\r?\n)/)}var Qci=(e,t)=>{if(!e.body)return[!0];let r=t==="never",[n]=q8(e.raw).slice(1),a=n==="";return[r?!a:a,jf(["body",r?"may not":"must","have leading blank line"])]};var Xci=(e,t=void 0,r=0)=>{let n=e.body;return n?[KZ(n,r),`body must not be longer than ${r} characters`]:[!0]};var Jci=(e,t=void 0,r=0)=>{let n=e.body;return n?[XQe(n,r),`body's lines must not be longer than ${r} characters`]:[!0]};var Uci=(e,t=void 0,r=0)=>e.body?[pP(e.body,r),`body must not be shorter than ${r} characters`]:[!0];var Kci=(e,t="always")=>{let r=t==="never",n=e4(e.footer||"");return[r?n:!n,jf(["footer",r?"may not":"must","be empty"])]};var jci=(e,t="always")=>{if(!e.footer)return[!0];let r=t==="never",n=q8(e.raw),a=q8(e.footer),o=n.indexOf(a[0]),[l]=n.slice(o-1),A=l==="";return[r?!A:A,jf(["footer",r?"may not":"must","have leading blank line"])]};var zci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[KZ(n,r),`footer must not be longer than ${r} characters`]:[!0]};var qci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[XQe(n,r),`footer's lines must not be longer than ${r} characters`]:[!0]};var $ci=(e,t=void 0,r=0)=>e.footer?[pP(e.footer,r),`footer must not be shorter than ${r} characters`]:[!0];var w2r=e=>e==="never",eli=(e,t="always",r=[])=>{let{header:n}=e;if(typeof n!="string"||!n.match(/^[a-z]/i))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=$X(n,A.case);return w2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[w2r(t)?!o:o,jf(["header must",w2r(t)?"not":null,`be ${l}`])]};var tli=(e,t="always",r=".")=>{let{header:n}=e,a=t==="never",o=n?.[n.length-1]===r;return[a?!o:o,jf(["header",a?"may not":"must","end with full stop"])]};var rli=(e,t=void 0,r=0)=>[KZ(e.header,r),`header must not be longer than ${r} characters, current length is ${e.header?.length}`];var nli=(e,t=void 0,r=0)=>[pP(e.header,r),`header must not be shorter than ${r} characters, current length is ${e.header?.length}`];var ili=e=>{let{header:t}=e;if(!t)return[!0];let r=t!==t.trimStart(),n=t!==t.trimEnd();switch(!0){case(r&&n):return[!1,jf(["header","must not be surrounded by whitespace"])];case r:return[!1,jf(["header","must not start with whitespace"])];case n:return[!1,jf(["header","must not end with whitespace"])];default:return[!0]}};var sli=(e,t="never")=>{let r=t==="always",n=e.references.length>0;return[r?!n:n,jf(["references",r?"must":"may not","be empty"])]};var T2r=e=>e==="never",oli=(e,t="always",r=[])=>{let{scope:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(I=>typeof I=="string"?{when:"always",case:I}:I),o=/\/|\\|, ?/g,l=n.split(o),A=a.some(I=>{let C=l.every(b=>o.test(b)||$X(b,I.case));return T2r(I.when)?!C:C}),f=a.map(I=>I.case).join(", ");return[T2r(t)?!A:A,jf(["scope must",T2r(t)?"not":null,`be ${f}`])]};var ali=(e,t="never")=>{let r=t==="always",n=e4(e.scope||"");return[r?!n:n,jf(["scope",r?"must":"may not","be empty"])]};var cli=({scope:e},t="always",r=[])=>{if(!e||!r.length)return[!0,""];let n=/\/|\\|, ?/g,a=e.split(n),o=["scope must",`be one of [${r.join(", ")}]`],l=f=>QQe(f,r),A;return t==="never"?(A=!a.some(l),o.splice(1,0,"not")):A=a.every(l),[A,jf(o)]};var lli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[KZ(n,r),`scope must not be longer than ${r} characters`]:[!0]};var uli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[pP(n,r),`scope must not be shorter than ${r} characters`]:[!0]};var gli=(e,t="always",r="")=>{let n=q8(e.raw).filter(A=>!A.startsWith("#")&&!!A),a=n[n.length-1],o=t==="never",l=a?a.startsWith(r):!1;return[o?!l:l,jf(["message",o?"must not":"must","be signed off"])]};var FBa=/^[\p{Ll}\p{Lu}\p{Lt}]/iu,R2r=e=>e==="never",Ali=(e,t="always",r=[])=>{let{subject:n}=e;if(typeof n!="string"||!n.match(FBa))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=$X(n,A.case);return R2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[R2r(t)?!o:o,jf(["subject must",R2r(t)?"not":null,`be ${l}`])]};var dli=(e,t="always")=>{let r=t==="never",n=e4(e.subject||"");return[r?n:!n,jf(["subject",r?"may not":"must","be empty"])]};var pli=(e,t="always",r=".")=>{let n=e.header?.indexOf(":")||0;if(n>0&&n===e.header.length-1)return[!0];let a=e.header,o=t==="never",l=a?.[a.length-1]===r;return a?.slice(-3)==="..."&&(l=!1),[o?!l:l,jf(["subject",o?"may not":"must","end with full stop"])]};var fli=(e,t=void 0,r=0)=>{let n=e.subject;return n?[KZ(n,r),`subject must not be longer than ${r} characters`]:[!0]};var Ili=(e,t=void 0,r=0)=>{let n=e.subject;return n?[pP(n,r),`subject must not be shorter than ${r} characters`]:[!0]};var hli=(e,t="always")=>{let r=e.header;if(!r)return[!0,""];let n=t==="never",a=/!:/.test(r);return[n?!a:a,jf(["subject",n?"must not":"must","have an exclamation mark in the subject to identify a breaking change"])]};import{spawnSync as ZBa}from"child_process";var mli=(e,t="always",r="")=>{let n=ZBa("git",["interpret-trailers","--parse"],{input:e.raw||""}).stdout,a=q8(n.toString()).filter(A=>A.startsWith(r)).length,o=t==="never",l=a>0;return[o?!l:l,jf(["message",o?"must not":"must","have `"+r+"` trailer"])]};var N2r=e=>e==="never",Cli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=$X(n,A.case);return N2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[N2r(t)?!o:o,jf(["type must",N2r(t)?"not":null,`be ${l}`])]};var _li=(e,t="always")=>{let r=t==="never",n=e4(e.type||"");return[r?n:!n,jf(["type",r?"may not":"must","be empty"])]};var yli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=t==="never",o=QQe(n,r);return[a?!o:o,jf(["type must",a?"not":null,`be one of [${r.join(", ")}]`])]};var bli=(e,t=void 0,r=0)=>{let n=e.type;return n?[KZ(n,r),`type must not be longer than ${r} characters`]:[!0]};var Eli=(e,t=void 0,r=0)=>{let n=e.type;return n?[pP(n,r),`type must not be shorter than ${r} characters`]:[!0]};var Sli={"body-case":Mci,"body-empty":Hci,"body-full-stop":Yci,"body-leading-blank":Qci,"body-max-length":Xci,"body-max-line-length":Jci,"body-min-length":Uci,"footer-empty":Kci,"footer-leading-blank":jci,"footer-max-length":zci,"footer-max-line-length":qci,"footer-min-length":$ci,"header-case":eli,"header-full-stop":tli,"header-max-length":rli,"header-min-length":nli,"header-trim":ili,"references-empty":sli,"scope-case":oli,"scope-empty":ali,"scope-enum":cli,"scope-max-length":lli,"scope-min-length":uli,"signed-off-by":gli,"subject-case":Ali,"subject-empty":dli,"subject-full-stop":pli,"subject-max-length":fli,"subject-min-length":Ili,"subject-exclamation-mark":hli,"trailer-exists":mli,"type-case":Cli,"type-empty":_li,"type-enum":yli,"type-max-length":bli,"type-min-length":Eli};var WTe;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(WTe||(WTe={}));var vli;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(vli||(vli={}));var Bli=({header:e,body:t,footer:r})=>{let n=e;return n=t?`${n} +`,a)}while(n!==-1);return o+=e.slice(a),o}var{stdout:moi,stderr:Coi}=foi,a2r=Symbol("GENERATOR"),DTe=Symbol("STYLER"),QQe=Symbol("IS_EMPTY"),_oi=["ansi","ansi","ansi256","ansi16m"],kTe=Object.create(null),A1a=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=moi?moi.level:0;e.level=t.level===void 0?r:t.level};var d1a=e=>{let t=(...r)=>r.join(" ");return A1a(t,e),Object.setPrototypeOf(t,XQe.prototype),t};function XQe(e){return d1a(e)}Object.setPrototypeOf(XQe.prototype,Function.prototype);for(let[e,t]of Object.entries($X))kTe[e]={get(){let r=FCt(this,l2r(t.open,t.close,this[DTe]),this[QQe]);return Object.defineProperty(this,e,{value:r}),r}};kTe.visible={get(){let e=FCt(this,this[DTe],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var c2r=(e,t,r,...n)=>e==="rgb"?t==="ansi16m"?$X[r].ansi16m(...n):t==="ansi256"?$X[r].ansi256($X.rgbToAnsi256(...n)):$X[r].ansi($X.rgbToAnsi(...n)):e==="hex"?c2r("rgb",t,r,...$X.hexToRgb(...n)):$X[r][e](...n),p1a=["rgb","hex","ansi256"];for(let e of p1a){kTe[e]={get(){let{level:r}=this;return function(...n){let a=l2r(c2r(e,_oi[r],"color",...n),$X.color.close,this[DTe]);return FCt(this,a,this[QQe])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);kTe[t]={get(){let{level:r}=this;return function(...n){let a=l2r(c2r(e,_oi[r],"bgColor",...n),$X.bgColor.close,this[DTe]);return FCt(this,a,this[QQe])}}}}var f1a=Object.defineProperties(()=>{},{...kTe,level:{enumerable:!0,get(){return this[a2r].level},set(e){this[a2r].level=e}}}),l2r=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},FCt=(e,t,r)=>{let n=(...a)=>I1a(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,f1a),n[a2r]=e,n[DTe]=t,n[QQe]=r,n},I1a=(e,t)=>{if(e.level<=0||!t)return e[QQe]?"":t;let r=e[DTe];if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=Ioi(t,r.close,r.open),r=r.parent;let o=t.indexOf(` +`);return o!==-1&&(t=hoi(t,a,n,o)),n+t+a};Object.defineProperties(XQe.prototype,kTe);var h1a=XQe(),vAu=XQe({level:Coi?Coi.level:0});var hp=h1a;var m1a=[" ","\u26A0","\u2716"],C1a=["white","yellow","red"];function yoi(e={},t={}){let{results:r=[]}=e,n=o=>_1a(o,t),a=o=>y1a(o,t);return r.filter(o=>Array.isArray(o.warnings)||Array.isArray(o.errors)).map(o=>[...n(o),...a(o)]).reduce((o,l)=>Array.isArray(l)?[...o,...l]:[...o,l],[]).join(` +`)}function _1a(e,t={}){let{color:r=!0}=t,{errors:n=[],warnings:a=[],input:o=""}=e;if(!o)return[""];let l="\u29D7",A=r?hp.gray(l):l,f=r?hp.bold(o):o,I=n.length>0||a.length>0;return t.verbose||I?[`${A} input: ${f}`]:[]}function y1a(e={},t={}){let{signs:r=m1a,colors:n=C1a,color:a=!0}=t,{errors:o=[],warnings:l=[]}=e,A=[...o,...l].map(J=>{let ae=r[J.level]||"",ne=n[J.level]||"white",ce=a?hp[ne](ae):ae,fe=a?hp.grey(`[${J.name}]`):`[${J.name}]`;return`${ce} ${J.message} ${fe}`}),f=b1a(e),I=E1a(e),C=a?hp[I](f):f,b=o.length,E=l.length,N=A.length>0,B=t.verbose||N?`${C} found ${b} problems, ${E} warnings`:void 0,F=a&&typeof B=="string"?hp.bold(B):B,Q=N&&t.helpUrl?`\u24D8 Get help: ${t.helpUrl}`:void 0;return[...A,N?"":void 0,F,Q,N?"":void 0].filter(J=>typeof J=="string")}function b1a(e){return(e.errors||[]).length>0?"\u2716":(e.warnings||[]).length?"\u26A0":"\u2714"}function E1a(e){return(e.errors||[]).length>0?"red":(e.warnings||[]).length?"yellow":"green"}import VTe from"util";var boi=xt(zC(),1),S1a=e=>{let t=e.split(` +`).shift();if(typeof t!="string")return!1;let r=t.replace(/^chore(\([^)]+\))?:/,"").trim();return boi.default.valid(r)!==null},Zae=e=>e.test.bind(e),Eoi=[Zae(/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m),Zae(/^(Merge tag (.*?))(?:\r?\n)*$/m),Zae(/^(R|r)evert (.*)/),Zae(/^(amend|fixup|squash)!/),S1a,Zae(/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/),Zae(/^Merge remote-tracking branch(\s*)(.*)/),Zae(/^Automatic merge(.*)/),Zae(/^Auto-merged (.*?) into (.*)/)];function ZCt(e="",t={}){let r=typeof t.ignores>"u"?[]:t.ignores;if(!Array.isArray(r))throw new Error(`ignores must be of type array, received ${r} of type ${typeof r}`);let n=r.filter(o=>typeof o!="function");if(n.length>0)throw new Error(`ignores must be array of type function, received items of type: ${n.map(o=>typeof o).join(", ")}`);return[...t.defaults===!1?[]:Eoi,...r].some(o=>o(e))}var Yoi=xt(xoi(),1),Qoi=xt(Hoi(),1);async function U1a(e,t=Yoi.sync,r){let o={...(await(0,Qoi.default)()).parserOpts,fieldPattern:null,...r||{}},l=t(e,o);return l.raw=e,l}var Xoi=U1a;var B2r=xt(hai(),1),jci=xt(Oai(),1),zci=xt(lci(),1),w2r=xt(Sci(),1),qci=xt(Kci(),1);function HCt(e,t){switch(t){case"camel-case":return(0,B2r.default)(e);case"kebab-case":return(0,jci.default)(e);case"snake-case":return(0,zci.default)(e);case"pascal-case":return(0,w2r.default)((0,B2r.default)(e));case"start-case":return(0,qci.default)(e);case"upper-case":case"uppercase":return e.toUpperCase();case"sentence-case":case"sentencecase":return(0,w2r.default)(e);case"lower-case":case"lowercase":case"lowerCase":return e.toLowerCase();default:throw new TypeError(`to-case: Unknown target case "${t}"`)}}var e4=WBa;function WBa(e="",t="lowercase"){let r=String(e).replace(/`.*?`|".*?"|'.*?'/g,"").trim(),n=HCt(r,t);return n===""||n.match(/^\d/)?!0:n===r}var JQe=(e,t=[])=>e===void 0||!Array.isArray(t)?!1:t.indexOf(e)>-1;var jZ=(e,t)=>typeof e=="string"&&e.length<=t;var UQe=(e,t)=>typeof e=="string"&&e.split(/\r?\n/).every(r=>jZ(r,t));var IP=(e,t)=>typeof e=="string"&&e.length>=t;var t4=e=>typeof e=="string"&&e.length>0;function jf(e=[]){return e.filter(Boolean).join(" ")}var T2r=e=>e==="never",$ci=(e,t="always",r=[])=>{let{body:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=e4(n,A.case);return T2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[T2r(t)?!o:o,jf(["body must",T2r(t)?"not":null,`be ${l}`])]};var eli=(e,t="always")=>{let r=t==="never",n=t4(e.body||"");return[r?n:!n,jf(["body",r?"may not":"must","be empty"])]};var tli=(e,t="always",r=".")=>{let n=e.body;if(!n)return[!0];let a=t==="never",o=n[n.length-1]===r;return[a?!o:o,jf(["body",a?"may not":"must","end with full stop"])]};function $8(e){return typeof e!="string"?[]:e.split(/(?:\r?\n)/)}var rli=(e,t)=>{if(!e.body)return[!0];let r=t==="never",[n]=$8(e.raw).slice(1),a=n==="";return[r?!a:a,jf(["body",r?"may not":"must","have leading blank line"])]};var nli=(e,t=void 0,r=0)=>{let n=e.body;return n?[jZ(n,r),`body must not be longer than ${r} characters`]:[!0]};var ili=(e,t=void 0,r=0)=>{let n=e.body;return n?[UQe(n,r),`body's lines must not be longer than ${r} characters`]:[!0]};var sli=(e,t=void 0,r=0)=>e.body?[IP(e.body,r),`body must not be shorter than ${r} characters`]:[!0];var oli=(e,t="always")=>{let r=t==="never",n=t4(e.footer||"");return[r?n:!n,jf(["footer",r?"may not":"must","be empty"])]};var ali=(e,t="always")=>{if(!e.footer)return[!0];let r=t==="never",n=$8(e.raw),a=$8(e.footer),o=n.indexOf(a[0]),[l]=n.slice(o-1),A=l==="";return[r?!A:A,jf(["footer",r?"may not":"must","have leading blank line"])]};var cli=(e,t=void 0,r=0)=>{let n=e.footer;return n?[jZ(n,r),`footer must not be longer than ${r} characters`]:[!0]};var lli=(e,t=void 0,r=0)=>{let n=e.footer;return n?[UQe(n,r),`footer's lines must not be longer than ${r} characters`]:[!0]};var uli=(e,t=void 0,r=0)=>e.footer?[IP(e.footer,r),`footer must not be shorter than ${r} characters`]:[!0];var R2r=e=>e==="never",gli=(e,t="always",r=[])=>{let{header:n}=e;if(typeof n!="string"||!n.match(/^[a-z]/i))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=e4(n,A.case);return R2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[R2r(t)?!o:o,jf(["header must",R2r(t)?"not":null,`be ${l}`])]};var Ali=(e,t="always",r=".")=>{let{header:n}=e,a=t==="never",o=n?.[n.length-1]===r;return[a?!o:o,jf(["header",a?"may not":"must","end with full stop"])]};var dli=(e,t=void 0,r=0)=>[jZ(e.header,r),`header must not be longer than ${r} characters, current length is ${e.header?.length}`];var pli=(e,t=void 0,r=0)=>[IP(e.header,r),`header must not be shorter than ${r} characters, current length is ${e.header?.length}`];var fli=e=>{let{header:t}=e;if(!t)return[!0];let r=t!==t.trimStart(),n=t!==t.trimEnd();switch(!0){case(r&&n):return[!1,jf(["header","must not be surrounded by whitespace"])];case r:return[!1,jf(["header","must not start with whitespace"])];case n:return[!1,jf(["header","must not end with whitespace"])];default:return[!0]}};var Ili=(e,t="never")=>{let r=t==="always",n=e.references.length>0;return[r?!n:n,jf(["references",r?"must":"may not","be empty"])]};var N2r=e=>e==="never",hli=(e,t="always",r=[])=>{let{scope:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(I=>typeof I=="string"?{when:"always",case:I}:I),o=/\/|\\|, ?/g,l=n.split(o),A=a.some(I=>{let C=l.every(b=>o.test(b)||e4(b,I.case));return N2r(I.when)?!C:C}),f=a.map(I=>I.case).join(", ");return[N2r(t)?!A:A,jf(["scope must",N2r(t)?"not":null,`be ${f}`])]};var mli=(e,t="never")=>{let r=t==="always",n=t4(e.scope||"");return[r?!n:n,jf(["scope",r?"must":"may not","be empty"])]};var Cli=({scope:e},t="always",r=[])=>{if(!e||!r.length)return[!0,""];let n=/\/|\\|, ?/g,a=e.split(n),o=["scope must",`be one of [${r.join(", ")}]`],l=f=>JQe(f,r),A;return t==="never"?(A=!a.some(l),o.splice(1,0,"not")):A=a.every(l),[A,jf(o)]};var _li=(e,t=void 0,r=0)=>{let n=e.scope;return n?[jZ(n,r),`scope must not be longer than ${r} characters`]:[!0]};var yli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[IP(n,r),`scope must not be shorter than ${r} characters`]:[!0]};var bli=(e,t="always",r="")=>{let n=$8(e.raw).filter(A=>!A.startsWith("#")&&!!A),a=n[n.length-1],o=t==="never",l=a?a.startsWith(r):!1;return[o?!l:l,jf(["message",o?"must not":"must","be signed off"])]};var OBa=/^[\p{Ll}\p{Lu}\p{Lt}]/iu,D2r=e=>e==="never",Eli=(e,t="always",r=[])=>{let{subject:n}=e;if(typeof n!="string"||!n.match(OBa))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=e4(n,A.case);return D2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[D2r(t)?!o:o,jf(["subject must",D2r(t)?"not":null,`be ${l}`])]};var Sli=(e,t="always")=>{let r=t==="never",n=t4(e.subject||"");return[r?n:!n,jf(["subject",r?"may not":"must","be empty"])]};var vli=(e,t="always",r=".")=>{let n=e.header?.indexOf(":")||0;if(n>0&&n===e.header.length-1)return[!0];let a=e.header,o=t==="never",l=a?.[a.length-1]===r;return a?.slice(-3)==="..."&&(l=!1),[o?!l:l,jf(["subject",o?"may not":"must","end with full stop"])]};var Bli=(e,t=void 0,r=0)=>{let n=e.subject;return n?[jZ(n,r),`subject must not be longer than ${r} characters`]:[!0]};var wli=(e,t=void 0,r=0)=>{let n=e.subject;return n?[IP(n,r),`subject must not be shorter than ${r} characters`]:[!0]};var Tli=(e,t="always")=>{let r=e.header;if(!r)return[!0,""];let n=t==="never",a=/!:/.test(r);return[n?!a:a,jf(["subject",n?"must not":"must","have an exclamation mark in the subject to identify a breaking change"])]};import{spawnSync as PBa}from"child_process";var Rli=(e,t="always",r="")=>{let n=PBa("git",["interpret-trailers","--parse"],{input:e.raw||""}).stdout,a=$8(n.toString()).filter(A=>A.startsWith(r)).length,o=t==="never",l=a>0;return[o?!l:l,jf(["message",o?"must not":"must","have `"+r+"` trailer"])]};var k2r=e=>e==="never",Nli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=e4(n,A.case);return k2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[k2r(t)?!o:o,jf(["type must",k2r(t)?"not":null,`be ${l}`])]};var Dli=(e,t="always")=>{let r=t==="never",n=t4(e.type||"");return[r?n:!n,jf(["type",r?"may not":"must","be empty"])]};var kli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=t==="never",o=JQe(n,r);return[a?!o:o,jf(["type must",a?"not":null,`be one of [${r.join(", ")}]`])]};var xli=(e,t=void 0,r=0)=>{let n=e.type;return n?[jZ(n,r),`type must not be longer than ${r} characters`]:[!0]};var Gli=(e,t=void 0,r=0)=>{let n=e.type;return n?[IP(n,r),`type must not be shorter than ${r} characters`]:[!0]};var Fli={"body-case":$ci,"body-empty":eli,"body-full-stop":tli,"body-leading-blank":rli,"body-max-length":nli,"body-max-line-length":ili,"body-min-length":sli,"footer-empty":oli,"footer-leading-blank":ali,"footer-max-length":cli,"footer-max-line-length":lli,"footer-min-length":uli,"header-case":gli,"header-full-stop":Ali,"header-max-length":dli,"header-min-length":pli,"header-trim":fli,"references-empty":Ili,"scope-case":hli,"scope-empty":mli,"scope-enum":Cli,"scope-max-length":_li,"scope-min-length":yli,"signed-off-by":bli,"subject-case":Eli,"subject-empty":Sli,"subject-full-stop":vli,"subject-max-length":Bli,"subject-min-length":wli,"subject-exclamation-mark":Tli,"trailer-exists":Rli,"type-case":Nli,"type-empty":Dli,"type-enum":kli,"type-max-length":xli,"type-min-length":Gli};var LTe;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(LTe||(LTe={}));var Zli;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(Zli||(Zli={}));var Lli=({header:e,body:t,footer:r})=>{let n=e;return n=t?`${n} ${t}`:n,n=r?`${n} -${r}`:n,n||""};async function D2r(e,t,r){let n=r||{defaultIgnores:void 0,ignores:void 0},a=t||{};if(VCt(e,{defaults:n.defaultIgnores,ignores:n.ignores}))return{valid:!0,errors:[],warnings:[],input:e};let o=e===""?{header:null,body:null,footer:null}:await Foi(e,void 0,n.parserOpts);if(o.header===null&&o.body===null&&o.footer===null)return{valid:!0,errors:[],warnings:[],input:e};let l=new Map(Object.entries(Sli));n.plugins&&Object.values(n.plugins).forEach(B=>{B.rules&&Object.keys(B.rules).forEach(F=>l.set(F,B.rules[F]))});let A=Object.keys(a).filter(B=>typeof l.get(B)!="function");if(A.length>0){let B=[...l.keys()];throw new RangeError([`Found rules without implementation: ${A.join(", ")}.`,`Supported rules are: ${B.join(", ")}.`].join(` -`))}let f=Object.entries(a).map(([B,F])=>{if(!Array.isArray(F))return new Error(`config for rule ${B} must be array, received ${OTe.inspect(F)} of type ${typeof F}`);let[Q]=F;if(Q===WTe.Disabled&&F.length===1)return null;let[,J]=F;return typeof Q!="number"||isNaN(Q)?new Error(`level for rule ${B} must be number, received ${OTe.inspect(Q)} of type ${typeof Q}`):F.length<2||F.length>3?new Error(`config for rule ${B} must be 2 or 3 items long, received ${OTe.inspect(F)} of length ${F.length}`):Q<0||Q>2?new RangeError(`level for rule ${B} must be between 0 and 2, received ${OTe.inspect(Q)}`):typeof J!="string"?new Error(`condition for rule ${B} must be string, received ${OTe.inspect(J)} of type ${typeof J}`):J!=="never"&&J!=="always"?new Error(`condition for rule ${B} must be "always" or "never", received ${OTe.inspect(J)}`):null}).filter(B=>B instanceof Error);if(f.length>0)throw new Error(f.map(B=>B.message).join(` -`));let I=Object.entries(a).filter(([,B])=>!!B&&B.length&&B[0]>0).map(async B=>{let[F,Q]=B,[J,ae,ne]=Q,ce=l.get(F);if(!ce)throw new Error(`Could not find rule implementation for ${F}`);let fe=ce,[ue,de]=await fe(o,ae,ne);return{level:J,valid:ue,name:F,message:de}}),C=(await Promise.all(I)).filter(B=>B!==null),b=C.filter(B=>B.level===WTe.Error&&!B.valid),E=C.filter(B=>B.level===WTe.Warning&&!B.valid);return{valid:b.length===0,errors:b,warnings:E,input:Bli(o)}}var k2r={back:{description:"Changes that affect backend code"},front:{description:"Changes that affect frontend code"},devops:{description:"Changes that affect devops code"},custom:{description:"Enter manually custom scope"}},JQe={feat:{description:"A new feature"},fix:{description:"Bug Fixes"},docs:{description:"Documentation only changes"},style:{description:"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},refactor:{description:"A code change that neither fixes a bug nor adds a feature"},perf:{description:"A code change that improves performance"},test:{description:"Adding missing tests or correcting existing tests"},deps:{description:"Changes that affect external dependencies"},build:{description:"Changes that affect the build system"},ci:{description:"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},chore:{description:"Other changes that don't modify src or test files"},revert:{description:"Reverts a previous commit"}};var wli={"body-leading-blank":[1,"always"],"body-max-line-length":[2,"always",180],"footer-leading-blank":[1,"always"],"footer-max-line-length":[2,"always",100],"header-max-length":[2,"always",140],"subject-case":[2,"never",["sentence-case","start-case","pascal-case","upper-case"]],"subject-empty":[2,"never"],"subject-full-stop":[2,"never","."],"type-case":[2,"always","lower-case"],"type-empty":[2,"never"],"type-enum":[2,"always",Object.keys(JQe)],"scope-case":[2,"always","lower-case"],"scope-empty":[2,"never"]};var LBa={headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]},VBa={parserOpts:LBa},XCt=class{scopes;workspaceNames;constructor({scopes:t,workspaceNames:r}){this.scopes=t,this.workspaceNames=r}async lint(t){let r=this.prepareConfig(wli);return D2r(t,r,VBa)}format(t,r={helpUrl:"https://github.com/conventional-changelog/commitlint/#what-is-commitlint"}){return uoi(t,r)}prepareConfig(t){let r=[];this.scopes&&r.push(...this.scopes.filter(a=>a&&a!=="atls")),this.workspaceNames&&r.push(...this.workspaceNames.filter(a=>a));let n=["common","github",...r];return t["scope-enum"]=[FCt.Error,"always",n],t}};var JCt=class extends Tli.BaseCommand{static paths=[["commit","message","lint"]];async execute(){let t=await Rli.Configuration.find(this.context.cwd,this.context.plugins),{project:{workspaces:r}}=await Nli.Project.find(t,this.context.cwd),n=new Set(r.map(({manifest:I})=>I.name?.name??"")),a=new Set(r.map(({manifest:I})=>I.name?.scope??"")),o=new XCt({scopes:Array.from(a),workspaceNames:Array.from(n)}),l=await GCt({edit:!0}),A=await Promise.all(l.map(async I=>o.lint(I))),f=o.format({results:A});return f!==""&&this.context.stdout.write(f),A.some(I=>!I.valid)?1:0}};var Cgi=Nt(dl(),1),_gi=Nt(Io(),1),ygi=Nt(Zli(),1);Rl();var bgi=Nt(Wli(),1),Egi=Nt(ul(),1),Sgi=Nt(Ec(),1),vgi=Nt(Ec(),1),__t=Nt(Pli(),1);var hgi=Nt(Ec(),1),Oae=Nt(Ec(),1);var jTe=Nt(ul(),1),KTe=Nt(ul(),1),$ui=Nt(Ec(),1),iSr=Nt(Kui(),1);import jui from"node:process";function tSr(){let{env:e}=jui,{TERM:t,TERM_PROGRAM:r}=e;return jui.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var zui={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"\u2588",squareDarkShade:"\u2593",squareMediumShade:"\u2592",squareLightShade:"\u2591",squareTop:"\u2580",squareBottom:"\u2584",squareLeft:"\u258C",squareRight:"\u2590",squareCenter:"\u25A0",bullet:"\u25CF",dot:"\u2024",ellipsis:"\u2026",pointerSmall:"\u203A",triangleUp:"\u25B2",triangleUpSmall:"\u25B4",triangleDown:"\u25BC",triangleDownSmall:"\u25BE",triangleLeftSmall:"\u25C2",triangleRightSmall:"\u25B8",home:"\u2302",heart:"\u2665",musicNote:"\u266A",musicNoteBeamed:"\u266B",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",arrowLeftRight:"\u2194",arrowUpDown:"\u2195",almostEqual:"\u2248",notEqual:"\u2260",lessOrEqual:"\u2264",greaterOrEqual:"\u2265",identical:"\u2261",infinity:"\u221E",subscriptZero:"\u2080",subscriptOne:"\u2081",subscriptTwo:"\u2082",subscriptThree:"\u2083",subscriptFour:"\u2084",subscriptFive:"\u2085",subscriptSix:"\u2086",subscriptSeven:"\u2087",subscriptEight:"\u2088",subscriptNine:"\u2089",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneEighth:"\u215B",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E",line:"\u2500",lineBold:"\u2501",lineDouble:"\u2550",lineDashed0:"\u2504",lineDashed1:"\u2505",lineDashed2:"\u2508",lineDashed3:"\u2509",lineDashed4:"\u254C",lineDashed5:"\u254D",lineDashed6:"\u2574",lineDashed7:"\u2576",lineDashed8:"\u2578",lineDashed9:"\u257A",lineDashed10:"\u257C",lineDashed11:"\u257E",lineDashed12:"\u2212",lineDashed13:"\u2013",lineDashed14:"\u2010",lineDashed15:"\u2043",lineVertical:"\u2502",lineVerticalBold:"\u2503",lineVerticalDouble:"\u2551",lineVerticalDashed0:"\u2506",lineVerticalDashed1:"\u2507",lineVerticalDashed2:"\u250A",lineVerticalDashed3:"\u250B",lineVerticalDashed4:"\u254E",lineVerticalDashed5:"\u254F",lineVerticalDashed6:"\u2575",lineVerticalDashed7:"\u2577",lineVerticalDashed8:"\u2579",lineVerticalDashed9:"\u257B",lineVerticalDashed10:"\u257D",lineVerticalDashed11:"\u257F",lineDownLeft:"\u2510",lineDownLeftArc:"\u256E",lineDownBoldLeftBold:"\u2513",lineDownBoldLeft:"\u2512",lineDownLeftBold:"\u2511",lineDownDoubleLeftDouble:"\u2557",lineDownDoubleLeft:"\u2556",lineDownLeftDouble:"\u2555",lineDownRight:"\u250C",lineDownRightArc:"\u256D",lineDownBoldRightBold:"\u250F",lineDownBoldRight:"\u250E",lineDownRightBold:"\u250D",lineDownDoubleRightDouble:"\u2554",lineDownDoubleRight:"\u2553",lineDownRightDouble:"\u2552",lineUpLeft:"\u2518",lineUpLeftArc:"\u256F",lineUpBoldLeftBold:"\u251B",lineUpBoldLeft:"\u251A",lineUpLeftBold:"\u2519",lineUpDoubleLeftDouble:"\u255D",lineUpDoubleLeft:"\u255C",lineUpLeftDouble:"\u255B",lineUpRight:"\u2514",lineUpRightArc:"\u2570",lineUpBoldRightBold:"\u2517",lineUpBoldRight:"\u2516",lineUpRightBold:"\u2515",lineUpDoubleRightDouble:"\u255A",lineUpDoubleRight:"\u2559",lineUpRightDouble:"\u2558",lineUpDownLeft:"\u2524",lineUpBoldDownBoldLeftBold:"\u252B",lineUpBoldDownBoldLeft:"\u2528",lineUpDownLeftBold:"\u2525",lineUpBoldDownLeftBold:"\u2529",lineUpDownBoldLeftBold:"\u252A",lineUpDownBoldLeft:"\u2527",lineUpBoldDownLeft:"\u2526",lineUpDoubleDownDoubleLeftDouble:"\u2563",lineUpDoubleDownDoubleLeft:"\u2562",lineUpDownLeftDouble:"\u2561",lineUpDownRight:"\u251C",lineUpBoldDownBoldRightBold:"\u2523",lineUpBoldDownBoldRight:"\u2520",lineUpDownRightBold:"\u251D",lineUpBoldDownRightBold:"\u2521",lineUpDownBoldRightBold:"\u2522",lineUpDownBoldRight:"\u251F",lineUpBoldDownRight:"\u251E",lineUpDoubleDownDoubleRightDouble:"\u2560",lineUpDoubleDownDoubleRight:"\u255F",lineUpDownRightDouble:"\u255E",lineDownLeftRight:"\u252C",lineDownBoldLeftBoldRightBold:"\u2533",lineDownLeftBoldRightBold:"\u252F",lineDownBoldLeftRight:"\u2530",lineDownBoldLeftBoldRight:"\u2531",lineDownBoldLeftRightBold:"\u2532",lineDownLeftRightBold:"\u252E",lineDownLeftBoldRight:"\u252D",lineDownDoubleLeftDoubleRightDouble:"\u2566",lineDownDoubleLeftRight:"\u2565",lineDownLeftDoubleRightDouble:"\u2564",lineUpLeftRight:"\u2534",lineUpBoldLeftBoldRightBold:"\u253B",lineUpLeftBoldRightBold:"\u2537",lineUpBoldLeftRight:"\u2538",lineUpBoldLeftBoldRight:"\u2539",lineUpBoldLeftRightBold:"\u253A",lineUpLeftRightBold:"\u2536",lineUpLeftBoldRight:"\u2535",lineUpDoubleLeftDoubleRightDouble:"\u2569",lineUpDoubleLeftRight:"\u2568",lineUpLeftDoubleRightDouble:"\u2567",lineUpDownLeftRight:"\u253C",lineUpBoldDownBoldLeftBoldRightBold:"\u254B",lineUpDownBoldLeftBoldRightBold:"\u2548",lineUpBoldDownLeftBoldRightBold:"\u2547",lineUpBoldDownBoldLeftRightBold:"\u254A",lineUpBoldDownBoldLeftBoldRight:"\u2549",lineUpBoldDownLeftRight:"\u2540",lineUpDownBoldLeftRight:"\u2541",lineUpDownLeftBoldRight:"\u253D",lineUpDownLeftRightBold:"\u253E",lineUpBoldDownBoldLeftRight:"\u2542",lineUpDownLeftBoldRightBold:"\u253F",lineUpBoldDownLeftBoldRight:"\u2543",lineUpBoldDownLeftRightBold:"\u2544",lineUpDownBoldLeftBoldRight:"\u2545",lineUpDownBoldLeftRightBold:"\u2546",lineUpDoubleDownDoubleLeftDoubleRightDouble:"\u256C",lineUpDoubleDownDoubleLeftRight:"\u256B",lineUpDownLeftDoubleRightDouble:"\u256A",lineCross:"\u2573",lineBackslash:"\u2572",lineSlash:"\u2571"},qui={tick:"\u2714",info:"\u2139",warning:"\u26A0",cross:"\u2718",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",pointer:"\u276F",triangleUpOutline:"\u25B3",triangleLeft:"\u25C0",triangleRight:"\u25B6",lozenge:"\u25C6",lozengeOutline:"\u25C7",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",star:"\u2605",play:"\u25B6",nodejs:"\u2B22",oneSeventh:"\u2150",oneNinth:"\u2151",oneTenth:"\u2152"},zTa={tick:"\u221A",info:"i",warning:"\u203C",cross:"\xD7",squareSmall:"\u25A1",squareSmallFilled:"\u25A0",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"\u2206",triangleLeft:"\u25C4",triangleRight:"\u25BA",lozenge:"\u2666",lozengeOutline:"\u25CA",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",star:"\u2736",play:"\u25BA",nodejs:"\u2666",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},qTa={...zui,...qui},$Ta={...zui,...zTa},eRa=tSr(),tRa=eRa?qTa:$Ta,GI=tRa,Ifu=Object.entries(qui);var rSr=Nt(ul(),1),nSr=Nt(ul(),1),JTe=Nt(Wc(),1),UTe=({label:e,value:t})=>(0,JTe.jsxs)(nSr.Box,{children:[(0,JTe.jsx)(nSr.Box,{width:12,children:(0,JTe.jsx)(rSr.Text,{bold:!0,color:"#d7875f",children:t})}),(0,JTe.jsx)(rSr.Text,{children:e})]});var fP=Nt(Wc(),1),rRa=iSr.default.default||iSr.default,nRa=[{label:"Add a scope",value:"scope"},{label:"Resolves issues",value:"issues"},{label:"Introduces breaking changes",value:"breaking"},{label:"Add a long description",value:"body"},{label:"Skip ci/cd setups",value:"skipci"}],iRa=({isSelected:e=!1})=>(0,fP.jsx)(KTe.Box,{marginRight:1,children:e?(0,fP.jsx)(jTe.Text,{children:GI.circleFilled}):(0,fP.jsx)(jTe.Text,{children:" "})}),sRa=({isHighlighted:e=!1})=>(0,fP.jsx)(KTe.Box,{marginRight:1,children:e?(0,fP.jsx)(jTe.Text,{color:"cyanBright",children:GI.pointer}):(0,fP.jsx)(jTe.Text,{children:" "})}),egi=({onSubmit:e})=>{let t=(0,$ui.useCallback)(r=>{e(r.reduce((n,a)=>({...n,[a.value]:!0}),{}))},[e]);return(0,fP.jsxs)(KTe.Box,{flexDirection:"column",children:[(0,fP.jsx)(KTe.Box,{children:(0,fP.jsx)(jTe.Text,{bold:!0,color:"cyanBright",children:"Please select additional actions:"})}),(0,fP.jsx)(KTe.Box,{children:(0,fP.jsx)(rRa,{items:nRa,indicatorComponent:sRa,itemComponent:UTe,checkboxComponent:iRa,onSubmit:t})})]})};var sSr=Nt(ul(),1),zTe=Nt(ul(),1);var Vae=Nt(Ec(),1),d_t=Nt(ul(),1);function tgi({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A}){let[f,I]=(0,Vae.useState)({cursorOffset:(e||"").length,cursorWidth:0}),{cursorOffset:C,cursorWidth:b}=f;(0,Vae.useEffect)(()=>{I(Q=>{if(!r||!o)return Q;let J=e||"";return Q.cursorOffset>J.length-1?{cursorOffset:J.length,cursorWidth:0}:Q})},[e,r,o]);let E=a?b:0,N=n?n.repeat(e.length):e,B=N,F=t?hp.grey(t):void 0;if(o&&r){F=t.length>0?hp.inverse(t[0])+hp.grey(t.slice(1)):hp.inverse(" "),B=N.length>0?"":hp.inverse(" ");let Q=0;for(let J of N)B+=Q>=C-E&&Q<=C?hp.inverse(J):J,Q++;N.length>0&&C===N.length&&(B+=hp.inverse(" "))}return(0,d_t.useInput)((Q,J)=>{if(J.upArrow||J.downArrow||J.ctrl&&Q==="c"||J.tab||J.shift&&J.tab)return;if(J.return){A&&A(e);return}let ae=C,ne=e,ce=0;J.leftArrow?o&&ae--:J.rightArrow?o&&ae++:J.backspace||J.delete?C>0&&(ne=e.slice(0,C-1)+e.slice(C,e.length),ae--):(ne=e.slice(0,C)+Q+e.slice(C,e.length),ae+=Q.length,Q.length>1&&(ce=Q.length)),C<0&&(ae=0),C>e.length&&(ae=e.length),I({cursorOffset:ae,cursorWidth:ce}),ne!==e&&l(ne)},{isActive:r}),Vae.default.createElement(d_t.Text,null,t?N.length>0?B:F:B)}var p_t=tgi;function e6({initialValue:e="",...t}){let[r,n]=(0,Vae.useState)(e);return Vae.default.createElement(tgi,{...t,value:r,onChange:n})}var t6=Nt(Wc(),1),rgi=({onSubmit:e})=>(0,t6.jsxs)(zTe.Box,{flexDirection:"column",children:[(0,t6.jsx)(zTe.Box,{children:(0,t6.jsx)(sSr.Text,{bold:!0,color:"cyanBright",children:"Please give a long description:"})}),(0,t6.jsxs)(zTe.Box,{children:[(0,t6.jsx)(zTe.Box,{marginRight:1,children:(0,t6.jsx)(sSr.Text,{color:"gray",children:"\u2192"})}),(0,t6.jsx)(zTe.Box,{children:(0,t6.jsx)(e6,{onSubmit:e})})]})]});var oSr=Nt(ul(),1),qTe=Nt(ul(),1);var r6=Nt(Wc(),1),ngi=({onSubmit:e})=>(0,r6.jsxs)(qTe.Box,{flexDirection:"column",children:[(0,r6.jsx)(qTe.Box,{children:(0,r6.jsx)(oSr.Text,{bold:!0,color:"cyanBright",children:"Describe the breaking changes:"})}),(0,r6.jsxs)(qTe.Box,{children:[(0,r6.jsx)(qTe.Box,{marginRight:1,children:(0,r6.jsx)(oSr.Text,{color:"gray",children:"\u2192"})}),(0,r6.jsx)(qTe.Box,{children:(0,r6.jsx)(e6,{onSubmit:e})})]})]});var aSr=Nt(ul(),1),$Te=Nt(ul(),1);var n6=Nt(Wc(),1),igi=({onSubmit:e})=>(0,n6.jsxs)($Te.Box,{flexDirection:"column",children:[(0,n6.jsx)($Te.Box,{children:(0,n6.jsx)(aSr.Text,{bold:!0,color:"cyanBright",children:'Add issue references (e.g. "fix #123, re #124".):'})}),(0,n6.jsxs)($Te.Box,{children:[(0,n6.jsx)($Te.Box,{marginRight:1,children:(0,n6.jsx)(aSr.Text,{color:"gray",children:GI.arrowRight})}),(0,n6.jsx)($Te.Box,{children:(0,n6.jsx)(e6,{onSubmit:e})})]})]});var m_t=Nt(ul(),1),dee=Nt(ul(),1);var gSr=Nt(Ec(),1),ASr=Nt(Ec(),1),ugi=Nt(Ec(),1);var f_t=Nt(Ec(),1),tXe=Nt(ul(),1);function oRa({isSelected:e=!1}){return f_t.default.createElement(tXe.Box,{marginRight:1},e?f_t.default.createElement(tXe.Text,{color:"blue"},GI.pointer):f_t.default.createElement(tXe.Text,null," "))}var cSr=oRa;var sgi=Nt(Ec(),1),ogi=Nt(ul(),1);function aRa({isSelected:e=!1,label:t}){return sgi.createElement(ogi.Text,{color:e?"blue":void 0},t)}var lSr=aRa;var AV=Nt(Ec(),1),agi=Nt(X2r(),1);function eRe(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let n=(t%r+r)%r;return n===0?[...e]:[...e.slice(-n),...e.slice(0,-n)]}var rXe=Nt(ul(),1);function cRa({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:n=cSr,itemComponent:a=lSr,limit:o,onSelect:l,onHighlight:A}){let f=typeof o=="number"&&e.length>o,I=f?Math.min(o,e.length):e.length,C=I-1,[b,E]=(0,AV.useState)(r>C?C-r:0),[N,B]=(0,AV.useState)(r?r>C?C:r:0),F=(0,AV.useRef)(e);(0,AV.useEffect)(()=>{(0,agi.default)(F.current.map(J=>J.value),e.map(J=>J.value))||(E(0),B(0)),F.current=e},[e]),(0,rXe.useInput)((0,AV.useCallback)((J,ae)=>{if(J==="k"||ae.upArrow){let ne=(f?I:e.length)-1,ce=N===0,fe=f?N:ne,ue=ce?b+1:b,de=ce?fe:N-1;E(ue),B(de);let be=f?eRe(e,ue).slice(0,I):e;typeof A=="function"&&A(be[de])}if(J==="j"||ae.downArrow){let ne=N===(f?I:e.length)-1,ce=f?N:0,fe=ne?b-1:b,ue=ne?ce:N+1;E(fe),B(ue);let de=f?eRe(e,fe).slice(0,I):e;typeof A=="function"&&A(de[ue])}if(ae.return){let ne=f?eRe(e,b).slice(0,I):e;typeof l=="function"&&l(ne[N])}},[f,I,b,N,e,l,A]),{isActive:t});let Q=f?eRe(e,b).slice(0,I):e;return AV.default.createElement(rXe.Box,{flexDirection:"column"},Q.map((J,ae)=>{let ne=ae===N;return AV.default.createElement(rXe.Box,{key:J.key??J.value},AV.default.createElement(n,{isSelected:ne}),AV.default.createElement(a,{...J,isSelected:ne}))}))}var nXe=cRa;var uSr=Nt(ul(),1),cgi=Nt(ul(),1);var I_t=Nt(Wc(),1),h_t=({isSelected:e=!1})=>(0,I_t.jsx)(cgi.Box,{marginRight:1,children:e?(0,I_t.jsx)(uSr.Text,{color:"cyanBright",children:GI.pointer}):(0,I_t.jsx)(uSr.Text,{children:" "})});var NG=Nt(Wc(),1),lgi=Object.keys(k2r).map(e=>({label:k2r[e].description,value:e})),ggi=({onSubmit:e})=>{let[t,r]=(0,gSr.useState)(!1),[n,a]=(0,gSr.useState)(""),o=(0,ASr.useMemo)(()=>n.length>0?lgi.filter(f=>f.label.toLowerCase().includes(n.toLowerCase())):lgi,[n]),l=(0,ASr.useMemo)(()=>o.length>0,[o]),A=(0,ugi.useCallback)(f=>{f.value==="custom"?r(!0):e(f.value)},[r,e]);return t?(0,NG.jsxs)(dee.Box,{flexDirection:"column",children:[(0,NG.jsx)(dee.Box,{children:(0,NG.jsx)(m_t.Text,{bold:!0,color:"cyanBright",children:"Please state the scope of the change:"})}),(0,NG.jsxs)(dee.Box,{children:[(0,NG.jsx)(dee.Box,{marginRight:1,children:(0,NG.jsx)(m_t.Text,{color:"gray",children:"\u2192"})}),(0,NG.jsx)(dee.Box,{children:(0,NG.jsx)(e6,{onSubmit:e})})]})]}):(0,NG.jsxs)(dee.Box,{flexDirection:"column",children:[(0,NG.jsxs)(dee.Box,{children:[(0,NG.jsx)(dee.Box,{marginRight:1,children:(0,NG.jsx)(m_t.Text,{bold:!0,color:"cyanBright",children:"Type of scope:"})}),(0,NG.jsx)(p_t,{value:n,onChange:a})]}),!!l&&(0,NG.jsx)(nXe,{items:o,indicatorComponent:h_t,itemComponent:UTe,onSelect:A})]})};var dSr=Nt(ul(),1),tRe=Nt(ul(),1);var i6=Nt(Wc(),1),Agi=({onSubmit:e})=>(0,i6.jsxs)(tRe.Box,{flexDirection:"column",children:[(0,i6.jsx)(tRe.Box,{children:(0,i6.jsx)(dSr.Text,{bold:!0,color:"cyanBright",children:"Write a short description (max 93) chars):"})}),(0,i6.jsxs)(tRe.Box,{children:[(0,i6.jsx)(tRe.Box,{marginRight:1,children:(0,i6.jsx)(dSr.Text,{color:"gray",children:"\u2192"})}),(0,i6.jsx)(tRe.Box,{children:(0,i6.jsx)(e6,{onSubmit:e})})]})]});var pgi=Nt(ul(),1),C_t=Nt(ul(),1),fgi=Nt(Ec(),1),pSr=Nt(Ec(),1);var Wae=Nt(Wc(),1),dgi=Object.keys(JQe).map(e=>({label:JQe[e].description,value:e})),Igi=({onSubmit:e})=>{let[t,r]=(0,fgi.useState)(""),n=(0,pSr.useMemo)(()=>t.length>0?dgi.filter(o=>o.label.toLowerCase().includes(t.toLowerCase())):dgi,[t]),a=(0,pSr.useMemo)(()=>n.length>0,[n]);return(0,Wae.jsxs)(C_t.Box,{flexDirection:"column",children:[(0,Wae.jsxs)(C_t.Box,{children:[(0,Wae.jsx)(C_t.Box,{marginRight:1,children:(0,Wae.jsx)(pgi.Text,{bold:!0,color:"cyanBright",children:"Type of commit:"})}),(0,Wae.jsx)(p_t,{value:t,onChange:r})]}),!!a&&(0,Wae.jsx)(nXe,{items:n,indicatorComponent:h_t,itemComponent:UTe,onSelect:o=>{e(o.value)}})]})};var pee=Nt(Wc(),1),lRa=({onSubmit:e,...t})=>((0,hgi.useEffect)(()=>{e(t)},[t,e]),null),mgi=({onSubmit:e})=>{let[t,r]=(0,Oae.useState)(),[n,a]=(0,Oae.useState)(),[o,l]=(0,Oae.useState)(),[A,f]=(0,Oae.useState)(),[I,C]=(0,Oae.useState)(),[b,E]=(0,Oae.useState)(),[N,B]=(0,Oae.useState)();return t?o?N?N.scope&&!n?(0,pee.jsx)(ggi,{onSubmit:a}):N.issues&&!A?(0,pee.jsx)(igi,{onSubmit:f}):N.body&&!I?(0,pee.jsx)(rgi,{onSubmit:C}):N.breaking&&!b?(0,pee.jsx)(ngi,{onSubmit:E}):(0,pee.jsx)(lRa,{type:t,scope:n,subject:o,issues:A,body:I,breaking:b,skipci:N.skipci,onSubmit:e}):(0,pee.jsx)(egi,{onSubmit:B}):(0,pee.jsx)(Agi,{onSubmit:l}):(0,pee.jsx)(Igi,{onSubmit:r})};var fSr=Nt(Wc(),1),uRa=({commit:e,useSubmit:t})=>{let{stdin:r}=(0,Egi.useStdin)();return t(e),(0,Sgi.useEffect)(()=>{r?.emit("keypress","",{name:"return"})},[r]),null},gRa=({useSubmit:e})=>{let[t,r]=(0,vgi.useState)();return t?(0,fSr.jsx)(uRa,{commit:t,useSubmit:e}):(0,fSr.jsx)(mgi,{onSubmit:r})},y_t=class extends Cgi.BaseCommand{static paths=[["commit","message"]];args=vA.Rest({required:0});async execute(){let[t,r]=this.args;if(r)return 0;if(!t)throw new Error("Commit edit message file required.");let n=(0,bgi.forceStdinTty)(),a=await(0,ygi.renderForm)(gRa,{},{stdin:process.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return a&&await _gi.xfs.writeFilePromise(t,this.formatCommit(a)),n&&process.stdin.destroy(),a?0:1}formatCommit(t){let r={trim:!0,cut:!1,newline:` -`,indent:"",width:100},n=`${t.type}${t.scope?`(${t.scope})`:""}: ${t.subject}`;t.skipci&&(n+=" [skip ci]");let a=t.body?(0,__t.default)(t.body,r):!1,o=t.breaking?(0,__t.default)(`BREAKING CHANGE: ${t.breaking.trim().replace(/^BREAKING CHANGE: /,"")}`,r):!1,l=t.issues?(0,__t.default)(t.issues,r):!1;return[n,a,o,l].filter(Boolean).join(` +${r}`:n,n||""};async function x2r(e,t,r){let n=r||{defaultIgnores:void 0,ignores:void 0},a=t||{};if(ZCt(e,{defaults:n.defaultIgnores,ignores:n.ignores}))return{valid:!0,errors:[],warnings:[],input:e};let o=e===""?{header:null,body:null,footer:null}:await Xoi(e,void 0,n.parserOpts);if(o.header===null&&o.body===null&&o.footer===null)return{valid:!0,errors:[],warnings:[],input:e};let l=new Map(Object.entries(Fli));n.plugins&&Object.values(n.plugins).forEach(B=>{B.rules&&Object.keys(B.rules).forEach(F=>l.set(F,B.rules[F]))});let A=Object.keys(a).filter(B=>typeof l.get(B)!="function");if(A.length>0){let B=[...l.keys()];throw new RangeError([`Found rules without implementation: ${A.join(", ")}.`,`Supported rules are: ${B.join(", ")}.`].join(` +`))}let f=Object.entries(a).map(([B,F])=>{if(!Array.isArray(F))return new Error(`config for rule ${B} must be array, received ${VTe.inspect(F)} of type ${typeof F}`);let[Q]=F;if(Q===LTe.Disabled&&F.length===1)return null;let[,J]=F;return typeof Q!="number"||isNaN(Q)?new Error(`level for rule ${B} must be number, received ${VTe.inspect(Q)} of type ${typeof Q}`):F.length<2||F.length>3?new Error(`config for rule ${B} must be 2 or 3 items long, received ${VTe.inspect(F)} of length ${F.length}`):Q<0||Q>2?new RangeError(`level for rule ${B} must be between 0 and 2, received ${VTe.inspect(Q)}`):typeof J!="string"?new Error(`condition for rule ${B} must be string, received ${VTe.inspect(J)} of type ${typeof J}`):J!=="never"&&J!=="always"?new Error(`condition for rule ${B} must be "always" or "never", received ${VTe.inspect(J)}`):null}).filter(B=>B instanceof Error);if(f.length>0)throw new Error(f.map(B=>B.message).join(` +`));let I=Object.entries(a).filter(([,B])=>!!B&&B.length&&B[0]>0).map(async B=>{let[F,Q]=B,[J,ae,ne]=Q,ce=l.get(F);if(!ce)throw new Error(`Could not find rule implementation for ${F}`);let fe=ce,[ue,de]=await fe(o,ae,ne);return{level:J,valid:ue,name:F,message:de}}),C=(await Promise.all(I)).filter(B=>B!==null),b=C.filter(B=>B.level===LTe.Error&&!B.valid),E=C.filter(B=>B.level===LTe.Warning&&!B.valid);return{valid:b.length===0,errors:b,warnings:E,input:Lli(o)}}var G2r={back:{description:"Changes that affect backend code"},front:{description:"Changes that affect frontend code"},devops:{description:"Changes that affect devops code"},custom:{description:"Enter manually custom scope"}},KQe={feat:{description:"A new feature"},fix:{description:"Bug Fixes"},docs:{description:"Documentation only changes"},style:{description:"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},refactor:{description:"A code change that neither fixes a bug nor adds a feature"},perf:{description:"A code change that improves performance"},test:{description:"Adding missing tests or correcting existing tests"},deps:{description:"Changes that affect external dependencies"},build:{description:"Changes that affect the build system"},ci:{description:"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},chore:{description:"Other changes that don't modify src or test files"},revert:{description:"Reverts a previous commit"}};var Vli={"body-leading-blank":[1,"always"],"body-max-line-length":[2,"always",180],"footer-leading-blank":[1,"always"],"footer-max-line-length":[2,"always",100],"header-max-length":[2,"always",140],"subject-case":[2,"never",["sentence-case","start-case","pascal-case","upper-case"]],"subject-empty":[2,"never"],"subject-full-stop":[2,"never","."],"type-case":[2,"always","lower-case"],"type-empty":[2,"never"],"type-enum":[2,"always",Object.keys(KQe)],"scope-case":[2,"always","lower-case"],"scope-empty":[2,"never"]};var MBa={headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]},HBa={parserOpts:MBa},YCt=class{scopes;workspaceNames;constructor({scopes:t,workspaceNames:r}){this.scopes=t,this.workspaceNames=r}async lint(t){let r=this.prepareConfig(Vli);return x2r(t,r,HBa)}format(t,r={helpUrl:"https://github.com/conventional-changelog/commitlint/#what-is-commitlint"}){return yoi(t,r)}prepareConfig(t){let r=[];this.scopes&&r.push(...this.scopes.filter(a=>a&&a!=="atls")),this.workspaceNames&&r.push(...this.workspaceNames.filter(a=>a));let n=["common","github",...r];return t["scope-enum"]=[xCt.Error,"always",n],t}};var QCt=class extends Wli.BaseCommand{static paths=[["commit","message","lint"]];async execute(){let t=await Oli.Configuration.find(this.context.cwd,this.context.plugins),{project:{workspaces:r}}=await Pli.Project.find(t,this.context.cwd),n=new Set(r.map(({manifest:I})=>I.name?.name??"")),a=new Set(r.map(({manifest:I})=>I.name?.scope??"")),o=new YCt({scopes:Array.from(a),workspaceNames:Array.from(n)}),l=await kCt({edit:!0}),A=await Promise.all(l.map(async I=>o.lint(I))),f=o.format({results:A});return f!==""&&this.context.stdout.write(f),A.some(I=>!I.valid)?1:0}};var Ngi=xt(sl(),1),Dgi=xt(No(),1),kgi=xt(Jli(),1);vl();var xgi=xt(jli(),1),Ggi=xt(gl(),1),Fgi=xt(Ec(),1),Zgi=xt(Ec(),1),m_t=xt(qli(),1);var Tgi=xt(Ec(),1),Pae=xt(Ec(),1);var UTe=xt(gl(),1),JTe=xt(gl(),1),ugi=xt(Ec(),1),oSr=xt(ogi(),1);import agi from"node:process";function nSr(){let{env:e}=agi,{TERM:t,TERM_PROGRAM:r}=e;return agi.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var cgi={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"\u2588",squareDarkShade:"\u2593",squareMediumShade:"\u2592",squareLightShade:"\u2591",squareTop:"\u2580",squareBottom:"\u2584",squareLeft:"\u258C",squareRight:"\u2590",squareCenter:"\u25A0",bullet:"\u25CF",dot:"\u2024",ellipsis:"\u2026",pointerSmall:"\u203A",triangleUp:"\u25B2",triangleUpSmall:"\u25B4",triangleDown:"\u25BC",triangleDownSmall:"\u25BE",triangleLeftSmall:"\u25C2",triangleRightSmall:"\u25B8",home:"\u2302",heart:"\u2665",musicNote:"\u266A",musicNoteBeamed:"\u266B",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",arrowLeftRight:"\u2194",arrowUpDown:"\u2195",almostEqual:"\u2248",notEqual:"\u2260",lessOrEqual:"\u2264",greaterOrEqual:"\u2265",identical:"\u2261",infinity:"\u221E",subscriptZero:"\u2080",subscriptOne:"\u2081",subscriptTwo:"\u2082",subscriptThree:"\u2083",subscriptFour:"\u2084",subscriptFive:"\u2085",subscriptSix:"\u2086",subscriptSeven:"\u2087",subscriptEight:"\u2088",subscriptNine:"\u2089",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneEighth:"\u215B",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E",line:"\u2500",lineBold:"\u2501",lineDouble:"\u2550",lineDashed0:"\u2504",lineDashed1:"\u2505",lineDashed2:"\u2508",lineDashed3:"\u2509",lineDashed4:"\u254C",lineDashed5:"\u254D",lineDashed6:"\u2574",lineDashed7:"\u2576",lineDashed8:"\u2578",lineDashed9:"\u257A",lineDashed10:"\u257C",lineDashed11:"\u257E",lineDashed12:"\u2212",lineDashed13:"\u2013",lineDashed14:"\u2010",lineDashed15:"\u2043",lineVertical:"\u2502",lineVerticalBold:"\u2503",lineVerticalDouble:"\u2551",lineVerticalDashed0:"\u2506",lineVerticalDashed1:"\u2507",lineVerticalDashed2:"\u250A",lineVerticalDashed3:"\u250B",lineVerticalDashed4:"\u254E",lineVerticalDashed5:"\u254F",lineVerticalDashed6:"\u2575",lineVerticalDashed7:"\u2577",lineVerticalDashed8:"\u2579",lineVerticalDashed9:"\u257B",lineVerticalDashed10:"\u257D",lineVerticalDashed11:"\u257F",lineDownLeft:"\u2510",lineDownLeftArc:"\u256E",lineDownBoldLeftBold:"\u2513",lineDownBoldLeft:"\u2512",lineDownLeftBold:"\u2511",lineDownDoubleLeftDouble:"\u2557",lineDownDoubleLeft:"\u2556",lineDownLeftDouble:"\u2555",lineDownRight:"\u250C",lineDownRightArc:"\u256D",lineDownBoldRightBold:"\u250F",lineDownBoldRight:"\u250E",lineDownRightBold:"\u250D",lineDownDoubleRightDouble:"\u2554",lineDownDoubleRight:"\u2553",lineDownRightDouble:"\u2552",lineUpLeft:"\u2518",lineUpLeftArc:"\u256F",lineUpBoldLeftBold:"\u251B",lineUpBoldLeft:"\u251A",lineUpLeftBold:"\u2519",lineUpDoubleLeftDouble:"\u255D",lineUpDoubleLeft:"\u255C",lineUpLeftDouble:"\u255B",lineUpRight:"\u2514",lineUpRightArc:"\u2570",lineUpBoldRightBold:"\u2517",lineUpBoldRight:"\u2516",lineUpRightBold:"\u2515",lineUpDoubleRightDouble:"\u255A",lineUpDoubleRight:"\u2559",lineUpRightDouble:"\u2558",lineUpDownLeft:"\u2524",lineUpBoldDownBoldLeftBold:"\u252B",lineUpBoldDownBoldLeft:"\u2528",lineUpDownLeftBold:"\u2525",lineUpBoldDownLeftBold:"\u2529",lineUpDownBoldLeftBold:"\u252A",lineUpDownBoldLeft:"\u2527",lineUpBoldDownLeft:"\u2526",lineUpDoubleDownDoubleLeftDouble:"\u2563",lineUpDoubleDownDoubleLeft:"\u2562",lineUpDownLeftDouble:"\u2561",lineUpDownRight:"\u251C",lineUpBoldDownBoldRightBold:"\u2523",lineUpBoldDownBoldRight:"\u2520",lineUpDownRightBold:"\u251D",lineUpBoldDownRightBold:"\u2521",lineUpDownBoldRightBold:"\u2522",lineUpDownBoldRight:"\u251F",lineUpBoldDownRight:"\u251E",lineUpDoubleDownDoubleRightDouble:"\u2560",lineUpDoubleDownDoubleRight:"\u255F",lineUpDownRightDouble:"\u255E",lineDownLeftRight:"\u252C",lineDownBoldLeftBoldRightBold:"\u2533",lineDownLeftBoldRightBold:"\u252F",lineDownBoldLeftRight:"\u2530",lineDownBoldLeftBoldRight:"\u2531",lineDownBoldLeftRightBold:"\u2532",lineDownLeftRightBold:"\u252E",lineDownLeftBoldRight:"\u252D",lineDownDoubleLeftDoubleRightDouble:"\u2566",lineDownDoubleLeftRight:"\u2565",lineDownLeftDoubleRightDouble:"\u2564",lineUpLeftRight:"\u2534",lineUpBoldLeftBoldRightBold:"\u253B",lineUpLeftBoldRightBold:"\u2537",lineUpBoldLeftRight:"\u2538",lineUpBoldLeftBoldRight:"\u2539",lineUpBoldLeftRightBold:"\u253A",lineUpLeftRightBold:"\u2536",lineUpLeftBoldRight:"\u2535",lineUpDoubleLeftDoubleRightDouble:"\u2569",lineUpDoubleLeftRight:"\u2568",lineUpLeftDoubleRightDouble:"\u2567",lineUpDownLeftRight:"\u253C",lineUpBoldDownBoldLeftBoldRightBold:"\u254B",lineUpDownBoldLeftBoldRightBold:"\u2548",lineUpBoldDownLeftBoldRightBold:"\u2547",lineUpBoldDownBoldLeftRightBold:"\u254A",lineUpBoldDownBoldLeftBoldRight:"\u2549",lineUpBoldDownLeftRight:"\u2540",lineUpDownBoldLeftRight:"\u2541",lineUpDownLeftBoldRight:"\u253D",lineUpDownLeftRightBold:"\u253E",lineUpBoldDownBoldLeftRight:"\u2542",lineUpDownLeftBoldRightBold:"\u253F",lineUpBoldDownLeftBoldRight:"\u2543",lineUpBoldDownLeftRightBold:"\u2544",lineUpDownBoldLeftBoldRight:"\u2545",lineUpDownBoldLeftRightBold:"\u2546",lineUpDoubleDownDoubleLeftDoubleRightDouble:"\u256C",lineUpDoubleDownDoubleLeftRight:"\u256B",lineUpDownLeftDoubleRightDouble:"\u256A",lineCross:"\u2573",lineBackslash:"\u2572",lineSlash:"\u2571"},lgi={tick:"\u2714",info:"\u2139",warning:"\u26A0",cross:"\u2718",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",pointer:"\u276F",triangleUpOutline:"\u25B3",triangleLeft:"\u25C0",triangleRight:"\u25B6",lozenge:"\u25C6",lozengeOutline:"\u25C7",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",star:"\u2605",play:"\u25B6",nodejs:"\u2B22",oneSeventh:"\u2150",oneNinth:"\u2151",oneTenth:"\u2152"},rRa={tick:"\u221A",info:"i",warning:"\u203C",cross:"\xD7",squareSmall:"\u25A1",squareSmallFilled:"\u25A0",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"\u2206",triangleLeft:"\u25C4",triangleRight:"\u25BA",lozenge:"\u2666",lozengeOutline:"\u25CA",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",star:"\u2736",play:"\u25BA",nodejs:"\u2666",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},nRa={...cgi,...lgi},iRa={...cgi,...rRa},sRa=nSr(),oRa=sRa?nRa:iRa,GI=oRa,vIu=Object.entries(lgi);var iSr=xt(gl(),1),sSr=xt(gl(),1),QTe=xt(Wc(),1),XTe=({label:e,value:t})=>(0,QTe.jsxs)(sSr.Box,{children:[(0,QTe.jsx)(sSr.Box,{width:12,children:(0,QTe.jsx)(iSr.Text,{bold:!0,color:"#d7875f",children:t})}),(0,QTe.jsx)(iSr.Text,{children:e})]});var hP=xt(Wc(),1),aRa=oSr.default.default||oSr.default,cRa=[{label:"Add a scope",value:"scope"},{label:"Resolves issues",value:"issues"},{label:"Introduces breaking changes",value:"breaking"},{label:"Add a long description",value:"body"},{label:"Skip ci/cd setups",value:"skipci"}],lRa=({isSelected:e=!1})=>(0,hP.jsx)(JTe.Box,{marginRight:1,children:e?(0,hP.jsx)(UTe.Text,{children:GI.circleFilled}):(0,hP.jsx)(UTe.Text,{children:" "})}),uRa=({isHighlighted:e=!1})=>(0,hP.jsx)(JTe.Box,{marginRight:1,children:e?(0,hP.jsx)(UTe.Text,{color:"cyanBright",children:GI.pointer}):(0,hP.jsx)(UTe.Text,{children:" "})}),ggi=({onSubmit:e})=>{let t=(0,ugi.useCallback)(r=>{e(r.reduce((n,a)=>({...n,[a.value]:!0}),{}))},[e]);return(0,hP.jsxs)(JTe.Box,{flexDirection:"column",children:[(0,hP.jsx)(JTe.Box,{children:(0,hP.jsx)(UTe.Text,{bold:!0,color:"cyanBright",children:"Please select additional actions:"})}),(0,hP.jsx)(JTe.Box,{children:(0,hP.jsx)(aRa,{items:cRa,indicatorComponent:uRa,itemComponent:XTe,checkboxComponent:lRa,onSubmit:t})})]})};var aSr=xt(gl(),1),KTe=xt(gl(),1);var Wae=xt(Ec(),1),g_t=xt(gl(),1);function Agi({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A}){let[f,I]=(0,Wae.useState)({cursorOffset:(e||"").length,cursorWidth:0}),{cursorOffset:C,cursorWidth:b}=f;(0,Wae.useEffect)(()=>{I(Q=>{if(!r||!o)return Q;let J=e||"";return Q.cursorOffset>J.length-1?{cursorOffset:J.length,cursorWidth:0}:Q})},[e,r,o]);let E=a?b:0,N=n?n.repeat(e.length):e,B=N,F=t?hp.grey(t):void 0;if(o&&r){F=t.length>0?hp.inverse(t[0])+hp.grey(t.slice(1)):hp.inverse(" "),B=N.length>0?"":hp.inverse(" ");let Q=0;for(let J of N)B+=Q>=C-E&&Q<=C?hp.inverse(J):J,Q++;N.length>0&&C===N.length&&(B+=hp.inverse(" "))}return(0,g_t.useInput)((Q,J)=>{if(J.upArrow||J.downArrow||J.ctrl&&Q==="c"||J.tab||J.shift&&J.tab)return;if(J.return){A&&A(e);return}let ae=C,ne=e,ce=0;J.leftArrow?o&&ae--:J.rightArrow?o&&ae++:J.backspace||J.delete?C>0&&(ne=e.slice(0,C-1)+e.slice(C,e.length),ae--):(ne=e.slice(0,C)+Q+e.slice(C,e.length),ae+=Q.length,Q.length>1&&(ce=Q.length)),C<0&&(ae=0),C>e.length&&(ae=e.length),I({cursorOffset:ae,cursorWidth:ce}),ne!==e&&l(ne)},{isActive:r}),Wae.default.createElement(g_t.Text,null,t?N.length>0?B:F:B)}var A_t=Agi;function t6({initialValue:e="",...t}){let[r,n]=(0,Wae.useState)(e);return Wae.default.createElement(Agi,{...t,value:r,onChange:n})}var r6=xt(Wc(),1),dgi=({onSubmit:e})=>(0,r6.jsxs)(KTe.Box,{flexDirection:"column",children:[(0,r6.jsx)(KTe.Box,{children:(0,r6.jsx)(aSr.Text,{bold:!0,color:"cyanBright",children:"Please give a long description:"})}),(0,r6.jsxs)(KTe.Box,{children:[(0,r6.jsx)(KTe.Box,{marginRight:1,children:(0,r6.jsx)(aSr.Text,{color:"gray",children:"\u2192"})}),(0,r6.jsx)(KTe.Box,{children:(0,r6.jsx)(t6,{onSubmit:e})})]})]});var cSr=xt(gl(),1),jTe=xt(gl(),1);var n6=xt(Wc(),1),pgi=({onSubmit:e})=>(0,n6.jsxs)(jTe.Box,{flexDirection:"column",children:[(0,n6.jsx)(jTe.Box,{children:(0,n6.jsx)(cSr.Text,{bold:!0,color:"cyanBright",children:"Describe the breaking changes:"})}),(0,n6.jsxs)(jTe.Box,{children:[(0,n6.jsx)(jTe.Box,{marginRight:1,children:(0,n6.jsx)(cSr.Text,{color:"gray",children:"\u2192"})}),(0,n6.jsx)(jTe.Box,{children:(0,n6.jsx)(t6,{onSubmit:e})})]})]});var lSr=xt(gl(),1),zTe=xt(gl(),1);var i6=xt(Wc(),1),fgi=({onSubmit:e})=>(0,i6.jsxs)(zTe.Box,{flexDirection:"column",children:[(0,i6.jsx)(zTe.Box,{children:(0,i6.jsx)(lSr.Text,{bold:!0,color:"cyanBright",children:'Add issue references (e.g. "fix #123, re #124".):'})}),(0,i6.jsxs)(zTe.Box,{children:[(0,i6.jsx)(zTe.Box,{marginRight:1,children:(0,i6.jsx)(lSr.Text,{color:"gray",children:GI.arrowRight})}),(0,i6.jsx)(zTe.Box,{children:(0,i6.jsx)(t6,{onSubmit:e})})]})]});var I_t=xt(gl(),1),pee=xt(gl(),1);var dSr=xt(Ec(),1),pSr=xt(Ec(),1),ygi=xt(Ec(),1);var d_t=xt(Ec(),1),nXe=xt(gl(),1);function gRa({isSelected:e=!1}){return d_t.default.createElement(nXe.Box,{marginRight:1},e?d_t.default.createElement(nXe.Text,{color:"blue"},GI.pointer):d_t.default.createElement(nXe.Text,null," "))}var uSr=gRa;var Igi=xt(Ec(),1),hgi=xt(gl(),1);function ARa({isSelected:e=!1,label:t}){return Igi.createElement(hgi.Text,{color:e?"blue":void 0},t)}var gSr=ARa;var dV=xt(Ec(),1),mgi=xt(U2r(),1);function qTe(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let n=(t%r+r)%r;return n===0?[...e]:[...e.slice(-n),...e.slice(0,-n)]}var iXe=xt(gl(),1);function dRa({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:n=uSr,itemComponent:a=gSr,limit:o,onSelect:l,onHighlight:A}){let f=typeof o=="number"&&e.length>o,I=f?Math.min(o,e.length):e.length,C=I-1,[b,E]=(0,dV.useState)(r>C?C-r:0),[N,B]=(0,dV.useState)(r?r>C?C:r:0),F=(0,dV.useRef)(e);(0,dV.useEffect)(()=>{(0,mgi.default)(F.current.map(J=>J.value),e.map(J=>J.value))||(E(0),B(0)),F.current=e},[e]),(0,iXe.useInput)((0,dV.useCallback)((J,ae)=>{if(J==="k"||ae.upArrow){let ne=(f?I:e.length)-1,ce=N===0,fe=f?N:ne,ue=ce?b+1:b,de=ce?fe:N-1;E(ue),B(de);let be=f?qTe(e,ue).slice(0,I):e;typeof A=="function"&&A(be[de])}if(J==="j"||ae.downArrow){let ne=N===(f?I:e.length)-1,ce=f?N:0,fe=ne?b-1:b,ue=ne?ce:N+1;E(fe),B(ue);let de=f?qTe(e,fe).slice(0,I):e;typeof A=="function"&&A(de[ue])}if(ae.return){let ne=f?qTe(e,b).slice(0,I):e;typeof l=="function"&&l(ne[N])}},[f,I,b,N,e,l,A]),{isActive:t});let Q=f?qTe(e,b).slice(0,I):e;return dV.default.createElement(iXe.Box,{flexDirection:"column"},Q.map((J,ae)=>{let ne=ae===N;return dV.default.createElement(iXe.Box,{key:J.key??J.value},dV.default.createElement(n,{isSelected:ne}),dV.default.createElement(a,{...J,isSelected:ne}))}))}var sXe=dRa;var ASr=xt(gl(),1),Cgi=xt(gl(),1);var p_t=xt(Wc(),1),f_t=({isSelected:e=!1})=>(0,p_t.jsx)(Cgi.Box,{marginRight:1,children:e?(0,p_t.jsx)(ASr.Text,{color:"cyanBright",children:GI.pointer}):(0,p_t.jsx)(ASr.Text,{children:" "})});var DG=xt(Wc(),1),_gi=Object.keys(G2r).map(e=>({label:G2r[e].description,value:e})),bgi=({onSubmit:e})=>{let[t,r]=(0,dSr.useState)(!1),[n,a]=(0,dSr.useState)(""),o=(0,pSr.useMemo)(()=>n.length>0?_gi.filter(f=>f.label.toLowerCase().includes(n.toLowerCase())):_gi,[n]),l=(0,pSr.useMemo)(()=>o.length>0,[o]),A=(0,ygi.useCallback)(f=>{f.value==="custom"?r(!0):e(f.value)},[r,e]);return t?(0,DG.jsxs)(pee.Box,{flexDirection:"column",children:[(0,DG.jsx)(pee.Box,{children:(0,DG.jsx)(I_t.Text,{bold:!0,color:"cyanBright",children:"Please state the scope of the change:"})}),(0,DG.jsxs)(pee.Box,{children:[(0,DG.jsx)(pee.Box,{marginRight:1,children:(0,DG.jsx)(I_t.Text,{color:"gray",children:"\u2192"})}),(0,DG.jsx)(pee.Box,{children:(0,DG.jsx)(t6,{onSubmit:e})})]})]}):(0,DG.jsxs)(pee.Box,{flexDirection:"column",children:[(0,DG.jsxs)(pee.Box,{children:[(0,DG.jsx)(pee.Box,{marginRight:1,children:(0,DG.jsx)(I_t.Text,{bold:!0,color:"cyanBright",children:"Type of scope:"})}),(0,DG.jsx)(A_t,{value:n,onChange:a})]}),!!l&&(0,DG.jsx)(sXe,{items:o,indicatorComponent:f_t,itemComponent:XTe,onSelect:A})]})};var fSr=xt(gl(),1),$Te=xt(gl(),1);var s6=xt(Wc(),1),Egi=({onSubmit:e})=>(0,s6.jsxs)($Te.Box,{flexDirection:"column",children:[(0,s6.jsx)($Te.Box,{children:(0,s6.jsx)(fSr.Text,{bold:!0,color:"cyanBright",children:"Write a short description (max 93) chars):"})}),(0,s6.jsxs)($Te.Box,{children:[(0,s6.jsx)($Te.Box,{marginRight:1,children:(0,s6.jsx)(fSr.Text,{color:"gray",children:"\u2192"})}),(0,s6.jsx)($Te.Box,{children:(0,s6.jsx)(t6,{onSubmit:e})})]})]});var vgi=xt(gl(),1),h_t=xt(gl(),1),Bgi=xt(Ec(),1),ISr=xt(Ec(),1);var Oae=xt(Wc(),1),Sgi=Object.keys(KQe).map(e=>({label:KQe[e].description,value:e})),wgi=({onSubmit:e})=>{let[t,r]=(0,Bgi.useState)(""),n=(0,ISr.useMemo)(()=>t.length>0?Sgi.filter(o=>o.label.toLowerCase().includes(t.toLowerCase())):Sgi,[t]),a=(0,ISr.useMemo)(()=>n.length>0,[n]);return(0,Oae.jsxs)(h_t.Box,{flexDirection:"column",children:[(0,Oae.jsxs)(h_t.Box,{children:[(0,Oae.jsx)(h_t.Box,{marginRight:1,children:(0,Oae.jsx)(vgi.Text,{bold:!0,color:"cyanBright",children:"Type of commit:"})}),(0,Oae.jsx)(A_t,{value:t,onChange:r})]}),!!a&&(0,Oae.jsx)(sXe,{items:n,indicatorComponent:f_t,itemComponent:XTe,onSelect:o=>{e(o.value)}})]})};var fee=xt(Wc(),1),pRa=({onSubmit:e,...t})=>((0,Tgi.useEffect)(()=>{e(t)},[t,e]),null),Rgi=({onSubmit:e})=>{let[t,r]=(0,Pae.useState)(),[n,a]=(0,Pae.useState)(),[o,l]=(0,Pae.useState)(),[A,f]=(0,Pae.useState)(),[I,C]=(0,Pae.useState)(),[b,E]=(0,Pae.useState)(),[N,B]=(0,Pae.useState)();return t?o?N?N.scope&&!n?(0,fee.jsx)(bgi,{onSubmit:a}):N.issues&&!A?(0,fee.jsx)(fgi,{onSubmit:f}):N.body&&!I?(0,fee.jsx)(dgi,{onSubmit:C}):N.breaking&&!b?(0,fee.jsx)(pgi,{onSubmit:E}):(0,fee.jsx)(pRa,{type:t,scope:n,subject:o,issues:A,body:I,breaking:b,skipci:N.skipci,onSubmit:e}):(0,fee.jsx)(ggi,{onSubmit:B}):(0,fee.jsx)(Egi,{onSubmit:l}):(0,fee.jsx)(wgi,{onSubmit:r})};var hSr=xt(Wc(),1),fRa=({commit:e,useSubmit:t})=>{let{stdin:r}=(0,Ggi.useStdin)();return t(e),(0,Fgi.useEffect)(()=>{r?.emit("keypress","",{name:"return"})},[r]),null},IRa=({useSubmit:e})=>{let[t,r]=(0,Zgi.useState)();return t?(0,hSr.jsx)(fRa,{commit:t,useSubmit:e}):(0,hSr.jsx)(Rgi,{onSubmit:r})},C_t=class extends Ngi.BaseCommand{static paths=[["commit","message"]];args=sA.Rest({required:0});async execute(){let[t,r]=this.args;if(r)return 0;if(!t)throw new Error("Commit edit message file required.");let n=(0,xgi.forceStdinTty)(),a=await(0,kgi.renderForm)(IRa,{},{stdin:process.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return a&&await Dgi.xfs.writeFilePromise(t,this.formatCommit(a)),n&&process.stdin.destroy(),a?0:1}formatCommit(t){let r={trim:!0,cut:!1,newline:` +`,indent:"",width:100},n=`${t.type}${t.scope?`(${t.scope})`:""}: ${t.subject}`;t.skipci&&(n+=" [skip ci]");let a=t.body?(0,m_t.default)(t.body,r):!1,o=t.breaking?(0,m_t.default)(`BREAKING CHANGE: ${t.breaking.trim().replace(/^BREAKING CHANGE: /,"")}`,r):!1,l=t.issues?(0,m_t.default)(t.issues,r):!1;return[n,a,o,l].filter(Boolean).join(` -`)}};var bhi=Nt(dl(),1);Rl();import{execSync as yhi}from"node:child_process";var Chi=Nt(fT(),1);var Dgi=Nt(fT(),1);var kRa=(0,Dgi.default)("lint-staged:execGit"),xRa=["-c","submodule.recurse=false"],GRa=[...xRa],zZ=async(e,t={})=>{kRa("Running git command",e);try{let{stdout:r}=await uee("git",GRa.concat(e),{...t,all:!0,cwd:t.cwd||process.cwd(),stdin:"ignore"});return r}catch({all:r}){throw new Error(r)}};import{inspect as vDa}from"node:util";var Ggi=Nt(xgi(),1);var Fgi=Ggi.default;import*as w_t from"tty";var{env:Pae={},argv:Lgi=[],platform:LRa=""}=typeof process>"u"?{}:process,VRa="NO_COLOR"in Pae||Lgi.includes("--no-color"),WRa="FORCE_COLOR"in Pae||Lgi.includes("--color"),ORa=LRa==="win32",Vgi=Pae.TERM==="dumb",PRa=w_t&&w_t.isatty&&w_t.isatty(1)&&Pae.TERM&&!Vgi,MRa="CI"in Pae&&("GITHUB_ACTIONS"in Pae||"GITLAB_CI"in Pae||"CIRCLECI"in Pae),HRa=!VRa&&(WRa||ORa&&!Vgi||PRa||MRa),Wgi=(e,t,r,n,a=t.substring(0,e)+n,o=t.substring(e+r.length),l=o.indexOf(r))=>a+(l<0?o:Wgi(l,o,r,n)),YRa=(e,t,r,n,a)=>e<0?r+t+n:r+Wgi(e,t,n,a)+n,QRa=(e,t,r=e,n=e.length+1)=>a=>a||!(a===""||a===void 0)?YRa((""+a).indexOf(t,n),a,e,t,r):"",Th=(e,t,r)=>QRa(`\x1B[${e}m`,`\x1B[${t}m`,r),Zgi={reset:Th(0,0),bold:Th(1,22,"\x1B[22m\x1B[1m"),dim:Th(2,22,"\x1B[22m\x1B[2m"),italic:Th(3,23),underline:Th(4,24),inverse:Th(7,27),hidden:Th(8,28),strikethrough:Th(9,29),black:Th(30,39),red:Th(31,39),green:Th(32,39),yellow:Th(33,39),blue:Th(34,39),magenta:Th(35,39),cyan:Th(36,39),white:Th(37,39),gray:Th(90,39),bgBlack:Th(40,49),bgRed:Th(41,49),bgGreen:Th(42,49),bgYellow:Th(43,49),bgBlue:Th(44,49),bgMagenta:Th(45,49),bgCyan:Th(46,49),bgWhite:Th(47,49),blackBright:Th(90,39),redBright:Th(91,39),greenBright:Th(92,39),yellowBright:Th(93,39),blueBright:Th(94,39),magentaBright:Th(95,39),cyanBright:Th(96,39),whiteBright:Th(97,39),bgBlackBright:Th(100,49),bgRedBright:Th(101,49),bgGreenBright:Th(102,49),bgYellowBright:Th(103,49),bgBlueBright:Th(104,49),bgMagentaBright:Th(105,49),bgCyanBright:Th(106,49),bgWhiteBright:Th(107,49)},_Sr=({useColor:e=HRa}={})=>e?Zgi:Object.keys(Zgi).reduce((t,r)=>({...t,[r]:String}),{}),{reset:TIu,bold:RIu,dim:NIu,italic:DIu,underline:kIu,inverse:xIu,hidden:GIu,strikethrough:FIu,black:ZIu,red:LIu,green:VIu,yellow:WIu,blue:OIu,magenta:PIu,cyan:MIu,white:HIu,gray:YIu,bgBlack:QIu,bgRed:XIu,bgGreen:JIu,bgYellow:UIu,bgBlue:KIu,bgMagenta:jIu,bgCyan:zIu,bgWhite:qIu,blackBright:$Iu,redBright:ehu,greenBright:thu,yellowBright:rhu,blueBright:nhu,magentaBright:ihu,cyanBright:shu,whiteBright:ohu,bgBlackBright:ahu,bgRedBright:chu,bgGreenBright:lhu,bgYellowBright:uhu,bgBlueBright:ghu,bgMagentaBright:Ahu,bgCyanBright:dhu,bgWhiteBright:phu}=_Sr();var KAi=Nt(Pgi(),1);import{format as aDa}from"util";import{EOL as xAi}from"os";import{StringDecoder as cDa}from"string_decoder";import{EOL as W_t}from"os";import{Writable as lDa}from"stream";import{EOL as O_t}from"os";import{randomUUID as bDa}from"crypto";var nDa=Object.defineProperty,Rp=(e,t)=>nDa(e,"name",{value:t,configurable:!0}),DAi="\x1B[",kAi={CURSOR_HIDE:DAi+"?25l",CURSOR_SHOW:DAi+"?25h"};var VAi=(e=>(e.WAITING="WAITING",e.STARTED="STARTED",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.SKIPPED="SKIPPED",e.ROLLING_BACK="ROLLING_BACK",e.ROLLED_BACK="ROLLED_BACK",e.RETRY="RETRY",e.PAUSED="PAUSED",e.PROMPT="PROMPT",e.PROMPT_COMPLETED="PROMPT_COMPLETED",e.PROMPT_FAILED="PROMPT_FAILED",e))(VAi||{}),WAi=class{static{Rp(this,"EventManager")}emitter=new Fgi;emit(e,t){this.emitter.emit(e,t)}on(e,t){this.emitter.addListener(e,t)}once(e,t){this.emitter.once(e,t)}off(e,t){this.emitter.off(e,t)}complete(){this.emitter.removeAllListeners()}},Smu=class{static{Rp(this,"BaseEventMap")}};function OAi(e){return!!e&&typeof e=="object"&&typeof e.subscribe=="function"}Rp(OAi,"isObservable");function PAi(e){return!!e&&typeof e=="object"&&e.readable===!0&&typeof e.read=="function"&&typeof e.on=="function"}Rp(PAi,"isReadable");function QSr(){return!!process.env.LISTR_FORCE_UNICODE||process.platform!=="win32"||!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"}Rp(QSr,"isUnicodeSupported");var iDa="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+",sDa=/\u0007/;function lRe(e){return String(e).replace(new RegExp(iDa,"gmi"),"").replace(new RegExp(sDa,"gmi"),"").trim()}Rp(lRe,"cleanseAnsi");var U0=_Sr();function WSr(e,t){return e.replace(/^(?!\s*$)/gm," ".repeat(t))}Rp(WSr,"indent");var MAi={warning:"\u26A0",cross:"\u2716",arrowDown:"\u2193",tick:"\u2714",arrowRight:"\u2192",pointer:"\u276F",checkboxOn:"\u2612",arrowLeft:"\u2190",squareSmallFilled:"\u25FC",pointerSmall:"\u203A"},oDa={...MAi,warning:"\u203C",cross:"\xD7",tick:"\u221A",pointer:">",checkboxOn:"[\xD7]",squareSmallFilled:"\u25A0"},ab=QSr()?MAi:oDa;function cRe(e,...t){return aDa(String(e),...t)}Rp(cRe,"splat");var P_t={icon:{STARTED:ab.pointer,FAILED:ab.cross,SKIPPED:ab.arrowDown,COMPLETED:ab.tick,OUTPUT:ab.pointerSmall,TITLE:ab.arrowRight,RETRY:ab.warning,ROLLBACK:ab.arrowLeft,PAUSED:ab.squareSmallFilled},color:{STARTED:U0.yellow,FAILED:U0.red,SKIPPED:U0.yellow,COMPLETED:U0.green,RETRY:U0.yellowBright,ROLLBACK:U0.redBright,PAUSED:U0.yellowBright}},HAi=["RETRY","ROLLBACK","FAILED"],uRe=class{constructor(e){this.options=e,this.options={useIcons:!0,toStderr:[],...e??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new XSr}static{Rp(this,"ListrLogger")}process;log(e,t,r){let n=this.format(e,t,r);if(this.options.toStderr.includes(e)){this.process.toStderr(n);return}this.process.toStdout(n)}toStdout(e,t,r=!0){this.process.toStdout(this.format(null,e,t),r)}toStderr(e,t,r=!0){this.process.toStderr(this.format(null,e,t),r)}wrap(e,t){return e&&this.applyFormat(`[${e}]`,t)}splat(...e){let t=e.shift()??"";return e.length===0?t:cRe(t,e)}suffix(e,...t){return t.filter(Boolean).forEach(r=>{if(e+=this.spacing(e),typeof r=="string")e+=this.wrap(r);else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e+=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format(...r.args)})}}),e}prefix(e,...t){return t.filter(Boolean).forEach(r=>{if(e=this.spacing(e)+e,typeof r=="string")e=this.wrap(r)+e;else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format()})+e}}),e}fields(e,t){return this.options?.fields?.prefix&&(e=this.prefix(e,...this.options.fields.prefix)),t?.prefix&&(e=this.prefix(e,...t.prefix)),t?.suffix&&(e=this.suffix(e,...t.suffix)),this.options?.fields?.suffix&&(e=this.suffix(e,...this.options.fields.suffix)),e}icon(e,t){if(!e)return null;t||=this.options.icon?.[e];let r=this.options.color?.[e];return t&&r&&(t=r(t)),t}format(e,t,r){return Array.isArray(t)||(t=[t]),t=this.splat(t.shift(),...t).toString().split(xAi).filter(n=>!n||n.trim()!=="").map(n=>this.style(e,this.fields(n,{prefix:Array.isArray(r?.prefix)?r.prefix:[r?.prefix],suffix:Array.isArray(r?.suffix)?r.suffix:[r?.suffix]}))).join(xAi),t}style(e,t){if(!e||!t)return t;let r=this.icon(e,!this.options.useIcons&&this.wrap(e));return r&&(t=r+" "+t),t}applyFormat(e,t){return t?.format?t.format(e):e}spacing(e){return typeof e>"u"||e.trim()===""?"":" "}},OSr=class{constructor(e){this.options=e}static{Rp(this,"ProcessOutputBuffer")}buffer=[];decoder=new cDa;get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(e,...t){let r=t[t.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write(typeof e=="string"?Buffer.from(e,typeof t[0]=="string"?t[0]:void 0):Buffer.from(e))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),typeof r=="function"&&r(),!0}reset(){this.buffer=[]}},GAi=class{constructor(e){this.stream=e,this.method=e.write,this.buffer=new OSr({stream:e})}static{Rp(this,"ProcessOutputStream")}method;buffer;get out(){return Object.assign({},this.stream,{write:this.write.bind(this)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;let e=[...this.buffer.all];return this.buffer.reset(),e}write(...e){return this.method.apply(this.stream,e)}},XSr=class{constructor(e,t,r){this.options=r,this.stream={stdout:new GAi(e??process.stdout),stderr:new GAi(t??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...r}}static{Rp(this,"ProcessOutput")}stream;active;get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(kAi.CURSOR_HIDE),Object.values(this.stream).forEach(e=>e.hijack()),this.active=!0}release(){let e=Object.entries(this.stream).map(([t,r])=>({name:t,buffer:r.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,r)=>t.time-r.time).map(t=>({...t,entry:lRe(t.entry)})).filter(t=>t.entry);e.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(W_t),e.forEach(t=>{(t.stream??this.stdout).write(t.entry+W_t)})),this.stream.stdout.write(kAi.CURSOR_SHOW),this.active=!1}toStdout(e,t=!0){return t&&(e=e+W_t),this.stream.stdout.write(e)}toStderr(e,t=!0){return t&&(e=e+W_t),this.stream.stderr.write(e)}};function YAi(e){let t=new lDa;return t.rows=1/0,t.columns=1/0,t.write=r=>(e(r.toString()),!0),t}Rp(YAi,"createWritable");var Dmu=class{constructor(e,t){this.task=e,this.wrapper=t}static{Rp(this,"ListrPromptAdapter")}state;reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new zAi("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},uDa=class{static{Rp(this,"Spinner")}spinner=QSr()?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(e,t=100){this.id=setInterval(()=>{this.spin(),e&&e()},t)}stop(){clearInterval(this.id)}};var FAi={icon:{SKIPPED_WITH_COLLAPSE:ab.arrowDown,SKIPPED_WITHOUT_COLLAPSE:ab.warning,OUTPUT:ab.pointerSmall,OUTPUT_WITH_BOTTOMBAR:ab.pointerSmall,PENDING:ab.pointer,COMPLETED:ab.tick,COMPLETED_WITH_FAILED_SUBTASKS:ab.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:ab.squareSmallFilled,RETRY:ab.warning,ROLLING_BACK:ab.warning,ROLLED_BACK:ab.arrowLeft,FAILED:ab.cross,FAILED_WITH_SUBTASKS:ab.pointer,WAITING:ab.squareSmallFilled,PAUSED:ab.squareSmallFilled},color:{SKIPPED_WITH_COLLAPSE:U0.yellow,SKIPPED_WITHOUT_COLLAPSE:U0.yellow,PENDING:U0.yellow,COMPLETED:U0.green,COMPLETED_WITH_FAILED_SUBTASKS:U0.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:U0.red,RETRY:U0.yellowBright,ROLLING_BACK:U0.redBright,ROLLED_BACK:U0.redBright,FAILED:U0.red,FAILED_WITH_SUBTASKS:U0.red,WAITING:U0.dim,PAUSED:U0.yellowBright}};function QAi(e){let t=Math.floor(e/1e3),r=Math.floor(t/60),n;return t===0&&r===0&&(n=`0.${Math.floor(e/100)}s`),t>0&&(n=`${t%60}s`),r>0&&(n=`${r}m${n}`),n}Rp(QAi,"parseTimer");var JSr={condition:!0,field:QAi,format:Rp(()=>U0.dim,"format")};function gDa(){let e=new Date;return String(e.getHours()).padStart(2,"0")+":"+String(e.getMinutes()).padStart(2,"0")+":"+String(e.getSeconds()).padStart(2,"0")}Rp(gDa,"parseTimestamp");var ADa=class PSr{constructor(t,r,n){this.tasks=t,this.options=r,this.events=n,this.options={...PSr.rendererOptions,...this.options,icon:{...FAi.icon,...r?.icon??{}},color:{...FAi.color,...r?.color??{}}},this.spinner=this.options.spinner??new uDa,this.logger=this.options.logger??new uRe({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}static{Rp(this,"DefaultRenderer")}static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...JSr,format:Rp(()=>U0.yellowBright,"format")}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};async render(){let{createLogUpdate:t}=await Promise.resolve().then(()=>(EAi(),bAi)),{default:r}=await Promise.resolve().then(()=>(NAi(),RAi)),{default:n}=await Promise.resolve().then(()=>(NSr(),hAi));this.updater=t(this.logger.process.stdout),this.truncate=r,this.wrap=n,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",()=>{this.update()})}update(){this.updater(this.create())}end(){this.spinner.stop(),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};let r=[],n=this.renderer(this.tasks),a=this.renderBottomBar(),o=this.renderPrompt();return t.tasks&&n.length>0&&r.push(...n),t.bottomBar&&a.length>0&&(r.length>0&&r.push(""),r.push(...a)),t.prompt&&o.length>0&&(r.length>0&&r.push(""),r.push(...o)),r.join(O_t)}style(t,r=!1){let n=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(r||n.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(n.collapseSkips===!1)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(r)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&n.showSubtasks!==!1&&!t.subtasks.every(a=>!a.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(a=>a.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,r,n){if(t.trim()==="")return[];r&&(t=r+" "+t);let a,o=(process.stdout.columns??80)-n*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":a=t.split(O_t).map((l,A)=>this.truncate(this.indent(l,A),o));break;case"wrap":a=this.wrap(t,o,{hard:!0}).split(O_t).map((l,A)=>this.indent(l,A));break;default:throw new ZAi("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(a=a.filter(Boolean)),a.map(l=>WSr(l,n*this.options.indentation))}shouldOutputToOutputBar(t){let r=this.cache.rendererTaskOptions.get(t.id).outputBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1}shouldOutputToBottomBar(t){let r=this.cache.rendererTaskOptions.get(t.id).bottomBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1||!t.hasTitle()}renderer(t,r=0){return t.flatMap(n=>{if(!n.isEnabled())return[];if(this.cache.render.has(n.id))return this.cache.render.get(n.id);this.calculate(n),this.setupBuffer(n);let a=this.cache.rendererOptions.get(n.id),o=this.cache.rendererTaskOptions.get(n.id),l=[];if(n.isPrompt()){if(this.activePrompt&&this.activePrompt!==n.id)throw new ZAi("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(n.on("PROMPT",A=>{let f=lRe(A);f&&(this.prompt=f)}),n.on("STATE",A=>{(A==="PROMPT_COMPLETED"||n.hasFinalized()||n.hasReset())&&(this.prompt=null,this.activePrompt=null,n.off("PROMPT"))}),this.activePrompt=n.id)}if(n.hasTitle()&&(t.some(A=>A.hasFailed())&&!n.hasFailed()&&n.options.exitOnError!==!1&&!(n.isCompleted()||n.isSkipped())?l.push(...this.format(n.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),r)):n.hasFailed()&&a.collapseErrors?l.push(...this.format(!n.hasSubtasks()&&n.message.error&&a.showErrorMessage?n.message.error:n.title,this.style(n),r)):n.isSkipped()&&a.collapseSkips?l.push(...this.format(this.logger.suffix(n.message.skip&&a.showSkipMessage?n.message.skip:n.title,{field:"SKIPPED",condition:a.suffixSkips,format:Rp(()=>U0.dim,"format")}),this.style(n),r)):n.isRetrying()?l.push(...this.format(this.logger.suffix(n.title,{field:`RETRY:${n.message.retry.count}`,format:Rp(()=>U0.yellow,"format"),condition:a.suffixRetries}),this.style(n),r)):n.isCompleted()&&n.hasTitle()&&eme(o.timer?.condition,n.message.duration)?l.push(...this.format(this.logger.suffix(n?.title,{...o.timer,args:[n.message.duration]}),this.style(n),r)):n.isPaused()?l.push(...this.format(this.logger.suffix(n.title,{...a.pausedTimer,args:[n.message.paused-Date.now()]}),this.style(n),r)):l.push(...this.format(n.title,this.style(n),r))),(!n.hasSubtasks()||!a.showSubtasks)&&(n.hasFailed()&&a.collapseErrors===!1&&(a.showErrorMessage||!a.showSubtasks)?l.push(...this.dump(n,r,"FAILED")):n.isSkipped()&&a.collapseSkips===!1&&(a.showSkipMessage||!a.showSubtasks)&&l.push(...this.dump(n,r,"SKIPPED"))),(n.isPending()||o.persistentOutput)&&l.push(...this.renderOutputBar(n,r)),a.showSubtasks!==!1&&n.hasSubtasks()&&(n.isPending()||n.hasFinalized()&&!n.hasTitle()||n.isCompleted()&&a.collapseSubtasks===!1&&!n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!0)||n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!1)||n.subtasks.some(A=>A.hasFailed())||n.subtasks.some(A=>A.hasRolledBack()))){let A=n.hasTitle()?r+1:r,f=this.renderer(n.subtasks,A);l.push(...f)}return n.hasFinalized()&&(o.persistentOutput||(this.buffer.bottom.delete(n.id),this.buffer.output.delete(n.id))),n.isClosed()&&(this.cache.render.set(n.id,l),this.reset(n)),l})}renderOutputBar(t,r){let n=this.buffer.output.get(t.id);return n?n.all.flatMap(a=>this.dump(t,r,"OUTPUT",a.entry)):[]}renderBottomBar(){return this.buffer.bottom.size===0?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,r)=>t.time-r.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...PSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;let r=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new OSr({limit:typeof r.bottomBar=="number"?r.bottomBar:1})),t.on("OUTPUT",n=>{let a=this.dump(t,-1,"OUTPUT",n);this.buffer.bottom.get(t.id).write(a.join(O_t))}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.bottom.delete(t.id);break}})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new OSr({limit:typeof r.outputBar=="number"?r.outputBar:1})),t.on("OUTPUT",n=>{this.buffer.output.get(t.id).write(n)}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.output.delete(t.id);break}}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,r,n="OUTPUT",a){if(!a)switch(n){case"OUTPUT":a=t.output;break;case"SKIPPED":a=t.message.skip;break;case"FAILED":a=t.message.error;break}return t.hasTitle()&&n==="FAILED"&&a===t.title||typeof a!="string"?[]:(n==="OUTPUT"&&(a=lRe(a)),this.format(a,this.style(t,!0),r+1))}indent(t,r){return r>0?WSr(t.trim(),this.options.indentation):t.trim()}},dDa=class{constructor(e,t){this.tasks=e,this.options=t}static{Rp(this,"SilentRenderer")}static nonTTY=!0;static rendererOptions;static rendererTaskOptions;render(){}end(){}},pDa=class MSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...MSr.rendererOptions,...r,icon:{...P_t.icon,...r?.icon??{}},color:{...P_t.color,...r?.color??{}}},this.logger=this.options.logger??new uRe({useIcons:!0,toStderr:HAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Rp(this,"SimpleRenderer")}static nonTTY=!0;static rendererOptions={pausedTimer:{...JSr,field:Rp(t=>`PAUSED:${t}`,"field"),format:Rp(()=>U0.yellowBright,"format")}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle())if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a?.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}else o==="PROMPT"?(this.logger.process.hijack(),r.on("PROMPT",l=>{this.logger.process.toStderr(l,!1)})):o==="PROMPT_COMPLETED"&&(r.off("PROMPT"),this.logger.process.release())}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("MESSAGE",o=>{if(o.error)this.logger.log("FAILED",r.title,{suffix:{field:`FAILED: ${o.error}`,format:Rp(()=>U0.red,"format")}});else if(o.skip)this.logger.log("SKIPPED",r.title,{suffix:{field:`SKIPPED: ${o.skip}`,format:Rp(()=>U0.yellow,"format")}});else if(o.rollback)this.logger.log("ROLLBACK",r.title,{suffix:{field:`ROLLBACK: ${o.rollback}`,format:Rp(()=>U0.red,"format")}});else if(o.retry)this.logger.log("RETRY",r.title,{suffix:{field:`RETRY:${o.retry.count}`,format:Rp(()=>U0.red,"format")}});else if(o.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...MSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},fDa=class{constructor(e){this.options=e}static{Rp(this,"TestRendererSerializer")}serialize(e,t,r){return JSON.stringify(this.generate(e,t,r))}generate(e,t,r){let n={event:e,data:t};if(typeof this.options?.task!="boolean"){let a=Object.fromEntries(this.options.task.map(o=>{let l=r[o];return typeof l=="function"?[o,l.call(r)]:[o,l]}));Object.keys(r).length>0&&(n.task=a)}return n}},IDa=class XAi{constructor(t,r){this.tasks=t,this.options=r,this.options={...XAi.rendererOptions,...this.options},this.logger=this.options.logger??new uRe({useIcons:!1}),this.serializer=new fDa(this.options)}static{Rp(this,"TestRenderer")}static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(VAi),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isSkipped","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.options.subtasks&&r.on("SUBTASK",n=>{this.renderer(n)}),this.options.state&&r.on("STATE",n=>{this.logger.toStdout(this.serializer.serialize("STATE",n,r))}),this.options.output&&r.on("OUTPUT",n=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",n,r))}),this.options.prompt&&r.on("PROMPT",n=>{this.logger.toStdout(this.serializer.serialize("PROMPT",n,r))}),this.options.title&&r.on("TITLE",n=>{this.logger.toStdout(this.serializer.serialize("TITLE",n,r))}),r.on("MESSAGE",n=>{let a=Object.fromEntries(Object.entries(n).map(([o,l])=>{if(this.options.messages.includes(o))return[o,l]}).filter(Boolean));if(Object.keys(a).length>0){let o=this.serializer.serialize("MESSAGE",a,r);this.options.messagesToStderr.some(l=>Object.keys(a).includes(l))?this.logger.toStderr(o):this.logger.toStdout(o)}})})}},hDa=class HSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...HSr.rendererOptions,...this.options,icon:{...P_t.icon,...r?.icon??{}},color:{...P_t.color,...r?.color??{}}},this.logger=this.options.logger??new uRe({useIcons:!1,toStderr:HAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Rp(this,"VerboseRenderer")}static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...JSr,format:Rp(()=>U0.yellowBright,"format")}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle()){if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}}}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("PROMPT",o=>{let l=lRe(o);l&&this.logger.log("PROMPT",l)}),this.options?.logTitleChange!==!1&&r.on("TITLE",o=>{this.logger.log("TITLE",o)}),r.on("MESSAGE",o=>{if(o?.error)this.logger.log("FAILED",o.error);else if(o?.skip)this.logger.log("SKIPPED",o.skip);else if(o?.rollback)this.logger.log("ROLLBACK",o.rollback);else if(o?.retry)this.logger.log("RETRY",r.title,{suffix:o.retry.count.toString()});else if(o?.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...HSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},VSr={default:ADa,simple:pDa,verbose:hDa,test:IDa,silent:dDa};function JAi(e){return process.stdout.isTTY===!0||e.nonTTY===!0}Rp(JAi,"isRendererSupported");function lXe(e){return typeof e=="string"?VSr[e]??VSr.default:typeof e=="function"?e:VSr.default}Rp(lXe,"getRendererClass");function UAi(e){if(eme(e?.silentRendererCondition))return{renderer:lXe("silent"),selection:"SILENT"};let t={renderer:lXe(e.renderer),options:e.rendererOptions,selection:"PRIMARY"};return!JAi(t.renderer)||eme(e?.fallbackRendererCondition)?{renderer:lXe(e.fallbackRenderer),options:e.fallbackRendererOptions,selection:"SECONDARY"}:t}Rp(UAi,"getRenderer");function eme(e,...t){return typeof e=="function"?e(...t):e}Rp(eme,"assertFunctionOrSelf");var mDa=(0,KAi.default)({circles:!0});function YSr(e){return mDa(e)}Rp(YSr,"cloneObject");var CDa=class{static{Rp(this,"Concurrency")}concurrency;count;queue;constructor(e){this.concurrency=e.concurrency,this.count=0,this.queue=new Set}add(e){return this.count{let r=Rp(()=>t(this.run(e)),"callback");this.queue.add(r)})}flush(){for(let e of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(e),e()}}run(e){this.count++;let t=e(),r=Rp(()=>{this.count--,this.flush()},"cleanup");return t.then(r,()=>{this.queue.clear()}),t}};function jAi(e){return new Promise(t=>{setTimeout(t,e)})}Rp(jAi,"delay");var _Da=class extends Error{constructor(e,t,r){super(e.message),this.error=e,this.type=t,this.task=r,this.name="ListrError",this.path=r.path,r?.options.collectErrors==="full"&&(this.task=YSr(r),this.ctx=YSr(r.listr.ctx)),this.stack=e?.stack}static{Rp(this,"ListrError")}path;ctx},ZAi=class extends Error{static{Rp(this,"ListrRendererError")}},zAi=class extends Error{static{Rp(this,"PromptError")}},yDa=class{constructor(e){this.task=e}static{Rp(this,"TaskWrapper")}get title(){return this.task.title}set title(e){e=Array.isArray(e)?e:[e],this.task.title$=cRe(e.shift(),...e)}get output(){return this.task.output}set output(e){e=Array.isArray(e)?e:[e],this.task.output$=cRe(e.shift(),...e)}set promptOutput(e){this.task.promptOutput$=e}newListr(e,t){let r;return typeof e=="function"?r=e(this):r=e,new M_t(r,t,this.task)}report(e,t){this.task.options.collectErrors!==!1&&this.task.listr.errors.push(new _Da(e,t,this.task)),this.task.message$={error:e.message??this.task?.title}}skip(e,...t){this.task.state$="SKIPPED",e&&(this.task.message$={skip:e?cRe(e,...t):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(e){return this.task.prompt?this.task.prompt:new e(this.task,this)}stdout(e){return YAi(t=>{switch(e){case"PROMPT":this.promptOutput=t;break;default:this.output=t}})}run(e){return this.task.run(e,this)}},EDa=class extends WAi{static{Rp(this,"ListrTaskEventManager")}},SDa=class extends EDa{constructor(e,t,r,n,a){if(super(),this.listr=e,this.task=t,this.options=r,this.rendererOptions=n,this.rendererTaskOptions=a,t.title){let o=Array.isArray(t?.title)?t.title:[t.title];this.title=cRe(o.shift(),...o),this.initialTitle=this.title}this.taskFn=t.task,this.parent=e.parentTask}static{Rp(this,"Task")}id=bDa();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;set state$(e){if(this.state=e,this.emit("STATE",e),this.hasSubtasks()&&this.hasFailed())for(let t of this.subtasks)t.state==="STARTED"&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(e){this.output=e,this.emit("OUTPUT",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(e){this.emit("PROMPT",e),lRe(e)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(e){this.message={...this.message,...e},this.emit("MESSAGE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(e){this.title=e,this.emit("TITLE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(e){return this.state==="WAITING"&&(this.enabled=await eme(this.task?.enabled??!0,e),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return this.state==="STARTED"}isSkipped(){return this.state==="SKIPPED"}isCompleted(){return this.state==="COMPLETED"}hasFailed(){return this.state==="FAILED"}isRollingBack(){return this.state==="ROLLING_BACK"}hasRolledBack(){return this.state==="ROLLED_BACK"}isRetrying(){return this.state==="RETRY"}hasReset(){return this.state==="RETRY"||this.state==="ROLLING_BACK"}isEnabled(){return this.enabled}hasTitle(){return typeof this?.title=="string"}isPrompt(){return this.state==="PROMPT"||this.state==="PROMPT_COMPLETED"}isPaused(){return this.state==="PAUSED"}isClosed(){return this.closed}async pause(e){let t=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+e},await jAi(e),this.state$=t,this.message$={paused:null}}async run(e,t){let r=Rp(o=>(o instanceof M_t?(o.options={...this.options,...o.options},o.rendererClass=lXe("silent"),this.subtasks=o.tasks,o.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),o=o.run(e)):o instanceof Promise?o=o.then(r):PAi(o)?o=new Promise((l,A)=>{o.on("data",f=>{this.output$=f.toString()}),o.on("error",f=>A(f)),o.on("end",()=>l(null))}):OAi(o)&&(o=new Promise((l,A)=>{o.subscribe({next:Rp(f=>{this.output$=f},"next"),error:A,complete:l})})),o),"handleResult"),n=Date.now();this.state$="STARTED";let a=await eme(this.task?.skip??!1,e);if(a){typeof a=="string"?this.message$={skip:a}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},this.state$="SKIPPED";return}try{let o=typeof this.task?.retry=="number"&&this.task.retry>0?this.task.retry+1:typeof this.task?.retry=="object"&&this.task.retry.tries>0?this.task.retry.tries+1:1,l=typeof this.task.retry=="object"&&this.task.retry.delay;for(let A=1;A<=o;A++)try{await r(this.taskFn(e,t));break}catch(f){if(A!==o)this.retry={count:A,error:f},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,t.report(f,"WILL_RETRY"),this.state$="RETRY",l&&await this.pause(l);else throw f}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-n},this.state$="COMPLETED")}catch(o){if(this.prompt instanceof zAi&&(o=this.prompt),this.task?.rollback){t.report(o,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(e,t),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(l){throw this.state$="FAILED",t.report(l,"HAS_FAILED_TO_ROLLBACK"),this.close(),l}if(this.listr.options?.exitAfterRollback!==!1)throw this.close(),o}else{if(this.state$="FAILED",this.listr.options.exitOnError!==!1&&await eme(this.task?.exitOnError,e)!==!1)throw t.report(o,"HAS_FAILED"),this.close(),o;this.hasSubtasks()||t.report(o,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}},LAi=class extends WAi{static{Rp(this,"ListrEventManager")}},M_t=class{constructor(e,t,r){this.task=e,this.options=t,this.parentTask=r,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...t},this.options.concurrent===!0?this.options.concurrent=1/0:typeof this.options.concurrent!="number"&&(this.options.concurrent=1),this.concurrency=new CDa({concurrency:this.options.concurrent}),r&&(this.path=[...r.listr.path,r.title],this.errors=r.listr.errors),this.parentTask?.listr.events instanceof LAi?this.events=this.parentTask.listr.events:this.events=new LAi;let n=UAi({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=n.renderer,this.rendererClassOptions=n.options,this.rendererSelection=n.selection,this.add(e??[]),this.options.registerSignalListeners&&(this.boundSignalHandler=this.signalHandler.bind(this),process.once("SIGINT",this.boundSignalHandler).setMaxListeners(0)),(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1")}static{Rp(this,"Listr")}tasks=[];errors=[];ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;concurrency;renderer;isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(e){this.tasks.push(...this.generate(e))}async run(e){this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??e??{},await Promise.all(this.tasks.map(t=>t.check(this.ctx)));try{await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t)))),this.renderer.end(),this.removeSignalHandler()}catch(t){if(this.options.exitOnError!==!1)throw this.renderer.end(t),this.removeSignalHandler(),t}return this.ctx}generate(e){return e=Array.isArray(e)?e:[e],e.map(t=>{let r;return this.rendererSelection==="PRIMARY"?r=t.rendererOptions:this.rendererSelection==="SECONDARY"&&(r=t.fallbackRendererOptions),new SDa(this,t,this.options,this.rendererClassOptions,r)})}async runTask(e){if(await e.check(this.ctx))return new yDa(e).run(this.ctx)}signalHandler(){this.tasks?.forEach(async e=>{e.isPending()&&(e.state$="FAILED")}),this.isRoot()&&(this.renderer.end(new Error("Interrupted.")),process.exit(127))}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}};var uXe=hp.blue(ab.arrowRight),zM=hp.redBright(ab.cross),gRe=hp.yellow(ab.warning);var gXe=(e,t,r)=>`${hp.redBright(`${zM} Validation Error:`)} +`)}};var xhi=xt(sl(),1);vl();import{execSync as khi}from"node:child_process";var Nhi=xt(IT(),1);var Mgi=xt(IT(),1);var LRa=(0,Mgi.default)("lint-staged:execGit"),VRa=["-c","submodule.recurse=false"],WRa=[...VRa],qZ=async(e,t={})=>{LRa("Running git command",e);try{let{stdout:r}=await gee("git",WRa.concat(e),{...t,all:!0,cwd:t.cwd||process.cwd(),stdin:"ignore"});return r}catch({all:r}){throw new Error(r)}};import{inspect as NDa}from"node:util";var Qgi=xt(Ygi(),1);var Xgi=Qgi.default;import*as v_t from"tty";var{env:Mae={},argv:Ugi=[],platform:MRa=""}=typeof process>"u"?{}:process,HRa="NO_COLOR"in Mae||Ugi.includes("--no-color"),YRa="FORCE_COLOR"in Mae||Ugi.includes("--color"),QRa=MRa==="win32",Kgi=Mae.TERM==="dumb",XRa=v_t&&v_t.isatty&&v_t.isatty(1)&&Mae.TERM&&!Kgi,JRa="CI"in Mae&&("GITHUB_ACTIONS"in Mae||"GITLAB_CI"in Mae||"CIRCLECI"in Mae),URa=!HRa&&(YRa||QRa&&!Kgi||XRa||JRa),jgi=(e,t,r,n,a=t.substring(0,e)+n,o=t.substring(e+r.length),l=o.indexOf(r))=>a+(l<0?o:jgi(l,o,r,n)),KRa=(e,t,r,n,a)=>e<0?r+t+n:r+jgi(e,t,n,a)+n,jRa=(e,t,r=e,n=e.length+1)=>a=>a||!(a===""||a===void 0)?KRa((""+a).indexOf(t,n),a,e,t,r):"",Th=(e,t,r)=>jRa(`\x1B[${e}m`,`\x1B[${t}m`,r),Jgi={reset:Th(0,0),bold:Th(1,22,"\x1B[22m\x1B[1m"),dim:Th(2,22,"\x1B[22m\x1B[2m"),italic:Th(3,23),underline:Th(4,24),inverse:Th(7,27),hidden:Th(8,28),strikethrough:Th(9,29),black:Th(30,39),red:Th(31,39),green:Th(32,39),yellow:Th(33,39),blue:Th(34,39),magenta:Th(35,39),cyan:Th(36,39),white:Th(37,39),gray:Th(90,39),bgBlack:Th(40,49),bgRed:Th(41,49),bgGreen:Th(42,49),bgYellow:Th(43,49),bgBlue:Th(44,49),bgMagenta:Th(45,49),bgCyan:Th(46,49),bgWhite:Th(47,49),blackBright:Th(90,39),redBright:Th(91,39),greenBright:Th(92,39),yellowBright:Th(93,39),blueBright:Th(94,39),magentaBright:Th(95,39),cyanBright:Th(96,39),whiteBright:Th(97,39),bgBlackBright:Th(100,49),bgRedBright:Th(101,49),bgGreenBright:Th(102,49),bgYellowBright:Th(103,49),bgBlueBright:Th(104,49),bgMagentaBright:Th(105,49),bgCyanBright:Th(106,49),bgWhiteBright:Th(107,49)},bSr=({useColor:e=URa}={})=>e?Jgi:Object.keys(Jgi).reduce((t,r)=>({...t,[r]:String}),{}),{reset:Lhu,bold:Vhu,dim:Whu,italic:Ohu,underline:Phu,inverse:Mhu,hidden:Hhu,strikethrough:Yhu,black:Qhu,red:Xhu,green:Jhu,yellow:Uhu,blue:Khu,magenta:jhu,cyan:zhu,white:qhu,gray:$hu,bgBlack:emu,bgRed:tmu,bgGreen:rmu,bgYellow:nmu,bgBlue:imu,bgMagenta:smu,bgCyan:omu,bgWhite:amu,blackBright:cmu,redBright:lmu,greenBright:umu,yellowBright:gmu,blueBright:Amu,magentaBright:dmu,cyanBright:pmu,whiteBright:fmu,bgBlackBright:Imu,bgRedBright:hmu,bgGreenBright:mmu,bgYellowBright:Cmu,bgBlueBright:_mu,bgMagentaBright:ymu,bgCyanBright:bmu,bgWhiteBright:Emu}=bSr();var odi=xt(qgi(),1);import{format as ADa}from"util";import{EOL as YAi}from"os";import{StringDecoder as dDa}from"string_decoder";import{EOL as L_t}from"os";import{Writable as pDa}from"stream";import{EOL as V_t}from"os";import{randomUUID as wDa}from"crypto";var cDa=Object.defineProperty,Rp=(e,t)=>cDa(e,"name",{value:t,configurable:!0}),MAi="\x1B[",HAi={CURSOR_HIDE:MAi+"?25l",CURSOR_SHOW:MAi+"?25h"};var KAi=(e=>(e.WAITING="WAITING",e.STARTED="STARTED",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.SKIPPED="SKIPPED",e.ROLLING_BACK="ROLLING_BACK",e.ROLLED_BACK="ROLLED_BACK",e.RETRY="RETRY",e.PAUSED="PAUSED",e.PROMPT="PROMPT",e.PROMPT_COMPLETED="PROMPT_COMPLETED",e.PROMPT_FAILED="PROMPT_FAILED",e))(KAi||{}),jAi=class{static{Rp(this,"EventManager")}emitter=new Xgi;emit(e,t){this.emitter.emit(e,t)}on(e,t){this.emitter.addListener(e,t)}once(e,t){this.emitter.once(e,t)}off(e,t){this.emitter.off(e,t)}complete(){this.emitter.removeAllListeners()}},xCu=class{static{Rp(this,"BaseEventMap")}};function zAi(e){return!!e&&typeof e=="object"&&typeof e.subscribe=="function"}Rp(zAi,"isObservable");function qAi(e){return!!e&&typeof e=="object"&&e.readable===!0&&typeof e.read=="function"&&typeof e.on=="function"}Rp(qAi,"isReadable");function JSr(){return!!process.env.LISTR_FORCE_UNICODE||process.platform!=="win32"||!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"}Rp(JSr,"isUnicodeSupported");var lDa="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+",uDa=/\u0007/;function aRe(e){return String(e).replace(new RegExp(lDa,"gmi"),"").replace(new RegExp(uDa,"gmi"),"").trim()}Rp(aRe,"cleanseAnsi");var K0=bSr();function PSr(e,t){return e.replace(/^(?!\s*$)/gm," ".repeat(t))}Rp(PSr,"indent");var $Ai={warning:"\u26A0",cross:"\u2716",arrowDown:"\u2193",tick:"\u2714",arrowRight:"\u2192",pointer:"\u276F",checkboxOn:"\u2612",arrowLeft:"\u2190",squareSmallFilled:"\u25FC",pointerSmall:"\u203A"},gDa={...$Ai,warning:"\u203C",cross:"\xD7",tick:"\u221A",pointer:">",checkboxOn:"[\xD7]",squareSmallFilled:"\u25A0"},lb=JSr()?$Ai:gDa;function oRe(e,...t){return ADa(String(e),...t)}Rp(oRe,"splat");var W_t={icon:{STARTED:lb.pointer,FAILED:lb.cross,SKIPPED:lb.arrowDown,COMPLETED:lb.tick,OUTPUT:lb.pointerSmall,TITLE:lb.arrowRight,RETRY:lb.warning,ROLLBACK:lb.arrowLeft,PAUSED:lb.squareSmallFilled},color:{STARTED:K0.yellow,FAILED:K0.red,SKIPPED:K0.yellow,COMPLETED:K0.green,RETRY:K0.yellowBright,ROLLBACK:K0.redBright,PAUSED:K0.yellowBright}},edi=["RETRY","ROLLBACK","FAILED"],cRe=class{constructor(e){this.options=e,this.options={useIcons:!0,toStderr:[],...e??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new USr}static{Rp(this,"ListrLogger")}process;log(e,t,r){let n=this.format(e,t,r);if(this.options.toStderr.includes(e)){this.process.toStderr(n);return}this.process.toStdout(n)}toStdout(e,t,r=!0){this.process.toStdout(this.format(null,e,t),r)}toStderr(e,t,r=!0){this.process.toStderr(this.format(null,e,t),r)}wrap(e,t){return e&&this.applyFormat(`[${e}]`,t)}splat(...e){let t=e.shift()??"";return e.length===0?t:oRe(t,e)}suffix(e,...t){return t.filter(Boolean).forEach(r=>{if(e+=this.spacing(e),typeof r=="string")e+=this.wrap(r);else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e+=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format(...r.args)})}}),e}prefix(e,...t){return t.filter(Boolean).forEach(r=>{if(e=this.spacing(e)+e,typeof r=="string")e=this.wrap(r)+e;else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format()})+e}}),e}fields(e,t){return this.options?.fields?.prefix&&(e=this.prefix(e,...this.options.fields.prefix)),t?.prefix&&(e=this.prefix(e,...t.prefix)),t?.suffix&&(e=this.suffix(e,...t.suffix)),this.options?.fields?.suffix&&(e=this.suffix(e,...this.options.fields.suffix)),e}icon(e,t){if(!e)return null;t||=this.options.icon?.[e];let r=this.options.color?.[e];return t&&r&&(t=r(t)),t}format(e,t,r){return Array.isArray(t)||(t=[t]),t=this.splat(t.shift(),...t).toString().split(YAi).filter(n=>!n||n.trim()!=="").map(n=>this.style(e,this.fields(n,{prefix:Array.isArray(r?.prefix)?r.prefix:[r?.prefix],suffix:Array.isArray(r?.suffix)?r.suffix:[r?.suffix]}))).join(YAi),t}style(e,t){if(!e||!t)return t;let r=this.icon(e,!this.options.useIcons&&this.wrap(e));return r&&(t=r+" "+t),t}applyFormat(e,t){return t?.format?t.format(e):e}spacing(e){return typeof e>"u"||e.trim()===""?"":" "}},MSr=class{constructor(e){this.options=e}static{Rp(this,"ProcessOutputBuffer")}buffer=[];decoder=new dDa;get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(e,...t){let r=t[t.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write(typeof e=="string"?Buffer.from(e,typeof t[0]=="string"?t[0]:void 0):Buffer.from(e))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),typeof r=="function"&&r(),!0}reset(){this.buffer=[]}},QAi=class{constructor(e){this.stream=e,this.method=e.write,this.buffer=new MSr({stream:e})}static{Rp(this,"ProcessOutputStream")}method;buffer;get out(){return Object.assign({},this.stream,{write:this.write.bind(this)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;let e=[...this.buffer.all];return this.buffer.reset(),e}write(...e){return this.method.apply(this.stream,e)}},USr=class{constructor(e,t,r){this.options=r,this.stream={stdout:new QAi(e??process.stdout),stderr:new QAi(t??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...r}}static{Rp(this,"ProcessOutput")}stream;active;get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(HAi.CURSOR_HIDE),Object.values(this.stream).forEach(e=>e.hijack()),this.active=!0}release(){let e=Object.entries(this.stream).map(([t,r])=>({name:t,buffer:r.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,r)=>t.time-r.time).map(t=>({...t,entry:aRe(t.entry)})).filter(t=>t.entry);e.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(L_t),e.forEach(t=>{(t.stream??this.stdout).write(t.entry+L_t)})),this.stream.stdout.write(HAi.CURSOR_SHOW),this.active=!1}toStdout(e,t=!0){return t&&(e=e+L_t),this.stream.stdout.write(e)}toStderr(e,t=!0){return t&&(e=e+L_t),this.stream.stderr.write(e)}};function tdi(e){let t=new pDa;return t.rows=1/0,t.columns=1/0,t.write=r=>(e(r.toString()),!0),t}Rp(tdi,"createWritable");var OCu=class{constructor(e,t){this.task=e,this.wrapper=t}static{Rp(this,"ListrPromptAdapter")}state;reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new cdi("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},fDa=class{static{Rp(this,"Spinner")}spinner=JSr()?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(e,t=100){this.id=setInterval(()=>{this.spin(),e&&e()},t)}stop(){clearInterval(this.id)}};var XAi={icon:{SKIPPED_WITH_COLLAPSE:lb.arrowDown,SKIPPED_WITHOUT_COLLAPSE:lb.warning,OUTPUT:lb.pointerSmall,OUTPUT_WITH_BOTTOMBAR:lb.pointerSmall,PENDING:lb.pointer,COMPLETED:lb.tick,COMPLETED_WITH_FAILED_SUBTASKS:lb.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:lb.squareSmallFilled,RETRY:lb.warning,ROLLING_BACK:lb.warning,ROLLED_BACK:lb.arrowLeft,FAILED:lb.cross,FAILED_WITH_SUBTASKS:lb.pointer,WAITING:lb.squareSmallFilled,PAUSED:lb.squareSmallFilled},color:{SKIPPED_WITH_COLLAPSE:K0.yellow,SKIPPED_WITHOUT_COLLAPSE:K0.yellow,PENDING:K0.yellow,COMPLETED:K0.green,COMPLETED_WITH_FAILED_SUBTASKS:K0.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:K0.red,RETRY:K0.yellowBright,ROLLING_BACK:K0.redBright,ROLLED_BACK:K0.redBright,FAILED:K0.red,FAILED_WITH_SUBTASKS:K0.red,WAITING:K0.dim,PAUSED:K0.yellowBright}};function rdi(e){let t=Math.floor(e/1e3),r=Math.floor(t/60),n;return t===0&&r===0&&(n=`0.${Math.floor(e/100)}s`),t>0&&(n=`${t%60}s`),r>0&&(n=`${r}m${n}`),n}Rp(rdi,"parseTimer");var KSr={condition:!0,field:rdi,format:Rp(()=>K0.dim,"format")};function IDa(){let e=new Date;return String(e.getHours()).padStart(2,"0")+":"+String(e.getMinutes()).padStart(2,"0")+":"+String(e.getSeconds()).padStart(2,"0")}Rp(IDa,"parseTimestamp");var hDa=class HSr{constructor(t,r,n){this.tasks=t,this.options=r,this.events=n,this.options={...HSr.rendererOptions,...this.options,icon:{...XAi.icon,...r?.icon??{}},color:{...XAi.color,...r?.color??{}}},this.spinner=this.options.spinner??new fDa,this.logger=this.options.logger??new cRe({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}static{Rp(this,"DefaultRenderer")}static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...KSr,format:Rp(()=>K0.yellowBright,"format")}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};async render(){let{createLogUpdate:t}=await Promise.resolve().then(()=>(GAi(),xAi)),{default:r}=await Promise.resolve().then(()=>(PAi(),OAi)),{default:n}=await Promise.resolve().then(()=>(kSr(),TAi));this.updater=t(this.logger.process.stdout),this.truncate=r,this.wrap=n,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",()=>{this.update()})}update(){this.updater(this.create())}end(){this.spinner.stop(),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};let r=[],n=this.renderer(this.tasks),a=this.renderBottomBar(),o=this.renderPrompt();return t.tasks&&n.length>0&&r.push(...n),t.bottomBar&&a.length>0&&(r.length>0&&r.push(""),r.push(...a)),t.prompt&&o.length>0&&(r.length>0&&r.push(""),r.push(...o)),r.join(V_t)}style(t,r=!1){let n=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(r||n.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(n.collapseSkips===!1)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(r)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&n.showSubtasks!==!1&&!t.subtasks.every(a=>!a.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(a=>a.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,r,n){if(t.trim()==="")return[];r&&(t=r+" "+t);let a,o=(process.stdout.columns??80)-n*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":a=t.split(V_t).map((l,A)=>this.truncate(this.indent(l,A),o));break;case"wrap":a=this.wrap(t,o,{hard:!0}).split(V_t).map((l,A)=>this.indent(l,A));break;default:throw new JAi("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(a=a.filter(Boolean)),a.map(l=>PSr(l,n*this.options.indentation))}shouldOutputToOutputBar(t){let r=this.cache.rendererTaskOptions.get(t.id).outputBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1}shouldOutputToBottomBar(t){let r=this.cache.rendererTaskOptions.get(t.id).bottomBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1||!t.hasTitle()}renderer(t,r=0){return t.flatMap(n=>{if(!n.isEnabled())return[];if(this.cache.render.has(n.id))return this.cache.render.get(n.id);this.calculate(n),this.setupBuffer(n);let a=this.cache.rendererOptions.get(n.id),o=this.cache.rendererTaskOptions.get(n.id),l=[];if(n.isPrompt()){if(this.activePrompt&&this.activePrompt!==n.id)throw new JAi("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(n.on("PROMPT",A=>{let f=aRe(A);f&&(this.prompt=f)}),n.on("STATE",A=>{(A==="PROMPT_COMPLETED"||n.hasFinalized()||n.hasReset())&&(this.prompt=null,this.activePrompt=null,n.off("PROMPT"))}),this.activePrompt=n.id)}if(n.hasTitle()&&(t.some(A=>A.hasFailed())&&!n.hasFailed()&&n.options.exitOnError!==!1&&!(n.isCompleted()||n.isSkipped())?l.push(...this.format(n.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),r)):n.hasFailed()&&a.collapseErrors?l.push(...this.format(!n.hasSubtasks()&&n.message.error&&a.showErrorMessage?n.message.error:n.title,this.style(n),r)):n.isSkipped()&&a.collapseSkips?l.push(...this.format(this.logger.suffix(n.message.skip&&a.showSkipMessage?n.message.skip:n.title,{field:"SKIPPED",condition:a.suffixSkips,format:Rp(()=>K0.dim,"format")}),this.style(n),r)):n.isRetrying()?l.push(...this.format(this.logger.suffix(n.title,{field:`RETRY:${n.message.retry.count}`,format:Rp(()=>K0.yellow,"format"),condition:a.suffixRetries}),this.style(n),r)):n.isCompleted()&&n.hasTitle()&&tme(o.timer?.condition,n.message.duration)?l.push(...this.format(this.logger.suffix(n?.title,{...o.timer,args:[n.message.duration]}),this.style(n),r)):n.isPaused()?l.push(...this.format(this.logger.suffix(n.title,{...a.pausedTimer,args:[n.message.paused-Date.now()]}),this.style(n),r)):l.push(...this.format(n.title,this.style(n),r))),(!n.hasSubtasks()||!a.showSubtasks)&&(n.hasFailed()&&a.collapseErrors===!1&&(a.showErrorMessage||!a.showSubtasks)?l.push(...this.dump(n,r,"FAILED")):n.isSkipped()&&a.collapseSkips===!1&&(a.showSkipMessage||!a.showSubtasks)&&l.push(...this.dump(n,r,"SKIPPED"))),(n.isPending()||o.persistentOutput)&&l.push(...this.renderOutputBar(n,r)),a.showSubtasks!==!1&&n.hasSubtasks()&&(n.isPending()||n.hasFinalized()&&!n.hasTitle()||n.isCompleted()&&a.collapseSubtasks===!1&&!n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!0)||n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!1)||n.subtasks.some(A=>A.hasFailed())||n.subtasks.some(A=>A.hasRolledBack()))){let A=n.hasTitle()?r+1:r,f=this.renderer(n.subtasks,A);l.push(...f)}return n.hasFinalized()&&(o.persistentOutput||(this.buffer.bottom.delete(n.id),this.buffer.output.delete(n.id))),n.isClosed()&&(this.cache.render.set(n.id,l),this.reset(n)),l})}renderOutputBar(t,r){let n=this.buffer.output.get(t.id);return n?n.all.flatMap(a=>this.dump(t,r,"OUTPUT",a.entry)):[]}renderBottomBar(){return this.buffer.bottom.size===0?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,r)=>t.time-r.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...HSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;let r=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new MSr({limit:typeof r.bottomBar=="number"?r.bottomBar:1})),t.on("OUTPUT",n=>{let a=this.dump(t,-1,"OUTPUT",n);this.buffer.bottom.get(t.id).write(a.join(V_t))}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.bottom.delete(t.id);break}})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new MSr({limit:typeof r.outputBar=="number"?r.outputBar:1})),t.on("OUTPUT",n=>{this.buffer.output.get(t.id).write(n)}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.output.delete(t.id);break}}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,r,n="OUTPUT",a){if(!a)switch(n){case"OUTPUT":a=t.output;break;case"SKIPPED":a=t.message.skip;break;case"FAILED":a=t.message.error;break}return t.hasTitle()&&n==="FAILED"&&a===t.title||typeof a!="string"?[]:(n==="OUTPUT"&&(a=aRe(a)),this.format(a,this.style(t,!0),r+1))}indent(t,r){return r>0?PSr(t.trim(),this.options.indentation):t.trim()}},mDa=class{constructor(e,t){this.tasks=e,this.options=t}static{Rp(this,"SilentRenderer")}static nonTTY=!0;static rendererOptions;static rendererTaskOptions;render(){}end(){}},CDa=class YSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...YSr.rendererOptions,...r,icon:{...W_t.icon,...r?.icon??{}},color:{...W_t.color,...r?.color??{}}},this.logger=this.options.logger??new cRe({useIcons:!0,toStderr:edi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Rp(this,"SimpleRenderer")}static nonTTY=!0;static rendererOptions={pausedTimer:{...KSr,field:Rp(t=>`PAUSED:${t}`,"field"),format:Rp(()=>K0.yellowBright,"format")}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle())if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a?.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}else o==="PROMPT"?(this.logger.process.hijack(),r.on("PROMPT",l=>{this.logger.process.toStderr(l,!1)})):o==="PROMPT_COMPLETED"&&(r.off("PROMPT"),this.logger.process.release())}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("MESSAGE",o=>{if(o.error)this.logger.log("FAILED",r.title,{suffix:{field:`FAILED: ${o.error}`,format:Rp(()=>K0.red,"format")}});else if(o.skip)this.logger.log("SKIPPED",r.title,{suffix:{field:`SKIPPED: ${o.skip}`,format:Rp(()=>K0.yellow,"format")}});else if(o.rollback)this.logger.log("ROLLBACK",r.title,{suffix:{field:`ROLLBACK: ${o.rollback}`,format:Rp(()=>K0.red,"format")}});else if(o.retry)this.logger.log("RETRY",r.title,{suffix:{field:`RETRY:${o.retry.count}`,format:Rp(()=>K0.red,"format")}});else if(o.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...YSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},_Da=class{constructor(e){this.options=e}static{Rp(this,"TestRendererSerializer")}serialize(e,t,r){return JSON.stringify(this.generate(e,t,r))}generate(e,t,r){let n={event:e,data:t};if(typeof this.options?.task!="boolean"){let a=Object.fromEntries(this.options.task.map(o=>{let l=r[o];return typeof l=="function"?[o,l.call(r)]:[o,l]}));Object.keys(r).length>0&&(n.task=a)}return n}},yDa=class ndi{constructor(t,r){this.tasks=t,this.options=r,this.options={...ndi.rendererOptions,...this.options},this.logger=this.options.logger??new cRe({useIcons:!1}),this.serializer=new _Da(this.options)}static{Rp(this,"TestRenderer")}static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(KAi),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isSkipped","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.options.subtasks&&r.on("SUBTASK",n=>{this.renderer(n)}),this.options.state&&r.on("STATE",n=>{this.logger.toStdout(this.serializer.serialize("STATE",n,r))}),this.options.output&&r.on("OUTPUT",n=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",n,r))}),this.options.prompt&&r.on("PROMPT",n=>{this.logger.toStdout(this.serializer.serialize("PROMPT",n,r))}),this.options.title&&r.on("TITLE",n=>{this.logger.toStdout(this.serializer.serialize("TITLE",n,r))}),r.on("MESSAGE",n=>{let a=Object.fromEntries(Object.entries(n).map(([o,l])=>{if(this.options.messages.includes(o))return[o,l]}).filter(Boolean));if(Object.keys(a).length>0){let o=this.serializer.serialize("MESSAGE",a,r);this.options.messagesToStderr.some(l=>Object.keys(a).includes(l))?this.logger.toStderr(o):this.logger.toStdout(o)}})})}},bDa=class QSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...QSr.rendererOptions,...this.options,icon:{...W_t.icon,...r?.icon??{}},color:{...W_t.color,...r?.color??{}}},this.logger=this.options.logger??new cRe({useIcons:!1,toStderr:edi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Rp(this,"VerboseRenderer")}static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...KSr,format:Rp(()=>K0.yellowBright,"format")}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle()){if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}}}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("PROMPT",o=>{let l=aRe(o);l&&this.logger.log("PROMPT",l)}),this.options?.logTitleChange!==!1&&r.on("TITLE",o=>{this.logger.log("TITLE",o)}),r.on("MESSAGE",o=>{if(o?.error)this.logger.log("FAILED",o.error);else if(o?.skip)this.logger.log("SKIPPED",o.skip);else if(o?.rollback)this.logger.log("ROLLBACK",o.rollback);else if(o?.retry)this.logger.log("RETRY",r.title,{suffix:o.retry.count.toString()});else if(o?.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...QSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},OSr={default:hDa,simple:CDa,verbose:bDa,test:yDa,silent:mDa};function idi(e){return process.stdout.isTTY===!0||e.nonTTY===!0}Rp(idi,"isRendererSupported");function gXe(e){return typeof e=="string"?OSr[e]??OSr.default:typeof e=="function"?e:OSr.default}Rp(gXe,"getRendererClass");function sdi(e){if(tme(e?.silentRendererCondition))return{renderer:gXe("silent"),selection:"SILENT"};let t={renderer:gXe(e.renderer),options:e.rendererOptions,selection:"PRIMARY"};return!idi(t.renderer)||tme(e?.fallbackRendererCondition)?{renderer:gXe(e.fallbackRenderer),options:e.fallbackRendererOptions,selection:"SECONDARY"}:t}Rp(sdi,"getRenderer");function tme(e,...t){return typeof e=="function"?e(...t):e}Rp(tme,"assertFunctionOrSelf");var EDa=(0,odi.default)({circles:!0});function XSr(e){return EDa(e)}Rp(XSr,"cloneObject");var SDa=class{static{Rp(this,"Concurrency")}concurrency;count;queue;constructor(e){this.concurrency=e.concurrency,this.count=0,this.queue=new Set}add(e){return this.count{let r=Rp(()=>t(this.run(e)),"callback");this.queue.add(r)})}flush(){for(let e of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(e),e()}}run(e){this.count++;let t=e(),r=Rp(()=>{this.count--,this.flush()},"cleanup");return t.then(r,()=>{this.queue.clear()}),t}};function adi(e){return new Promise(t=>{setTimeout(t,e)})}Rp(adi,"delay");var vDa=class extends Error{constructor(e,t,r){super(e.message),this.error=e,this.type=t,this.task=r,this.name="ListrError",this.path=r.path,r?.options.collectErrors==="full"&&(this.task=XSr(r),this.ctx=XSr(r.listr.ctx)),this.stack=e?.stack}static{Rp(this,"ListrError")}path;ctx},JAi=class extends Error{static{Rp(this,"ListrRendererError")}},cdi=class extends Error{static{Rp(this,"PromptError")}},BDa=class{constructor(e){this.task=e}static{Rp(this,"TaskWrapper")}get title(){return this.task.title}set title(e){e=Array.isArray(e)?e:[e],this.task.title$=oRe(e.shift(),...e)}get output(){return this.task.output}set output(e){e=Array.isArray(e)?e:[e],this.task.output$=oRe(e.shift(),...e)}set promptOutput(e){this.task.promptOutput$=e}newListr(e,t){let r;return typeof e=="function"?r=e(this):r=e,new O_t(r,t,this.task)}report(e,t){this.task.options.collectErrors!==!1&&this.task.listr.errors.push(new vDa(e,t,this.task)),this.task.message$={error:e.message??this.task?.title}}skip(e,...t){this.task.state$="SKIPPED",e&&(this.task.message$={skip:e?oRe(e,...t):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(e){return this.task.prompt?this.task.prompt:new e(this.task,this)}stdout(e){return tdi(t=>{switch(e){case"PROMPT":this.promptOutput=t;break;default:this.output=t}})}run(e){return this.task.run(e,this)}},TDa=class extends jAi{static{Rp(this,"ListrTaskEventManager")}},RDa=class extends TDa{constructor(e,t,r,n,a){if(super(),this.listr=e,this.task=t,this.options=r,this.rendererOptions=n,this.rendererTaskOptions=a,t.title){let o=Array.isArray(t?.title)?t.title:[t.title];this.title=oRe(o.shift(),...o),this.initialTitle=this.title}this.taskFn=t.task,this.parent=e.parentTask}static{Rp(this,"Task")}id=wDa();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;set state$(e){if(this.state=e,this.emit("STATE",e),this.hasSubtasks()&&this.hasFailed())for(let t of this.subtasks)t.state==="STARTED"&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(e){this.output=e,this.emit("OUTPUT",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(e){this.emit("PROMPT",e),aRe(e)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(e){this.message={...this.message,...e},this.emit("MESSAGE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(e){this.title=e,this.emit("TITLE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(e){return this.state==="WAITING"&&(this.enabled=await tme(this.task?.enabled??!0,e),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return this.state==="STARTED"}isSkipped(){return this.state==="SKIPPED"}isCompleted(){return this.state==="COMPLETED"}hasFailed(){return this.state==="FAILED"}isRollingBack(){return this.state==="ROLLING_BACK"}hasRolledBack(){return this.state==="ROLLED_BACK"}isRetrying(){return this.state==="RETRY"}hasReset(){return this.state==="RETRY"||this.state==="ROLLING_BACK"}isEnabled(){return this.enabled}hasTitle(){return typeof this?.title=="string"}isPrompt(){return this.state==="PROMPT"||this.state==="PROMPT_COMPLETED"}isPaused(){return this.state==="PAUSED"}isClosed(){return this.closed}async pause(e){let t=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+e},await adi(e),this.state$=t,this.message$={paused:null}}async run(e,t){let r=Rp(o=>(o instanceof O_t?(o.options={...this.options,...o.options},o.rendererClass=gXe("silent"),this.subtasks=o.tasks,o.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),o=o.run(e)):o instanceof Promise?o=o.then(r):qAi(o)?o=new Promise((l,A)=>{o.on("data",f=>{this.output$=f.toString()}),o.on("error",f=>A(f)),o.on("end",()=>l(null))}):zAi(o)&&(o=new Promise((l,A)=>{o.subscribe({next:Rp(f=>{this.output$=f},"next"),error:A,complete:l})})),o),"handleResult"),n=Date.now();this.state$="STARTED";let a=await tme(this.task?.skip??!1,e);if(a){typeof a=="string"?this.message$={skip:a}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},this.state$="SKIPPED";return}try{let o=typeof this.task?.retry=="number"&&this.task.retry>0?this.task.retry+1:typeof this.task?.retry=="object"&&this.task.retry.tries>0?this.task.retry.tries+1:1,l=typeof this.task.retry=="object"&&this.task.retry.delay;for(let A=1;A<=o;A++)try{await r(this.taskFn(e,t));break}catch(f){if(A!==o)this.retry={count:A,error:f},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,t.report(f,"WILL_RETRY"),this.state$="RETRY",l&&await this.pause(l);else throw f}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-n},this.state$="COMPLETED")}catch(o){if(this.prompt instanceof cdi&&(o=this.prompt),this.task?.rollback){t.report(o,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(e,t),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(l){throw this.state$="FAILED",t.report(l,"HAS_FAILED_TO_ROLLBACK"),this.close(),l}if(this.listr.options?.exitAfterRollback!==!1)throw this.close(),o}else{if(this.state$="FAILED",this.listr.options.exitOnError!==!1&&await tme(this.task?.exitOnError,e)!==!1)throw t.report(o,"HAS_FAILED"),this.close(),o;this.hasSubtasks()||t.report(o,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}},UAi=class extends jAi{static{Rp(this,"ListrEventManager")}},O_t=class{constructor(e,t,r){this.task=e,this.options=t,this.parentTask=r,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...t},this.options.concurrent===!0?this.options.concurrent=1/0:typeof this.options.concurrent!="number"&&(this.options.concurrent=1),this.concurrency=new SDa({concurrency:this.options.concurrent}),r&&(this.path=[...r.listr.path,r.title],this.errors=r.listr.errors),this.parentTask?.listr.events instanceof UAi?this.events=this.parentTask.listr.events:this.events=new UAi;let n=sdi({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=n.renderer,this.rendererClassOptions=n.options,this.rendererSelection=n.selection,this.add(e??[]),this.options.registerSignalListeners&&(this.boundSignalHandler=this.signalHandler.bind(this),process.once("SIGINT",this.boundSignalHandler).setMaxListeners(0)),(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1")}static{Rp(this,"Listr")}tasks=[];errors=[];ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;concurrency;renderer;isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(e){this.tasks.push(...this.generate(e))}async run(e){this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??e??{},await Promise.all(this.tasks.map(t=>t.check(this.ctx)));try{await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t)))),this.renderer.end(),this.removeSignalHandler()}catch(t){if(this.options.exitOnError!==!1)throw this.renderer.end(t),this.removeSignalHandler(),t}return this.ctx}generate(e){return e=Array.isArray(e)?e:[e],e.map(t=>{let r;return this.rendererSelection==="PRIMARY"?r=t.rendererOptions:this.rendererSelection==="SECONDARY"&&(r=t.fallbackRendererOptions),new RDa(this,t,this.options,this.rendererClassOptions,r)})}async runTask(e){if(await e.check(this.ctx))return new BDa(e).run(this.ctx)}signalHandler(){this.tasks?.forEach(async e=>{e.isPending()&&(e.state$="FAILED")}),this.isRoot()&&(this.renderer.end(new Error("Interrupted.")),process.exit(127))}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}};var AXe=hp.blue(lb.arrowRight),qM=hp.redBright(lb.cross),lRe=hp.yellow(lb.warning);var dXe=(e,t,r)=>`${hp.redBright(`${qM} Validation Error:`)} - Invalid value for '${hp.bold(e)}': ${hp.bold(vDa(r))} + Invalid value for '${hp.bold(e)}': ${hp.bold(NDa(r))} - ${t}`,qAi=hp.redBright(`${zM} Current directory is not a git directory!`),$Ai=hp.redBright(`${zM} Failed to get staged files!`),edi=(e,t)=>hp.yellow(`${gRe} Detected incorrect braces with only single value: \`${e}\`. Reformatted as: \`${t}\` -`),tdi=`${zM} No valid configuration found.`,rdi=`${uXe} No staged files found.`,ndi=`${uXe} No staged files match any configured task.`,idi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-stash` was used":"there\u2019s no initial commit yet";return hp.yellow(`${gRe} Skipping backup because ${r}. -`)},sdi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-hide-partially-staged` was used":"`--no-stash` was used";return hp.yellow(`${gRe} Skipping hiding unstaged changes from partially staged files because ${r}. -`)},odi=hp.yellow(`${gRe} Some of your tasks use \`git add\` command. Please remove it from the config since all modifications made by tasks will be automatically added to the git commit index. -`),USr="Skipped because of errors from tasks.",adi="Skipped because of previous git error.",Mae=` - ${hp.redBright(`${zM} lint-staged failed due to a git error.`)}`,KSr=(e,t,r)=>`${hp.redBright(`${zM} Validation Error:`)} + ${t}`,ldi=hp.redBright(`${qM} Current directory is not a git directory!`),udi=hp.redBright(`${qM} Failed to get staged files!`),gdi=(e,t)=>hp.yellow(`${lRe} Detected incorrect braces with only single value: \`${e}\`. Reformatted as: \`${t}\` +`),Adi=`${qM} No valid configuration found.`,ddi=`${AXe} No staged files found.`,pdi=`${AXe} No staged files match any configured task.`,fdi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-stash` was used":"there\u2019s no initial commit yet";return hp.yellow(`${lRe} Skipping backup because ${r}. +`)},Idi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-hide-partially-staged` was used":"`--no-stash` was used";return hp.yellow(`${lRe} Skipping hiding unstaged changes from partially staged files because ${r}. +`)},hdi=hp.yellow(`${lRe} Some of your tasks use \`git add\` command. Please remove it from the config since all modifications made by tasks will be automatically added to the git commit index. +`),jSr="Skipped because of errors from tasks.",mdi="Skipped because of previous git error.",Hae=` + ${hp.redBright(`${qM} lint-staged failed due to a git error.`)}`,zSr=(e,t,r)=>`${hp.redBright(`${qM} Validation Error:`)} Invalid value for option '${hp.bold(e)}': ${hp.bold(t)} ${r} -See https://github.com/okonet/lint-staged#command-line-flags`,cdi=` - ${hp.yellow(`${gRe} lint-staged prevented an empty git commit. +See https://github.com/okonet/lint-staged#command-line-flags`,Cdi=` + ${hp.yellow(`${lRe} lint-staged prevented an empty git commit. Use the --allow-empty option to continue, or check your task configuration`)} -`,ldi=` Any lost modifications can be restored from a git stash: +`,_di=` Any lost modifications can be restored from a git stash: > git stash list stash@{0}: automatic lint-staged backup > git stash apply --index stash@{0} -`,oCu=hp.redBright(`${zM} Failed to read config from stdin.`),udi=e=>hp.redBright(`${zM} Failed to read config from file "${e}".`),jSr=(e,t)=>`${hp.redBright(`${t} Failed to parse config from file "${e}".`)} +`,f_u=hp.redBright(`${qM} Failed to read config from stdin.`),ydi=e=>hp.redBright(`${qM} Failed to read config from file "${e}".`),qSr=(e,t)=>`${hp.redBright(`${t} Failed to parse config from file "${e}".`)} ${t} -See https://github.com/okonet/lint-staged#configuration.`;var zSr=(e={},t)=>{if(!Array.isArray(e.output))return;let r=e.errors?.size>0?t.error:t.log;for(let n of e.output)r(n)};import KXe from"node:path";var dhi=Nt(fT(),1);var gdi=Nt(fT(),1);import TDa from"node:path";import AXe from"node:path";var BDa="\\\\?\\",wDa="\\\\.\\",kG=e=>{if(e===AXe.posix.sep||e===AXe.win32.sep)return AXe.posix.sep;let t=e.split(/[/\\]+/).join(AXe.posix.sep);return(e.startsWith(BDa)||e.startsWith(wDa))&&(t=t.replace(/^\/(\.|\?)/,"//$1")),t.endsWith(AXe.posix.sep)&&(t=t.slice(0,-1)),t};var qSr=(0,gdi.default)("lint-staged:chunkFiles"),RDa=(e,t)=>{if(t===1)return[e];let r=[],n=0;for(let a=0;a{let a=e.map(A=>kG(n||!t?A:TDa.resolve(t,A)));if(!r)return qSr("Skip chunking files because of undefined maxArgLength"),[a];let o=a.join(" ").length;qSr(`Resolved an argument string length of ${o} characters from ${a.length} files`);let l=Math.min(Math.ceil(o/r),a.length);return qSr(`Creating ${l} chunks for maxArgLength of ${r}`),RDa(a,l)};var ddi=Nt(fT(),1),pdi=Nt(Tk(),1);import evr from"node:path";var Adi=(0,ddi.default)("lint-staged:generateTasks"),fdi=({config:e,cwd:t=process.cwd(),files:r,relative:n=!1})=>{Adi("Generating linter tasks");let a=r.map(o=>kG(evr.relative(t,o)));return Object.entries(e).map(([o,l])=>{let A=o.startsWith("../"),f=a.filter(E=>A?!0:!E.startsWith("..")&&!evr.isAbsolute(E)),C=(0,pdi.default)(f,o,{cwd:t,dot:!0,matchBase:!o.includes("/"),posixSlashes:!0,strictBrackets:!0}).map(E=>kG(n?E:evr.resolve(t,E))),b={pattern:o,commands:l,fileList:C};return Adi(`Generated task: -%O`,b),b})};import{EOL as NDa}from"node:os";import{Writable as DDa}from"node:stream";var kDa=new RegExp(NDa+"$"),Idi=e=>new DDa({write:function(t,r,n){e(t.toString().replace(kDa,"")),n()}}),xDa=({debug:e,quiet:t},r,n)=>t?{renderer:"silent"}:n.NODE_ENV==="test"?{renderer:"test",rendererOptions:{logger:new uRe({processOutput:new XSr(Idi(r.log),Idi(r.error))})}}:e||n.TERM==="dumb"?{renderer:"verbose"}:{renderer:"update",rendererOptions:{formatOutput:"truncate"}},GDa=({renderer:e},{FORCE_COLOR:t})=>e==="silent"||e==="test"||Number(t)>0?e:"verbose",hdi=(e,t,r=process.env)=>{let n=xDa(e,t,r);return{...n,fallbackRenderer:GDa(n,r)}};import FDa from"node:path";function H_t(e,t){let r=t!==void 0?t.trim():"ACMR",n=e!==void 0?e.trim().split(" "):["--staged"];return["diff","--name-only","-z",`--diff-filter=${r}`,...n]}var dXe=e=>e?e.replace(/\u0000$/,"").split("\0"):[];var mdi=async({cwd:e=process.cwd(),diff:t,diffFilter:r}={})=>{try{let n=await zZ(H_t(t,r),{cwd:e});return n?dXe(n).map(a=>kG(FDa.resolve(e,a))):[]}catch{return null}};var Rdi=Nt(fT(),1);import IXe from"node:path";var Cdi=Nt(fT(),1);import tvr from"node:fs/promises";var pXe=(0,Cdi.default)("lint-staged:file"),Y_t=async(e,t=!0)=>{pXe("Reading file `%s`",e);try{return await tvr.readFile(e)}catch(r){if(t&&r.code==="ENOENT")return pXe("File `%s` doesn't exist, ignoring...",e),null;throw r}},rvr=async(e,t=!0)=>{pXe("Removing file `%s`",e);try{await tvr.unlink(e)}catch(r){if(t&&r.code==="ENOENT")pXe("File `%s` doesn't exist, ignoring...",e);else throw r}},Q_t=async(e,t)=>{pXe("Writing file `%s`",e),await tvr.writeFile(e,t)};var Hae=Symbol("ApplyEmptyCommitError"),fXe=new Error("Configuration could not be found"),_di=new Error("Configuration should be an object or a function"),ydi=new Error("Configuration should not be empty"),X_t=Symbol("GetBackupStashError"),nvr=Symbol("GetStagedFilesError"),r4=Symbol("GitError"),bdi=Symbol("GitRepoError"),Edi=Symbol("HideUnstagedChangesError"),ivr=new Error("Invalid Options"),Sdi=Symbol("RestoreMergeStatusError"),J_t=Symbol("RestoreOriginalStateError"),ARe=Symbol("RestoreUnstagedChangesError"),tme=Symbol("TaskError");var k2=(0,Rdi.default)("lint-staged:GitWorkflow"),ZDa="MERGE_HEAD",LDa="MERGE_MODE",VDa="MERGE_MSG",vdi=/\x00/,Bdi=(e,t=!0)=>e.reduce((r,n)=>{if(vdi.test(n)){let[a,o]=n.split(vdi);t&&r.push(o),r.push(a)}else r.push(n);return r},[]),wdi="lint-staged automatic backup",svr="lint-staged_unstaged.patch",WDa=["--binary","--unified=0","--no-color","--no-ext-diff","--src-prefix=a/","--dst-prefix=b/","--patch","--submodule=short"],Tdi=["-v","--whitespace=nowarn","--recount","--unidiff-zero"],rme=(e,t,r)=>{throw t.errors.add(r4),r&&t.errors.add(r),e},U_t=class{constructor({allowEmpty:t,gitConfigDir:r,topLevelDir:n,matchedFileChunks:a,diff:o,diffFilter:l}){this.execGit=(A,f={})=>zZ(A,{...f,cwd:n}),this.deletedFiles=[],this.gitConfigDir=r,this.topLevelDir=n,this.diff=o,this.diffFilter=l,this.allowEmpty=t,this.matchedFileChunks=a,this.mergeHeadFilename=IXe.resolve(r,ZDa),this.mergeModeFilename=IXe.resolve(r,LDa),this.mergeMsgFilename=IXe.resolve(r,VDa)}getHiddenFilepath(t){return IXe.resolve(this.gitConfigDir,`./${t}`)}async getBackupStash(t){let n=(await this.execGit(["stash","list"])).split(` -`).findIndex(a=>a.includes(wdi));if(n===-1)throw t.errors.add(X_t),new Error("lint-staged automatic backup is missing!");return String(n)}async getDeletedFiles(){k2("Getting deleted files...");let r=(await this.execGit(["ls-files","--deleted"])).split(` -`).filter(Boolean).map(n=>IXe.resolve(this.topLevelDir,n));return k2("Found deleted files:",r),r}async backupMergeStatus(){k2("Backing up merge state..."),await Promise.all([Y_t(this.mergeHeadFilename).then(t=>this.mergeHeadBuffer=t),Y_t(this.mergeModeFilename).then(t=>this.mergeModeBuffer=t),Y_t(this.mergeMsgFilename).then(t=>this.mergeMsgBuffer=t)]),k2("Done backing up merge state!")}async restoreMergeStatus(t){k2("Restoring merge state...");try{await Promise.all([this.mergeHeadBuffer&&Q_t(this.mergeHeadFilename,this.mergeHeadBuffer),this.mergeModeBuffer&&Q_t(this.mergeModeFilename,this.mergeModeBuffer),this.mergeMsgBuffer&&Q_t(this.mergeMsgFilename,this.mergeMsgBuffer)]),k2("Done restoring merge state!")}catch(r){k2("Failed restoring merge state with error:"),k2(r),rme(new Error("Merge state could not be restored due to an error!"),t,Sdi)}}async getPartiallyStagedFiles(){k2("Getting partially staged files...");let r=(await this.execGit(["status","-z"])).split(/\x00(?=[ AMDRCU?!]{2} |$)/).filter(n=>{let[a,o]=n;return a!==" "&&o!==" "&&a!=="?"&&o!=="?"}).map(n=>n.substr(3)).filter(Boolean);return k2("Found partially staged files:",r),r.length?r:null}async prepare(t){try{if(k2("Backing up original state..."),this.partiallyStagedFiles=await this.getPartiallyStagedFiles(),this.partiallyStagedFiles){t.hasPartiallyStagedFiles=!0;let n=this.getHiddenFilepath(svr),a=Bdi(this.partiallyStagedFiles);await this.execGit(["diff",...WDa,"--output",n,"--",...a])}else t.hasPartiallyStagedFiles=!1;if(!t.shouldBackup)return;await this.backupMergeStatus(),this.deletedFiles=await this.getDeletedFiles();let r=await this.execGit(["stash","create"]);await this.execGit(["stash","store","--quiet","--message",wdi,r]),k2("Done backing up original state!")}catch(r){rme(r,t)}}async hideUnstagedChanges(t){try{let r=Bdi(this.partiallyStagedFiles,!1);await this.execGit(["checkout","--force","--",...r])}catch(r){rme(r,t,Edi)}}async applyModifications(t){k2("Adding task modifications to index...");for(let n of this.matchedFileChunks)await this.execGit(["add","--",...n]);k2("Done adding task modifications to index!"),!await this.execGit(H_t(this.diff,this.diffFilter))&&!this.allowEmpty&&rme(new Error("Prevented an empty git commit!"),t,Hae)}async restoreUnstagedChanges(t){k2("Restoring unstaged changes...");let r=this.getHiddenFilepath(svr);try{await this.execGit(["apply",...Tdi,r])}catch(n){k2("Error while restoring changes:"),k2(n),k2("Retrying with 3-way merge");try{await this.execGit(["apply",...Tdi,"--3way",r])}catch(a){k2("Error while restoring unstaged changes using 3-way merge:"),k2(a),rme(new Error("Unstaged changes could not be restored due to a merge conflict!"),t,ARe)}}}async restoreOriginalState(t){try{k2("Restoring original state..."),await this.execGit(["reset","--hard","HEAD"]),await this.execGit(["stash","apply","--quiet","--index",await this.getBackupStash(t)]),await this.restoreMergeStatus(t),await Promise.all(this.deletedFiles.map(r=>rvr(r))),await rvr(this.getHiddenFilepath(svr)),k2("Done restoring original state!")}catch(r){rme(r,t,J_t)}}async cleanup(t){try{k2("Dropping backup stash..."),await this.execGit(["stash","drop","--quiet",await this.getBackupStash(t)]),k2("Done dropping backup stash!")}catch(r){rme(r,t)}}};var Ndi=Nt(fT(),1);import K_t from"node:path";var ODa=(0,Ndi.default)("lint-staged:groupFilesByConfig"),Ddi=async({configs:e,files:t,singleConfigMode:r})=>{ODa("Grouping %d files by %d configurations",t.length,Object.keys(e).length);let n=new Set(t),a={};for(let[o,l]of Object.entries(e)){if(r){a[o]={config:l,files:t};break}let A=K_t.normalize(K_t.dirname(o)),f=b=>{let E=K_t.relative(A,b);return E&&!E.startsWith("..")&&!K_t.isAbsolute(E)},I=Object.keys(l).some(b=>b.startsWith("..")),C=new Set(I?n:void 0);I||n.forEach(b=>{f(b)&&C.add(b)}),C.forEach(b=>{n.delete(b)}),a[o]={config:l,files:Array.from(C)}}return a};var npi=Nt(fT(),1);var qdi=Nt(fT(),1);function ovr(e,t,r){var n=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,a=e,o=[];t&&o.push(t),r&&o.push(r);var l;do l=n.exec(a),l!==null&&o.push(PDa(l[1],l[6],l[0]));while(l!==null);return o}function PDa(){for(var e=[],t=0;t({hasPartiallyStagedFiles:null,shouldBackup:null,shouldHidePartiallyStaged:!0,errors:new Set([]),events:new ika,output:[],quiet:e}),lvr=e=>e.hasPartiallyStagedFiles&&e.shouldHidePartiallyStaged,Xdi=e=>{if(!e.shouldBackup)return!1;if(e.errors.has(r4))return Mae;if(e.errors.has(tme))return USr},Jdi=e=>{if(e.errors.has(r4))return Mae;if(e.errors.has(tme))return USr},Udi=e=>e.shouldBackup&&(e.errors.has(tme)||e.errors.has(Hae)||e.errors.has(ARe)),Kdi=e=>{if(e.errors.has(r4)&&!e.errors.has(Hae)&&!e.errors.has(ARe))return Mae},jdi=e=>e.shouldBackup,zdi=e=>{if(e.errors.has(r4)&&!e.errors.has(Hae)&&!e.errors.has(ARe))return Mae;if(e.errors.has(J_t))return Mae};var uvr="lint-staged:taskError",hXe=(0,qdi.default)("lint-staged:resolveTaskFn"),epi=({code:e,killed:t,signal:r})=>t&&"KILLED"||r||e||"FAILED",tpi=(e,t,r,n=!1)=>{let{stderr:a,stdout:o}=t;if(!!a||!!o){let A=n?hp.redBright(`${zM} ${e}:`):`${uXe} ${e}:`,f=[].concat(r.quiet?[]:["",A]).concat(a||[]).concat(o||[]);r.output.push(f.join(` -`))}else if(n){let A=epi(t),f=hp.redBright(` -${zM} ${e} failed without output (${A}).`);r.quiet||r.output.push(f)}},ska=async e=>{try{let t=await(0,$di.default)(e.pid);for(let r of t)try{process.kill(r)}catch(n){hXe('Failed to kill process with pid "%d": %o',r,n)}}catch(t){hXe('Failed to kill process with pid "%d": %o',e.pid,t)}e.kill()},oka=(e,t)=>{let r,n=async()=>{r=ska(t),await r};return e.events.on(uvr,n,{once:!0}),async()=>{e.events.off(uvr,n),await r}},aka=(e,t,r)=>{r.errors.add(tme),r.events.emit(uvr,tme),tpi(e,t,r,!0);let n=epi(t);return new Error(`${hp.redBright(e)} ${hp.dim(`[${n}]`)}`)},rpi=({command:e,cwd:t=process.cwd(),files:r,topLevelDir:n,isFn:a,shell:o=!1,verbose:l=!1})=>{let[A,...f]=ovr(e);hXe("cmd:",A),hXe("args:",f);let I={cwd:/^git(\.exe)?/i.test(A)?n:t,preferLocal:!0,reject:!1,shell:o,stdin:"ignore"};return hXe("execaOptions:",I),async(C=j_t())=>{let b=o?jsi(a?e:`${e} ${r.join(" ")}`,I):uee(A,a?f:f.concat(r),I),E=oka(C,b),N=await b;if(await E(),N.failed||N.killed||N.signal!=null)throw aka(e,N,C);l&&tpi(e,N,C)}};var cka=(0,npi.default)("lint-staged:makeCmdTasks"),ipi=async({commands:e,cwd:t,files:r,topLevelDir:n,shell:a,verbose:o})=>{cka("Creating listr tasks for commands %o",e);let l=Array.isArray(e)?e:[e],A=[];for(let f of l){let I=typeof f=="function",C=I?await f([...r]):f,b=Array.isArray(C)?C:[C];for(let E of b){if(I&&typeof E!="string")throw new Error(gXe("[Function]","Function task should return a string or an array of strings",C));let N=rpi({command:E,cwd:t,files:r,topLevelDir:n,isFn:I,shell:a,verbose:o});A.push({title:E,command:E,task:N})}}return A};var spi=Nt(fT(),1);import gvr from"node:path";var dRe=(0,spi.default)("lint-staged:resolveGitRepo"),lka=async(e=process.cwd())=>{let t=zZ(["rev-parse","--show-toplevel"],{cwd:e}),r=zZ(["rev-parse","--absolute-git-dir"],{cwd:e}),[n,a]=await Promise.all([t,r]);return gvr.relative(n,a)},opi=async(e=process.cwd())=>{try{dRe("Resolving git repo from `%s`",e),dRe("Unset GIT_DIR (was `%s`)",process.env.GIT_DIR),delete process.env.GIT_DIR,dRe("Unset GIT_WORK_TREE (was `%s`)",process.env.GIT_WORK_TREE),delete process.env.GIT_WORK_TREE;let t=await zZ(["rev-parse","--show-cdup"],{cwd:e}),r=kG(gvr.join(e,t));dRe("Resolved git repository top-level directory to be `%s`",r);let n=await lka(e),a=kG(gvr.join(r,n));return dRe("Resolved git config directory to be `%s`",a),{topLevelDir:r,gitConfigDir:a}}catch(t){return dRe("Failed to resolve git repo with error:",t),{error:t,topLevelDir:null,gitConfigDir:null}}};var ghi=Nt(fT(),1);import uhi from"node:path";var ehi=Nt(fT(),1),thi=Nt(QIi(),1);import ZZa from"node:fs/promises";import wRe from"node:path";import{pathToFileURL as kZa}from"node:url";var Y0t=e=>import(kZa(e)).then(t=>t.default);import{createRequire as xZa}from"node:module";function XIi(e){try{return xZa(import.meta.url).resolve(e)}catch{return e}}var Q0t="lint-staged",X0t="package.json",XBr=["package.yaml","package.yml"],J0t=[X0t,...XBr,".lintstagedrc",".lintstagedrc.json",".lintstagedrc.yaml",".lintstagedrc.yml",".lintstagedrc.mjs",".lintstagedrc.js",".lintstagedrc.cjs","lint-staged.config.mjs","lint-staged.config.js","lint-staged.config.cjs"];var BRe=(0,ehi.default)("lint-staged:loadConfig"),LZa=(e,t)=>{let r=X0t.includes(wRe.basename(e));try{let n=JSON.parse(t);return r?n[Q0t]:n}catch(n){if(wRe.basename(e)===X0t){BRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},KBr=(e,t)=>{let r=XBr.includes(wRe.basename(e));try{let n=thi.default.parse(t);return r?n[Q0t]:n}catch(n){if(r){BRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},rhi="noExt",nhi={".js":Y0t,".json":LZa,".mjs":Y0t,".cjs":Y0t,".yaml":KBr,".yml":KBr,[rhi]:KBr},VZa=async e=>{let t=wRe.resolve(e);return await(await ZZa.readFile(t)).toString()},WZa=async e=>{e=wRe.resolve(e);let t=wRe.extname(e)||rhi,r=nhi[t],n=r.length>1?await VZa(e):void 0;return{config:await r(e,n),filepath:e}},q0t=async({configPath:e,cwd:t},r)=>{try{let n;if(e)BRe("Loading configuration from `%s`...",e),n=await WZa(XIi(e));else{BRe("Searching for configuration from `%s`...",t);let{lilconfig:l}=await Promise.resolve().then(()=>Nt($Ii(),1));n=await l(Q0t,{searchPlaces:J0t,loaders:nhi}).search(t)}if(!n)return{};let a=await n.config??null,o=n.filepath;return BRe("Successfully loaded config from `%s`:\n%O",o,a),{config:a,filepath:o}}catch(n){return BRe("Failed to load configuration from `%s` with error:\n",e,n),r.error(udi(e)),{}}};var ahi=Nt(fT(),1);import{inspect as YZa}from"node:util";var OZa=/(?{let t=`${e}`,r=null;for(;r=OZa.exec(e);){let n=r[0],a=n.replace(/{/,"").replace(/}/,"");t=t.replace(n,a)}return t},MZa=/{{[^}{]*}}/,HZa=e=>{let t=`${e}`,r=MZa.exec(e)?.[0];if(r){let n=r.replace("{{","{").replace("}}","}");t=t.replace(r,n)}return t},ihi=(e,t)=>{let r=HZa(PZa(e));return r!==e&&t.warn(edi(e,r)),r};var jBr=(0,ahi.default)("lint-staged:validateConfig"),shi=e=>e&&typeof e=="object"&&!Array.isArray(e),ohi=new Map([["concurrent",e=>typeof e=="boolean"],["chunkSize",e=>typeof e=="number"],["globOptions",shi],["linters",shi],["ignore",e=>Array.isArray(e)],["subTaskConcurrency",e=>typeof e=="number"],["renderer",e=>typeof e=="string"],["relative",e=>typeof e=="boolean"]]),QZa=(e,t,r)=>{if(jBr("Validating config from `%s`...",t),!e||typeof e!="object"&&typeof e!="function")throw _di;if(typeof e=="function")return{"*":e};if(Object.entries(e).length===0)throw ydi;let n=[],a=Object.entries(e).reduce((o,[l,A])=>{if(ohi.has(l))return ohi.get(l)(A)&&n.push(gXe(l,"Advanced configuration has been deprecated.",A)),o;(!Array.isArray(A)||A.some(I=>typeof I!="string"&&typeof I!="function"))&&typeof A!="string"&&typeof A!="function"&&n.push(gXe(l,"Should be a string, a function, or an array of strings and functions.",A));let f=ihi(l,r);return{...o,[f]:A}},{});if(n.length){let o=n.join(` +See https://github.com/okonet/lint-staged#configuration.`;var $Sr=(e={},t)=>{if(!Array.isArray(e.output))return;let r=e.errors?.size>0?t.error:t.log;for(let n of e.output)r(n)};import zXe from"node:path";var Shi=xt(IT(),1);var bdi=xt(IT(),1);import xDa from"node:path";import pXe from"node:path";var DDa="\\\\?\\",kDa="\\\\.\\",xG=e=>{if(e===pXe.posix.sep||e===pXe.win32.sep)return pXe.posix.sep;let t=e.split(/[/\\]+/).join(pXe.posix.sep);return(e.startsWith(DDa)||e.startsWith(kDa))&&(t=t.replace(/^\/(\.|\?)/,"//$1")),t.endsWith(pXe.posix.sep)&&(t=t.slice(0,-1)),t};var evr=(0,bdi.default)("lint-staged:chunkFiles"),GDa=(e,t)=>{if(t===1)return[e];let r=[],n=0;for(let a=0;a{let a=e.map(A=>xG(n||!t?A:xDa.resolve(t,A)));if(!r)return evr("Skip chunking files because of undefined maxArgLength"),[a];let o=a.join(" ").length;evr(`Resolved an argument string length of ${o} characters from ${a.length} files`);let l=Math.min(Math.ceil(o/r),a.length);return evr(`Creating ${l} chunks for maxArgLength of ${r}`),GDa(a,l)};var Sdi=xt(IT(),1),vdi=xt(Rk(),1);import rvr from"node:path";var Edi=(0,Sdi.default)("lint-staged:generateTasks"),Bdi=({config:e,cwd:t=process.cwd(),files:r,relative:n=!1})=>{Edi("Generating linter tasks");let a=r.map(o=>xG(rvr.relative(t,o)));return Object.entries(e).map(([o,l])=>{let A=o.startsWith("../"),f=a.filter(E=>A?!0:!E.startsWith("..")&&!rvr.isAbsolute(E)),C=(0,vdi.default)(f,o,{cwd:t,dot:!0,matchBase:!o.includes("/"),posixSlashes:!0,strictBrackets:!0}).map(E=>xG(n?E:rvr.resolve(t,E))),b={pattern:o,commands:l,fileList:C};return Edi(`Generated task: +%O`,b),b})};import{EOL as FDa}from"node:os";import{Writable as ZDa}from"node:stream";var LDa=new RegExp(FDa+"$"),wdi=e=>new ZDa({write:function(t,r,n){e(t.toString().replace(LDa,"")),n()}}),VDa=({debug:e,quiet:t},r,n)=>t?{renderer:"silent"}:n.NODE_ENV==="test"?{renderer:"test",rendererOptions:{logger:new cRe({processOutput:new USr(wdi(r.log),wdi(r.error))})}}:e||n.TERM==="dumb"?{renderer:"verbose"}:{renderer:"update",rendererOptions:{formatOutput:"truncate"}},WDa=({renderer:e},{FORCE_COLOR:t})=>e==="silent"||e==="test"||Number(t)>0?e:"verbose",Tdi=(e,t,r=process.env)=>{let n=VDa(e,t,r);return{...n,fallbackRenderer:WDa(n,r)}};import ODa from"node:path";function P_t(e,t){let r=t!==void 0?t.trim():"ACMR",n=e!==void 0?e.trim().split(" "):["--staged"];return["diff","--name-only","-z",`--diff-filter=${r}`,...n]}var fXe=e=>e?e.replace(/\u0000$/,"").split("\0"):[];var Rdi=async({cwd:e=process.cwd(),diff:t,diffFilter:r}={})=>{try{let n=await qZ(P_t(t,r),{cwd:e});return n?fXe(n).map(a=>xG(ODa.resolve(e,a))):[]}catch{return null}};var Odi=xt(IT(),1);import mXe from"node:path";var Ndi=xt(IT(),1);import nvr from"node:fs/promises";var IXe=(0,Ndi.default)("lint-staged:file"),M_t=async(e,t=!0)=>{IXe("Reading file `%s`",e);try{return await nvr.readFile(e)}catch(r){if(t&&r.code==="ENOENT")return IXe("File `%s` doesn't exist, ignoring...",e),null;throw r}},ivr=async(e,t=!0)=>{IXe("Removing file `%s`",e);try{await nvr.unlink(e)}catch(r){if(t&&r.code==="ENOENT")IXe("File `%s` doesn't exist, ignoring...",e);else throw r}},H_t=async(e,t)=>{IXe("Writing file `%s`",e),await nvr.writeFile(e,t)};var Yae=Symbol("ApplyEmptyCommitError"),hXe=new Error("Configuration could not be found"),Ddi=new Error("Configuration should be an object or a function"),kdi=new Error("Configuration should not be empty"),Y_t=Symbol("GetBackupStashError"),svr=Symbol("GetStagedFilesError"),n4=Symbol("GitError"),xdi=Symbol("GitRepoError"),Gdi=Symbol("HideUnstagedChangesError"),ovr=new Error("Invalid Options"),Fdi=Symbol("RestoreMergeStatusError"),Q_t=Symbol("RestoreOriginalStateError"),uRe=Symbol("RestoreUnstagedChangesError"),rme=Symbol("TaskError");var x2=(0,Odi.default)("lint-staged:GitWorkflow"),PDa="MERGE_HEAD",MDa="MERGE_MODE",HDa="MERGE_MSG",Zdi=/\x00/,Ldi=(e,t=!0)=>e.reduce((r,n)=>{if(Zdi.test(n)){let[a,o]=n.split(Zdi);t&&r.push(o),r.push(a)}else r.push(n);return r},[]),Vdi="lint-staged automatic backup",avr="lint-staged_unstaged.patch",YDa=["--binary","--unified=0","--no-color","--no-ext-diff","--src-prefix=a/","--dst-prefix=b/","--patch","--submodule=short"],Wdi=["-v","--whitespace=nowarn","--recount","--unidiff-zero"],nme=(e,t,r)=>{throw t.errors.add(n4),r&&t.errors.add(r),e},X_t=class{constructor({allowEmpty:t,gitConfigDir:r,topLevelDir:n,matchedFileChunks:a,diff:o,diffFilter:l}){this.execGit=(A,f={})=>qZ(A,{...f,cwd:n}),this.deletedFiles=[],this.gitConfigDir=r,this.topLevelDir=n,this.diff=o,this.diffFilter=l,this.allowEmpty=t,this.matchedFileChunks=a,this.mergeHeadFilename=mXe.resolve(r,PDa),this.mergeModeFilename=mXe.resolve(r,MDa),this.mergeMsgFilename=mXe.resolve(r,HDa)}getHiddenFilepath(t){return mXe.resolve(this.gitConfigDir,`./${t}`)}async getBackupStash(t){let n=(await this.execGit(["stash","list"])).split(` +`).findIndex(a=>a.includes(Vdi));if(n===-1)throw t.errors.add(Y_t),new Error("lint-staged automatic backup is missing!");return String(n)}async getDeletedFiles(){x2("Getting deleted files...");let r=(await this.execGit(["ls-files","--deleted"])).split(` +`).filter(Boolean).map(n=>mXe.resolve(this.topLevelDir,n));return x2("Found deleted files:",r),r}async backupMergeStatus(){x2("Backing up merge state..."),await Promise.all([M_t(this.mergeHeadFilename).then(t=>this.mergeHeadBuffer=t),M_t(this.mergeModeFilename).then(t=>this.mergeModeBuffer=t),M_t(this.mergeMsgFilename).then(t=>this.mergeMsgBuffer=t)]),x2("Done backing up merge state!")}async restoreMergeStatus(t){x2("Restoring merge state...");try{await Promise.all([this.mergeHeadBuffer&&H_t(this.mergeHeadFilename,this.mergeHeadBuffer),this.mergeModeBuffer&&H_t(this.mergeModeFilename,this.mergeModeBuffer),this.mergeMsgBuffer&&H_t(this.mergeMsgFilename,this.mergeMsgBuffer)]),x2("Done restoring merge state!")}catch(r){x2("Failed restoring merge state with error:"),x2(r),nme(new Error("Merge state could not be restored due to an error!"),t,Fdi)}}async getPartiallyStagedFiles(){x2("Getting partially staged files...");let r=(await this.execGit(["status","-z"])).split(/\x00(?=[ AMDRCU?!]{2} |$)/).filter(n=>{let[a,o]=n;return a!==" "&&o!==" "&&a!=="?"&&o!=="?"}).map(n=>n.substr(3)).filter(Boolean);return x2("Found partially staged files:",r),r.length?r:null}async prepare(t){try{if(x2("Backing up original state..."),this.partiallyStagedFiles=await this.getPartiallyStagedFiles(),this.partiallyStagedFiles){t.hasPartiallyStagedFiles=!0;let n=this.getHiddenFilepath(avr),a=Ldi(this.partiallyStagedFiles);await this.execGit(["diff",...YDa,"--output",n,"--",...a])}else t.hasPartiallyStagedFiles=!1;if(!t.shouldBackup)return;await this.backupMergeStatus(),this.deletedFiles=await this.getDeletedFiles();let r=await this.execGit(["stash","create"]);await this.execGit(["stash","store","--quiet","--message",Vdi,r]),x2("Done backing up original state!")}catch(r){nme(r,t)}}async hideUnstagedChanges(t){try{let r=Ldi(this.partiallyStagedFiles,!1);await this.execGit(["checkout","--force","--",...r])}catch(r){nme(r,t,Gdi)}}async applyModifications(t){x2("Adding task modifications to index...");for(let n of this.matchedFileChunks)await this.execGit(["add","--",...n]);x2("Done adding task modifications to index!"),!await this.execGit(P_t(this.diff,this.diffFilter))&&!this.allowEmpty&&nme(new Error("Prevented an empty git commit!"),t,Yae)}async restoreUnstagedChanges(t){x2("Restoring unstaged changes...");let r=this.getHiddenFilepath(avr);try{await this.execGit(["apply",...Wdi,r])}catch(n){x2("Error while restoring changes:"),x2(n),x2("Retrying with 3-way merge");try{await this.execGit(["apply",...Wdi,"--3way",r])}catch(a){x2("Error while restoring unstaged changes using 3-way merge:"),x2(a),nme(new Error("Unstaged changes could not be restored due to a merge conflict!"),t,uRe)}}}async restoreOriginalState(t){try{x2("Restoring original state..."),await this.execGit(["reset","--hard","HEAD"]),await this.execGit(["stash","apply","--quiet","--index",await this.getBackupStash(t)]),await this.restoreMergeStatus(t),await Promise.all(this.deletedFiles.map(r=>ivr(r))),await ivr(this.getHiddenFilepath(avr)),x2("Done restoring original state!")}catch(r){nme(r,t,Q_t)}}async cleanup(t){try{x2("Dropping backup stash..."),await this.execGit(["stash","drop","--quiet",await this.getBackupStash(t)]),x2("Done dropping backup stash!")}catch(r){nme(r,t)}}};var Pdi=xt(IT(),1);import J_t from"node:path";var QDa=(0,Pdi.default)("lint-staged:groupFilesByConfig"),Mdi=async({configs:e,files:t,singleConfigMode:r})=>{QDa("Grouping %d files by %d configurations",t.length,Object.keys(e).length);let n=new Set(t),a={};for(let[o,l]of Object.entries(e)){if(r){a[o]={config:l,files:t};break}let A=J_t.normalize(J_t.dirname(o)),f=b=>{let E=J_t.relative(A,b);return E&&!E.startsWith("..")&&!J_t.isAbsolute(E)},I=Object.keys(l).some(b=>b.startsWith("..")),C=new Set(I?n:void 0);I||n.forEach(b=>{f(b)&&C.add(b)}),C.forEach(b=>{n.delete(b)}),a[o]={config:l,files:Array.from(C)}}return a};var ppi=xt(IT(),1);var lpi=xt(IT(),1);function cvr(e,t,r){var n=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,a=e,o=[];t&&o.push(t),r&&o.push(r);var l;do l=n.exec(a),l!==null&&o.push(XDa(l[1],l[6],l[0]));while(l!==null);return o}function XDa(){for(var e=[],t=0;t({hasPartiallyStagedFiles:null,shouldBackup:null,shouldHidePartiallyStaged:!0,errors:new Set([]),events:new lka,output:[],quiet:e}),gvr=e=>e.hasPartiallyStagedFiles&&e.shouldHidePartiallyStaged,npi=e=>{if(!e.shouldBackup)return!1;if(e.errors.has(n4))return Hae;if(e.errors.has(rme))return jSr},ipi=e=>{if(e.errors.has(n4))return Hae;if(e.errors.has(rme))return jSr},spi=e=>e.shouldBackup&&(e.errors.has(rme)||e.errors.has(Yae)||e.errors.has(uRe)),opi=e=>{if(e.errors.has(n4)&&!e.errors.has(Yae)&&!e.errors.has(uRe))return Hae},api=e=>e.shouldBackup,cpi=e=>{if(e.errors.has(n4)&&!e.errors.has(Yae)&&!e.errors.has(uRe))return Hae;if(e.errors.has(Q_t))return Hae};var Avr="lint-staged:taskError",CXe=(0,lpi.default)("lint-staged:resolveTaskFn"),gpi=({code:e,killed:t,signal:r})=>t&&"KILLED"||r||e||"FAILED",Api=(e,t,r,n=!1)=>{let{stderr:a,stdout:o}=t;if(!!a||!!o){let A=n?hp.redBright(`${qM} ${e}:`):`${AXe} ${e}:`,f=[].concat(r.quiet?[]:["",A]).concat(a||[]).concat(o||[]);r.output.push(f.join(` +`))}else if(n){let A=gpi(t),f=hp.redBright(` +${qM} ${e} failed without output (${A}).`);r.quiet||r.output.push(f)}},uka=async e=>{try{let t=await(0,upi.default)(e.pid);for(let r of t)try{process.kill(r)}catch(n){CXe('Failed to kill process with pid "%d": %o',r,n)}}catch(t){CXe('Failed to kill process with pid "%d": %o',e.pid,t)}e.kill()},gka=(e,t)=>{let r,n=async()=>{r=uka(t),await r};return e.events.on(Avr,n,{once:!0}),async()=>{e.events.off(Avr,n),await r}},Aka=(e,t,r)=>{r.errors.add(rme),r.events.emit(Avr,rme),Api(e,t,r,!0);let n=gpi(t);return new Error(`${hp.redBright(e)} ${hp.dim(`[${n}]`)}`)},dpi=({command:e,cwd:t=process.cwd(),files:r,topLevelDir:n,isFn:a,shell:o=!1,verbose:l=!1})=>{let[A,...f]=cvr(e);CXe("cmd:",A),CXe("args:",f);let I={cwd:/^git(\.exe)?/i.test(A)?n:t,preferLocal:!0,reject:!1,shell:o,stdin:"ignore"};return CXe("execaOptions:",I),async(C=U_t())=>{let b=o?aoi(a?e:`${e} ${r.join(" ")}`,I):gee(A,a?f:f.concat(r),I),E=gka(C,b),N=await b;if(await E(),N.failed||N.killed||N.signal!=null)throw Aka(e,N,C);l&&Api(e,N,C)}};var dka=(0,ppi.default)("lint-staged:makeCmdTasks"),fpi=async({commands:e,cwd:t,files:r,topLevelDir:n,shell:a,verbose:o})=>{dka("Creating listr tasks for commands %o",e);let l=Array.isArray(e)?e:[e],A=[];for(let f of l){let I=typeof f=="function",C=I?await f([...r]):f,b=Array.isArray(C)?C:[C];for(let E of b){if(I&&typeof E!="string")throw new Error(dXe("[Function]","Function task should return a string or an array of strings",C));let N=dpi({command:E,cwd:t,files:r,topLevelDir:n,isFn:I,shell:a,verbose:o});A.push({title:E,command:E,task:N})}}return A};var Ipi=xt(IT(),1);import dvr from"node:path";var gRe=(0,Ipi.default)("lint-staged:resolveGitRepo"),pka=async(e=process.cwd())=>{let t=qZ(["rev-parse","--show-toplevel"],{cwd:e}),r=qZ(["rev-parse","--absolute-git-dir"],{cwd:e}),[n,a]=await Promise.all([t,r]);return dvr.relative(n,a)},hpi=async(e=process.cwd())=>{try{gRe("Resolving git repo from `%s`",e),gRe("Unset GIT_DIR (was `%s`)",process.env.GIT_DIR),delete process.env.GIT_DIR,gRe("Unset GIT_WORK_TREE (was `%s`)",process.env.GIT_WORK_TREE),delete process.env.GIT_WORK_TREE;let t=await qZ(["rev-parse","--show-cdup"],{cwd:e}),r=xG(dvr.join(e,t));gRe("Resolved git repository top-level directory to be `%s`",r);let n=await pka(e),a=xG(dvr.join(r,n));return gRe("Resolved git config directory to be `%s`",a),{topLevelDir:r,gitConfigDir:a}}catch(t){return gRe("Failed to resolve git repo with error:",t),{error:t,topLevelDir:null,gitConfigDir:null}}};var bhi=xt(IT(),1);import yhi from"node:path";var ghi=xt(IT(),1),Ahi=xt(rhi(),1);import PZa from"node:fs/promises";import vRe from"node:path";import{pathToFileURL as LZa}from"node:url";var M0t=e=>import(LZa(e)).then(t=>t.default);import{createRequire as VZa}from"node:module";function nhi(e){try{return VZa(import.meta.url).resolve(e)}catch{return e}}var H0t="lint-staged",Y0t="package.json",UBr=["package.yaml","package.yml"],Q0t=[Y0t,...UBr,".lintstagedrc",".lintstagedrc.json",".lintstagedrc.yaml",".lintstagedrc.yml",".lintstagedrc.mjs",".lintstagedrc.js",".lintstagedrc.cjs","lint-staged.config.mjs","lint-staged.config.js","lint-staged.config.cjs"];var SRe=(0,ghi.default)("lint-staged:loadConfig"),MZa=(e,t)=>{let r=Y0t.includes(vRe.basename(e));try{let n=JSON.parse(t);return r?n[H0t]:n}catch(n){if(vRe.basename(e)===Y0t){SRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},zBr=(e,t)=>{let r=UBr.includes(vRe.basename(e));try{let n=Ahi.default.parse(t);return r?n[H0t]:n}catch(n){if(r){SRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},dhi="noExt",phi={".js":M0t,".json":MZa,".mjs":M0t,".cjs":M0t,".yaml":zBr,".yml":zBr,[dhi]:zBr},HZa=async e=>{let t=vRe.resolve(e);return await(await PZa.readFile(t)).toString()},YZa=async e=>{e=vRe.resolve(e);let t=vRe.extname(e)||dhi,r=phi[t],n=r.length>1?await HZa(e):void 0;return{config:await r(e,n),filepath:e}},j0t=async({configPath:e,cwd:t},r)=>{try{let n;if(e)SRe("Loading configuration from `%s`...",e),n=await YZa(nhi(e));else{SRe("Searching for configuration from `%s`...",t);let{lilconfig:l}=await Promise.resolve().then(()=>xt(uhi(),1));n=await l(H0t,{searchPlaces:Q0t,loaders:phi}).search(t)}if(!n)return{};let a=await n.config??null,o=n.filepath;return SRe("Successfully loaded config from `%s`:\n%O",o,a),{config:a,filepath:o}}catch(n){return SRe("Failed to load configuration from `%s` with error:\n",e,n),r.error(ydi(e)),{}}};var mhi=xt(IT(),1);import{inspect as KZa}from"node:util";var QZa=/(?{let t=`${e}`,r=null;for(;r=QZa.exec(e);){let n=r[0],a=n.replace(/{/,"").replace(/}/,"");t=t.replace(n,a)}return t},JZa=/{{[^}{]*}}/,UZa=e=>{let t=`${e}`,r=JZa.exec(e)?.[0];if(r){let n=r.replace("{{","{").replace("}}","}");t=t.replace(r,n)}return t},fhi=(e,t)=>{let r=UZa(XZa(e));return r!==e&&t.warn(gdi(e,r)),r};var qBr=(0,mhi.default)("lint-staged:validateConfig"),Ihi=e=>e&&typeof e=="object"&&!Array.isArray(e),hhi=new Map([["concurrent",e=>typeof e=="boolean"],["chunkSize",e=>typeof e=="number"],["globOptions",Ihi],["linters",Ihi],["ignore",e=>Array.isArray(e)],["subTaskConcurrency",e=>typeof e=="number"],["renderer",e=>typeof e=="string"],["relative",e=>typeof e=="boolean"]]),jZa=(e,t,r)=>{if(qBr("Validating config from `%s`...",t),!e||typeof e!="object"&&typeof e!="function")throw Ddi;if(typeof e=="function")return{"*":e};if(Object.entries(e).length===0)throw kdi;let n=[],a=Object.entries(e).reduce((o,[l,A])=>{if(hhi.has(l))return hhi.get(l)(A)&&n.push(dXe(l,"Advanced configuration has been deprecated.",A)),o;(!Array.isArray(A)||A.some(I=>typeof I!="string"&&typeof I!="function"))&&typeof A!="string"&&typeof A!="function"&&n.push(dXe(l,"Should be a string, a function, or an array of strings and functions.",A));let f=fhi(l,r);return{...o,[f]:A}},{});if(n.length){let o=n.join(` -`);throw r.error(jSr(t,o)),new Error(o)}return jBr("Validated config from `%s`:",t),jBr(YZa(e,{compact:!1})),a},UXe=(e,t,r)=>{try{return QZa(e,t,r)}catch(n){throw r.error(jSr(t,n)),n}};var hee=(0,ghi.default)("lint-staged:searchConfigs"),chi=["ls-files","-z","--full-name","-t"],XZa=e=>J0t.includes(uhi.basename(e)),lhi=e=>e.split("/").length,JZa=(e,t)=>lhi(e)>lhi(t)?-1:1,UZa=e=>t=>t.startsWith(kG(e)),Ahi=async({configObject:e,configPath:t,cwd:r=process.cwd(),topLevelDir:n=r},a)=>{if(hee("Searching for configuration files..."),e)return hee("Using single direct configuration object..."),{"":UXe(e,"config object",a)};if(t){hee("Using single configuration path...");let{config:C,filepath:b}=await q0t({configPath:t},a);return C?{[t]:UXe(C,b,a)}:{}}let[o,l]=await Promise.all([zZ(chi,{cwd:n}).then(dXe),zZ([...chi,"--others","--exclude-standard"],{cwd:n}).then(dXe)]),A=[...o,...l].flatMap(C=>C.startsWith("S ")?[]:[C.replace(/^[HSMRCK?U] /,"")]).filter(XZa).map(C=>kG(uhi.join(n,C))).filter(UZa(r)).sort(JZa);hee("Found possible config files:",A);let f=A.reduce((C,b)=>Object.assign(C,{[b]:null}),{});await Promise.all(Object.keys(f).map(C=>q0t({configPath:C},a).then(({config:b,filepath:E})=>{b&&(C!==E&&hee('Config file "%s" resolved to "%s"',C,E),f[C]=UXe(b,E,a))})));let I=Object.entries(f).filter(([,C])=>!!C).reduce((C,[b,E])=>({...C,[b]:E}),{});if(!Object.keys(I).length){hee('Could not find config files inside "%s"',r);let{config:C,filepath:b}=await q0t({cwd:r},a);C?(hee('Found parent configuration file from "%s"',b),I[b]=UXe(C,b,a)):hee('Could not find parent configuration files from "%s"',r)}return hee("Found %d config files",Object.keys(I).length),I};var jXe=(0,dhi.default)("lint-staged:runAll"),$0t=e=>Object.assign(new Error("lint-staged failed"),{ctx:e}),phi=async({allowEmpty:e=!1,concurrent:t=!0,configObject:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1},F=console)=>{jXe("Running all linter scripts...");let Q=!!a;a=Q?KXe.resolve(a):process.cwd(),jXe("Using working directory `%s`",a);let J=j_t({quiet:I}),{topLevelDir:ae,gitConfigDir:ne}=await opi(a);if(!ae)throw I||J.output.push(qAi),J.errors.add(bdi),$0t(J);let ce=await zZ(["log","-1"],{cwd:ae}).then(()=>!0).catch(()=>!1);J.shouldBackup=ce&&E,!J.shouldBackup&&!I&&F.warn(idi(ce,l)),J.shouldHidePartiallyStaged=N,!J.shouldHidePartiallyStaged&&!I&&F.warn(sdi(ce&&E,l));let fe=await mdi({cwd:ae,diff:l,diffFilter:A});if(!fe)throw I||J.output.push($Ai),J.errors.add(nvr),$0t(J,nvr);if(jXe(`Loaded list of staged files in git: -%O`,fe),fe.length===0)return I||J.output.push(rdi),J;let ue=await Ahi({configObject:r,configPath:n,cwd:a,topLevelDir:ae},F),de=Object.keys(ue).length;if(de===0)throw J.errors.add(fXe),$0t(J,fXe);let be=await Ddi({configs:ue,files:fe,singleConfigMode:r||n!==void 0}),Se=de>1,De=!1,k={ctx:J,exitOnError:!1,registerSignalListeners:!1,...hdi({debug:o,quiet:I},F)},tt=0,ze=[],Le=new Set;for(let[Ot,{config:Er,files:Sr}]of Object.entries(be)){let jt=Ot?kG(KXe.relative(a,Ot)):"Config object",Bt=$Sr({baseDir:ae,files:Sr,maxArgLength:f,relative:C}),Dt=Se&&!Q?KXe.dirname(Ot):a,Fr=Bt.length;Fr>1&&jXe("Chunked staged files from `%s` into %d part",Ot,Fr);for(let[$t,Xt]of Bt.entries()){let lr=await Promise.all(fdi({config:Er,cwd:Dt,files:Xt,relative:C}).map(cr=>ipi({commands:cr.commands,cwd:Dt,files:cr.fileList,topLevelDir:ae,shell:b,verbose:B}).then(Ar=>{cr.fileList.forEach(yn=>{let ke=KXe.isAbsolute(yn)?yn:kG(KXe.join(Dt,yn));Le.add(ke)}),De=De||Ar.some(yn=>yn.command==="git add");let qr=cr.fileList.length;return{title:`${cr.pattern}${hp.dim(` \u2014 ${qr} ${qr===1?"file":"files"}`)}`,task:async(yn,ke)=>ke.newListr(Ar,{concurrent:!1,exitOnError:!0}),skip:()=>qr===0?`${cr.pattern}${hp.dim(" \u2014 no files")}`:!1}})));tt+=lr.length,ze.push({title:`${jt}${hp.dim(` \u2014 ${Xt.length} ${Xt.length>1?"files":"file"}`)}`+(Fr>1?hp.dim(` (chunk ${$t+1}/${Fr})...`):""),task:(cr,Ar)=>Ar.newListr(lr,{concurrent:t,exitOnError:!0}),skip:()=>J.errors.has(r4)?adi:lr.every(cr=>cr.skip())?`${jt}${hp.dim(" \u2014 no tasks to run")}`:!1})}}if(De&&!I&&F.warn(odi),ze.every(Ot=>Ot.skip()))return I||J.output.push(ndi),J;let Je=$Sr({baseDir:a,files:Array.from(Le),maxArgLength:f,relative:!1}),ft=new U_t({allowEmpty:e,gitConfigDir:ne,topLevelDir:ae,matchedFileChunks:Je,diff:l,diffFilter:A}),lt=new M_t([{title:"Preparing lint-staged...",task:Ot=>ft.prepare(Ot)},{title:"Hiding unstaged changes to partially staged files...",task:Ot=>ft.hideUnstagedChanges(Ot),enabled:lvr},{title:`Running tasks for ${l?"changed":"staged"} files...`,task:(Ot,Er)=>Er.newListr(ze,{concurrent:t}),skip:()=>ze.every(Ot=>Ot.skip())},{title:"Applying modifications from tasks...",task:Ot=>ft.applyModifications(Ot),skip:Xdi},{title:"Restoring unstaged changes to partially staged files...",task:Ot=>ft.restoreUnstagedChanges(Ot),enabled:lvr,skip:Jdi},{title:"Reverting to original state because of errors...",task:Ot=>ft.restoreOriginalState(Ot),enabled:Udi,skip:Kdi},{title:"Cleaning up temporary files...",task:Ot=>ft.cleanup(Ot),enabled:jdi,skip:zdi}],k);if(jXe("Set max event listeners to the number of tasks: %i",tt),J.events.setMaxListeners(tt),await lt.run(),J.errors.size>0)throw $0t(J);return J};var hhi=Nt(fT(),1);import{constants as fhi}from"node:fs";import Ihi from"node:fs/promises";import KZa from"node:path";var eyt=(0,hhi.default)("lint-staged:validateOptions"),mhi=async(e={},t)=>{if(eyt("Validating options..."),typeof e.cwd=="string")try{let r=KZa.resolve(e.cwd);await Ihi.access(r,fhi.F_OK)}catch(r){throw eyt("Failed to validate options: %o",e),t.error(KSr("cwd",e.cwd,r.message)),ivr}if(typeof e.shell=="string")try{await Ihi.access(e.shell,fhi.X_OK)}catch(r){throw eyt("Failed to validate options: %o",e),t.error(KSr("shell",e.shell,r.message)),ivr}eyt("Validated options: %o",e)};var zBr=(0,Chi.default)("lint-staged"),jZa=()=>{switch(process.platform){case"darwin":return 262144;case"win32":return 8191;default:return 131072}},zZa=async({allowEmpty:e=!1,concurrent:t=!0,config:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f=jZa()/2,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1}={},F=console)=>{let Q=await zZ(["version","--build-options"],{cwd:a});zBr("%s",Q);let J={allowEmpty:e,concurrent:t,configObject:r,configPath:n,cwd:a,debug:o,diff:l,diffFilter:A,maxArgLength:f,quiet:I,relative:C,shell:b,stash:E,hidePartiallyStaged:N,verbose:B};await mhi(J,F),zBr("Unset GIT_LITERAL_PATHSPECS (was `%s`)",process.env.GIT_LITERAL_PATHSPECS),delete process.env.GIT_LITERAL_PATHSPECS;try{let ae=await phi(J,F);return zBr("Tasks were executed successfully!"),zSr(ae,F),!0}catch(ae){if(ae?.ctx?.errors){let{ctx:ne}=ae;return ne.errors.has(fXe)?F.error(tdi):ne.errors.has(Hae)?F.warn(cdi):ne.errors.has(r4)&&!ne.errors.has(X_t)&&(F.error(Mae),ne.shouldBackup&&F.error(ldi)),zSr(ne,F),!1}throw ae}},_hi=zZa;var qZa=()=>{try{return yhi("git rev-parse --show-toplevel",{encoding:"utf-8"}).trim()}catch{return process.cwd()}},$Za=e=>JSON.stringify(e),eLa=()=>process.env.npm_execpath||process.argv[1]||"yarn",tLa=(e=eLa())=>{let t=r=>`${$Za(e)} ${r}`;return{"*.{yml,yaml,json,graphql,md}":t("format"),"*.{js,mjs,cjs,jsx,ts,tsx}":[t("format"),t("lint")],"*.{ts,tsx}":t("typecheck"),"*.{test,spec}.{ts,tsx}":t("test unit")}},tyt=class extends bhi.BaseCommand{static paths=[["commit","staged"]];args=vA.Rest({required:0});async execute(){try{let t=8190;try{let n=parseInt(yhi("getconf ARG_MAX",{encoding:"utf-8"}),10);t=Math.floor(n*.5)}catch{}return await _hi({config:tLa(),cwd:qZa(),maxArgLength:t})?0:1}catch{return 1}}};var Ehi={commands:[y_t,JCt,tyt]};var ewr={};Uf(ewr,{SetVersionCommand:()=>zXe,default:()=>Nhi});var Thi=Nt(dl(),1),Rhi=Nt(mn(),1);Rl();import{access as rLa}from"node:fs/promises";import{writeFile as nLa}from"node:fs/promises";import{dirname as iLa}from"node:path";import{join as vhi}from"node:path";var sLa="package.json",oLa="yarn.lock",aLa="Package manifest was not found in current directory or its ancestors",Shi="/unc/",cLa=/^\/([A-Za-z]:)(?=\/|$)/,lLa=/^([A-Za-z]:)(?=\/|$)/,uLa=e=>{if(!e.toLowerCase().startsWith(Shi))return null;let[t,r,...n]=e.slice(Shi.length).split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},gLa=e=>{if(!e.startsWith("\\\\")&&!e.startsWith("//"))return null;let[t,r,...n]=e.slice(2).replace(/\\/g,"/").split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},ryt=(e,t=process.platform)=>{if(t!=="win32")return e;let r=uLa(e);if(r){let[n,a,o]=r;return`\\\\${n}\\${a}${o.replace(/\//g,"\\")}`}return e.replace(cLa,"$1").replace(/\//g,"\\")},ALa=(e,t=process.platform)=>{if(t!=="win32")return e;let r=gLa(e);if(r){let[n,a,o]=r;return`/unc/${n}/${a}${o.replace(/\\/g,"/")}`}return e.replace(/\\/g,"/").replace(lLa,"/$1")},Bhi=async e=>{try{return await rLa(e),!0}catch{return!1}},$Br=async e=>{let t=ryt(e);if(await Bhi(vhi(t,sLa)))return e;let r=ALa(iLa(t));if(r===e)throw new Error(aLa);return $Br(r)},whi=async e=>{let t=vhi(ryt(e),oLa);await Bhi(t)||await nLa(t,"")};var zXe=class extends Thi.BaseCommand{static paths=[["set","version","atls"]];static usage=Ub.Usage({description:"lock the Yarn version used by the project",details:"\n This command will get latest Atlantis bundle from [Atlantis Raijin repo](https://github.com/atls/raijin) and bump `@atls/code-runtime` dependency\n "});async execute(){let t=await $Br(this.context.cwd),r=process.cwd();await whi(t);try{process.chdir(ryt(t));let n=["set","version"];n.push("https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs");let a=await this.cli.run(n,{cwd:t}),o=["up","@atls/code-runtime"],l=await this.cli.run(o,{cwd:t}),A=await Rhi.Configuration.find(t,this.context.plugins);return await A.triggerHook(f=>f.afterYarnVersionSet,A,{...this.context,cwd:t}),a||l}finally{process.chdir(r)}}};var Nhi={commands:[zXe]};var TTr={};Uf(TTr,{WorkspaceExportCommand:()=>v4e,default:()=>j_i});var Y_i=Nt(dl(),1),Q_i=Nt(dl(),1),X_i=Nt(mn(),1),J_i=Nt(mn(),1),U_i=Nt(mn(),1),K_i=Nt(mn(),1);Rl();var twr=Nt(Io(),1),rwr=Nt(Io(),1);var Dhi=async(e,t,r)=>{let n=e.configuration.get("rcFilename"),a=rwr.ppath.join(e.cwd,n);await twr.xfs.existsPromise(a)&&(r.reportInfo(null,n),await twr.xfs.copyPromise(rwr.ppath.join(t,n),a,{overwrite:!0}))};var JRe={};Uf(JRe,{pack:()=>APa});var wTr=Nt(mn(),1),V_i=Nt(mn(),1),W_i=Nt(mn(),1),O_i=Nt(Io(),1),P_i=Nt(mn(),1),M_i=Nt(Io(),1),H_i=Nt(Ime(),1);var hCi=Nt(mn(),1),mCi=Nt(mn(),1),CCi=Nt(Io(),1),_Ci=Nt(Io(),1),yCi=Nt(Io(),1),Hwr=Nt(mn(),1),Ywr=Nt(Io(),1),bCi=Nt(Io(),1),Byt=class e extends hCi.Cache{nodeLinker;parentCache;parentMirror=new Map;workspaceMutexes=new Map;static async find(t,r){let n=t.get("nodeLinker"),a=new e(t.get("cacheFolder"),{configuration:t,nodeLinker:n,parentCache:r});return await a.setup(),a}constructor(t,{configuration:r,nodeLinker:n,parentCache:a}){super(t,{configuration:r}),this.nodeLinker=n,this.parentCache=a}getLocatorMirrorPath(t){return this.parentMirror.get(Hwr.structUtils.slugifyLocator(t))??null}async setup(){await super.setup();let t=await bCi.xfs.readdirPromise(this.parentCache.cwd,{withFileTypes:!0});for(let r of t){let n;r.isDirectory()||!(n=r.name.match(/^(.*)-[a-f\d]+\.zip$/i))||this.parentMirror.set(n[1],Ywr.ppath.join(this.parentCache.cwd,r.name))}}async fetchPackageFromCache(t,r,{loader:n}){let a=new _Ci.NodeFS,o=async()=>{let l=Ywr.ppath.resolve(this.cwd,"../workspaces",Hwr.structUtils.stringifyIdent(t)),f=(async()=>{if(!await a.existsPromise(l)){let C=await n();await a.copyPromise(l,yCi.PortablePath.root,{baseFs:C}),C.discardAndClose()}return l})();this.workspaceMutexes.set(t.locatorHash,f);try{return await f}finally{this.workspaceMutexes.delete(t.locatorHash)}};if(t.reference.startsWith(mCi.WorkspaceResolver.protocol)){for(let A;A=this.workspaceMutexes.get(t.locatorHash);)await A;let l=await o();return[new CCi.JailFS(l,{baseFs:a}),()=>{},null]}else return await super.fetchPackageFromCache(t,r,{loader:n})}};var D_i=Nt(mn(),1),k_i=Nt(mn(),1);var x_i=Nt(mn(),1),ETr=Nt(Io(),1),Sme=Nt(Io(),1),STr=Nt(Ime(),1),gPa=Nt(S_i(),1);var _Tr=Nt(mn(),1),Vyt=class{resolvers;constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${_Tr.structUtils.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${_Tr.structUtils.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};var B_i=Nt(mn(),1),Wyt=Nt(mn(),1),w_i=Nt(jC(),1),v_i=/^(?!v)[a-z0-9._-]+$/i,Oyt=class{supportsDescriptor(t,r){return!!(B_i.semverUtils.validRange(t.range)||v_i.test(t.range))}supportsLocator(t,r){return!!(w_i.default.valid(t.reference)||v_i.test(t.reference))}shouldPersistResolution(t,r){return r.resolver.shouldPersistResolution(this.forwardLocator(t,r),r)}bindDescriptor(t,r,n){return n.resolver.bindDescriptor(this.forwardDescriptor(t,n),r,n)}getResolutionDependencies(t,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(t,r),r)}async getCandidates(t,r,n){return n.resolver.getCandidates(this.forwardDescriptor(t,n),r,n)}async getSatisfying(t,r,n,a){return a.resolver.getSatisfying(this.forwardDescriptor(t,a),r,n,a)}async resolve(t,r){let n=await r.resolver.resolve(this.forwardLocator(t,r),r);return Wyt.structUtils.renamePackage(n,t)}forwardDescriptor(t,r){return Wyt.structUtils.makeDescriptor(t,`${r.project.configuration.get("defaultProtocol")}${t.range}`)}forwardLocator(t,r){return Wyt.structUtils.makeLocator(t,`${r.project.configuration.get("defaultProtocol")}${t.reference}`)}};var Pyt=class e{static protocol="virtual:";static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};var yTr=Nt(mn(),1),T_i=Nt(mn(),1),R_i=Nt(Io(),1);var Myt=class extends T_i.WorkspaceFetcher{constructor(r){super();this.originalProject=r}getLocalPath(r,n){return super.getLocalPath(r,this.rewriteOpts(r,n))}async fetch(r,n){if(r.reference.slice(yTr.WorkspaceResolver.protocol.length)===".")return await super.fetch(r,n);let a=n.checksums.get(r.locatorHash)||null,[o,l]=await n.cache.fetchPackageFromCache(r,a,{loader:()=>this.packWorkspace(r)});return{packageFs:o,releaseFs:l,localPath:this.getLocalPath(r,n),prefixPath:R_i.PortablePath.dot}}async packWorkspace(r){let n=this.originalProject.getWorkspaceByLocator(r);return await N_i(n,{compressionLevel:this.originalProject.configuration.get("compressionLevel"),stripComponents:1})}rewriteOpts(r,n){return r.reference.slice(yTr.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var bTr=Nt(mn(),1),Hyt=Nt(mn(),1),Yyt=class extends Hyt.WorkspaceResolver{constructor(r){super();this.originalProject=r}supportsDescriptor(r,n){return super.supportsDescriptor(r,this.rewriteOpts(r,n))}supportsLocator(r,n){return super.supportsLocator(r,this.rewriteOpts(r,n))}shouldPersistResolution(r,n){return super.shouldPersistResolution(r,this.rewriteOpts(r,n))}bindDescriptor(r,n,a){return super.bindDescriptor(r,n,this.rewriteOpts(r,a))}getResolutionDependencies(r,n){return super.getResolutionDependencies(r,this.rewriteOpts(r,n))}async getCandidates(r,n,a){return await super.getCandidates(r,n,this.rewriteOpts(r,a))}async getSatisfying(r,n,a){return await super.getSatisfying(r,n,this.rewriteOpts(r,a))}async resolve(r,n){let a=r.reference.slice(Hyt.WorkspaceResolver.protocol.length),{project:o}=this.rewriteOpts(r,n),l=o.getWorkspaceByCwd(a);return{...r,version:l.manifest.version||"0.0.0",languageName:"unknown",linkType:a==="."?bTr.LinkType.SOFT:bTr.LinkType.HARD,dependencies:l.manifest.dependencies,peerDependencies:l.manifest.peerDependencies,dependenciesMeta:l.manifest.dependenciesMeta,peerDependenciesMeta:l.manifest.peerDependenciesMeta,bin:l.manifest.bin}}rewriteOpts(r,n){return("descriptorHash"in r?r.range:r.reference).slice(Hyt.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var G_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new k_i.MultiFetcher([new D_i.VirtualFetcher,new Myt(e),...t])},F_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new Vyt([new Pyt,new Yyt(e),new Oyt,...t])};var Z_i=async e=>{let t=await Sme.xfs.mktempPromise(),r=await STr.packUtils.genPackStream(e),n=ETr.ppath.join(t,"package.tgz"),a=Sme.xfs.createWriteStream(n);return r.pipe(a),await new Promise(o=>{a.on("finish",o)}),Sme.xfs.readFilePromise(n)},N_i=async(e,t)=>await Sme.xfs.mktempPromise(async r=>{let n=await STr.packUtils.genPackStream(e),a=ETr.ppath.join(r,"package.tgz"),o=Sme.xfs.createWriteStream(a);n.pipe(o),await new Promise(A=>{o.on("finish",A)});let l=await Sme.xfs.readFilePromise(a);return await x_i.tgzUtils.convertToZip(l,t)});var vTr=Nt(Io(),1),BTr=Nt(Io(),1),L_i=async e=>{let t=vTr.ppath.join(e,".yarn","releases");if(!await BTr.xfs.existsPromise(t))return;let r=(await BTr.xfs.readdirPromise(t)).sort().find(n=>n.endsWith(".cjs")||n.endsWith(".mjs"));if(r)return vTr.ppath.join(".yarn","releases",r)};var APa=async(e,t,r,n,a)=>{process.env.IMAGE_PACK=!0;let o=await W_i.Cache.find(e,{immutable:!0});await t.restoreInstallState(),await H_i.packUtils.prepareForPack(r,{report:n},async()=>{r.manifest.devDependencies.clear();let l=new O_i.CwdFS(a),A=await Z_i(r);await P_i.tgzUtils.extractArchiveTo(A,l,{stripComponents:1}),await Dhi(t,a,n);let f=wTr.Configuration.create(a,a,e.plugins);f.values.set("compressionLevel",t.configuration.get("compressionLevel")),f.values.set("enableGlobalCache",!1),f.values.set("enableMirror",!1),f.values.set("globalFolder",e.get("globalFolder")),f.values.set("pnpEnableEsmLoader",e.get("pnpEnableEsmLoader")),f.values.set("cacheFolder",M_i.ppath.join(a,".yarn/packages")),f.values.set("preferAggregateCacheInfo",!0),await wTr.Configuration.updateConfiguration(a,{cacheFolder:".yarn/packages",compressionLevel:f.get("compressionLevel"),enableGlobalCache:f.get("enableGlobalCache"),enableNetwork:f.get("enableNetwork"),enableMirror:f.get("enableMirror"),globalFolder:".yarn/berry",nodeLinker:t.configuration.get("nodeLinker"),yarnPath:await L_i(a)}),await f.getPackageExtensions();let{project:I,workspace:C}=await V_i.Project.find(f,a);if(!C)throw new Error("Workspace not found");C.manifest.dependencies=r.manifest.dependencies,C.manifest.resolutions=t.topLevelWorkspace.manifest.resolutions,C.manifest.devDependencies.clear(),await I.install({cache:await Byt.find(f,o),fetcher:G_i(t),resolver:F_i(t),persistProject:!0,report:n})})};var dPa=Nt(Ime(),1);var v4e=class extends Y_i.BaseCommand{static paths=[["export"]];destination=vA.String("-d,--destination",{required:!0});async execute(){let t=await X_i.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await J_i.Project.find(t,this.context.cwd);if(!n)throw new Q_i.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await U_i.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await JRe.pack(t,r,n,o,this.destination),o.reportInfo(null,`Workspace ${n.manifest.name?K_i.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} exported to ${this.destination}`)})).exitCode()}};var j_i={commands:[v4e]};var nxr={};Uf(nxr,{FormatCommand:()=>hUe,default:()=>UNi});var YNi=Nt(dl(),1),QNi=Nt(mn(),1),XNi=Nt(mn(),1);Rl();var JNi=Nt(ul(),1);var $yt=Nt(ul(),1),u0i=Nt(ul(),1);var Qyt=class{constructor(t){this.frames=t}get topFrame(){return this.frames.find(t=>t.file)}};var z_i=Nt(ift(),1);var q_i=e=>{let t=e.split(` -`),r=process.cwd(),n=new z_i.default({cwd:r}),a=t.reduce((o,l)=>{let A=n.parseLine(l.trim());return A&&o.push(A),o},[]);return new Qyt(a)};var l0i=Nt(ul(),1),jRe=Nt(ul(),1);var zyt=Nt(Ec(),1);var o0i=Nt(ul(),1),Kyt=Nt(Ec(),1);import{basename as IPa}from"node:path";import{isAbsolute as hPa}from"node:path";import{relative as mPa}from"node:path";var NTr=Nt(Ec(),1),Uyt=Nt(ul(),1),Bme=Nt(PTe(),1);var Ey="\x1B[",B4e="\x1B]",URe="\x07",Xyt=";",$_i=process.env.TERM_PROGRAM==="Apple_Terminal",BC={};BC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?Ey+(e+1)+"G":Ey+(t+1)+";"+(e+1)+"H"};BC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=Ey+-e+"D":e>0&&(r+=Ey+e+"C"),t<0?r+=Ey+-t+"A":t>0&&(r+=Ey+t+"B"),r};BC.cursorUp=(e=1)=>Ey+e+"A";BC.cursorDown=(e=1)=>Ey+e+"B";BC.cursorForward=(e=1)=>Ey+e+"C";BC.cursorBackward=(e=1)=>Ey+e+"D";BC.cursorLeft=Ey+"G";BC.cursorSavePosition=$_i?"\x1B7":Ey+"s";BC.cursorRestorePosition=$_i?"\x1B8":Ey+"u";BC.cursorGetPosition=Ey+"6n";BC.cursorNextLine=Ey+"E";BC.cursorPrevLine=Ey+"F";BC.cursorHide=Ey+"?25l";BC.cursorShow=Ey+"?25h";BC.eraseLines=e=>{let t="";for(let r=0;r[B4e,"8",Xyt,Xyt,t,URe,e,B4e,"8",Xyt,Xyt,URe].join("");BC.image=(e,t={})=>{let r=`${B4e}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+URe};BC.iTerm={setCwd:(e=process.cwd())=>`${B4e}50;CurrentDir=${e}${URe}`,annotation:(e,t={})=>{let r=`${B4e}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+URe}};var e0i=BC;var Jyt=Nt(n0i(),1);function vme(e,t,{target:r="stdout",...n}={}){return Jyt.default[r]?e0i.link(e,t):n.fallback===!1?e:typeof n.fallback=="function"?n.fallback(e,t):`${e} (\u200B${t}\u200B)`}vme.isSupported=Jyt.default.stdout;vme.stderr=(e,t,r={})=>vme(e,t,{target:"stderr",...r});vme.stderr.isSupported=Jyt.default.stderr;var i0i=({children:e,url:t,fallback:r=!0})=>NTr.default.createElement(Uyt.Transform,{transform:n=>vme(n,t,{fallback:r})},NTr.default.createElement(Uyt.Text,null,e));i0i.propTypes={children:Bme.default.oneOfType([Bme.default.arrayOf(Bme.default.node),Bme.default.node]).isRequired,url:Bme.default.string.isRequired,fallback:Bme.default.bool};var s0i=i0i;var jyt=Nt(Wc(),1),a0i=({url:e,cwd:t=process.cwd(),column:r=0,line:n=0})=>{let a=(0,Kyt.useMemo)(()=>{try{return new URL(e).pathname}catch{return e}},[e]),o=(0,Kyt.useMemo)(()=>hPa(a)?mPa(t,a):a,[a]),l=(0,Kyt.useMemo)(()=>o.includes("/node_modules/")?IPa(o):o,[o]);return(0,jyt.jsx)(s0i,{url:e,children:(0,jyt.jsxs)(o0i.Text,{color:"gray",children:[l,":",n,":",r]})})};import{readFileSync as CPa}from"node:fs";import{fileURLToPath as _Pa}from"node:url";var c0i=e=>{if(e.sourceMap)return e.sourceMap.payload.sourcesContent[0];if(e.file)try{return CPa(e.file.startsWith("file:/")?_Pa(new URL(e.file)):e.file,"utf-8")}catch{return null}return null};var d6=Nt(Wc(),1),qyt=({children:e,cwd:t})=>{let r=(0,zyt.useMemo)(()=>q_i(e),[e]),n=(0,zyt.useMemo)(()=>r.topFrame||r.frames.at(0),[r]),a=(0,zyt.useMemo)(()=>n?c0i(n):null,[n]);return(0,d6.jsxs)(jRe.Box,{flexDirection:"column",flexGrow:1,children:[!!a&&!!r.topFrame?.line&&(0,d6.jsx)(jRe.Box,{marginBottom:1,children:(0,d6.jsx)(B8,{line:r.topFrame.line,column:r.topFrame.column,children:a})}),r.frames.map(o=>(0,d6.jsxs)(jRe.Box,{flexDirection:"row",children:[(0,d6.jsx)(jRe.Box,{flexBasis:"30%",children:(0,d6.jsx)(l0i.Text,{children:o.function})}),(0,d6.jsx)(jRe.Box,{flexBasis:"70%",justifyContent:"flex-end",children:!!o.file&&(0,d6.jsx)(a0i,{cwd:t,url:o.file,line:o.line,column:o.column})})]},UO()))]})};var gce=Nt(Wc(),1),yPa=({children:e})=>e?(0,gce.jsx)($yt.Box,{marginBottom:1,children:(0,gce.jsx)(u0i.Text,{bold:!0,color:"red",children:e})}):null,Ok=({error:e,cwd:t})=>(0,gce.jsxs)($yt.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,children:[(0,gce.jsx)(yPa,{children:e.message}),!!e.stack&&(0,gce.jsx)($yt.Box,{children:(0,gce.jsx)(qyt,{cwd:t,children:e.stack})})]});var G4e=Nt(ul(),1),j0i=Nt(Ec(),1),z0i=Nt(Ec(),1);var kTr=Nt(ul(),1),xTr=Nt(Ec(),1);var T4e=Nt(Ec(),1),jPa=Nt(DTr(),1);var p0i={info:"blue",success:"green",error:"red",warning:"yellow"},FPa={styles:{container:({variant:e})=>({flexGrow:1,borderStyle:"round",borderColor:p0i[e],gap:1,paddingX:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:p0i[e]}),content:()=>({flexShrink:1,flexGrow:1,minWidth:0,flexDirection:"column",gap:1}),title:()=>({bold:!0}),message:()=>({})},config({variant:e}){let t;return e==="info"&&(t=GI.info),e==="success"&&(t=GI.tick),e==="error"&&(t=GI.cross),e==="warning"&&(t=GI.warning),{icon:t}}},f0i=FPa;var ZPa={styles:{container:({color:e})=>({backgroundColor:e}),label:()=>({color:"black"})}},I0i=ZPa;var LPa={styles:{input:({isFocused:e})=>({dimColor:!e})}},h0i=LPa;var VPa={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},m0i=VPa;var WPa={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})}},C0i=WPa;var OPa={styles:{container:()=>({flexGrow:1,minWidth:0}),completed:()=>({color:"magenta"}),remaining:()=>({dimColor:!0})},config:()=>({completedCharacter:GI.square,remainingCharacter:GI.squareLightShade})},_0i=OPa;var PPa={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},y0i=PPa;var MPa={styles:{container:()=>({gap:1}),frame:()=>({color:"blue"}),label:()=>({})}},b0i=MPa;var HPa={success:"green",error:"red",warning:"yellow",info:"blue"},YPa={success:GI.tick,error:GI.cross,warning:GI.warning,info:GI.info},QPa={styles:{container:()=>({gap:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:HPa[e]}),message:()=>({})},config:({variant:e})=>({icon:YPa[e]})},E0i=QPa;var XPa={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})},config:()=>({marker:GI.line})},S0i=XPa;var JPa={styles:{value:()=>({})}},v0i=JPa;var UPa={styles:{value:()=>({})}},B0i=UPa;var KPa={styles:{value:()=>({})}},w0i=KPa;var zPa={components:{Alert:f0i,Badge:I0i,ConfirmInput:h0i,MultiSelect:m0i,OrderedList:C0i,ProgressBar:_0i,Select:y0i,Spinner:b0i,StatusMessage:E0i,UnorderedList:S0i,TextInput:v0i,EmailInput:B0i,PasswordInput:w0i}},qPa=(0,T4e.createContext)(zPa);var VS=e=>(0,T4e.useContext)(qPa).components[e];function GG({children:e,color:t="magenta"}){let{styles:r}=VS("Badge"),n=e;return typeof e=="string"&&(n=e.toUpperCase()),xTr.default.createElement(kTr.Text,{...r.container({color:t})}," ",xTr.default.createElement(kTr.Text,{...r.label()},n)," ")}var $Pa=Nt(Ec(),1),T0i=Nt(ul(),1);var k0i=Nt(ul(),1),bee=Nt(Ec(),1);var N4e=Nt(ul(),1),qRe=Nt(Ec(),1);var R0i=Nt(Ec(),1);var R4e=GI.line;var ebt=(0,R0i.createContext)({marker:R4e});function N0i({children:e}){let{marker:t}=(0,qRe.useContext)(ebt),{styles:r}=VS("UnorderedList");return qRe.default.createElement(N4e.Box,{...r.listItem()},qRe.default.createElement(N4e.Text,{...r.marker()},t),qRe.default.createElement(N4e.Box,{...r.content()},e))}var D0i=Nt(Ec(),1),GTr=(0,D0i.createContext)({depth:0});function e3a({children:e}){let{depth:t}=(0,bee.useContext)(GTr),{styles:r,config:n}=VS("UnorderedList"),a=(0,bee.useMemo)(()=>({depth:t+1}),[t]),o=(0,bee.useMemo)(()=>{let{marker:l}=n();return typeof l=="string"?{marker:l}:Array.isArray(l)?{marker:l[t]??l.at(-1)??R4e}:{marker:R4e}},[n,t]);return bee.default.createElement(GTr.Provider,{value:a},bee.default.createElement(ebt.Provider,{value:o},bee.default.createElement(k0i.Box,{...r.list()},e)))}e3a.Item=N0i;var i3a=Nt(Ec(),1),G0i=Nt(ul(),1);var t3a=Nt(Ec(),1),x0i=Nt(ul(),1);var D4e=Nt(Ec(),1);var n3a=Nt(ul(),1);var wme=Nt(Ec(),1),Tme=Nt(ul(),1);function tH({value:e}){let[t,r]=(0,wme.useState)(0),[n,a]=(0,wme.useState)(null);if(n){let C=(0,Tme.measureElement)(n);C.width!==t&&r(C.width)}let o=Math.min(100,Math.max(0,e)),l=Math.round(o/100*t),A=t-l,{styles:f,config:I}=VS("ProgressBar");return wme.default.createElement(Tme.Box,{ref:a,...f.container()},l>0&&wme.default.createElement(Tme.Text,{...f.completed()},I().completedCharacter.repeat(l)),A>0&&wme.default.createElement(Tme.Text,{...f.remaining()},I().remainingCharacter.repeat(A)))}var a3a=Nt(Ec(),1),Z0i=Nt(ul(),1);var s3a=Nt(Ec(),1),F0i=Nt(ul(),1);var k4e=Nt(Ec(),1);var o3a=Nt(ul(),1);var c3a=Nt(Ec(),1),V0i=Nt(ul(),1);var L0i=Nt(Ec(),1);var g3a=Nt(Ec(),1),A3a=Nt(ul(),1);var tbt=Nt(Ec(),1);var l3a=Nt(Ec(),1),u3a=Nt(ul(),1);var eSu=hp.inverse(" ");var P0i=Nt(ul(),1),a4=Nt(Ec(),1);var x4e=Nt(ul(),1),$Re=Nt(Ec(),1);var W0i=Nt(Ec(),1);var rbt=(0,W0i.createContext)({marker:GI.line});function nbt({children:e}){let{marker:t}=(0,$Re.useContext)(rbt),{styles:r}=VS("OrderedList");return $Re.default.createElement(x4e.Box,{...r.listItem()},$Re.default.createElement(x4e.Text,{...r.marker()},t),$Re.default.createElement(x4e.Box,{...r.content()},e))}var O0i=Nt(Ec(),1),FTr=(0,O0i.createContext)({marker:""});function d3a({children:e}){let{marker:t}=(0,a4.useContext)(FTr),{styles:r}=VS("OrderedList"),n=0;for(let o of a4.default.Children.toArray(e))!(0,a4.isValidElement)(o)||o.type!==nbt||n++;let a=String(n).length;return a4.default.createElement(P0i.Box,{...r.list()},a4.default.Children.map(e,(o,l)=>{if(!(0,a4.isValidElement)(o)||o.type!==nbt)return o;let A=`${String(l+1).padStart(a)}.`,f=`${t}${A}`;return a4.default.createElement(FTr.Provider,{value:{marker:f}},a4.default.createElement(rbt.Provider,{value:{marker:f}},o))}))}d3a.Item=nbt;var I3a=Nt(Ec(),1),h3a=Nt(ul(),1);var ZTr=Nt(Ec(),1);var p3a=Nt(Ec(),1),f3a=Nt(ul(),1);var vSu=hp.inverse(" ");var m3a=Nt(Ec(),1),M0i=Nt(ul(),1);var C3a=Nt(Ec(),1),H0i=Nt(ul(),1);var b3a=Nt(Ec(),1),E3a=Nt(ul(),1);var ibt=Nt(Ec(),1);var _3a=Nt(Ec(),1),y3a=Nt(ul(),1);var QSu=hp.inverse(" ");var Y0i=Nt(Ec(),1),LTr=Nt(Ec(),1),X0i=Nt(Wc(),1),Q0i=({formatter:e})=>{let[t,r]=(0,LTr.useState)(0),[n,a]=(0,LTr.useState)(0);return(0,Y0i.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("format:end",l),e.on("end",A),()=>{e.off("start",o),e.off("format:end",l),e.off("end",A)}},[e,t,r,a]),(0,X0i.jsx)(tH,{value:t>0?n/t*100:0})};import{relative as J0i}from"node:path";var eNe=Nt(ul(),1),CP=Nt(ul(),1),U0i=Nt(Ec(),1),sbt=Nt(Ec(),1);var WS=Nt(Wc(),1),S3a=({changed:e})=>e?(0,WS.jsx)(CP.Text,{color:"green",children:GI.tick}):(0,WS.jsx)(CP.Text,{color:"white",children:GI.circleDotted}),v3a=({changed:e,children:t})=>e?(0,WS.jsx)(CP.Text,{color:"white",children:t}):(0,WS.jsx)(CP.Text,{color:"gray",children:t}),K0i=({cwd:e,formatter:t})=>{let[r,n]=(0,sbt.useState)(void 0),[a,o]=(0,sbt.useState)(0),[l,A]=(0,sbt.useState)(0);return(0,U0i.useEffect)(()=>{let f=b=>{o(b.files.length)},I=b=>{n({changed:!1,file:J0i(e,b.file)})},C=b=>{n({changed:b.changed,file:J0i(e,b.file)}),b.changed&&A(E=>E+1)};return t.on("start",f),t.on("format:start",I),t.on("format:end",C),()=>{t.off("start",f),t.off("format:start",I),t.off("format:end",C)}},[t,n,o,A]),r?(0,WS.jsxs)(eNe.Box,{flexDirection:"row",width:"100%",children:[(0,WS.jsxs)(eNe.Box,{flexGrow:1,children:[(0,WS.jsx)(GG,{color:"cyan",children:"Format:"}),(0,WS.jsx)(CP.Text,{children:" "}),(0,WS.jsx)(v3a,{changed:r.changed,children:r.file})]}),(0,WS.jsx)(eNe.Box,{flexDirection:"row",children:(0,WS.jsxs)(eNe.Box,{children:[(0,WS.jsx)(S3a,{changed:r.changed}),(0,WS.jsx)(CP.Text,{children:" "}),(0,WS.jsxs)(CP.Text,{color:"green",children:[l," Formatted"]}),(0,WS.jsx)(CP.Text,{children:" "}),(0,WS.jsxs)(CP.Text,{color:"white",children:[a," Files"]}),(0,WS.jsx)(CP.Text,{children:" "})]})})]}):(0,WS.jsxs)(eNe.Box,{flexDirection:"row",children:[(0,WS.jsx)(GG,{color:"cyan",children:"Format:"}),(0,WS.jsx)(CP.Text,{children:" "}),(0,WS.jsx)(CP.Text,{color:"white",children:"Loading files..."})]})};var Ace=Nt(Wc(),1),q0i=({cwd:e,formatter:t})=>{let[r,n]=(0,j0i.useState)(!1);return(0,z0i.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,Ace.jsx)(G4e.Box,{position:"relative",height:7,children:(0,Ace.jsxs)(G4e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Ace.jsx)(G4e.Box,{children:(0,Ace.jsx)(K0i,{cwd:e,formatter:t})}),(0,Ace.jsx)(G4e.Box,{marginTop:1,marginBottom:1,children:(0,Ace.jsx)(Q0i,{formatter:t})})]})})};import pgc from"node:events";import{writeFile as fgc}from"node:fs/promises";import{readFile as MNi}from"node:fs/promises";import{relative as Igc}from"node:path";import{join as hgc}from"node:path";var iNe={};Uf(iNe,{default:()=>W5a,parsers:()=>nNe});var B3a=Object.create,HTr=Object.defineProperty,w3a=Object.getOwnPropertyDescriptor,T3a=Object.getOwnPropertyNames,R3a=Object.getPrototypeOf,N3a=Object.prototype.hasOwnProperty,D3a=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),k3a=(e,t)=>{for(var r in t)HTr(e,r,{get:t[r],enumerable:!0})},x3a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of T3a(t))!N3a.call(e,a)&&a!==r&&HTr(e,a,{get:()=>t[a],enumerable:!(n=w3a(t,a))||n.enumerable});return e},uyi=(e,t,r)=>(r=e!=null?B3a(R3a(e)):{},x3a(t||!e||!e.__esModule?HTr(r,"default",{value:e,enumerable:!0}):r,e)),gyi=D3a(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(se,P){if(se==null)return{};var K={};for(var we in se)if({}.hasOwnProperty.call(se,we)){if(P.includes(we))continue;K[we]=se[we]}return K}var r=class{constructor(se,P,K){this.line=void 0,this.column=void 0,this.index=void 0,this.line=se,this.column=P,this.index=K}},n=class{constructor(se,P){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=se,this.end=P}};function a(se,P){let{line:K,column:we,index:At}=se;return new r(K,we+P,At+P)}var o="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",l={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:o},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:o}},A={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"},f=se=>se.type==="UpdateExpression"?A.UpdateExpression[`${se.prefix}`]:A[se.type],I={AccessorIsGenerator:({kind:se})=>`A ${se}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.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",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:({kind:se})=>`Missing initializer in ${se} 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.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',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:({exportName:se})=>`\`${se}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:se})=>`'import.${se}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:se,exportName:P})=>`A string literal cannot be used as an exported binding without \`from\`. +`);throw r.error(qSr(t,o)),new Error(o)}return qBr("Validated config from `%s`:",t),qBr(KZa(e,{compact:!1})),a},jXe=(e,t,r)=>{try{return jZa(e,t,r)}catch(n){throw r.error(qSr(t,n)),n}};var mee=(0,bhi.default)("lint-staged:searchConfigs"),Chi=["ls-files","-z","--full-name","-t"],zZa=e=>Q0t.includes(yhi.basename(e)),_hi=e=>e.split("/").length,qZa=(e,t)=>_hi(e)>_hi(t)?-1:1,$Za=e=>t=>t.startsWith(xG(e)),Ehi=async({configObject:e,configPath:t,cwd:r=process.cwd(),topLevelDir:n=r},a)=>{if(mee("Searching for configuration files..."),e)return mee("Using single direct configuration object..."),{"":jXe(e,"config object",a)};if(t){mee("Using single configuration path...");let{config:C,filepath:b}=await j0t({configPath:t},a);return C?{[t]:jXe(C,b,a)}:{}}let[o,l]=await Promise.all([qZ(Chi,{cwd:n}).then(fXe),qZ([...Chi,"--others","--exclude-standard"],{cwd:n}).then(fXe)]),A=[...o,...l].flatMap(C=>C.startsWith("S ")?[]:[C.replace(/^[HSMRCK?U] /,"")]).filter(zZa).map(C=>xG(yhi.join(n,C))).filter($Za(r)).sort(qZa);mee("Found possible config files:",A);let f=A.reduce((C,b)=>Object.assign(C,{[b]:null}),{});await Promise.all(Object.keys(f).map(C=>j0t({configPath:C},a).then(({config:b,filepath:E})=>{b&&(C!==E&&mee('Config file "%s" resolved to "%s"',C,E),f[C]=jXe(b,E,a))})));let I=Object.entries(f).filter(([,C])=>!!C).reduce((C,[b,E])=>({...C,[b]:E}),{});if(!Object.keys(I).length){mee('Could not find config files inside "%s"',r);let{config:C,filepath:b}=await j0t({cwd:r},a);C?(mee('Found parent configuration file from "%s"',b),I[b]=jXe(C,b,a)):mee('Could not find parent configuration files from "%s"',r)}return mee("Found %d config files",Object.keys(I).length),I};var qXe=(0,Shi.default)("lint-staged:runAll"),z0t=e=>Object.assign(new Error("lint-staged failed"),{ctx:e}),vhi=async({allowEmpty:e=!1,concurrent:t=!0,configObject:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1},F=console)=>{qXe("Running all linter scripts...");let Q=!!a;a=Q?zXe.resolve(a):process.cwd(),qXe("Using working directory `%s`",a);let J=U_t({quiet:I}),{topLevelDir:ae,gitConfigDir:ne}=await hpi(a);if(!ae)throw I||J.output.push(ldi),J.errors.add(xdi),z0t(J);let ce=await qZ(["log","-1"],{cwd:ae}).then(()=>!0).catch(()=>!1);J.shouldBackup=ce&&E,!J.shouldBackup&&!I&&F.warn(fdi(ce,l)),J.shouldHidePartiallyStaged=N,!J.shouldHidePartiallyStaged&&!I&&F.warn(Idi(ce&&E,l));let fe=await Rdi({cwd:ae,diff:l,diffFilter:A});if(!fe)throw I||J.output.push(udi),J.errors.add(svr),z0t(J,svr);if(qXe(`Loaded list of staged files in git: +%O`,fe),fe.length===0)return I||J.output.push(ddi),J;let ue=await Ehi({configObject:r,configPath:n,cwd:a,topLevelDir:ae},F),de=Object.keys(ue).length;if(de===0)throw J.errors.add(hXe),z0t(J,hXe);let be=await Mdi({configs:ue,files:fe,singleConfigMode:r||n!==void 0}),Se=de>1,De=!1,k={ctx:J,exitOnError:!1,registerSignalListeners:!1,...Tdi({debug:o,quiet:I},F)},tt=0,ze=[],Le=new Set;for(let[Ot,{config:Er,files:Sr}]of Object.entries(be)){let jt=Ot?xG(zXe.relative(a,Ot)):"Config object",Bt=tvr({baseDir:ae,files:Sr,maxArgLength:f,relative:C}),Nt=Se&&!Q?zXe.dirname(Ot):a,Fr=Bt.length;Fr>1&&qXe("Chunked staged files from `%s` into %d part",Ot,Fr);for(let[$t,Xt]of Bt.entries()){let lr=await Promise.all(Bdi({config:Er,cwd:Nt,files:Xt,relative:C}).map(cr=>fpi({commands:cr.commands,cwd:Nt,files:cr.fileList,topLevelDir:ae,shell:b,verbose:B}).then(Ar=>{cr.fileList.forEach(_n=>{let ke=zXe.isAbsolute(_n)?_n:xG(zXe.join(Nt,_n));Le.add(ke)}),De=De||Ar.some(_n=>_n.command==="git add");let qr=cr.fileList.length;return{title:`${cr.pattern}${hp.dim(` \u2014 ${qr} ${qr===1?"file":"files"}`)}`,task:async(_n,ke)=>ke.newListr(Ar,{concurrent:!1,exitOnError:!0}),skip:()=>qr===0?`${cr.pattern}${hp.dim(" \u2014 no files")}`:!1}})));tt+=lr.length,ze.push({title:`${jt}${hp.dim(` \u2014 ${Xt.length} ${Xt.length>1?"files":"file"}`)}`+(Fr>1?hp.dim(` (chunk ${$t+1}/${Fr})...`):""),task:(cr,Ar)=>Ar.newListr(lr,{concurrent:t,exitOnError:!0}),skip:()=>J.errors.has(n4)?mdi:lr.every(cr=>cr.skip())?`${jt}${hp.dim(" \u2014 no tasks to run")}`:!1})}}if(De&&!I&&F.warn(hdi),ze.every(Ot=>Ot.skip()))return I||J.output.push(pdi),J;let Je=tvr({baseDir:a,files:Array.from(Le),maxArgLength:f,relative:!1}),ft=new X_t({allowEmpty:e,gitConfigDir:ne,topLevelDir:ae,matchedFileChunks:Je,diff:l,diffFilter:A}),lt=new O_t([{title:"Preparing lint-staged...",task:Ot=>ft.prepare(Ot)},{title:"Hiding unstaged changes to partially staged files...",task:Ot=>ft.hideUnstagedChanges(Ot),enabled:gvr},{title:`Running tasks for ${l?"changed":"staged"} files...`,task:(Ot,Er)=>Er.newListr(ze,{concurrent:t}),skip:()=>ze.every(Ot=>Ot.skip())},{title:"Applying modifications from tasks...",task:Ot=>ft.applyModifications(Ot),skip:npi},{title:"Restoring unstaged changes to partially staged files...",task:Ot=>ft.restoreUnstagedChanges(Ot),enabled:gvr,skip:ipi},{title:"Reverting to original state because of errors...",task:Ot=>ft.restoreOriginalState(Ot),enabled:spi,skip:opi},{title:"Cleaning up temporary files...",task:Ot=>ft.cleanup(Ot),enabled:api,skip:cpi}],k);if(qXe("Set max event listeners to the number of tasks: %i",tt),J.events.setMaxListeners(tt),await lt.run(),J.errors.size>0)throw z0t(J);return J};var Thi=xt(IT(),1);import{constants as Bhi}from"node:fs";import whi from"node:fs/promises";import eLa from"node:path";var q0t=(0,Thi.default)("lint-staged:validateOptions"),Rhi=async(e={},t)=>{if(q0t("Validating options..."),typeof e.cwd=="string")try{let r=eLa.resolve(e.cwd);await whi.access(r,Bhi.F_OK)}catch(r){throw q0t("Failed to validate options: %o",e),t.error(zSr("cwd",e.cwd,r.message)),ovr}if(typeof e.shell=="string")try{await whi.access(e.shell,Bhi.X_OK)}catch(r){throw q0t("Failed to validate options: %o",e),t.error(zSr("shell",e.shell,r.message)),ovr}q0t("Validated options: %o",e)};var $Br=(0,Nhi.default)("lint-staged"),tLa=()=>{switch(process.platform){case"darwin":return 262144;case"win32":return 8191;default:return 131072}},rLa=async({allowEmpty:e=!1,concurrent:t=!0,config:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f=tLa()/2,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1}={},F=console)=>{let Q=await qZ(["version","--build-options"],{cwd:a});$Br("%s",Q);let J={allowEmpty:e,concurrent:t,configObject:r,configPath:n,cwd:a,debug:o,diff:l,diffFilter:A,maxArgLength:f,quiet:I,relative:C,shell:b,stash:E,hidePartiallyStaged:N,verbose:B};await Rhi(J,F),$Br("Unset GIT_LITERAL_PATHSPECS (was `%s`)",process.env.GIT_LITERAL_PATHSPECS),delete process.env.GIT_LITERAL_PATHSPECS;try{let ae=await vhi(J,F);return $Br("Tasks were executed successfully!"),$Sr(ae,F),!0}catch(ae){if(ae?.ctx?.errors){let{ctx:ne}=ae;return ne.errors.has(hXe)?F.error(Adi):ne.errors.has(Yae)?F.warn(Cdi):ne.errors.has(n4)&&!ne.errors.has(Y_t)&&(F.error(Hae),ne.shouldBackup&&F.error(_di)),$Sr(ne,F),!1}throw ae}},Dhi=rLa;var nLa=()=>{try{return khi("git rev-parse --show-toplevel",{encoding:"utf-8"}).trim()}catch{return process.cwd()}},iLa=e=>JSON.stringify(e),sLa=()=>process.env.npm_execpath||process.argv[1]||"yarn",oLa=(e=sLa())=>{let t=r=>`${iLa(e)} ${r}`;return{"*.{yml,yaml,json,graphql,md}":t("format"),"*.{js,mjs,cjs,jsx,ts,tsx}":[t("format"),t("lint")],"*.{ts,tsx}":t("typecheck"),"*.{test,spec}.{ts,tsx}":t("test unit")}},$0t=class extends xhi.BaseCommand{static paths=[["commit","staged"]];args=sA.Rest({required:0});async execute(){try{let t=8190;try{let n=parseInt(khi("getconf ARG_MAX",{encoding:"utf-8"}),10);t=Math.floor(n*.5)}catch{}return await Dhi({config:oLa(),cwd:nLa(),maxArgLength:t})?0:1}catch{return 1}}};var Ghi={commands:[C_t,QCt,$0t]};var rwr={};Uf(rwr,{SetVersionCommand:()=>$Xe,default:()=>Phi});var Whi=xt(sl(),1),Ohi=xt(wn(),1);vl();import{access as aLa}from"node:fs/promises";import{writeFile as cLa}from"node:fs/promises";import{dirname as lLa}from"node:path";import{join as Zhi}from"node:path";var uLa="package.json",gLa="yarn.lock",ALa="Package manifest was not found in current directory or its ancestors",Fhi="/unc/",dLa=/^\/([A-Za-z]:)(?=\/|$)/,pLa=/^([A-Za-z]:)(?=\/|$)/,fLa=e=>{if(!e.toLowerCase().startsWith(Fhi))return null;let[t,r,...n]=e.slice(Fhi.length).split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},ILa=e=>{if(!e.startsWith("\\\\")&&!e.startsWith("//"))return null;let[t,r,...n]=e.slice(2).replace(/\\/g,"/").split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},eyt=(e,t=process.platform)=>{if(t!=="win32")return e;let r=fLa(e);if(r){let[n,a,o]=r;return`\\\\${n}\\${a}${o.replace(/\//g,"\\")}`}return e.replace(dLa,"$1").replace(/\//g,"\\")},hLa=(e,t=process.platform)=>{if(t!=="win32")return e;let r=ILa(e);if(r){let[n,a,o]=r;return`/unc/${n}/${a}${o.replace(/\\/g,"/")}`}return e.replace(/\\/g,"/").replace(pLa,"/$1")},Lhi=async e=>{try{return await aLa(e),!0}catch{return!1}},twr=async e=>{let t=eyt(e);if(await Lhi(Zhi(t,uLa)))return e;let r=hLa(lLa(t));if(r===e)throw new Error(ALa);return twr(r)},Vhi=async e=>{let t=Zhi(eyt(e),gLa);await Lhi(t)||await cLa(t,"")};var $Xe=class extends Whi.BaseCommand{static paths=[["set","version","atls"]];static usage=Kb.Usage({description:"lock the Yarn version used by the project",details:"\n This command will get latest Atlantis bundle from [Atlantis Raijin repo](https://github.com/atls/raijin) and bump `@atls/code-runtime` dependency\n "});async execute(){let t=await twr(this.context.cwd),r=process.cwd();await Vhi(t);try{process.chdir(eyt(t));let n=["set","version"];n.push("https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs");let a=await this.cli.run(n,{cwd:t}),o=["up","@atls/code-runtime"],l=await this.cli.run(o,{cwd:t}),A=await Ohi.Configuration.find(t,this.context.plugins);return await A.triggerHook(f=>f.afterYarnVersionSet,A,{...this.context,cwd:t}),a||l}finally{process.chdir(r)}}};var Phi={commands:[$Xe]};var NTr={};Uf(NTr,{WorkspaceExportCommand:()=>w4e,default:()=>a0i});var t0i=xt(sl(),1),r0i=xt(sl(),1),n0i=xt(wn(),1),i0i=xt(wn(),1),s0i=xt(wn(),1),o0i=xt(wn(),1);vl();var nwr=xt(No(),1),iwr=xt(No(),1);var Mhi=async(e,t,r)=>{let n=e.configuration.get("rcFilename"),a=iwr.ppath.join(e.cwd,n);await nwr.xfs.existsPromise(a)&&(r.reportInfo(null,n),await nwr.xfs.copyPromise(iwr.ppath.join(t,n),a,{overwrite:!0}))};var QRe={};Uf(QRe,{pack:()=>hPa});var RTr=xt(wn(),1),K_i=xt(wn(),1),j_i=xt(wn(),1),z_i=xt(No(),1),q_i=xt(wn(),1),$_i=xt(No(),1),e0i=xt(hme(),1);var TCi=xt(wn(),1),RCi=xt(wn(),1),NCi=xt(No(),1),DCi=xt(No(),1),kCi=xt(No(),1),Qwr=xt(wn(),1),Xwr=xt(No(),1),xCi=xt(No(),1),Syt=class e extends TCi.Cache{nodeLinker;parentCache;parentMirror=new Map;workspaceMutexes=new Map;static async find(t,r){let n=t.get("nodeLinker"),a=new e(t.get("cacheFolder"),{configuration:t,nodeLinker:n,parentCache:r});return await a.setup(),a}constructor(t,{configuration:r,nodeLinker:n,parentCache:a}){super(t,{configuration:r}),this.nodeLinker=n,this.parentCache=a}getLocatorMirrorPath(t){return this.parentMirror.get(Qwr.structUtils.slugifyLocator(t))??null}async setup(){await super.setup();let t=await xCi.xfs.readdirPromise(this.parentCache.cwd,{withFileTypes:!0});for(let r of t){let n;r.isDirectory()||!(n=r.name.match(/^(.*)-[a-f\d]+\.zip$/i))||this.parentMirror.set(n[1],Xwr.ppath.join(this.parentCache.cwd,r.name))}}async fetchPackageFromCache(t,r,{loader:n}){let a=new DCi.NodeFS,o=async()=>{let l=Xwr.ppath.resolve(this.cwd,"../workspaces",Qwr.structUtils.stringifyIdent(t)),f=(async()=>{if(!await a.existsPromise(l)){let C=await n();await a.copyPromise(l,kCi.PortablePath.root,{baseFs:C}),C.discardAndClose()}return l})();this.workspaceMutexes.set(t.locatorHash,f);try{return await f}finally{this.workspaceMutexes.delete(t.locatorHash)}};if(t.reference.startsWith(RCi.WorkspaceResolver.protocol)){for(let A;A=this.workspaceMutexes.get(t.locatorHash);)await A;let l=await o();return[new NCi.JailFS(l,{baseFs:a}),()=>{},null]}else return await super.fetchPackageFromCache(t,r,{loader:n})}};var M_i=xt(wn(),1),H_i=xt(wn(),1);var Y_i=xt(wn(),1),vTr=xt(No(),1),vme=xt(No(),1),BTr=xt(hme(),1),IPa=xt(F_i(),1);var bTr=xt(wn(),1),Zyt=class{resolvers;constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${bTr.structUtils.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${bTr.structUtils.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};var L_i=xt(wn(),1),Lyt=xt(wn(),1),V_i=xt(zC(),1),Z_i=/^(?!v)[a-z0-9._-]+$/i,Vyt=class{supportsDescriptor(t,r){return!!(L_i.semverUtils.validRange(t.range)||Z_i.test(t.range))}supportsLocator(t,r){return!!(V_i.default.valid(t.reference)||Z_i.test(t.reference))}shouldPersistResolution(t,r){return r.resolver.shouldPersistResolution(this.forwardLocator(t,r),r)}bindDescriptor(t,r,n){return n.resolver.bindDescriptor(this.forwardDescriptor(t,n),r,n)}getResolutionDependencies(t,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(t,r),r)}async getCandidates(t,r,n){return n.resolver.getCandidates(this.forwardDescriptor(t,n),r,n)}async getSatisfying(t,r,n,a){return a.resolver.getSatisfying(this.forwardDescriptor(t,a),r,n,a)}async resolve(t,r){let n=await r.resolver.resolve(this.forwardLocator(t,r),r);return Lyt.structUtils.renamePackage(n,t)}forwardDescriptor(t,r){return Lyt.structUtils.makeDescriptor(t,`${r.project.configuration.get("defaultProtocol")}${t.range}`)}forwardLocator(t,r){return Lyt.structUtils.makeLocator(t,`${r.project.configuration.get("defaultProtocol")}${t.reference}`)}};var Wyt=class e{static protocol="virtual:";static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};var ETr=xt(wn(),1),W_i=xt(wn(),1),O_i=xt(No(),1);var Oyt=class extends W_i.WorkspaceFetcher{constructor(r){super();this.originalProject=r}getLocalPath(r,n){return super.getLocalPath(r,this.rewriteOpts(r,n))}async fetch(r,n){if(r.reference.slice(ETr.WorkspaceResolver.protocol.length)===".")return await super.fetch(r,n);let a=n.checksums.get(r.locatorHash)||null,[o,l]=await n.cache.fetchPackageFromCache(r,a,{loader:()=>this.packWorkspace(r)});return{packageFs:o,releaseFs:l,localPath:this.getLocalPath(r,n),prefixPath:O_i.PortablePath.dot}}async packWorkspace(r){let n=this.originalProject.getWorkspaceByLocator(r);return await P_i(n,{compressionLevel:this.originalProject.configuration.get("compressionLevel"),stripComponents:1})}rewriteOpts(r,n){return r.reference.slice(ETr.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var STr=xt(wn(),1),Pyt=xt(wn(),1),Myt=class extends Pyt.WorkspaceResolver{constructor(r){super();this.originalProject=r}supportsDescriptor(r,n){return super.supportsDescriptor(r,this.rewriteOpts(r,n))}supportsLocator(r,n){return super.supportsLocator(r,this.rewriteOpts(r,n))}shouldPersistResolution(r,n){return super.shouldPersistResolution(r,this.rewriteOpts(r,n))}bindDescriptor(r,n,a){return super.bindDescriptor(r,n,this.rewriteOpts(r,a))}getResolutionDependencies(r,n){return super.getResolutionDependencies(r,this.rewriteOpts(r,n))}async getCandidates(r,n,a){return await super.getCandidates(r,n,this.rewriteOpts(r,a))}async getSatisfying(r,n,a){return await super.getSatisfying(r,n,this.rewriteOpts(r,a))}async resolve(r,n){let a=r.reference.slice(Pyt.WorkspaceResolver.protocol.length),{project:o}=this.rewriteOpts(r,n),l=o.getWorkspaceByCwd(a);return{...r,version:l.manifest.version||"0.0.0",languageName:"unknown",linkType:a==="."?STr.LinkType.SOFT:STr.LinkType.HARD,dependencies:l.manifest.dependencies,peerDependencies:l.manifest.peerDependencies,dependenciesMeta:l.manifest.dependenciesMeta,peerDependenciesMeta:l.manifest.peerDependenciesMeta,bin:l.manifest.bin}}rewriteOpts(r,n){return("descriptorHash"in r?r.range:r.reference).slice(Pyt.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var Q_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new H_i.MultiFetcher([new M_i.VirtualFetcher,new Oyt(e),...t])},X_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new Zyt([new Wyt,new Myt(e),new Vyt,...t])};var J_i=async e=>{let t=await vme.xfs.mktempPromise(),r=await BTr.packUtils.genPackStream(e),n=vTr.ppath.join(t,"package.tgz"),a=vme.xfs.createWriteStream(n);return r.pipe(a),await new Promise(o=>{a.on("finish",o)}),vme.xfs.readFilePromise(n)},P_i=async(e,t)=>await vme.xfs.mktempPromise(async r=>{let n=await BTr.packUtils.genPackStream(e),a=vTr.ppath.join(r,"package.tgz"),o=vme.xfs.createWriteStream(a);n.pipe(o),await new Promise(A=>{o.on("finish",A)});let l=await vme.xfs.readFilePromise(a);return await Y_i.tgzUtils.convertToZip(l,t)});var wTr=xt(No(),1),TTr=xt(No(),1),U_i=async e=>{let t=wTr.ppath.join(e,".yarn","releases");if(!await TTr.xfs.existsPromise(t))return;let r=(await TTr.xfs.readdirPromise(t)).sort().find(n=>n.endsWith(".cjs")||n.endsWith(".mjs"));if(r)return wTr.ppath.join(".yarn","releases",r)};var hPa=async(e,t,r,n,a)=>{process.env.IMAGE_PACK=!0;let o=await j_i.Cache.find(e,{immutable:!0});await t.restoreInstallState(),await e0i.packUtils.prepareForPack(r,{report:n},async()=>{r.manifest.devDependencies.clear();let l=new z_i.CwdFS(a),A=await J_i(r);await q_i.tgzUtils.extractArchiveTo(A,l,{stripComponents:1}),await Mhi(t,a,n);let f=RTr.Configuration.create(a,a,e.plugins);f.values.set("compressionLevel",t.configuration.get("compressionLevel")),f.values.set("enableGlobalCache",!1),f.values.set("enableMirror",!1),f.values.set("globalFolder",e.get("globalFolder")),f.values.set("pnpEnableEsmLoader",e.get("pnpEnableEsmLoader")),f.values.set("cacheFolder",$_i.ppath.join(a,".yarn/packages")),f.values.set("preferAggregateCacheInfo",!0),await RTr.Configuration.updateConfiguration(a,{cacheFolder:".yarn/packages",compressionLevel:f.get("compressionLevel"),enableGlobalCache:f.get("enableGlobalCache"),enableNetwork:f.get("enableNetwork"),enableMirror:f.get("enableMirror"),globalFolder:".yarn/berry",nodeLinker:t.configuration.get("nodeLinker"),yarnPath:await U_i(a)}),await f.getPackageExtensions();let{project:I,workspace:C}=await K_i.Project.find(f,a);if(!C)throw new Error("Workspace not found");C.manifest.dependencies=r.manifest.dependencies,C.manifest.resolutions=t.topLevelWorkspace.manifest.resolutions,C.manifest.devDependencies.clear(),await I.install({cache:await Syt.find(f,o),fetcher:Q_i(t),resolver:X_i(t),persistProject:!0,report:n})})};var mPa=xt(hme(),1);var w4e=class extends t0i.BaseCommand{static paths=[["export"]];destination=sA.String("-d,--destination",{required:!0});async execute(){let t=await n0i.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await i0i.Project.find(t,this.context.cwd);if(!n)throw new r0i.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await s0i.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await QRe.pack(t,r,n,o,this.destination),o.reportInfo(null,`Workspace ${n.manifest.name?o0i.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} exported to ${this.destination}`)})).exitCode()}};var a0i={commands:[w4e]};var sxr={};Uf(sxr,{FormatCommand:()=>CUe,default:()=>sDi});var tDi=xt(sl(),1),rDi=xt(wn(),1),nDi=xt(wn(),1);vl();var iDi=xt(gl(),1);var zyt=xt(gl(),1),y0i=xt(gl(),1);var Hyt=class{constructor(t){this.frames=t}get topFrame(){return this.frames.find(t=>t.file)}};var c0i=xt(rft(),1);var l0i=e=>{let t=e.split(` +`),r=process.cwd(),n=new c0i.default({cwd:r}),a=t.reduce((o,l)=>{let A=n.parseLine(l.trim());return A&&o.push(A),o},[]);return new Hyt(a)};var _0i=xt(gl(),1),URe=xt(gl(),1);var Kyt=xt(Ec(),1);var h0i=xt(gl(),1),Jyt=xt(Ec(),1);import{basename as yPa}from"node:path";import{isAbsolute as bPa}from"node:path";import{relative as EPa}from"node:path";var kTr=xt(Ec(),1),Xyt=xt(gl(),1),wme=xt(WTe(),1);var Sy="\x1B[",T4e="\x1B]",XRe="\x07",Yyt=";",u0i=process.env.TERM_PROGRAM==="Apple_Terminal",wC={};wC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?Sy+(e+1)+"G":Sy+(t+1)+";"+(e+1)+"H"};wC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=Sy+-e+"D":e>0&&(r+=Sy+e+"C"),t<0?r+=Sy+-t+"A":t>0&&(r+=Sy+t+"B"),r};wC.cursorUp=(e=1)=>Sy+e+"A";wC.cursorDown=(e=1)=>Sy+e+"B";wC.cursorForward=(e=1)=>Sy+e+"C";wC.cursorBackward=(e=1)=>Sy+e+"D";wC.cursorLeft=Sy+"G";wC.cursorSavePosition=u0i?"\x1B7":Sy+"s";wC.cursorRestorePosition=u0i?"\x1B8":Sy+"u";wC.cursorGetPosition=Sy+"6n";wC.cursorNextLine=Sy+"E";wC.cursorPrevLine=Sy+"F";wC.cursorHide=Sy+"?25l";wC.cursorShow=Sy+"?25h";wC.eraseLines=e=>{let t="";for(let r=0;r[T4e,"8",Yyt,Yyt,t,XRe,e,T4e,"8",Yyt,Yyt,XRe].join("");wC.image=(e,t={})=>{let r=`${T4e}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+XRe};wC.iTerm={setCwd:(e=process.cwd())=>`${T4e}50;CurrentDir=${e}${XRe}`,annotation:(e,t={})=>{let r=`${T4e}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+XRe}};var g0i=wC;var Qyt=xt(p0i(),1);function Bme(e,t,{target:r="stdout",...n}={}){return Qyt.default[r]?g0i.link(e,t):n.fallback===!1?e:typeof n.fallback=="function"?n.fallback(e,t):`${e} (\u200B${t}\u200B)`}Bme.isSupported=Qyt.default.stdout;Bme.stderr=(e,t,r={})=>Bme(e,t,{target:"stderr",...r});Bme.stderr.isSupported=Qyt.default.stderr;var f0i=({children:e,url:t,fallback:r=!0})=>kTr.default.createElement(Xyt.Transform,{transform:n=>Bme(n,t,{fallback:r})},kTr.default.createElement(Xyt.Text,null,e));f0i.propTypes={children:wme.default.oneOfType([wme.default.arrayOf(wme.default.node),wme.default.node]).isRequired,url:wme.default.string.isRequired,fallback:wme.default.bool};var I0i=f0i;var Uyt=xt(Wc(),1),m0i=({url:e,cwd:t=process.cwd(),column:r=0,line:n=0})=>{let a=(0,Jyt.useMemo)(()=>{try{return new URL(e).pathname}catch{return e}},[e]),o=(0,Jyt.useMemo)(()=>bPa(a)?EPa(t,a):a,[a]),l=(0,Jyt.useMemo)(()=>o.includes("/node_modules/")?yPa(o):o,[o]);return(0,Uyt.jsx)(I0i,{url:e,children:(0,Uyt.jsxs)(h0i.Text,{color:"gray",children:[l,":",n,":",r]})})};import{readFileSync as SPa}from"node:fs";import{fileURLToPath as vPa}from"node:url";var C0i=e=>{if(e.sourceMap)return e.sourceMap.payload.sourcesContent[0];if(e.file)try{return SPa(e.file.startsWith("file:/")?vPa(new URL(e.file)):e.file,"utf-8")}catch{return null}return null};var p6=xt(Wc(),1),jyt=({children:e,cwd:t})=>{let r=(0,Kyt.useMemo)(()=>l0i(e),[e]),n=(0,Kyt.useMemo)(()=>r.topFrame||r.frames.at(0),[r]),a=(0,Kyt.useMemo)(()=>n?C0i(n):null,[n]);return(0,p6.jsxs)(URe.Box,{flexDirection:"column",flexGrow:1,children:[!!a&&!!r.topFrame?.line&&(0,p6.jsx)(URe.Box,{marginBottom:1,children:(0,p6.jsx)(w8,{line:r.topFrame.line,column:r.topFrame.column,children:a})}),r.frames.map(o=>(0,p6.jsxs)(URe.Box,{flexDirection:"row",children:[(0,p6.jsx)(URe.Box,{flexBasis:"30%",children:(0,p6.jsx)(_0i.Text,{children:o.function})}),(0,p6.jsx)(URe.Box,{flexBasis:"70%",justifyContent:"flex-end",children:!!o.file&&(0,p6.jsx)(m0i,{cwd:t,url:o.file,line:o.line,column:o.column})})]},jO()))]})};var Ace=xt(Wc(),1),BPa=({children:e})=>e?(0,Ace.jsx)(zyt.Box,{marginBottom:1,children:(0,Ace.jsx)(y0i.Text,{bold:!0,color:"red",children:e})}):null,Pk=({error:e,cwd:t})=>(0,Ace.jsxs)(zyt.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,children:[(0,Ace.jsx)(BPa,{children:e.message}),!!e.stack&&(0,Ace.jsx)(zyt.Box,{children:(0,Ace.jsx)(jyt,{cwd:t,children:e.stack})})]});var Z4e=xt(gl(),1),ayi=xt(Ec(),1),cyi=xt(Ec(),1);var GTr=xt(gl(),1),FTr=xt(Ec(),1);var N4e=xt(Ec(),1),t3a=xt(xTr(),1);var v0i={info:"blue",success:"green",error:"red",warning:"yellow"},OPa={styles:{container:({variant:e})=>({flexGrow:1,borderStyle:"round",borderColor:v0i[e],gap:1,paddingX:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:v0i[e]}),content:()=>({flexShrink:1,flexGrow:1,minWidth:0,flexDirection:"column",gap:1}),title:()=>({bold:!0}),message:()=>({})},config({variant:e}){let t;return e==="info"&&(t=GI.info),e==="success"&&(t=GI.tick),e==="error"&&(t=GI.cross),e==="warning"&&(t=GI.warning),{icon:t}}},B0i=OPa;var PPa={styles:{container:({color:e})=>({backgroundColor:e}),label:()=>({color:"black"})}},w0i=PPa;var MPa={styles:{input:({isFocused:e})=>({dimColor:!e})}},T0i=MPa;var HPa={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},R0i=HPa;var YPa={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})}},N0i=YPa;var QPa={styles:{container:()=>({flexGrow:1,minWidth:0}),completed:()=>({color:"magenta"}),remaining:()=>({dimColor:!0})},config:()=>({completedCharacter:GI.square,remainingCharacter:GI.squareLightShade})},D0i=QPa;var XPa={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},k0i=XPa;var JPa={styles:{container:()=>({gap:1}),frame:()=>({color:"blue"}),label:()=>({})}},x0i=JPa;var UPa={success:"green",error:"red",warning:"yellow",info:"blue"},KPa={success:GI.tick,error:GI.cross,warning:GI.warning,info:GI.info},jPa={styles:{container:()=>({gap:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:UPa[e]}),message:()=>({})},config:({variant:e})=>({icon:KPa[e]})},G0i=jPa;var zPa={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})},config:()=>({marker:GI.line})},F0i=zPa;var qPa={styles:{value:()=>({})}},Z0i=qPa;var $Pa={styles:{value:()=>({})}},L0i=$Pa;var e3a={styles:{value:()=>({})}},V0i=e3a;var r3a={components:{Alert:B0i,Badge:w0i,ConfirmInput:T0i,MultiSelect:R0i,OrderedList:N0i,ProgressBar:D0i,Select:k0i,Spinner:x0i,StatusMessage:G0i,UnorderedList:F0i,TextInput:Z0i,EmailInput:L0i,PasswordInput:V0i}},n3a=(0,N4e.createContext)(r3a);var WS=e=>(0,N4e.useContext)(n3a).components[e];function FG({children:e,color:t="magenta"}){let{styles:r}=WS("Badge"),n=e;return typeof e=="string"&&(n=e.toUpperCase()),FTr.default.createElement(GTr.Text,{...r.container({color:t})}," ",FTr.default.createElement(GTr.Text,{...r.label()},n)," ")}var i3a=xt(Ec(),1),W0i=xt(gl(),1);var H0i=xt(gl(),1),Eee=xt(Ec(),1);var k4e=xt(gl(),1),jRe=xt(Ec(),1);var O0i=xt(Ec(),1);var D4e=GI.line;var qyt=(0,O0i.createContext)({marker:D4e});function P0i({children:e}){let{marker:t}=(0,jRe.useContext)(qyt),{styles:r}=WS("UnorderedList");return jRe.default.createElement(k4e.Box,{...r.listItem()},jRe.default.createElement(k4e.Text,{...r.marker()},t),jRe.default.createElement(k4e.Box,{...r.content()},e))}var M0i=xt(Ec(),1),ZTr=(0,M0i.createContext)({depth:0});function s3a({children:e}){let{depth:t}=(0,Eee.useContext)(ZTr),{styles:r,config:n}=WS("UnorderedList"),a=(0,Eee.useMemo)(()=>({depth:t+1}),[t]),o=(0,Eee.useMemo)(()=>{let{marker:l}=n();return typeof l=="string"?{marker:l}:Array.isArray(l)?{marker:l[t]??l.at(-1)??D4e}:{marker:D4e}},[n,t]);return Eee.default.createElement(ZTr.Provider,{value:a},Eee.default.createElement(qyt.Provider,{value:o},Eee.default.createElement(H0i.Box,{...r.list()},e)))}s3a.Item=P0i;var l3a=xt(Ec(),1),Q0i=xt(gl(),1);var o3a=xt(Ec(),1),Y0i=xt(gl(),1);var x4e=xt(Ec(),1);var c3a=xt(gl(),1);var Tme=xt(Ec(),1),Rme=xt(gl(),1);function rH({value:e}){let[t,r]=(0,Tme.useState)(0),[n,a]=(0,Tme.useState)(null);if(n){let C=(0,Rme.measureElement)(n);C.width!==t&&r(C.width)}let o=Math.min(100,Math.max(0,e)),l=Math.round(o/100*t),A=t-l,{styles:f,config:I}=WS("ProgressBar");return Tme.default.createElement(Rme.Box,{ref:a,...f.container()},l>0&&Tme.default.createElement(Rme.Text,{...f.completed()},I().completedCharacter.repeat(l)),A>0&&Tme.default.createElement(Rme.Text,{...f.remaining()},I().remainingCharacter.repeat(A)))}var A3a=xt(Ec(),1),J0i=xt(gl(),1);var u3a=xt(Ec(),1),X0i=xt(gl(),1);var G4e=xt(Ec(),1);var g3a=xt(gl(),1);var d3a=xt(Ec(),1),K0i=xt(gl(),1);var U0i=xt(Ec(),1);var I3a=xt(Ec(),1),h3a=xt(gl(),1);var $yt=xt(Ec(),1);var p3a=xt(Ec(),1),f3a=xt(gl(),1);var lvu=hp.inverse(" ");var q0i=xt(gl(),1),c4=xt(Ec(),1);var F4e=xt(gl(),1),zRe=xt(Ec(),1);var j0i=xt(Ec(),1);var ebt=(0,j0i.createContext)({marker:GI.line});function tbt({children:e}){let{marker:t}=(0,zRe.useContext)(ebt),{styles:r}=WS("OrderedList");return zRe.default.createElement(F4e.Box,{...r.listItem()},zRe.default.createElement(F4e.Text,{...r.marker()},t),zRe.default.createElement(F4e.Box,{...r.content()},e))}var z0i=xt(Ec(),1),LTr=(0,z0i.createContext)({marker:""});function m3a({children:e}){let{marker:t}=(0,c4.useContext)(LTr),{styles:r}=WS("OrderedList"),n=0;for(let o of c4.default.Children.toArray(e))!(0,c4.isValidElement)(o)||o.type!==tbt||n++;let a=String(n).length;return c4.default.createElement(q0i.Box,{...r.list()},c4.default.Children.map(e,(o,l)=>{if(!(0,c4.isValidElement)(o)||o.type!==tbt)return o;let A=`${String(l+1).padStart(a)}.`,f=`${t}${A}`;return c4.default.createElement(LTr.Provider,{value:{marker:f}},c4.default.createElement(ebt.Provider,{value:{marker:f}},o))}))}m3a.Item=tbt;var y3a=xt(Ec(),1),b3a=xt(gl(),1);var VTr=xt(Ec(),1);var C3a=xt(Ec(),1),_3a=xt(gl(),1);var Gvu=hp.inverse(" ");var E3a=xt(Ec(),1),$0i=xt(gl(),1);var S3a=xt(Ec(),1),eyi=xt(gl(),1);var w3a=xt(Ec(),1),T3a=xt(gl(),1);var rbt=xt(Ec(),1);var v3a=xt(Ec(),1),B3a=xt(gl(),1);var eBu=hp.inverse(" ");var tyi=xt(Ec(),1),WTr=xt(Ec(),1),nyi=xt(Wc(),1),ryi=({formatter:e})=>{let[t,r]=(0,WTr.useState)(0),[n,a]=(0,WTr.useState)(0);return(0,tyi.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("format:end",l),e.on("end",A),()=>{e.off("start",o),e.off("format:end",l),e.off("end",A)}},[e,t,r,a]),(0,nyi.jsx)(rH,{value:t>0?n/t*100:0})};import{relative as iyi}from"node:path";var qRe=xt(gl(),1),yP=xt(gl(),1),syi=xt(Ec(),1),nbt=xt(Ec(),1);var OS=xt(Wc(),1),R3a=({changed:e})=>e?(0,OS.jsx)(yP.Text,{color:"green",children:GI.tick}):(0,OS.jsx)(yP.Text,{color:"white",children:GI.circleDotted}),N3a=({changed:e,children:t})=>e?(0,OS.jsx)(yP.Text,{color:"white",children:t}):(0,OS.jsx)(yP.Text,{color:"gray",children:t}),oyi=({cwd:e,formatter:t})=>{let[r,n]=(0,nbt.useState)(void 0),[a,o]=(0,nbt.useState)(0),[l,A]=(0,nbt.useState)(0);return(0,syi.useEffect)(()=>{let f=b=>{o(b.files.length)},I=b=>{n({changed:!1,file:iyi(e,b.file)})},C=b=>{n({changed:b.changed,file:iyi(e,b.file)}),b.changed&&A(E=>E+1)};return t.on("start",f),t.on("format:start",I),t.on("format:end",C),()=>{t.off("start",f),t.off("format:start",I),t.off("format:end",C)}},[t,n,o,A]),r?(0,OS.jsxs)(qRe.Box,{flexDirection:"row",width:"100%",children:[(0,OS.jsxs)(qRe.Box,{flexGrow:1,children:[(0,OS.jsx)(FG,{color:"cyan",children:"Format:"}),(0,OS.jsx)(yP.Text,{children:" "}),(0,OS.jsx)(N3a,{changed:r.changed,children:r.file})]}),(0,OS.jsx)(qRe.Box,{flexDirection:"row",children:(0,OS.jsxs)(qRe.Box,{children:[(0,OS.jsx)(R3a,{changed:r.changed}),(0,OS.jsx)(yP.Text,{children:" "}),(0,OS.jsxs)(yP.Text,{color:"green",children:[l," Formatted"]}),(0,OS.jsx)(yP.Text,{children:" "}),(0,OS.jsxs)(yP.Text,{color:"white",children:[a," Files"]}),(0,OS.jsx)(yP.Text,{children:" "})]})})]}):(0,OS.jsxs)(qRe.Box,{flexDirection:"row",children:[(0,OS.jsx)(FG,{color:"cyan",children:"Format:"}),(0,OS.jsx)(yP.Text,{children:" "}),(0,OS.jsx)(yP.Text,{color:"white",children:"Loading files..."})]})};var dce=xt(Wc(),1),lyi=({cwd:e,formatter:t})=>{let[r,n]=(0,ayi.useState)(!1);return(0,cyi.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,dce.jsx)(Z4e.Box,{position:"relative",height:7,children:(0,dce.jsxs)(Z4e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,dce.jsx)(Z4e.Box,{children:(0,dce.jsx)(oyi,{cwd:e,formatter:t})}),(0,dce.jsx)(Z4e.Box,{marginTop:1,marginBottom:1,children:(0,dce.jsx)(ryi,{formatter:t})})]})})};import Cgc from"node:events";import{writeFile as _gc}from"node:fs/promises";import{readFile as $Ni}from"node:fs/promises";import{relative as ygc}from"node:path";import{join as bgc}from"node:path";var rNe={};Uf(rNe,{default:()=>Y5a,parsers:()=>tNe});var D3a=Object.create,QTr=Object.defineProperty,k3a=Object.getOwnPropertyDescriptor,x3a=Object.getOwnPropertyNames,G3a=Object.getPrototypeOf,F3a=Object.prototype.hasOwnProperty,Z3a=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),L3a=(e,t)=>{for(var r in t)QTr(e,r,{get:t[r],enumerable:!0})},V3a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of x3a(t))!F3a.call(e,a)&&a!==r&&QTr(e,a,{get:()=>t[a],enumerable:!(n=k3a(t,a))||n.enumerable});return e},yyi=(e,t,r)=>(r=e!=null?D3a(G3a(e)):{},V3a(t||!e||!e.__esModule?QTr(r,"default",{value:e,enumerable:!0}):r,e)),byi=Z3a(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(se,P){if(se==null)return{};var K={};for(var we in se)if({}.hasOwnProperty.call(se,we)){if(P.includes(we))continue;K[we]=se[we]}return K}var r=class{constructor(se,P,K){this.line=void 0,this.column=void 0,this.index=void 0,this.line=se,this.column=P,this.index=K}},n=class{constructor(se,P){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=se,this.end=P}};function a(se,P){let{line:K,column:we,index:At}=se;return new r(K,we+P,At+P)}var o="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",l={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:o},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:o}},A={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"},f=se=>se.type==="UpdateExpression"?A.UpdateExpression[`${se.prefix}`]:A[se.type],I={AccessorIsGenerator:({kind:se})=>`A ${se}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.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",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:({kind:se})=>`Missing initializer in ${se} 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.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',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:({exportName:se})=>`\`${se}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:se})=>`'import.${se}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:se,exportName:P})=>`A string literal cannot be used as an exported binding without \`from\`. - Did you mean \`export { '${se}' as '${P}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:se})=>`'${se==="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:({type:se})=>`Unsyntactic ${se==="BreakStatement"?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:({importName:se})=>`A string literal cannot be used as an imported binding. -- Did you mean \`import { "${se}" as foo }\`?`,ImportCallArity:"`import()` requires exactly 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:({radix:se})=>`Expected number in radix ${se}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:se})=>`Escape sequence in keyword ${se}.`,InvalidIdentifier:({identifierName:se})=>`Invalid identifier ${se}.`,InvalidLhs:({ancestor:se})=>`Invalid left-hand side in ${f(se)}.`,InvalidLhsBinding:({ancestor:se})=>`Binding invalid left-hand side in ${f(se)}.`,InvalidLhsOptionalChaining:({ancestor:se})=>`Invalid optional chaining in the left-hand side of ${f(se)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:se})=>`Unexpected character '${se}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:se})=>`Private name #${se} 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:({labelName:se})=>`Label '${se}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",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:({missingPlugin:se})=>`This experimental syntax requires enabling the parser plugin: ${se.map(P=>JSON.stringify(P)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:se})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${se.map(P=>JSON.stringify(P)).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:({key:se})=>`Duplicate key "${se}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:se})=>`An export name cannot include a lone surrogate, found '\\u${se.toString(16)}'.`,ModuleExportUndefined:({localName:se})=>`Export '${se}' 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:({identifierName:se})=>`Private names are only allowed in property accesses (\`obj.#${se}\`) or in \`in\` expressions (\`#${se} in obj\`).`,PrivateNameRedeclaration:({identifierName:se})=>`Duplicate private name #${se}.`,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.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',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:({keyword:se})=>`Unexpected keyword '${se}'.`,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:({reservedWord:se})=>`Unexpected reserved word '${se}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:se,unexpected:P})=>`Unexpected token${P?` '${P}'.`:""}${se?`, expected "${se}"`:""}`,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:({target:se,onlyValidPropertyName:P})=>`The only valid meta property for ${se} is ${se}.${P}.`,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.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:se})=>`Identifier '${se}' 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."},C={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:se})=>`Assigning to '${se}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:se})=>`Binding '${se}' 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."},b=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),E=Object.assign({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:({token:se})=>`Invalid topic token ${se}. In order to use ${se} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${se}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:se})=>`Hack-style pipe body cannot be an unparenthesized ${f({type:se})}; 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.'}),N=["message"];function B(se,P,K){Object.defineProperty(se,P,{enumerable:!1,configurable:!0,value:K})}function F({toMessage:se,code:P,reasonCode:K,syntaxPlugin:we}){let At=K==="MissingPlugin"||K==="MissingOneOfPlugins";{let sr={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};sr[K]&&(K=sr[K])}return function sr(Yr,Lr){let fi=new SyntaxError;return fi.code=P,fi.reasonCode=K,fi.loc=Yr,fi.pos=Yr.index,fi.syntaxPlugin=we,At&&(fi.missingPlugin=Lr.missingPlugin),B(fi,"clone",function($n={}){var ra;let{line:kc,column:Dl,index:ca}=(ra=$n.loc)!=null?ra:Yr;return sr(new r(kc,Dl,ca),Object.assign({},Lr,$n.details))}),B(fi,"details",Lr),Object.defineProperty(fi,"message",{configurable:!0,get(){let $n=`${se(Lr)} (${Yr.line}:${Yr.column})`;return this.message=$n,$n},set($n){Object.defineProperty(this,"message",{value:$n,writable:!0})}}),fi}}function Q(se,P){if(Array.isArray(se))return we=>Q(we,se[0]);let K={};for(let we of Object.keys(se)){let At=se[we],sr=typeof At=="string"?{message:()=>At}:typeof At=="function"?{message:At}:At,{message:Yr}=sr,Lr=t(sr,N),fi=typeof Yr=="string"?()=>Yr:Yr;K[we]=F(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:we,toMessage:fi},P?{syntaxPlugin:P}:{},Lr))}return K}var J=Object.assign({},Q(l),Q(I),Q(C),Q`pipelineOperator`(E));function ae(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function ne(se){let P=ae();if(se==null)return P;if(se.annexB!=null&&se.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let K of Object.keys(P))se[K]!=null&&(P[K]=se[K]);if(P.startLine===1)se.startIndex==null&&P.startColumn>0?P.startIndex=P.startColumn:se.startColumn==null&&P.startIndex>0&&(P.startColumn=P.startIndex);else if((se.startColumn==null||se.startIndex==null)&&se.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return P}var{defineProperty:ce}=Object,fe=(se,P)=>{se&&ce(se,P,{enumerable:!1,value:se[P]})};function ue(se){return fe(se.loc.start,"index"),fe(se.loc.end,"index"),se}var de=se=>class extends se{parse(){let P=ue(super.parse());return this.optionFlags&128&&(P.tokens=P.tokens.map(ue)),P}parseRegExpLiteral({pattern:P,flags:K}){let we=null;try{we=new RegExp(P,K)}catch{}let At=this.estreeParseLiteral(we);return At.regex={pattern:P,flags:K},At}parseBigIntLiteral(P){let K;try{K=BigInt(P)}catch{K=null}let we=this.estreeParseLiteral(K);return we.bigint=String(we.value||P),we}parseDecimalLiteral(P){let K=this.estreeParseLiteral(null);return K.decimal=String(K.value||P),K}estreeParseLiteral(P){return this.parseLiteral(P,"Literal")}parseStringLiteral(P){return this.estreeParseLiteral(P)}parseNumericLiteral(P){return this.estreeParseLiteral(P)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(P){return this.estreeParseLiteral(P)}directiveToStmt(P){let K=P.value;delete P.value,K.type="Literal",K.raw=K.extra.raw,K.value=K.extra.expressionValue;let we=P;return we.type="ExpressionStatement",we.expression=K,we.directive=K.extra.rawValue,delete K.extra,we}initFunction(P,K){super.initFunction(P,K),P.expression=!1}checkDeclaration(P){P!=null&&this.isObjectProperty(P)?this.checkDeclaration(P.value):super.checkDeclaration(P)}getObjectOrClassMethodParams(P){return P.value.params}isValidDirective(P){var K;return P.type==="ExpressionStatement"&&P.expression.type==="Literal"&&typeof P.expression.value=="string"&&!((K=P.expression.extra)!=null&&K.parenthesized)}parseBlockBody(P,K,we,At,sr){super.parseBlockBody(P,K,we,At,sr);let Yr=P.directives.map(Lr=>this.directiveToStmt(Lr));P.body=Yr.concat(P.body),delete P.directives}parsePrivateName(){let P=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(P):P}convertPrivateNameToPrivateIdentifier(P){let K=super.getPrivateNameSV(P);return P=P,delete P.id,P.name=K,P.type="PrivateIdentifier",P}isPrivateName(P){return this.getPluginOption("estree","classFeatures")?P.type==="PrivateIdentifier":super.isPrivateName(P)}getPrivateNameSV(P){return this.getPluginOption("estree","classFeatures")?P.name:super.getPrivateNameSV(P)}parseLiteral(P,K){let we=super.parseLiteral(P,K);return we.raw=we.extra.raw,delete we.extra,we}parseFunctionBody(P,K,we=!1){super.parseFunctionBody(P,K,we),P.expression=P.body.type!=="BlockStatement"}parseMethod(P,K,we,At,sr,Yr,Lr=!1){let fi=this.startNode();fi.kind=P.kind,fi=super.parseMethod(fi,K,we,At,sr,Yr,Lr),fi.type="FunctionExpression",delete fi.kind,P.value=fi;let{typeParameters:$n}=P;return $n&&(delete P.typeParameters,fi.typeParameters=$n,this.resetStartLocationFromNode(fi,$n)),Yr==="ClassPrivateMethod"&&(P.computed=!1),this.finishNode(P,"MethodDefinition")}nameIsConstructor(P){return P.type==="Literal"?P.value==="constructor":super.nameIsConstructor(P)}parseClassProperty(...P){let K=super.parseClassProperty(...P);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition"),K}parseClassPrivateProperty(...P){let K=super.parseClassPrivateProperty(...P);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition",K.computed=!1),K}parseObjectMethod(P,K,we,At,sr){let Yr=super.parseObjectMethod(P,K,we,At,sr);return Yr&&(Yr.type="Property",Yr.kind==="method"&&(Yr.kind="init"),Yr.shorthand=!1),Yr}parseObjectProperty(P,K,we,At){let sr=super.parseObjectProperty(P,K,we,At);return sr&&(sr.kind="init",sr.type="Property"),sr}isValidLVal(P,K,we){return P==="Property"?"value":super.isValidLVal(P,K,we)}isAssignable(P,K){return P!=null&&this.isObjectProperty(P)?this.isAssignable(P.value,K):super.isAssignable(P,K)}toAssignable(P,K=!1){if(P!=null&&this.isObjectProperty(P)){let{key:we,value:At}=P;this.isPrivateName(we)&&this.classScope.usePrivateName(this.getPrivateNameSV(we),we.loc.start),this.toAssignable(At,K)}else super.toAssignable(P,K)}toAssignableObjectExpressionProp(P,K,we){P.type==="Property"&&(P.kind==="get"||P.kind==="set")?this.raise(J.PatternHasAccessor,P.key):P.type==="Property"&&P.method?this.raise(J.PatternHasMethod,P.key):super.toAssignableObjectExpressionProp(P,K,we)}finishCallExpression(P,K){let we=super.finishCallExpression(P,K);if(we.callee.type==="Import"){var At,sr;we.type="ImportExpression",we.source=we.arguments[0],we.options=(At=we.arguments[1])!=null?At:null,we.attributes=(sr=we.arguments[1])!=null?sr:null,delete we.arguments,delete we.callee}return we}toReferencedArguments(P){P.type!=="ImportExpression"&&super.toReferencedArguments(P)}parseExport(P,K){let we=this.state.lastTokStartLoc,At=super.parseExport(P,K);switch(At.type){case"ExportAllDeclaration":At.exported=null;break;case"ExportNamedDeclaration":At.specifiers.length===1&&At.specifiers[0].type==="ExportNamespaceSpecifier"&&(At.type="ExportAllDeclaration",At.exported=At.specifiers[0].exported,delete At.specifiers);case"ExportDefaultDeclaration":{var sr;let{declaration:Yr}=At;Yr?.type==="ClassDeclaration"&&((sr=Yr.decorators)==null?void 0:sr.length)>0&&Yr.start===At.start&&this.resetStartLocation(At,we)}break}return At}parseSubscript(P,K,we,At){let sr=super.parseSubscript(P,K,we,At);if(At.optionalChainMember){if((sr.type==="OptionalMemberExpression"||sr.type==="OptionalCallExpression")&&(sr.type=sr.type.substring(8)),At.stop){let Yr=this.startNodeAtNode(sr);return Yr.expression=sr,this.finishNode(Yr,"ChainExpression")}}else(sr.type==="MemberExpression"||sr.type==="CallExpression")&&(sr.optional=!1);return sr}isOptionalMemberExpression(P){return P.type==="ChainExpression"?P.expression.type==="MemberExpression":super.isOptionalMemberExpression(P)}hasPropertyAsPrivateName(P){return P.type==="ChainExpression"&&(P=P.expression),super.hasPropertyAsPrivateName(P)}isObjectProperty(P){return P.type==="Property"&&P.kind==="init"&&!P.method}isObjectMethod(P){return P.type==="Property"&&(P.method||P.kind==="get"||P.kind==="set")}finishNodeAt(P,K,we){return ue(super.finishNodeAt(P,K,we))}resetStartLocation(P,K){super.resetStartLocation(P,K),ue(P)}resetEndLocation(P,K=this.state.lastTokEndLoc){super.resetEndLocation(P,K),ue(P)}},be=class{constructor(se,P){this.token=void 0,this.preserveSpace=void 0,this.token=se,this.preserveSpace=!!P}},Se={brace:new be("{"),j_oTag:new be("...",!0)};Se.template=new be("`",!0);var De=!0,k=!0,tt=!0,ze=!0,Le=!0,Je=!0,ft=class{constructor(se,P={}){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=se,this.keyword=P.keyword,this.beforeExpr=!!P.beforeExpr,this.startsExpr=!!P.startsExpr,this.rightAssociative=!!P.rightAssociative,this.isLoop=!!P.isLoop,this.isAssign=!!P.isAssign,this.prefix=!!P.prefix,this.postfix=!!P.postfix,this.binop=P.binop!=null?P.binop:null,this.updateContext=null}},lt=new Map;function Ot(se,P={}){P.keyword=se;let K=lr(se,P);return lt.set(se,K),K}function Er(se,P){return lr(se,{beforeExpr:De,binop:P})}var Sr=-1,jt=[],Bt=[],Dt=[],Fr=[],$t=[],Xt=[];function lr(se,P={}){var K,we,At,sr;return++Sr,Bt.push(se),Dt.push((K=P.binop)!=null?K:-1),Fr.push((we=P.beforeExpr)!=null?we:!1),$t.push((At=P.startsExpr)!=null?At:!1),Xt.push((sr=P.prefix)!=null?sr:!1),jt.push(new ft(se,P)),Sr}function cr(se,P={}){var K,we,At,sr;return++Sr,lt.set(se,Sr),Bt.push(se),Dt.push((K=P.binop)!=null?K:-1),Fr.push((we=P.beforeExpr)!=null?we:!1),$t.push((At=P.startsExpr)!=null?At:!1),Xt.push((sr=P.prefix)!=null?sr:!1),jt.push(new ft("name",P)),Sr}var Ar={bracketL:lr("[",{beforeExpr:De,startsExpr:k}),bracketHashL:lr("#[",{beforeExpr:De,startsExpr:k}),bracketBarL:lr("[|",{beforeExpr:De,startsExpr:k}),bracketR:lr("]"),bracketBarR:lr("|]"),braceL:lr("{",{beforeExpr:De,startsExpr:k}),braceBarL:lr("{|",{beforeExpr:De,startsExpr:k}),braceHashL:lr("#{",{beforeExpr:De,startsExpr:k}),braceR:lr("}"),braceBarR:lr("|}"),parenL:lr("(",{beforeExpr:De,startsExpr:k}),parenR:lr(")"),comma:lr(",",{beforeExpr:De}),semi:lr(";",{beforeExpr:De}),colon:lr(":",{beforeExpr:De}),doubleColon:lr("::",{beforeExpr:De}),dot:lr("."),question:lr("?",{beforeExpr:De}),questionDot:lr("?."),arrow:lr("=>",{beforeExpr:De}),template:lr("template"),ellipsis:lr("...",{beforeExpr:De}),backQuote:lr("`",{startsExpr:k}),dollarBraceL:lr("${",{beforeExpr:De,startsExpr:k}),templateTail:lr("...`",{startsExpr:k}),templateNonTail:lr("...${",{beforeExpr:De,startsExpr:k}),at:lr("@"),hash:lr("#",{startsExpr:k}),interpreterDirective:lr("#!..."),eq:lr("=",{beforeExpr:De,isAssign:ze}),assign:lr("_=",{beforeExpr:De,isAssign:ze}),slashAssign:lr("_=",{beforeExpr:De,isAssign:ze}),xorAssign:lr("_=",{beforeExpr:De,isAssign:ze}),moduloAssign:lr("_=",{beforeExpr:De,isAssign:ze}),incDec:lr("++/--",{prefix:Le,postfix:Je,startsExpr:k}),bang:lr("!",{beforeExpr:De,prefix:Le,startsExpr:k}),tilde:lr("~",{beforeExpr:De,prefix:Le,startsExpr:k}),doubleCaret:lr("^^",{startsExpr:k}),doubleAt:lr("@@",{startsExpr:k}),pipeline:Er("|>",0),nullishCoalescing:Er("??",1),logicalOR:Er("||",1),logicalAND:Er("&&",2),bitwiseOR:Er("|",3),bitwiseXOR:Er("^",4),bitwiseAND:Er("&",5),equality:Er("==/!=/===/!==",6),lt:Er("/<=/>=",7),gt:Er("/<=/>=",7),relational:Er("/<=/>=",7),bitShift:Er("<>/>>>",8),bitShiftL:Er("<>/>>>",8),bitShiftR:Er("<>/>>>",8),plusMin:lr("+/-",{beforeExpr:De,binop:9,prefix:Le,startsExpr:k}),modulo:lr("%",{binop:10,startsExpr:k}),star:lr("*",{binop:10}),slash:Er("/",10),exponent:lr("**",{beforeExpr:De,binop:11,rightAssociative:!0}),_in:Ot("in",{beforeExpr:De,binop:7}),_instanceof:Ot("instanceof",{beforeExpr:De,binop:7}),_break:Ot("break"),_case:Ot("case",{beforeExpr:De}),_catch:Ot("catch"),_continue:Ot("continue"),_debugger:Ot("debugger"),_default:Ot("default",{beforeExpr:De}),_else:Ot("else",{beforeExpr:De}),_finally:Ot("finally"),_function:Ot("function",{startsExpr:k}),_if:Ot("if"),_return:Ot("return",{beforeExpr:De}),_switch:Ot("switch"),_throw:Ot("throw",{beforeExpr:De,prefix:Le,startsExpr:k}),_try:Ot("try"),_var:Ot("var"),_const:Ot("const"),_with:Ot("with"),_new:Ot("new",{beforeExpr:De,startsExpr:k}),_this:Ot("this",{startsExpr:k}),_super:Ot("super",{startsExpr:k}),_class:Ot("class",{startsExpr:k}),_extends:Ot("extends",{beforeExpr:De}),_export:Ot("export"),_import:Ot("import",{startsExpr:k}),_null:Ot("null",{startsExpr:k}),_true:Ot("true",{startsExpr:k}),_false:Ot("false",{startsExpr:k}),_typeof:Ot("typeof",{beforeExpr:De,prefix:Le,startsExpr:k}),_void:Ot("void",{beforeExpr:De,prefix:Le,startsExpr:k}),_delete:Ot("delete",{beforeExpr:De,prefix:Le,startsExpr:k}),_do:Ot("do",{isLoop:tt,beforeExpr:De}),_for:Ot("for",{isLoop:tt}),_while:Ot("while",{isLoop:tt}),_as:cr("as",{startsExpr:k}),_assert:cr("assert",{startsExpr:k}),_async:cr("async",{startsExpr:k}),_await:cr("await",{startsExpr:k}),_defer:cr("defer",{startsExpr:k}),_from:cr("from",{startsExpr:k}),_get:cr("get",{startsExpr:k}),_let:cr("let",{startsExpr:k}),_meta:cr("meta",{startsExpr:k}),_of:cr("of",{startsExpr:k}),_sent:cr("sent",{startsExpr:k}),_set:cr("set",{startsExpr:k}),_source:cr("source",{startsExpr:k}),_static:cr("static",{startsExpr:k}),_using:cr("using",{startsExpr:k}),_yield:cr("yield",{startsExpr:k}),_asserts:cr("asserts",{startsExpr:k}),_checks:cr("checks",{startsExpr:k}),_exports:cr("exports",{startsExpr:k}),_global:cr("global",{startsExpr:k}),_implements:cr("implements",{startsExpr:k}),_intrinsic:cr("intrinsic",{startsExpr:k}),_infer:cr("infer",{startsExpr:k}),_is:cr("is",{startsExpr:k}),_mixins:cr("mixins",{startsExpr:k}),_proto:cr("proto",{startsExpr:k}),_require:cr("require",{startsExpr:k}),_satisfies:cr("satisfies",{startsExpr:k}),_keyof:cr("keyof",{startsExpr:k}),_readonly:cr("readonly",{startsExpr:k}),_unique:cr("unique",{startsExpr:k}),_abstract:cr("abstract",{startsExpr:k}),_declare:cr("declare",{startsExpr:k}),_enum:cr("enum",{startsExpr:k}),_module:cr("module",{startsExpr:k}),_namespace:cr("namespace",{startsExpr:k}),_interface:cr("interface",{startsExpr:k}),_type:cr("type",{startsExpr:k}),_opaque:cr("opaque",{startsExpr:k}),name:lr("name",{startsExpr:k}),placeholder:lr("%%",{startsExpr:!0}),string:lr("string",{startsExpr:k}),num:lr("num",{startsExpr:k}),bigint:lr("bigint",{startsExpr:k}),decimal:lr("decimal",{startsExpr:k}),regexp:lr("regexp",{startsExpr:k}),privateName:lr("#name",{startsExpr:k}),eof:lr("eof"),jsxName:lr("jsxName"),jsxText:lr("jsxText",{beforeExpr:!0}),jsxTagStart:lr("jsxTagStart",{startsExpr:!0}),jsxTagEnd:lr("jsxTagEnd")};function qr(se){return se>=93&&se<=133}function yn(se){return se<=92}function ke(se){return se>=58&&se<=133}function zt(se){return se>=58&&se<=137}function Fn(se){return Fr[se]}function Nn(se){return $t[se]}function Hi(se){return se>=29&&se<=33}function Ao(se){return se>=129&&se<=131}function Vr(se){return se>=90&&se<=92}function xi(se){return se>=58&&se<=92}function no(se){return se>=39&&se<=59}function ga(se){return se===34}function Ya(se){return Xt[se]}function Gc(se){return se>=121&&se<=123}function ol(se){return se>=124&&se<=130}function Sc(se){return Bt[se]}function Hr(se){return Dt[se]}function Or(se){return se===57}function Ft(se){return se>=24&&se<=25}function zr(se){return jt[se]}jt[8].updateContext=se=>{se.pop()},jt[5].updateContext=jt[7].updateContext=jt[23].updateContext=se=>{se.push(Se.brace)},jt[22].updateContext=se=>{se[se.length-1]===Se.template?se.pop():se.push(Se.template)},jt[143].updateContext=se=>{se.push(Se.j_expr,Se.j_oTag)};var Rn="\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-\u1C8A\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-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\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="\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\u0897-\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\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\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\uFF65",Qi=new RegExp("["+Rn+"]"),ps=new RegExp("["+Rn+Pr+"]");Rn=Pr=null;var yo=[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,4,51,13,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,39,27,10,22,251,41,7,1,17,2,60,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,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,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,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,229,29,3,0,496,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,16,621,2467,541,1507,4938,6,4191],bo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,343,9,54,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,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Qa(se,P){let K=65536;for(let we=0,At=P.length;wese)return!1;if(K+=P[we+1],K>=se)return!0}return!1}function gc(se){return se<65?se===36:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&Qi.test(String.fromCharCode(se)):Qa(se,yo)}function _g(se){return se<48?se===36:se<58?!0:se<65?!1:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&ps.test(String.fromCharCode(se)):Qa(se,yo)||Qa(se,bo)}var Nc={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"]},sA=new Set(Nc.keyword),ma=new Set(Nc.strict),vu=new Set(Nc.strictBind);function li(se,P){return P&&se==="await"||se==="enum"}function Ei(se,P){return li(se,P)||ma.has(se)}function Ws(se){return vu.has(se)}function Xa(se,P){return Ei(se,P)||Ws(se)}function ac(se){return sA.has(se)}function Ql(se,P,K){return se===64&&P===64&&gc(K)}var Oc=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 vg(se){return Oc.has(se)}var Kl=class{constructor(se){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=se}},Ju=class{constructor(se,P){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=se,this.inModule=P}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let se=this.currentThisScopeFlags();return(se&64)>0&&(se&2)===0}get inStaticBlock(){for(let se=this.scopeStack.length-1;;se--){let{flags:P}=this.scopeStack[se];if(P&128)return!0;if(P&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(se){return new Kl(se)}enter(se){this.scopeStack.push(this.createScope(se))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(se){return!!(se.flags&130||!this.parser.inModule&&se.flags&1)}declareName(se,P,K){let we=this.currentScope();if(P&8||P&16){this.checkRedeclarationInScope(we,se,P,K);let At=we.names.get(se)||0;P&16?At=At|4:(we.firstLexicalName||(we.firstLexicalName=se),At=At|2),we.names.set(se,At),P&8&&this.maybeExportDefined(we,se)}else if(P&4)for(let At=this.scopeStack.length-1;At>=0&&(we=this.scopeStack[At],this.checkRedeclarationInScope(we,se,P,K),we.names.set(se,(we.names.get(se)||0)|1),this.maybeExportDefined(we,se),!(we.flags&387));--At);this.parser.inModule&&we.flags&1&&this.undefinedExports.delete(se)}maybeExportDefined(se,P){this.parser.inModule&&se.flags&1&&this.undefinedExports.delete(P)}checkRedeclarationInScope(se,P,K,we){this.isRedeclaredInScope(se,P,K)&&this.parser.raise(J.VarRedeclaration,we,{identifierName:P})}isRedeclaredInScope(se,P,K){if(!(K&1))return!1;if(K&8)return se.names.has(P);let we=se.names.get(P);return K&16?(we&2)>0||!this.treatFunctionsAsVarInScope(se)&&(we&1)>0:(we&2)>0&&!(se.flags&8&&se.firstLexicalName===P)||!this.treatFunctionsAsVarInScope(se)&&(we&4)>0}checkLocalExport(se){let{name:P}=se;this.scopeStack[0].names.has(P)||this.undefinedExports.set(P,se.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:P}=this.scopeStack[se];if(P&387)return P}}currentThisScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:P}=this.scopeStack[se];if(P&451&&!(P&4))return P}}},Da=class extends Kl{constructor(...se){super(...se),this.declareFunctions=new Set}},fu=class extends Ju{createScope(se){return new Da(se)}declareName(se,P,K){let we=this.currentScope();if(P&2048){this.checkRedeclarationInScope(we,se,P,K),this.maybeExportDefined(we,se),we.declareFunctions.add(se);return}super.declareName(se,P,K)}isRedeclaredInScope(se,P,K){if(super.isRedeclaredInScope(se,P,K))return!0;if(K&2048&&!se.declareFunctions.has(P)){let we=se.names.get(P);return(we&4)>0||(we&2)>0}return!1}checkLocalExport(se){this.scopeStack[0].declareFunctions.has(se.name)||super.checkLocalExport(se)}},yg=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(se){return se+this.startIndex}offsetToSourcePos(se){return se-this.startIndex}hasPlugin(se){if(typeof se=="string")return this.plugins.has(se);{let[P,K]=se;if(!this.hasPlugin(P))return!1;let we=this.plugins.get(P);for(let At of Object.keys(K))if(we?.[At]!==K[At])return!1;return!0}}getPluginOption(se,P){var K;return(K=this.plugins.get(se))==null?void 0:K[P]}};function _I(se,P){se.trailingComments===void 0?se.trailingComments=P:se.trailingComments.unshift(...P)}function Kh(se,P){se.leadingComments===void 0?se.leadingComments=P:se.leadingComments.unshift(...P)}function Ri(se,P){se.innerComments===void 0?se.innerComments=P:se.innerComments.unshift(...P)}function Do(se,P,K){let we=null,At=P.length;for(;we===null&&At>0;)we=P[--At];we===null||we.start>K.start?Ri(se,K.comments):_I(we,K.comments)}var Pt=class extends yg{addComment(se){this.filename&&(se.loc.filename=this.filename);let{commentsLen:P}=this.state;this.comments.length!==P&&(this.comments.length=P),this.comments.push(se),this.state.commentsLen++}processComment(se){let{commentStack:P}=this.state,K=P.length;if(K===0)return;let we=K-1,At=P[we];At.start===se.end&&(At.leadingNode=se,we--);let{start:sr}=se;for(;we>=0;we--){let Yr=P[we],Lr=Yr.end;if(Lr>sr)Yr.containingNode=se,this.finalizeComment(Yr),P.splice(we,1);else{Lr===sr&&(Yr.trailingNode=se);break}}}finalizeComment(se){let{comments:P}=se;if(se.leadingNode!==null||se.trailingNode!==null)se.leadingNode!==null&&_I(se.leadingNode,P),se.trailingNode!==null&&Kh(se.trailingNode,P);else{let{containingNode:K,start:we}=se;if(this.input.charCodeAt(this.offsetToSourcePos(we)-1)===44)switch(K.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Do(K,K.properties,se);break;case"CallExpression":case"OptionalCallExpression":Do(K,K.arguments,se);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Do(K,K.params,se);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Do(K,K.elements,se);break;case"ExportNamedDeclaration":case"ImportDeclaration":Do(K,K.specifiers,se);break;case"TSEnumDeclaration":Do(K,K.members,se);break;case"TSEnumBody":Do(K,K.members,se);break;default:Ri(K,P)}else Ri(K,P)}}finalizeRemainingComments(){let{commentStack:se}=this.state;for(let P=se.length-1;P>=0;P--)this.finalizeComment(se[P]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(se){let{commentStack:P}=this.state,{length:K}=P;if(K===0)return;let we=P[K-1];we.leadingNode===se&&(we.leadingNode=null)}resetPreviousIdentifierLeadingComments(se){let{commentStack:P}=this.state,{length:K}=P;K!==0&&(P[K-1].trailingNode===se?P[K-1].trailingNode=null:K>=2&&P[K-2].trailingNode===se&&(P[K-2].trailingNode=null))}takeSurroundingComments(se,P,K){let{commentStack:we}=this.state,At=we.length;if(At===0)return;let sr=At-1;for(;sr>=0;sr--){let Yr=we[sr],Lr=Yr.end;if(Yr.start===K)Yr.leadingNode=se;else if(Lr===P)Yr.trailingNode=se;else if(Lr0}set strict(P){P?this.flags|=1:this.flags&=-2}init({strictMode:P,sourceType:K,startIndex:we,startLine:At,startColumn:sr}){this.strict=P===!1?!1:P===!0?!0:K==="module",this.startIndex=we,this.curLine=At,this.lineStart=-sr,this.startLoc=this.endLoc=new r(At,sr,we)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(P){P?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(P){P?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(P){P?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(P){P?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(P){P?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(P){P?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(P){P?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(P){P?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(P){P?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(P){P?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(P){P?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(P){P?this.flags|=4096:this.flags&=-4097}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let P=new Ayi;return P.flags=this.flags,P.startIndex=this.startIndex,P.curLine=this.curLine,P.lineStart=this.lineStart,P.startLoc=this.startLoc,P.endLoc=this.endLoc,P.errors=this.errors.slice(),P.potentialArrowAt=this.potentialArrowAt,P.noArrowAt=this.noArrowAt.slice(),P.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),P.topicContext=this.topicContext,P.labels=this.labels.slice(),P.commentsLen=this.commentsLen,P.commentStack=this.commentStack.slice(),P.pos=this.pos,P.type=this.type,P.value=this.value,P.start=this.start,P.end=this.end,P.lastTokEndLoc=this.lastTokEndLoc,P.lastTokStartLoc=this.lastTokStartLoc,P.context=this.context.slice(),P.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,P.strictErrors=this.strictErrors,P.tokensLength=this.tokensLength,P}},ZA=function(se){return se>=48&&se<=57},$i={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},gl={bin:se=>se===48||se===49,oct:se=>se>=48&&se<=55,dec:se=>se>=48&&se<=57,hex:se=>se>=48&&se<=57||se>=65&&se<=70||se>=97&&se<=102};function zf(se,P,K,we,At,sr){let Yr=K,Lr=we,fi=At,$n="",ra=null,kc=K,{length:Dl}=P;for(;;){if(K>=Dl){sr.unterminated(Yr,Lr,fi),$n+=P.slice(kc,K);break}let ca=P.charCodeAt(K);if(zd(se,ca,P,K)){$n+=P.slice(kc,K);break}if(ca===92){$n+=P.slice(kc,K);let Bl=aA(P,K,we,At,se==="template",sr);Bl.ch===null&&!ra?ra={pos:K,lineStart:we,curLine:At}:$n+=Bl.ch,{pos:K,lineStart:we,curLine:At}=Bl,kc=K}else ca===8232||ca===8233?(++K,++At,we=K):ca===10||ca===13?se==="template"?($n+=P.slice(kc,K)+` -`,++K,ca===13&&P.charCodeAt(K)===10&&++K,++At,kc=we=K):sr.unterminated(Yr,Lr,fi):++K}return{pos:K,str:$n,firstInvalidLoc:ra,lineStart:we,curLine:At,containsInvalid:!!ra}}function zd(se,P,K,we){return se==="template"?P===96||P===36&&K.charCodeAt(we+1)===123:P===(se==="double"?34:39)}function aA(se,P,K,we,At,sr){let Yr=!At;P++;let Lr=$n=>({pos:P,ch:$n,lineStart:K,curLine:we}),fi=se.charCodeAt(P++);switch(fi){case 110:return Lr(` -`);case 114:return Lr("\r");case 120:{let $n;return{code:$n,pos:P}=so(se,P,K,we,2,!1,Yr,sr),Lr($n===null?null:String.fromCharCode($n))}case 117:{let $n;return{code:$n,pos:P}=cc(se,P,K,we,Yr,sr),Lr($n===null?null:String.fromCodePoint($n))}case 116:return Lr(" ");case 98:return Lr("\b");case 118:return Lr("\v");case 102:return Lr("\f");case 13:se.charCodeAt(P)===10&&++P;case 10:K=P,++we;case 8232:case 8233:return Lr("");case 56:case 57:if(At)return Lr(null);sr.strictNumericEscape(P-1,K,we);default:if(fi>=48&&fi<=55){let $n=P-1,ra=/^[0-7]+/.exec(se.slice($n,P+2))[0],kc=parseInt(ra,8);kc>255&&(ra=ra.slice(0,-1),kc=parseInt(ra,8)),P+=ra.length-1;let Dl=se.charCodeAt(P);if(ra!=="0"||Dl===56||Dl===57){if(At)return Lr(null);sr.strictNumericEscape($n,K,we)}return Lr(String.fromCharCode(kc))}return Lr(String.fromCharCode(fi))}}function so(se,P,K,we,At,sr,Yr,Lr){let fi=P,$n;return{n:$n,pos:P}=Ki(se,P,K,we,16,At,sr,!1,Lr,!Yr),$n===null&&(Yr?Lr.invalidEscapeSequence(fi,K,we):P=fi-1),{code:$n,pos:P}}function Ki(se,P,K,we,At,sr,Yr,Lr,fi,$n){let ra=P,kc=At===16?$i.hex:$i.decBinOct,Dl=At===16?gl.hex:At===10?gl.dec:At===8?gl.oct:gl.bin,ca=!1,Bl=0;for(let eA=0,BA=sr??1/0;eA=97?gp=gI-97+10:gI>=65?gp=gI-65+10:ZA(gI)?gp=gI-48:gp=1/0,gp>=At){if(gp<=9&&$n)return{n:null,pos:P};if(gp<=9&&fi.invalidDigit(P,K,we,At))gp=0;else if(Yr)gp=0,ca=!0;else break}++P,Bl=Bl*At+gp}return P===ra||sr!=null&&P-ra!==sr||ca?{n:null,pos:P}:{n:Bl,pos:P}}function cc(se,P,K,we,At,sr){let Yr=se.charCodeAt(P),Lr;if(Yr===123){if(++P,{code:Lr,pos:P}=so(se,P,K,we,se.indexOf("}",P)-P,!0,At,sr),++P,Lr!==null&&Lr>1114111)if(At)sr.invalidCodePoint(P,K,we);else return{code:null,pos:P}}else({code:Lr,pos:P}=so(se,P,K,we,4,!1,At,sr));return{code:Lr,pos:P}}function Xs(se,P,K){return new r(K,se-P,se)}var ws=new Set([103,109,115,105,121,117,100,118]),Gs=class{constructor(se){let P=se.startIndex||0;this.type=se.type,this.value=se.value,this.start=P+se.start,this.end=P+se.end,this.loc=new n(se.startLoc,se.endLoc)}},Ma=class extends Pt{constructor(se,P){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(K,we,At,sr)=>this.optionFlags&1024?(this.raise(J.InvalidDigit,Xs(K,we,At),{radix:sr}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(J.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(J.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(J.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(J.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(K,we,At)=>{this.recordStrictModeErrors(J.StrictNumericEscape,Xs(K,we,At))},unterminated:(K,we,At)=>{throw this.raise(J.UnterminatedString,Xs(K-1,we,At))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(J.StrictNumericEscape),unterminated:(K,we,At)=>{throw this.raise(J.UnterminatedTemplate,Xs(K,we,At))}}),this.state=new HA,this.state.init(se),this.input=P,this.length=P.length,this.comments=[],this.isLookahead=!1}pushToken(se){this.tokens.length=this.state.tokensLength,this.tokens.push(se),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new Gs(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(se){return this.match(se)?(this.next(),!0):!1}match(se){return this.state.type===se}createLookaheadState(se){return{pos:se.pos,value:null,type:se.type,start:se.start,end:se.end,context:[this.curContext()],inType:se.inType,startLoc:se.startLoc,lastTokEndLoc:se.lastTokEndLoc,curLine:se.curLine,lineStart:se.lineStart,curPosition:se.curPosition}}lookahead(){let se=this.state;this.state=this.createLookaheadState(se),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let P=this.state;return this.state=se,P}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(se){return Yn.lastIndex=se,Yn.test(this.input)?Yn.lastIndex:se}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(se){return Ko.lastIndex=se,Ko.test(this.input)?Ko.lastIndex:se}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(se){let P=this.input.charCodeAt(se);if((P&64512)===55296&&++sethis.raise(P,K)),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(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(se){let P;this.isLookahead||(P=this.state.curPosition());let K=this.state.pos,we=this.input.indexOf(se,K+2);if(we===-1)throw this.raise(J.UnterminatedComment,this.state.curPosition());for(this.state.pos=we+se.length,Ru.lastIndex=K+2;Ru.test(this.input)&&Ru.lastIndex<=we;)++this.state.curLine,this.state.lineStart=Ru.lastIndex;if(this.isLookahead)return;let At={type:"CommentBlock",value:this.input.slice(K+2,we),start:this.sourceToOffsetPos(K),end:this.sourceToOffsetPos(we+se.length),loc:new n(P,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(At),At}skipLineComment(se){let P=this.state.pos,K;this.isLookahead||(K=this.state.curPosition());let we=this.input.charCodeAt(this.state.pos+=se);if(this.state.posse)){let At=this.skipLineComment(3);At!==void 0&&(this.addComment(At),P?.push(At))}else break e}else if(K===60&&!this.inModule&&this.optionFlags&4096){let we=this.state.pos;if(this.input.charCodeAt(we+1)===33&&this.input.charCodeAt(we+2)===45&&this.input.charCodeAt(we+3)===45){let At=this.skipLineComment(4);At!==void 0&&(this.addComment(At),P?.push(At))}else break e}else break e}}if(P?.length>0){let K=this.state.pos,we={start:this.sourceToOffsetPos(se),end:this.sourceToOffsetPos(K),comments:P,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(we)}}finishToken(se,P){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let K=this.state.type;this.state.type=se,this.state.value=P,this.isLookahead||this.updateContext(K)}replaceToken(se){this.state.type=se,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let se=this.state.pos+1,P=this.codePointAtPos(se);if(P>=48&&P<=57)throw this.raise(J.UnexpectedDigitAfterHash,this.state.curPosition());if(P===123||P===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(P===123?J.RecordExpressionHashIncorrectStartSyntaxType:J.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,P===123?this.finishToken(7):this.finishToken(1)}else gc(P)?(++this.state.pos,this.finishToken(139,this.readWord1(P))):P===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let se=this.input.charCodeAt(this.state.pos+1);if(se>=48&&se<=57){this.readNumber(!0);return}se===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 se=this.input.charCodeAt(this.state.pos+1);if(se!==33)return!1;let P=this.state.pos;for(this.state.pos+=1;!Vs(se)&&++this.state.pos=48&&P<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(se){switch(se){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(J.TupleExpressionBarIncorrectStartSyntaxType,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(J.RecordExpressionBarIncorrectStartSyntaxType,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 P=this.input.charCodeAt(this.state.pos+1);if(P===120||P===88){this.readRadixNumber(16);return}if(P===111||P===79){this.readRadixNumber(8);return}if(P===98||P===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(se);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(se);return;case 124:case 38:this.readToken_pipe_amp(se);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(se);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(se);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(gc(se)){this.readWord(se);return}}throw this.raise(J.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(se)})}finishOp(se,P){let K=this.input.slice(this.state.pos,this.state.pos+P);this.state.pos+=P,this.finishToken(se,K)}readRegexp(){let se=this.state.startLoc,P=this.state.start+1,K,we,{pos:At}=this.state;for(;;++At){if(At>=this.length)throw this.raise(J.UnterminatedRegExp,a(se,1));let fi=this.input.charCodeAt(At);if(Vs(fi))throw this.raise(J.UnterminatedRegExp,a(se,1));if(K)K=!1;else{if(fi===91)we=!0;else if(fi===93&&we)we=!1;else if(fi===47&&!we)break;K=fi===92}}let sr=this.input.slice(P,At);++At;let Yr="",Lr=()=>a(se,At+2-P);for(;At=2&&this.input.charCodeAt(P)===48;if(Lr){let Dl=this.input.slice(P,this.state.pos);if(this.recordStrictModeErrors(J.StrictOctalLiteral,K),!this.state.strict){let ca=Dl.indexOf("_");ca>0&&this.raise(J.ZeroDigitNumericSeparator,a(K,ca))}Yr=Lr&&!/[89]/.test(Dl)}let fi=this.input.charCodeAt(this.state.pos);if(fi===46&&!Yr&&(++this.state.pos,this.readInt(10),we=!0,fi=this.input.charCodeAt(this.state.pos)),(fi===69||fi===101)&&!Yr&&(fi=this.input.charCodeAt(++this.state.pos),(fi===43||fi===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(J.InvalidOrMissingExponent,K),we=!0,sr=!0,fi=this.input.charCodeAt(this.state.pos)),fi===110&&((we||Lr)&&this.raise(J.InvalidBigIntLiteral,K),++this.state.pos,At=!0),fi===109){this.expectPlugin("decimal",this.state.curPosition()),(sr||Lr)&&this.raise(J.InvalidDecimal,K),++this.state.pos;var $n=!0}if(gc(this.codePointAtPos(this.state.pos)))throw this.raise(J.NumberIdentifier,this.state.curPosition());let ra=this.input.slice(P,this.state.pos).replace(/[_mn]/g,"");if(At){this.finishToken(136,ra);return}if($n){this.finishToken(137,ra);return}let kc=Yr?parseInt(ra,8):parseFloat(ra);this.finishToken(135,kc)}readCodePoint(se){let{code:P,pos:K}=cc(this.input,this.state.pos,this.state.lineStart,this.state.curLine,se,this.errorHandlers_readCodePoint);return this.state.pos=K,P}readString(se){let{str:P,pos:K,curLine:we,lineStart:At}=zf(se===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=K+1,this.state.lineStart=At,this.state.curLine=we,this.finishToken(134,P)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let se=this.input[this.state.pos],{str:P,firstInvalidLoc:K,pos:we,curLine:At,lineStart:sr}=zf("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=we+1,this.state.lineStart=sr,this.state.curLine=At,K&&(this.state.firstInvalidTemplateEscapePos=new r(K.curLine,K.pos-K.lineStart,this.sourceToOffsetPos(K.pos))),this.input.codePointAt(we)===96?this.finishToken(24,K?null:se+P+"`"):(this.state.pos++,this.finishToken(25,K?null:se+P+"${"))}recordStrictModeErrors(se,P){let K=P.index;this.state.strict&&!this.state.strictErrors.has(K)?this.raise(se,P):this.state.strictErrors.set(K,[se,P])}readWord1(se){this.state.containsEsc=!1;let P="",K=this.state.pos,we=this.state.pos;for(se!==void 0&&(this.state.pos+=se<=65535?1:2);this.state.pos=0;Yr--){let Lr=sr[Yr];if(Lr.loc.index===At)return sr[Yr]=se(we,K);if(Lr.loc.indexthis.hasPlugin(P)))throw this.raise(J.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:se})}errorBuilder(se){return(P,K,we)=>{this.raise(se,Xs(P,K,we))}}},Dc=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},As=class{constructor(se){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=se}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Dc)}exit(){let se=this.stack.pop(),P=this.current();for(let[K,we]of Array.from(se.undefinedPrivateNames))P?P.undefinedPrivateNames.has(K)||P.undefinedPrivateNames.set(K,we):this.parser.raise(J.InvalidPrivateFieldResolution,we,{identifierName:K})}declarePrivateName(se,P,K){let{privateNames:we,loneAccessors:At,undefinedPrivateNames:sr}=this.current(),Yr=we.has(se);if(P&3){let Lr=Yr&&At.get(se);if(Lr){let fi=Lr&4,$n=P&4,ra=Lr&3,kc=P&3;Yr=ra===kc||fi!==$n,Yr||At.delete(se)}else Yr||At.set(se,P)}Yr&&this.parser.raise(J.PrivateNameRedeclaration,K,{identifierName:se}),we.add(se),sr.delete(se)}usePrivateName(se,P){let K;for(K of this.stack)if(K.privateNames.has(se))return;K?K.undefinedPrivateNames.set(se,P):this.parser.raise(J.InvalidPrivateFieldResolution,P,{identifierName:se})}},Nf=class{constructor(se=0){this.type=se}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},Am=class extends Nf{constructor(se){super(se),this.declarationErrors=new Map}recordDeclarationError(se,P){let K=P.index;this.declarationErrors.set(K,[se,P])}clearDeclarationError(se){this.declarationErrors.delete(se)}iterateErrors(se){this.declarationErrors.forEach(se)}},Zl=class{constructor(se){this.parser=void 0,this.stack=[new Nf],this.parser=se}enter(se){this.stack.push(se)}exit(){this.stack.pop()}recordParameterInitializerError(se,P){let K=P.loc.start,{stack:we}=this,At=we.length-1,sr=we[At];for(;!sr.isCertainlyParameterDeclaration();){if(sr.canBeArrowParameterDeclaration())sr.recordDeclarationError(se,K);else return;sr=we[--At]}this.parser.raise(se,K)}recordArrowParameterBindingError(se,P){let{stack:K}=this,we=K[K.length-1],At=P.loc.start;if(we.isCertainlyParameterDeclaration())this.parser.raise(se,At);else if(we.canBeArrowParameterDeclaration())we.recordDeclarationError(se,At);else return}recordAsyncArrowParametersError(se){let{stack:P}=this,K=P.length-1,we=P[K];for(;we.canBeArrowParameterDeclaration();)we.type===2&&we.recordDeclarationError(J.AwaitBindingIdentifier,se),we=P[--K]}validateAsPattern(){let{stack:se}=this,P=se[se.length-1];P.canBeArrowParameterDeclaration()&&P.iterateErrors(([K,we])=>{this.parser.raise(K,we);let At=se.length-2,sr=se[At];for(;sr.canBeArrowParameterDeclaration();)sr.clearDeclarationError(we.index),sr=se[--At]})}};function rc(){return new Nf(3)}function ad(){return new Am(1)}function Qm(){return new Am(2)}function rl(){return new Nf}var LA=class{constructor(){this.stacks=[]}enter(se){this.stacks.push(se)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function VA(se,P){return(se?2:0)|(P?1:0)}var bl=class extends Ma{addExtra(se,P,K,we=!0){if(!se)return;let{extra:At}=se;At==null&&(At={},se.extra=At),we?At[P]=K:Object.defineProperty(At,P,{enumerable:we,value:K})}isContextual(se){return this.state.type===se&&!this.state.containsEsc}isUnparsedContextual(se,P){let K=se+P.length;if(this.input.slice(se,K)===P){let we=this.input.charCodeAt(K);return!(_g(we)||(we&64512)===55296)}return!1}isLookaheadContextual(se){let P=this.nextTokenStart();return this.isUnparsedContextual(P,se)}eatContextual(se){return this.isContextual(se)?(this.next(),!0):!1}expectContextual(se,P){if(!this.eatContextual(se)){if(P!=null)throw this.raise(P,this.state.startLoc);this.unexpected(null,se)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Uu(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return Uu(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(se=!0){(se?this.isLineTerminator():this.eat(13))||this.raise(J.MissingSemicolon,this.state.lastTokEndLoc)}expect(se,P){this.eat(se)||this.unexpected(P,se)}tryParse(se,P=this.state.clone()){let K={node:null};try{let we=se((At=null)=>{throw K.node=At,K});if(this.state.errors.length>P.errors.length){let At=this.state;return this.state=P,this.state.tokensLength=At.tokensLength,{node:we,error:At.errors[P.errors.length],thrown:!1,aborted:!1,failState:At}}return{node:we,error:null,thrown:!1,aborted:!1,failState:null}}catch(we){let At=this.state;if(this.state=P,we instanceof SyntaxError)return{node:null,error:we,thrown:!0,aborted:!1,failState:At};if(we===K)return{node:K.node,error:null,thrown:!1,aborted:!0,failState:At};throw we}}checkExpressionErrors(se,P){if(!se)return!1;let{shorthandAssignLoc:K,doubleProtoLoc:we,privateKeyLoc:At,optionalParametersLoc:sr}=se,Yr=!!K||!!we||!!sr||!!At;if(!P)return Yr;K!=null&&this.raise(J.InvalidCoverInitializedName,K),we!=null&&this.raise(J.DuplicateProto,we),At!=null&&this.raise(J.UnexpectedPrivateField,At),sr!=null&&this.unexpected(sr)}isLiteralPropertyName(){return zt(this.state.type)}isPrivateName(se){return se.type==="PrivateName"}getPrivateNameSV(se){return se.id.name}hasPropertyAsPrivateName(se){return(se.type==="MemberExpression"||se.type==="OptionalMemberExpression")&&this.isPrivateName(se.property)}isObjectProperty(se){return se.type==="ObjectProperty"}isObjectMethod(se){return se.type==="ObjectMethod"}initializeScopes(se=this.options.sourceType==="module"){let P=this.state.labels;this.state.labels=[];let K=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let we=this.inModule;this.inModule=se;let At=this.scope,sr=this.getScopeHandler();this.scope=new sr(this,se);let Yr=this.prodParam;this.prodParam=new LA;let Lr=this.classScope;this.classScope=new As(this);let fi=this.expressionScope;return this.expressionScope=new Zl(this),()=>{this.state.labels=P,this.exportedIdentifiers=K,this.inModule=we,this.scope=At,this.prodParam=Yr,this.classScope=Lr,this.expressionScope=fi}}enterInitialScopes(){let se=0;this.inModule&&(se|=2),this.scope.enter(1),this.prodParam.enter(se)}checkDestructuringPrivate(se){let{privateKeyLoc:P}=se;P!==null&&this.expectPlugin("destructuringPrivate",P)}},bg=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Yp=class{constructor(se,P,K){this.type="",this.start=P,this.end=0,this.loc=new n(K),se?.optionFlags&64&&(this.range=[P,0]),se!=null&&se.filename&&(this.loc.filename=se.filename)}},YA=Yp.prototype;YA.__clone=function(){let se=new Yp(void 0,this.start,this.loc.start),P=Object.keys(this);for(let K=0,we=P.length;K`Cannot overwrite reserved type ${se}.`,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:({memberName:se,enumName:P})=>`Boolean enum members need to be initialized. Use either \`${se} = true,\` or \`${se} = false,\` in enum \`${P}\`.`,EnumDuplicateMemberName:({memberName:se,enumName:P})=>`Enum member names need to be unique, but the name \`${se}\` has already been used before in enum \`${P}\`.`,EnumInconsistentMemberValues:({enumName:se})=>`Enum \`${se}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:se,enumName:P})=>`Enum type \`${se}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${P}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:se})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${se}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:se,memberName:P,explicitType:K})=>`Enum \`${se}\` has type \`${K}\`, so the initializer of \`${P}\` needs to be a ${K} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:se,memberName:P})=>`Symbol enum members cannot be initialized. Use \`${P},\` in enum \`${se}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:se,memberName:P})=>`The enum member initializer for \`${P}\` needs to be a literal (either a boolean, number, or string) in enum \`${se}\`.`,EnumInvalidMemberName:({enumName:se,memberName:P,suggestion:K})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${P}\`, consider using \`${K}\`, in enum \`${se}\`.`,EnumNumberMemberNotInitialized:({enumName:se,memberName:P})=>`Number enum members need to be initialized, e.g. \`${P} = 1\` in enum \`${se}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:se})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${se}\`.`,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:({reservedType:se})=>`Unexpected reserved type ${se}.`,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:({unsupportedExportKind:se,suggestion:P})=>`\`declare export ${se}\` is not supported. Use \`${P}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Oa(se){return se.type==="DeclareExportAllDeclaration"||se.type==="DeclareExportDeclaration"&&(!se.declaration||se.declaration.type!=="TypeAlias"&&se.declaration.type!=="InterfaceDeclaration")}function Ca(se){return se.importKind==="type"||se.importKind==="typeof"}var gd={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function Dp(se,P){let K=[],we=[];for(let At=0;Atclass extends se{constructor(...P){super(...P),this.flowPragma=void 0}getScopeHandler(){return fu}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(P,K){P!==134&&P!==13&&P!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(P,K)}addComment(P){if(this.flowPragma===void 0){let K=sp.exec(P.value);if(K)if(K[1]==="flow")this.flowPragma="flow";else if(K[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(P)}flowParseTypeInitialiser(P){let K=this.state.inType;this.state.inType=!0,this.expect(P||14);let we=this.flowParseType();return this.state.inType=K,we}flowParsePredicate(){let P=this.startNode(),K=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>K.index+1&&this.raise(Fs.UnexpectedSpaceBetweenModuloChecks,K),this.eat(10)?(P.value=super.parseExpression(),this.expect(11),this.finishNode(P,"DeclaredPredicate")):this.finishNode(P,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let P=this.state.inType;this.state.inType=!0,this.expect(14);let K=null,we=null;return this.match(54)?(this.state.inType=P,we=this.flowParsePredicate()):(K=this.flowParseType(),this.state.inType=P,this.match(54)&&(we=this.flowParsePredicate())),[K,we]}flowParseDeclareClass(P){return this.next(),this.flowParseInterfaceish(P,!0),this.finishNode(P,"DeclareClass")}flowParseDeclareFunction(P){this.next();let K=P.id=this.parseIdentifier(),we=this.startNode(),At=this.startNode();this.match(47)?we.typeParameters=this.flowParseTypeParameterDeclaration():we.typeParameters=null,this.expect(10);let sr=this.flowParseFunctionTypeParams();return we.params=sr.params,we.rest=sr.rest,we.this=sr._this,this.expect(11),[we.returnType,P.predicate]=this.flowParseTypeAndPredicateInitialiser(),At.typeAnnotation=this.finishNode(we,"FunctionTypeAnnotation"),K.typeAnnotation=this.finishNode(At,"TypeAnnotation"),this.resetEndLocation(K),this.semicolon(),this.scope.declareName(P.id.name,2048,P.id.loc.start),this.finishNode(P,"DeclareFunction")}flowParseDeclare(P,K){if(this.match(80))return this.flowParseDeclareClass(P);if(this.match(68))return this.flowParseDeclareFunction(P);if(this.match(74))return this.flowParseDeclareVariable(P);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(P):(K&&this.raise(Fs.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(P));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(P);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(P);if(this.isContextual(129))return this.flowParseDeclareInterface(P);if(this.match(82))return this.flowParseDeclareExportDeclaration(P,K);this.unexpected()}flowParseDeclareVariable(P){return this.next(),P.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(P.id.name,5,P.id.loc.start),this.semicolon(),this.finishNode(P,"DeclareVariable")}flowParseDeclareModule(P){this.scope.enter(0),this.match(134)?P.id=super.parseExprAtom():P.id=this.parseIdentifier();let K=P.body=this.startNode(),we=K.body=[];for(this.expect(5);!this.match(8);){let Yr=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(Fs.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(Yr)):(this.expectContextual(125,Fs.UnsupportedStatementInDeclareModule),Yr=this.flowParseDeclare(Yr,!0)),we.push(Yr)}this.scope.exit(),this.expect(8),this.finishNode(K,"BlockStatement");let At=null,sr=!1;return we.forEach(Yr=>{Oa(Yr)?(At==="CommonJS"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),At="ES"):Yr.type==="DeclareModuleExports"&&(sr&&this.raise(Fs.DuplicateDeclareModuleExports,Yr),At==="ES"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),At="CommonJS",sr=!0)}),P.kind=At||"CommonJS",this.finishNode(P,"DeclareModule")}flowParseDeclareExportDeclaration(P,K){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?P.declaration=this.flowParseDeclare(this.startNode()):(P.declaration=this.flowParseType(),this.semicolon()),P.default=!0,this.finishNode(P,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!K){let we=this.state.value;throw this.raise(Fs.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:we,suggestion:gd[we]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return P.declaration=this.flowParseDeclare(this.startNode()),P.default=!1,this.finishNode(P,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return P=this.parseExport(P,null),P.type==="ExportNamedDeclaration"&&(P.type="ExportDeclaration",P.default=!1,delete P.exportKind),P.type="Declare"+P.type,P;this.unexpected()}flowParseDeclareModuleExports(P){return this.next(),this.expectContextual(111),P.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(P,"DeclareModuleExports")}flowParseDeclareTypeAlias(P){this.next();let K=this.flowParseTypeAlias(P);return K.type="DeclareTypeAlias",K}flowParseDeclareOpaqueType(P){this.next();let K=this.flowParseOpaqueType(P,!0);return K.type="DeclareOpaqueType",K}flowParseDeclareInterface(P){return this.next(),this.flowParseInterfaceish(P,!1),this.finishNode(P,"DeclareInterface")}flowParseInterfaceish(P,K){if(P.id=this.flowParseRestrictedIdentifier(!K,!0),this.scope.declareName(P.id.name,K?17:8201,P.id.loc.start),this.match(47)?P.typeParameters=this.flowParseTypeParameterDeclaration():P.typeParameters=null,P.extends=[],this.eat(81))do P.extends.push(this.flowParseInterfaceExtends());while(!K&&this.eat(12));if(K){if(P.implements=[],P.mixins=[],this.eatContextual(117))do P.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do P.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}P.body=this.flowParseObjectType({allowStatic:K,allowExact:!1,allowSpread:!1,allowProto:K,allowInexact:!1})}flowParseInterfaceExtends(){let P=this.startNode();return P.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?P.typeParameters=this.flowParseTypeParameterInstantiation():P.typeParameters=null,this.finishNode(P,"InterfaceExtends")}flowParseInterface(P){return this.flowParseInterfaceish(P,!1),this.finishNode(P,"InterfaceDeclaration")}checkNotUnderscore(P){P==="_"&&this.raise(Fs.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(P,K,we){oa.has(P)&&this.raise(we?Fs.AssignReservedType:Fs.UnexpectedReservedType,K,{reservedType:P})}flowParseRestrictedIdentifier(P,K){return this.checkReservedType(this.state.value,this.state.startLoc,K),this.parseIdentifier(P)}flowParseTypeAlias(P){return P.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(P.id.name,8201,P.id.loc.start),this.match(47)?P.typeParameters=this.flowParseTypeParameterDeclaration():P.typeParameters=null,P.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(P,"TypeAlias")}flowParseOpaqueType(P,K){return this.expectContextual(130),P.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(P.id.name,8201,P.id.loc.start),this.match(47)?P.typeParameters=this.flowParseTypeParameterDeclaration():P.typeParameters=null,P.supertype=null,this.match(14)&&(P.supertype=this.flowParseTypeInitialiser(14)),P.impltype=null,K||(P.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(P,"OpaqueType")}flowParseTypeParameter(P=!1){let K=this.state.startLoc,we=this.startNode(),At=this.flowParseVariance(),sr=this.flowParseTypeAnnotatableIdentifier();return we.name=sr.name,we.variance=At,we.bound=sr.typeAnnotation,this.match(29)?(this.eat(29),we.default=this.flowParseType()):P&&this.raise(Fs.MissingTypeParamDefault,K),this.finishNode(we,"TypeParameter")}flowParseTypeParameterDeclaration(){let P=this.state.inType,K=this.startNode();K.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let we=!1;do{let At=this.flowParseTypeParameter(we);K.params.push(At),At.default&&(we=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=P,this.finishNode(K,"TypeParameterDeclaration")}flowInTopLevelContext(P){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return P()}finally{this.state.context=K}}else return P()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let P=this.startNode(),K=this.state.inType;return this.state.inType=!0,P.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let we=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)P.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=we}),this.state.inType=K,!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(P,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let P=this.startNode(),K=this.state.inType;for(P.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)P.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=K,this.finishNode(P,"TypeParameterInstantiation")}flowParseInterfaceType(){let P=this.startNode();if(this.expectContextual(129),P.extends=[],this.eat(81))do P.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return P.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(P,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(P,K,we){return P.static=K,this.lookahead().type===14?(P.id=this.flowParseObjectPropertyKey(),P.key=this.flowParseTypeInitialiser()):(P.id=null,P.key=this.flowParseType()),this.expect(3),P.value=this.flowParseTypeInitialiser(),P.variance=we,this.finishNode(P,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(P,K){return P.static=K,P.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(P.method=!0,P.optional=!1,P.value=this.flowParseObjectTypeMethodish(this.startNodeAt(P.loc.start))):(P.method=!1,this.eat(17)&&(P.optional=!0),P.value=this.flowParseTypeInitialiser()),this.finishNode(P,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(P){for(P.params=[],P.rest=null,P.typeParameters=null,P.this=null,this.match(47)&&(P.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(P.this=this.flowParseFunctionTypeParam(!0),P.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)P.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(P.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),P.returnType=this.flowParseTypeInitialiser(),this.finishNode(P,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(P,K){let we=this.startNode();return P.static=K,P.value=this.flowParseObjectTypeMethodish(we),this.finishNode(P,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:P,allowExact:K,allowSpread:we,allowProto:At,allowInexact:sr}){let Yr=this.state.inType;this.state.inType=!0;let Lr=this.startNode();Lr.callProperties=[],Lr.properties=[],Lr.indexers=[],Lr.internalSlots=[];let fi,$n,ra=!1;for(K&&this.match(6)?(this.expect(6),fi=9,$n=!0):(this.expect(5),fi=8,$n=!1),Lr.exact=$n;!this.match(fi);){let Dl=!1,ca=null,Bl=null,eA=this.startNode();if(At&&this.isContextual(118)){let gI=this.lookahead();gI.type!==14&&gI.type!==17&&(this.next(),ca=this.state.startLoc,P=!1)}if(P&&this.isContextual(106)){let gI=this.lookahead();gI.type!==14&&gI.type!==17&&(this.next(),Dl=!0)}let BA=this.flowParseVariance();if(this.eat(0))ca!=null&&this.unexpected(ca),this.eat(0)?(BA&&this.unexpected(BA.loc.start),Lr.internalSlots.push(this.flowParseObjectTypeInternalSlot(eA,Dl))):Lr.indexers.push(this.flowParseObjectTypeIndexer(eA,Dl,BA));else if(this.match(10)||this.match(47))ca!=null&&this.unexpected(ca),BA&&this.unexpected(BA.loc.start),Lr.callProperties.push(this.flowParseObjectTypeCallProperty(eA,Dl));else{let gI="init";if(this.isContextual(99)||this.isContextual(104)){let mb=this.lookahead();zt(mb.type)&&(gI=this.state.value,this.next())}let gp=this.flowParseObjectTypeProperty(eA,Dl,ca,BA,gI,we,sr??!$n);gp===null?(ra=!0,Bl=this.state.lastTokStartLoc):Lr.properties.push(gp)}this.flowObjectTypeSemicolon(),Bl&&!this.match(8)&&!this.match(9)&&this.raise(Fs.UnexpectedExplicitInexactInObject,Bl)}this.expect(fi),we&&(Lr.inexact=ra);let kc=this.finishNode(Lr,"ObjectTypeAnnotation");return this.state.inType=Yr,kc}flowParseObjectTypeProperty(P,K,we,At,sr,Yr,Lr){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(Yr?Lr||this.raise(Fs.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Fs.InexactInsideNonObject,this.state.lastTokStartLoc),At&&this.raise(Fs.InexactVariance,At),null):(Yr||this.raise(Fs.UnexpectedSpreadType,this.state.lastTokStartLoc),we!=null&&this.unexpected(we),At&&this.raise(Fs.SpreadVariance,At),P.argument=this.flowParseType(),this.finishNode(P,"ObjectTypeSpreadProperty"));{P.key=this.flowParseObjectPropertyKey(),P.static=K,P.proto=we!=null,P.kind=sr;let fi=!1;return this.match(47)||this.match(10)?(P.method=!0,we!=null&&this.unexpected(we),At&&this.unexpected(At.loc.start),P.value=this.flowParseObjectTypeMethodish(this.startNodeAt(P.loc.start)),(sr==="get"||sr==="set")&&this.flowCheckGetterSetterParams(P),!Yr&&P.key.name==="constructor"&&P.value.this&&this.raise(Fs.ThisParamBannedInConstructor,P.value.this)):(sr!=="init"&&this.unexpected(),P.method=!1,this.eat(17)&&(fi=!0),P.value=this.flowParseTypeInitialiser(),P.variance=At),P.optional=fi,this.finishNode(P,"ObjectTypeProperty")}}flowCheckGetterSetterParams(P){let K=P.kind==="get"?0:1,we=P.value.params.length+(P.value.rest?1:0);P.value.this&&this.raise(P.kind==="get"?Fs.GetterMayNotHaveThisParam:Fs.SetterMayNotHaveThisParam,P.value.this),we!==K&&this.raise(P.kind==="get"?J.BadGetterArity:J.BadSetterArity,P),P.kind==="set"&&P.value.rest&&this.raise(J.BadSetterRestParameter,P)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(P,K){var we;(we=P)!=null||(P=this.state.startLoc);let At=K||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let sr=this.startNodeAt(P);sr.qualification=At,sr.id=this.flowParseRestrictedIdentifier(!0),At=this.finishNode(sr,"QualifiedTypeIdentifier")}return At}flowParseGenericType(P,K){let we=this.startNodeAt(P);return we.typeParameters=null,we.id=this.flowParseQualifiedTypeIdentifier(P,K),this.match(47)&&(we.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(we,"GenericTypeAnnotation")}flowParseTypeofType(){let P=this.startNode();return this.expect(87),P.argument=this.flowParsePrimaryType(),this.finishNode(P,"TypeofTypeAnnotation")}flowParseTupleType(){let P=this.startNode();for(P.types=[],this.expect(0);this.state.possuper.parseFunctionBody(P,!0,we));return}super.parseFunctionBody(P,!1,we)}parseFunctionBodyAndFinish(P,K,we=!1){if(this.match(14)){let At=this.startNode();[At.typeAnnotation,P.predicate]=this.flowParseTypeAndPredicateInitialiser(),P.returnType=At.typeAnnotation?this.finishNode(At,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(P,K,we)}parseStatementLike(P){if(this.state.strict&&this.isContextual(129)){let we=this.lookahead();if(ke(we.type)){let At=this.startNode();return this.next(),this.flowParseInterface(At)}}else if(this.isContextual(126)){let we=this.startNode();return this.next(),this.flowParseEnumDeclaration(we)}let K=super.parseStatementLike(P);return this.flowPragma===void 0&&!this.isValidDirective(K)&&(this.flowPragma=null),K}parseExpressionStatement(P,K,we){if(K.type==="Identifier"){if(K.name==="declare"){if(this.match(80)||qr(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(P)}else if(qr(this.state.type)){if(K.name==="interface")return this.flowParseInterface(P);if(K.name==="type")return this.flowParseTypeAlias(P);if(K.name==="opaque")return this.flowParseOpaqueType(P,!1)}}return super.parseExpressionStatement(P,K,we)}shouldParseExportDeclaration(){let{type:P}=this.state;return P===126||Ao(P)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:P}=this.state;return P===126||Ao(P)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let P=this.startNode();return this.next(),this.flowParseEnumDeclaration(P)}return super.parseExportDefaultExpression()}parseConditional(P,K,we){if(!this.match(17))return P;if(this.state.maybeInArrowParameters){let kc=this.lookaheadCharCode();if(kc===44||kc===61||kc===58||kc===41)return this.setOptionalParametersError(we),P}this.expect(17);let At=this.state.clone(),sr=this.state.noArrowAt,Yr=this.startNodeAt(K),{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent(),[$n,ra]=this.getArrowLikeExpressions(Lr);if(fi||ra.length>0){let kc=[...sr];if(ra.length>0){this.state=At,this.state.noArrowAt=kc;for(let Dl=0;Dl1&&this.raise(Fs.AmbiguousConditionalArrow,At.startLoc),fi&&$n.length===1&&(this.state=At,kc.push($n[0].start),this.state.noArrowAt=kc,{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(Lr,!0),this.state.noArrowAt=sr,this.expect(14),Yr.test=P,Yr.consequent=Lr,Yr.alternate=this.forwardNoArrowParamsConversionAt(Yr,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(Yr,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let P=this.parseMaybeAssignAllowIn(),K=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:P,failed:K}}getArrowLikeExpressions(P,K){let we=[P],At=[];for(;we.length!==0;){let sr=we.pop();sr.type==="ArrowFunctionExpression"&&sr.body.type!=="BlockStatement"?(sr.typeParameters||!sr.returnType?this.finishArrowValidation(sr):At.push(sr),we.push(sr.body)):sr.type==="ConditionalExpression"&&(we.push(sr.consequent),we.push(sr.alternate))}return K?(At.forEach(sr=>this.finishArrowValidation(sr)),[At,[]]):Dp(At,sr=>sr.params.every(Yr=>this.isAssignable(Yr,!0)))}finishArrowValidation(P){var K;this.toAssignableList(P.params,(K=P.extra)==null?void 0:K.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(P,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(P,K){let we;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(P.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),we=K(),this.state.noArrowParamsConversionAt.pop()):we=K(),we}parseParenItem(P,K){let we=super.parseParenItem(P,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(P)),this.match(14)){let At=this.startNodeAt(K);return At.expression=we,At.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(At,"TypeCastExpression")}return we}assertModuleNodeAllowed(P){P.type==="ImportDeclaration"&&(P.importKind==="type"||P.importKind==="typeof")||P.type==="ExportNamedDeclaration"&&P.exportKind==="type"||P.type==="ExportAllDeclaration"&&P.exportKind==="type"||super.assertModuleNodeAllowed(P)}parseExportDeclaration(P){if(this.isContextual(130)){P.exportKind="type";let K=this.startNode();return this.next(),this.match(5)?(P.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(P),null):this.flowParseTypeAlias(K)}else if(this.isContextual(131)){P.exportKind="type";let K=this.startNode();return this.next(),this.flowParseOpaqueType(K,!1)}else if(this.isContextual(129)){P.exportKind="type";let K=this.startNode();return this.next(),this.flowParseInterface(K)}else if(this.isContextual(126)){P.exportKind="value";let K=this.startNode();return this.next(),this.flowParseEnumDeclaration(K)}else return super.parseExportDeclaration(P)}eatExportStar(P){return super.eatExportStar(P)?!0:this.isContextual(130)&&this.lookahead().type===55?(P.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(P){let{startLoc:K}=this.state,we=super.maybeParseExportNamespaceSpecifier(P);return we&&P.exportKind==="type"&&this.unexpected(K),we}parseClassId(P,K,we){super.parseClassId(P,K,we),this.match(47)&&(P.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(P,K,we){let{startLoc:At}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(P,K))return;K.declare=!0}super.parseClassMember(P,K,we),K.declare&&(K.type!=="ClassProperty"&&K.type!=="ClassPrivateProperty"&&K.type!=="PropertyDefinition"?this.raise(Fs.DeclareClassElement,At):K.value&&this.raise(Fs.DeclareClassFieldInitializer,K.value))}isIterator(P){return P==="iterator"||P==="asyncIterator"}readIterator(){let P=super.readWord1(),K="@@"+P;(!this.isIterator(P)||!this.state.inType)&&this.raise(J.InvalidIdentifier,this.state.curPosition(),{identifierName:K}),this.finishToken(132,K)}getTokenFromCode(P){let K=this.input.charCodeAt(this.state.pos+1);P===123&&K===124?this.finishOp(6,2):this.state.inType&&(P===62||P===60)?this.finishOp(P===62?48:47,1):this.state.inType&&P===63?K===46?this.finishOp(18,2):this.finishOp(17,1):Ql(P,K,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(P)}isAssignable(P,K){return P.type==="TypeCastExpression"?this.isAssignable(P.expression,K):super.isAssignable(P,K)}toAssignable(P,K=!1){!K&&P.type==="AssignmentExpression"&&P.left.type==="TypeCastExpression"&&(P.left=this.typeCastToParameter(P.left)),super.toAssignable(P,K)}toAssignableList(P,K,we){for(let At=0;At1||!K)&&this.raise(Fs.TypeCastInPattern,sr.typeAnnotation)}return P}parseArrayLike(P,K,we,At){let sr=super.parseArrayLike(P,K,we,At);return K&&!this.state.maybeInArrowParameters&&this.toReferencedList(sr.elements),sr}isValidLVal(P,K,we){return P==="TypeCastExpression"||super.isValidLVal(P,K,we)}parseClassProperty(P){return this.match(14)&&(P.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(P)}parseClassPrivateProperty(P){return this.match(14)&&(P.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(P)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(P){return!this.match(14)&&super.isNonstaticConstructor(P)}pushClassMethod(P,K,we,At,sr,Yr){if(K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(P,K,we,At,sr,Yr),K.params&&sr){let Lr=K.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}else if(K.type==="MethodDefinition"&&sr&&K.value.params){let Lr=K.value.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}}pushClassPrivateMethod(P,K,we,At){K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(P,K,we,At)}parseClassSuper(P){if(super.parseClassSuper(P),P.superClass&&(this.match(47)||this.match(51))&&(P.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let K=P.implements=[];do{let we=this.startNode();we.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?we.typeParameters=this.flowParseTypeParameterInstantiation():we.typeParameters=null,K.push(this.finishNode(we,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(P){super.checkGetterSetterParams(P);let K=this.getObjectOrClassMethodParams(P);if(K.length>0){let we=K[0];this.isThisParam(we)&&P.kind==="get"?this.raise(Fs.GetterMayNotHaveThisParam,we):this.isThisParam(we)&&this.raise(Fs.SetterMayNotHaveThisParam,we)}}parsePropertyNamePrefixOperator(P){P.variance=this.flowParseVariance()}parseObjPropValue(P,K,we,At,sr,Yr,Lr){P.variance&&this.unexpected(P.variance.loc.start),delete P.variance;let fi;this.match(47)&&!Yr&&(fi=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let $n=super.parseObjPropValue(P,K,we,At,sr,Yr,Lr);return fi&&(($n.value||$n).typeParameters=fi),$n}parseFunctionParamType(P){return this.eat(17)&&(P.type!=="Identifier"&&this.raise(Fs.PatternIsOptional,P),this.isThisParam(P)&&this.raise(Fs.ThisParamMayNotBeOptional,P),P.optional=!0),this.match(14)?P.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(P)&&this.raise(Fs.ThisParamAnnotationRequired,P),this.match(29)&&this.isThisParam(P)&&this.raise(Fs.ThisParamNoDefault,P),this.resetEndLocation(P),P}parseMaybeDefault(P,K){let we=super.parseMaybeDefault(P,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startsuper.parseMaybeAssign(P,K),At),!sr.error)return sr.node;let{context:fi}=this.state,$n=fi[fi.length-1];($n===Se.j_oTag||$n===Se.j_expr)&&fi.pop()}if((we=sr)!=null&&we.error||this.match(47)){var Yr,Lr;At=At||this.state.clone();let fi,$n=this.tryParse(kc=>{var Dl;fi=this.flowParseTypeParameterDeclaration();let ca=this.forwardNoArrowParamsConversionAt(fi,()=>{let eA=super.parseMaybeAssign(P,K);return this.resetStartLocationFromNode(eA,fi),eA});(Dl=ca.extra)!=null&&Dl.parenthesized&&kc();let Bl=this.maybeUnwrapTypeCastExpression(ca);return Bl.type!=="ArrowFunctionExpression"&&kc(),Bl.typeParameters=fi,this.resetStartLocationFromNode(Bl,fi),ca},At),ra=null;if($n.node&&this.maybeUnwrapTypeCastExpression($n.node).type==="ArrowFunctionExpression"){if(!$n.error&&!$n.aborted)return $n.node.async&&this.raise(Fs.UnexpectedTypeParameterBeforeAsyncArrowFunction,fi),$n.node;ra=$n.node}if((Yr=sr)!=null&&Yr.node)return this.state=sr.failState,sr.node;if(ra)return this.state=$n.failState,ra;throw(Lr=sr)!=null&&Lr.thrown?sr.error:$n.thrown?$n.error:this.raise(Fs.UnexpectedTokenAfterTypeParameter,fi)}return super.parseMaybeAssign(P,K)}parseArrow(P){if(this.match(14)){let K=this.tryParse(()=>{let we=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let At=this.startNode();return[At.typeAnnotation,P.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=we,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),At});if(K.thrown)return null;K.error&&(this.state=K.failState),P.returnType=K.node.typeAnnotation?this.finishNode(K.node,"TypeAnnotation"):null}return super.parseArrow(P)}shouldParseArrow(P){return this.match(14)||super.shouldParseArrow(P)}setArrowFunctionParameters(P,K){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(P.start))?P.params=K:super.setArrowFunctionParameters(P,K)}checkParams(P,K,we,At=!0){if(!(we&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(P.start)))){for(let sr=0;sr0&&this.raise(Fs.ThisParamMustBeFirst,P.params[sr]);super.checkParams(P,K,we,At)}}parseParenAndDistinguishExpression(P){return super.parseParenAndDistinguishExpression(P&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(P,K,we){if(P.type==="Identifier"&&P.name==="async"&&this.state.noArrowAt.includes(K.index)){this.next();let At=this.startNodeAt(K);At.callee=P,At.arguments=super.parseCallExpressionArguments(11),P=this.finishNode(At,"CallExpression")}else if(P.type==="Identifier"&&P.name==="async"&&this.match(47)){let At=this.state.clone(),sr=this.tryParse(Lr=>this.parseAsyncArrowWithTypeParameters(K)||Lr(),At);if(!sr.error&&!sr.aborted)return sr.node;let Yr=this.tryParse(()=>super.parseSubscripts(P,K,we),At);if(Yr.node&&!Yr.error)return Yr.node;if(sr.node)return this.state=sr.failState,sr.node;if(Yr.node)return this.state=Yr.failState,Yr.node;throw sr.error||Yr.error}return super.parseSubscripts(P,K,we)}parseSubscript(P,K,we,At){if(this.match(18)&&this.isLookaheadToken_lt()){if(At.optionalChainMember=!0,we)return At.stop=!0,P;this.next();let sr=this.startNodeAt(K);return sr.callee=P,sr.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),sr.arguments=this.parseCallExpressionArguments(11),sr.optional=!0,this.finishCallExpression(sr,!0)}else if(!we&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let sr=this.startNodeAt(K);sr.callee=P;let Yr=this.tryParse(()=>(sr.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),sr.arguments=super.parseCallExpressionArguments(11),At.optionalChainMember&&(sr.optional=!1),this.finishCallExpression(sr,At.optionalChainMember)));if(Yr.node)return Yr.error&&(this.state=Yr.failState),Yr.node}return super.parseSubscript(P,K,we,At)}parseNewCallee(P){super.parseNewCallee(P);let K=null;this.shouldParseTypes()&&this.match(47)&&(K=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),P.typeArguments=K}parseAsyncArrowWithTypeParameters(P){let K=this.startNodeAt(P);if(this.parseFunctionParams(K,!1),!!this.parseArrow(K))return super.parseArrowExpression(K,void 0,!0)}readToken_mult_modulo(P){let K=this.input.charCodeAt(this.state.pos+1);if(P===42&&K===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(P)}readToken_pipe_amp(P){let K=this.input.charCodeAt(this.state.pos+1);if(P===124&&K===125){this.finishOp(9,2);return}super.readToken_pipe_amp(P)}parseTopLevel(P,K){let we=super.parseTopLevel(P,K);return this.state.hasFlowComment&&this.raise(Fs.UnterminatedFlowComment,this.state.curPosition()),we}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Fs.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let P=this.skipFlowComment();P&&(this.state.pos+=P,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:P}=this.state,K=2;for(;[32,9].includes(this.input.charCodeAt(P+K));)K++;let we=this.input.charCodeAt(K+P),At=this.input.charCodeAt(K+P+1);return we===58&&At===58?K+2:this.input.slice(K+P,K+P+12)==="flow-include"?K+12:we===58&&At!==58?K:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(J.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(P,{enumName:K,memberName:we}){this.raise(Fs.EnumBooleanMemberNotInitialized,P,{memberName:we,enumName:K})}flowEnumErrorInvalidMemberInitializer(P,K){return this.raise(K.explicitType?K.explicitType==="symbol"?Fs.EnumInvalidMemberInitializerSymbolType:Fs.EnumInvalidMemberInitializerPrimaryType:Fs.EnumInvalidMemberInitializerUnknownType,P,K)}flowEnumErrorNumberMemberNotInitialized(P,K){this.raise(Fs.EnumNumberMemberNotInitialized,P,K)}flowEnumErrorStringMemberInconsistentlyInitialized(P,K){this.raise(Fs.EnumStringMemberInconsistentlyInitialized,P,K)}flowEnumMemberInit(){let P=this.state.startLoc,K=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let we=this.parseNumericLiteral(this.state.value);return K()?{type:"number",loc:we.loc.start,value:we}:{type:"invalid",loc:P}}case 134:{let we=this.parseStringLiteral(this.state.value);return K()?{type:"string",loc:we.loc.start,value:we}:{type:"invalid",loc:P}}case 85:case 86:{let we=this.parseBooleanLiteral(this.match(85));return K()?{type:"boolean",loc:we.loc.start,value:we}:{type:"invalid",loc:P}}default:return{type:"invalid",loc:P}}}flowEnumMemberRaw(){let P=this.state.startLoc,K=this.parseIdentifier(!0),we=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:P};return{id:K,init:we}}flowEnumCheckExplicitTypeMismatch(P,K,we){let{explicitType:At}=K;At!==null&&At!==we&&this.flowEnumErrorInvalidMemberInitializer(P,K)}flowEnumMembers({enumName:P,explicitType:K}){let we=new Set,At={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},sr=!1;for(;!this.match(8);){if(this.eat(21)){sr=!0;break}let Yr=this.startNode(),{id:Lr,init:fi}=this.flowEnumMemberRaw(),$n=Lr.name;if($n==="")continue;/^[a-z]/.test($n)&&this.raise(Fs.EnumInvalidMemberName,Lr,{memberName:$n,suggestion:$n[0].toUpperCase()+$n.slice(1),enumName:P}),we.has($n)&&this.raise(Fs.EnumDuplicateMemberName,Lr,{memberName:$n,enumName:P}),we.add($n);let ra={enumName:P,explicitType:K,memberName:$n};switch(Yr.id=Lr,fi.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"boolean"),Yr.init=fi.value,At.booleanMembers.push(this.finishNode(Yr,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"number"),Yr.init=fi.value,At.numberMembers.push(this.finishNode(Yr,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"string"),Yr.init=fi.value,At.stringMembers.push(this.finishNode(Yr,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(fi.loc,ra);case"none":switch(K){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(fi.loc,ra);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(fi.loc,ra);break;default:At.defaultedMembers.push(this.finishNode(Yr,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:At,hasUnknownMembers:sr}}flowEnumStringMembers(P,K,{enumName:we}){if(P.length===0)return K;if(K.length===0)return P;if(K.length>P.length){for(let At of P)this.flowEnumErrorStringMemberInconsistentlyInitialized(At,{enumName:we});return K}else{for(let At of K)this.flowEnumErrorStringMemberInconsistentlyInitialized(At,{enumName:we});return P}}flowEnumParseExplicitType({enumName:P}){if(!this.eatContextual(102))return null;if(!qr(this.state.type))throw this.raise(Fs.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:P});let{value:K}=this.state;return this.next(),K!=="boolean"&&K!=="number"&&K!=="string"&&K!=="symbol"&&this.raise(Fs.EnumInvalidExplicitType,this.state.startLoc,{enumName:P,invalidEnumType:K}),K}flowEnumBody(P,K){let we=K.name,At=K.loc.start,sr=this.flowEnumParseExplicitType({enumName:we});this.expect(5);let{members:Yr,hasUnknownMembers:Lr}=this.flowEnumMembers({enumName:we,explicitType:sr});switch(P.hasUnknownMembers=Lr,sr){case"boolean":return P.explicitType=!0,P.members=Yr.booleanMembers,this.expect(8),this.finishNode(P,"EnumBooleanBody");case"number":return P.explicitType=!0,P.members=Yr.numberMembers,this.expect(8),this.finishNode(P,"EnumNumberBody");case"string":return P.explicitType=!0,P.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(P,"EnumStringBody");case"symbol":return P.members=Yr.defaultedMembers,this.expect(8),this.finishNode(P,"EnumSymbolBody");default:{let fi=()=>(P.members=[],this.expect(8),this.finishNode(P,"EnumStringBody"));P.explicitType=!1;let $n=Yr.booleanMembers.length,ra=Yr.numberMembers.length,kc=Yr.stringMembers.length,Dl=Yr.defaultedMembers.length;if(!$n&&!ra&&!kc&&!Dl)return fi();if(!$n&&!ra)return P.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(P,"EnumStringBody");if(!ra&&!kc&&$n>=Dl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return P.members=Yr.booleanMembers,this.expect(8),this.finishNode(P,"EnumBooleanBody")}else if(!$n&&!kc&&ra>=Dl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return P.members=Yr.numberMembers,this.expect(8),this.finishNode(P,"EnumNumberBody")}else return this.raise(Fs.EnumInconsistentMemberValues,At,{enumName:we}),fi()}}}flowParseEnumDeclaration(P){let K=this.parseIdentifier();return P.id=K,P.body=this.flowEnumBody(this.startNode(),K),this.finishNode(P,"EnumDeclaration")}jsxParseOpeningElementAfterName(P){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(P.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(P)}isLookaheadToken_lt(){let P=this.nextTokenStart();if(this.input.charCodeAt(P)===60){let K=this.input.charCodeAt(P+1);return K!==60&&K!==61}return!1}reScan_lt_gt(){let{type:P}=this.state;P===47?(this.state.pos-=1,this.readToken_lt()):P===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:P}=this.state;return P===51?(this.state.pos-=2,this.finishOp(47,1),47):P}maybeUnwrapTypeCastExpression(P){return P.type==="TypeCastExpression"?P.expression:P}},ff=Q`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:se})=>`Expected corresponding JSX closing tag for <${se}>.`,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:({unexpected:se,HTMLEntity:P})=>`Unexpected token \`${se}\`. Did you mean \`${P}\` or \`{'${se}'}\`?`,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 Zs(se){return se?se.type==="JSXOpeningFragment"||se.type==="JSXClosingFragment":!1}function io(se){if(se.type==="JSXIdentifier")return se.name;if(se.type==="JSXNamespacedName")return se.namespace.name+":"+se.name.name;if(se.type==="JSXMemberExpression")return io(se.object)+"."+io(se.property);throw new Error("Node had unexpected type: "+se.type)}var Ea=se=>class extends se{jsxReadToken(){let P="",K=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(ff.UnterminatedJsxContent,this.state.startLoc);let we=this.input.charCodeAt(this.state.pos);switch(we){case 60:case 123:if(this.state.pos===this.state.start){we===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(we);return}P+=this.input.slice(K,this.state.pos),this.finishToken(142,P);return;case 38:P+=this.input.slice(K,this.state.pos),P+=this.jsxReadEntity(),K=this.state.pos;break;case 62:case 125:default:Vs(we)?(P+=this.input.slice(K,this.state.pos),P+=this.jsxReadNewLine(!0),K=this.state.pos):++this.state.pos}}}jsxReadNewLine(P){let K=this.input.charCodeAt(this.state.pos),we;return++this.state.pos,K===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,we=P?` +- Did you mean \`import { "${se}" as foo }\`?`,ImportCallArity:"`import()` requires exactly 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:({radix:se})=>`Expected number in radix ${se}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:se})=>`Escape sequence in keyword ${se}.`,InvalidIdentifier:({identifierName:se})=>`Invalid identifier ${se}.`,InvalidLhs:({ancestor:se})=>`Invalid left-hand side in ${f(se)}.`,InvalidLhsBinding:({ancestor:se})=>`Binding invalid left-hand side in ${f(se)}.`,InvalidLhsOptionalChaining:({ancestor:se})=>`Invalid optional chaining in the left-hand side of ${f(se)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:se})=>`Unexpected character '${se}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:se})=>`Private name #${se} 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:({labelName:se})=>`Label '${se}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",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:({missingPlugin:se})=>`This experimental syntax requires enabling the parser plugin: ${se.map(P=>JSON.stringify(P)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:se})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${se.map(P=>JSON.stringify(P)).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:({key:se})=>`Duplicate key "${se}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:se})=>`An export name cannot include a lone surrogate, found '\\u${se.toString(16)}'.`,ModuleExportUndefined:({localName:se})=>`Export '${se}' 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:({identifierName:se})=>`Private names are only allowed in property accesses (\`obj.#${se}\`) or in \`in\` expressions (\`#${se} in obj\`).`,PrivateNameRedeclaration:({identifierName:se})=>`Duplicate private name #${se}.`,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.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',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:({keyword:se})=>`Unexpected keyword '${se}'.`,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:({reservedWord:se})=>`Unexpected reserved word '${se}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:se,unexpected:P})=>`Unexpected token${P?` '${P}'.`:""}${se?`, expected "${se}"`:""}`,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:({target:se,onlyValidPropertyName:P})=>`The only valid meta property for ${se} is ${se}.${P}.`,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.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:se})=>`Identifier '${se}' 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."},C={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:se})=>`Assigning to '${se}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:se})=>`Binding '${se}' 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."},b=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),E=Object.assign({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:({token:se})=>`Invalid topic token ${se}. In order to use ${se} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${se}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:se})=>`Hack-style pipe body cannot be an unparenthesized ${f({type:se})}; 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.'}),N=["message"];function B(se,P,K){Object.defineProperty(se,P,{enumerable:!1,configurable:!0,value:K})}function F({toMessage:se,code:P,reasonCode:K,syntaxPlugin:we}){let At=K==="MissingPlugin"||K==="MissingOneOfPlugins";{let sr={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};sr[K]&&(K=sr[K])}return function sr(Yr,Lr){let fi=new SyntaxError;return fi.code=P,fi.reasonCode=K,fi.loc=Yr,fi.pos=Yr.index,fi.syntaxPlugin=we,At&&(fi.missingPlugin=Lr.missingPlugin),B(fi,"clone",function($n={}){var ra;let{line:kc,column:Dl,index:ca}=(ra=$n.loc)!=null?ra:Yr;return sr(new r(kc,Dl,ca),Object.assign({},Lr,$n.details))}),B(fi,"details",Lr),Object.defineProperty(fi,"message",{configurable:!0,get(){let $n=`${se(Lr)} (${Yr.line}:${Yr.column})`;return this.message=$n,$n},set($n){Object.defineProperty(this,"message",{value:$n,writable:!0})}}),fi}}function Q(se,P){if(Array.isArray(se))return we=>Q(we,se[0]);let K={};for(let we of Object.keys(se)){let At=se[we],sr=typeof At=="string"?{message:()=>At}:typeof At=="function"?{message:At}:At,{message:Yr}=sr,Lr=t(sr,N),fi=typeof Yr=="string"?()=>Yr:Yr;K[we]=F(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:we,toMessage:fi},P?{syntaxPlugin:P}:{},Lr))}return K}var J=Object.assign({},Q(l),Q(I),Q(C),Q`pipelineOperator`(E));function ae(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function ne(se){let P=ae();if(se==null)return P;if(se.annexB!=null&&se.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let K of Object.keys(P))se[K]!=null&&(P[K]=se[K]);if(P.startLine===1)se.startIndex==null&&P.startColumn>0?P.startIndex=P.startColumn:se.startColumn==null&&P.startIndex>0&&(P.startColumn=P.startIndex);else if((se.startColumn==null||se.startIndex==null)&&se.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return P}var{defineProperty:ce}=Object,fe=(se,P)=>{se&&ce(se,P,{enumerable:!1,value:se[P]})};function ue(se){return fe(se.loc.start,"index"),fe(se.loc.end,"index"),se}var de=se=>class extends se{parse(){let P=ue(super.parse());return this.optionFlags&128&&(P.tokens=P.tokens.map(ue)),P}parseRegExpLiteral({pattern:P,flags:K}){let we=null;try{we=new RegExp(P,K)}catch{}let At=this.estreeParseLiteral(we);return At.regex={pattern:P,flags:K},At}parseBigIntLiteral(P){let K;try{K=BigInt(P)}catch{K=null}let we=this.estreeParseLiteral(K);return we.bigint=String(we.value||P),we}parseDecimalLiteral(P){let K=this.estreeParseLiteral(null);return K.decimal=String(K.value||P),K}estreeParseLiteral(P){return this.parseLiteral(P,"Literal")}parseStringLiteral(P){return this.estreeParseLiteral(P)}parseNumericLiteral(P){return this.estreeParseLiteral(P)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(P){return this.estreeParseLiteral(P)}directiveToStmt(P){let K=P.value;delete P.value,K.type="Literal",K.raw=K.extra.raw,K.value=K.extra.expressionValue;let we=P;return we.type="ExpressionStatement",we.expression=K,we.directive=K.extra.rawValue,delete K.extra,we}initFunction(P,K){super.initFunction(P,K),P.expression=!1}checkDeclaration(P){P!=null&&this.isObjectProperty(P)?this.checkDeclaration(P.value):super.checkDeclaration(P)}getObjectOrClassMethodParams(P){return P.value.params}isValidDirective(P){var K;return P.type==="ExpressionStatement"&&P.expression.type==="Literal"&&typeof P.expression.value=="string"&&!((K=P.expression.extra)!=null&&K.parenthesized)}parseBlockBody(P,K,we,At,sr){super.parseBlockBody(P,K,we,At,sr);let Yr=P.directives.map(Lr=>this.directiveToStmt(Lr));P.body=Yr.concat(P.body),delete P.directives}parsePrivateName(){let P=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(P):P}convertPrivateNameToPrivateIdentifier(P){let K=super.getPrivateNameSV(P);return P=P,delete P.id,P.name=K,P.type="PrivateIdentifier",P}isPrivateName(P){return this.getPluginOption("estree","classFeatures")?P.type==="PrivateIdentifier":super.isPrivateName(P)}getPrivateNameSV(P){return this.getPluginOption("estree","classFeatures")?P.name:super.getPrivateNameSV(P)}parseLiteral(P,K){let we=super.parseLiteral(P,K);return we.raw=we.extra.raw,delete we.extra,we}parseFunctionBody(P,K,we=!1){super.parseFunctionBody(P,K,we),P.expression=P.body.type!=="BlockStatement"}parseMethod(P,K,we,At,sr,Yr,Lr=!1){let fi=this.startNode();fi.kind=P.kind,fi=super.parseMethod(fi,K,we,At,sr,Yr,Lr),fi.type="FunctionExpression",delete fi.kind,P.value=fi;let{typeParameters:$n}=P;return $n&&(delete P.typeParameters,fi.typeParameters=$n,this.resetStartLocationFromNode(fi,$n)),Yr==="ClassPrivateMethod"&&(P.computed=!1),this.finishNode(P,"MethodDefinition")}nameIsConstructor(P){return P.type==="Literal"?P.value==="constructor":super.nameIsConstructor(P)}parseClassProperty(...P){let K=super.parseClassProperty(...P);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition"),K}parseClassPrivateProperty(...P){let K=super.parseClassPrivateProperty(...P);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition",K.computed=!1),K}parseObjectMethod(P,K,we,At,sr){let Yr=super.parseObjectMethod(P,K,we,At,sr);return Yr&&(Yr.type="Property",Yr.kind==="method"&&(Yr.kind="init"),Yr.shorthand=!1),Yr}parseObjectProperty(P,K,we,At){let sr=super.parseObjectProperty(P,K,we,At);return sr&&(sr.kind="init",sr.type="Property"),sr}isValidLVal(P,K,we){return P==="Property"?"value":super.isValidLVal(P,K,we)}isAssignable(P,K){return P!=null&&this.isObjectProperty(P)?this.isAssignable(P.value,K):super.isAssignable(P,K)}toAssignable(P,K=!1){if(P!=null&&this.isObjectProperty(P)){let{key:we,value:At}=P;this.isPrivateName(we)&&this.classScope.usePrivateName(this.getPrivateNameSV(we),we.loc.start),this.toAssignable(At,K)}else super.toAssignable(P,K)}toAssignableObjectExpressionProp(P,K,we){P.type==="Property"&&(P.kind==="get"||P.kind==="set")?this.raise(J.PatternHasAccessor,P.key):P.type==="Property"&&P.method?this.raise(J.PatternHasMethod,P.key):super.toAssignableObjectExpressionProp(P,K,we)}finishCallExpression(P,K){let we=super.finishCallExpression(P,K);if(we.callee.type==="Import"){var At,sr;we.type="ImportExpression",we.source=we.arguments[0],we.options=(At=we.arguments[1])!=null?At:null,we.attributes=(sr=we.arguments[1])!=null?sr:null,delete we.arguments,delete we.callee}return we}toReferencedArguments(P){P.type!=="ImportExpression"&&super.toReferencedArguments(P)}parseExport(P,K){let we=this.state.lastTokStartLoc,At=super.parseExport(P,K);switch(At.type){case"ExportAllDeclaration":At.exported=null;break;case"ExportNamedDeclaration":At.specifiers.length===1&&At.specifiers[0].type==="ExportNamespaceSpecifier"&&(At.type="ExportAllDeclaration",At.exported=At.specifiers[0].exported,delete At.specifiers);case"ExportDefaultDeclaration":{var sr;let{declaration:Yr}=At;Yr?.type==="ClassDeclaration"&&((sr=Yr.decorators)==null?void 0:sr.length)>0&&Yr.start===At.start&&this.resetStartLocation(At,we)}break}return At}parseSubscript(P,K,we,At){let sr=super.parseSubscript(P,K,we,At);if(At.optionalChainMember){if((sr.type==="OptionalMemberExpression"||sr.type==="OptionalCallExpression")&&(sr.type=sr.type.substring(8)),At.stop){let Yr=this.startNodeAtNode(sr);return Yr.expression=sr,this.finishNode(Yr,"ChainExpression")}}else(sr.type==="MemberExpression"||sr.type==="CallExpression")&&(sr.optional=!1);return sr}isOptionalMemberExpression(P){return P.type==="ChainExpression"?P.expression.type==="MemberExpression":super.isOptionalMemberExpression(P)}hasPropertyAsPrivateName(P){return P.type==="ChainExpression"&&(P=P.expression),super.hasPropertyAsPrivateName(P)}isObjectProperty(P){return P.type==="Property"&&P.kind==="init"&&!P.method}isObjectMethod(P){return P.type==="Property"&&(P.method||P.kind==="get"||P.kind==="set")}finishNodeAt(P,K,we){return ue(super.finishNodeAt(P,K,we))}resetStartLocation(P,K){super.resetStartLocation(P,K),ue(P)}resetEndLocation(P,K=this.state.lastTokEndLoc){super.resetEndLocation(P,K),ue(P)}},be=class{constructor(se,P){this.token=void 0,this.preserveSpace=void 0,this.token=se,this.preserveSpace=!!P}},Se={brace:new be("{"),j_oTag:new be("...",!0)};Se.template=new be("`",!0);var De=!0,k=!0,tt=!0,ze=!0,Le=!0,Je=!0,ft=class{constructor(se,P={}){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=se,this.keyword=P.keyword,this.beforeExpr=!!P.beforeExpr,this.startsExpr=!!P.startsExpr,this.rightAssociative=!!P.rightAssociative,this.isLoop=!!P.isLoop,this.isAssign=!!P.isAssign,this.prefix=!!P.prefix,this.postfix=!!P.postfix,this.binop=P.binop!=null?P.binop:null,this.updateContext=null}},lt=new Map;function Ot(se,P={}){P.keyword=se;let K=lr(se,P);return lt.set(se,K),K}function Er(se,P){return lr(se,{beforeExpr:De,binop:P})}var Sr=-1,jt=[],Bt=[],Nt=[],Fr=[],$t=[],Xt=[];function lr(se,P={}){var K,we,At,sr;return++Sr,Bt.push(se),Nt.push((K=P.binop)!=null?K:-1),Fr.push((we=P.beforeExpr)!=null?we:!1),$t.push((At=P.startsExpr)!=null?At:!1),Xt.push((sr=P.prefix)!=null?sr:!1),jt.push(new ft(se,P)),Sr}function cr(se,P={}){var K,we,At,sr;return++Sr,lt.set(se,Sr),Bt.push(se),Nt.push((K=P.binop)!=null?K:-1),Fr.push((we=P.beforeExpr)!=null?we:!1),$t.push((At=P.startsExpr)!=null?At:!1),Xt.push((sr=P.prefix)!=null?sr:!1),jt.push(new ft("name",P)),Sr}var Ar={bracketL:lr("[",{beforeExpr:De,startsExpr:k}),bracketHashL:lr("#[",{beforeExpr:De,startsExpr:k}),bracketBarL:lr("[|",{beforeExpr:De,startsExpr:k}),bracketR:lr("]"),bracketBarR:lr("|]"),braceL:lr("{",{beforeExpr:De,startsExpr:k}),braceBarL:lr("{|",{beforeExpr:De,startsExpr:k}),braceHashL:lr("#{",{beforeExpr:De,startsExpr:k}),braceR:lr("}"),braceBarR:lr("|}"),parenL:lr("(",{beforeExpr:De,startsExpr:k}),parenR:lr(")"),comma:lr(",",{beforeExpr:De}),semi:lr(";",{beforeExpr:De}),colon:lr(":",{beforeExpr:De}),doubleColon:lr("::",{beforeExpr:De}),dot:lr("."),question:lr("?",{beforeExpr:De}),questionDot:lr("?."),arrow:lr("=>",{beforeExpr:De}),template:lr("template"),ellipsis:lr("...",{beforeExpr:De}),backQuote:lr("`",{startsExpr:k}),dollarBraceL:lr("${",{beforeExpr:De,startsExpr:k}),templateTail:lr("...`",{startsExpr:k}),templateNonTail:lr("...${",{beforeExpr:De,startsExpr:k}),at:lr("@"),hash:lr("#",{startsExpr:k}),interpreterDirective:lr("#!..."),eq:lr("=",{beforeExpr:De,isAssign:ze}),assign:lr("_=",{beforeExpr:De,isAssign:ze}),slashAssign:lr("_=",{beforeExpr:De,isAssign:ze}),xorAssign:lr("_=",{beforeExpr:De,isAssign:ze}),moduloAssign:lr("_=",{beforeExpr:De,isAssign:ze}),incDec:lr("++/--",{prefix:Le,postfix:Je,startsExpr:k}),bang:lr("!",{beforeExpr:De,prefix:Le,startsExpr:k}),tilde:lr("~",{beforeExpr:De,prefix:Le,startsExpr:k}),doubleCaret:lr("^^",{startsExpr:k}),doubleAt:lr("@@",{startsExpr:k}),pipeline:Er("|>",0),nullishCoalescing:Er("??",1),logicalOR:Er("||",1),logicalAND:Er("&&",2),bitwiseOR:Er("|",3),bitwiseXOR:Er("^",4),bitwiseAND:Er("&",5),equality:Er("==/!=/===/!==",6),lt:Er("/<=/>=",7),gt:Er("/<=/>=",7),relational:Er("/<=/>=",7),bitShift:Er("<>/>>>",8),bitShiftL:Er("<>/>>>",8),bitShiftR:Er("<>/>>>",8),plusMin:lr("+/-",{beforeExpr:De,binop:9,prefix:Le,startsExpr:k}),modulo:lr("%",{binop:10,startsExpr:k}),star:lr("*",{binop:10}),slash:Er("/",10),exponent:lr("**",{beforeExpr:De,binop:11,rightAssociative:!0}),_in:Ot("in",{beforeExpr:De,binop:7}),_instanceof:Ot("instanceof",{beforeExpr:De,binop:7}),_break:Ot("break"),_case:Ot("case",{beforeExpr:De}),_catch:Ot("catch"),_continue:Ot("continue"),_debugger:Ot("debugger"),_default:Ot("default",{beforeExpr:De}),_else:Ot("else",{beforeExpr:De}),_finally:Ot("finally"),_function:Ot("function",{startsExpr:k}),_if:Ot("if"),_return:Ot("return",{beforeExpr:De}),_switch:Ot("switch"),_throw:Ot("throw",{beforeExpr:De,prefix:Le,startsExpr:k}),_try:Ot("try"),_var:Ot("var"),_const:Ot("const"),_with:Ot("with"),_new:Ot("new",{beforeExpr:De,startsExpr:k}),_this:Ot("this",{startsExpr:k}),_super:Ot("super",{startsExpr:k}),_class:Ot("class",{startsExpr:k}),_extends:Ot("extends",{beforeExpr:De}),_export:Ot("export"),_import:Ot("import",{startsExpr:k}),_null:Ot("null",{startsExpr:k}),_true:Ot("true",{startsExpr:k}),_false:Ot("false",{startsExpr:k}),_typeof:Ot("typeof",{beforeExpr:De,prefix:Le,startsExpr:k}),_void:Ot("void",{beforeExpr:De,prefix:Le,startsExpr:k}),_delete:Ot("delete",{beforeExpr:De,prefix:Le,startsExpr:k}),_do:Ot("do",{isLoop:tt,beforeExpr:De}),_for:Ot("for",{isLoop:tt}),_while:Ot("while",{isLoop:tt}),_as:cr("as",{startsExpr:k}),_assert:cr("assert",{startsExpr:k}),_async:cr("async",{startsExpr:k}),_await:cr("await",{startsExpr:k}),_defer:cr("defer",{startsExpr:k}),_from:cr("from",{startsExpr:k}),_get:cr("get",{startsExpr:k}),_let:cr("let",{startsExpr:k}),_meta:cr("meta",{startsExpr:k}),_of:cr("of",{startsExpr:k}),_sent:cr("sent",{startsExpr:k}),_set:cr("set",{startsExpr:k}),_source:cr("source",{startsExpr:k}),_static:cr("static",{startsExpr:k}),_using:cr("using",{startsExpr:k}),_yield:cr("yield",{startsExpr:k}),_asserts:cr("asserts",{startsExpr:k}),_checks:cr("checks",{startsExpr:k}),_exports:cr("exports",{startsExpr:k}),_global:cr("global",{startsExpr:k}),_implements:cr("implements",{startsExpr:k}),_intrinsic:cr("intrinsic",{startsExpr:k}),_infer:cr("infer",{startsExpr:k}),_is:cr("is",{startsExpr:k}),_mixins:cr("mixins",{startsExpr:k}),_proto:cr("proto",{startsExpr:k}),_require:cr("require",{startsExpr:k}),_satisfies:cr("satisfies",{startsExpr:k}),_keyof:cr("keyof",{startsExpr:k}),_readonly:cr("readonly",{startsExpr:k}),_unique:cr("unique",{startsExpr:k}),_abstract:cr("abstract",{startsExpr:k}),_declare:cr("declare",{startsExpr:k}),_enum:cr("enum",{startsExpr:k}),_module:cr("module",{startsExpr:k}),_namespace:cr("namespace",{startsExpr:k}),_interface:cr("interface",{startsExpr:k}),_type:cr("type",{startsExpr:k}),_opaque:cr("opaque",{startsExpr:k}),name:lr("name",{startsExpr:k}),placeholder:lr("%%",{startsExpr:!0}),string:lr("string",{startsExpr:k}),num:lr("num",{startsExpr:k}),bigint:lr("bigint",{startsExpr:k}),decimal:lr("decimal",{startsExpr:k}),regexp:lr("regexp",{startsExpr:k}),privateName:lr("#name",{startsExpr:k}),eof:lr("eof"),jsxName:lr("jsxName"),jsxText:lr("jsxText",{beforeExpr:!0}),jsxTagStart:lr("jsxTagStart",{startsExpr:!0}),jsxTagEnd:lr("jsxTagEnd")};function qr(se){return se>=93&&se<=133}function _n(se){return se<=92}function ke(se){return se>=58&&se<=133}function zt(se){return se>=58&&se<=137}function Fn(se){return Fr[se]}function Nn(se){return $t[se]}function Hi(se){return se>=29&&se<=33}function Ao(se){return se>=129&&se<=131}function Vr(se){return se>=90&&se<=92}function xi(se){return se>=58&&se<=92}function no(se){return se>=39&&se<=59}function ga(se){return se===34}function Ya(se){return Xt[se]}function Gc(se){return se>=121&&se<=123}function al(se){return se>=124&&se<=130}function Sc(se){return Bt[se]}function Hr(se){return Nt[se]}function Or(se){return se===57}function Ft(se){return se>=24&&se<=25}function zr(se){return jt[se]}jt[8].updateContext=se=>{se.pop()},jt[5].updateContext=jt[7].updateContext=jt[23].updateContext=se=>{se.push(Se.brace)},jt[22].updateContext=se=>{se[se.length-1]===Se.template?se.pop():se.push(Se.template)},jt[143].updateContext=se=>{se.push(Se.j_expr,Se.j_oTag)};var Rn="\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-\u1C8A\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-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\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="\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\u0897-\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\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\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\uFF65",Qi=new RegExp("["+Rn+"]"),ps=new RegExp("["+Rn+Pr+"]");Rn=Pr=null;var _o=[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,4,51,13,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,39,27,10,22,251,41,7,1,17,2,60,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,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,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,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,229,29,3,0,496,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,16,621,2467,541,1507,4938,6,4191],yo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,343,9,54,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,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Qa(se,P){let K=65536;for(let we=0,At=P.length;wese)return!1;if(K+=P[we+1],K>=se)return!0}return!1}function gc(se){return se<65?se===36:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&Qi.test(String.fromCharCode(se)):Qa(se,_o)}function _g(se){return se<48?se===36:se<58?!0:se<65?!1:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&ps.test(String.fromCharCode(se)):Qa(se,_o)||Qa(se,yo)}var Nc={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"]},oA=new Set(Nc.keyword),ma=new Set(Nc.strict),vu=new Set(Nc.strictBind);function li(se,P){return P&&se==="await"||se==="enum"}function Ei(se,P){return li(se,P)||ma.has(se)}function Ws(se){return vu.has(se)}function Xa(se,P){return Ei(se,P)||Ws(se)}function ac(se){return oA.has(se)}function Ql(se,P,K){return se===64&&P===64&&gc(K)}var Oc=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 vg(se){return Oc.has(se)}var Kl=class{constructor(se){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=se}},Ju=class{constructor(se,P){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=se,this.inModule=P}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let se=this.currentThisScopeFlags();return(se&64)>0&&(se&2)===0}get inStaticBlock(){for(let se=this.scopeStack.length-1;;se--){let{flags:P}=this.scopeStack[se];if(P&128)return!0;if(P&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(se){return new Kl(se)}enter(se){this.scopeStack.push(this.createScope(se))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(se){return!!(se.flags&130||!this.parser.inModule&&se.flags&1)}declareName(se,P,K){let we=this.currentScope();if(P&8||P&16){this.checkRedeclarationInScope(we,se,P,K);let At=we.names.get(se)||0;P&16?At=At|4:(we.firstLexicalName||(we.firstLexicalName=se),At=At|2),we.names.set(se,At),P&8&&this.maybeExportDefined(we,se)}else if(P&4)for(let At=this.scopeStack.length-1;At>=0&&(we=this.scopeStack[At],this.checkRedeclarationInScope(we,se,P,K),we.names.set(se,(we.names.get(se)||0)|1),this.maybeExportDefined(we,se),!(we.flags&387));--At);this.parser.inModule&&we.flags&1&&this.undefinedExports.delete(se)}maybeExportDefined(se,P){this.parser.inModule&&se.flags&1&&this.undefinedExports.delete(P)}checkRedeclarationInScope(se,P,K,we){this.isRedeclaredInScope(se,P,K)&&this.parser.raise(J.VarRedeclaration,we,{identifierName:P})}isRedeclaredInScope(se,P,K){if(!(K&1))return!1;if(K&8)return se.names.has(P);let we=se.names.get(P);return K&16?(we&2)>0||!this.treatFunctionsAsVarInScope(se)&&(we&1)>0:(we&2)>0&&!(se.flags&8&&se.firstLexicalName===P)||!this.treatFunctionsAsVarInScope(se)&&(we&4)>0}checkLocalExport(se){let{name:P}=se;this.scopeStack[0].names.has(P)||this.undefinedExports.set(P,se.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:P}=this.scopeStack[se];if(P&387)return P}}currentThisScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:P}=this.scopeStack[se];if(P&451&&!(P&4))return P}}},Da=class extends Kl{constructor(...se){super(...se),this.declareFunctions=new Set}},fu=class extends Ju{createScope(se){return new Da(se)}declareName(se,P,K){let we=this.currentScope();if(P&2048){this.checkRedeclarationInScope(we,se,P,K),this.maybeExportDefined(we,se),we.declareFunctions.add(se);return}super.declareName(se,P,K)}isRedeclaredInScope(se,P,K){if(super.isRedeclaredInScope(se,P,K))return!0;if(K&2048&&!se.declareFunctions.has(P)){let we=se.names.get(P);return(we&4)>0||(we&2)>0}return!1}checkLocalExport(se){this.scopeStack[0].declareFunctions.has(se.name)||super.checkLocalExport(se)}},yg=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(se){return se+this.startIndex}offsetToSourcePos(se){return se-this.startIndex}hasPlugin(se){if(typeof se=="string")return this.plugins.has(se);{let[P,K]=se;if(!this.hasPlugin(P))return!1;let we=this.plugins.get(P);for(let At of Object.keys(K))if(we?.[At]!==K[At])return!1;return!0}}getPluginOption(se,P){var K;return(K=this.plugins.get(se))==null?void 0:K[P]}};function _I(se,P){se.trailingComments===void 0?se.trailingComments=P:se.trailingComments.unshift(...P)}function Kh(se,P){se.leadingComments===void 0?se.leadingComments=P:se.leadingComments.unshift(...P)}function Ri(se,P){se.innerComments===void 0?se.innerComments=P:se.innerComments.unshift(...P)}function Do(se,P,K){let we=null,At=P.length;for(;we===null&&At>0;)we=P[--At];we===null||we.start>K.start?Ri(se,K.comments):_I(we,K.comments)}var Pt=class extends yg{addComment(se){this.filename&&(se.loc.filename=this.filename);let{commentsLen:P}=this.state;this.comments.length!==P&&(this.comments.length=P),this.comments.push(se),this.state.commentsLen++}processComment(se){let{commentStack:P}=this.state,K=P.length;if(K===0)return;let we=K-1,At=P[we];At.start===se.end&&(At.leadingNode=se,we--);let{start:sr}=se;for(;we>=0;we--){let Yr=P[we],Lr=Yr.end;if(Lr>sr)Yr.containingNode=se,this.finalizeComment(Yr),P.splice(we,1);else{Lr===sr&&(Yr.trailingNode=se);break}}}finalizeComment(se){let{comments:P}=se;if(se.leadingNode!==null||se.trailingNode!==null)se.leadingNode!==null&&_I(se.leadingNode,P),se.trailingNode!==null&&Kh(se.trailingNode,P);else{let{containingNode:K,start:we}=se;if(this.input.charCodeAt(this.offsetToSourcePos(we)-1)===44)switch(K.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Do(K,K.properties,se);break;case"CallExpression":case"OptionalCallExpression":Do(K,K.arguments,se);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Do(K,K.params,se);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Do(K,K.elements,se);break;case"ExportNamedDeclaration":case"ImportDeclaration":Do(K,K.specifiers,se);break;case"TSEnumDeclaration":Do(K,K.members,se);break;case"TSEnumBody":Do(K,K.members,se);break;default:Ri(K,P)}else Ri(K,P)}}finalizeRemainingComments(){let{commentStack:se}=this.state;for(let P=se.length-1;P>=0;P--)this.finalizeComment(se[P]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(se){let{commentStack:P}=this.state,{length:K}=P;if(K===0)return;let we=P[K-1];we.leadingNode===se&&(we.leadingNode=null)}resetPreviousIdentifierLeadingComments(se){let{commentStack:P}=this.state,{length:K}=P;K!==0&&(P[K-1].trailingNode===se?P[K-1].trailingNode=null:K>=2&&P[K-2].trailingNode===se&&(P[K-2].trailingNode=null))}takeSurroundingComments(se,P,K){let{commentStack:we}=this.state,At=we.length;if(At===0)return;let sr=At-1;for(;sr>=0;sr--){let Yr=we[sr],Lr=Yr.end;if(Yr.start===K)Yr.leadingNode=se;else if(Lr===P)Yr.trailingNode=se;else if(Lr0}set strict(P){P?this.flags|=1:this.flags&=-2}init({strictMode:P,sourceType:K,startIndex:we,startLine:At,startColumn:sr}){this.strict=P===!1?!1:P===!0?!0:K==="module",this.startIndex=we,this.curLine=At,this.lineStart=-sr,this.startLoc=this.endLoc=new r(At,sr,we)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(P){P?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(P){P?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(P){P?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(P){P?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(P){P?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(P){P?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(P){P?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(P){P?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(P){P?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(P){P?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(P){P?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(P){P?this.flags|=4096:this.flags&=-4097}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let P=new Eyi;return P.flags=this.flags,P.startIndex=this.startIndex,P.curLine=this.curLine,P.lineStart=this.lineStart,P.startLoc=this.startLoc,P.endLoc=this.endLoc,P.errors=this.errors.slice(),P.potentialArrowAt=this.potentialArrowAt,P.noArrowAt=this.noArrowAt.slice(),P.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),P.topicContext=this.topicContext,P.labels=this.labels.slice(),P.commentsLen=this.commentsLen,P.commentStack=this.commentStack.slice(),P.pos=this.pos,P.type=this.type,P.value=this.value,P.start=this.start,P.end=this.end,P.lastTokEndLoc=this.lastTokEndLoc,P.lastTokStartLoc=this.lastTokStartLoc,P.context=this.context.slice(),P.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,P.strictErrors=this.strictErrors,P.tokensLength=this.tokensLength,P}},ZA=function(se){return se>=48&&se<=57},$i={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Al={bin:se=>se===48||se===49,oct:se=>se>=48&&se<=55,dec:se=>se>=48&&se<=57,hex:se=>se>=48&&se<=57||se>=65&&se<=70||se>=97&&se<=102};function zf(se,P,K,we,At,sr){let Yr=K,Lr=we,fi=At,$n="",ra=null,kc=K,{length:Dl}=P;for(;;){if(K>=Dl){sr.unterminated(Yr,Lr,fi),$n+=P.slice(kc,K);break}let ca=P.charCodeAt(K);if(zd(se,ca,P,K)){$n+=P.slice(kc,K);break}if(ca===92){$n+=P.slice(kc,K);let wl=cA(P,K,we,At,se==="template",sr);wl.ch===null&&!ra?ra={pos:K,lineStart:we,curLine:At}:$n+=wl.ch,{pos:K,lineStart:we,curLine:At}=wl,kc=K}else ca===8232||ca===8233?(++K,++At,we=K):ca===10||ca===13?se==="template"?($n+=P.slice(kc,K)+` +`,++K,ca===13&&P.charCodeAt(K)===10&&++K,++At,kc=we=K):sr.unterminated(Yr,Lr,fi):++K}return{pos:K,str:$n,firstInvalidLoc:ra,lineStart:we,curLine:At,containsInvalid:!!ra}}function zd(se,P,K,we){return se==="template"?P===96||P===36&&K.charCodeAt(we+1)===123:P===(se==="double"?34:39)}function cA(se,P,K,we,At,sr){let Yr=!At;P++;let Lr=$n=>({pos:P,ch:$n,lineStart:K,curLine:we}),fi=se.charCodeAt(P++);switch(fi){case 110:return Lr(` +`);case 114:return Lr("\r");case 120:{let $n;return{code:$n,pos:P}=so(se,P,K,we,2,!1,Yr,sr),Lr($n===null?null:String.fromCharCode($n))}case 117:{let $n;return{code:$n,pos:P}=cc(se,P,K,we,Yr,sr),Lr($n===null?null:String.fromCodePoint($n))}case 116:return Lr(" ");case 98:return Lr("\b");case 118:return Lr("\v");case 102:return Lr("\f");case 13:se.charCodeAt(P)===10&&++P;case 10:K=P,++we;case 8232:case 8233:return Lr("");case 56:case 57:if(At)return Lr(null);sr.strictNumericEscape(P-1,K,we);default:if(fi>=48&&fi<=55){let $n=P-1,ra=/^[0-7]+/.exec(se.slice($n,P+2))[0],kc=parseInt(ra,8);kc>255&&(ra=ra.slice(0,-1),kc=parseInt(ra,8)),P+=ra.length-1;let Dl=se.charCodeAt(P);if(ra!=="0"||Dl===56||Dl===57){if(At)return Lr(null);sr.strictNumericEscape($n,K,we)}return Lr(String.fromCharCode(kc))}return Lr(String.fromCharCode(fi))}}function so(se,P,K,we,At,sr,Yr,Lr){let fi=P,$n;return{n:$n,pos:P}=Ki(se,P,K,we,16,At,sr,!1,Lr,!Yr),$n===null&&(Yr?Lr.invalidEscapeSequence(fi,K,we):P=fi-1),{code:$n,pos:P}}function Ki(se,P,K,we,At,sr,Yr,Lr,fi,$n){let ra=P,kc=At===16?$i.hex:$i.decBinOct,Dl=At===16?Al.hex:At===10?Al.dec:At===8?Al.oct:Al.bin,ca=!1,wl=0;for(let eA=0,BA=sr??1/0;eA=97?gp=gI-97+10:gI>=65?gp=gI-65+10:ZA(gI)?gp=gI-48:gp=1/0,gp>=At){if(gp<=9&&$n)return{n:null,pos:P};if(gp<=9&&fi.invalidDigit(P,K,we,At))gp=0;else if(Yr)gp=0,ca=!0;else break}++P,wl=wl*At+gp}return P===ra||sr!=null&&P-ra!==sr||ca?{n:null,pos:P}:{n:wl,pos:P}}function cc(se,P,K,we,At,sr){let Yr=se.charCodeAt(P),Lr;if(Yr===123){if(++P,{code:Lr,pos:P}=so(se,P,K,we,se.indexOf("}",P)-P,!0,At,sr),++P,Lr!==null&&Lr>1114111)if(At)sr.invalidCodePoint(P,K,we);else return{code:null,pos:P}}else({code:Lr,pos:P}=so(se,P,K,we,4,!1,At,sr));return{code:Lr,pos:P}}function Xs(se,P,K){return new r(K,se-P,se)}var ws=new Set([103,109,115,105,121,117,100,118]),Gs=class{constructor(se){let P=se.startIndex||0;this.type=se.type,this.value=se.value,this.start=P+se.start,this.end=P+se.end,this.loc=new n(se.startLoc,se.endLoc)}},Ma=class extends Pt{constructor(se,P){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(K,we,At,sr)=>this.optionFlags&1024?(this.raise(J.InvalidDigit,Xs(K,we,At),{radix:sr}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(J.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(J.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(J.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(J.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(K,we,At)=>{this.recordStrictModeErrors(J.StrictNumericEscape,Xs(K,we,At))},unterminated:(K,we,At)=>{throw this.raise(J.UnterminatedString,Xs(K-1,we,At))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(J.StrictNumericEscape),unterminated:(K,we,At)=>{throw this.raise(J.UnterminatedTemplate,Xs(K,we,At))}}),this.state=new HA,this.state.init(se),this.input=P,this.length=P.length,this.comments=[],this.isLookahead=!1}pushToken(se){this.tokens.length=this.state.tokensLength,this.tokens.push(se),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new Gs(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(se){return this.match(se)?(this.next(),!0):!1}match(se){return this.state.type===se}createLookaheadState(se){return{pos:se.pos,value:null,type:se.type,start:se.start,end:se.end,context:[this.curContext()],inType:se.inType,startLoc:se.startLoc,lastTokEndLoc:se.lastTokEndLoc,curLine:se.curLine,lineStart:se.lineStart,curPosition:se.curPosition}}lookahead(){let se=this.state;this.state=this.createLookaheadState(se),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let P=this.state;return this.state=se,P}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(se){return Yn.lastIndex=se,Yn.test(this.input)?Yn.lastIndex:se}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(se){return Ko.lastIndex=se,Ko.test(this.input)?Ko.lastIndex:se}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(se){let P=this.input.charCodeAt(se);if((P&64512)===55296&&++sethis.raise(P,K)),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(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(se){let P;this.isLookahead||(P=this.state.curPosition());let K=this.state.pos,we=this.input.indexOf(se,K+2);if(we===-1)throw this.raise(J.UnterminatedComment,this.state.curPosition());for(this.state.pos=we+se.length,Ru.lastIndex=K+2;Ru.test(this.input)&&Ru.lastIndex<=we;)++this.state.curLine,this.state.lineStart=Ru.lastIndex;if(this.isLookahead)return;let At={type:"CommentBlock",value:this.input.slice(K+2,we),start:this.sourceToOffsetPos(K),end:this.sourceToOffsetPos(we+se.length),loc:new n(P,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(At),At}skipLineComment(se){let P=this.state.pos,K;this.isLookahead||(K=this.state.curPosition());let we=this.input.charCodeAt(this.state.pos+=se);if(this.state.posse)){let At=this.skipLineComment(3);At!==void 0&&(this.addComment(At),P?.push(At))}else break e}else if(K===60&&!this.inModule&&this.optionFlags&4096){let we=this.state.pos;if(this.input.charCodeAt(we+1)===33&&this.input.charCodeAt(we+2)===45&&this.input.charCodeAt(we+3)===45){let At=this.skipLineComment(4);At!==void 0&&(this.addComment(At),P?.push(At))}else break e}else break e}}if(P?.length>0){let K=this.state.pos,we={start:this.sourceToOffsetPos(se),end:this.sourceToOffsetPos(K),comments:P,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(we)}}finishToken(se,P){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let K=this.state.type;this.state.type=se,this.state.value=P,this.isLookahead||this.updateContext(K)}replaceToken(se){this.state.type=se,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let se=this.state.pos+1,P=this.codePointAtPos(se);if(P>=48&&P<=57)throw this.raise(J.UnexpectedDigitAfterHash,this.state.curPosition());if(P===123||P===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(P===123?J.RecordExpressionHashIncorrectStartSyntaxType:J.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,P===123?this.finishToken(7):this.finishToken(1)}else gc(P)?(++this.state.pos,this.finishToken(139,this.readWord1(P))):P===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let se=this.input.charCodeAt(this.state.pos+1);if(se>=48&&se<=57){this.readNumber(!0);return}se===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 se=this.input.charCodeAt(this.state.pos+1);if(se!==33)return!1;let P=this.state.pos;for(this.state.pos+=1;!Vs(se)&&++this.state.pos=48&&P<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(se){switch(se){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(J.TupleExpressionBarIncorrectStartSyntaxType,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(J.RecordExpressionBarIncorrectStartSyntaxType,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 P=this.input.charCodeAt(this.state.pos+1);if(P===120||P===88){this.readRadixNumber(16);return}if(P===111||P===79){this.readRadixNumber(8);return}if(P===98||P===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(se);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(se);return;case 124:case 38:this.readToken_pipe_amp(se);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(se);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(se);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(gc(se)){this.readWord(se);return}}throw this.raise(J.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(se)})}finishOp(se,P){let K=this.input.slice(this.state.pos,this.state.pos+P);this.state.pos+=P,this.finishToken(se,K)}readRegexp(){let se=this.state.startLoc,P=this.state.start+1,K,we,{pos:At}=this.state;for(;;++At){if(At>=this.length)throw this.raise(J.UnterminatedRegExp,a(se,1));let fi=this.input.charCodeAt(At);if(Vs(fi))throw this.raise(J.UnterminatedRegExp,a(se,1));if(K)K=!1;else{if(fi===91)we=!0;else if(fi===93&&we)we=!1;else if(fi===47&&!we)break;K=fi===92}}let sr=this.input.slice(P,At);++At;let Yr="",Lr=()=>a(se,At+2-P);for(;At=2&&this.input.charCodeAt(P)===48;if(Lr){let Dl=this.input.slice(P,this.state.pos);if(this.recordStrictModeErrors(J.StrictOctalLiteral,K),!this.state.strict){let ca=Dl.indexOf("_");ca>0&&this.raise(J.ZeroDigitNumericSeparator,a(K,ca))}Yr=Lr&&!/[89]/.test(Dl)}let fi=this.input.charCodeAt(this.state.pos);if(fi===46&&!Yr&&(++this.state.pos,this.readInt(10),we=!0,fi=this.input.charCodeAt(this.state.pos)),(fi===69||fi===101)&&!Yr&&(fi=this.input.charCodeAt(++this.state.pos),(fi===43||fi===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(J.InvalidOrMissingExponent,K),we=!0,sr=!0,fi=this.input.charCodeAt(this.state.pos)),fi===110&&((we||Lr)&&this.raise(J.InvalidBigIntLiteral,K),++this.state.pos,At=!0),fi===109){this.expectPlugin("decimal",this.state.curPosition()),(sr||Lr)&&this.raise(J.InvalidDecimal,K),++this.state.pos;var $n=!0}if(gc(this.codePointAtPos(this.state.pos)))throw this.raise(J.NumberIdentifier,this.state.curPosition());let ra=this.input.slice(P,this.state.pos).replace(/[_mn]/g,"");if(At){this.finishToken(136,ra);return}if($n){this.finishToken(137,ra);return}let kc=Yr?parseInt(ra,8):parseFloat(ra);this.finishToken(135,kc)}readCodePoint(se){let{code:P,pos:K}=cc(this.input,this.state.pos,this.state.lineStart,this.state.curLine,se,this.errorHandlers_readCodePoint);return this.state.pos=K,P}readString(se){let{str:P,pos:K,curLine:we,lineStart:At}=zf(se===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=K+1,this.state.lineStart=At,this.state.curLine=we,this.finishToken(134,P)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let se=this.input[this.state.pos],{str:P,firstInvalidLoc:K,pos:we,curLine:At,lineStart:sr}=zf("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=we+1,this.state.lineStart=sr,this.state.curLine=At,K&&(this.state.firstInvalidTemplateEscapePos=new r(K.curLine,K.pos-K.lineStart,this.sourceToOffsetPos(K.pos))),this.input.codePointAt(we)===96?this.finishToken(24,K?null:se+P+"`"):(this.state.pos++,this.finishToken(25,K?null:se+P+"${"))}recordStrictModeErrors(se,P){let K=P.index;this.state.strict&&!this.state.strictErrors.has(K)?this.raise(se,P):this.state.strictErrors.set(K,[se,P])}readWord1(se){this.state.containsEsc=!1;let P="",K=this.state.pos,we=this.state.pos;for(se!==void 0&&(this.state.pos+=se<=65535?1:2);this.state.pos=0;Yr--){let Lr=sr[Yr];if(Lr.loc.index===At)return sr[Yr]=se(we,K);if(Lr.loc.indexthis.hasPlugin(P)))throw this.raise(J.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:se})}errorBuilder(se){return(P,K,we)=>{this.raise(se,Xs(P,K,we))}}},Dc=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},As=class{constructor(se){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=se}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Dc)}exit(){let se=this.stack.pop(),P=this.current();for(let[K,we]of Array.from(se.undefinedPrivateNames))P?P.undefinedPrivateNames.has(K)||P.undefinedPrivateNames.set(K,we):this.parser.raise(J.InvalidPrivateFieldResolution,we,{identifierName:K})}declarePrivateName(se,P,K){let{privateNames:we,loneAccessors:At,undefinedPrivateNames:sr}=this.current(),Yr=we.has(se);if(P&3){let Lr=Yr&&At.get(se);if(Lr){let fi=Lr&4,$n=P&4,ra=Lr&3,kc=P&3;Yr=ra===kc||fi!==$n,Yr||At.delete(se)}else Yr||At.set(se,P)}Yr&&this.parser.raise(J.PrivateNameRedeclaration,K,{identifierName:se}),we.add(se),sr.delete(se)}usePrivateName(se,P){let K;for(K of this.stack)if(K.privateNames.has(se))return;K?K.undefinedPrivateNames.set(se,P):this.parser.raise(J.InvalidPrivateFieldResolution,P,{identifierName:se})}},Nf=class{constructor(se=0){this.type=se}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},Am=class extends Nf{constructor(se){super(se),this.declarationErrors=new Map}recordDeclarationError(se,P){let K=P.index;this.declarationErrors.set(K,[se,P])}clearDeclarationError(se){this.declarationErrors.delete(se)}iterateErrors(se){this.declarationErrors.forEach(se)}},Zl=class{constructor(se){this.parser=void 0,this.stack=[new Nf],this.parser=se}enter(se){this.stack.push(se)}exit(){this.stack.pop()}recordParameterInitializerError(se,P){let K=P.loc.start,{stack:we}=this,At=we.length-1,sr=we[At];for(;!sr.isCertainlyParameterDeclaration();){if(sr.canBeArrowParameterDeclaration())sr.recordDeclarationError(se,K);else return;sr=we[--At]}this.parser.raise(se,K)}recordArrowParameterBindingError(se,P){let{stack:K}=this,we=K[K.length-1],At=P.loc.start;if(we.isCertainlyParameterDeclaration())this.parser.raise(se,At);else if(we.canBeArrowParameterDeclaration())we.recordDeclarationError(se,At);else return}recordAsyncArrowParametersError(se){let{stack:P}=this,K=P.length-1,we=P[K];for(;we.canBeArrowParameterDeclaration();)we.type===2&&we.recordDeclarationError(J.AwaitBindingIdentifier,se),we=P[--K]}validateAsPattern(){let{stack:se}=this,P=se[se.length-1];P.canBeArrowParameterDeclaration()&&P.iterateErrors(([K,we])=>{this.parser.raise(K,we);let At=se.length-2,sr=se[At];for(;sr.canBeArrowParameterDeclaration();)sr.clearDeclarationError(we.index),sr=se[--At]})}};function rc(){return new Nf(3)}function ad(){return new Am(1)}function Qm(){return new Am(2)}function rl(){return new Nf}var LA=class{constructor(){this.stacks=[]}enter(se){this.stacks.push(se)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function VA(se,P){return(se?2:0)|(P?1:0)}var bl=class extends Ma{addExtra(se,P,K,we=!0){if(!se)return;let{extra:At}=se;At==null&&(At={},se.extra=At),we?At[P]=K:Object.defineProperty(At,P,{enumerable:we,value:K})}isContextual(se){return this.state.type===se&&!this.state.containsEsc}isUnparsedContextual(se,P){let K=se+P.length;if(this.input.slice(se,K)===P){let we=this.input.charCodeAt(K);return!(_g(we)||(we&64512)===55296)}return!1}isLookaheadContextual(se){let P=this.nextTokenStart();return this.isUnparsedContextual(P,se)}eatContextual(se){return this.isContextual(se)?(this.next(),!0):!1}expectContextual(se,P){if(!this.eatContextual(se)){if(P!=null)throw this.raise(P,this.state.startLoc);this.unexpected(null,se)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Uu(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return Uu(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(se=!0){(se?this.isLineTerminator():this.eat(13))||this.raise(J.MissingSemicolon,this.state.lastTokEndLoc)}expect(se,P){this.eat(se)||this.unexpected(P,se)}tryParse(se,P=this.state.clone()){let K={node:null};try{let we=se((At=null)=>{throw K.node=At,K});if(this.state.errors.length>P.errors.length){let At=this.state;return this.state=P,this.state.tokensLength=At.tokensLength,{node:we,error:At.errors[P.errors.length],thrown:!1,aborted:!1,failState:At}}return{node:we,error:null,thrown:!1,aborted:!1,failState:null}}catch(we){let At=this.state;if(this.state=P,we instanceof SyntaxError)return{node:null,error:we,thrown:!0,aborted:!1,failState:At};if(we===K)return{node:K.node,error:null,thrown:!1,aborted:!0,failState:At};throw we}}checkExpressionErrors(se,P){if(!se)return!1;let{shorthandAssignLoc:K,doubleProtoLoc:we,privateKeyLoc:At,optionalParametersLoc:sr}=se,Yr=!!K||!!we||!!sr||!!At;if(!P)return Yr;K!=null&&this.raise(J.InvalidCoverInitializedName,K),we!=null&&this.raise(J.DuplicateProto,we),At!=null&&this.raise(J.UnexpectedPrivateField,At),sr!=null&&this.unexpected(sr)}isLiteralPropertyName(){return zt(this.state.type)}isPrivateName(se){return se.type==="PrivateName"}getPrivateNameSV(se){return se.id.name}hasPropertyAsPrivateName(se){return(se.type==="MemberExpression"||se.type==="OptionalMemberExpression")&&this.isPrivateName(se.property)}isObjectProperty(se){return se.type==="ObjectProperty"}isObjectMethod(se){return se.type==="ObjectMethod"}initializeScopes(se=this.options.sourceType==="module"){let P=this.state.labels;this.state.labels=[];let K=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let we=this.inModule;this.inModule=se;let At=this.scope,sr=this.getScopeHandler();this.scope=new sr(this,se);let Yr=this.prodParam;this.prodParam=new LA;let Lr=this.classScope;this.classScope=new As(this);let fi=this.expressionScope;return this.expressionScope=new Zl(this),()=>{this.state.labels=P,this.exportedIdentifiers=K,this.inModule=we,this.scope=At,this.prodParam=Yr,this.classScope=Lr,this.expressionScope=fi}}enterInitialScopes(){let se=0;this.inModule&&(se|=2),this.scope.enter(1),this.prodParam.enter(se)}checkDestructuringPrivate(se){let{privateKeyLoc:P}=se;P!==null&&this.expectPlugin("destructuringPrivate",P)}},bg=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Yp=class{constructor(se,P,K){this.type="",this.start=P,this.end=0,this.loc=new n(K),se?.optionFlags&64&&(this.range=[P,0]),se!=null&&se.filename&&(this.loc.filename=se.filename)}},YA=Yp.prototype;YA.__clone=function(){let se=new Yp(void 0,this.start,this.loc.start),P=Object.keys(this);for(let K=0,we=P.length;K`Cannot overwrite reserved type ${se}.`,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:({memberName:se,enumName:P})=>`Boolean enum members need to be initialized. Use either \`${se} = true,\` or \`${se} = false,\` in enum \`${P}\`.`,EnumDuplicateMemberName:({memberName:se,enumName:P})=>`Enum member names need to be unique, but the name \`${se}\` has already been used before in enum \`${P}\`.`,EnumInconsistentMemberValues:({enumName:se})=>`Enum \`${se}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:se,enumName:P})=>`Enum type \`${se}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${P}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:se})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${se}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:se,memberName:P,explicitType:K})=>`Enum \`${se}\` has type \`${K}\`, so the initializer of \`${P}\` needs to be a ${K} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:se,memberName:P})=>`Symbol enum members cannot be initialized. Use \`${P},\` in enum \`${se}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:se,memberName:P})=>`The enum member initializer for \`${P}\` needs to be a literal (either a boolean, number, or string) in enum \`${se}\`.`,EnumInvalidMemberName:({enumName:se,memberName:P,suggestion:K})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${P}\`, consider using \`${K}\`, in enum \`${se}\`.`,EnumNumberMemberNotInitialized:({enumName:se,memberName:P})=>`Number enum members need to be initialized, e.g. \`${P} = 1\` in enum \`${se}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:se})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${se}\`.`,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:({reservedType:se})=>`Unexpected reserved type ${se}.`,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:({unsupportedExportKind:se,suggestion:P})=>`\`declare export ${se}\` is not supported. Use \`${P}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Oa(se){return se.type==="DeclareExportAllDeclaration"||se.type==="DeclareExportDeclaration"&&(!se.declaration||se.declaration.type!=="TypeAlias"&&se.declaration.type!=="InterfaceDeclaration")}function Ca(se){return se.importKind==="type"||se.importKind==="typeof"}var gd={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function Dp(se,P){let K=[],we=[];for(let At=0;Atclass extends se{constructor(...P){super(...P),this.flowPragma=void 0}getScopeHandler(){return fu}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(P,K){P!==134&&P!==13&&P!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(P,K)}addComment(P){if(this.flowPragma===void 0){let K=sp.exec(P.value);if(K)if(K[1]==="flow")this.flowPragma="flow";else if(K[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(P)}flowParseTypeInitialiser(P){let K=this.state.inType;this.state.inType=!0,this.expect(P||14);let we=this.flowParseType();return this.state.inType=K,we}flowParsePredicate(){let P=this.startNode(),K=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>K.index+1&&this.raise(Fs.UnexpectedSpaceBetweenModuloChecks,K),this.eat(10)?(P.value=super.parseExpression(),this.expect(11),this.finishNode(P,"DeclaredPredicate")):this.finishNode(P,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let P=this.state.inType;this.state.inType=!0,this.expect(14);let K=null,we=null;return this.match(54)?(this.state.inType=P,we=this.flowParsePredicate()):(K=this.flowParseType(),this.state.inType=P,this.match(54)&&(we=this.flowParsePredicate())),[K,we]}flowParseDeclareClass(P){return this.next(),this.flowParseInterfaceish(P,!0),this.finishNode(P,"DeclareClass")}flowParseDeclareFunction(P){this.next();let K=P.id=this.parseIdentifier(),we=this.startNode(),At=this.startNode();this.match(47)?we.typeParameters=this.flowParseTypeParameterDeclaration():we.typeParameters=null,this.expect(10);let sr=this.flowParseFunctionTypeParams();return we.params=sr.params,we.rest=sr.rest,we.this=sr._this,this.expect(11),[we.returnType,P.predicate]=this.flowParseTypeAndPredicateInitialiser(),At.typeAnnotation=this.finishNode(we,"FunctionTypeAnnotation"),K.typeAnnotation=this.finishNode(At,"TypeAnnotation"),this.resetEndLocation(K),this.semicolon(),this.scope.declareName(P.id.name,2048,P.id.loc.start),this.finishNode(P,"DeclareFunction")}flowParseDeclare(P,K){if(this.match(80))return this.flowParseDeclareClass(P);if(this.match(68))return this.flowParseDeclareFunction(P);if(this.match(74))return this.flowParseDeclareVariable(P);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(P):(K&&this.raise(Fs.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(P));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(P);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(P);if(this.isContextual(129))return this.flowParseDeclareInterface(P);if(this.match(82))return this.flowParseDeclareExportDeclaration(P,K);this.unexpected()}flowParseDeclareVariable(P){return this.next(),P.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(P.id.name,5,P.id.loc.start),this.semicolon(),this.finishNode(P,"DeclareVariable")}flowParseDeclareModule(P){this.scope.enter(0),this.match(134)?P.id=super.parseExprAtom():P.id=this.parseIdentifier();let K=P.body=this.startNode(),we=K.body=[];for(this.expect(5);!this.match(8);){let Yr=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(Fs.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(Yr)):(this.expectContextual(125,Fs.UnsupportedStatementInDeclareModule),Yr=this.flowParseDeclare(Yr,!0)),we.push(Yr)}this.scope.exit(),this.expect(8),this.finishNode(K,"BlockStatement");let At=null,sr=!1;return we.forEach(Yr=>{Oa(Yr)?(At==="CommonJS"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),At="ES"):Yr.type==="DeclareModuleExports"&&(sr&&this.raise(Fs.DuplicateDeclareModuleExports,Yr),At==="ES"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),At="CommonJS",sr=!0)}),P.kind=At||"CommonJS",this.finishNode(P,"DeclareModule")}flowParseDeclareExportDeclaration(P,K){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?P.declaration=this.flowParseDeclare(this.startNode()):(P.declaration=this.flowParseType(),this.semicolon()),P.default=!0,this.finishNode(P,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!K){let we=this.state.value;throw this.raise(Fs.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:we,suggestion:gd[we]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return P.declaration=this.flowParseDeclare(this.startNode()),P.default=!1,this.finishNode(P,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return P=this.parseExport(P,null),P.type==="ExportNamedDeclaration"&&(P.type="ExportDeclaration",P.default=!1,delete P.exportKind),P.type="Declare"+P.type,P;this.unexpected()}flowParseDeclareModuleExports(P){return this.next(),this.expectContextual(111),P.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(P,"DeclareModuleExports")}flowParseDeclareTypeAlias(P){this.next();let K=this.flowParseTypeAlias(P);return K.type="DeclareTypeAlias",K}flowParseDeclareOpaqueType(P){this.next();let K=this.flowParseOpaqueType(P,!0);return K.type="DeclareOpaqueType",K}flowParseDeclareInterface(P){return this.next(),this.flowParseInterfaceish(P,!1),this.finishNode(P,"DeclareInterface")}flowParseInterfaceish(P,K){if(P.id=this.flowParseRestrictedIdentifier(!K,!0),this.scope.declareName(P.id.name,K?17:8201,P.id.loc.start),this.match(47)?P.typeParameters=this.flowParseTypeParameterDeclaration():P.typeParameters=null,P.extends=[],this.eat(81))do P.extends.push(this.flowParseInterfaceExtends());while(!K&&this.eat(12));if(K){if(P.implements=[],P.mixins=[],this.eatContextual(117))do P.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do P.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}P.body=this.flowParseObjectType({allowStatic:K,allowExact:!1,allowSpread:!1,allowProto:K,allowInexact:!1})}flowParseInterfaceExtends(){let P=this.startNode();return P.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?P.typeParameters=this.flowParseTypeParameterInstantiation():P.typeParameters=null,this.finishNode(P,"InterfaceExtends")}flowParseInterface(P){return this.flowParseInterfaceish(P,!1),this.finishNode(P,"InterfaceDeclaration")}checkNotUnderscore(P){P==="_"&&this.raise(Fs.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(P,K,we){oa.has(P)&&this.raise(we?Fs.AssignReservedType:Fs.UnexpectedReservedType,K,{reservedType:P})}flowParseRestrictedIdentifier(P,K){return this.checkReservedType(this.state.value,this.state.startLoc,K),this.parseIdentifier(P)}flowParseTypeAlias(P){return P.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(P.id.name,8201,P.id.loc.start),this.match(47)?P.typeParameters=this.flowParseTypeParameterDeclaration():P.typeParameters=null,P.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(P,"TypeAlias")}flowParseOpaqueType(P,K){return this.expectContextual(130),P.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(P.id.name,8201,P.id.loc.start),this.match(47)?P.typeParameters=this.flowParseTypeParameterDeclaration():P.typeParameters=null,P.supertype=null,this.match(14)&&(P.supertype=this.flowParseTypeInitialiser(14)),P.impltype=null,K||(P.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(P,"OpaqueType")}flowParseTypeParameter(P=!1){let K=this.state.startLoc,we=this.startNode(),At=this.flowParseVariance(),sr=this.flowParseTypeAnnotatableIdentifier();return we.name=sr.name,we.variance=At,we.bound=sr.typeAnnotation,this.match(29)?(this.eat(29),we.default=this.flowParseType()):P&&this.raise(Fs.MissingTypeParamDefault,K),this.finishNode(we,"TypeParameter")}flowParseTypeParameterDeclaration(){let P=this.state.inType,K=this.startNode();K.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let we=!1;do{let At=this.flowParseTypeParameter(we);K.params.push(At),At.default&&(we=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=P,this.finishNode(K,"TypeParameterDeclaration")}flowInTopLevelContext(P){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return P()}finally{this.state.context=K}}else return P()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let P=this.startNode(),K=this.state.inType;return this.state.inType=!0,P.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let we=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)P.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=we}),this.state.inType=K,!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(P,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let P=this.startNode(),K=this.state.inType;for(P.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)P.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=K,this.finishNode(P,"TypeParameterInstantiation")}flowParseInterfaceType(){let P=this.startNode();if(this.expectContextual(129),P.extends=[],this.eat(81))do P.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return P.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(P,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(P,K,we){return P.static=K,this.lookahead().type===14?(P.id=this.flowParseObjectPropertyKey(),P.key=this.flowParseTypeInitialiser()):(P.id=null,P.key=this.flowParseType()),this.expect(3),P.value=this.flowParseTypeInitialiser(),P.variance=we,this.finishNode(P,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(P,K){return P.static=K,P.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(P.method=!0,P.optional=!1,P.value=this.flowParseObjectTypeMethodish(this.startNodeAt(P.loc.start))):(P.method=!1,this.eat(17)&&(P.optional=!0),P.value=this.flowParseTypeInitialiser()),this.finishNode(P,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(P){for(P.params=[],P.rest=null,P.typeParameters=null,P.this=null,this.match(47)&&(P.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(P.this=this.flowParseFunctionTypeParam(!0),P.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)P.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(P.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),P.returnType=this.flowParseTypeInitialiser(),this.finishNode(P,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(P,K){let we=this.startNode();return P.static=K,P.value=this.flowParseObjectTypeMethodish(we),this.finishNode(P,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:P,allowExact:K,allowSpread:we,allowProto:At,allowInexact:sr}){let Yr=this.state.inType;this.state.inType=!0;let Lr=this.startNode();Lr.callProperties=[],Lr.properties=[],Lr.indexers=[],Lr.internalSlots=[];let fi,$n,ra=!1;for(K&&this.match(6)?(this.expect(6),fi=9,$n=!0):(this.expect(5),fi=8,$n=!1),Lr.exact=$n;!this.match(fi);){let Dl=!1,ca=null,wl=null,eA=this.startNode();if(At&&this.isContextual(118)){let gI=this.lookahead();gI.type!==14&&gI.type!==17&&(this.next(),ca=this.state.startLoc,P=!1)}if(P&&this.isContextual(106)){let gI=this.lookahead();gI.type!==14&&gI.type!==17&&(this.next(),Dl=!0)}let BA=this.flowParseVariance();if(this.eat(0))ca!=null&&this.unexpected(ca),this.eat(0)?(BA&&this.unexpected(BA.loc.start),Lr.internalSlots.push(this.flowParseObjectTypeInternalSlot(eA,Dl))):Lr.indexers.push(this.flowParseObjectTypeIndexer(eA,Dl,BA));else if(this.match(10)||this.match(47))ca!=null&&this.unexpected(ca),BA&&this.unexpected(BA.loc.start),Lr.callProperties.push(this.flowParseObjectTypeCallProperty(eA,Dl));else{let gI="init";if(this.isContextual(99)||this.isContextual(104)){let Cb=this.lookahead();zt(Cb.type)&&(gI=this.state.value,this.next())}let gp=this.flowParseObjectTypeProperty(eA,Dl,ca,BA,gI,we,sr??!$n);gp===null?(ra=!0,wl=this.state.lastTokStartLoc):Lr.properties.push(gp)}this.flowObjectTypeSemicolon(),wl&&!this.match(8)&&!this.match(9)&&this.raise(Fs.UnexpectedExplicitInexactInObject,wl)}this.expect(fi),we&&(Lr.inexact=ra);let kc=this.finishNode(Lr,"ObjectTypeAnnotation");return this.state.inType=Yr,kc}flowParseObjectTypeProperty(P,K,we,At,sr,Yr,Lr){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(Yr?Lr||this.raise(Fs.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Fs.InexactInsideNonObject,this.state.lastTokStartLoc),At&&this.raise(Fs.InexactVariance,At),null):(Yr||this.raise(Fs.UnexpectedSpreadType,this.state.lastTokStartLoc),we!=null&&this.unexpected(we),At&&this.raise(Fs.SpreadVariance,At),P.argument=this.flowParseType(),this.finishNode(P,"ObjectTypeSpreadProperty"));{P.key=this.flowParseObjectPropertyKey(),P.static=K,P.proto=we!=null,P.kind=sr;let fi=!1;return this.match(47)||this.match(10)?(P.method=!0,we!=null&&this.unexpected(we),At&&this.unexpected(At.loc.start),P.value=this.flowParseObjectTypeMethodish(this.startNodeAt(P.loc.start)),(sr==="get"||sr==="set")&&this.flowCheckGetterSetterParams(P),!Yr&&P.key.name==="constructor"&&P.value.this&&this.raise(Fs.ThisParamBannedInConstructor,P.value.this)):(sr!=="init"&&this.unexpected(),P.method=!1,this.eat(17)&&(fi=!0),P.value=this.flowParseTypeInitialiser(),P.variance=At),P.optional=fi,this.finishNode(P,"ObjectTypeProperty")}}flowCheckGetterSetterParams(P){let K=P.kind==="get"?0:1,we=P.value.params.length+(P.value.rest?1:0);P.value.this&&this.raise(P.kind==="get"?Fs.GetterMayNotHaveThisParam:Fs.SetterMayNotHaveThisParam,P.value.this),we!==K&&this.raise(P.kind==="get"?J.BadGetterArity:J.BadSetterArity,P),P.kind==="set"&&P.value.rest&&this.raise(J.BadSetterRestParameter,P)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(P,K){var we;(we=P)!=null||(P=this.state.startLoc);let At=K||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let sr=this.startNodeAt(P);sr.qualification=At,sr.id=this.flowParseRestrictedIdentifier(!0),At=this.finishNode(sr,"QualifiedTypeIdentifier")}return At}flowParseGenericType(P,K){let we=this.startNodeAt(P);return we.typeParameters=null,we.id=this.flowParseQualifiedTypeIdentifier(P,K),this.match(47)&&(we.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(we,"GenericTypeAnnotation")}flowParseTypeofType(){let P=this.startNode();return this.expect(87),P.argument=this.flowParsePrimaryType(),this.finishNode(P,"TypeofTypeAnnotation")}flowParseTupleType(){let P=this.startNode();for(P.types=[],this.expect(0);this.state.possuper.parseFunctionBody(P,!0,we));return}super.parseFunctionBody(P,!1,we)}parseFunctionBodyAndFinish(P,K,we=!1){if(this.match(14)){let At=this.startNode();[At.typeAnnotation,P.predicate]=this.flowParseTypeAndPredicateInitialiser(),P.returnType=At.typeAnnotation?this.finishNode(At,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(P,K,we)}parseStatementLike(P){if(this.state.strict&&this.isContextual(129)){let we=this.lookahead();if(ke(we.type)){let At=this.startNode();return this.next(),this.flowParseInterface(At)}}else if(this.isContextual(126)){let we=this.startNode();return this.next(),this.flowParseEnumDeclaration(we)}let K=super.parseStatementLike(P);return this.flowPragma===void 0&&!this.isValidDirective(K)&&(this.flowPragma=null),K}parseExpressionStatement(P,K,we){if(K.type==="Identifier"){if(K.name==="declare"){if(this.match(80)||qr(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(P)}else if(qr(this.state.type)){if(K.name==="interface")return this.flowParseInterface(P);if(K.name==="type")return this.flowParseTypeAlias(P);if(K.name==="opaque")return this.flowParseOpaqueType(P,!1)}}return super.parseExpressionStatement(P,K,we)}shouldParseExportDeclaration(){let{type:P}=this.state;return P===126||Ao(P)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:P}=this.state;return P===126||Ao(P)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let P=this.startNode();return this.next(),this.flowParseEnumDeclaration(P)}return super.parseExportDefaultExpression()}parseConditional(P,K,we){if(!this.match(17))return P;if(this.state.maybeInArrowParameters){let kc=this.lookaheadCharCode();if(kc===44||kc===61||kc===58||kc===41)return this.setOptionalParametersError(we),P}this.expect(17);let At=this.state.clone(),sr=this.state.noArrowAt,Yr=this.startNodeAt(K),{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent(),[$n,ra]=this.getArrowLikeExpressions(Lr);if(fi||ra.length>0){let kc=[...sr];if(ra.length>0){this.state=At,this.state.noArrowAt=kc;for(let Dl=0;Dl1&&this.raise(Fs.AmbiguousConditionalArrow,At.startLoc),fi&&$n.length===1&&(this.state=At,kc.push($n[0].start),this.state.noArrowAt=kc,{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(Lr,!0),this.state.noArrowAt=sr,this.expect(14),Yr.test=P,Yr.consequent=Lr,Yr.alternate=this.forwardNoArrowParamsConversionAt(Yr,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(Yr,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let P=this.parseMaybeAssignAllowIn(),K=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:P,failed:K}}getArrowLikeExpressions(P,K){let we=[P],At=[];for(;we.length!==0;){let sr=we.pop();sr.type==="ArrowFunctionExpression"&&sr.body.type!=="BlockStatement"?(sr.typeParameters||!sr.returnType?this.finishArrowValidation(sr):At.push(sr),we.push(sr.body)):sr.type==="ConditionalExpression"&&(we.push(sr.consequent),we.push(sr.alternate))}return K?(At.forEach(sr=>this.finishArrowValidation(sr)),[At,[]]):Dp(At,sr=>sr.params.every(Yr=>this.isAssignable(Yr,!0)))}finishArrowValidation(P){var K;this.toAssignableList(P.params,(K=P.extra)==null?void 0:K.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(P,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(P,K){let we;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(P.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),we=K(),this.state.noArrowParamsConversionAt.pop()):we=K(),we}parseParenItem(P,K){let we=super.parseParenItem(P,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(P)),this.match(14)){let At=this.startNodeAt(K);return At.expression=we,At.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(At,"TypeCastExpression")}return we}assertModuleNodeAllowed(P){P.type==="ImportDeclaration"&&(P.importKind==="type"||P.importKind==="typeof")||P.type==="ExportNamedDeclaration"&&P.exportKind==="type"||P.type==="ExportAllDeclaration"&&P.exportKind==="type"||super.assertModuleNodeAllowed(P)}parseExportDeclaration(P){if(this.isContextual(130)){P.exportKind="type";let K=this.startNode();return this.next(),this.match(5)?(P.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(P),null):this.flowParseTypeAlias(K)}else if(this.isContextual(131)){P.exportKind="type";let K=this.startNode();return this.next(),this.flowParseOpaqueType(K,!1)}else if(this.isContextual(129)){P.exportKind="type";let K=this.startNode();return this.next(),this.flowParseInterface(K)}else if(this.isContextual(126)){P.exportKind="value";let K=this.startNode();return this.next(),this.flowParseEnumDeclaration(K)}else return super.parseExportDeclaration(P)}eatExportStar(P){return super.eatExportStar(P)?!0:this.isContextual(130)&&this.lookahead().type===55?(P.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(P){let{startLoc:K}=this.state,we=super.maybeParseExportNamespaceSpecifier(P);return we&&P.exportKind==="type"&&this.unexpected(K),we}parseClassId(P,K,we){super.parseClassId(P,K,we),this.match(47)&&(P.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(P,K,we){let{startLoc:At}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(P,K))return;K.declare=!0}super.parseClassMember(P,K,we),K.declare&&(K.type!=="ClassProperty"&&K.type!=="ClassPrivateProperty"&&K.type!=="PropertyDefinition"?this.raise(Fs.DeclareClassElement,At):K.value&&this.raise(Fs.DeclareClassFieldInitializer,K.value))}isIterator(P){return P==="iterator"||P==="asyncIterator"}readIterator(){let P=super.readWord1(),K="@@"+P;(!this.isIterator(P)||!this.state.inType)&&this.raise(J.InvalidIdentifier,this.state.curPosition(),{identifierName:K}),this.finishToken(132,K)}getTokenFromCode(P){let K=this.input.charCodeAt(this.state.pos+1);P===123&&K===124?this.finishOp(6,2):this.state.inType&&(P===62||P===60)?this.finishOp(P===62?48:47,1):this.state.inType&&P===63?K===46?this.finishOp(18,2):this.finishOp(17,1):Ql(P,K,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(P)}isAssignable(P,K){return P.type==="TypeCastExpression"?this.isAssignable(P.expression,K):super.isAssignable(P,K)}toAssignable(P,K=!1){!K&&P.type==="AssignmentExpression"&&P.left.type==="TypeCastExpression"&&(P.left=this.typeCastToParameter(P.left)),super.toAssignable(P,K)}toAssignableList(P,K,we){for(let At=0;At1||!K)&&this.raise(Fs.TypeCastInPattern,sr.typeAnnotation)}return P}parseArrayLike(P,K,we,At){let sr=super.parseArrayLike(P,K,we,At);return K&&!this.state.maybeInArrowParameters&&this.toReferencedList(sr.elements),sr}isValidLVal(P,K,we){return P==="TypeCastExpression"||super.isValidLVal(P,K,we)}parseClassProperty(P){return this.match(14)&&(P.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(P)}parseClassPrivateProperty(P){return this.match(14)&&(P.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(P)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(P){return!this.match(14)&&super.isNonstaticConstructor(P)}pushClassMethod(P,K,we,At,sr,Yr){if(K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(P,K,we,At,sr,Yr),K.params&&sr){let Lr=K.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}else if(K.type==="MethodDefinition"&&sr&&K.value.params){let Lr=K.value.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}}pushClassPrivateMethod(P,K,we,At){K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(P,K,we,At)}parseClassSuper(P){if(super.parseClassSuper(P),P.superClass&&(this.match(47)||this.match(51))&&(P.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let K=P.implements=[];do{let we=this.startNode();we.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?we.typeParameters=this.flowParseTypeParameterInstantiation():we.typeParameters=null,K.push(this.finishNode(we,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(P){super.checkGetterSetterParams(P);let K=this.getObjectOrClassMethodParams(P);if(K.length>0){let we=K[0];this.isThisParam(we)&&P.kind==="get"?this.raise(Fs.GetterMayNotHaveThisParam,we):this.isThisParam(we)&&this.raise(Fs.SetterMayNotHaveThisParam,we)}}parsePropertyNamePrefixOperator(P){P.variance=this.flowParseVariance()}parseObjPropValue(P,K,we,At,sr,Yr,Lr){P.variance&&this.unexpected(P.variance.loc.start),delete P.variance;let fi;this.match(47)&&!Yr&&(fi=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let $n=super.parseObjPropValue(P,K,we,At,sr,Yr,Lr);return fi&&(($n.value||$n).typeParameters=fi),$n}parseFunctionParamType(P){return this.eat(17)&&(P.type!=="Identifier"&&this.raise(Fs.PatternIsOptional,P),this.isThisParam(P)&&this.raise(Fs.ThisParamMayNotBeOptional,P),P.optional=!0),this.match(14)?P.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(P)&&this.raise(Fs.ThisParamAnnotationRequired,P),this.match(29)&&this.isThisParam(P)&&this.raise(Fs.ThisParamNoDefault,P),this.resetEndLocation(P),P}parseMaybeDefault(P,K){let we=super.parseMaybeDefault(P,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startsuper.parseMaybeAssign(P,K),At),!sr.error)return sr.node;let{context:fi}=this.state,$n=fi[fi.length-1];($n===Se.j_oTag||$n===Se.j_expr)&&fi.pop()}if((we=sr)!=null&&we.error||this.match(47)){var Yr,Lr;At=At||this.state.clone();let fi,$n=this.tryParse(kc=>{var Dl;fi=this.flowParseTypeParameterDeclaration();let ca=this.forwardNoArrowParamsConversionAt(fi,()=>{let eA=super.parseMaybeAssign(P,K);return this.resetStartLocationFromNode(eA,fi),eA});(Dl=ca.extra)!=null&&Dl.parenthesized&&kc();let wl=this.maybeUnwrapTypeCastExpression(ca);return wl.type!=="ArrowFunctionExpression"&&kc(),wl.typeParameters=fi,this.resetStartLocationFromNode(wl,fi),ca},At),ra=null;if($n.node&&this.maybeUnwrapTypeCastExpression($n.node).type==="ArrowFunctionExpression"){if(!$n.error&&!$n.aborted)return $n.node.async&&this.raise(Fs.UnexpectedTypeParameterBeforeAsyncArrowFunction,fi),$n.node;ra=$n.node}if((Yr=sr)!=null&&Yr.node)return this.state=sr.failState,sr.node;if(ra)return this.state=$n.failState,ra;throw(Lr=sr)!=null&&Lr.thrown?sr.error:$n.thrown?$n.error:this.raise(Fs.UnexpectedTokenAfterTypeParameter,fi)}return super.parseMaybeAssign(P,K)}parseArrow(P){if(this.match(14)){let K=this.tryParse(()=>{let we=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let At=this.startNode();return[At.typeAnnotation,P.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=we,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),At});if(K.thrown)return null;K.error&&(this.state=K.failState),P.returnType=K.node.typeAnnotation?this.finishNode(K.node,"TypeAnnotation"):null}return super.parseArrow(P)}shouldParseArrow(P){return this.match(14)||super.shouldParseArrow(P)}setArrowFunctionParameters(P,K){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(P.start))?P.params=K:super.setArrowFunctionParameters(P,K)}checkParams(P,K,we,At=!0){if(!(we&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(P.start)))){for(let sr=0;sr0&&this.raise(Fs.ThisParamMustBeFirst,P.params[sr]);super.checkParams(P,K,we,At)}}parseParenAndDistinguishExpression(P){return super.parseParenAndDistinguishExpression(P&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(P,K,we){if(P.type==="Identifier"&&P.name==="async"&&this.state.noArrowAt.includes(K.index)){this.next();let At=this.startNodeAt(K);At.callee=P,At.arguments=super.parseCallExpressionArguments(11),P=this.finishNode(At,"CallExpression")}else if(P.type==="Identifier"&&P.name==="async"&&this.match(47)){let At=this.state.clone(),sr=this.tryParse(Lr=>this.parseAsyncArrowWithTypeParameters(K)||Lr(),At);if(!sr.error&&!sr.aborted)return sr.node;let Yr=this.tryParse(()=>super.parseSubscripts(P,K,we),At);if(Yr.node&&!Yr.error)return Yr.node;if(sr.node)return this.state=sr.failState,sr.node;if(Yr.node)return this.state=Yr.failState,Yr.node;throw sr.error||Yr.error}return super.parseSubscripts(P,K,we)}parseSubscript(P,K,we,At){if(this.match(18)&&this.isLookaheadToken_lt()){if(At.optionalChainMember=!0,we)return At.stop=!0,P;this.next();let sr=this.startNodeAt(K);return sr.callee=P,sr.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),sr.arguments=this.parseCallExpressionArguments(11),sr.optional=!0,this.finishCallExpression(sr,!0)}else if(!we&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let sr=this.startNodeAt(K);sr.callee=P;let Yr=this.tryParse(()=>(sr.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),sr.arguments=super.parseCallExpressionArguments(11),At.optionalChainMember&&(sr.optional=!1),this.finishCallExpression(sr,At.optionalChainMember)));if(Yr.node)return Yr.error&&(this.state=Yr.failState),Yr.node}return super.parseSubscript(P,K,we,At)}parseNewCallee(P){super.parseNewCallee(P);let K=null;this.shouldParseTypes()&&this.match(47)&&(K=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),P.typeArguments=K}parseAsyncArrowWithTypeParameters(P){let K=this.startNodeAt(P);if(this.parseFunctionParams(K,!1),!!this.parseArrow(K))return super.parseArrowExpression(K,void 0,!0)}readToken_mult_modulo(P){let K=this.input.charCodeAt(this.state.pos+1);if(P===42&&K===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(P)}readToken_pipe_amp(P){let K=this.input.charCodeAt(this.state.pos+1);if(P===124&&K===125){this.finishOp(9,2);return}super.readToken_pipe_amp(P)}parseTopLevel(P,K){let we=super.parseTopLevel(P,K);return this.state.hasFlowComment&&this.raise(Fs.UnterminatedFlowComment,this.state.curPosition()),we}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Fs.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let P=this.skipFlowComment();P&&(this.state.pos+=P,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:P}=this.state,K=2;for(;[32,9].includes(this.input.charCodeAt(P+K));)K++;let we=this.input.charCodeAt(K+P),At=this.input.charCodeAt(K+P+1);return we===58&&At===58?K+2:this.input.slice(K+P,K+P+12)==="flow-include"?K+12:we===58&&At!==58?K:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(J.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(P,{enumName:K,memberName:we}){this.raise(Fs.EnumBooleanMemberNotInitialized,P,{memberName:we,enumName:K})}flowEnumErrorInvalidMemberInitializer(P,K){return this.raise(K.explicitType?K.explicitType==="symbol"?Fs.EnumInvalidMemberInitializerSymbolType:Fs.EnumInvalidMemberInitializerPrimaryType:Fs.EnumInvalidMemberInitializerUnknownType,P,K)}flowEnumErrorNumberMemberNotInitialized(P,K){this.raise(Fs.EnumNumberMemberNotInitialized,P,K)}flowEnumErrorStringMemberInconsistentlyInitialized(P,K){this.raise(Fs.EnumStringMemberInconsistentlyInitialized,P,K)}flowEnumMemberInit(){let P=this.state.startLoc,K=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let we=this.parseNumericLiteral(this.state.value);return K()?{type:"number",loc:we.loc.start,value:we}:{type:"invalid",loc:P}}case 134:{let we=this.parseStringLiteral(this.state.value);return K()?{type:"string",loc:we.loc.start,value:we}:{type:"invalid",loc:P}}case 85:case 86:{let we=this.parseBooleanLiteral(this.match(85));return K()?{type:"boolean",loc:we.loc.start,value:we}:{type:"invalid",loc:P}}default:return{type:"invalid",loc:P}}}flowEnumMemberRaw(){let P=this.state.startLoc,K=this.parseIdentifier(!0),we=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:P};return{id:K,init:we}}flowEnumCheckExplicitTypeMismatch(P,K,we){let{explicitType:At}=K;At!==null&&At!==we&&this.flowEnumErrorInvalidMemberInitializer(P,K)}flowEnumMembers({enumName:P,explicitType:K}){let we=new Set,At={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},sr=!1;for(;!this.match(8);){if(this.eat(21)){sr=!0;break}let Yr=this.startNode(),{id:Lr,init:fi}=this.flowEnumMemberRaw(),$n=Lr.name;if($n==="")continue;/^[a-z]/.test($n)&&this.raise(Fs.EnumInvalidMemberName,Lr,{memberName:$n,suggestion:$n[0].toUpperCase()+$n.slice(1),enumName:P}),we.has($n)&&this.raise(Fs.EnumDuplicateMemberName,Lr,{memberName:$n,enumName:P}),we.add($n);let ra={enumName:P,explicitType:K,memberName:$n};switch(Yr.id=Lr,fi.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"boolean"),Yr.init=fi.value,At.booleanMembers.push(this.finishNode(Yr,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"number"),Yr.init=fi.value,At.numberMembers.push(this.finishNode(Yr,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"string"),Yr.init=fi.value,At.stringMembers.push(this.finishNode(Yr,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(fi.loc,ra);case"none":switch(K){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(fi.loc,ra);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(fi.loc,ra);break;default:At.defaultedMembers.push(this.finishNode(Yr,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:At,hasUnknownMembers:sr}}flowEnumStringMembers(P,K,{enumName:we}){if(P.length===0)return K;if(K.length===0)return P;if(K.length>P.length){for(let At of P)this.flowEnumErrorStringMemberInconsistentlyInitialized(At,{enumName:we});return K}else{for(let At of K)this.flowEnumErrorStringMemberInconsistentlyInitialized(At,{enumName:we});return P}}flowEnumParseExplicitType({enumName:P}){if(!this.eatContextual(102))return null;if(!qr(this.state.type))throw this.raise(Fs.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:P});let{value:K}=this.state;return this.next(),K!=="boolean"&&K!=="number"&&K!=="string"&&K!=="symbol"&&this.raise(Fs.EnumInvalidExplicitType,this.state.startLoc,{enumName:P,invalidEnumType:K}),K}flowEnumBody(P,K){let we=K.name,At=K.loc.start,sr=this.flowEnumParseExplicitType({enumName:we});this.expect(5);let{members:Yr,hasUnknownMembers:Lr}=this.flowEnumMembers({enumName:we,explicitType:sr});switch(P.hasUnknownMembers=Lr,sr){case"boolean":return P.explicitType=!0,P.members=Yr.booleanMembers,this.expect(8),this.finishNode(P,"EnumBooleanBody");case"number":return P.explicitType=!0,P.members=Yr.numberMembers,this.expect(8),this.finishNode(P,"EnumNumberBody");case"string":return P.explicitType=!0,P.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(P,"EnumStringBody");case"symbol":return P.members=Yr.defaultedMembers,this.expect(8),this.finishNode(P,"EnumSymbolBody");default:{let fi=()=>(P.members=[],this.expect(8),this.finishNode(P,"EnumStringBody"));P.explicitType=!1;let $n=Yr.booleanMembers.length,ra=Yr.numberMembers.length,kc=Yr.stringMembers.length,Dl=Yr.defaultedMembers.length;if(!$n&&!ra&&!kc&&!Dl)return fi();if(!$n&&!ra)return P.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(P,"EnumStringBody");if(!ra&&!kc&&$n>=Dl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return P.members=Yr.booleanMembers,this.expect(8),this.finishNode(P,"EnumBooleanBody")}else if(!$n&&!kc&&ra>=Dl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return P.members=Yr.numberMembers,this.expect(8),this.finishNode(P,"EnumNumberBody")}else return this.raise(Fs.EnumInconsistentMemberValues,At,{enumName:we}),fi()}}}flowParseEnumDeclaration(P){let K=this.parseIdentifier();return P.id=K,P.body=this.flowEnumBody(this.startNode(),K),this.finishNode(P,"EnumDeclaration")}jsxParseOpeningElementAfterName(P){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(P.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(P)}isLookaheadToken_lt(){let P=this.nextTokenStart();if(this.input.charCodeAt(P)===60){let K=this.input.charCodeAt(P+1);return K!==60&&K!==61}return!1}reScan_lt_gt(){let{type:P}=this.state;P===47?(this.state.pos-=1,this.readToken_lt()):P===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:P}=this.state;return P===51?(this.state.pos-=2,this.finishOp(47,1),47):P}maybeUnwrapTypeCastExpression(P){return P.type==="TypeCastExpression"?P.expression:P}},ff=Q`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:se})=>`Expected corresponding JSX closing tag for <${se}>.`,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:({unexpected:se,HTMLEntity:P})=>`Unexpected token \`${se}\`. Did you mean \`${P}\` or \`{'${se}'}\`?`,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 Zs(se){return se?se.type==="JSXOpeningFragment"||se.type==="JSXClosingFragment":!1}function io(se){if(se.type==="JSXIdentifier")return se.name;if(se.type==="JSXNamespacedName")return se.namespace.name+":"+se.name.name;if(se.type==="JSXMemberExpression")return io(se.object)+"."+io(se.property);throw new Error("Node had unexpected type: "+se.type)}var Ea=se=>class extends se{jsxReadToken(){let P="",K=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(ff.UnterminatedJsxContent,this.state.startLoc);let we=this.input.charCodeAt(this.state.pos);switch(we){case 60:case 123:if(this.state.pos===this.state.start){we===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(we);return}P+=this.input.slice(K,this.state.pos),this.finishToken(142,P);return;case 38:P+=this.input.slice(K,this.state.pos),P+=this.jsxReadEntity(),K=this.state.pos;break;case 62:case 125:default:Vs(we)?(P+=this.input.slice(K,this.state.pos),P+=this.jsxReadNewLine(!0),K=this.state.pos):++this.state.pos}}}jsxReadNewLine(P){let K=this.input.charCodeAt(this.state.pos),we;return++this.state.pos,K===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,we=P?` `:`\r -`):we=String.fromCharCode(K),++this.state.curLine,this.state.lineStart=this.state.pos,we}jsxReadString(P){let K="",we=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(J.UnterminatedString,this.state.startLoc);let At=this.input.charCodeAt(this.state.pos);if(At===P)break;At===38?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadEntity(),we=this.state.pos):Vs(At)?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadNewLine(!1),we=this.state.pos):++this.state.pos}K+=this.input.slice(we,this.state.pos++),this.finishToken(134,K)}jsxReadEntity(){let P=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let K=10;this.codePointAtPos(this.state.pos)===120&&(K=16,++this.state.pos);let we=this.readInt(K,void 0,!1,"bail");if(we!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(we)}else{let K=0,we=!1;for(;K++<10&&this.state.pos1){for(let we=0;we0){if(K&256){let At=!!(K&512),sr=(we&4)>0;return At!==sr}return!0}return K&128&&(we&8)>0?se.names.get(P)&2?!!(K&1):!1:K&2&&(we&1)>0?!0:super.isRedeclaredInScope(se,P,K)}checkLocalExport(se){let{name:P}=se;if(this.hasImport(P))return;let K=this.scopeStack.length;for(let we=K-1;we>=0;we--){let At=this.scopeStack[we].tsNames.get(P);if((At&1)>0||(At&16)>0)return}super.checkLocalExport(se)}},On=se=>se.type==="ParenthesizedExpression"?On(se.expression):se,di=class extends ls{toAssignable(se,P=!1){var K,we;let At;switch((se.type==="ParenthesizedExpression"||(K=se.extra)!=null&&K.parenthesized)&&(At=On(se),P?At.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(J.InvalidParenthesizedAssignment,se):At.type!=="MemberExpression"&&!this.isOptionalMemberExpression(At)&&this.raise(J.InvalidParenthesizedAssignment,se):this.raise(J.InvalidParenthesizedAssignment,se)),se.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":se.type="ObjectPattern";for(let Yr=0,Lr=se.properties.length,fi=Lr-1;Yrwe.type!=="ObjectMethod"&&(At===K||we.type!=="SpreadElement")&&this.isAssignable(we))}case"ObjectProperty":return this.isAssignable(se.value);case"SpreadElement":return this.isAssignable(se.argument);case"ArrayExpression":return se.elements.every(K=>K===null||this.isAssignable(K));case"AssignmentExpression":return se.operator==="=";case"ParenthesizedExpression":return this.isAssignable(se.expression);case"MemberExpression":case"OptionalMemberExpression":return!P;default:return!1}}toReferencedList(se,P){return se}toReferencedListDeep(se,P){this.toReferencedList(se,P);for(let K of se)K?.type==="ArrayExpression"&&this.toReferencedListDeep(K.elements)}parseSpread(se){let P=this.startNode();return this.next(),P.argument=this.parseMaybeAssignAllowIn(se,void 0),this.finishNode(P,"SpreadElement")}parseRestBinding(){let se=this.startNode();return this.next(),se.argument=this.parseBindingAtom(),this.finishNode(se,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let se=this.startNode();return this.next(),se.elements=this.parseBindingList(3,93,1),this.finishNode(se,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(se,P,K){let we=K&1,At=[],sr=!0;for(;!this.eat(se);)if(sr?sr=!1:this.expect(12),we&&this.match(12))At.push(null);else{if(this.eat(se))break;if(this.match(21)){let Yr=this.parseRestBinding();if((this.hasPlugin("flow")||K&2)&&(Yr=this.parseFunctionParamType(Yr)),At.push(Yr),!this.checkCommaAfterRest(P)){this.expect(se);break}}else{let Yr=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(J.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)Yr.push(this.parseDecorator());At.push(this.parseAssignableListItem(K,Yr))}}return At}parseBindingRestProperty(se){return this.next(),se.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(se,"RestElement")}parseBindingProperty(){let{type:se,startLoc:P}=this.state;if(se===21)return this.parseBindingRestProperty(this.startNode());let K=this.startNode();return se===139?(this.expectPlugin("destructuringPrivate",P),this.classScope.usePrivateName(this.state.value,P),K.key=this.parsePrivateName()):this.parsePropertyName(K),K.method=!1,this.parseObjPropValue(K,P,!1,!1,!0,!1)}parseAssignableListItem(se,P){let K=this.parseMaybeDefault();(this.hasPlugin("flow")||se&2)&&this.parseFunctionParamType(K);let we=this.parseMaybeDefault(K.loc.start,K);return P.length&&(K.decorators=P),we}parseFunctionParamType(se){return se}parseMaybeDefault(se,P){var K,we;if((K=se)!=null||(se=this.state.startLoc),P=(we=P)!=null?we:this.parseBindingAtom(),!this.eat(29))return P;let At=this.startNodeAt(se);return At.left=P,At.right=this.parseMaybeAssignAllowIn(),this.finishNode(At,"AssignmentPattern")}isValidLVal(se,P,K){switch(se){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(se){return se.type==="OptionalMemberExpression"}checkLVal(se,P,K=64,we=!1,At=!1,sr=!1){var Yr;let Lr=se.type;if(this.isObjectMethod(se))return;let fi=this.isOptionalMemberExpression(se);if(fi||Lr==="MemberExpression"){fi&&(this.expectPlugin("optionalChainingAssign",se.loc.start),P.type!=="AssignmentExpression"&&this.raise(J.InvalidLhsOptionalChaining,se,{ancestor:P})),K!==64&&this.raise(J.InvalidPropertyBindingPattern,se);return}if(Lr==="Identifier"){this.checkIdentifier(se,K,At);let{name:Bl}=se;we&&(we.has(Bl)?this.raise(J.ParamDupe,se):we.add(Bl));return}let $n=this.isValidLVal(Lr,!(sr||(Yr=se.extra)!=null&&Yr.parenthesized)&&P.type==="AssignmentExpression",K);if($n===!0)return;if($n===!1){let Bl=K===64?J.InvalidLhs:J.InvalidLhsBinding;this.raise(Bl,se,{ancestor:P});return}let ra,kc;typeof $n=="string"?(ra=$n,kc=Lr==="ParenthesizedExpression"):[ra,kc]=$n;let Dl=Lr==="ArrayPattern"||Lr==="ObjectPattern"?{type:Lr}:P,ca=se[ra];if(Array.isArray(ca))for(let Bl of ca)Bl&&this.checkLVal(Bl,Dl,K,we,At,kc);else ca&&this.checkLVal(ca,Dl,K,we,At,kc)}checkIdentifier(se,P,K=!1){this.state.strict&&(K?Xa(se.name,this.inModule):Ws(se.name))&&(P===64?this.raise(J.StrictEvalArguments,se,{referenceName:se.name}):this.raise(J.StrictEvalArgumentsBinding,se,{bindingName:se.name})),P&8192&&se.name==="let"&&this.raise(J.LetInLexicalBinding,se),P&64||this.declareNameFromIdentifier(se,P)}declareNameFromIdentifier(se,P){this.scope.declareName(se.name,P,se.loc.start)}checkToRestConversion(se,P){switch(se.type){case"ParenthesizedExpression":this.checkToRestConversion(se.expression,P);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(P)break;default:this.raise(J.InvalidRestAssignmentPattern,se)}}checkCommaAfterRest(se){return this.match(12)?(this.raise(this.lookaheadCharCode()===se?J.RestTrailingComma:J.ElementAfterRest,this.state.startLoc),!0):!1}};function aa(se){if(se==null)throw new Error(`Unexpected ${se} value.`);return se}function Bo(se){if(!se)throw new Error("Assert fail")}var us=Q`typescript`({AbstractMethodHasImplementation:({methodName:se})=>`Method '${se}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:se})=>`Property '${se}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"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:({kind:se})=>`'declare' is not allowed in ${se}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:se})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:se})=>`Duplicate modifier: '${se}'.`,EmptyHeritageClauseType:({token:se})=>`'${se}' 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:({modifiers:se})=>`'${se[0]}' modifier cannot be used with '${se[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:se})=>`Index signatures cannot have an accessibility modifier ('${se}').`,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:({modifier:se})=>`'${se}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:se})=>`'${se}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:se})=>`'${se}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:se})=>`'${se[0]}' modifier must precede '${se[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.",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:({modifier:se})=>`Private elements cannot have an accessibility modifier ('${se}').`,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.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:se})=>`Single type parameter ${se} should have a trailing comma. Example usage: <${se},>.`,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:({type:se})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${se}.`});function Xl(se){switch(se){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 WA(se){return se==="private"||se==="public"||se==="protected"}function If(se){return se==="in"||se==="out"}var rf=se=>class extends se{constructor(...P){super(...P),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:us.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter})}getScopeHandler(){return Dr}tsIsIdentifier(){return qr(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(P,K){if(!qr(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let we=this.state.value;if(P.includes(we)){if(K&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return we}}tsParseModifiers({allowedModifiers:P,disallowedModifiers:K,stopOnStartOfClassStaticBlock:we,errorTemplate:At=us.InvalidModifierOnTypeMember},sr){let Yr=(fi,$n,ra,kc)=>{$n===ra&&sr[kc]&&this.raise(us.InvalidModifiersOrder,fi,{orderedModifiers:[ra,kc]})},Lr=(fi,$n,ra,kc)=>{(sr[ra]&&$n===kc||sr[kc]&&$n===ra)&&this.raise(us.IncompatibleModifiers,fi,{modifiers:[ra,kc]})};for(;;){let{startLoc:fi}=this.state,$n=this.tsParseModifier(P.concat(K??[]),we);if(!$n)break;WA($n)?sr.accessibility?this.raise(us.DuplicateAccessibilityModifier,fi,{modifier:$n}):(Yr(fi,$n,$n,"override"),Yr(fi,$n,$n,"static"),Yr(fi,$n,$n,"readonly"),sr.accessibility=$n):If($n)?(sr[$n]&&this.raise(us.DuplicateModifier,fi,{modifier:$n}),sr[$n]=!0,Yr(fi,$n,"in","out")):(hasOwnProperty.call(sr,$n)?this.raise(us.DuplicateModifier,fi,{modifier:$n}):(Yr(fi,$n,"static","readonly"),Yr(fi,$n,"static","override"),Yr(fi,$n,"override","readonly"),Yr(fi,$n,"abstract","override"),Lr(fi,$n,"declare","override"),Lr(fi,$n,"static","abstract")),sr[$n]=!0),K!=null&&K.includes($n)&&this.raise(At,fi,{modifier:$n})}}tsIsListTerminator(P){switch(P){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(P,K){let we=[];for(;!this.tsIsListTerminator(P);)we.push(K());return we}tsParseDelimitedList(P,K,we){return aa(this.tsParseDelimitedListWorker(P,K,!0,we))}tsParseDelimitedListWorker(P,K,we,At){let sr=[],Yr=-1;for(;!this.tsIsListTerminator(P);){Yr=-1;let Lr=K();if(Lr==null)return;if(sr.push(Lr),this.eat(12)){Yr=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(P))break;we&&this.expect(12);return}return At&&(At.value=Yr),sr}tsParseBracketedList(P,K,we,At,sr){At||(we?this.expect(0):this.expect(47));let Yr=this.tsParseDelimitedList(P,K,sr);return we?this.expect(3):this.expect(48),Yr}tsParseImportType(){let P=this.startNode();return this.expect(83),this.expect(10),this.match(134)?P.argument=this.parseStringLiteral(this.state.value):(this.raise(us.UnsupportedImportTypeArgument,this.state.startLoc),P.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(P.options=super.parseMaybeAssignAllowIn(),this.eat(12)):P.options=null,this.expect(11),this.eat(16)&&(P.qualifier=this.tsParseEntityName(3)),this.match(47)&&(P.typeParameters=this.tsParseTypeArguments()),this.finishNode(P,"TSImportType")}tsParseEntityName(P){let K;if(P&1&&this.match(78))if(P&2)K=this.parseIdentifier(!0);else{let we=this.startNode();this.next(),K=this.finishNode(we,"ThisExpression")}else K=this.parseIdentifier(!!(P&1));for(;this.eat(16);){let we=this.startNodeAtNode(K);we.left=K,we.right=this.parseIdentifier(!!(P&1)),K=this.finishNode(we,"TSQualifiedName")}return K}tsParseTypeReference(){let P=this.startNode();return P.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(P.typeParameters=this.tsParseTypeArguments()),this.finishNode(P,"TSTypeReference")}tsParseThisTypePredicate(P){this.next();let K=this.startNodeAtNode(P);return K.parameterName=P,K.typeAnnotation=this.tsParseTypeAnnotation(!1),K.asserts=!1,this.finishNode(K,"TSTypePredicate")}tsParseThisTypeNode(){let P=this.startNode();return this.next(),this.finishNode(P,"TSThisType")}tsParseTypeQuery(){let P=this.startNode();return this.expect(87),this.match(83)?P.exprName=this.tsParseImportType():P.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(P.typeParameters=this.tsParseTypeArguments()),this.finishNode(P,"TSTypeQuery")}tsParseTypeParameter(P){let K=this.startNode();return P(K),K.name=this.tsParseTypeParameterName(),K.constraint=this.tsEatThenParseType(81),K.default=this.tsEatThenParseType(29),this.finishNode(K,"TSTypeParameter")}tsTryParseTypeParameters(P){if(this.match(47))return this.tsParseTypeParameters(P)}tsParseTypeParameters(P){let K=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let we={value:-1};return K.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,P),!1,!0,we),K.params.length===0&&this.raise(us.EmptyTypeParameters,K),we.value!==-1&&this.addExtra(K,"trailingComma",we.value),this.finishNode(K,"TSTypeParameterDeclaration")}tsFillSignature(P,K){let we=P===19,At="parameters",sr="typeAnnotation";K.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),K[At]=this.tsParseBindingListForSignature(),we?K[sr]=this.tsParseTypeOrTypePredicateAnnotation(P):this.match(P)&&(K[sr]=this.tsParseTypeOrTypePredicateAnnotation(P))}tsParseBindingListForSignature(){let P=super.parseBindingList(11,41,2);for(let K of P){let{type:we}=K;(we==="AssignmentPattern"||we==="TSParameterProperty")&&this.raise(us.UnsupportedSignatureParameterKind,K,{type:we})}return P}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(P,K){return this.tsFillSignature(14,K),this.tsParseTypeMemberSemicolon(),this.finishNode(K,P)}tsIsUnambiguouslyIndexSignature(){return this.next(),qr(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(P){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let K=this.parseIdentifier();K.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(K),this.expect(3),P.parameters=[K];let we=this.tsTryParseTypeAnnotation();return we&&(P.typeAnnotation=we),this.tsParseTypeMemberSemicolon(),this.finishNode(P,"TSIndexSignature")}tsParsePropertyOrMethodSignature(P,K){this.eat(17)&&(P.optional=!0);let we=P;if(this.match(10)||this.match(47)){K&&this.raise(us.ReadonlyForMethodSignature,P);let At=we;At.kind&&this.match(47)&&this.raise(us.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,At),this.tsParseTypeMemberSemicolon();let sr="parameters",Yr="typeAnnotation";if(At.kind==="get")At[sr].length>0&&(this.raise(J.BadGetterArity,this.state.curPosition()),this.isThisParam(At[sr][0])&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(At.kind==="set"){if(At[sr].length!==1)this.raise(J.BadSetterArity,this.state.curPosition());else{let Lr=At[sr][0];this.isThisParam(Lr)&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()),Lr.type==="Identifier"&&Lr.optional&&this.raise(us.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),Lr.type==="RestElement"&&this.raise(us.SetAccessorCannotHaveRestParameter,this.state.curPosition())}At[Yr]&&this.raise(us.SetAccessorCannotHaveReturnType,At[Yr])}else At.kind="method";return this.finishNode(At,"TSMethodSignature")}else{let At=we;K&&(At.readonly=!0);let sr=this.tsTryParseTypeAnnotation();return sr&&(At.typeAnnotation=sr),this.tsParseTypeMemberSemicolon(),this.finishNode(At,"TSPropertySignature")}}tsParseTypeMember(){let P=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",P);if(this.match(77)){let we=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",P):(P.key=this.createIdentifier(we,"new"),this.tsParsePropertyOrMethodSignature(P,!1))}return this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},P),this.tsTryParseIndexSignature(P)||(super.parsePropertyName(P),!P.computed&&P.key.type==="Identifier"&&(P.key.name==="get"||P.key.name==="set")&&this.tsTokenCanFollowModifier()&&(P.kind=P.key.name,super.parsePropertyName(P)),this.tsParsePropertyOrMethodSignature(P,!!P.readonly))}tsParseTypeLiteral(){let P=this.startNode();return P.members=this.tsParseObjectTypeMembers(),this.finishNode(P,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let P=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),P}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let P=this.startNode();this.expect(5),this.match(53)?(P.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(P.readonly=!0),this.expect(0);{let K=this.startNode();K.name=this.tsParseTypeParameterName(),K.constraint=this.tsExpectThenParseType(58),P.typeParameter=this.finishNode(K,"TSTypeParameter")}return P.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(P.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(P.optional=!0),P.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(P,"TSMappedType")}tsParseTupleType(){let P=this.startNode();P.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let K=!1;return P.elementTypes.forEach(we=>{let{type:At}=we;K&&At!=="TSRestType"&&At!=="TSOptionalType"&&!(At==="TSNamedTupleMember"&&we.optional)&&this.raise(us.OptionalTypeBeforeRequired,we),K||(K=At==="TSNamedTupleMember"&&we.optional||At==="TSOptionalType")}),this.finishNode(P,"TSTupleType")}tsParseTupleElementType(){let P=this.state.startLoc,K=this.eat(21),{startLoc:we}=this.state,At,sr,Yr,Lr,fi=ke(this.state.type)?this.lookaheadCharCode():null;if(fi===58)At=!0,Yr=!1,sr=this.parseIdentifier(!0),this.expect(14),Lr=this.tsParseType();else if(fi===63){Yr=!0;let $n=this.state.value,ra=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(At=!0,sr=this.createIdentifier(this.startNodeAt(we),$n),this.expect(17),this.expect(14),Lr=this.tsParseType()):(At=!1,Lr=ra,this.expect(17))}else Lr=this.tsParseType(),Yr=this.eat(17),At=this.eat(14);if(At){let $n;sr?($n=this.startNodeAt(we),$n.optional=Yr,$n.label=sr,$n.elementType=Lr,this.eat(17)&&($n.optional=!0,this.raise(us.TupleOptionalAfterType,this.state.lastTokStartLoc))):($n=this.startNodeAt(we),$n.optional=Yr,this.raise(us.InvalidTupleMemberLabel,Lr),$n.label=Lr,$n.elementType=this.tsParseType()),Lr=this.finishNode($n,"TSNamedTupleMember")}else if(Yr){let $n=this.startNodeAt(we);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSOptionalType")}if(K){let $n=this.startNodeAt(P);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSRestType")}return Lr}tsParseParenthesizedType(){let P=this.startNode();return this.expect(10),P.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(P,"TSParenthesizedType")}tsParseFunctionOrConstructorType(P,K){let we=this.startNode();return P==="TSConstructorType"&&(we.abstract=!!K,K&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,we)),this.finishNode(we,P)}tsParseLiteralTypeNode(){let P=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:P.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(P,"TSLiteralType")}tsParseTemplateLiteralType(){{let P=this.startNode();return P.literal=super.parseTemplate(!1),this.finishNode(P,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let P=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(P):P}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let P=this.startNode(),K=this.lookahead();return K.type!==135&&K.type!==136&&this.unexpected(),P.literal=this.parseMaybeUnary(),this.finishNode(P,"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:P}=this.state;if(qr(P)||P===88||P===84){let K=P===88?"TSVoidKeyword":P===84?"TSNullKeyword":Xl(this.state.value);if(K!==void 0&&this.lookaheadCharCode()!==46){let we=this.startNode();return this.next(),this.finishNode(we,K)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:P}=this.state,K=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let we=this.startNodeAt(P);we.elementType=K,this.expect(3),K=this.finishNode(we,"TSArrayType")}else{let we=this.startNodeAt(P);we.objectType=K,we.indexType=this.tsParseType(),this.expect(3),K=this.finishNode(we,"TSIndexedAccessType")}return K}tsParseTypeOperator(){let P=this.startNode(),K=this.state.value;return this.next(),P.operator=K,P.typeAnnotation=this.tsParseTypeOperatorOrHigher(),K==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(P),this.finishNode(P,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(P){switch(P.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(us.UnexpectedReadonly,P)}}tsParseInferType(){let P=this.startNode();this.expectContextual(115);let K=this.startNode();return K.name=this.tsParseTypeParameterName(),K.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),P.typeParameter=this.finishNode(K,"TSTypeParameter"),this.finishNode(P,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let P=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return P}}tsParseTypeOperatorOrHigher(){return Gc(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(P,K,we){let At=this.startNode(),sr=this.eat(we),Yr=[];do Yr.push(K());while(this.eat(we));return Yr.length===1&&!sr?Yr[0]:(At.types=Yr,this.finishNode(At,P))}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(qr(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:P}=this.state,K=P.length;try{return this.parseObjectLike(8,!0),P.length===K}catch{return!1}}if(this.match(0)){this.next();let{errors:P}=this.state,K=P.length;try{return super.parseBindingList(3,93,1),P.length===K}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(P){return this.tsInType(()=>{let K=this.startNode();this.expect(P);let we=this.startNode(),At=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(At&&this.match(78)){let Lr=this.tsParseThisTypeOrThisTypePredicate();return Lr.type==="TSThisType"?(we.parameterName=Lr,we.asserts=!0,we.typeAnnotation=null,Lr=this.finishNode(we,"TSTypePredicate")):(this.resetStartLocationFromNode(Lr,we),Lr.asserts=!0),K.typeAnnotation=Lr,this.finishNode(K,"TSTypeAnnotation")}let sr=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!sr)return At?(we.parameterName=this.parseIdentifier(),we.asserts=At,we.typeAnnotation=null,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,K);let Yr=this.tsParseTypeAnnotation(!1);return we.parameterName=sr,we.typeAnnotation=Yr,we.asserts=At,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let P=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),P}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let P=this.state.containsEsc;return this.next(),!qr(this.state.type)&&!this.match(78)?!1:(P&&this.raise(J.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(P=!0,K=this.startNode()){return this.tsInType(()=>{P&&this.expect(14),K.typeAnnotation=this.tsParseType()}),this.finishNode(K,"TSTypeAnnotation")}tsParseType(){Bo(this.state.inType);let P=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return P;let K=this.startNodeAtNode(P);return K.checkType=P,K.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),K.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),K.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(K,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&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(us.ReservedTypeAssertion,this.state.startLoc);let P=this.startNode();return P.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),P.expression=this.parseMaybeUnary(),this.finishNode(P,"TSTypeAssertion")}tsParseHeritageClause(P){let K=this.state.startLoc,we=this.tsParseDelimitedList("HeritageClauseElement",()=>{let At=this.startNode();return At.expression=this.tsParseEntityName(3),this.match(47)&&(At.typeParameters=this.tsParseTypeArguments()),this.finishNode(At,"TSExpressionWithTypeArguments")});return we.length||this.raise(us.EmptyHeritageClauseType,K,{token:P}),we}tsParseInterfaceDeclaration(P,K={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),K.declare&&(P.declare=!0),qr(this.state.type)?(P.id=this.parseIdentifier(),this.checkIdentifier(P.id,130)):(P.id=null,this.raise(us.MissingInterfaceName,this.state.startLoc)),P.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(P.extends=this.tsParseHeritageClause("extends"));let we=this.startNode();return we.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),P.body=this.finishNode(we,"TSInterfaceBody"),this.finishNode(P,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(P){return P.id=this.parseIdentifier(),this.checkIdentifier(P.id,2),P.typeAnnotation=this.tsInType(()=>{if(P.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let K=this.startNode();return this.next(),this.finishNode(K,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(P,"TSTypeAliasDeclaration")}tsInTopLevelContext(P){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return P()}finally{this.state.context=K}}else return P()}tsInType(P){let K=this.state.inType;this.state.inType=!0;try{return P()}finally{this.state.inType=K}}tsInDisallowConditionalTypesContext(P){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return P()}finally{this.state.inDisallowConditionalTypesContext=K}}tsInAllowConditionalTypesContext(P){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return P()}finally{this.state.inDisallowConditionalTypesContext=K}}tsEatThenParseType(P){if(this.match(P))return this.tsNextThenParseType()}tsExpectThenParseType(P){return this.tsInType(()=>(this.expect(P),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let P=this.startNode();return P.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(P.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(P,"TSEnumMember")}tsParseEnumDeclaration(P,K={}){return K.const&&(P.const=!0),K.declare&&(P.declare=!0),this.expectContextual(126),P.id=this.parseIdentifier(),this.checkIdentifier(P.id,P.const?8971:8459),this.expect(5),P.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(P,"TSEnumDeclaration")}tsParseEnumBody(){let P=this.startNode();return this.expect(5),P.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(P,"TSEnumBody")}tsParseModuleBlock(){let P=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(P.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(P,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(P,K=!1){if(P.id=this.parseIdentifier(),K||this.checkIdentifier(P.id,1024),this.eat(16)){let we=this.startNode();this.tsParseModuleOrNamespaceDeclaration(we,!0),P.body=we}else this.scope.enter(256),this.prodParam.enter(0),P.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(P,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(P){return this.isContextual(112)?(P.kind="global",P.global=!0,P.id=this.parseIdentifier()):this.match(134)?(P.kind="module",P.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),P.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(P,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(P,K,we){P.isExport=we||!1,P.id=K||this.parseIdentifier(),this.checkIdentifier(P.id,4096),this.expect(29);let At=this.tsParseModuleReference();return P.importKind==="type"&&At.type!=="TSExternalModuleReference"&&this.raise(us.ImportAliasHasImportType,At),P.moduleReference=At,this.semicolon(),this.finishNode(P,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let P=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),P.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(P,"TSExternalModuleReference")}tsLookAhead(P){let K=this.state.clone(),we=P();return this.state=K,we}tsTryParseAndCatch(P){let K=this.tryParse(we=>P()||we());if(!(K.aborted||!K.node))return K.error&&(this.state=K.failState),K.node}tsTryParse(P){let K=this.state.clone(),we=P();if(we!==void 0&&we!==!1)return we;this.state=K}tsTryParseDeclare(P){if(this.isLineTerminator())return;let K=this.state.type,we;return this.isContextual(100)&&(K=74,we="let"),this.tsInAmbientContext(()=>{switch(K){case 68:return P.declare=!0,super.parseFunctionStatement(P,!1,!1);case 80:return P.declare=!0,this.parseClass(P,!0,!1);case 126:return this.tsParseEnumDeclaration(P,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(P);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(P.declare=!0,this.parseVarStatement(P,we||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(P,{const:!0,declare:!0}));case 129:{let At=this.tsParseInterfaceDeclaration(P,{declare:!0});if(At)return At}default:if(qr(K))return this.tsParseDeclaration(P,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(P,K,we){switch(K.name){case"declare":{let At=this.tsTryParseDeclare(P);return At&&(At.declare=!0),At}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let At=P;return At.kind="global",P.global=!0,At.id=K,At.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(At,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(P,K.name,!1,we)}}tsParseDeclaration(P,K,we,At){switch(K){case"abstract":if(this.tsCheckLineTerminator(we)&&(this.match(80)||qr(this.state.type)))return this.tsParseAbstractDeclaration(P,At);break;case"module":if(this.tsCheckLineTerminator(we)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(P);if(qr(this.state.type))return P.kind="module",this.tsParseModuleOrNamespaceDeclaration(P)}break;case"namespace":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return P.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(P);break;case"type":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return this.tsParseTypeAliasDeclaration(P);break}}tsCheckLineTerminator(P){return P?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(P){if(!this.match(47))return;let K=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let we=this.tsTryParseAndCatch(()=>{let At=this.startNodeAt(P);return At.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(At),At.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),At});if(this.state.maybeInArrowParameters=K,!!we)return super.parseArrowExpression(we,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let P=this.startNode();return P.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),P.params.length===0?this.raise(us.EmptyTypeArguments,P):!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(P,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return ol(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(P,K){let we=this.state.startLoc,At={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},At);let sr=At.accessibility,Yr=At.override,Lr=At.readonly;!(P&4)&&(sr||Lr||Yr)&&this.raise(us.UnexpectedParameterModifier,we);let fi=this.parseMaybeDefault();P&2&&this.parseFunctionParamType(fi);let $n=this.parseMaybeDefault(fi.loc.start,fi);if(sr||Lr||Yr){let ra=this.startNodeAt(we);return K.length&&(ra.decorators=K),sr&&(ra.accessibility=sr),Lr&&(ra.readonly=Lr),Yr&&(ra.override=Yr),$n.type!=="Identifier"&&$n.type!=="AssignmentPattern"&&this.raise(us.UnsupportedParameterPropertyKind,ra),ra.parameter=$n,this.finishNode(ra,"TSParameterProperty")}return K.length&&(fi.decorators=K),$n}isSimpleParameter(P){return P.type==="TSParameterProperty"&&super.isSimpleParameter(P.parameter)||super.isSimpleParameter(P)}tsDisallowOptionalPattern(P){for(let K of P.params)K.type!=="Identifier"&&K.optional&&!this.state.isAmbientContext&&this.raise(us.PatternIsOptional,K)}setArrowFunctionParameters(P,K,we){super.setArrowFunctionParameters(P,K,we),this.tsDisallowOptionalPattern(P)}parseFunctionBodyAndFinish(P,K,we=!1){this.match(14)&&(P.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let At=K==="FunctionDeclaration"?"TSDeclareFunction":K==="ClassMethod"||K==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return At&&!this.match(5)&&this.isLineTerminator()?this.finishNode(P,At):At==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(us.DeclareFunctionHasImplementation,P),P.declare)?super.parseFunctionBodyAndFinish(P,At,we):(this.tsDisallowOptionalPattern(P),super.parseFunctionBodyAndFinish(P,K,we))}registerFunctionStatementId(P){!P.body&&P.id?this.checkIdentifier(P.id,1024):super.registerFunctionStatementId(P)}tsCheckForInvalidTypeCasts(P){P.forEach(K=>{K?.type==="TSTypeCastExpression"&&this.raise(us.UnexpectedTypeAnnotation,K.typeAnnotation)})}toReferencedList(P,K){return this.tsCheckForInvalidTypeCasts(P),P}parseArrayLike(P,K,we,At){let sr=super.parseArrayLike(P,K,we,At);return sr.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(sr.elements),sr}parseSubscript(P,K,we,At){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let Yr=this.startNodeAt(K);return Yr.expression=P,this.finishNode(Yr,"TSNonNullExpression")}let sr=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(we)return At.stop=!0,P;At.optionalChainMember=sr=!0,this.next()}if(this.match(47)||this.match(51)){let Yr,Lr=this.tsTryParseAndCatch(()=>{if(!we&&this.atPossibleAsyncArrow(P)){let kc=this.tsTryParseGenericAsyncArrowFunction(K);if(kc)return kc}let fi=this.tsParseTypeArgumentsInExpression();if(!fi)return;if(sr&&!this.match(10)){Yr=this.state.curPosition();return}if(Ft(this.state.type)){let kc=super.parseTaggedTemplateExpression(P,K,At);return kc.typeParameters=fi,kc}if(!we&&this.eat(10)){let kc=this.startNodeAt(K);return kc.callee=P,kc.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(kc.arguments),kc.typeParameters=fi,At.optionalChainMember&&(kc.optional=sr),this.finishCallExpression(kc,At.optionalChainMember)}let $n=this.state.type;if($n===48||$n===52||$n!==10&&Nn($n)&&!this.hasPrecedingLineBreak())return;let ra=this.startNodeAt(K);return ra.expression=P,ra.typeParameters=fi,this.finishNode(ra,"TSInstantiationExpression")});if(Yr&&this.unexpected(Yr,10),Lr)return Lr.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(us.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),Lr}return super.parseSubscript(P,K,we,At)}parseNewCallee(P){var K;super.parseNewCallee(P);let{callee:we}=P;we.type==="TSInstantiationExpression"&&!((K=we.extra)!=null&&K.parenthesized)&&(P.typeParameters=we.typeParameters,P.callee=we.expression)}parseExprOp(P,K,we){let At;if(Hr(58)>we&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(At=this.isContextual(120)))){let sr=this.startNodeAt(K);return sr.expression=P,sr.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(At&&this.raise(J.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(sr,At?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(sr,K,we)}return super.parseExprOp(P,K,we)}checkReservedWord(P,K,we,At){this.state.isAmbientContext||super.checkReservedWord(P,K,we,At)}checkImportReflection(P){super.checkImportReflection(P),P.module&&P.importKind!=="value"&&this.raise(us.ImportReflectionHasImportType,P.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(P){if(super.isPotentialImportPhase(P))return!0;if(this.isContextual(130)){let K=this.lookaheadCharCode();return P?K===123||K===42:K!==61}return!P&&this.isContextual(87)}applyImportPhase(P,K,we,At){super.applyImportPhase(P,K,we,At),K?P.exportKind=we==="type"?"type":"value":P.importKind=we==="type"||we==="typeof"?we:"value"}parseImport(P){if(this.match(134))return P.importKind="value",super.parseImport(P);let K;if(qr(this.state.type)&&this.lookaheadCharCode()===61)return P.importKind="value",this.tsParseImportEqualsDeclaration(P);if(this.isContextual(130)){let we=this.parseMaybeImportPhase(P,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(P,we);K=super.parseImportSpecifiersAndAfter(P,we)}else K=super.parseImport(P);return K.importKind==="type"&&K.specifiers.length>1&&K.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(us.TypeImportCannotSpecifyDefaultAndNamed,K),K}parseExport(P,K){if(this.match(83)){let we=P;this.next();let At=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?At=this.parseMaybeImportPhase(we,!1):we.importKind="value",this.tsParseImportEqualsDeclaration(we,At,!0)}else if(this.eat(29)){let we=P;return we.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(we,"TSExportAssignment")}else if(this.eatContextual(93)){let we=P;return this.expectContextual(128),we.id=this.parseIdentifier(),this.semicolon(),this.finishNode(we,"TSNamespaceExportDeclaration")}else return super.parseExport(P,K)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let P=this.startNode();return this.next(),P.abstract=!0,this.parseClass(P,!0,!0)}if(this.match(129)){let P=this.tsParseInterfaceDeclaration(this.startNode());if(P)return P}return super.parseExportDefaultExpression()}parseVarStatement(P,K,we=!1){let{isAmbientContext:At}=this.state,sr=super.parseVarStatement(P,K,we||At);if(!At)return sr;for(let{id:Yr,init:Lr}of sr.declarations)Lr&&(K!=="const"||Yr.typeAnnotation?this.raise(us.InitializerNotAllowedInAmbientContext,Lr):bd(Lr,this.hasPlugin("estree"))||this.raise(us.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,Lr));return sr}parseStatementContent(P,K){if(this.match(75)&&this.isLookaheadContextual("enum")){let we=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(we,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let we=this.tsParseInterfaceDeclaration(this.startNode());if(we)return we}return super.parseStatementContent(P,K)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(P,K){return K.some(we=>WA(we)?P.accessibility===we:!!P[we])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(P,K,we){let At=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:At,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:us.InvalidModifierOnTypeParameterPositions},K);let sr=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(K,At)&&this.raise(us.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(P,K)):this.parseClassMemberWithIsStatic(P,K,we,!!K.static)};K.declare?this.tsInAmbientContext(sr):sr()}parseClassMemberWithIsStatic(P,K,we,At){let sr=this.tsTryParseIndexSignature(K);if(sr){P.body.push(sr),K.abstract&&this.raise(us.IndexSignatureHasAbstract,K),K.accessibility&&this.raise(us.IndexSignatureHasAccessibility,K,{modifier:K.accessibility}),K.declare&&this.raise(us.IndexSignatureHasDeclare,K),K.override&&this.raise(us.IndexSignatureHasOverride,K);return}!this.state.inAbstractClass&&K.abstract&&this.raise(us.NonAbstractClassHasAbstractMethod,K),K.override&&(we.hadSuperClass||this.raise(us.OverrideNotInSubClass,K)),super.parseClassMemberWithIsStatic(P,K,we,At)}parsePostMemberNameModifiers(P){this.eat(17)&&(P.optional=!0),P.readonly&&this.match(10)&&this.raise(us.ClassMethodHasReadonly,P),P.declare&&this.match(10)&&this.raise(us.ClassMethodHasDeclare,P)}parseExpressionStatement(P,K,we){return(K.type==="Identifier"?this.tsParseExpressionStatement(P,K,we):void 0)||super.parseExpressionStatement(P,K,we)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(P,K,we){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(P,K,we);let At=this.tryParse(()=>super.parseConditional(P,K));return At.node?(At.error&&(this.state=At.failState),At.node):(At.error&&super.setOptionalParametersError(we,At.error),P)}parseParenItem(P,K){let we=super.parseParenItem(P,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(P)),this.match(14)){let At=this.startNodeAt(K);return At.expression=P,At.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(At,"TSTypeCastExpression")}return P}parseExportDeclaration(P){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(P));let K=this.state.startLoc,we=this.eatContextual(125);if(we&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(us.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let At=qr(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(P);return At?((At.type==="TSInterfaceDeclaration"||At.type==="TSTypeAliasDeclaration"||we)&&(P.exportKind="type"),we&&At.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(At,K),At.declare=!0),At):null}parseClassId(P,K,we,At){if((!K||we)&&this.isContextual(113))return;super.parseClassId(P,K,we,P.declare?1024:8331);let sr=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);sr&&(P.typeParameters=sr)}parseClassPropertyAnnotation(P){P.optional||(this.eat(35)?P.definite=!0:this.eat(17)&&(P.optional=!0));let K=this.tsTryParseTypeAnnotation();K&&(P.typeAnnotation=K)}parseClassProperty(P){if(this.parseClassPropertyAnnotation(P),this.state.isAmbientContext&&!(P.readonly&&!P.typeAnnotation)&&this.match(29)&&this.raise(us.DeclareClassFieldHasInitializer,this.state.startLoc),P.abstract&&this.match(29)){let{key:K}=P;this.raise(us.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:K.type==="Identifier"&&!P.computed?K.name:`[${this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end))}]`})}return super.parseClassProperty(P)}parseClassPrivateProperty(P){return P.abstract&&this.raise(us.PrivateElementHasAbstract,P),P.accessibility&&this.raise(us.PrivateElementHasAccessibility,P,{modifier:P.accessibility}),this.parseClassPropertyAnnotation(P),super.parseClassPrivateProperty(P)}parseClassAccessorProperty(P){return this.parseClassPropertyAnnotation(P),P.optional&&this.raise(us.AccessorCannotBeOptional,P),super.parseClassAccessorProperty(P)}pushClassMethod(P,K,we,At,sr,Yr){let Lr=this.tsTryParseTypeParameters(this.tsParseConstModifier);Lr&&sr&&this.raise(us.ConstructorHasTypeParameters,Lr);let{declare:fi=!1,kind:$n}=K;fi&&($n==="get"||$n==="set")&&this.raise(us.DeclareAccessor,K,{kind:$n}),Lr&&(K.typeParameters=Lr),super.pushClassMethod(P,K,we,At,sr,Yr)}pushClassPrivateMethod(P,K,we,At){let sr=this.tsTryParseTypeParameters(this.tsParseConstModifier);sr&&(K.typeParameters=sr),super.pushClassPrivateMethod(P,K,we,At)}declareClassPrivateMethodInScope(P,K){P.type!=="TSDeclareMethod"&&(P.type==="MethodDefinition"&&!hasOwnProperty.call(P.value,"body")||super.declareClassPrivateMethodInScope(P,K))}parseClassSuper(P){super.parseClassSuper(P),P.superClass&&(this.match(47)||this.match(51))&&(P.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(P.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(P,K,we,At,sr,Yr,Lr){let fi=this.tsTryParseTypeParameters(this.tsParseConstModifier);return fi&&(P.typeParameters=fi),super.parseObjPropValue(P,K,we,At,sr,Yr,Lr)}parseFunctionParams(P,K){let we=this.tsTryParseTypeParameters(this.tsParseConstModifier);we&&(P.typeParameters=we),super.parseFunctionParams(P,K)}parseVarId(P,K){super.parseVarId(P,K),P.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(P.definite=!0);let we=this.tsTryParseTypeAnnotation();we&&(P.id.typeAnnotation=we,this.resetEndLocation(P.id))}parseAsyncArrowFromCallExpression(P,K){return this.match(14)&&(P.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(P,K)}parseMaybeAssign(P,K){var we,At,sr,Yr,Lr;let fi,$n,ra;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(fi=this.state.clone(),$n=this.tryParse(()=>super.parseMaybeAssign(P,K),fi),!$n.error)return $n.node;let{context:ca}=this.state,Bl=ca[ca.length-1];(Bl===Se.j_oTag||Bl===Se.j_expr)&&ca.pop()}if(!((we=$n)!=null&&we.error)&&!this.match(47))return super.parseMaybeAssign(P,K);(!fi||fi===this.state)&&(fi=this.state.clone());let kc,Dl=this.tryParse(ca=>{var Bl,eA;kc=this.tsParseTypeParameters(this.tsParseConstModifier);let BA=super.parseMaybeAssign(P,K);return(BA.type!=="ArrowFunctionExpression"||(Bl=BA.extra)!=null&&Bl.parenthesized)&&ca(),((eA=kc)==null?void 0:eA.params.length)!==0&&this.resetStartLocationFromNode(BA,kc),BA.typeParameters=kc,BA},fi);if(!Dl.error&&!Dl.aborted)return kc&&this.reportReservedArrowTypeParam(kc),Dl.node;if(!$n&&(Bo(!this.hasPlugin("jsx")),ra=this.tryParse(()=>super.parseMaybeAssign(P,K),fi),!ra.error))return ra.node;if((At=$n)!=null&&At.node)return this.state=$n.failState,$n.node;if(Dl.node)return this.state=Dl.failState,kc&&this.reportReservedArrowTypeParam(kc),Dl.node;if((sr=ra)!=null&&sr.node)return this.state=ra.failState,ra.node;throw((Yr=$n)==null?void 0:Yr.error)||Dl.error||((Lr=ra)==null?void 0:Lr.error)}reportReservedArrowTypeParam(P){var K;P.params.length===1&&!P.params[0].constraint&&!((K=P.extra)!=null&&K.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(us.ReservedArrowTypeParam,P)}parseMaybeUnary(P,K){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(P,K)}parseArrow(P){if(this.match(14)){let K=this.tryParse(we=>{let At=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&we(),At});if(K.aborted)return;K.thrown||(K.error&&(this.state=K.failState),P.returnType=K.node)}return super.parseArrow(P)}parseFunctionParamType(P){this.eat(17)&&(P.optional=!0);let K=this.tsTryParseTypeAnnotation();return K&&(P.typeAnnotation=K),this.resetEndLocation(P),P}isAssignable(P,K){switch(P.type){case"TSTypeCastExpression":return this.isAssignable(P.expression,K);case"TSParameterProperty":return!0;default:return super.isAssignable(P,K)}}toAssignable(P,K=!1){switch(P.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(P,K);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":K?this.expressionScope.recordArrowParameterBindingError(us.UnexpectedTypeCastInParameter,P):this.raise(us.UnexpectedTypeCastInParameter,P),this.toAssignable(P.expression,K);break;case"AssignmentExpression":!K&&P.left.type==="TSTypeCastExpression"&&(P.left=this.typeCastToParameter(P.left));default:super.toAssignable(P,K)}}toAssignableParenthesizedExpression(P,K){switch(P.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(P.expression,K);break;default:super.toAssignable(P,K)}}checkToRestConversion(P,K){switch(P.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(P.expression,!1);break;default:super.checkToRestConversion(P,K)}}isValidLVal(P,K,we){switch(P){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(we!==64||!K)&&["expression",!0];default:return super.isValidLVal(P,K,we)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(P,K){if(this.match(47)||this.match(51)){let we=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let At=super.parseMaybeDecoratorArguments(P,K);return At.typeParameters=we,At}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(P,K)}checkCommaAfterRest(P){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===P?(this.next(),!1):super.checkCommaAfterRest(P)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(P,K){let we=super.parseMaybeDefault(P,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startthis.isAssignable(K,!0)):super.shouldParseArrow(P)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(P){if(this.match(47)||this.match(51)){let K=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());K&&(P.typeParameters=K)}return super.jsxParseOpeningElementAfterName(P)}getGetterSetterExpectedParamCount(P){let K=super.getGetterSetterExpectedParamCount(P),we=this.getObjectOrClassMethodParams(P)[0];return we&&this.isThisParam(we)?K+1:K}parseCatchClauseParam(){let P=super.parseCatchClauseParam(),K=this.tsTryParseTypeAnnotation();return K&&(P.typeAnnotation=K,this.resetEndLocation(P)),P}tsInAmbientContext(P){let{isAmbientContext:K,strict:we}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return P()}finally{this.state.isAmbientContext=K,this.state.strict=we}}parseClass(P,K,we){let At=this.state.inAbstractClass;this.state.inAbstractClass=!!P.abstract;try{return super.parseClass(P,K,we)}finally{this.state.inAbstractClass=At}}tsParseAbstractDeclaration(P,K){if(this.match(80))return P.abstract=!0,this.maybeTakeDecorators(K,this.parseClass(P,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return P.abstract=!0,this.raise(us.NonClassMethodPropertyHasAbstractModifer,P),this.tsParseInterfaceDeclaration(P)}else this.unexpected(null,80)}parseMethod(P,K,we,At,sr,Yr,Lr){let fi=super.parseMethod(P,K,we,At,sr,Yr,Lr);if(fi.abstract&&(this.hasPlugin("estree")?fi.value:fi).body){let{key:$n}=fi;this.raise(us.AbstractMethodHasImplementation,fi,{methodName:$n.type==="Identifier"&&!fi.computed?$n.name:`[${this.input.slice(this.offsetToSourcePos($n.start),this.offsetToSourcePos($n.end))}]`})}return fi}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(P,K,we,At){return!K&&At?(this.parseTypeOnlyImportExportSpecifier(P,!1,we),this.finishNode(P,"ExportSpecifier")):(P.exportKind="value",super.parseExportSpecifier(P,K,we,At))}parseImportSpecifier(P,K,we,At,sr){return!K&&At?(this.parseTypeOnlyImportExportSpecifier(P,!0,we),this.finishNode(P,"ImportSpecifier")):(P.importKind="value",super.parseImportSpecifier(P,K,we,At,we?4098:4096))}parseTypeOnlyImportExportSpecifier(P,K,we){let At=K?"imported":"local",sr=K?"local":"exported",Yr=P[At],Lr,fi=!1,$n=!0,ra=Yr.loc.start;if(this.isContextual(93)){let Dl=this.parseIdentifier();if(this.isContextual(93)){let ca=this.parseIdentifier();ke(this.state.type)?(fi=!0,Yr=Dl,Lr=K?this.parseIdentifier():this.parseModuleExportName(),$n=!1):(Lr=ca,$n=!1)}else ke(this.state.type)?($n=!1,Lr=K?this.parseIdentifier():this.parseModuleExportName()):(fi=!0,Yr=Dl)}else ke(this.state.type)&&(fi=!0,K?(Yr=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(Yr.name,Yr.loc.start,!0,!0)):Yr=this.parseModuleExportName());fi&&we&&this.raise(K?us.TypeModifierIsUsedInTypeImports:us.TypeModifierIsUsedInTypeExports,ra),P[At]=Yr,P[sr]=Lr;let kc=K?"importKind":"exportKind";P[kc]=fi?"type":"value",$n&&this.eatContextual(93)&&(P[sr]=K?this.parseIdentifier():this.parseModuleExportName()),P[sr]||(P[sr]=Zt(P[At])),K&&this.checkIdentifier(P[sr],fi?4098:4096)}};function op(se){if(se.type!=="MemberExpression")return!1;let{computed:P,property:K}=se;return P&&K.type!=="StringLiteral"&&(K.type!=="TemplateLiteral"||K.expressions.length>0)?!1:XA(se.object)}function bd(se,P){var K;let{type:we}=se;if((K=se.extra)!=null&&K.parenthesized)return!1;if(P){if(we==="Literal"){let{value:At}=se;if(typeof At=="string"||typeof At=="boolean")return!0}}else if(we==="StringLiteral"||we==="BooleanLiteral")return!0;return!!($1(se,P)||Cw(se,P)||we==="TemplateLiteral"&&se.expressions.length===0||op(se))}function $1(se,P){return P?se.type==="Literal"&&(typeof se.value=="number"||"bigint"in se):se.type==="NumericLiteral"||se.type==="BigIntLiteral"}function Cw(se,P){if(se.type==="UnaryExpression"){let{operator:K,argument:we}=se;if(K==="-"&&$1(we,P))return!0}return!1}function XA(se){return se.type==="Identifier"?!0:se.type!=="MemberExpression"||se.computed?!1:XA(se.object)}var Ac=Q`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),Gm=se=>class extends se{parsePlaceholder(P){if(this.match(133)){let K=this.startNode();return this.next(),this.assertNoSpace(),K.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(K,P)}}finishPlaceholder(P,K){let we=P;return(!we.expectedNode||!we.type)&&(we=this.finishNode(we,"Placeholder")),we.expectedNode=K,we}getTokenFromCode(P){P===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(P)}parseExprAtom(P){return this.parsePlaceholder("Expression")||super.parseExprAtom(P)}parseIdentifier(P){return this.parsePlaceholder("Identifier")||super.parseIdentifier(P)}checkReservedWord(P,K,we,At){P!==void 0&&super.checkReservedWord(P,K,we,At)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(P,K,we){return P==="Placeholder"||super.isValidLVal(P,K,we)}toAssignable(P,K){P&&P.type==="Placeholder"&&P.expectedNode==="Expression"?P.expectedNode="Pattern":super.toAssignable(P,K)}chStartsBindingIdentifier(P,K){return!!(super.chStartsBindingIdentifier(P,K)||this.lookahead().type===133)}verifyBreakContinue(P,K){P.label&&P.label.type==="Placeholder"||super.verifyBreakContinue(P,K)}parseExpressionStatement(P,K){var we;if(K.type!=="Placeholder"||(we=K.extra)!=null&&we.parenthesized)return super.parseExpressionStatement(P,K);if(this.match(14)){let sr=P;return sr.label=this.finishPlaceholder(K,"Identifier"),this.next(),sr.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(sr,"LabeledStatement")}this.semicolon();let At=P;return At.name=K.name,this.finishPlaceholder(At,"Statement")}parseBlock(P,K,we){return this.parsePlaceholder("BlockStatement")||super.parseBlock(P,K,we)}parseFunctionId(P){return this.parsePlaceholder("Identifier")||super.parseFunctionId(P)}parseClass(P,K,we){let At=K?"ClassDeclaration":"ClassExpression";this.next();let sr=this.state.strict,Yr=this.parsePlaceholder("Identifier");if(Yr)if(this.match(81)||this.match(133)||this.match(5))P.id=Yr;else{if(we||!K)return P.id=null,P.body=this.finishPlaceholder(Yr,"ClassBody"),this.finishNode(P,At);throw this.raise(Ac.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(P,K,we);return super.parseClassSuper(P),P.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!P.superClass,sr),this.finishNode(P,At)}parseExport(P,K){let we=this.parsePlaceholder("Identifier");if(!we)return super.parseExport(P,K);let At=P;if(!this.isContextual(98)&&!this.match(12))return At.specifiers=[],At.source=null,At.declaration=this.finishPlaceholder(we,"Declaration"),this.finishNode(At,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let sr=this.startNode();return sr.exported=we,At.specifiers=[this.finishNode(sr,"ExportDefaultSpecifier")],super.parseExport(At,K)}isExportDefaultSpecifier(){if(this.match(65)){let P=this.nextTokenStart();if(this.isUnparsedContextual(P,"from")&&this.input.startsWith(Sc(133),this.nextTokenStartSince(P+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(P,K){var we;return(we=P.specifiers)!=null&&we.length?!0:super.maybeParseExportDefaultSpecifier(P,K)}checkExport(P){let{specifiers:K}=P;K!=null&&K.length&&(P.specifiers=K.filter(we=>we.exported.type==="Placeholder")),super.checkExport(P),P.specifiers=K}parseImport(P){let K=this.parsePlaceholder("Identifier");if(!K)return super.parseImport(P);if(P.specifiers=[],!this.isContextual(98)&&!this.match(12))return P.source=this.finishPlaceholder(K,"StringLiteral"),this.semicolon(),this.finishNode(P,"ImportDeclaration");let we=this.startNodeAtNode(K);return we.local=K,P.specifiers.push(this.finishNode(we,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(P)||this.parseNamedImportSpecifiers(P)),this.expectContextual(98),P.source=this.parseImportSource(),this.semicolon(),this.finishNode(P,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Ac.UnexpectedSpace,this.state.lastTokEndLoc)}},JS=se=>class extends se{parseV8Intrinsic(){if(this.match(54)){let P=this.state.startLoc,K=this.startNode();if(this.next(),qr(this.state.type)){let we=this.parseIdentifierName(),At=this.createIdentifier(K,we);if(At.type="V8IntrinsicIdentifier",this.match(10))return At}this.unexpected(P)}}parseExprAtom(P){return this.parseV8Intrinsic()||super.parseExprAtom(P)}},qd=["minimal","fsharp","hack","smart"],hh=["^^","@@","^","%","#"];function Qp(se){if(se.has("decorators")){if(se.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let K=se.get("decorators").decoratorsBeforeExport;if(K!=null&&typeof K!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let we=se.get("decorators").allowCallParenthesized;if(we!=null&&typeof we!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(se.has("flow")&&se.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(se.has("placeholders")&&se.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(se.has("pipelineOperator")){var P;let K=se.get("pipelineOperator").proposal;if(!qd.includes(K)){let At=qd.map(sr=>`"${sr}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${At}.`)}let we=((P=se.get("recordAndTuple"))==null?void 0:P.syntaxType)==="hash";if(K==="hack"){if(se.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(se.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let At=se.get("pipelineOperator").topicToken;if(!hh.includes(At)){let sr=hh.map(Yr=>`"${Yr}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${sr}.`)}if(At==="#"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}else if(K==="smart"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}if(se.has("moduleAttributes")){if(se.has("deprecatedImportAssert")||se.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(se.get("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(se.has("importAssertions")&&se.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!se.has("deprecatedImportAssert")&&se.has("importAttributes")&&se.get("importAttributes").deprecatedAssertSyntax&&se.set("deprecatedImportAssert",{}),se.has("recordAndTuple")){let K=se.get("recordAndTuple").syntaxType;if(K!=null){let we=["hash","bar"];if(!we.includes(K))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+we.map(At=>`'${At}'`).join(", "))}}if(se.has("asyncDoExpressions")&&!se.has("doExpressions")){let K=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw K.missingPlugins="doExpressions",K}if(se.has("optionalChainingAssign")&&se.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var dC={estree:de,jsx:Ea,flow:QA,typescript:rf,v8intrinsic:JS,placeholders:Gm},oE=Object.keys(dC),K_=class extends di{checkProto(se,P,K,we){if(se.type==="SpreadElement"||this.isObjectMethod(se)||se.computed||se.shorthand)return;let At=se.key;if((At.type==="Identifier"?At.name:At.value)==="__proto__"){if(P){this.raise(J.RecordNoProto,At);return}K.used&&(we?we.doubleProtoLoc===null&&(we.doubleProtoLoc=At.loc.start):this.raise(J.DuplicateProto,At)),K.used=!0}}shouldExitDescending(se,P){return se.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(se.start)===P}getExpression(){this.enterInitialScopes(),this.nextToken();let se=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),se.comments=this.comments,se.errors=this.state.errors,this.optionFlags&128&&(se.tokens=this.tokens),se}parseExpression(se,P){return se?this.disallowInAnd(()=>this.parseExpressionBase(P)):this.allowInAnd(()=>this.parseExpressionBase(P))}parseExpressionBase(se){let P=this.state.startLoc,K=this.parseMaybeAssign(se);if(this.match(12)){let we=this.startNodeAt(P);for(we.expressions=[K];this.eat(12);)we.expressions.push(this.parseMaybeAssign(se));return this.toReferencedList(we.expressions),this.finishNode(we,"SequenceExpression")}return K}parseMaybeAssignDisallowIn(se,P){return this.disallowInAnd(()=>this.parseMaybeAssign(se,P))}parseMaybeAssignAllowIn(se,P){return this.allowInAnd(()=>this.parseMaybeAssign(se,P))}setOptionalParametersError(se,P){var K;se.optionalParametersLoc=(K=P?.loc)!=null?K:this.state.startLoc}parseMaybeAssign(se,P){let K=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let Yr=this.parseYield();return P&&(Yr=P.call(this,Yr,K)),Yr}let we;se?we=!1:(se=new bg,we=!0);let{type:At}=this.state;(At===10||qr(At))&&(this.state.potentialArrowAt=this.state.start);let sr=this.parseMaybeConditional(se);if(P&&(sr=P.call(this,sr,K)),Hi(this.state.type)){let Yr=this.startNodeAt(K),Lr=this.state.value;if(Yr.operator=Lr,this.match(29)){this.toAssignable(sr,!0),Yr.left=sr;let fi=K.index;se.doubleProtoLoc!=null&&se.doubleProtoLoc.index>=fi&&(se.doubleProtoLoc=null),se.shorthandAssignLoc!=null&&se.shorthandAssignLoc.index>=fi&&(se.shorthandAssignLoc=null),se.privateKeyLoc!=null&&se.privateKeyLoc.index>=fi&&(this.checkDestructuringPrivate(se),se.privateKeyLoc=null)}else Yr.left=sr;return this.next(),Yr.right=this.parseMaybeAssign(),this.checkLVal(sr,this.finishNode(Yr,"AssignmentExpression")),Yr}else we&&this.checkExpressionErrors(se,!0);return sr}parseMaybeConditional(se){let P=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprOps(se);return this.shouldExitDescending(we,K)?we:this.parseConditional(we,P,se)}parseConditional(se,P,K){if(this.eat(17)){let we=this.startNodeAt(P);return we.test=se,we.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),we.alternate=this.parseMaybeAssign(),this.finishNode(we,"ConditionalExpression")}return se}parseMaybeUnaryOrPrivate(se){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(se)}parseExprOps(se){let P=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseMaybeUnaryOrPrivate(se);return this.shouldExitDescending(we,K)?we:this.parseExprOp(we,P,-1)}parseExprOp(se,P,K){if(this.isPrivateName(se)){let At=this.getPrivateNameSV(se);(K>=Hr(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(J.PrivateInExpectedIn,se,{identifierName:At}),this.classScope.usePrivateName(At,se.loc.start)}let we=this.state.type;if(no(we)&&(this.prodParam.hasIn||!this.match(58))){let At=Hr(we);if(At>K){if(we===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return se;this.checkPipelineAtInfixOperator(se,P)}let sr=this.startNodeAt(P);sr.left=se,sr.operator=this.state.value;let Yr=we===41||we===42,Lr=we===40;if(Lr&&(At=Hr(42)),this.next(),we===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(J.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);sr.right=this.parseExprOpRightExpr(we,At);let fi=this.finishNode(sr,Yr||Lr?"LogicalExpression":"BinaryExpression"),$n=this.state.type;if(Lr&&($n===41||$n===42)||Yr&&$n===40)throw this.raise(J.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(fi,P,K)}}return se}parseExprOpRightExpr(se,P){let K=this.state.startLoc;switch(se){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(P))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(J.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(se,P),K)});default:return this.parseExprOpBaseRightExpr(se,P)}}parseExprOpBaseRightExpr(se,P){let K=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),K,Or(se)?P-1:P)}parseHackPipeBody(){var se;let{startLoc:P}=this.state,K=this.parseMaybeAssign();return b.has(K.type)&&!((se=K.extra)!=null&&se.parenthesized)&&this.raise(J.PipeUnparenthesizedBody,P,{type:K.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(J.PipeTopicUnused,P),K}checkExponentialAfterUnary(se){this.match(57)&&this.raise(J.UnexpectedTokenUnaryExponentiation,se.argument)}parseMaybeUnary(se,P){let K=this.state.startLoc,we=this.isContextual(96);if(we&&this.recordAwaitIfAllowed()){this.next();let Lr=this.parseAwait(K);return P||this.checkExponentialAfterUnary(Lr),Lr}let At=this.match(34),sr=this.startNode();if(Ya(this.state.type)){sr.operator=this.state.value,sr.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let Lr=this.match(89);if(this.next(),sr.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(se,!0),this.state.strict&&Lr){let fi=sr.argument;fi.type==="Identifier"?this.raise(J.StrictDelete,sr):this.hasPropertyAsPrivateName(fi)&&this.raise(J.DeletePrivateField,sr)}if(!At)return P||this.checkExponentialAfterUnary(sr),this.finishNode(sr,"UnaryExpression")}let Yr=this.parseUpdate(sr,At,se);if(we){let{type:Lr}=this.state;if((this.hasPlugin("v8intrinsic")?Nn(Lr):Nn(Lr)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(J.AwaitNotInAsyncContext,K),this.parseAwait(K)}return Yr}parseUpdate(se,P,K){if(P){let sr=se;return this.checkLVal(sr.argument,this.finishNode(sr,"UpdateExpression")),se}let we=this.state.startLoc,At=this.parseExprSubscripts(K);if(this.checkExpressionErrors(K,!1))return At;for(;ga(this.state.type)&&!this.canInsertSemicolon();){let sr=this.startNodeAt(we);sr.operator=this.state.value,sr.prefix=!1,sr.argument=At,this.next(),this.checkLVal(At,At=this.finishNode(sr,"UpdateExpression"))}return At}parseExprSubscripts(se){let P=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprAtom(se);return this.shouldExitDescending(we,K)?we:this.parseSubscripts(we,P)}parseSubscripts(se,P,K){let we={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(se),stop:!1};do se=this.parseSubscript(se,P,K,we),we.maybeAsyncArrow=!1;while(!we.stop);return se}parseSubscript(se,P,K,we){let{type:At}=this.state;if(!K&&At===15)return this.parseBind(se,P,K,we);if(Ft(At))return this.parseTaggedTemplateExpression(se,P,we);let sr=!1;if(At===18){if(K&&(this.raise(J.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return we.stop=!0,se;we.optionalChainMember=sr=!0,this.next()}if(!K&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(se,P,we,sr);{let Yr=this.eat(0);return Yr||sr||this.eat(16)?this.parseMember(se,P,we,Yr,sr):(we.stop=!0,se)}}parseMember(se,P,K,we,At){let sr=this.startNodeAt(P);return sr.object=se,sr.computed=we,we?(sr.property=this.parseExpression(),this.expect(3)):this.match(139)?(se.type==="Super"&&this.raise(J.SuperPrivateField,P),this.classScope.usePrivateName(this.state.value,this.state.startLoc),sr.property=this.parsePrivateName()):sr.property=this.parseIdentifier(!0),K.optionalChainMember?(sr.optional=At,this.finishNode(sr,"OptionalMemberExpression")):this.finishNode(sr,"MemberExpression")}parseBind(se,P,K,we){let At=this.startNodeAt(P);return At.object=se,this.next(),At.callee=this.parseNoCallExpr(),we.stop=!0,this.parseSubscripts(this.finishNode(At,"BindExpression"),P,K)}parseCoverCallAndAsyncArrowHead(se,P,K,we){let At=this.state.maybeInArrowParameters,sr=null;this.state.maybeInArrowParameters=!0,this.next();let Yr=this.startNodeAt(P);Yr.callee=se;let{maybeAsyncArrow:Lr,optionalChainMember:fi}=K;Lr&&(this.expressionScope.enter(Qm()),sr=new bg),fi&&(Yr.optional=we),we?Yr.arguments=this.parseCallExpressionArguments(11):Yr.arguments=this.parseCallExpressionArguments(11,se.type!=="Super",Yr,sr);let $n=this.finishCallExpression(Yr,fi);return Lr&&this.shouldParseAsyncArrow()&&!we?(K.stop=!0,this.checkDestructuringPrivate(sr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),$n=this.parseAsyncArrowFromCallExpression(this.startNodeAt(P),$n)):(Lr&&(this.checkExpressionErrors(sr,!0),this.expressionScope.exit()),this.toReferencedArguments($n)),this.state.maybeInArrowParameters=At,$n}toReferencedArguments(se,P){this.toReferencedListDeep(se.arguments,P)}parseTaggedTemplateExpression(se,P,K){let we=this.startNodeAt(P);return we.tag=se,we.quasi=this.parseTemplate(!0),K.optionalChainMember&&this.raise(J.OptionalChainingNoTemplate,P),this.finishNode(we,"TaggedTemplateExpression")}atPossibleAsyncArrow(se){return se.type==="Identifier"&&se.name==="async"&&this.state.lastTokEndLoc.index===se.end&&!this.canInsertSemicolon()&&se.end-se.start===5&&this.offsetToSourcePos(se.start)===this.state.potentialArrowAt}finishCallExpression(se,P){if(se.callee.type==="Import")if(se.arguments.length===0||se.arguments.length>2)this.raise(J.ImportCallArity,se);else for(let K of se.arguments)K.type==="SpreadElement"&&this.raise(J.ImportCallSpreadArgument,K);return this.finishNode(se,P?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(se,P,K,we){let At=[],sr=!0,Yr=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(se);){if(sr)sr=!1;else if(this.expect(12),this.match(se)){K&&this.addTrailingCommaExtraToNode(K),this.next();break}At.push(this.parseExprListItem(!1,we,P))}return this.state.inFSharpPipelineDirectBody=Yr,At}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(se,P){var K;return this.resetPreviousNodeTrailingComments(P),this.expect(19),this.parseArrowExpression(se,P.arguments,!0,(K=P.extra)==null?void 0:K.trailingCommaLoc),P.innerComments&&Ri(se,P.innerComments),P.callee.trailingComments&&Ri(se,P.callee.trailingComments),se}parseNoCallExpr(){let se=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),se,!0)}parseExprAtom(se){let P,K=null,{type:we}=this.state;switch(we){case 79:return this.parseSuper();case 83:return P=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(P):this.match(10)?this.optionFlags&256?this.parseImportCall(P):this.finishNode(P,"Import"):(this.raise(J.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(P,"Import"));case 78:return P=this.startNode(),this.next(),this.finishNode(P,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134: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 At=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(At)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,se);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,se);case 68:return this.parseFunctionOrFunctionSent();case 26:K=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(K,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{P=this.startNode(),this.next(),P.object=null;let At=P.callee=this.parseNoCallExpr();if(At.type==="MemberExpression")return this.finishNode(P,"BindExpression");throw this.raise(J.UnsupportedBind,At)}case 139:return this.raise(J.PrivateInExpectedIn,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 At=this.getPluginOption("pipelineOperator","proposal");if(At)return this.parseTopicReference(At);this.unexpected();break}case 47:{let At=this.input.codePointAt(this.nextTokenStart());gc(At)||At===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(we===137)return this.parseDecimalLiteral(this.state.value);if(qr(we)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let At=this.state.potentialArrowAt===this.state.start,sr=this.state.containsEsc,Yr=this.parseIdentifier();if(!sr&&Yr.name==="async"&&!this.canInsertSemicolon()){let{type:Lr}=this.state;if(Lr===68)return this.resetPreviousNodeTrailingComments(Yr),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(Yr));if(qr(Lr))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(Yr)):Yr;if(Lr===90)return this.resetPreviousNodeTrailingComments(Yr),this.parseDo(this.startNodeAtNode(Yr),!0)}return At&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(Yr),[Yr],!1)):Yr}else this.unexpected()}}parseTopicReferenceThenEqualsSign(se,P){let K=this.getPluginOption("pipelineOperator","proposal");if(K)return this.state.type=se,this.state.value=P,this.state.pos--,this.state.end--,this.state.endLoc=a(this.state.endLoc,-1),this.parseTopicReference(K);this.unexpected()}parseTopicReference(se){let P=this.startNode(),K=this.state.startLoc,we=this.state.type;return this.next(),this.finishTopicReference(P,K,se,we)}finishTopicReference(se,P,K,we){if(this.testTopicReferenceConfiguration(K,P,we))return K==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(J.PipeTopicUnbound,P),this.registerTopicReference(),this.finishNode(se,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(J.PrimaryTopicNotAllowed,P),this.registerTopicReference(),this.finishNode(se,"PipelinePrimaryTopicReference"));throw this.raise(J.PipeTopicUnconfiguredToken,P,{token:Sc(we)})}testTopicReferenceConfiguration(se,P,K){switch(se){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Sc(K)}]);case"smart":return K===27;default:throw this.raise(J.PipeTopicRequiresHackPipes,P)}}parseAsyncArrowUnaryFunction(se){this.prodParam.enter(VA(!0,this.prodParam.hasYield));let P=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(J.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(se,P,!0)}parseDo(se,P){this.expectPlugin("doExpressions"),P&&this.expectPlugin("asyncDoExpressions"),se.async=P,this.next();let K=this.state.labels;return this.state.labels=[],P?(this.prodParam.enter(2),se.body=this.parseBlock(),this.prodParam.exit()):se.body=this.parseBlock(),this.state.labels=K,this.finishNode(se,"DoExpression")}parseSuper(){let se=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(J.SuperNotAllowed,se):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(J.UnexpectedSuper,se),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(J.UnsupportedSuper,se),this.finishNode(se,"Super")}parsePrivateName(){let se=this.startNode(),P=this.startNodeAt(a(this.state.startLoc,1)),K=this.state.value;return this.next(),se.id=this.createIdentifier(P,K),this.finishNode(se,"PrivateName")}parseFunctionOrFunctionSent(){let se=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let P=this.createIdentifier(this.startNodeAtNode(se),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(se,P,"sent")}return this.parseFunction(se)}parseMetaProperty(se,P,K){se.meta=P;let we=this.state.containsEsc;return se.property=this.parseIdentifier(!0),(se.property.name!==K||we)&&this.raise(J.UnsupportedMetaProperty,se.property,{target:P.name,onlyValidPropertyName:K}),this.finishNode(se,"MetaProperty")}parseImportMetaProperty(se){let P=this.createIdentifier(this.startNodeAtNode(se),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(J.ImportMetaOutsideModule,P),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let K=this.isContextual(105);if(this.expectPlugin(K?"sourcePhaseImports":"deferredImportEvaluation"),!(this.optionFlags&256))throw this.raise(J.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),se.phase=K?"source":"defer",this.parseImportCall(se)}return this.parseMetaProperty(se,P,"meta")}parseLiteralAtNode(se,P,K){return this.addExtra(K,"rawValue",se),this.addExtra(K,"raw",this.input.slice(this.offsetToSourcePos(K.start),this.state.end)),K.value=se,this.next(),this.finishNode(K,P)}parseLiteral(se,P){let K=this.startNode();return this.parseLiteralAtNode(se,P,K)}parseStringLiteral(se){return this.parseLiteral(se,"StringLiteral")}parseNumericLiteral(se){return this.parseLiteral(se,"NumericLiteral")}parseBigIntLiteral(se){return this.parseLiteral(se,"BigIntLiteral")}parseDecimalLiteral(se){return this.parseLiteral(se,"DecimalLiteral")}parseRegExpLiteral(se){let P=this.startNode();return this.addExtra(P,"raw",this.input.slice(this.offsetToSourcePos(P.start),this.state.end)),P.pattern=se.pattern,P.flags=se.flags,this.next(),this.finishNode(P,"RegExpLiteral")}parseBooleanLiteral(se){let P=this.startNode();return P.value=se,this.next(),this.finishNode(P,"BooleanLiteral")}parseNullLiteral(){let se=this.startNode();return this.next(),this.finishNode(se,"NullLiteral")}parseParenAndDistinguishExpression(se){let P=this.state.startLoc,K;this.next(),this.expressionScope.enter(ad());let we=this.state.maybeInArrowParameters,At=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let sr=this.state.startLoc,Yr=[],Lr=new bg,fi=!0,$n,ra;for(;!this.match(11);){if(fi)fi=!1;else if(this.expect(12,Lr.optionalParametersLoc===null?null:Lr.optionalParametersLoc),this.match(11)){ra=this.state.startLoc;break}if(this.match(21)){let ca=this.state.startLoc;if($n=this.state.startLoc,Yr.push(this.parseParenItem(this.parseRestBinding(),ca)),!this.checkCommaAfterRest(41))break}else Yr.push(this.parseMaybeAssignAllowIn(Lr,this.parseParenItem))}let kc=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=we,this.state.inFSharpPipelineDirectBody=At;let Dl=this.startNodeAt(P);return se&&this.shouldParseArrow(Yr)&&(Dl=this.parseArrow(Dl))?(this.checkDestructuringPrivate(Lr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(Dl,Yr,!1),Dl):(this.expressionScope.exit(),Yr.length||this.unexpected(this.state.lastTokStartLoc),ra&&this.unexpected(ra),$n&&this.unexpected($n),this.checkExpressionErrors(Lr,!0),this.toReferencedListDeep(Yr,!0),Yr.length>1?(K=this.startNodeAt(sr),K.expressions=Yr,this.finishNode(K,"SequenceExpression"),this.resetEndLocation(K,kc)):K=Yr[0],this.wrapParenthesis(P,K))}wrapParenthesis(se,P){if(!(this.optionFlags&512))return this.addExtra(P,"parenthesized",!0),this.addExtra(P,"parenStart",se.index),this.takeSurroundingComments(P,se.index,this.state.lastTokEndLoc.index),P;let K=this.startNodeAt(se);return K.expression=P,this.finishNode(K,"ParenthesizedExpression")}shouldParseArrow(se){return!this.canInsertSemicolon()}parseArrow(se){if(this.eat(19))return se}parseParenItem(se,P){return se}parseNewOrNewTarget(){let se=this.startNode();if(this.next(),this.match(16)){let P=this.createIdentifier(this.startNodeAtNode(se),"new");this.next();let K=this.parseMetaProperty(se,P,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!(this.optionFlags&4)&&this.raise(J.UnexpectedNewTarget,K),K}return this.parseNew(se)}parseNew(se){if(this.parseNewCallee(se),this.eat(10)){let P=this.parseExprList(11);this.toReferencedList(P),se.arguments=P}else se.arguments=[];return this.finishNode(se,"NewExpression")}parseNewCallee(se){let P=this.match(83),K=this.parseNoCallExpr();se.callee=K,P&&(K.type==="Import"||K.type==="ImportExpression")&&this.raise(J.ImportCallNotNewExpression,K)}parseTemplateElement(se){let{start:P,startLoc:K,end:we,value:At}=this.state,sr=P+1,Yr=this.startNodeAt(a(K,1));At===null&&(se||this.raise(J.InvalidEscapeSequenceTemplate,a(this.state.firstInvalidTemplateEscapePos,1)));let Lr=this.match(24),fi=Lr?-1:-2,$n=we+fi;Yr.value={raw:this.input.slice(sr,$n).replace(/\r\n?/g,` -`),cooked:At===null?null:At.slice(1,fi)},Yr.tail=Lr,this.next();let ra=this.finishNode(Yr,"TemplateElement");return this.resetEndLocation(ra,a(this.state.lastTokEndLoc,fi)),ra}parseTemplate(se){let P=this.startNode(),K=this.parseTemplateElement(se),we=[K],At=[];for(;!K.tail;)At.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),we.push(K=this.parseTemplateElement(se));return P.expressions=At,P.quasis=we,this.finishNode(P,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(se,P,K,we){K&&this.expectPlugin("recordAndTuple");let At=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=Object.create(null),Yr=!0,Lr=this.startNode();for(Lr.properties=[],this.next();!this.match(se);){if(Yr)Yr=!1;else if(this.expect(12),this.match(se)){this.addTrailingCommaExtraToNode(Lr);break}let $n;P?$n=this.parseBindingProperty():($n=this.parsePropertyDefinition(we),this.checkProto($n,K,sr,we)),K&&!this.isObjectProperty($n)&&$n.type!=="SpreadElement"&&this.raise(J.InvalidRecordProperty,$n),$n.shorthand&&this.addExtra($n,"shorthand",!0),Lr.properties.push($n)}this.next(),this.state.inFSharpPipelineDirectBody=At;let fi="ObjectExpression";return P?fi="ObjectPattern":K&&(fi="RecordExpression"),this.finishNode(Lr,fi)}addTrailingCommaExtraToNode(se){this.addExtra(se,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(se,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(se){return!se.computed&&se.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(se){let P=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(J.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)P.push(this.parseDecorator());let K=this.startNode(),we=!1,At=!1,sr;if(this.match(21))return P.length&&this.unexpected(),this.parseSpread();P.length&&(K.decorators=P,P=[]),K.method=!1,se&&(sr=this.state.startLoc);let Yr=this.eat(55);this.parsePropertyNamePrefixOperator(K);let Lr=this.state.containsEsc;if(this.parsePropertyName(K,se),!Yr&&!Lr&&this.maybeAsyncOrAccessorProp(K)){let{key:fi}=K,$n=fi.name;$n==="async"&&!this.hasPrecedingLineBreak()&&(we=!0,this.resetPreviousNodeTrailingComments(fi),Yr=this.eat(55),this.parsePropertyName(K)),($n==="get"||$n==="set")&&(At=!0,this.resetPreviousNodeTrailingComments(fi),K.kind=$n,this.match(55)&&(Yr=!0,this.raise(J.AccessorIsGenerator,this.state.curPosition(),{kind:$n}),this.next()),this.parsePropertyName(K))}return this.parseObjPropValue(K,sr,Yr,we,!1,At,se)}getGetterSetterExpectedParamCount(se){return se.kind==="get"?0:1}getObjectOrClassMethodParams(se){return se.params}checkGetterSetterParams(se){var P;let K=this.getGetterSetterExpectedParamCount(se),we=this.getObjectOrClassMethodParams(se);we.length!==K&&this.raise(se.kind==="get"?J.BadGetterArity:J.BadSetterArity,se),se.kind==="set"&&((P=we[we.length-1])==null?void 0:P.type)==="RestElement"&&this.raise(J.BadSetterRestParameter,se)}parseObjectMethod(se,P,K,we,At){if(At){let sr=this.parseMethod(se,P,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(sr),sr}if(K||P||this.match(10))return we&&this.unexpected(),se.kind="method",se.method=!0,this.parseMethod(se,P,K,!1,!1,"ObjectMethod")}parseObjectProperty(se,P,K,we){if(se.shorthand=!1,this.eat(14))return se.value=K?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(we),this.finishNode(se,"ObjectProperty");if(!se.computed&&se.key.type==="Identifier"){if(this.checkReservedWord(se.key.name,se.key.loc.start,!0,!1),K)se.value=this.parseMaybeDefault(P,Zt(se.key));else if(this.match(29)){let At=this.state.startLoc;we!=null?we.shorthandAssignLoc===null&&(we.shorthandAssignLoc=At):this.raise(J.InvalidCoverInitializedName,At),se.value=this.parseMaybeDefault(P,Zt(se.key))}else se.value=Zt(se.key);return se.shorthand=!0,this.finishNode(se,"ObjectProperty")}}parseObjPropValue(se,P,K,we,At,sr,Yr){let Lr=this.parseObjectMethod(se,K,we,At,sr)||this.parseObjectProperty(se,P,At,Yr);return Lr||this.unexpected(),Lr}parsePropertyName(se,P){if(this.eat(0))se.computed=!0,se.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:K,value:we}=this.state,At;if(ke(K))At=this.parseIdentifier(!0);else switch(K){case 135:At=this.parseNumericLiteral(we);break;case 134:At=this.parseStringLiteral(we);break;case 136:At=this.parseBigIntLiteral(we);break;case 139:{let sr=this.state.startLoc;P!=null?P.privateKeyLoc===null&&(P.privateKeyLoc=sr):this.raise(J.UnexpectedPrivateField,sr),At=this.parsePrivateName();break}default:if(K===137){At=this.parseDecimalLiteral(we);break}this.unexpected()}se.key=At,K!==139&&(se.computed=!1)}}initFunction(se,P){se.id=null,se.generator=!1,se.async=P}parseMethod(se,P,K,we,At,sr,Yr=!1){this.initFunction(se,K),se.generator=P,this.scope.enter(18|(Yr?64:0)|(At?32:0)),this.prodParam.enter(VA(K,se.generator)),this.parseFunctionParams(se,we);let Lr=this.parseFunctionBodyAndFinish(se,sr,!0);return this.prodParam.exit(),this.scope.exit(),Lr}parseArrayLike(se,P,K,we){K&&this.expectPlugin("recordAndTuple");let At=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=this.startNode();return this.next(),sr.elements=this.parseExprList(se,!K,we,sr),this.state.inFSharpPipelineDirectBody=At,this.finishNode(sr,K?"TupleExpression":"ArrayExpression")}parseArrowExpression(se,P,K,we){this.scope.enter(6);let At=VA(K,!1);!this.match(5)&&this.prodParam.hasIn&&(At|=8),this.prodParam.enter(At),this.initFunction(se,K);let sr=this.state.maybeInArrowParameters;return P&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(se,P,we)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(se,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=sr,this.finishNode(se,"ArrowFunctionExpression")}setArrowFunctionParameters(se,P,K){this.toAssignableList(P,K,!1),se.params=P}parseFunctionBodyAndFinish(se,P,K=!1){return this.parseFunctionBody(se,!1,K),this.finishNode(se,P)}parseFunctionBody(se,P,K=!1){let we=P&&!this.match(5);if(this.expressionScope.enter(rl()),we)se.body=this.parseMaybeAssign(),this.checkParams(se,!1,P,!1);else{let At=this.state.strict,sr=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),se.body=this.parseBlock(!0,!1,Yr=>{let Lr=!this.isSimpleParamList(se.params);Yr&&Lr&&this.raise(J.IllegalLanguageModeDirective,(se.kind==="method"||se.kind==="constructor")&&se.key?se.key.loc.end:se);let fi=!At&&this.state.strict;this.checkParams(se,!this.state.strict&&!P&&!K&&!Lr,P,fi),this.state.strict&&se.id&&this.checkIdentifier(se.id,65,fi)}),this.prodParam.exit(),this.state.labels=sr}this.expressionScope.exit()}isSimpleParameter(se){return se.type==="Identifier"}isSimpleParamList(se){for(let P=0,K=se.length;P10||!vg(se))){if(K&&ac(se)){this.raise(J.UnexpectedKeyword,P,{keyword:se});return}if((this.state.strict?we?Xa:Ei:li)(se,this.inModule)){this.raise(J.UnexpectedReservedWord,P,{reservedWord:se});return}else if(se==="yield"){if(this.prodParam.hasYield){this.raise(J.YieldBindingIdentifier,P);return}}else if(se==="await"){if(this.prodParam.hasAwait){this.raise(J.AwaitBindingIdentifier,P);return}if(this.scope.inStaticBlock){this.raise(J.AwaitBindingIdentifierInStaticBlock,P);return}this.expressionScope.recordAsyncArrowParametersError(P)}else if(se==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(J.ArgumentsInClass,P);return}}}recordAwaitIfAllowed(){let se=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return se&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),se}parseAwait(se){let P=this.startNodeAt(se);return this.expressionScope.recordParameterInitializerError(J.AwaitExpressionFormalParameter,P),this.eat(55)&&this.raise(J.ObsoleteAwaitStar,P),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(P.argument=this.parseMaybeUnary(null,!0)),this.finishNode(P,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:se}=this.state;return se===53||se===10||se===0||Ft(se)||se===102&&!this.state.containsEsc||se===138||se===56||this.hasPlugin("v8intrinsic")&&se===54}parseYield(){let se=this.startNode();this.expressionScope.recordParameterInitializerError(J.YieldInParameter,se),this.next();let P=!1,K=null;if(!this.hasPrecedingLineBreak())switch(P=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!P)break;default:K=this.parseMaybeAssign()}return se.delegate=P,se.argument=K,this.finishNode(se,"YieldExpression")}parseImportCall(se){if(this.next(),se.source=this.parseMaybeAssignAllowIn(),se.options=null,this.eat(12)&&!this.match(11)&&(se.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(J.ImportCallArity,se)}return this.expect(11),this.finishNode(se,"ImportExpression")}checkPipelineAtInfixOperator(se,P){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&se.type==="SequenceExpression"&&this.raise(J.PipelineHeadSequenceExpression,P)}parseSmartPipelineBodyInStyle(se,P){if(this.isSimpleReference(se)){let K=this.startNodeAt(P);return K.callee=se,this.finishNode(K,"PipelineBareFunction")}else{let K=this.startNodeAt(P);return this.checkSmartPipeTopicBodyEarlyErrors(P),K.expression=se,this.finishNode(K,"PipelineTopicExpression")}}isSimpleReference(se){switch(se.type){case"MemberExpression":return!se.computed&&this.isSimpleReference(se.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(se){if(this.match(19))throw this.raise(J.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(J.PipelineTopicUnused,se)}withTopicBindingContext(se){let P=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=P}}withSmartMixTopicForbiddingContext(se){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let P=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=P}}else return se()}withSoloAwaitPermittingContext(se){let P=this.state.soloAwait;this.state.soloAwait=!0;try{return se()}finally{this.state.soloAwait=P}}allowInAnd(se){let P=this.prodParam.currentFlags();if(8&~P){this.prodParam.enter(P|8);try{return se()}finally{this.prodParam.exit()}}return se()}disallowInAnd(se){let P=this.prodParam.currentFlags();if(8&P){this.prodParam.enter(P&-9);try{return se()}finally{this.prodParam.exit()}}return se()}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(se){let P=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let K=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let we=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),P,se);return this.state.inFSharpPipelineDirectBody=K,we}parseModuleExpression(){this.expectPlugin("moduleBlocks");let se=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let P=this.startNodeAt(this.state.endLoc);this.next();let K=this.initializeScopes(!0);this.enterInitialScopes();try{se.body=this.parseProgram(P,8,"module")}finally{K()}return this.finishNode(se,"ModuleExpression")}parsePropertyNamePrefixOperator(se){}},ey={kind:1},KE={kind:2},NC=/[\uD800-\uDFFF]/u,n_=/in(?:stanceof)?/y;function up(se,P,K){for(let we=0;we0)for(let[At,sr]of Array.from(this.scope.undefinedExports))this.raise(J.ModuleExportUndefined,sr,{localName:At});this.addExtra(se,"topLevelAwait",this.state.hasTopLevelAwait)}let we;return P===140?we=this.finishNode(se,"Program"):we=this.finishNodeAt(se,"Program",a(this.state.startLoc,-1)),we}stmtToDirective(se){let P=se;P.type="Directive",P.value=P.expression,delete P.expression;let K=P.value,we=K.value,At=this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end)),sr=K.value=At.slice(1,-1);return this.addExtra(K,"raw",At),this.addExtra(K,"rawValue",sr),this.addExtra(K,"expressionValue",we),K.type="DirectiveLiteral",P}parseInterpreterDirective(){if(!this.match(28))return null;let se=this.startNode();return se.value=this.state.value,this.next(),this.finishNode(se,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(se,P){if(gc(se)){if(n_.lastIndex=P,n_.test(this.input)){let K=this.codePointAtPos(n_.lastIndex);if(!_g(K)&&K!==92)return!1}return!0}else return se===92}chStartsBindingPattern(se){return se===91||se===123}hasFollowingBindingAtom(){let se=this.nextTokenStart(),P=this.codePointAtPos(se);return this.chStartsBindingPattern(P)||this.chStartsBindingIdentifier(P,se)}hasInLineFollowingBindingIdentifierOrBrace(){let se=this.nextTokenInLineStart(),P=this.codePointAtPos(se);return P===123||this.chStartsBindingIdentifier(P,se)}startsUsingForOf(){let{type:se,containsEsc:P}=this.lookahead();if(se===102&&!P)return!1;if(qr(se)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let se=this.nextTokenInLineStart();if(this.isUnparsedContextual(se,"using")){se=this.nextTokenInLineStartSince(se+5);let P=this.codePointAtPos(se);if(this.chStartsBindingIdentifier(P,se))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(se=!1){let P=0;return this.options.annexB&&!this.state.strict&&(P|=4,se&&(P|=8)),this.parseStatementLike(P)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(se){let P=null;return this.match(26)&&(P=this.parseDecorators(!0)),this.parseStatementContent(se,P)}parseStatementContent(se,P){let K=this.state.type,we=this.startNode(),At=!!(se&2),sr=!!(se&4),Yr=se&1;switch(K){case 60:return this.parseBreakContinueStatement(we,!0);case 63:return this.parseBreakContinueStatement(we,!1);case 64:return this.parseDebuggerStatement(we);case 90:return this.parseDoWhileStatement(we);case 91:return this.parseForStatement(we);case 68:if(this.lookaheadCharCode()===46)break;return sr||this.raise(this.state.strict?J.StrictFunction:this.options.annexB?J.SloppyFunctionAnnexB:J.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(we,!1,!At&&sr);case 80:return At||this.unexpected(),this.parseClass(this.maybeTakeDecorators(P,we),!0);case 69:return this.parseIfStatement(we);case 70:return this.parseReturnStatement(we);case 71:return this.parseSwitchStatement(we);case 72:return this.parseThrowStatement(we);case 73:return this.parseTryStatement(we);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?At||this.raise(J.UnexpectedLexicalDeclaration,we):this.raise(J.AwaitUsingNotInAsyncContext,we),this.next(),this.parseVarStatement(we,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(J.UnexpectedUsingDeclaration,this.state.startLoc):At||this.raise(J.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(we,"using");case 100:{if(this.state.containsEsc)break;let $n=this.nextTokenStart(),ra=this.codePointAtPos($n);if(ra!==91&&(!At&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(ra,$n)&&ra!==123))break}case 75:At||this.raise(J.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let $n=this.state.value;return this.parseVarStatement(we,$n)}case 92:return this.parseWhileStatement(we);case 76:return this.parseWithStatement(we);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(we);case 83:{let $n=this.lookaheadCharCode();if($n===40||$n===46)break}case 82:{!(this.optionFlags&8)&&!Yr&&this.raise(J.UnexpectedImportExport,this.state.startLoc),this.next();let $n;return K===83?($n=this.parseImport(we),$n.type==="ImportDeclaration"&&(!$n.importKind||$n.importKind==="value")&&(this.sawUnambiguousESM=!0)):($n=this.parseExport(we,P),($n.type==="ExportNamedDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportAllDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed($n),$n}default:if(this.isAsyncFunction())return At||this.raise(J.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(we,!0,!At&&sr)}let Lr=this.state.value,fi=this.parseExpression();return qr(K)&&fi.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(we,Lr,fi,se):this.parseExpressionStatement(we,fi,P)}assertModuleNodeAllowed(se){!(this.optionFlags&8)&&!this.inModule&&this.raise(J.ImportOutsideModule,se)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(se,P,K){if(se){var we;(we=P.decorators)!=null&&we.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(J.DecoratorsBeforeAfterExport,P.decorators[0]),P.decorators.unshift(...se)):P.decorators=se,this.resetStartLocationFromNode(P,se[0]),K&&this.resetStartLocationFromNode(K,P)}return P}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(se){let P=[];do P.push(this.parseDecorator());while(this.match(26));if(this.match(82))se||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(J.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(J.UnexpectedLeadingDecorator,this.state.startLoc);return P}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let se=this.startNode();if(this.next(),this.hasPlugin("decorators")){let P=this.state.startLoc,K;if(this.match(10)){let we=this.state.startLoc;this.next(),K=this.parseExpression(),this.expect(11),K=this.wrapParenthesis(we,K);let At=this.state.startLoc;se.expression=this.parseMaybeDecoratorArguments(K,we),this.getPluginOption("decorators","allowCallParenthesized")===!1&&se.expression!==K&&this.raise(J.DecoratorArgumentsOutsideParentheses,At)}else{for(K=this.parseIdentifier(!1);this.eat(16);){let we=this.startNodeAt(P);we.object=K,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),we.property=this.parsePrivateName()):we.property=this.parseIdentifier(!0),we.computed=!1,K=this.finishNode(we,"MemberExpression")}se.expression=this.parseMaybeDecoratorArguments(K,P)}}else se.expression=this.parseExprSubscripts();return this.finishNode(se,"Decorator")}parseMaybeDecoratorArguments(se,P){if(this.eat(10)){let K=this.startNodeAt(P);return K.callee=se,K.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(K.arguments),this.finishNode(K,"CallExpression")}return se}parseBreakContinueStatement(se,P){return this.next(),this.isLineTerminator()?se.label=null:(se.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(se,P),this.finishNode(se,P?"BreakStatement":"ContinueStatement")}verifyBreakContinue(se,P){let K;for(K=0;Kthis.parseStatement()),this.state.labels.pop(),this.expect(92),se.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(se,"DoWhileStatement")}parseForStatement(se){this.next(),this.state.labels.push(ey);let P=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(P=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return P!==null&&this.unexpected(P),this.parseFor(se,null);let K=this.isContextual(100);{let Lr=this.isContextual(96)&&this.startsAwaitUsing(),fi=Lr||this.isContextual(107)&&this.startsUsingForOf(),$n=K&&this.hasFollowingBindingAtom()||fi;if(this.match(74)||this.match(75)||$n){let ra=this.startNode(),kc;Lr?(kc="await using",this.recordAwaitIfAllowed()||this.raise(J.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):kc=this.state.value,this.next(),this.parseVar(ra,!0,kc);let Dl=this.finishNode(ra,"VariableDeclaration"),ca=this.match(58);return ca&&fi&&this.raise(J.ForInUsing,Dl),(ca||this.isContextual(102))&&Dl.declarations.length===1?this.parseForIn(se,Dl,P):(P!==null&&this.unexpected(P),this.parseFor(se,Dl))}}let we=this.isContextual(95),At=new bg,sr=this.parseExpression(!0,At),Yr=this.isContextual(102);if(Yr&&(K&&this.raise(J.ForOfLet,sr),P===null&&we&&sr.type==="Identifier"&&this.raise(J.ForOfAsync,sr)),Yr||this.match(58)){this.checkDestructuringPrivate(At),this.toAssignable(sr,!0);let Lr=Yr?"ForOfStatement":"ForInStatement";return this.checkLVal(sr,{type:Lr}),this.parseForIn(se,sr,P)}else this.checkExpressionErrors(At,!0);return P!==null&&this.unexpected(P),this.parseFor(se,sr)}parseFunctionStatement(se,P,K){return this.next(),this.parseFunction(se,1|(K?2:0)|(P?8:0))}parseIfStatement(se){return this.next(),se.test=this.parseHeaderExpression(),se.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),se.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(se,"IfStatement")}parseReturnStatement(se){return!this.prodParam.hasReturn&&!(this.optionFlags&2)&&this.raise(J.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?se.argument=null:(se.argument=this.parseExpression(),this.semicolon()),this.finishNode(se,"ReturnStatement")}parseSwitchStatement(se){this.next(),se.discriminant=this.parseHeaderExpression();let P=se.cases=[];this.expect(5),this.state.labels.push(KE),this.scope.enter(0);let K;for(let we;!this.match(8);)if(this.match(61)||this.match(65)){let At=this.match(61);K&&this.finishNode(K,"SwitchCase"),P.push(K=this.startNode()),K.consequent=[],this.next(),At?K.test=this.parseExpression():(we&&this.raise(J.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),we=!0,K.test=null),this.expect(14)}else K?K.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),K&&this.finishNode(K,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(se,"SwitchStatement")}parseThrowStatement(se){return this.next(),this.hasPrecedingLineBreak()&&this.raise(J.NewlineAfterThrow,this.state.lastTokEndLoc),se.argument=this.parseExpression(),this.semicolon(),this.finishNode(se,"ThrowStatement")}parseCatchClauseParam(){let se=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&se.type==="Identifier"?8:0),this.checkLVal(se,{type:"CatchClause"},9),se}parseTryStatement(se){if(this.next(),se.block=this.parseBlock(),se.handler=null,this.match(62)){let P=this.startNode();this.next(),this.match(10)?(this.expect(10),P.param=this.parseCatchClauseParam(),this.expect(11)):(P.param=null,this.scope.enter(0)),P.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),se.handler=this.finishNode(P,"CatchClause")}return se.finalizer=this.eat(67)?this.parseBlock():null,!se.handler&&!se.finalizer&&this.raise(J.NoCatchOrFinally,se),this.finishNode(se,"TryStatement")}parseVarStatement(se,P,K=!1){return this.next(),this.parseVar(se,!1,P,K),this.semicolon(),this.finishNode(se,"VariableDeclaration")}parseWhileStatement(se){return this.next(),se.test=this.parseHeaderExpression(),this.state.labels.push(ey),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(se,"WhileStatement")}parseWithStatement(se){return this.state.strict&&this.raise(J.StrictWith,this.state.startLoc),this.next(),se.object=this.parseHeaderExpression(),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(se,"WithStatement")}parseEmptyStatement(se){return this.next(),this.finishNode(se,"EmptyStatement")}parseLabeledStatement(se,P,K,we){for(let sr of this.state.labels)sr.name===P&&this.raise(J.LabelRedeclaration,K,{labelName:P});let At=Vr(this.state.type)?1:this.match(71)?2:null;for(let sr=this.state.labels.length-1;sr>=0;sr--){let Yr=this.state.labels[sr];if(Yr.statementStart===se.start)Yr.statementStart=this.sourceToOffsetPos(this.state.start),Yr.kind=At;else break}return this.state.labels.push({name:P,kind:At,statementStart:this.sourceToOffsetPos(this.state.start)}),se.body=we&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),se.label=K,this.finishNode(se,"LabeledStatement")}parseExpressionStatement(se,P,K){return se.expression=P,this.semicolon(),this.finishNode(se,"ExpressionStatement")}parseBlock(se=!1,P=!0,K){let we=this.startNode();return se&&this.state.strictErrors.clear(),this.expect(5),P&&this.scope.enter(0),this.parseBlockBody(we,se,!1,8,K),P&&this.scope.exit(),this.finishNode(we,"BlockStatement")}isValidDirective(se){return se.type==="ExpressionStatement"&&se.expression.type==="StringLiteral"&&!se.expression.extra.parenthesized}parseBlockBody(se,P,K,we,At){let sr=se.body=[],Yr=se.directives=[];this.parseBlockOrModuleBlockBody(sr,P?Yr:void 0,K,we,At)}parseBlockOrModuleBlockBody(se,P,K,we,At){let sr=this.state.strict,Yr=!1,Lr=!1;for(;!this.match(we);){let fi=K?this.parseModuleItem():this.parseStatementListItem();if(P&&!Lr){if(this.isValidDirective(fi)){let $n=this.stmtToDirective(fi);P.push($n),!Yr&&$n.value.value==="use strict"&&(Yr=!0,this.setStrict(!0));continue}Lr=!0,this.state.strictErrors.clear()}se.push(fi)}At?.call(this,Yr),sr||this.setStrict(!1),this.next()}parseFor(se,P){return se.init=P,this.semicolon(!1),se.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),se.update=this.match(11)?null:this.parseExpression(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,"ForStatement")}parseForIn(se,P,K){let we=this.match(58);return this.next(),we?K!==null&&this.unexpected(K):se.await=K!==null,P.type==="VariableDeclaration"&&P.declarations[0].init!=null&&(!we||!this.options.annexB||this.state.strict||P.kind!=="var"||P.declarations[0].id.type!=="Identifier")&&this.raise(J.ForInOfLoopInitializer,P,{type:we?"ForInStatement":"ForOfStatement"}),P.type==="AssignmentPattern"&&this.raise(J.InvalidLhs,P,{ancestor:{type:"ForStatement"}}),se.left=P,se.right=we?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,we?"ForInStatement":"ForOfStatement")}parseVar(se,P,K,we=!1){let At=se.declarations=[];for(se.kind=K;;){let sr=this.startNode();if(this.parseVarId(sr,K),sr.init=this.eat(29)?P?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,sr.init===null&&!we&&(sr.id.type!=="Identifier"&&!(P&&(this.match(58)||this.isContextual(102)))?this.raise(J.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(K==="const"||K==="using"||K==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(J.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:K})),At.push(this.finishNode(sr,"VariableDeclarator")),!this.eat(12))break}return se}parseVarId(se,P){let K=this.parseBindingAtom();(P==="using"||P==="await using")&&(K.type==="ArrayPattern"||K.type==="ObjectPattern")&&this.raise(J.UsingDeclarationHasBindingPattern,K.loc.start),this.checkLVal(K,{type:"VariableDeclarator"},P==="var"?5:8201),se.id=K}parseAsyncFunctionExpression(se){return this.parseFunction(se,8)}parseFunction(se,P=0){let K=P&2,we=!!(P&1),At=we&&!(P&4),sr=!!(P&8);this.initFunction(se,sr),this.match(55)&&(K&&this.raise(J.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),se.generator=!0),we&&(se.id=this.parseFunctionId(At));let Yr=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(VA(sr,se.generator)),we||(se.id=this.parseFunctionId()),this.parseFunctionParams(se,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(se,we?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),we&&!K&&this.registerFunctionStatementId(se),this.state.maybeInArrowParameters=Yr,se}parseFunctionId(se){return se||qr(this.state.type)?this.parseIdentifier():null}parseFunctionParams(se,P){this.expect(10),this.expressionScope.enter(rc()),se.params=this.parseBindingList(11,41,2|(P?4:0)),this.expressionScope.exit()}registerFunctionStatementId(se){se.id&&this.scope.declareName(se.id.name,!this.options.annexB||this.state.strict||se.generator||se.async?this.scope.treatFunctionsAsVar?5:8201:17,se.id.loc.start)}parseClass(se,P,K){this.next();let we=this.state.strict;return this.state.strict=!0,this.parseClassId(se,P,K),this.parseClassSuper(se),se.body=this.parseClassBody(!!se.superClass,we),this.finishNode(se,P?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(se){return se.type==="Identifier"&&se.name==="constructor"||se.type==="StringLiteral"&&se.value==="constructor"}isNonstaticConstructor(se){return!se.computed&&!se.static&&this.nameIsConstructor(se.key)}parseClassBody(se,P){this.classScope.enter();let K={hadConstructor:!1,hadSuperClass:se},we=[],At=this.startNode();if(At.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(we.length>0)throw this.raise(J.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){we.push(this.parseDecorator());continue}let sr=this.startNode();we.length&&(sr.decorators=we,this.resetStartLocationFromNode(sr,we[0]),we=[]),this.parseClassMember(At,sr,K),sr.kind==="constructor"&&sr.decorators&&sr.decorators.length>0&&this.raise(J.DecoratorConstructor,sr)}}),this.state.strict=P,this.next(),we.length)throw this.raise(J.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(At,"ClassBody")}parseClassMemberFromModifier(se,P){let K=this.parseIdentifier(!0);if(this.isClassMethod()){let we=P;return we.kind="method",we.computed=!1,we.key=K,we.static=!1,this.pushClassMethod(se,we,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let we=P;return we.computed=!1,we.key=K,we.static=!1,se.body.push(this.parseClassProperty(we)),!0}return this.resetPreviousNodeTrailingComments(K),!1}parseClassMember(se,P,K){let we=this.isContextual(106);if(we){if(this.parseClassMemberFromModifier(se,P))return;if(this.eat(5)){this.parseClassStaticBlock(se,P);return}}this.parseClassMemberWithIsStatic(se,P,K,we)}parseClassMemberWithIsStatic(se,P,K,we){let At=P,sr=P,Yr=P,Lr=P,fi=P,$n=At,ra=At;if(P.static=we,this.parsePropertyNamePrefixOperator(P),this.eat(55)){$n.kind="method";let BA=this.match(139);if(this.parseClassElementName($n),BA){this.pushClassPrivateMethod(se,sr,!0,!1);return}this.isNonstaticConstructor(At)&&this.raise(J.ConstructorIsGenerator,At.key),this.pushClassMethod(se,At,!0,!1,!1,!1);return}let kc=!this.state.containsEsc&&qr(this.state.type),Dl=this.parseClassElementName(P),ca=kc?Dl.name:null,Bl=this.isPrivateName(Dl),eA=this.state.startLoc;if(this.parsePostMemberNameModifiers(ra),this.isClassMethod()){if($n.kind="method",Bl){this.pushClassPrivateMethod(se,sr,!1,!1);return}let BA=this.isNonstaticConstructor(At),gI=!1;BA&&(At.kind="constructor",K.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(J.DuplicateConstructor,Dl),BA&&this.hasPlugin("typescript")&&P.override&&this.raise(J.OverrideOnConstructor,Dl),K.hadConstructor=!0,gI=K.hadSuperClass),this.pushClassMethod(se,At,!1,!1,BA,gI)}else if(this.isClassProperty())Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr);else if(ca==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(Dl);let BA=this.eat(55);ra.optional&&this.unexpected(eA),$n.kind="method";let gI=this.match(139);this.parseClassElementName($n),this.parsePostMemberNameModifiers(ra),gI?this.pushClassPrivateMethod(se,sr,BA,!0):(this.isNonstaticConstructor(At)&&this.raise(J.ConstructorIsAsync,At.key),this.pushClassMethod(se,At,BA,!0,!1,!1))}else if((ca==="get"||ca==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(Dl),$n.kind=ca;let BA=this.match(139);this.parseClassElementName(At),BA?this.pushClassPrivateMethod(se,sr,!1,!1):(this.isNonstaticConstructor(At)&&this.raise(J.ConstructorIsAccessor,At.key),this.pushClassMethod(se,At,!1,!1,!1,!1)),this.checkGetterSetterParams(At)}else if(ca==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(Dl);let BA=this.match(139);this.parseClassElementName(Yr),this.pushClassAccessorProperty(se,fi,BA)}else this.isLineTerminator()?Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr):this.unexpected()}parseClassElementName(se){let{type:P,value:K}=this.state;if((P===132||P===134)&&se.static&&K==="prototype"&&this.raise(J.StaticPrototype,this.state.startLoc),P===139){K==="constructor"&&this.raise(J.ConstructorClassPrivateField,this.state.startLoc);let we=this.parsePrivateName();return se.key=we,we}return this.parsePropertyName(se),se.key}parseClassStaticBlock(se,P){var K;this.scope.enter(208);let we=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let At=P.body=[];this.parseBlockOrModuleBlockBody(At,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=we,se.body.push(this.finishNode(P,"StaticBlock")),(K=P.decorators)!=null&&K.length&&this.raise(J.DecoratorStaticBlock,P)}pushClassProperty(se,P){!P.computed&&this.nameIsConstructor(P.key)&&this.raise(J.ConstructorClassField,P.key),se.body.push(this.parseClassProperty(P))}pushClassPrivateProperty(se,P){let K=this.parseClassPrivateProperty(P);se.body.push(K),this.classScope.declarePrivateName(this.getPrivateNameSV(K.key),0,K.key.loc.start)}pushClassAccessorProperty(se,P,K){!K&&!P.computed&&this.nameIsConstructor(P.key)&&this.raise(J.ConstructorClassField,P.key);let we=this.parseClassAccessorProperty(P);se.body.push(we),K&&this.classScope.declarePrivateName(this.getPrivateNameSV(we.key),0,we.key.loc.start)}pushClassMethod(se,P,K,we,At,sr){se.body.push(this.parseMethod(P,K,we,At,sr,"ClassMethod",!0))}pushClassPrivateMethod(se,P,K,we){let At=this.parseMethod(P,K,we,!1,!1,"ClassPrivateMethod",!0);se.body.push(At);let sr=At.kind==="get"?At.static?6:2:At.kind==="set"?At.static?5:1:0;this.declareClassPrivateMethodInScope(At,sr)}declareClassPrivateMethodInScope(se,P){this.classScope.declarePrivateName(this.getPrivateNameSV(se.key),P,se.key.loc.start)}parsePostMemberNameModifiers(se){}parseClassPrivateProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassPrivateProperty")}parseClassProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassProperty")}parseClassAccessorProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassAccessorProperty")}parseInitializer(se){this.scope.enter(80),this.expressionScope.enter(rl()),this.prodParam.enter(0),se.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(se,P,K,we=8331){if(qr(this.state.type))se.id=this.parseIdentifier(),P&&this.declareNameFromIdentifier(se.id,we);else if(K||!P)se.id=null;else throw this.raise(J.MissingClassName,this.state.startLoc)}parseClassSuper(se){se.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(se,P){let K=this.parseMaybeImportPhase(se,!0),we=this.maybeParseExportDefaultSpecifier(se,K),At=!we||this.eat(12),sr=At&&this.eatExportStar(se),Yr=sr&&this.maybeParseExportNamespaceSpecifier(se),Lr=At&&(!Yr||this.eat(12)),fi=we||sr;if(sr&&!Yr){if(we&&this.unexpected(),P)throw this.raise(J.UnsupportedDecoratorExport,se);return this.parseExportFrom(se,!0),this.finishNode(se,"ExportAllDeclaration")}let $n=this.maybeParseExportNamedSpecifiers(se);we&&At&&!sr&&!$n&&this.unexpected(null,5),Yr&&Lr&&this.unexpected(null,98);let ra;if(fi||$n){if(ra=!1,P)throw this.raise(J.UnsupportedDecoratorExport,se);this.parseExportFrom(se,fi)}else ra=this.maybeParseExportDeclaration(se);if(fi||$n||ra){var kc;let Dl=se;if(this.checkExport(Dl,!0,!1,!!Dl.source),((kc=Dl.declaration)==null?void 0:kc.type)==="ClassDeclaration")this.maybeTakeDecorators(P,Dl.declaration,Dl);else if(P)throw this.raise(J.UnsupportedDecoratorExport,se);return this.finishNode(Dl,"ExportNamedDeclaration")}if(this.eat(65)){let Dl=se,ca=this.parseExportDefaultExpression();if(Dl.declaration=ca,ca.type==="ClassDeclaration")this.maybeTakeDecorators(P,ca,Dl);else if(P)throw this.raise(J.UnsupportedDecoratorExport,se);return this.checkExport(Dl,!0,!0),this.finishNode(Dl,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(se){return this.eat(55)}maybeParseExportDefaultSpecifier(se,P){if(P||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",P?.loc.start);let K=P||this.parseIdentifier(!0),we=this.startNodeAtNode(K);return we.exported=K,se.specifiers=[this.finishNode(we,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(se){if(this.isContextual(93)){var P,K;(K=(P=se).specifiers)!=null||(P.specifiers=[]);let we=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),we.exported=this.parseModuleExportName(),se.specifiers.push(this.finishNode(we,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(se){if(this.match(5)){let P=se;P.specifiers||(P.specifiers=[]);let K=P.exportKind==="type";return P.specifiers.push(...this.parseExportSpecifiers(K)),P.source=null,P.declaration=null,this.hasPlugin("importAssertions")&&(P.assertions=[]),!0}return!1}maybeParseExportDeclaration(se){return this.shouldParseExportDeclaration()?(se.specifiers=[],se.source=null,this.hasPlugin("importAssertions")&&(se.assertions=[]),se.declaration=this.parseExportDeclaration(se),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let se=this.nextTokenInLineStart();return this.isUnparsedContextual(se,"function")}parseExportDefaultExpression(){let se=this.startNode();if(this.match(68))return this.next(),this.parseFunction(se,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(se,13);if(this.match(80))return this.parseClass(se,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(J.DecoratorBeforeExport,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(J.UnsupportedDefaultExport,this.state.startLoc);let P=this.parseMaybeAssignAllowIn();return this.semicolon(),P}parseExportDeclaration(se){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:se}=this.state;if(qr(se)){if(se===95&&!this.state.containsEsc||se===100)return!1;if((se===130||se===129)&&!this.state.containsEsc){let{type:we}=this.lookahead();if(qr(we)&&we!==98||we===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let P=this.nextTokenStart(),K=this.isUnparsedContextual(P,"from");if(this.input.charCodeAt(P)===44||qr(this.state.type)&&K)return!0;if(this.match(65)&&K){let we=this.input.charCodeAt(this.nextTokenStartSince(P+4));return we===34||we===39}return!1}parseExportFrom(se,P){this.eatContextual(98)?(se.source=this.parseImportSource(),this.checkExport(se),this.maybeParseImportAttributes(se),this.checkJSONModuleImport(se)):P&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:se}=this.state;return se===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(J.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(J.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(J.UsingDeclarationExport,this.state.startLoc),!0):se===74||se===75||se===68||se===80||this.isLet()||this.isAsyncFunction()}checkExport(se,P,K,we){if(P){var At;if(K){if(this.checkDuplicateExports(se,"default"),this.hasPlugin("exportDefaultFrom")){var sr;let Yr=se.declaration;Yr.type==="Identifier"&&Yr.name==="from"&&Yr.end-Yr.start===4&&!((sr=Yr.extra)!=null&&sr.parenthesized)&&this.raise(J.ExportDefaultFromAsIdentifier,Yr)}}else if((At=se.specifiers)!=null&&At.length)for(let Yr of se.specifiers){let{exported:Lr}=Yr,fi=Lr.type==="Identifier"?Lr.name:Lr.value;if(this.checkDuplicateExports(Yr,fi),!we&&Yr.local){let{local:$n}=Yr;$n.type!=="Identifier"?this.raise(J.ExportBindingIsString,Yr,{localName:$n.value,exportName:fi}):(this.checkReservedWord($n.name,$n.loc.start,!0,!1),this.scope.checkLocalExport($n))}}else if(se.declaration){let Yr=se.declaration;if(Yr.type==="FunctionDeclaration"||Yr.type==="ClassDeclaration"){let{id:Lr}=Yr;if(!Lr)throw new Error("Assertion failure");this.checkDuplicateExports(se,Lr.name)}else if(Yr.type==="VariableDeclaration")for(let Lr of Yr.declarations)this.checkDeclaration(Lr.id)}}}checkDeclaration(se){if(se.type==="Identifier")this.checkDuplicateExports(se,se.name);else if(se.type==="ObjectPattern")for(let P of se.properties)this.checkDeclaration(P);else if(se.type==="ArrayPattern")for(let P of se.elements)P&&this.checkDeclaration(P);else se.type==="ObjectProperty"?this.checkDeclaration(se.value):se.type==="RestElement"?this.checkDeclaration(se.argument):se.type==="AssignmentPattern"&&this.checkDeclaration(se.left)}checkDuplicateExports(se,P){this.exportedIdentifiers.has(P)&&(P==="default"?this.raise(J.DuplicateDefaultExport,se):this.raise(J.DuplicateExport,se,{exportName:P})),this.exportedIdentifiers.add(P)}parseExportSpecifiers(se){let P=[],K=!0;for(this.expect(5);!this.eat(8);){if(K)K=!1;else if(this.expect(12),this.eat(8))break;let we=this.isContextual(130),At=this.match(134),sr=this.startNode();sr.local=this.parseModuleExportName(),P.push(this.parseExportSpecifier(sr,At,se,we))}return P}parseExportSpecifier(se,P,K,we){return this.eatContextual(93)?se.exported=this.parseModuleExportName():P?se.exported=bn(se.local):se.exported||(se.exported=Zt(se.local)),this.finishNode(se,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let se=this.parseStringLiteral(this.state.value),P=NC.exec(se.value);return P&&this.raise(J.ModuleExportNameHasLoneSurrogate,se,{surrogateCharCode:P[0].charCodeAt(0)}),se}return this.parseIdentifier(!0)}isJSONModuleImport(se){return se.assertions!=null?se.assertions.some(({key:P,value:K})=>K.value==="json"&&(P.type==="Identifier"?P.name==="type":P.value==="type")):!1}checkImportReflection(se){let{specifiers:P}=se,K=P.length===1?P[0].type:null;if(se.phase==="source")K!=="ImportDefaultSpecifier"&&this.raise(J.SourcePhaseImportRequiresDefault,P[0].loc.start);else if(se.phase==="defer")K!=="ImportNamespaceSpecifier"&&this.raise(J.DeferImportRequiresNamespace,P[0].loc.start);else if(se.module){var we;K!=="ImportDefaultSpecifier"&&this.raise(J.ImportReflectionNotBinding,P[0].loc.start),((we=se.assertions)==null?void 0:we.length)>0&&this.raise(J.ImportReflectionHasAssertion,P[0].loc.start)}}checkJSONModuleImport(se){if(this.isJSONModuleImport(se)&&se.type!=="ExportAllDeclaration"){let{specifiers:P}=se;if(P!=null){let K=P.find(we=>{let At;if(we.type==="ExportSpecifier"?At=we.local:we.type==="ImportSpecifier"&&(At=we.imported),At!==void 0)return At.type==="Identifier"?At.name!=="default":At.value!=="default"});K!==void 0&&this.raise(J.ImportJSONBindingNotDefault,K.loc.start)}}}isPotentialImportPhase(se){return se?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(se,P,K,we){P||(K==="module"?(this.expectPlugin("importReflection",we),se.module=!0):this.hasPlugin("importReflection")&&(se.module=!1),K==="source"?(this.expectPlugin("sourcePhaseImports",we),se.phase="source"):K==="defer"?(this.expectPlugin("deferredImportEvaluation",we),se.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(se.phase=null))}parseMaybeImportPhase(se,P){if(!this.isPotentialImportPhase(P))return this.applyImportPhase(se,P,null),null;let K=this.parseIdentifier(!0),{type:we}=this.state;return(ke(we)?we!==98||this.lookaheadCharCode()===102:we!==12)?(this.resetPreviousIdentifierLeadingComments(K),this.applyImportPhase(se,P,K.name,K.loc.start),null):(this.applyImportPhase(se,P,null),K)}isPrecedingIdImportPhase(se){let{type:P}=this.state;return qr(P)?P!==98||this.lookaheadCharCode()===102:P!==12}parseImport(se){return this.match(134)?this.parseImportSourceAndAttributes(se):this.parseImportSpecifiersAndAfter(se,this.parseMaybeImportPhase(se,!1))}parseImportSpecifiersAndAfter(se,P){se.specifiers=[];let K=!this.maybeParseDefaultImportSpecifier(se,P)||this.eat(12),we=K&&this.maybeParseStarImportSpecifier(se);return K&&!we&&this.parseNamedImportSpecifiers(se),this.expectContextual(98),this.parseImportSourceAndAttributes(se)}parseImportSourceAndAttributes(se){var P;return(P=se.specifiers)!=null||(se.specifiers=[]),se.source=this.parseImportSource(),this.maybeParseImportAttributes(se),this.checkImportReflection(se),this.checkJSONModuleImport(se),this.semicolon(),this.finishNode(se,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(se,P,K){P.local=this.parseIdentifier(),se.specifiers.push(this.finishImportSpecifier(P,K))}finishImportSpecifier(se,P,K=8201){return this.checkLVal(se.local,{type:P},K),this.finishNode(se,P)}parseImportAttributes(){this.expect(5);let se=[],P=new Set;do{if(this.match(8))break;let K=this.startNode(),we=this.state.value;if(P.has(we)&&this.raise(J.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:we}),P.add(we),this.match(134)?K.key=this.parseStringLiteral(we):K.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(J.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return this.expect(8),se}parseModuleAttributes(){let se=[],P=new Set;do{let K=this.startNode();if(K.key=this.parseIdentifier(!0),K.key.name!=="type"&&this.raise(J.ModuleAttributeDifferentFromType,K.key),P.has(K.key.name)&&this.raise(J.ModuleAttributesWithDuplicateKeys,K.key,{key:K.key.name}),P.add(K.key.name),this.expect(14),!this.match(134))throw this.raise(J.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return se}maybeParseImportAttributes(se){let P;var K=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?P=this.parseModuleAttributes():P=this.parseImportAttributes(),K=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(J.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(se,"deprecatedAssertSyntax",!0),this.next(),P=this.parseImportAttributes()):P=[];!K&&this.hasPlugin("importAssertions")?se.assertions=P:se.attributes=P}maybeParseDefaultImportSpecifier(se,P){if(P){let K=this.startNodeAtNode(P);return K.local=P,se.specifiers.push(this.finishImportSpecifier(K,"ImportDefaultSpecifier")),!0}else if(ke(this.state.type))return this.parseImportSpecifierLocal(se,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(se){if(this.match(55)){let P=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(se,P,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(se){let P=!0;for(this.expect(5);!this.eat(8);){if(P)P=!1;else{if(this.eat(14))throw this.raise(J.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let K=this.startNode(),we=this.match(134),At=this.isContextual(130);K.imported=this.parseModuleExportName();let sr=this.parseImportSpecifier(K,we,se.importKind==="type"||se.importKind==="typeof",At,void 0);se.specifiers.push(sr)}}parseImportSpecifier(se,P,K,we,At){if(this.eatContextual(93))se.local=this.parseIdentifier();else{let{imported:sr}=se;if(P)throw this.raise(J.ImportBindingIsString,se,{importName:sr.value});this.checkReservedWord(sr.name,se.loc.start,!0,!0),se.local||(se.local=Zt(sr))}return this.finishImportSpecifier(se,"ImportSpecifier",At)}isThisParam(se){return se.type==="Identifier"&&se.name==="this"}},hb=class extends Xm{constructor(se,P,K){se=ne(se),super(se,P),this.options=se,this.initializeScopes(),this.plugins=K,this.filename=se.sourceFilename,this.startIndex=se.startIndex;let we=0;se.allowAwaitOutsideFunction&&(we|=1),se.allowReturnOutsideFunction&&(we|=2),se.allowImportExportEverywhere&&(we|=8),se.allowSuperOutsideMethod&&(we|=16),se.allowUndeclaredExports&&(we|=32),se.allowNewTargetOutsideFunction&&(we|=4),se.ranges&&(we|=64),se.tokens&&(we|=128),se.createImportExpressions&&(we|=256),se.createParenthesizedExpressions&&(we|=512),se.errorRecovery&&(we|=1024),se.attachComment&&(we|=2048),se.annexB&&(we|=4096),this.optionFlags=we}getScopeHandler(){return Ju}parse(){this.enterInitialScopes();let se=this.startNode(),P=this.startNode();return this.nextToken(),se.errors=null,this.parseTopLevel(se,P),se.errors=this.state.errors,se.comments.length=this.state.commentsLen,se}};function pe(se,P){var K;if(((K=P)==null?void 0:K.sourceType)==="unambiguous"){P=Object.assign({},P);try{P.sourceType="module";let we=bI(P,se),At=we.parse();if(we.sawUnambiguousESM)return At;if(we.ambiguousScriptDifferentAst)try{return P.sourceType="script",bI(P,se).parse()}catch{}else At.program.sourceType="script";return At}catch(we){try{return P.sourceType="script",bI(P,se).parse()}catch{}throw we}}else return bI(P,se).parse()}function dm(se,P){let K=bI(P,se);return K.options.strictMode&&(K.state.strict=!0),K.getExpression()}function qf(se){let P={};for(let K of Object.keys(se))P[K]=zr(se[K]);return P}var yI=qf(Ar);function bI(se,P){let K=hb,we=new Map;if(se!=null&&se.plugins){for(let At of se.plugins){let sr,Yr;typeof At=="string"?sr=At:[sr,Yr]=At,we.has(sr)||we.set(sr,Yr||{})}Qp(we),K=aE(we)}return new K(se,P,we)}var J2=new Map;function aE(se){let P=[];for(let At of oE)se.has(At)&&P.push(At);let K=P.join("|"),we=J2.get(K);if(!we){we=hb;for(let At of P)we=dC[At](we);J2.set(K,we)}return we}e.parse=pe,e.parseExpression=dm,e.tokTypes=yI}),dyi={};k3a(dyi,{parsers:()=>nNe});var $0i=uyi(gyi(),1);function abt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l=this.length)throw this.raise(J.UnterminatedString,this.state.startLoc);let At=this.input.charCodeAt(this.state.pos);if(At===P)break;At===38?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadEntity(),we=this.state.pos):Vs(At)?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadNewLine(!1),we=this.state.pos):++this.state.pos}K+=this.input.slice(we,this.state.pos++),this.finishToken(134,K)}jsxReadEntity(){let P=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let K=10;this.codePointAtPos(this.state.pos)===120&&(K=16,++this.state.pos);let we=this.readInt(K,void 0,!1,"bail");if(we!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(we)}else{let K=0,we=!1;for(;K++<10&&this.state.pos1){for(let we=0;we0){if(K&256){let At=!!(K&512),sr=(we&4)>0;return At!==sr}return!0}return K&128&&(we&8)>0?se.names.get(P)&2?!!(K&1):!1:K&2&&(we&1)>0?!0:super.isRedeclaredInScope(se,P,K)}checkLocalExport(se){let{name:P}=se;if(this.hasImport(P))return;let K=this.scopeStack.length;for(let we=K-1;we>=0;we--){let At=this.scopeStack[we].tsNames.get(P);if((At&1)>0||(At&16)>0)return}super.checkLocalExport(se)}},On=se=>se.type==="ParenthesizedExpression"?On(se.expression):se,di=class extends ls{toAssignable(se,P=!1){var K,we;let At;switch((se.type==="ParenthesizedExpression"||(K=se.extra)!=null&&K.parenthesized)&&(At=On(se),P?At.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(J.InvalidParenthesizedAssignment,se):At.type!=="MemberExpression"&&!this.isOptionalMemberExpression(At)&&this.raise(J.InvalidParenthesizedAssignment,se):this.raise(J.InvalidParenthesizedAssignment,se)),se.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":se.type="ObjectPattern";for(let Yr=0,Lr=se.properties.length,fi=Lr-1;Yrwe.type!=="ObjectMethod"&&(At===K||we.type!=="SpreadElement")&&this.isAssignable(we))}case"ObjectProperty":return this.isAssignable(se.value);case"SpreadElement":return this.isAssignable(se.argument);case"ArrayExpression":return se.elements.every(K=>K===null||this.isAssignable(K));case"AssignmentExpression":return se.operator==="=";case"ParenthesizedExpression":return this.isAssignable(se.expression);case"MemberExpression":case"OptionalMemberExpression":return!P;default:return!1}}toReferencedList(se,P){return se}toReferencedListDeep(se,P){this.toReferencedList(se,P);for(let K of se)K?.type==="ArrayExpression"&&this.toReferencedListDeep(K.elements)}parseSpread(se){let P=this.startNode();return this.next(),P.argument=this.parseMaybeAssignAllowIn(se,void 0),this.finishNode(P,"SpreadElement")}parseRestBinding(){let se=this.startNode();return this.next(),se.argument=this.parseBindingAtom(),this.finishNode(se,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let se=this.startNode();return this.next(),se.elements=this.parseBindingList(3,93,1),this.finishNode(se,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(se,P,K){let we=K&1,At=[],sr=!0;for(;!this.eat(se);)if(sr?sr=!1:this.expect(12),we&&this.match(12))At.push(null);else{if(this.eat(se))break;if(this.match(21)){let Yr=this.parseRestBinding();if((this.hasPlugin("flow")||K&2)&&(Yr=this.parseFunctionParamType(Yr)),At.push(Yr),!this.checkCommaAfterRest(P)){this.expect(se);break}}else{let Yr=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(J.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)Yr.push(this.parseDecorator());At.push(this.parseAssignableListItem(K,Yr))}}return At}parseBindingRestProperty(se){return this.next(),se.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(se,"RestElement")}parseBindingProperty(){let{type:se,startLoc:P}=this.state;if(se===21)return this.parseBindingRestProperty(this.startNode());let K=this.startNode();return se===139?(this.expectPlugin("destructuringPrivate",P),this.classScope.usePrivateName(this.state.value,P),K.key=this.parsePrivateName()):this.parsePropertyName(K),K.method=!1,this.parseObjPropValue(K,P,!1,!1,!0,!1)}parseAssignableListItem(se,P){let K=this.parseMaybeDefault();(this.hasPlugin("flow")||se&2)&&this.parseFunctionParamType(K);let we=this.parseMaybeDefault(K.loc.start,K);return P.length&&(K.decorators=P),we}parseFunctionParamType(se){return se}parseMaybeDefault(se,P){var K,we;if((K=se)!=null||(se=this.state.startLoc),P=(we=P)!=null?we:this.parseBindingAtom(),!this.eat(29))return P;let At=this.startNodeAt(se);return At.left=P,At.right=this.parseMaybeAssignAllowIn(),this.finishNode(At,"AssignmentPattern")}isValidLVal(se,P,K){switch(se){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(se){return se.type==="OptionalMemberExpression"}checkLVal(se,P,K=64,we=!1,At=!1,sr=!1){var Yr;let Lr=se.type;if(this.isObjectMethod(se))return;let fi=this.isOptionalMemberExpression(se);if(fi||Lr==="MemberExpression"){fi&&(this.expectPlugin("optionalChainingAssign",se.loc.start),P.type!=="AssignmentExpression"&&this.raise(J.InvalidLhsOptionalChaining,se,{ancestor:P})),K!==64&&this.raise(J.InvalidPropertyBindingPattern,se);return}if(Lr==="Identifier"){this.checkIdentifier(se,K,At);let{name:wl}=se;we&&(we.has(wl)?this.raise(J.ParamDupe,se):we.add(wl));return}let $n=this.isValidLVal(Lr,!(sr||(Yr=se.extra)!=null&&Yr.parenthesized)&&P.type==="AssignmentExpression",K);if($n===!0)return;if($n===!1){let wl=K===64?J.InvalidLhs:J.InvalidLhsBinding;this.raise(wl,se,{ancestor:P});return}let ra,kc;typeof $n=="string"?(ra=$n,kc=Lr==="ParenthesizedExpression"):[ra,kc]=$n;let Dl=Lr==="ArrayPattern"||Lr==="ObjectPattern"?{type:Lr}:P,ca=se[ra];if(Array.isArray(ca))for(let wl of ca)wl&&this.checkLVal(wl,Dl,K,we,At,kc);else ca&&this.checkLVal(ca,Dl,K,we,At,kc)}checkIdentifier(se,P,K=!1){this.state.strict&&(K?Xa(se.name,this.inModule):Ws(se.name))&&(P===64?this.raise(J.StrictEvalArguments,se,{referenceName:se.name}):this.raise(J.StrictEvalArgumentsBinding,se,{bindingName:se.name})),P&8192&&se.name==="let"&&this.raise(J.LetInLexicalBinding,se),P&64||this.declareNameFromIdentifier(se,P)}declareNameFromIdentifier(se,P){this.scope.declareName(se.name,P,se.loc.start)}checkToRestConversion(se,P){switch(se.type){case"ParenthesizedExpression":this.checkToRestConversion(se.expression,P);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(P)break;default:this.raise(J.InvalidRestAssignmentPattern,se)}}checkCommaAfterRest(se){return this.match(12)?(this.raise(this.lookaheadCharCode()===se?J.RestTrailingComma:J.ElementAfterRest,this.state.startLoc),!0):!1}};function aa(se){if(se==null)throw new Error(`Unexpected ${se} value.`);return se}function vo(se){if(!se)throw new Error("Assert fail")}var us=Q`typescript`({AbstractMethodHasImplementation:({methodName:se})=>`Method '${se}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:se})=>`Property '${se}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"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:({kind:se})=>`'declare' is not allowed in ${se}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:se})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:se})=>`Duplicate modifier: '${se}'.`,EmptyHeritageClauseType:({token:se})=>`'${se}' 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:({modifiers:se})=>`'${se[0]}' modifier cannot be used with '${se[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:se})=>`Index signatures cannot have an accessibility modifier ('${se}').`,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:({modifier:se})=>`'${se}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:se})=>`'${se}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:se})=>`'${se}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:se})=>`'${se[0]}' modifier must precede '${se[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.",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:({modifier:se})=>`Private elements cannot have an accessibility modifier ('${se}').`,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.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:se})=>`Single type parameter ${se} should have a trailing comma. Example usage: <${se},>.`,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:({type:se})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${se}.`});function Xl(se){switch(se){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 WA(se){return se==="private"||se==="public"||se==="protected"}function If(se){return se==="in"||se==="out"}var rf=se=>class extends se{constructor(...P){super(...P),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:us.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter})}getScopeHandler(){return Dr}tsIsIdentifier(){return qr(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(P,K){if(!qr(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let we=this.state.value;if(P.includes(we)){if(K&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return we}}tsParseModifiers({allowedModifiers:P,disallowedModifiers:K,stopOnStartOfClassStaticBlock:we,errorTemplate:At=us.InvalidModifierOnTypeMember},sr){let Yr=(fi,$n,ra,kc)=>{$n===ra&&sr[kc]&&this.raise(us.InvalidModifiersOrder,fi,{orderedModifiers:[ra,kc]})},Lr=(fi,$n,ra,kc)=>{(sr[ra]&&$n===kc||sr[kc]&&$n===ra)&&this.raise(us.IncompatibleModifiers,fi,{modifiers:[ra,kc]})};for(;;){let{startLoc:fi}=this.state,$n=this.tsParseModifier(P.concat(K??[]),we);if(!$n)break;WA($n)?sr.accessibility?this.raise(us.DuplicateAccessibilityModifier,fi,{modifier:$n}):(Yr(fi,$n,$n,"override"),Yr(fi,$n,$n,"static"),Yr(fi,$n,$n,"readonly"),sr.accessibility=$n):If($n)?(sr[$n]&&this.raise(us.DuplicateModifier,fi,{modifier:$n}),sr[$n]=!0,Yr(fi,$n,"in","out")):(hasOwnProperty.call(sr,$n)?this.raise(us.DuplicateModifier,fi,{modifier:$n}):(Yr(fi,$n,"static","readonly"),Yr(fi,$n,"static","override"),Yr(fi,$n,"override","readonly"),Yr(fi,$n,"abstract","override"),Lr(fi,$n,"declare","override"),Lr(fi,$n,"static","abstract")),sr[$n]=!0),K!=null&&K.includes($n)&&this.raise(At,fi,{modifier:$n})}}tsIsListTerminator(P){switch(P){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(P,K){let we=[];for(;!this.tsIsListTerminator(P);)we.push(K());return we}tsParseDelimitedList(P,K,we){return aa(this.tsParseDelimitedListWorker(P,K,!0,we))}tsParseDelimitedListWorker(P,K,we,At){let sr=[],Yr=-1;for(;!this.tsIsListTerminator(P);){Yr=-1;let Lr=K();if(Lr==null)return;if(sr.push(Lr),this.eat(12)){Yr=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(P))break;we&&this.expect(12);return}return At&&(At.value=Yr),sr}tsParseBracketedList(P,K,we,At,sr){At||(we?this.expect(0):this.expect(47));let Yr=this.tsParseDelimitedList(P,K,sr);return we?this.expect(3):this.expect(48),Yr}tsParseImportType(){let P=this.startNode();return this.expect(83),this.expect(10),this.match(134)?P.argument=this.parseStringLiteral(this.state.value):(this.raise(us.UnsupportedImportTypeArgument,this.state.startLoc),P.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(P.options=super.parseMaybeAssignAllowIn(),this.eat(12)):P.options=null,this.expect(11),this.eat(16)&&(P.qualifier=this.tsParseEntityName(3)),this.match(47)&&(P.typeParameters=this.tsParseTypeArguments()),this.finishNode(P,"TSImportType")}tsParseEntityName(P){let K;if(P&1&&this.match(78))if(P&2)K=this.parseIdentifier(!0);else{let we=this.startNode();this.next(),K=this.finishNode(we,"ThisExpression")}else K=this.parseIdentifier(!!(P&1));for(;this.eat(16);){let we=this.startNodeAtNode(K);we.left=K,we.right=this.parseIdentifier(!!(P&1)),K=this.finishNode(we,"TSQualifiedName")}return K}tsParseTypeReference(){let P=this.startNode();return P.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(P.typeParameters=this.tsParseTypeArguments()),this.finishNode(P,"TSTypeReference")}tsParseThisTypePredicate(P){this.next();let K=this.startNodeAtNode(P);return K.parameterName=P,K.typeAnnotation=this.tsParseTypeAnnotation(!1),K.asserts=!1,this.finishNode(K,"TSTypePredicate")}tsParseThisTypeNode(){let P=this.startNode();return this.next(),this.finishNode(P,"TSThisType")}tsParseTypeQuery(){let P=this.startNode();return this.expect(87),this.match(83)?P.exprName=this.tsParseImportType():P.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(P.typeParameters=this.tsParseTypeArguments()),this.finishNode(P,"TSTypeQuery")}tsParseTypeParameter(P){let K=this.startNode();return P(K),K.name=this.tsParseTypeParameterName(),K.constraint=this.tsEatThenParseType(81),K.default=this.tsEatThenParseType(29),this.finishNode(K,"TSTypeParameter")}tsTryParseTypeParameters(P){if(this.match(47))return this.tsParseTypeParameters(P)}tsParseTypeParameters(P){let K=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let we={value:-1};return K.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,P),!1,!0,we),K.params.length===0&&this.raise(us.EmptyTypeParameters,K),we.value!==-1&&this.addExtra(K,"trailingComma",we.value),this.finishNode(K,"TSTypeParameterDeclaration")}tsFillSignature(P,K){let we=P===19,At="parameters",sr="typeAnnotation";K.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),K[At]=this.tsParseBindingListForSignature(),we?K[sr]=this.tsParseTypeOrTypePredicateAnnotation(P):this.match(P)&&(K[sr]=this.tsParseTypeOrTypePredicateAnnotation(P))}tsParseBindingListForSignature(){let P=super.parseBindingList(11,41,2);for(let K of P){let{type:we}=K;(we==="AssignmentPattern"||we==="TSParameterProperty")&&this.raise(us.UnsupportedSignatureParameterKind,K,{type:we})}return P}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(P,K){return this.tsFillSignature(14,K),this.tsParseTypeMemberSemicolon(),this.finishNode(K,P)}tsIsUnambiguouslyIndexSignature(){return this.next(),qr(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(P){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let K=this.parseIdentifier();K.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(K),this.expect(3),P.parameters=[K];let we=this.tsTryParseTypeAnnotation();return we&&(P.typeAnnotation=we),this.tsParseTypeMemberSemicolon(),this.finishNode(P,"TSIndexSignature")}tsParsePropertyOrMethodSignature(P,K){this.eat(17)&&(P.optional=!0);let we=P;if(this.match(10)||this.match(47)){K&&this.raise(us.ReadonlyForMethodSignature,P);let At=we;At.kind&&this.match(47)&&this.raise(us.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,At),this.tsParseTypeMemberSemicolon();let sr="parameters",Yr="typeAnnotation";if(At.kind==="get")At[sr].length>0&&(this.raise(J.BadGetterArity,this.state.curPosition()),this.isThisParam(At[sr][0])&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(At.kind==="set"){if(At[sr].length!==1)this.raise(J.BadSetterArity,this.state.curPosition());else{let Lr=At[sr][0];this.isThisParam(Lr)&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()),Lr.type==="Identifier"&&Lr.optional&&this.raise(us.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),Lr.type==="RestElement"&&this.raise(us.SetAccessorCannotHaveRestParameter,this.state.curPosition())}At[Yr]&&this.raise(us.SetAccessorCannotHaveReturnType,At[Yr])}else At.kind="method";return this.finishNode(At,"TSMethodSignature")}else{let At=we;K&&(At.readonly=!0);let sr=this.tsTryParseTypeAnnotation();return sr&&(At.typeAnnotation=sr),this.tsParseTypeMemberSemicolon(),this.finishNode(At,"TSPropertySignature")}}tsParseTypeMember(){let P=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",P);if(this.match(77)){let we=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",P):(P.key=this.createIdentifier(we,"new"),this.tsParsePropertyOrMethodSignature(P,!1))}return this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},P),this.tsTryParseIndexSignature(P)||(super.parsePropertyName(P),!P.computed&&P.key.type==="Identifier"&&(P.key.name==="get"||P.key.name==="set")&&this.tsTokenCanFollowModifier()&&(P.kind=P.key.name,super.parsePropertyName(P)),this.tsParsePropertyOrMethodSignature(P,!!P.readonly))}tsParseTypeLiteral(){let P=this.startNode();return P.members=this.tsParseObjectTypeMembers(),this.finishNode(P,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let P=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),P}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let P=this.startNode();this.expect(5),this.match(53)?(P.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(P.readonly=!0),this.expect(0);{let K=this.startNode();K.name=this.tsParseTypeParameterName(),K.constraint=this.tsExpectThenParseType(58),P.typeParameter=this.finishNode(K,"TSTypeParameter")}return P.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(P.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(P.optional=!0),P.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(P,"TSMappedType")}tsParseTupleType(){let P=this.startNode();P.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let K=!1;return P.elementTypes.forEach(we=>{let{type:At}=we;K&&At!=="TSRestType"&&At!=="TSOptionalType"&&!(At==="TSNamedTupleMember"&&we.optional)&&this.raise(us.OptionalTypeBeforeRequired,we),K||(K=At==="TSNamedTupleMember"&&we.optional||At==="TSOptionalType")}),this.finishNode(P,"TSTupleType")}tsParseTupleElementType(){let P=this.state.startLoc,K=this.eat(21),{startLoc:we}=this.state,At,sr,Yr,Lr,fi=ke(this.state.type)?this.lookaheadCharCode():null;if(fi===58)At=!0,Yr=!1,sr=this.parseIdentifier(!0),this.expect(14),Lr=this.tsParseType();else if(fi===63){Yr=!0;let $n=this.state.value,ra=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(At=!0,sr=this.createIdentifier(this.startNodeAt(we),$n),this.expect(17),this.expect(14),Lr=this.tsParseType()):(At=!1,Lr=ra,this.expect(17))}else Lr=this.tsParseType(),Yr=this.eat(17),At=this.eat(14);if(At){let $n;sr?($n=this.startNodeAt(we),$n.optional=Yr,$n.label=sr,$n.elementType=Lr,this.eat(17)&&($n.optional=!0,this.raise(us.TupleOptionalAfterType,this.state.lastTokStartLoc))):($n=this.startNodeAt(we),$n.optional=Yr,this.raise(us.InvalidTupleMemberLabel,Lr),$n.label=Lr,$n.elementType=this.tsParseType()),Lr=this.finishNode($n,"TSNamedTupleMember")}else if(Yr){let $n=this.startNodeAt(we);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSOptionalType")}if(K){let $n=this.startNodeAt(P);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSRestType")}return Lr}tsParseParenthesizedType(){let P=this.startNode();return this.expect(10),P.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(P,"TSParenthesizedType")}tsParseFunctionOrConstructorType(P,K){let we=this.startNode();return P==="TSConstructorType"&&(we.abstract=!!K,K&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,we)),this.finishNode(we,P)}tsParseLiteralTypeNode(){let P=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:P.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(P,"TSLiteralType")}tsParseTemplateLiteralType(){{let P=this.startNode();return P.literal=super.parseTemplate(!1),this.finishNode(P,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let P=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(P):P}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let P=this.startNode(),K=this.lookahead();return K.type!==135&&K.type!==136&&this.unexpected(),P.literal=this.parseMaybeUnary(),this.finishNode(P,"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:P}=this.state;if(qr(P)||P===88||P===84){let K=P===88?"TSVoidKeyword":P===84?"TSNullKeyword":Xl(this.state.value);if(K!==void 0&&this.lookaheadCharCode()!==46){let we=this.startNode();return this.next(),this.finishNode(we,K)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:P}=this.state,K=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let we=this.startNodeAt(P);we.elementType=K,this.expect(3),K=this.finishNode(we,"TSArrayType")}else{let we=this.startNodeAt(P);we.objectType=K,we.indexType=this.tsParseType(),this.expect(3),K=this.finishNode(we,"TSIndexedAccessType")}return K}tsParseTypeOperator(){let P=this.startNode(),K=this.state.value;return this.next(),P.operator=K,P.typeAnnotation=this.tsParseTypeOperatorOrHigher(),K==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(P),this.finishNode(P,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(P){switch(P.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(us.UnexpectedReadonly,P)}}tsParseInferType(){let P=this.startNode();this.expectContextual(115);let K=this.startNode();return K.name=this.tsParseTypeParameterName(),K.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),P.typeParameter=this.finishNode(K,"TSTypeParameter"),this.finishNode(P,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let P=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return P}}tsParseTypeOperatorOrHigher(){return Gc(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(P,K,we){let At=this.startNode(),sr=this.eat(we),Yr=[];do Yr.push(K());while(this.eat(we));return Yr.length===1&&!sr?Yr[0]:(At.types=Yr,this.finishNode(At,P))}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(qr(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:P}=this.state,K=P.length;try{return this.parseObjectLike(8,!0),P.length===K}catch{return!1}}if(this.match(0)){this.next();let{errors:P}=this.state,K=P.length;try{return super.parseBindingList(3,93,1),P.length===K}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(P){return this.tsInType(()=>{let K=this.startNode();this.expect(P);let we=this.startNode(),At=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(At&&this.match(78)){let Lr=this.tsParseThisTypeOrThisTypePredicate();return Lr.type==="TSThisType"?(we.parameterName=Lr,we.asserts=!0,we.typeAnnotation=null,Lr=this.finishNode(we,"TSTypePredicate")):(this.resetStartLocationFromNode(Lr,we),Lr.asserts=!0),K.typeAnnotation=Lr,this.finishNode(K,"TSTypeAnnotation")}let sr=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!sr)return At?(we.parameterName=this.parseIdentifier(),we.asserts=At,we.typeAnnotation=null,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,K);let Yr=this.tsParseTypeAnnotation(!1);return we.parameterName=sr,we.typeAnnotation=Yr,we.asserts=At,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let P=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),P}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let P=this.state.containsEsc;return this.next(),!qr(this.state.type)&&!this.match(78)?!1:(P&&this.raise(J.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(P=!0,K=this.startNode()){return this.tsInType(()=>{P&&this.expect(14),K.typeAnnotation=this.tsParseType()}),this.finishNode(K,"TSTypeAnnotation")}tsParseType(){vo(this.state.inType);let P=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return P;let K=this.startNodeAtNode(P);return K.checkType=P,K.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),K.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),K.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(K,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&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(us.ReservedTypeAssertion,this.state.startLoc);let P=this.startNode();return P.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),P.expression=this.parseMaybeUnary(),this.finishNode(P,"TSTypeAssertion")}tsParseHeritageClause(P){let K=this.state.startLoc,we=this.tsParseDelimitedList("HeritageClauseElement",()=>{let At=this.startNode();return At.expression=this.tsParseEntityName(3),this.match(47)&&(At.typeParameters=this.tsParseTypeArguments()),this.finishNode(At,"TSExpressionWithTypeArguments")});return we.length||this.raise(us.EmptyHeritageClauseType,K,{token:P}),we}tsParseInterfaceDeclaration(P,K={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),K.declare&&(P.declare=!0),qr(this.state.type)?(P.id=this.parseIdentifier(),this.checkIdentifier(P.id,130)):(P.id=null,this.raise(us.MissingInterfaceName,this.state.startLoc)),P.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(P.extends=this.tsParseHeritageClause("extends"));let we=this.startNode();return we.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),P.body=this.finishNode(we,"TSInterfaceBody"),this.finishNode(P,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(P){return P.id=this.parseIdentifier(),this.checkIdentifier(P.id,2),P.typeAnnotation=this.tsInType(()=>{if(P.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let K=this.startNode();return this.next(),this.finishNode(K,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(P,"TSTypeAliasDeclaration")}tsInTopLevelContext(P){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return P()}finally{this.state.context=K}}else return P()}tsInType(P){let K=this.state.inType;this.state.inType=!0;try{return P()}finally{this.state.inType=K}}tsInDisallowConditionalTypesContext(P){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return P()}finally{this.state.inDisallowConditionalTypesContext=K}}tsInAllowConditionalTypesContext(P){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return P()}finally{this.state.inDisallowConditionalTypesContext=K}}tsEatThenParseType(P){if(this.match(P))return this.tsNextThenParseType()}tsExpectThenParseType(P){return this.tsInType(()=>(this.expect(P),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let P=this.startNode();return P.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(P.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(P,"TSEnumMember")}tsParseEnumDeclaration(P,K={}){return K.const&&(P.const=!0),K.declare&&(P.declare=!0),this.expectContextual(126),P.id=this.parseIdentifier(),this.checkIdentifier(P.id,P.const?8971:8459),this.expect(5),P.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(P,"TSEnumDeclaration")}tsParseEnumBody(){let P=this.startNode();return this.expect(5),P.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(P,"TSEnumBody")}tsParseModuleBlock(){let P=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(P.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(P,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(P,K=!1){if(P.id=this.parseIdentifier(),K||this.checkIdentifier(P.id,1024),this.eat(16)){let we=this.startNode();this.tsParseModuleOrNamespaceDeclaration(we,!0),P.body=we}else this.scope.enter(256),this.prodParam.enter(0),P.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(P,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(P){return this.isContextual(112)?(P.kind="global",P.global=!0,P.id=this.parseIdentifier()):this.match(134)?(P.kind="module",P.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),P.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(P,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(P,K,we){P.isExport=we||!1,P.id=K||this.parseIdentifier(),this.checkIdentifier(P.id,4096),this.expect(29);let At=this.tsParseModuleReference();return P.importKind==="type"&&At.type!=="TSExternalModuleReference"&&this.raise(us.ImportAliasHasImportType,At),P.moduleReference=At,this.semicolon(),this.finishNode(P,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let P=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),P.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(P,"TSExternalModuleReference")}tsLookAhead(P){let K=this.state.clone(),we=P();return this.state=K,we}tsTryParseAndCatch(P){let K=this.tryParse(we=>P()||we());if(!(K.aborted||!K.node))return K.error&&(this.state=K.failState),K.node}tsTryParse(P){let K=this.state.clone(),we=P();if(we!==void 0&&we!==!1)return we;this.state=K}tsTryParseDeclare(P){if(this.isLineTerminator())return;let K=this.state.type,we;return this.isContextual(100)&&(K=74,we="let"),this.tsInAmbientContext(()=>{switch(K){case 68:return P.declare=!0,super.parseFunctionStatement(P,!1,!1);case 80:return P.declare=!0,this.parseClass(P,!0,!1);case 126:return this.tsParseEnumDeclaration(P,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(P);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(P.declare=!0,this.parseVarStatement(P,we||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(P,{const:!0,declare:!0}));case 129:{let At=this.tsParseInterfaceDeclaration(P,{declare:!0});if(At)return At}default:if(qr(K))return this.tsParseDeclaration(P,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(P,K,we){switch(K.name){case"declare":{let At=this.tsTryParseDeclare(P);return At&&(At.declare=!0),At}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let At=P;return At.kind="global",P.global=!0,At.id=K,At.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(At,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(P,K.name,!1,we)}}tsParseDeclaration(P,K,we,At){switch(K){case"abstract":if(this.tsCheckLineTerminator(we)&&(this.match(80)||qr(this.state.type)))return this.tsParseAbstractDeclaration(P,At);break;case"module":if(this.tsCheckLineTerminator(we)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(P);if(qr(this.state.type))return P.kind="module",this.tsParseModuleOrNamespaceDeclaration(P)}break;case"namespace":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return P.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(P);break;case"type":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return this.tsParseTypeAliasDeclaration(P);break}}tsCheckLineTerminator(P){return P?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(P){if(!this.match(47))return;let K=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let we=this.tsTryParseAndCatch(()=>{let At=this.startNodeAt(P);return At.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(At),At.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),At});if(this.state.maybeInArrowParameters=K,!!we)return super.parseArrowExpression(we,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let P=this.startNode();return P.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),P.params.length===0?this.raise(us.EmptyTypeArguments,P):!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(P,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return al(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(P,K){let we=this.state.startLoc,At={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},At);let sr=At.accessibility,Yr=At.override,Lr=At.readonly;!(P&4)&&(sr||Lr||Yr)&&this.raise(us.UnexpectedParameterModifier,we);let fi=this.parseMaybeDefault();P&2&&this.parseFunctionParamType(fi);let $n=this.parseMaybeDefault(fi.loc.start,fi);if(sr||Lr||Yr){let ra=this.startNodeAt(we);return K.length&&(ra.decorators=K),sr&&(ra.accessibility=sr),Lr&&(ra.readonly=Lr),Yr&&(ra.override=Yr),$n.type!=="Identifier"&&$n.type!=="AssignmentPattern"&&this.raise(us.UnsupportedParameterPropertyKind,ra),ra.parameter=$n,this.finishNode(ra,"TSParameterProperty")}return K.length&&(fi.decorators=K),$n}isSimpleParameter(P){return P.type==="TSParameterProperty"&&super.isSimpleParameter(P.parameter)||super.isSimpleParameter(P)}tsDisallowOptionalPattern(P){for(let K of P.params)K.type!=="Identifier"&&K.optional&&!this.state.isAmbientContext&&this.raise(us.PatternIsOptional,K)}setArrowFunctionParameters(P,K,we){super.setArrowFunctionParameters(P,K,we),this.tsDisallowOptionalPattern(P)}parseFunctionBodyAndFinish(P,K,we=!1){this.match(14)&&(P.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let At=K==="FunctionDeclaration"?"TSDeclareFunction":K==="ClassMethod"||K==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return At&&!this.match(5)&&this.isLineTerminator()?this.finishNode(P,At):At==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(us.DeclareFunctionHasImplementation,P),P.declare)?super.parseFunctionBodyAndFinish(P,At,we):(this.tsDisallowOptionalPattern(P),super.parseFunctionBodyAndFinish(P,K,we))}registerFunctionStatementId(P){!P.body&&P.id?this.checkIdentifier(P.id,1024):super.registerFunctionStatementId(P)}tsCheckForInvalidTypeCasts(P){P.forEach(K=>{K?.type==="TSTypeCastExpression"&&this.raise(us.UnexpectedTypeAnnotation,K.typeAnnotation)})}toReferencedList(P,K){return this.tsCheckForInvalidTypeCasts(P),P}parseArrayLike(P,K,we,At){let sr=super.parseArrayLike(P,K,we,At);return sr.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(sr.elements),sr}parseSubscript(P,K,we,At){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let Yr=this.startNodeAt(K);return Yr.expression=P,this.finishNode(Yr,"TSNonNullExpression")}let sr=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(we)return At.stop=!0,P;At.optionalChainMember=sr=!0,this.next()}if(this.match(47)||this.match(51)){let Yr,Lr=this.tsTryParseAndCatch(()=>{if(!we&&this.atPossibleAsyncArrow(P)){let kc=this.tsTryParseGenericAsyncArrowFunction(K);if(kc)return kc}let fi=this.tsParseTypeArgumentsInExpression();if(!fi)return;if(sr&&!this.match(10)){Yr=this.state.curPosition();return}if(Ft(this.state.type)){let kc=super.parseTaggedTemplateExpression(P,K,At);return kc.typeParameters=fi,kc}if(!we&&this.eat(10)){let kc=this.startNodeAt(K);return kc.callee=P,kc.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(kc.arguments),kc.typeParameters=fi,At.optionalChainMember&&(kc.optional=sr),this.finishCallExpression(kc,At.optionalChainMember)}let $n=this.state.type;if($n===48||$n===52||$n!==10&&Nn($n)&&!this.hasPrecedingLineBreak())return;let ra=this.startNodeAt(K);return ra.expression=P,ra.typeParameters=fi,this.finishNode(ra,"TSInstantiationExpression")});if(Yr&&this.unexpected(Yr,10),Lr)return Lr.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(us.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),Lr}return super.parseSubscript(P,K,we,At)}parseNewCallee(P){var K;super.parseNewCallee(P);let{callee:we}=P;we.type==="TSInstantiationExpression"&&!((K=we.extra)!=null&&K.parenthesized)&&(P.typeParameters=we.typeParameters,P.callee=we.expression)}parseExprOp(P,K,we){let At;if(Hr(58)>we&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(At=this.isContextual(120)))){let sr=this.startNodeAt(K);return sr.expression=P,sr.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(At&&this.raise(J.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(sr,At?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(sr,K,we)}return super.parseExprOp(P,K,we)}checkReservedWord(P,K,we,At){this.state.isAmbientContext||super.checkReservedWord(P,K,we,At)}checkImportReflection(P){super.checkImportReflection(P),P.module&&P.importKind!=="value"&&this.raise(us.ImportReflectionHasImportType,P.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(P){if(super.isPotentialImportPhase(P))return!0;if(this.isContextual(130)){let K=this.lookaheadCharCode();return P?K===123||K===42:K!==61}return!P&&this.isContextual(87)}applyImportPhase(P,K,we,At){super.applyImportPhase(P,K,we,At),K?P.exportKind=we==="type"?"type":"value":P.importKind=we==="type"||we==="typeof"?we:"value"}parseImport(P){if(this.match(134))return P.importKind="value",super.parseImport(P);let K;if(qr(this.state.type)&&this.lookaheadCharCode()===61)return P.importKind="value",this.tsParseImportEqualsDeclaration(P);if(this.isContextual(130)){let we=this.parseMaybeImportPhase(P,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(P,we);K=super.parseImportSpecifiersAndAfter(P,we)}else K=super.parseImport(P);return K.importKind==="type"&&K.specifiers.length>1&&K.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(us.TypeImportCannotSpecifyDefaultAndNamed,K),K}parseExport(P,K){if(this.match(83)){let we=P;this.next();let At=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?At=this.parseMaybeImportPhase(we,!1):we.importKind="value",this.tsParseImportEqualsDeclaration(we,At,!0)}else if(this.eat(29)){let we=P;return we.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(we,"TSExportAssignment")}else if(this.eatContextual(93)){let we=P;return this.expectContextual(128),we.id=this.parseIdentifier(),this.semicolon(),this.finishNode(we,"TSNamespaceExportDeclaration")}else return super.parseExport(P,K)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let P=this.startNode();return this.next(),P.abstract=!0,this.parseClass(P,!0,!0)}if(this.match(129)){let P=this.tsParseInterfaceDeclaration(this.startNode());if(P)return P}return super.parseExportDefaultExpression()}parseVarStatement(P,K,we=!1){let{isAmbientContext:At}=this.state,sr=super.parseVarStatement(P,K,we||At);if(!At)return sr;for(let{id:Yr,init:Lr}of sr.declarations)Lr&&(K!=="const"||Yr.typeAnnotation?this.raise(us.InitializerNotAllowedInAmbientContext,Lr):bd(Lr,this.hasPlugin("estree"))||this.raise(us.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,Lr));return sr}parseStatementContent(P,K){if(this.match(75)&&this.isLookaheadContextual("enum")){let we=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(we,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let we=this.tsParseInterfaceDeclaration(this.startNode());if(we)return we}return super.parseStatementContent(P,K)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(P,K){return K.some(we=>WA(we)?P.accessibility===we:!!P[we])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(P,K,we){let At=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:At,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:us.InvalidModifierOnTypeParameterPositions},K);let sr=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(K,At)&&this.raise(us.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(P,K)):this.parseClassMemberWithIsStatic(P,K,we,!!K.static)};K.declare?this.tsInAmbientContext(sr):sr()}parseClassMemberWithIsStatic(P,K,we,At){let sr=this.tsTryParseIndexSignature(K);if(sr){P.body.push(sr),K.abstract&&this.raise(us.IndexSignatureHasAbstract,K),K.accessibility&&this.raise(us.IndexSignatureHasAccessibility,K,{modifier:K.accessibility}),K.declare&&this.raise(us.IndexSignatureHasDeclare,K),K.override&&this.raise(us.IndexSignatureHasOverride,K);return}!this.state.inAbstractClass&&K.abstract&&this.raise(us.NonAbstractClassHasAbstractMethod,K),K.override&&(we.hadSuperClass||this.raise(us.OverrideNotInSubClass,K)),super.parseClassMemberWithIsStatic(P,K,we,At)}parsePostMemberNameModifiers(P){this.eat(17)&&(P.optional=!0),P.readonly&&this.match(10)&&this.raise(us.ClassMethodHasReadonly,P),P.declare&&this.match(10)&&this.raise(us.ClassMethodHasDeclare,P)}parseExpressionStatement(P,K,we){return(K.type==="Identifier"?this.tsParseExpressionStatement(P,K,we):void 0)||super.parseExpressionStatement(P,K,we)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(P,K,we){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(P,K,we);let At=this.tryParse(()=>super.parseConditional(P,K));return At.node?(At.error&&(this.state=At.failState),At.node):(At.error&&super.setOptionalParametersError(we,At.error),P)}parseParenItem(P,K){let we=super.parseParenItem(P,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(P)),this.match(14)){let At=this.startNodeAt(K);return At.expression=P,At.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(At,"TSTypeCastExpression")}return P}parseExportDeclaration(P){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(P));let K=this.state.startLoc,we=this.eatContextual(125);if(we&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(us.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let At=qr(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(P);return At?((At.type==="TSInterfaceDeclaration"||At.type==="TSTypeAliasDeclaration"||we)&&(P.exportKind="type"),we&&At.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(At,K),At.declare=!0),At):null}parseClassId(P,K,we,At){if((!K||we)&&this.isContextual(113))return;super.parseClassId(P,K,we,P.declare?1024:8331);let sr=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);sr&&(P.typeParameters=sr)}parseClassPropertyAnnotation(P){P.optional||(this.eat(35)?P.definite=!0:this.eat(17)&&(P.optional=!0));let K=this.tsTryParseTypeAnnotation();K&&(P.typeAnnotation=K)}parseClassProperty(P){if(this.parseClassPropertyAnnotation(P),this.state.isAmbientContext&&!(P.readonly&&!P.typeAnnotation)&&this.match(29)&&this.raise(us.DeclareClassFieldHasInitializer,this.state.startLoc),P.abstract&&this.match(29)){let{key:K}=P;this.raise(us.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:K.type==="Identifier"&&!P.computed?K.name:`[${this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end))}]`})}return super.parseClassProperty(P)}parseClassPrivateProperty(P){return P.abstract&&this.raise(us.PrivateElementHasAbstract,P),P.accessibility&&this.raise(us.PrivateElementHasAccessibility,P,{modifier:P.accessibility}),this.parseClassPropertyAnnotation(P),super.parseClassPrivateProperty(P)}parseClassAccessorProperty(P){return this.parseClassPropertyAnnotation(P),P.optional&&this.raise(us.AccessorCannotBeOptional,P),super.parseClassAccessorProperty(P)}pushClassMethod(P,K,we,At,sr,Yr){let Lr=this.tsTryParseTypeParameters(this.tsParseConstModifier);Lr&&sr&&this.raise(us.ConstructorHasTypeParameters,Lr);let{declare:fi=!1,kind:$n}=K;fi&&($n==="get"||$n==="set")&&this.raise(us.DeclareAccessor,K,{kind:$n}),Lr&&(K.typeParameters=Lr),super.pushClassMethod(P,K,we,At,sr,Yr)}pushClassPrivateMethod(P,K,we,At){let sr=this.tsTryParseTypeParameters(this.tsParseConstModifier);sr&&(K.typeParameters=sr),super.pushClassPrivateMethod(P,K,we,At)}declareClassPrivateMethodInScope(P,K){P.type!=="TSDeclareMethod"&&(P.type==="MethodDefinition"&&!hasOwnProperty.call(P.value,"body")||super.declareClassPrivateMethodInScope(P,K))}parseClassSuper(P){super.parseClassSuper(P),P.superClass&&(this.match(47)||this.match(51))&&(P.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(P.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(P,K,we,At,sr,Yr,Lr){let fi=this.tsTryParseTypeParameters(this.tsParseConstModifier);return fi&&(P.typeParameters=fi),super.parseObjPropValue(P,K,we,At,sr,Yr,Lr)}parseFunctionParams(P,K){let we=this.tsTryParseTypeParameters(this.tsParseConstModifier);we&&(P.typeParameters=we),super.parseFunctionParams(P,K)}parseVarId(P,K){super.parseVarId(P,K),P.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(P.definite=!0);let we=this.tsTryParseTypeAnnotation();we&&(P.id.typeAnnotation=we,this.resetEndLocation(P.id))}parseAsyncArrowFromCallExpression(P,K){return this.match(14)&&(P.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(P,K)}parseMaybeAssign(P,K){var we,At,sr,Yr,Lr;let fi,$n,ra;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(fi=this.state.clone(),$n=this.tryParse(()=>super.parseMaybeAssign(P,K),fi),!$n.error)return $n.node;let{context:ca}=this.state,wl=ca[ca.length-1];(wl===Se.j_oTag||wl===Se.j_expr)&&ca.pop()}if(!((we=$n)!=null&&we.error)&&!this.match(47))return super.parseMaybeAssign(P,K);(!fi||fi===this.state)&&(fi=this.state.clone());let kc,Dl=this.tryParse(ca=>{var wl,eA;kc=this.tsParseTypeParameters(this.tsParseConstModifier);let BA=super.parseMaybeAssign(P,K);return(BA.type!=="ArrowFunctionExpression"||(wl=BA.extra)!=null&&wl.parenthesized)&&ca(),((eA=kc)==null?void 0:eA.params.length)!==0&&this.resetStartLocationFromNode(BA,kc),BA.typeParameters=kc,BA},fi);if(!Dl.error&&!Dl.aborted)return kc&&this.reportReservedArrowTypeParam(kc),Dl.node;if(!$n&&(vo(!this.hasPlugin("jsx")),ra=this.tryParse(()=>super.parseMaybeAssign(P,K),fi),!ra.error))return ra.node;if((At=$n)!=null&&At.node)return this.state=$n.failState,$n.node;if(Dl.node)return this.state=Dl.failState,kc&&this.reportReservedArrowTypeParam(kc),Dl.node;if((sr=ra)!=null&&sr.node)return this.state=ra.failState,ra.node;throw((Yr=$n)==null?void 0:Yr.error)||Dl.error||((Lr=ra)==null?void 0:Lr.error)}reportReservedArrowTypeParam(P){var K;P.params.length===1&&!P.params[0].constraint&&!((K=P.extra)!=null&&K.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(us.ReservedArrowTypeParam,P)}parseMaybeUnary(P,K){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(P,K)}parseArrow(P){if(this.match(14)){let K=this.tryParse(we=>{let At=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&we(),At});if(K.aborted)return;K.thrown||(K.error&&(this.state=K.failState),P.returnType=K.node)}return super.parseArrow(P)}parseFunctionParamType(P){this.eat(17)&&(P.optional=!0);let K=this.tsTryParseTypeAnnotation();return K&&(P.typeAnnotation=K),this.resetEndLocation(P),P}isAssignable(P,K){switch(P.type){case"TSTypeCastExpression":return this.isAssignable(P.expression,K);case"TSParameterProperty":return!0;default:return super.isAssignable(P,K)}}toAssignable(P,K=!1){switch(P.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(P,K);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":K?this.expressionScope.recordArrowParameterBindingError(us.UnexpectedTypeCastInParameter,P):this.raise(us.UnexpectedTypeCastInParameter,P),this.toAssignable(P.expression,K);break;case"AssignmentExpression":!K&&P.left.type==="TSTypeCastExpression"&&(P.left=this.typeCastToParameter(P.left));default:super.toAssignable(P,K)}}toAssignableParenthesizedExpression(P,K){switch(P.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(P.expression,K);break;default:super.toAssignable(P,K)}}checkToRestConversion(P,K){switch(P.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(P.expression,!1);break;default:super.checkToRestConversion(P,K)}}isValidLVal(P,K,we){switch(P){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(we!==64||!K)&&["expression",!0];default:return super.isValidLVal(P,K,we)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(P,K){if(this.match(47)||this.match(51)){let we=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let At=super.parseMaybeDecoratorArguments(P,K);return At.typeParameters=we,At}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(P,K)}checkCommaAfterRest(P){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===P?(this.next(),!1):super.checkCommaAfterRest(P)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(P,K){let we=super.parseMaybeDefault(P,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startthis.isAssignable(K,!0)):super.shouldParseArrow(P)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(P){if(this.match(47)||this.match(51)){let K=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());K&&(P.typeParameters=K)}return super.jsxParseOpeningElementAfterName(P)}getGetterSetterExpectedParamCount(P){let K=super.getGetterSetterExpectedParamCount(P),we=this.getObjectOrClassMethodParams(P)[0];return we&&this.isThisParam(we)?K+1:K}parseCatchClauseParam(){let P=super.parseCatchClauseParam(),K=this.tsTryParseTypeAnnotation();return K&&(P.typeAnnotation=K,this.resetEndLocation(P)),P}tsInAmbientContext(P){let{isAmbientContext:K,strict:we}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return P()}finally{this.state.isAmbientContext=K,this.state.strict=we}}parseClass(P,K,we){let At=this.state.inAbstractClass;this.state.inAbstractClass=!!P.abstract;try{return super.parseClass(P,K,we)}finally{this.state.inAbstractClass=At}}tsParseAbstractDeclaration(P,K){if(this.match(80))return P.abstract=!0,this.maybeTakeDecorators(K,this.parseClass(P,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return P.abstract=!0,this.raise(us.NonClassMethodPropertyHasAbstractModifer,P),this.tsParseInterfaceDeclaration(P)}else this.unexpected(null,80)}parseMethod(P,K,we,At,sr,Yr,Lr){let fi=super.parseMethod(P,K,we,At,sr,Yr,Lr);if(fi.abstract&&(this.hasPlugin("estree")?fi.value:fi).body){let{key:$n}=fi;this.raise(us.AbstractMethodHasImplementation,fi,{methodName:$n.type==="Identifier"&&!fi.computed?$n.name:`[${this.input.slice(this.offsetToSourcePos($n.start),this.offsetToSourcePos($n.end))}]`})}return fi}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(P,K,we,At){return!K&&At?(this.parseTypeOnlyImportExportSpecifier(P,!1,we),this.finishNode(P,"ExportSpecifier")):(P.exportKind="value",super.parseExportSpecifier(P,K,we,At))}parseImportSpecifier(P,K,we,At,sr){return!K&&At?(this.parseTypeOnlyImportExportSpecifier(P,!0,we),this.finishNode(P,"ImportSpecifier")):(P.importKind="value",super.parseImportSpecifier(P,K,we,At,we?4098:4096))}parseTypeOnlyImportExportSpecifier(P,K,we){let At=K?"imported":"local",sr=K?"local":"exported",Yr=P[At],Lr,fi=!1,$n=!0,ra=Yr.loc.start;if(this.isContextual(93)){let Dl=this.parseIdentifier();if(this.isContextual(93)){let ca=this.parseIdentifier();ke(this.state.type)?(fi=!0,Yr=Dl,Lr=K?this.parseIdentifier():this.parseModuleExportName(),$n=!1):(Lr=ca,$n=!1)}else ke(this.state.type)?($n=!1,Lr=K?this.parseIdentifier():this.parseModuleExportName()):(fi=!0,Yr=Dl)}else ke(this.state.type)&&(fi=!0,K?(Yr=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(Yr.name,Yr.loc.start,!0,!0)):Yr=this.parseModuleExportName());fi&&we&&this.raise(K?us.TypeModifierIsUsedInTypeImports:us.TypeModifierIsUsedInTypeExports,ra),P[At]=Yr,P[sr]=Lr;let kc=K?"importKind":"exportKind";P[kc]=fi?"type":"value",$n&&this.eatContextual(93)&&(P[sr]=K?this.parseIdentifier():this.parseModuleExportName()),P[sr]||(P[sr]=Zt(P[At])),K&&this.checkIdentifier(P[sr],fi?4098:4096)}};function op(se){if(se.type!=="MemberExpression")return!1;let{computed:P,property:K}=se;return P&&K.type!=="StringLiteral"&&(K.type!=="TemplateLiteral"||K.expressions.length>0)?!1:XA(se.object)}function bd(se,P){var K;let{type:we}=se;if((K=se.extra)!=null&&K.parenthesized)return!1;if(P){if(we==="Literal"){let{value:At}=se;if(typeof At=="string"||typeof At=="boolean")return!0}}else if(we==="StringLiteral"||we==="BooleanLiteral")return!0;return!!(e2(se,P)||_w(se,P)||we==="TemplateLiteral"&&se.expressions.length===0||op(se))}function e2(se,P){return P?se.type==="Literal"&&(typeof se.value=="number"||"bigint"in se):se.type==="NumericLiteral"||se.type==="BigIntLiteral"}function _w(se,P){if(se.type==="UnaryExpression"){let{operator:K,argument:we}=se;if(K==="-"&&e2(we,P))return!0}return!1}function XA(se){return se.type==="Identifier"?!0:se.type!=="MemberExpression"||se.computed?!1:XA(se.object)}var Ac=Q`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),Gm=se=>class extends se{parsePlaceholder(P){if(this.match(133)){let K=this.startNode();return this.next(),this.assertNoSpace(),K.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(K,P)}}finishPlaceholder(P,K){let we=P;return(!we.expectedNode||!we.type)&&(we=this.finishNode(we,"Placeholder")),we.expectedNode=K,we}getTokenFromCode(P){P===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(P)}parseExprAtom(P){return this.parsePlaceholder("Expression")||super.parseExprAtom(P)}parseIdentifier(P){return this.parsePlaceholder("Identifier")||super.parseIdentifier(P)}checkReservedWord(P,K,we,At){P!==void 0&&super.checkReservedWord(P,K,we,At)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(P,K,we){return P==="Placeholder"||super.isValidLVal(P,K,we)}toAssignable(P,K){P&&P.type==="Placeholder"&&P.expectedNode==="Expression"?P.expectedNode="Pattern":super.toAssignable(P,K)}chStartsBindingIdentifier(P,K){return!!(super.chStartsBindingIdentifier(P,K)||this.lookahead().type===133)}verifyBreakContinue(P,K){P.label&&P.label.type==="Placeholder"||super.verifyBreakContinue(P,K)}parseExpressionStatement(P,K){var we;if(K.type!=="Placeholder"||(we=K.extra)!=null&&we.parenthesized)return super.parseExpressionStatement(P,K);if(this.match(14)){let sr=P;return sr.label=this.finishPlaceholder(K,"Identifier"),this.next(),sr.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(sr,"LabeledStatement")}this.semicolon();let At=P;return At.name=K.name,this.finishPlaceholder(At,"Statement")}parseBlock(P,K,we){return this.parsePlaceholder("BlockStatement")||super.parseBlock(P,K,we)}parseFunctionId(P){return this.parsePlaceholder("Identifier")||super.parseFunctionId(P)}parseClass(P,K,we){let At=K?"ClassDeclaration":"ClassExpression";this.next();let sr=this.state.strict,Yr=this.parsePlaceholder("Identifier");if(Yr)if(this.match(81)||this.match(133)||this.match(5))P.id=Yr;else{if(we||!K)return P.id=null,P.body=this.finishPlaceholder(Yr,"ClassBody"),this.finishNode(P,At);throw this.raise(Ac.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(P,K,we);return super.parseClassSuper(P),P.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!P.superClass,sr),this.finishNode(P,At)}parseExport(P,K){let we=this.parsePlaceholder("Identifier");if(!we)return super.parseExport(P,K);let At=P;if(!this.isContextual(98)&&!this.match(12))return At.specifiers=[],At.source=null,At.declaration=this.finishPlaceholder(we,"Declaration"),this.finishNode(At,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let sr=this.startNode();return sr.exported=we,At.specifiers=[this.finishNode(sr,"ExportDefaultSpecifier")],super.parseExport(At,K)}isExportDefaultSpecifier(){if(this.match(65)){let P=this.nextTokenStart();if(this.isUnparsedContextual(P,"from")&&this.input.startsWith(Sc(133),this.nextTokenStartSince(P+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(P,K){var we;return(we=P.specifiers)!=null&&we.length?!0:super.maybeParseExportDefaultSpecifier(P,K)}checkExport(P){let{specifiers:K}=P;K!=null&&K.length&&(P.specifiers=K.filter(we=>we.exported.type==="Placeholder")),super.checkExport(P),P.specifiers=K}parseImport(P){let K=this.parsePlaceholder("Identifier");if(!K)return super.parseImport(P);if(P.specifiers=[],!this.isContextual(98)&&!this.match(12))return P.source=this.finishPlaceholder(K,"StringLiteral"),this.semicolon(),this.finishNode(P,"ImportDeclaration");let we=this.startNodeAtNode(K);return we.local=K,P.specifiers.push(this.finishNode(we,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(P)||this.parseNamedImportSpecifiers(P)),this.expectContextual(98),P.source=this.parseImportSource(),this.semicolon(),this.finishNode(P,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Ac.UnexpectedSpace,this.state.lastTokEndLoc)}},US=se=>class extends se{parseV8Intrinsic(){if(this.match(54)){let P=this.state.startLoc,K=this.startNode();if(this.next(),qr(this.state.type)){let we=this.parseIdentifierName(),At=this.createIdentifier(K,we);if(At.type="V8IntrinsicIdentifier",this.match(10))return At}this.unexpected(P)}}parseExprAtom(P){return this.parseV8Intrinsic()||super.parseExprAtom(P)}},qd=["minimal","fsharp","hack","smart"],hh=["^^","@@","^","%","#"];function Qp(se){if(se.has("decorators")){if(se.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let K=se.get("decorators").decoratorsBeforeExport;if(K!=null&&typeof K!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let we=se.get("decorators").allowCallParenthesized;if(we!=null&&typeof we!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(se.has("flow")&&se.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(se.has("placeholders")&&se.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(se.has("pipelineOperator")){var P;let K=se.get("pipelineOperator").proposal;if(!qd.includes(K)){let At=qd.map(sr=>`"${sr}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${At}.`)}let we=((P=se.get("recordAndTuple"))==null?void 0:P.syntaxType)==="hash";if(K==="hack"){if(se.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(se.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let At=se.get("pipelineOperator").topicToken;if(!hh.includes(At)){let sr=hh.map(Yr=>`"${Yr}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${sr}.`)}if(At==="#"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}else if(K==="smart"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}if(se.has("moduleAttributes")){if(se.has("deprecatedImportAssert")||se.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(se.get("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(se.has("importAssertions")&&se.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!se.has("deprecatedImportAssert")&&se.has("importAttributes")&&se.get("importAttributes").deprecatedAssertSyntax&&se.set("deprecatedImportAssert",{}),se.has("recordAndTuple")){let K=se.get("recordAndTuple").syntaxType;if(K!=null){let we=["hash","bar"];if(!we.includes(K))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+we.map(At=>`'${At}'`).join(", "))}}if(se.has("asyncDoExpressions")&&!se.has("doExpressions")){let K=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw K.missingPlugins="doExpressions",K}if(se.has("optionalChainingAssign")&&se.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var dC={estree:de,jsx:Ea,flow:QA,typescript:rf,v8intrinsic:US,placeholders:Gm},aE=Object.keys(dC),j_=class extends di{checkProto(se,P,K,we){if(se.type==="SpreadElement"||this.isObjectMethod(se)||se.computed||se.shorthand)return;let At=se.key;if((At.type==="Identifier"?At.name:At.value)==="__proto__"){if(P){this.raise(J.RecordNoProto,At);return}K.used&&(we?we.doubleProtoLoc===null&&(we.doubleProtoLoc=At.loc.start):this.raise(J.DuplicateProto,At)),K.used=!0}}shouldExitDescending(se,P){return se.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(se.start)===P}getExpression(){this.enterInitialScopes(),this.nextToken();let se=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),se.comments=this.comments,se.errors=this.state.errors,this.optionFlags&128&&(se.tokens=this.tokens),se}parseExpression(se,P){return se?this.disallowInAnd(()=>this.parseExpressionBase(P)):this.allowInAnd(()=>this.parseExpressionBase(P))}parseExpressionBase(se){let P=this.state.startLoc,K=this.parseMaybeAssign(se);if(this.match(12)){let we=this.startNodeAt(P);for(we.expressions=[K];this.eat(12);)we.expressions.push(this.parseMaybeAssign(se));return this.toReferencedList(we.expressions),this.finishNode(we,"SequenceExpression")}return K}parseMaybeAssignDisallowIn(se,P){return this.disallowInAnd(()=>this.parseMaybeAssign(se,P))}parseMaybeAssignAllowIn(se,P){return this.allowInAnd(()=>this.parseMaybeAssign(se,P))}setOptionalParametersError(se,P){var K;se.optionalParametersLoc=(K=P?.loc)!=null?K:this.state.startLoc}parseMaybeAssign(se,P){let K=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let Yr=this.parseYield();return P&&(Yr=P.call(this,Yr,K)),Yr}let we;se?we=!1:(se=new bg,we=!0);let{type:At}=this.state;(At===10||qr(At))&&(this.state.potentialArrowAt=this.state.start);let sr=this.parseMaybeConditional(se);if(P&&(sr=P.call(this,sr,K)),Hi(this.state.type)){let Yr=this.startNodeAt(K),Lr=this.state.value;if(Yr.operator=Lr,this.match(29)){this.toAssignable(sr,!0),Yr.left=sr;let fi=K.index;se.doubleProtoLoc!=null&&se.doubleProtoLoc.index>=fi&&(se.doubleProtoLoc=null),se.shorthandAssignLoc!=null&&se.shorthandAssignLoc.index>=fi&&(se.shorthandAssignLoc=null),se.privateKeyLoc!=null&&se.privateKeyLoc.index>=fi&&(this.checkDestructuringPrivate(se),se.privateKeyLoc=null)}else Yr.left=sr;return this.next(),Yr.right=this.parseMaybeAssign(),this.checkLVal(sr,this.finishNode(Yr,"AssignmentExpression")),Yr}else we&&this.checkExpressionErrors(se,!0);return sr}parseMaybeConditional(se){let P=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprOps(se);return this.shouldExitDescending(we,K)?we:this.parseConditional(we,P,se)}parseConditional(se,P,K){if(this.eat(17)){let we=this.startNodeAt(P);return we.test=se,we.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),we.alternate=this.parseMaybeAssign(),this.finishNode(we,"ConditionalExpression")}return se}parseMaybeUnaryOrPrivate(se){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(se)}parseExprOps(se){let P=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseMaybeUnaryOrPrivate(se);return this.shouldExitDescending(we,K)?we:this.parseExprOp(we,P,-1)}parseExprOp(se,P,K){if(this.isPrivateName(se)){let At=this.getPrivateNameSV(se);(K>=Hr(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(J.PrivateInExpectedIn,se,{identifierName:At}),this.classScope.usePrivateName(At,se.loc.start)}let we=this.state.type;if(no(we)&&(this.prodParam.hasIn||!this.match(58))){let At=Hr(we);if(At>K){if(we===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return se;this.checkPipelineAtInfixOperator(se,P)}let sr=this.startNodeAt(P);sr.left=se,sr.operator=this.state.value;let Yr=we===41||we===42,Lr=we===40;if(Lr&&(At=Hr(42)),this.next(),we===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(J.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);sr.right=this.parseExprOpRightExpr(we,At);let fi=this.finishNode(sr,Yr||Lr?"LogicalExpression":"BinaryExpression"),$n=this.state.type;if(Lr&&($n===41||$n===42)||Yr&&$n===40)throw this.raise(J.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(fi,P,K)}}return se}parseExprOpRightExpr(se,P){let K=this.state.startLoc;switch(se){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(P))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(J.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(se,P),K)});default:return this.parseExprOpBaseRightExpr(se,P)}}parseExprOpBaseRightExpr(se,P){let K=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),K,Or(se)?P-1:P)}parseHackPipeBody(){var se;let{startLoc:P}=this.state,K=this.parseMaybeAssign();return b.has(K.type)&&!((se=K.extra)!=null&&se.parenthesized)&&this.raise(J.PipeUnparenthesizedBody,P,{type:K.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(J.PipeTopicUnused,P),K}checkExponentialAfterUnary(se){this.match(57)&&this.raise(J.UnexpectedTokenUnaryExponentiation,se.argument)}parseMaybeUnary(se,P){let K=this.state.startLoc,we=this.isContextual(96);if(we&&this.recordAwaitIfAllowed()){this.next();let Lr=this.parseAwait(K);return P||this.checkExponentialAfterUnary(Lr),Lr}let At=this.match(34),sr=this.startNode();if(Ya(this.state.type)){sr.operator=this.state.value,sr.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let Lr=this.match(89);if(this.next(),sr.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(se,!0),this.state.strict&&Lr){let fi=sr.argument;fi.type==="Identifier"?this.raise(J.StrictDelete,sr):this.hasPropertyAsPrivateName(fi)&&this.raise(J.DeletePrivateField,sr)}if(!At)return P||this.checkExponentialAfterUnary(sr),this.finishNode(sr,"UnaryExpression")}let Yr=this.parseUpdate(sr,At,se);if(we){let{type:Lr}=this.state;if((this.hasPlugin("v8intrinsic")?Nn(Lr):Nn(Lr)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(J.AwaitNotInAsyncContext,K),this.parseAwait(K)}return Yr}parseUpdate(se,P,K){if(P){let sr=se;return this.checkLVal(sr.argument,this.finishNode(sr,"UpdateExpression")),se}let we=this.state.startLoc,At=this.parseExprSubscripts(K);if(this.checkExpressionErrors(K,!1))return At;for(;ga(this.state.type)&&!this.canInsertSemicolon();){let sr=this.startNodeAt(we);sr.operator=this.state.value,sr.prefix=!1,sr.argument=At,this.next(),this.checkLVal(At,At=this.finishNode(sr,"UpdateExpression"))}return At}parseExprSubscripts(se){let P=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprAtom(se);return this.shouldExitDescending(we,K)?we:this.parseSubscripts(we,P)}parseSubscripts(se,P,K){let we={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(se),stop:!1};do se=this.parseSubscript(se,P,K,we),we.maybeAsyncArrow=!1;while(!we.stop);return se}parseSubscript(se,P,K,we){let{type:At}=this.state;if(!K&&At===15)return this.parseBind(se,P,K,we);if(Ft(At))return this.parseTaggedTemplateExpression(se,P,we);let sr=!1;if(At===18){if(K&&(this.raise(J.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return we.stop=!0,se;we.optionalChainMember=sr=!0,this.next()}if(!K&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(se,P,we,sr);{let Yr=this.eat(0);return Yr||sr||this.eat(16)?this.parseMember(se,P,we,Yr,sr):(we.stop=!0,se)}}parseMember(se,P,K,we,At){let sr=this.startNodeAt(P);return sr.object=se,sr.computed=we,we?(sr.property=this.parseExpression(),this.expect(3)):this.match(139)?(se.type==="Super"&&this.raise(J.SuperPrivateField,P),this.classScope.usePrivateName(this.state.value,this.state.startLoc),sr.property=this.parsePrivateName()):sr.property=this.parseIdentifier(!0),K.optionalChainMember?(sr.optional=At,this.finishNode(sr,"OptionalMemberExpression")):this.finishNode(sr,"MemberExpression")}parseBind(se,P,K,we){let At=this.startNodeAt(P);return At.object=se,this.next(),At.callee=this.parseNoCallExpr(),we.stop=!0,this.parseSubscripts(this.finishNode(At,"BindExpression"),P,K)}parseCoverCallAndAsyncArrowHead(se,P,K,we){let At=this.state.maybeInArrowParameters,sr=null;this.state.maybeInArrowParameters=!0,this.next();let Yr=this.startNodeAt(P);Yr.callee=se;let{maybeAsyncArrow:Lr,optionalChainMember:fi}=K;Lr&&(this.expressionScope.enter(Qm()),sr=new bg),fi&&(Yr.optional=we),we?Yr.arguments=this.parseCallExpressionArguments(11):Yr.arguments=this.parseCallExpressionArguments(11,se.type!=="Super",Yr,sr);let $n=this.finishCallExpression(Yr,fi);return Lr&&this.shouldParseAsyncArrow()&&!we?(K.stop=!0,this.checkDestructuringPrivate(sr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),$n=this.parseAsyncArrowFromCallExpression(this.startNodeAt(P),$n)):(Lr&&(this.checkExpressionErrors(sr,!0),this.expressionScope.exit()),this.toReferencedArguments($n)),this.state.maybeInArrowParameters=At,$n}toReferencedArguments(se,P){this.toReferencedListDeep(se.arguments,P)}parseTaggedTemplateExpression(se,P,K){let we=this.startNodeAt(P);return we.tag=se,we.quasi=this.parseTemplate(!0),K.optionalChainMember&&this.raise(J.OptionalChainingNoTemplate,P),this.finishNode(we,"TaggedTemplateExpression")}atPossibleAsyncArrow(se){return se.type==="Identifier"&&se.name==="async"&&this.state.lastTokEndLoc.index===se.end&&!this.canInsertSemicolon()&&se.end-se.start===5&&this.offsetToSourcePos(se.start)===this.state.potentialArrowAt}finishCallExpression(se,P){if(se.callee.type==="Import")if(se.arguments.length===0||se.arguments.length>2)this.raise(J.ImportCallArity,se);else for(let K of se.arguments)K.type==="SpreadElement"&&this.raise(J.ImportCallSpreadArgument,K);return this.finishNode(se,P?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(se,P,K,we){let At=[],sr=!0,Yr=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(se);){if(sr)sr=!1;else if(this.expect(12),this.match(se)){K&&this.addTrailingCommaExtraToNode(K),this.next();break}At.push(this.parseExprListItem(!1,we,P))}return this.state.inFSharpPipelineDirectBody=Yr,At}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(se,P){var K;return this.resetPreviousNodeTrailingComments(P),this.expect(19),this.parseArrowExpression(se,P.arguments,!0,(K=P.extra)==null?void 0:K.trailingCommaLoc),P.innerComments&&Ri(se,P.innerComments),P.callee.trailingComments&&Ri(se,P.callee.trailingComments),se}parseNoCallExpr(){let se=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),se,!0)}parseExprAtom(se){let P,K=null,{type:we}=this.state;switch(we){case 79:return this.parseSuper();case 83:return P=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(P):this.match(10)?this.optionFlags&256?this.parseImportCall(P):this.finishNode(P,"Import"):(this.raise(J.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(P,"Import"));case 78:return P=this.startNode(),this.next(),this.finishNode(P,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134: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 At=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(At)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,se);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,se);case 68:return this.parseFunctionOrFunctionSent();case 26:K=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(K,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{P=this.startNode(),this.next(),P.object=null;let At=P.callee=this.parseNoCallExpr();if(At.type==="MemberExpression")return this.finishNode(P,"BindExpression");throw this.raise(J.UnsupportedBind,At)}case 139:return this.raise(J.PrivateInExpectedIn,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 At=this.getPluginOption("pipelineOperator","proposal");if(At)return this.parseTopicReference(At);this.unexpected();break}case 47:{let At=this.input.codePointAt(this.nextTokenStart());gc(At)||At===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(we===137)return this.parseDecimalLiteral(this.state.value);if(qr(we)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let At=this.state.potentialArrowAt===this.state.start,sr=this.state.containsEsc,Yr=this.parseIdentifier();if(!sr&&Yr.name==="async"&&!this.canInsertSemicolon()){let{type:Lr}=this.state;if(Lr===68)return this.resetPreviousNodeTrailingComments(Yr),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(Yr));if(qr(Lr))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(Yr)):Yr;if(Lr===90)return this.resetPreviousNodeTrailingComments(Yr),this.parseDo(this.startNodeAtNode(Yr),!0)}return At&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(Yr),[Yr],!1)):Yr}else this.unexpected()}}parseTopicReferenceThenEqualsSign(se,P){let K=this.getPluginOption("pipelineOperator","proposal");if(K)return this.state.type=se,this.state.value=P,this.state.pos--,this.state.end--,this.state.endLoc=a(this.state.endLoc,-1),this.parseTopicReference(K);this.unexpected()}parseTopicReference(se){let P=this.startNode(),K=this.state.startLoc,we=this.state.type;return this.next(),this.finishTopicReference(P,K,se,we)}finishTopicReference(se,P,K,we){if(this.testTopicReferenceConfiguration(K,P,we))return K==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(J.PipeTopicUnbound,P),this.registerTopicReference(),this.finishNode(se,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(J.PrimaryTopicNotAllowed,P),this.registerTopicReference(),this.finishNode(se,"PipelinePrimaryTopicReference"));throw this.raise(J.PipeTopicUnconfiguredToken,P,{token:Sc(we)})}testTopicReferenceConfiguration(se,P,K){switch(se){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Sc(K)}]);case"smart":return K===27;default:throw this.raise(J.PipeTopicRequiresHackPipes,P)}}parseAsyncArrowUnaryFunction(se){this.prodParam.enter(VA(!0,this.prodParam.hasYield));let P=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(J.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(se,P,!0)}parseDo(se,P){this.expectPlugin("doExpressions"),P&&this.expectPlugin("asyncDoExpressions"),se.async=P,this.next();let K=this.state.labels;return this.state.labels=[],P?(this.prodParam.enter(2),se.body=this.parseBlock(),this.prodParam.exit()):se.body=this.parseBlock(),this.state.labels=K,this.finishNode(se,"DoExpression")}parseSuper(){let se=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(J.SuperNotAllowed,se):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(J.UnexpectedSuper,se),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(J.UnsupportedSuper,se),this.finishNode(se,"Super")}parsePrivateName(){let se=this.startNode(),P=this.startNodeAt(a(this.state.startLoc,1)),K=this.state.value;return this.next(),se.id=this.createIdentifier(P,K),this.finishNode(se,"PrivateName")}parseFunctionOrFunctionSent(){let se=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let P=this.createIdentifier(this.startNodeAtNode(se),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(se,P,"sent")}return this.parseFunction(se)}parseMetaProperty(se,P,K){se.meta=P;let we=this.state.containsEsc;return se.property=this.parseIdentifier(!0),(se.property.name!==K||we)&&this.raise(J.UnsupportedMetaProperty,se.property,{target:P.name,onlyValidPropertyName:K}),this.finishNode(se,"MetaProperty")}parseImportMetaProperty(se){let P=this.createIdentifier(this.startNodeAtNode(se),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(J.ImportMetaOutsideModule,P),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let K=this.isContextual(105);if(this.expectPlugin(K?"sourcePhaseImports":"deferredImportEvaluation"),!(this.optionFlags&256))throw this.raise(J.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),se.phase=K?"source":"defer",this.parseImportCall(se)}return this.parseMetaProperty(se,P,"meta")}parseLiteralAtNode(se,P,K){return this.addExtra(K,"rawValue",se),this.addExtra(K,"raw",this.input.slice(this.offsetToSourcePos(K.start),this.state.end)),K.value=se,this.next(),this.finishNode(K,P)}parseLiteral(se,P){let K=this.startNode();return this.parseLiteralAtNode(se,P,K)}parseStringLiteral(se){return this.parseLiteral(se,"StringLiteral")}parseNumericLiteral(se){return this.parseLiteral(se,"NumericLiteral")}parseBigIntLiteral(se){return this.parseLiteral(se,"BigIntLiteral")}parseDecimalLiteral(se){return this.parseLiteral(se,"DecimalLiteral")}parseRegExpLiteral(se){let P=this.startNode();return this.addExtra(P,"raw",this.input.slice(this.offsetToSourcePos(P.start),this.state.end)),P.pattern=se.pattern,P.flags=se.flags,this.next(),this.finishNode(P,"RegExpLiteral")}parseBooleanLiteral(se){let P=this.startNode();return P.value=se,this.next(),this.finishNode(P,"BooleanLiteral")}parseNullLiteral(){let se=this.startNode();return this.next(),this.finishNode(se,"NullLiteral")}parseParenAndDistinguishExpression(se){let P=this.state.startLoc,K;this.next(),this.expressionScope.enter(ad());let we=this.state.maybeInArrowParameters,At=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let sr=this.state.startLoc,Yr=[],Lr=new bg,fi=!0,$n,ra;for(;!this.match(11);){if(fi)fi=!1;else if(this.expect(12,Lr.optionalParametersLoc===null?null:Lr.optionalParametersLoc),this.match(11)){ra=this.state.startLoc;break}if(this.match(21)){let ca=this.state.startLoc;if($n=this.state.startLoc,Yr.push(this.parseParenItem(this.parseRestBinding(),ca)),!this.checkCommaAfterRest(41))break}else Yr.push(this.parseMaybeAssignAllowIn(Lr,this.parseParenItem))}let kc=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=we,this.state.inFSharpPipelineDirectBody=At;let Dl=this.startNodeAt(P);return se&&this.shouldParseArrow(Yr)&&(Dl=this.parseArrow(Dl))?(this.checkDestructuringPrivate(Lr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(Dl,Yr,!1),Dl):(this.expressionScope.exit(),Yr.length||this.unexpected(this.state.lastTokStartLoc),ra&&this.unexpected(ra),$n&&this.unexpected($n),this.checkExpressionErrors(Lr,!0),this.toReferencedListDeep(Yr,!0),Yr.length>1?(K=this.startNodeAt(sr),K.expressions=Yr,this.finishNode(K,"SequenceExpression"),this.resetEndLocation(K,kc)):K=Yr[0],this.wrapParenthesis(P,K))}wrapParenthesis(se,P){if(!(this.optionFlags&512))return this.addExtra(P,"parenthesized",!0),this.addExtra(P,"parenStart",se.index),this.takeSurroundingComments(P,se.index,this.state.lastTokEndLoc.index),P;let K=this.startNodeAt(se);return K.expression=P,this.finishNode(K,"ParenthesizedExpression")}shouldParseArrow(se){return!this.canInsertSemicolon()}parseArrow(se){if(this.eat(19))return se}parseParenItem(se,P){return se}parseNewOrNewTarget(){let se=this.startNode();if(this.next(),this.match(16)){let P=this.createIdentifier(this.startNodeAtNode(se),"new");this.next();let K=this.parseMetaProperty(se,P,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!(this.optionFlags&4)&&this.raise(J.UnexpectedNewTarget,K),K}return this.parseNew(se)}parseNew(se){if(this.parseNewCallee(se),this.eat(10)){let P=this.parseExprList(11);this.toReferencedList(P),se.arguments=P}else se.arguments=[];return this.finishNode(se,"NewExpression")}parseNewCallee(se){let P=this.match(83),K=this.parseNoCallExpr();se.callee=K,P&&(K.type==="Import"||K.type==="ImportExpression")&&this.raise(J.ImportCallNotNewExpression,K)}parseTemplateElement(se){let{start:P,startLoc:K,end:we,value:At}=this.state,sr=P+1,Yr=this.startNodeAt(a(K,1));At===null&&(se||this.raise(J.InvalidEscapeSequenceTemplate,a(this.state.firstInvalidTemplateEscapePos,1)));let Lr=this.match(24),fi=Lr?-1:-2,$n=we+fi;Yr.value={raw:this.input.slice(sr,$n).replace(/\r\n?/g,` +`),cooked:At===null?null:At.slice(1,fi)},Yr.tail=Lr,this.next();let ra=this.finishNode(Yr,"TemplateElement");return this.resetEndLocation(ra,a(this.state.lastTokEndLoc,fi)),ra}parseTemplate(se){let P=this.startNode(),K=this.parseTemplateElement(se),we=[K],At=[];for(;!K.tail;)At.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),we.push(K=this.parseTemplateElement(se));return P.expressions=At,P.quasis=we,this.finishNode(P,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(se,P,K,we){K&&this.expectPlugin("recordAndTuple");let At=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=Object.create(null),Yr=!0,Lr=this.startNode();for(Lr.properties=[],this.next();!this.match(se);){if(Yr)Yr=!1;else if(this.expect(12),this.match(se)){this.addTrailingCommaExtraToNode(Lr);break}let $n;P?$n=this.parseBindingProperty():($n=this.parsePropertyDefinition(we),this.checkProto($n,K,sr,we)),K&&!this.isObjectProperty($n)&&$n.type!=="SpreadElement"&&this.raise(J.InvalidRecordProperty,$n),$n.shorthand&&this.addExtra($n,"shorthand",!0),Lr.properties.push($n)}this.next(),this.state.inFSharpPipelineDirectBody=At;let fi="ObjectExpression";return P?fi="ObjectPattern":K&&(fi="RecordExpression"),this.finishNode(Lr,fi)}addTrailingCommaExtraToNode(se){this.addExtra(se,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(se,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(se){return!se.computed&&se.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(se){let P=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(J.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)P.push(this.parseDecorator());let K=this.startNode(),we=!1,At=!1,sr;if(this.match(21))return P.length&&this.unexpected(),this.parseSpread();P.length&&(K.decorators=P,P=[]),K.method=!1,se&&(sr=this.state.startLoc);let Yr=this.eat(55);this.parsePropertyNamePrefixOperator(K);let Lr=this.state.containsEsc;if(this.parsePropertyName(K,se),!Yr&&!Lr&&this.maybeAsyncOrAccessorProp(K)){let{key:fi}=K,$n=fi.name;$n==="async"&&!this.hasPrecedingLineBreak()&&(we=!0,this.resetPreviousNodeTrailingComments(fi),Yr=this.eat(55),this.parsePropertyName(K)),($n==="get"||$n==="set")&&(At=!0,this.resetPreviousNodeTrailingComments(fi),K.kind=$n,this.match(55)&&(Yr=!0,this.raise(J.AccessorIsGenerator,this.state.curPosition(),{kind:$n}),this.next()),this.parsePropertyName(K))}return this.parseObjPropValue(K,sr,Yr,we,!1,At,se)}getGetterSetterExpectedParamCount(se){return se.kind==="get"?0:1}getObjectOrClassMethodParams(se){return se.params}checkGetterSetterParams(se){var P;let K=this.getGetterSetterExpectedParamCount(se),we=this.getObjectOrClassMethodParams(se);we.length!==K&&this.raise(se.kind==="get"?J.BadGetterArity:J.BadSetterArity,se),se.kind==="set"&&((P=we[we.length-1])==null?void 0:P.type)==="RestElement"&&this.raise(J.BadSetterRestParameter,se)}parseObjectMethod(se,P,K,we,At){if(At){let sr=this.parseMethod(se,P,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(sr),sr}if(K||P||this.match(10))return we&&this.unexpected(),se.kind="method",se.method=!0,this.parseMethod(se,P,K,!1,!1,"ObjectMethod")}parseObjectProperty(se,P,K,we){if(se.shorthand=!1,this.eat(14))return se.value=K?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(we),this.finishNode(se,"ObjectProperty");if(!se.computed&&se.key.type==="Identifier"){if(this.checkReservedWord(se.key.name,se.key.loc.start,!0,!1),K)se.value=this.parseMaybeDefault(P,Zt(se.key));else if(this.match(29)){let At=this.state.startLoc;we!=null?we.shorthandAssignLoc===null&&(we.shorthandAssignLoc=At):this.raise(J.InvalidCoverInitializedName,At),se.value=this.parseMaybeDefault(P,Zt(se.key))}else se.value=Zt(se.key);return se.shorthand=!0,this.finishNode(se,"ObjectProperty")}}parseObjPropValue(se,P,K,we,At,sr,Yr){let Lr=this.parseObjectMethod(se,K,we,At,sr)||this.parseObjectProperty(se,P,At,Yr);return Lr||this.unexpected(),Lr}parsePropertyName(se,P){if(this.eat(0))se.computed=!0,se.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:K,value:we}=this.state,At;if(ke(K))At=this.parseIdentifier(!0);else switch(K){case 135:At=this.parseNumericLiteral(we);break;case 134:At=this.parseStringLiteral(we);break;case 136:At=this.parseBigIntLiteral(we);break;case 139:{let sr=this.state.startLoc;P!=null?P.privateKeyLoc===null&&(P.privateKeyLoc=sr):this.raise(J.UnexpectedPrivateField,sr),At=this.parsePrivateName();break}default:if(K===137){At=this.parseDecimalLiteral(we);break}this.unexpected()}se.key=At,K!==139&&(se.computed=!1)}}initFunction(se,P){se.id=null,se.generator=!1,se.async=P}parseMethod(se,P,K,we,At,sr,Yr=!1){this.initFunction(se,K),se.generator=P,this.scope.enter(18|(Yr?64:0)|(At?32:0)),this.prodParam.enter(VA(K,se.generator)),this.parseFunctionParams(se,we);let Lr=this.parseFunctionBodyAndFinish(se,sr,!0);return this.prodParam.exit(),this.scope.exit(),Lr}parseArrayLike(se,P,K,we){K&&this.expectPlugin("recordAndTuple");let At=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=this.startNode();return this.next(),sr.elements=this.parseExprList(se,!K,we,sr),this.state.inFSharpPipelineDirectBody=At,this.finishNode(sr,K?"TupleExpression":"ArrayExpression")}parseArrowExpression(se,P,K,we){this.scope.enter(6);let At=VA(K,!1);!this.match(5)&&this.prodParam.hasIn&&(At|=8),this.prodParam.enter(At),this.initFunction(se,K);let sr=this.state.maybeInArrowParameters;return P&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(se,P,we)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(se,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=sr,this.finishNode(se,"ArrowFunctionExpression")}setArrowFunctionParameters(se,P,K){this.toAssignableList(P,K,!1),se.params=P}parseFunctionBodyAndFinish(se,P,K=!1){return this.parseFunctionBody(se,!1,K),this.finishNode(se,P)}parseFunctionBody(se,P,K=!1){let we=P&&!this.match(5);if(this.expressionScope.enter(rl()),we)se.body=this.parseMaybeAssign(),this.checkParams(se,!1,P,!1);else{let At=this.state.strict,sr=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),se.body=this.parseBlock(!0,!1,Yr=>{let Lr=!this.isSimpleParamList(se.params);Yr&&Lr&&this.raise(J.IllegalLanguageModeDirective,(se.kind==="method"||se.kind==="constructor")&&se.key?se.key.loc.end:se);let fi=!At&&this.state.strict;this.checkParams(se,!this.state.strict&&!P&&!K&&!Lr,P,fi),this.state.strict&&se.id&&this.checkIdentifier(se.id,65,fi)}),this.prodParam.exit(),this.state.labels=sr}this.expressionScope.exit()}isSimpleParameter(se){return se.type==="Identifier"}isSimpleParamList(se){for(let P=0,K=se.length;P10||!vg(se))){if(K&&ac(se)){this.raise(J.UnexpectedKeyword,P,{keyword:se});return}if((this.state.strict?we?Xa:Ei:li)(se,this.inModule)){this.raise(J.UnexpectedReservedWord,P,{reservedWord:se});return}else if(se==="yield"){if(this.prodParam.hasYield){this.raise(J.YieldBindingIdentifier,P);return}}else if(se==="await"){if(this.prodParam.hasAwait){this.raise(J.AwaitBindingIdentifier,P);return}if(this.scope.inStaticBlock){this.raise(J.AwaitBindingIdentifierInStaticBlock,P);return}this.expressionScope.recordAsyncArrowParametersError(P)}else if(se==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(J.ArgumentsInClass,P);return}}}recordAwaitIfAllowed(){let se=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return se&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),se}parseAwait(se){let P=this.startNodeAt(se);return this.expressionScope.recordParameterInitializerError(J.AwaitExpressionFormalParameter,P),this.eat(55)&&this.raise(J.ObsoleteAwaitStar,P),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(P.argument=this.parseMaybeUnary(null,!0)),this.finishNode(P,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:se}=this.state;return se===53||se===10||se===0||Ft(se)||se===102&&!this.state.containsEsc||se===138||se===56||this.hasPlugin("v8intrinsic")&&se===54}parseYield(){let se=this.startNode();this.expressionScope.recordParameterInitializerError(J.YieldInParameter,se),this.next();let P=!1,K=null;if(!this.hasPrecedingLineBreak())switch(P=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!P)break;default:K=this.parseMaybeAssign()}return se.delegate=P,se.argument=K,this.finishNode(se,"YieldExpression")}parseImportCall(se){if(this.next(),se.source=this.parseMaybeAssignAllowIn(),se.options=null,this.eat(12)&&!this.match(11)&&(se.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(J.ImportCallArity,se)}return this.expect(11),this.finishNode(se,"ImportExpression")}checkPipelineAtInfixOperator(se,P){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&se.type==="SequenceExpression"&&this.raise(J.PipelineHeadSequenceExpression,P)}parseSmartPipelineBodyInStyle(se,P){if(this.isSimpleReference(se)){let K=this.startNodeAt(P);return K.callee=se,this.finishNode(K,"PipelineBareFunction")}else{let K=this.startNodeAt(P);return this.checkSmartPipeTopicBodyEarlyErrors(P),K.expression=se,this.finishNode(K,"PipelineTopicExpression")}}isSimpleReference(se){switch(se.type){case"MemberExpression":return!se.computed&&this.isSimpleReference(se.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(se){if(this.match(19))throw this.raise(J.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(J.PipelineTopicUnused,se)}withTopicBindingContext(se){let P=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=P}}withSmartMixTopicForbiddingContext(se){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let P=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=P}}else return se()}withSoloAwaitPermittingContext(se){let P=this.state.soloAwait;this.state.soloAwait=!0;try{return se()}finally{this.state.soloAwait=P}}allowInAnd(se){let P=this.prodParam.currentFlags();if(8&~P){this.prodParam.enter(P|8);try{return se()}finally{this.prodParam.exit()}}return se()}disallowInAnd(se){let P=this.prodParam.currentFlags();if(8&P){this.prodParam.enter(P&-9);try{return se()}finally{this.prodParam.exit()}}return se()}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(se){let P=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let K=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let we=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),P,se);return this.state.inFSharpPipelineDirectBody=K,we}parseModuleExpression(){this.expectPlugin("moduleBlocks");let se=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let P=this.startNodeAt(this.state.endLoc);this.next();let K=this.initializeScopes(!0);this.enterInitialScopes();try{se.body=this.parseProgram(P,8,"module")}finally{K()}return this.finishNode(se,"ModuleExpression")}parsePropertyNamePrefixOperator(se){}},ty={kind:1},jE={kind:2},DC=/[\uD800-\uDFFF]/u,i_=/in(?:stanceof)?/y;function up(se,P,K){for(let we=0;we0)for(let[At,sr]of Array.from(this.scope.undefinedExports))this.raise(J.ModuleExportUndefined,sr,{localName:At});this.addExtra(se,"topLevelAwait",this.state.hasTopLevelAwait)}let we;return P===140?we=this.finishNode(se,"Program"):we=this.finishNodeAt(se,"Program",a(this.state.startLoc,-1)),we}stmtToDirective(se){let P=se;P.type="Directive",P.value=P.expression,delete P.expression;let K=P.value,we=K.value,At=this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end)),sr=K.value=At.slice(1,-1);return this.addExtra(K,"raw",At),this.addExtra(K,"rawValue",sr),this.addExtra(K,"expressionValue",we),K.type="DirectiveLiteral",P}parseInterpreterDirective(){if(!this.match(28))return null;let se=this.startNode();return se.value=this.state.value,this.next(),this.finishNode(se,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(se,P){if(gc(se)){if(i_.lastIndex=P,i_.test(this.input)){let K=this.codePointAtPos(i_.lastIndex);if(!_g(K)&&K!==92)return!1}return!0}else return se===92}chStartsBindingPattern(se){return se===91||se===123}hasFollowingBindingAtom(){let se=this.nextTokenStart(),P=this.codePointAtPos(se);return this.chStartsBindingPattern(P)||this.chStartsBindingIdentifier(P,se)}hasInLineFollowingBindingIdentifierOrBrace(){let se=this.nextTokenInLineStart(),P=this.codePointAtPos(se);return P===123||this.chStartsBindingIdentifier(P,se)}startsUsingForOf(){let{type:se,containsEsc:P}=this.lookahead();if(se===102&&!P)return!1;if(qr(se)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let se=this.nextTokenInLineStart();if(this.isUnparsedContextual(se,"using")){se=this.nextTokenInLineStartSince(se+5);let P=this.codePointAtPos(se);if(this.chStartsBindingIdentifier(P,se))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(se=!1){let P=0;return this.options.annexB&&!this.state.strict&&(P|=4,se&&(P|=8)),this.parseStatementLike(P)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(se){let P=null;return this.match(26)&&(P=this.parseDecorators(!0)),this.parseStatementContent(se,P)}parseStatementContent(se,P){let K=this.state.type,we=this.startNode(),At=!!(se&2),sr=!!(se&4),Yr=se&1;switch(K){case 60:return this.parseBreakContinueStatement(we,!0);case 63:return this.parseBreakContinueStatement(we,!1);case 64:return this.parseDebuggerStatement(we);case 90:return this.parseDoWhileStatement(we);case 91:return this.parseForStatement(we);case 68:if(this.lookaheadCharCode()===46)break;return sr||this.raise(this.state.strict?J.StrictFunction:this.options.annexB?J.SloppyFunctionAnnexB:J.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(we,!1,!At&&sr);case 80:return At||this.unexpected(),this.parseClass(this.maybeTakeDecorators(P,we),!0);case 69:return this.parseIfStatement(we);case 70:return this.parseReturnStatement(we);case 71:return this.parseSwitchStatement(we);case 72:return this.parseThrowStatement(we);case 73:return this.parseTryStatement(we);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?At||this.raise(J.UnexpectedLexicalDeclaration,we):this.raise(J.AwaitUsingNotInAsyncContext,we),this.next(),this.parseVarStatement(we,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(J.UnexpectedUsingDeclaration,this.state.startLoc):At||this.raise(J.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(we,"using");case 100:{if(this.state.containsEsc)break;let $n=this.nextTokenStart(),ra=this.codePointAtPos($n);if(ra!==91&&(!At&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(ra,$n)&&ra!==123))break}case 75:At||this.raise(J.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let $n=this.state.value;return this.parseVarStatement(we,$n)}case 92:return this.parseWhileStatement(we);case 76:return this.parseWithStatement(we);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(we);case 83:{let $n=this.lookaheadCharCode();if($n===40||$n===46)break}case 82:{!(this.optionFlags&8)&&!Yr&&this.raise(J.UnexpectedImportExport,this.state.startLoc),this.next();let $n;return K===83?($n=this.parseImport(we),$n.type==="ImportDeclaration"&&(!$n.importKind||$n.importKind==="value")&&(this.sawUnambiguousESM=!0)):($n=this.parseExport(we,P),($n.type==="ExportNamedDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportAllDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed($n),$n}default:if(this.isAsyncFunction())return At||this.raise(J.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(we,!0,!At&&sr)}let Lr=this.state.value,fi=this.parseExpression();return qr(K)&&fi.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(we,Lr,fi,se):this.parseExpressionStatement(we,fi,P)}assertModuleNodeAllowed(se){!(this.optionFlags&8)&&!this.inModule&&this.raise(J.ImportOutsideModule,se)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(se,P,K){if(se){var we;(we=P.decorators)!=null&&we.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(J.DecoratorsBeforeAfterExport,P.decorators[0]),P.decorators.unshift(...se)):P.decorators=se,this.resetStartLocationFromNode(P,se[0]),K&&this.resetStartLocationFromNode(K,P)}return P}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(se){let P=[];do P.push(this.parseDecorator());while(this.match(26));if(this.match(82))se||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(J.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(J.UnexpectedLeadingDecorator,this.state.startLoc);return P}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let se=this.startNode();if(this.next(),this.hasPlugin("decorators")){let P=this.state.startLoc,K;if(this.match(10)){let we=this.state.startLoc;this.next(),K=this.parseExpression(),this.expect(11),K=this.wrapParenthesis(we,K);let At=this.state.startLoc;se.expression=this.parseMaybeDecoratorArguments(K,we),this.getPluginOption("decorators","allowCallParenthesized")===!1&&se.expression!==K&&this.raise(J.DecoratorArgumentsOutsideParentheses,At)}else{for(K=this.parseIdentifier(!1);this.eat(16);){let we=this.startNodeAt(P);we.object=K,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),we.property=this.parsePrivateName()):we.property=this.parseIdentifier(!0),we.computed=!1,K=this.finishNode(we,"MemberExpression")}se.expression=this.parseMaybeDecoratorArguments(K,P)}}else se.expression=this.parseExprSubscripts();return this.finishNode(se,"Decorator")}parseMaybeDecoratorArguments(se,P){if(this.eat(10)){let K=this.startNodeAt(P);return K.callee=se,K.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(K.arguments),this.finishNode(K,"CallExpression")}return se}parseBreakContinueStatement(se,P){return this.next(),this.isLineTerminator()?se.label=null:(se.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(se,P),this.finishNode(se,P?"BreakStatement":"ContinueStatement")}verifyBreakContinue(se,P){let K;for(K=0;Kthis.parseStatement()),this.state.labels.pop(),this.expect(92),se.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(se,"DoWhileStatement")}parseForStatement(se){this.next(),this.state.labels.push(ty);let P=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(P=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return P!==null&&this.unexpected(P),this.parseFor(se,null);let K=this.isContextual(100);{let Lr=this.isContextual(96)&&this.startsAwaitUsing(),fi=Lr||this.isContextual(107)&&this.startsUsingForOf(),$n=K&&this.hasFollowingBindingAtom()||fi;if(this.match(74)||this.match(75)||$n){let ra=this.startNode(),kc;Lr?(kc="await using",this.recordAwaitIfAllowed()||this.raise(J.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):kc=this.state.value,this.next(),this.parseVar(ra,!0,kc);let Dl=this.finishNode(ra,"VariableDeclaration"),ca=this.match(58);return ca&&fi&&this.raise(J.ForInUsing,Dl),(ca||this.isContextual(102))&&Dl.declarations.length===1?this.parseForIn(se,Dl,P):(P!==null&&this.unexpected(P),this.parseFor(se,Dl))}}let we=this.isContextual(95),At=new bg,sr=this.parseExpression(!0,At),Yr=this.isContextual(102);if(Yr&&(K&&this.raise(J.ForOfLet,sr),P===null&&we&&sr.type==="Identifier"&&this.raise(J.ForOfAsync,sr)),Yr||this.match(58)){this.checkDestructuringPrivate(At),this.toAssignable(sr,!0);let Lr=Yr?"ForOfStatement":"ForInStatement";return this.checkLVal(sr,{type:Lr}),this.parseForIn(se,sr,P)}else this.checkExpressionErrors(At,!0);return P!==null&&this.unexpected(P),this.parseFor(se,sr)}parseFunctionStatement(se,P,K){return this.next(),this.parseFunction(se,1|(K?2:0)|(P?8:0))}parseIfStatement(se){return this.next(),se.test=this.parseHeaderExpression(),se.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),se.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(se,"IfStatement")}parseReturnStatement(se){return!this.prodParam.hasReturn&&!(this.optionFlags&2)&&this.raise(J.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?se.argument=null:(se.argument=this.parseExpression(),this.semicolon()),this.finishNode(se,"ReturnStatement")}parseSwitchStatement(se){this.next(),se.discriminant=this.parseHeaderExpression();let P=se.cases=[];this.expect(5),this.state.labels.push(jE),this.scope.enter(0);let K;for(let we;!this.match(8);)if(this.match(61)||this.match(65)){let At=this.match(61);K&&this.finishNode(K,"SwitchCase"),P.push(K=this.startNode()),K.consequent=[],this.next(),At?K.test=this.parseExpression():(we&&this.raise(J.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),we=!0,K.test=null),this.expect(14)}else K?K.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),K&&this.finishNode(K,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(se,"SwitchStatement")}parseThrowStatement(se){return this.next(),this.hasPrecedingLineBreak()&&this.raise(J.NewlineAfterThrow,this.state.lastTokEndLoc),se.argument=this.parseExpression(),this.semicolon(),this.finishNode(se,"ThrowStatement")}parseCatchClauseParam(){let se=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&se.type==="Identifier"?8:0),this.checkLVal(se,{type:"CatchClause"},9),se}parseTryStatement(se){if(this.next(),se.block=this.parseBlock(),se.handler=null,this.match(62)){let P=this.startNode();this.next(),this.match(10)?(this.expect(10),P.param=this.parseCatchClauseParam(),this.expect(11)):(P.param=null,this.scope.enter(0)),P.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),se.handler=this.finishNode(P,"CatchClause")}return se.finalizer=this.eat(67)?this.parseBlock():null,!se.handler&&!se.finalizer&&this.raise(J.NoCatchOrFinally,se),this.finishNode(se,"TryStatement")}parseVarStatement(se,P,K=!1){return this.next(),this.parseVar(se,!1,P,K),this.semicolon(),this.finishNode(se,"VariableDeclaration")}parseWhileStatement(se){return this.next(),se.test=this.parseHeaderExpression(),this.state.labels.push(ty),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(se,"WhileStatement")}parseWithStatement(se){return this.state.strict&&this.raise(J.StrictWith,this.state.startLoc),this.next(),se.object=this.parseHeaderExpression(),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(se,"WithStatement")}parseEmptyStatement(se){return this.next(),this.finishNode(se,"EmptyStatement")}parseLabeledStatement(se,P,K,we){for(let sr of this.state.labels)sr.name===P&&this.raise(J.LabelRedeclaration,K,{labelName:P});let At=Vr(this.state.type)?1:this.match(71)?2:null;for(let sr=this.state.labels.length-1;sr>=0;sr--){let Yr=this.state.labels[sr];if(Yr.statementStart===se.start)Yr.statementStart=this.sourceToOffsetPos(this.state.start),Yr.kind=At;else break}return this.state.labels.push({name:P,kind:At,statementStart:this.sourceToOffsetPos(this.state.start)}),se.body=we&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),se.label=K,this.finishNode(se,"LabeledStatement")}parseExpressionStatement(se,P,K){return se.expression=P,this.semicolon(),this.finishNode(se,"ExpressionStatement")}parseBlock(se=!1,P=!0,K){let we=this.startNode();return se&&this.state.strictErrors.clear(),this.expect(5),P&&this.scope.enter(0),this.parseBlockBody(we,se,!1,8,K),P&&this.scope.exit(),this.finishNode(we,"BlockStatement")}isValidDirective(se){return se.type==="ExpressionStatement"&&se.expression.type==="StringLiteral"&&!se.expression.extra.parenthesized}parseBlockBody(se,P,K,we,At){let sr=se.body=[],Yr=se.directives=[];this.parseBlockOrModuleBlockBody(sr,P?Yr:void 0,K,we,At)}parseBlockOrModuleBlockBody(se,P,K,we,At){let sr=this.state.strict,Yr=!1,Lr=!1;for(;!this.match(we);){let fi=K?this.parseModuleItem():this.parseStatementListItem();if(P&&!Lr){if(this.isValidDirective(fi)){let $n=this.stmtToDirective(fi);P.push($n),!Yr&&$n.value.value==="use strict"&&(Yr=!0,this.setStrict(!0));continue}Lr=!0,this.state.strictErrors.clear()}se.push(fi)}At?.call(this,Yr),sr||this.setStrict(!1),this.next()}parseFor(se,P){return se.init=P,this.semicolon(!1),se.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),se.update=this.match(11)?null:this.parseExpression(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,"ForStatement")}parseForIn(se,P,K){let we=this.match(58);return this.next(),we?K!==null&&this.unexpected(K):se.await=K!==null,P.type==="VariableDeclaration"&&P.declarations[0].init!=null&&(!we||!this.options.annexB||this.state.strict||P.kind!=="var"||P.declarations[0].id.type!=="Identifier")&&this.raise(J.ForInOfLoopInitializer,P,{type:we?"ForInStatement":"ForOfStatement"}),P.type==="AssignmentPattern"&&this.raise(J.InvalidLhs,P,{ancestor:{type:"ForStatement"}}),se.left=P,se.right=we?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,we?"ForInStatement":"ForOfStatement")}parseVar(se,P,K,we=!1){let At=se.declarations=[];for(se.kind=K;;){let sr=this.startNode();if(this.parseVarId(sr,K),sr.init=this.eat(29)?P?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,sr.init===null&&!we&&(sr.id.type!=="Identifier"&&!(P&&(this.match(58)||this.isContextual(102)))?this.raise(J.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(K==="const"||K==="using"||K==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(J.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:K})),At.push(this.finishNode(sr,"VariableDeclarator")),!this.eat(12))break}return se}parseVarId(se,P){let K=this.parseBindingAtom();(P==="using"||P==="await using")&&(K.type==="ArrayPattern"||K.type==="ObjectPattern")&&this.raise(J.UsingDeclarationHasBindingPattern,K.loc.start),this.checkLVal(K,{type:"VariableDeclarator"},P==="var"?5:8201),se.id=K}parseAsyncFunctionExpression(se){return this.parseFunction(se,8)}parseFunction(se,P=0){let K=P&2,we=!!(P&1),At=we&&!(P&4),sr=!!(P&8);this.initFunction(se,sr),this.match(55)&&(K&&this.raise(J.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),se.generator=!0),we&&(se.id=this.parseFunctionId(At));let Yr=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(VA(sr,se.generator)),we||(se.id=this.parseFunctionId()),this.parseFunctionParams(se,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(se,we?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),we&&!K&&this.registerFunctionStatementId(se),this.state.maybeInArrowParameters=Yr,se}parseFunctionId(se){return se||qr(this.state.type)?this.parseIdentifier():null}parseFunctionParams(se,P){this.expect(10),this.expressionScope.enter(rc()),se.params=this.parseBindingList(11,41,2|(P?4:0)),this.expressionScope.exit()}registerFunctionStatementId(se){se.id&&this.scope.declareName(se.id.name,!this.options.annexB||this.state.strict||se.generator||se.async?this.scope.treatFunctionsAsVar?5:8201:17,se.id.loc.start)}parseClass(se,P,K){this.next();let we=this.state.strict;return this.state.strict=!0,this.parseClassId(se,P,K),this.parseClassSuper(se),se.body=this.parseClassBody(!!se.superClass,we),this.finishNode(se,P?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(se){return se.type==="Identifier"&&se.name==="constructor"||se.type==="StringLiteral"&&se.value==="constructor"}isNonstaticConstructor(se){return!se.computed&&!se.static&&this.nameIsConstructor(se.key)}parseClassBody(se,P){this.classScope.enter();let K={hadConstructor:!1,hadSuperClass:se},we=[],At=this.startNode();if(At.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(we.length>0)throw this.raise(J.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){we.push(this.parseDecorator());continue}let sr=this.startNode();we.length&&(sr.decorators=we,this.resetStartLocationFromNode(sr,we[0]),we=[]),this.parseClassMember(At,sr,K),sr.kind==="constructor"&&sr.decorators&&sr.decorators.length>0&&this.raise(J.DecoratorConstructor,sr)}}),this.state.strict=P,this.next(),we.length)throw this.raise(J.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(At,"ClassBody")}parseClassMemberFromModifier(se,P){let K=this.parseIdentifier(!0);if(this.isClassMethod()){let we=P;return we.kind="method",we.computed=!1,we.key=K,we.static=!1,this.pushClassMethod(se,we,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let we=P;return we.computed=!1,we.key=K,we.static=!1,se.body.push(this.parseClassProperty(we)),!0}return this.resetPreviousNodeTrailingComments(K),!1}parseClassMember(se,P,K){let we=this.isContextual(106);if(we){if(this.parseClassMemberFromModifier(se,P))return;if(this.eat(5)){this.parseClassStaticBlock(se,P);return}}this.parseClassMemberWithIsStatic(se,P,K,we)}parseClassMemberWithIsStatic(se,P,K,we){let At=P,sr=P,Yr=P,Lr=P,fi=P,$n=At,ra=At;if(P.static=we,this.parsePropertyNamePrefixOperator(P),this.eat(55)){$n.kind="method";let BA=this.match(139);if(this.parseClassElementName($n),BA){this.pushClassPrivateMethod(se,sr,!0,!1);return}this.isNonstaticConstructor(At)&&this.raise(J.ConstructorIsGenerator,At.key),this.pushClassMethod(se,At,!0,!1,!1,!1);return}let kc=!this.state.containsEsc&&qr(this.state.type),Dl=this.parseClassElementName(P),ca=kc?Dl.name:null,wl=this.isPrivateName(Dl),eA=this.state.startLoc;if(this.parsePostMemberNameModifiers(ra),this.isClassMethod()){if($n.kind="method",wl){this.pushClassPrivateMethod(se,sr,!1,!1);return}let BA=this.isNonstaticConstructor(At),gI=!1;BA&&(At.kind="constructor",K.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(J.DuplicateConstructor,Dl),BA&&this.hasPlugin("typescript")&&P.override&&this.raise(J.OverrideOnConstructor,Dl),K.hadConstructor=!0,gI=K.hadSuperClass),this.pushClassMethod(se,At,!1,!1,BA,gI)}else if(this.isClassProperty())wl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr);else if(ca==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(Dl);let BA=this.eat(55);ra.optional&&this.unexpected(eA),$n.kind="method";let gI=this.match(139);this.parseClassElementName($n),this.parsePostMemberNameModifiers(ra),gI?this.pushClassPrivateMethod(se,sr,BA,!0):(this.isNonstaticConstructor(At)&&this.raise(J.ConstructorIsAsync,At.key),this.pushClassMethod(se,At,BA,!0,!1,!1))}else if((ca==="get"||ca==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(Dl),$n.kind=ca;let BA=this.match(139);this.parseClassElementName(At),BA?this.pushClassPrivateMethod(se,sr,!1,!1):(this.isNonstaticConstructor(At)&&this.raise(J.ConstructorIsAccessor,At.key),this.pushClassMethod(se,At,!1,!1,!1,!1)),this.checkGetterSetterParams(At)}else if(ca==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(Dl);let BA=this.match(139);this.parseClassElementName(Yr),this.pushClassAccessorProperty(se,fi,BA)}else this.isLineTerminator()?wl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr):this.unexpected()}parseClassElementName(se){let{type:P,value:K}=this.state;if((P===132||P===134)&&se.static&&K==="prototype"&&this.raise(J.StaticPrototype,this.state.startLoc),P===139){K==="constructor"&&this.raise(J.ConstructorClassPrivateField,this.state.startLoc);let we=this.parsePrivateName();return se.key=we,we}return this.parsePropertyName(se),se.key}parseClassStaticBlock(se,P){var K;this.scope.enter(208);let we=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let At=P.body=[];this.parseBlockOrModuleBlockBody(At,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=we,se.body.push(this.finishNode(P,"StaticBlock")),(K=P.decorators)!=null&&K.length&&this.raise(J.DecoratorStaticBlock,P)}pushClassProperty(se,P){!P.computed&&this.nameIsConstructor(P.key)&&this.raise(J.ConstructorClassField,P.key),se.body.push(this.parseClassProperty(P))}pushClassPrivateProperty(se,P){let K=this.parseClassPrivateProperty(P);se.body.push(K),this.classScope.declarePrivateName(this.getPrivateNameSV(K.key),0,K.key.loc.start)}pushClassAccessorProperty(se,P,K){!K&&!P.computed&&this.nameIsConstructor(P.key)&&this.raise(J.ConstructorClassField,P.key);let we=this.parseClassAccessorProperty(P);se.body.push(we),K&&this.classScope.declarePrivateName(this.getPrivateNameSV(we.key),0,we.key.loc.start)}pushClassMethod(se,P,K,we,At,sr){se.body.push(this.parseMethod(P,K,we,At,sr,"ClassMethod",!0))}pushClassPrivateMethod(se,P,K,we){let At=this.parseMethod(P,K,we,!1,!1,"ClassPrivateMethod",!0);se.body.push(At);let sr=At.kind==="get"?At.static?6:2:At.kind==="set"?At.static?5:1:0;this.declareClassPrivateMethodInScope(At,sr)}declareClassPrivateMethodInScope(se,P){this.classScope.declarePrivateName(this.getPrivateNameSV(se.key),P,se.key.loc.start)}parsePostMemberNameModifiers(se){}parseClassPrivateProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassPrivateProperty")}parseClassProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassProperty")}parseClassAccessorProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassAccessorProperty")}parseInitializer(se){this.scope.enter(80),this.expressionScope.enter(rl()),this.prodParam.enter(0),se.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(se,P,K,we=8331){if(qr(this.state.type))se.id=this.parseIdentifier(),P&&this.declareNameFromIdentifier(se.id,we);else if(K||!P)se.id=null;else throw this.raise(J.MissingClassName,this.state.startLoc)}parseClassSuper(se){se.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(se,P){let K=this.parseMaybeImportPhase(se,!0),we=this.maybeParseExportDefaultSpecifier(se,K),At=!we||this.eat(12),sr=At&&this.eatExportStar(se),Yr=sr&&this.maybeParseExportNamespaceSpecifier(se),Lr=At&&(!Yr||this.eat(12)),fi=we||sr;if(sr&&!Yr){if(we&&this.unexpected(),P)throw this.raise(J.UnsupportedDecoratorExport,se);return this.parseExportFrom(se,!0),this.finishNode(se,"ExportAllDeclaration")}let $n=this.maybeParseExportNamedSpecifiers(se);we&&At&&!sr&&!$n&&this.unexpected(null,5),Yr&&Lr&&this.unexpected(null,98);let ra;if(fi||$n){if(ra=!1,P)throw this.raise(J.UnsupportedDecoratorExport,se);this.parseExportFrom(se,fi)}else ra=this.maybeParseExportDeclaration(se);if(fi||$n||ra){var kc;let Dl=se;if(this.checkExport(Dl,!0,!1,!!Dl.source),((kc=Dl.declaration)==null?void 0:kc.type)==="ClassDeclaration")this.maybeTakeDecorators(P,Dl.declaration,Dl);else if(P)throw this.raise(J.UnsupportedDecoratorExport,se);return this.finishNode(Dl,"ExportNamedDeclaration")}if(this.eat(65)){let Dl=se,ca=this.parseExportDefaultExpression();if(Dl.declaration=ca,ca.type==="ClassDeclaration")this.maybeTakeDecorators(P,ca,Dl);else if(P)throw this.raise(J.UnsupportedDecoratorExport,se);return this.checkExport(Dl,!0,!0),this.finishNode(Dl,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(se){return this.eat(55)}maybeParseExportDefaultSpecifier(se,P){if(P||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",P?.loc.start);let K=P||this.parseIdentifier(!0),we=this.startNodeAtNode(K);return we.exported=K,se.specifiers=[this.finishNode(we,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(se){if(this.isContextual(93)){var P,K;(K=(P=se).specifiers)!=null||(P.specifiers=[]);let we=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),we.exported=this.parseModuleExportName(),se.specifiers.push(this.finishNode(we,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(se){if(this.match(5)){let P=se;P.specifiers||(P.specifiers=[]);let K=P.exportKind==="type";return P.specifiers.push(...this.parseExportSpecifiers(K)),P.source=null,P.declaration=null,this.hasPlugin("importAssertions")&&(P.assertions=[]),!0}return!1}maybeParseExportDeclaration(se){return this.shouldParseExportDeclaration()?(se.specifiers=[],se.source=null,this.hasPlugin("importAssertions")&&(se.assertions=[]),se.declaration=this.parseExportDeclaration(se),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let se=this.nextTokenInLineStart();return this.isUnparsedContextual(se,"function")}parseExportDefaultExpression(){let se=this.startNode();if(this.match(68))return this.next(),this.parseFunction(se,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(se,13);if(this.match(80))return this.parseClass(se,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(J.DecoratorBeforeExport,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(J.UnsupportedDefaultExport,this.state.startLoc);let P=this.parseMaybeAssignAllowIn();return this.semicolon(),P}parseExportDeclaration(se){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:se}=this.state;if(qr(se)){if(se===95&&!this.state.containsEsc||se===100)return!1;if((se===130||se===129)&&!this.state.containsEsc){let{type:we}=this.lookahead();if(qr(we)&&we!==98||we===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let P=this.nextTokenStart(),K=this.isUnparsedContextual(P,"from");if(this.input.charCodeAt(P)===44||qr(this.state.type)&&K)return!0;if(this.match(65)&&K){let we=this.input.charCodeAt(this.nextTokenStartSince(P+4));return we===34||we===39}return!1}parseExportFrom(se,P){this.eatContextual(98)?(se.source=this.parseImportSource(),this.checkExport(se),this.maybeParseImportAttributes(se),this.checkJSONModuleImport(se)):P&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:se}=this.state;return se===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(J.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(J.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(J.UsingDeclarationExport,this.state.startLoc),!0):se===74||se===75||se===68||se===80||this.isLet()||this.isAsyncFunction()}checkExport(se,P,K,we){if(P){var At;if(K){if(this.checkDuplicateExports(se,"default"),this.hasPlugin("exportDefaultFrom")){var sr;let Yr=se.declaration;Yr.type==="Identifier"&&Yr.name==="from"&&Yr.end-Yr.start===4&&!((sr=Yr.extra)!=null&&sr.parenthesized)&&this.raise(J.ExportDefaultFromAsIdentifier,Yr)}}else if((At=se.specifiers)!=null&&At.length)for(let Yr of se.specifiers){let{exported:Lr}=Yr,fi=Lr.type==="Identifier"?Lr.name:Lr.value;if(this.checkDuplicateExports(Yr,fi),!we&&Yr.local){let{local:$n}=Yr;$n.type!=="Identifier"?this.raise(J.ExportBindingIsString,Yr,{localName:$n.value,exportName:fi}):(this.checkReservedWord($n.name,$n.loc.start,!0,!1),this.scope.checkLocalExport($n))}}else if(se.declaration){let Yr=se.declaration;if(Yr.type==="FunctionDeclaration"||Yr.type==="ClassDeclaration"){let{id:Lr}=Yr;if(!Lr)throw new Error("Assertion failure");this.checkDuplicateExports(se,Lr.name)}else if(Yr.type==="VariableDeclaration")for(let Lr of Yr.declarations)this.checkDeclaration(Lr.id)}}}checkDeclaration(se){if(se.type==="Identifier")this.checkDuplicateExports(se,se.name);else if(se.type==="ObjectPattern")for(let P of se.properties)this.checkDeclaration(P);else if(se.type==="ArrayPattern")for(let P of se.elements)P&&this.checkDeclaration(P);else se.type==="ObjectProperty"?this.checkDeclaration(se.value):se.type==="RestElement"?this.checkDeclaration(se.argument):se.type==="AssignmentPattern"&&this.checkDeclaration(se.left)}checkDuplicateExports(se,P){this.exportedIdentifiers.has(P)&&(P==="default"?this.raise(J.DuplicateDefaultExport,se):this.raise(J.DuplicateExport,se,{exportName:P})),this.exportedIdentifiers.add(P)}parseExportSpecifiers(se){let P=[],K=!0;for(this.expect(5);!this.eat(8);){if(K)K=!1;else if(this.expect(12),this.eat(8))break;let we=this.isContextual(130),At=this.match(134),sr=this.startNode();sr.local=this.parseModuleExportName(),P.push(this.parseExportSpecifier(sr,At,se,we))}return P}parseExportSpecifier(se,P,K,we){return this.eatContextual(93)?se.exported=this.parseModuleExportName():P?se.exported=yn(se.local):se.exported||(se.exported=Zt(se.local)),this.finishNode(se,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let se=this.parseStringLiteral(this.state.value),P=DC.exec(se.value);return P&&this.raise(J.ModuleExportNameHasLoneSurrogate,se,{surrogateCharCode:P[0].charCodeAt(0)}),se}return this.parseIdentifier(!0)}isJSONModuleImport(se){return se.assertions!=null?se.assertions.some(({key:P,value:K})=>K.value==="json"&&(P.type==="Identifier"?P.name==="type":P.value==="type")):!1}checkImportReflection(se){let{specifiers:P}=se,K=P.length===1?P[0].type:null;if(se.phase==="source")K!=="ImportDefaultSpecifier"&&this.raise(J.SourcePhaseImportRequiresDefault,P[0].loc.start);else if(se.phase==="defer")K!=="ImportNamespaceSpecifier"&&this.raise(J.DeferImportRequiresNamespace,P[0].loc.start);else if(se.module){var we;K!=="ImportDefaultSpecifier"&&this.raise(J.ImportReflectionNotBinding,P[0].loc.start),((we=se.assertions)==null?void 0:we.length)>0&&this.raise(J.ImportReflectionHasAssertion,P[0].loc.start)}}checkJSONModuleImport(se){if(this.isJSONModuleImport(se)&&se.type!=="ExportAllDeclaration"){let{specifiers:P}=se;if(P!=null){let K=P.find(we=>{let At;if(we.type==="ExportSpecifier"?At=we.local:we.type==="ImportSpecifier"&&(At=we.imported),At!==void 0)return At.type==="Identifier"?At.name!=="default":At.value!=="default"});K!==void 0&&this.raise(J.ImportJSONBindingNotDefault,K.loc.start)}}}isPotentialImportPhase(se){return se?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(se,P,K,we){P||(K==="module"?(this.expectPlugin("importReflection",we),se.module=!0):this.hasPlugin("importReflection")&&(se.module=!1),K==="source"?(this.expectPlugin("sourcePhaseImports",we),se.phase="source"):K==="defer"?(this.expectPlugin("deferredImportEvaluation",we),se.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(se.phase=null))}parseMaybeImportPhase(se,P){if(!this.isPotentialImportPhase(P))return this.applyImportPhase(se,P,null),null;let K=this.parseIdentifier(!0),{type:we}=this.state;return(ke(we)?we!==98||this.lookaheadCharCode()===102:we!==12)?(this.resetPreviousIdentifierLeadingComments(K),this.applyImportPhase(se,P,K.name,K.loc.start),null):(this.applyImportPhase(se,P,null),K)}isPrecedingIdImportPhase(se){let{type:P}=this.state;return qr(P)?P!==98||this.lookaheadCharCode()===102:P!==12}parseImport(se){return this.match(134)?this.parseImportSourceAndAttributes(se):this.parseImportSpecifiersAndAfter(se,this.parseMaybeImportPhase(se,!1))}parseImportSpecifiersAndAfter(se,P){se.specifiers=[];let K=!this.maybeParseDefaultImportSpecifier(se,P)||this.eat(12),we=K&&this.maybeParseStarImportSpecifier(se);return K&&!we&&this.parseNamedImportSpecifiers(se),this.expectContextual(98),this.parseImportSourceAndAttributes(se)}parseImportSourceAndAttributes(se){var P;return(P=se.specifiers)!=null||(se.specifiers=[]),se.source=this.parseImportSource(),this.maybeParseImportAttributes(se),this.checkImportReflection(se),this.checkJSONModuleImport(se),this.semicolon(),this.finishNode(se,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(se,P,K){P.local=this.parseIdentifier(),se.specifiers.push(this.finishImportSpecifier(P,K))}finishImportSpecifier(se,P,K=8201){return this.checkLVal(se.local,{type:P},K),this.finishNode(se,P)}parseImportAttributes(){this.expect(5);let se=[],P=new Set;do{if(this.match(8))break;let K=this.startNode(),we=this.state.value;if(P.has(we)&&this.raise(J.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:we}),P.add(we),this.match(134)?K.key=this.parseStringLiteral(we):K.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(J.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return this.expect(8),se}parseModuleAttributes(){let se=[],P=new Set;do{let K=this.startNode();if(K.key=this.parseIdentifier(!0),K.key.name!=="type"&&this.raise(J.ModuleAttributeDifferentFromType,K.key),P.has(K.key.name)&&this.raise(J.ModuleAttributesWithDuplicateKeys,K.key,{key:K.key.name}),P.add(K.key.name),this.expect(14),!this.match(134))throw this.raise(J.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return se}maybeParseImportAttributes(se){let P;var K=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?P=this.parseModuleAttributes():P=this.parseImportAttributes(),K=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(J.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(se,"deprecatedAssertSyntax",!0),this.next(),P=this.parseImportAttributes()):P=[];!K&&this.hasPlugin("importAssertions")?se.assertions=P:se.attributes=P}maybeParseDefaultImportSpecifier(se,P){if(P){let K=this.startNodeAtNode(P);return K.local=P,se.specifiers.push(this.finishImportSpecifier(K,"ImportDefaultSpecifier")),!0}else if(ke(this.state.type))return this.parseImportSpecifierLocal(se,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(se){if(this.match(55)){let P=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(se,P,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(se){let P=!0;for(this.expect(5);!this.eat(8);){if(P)P=!1;else{if(this.eat(14))throw this.raise(J.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let K=this.startNode(),we=this.match(134),At=this.isContextual(130);K.imported=this.parseModuleExportName();let sr=this.parseImportSpecifier(K,we,se.importKind==="type"||se.importKind==="typeof",At,void 0);se.specifiers.push(sr)}}parseImportSpecifier(se,P,K,we,At){if(this.eatContextual(93))se.local=this.parseIdentifier();else{let{imported:sr}=se;if(P)throw this.raise(J.ImportBindingIsString,se,{importName:sr.value});this.checkReservedWord(sr.name,se.loc.start,!0,!0),se.local||(se.local=Zt(sr))}return this.finishImportSpecifier(se,"ImportSpecifier",At)}isThisParam(se){return se.type==="Identifier"&&se.name==="this"}},mb=class extends Xm{constructor(se,P,K){se=ne(se),super(se,P),this.options=se,this.initializeScopes(),this.plugins=K,this.filename=se.sourceFilename,this.startIndex=se.startIndex;let we=0;se.allowAwaitOutsideFunction&&(we|=1),se.allowReturnOutsideFunction&&(we|=2),se.allowImportExportEverywhere&&(we|=8),se.allowSuperOutsideMethod&&(we|=16),se.allowUndeclaredExports&&(we|=32),se.allowNewTargetOutsideFunction&&(we|=4),se.ranges&&(we|=64),se.tokens&&(we|=128),se.createImportExpressions&&(we|=256),se.createParenthesizedExpressions&&(we|=512),se.errorRecovery&&(we|=1024),se.attachComment&&(we|=2048),se.annexB&&(we|=4096),this.optionFlags=we}getScopeHandler(){return Ju}parse(){this.enterInitialScopes();let se=this.startNode(),P=this.startNode();return this.nextToken(),se.errors=null,this.parseTopLevel(se,P),se.errors=this.state.errors,se.comments.length=this.state.commentsLen,se}};function pe(se,P){var K;if(((K=P)==null?void 0:K.sourceType)==="unambiguous"){P=Object.assign({},P);try{P.sourceType="module";let we=bI(P,se),At=we.parse();if(we.sawUnambiguousESM)return At;if(we.ambiguousScriptDifferentAst)try{return P.sourceType="script",bI(P,se).parse()}catch{}else At.program.sourceType="script";return At}catch(we){try{return P.sourceType="script",bI(P,se).parse()}catch{}throw we}}else return bI(P,se).parse()}function dm(se,P){let K=bI(P,se);return K.options.strictMode&&(K.state.strict=!0),K.getExpression()}function qf(se){let P={};for(let K of Object.keys(se))P[K]=zr(se[K]);return P}var yI=qf(Ar);function bI(se,P){let K=mb,we=new Map;if(se!=null&&se.plugins){for(let At of se.plugins){let sr,Yr;typeof At=="string"?sr=At:[sr,Yr]=At,we.has(sr)||we.set(sr,Yr||{})}Qp(we),K=cE(we)}return new K(se,P,we)}var U2=new Map;function cE(se){let P=[];for(let At of aE)se.has(At)&&P.push(At);let K=P.join("|"),we=U2.get(K);if(!we){we=mb;for(let At of P)we=dC[At](we);U2.set(K,we)}return we}e.parse=pe,e.parseExpression=dm,e.tokTypes=yI}),Syi={};L3a(Syi,{parsers:()=>tNe});var uyi=yyi(byi(),1);function sbt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},eyi=J3a;function U3a(e){return Array.isArray(e)&&e.length>0}var YTr=U3a;function p6(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(p6(o),a):a}function Rme(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function K3a(e){let t=new Set(e);return r=>t.has(r?.type)}var j3a=K3a,z3a=j3a(["Block","CommentBlock","MultiLine"]),OTr=z3a;function q3a(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var tyi=q3a;function $3a(e){return OTr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var e5a=$3a,F4e=null;function L4e(e){if(F4e!==null&&typeof F4e.property){let t=F4e;return F4e=L4e.prototype=null,t}return F4e=L4e.prototype=e??Object.create(null),new L4e}var t5a=10;for(let e=0;e<=t5a;e++)L4e();function r5a(e){return L4e(e)}function n5a(e,t="type"){r5a(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var i5a=n5a,s5a={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},o5a=i5a(s5a),a5a=o5a;function PTr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(e5a)&&a.add(p6(o))}),e=VTr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=p6(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=VTr(e,a=>{switch(a.type){case"LogicalExpression":if(fyi(a))return MTr(a);break;case"VariableDeclaration":{let o=eyi(!1,a.declarations,-1);o!=null&&o.init&&n[Rme(o)]!==";"&&(a.range=[p6(a),Rme(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=p6(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),YTr(e.comments)){let a=eyi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];Rme(l)===p6(a)&&OTr(l)&&OTr(a)&&tyi(l)&&tyi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[p6(l),Rme(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function fyi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function MTr(e){return fyi(e)?MTr({type:"LogicalExpression",operator:e.operator,left:MTr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[p6(e.left),Rme(e.right.left)]}),right:e.right.right,range:[p6(e),Rme(e)]}):e}var l5a=c5a;function u5a(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Iyi=u5a;function g5a(e){let{message:t,loc:{line:r,column:n},reasonCode:a}=e,o=e;(a==="MissingPlugin"||a==="MissingOneOfPlugins")&&(t="Unexpected token.",o=void 0);let l=` (${r}:${n})`;return t.endsWith(l)&&(t=t.slice(0,-l.length)),Iyi(t,{loc:{start:{line:r,column:n+1}},cause:o})}var hyi=g5a,A5a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},obt=A5a,d5a=/\*\/$/,p5a=/^\/\*\*?/,f5a=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,I5a=/(^|\s+)\/\/([^\n\r]*)/g,ryi=/^(\r?\n)+/,h5a=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,nyi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,m5a=/(\r?\n|^) *\* ?/g,C5a=[];function _5a(e){let t=e.match(f5a);return t?t[0].trimStart():""}function y5a(e){let t=` -`;e=obt(!1,e.replace(p5a,"").replace(d5a,""),m5a,"$1");let r="";for(;r!==e;)r=e,e=obt(!1,e,h5a,`${t}$1 $2${t}`);e=e.replace(ryi,"").trimEnd();let n=Object.create(null),a=obt(!1,e,nyi,"").replace(ryi,"").trimEnd(),o;for(;o=nyi.exec(e);){let l=obt(!1,o[2],I5a,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...C5a,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function b5a(e){let t=pyi(e);t&&(e=e.slice(t.length+1));let r=_5a(e),{pragmas:n,comments:a}=y5a(r);return{shebang:t,text:e,pragmas:n,comments:a}}function E5a(e){let{pragmas:t}=b5a(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function S5a(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:E5a,locStart:p6,locEnd:Rme,...e}}var Z4e=S5a;function v5a(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var B5a=v5a;function w5a(e,t){let{type:r="JsExpressionRoot",rootMarker:n,text:a}=t,{tokens:o,comments:l}=e;return delete e.tokens,delete e.comments,{tokens:o,comments:l,type:r,node:e,range:[0,a.length],rootMarker:n}}var myi=w5a,rNe=e=>Z4e(k5a(e)),T5a={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","explicitResourceManagement","sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},iyi="v8intrinsic",syi=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"fsharp"}]],Eee=(e,t=T5a)=>({...t,plugins:[...t.plugins,...e]}),R5a=/@(?:no)?flow\b/u;function N5a(e,t){var r;if((r=t.filepath)!=null&&r.endsWith(".js.flow"))return!0;let n=pyi(e);n&&(e=e.slice(n.length));let a=H3a(e,0);return a!==!1&&(e=e.slice(0,a)),R5a.test(e)}function D5a(e,t,r){let n=e(t,r),a=n.errors.find(o=>!x5a.has(o.reasonCode));if(a)throw a;return n}function k5a({isExpression:e=!1,optionsCombinations:t}){return(r,n={})=>{if((n.parser==="babel"||n.parser==="__babel_estree")&&N5a(r,n))return n.parser="babel-flow",_yi.parse(r,n);let a=t;(n.__babelSourceType??B5a(n))==="script"&&(a=a.map(f=>({...f,sourceType:"script"})));let o=/%[A-Z]/u.test(r);r.includes("|>")?a=(o?[...syi,iyi]:syi).flatMap(f=>a.map(I=>Eee([f],I))):o&&(a=a.map(f=>Eee([iyi],f)));let l=e?$0i.parseExpression:$0i.parse,A;try{A=Q3a(a.map(f=>()=>D5a(l,r,f)))}catch({errors:[f]}){throw hyi(f)}return e&&(A=myi(A,{text:r,rootMarker:n.rootMarker})),l5a(A,{parser:"babel",text:r})}}var x5a=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport","ImportAttributesUseAssert"]),Cyi=[Eee(["jsx"])],oyi=rNe({optionsCombinations:Cyi}),ayi=rNe({optionsCombinations:[Eee(["jsx","typescript"]),Eee(["typescript"])]}),cyi=rNe({isExpression:!0,optionsCombinations:[Eee(["jsx"])]}),lyi=rNe({isExpression:!0,optionsCombinations:[Eee(["typescript"])]}),_yi=rNe({optionsCombinations:[Eee(["jsx",["flow",{all:!0}],"flowComments"])]}),G5a=rNe({optionsCombinations:Cyi.map(e=>Eee(["estree"],e))}),F5a={babel:oyi,"babel-flow":_yi,"babel-ts":ayi,__js_expression:cyi,__ts_expression:lyi,__vue_expression:cyi,__vue_ts_expression:lyi,__vue_event_binding:oyi,__vue_ts_event_binding:ayi,__babel_estree:G5a},Z5a=uyi(gyi(),1);function yyi(e={}){let{allowComments:t=!0}=e;return function(r){let n;try{n=(0,Z5a.parseExpression)(r,{tokens:!0,ranges:!0,attachComment:!1})}catch(a){throw hyi(a)}if(!t&&YTr(n.comments))throw dce(n.comments[0],"Comment");return tNe(n),myi(n,{type:"JsonRoot",text:r})}}function dce(e,t){let[r,n]=[e.loc.start,e.loc.end].map(({line:a,column:o})=>({line:a,column:o+1}));return Iyi(`${t} is not allowed in JSON.`,{loc:{start:r,end:n}})}function tNe(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)t!==null&&tNe(t);return;case"ObjectExpression":for(let t of e.properties)tNe(t);return;case"ObjectProperty":if(e.computed)throw dce(e.key,"Computed key");if(e.shorthand)throw dce(e.key,"Shorthand property");e.key.type!=="Identifier"&&tNe(e.key),tNe(e.value);return;case"UnaryExpression":{let{operator:t,argument:r}=e;if(t!=="+"&&t!=="-")throw dce(e,`Operator '${e.operator}'`);if(r.type==="NumericLiteral"||r.type==="Identifier"&&(r.name==="Infinity"||r.name==="NaN"))return;throw dce(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if(e.name!=="Infinity"&&e.name!=="NaN"&&e.name!=="undefined")throw dce(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(YTr(e.expressions))throw dce(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)tNe(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw dce(e,`'${e.type}'`)}}var WTr=yyi(),L5a={json:Z4e({parse:WTr,hasPragma(){return!0}}),json5:Z4e(WTr),jsonc:Z4e(WTr),"json-stringify":Z4e({parse:yyi({allowComments:!1}),astFormat:"estree-json"})},V5a=L5a,nNe={...F5a,...V5a},W5a=dyi;var Mme={};Uf(Mme,{default:()=>K4a,languages:()=>i1i,options:()=>n1i,printers:()=>yNe});var O5a=Object.defineProperty,Jyi=e=>{throw TypeError(e)},ybt=(e,t)=>{for(var r in t)O5a(e,r,{get:t[r],enumerable:!0})},Uyi=(e,t,r)=>t.has(e)||Jyi("Cannot "+r),pce=(e,t,r)=>(Uyi(e,t,"read from private field"),r?r.call(e):t.get(e)),P5a=(e,t,r)=>t.has(e)?Jyi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),M5a=(e,t,r,n)=>(Uyi(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),Kyi={};ybt(Kyi,{languages:()=>i1i,options:()=>n1i,printers:()=>yNe});var H5a=[{linguistLanguageId:183,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",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,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",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],jyi={};ybt(jyi,{canAttachComment:()=>KHa,embed:()=>ZYa,experimentalFeatures:()=>O4a,getCommentChildNodes:()=>jHa,getVisitorKeys:()=>ebi,handleComments:()=>ybi,insertPragma:()=>KYa,isBlockComment:()=>sH,isGap:()=>zHa,massageAstNode:()=>UMa,print:()=>W4a,printComment:()=>dHa,willPrintOwnComments:()=>kbi});var Y5a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Pk=Y5a,Q5a=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},j0=Q5a;function X5a(e){return e!==null&&typeof e=="object"}var J5a=X5a;function*U5a(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>J5a(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*K5a(e,t){let r=[e];for(let n=0;n/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function q5a(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function $5a(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var eMa=e=>!(q5a(e)||$5a(e)),tMa=/[^\x20-\x7F]/u;function rMa(e){if(!e)return 0;if(!tMa.test(e))return e.length;e=e.replace(z5a()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=eMa(n)?1:2)}return t}var lNe=rMa;function bbt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},gyi=q3a;function $3a(e){return Array.isArray(e)&&e.length>0}var XTr=$3a;function f6(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(f6(o),a):a}function Nme(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function e5a(e){let t=new Set(e);return r=>t.has(r?.type)}var t5a=e5a,r5a=t5a(["Block","CommentBlock","MultiLine"]),MTr=r5a;function n5a(e){let t=`*${e.value}*`.split(` +`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var Ayi=n5a;function i5a(e){return MTr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var s5a=i5a,L4e=null;function W4e(e){if(L4e!==null&&typeof L4e.property){let t=L4e;return L4e=W4e.prototype=null,t}return L4e=W4e.prototype=e??Object.create(null),new W4e}var o5a=10;for(let e=0;e<=o5a;e++)W4e();function a5a(e){return W4e(e)}function c5a(e,t="type"){a5a(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var l5a=c5a,u5a={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},g5a=l5a(u5a),A5a=g5a;function HTr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(s5a)&&a.add(f6(o))}),e=OTr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=f6(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=OTr(e,a=>{switch(a.type){case"LogicalExpression":if(Byi(a))return YTr(a);break;case"VariableDeclaration":{let o=gyi(!1,a.declarations,-1);o!=null&&o.init&&n[Nme(o)]!==";"&&(a.range=[f6(a),Nme(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=f6(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),XTr(e.comments)){let a=gyi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];Nme(l)===f6(a)&&MTr(l)&&MTr(a)&&Ayi(l)&&Ayi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[f6(l),Nme(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function Byi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function YTr(e){return Byi(e)?YTr({type:"LogicalExpression",operator:e.operator,left:YTr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[f6(e.left),Nme(e.right.left)]}),right:e.right.right,range:[f6(e),Nme(e)]}):e}var p5a=d5a;function f5a(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var wyi=f5a;function I5a(e){let{message:t,loc:{line:r,column:n},reasonCode:a}=e,o=e;(a==="MissingPlugin"||a==="MissingOneOfPlugins")&&(t="Unexpected token.",o=void 0);let l=` (${r}:${n})`;return t.endsWith(l)&&(t=t.slice(0,-l.length)),wyi(t,{loc:{start:{line:r,column:n+1}},cause:o})}var Tyi=I5a,h5a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},ibt=h5a,m5a=/\*\/$/,C5a=/^\/\*\*?/,_5a=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,y5a=/(^|\s+)\/\/([^\n\r]*)/g,dyi=/^(\r?\n)+/,b5a=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,pyi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,E5a=/(\r?\n|^) *\* ?/g,S5a=[];function v5a(e){let t=e.match(_5a);return t?t[0].trimStart():""}function B5a(e){let t=` +`;e=ibt(!1,e.replace(C5a,"").replace(m5a,""),E5a,"$1");let r="";for(;r!==e;)r=e,e=ibt(!1,e,b5a,`${t}$1 $2${t}`);e=e.replace(dyi,"").trimEnd();let n=Object.create(null),a=ibt(!1,e,pyi,"").replace(dyi,"").trimEnd(),o;for(;o=pyi.exec(e);){let l=ibt(!1,o[2],y5a,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...S5a,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function w5a(e){let t=vyi(e);t&&(e=e.slice(t.length+1));let r=v5a(e),{pragmas:n,comments:a}=B5a(r);return{shebang:t,text:e,pragmas:n,comments:a}}function T5a(e){let{pragmas:t}=w5a(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function R5a(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:T5a,locStart:f6,locEnd:Nme,...e}}var V4e=R5a;function N5a(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var D5a=N5a;function k5a(e,t){let{type:r="JsExpressionRoot",rootMarker:n,text:a}=t,{tokens:o,comments:l}=e;return delete e.tokens,delete e.comments,{tokens:o,comments:l,type:r,node:e,range:[0,a.length],rootMarker:n}}var Ryi=k5a,eNe=e=>V4e(L5a(e)),x5a={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","explicitResourceManagement","sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},fyi="v8intrinsic",Iyi=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"fsharp"}]],See=(e,t=x5a)=>({...t,plugins:[...t.plugins,...e]}),G5a=/@(?:no)?flow\b/u;function F5a(e,t){var r;if((r=t.filepath)!=null&&r.endsWith(".js.flow"))return!0;let n=vyi(e);n&&(e=e.slice(n.length));let a=U3a(e,0);return a!==!1&&(e=e.slice(0,a)),G5a.test(e)}function Z5a(e,t,r){let n=e(t,r),a=n.errors.find(o=>!V5a.has(o.reasonCode));if(a)throw a;return n}function L5a({isExpression:e=!1,optionsCombinations:t}){return(r,n={})=>{if((n.parser==="babel"||n.parser==="__babel_estree")&&F5a(r,n))return n.parser="babel-flow",Dyi.parse(r,n);let a=t;(n.__babelSourceType??D5a(n))==="script"&&(a=a.map(f=>({...f,sourceType:"script"})));let o=/%[A-Z]/u.test(r);r.includes("|>")?a=(o?[...Iyi,fyi]:Iyi).flatMap(f=>a.map(I=>See([f],I))):o&&(a=a.map(f=>See([fyi],f)));let l=e?uyi.parseExpression:uyi.parse,A;try{A=j3a(a.map(f=>()=>Z5a(l,r,f)))}catch({errors:[f]}){throw Tyi(f)}return e&&(A=Ryi(A,{text:r,rootMarker:n.rootMarker})),p5a(A,{parser:"babel",text:r})}}var V5a=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport","ImportAttributesUseAssert"]),Nyi=[See(["jsx"])],hyi=eNe({optionsCombinations:Nyi}),myi=eNe({optionsCombinations:[See(["jsx","typescript"]),See(["typescript"])]}),Cyi=eNe({isExpression:!0,optionsCombinations:[See(["jsx"])]}),_yi=eNe({isExpression:!0,optionsCombinations:[See(["typescript"])]}),Dyi=eNe({optionsCombinations:[See(["jsx",["flow",{all:!0}],"flowComments"])]}),W5a=eNe({optionsCombinations:Nyi.map(e=>See(["estree"],e))}),O5a={babel:hyi,"babel-flow":Dyi,"babel-ts":myi,__js_expression:Cyi,__ts_expression:_yi,__vue_expression:Cyi,__vue_ts_expression:_yi,__vue_event_binding:hyi,__vue_ts_event_binding:myi,__babel_estree:W5a},P5a=yyi(byi(),1);function kyi(e={}){let{allowComments:t=!0}=e;return function(r){let n;try{n=(0,P5a.parseExpression)(r,{tokens:!0,ranges:!0,attachComment:!1})}catch(a){throw Tyi(a)}if(!t&&XTr(n.comments))throw pce(n.comments[0],"Comment");return $Re(n),Ryi(n,{type:"JsonRoot",text:r})}}function pce(e,t){let[r,n]=[e.loc.start,e.loc.end].map(({line:a,column:o})=>({line:a,column:o+1}));return wyi(`${t} is not allowed in JSON.`,{loc:{start:r,end:n}})}function $Re(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)t!==null&&$Re(t);return;case"ObjectExpression":for(let t of e.properties)$Re(t);return;case"ObjectProperty":if(e.computed)throw pce(e.key,"Computed key");if(e.shorthand)throw pce(e.key,"Shorthand property");e.key.type!=="Identifier"&&$Re(e.key),$Re(e.value);return;case"UnaryExpression":{let{operator:t,argument:r}=e;if(t!=="+"&&t!=="-")throw pce(e,`Operator '${e.operator}'`);if(r.type==="NumericLiteral"||r.type==="Identifier"&&(r.name==="Infinity"||r.name==="NaN"))return;throw pce(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if(e.name!=="Infinity"&&e.name!=="NaN"&&e.name!=="undefined")throw pce(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(XTr(e.expressions))throw pce(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)$Re(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw pce(e,`'${e.type}'`)}}var PTr=kyi(),M5a={json:V4e({parse:PTr,hasPragma(){return!0}}),json5:V4e(PTr),jsonc:V4e(PTr),"json-stringify":V4e({parse:kyi({allowComments:!1}),astFormat:"estree-json"})},H5a=M5a,tNe={...O5a,...H5a},Y5a=Syi;var Hme={};Uf(Hme,{default:()=>eJa,languages:()=>f1i,options:()=>p1i,printers:()=>CNe});var Q5a=Object.defineProperty,ibi=e=>{throw TypeError(e)},Cbt=(e,t)=>{for(var r in t)Q5a(e,r,{get:t[r],enumerable:!0})},sbi=(e,t,r)=>t.has(e)||ibi("Cannot "+r),fce=(e,t,r)=>(sbi(e,t,"read from private field"),r?r.call(e):t.get(e)),X5a=(e,t,r)=>t.has(e)?ibi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),J5a=(e,t,r,n)=>(sbi(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),obi={};Cbt(obi,{languages:()=>f1i,options:()=>p1i,printers:()=>CNe});var U5a=[{linguistLanguageId:183,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",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,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",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],abi={};Cbt(abi,{canAttachComment:()=>eYa,embed:()=>PYa,experimentalFeatures:()=>Q4a,getCommentChildNodes:()=>tYa,getVisitorKeys:()=>gbi,handleComments:()=>kbi,insertPragma:()=>eQa,isBlockComment:()=>oH,isGap:()=>rYa,massageAstNode:()=>$Ma,print:()=>Y4a,printComment:()=>mHa,willPrintOwnComments:()=>Hbi});var K5a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Mk=K5a,j5a=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},z0=j5a;function z5a(e){return e!==null&&typeof e=="object"}var q5a=z5a;function*$5a(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>q5a(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*eMa(e,t){let r=[e];for(let n=0;n/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function nMa(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function iMa(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var sMa=e=>!(nMa(e)||iMa(e)),oMa=/[^\x20-\x7F]/u;function aMa(e){if(!e)return 0;if(!oMa.test(e))return e.length;e=e.replace(rMa()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=sMa(n)?1:2)}return t}var aNe=aMa;function _bt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var Q_=uMa,zyi=new Proxy(()=>{},{get:()=>zyi}),yRr=zyi,cbt="'",byi='"';function gMa(e,t){let r=t===!0||t===cbt?cbt:byi,n=r===cbt?byi:cbt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var qyi=gMa;function AMa(e,t,r){let n=t==='"'?"'":'"',a=Pk(!1,e,/\\(.)|(["'])/gsu,(o,l,A)=>l===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var dMa=AMa;function pMa(e,t){yRr.ok(/^(?["']).*\k$/su.test(e));let r=e.slice(1,-1),n=t.parser==="json"||t.parser==="jsonc"||t.parser==="json5"&&t.quoteProps==="preserve"&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":qyi(r,t.singleQuote);return e.charAt(0)===n?e:dMa(r,n,!1)}var ANe=pMa;function OS(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(OS(o),a):a}function TC(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function Ebt(e,t){let r=OS(e);return Number.isInteger(r)&&r===OS(t)}function fMa(e,t){let r=TC(e);return Number.isInteger(r)&&r===TC(t)}function IMa(e,t){return Ebt(e,t)&&fMa(e,t)}var V4e=null;function P4e(e){if(V4e!==null&&typeof V4e.property){let t=V4e;return V4e=P4e.prototype=null,t}return V4e=P4e.prototype=e??Object.create(null),new P4e}var hMa=10;for(let e=0;e<=hMa;e++)P4e();function mMa(e){return P4e(e)}function CMa(e,t="type"){mMa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var $yi=CMa,_Ma={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},yMa=$yi(_Ma),ebi=yMa;function bMa(e){let t=new Set(e);return r=>t.has(r?.type)}var b0=bMa,EMa=b0(["Block","CommentBlock","MultiLine"]),sH=EMa,SMa=b0(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),tbi=SMa;function vMa(e,t){let r=t.split(".");for(let n=r.length-1;n>=0;n--){let a=r[n];if(n===0)return e.type==="Identifier"&&e.name===a;if(e.type!=="MemberExpression"||e.optional||e.computed||e.property.type!=="Identifier"||e.property.name!==a)return!1;e=e.object}}function BMa(e,t){return t.some(r=>vMa(e,r))}var wMa=BMa;function TMa({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}var rbi=TMa;function rRr(e,t){return t(e)||j5a(e,{getVisitorKeys:ebi,predicate:t})}function bRr(e){return e.type==="AssignmentExpression"||e.type==="BinaryExpression"||e.type==="LogicalExpression"||e.type==="NGPipeExpression"||e.type==="ConditionalExpression"||S_(e)||Uv(e)||e.type==="SequenceExpression"||e.type==="TaggedTemplateExpression"||e.type==="BindExpression"||e.type==="UpdateExpression"&&!e.prefix||I6(e)||e.type==="TSNonNullExpression"||e.type==="ChainExpression"}function RMa(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function nbi(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}var fNe=b0(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),NMa=b0(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),Hk=b0(["ArrayExpression","TupleExpression"]),g4=b0(["ObjectExpression","RecordExpression"]);function DMa(e){return e.type==="LogicalExpression"&&e.operator==="??"}function See(e){return e.type==="NumericLiteral"||e.type==="Literal"&&typeof e.value=="number"}function ibi(e){return e.type==="UnaryExpression"&&(e.operator==="+"||e.operator==="-")&&See(e.argument)}function hV(e){return!!(e&&(e.type==="StringLiteral"||e.type==="Literal"&&typeof e.value=="string"))}function sbi(e){return e.type==="RegExpLiteral"||e.type==="Literal"&&!!e.regex}var ERr=b0(["Literal","BooleanLiteral","BigIntLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),kMa=b0(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier"]),hce=b0(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),Y4e=b0(["FunctionExpression","ArrowFunctionExpression"]);function xMa(e){return e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&e.body.type==="BlockStatement"}function QTr(e){return S_(e)&&e.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}var cD=b0(["JSXElement","JSXFragment"]);function Sbt(e){return e.method&&e.kind==="init"||e.kind==="get"||e.kind==="set"}function obi(e){return(e.type==="ObjectTypeProperty"||e.type==="ObjectTypeInternalSlot")&&!e.static&&!e.method&&e.kind!=="get"&&e.kind!=="set"&&e.value.type==="FunctionTypeAnnotation"}function GMa(e){return(e.type==="TypeAnnotation"||e.type==="TSTypeAnnotation")&&e.typeAnnotation.type==="FunctionTypeAnnotation"&&!e.static&&!Ebt(e,e.typeAnnotation)}var vee=b0(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function oNe(e){return Uv(e)||e.type==="BindExpression"&&!!e.object}var FMa=b0(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]);function SRr(e){return rbi(e)||tbi(e)||FMa(e)||(e.type==="GenericTypeAnnotation"||e.type==="TSTypeReference")&&!e.typeParameters&&!e.typeArguments}function ZMa(e){return e.type==="Identifier"&&(e.name==="beforeEach"||e.name==="beforeAll"||e.name==="afterEach"||e.name==="afterAll")}var LMa=["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 VMa(e){return wMa(e,LMa)}function vbt(e,t){if(e?.type!=="CallExpression"||e.optional)return!1;let r=oH(e);if(r.length===1){if(QTr(e)&&vbt(t))return Y4e(r[0]);if(ZMa(e.callee))return QTr(r[0])}else if((r.length===2||r.length===3)&&(r[0].type==="TemplateLiteral"||hV(r[0]))&&VMa(e.callee))return r[2]&&!See(r[2])?!1:(r.length===2?Y4e(r[1]):xMa(r[1])&&FG(r[1]).length<=1)||QTr(r[1]);return!1}var abi=e=>t=>(t?.type==="ChainExpression"&&(t=t.expression),e(t)),S_=abi(b0(["CallExpression","OptionalCallExpression"])),Uv=abi(b0(["MemberExpression","OptionalMemberExpression"]));function Eyi(e,t=5){return cbi(e,t)<=t}function cbi(e,t){let r=0;for(let n in e){let a=e[n];if(a&&typeof a=="object"&&typeof a.type=="string"&&(r++,r+=cbi(a,t-r)),r>t)return r}return r}var WMa=.25;function vRr(e,t){let{printWidth:r}=t;if(sg(e))return!1;let n=r*WMa;if(e.type==="ThisExpression"||e.type==="Identifier"&&e.name.length<=n||ibi(e)&&!sg(e.argument))return!0;let a=e.type==="Literal"&&"regex"in e&&e.regex.pattern||e.type==="RegExpLiteral"&&e.pattern;return a?a.length<=n:hV(e)?ANe(rH(e),t).length<=n:e.type==="TemplateLiteral"?e.expressions.length===0&&e.quasis[0].value.raw.length<=n&&!e.quasis[0].value.raw.includes(` -`):e.type==="UnaryExpression"?vRr(e.argument,{printWidth:r}):e.type==="CallExpression"&&e.arguments.length===0&&e.callee.type==="Identifier"?e.callee.name.length<=n-2:ERr(e)}function mce(e,t){return cD(t)?Bbt(t):sg(t,IA.Leading,r=>_P(e,TC(r)))}function Syi(e){return e.quasis.some(t=>t.value.raw.includes(` -`))}function lbi(e,t){return(e.type==="TemplateLiteral"&&Syi(e)||e.type==="TaggedTemplateExpression"&&Syi(e.quasi))&&!_P(t,OS(e),{backwards:!0})}function ubi(e){if(!sg(e))return!1;let t=j0(!1,cNe(e,IA.Dangling),-1);return t&&!sH(t)}function OMa(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(Y4e(r)){if(t+=1,t>1)return!0}else if(S_(r)){for(let n of oH(r))if(Y4e(n))return!0}return!1}function gbi(e){let{node:t,parent:r,key:n}=e;return n==="callee"&&S_(t)&&S_(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}var PMa=new Set(["!","-","+","~"]);function l4(e,t=2){if(t<=0)return!1;if(e.type==="ChainExpression"||e.type==="TSNonNullExpression")return l4(e.expression,t);let r=n=>l4(n,t-1);if(sbi(e))return lNe(e.pattern??e.regex.pattern)<=5;if(ERr(e)||kMa(e)||e.type==="ArgumentPlaceholder")return!0;if(e.type==="TemplateLiteral")return e.quasis.every(n=>!n.value.raw.includes(` -`))&&e.expressions.every(r);if(g4(e))return e.properties.every(n=>!n.computed&&(n.shorthand||n.value&&r(n.value)));if(Hk(e))return e.elements.every(n=>n===null||r(n));if(dNe(e)){if(e.type==="ImportExpression"||l4(e.callee,t)){let n=oH(e);return n.length<=t&&n.every(r)}return!1}return Uv(e)?l4(e.object,t)&&l4(e.property,t):e.type==="UnaryExpression"&&PMa.has(e.operator)||e.type==="UpdateExpression"?l4(e.argument,t):!1}function rH(e){var t;return((t=e.extra)==null?void 0:t.raw)??e.raw}function MMa(e){return e}function Tee(e,t="es5"){return e.trailingComma==="es5"&&t==="es5"||e.trailingComma==="all"&&(t==="all"||t==="es5")}function $Z(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return $Z(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return $Z(e.object,t);case"TaggedTemplateExpression":return e.tag.type==="FunctionExpression"?!1:$Z(e.tag,t);case"CallExpression":case"OptionalCallExpression":return e.callee.type==="FunctionExpression"?!1:$Z(e.callee,t);case"ConditionalExpression":return $Z(e.test,t);case"UpdateExpression":return!e.prefix&&$Z(e.argument,t);case"BindExpression":return e.object&&$Z(e.object,t);case"SequenceExpression":return $Z(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return $Z(e.expression,t);default:return t(e)}}var vyi={"==":!0,"!=":!0,"===":!0,"!==":!0},lbt={"*":!0,"/":!0,"%":!0},nRr={">>":!0,">>>":!0,"<<":!0};function BRr(e,t){return!(Ibt(t)!==Ibt(e)||e==="**"||vyi[e]&&vyi[t]||t==="%"&&lbt[e]||e==="%"&&lbt[t]||t!==e&&lbt[t]&&lbt[e]||nRr[e]&&nRr[t])}var HMa=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((e,t)=>e.map(r=>[r,t])));function Ibt(e){return HMa.get(e)}function YMa(e){return!!nRr[e]||e==="|"||e==="^"||e==="&"}function QMa(e){var t;if(e.rest)return!0;let r=FG(e);return((t=j0(!1,r,-1))==null?void 0:t.type)==="RestElement"}var XTr=new WeakMap;function FG(e){if(XTr.has(e))return XTr.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),XTr.set(e,t),t}function XMa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);r.this&&e.call(a,"this"),Array.isArray(r.parameters)?e.each(a,"parameters"):Array.isArray(r.params)&&e.each(a,"params"),r.rest&&e.call(a,"rest")}var JTr=new WeakMap;function oH(e){if(JTr.has(e))return JTr.get(e);if(e.type==="ChainExpression")return oH(e.expression);let t=e.arguments;return e.type==="ImportExpression"&&(t=[e.source],e.options&&t.push(e.options)),JTr.set(e,t),t}function hbt(e,t){let{node:r}=e;if(r.type==="ChainExpression")return e.call(()=>hbt(e,t),"expression");r.type==="ImportExpression"?(e.call(n=>t(n,0),"source"),r.options&&e.call(n=>t(n,1),"options")):e.each(t,"arguments")}function Byi(e,t){let r=[];if(e.type==="ChainExpression"&&(e=e.expression,r.push("expression")),e.type==="ImportExpression"){if(t===0||t===(e.options?-2:-1))return[...r,"source"];if(e.options&&(t===1||t===-1))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function mbt(e){return e.value.trim()==="prettier-ignore"&&!e.unignore}function Bbt(e){return e?.prettierIgnore||sg(e,IA.PrettierIgnore)}var IA={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},Abi=(e,t)=>{if(typeof e=="function"&&(t=e,e=0),e||t)return(r,n,a)=>!(e&IA.Leading&&!r.leading||e&IA.Trailing&&!r.trailing||e&IA.Dangling&&(r.leading||r.trailing)||e&IA.Block&&!sH(r)||e&IA.Line&&!fNe(r)||e&IA.First&&n!==0||e&IA.Last&&n!==a.length-1||e&IA.PrettierIgnore&&!mbt(r)||t&&!t(r))};function sg(e,t,r){if(!Q_(e?.comments))return!1;let n=Abi(t,r);return n?e.comments.some(n):!0}function cNe(e,t,r){if(!Array.isArray(e?.comments))return[];let n=Abi(t,r);return n?e.comments.filter(n):e.comments}var Ree=(e,{originalText:t})=>_Rr(t,TC(e));function dNe(e){return S_(e)||e.type==="NewExpression"||e.type==="ImportExpression"}function Nee(e){return e&&(e.type==="ObjectProperty"||e.type==="Property"&&!Sbt(e))}var I6=b0(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),Cce=b0(["TSUnionType","UnionTypeAnnotation"]),wRr=b0(["TSIntersectionType","IntersectionTypeAnnotation"]),_ce=b0(["TSConditionalType","ConditionalTypeAnnotation"]),JMa=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),sNe=e=>{for(let t of e.quasis)delete t.value};function dbi(e,t,r){var n,a;if(e.type==="Program"&&delete t.sourceType,(e.type==="BigIntLiteral"||e.type==="BigIntLiteralTypeAnnotation")&&e.value&&(t.value=e.value.toLowerCase()),(e.type==="BigIntLiteral"||e.type==="Literal")&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),e.type==="EmptyStatement"||e.type==="JSXText"||e.type==="JSXExpressionContainer"&&(e.expression.type==="Literal"||e.expression.type==="StringLiteral")&&e.expression.value===" ")return null;if((e.type==="Property"||e.type==="ObjectProperty"||e.type==="MethodDefinition"||e.type==="ClassProperty"||e.type==="ClassMethod"||e.type==="PropertyDefinition"||e.type==="TSDeclareMethod"||e.type==="TSPropertySignature"||e.type==="ObjectTypeProperty"||e.type==="ImportAttribute")&&e.key&&!e.computed){let{key:l}=e;hV(l)||See(l)?t.key=String(l.value):l.type==="Identifier"&&(t.key=l.name)}if(e.type==="JSXElement"&&e.openingElement.name.name==="style"&&e.openingElement.attributes.some(l=>l.type==="JSXAttribute"&&l.name.name==="jsx"))for(let{type:l,expression:A}of t.children)l==="JSXExpressionContainer"&&A.type==="TemplateLiteral"&&sNe(A);e.type==="JSXAttribute"&&e.name.name==="css"&&e.value.type==="JSXExpressionContainer"&&e.value.expression.type==="TemplateLiteral"&&sNe(t.value.expression),e.type==="JSXAttribute"&&((n=e.value)==null?void 0:n.type)==="Literal"&&/["']|"|'/u.test(e.value.value)&&(t.value.value=Pk(!1,e.value.value,/["']|"|'/gu,'"'));let o=e.expression||e.callee;if(e.type==="Decorator"&&o.type==="CallExpression"&&o.callee.name==="Component"&&o.arguments.length===1){let l=e.expression.arguments[0].properties;for(let[A,f]of t.expression.arguments[0].properties.entries())switch(l[A].key.name){case"styles":Hk(f.value)&&sNe(f.value.elements[0]);break;case"template":f.value.type==="TemplateLiteral"&&sNe(f.value);break}}e.type==="TaggedTemplateExpression"&&(e.tag.type==="MemberExpression"||e.tag.type==="Identifier"&&(e.tag.name==="gql"||e.tag.name==="graphql"||e.tag.name==="css"||e.tag.name==="md"||e.tag.name==="markdown"||e.tag.name==="html")||e.tag.type==="CallExpression")&&sNe(t.quasi),e.type==="TemplateLiteral"&&((a=e.leadingComments)!=null&&a.some(l=>sH(l)&&["GraphQL","HTML"].some(A=>l.value===` ${A} `))||r.type==="CallExpression"&&r.callee.name==="graphql"||!e.leadingComments)&&sNe(t),e.type==="ChainExpression"&&e.expression.type==="TSNonNullExpression"&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),e.type==="TSMappedType"&&(delete t.key,delete t.constraint),e.type==="TSEnumDeclaration"&&delete t.body}dbi.ignoredProperties=JMa;var UMa=dbi,xme="string",Bee="array",INe="cursor",Gme="indent",Fme="align",Zme="trim",nH="group",bce="fill",h6="if-break",Lme="indent-if-break",Vme="line-suffix",Ece="line-suffix-boundary",CV="line",Dee="label",kee="break-parent",pbi=new Set([INe,Gme,Fme,Zme,nH,bce,h6,Lme,Vme,Ece,CV,Dee,kee]);function KMa(e){if(typeof e=="string")return xme;if(Array.isArray(e))return Bee;if(!e)return;let{type:t}=e;if(pbi.has(t))return t}var Sce=KMa,jMa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function zMa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(Sce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=jMa([...pbi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var qMa=class extends Error{name="InvalidDocError";constructor(e){super(zMa(e)),this.doc=e}},Q4e=qMa,wyi={};function $Ma(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===wyi){r(a.pop());continue}r&&a.push(o,wyi);let l=Sce(o);if(!l)throw new Q4e(o);if(t?.(o)!==!1)switch(l){case Bee:case bce:{let A=l===Bee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case h6:a.push(o.flatContents,o.breakContents);break;case nH:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Fme:case Gme:case Lme:case Dee:case Vme:a.push(o.contents);break;case xme:case INe:case Zme:case Ece:case CV:case kee:break;default:throw new Q4e(o)}}}var TRr=$Ma;function hNe(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Sce(o)){case Bee:return t(o.map(n));case bce:return t({...o,parts:o.parts.map(n)});case h6:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case nH:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case Fme:case Gme:case Lme:case Dee:case Vme:return t({...o,contents:n(o.contents)});case xme:case INe:case Zme:case Ece:case CV:case kee:return t(o);default:throw new Q4e(o)}}}function fbi(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return TRr(e,o),n}function eHa(e){if(e.type===nH&&e.break||e.type===CV&&e.hard||e.type===kee)return!0}function eL(e){return fbi(e,eHa,!1)}function Tyi(e){if(e.length>0){let t=j0(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function tHa(e){let t=new Set,r=[];function n(o){if(o.type===kee&&Tyi(r),o.type===nH){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===nH&&r.pop().break&&Tyi(r)}TRr(e,n,a,!0)}function rHa(e){return e.type===CV&&!e.hard?e.soft?"":" ":e.type===h6?e.flatContents:e}function iRr(e){return hNe(e,rHa)}function nHa(e){switch(Sce(e)){case bce:if(e.parts.every(t=>t===""))return"";break;case nH:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===nH&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Fme:case Gme:case Lme:case Vme:if(!e.contents)return"";break;case h6:if(!e.flatContents&&!e.breakContents)return"";break;case Bee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof j0(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case xme:case INe:case Zme:case Ece:case CV:case Dee:case kee:break;default:throw new Q4e(e)}return e}function RRr(e){return hNe(e,t=>nHa(t))}function Dme(e,t=_bi){return hNe(e,r=>typeof r=="string"?wC(t,r.split(` -`)):r)}function iHa(e){if(e.type===CV)return!0}function sHa(e){return fbi(e,iHa,!1)}function sRr(e,t){return e.type===Dee?{...e,contents:t(e.contents)}:t(e)}function oHa(e){let t=!0;return TRr(e,r=>{switch(Sce(r)){case xme:if(r==="")break;case Zme:case Ece:case CV:case kee:return t=!1,!1}}),t}var NRr=()=>{},m6=NRr,Ibi=NRr,aHa=NRr;function Ol(e){return m6(e),{type:Gme,contents:e}}function C6(e,t){return m6(t),{type:Fme,contents:t,n:e}}function Ia(e,t={}){return m6(e),Ibi(t.expandedStates,!0),{type:nH,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function cHa(e){return C6(Number.NEGATIVE_INFINITY,e)}function hbi(e){return C6(-1,e)}function Nme(e,t){return Ia(e[0],{...t,expandedStates:e})}function mbi(e){return aHa(e),{type:bce,parts:e}}function Ah(e,t="",r={}){return m6(e),t!==""&&m6(t),{type:h6,breakContents:e,flatContents:t,groupId:r.groupId}}function wbt(e,t){return m6(e),{type:Lme,contents:e,groupId:t.groupId,negate:t.negate}}function Ryi(e){return m6(e),{type:Vme,contents:e}}var wee={type:Ece},_6={type:kee},Cbi={type:CV,hard:!0},lHa={type:CV,hard:!0,literal:!0},qg={type:CV},yl={type:CV,soft:!0},Gl=[Cbi,_6],_bi=[lHa,_6],ubt={type:INe};function wC(e,t){m6(e),Ibi(t);let r=[];for(let n=0;n0){for(let a=0;a1&&t.every(r=>r.trimStart()[0]==="*")}var AHa=gHa;function dHa(e,t){let r=e.node;if(fNe(r))return t.originalText.slice(OS(r),TC(r)).trimEnd();if(sH(r))return AHa(r)?pHa(r):["/*",Dme(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function pHa(e){let t=e.value.split(` -`);return["/*",wC(Gl,t.map((r,n)=>n===0?r.trimEnd():" "+(nyHa,ownLine:()=>_Ha,remaining:()=>bHa});function fHa(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function DRr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=fHa(e)}function Yk(e,t){t.leading=!0,t.trailing=!1,DRr(e,t)}function iH(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),DRr(e,t)}function G2(e,t){t.leading=!1,t.trailing=!0,DRr(e,t)}function IHa(e,t){let r=null,n=t;for(;n!==r;)r=n,n=uNe(e,n),n=mRr(e,n),n=CRr(e,n),n=gNe(e,n);return n}var mNe=IHa;function hHa(e,t){let r=mNe(e,t);return r===!1?"":e.charAt(r)}var A4=hHa;function mHa(e,t,r){for(let n=t;nt(e))}function yHa(e){return[EHa,wbi,Sbi,Rbi,kRr,xRr,Ebi,vbi,Tbi,GHa,ZHa,FRr,PHa,GRr,YHa,QHa,JHa].some(t=>t(e))}function bHa(e){return[Nbi,kRr,xRr,BHa,kHa,Bbi,FRr,DHa,NHa,HHa,GRr,MHa].some(t=>t(e))}function Wme(e,t){let r=(e.body||e.properties).find(({type:n})=>n!=="EmptyStatement");r?Yk(r,t):iH(e,t)}function oRr(e,t){e.type==="BlockStatement"?Wme(e,t):Yk(e,t)}function EHa({comment:e,followingNode:t}){return t&&bbi(e)?(Yk(t,e),!0):!1}function kRr({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){if(r?.type!=="IfStatement"||!n)return!1;if(A4(a,TC(e))===")")return G2(t,e),!0;if(t===r.consequent&&n===r.alternate){let o=mNe(a,TC(r.consequent));if(OS(e)"?(iH(t,e),!0):!1}function kHa({comment:e,enclosingNode:t,text:r}){return A4(r,TC(e))!==")"?!1:t&&(Dbi(t)&&FG(t).length===0||dNe(t)&&oH(t).length===0)?(iH(t,e),!0):(t?.type==="MethodDefinition"||t?.type==="TSAbstractMethodDefinition")&&FG(t.value).length===0?(iH(t.value,e),!0):!1}function xHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="ComponentTypeParameter"&&(r?.type==="DeclareComponent"||r?.type==="ComponentTypeAnnotation")&&n?.type!=="ComponentTypeParameter"||(t?.type==="ComponentParameter"||t?.type==="RestElement")&&r?.type==="ComponentDeclaration"&&A4(a,TC(e))===")"?(G2(t,e),!0):!1}function wbi({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="FunctionTypeParam"&&r?.type==="FunctionTypeAnnotation"&&n?.type!=="FunctionTypeParam"||(t?.type==="Identifier"||t?.type==="AssignmentPattern"||t?.type==="ObjectPattern"||t?.type==="ArrayPattern"||t?.type==="RestElement"||t?.type==="TSParameterProperty")&&Dbi(r)&&A4(a,TC(e))===")"?(G2(t,e),!0):!sH(e)&&(r?.type==="FunctionDeclaration"||r?.type==="FunctionExpression"||r?.type==="ObjectMethod")&&n?.type==="BlockStatement"&&r.body===n&&mNe(a,TC(e))===OS(n)?(Wme(n,e),!0):!1}function Tbi({comment:e,enclosingNode:t}){return t?.type==="LabeledStatement"?(Yk(t,e),!0):!1}function GRr({comment:e,enclosingNode:t}){return(t?.type==="ContinueStatement"||t?.type==="BreakStatement")&&!t.label?(G2(t,e),!0):!1}function GHa({comment:e,precedingNode:t,enclosingNode:r}){return S_(r)&&t&&r.callee===t&&r.arguments.length>0?(Yk(r.arguments[0],e),!0):!1}function FHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return Cce(r)?(mbt(e)&&(n.prettierIgnore=!0,e.unignore=!0),t?(G2(t,e),!0):!1):(Cce(n)&&mbt(e)&&(n.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function ZHa({comment:e,enclosingNode:t}){return Nee(t)?(Yk(t,e),!0):!1}function FRr({comment:e,enclosingNode:t,ast:r,isLastComment:n}){var a;return((a=r?.body)==null?void 0:a.length)===0?(n?iH(r,e):Yk(r,e),!0):t?.type==="Program"&&t.body.length===0&&!Q_(t.directives)?(n?iH(t,e):Yk(t,e),!0):!1}function LHa({comment:e,enclosingNode:t}){return t?.type==="ForInStatement"||t?.type==="ForOfStatement"?(Yk(t,e),!0):!1}function Rbi({comment:e,precedingNode:t,enclosingNode:r,text:n}){if(r?.type==="ImportSpecifier"||r?.type==="ExportSpecifier")return Yk(r,e),!0;let a=t?.type==="ImportSpecifier"&&r?.type==="ImportDeclaration",o=t?.type==="ExportSpecifier"&&r?.type==="ExportNamedDeclaration";return(a||o)&&_P(n,TC(e))?(G2(t,e),!0):!1}function VHa({comment:e,enclosingNode:t}){return t?.type==="AssignmentPattern"?(Yk(t,e),!0):!1}var WHa=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),OHa=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function PHa({comment:e,enclosingNode:t,followingNode:r}){return WHa.has(t?.type)&&r&&(OHa.has(r.type)||sH(e))?(Yk(r,e),!0):!1}function MHa({comment:e,enclosingNode:t,followingNode:r,text:n}){return!r&&(t?.type==="TSMethodSignature"||t?.type==="TSDeclareFunction"||t?.type==="TSAbstractMethodDefinition")&&A4(n,TC(e))===";"?(G2(t,e),!0):!1}function Nbi({comment:e,enclosingNode:t,followingNode:r}){if(mbt(e)&&t?.type==="TSMappedType"&&r?.type==="TSTypeParameter"&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function HHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return r?.type!=="TSMappedType"?!1:n?.type==="TSTypeParameter"&&n.name?(Yk(n.name,e),!0):t?.type==="TSTypeParameter"&&t.constraint?(G2(t.constraint,e),!0):!1}function YHa({comment:e,enclosingNode:t,followingNode:r}){return!t||t.type!=="SwitchCase"||t.test||!r||r!==t.consequent[0]?!1:(r.type==="BlockStatement"&&fNe(e)?Wme(r,e):iH(t,e),!0)}function QHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return Cce(t)&&((r.type==="TSArrayType"||r.type==="ArrayTypeAnnotation")&&!n||wRr(r))?(G2(j0(!1,t.types,-1),e),!0):!1}function XHa({comment:e,enclosingNode:t,precedingNode:r,followingNode:n}){if((t?.type==="ObjectPattern"||t?.type==="ArrayPattern")&&n?.type==="TSTypeAnnotation")return r?G2(r,e):iH(t,e),!0}function JHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){var a;if(!n&&r?.type==="UnaryExpression"&&(t?.type==="LogicalExpression"||t?.type==="BinaryExpression")){let o=((a=r.argument.loc)==null?void 0:a.start.line)!==t.right.loc.start.line,l=fNe(e)||e.loc.start.line===e.loc.end.line,A=e.loc.start.line===t.right.loc.start.line;if(o&&l&&A)return G2(t.right,e),!0}return!1}var Dbi=b0(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),UHa=new Set(["EmptyStatement","TemplateElement","TSEmptyBodyFunctionExpression","ChainExpression"]);function KHa(e){return!UHa.has(e.type)}function jHa(e,t){var r;if((t.parser==="typescript"||t.parser==="flow"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree")&&e.type==="MethodDefinition"&&((r=e.value)==null?void 0:r.type)==="FunctionExpression"&&FG(e.value).length===0&&!e.value.returnType&&!Q_(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function kbi(e){let{node:t,parent:r}=e;return(cD(t)||r&&(r.type==="JSXSpreadAttribute"||r.type==="JSXSpreadChild"||Cce(r)||(r.type==="ClassDeclaration"||r.type==="ClassExpression")&&r.superClass===t))&&(!Bbt(t)||Cce(r))}function zHa(e,{parser:t}){if(t==="flow"||t==="babel-flow")return e=Pk(!1,e,/[\s(]/gu,""),e===""||e==="/*"||e==="/*::"}function qHa(e){switch(e){case"cr":return"\r";case"crlf":return`\r +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var lNe=uMa;function gMa(e,t,r={}){let n=cNe(e,r.backwards?t-1:t,r),a=lNe(e,n,r);return n!==a}var bP=gMa;function AMa(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r0}var X_=fMa,cbi=new Proxy(()=>{},{get:()=>cbi}),ERr=cbi,obt="'",xyi='"';function IMa(e,t){let r=t===!0||t===obt?obt:xyi,n=r===obt?xyi:obt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var lbi=IMa;function hMa(e,t,r){let n=t==='"'?"'":'"',a=Mk(!1,e,/\\(.)|(["'])/gsu,(o,l,A)=>l===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var mMa=hMa;function CMa(e,t){ERr.ok(/^(?["']).*\k$/su.test(e));let r=e.slice(1,-1),n=t.parser==="json"||t.parser==="jsonc"||t.parser==="json5"&&t.quoteProps==="preserve"&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":lbi(r,t.singleQuote);return e.charAt(0)===n?e:mMa(r,n,!1)}var uNe=CMa;function PS(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(PS(o),a):a}function RC(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function ybt(e,t){let r=PS(e);return Number.isInteger(r)&&r===PS(t)}function _Ma(e,t){let r=RC(e);return Number.isInteger(r)&&r===RC(t)}function yMa(e,t){return ybt(e,t)&&_Ma(e,t)}var O4e=null;function H4e(e){if(O4e!==null&&typeof O4e.property){let t=O4e;return O4e=H4e.prototype=null,t}return O4e=H4e.prototype=e??Object.create(null),new H4e}var bMa=10;for(let e=0;e<=bMa;e++)H4e();function EMa(e){return H4e(e)}function SMa(e,t="type"){EMa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var ubi=SMa,vMa={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},BMa=ubi(vMa),gbi=BMa;function wMa(e){let t=new Set(e);return r=>t.has(r?.type)}var E0=wMa,TMa=E0(["Block","CommentBlock","MultiLine"]),oH=TMa,RMa=E0(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),Abi=RMa;function NMa(e,t){let r=t.split(".");for(let n=r.length-1;n>=0;n--){let a=r[n];if(n===0)return e.type==="Identifier"&&e.name===a;if(e.type!=="MemberExpression"||e.optional||e.computed||e.property.type!=="Identifier"||e.property.name!==a)return!1;e=e.object}}function DMa(e,t){return t.some(r=>NMa(e,r))}var kMa=DMa;function xMa({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}var dbi=xMa;function iRr(e,t){return t(e)||tMa(e,{getVisitorKeys:gbi,predicate:t})}function SRr(e){return e.type==="AssignmentExpression"||e.type==="BinaryExpression"||e.type==="LogicalExpression"||e.type==="NGPipeExpression"||e.type==="ConditionalExpression"||v_(e)||Kv(e)||e.type==="SequenceExpression"||e.type==="TaggedTemplateExpression"||e.type==="BindExpression"||e.type==="UpdateExpression"&&!e.prefix||h6(e)||e.type==="TSNonNullExpression"||e.type==="ChainExpression"}function GMa(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function pbi(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}var dNe=E0(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),FMa=E0(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),Yk=E0(["ArrayExpression","TupleExpression"]),A4=E0(["ObjectExpression","RecordExpression"]);function ZMa(e){return e.type==="LogicalExpression"&&e.operator==="??"}function vee(e){return e.type==="NumericLiteral"||e.type==="Literal"&&typeof e.value=="number"}function fbi(e){return e.type==="UnaryExpression"&&(e.operator==="+"||e.operator==="-")&&vee(e.argument)}function mV(e){return!!(e&&(e.type==="StringLiteral"||e.type==="Literal"&&typeof e.value=="string"))}function Ibi(e){return e.type==="RegExpLiteral"||e.type==="Literal"&&!!e.regex}var vRr=E0(["Literal","BooleanLiteral","BigIntLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),LMa=E0(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier"]),mce=E0(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),X4e=E0(["FunctionExpression","ArrowFunctionExpression"]);function VMa(e){return e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&e.body.type==="BlockStatement"}function JTr(e){return v_(e)&&e.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}var lD=E0(["JSXElement","JSXFragment"]);function bbt(e){return e.method&&e.kind==="init"||e.kind==="get"||e.kind==="set"}function hbi(e){return(e.type==="ObjectTypeProperty"||e.type==="ObjectTypeInternalSlot")&&!e.static&&!e.method&&e.kind!=="get"&&e.kind!=="set"&&e.value.type==="FunctionTypeAnnotation"}function WMa(e){return(e.type==="TypeAnnotation"||e.type==="TSTypeAnnotation")&&e.typeAnnotation.type==="FunctionTypeAnnotation"&&!e.static&&!ybt(e,e.typeAnnotation)}var Bee=E0(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function iNe(e){return Kv(e)||e.type==="BindExpression"&&!!e.object}var OMa=E0(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]);function BRr(e){return dbi(e)||Abi(e)||OMa(e)||(e.type==="GenericTypeAnnotation"||e.type==="TSTypeReference")&&!e.typeParameters&&!e.typeArguments}function PMa(e){return e.type==="Identifier"&&(e.name==="beforeEach"||e.name==="beforeAll"||e.name==="afterEach"||e.name==="afterAll")}var MMa=["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 HMa(e){return kMa(e,MMa)}function Ebt(e,t){if(e?.type!=="CallExpression"||e.optional)return!1;let r=aH(e);if(r.length===1){if(JTr(e)&&Ebt(t))return X4e(r[0]);if(PMa(e.callee))return JTr(r[0])}else if((r.length===2||r.length===3)&&(r[0].type==="TemplateLiteral"||mV(r[0]))&&HMa(e.callee))return r[2]&&!vee(r[2])?!1:(r.length===2?X4e(r[1]):VMa(r[1])&&ZG(r[1]).length<=1)||JTr(r[1]);return!1}var mbi=e=>t=>(t?.type==="ChainExpression"&&(t=t.expression),e(t)),v_=mbi(E0(["CallExpression","OptionalCallExpression"])),Kv=mbi(E0(["MemberExpression","OptionalMemberExpression"]));function Gyi(e,t=5){return Cbi(e,t)<=t}function Cbi(e,t){let r=0;for(let n in e){let a=e[n];if(a&&typeof a=="object"&&typeof a.type=="string"&&(r++,r+=Cbi(a,t-r)),r>t)return r}return r}var YMa=.25;function wRr(e,t){let{printWidth:r}=t;if(sg(e))return!1;let n=r*YMa;if(e.type==="ThisExpression"||e.type==="Identifier"&&e.name.length<=n||fbi(e)&&!sg(e.argument))return!0;let a=e.type==="Literal"&&"regex"in e&&e.regex.pattern||e.type==="RegExpLiteral"&&e.pattern;return a?a.length<=n:mV(e)?uNe(nH(e),t).length<=n:e.type==="TemplateLiteral"?e.expressions.length===0&&e.quasis[0].value.raw.length<=n&&!e.quasis[0].value.raw.includes(` +`):e.type==="UnaryExpression"?wRr(e.argument,{printWidth:r}):e.type==="CallExpression"&&e.arguments.length===0&&e.callee.type==="Identifier"?e.callee.name.length<=n-2:vRr(e)}function Cce(e,t){return lD(t)?Sbt(t):sg(t,hA.Leading,r=>bP(e,RC(r)))}function Fyi(e){return e.quasis.some(t=>t.value.raw.includes(` +`))}function _bi(e,t){return(e.type==="TemplateLiteral"&&Fyi(e)||e.type==="TaggedTemplateExpression"&&Fyi(e.quasi))&&!bP(t,PS(e),{backwards:!0})}function ybi(e){if(!sg(e))return!1;let t=z0(!1,oNe(e,hA.Dangling),-1);return t&&!oH(t)}function QMa(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(X4e(r)){if(t+=1,t>1)return!0}else if(v_(r)){for(let n of aH(r))if(X4e(n))return!0}return!1}function bbi(e){let{node:t,parent:r,key:n}=e;return n==="callee"&&v_(t)&&v_(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}var XMa=new Set(["!","-","+","~"]);function u4(e,t=2){if(t<=0)return!1;if(e.type==="ChainExpression"||e.type==="TSNonNullExpression")return u4(e.expression,t);let r=n=>u4(n,t-1);if(Ibi(e))return aNe(e.pattern??e.regex.pattern)<=5;if(vRr(e)||LMa(e)||e.type==="ArgumentPlaceholder")return!0;if(e.type==="TemplateLiteral")return e.quasis.every(n=>!n.value.raw.includes(` +`))&&e.expressions.every(r);if(A4(e))return e.properties.every(n=>!n.computed&&(n.shorthand||n.value&&r(n.value)));if(Yk(e))return e.elements.every(n=>n===null||r(n));if(gNe(e)){if(e.type==="ImportExpression"||u4(e.callee,t)){let n=aH(e);return n.length<=t&&n.every(r)}return!1}return Kv(e)?u4(e.object,t)&&u4(e.property,t):e.type==="UnaryExpression"&&XMa.has(e.operator)||e.type==="UpdateExpression"?u4(e.argument,t):!1}function nH(e){var t;return((t=e.extra)==null?void 0:t.raw)??e.raw}function JMa(e){return e}function Ree(e,t="es5"){return e.trailingComma==="es5"&&t==="es5"||e.trailingComma==="all"&&(t==="all"||t==="es5")}function eL(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return eL(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return eL(e.object,t);case"TaggedTemplateExpression":return e.tag.type==="FunctionExpression"?!1:eL(e.tag,t);case"CallExpression":case"OptionalCallExpression":return e.callee.type==="FunctionExpression"?!1:eL(e.callee,t);case"ConditionalExpression":return eL(e.test,t);case"UpdateExpression":return!e.prefix&&eL(e.argument,t);case"BindExpression":return e.object&&eL(e.object,t);case"SequenceExpression":return eL(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return eL(e.expression,t);default:return t(e)}}var Zyi={"==":!0,"!=":!0,"===":!0,"!==":!0},abt={"*":!0,"/":!0,"%":!0},sRr={">>":!0,">>>":!0,"<<":!0};function TRr(e,t){return!(pbt(t)!==pbt(e)||e==="**"||Zyi[e]&&Zyi[t]||t==="%"&&abt[e]||e==="%"&&abt[t]||t!==e&&abt[t]&&abt[e]||sRr[e]&&sRr[t])}var UMa=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((e,t)=>e.map(r=>[r,t])));function pbt(e){return UMa.get(e)}function KMa(e){return!!sRr[e]||e==="|"||e==="^"||e==="&"}function jMa(e){var t;if(e.rest)return!0;let r=ZG(e);return((t=z0(!1,r,-1))==null?void 0:t.type)==="RestElement"}var UTr=new WeakMap;function ZG(e){if(UTr.has(e))return UTr.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),UTr.set(e,t),t}function zMa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);r.this&&e.call(a,"this"),Array.isArray(r.parameters)?e.each(a,"parameters"):Array.isArray(r.params)&&e.each(a,"params"),r.rest&&e.call(a,"rest")}var KTr=new WeakMap;function aH(e){if(KTr.has(e))return KTr.get(e);if(e.type==="ChainExpression")return aH(e.expression);let t=e.arguments;return e.type==="ImportExpression"&&(t=[e.source],e.options&&t.push(e.options)),KTr.set(e,t),t}function fbt(e,t){let{node:r}=e;if(r.type==="ChainExpression")return e.call(()=>fbt(e,t),"expression");r.type==="ImportExpression"?(e.call(n=>t(n,0),"source"),r.options&&e.call(n=>t(n,1),"options")):e.each(t,"arguments")}function Lyi(e,t){let r=[];if(e.type==="ChainExpression"&&(e=e.expression,r.push("expression")),e.type==="ImportExpression"){if(t===0||t===(e.options?-2:-1))return[...r,"source"];if(e.options&&(t===1||t===-1))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function Ibt(e){return e.value.trim()==="prettier-ignore"&&!e.unignore}function Sbt(e){return e?.prettierIgnore||sg(e,hA.PrettierIgnore)}var hA={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},Ebi=(e,t)=>{if(typeof e=="function"&&(t=e,e=0),e||t)return(r,n,a)=>!(e&hA.Leading&&!r.leading||e&hA.Trailing&&!r.trailing||e&hA.Dangling&&(r.leading||r.trailing)||e&hA.Block&&!oH(r)||e&hA.Line&&!dNe(r)||e&hA.First&&n!==0||e&hA.Last&&n!==a.length-1||e&hA.PrettierIgnore&&!Ibt(r)||t&&!t(r))};function sg(e,t,r){if(!X_(e?.comments))return!1;let n=Ebi(t,r);return n?e.comments.some(n):!0}function oNe(e,t,r){if(!Array.isArray(e?.comments))return[];let n=Ebi(t,r);return n?e.comments.filter(n):e.comments}var Nee=(e,{originalText:t})=>bRr(t,RC(e));function gNe(e){return v_(e)||e.type==="NewExpression"||e.type==="ImportExpression"}function Dee(e){return e&&(e.type==="ObjectProperty"||e.type==="Property"&&!bbt(e))}var h6=E0(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),_ce=E0(["TSUnionType","UnionTypeAnnotation"]),RRr=E0(["TSIntersectionType","IntersectionTypeAnnotation"]),yce=E0(["TSConditionalType","ConditionalTypeAnnotation"]),qMa=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),nNe=e=>{for(let t of e.quasis)delete t.value};function Sbi(e,t,r){var n,a;if(e.type==="Program"&&delete t.sourceType,(e.type==="BigIntLiteral"||e.type==="BigIntLiteralTypeAnnotation")&&e.value&&(t.value=e.value.toLowerCase()),(e.type==="BigIntLiteral"||e.type==="Literal")&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),e.type==="EmptyStatement"||e.type==="JSXText"||e.type==="JSXExpressionContainer"&&(e.expression.type==="Literal"||e.expression.type==="StringLiteral")&&e.expression.value===" ")return null;if((e.type==="Property"||e.type==="ObjectProperty"||e.type==="MethodDefinition"||e.type==="ClassProperty"||e.type==="ClassMethod"||e.type==="PropertyDefinition"||e.type==="TSDeclareMethod"||e.type==="TSPropertySignature"||e.type==="ObjectTypeProperty"||e.type==="ImportAttribute")&&e.key&&!e.computed){let{key:l}=e;mV(l)||vee(l)?t.key=String(l.value):l.type==="Identifier"&&(t.key=l.name)}if(e.type==="JSXElement"&&e.openingElement.name.name==="style"&&e.openingElement.attributes.some(l=>l.type==="JSXAttribute"&&l.name.name==="jsx"))for(let{type:l,expression:A}of t.children)l==="JSXExpressionContainer"&&A.type==="TemplateLiteral"&&nNe(A);e.type==="JSXAttribute"&&e.name.name==="css"&&e.value.type==="JSXExpressionContainer"&&e.value.expression.type==="TemplateLiteral"&&nNe(t.value.expression),e.type==="JSXAttribute"&&((n=e.value)==null?void 0:n.type)==="Literal"&&/["']|"|'/u.test(e.value.value)&&(t.value.value=Mk(!1,e.value.value,/["']|"|'/gu,'"'));let o=e.expression||e.callee;if(e.type==="Decorator"&&o.type==="CallExpression"&&o.callee.name==="Component"&&o.arguments.length===1){let l=e.expression.arguments[0].properties;for(let[A,f]of t.expression.arguments[0].properties.entries())switch(l[A].key.name){case"styles":Yk(f.value)&&nNe(f.value.elements[0]);break;case"template":f.value.type==="TemplateLiteral"&&nNe(f.value);break}}e.type==="TaggedTemplateExpression"&&(e.tag.type==="MemberExpression"||e.tag.type==="Identifier"&&(e.tag.name==="gql"||e.tag.name==="graphql"||e.tag.name==="css"||e.tag.name==="md"||e.tag.name==="markdown"||e.tag.name==="html")||e.tag.type==="CallExpression")&&nNe(t.quasi),e.type==="TemplateLiteral"&&((a=e.leadingComments)!=null&&a.some(l=>oH(l)&&["GraphQL","HTML"].some(A=>l.value===` ${A} `))||r.type==="CallExpression"&&r.callee.name==="graphql"||!e.leadingComments)&&nNe(t),e.type==="ChainExpression"&&e.expression.type==="TSNonNullExpression"&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),e.type==="TSMappedType"&&(delete t.key,delete t.constraint),e.type==="TSEnumDeclaration"&&delete t.body}Sbi.ignoredProperties=qMa;var $Ma=Sbi,Gme="string",wee="array",pNe="cursor",Fme="indent",Zme="align",Lme="trim",iH="group",Ece="fill",m6="if-break",Vme="indent-if-break",Wme="line-suffix",Sce="line-suffix-boundary",_V="line",kee="label",xee="break-parent",vbi=new Set([pNe,Fme,Zme,Lme,iH,Ece,m6,Vme,Wme,Sce,_V,kee,xee]);function eHa(e){if(typeof e=="string")return Gme;if(Array.isArray(e))return wee;if(!e)return;let{type:t}=e;if(vbi.has(t))return t}var vce=eHa,tHa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function rHa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(vce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=tHa([...vbi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var nHa=class extends Error{name="InvalidDocError";constructor(e){super(rHa(e)),this.doc=e}},J4e=nHa,Vyi={};function iHa(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===Vyi){r(a.pop());continue}r&&a.push(o,Vyi);let l=vce(o);if(!l)throw new J4e(o);if(t?.(o)!==!1)switch(l){case wee:case Ece:{let A=l===wee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case m6:a.push(o.flatContents,o.breakContents);break;case iH:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Zme:case Fme:case Vme:case kee:case Wme:a.push(o.contents);break;case Gme:case pNe:case Lme:case Sce:case _V:case xee:break;default:throw new J4e(o)}}}var NRr=iHa;function fNe(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(vce(o)){case wee:return t(o.map(n));case Ece:return t({...o,parts:o.parts.map(n)});case m6:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case iH:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case Zme:case Fme:case Vme:case kee:case Wme:return t({...o,contents:n(o.contents)});case Gme:case pNe:case Lme:case Sce:case _V:case xee:return t(o);default:throw new J4e(o)}}}function Bbi(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return NRr(e,o),n}function sHa(e){if(e.type===iH&&e.break||e.type===_V&&e.hard||e.type===xee)return!0}function tL(e){return Bbi(e,sHa,!1)}function Wyi(e){if(e.length>0){let t=z0(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function oHa(e){let t=new Set,r=[];function n(o){if(o.type===xee&&Wyi(r),o.type===iH){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===iH&&r.pop().break&&Wyi(r)}NRr(e,n,a,!0)}function aHa(e){return e.type===_V&&!e.hard?e.soft?"":" ":e.type===m6?e.flatContents:e}function oRr(e){return fNe(e,aHa)}function cHa(e){switch(vce(e)){case Ece:if(e.parts.every(t=>t===""))return"";break;case iH:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===iH&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Zme:case Fme:case Vme:case Wme:if(!e.contents)return"";break;case m6:if(!e.flatContents&&!e.breakContents)return"";break;case wee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof z0(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case Gme:case pNe:case Lme:case Sce:case _V:case kee:case xee:break;default:throw new J4e(e)}return e}function DRr(e){return fNe(e,t=>cHa(t))}function kme(e,t=Dbi){return fNe(e,r=>typeof r=="string"?TC(t,r.split(` +`)):r)}function lHa(e){if(e.type===_V)return!0}function uHa(e){return Bbi(e,lHa,!1)}function aRr(e,t){return e.type===kee?{...e,contents:t(e.contents)}:t(e)}function gHa(e){let t=!0;return NRr(e,r=>{switch(vce(r)){case Gme:if(r==="")break;case Lme:case Sce:case _V:case xee:return t=!1,!1}}),t}var kRr=()=>{},C6=kRr,wbi=kRr,AHa=kRr;function Ol(e){return C6(e),{type:Fme,contents:e}}function _6(e,t){return C6(t),{type:Zme,contents:t,n:e}}function Ia(e,t={}){return C6(e),wbi(t.expandedStates,!0),{type:iH,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function dHa(e){return _6(Number.NEGATIVE_INFINITY,e)}function Tbi(e){return _6(-1,e)}function Dme(e,t){return Ia(e[0],{...t,expandedStates:e})}function Rbi(e){return AHa(e),{type:Ece,parts:e}}function Ah(e,t="",r={}){return C6(e),t!==""&&C6(t),{type:m6,breakContents:e,flatContents:t,groupId:r.groupId}}function vbt(e,t){return C6(e),{type:Vme,contents:e,groupId:t.groupId,negate:t.negate}}function Oyi(e){return C6(e),{type:Wme,contents:e}}var Tee={type:Sce},y6={type:xee},Nbi={type:_V,hard:!0},pHa={type:_V,hard:!0,literal:!0},qg={type:_V},yl={type:_V,soft:!0},Gl=[Nbi,y6],Dbi=[pHa,y6],cbt={type:pNe};function TC(e,t){C6(e),wbi(t);let r=[];for(let n=0;n0){for(let a=0;a1&&t.every(r=>r.trimStart()[0]==="*")}var hHa=IHa;function mHa(e,t){let r=e.node;if(dNe(r))return t.originalText.slice(PS(r),RC(r)).trimEnd();if(oH(r))return hHa(r)?CHa(r):["/*",kme(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function CHa(e){let t=e.value.split(` +`);return["/*",TC(Gl,t.map((r,n)=>n===0?r.trimEnd():" "+(nBHa,ownLine:()=>vHa,remaining:()=>wHa});function _Ha(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function xRr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=_Ha(e)}function Qk(e,t){t.leading=!0,t.trailing=!1,xRr(e,t)}function sH(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),xRr(e,t)}function F2(e,t){t.leading=!1,t.trailing=!0,xRr(e,t)}function yHa(e,t){let r=null,n=t;for(;n!==r;)r=n,n=cNe(e,n),n=_Rr(e,n),n=yRr(e,n),n=lNe(e,n);return n}var INe=yHa;function bHa(e,t){let r=INe(e,t);return r===!1?"":e.charAt(r)}var d4=bHa;function EHa(e,t,r){for(let n=t;nt(e))}function BHa(e){return[THa,Vbi,Fbi,Obi,GRr,FRr,Gbi,Zbi,Wbi,WHa,PHa,LRr,XHa,ZRr,KHa,jHa,qHa].some(t=>t(e))}function wHa(e){return[Pbi,GRr,FRr,DHa,LHa,Lbi,LRr,ZHa,FHa,UHa,ZRr,JHa].some(t=>t(e))}function Ome(e,t){let r=(e.body||e.properties).find(({type:n})=>n!=="EmptyStatement");r?Qk(r,t):sH(e,t)}function cRr(e,t){e.type==="BlockStatement"?Ome(e,t):Qk(e,t)}function THa({comment:e,followingNode:t}){return t&&xbi(e)?(Qk(t,e),!0):!1}function GRr({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){if(r?.type!=="IfStatement"||!n)return!1;if(d4(a,RC(e))===")")return F2(t,e),!0;if(t===r.consequent&&n===r.alternate){let o=INe(a,RC(r.consequent));if(PS(e)"?(sH(t,e),!0):!1}function LHa({comment:e,enclosingNode:t,text:r}){return d4(r,RC(e))!==")"?!1:t&&(Mbi(t)&&ZG(t).length===0||gNe(t)&&aH(t).length===0)?(sH(t,e),!0):(t?.type==="MethodDefinition"||t?.type==="TSAbstractMethodDefinition")&&ZG(t.value).length===0?(sH(t.value,e),!0):!1}function VHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="ComponentTypeParameter"&&(r?.type==="DeclareComponent"||r?.type==="ComponentTypeAnnotation")&&n?.type!=="ComponentTypeParameter"||(t?.type==="ComponentParameter"||t?.type==="RestElement")&&r?.type==="ComponentDeclaration"&&d4(a,RC(e))===")"?(F2(t,e),!0):!1}function Vbi({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="FunctionTypeParam"&&r?.type==="FunctionTypeAnnotation"&&n?.type!=="FunctionTypeParam"||(t?.type==="Identifier"||t?.type==="AssignmentPattern"||t?.type==="ObjectPattern"||t?.type==="ArrayPattern"||t?.type==="RestElement"||t?.type==="TSParameterProperty")&&Mbi(r)&&d4(a,RC(e))===")"?(F2(t,e),!0):!oH(e)&&(r?.type==="FunctionDeclaration"||r?.type==="FunctionExpression"||r?.type==="ObjectMethod")&&n?.type==="BlockStatement"&&r.body===n&&INe(a,RC(e))===PS(n)?(Ome(n,e),!0):!1}function Wbi({comment:e,enclosingNode:t}){return t?.type==="LabeledStatement"?(Qk(t,e),!0):!1}function ZRr({comment:e,enclosingNode:t}){return(t?.type==="ContinueStatement"||t?.type==="BreakStatement")&&!t.label?(F2(t,e),!0):!1}function WHa({comment:e,precedingNode:t,enclosingNode:r}){return v_(r)&&t&&r.callee===t&&r.arguments.length>0?(Qk(r.arguments[0],e),!0):!1}function OHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return _ce(r)?(Ibt(e)&&(n.prettierIgnore=!0,e.unignore=!0),t?(F2(t,e),!0):!1):(_ce(n)&&Ibt(e)&&(n.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function PHa({comment:e,enclosingNode:t}){return Dee(t)?(Qk(t,e),!0):!1}function LRr({comment:e,enclosingNode:t,ast:r,isLastComment:n}){var a;return((a=r?.body)==null?void 0:a.length)===0?(n?sH(r,e):Qk(r,e),!0):t?.type==="Program"&&t.body.length===0&&!X_(t.directives)?(n?sH(t,e):Qk(t,e),!0):!1}function MHa({comment:e,enclosingNode:t}){return t?.type==="ForInStatement"||t?.type==="ForOfStatement"?(Qk(t,e),!0):!1}function Obi({comment:e,precedingNode:t,enclosingNode:r,text:n}){if(r?.type==="ImportSpecifier"||r?.type==="ExportSpecifier")return Qk(r,e),!0;let a=t?.type==="ImportSpecifier"&&r?.type==="ImportDeclaration",o=t?.type==="ExportSpecifier"&&r?.type==="ExportNamedDeclaration";return(a||o)&&bP(n,RC(e))?(F2(t,e),!0):!1}function HHa({comment:e,enclosingNode:t}){return t?.type==="AssignmentPattern"?(Qk(t,e),!0):!1}var YHa=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),QHa=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function XHa({comment:e,enclosingNode:t,followingNode:r}){return YHa.has(t?.type)&&r&&(QHa.has(r.type)||oH(e))?(Qk(r,e),!0):!1}function JHa({comment:e,enclosingNode:t,followingNode:r,text:n}){return!r&&(t?.type==="TSMethodSignature"||t?.type==="TSDeclareFunction"||t?.type==="TSAbstractMethodDefinition")&&d4(n,RC(e))===";"?(F2(t,e),!0):!1}function Pbi({comment:e,enclosingNode:t,followingNode:r}){if(Ibt(e)&&t?.type==="TSMappedType"&&r?.type==="TSTypeParameter"&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function UHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return r?.type!=="TSMappedType"?!1:n?.type==="TSTypeParameter"&&n.name?(Qk(n.name,e),!0):t?.type==="TSTypeParameter"&&t.constraint?(F2(t.constraint,e),!0):!1}function KHa({comment:e,enclosingNode:t,followingNode:r}){return!t||t.type!=="SwitchCase"||t.test||!r||r!==t.consequent[0]?!1:(r.type==="BlockStatement"&&dNe(e)?Ome(r,e):sH(t,e),!0)}function jHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return _ce(t)&&((r.type==="TSArrayType"||r.type==="ArrayTypeAnnotation")&&!n||RRr(r))?(F2(z0(!1,t.types,-1),e),!0):!1}function zHa({comment:e,enclosingNode:t,precedingNode:r,followingNode:n}){if((t?.type==="ObjectPattern"||t?.type==="ArrayPattern")&&n?.type==="TSTypeAnnotation")return r?F2(r,e):sH(t,e),!0}function qHa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){var a;if(!n&&r?.type==="UnaryExpression"&&(t?.type==="LogicalExpression"||t?.type==="BinaryExpression")){let o=((a=r.argument.loc)==null?void 0:a.start.line)!==t.right.loc.start.line,l=dNe(e)||e.loc.start.line===e.loc.end.line,A=e.loc.start.line===t.right.loc.start.line;if(o&&l&&A)return F2(t.right,e),!0}return!1}var Mbi=E0(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),$Ha=new Set(["EmptyStatement","TemplateElement","TSEmptyBodyFunctionExpression","ChainExpression"]);function eYa(e){return!$Ha.has(e.type)}function tYa(e,t){var r;if((t.parser==="typescript"||t.parser==="flow"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree")&&e.type==="MethodDefinition"&&((r=e.value)==null?void 0:r.type)==="FunctionExpression"&&ZG(e.value).length===0&&!e.value.returnType&&!X_(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function Hbi(e){let{node:t,parent:r}=e;return(lD(t)||r&&(r.type==="JSXSpreadAttribute"||r.type==="JSXSpreadChild"||_ce(r)||(r.type==="ClassDeclaration"||r.type==="ClassExpression")&&r.superClass===t))&&(!Sbt(t)||_ce(r))}function rYa(e,{parser:t}){if(t==="flow"||t==="babel-flow")return e=Mk(!1,e,/[\s(]/gu,""),e===""||e==="/*"||e==="/*::"}function nYa(e){switch(e){case"cr":return"\r";case"crlf":return`\r `;default:return` -`}}var IV=Symbol("MODE_BREAK"),f6=Symbol("MODE_FLAT"),aNe=Symbol("cursor"),aRr=Symbol("DOC_FILL_PRINTED_LENGTH");function xbi(){return{value:"",length:0,queue:[]}}function $Ha(e,t){return cRr(e,{type:"indent"},t)}function eYa(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||xbi():t<0?cRr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:cRr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function cRr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function lRr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===aNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(aNe);return t}function gbt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=Sce(C);switch(b){case xme:f.push(C),r-=lNe(C);break;case Bee:case bce:{let E=b===Bee?C:C.parts,N=C[aRr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case Gme:case Fme:case Lme:case Dee:A.push({mode:I,doc:C.contents});break;case Zme:r+=lRr(f);break;case nH:{if(o&&C.break)return!1;let E=C.break?IV:I,N=C.expandedStates&&E===IV?j0(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case h6:{let E=(C.groupId?a[C.groupId]||f6:I)===IV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case CV:if(I===IV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case Vme:n=!0;break;case Ece:if(n)return!1;break}}return!1}function Gbi(e,t){let r={},n=t.printWidth,a=qHa(t.endOfLine),o=0,l=[{ind:xbi(),mode:IV,doc:e}],A=[],f=!1,I=[],C=0;for(tHa(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(Sce(B)){case xme:{let F=a!==` -`?Pk(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=lNe(F));break}case Bee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case INe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(aNe),C++;break;case Gme:l.push({ind:$Ha(E,t),mode:N,doc:B.contents});break;case Fme:l.push({ind:eYa(E,B.n,t),mode:N,doc:B.contents});break;case Zme:o-=lRr(A);break;case nH:switch(N){case f6:if(!f){l.push({ind:E,mode:B.break?IV:f6,doc:B.contents});break}case IV:{f=!1;let F={ind:E,mode:f6,doc:B.contents},Q=n-o,J=I.length>0;if(!B.break&&gbt(F,l,Q,J,r))l.push(F);else if(B.expandedStates){let ae=j0(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:IV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:IV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:f6,doc:ce};if(gbt(fe,l,Q,J,r)){l.push(fe);break}}}else l.push({ind:E,mode:IV,doc:B.contents});break}}B.id&&(r[B.id]=j0(!1,l,-1).mode);break;case bce:{let F=n-o,Q=B[aRr]??0,{parts:J}=B,ae=J.length-Q;if(ae===0)break;let ne=J[Q+0],ce=J[Q+1],fe={ind:E,mode:f6,doc:ne},ue={ind:E,mode:IV,doc:ne},de=gbt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:f6,doc:ce},Se={ind:E,mode:IV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=J[Q+2],k={ind:E,mode:N,doc:{...B,[aRr]:Q+2}};gbt({ind:E,mode:f6,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case h6:case Lme:{let F=B.groupId?r[B.groupId]:N;if(F===IV){let Q=B.type===h6?B.breakContents:B.negate?B.contents:Ol(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===f6){let Q=B.type===h6?B.flatContents:B.negate?Ol(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case Vme:I.push({ind:E,mode:N,doc:B.contents});break;case Ece:I.length>0&&l.push({ind:E,mode:N,doc:Cbi});break;case CV:switch(N){case f6:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case IV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=lRr(A),A.push(a+E.value),o=E.length);break}break;case Dee:l.push({ind:E,mode:N,doc:B.contents});break;case kee:break;default:throw new Q4e(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(aNe);if(b!==-1){let E=A.indexOf(aNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==aNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function tYa(e,t,r=0){let n=0;for(let a=r;a{if(o.push(t()),I.tail)return;let{tabWidth:C}=r,b=I.value.raw,E=b.includes(` -`)?iYa(b,C):A;A=E;let N=l[f],B=n[a][f],F=yce(r.originalText,TC(I),OS(n.quasis[f+1]));if(!F){let J=Gbi(N,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;J.includes(` -`)?F=!0:N=J}F&&(sg(B)||B.type==="Identifier"||Uv(B)||B.type==="ConditionalExpression"||B.type==="SequenceExpression"||I6(B)||vee(B))&&(N=[Ol([yl,N]),yl]);let Q=E===0&&b.endsWith(` -`)?C6(Number.NEGATIVE_INFINITY,N):uHa(N,E,C);o.push(Ia(["${",Q,wee,"}"]))},"quasis"),o.push("`"),o}function sYa(e,t){let r=t("quasi");return U4e(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),wee,r])}function oYa(e,t,r){let{node:n}=e,a=n.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(a.length>1||a.some(o=>o.length>0)){t.__inJestEach=!0;let o=e.map(r,"expressions");t.__inJestEach=!1;let l=[],A=o.map(E=>"${"+Gbi(E,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}"),f=[{hasLineBreak:!1,cells:[]}];for(let E=1;E0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function gRr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===sNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(sNe);return t}function lbt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=vce(C);switch(b){case Gme:f.push(C),r-=aNe(C);break;case wee:case Ece:{let E=b===wee?C:C.parts,N=C[lRr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case Fme:case Zme:case Vme:case kee:A.push({mode:I,doc:C.contents});break;case Lme:r+=gRr(f);break;case iH:{if(o&&C.break)return!1;let E=C.break?hV:I,N=C.expandedStates&&E===hV?z0(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case m6:{let E=(C.groupId?a[C.groupId]||I6:I)===hV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case _V:if(I===hV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case Wme:n=!0;break;case Sce:if(n)return!1;break}}return!1}function Qbi(e,t){let r={},n=t.printWidth,a=nYa(t.endOfLine),o=0,l=[{ind:Ybi(),mode:hV,doc:e}],A=[],f=!1,I=[],C=0;for(oHa(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(vce(B)){case Gme:{let F=a!==` +`?Mk(!1,B,` +`,a):B;A.push(F),l.length>0&&(o+=aNe(F));break}case wee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case pNe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(sNe),C++;break;case Fme:l.push({ind:iYa(E,t),mode:N,doc:B.contents});break;case Zme:l.push({ind:sYa(E,B.n,t),mode:N,doc:B.contents});break;case Lme:o-=gRr(A);break;case iH:switch(N){case I6:if(!f){l.push({ind:E,mode:B.break?hV:I6,doc:B.contents});break}case hV:{f=!1;let F={ind:E,mode:I6,doc:B.contents},Q=n-o,J=I.length>0;if(!B.break&&lbt(F,l,Q,J,r))l.push(F);else if(B.expandedStates){let ae=z0(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:hV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:hV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:I6,doc:ce};if(lbt(fe,l,Q,J,r)){l.push(fe);break}}}else l.push({ind:E,mode:hV,doc:B.contents});break}}B.id&&(r[B.id]=z0(!1,l,-1).mode);break;case Ece:{let F=n-o,Q=B[lRr]??0,{parts:J}=B,ae=J.length-Q;if(ae===0)break;let ne=J[Q+0],ce=J[Q+1],fe={ind:E,mode:I6,doc:ne},ue={ind:E,mode:hV,doc:ne},de=lbt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:I6,doc:ce},Se={ind:E,mode:hV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=J[Q+2],k={ind:E,mode:N,doc:{...B,[lRr]:Q+2}};lbt({ind:E,mode:I6,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case m6:case Vme:{let F=B.groupId?r[B.groupId]:N;if(F===hV){let Q=B.type===m6?B.breakContents:B.negate?B.contents:Ol(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===I6){let Q=B.type===m6?B.flatContents:B.negate?Ol(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case Wme:I.push({ind:E,mode:N,doc:B.contents});break;case Sce:I.length>0&&l.push({ind:E,mode:N,doc:Nbi});break;case _V:switch(N){case I6:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case hV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=gRr(A),A.push(a+E.value),o=E.length);break}break;case kee:l.push({ind:E,mode:N,doc:B.contents});break;case xee:break;default:throw new J4e(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(sNe);if(b!==-1){let E=A.indexOf(sNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==sNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function oYa(e,t,r=0){let n=0;for(let a=r;a{if(o.push(t()),I.tail)return;let{tabWidth:C}=r,b=I.value.raw,E=b.includes(` +`)?lYa(b,C):A;A=E;let N=l[f],B=n[a][f],F=bce(r.originalText,RC(I),PS(n.quasis[f+1]));if(!F){let J=Qbi(N,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;J.includes(` +`)?F=!0:N=J}F&&(sg(B)||B.type==="Identifier"||Kv(B)||B.type==="ConditionalExpression"||B.type==="SequenceExpression"||h6(B)||Bee(B))&&(N=[Ol([yl,N]),yl]);let Q=E===0&&b.endsWith(` +`)?_6(Number.NEGATIVE_INFINITY,N):fHa(N,E,C);o.push(Ia(["${",Q,Tee,"}"]))},"quasis"),o.push("`"),o}function uYa(e,t){let r=t("quasi");return j4e(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),Tee,r])}function gYa(e,t,r){let{node:n}=e,a=n.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(a.length>1||a.some(o=>o.length>0)){t.__inJestEach=!0;let o=e.map(r,"expressions");t.__inJestEach=!1;let l=[],A=o.map(E=>"${"+Qbi(E,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}"),f=[{hasLineBreak:!1,cells:[]}];for(let E=1;EE.cells.length)),C=Array.from({length:I}).fill(0),b=[{cells:a},...f.filter(E=>E.cells.length>0)];for(let{cells:E}of b.filter(N=>!N.hasLineBreak))for(let[N,B]of E.entries())C[N]=Math.max(C[N],lNe(B));return l.push(wee,"`",Ol([Gl,wC(Gl,b.map(E=>wC(" | ",E.cells.map((N,B)=>E.hasLineBreak?N:N+" ".repeat(C[B]-lNe(N))))))]),Gl,"`"),l}}function aYa(e,t){let{node:r}=e,n=t();return sg(r)&&(n=Ia([Ol([yl,n]),yl])),["${",n,wee,"}"]}function ZRr(e,t){return e.map(r=>aYa(r,t),"expressions")}function Zbi(e,t){return hNe(e,r=>typeof r=="string"?t?Pk(!1,r,/(\\*)`/gu,"$1$1\\`"):Lbi(r):r)}function Lbi(e){return Pk(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function cYa({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return t.type==="TaggedTemplateExpression"&&t.quasi===e&&t.tag.type==="MemberExpression"&&t.tag.property.type==="Identifier"&&t.tag.property.name==="each"&&(t.tag.object.type==="Identifier"&&r.test(t.tag.object.name)||t.tag.object.type==="MemberExpression"&&t.tag.object.property.type==="Identifier"&&(t.tag.object.property.name==="only"||t.tag.object.property.name==="skip")&&t.tag.object.object.type==="Identifier"&&r.test(t.tag.object.object.name))}var uRr=[(e,t)=>e.type==="ObjectExpression"&&t==="properties",(e,t)=>e.type==="CallExpression"&&e.callee.type==="Identifier"&&e.callee.name==="Component"&&t==="arguments",(e,t)=>e.type==="Decorator"&&t==="expression"];function lYa(e){let t=n=>n.type==="TemplateLiteral",r=(n,a)=>Nee(n)&&!n.computed&&n.key.type==="Identifier"&&n.key.name==="styles"&&a==="value";return e.match(t,(n,a)=>Hk(n)&&a==="elements",r,...uRr)||e.match(t,r,...uRr)}function uYa(e){return e.match(t=>t.type==="TemplateLiteral",(t,r)=>Nee(t)&&!t.computed&&t.key.type==="Identifier"&&t.key.name==="template"&&r==="value",...uRr)}function UTr(e,t){return sg(e,IA.Block|IA.Leading,({value:r})=>r===` ${t} `)}function Vbi({node:e,parent:t},r){return UTr(e,r)||gYa(t)&&UTr(t,r)||t.type==="ExpressionStatement"&&UTr(t,r)}function gYa(e){return e.type==="AsConstExpression"||e.type==="TSAsExpression"&&e.typeAnnotation.type==="TSTypeReference"&&e.typeAnnotation.typeName.type==="Identifier"&&e.typeAnnotation.typeName.name==="const"}async function AYa(e,t,r){let{node:n}=r,a=n.quasis.map(C=>C.value.raw),o=0,l=a.reduce((C,b,E)=>E===0?b:C+"@prettier-placeholder-"+o+++"-id"+b,""),A=await e(l,{parser:"scss"}),f=ZRr(r,t),I=dYa(A,f);if(!I)throw new Error("Couldn't insert all the expressions");return["`",Ol([Gl,I]),yl,"`"]}function dYa(e,t){if(!Q_(t))return e;let r=0,n=hNe(RRr(e),a=>typeof a!="string"||!a.includes("@prettier-placeholder")?a:a.split(/@prettier-placeholder-(\d+)-id/u).map((o,l)=>l%2===0?Dme(o):(r++,t[o])));return t.length===r?n:null}function pYa({node:e,parent:t,grandparent:r}){return r&&e.quasis&&t.type==="JSXExpressionContainer"&&r.type==="JSXElement"&&r.openingElement.name.name==="style"&&r.openingElement.attributes.some(n=>n.type==="JSXAttribute"&&n.name.name==="jsx")||t?.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="css"||t?.type==="TaggedTemplateExpression"&&t.tag.type==="MemberExpression"&&t.tag.object.name==="css"&&(t.tag.property.name==="global"||t.tag.property.name==="resolve")}function Abt(e){return e.type==="Identifier"&&e.name==="styled"}function Nyi(e){return/^[A-Z]/u.test(e.object.name)&&e.property.name==="extend"}function fYa({parent:e}){if(!e||e.type!=="TaggedTemplateExpression")return!1;let t=e.tag.type==="ParenthesizedExpression"?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return Abt(t.object)||Nyi(t);case"CallExpression":return Abt(t.callee)||t.callee.type==="MemberExpression"&&(t.callee.object.type==="MemberExpression"&&(Abt(t.callee.object.object)||Nyi(t.callee.object))||t.callee.object.type==="CallExpression"&&Abt(t.callee.object.callee));case"Identifier":return t.name==="css";default:return!1}}function IYa({parent:e,grandparent:t}){return t?.type==="JSXAttribute"&&e.type==="JSXExpressionContainer"&&t.name.type==="JSXIdentifier"&&t.name.name==="css"}function hYa(e){if(pYa(e)||fYa(e)||IYa(e)||lYa(e))return AYa}var mYa=hYa;async function CYa(e,t,r){let{node:n}=r,a=n.quasis.length,o=ZRr(r,t),l=[];for(let A=0;A2&&E[0].trim()===""&&E[1].trim()==="",Q=N>2&&E[N-1].trim()===""&&E[N-2].trim()==="",J=E.every(ne=>/^\s*(?:#[^\n\r]*)?$/u.test(ne));if(!C&&/#[^\n\r]*$/u.test(E[N-1]))return null;let ae=null;J?ae=_Ya(E):ae=await e(b,{parser:"graphql"}),ae?(ae=Zbi(ae,!1),!I&&F&&l.push(""),l.push(ae),!C&&Q&&l.push("")):!I&&!C&&F&&l.push(""),B&&l.push(B)}return["`",Ol([Gl,wC(Gl,l)]),Gl,"`"]}function _Ya(e){let t=[],r=!1,n=e.map(a=>a.trim());for(let[a,o]of n.entries())o!==""&&(n[a-1]===""&&r?t.push([Gl,o]):t.push(o),r=!0);return t.length===0?null:wC(Gl,t)}function yYa({node:e,parent:t}){return Vbi({node:e,parent:t},"GraphQL")||t&&(t.type==="TaggedTemplateExpression"&&(t.tag.type==="MemberExpression"&&t.tag.object.name==="graphql"&&t.tag.property.name==="experimental"||t.tag.type==="Identifier"&&(t.tag.name==="gql"||t.tag.name==="graphql"))||t.type==="CallExpression"&&t.callee.type==="Identifier"&&t.callee.name==="graphql")}function bYa(e){if(yYa(e))return CYa}var EYa=bYa,KTr=0;async function Wbi(e,t,r,n,a){let{node:o}=n,l=KTr;KTr=KTr+1>>>0;let A=J=>`PRETTIER_HTML_PLACEHOLDER_${J}_${l}_IN_JS`,f=o.quasis.map((J,ae,ne)=>ae===ne.length-1?J.value.cooked:J.value.cooked+A(ae)).join(""),I=ZRr(n,r),C=new RegExp(A(String.raw`(\d+)`),"gu"),b=0,E=await t(f,{parser:e,__onHtmlRoot(J){b=J.children.length}}),N=hNe(E,J=>{if(typeof J!="string")return J;let ae=[],ne=J.split(C);for(let ce=0;ce1?Ol(Ia(N)):Ia(N),F,"`"]))}function SYa(e){return Vbi(e,"HTML")||e.match(t=>t.type==="TemplateLiteral",(t,r)=>t.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="html"&&r==="quasi")}var vYa=Wbi.bind(void 0,"html"),BYa=Wbi.bind(void 0,"angular");function wYa(e){if(SYa(e))return vYa;if(uYa(e))return BYa}var TYa=wYa;async function RYa(e,t,r){let{node:n}=r,a=Pk(!1,n.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,(f,I)=>"\\".repeat(I.length/2)+"`"),o=NYa(a),l=o!=="";l&&(a=Pk(!1,a,new RegExp(`^${o}`,"gmu"),""));let A=Zbi(await e(a,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",l?Ol([yl,A]):[_bi,cHa(A)],yl,"`"]}function NYa(e){let t=e.match(/^([^\S\n]*)\S/mu);return t===null?"":t[1]}function DYa(e){if(kYa(e))return RYa}function kYa({node:e,parent:t}){return t?.type==="TaggedTemplateExpression"&&e.quasis.length===1&&t.tag.type==="Identifier"&&(t.tag.name==="md"||t.tag.name==="markdown")}var xYa=DYa;function GYa(e){let{node:t}=e;if(t.type!=="TemplateLiteral"||FYa(t))return;let r;for(let n of[mYa,EYa,TYa,xYa])if(r=n(e),!!r)return t.quasis.length===1&&t.quasis[0].value.raw.trim()===""?"``":async(...a)=>{let o=await r(...a);return o&&U4e({embed:!0,...o.label},o)}}function FYa({quasis:e}){return e.some(({value:{cooked:t}})=>t===null)}var ZYa=GYa,LYa=/\*\/$/,VYa=/^\/\*\*?/,Obi=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,WYa=/(^|\s+)\/\/([^\n\r]*)/g,Dyi=/^(\r?\n)+/,OYa=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,kyi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,PYa=/(\r?\n|^) *\* ?/g,Pbi=[];function MYa(e){let t=e.match(Obi);return t?t[0].trimStart():""}function HYa(e){let t=e.match(Obi),r=t?.[0];return r==null?e:e.slice(r.length)}function YYa(e){let t=` -`;e=Pk(!1,e.replace(VYa,"").replace(LYa,""),PYa,"$1");let r="";for(;r!==e;)r=e,e=Pk(!1,e,OYa,`${t}$1 $2${t}`);e=e.replace(Dyi,"").trimEnd();let n=Object.create(null),a=Pk(!1,e,kyi,"").replace(Dyi,"").trimEnd(),o;for(;o=kyi.exec(e);){let l=Pk(!1,o[2],WYa,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...Pbi,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function QYa({comments:e="",pragmas:t={}}){let r=` -`,n="/**",a=" *",o=" */",l=Object.keys(t),A=l.flatMap(I=>xyi(I,t[I])).map(I=>`${a} ${I}${r}`).join("");if(!e){if(l.length===0)return"";if(l.length===1&&!Array.isArray(t[l[0]])){let I=t[l[0]];return`${n} ${xyi(l[0],I)[0]}${o}`}}let f=e.split(r).map(I=>`${a} ${I}`).join(r)+r;return n+r+(e?f:"")+(e&&l.length>0?a+r:"")+A+o}function xyi(e,t){return[...Pbi,...Array.isArray(t)?t:[t]].map(r=>`@${e} ${r}`.trim())}function XYa(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var JYa=XYa;function UYa(e){let t=JYa(e);t&&(e=e.slice(t.length+1));let r=MYa(e),{pragmas:n,comments:a}=YYa(r);return{shebang:t,text:e,pragmas:n,comments:a}}function KYa(e){let{shebang:t,text:r,pragmas:n,comments:a}=UYa(e),o=HYa(r),l=QYa({pragmas:{format:"",...n},comments:a.trimStart()});return(t?`${t} +`)&&f.push({hasLineBreak:!1,cells:[]})}let I=Math.max(a.length,...f.map(E=>E.cells.length)),C=Array.from({length:I}).fill(0),b=[{cells:a},...f.filter(E=>E.cells.length>0)];for(let{cells:E}of b.filter(N=>!N.hasLineBreak))for(let[N,B]of E.entries())C[N]=Math.max(C[N],aNe(B));return l.push(Tee,"`",Ol([Gl,TC(Gl,b.map(E=>TC(" | ",E.cells.map((N,B)=>E.hasLineBreak?N:N+" ".repeat(C[B]-aNe(N))))))]),Gl,"`"),l}}function AYa(e,t){let{node:r}=e,n=t();return sg(r)&&(n=Ia([Ol([yl,n]),yl])),["${",n,Tee,"}"]}function VRr(e,t){return e.map(r=>AYa(r,t),"expressions")}function Jbi(e,t){return fNe(e,r=>typeof r=="string"?t?Mk(!1,r,/(\\*)`/gu,"$1$1\\`"):Ubi(r):r)}function Ubi(e){return Mk(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function dYa({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return t.type==="TaggedTemplateExpression"&&t.quasi===e&&t.tag.type==="MemberExpression"&&t.tag.property.type==="Identifier"&&t.tag.property.name==="each"&&(t.tag.object.type==="Identifier"&&r.test(t.tag.object.name)||t.tag.object.type==="MemberExpression"&&t.tag.object.property.type==="Identifier"&&(t.tag.object.property.name==="only"||t.tag.object.property.name==="skip")&&t.tag.object.object.type==="Identifier"&&r.test(t.tag.object.object.name))}var ARr=[(e,t)=>e.type==="ObjectExpression"&&t==="properties",(e,t)=>e.type==="CallExpression"&&e.callee.type==="Identifier"&&e.callee.name==="Component"&&t==="arguments",(e,t)=>e.type==="Decorator"&&t==="expression"];function pYa(e){let t=n=>n.type==="TemplateLiteral",r=(n,a)=>Dee(n)&&!n.computed&&n.key.type==="Identifier"&&n.key.name==="styles"&&a==="value";return e.match(t,(n,a)=>Yk(n)&&a==="elements",r,...ARr)||e.match(t,r,...ARr)}function fYa(e){return e.match(t=>t.type==="TemplateLiteral",(t,r)=>Dee(t)&&!t.computed&&t.key.type==="Identifier"&&t.key.name==="template"&&r==="value",...ARr)}function jTr(e,t){return sg(e,hA.Block|hA.Leading,({value:r})=>r===` ${t} `)}function Kbi({node:e,parent:t},r){return jTr(e,r)||IYa(t)&&jTr(t,r)||t.type==="ExpressionStatement"&&jTr(t,r)}function IYa(e){return e.type==="AsConstExpression"||e.type==="TSAsExpression"&&e.typeAnnotation.type==="TSTypeReference"&&e.typeAnnotation.typeName.type==="Identifier"&&e.typeAnnotation.typeName.name==="const"}async function hYa(e,t,r){let{node:n}=r,a=n.quasis.map(C=>C.value.raw),o=0,l=a.reduce((C,b,E)=>E===0?b:C+"@prettier-placeholder-"+o+++"-id"+b,""),A=await e(l,{parser:"scss"}),f=VRr(r,t),I=mYa(A,f);if(!I)throw new Error("Couldn't insert all the expressions");return["`",Ol([Gl,I]),yl,"`"]}function mYa(e,t){if(!X_(t))return e;let r=0,n=fNe(DRr(e),a=>typeof a!="string"||!a.includes("@prettier-placeholder")?a:a.split(/@prettier-placeholder-(\d+)-id/u).map((o,l)=>l%2===0?kme(o):(r++,t[o])));return t.length===r?n:null}function CYa({node:e,parent:t,grandparent:r}){return r&&e.quasis&&t.type==="JSXExpressionContainer"&&r.type==="JSXElement"&&r.openingElement.name.name==="style"&&r.openingElement.attributes.some(n=>n.type==="JSXAttribute"&&n.name.name==="jsx")||t?.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="css"||t?.type==="TaggedTemplateExpression"&&t.tag.type==="MemberExpression"&&t.tag.object.name==="css"&&(t.tag.property.name==="global"||t.tag.property.name==="resolve")}function ubt(e){return e.type==="Identifier"&&e.name==="styled"}function Pyi(e){return/^[A-Z]/u.test(e.object.name)&&e.property.name==="extend"}function _Ya({parent:e}){if(!e||e.type!=="TaggedTemplateExpression")return!1;let t=e.tag.type==="ParenthesizedExpression"?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return ubt(t.object)||Pyi(t);case"CallExpression":return ubt(t.callee)||t.callee.type==="MemberExpression"&&(t.callee.object.type==="MemberExpression"&&(ubt(t.callee.object.object)||Pyi(t.callee.object))||t.callee.object.type==="CallExpression"&&ubt(t.callee.object.callee));case"Identifier":return t.name==="css";default:return!1}}function yYa({parent:e,grandparent:t}){return t?.type==="JSXAttribute"&&e.type==="JSXExpressionContainer"&&t.name.type==="JSXIdentifier"&&t.name.name==="css"}function bYa(e){if(CYa(e)||_Ya(e)||yYa(e)||pYa(e))return hYa}var EYa=bYa;async function SYa(e,t,r){let{node:n}=r,a=n.quasis.length,o=VRr(r,t),l=[];for(let A=0;A2&&E[0].trim()===""&&E[1].trim()==="",Q=N>2&&E[N-1].trim()===""&&E[N-2].trim()==="",J=E.every(ne=>/^\s*(?:#[^\n\r]*)?$/u.test(ne));if(!C&&/#[^\n\r]*$/u.test(E[N-1]))return null;let ae=null;J?ae=vYa(E):ae=await e(b,{parser:"graphql"}),ae?(ae=Jbi(ae,!1),!I&&F&&l.push(""),l.push(ae),!C&&Q&&l.push("")):!I&&!C&&F&&l.push(""),B&&l.push(B)}return["`",Ol([Gl,TC(Gl,l)]),Gl,"`"]}function vYa(e){let t=[],r=!1,n=e.map(a=>a.trim());for(let[a,o]of n.entries())o!==""&&(n[a-1]===""&&r?t.push([Gl,o]):t.push(o),r=!0);return t.length===0?null:TC(Gl,t)}function BYa({node:e,parent:t}){return Kbi({node:e,parent:t},"GraphQL")||t&&(t.type==="TaggedTemplateExpression"&&(t.tag.type==="MemberExpression"&&t.tag.object.name==="graphql"&&t.tag.property.name==="experimental"||t.tag.type==="Identifier"&&(t.tag.name==="gql"||t.tag.name==="graphql"))||t.type==="CallExpression"&&t.callee.type==="Identifier"&&t.callee.name==="graphql")}function wYa(e){if(BYa(e))return SYa}var TYa=wYa,zTr=0;async function jbi(e,t,r,n,a){let{node:o}=n,l=zTr;zTr=zTr+1>>>0;let A=J=>`PRETTIER_HTML_PLACEHOLDER_${J}_${l}_IN_JS`,f=o.quasis.map((J,ae,ne)=>ae===ne.length-1?J.value.cooked:J.value.cooked+A(ae)).join(""),I=VRr(n,r),C=new RegExp(A(String.raw`(\d+)`),"gu"),b=0,E=await t(f,{parser:e,__onHtmlRoot(J){b=J.children.length}}),N=fNe(E,J=>{if(typeof J!="string")return J;let ae=[],ne=J.split(C);for(let ce=0;ce1?Ol(Ia(N)):Ia(N),F,"`"]))}function RYa(e){return Kbi(e,"HTML")||e.match(t=>t.type==="TemplateLiteral",(t,r)=>t.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="html"&&r==="quasi")}var NYa=jbi.bind(void 0,"html"),DYa=jbi.bind(void 0,"angular");function kYa(e){if(RYa(e))return NYa;if(fYa(e))return DYa}var xYa=kYa;async function GYa(e,t,r){let{node:n}=r,a=Mk(!1,n.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,(f,I)=>"\\".repeat(I.length/2)+"`"),o=FYa(a),l=o!=="";l&&(a=Mk(!1,a,new RegExp(`^${o}`,"gmu"),""));let A=Jbi(await e(a,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",l?Ol([yl,A]):[Dbi,dHa(A)],yl,"`"]}function FYa(e){let t=e.match(/^([^\S\n]*)\S/mu);return t===null?"":t[1]}function ZYa(e){if(LYa(e))return GYa}function LYa({node:e,parent:t}){return t?.type==="TaggedTemplateExpression"&&e.quasis.length===1&&t.tag.type==="Identifier"&&(t.tag.name==="md"||t.tag.name==="markdown")}var VYa=ZYa;function WYa(e){let{node:t}=e;if(t.type!=="TemplateLiteral"||OYa(t))return;let r;for(let n of[EYa,TYa,xYa,VYa])if(r=n(e),!!r)return t.quasis.length===1&&t.quasis[0].value.raw.trim()===""?"``":async(...a)=>{let o=await r(...a);return o&&j4e({embed:!0,...o.label},o)}}function OYa({quasis:e}){return e.some(({value:{cooked:t}})=>t===null)}var PYa=WYa,MYa=/\*\/$/,HYa=/^\/\*\*?/,zbi=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,YYa=/(^|\s+)\/\/([^\n\r]*)/g,Myi=/^(\r?\n)+/,QYa=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,Hyi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,XYa=/(\r?\n|^) *\* ?/g,qbi=[];function JYa(e){let t=e.match(zbi);return t?t[0].trimStart():""}function UYa(e){let t=e.match(zbi),r=t?.[0];return r==null?e:e.slice(r.length)}function KYa(e){let t=` +`;e=Mk(!1,e.replace(HYa,"").replace(MYa,""),XYa,"$1");let r="";for(;r!==e;)r=e,e=Mk(!1,e,QYa,`${t}$1 $2${t}`);e=e.replace(Myi,"").trimEnd();let n=Object.create(null),a=Mk(!1,e,Hyi,"").replace(Myi,"").trimEnd(),o;for(;o=Hyi.exec(e);){let l=Mk(!1,o[2],YYa,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...qbi,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function jYa({comments:e="",pragmas:t={}}){let r=` +`,n="/**",a=" *",o=" */",l=Object.keys(t),A=l.flatMap(I=>Yyi(I,t[I])).map(I=>`${a} ${I}${r}`).join("");if(!e){if(l.length===0)return"";if(l.length===1&&!Array.isArray(t[l[0]])){let I=t[l[0]];return`${n} ${Yyi(l[0],I)[0]}${o}`}}let f=e.split(r).map(I=>`${a} ${I}`).join(r)+r;return n+r+(e?f:"")+(e&&l.length>0?a+r:"")+A+o}function Yyi(e,t){return[...qbi,...Array.isArray(t)?t:[t]].map(r=>`@${e} ${r}`.trim())}function zYa(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` +`);return t===-1?e:e.slice(0,t)}var qYa=zYa;function $Ya(e){let t=qYa(e);t&&(e=e.slice(t.length+1));let r=JYa(e),{pragmas:n,comments:a}=KYa(r);return{shebang:t,text:e,pragmas:n,comments:a}}function eQa(e){let{shebang:t,text:r,pragmas:n,comments:a}=$Ya(e),o=UYa(r),l=jYa({pragmas:{format:"",...n},comments:a.trimStart()});return(t?`${t} `:"")+l+(o.startsWith(` `)?` `:` -`)+o}function jYa(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var zYa=jYa;function gRr(e,t){var r,n,a,o,l,A,f,I,C;if(e.isRoot)return!1;let{node:b,key:E,parent:N}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&tQa(b)&&O4e(e))return!0;if(qYa(b))return!1;if(b.type==="Identifier"){if((r=b.extra)!=null&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(b.name)||E==="left"&&(b.name==="async"&&!N.await||b.name==="let")&&N.type==="ForOfStatement")return!0;if(b.name==="let"){let B=(n=e.findAncestor(F=>F.type==="ForOfStatement"))==null?void 0:n.left;if(B&&$Z(B,F=>F===b))return!0}if(E==="object"&&b.name==="let"&&N.type==="MemberExpression"&&N.computed&&!N.optional){let B=e.findAncestor(Q=>Q.type==="ExpressionStatement"||Q.type==="ForStatement"||Q.type==="ForInStatement"),F=B?B.type==="ExpressionStatement"?B.expression:B.type==="ForStatement"?B.init:B.left:void 0;if(F&&$Z(F,Q=>Q===b))return!0}if(E==="expression")switch(b.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let B=e.findAncestor(F=>!I6(F));if(B!==N&&B.type==="ExpressionStatement")return!0}}return!1}if(b.type==="ObjectExpression"||b.type==="FunctionExpression"||b.type==="ClassExpression"||b.type==="DoExpression"){let B=(a=e.findAncestor(F=>F.type==="ExpressionStatement"))==null?void 0:a.expression;if(B&&$Z(B,F=>F===b))return!0}if(b.type==="ObjectExpression"){let B=(o=e.findAncestor(F=>F.type==="ArrowFunctionExpression"))==null?void 0:o.body;if(B&&B.type!=="SequenceExpression"&&B.type!=="AssignmentExpression"&&$Z(B,F=>F===b))return!0}switch(N.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if(E==="superClass"&&(b.type==="ArrowFunctionExpression"||b.type==="AssignmentExpression"||b.type==="AwaitExpression"||b.type==="BinaryExpression"||b.type==="ConditionalExpression"||b.type==="LogicalExpression"||b.type==="NewExpression"||b.type==="ObjectExpression"||b.type==="SequenceExpression"||b.type==="TaggedTemplateExpression"||b.type==="UnaryExpression"||b.type==="UpdateExpression"||b.type==="YieldExpression"||b.type==="TSNonNullExpression"||b.type==="ClassExpression"&&Q_(b.decorators)))return!0;break;case"ExportDefaultDeclaration":return Mbi(e,t)||b.type==="SequenceExpression";case"Decorator":if(E==="expression"&&!nQa(b))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression")&&eQa(b))return!0;break;case"BinaryExpression":if(E==="left"&&(N.operator==="in"||N.operator==="instanceof")&&b.type==="UnaryExpression")return!0;break;case"VariableDeclarator":if(E==="init"&&e.match(void 0,void 0,(B,F)=>F==="declarations"&&B.type==="VariableDeclaration",(B,F)=>F==="left"&&B.type==="ForInStatement"))return!0;break}switch(b.type){case"UpdateExpression":if(N.type==="UnaryExpression")return b.prefix&&(b.operator==="++"&&N.operator==="+"||b.operator==="--"&&N.operator==="-");case"UnaryExpression":switch(N.type){case"UnaryExpression":return b.operator===N.operator&&(b.operator==="+"||b.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"BinaryExpression":return E==="left"&&N.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":if(N.type==="UpdateExpression"||b.operator==="in"&&$Ya(e))return!0;if(b.operator==="|>"&&(l=b.extra)!=null&&l.parenthesized){let B=e.grandparent;if(B.type==="BinaryExpression"&&B.operator==="|>")return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(N.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!I6(b);case"ConditionalExpression":return I6(b)||DMa(b);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return E==="callee";case"ClassExpression":case"ClassDeclaration":return E==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"AssignmentExpression":case"AssignmentPattern":return E==="left"&&(b.type==="TSTypeAssertion"||I6(b));case"LogicalExpression":if(b.type==="LogicalExpression")return N.operator!==b.operator;case"BinaryExpression":{let{operator:B,type:F}=b;if(!B&&F!=="TSTypeAssertion")return!0;let Q=Ibt(B),J=N.operator,ae=Ibt(J);return ae>Q||E==="right"&&ae===Q||ae===Q&&!BRr(J,B)?!0:ae");default:return!1}case"TSFunctionType":if(e.match(B=>B.type==="TSFunctionType",(B,F)=>F==="typeAnnotation"&&B.type==="TSTypeAnnotation",(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression"))return!0;case"TSConditionalType":case"TSConstructorType":case"ConditionalTypeAnnotation":if(E==="extendsType"&&_ce(b)&&N.type===b.type||E==="checkType"&&_ce(N))return!0;if(E==="extendsType"&&N.type==="TSConditionalType"){let{typeAnnotation:B}=b.returnType||b.typeAnnotation;if(B.type==="TSTypePredicate"&&B.typeAnnotation&&(B=B.typeAnnotation.typeAnnotation),B.type==="TSInferType"&&B.typeParameter.constraint)return!0}case"TSUnionType":case"TSIntersectionType":if((Cce(N)||wRr(N))&&N.types.length>1&&(!b.types||b.types.length>1))return!0;case"TSInferType":if(b.type==="TSInferType"){if(N.type==="TSRestType")return!1;if(E==="types"&&(N.type==="TSUnionType"||N.type==="TSIntersectionType")&&b.typeParameter.type==="TSTypeParameter"&&b.typeParameter.constraint)return!0}case"TSTypeOperator":return N.type==="TSArrayType"||N.type==="TSOptionalType"||N.type==="TSRestType"||E==="objectType"&&N.type==="TSIndexedAccessType"||N.type==="TSTypeOperator"||N.type==="TSTypeAnnotation"&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return E==="objectType"&&N.type==="TSIndexedAccessType"||E==="elementType"&&N.type==="TSArrayType";case"TypeOperator":return N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||N.type==="TypeOperator";case"TypeofTypeAnnotation":return E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||E==="elementType"&&N.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return N.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return N.type==="TypeOperator"||N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||N.type==="IntersectionTypeAnnotation"||N.type==="UnionTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"InferTypeAnnotation":case"NullableTypeAnnotation":return N.type==="ArrayTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if(b.type==="ComponentTypeAnnotation"&&(b.rendersType===null||b.rendersType===void 0))return!1;if(e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression")||e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypePredicate",(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression"))return!0;let B=N.type==="NullableTypeAnnotation"?e.grandparent:N;return B.type==="UnionTypeAnnotation"||B.type==="IntersectionTypeAnnotation"||B.type==="ArrayTypeAnnotation"||E==="objectType"&&(B.type==="IndexedAccessType"||B.type==="OptionalIndexedAccessType")||E==="checkType"&&N.type==="ConditionalTypeAnnotation"||E==="extendsType"&&N.type==="ConditionalTypeAnnotation"&&((A=b.returnType)==null?void 0:A.type)==="InferTypeAnnotation"&&((f=b.returnType)==null?void 0:f.typeParameter.bound)||B.type==="NullableTypeAnnotation"||N.type==="FunctionTypeParam"&&N.name===null&&FG(b).some(F=>{var Q;return((Q=F.typeAnnotation)==null?void 0:Q.type)==="NullableTypeAnnotation"})}case"OptionalIndexedAccessType":return E==="objectType"&&N.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof b.value=="string"&&N.type==="ExpressionStatement"&&!N.directive){let B=e.grandparent;return B.type==="Program"||B.type==="BlockStatement"}return E==="object"&&N.type==="MemberExpression"&&typeof b.value=="number";case"AssignmentExpression":{let B=e.grandparent;return E==="body"&&N.type==="ArrowFunctionExpression"?!0:E==="key"&&(N.type==="ClassProperty"||N.type==="PropertyDefinition")&&N.computed||(E==="init"||E==="update")&&N.type==="ForStatement"?!1:N.type==="ExpressionStatement"?b.left.type==="ObjectPattern":!(E==="key"&&N.type==="TSPropertySignature"||N.type==="AssignmentExpression"||N.type==="SequenceExpression"&&B.type==="ForStatement"&&(B.init===N||B.update===N)||E==="value"&&N.type==="Property"&&B.type==="ObjectPattern"&&B.properties.includes(N)||N.type==="NGChainedExpression"||E==="node"&&N.type==="JsExpressionRoot")}case"ConditionalExpression":switch(N.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"ConditionalExpression":return t.experimentalTernaries?!1:E==="test";case"MemberExpression":case"OptionalMemberExpression":return E==="object";default:return!1}case"FunctionExpression":switch(N.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(N.type){case"BinaryExpression":return N.operator!=="|>"||((I=b.extra)==null?void 0:I.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return E==="test";default:return!1}case"ClassExpression":switch(N.type){case"NewExpression":return E==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(rQa(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if(E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")){let B=b;for(;B;)switch(B.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":B=B.object;break;case"TaggedTemplateExpression":B=B.tag;break;case"TSNonNullExpression":B=B.expression;break;default:return!1}}return!1;case"BindExpression":return E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")||E==="object"&&Uv(N);case"NGPipeExpression":return!(N.type==="NGRoot"||N.type==="NGMicrosyntaxExpression"||N.type==="ObjectProperty"&&!((C=b.extra)!=null&&C.parenthesized)||Hk(N)||E==="arguments"&&S_(N)||E==="right"&&N.type==="NGPipeExpression"||E==="property"&&N.type==="MemberExpression"||N.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return E==="callee"||E==="left"&&N.type==="BinaryExpression"&&N.operator==="<"||!Hk(N)&&N.type!=="ArrowFunctionExpression"&&N.type!=="AssignmentExpression"&&N.type!=="AssignmentPattern"&&N.type!=="BinaryExpression"&&N.type!=="NewExpression"&&N.type!=="ConditionalExpression"&&N.type!=="ExpressionStatement"&&N.type!=="JsExpressionRoot"&&N.type!=="JSXAttribute"&&N.type!=="JSXElement"&&N.type!=="JSXExpressionContainer"&&N.type!=="JSXFragment"&&N.type!=="LogicalExpression"&&!S_(N)&&!Nee(N)&&N.type!=="ReturnStatement"&&N.type!=="ThrowStatement"&&N.type!=="TypeCastExpression"&&N.type!=="VariableDeclarator"&&N.type!=="YieldExpression";case"TSInstantiationExpression":return E==="object"&&Uv(N)}return!1}var qYa=b0(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]);function $Ya(e){let t=0,{node:r}=e;for(;r;){let n=e.getParentNode(t++);if(n?.type==="ForStatement"&&n.init===r)return!0;r=n}return!1}function eQa(e){return rRr(e,t=>t.type==="ObjectTypeAnnotation"&&rRr(t,r=>r.type==="FunctionTypeAnnotation"))}function tQa(e){return g4(e)}function O4e(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if(r==="arguments"&&e.isLast)return e.callParent(O4e);break;case"ObjectProperty":if(r==="value")return e.callParent(()=>e.key==="properties"&&e.isLast);break;case"BinaryExpression":case"LogicalExpression":if(r==="right")return e.callParent(O4e);break;case"ConditionalExpression":if(r==="alternate")return e.callParent(O4e);break;case"UnaryExpression":if(t.prefix)return e.callParent(O4e);break}return!1}function Mbi(e,t){let{node:r,parent:n}=e;return r.type==="FunctionExpression"||r.type==="ClassExpression"?n.type==="ExportDefaultDeclaration"||!gRr(e,t):!bRr(r)||n.type!=="ExportDefaultDeclaration"&&gRr(e,t)?!1:e.call(()=>Mbi(e,t),...nbi(r))}function rQa(e){return!!(e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&(t.type==="CallExpression"||t.type==="NewExpression"))||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression")||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression")&&(e.match(void 0,void 0,(t,r)=>r==="callee"&&(t.type==="CallExpression"&&!t.optional||t.type==="NewExpression")||r==="object"&&t.type==="MemberExpression"&&!t.optional)||e.match(void 0,void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))}function ARr(e){return e.type==="Identifier"?!0:Uv(e)?!e.computed&&!e.optional&&e.property.type==="Identifier"&&ARr(e.object):!1}function nQa(e){return e.type==="ChainExpression"&&(e=e.expression),ARr(e)||S_(e)&&!e.optional&&ARr(e.callee)}var Ome=gRr;function iQa(e,t){let r=t-1;r=uNe(e,r,{backwards:!0}),r=gNe(e,r,{backwards:!0}),r=uNe(e,r,{backwards:!0});let n=gNe(e,r,{backwards:!0});return r!==n}var sQa=iQa,oQa=()=>!0;function LRr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function aQa(e,t){var r;let n=e.node,a=[LRr(e,t)],{printer:o,originalText:l,locStart:A,locEnd:f}=t;if((r=o.isBlockComment)!=null&&r.call(o,n)){let C=_P(l,f(n))?_P(l,A(n),{backwards:!0})?Gl:qg:" ";a.push(C)}else a.push(Gl);let I=gNe(l,uNe(l,f(n)));return I!==!1&&_P(l,I)&&a.push(Gl),a}function cQa(e,t,r){var n;let a=e.node,o=LRr(e,t),{printer:l,originalText:A,locStart:f}=t,I=(n=l.isBlockComment)==null?void 0:n.call(l,a);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||_P(A,f(a),{backwards:!0})){let C=sQa(A,f(a));return{doc:Ryi([Gl,C?Gl:"",o]),isBlock:I,hasLineSuffix:!0}}return!I||r!=null&&r.hasLineSuffix?{doc:[Ryi([" ",o]),_6],isBlock:I,hasLineSuffix:!0}:{doc:[" ",o],isBlock:I,hasLineSuffix:!1}}function x2(e,t,r={}){let{node:n}=e;if(!Q_(n?.comments))return"";let{indent:a=!1,marker:o,filter:l=oQa}=r,A=[];if(e.each(({node:I})=>{I.leading||I.trailing||I.marker!==o||!l(I)||A.push(LRr(e,t))},"comments"),A.length===0)return"";let f=wC(Gl,A);return a?Ol([Gl,f]):f}function Hbi(e,t){let r=e.node;if(!r)return{};let n=t[Symbol.for("printedComments")];if((r.comments||[]).filter(A=>!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(aQa(e,t)):I&&(l=cQa(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function u4(e,t,r){let{leading:n,trailing:a}=Hbi(e,r);return!n&&!a?t:sRr(t,o=>[n,o,a])}var lQa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},CNe=lQa;function uQa(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var c4,gQa=class{constructor(e){P5a(this,c4),M5a(this,c4,new Set(e))}getLeadingWhitespaceCount(e){let t=pce(this,c4),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return pce(this,c4).has(e.charAt(0))}hasTrailingWhitespace(e){return pce(this,c4).has(j0(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${uQa([...pce(this,c4)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=pce(this,c4);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=pce(this,c4);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=pce(this,c4);return Array.prototype.every.call(e,r=>t.has(r))}};c4=new WeakMap;var AQa=gQa,dbt=new AQa(` -\r `),jTr=e=>e===""||e===qg||e===Gl||e===yl;function dQa(e,t,r){var n,a,o,l,A;let{node:f}=e;if(f.type==="JSXElement"&&TQa(f))return[r("openingElement"),r("closingElement")];let I=f.type==="JSXElement"?r("openingElement"):r("openingFragment"),C=f.type==="JSXElement"?r("closingElement"):r("closingFragment");if(f.children.length===1&&f.children[0].type==="JSXExpressionContainer"&&(f.children[0].expression.type==="TemplateLiteral"||f.children[0].expression.type==="TaggedTemplateExpression"))return[I,...e.map(r,"children"),C];f.children=f.children.map(be=>RQa(be)?{type:"JSXText",value:" ",raw:" "}:be);let b=f.children.some(cD),E=f.children.filter(be=>be.type==="JSXExpressionContainer").length>1,N=f.type==="JSXElement"&&f.openingElement.attributes.length>1,B=eL(I)||b||N||E,F=e.parent.rootMarker==="mdx",Q=t.singleQuote?"{' '}":'{" "}',J=F?qg:Ah([Q,yl]," "),ae=((a=(n=f.openingElement)==null?void 0:n.name)==null?void 0:a.name)==="fbt",ne=pQa(e,t,r,J,ae),ce=f.children.some(be=>X4e(be));for(let be=ne.length-2;be>=0;be--){let Se=ne[be]===""&&ne[be+1]==="",De=ne[be]===Gl&&ne[be+1]===""&&ne[be+2]===Gl,k=(ne[be]===yl||ne[be]===Gl)&&ne[be+1]===""&&ne[be+2]===J,tt=ne[be]===J&&ne[be+1]===""&&(ne[be+2]===yl||ne[be+2]===Gl),ze=ne[be]===J&&ne[be+1]===""&&ne[be+2]===J,Le=ne[be]===yl&&ne[be+1]===""&&ne[be+2]===Gl||ne[be]===Gl&&ne[be+1]===""&&ne[be+2]===yl;De&&ce||Se||k||ze||Le?ne.splice(be,2):tt&&ne.splice(be+1,2)}for(;ne.length>0&&jTr(j0(!1,ne,-1));)ne.pop();for(;ne.length>1&&jTr(ne[0])&&jTr(ne[1]);)ne.shift(),ne.shift();let fe=[""];for(let[be,Se]of ne.entries()){if(Se===J){if(be===1&&oHa(ne[be-1])){if(ne.length===2){fe.push([fe.pop(),Q]);continue}fe.push([Q,Gl],"");continue}else if(be===ne.length-1){fe.push([fe.pop(),Q]);continue}else if(ne[be-1]===""&&ne[be-2]===Gl){fe.push([fe.pop(),Q]);continue}}be%2===0?fe.push([fe.pop(),Se]):fe.push(Se,""),eL(Se)&&(B=!0)}let ue=ce?mbi(fe):Ia(fe,{shouldBreak:!0});if(((o=t.cursorNode)==null?void 0:o.type)==="JSXText"&&f.children.includes(t.cursorNode)?ue=[ubt,ue,ubt]:((l=t.nodeBeforeCursor)==null?void 0:l.type)==="JSXText"&&f.children.includes(t.nodeBeforeCursor)?ue=[ubt,ue]:((A=t.nodeAfterCursor)==null?void 0:A.type)==="JSXText"&&f.children.includes(t.nodeAfterCursor)&&(ue=[ue,ubt]),F)return ue;let de=Ia([I,Ol([Gl,ue]),Gl,C]);return B?de:Nme([Ia([I,...ne,C]),de])}function pQa(e,t,r,n,a){let o="",l=[o];function A(I){o=I,l.push([l.pop(),I])}function f(I){I!==""&&(o=I,l.push(I,""))}return e.each(({node:I,next:C})=>{if(I.type==="JSXText"){let b=rH(I);if(X4e(I)){let E=dbt.split(b,!0);E[0]===""&&(E.shift(),/\n/u.test(E[0])?f(Fyi(a,E[1],I,C)):f(n),E.shift());let N;if(j0(!1,E,-1)===""&&(E.pop(),N=E.pop()),E.length===0)return;for(let[B,F]of E.entries())B%2===1?f(qg):A(F);N!==void 0?/\n/u.test(N)?f(Fyi(a,o,I,C)):f(n):f(Gyi(a,o,I,C))}else/\n/u.test(b)?b.match(/\n/gu).length>1&&f(Gl):f(n)}else{let b=r();if(A(b),C&&X4e(C)){let E=dbt.trim(rH(C)),[N]=dbt.split(E);f(Gyi(a,N,I,C))}else f(Gl)}},"children"),l}function Gyi(e,t,r,n){return e?"":r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?t.length===1?yl:Gl:yl}function Fyi(e,t,r,n){return e?Gl:t.length===1?r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?Gl:yl:Gl}var fQa=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]);function IQa(e,t,r){let{parent:n}=e;if(fQa.has(n.type))return t;let a=e.match(void 0,l=>l.type==="ArrowFunctionExpression",S_,l=>l.type==="JSXExpressionContainer"),o=Ome(e,r);return Ia([o?"":Ah("("),Ol([yl,t]),yl,o?"":Ah(")")],{shouldBreak:a})}function hQa(e,t,r){let{node:n}=e,a=[];if(a.push(r("name")),n.value){let o;if(hV(n.value)){let l=rH(n.value),A=Pk(!1,Pk(!1,l.slice(1,-1),"'","'"),""",'"'),f=qyi(A,t.jsxSingleQuote);A=f==='"'?Pk(!1,A,'"',"""):Pk(!1,A,"'","'"),o=e.call(()=>u4(e,Dme(f+A+f),t),"value")}else o=r("value");a.push("=",o)}return a}function mQa(e,t,r){let{node:n}=e,a=(o,l)=>o.type==="JSXEmptyExpression"||!sg(o)&&(Hk(o)||g4(o)||o.type==="ArrowFunctionExpression"||o.type==="AwaitExpression"&&(a(o.argument,o)||o.argument.type==="JSXElement")||S_(o)||o.type==="ChainExpression"&&S_(o.expression)||o.type==="FunctionExpression"||o.type==="TemplateLiteral"||o.type==="TaggedTemplateExpression"||o.type==="DoExpression"||cD(l)&&(o.type==="ConditionalExpression"||vee(o)));return a(n.expression,e.parent)?Ia(["{",r("expression"),wee,"}"]):Ia(["{",Ol([yl,r("expression")]),yl,wee,"}"])}function CQa(e,t,r){var n,a;let{node:o}=e,l=sg(o.name)||sg(o.typeParameters)||sg(o.typeArguments);if(o.selfClosing&&o.attributes.length===0&&!l)return["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(((n=o.attributes)==null?void 0:n.length)===1&&hV(o.attributes[0].value)&&!o.attributes[0].value.value.includes(` -`)&&!l&&!sg(o.attributes[0]))return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," ",...e.map(r,"attributes"),o.selfClosing?" />":">"]);let A=(a=o.attributes)==null?void 0:a.some(I=>hV(I.value)&&I.value.value.includes(` -`)),f=t.singleAttributePerLine&&o.attributes.length>1?Gl:qg;return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters"),Ol(e.map(()=>[f,r()],"attributes")),..._Qa(o,t,l)],{shouldBreak:A})}function _Qa(e,t,r){return e.selfClosing?[qg,"/>"]:yQa(e,t,r)?[">"]:[yl,">"]}function yQa(e,t,r){let n=e.attributes.length>0&&sg(j0(!1,e.attributes,-1),IA.Trailing);return e.attributes.length===0&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!n}function bQa(e,t,r){let{node:n}=e,a=[];a.push(""),a}function EQa(e,t){let{node:r}=e,n=sg(r),a=sg(r,IA.Line),o=r.type==="JSXOpeningFragment";return[o?"<":""]}function SQa(e,t,r){let n=u4(e,dQa(e,t,r),t);return IQa(e,n,t)}function vQa(e,t){let{node:r}=e,n=sg(r,IA.Line);return[x2(e,t,{indent:n}),n?Gl:""]}function BQa(e,t,r){let{node:n}=e;return["{",e.call(({node:a})=>{let o=["...",r()];return!sg(a)||!kbi(e)?o:[Ol([yl,u4(e,o,t)]),yl]},n.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function wQa(e,t,r){let{node:n}=e;if(n.type.startsWith("JSX"))switch(n.type){case"JSXAttribute":return hQa(e,t,r);case"JSXIdentifier":return n.name;case"JSXNamespacedName":return wC(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return wC(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return BQa(e,t,r);case"JSXExpressionContainer":return mQa(e,t,r);case"JSXFragment":case"JSXElement":return SQa(e,t,r);case"JSXOpeningElement":return CQa(e,t,r);case"JSXClosingElement":return bQa(e,t,r);case"JSXOpeningFragment":case"JSXClosingFragment":return EQa(e,t);case"JSXEmptyExpression":return vQa(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new CNe(n,"JSX")}}function TQa(e){if(e.children.length===0)return!0;if(e.children.length>1)return!1;let t=e.children[0];return t.type==="JSXText"&&!X4e(t)}function X4e(e){return e.type==="JSXText"&&(dbt.hasNonWhitespaceCharacter(rH(e))||!/\n/u.test(rH(e)))}function RQa(e){return e.type==="JSXExpressionContainer"&&hV(e.expression)&&e.expression.value===" "&&!sg(e.expression)}function NQa(e){let{node:t,parent:r}=e;if(!cD(t)||!cD(r))return!1;let{index:n,siblings:a}=e,o;for(let l=n;l>0;l--){let A=a[l-1];if(!(A.type==="JSXText"&&!X4e(A))){o=A;break}}return o?.type==="JSXExpressionContainer"&&o.expression.type==="JSXEmptyExpression"&&Bbt(o.expression)}function DQa(e){return Bbt(e.node)||NQa(e)}var Ybi=DQa,kQa=0;function Qbi(e,t,r){var n;let{node:a,parent:o,grandparent:l,key:A}=e,f=A!=="body"&&(o.type==="IfStatement"||o.type==="WhileStatement"||o.type==="SwitchStatement"||o.type==="DoWhileStatement"),I=a.operator==="|>"&&((n=e.root.extra)==null?void 0:n.__isUsingHackPipeline),C=dRr(e,r,t,!1,f);if(f)return C;if(I)return Ia(C);if(S_(o)&&o.callee===a||o.type==="UnaryExpression"||Uv(o)&&!o.computed)return Ia([Ol([yl,...C]),yl]);let b=o.type==="ReturnStatement"||o.type==="ThrowStatement"||o.type==="JSXExpressionContainer"&&l.type==="JSXAttribute"||a.operator!=="|"&&o.type==="JsExpressionRoot"||a.type!=="NGPipeExpression"&&(o.type==="NGRoot"&&t.parser==="__ng_binding"||o.type==="NGMicrosyntaxExpression"&&l.type==="NGMicrosyntax"&&l.body.length===1)||a===o.body&&o.type==="ArrowFunctionExpression"||a!==o.body&&o.type==="ForStatement"||o.type==="ConditionalExpression"&&l.type!=="ReturnStatement"&&l.type!=="ThrowStatement"&&!S_(l)||o.type==="TemplateLiteral",E=o.type==="AssignmentExpression"||o.type==="VariableDeclarator"||o.type==="ClassProperty"||o.type==="PropertyDefinition"||o.type==="TSAbstractPropertyDefinition"||o.type==="ClassPrivateProperty"||Nee(o),N=vee(a.left)&&BRr(a.operator,a.left.operator);if(b||J4e(a)&&!N||!J4e(a)&&E)return Ia(C);if(C.length===0)return"";let B=cD(a.right),F=C.findIndex(fe=>typeof fe!="string"&&!Array.isArray(fe)&&fe.type===nH),Q=C.slice(0,F===-1?1:F+1),J=C.slice(Q.length,B?-1:void 0),ae=Symbol("logicalChain-"+ ++kQa),ne=Ia([...Q,Ol(J)],{id:ae});if(!B)return ne;let ce=j0(!1,C,-1);return Ia([ne,wbt(ce,{groupId:ae})])}function dRr(e,t,r,n,a){var o;let{node:l}=e;if(!vee(l))return[Ia(t())];let A=[];BRr(l.operator,l.left.operator)?A=e.call(Q=>dRr(Q,t,r,!0,a),"left"):A.push(Ia(t("left")));let f=J4e(l),I=(l.operator==="|>"||l.type==="NGPipeExpression"||xQa(e,r))&&!mce(r.originalText,l.right),C=!sg(l.right,IA.Leading,bbi)&&mce(r.originalText,l.right),b=l.type==="NGPipeExpression"?"|":l.operator,E=l.type==="NGPipeExpression"&&l.arguments.length>0?Ia(Ol([yl,": ",wC([qg,": "],e.map(()=>C6(2,Ia(t())),"arguments"))])):"",N;if(f)N=[b," ",t("right"),E];else{let Q=b==="|>"&&((o=e.root.extra)!=null&&o.__isUsingHackPipeline)?e.call(J=>dRr(J,t,r,!0,a),"right"):t("right");if(r.experimentalOperatorPosition==="start"){let J="";if(C)switch(Sce(Q)){case Bee:J=Q.splice(0,1)[0];break;case Dee:J=Q.contents.splice(0,1)[0];break}N=[qg,J,b," ",Q,E]}else N=[I?qg:"",b,I?" ":qg,Q,E]}let{parent:B}=e,F=sg(l.left,IA.Trailing|IA.Line);if((F||!(a&&l.type==="LogicalExpression")&&B.type!==l.type&&l.left.type!==l.type&&l.right.type!==l.type)&&(N=Ia(N,{shouldBreak:F})),r.experimentalOperatorPosition==="start"?A.push(f||C?" ":"",N):A.push(I?"":" ",N),n&&sg(l)){let Q=RRr(u4(e,A,r));return Q.type===bce?Q.parts:Array.isArray(Q)?Q:[Q]}return A}function J4e(e){return e.type!=="LogicalExpression"?!1:!!(g4(e.right)&&e.right.properties.length>0||Hk(e.right)&&e.right.elements.length>0||cD(e.right))}var Zyi=e=>e.type==="BinaryExpression"&&e.operator==="|";function xQa(e,t){return(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&Zyi(e.node)&&!e.hasAncestor(r=>!Zyi(r)&&r.type!=="JsExpressionRoot")}function GQa(e,t,r){let{node:n}=e;if(n.type.startsWith("NG"))switch(n.type){case"NGRoot":return[r("node"),sg(n.node)?" //"+cNe(n.node)[0].value.trimEnd():""];case"NGPipeExpression":return Qbi(e,t,r);case"NGChainedExpression":return Ia(wC([";",qg],e.map(()=>ZQa(e)?r():["(",r(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map(()=>[e.isFirst?"":Lyi(e)?" ":[";",qg],r()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(n.name)?n.name:JSON.stringify(n.name);case"NGMicrosyntaxExpression":return[r("expression"),n.alias===null?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:a,parent:o}=e,l=Lyi(e)||(a===1&&(n.key.name==="then"||n.key.name==="else"||n.key.name==="as")||(a===2||a===3)&&(n.key.name==="else"&&o.body[a-1].type==="NGMicrosyntaxKeyedExpression"&&o.body[a-1].key.name==="then"||n.key.name==="track"))&&o.body[0].type==="NGMicrosyntaxExpression";return[r("key"),l?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),n.value===null?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new CNe(n,"Angular")}}function Lyi({node:e,index:t}){return e.type==="NGMicrosyntaxKeyedExpression"&&e.key.name==="of"&&t===1}var FQa=b0(["CallExpression","OptionalCallExpression","AssignmentExpression"]);function ZQa({node:e}){return rRr(e,FQa)}function Xbi(e,t,r){let{node:n}=e;return Ia([wC(qg,e.map(r,"decorators")),Jbi(n,t)?Gl:qg])}function LQa(e,t,r){return Ubi(e.node)?[wC(Gl,e.map(r,"declaration","decorators")),Gl]:""}function VQa(e,t,r){let{node:n,parent:a}=e,{decorators:o}=n;if(!Q_(o)||Ubi(a)||Ybi(e))return"";let l=n.type==="ClassExpression"||n.type==="ClassDeclaration"||Jbi(n,t);return[e.key==="declaration"&&NMa(a)?Gl:l?_6:"",wC(qg,e.map(r,"decorators")),qg]}function Jbi(e,t){return e.decorators.some(r=>_P(t.originalText,TC(r)))}function Ubi(e){var t;if(e.type!=="ExportDefaultDeclaration"&&e.type!=="ExportNamedDeclaration"&&e.type!=="DeclareExportDeclaration")return!1;let r=(t=e.declaration)==null?void 0:t.decorators;return Q_(r)&&Ebt(e,r[0])}var Cbt=class extends Error{name="ArgExpansionBailout"};function WQa(e,t,r){let{node:n}=e,a=oH(n);if(a.length===0)return["(",x2(e,t),")"];let o=a.length-1;if(MQa(a)){let b=["("];return hbt(e,(E,N)=>{b.push(r()),N!==o&&b.push(", ")}),b.push(")"),b}let l=!1,A=[];hbt(e,({node:b},E)=>{let N=r();E===o||(Ree(b,t)?(l=!0,N=[N,",",Gl,Gl]):N=[N,",",qg]),A.push(N)});let f=!t.parser.startsWith("__ng_")&&n.type!=="ImportExpression"&&Tee(t,"all")?",":"";function I(){return Ia(["(",Ol([qg,...A]),f,qg,")"],{shouldBreak:!0})}if(l||e.parent.type!=="Decorator"&&OMa(a))return I();if(PQa(a)){let b=A.slice(1);if(b.some(eL))return I();let E;try{E=r(Byi(n,0),{expandFirstArg:!0})}catch(N){if(N instanceof Cbt)return I();throw N}return eL(E)?[_6,Nme([["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])]:Nme([["(",E,", ",...b,")"],["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])}if(OQa(a,A,t)){let b=A.slice(0,-1);if(b.some(eL))return I();let E;try{E=r(Byi(n,-1),{expandLastArg:!0})}catch(N){if(N instanceof Cbt)return I();throw N}return eL(E)?[_6,Nme([["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])]:Nme([["(",...b,E,")"],["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])}let C=["(",Ol([yl,...A]),Ah(f),yl,")"];return gbi(e)?C:Ia(C,{shouldBreak:A.some(eL)||l})}function M4e(e,t=!1){return g4(e)&&(e.properties.length>0||sg(e))||Hk(e)&&(e.elements.length>0||sg(e))||e.type==="TSTypeAssertion"&&M4e(e.expression)||I6(e)&&M4e(e.expression)||e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&(!e.returnType||!e.returnType.typeAnnotation||e.returnType.typeAnnotation.type!=="TSTypeReference"||HQa(e.body))&&(e.body.type==="BlockStatement"||e.body.type==="ArrowFunctionExpression"&&M4e(e.body,!0)||g4(e.body)||Hk(e.body)||!t&&(S_(e.body)||e.body.type==="ConditionalExpression")||cD(e.body))||e.type==="DoExpression"||e.type==="ModuleExpression"}function OQa(e,t,r){var n,a;let o=j0(!1,e,-1);if(e.length===1){let A=j0(!1,t,-1);if((n=A.label)!=null&&n.embed&&((a=A.label)==null?void 0:a.hug)!==!1)return!0}let l=j0(!1,e,-2);return!sg(o,IA.Leading)&&!sg(o,IA.Trailing)&&M4e(o)&&(!l||l.type!==o.type)&&(e.length!==2||l.type!=="ArrowFunctionExpression"||!Hk(o))&&!(e.length>1&&_Ei(o,r))}function PQa(e){if(e.length!==2)return!1;let[t,r]=e;return t.type==="ModuleExpression"&&YQa(r)?!0:!sg(t)&&(t.type==="FunctionExpression"||t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement")&&r.type!=="FunctionExpression"&&r.type!=="ArrowFunctionExpression"&&r.type!=="ConditionalExpression"&&Kbi(r)&&!M4e(r)}function Kbi(e){if(e.type==="ParenthesizedExpression")return Kbi(e.expression);if(I6(e)||e.type==="TypeCastExpression"){let{typeAnnotation:t}=e;if(t.type==="TypeAnnotation"&&(t=t.typeAnnotation),t.type==="TSArrayType"&&(t=t.elementType,t.type==="TSArrayType"&&(t=t.elementType)),t.type==="GenericTypeAnnotation"||t.type==="TSTypeReference"){let r=t.typeArguments??t.typeParameters;r?.params.length===1&&(t=r.params[0])}return SRr(t)&&l4(e.expression,1)}return dNe(e)&&oH(e).length>1?!1:vee(e)?l4(e.left,1)&&l4(e.right,1):sbi(e)||l4(e)}function MQa(e){return e.length===2?Vyi(e,0):e.length===3?e[0].type==="Identifier"&&Vyi(e,1):!1}function Vyi(e,t){let r=e[t],n=e[t+1];return r.type==="ArrowFunctionExpression"&&FG(r).length===0&&r.body.type==="BlockStatement"&&n.type==="ArrayExpression"&&!e.some(a=>sg(a))}function HQa(e){return e.type==="BlockStatement"&&(e.body.some(t=>t.type!=="EmptyStatement")||sg(e,IA.Dangling))}function YQa(e){return e.type==="ObjectExpression"&&e.properties.length===1&&Nee(e.properties[0])&&e.properties[0].key.type==="Identifier"&&e.properties[0].key.name==="type"&&hV(e.properties[0].value)&&e.properties[0].value.value==="module"}var pRr=WQa,QQa=e=>((e.type==="ChainExpression"||e.type==="TSNonNullExpression")&&(e=e.expression),S_(e)&&oH(e).length>0);function XQa(e,t,r){var n;let a=r("object"),o=jbi(e,t,r),{node:l}=e,A=e.findAncestor(C=>!(Uv(C)||C.type==="TSNonNullExpression")),f=e.findAncestor(C=>!(C.type==="ChainExpression"||C.type==="TSNonNullExpression")),I=A&&(A.type==="NewExpression"||A.type==="BindExpression"||A.type==="AssignmentExpression"&&A.left.type!=="Identifier")||l.computed||l.object.type==="Identifier"&&l.property.type==="Identifier"&&!Uv(f)||(f.type==="AssignmentExpression"||f.type==="VariableDeclarator")&&(QQa(l.object)||((n=a.label)==null?void 0:n.memberChain));return U4e(a.label,[a,I?o:Ia(Ol([yl,o]))])}function jbi(e,t,r){let n=r("property"),{node:a}=e,o=tL(e);return a.computed?!a.property||See(a.property)?[o,"[",n,"]"]:Ia([o,"[",Ol([yl,n]),yl,"]"]):[o,".",n]}function zbi(e,t,r){if(e.node.type==="ChainExpression")return e.call(()=>zbi(e,t,r),"expression");let{parent:n}=e,a=!n||n.type==="ExpressionStatement",o=[];function l(Le){let{originalText:Je}=t,ft=mNe(Je,TC(Le));return Je.charAt(ft)===")"?ft!==!1&&_Rr(Je,ft+1):Ree(Le,t)}function A(){let{node:Le}=e;if(Le.type==="ChainExpression")return e.call(A,"expression");if(S_(Le)&&(oNe(Le.callee)||S_(Le.callee))){let Je=l(Le);o.unshift({node:Le,hasTrailingEmptyLine:Je,printed:[u4(e,[tL(e),kme(e,t,r),pRr(e,t,r)],t),Je?Gl:""]}),e.call(A,"callee")}else oNe(Le)?(o.unshift({node:Le,needsParens:Ome(e,t),printed:u4(e,Uv(Le)?jbi(e,t,r):mEi(e,t,r),t)}),e.call(A,"object")):Le.type==="TSNonNullExpression"?(o.unshift({node:Le,printed:u4(e,"!",t)}),e.call(A,"expression")):o.unshift({node:Le,printed:r()})}let{node:f}=e;o.unshift({node:f,printed:[tL(e),kme(e,t,r),pRr(e,t,r)]}),f.callee&&e.call(A,"callee");let I=[],C=[o[0]],b=1;for(;b0&&I.push(C);function N(Le){return/^[A-Z]|^[$_]+$/u.test(Le)}function B(Le){return Le.length<=t.tabWidth}function F(Le){var Je;let ft=(Je=Le[1][0])==null?void 0:Je.node.computed;if(Le[0].length===1){let Ot=Le[0][0].node;return Ot.type==="ThisExpression"||Ot.type==="Identifier"&&(N(Ot.name)||a&&B(Ot.name)||ft)}let lt=j0(!1,Le[0],-1).node;return Uv(lt)&<.property.type==="Identifier"&&(N(lt.property.name)||ft)}let Q=I.length>=2&&!sg(I[1][0].node)&&F(I);function J(Le){let Je=Le.map(ft=>ft.printed);return Le.length>0&&j0(!1,Le,-1).needsParens?["(",...Je,")"]:Je}function ae(Le){return Le.length===0?"":Ol([Gl,wC(Gl,Le.map(J))])}let ne=I.map(J),ce=ne,fe=Q?3:2,ue=I.flat(),de=ue.slice(1,-1).some(Le=>sg(Le.node,IA.Leading))||ue.slice(0,-1).some(Le=>sg(Le.node,IA.Trailing))||I[fe]&&sg(I[fe][0].node,IA.Leading);if(I.length<=fe&&!de&&!I.some(Le=>j0(!1,Le,-1).hasTrailingEmptyLine))return gbi(e)?ce:Ia(ce);let be=j0(!1,I[Q?1:0],-1).node,Se=!S_(be)&&l(be),De=[J(I[0]),Q?I.slice(1,2).map(J):"",Se?Gl:"",ae(I.slice(Q?2:1))],k=o.map(({node:Le})=>Le).filter(S_);function tt(){let Le=j0(!1,j0(!1,I,-1),-1).node,Je=j0(!1,ne,-1);return S_(Le)&&eL(Je)&&k.slice(0,-1).some(ft=>ft.arguments.some(Y4e))}let ze;return de||k.length>2&&k.some(Le=>!Le.arguments.every(Je=>l4(Je)))||ne.slice(0,-1).some(eL)||tt()?ze=Ia(De):ze=[eL(ce)||Se?_6:"",Nme([ce,De])],U4e({memberChain:!0},ze)}var JQa=zbi;function qbi(e,t,r){var n;let{node:a}=e,o=a.type==="NewExpression",l=a.type==="ImportExpression",A=tL(e),f=oH(a),I=f.length===1&&lbi(f[0],t.originalText);if(I||UQa(e)||vbt(a,e.parent)){let b=[];if(hbt(e,()=>{b.push(r())}),!(I&&(n=b[0].label)!=null&&n.embed))return[o?"new ":"",Wyi(e,r),A,kme(e,t,r),"(",wC(", ",b),")"]}if(!l&&!o&&oNe(a.callee)&&!e.call(b=>Ome(b,t),"callee",...a.callee.type==="ChainExpression"?["expression"]:[]))return JQa(e,t,r);let C=[o?"new ":"",Wyi(e,r),A,kme(e,t,r),pRr(e,t,r)];return l||S_(a.callee)?Ia(C):C}function Wyi(e,t){let{node:r}=e;return r.type==="ImportExpression"?`import${r.phase?`.${r.phase}`:""}`:t("callee")}function UQa(e){let{node:t}=e;if(t.type!=="CallExpression"||t.optional||t.callee.type!=="Identifier")return!1;let r=oH(t);return t.callee.name==="require"?r.length===1&&hV(r[0])||r.length>1:t.callee.name==="define"&&e.parent.type==="ExpressionStatement"?r.length===1||r.length===2&&r[0].type==="ArrayExpression"||r.length===3&&hV(r[0])&&r[1].type==="ArrayExpression":!1}function K4e(e,t,r,n,a,o){let l=zQa(e,t,r,n,o),A=o?r(o,{assignmentLayout:l}):"";switch(l){case"break-after-operator":return Ia([Ia(n),a,Ia(Ol([qg,A]))]);case"never-break-after-operator":return Ia([Ia(n),a," ",A]);case"fluid":{let f=Symbol("assignment");return Ia([Ia(n),a,Ia(Ol(qg),{id:f}),wee,wbt(A,{groupId:f})])}case"break-lhs":return Ia([n,a," ",Ia(A)]);case"chain":return[Ia(n),a,qg,A];case"chain-tail":return[Ia(n),a,Ol([qg,A])];case"chain-tail-arrow-chain":return[Ia(n),a,A];case"only-left":return n}}function KQa(e,t,r){let{node:n}=e;return K4e(e,t,r,r("left"),[" ",n.operator],"right")}function jQa(e,t,r){return K4e(e,t,r,r("id")," =","init")}function zQa(e,t,r,n,a){let{node:o}=e,l=o[a];if(!l)return"only-left";let A=!pbt(l);if(e.match(pbt,$bi,C=>!A||C.type!=="ExpressionStatement"&&C.type!=="VariableDeclaration"))return A?l.type==="ArrowFunctionExpression"&&l.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!A&&pbt(l.right)||mce(t.originalText,l))return"break-after-operator";if(o.type==="ImportAttribute"||l.type==="CallExpression"&&l.callee.name==="require"||t.parser==="json5"||t.parser==="jsonc"||t.parser==="json")return"never-break-after-operator";let f=sHa(n);if($Qa(o)||nXa(o)||eEi(o)&&f)return"break-lhs";let I=sXa(o,n,t);return e.call(()=>qQa(e,t,r,I),a)?"break-after-operator":eXa(o)?"break-lhs":!f&&(I||l.type==="TemplateLiteral"||l.type==="TaggedTemplateExpression"||l.type==="BooleanLiteral"||See(l)||l.type==="ClassExpression")?"never-break-after-operator":"fluid"}function qQa(e,t,r,n){let a=e.node;if(vee(a)&&!J4e(a))return!0;switch(a.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!cXa(a))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:I}=a;return vee(I)&&!J4e(I)}let{consequent:A,alternate:f}=a;return A.type==="ConditionalExpression"||f.type==="ConditionalExpression"}case"ClassExpression":return Q_(a.decorators)}if(n)return!1;let o=a,l=[];for(;;)if(o.type==="UnaryExpression"||o.type==="AwaitExpression"||o.type==="YieldExpression"&&o.argument!==null)o=o.argument,l.push("argument");else if(o.type==="TSNonNullExpression")o=o.expression,l.push("expression");else break;return!!(hV(o)||e.call(()=>tEi(e,t,r),...l))}function $Qa(e){if($bi(e)){let t=e.left||e.id;return t.type==="ObjectPattern"&&t.properties.length>2&&t.properties.some(r=>{var n;return Nee(r)&&(!r.shorthand||((n=r.value)==null?void 0:n.type)==="AssignmentPattern")})}return!1}function pbt(e){return e.type==="AssignmentExpression"}function $bi(e){return pbt(e)||e.type==="VariableDeclarator"}function eXa(e){let t=rXa(e);if(Q_(t)){let r=e.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(t.length>1&&t.some(n=>n[r]||n.default))return!0}return!1}var tXa=b0(["TSTypeAliasDeclaration","TypeAlias"]);function rXa(e){var t;if(tXa(e))return(t=e.typeParameters)==null?void 0:t.params}function nXa(e){if(e.type!=="VariableDeclarator")return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=Oyi(t.typeAnnotation);return Q_(r)&&r.length>1&&r.some(n=>Q_(Oyi(n))||n.type==="TSConditionalType")}function eEi(e){var t;return e.type==="VariableDeclarator"&&((t=e.init)==null?void 0:t.type)==="ArrowFunctionExpression"}var iXa=b0(["TSTypeReference","GenericTypeAnnotation"]);function Oyi(e){var t;if(iXa(e))return(t=e.typeArguments??e.typeParameters)==null?void 0:t.params}function tEi(e,t,r,n=!1){var a;let{node:o}=e,l=()=>tEi(e,t,r,!0);if(o.type==="ChainExpression"||o.type==="TSNonNullExpression")return e.call(l,"expression");if(S_(o)){if((a=qbi(e,t,r).label)!=null&&a.memberChain)return!1;let A=oH(o);return!(A.length===0||A.length===1&&vRr(A[0],t))||oXa(o,r)?!1:e.call(l,"callee")}return Uv(o)?e.call(l,"object"):n&&(o.type==="Identifier"||o.type==="ThisExpression")}function sXa(e,t,r){return Nee(e)?(t=RRr(t),typeof t=="string"&&lNe(t)1)return!0;if(r.length===1){let a=r[0];if(Cce(a)||wRr(a)||a.type==="TSTypeLiteral"||a.type==="ObjectTypeAnnotation")return!0}let n=e.typeParameters?"typeParameters":"typeArguments";if(eL(t(n)))return!0}return!1}function aXa(e){var t;return(t=e.typeParameters??e.typeArguments)==null?void 0:t.params}function cXa(e){function t(r){switch(r.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!r.typeParameters;case"TSTypeReference":return!!(r.typeArguments??r.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}function Pme(e,t,r,n,a){let o=e.node,l=FG(o),A=a?kme(e,r,t):"";if(l.length===0)return[A,"(",x2(e,r,{filter:N=>A4(r.originalText,TC(N))===")"}),")"];let{parent:f}=e,I=vbt(f),C=rEi(o),b=[];if(XMa(e,(N,B)=>{let F=B===l.length-1;F&&o.rest&&b.push("..."),b.push(t()),!F&&(b.push(","),I||C?b.push(" "):Ree(l[B],r)?b.push(Gl,Gl):b.push(qg))}),n&&!uXa(e)){if(eL(A)||eL(b))throw new Cbt;return Ia([iRr(A),"(",iRr(b),")"])}let E=l.every(N=>!Q_(N.decorators));return C&&E?[A,"(",...b,")"]:I?[A,"(",...b,")"]:(obi(f)||GMa(f)||f.type==="TypeAlias"||f.type==="UnionTypeAnnotation"||f.type==="IntersectionTypeAnnotation"||f.type==="FunctionTypeAnnotation"&&f.returnType===o)&&l.length===1&&l[0].name===null&&o.this!==l[0]&&l[0].typeAnnotation&&o.typeParameters===null&&SRr(l[0].typeAnnotation)&&!o.rest?r.arrowParens==="always"||o.type==="HookTypeAnnotation"?["(",...b,")"]:b:[A,"(",Ol([yl,...b]),Ah(!QMa(o)&&Tee(r,"all")?",":""),yl,")"]}function rEi(e){if(!e)return!1;let t=FG(e);if(t.length!==1)return!1;let[r]=t;return!sg(r)&&(r.type==="ObjectPattern"||r.type==="ArrayPattern"||r.type==="Identifier"&&r.typeAnnotation&&(r.typeAnnotation.type==="TypeAnnotation"||r.typeAnnotation.type==="TSTypeAnnotation")&&hce(r.typeAnnotation.typeAnnotation)||r.type==="FunctionTypeParam"&&hce(r.typeAnnotation)&&r!==e.rest||r.type==="AssignmentPattern"&&(r.left.type==="ObjectPattern"||r.left.type==="ArrayPattern")&&(r.right.type==="Identifier"||g4(r.right)&&r.right.properties.length===0||Hk(r.right)&&r.right.elements.length===0))}function lXa(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}function _Ne(e,t){var r;let n=lXa(e);if(!n)return!1;let a=(r=e.typeParameters)==null?void 0:r.params;if(a){if(a.length>1)return!1;if(a.length===1){let o=a[0];if(o.constraint||o.default)return!1}}return FG(e).length===1&&(hce(n)||eL(t))}function uXa(e){return e.match(t=>t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement",(t,r)=>{if(t.type==="CallExpression"&&r==="arguments"&&t.arguments.length===1&&t.callee.type==="CallExpression"){let n=t.callee.callee;return n.type==="Identifier"||n.type==="MemberExpression"&&!n.computed&&n.object.type==="Identifier"&&n.property.type==="Identifier"}return!1},(t,r)=>t.type==="VariableDeclarator"&&r==="init"||t.type==="ExportDefaultDeclaration"&&r==="declaration"||t.type==="TSExportAssignment"&&r==="expression"||t.type==="AssignmentExpression"&&r==="right"&&t.left.type==="MemberExpression"&&t.left.object.type==="Identifier"&&t.left.object.name==="module"&&t.left.property.type==="Identifier"&&t.left.property.name==="exports",t=>t.type!=="VariableDeclaration"||t.kind==="const"&&t.declarations.length===1)}function gXa(e){let t=FG(e);return t.length>1&&t.some(r=>r.type==="TSParameterProperty")}var AXa=b0(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),dXa=b0(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]);function pXa(e){let{types:t}=e;if(t.some(n=>sg(n)))return!1;let r=t.find(n=>dXa(n));return r?t.every(n=>n===r||AXa(n)):!1}function nEi(e){return SRr(e)||hce(e)?!0:Cce(e)?pXa(e):!1}function fXa(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[mV(e),"opaque type ",r("id"),r("typeParameters")];return a.supertype&&o.push(": ",r("supertype")),a.impltype&&o.push(" = ",r("impltype")),o.push(n),o}function iEi(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[mV(e)];o.push("type ",r("id"),r("typeParameters"));let l=a.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[K4e(e,t,r,o," =",l),n]}function sEi(e,t,r){let n=!1;return Ia(e.map(({isFirst:a,previous:o,node:l,index:A})=>{let f=r();if(a)return f;let I=hce(l),C=hce(o);return C&&I?[" & ",n?Ol(f):f]:!C&&!I?t.experimentalOperatorPosition==="start"?Ol([qg,"& ",f]):Ol([" &",qg,f]):(A>1&&(n=!0),[" & ",A>1?Ol(f):f])},"types"))}function oEi(e,t,r){let{node:n}=e,{parent:a}=e,o=a.type!=="TypeParameterInstantiation"&&(!_ce(a)||!t.experimentalTernaries)&&a.type!=="TSTypeParameterInstantiation"&&a.type!=="GenericTypeAnnotation"&&a.type!=="TSTypeReference"&&a.type!=="TSTypeAssertion"&&a.type!=="TupleTypeAnnotation"&&a.type!=="TSTupleType"&&!(a.type==="FunctionTypeParam"&&!a.name&&e.grandparent.this!==a)&&!((a.type==="TypeAlias"||a.type==="VariableDeclarator"||a.type==="TSTypeAliasDeclaration")&&mce(t.originalText,n)),l=nEi(n),A=e.map(C=>{let b=r();return l||(b=C6(2,b)),u4(C,b,t)},"types");if(l)return wC(" | ",A);let f=o&&!mce(t.originalText,n),I=[Ah([f?qg:"","| "]),wC([qg,"| "],A)];return Ome(e,t)?Ia([Ol(I),yl]):(a.type==="TupleTypeAnnotation"||a.type==="TSTupleType")&&a[a.type==="TupleTypeAnnotation"&&a.types?"types":"elementTypes"].length>1?Ia([Ol([Ah(["(",yl]),I]),yl,Ah(")")]):Ia(o?Ol(I):I)}function IXa(e){var t;let{node:r,parent:n}=e;return r.type==="FunctionTypeAnnotation"&&(obi(n)||!((n.type==="ObjectTypeProperty"||n.type==="ObjectTypeInternalSlot")&&!n.variance&&!n.optional&&Ebt(n,r)||n.type==="ObjectTypeCallProperty"||((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareFunction"))}function aEi(e,t,r){let{node:n}=e,a=[Tbt(e)];(n.type==="TSConstructorType"||n.type==="TSConstructSignatureDeclaration")&&a.push("new ");let o=Pme(e,r,t,!1,!0),l=[];return n.type==="FunctionTypeAnnotation"?l.push(IXa(e)?" => ":": ",r("returnType")):l.push(Mk(e,r,n.returnType?"returnType":"typeAnnotation")),_Ne(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function cEi(e,t,r){return[r("objectType"),tL(e),"[",r("indexType"),"]"]}function lEi(e,t,r){return["infer ",r("typeParameter")]}function Pyi(e,t,r){let{node:n}=e;return[n.postfix?"":r,Mk(e,t),n.postfix?r:""]}function uEi(e,t,r){let{node:n}=e;return["...",...n.type==="TupleTypeSpreadElement"&&n.label?[r("label"),": "]:[],r("typeAnnotation")]}function gEi(e,t,r){let{node:n}=e;return[n.variance?r("variance"):"",r("label"),n.optional?"?":"",": ",r("elementType")]}var hXa=new WeakSet;function Mk(e,t,r="typeAnnotation"){let{node:{[r]:n}}=e;if(!n)return"";let a=!1;if(n.type==="TSTypeAnnotation"||n.type==="TypeAnnotation"){let o=e.call(AEi,r);(o==="=>"||o===":"&&sg(n,IA.Leading))&&(a=!0),hXa.add(n)}return a?[" ",t(r)]:t(r)}var AEi=e=>e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>(r==="returnType"||r==="typeAnnotation")&&(t.type==="TSFunctionType"||t.type==="TSConstructorType"))?"=>":e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>r==="typeAnnotation"&&(t.type==="TSJSDocNullableType"||t.type==="TSJSDocNonNullableType"||t.type==="TSTypePredicate"))||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareFunction")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareHook")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="bound"&&t.type==="TypeParameter"&&t.usesExtendsBound)?"":":";function dEi(e,t,r){let n=AEi(e);return n?[n," ",r("typeAnnotation")]:r("typeAnnotation")}function pEi(e){return[e("elementType"),"[]"]}function fEi({node:e},t){let r=e.type==="TSTypeQuery"?"exprName":"argument",n=e.type==="TypeofTypeAnnotation"||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(n)]}function IEi(e,t){let{node:r}=e;return[r.type==="TSTypePredicate"&&r.asserts?"asserts ":r.type==="TypePredicate"&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",Mk(e,t)]:""]}function tL(e){let{node:t}=e;return!t.optional||t.type==="Identifier"&&t===e.parent.key?"":S_(t)||Uv(t)&&t.computed||t.type==="OptionalIndexedAccessType"?"?.":"?"}function hEi(e){return e.node.definite||e.match(void 0,(t,r)=>r==="id"&&t.type==="VariableDeclarator"&&t.definite)?"!":""}var mXa=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]);function mV(e){let{node:t}=e;return t.declare||mXa.has(t.type)&&e.parent.type!=="DeclareExportDeclaration"?"declare ":""}var CXa=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function Tbt({node:e}){return e.abstract||CXa.has(e.type)?"abstract ":""}function kme(e,t,r){let n=e.node;return n.typeArguments?r("typeArguments"):n.typeParameters?r("typeParameters"):""}function mEi(e,t,r){return["::",r("callee")]}function fce(e,t,r){return e.type==="EmptyStatement"?";":e.type==="BlockStatement"||r?[" ",t]:Ol([qg,t])}function CEi(e,t){return["...",t("argument"),Mk(e,t)]}function _bt(e){return e.accessibility?e.accessibility+" ":""}function _Xa(e,t,r,n){let{node:a}=e,o=a.inexact?"...":"";return sg(a,IA.Dangling)?Ia([r,o,x2(e,t,{indent:!0}),yl,n]):[r,o,n]}function VRr(e,t,r){let{node:n}=e,a=[],o=n.type==="TupleExpression"?"#[":"[",l="]",A=n.type==="TupleTypeAnnotation"&&n.types?"types":n.type==="TSTupleType"||n.type==="TupleTypeAnnotation"?"elementTypes":"elements",f=n[A];if(f.length===0)a.push(_Xa(e,t,o,l));else{let I=j0(!1,f,-1),C=I?.type!=="RestElement"&&!n.inexact,b=I===null,E=Symbol("array"),N=!t.__inJestEach&&f.length>1&&f.every((Q,J,ae)=>{let ne=Q?.type;if(!Hk(Q)&&!g4(Q))return!1;let ce=ae[J+1];if(ce&&ne!==ce.type)return!1;let fe=Hk(Q)?"elements":"properties";return Q[fe]&&Q[fe].length>1}),B=_Ei(n,t),F=C?b?",":Tee(t)?B?Ah(",","",{groupId:E}):Ah(","):"":"";a.push(Ia([o,Ol([yl,B?bXa(e,t,r,F):[yXa(e,t,A,n.inexact,r),F],x2(e,t)]),yl,l],{shouldBreak:N,id:E}))}return a.push(tL(e),Mk(e,r)),a}function _Ei(e,t){return Hk(e)&&e.elements.length>1&&e.elements.every(r=>r&&(See(r)||ibi(r)&&!sg(r.argument))&&!sg(r,IA.Trailing|IA.Line,n=>!_P(t.originalText,OS(n),{backwards:!0})))}function yEi({node:e},{originalText:t}){let r=a=>mRr(t,CRr(t,a)),n=a=>t[a]===","?a:n(r(a+1));return _Rr(t,n(TC(e)))}function yXa(e,t,r,n,a){let o=[];return e.each(({node:l,isLast:A})=>{o.push(l?Ia(a()):""),(!A||n)&&o.push([",",qg,l&&yEi(e,t)?yl:""])},r),n&&o.push("..."),o}function bXa(e,t,r,n){let a=[];return e.each(({isLast:o,next:l})=>{a.push([r(),o?n:","]),o||a.push(yEi(e,t)?[Gl,Gl]:sg(l,IA.Leading|IA.Line)?Gl:qg)},"elements"),mbi(a)}var EXa=/^[\$A-Z_a-z\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][\$0-9A-Z_a-z\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]*$/,SXa=e=>EXa.test(e),vXa=SXa;function BXa(e){return e.length===1?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}var pNe=BXa,fbt=new WeakMap;function bEi(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function Myi(e,t){return t.parser==="json"||t.parser==="jsonc"||!hV(e.key)||ANe(rH(e.key),t).slice(1,-1)!==e.key.value?!1:!!(vXa(e.key.value)&&!(t.parser==="babel-ts"&&e.type==="ClassProperty"||t.parser==="typescript"&&e.type==="PropertyDefinition")||bEi(e.key.value)&&String(Number(e.key.value))===e.key.value&&e.type!=="ImportAttribute"&&(t.parser==="babel"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree"))}function wXa(e,t){let{key:r}=e.node;return(r.type==="Identifier"||See(r)&&bEi(pNe(rH(r)))&&String(r.value)===pNe(rH(r))&&!(t.parser==="typescript"||t.parser==="babel-ts"))&&(t.parser==="json"||t.parser==="jsonc"||t.quoteProps==="consistent"&&fbt.get(e.parent))}function j4e(e,t,r){let{node:n}=e;if(n.computed)return["[",r("key"),"]"];let{parent:a}=e,{key:o}=n;if(t.quoteProps==="consistent"&&!fbt.has(a)){let l=e.siblings.some(A=>!A.computed&&hV(A.key)&&!Myi(A,t));fbt.set(a,l)}if(wXa(e,t)){let l=ANe(JSON.stringify(o.type==="Identifier"?o.name:o.value.toString()),t);return e.call(A=>u4(A,l,t),"key")}return Myi(n,t)&&(t.quoteProps==="as-needed"||t.quoteProps==="consistent"&&!fbt.get(a))?e.call(l=>u4(l,/^\d/u.test(o.value)?pNe(o.value):o.value,t),"key"):r("key")}function zTr(e,t,r){let{node:n}=e;return n.shorthand?r("value"):K4e(e,t,r,j4e(e,t,r),":","value")}var TXa=({node:e,key:t,parent:r})=>t==="value"&&e.type==="FunctionExpression"&&(r.type==="ObjectMethod"||r.type==="ClassMethod"||r.type==="ClassPrivateMethod"||r.type==="MethodDefinition"||r.type==="TSAbstractMethodDefinition"||r.type==="TSDeclareMethod"||r.type==="Property"&&Sbt(r));function EEi(e,t,r,n){if(TXa(e))return WRr(e,r,t);let{node:a}=e,o=!1;if((a.type==="FunctionDeclaration"||a.type==="FunctionExpression")&&n!=null&&n.expandLastArg){let{parent:C}=e;S_(C)&&(oH(C).length>1||FG(a).every(b=>b.type==="Identifier"&&!b.typeAnnotation))&&(o=!0)}let l=[mV(e),a.async?"async ":"",`function${a.generator?"*":""} `,a.id?t("id"):""],A=Pme(e,t,r,o),f=Rbt(e,t),I=_Ne(a,f);return l.push(kme(e,r,t),Ia([I?Ia(A):A,f]),a.body?" ":"",t("body")),r.semi&&(a.declare||!a.body)&&l.push(";"),l}function fRr(e,t,r){let{node:n}=e,{kind:a}=n,o=n.value||n,l=[];return!a||a==="init"||a==="method"||a==="constructor"?o.async&&l.push("async "):(yRr.ok(a==="get"||a==="set"),l.push(a," ")),o.generator&&l.push("*"),l.push(j4e(e,t,r),n.optional||n.key.optional?"?":"",n===o?WRr(e,t,r):r("value")),l}function WRr(e,t,r){let{node:n}=e,a=Pme(e,r,t),o=Rbt(e,r),l=gXa(n),A=_Ne(n,o),f=[kme(e,t,r),Ia([l?Ia(a,{shouldBreak:!0}):A?Ia(a):a,o])];return n.body?f.push(" ",r("body")):f.push(t.semi?";":""),f}function RXa(e){let t=FG(e);return t.length===1&&!e.typeParameters&&!sg(e,IA.Dangling)&&t[0].type==="Identifier"&&!t[0].typeAnnotation&&!sg(t[0])&&!t[0].optional&&!e.predicate&&!e.returnType}function SEi(e,t){if(t.arrowParens==="always")return!1;if(t.arrowParens==="avoid"){let{node:r}=e;return RXa(r)}return!1}function Rbt(e,t){let{node:r}=e,n=[Mk(e,t,"returnType")];return r.predicate&&n.push(t("predicate")),n}function vEi(e,t,r){let{node:n}=e,a=t.semi?";":"",o=[];if(n.argument){let f=r("argument");kXa(t,n.argument)?f=["(",Ol([Gl,f]),Gl,")"]:(vee(n.argument)||n.argument.type==="SequenceExpression"||t.experimentalTernaries&&n.argument.type==="ConditionalExpression"&&(n.argument.consequent.type==="ConditionalExpression"||n.argument.alternate.type==="ConditionalExpression"))&&(f=Ia([Ah("("),Ol([yl,f]),yl,Ah(")")])),o.push(" ",f)}let l=sg(n,IA.Dangling),A=a&&l&&sg(n,IA.Last|IA.Line);return A&&o.push(a),l&&o.push(" ",x2(e,t)),A||o.push(a),o}function NXa(e,t,r){return["return",vEi(e,t,r)]}function DXa(e,t,r){return["throw",vEi(e,t,r)]}function kXa(e,t){if(mce(e.originalText,t)||sg(t,IA.Leading,r=>yce(e.originalText,OS(r),TC(r)))&&!cD(t))return!0;if(bRr(t)){let r=t,n;for(;n=RMa(r);)if(r=n,mce(e.originalText,r))return!0}return!1}var qTr=new WeakMap;function BEi(e){return qTr.has(e)||qTr.set(e,e.type==="ConditionalExpression"&&!$Z(e,t=>t.type==="ObjectExpression")),qTr.get(e)}var wEi=e=>e.type==="SequenceExpression";function xXa(e,t,r,n={}){let a=[],o,l=[],A=!1,f=!n.expandLastArg&&e.node.body.type==="ArrowFunctionExpression",I;(function J(){let{node:ae}=e,ne=GXa(e,t,r,n);if(a.length===0)a.push(ne);else{let{leading:ce,trailing:fe}=Hbi(e,t);a.push([ce,ne]),l.unshift(fe)}f&&(A||(A=ae.returnType&&FG(ae).length>0||ae.typeParameters||FG(ae).some(ce=>ce.type!=="Identifier"))),!f||ae.body.type!=="ArrowFunctionExpression"?(o=r("body",n),I=ae.body):e.call(J,"body")})();let C=!mce(t.originalText,I)&&(wEi(I)||FXa(I,o,t)||!A&&BEi(I)),b=e.key==="callee"&&dNe(e.parent),E=Symbol("arrow-chain"),N=ZXa(e,n,{signatureDocs:a,shouldBreak:A}),B=!1,F=!1,Q=!1;return f&&(b||n.assignmentLayout)&&(F=!0,Q=!sg(e.node,IA.Leading&IA.Line),B=n.assignmentLayout==="chain-tail-arrow-chain"||b&&!C),o=LXa(e,t,n,{bodyDoc:o,bodyComments:l,functionBody:I,shouldPutBodyOnSameLine:C}),Ia([Ia(F?Ol([Q?yl:"",N]):N,{shouldBreak:B,id:E})," =>",f?wbt(o,{groupId:E}):Ia(o),f&&b?Ah(yl,"",{groupId:E}):""])}function GXa(e,t,r,n){let{node:a}=e,o=[];if(a.async&&o.push("async "),SEi(e,t))o.push(r(["params",0]));else{let A=n.expandLastArg||n.expandFirstArg,f=Rbt(e,r);if(A){if(eL(f))throw new Cbt;f=Ia(iRr(f))}o.push(Ia([Pme(e,r,t,A,!0),f]))}let l=x2(e,t,{filter(A){let f=mNe(t.originalText,TC(A));return f!==!1&&t.originalText.slice(f,f+2)==="=>"}});return l&&o.push(" ",l),o}function FXa(e,t,r){var n,a;return Hk(e)||g4(e)||e.type==="ArrowFunctionExpression"||e.type==="DoExpression"||e.type==="BlockStatement"||cD(e)||((n=t.label)==null?void 0:n.hug)!==!1&&(((a=t.label)==null?void 0:a.embed)||lbi(e,r.originalText))}function ZXa(e,t,{signatureDocs:r,shouldBreak:n}){if(r.length===1)return r[0];let{parent:a,key:o}=e;return o!=="callee"&&dNe(a)||vee(a)?Ia([r[0]," =>",Ol([qg,wC([" =>",qg],r.slice(1))])],{shouldBreak:n}):o==="callee"&&dNe(a)||t.assignmentLayout?Ia(wC([" =>",qg],r),{shouldBreak:n}):Ia(Ol(wC([" =>",qg],r)),{shouldBreak:n})}function LXa(e,t,r,{bodyDoc:n,bodyComments:a,functionBody:o,shouldPutBodyOnSameLine:l}){let{node:A,parent:f}=e,I=r.expandLastArg&&Tee(t,"all")?Ah(","):"",C=(r.expandLastArg||f.type==="JSXExpressionContainer")&&!sg(A)?yl:"";return l&&BEi(o)?[" ",Ia([Ah("","("),Ol([yl,n]),Ah("",")"),I,C]),a]:(wEi(o)&&(n=Ia(["(",Ol([yl,n]),yl,")"])),l?[" ",n,a]:[Ol([qg,n,a]),I,C])}var VXa=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},WXa=VXa;function IRr(e,t,r,n){let{node:a}=e,o=[],l=WXa(!1,a[n],A=>A.type!=="EmptyStatement");return e.each(({node:A})=>{A.type!=="EmptyStatement"&&(o.push(r()),A!==l&&(o.push(Gl),Ree(A,t)&&o.push(Gl)))},n),o}function TEi(e,t,r){let n=OXa(e,t,r),{node:a,parent:o}=e;if(a.type==="Program"&&o?.type!=="ModuleExpression")return n?[n,Gl]:"";let l=[];if(a.type==="StaticBlock"&&l.push("static "),l.push("{"),n)l.push(Ol([Gl,n]),Gl);else{let A=e.grandparent;o.type==="ArrowFunctionExpression"||o.type==="FunctionExpression"||o.type==="FunctionDeclaration"||o.type==="ComponentDeclaration"||o.type==="HookDeclaration"||o.type==="ObjectMethod"||o.type==="ClassMethod"||o.type==="ClassPrivateMethod"||o.type==="ForStatement"||o.type==="WhileStatement"||o.type==="DoWhileStatement"||o.type==="DoExpression"||o.type==="ModuleExpression"||o.type==="CatchClause"&&!A.finalizer||o.type==="TSModuleDeclaration"||a.type==="StaticBlock"||l.push(Gl)}return l.push("}"),l}function OXa(e,t,r){let{node:n}=e,a=Q_(n.directives),o=n.body.some(f=>f.type!=="EmptyStatement"),l=sg(n,IA.Dangling);if(!a&&!o&&!l)return"";let A=[];return a&&(A.push(IRr(e,t,r,"directives")),(o||l)&&(A.push(Gl),Ree(j0(!1,n.directives,-1),t)&&A.push(Gl))),o&&A.push(IRr(e,t,r,"body")),l&&A.push(x2(e,t)),A}function PXa(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}var REi=PXa;function MXa(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function HXa(e,t,r){let{node:n}=e;return Ia([n.variance?r("variance"):"","[",Ol([r("keyTparam")," in ",r("sourceType")]),"]",MXa(n.optional),": ",r("propType")])}function NEi(e,t){return e==="+"||e==="-"?e+t:t}function YXa(e,t,r){let{node:n}=e,a=t.objectWrap==="preserve"&&yce(t.originalText,OS(n),OS(n.typeParameter));return Ia(["{",Ol([t.bracketSpacing?qg:yl,Ia([r("typeParameter"),n.optional?NEi(n.optional,"?"):"",n.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?Ah(";"):""]),x2(e,t),t.bracketSpacing?qg:yl,"}"],{shouldBreak:a})}var ORr=REi("typeParameters");function QXa(e,t,r){let{node:n}=e;return FG(n).length===1&&n.type.startsWith("TS")&&!n[r][0].constraint&&e.parent.type==="ArrowFunctionExpression"&&!(t.filepath&&/\.ts$/u.test(t.filepath))}function H4e(e,t,r,n){let{node:a}=e;if(!a[n])return"";if(!Array.isArray(a[n]))return r(n);let o=vbt(e.grandparent),l=e.match(f=>!(f[n].length===1&&hce(f[n][0])),void 0,(f,I)=>I==="typeAnnotation",f=>f.type==="Identifier",eEi);if(a[n].length===0||!l&&(o||a[n].length===1&&(a[n][0].type==="NullableTypeAnnotation"||nEi(a[n][0]))))return["<",wC(", ",e.map(r,n)),XXa(e,t),">"];let A=a.type==="TSTypeParameterInstantiation"?"":QXa(e,t,n)?",":Tee(t)?Ah(","):"";return Ia(["<",Ol([yl,wC([",",qg],e.map(r,n))]),A,yl,">"],{id:ORr(a)})}function XXa(e,t){let{node:r}=e;if(!sg(r,IA.Dangling))return"";let n=!sg(r,IA.Line),a=x2(e,t,{indent:!n});return n?a:[a,Gl]}function DEi(e,t,r){let{node:n,parent:a}=e,o=[n.const?"const ":""],l=n.type==="TSTypeParameter"?r("name"):n.name;if(a.type==="TSMappedType")return a.readonly&&o.push(NEi(a.readonly,"readonly")," "),o.push("[",l),n.constraint&&o.push(" in ",r("constraint")),a.nameType&&o.push(" as ",e.callParent(()=>r("nameType"))),o.push("]"),o;if(n.variance&&o.push(r("variance")),n.in&&o.push("in "),n.out&&o.push("out "),o.push(l),n.bound&&(n.usesExtendsBound&&o.push(" extends "),o.push(Mk(e,r,"bound"))),n.constraint){let A=Symbol("constraint");o.push(" extends",Ia(Ol(qg),{id:A}),wee,wbt(r("constraint"),{groupId:A}))}return n.default&&o.push(" = ",r("default")),Ia(o)}var kEi=b0(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function xEi(e,t,r){let{node:n}=e,a=[mV(e),Tbt(e),"class"],o=sg(n.id,IA.Trailing)||sg(n.typeParameters,IA.Trailing)||sg(n.superClass)||Q_(n.extends)||Q_(n.mixins)||Q_(n.implements),l=[],A=[];if(n.id&&l.push(" ",r("id")),l.push(r("typeParameters")),n.superClass){let C=[KXa(e,t,r),r(n.superTypeArguments?"superTypeArguments":"superTypeParameters")],b=e.call(E=>["extends ",u4(E,C,t)],"superClass");o?A.push(qg,Ia(b)):A.push(" ",b)}else A.push($Tr(e,t,r,"extends"));A.push($Tr(e,t,r,"mixins"),$Tr(e,t,r,"implements"));let f;if(o){let C;FEi(n)?C=[...l,Ol(A)]:C=Ol([...l,A]),f=GEi(n),a.push(Ia(C,{id:f}))}else a.push(...l,...A);let I=n.body;return o&&Q_(I.body)?a.push(Ah(Gl," ",{groupId:f})):a.push(" "),a.push(r("body")),a}var GEi=REi("heritageGroup");function JXa(e){return Ah(Gl,"",{groupId:GEi(e)})}function UXa(e){return["extends","mixins","implements"].reduce((t,r)=>t+(Array.isArray(e[r])?e[r].length:0),e.superClass?1:0)>1}function FEi(e){return e.typeParameters&&!sg(e.typeParameters,IA.Trailing|IA.Line)&&!UXa(e)}function $Tr(e,t,r,n){let{node:a}=e;if(!Q_(a[n]))return"";let o=x2(e,t,{marker:n});return[FEi(a)?Ah(" ",qg,{groupId:ORr(a.typeParameters)}):qg,o,o&&Gl,n,Ia(Ol([qg,wC([",",qg],e.map(r,n))]))]}function KXa(e,t,r){let n=r("superClass"),{parent:a}=e;return a.type==="AssignmentExpression"?Ia(Ah(["(",Ol([yl,n]),yl,")"],n)):n}function ZEi(e,t,r){let{node:n}=e,a=[];return Q_(n.decorators)&&a.push(Xbi(e,t,r)),a.push(_bt(n)),n.static&&a.push("static "),a.push(Tbt(e)),n.override&&a.push("override "),a.push(fRr(e,t,r)),a}function LEi(e,t,r){let{node:n}=e,a=[],o=t.semi?";":"";Q_(n.decorators)&&a.push(Xbi(e,t,r)),a.push(mV(e),_bt(n)),n.static&&a.push("static "),a.push(Tbt(e)),n.override&&a.push("override "),n.readonly&&a.push("readonly "),n.variance&&a.push(r("variance")),(n.type==="ClassAccessorProperty"||n.type==="AccessorProperty"||n.type==="TSAbstractAccessorProperty")&&a.push("accessor "),a.push(j4e(e,t,r),tL(e),hEi(e),Mk(e,r));let l=n.type==="TSAbstractPropertyDefinition"||n.type==="TSAbstractAccessorProperty";return[K4e(e,t,r,a," =",l?void 0:"value"),o]}function jXa(e,t,r){let{node:n}=e,a=[];return e.each(({node:o,next:l,isLast:A})=>{a.push(r()),!t.semi&&kEi(o)&&zXa(o,l)&&a.push(";"),A||(a.push(Gl),Ree(o,t)&&a.push(Gl))},"body"),sg(n,IA.Dangling)&&a.push(x2(e,t)),["{",a.length>0?[Ol([Gl,a]),Gl]:"","}"]}function zXa(e,t){var r;let{type:n,name:a}=e.key;if(!e.computed&&n==="Identifier"&&(a==="static"||a==="get"||a==="set")&&!e.value&&!e.typeAnnotation)return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let o=(r=t.key)==null?void 0:r.name;if(o==="in"||o==="instanceof")return!0}if(kEi(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||t.kind==="get"||t.kind==="set")return!1;let o=t.value?t.value.generator:t.generator;return!!(t.computed||o)}case"TSIndexSignature":return!0}return!1}var qXa=b0(["TSAsExpression","TSTypeAssertion","TSNonNullExpression","TSInstantiationExpression","TSSatisfiesExpression"]);function VEi(e){return qXa(e)?VEi(e.expression):e}var $Xa=b0(["FunctionExpression","ArrowFunctionExpression"]);function e4a(e){return e.type==="MemberExpression"||e.type==="OptionalMemberExpression"||e.type==="Identifier"&&e.name!=="undefined"}function t4a(e,t){if(t.semi||OEi(e,t)||PEi(e,t))return!1;let{node:r,key:n,parent:a}=e;return!!(r.type==="ExpressionStatement"&&(n==="body"&&(a.type==="Program"||a.type==="BlockStatement"||a.type==="StaticBlock"||a.type==="TSModuleBlock")||n==="consequent"&&a.type==="SwitchCase")&&e.call(()=>WEi(e,t),"expression"))}function WEi(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!SEi(e,t))return!0;break;case"UnaryExpression":{let{prefix:n,operator:a}=r;if(n&&(a==="+"||a==="-"))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(cD(r))return!0}return Ome(e,t)?!0:bRr(r)?e.call(()=>WEi(e,t),...nbi(r)):!1}function OEi({node:e,parent:t},r){return(r.parentParser==="markdown"||r.parentParser==="mdx")&&e.type==="ExpressionStatement"&&cD(e.expression)&&t.type==="Program"&&t.body.length===1}function PEi({node:e,parent:t},r){return(r.parser==="__vue_event_binding"||r.parser==="__vue_ts_event_binding")&&e.type==="ExpressionStatement"&&t.type==="Program"&&t.body.length===1}function r4a(e,t,r){let n=[r("expression")];if(PEi(e,t)){let a=VEi(e.node.expression);($Xa(a)||e4a(a))&&n.push(";")}else OEi(e,t)||t.semi&&n.push(";");return n}function n4a(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let n=e.map(r,"program","body",0,"params");if(n.length===1)return n[0];let a=wC([",",qg],n);return t.__isVueForBindingLeft?["(",Ol([yl,Ia(a)]),yl,")"]:a}if(t.__isEmbeddedTypescriptGenericParameters){let n=e.map(r,"program","body",0,"typeParameters","params");return wC([",",qg],n)}}function i4a(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return Hyi(r);case"BigIntLiteral":return hRr(r.extra.raw);case"NumericLiteral":return pNe(r.extra.raw);case"StringLiteral":return Dme(ANe(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DirectiveLiteral":return Yyi(r.extra.raw,t);case"Literal":{if(r.regex)return Hyi(r.regex);if(r.bigint)return hRr(r.raw);let{value:n}=r;return typeof n=="number"?pNe(r.raw):typeof n=="string"?s4a(e)?Yyi(r.raw,t):Dme(ANe(r.raw,t)):String(n)}}}function s4a(e){if(e.key!=="expression")return;let{parent:t}=e;return t.type==="ExpressionStatement"&&t.directive}function hRr(e){return e.toLowerCase()}function Hyi({pattern:e,flags:t}){return t=[...t].sort().join(""),`/${e}/${t}`}function Yyi(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let n=t.singleQuote?"'":'"';return n+r+n}function o4a(e,t,r){let n=e.originalText.slice(t,r);for(let a of e[Symbol.for("comments")]){let o=OS(a);if(o>r)break;let l=TC(a);if(le.type==="ExportDefaultDeclaration"||e.type==="DeclareExportDeclaration"&&e.default;function YEi(e,t,r){let{node:n}=e,a=[LQa(e,t,r),mV(e),"export",HEi(n)?" default":""],{declaration:o,exported:l}=n;return sg(n,IA.Dangling)&&(a.push(" ",x2(e,t)),ubi(n)&&a.push(Gl)),o?a.push(" ",r("declaration")):(a.push(u4a(n)),n.type==="ExportAllDeclaration"||n.type==="DeclareExportAllDeclaration"?(a.push(" *"),l&&a.push(" as ",r("exported"))):a.push(JEi(e,t,r)),a.push(XEi(e,t,r),KEi(e,t,r))),a.push(l4a(n,t)),a}var c4a=b0(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]);function l4a(e,t){return t.semi&&(!e.declaration||HEi(e)&&!c4a(e.declaration))?";":""}function PRr(e,t=!0){return e&&e!=="value"?`${t?" ":""}${e}${t?"":" "}`:""}function QEi(e,t){return PRr(e.importKind,t)}function u4a(e){return PRr(e.exportKind)}function XEi(e,t,r){let{node:n}=e;if(!n.source)return"";let a=[];return UEi(n,t)&&a.push(" from"),a.push(" ",r("source")),a}function JEi(e,t,r){let{node:n}=e;if(!UEi(n,t))return"";let a=[" "];if(Q_(n.specifiers)){let o=[],l=[];e.each(()=>{let A=e.node.type;if(A==="ExportNamespaceSpecifier"||A==="ExportDefaultSpecifier"||A==="ImportNamespaceSpecifier"||A==="ImportDefaultSpecifier")o.push(r());else if(A==="ExportSpecifier"||A==="ImportSpecifier")l.push(r());else throw new CNe(n,"specifier")},"specifiers"),a.push(wC(", ",o)),l.length>0&&(o.length>0&&a.push(", "),l.length>1||o.length>0||n.specifiers.some(A=>sg(A))?a.push(Ia(["{",Ol([t.bracketSpacing?qg:yl,wC([",",qg],l)]),Ah(Tee(t)?",":""),t.bracketSpacing?qg:yl,"}"])):a.push(["{",t.bracketSpacing?" ":"",...l,t.bracketSpacing?" ":"","}"]))}else a.push("{}");return a}function UEi(e,t){return e.type!=="ImportDeclaration"||Q_(e.specifiers)||e.importKind==="type"?!0:MEi(t,OS(e),OS(e.source)).trimEnd().endsWith("from")}function g4a(e,t){var r,n;if((r=e.extra)!=null&&r.deprecatedAssertSyntax)return"assert";let a=MEi(t,TC(e.source),(n=e.attributes)!=null&&n[0]?OS(e.attributes[0]):TC(e)).trimStart();return a.startsWith("assert")?"assert":a.startsWith("with")||Q_(e.attributes)?"with":void 0}function KEi(e,t,r){let{node:n}=e;if(!n.source)return"";let a=g4a(n,t);if(!a)return"";let o=[` ${a} {`];return Q_(n.attributes)&&(t.bracketSpacing&&o.push(" "),o.push(wC(", ",e.map(r,"attributes"))),t.bracketSpacing&&o.push(" ")),o.push("}"),o}function A4a(e,t,r){let{node:n}=e,{type:a}=n,o=a.startsWith("Import"),l=o?"imported":"local",A=o?"local":"exported",f=n[l],I=n[A],C="",b="";return a==="ExportNamespaceSpecifier"||a==="ImportNamespaceSpecifier"?C="*":f&&(C=r(l)),I&&!d4a(n)&&(b=r(A)),[PRr(a==="ImportSpecifier"?n.importKind:n.exportKind,!1),C,C&&b?" as ":"",b]}function d4a(e){if(e.type!=="ImportSpecifier"&&e.type!=="ExportSpecifier")return!1;let{local:t,[e.type==="ImportSpecifier"?"imported":"exported"]:r}=e;if(t.type!==r.type||!IMa(t,r))return!1;if(hV(t))return t.value===r.value&&rH(t)===rH(r);switch(t.type){case"Identifier":return t.name===r.name;default:return!1}}function Nbt(e,t,r){var n;let a=t.semi?";":"",{node:o}=e,l=o.type==="ObjectTypeAnnotation",A=o.type==="TSEnumDeclaration"||o.type==="EnumBooleanBody"||o.type==="EnumNumberBody"||o.type==="EnumBigIntBody"||o.type==="EnumStringBody"||o.type==="EnumSymbolBody",f=[o.type==="TSTypeLiteral"||A?"members":o.type==="TSInterfaceBody"?"body":"properties"];l&&f.push("indexers","callProperties","internalSlots");let I=f.flatMap(ue=>e.map(({node:de})=>({node:de,printed:r(),loc:OS(de)}),ue));f.length>1&&I.sort((ue,de)=>ue.loc-de.loc);let{parent:C,key:b}=e,E=l&&b==="body"&&(C.type==="InterfaceDeclaration"||C.type==="DeclareInterface"||C.type==="DeclareClass"),N=o.type==="TSInterfaceBody"||A||E||o.type==="ObjectPattern"&&C.type!=="FunctionDeclaration"&&C.type!=="FunctionExpression"&&C.type!=="ArrowFunctionExpression"&&C.type!=="ObjectMethod"&&C.type!=="ClassMethod"&&C.type!=="ClassPrivateMethod"&&C.type!=="AssignmentPattern"&&C.type!=="CatchClause"&&o.properties.some(ue=>ue.value&&(ue.value.type==="ObjectPattern"||ue.value.type==="ArrayPattern"))||o.type!=="ObjectPattern"&&t.objectWrap==="preserve"&&I.length>0&&yce(t.originalText,OS(o),I[0].loc),B=E?";":o.type==="TSInterfaceBody"||o.type==="TSTypeLiteral"?Ah(a,";"):",",F=o.type==="RecordExpression"?"#{":o.exact?"{|":"{",Q=o.exact?"|}":"}",J=[],ae=I.map(ue=>{let de=[...J,Ia(ue.printed)];return J=[B,qg],(ue.node.type==="TSPropertySignature"||ue.node.type==="TSMethodSignature"||ue.node.type==="TSConstructSignatureDeclaration"||ue.node.type==="TSCallSignatureDeclaration")&&sg(ue.node,IA.PrettierIgnore)&&J.shift(),Ree(ue.node,t)&&J.push(Gl),de});if(o.inexact||o.hasUnknownMembers){let ue;if(sg(o,IA.Dangling)){let de=sg(o,IA.Line);ue=[x2(e,t),de||_P(t.originalText,TC(j0(!1,cNe(o),-1)))?Gl:qg,"..."]}else ue=["..."];ae.push([...J,...ue])}let ne=(n=j0(!1,I,-1))==null?void 0:n.node,ce=!(o.inexact||o.hasUnknownMembers||ne&&(ne.type==="RestElement"||(ne.type==="TSPropertySignature"||ne.type==="TSCallSignatureDeclaration"||ne.type==="TSMethodSignature"||ne.type==="TSConstructSignatureDeclaration")&&sg(ne,IA.PrettierIgnore))),fe;if(ae.length===0){if(!sg(o,IA.Dangling))return[F,Q,Mk(e,r)];fe=Ia([F,x2(e,t,{indent:!0}),yl,Q,tL(e),Mk(e,r)])}else fe=[E&&Q_(o.properties)?JXa(C):"",F,Ol([t.bracketSpacing?qg:yl,...ae]),Ah(ce&&(B!==","||Tee(t))?B:""),t.bracketSpacing?qg:yl,Q,tL(e),Mk(e,r)];return e.match(ue=>ue.type==="ObjectPattern"&&!Q_(ue.decorators),eRr)||hce(o)&&(e.match(void 0,(ue,de)=>de==="typeAnnotation",(ue,de)=>de==="typeAnnotation",eRr)||e.match(void 0,(ue,de)=>ue.type==="FunctionTypeParam"&&de==="typeAnnotation",eRr))||!N&&e.match(ue=>ue.type==="ObjectPattern",ue=>ue.type==="AssignmentExpression"||ue.type==="VariableDeclarator")?fe:Ia(fe,{shouldBreak:N})}function eRr(e,t){return(t==="params"||t==="parameters"||t==="this"||t==="rest")&&rEi(e)}function p4a(e){let t=[e];for(let r=0;rE[Se]===n),B=E.type===n.type&&!N,F,Q,J=0;do Q=F||n,F=e.getParentNode(J),J++;while(F&&F.type===n.type&&A.every(Se=>F[Se]!==Q));let ae=F||E,ne=Q;if(a&&(cD(n[A[0]])||cD(f)||cD(I)||p4a(ne))){b=!0,B=!0;let Se=k=>[Ah("("),Ol([yl,k]),yl,Ah(")")],De=k=>k.type==="NullLiteral"||k.type==="Literal"&&k.value===null||k.type==="Identifier"&&k.name==="undefined";C.push(" ? ",De(f)?r(o):Se(r(o))," : ",I.type===n.type||De(I)?r(l):Se(r(l)))}else{let Se=k=>t.useTabs?Ol(r(k)):C6(2,r(k)),De=[qg,"? ",f.type===n.type?Ah("","("):"",Se(o),f.type===n.type?Ah("",")"):"",qg,": ",Se(l)];C.push(E.type!==n.type||E[l]===n||N?De:t.useTabs?hbi(Ol(De)):C6(Math.max(0,t.tabWidth-2),De))}let ce=[o,l,...A].some(Se=>sg(n[Se],De=>sH(De)&&yce(t.originalText,OS(De),TC(De)))),fe=Se=>E===ae?Ia(Se,{shouldBreak:ce}):ce?[Se,_6]:Se,ue=!b&&(Uv(E)||E.type==="NGPipeExpression"&&E.left===n)&&!E.computed,de=h4a(e),be=fe([f4a(e,t,r),B?C:Ol(C),a&&ue&&!de?yl:""]);return N||de?Ia([Ol([yl,be]),yl]):be}function C4a(e,t){return(Uv(t)||t.type==="NGPipeExpression"&&t.left===e)&&!t.computed}function _4a(e,t,r,n){return[...e.map(a=>cNe(a)),cNe(t),cNe(r)].flat().some(a=>sH(a)&&yce(n.originalText,OS(a),TC(a)))}var y4a=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]);function b4a(e){let{node:t}=e;if(t.type!=="ConditionalExpression")return!1;let r,n=t;for(let a=0;!r;a++){let o=e.getParentNode(a);if(o.type==="ChainExpression"&&o.expression===n||S_(o)&&o.callee===n||Uv(o)&&o.object===n||o.type==="TSNonNullExpression"&&o.expression===n){n=o;continue}o.type==="NewExpression"&&o.callee===n||I6(o)&&o.expression===n?(r=e.getParentNode(a+1),n=o):r=o}return n===t?!1:r[y4a.get(r.type)]===n}var tRr=e=>[Ah("("),Ol([yl,e]),yl,Ah(")")];function MRr(e,t,r,n){if(!t.experimentalTernaries)return m4a(e,t,r);let{node:a}=e,o=a.type==="ConditionalExpression",l=_ce(a),A=o?"consequent":"trueType",f=o?"alternate":"falseType",I=o?["test"]:["checkType","extendsType"],C=a[A],b=a[f],E=I.map(ke=>a[ke]),{parent:N}=e,B=N.type===a.type,F=B&&I.some(ke=>N[ke]===a),Q=B&&N[f]===a,J=C.type===a.type,ae=b.type===a.type,ne=ae||Q,ce=t.tabWidth>2||t.useTabs,fe,ue,de=0;do ue=fe||a,fe=e.getParentNode(de),de++;while(fe&&fe.type===a.type&&I.every(ke=>fe[ke]!==ue));let be=fe||N,Se=n&&n.assignmentLayout&&n.assignmentLayout!=="break-after-operator"&&(N.type==="AssignmentExpression"||N.type==="VariableDeclarator"||N.type==="ClassProperty"||N.type==="PropertyDefinition"||N.type==="ClassPrivateProperty"||N.type==="ObjectProperty"||N.type==="Property"),De=(N.type==="ReturnStatement"||N.type==="ThrowStatement")&&!(J||ae),k=o&&be.type==="JSXExpressionContainer"&&e.grandparent.type!=="JSXAttribute",tt=b4a(e),ze=C4a(a,N),Le=l&&Ome(e,t),Je=ce?t.useTabs?" ":" ".repeat(t.tabWidth-1):"",ft=_4a(E,C,b,t)||J||ae,lt=!ne&&!B&&!l&&(k?C.type==="NullLiteral"||C.type==="Literal"&&C.value===null:vRr(C,t)&&Eyi(a.test,3)),Ot=ne||Q||l&&!B||B&&o&&Eyi(a.test,1)||lt,Er=[];!J&&sg(C,IA.Dangling)&&e.call(ke=>{Er.push(x2(ke,t),Gl)},"consequent");let Sr=[];sg(a.test,IA.Dangling)&&e.call(ke=>{Sr.push(x2(ke,t))},"test"),!ae&&sg(b,IA.Dangling)&&e.call(ke=>{Sr.push(x2(ke,t))},"alternate"),sg(a,IA.Dangling)&&Sr.push(x2(e,t));let jt=Symbol("test"),Bt=Symbol("consequent"),Dt=Symbol("test-and-consequent"),Fr=o?[tRr(r("test")),a.test.type==="ConditionalExpression"?_6:""]:[r("checkType")," ","extends"," ",_ce(a.extendsType)||a.extendsType.type==="TSMappedType"?r("extendsType"):Ia(tRr(r("extendsType")))],$t=Ia([Fr," ?"],{id:jt}),Xt=r(A),lr=Ol([J||k&&(cD(C)||B||ne)?Gl:qg,Er,Xt]),cr=Ot?Ia([$t,ne?lr:Ah(lr,Ia(lr,{id:Bt}),{groupId:jt})],{id:Dt}):[$t,lr],Ar=r(f),qr=lt?Ah(Ar,hbi(tRr(Ar)),{groupId:Dt}):Ar,yn=[cr,Sr.length>0?[Ol([Gl,Sr]),Gl]:ae?Gl:lt?Ah(qg," ",{groupId:Dt}):qg,":",ae?" ":ce?Ot?Ah(Je,Ah(ne||lt?" ":Je," "),{groupId:Dt}):Ah(Je," "):" ",ae?qr:Ia([Ol(qr),k&&!lt?yl:""]),ze&&!tt?yl:"",ft?_6:""];return Se&&!ft?Ia(Ol([yl,Ia(yn)])):Se||De?Ia(Ol(yn)):tt||l&&F?Ia([Ol([yl,yn]),Le?yl:""]):N===be?Ia(yn):yn}function E4a(e,t,r,n){let{node:a}=e;if(ERr(a))return i4a(e,t);let o=t.semi?";":"",l=[];switch(a.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),Gl];case"File":return n4a(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return r4a(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return!sg(a.expression)&&(g4(a.expression)||Hk(a.expression))?["(",r("expression"),")"]:Ia(["(",Ol([yl,r("expression")]),yl,")"]);case"AssignmentExpression":return KQa(e,t,r);case"VariableDeclarator":return jQa(e,t,r);case"BinaryExpression":case"LogicalExpression":return Qbi(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return XQa(e,t,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return a.object&&l.push(r("object")),l.push(Ia(Ol([yl,mEi(e,t,r)]))),l;case"Identifier":return[a.name,tL(e),hEi(e),Mk(e,r)];case"V8IntrinsicIdentifier":return["%",a.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return CEi(e,r);case"FunctionDeclaration":case"FunctionExpression":return EEi(e,r,t,n);case"ArrowFunctionExpression":return xXa(e,t,r,n);case"YieldExpression":return l.push("yield"),a.delegate&&l.push("*"),a.argument&&l.push(" ",r("argument")),l;case"AwaitExpression":if(l.push("await"),a.argument){l.push(" ",r("argument"));let{parent:A}=e;if(S_(A)&&A.callee===a||Uv(A)&&A.object===a){l=[Ol([yl,...l]),yl];let f=e.findAncestor(I=>I.type==="AwaitExpression"||I.type==="BlockStatement");if(f?.type!=="AwaitExpression"||!$Z(f.argument,I=>I===a))return Ia(l)}}return l;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return YEi(e,t,r);case"ImportDeclaration":return a4a(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return A4a(e,t,r);case"ImportAttribute":return zTr(e,t,r);case"Program":case"BlockStatement":case"StaticBlock":return TEi(e,t,r);case"ClassBody":return jXa(e,t,r);case"ThrowStatement":return DXa(e,t,r);case"ReturnStatement":return NXa(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return qbi(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return Nbt(e,t,r);case"Property":return Sbt(a)?fRr(e,t,r):zTr(e,t,r);case"ObjectProperty":return zTr(e,t,r);case"ObjectMethod":return fRr(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return VRr(e,t,r);case"SequenceExpression":{let{parent:A}=e;if(A.type==="ExpressionStatement"||A.type==="ForStatement"){let f=[];return e.each(({isFirst:I})=>{I?f.push(r()):f.push(",",Ol([qg,r()]))},"expressions"),Ia(f)}return Ia(wC([",",qg],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),o];case"UnaryExpression":return l.push(a.operator),/[a-z]$/u.test(a.operator)&&l.push(" "),sg(a.argument)?l.push(Ia(["(",Ol([yl,r("argument")]),yl,")"])):l.push(r("argument")),l;case"UpdateExpression":return[a.prefix?a.operator:"",r("argument"),a.prefix?"":a.operator];case"ConditionalExpression":return MRr(e,t,r,n);case"VariableDeclaration":{let A=e.map(r,"declarations"),f=e.parent,I=f.type==="ForStatement"||f.type==="ForInStatement"||f.type==="ForOfStatement",C=a.declarations.some(E=>E.init),b;return A.length===1&&!sg(a.declarations[0])?b=A[0]:A.length>0&&(b=Ol(A[0])),l=[mV(e),a.kind,b?[" ",b]:"",Ol(A.slice(1).map(E=>[",",C&&!I?Gl:qg,E]))],I&&f.body!==a||l.push(o),Ia(l)}case"WithStatement":return Ia(["with (",r("object"),")",fce(a.body,r("body"))]);case"IfStatement":{let A=fce(a.consequent,r("consequent")),f=Ia(["if (",Ia([Ol([yl,r("test")]),yl]),")",A]);if(l.push(f),a.alternate){let I=sg(a.consequent,IA.Trailing|IA.Line)||ubi(a),C=a.consequent.type==="BlockStatement"&&!I;l.push(C?" ":Gl),sg(a,IA.Dangling)&&l.push(x2(e,t),I?Gl:" "),l.push("else",Ia(fce(a.alternate,r("alternate"),a.alternate.type==="IfStatement")))}return l}case"ForStatement":{let A=fce(a.body,r("body")),f=x2(e,t),I=f?[f,yl]:"";return!a.init&&!a.test&&!a.update?[I,Ia(["for (;;)",A])]:[I,Ia(["for (",Ia([Ol([yl,r("init"),";",qg,r("test"),";",qg,r("update")]),yl]),")",A])]}case"WhileStatement":return Ia(["while (",Ia([Ol([yl,r("test")]),yl]),")",fce(a.body,r("body"))]);case"ForInStatement":return Ia(["for (",r("left")," in ",r("right"),")",fce(a.body,r("body"))]);case"ForOfStatement":return Ia(["for",a.await?" await":""," (",r("left")," of ",r("right"),")",fce(a.body,r("body"))]);case"DoWhileStatement":{let A=fce(a.body,r("body"));return l=[Ia(["do",A])],a.body.type==="BlockStatement"?l.push(" "):l.push(Gl),l.push("while (",Ia([Ol([yl,r("test")]),yl]),")",o),l}case"DoExpression":return[a.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return l.push(a.type==="BreakStatement"?"break":"continue"),a.label&&l.push(" ",r("label")),l.push(o),l;case"LabeledStatement":return a.body.type==="EmptyStatement"?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),a.handler?[" ",r("handler")]:"",a.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(a.param){let A=sg(a.param,I=>!sH(I)||I.leading&&_P(t.originalText,TC(I))||I.trailing&&_P(t.originalText,OS(I),{backwards:!0})),f=r("param");return["catch ",A?["(",Ol([yl,f]),yl,") "]:["(",f,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[Ia(["switch (",Ol([yl,r("discriminant")]),yl,")"])," {",a.cases.length>0?Ol([Gl,wC(Gl,e.map(({node:A,isLast:f})=>[r(),!f&&Ree(A,t)?Gl:""],"cases"))]):"",Gl,"}"];case"SwitchCase":{a.test?l.push("case ",r("test"),":"):l.push("default:"),sg(a,IA.Dangling)&&l.push(" ",x2(e,t));let A=a.consequent.filter(f=>f.type!=="EmptyStatement");if(A.length>0){let f=IRr(e,t,r,"consequent");l.push(A.length===1&&A[0].type==="BlockStatement"?[" ",f]:Ol([Gl,f]))}return l}case"DebuggerStatement":return["debugger",o];case"ClassDeclaration":case"ClassExpression":return xEi(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return ZEi(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return LEi(e,t,r);case"TemplateElement":return Dme(a.value.raw);case"TemplateLiteral":return Fbi(e,r,t);case"TaggedTemplateExpression":return sYa(e,r);case"PrivateIdentifier":return["#",a.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];case"InterpreterDirective":default:throw new CNe(a,"ESTree")}}function jEi(e,t,r){let{parent:n,node:a,key:o}=e,l=[r("expression")];switch(a.type){case"AsConstExpression":l.push(" as const");break;case"AsExpression":case"TSAsExpression":l.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":l.push(" satisfies ",r("typeAnnotation"));break}return o==="callee"&&S_(n)||o==="object"&&Uv(n)?Ia([Ol([yl,...l]),yl]):l}function S4a(e,t,r){let{node:n}=e,a=[mV(e),"component"];n.id&&a.push(" ",r("id")),a.push(r("typeParameters"));let o=v4a(e,r,t);return n.rendersType?a.push(Ia([o," ",r("rendersType")])):a.push(Ia([o])),n.body&&a.push(" ",r("body")),t.semi&&n.type==="DeclareComponent"&&a.push(";"),a}function v4a(e,t,r){let{node:n}=e,a=n.params;if(n.rest&&(a=[...a,n.rest]),a.length===0)return["(",x2(e,r,{filter:l=>A4(r.originalText,TC(l))===")"}),")"];let o=[];return w4a(e,(l,A)=>{let f=A===a.length-1;f&&n.rest&&o.push("..."),o.push(t()),!f&&(o.push(","),Ree(a[A],r)?o.push(Gl,Gl):o.push(qg))}),["(",Ol([yl,...o]),Ah(Tee(r,"all")&&!B4a(n,a)?",":""),yl,")"]}function B4a(e,t){var r;return e.rest||((r=j0(!1,t,-1))==null?void 0:r.type)==="RestElement"}function w4a(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);e.each(a,"params"),r.rest&&e.call(a,"rest")}function T4a(e,t,r){let{node:n}=e;return n.shorthand?r("local"):[r("name")," as ",r("local")]}function R4a(e,t,r){let{node:n}=e,a=[];return n.name&&a.push(r("name"),n.optional?"?: ":": "),a.push(r("typeAnnotation")),a}function zEi(e,t,r){return Nbt(e,r,t)}function qEi(e,t){let{node:r}=e,n=t("id");r.computed&&(n=["[",n,"]"]);let a="";return r.initializer&&(a=t("initializer")),r.init&&(a=t("init")),a?[n," = ",a]:n}function N4a(e,t,r){let{node:n}=e,a;if(n.type==="EnumSymbolBody"||n.explicitType)switch(n.type){case"EnumBooleanBody":a="boolean";break;case"EnumNumberBody":a="number";break;case"EnumBigIntBody":a="bigint";break;case"EnumStringBody":a="string";break;case"EnumSymbolBody":a="symbol";break}return[a?`of ${a} `:"",zEi(e,t,r)]}function $Ei(e,t,r){let{node:n}=e;return[mV(e),n.const?"const ":"","enum ",t("id")," ",n.type==="TSEnumDeclaration"?zEi(e,t,r):t("body")]}function D4a(e,t,r){let{node:n}=e,a=["hook"];n.id&&a.push(" ",r("id"));let o=Pme(e,r,t,!1,!0),l=Rbt(e,r),A=_Ne(n,l);return a.push(Ia([A?Ia(o):o,l]),n.body?" ":"",r("body")),a}function k4a(e,t,r){let{node:n}=e,a=[mV(e),"hook"];return n.id&&a.push(" ",r("id")),t.semi&&a.push(";"),a}function Qyi(e){var t;let{node:r}=e;return r.type==="HookTypeAnnotation"&&((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareHook"}function x4a(e,t,r){let{node:n}=e,a=[];a.push(Qyi(e)?"":"hook ");let o=Pme(e,r,t,!1,!0),l=[];return l.push(Qyi(e)?": ":" => ",r("returnType")),_Ne(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function e1i(e,t,r){let{node:n}=e,a=[mV(e),"interface"],o=[],l=[];n.type!=="InterfaceTypeAnnotation"&&o.push(" ",r("id"),r("typeParameters"));let A=n.typeParameters&&!sg(n.typeParameters,IA.Trailing|IA.Line);return Q_(n.extends)&&l.push(A?Ah(" ",qg,{groupId:ORr(n.typeParameters)}):qg,"extends ",(n.extends.length===1?MMa:Ol)(wC([",",qg],e.map(r,"extends")))),sg(n.id,IA.Trailing)||Q_(n.extends)?A?a.push(Ia([...o,Ol(l)])):a.push(Ia(Ol([...o,...l]))):a.push(...o,...l),a.push(" ",r("body")),Ia(a)}function G4a(e,t,r){let{node:n}=e;if(tbi(n))return n.type.slice(0,-14).toLowerCase();let a=t.semi?";":"";switch(n.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return S4a(e,t,r);case"ComponentParameter":return T4a(e,t,r);case"ComponentTypeParameter":return R4a(e,t,r);case"HookDeclaration":return D4a(e,t,r);case"DeclareHook":return k4a(e,t,r);case"HookTypeAnnotation":return x4a(e,t,r);case"DeclareClass":return xEi(e,t,r);case"DeclareFunction":return[mV(e),"function ",r("id"),r("predicate"),a];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",Mk(e,r),a];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[mV(e),n.kind??"var"," ",r("id"),a];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return YEi(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return fXa(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return iEi(e,t,r);case"IntersectionTypeAnnotation":return sEi(e,t,r);case"UnionTypeAnnotation":return oEi(e,t,r);case"ConditionalTypeAnnotation":return MRr(e,t,r);case"InferTypeAnnotation":return lEi(e,t,r);case"FunctionTypeAnnotation":return aEi(e,t,r);case"TupleTypeAnnotation":return VRr(e,t,r);case"TupleTypeLabeledElement":return gEi(e,t,r);case"TupleTypeSpreadElement":return uEi(e,t,r);case"GenericTypeAnnotation":return[r("id"),H4e(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return cEi(e,t,r);case"TypeAnnotation":return dEi(e,t,r);case"TypeParameter":return DEi(e,t,r);case"TypeofTypeAnnotation":return fEi(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return pEi(r);case"DeclareEnum":case"EnumDeclaration":return $Ei(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return N4a(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return qEi(e,r);case"FunctionTypeParam":{let o=n.name?r("name"):e.parent.this===n?"this":"";return[o,tL(e),o?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return e1i(e,t,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:o}=n;return yRr.ok(o==="plus"||o==="minus"),o==="plus"?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[n.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return HXa(e,t,r);case"ObjectTypeIndexer":return[n.static?"static ":"",n.variance?r("variance"):"","[",r("id"),n.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let o="";return n.proto?o="proto ":n.static&&(o="static "),[o,n.kind!=="init"?n.kind+" ":"",n.variance?r("variance"):"",j4e(e,t,r),tL(e),Sbt(n)?"":": ",r("value")]}case"ObjectTypeAnnotation":return Nbt(e,t,r);case"ObjectTypeInternalSlot":return[n.static?"static ":"","[[",r("id"),"]]",tL(e),n.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return CEi(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(n.value);case"StringLiteralTypeAnnotation":return Dme(ANe(rH(n),t));case"NumberLiteralTypeAnnotation":return pNe(n.raw??n.extra.raw);case"BigIntLiteralTypeAnnotation":return hRr(n.raw??n.extra.raw);case"TypeCastExpression":return["(",r("expression"),Mk(e,r),")"];case"TypePredicate":return IEi(e,r);case"TypeOperator":return[n.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return H4e(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return[e.key==="predicate"&&e.parent.type!=="DeclareFunction"&&!e.parent.returnType?": ":" ","%checks",...n.type==="DeclaredPredicate"?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return jEi(e,t,r)}}function F4a(e,t,r){var n;let{node:a}=e;if(!a.type.startsWith("TS"))return;if(rbi(a))return a.type.slice(2,-7).toLowerCase();let o=t.semi?";":"",l=[];switch(a.type){case"TSThisType":return"this";case"TSTypeAssertion":{let A=!(Hk(a.expression)||g4(a.expression)),f=Ia(["<",Ol([yl,r("typeAnnotation")]),yl,">"]),I=[Ah("("),Ol([yl,r("expression")]),yl,Ah(")")];return A?Nme([[f,r("expression")],[f,Ia(I,{shouldBreak:!0})],[f,r("expression")]]):Ia([f,r("expression")])}case"TSDeclareFunction":return EEi(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),o];case"TSModuleBlock":return TEi(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return Nbt(e,t,r);case"TSTypeAliasDeclaration":return iEi(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return ZEi(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return LEi(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(a.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return Fbi(e,r,t);case"TSNamedTupleMember":return gEi(e,t,r);case"TSRestType":return uEi(e,t,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return e1i(e,t,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return H4e(e,t,r,"params");case"TSTypeParameter":return DEi(e,t,r);case"TSAsExpression":case"TSSatisfiesExpression":return jEi(e,t,r);case"TSArrayType":return pEi(r);case"TSPropertySignature":return[a.readonly?"readonly ":"",j4e(e,t,r),tL(e),Mk(e,r)];case"TSParameterProperty":return[_bt(a),a.static?"static ":"",a.override?"override ":"",a.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return fEi(e,r);case"TSIndexSignature":{let A=a.parameters.length>1?Ah(Tee(t)?",":""):"",f=Ia([Ol([yl,wC([", ",yl],e.map(r,"parameters"))]),A,yl]),I=e.parent.type==="ClassBody"&&e.key==="body";return[I&&a.static?"static ":"",a.readonly?"readonly ":"","[",a.parameters?f:"","]",Mk(e,r),I?o:""]}case"TSTypePredicate":return IEi(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return["import(",r("argument"),")",a.qualifier?[".",r("qualifier")]:"",H4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return cEi(e,t,r);case"TSTypeOperator":return[a.operator," ",r("typeAnnotation")];case"TSMappedType":return YXa(e,t,r);case"TSMethodSignature":{let A=a.kind&&a.kind!=="method"?`${a.kind} `:"";l.push(_bt(a),A,a.computed?"[":"",r("key"),a.computed?"]":"",tL(e));let f=Pme(e,r,t,!1,!0),I=a.returnType?"returnType":"typeAnnotation",C=a[I],b=C?Mk(e,r,I):"",E=_Ne(a,b);return l.push(E?Ia(f):f),C&&l.push(Ia(b)),Ia(l)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return $Ei(e,r,t);case"TSEnumMember":return qEi(e,r);case"TSImportEqualsDeclaration":return[a.isExport?"export ":"","import ",QEi(a,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:A}=e,f=A.type==="TSModuleDeclaration",I=((n=a.body)==null?void 0:n.type)==="TSModuleDeclaration";return f?l.push("."):(l.push(mV(e)),a.kind!=="global"&&l.push(a.kind," ")),l.push(r("id")),I?l.push(r("body")):a.body?l.push(" ",Ia(r("body"))):l.push(o),l}case"TSConditionalType":return MRr(e,t,r);case"TSInferType":return lEi(e,t,r);case"TSIntersectionType":return sEi(e,t,r);case"TSUnionType":return oEi(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return aEi(e,t,r);case"TSTupleType":return VRr(e,t,r);case"TSTypeReference":return[r("typeName"),H4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return dEi(e,t,r);case"TSEmptyBodyFunctionExpression":return WRr(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return Pyi(e,r,"?");case"TSJSDocNonNullableType":return Pyi(e,r,"!");case"TSParenthesizedType":default:throw new CNe(a,"TypeScript")}}function Z4a(e,t,r,n){if(Ybi(e))return zYa(e,t);for(let a of[GQa,wQa,G4a,F4a,E4a]){let o=a(e,t,r,n);if(o!==void 0)return o}}var L4a=b0(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]);function V4a(e,t,r,n){var a;e.isRoot&&((a=t.__onHtmlBindingRoot)==null||a.call(t,e.node,t));let o=Z4a(e,t,r,n);if(!o)return"";let{node:l}=e;if(L4a(l))return o;let A=Q_(l.decorators),f=VQa(e,t,r),I=l.type==="ClassExpression";if(A&&!I)return sRr(o,E=>Ia([f,E]));let C=Ome(e,t),b=t4a(e,t);return!f&&!C&&!b?o:sRr(o,E=>[b?";":"",C?"(":"",C&&I&&A?[Ol([qg,f,E]),qg]:[f,E],C?")":""])}var W4a=V4a,O4a={avoidAstMutation:!0},P4a=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,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",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,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",".code-workspace",".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:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],t1i={};ybt(t1i,{getVisitorKeys:()=>Q4a,massageAstNode:()=>r1i,print:()=>X4a});var M4a={JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]},H4a=M4a,Y4a=$yi(H4a),Q4a=Y4a;function X4a(e,t,r){let{node:n}=e;switch(n.type){case"JsonRoot":return[r("node"),Gl];case"ArrayExpression":{if(n.elements.length===0)return"[]";let a=e.map(()=>e.node===null?"null":r(),"elements");return["[",Ol([Gl,wC([",",Gl],a)]),Gl,"]"]}case"ObjectExpression":return n.properties.length===0?"{}":["{",Ol([Gl,wC([",",Gl],e.map(r,"properties"))]),Gl,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return[n.operator==="+"?"":n.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return n.value?"true":"false";case"StringLiteral":return JSON.stringify(n.value);case"NumericLiteral":return Xyi(e)?JSON.stringify(String(n.value)):JSON.stringify(n.value);case"Identifier":return Xyi(e)?JSON.stringify(n.name):n.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(n.value.cooked);default:throw new CNe(n,"JSON")}}function Xyi(e){return e.key==="key"&&e.parent.type==="ObjectProperty"}var J4a=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function r1i(e,t){let{type:r}=e;if(r==="ObjectProperty"){let{key:n}=e;n.type==="Identifier"?t.key={type:"StringLiteral",value:n.name}:n.type==="NumericLiteral"&&(t.key={type:"StringLiteral",value:String(n.value)});return}if(r==="UnaryExpression"&&e.operator==="+")return t.argument;if(r==="ArrayExpression"){for(let[n,a]of e.elements.entries())a===null&&t.elements.splice(n,0,{type:"NullLiteral"});return}if(r==="TemplateLiteral")return{type:"StringLiteral",value:e.quasis[0].value.cooked}}r1i.ignoredProperties=J4a;var W4e={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Ice="JavaScript",U4a={arrowParens:{category:Ice,type:"choice",default:"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:W4e.bracketSameLine,objectWrap:W4e.objectWrap,bracketSpacing:W4e.bracketSpacing,jsxBracketSameLine:{category:Ice,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:Ice,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalOperatorPosition:{category:Ice,type:"choice",default:"end",description:"Where to print operators when binary expressions wrap lines.",choices:[{value:"start",description:"Print operators at the start of new lines."},{value:"end",description:"Print operators at the end of previous lines."}]},experimentalTernaries:{category:Ice,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:W4e.singleQuote,jsxSingleQuote:{category:Ice,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:Ice,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:{category:Ice,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:W4e.singleAttributePerLine},n1i=U4a,yNe={estree:jyi,"estree-json":t1i},i1i=[...H5a,...P4a],K4a=Kyi;var rJe={};Uf(rJe,{default:()=>yUa,languages:()=>y1i,options:()=>b1i,parsers:()=>KRr,printers:()=>k1i});var j4a=Object.defineProperty,l1i=(e,t)=>{for(var r in t)j4a(e,r,{get:t[r],enumerable:!0})},u1i={};l1i(u1i,{languages:()=>y1i,options:()=>b1i,parsers:()=>KRr,printers:()=>k1i});var z4a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},HRr=z4a,q4a="indent",$4a="group",eJa="if-break",URr="line",tJa="break-parent",g1i=()=>{},eJe=g1i,A1i=g1i;function _V(e){return eJe(e),{type:q4a,contents:e}}function aH(e,t={}){return eJe(e),A1i(t.expandedStates,!0),{type:$4a,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function b6(e,t="",r={}){return eJe(e),t!==""&&eJe(t),{type:eJa,breakContents:e,flatContents:t,groupId:r.groupId}}var rJa={type:tJa},nJa={type:URr,hard:!0},ENe={type:URr},Kv={type:URr,soft:!0},hT=[nJa,rJa];function Qk(e,t){eJe(e),A1i(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var rQa=tQa;function dRr(e,t){var r,n,a,o,l,A,f,I,C;if(e.isRoot)return!1;let{node:b,key:E,parent:N}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&oQa(b)&&M4e(e))return!0;if(nQa(b))return!1;if(b.type==="Identifier"){if((r=b.extra)!=null&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(b.name)||E==="left"&&(b.name==="async"&&!N.await||b.name==="let")&&N.type==="ForOfStatement")return!0;if(b.name==="let"){let B=(n=e.findAncestor(F=>F.type==="ForOfStatement"))==null?void 0:n.left;if(B&&eL(B,F=>F===b))return!0}if(E==="object"&&b.name==="let"&&N.type==="MemberExpression"&&N.computed&&!N.optional){let B=e.findAncestor(Q=>Q.type==="ExpressionStatement"||Q.type==="ForStatement"||Q.type==="ForInStatement"),F=B?B.type==="ExpressionStatement"?B.expression:B.type==="ForStatement"?B.init:B.left:void 0;if(F&&eL(F,Q=>Q===b))return!0}if(E==="expression")switch(b.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let B=e.findAncestor(F=>!h6(F));if(B!==N&&B.type==="ExpressionStatement")return!0}}return!1}if(b.type==="ObjectExpression"||b.type==="FunctionExpression"||b.type==="ClassExpression"||b.type==="DoExpression"){let B=(a=e.findAncestor(F=>F.type==="ExpressionStatement"))==null?void 0:a.expression;if(B&&eL(B,F=>F===b))return!0}if(b.type==="ObjectExpression"){let B=(o=e.findAncestor(F=>F.type==="ArrowFunctionExpression"))==null?void 0:o.body;if(B&&B.type!=="SequenceExpression"&&B.type!=="AssignmentExpression"&&eL(B,F=>F===b))return!0}switch(N.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if(E==="superClass"&&(b.type==="ArrowFunctionExpression"||b.type==="AssignmentExpression"||b.type==="AwaitExpression"||b.type==="BinaryExpression"||b.type==="ConditionalExpression"||b.type==="LogicalExpression"||b.type==="NewExpression"||b.type==="ObjectExpression"||b.type==="SequenceExpression"||b.type==="TaggedTemplateExpression"||b.type==="UnaryExpression"||b.type==="UpdateExpression"||b.type==="YieldExpression"||b.type==="TSNonNullExpression"||b.type==="ClassExpression"&&X_(b.decorators)))return!0;break;case"ExportDefaultDeclaration":return $bi(e,t)||b.type==="SequenceExpression";case"Decorator":if(E==="expression"&&!cQa(b))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression")&&sQa(b))return!0;break;case"BinaryExpression":if(E==="left"&&(N.operator==="in"||N.operator==="instanceof")&&b.type==="UnaryExpression")return!0;break;case"VariableDeclarator":if(E==="init"&&e.match(void 0,void 0,(B,F)=>F==="declarations"&&B.type==="VariableDeclaration",(B,F)=>F==="left"&&B.type==="ForInStatement"))return!0;break}switch(b.type){case"UpdateExpression":if(N.type==="UnaryExpression")return b.prefix&&(b.operator==="++"&&N.operator==="+"||b.operator==="--"&&N.operator==="-");case"UnaryExpression":switch(N.type){case"UnaryExpression":return b.operator===N.operator&&(b.operator==="+"||b.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"BinaryExpression":return E==="left"&&N.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":if(N.type==="UpdateExpression"||b.operator==="in"&&iQa(e))return!0;if(b.operator==="|>"&&(l=b.extra)!=null&&l.parenthesized){let B=e.grandparent;if(B.type==="BinaryExpression"&&B.operator==="|>")return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(N.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!h6(b);case"ConditionalExpression":return h6(b)||ZMa(b);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return E==="callee";case"ClassExpression":case"ClassDeclaration":return E==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"AssignmentExpression":case"AssignmentPattern":return E==="left"&&(b.type==="TSTypeAssertion"||h6(b));case"LogicalExpression":if(b.type==="LogicalExpression")return N.operator!==b.operator;case"BinaryExpression":{let{operator:B,type:F}=b;if(!B&&F!=="TSTypeAssertion")return!0;let Q=pbt(B),J=N.operator,ae=pbt(J);return ae>Q||E==="right"&&ae===Q||ae===Q&&!TRr(J,B)?!0:ae");default:return!1}case"TSFunctionType":if(e.match(B=>B.type==="TSFunctionType",(B,F)=>F==="typeAnnotation"&&B.type==="TSTypeAnnotation",(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression"))return!0;case"TSConditionalType":case"TSConstructorType":case"ConditionalTypeAnnotation":if(E==="extendsType"&&yce(b)&&N.type===b.type||E==="checkType"&&yce(N))return!0;if(E==="extendsType"&&N.type==="TSConditionalType"){let{typeAnnotation:B}=b.returnType||b.typeAnnotation;if(B.type==="TSTypePredicate"&&B.typeAnnotation&&(B=B.typeAnnotation.typeAnnotation),B.type==="TSInferType"&&B.typeParameter.constraint)return!0}case"TSUnionType":case"TSIntersectionType":if((_ce(N)||RRr(N))&&N.types.length>1&&(!b.types||b.types.length>1))return!0;case"TSInferType":if(b.type==="TSInferType"){if(N.type==="TSRestType")return!1;if(E==="types"&&(N.type==="TSUnionType"||N.type==="TSIntersectionType")&&b.typeParameter.type==="TSTypeParameter"&&b.typeParameter.constraint)return!0}case"TSTypeOperator":return N.type==="TSArrayType"||N.type==="TSOptionalType"||N.type==="TSRestType"||E==="objectType"&&N.type==="TSIndexedAccessType"||N.type==="TSTypeOperator"||N.type==="TSTypeAnnotation"&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return E==="objectType"&&N.type==="TSIndexedAccessType"||E==="elementType"&&N.type==="TSArrayType";case"TypeOperator":return N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||N.type==="TypeOperator";case"TypeofTypeAnnotation":return E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||E==="elementType"&&N.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return N.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return N.type==="TypeOperator"||N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||N.type==="IntersectionTypeAnnotation"||N.type==="UnionTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"InferTypeAnnotation":case"NullableTypeAnnotation":return N.type==="ArrayTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if(b.type==="ComponentTypeAnnotation"&&(b.rendersType===null||b.rendersType===void 0))return!1;if(e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression")||e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypePredicate",(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression"))return!0;let B=N.type==="NullableTypeAnnotation"?e.grandparent:N;return B.type==="UnionTypeAnnotation"||B.type==="IntersectionTypeAnnotation"||B.type==="ArrayTypeAnnotation"||E==="objectType"&&(B.type==="IndexedAccessType"||B.type==="OptionalIndexedAccessType")||E==="checkType"&&N.type==="ConditionalTypeAnnotation"||E==="extendsType"&&N.type==="ConditionalTypeAnnotation"&&((A=b.returnType)==null?void 0:A.type)==="InferTypeAnnotation"&&((f=b.returnType)==null?void 0:f.typeParameter.bound)||B.type==="NullableTypeAnnotation"||N.type==="FunctionTypeParam"&&N.name===null&&ZG(b).some(F=>{var Q;return((Q=F.typeAnnotation)==null?void 0:Q.type)==="NullableTypeAnnotation"})}case"OptionalIndexedAccessType":return E==="objectType"&&N.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof b.value=="string"&&N.type==="ExpressionStatement"&&!N.directive){let B=e.grandparent;return B.type==="Program"||B.type==="BlockStatement"}return E==="object"&&N.type==="MemberExpression"&&typeof b.value=="number";case"AssignmentExpression":{let B=e.grandparent;return E==="body"&&N.type==="ArrowFunctionExpression"?!0:E==="key"&&(N.type==="ClassProperty"||N.type==="PropertyDefinition")&&N.computed||(E==="init"||E==="update")&&N.type==="ForStatement"?!1:N.type==="ExpressionStatement"?b.left.type==="ObjectPattern":!(E==="key"&&N.type==="TSPropertySignature"||N.type==="AssignmentExpression"||N.type==="SequenceExpression"&&B.type==="ForStatement"&&(B.init===N||B.update===N)||E==="value"&&N.type==="Property"&&B.type==="ObjectPattern"&&B.properties.includes(N)||N.type==="NGChainedExpression"||E==="node"&&N.type==="JsExpressionRoot")}case"ConditionalExpression":switch(N.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"ConditionalExpression":return t.experimentalTernaries?!1:E==="test";case"MemberExpression":case"OptionalMemberExpression":return E==="object";default:return!1}case"FunctionExpression":switch(N.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(N.type){case"BinaryExpression":return N.operator!=="|>"||((I=b.extra)==null?void 0:I.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return E==="test";default:return!1}case"ClassExpression":switch(N.type){case"NewExpression":return E==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(aQa(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if(E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")){let B=b;for(;B;)switch(B.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":B=B.object;break;case"TaggedTemplateExpression":B=B.tag;break;case"TSNonNullExpression":B=B.expression;break;default:return!1}}return!1;case"BindExpression":return E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")||E==="object"&&Kv(N);case"NGPipeExpression":return!(N.type==="NGRoot"||N.type==="NGMicrosyntaxExpression"||N.type==="ObjectProperty"&&!((C=b.extra)!=null&&C.parenthesized)||Yk(N)||E==="arguments"&&v_(N)||E==="right"&&N.type==="NGPipeExpression"||E==="property"&&N.type==="MemberExpression"||N.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return E==="callee"||E==="left"&&N.type==="BinaryExpression"&&N.operator==="<"||!Yk(N)&&N.type!=="ArrowFunctionExpression"&&N.type!=="AssignmentExpression"&&N.type!=="AssignmentPattern"&&N.type!=="BinaryExpression"&&N.type!=="NewExpression"&&N.type!=="ConditionalExpression"&&N.type!=="ExpressionStatement"&&N.type!=="JsExpressionRoot"&&N.type!=="JSXAttribute"&&N.type!=="JSXElement"&&N.type!=="JSXExpressionContainer"&&N.type!=="JSXFragment"&&N.type!=="LogicalExpression"&&!v_(N)&&!Dee(N)&&N.type!=="ReturnStatement"&&N.type!=="ThrowStatement"&&N.type!=="TypeCastExpression"&&N.type!=="VariableDeclarator"&&N.type!=="YieldExpression";case"TSInstantiationExpression":return E==="object"&&Kv(N)}return!1}var nQa=E0(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]);function iQa(e){let t=0,{node:r}=e;for(;r;){let n=e.getParentNode(t++);if(n?.type==="ForStatement"&&n.init===r)return!0;r=n}return!1}function sQa(e){return iRr(e,t=>t.type==="ObjectTypeAnnotation"&&iRr(t,r=>r.type==="FunctionTypeAnnotation"))}function oQa(e){return A4(e)}function M4e(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if(r==="arguments"&&e.isLast)return e.callParent(M4e);break;case"ObjectProperty":if(r==="value")return e.callParent(()=>e.key==="properties"&&e.isLast);break;case"BinaryExpression":case"LogicalExpression":if(r==="right")return e.callParent(M4e);break;case"ConditionalExpression":if(r==="alternate")return e.callParent(M4e);break;case"UnaryExpression":if(t.prefix)return e.callParent(M4e);break}return!1}function $bi(e,t){let{node:r,parent:n}=e;return r.type==="FunctionExpression"||r.type==="ClassExpression"?n.type==="ExportDefaultDeclaration"||!dRr(e,t):!SRr(r)||n.type!=="ExportDefaultDeclaration"&&dRr(e,t)?!1:e.call(()=>$bi(e,t),...pbi(r))}function aQa(e){return!!(e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&(t.type==="CallExpression"||t.type==="NewExpression"))||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression")||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression")&&(e.match(void 0,void 0,(t,r)=>r==="callee"&&(t.type==="CallExpression"&&!t.optional||t.type==="NewExpression")||r==="object"&&t.type==="MemberExpression"&&!t.optional)||e.match(void 0,void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))}function pRr(e){return e.type==="Identifier"?!0:Kv(e)?!e.computed&&!e.optional&&e.property.type==="Identifier"&&pRr(e.object):!1}function cQa(e){return e.type==="ChainExpression"&&(e=e.expression),pRr(e)||v_(e)&&!e.optional&&pRr(e.callee)}var Pme=dRr;function lQa(e,t){let r=t-1;r=cNe(e,r,{backwards:!0}),r=lNe(e,r,{backwards:!0}),r=cNe(e,r,{backwards:!0});let n=lNe(e,r,{backwards:!0});return r!==n}var uQa=lQa,gQa=()=>!0;function WRr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function AQa(e,t){var r;let n=e.node,a=[WRr(e,t)],{printer:o,originalText:l,locStart:A,locEnd:f}=t;if((r=o.isBlockComment)!=null&&r.call(o,n)){let C=bP(l,f(n))?bP(l,A(n),{backwards:!0})?Gl:qg:" ";a.push(C)}else a.push(Gl);let I=lNe(l,cNe(l,f(n)));return I!==!1&&bP(l,I)&&a.push(Gl),a}function dQa(e,t,r){var n;let a=e.node,o=WRr(e,t),{printer:l,originalText:A,locStart:f}=t,I=(n=l.isBlockComment)==null?void 0:n.call(l,a);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||bP(A,f(a),{backwards:!0})){let C=uQa(A,f(a));return{doc:Oyi([Gl,C?Gl:"",o]),isBlock:I,hasLineSuffix:!0}}return!I||r!=null&&r.hasLineSuffix?{doc:[Oyi([" ",o]),y6],isBlock:I,hasLineSuffix:!0}:{doc:[" ",o],isBlock:I,hasLineSuffix:!1}}function G2(e,t,r={}){let{node:n}=e;if(!X_(n?.comments))return"";let{indent:a=!1,marker:o,filter:l=gQa}=r,A=[];if(e.each(({node:I})=>{I.leading||I.trailing||I.marker!==o||!l(I)||A.push(WRr(e,t))},"comments"),A.length===0)return"";let f=TC(Gl,A);return a?Ol([Gl,f]):f}function eEi(e,t){let r=e.node;if(!r)return{};let n=t[Symbol.for("printedComments")];if((r.comments||[]).filter(A=>!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(AQa(e,t)):I&&(l=dQa(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function g4(e,t,r){let{leading:n,trailing:a}=eEi(e,r);return!n&&!a?t:aRr(t,o=>[n,o,a])}var pQa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},hNe=pQa;function fQa(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var l4,IQa=class{constructor(e){X5a(this,l4),J5a(this,l4,new Set(e))}getLeadingWhitespaceCount(e){let t=fce(this,l4),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return fce(this,l4).has(e.charAt(0))}hasTrailingWhitespace(e){return fce(this,l4).has(z0(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${fQa([...fce(this,l4)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=fce(this,l4);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=fce(this,l4);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=fce(this,l4);return Array.prototype.every.call(e,r=>t.has(r))}};l4=new WeakMap;var hQa=IQa,gbt=new hQa(` +\r `),qTr=e=>e===""||e===qg||e===Gl||e===yl;function mQa(e,t,r){var n,a,o,l,A;let{node:f}=e;if(f.type==="JSXElement"&&xQa(f))return[r("openingElement"),r("closingElement")];let I=f.type==="JSXElement"?r("openingElement"):r("openingFragment"),C=f.type==="JSXElement"?r("closingElement"):r("closingFragment");if(f.children.length===1&&f.children[0].type==="JSXExpressionContainer"&&(f.children[0].expression.type==="TemplateLiteral"||f.children[0].expression.type==="TaggedTemplateExpression"))return[I,...e.map(r,"children"),C];f.children=f.children.map(be=>GQa(be)?{type:"JSXText",value:" ",raw:" "}:be);let b=f.children.some(lD),E=f.children.filter(be=>be.type==="JSXExpressionContainer").length>1,N=f.type==="JSXElement"&&f.openingElement.attributes.length>1,B=tL(I)||b||N||E,F=e.parent.rootMarker==="mdx",Q=t.singleQuote?"{' '}":'{" "}',J=F?qg:Ah([Q,yl]," "),ae=((a=(n=f.openingElement)==null?void 0:n.name)==null?void 0:a.name)==="fbt",ne=CQa(e,t,r,J,ae),ce=f.children.some(be=>U4e(be));for(let be=ne.length-2;be>=0;be--){let Se=ne[be]===""&&ne[be+1]==="",De=ne[be]===Gl&&ne[be+1]===""&&ne[be+2]===Gl,k=(ne[be]===yl||ne[be]===Gl)&&ne[be+1]===""&&ne[be+2]===J,tt=ne[be]===J&&ne[be+1]===""&&(ne[be+2]===yl||ne[be+2]===Gl),ze=ne[be]===J&&ne[be+1]===""&&ne[be+2]===J,Le=ne[be]===yl&&ne[be+1]===""&&ne[be+2]===Gl||ne[be]===Gl&&ne[be+1]===""&&ne[be+2]===yl;De&&ce||Se||k||ze||Le?ne.splice(be,2):tt&&ne.splice(be+1,2)}for(;ne.length>0&&qTr(z0(!1,ne,-1));)ne.pop();for(;ne.length>1&&qTr(ne[0])&&qTr(ne[1]);)ne.shift(),ne.shift();let fe=[""];for(let[be,Se]of ne.entries()){if(Se===J){if(be===1&&gHa(ne[be-1])){if(ne.length===2){fe.push([fe.pop(),Q]);continue}fe.push([Q,Gl],"");continue}else if(be===ne.length-1){fe.push([fe.pop(),Q]);continue}else if(ne[be-1]===""&&ne[be-2]===Gl){fe.push([fe.pop(),Q]);continue}}be%2===0?fe.push([fe.pop(),Se]):fe.push(Se,""),tL(Se)&&(B=!0)}let ue=ce?Rbi(fe):Ia(fe,{shouldBreak:!0});if(((o=t.cursorNode)==null?void 0:o.type)==="JSXText"&&f.children.includes(t.cursorNode)?ue=[cbt,ue,cbt]:((l=t.nodeBeforeCursor)==null?void 0:l.type)==="JSXText"&&f.children.includes(t.nodeBeforeCursor)?ue=[cbt,ue]:((A=t.nodeAfterCursor)==null?void 0:A.type)==="JSXText"&&f.children.includes(t.nodeAfterCursor)&&(ue=[ue,cbt]),F)return ue;let de=Ia([I,Ol([Gl,ue]),Gl,C]);return B?de:Dme([Ia([I,...ne,C]),de])}function CQa(e,t,r,n,a){let o="",l=[o];function A(I){o=I,l.push([l.pop(),I])}function f(I){I!==""&&(o=I,l.push(I,""))}return e.each(({node:I,next:C})=>{if(I.type==="JSXText"){let b=nH(I);if(U4e(I)){let E=gbt.split(b,!0);E[0]===""&&(E.shift(),/\n/u.test(E[0])?f(Xyi(a,E[1],I,C)):f(n),E.shift());let N;if(z0(!1,E,-1)===""&&(E.pop(),N=E.pop()),E.length===0)return;for(let[B,F]of E.entries())B%2===1?f(qg):A(F);N!==void 0?/\n/u.test(N)?f(Xyi(a,o,I,C)):f(n):f(Qyi(a,o,I,C))}else/\n/u.test(b)?b.match(/\n/gu).length>1&&f(Gl):f(n)}else{let b=r();if(A(b),C&&U4e(C)){let E=gbt.trim(nH(C)),[N]=gbt.split(E);f(Qyi(a,N,I,C))}else f(Gl)}},"children"),l}function Qyi(e,t,r,n){return e?"":r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?t.length===1?yl:Gl:yl}function Xyi(e,t,r,n){return e?Gl:t.length===1?r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?Gl:yl:Gl}var _Qa=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]);function yQa(e,t,r){let{parent:n}=e;if(_Qa.has(n.type))return t;let a=e.match(void 0,l=>l.type==="ArrowFunctionExpression",v_,l=>l.type==="JSXExpressionContainer"),o=Pme(e,r);return Ia([o?"":Ah("("),Ol([yl,t]),yl,o?"":Ah(")")],{shouldBreak:a})}function bQa(e,t,r){let{node:n}=e,a=[];if(a.push(r("name")),n.value){let o;if(mV(n.value)){let l=nH(n.value),A=Mk(!1,Mk(!1,l.slice(1,-1),"'","'"),""",'"'),f=lbi(A,t.jsxSingleQuote);A=f==='"'?Mk(!1,A,'"',"""):Mk(!1,A,"'","'"),o=e.call(()=>g4(e,kme(f+A+f),t),"value")}else o=r("value");a.push("=",o)}return a}function EQa(e,t,r){let{node:n}=e,a=(o,l)=>o.type==="JSXEmptyExpression"||!sg(o)&&(Yk(o)||A4(o)||o.type==="ArrowFunctionExpression"||o.type==="AwaitExpression"&&(a(o.argument,o)||o.argument.type==="JSXElement")||v_(o)||o.type==="ChainExpression"&&v_(o.expression)||o.type==="FunctionExpression"||o.type==="TemplateLiteral"||o.type==="TaggedTemplateExpression"||o.type==="DoExpression"||lD(l)&&(o.type==="ConditionalExpression"||Bee(o)));return a(n.expression,e.parent)?Ia(["{",r("expression"),Tee,"}"]):Ia(["{",Ol([yl,r("expression")]),yl,Tee,"}"])}function SQa(e,t,r){var n,a;let{node:o}=e,l=sg(o.name)||sg(o.typeParameters)||sg(o.typeArguments);if(o.selfClosing&&o.attributes.length===0&&!l)return["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(((n=o.attributes)==null?void 0:n.length)===1&&mV(o.attributes[0].value)&&!o.attributes[0].value.value.includes(` +`)&&!l&&!sg(o.attributes[0]))return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," ",...e.map(r,"attributes"),o.selfClosing?" />":">"]);let A=(a=o.attributes)==null?void 0:a.some(I=>mV(I.value)&&I.value.value.includes(` +`)),f=t.singleAttributePerLine&&o.attributes.length>1?Gl:qg;return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters"),Ol(e.map(()=>[f,r()],"attributes")),...vQa(o,t,l)],{shouldBreak:A})}function vQa(e,t,r){return e.selfClosing?[qg,"/>"]:BQa(e,t,r)?[">"]:[yl,">"]}function BQa(e,t,r){let n=e.attributes.length>0&&sg(z0(!1,e.attributes,-1),hA.Trailing);return e.attributes.length===0&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!n}function wQa(e,t,r){let{node:n}=e,a=[];a.push(""),a}function TQa(e,t){let{node:r}=e,n=sg(r),a=sg(r,hA.Line),o=r.type==="JSXOpeningFragment";return[o?"<":""]}function RQa(e,t,r){let n=g4(e,mQa(e,t,r),t);return yQa(e,n,t)}function NQa(e,t){let{node:r}=e,n=sg(r,hA.Line);return[G2(e,t,{indent:n}),n?Gl:""]}function DQa(e,t,r){let{node:n}=e;return["{",e.call(({node:a})=>{let o=["...",r()];return!sg(a)||!Hbi(e)?o:[Ol([yl,g4(e,o,t)]),yl]},n.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function kQa(e,t,r){let{node:n}=e;if(n.type.startsWith("JSX"))switch(n.type){case"JSXAttribute":return bQa(e,t,r);case"JSXIdentifier":return n.name;case"JSXNamespacedName":return TC(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return TC(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return DQa(e,t,r);case"JSXExpressionContainer":return EQa(e,t,r);case"JSXFragment":case"JSXElement":return RQa(e,t,r);case"JSXOpeningElement":return SQa(e,t,r);case"JSXClosingElement":return wQa(e,t,r);case"JSXOpeningFragment":case"JSXClosingFragment":return TQa(e,t);case"JSXEmptyExpression":return NQa(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new hNe(n,"JSX")}}function xQa(e){if(e.children.length===0)return!0;if(e.children.length>1)return!1;let t=e.children[0];return t.type==="JSXText"&&!U4e(t)}function U4e(e){return e.type==="JSXText"&&(gbt.hasNonWhitespaceCharacter(nH(e))||!/\n/u.test(nH(e)))}function GQa(e){return e.type==="JSXExpressionContainer"&&mV(e.expression)&&e.expression.value===" "&&!sg(e.expression)}function FQa(e){let{node:t,parent:r}=e;if(!lD(t)||!lD(r))return!1;let{index:n,siblings:a}=e,o;for(let l=n;l>0;l--){let A=a[l-1];if(!(A.type==="JSXText"&&!U4e(A))){o=A;break}}return o?.type==="JSXExpressionContainer"&&o.expression.type==="JSXEmptyExpression"&&Sbt(o.expression)}function ZQa(e){return Sbt(e.node)||FQa(e)}var tEi=ZQa,LQa=0;function rEi(e,t,r){var n;let{node:a,parent:o,grandparent:l,key:A}=e,f=A!=="body"&&(o.type==="IfStatement"||o.type==="WhileStatement"||o.type==="SwitchStatement"||o.type==="DoWhileStatement"),I=a.operator==="|>"&&((n=e.root.extra)==null?void 0:n.__isUsingHackPipeline),C=fRr(e,r,t,!1,f);if(f)return C;if(I)return Ia(C);if(v_(o)&&o.callee===a||o.type==="UnaryExpression"||Kv(o)&&!o.computed)return Ia([Ol([yl,...C]),yl]);let b=o.type==="ReturnStatement"||o.type==="ThrowStatement"||o.type==="JSXExpressionContainer"&&l.type==="JSXAttribute"||a.operator!=="|"&&o.type==="JsExpressionRoot"||a.type!=="NGPipeExpression"&&(o.type==="NGRoot"&&t.parser==="__ng_binding"||o.type==="NGMicrosyntaxExpression"&&l.type==="NGMicrosyntax"&&l.body.length===1)||a===o.body&&o.type==="ArrowFunctionExpression"||a!==o.body&&o.type==="ForStatement"||o.type==="ConditionalExpression"&&l.type!=="ReturnStatement"&&l.type!=="ThrowStatement"&&!v_(l)||o.type==="TemplateLiteral",E=o.type==="AssignmentExpression"||o.type==="VariableDeclarator"||o.type==="ClassProperty"||o.type==="PropertyDefinition"||o.type==="TSAbstractPropertyDefinition"||o.type==="ClassPrivateProperty"||Dee(o),N=Bee(a.left)&&TRr(a.operator,a.left.operator);if(b||K4e(a)&&!N||!K4e(a)&&E)return Ia(C);if(C.length===0)return"";let B=lD(a.right),F=C.findIndex(fe=>typeof fe!="string"&&!Array.isArray(fe)&&fe.type===iH),Q=C.slice(0,F===-1?1:F+1),J=C.slice(Q.length,B?-1:void 0),ae=Symbol("logicalChain-"+ ++LQa),ne=Ia([...Q,Ol(J)],{id:ae});if(!B)return ne;let ce=z0(!1,C,-1);return Ia([ne,vbt(ce,{groupId:ae})])}function fRr(e,t,r,n,a){var o;let{node:l}=e;if(!Bee(l))return[Ia(t())];let A=[];TRr(l.operator,l.left.operator)?A=e.call(Q=>fRr(Q,t,r,!0,a),"left"):A.push(Ia(t("left")));let f=K4e(l),I=(l.operator==="|>"||l.type==="NGPipeExpression"||VQa(e,r))&&!Cce(r.originalText,l.right),C=!sg(l.right,hA.Leading,xbi)&&Cce(r.originalText,l.right),b=l.type==="NGPipeExpression"?"|":l.operator,E=l.type==="NGPipeExpression"&&l.arguments.length>0?Ia(Ol([yl,": ",TC([qg,": "],e.map(()=>_6(2,Ia(t())),"arguments"))])):"",N;if(f)N=[b," ",t("right"),E];else{let Q=b==="|>"&&((o=e.root.extra)!=null&&o.__isUsingHackPipeline)?e.call(J=>fRr(J,t,r,!0,a),"right"):t("right");if(r.experimentalOperatorPosition==="start"){let J="";if(C)switch(vce(Q)){case wee:J=Q.splice(0,1)[0];break;case kee:J=Q.contents.splice(0,1)[0];break}N=[qg,J,b," ",Q,E]}else N=[I?qg:"",b,I?" ":qg,Q,E]}let{parent:B}=e,F=sg(l.left,hA.Trailing|hA.Line);if((F||!(a&&l.type==="LogicalExpression")&&B.type!==l.type&&l.left.type!==l.type&&l.right.type!==l.type)&&(N=Ia(N,{shouldBreak:F})),r.experimentalOperatorPosition==="start"?A.push(f||C?" ":"",N):A.push(I?"":" ",N),n&&sg(l)){let Q=DRr(g4(e,A,r));return Q.type===Ece?Q.parts:Array.isArray(Q)?Q:[Q]}return A}function K4e(e){return e.type!=="LogicalExpression"?!1:!!(A4(e.right)&&e.right.properties.length>0||Yk(e.right)&&e.right.elements.length>0||lD(e.right))}var Jyi=e=>e.type==="BinaryExpression"&&e.operator==="|";function VQa(e,t){return(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&Jyi(e.node)&&!e.hasAncestor(r=>!Jyi(r)&&r.type!=="JsExpressionRoot")}function WQa(e,t,r){let{node:n}=e;if(n.type.startsWith("NG"))switch(n.type){case"NGRoot":return[r("node"),sg(n.node)?" //"+oNe(n.node)[0].value.trimEnd():""];case"NGPipeExpression":return rEi(e,t,r);case"NGChainedExpression":return Ia(TC([";",qg],e.map(()=>PQa(e)?r():["(",r(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map(()=>[e.isFirst?"":Uyi(e)?" ":[";",qg],r()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(n.name)?n.name:JSON.stringify(n.name);case"NGMicrosyntaxExpression":return[r("expression"),n.alias===null?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:a,parent:o}=e,l=Uyi(e)||(a===1&&(n.key.name==="then"||n.key.name==="else"||n.key.name==="as")||(a===2||a===3)&&(n.key.name==="else"&&o.body[a-1].type==="NGMicrosyntaxKeyedExpression"&&o.body[a-1].key.name==="then"||n.key.name==="track"))&&o.body[0].type==="NGMicrosyntaxExpression";return[r("key"),l?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),n.value===null?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new hNe(n,"Angular")}}function Uyi({node:e,index:t}){return e.type==="NGMicrosyntaxKeyedExpression"&&e.key.name==="of"&&t===1}var OQa=E0(["CallExpression","OptionalCallExpression","AssignmentExpression"]);function PQa({node:e}){return iRr(e,OQa)}function nEi(e,t,r){let{node:n}=e;return Ia([TC(qg,e.map(r,"decorators")),iEi(n,t)?Gl:qg])}function MQa(e,t,r){return sEi(e.node)?[TC(Gl,e.map(r,"declaration","decorators")),Gl]:""}function HQa(e,t,r){let{node:n,parent:a}=e,{decorators:o}=n;if(!X_(o)||sEi(a)||tEi(e))return"";let l=n.type==="ClassExpression"||n.type==="ClassDeclaration"||iEi(n,t);return[e.key==="declaration"&&FMa(a)?Gl:l?y6:"",TC(qg,e.map(r,"decorators")),qg]}function iEi(e,t){return e.decorators.some(r=>bP(t.originalText,RC(r)))}function sEi(e){var t;if(e.type!=="ExportDefaultDeclaration"&&e.type!=="ExportNamedDeclaration"&&e.type!=="DeclareExportDeclaration")return!1;let r=(t=e.declaration)==null?void 0:t.decorators;return X_(r)&&ybt(e,r[0])}var hbt=class extends Error{name="ArgExpansionBailout"};function YQa(e,t,r){let{node:n}=e,a=aH(n);if(a.length===0)return["(",G2(e,t),")"];let o=a.length-1;if(JQa(a)){let b=["("];return fbt(e,(E,N)=>{b.push(r()),N!==o&&b.push(", ")}),b.push(")"),b}let l=!1,A=[];fbt(e,({node:b},E)=>{let N=r();E===o||(Nee(b,t)?(l=!0,N=[N,",",Gl,Gl]):N=[N,",",qg]),A.push(N)});let f=!t.parser.startsWith("__ng_")&&n.type!=="ImportExpression"&&Ree(t,"all")?",":"";function I(){return Ia(["(",Ol([qg,...A]),f,qg,")"],{shouldBreak:!0})}if(l||e.parent.type!=="Decorator"&&QMa(a))return I();if(XQa(a)){let b=A.slice(1);if(b.some(tL))return I();let E;try{E=r(Lyi(n,0),{expandFirstArg:!0})}catch(N){if(N instanceof hbt)return I();throw N}return tL(E)?[y6,Dme([["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])]:Dme([["(",E,", ",...b,")"],["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])}if(QQa(a,A,t)){let b=A.slice(0,-1);if(b.some(tL))return I();let E;try{E=r(Lyi(n,-1),{expandLastArg:!0})}catch(N){if(N instanceof hbt)return I();throw N}return tL(E)?[y6,Dme([["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])]:Dme([["(",...b,E,")"],["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])}let C=["(",Ol([yl,...A]),Ah(f),yl,")"];return bbi(e)?C:Ia(C,{shouldBreak:A.some(tL)||l})}function Y4e(e,t=!1){return A4(e)&&(e.properties.length>0||sg(e))||Yk(e)&&(e.elements.length>0||sg(e))||e.type==="TSTypeAssertion"&&Y4e(e.expression)||h6(e)&&Y4e(e.expression)||e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&(!e.returnType||!e.returnType.typeAnnotation||e.returnType.typeAnnotation.type!=="TSTypeReference"||UQa(e.body))&&(e.body.type==="BlockStatement"||e.body.type==="ArrowFunctionExpression"&&Y4e(e.body,!0)||A4(e.body)||Yk(e.body)||!t&&(v_(e.body)||e.body.type==="ConditionalExpression")||lD(e.body))||e.type==="DoExpression"||e.type==="ModuleExpression"}function QQa(e,t,r){var n,a;let o=z0(!1,e,-1);if(e.length===1){let A=z0(!1,t,-1);if((n=A.label)!=null&&n.embed&&((a=A.label)==null?void 0:a.hug)!==!1)return!0}let l=z0(!1,e,-2);return!sg(o,hA.Leading)&&!sg(o,hA.Trailing)&&Y4e(o)&&(!l||l.type!==o.type)&&(e.length!==2||l.type!=="ArrowFunctionExpression"||!Yk(o))&&!(e.length>1&&DEi(o,r))}function XQa(e){if(e.length!==2)return!1;let[t,r]=e;return t.type==="ModuleExpression"&&KQa(r)?!0:!sg(t)&&(t.type==="FunctionExpression"||t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement")&&r.type!=="FunctionExpression"&&r.type!=="ArrowFunctionExpression"&&r.type!=="ConditionalExpression"&&oEi(r)&&!Y4e(r)}function oEi(e){if(e.type==="ParenthesizedExpression")return oEi(e.expression);if(h6(e)||e.type==="TypeCastExpression"){let{typeAnnotation:t}=e;if(t.type==="TypeAnnotation"&&(t=t.typeAnnotation),t.type==="TSArrayType"&&(t=t.elementType,t.type==="TSArrayType"&&(t=t.elementType)),t.type==="GenericTypeAnnotation"||t.type==="TSTypeReference"){let r=t.typeArguments??t.typeParameters;r?.params.length===1&&(t=r.params[0])}return BRr(t)&&u4(e.expression,1)}return gNe(e)&&aH(e).length>1?!1:Bee(e)?u4(e.left,1)&&u4(e.right,1):Ibi(e)||u4(e)}function JQa(e){return e.length===2?Kyi(e,0):e.length===3?e[0].type==="Identifier"&&Kyi(e,1):!1}function Kyi(e,t){let r=e[t],n=e[t+1];return r.type==="ArrowFunctionExpression"&&ZG(r).length===0&&r.body.type==="BlockStatement"&&n.type==="ArrayExpression"&&!e.some(a=>sg(a))}function UQa(e){return e.type==="BlockStatement"&&(e.body.some(t=>t.type!=="EmptyStatement")||sg(e,hA.Dangling))}function KQa(e){return e.type==="ObjectExpression"&&e.properties.length===1&&Dee(e.properties[0])&&e.properties[0].key.type==="Identifier"&&e.properties[0].key.name==="type"&&mV(e.properties[0].value)&&e.properties[0].value.value==="module"}var IRr=YQa,jQa=e=>((e.type==="ChainExpression"||e.type==="TSNonNullExpression")&&(e=e.expression),v_(e)&&aH(e).length>0);function zQa(e,t,r){var n;let a=r("object"),o=aEi(e,t,r),{node:l}=e,A=e.findAncestor(C=>!(Kv(C)||C.type==="TSNonNullExpression")),f=e.findAncestor(C=>!(C.type==="ChainExpression"||C.type==="TSNonNullExpression")),I=A&&(A.type==="NewExpression"||A.type==="BindExpression"||A.type==="AssignmentExpression"&&A.left.type!=="Identifier")||l.computed||l.object.type==="Identifier"&&l.property.type==="Identifier"&&!Kv(f)||(f.type==="AssignmentExpression"||f.type==="VariableDeclarator")&&(jQa(l.object)||((n=a.label)==null?void 0:n.memberChain));return j4e(a.label,[a,I?o:Ia(Ol([yl,o]))])}function aEi(e,t,r){let n=r("property"),{node:a}=e,o=rL(e);return a.computed?!a.property||vee(a.property)?[o,"[",n,"]"]:Ia([o,"[",Ol([yl,n]),yl,"]"]):[o,".",n]}function cEi(e,t,r){if(e.node.type==="ChainExpression")return e.call(()=>cEi(e,t,r),"expression");let{parent:n}=e,a=!n||n.type==="ExpressionStatement",o=[];function l(Le){let{originalText:Je}=t,ft=INe(Je,RC(Le));return Je.charAt(ft)===")"?ft!==!1&&bRr(Je,ft+1):Nee(Le,t)}function A(){let{node:Le}=e;if(Le.type==="ChainExpression")return e.call(A,"expression");if(v_(Le)&&(iNe(Le.callee)||v_(Le.callee))){let Je=l(Le);o.unshift({node:Le,hasTrailingEmptyLine:Je,printed:[g4(e,[rL(e),xme(e,t,r),IRr(e,t,r)],t),Je?Gl:""]}),e.call(A,"callee")}else iNe(Le)?(o.unshift({node:Le,needsParens:Pme(e,t),printed:g4(e,Kv(Le)?aEi(e,t,r):REi(e,t,r),t)}),e.call(A,"object")):Le.type==="TSNonNullExpression"?(o.unshift({node:Le,printed:g4(e,"!",t)}),e.call(A,"expression")):o.unshift({node:Le,printed:r()})}let{node:f}=e;o.unshift({node:f,printed:[rL(e),xme(e,t,r),IRr(e,t,r)]}),f.callee&&e.call(A,"callee");let I=[],C=[o[0]],b=1;for(;b0&&I.push(C);function N(Le){return/^[A-Z]|^[$_]+$/u.test(Le)}function B(Le){return Le.length<=t.tabWidth}function F(Le){var Je;let ft=(Je=Le[1][0])==null?void 0:Je.node.computed;if(Le[0].length===1){let Ot=Le[0][0].node;return Ot.type==="ThisExpression"||Ot.type==="Identifier"&&(N(Ot.name)||a&&B(Ot.name)||ft)}let lt=z0(!1,Le[0],-1).node;return Kv(lt)&<.property.type==="Identifier"&&(N(lt.property.name)||ft)}let Q=I.length>=2&&!sg(I[1][0].node)&&F(I);function J(Le){let Je=Le.map(ft=>ft.printed);return Le.length>0&&z0(!1,Le,-1).needsParens?["(",...Je,")"]:Je}function ae(Le){return Le.length===0?"":Ol([Gl,TC(Gl,Le.map(J))])}let ne=I.map(J),ce=ne,fe=Q?3:2,ue=I.flat(),de=ue.slice(1,-1).some(Le=>sg(Le.node,hA.Leading))||ue.slice(0,-1).some(Le=>sg(Le.node,hA.Trailing))||I[fe]&&sg(I[fe][0].node,hA.Leading);if(I.length<=fe&&!de&&!I.some(Le=>z0(!1,Le,-1).hasTrailingEmptyLine))return bbi(e)?ce:Ia(ce);let be=z0(!1,I[Q?1:0],-1).node,Se=!v_(be)&&l(be),De=[J(I[0]),Q?I.slice(1,2).map(J):"",Se?Gl:"",ae(I.slice(Q?2:1))],k=o.map(({node:Le})=>Le).filter(v_);function tt(){let Le=z0(!1,z0(!1,I,-1),-1).node,Je=z0(!1,ne,-1);return v_(Le)&&tL(Je)&&k.slice(0,-1).some(ft=>ft.arguments.some(X4e))}let ze;return de||k.length>2&&k.some(Le=>!Le.arguments.every(Je=>u4(Je)))||ne.slice(0,-1).some(tL)||tt()?ze=Ia(De):ze=[tL(ce)||Se?y6:"",Dme([ce,De])],j4e({memberChain:!0},ze)}var qQa=cEi;function lEi(e,t,r){var n;let{node:a}=e,o=a.type==="NewExpression",l=a.type==="ImportExpression",A=rL(e),f=aH(a),I=f.length===1&&_bi(f[0],t.originalText);if(I||$Qa(e)||Ebt(a,e.parent)){let b=[];if(fbt(e,()=>{b.push(r())}),!(I&&(n=b[0].label)!=null&&n.embed))return[o?"new ":"",jyi(e,r),A,xme(e,t,r),"(",TC(", ",b),")"]}if(!l&&!o&&iNe(a.callee)&&!e.call(b=>Pme(b,t),"callee",...a.callee.type==="ChainExpression"?["expression"]:[]))return qQa(e,t,r);let C=[o?"new ":"",jyi(e,r),A,xme(e,t,r),IRr(e,t,r)];return l||v_(a.callee)?Ia(C):C}function jyi(e,t){let{node:r}=e;return r.type==="ImportExpression"?`import${r.phase?`.${r.phase}`:""}`:t("callee")}function $Qa(e){let{node:t}=e;if(t.type!=="CallExpression"||t.optional||t.callee.type!=="Identifier")return!1;let r=aH(t);return t.callee.name==="require"?r.length===1&&mV(r[0])||r.length>1:t.callee.name==="define"&&e.parent.type==="ExpressionStatement"?r.length===1||r.length===2&&r[0].type==="ArrayExpression"||r.length===3&&mV(r[0])&&r[1].type==="ArrayExpression":!1}function z4e(e,t,r,n,a,o){let l=rXa(e,t,r,n,o),A=o?r(o,{assignmentLayout:l}):"";switch(l){case"break-after-operator":return Ia([Ia(n),a,Ia(Ol([qg,A]))]);case"never-break-after-operator":return Ia([Ia(n),a," ",A]);case"fluid":{let f=Symbol("assignment");return Ia([Ia(n),a,Ia(Ol(qg),{id:f}),Tee,vbt(A,{groupId:f})])}case"break-lhs":return Ia([n,a," ",Ia(A)]);case"chain":return[Ia(n),a,qg,A];case"chain-tail":return[Ia(n),a,Ol([qg,A])];case"chain-tail-arrow-chain":return[Ia(n),a,A];case"only-left":return n}}function eXa(e,t,r){let{node:n}=e;return z4e(e,t,r,r("left"),[" ",n.operator],"right")}function tXa(e,t,r){return z4e(e,t,r,r("id")," =","init")}function rXa(e,t,r,n,a){let{node:o}=e,l=o[a];if(!l)return"only-left";let A=!Abt(l);if(e.match(Abt,uEi,C=>!A||C.type!=="ExpressionStatement"&&C.type!=="VariableDeclaration"))return A?l.type==="ArrowFunctionExpression"&&l.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!A&&Abt(l.right)||Cce(t.originalText,l))return"break-after-operator";if(o.type==="ImportAttribute"||l.type==="CallExpression"&&l.callee.name==="require"||t.parser==="json5"||t.parser==="jsonc"||t.parser==="json")return"never-break-after-operator";let f=uHa(n);if(iXa(o)||cXa(o)||gEi(o)&&f)return"break-lhs";let I=uXa(o,n,t);return e.call(()=>nXa(e,t,r,I),a)?"break-after-operator":sXa(o)?"break-lhs":!f&&(I||l.type==="TemplateLiteral"||l.type==="TaggedTemplateExpression"||l.type==="BooleanLiteral"||vee(l)||l.type==="ClassExpression")?"never-break-after-operator":"fluid"}function nXa(e,t,r,n){let a=e.node;if(Bee(a)&&!K4e(a))return!0;switch(a.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!dXa(a))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:I}=a;return Bee(I)&&!K4e(I)}let{consequent:A,alternate:f}=a;return A.type==="ConditionalExpression"||f.type==="ConditionalExpression"}case"ClassExpression":return X_(a.decorators)}if(n)return!1;let o=a,l=[];for(;;)if(o.type==="UnaryExpression"||o.type==="AwaitExpression"||o.type==="YieldExpression"&&o.argument!==null)o=o.argument,l.push("argument");else if(o.type==="TSNonNullExpression")o=o.expression,l.push("expression");else break;return!!(mV(o)||e.call(()=>AEi(e,t,r),...l))}function iXa(e){if(uEi(e)){let t=e.left||e.id;return t.type==="ObjectPattern"&&t.properties.length>2&&t.properties.some(r=>{var n;return Dee(r)&&(!r.shorthand||((n=r.value)==null?void 0:n.type)==="AssignmentPattern")})}return!1}function Abt(e){return e.type==="AssignmentExpression"}function uEi(e){return Abt(e)||e.type==="VariableDeclarator"}function sXa(e){let t=aXa(e);if(X_(t)){let r=e.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(t.length>1&&t.some(n=>n[r]||n.default))return!0}return!1}var oXa=E0(["TSTypeAliasDeclaration","TypeAlias"]);function aXa(e){var t;if(oXa(e))return(t=e.typeParameters)==null?void 0:t.params}function cXa(e){if(e.type!=="VariableDeclarator")return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=zyi(t.typeAnnotation);return X_(r)&&r.length>1&&r.some(n=>X_(zyi(n))||n.type==="TSConditionalType")}function gEi(e){var t;return e.type==="VariableDeclarator"&&((t=e.init)==null?void 0:t.type)==="ArrowFunctionExpression"}var lXa=E0(["TSTypeReference","GenericTypeAnnotation"]);function zyi(e){var t;if(lXa(e))return(t=e.typeArguments??e.typeParameters)==null?void 0:t.params}function AEi(e,t,r,n=!1){var a;let{node:o}=e,l=()=>AEi(e,t,r,!0);if(o.type==="ChainExpression"||o.type==="TSNonNullExpression")return e.call(l,"expression");if(v_(o)){if((a=lEi(e,t,r).label)!=null&&a.memberChain)return!1;let A=aH(o);return!(A.length===0||A.length===1&&wRr(A[0],t))||gXa(o,r)?!1:e.call(l,"callee")}return Kv(o)?e.call(l,"object"):n&&(o.type==="Identifier"||o.type==="ThisExpression")}function uXa(e,t,r){return Dee(e)?(t=DRr(t),typeof t=="string"&&aNe(t)1)return!0;if(r.length===1){let a=r[0];if(_ce(a)||RRr(a)||a.type==="TSTypeLiteral"||a.type==="ObjectTypeAnnotation")return!0}let n=e.typeParameters?"typeParameters":"typeArguments";if(tL(t(n)))return!0}return!1}function AXa(e){var t;return(t=e.typeParameters??e.typeArguments)==null?void 0:t.params}function dXa(e){function t(r){switch(r.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!r.typeParameters;case"TSTypeReference":return!!(r.typeArguments??r.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}function Mme(e,t,r,n,a){let o=e.node,l=ZG(o),A=a?xme(e,r,t):"";if(l.length===0)return[A,"(",G2(e,r,{filter:N=>d4(r.originalText,RC(N))===")"}),")"];let{parent:f}=e,I=Ebt(f),C=dEi(o),b=[];if(zMa(e,(N,B)=>{let F=B===l.length-1;F&&o.rest&&b.push("..."),b.push(t()),!F&&(b.push(","),I||C?b.push(" "):Nee(l[B],r)?b.push(Gl,Gl):b.push(qg))}),n&&!fXa(e)){if(tL(A)||tL(b))throw new hbt;return Ia([oRr(A),"(",oRr(b),")"])}let E=l.every(N=>!X_(N.decorators));return C&&E?[A,"(",...b,")"]:I?[A,"(",...b,")"]:(hbi(f)||WMa(f)||f.type==="TypeAlias"||f.type==="UnionTypeAnnotation"||f.type==="IntersectionTypeAnnotation"||f.type==="FunctionTypeAnnotation"&&f.returnType===o)&&l.length===1&&l[0].name===null&&o.this!==l[0]&&l[0].typeAnnotation&&o.typeParameters===null&&BRr(l[0].typeAnnotation)&&!o.rest?r.arrowParens==="always"||o.type==="HookTypeAnnotation"?["(",...b,")"]:b:[A,"(",Ol([yl,...b]),Ah(!jMa(o)&&Ree(r,"all")?",":""),yl,")"]}function dEi(e){if(!e)return!1;let t=ZG(e);if(t.length!==1)return!1;let[r]=t;return!sg(r)&&(r.type==="ObjectPattern"||r.type==="ArrayPattern"||r.type==="Identifier"&&r.typeAnnotation&&(r.typeAnnotation.type==="TypeAnnotation"||r.typeAnnotation.type==="TSTypeAnnotation")&&mce(r.typeAnnotation.typeAnnotation)||r.type==="FunctionTypeParam"&&mce(r.typeAnnotation)&&r!==e.rest||r.type==="AssignmentPattern"&&(r.left.type==="ObjectPattern"||r.left.type==="ArrayPattern")&&(r.right.type==="Identifier"||A4(r.right)&&r.right.properties.length===0||Yk(r.right)&&r.right.elements.length===0))}function pXa(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}function mNe(e,t){var r;let n=pXa(e);if(!n)return!1;let a=(r=e.typeParameters)==null?void 0:r.params;if(a){if(a.length>1)return!1;if(a.length===1){let o=a[0];if(o.constraint||o.default)return!1}}return ZG(e).length===1&&(mce(n)||tL(t))}function fXa(e){return e.match(t=>t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement",(t,r)=>{if(t.type==="CallExpression"&&r==="arguments"&&t.arguments.length===1&&t.callee.type==="CallExpression"){let n=t.callee.callee;return n.type==="Identifier"||n.type==="MemberExpression"&&!n.computed&&n.object.type==="Identifier"&&n.property.type==="Identifier"}return!1},(t,r)=>t.type==="VariableDeclarator"&&r==="init"||t.type==="ExportDefaultDeclaration"&&r==="declaration"||t.type==="TSExportAssignment"&&r==="expression"||t.type==="AssignmentExpression"&&r==="right"&&t.left.type==="MemberExpression"&&t.left.object.type==="Identifier"&&t.left.object.name==="module"&&t.left.property.type==="Identifier"&&t.left.property.name==="exports",t=>t.type!=="VariableDeclaration"||t.kind==="const"&&t.declarations.length===1)}function IXa(e){let t=ZG(e);return t.length>1&&t.some(r=>r.type==="TSParameterProperty")}var hXa=E0(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),mXa=E0(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]);function CXa(e){let{types:t}=e;if(t.some(n=>sg(n)))return!1;let r=t.find(n=>mXa(n));return r?t.every(n=>n===r||hXa(n)):!1}function pEi(e){return BRr(e)||mce(e)?!0:_ce(e)?CXa(e):!1}function _Xa(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[CV(e),"opaque type ",r("id"),r("typeParameters")];return a.supertype&&o.push(": ",r("supertype")),a.impltype&&o.push(" = ",r("impltype")),o.push(n),o}function fEi(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[CV(e)];o.push("type ",r("id"),r("typeParameters"));let l=a.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[z4e(e,t,r,o," =",l),n]}function IEi(e,t,r){let n=!1;return Ia(e.map(({isFirst:a,previous:o,node:l,index:A})=>{let f=r();if(a)return f;let I=mce(l),C=mce(o);return C&&I?[" & ",n?Ol(f):f]:!C&&!I?t.experimentalOperatorPosition==="start"?Ol([qg,"& ",f]):Ol([" &",qg,f]):(A>1&&(n=!0),[" & ",A>1?Ol(f):f])},"types"))}function hEi(e,t,r){let{node:n}=e,{parent:a}=e,o=a.type!=="TypeParameterInstantiation"&&(!yce(a)||!t.experimentalTernaries)&&a.type!=="TSTypeParameterInstantiation"&&a.type!=="GenericTypeAnnotation"&&a.type!=="TSTypeReference"&&a.type!=="TSTypeAssertion"&&a.type!=="TupleTypeAnnotation"&&a.type!=="TSTupleType"&&!(a.type==="FunctionTypeParam"&&!a.name&&e.grandparent.this!==a)&&!((a.type==="TypeAlias"||a.type==="VariableDeclarator"||a.type==="TSTypeAliasDeclaration")&&Cce(t.originalText,n)),l=pEi(n),A=e.map(C=>{let b=r();return l||(b=_6(2,b)),g4(C,b,t)},"types");if(l)return TC(" | ",A);let f=o&&!Cce(t.originalText,n),I=[Ah([f?qg:"","| "]),TC([qg,"| "],A)];return Pme(e,t)?Ia([Ol(I),yl]):(a.type==="TupleTypeAnnotation"||a.type==="TSTupleType")&&a[a.type==="TupleTypeAnnotation"&&a.types?"types":"elementTypes"].length>1?Ia([Ol([Ah(["(",yl]),I]),yl,Ah(")")]):Ia(o?Ol(I):I)}function yXa(e){var t;let{node:r,parent:n}=e;return r.type==="FunctionTypeAnnotation"&&(hbi(n)||!((n.type==="ObjectTypeProperty"||n.type==="ObjectTypeInternalSlot")&&!n.variance&&!n.optional&&ybt(n,r)||n.type==="ObjectTypeCallProperty"||((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareFunction"))}function mEi(e,t,r){let{node:n}=e,a=[Bbt(e)];(n.type==="TSConstructorType"||n.type==="TSConstructSignatureDeclaration")&&a.push("new ");let o=Mme(e,r,t,!1,!0),l=[];return n.type==="FunctionTypeAnnotation"?l.push(yXa(e)?" => ":": ",r("returnType")):l.push(Hk(e,r,n.returnType?"returnType":"typeAnnotation")),mNe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function CEi(e,t,r){return[r("objectType"),rL(e),"[",r("indexType"),"]"]}function _Ei(e,t,r){return["infer ",r("typeParameter")]}function qyi(e,t,r){let{node:n}=e;return[n.postfix?"":r,Hk(e,t),n.postfix?r:""]}function yEi(e,t,r){let{node:n}=e;return["...",...n.type==="TupleTypeSpreadElement"&&n.label?[r("label"),": "]:[],r("typeAnnotation")]}function bEi(e,t,r){let{node:n}=e;return[n.variance?r("variance"):"",r("label"),n.optional?"?":"",": ",r("elementType")]}var bXa=new WeakSet;function Hk(e,t,r="typeAnnotation"){let{node:{[r]:n}}=e;if(!n)return"";let a=!1;if(n.type==="TSTypeAnnotation"||n.type==="TypeAnnotation"){let o=e.call(EEi,r);(o==="=>"||o===":"&&sg(n,hA.Leading))&&(a=!0),bXa.add(n)}return a?[" ",t(r)]:t(r)}var EEi=e=>e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>(r==="returnType"||r==="typeAnnotation")&&(t.type==="TSFunctionType"||t.type==="TSConstructorType"))?"=>":e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>r==="typeAnnotation"&&(t.type==="TSJSDocNullableType"||t.type==="TSJSDocNonNullableType"||t.type==="TSTypePredicate"))||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareFunction")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareHook")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="bound"&&t.type==="TypeParameter"&&t.usesExtendsBound)?"":":";function SEi(e,t,r){let n=EEi(e);return n?[n," ",r("typeAnnotation")]:r("typeAnnotation")}function vEi(e){return[e("elementType"),"[]"]}function BEi({node:e},t){let r=e.type==="TSTypeQuery"?"exprName":"argument",n=e.type==="TypeofTypeAnnotation"||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(n)]}function wEi(e,t){let{node:r}=e;return[r.type==="TSTypePredicate"&&r.asserts?"asserts ":r.type==="TypePredicate"&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",Hk(e,t)]:""]}function rL(e){let{node:t}=e;return!t.optional||t.type==="Identifier"&&t===e.parent.key?"":v_(t)||Kv(t)&&t.computed||t.type==="OptionalIndexedAccessType"?"?.":"?"}function TEi(e){return e.node.definite||e.match(void 0,(t,r)=>r==="id"&&t.type==="VariableDeclarator"&&t.definite)?"!":""}var EXa=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]);function CV(e){let{node:t}=e;return t.declare||EXa.has(t.type)&&e.parent.type!=="DeclareExportDeclaration"?"declare ":""}var SXa=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function Bbt({node:e}){return e.abstract||SXa.has(e.type)?"abstract ":""}function xme(e,t,r){let n=e.node;return n.typeArguments?r("typeArguments"):n.typeParameters?r("typeParameters"):""}function REi(e,t,r){return["::",r("callee")]}function Ice(e,t,r){return e.type==="EmptyStatement"?";":e.type==="BlockStatement"||r?[" ",t]:Ol([qg,t])}function NEi(e,t){return["...",t("argument"),Hk(e,t)]}function mbt(e){return e.accessibility?e.accessibility+" ":""}function vXa(e,t,r,n){let{node:a}=e,o=a.inexact?"...":"";return sg(a,hA.Dangling)?Ia([r,o,G2(e,t,{indent:!0}),yl,n]):[r,o,n]}function ORr(e,t,r){let{node:n}=e,a=[],o=n.type==="TupleExpression"?"#[":"[",l="]",A=n.type==="TupleTypeAnnotation"&&n.types?"types":n.type==="TSTupleType"||n.type==="TupleTypeAnnotation"?"elementTypes":"elements",f=n[A];if(f.length===0)a.push(vXa(e,t,o,l));else{let I=z0(!1,f,-1),C=I?.type!=="RestElement"&&!n.inexact,b=I===null,E=Symbol("array"),N=!t.__inJestEach&&f.length>1&&f.every((Q,J,ae)=>{let ne=Q?.type;if(!Yk(Q)&&!A4(Q))return!1;let ce=ae[J+1];if(ce&&ne!==ce.type)return!1;let fe=Yk(Q)?"elements":"properties";return Q[fe]&&Q[fe].length>1}),B=DEi(n,t),F=C?b?",":Ree(t)?B?Ah(",","",{groupId:E}):Ah(","):"":"";a.push(Ia([o,Ol([yl,B?wXa(e,t,r,F):[BXa(e,t,A,n.inexact,r),F],G2(e,t)]),yl,l],{shouldBreak:N,id:E}))}return a.push(rL(e),Hk(e,r)),a}function DEi(e,t){return Yk(e)&&e.elements.length>1&&e.elements.every(r=>r&&(vee(r)||fbi(r)&&!sg(r.argument))&&!sg(r,hA.Trailing|hA.Line,n=>!bP(t.originalText,PS(n),{backwards:!0})))}function kEi({node:e},{originalText:t}){let r=a=>_Rr(t,yRr(t,a)),n=a=>t[a]===","?a:n(r(a+1));return bRr(t,n(RC(e)))}function BXa(e,t,r,n,a){let o=[];return e.each(({node:l,isLast:A})=>{o.push(l?Ia(a()):""),(!A||n)&&o.push([",",qg,l&&kEi(e,t)?yl:""])},r),n&&o.push("..."),o}function wXa(e,t,r,n){let a=[];return e.each(({isLast:o,next:l})=>{a.push([r(),o?n:","]),o||a.push(kEi(e,t)?[Gl,Gl]:sg(l,hA.Leading|hA.Line)?Gl:qg)},"elements"),Rbi(a)}var TXa=/^[\$A-Z_a-z\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][\$0-9A-Z_a-z\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]*$/,RXa=e=>TXa.test(e),NXa=RXa;function DXa(e){return e.length===1?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}var ANe=DXa,dbt=new WeakMap;function xEi(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function $yi(e,t){return t.parser==="json"||t.parser==="jsonc"||!mV(e.key)||uNe(nH(e.key),t).slice(1,-1)!==e.key.value?!1:!!(NXa(e.key.value)&&!(t.parser==="babel-ts"&&e.type==="ClassProperty"||t.parser==="typescript"&&e.type==="PropertyDefinition")||xEi(e.key.value)&&String(Number(e.key.value))===e.key.value&&e.type!=="ImportAttribute"&&(t.parser==="babel"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree"))}function kXa(e,t){let{key:r}=e.node;return(r.type==="Identifier"||vee(r)&&xEi(ANe(nH(r)))&&String(r.value)===ANe(nH(r))&&!(t.parser==="typescript"||t.parser==="babel-ts"))&&(t.parser==="json"||t.parser==="jsonc"||t.quoteProps==="consistent"&&dbt.get(e.parent))}function q4e(e,t,r){let{node:n}=e;if(n.computed)return["[",r("key"),"]"];let{parent:a}=e,{key:o}=n;if(t.quoteProps==="consistent"&&!dbt.has(a)){let l=e.siblings.some(A=>!A.computed&&mV(A.key)&&!$yi(A,t));dbt.set(a,l)}if(kXa(e,t)){let l=uNe(JSON.stringify(o.type==="Identifier"?o.name:o.value.toString()),t);return e.call(A=>g4(A,l,t),"key")}return $yi(n,t)&&(t.quoteProps==="as-needed"||t.quoteProps==="consistent"&&!dbt.get(a))?e.call(l=>g4(l,/^\d/u.test(o.value)?ANe(o.value):o.value,t),"key"):r("key")}function $Tr(e,t,r){let{node:n}=e;return n.shorthand?r("value"):z4e(e,t,r,q4e(e,t,r),":","value")}var xXa=({node:e,key:t,parent:r})=>t==="value"&&e.type==="FunctionExpression"&&(r.type==="ObjectMethod"||r.type==="ClassMethod"||r.type==="ClassPrivateMethod"||r.type==="MethodDefinition"||r.type==="TSAbstractMethodDefinition"||r.type==="TSDeclareMethod"||r.type==="Property"&&bbt(r));function GEi(e,t,r,n){if(xXa(e))return PRr(e,r,t);let{node:a}=e,o=!1;if((a.type==="FunctionDeclaration"||a.type==="FunctionExpression")&&n!=null&&n.expandLastArg){let{parent:C}=e;v_(C)&&(aH(C).length>1||ZG(a).every(b=>b.type==="Identifier"&&!b.typeAnnotation))&&(o=!0)}let l=[CV(e),a.async?"async ":"",`function${a.generator?"*":""} `,a.id?t("id"):""],A=Mme(e,t,r,o),f=wbt(e,t),I=mNe(a,f);return l.push(xme(e,r,t),Ia([I?Ia(A):A,f]),a.body?" ":"",t("body")),r.semi&&(a.declare||!a.body)&&l.push(";"),l}function hRr(e,t,r){let{node:n}=e,{kind:a}=n,o=n.value||n,l=[];return!a||a==="init"||a==="method"||a==="constructor"?o.async&&l.push("async "):(ERr.ok(a==="get"||a==="set"),l.push(a," ")),o.generator&&l.push("*"),l.push(q4e(e,t,r),n.optional||n.key.optional?"?":"",n===o?PRr(e,t,r):r("value")),l}function PRr(e,t,r){let{node:n}=e,a=Mme(e,r,t),o=wbt(e,r),l=IXa(n),A=mNe(n,o),f=[xme(e,t,r),Ia([l?Ia(a,{shouldBreak:!0}):A?Ia(a):a,o])];return n.body?f.push(" ",r("body")):f.push(t.semi?";":""),f}function GXa(e){let t=ZG(e);return t.length===1&&!e.typeParameters&&!sg(e,hA.Dangling)&&t[0].type==="Identifier"&&!t[0].typeAnnotation&&!sg(t[0])&&!t[0].optional&&!e.predicate&&!e.returnType}function FEi(e,t){if(t.arrowParens==="always")return!1;if(t.arrowParens==="avoid"){let{node:r}=e;return GXa(r)}return!1}function wbt(e,t){let{node:r}=e,n=[Hk(e,t,"returnType")];return r.predicate&&n.push(t("predicate")),n}function ZEi(e,t,r){let{node:n}=e,a=t.semi?";":"",o=[];if(n.argument){let f=r("argument");LXa(t,n.argument)?f=["(",Ol([Gl,f]),Gl,")"]:(Bee(n.argument)||n.argument.type==="SequenceExpression"||t.experimentalTernaries&&n.argument.type==="ConditionalExpression"&&(n.argument.consequent.type==="ConditionalExpression"||n.argument.alternate.type==="ConditionalExpression"))&&(f=Ia([Ah("("),Ol([yl,f]),yl,Ah(")")])),o.push(" ",f)}let l=sg(n,hA.Dangling),A=a&&l&&sg(n,hA.Last|hA.Line);return A&&o.push(a),l&&o.push(" ",G2(e,t)),A||o.push(a),o}function FXa(e,t,r){return["return",ZEi(e,t,r)]}function ZXa(e,t,r){return["throw",ZEi(e,t,r)]}function LXa(e,t){if(Cce(e.originalText,t)||sg(t,hA.Leading,r=>bce(e.originalText,PS(r),RC(r)))&&!lD(t))return!0;if(SRr(t)){let r=t,n;for(;n=GMa(r);)if(r=n,Cce(e.originalText,r))return!0}return!1}var eRr=new WeakMap;function LEi(e){return eRr.has(e)||eRr.set(e,e.type==="ConditionalExpression"&&!eL(e,t=>t.type==="ObjectExpression")),eRr.get(e)}var VEi=e=>e.type==="SequenceExpression";function VXa(e,t,r,n={}){let a=[],o,l=[],A=!1,f=!n.expandLastArg&&e.node.body.type==="ArrowFunctionExpression",I;(function J(){let{node:ae}=e,ne=WXa(e,t,r,n);if(a.length===0)a.push(ne);else{let{leading:ce,trailing:fe}=eEi(e,t);a.push([ce,ne]),l.unshift(fe)}f&&(A||(A=ae.returnType&&ZG(ae).length>0||ae.typeParameters||ZG(ae).some(ce=>ce.type!=="Identifier"))),!f||ae.body.type!=="ArrowFunctionExpression"?(o=r("body",n),I=ae.body):e.call(J,"body")})();let C=!Cce(t.originalText,I)&&(VEi(I)||OXa(I,o,t)||!A&&LEi(I)),b=e.key==="callee"&&gNe(e.parent),E=Symbol("arrow-chain"),N=PXa(e,n,{signatureDocs:a,shouldBreak:A}),B=!1,F=!1,Q=!1;return f&&(b||n.assignmentLayout)&&(F=!0,Q=!sg(e.node,hA.Leading&hA.Line),B=n.assignmentLayout==="chain-tail-arrow-chain"||b&&!C),o=MXa(e,t,n,{bodyDoc:o,bodyComments:l,functionBody:I,shouldPutBodyOnSameLine:C}),Ia([Ia(F?Ol([Q?yl:"",N]):N,{shouldBreak:B,id:E})," =>",f?vbt(o,{groupId:E}):Ia(o),f&&b?Ah(yl,"",{groupId:E}):""])}function WXa(e,t,r,n){let{node:a}=e,o=[];if(a.async&&o.push("async "),FEi(e,t))o.push(r(["params",0]));else{let A=n.expandLastArg||n.expandFirstArg,f=wbt(e,r);if(A){if(tL(f))throw new hbt;f=Ia(oRr(f))}o.push(Ia([Mme(e,r,t,A,!0),f]))}let l=G2(e,t,{filter(A){let f=INe(t.originalText,RC(A));return f!==!1&&t.originalText.slice(f,f+2)==="=>"}});return l&&o.push(" ",l),o}function OXa(e,t,r){var n,a;return Yk(e)||A4(e)||e.type==="ArrowFunctionExpression"||e.type==="DoExpression"||e.type==="BlockStatement"||lD(e)||((n=t.label)==null?void 0:n.hug)!==!1&&(((a=t.label)==null?void 0:a.embed)||_bi(e,r.originalText))}function PXa(e,t,{signatureDocs:r,shouldBreak:n}){if(r.length===1)return r[0];let{parent:a,key:o}=e;return o!=="callee"&&gNe(a)||Bee(a)?Ia([r[0]," =>",Ol([qg,TC([" =>",qg],r.slice(1))])],{shouldBreak:n}):o==="callee"&&gNe(a)||t.assignmentLayout?Ia(TC([" =>",qg],r),{shouldBreak:n}):Ia(Ol(TC([" =>",qg],r)),{shouldBreak:n})}function MXa(e,t,r,{bodyDoc:n,bodyComments:a,functionBody:o,shouldPutBodyOnSameLine:l}){let{node:A,parent:f}=e,I=r.expandLastArg&&Ree(t,"all")?Ah(","):"",C=(r.expandLastArg||f.type==="JSXExpressionContainer")&&!sg(A)?yl:"";return l&&LEi(o)?[" ",Ia([Ah("","("),Ol([yl,n]),Ah("",")"),I,C]),a]:(VEi(o)&&(n=Ia(["(",Ol([yl,n]),yl,")"])),l?[" ",n,a]:[Ol([qg,n,a]),I,C])}var HXa=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},YXa=HXa;function mRr(e,t,r,n){let{node:a}=e,o=[],l=YXa(!1,a[n],A=>A.type!=="EmptyStatement");return e.each(({node:A})=>{A.type!=="EmptyStatement"&&(o.push(r()),A!==l&&(o.push(Gl),Nee(A,t)&&o.push(Gl)))},n),o}function WEi(e,t,r){let n=QXa(e,t,r),{node:a,parent:o}=e;if(a.type==="Program"&&o?.type!=="ModuleExpression")return n?[n,Gl]:"";let l=[];if(a.type==="StaticBlock"&&l.push("static "),l.push("{"),n)l.push(Ol([Gl,n]),Gl);else{let A=e.grandparent;o.type==="ArrowFunctionExpression"||o.type==="FunctionExpression"||o.type==="FunctionDeclaration"||o.type==="ComponentDeclaration"||o.type==="HookDeclaration"||o.type==="ObjectMethod"||o.type==="ClassMethod"||o.type==="ClassPrivateMethod"||o.type==="ForStatement"||o.type==="WhileStatement"||o.type==="DoWhileStatement"||o.type==="DoExpression"||o.type==="ModuleExpression"||o.type==="CatchClause"&&!A.finalizer||o.type==="TSModuleDeclaration"||a.type==="StaticBlock"||l.push(Gl)}return l.push("}"),l}function QXa(e,t,r){let{node:n}=e,a=X_(n.directives),o=n.body.some(f=>f.type!=="EmptyStatement"),l=sg(n,hA.Dangling);if(!a&&!o&&!l)return"";let A=[];return a&&(A.push(mRr(e,t,r,"directives")),(o||l)&&(A.push(Gl),Nee(z0(!1,n.directives,-1),t)&&A.push(Gl))),o&&A.push(mRr(e,t,r,"body")),l&&A.push(G2(e,t)),A}function XXa(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}var OEi=XXa;function JXa(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function UXa(e,t,r){let{node:n}=e;return Ia([n.variance?r("variance"):"","[",Ol([r("keyTparam")," in ",r("sourceType")]),"]",JXa(n.optional),": ",r("propType")])}function PEi(e,t){return e==="+"||e==="-"?e+t:t}function KXa(e,t,r){let{node:n}=e,a=t.objectWrap==="preserve"&&bce(t.originalText,PS(n),PS(n.typeParameter));return Ia(["{",Ol([t.bracketSpacing?qg:yl,Ia([r("typeParameter"),n.optional?PEi(n.optional,"?"):"",n.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?Ah(";"):""]),G2(e,t),t.bracketSpacing?qg:yl,"}"],{shouldBreak:a})}var MRr=OEi("typeParameters");function jXa(e,t,r){let{node:n}=e;return ZG(n).length===1&&n.type.startsWith("TS")&&!n[r][0].constraint&&e.parent.type==="ArrowFunctionExpression"&&!(t.filepath&&/\.ts$/u.test(t.filepath))}function Q4e(e,t,r,n){let{node:a}=e;if(!a[n])return"";if(!Array.isArray(a[n]))return r(n);let o=Ebt(e.grandparent),l=e.match(f=>!(f[n].length===1&&mce(f[n][0])),void 0,(f,I)=>I==="typeAnnotation",f=>f.type==="Identifier",gEi);if(a[n].length===0||!l&&(o||a[n].length===1&&(a[n][0].type==="NullableTypeAnnotation"||pEi(a[n][0]))))return["<",TC(", ",e.map(r,n)),zXa(e,t),">"];let A=a.type==="TSTypeParameterInstantiation"?"":jXa(e,t,n)?",":Ree(t)?Ah(","):"";return Ia(["<",Ol([yl,TC([",",qg],e.map(r,n))]),A,yl,">"],{id:MRr(a)})}function zXa(e,t){let{node:r}=e;if(!sg(r,hA.Dangling))return"";let n=!sg(r,hA.Line),a=G2(e,t,{indent:!n});return n?a:[a,Gl]}function MEi(e,t,r){let{node:n,parent:a}=e,o=[n.const?"const ":""],l=n.type==="TSTypeParameter"?r("name"):n.name;if(a.type==="TSMappedType")return a.readonly&&o.push(PEi(a.readonly,"readonly")," "),o.push("[",l),n.constraint&&o.push(" in ",r("constraint")),a.nameType&&o.push(" as ",e.callParent(()=>r("nameType"))),o.push("]"),o;if(n.variance&&o.push(r("variance")),n.in&&o.push("in "),n.out&&o.push("out "),o.push(l),n.bound&&(n.usesExtendsBound&&o.push(" extends "),o.push(Hk(e,r,"bound"))),n.constraint){let A=Symbol("constraint");o.push(" extends",Ia(Ol(qg),{id:A}),Tee,vbt(r("constraint"),{groupId:A}))}return n.default&&o.push(" = ",r("default")),Ia(o)}var HEi=E0(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function YEi(e,t,r){let{node:n}=e,a=[CV(e),Bbt(e),"class"],o=sg(n.id,hA.Trailing)||sg(n.typeParameters,hA.Trailing)||sg(n.superClass)||X_(n.extends)||X_(n.mixins)||X_(n.implements),l=[],A=[];if(n.id&&l.push(" ",r("id")),l.push(r("typeParameters")),n.superClass){let C=[e4a(e,t,r),r(n.superTypeArguments?"superTypeArguments":"superTypeParameters")],b=e.call(E=>["extends ",g4(E,C,t)],"superClass");o?A.push(qg,Ia(b)):A.push(" ",b)}else A.push(tRr(e,t,r,"extends"));A.push(tRr(e,t,r,"mixins"),tRr(e,t,r,"implements"));let f;if(o){let C;XEi(n)?C=[...l,Ol(A)]:C=Ol([...l,A]),f=QEi(n),a.push(Ia(C,{id:f}))}else a.push(...l,...A);let I=n.body;return o&&X_(I.body)?a.push(Ah(Gl," ",{groupId:f})):a.push(" "),a.push(r("body")),a}var QEi=OEi("heritageGroup");function qXa(e){return Ah(Gl,"",{groupId:QEi(e)})}function $Xa(e){return["extends","mixins","implements"].reduce((t,r)=>t+(Array.isArray(e[r])?e[r].length:0),e.superClass?1:0)>1}function XEi(e){return e.typeParameters&&!sg(e.typeParameters,hA.Trailing|hA.Line)&&!$Xa(e)}function tRr(e,t,r,n){let{node:a}=e;if(!X_(a[n]))return"";let o=G2(e,t,{marker:n});return[XEi(a)?Ah(" ",qg,{groupId:MRr(a.typeParameters)}):qg,o,o&&Gl,n,Ia(Ol([qg,TC([",",qg],e.map(r,n))]))]}function e4a(e,t,r){let n=r("superClass"),{parent:a}=e;return a.type==="AssignmentExpression"?Ia(Ah(["(",Ol([yl,n]),yl,")"],n)):n}function JEi(e,t,r){let{node:n}=e,a=[];return X_(n.decorators)&&a.push(nEi(e,t,r)),a.push(mbt(n)),n.static&&a.push("static "),a.push(Bbt(e)),n.override&&a.push("override "),a.push(hRr(e,t,r)),a}function UEi(e,t,r){let{node:n}=e,a=[],o=t.semi?";":"";X_(n.decorators)&&a.push(nEi(e,t,r)),a.push(CV(e),mbt(n)),n.static&&a.push("static "),a.push(Bbt(e)),n.override&&a.push("override "),n.readonly&&a.push("readonly "),n.variance&&a.push(r("variance")),(n.type==="ClassAccessorProperty"||n.type==="AccessorProperty"||n.type==="TSAbstractAccessorProperty")&&a.push("accessor "),a.push(q4e(e,t,r),rL(e),TEi(e),Hk(e,r));let l=n.type==="TSAbstractPropertyDefinition"||n.type==="TSAbstractAccessorProperty";return[z4e(e,t,r,a," =",l?void 0:"value"),o]}function t4a(e,t,r){let{node:n}=e,a=[];return e.each(({node:o,next:l,isLast:A})=>{a.push(r()),!t.semi&&HEi(o)&&r4a(o,l)&&a.push(";"),A||(a.push(Gl),Nee(o,t)&&a.push(Gl))},"body"),sg(n,hA.Dangling)&&a.push(G2(e,t)),["{",a.length>0?[Ol([Gl,a]),Gl]:"","}"]}function r4a(e,t){var r;let{type:n,name:a}=e.key;if(!e.computed&&n==="Identifier"&&(a==="static"||a==="get"||a==="set")&&!e.value&&!e.typeAnnotation)return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let o=(r=t.key)==null?void 0:r.name;if(o==="in"||o==="instanceof")return!0}if(HEi(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||t.kind==="get"||t.kind==="set")return!1;let o=t.value?t.value.generator:t.generator;return!!(t.computed||o)}case"TSIndexSignature":return!0}return!1}var n4a=E0(["TSAsExpression","TSTypeAssertion","TSNonNullExpression","TSInstantiationExpression","TSSatisfiesExpression"]);function KEi(e){return n4a(e)?KEi(e.expression):e}var i4a=E0(["FunctionExpression","ArrowFunctionExpression"]);function s4a(e){return e.type==="MemberExpression"||e.type==="OptionalMemberExpression"||e.type==="Identifier"&&e.name!=="undefined"}function o4a(e,t){if(t.semi||zEi(e,t)||qEi(e,t))return!1;let{node:r,key:n,parent:a}=e;return!!(r.type==="ExpressionStatement"&&(n==="body"&&(a.type==="Program"||a.type==="BlockStatement"||a.type==="StaticBlock"||a.type==="TSModuleBlock")||n==="consequent"&&a.type==="SwitchCase")&&e.call(()=>jEi(e,t),"expression"))}function jEi(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!FEi(e,t))return!0;break;case"UnaryExpression":{let{prefix:n,operator:a}=r;if(n&&(a==="+"||a==="-"))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(lD(r))return!0}return Pme(e,t)?!0:SRr(r)?e.call(()=>jEi(e,t),...pbi(r)):!1}function zEi({node:e,parent:t},r){return(r.parentParser==="markdown"||r.parentParser==="mdx")&&e.type==="ExpressionStatement"&&lD(e.expression)&&t.type==="Program"&&t.body.length===1}function qEi({node:e,parent:t},r){return(r.parser==="__vue_event_binding"||r.parser==="__vue_ts_event_binding")&&e.type==="ExpressionStatement"&&t.type==="Program"&&t.body.length===1}function a4a(e,t,r){let n=[r("expression")];if(qEi(e,t)){let a=KEi(e.node.expression);(i4a(a)||s4a(a))&&n.push(";")}else zEi(e,t)||t.semi&&n.push(";");return n}function c4a(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let n=e.map(r,"program","body",0,"params");if(n.length===1)return n[0];let a=TC([",",qg],n);return t.__isVueForBindingLeft?["(",Ol([yl,Ia(a)]),yl,")"]:a}if(t.__isEmbeddedTypescriptGenericParameters){let n=e.map(r,"program","body",0,"typeParameters","params");return TC([",",qg],n)}}function l4a(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return ebi(r);case"BigIntLiteral":return CRr(r.extra.raw);case"NumericLiteral":return ANe(r.extra.raw);case"StringLiteral":return kme(uNe(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DirectiveLiteral":return tbi(r.extra.raw,t);case"Literal":{if(r.regex)return ebi(r.regex);if(r.bigint)return CRr(r.raw);let{value:n}=r;return typeof n=="number"?ANe(r.raw):typeof n=="string"?u4a(e)?tbi(r.raw,t):kme(uNe(r.raw,t)):String(n)}}}function u4a(e){if(e.key!=="expression")return;let{parent:t}=e;return t.type==="ExpressionStatement"&&t.directive}function CRr(e){return e.toLowerCase()}function ebi({pattern:e,flags:t}){return t=[...t].sort().join(""),`/${e}/${t}`}function tbi(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let n=t.singleQuote?"'":'"';return n+r+n}function g4a(e,t,r){let n=e.originalText.slice(t,r);for(let a of e[Symbol.for("comments")]){let o=PS(a);if(o>r)break;let l=RC(a);if(le.type==="ExportDefaultDeclaration"||e.type==="DeclareExportDeclaration"&&e.default;function t1i(e,t,r){let{node:n}=e,a=[MQa(e,t,r),CV(e),"export",e1i(n)?" default":""],{declaration:o,exported:l}=n;return sg(n,hA.Dangling)&&(a.push(" ",G2(e,t)),ybi(n)&&a.push(Gl)),o?a.push(" ",r("declaration")):(a.push(f4a(n)),n.type==="ExportAllDeclaration"||n.type==="DeclareExportAllDeclaration"?(a.push(" *"),l&&a.push(" as ",r("exported"))):a.push(i1i(e,t,r)),a.push(n1i(e,t,r),o1i(e,t,r))),a.push(p4a(n,t)),a}var d4a=E0(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]);function p4a(e,t){return t.semi&&(!e.declaration||e1i(e)&&!d4a(e.declaration))?";":""}function HRr(e,t=!0){return e&&e!=="value"?`${t?" ":""}${e}${t?"":" "}`:""}function r1i(e,t){return HRr(e.importKind,t)}function f4a(e){return HRr(e.exportKind)}function n1i(e,t,r){let{node:n}=e;if(!n.source)return"";let a=[];return s1i(n,t)&&a.push(" from"),a.push(" ",r("source")),a}function i1i(e,t,r){let{node:n}=e;if(!s1i(n,t))return"";let a=[" "];if(X_(n.specifiers)){let o=[],l=[];e.each(()=>{let A=e.node.type;if(A==="ExportNamespaceSpecifier"||A==="ExportDefaultSpecifier"||A==="ImportNamespaceSpecifier"||A==="ImportDefaultSpecifier")o.push(r());else if(A==="ExportSpecifier"||A==="ImportSpecifier")l.push(r());else throw new hNe(n,"specifier")},"specifiers"),a.push(TC(", ",o)),l.length>0&&(o.length>0&&a.push(", "),l.length>1||o.length>0||n.specifiers.some(A=>sg(A))?a.push(Ia(["{",Ol([t.bracketSpacing?qg:yl,TC([",",qg],l)]),Ah(Ree(t)?",":""),t.bracketSpacing?qg:yl,"}"])):a.push(["{",t.bracketSpacing?" ":"",...l,t.bracketSpacing?" ":"","}"]))}else a.push("{}");return a}function s1i(e,t){return e.type!=="ImportDeclaration"||X_(e.specifiers)||e.importKind==="type"?!0:$Ei(t,PS(e),PS(e.source)).trimEnd().endsWith("from")}function I4a(e,t){var r,n;if((r=e.extra)!=null&&r.deprecatedAssertSyntax)return"assert";let a=$Ei(t,RC(e.source),(n=e.attributes)!=null&&n[0]?PS(e.attributes[0]):RC(e)).trimStart();return a.startsWith("assert")?"assert":a.startsWith("with")||X_(e.attributes)?"with":void 0}function o1i(e,t,r){let{node:n}=e;if(!n.source)return"";let a=I4a(n,t);if(!a)return"";let o=[` ${a} {`];return X_(n.attributes)&&(t.bracketSpacing&&o.push(" "),o.push(TC(", ",e.map(r,"attributes"))),t.bracketSpacing&&o.push(" ")),o.push("}"),o}function h4a(e,t,r){let{node:n}=e,{type:a}=n,o=a.startsWith("Import"),l=o?"imported":"local",A=o?"local":"exported",f=n[l],I=n[A],C="",b="";return a==="ExportNamespaceSpecifier"||a==="ImportNamespaceSpecifier"?C="*":f&&(C=r(l)),I&&!m4a(n)&&(b=r(A)),[HRr(a==="ImportSpecifier"?n.importKind:n.exportKind,!1),C,C&&b?" as ":"",b]}function m4a(e){if(e.type!=="ImportSpecifier"&&e.type!=="ExportSpecifier")return!1;let{local:t,[e.type==="ImportSpecifier"?"imported":"exported"]:r}=e;if(t.type!==r.type||!yMa(t,r))return!1;if(mV(t))return t.value===r.value&&nH(t)===nH(r);switch(t.type){case"Identifier":return t.name===r.name;default:return!1}}function Tbt(e,t,r){var n;let a=t.semi?";":"",{node:o}=e,l=o.type==="ObjectTypeAnnotation",A=o.type==="TSEnumDeclaration"||o.type==="EnumBooleanBody"||o.type==="EnumNumberBody"||o.type==="EnumBigIntBody"||o.type==="EnumStringBody"||o.type==="EnumSymbolBody",f=[o.type==="TSTypeLiteral"||A?"members":o.type==="TSInterfaceBody"?"body":"properties"];l&&f.push("indexers","callProperties","internalSlots");let I=f.flatMap(ue=>e.map(({node:de})=>({node:de,printed:r(),loc:PS(de)}),ue));f.length>1&&I.sort((ue,de)=>ue.loc-de.loc);let{parent:C,key:b}=e,E=l&&b==="body"&&(C.type==="InterfaceDeclaration"||C.type==="DeclareInterface"||C.type==="DeclareClass"),N=o.type==="TSInterfaceBody"||A||E||o.type==="ObjectPattern"&&C.type!=="FunctionDeclaration"&&C.type!=="FunctionExpression"&&C.type!=="ArrowFunctionExpression"&&C.type!=="ObjectMethod"&&C.type!=="ClassMethod"&&C.type!=="ClassPrivateMethod"&&C.type!=="AssignmentPattern"&&C.type!=="CatchClause"&&o.properties.some(ue=>ue.value&&(ue.value.type==="ObjectPattern"||ue.value.type==="ArrayPattern"))||o.type!=="ObjectPattern"&&t.objectWrap==="preserve"&&I.length>0&&bce(t.originalText,PS(o),I[0].loc),B=E?";":o.type==="TSInterfaceBody"||o.type==="TSTypeLiteral"?Ah(a,";"):",",F=o.type==="RecordExpression"?"#{":o.exact?"{|":"{",Q=o.exact?"|}":"}",J=[],ae=I.map(ue=>{let de=[...J,Ia(ue.printed)];return J=[B,qg],(ue.node.type==="TSPropertySignature"||ue.node.type==="TSMethodSignature"||ue.node.type==="TSConstructSignatureDeclaration"||ue.node.type==="TSCallSignatureDeclaration")&&sg(ue.node,hA.PrettierIgnore)&&J.shift(),Nee(ue.node,t)&&J.push(Gl),de});if(o.inexact||o.hasUnknownMembers){let ue;if(sg(o,hA.Dangling)){let de=sg(o,hA.Line);ue=[G2(e,t),de||bP(t.originalText,RC(z0(!1,oNe(o),-1)))?Gl:qg,"..."]}else ue=["..."];ae.push([...J,...ue])}let ne=(n=z0(!1,I,-1))==null?void 0:n.node,ce=!(o.inexact||o.hasUnknownMembers||ne&&(ne.type==="RestElement"||(ne.type==="TSPropertySignature"||ne.type==="TSCallSignatureDeclaration"||ne.type==="TSMethodSignature"||ne.type==="TSConstructSignatureDeclaration")&&sg(ne,hA.PrettierIgnore))),fe;if(ae.length===0){if(!sg(o,hA.Dangling))return[F,Q,Hk(e,r)];fe=Ia([F,G2(e,t,{indent:!0}),yl,Q,rL(e),Hk(e,r)])}else fe=[E&&X_(o.properties)?qXa(C):"",F,Ol([t.bracketSpacing?qg:yl,...ae]),Ah(ce&&(B!==","||Ree(t))?B:""),t.bracketSpacing?qg:yl,Q,rL(e),Hk(e,r)];return e.match(ue=>ue.type==="ObjectPattern"&&!X_(ue.decorators),rRr)||mce(o)&&(e.match(void 0,(ue,de)=>de==="typeAnnotation",(ue,de)=>de==="typeAnnotation",rRr)||e.match(void 0,(ue,de)=>ue.type==="FunctionTypeParam"&&de==="typeAnnotation",rRr))||!N&&e.match(ue=>ue.type==="ObjectPattern",ue=>ue.type==="AssignmentExpression"||ue.type==="VariableDeclarator")?fe:Ia(fe,{shouldBreak:N})}function rRr(e,t){return(t==="params"||t==="parameters"||t==="this"||t==="rest")&&dEi(e)}function C4a(e){let t=[e];for(let r=0;rE[Se]===n),B=E.type===n.type&&!N,F,Q,J=0;do Q=F||n,F=e.getParentNode(J),J++;while(F&&F.type===n.type&&A.every(Se=>F[Se]!==Q));let ae=F||E,ne=Q;if(a&&(lD(n[A[0]])||lD(f)||lD(I)||C4a(ne))){b=!0,B=!0;let Se=k=>[Ah("("),Ol([yl,k]),yl,Ah(")")],De=k=>k.type==="NullLiteral"||k.type==="Literal"&&k.value===null||k.type==="Identifier"&&k.name==="undefined";C.push(" ? ",De(f)?r(o):Se(r(o))," : ",I.type===n.type||De(I)?r(l):Se(r(l)))}else{let Se=k=>t.useTabs?Ol(r(k)):_6(2,r(k)),De=[qg,"? ",f.type===n.type?Ah("","("):"",Se(o),f.type===n.type?Ah("",")"):"",qg,": ",Se(l)];C.push(E.type!==n.type||E[l]===n||N?De:t.useTabs?Tbi(Ol(De)):_6(Math.max(0,t.tabWidth-2),De))}let ce=[o,l,...A].some(Se=>sg(n[Se],De=>oH(De)&&bce(t.originalText,PS(De),RC(De)))),fe=Se=>E===ae?Ia(Se,{shouldBreak:ce}):ce?[Se,y6]:Se,ue=!b&&(Kv(E)||E.type==="NGPipeExpression"&&E.left===n)&&!E.computed,de=b4a(e),be=fe([_4a(e,t,r),B?C:Ol(C),a&&ue&&!de?yl:""]);return N||de?Ia([Ol([yl,be]),yl]):be}function S4a(e,t){return(Kv(t)||t.type==="NGPipeExpression"&&t.left===e)&&!t.computed}function v4a(e,t,r,n){return[...e.map(a=>oNe(a)),oNe(t),oNe(r)].flat().some(a=>oH(a)&&bce(n.originalText,PS(a),RC(a)))}var B4a=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]);function w4a(e){let{node:t}=e;if(t.type!=="ConditionalExpression")return!1;let r,n=t;for(let a=0;!r;a++){let o=e.getParentNode(a);if(o.type==="ChainExpression"&&o.expression===n||v_(o)&&o.callee===n||Kv(o)&&o.object===n||o.type==="TSNonNullExpression"&&o.expression===n){n=o;continue}o.type==="NewExpression"&&o.callee===n||h6(o)&&o.expression===n?(r=e.getParentNode(a+1),n=o):r=o}return n===t?!1:r[B4a.get(r.type)]===n}var nRr=e=>[Ah("("),Ol([yl,e]),yl,Ah(")")];function YRr(e,t,r,n){if(!t.experimentalTernaries)return E4a(e,t,r);let{node:a}=e,o=a.type==="ConditionalExpression",l=yce(a),A=o?"consequent":"trueType",f=o?"alternate":"falseType",I=o?["test"]:["checkType","extendsType"],C=a[A],b=a[f],E=I.map(ke=>a[ke]),{parent:N}=e,B=N.type===a.type,F=B&&I.some(ke=>N[ke]===a),Q=B&&N[f]===a,J=C.type===a.type,ae=b.type===a.type,ne=ae||Q,ce=t.tabWidth>2||t.useTabs,fe,ue,de=0;do ue=fe||a,fe=e.getParentNode(de),de++;while(fe&&fe.type===a.type&&I.every(ke=>fe[ke]!==ue));let be=fe||N,Se=n&&n.assignmentLayout&&n.assignmentLayout!=="break-after-operator"&&(N.type==="AssignmentExpression"||N.type==="VariableDeclarator"||N.type==="ClassProperty"||N.type==="PropertyDefinition"||N.type==="ClassPrivateProperty"||N.type==="ObjectProperty"||N.type==="Property"),De=(N.type==="ReturnStatement"||N.type==="ThrowStatement")&&!(J||ae),k=o&&be.type==="JSXExpressionContainer"&&e.grandparent.type!=="JSXAttribute",tt=w4a(e),ze=S4a(a,N),Le=l&&Pme(e,t),Je=ce?t.useTabs?" ":" ".repeat(t.tabWidth-1):"",ft=v4a(E,C,b,t)||J||ae,lt=!ne&&!B&&!l&&(k?C.type==="NullLiteral"||C.type==="Literal"&&C.value===null:wRr(C,t)&&Gyi(a.test,3)),Ot=ne||Q||l&&!B||B&&o&&Gyi(a.test,1)||lt,Er=[];!J&&sg(C,hA.Dangling)&&e.call(ke=>{Er.push(G2(ke,t),Gl)},"consequent");let Sr=[];sg(a.test,hA.Dangling)&&e.call(ke=>{Sr.push(G2(ke,t))},"test"),!ae&&sg(b,hA.Dangling)&&e.call(ke=>{Sr.push(G2(ke,t))},"alternate"),sg(a,hA.Dangling)&&Sr.push(G2(e,t));let jt=Symbol("test"),Bt=Symbol("consequent"),Nt=Symbol("test-and-consequent"),Fr=o?[nRr(r("test")),a.test.type==="ConditionalExpression"?y6:""]:[r("checkType")," ","extends"," ",yce(a.extendsType)||a.extendsType.type==="TSMappedType"?r("extendsType"):Ia(nRr(r("extendsType")))],$t=Ia([Fr," ?"],{id:jt}),Xt=r(A),lr=Ol([J||k&&(lD(C)||B||ne)?Gl:qg,Er,Xt]),cr=Ot?Ia([$t,ne?lr:Ah(lr,Ia(lr,{id:Bt}),{groupId:jt})],{id:Nt}):[$t,lr],Ar=r(f),qr=lt?Ah(Ar,Tbi(nRr(Ar)),{groupId:Nt}):Ar,_n=[cr,Sr.length>0?[Ol([Gl,Sr]),Gl]:ae?Gl:lt?Ah(qg," ",{groupId:Nt}):qg,":",ae?" ":ce?Ot?Ah(Je,Ah(ne||lt?" ":Je," "),{groupId:Nt}):Ah(Je," "):" ",ae?qr:Ia([Ol(qr),k&&!lt?yl:""]),ze&&!tt?yl:"",ft?y6:""];return Se&&!ft?Ia(Ol([yl,Ia(_n)])):Se||De?Ia(Ol(_n)):tt||l&&F?Ia([Ol([yl,_n]),Le?yl:""]):N===be?Ia(_n):_n}function T4a(e,t,r,n){let{node:a}=e;if(vRr(a))return l4a(e,t);let o=t.semi?";":"",l=[];switch(a.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),Gl];case"File":return c4a(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return a4a(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return!sg(a.expression)&&(A4(a.expression)||Yk(a.expression))?["(",r("expression"),")"]:Ia(["(",Ol([yl,r("expression")]),yl,")"]);case"AssignmentExpression":return eXa(e,t,r);case"VariableDeclarator":return tXa(e,t,r);case"BinaryExpression":case"LogicalExpression":return rEi(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return zQa(e,t,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return a.object&&l.push(r("object")),l.push(Ia(Ol([yl,REi(e,t,r)]))),l;case"Identifier":return[a.name,rL(e),TEi(e),Hk(e,r)];case"V8IntrinsicIdentifier":return["%",a.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return NEi(e,r);case"FunctionDeclaration":case"FunctionExpression":return GEi(e,r,t,n);case"ArrowFunctionExpression":return VXa(e,t,r,n);case"YieldExpression":return l.push("yield"),a.delegate&&l.push("*"),a.argument&&l.push(" ",r("argument")),l;case"AwaitExpression":if(l.push("await"),a.argument){l.push(" ",r("argument"));let{parent:A}=e;if(v_(A)&&A.callee===a||Kv(A)&&A.object===a){l=[Ol([yl,...l]),yl];let f=e.findAncestor(I=>I.type==="AwaitExpression"||I.type==="BlockStatement");if(f?.type!=="AwaitExpression"||!eL(f.argument,I=>I===a))return Ia(l)}}return l;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return t1i(e,t,r);case"ImportDeclaration":return A4a(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return h4a(e,t,r);case"ImportAttribute":return $Tr(e,t,r);case"Program":case"BlockStatement":case"StaticBlock":return WEi(e,t,r);case"ClassBody":return t4a(e,t,r);case"ThrowStatement":return ZXa(e,t,r);case"ReturnStatement":return FXa(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return lEi(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return Tbt(e,t,r);case"Property":return bbt(a)?hRr(e,t,r):$Tr(e,t,r);case"ObjectProperty":return $Tr(e,t,r);case"ObjectMethod":return hRr(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return ORr(e,t,r);case"SequenceExpression":{let{parent:A}=e;if(A.type==="ExpressionStatement"||A.type==="ForStatement"){let f=[];return e.each(({isFirst:I})=>{I?f.push(r()):f.push(",",Ol([qg,r()]))},"expressions"),Ia(f)}return Ia(TC([",",qg],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),o];case"UnaryExpression":return l.push(a.operator),/[a-z]$/u.test(a.operator)&&l.push(" "),sg(a.argument)?l.push(Ia(["(",Ol([yl,r("argument")]),yl,")"])):l.push(r("argument")),l;case"UpdateExpression":return[a.prefix?a.operator:"",r("argument"),a.prefix?"":a.operator];case"ConditionalExpression":return YRr(e,t,r,n);case"VariableDeclaration":{let A=e.map(r,"declarations"),f=e.parent,I=f.type==="ForStatement"||f.type==="ForInStatement"||f.type==="ForOfStatement",C=a.declarations.some(E=>E.init),b;return A.length===1&&!sg(a.declarations[0])?b=A[0]:A.length>0&&(b=Ol(A[0])),l=[CV(e),a.kind,b?[" ",b]:"",Ol(A.slice(1).map(E=>[",",C&&!I?Gl:qg,E]))],I&&f.body!==a||l.push(o),Ia(l)}case"WithStatement":return Ia(["with (",r("object"),")",Ice(a.body,r("body"))]);case"IfStatement":{let A=Ice(a.consequent,r("consequent")),f=Ia(["if (",Ia([Ol([yl,r("test")]),yl]),")",A]);if(l.push(f),a.alternate){let I=sg(a.consequent,hA.Trailing|hA.Line)||ybi(a),C=a.consequent.type==="BlockStatement"&&!I;l.push(C?" ":Gl),sg(a,hA.Dangling)&&l.push(G2(e,t),I?Gl:" "),l.push("else",Ia(Ice(a.alternate,r("alternate"),a.alternate.type==="IfStatement")))}return l}case"ForStatement":{let A=Ice(a.body,r("body")),f=G2(e,t),I=f?[f,yl]:"";return!a.init&&!a.test&&!a.update?[I,Ia(["for (;;)",A])]:[I,Ia(["for (",Ia([Ol([yl,r("init"),";",qg,r("test"),";",qg,r("update")]),yl]),")",A])]}case"WhileStatement":return Ia(["while (",Ia([Ol([yl,r("test")]),yl]),")",Ice(a.body,r("body"))]);case"ForInStatement":return Ia(["for (",r("left")," in ",r("right"),")",Ice(a.body,r("body"))]);case"ForOfStatement":return Ia(["for",a.await?" await":""," (",r("left")," of ",r("right"),")",Ice(a.body,r("body"))]);case"DoWhileStatement":{let A=Ice(a.body,r("body"));return l=[Ia(["do",A])],a.body.type==="BlockStatement"?l.push(" "):l.push(Gl),l.push("while (",Ia([Ol([yl,r("test")]),yl]),")",o),l}case"DoExpression":return[a.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return l.push(a.type==="BreakStatement"?"break":"continue"),a.label&&l.push(" ",r("label")),l.push(o),l;case"LabeledStatement":return a.body.type==="EmptyStatement"?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),a.handler?[" ",r("handler")]:"",a.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(a.param){let A=sg(a.param,I=>!oH(I)||I.leading&&bP(t.originalText,RC(I))||I.trailing&&bP(t.originalText,PS(I),{backwards:!0})),f=r("param");return["catch ",A?["(",Ol([yl,f]),yl,") "]:["(",f,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[Ia(["switch (",Ol([yl,r("discriminant")]),yl,")"])," {",a.cases.length>0?Ol([Gl,TC(Gl,e.map(({node:A,isLast:f})=>[r(),!f&&Nee(A,t)?Gl:""],"cases"))]):"",Gl,"}"];case"SwitchCase":{a.test?l.push("case ",r("test"),":"):l.push("default:"),sg(a,hA.Dangling)&&l.push(" ",G2(e,t));let A=a.consequent.filter(f=>f.type!=="EmptyStatement");if(A.length>0){let f=mRr(e,t,r,"consequent");l.push(A.length===1&&A[0].type==="BlockStatement"?[" ",f]:Ol([Gl,f]))}return l}case"DebuggerStatement":return["debugger",o];case"ClassDeclaration":case"ClassExpression":return YEi(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return JEi(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return UEi(e,t,r);case"TemplateElement":return kme(a.value.raw);case"TemplateLiteral":return Xbi(e,r,t);case"TaggedTemplateExpression":return uYa(e,r);case"PrivateIdentifier":return["#",a.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];case"InterpreterDirective":default:throw new hNe(a,"ESTree")}}function a1i(e,t,r){let{parent:n,node:a,key:o}=e,l=[r("expression")];switch(a.type){case"AsConstExpression":l.push(" as const");break;case"AsExpression":case"TSAsExpression":l.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":l.push(" satisfies ",r("typeAnnotation"));break}return o==="callee"&&v_(n)||o==="object"&&Kv(n)?Ia([Ol([yl,...l]),yl]):l}function R4a(e,t,r){let{node:n}=e,a=[CV(e),"component"];n.id&&a.push(" ",r("id")),a.push(r("typeParameters"));let o=N4a(e,r,t);return n.rendersType?a.push(Ia([o," ",r("rendersType")])):a.push(Ia([o])),n.body&&a.push(" ",r("body")),t.semi&&n.type==="DeclareComponent"&&a.push(";"),a}function N4a(e,t,r){let{node:n}=e,a=n.params;if(n.rest&&(a=[...a,n.rest]),a.length===0)return["(",G2(e,r,{filter:l=>d4(r.originalText,RC(l))===")"}),")"];let o=[];return k4a(e,(l,A)=>{let f=A===a.length-1;f&&n.rest&&o.push("..."),o.push(t()),!f&&(o.push(","),Nee(a[A],r)?o.push(Gl,Gl):o.push(qg))}),["(",Ol([yl,...o]),Ah(Ree(r,"all")&&!D4a(n,a)?",":""),yl,")"]}function D4a(e,t){var r;return e.rest||((r=z0(!1,t,-1))==null?void 0:r.type)==="RestElement"}function k4a(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);e.each(a,"params"),r.rest&&e.call(a,"rest")}function x4a(e,t,r){let{node:n}=e;return n.shorthand?r("local"):[r("name")," as ",r("local")]}function G4a(e,t,r){let{node:n}=e,a=[];return n.name&&a.push(r("name"),n.optional?"?: ":": "),a.push(r("typeAnnotation")),a}function c1i(e,t,r){return Tbt(e,r,t)}function l1i(e,t){let{node:r}=e,n=t("id");r.computed&&(n=["[",n,"]"]);let a="";return r.initializer&&(a=t("initializer")),r.init&&(a=t("init")),a?[n," = ",a]:n}function F4a(e,t,r){let{node:n}=e,a;if(n.type==="EnumSymbolBody"||n.explicitType)switch(n.type){case"EnumBooleanBody":a="boolean";break;case"EnumNumberBody":a="number";break;case"EnumBigIntBody":a="bigint";break;case"EnumStringBody":a="string";break;case"EnumSymbolBody":a="symbol";break}return[a?`of ${a} `:"",c1i(e,t,r)]}function u1i(e,t,r){let{node:n}=e;return[CV(e),n.const?"const ":"","enum ",t("id")," ",n.type==="TSEnumDeclaration"?c1i(e,t,r):t("body")]}function Z4a(e,t,r){let{node:n}=e,a=["hook"];n.id&&a.push(" ",r("id"));let o=Mme(e,r,t,!1,!0),l=wbt(e,r),A=mNe(n,l);return a.push(Ia([A?Ia(o):o,l]),n.body?" ":"",r("body")),a}function L4a(e,t,r){let{node:n}=e,a=[CV(e),"hook"];return n.id&&a.push(" ",r("id")),t.semi&&a.push(";"),a}function rbi(e){var t;let{node:r}=e;return r.type==="HookTypeAnnotation"&&((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareHook"}function V4a(e,t,r){let{node:n}=e,a=[];a.push(rbi(e)?"":"hook ");let o=Mme(e,r,t,!1,!0),l=[];return l.push(rbi(e)?": ":" => ",r("returnType")),mNe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function g1i(e,t,r){let{node:n}=e,a=[CV(e),"interface"],o=[],l=[];n.type!=="InterfaceTypeAnnotation"&&o.push(" ",r("id"),r("typeParameters"));let A=n.typeParameters&&!sg(n.typeParameters,hA.Trailing|hA.Line);return X_(n.extends)&&l.push(A?Ah(" ",qg,{groupId:MRr(n.typeParameters)}):qg,"extends ",(n.extends.length===1?JMa:Ol)(TC([",",qg],e.map(r,"extends")))),sg(n.id,hA.Trailing)||X_(n.extends)?A?a.push(Ia([...o,Ol(l)])):a.push(Ia(Ol([...o,...l]))):a.push(...o,...l),a.push(" ",r("body")),Ia(a)}function W4a(e,t,r){let{node:n}=e;if(Abi(n))return n.type.slice(0,-14).toLowerCase();let a=t.semi?";":"";switch(n.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return R4a(e,t,r);case"ComponentParameter":return x4a(e,t,r);case"ComponentTypeParameter":return G4a(e,t,r);case"HookDeclaration":return Z4a(e,t,r);case"DeclareHook":return L4a(e,t,r);case"HookTypeAnnotation":return V4a(e,t,r);case"DeclareClass":return YEi(e,t,r);case"DeclareFunction":return[CV(e),"function ",r("id"),r("predicate"),a];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",Hk(e,r),a];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[CV(e),n.kind??"var"," ",r("id"),a];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return t1i(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return _Xa(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return fEi(e,t,r);case"IntersectionTypeAnnotation":return IEi(e,t,r);case"UnionTypeAnnotation":return hEi(e,t,r);case"ConditionalTypeAnnotation":return YRr(e,t,r);case"InferTypeAnnotation":return _Ei(e,t,r);case"FunctionTypeAnnotation":return mEi(e,t,r);case"TupleTypeAnnotation":return ORr(e,t,r);case"TupleTypeLabeledElement":return bEi(e,t,r);case"TupleTypeSpreadElement":return yEi(e,t,r);case"GenericTypeAnnotation":return[r("id"),Q4e(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return CEi(e,t,r);case"TypeAnnotation":return SEi(e,t,r);case"TypeParameter":return MEi(e,t,r);case"TypeofTypeAnnotation":return BEi(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return vEi(r);case"DeclareEnum":case"EnumDeclaration":return u1i(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return F4a(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return l1i(e,r);case"FunctionTypeParam":{let o=n.name?r("name"):e.parent.this===n?"this":"";return[o,rL(e),o?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return g1i(e,t,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:o}=n;return ERr.ok(o==="plus"||o==="minus"),o==="plus"?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[n.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return UXa(e,t,r);case"ObjectTypeIndexer":return[n.static?"static ":"",n.variance?r("variance"):"","[",r("id"),n.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let o="";return n.proto?o="proto ":n.static&&(o="static "),[o,n.kind!=="init"?n.kind+" ":"",n.variance?r("variance"):"",q4e(e,t,r),rL(e),bbt(n)?"":": ",r("value")]}case"ObjectTypeAnnotation":return Tbt(e,t,r);case"ObjectTypeInternalSlot":return[n.static?"static ":"","[[",r("id"),"]]",rL(e),n.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return NEi(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(n.value);case"StringLiteralTypeAnnotation":return kme(uNe(nH(n),t));case"NumberLiteralTypeAnnotation":return ANe(n.raw??n.extra.raw);case"BigIntLiteralTypeAnnotation":return CRr(n.raw??n.extra.raw);case"TypeCastExpression":return["(",r("expression"),Hk(e,r),")"];case"TypePredicate":return wEi(e,r);case"TypeOperator":return[n.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return Q4e(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return[e.key==="predicate"&&e.parent.type!=="DeclareFunction"&&!e.parent.returnType?": ":" ","%checks",...n.type==="DeclaredPredicate"?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return a1i(e,t,r)}}function O4a(e,t,r){var n;let{node:a}=e;if(!a.type.startsWith("TS"))return;if(dbi(a))return a.type.slice(2,-7).toLowerCase();let o=t.semi?";":"",l=[];switch(a.type){case"TSThisType":return"this";case"TSTypeAssertion":{let A=!(Yk(a.expression)||A4(a.expression)),f=Ia(["<",Ol([yl,r("typeAnnotation")]),yl,">"]),I=[Ah("("),Ol([yl,r("expression")]),yl,Ah(")")];return A?Dme([[f,r("expression")],[f,Ia(I,{shouldBreak:!0})],[f,r("expression")]]):Ia([f,r("expression")])}case"TSDeclareFunction":return GEi(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),o];case"TSModuleBlock":return WEi(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return Tbt(e,t,r);case"TSTypeAliasDeclaration":return fEi(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return JEi(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return UEi(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(a.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return Xbi(e,r,t);case"TSNamedTupleMember":return bEi(e,t,r);case"TSRestType":return yEi(e,t,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return g1i(e,t,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return Q4e(e,t,r,"params");case"TSTypeParameter":return MEi(e,t,r);case"TSAsExpression":case"TSSatisfiesExpression":return a1i(e,t,r);case"TSArrayType":return vEi(r);case"TSPropertySignature":return[a.readonly?"readonly ":"",q4e(e,t,r),rL(e),Hk(e,r)];case"TSParameterProperty":return[mbt(a),a.static?"static ":"",a.override?"override ":"",a.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return BEi(e,r);case"TSIndexSignature":{let A=a.parameters.length>1?Ah(Ree(t)?",":""):"",f=Ia([Ol([yl,TC([", ",yl],e.map(r,"parameters"))]),A,yl]),I=e.parent.type==="ClassBody"&&e.key==="body";return[I&&a.static?"static ":"",a.readonly?"readonly ":"","[",a.parameters?f:"","]",Hk(e,r),I?o:""]}case"TSTypePredicate":return wEi(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return["import(",r("argument"),")",a.qualifier?[".",r("qualifier")]:"",Q4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return CEi(e,t,r);case"TSTypeOperator":return[a.operator," ",r("typeAnnotation")];case"TSMappedType":return KXa(e,t,r);case"TSMethodSignature":{let A=a.kind&&a.kind!=="method"?`${a.kind} `:"";l.push(mbt(a),A,a.computed?"[":"",r("key"),a.computed?"]":"",rL(e));let f=Mme(e,r,t,!1,!0),I=a.returnType?"returnType":"typeAnnotation",C=a[I],b=C?Hk(e,r,I):"",E=mNe(a,b);return l.push(E?Ia(f):f),C&&l.push(Ia(b)),Ia(l)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return u1i(e,r,t);case"TSEnumMember":return l1i(e,r);case"TSImportEqualsDeclaration":return[a.isExport?"export ":"","import ",r1i(a,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:A}=e,f=A.type==="TSModuleDeclaration",I=((n=a.body)==null?void 0:n.type)==="TSModuleDeclaration";return f?l.push("."):(l.push(CV(e)),a.kind!=="global"&&l.push(a.kind," ")),l.push(r("id")),I?l.push(r("body")):a.body?l.push(" ",Ia(r("body"))):l.push(o),l}case"TSConditionalType":return YRr(e,t,r);case"TSInferType":return _Ei(e,t,r);case"TSIntersectionType":return IEi(e,t,r);case"TSUnionType":return hEi(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return mEi(e,t,r);case"TSTupleType":return ORr(e,t,r);case"TSTypeReference":return[r("typeName"),Q4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return SEi(e,t,r);case"TSEmptyBodyFunctionExpression":return PRr(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return qyi(e,r,"?");case"TSJSDocNonNullableType":return qyi(e,r,"!");case"TSParenthesizedType":default:throw new hNe(a,"TypeScript")}}function P4a(e,t,r,n){if(tEi(e))return rQa(e,t);for(let a of[WQa,kQa,W4a,O4a,T4a]){let o=a(e,t,r,n);if(o!==void 0)return o}}var M4a=E0(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]);function H4a(e,t,r,n){var a;e.isRoot&&((a=t.__onHtmlBindingRoot)==null||a.call(t,e.node,t));let o=P4a(e,t,r,n);if(!o)return"";let{node:l}=e;if(M4a(l))return o;let A=X_(l.decorators),f=HQa(e,t,r),I=l.type==="ClassExpression";if(A&&!I)return aRr(o,E=>Ia([f,E]));let C=Pme(e,t),b=o4a(e,t);return!f&&!C&&!b?o:aRr(o,E=>[b?";":"",C?"(":"",C&&I&&A?[Ol([qg,f,E]),qg]:[f,E],C?")":""])}var Y4a=H4a,Q4a={avoidAstMutation:!0},X4a=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,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",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,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",".code-workspace",".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:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],A1i={};Cbt(A1i,{getVisitorKeys:()=>j4a,massageAstNode:()=>d1i,print:()=>z4a});var J4a={JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]},U4a=J4a,K4a=ubi(U4a),j4a=K4a;function z4a(e,t,r){let{node:n}=e;switch(n.type){case"JsonRoot":return[r("node"),Gl];case"ArrayExpression":{if(n.elements.length===0)return"[]";let a=e.map(()=>e.node===null?"null":r(),"elements");return["[",Ol([Gl,TC([",",Gl],a)]),Gl,"]"]}case"ObjectExpression":return n.properties.length===0?"{}":["{",Ol([Gl,TC([",",Gl],e.map(r,"properties"))]),Gl,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return[n.operator==="+"?"":n.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return n.value?"true":"false";case"StringLiteral":return JSON.stringify(n.value);case"NumericLiteral":return nbi(e)?JSON.stringify(String(n.value)):JSON.stringify(n.value);case"Identifier":return nbi(e)?JSON.stringify(n.name):n.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(n.value.cooked);default:throw new hNe(n,"JSON")}}function nbi(e){return e.key==="key"&&e.parent.type==="ObjectProperty"}var q4a=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function d1i(e,t){let{type:r}=e;if(r==="ObjectProperty"){let{key:n}=e;n.type==="Identifier"?t.key={type:"StringLiteral",value:n.name}:n.type==="NumericLiteral"&&(t.key={type:"StringLiteral",value:String(n.value)});return}if(r==="UnaryExpression"&&e.operator==="+")return t.argument;if(r==="ArrayExpression"){for(let[n,a]of e.elements.entries())a===null&&t.elements.splice(n,0,{type:"NullLiteral"});return}if(r==="TemplateLiteral")return{type:"StringLiteral",value:e.quasis[0].value.cooked}}d1i.ignoredProperties=q4a;var P4e={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},hce="JavaScript",$4a={arrowParens:{category:hce,type:"choice",default:"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:P4e.bracketSameLine,objectWrap:P4e.objectWrap,bracketSpacing:P4e.bracketSpacing,jsxBracketSameLine:{category:hce,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:hce,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalOperatorPosition:{category:hce,type:"choice",default:"end",description:"Where to print operators when binary expressions wrap lines.",choices:[{value:"start",description:"Print operators at the start of new lines."},{value:"end",description:"Print operators at the end of previous lines."}]},experimentalTernaries:{category:hce,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:P4e.singleQuote,jsxSingleQuote:{category:hce,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:hce,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:{category:hce,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:P4e.singleAttributePerLine},p1i=$4a,CNe={estree:abi,"estree-json":A1i},f1i=[...U5a,...X4a],eJa=obi;var iJe={};Uf(iJe,{default:()=>BUa,languages:()=>k1i,options:()=>x1i,parsers:()=>zRr,printers:()=>H1i});var tJa=Object.defineProperty,_1i=(e,t)=>{for(var r in t)tJa(e,r,{get:t[r],enumerable:!0})},y1i={};_1i(y1i,{languages:()=>k1i,options:()=>x1i,parsers:()=>zRr,printers:()=>H1i});var rJa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},QRr=rJa,nJa="indent",iJa="group",sJa="if-break",jRr="line",oJa="break-parent",b1i=()=>{},rJe=b1i,E1i=b1i;function yV(e){return rJe(e),{type:nJa,contents:e}}function cH(e,t={}){return rJe(e),E1i(t.expandedStates,!0),{type:iJa,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function E6(e,t="",r={}){return rJe(e),t!==""&&rJe(t),{type:sJa,breakContents:e,flatContents:t,groupId:r.groupId}}var aJa={type:oJa},cJa={type:jRr,hard:!0},yNe={type:jRr},jv={type:jRr,soft:!0},mT=[cJa,aJa];function Xk(e,t){rJe(e),E1i(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var f1i=fJa,IJa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},hJa=IJa,z4e=null;function $4e(e){if(z4e!==null&&typeof z4e.property){let t=z4e;return z4e=$4e.prototype=null,t}return z4e=$4e.prototype=e??Object.create(null),new $4e}var mJa=10;for(let e=0;e<=mJa;e++)$4e();function CJa(e){return $4e(e)}function _Ja(e,t="type"){CJa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var yJa=_Ja,bJa=class{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}},I1i=class{constructor(e,t,r,n,a,o){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=a,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},h1i={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},IBu=new Set(Object.keys(h1i)),bNe;(function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"})(bNe||(bNe={}));var EJa=yJa(h1i,"kind"),SJa=EJa;function m1i(e){return e.loc.start}function C1i(e){return e.loc.end}function vJa(e){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/u.test(e)}function BJa(e){return`# @format +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var v1i=gJa;function AJa(e,t,r={}){let n=S1i(e,r.backwards?t-1:t,r),a=v1i(e,n,r);return n!==a}var dJa=AJa;function pJa(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r0}var B1i=_Ja,yJa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},bJa=yJa,$4e=null;function tJe(e){if($4e!==null&&typeof $4e.property){let t=$4e;return $4e=tJe.prototype=null,t}return $4e=tJe.prototype=e??Object.create(null),new tJe}var EJa=10;for(let e=0;e<=EJa;e++)tJe();function SJa(e){return tJe(e)}function vJa(e,t="type"){SJa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var BJa=vJa,wJa=class{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}},w1i=class{constructor(e,t,r,n,a,o){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=a,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},T1i={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},vwu=new Set(Object.keys(T1i)),_Ne;(function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"})(_Ne||(_Ne={}));var TJa=BJa(T1i,"kind"),RJa=TJa;function R1i(e){return e.loc.start}function N1i(e){return e.loc.end}function NJa(e){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/u.test(e)}function DJa(e){return`# @format -`+e}function wJa(e,t,r){let{node:n}=e;if(!n.description)return"";let a=[r("description")];return n.kind==="InputValueDefinition"&&!n.description.block?a.push(ENe):a.push(hT),a}var xee=wJa;function TJa(e,t,r){let{node:n}=e;switch(n.kind){case"Document":return[...Qk(hT,y6(e,t,r,"definitions")),hT];case"OperationDefinition":{let a=t.originalText[m1i(n)]!=="{",o=!!n.name;return[a?n.operation:"",a&&o?[" ",r("name")]:"",a&&!o&&f1i(n.variableDefinitions)?" ":"",s1i(e,r),rL(e,r,n),!a&&!o?"":" ",r("selectionSet")]}case"FragmentDefinition":return["fragment ",r("name"),s1i(e,r)," on ",r("typeCondition"),rL(e,r,n)," ",r("selectionSet")];case"SelectionSet":return["{",_V([hT,Qk(hT,y6(e,t,r,"selections"))]),hT,"}"];case"Field":return aH([n.alias?[r("alias"),": "]:"",r("name"),n.arguments.length>0?aH(["(",_V([Kv,Qk([b6("",", "),Kv],y6(e,t,r,"arguments"))]),Kv,")"]):"",rL(e,r,n),n.selectionSet?" ":"",r("selectionSet")]);case"Name":return n.value;case"StringValue":if(n.block){let a=HRr(!1,n.value,'"""',String.raw`\"""`).split(` -`);return a.length===1&&(a[0]=a[0].trim()),a.every(o=>o==="")&&(a.length=0),Qk(hT,['"""',...a,'"""'])}return['"',HRr(!1,HRr(!1,n.value,/["\\]/gu,String.raw`\$&`),` -`,String.raw`\n`),'"'];case"IntValue":case"FloatValue":case"EnumValue":return n.value;case"BooleanValue":return n.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",r("name")];case"ListValue":return aH(["[",_V([Kv,Qk([b6("",", "),Kv],e.map(r,"values"))]),Kv,"]"]);case"ObjectValue":{let a=t.bracketSpacing&&n.fields.length>0?" ":"";return aH(["{",a,_V([Kv,Qk([b6("",", "),Kv],e.map(r,"fields"))]),Kv,b6("",a),"}"])}case"ObjectField":case"Argument":return[r("name"),": ",r("value")];case"Directive":return["@",r("name"),n.arguments.length>0?aH(["(",_V([Kv,Qk([b6("",", "),Kv],y6(e,t,r,"arguments"))]),Kv,")"]):""];case"NamedType":return r("name");case"VariableDefinition":return[r("variable"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",rL(e,r,n)];case"ObjectTypeExtension":case"ObjectTypeDefinition":case"InputObjectTypeExtension":case"InputObjectTypeDefinition":case"InterfaceTypeExtension":case"InterfaceTypeDefinition":{let{kind:a}=n,o=[];return a.endsWith("TypeDefinition")?o.push(xee(e,t,r)):o.push("extend "),a.startsWith("ObjectType")?o.push("type"):a.startsWith("InputObjectType")?o.push("input"):o.push("interface"),o.push(" ",r("name")),!a.startsWith("InputObjectType")&&n.interfaces.length>0&&o.push(" implements ",...DJa(e,t,r)),o.push(rL(e,r,n)),n.fields.length>0&&o.push([" {",_V([hT,Qk(hT,y6(e,t,r,"fields"))]),hT,"}"]),o}case"FieldDefinition":return[xee(e,t,r),r("name"),n.arguments.length>0?aH(["(",_V([Kv,Qk([b6("",", "),Kv],y6(e,t,r,"arguments"))]),Kv,")"]):"",": ",r("type"),rL(e,r,n)];case"DirectiveDefinition":return[xee(e,t,r),"directive ","@",r("name"),n.arguments.length>0?aH(["(",_V([Kv,Qk([b6("",", "),Kv],y6(e,t,r,"arguments"))]),Kv,")"]):"",n.repeatable?" repeatable":""," on ",...Qk(" | ",e.map(r,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[xee(e,t,r),n.kind==="EnumTypeExtension"?"extend ":"","enum ",r("name"),rL(e,r,n),n.values.length>0?[" {",_V([hT,Qk(hT,y6(e,t,r,"values"))]),hT,"}"]:""];case"EnumValueDefinition":return[xee(e,t,r),r("name"),rL(e,r,n)];case"InputValueDefinition":return[xee(e,t,r),r("name"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",rL(e,r,n)];case"SchemaExtension":return["extend schema",rL(e,r,n),...n.operationTypes.length>0?[" {",_V([hT,Qk(hT,y6(e,t,r,"operationTypes"))]),hT,"}"]:[]];case"SchemaDefinition":return[xee(e,t,r),"schema",rL(e,r,n)," {",n.operationTypes.length>0?_V([hT,Qk(hT,y6(e,t,r,"operationTypes"))]):"",hT,"}"];case"OperationTypeDefinition":return[n.operation,": ",r("type")];case"FragmentSpread":return["...",r("name"),rL(e,r,n)];case"InlineFragment":return["...",n.typeCondition?[" on ",r("typeCondition")]:"",rL(e,r,n)," ",r("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return aH([xee(e,t,r),aH([n.kind==="UnionTypeExtension"?"extend ":"","union ",r("name"),rL(e,r,n),n.types.length>0?[" =",b6(""," "),_V([b6([ENe,"| "]),Qk([ENe,"| "],e.map(r,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[xee(e,t,r),n.kind==="ScalarTypeExtension"?"extend ":"","scalar ",r("name"),rL(e,r,n)];case"NonNullType":return[r("type"),"!"];case"ListType":return["[",r("type"),"]"];default:throw new hJa(n,"Graphql","kind")}}function rL(e,t,r){if(r.directives.length===0)return"";let n=Qk(ENe,e.map(t,"directives"));return r.kind==="FragmentDefinition"||r.kind==="OperationDefinition"?aH([ENe,n]):[" ",aH(_V([Kv,n]))]}function y6(e,t,r,n){return e.map(({isLast:a,node:o})=>{let l=r();return!a&&pJa(t.originalText,C1i(o))?[l,hT]:l},n)}function RJa(e){return e.kind!=="Comment"}function NJa(e){let t=e.node;if(t.kind==="Comment")return"#"+t.value.trimEnd();throw new Error("Not a comment: "+JSON.stringify(t))}function DJa(e,t,r){let{node:n}=e,a=[],{interfaces:o}=n,l=e.map(r,"interfaces");for(let A=0;An.value.trim()==="prettier-ignore")}var xJa={print:TJa,massageAstNode:_1i,hasPrettierIgnore:kJa,insertPragma:BJa,printComment:NJa,canAttachComment:RJa,getVisitorKeys:SJa},GJa=xJa,y1i=[{linguistLanguageId:139,name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",parsers:["graphql"],vscodeLanguageIds:["graphql"]}],FJa={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},ZJa={bracketSpacing:FJa.bracketSpacing},b1i=ZJa,KRr={};l1i(KRr,{graphql:()=>_Ua});function LJa(e){return typeof e=="object"&&e!==null}function VJa(e,t){if(!e)throw new Error(t??"Unexpected invariant triggered.")}var WJa=/\r\n|[\n\r]/g;function XRr(e,t){let r=0,n=1;for(let a of e.body.matchAll(WJa)){if(typeof a.index=="number"||VJa(!1),a.index>=t)break;r=a.index+a[0].length,n+=1}return{line:n,column:t+1-r}}function OJa(e){return E1i(e.source,XRr(e.source,e.start))}function E1i(e,t){let r=e.locationOffset.column-1,n="".padStart(r)+e.body,a=t.line-1,o=e.locationOffset.line-1,l=t.line+o,A=t.line===1?r:0,f=t.column+A,I=`${e.name}:${l}:${f} -`,C=n.split(/\r\n|[\n\r]/g),b=C[a];if(b.length>120){let E=Math.floor(f/80),N=f%80,B=[];for(let F=0;F["|",F]),["|","^".padStart(N)],["|",B[E+1]]])}return I+o1i([[`${l-1} |`,C[a-1]],[`${l} |`,b],["|","^".padStart(f)],[`${l+1} |`,C[a+1]]])}function o1i(e){let t=e.filter(([n,a])=>a!==void 0),r=Math.max(...t.map(([n])=>n.length));return t.map(([n,a])=>n.padStart(r)+(a?" "+a:"")).join(` -`)}function PJa(e){let t=e[0];return t==null||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}var MJa=class S1i extends Error{constructor(t,...r){var n,a,o;let{nodes:l,source:A,positions:f,path:I,originalError:C,extensions:b}=PJa(r);super(t),this.name="GraphQLError",this.path=I??void 0,this.originalError=C??void 0,this.nodes=a1i(Array.isArray(l)?l:l?[l]:void 0);let E=a1i((n=this.nodes)===null||n===void 0?void 0:n.map(B=>B.loc).filter(B=>B!=null));this.source=A??(E==null||(a=E[0])===null||a===void 0?void 0:a.source),this.positions=f??E?.map(B=>B.start),this.locations=f&&A?f.map(B=>XRr(A,B)):E?.map(B=>XRr(B.source,B.start));let N=LJa(C?.extensions)?C?.extensions:void 0;this.extensions=(o=b??N)!==null&&o!==void 0?o:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),C!=null&&C.stack?Object.defineProperty(this,"stack",{value:C.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,S1i):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let t=this.message;if(this.nodes)for(let r of this.nodes)r.loc&&(t+=` +`+e}function kJa(e,t,r){let{node:n}=e;if(!n.description)return"";let a=[r("description")];return n.kind==="InputValueDefinition"&&!n.description.block?a.push(yNe):a.push(mT),a}var Gee=kJa;function xJa(e,t,r){let{node:n}=e;switch(n.kind){case"Document":return[...Xk(mT,b6(e,t,r,"definitions")),mT];case"OperationDefinition":{let a=t.originalText[R1i(n)]!=="{",o=!!n.name;return[a?n.operation:"",a&&o?[" ",r("name")]:"",a&&!o&&B1i(n.variableDefinitions)?" ":"",I1i(e,r),nL(e,r,n),!a&&!o?"":" ",r("selectionSet")]}case"FragmentDefinition":return["fragment ",r("name"),I1i(e,r)," on ",r("typeCondition"),nL(e,r,n)," ",r("selectionSet")];case"SelectionSet":return["{",yV([mT,Xk(mT,b6(e,t,r,"selections"))]),mT,"}"];case"Field":return cH([n.alias?[r("alias"),": "]:"",r("name"),n.arguments.length>0?cH(["(",yV([jv,Xk([E6("",", "),jv],b6(e,t,r,"arguments"))]),jv,")"]):"",nL(e,r,n),n.selectionSet?" ":"",r("selectionSet")]);case"Name":return n.value;case"StringValue":if(n.block){let a=QRr(!1,n.value,'"""',String.raw`\"""`).split(` +`);return a.length===1&&(a[0]=a[0].trim()),a.every(o=>o==="")&&(a.length=0),Xk(mT,['"""',...a,'"""'])}return['"',QRr(!1,QRr(!1,n.value,/["\\]/gu,String.raw`\$&`),` +`,String.raw`\n`),'"'];case"IntValue":case"FloatValue":case"EnumValue":return n.value;case"BooleanValue":return n.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",r("name")];case"ListValue":return cH(["[",yV([jv,Xk([E6("",", "),jv],e.map(r,"values"))]),jv,"]"]);case"ObjectValue":{let a=t.bracketSpacing&&n.fields.length>0?" ":"";return cH(["{",a,yV([jv,Xk([E6("",", "),jv],e.map(r,"fields"))]),jv,E6("",a),"}"])}case"ObjectField":case"Argument":return[r("name"),": ",r("value")];case"Directive":return["@",r("name"),n.arguments.length>0?cH(["(",yV([jv,Xk([E6("",", "),jv],b6(e,t,r,"arguments"))]),jv,")"]):""];case"NamedType":return r("name");case"VariableDefinition":return[r("variable"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",nL(e,r,n)];case"ObjectTypeExtension":case"ObjectTypeDefinition":case"InputObjectTypeExtension":case"InputObjectTypeDefinition":case"InterfaceTypeExtension":case"InterfaceTypeDefinition":{let{kind:a}=n,o=[];return a.endsWith("TypeDefinition")?o.push(Gee(e,t,r)):o.push("extend "),a.startsWith("ObjectType")?o.push("type"):a.startsWith("InputObjectType")?o.push("input"):o.push("interface"),o.push(" ",r("name")),!a.startsWith("InputObjectType")&&n.interfaces.length>0&&o.push(" implements ",...ZJa(e,t,r)),o.push(nL(e,r,n)),n.fields.length>0&&o.push([" {",yV([mT,Xk(mT,b6(e,t,r,"fields"))]),mT,"}"]),o}case"FieldDefinition":return[Gee(e,t,r),r("name"),n.arguments.length>0?cH(["(",yV([jv,Xk([E6("",", "),jv],b6(e,t,r,"arguments"))]),jv,")"]):"",": ",r("type"),nL(e,r,n)];case"DirectiveDefinition":return[Gee(e,t,r),"directive ","@",r("name"),n.arguments.length>0?cH(["(",yV([jv,Xk([E6("",", "),jv],b6(e,t,r,"arguments"))]),jv,")"]):"",n.repeatable?" repeatable":""," on ",...Xk(" | ",e.map(r,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[Gee(e,t,r),n.kind==="EnumTypeExtension"?"extend ":"","enum ",r("name"),nL(e,r,n),n.values.length>0?[" {",yV([mT,Xk(mT,b6(e,t,r,"values"))]),mT,"}"]:""];case"EnumValueDefinition":return[Gee(e,t,r),r("name"),nL(e,r,n)];case"InputValueDefinition":return[Gee(e,t,r),r("name"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",nL(e,r,n)];case"SchemaExtension":return["extend schema",nL(e,r,n),...n.operationTypes.length>0?[" {",yV([mT,Xk(mT,b6(e,t,r,"operationTypes"))]),mT,"}"]:[]];case"SchemaDefinition":return[Gee(e,t,r),"schema",nL(e,r,n)," {",n.operationTypes.length>0?yV([mT,Xk(mT,b6(e,t,r,"operationTypes"))]):"",mT,"}"];case"OperationTypeDefinition":return[n.operation,": ",r("type")];case"FragmentSpread":return["...",r("name"),nL(e,r,n)];case"InlineFragment":return["...",n.typeCondition?[" on ",r("typeCondition")]:"",nL(e,r,n)," ",r("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return cH([Gee(e,t,r),cH([n.kind==="UnionTypeExtension"?"extend ":"","union ",r("name"),nL(e,r,n),n.types.length>0?[" =",E6(""," "),yV([E6([yNe,"| "]),Xk([yNe,"| "],e.map(r,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[Gee(e,t,r),n.kind==="ScalarTypeExtension"?"extend ":"","scalar ",r("name"),nL(e,r,n)];case"NonNullType":return[r("type"),"!"];case"ListType":return["[",r("type"),"]"];default:throw new bJa(n,"Graphql","kind")}}function nL(e,t,r){if(r.directives.length===0)return"";let n=Xk(yNe,e.map(t,"directives"));return r.kind==="FragmentDefinition"||r.kind==="OperationDefinition"?cH([yNe,n]):[" ",cH(yV([jv,n]))]}function b6(e,t,r,n){return e.map(({isLast:a,node:o})=>{let l=r();return!a&&CJa(t.originalText,N1i(o))?[l,mT]:l},n)}function GJa(e){return e.kind!=="Comment"}function FJa(e){let t=e.node;if(t.kind==="Comment")return"#"+t.value.trimEnd();throw new Error("Not a comment: "+JSON.stringify(t))}function ZJa(e,t,r){let{node:n}=e,a=[],{interfaces:o}=n,l=e.map(r,"interfaces");for(let A=0;An.value.trim()==="prettier-ignore")}var VJa={print:xJa,massageAstNode:D1i,hasPrettierIgnore:LJa,insertPragma:DJa,printComment:FJa,canAttachComment:GJa,getVisitorKeys:RJa},WJa=VJa,k1i=[{linguistLanguageId:139,name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",parsers:["graphql"],vscodeLanguageIds:["graphql"]}],OJa={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},PJa={bracketSpacing:OJa.bracketSpacing},x1i=PJa,zRr={};_1i(zRr,{graphql:()=>vUa});function MJa(e){return typeof e=="object"&&e!==null}function HJa(e,t){if(!e)throw new Error(t??"Unexpected invariant triggered.")}var YJa=/\r\n|[\n\r]/g;function URr(e,t){let r=0,n=1;for(let a of e.body.matchAll(YJa)){if(typeof a.index=="number"||HJa(!1),a.index>=t)break;r=a.index+a[0].length,n+=1}return{line:n,column:t+1-r}}function QJa(e){return G1i(e.source,URr(e.source,e.start))}function G1i(e,t){let r=e.locationOffset.column-1,n="".padStart(r)+e.body,a=t.line-1,o=e.locationOffset.line-1,l=t.line+o,A=t.line===1?r:0,f=t.column+A,I=`${e.name}:${l}:${f} +`,C=n.split(/\r\n|[\n\r]/g),b=C[a];if(b.length>120){let E=Math.floor(f/80),N=f%80,B=[];for(let F=0;F["|",F]),["|","^".padStart(N)],["|",B[E+1]]])}return I+h1i([[`${l-1} |`,C[a-1]],[`${l} |`,b],["|","^".padStart(f)],[`${l+1} |`,C[a+1]]])}function h1i(e){let t=e.filter(([n,a])=>a!==void 0),r=Math.max(...t.map(([n])=>n.length));return t.map(([n,a])=>n.padStart(r)+(a?" "+a:"")).join(` +`)}function XJa(e){let t=e[0];return t==null||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}var JJa=class F1i extends Error{constructor(t,...r){var n,a,o;let{nodes:l,source:A,positions:f,path:I,originalError:C,extensions:b}=XJa(r);super(t),this.name="GraphQLError",this.path=I??void 0,this.originalError=C??void 0,this.nodes=m1i(Array.isArray(l)?l:l?[l]:void 0);let E=m1i((n=this.nodes)===null||n===void 0?void 0:n.map(B=>B.loc).filter(B=>B!=null));this.source=A??(E==null||(a=E[0])===null||a===void 0?void 0:a.source),this.positions=f??E?.map(B=>B.start),this.locations=f&&A?f.map(B=>URr(A,B)):E?.map(B=>URr(B.source,B.start));let N=MJa(C?.extensions)?C?.extensions:void 0;this.extensions=(o=b??N)!==null&&o!==void 0?o:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),C!=null&&C.stack?Object.defineProperty(this,"stack",{value:C.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,F1i):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let t=this.message;if(this.nodes)for(let r of this.nodes)r.loc&&(t+=` -`+OJa(r.loc));else if(this.source&&this.locations)for(let r of this.locations)t+=` +`+QJa(r.loc));else if(this.source&&this.locations)for(let r of this.locations)t+=` -`+E1i(this.source,r);return t}toJSON(){let t={message:this.message};return this.locations!=null&&(t.locations=this.locations),this.path!=null&&(t.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(t.extensions=this.extensions),t}};function a1i(e){return e===void 0||e.length===0?void 0:e}function lD(e,t,r){return new MJa(`Syntax Error: ${r}`,{source:e,positions:[t]})}var JRr;(function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"})(JRr||(JRr={}));var Vf;(function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"})(Vf||(Vf={}));function HJa(e){return e===9||e===32}function tJe(e){return e>=48&&e<=57}function v1i(e){return e>=97&&e<=122||e>=65&&e<=90}function B1i(e){return v1i(e)||e===95}function YJa(e){return v1i(e)||tJe(e)||e===95}function QJa(e){var t;let r=Number.MAX_SAFE_INTEGER,n=null,a=-1;for(let l=0;lA===0?l:l.slice(r)).slice((t=n)!==null&&t!==void 0?t:0,a+1)}function XJa(e){let t=0;for(;t=0&&e<=55295||e>=57344&&e<=1114111}function xbt(e,t){return w1i(e.charCodeAt(t))&&T1i(e.charCodeAt(t+1))}function w1i(e){return e>=55296&&e<=56319}function T1i(e){return e>=56320&&e<=57343}function Hme(e,t){let r=e.source.body.codePointAt(t);if(r===void 0)return jc.EOF;if(r>=32&&r<=126){let n=String.fromCodePoint(r);return n==='"'?`'"'`:`"${n}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function mT(e,t,r,n,a){let o=e.line,l=1+r-e.lineStart;return new I1i(t,r,n,o,l,a)}function KJa(e,t){let r=e.source.body,n=r.length,a=t;for(;a=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function tUa(e,t){let r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:` -`,size:2};case 114:return{value:"\r",size:2};case 116:return{value:" ",size:2}}throw lD(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function rUa(e,t){let r=e.source.body,n=r.length,a=e.lineStart,o=t+3,l=o,A="",f=[];for(;o2?"["+cUa(e)+"]":"{ "+r.map(([n,a])=>n+": "+Gbt(a,t)).join(", ")+" }"}function aUa(e,t){if(e.length===0)return"[]";if(t.length>2)return"[Array]";let r=Math.min(10,e.length),n=e.length-r,a=[];for(let o=0;o1&&a.push(`... ${n} more items`),"["+a.join(", ")+"]"}function cUa(e){let t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if(t==="Object"&&typeof e.constructor=="function"){let r=e.constructor.name;if(typeof r=="string"&&r!=="")return r}return t}var lUa=globalThis.process&&!0,uUa=lUa?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if(typeof e=="object"&&e!==null){var r;let n=t.prototype[Symbol.toStringTag],a=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(n===a){let o=R1i(e);throw new Error(`Cannot use ${n} "${o}" from another module or realm. +`+G1i(this.source,r);return t}toJSON(){let t={message:this.message};return this.locations!=null&&(t.locations=this.locations),this.path!=null&&(t.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(t.extensions=this.extensions),t}};function m1i(e){return e===void 0||e.length===0?void 0:e}function uD(e,t,r){return new JJa(`Syntax Error: ${r}`,{source:e,positions:[t]})}var KRr;(function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"})(KRr||(KRr={}));var Vf;(function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"})(Vf||(Vf={}));function UJa(e){return e===9||e===32}function nJe(e){return e>=48&&e<=57}function Z1i(e){return e>=97&&e<=122||e>=65&&e<=90}function L1i(e){return Z1i(e)||e===95}function KJa(e){return Z1i(e)||nJe(e)||e===95}function jJa(e){var t;let r=Number.MAX_SAFE_INTEGER,n=null,a=-1;for(let l=0;lA===0?l:l.slice(r)).slice((t=n)!==null&&t!==void 0?t:0,a+1)}function zJa(e){let t=0;for(;t=0&&e<=55295||e>=57344&&e<=1114111}function Dbt(e,t){return V1i(e.charCodeAt(t))&&W1i(e.charCodeAt(t+1))}function V1i(e){return e>=55296&&e<=56319}function W1i(e){return e>=56320&&e<=57343}function Yme(e,t){let r=e.source.body.codePointAt(t);if(r===void 0)return jc.EOF;if(r>=32&&r<=126){let n=String.fromCodePoint(r);return n==='"'?`'"'`:`"${n}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function CT(e,t,r,n,a){let o=e.line,l=1+r-e.lineStart;return new w1i(t,r,n,o,l,a)}function eUa(e,t){let r=e.source.body,n=r.length,a=t;for(;a=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function oUa(e,t){let r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:` +`,size:2};case 114:return{value:"\r",size:2};case 116:return{value:" ",size:2}}throw uD(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function aUa(e,t){let r=e.source.body,n=r.length,a=e.lineStart,o=t+3,l=o,A="",f=[];for(;o2?"["+dUa(e)+"]":"{ "+r.map(([n,a])=>n+": "+kbt(a,t)).join(", ")+" }"}function AUa(e,t){if(e.length===0)return"[]";if(t.length>2)return"[Array]";let r=Math.min(10,e.length),n=e.length-r,a=[];for(let o=0;o1&&a.push(`... ${n} more items`),"["+a.join(", ")+"]"}function dUa(e){let t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if(t==="Object"&&typeof e.constructor=="function"){let r=e.constructor.name;if(typeof r=="string"&&r!=="")return r}return t}var pUa=globalThis.process&&!0,fUa=pUa?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if(typeof e=="object"&&e!==null){var r;let n=t.prototype[Symbol.toStringTag],a=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(n===a){let o=O1i(e);throw new Error(`Cannot use ${n} "${o}" from another module or realm. Ensure that there is only one instance of "graphql" in the node_modules directory. If different versions of "graphql" are the dependencies of other @@ -2148,93 +2148,93 @@ https://yarnpkg.com/en/docs/selective-version-resolutions Duplicate "graphql" modules cannot be used at the same time since different versions may have different capabilities and behavior. The data from one version used in the function from another could produce confusing and -spurious results.`)}}return!1},N1i=class{constructor(e,t="GraphQL request",r={line:1,column:1}){typeof e=="string"||QRr(!1,`Body must be a string. Received: ${R1i(e)}.`),this.body=e,this.name=t,this.locationOffset=r,this.locationOffset.line>0||QRr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||QRr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}};function gUa(e){return uUa(e,N1i)}function AUa(e,t){let r=new dUa(e,t),n=r.parseDocument();return Object.defineProperty(n,"tokenCount",{enumerable:!1,value:r.tokenCount}),n}var dUa=class{constructor(e,t={}){let r=gUa(e)?e:new N1i(e);this._lexer=new JJa(r),this._options=t,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(jc.NAME);return this.node(e,{kind:Vf.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Vf.DOCUMENT,definitions:this.many(jc.SOF,this.parseDefinition,jc.EOF)})}parseDefinition(){if(this.peek(jc.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===jc.NAME){switch(t.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()}if(e)throw lD(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(jc.BRACE_L))return this.node(e,{kind:Vf.OPERATION_DEFINITION,operation:bNe.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let t=this.parseOperationType(),r;return this.peek(jc.NAME)&&(r=this.parseName()),this.node(e,{kind:Vf.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(jc.NAME);switch(e.value){case"query":return bNe.QUERY;case"mutation":return bNe.MUTATION;case"subscription":return bNe.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(jc.PAREN_L,this.parseVariableDefinition,jc.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Vf.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(jc.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(jc.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(jc.DOLLAR),this.node(e,{kind:Vf.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Vf.SELECTION_SET,selections:this.many(jc.BRACE_L,this.parseSelection,jc.BRACE_R)})}parseSelection(){return this.peek(jc.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),r,n;return this.expectOptionalToken(jc.COLON)?(r=t,n=this.parseName()):n=t,this.node(e,{kind:Vf.FIELD,alias:r,name:n,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(jc.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(jc.PAREN_L,t,jc.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Vf.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(jc.SPREAD);let t=this.expectOptionalKeyword("on");return!t&&this.peek(jc.NAME)?this.node(e,{kind:Vf.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Vf.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword("fragment"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:Vf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Vf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case jc.BRACKET_L:return this.parseList(e);case jc.BRACE_L:return this.parseObject(e);case jc.INT:return this.advanceLexer(),this.node(t,{kind:Vf.INT,value:t.value});case jc.FLOAT:return this.advanceLexer(),this.node(t,{kind:Vf.FLOAT,value:t.value});case jc.STRING:case jc.BLOCK_STRING:return this.parseStringLiteral();case jc.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Vf.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Vf.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Vf.NULL});default:return this.node(t,{kind:Vf.ENUM,value:t.value})}case jc.DOLLAR:if(e)if(this.expectToken(jc.DOLLAR),this._lexer.token.kind===jc.NAME){let r=this._lexer.token.value;throw lD(this._lexer.source,t.start,`Unexpected variable "$${r}" in constant value.`)}else throw this.unexpected(t);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Vf.STRING,value:e.value,block:e.kind===jc.BLOCK_STRING})}parseList(e){let t=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:Vf.LIST,values:this.any(jc.BRACKET_L,t,jc.BRACKET_R)})}parseObject(e){let t=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:Vf.OBJECT,fields:this.any(jc.BRACE_L,t,jc.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Vf.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(jc.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(jc.AT),this.node(t,{kind:Vf.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(jc.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(jc.BRACKET_R),t=this.node(e,{kind:Vf.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(jc.BANG)?this.node(e,{kind:Vf.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Vf.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(jc.STRING)||this.peek(jc.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");let r=this.parseConstDirectives(),n=this.many(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);return this.node(e,{kind:Vf.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(jc.COLON);let r=this.parseNamedType();return this.node(e,{kind:Vf.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");let r=this.parseName(),n=this.parseConstDirectives();return this.node(e,{kind:Vf.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Vf.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(jc.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseFieldDefinition,jc.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(jc.COLON);let a=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:Vf.FIELD_DEFINITION,description:t,name:r,arguments:n,type:a,directives:o})}parseArgumentDefs(){return this.optionalMany(jc.PAREN_L,this.parseInputValueDef,jc.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(jc.COLON);let n=this.parseTypeReference(),a;this.expectOptionalToken(jc.EQUALS)&&(a=this.parseConstValueLiteral());let o=this.parseConstDirectives();return this.node(e,{kind:Vf.INPUT_VALUE_DEFINITION,description:t,name:r,type:n,defaultValue:a,directives:o})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Vf.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseUnionMemberTypes();return this.node(e,{kind:Vf.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:a})}parseUnionMemberTypes(){return this.expectOptionalToken(jc.EQUALS)?this.delimitedMany(jc.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseEnumValuesDefinition();return this.node(e,{kind:Vf.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:a})}parseEnumValuesDefinition(){return this.optionalMany(jc.BRACE_L,this.parseEnumValueDefinition,jc.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),n=this.parseConstDirectives();return this.node(e,{kind:Vf.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n})}parseEnumValueName(){if(this._lexer.token.value==="true"||this._lexer.token.value==="false"||this._lexer.token.value==="null")throw lD(this._lexer.source,this._lexer.token.start,`${Dbt(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseInputFieldsDefinition();return this.node(e,{kind:Vf.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:a})}parseInputFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseInputValueDef,jc.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===jc.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)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");let t=this.parseConstDirectives(),r=this.optionalMany(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);if(t.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:Vf.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");let t=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:Vf.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Vf.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Vf.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseUnionMemberTypes();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Vf.UNION_TYPE_EXTENSION,name:t,directives:r,types:n})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseEnumValuesDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Vf.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseInputFieldsDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Vf.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(jc.AT);let r=this.parseName(),n=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");let o=this.parseDirectiveLocations();return this.node(e,{kind:Vf.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(jc.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(JRr,t.value))return t;throw this.unexpected(e)}node(e,t){return this._options.noLocation!==!0&&(t.loc=new bJa(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw lD(this._lexer.source,t.start,`Expected ${D1i(e)}, found ${Dbt(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let t=this._lexer.token;if(t.kind===jc.NAME&&t.value===e)this.advanceLexer();else throw lD(this._lexer.source,t.start,`Expected "${e}", found ${Dbt(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===jc.NAME&&t.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let t=e??this._lexer.token;return lD(this._lexer.source,t.start,`Unexpected ${Dbt(t)}.`)}any(e,t,r){this.expectToken(e);let n=[];for(;!this.expectOptionalToken(r);)n.push(t.call(this));return n}optionalMany(e,t,r){if(this.expectOptionalToken(e)){let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}return[]}many(e,t,r){this.expectToken(e);let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}delimitedMany(e,t){this.expectOptionalToken(e);let r=[];do r.push(t.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==jc.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw lD(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function Dbt(e){let t=e.value;return D1i(e.kind)+(t!=null?` "${t}"`:"")}function D1i(e){return UJa(e)?`"${e}"`:e}function pUa(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var fUa=pUa;function IUa(e){let t=[],{startToken:r,endToken:n}=e.loc;for(let a=r;a!==n;a=a.next)a.kind==="Comment"&&t.push({...a,loc:{start:a.start,end:a.end}});return t}var hUa={allowLegacyFragmentVariables:!0};function mUa(e){if(e?.name==="GraphQLError"){let{message:t,locations:[r]}=e;return fUa(t,{loc:{start:r},cause:e})}return e}function CUa(e){let t;try{t=AUa(e,hUa)}catch(r){throw mUa(r)}return t.comments=IUa(t),t}var _Ua={parse:CUa,astFormat:"graphql",hasPragma:vJa,locStart:m1i,locEnd:C1i},k1i={graphql:GJa},yUa=u1i;var fJe={};Uf(fJe,{default:()=>oja,languages:()=>S2i,options:()=>v2i,parsers:()=>pNr,printers:()=>D2i});var bUa=Object.create,iNr=Object.defineProperty,EUa=Object.getOwnPropertyDescriptor,SUa=Object.getOwnPropertyNames,vUa=Object.getPrototypeOf,BUa=Object.prototype.hasOwnProperty,z1i=e=>{throw TypeError(e)},$l=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),q1i=(e,t)=>{for(var r in t)iNr(e,r,{get:t[r],enumerable:!0})},wUa=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of SUa(t))!BUa.call(e,a)&&a!==r&&iNr(e,a,{get:()=>t[a],enumerable:!(n=EUa(t,a))||n.enumerable});return e},RNe=(e,t,r)=>(r=e!=null?bUa(vUa(e)):{},wUa(t||!e||!e.__esModule?iNr(r,"default",{value:e,enumerable:!0}):r,e)),$1i=(e,t,r)=>t.has(e)||z1i("Cannot "+r),vce=(e,t,r)=>($1i(e,t,"read from private field"),r?r.call(e):t.get(e)),TUa=(e,t,r)=>t.has(e)?z1i("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),RUa=(e,t,r,n)=>($1i(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),sNr=$l((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\s+/g," ")}}),NUa=$l((e,t)=>{"use strict";t.exports=B;var r=9,n=10,a=32,o=33,l=58,A=91,f=92,I=93,C=94,b=96,E=4,N=1024;function B(fe){var ue=this.Parser,de=this.Compiler;F(ue)&&J(ue,fe),Q(de)&&ae(de)}function F(fe){return!!(fe&&fe.prototype&&fe.prototype.blockTokenizers)}function Q(fe){return!!(fe&&fe.prototype&&fe.prototype.visitors)}function J(fe,ue){for(var de=ue||{},be=fe.prototype,Se=be.blockTokenizers,De=be.inlineTokenizers,k=be.blockMethods,tt=be.inlineMethods,ze=Se.definition,Le=De.reference,Je=[],ft=-1,lt=k.length,Ot;++ftE&&(ol=void 0,Sc=zt);else{if(ol0&&(Or=Hr[ke-1],Or.contentStart===Or.contentEnd);)ke--;for(no=Xt(lr.slice(0,Or.contentEnd));++zt0||JRr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||JRr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}};function IUa(e){return fUa(e,P1i)}function hUa(e,t){let r=new mUa(e,t),n=r.parseDocument();return Object.defineProperty(n,"tokenCount",{enumerable:!1,value:r.tokenCount}),n}var mUa=class{constructor(e,t={}){let r=IUa(e)?e:new P1i(e);this._lexer=new qJa(r),this._options=t,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(jc.NAME);return this.node(e,{kind:Vf.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Vf.DOCUMENT,definitions:this.many(jc.SOF,this.parseDefinition,jc.EOF)})}parseDefinition(){if(this.peek(jc.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===jc.NAME){switch(t.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()}if(e)throw uD(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(jc.BRACE_L))return this.node(e,{kind:Vf.OPERATION_DEFINITION,operation:_Ne.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let t=this.parseOperationType(),r;return this.peek(jc.NAME)&&(r=this.parseName()),this.node(e,{kind:Vf.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(jc.NAME);switch(e.value){case"query":return _Ne.QUERY;case"mutation":return _Ne.MUTATION;case"subscription":return _Ne.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(jc.PAREN_L,this.parseVariableDefinition,jc.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Vf.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(jc.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(jc.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(jc.DOLLAR),this.node(e,{kind:Vf.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Vf.SELECTION_SET,selections:this.many(jc.BRACE_L,this.parseSelection,jc.BRACE_R)})}parseSelection(){return this.peek(jc.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),r,n;return this.expectOptionalToken(jc.COLON)?(r=t,n=this.parseName()):n=t,this.node(e,{kind:Vf.FIELD,alias:r,name:n,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(jc.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(jc.PAREN_L,t,jc.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Vf.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(jc.SPREAD);let t=this.expectOptionalKeyword("on");return!t&&this.peek(jc.NAME)?this.node(e,{kind:Vf.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Vf.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword("fragment"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:Vf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Vf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case jc.BRACKET_L:return this.parseList(e);case jc.BRACE_L:return this.parseObject(e);case jc.INT:return this.advanceLexer(),this.node(t,{kind:Vf.INT,value:t.value});case jc.FLOAT:return this.advanceLexer(),this.node(t,{kind:Vf.FLOAT,value:t.value});case jc.STRING:case jc.BLOCK_STRING:return this.parseStringLiteral();case jc.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Vf.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Vf.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Vf.NULL});default:return this.node(t,{kind:Vf.ENUM,value:t.value})}case jc.DOLLAR:if(e)if(this.expectToken(jc.DOLLAR),this._lexer.token.kind===jc.NAME){let r=this._lexer.token.value;throw uD(this._lexer.source,t.start,`Unexpected variable "$${r}" in constant value.`)}else throw this.unexpected(t);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Vf.STRING,value:e.value,block:e.kind===jc.BLOCK_STRING})}parseList(e){let t=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:Vf.LIST,values:this.any(jc.BRACKET_L,t,jc.BRACKET_R)})}parseObject(e){let t=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:Vf.OBJECT,fields:this.any(jc.BRACE_L,t,jc.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Vf.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(jc.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(jc.AT),this.node(t,{kind:Vf.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(jc.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(jc.BRACKET_R),t=this.node(e,{kind:Vf.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(jc.BANG)?this.node(e,{kind:Vf.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Vf.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(jc.STRING)||this.peek(jc.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");let r=this.parseConstDirectives(),n=this.many(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);return this.node(e,{kind:Vf.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(jc.COLON);let r=this.parseNamedType();return this.node(e,{kind:Vf.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");let r=this.parseName(),n=this.parseConstDirectives();return this.node(e,{kind:Vf.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Vf.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(jc.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseFieldDefinition,jc.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(jc.COLON);let a=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:Vf.FIELD_DEFINITION,description:t,name:r,arguments:n,type:a,directives:o})}parseArgumentDefs(){return this.optionalMany(jc.PAREN_L,this.parseInputValueDef,jc.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(jc.COLON);let n=this.parseTypeReference(),a;this.expectOptionalToken(jc.EQUALS)&&(a=this.parseConstValueLiteral());let o=this.parseConstDirectives();return this.node(e,{kind:Vf.INPUT_VALUE_DEFINITION,description:t,name:r,type:n,defaultValue:a,directives:o})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Vf.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseUnionMemberTypes();return this.node(e,{kind:Vf.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:a})}parseUnionMemberTypes(){return this.expectOptionalToken(jc.EQUALS)?this.delimitedMany(jc.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseEnumValuesDefinition();return this.node(e,{kind:Vf.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:a})}parseEnumValuesDefinition(){return this.optionalMany(jc.BRACE_L,this.parseEnumValueDefinition,jc.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),n=this.parseConstDirectives();return this.node(e,{kind:Vf.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n})}parseEnumValueName(){if(this._lexer.token.value==="true"||this._lexer.token.value==="false"||this._lexer.token.value==="null")throw uD(this._lexer.source,this._lexer.token.start,`${Rbt(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseInputFieldsDefinition();return this.node(e,{kind:Vf.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:a})}parseInputFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseInputValueDef,jc.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===jc.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)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");let t=this.parseConstDirectives(),r=this.optionalMany(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);if(t.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:Vf.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");let t=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:Vf.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Vf.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Vf.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseUnionMemberTypes();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Vf.UNION_TYPE_EXTENSION,name:t,directives:r,types:n})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseEnumValuesDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Vf.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseInputFieldsDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Vf.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(jc.AT);let r=this.parseName(),n=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");let o=this.parseDirectiveLocations();return this.node(e,{kind:Vf.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(jc.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(KRr,t.value))return t;throw this.unexpected(e)}node(e,t){return this._options.noLocation!==!0&&(t.loc=new wJa(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw uD(this._lexer.source,t.start,`Expected ${M1i(e)}, found ${Rbt(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let t=this._lexer.token;if(t.kind===jc.NAME&&t.value===e)this.advanceLexer();else throw uD(this._lexer.source,t.start,`Expected "${e}", found ${Rbt(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===jc.NAME&&t.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let t=e??this._lexer.token;return uD(this._lexer.source,t.start,`Unexpected ${Rbt(t)}.`)}any(e,t,r){this.expectToken(e);let n=[];for(;!this.expectOptionalToken(r);)n.push(t.call(this));return n}optionalMany(e,t,r){if(this.expectOptionalToken(e)){let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}return[]}many(e,t,r){this.expectToken(e);let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}delimitedMany(e,t){this.expectOptionalToken(e);let r=[];do r.push(t.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==jc.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw uD(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function Rbt(e){let t=e.value;return M1i(e.kind)+(t!=null?` "${t}"`:"")}function M1i(e){return $Ja(e)?`"${e}"`:e}function CUa(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var _Ua=CUa;function yUa(e){let t=[],{startToken:r,endToken:n}=e.loc;for(let a=r;a!==n;a=a.next)a.kind==="Comment"&&t.push({...a,loc:{start:a.start,end:a.end}});return t}var bUa={allowLegacyFragmentVariables:!0};function EUa(e){if(e?.name==="GraphQLError"){let{message:t,locations:[r]}=e;return _Ua(t,{loc:{start:r},cause:e})}return e}function SUa(e){let t;try{t=hUa(e,bUa)}catch(r){throw EUa(r)}return t.comments=yUa(t),t}var vUa={parse:SUa,astFormat:"graphql",hasPragma:NJa,locStart:R1i,locEnd:N1i},H1i={graphql:WJa},BUa=y1i;var hJe={};Uf(hJe,{default:()=>gja,languages:()=>F2i,options:()=>Z2i,parsers:()=>INr,printers:()=>M2i});var wUa=Object.create,oNr=Object.defineProperty,TUa=Object.getOwnPropertyDescriptor,RUa=Object.getOwnPropertyNames,NUa=Object.getPrototypeOf,DUa=Object.prototype.hasOwnProperty,c2i=e=>{throw TypeError(e)},$l=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),l2i=(e,t)=>{for(var r in t)oNr(e,r,{get:t[r],enumerable:!0})},kUa=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of RUa(t))!DUa.call(e,a)&&a!==r&&oNr(e,a,{get:()=>t[a],enumerable:!(n=TUa(t,a))||n.enumerable});return e},wNe=(e,t,r)=>(r=e!=null?wUa(NUa(e)):{},kUa(t||!e||!e.__esModule?oNr(r,"default",{value:e,enumerable:!0}):r,e)),u2i=(e,t,r)=>t.has(e)||c2i("Cannot "+r),Bce=(e,t,r)=>(u2i(e,t,"read from private field"),r?r.call(e):t.get(e)),xUa=(e,t,r)=>t.has(e)?c2i("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),GUa=(e,t,r,n)=>(u2i(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),aNr=$l((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\s+/g," ")}}),FUa=$l((e,t)=>{"use strict";t.exports=B;var r=9,n=10,a=32,o=33,l=58,A=91,f=92,I=93,C=94,b=96,E=4,N=1024;function B(fe){var ue=this.Parser,de=this.Compiler;F(ue)&&J(ue,fe),Q(de)&&ae(de)}function F(fe){return!!(fe&&fe.prototype&&fe.prototype.blockTokenizers)}function Q(fe){return!!(fe&&fe.prototype&&fe.prototype.visitors)}function J(fe,ue){for(var de=ue||{},be=fe.prototype,Se=be.blockTokenizers,De=be.inlineTokenizers,k=be.blockMethods,tt=be.inlineMethods,ze=Se.definition,Le=De.reference,Je=[],ft=-1,lt=k.length,Ot;++ftE&&(al=void 0,Sc=zt);else{if(al0&&(Or=Hr[ke-1],Or.contentStart===Or.contentEnd);)ke--;for(no=Xt(lr.slice(0,Or.contentEnd));++zt{e.isRemarkParser=t,e.isRemarkCompiler=r;function t(n){return!!(n&&n.prototype&&n.prototype.blockTokenizers)}function r(n){return!!(n&&n.prototype&&n.prototype.visitors)}}),DUa=$l((e,t)=>{var r=e2i();t.exports=b;var n=9,a=32,o=36,l=48,A=57,f=92,I=["math","math-inline"],C="math-display";function b(B){let F=this.Parser,Q=this.Compiler;r.isRemarkParser(F)&&E(F,B),r.isRemarkCompiler(Q)&&N(Q,B)}function E(B,F){let Q=B.prototype,J=Q.inlineMethods;ne.locator=ae,Q.inlineTokenizers.math=ne,J.splice(J.indexOf("text"),0,"math");function ae(ce,fe){return ce.indexOf("$",fe)}function ne(ce,fe,ue){let de=fe.length,be=!1,Se=!1,De=0,k,tt,ze,Le,Je,ft,lt;if(fe.charCodeAt(De)===f&&(Se=!0,De++),fe.charCodeAt(De)===o){if(De++,Se)return ue?!0:ce(fe.slice(0,De))({type:"text",value:"$"});if(fe.charCodeAt(De)===o&&(be=!0,De++),ze=fe.charCodeAt(De),!(ze===a||ze===n)){for(Le=De;DeA)&&(!be||ze===o)){Je=De-1,De++,be&&De++,ft=De;break}}else tt===f&&(De++,ze=fe.charCodeAt(De+1));De++}if(ft!==void 0)return ue?!0:(lt=fe.slice(Le,Je+1),ce(fe.slice(0,ft))({type:"inlineMath",value:lt,data:{hName:"span",hProperties:{className:I.concat(be&&F.inlineMathDouble?[C]:[])},hChildren:[{type:"text",value:lt}]}}))}}}}function N(B){let F=B.prototype;F.visitors.inlineMath=Q;function Q(J){let ae="$";return(J.data&&J.data.hProperties&&J.data.hProperties.className||[]).includes(C)&&(ae="$$"),ae+J.value+ae}}}),kUa=$l((e,t)=>{var r=e2i();t.exports=C;var n=10,a=32,o=36,l=` +`)}}function ne(fe,ue,de){fe.splice(fe.indexOf(ue),0,de)}function ce(fe,ue,de,be){for(var Se=fe.length,De=-1;++De{e.isRemarkParser=t,e.isRemarkCompiler=r;function t(n){return!!(n&&n.prototype&&n.prototype.blockTokenizers)}function r(n){return!!(n&&n.prototype&&n.prototype.visitors)}}),ZUa=$l((e,t)=>{var r=g2i();t.exports=b;var n=9,a=32,o=36,l=48,A=57,f=92,I=["math","math-inline"],C="math-display";function b(B){let F=this.Parser,Q=this.Compiler;r.isRemarkParser(F)&&E(F,B),r.isRemarkCompiler(Q)&&N(Q,B)}function E(B,F){let Q=B.prototype,J=Q.inlineMethods;ne.locator=ae,Q.inlineTokenizers.math=ne,J.splice(J.indexOf("text"),0,"math");function ae(ce,fe){return ce.indexOf("$",fe)}function ne(ce,fe,ue){let de=fe.length,be=!1,Se=!1,De=0,k,tt,ze,Le,Je,ft,lt;if(fe.charCodeAt(De)===f&&(Se=!0,De++),fe.charCodeAt(De)===o){if(De++,Se)return ue?!0:ce(fe.slice(0,De))({type:"text",value:"$"});if(fe.charCodeAt(De)===o&&(be=!0,De++),ze=fe.charCodeAt(De),!(ze===a||ze===n)){for(Le=De;DeA)&&(!be||ze===o)){Je=De-1,De++,be&&De++,ft=De;break}}else tt===f&&(De++,ze=fe.charCodeAt(De+1));De++}if(ft!==void 0)return ue?!0:(lt=fe.slice(Le,Je+1),ce(fe.slice(0,ft))({type:"inlineMath",value:lt,data:{hName:"span",hProperties:{className:I.concat(be&&F.inlineMathDouble?[C]:[])},hChildren:[{type:"text",value:lt}]}}))}}}}function N(B){let F=B.prototype;F.visitors.inlineMath=Q;function Q(J){let ae="$";return(J.data&&J.data.hProperties&&J.data.hProperties.className||[]).includes(C)&&(ae="$$"),ae+J.value+ae}}}),LUa=$l((e,t)=>{var r=g2i();t.exports=C;var n=10,a=32,o=36,l=` `,A="$",f=2,I=["math","math-display"];function C(){let N=this.Parser,B=this.Compiler;r.isRemarkParser(N)&&b(N),r.isRemarkCompiler(B)&&E(B)}function b(N){let B=N.prototype,F=B.blockMethods,Q=B.interruptParagraph,J=B.interruptList,ae=B.interruptBlockquote;B.blockTokenizers.math=ne,F.splice(F.indexOf("fencedCode")+1,0,"math"),Q.splice(Q.indexOf("fencedCode")+1,0,["math"]),J.splice(J.indexOf("fencedCode")+1,0,["math"]),ae.splice(ae.indexOf("fencedCode")+1,0,["math"]);function ne(ce,fe,ue){var de=fe.length,be=0;let Se,De,k,tt,ze,Le,Je,ft,lt,Ot,Er;for(;beOt&&fe.charCodeAt(tt-1)===a;)tt--;for(;tt>Ot&&fe.charCodeAt(tt-1)===o;)lt++,tt--;for(Le<=lt&&fe.indexOf(A,Ot)===tt&&(ft=!0,Er=tt);Ot<=Er&&Ot-beOt&&fe.charCodeAt(Er-1)===a;)Er--;if((!ft||Ot!==Er)&&De.push(fe.slice(Ot,Er)),ft)break;be=k+1,k=fe.indexOf(l,be+1),k=k===-1?de:k}return De=De.join(` `),ce(fe.slice(0,k))({type:"math",value:De,data:{hName:"div",hProperties:{className:I.concat()},hChildren:[{type:"text",value:De}]}})}}}}function E(N){let B=N.prototype;B.visitors.math=F;function F(Q){return`$$ `+Q.value+` -$$`}}}),xUa=$l((e,t)=>{var r=DUa(),n=kUa();t.exports=a;function a(o){var l=o||{};n.call(this,l),r.call(this,l)}}),NNe=$l((e,t)=>{t.exports=n;var r=Object.prototype.hasOwnProperty;function n(){for(var a={},o=0;o{typeof Object.create=="function"?t.exports=function(r,n){n&&(r.super_=n,r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(r,n){if(n){r.super_=n;var a=function(){};a.prototype=n.prototype,r.prototype=new a,r.prototype.constructor=r}}}),FUa=$l((e,t)=>{"use strict";var r=NNe(),n=GUa();t.exports=a;function a(o){var l,A,f;n(C,o),n(I,C),l=C.prototype;for(A in l)f=l[A],f&&typeof f=="object"&&(l[A]="concat"in f?f.concat():r(f));return C;function I(b){return o.apply(this,b)}function C(){return this instanceof C?o.apply(this,arguments):new I(arguments)}}}),ZUa=$l((e,t)=>{"use strict";t.exports=r;function r(n,a,o){return l;function l(){var A=o||this,f=A[n];return A[n]=!a,I;function I(){A[n]=f}}}}),LUa=$l((e,t)=>{"use strict";t.exports=r;function r(n){for(var a=String(n),o=[],l=/\r?\n|\r/g;l.exec(a);)o.push(l.lastIndex);return o.push(a.length+1),{toPoint:A,toPosition:A,toOffset:f};function A(I){var C=-1;if(I>-1&&II)return{line:C+1,column:I-(o[C-1]||0)+1,offset:I}}return{}}function f(I){var C=I&&I.line,b=I&&I.column,E;return!isNaN(C)&&!isNaN(b)&&C-1 in o&&(E=(o[C-2]||0)+b-1||0),E>-1&&E{"use strict";t.exports=n;var r="\\";function n(a,o){return l;function l(A){for(var f=0,I=A.indexOf(r),C=a[o],b=[],E;I!==-1;)b.push(A.slice(f,I)),f=I+1,E=A.charAt(f),(!E||C.indexOf(E)===-1)&&b.push(r),I=A.indexOf(r,f+1);return b.push(A.slice(f)),b.join("")}}}),WUa=$l((e,t)=>{t.exports={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Acirc:"\xC2",Agrave:"\xC0",Aring:"\xC5",Atilde:"\xC3",Auml:"\xC4",COPY:"\xA9",Ccedil:"\xC7",ETH:"\xD0",Eacute:"\xC9",Ecirc:"\xCA",Egrave:"\xC8",Euml:"\xCB",GT:">",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"}}),OUa=$l((e,t)=>{t.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"}}),DNe=$l((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=48&&a<=57}}),PUa=$l((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}),lJe=$l((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=122||a>=65&&a<=90}}),MUa=$l((e,t)=>{"use strict";var r=lJe(),n=DNe();t.exports=a;function a(o){return r(o)||n(o)}}),HUa=$l((e,t)=>{t.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"}}),YUa=$l((e,t)=>{"use strict";var r=HUa();t.exports=a;var n={}.hasOwnProperty;function a(o){return n.call(r,o)?r[o]:!1}}),Qbt=$l((e,t)=>{"use strict";var r=WUa(),n=OUa(),a=DNe(),o=PUa(),l=MUa(),A=YUa();t.exports=jt;var f={}.hasOwnProperty,I=String.fromCharCode,C=Function.prototype,b={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},E=9,N=10,B=12,F=32,Q=38,J=59,ae=60,ne=61,ce=35,fe=88,ue=120,de=65533,be="named",Se="hexadecimal",De="decimal",k={};k[Se]=16,k[De]=10;var tt={};tt[be]=l,tt[De]=a,tt[Se]=o;var ze=1,Le=2,Je=3,ft=4,lt=5,Ot=6,Er=7,Sr={};Sr[ze]="Named character references must be terminated by a semicolon",Sr[Le]="Numeric character references must be terminated by a semicolon",Sr[Je]="Named character references cannot be empty",Sr[ft]="Numeric character references cannot be empty",Sr[lt]="Named character references must be known",Sr[Ot]="Numeric character references cannot be disallowed",Sr[Er]="Numeric character references cannot be outside the permissible Unicode range";function jt($t,Xt){var lr={},cr,Ar;Xt||(Xt={});for(Ar in b)cr=Xt[Ar],lr[Ar]=cr??b[Ar];return(lr.position.indent||lr.position.start)&&(lr.indent=lr.position.indent||[],lr.position=lr.position.start),Bt($t,lr)}function Bt($t,Xt){var lr=Xt.additional,cr=Xt.nonTerminated,Ar=Xt.text,qr=Xt.reference,yn=Xt.warning,ke=Xt.textContext,zt=Xt.referenceContext,Fn=Xt.warningContext,Nn=Xt.position,Hi=Xt.indent||[],Ao=$t.length,Vr=0,xi=-1,no=Nn.column||1,ga=Nn.line||1,Ya="",Gc=[],ol,Sc,Hr,Or,Ft,zr,Rn,Pr,Qi,ps,yo,bo,Qa,gc,_g,Nc,sA,ma,vu;for(typeof lr=="string"&&(lr=lr.charCodeAt(0)),Nc=li(),Pr=yn?Ei:C,Vr--,Ao++;++Vr65535&&(zr-=65536,ps+=I(zr>>>10|55296),zr=56320|zr&1023),zr=ps+I(zr))):gc!==be&&Pr(ft,ma)),zr?(Ws(),Nc=li(),Vr=vu-1,no+=vu-Qa+1,Gc.push(zr),sA=li(),sA.offset++,qr&&qr.call(zt,zr,{start:Nc,end:sA},$t.slice(Qa-1,vu)),Nc=sA):(Or=$t.slice(Qa-1,vu),Ya+=Or,no+=Or.length,Vr=vu-1)}else Ft===10&&(ga++,xi++,no=0),Ft===Ft?(Ya+=I(Ft),no++):Ws();return Gc.join("");function li(){return{line:ga,column:no,offset:Vr+(Nn.offset||0)}}function Ei(Xa,ac){var Ql=li();Ql.column+=ac,Ql.offset+=ac,yn.call(Fn,Sr[Xa],Ql,Xa)}function Ws(){Ya&&(Gc.push(Ya),Ar&&Ar.call(ke,Ya,{start:Nc,end:li()}),Ya="")}}function Dt($t){return $t>=55296&&$t<=57343||$t>1114111}function Fr($t){return $t>=1&&$t<=8||$t===11||$t>=13&&$t<=31||$t>=127&&$t<=159||$t>=64976&&$t<=65007||($t&65535)===65535||($t&65535)===65534}}),QUa=$l((e,t)=>{"use strict";var r=NNe(),n=Qbt();t.exports=a;function a(o){return A.raw=f,A;function l(C){for(var b=o.offset,E=C.line,N=[];++E&&E in b;)N.push((b[E]||0)+1);return{start:C,indent:N}}function A(C,b,E){n(C,{position:l(b),warning:I,text:E,reference:E,textContext:o,referenceContext:o})}function f(C,b,E){return n(C,r(E,{position:l(b),warning:I}))}function I(C,b,E){E!==3&&o.file.message(C,b)}}}),XUa=$l((e,t)=>{"use strict";t.exports=r;function r(l){return A;function A(f,I){var C=this,b=C.offset,E=[],N=C[l+"Methods"],B=C[l+"Tokenizers"],F=I.line,Q=I.column,J,ae,ne,ce,fe,ue;if(!f)return E;for(Le.now=Se,Le.file=C.file,de("");f;){for(J=-1,ae=N.length,fe=!1;++J{var r=ZUa(),n=LUa();t.exports=a;function a(o){var l=o||{};n.call(this,l),r.call(this,l)}}),TNe=$l((e,t)=>{t.exports=n;var r=Object.prototype.hasOwnProperty;function n(){for(var a={},o=0;o{typeof Object.create=="function"?t.exports=function(r,n){n&&(r.super_=n,r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(r,n){if(n){r.super_=n;var a=function(){};a.prototype=n.prototype,r.prototype=new a,r.prototype.constructor=r}}}),OUa=$l((e,t)=>{"use strict";var r=TNe(),n=WUa();t.exports=a;function a(o){var l,A,f;n(C,o),n(I,C),l=C.prototype;for(A in l)f=l[A],f&&typeof f=="object"&&(l[A]="concat"in f?f.concat():r(f));return C;function I(b){return o.apply(this,b)}function C(){return this instanceof C?o.apply(this,arguments):new I(arguments)}}}),PUa=$l((e,t)=>{"use strict";t.exports=r;function r(n,a,o){return l;function l(){var A=o||this,f=A[n];return A[n]=!a,I;function I(){A[n]=f}}}}),MUa=$l((e,t)=>{"use strict";t.exports=r;function r(n){for(var a=String(n),o=[],l=/\r?\n|\r/g;l.exec(a);)o.push(l.lastIndex);return o.push(a.length+1),{toPoint:A,toPosition:A,toOffset:f};function A(I){var C=-1;if(I>-1&&II)return{line:C+1,column:I-(o[C-1]||0)+1,offset:I}}return{}}function f(I){var C=I&&I.line,b=I&&I.column,E;return!isNaN(C)&&!isNaN(b)&&C-1 in o&&(E=(o[C-2]||0)+b-1||0),E>-1&&E{"use strict";t.exports=n;var r="\\";function n(a,o){return l;function l(A){for(var f=0,I=A.indexOf(r),C=a[o],b=[],E;I!==-1;)b.push(A.slice(f,I)),f=I+1,E=A.charAt(f),(!E||C.indexOf(E)===-1)&&b.push(r),I=A.indexOf(r,f+1);return b.push(A.slice(f)),b.join("")}}}),YUa=$l((e,t)=>{t.exports={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Acirc:"\xC2",Agrave:"\xC0",Aring:"\xC5",Atilde:"\xC3",Auml:"\xC4",COPY:"\xA9",Ccedil:"\xC7",ETH:"\xD0",Eacute:"\xC9",Ecirc:"\xCA",Egrave:"\xC8",Euml:"\xCB",GT:">",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"}}),QUa=$l((e,t)=>{t.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"}}),RNe=$l((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=48&&a<=57}}),XUa=$l((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}),gJe=$l((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=122||a>=65&&a<=90}}),JUa=$l((e,t)=>{"use strict";var r=gJe(),n=RNe();t.exports=a;function a(o){return r(o)||n(o)}}),UUa=$l((e,t)=>{t.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"}}),KUa=$l((e,t)=>{"use strict";var r=UUa();t.exports=a;var n={}.hasOwnProperty;function a(o){return n.call(r,o)?r[o]:!1}}),Hbt=$l((e,t)=>{"use strict";var r=YUa(),n=QUa(),a=RNe(),o=XUa(),l=JUa(),A=KUa();t.exports=jt;var f={}.hasOwnProperty,I=String.fromCharCode,C=Function.prototype,b={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},E=9,N=10,B=12,F=32,Q=38,J=59,ae=60,ne=61,ce=35,fe=88,ue=120,de=65533,be="named",Se="hexadecimal",De="decimal",k={};k[Se]=16,k[De]=10;var tt={};tt[be]=l,tt[De]=a,tt[Se]=o;var ze=1,Le=2,Je=3,ft=4,lt=5,Ot=6,Er=7,Sr={};Sr[ze]="Named character references must be terminated by a semicolon",Sr[Le]="Numeric character references must be terminated by a semicolon",Sr[Je]="Named character references cannot be empty",Sr[ft]="Numeric character references cannot be empty",Sr[lt]="Named character references must be known",Sr[Ot]="Numeric character references cannot be disallowed",Sr[Er]="Numeric character references cannot be outside the permissible Unicode range";function jt($t,Xt){var lr={},cr,Ar;Xt||(Xt={});for(Ar in b)cr=Xt[Ar],lr[Ar]=cr??b[Ar];return(lr.position.indent||lr.position.start)&&(lr.indent=lr.position.indent||[],lr.position=lr.position.start),Bt($t,lr)}function Bt($t,Xt){var lr=Xt.additional,cr=Xt.nonTerminated,Ar=Xt.text,qr=Xt.reference,_n=Xt.warning,ke=Xt.textContext,zt=Xt.referenceContext,Fn=Xt.warningContext,Nn=Xt.position,Hi=Xt.indent||[],Ao=$t.length,Vr=0,xi=-1,no=Nn.column||1,ga=Nn.line||1,Ya="",Gc=[],al,Sc,Hr,Or,Ft,zr,Rn,Pr,Qi,ps,_o,yo,Qa,gc,_g,Nc,oA,ma,vu;for(typeof lr=="string"&&(lr=lr.charCodeAt(0)),Nc=li(),Pr=_n?Ei:C,Vr--,Ao++;++Vr65535&&(zr-=65536,ps+=I(zr>>>10|55296),zr=56320|zr&1023),zr=ps+I(zr))):gc!==be&&Pr(ft,ma)),zr?(Ws(),Nc=li(),Vr=vu-1,no+=vu-Qa+1,Gc.push(zr),oA=li(),oA.offset++,qr&&qr.call(zt,zr,{start:Nc,end:oA},$t.slice(Qa-1,vu)),Nc=oA):(Or=$t.slice(Qa-1,vu),Ya+=Or,no+=Or.length,Vr=vu-1)}else Ft===10&&(ga++,xi++,no=0),Ft===Ft?(Ya+=I(Ft),no++):Ws();return Gc.join("");function li(){return{line:ga,column:no,offset:Vr+(Nn.offset||0)}}function Ei(Xa,ac){var Ql=li();Ql.column+=ac,Ql.offset+=ac,_n.call(Fn,Sr[Xa],Ql,Xa)}function Ws(){Ya&&(Gc.push(Ya),Ar&&Ar.call(ke,Ya,{start:Nc,end:li()}),Ya="")}}function Nt($t){return $t>=55296&&$t<=57343||$t>1114111}function Fr($t){return $t>=1&&$t<=8||$t===11||$t>=13&&$t<=31||$t>=127&&$t<=159||$t>=64976&&$t<=65007||($t&65535)===65535||($t&65535)===65534}}),jUa=$l((e,t)=>{"use strict";var r=TNe(),n=Hbt();t.exports=a;function a(o){return A.raw=f,A;function l(C){for(var b=o.offset,E=C.line,N=[];++E&&E in b;)N.push((b[E]||0)+1);return{start:C,indent:N}}function A(C,b,E){n(C,{position:l(b),warning:I,text:E,reference:E,textContext:o,referenceContext:o})}function f(C,b,E){return n(C,r(E,{position:l(b),warning:I}))}function I(C,b,E){E!==3&&o.file.message(C,b)}}}),zUa=$l((e,t)=>{"use strict";t.exports=r;function r(l){return A;function A(f,I){var C=this,b=C.offset,E=[],N=C[l+"Methods"],B=C[l+"Tokenizers"],F=I.line,Q=I.column,J,ae,ne,ce,fe,ue;if(!f)return E;for(Le.now=Se,Le.file=C.file,de("");f;){for(J=-1,ae=N.length,fe=!1;++J{"use strict";t.exports=o;var r=["\\","`","*","{","}","[","]","(",")","#","+","-",".","!","_",">"],n=r.concat(["~","|"]),a=n.concat([` -`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);o.default=r,o.gfm=n,o.commonmark=a;function o(l){var A=l||{};return A.commonmark?a:A.gfm?n:r}}),UUa=$l((e,t)=>{"use strict";t.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"]}),t2i=$l((e,t)=>{"use strict";t.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:UUa()}}),KUa=$l((e,t)=>{"use strict";var r=NNe(),n=JUa(),a=t2i();t.exports=o;function o(l){var A=this,f=A.options,I,C;if(l==null)l={};else if(typeof l=="object")l=r(l);else throw new Error("Invalid value `"+l+"` for setting `options`");for(I in a){if(C=l[I],C==null&&(C=f[I]),I!=="blocks"&&typeof C!="boolean"||I==="blocks"&&typeof C!="object")throw new Error("Invalid value `"+C+"` for setting `options."+I+"`");l[I]=C}return A.options=l,A.escape=n(l),A}}),jUa=$l((e,t)=>{"use strict";t.exports=r;function r(A){if(A==null)return l;if(typeof A=="string")return o(A);if(typeof A=="object")return"length"in A?a(A):n(A);if(typeof A=="function")return A;throw new Error("Expected function, string, or object as test")}function n(A){return f;function f(I){var C;for(C in A)if(I[C]!==A[C])return!1;return!0}}function a(A){for(var f=[],I=-1;++I{t.exports=r;function r(n){return n}}),qUa=$l((e,t)=>{"use strict";t.exports=A;var r=jUa(),n=zUa(),a=!0,o="skip",l=!1;A.CONTINUE=a,A.SKIP=o,A.EXIT=l;function A(I,C,b,E){var N,B;typeof C=="function"&&typeof b!="function"&&(E=b,b=C,C=null),B=r(C),N=E?-1:1,F(I,null,[])();function F(Q,J,ae){var ne=typeof Q=="object"&&Q!==null?Q:{},ce;return typeof ne.type=="string"&&(ce=typeof ne.tagName=="string"?ne.tagName:typeof ne.name=="string"?ne.name:void 0,fe.displayName="node ("+n(ne.type+(ce?"<"+ce+">":""))+")"),fe;function fe(){var ue=ae.concat(Q),de=[],be,Se;if((!C||B(Q,J,ae[ae.length-1]||null))&&(de=f(b(Q,ae)),de[0]===l))return de;if(Q.children&&de[0]!==o)for(Se=(E?Q.children.length:-1)+N;Se>-1&&Se{"use strict";t.exports=l;var r=qUa(),n=r.CONTINUE,a=r.SKIP,o=r.EXIT;l.CONTINUE=n,l.SKIP=a,l.EXIT=o;function l(A,f,I,C){typeof f=="function"&&typeof I!="function"&&(C=I,I=f,f=null),r(A,f,b,C);function b(E,N){var B=N[N.length-1],F=B?B.children.indexOf(E):null;return I(E,F,B)}}}),eKa=$l((e,t)=>{"use strict";var r=$Ua();t.exports=n;function n(l,A){return r(l,A?a:o),l}function a(l){delete l.position}function o(l){l.position=void 0}}),tKa=$l((e,t)=>{"use strict";var r=NNe(),n=eKa();t.exports=l;var a=` -`,o=/\r\n|\r/g;function l(){var A=this,f=String(A.file),I={line:1,column:1,offset:0},C=r(I),b;return f=f.replace(o,a),f.charCodeAt(0)===65279&&(f=f.slice(1),C.column++,C.offset++),b={type:"root",children:A.tokenizeBlock(f,C),position:{start:I,end:A.eof||r(I)}},A.options.position||n(b,!0),b}}),rKa=$l((e,t)=>{"use strict";var r=/^[ \t]*(\n|$)/;t.exports=n;function n(a,o,l){for(var A,f="",I=0,C=o.length;I{"use strict";var r="",n;t.exports=a;function a(o,l){if(typeof o!="string")throw new TypeError("expected a string");if(l===1)return o;if(l===2)return o+o;var A=o.length*l;if(n!==o||typeof n>"u")n=o,r="";else if(r.length>=A)return r.substr(0,A);for(;A>r.length&&l>1;)l&1&&(r+=o),l>>=1,o+=o;return r+=o,r=r.substr(0,A),r}}),r2i=$l((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\n+$/,"")}}),nKa=$l((e,t)=>{"use strict";var r=oNr(),n=r2i();t.exports=I;var a=` -`,o=" ",l=" ",A=4,f=r(l,A);function I(C,b,E){for(var N=-1,B=b.length,F="",Q="",J="",ae="",ne,ce,fe;++N{"use strict";t.exports=I;var r=` -`,n=" ",a=" ",o="~",l="`",A=3,f=4;function I(C,b,E){var N=this,B=N.options.gfm,F=b.length+1,Q=0,J="",ae,ne,ce,fe,ue,de,be,Se,De,k,tt,ze,Le;if(B){for(;Q=f)){for(be="";Q{e=t.exports=r;function r(n){return n.trim?n.trim():e.right(e.left(n))}e.left=function(n){return n.trimLeft?n.trimLeft():n.replace(/^\s\s*/,"")},e.right=function(n){if(n.trimRight)return n.trimRight();for(var a=/\s/,o=n.length;a.test(n.charAt(--o)););return n.slice(0,o+1)}}),aNr=$l((e,t)=>{"use strict";t.exports=r;function r(n,a,o,l){for(var A=n.length,f=-1,I,C;++f{"use strict";var r=kNe(),n=aNr();t.exports=f;var a=` -`,o=" ",l=" ",A=">";function f(I,C,b){for(var E=this,N=E.offset,B=E.blockTokenizers,F=E.interruptBlockquote,Q=I.now(),J=Q.line,ae=C.length,ne=[],ce=[],fe=[],ue,de=0,be,Se,De,k,tt,ze,Le,Je;de{"use strict";t.exports=A;var r=` -`,n=" ",a=" ",o="#",l=6;function A(f,I,C){for(var b=this,E=b.options.pedantic,N=I.length+1,B=-1,F=f.now(),Q="",J="",ae,ne,ce;++Bl)&&!(!ce||!E&&I.charAt(B+1)===o)){for(N=I.length+1,ne="";++B{"use strict";t.exports=I;var r=" ",n=` -`,a=" ",o="*",l="-",A="_",f=3;function I(C,b,E){for(var N=-1,B=b.length+1,F="",Q,J,ae,ne;++N=f&&(!Q||Q===n)?(F+=ne,E?!0:C(F)({type:"thematicBreak"})):void 0}}),n2i=$l((e,t)=>{"use strict";t.exports=l;var r=" ",n=" ",a=1,o=4;function l(A){for(var f=0,I=0,C=A.charAt(f),b={},E,N=0;C===r||C===n;){for(E=C===r?o:a,I+=E,E>1&&(I=Math.floor(I/E)*E);N{"use strict";var r=kNe(),n=oNr(),a=n2i();t.exports=f;var o=` -`,l=" ",A="!";function f(I,C){var b=I.split(o),E=b.length+1,N=1/0,B=[],F,Q,J;for(b.unshift(n(l,C)+A);E--;)if(Q=a(b[E]),B[E]=Q.stops,r(b[E]).length!==0)if(Q.indent)Q.indent>0&&Q.indent{"use strict";var r=kNe(),n=oNr(),a=DNe(),o=n2i(),l=cKa(),A=aNr();t.exports=be;var f="*",I="_",C="+",b="-",E=".",N=" ",B=` -`,F=" ",Q=")",J="x",ae=4,ne=/\n\n(?!\s*$)/,ce=/^\[([ X\tx])][ \t]/,fe=/^([ \t]*)([*+-]|\d+[.)])( {1,4}(?! )| |\t|$|(?=\n))([^\n]*)/,ue=/^([ \t]*)([*+-]|\d+[.)])([ \t]+)/,de=/^( {1,4}|\t)?/gm;function be(tt,ze,Le){for(var Je=this,ft=Je.options.commonmark,lt=Je.options.pedantic,Ot=Je.blockTokenizers,Er=Je.interruptList,Sr=0,jt=ze.length,Bt=null,Dt,Fr,$t,Xt,lr,cr,Ar,qr,yn,ke,zt,Fn,Nn,Hi,Ao,Vr,xi,no,ga,Ya=!1,Gc,ol,Sc,Hr;Sr=xi.indent&&(Hr=!0),Xt=ze.charAt(Sr),yn=null,!Hr){if(Xt===f||Xt===C||Xt===b)yn=Xt,Sr++,Dt++;else{for(Fr="";Sr=xi.indent||Dt>ae),qr=!1,Sr=Ar;if(zt=ze.slice(Ar,cr),ke=Ar===Sr?zt:ze.slice(Sr,cr),(yn===f||yn===I||yn===b)&&Ot.thematicBreak.call(Je,tt,zt,!0))break;if(Fn=Nn,Nn=!qr&&!r(ke).length,Hr&&xi)xi.value=xi.value.concat(Vr,zt),Ao=Ao.concat(Vr,zt),Vr=[];else if(qr)Vr.length!==0&&(Ya=!0,xi.value.push(""),xi.trail=Vr.concat()),xi={value:[zt],indent:Dt,trail:[]},Hi.push(xi),Ao=Ao.concat(Vr,zt),Vr=[];else if(Nn){if(Fn&&!ft)break;Vr.push(zt)}else{if(Fn||A(Er,Ot,Je,[tt,zt,!0]))break;xi.value=xi.value.concat(Vr,zt),Ao=Ao.concat(Vr,zt),Vr=[]}Sr=cr+1}for(Gc=tt(Ao.join(B)).reset({type:"list",ordered:$t,start:Bt,spread:Ya,children:[]}),no=Je.enterList(),ga=Je.enterBlock(),Sr=-1,jt=Hi.length;++Sr{"use strict";t.exports=C;var r=` -`,n=" ",a=" ",o="=",l="-",A=3,f=1,I=2;function C(b,E,N){for(var B=this,F=b.now(),Q=E.length,J=-1,ae="",ne,ce,fe,ue,de;++J=A){J--;break}ae+=fe}for(ne="",ce="";++J{"use strict";var t="[a-zA-Z_:][a-zA-Z0-9:._-]*",r="[^\"'=<>`\\u0000-\\u0020]+",n="'[^']*'",a='"[^"]*"',o="(?:"+r+"|"+n+"|"+a+")",l="(?:\\s+"+t+"(?:\\s*=\\s*"+o+")?)",A="<[A-Za-z][A-Za-z0-9\\-]*"+l+"*\\s*\\/?>",f="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",I="|",C="<[?].*?[?]>",b="]*>",E="";e.openCloseTag=new RegExp("^(?:"+A+"|"+f+")"),e.tag=new RegExp("^(?:"+A+"|"+f+"|"+I+"|"+C+"|"+b+"|"+E+")")}),gKa=$l((e,t)=>{"use strict";var r=i2i().openCloseTag;t.exports=ne;var n=" ",a=" ",o=` -`,l="<",A=/^<(script|pre|style)(?=(\s|>|$))/i,f=/<\/(script|pre|style)>/i,I=/^/,b=/^<\?/,E=/\?>/,N=/^/,F=/^/,J=/^$/,ae=new RegExp(r.source+"\\s*$");function ne(ce,fe,ue){for(var de=this,be=de.options.blocks.join("|"),Se=new RegExp("^|$))","i"),De=fe.length,k=0,tt,ze,Le,Je,ft,lt,Ot,Er=[[A,f,!0],[I,C,!0],[b,E,!0],[N,B,!0],[F,Q,!0],[Se,J,!0],[ae,J,!1]];k{"use strict";t.exports=a;var r=String.fromCharCode,n=/\s/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),s2i=$l((e,t)=>{"use strict";var r=sNr();t.exports=n;function n(a){return r(a).toLowerCase()}}),AKa=$l((e,t)=>{"use strict";var r=Fee(),n=s2i();t.exports=J;var a='"',o="'",l="\\",A=` -`,f=" ",I=" ",C="[",b="]",E="(",N=")",B=":",F="<",Q=">";function J(ce,fe,ue){for(var de=this,be=de.options.commonmark,Se=0,De=fe.length,k="",tt,ze,Le,Je,ft,lt,Ot,Er;Se{"use strict";var r=Fee();t.exports=F;var n=" ",a=` -`,o=" ",l="-",A=":",f="\\",I="|",C=1,b=2,E="left",N="center",B="right";function F(Q,J,ae){var ne=this,ce,fe,ue,de,be,Se,De,k,tt,ze,Le,Je,ft,lt,Ot,Er,Sr,jt,Bt,Dt,Fr,$t;if(ne.options.gfm){for(ce=0,Er=0,Se=J.length+1,De=[];ceDt){if(Er1&&(tt?(de+=k.slice(0,-1),k=k.charAt(k.length-1)):(de+=k,k="")),lt=Q.now(),Q(de)({type:"tableCell",children:ne.tokenizeInline(Je,lt)},be)),Q(k+tt),k="",Je=""):(k&&(Je+=k,k=""),Je+=tt,tt===f&&ce!==Se-2&&(Je+=Sr.charAt(ce+1),ce++)),ft=!1,ce++}Ot||Q(a+fe)}return Bt}}}}),pKa=$l((e,t)=>{"use strict";var r=kNe(),n=r2i(),a=aNr();t.exports=I;var o=" ",l=` -`,A=" ",f=4;function I(C,b,E){for(var N=this,B=N.options,F=B.commonmark,Q=N.blockTokenizers,J=N.interruptParagraph,ae=b.indexOf(l),ne=b.length,ce,fe,ue,de,be;ae=f&&ue!==l){ae=b.indexOf(l,ae+1);continue}}if(fe=b.slice(ae+1),a(J,Q,N,[C,fe,!0]))break;if(ce=ae,ae=b.indexOf(l,ae+1),ae!==-1&&r(b.slice(ce,ae))===""){ae=ce;break}}return fe=b.slice(0,ae),E?!0:(be=C.now(),fe=n(fe),C(fe)({type:"paragraph",children:N.tokenizeInline(fe,be)}))}}),fKa=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("\\",a)}}),IKa=$l((e,t)=>{"use strict";var r=fKa();t.exports=o,o.locator=r;var n=` -`,a="\\";function o(l,A,f){var I=this,C,b;if(A.charAt(0)===a&&(C=A.charAt(1),I.escape.indexOf(C)!==-1))return f?!0:(C===n?b={type:"break"}:b={type:"text",value:C},l(a+C)(b))}}),o2i=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("<",a)}}),hKa=$l((e,t)=>{"use strict";var r=Fee(),n=Qbt(),a=o2i();t.exports=b,b.locator=a,b.notInLink=!0;var o="<",l=">",A="@",f="/",I="mailto:",C=I.length;function b(E,N,B){var F=this,Q="",J=N.length,ae=0,ne="",ce=!1,fe="",ue,de,be,Se,De;if(N.charAt(0)===o){for(ae++,Q=o;ae{"use strict";t.exports=r;function r(n,a){var o=String(n),l=0,A;if(typeof a!="string")throw new Error("Expected character");for(A=o.indexOf(a);A!==-1;)l++,A=o.indexOf(a,A+a.length);return l}}),CKa=$l((e,t)=>{"use strict";t.exports=n;var r=["www.","http://","https://"];function n(a,o){var l=-1,A,f,I;if(!this.options.gfm)return l;for(f=r.length,A=-1;++A{"use strict";var r=mKa(),n=Qbt(),a=DNe(),o=lJe(),l=Fee(),A=CKa();t.exports=de,de.locator=A,de.notInLink=!0;var f=33,I=38,C=41,b=42,E=44,N=45,B=46,F=58,Q=59,J=63,ae=60,ne=95,ce=126,fe="(",ue=")";function de(be,Se,De){var k=this,tt=k.options.gfm,ze=k.inlineTokenizers,Le=Se.length,Je=-1,ft=!1,lt,Ot,Er,Sr,jt,Bt,Dt,Fr,$t,Xt,lr,cr,Ar,qr;if(tt){if(Se.slice(0,4)==="www.")ft=!0,Sr=4;else if(Se.slice(0,7).toLowerCase()==="http://")Sr=7;else if(Se.slice(0,8).toLowerCase()==="https://")Sr=8;else return;for(Je=Sr-1,Er=Sr,lt=[];Sr$t;)Sr=jt+Bt.lastIndexOf(ue),Bt=Se.slice(jt,Sr),Xt--;if(Se.charCodeAt(Sr-1)===Q&&(Sr--,o(Se.charCodeAt(Sr-1)))){for(Fr=Sr-2;o(Se.charCodeAt(Fr));)Fr--;Se.charCodeAt(Fr)===I&&(Sr=Fr)}return lr=Se.slice(0,Sr),Ar=n(lr,{nonTerminated:!1}),ft&&(Ar="http://"+Ar),qr=k.enterLink(),k.inlineTokenizers={text:ze.text},cr=k.tokenizeInline(lr,be.now()),k.inlineTokenizers=ze,qr(),be(lr)({type:"link",title:null,url:Ar,children:cr})}}}}),yKa=$l((e,t)=>{"use strict";var r=DNe(),n=lJe(),a=43,o=45,l=46,A=95;t.exports=f;function f(C,b){var E=this,N,B;if(!this.options.gfm||(N=C.indexOf("@",b),N===-1))return-1;if(B=N,B===b||!I(C.charCodeAt(B-1)))return f.call(E,C,N+1);for(;B>b&&I(C.charCodeAt(B-1));)B--;return B}function I(C){return r(C)||n(C)||C===a||C===o||C===l||C===A}}),bKa=$l((e,t)=>{"use strict";var r=Qbt(),n=DNe(),a=lJe(),o=yKa();t.exports=b,b.locator=o,b.notInLink=!0;var l=43,A=45,f=46,I=64,C=95;function b(E,N,B){var F=this,Q=F.options.gfm,J=F.inlineTokenizers,ae=0,ne=N.length,ce=-1,fe,ue,de,be;if(Q){for(fe=N.charCodeAt(ae);n(fe)||a(fe)||fe===l||fe===A||fe===f||fe===C;)fe=N.charCodeAt(++ae);if(ae!==0&&fe===I){for(ae++;ae{"use strict";var r=lJe(),n=o2i(),a=i2i().tag;t.exports=b,b.locator=n;var o="<",l="?",A="!",f="/",I=/^/i;function b(E,N,B){var F=this,Q=N.length,J,ae;if(!(N.charAt(0)!==o||Q<3)&&(J=N.charAt(1),!(!r(J)&&J!==l&&J!==A&&J!==f)&&(ae=N.match(a),!!ae)))return B?!0:(ae=ae[0],!F.inLink&&I.test(ae)?F.inLink=!0:F.inLink&&C.test(ae)&&(F.inLink=!1),E(ae)({type:"html",value:ae}))}}),a2i=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("[",a),l=n.indexOf("![",a);return l===-1||o{"use strict";var r=Fee(),n=a2i();t.exports=Q,Q.locator=n;var a=` -`,o="!",l='"',A="'",f="(",I=")",C="<",b=">",E="[",N="\\",B="]",F="`";function Q(J,ae,ne){var ce=this,fe="",ue=0,de=ae.charAt(0),be=ce.options.pedantic,Se=ce.options.commonmark,De=ce.options.gfm,k,tt,ze,Le,Je,ft,lt,Ot,Er,Sr,jt,Bt,Dt,Fr,$t,Xt,lr,cr;if(de===o&&(Ot=!0,fe=de,de=ae.charAt(++ue)),de===E&&!(!Ot&&ce.inLink)){for(fe+=de,Fr="",ue++,jt=ae.length,Xt=J.now(),Dt=0,Xt.column+=ue,Xt.offset+=ue;ue=ze&&(ze=0):ze=tt}else if(de===N)ue++,ft+=ae.charAt(ue);else if((!ze||De)&&de===E)Dt++;else if((!ze||De)&&de===B)if(Dt)Dt--;else{if(ae.charAt(ue+1)!==f)return;ft+=f,k=!0,ue++;break}Fr+=ft,ft="",ue++}if(k){for(Er=Fr,fe+=Fr+ft,ue++;ue{"use strict";var r=Fee(),n=a2i(),a=s2i();t.exports=B,B.locator=n;var o="link",l="image",A="shortcut",f="collapsed",I="full",C="!",b="[",E="\\",N="]";function B(F,Q,J){var ae=this,ne=ae.options.commonmark,ce=Q.charAt(0),fe=0,ue=Q.length,de="",be="",Se=o,De=A,k,tt,ze,Le,Je,ft,lt,Ot;if(ce===C&&(Se=l,be=ce,ce=Q.charAt(++fe)),ce===b){for(fe++,be+=ce,ft="",Ot=0;fe{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("**",a),l=n.indexOf("__",a);return l===-1?o:o===-1||l{"use strict";var r=kNe(),n=Fee(),a=BKa();t.exports=f,f.locator=a;var o="\\",l="*",A="_";function f(I,C,b){var E=this,N=0,B=C.charAt(N),F,Q,J,ae,ne,ce,fe;if(!(B!==l&&B!==A||C.charAt(++N)!==B)&&(Q=E.options.pedantic,J=B,ne=J+J,ce=C.length,N++,ae="",B="",!(Q&&n(C.charAt(N)))))for(;N{"use strict";t.exports=a;var r=String.fromCharCode,n=/\w/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),RKa=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("*",a),l=n.indexOf("_",a);return l===-1?o:o===-1||l{"use strict";var r=kNe(),n=TKa(),a=Fee(),o=RKa();t.exports=I,I.locator=o;var l="*",A="_",f="\\";function I(C,b,E){var N=this,B=0,F=b.charAt(B),Q,J,ae,ne,ce,fe,ue;if(!(F!==l&&F!==A)&&(J=N.options.pedantic,ce=F,ae=F,fe=b.length,B++,ne="",F="",!(J&&a(b.charAt(B)))))for(;B{"use strict";t.exports=r;function r(n,a){return n.indexOf("~~",a)}}),kKa=$l((e,t)=>{"use strict";var r=Fee(),n=DKa();t.exports=l,l.locator=n;var a="~",o="~~";function l(A,f,I){var C=this,b="",E="",N="",B="",F,Q,J;if(!(!C.options.gfm||f.charAt(0)!==a||f.charAt(1)!==a||r(f.charAt(2))))for(F=1,Q=f.length,J=A.now(),J.column+=2,J.offset+=2;++F{"use strict";t.exports=r;function r(n,a){return n.indexOf("`",a)}}),GKa=$l((e,t)=>{"use strict";var r=xKa();t.exports=l,l.locator=r;var n=10,a=32,o=96;function l(A,f,I){for(var C=f.length,b=0,E,N,B,F,Q,J;b2&&(F===a||F===n)&&(Q===a||Q===n)){for(b++,C--;b{"use strict";t.exports=r;function r(n,a){for(var o=n.indexOf(` -`,a);o>a&&n.charAt(o-1)===" ";)o--;return o}}),ZKa=$l((e,t)=>{"use strict";var r=FKa();t.exports=l,l.locator=r;var n=" ",a=` -`,o=2;function l(A,f,I){for(var C=f.length,b=-1,E="",N;++b{"use strict";t.exports=r;function r(n,a,o){var l=this,A,f,I,C,b,E,N,B,F,Q;if(o)return!0;for(A=l.inlineMethods,C=A.length,f=l.inlineTokenizers,I=-1,F=a.length;++I{"use strict";var r=NNe(),n=ZUa(),a=LUa(),o=VUa(),l=QUa(),A=XUa();t.exports=f;function f(b,E){this.file=E,this.offset={},this.options=r(this.options),this.setOptions({}),this.inList=!1,this.inBlock=!1,this.inLink=!1,this.atStart=!0,this.toOffset=a(E).toOffset,this.unescape=o(this,"escape"),this.decode=l(this)}var I=f.prototype;I.setOptions=KUa(),I.parse=tKa(),I.options=t2i(),I.exitStart=n("atStart",!0),I.enterList=n("inList",!1),I.enterLink=n("inLink",!1),I.enterBlock=n("inBlock",!1),I.interruptParagraph=[["thematicBreak"],["list"],["atxHeading"],["fencedCode"],["blockquote"],["html"],["setextHeading",{commonmark:!1}],["definition",{commonmark:!1}]],I.interruptList=[["atxHeading",{pedantic:!1}],["fencedCode",{pedantic:!1}],["thematicBreak",{pedantic:!1}],["definition",{commonmark:!1}]],I.interruptBlockquote=[["indentedCode",{commonmark:!0}],["fencedCode",{commonmark:!0}],["atxHeading",{commonmark:!0}],["setextHeading",{commonmark:!0}],["thematicBreak",{commonmark:!0}],["html",{commonmark:!0}],["list",{commonmark:!0}],["definition",{commonmark:!1}]],I.blockTokenizers={blankLine:rKa(),indentedCode:nKa(),fencedCode:iKa(),blockquote:sKa(),atxHeading:oKa(),thematicBreak:aKa(),list:lKa(),setextHeading:uKa(),html:gKa(),definition:AKa(),table:dKa(),paragraph:pKa()},I.inlineTokenizers={escape:IKa(),autoLink:hKa(),url:_Ka(),email:bKa(),html:EKa(),link:SKa(),reference:vKa(),strong:wKa(),emphasis:NKa(),deletion:kKa(),code:GKa(),break:ZKa(),text:LKa()},I.blockMethods=C(I.blockTokenizers),I.inlineMethods=C(I.inlineTokenizers),I.tokenizeBlock=A("block"),I.tokenizeInline=A("inline"),I.tokenizeFactory=A;function C(b){var E=[],N;for(N in b)E.push(N);return E}}),WKa=$l((e,t)=>{"use strict";var r=FUa(),n=NNe(),a=VKa();t.exports=o,o.Parser=a;function o(l){var A=this.data("settings"),f=r(a);f.prototype.options=n(f.prototype.options,A,l),this.Parser=f}}),OKa=$l((e,t)=>{"use strict";t.exports=r;function r(n){if(n)throw n}}),c2i=$l((e,t)=>{t.exports=function(r){return r!=null&&r.constructor!=null&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}}),PKa=$l((e,t)=>{"use strict";var r=Object.prototype.hasOwnProperty,n=Object.prototype.toString,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,l=function(C){return typeof Array.isArray=="function"?Array.isArray(C):n.call(C)==="[object Array]"},A=function(C){if(!C||n.call(C)!=="[object Object]")return!1;var b=r.call(C,"constructor"),E=C.constructor&&C.constructor.prototype&&r.call(C.constructor.prototype,"isPrototypeOf");if(C.constructor&&!b&&!E)return!1;var N;for(N in C);return typeof N>"u"||r.call(C,N)},f=function(C,b){a&&b.name==="__proto__"?a(C,b.name,{enumerable:!0,configurable:!0,value:b.newValue,writable:!0}):C[b.name]=b.newValue},I=function(C,b){if(b==="__proto__")if(r.call(C,b)){if(o)return o(C,b).value}else return;return C[b]};t.exports=function C(){var b,E,N,B,F,Q,J=arguments[0],ae=1,ne=arguments.length,ce=!1;for(typeof J=="boolean"&&(ce=J,J=arguments[1]||{},ae=2),(J==null||typeof J!="object"&&typeof J!="function")&&(J={});ae{"use strict";t.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let n=Object.getPrototypeOf(r);return n===null||n===Object.prototype}}),HKa=$l((e,t)=>{"use strict";var r=[].slice;t.exports=n;function n(a,o){var l;return A;function A(){var C=r.call(arguments,0),b=a.length>C.length,E;b&&C.push(f);try{E=a.apply(null,C)}catch(N){if(b&&l)throw N;return f(N)}b||(E&&typeof E.then=="function"?E.then(I,f):E instanceof Error?f(E):I(E))}function f(){l||(l=!0,o.apply(null,arguments))}function I(C){f(null,C)}}}),YKa=$l((e,t)=>{"use strict";var r=HKa();t.exports=a,a.wrap=r;var n=[].slice;function a(){var o=[],l={};return l.run=A,l.use=f,l;function A(){var I=-1,C=n.call(arguments,0,-1),b=arguments[arguments.length-1];if(typeof b!="function")throw new Error("Expected function as last argument, not "+b);E.apply(null,[null].concat(C));function E(N){var B=o[++I],F=n.call(arguments,0),Q=F.slice(1),J=C.length,ae=-1;if(N){b(N);return}for(;++ae{"use strict";var r={}.hasOwnProperty;t.exports=n;function n(A){return!A||typeof A!="object"?"":r.call(A,"position")||r.call(A,"type")?o(A.position):r.call(A,"start")||r.call(A,"end")?o(A):r.call(A,"line")||r.call(A,"column")?a(A):""}function a(A){return(!A||typeof A!="object")&&(A={}),l(A.line)+":"+l(A.column)}function o(A){return(!A||typeof A!="object")&&(A={}),a(A.start)+"-"+a(A.end)}function l(A){return A&&typeof A=="number"?A:1}}),XKa=$l((e,t)=>{"use strict";var r=QKa();t.exports=o;function n(){}n.prototype=Error.prototype,o.prototype=new n;var a=o.prototype;a.file="",a.name="",a.reason="",a.message="",a.stack="",a.fatal=null,a.column=null,a.line=null;function o(A,f,I){var C,b,E;typeof f=="string"&&(I=f,f=null),C=l(I),b=r(f)||"1:1",E={start:{line:null,column:null},end:{line:null,column:null}},f&&f.position&&(f=f.position),f&&(f.start?(E=f,f=f.start):E.start=f),A.stack&&(this.stack=A.stack,A=A.message),this.message=A,this.name=b,this.reason=A,this.line=f?f.line:null,this.column=f?f.column:null,this.location=E,this.source=C[0],this.ruleId=C[1]}function l(A){var f=[null,null],I;return typeof A=="string"&&(I=A.indexOf(":"),I===-1?f[1]=A:(f[0]=A.slice(0,I),f[1]=A.slice(I+1))),f}}),JKa=$l(e=>{"use strict";e.basename=t,e.dirname=r,e.extname=n,e.join=a,e.sep="/";function t(f,I){var C=0,b=-1,E,N,B,F;if(I!==void 0&&typeof I!="string")throw new TypeError('"ext" argument must be a string');if(A(f),E=f.length,I===void 0||!I.length||I.length>f.length){for(;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else b<0&&(B=!0,b=E+1);return b<0?"":f.slice(C,b)}if(I===f)return"";for(N=-1,F=I.length-1;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else N<0&&(B=!0,N=E+1),F>-1&&(f.charCodeAt(E)===I.charCodeAt(F--)?F<0&&(b=E):(F=-1,b=N));return C===b?b=N:b<0&&(b=f.length),f.slice(C,b)}function r(f){var I,C,b;if(A(f),!f.length)return".";for(I=-1,b=f.length;--b;)if(f.charCodeAt(b)===47){if(C){I=b;break}}else C||(C=!0);return I<0?f.charCodeAt(0)===47?"/":".":I===1&&f.charCodeAt(0)===47?"//":f.slice(0,I)}function n(f){var I=-1,C=0,b=-1,E=0,N,B,F;for(A(f),F=f.length;F--;){if(B=f.charCodeAt(F),B===47){if(N){C=F+1;break}continue}b<0&&(N=!0,b=F+1),B===46?I<0?I=F:E!==1&&(E=1):I>-1&&(E=-1)}return I<0||b<0||E===0||E===1&&I===b-1&&I===C+1?"":f.slice(I,b)}function a(){for(var f=-1,I;++f2){if(Q=C.lastIndexOf("/"),Q!==C.length-1){Q<0?(C="",b=0):(C=C.slice(0,Q),b=C.length-1-C.lastIndexOf("/")),E=B,N=0;continue}}else if(C.length){C="",b=0,E=B,N=0;continue}}I&&(C=C.length?C+"/..":"..",b=2)}else C.length?C+="/"+f.slice(E+1,B):C=f.slice(E+1,B),b=B-E-1;E=B,N=0}else F===46&&N>-1?N++:N=-1}return C}function A(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}}),UKa=$l(e=>{"use strict";e.cwd=t;function t(){return"/"}}),KKa=$l((e,t)=>{"use strict";var r=JKa(),n=UKa(),a=c2i();t.exports=A;var o={}.hasOwnProperty,l=["history","path","basename","stem","extname","dirname"];A.prototype.toString=ae,Object.defineProperty(A.prototype,"path",{get:f,set:I}),Object.defineProperty(A.prototype,"dirname",{get:C,set:b}),Object.defineProperty(A.prototype,"basename",{get:E,set:N}),Object.defineProperty(A.prototype,"extname",{get:B,set:F}),Object.defineProperty(A.prototype,"stem",{get:Q,set:J});function A(ue){var de,be;if(!ue)ue={};else if(typeof ue=="string"||a(ue))ue={contents:ue};else if("message"in ue&&"messages"in ue)return ue;if(!(this instanceof A))return new A(ue);for(this.data={},this.messages=[],this.history=[],this.cwd=n.cwd(),be=-1;++be-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(ue||""))}function Q(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function J(ue){ce(ue,"stem"),ne(ue,"stem"),this.path=r.join(this.dirname||"",ue+(this.extname||""))}function ae(ue){return(this.contents||"").toString(ue)}function ne(ue,de){if(ue&&ue.indexOf(r.sep)>-1)throw new Error("`"+de+"` cannot be a path: did not expect `"+r.sep+"`")}function ce(ue,de){if(!ue)throw new Error("`"+de+"` cannot be empty")}function fe(ue,de){if(!ue)throw new Error("Setting `"+de+"` requires `path` to be set too")}}),jKa=$l((e,t)=>{"use strict";var r=XKa(),n=KKa();t.exports=n,n.prototype.message=a,n.prototype.info=l,n.prototype.fail=o;function a(A,f,I){var C=new r(A,f,I);return this.path&&(C.name=this.path+":"+C.name,C.file=this.path),C.fatal=!1,this.messages.push(C),C}function o(){var A=this.message.apply(this,arguments);throw A.fatal=!0,A}function l(){var A=this.message.apply(this,arguments);return A.fatal=null,A}}),zKa=$l((e,t)=>{"use strict";t.exports=jKa()}),qKa=$l((e,t)=>{"use strict";var r=OKa(),n=c2i(),a=PKa(),o=MKa(),l=YKa(),A=zKa();t.exports=B().freeze();var f=[].slice,I={}.hasOwnProperty,C=l().use(b).use(E).use(N);function b(ue,de){de.tree=ue.parse(de.file)}function E(ue,de,be){ue.run(de.tree,de.file,Se);function Se(De,k,tt){De?be(De):(de.tree=k,de.file=tt,be())}}function N(ue,de){var be=ue.stringify(de.tree,de.file);be==null||(typeof be=="string"||n(be)?("value"in de.file&&(de.file.value=be),de.file.contents=be):de.file.result=be)}function B(){var ue=[],de=l(),be={},Se=-1,De;return k.data=ze,k.freeze=tt,k.attachers=ue,k.use=Le,k.parse=ft,k.stringify=Er,k.run=lt,k.runSync=Ot,k.process=Sr,k.processSync=jt,k;function k(){for(var Bt=B(),Dt=-1;++DtS2i,options:()=>v2i,parsers:()=>pNr,printers:()=>D2i});var $Ka=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},ZG=$Ka,e8a=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},p4=e8a,t8a=RNe(sNr(),1);function Xbt(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var Qme="string",wce="array",Jbt="cursor",xNe="indent",GNe="align",uJe="trim",Tce="group",Xme="fill",Bce="if-break",gJe="indent-if-break",AJe="line-suffix",dJe="line-suffix-boundary",Zee="line",pJe="label",FNe="break-parent",u2i=new Set([Jbt,xNe,GNe,uJe,Tce,Xme,Bce,gJe,AJe,dJe,Zee,pJe,FNe]);function r8a(e){if(typeof e=="string")return Qme;if(Array.isArray(e))return wce;if(!e)return;let{type:t}=e;if(u2i.has(t))return t}var Rce=r8a,n8a=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function i8a(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(Rce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=n8a([...u2i].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var s8a=class extends Error{name="InvalidDocError";constructor(e){super(i8a(e)),this.doc=e}},Wbt=s8a,x1i={};function o8a(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===x1i){r(a.pop());continue}r&&a.push(o,x1i);let l=Rce(o);if(!l)throw new Wbt(o);if(t?.(o)!==!1)switch(l){case wce:case Xme:{let A=l===wce?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case Bce:a.push(o.flatContents,o.breakContents);break;case Tce:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case GNe:case xNe:case gJe:case pJe:case AJe:a.push(o.contents);break;case Qme:case Jbt:case uJe:case dJe:case Zee:case FNe:break;default:throw new Wbt(o)}}}var a8a=o8a;function c8a(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Rce(o)){case wce:return t(o.map(n));case Xme:return t({...o,parts:o.parts.map(n)});case Bce:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case Tce:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case GNe:case xNe:case gJe:case pJe:case AJe:return t({...o,contents:n(o.contents)});case Qme:case Jbt:case uJe:case dJe:case Zee:case FNe:return t(o);default:throw new Wbt(o)}}}function G1i(e){if(e.length>0){let t=p4(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function l8a(e){let t=new Set,r=[];function n(o){if(o.type===FNe&&G1i(r),o.type===Tce){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===Tce&&r.pop().break&&G1i(r)}a8a(e,n,a,!0)}function vNe(e,t=$Rr){return c8a(e,r=>typeof r=="string"?p2i(t,r.split(` -`)):r)}var cNr=()=>{},wNe=cNr,g2i=cNr,u8a=cNr;function qRr(e){return wNe(e),{type:xNe,contents:e}}function Yme(e,t){return wNe(t),{type:GNe,contents:t,n:e}}function Lbt(e,t={}){return wNe(e),g2i(t.expandedStates,!0),{type:Tce,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function Obt(e){return Yme({type:"root"},e)}function lNr(e){return u8a(e),{type:Xme,parts:e}}function g8a(e,t="",r={}){return wNe(e),t!==""&&wNe(t),{type:Bce,breakContents:e,flatContents:t,groupId:r.groupId}}var Pbt={type:FNe},uNr={type:Zee,hard:!0},A8a={type:Zee,hard:!0,literal:!0},A2i={type:Zee},d2i={type:Zee,soft:!0},ZR=[uNr,Pbt],$Rr=[A8a,Pbt];function p2i(e,t){wNe(e),g2i(t);let r=[];for(let n=0;nMath.max(n,a.length/t.length),0)}var f2i=d8a;function p8a(e,t){let r=e.match(new RegExp(`(${Xbt(t)})+`,"gu"));if(r===null)return 0;let n=new Map,a=0;for(let o of r){let l=o.length/t.length;n.set(l,!0),l>a&&(a=l)}for(let o=1;oo?n:r}var h8a=I8a,m8a=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},C8a=m8a,_8a=RNe(sNr(),1);function y8a(e){return e?.type==="front-matter"}var b8a=y8a,nJe=3;function E8a(e){let t=e.slice(0,nJe);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` -`,nJe);if(r===-1)return;let n=e.slice(nJe,r).trim(),a=e.indexOf(` +`,lt+1);ft===-1?Q+=Je.length:Q=Je.length-ft,F in b&&(ft!==-1?Q+=b[F]:Q<=b[F]&&(Q=b[F]+1))}function be(){var Je=[],ft=F+1;return function(){for(var lt=F+1;ft{"use strict";t.exports=o;var r=["\\","`","*","{","}","[","]","(",")","#","+","-",".","!","_",">"],n=r.concat(["~","|"]),a=n.concat([` +`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);o.default=r,o.gfm=n,o.commonmark=a;function o(l){var A=l||{};return A.commonmark?a:A.gfm?n:r}}),$Ua=$l((e,t)=>{"use strict";t.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"]}),A2i=$l((e,t)=>{"use strict";t.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:$Ua()}}),eKa=$l((e,t)=>{"use strict";var r=TNe(),n=qUa(),a=A2i();t.exports=o;function o(l){var A=this,f=A.options,I,C;if(l==null)l={};else if(typeof l=="object")l=r(l);else throw new Error("Invalid value `"+l+"` for setting `options`");for(I in a){if(C=l[I],C==null&&(C=f[I]),I!=="blocks"&&typeof C!="boolean"||I==="blocks"&&typeof C!="object")throw new Error("Invalid value `"+C+"` for setting `options."+I+"`");l[I]=C}return A.options=l,A.escape=n(l),A}}),tKa=$l((e,t)=>{"use strict";t.exports=r;function r(A){if(A==null)return l;if(typeof A=="string")return o(A);if(typeof A=="object")return"length"in A?a(A):n(A);if(typeof A=="function")return A;throw new Error("Expected function, string, or object as test")}function n(A){return f;function f(I){var C;for(C in A)if(I[C]!==A[C])return!1;return!0}}function a(A){for(var f=[],I=-1;++I{t.exports=r;function r(n){return n}}),nKa=$l((e,t)=>{"use strict";t.exports=A;var r=tKa(),n=rKa(),a=!0,o="skip",l=!1;A.CONTINUE=a,A.SKIP=o,A.EXIT=l;function A(I,C,b,E){var N,B;typeof C=="function"&&typeof b!="function"&&(E=b,b=C,C=null),B=r(C),N=E?-1:1,F(I,null,[])();function F(Q,J,ae){var ne=typeof Q=="object"&&Q!==null?Q:{},ce;return typeof ne.type=="string"&&(ce=typeof ne.tagName=="string"?ne.tagName:typeof ne.name=="string"?ne.name:void 0,fe.displayName="node ("+n(ne.type+(ce?"<"+ce+">":""))+")"),fe;function fe(){var ue=ae.concat(Q),de=[],be,Se;if((!C||B(Q,J,ae[ae.length-1]||null))&&(de=f(b(Q,ae)),de[0]===l))return de;if(Q.children&&de[0]!==o)for(Se=(E?Q.children.length:-1)+N;Se>-1&&Se{"use strict";t.exports=l;var r=nKa(),n=r.CONTINUE,a=r.SKIP,o=r.EXIT;l.CONTINUE=n,l.SKIP=a,l.EXIT=o;function l(A,f,I,C){typeof f=="function"&&typeof I!="function"&&(C=I,I=f,f=null),r(A,f,b,C);function b(E,N){var B=N[N.length-1],F=B?B.children.indexOf(E):null;return I(E,F,B)}}}),sKa=$l((e,t)=>{"use strict";var r=iKa();t.exports=n;function n(l,A){return r(l,A?a:o),l}function a(l){delete l.position}function o(l){l.position=void 0}}),oKa=$l((e,t)=>{"use strict";var r=TNe(),n=sKa();t.exports=l;var a=` +`,o=/\r\n|\r/g;function l(){var A=this,f=String(A.file),I={line:1,column:1,offset:0},C=r(I),b;return f=f.replace(o,a),f.charCodeAt(0)===65279&&(f=f.slice(1),C.column++,C.offset++),b={type:"root",children:A.tokenizeBlock(f,C),position:{start:I,end:A.eof||r(I)}},A.options.position||n(b,!0),b}}),aKa=$l((e,t)=>{"use strict";var r=/^[ \t]*(\n|$)/;t.exports=n;function n(a,o,l){for(var A,f="",I=0,C=o.length;I{"use strict";var r="",n;t.exports=a;function a(o,l){if(typeof o!="string")throw new TypeError("expected a string");if(l===1)return o;if(l===2)return o+o;var A=o.length*l;if(n!==o||typeof n>"u")n=o,r="";else if(r.length>=A)return r.substr(0,A);for(;A>r.length&&l>1;)l&1&&(r+=o),l>>=1,o+=o;return r+=o,r=r.substr(0,A),r}}),d2i=$l((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\n+$/,"")}}),cKa=$l((e,t)=>{"use strict";var r=cNr(),n=d2i();t.exports=I;var a=` +`,o=" ",l=" ",A=4,f=r(l,A);function I(C,b,E){for(var N=-1,B=b.length,F="",Q="",J="",ae="",ne,ce,fe;++N{"use strict";t.exports=I;var r=` +`,n=" ",a=" ",o="~",l="`",A=3,f=4;function I(C,b,E){var N=this,B=N.options.gfm,F=b.length+1,Q=0,J="",ae,ne,ce,fe,ue,de,be,Se,De,k,tt,ze,Le;if(B){for(;Q=f)){for(be="";Q{e=t.exports=r;function r(n){return n.trim?n.trim():e.right(e.left(n))}e.left=function(n){return n.trimLeft?n.trimLeft():n.replace(/^\s\s*/,"")},e.right=function(n){if(n.trimRight)return n.trimRight();for(var a=/\s/,o=n.length;a.test(n.charAt(--o)););return n.slice(0,o+1)}}),lNr=$l((e,t)=>{"use strict";t.exports=r;function r(n,a,o,l){for(var A=n.length,f=-1,I,C;++f{"use strict";var r=NNe(),n=lNr();t.exports=f;var a=` +`,o=" ",l=" ",A=">";function f(I,C,b){for(var E=this,N=E.offset,B=E.blockTokenizers,F=E.interruptBlockquote,Q=I.now(),J=Q.line,ae=C.length,ne=[],ce=[],fe=[],ue,de=0,be,Se,De,k,tt,ze,Le,Je;de{"use strict";t.exports=A;var r=` +`,n=" ",a=" ",o="#",l=6;function A(f,I,C){for(var b=this,E=b.options.pedantic,N=I.length+1,B=-1,F=f.now(),Q="",J="",ae,ne,ce;++Bl)&&!(!ce||!E&&I.charAt(B+1)===o)){for(N=I.length+1,ne="";++B{"use strict";t.exports=I;var r=" ",n=` +`,a=" ",o="*",l="-",A="_",f=3;function I(C,b,E){for(var N=-1,B=b.length+1,F="",Q,J,ae,ne;++N=f&&(!Q||Q===n)?(F+=ne,E?!0:C(F)({type:"thematicBreak"})):void 0}}),p2i=$l((e,t)=>{"use strict";t.exports=l;var r=" ",n=" ",a=1,o=4;function l(A){for(var f=0,I=0,C=A.charAt(f),b={},E,N=0;C===r||C===n;){for(E=C===r?o:a,I+=E,E>1&&(I=Math.floor(I/E)*E);N{"use strict";var r=NNe(),n=cNr(),a=p2i();t.exports=f;var o=` +`,l=" ",A="!";function f(I,C){var b=I.split(o),E=b.length+1,N=1/0,B=[],F,Q,J;for(b.unshift(n(l,C)+A);E--;)if(Q=a(b[E]),B[E]=Q.stops,r(b[E]).length!==0)if(Q.indent)Q.indent>0&&Q.indent{"use strict";var r=NNe(),n=cNr(),a=RNe(),o=p2i(),l=dKa(),A=lNr();t.exports=be;var f="*",I="_",C="+",b="-",E=".",N=" ",B=` +`,F=" ",Q=")",J="x",ae=4,ne=/\n\n(?!\s*$)/,ce=/^\[([ X\tx])][ \t]/,fe=/^([ \t]*)([*+-]|\d+[.)])( {1,4}(?! )| |\t|$|(?=\n))([^\n]*)/,ue=/^([ \t]*)([*+-]|\d+[.)])([ \t]+)/,de=/^( {1,4}|\t)?/gm;function be(tt,ze,Le){for(var Je=this,ft=Je.options.commonmark,lt=Je.options.pedantic,Ot=Je.blockTokenizers,Er=Je.interruptList,Sr=0,jt=ze.length,Bt=null,Nt,Fr,$t,Xt,lr,cr,Ar,qr,_n,ke,zt,Fn,Nn,Hi,Ao,Vr,xi,no,ga,Ya=!1,Gc,al,Sc,Hr;Sr=xi.indent&&(Hr=!0),Xt=ze.charAt(Sr),_n=null,!Hr){if(Xt===f||Xt===C||Xt===b)_n=Xt,Sr++,Nt++;else{for(Fr="";Sr=xi.indent||Nt>ae),qr=!1,Sr=Ar;if(zt=ze.slice(Ar,cr),ke=Ar===Sr?zt:ze.slice(Sr,cr),(_n===f||_n===I||_n===b)&&Ot.thematicBreak.call(Je,tt,zt,!0))break;if(Fn=Nn,Nn=!qr&&!r(ke).length,Hr&&xi)xi.value=xi.value.concat(Vr,zt),Ao=Ao.concat(Vr,zt),Vr=[];else if(qr)Vr.length!==0&&(Ya=!0,xi.value.push(""),xi.trail=Vr.concat()),xi={value:[zt],indent:Nt,trail:[]},Hi.push(xi),Ao=Ao.concat(Vr,zt),Vr=[];else if(Nn){if(Fn&&!ft)break;Vr.push(zt)}else{if(Fn||A(Er,Ot,Je,[tt,zt,!0]))break;xi.value=xi.value.concat(Vr,zt),Ao=Ao.concat(Vr,zt),Vr=[]}Sr=cr+1}for(Gc=tt(Ao.join(B)).reset({type:"list",ordered:$t,start:Bt,spread:Ya,children:[]}),no=Je.enterList(),ga=Je.enterBlock(),Sr=-1,jt=Hi.length;++Sr{"use strict";t.exports=C;var r=` +`,n=" ",a=" ",o="=",l="-",A=3,f=1,I=2;function C(b,E,N){for(var B=this,F=b.now(),Q=E.length,J=-1,ae="",ne,ce,fe,ue,de;++J=A){J--;break}ae+=fe}for(ne="",ce="";++J{"use strict";var t="[a-zA-Z_:][a-zA-Z0-9:._-]*",r="[^\"'=<>`\\u0000-\\u0020]+",n="'[^']*'",a='"[^"]*"',o="(?:"+r+"|"+n+"|"+a+")",l="(?:\\s+"+t+"(?:\\s*=\\s*"+o+")?)",A="<[A-Za-z][A-Za-z0-9\\-]*"+l+"*\\s*\\/?>",f="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",I="|",C="<[?].*?[?]>",b="]*>",E="";e.openCloseTag=new RegExp("^(?:"+A+"|"+f+")"),e.tag=new RegExp("^(?:"+A+"|"+f+"|"+I+"|"+C+"|"+b+"|"+E+")")}),IKa=$l((e,t)=>{"use strict";var r=f2i().openCloseTag;t.exports=ne;var n=" ",a=" ",o=` +`,l="<",A=/^<(script|pre|style)(?=(\s|>|$))/i,f=/<\/(script|pre|style)>/i,I=/^/,b=/^<\?/,E=/\?>/,N=/^/,F=/^/,J=/^$/,ae=new RegExp(r.source+"\\s*$");function ne(ce,fe,ue){for(var de=this,be=de.options.blocks.join("|"),Se=new RegExp("^|$))","i"),De=fe.length,k=0,tt,ze,Le,Je,ft,lt,Ot,Er=[[A,f,!0],[I,C,!0],[b,E,!0],[N,B,!0],[F,Q,!0],[Se,J,!0],[ae,J,!1]];k{"use strict";t.exports=a;var r=String.fromCharCode,n=/\s/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),I2i=$l((e,t)=>{"use strict";var r=aNr();t.exports=n;function n(a){return r(a).toLowerCase()}}),hKa=$l((e,t)=>{"use strict";var r=Zee(),n=I2i();t.exports=J;var a='"',o="'",l="\\",A=` +`,f=" ",I=" ",C="[",b="]",E="(",N=")",B=":",F="<",Q=">";function J(ce,fe,ue){for(var de=this,be=de.options.commonmark,Se=0,De=fe.length,k="",tt,ze,Le,Je,ft,lt,Ot,Er;Se{"use strict";var r=Zee();t.exports=F;var n=" ",a=` +`,o=" ",l="-",A=":",f="\\",I="|",C=1,b=2,E="left",N="center",B="right";function F(Q,J,ae){var ne=this,ce,fe,ue,de,be,Se,De,k,tt,ze,Le,Je,ft,lt,Ot,Er,Sr,jt,Bt,Nt,Fr,$t;if(ne.options.gfm){for(ce=0,Er=0,Se=J.length+1,De=[];ceNt){if(Er1&&(tt?(de+=k.slice(0,-1),k=k.charAt(k.length-1)):(de+=k,k="")),lt=Q.now(),Q(de)({type:"tableCell",children:ne.tokenizeInline(Je,lt)},be)),Q(k+tt),k="",Je=""):(k&&(Je+=k,k=""),Je+=tt,tt===f&&ce!==Se-2&&(Je+=Sr.charAt(ce+1),ce++)),ft=!1,ce++}Ot||Q(a+fe)}return Bt}}}}),CKa=$l((e,t)=>{"use strict";var r=NNe(),n=d2i(),a=lNr();t.exports=I;var o=" ",l=` +`,A=" ",f=4;function I(C,b,E){for(var N=this,B=N.options,F=B.commonmark,Q=N.blockTokenizers,J=N.interruptParagraph,ae=b.indexOf(l),ne=b.length,ce,fe,ue,de,be;ae=f&&ue!==l){ae=b.indexOf(l,ae+1);continue}}if(fe=b.slice(ae+1),a(J,Q,N,[C,fe,!0]))break;if(ce=ae,ae=b.indexOf(l,ae+1),ae!==-1&&r(b.slice(ce,ae))===""){ae=ce;break}}return fe=b.slice(0,ae),E?!0:(be=C.now(),fe=n(fe),C(fe)({type:"paragraph",children:N.tokenizeInline(fe,be)}))}}),_Ka=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("\\",a)}}),yKa=$l((e,t)=>{"use strict";var r=_Ka();t.exports=o,o.locator=r;var n=` +`,a="\\";function o(l,A,f){var I=this,C,b;if(A.charAt(0)===a&&(C=A.charAt(1),I.escape.indexOf(C)!==-1))return f?!0:(C===n?b={type:"break"}:b={type:"text",value:C},l(a+C)(b))}}),h2i=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("<",a)}}),bKa=$l((e,t)=>{"use strict";var r=Zee(),n=Hbt(),a=h2i();t.exports=b,b.locator=a,b.notInLink=!0;var o="<",l=">",A="@",f="/",I="mailto:",C=I.length;function b(E,N,B){var F=this,Q="",J=N.length,ae=0,ne="",ce=!1,fe="",ue,de,be,Se,De;if(N.charAt(0)===o){for(ae++,Q=o;ae{"use strict";t.exports=r;function r(n,a){var o=String(n),l=0,A;if(typeof a!="string")throw new Error("Expected character");for(A=o.indexOf(a);A!==-1;)l++,A=o.indexOf(a,A+a.length);return l}}),SKa=$l((e,t)=>{"use strict";t.exports=n;var r=["www.","http://","https://"];function n(a,o){var l=-1,A,f,I;if(!this.options.gfm)return l;for(f=r.length,A=-1;++A{"use strict";var r=EKa(),n=Hbt(),a=RNe(),o=gJe(),l=Zee(),A=SKa();t.exports=de,de.locator=A,de.notInLink=!0;var f=33,I=38,C=41,b=42,E=44,N=45,B=46,F=58,Q=59,J=63,ae=60,ne=95,ce=126,fe="(",ue=")";function de(be,Se,De){var k=this,tt=k.options.gfm,ze=k.inlineTokenizers,Le=Se.length,Je=-1,ft=!1,lt,Ot,Er,Sr,jt,Bt,Nt,Fr,$t,Xt,lr,cr,Ar,qr;if(tt){if(Se.slice(0,4)==="www.")ft=!0,Sr=4;else if(Se.slice(0,7).toLowerCase()==="http://")Sr=7;else if(Se.slice(0,8).toLowerCase()==="https://")Sr=8;else return;for(Je=Sr-1,Er=Sr,lt=[];Sr$t;)Sr=jt+Bt.lastIndexOf(ue),Bt=Se.slice(jt,Sr),Xt--;if(Se.charCodeAt(Sr-1)===Q&&(Sr--,o(Se.charCodeAt(Sr-1)))){for(Fr=Sr-2;o(Se.charCodeAt(Fr));)Fr--;Se.charCodeAt(Fr)===I&&(Sr=Fr)}return lr=Se.slice(0,Sr),Ar=n(lr,{nonTerminated:!1}),ft&&(Ar="http://"+Ar),qr=k.enterLink(),k.inlineTokenizers={text:ze.text},cr=k.tokenizeInline(lr,be.now()),k.inlineTokenizers=ze,qr(),be(lr)({type:"link",title:null,url:Ar,children:cr})}}}}),BKa=$l((e,t)=>{"use strict";var r=RNe(),n=gJe(),a=43,o=45,l=46,A=95;t.exports=f;function f(C,b){var E=this,N,B;if(!this.options.gfm||(N=C.indexOf("@",b),N===-1))return-1;if(B=N,B===b||!I(C.charCodeAt(B-1)))return f.call(E,C,N+1);for(;B>b&&I(C.charCodeAt(B-1));)B--;return B}function I(C){return r(C)||n(C)||C===a||C===o||C===l||C===A}}),wKa=$l((e,t)=>{"use strict";var r=Hbt(),n=RNe(),a=gJe(),o=BKa();t.exports=b,b.locator=o,b.notInLink=!0;var l=43,A=45,f=46,I=64,C=95;function b(E,N,B){var F=this,Q=F.options.gfm,J=F.inlineTokenizers,ae=0,ne=N.length,ce=-1,fe,ue,de,be;if(Q){for(fe=N.charCodeAt(ae);n(fe)||a(fe)||fe===l||fe===A||fe===f||fe===C;)fe=N.charCodeAt(++ae);if(ae!==0&&fe===I){for(ae++;ae{"use strict";var r=gJe(),n=h2i(),a=f2i().tag;t.exports=b,b.locator=n;var o="<",l="?",A="!",f="/",I=/^/i;function b(E,N,B){var F=this,Q=N.length,J,ae;if(!(N.charAt(0)!==o||Q<3)&&(J=N.charAt(1),!(!r(J)&&J!==l&&J!==A&&J!==f)&&(ae=N.match(a),!!ae)))return B?!0:(ae=ae[0],!F.inLink&&I.test(ae)?F.inLink=!0:F.inLink&&C.test(ae)&&(F.inLink=!1),E(ae)({type:"html",value:ae}))}}),m2i=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("[",a),l=n.indexOf("![",a);return l===-1||o{"use strict";var r=Zee(),n=m2i();t.exports=Q,Q.locator=n;var a=` +`,o="!",l='"',A="'",f="(",I=")",C="<",b=">",E="[",N="\\",B="]",F="`";function Q(J,ae,ne){var ce=this,fe="",ue=0,de=ae.charAt(0),be=ce.options.pedantic,Se=ce.options.commonmark,De=ce.options.gfm,k,tt,ze,Le,Je,ft,lt,Ot,Er,Sr,jt,Bt,Nt,Fr,$t,Xt,lr,cr;if(de===o&&(Ot=!0,fe=de,de=ae.charAt(++ue)),de===E&&!(!Ot&&ce.inLink)){for(fe+=de,Fr="",ue++,jt=ae.length,Xt=J.now(),Nt=0,Xt.column+=ue,Xt.offset+=ue;ue=ze&&(ze=0):ze=tt}else if(de===N)ue++,ft+=ae.charAt(ue);else if((!ze||De)&&de===E)Nt++;else if((!ze||De)&&de===B)if(Nt)Nt--;else{if(ae.charAt(ue+1)!==f)return;ft+=f,k=!0,ue++;break}Fr+=ft,ft="",ue++}if(k){for(Er=Fr,fe+=Fr+ft,ue++;ue{"use strict";var r=Zee(),n=m2i(),a=I2i();t.exports=B,B.locator=n;var o="link",l="image",A="shortcut",f="collapsed",I="full",C="!",b="[",E="\\",N="]";function B(F,Q,J){var ae=this,ne=ae.options.commonmark,ce=Q.charAt(0),fe=0,ue=Q.length,de="",be="",Se=o,De=A,k,tt,ze,Le,Je,ft,lt,Ot;if(ce===C&&(Se=l,be=ce,ce=Q.charAt(++fe)),ce===b){for(fe++,be+=ce,ft="",Ot=0;fe{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("**",a),l=n.indexOf("__",a);return l===-1?o:o===-1||l{"use strict";var r=NNe(),n=Zee(),a=DKa();t.exports=f,f.locator=a;var o="\\",l="*",A="_";function f(I,C,b){var E=this,N=0,B=C.charAt(N),F,Q,J,ae,ne,ce,fe;if(!(B!==l&&B!==A||C.charAt(++N)!==B)&&(Q=E.options.pedantic,J=B,ne=J+J,ce=C.length,N++,ae="",B="",!(Q&&n(C.charAt(N)))))for(;N{"use strict";t.exports=a;var r=String.fromCharCode,n=/\w/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),GKa=$l((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("*",a),l=n.indexOf("_",a);return l===-1?o:o===-1||l{"use strict";var r=NNe(),n=xKa(),a=Zee(),o=GKa();t.exports=I,I.locator=o;var l="*",A="_",f="\\";function I(C,b,E){var N=this,B=0,F=b.charAt(B),Q,J,ae,ne,ce,fe,ue;if(!(F!==l&&F!==A)&&(J=N.options.pedantic,ce=F,ae=F,fe=b.length,B++,ne="",F="",!(J&&a(b.charAt(B)))))for(;B{"use strict";t.exports=r;function r(n,a){return n.indexOf("~~",a)}}),LKa=$l((e,t)=>{"use strict";var r=Zee(),n=ZKa();t.exports=l,l.locator=n;var a="~",o="~~";function l(A,f,I){var C=this,b="",E="",N="",B="",F,Q,J;if(!(!C.options.gfm||f.charAt(0)!==a||f.charAt(1)!==a||r(f.charAt(2))))for(F=1,Q=f.length,J=A.now(),J.column+=2,J.offset+=2;++F{"use strict";t.exports=r;function r(n,a){return n.indexOf("`",a)}}),WKa=$l((e,t)=>{"use strict";var r=VKa();t.exports=l,l.locator=r;var n=10,a=32,o=96;function l(A,f,I){for(var C=f.length,b=0,E,N,B,F,Q,J;b2&&(F===a||F===n)&&(Q===a||Q===n)){for(b++,C--;b{"use strict";t.exports=r;function r(n,a){for(var o=n.indexOf(` +`,a);o>a&&n.charAt(o-1)===" ";)o--;return o}}),PKa=$l((e,t)=>{"use strict";var r=OKa();t.exports=l,l.locator=r;var n=" ",a=` +`,o=2;function l(A,f,I){for(var C=f.length,b=-1,E="",N;++b{"use strict";t.exports=r;function r(n,a,o){var l=this,A,f,I,C,b,E,N,B,F,Q;if(o)return!0;for(A=l.inlineMethods,C=A.length,f=l.inlineTokenizers,I=-1,F=a.length;++I{"use strict";var r=TNe(),n=PUa(),a=MUa(),o=HUa(),l=jUa(),A=zUa();t.exports=f;function f(b,E){this.file=E,this.offset={},this.options=r(this.options),this.setOptions({}),this.inList=!1,this.inBlock=!1,this.inLink=!1,this.atStart=!0,this.toOffset=a(E).toOffset,this.unescape=o(this,"escape"),this.decode=l(this)}var I=f.prototype;I.setOptions=eKa(),I.parse=oKa(),I.options=A2i(),I.exitStart=n("atStart",!0),I.enterList=n("inList",!1),I.enterLink=n("inLink",!1),I.enterBlock=n("inBlock",!1),I.interruptParagraph=[["thematicBreak"],["list"],["atxHeading"],["fencedCode"],["blockquote"],["html"],["setextHeading",{commonmark:!1}],["definition",{commonmark:!1}]],I.interruptList=[["atxHeading",{pedantic:!1}],["fencedCode",{pedantic:!1}],["thematicBreak",{pedantic:!1}],["definition",{commonmark:!1}]],I.interruptBlockquote=[["indentedCode",{commonmark:!0}],["fencedCode",{commonmark:!0}],["atxHeading",{commonmark:!0}],["setextHeading",{commonmark:!0}],["thematicBreak",{commonmark:!0}],["html",{commonmark:!0}],["list",{commonmark:!0}],["definition",{commonmark:!1}]],I.blockTokenizers={blankLine:aKa(),indentedCode:cKa(),fencedCode:lKa(),blockquote:uKa(),atxHeading:gKa(),thematicBreak:AKa(),list:pKa(),setextHeading:fKa(),html:IKa(),definition:hKa(),table:mKa(),paragraph:CKa()},I.inlineTokenizers={escape:yKa(),autoLink:bKa(),url:vKa(),email:wKa(),html:TKa(),link:RKa(),reference:NKa(),strong:kKa(),emphasis:FKa(),deletion:LKa(),code:WKa(),break:PKa(),text:MKa()},I.blockMethods=C(I.blockTokenizers),I.inlineMethods=C(I.inlineTokenizers),I.tokenizeBlock=A("block"),I.tokenizeInline=A("inline"),I.tokenizeFactory=A;function C(b){var E=[],N;for(N in b)E.push(N);return E}}),YKa=$l((e,t)=>{"use strict";var r=OUa(),n=TNe(),a=HKa();t.exports=o,o.Parser=a;function o(l){var A=this.data("settings"),f=r(a);f.prototype.options=n(f.prototype.options,A,l),this.Parser=f}}),QKa=$l((e,t)=>{"use strict";t.exports=r;function r(n){if(n)throw n}}),C2i=$l((e,t)=>{t.exports=function(r){return r!=null&&r.constructor!=null&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}}),XKa=$l((e,t)=>{"use strict";var r=Object.prototype.hasOwnProperty,n=Object.prototype.toString,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,l=function(C){return typeof Array.isArray=="function"?Array.isArray(C):n.call(C)==="[object Array]"},A=function(C){if(!C||n.call(C)!=="[object Object]")return!1;var b=r.call(C,"constructor"),E=C.constructor&&C.constructor.prototype&&r.call(C.constructor.prototype,"isPrototypeOf");if(C.constructor&&!b&&!E)return!1;var N;for(N in C);return typeof N>"u"||r.call(C,N)},f=function(C,b){a&&b.name==="__proto__"?a(C,b.name,{enumerable:!0,configurable:!0,value:b.newValue,writable:!0}):C[b.name]=b.newValue},I=function(C,b){if(b==="__proto__")if(r.call(C,b)){if(o)return o(C,b).value}else return;return C[b]};t.exports=function C(){var b,E,N,B,F,Q,J=arguments[0],ae=1,ne=arguments.length,ce=!1;for(typeof J=="boolean"&&(ce=J,J=arguments[1]||{},ae=2),(J==null||typeof J!="object"&&typeof J!="function")&&(J={});ae{"use strict";t.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let n=Object.getPrototypeOf(r);return n===null||n===Object.prototype}}),UKa=$l((e,t)=>{"use strict";var r=[].slice;t.exports=n;function n(a,o){var l;return A;function A(){var C=r.call(arguments,0),b=a.length>C.length,E;b&&C.push(f);try{E=a.apply(null,C)}catch(N){if(b&&l)throw N;return f(N)}b||(E&&typeof E.then=="function"?E.then(I,f):E instanceof Error?f(E):I(E))}function f(){l||(l=!0,o.apply(null,arguments))}function I(C){f(null,C)}}}),KKa=$l((e,t)=>{"use strict";var r=UKa();t.exports=a,a.wrap=r;var n=[].slice;function a(){var o=[],l={};return l.run=A,l.use=f,l;function A(){var I=-1,C=n.call(arguments,0,-1),b=arguments[arguments.length-1];if(typeof b!="function")throw new Error("Expected function as last argument, not "+b);E.apply(null,[null].concat(C));function E(N){var B=o[++I],F=n.call(arguments,0),Q=F.slice(1),J=C.length,ae=-1;if(N){b(N);return}for(;++ae{"use strict";var r={}.hasOwnProperty;t.exports=n;function n(A){return!A||typeof A!="object"?"":r.call(A,"position")||r.call(A,"type")?o(A.position):r.call(A,"start")||r.call(A,"end")?o(A):r.call(A,"line")||r.call(A,"column")?a(A):""}function a(A){return(!A||typeof A!="object")&&(A={}),l(A.line)+":"+l(A.column)}function o(A){return(!A||typeof A!="object")&&(A={}),a(A.start)+"-"+a(A.end)}function l(A){return A&&typeof A=="number"?A:1}}),zKa=$l((e,t)=>{"use strict";var r=jKa();t.exports=o;function n(){}n.prototype=Error.prototype,o.prototype=new n;var a=o.prototype;a.file="",a.name="",a.reason="",a.message="",a.stack="",a.fatal=null,a.column=null,a.line=null;function o(A,f,I){var C,b,E;typeof f=="string"&&(I=f,f=null),C=l(I),b=r(f)||"1:1",E={start:{line:null,column:null},end:{line:null,column:null}},f&&f.position&&(f=f.position),f&&(f.start?(E=f,f=f.start):E.start=f),A.stack&&(this.stack=A.stack,A=A.message),this.message=A,this.name=b,this.reason=A,this.line=f?f.line:null,this.column=f?f.column:null,this.location=E,this.source=C[0],this.ruleId=C[1]}function l(A){var f=[null,null],I;return typeof A=="string"&&(I=A.indexOf(":"),I===-1?f[1]=A:(f[0]=A.slice(0,I),f[1]=A.slice(I+1))),f}}),qKa=$l(e=>{"use strict";e.basename=t,e.dirname=r,e.extname=n,e.join=a,e.sep="/";function t(f,I){var C=0,b=-1,E,N,B,F;if(I!==void 0&&typeof I!="string")throw new TypeError('"ext" argument must be a string');if(A(f),E=f.length,I===void 0||!I.length||I.length>f.length){for(;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else b<0&&(B=!0,b=E+1);return b<0?"":f.slice(C,b)}if(I===f)return"";for(N=-1,F=I.length-1;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else N<0&&(B=!0,N=E+1),F>-1&&(f.charCodeAt(E)===I.charCodeAt(F--)?F<0&&(b=E):(F=-1,b=N));return C===b?b=N:b<0&&(b=f.length),f.slice(C,b)}function r(f){var I,C,b;if(A(f),!f.length)return".";for(I=-1,b=f.length;--b;)if(f.charCodeAt(b)===47){if(C){I=b;break}}else C||(C=!0);return I<0?f.charCodeAt(0)===47?"/":".":I===1&&f.charCodeAt(0)===47?"//":f.slice(0,I)}function n(f){var I=-1,C=0,b=-1,E=0,N,B,F;for(A(f),F=f.length;F--;){if(B=f.charCodeAt(F),B===47){if(N){C=F+1;break}continue}b<0&&(N=!0,b=F+1),B===46?I<0?I=F:E!==1&&(E=1):I>-1&&(E=-1)}return I<0||b<0||E===0||E===1&&I===b-1&&I===C+1?"":f.slice(I,b)}function a(){for(var f=-1,I;++f2){if(Q=C.lastIndexOf("/"),Q!==C.length-1){Q<0?(C="",b=0):(C=C.slice(0,Q),b=C.length-1-C.lastIndexOf("/")),E=B,N=0;continue}}else if(C.length){C="",b=0,E=B,N=0;continue}}I&&(C=C.length?C+"/..":"..",b=2)}else C.length?C+="/"+f.slice(E+1,B):C=f.slice(E+1,B),b=B-E-1;E=B,N=0}else F===46&&N>-1?N++:N=-1}return C}function A(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}}),$Ka=$l(e=>{"use strict";e.cwd=t;function t(){return"/"}}),e8a=$l((e,t)=>{"use strict";var r=qKa(),n=$Ka(),a=C2i();t.exports=A;var o={}.hasOwnProperty,l=["history","path","basename","stem","extname","dirname"];A.prototype.toString=ae,Object.defineProperty(A.prototype,"path",{get:f,set:I}),Object.defineProperty(A.prototype,"dirname",{get:C,set:b}),Object.defineProperty(A.prototype,"basename",{get:E,set:N}),Object.defineProperty(A.prototype,"extname",{get:B,set:F}),Object.defineProperty(A.prototype,"stem",{get:Q,set:J});function A(ue){var de,be;if(!ue)ue={};else if(typeof ue=="string"||a(ue))ue={contents:ue};else if("message"in ue&&"messages"in ue)return ue;if(!(this instanceof A))return new A(ue);for(this.data={},this.messages=[],this.history=[],this.cwd=n.cwd(),be=-1;++be-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(ue||""))}function Q(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function J(ue){ce(ue,"stem"),ne(ue,"stem"),this.path=r.join(this.dirname||"",ue+(this.extname||""))}function ae(ue){return(this.contents||"").toString(ue)}function ne(ue,de){if(ue&&ue.indexOf(r.sep)>-1)throw new Error("`"+de+"` cannot be a path: did not expect `"+r.sep+"`")}function ce(ue,de){if(!ue)throw new Error("`"+de+"` cannot be empty")}function fe(ue,de){if(!ue)throw new Error("Setting `"+de+"` requires `path` to be set too")}}),t8a=$l((e,t)=>{"use strict";var r=zKa(),n=e8a();t.exports=n,n.prototype.message=a,n.prototype.info=l,n.prototype.fail=o;function a(A,f,I){var C=new r(A,f,I);return this.path&&(C.name=this.path+":"+C.name,C.file=this.path),C.fatal=!1,this.messages.push(C),C}function o(){var A=this.message.apply(this,arguments);throw A.fatal=!0,A}function l(){var A=this.message.apply(this,arguments);return A.fatal=null,A}}),r8a=$l((e,t)=>{"use strict";t.exports=t8a()}),n8a=$l((e,t)=>{"use strict";var r=QKa(),n=C2i(),a=XKa(),o=JKa(),l=KKa(),A=r8a();t.exports=B().freeze();var f=[].slice,I={}.hasOwnProperty,C=l().use(b).use(E).use(N);function b(ue,de){de.tree=ue.parse(de.file)}function E(ue,de,be){ue.run(de.tree,de.file,Se);function Se(De,k,tt){De?be(De):(de.tree=k,de.file=tt,be())}}function N(ue,de){var be=ue.stringify(de.tree,de.file);be==null||(typeof be=="string"||n(be)?("value"in de.file&&(de.file.value=be),de.file.contents=be):de.file.result=be)}function B(){var ue=[],de=l(),be={},Se=-1,De;return k.data=ze,k.freeze=tt,k.attachers=ue,k.use=Le,k.parse=ft,k.stringify=Er,k.run=lt,k.runSync=Ot,k.process=Sr,k.processSync=jt,k;function k(){for(var Bt=B(),Nt=-1;++NtF2i,options:()=>Z2i,parsers:()=>INr,printers:()=>M2i});var i8a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},LG=i8a,s8a=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},f4=s8a,o8a=wNe(aNr(),1);function Ybt(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var Xme="string",Tce="array",Qbt="cursor",DNe="indent",kNe="align",AJe="trim",Rce="group",Jme="fill",wce="if-break",dJe="indent-if-break",pJe="line-suffix",fJe="line-suffix-boundary",Lee="line",IJe="label",xNe="break-parent",y2i=new Set([Qbt,DNe,kNe,AJe,Rce,Jme,wce,dJe,pJe,fJe,Lee,IJe,xNe]);function a8a(e){if(typeof e=="string")return Xme;if(Array.isArray(e))return Tce;if(!e)return;let{type:t}=e;if(y2i.has(t))return t}var Nce=a8a,c8a=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function l8a(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Nce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=c8a([...y2i].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var u8a=class extends Error{name="InvalidDocError";constructor(e){super(l8a(e)),this.doc=e}},Lbt=u8a,Y1i={};function g8a(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===Y1i){r(a.pop());continue}r&&a.push(o,Y1i);let l=Nce(o);if(!l)throw new Lbt(o);if(t?.(o)!==!1)switch(l){case Tce:case Jme:{let A=l===Tce?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case wce:a.push(o.flatContents,o.breakContents);break;case Rce:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case kNe:case DNe:case dJe:case IJe:case pJe:a.push(o.contents);break;case Xme:case Qbt:case AJe:case fJe:case Lee:case xNe:break;default:throw new Lbt(o)}}}var A8a=g8a;function d8a(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Nce(o)){case Tce:return t(o.map(n));case Jme:return t({...o,parts:o.parts.map(n)});case wce:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case Rce:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case kNe:case DNe:case dJe:case IJe:case pJe:return t({...o,contents:n(o.contents)});case Xme:case Qbt:case AJe:case fJe:case Lee:case xNe:return t(o);default:throw new Lbt(o)}}}function Q1i(e){if(e.length>0){let t=f4(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function p8a(e){let t=new Set,r=[];function n(o){if(o.type===xNe&&Q1i(r),o.type===Rce){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===Rce&&r.pop().break&&Q1i(r)}A8a(e,n,a,!0)}function ENe(e,t=tNr){return d8a(e,r=>typeof r=="string"?v2i(t,r.split(` +`)):r)}var uNr=()=>{},vNe=uNr,b2i=uNr,f8a=uNr;function eNr(e){return vNe(e),{type:DNe,contents:e}}function Qme(e,t){return vNe(t),{type:kNe,contents:t,n:e}}function Fbt(e,t={}){return vNe(e),b2i(t.expandedStates,!0),{type:Rce,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function Vbt(e){return Qme({type:"root"},e)}function gNr(e){return f8a(e),{type:Jme,parts:e}}function I8a(e,t="",r={}){return vNe(e),t!==""&&vNe(t),{type:wce,breakContents:e,flatContents:t,groupId:r.groupId}}var Wbt={type:xNe},ANr={type:Lee,hard:!0},h8a={type:Lee,hard:!0,literal:!0},E2i={type:Lee},S2i={type:Lee,soft:!0},LR=[ANr,Wbt],tNr=[h8a,Wbt];function v2i(e,t){vNe(e),b2i(t);let r=[];for(let n=0;nMath.max(n,a.length/t.length),0)}var B2i=m8a;function C8a(e,t){let r=e.match(new RegExp(`(${Ybt(t)})+`,"gu"));if(r===null)return 0;let n=new Map,a=0;for(let o of r){let l=o.length/t.length;n.set(l,!0),l>a&&(a=l)}for(let o=1;oo?n:r}var b8a=y8a,E8a=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},S8a=E8a,v8a=wNe(aNr(),1);function B8a(e){return e?.type==="front-matter"}var w8a=B8a,sJe=3;function T8a(e){let t=e.slice(0,sJe);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` +`,sJe);if(r===-1)return;let n=e.slice(sJe,r).trim(),a=e.indexOf(` ${t}`,r),o=n;if(o||(o=t==="+++"?"toml":"yaml"),a===-1&&t==="---"&&o==="yaml"&&(a=e.indexOf(` -...`,r)),a===-1)return;let l=a+1+nJe,A=e.charAt(l+1);if(!/\s?/u.test(A))return;let f=e.slice(0,l);return{type:"front-matter",language:o,explicitLanguage:n,value:e.slice(r+1,a),startDelimiter:t,endDelimiter:f.slice(-nJe),raw:f}}function S8a(e){let t=E8a(e);if(!t)return{content:e};let{raw:r}=t;return{frontMatter:t,content:ZG(!1,r,/[^\n]/gu," ")+e.slice(r.length)}}var gNr=S8a,I2i=["format","prettier"];function h2i(e){let t=`@(${I2i.join("|")})`,r=new RegExp([``,`\\{\\s*\\/\\*\\s*${t}\\s*\\*\\/\\s*\\}`,``,`\\{\\s*\\/\\*\\s*${t}\\s*\\*\\/\\s*\\}`,``].join("|"),"mu"),n=e.match(r);return n?.index===0}var v8a=e=>h2i(gNr(e).content.trimStart()),B8a=e=>{let t=gNr(e),r=``;return t.frontMatter?`${t.frontMatter.raw} +.*-->`].join("|"),"mu"),n=e.match(r);return n?.index===0}var N8a=e=>T2i(dNr(e).content.trimStart()),D8a=e=>{let t=dNr(e),r=``;return t.frontMatter?`${t.frontMatter.raw} ${r} ${t.content}`:`${r} -${t.content}`},w8a=new Set(["position","raw"]);function m2i(e,t,r){if((e.type==="front-matter"||e.type==="code"||e.type==="yaml"||e.type==="import"||e.type==="export"||e.type==="jsx")&&delete t.value,e.type==="list"&&delete t.isAligned,(e.type==="list"||e.type==="listItem")&&delete t.spread,e.type==="text")return null;if(e.type==="inlineCode"&&(t.value=ZG(!1,e.value,` -`," ")),e.type==="wikiLink"&&(t.value=ZG(!1,e.value.trim(),/[\t\n]+/gu," ")),(e.type==="definition"||e.type==="linkReference"||e.type==="imageReference")&&(t.label=(0,_8a.default)(e.label)),(e.type==="link"||e.type==="image")&&e.url&&e.url.includes("("))for(let n of"<>")t.url=ZG(!1,e.url,n,encodeURIComponent(n));if((e.type==="definition"||e.type==="link"||e.type==="image")&&e.title&&(t.title=ZG(!1,e.title,/\\(?=["')])/gu,"")),r?.type==="root"&&r.children.length>0&&(r.children[0]===e||b8a(r.children[0])&&r.children[1]===e)&&e.type==="html"&&h2i(e.value))return null}m2i.ignoredProperties=w8a;var T8a=m2i,R8a=/(?:[\u{2ea}-\u{2eb}\u{1100}-\u{11ff}\u{2e80}-\u{2e99}\u{2e9b}-\u{2ef3}\u{2f00}-\u{2fd5}\u{2ff0}-\u{303f}\u{3041}-\u{3096}\u{3099}-\u{30ff}\u{3105}-\u{312f}\u{3131}-\u{318e}\u{3190}-\u{4dbf}\u{4e00}-\u{9fff}\u{a700}-\u{a707}\u{a960}-\u{a97c}\u{ac00}-\u{d7a3}\u{d7b0}-\u{d7c6}\u{d7cb}-\u{d7fb}\u{f900}-\u{fa6d}\u{fa70}-\u{fad9}\u{fe10}-\u{fe1f}\u{fe30}-\u{fe6f}\u{ff00}-\u{ffef}\u{16fe3}\u{1aff0}-\u{1aff3}\u{1aff5}-\u{1affb}\u{1affd}-\u{1affe}\u{1b000}-\u{1b122}\u{1b132}\u{1b150}-\u{1b152}\u{1b155}\u{1b164}-\u{1b167}\u{1f200}\u{1f250}-\u{1f251}\u{20000}-\u{2a6df}\u{2a700}-\u{2b739}\u{2b740}-\u{2b81d}\u{2b820}-\u{2cea1}\u{2ceb0}-\u{2ebe0}\u{2f800}-\u{2fa1d}\u{30000}-\u{3134a}\u{31350}-\u{323af}])(?:[\u{fe00}-\u{fe0f}\u{e0100}-\u{e01ef}])?/u,sJe=/(?:[\u{21}-\u{2f}\u{3a}-\u{40}\u{5b}-\u{60}\u{7b}-\u{7e}]|\p{General_Category=Connector_Punctuation}|\p{General_Category=Dash_Punctuation}|\p{General_Category=Close_Punctuation}|\p{General_Category=Final_Punctuation}|\p{General_Category=Initial_Punctuation}|\p{General_Category=Other_Punctuation}|\p{General_Category=Open_Punctuation})/u;async function N8a(e,t){if(e.language==="yaml"){let r=e.value.trim(),n=r?await t(r,{parser:"yaml"}):"";return Obt([e.startDelimiter,e.explicitLanguage,ZR,n,n?ZR:"",e.endDelimiter])}}var D8a=N8a,k8a=e=>String(e).split(/[/\\]/u).pop();function Z1i(e,t){if(!t)return;let r=k8a(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function x8a(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function G8a(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=x8a(r,t.language)??Z1i(r,t.physicalFile)??Z1i(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var F8a=G8a,Z8a=new Proxy(()=>{},{get:()=>Z8a});function Mbt(e){return e.position.start.offset}function Hbt(e){return e.position.end.offset}var C2i=new Set(["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"]),_2i=new Set([...C2i,"tableCell","paragraph","heading"]),cJe="non-cjk",Gee="cj-letter",TNe="k-letter",Ybt="cjk-punctuation",L8a=/\p{Script_Extensions=Hangul}/u;function y2i(e){let t=[],r=e.split(/([\t\n ]+)/u);for(let[a,o]of r.entries()){if(a%2===1){t.push({type:"whitespace",value:/\n/u.test(o)?` -`:" "});continue}if((a===0||a===r.length-1)&&o==="")continue;let l=o.split(new RegExp(`(${R8a.source})`,"u"));for(let[A,f]of l.entries())if(!((A===0||A===l.length-1)&&f==="")){if(A%2===0){f!==""&&n({type:"word",value:f,kind:cJe,isCJ:!1,hasLeadingPunctuation:sJe.test(f[0]),hasTrailingPunctuation:sJe.test(p4(!1,f,-1))});continue}if(sJe.test(f)){n({type:"word",value:f,kind:Ybt,isCJ:!0,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0});continue}if(L8a.test(f)){n({type:"word",value:f,kind:TNe,isCJ:!1,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1});continue}n({type:"word",value:f,kind:Gee,isCJ:!0,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return t;function n(a){let o=p4(!1,t,-1);o?.type==="word"&&!l(cJe,Ybt)&&![o.value,a.value].some(A=>/\u3000/u.test(A))&&t.push({type:"whitespace",value:""}),t.push(a);function l(A,f){return o.kind===A&&a.kind===f||o.kind===f&&a.kind===A}}}function oJe(e,t){let r=t.originalText.slice(e.position.start.offset,e.position.end.offset),{numberText:n,leadingSpaces:a}=r.match(/^\s*(?\d+)(\.|\))(?\s*)/u).groups;return{number:Number(n),leadingSpaces:a}}function V8a(e,t){return!e.ordered||e.children.length<2||oJe(e.children[1],t).number!==1?!1:oJe(e.children[0],t).number!==0?!0:e.children.length>2&&oJe(e.children[2],t).number===1}function b2i(e,t){let{value:r}=e;return e.position.end.offset===t.length&&r.endsWith(` +${t.content}`},k8a=new Set(["position","raw"]);function R2i(e,t,r){if((e.type==="front-matter"||e.type==="code"||e.type==="yaml"||e.type==="import"||e.type==="export"||e.type==="jsx")&&delete t.value,e.type==="list"&&delete t.isAligned,(e.type==="list"||e.type==="listItem")&&delete t.spread,e.type==="text")return null;if(e.type==="inlineCode"&&(t.value=LG(!1,e.value,` +`," ")),e.type==="wikiLink"&&(t.value=LG(!1,e.value.trim(),/[\t\n]+/gu," ")),(e.type==="definition"||e.type==="linkReference"||e.type==="imageReference")&&(t.label=(0,v8a.default)(e.label)),(e.type==="link"||e.type==="image")&&e.url&&e.url.includes("("))for(let n of"<>")t.url=LG(!1,e.url,n,encodeURIComponent(n));if((e.type==="definition"||e.type==="link"||e.type==="image")&&e.title&&(t.title=LG(!1,e.title,/\\(?=["')])/gu,"")),r?.type==="root"&&r.children.length>0&&(r.children[0]===e||w8a(r.children[0])&&r.children[1]===e)&&e.type==="html"&&T2i(e.value))return null}R2i.ignoredProperties=k8a;var x8a=R2i,G8a=/(?:[\u{2ea}-\u{2eb}\u{1100}-\u{11ff}\u{2e80}-\u{2e99}\u{2e9b}-\u{2ef3}\u{2f00}-\u{2fd5}\u{2ff0}-\u{303f}\u{3041}-\u{3096}\u{3099}-\u{30ff}\u{3105}-\u{312f}\u{3131}-\u{318e}\u{3190}-\u{4dbf}\u{4e00}-\u{9fff}\u{a700}-\u{a707}\u{a960}-\u{a97c}\u{ac00}-\u{d7a3}\u{d7b0}-\u{d7c6}\u{d7cb}-\u{d7fb}\u{f900}-\u{fa6d}\u{fa70}-\u{fad9}\u{fe10}-\u{fe1f}\u{fe30}-\u{fe6f}\u{ff00}-\u{ffef}\u{16fe3}\u{1aff0}-\u{1aff3}\u{1aff5}-\u{1affb}\u{1affd}-\u{1affe}\u{1b000}-\u{1b122}\u{1b132}\u{1b150}-\u{1b152}\u{1b155}\u{1b164}-\u{1b167}\u{1f200}\u{1f250}-\u{1f251}\u{20000}-\u{2a6df}\u{2a700}-\u{2b739}\u{2b740}-\u{2b81d}\u{2b820}-\u{2cea1}\u{2ceb0}-\u{2ebe0}\u{2f800}-\u{2fa1d}\u{30000}-\u{3134a}\u{31350}-\u{323af}])(?:[\u{fe00}-\u{fe0f}\u{e0100}-\u{e01ef}])?/u,aJe=/(?:[\u{21}-\u{2f}\u{3a}-\u{40}\u{5b}-\u{60}\u{7b}-\u{7e}]|\p{General_Category=Connector_Punctuation}|\p{General_Category=Dash_Punctuation}|\p{General_Category=Close_Punctuation}|\p{General_Category=Final_Punctuation}|\p{General_Category=Initial_Punctuation}|\p{General_Category=Other_Punctuation}|\p{General_Category=Open_Punctuation})/u;async function F8a(e,t){if(e.language==="yaml"){let r=e.value.trim(),n=r?await t(r,{parser:"yaml"}):"";return Vbt([e.startDelimiter,e.explicitLanguage,LR,n,n?LR:"",e.endDelimiter])}}var Z8a=F8a,L8a=e=>String(e).split(/[/\\]/u).pop();function J1i(e,t){if(!t)return;let r=L8a(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function V8a(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function W8a(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=V8a(r,t.language)??J1i(r,t.physicalFile)??J1i(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var O8a=W8a,P8a=new Proxy(()=>{},{get:()=>P8a});function Obt(e){return e.position.start.offset}function Pbt(e){return e.position.end.offset}var N2i=new Set(["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"]),D2i=new Set([...N2i,"tableCell","paragraph","heading"]),uJe="non-cjk",Fee="cj-letter",BNe="k-letter",Mbt="cjk-punctuation",M8a=/\p{Script_Extensions=Hangul}/u;function k2i(e){let t=[],r=e.split(/([\t\n ]+)/u);for(let[a,o]of r.entries()){if(a%2===1){t.push({type:"whitespace",value:/\n/u.test(o)?` +`:" "});continue}if((a===0||a===r.length-1)&&o==="")continue;let l=o.split(new RegExp(`(${G8a.source})`,"u"));for(let[A,f]of l.entries())if(!((A===0||A===l.length-1)&&f==="")){if(A%2===0){f!==""&&n({type:"word",value:f,kind:uJe,isCJ:!1,hasLeadingPunctuation:aJe.test(f[0]),hasTrailingPunctuation:aJe.test(f4(!1,f,-1))});continue}if(aJe.test(f)){n({type:"word",value:f,kind:Mbt,isCJ:!0,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0});continue}if(M8a.test(f)){n({type:"word",value:f,kind:BNe,isCJ:!1,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1});continue}n({type:"word",value:f,kind:Fee,isCJ:!0,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return t;function n(a){let o=f4(!1,t,-1);o?.type==="word"&&!l(uJe,Mbt)&&![o.value,a.value].some(A=>/\u3000/u.test(A))&&t.push({type:"whitespace",value:""}),t.push(a);function l(A,f){return o.kind===A&&a.kind===f||o.kind===f&&a.kind===A}}}function cJe(e,t){let r=t.originalText.slice(e.position.start.offset,e.position.end.offset),{numberText:n,leadingSpaces:a}=r.match(/^\s*(?\d+)(\.|\))(?\s*)/u).groups;return{number:Number(n),leadingSpaces:a}}function H8a(e,t){return!e.ordered||e.children.length<2||cJe(e.children[1],t).number!==1?!1:cJe(e.children[0],t).number!==0?!0:e.children.length>2&&cJe(e.children[2],t).number===1}function x2i(e,t){let{value:r}=e;return e.position.end.offset===t.length&&r.endsWith(` `)&&t.endsWith(` -`)?r.slice(0,-1):r}function ZNe(e,t){return function r(n,a,o){let l={...t(n,a,o)};return l.children&&(l.children=l.children.map((A,f)=>r(A,f,[l,...o]))),l}(e,null,[])}function L1i(e){if(e?.type!=="link"||e.children.length!==1)return!1;let[t]=e.children;return Mbt(e)===Mbt(t)&&Hbt(e)===Hbt(t)}function W8a(e,t){let{node:r}=e;if(r.type==="code"&&r.lang!==null){let n=F8a(t,{language:r.lang});if(n)return async a=>{let o=t.__inJsTemplate?"~":"`",l=o.repeat(Math.max(3,f2i(r.value,o)+1)),A={parser:n};r.lang==="ts"||r.lang==="typescript"?A.filepath="dummy.ts":r.lang==="tsx"&&(A.filepath="dummy.tsx");let f=await a(b2i(r,t.originalText),A);return Obt([l,r.lang,r.meta?" "+r.meta:"",ZR,vNe(f),ZR,l])}}switch(r.type){case"front-matter":return n=>D8a(r,n);case"import":case"export":return n=>n(r.value,{parser:"babel"});case"jsx":return n=>n(`<$>${r.value}`,{parser:"__js_expression",rootMarker:"mdx"})}return null}var O8a=W8a,iJe=null;function aJe(e){if(iJe!==null&&typeof iJe.property){let t=iJe;return iJe=aJe.prototype=null,t}return iJe=aJe.prototype=e??Object.create(null),new aJe}var P8a=10;for(let e=0;e<=P8a;e++)aJe();function M8a(e){return aJe(e)}function H8a(e,t="type"){M8a(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Y8a=H8a,Q8a={"front-matter":[],root:["children"],paragraph:["children"],sentence:["children"],word:[],whitespace:[],emphasis:["children"],strong:["children"],delete:["children"],inlineCode:[],wikiLink:[],link:["children"],image:[],blockquote:["children"],heading:["children"],code:[],html:[],list:["children"],thematicBreak:[],linkReference:["children"],imageReference:[],definition:[],footnote:["children"],footnoteReference:[],footnoteDefinition:["children"],table:["children"],tableCell:["children"],break:[],liquidNode:[],import:[],export:[],esComment:[],jsx:[],math:[],inlineMath:[],tableRow:["children"],listItem:["children"],text:[]},X8a=Q8a,J8a=Y8a(X8a),U8a=J8a;function K8a(e){switch(e){case"cr":return"\r";case"crlf":return`\r +`)?r.slice(0,-1):r}function GNe(e,t){return function r(n,a,o){let l={...t(n,a,o)};return l.children&&(l.children=l.children.map((A,f)=>r(A,f,[l,...o]))),l}(e,null,[])}function U1i(e){if(e?.type!=="link"||e.children.length!==1)return!1;let[t]=e.children;return Obt(e)===Obt(t)&&Pbt(e)===Pbt(t)}function Y8a(e,t){let{node:r}=e;if(r.type==="code"&&r.lang!==null){let n=O8a(t,{language:r.lang});if(n)return async a=>{let o=t.__inJsTemplate?"~":"`",l=o.repeat(Math.max(3,B2i(r.value,o)+1)),A={parser:n};r.lang==="ts"||r.lang==="typescript"?A.filepath="dummy.ts":r.lang==="tsx"&&(A.filepath="dummy.tsx");let f=await a(x2i(r,t.originalText),A);return Vbt([l,r.lang,r.meta?" "+r.meta:"",LR,ENe(f),LR,l])}}switch(r.type){case"front-matter":return n=>Z8a(r,n);case"import":case"export":return n=>n(r.value,{parser:"babel"});case"jsx":return n=>n(`<$>${r.value}`,{parser:"__js_expression",rootMarker:"mdx"})}return null}var Q8a=Y8a,oJe=null;function lJe(e){if(oJe!==null&&typeof oJe.property){let t=oJe;return oJe=lJe.prototype=null,t}return oJe=lJe.prototype=e??Object.create(null),new lJe}var X8a=10;for(let e=0;e<=X8a;e++)lJe();function J8a(e){return lJe(e)}function U8a(e,t="type"){J8a(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var K8a=U8a,j8a={"front-matter":[],root:["children"],paragraph:["children"],sentence:["children"],word:[],whitespace:[],emphasis:["children"],strong:["children"],delete:["children"],inlineCode:[],wikiLink:[],link:["children"],image:[],blockquote:["children"],heading:["children"],code:[],html:[],list:["children"],thematicBreak:[],linkReference:["children"],imageReference:[],definition:[],footnote:["children"],footnoteReference:[],footnoteDefinition:["children"],table:["children"],tableCell:["children"],break:[],liquidNode:[],import:[],export:[],esComment:[],jsx:[],math:[],inlineMath:[],tableRow:["children"],listItem:["children"],text:[]},z8a=j8a,q8a=K8a(z8a),$8a=q8a;function e6a(e){switch(e){case"cr":return"\r";case"crlf":return`\r `;default:return` -`}}var j8a=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function z8a(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function q8a(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var $8a=e=>!(z8a(e)||q8a(e)),e6a=/[^\x20-\x7F]/u;function t6a(e){if(!e)return 0;if(!e6a.test(e))return e.length;e=e.replace(j8a()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=$8a(n)?1:2)}return t}var ANr=t6a,bV=Symbol("MODE_BREAK"),E6=Symbol("MODE_FLAT"),BNe=Symbol("cursor"),eNr=Symbol("DOC_FILL_PRINTED_LENGTH");function E2i(){return{value:"",length:0,queue:[]}}function r6a(e,t){return tNr(e,{type:"indent"},t)}function n6a(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||E2i():t<0?tNr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:tNr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function tNr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function rNr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===BNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(BNe);return t}function Zbt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=Rce(C);switch(b){case Qme:f.push(C),r-=ANr(C);break;case wce:case Xme:{let E=b===wce?C:C.parts,N=C[eNr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case xNe:case GNe:case gJe:case pJe:A.push({mode:I,doc:C.contents});break;case uJe:r+=rNr(f);break;case Tce:{if(o&&C.break)return!1;let E=C.break?bV:I,N=C.expandedStates&&E===bV?p4(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case Bce:{let E=(C.groupId?a[C.groupId]||E6:I)===bV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Zee:if(I===bV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case AJe:n=!0;break;case dJe:if(n)return!1;break}}return!1}function i6a(e,t){let r={},n=t.printWidth,a=K8a(t.endOfLine),o=0,l=[{ind:E2i(),mode:bV,doc:e}],A=[],f=!1,I=[],C=0;for(l8a(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(Rce(B)){case Qme:{let F=a!==` -`?ZG(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=ANr(F));break}case wce:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case Jbt:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(BNe),C++;break;case xNe:l.push({ind:r6a(E,t),mode:N,doc:B.contents});break;case GNe:l.push({ind:n6a(E,B.n,t),mode:N,doc:B.contents});break;case uJe:o-=rNr(A);break;case Tce:switch(N){case E6:if(!f){l.push({ind:E,mode:B.break?bV:E6,doc:B.contents});break}case bV:{f=!1;let F={ind:E,mode:E6,doc:B.contents},Q=n-o,J=I.length>0;if(!B.break&&Zbt(F,l,Q,J,r))l.push(F);else if(B.expandedStates){let ae=p4(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:bV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:bV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:E6,doc:ce};if(Zbt(fe,l,Q,J,r)){l.push(fe);break}}}else l.push({ind:E,mode:bV,doc:B.contents});break}}B.id&&(r[B.id]=p4(!1,l,-1).mode);break;case Xme:{let F=n-o,Q=B[eNr]??0,{parts:J}=B,ae=J.length-Q;if(ae===0)break;let ne=J[Q+0],ce=J[Q+1],fe={ind:E,mode:E6,doc:ne},ue={ind:E,mode:bV,doc:ne},de=Zbt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:E6,doc:ce},Se={ind:E,mode:bV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=J[Q+2],k={ind:E,mode:N,doc:{...B,[eNr]:Q+2}};Zbt({ind:E,mode:E6,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case Bce:case gJe:{let F=B.groupId?r[B.groupId]:N;if(F===bV){let Q=B.type===Bce?B.breakContents:B.negate?B.contents:qRr(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===E6){let Q=B.type===Bce?B.flatContents:B.negate?qRr(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case AJe:I.push({ind:E,mode:N,doc:B.contents});break;case dJe:I.length>0&&l.push({ind:E,mode:N,doc:uNr});break;case Zee:switch(N){case E6:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case bV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=rNr(A),A.push(a+E.value),o=E.length);break}break;case pJe:l.push({ind:E,mode:N,doc:B.contents});break;case FNe:break;default:throw new Wbt(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(BNe);if(b!==-1){let E=A.indexOf(BNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==BNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function s6a(e,t,r){let{node:n}=e,a=[],o=e.map(()=>e.map(({index:b})=>{let E=i6a(r(),t).formatted,N=ANr(E);return a[b]=Math.max(a[b]??3,N),{text:E,width:N}},"children"),"children"),l=f(!1);if(t.proseWrap!=="never")return[Pbt,l];let A=f(!0);return[Pbt,Lbt(g8a(A,l))];function f(b){return p2i(uNr,[C(o[0],b),I(b),...o.slice(1).map(E=>C(E,b))].map(E=>`| ${E.join(" | ")} |`))}function I(b){return a.map((E,N)=>{let B=n.align[N],F=B==="center"||B==="left"?":":"-",Q=B==="center"||B==="right"?":":"-",J=b?"-":"-".repeat(E-2);return`${F}${J}${Q}`})}function C(b,E){return b.map(({text:N,width:B},F)=>{if(E)return N;let Q=a[F]-B,J=n.align[F],ae=0;J==="right"?ae=Q:J==="center"&&(ae=Math.floor(Q/2));let ne=Q-ae;return`${" ".repeat(ae)}${N}${" ".repeat(ne)}`})}}function o6a(e,t,r){let n=e.map(r,"children");return a6a(n)}function a6a(e){let t=[""];return function r(n){for(let a of n){let o=Rce(a);if(o===wce){r(a);continue}let l=a,A=[];o===Xme&&([l,...A]=a.parts),t.push([t.pop(),l],...A)}}(e),lNr(t)}var d4,c6a=class{constructor(e){TUa(this,d4),RUa(this,d4,new Set(e))}getLeadingWhitespaceCount(e){let t=vce(this,d4),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return vce(this,d4).has(e.charAt(0))}hasTrailingWhitespace(e){return vce(this,d4).has(p4(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Xbt([...vce(this,d4)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=vce(this,d4);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=vce(this,d4);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=vce(this,d4);return Array.prototype.every.call(e,r=>t.has(r))}};d4=new WeakMap;var l6a=c6a,u6a=[" ",` -`,"\f","\r"," "],g6a=new l6a(u6a),V1i=g6a,A6a=/^.$/su;function d6a(e,t){return e=p6a(e,t),e=I6a(e),e=m6a(e,t),e=C6a(e,t),e=h6a(e),e}function p6a(e,t){return ZNe(e,r=>r.type!=="text"||r.value==="*"||r.value==="_"||!A6a.test(r.value)||r.position.end.offset-r.position.start.offset===r.value.length?r:{...r,value:t.originalText.slice(r.position.start.offset,r.position.end.offset)})}function f6a(e,t,r){return ZNe(e,n=>{if(!n.children)return n;let a=n.children.reduce((o,l)=>{let A=p4(!1,o,-1);return A&&t(A,l)?o.splice(-1,1,r(A,l)):o.push(l),o},[]);return{...n,children:a}})}function I6a(e){return f6a(e,(t,r)=>t.type==="text"&&r.type==="text",(t,r)=>({type:"text",value:t.value+r.value,position:{start:t.position.start,end:r.position.end}}))}function h6a(e){return ZNe(e,(t,r,[n])=>{if(t.type!=="text")return t;let{value:a}=t;return n.type==="paragraph"&&(r===0&&(a=V1i.trimStart(a)),r===n.children.length-1&&(a=V1i.trimEnd(a))),{type:"sentence",position:t.position,children:y2i(a)}})}function m6a(e,t){return ZNe(e,(r,n,a)=>{if(r.type==="code"){let o=/^\n?(?: {4,}|\t)/u.test(t.originalText.slice(r.position.start.offset,r.position.end.offset));if(r.isIndented=o,o)for(let l=0;l{if(a.type==="list"&&a.children.length>0){for(let A=0;A1)return!0;let A=r(o);if(A===-1)return!1;if(a.children.length===1)return A%t.tabWidth===0;let f=r(l);return A!==f?!1:A%t.tabWidth===0?!0:oJe(l,t).leadingSpaces.length>1}}var _6a=d6a;function y6a(e,t){let r=[""];return e.each(()=>{let{node:n}=e,a=t();switch(n.type){case"whitespace":if(Rce(a)!==Qme){r.push(a,"");break}default:r.push([r.pop(),a])}},"children"),lNr(r)}var b6a=new Set(["heading","tableCell","link","wikiLink"]),W1i=new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");function E6a({parent:e}){if(e.usesCJSpaces===void 0){let t={" ":0,"":0},{children:r}=e;for(let n=1;nt[""]}return e.usesCJSpaces}function S6a(e,t){if(t)return!0;let{previous:r,next:n}=e;if(!r||!n)return!0;let a=r.kind,o=n.kind;return O1i(a)&&O1i(o)||a===TNe&&o===Gee||o===TNe&&a===Gee?!0:a===Ybt||o===Ybt||a===Gee&&o===Gee?!1:W1i.has(n.value[0])||W1i.has(p4(!1,r.value,-1))?!0:r.hasTrailingPunctuation||n.hasLeadingPunctuation?!1:E6a(e)}function O1i(e){return e===cJe||e===TNe}function v6a(e,t,r,n){if(r!=="always"||e.hasAncestor(l=>b6a.has(l.type)))return!1;if(n)return t!=="";let{previous:a,next:o}=e;return!a||!o?!0:t===""?!1:a.kind===TNe&&o.kind===Gee||o.kind===TNe&&a.kind===Gee?!0:!(a.isCJ||o.isCJ)}function P1i(e,t,r,n){if(r==="preserve"&&t===` -`)return ZR;let a=t===" "||t===` -`&&S6a(e,n);return v6a(e,t,r,n)?a?A2i:d2i:a?" ":""}var B6a=new Set(["listItem","definition"]);function w6a(e,t,r){var n,a;let{node:o}=e;if(x6a(e)){let l=[""],A=y2i(t.originalText.slice(o.position.start.offset,o.position.end.offset));for(let f of A){if(f.type==="word"){l.push([l.pop(),f.value]);continue}let I=P1i(e,f.value,t.proseWrap,!0);if(Rce(I)===Qme){l.push([l.pop(),I]);continue}l.push(I,"")}return lNr(l)}switch(o.type){case"front-matter":return t.originalText.slice(o.position.start.offset,o.position.end.offset);case"root":return o.children.length===0?"":[N6a(e,t,r),ZR];case"paragraph":return o6a(e,t,r);case"sentence":return y6a(e,r);case"word":{let l=ZG(!1,ZG(!1,o.value,"*",String.raw`\*`),new RegExp([`(^|${sJe.source})(_+)`,`(_+)(${sJe.source}|$)`].join("|"),"gu"),(I,C,b,E,N)=>ZG(!1,b?`${C}${b}`:`${E}${N}`,"_",String.raw`\_`)),A=(I,C,b)=>I.type==="sentence"&&b===0,f=(I,C,b)=>L1i(I.children[b-1]);return l!==o.value&&(e.match(void 0,A,f)||e.match(void 0,A,(I,C,b)=>I.type==="emphasis"&&b===0,f))&&(l=l.replace(/^(\\?[*_])+/u,I=>ZG(!1,I,"\\",""))),l}case"whitespace":{let{next:l}=e,A=l&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/u.test(l.value)?"never":t.proseWrap;return P1i(e,o.value,A)}case"emphasis":{let l;if(L1i(o.children[0]))l=t.originalText[o.position.start.offset];else{let{previous:A,next:f}=e;l=A?.type==="sentence"&&((n=p4(!1,A.children,-1))==null?void 0:n.type)==="word"&&!p4(!1,A.children,-1).hasTrailingPunctuation||f?.type==="sentence"&&((a=f.children[0])==null?void 0:a.type)==="word"&&!f.children[0].hasLeadingPunctuation||e.hasAncestor(I=>I.type==="emphasis")?"*":"_"}return[l,yV(e,t,r),l]}case"strong":return["**",yV(e,t,r),"**"];case"delete":return["~~",yV(e,t,r),"~~"];case"inlineCode":{let l=t.proseWrap==="preserve"?o.value:ZG(!1,o.value,` -`," "),A=f8a(l,"`"),f="`".repeat(A||1),I=l.startsWith("`")||l.endsWith("`")||/^[\n ]/u.test(l)&&/[\n ]$/u.test(l)&&/[^\n ]/u.test(l)?" ":"";return[f,I,l,I,f]}case"wikiLink":{let l="";return t.proseWrap==="preserve"?l=o.value:l=ZG(!1,o.value,/[\t\n]+/gu," "),["[[",l,"]]"]}case"link":switch(t.originalText[o.position.start.offset]){case"<":{let l="mailto:";return["<",o.url.startsWith(l)&&t.originalText.slice(o.position.start.offset+1,o.position.start.offset+1+l.length)!==l?o.url.slice(l.length):o.url,">"]}case"[":return["[",yV(e,t,r),"](",jRr(o.url,")"),Vbt(o.title,t),")"];default:return t.originalText.slice(o.position.start.offset,o.position.end.offset)}case"image":return["![",o.alt||"","](",jRr(o.url,")"),Vbt(o.title,t),")"];case"blockquote":return["> ",Yme("> ",yV(e,t,r))];case"heading":return["#".repeat(o.depth)+" ",yV(e,t,r)];case"code":{if(o.isIndented){let f=" ".repeat(4);return Yme(f,[f,vNe(o.value,ZR)])}let l=t.__inJsTemplate?"~":"`",A=l.repeat(Math.max(3,f2i(o.value,l)+1));return[A,o.lang||"",o.meta?" "+o.meta:"",ZR,vNe(b2i(o,t.originalText),ZR),ZR,A]}case"html":{let{parent:l,isLast:A}=e,f=l.type==="root"&&A?o.value.trimEnd():o.value,I=/^$/su.test(f);return vNe(f,I?ZR:Obt($Rr))}case"list":{let l=H1i(o,e.parent),A=V8a(o,t);return yV(e,t,r,{processor(f){let I=b(),C=f.node;if(C.children.length===2&&C.children[1].type==="html"&&C.children[0].position.start.column!==C.children[1].position.start.column)return[I,M1i(f,t,r,I)];return[I,Yme(" ".repeat(I.length),M1i(f,t,r,I))];function b(){let E=o.ordered?(f.isFirst?o.start:A?1:o.start+f.index)+(l%2===0?". ":") "):l%2===0?"- ":"* ";return(o.isAligned||o.hasIndentedCodeblock)&&o.ordered?T6a(E,t):E}}})}case"thematicBreak":{let{ancestors:l}=e,A=l.findIndex(f=>f.type==="list");return A===-1?"---":H1i(l[A],l[A+1])%2===0?"***":"---"}case"linkReference":return["[",yV(e,t,r),"]",o.referenceType==="full"?zRr(o):o.referenceType==="collapsed"?"[]":""];case"imageReference":switch(o.referenceType){case"full":return["![",o.alt||"","]",zRr(o)];default:return["![",o.alt,"]",o.referenceType==="collapsed"?"[]":""]}case"definition":{let l=t.proseWrap==="always"?A2i:" ";return Lbt([zRr(o),":",qRr([l,jRr(o.url),o.title===null?"":[l,Vbt(o.title,t,!1)]])])}case"footnote":return["[^",yV(e,t,r),"]"];case"footnoteReference":return J1i(o);case"footnoteDefinition":{let l=o.children.length===1&&o.children[0].type==="paragraph"&&(t.proseWrap==="never"||t.proseWrap==="preserve"&&o.children[0].position.start.line===o.children[0].position.end.line);return[J1i(o),": ",l?yV(e,t,r):Lbt([Yme(" ".repeat(4),yV(e,t,r,{processor:({isFirst:A})=>A?Lbt([d2i,r()]):r()}))])]}case"table":return s6a(e,t,r);case"tableCell":return yV(e,t,r);case"break":return/\s/u.test(t.originalText[o.position.start.offset])?[" ",Obt($Rr)]:["\\",ZR];case"liquidNode":return vNe(o.value,ZR);case"import":case"export":case"jsx":return o.value;case"esComment":return["{/* ",o.value," */}"];case"math":return["$$",ZR,o.value?[vNe(o.value,ZR),ZR]:"","$$"];case"inlineMath":return t.originalText.slice(Mbt(o),Hbt(o));case"tableRow":case"listItem":case"text":default:throw new C8a(o,"Markdown")}}function M1i(e,t,r,n){let{node:a}=e,o=a.checked===null?"":a.checked?"[x] ":"[ ] ";return[o,yV(e,t,r,{processor({node:l,isFirst:A}){if(A&&l.type!=="list")return Yme(" ".repeat(o.length),r());let f=" ".repeat(F6a(t.tabWidth-n.length,0,3));return[f,Yme(f,r())]}})]}function T6a(e,t){let r=n();return e+" ".repeat(r>=4?0:r);function n(){let a=e.length%t.tabWidth;return a===0?0:t.tabWidth-a}}function H1i(e,t){return R6a(e,t,r=>r.ordered===e.ordered)}function R6a(e,t,r){let n=-1;for(let a of t.children)if(a.type===e.type&&r(a)?n++:n=-1,a===e)return n}function N6a(e,t,r){let n=[],a=null,{children:o}=e.node;for(let[l,A]of o.entries())switch(dNr(A)){case"start":a===null&&(a={index:l,offset:A.position.end.offset});break;case"end":a!==null&&(n.push({start:a,end:{index:l,offset:A.position.start.offset}}),a=null);break;default:break}return yV(e,t,r,{processor({index:l}){if(n.length>0){let A=n[0];if(l===A.start.index)return[Y1i(o[A.start.index]),t.originalText.slice(A.start.offset,A.end.offset),Y1i(o[A.end.index])];if(A.start.index{let l=a(e);l!==!1&&(o.length>0&&D6a(e)&&(o.push(ZR),(k6a(e,t)||X1i(e))&&o.push(ZR),X1i(e)&&o.push(ZR)),o.push(l))},"children"),o}function Y1i(e){if(e.type==="html")return e.value;if(e.type==="paragraph"&&Array.isArray(e.children)&&e.children.length===1&&e.children[0].type==="esComment")return["{/* ",e.children[0].value," */}"]}function dNr(e){let t;if(e.type==="html")t=e.value.match(/^$/u);else{let r;e.type==="esComment"?r=e:e.type==="paragraph"&&e.children.length===1&&e.children[0].type==="esComment"&&(r=e.children[0]),r&&(t=r.value.match(/^prettier-ignore(?:-(start|end))?$/u))}return t?t[1]||"next":!1}function D6a({node:e,parent:t}){let r=C2i.has(e.type),n=e.type==="html"&&_2i.has(t.type);return!r&&!n}function Q1i(e,t){return e.type==="listItem"&&(e.spread||t.originalText.charAt(e.position.end.offset-1)===` -`)}function k6a({node:e,previous:t,parent:r},n){if(Q1i(t,n))return!0;let a=t.type===e.type&&B6a.has(e.type),o=r.type==="listItem"&&!Q1i(r,n),l=dNr(t)==="next",A=e.type==="html"&&t.type==="html"&&t.position.end.line+1===e.position.start.line,f=e.type==="html"&&r.type==="listItem"&&t.type==="paragraph"&&t.position.end.line+1===e.position.start.line;return!(a||o||l||A||f)}function X1i({node:e,previous:t}){let r=t.type==="list",n=e.type==="code"&&e.isIndented;return r&&n}function x6a(e){let t=e.findAncestor(r=>r.type==="linkReference"||r.type==="imageReference");return t&&(t.type!=="linkReference"||t.referenceType!=="full")}var G6a=(e,t)=>{for(let r of t)e=ZG(!1,e,r,encodeURIComponent(r));return e};function jRr(e,t=[]){let r=[" ",...Array.isArray(t)?t:[t]];return new RegExp(r.map(n=>Xbt(n)).join("|"),"u").test(e)?`<${G6a(e,"<>")}>`:e}function Vbt(e,t,r=!0){if(!e)return"";if(r)return" "+Vbt(e,t,!1);if(e=ZG(!1,e,/\\(?=["')])/gu,""),e.includes('"')&&e.includes("'")&&!e.includes(")"))return`(${e})`;let n=h8a(e,t.singleQuote);return e=ZG(!1,e,"\\","\\\\"),e=ZG(!1,e,n,`\\${n}`),`${n}${e}${n}`}function F6a(e,t,r){return Math.max(t,Math.min(e,r))}function Z6a(e){return e.index>0&&dNr(e.previous)==="next"}function zRr(e){return`[${(0,t8a.default)(e.label)}]`}function J1i(e){return`[^${e.label}]`}var L6a={preprocess:_6a,print:w6a,embed:O8a,massageAstNode:T8a,hasPrettierIgnore:Z6a,insertPragma:B8a,getVisitorKeys:U8a},V6a=L6a,S2i=[{linguistLanguageId:222,name:"Markdown",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr","README"],tmScope:"text.md",parsers:["markdown"],vscodeLanguageIds:["markdown"]},{linguistLanguageId:222,name:"MDX",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".mdx"],filenames:[],tmScope:"text.md",parsers:["mdx"],vscodeLanguageIds:["mdx"]}],U1i={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},W6a={proseWrap:U1i.proseWrap,singleQuote:U1i.singleQuote},v2i=W6a,pNr={};q1i(pNr,{markdown:()=>j1i,mdx:()=>sja,remark:()=>j1i});var O6a=RNe(NUa(),1),P6a=RNe(xUa(),1),M6a=RNe(WKa(),1),H6a=RNe(qKa(),1),Y6a=/^import\s/u,Q6a=/^export\s/u,X6a=String.raw`[a-z][a-z0-9]*(\.[a-z][a-z0-9]*)*|`,J6a=/|/u,U6a=/^\{\s*\/\*(.*)\*\/\s*\}/u,K6a=` - -`,B2i=e=>Y6a.test(e),nNr=e=>Q6a.test(e),w2i=(e,t)=>{let r=t.indexOf(K6a),n=t.slice(0,r);if(nNr(n)||B2i(n))return e(n)({type:nNr(n)?"export":"import",value:n})},T2i=(e,t)=>{let r=U6a.exec(t);if(r)return e(r[0])({type:"esComment",value:r[1].trim()})};w2i.locator=e=>nNr(e)||B2i(e)?-1:1;T2i.locator=(e,t)=>e.indexOf("{",t);var j6a=function(){let{Parser:e}=this,{blockTokenizers:t,blockMethods:r,inlineTokenizers:n,inlineMethods:a}=e.prototype;t.esSyntax=w2i,n.esComment=T2i,r.splice(r.indexOf("paragraph"),0,"esSyntax"),a.splice(a.indexOf("text"),0,"esComment")},z6a=function(){let e=this.Parser.prototype;e.blockMethods=["frontMatter",...e.blockMethods],e.blockTokenizers.frontMatter=t;function t(r,n){let a=gNr(n);if(a.frontMatter)return r(a.frontMatter.raw)(a.frontMatter)}t.onlyAtStart=!0},q6a=z6a;function $6a(){return e=>ZNe(e,(t,r,[n])=>t.type!=="html"||J6a.test(t.value)||_2i.has(n.type)?t:{...t,type:"jsx"})}var eja=$6a,tja=function(){let e=this.Parser.prototype,t=e.inlineMethods;t.splice(t.indexOf("text"),0,"liquid"),e.inlineTokenizers.liquid=r;function r(n,a){let o=a.match(/^(\{%.*?%\}|\{\{.*?\}\})/su);if(o)return n(o[0])({type:"liquidNode",value:o[0]})}r.locator=function(n,a){return n.indexOf("{",a)}},rja=tja,nja=function(){let e="wikiLink",t=/^\[\[(?.+?)\]\]/su,r=this.Parser.prototype,n=r.inlineMethods;n.splice(n.indexOf("link"),0,e),r.inlineTokenizers.wikiLink=a;function a(o,l){let A=t.exec(l);if(A){let f=A.groups.linkContents.trim();return o(A[0])({type:e,value:f})}}a.locator=function(o,l){return o.indexOf("[",l)}},ija=nja;function R2i({isMDX:e}){return t=>{let r=(0,H6a.default)().use(M6a.default,{commonmark:!0,...e&&{blocks:[X6a]}}).use(O6a.default).use(q6a).use(P6a.default).use(e?j6a:K1i).use(rja).use(e?eja:K1i).use(ija);return r.run(r.parse(t))}}function K1i(){}var N2i={astFormat:"mdast",hasPragma:v8a,locStart:Mbt,locEnd:Hbt},j1i={...N2i,parse:R2i({isMDX:!1})},sja={...N2i,parse:R2i({isMDX:!0})},D2i={mdast:V6a},oja=l2i;var lCe={};Uf(lCe,{default:()=>onc,parsers:()=>Vce});var USi=Object.defineProperty,KSi=e=>{throw TypeError(e)},aja=(e,t,r)=>t in e?USi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,jSi=(e,t)=>{for(var r in t)USi(e,r,{get:t[r],enumerable:!0})},IJe=(e,t,r)=>aja(e,typeof t!="symbol"?t+"":t,r),cja=(e,t,r)=>t.has(e)||KSi("Cannot "+r),lja=(e,t,r)=>t.has(e)?KSi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Ig=(e,t,r)=>(cja(e,t,"access private method"),r),zSi={};jSi(zSi,{parsers:()=>Vce});var Vce={};jSi(Vce,{typescript:()=>snc});var uja=()=>()=>{},$Nr=uja,gja=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},XNe=gja,Aja="5.7",Z2=[],dja=new Map;function SJe(e){return e!==void 0?e.length:0}function SP(e,t){if(e!==void 0)for(let r=0;r0;return!1}function tDr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function mja(e,t,r=nDr){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let n=0;ne?.at(t):(e,t)=>{if(e!==void 0&&(t=NNr(e,t),t>1),f=r(e[A],A);switch(n(f,t)){case-1:o=A+1;break;case 0:return A;case 1:l=A-1;break}}return~o}function Bja(e,t,r,n,a){if(e&&e.length>0){let o=e.length;if(o>0){let l=n===void 0||n<0?0:n,A=a===void 0||l+a>o-1?o-1:l+a,f;for(arguments.length<=2?(f=e[l],l++):f=r;l<=A;)f=t(f,e[l],l),l++;return f}}return r}var tvi=Object.prototype.hasOwnProperty;function T6(e,t){return tvi.call(e,t)}function wja(e){let t=[];for(let r in e)tvi.call(e,r)&&t.push(r);return t}function Tja(){let e=new Map;return e.add=Rja,e.remove=Nja,e}function Rja(e,t){let r=this.get(e);return r!==void 0?r.push(t):this.set(e,r=[t]),r}function Nja(e,t){let r=this.get(e);r!==void 0&&(Wja(r,t),r.length||this.delete(e))}function Mee(e){return Array.isArray(e)}function INr(e){return Mee(e)?e:[e]}function Dja(e,t){return e!==void 0&&t(e)?e:void 0}function v6(e,t){return e!==void 0&&t(e)?e:Zo.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Zo.getFunctionName(t)}'.`)}function $Ne(e){}function kja(){return!0}function PE(e){return e}function x2i(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function cH(e){let t=new Map;return r=>{let n=`${typeof r}:${r}`,a=t.get(n);return a===void 0&&!t.has(n)&&(a=e(r),t.set(n,a)),a}}function nDr(e,t){return e===t}function iDr(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function xja(e,t){return nDr(e,t)}function Gja(e,t){return e===t?0:e===void 0?-1:t===void 0?1:er?A-r:1),C=Math.floor(t.length>r+A?r+A:t.length);a[0]=A;let b=A;for(let N=1;Nr)return;let E=n;n=a,a=E}let l=n[t.length];return l>r?void 0:l}function Lja(e,t,r){let n=e.length-t.length;return n>=0&&(r?iDr(e.slice(n),t):e.indexOf(t,n)===n)}function Vja(e,t){e[t]=e[e.length-1],e.pop()}function Wja(e,t){return Oja(e,r=>r===t)}function Oja(e,t){for(let r=0;r{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(Ft){return e.currentLogLevel<=Ft}e.shouldLog=r;function n(Ft,zr){e.loggingHost&&r(Ft)&&e.loggingHost.log(Ft,zr)}function a(Ft){n(3,Ft)}e.log=a,(Ft=>{function zr(ps){n(1,ps)}Ft.error=zr;function Rn(ps){n(2,ps)}Ft.warn=Rn;function Pr(ps){n(3,ps)}Ft.log=Pr;function Qi(ps){n(4,ps)}Ft.trace=Qi})(a=e.log||(e.log={}));let o={};function l(){return t}e.getAssertionLevel=l;function A(Ft){let zr=t;if(t=Ft,Ft>zr)for(let Rn of wja(o)){let Pr=o[Rn];Pr!==void 0&&e[Rn]!==Pr.assertion&&Ft>=Pr.level&&(e[Rn]=Pr,o[Rn]=void 0)}}e.setAssertionLevel=A;function f(Ft){return t>=Ft}e.shouldAssert=f;function I(Ft,zr){return f(Ft)?!0:(o[zr]={level:Ft,assertion:e[zr]},e[zr]=$Ne,!1)}function C(Ft,zr){debugger;let Rn=new Error(Ft?`Debug Failure. ${Ft}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Rn,zr||C),Rn}e.fail=C;function b(Ft,zr,Rn){return C(`${zr||"Unexpected node."}\r +`}}var t6a=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function r6a(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function n6a(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var i6a=e=>!(r6a(e)||n6a(e)),s6a=/[^\x20-\x7F]/u;function o6a(e){if(!e)return 0;if(!s6a.test(e))return e.length;e=e.replace(t6a()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=i6a(n)?1:2)}return t}var pNr=o6a,EV=Symbol("MODE_BREAK"),S6=Symbol("MODE_FLAT"),SNe=Symbol("cursor"),rNr=Symbol("DOC_FILL_PRINTED_LENGTH");function G2i(){return{value:"",length:0,queue:[]}}function a6a(e,t){return nNr(e,{type:"indent"},t)}function c6a(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||G2i():t<0?nNr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:nNr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function nNr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function iNr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===SNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(SNe);return t}function Gbt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=Nce(C);switch(b){case Xme:f.push(C),r-=pNr(C);break;case Tce:case Jme:{let E=b===Tce?C:C.parts,N=C[rNr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case DNe:case kNe:case dJe:case IJe:A.push({mode:I,doc:C.contents});break;case AJe:r+=iNr(f);break;case Rce:{if(o&&C.break)return!1;let E=C.break?EV:I,N=C.expandedStates&&E===EV?f4(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case wce:{let E=(C.groupId?a[C.groupId]||S6:I)===EV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Lee:if(I===EV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case pJe:n=!0;break;case fJe:if(n)return!1;break}}return!1}function l6a(e,t){let r={},n=t.printWidth,a=e6a(t.endOfLine),o=0,l=[{ind:G2i(),mode:EV,doc:e}],A=[],f=!1,I=[],C=0;for(p8a(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(Nce(B)){case Xme:{let F=a!==` +`?LG(!1,B,` +`,a):B;A.push(F),l.length>0&&(o+=pNr(F));break}case Tce:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case Qbt:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(SNe),C++;break;case DNe:l.push({ind:a6a(E,t),mode:N,doc:B.contents});break;case kNe:l.push({ind:c6a(E,B.n,t),mode:N,doc:B.contents});break;case AJe:o-=iNr(A);break;case Rce:switch(N){case S6:if(!f){l.push({ind:E,mode:B.break?EV:S6,doc:B.contents});break}case EV:{f=!1;let F={ind:E,mode:S6,doc:B.contents},Q=n-o,J=I.length>0;if(!B.break&&Gbt(F,l,Q,J,r))l.push(F);else if(B.expandedStates){let ae=f4(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:EV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:EV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:S6,doc:ce};if(Gbt(fe,l,Q,J,r)){l.push(fe);break}}}else l.push({ind:E,mode:EV,doc:B.contents});break}}B.id&&(r[B.id]=f4(!1,l,-1).mode);break;case Jme:{let F=n-o,Q=B[rNr]??0,{parts:J}=B,ae=J.length-Q;if(ae===0)break;let ne=J[Q+0],ce=J[Q+1],fe={ind:E,mode:S6,doc:ne},ue={ind:E,mode:EV,doc:ne},de=Gbt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:S6,doc:ce},Se={ind:E,mode:EV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=J[Q+2],k={ind:E,mode:N,doc:{...B,[rNr]:Q+2}};Gbt({ind:E,mode:S6,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case wce:case dJe:{let F=B.groupId?r[B.groupId]:N;if(F===EV){let Q=B.type===wce?B.breakContents:B.negate?B.contents:eNr(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===S6){let Q=B.type===wce?B.flatContents:B.negate?eNr(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case pJe:I.push({ind:E,mode:N,doc:B.contents});break;case fJe:I.length>0&&l.push({ind:E,mode:N,doc:ANr});break;case Lee:switch(N){case S6:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case EV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=iNr(A),A.push(a+E.value),o=E.length);break}break;case IJe:l.push({ind:E,mode:N,doc:B.contents});break;case xNe:break;default:throw new Lbt(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(SNe);if(b!==-1){let E=A.indexOf(SNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==SNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function u6a(e,t,r){let{node:n}=e,a=[],o=e.map(()=>e.map(({index:b})=>{let E=l6a(r(),t).formatted,N=pNr(E);return a[b]=Math.max(a[b]??3,N),{text:E,width:N}},"children"),"children"),l=f(!1);if(t.proseWrap!=="never")return[Wbt,l];let A=f(!0);return[Wbt,Fbt(I8a(A,l))];function f(b){return v2i(ANr,[C(o[0],b),I(b),...o.slice(1).map(E=>C(E,b))].map(E=>`| ${E.join(" | ")} |`))}function I(b){return a.map((E,N)=>{let B=n.align[N],F=B==="center"||B==="left"?":":"-",Q=B==="center"||B==="right"?":":"-",J=b?"-":"-".repeat(E-2);return`${F}${J}${Q}`})}function C(b,E){return b.map(({text:N,width:B},F)=>{if(E)return N;let Q=a[F]-B,J=n.align[F],ae=0;J==="right"?ae=Q:J==="center"&&(ae=Math.floor(Q/2));let ne=Q-ae;return`${" ".repeat(ae)}${N}${" ".repeat(ne)}`})}}function g6a(e,t,r){let n=e.map(r,"children");return A6a(n)}function A6a(e){let t=[""];return function r(n){for(let a of n){let o=Nce(a);if(o===Tce){r(a);continue}let l=a,A=[];o===Jme&&([l,...A]=a.parts),t.push([t.pop(),l],...A)}}(e),gNr(t)}var p4,d6a=class{constructor(e){xUa(this,p4),GUa(this,p4,new Set(e))}getLeadingWhitespaceCount(e){let t=Bce(this,p4),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return Bce(this,p4).has(e.charAt(0))}hasTrailingWhitespace(e){return Bce(this,p4).has(f4(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Ybt([...Bce(this,p4)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=Bce(this,p4);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=Bce(this,p4);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=Bce(this,p4);return Array.prototype.every.call(e,r=>t.has(r))}};p4=new WeakMap;var p6a=d6a,f6a=[" ",` +`,"\f","\r"," "],I6a=new p6a(f6a),K1i=I6a,h6a=/^.$/su;function m6a(e,t){return e=C6a(e,t),e=y6a(e),e=E6a(e,t),e=S6a(e,t),e=b6a(e),e}function C6a(e,t){return GNe(e,r=>r.type!=="text"||r.value==="*"||r.value==="_"||!h6a.test(r.value)||r.position.end.offset-r.position.start.offset===r.value.length?r:{...r,value:t.originalText.slice(r.position.start.offset,r.position.end.offset)})}function _6a(e,t,r){return GNe(e,n=>{if(!n.children)return n;let a=n.children.reduce((o,l)=>{let A=f4(!1,o,-1);return A&&t(A,l)?o.splice(-1,1,r(A,l)):o.push(l),o},[]);return{...n,children:a}})}function y6a(e){return _6a(e,(t,r)=>t.type==="text"&&r.type==="text",(t,r)=>({type:"text",value:t.value+r.value,position:{start:t.position.start,end:r.position.end}}))}function b6a(e){return GNe(e,(t,r,[n])=>{if(t.type!=="text")return t;let{value:a}=t;return n.type==="paragraph"&&(r===0&&(a=K1i.trimStart(a)),r===n.children.length-1&&(a=K1i.trimEnd(a))),{type:"sentence",position:t.position,children:k2i(a)}})}function E6a(e,t){return GNe(e,(r,n,a)=>{if(r.type==="code"){let o=/^\n?(?: {4,}|\t)/u.test(t.originalText.slice(r.position.start.offset,r.position.end.offset));if(r.isIndented=o,o)for(let l=0;l{if(a.type==="list"&&a.children.length>0){for(let A=0;A1)return!0;let A=r(o);if(A===-1)return!1;if(a.children.length===1)return A%t.tabWidth===0;let f=r(l);return A!==f?!1:A%t.tabWidth===0?!0:cJe(l,t).leadingSpaces.length>1}}var v6a=m6a;function B6a(e,t){let r=[""];return e.each(()=>{let{node:n}=e,a=t();switch(n.type){case"whitespace":if(Nce(a)!==Xme){r.push(a,"");break}default:r.push([r.pop(),a])}},"children"),gNr(r)}var w6a=new Set(["heading","tableCell","link","wikiLink"]),j1i=new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");function T6a({parent:e}){if(e.usesCJSpaces===void 0){let t={" ":0,"":0},{children:r}=e;for(let n=1;nt[""]}return e.usesCJSpaces}function R6a(e,t){if(t)return!0;let{previous:r,next:n}=e;if(!r||!n)return!0;let a=r.kind,o=n.kind;return z1i(a)&&z1i(o)||a===BNe&&o===Fee||o===BNe&&a===Fee?!0:a===Mbt||o===Mbt||a===Fee&&o===Fee?!1:j1i.has(n.value[0])||j1i.has(f4(!1,r.value,-1))?!0:r.hasTrailingPunctuation||n.hasLeadingPunctuation?!1:T6a(e)}function z1i(e){return e===uJe||e===BNe}function N6a(e,t,r,n){if(r!=="always"||e.hasAncestor(l=>w6a.has(l.type)))return!1;if(n)return t!=="";let{previous:a,next:o}=e;return!a||!o?!0:t===""?!1:a.kind===BNe&&o.kind===Fee||o.kind===BNe&&a.kind===Fee?!0:!(a.isCJ||o.isCJ)}function q1i(e,t,r,n){if(r==="preserve"&&t===` +`)return LR;let a=t===" "||t===` +`&&R6a(e,n);return N6a(e,t,r,n)?a?E2i:S2i:a?" ":""}var D6a=new Set(["listItem","definition"]);function k6a(e,t,r){var n,a;let{node:o}=e;if(V6a(e)){let l=[""],A=k2i(t.originalText.slice(o.position.start.offset,o.position.end.offset));for(let f of A){if(f.type==="word"){l.push([l.pop(),f.value]);continue}let I=q1i(e,f.value,t.proseWrap,!0);if(Nce(I)===Xme){l.push([l.pop(),I]);continue}l.push(I,"")}return gNr(l)}switch(o.type){case"front-matter":return t.originalText.slice(o.position.start.offset,o.position.end.offset);case"root":return o.children.length===0?"":[F6a(e,t,r),LR];case"paragraph":return g6a(e,t,r);case"sentence":return B6a(e,r);case"word":{let l=LG(!1,LG(!1,o.value,"*",String.raw`\*`),new RegExp([`(^|${aJe.source})(_+)`,`(_+)(${aJe.source}|$)`].join("|"),"gu"),(I,C,b,E,N)=>LG(!1,b?`${C}${b}`:`${E}${N}`,"_",String.raw`\_`)),A=(I,C,b)=>I.type==="sentence"&&b===0,f=(I,C,b)=>U1i(I.children[b-1]);return l!==o.value&&(e.match(void 0,A,f)||e.match(void 0,A,(I,C,b)=>I.type==="emphasis"&&b===0,f))&&(l=l.replace(/^(\\?[*_])+/u,I=>LG(!1,I,"\\",""))),l}case"whitespace":{let{next:l}=e,A=l&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/u.test(l.value)?"never":t.proseWrap;return q1i(e,o.value,A)}case"emphasis":{let l;if(U1i(o.children[0]))l=t.originalText[o.position.start.offset];else{let{previous:A,next:f}=e;l=A?.type==="sentence"&&((n=f4(!1,A.children,-1))==null?void 0:n.type)==="word"&&!f4(!1,A.children,-1).hasTrailingPunctuation||f?.type==="sentence"&&((a=f.children[0])==null?void 0:a.type)==="word"&&!f.children[0].hasLeadingPunctuation||e.hasAncestor(I=>I.type==="emphasis")?"*":"_"}return[l,bV(e,t,r),l]}case"strong":return["**",bV(e,t,r),"**"];case"delete":return["~~",bV(e,t,r),"~~"];case"inlineCode":{let l=t.proseWrap==="preserve"?o.value:LG(!1,o.value,` +`," "),A=_8a(l,"`"),f="`".repeat(A||1),I=l.startsWith("`")||l.endsWith("`")||/^[\n ]/u.test(l)&&/[\n ]$/u.test(l)&&/[^\n ]/u.test(l)?" ":"";return[f,I,l,I,f]}case"wikiLink":{let l="";return t.proseWrap==="preserve"?l=o.value:l=LG(!1,o.value,/[\t\n]+/gu," "),["[[",l,"]]"]}case"link":switch(t.originalText[o.position.start.offset]){case"<":{let l="mailto:";return["<",o.url.startsWith(l)&&t.originalText.slice(o.position.start.offset+1,o.position.start.offset+1+l.length)!==l?o.url.slice(l.length):o.url,">"]}case"[":return["[",bV(e,t,r),"](",qRr(o.url,")"),Zbt(o.title,t),")"];default:return t.originalText.slice(o.position.start.offset,o.position.end.offset)}case"image":return["![",o.alt||"","](",qRr(o.url,")"),Zbt(o.title,t),")"];case"blockquote":return["> ",Qme("> ",bV(e,t,r))];case"heading":return["#".repeat(o.depth)+" ",bV(e,t,r)];case"code":{if(o.isIndented){let f=" ".repeat(4);return Qme(f,[f,ENe(o.value,LR)])}let l=t.__inJsTemplate?"~":"`",A=l.repeat(Math.max(3,B2i(o.value,l)+1));return[A,o.lang||"",o.meta?" "+o.meta:"",LR,ENe(x2i(o,t.originalText),LR),LR,A]}case"html":{let{parent:l,isLast:A}=e,f=l.type==="root"&&A?o.value.trimEnd():o.value,I=/^$/su.test(f);return ENe(f,I?LR:Vbt(tNr))}case"list":{let l=e2i(o,e.parent),A=H8a(o,t);return bV(e,t,r,{processor(f){let I=b(),C=f.node;if(C.children.length===2&&C.children[1].type==="html"&&C.children[0].position.start.column!==C.children[1].position.start.column)return[I,$1i(f,t,r,I)];return[I,Qme(" ".repeat(I.length),$1i(f,t,r,I))];function b(){let E=o.ordered?(f.isFirst?o.start:A?1:o.start+f.index)+(l%2===0?". ":") "):l%2===0?"- ":"* ";return(o.isAligned||o.hasIndentedCodeblock)&&o.ordered?x6a(E,t):E}}})}case"thematicBreak":{let{ancestors:l}=e,A=l.findIndex(f=>f.type==="list");return A===-1?"---":e2i(l[A],l[A+1])%2===0?"***":"---"}case"linkReference":return["[",bV(e,t,r),"]",o.referenceType==="full"?$Rr(o):o.referenceType==="collapsed"?"[]":""];case"imageReference":switch(o.referenceType){case"full":return["![",o.alt||"","]",$Rr(o)];default:return["![",o.alt,"]",o.referenceType==="collapsed"?"[]":""]}case"definition":{let l=t.proseWrap==="always"?E2i:" ";return Fbt([$Rr(o),":",eNr([l,qRr(o.url),o.title===null?"":[l,Zbt(o.title,t,!1)]])])}case"footnote":return["[^",bV(e,t,r),"]"];case"footnoteReference":return i2i(o);case"footnoteDefinition":{let l=o.children.length===1&&o.children[0].type==="paragraph"&&(t.proseWrap==="never"||t.proseWrap==="preserve"&&o.children[0].position.start.line===o.children[0].position.end.line);return[i2i(o),": ",l?bV(e,t,r):Fbt([Qme(" ".repeat(4),bV(e,t,r,{processor:({isFirst:A})=>A?Fbt([S2i,r()]):r()}))])]}case"table":return u6a(e,t,r);case"tableCell":return bV(e,t,r);case"break":return/\s/u.test(t.originalText[o.position.start.offset])?[" ",Vbt(tNr)]:["\\",LR];case"liquidNode":return ENe(o.value,LR);case"import":case"export":case"jsx":return o.value;case"esComment":return["{/* ",o.value," */}"];case"math":return["$$",LR,o.value?[ENe(o.value,LR),LR]:"","$$"];case"inlineMath":return t.originalText.slice(Obt(o),Pbt(o));case"tableRow":case"listItem":case"text":default:throw new S8a(o,"Markdown")}}function $1i(e,t,r,n){let{node:a}=e,o=a.checked===null?"":a.checked?"[x] ":"[ ] ";return[o,bV(e,t,r,{processor({node:l,isFirst:A}){if(A&&l.type!=="list")return Qme(" ".repeat(o.length),r());let f=" ".repeat(O6a(t.tabWidth-n.length,0,3));return[f,Qme(f,r())]}})]}function x6a(e,t){let r=n();return e+" ".repeat(r>=4?0:r);function n(){let a=e.length%t.tabWidth;return a===0?0:t.tabWidth-a}}function e2i(e,t){return G6a(e,t,r=>r.ordered===e.ordered)}function G6a(e,t,r){let n=-1;for(let a of t.children)if(a.type===e.type&&r(a)?n++:n=-1,a===e)return n}function F6a(e,t,r){let n=[],a=null,{children:o}=e.node;for(let[l,A]of o.entries())switch(fNr(A)){case"start":a===null&&(a={index:l,offset:A.position.end.offset});break;case"end":a!==null&&(n.push({start:a,end:{index:l,offset:A.position.start.offset}}),a=null);break;default:break}return bV(e,t,r,{processor({index:l}){if(n.length>0){let A=n[0];if(l===A.start.index)return[t2i(o[A.start.index]),t.originalText.slice(A.start.offset,A.end.offset),t2i(o[A.end.index])];if(A.start.index{let l=a(e);l!==!1&&(o.length>0&&Z6a(e)&&(o.push(LR),(L6a(e,t)||n2i(e))&&o.push(LR),n2i(e)&&o.push(LR)),o.push(l))},"children"),o}function t2i(e){if(e.type==="html")return e.value;if(e.type==="paragraph"&&Array.isArray(e.children)&&e.children.length===1&&e.children[0].type==="esComment")return["{/* ",e.children[0].value," */}"]}function fNr(e){let t;if(e.type==="html")t=e.value.match(/^$/u);else{let r;e.type==="esComment"?r=e:e.type==="paragraph"&&e.children.length===1&&e.children[0].type==="esComment"&&(r=e.children[0]),r&&(t=r.value.match(/^prettier-ignore(?:-(start|end))?$/u))}return t?t[1]||"next":!1}function Z6a({node:e,parent:t}){let r=N2i.has(e.type),n=e.type==="html"&&D2i.has(t.type);return!r&&!n}function r2i(e,t){return e.type==="listItem"&&(e.spread||t.originalText.charAt(e.position.end.offset-1)===` +`)}function L6a({node:e,previous:t,parent:r},n){if(r2i(t,n))return!0;let a=t.type===e.type&&D6a.has(e.type),o=r.type==="listItem"&&!r2i(r,n),l=fNr(t)==="next",A=e.type==="html"&&t.type==="html"&&t.position.end.line+1===e.position.start.line,f=e.type==="html"&&r.type==="listItem"&&t.type==="paragraph"&&t.position.end.line+1===e.position.start.line;return!(a||o||l||A||f)}function n2i({node:e,previous:t}){let r=t.type==="list",n=e.type==="code"&&e.isIndented;return r&&n}function V6a(e){let t=e.findAncestor(r=>r.type==="linkReference"||r.type==="imageReference");return t&&(t.type!=="linkReference"||t.referenceType!=="full")}var W6a=(e,t)=>{for(let r of t)e=LG(!1,e,r,encodeURIComponent(r));return e};function qRr(e,t=[]){let r=[" ",...Array.isArray(t)?t:[t]];return new RegExp(r.map(n=>Ybt(n)).join("|"),"u").test(e)?`<${W6a(e,"<>")}>`:e}function Zbt(e,t,r=!0){if(!e)return"";if(r)return" "+Zbt(e,t,!1);if(e=LG(!1,e,/\\(?=["')])/gu,""),e.includes('"')&&e.includes("'")&&!e.includes(")"))return`(${e})`;let n=b8a(e,t.singleQuote);return e=LG(!1,e,"\\","\\\\"),e=LG(!1,e,n,`\\${n}`),`${n}${e}${n}`}function O6a(e,t,r){return Math.max(t,Math.min(e,r))}function P6a(e){return e.index>0&&fNr(e.previous)==="next"}function $Rr(e){return`[${(0,o8a.default)(e.label)}]`}function i2i(e){return`[^${e.label}]`}var M6a={preprocess:v6a,print:k6a,embed:Q8a,massageAstNode:x8a,hasPrettierIgnore:P6a,insertPragma:D8a,getVisitorKeys:$8a},H6a=M6a,F2i=[{linguistLanguageId:222,name:"Markdown",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr","README"],tmScope:"text.md",parsers:["markdown"],vscodeLanguageIds:["markdown"]},{linguistLanguageId:222,name:"MDX",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".mdx"],filenames:[],tmScope:"text.md",parsers:["mdx"],vscodeLanguageIds:["mdx"]}],s2i={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Y6a={proseWrap:s2i.proseWrap,singleQuote:s2i.singleQuote},Z2i=Y6a,INr={};l2i(INr,{markdown:()=>a2i,mdx:()=>uja,remark:()=>a2i});var Q6a=wNe(FUa(),1),X6a=wNe(VUa(),1),J6a=wNe(YKa(),1),U6a=wNe(n8a(),1),K6a=/^import\s/u,j6a=/^export\s/u,z6a=String.raw`[a-z][a-z0-9]*(\.[a-z][a-z0-9]*)*|`,q6a=/|/u,$6a=/^\{\s*\/\*(.*)\*\/\s*\}/u,eja=` + +`,L2i=e=>K6a.test(e),sNr=e=>j6a.test(e),V2i=(e,t)=>{let r=t.indexOf(eja),n=t.slice(0,r);if(sNr(n)||L2i(n))return e(n)({type:sNr(n)?"export":"import",value:n})},W2i=(e,t)=>{let r=$6a.exec(t);if(r)return e(r[0])({type:"esComment",value:r[1].trim()})};V2i.locator=e=>sNr(e)||L2i(e)?-1:1;W2i.locator=(e,t)=>e.indexOf("{",t);var tja=function(){let{Parser:e}=this,{blockTokenizers:t,blockMethods:r,inlineTokenizers:n,inlineMethods:a}=e.prototype;t.esSyntax=V2i,n.esComment=W2i,r.splice(r.indexOf("paragraph"),0,"esSyntax"),a.splice(a.indexOf("text"),0,"esComment")},rja=function(){let e=this.Parser.prototype;e.blockMethods=["frontMatter",...e.blockMethods],e.blockTokenizers.frontMatter=t;function t(r,n){let a=dNr(n);if(a.frontMatter)return r(a.frontMatter.raw)(a.frontMatter)}t.onlyAtStart=!0},nja=rja;function ija(){return e=>GNe(e,(t,r,[n])=>t.type!=="html"||q6a.test(t.value)||D2i.has(n.type)?t:{...t,type:"jsx"})}var sja=ija,oja=function(){let e=this.Parser.prototype,t=e.inlineMethods;t.splice(t.indexOf("text"),0,"liquid"),e.inlineTokenizers.liquid=r;function r(n,a){let o=a.match(/^(\{%.*?%\}|\{\{.*?\}\})/su);if(o)return n(o[0])({type:"liquidNode",value:o[0]})}r.locator=function(n,a){return n.indexOf("{",a)}},aja=oja,cja=function(){let e="wikiLink",t=/^\[\[(?.+?)\]\]/su,r=this.Parser.prototype,n=r.inlineMethods;n.splice(n.indexOf("link"),0,e),r.inlineTokenizers.wikiLink=a;function a(o,l){let A=t.exec(l);if(A){let f=A.groups.linkContents.trim();return o(A[0])({type:e,value:f})}}a.locator=function(o,l){return o.indexOf("[",l)}},lja=cja;function O2i({isMDX:e}){return t=>{let r=(0,U6a.default)().use(J6a.default,{commonmark:!0,...e&&{blocks:[z6a]}}).use(Q6a.default).use(nja).use(X6a.default).use(e?tja:o2i).use(aja).use(e?sja:o2i).use(lja);return r.run(r.parse(t))}}function o2i(){}var P2i={astFormat:"mdast",hasPragma:N8a,locStart:Obt,locEnd:Pbt},a2i={...P2i,parse:O2i({isMDX:!1})},uja={...P2i,parse:O2i({isMDX:!0})},M2i={mdast:H6a},gja=_2i;var uCe={};Uf(uCe,{default:()=>gnc,parsers:()=>Wce});var svi=Object.defineProperty,ovi=e=>{throw TypeError(e)},Aja=(e,t,r)=>t in e?svi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,avi=(e,t)=>{for(var r in t)svi(e,r,{get:t[r],enumerable:!0})},mJe=(e,t,r)=>Aja(e,typeof t!="symbol"?t+"":t,r),dja=(e,t,r)=>t.has(e)||ovi("Cannot "+r),pja=(e,t,r)=>t.has(e)?ovi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Ig=(e,t,r)=>(dja(e,t,"access private method"),r),cvi={};avi(cvi,{parsers:()=>Wce});var Wce={};avi(Wce,{typescript:()=>unc});var fja=()=>()=>{},tDr=fja,Ija=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},YNe=Ija,hja="5.7",L2=[],mja=new Map;function BJe(e){return e!==void 0?e.length:0}function BP(e,t){if(e!==void 0)for(let r=0;r0;return!1}function nDr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function Eja(e,t,r=sDr){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let n=0;ne?.at(t):(e,t)=>{if(e!==void 0&&(t=kNr(e,t),t>1),f=r(e[A],A);switch(n(f,t)){case-1:o=A+1;break;case 0:return A;case 1:l=A-1;break}}return~o}function Dja(e,t,r,n,a){if(e&&e.length>0){let o=e.length;if(o>0){let l=n===void 0||n<0?0:n,A=a===void 0||l+a>o-1?o-1:l+a,f;for(arguments.length<=2?(f=e[l],l++):f=r;l<=A;)f=t(f,e[l],l),l++;return f}}return r}var Avi=Object.prototype.hasOwnProperty;function R6(e,t){return Avi.call(e,t)}function kja(e){let t=[];for(let r in e)Avi.call(e,r)&&t.push(r);return t}function xja(){let e=new Map;return e.add=Gja,e.remove=Fja,e}function Gja(e,t){let r=this.get(e);return r!==void 0?r.push(t):this.set(e,r=[t]),r}function Fja(e,t){let r=this.get(e);r!==void 0&&(Yja(r,t),r.length||this.delete(e))}function Hee(e){return Array.isArray(e)}function mNr(e){return Hee(e)?e:[e]}function Zja(e,t){return e!==void 0&&t(e)?e:void 0}function B6(e,t){return e!==void 0&&t(e)?e:Zo.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Zo.getFunctionName(t)}'.`)}function zNe(e){}function Lja(){return!0}function ME(e){return e}function Y2i(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function lH(e){let t=new Map;return r=>{let n=`${typeof r}:${r}`,a=t.get(n);return a===void 0&&!t.has(n)&&(a=e(r),t.set(n,a)),a}}function sDr(e,t){return e===t}function oDr(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function Vja(e,t){return sDr(e,t)}function Wja(e,t){return e===t?0:e===void 0?-1:t===void 0?1:er?A-r:1),C=Math.floor(t.length>r+A?r+A:t.length);a[0]=A;let b=A;for(let N=1;Nr)return;let E=n;n=a,a=E}let l=n[t.length];return l>r?void 0:l}function Mja(e,t,r){let n=e.length-t.length;return n>=0&&(r?oDr(e.slice(n),t):e.indexOf(t,n)===n)}function Hja(e,t){e[t]=e[e.length-1],e.pop()}function Yja(e,t){return Qja(e,r=>r===t)}function Qja(e,t){for(let r=0;r{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(Ft){return e.currentLogLevel<=Ft}e.shouldLog=r;function n(Ft,zr){e.loggingHost&&r(Ft)&&e.loggingHost.log(Ft,zr)}function a(Ft){n(3,Ft)}e.log=a,(Ft=>{function zr(ps){n(1,ps)}Ft.error=zr;function Rn(ps){n(2,ps)}Ft.warn=Rn;function Pr(ps){n(3,ps)}Ft.log=Pr;function Qi(ps){n(4,ps)}Ft.trace=Qi})(a=e.log||(e.log={}));let o={};function l(){return t}e.getAssertionLevel=l;function A(Ft){let zr=t;if(t=Ft,Ft>zr)for(let Rn of kja(o)){let Pr=o[Rn];Pr!==void 0&&e[Rn]!==Pr.assertion&&Ft>=Pr.level&&(e[Rn]=Pr,o[Rn]=void 0)}}e.setAssertionLevel=A;function f(Ft){return t>=Ft}e.shouldAssert=f;function I(Ft,zr){return f(Ft)?!0:(o[zr]={level:Ft,assertion:e[zr]},e[zr]=zNe,!1)}function C(Ft,zr){debugger;let Rn=new Error(Ft?`Debug Failure. ${Ft}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Rn,zr||C),Rn}e.fail=C;function b(Ft,zr,Rn){return C(`${zr||"Unexpected node."}\r Node ${Ot(Ft.kind)} was unexpected.`,Rn||b)}e.failBadSyntaxKind=b;function E(Ft,zr,Rn,Pr){Ft||(zr=zr?`False expression: ${zr}`:"False expression.",Rn&&(zr+=`\r -Verbose Debug Information: `+(typeof Rn=="string"?Rn:Rn())),C(zr,Pr||E))}e.assert=E;function N(Ft,zr,Rn,Pr,Qi){if(Ft!==zr){let ps=Rn?Pr?`${Rn} ${Pr}`:Rn:"";C(`Expected ${Ft} === ${zr}. ${ps}`,Qi||N)}}e.assertEqual=N;function B(Ft,zr,Rn,Pr){Ft>=zr&&C(`Expected ${Ft} < ${zr}. ${Rn||""}`,Pr||B)}e.assertLessThan=B;function F(Ft,zr,Rn){Ft>zr&&C(`Expected ${Ft} <= ${zr}`,Rn||F)}e.assertLessThanOrEqual=F;function Q(Ft,zr,Rn){Ft= ${zr}`,Rn||Q)}e.assertGreaterThanOrEqual=Q;function J(Ft,zr,Rn){Ft==null&&C(zr,Rn||J)}e.assertIsDefined=J;function ae(Ft,zr,Rn){return J(Ft,zr,Rn||ae),Ft}e.checkDefined=ae;function ne(Ft,zr,Rn){for(let Pr of Ft)J(Pr,zr,Rn||ne)}e.assertEachIsDefined=ne;function ce(Ft,zr,Rn){return ne(Ft,zr,Rn||ce),Ft}e.checkEachDefined=ce;function fe(Ft,zr="Illegal value:",Rn){let Pr=typeof Ft=="object"&&T6(Ft,"kind")&&T6(Ft,"pos")?"SyntaxKind: "+Ot(Ft.kind):JSON.stringify(Ft);return C(`${zr} ${Pr}`,Rn||fe)}e.assertNever=fe;function ue(Ft,zr,Rn,Pr){I(1,"assertEachNode")&&E(zr===void 0||eDr(Ft,zr),Rn||"Unexpected node.",()=>`Node array did not pass test '${ze(zr)}'.`,Pr||ue)}e.assertEachNode=ue;function de(Ft,zr,Rn,Pr){I(1,"assertNode")&&E(Ft!==void 0&&(zr===void 0||zr(Ft)),Rn||"Unexpected node.",()=>`Node ${Ot(Ft?.kind)} did not pass test '${ze(zr)}'.`,Pr||de)}e.assertNode=de;function be(Ft,zr,Rn,Pr){I(1,"assertNotNode")&&E(Ft===void 0||zr===void 0||!zr(Ft),Rn||"Unexpected node.",()=>`Node ${Ot(Ft.kind)} should not have passed test '${ze(zr)}'.`,Pr||be)}e.assertNotNode=be;function Se(Ft,zr,Rn,Pr){I(1,"assertOptionalNode")&&E(zr===void 0||Ft===void 0||zr(Ft),Rn||"Unexpected node.",()=>`Node ${Ot(Ft?.kind)} did not pass test '${ze(zr)}'.`,Pr||Se)}e.assertOptionalNode=Se;function De(Ft,zr,Rn,Pr){I(1,"assertOptionalToken")&&E(zr===void 0||Ft===void 0||Ft.kind===zr,Rn||"Unexpected node.",()=>`Node ${Ot(Ft?.kind)} was not a '${Ot(zr)}' token.`,Pr||De)}e.assertOptionalToken=De;function k(Ft,zr,Rn){I(1,"assertMissingNode")&&E(Ft===void 0,zr||"Unexpected node.",()=>`Node ${Ot(Ft.kind)} was unexpected'.`,Rn||k)}e.assertMissingNode=k;function tt(Ft){}e.type=tt;function ze(Ft){if(typeof Ft!="function")return"";if(T6(Ft,"name"))return Ft.name;{let zr=Function.prototype.toString.call(Ft),Rn=/^function\s+([\w$]+)\s*\(/.exec(zr);return Rn?Rn[1]:""}}e.getFunctionName=ze;function Le(Ft){return`{ name: ${GJe(Ft.escapedName)}; flags: ${Xt(Ft.flags)}; declarations: ${RNr(Ft.declarations,zr=>Ot(zr.kind))} }`}e.formatSymbol=Le;function Je(Ft=0,zr,Rn){let Pr=lt(zr);if(Ft===0)return Pr.length>0&&Pr[0][0]===0?Pr[0][1]:"0";if(Rn){let Qi=[],ps=Ft;for(let[yo,bo]of Pr){if(yo>Ft)break;yo!==0&&yo&Ft&&(Qi.push(bo),ps&=~yo)}if(ps===0)return Qi.join("|")}else for(let[Qi,ps]of Pr)if(Qi===Ft)return ps;return Ft.toString()}e.formatEnum=Je;let ft=new Map;function lt(Ft){let zr=ft.get(Ft);if(zr)return zr;let Rn=[];for(let Qi in Ft){let ps=Ft[Qi];typeof ps=="number"&&Rn.push([ps,Qi])}let Pr=yja(Rn,(Qi,ps)=>rvi(Qi[0],ps[0]));return ft.set(Ft,Pr),Pr}function Ot(Ft){return Je(Ft,Np,!1)}e.formatSyntaxKind=Ot;function Er(Ft){return Je(Ft,gvi,!1)}e.formatSnippetKind=Er;function Sr(Ft){return Je(Ft,Oee,!1)}e.formatScriptKind=Sr;function jt(Ft){return Je(Ft,EP,!0)}e.formatNodeFlags=jt;function Bt(Ft){return Je(Ft,ovi,!0)}e.formatNodeCheckFlags=Bt;function Dt(Ft){return Je(Ft,nvi,!0)}e.formatModifierFlags=Dt;function Fr(Ft){return Je(Ft,uvi,!0)}e.formatTransformFlags=Fr;function $t(Ft){return Je(Ft,Avi,!0)}e.formatEmitFlags=$t;function Xt(Ft){return Je(Ft,svi,!0)}e.formatSymbolFlags=Xt;function lr(Ft){return Je(Ft,LG,!0)}e.formatTypeFlags=lr;function cr(Ft){return Je(Ft,cvi,!0)}e.formatSignatureFlags=cr;function Ar(Ft){return Je(Ft,avi,!0)}e.formatObjectFlags=Ar;function qr(Ft){return Je(Ft,kNr,!0)}e.formatFlowFlags=qr;function yn(Ft){return Je(Ft,ivi,!0)}e.formatRelationComparisonResult=yn;function ke(Ft){return Je(Ft,CheckMode,!0)}e.formatCheckMode=ke;function zt(Ft){return Je(Ft,SignatureCheckMode,!0)}e.formatSignatureCheckMode=zt;function Fn(Ft){return Je(Ft,TypeFacts,!0)}e.formatTypeFacts=Fn;let Nn=!1,Hi;function Ao(Ft){"__debugFlowFlags"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(){let zr=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",Rn=this.flags&-2048;return`${zr}${Rn?` (${qr(Rn)})`:""}`}},__debugFlowFlags:{get(){return Je(this.flags,kNr,!0)}},__debugToString:{value(){return Or(this)}}})}function Vr(Ft){return Nn&&(typeof Object.setPrototypeOf=="function"?(Hi||(Hi=Object.create(Object.prototype),Ao(Hi)),Object.setPrototypeOf(Ft,Hi)):Ao(Ft)),Ft}e.attachFlowNodeDebugInfo=Vr;let xi;function no(Ft){"__tsDebuggerDisplay"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(zr){return zr=String(zr).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${zr}`}}})}function ga(Ft){Nn&&(typeof Object.setPrototypeOf=="function"?(xi||(xi=Object.create(Array.prototype),no(xi)),Object.setPrototypeOf(Ft,xi)):no(Ft))}e.attachNodeArrayDebugInfo=ga;function Ya(){if(Nn)return;let Ft=new WeakMap,zr=new WeakMap;Object.defineProperties(F2.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Pr=this.flags&33554432?"TransientSymbol":"Symbol",Qi=this.flags&-33554433;return`${Pr} '${FNr(this)}'${Qi?` (${Xt(Qi)})`:""}`}},__debugFlags:{get(){return Xt(this.flags)}}}),Object.defineProperties(F2.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Pr=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`: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&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",Qi=this.flags&524288?this.objectFlags&-1344:0;return`${Pr}${this.symbol?` '${FNr(this.symbol)}'`:""}${Qi?` (${Ar(Qi)})`:""}`}},__debugFlags:{get(){return lr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Ar(this.objectFlags):""}},__debugTypeToString:{value(){let Pr=Ft.get(this);return Pr===void 0&&(Pr=this.checker.typeToString(this),Ft.set(this,Pr)),Pr}}}),Object.defineProperties(F2.getSignatureConstructor().prototype,{__debugFlags:{get(){return cr(this.flags)}},__debugSignatureToString:{value(){var Pr;return(Pr=this.checker)==null?void 0:Pr.signatureToString(this)}}});let Rn=[F2.getNodeConstructor(),F2.getIdentifierConstructor(),F2.getTokenConstructor(),F2.getSourceFileConstructor()];for(let Pr of Rn)T6(Pr.prototype,"__debugKind")||Object.defineProperties(Pr.prototype,{__tsDebuggerDisplay:{value(){return`${UNe(this)?"GeneratedIdentifier":t_(this)?`Identifier '${wV(this)}'`:aCe(this)?`PrivateIdentifier '${wV(this)}'`:yEt(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:tDe(this)?`NumericLiteral ${this.text}`:r$a(this)?`BigIntLiteral ${this.text}n`:oBi(this)?"TypeParameterDeclaration":pEt(this)?"ParameterDeclaration":aBi(this)?"ConstructorDeclaration":MNr(this)?"GetAccessorDeclaration":IEt(this)?"SetAccessorDeclaration":u$a(this)?"CallSignatureDeclaration":g$a(this)?"ConstructSignatureDeclaration":cBi(this)?"IndexSignatureDeclaration":A$a(this)?"TypePredicateNode":lBi(this)?"TypeReferenceNode":uBi(this)?"FunctionTypeNode":gBi(this)?"ConstructorTypeNode":d$a(this)?"TypeQueryNode":p$a(this)?"TypeLiteralNode":f$a(this)?"ArrayTypeNode":I$a(this)?"TupleTypeNode":m$a(this)?"OptionalTypeNode":C$a(this)?"RestTypeNode":_$a(this)?"UnionTypeNode":y$a(this)?"IntersectionTypeNode":b$a(this)?"ConditionalTypeNode":E$a(this)?"InferTypeNode":S$a(this)?"ParenthesizedTypeNode":v$a(this)?"ThisTypeNode":B$a(this)?"TypeOperatorNode":w$a(this)?"IndexedAccessTypeNode":T$a(this)?"MappedTypeNode":R$a(this)?"LiteralTypeNode":h$a(this)?"NamedTupleMember":N$a(this)?"ImportTypeNode":Ot(this.kind)}${this.flags?` (${jt(this.flags)})`:""}`}},__debugKind:{get(){return Ot(this.kind)}},__debugNodeFlags:{get(){return jt(this.flags)}},__debugModifierFlags:{get(){return Dt(Aqa(this))}},__debugTransformFlags:{get(){return Fr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return gEt(this)}},__debugEmitFlags:{get(){return $t(qNe(this))}},__debugGetText:{value(Qi){if(MNe(this))return"";let ps=zr.get(this);if(ps===void 0){let yo=T7a(this),bo=yo&&Zce(yo);ps=bo?U2i(bo,yo,Qi):"",zr.set(this,ps)}return ps}}});Nn=!0}e.enableDebugInfo=Ya;function Gc(Ft){let zr=Ft&7,Rn=zr===0?"in out":zr===3?"[bivariant]":zr===2?"in":zr===1?"out":zr===4?"[independent]":"";return Ft&8?Rn+=" (unmeasurable)":Ft&16&&(Rn+=" (unreliable)"),Rn}e.formatVariance=Gc;class ol{__debugToString(){var zr;switch(this.kind){case 3:return((zr=this.debugInfo)==null?void 0:zr.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return k2i(this.sources,this.targets||RNr(this.sources,()=>"any"),(Rn,Pr)=>`${Rn.__debugTypeToString()} -> ${typeof Pr=="string"?Pr:Pr.__debugTypeToString()}`).join(", ");case 2:return k2i(this.sources,this.targets,(Rn,Pr)=>`${Rn.__debugTypeToString()} -> ${Pr().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +Verbose Debug Information: `+(typeof Rn=="string"?Rn:Rn())),C(zr,Pr||E))}e.assert=E;function N(Ft,zr,Rn,Pr,Qi){if(Ft!==zr){let ps=Rn?Pr?`${Rn} ${Pr}`:Rn:"";C(`Expected ${Ft} === ${zr}. ${ps}`,Qi||N)}}e.assertEqual=N;function B(Ft,zr,Rn,Pr){Ft>=zr&&C(`Expected ${Ft} < ${zr}. ${Rn||""}`,Pr||B)}e.assertLessThan=B;function F(Ft,zr,Rn){Ft>zr&&C(`Expected ${Ft} <= ${zr}`,Rn||F)}e.assertLessThanOrEqual=F;function Q(Ft,zr,Rn){Ft= ${zr}`,Rn||Q)}e.assertGreaterThanOrEqual=Q;function J(Ft,zr,Rn){Ft==null&&C(zr,Rn||J)}e.assertIsDefined=J;function ae(Ft,zr,Rn){return J(Ft,zr,Rn||ae),Ft}e.checkDefined=ae;function ne(Ft,zr,Rn){for(let Pr of Ft)J(Pr,zr,Rn||ne)}e.assertEachIsDefined=ne;function ce(Ft,zr,Rn){return ne(Ft,zr,Rn||ce),Ft}e.checkEachDefined=ce;function fe(Ft,zr="Illegal value:",Rn){let Pr=typeof Ft=="object"&&R6(Ft,"kind")&&R6(Ft,"pos")?"SyntaxKind: "+Ot(Ft.kind):JSON.stringify(Ft);return C(`${zr} ${Pr}`,Rn||fe)}e.assertNever=fe;function ue(Ft,zr,Rn,Pr){I(1,"assertEachNode")&&E(zr===void 0||rDr(Ft,zr),Rn||"Unexpected node.",()=>`Node array did not pass test '${ze(zr)}'.`,Pr||ue)}e.assertEachNode=ue;function de(Ft,zr,Rn,Pr){I(1,"assertNode")&&E(Ft!==void 0&&(zr===void 0||zr(Ft)),Rn||"Unexpected node.",()=>`Node ${Ot(Ft?.kind)} did not pass test '${ze(zr)}'.`,Pr||de)}e.assertNode=de;function be(Ft,zr,Rn,Pr){I(1,"assertNotNode")&&E(Ft===void 0||zr===void 0||!zr(Ft),Rn||"Unexpected node.",()=>`Node ${Ot(Ft.kind)} should not have passed test '${ze(zr)}'.`,Pr||be)}e.assertNotNode=be;function Se(Ft,zr,Rn,Pr){I(1,"assertOptionalNode")&&E(zr===void 0||Ft===void 0||zr(Ft),Rn||"Unexpected node.",()=>`Node ${Ot(Ft?.kind)} did not pass test '${ze(zr)}'.`,Pr||Se)}e.assertOptionalNode=Se;function De(Ft,zr,Rn,Pr){I(1,"assertOptionalToken")&&E(zr===void 0||Ft===void 0||Ft.kind===zr,Rn||"Unexpected node.",()=>`Node ${Ot(Ft?.kind)} was not a '${Ot(zr)}' token.`,Pr||De)}e.assertOptionalToken=De;function k(Ft,zr,Rn){I(1,"assertMissingNode")&&E(Ft===void 0,zr||"Unexpected node.",()=>`Node ${Ot(Ft.kind)} was unexpected'.`,Rn||k)}e.assertMissingNode=k;function tt(Ft){}e.type=tt;function ze(Ft){if(typeof Ft!="function")return"";if(R6(Ft,"name"))return Ft.name;{let zr=Function.prototype.toString.call(Ft),Rn=/^function\s+([\w$]+)\s*\(/.exec(zr);return Rn?Rn[1]:""}}e.getFunctionName=ze;function Le(Ft){return`{ name: ${ZJe(Ft.escapedName)}; flags: ${Xt(Ft.flags)}; declarations: ${DNr(Ft.declarations,zr=>Ot(zr.kind))} }`}e.formatSymbol=Le;function Je(Ft=0,zr,Rn){let Pr=lt(zr);if(Ft===0)return Pr.length>0&&Pr[0][0]===0?Pr[0][1]:"0";if(Rn){let Qi=[],ps=Ft;for(let[_o,yo]of Pr){if(_o>Ft)break;_o!==0&&_o&Ft&&(Qi.push(yo),ps&=~_o)}if(ps===0)return Qi.join("|")}else for(let[Qi,ps]of Pr)if(Qi===Ft)return ps;return Ft.toString()}e.formatEnum=Je;let ft=new Map;function lt(Ft){let zr=ft.get(Ft);if(zr)return zr;let Rn=[];for(let Qi in Ft){let ps=Ft[Qi];typeof ps=="number"&&Rn.push([ps,Qi])}let Pr=Bja(Rn,(Qi,ps)=>dvi(Qi[0],ps[0]));return ft.set(Ft,Pr),Pr}function Ot(Ft){return Je(Ft,Np,!1)}e.formatSyntaxKind=Ot;function Er(Ft){return Je(Ft,bvi,!1)}e.formatSnippetKind=Er;function Sr(Ft){return Je(Ft,Pee,!1)}e.formatScriptKind=Sr;function jt(Ft){return Je(Ft,vP,!0)}e.formatNodeFlags=jt;function Bt(Ft){return Je(Ft,hvi,!0)}e.formatNodeCheckFlags=Bt;function Nt(Ft){return Je(Ft,pvi,!0)}e.formatModifierFlags=Nt;function Fr(Ft){return Je(Ft,yvi,!0)}e.formatTransformFlags=Fr;function $t(Ft){return Je(Ft,Evi,!0)}e.formatEmitFlags=$t;function Xt(Ft){return Je(Ft,Ivi,!0)}e.formatSymbolFlags=Xt;function lr(Ft){return Je(Ft,VG,!0)}e.formatTypeFlags=lr;function cr(Ft){return Je(Ft,Cvi,!0)}e.formatSignatureFlags=cr;function Ar(Ft){return Je(Ft,mvi,!0)}e.formatObjectFlags=Ar;function qr(Ft){return Je(Ft,GNr,!0)}e.formatFlowFlags=qr;function _n(Ft){return Je(Ft,fvi,!0)}e.formatRelationComparisonResult=_n;function ke(Ft){return Je(Ft,CheckMode,!0)}e.formatCheckMode=ke;function zt(Ft){return Je(Ft,SignatureCheckMode,!0)}e.formatSignatureCheckMode=zt;function Fn(Ft){return Je(Ft,TypeFacts,!0)}e.formatTypeFacts=Fn;let Nn=!1,Hi;function Ao(Ft){"__debugFlowFlags"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(){let zr=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",Rn=this.flags&-2048;return`${zr}${Rn?` (${qr(Rn)})`:""}`}},__debugFlowFlags:{get(){return Je(this.flags,GNr,!0)}},__debugToString:{value(){return Or(this)}}})}function Vr(Ft){return Nn&&(typeof Object.setPrototypeOf=="function"?(Hi||(Hi=Object.create(Object.prototype),Ao(Hi)),Object.setPrototypeOf(Ft,Hi)):Ao(Ft)),Ft}e.attachFlowNodeDebugInfo=Vr;let xi;function no(Ft){"__tsDebuggerDisplay"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(zr){return zr=String(zr).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${zr}`}}})}function ga(Ft){Nn&&(typeof Object.setPrototypeOf=="function"?(xi||(xi=Object.create(Array.prototype),no(xi)),Object.setPrototypeOf(Ft,xi)):no(Ft))}e.attachNodeArrayDebugInfo=ga;function Ya(){if(Nn)return;let Ft=new WeakMap,zr=new WeakMap;Object.defineProperties(Z2.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Pr=this.flags&33554432?"TransientSymbol":"Symbol",Qi=this.flags&-33554433;return`${Pr} '${LNr(this)}'${Qi?` (${Xt(Qi)})`:""}`}},__debugFlags:{get(){return Xt(this.flags)}}}),Object.defineProperties(Z2.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Pr=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`: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&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",Qi=this.flags&524288?this.objectFlags&-1344:0;return`${Pr}${this.symbol?` '${LNr(this.symbol)}'`:""}${Qi?` (${Ar(Qi)})`:""}`}},__debugFlags:{get(){return lr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Ar(this.objectFlags):""}},__debugTypeToString:{value(){let Pr=Ft.get(this);return Pr===void 0&&(Pr=this.checker.typeToString(this),Ft.set(this,Pr)),Pr}}}),Object.defineProperties(Z2.getSignatureConstructor().prototype,{__debugFlags:{get(){return cr(this.flags)}},__debugSignatureToString:{value(){var Pr;return(Pr=this.checker)==null?void 0:Pr.signatureToString(this)}}});let Rn=[Z2.getNodeConstructor(),Z2.getIdentifierConstructor(),Z2.getTokenConstructor(),Z2.getSourceFileConstructor()];for(let Pr of Rn)R6(Pr.prototype,"__debugKind")||Object.defineProperties(Pr.prototype,{__tsDebuggerDisplay:{value(){return`${XNe(this)?"GeneratedIdentifier":r_(this)?`Identifier '${TV(this)}'`:cCe(this)?`PrivateIdentifier '${TV(this)}'`:CEt(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:$Ne(this)?`NumericLiteral ${this.text}`:a$a(this)?`BigIntLiteral ${this.text}n`:hBi(this)?"TypeParameterDeclaration":AEt(this)?"ParameterDeclaration":mBi(this)?"ConstructorDeclaration":YNr(this)?"GetAccessorDeclaration":pEt(this)?"SetAccessorDeclaration":f$a(this)?"CallSignatureDeclaration":I$a(this)?"ConstructSignatureDeclaration":CBi(this)?"IndexSignatureDeclaration":h$a(this)?"TypePredicateNode":_Bi(this)?"TypeReferenceNode":yBi(this)?"FunctionTypeNode":bBi(this)?"ConstructorTypeNode":m$a(this)?"TypeQueryNode":C$a(this)?"TypeLiteralNode":_$a(this)?"ArrayTypeNode":y$a(this)?"TupleTypeNode":E$a(this)?"OptionalTypeNode":S$a(this)?"RestTypeNode":v$a(this)?"UnionTypeNode":B$a(this)?"IntersectionTypeNode":w$a(this)?"ConditionalTypeNode":T$a(this)?"InferTypeNode":R$a(this)?"ParenthesizedTypeNode":N$a(this)?"ThisTypeNode":D$a(this)?"TypeOperatorNode":k$a(this)?"IndexedAccessTypeNode":x$a(this)?"MappedTypeNode":G$a(this)?"LiteralTypeNode":b$a(this)?"NamedTupleMember":F$a(this)?"ImportTypeNode":Ot(this.kind)}${this.flags?` (${jt(this.flags)})`:""}`}},__debugKind:{get(){return Ot(this.kind)}},__debugNodeFlags:{get(){return jt(this.flags)}},__debugModifierFlags:{get(){return Nt(hqa(this))}},__debugTransformFlags:{get(){return Fr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return lEt(this)}},__debugEmitFlags:{get(){return $t(jNe(this))}},__debugGetText:{value(Qi){if(ONe(this))return"";let ps=zr.get(this);if(ps===void 0){let _o=x7a(this),yo=_o&&Lce(_o);ps=yo?sSi(yo,_o,Qi):"",zr.set(this,ps)}return ps}}});Nn=!0}e.enableDebugInfo=Ya;function Gc(Ft){let zr=Ft&7,Rn=zr===0?"in out":zr===3?"[bivariant]":zr===2?"in":zr===1?"out":zr===4?"[independent]":"";return Ft&8?Rn+=" (unmeasurable)":Ft&16&&(Rn+=" (unreliable)"),Rn}e.formatVariance=Gc;class al{__debugToString(){var zr;switch(this.kind){case 3:return((zr=this.debugInfo)==null?void 0:zr.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return H2i(this.sources,this.targets||DNr(this.sources,()=>"any"),(Rn,Pr)=>`${Rn.__debugTypeToString()} -> ${typeof Pr=="string"?Pr:Pr.__debugTypeToString()}`).join(", ");case 2:return H2i(this.sources,this.targets,(Rn,Pr)=>`${Rn.__debugTypeToString()} -> ${Pr().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` `).join(` `)} m2: ${this.mapper2.__debugToString().split(` `).join(` - `)}`;default:return fe(this)}}}e.DebugTypeMapper=ol;function Sc(Ft){return e.isDebugging?Object.setPrototypeOf(Ft,ol.prototype):Ft}e.attachDebugPrototypeIfDebug=Sc;function Hr(Ft){return console.log(Or(Ft))}e.printControlFlowGraph=Hr;function Or(Ft){let zr=-1;function Rn(Pt){return Pt.id||(Pt.id=zr,zr--),Pt.id}let Pr;(Pt=>{Pt.lr="\u2500",Pt.ud="\u2502",Pt.dr="\u256D",Pt.dl="\u256E",Pt.ul="\u256F",Pt.ur="\u2570",Pt.udr="\u251C",Pt.udl="\u2524",Pt.dlr="\u252C",Pt.ulr="\u2534",Pt.udlr="\u256B"})(Pr||(Pr={}));let Qi;(Pt=>{Pt[Pt.None=0]="None",Pt[Pt.Up=1]="Up",Pt[Pt.Down=2]="Down",Pt[Pt.Left=4]="Left",Pt[Pt.Right=8]="Right",Pt[Pt.UpDown=3]="UpDown",Pt[Pt.LeftRight=12]="LeftRight",Pt[Pt.UpLeft=5]="UpLeft",Pt[Pt.UpRight=9]="UpRight",Pt[Pt.DownLeft=6]="DownLeft",Pt[Pt.DownRight=10]="DownRight",Pt[Pt.UpDownLeft=7]="UpDownLeft",Pt[Pt.UpDownRight=11]="UpDownRight",Pt[Pt.UpLeftRight=13]="UpLeftRight",Pt[Pt.DownLeftRight=14]="DownLeftRight",Pt[Pt.UpDownLeftRight=15]="UpDownLeftRight",Pt[Pt.NoChildren=16]="NoChildren"})(Qi||(Qi={}));let ps=2032,yo=882,bo=Object.create(null),Qa=[],gc=[],_g=ac(Ft,new Set);for(let Pt of Qa)Pt.text=yg(Pt.flowNode,Pt.circular),Oc(Pt);let Nc=vg(_g),sA=Kl(Nc);return Ju(_g,0),_I();function ma(Pt){return!!(Pt.flags&128)}function vu(Pt){return!!(Pt.flags&12)&&!!Pt.antecedent}function li(Pt){return!!(Pt.flags&ps)}function Ei(Pt){return!!(Pt.flags&yo)}function Ws(Pt){let Hu=[];for(let Ru of Pt.edges)Ru.source===Pt&&Hu.push(Ru.target);return Hu}function Xa(Pt){let Hu=[];for(let Ru of Pt.edges)Ru.target===Pt&&Hu.push(Ru.source);return Hu}function ac(Pt,Hu){let Ru=Rn(Pt),Vs=bo[Ru];if(Vs&&Hu.has(Pt))return Vs.circular=!0,Vs={id:-1,flowNode:Pt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Qa.push(Vs),Vs;if(Hu.add(Pt),!Vs)if(bo[Ru]=Vs={id:Ru,flowNode:Pt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Qa.push(Vs),vu(Pt))for(let Uu of Pt.antecedent)Ql(Vs,Uu,Hu);else li(Pt)&&Ql(Vs,Pt.antecedent,Hu);return Hu.delete(Pt),Vs}function Ql(Pt,Hu,Ru){let Vs=ac(Hu,Ru),Uu={source:Pt,target:Vs};gc.push(Uu),Pt.edges.push(Uu),Vs.edges.push(Uu)}function Oc(Pt){if(Pt.level!==-1)return Pt.level;let Hu=0;for(let Ru of Xa(Pt))Hu=Math.max(Hu,Oc(Ru)+1);return Pt.level=Hu}function vg(Pt){let Hu=0;for(let Ru of Ws(Pt))Hu=Math.max(Hu,vg(Ru));return Hu+1}function Kl(Pt){let Hu=Ri(Array(Pt),0);for(let Ru of Qa)Hu[Ru.level]=Math.max(Hu[Ru.level],Ru.text.length);return Hu}function Ju(Pt,Hu){if(Pt.lane===-1){Pt.lane=Hu,Pt.endLane=Hu;let Ru=Ws(Pt);for(let Vs=0;Vs0&&Hu++;let Uu=Ru[Vs];Ju(Uu,Hu),Uu.endLane>Pt.endLane&&(Hu=Uu.endLane)}Pt.endLane=Hu}}function Da(Pt){if(Pt&2)return"Start";if(Pt&4)return"Branch";if(Pt&8)return"Loop";if(Pt&16)return"Assignment";if(Pt&32)return"True";if(Pt&64)return"False";if(Pt&128)return"SwitchClause";if(Pt&256)return"ArrayMutation";if(Pt&512)return"Call";if(Pt&1024)return"ReduceLabel";if(Pt&1)return"Unreachable";throw new Error}function fu(Pt){let Hu=Zce(Pt);return U2i(Hu,Pt,!1)}function yg(Pt,Hu){let Ru=Da(Pt.flags);if(Hu&&(Ru=`${Ru}#${Rn(Pt)}`),ma(Pt)){let Vs=[],{switchStatement:Uu,clauseStart:Yn,clauseEnd:Ko}=Pt.node;for(let Sg=Yn;SgKo.lane)+1,Ru=Ri(Array(Hu),""),Vs=sA.map(()=>Array(Hu)),Uu=sA.map(()=>Ri(Array(Hu),0));for(let Ko of Qa){Vs[Ko.level][Ko.lane]=Ko;let Sg=Ws(Ko);for(let ZA=0;ZA0&&(gl|=1),ZA0&&(gl|=1),ZA0?Uu[Ko-1][Sg]:0,ZA=Sg>0?Uu[Ko][Sg-1]:0,$i=Uu[Ko][Sg];$i||(HA&8&&($i|=12),ZA&2&&($i|=3),Uu[Ko][Sg]=$i)}for(let Ko=0;Ko{Pt.lr="\u2500",Pt.ud="\u2502",Pt.dr="\u256D",Pt.dl="\u256E",Pt.ul="\u256F",Pt.ur="\u2570",Pt.udr="\u251C",Pt.udl="\u2524",Pt.dlr="\u252C",Pt.ulr="\u2534",Pt.udlr="\u256B"})(Pr||(Pr={}));let Qi;(Pt=>{Pt[Pt.None=0]="None",Pt[Pt.Up=1]="Up",Pt[Pt.Down=2]="Down",Pt[Pt.Left=4]="Left",Pt[Pt.Right=8]="Right",Pt[Pt.UpDown=3]="UpDown",Pt[Pt.LeftRight=12]="LeftRight",Pt[Pt.UpLeft=5]="UpLeft",Pt[Pt.UpRight=9]="UpRight",Pt[Pt.DownLeft=6]="DownLeft",Pt[Pt.DownRight=10]="DownRight",Pt[Pt.UpDownLeft=7]="UpDownLeft",Pt[Pt.UpDownRight=11]="UpDownRight",Pt[Pt.UpLeftRight=13]="UpLeftRight",Pt[Pt.DownLeftRight=14]="DownLeftRight",Pt[Pt.UpDownLeftRight=15]="UpDownLeftRight",Pt[Pt.NoChildren=16]="NoChildren"})(Qi||(Qi={}));let ps=2032,_o=882,yo=Object.create(null),Qa=[],gc=[],_g=ac(Ft,new Set);for(let Pt of Qa)Pt.text=yg(Pt.flowNode,Pt.circular),Oc(Pt);let Nc=vg(_g),oA=Kl(Nc);return Ju(_g,0),_I();function ma(Pt){return!!(Pt.flags&128)}function vu(Pt){return!!(Pt.flags&12)&&!!Pt.antecedent}function li(Pt){return!!(Pt.flags&ps)}function Ei(Pt){return!!(Pt.flags&_o)}function Ws(Pt){let Hu=[];for(let Ru of Pt.edges)Ru.source===Pt&&Hu.push(Ru.target);return Hu}function Xa(Pt){let Hu=[];for(let Ru of Pt.edges)Ru.target===Pt&&Hu.push(Ru.source);return Hu}function ac(Pt,Hu){let Ru=Rn(Pt),Vs=yo[Ru];if(Vs&&Hu.has(Pt))return Vs.circular=!0,Vs={id:-1,flowNode:Pt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Qa.push(Vs),Vs;if(Hu.add(Pt),!Vs)if(yo[Ru]=Vs={id:Ru,flowNode:Pt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Qa.push(Vs),vu(Pt))for(let Uu of Pt.antecedent)Ql(Vs,Uu,Hu);else li(Pt)&&Ql(Vs,Pt.antecedent,Hu);return Hu.delete(Pt),Vs}function Ql(Pt,Hu,Ru){let Vs=ac(Hu,Ru),Uu={source:Pt,target:Vs};gc.push(Uu),Pt.edges.push(Uu),Vs.edges.push(Uu)}function Oc(Pt){if(Pt.level!==-1)return Pt.level;let Hu=0;for(let Ru of Xa(Pt))Hu=Math.max(Hu,Oc(Ru)+1);return Pt.level=Hu}function vg(Pt){let Hu=0;for(let Ru of Ws(Pt))Hu=Math.max(Hu,vg(Ru));return Hu+1}function Kl(Pt){let Hu=Ri(Array(Pt),0);for(let Ru of Qa)Hu[Ru.level]=Math.max(Hu[Ru.level],Ru.text.length);return Hu}function Ju(Pt,Hu){if(Pt.lane===-1){Pt.lane=Hu,Pt.endLane=Hu;let Ru=Ws(Pt);for(let Vs=0;Vs0&&Hu++;let Uu=Ru[Vs];Ju(Uu,Hu),Uu.endLane>Pt.endLane&&(Hu=Uu.endLane)}Pt.endLane=Hu}}function Da(Pt){if(Pt&2)return"Start";if(Pt&4)return"Branch";if(Pt&8)return"Loop";if(Pt&16)return"Assignment";if(Pt&32)return"True";if(Pt&64)return"False";if(Pt&128)return"SwitchClause";if(Pt&256)return"ArrayMutation";if(Pt&512)return"Call";if(Pt&1024)return"ReduceLabel";if(Pt&1)return"Unreachable";throw new Error}function fu(Pt){let Hu=Lce(Pt);return sSi(Hu,Pt,!1)}function yg(Pt,Hu){let Ru=Da(Pt.flags);if(Hu&&(Ru=`${Ru}#${Rn(Pt)}`),ma(Pt)){let Vs=[],{switchStatement:Uu,clauseStart:Yn,clauseEnd:Ko}=Pt.node;for(let Sg=Yn;SgKo.lane)+1,Ru=Ri(Array(Hu),""),Vs=oA.map(()=>Array(Hu)),Uu=oA.map(()=>Ri(Array(Hu),0));for(let Ko of Qa){Vs[Ko.level][Ko.lane]=Ko;let Sg=Ws(Ko);for(let ZA=0;ZA0&&(Al|=1),ZA0&&(Al|=1),ZA0?Uu[Ko-1][Sg]:0,ZA=Sg>0?Uu[Ko][Sg-1]:0,$i=Uu[Ko][Sg];$i||(HA&8&&($i|=12),ZA&2&&($i|=3),Uu[Ko][Sg]=$i)}for(let Ko=0;Ko0?Pt.repeat(Hu):"";let Ru="";for(;Ru.length{},Pja=()=>{},tEt,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.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",e[e.NumericLiteral=9]="NumericLiteral",e[e.BigIntLiteral=10]="BigIntLiteral",e[e.StringLiteral=11]="StringLiteral",e[e.JsxText=12]="JsxText",e[e.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=14]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=16]="TemplateHead",e[e.TemplateMiddle=17]="TemplateMiddle",e[e.TemplateTail=18]="TemplateTail",e[e.OpenBraceToken=19]="OpenBraceToken",e[e.CloseBraceToken=20]="CloseBraceToken",e[e.OpenParenToken=21]="OpenParenToken",e[e.CloseParenToken=22]="CloseParenToken",e[e.OpenBracketToken=23]="OpenBracketToken",e[e.CloseBracketToken=24]="CloseBracketToken",e[e.DotToken=25]="DotToken",e[e.DotDotDotToken=26]="DotDotDotToken",e[e.SemicolonToken=27]="SemicolonToken",e[e.CommaToken=28]="CommaToken",e[e.QuestionDotToken=29]="QuestionDotToken",e[e.LessThanToken=30]="LessThanToken",e[e.LessThanSlashToken=31]="LessThanSlashToken",e[e.GreaterThanToken=32]="GreaterThanToken",e[e.LessThanEqualsToken=33]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=35]="EqualsEqualsToken",e[e.ExclamationEqualsToken=36]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",e[e.PlusToken=40]="PlusToken",e[e.MinusToken=41]="MinusToken",e[e.AsteriskToken=42]="AsteriskToken",e[e.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",e[e.SlashToken=44]="SlashToken",e[e.PercentToken=45]="PercentToken",e[e.PlusPlusToken=46]="PlusPlusToken",e[e.MinusMinusToken=47]="MinusMinusToken",e[e.LessThanLessThanToken=48]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=51]="AmpersandToken",e[e.BarToken=52]="BarToken",e[e.CaretToken=53]="CaretToken",e[e.ExclamationToken=54]="ExclamationToken",e[e.TildeToken=55]="TildeToken",e[e.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",e[e.BarBarToken=57]="BarBarToken",e[e.QuestionToken=58]="QuestionToken",e[e.ColonToken=59]="ColonToken",e[e.AtToken=60]="AtToken",e[e.QuestionQuestionToken=61]="QuestionQuestionToken",e[e.BacktickToken=62]="BacktickToken",e[e.HashToken=63]="HashToken",e[e.EqualsToken=64]="EqualsToken",e[e.PlusEqualsToken=65]="PlusEqualsToken",e[e.MinusEqualsToken=66]="MinusEqualsToken",e[e.AsteriskEqualsToken=67]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=69]="SlashEqualsToken",e[e.PercentEqualsToken=70]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=74]="AmpersandEqualsToken",e[e.BarEqualsToken=75]="BarEqualsToken",e[e.BarBarEqualsToken=76]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=79]="CaretEqualsToken",e[e.Identifier=80]="Identifier",e[e.PrivateIdentifier=81]="PrivateIdentifier",e[e.JSDocCommentTextToken=82]="JSDocCommentTextToken",e[e.BreakKeyword=83]="BreakKeyword",e[e.CaseKeyword=84]="CaseKeyword",e[e.CatchKeyword=85]="CatchKeyword",e[e.ClassKeyword=86]="ClassKeyword",e[e.ConstKeyword=87]="ConstKeyword",e[e.ContinueKeyword=88]="ContinueKeyword",e[e.DebuggerKeyword=89]="DebuggerKeyword",e[e.DefaultKeyword=90]="DefaultKeyword",e[e.DeleteKeyword=91]="DeleteKeyword",e[e.DoKeyword=92]="DoKeyword",e[e.ElseKeyword=93]="ElseKeyword",e[e.EnumKeyword=94]="EnumKeyword",e[e.ExportKeyword=95]="ExportKeyword",e[e.ExtendsKeyword=96]="ExtendsKeyword",e[e.FalseKeyword=97]="FalseKeyword",e[e.FinallyKeyword=98]="FinallyKeyword",e[e.ForKeyword=99]="ForKeyword",e[e.FunctionKeyword=100]="FunctionKeyword",e[e.IfKeyword=101]="IfKeyword",e[e.ImportKeyword=102]="ImportKeyword",e[e.InKeyword=103]="InKeyword",e[e.InstanceOfKeyword=104]="InstanceOfKeyword",e[e.NewKeyword=105]="NewKeyword",e[e.NullKeyword=106]="NullKeyword",e[e.ReturnKeyword=107]="ReturnKeyword",e[e.SuperKeyword=108]="SuperKeyword",e[e.SwitchKeyword=109]="SwitchKeyword",e[e.ThisKeyword=110]="ThisKeyword",e[e.ThrowKeyword=111]="ThrowKeyword",e[e.TrueKeyword=112]="TrueKeyword",e[e.TryKeyword=113]="TryKeyword",e[e.TypeOfKeyword=114]="TypeOfKeyword",e[e.VarKeyword=115]="VarKeyword",e[e.VoidKeyword=116]="VoidKeyword",e[e.WhileKeyword=117]="WhileKeyword",e[e.WithKeyword=118]="WithKeyword",e[e.ImplementsKeyword=119]="ImplementsKeyword",e[e.InterfaceKeyword=120]="InterfaceKeyword",e[e.LetKeyword=121]="LetKeyword",e[e.PackageKeyword=122]="PackageKeyword",e[e.PrivateKeyword=123]="PrivateKeyword",e[e.ProtectedKeyword=124]="ProtectedKeyword",e[e.PublicKeyword=125]="PublicKeyword",e[e.StaticKeyword=126]="StaticKeyword",e[e.YieldKeyword=127]="YieldKeyword",e[e.AbstractKeyword=128]="AbstractKeyword",e[e.AccessorKeyword=129]="AccessorKeyword",e[e.AsKeyword=130]="AsKeyword",e[e.AssertsKeyword=131]="AssertsKeyword",e[e.AssertKeyword=132]="AssertKeyword",e[e.AnyKeyword=133]="AnyKeyword",e[e.AsyncKeyword=134]="AsyncKeyword",e[e.AwaitKeyword=135]="AwaitKeyword",e[e.BooleanKeyword=136]="BooleanKeyword",e[e.ConstructorKeyword=137]="ConstructorKeyword",e[e.DeclareKeyword=138]="DeclareKeyword",e[e.GetKeyword=139]="GetKeyword",e[e.InferKeyword=140]="InferKeyword",e[e.IntrinsicKeyword=141]="IntrinsicKeyword",e[e.IsKeyword=142]="IsKeyword",e[e.KeyOfKeyword=143]="KeyOfKeyword",e[e.ModuleKeyword=144]="ModuleKeyword",e[e.NamespaceKeyword=145]="NamespaceKeyword",e[e.NeverKeyword=146]="NeverKeyword",e[e.OutKeyword=147]="OutKeyword",e[e.ReadonlyKeyword=148]="ReadonlyKeyword",e[e.RequireKeyword=149]="RequireKeyword",e[e.NumberKeyword=150]="NumberKeyword",e[e.ObjectKeyword=151]="ObjectKeyword",e[e.SatisfiesKeyword=152]="SatisfiesKeyword",e[e.SetKeyword=153]="SetKeyword",e[e.StringKeyword=154]="StringKeyword",e[e.SymbolKeyword=155]="SymbolKeyword",e[e.TypeKeyword=156]="TypeKeyword",e[e.UndefinedKeyword=157]="UndefinedKeyword",e[e.UniqueKeyword=158]="UniqueKeyword",e[e.UnknownKeyword=159]="UnknownKeyword",e[e.UsingKeyword=160]="UsingKeyword",e[e.FromKeyword=161]="FromKeyword",e[e.GlobalKeyword=162]="GlobalKeyword",e[e.BigIntKeyword=163]="BigIntKeyword",e[e.OverrideKeyword=164]="OverrideKeyword",e[e.OfKeyword=165]="OfKeyword",e[e.QualifiedName=166]="QualifiedName",e[e.ComputedPropertyName=167]="ComputedPropertyName",e[e.TypeParameter=168]="TypeParameter",e[e.Parameter=169]="Parameter",e[e.Decorator=170]="Decorator",e[e.PropertySignature=171]="PropertySignature",e[e.PropertyDeclaration=172]="PropertyDeclaration",e[e.MethodSignature=173]="MethodSignature",e[e.MethodDeclaration=174]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",e[e.Constructor=176]="Constructor",e[e.GetAccessor=177]="GetAccessor",e[e.SetAccessor=178]="SetAccessor",e[e.CallSignature=179]="CallSignature",e[e.ConstructSignature=180]="ConstructSignature",e[e.IndexSignature=181]="IndexSignature",e[e.TypePredicate=182]="TypePredicate",e[e.TypeReference=183]="TypeReference",e[e.FunctionType=184]="FunctionType",e[e.ConstructorType=185]="ConstructorType",e[e.TypeQuery=186]="TypeQuery",e[e.TypeLiteral=187]="TypeLiteral",e[e.ArrayType=188]="ArrayType",e[e.TupleType=189]="TupleType",e[e.OptionalType=190]="OptionalType",e[e.RestType=191]="RestType",e[e.UnionType=192]="UnionType",e[e.IntersectionType=193]="IntersectionType",e[e.ConditionalType=194]="ConditionalType",e[e.InferType=195]="InferType",e[e.ParenthesizedType=196]="ParenthesizedType",e[e.ThisType=197]="ThisType",e[e.TypeOperator=198]="TypeOperator",e[e.IndexedAccessType=199]="IndexedAccessType",e[e.MappedType=200]="MappedType",e[e.LiteralType=201]="LiteralType",e[e.NamedTupleMember=202]="NamedTupleMember",e[e.TemplateLiteralType=203]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",e[e.ImportType=205]="ImportType",e[e.ObjectBindingPattern=206]="ObjectBindingPattern",e[e.ArrayBindingPattern=207]="ArrayBindingPattern",e[e.BindingElement=208]="BindingElement",e[e.ArrayLiteralExpression=209]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=210]="ObjectLiteralExpression",e[e.PropertyAccessExpression=211]="PropertyAccessExpression",e[e.ElementAccessExpression=212]="ElementAccessExpression",e[e.CallExpression=213]="CallExpression",e[e.NewExpression=214]="NewExpression",e[e.TaggedTemplateExpression=215]="TaggedTemplateExpression",e[e.TypeAssertionExpression=216]="TypeAssertionExpression",e[e.ParenthesizedExpression=217]="ParenthesizedExpression",e[e.FunctionExpression=218]="FunctionExpression",e[e.ArrowFunction=219]="ArrowFunction",e[e.DeleteExpression=220]="DeleteExpression",e[e.TypeOfExpression=221]="TypeOfExpression",e[e.VoidExpression=222]="VoidExpression",e[e.AwaitExpression=223]="AwaitExpression",e[e.PrefixUnaryExpression=224]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=225]="PostfixUnaryExpression",e[e.BinaryExpression=226]="BinaryExpression",e[e.ConditionalExpression=227]="ConditionalExpression",e[e.TemplateExpression=228]="TemplateExpression",e[e.YieldExpression=229]="YieldExpression",e[e.SpreadElement=230]="SpreadElement",e[e.ClassExpression=231]="ClassExpression",e[e.OmittedExpression=232]="OmittedExpression",e[e.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",e[e.AsExpression=234]="AsExpression",e[e.NonNullExpression=235]="NonNullExpression",e[e.MetaProperty=236]="MetaProperty",e[e.SyntheticExpression=237]="SyntheticExpression",e[e.SatisfiesExpression=238]="SatisfiesExpression",e[e.TemplateSpan=239]="TemplateSpan",e[e.SemicolonClassElement=240]="SemicolonClassElement",e[e.Block=241]="Block",e[e.EmptyStatement=242]="EmptyStatement",e[e.VariableStatement=243]="VariableStatement",e[e.ExpressionStatement=244]="ExpressionStatement",e[e.IfStatement=245]="IfStatement",e[e.DoStatement=246]="DoStatement",e[e.WhileStatement=247]="WhileStatement",e[e.ForStatement=248]="ForStatement",e[e.ForInStatement=249]="ForInStatement",e[e.ForOfStatement=250]="ForOfStatement",e[e.ContinueStatement=251]="ContinueStatement",e[e.BreakStatement=252]="BreakStatement",e[e.ReturnStatement=253]="ReturnStatement",e[e.WithStatement=254]="WithStatement",e[e.SwitchStatement=255]="SwitchStatement",e[e.LabeledStatement=256]="LabeledStatement",e[e.ThrowStatement=257]="ThrowStatement",e[e.TryStatement=258]="TryStatement",e[e.DebuggerStatement=259]="DebuggerStatement",e[e.VariableDeclaration=260]="VariableDeclaration",e[e.VariableDeclarationList=261]="VariableDeclarationList",e[e.FunctionDeclaration=262]="FunctionDeclaration",e[e.ClassDeclaration=263]="ClassDeclaration",e[e.InterfaceDeclaration=264]="InterfaceDeclaration",e[e.TypeAliasDeclaration=265]="TypeAliasDeclaration",e[e.EnumDeclaration=266]="EnumDeclaration",e[e.ModuleDeclaration=267]="ModuleDeclaration",e[e.ModuleBlock=268]="ModuleBlock",e[e.CaseBlock=269]="CaseBlock",e[e.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",e[e.ImportDeclaration=272]="ImportDeclaration",e[e.ImportClause=273]="ImportClause",e[e.NamespaceImport=274]="NamespaceImport",e[e.NamedImports=275]="NamedImports",e[e.ImportSpecifier=276]="ImportSpecifier",e[e.ExportAssignment=277]="ExportAssignment",e[e.ExportDeclaration=278]="ExportDeclaration",e[e.NamedExports=279]="NamedExports",e[e.NamespaceExport=280]="NamespaceExport",e[e.ExportSpecifier=281]="ExportSpecifier",e[e.MissingDeclaration=282]="MissingDeclaration",e[e.ExternalModuleReference=283]="ExternalModuleReference",e[e.JsxElement=284]="JsxElement",e[e.JsxSelfClosingElement=285]="JsxSelfClosingElement",e[e.JsxOpeningElement=286]="JsxOpeningElement",e[e.JsxClosingElement=287]="JsxClosingElement",e[e.JsxFragment=288]="JsxFragment",e[e.JsxOpeningFragment=289]="JsxOpeningFragment",e[e.JsxClosingFragment=290]="JsxClosingFragment",e[e.JsxAttribute=291]="JsxAttribute",e[e.JsxAttributes=292]="JsxAttributes",e[e.JsxSpreadAttribute=293]="JsxSpreadAttribute",e[e.JsxExpression=294]="JsxExpression",e[e.JsxNamespacedName=295]="JsxNamespacedName",e[e.CaseClause=296]="CaseClause",e[e.DefaultClause=297]="DefaultClause",e[e.HeritageClause=298]="HeritageClause",e[e.CatchClause=299]="CatchClause",e[e.ImportAttributes=300]="ImportAttributes",e[e.ImportAttribute=301]="ImportAttribute",e[e.AssertClause=300]="AssertClause",e[e.AssertEntry=301]="AssertEntry",e[e.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",e[e.PropertyAssignment=303]="PropertyAssignment",e[e.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",e[e.SpreadAssignment=305]="SpreadAssignment",e[e.EnumMember=306]="EnumMember",e[e.SourceFile=307]="SourceFile",e[e.Bundle=308]="Bundle",e[e.JSDocTypeExpression=309]="JSDocTypeExpression",e[e.JSDocNameReference=310]="JSDocNameReference",e[e.JSDocMemberName=311]="JSDocMemberName",e[e.JSDocAllType=312]="JSDocAllType",e[e.JSDocUnknownType=313]="JSDocUnknownType",e[e.JSDocNullableType=314]="JSDocNullableType",e[e.JSDocNonNullableType=315]="JSDocNonNullableType",e[e.JSDocOptionalType=316]="JSDocOptionalType",e[e.JSDocFunctionType=317]="JSDocFunctionType",e[e.JSDocVariadicType=318]="JSDocVariadicType",e[e.JSDocNamepathType=319]="JSDocNamepathType",e[e.JSDoc=320]="JSDoc",e[e.JSDocComment=320]="JSDocComment",e[e.JSDocText=321]="JSDocText",e[e.JSDocTypeLiteral=322]="JSDocTypeLiteral",e[e.JSDocSignature=323]="JSDocSignature",e[e.JSDocLink=324]="JSDocLink",e[e.JSDocLinkCode=325]="JSDocLinkCode",e[e.JSDocLinkPlain=326]="JSDocLinkPlain",e[e.JSDocTag=327]="JSDocTag",e[e.JSDocAugmentsTag=328]="JSDocAugmentsTag",e[e.JSDocImplementsTag=329]="JSDocImplementsTag",e[e.JSDocAuthorTag=330]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",e[e.JSDocClassTag=332]="JSDocClassTag",e[e.JSDocPublicTag=333]="JSDocPublicTag",e[e.JSDocPrivateTag=334]="JSDocPrivateTag",e[e.JSDocProtectedTag=335]="JSDocProtectedTag",e[e.JSDocReadonlyTag=336]="JSDocReadonlyTag",e[e.JSDocOverrideTag=337]="JSDocOverrideTag",e[e.JSDocCallbackTag=338]="JSDocCallbackTag",e[e.JSDocOverloadTag=339]="JSDocOverloadTag",e[e.JSDocEnumTag=340]="JSDocEnumTag",e[e.JSDocParameterTag=341]="JSDocParameterTag",e[e.JSDocReturnTag=342]="JSDocReturnTag",e[e.JSDocThisTag=343]="JSDocThisTag",e[e.JSDocTypeTag=344]="JSDocTypeTag",e[e.JSDocTemplateTag=345]="JSDocTemplateTag",e[e.JSDocTypedefTag=346]="JSDocTypedefTag",e[e.JSDocSeeTag=347]="JSDocSeeTag",e[e.JSDocPropertyTag=348]="JSDocPropertyTag",e[e.JSDocThrowsTag=349]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",e[e.JSDocImportTag=351]="JSDocImportTag",e[e.SyntaxList=352]="SyntaxList",e[e.NotEmittedStatement=353]="NotEmittedStatement",e[e.NotEmittedTypeElement=354]="NotEmittedTypeElement",e[e.PartiallyEmittedExpression=355]="PartiallyEmittedExpression",e[e.CommaListExpression=356]="CommaListExpression",e[e.SyntheticReferenceExpression=357]="SyntheticReferenceExpression",e[e.Count=358]="Count",e[e.FirstAssignment=64]="FirstAssignment",e[e.LastAssignment=79]="LastAssignment",e[e.FirstCompoundAssignment=65]="FirstCompoundAssignment",e[e.LastCompoundAssignment=79]="LastCompoundAssignment",e[e.FirstReservedWord=83]="FirstReservedWord",e[e.LastReservedWord=118]="LastReservedWord",e[e.FirstKeyword=83]="FirstKeyword",e[e.LastKeyword=165]="LastKeyword",e[e.FirstFutureReservedWord=119]="FirstFutureReservedWord",e[e.LastFutureReservedWord=127]="LastFutureReservedWord",e[e.FirstTypeNode=182]="FirstTypeNode",e[e.LastTypeNode=205]="LastTypeNode",e[e.FirstPunctuation=19]="FirstPunctuation",e[e.LastPunctuation=79]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=165]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=9]="FirstLiteralToken",e[e.LastLiteralToken=15]="LastLiteralToken",e[e.FirstTemplateToken=15]="FirstTemplateToken",e[e.LastTemplateToken=18]="LastTemplateToken",e[e.FirstBinaryOperator=30]="FirstBinaryOperator",e[e.LastBinaryOperator=79]="LastBinaryOperator",e[e.FirstStatement=243]="FirstStatement",e[e.LastStatement=259]="LastStatement",e[e.FirstNode=166]="FirstNode",e[e.FirstJSDocNode=309]="FirstJSDocNode",e[e.LastJSDocNode=351]="LastJSDocNode",e[e.FirstJSDocTagNode=327]="FirstJSDocTagNode",e[e.LastJSDocTagNode=351]="LastJSDocTagNode",e[e.FirstContextualKeyword=128]="FirstContextualKeyword",e[e.LastContextualKeyword=165]="LastContextualKeyword",e))(Np||{}),EP=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.Using=4]="Using",e[e.AwaitUsing=6]="AwaitUsing",e[e.NestedNamespace=8]="NestedNamespace",e[e.Synthesized=16]="Synthesized",e[e.Namespace=32]="Namespace",e[e.OptionalChain=64]="OptionalChain",e[e.ExportContext=128]="ExportContext",e[e.ContainsThis=256]="ContainsThis",e[e.HasImplicitReturn=512]="HasImplicitReturn",e[e.HasExplicitReturn=1024]="HasExplicitReturn",e[e.GlobalAugmentation=2048]="GlobalAugmentation",e[e.HasAsyncFunctions=4096]="HasAsyncFunctions",e[e.DisallowInContext=8192]="DisallowInContext",e[e.YieldContext=16384]="YieldContext",e[e.DecoratorContext=32768]="DecoratorContext",e[e.AwaitContext=65536]="AwaitContext",e[e.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=262144]="ThisNodeHasError",e[e.JavaScriptFile=524288]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=2097152]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",e[e.JSDoc=16777216]="JSDoc",e[e.Ambient=33554432]="Ambient",e[e.InWithStatement=67108864]="InWithStatement",e[e.JsonFile=134217728]="JsonFile",e[e.TypeCached=268435456]="TypeCached",e[e.Deprecated=536870912]="Deprecated",e[e.BlockScoped=7]="BlockScoped",e[e.Constant=6]="Constant",e[e.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",e[e.ContextFlags=101441536]="ContextFlags",e[e.TypeExcludesFlags=81920]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",e))(EP||{}),nvi=(e=>(e[e.None=0]="None",e[e.Public=1]="Public",e[e.Private=2]="Private",e[e.Protected=4]="Protected",e[e.Readonly=8]="Readonly",e[e.Override=16]="Override",e[e.Export=32]="Export",e[e.Abstract=64]="Abstract",e[e.Ambient=128]="Ambient",e[e.Static=256]="Static",e[e.Accessor=512]="Accessor",e[e.Async=1024]="Async",e[e.Default=2048]="Default",e[e.Const=4096]="Const",e[e.In=8192]="In",e[e.Out=16384]="Out",e[e.Decorator=32768]="Decorator",e[e.Deprecated=65536]="Deprecated",e[e.JSDocPublic=8388608]="JSDocPublic",e[e.JSDocPrivate=16777216]="JSDocPrivate",e[e.JSDocProtected=33554432]="JSDocProtected",e[e.JSDocReadonly=67108864]="JSDocReadonly",e[e.JSDocOverride=134217728]="JSDocOverride",e[e.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",e[e.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",e[e.SyntacticModifiers=65535]="SyntacticModifiers",e[e.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",e[e.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",e[e.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",e[e.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=7]="AccessibilityModifier",e[e.ParameterPropertyModifier=31]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=28895]="TypeScriptModifier",e[e.ExportDefault=2080]="ExportDefault",e[e.All=131071]="All",e[e.Modifier=98303]="Modifier",e))(nvi||{}),ivi=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e[e.ComplexityOverflow=32]="ComplexityOverflow",e[e.StackDepthOverflow=64]="StackDepthOverflow",e[e.Overflow=96]="Overflow",e))(ivi||{}),kNr=(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))(kNr||{}),svi=(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=-1]="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))(svi||{}),ovi=(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.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",e[e.AssignmentsMarked=131072]="AssignmentsMarked",e[e.ContainsConstructorReference=262144]="ContainsConstructorReference",e[e.ConstructorReference=536870912]="ConstructorReference",e[e.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=4194304]="InCheckIdentifier",e[e.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",e[e.LazyFlags=539358128]="LazyFlags",e))(ovi||{}),LG=(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.Reserved1=536870912]="Reserved1",e[e.Reserved2=1073741824]="Reserved2",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.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.Primitive=402784252]="Primitive",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=473694207]="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.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",e[e.IncludesError=1073741824]="IncludesError",e[e.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",e))(LG||{}),avi=(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.InstantiatedMapped=96]="InstantiatedMapped",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.SingleSignatureType=134217728]="SingleSignatureType",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[e.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",e))(avi||{}),cvi=(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.IsNonInferrable=64]="IsNonInferrable",e[e.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",e[e.PropagatingFlags=167]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(cvi||{}),Oee=(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))(Oee||{}),sDr=(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.ES2023=10]="ES2023",e[e.ES2024=11]="ES2024",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(sDr||{}),lvi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(lvi||{}),lH=(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))(lH||{}),uvi=(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))(uvi||{}),gvi=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(gvi||{}),Avi=(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.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e))(Avi||{}),hJe={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},dvi={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},{name:"preserve",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}},BJe=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(BJe||{}),oCe="/",Mja="\\",F2i="://",Hja=/\\/g;function Yja(e){return e===47||e===92}function Qja(e,t){return e.length>t.length&&Lja(e,t)}function oDr(e){return e.length>0&&Yja(e.charCodeAt(e.length-1))}function Z2i(e){return e>=97&&e<=122||e>=65&&e<=90}function Xja(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let n=e.charCodeAt(t+2);if(n===97||n===65)return t+3}return-1}function Jja(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let n=e.indexOf(t===47?oCe:Mja,2);return n<0?e.length:n+1}if(Z2i(t)&&e.charCodeAt(1)===58){let n=e.charCodeAt(2);if(n===47||n===92)return 3;if(e.length===2)return 2}let r=e.indexOf(F2i);if(r!==-1){let n=r+F2i.length,a=e.indexOf(oCe,n);if(a!==-1){let o=e.slice(0,r),l=e.slice(n,a);if(o==="file"&&(l===""||l==="localhost")&&Z2i(e.charCodeAt(a+1))){let A=Xja(e,a+2);if(A!==-1){if(e.charCodeAt(A)===47)return~(A+1);if(A===e.length)return~A}}return~(a+1)}return~e.length}return 0}function cEt(e){let t=Jja(e);return t<0?~t:t}function pvi(e,t,r){if(e=lEt(e),cEt(e)===e.length)return"";e=Ivi(e);let n=e.slice(Math.max(cEt(e),e.lastIndexOf(oCe)+1)),a=t!==void 0&&r!==void 0?fvi(n,t,r):void 0;return a?n.slice(0,n.length-a.length):n}function L2i(e,t,r){if(aEt(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let n=e.slice(e.length-t.length);if(r(n,t))return n}}function Uja(e,t,r){if(typeof t=="string")return L2i(e,t,r)||"";for(let n of t){let a=L2i(e,n,r);if(a)return a}return""}function fvi(e,t,r){if(t)return Uja(Ivi(e),t,r?iDr:xja);let n=pvi(e),a=n.lastIndexOf(".");return a>=0?n.substring(a):""}function Kja(e,t){let r=e.substring(0,t),n=e.substring(t).split(oCe);return n.length&&!tCe(n)&&n.pop(),[r,...n]}function jja(e,t=""){return e=$ja(t,e),Kja(e,cEt(e))}function zja(e,t){return e.length===0?"":(e[0]&&aDr(e[0]))+e.slice(1,t).join(oCe)}function lEt(e){return e.includes("\\")?e.replace(Hja,oCe):e}function qja(e){if(!gD(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(n)}}return t}function $ja(e,...t){e&&(e=lEt(e));for(let r of t)r&&(r=lEt(r),!e||cEt(r)!==0?e=r:e=aDr(e)+r);return e}function e7a(e){if(e=lEt(e),!V2i.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!V2i.test(e)))return e;let r=zja(qja(jja(e)));return r&&oDr(e)?aDr(r):r}function Ivi(e){return oDr(e)?e.substr(0,e.length-1):e}function aDr(e){return oDr(e)?e:e+oCe}var V2i=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function $(e,t,r,n,a,o,l){return{code:e,category:t,key:r,message:n,reportsUnnecessary:a,elidedInCompatabilityPyramid:o,reportsDeprecated:l}}var ts={Unterminated_string_literal:$(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:$(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:$(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:$(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:$(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:$(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:$(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:$(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:$(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:$(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:$(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:$(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:$(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:$(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:$(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:$(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_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:$(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:$(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:$(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:$(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:$(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:$(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:$(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:$(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:$(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:$(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:$(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:$(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:$(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:$(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:$(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:$(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:$(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:$(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:$(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:$(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:$(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:$(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:$(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:$(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:$(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:$(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:$(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:$(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:$(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:$(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:$(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:$(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:$(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:$(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:$(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:$(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:$(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:$(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:$(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:$(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:$(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:$(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:$(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:$(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:$(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:$(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:$(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:$(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:$(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:$(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:$(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:$(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:$(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:$(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:$(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:$(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."),_0_declarations_must_be_initialized:$(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:$(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:$(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:$(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:$(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:$(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:$(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:$(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:$(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:$(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:$(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:$(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:$(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:$(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:$(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:$(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:$(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(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:$(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:$(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:$(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:$(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:$(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:$(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:$(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:$(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:$(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:$(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:$(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_ES5:$(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:$(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:$(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:$(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:$(1293,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ESM syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),with_statements_are_not_allowed_in_an_async_function_block:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_nodenext_or_preserve:$(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodene_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:$(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:$(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:$(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:$(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:$(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:$(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:$(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:$(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:$(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),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:$(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:$(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:$(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_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(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', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:$(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:$(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:$(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:$(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:$(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:$(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:$(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:$(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:$(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:$(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:$(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:$(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:$(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:$(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:$(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:$(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:$(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:$(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:$(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:$(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:$(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:$(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:$(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:$(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:$(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:$(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_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(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', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:$(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:$(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:$(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:$(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:$(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:$(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:$(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:$(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:$(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:$(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:$(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:$(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:$(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_set_of_attributes_as_arguments:$(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes 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:$(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_should_be_either_require_or_import:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:$(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:$(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:$(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:$(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:$(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:$(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:$(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:$(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:$(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:$(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:$(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:$(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:$(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:$(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:$(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:$(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:$(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:$(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:$(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:$(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:$(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:$(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:$(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:$(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:$(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:$(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:$(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:$(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:$(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:$(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:$(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:$(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:$(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:$(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:$(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:$(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:$(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:$(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:$(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:$(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:$(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:$(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:$(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:$(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:$(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:$(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:$(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:$(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:$(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:$(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:$(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:$(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:$(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:$(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:$(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),The_types_of_0_are_incompatible_between_these_types:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:$(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:$(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(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:$(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:$(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:$(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:$(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:$(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:$(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:$(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:$(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:$(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:$(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:$(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:$(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:$(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:$(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}'."),Untyped_function_calls_may_not_accept_type_arguments:$(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:$(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:$(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:$(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:$(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:$(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:$(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:$(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_undefined_void_nor_any_must_return_a_value:$(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:$(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:$(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:$(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_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:$(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),Overload_signatures_must_all_be_exported_or_non_exported:$(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:$(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:$(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:$(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:$(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:$(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:$(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:$(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:$(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:$(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:$(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:$(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:$(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:$(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:$(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:$(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:$(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:$(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:$(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:$(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:$(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:$(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:$(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:$(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:$(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:$(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:$(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:$(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:$(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:$(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_ES5_Consider_using_a_standard_function_expression:$(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in 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:$(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:$(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:$(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:$(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:$(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:$(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:$(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_ES5_Consider_using_a_standard_function_or_method:$(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:$(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:$(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:$(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:$(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:$(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:$(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:$(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:$(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:$(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:$(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:$(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:$(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:$(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),React_components_cannot_include_JSX_namespace_names:$(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:$(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."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:$(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:$(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:$(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:$(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}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:$(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:$(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:$(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 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:$(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:$(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:$(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:$(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:$(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:$(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:$(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:$(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:$(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:$(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:$(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:$(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:$(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:$(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:$(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:$(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:$(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_nodenext_or_preserve:$(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:$(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."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:$(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:$(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:$(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_compile_to_CommonJS_require_calls:$(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:$(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:$(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:$(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_It_can_only_extend_other_named_object_types:$(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:$(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:$(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:$(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:$(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:$(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?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:$(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:$(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:$(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:$(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_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:$(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements 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_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:$(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:$(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:$(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:$(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:$(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:$(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:$(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:$(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:$(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:$(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:$(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:$(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:$(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:$(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:$(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:$(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:$(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:$(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:$(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:$(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:$(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:$(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_declaration_0_is_using_private_name_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(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:$(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_anonymous_class_type_may_not_be_private_or_protected:$(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type 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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:$(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:$(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),The_current_host_does_not_support_the_0_option:$(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:$(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:$(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:$(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:$(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(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_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_cannot_be_specified_when_module_is_set_to_none_system_or_umd:$(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:$(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:$(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:$(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:$(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:$(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:$(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:$(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_preserve_or_to_es2015_or_later:$(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:$(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:$(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:$(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:$(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:$(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:$(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:$(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:$(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:$(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:$(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:$(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."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:$(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:$(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:$(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:$(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:$(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:$(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:$(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:$(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:$(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:$(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:$(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:$(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:$(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:$(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:$(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:$(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:$(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:$(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:$(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:$(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:$(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:$(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:$(6024,3,"options_6024","options"),file:$(6025,3,"file_6025","file"),Examples_Colon_0:$(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:$(6027,3,"Options_Colon_6027","Options:"),Version_0:$(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:$(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:$(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:$(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:$(6034,3,"KIND_6034","KIND"),FILE:$(6035,3,"FILE_6035","FILE"),VERSION:$(6036,3,"VERSION_6036","VERSION"),LOCATION:$(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:$(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:$(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:$(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:$(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:$(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:$(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:$(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:$(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:$(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:$(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:$(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:$(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:$(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:$(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:$(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:$(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:$(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:$(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:$(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:$(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:$(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:$(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:$(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:$(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:$(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:$(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:$(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:$(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:$(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:$(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:$(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:$(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:$(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:$(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:$(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:$(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:$(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:$(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:$(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:$(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:$(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:$(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:$(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:$(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:$(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:$(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:$(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:$(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:$(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:$(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:$(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:$(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:$(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:$(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:$(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:$(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:$(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:$(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:$(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:$(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:$(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:$(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:$(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:$(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:$(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:$(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:$(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:$(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:$(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:$(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:$(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:$(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:$(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:$(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:$(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:$(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:$(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:$(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:$(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:$(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:$(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:$(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:$(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:$(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:$(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:$(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:$(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:$(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:$(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:$(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:$(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:$(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:$(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:$(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:$(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:$(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:$(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:$(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:$(6244,3,"Modules_6244","Modules"),File_Management:$(6245,3,"File_Management_6245","File Management"),Emit:$(6246,3,"Emit_6246","Emit"),JavaScript_Support:$(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:$(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:$(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:$(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:$(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:$(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:$(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:$(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:$(6255,3,"Projects_6255","Projects"),Output_Formatting:$(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:$(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:$(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_0:$(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:$(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:$(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:$(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:$(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:$(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."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:$(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:$(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:$(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:$(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:$(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:$(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:$(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:$(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:$(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:$(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:$(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:$(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."),Referenced_project_0_may_not_disable_emit:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:$(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:$(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:$(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:$(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}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:$(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:$(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:$(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:$(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:$(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:$(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:$(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:$(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:$(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:$(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:$(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:$(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:$(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:$(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),Skip_building_downstream_projects_on_error_in_upstream_project:$(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:$(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:$(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:$(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:$(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:$(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:$(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:$(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:$(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:$(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:$(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."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:$(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:$(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Default_catch_clause_variables_as_unknown_instead_of_any:$(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:$(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."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:$(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:$(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:$(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),one_of_Colon:$(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:$(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:$(6902,3,"type_Colon_6902","type:"),default_Colon:$(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:$(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:$(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:$(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:$(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:$(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:$(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:$(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:$(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:$(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:$(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:$(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:$(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:$(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:$(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:$(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:$(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:$(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:$(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:$(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:$(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:$(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:$(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:$(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:$(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:$(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:$(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:$(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:$(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:$(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:$(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_Consider_supplying_a_return_type_annotation:$(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:$(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:$(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:$(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:$(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:$(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:$(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:$(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:$(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:$(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."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:$(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:$(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:$(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:$(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:$(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:$(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:$(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:$(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:$(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:$(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:$(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:$(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:$(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:$(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:$(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:$(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:$(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:$(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:$(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:$(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:$(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:$(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:$(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:$(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:$(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:$(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:$(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:$(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:$(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:$(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:$(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:$(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}'?"),Unicode_escape_sequence_cannot_appear_here:$(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),JSDoc_typedef_may_be_converted_to_TypeScript_type:$(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:$(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:$(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:$(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:$(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:$(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:$(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:$(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:$(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:$(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:$(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:$(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:$(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:$(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:$(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:$(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:$(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:$(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:$(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:$(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:$(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:$(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:$(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:$(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:$(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:$(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:$(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:$(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:$(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:$(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:$(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:$(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:$(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:$(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:$(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:$(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:$(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:$(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:$(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:$(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:$(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:$(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:$(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:$(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:$(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:$(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:$(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:$(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:$(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:$(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:$(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:$(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:$(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:$(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:$(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:$(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:$(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:$(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:$(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:$(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:$(95005,3,"Extract_function_95005","Extract function"),Extract_constant:$(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:$(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:$(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:$(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:$(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:$(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:$(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:$(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:$(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:$(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:$(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:$(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:$(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:$(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:$(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:$(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:$(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:$(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:$(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:$(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:$(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:$(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:$(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:$(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:$(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:$(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:$(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:$(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:$(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:$(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:$(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:$(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:$(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:$(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:$(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:$(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:$(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:$(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:$(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:$(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:$(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:$(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:$(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:$(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:$(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:$(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:$(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:$(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:$(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:$(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:$(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:$(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:$(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:$(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:$(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:$(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:$(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:$(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:$(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:$(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:$(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:$(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:$(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:$(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:$(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:$(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:$(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:$(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:$(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:$(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:$(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:$(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:$(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:$(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:$(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:$(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:$(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:$(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:$(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:$(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:$(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:$(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:$(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:$(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:$(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:$(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:$(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:$(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:$(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:$(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:$(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:$(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:$(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:$(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:$(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:$(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:$(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:$(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:$(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:$(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:$(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:$(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:$(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:$(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:$(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:$(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:$(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:$(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:$(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:$(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:$(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:$(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:$(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:$(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:$(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:$(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:$(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:$(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:$(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:$(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:$(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:$(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:$(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:$(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:$(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:$(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:$(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:$(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:$(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:$(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:$(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:$(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:$(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:$(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:$(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:$(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:$(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:$(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:$(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:$(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:$(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:$(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:$(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:$(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:$(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:$(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:$(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:$(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:$(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:$(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:$(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:$(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:$(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:$(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:$(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:$(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:$(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:$(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:$(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:$(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:$(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:$(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:$(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:$(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:$(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:$(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:$(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:$(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:$(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:$(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:$(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:$(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:$(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:$(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:$(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:$(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:$(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:$(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:$(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:$(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:$(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:$(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:$(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:$(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:$(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:$(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:$(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:$(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:$(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:$(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:$(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:$(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:$(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:$(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:$(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:$(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:$(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:$(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'.")};function X1(e){return e>=80}function t7a(e){return e===32||X1(e)}var cDr={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},r7a=new Map(Object.entries(cDr)),hvi=new Map(Object.entries({...cDr,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),mvi=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),n7a=new Map([[1,hJe.RegularExpressionFlagsHasIndices],[16,hJe.RegularExpressionFlagsDotAll],[32,hJe.RegularExpressionFlagsUnicode],[64,hJe.RegularExpressionFlagsUnicodeSets],[128,hJe.RegularExpressionFlagsSticky]]),i7a=[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],s7a=[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],o7a=[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,2160,2183,2185,2190,2208,2249,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,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,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,5905,5919,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,6988,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,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,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,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,43881,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,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,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,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,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,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,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,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,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,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,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],a7a=[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,2160,2183,2185,2190,2200,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,2901,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,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,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,3790,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,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,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,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,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,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,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,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,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,43881,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,65381,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,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,70753,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,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,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,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,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,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,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,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,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,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],c7a=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,l7a=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,u7a=/@(?:see|link)/i;function uEt(e,t){if(e=2?uEt(e,o7a):uEt(e,i7a)}function A7a(e,t){return t>=2?uEt(e,a7a):uEt(e,s7a)}function Cvi(e){let t=[];return e.forEach((r,n)=>{t[r]=n}),t}var d7a=Cvi(hvi);function Sy(e){return d7a[e]}function _vi(e){return hvi.get(e)}var TBu=Cvi(mvi);function W2i(e){return mvi.get(e)}function yvi(e){let t=[],r=0,n=0;for(;r127&&vV(a)&&(t.push(n),n=r);break}}return t.push(n),t}function p7a(e,t,r,n,a){(t<0||t>=e.length)&&(a?t=t<0?0:t>=e.length?e.length-1:t:Zo.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${n!==void 0?mja(e,yvi(n)):"unknown"}`));let o=e[t]+r;return a?o>e[t+1]?e[t+1]:typeof n=="string"&&o>n.length?n.length:o:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function vV(e){return e===10||e===13||e===8232||e===8233}function kce(e){return e>=48&&e<=57}function hNr(e){return kce(e)||e>=65&&e<=70||e>=97&&e<=102}function lDr(e){return e>=65&&e<=90||e>=97&&e<=122}function Evi(e){return lDr(e)||kce(e)||e===95}function mNr(e){return e>=48&&e<=55}function B6(e,t,r,n,a){if(VJe(t))return t;let o=!1;for(;;){let l=e.charCodeAt(t);switch(l){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;o=!!a;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(n)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&KNe(l)){t++;continue}break}return t}}var rEt=7;function zme(e,t){if(Zo.assert(t>=0),t===0||vV(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+rEt=0&&r127&&KNe(B)){b&&vV(B)&&(C=!0),r++;continue}break e}}return b&&(N=a(A,f,I,C,o,N)),N}function h7a(e,t,r,n){return CEt(!1,e,t,!1,r,n)}function m7a(e,t,r,n){return CEt(!1,e,t,!0,r,n)}function C7a(e,t,r,n,a){return CEt(!0,e,t,!1,r,n,a)}function _7a(e,t,r,n,a){return CEt(!0,e,t,!0,r,n,a)}function Bvi(e,t,r,n,a,o=[]){return o.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),o}function GNr(e,t){return C7a(e,t,Bvi,void 0,void 0)}function y7a(e,t){return _7a(e,t,Bvi,void 0,void 0)}function wvi(e){let t=uDr.exec(e);if(t)return t[0]}function f4(e,t){return lDr(e)||e===36||e===95||e>127&&g7a(e,t)}function Vee(e,t,r){return Evi(e)||e===36||(r===1?e===45||e===58:!1)||e>127&&A7a(e,t)}function b7a(e,t,r){let n=qme(e,0);if(!f4(n,t))return!1;for(let a=VR(n);aC,getStartPos:()=>C,getTokenEnd:()=>f,getTextPos:()=>f,getToken:()=>E,getTokenStart:()=>b,getTokenPos:()=>b,getTokenText:()=>A.substring(b,f),getTokenValue:()=>N,hasUnicodeEscape:()=>(B&1024)!==0,hasExtendedUnicodeEscape:()=>(B&8)!==0,hasPrecedingLineBreak:()=>(B&1)!==0,hasPrecedingJSDocComment:()=>(B&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(B&32768)!==0,isIdentifier:()=>E===80||E>118,isReservedWord:()=>E>=83&&E<=118,isUnterminated:()=>(B&4)!==0,getCommentDirectives:()=>F,getNumericLiteralFlags:()=>B&25584,getTokenFlags:()=>B,reScanGreaterToken:qr,reScanAsteriskEqualsToken:yn,reScanSlashToken:ke,reScanTemplateToken:Ao,reScanTemplateHeadOrNoSubstitutionTemplate:Vr,scanJsxIdentifier:ol,scanJsxAttributeValue:Sc,reScanJsxAttributeValue:Hr,reScanJsxToken:xi,reScanLessThanToken:no,reScanHashToken:ga,reScanQuestionToken:Ya,reScanInvalidIdentifier:cr,scanJsxToken:Gc,scanJsDocToken:Ft,scanJSDocCommentTextToken:Or,scan:Xt,getText:ps,clearCommentDirectives:yo,setText:bo,setScriptTarget:gc,setLanguageVariant:_g,setScriptKind:Nc,setJSDocParsingMode:sA,setOnError:Qa,resetTokenState:ma,setTextPos:ma,setSkipJsDocLeadingAsterisks:vu,tryScan:Qi,lookAhead:Pr,scanRange:Rn};return Zo.isDebugging&&Object.defineProperty(ne,"__debugShowCurrentPositionInText",{get:()=>{let li=ne.getText();return li.slice(0,ne.getTokenFullStart())+"\u2551"+li.slice(ne.getTokenFullStart())}}),ne;function ce(li){return qme(A,li)}function fe(li){return li>=0&&li=0&&li=65&&Oc<=70)Oc+=32;else if(!(Oc>=48&&Oc<=57||Oc>=97&&Oc<=102))break;Xa.push(Oc),f++,Ql=!1}return Xa.length=I){Ws+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}let ac=ue(f);if(ac===Ei){Ws+=A.substring(Xa,f),f++;break}if(ac===92&&!li){Ws+=A.substring(Xa,f),Ws+=Ot(3),Xa=f;continue}if((ac===10||ac===13)&&!li){Ws+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}f++}return Ws}function lt(li){let Ei=ue(f)===96;f++;let Ws=f,Xa="",ac;for(;;){if(f>=I){Xa+=A.substring(Ws,f),B|=4,be(ts.Unterminated_template_literal),ac=Ei?15:18;break}let Ql=ue(f);if(Ql===96){Xa+=A.substring(Ws,f),f++,ac=Ei?15:18;break}if(Ql===36&&f+1=I)return be(ts.Unexpected_end_of_text),"";let Ws=ue(f);switch(f++,Ws){case 48:if(f>=I||!kce(ue(f)))return"\0";case 49:case 50:case 51:f=55296&&Xa<=56319&&f+6=56320&&vg<=57343)return f=Oc,ac+String.fromCharCode(vg)}return ac;case 120:for(;f1114111&&(li&&be(ts.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Ws,f-Ws),Ql=!0),f>=I?(li&&be(ts.Unexpected_end_of_text),Ql=!0):ue(f)===125?f++:(li&&be(ts.Unterminated_Unicode_escape_sequence),Ql=!0),Ql?(B|=2048,A.substring(Ei,f)):(B|=8,O2i(ac))}function Sr(){if(f+5=0&&Vee(Ws,e)){li+=Er(!0),Ei=f;continue}if(Ws=Sr(),!(Ws>=0&&Vee(Ws,e)))break;B|=1024,li+=A.substring(Ei,f),li+=O2i(Ws),f+=6,Ei=f}else break}return li+=A.substring(Ei,f),li}function Dt(){let li=N.length;if(li>=2&&li<=12){let Ei=N.charCodeAt(0);if(Ei>=97&&Ei<=122){let Ws=r7a.get(N);if(Ws!==void 0)return E=Ws}}return E=80}function Fr(li){let Ei="",Ws=!1,Xa=!1;for(;;){let ac=ue(f);if(ac===95){B|=512,Ws?(Ws=!1,Xa=!0):be(Xa?ts.Multiple_consecutive_numeric_separators_are_not_permitted:ts.Numeric_separators_are_not_allowed_here,f,1),f++;continue}if(Ws=!0,!kce(ac)||ac-48>=li)break;Ei+=A[f],f++,Xa=!1}return ue(f-1)===95&&be(ts.Numeric_separators_are_not_allowed_here,f-1,1),Ei}function $t(){return ue(f)===110?(N+="n",B&384&&(N=Vqa(N)+"n"),f++,10):(N=""+(B&128?parseInt(N.slice(2),2):B&256?parseInt(N.slice(2),8):+N),9)}function Xt(){for(C=f,B=0;;){if(b=f,f>=I)return E=1;let li=ce(f);if(f===0&&li===35&&Svi(A,f)){if(f=vvi(A,f),t)continue;return E=6}switch(li){case 10:case 13:if(B|=1,t){f++;continue}else return li===13&&f+1=0&&f4(Ei,e))return N=Er(!0)+Bt(),E=Dt();let Ws=Sr();return Ws>=0&&f4(Ws,e)?(f+=6,B|=1024,N=String.fromCharCode(Ws)+Bt(),E=Dt()):(be(ts.Invalid_character),f++,E=0);case 35:if(f!==0&&A[f+1]==="!")return be(ts.can_only_be_used_at_the_start_of_a_file,f,2),f++,E=0;let Xa=ce(f+1);if(Xa===92){f++;let Oc=jt();if(Oc>=0&&f4(Oc,e))return N="#"+Er(!0)+Bt(),E=81;let vg=Sr();if(vg>=0&&f4(vg,e))return f+=6,B|=1024,N="#"+String.fromCharCode(vg)+Bt(),E=81;f--}return f4(Xa,e)?(f++,Ar(Xa,e)):(N="#",be(ts.Invalid_character,f++,VR(li))),E=81;case 65533:return be(ts.File_appears_to_be_binary,0,0),f=I,E=8;default:let ac=Ar(li,e);if(ac)return E=ac;if(wJe(li)){f+=VR(li);continue}else if(vV(li)){B|=1,f+=VR(li);continue}let Ql=VR(li);return be(ts.Invalid_character,f,Ql),f+=Ql,E=0}}}function lr(){switch(ae){case 0:return!0;case 1:return!1}return J!==3&&J!==4?!0:ae===3?!1:u7a.test(A.slice(C,f))}function cr(){Zo.assert(E===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),f=b=C,B=0;let li=ce(f),Ei=Ar(li,99);return Ei?E=Ei:(f+=VR(li),E)}function Ar(li,Ei){let Ws=li;if(f4(Ws,Ei)){for(f+=VR(Ws);f=I)return E=1;let Ei=ue(f);if(Ei===60)return ue(f+1)===47?(f+=2,E=31):(f++,E=30);if(Ei===123)return f++,E=19;let Ws=0;for(;f0)break;KNe(Ei)||(Ws=f)}f++}return N=A.substring(C,f),Ws===-1?13:12}function ol(){if(X1(E)){for(;f=I)return E=1;for(let Ei=ue(f);f=0&&wJe(ue(f-1))&&!(f+1=I)return E=1;let li=ce(f);switch(f+=VR(li),li){case 9:case 11:case 12:case 32:for(;f=0&&f4(Ei,e))return N=Er(!0)+Bt(),E=Dt();let Ws=Sr();return Ws>=0&&f4(Ws,e)?(f+=6,B|=1024,N=String.fromCharCode(Ws)+Bt(),E=Dt()):(f++,E=0)}if(f4(li,e)){let Ei=li;for(;f=0),f=li,C=li,b=li,E=0,N=void 0,B=0}function vu(li){Q+=li?1:-1}}function qme(e,t){return e.codePointAt(t)}function VR(e){return e>=65536?2:e===-1?0:1}function E7a(e){if(Zo.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)}var S7a=String.fromCodePoint?e=>String.fromCodePoint(e):E7a;function O2i(e){return S7a(e)}var P2i=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),M2i=new Set(["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","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","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"]),H2i=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),JNe={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};JNe.Script_Extensions=JNe.Script;function S6(e){return e.start+e.length}function v7a(e){return e.length===0}function ADr(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function B7a(e,t){return ADr(e,t-e)}function mJe(e){return ADr(e.span.start,e.newLength)}function w7a(e){return v7a(e.span)&&e.newLength===0}function Tvi(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var RBu=Tvi(ADr(0,0),0);function Rvi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function gEt(e){return(e.flags&16)===0}function T7a(e,t){if(e===void 0||gEt(e))return e;for(e=e.original;e;){if(gEt(e))return!t||t(e)?e:void 0;e=e.original}}function PNe(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function GJe(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 wV(e){return GJe(e.escapedText)}function Nvi(e){let t=_vi(e.escapedText);return t?Dja(t,xce):void 0}function FNr(e){return e.valueDeclaration&&$7a(e.valueDeclaration)?wV(e.valueDeclaration.name):GJe(e.escapedName)}function Dvi(e){let t=e.parent.parent;if(t){if(X2i(t))return Ubt(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return Ubt(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:let n=r.argumentExpression;if(t_(n))return n}break;case 217:return Ubt(t.expression);case 256:{if(X2i(t.statement)||Aza(t.statement))return Ubt(t.statement);break}}}}function Ubt(e){let t=kvi(e);return t&&t_(t)?t:void 0}function R7a(e){return e.name||Dvi(e)}function N7a(e){return!!e.name}function dDr(e){switch(e.kind){case 80:return e;case 348:case 341:{let{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{let r=e;switch(mDr(r)){case 1:case 4:case 5:case 3:return CDr(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 346:return R7a(e);case 340:return Dvi(e);case 277:{let{expression:r}=e;return t_(r)?r:void 0}case 212:let t=e;if(Uvi(t))return t.argumentExpression}return e.name}function kvi(e){if(e!==void 0)return dDr(e)||(pBi(e)||fBi(e)||HNr(e)?D7a(e):void 0)}function D7a(e){if(e.parent){if(U$a(e.parent)||D$a(e.parent))return e.parent.name;if(eDe(e.parent)&&e===e.parent.right){if(t_(e.parent.left))return e.parent.left;if(eBi(e.parent.left))return CDr(e.parent.left)}else if(hBi(e.parent)&&t_(e.parent.name))return e.parent.name}else return}function k7a(e){if(oqa(e))return Pee(e.modifiers,BDr)}function x7a(e){if(PJe(e,98303))return Pee(e.modifiers,rza)}function xvi(e,t){if(e.name)if(t_(e.name)){let r=e.name.escapedText;return FJe(e.parent,t).filter(n=>cSi(n)&&t_(n.name)&&n.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);Zo.assert(r>-1,"Parameters should always be in their parents' parameter list");let n=FJe(e.parent,t).filter(cSi);if(rlec(n)&&n.typeParameters.some(a=>a.name.escapedText===r))}function Z7a(e){return Gvi(e,!1)}function L7a(e){return Gvi(e,!0)}function V7a(e){return Wce(e,eec)}function W7a(e){return J7a(e,uec)}function O7a(e){return Wce(e,tec,!0)}function P7a(e){return Wce(e,rec,!0)}function M7a(e){return Wce(e,nec,!0)}function H7a(e){return Wce(e,iec,!0)}function Y7a(e){return Wce(e,sec,!0)}function Q7a(e){return Wce(e,aec,!0)}function X7a(e){let t=Wce(e,RDr);if(t&&t.typeExpression&&t.typeExpression.type)return t}function FJe(e,t){var r;if(!_Dr(e))return Z2;let n=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(n===void 0||t){let a=Yza(e,t);Zo.assert(a.length<2||a[0]!==a[1]),n=evi(a,o=>BBi(o)?o.tags:o),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=n)}return n}function Fvi(e){return FJe(e,!1)}function Wce(e,t,r){return qSi(FJe(e,r),t)}function J7a(e,t){return Fvi(e).filter(t)}function ZNr(e){return e.kind===80||e.kind===81}function U7a(e){return Oce(e)&&!!(e.flags&64)}function K7a(e){return MJe(e)&&!!(e.flags&64)}function Y2i(e){return dBi(e)&&!!(e.flags&64)}function pDr(e){return NDr(e,8)}function j7a(e){return iEt(e)&&!!(e.flags&64)}function fDr(e){return e>=166}function Zvi(e){return e>=0&&e<=165}function z7a(e){return Zvi(e.kind)}function Gce(e){return T6(e,"pos")&&T6(e,"end")}function q7a(e){return 9<=e&&e<=15}function Q2i(e){return 15<=e&&e<=18}function UNe(e){var t;return t_(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Lvi(e){var t;return aCe(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function $7a(e){return(fEt(e)||sza(e))&&aCe(e.name)}function Wee(e){switch(e){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function eza(e){return!!(qvi(e)&31)}function tza(e){return eza(e)||e===126||e===164||e===129}function rza(e){return Wee(e.kind)}function Vvi(e){let t=e.kind;return t===80||t===81||t===11||t===9||t===167}function Wvi(e){return!!e&&iza(e.kind)}function nza(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function iza(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return nza(e)}}function jNe(e){return e&&(e.kind===263||e.kind===231)}function sza(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function oza(e){let t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function aza(e){return hqa(e.kind)}function cza(e){if(e){let t=e.kind;return t===207||t===206}return!1}function lza(e){let t=e.kind;return t===209||t===210}function uza(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function zNe(e){return Ovi(pDr(e).kind)}function Ovi(e){switch(e){case 211:case 212:case 214:case 213:case 284:case 285:case 288:case 215:case 209:case 217:case 210:case 231:case 218:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 228:case 97:case 106:case 110:case 112:case 108:case 235:case 233:case 236:case 102:case 282:return!0;default:return!1}}function gza(e){return Pvi(pDr(e).kind)}function Pvi(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return Ovi(e)}}function Aza(e){return dza(pDr(e).kind)}function dza(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 356:case 355:case 238:return!0;default:return Pvi(e)}}function pza(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===346||e===338||e===348||e===202}function Mvi(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function Hvi(e){return e===252||e===251||e===259||e===246||e===244||e===242||e===249||e===250||e===248||e===245||e===256||e===253||e===255||e===257||e===258||e===243||e===247||e===254||e===353}function X2i(e){return e.kind===168?e.parent&&e.parent.kind!==345||cCe(e):pza(e.kind)}function fza(e){let t=e.kind;return Hvi(t)||Mvi(t)||Iza(e)}function Iza(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!Dza(e)}function hza(e){let t=e.kind;return Hvi(t)||Mvi(t)||t===241}function Yvi(e){return e.kind>=309&&e.kind<=351}function mza(e){return e.kind===320||e.kind===319||e.kind===321||yza(e)||Cza(e)||$$a(e)||wBi(e)}function Cza(e){return e.kind>=327&&e.kind<=351}function Kbt(e){return e.kind===178}function jbt(e){return e.kind===177}function rCe(e){if(!_Dr(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function _za(e){return!!e.initializer}function IDr(e){return e.kind===11||e.kind===15}function yza(e){return e.kind===324||e.kind===325||e.kind===326}function J2i(e){return(e.flags&33554432)!==0}var NBu=bza();function bza(){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,n)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&KNe(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:$Ne,decreaseIndent:$Ne,clear:()=>e=""}}function Eza(e,t){let r=e.entries();for(let[n,a]of r){let o=t(a,n);if(o)return o}}function Sza(e){return e.end-e.pos}function Qvi(e){return vza(e),(e.flags&1048576)!==0}function vza(e){e.flags&2097152||((e.flags&262144||Xk(e,Qvi))&&(e.flags|=1048576),e.flags|=2097152)}function Zce(e){for(;e&&e.kind!==307;)e=e.parent;return e}function nCe(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function LNr(e){return!nCe(e)}function AEt(e,t,r){if(nCe(e))return e.pos;if(Yvi(e)||e.kind===12)return B6((t??Zce(e)).text,e.pos,!1,!0);if(r&&rCe(e))return AEt(e.jsDoc[0],t);if(e.kind===352){t??(t=Zce(e));let n=rDr(TBi(e,t));if(n)return AEt(n,t,r)}return B6((t??Zce(e)).text,e.pos,!1,!1,kza(e))}function U2i(e,t,r=!1){return TJe(e.text,t,r)}function Bza(e){return!!Rvi(e,j$a)}function TJe(e,t,r=!1){if(nCe(t))return"";let n=e.substring(r?t.pos:B6(e,t.pos),t.end);return Bza(t)&&(n=n.split(/\r\n|\n|\r/).map(a=>a.replace(/^\s*\*/,"").trimStart()).join(` -`)),n}function qNe(e){let t=e.emitNode;return t&&t.flags||0}function wza(e,t,r){Zo.assertGreaterThanOrEqual(t,0),Zo.assertGreaterThanOrEqual(r,0),Zo.assertLessThanOrEqual(t,e.length),Zo.assertLessThanOrEqual(t+r,e.length)}function nEt(e){return e.kind===244&&e.expression.kind===11}function hDr(e){return!!(qNe(e)&2097152)}function K2i(e){return hDr(e)&&mBi(e)}function Tza(e){return t_(e.name)&&!e.initializer}function j2i(e){return hDr(e)&&bEt(e)&&eDr(e.declarationList.declarations,Tza)}function Rza(e,t){let r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?tDr(y7a(t,e.pos),GNr(t,e.pos)):GNr(t,e.pos);return Pee(r,n=>n.end<=e.end&&t.charCodeAt(n.pos+1)===42&&t.charCodeAt(n.pos+2)===42&&t.charCodeAt(n.pos+3)!==47)}function Nza(e){if(e)switch(e.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function Dza(e){return e&&e.kind===241&&Wvi(e.parent)}function z2i(e){let t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function cCe(e){return!!e&&!!(e.flags&524288)}function kza(e){return!!e&&!!(e.flags&16777216)}function xza(e){for(;dEt(e,!0);)e=e.right;return e}function Gza(e){return t_(e)&&e.escapedText==="exports"}function Fza(e){return t_(e)&&e.escapedText==="module"}function Xvi(e){return(Oce(e)||Jvi(e))&&Fza(e.expression)&&LJe(e)==="exports"}function mDr(e){let t=Lza(e);return t===5||cCe(e)?t:0}function Zza(e){return SJe(e.arguments)===3&&Oce(e.expression)&&t_(e.expression.expression)&&wV(e.expression.expression)==="Object"&&wV(e.expression.name)==="defineProperty"&&_Et(e.arguments[1])&&ZJe(e.arguments[0],!0)}function Jvi(e){return MJe(e)&&_Et(e.argumentExpression)}function OJe(e,t){return Oce(e)&&(!t&&e.expression.kind===110||t_(e.name)&&ZJe(e.expression,!0))||Uvi(e,t)}function Uvi(e,t){return Jvi(e)&&(!t&&e.expression.kind===110||EDr(e.expression)||OJe(e.expression,!0))}function ZJe(e,t){return EDr(e)||OJe(e,t)}function Lza(e){if(dBi(e)){if(!Zza(e))return 0;let t=e.arguments[0];return Gza(t)||Xvi(t)?8:OJe(t)&&LJe(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!eBi(e.left)||Vza(xza(e))?0:ZJe(e.left.expression,!0)&&LJe(e.left)==="prototype"&&ABi(Oza(e))?6:Wza(e.left)}function Vza(e){return G$a(e)&&tDe(e.expression)&&e.expression.text==="0"}function CDr(e){if(Oce(e))return e.name;let t=yDr(e.argumentExpression);return tDe(t)||IDr(t)?t:e}function LJe(e){let t=CDr(e);if(t){if(t_(t))return t.escapedText;if(IDr(t)||tDe(t))return PNe(t.text)}}function Wza(e){if(e.expression.kind===110)return 4;if(Xvi(e))return 2;if(ZJe(e.expression,!0)){if(fqa(e.expression))return 3;let t=e;for(;!t_(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&LJe(t)==="exports")&&OJe(e))return 1;if(ZJe(e,!0)||MJe(e)&&eqa(e))return 5}return 0}function Oza(e){for(;eDe(e.right);)e=e.right;return e.right}function Pza(e){return IBi(e)&&eDe(e.expression)&&mDr(e.expression)!==0&&eDe(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function Mza(e){switch(e.kind){case 243:let t=VNr(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function VNr(e){return bEt(e)?rDr(e.declarationList.declarations):void 0}function Hza(e){return WJe(e)&&e.body&&e.body.kind===267?e.body:void 0}function _Dr(e){switch(e.kind){case 219:case 226:case 241:case 252:case 179:case 296:case 263:case 231:case 175:case 176:case 185:case 180:case 251:case 259:case 246:case 212:case 242:case 1:case 266:case 306:case 277:case 278:case 281:case 244:case 249:case 250:case 248:case 262:case 218:case 184:case 177:case 80:case 245:case 272:case 271:case 181:case 264:case 317:case 323:case 256:case 174:case 173:case 267:case 202:case 270:case 210:case 169:case 217:case 211:case 303:case 172:case 171:case 253:case 240:case 178:case 304:case 305:case 255:case 257:case 258:case 265:case 168:case 260:case 243:case 247:case 254:return!0;default:return!1}}function Yza(e,t){let r;Nza(e)&&_za(e)&&rCe(e.initializer)&&(r=BV(r,q2i(e,e.initializer.jsDoc)));let n=e;for(;n&&n.parent;){if(rCe(n)&&(r=BV(r,q2i(e,n.jsDoc))),n.kind===169){r=BV(r,(t?F7a:G7a)(n));break}if(n.kind===168){r=BV(r,(t?L7a:Z7a)(n));break}n=Xza(n)}return r||Z2}function q2i(e,t){let r=bja(t);return evi(t,n=>{if(n===r){let a=Pee(n.tags,o=>Qza(e,o));return n.tags===a?[n]:a}else return Pee(n.tags,oec)})}function Qza(e,t){return!(RDr(t)||gec(t))||!t.parent||!BBi(t.parent)||!wDr(t.parent.parent)||t.parent.parent===e}function Xza(e){let t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||Hza(t)||dEt(e))return t;if(t.parent&&(VNr(t.parent)===e||dEt(t)))return t.parent;if(t.parent&&t.parent.parent&&(VNr(t.parent.parent)||Mza(t.parent.parent)===e||Pza(t.parent.parent)))return t.parent.parent}function yDr(e,t){return NDr(e,t?-2147483647:1)}function Jza(e){let t=Uza(e);if(t&&cCe(e)){let r=V7a(e);if(r)return r.class}return t}function Uza(e){let t=bDr(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function Kza(e){if(cCe(e))return W7a(e).map(t=>t.class);{let t=bDr(e.heritageClauses,119);return t?.types}}function jza(e){return TDr(e)?zza(e)||Z2:jNe(e)&&tDr(DNr(Jza(e)),Kza(e))||Z2}function zza(e){let t=bDr(e.heritageClauses,96);return t?t.types:void 0}function bDr(e,t){if(e){for(let r of e)if(r.token===t)return r}}function xce(e){return 83<=e&&e<=165}function qza(e){return 19<=e&&e<=79}function CNr(e){return xce(e)||qza(e)}function _Et(e){return IDr(e)||tDe(e)}function $za(e){return F$a(e)&&(e.operator===40||e.operator===41)&&tDe(e.operand)}function eqa(e){if(!(e.kind===167||e.kind===212))return!1;let t=MJe(e)?yDr(e.argumentExpression):e.expression;return!_Et(t)&&!$za(t)}function tqa(e){return ZNr(e)?wV(e):vBi(e)?Yqa(e):e.text}function MNe(e){return VJe(e.pos)||VJe(e.end)}function _Nr(e){switch(e){case 61:return 4;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function yNr(e){return!!((e.templateFlags||0)&2048)}function rqa(e){return e&&!!(n$a(e)?yNr(e):yNr(e.head)||gD(e.templateSpans,t=>yNr(t.literal)))}var DBu=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"})),kBu=new Map(Object.entries({'"':""","'":"'"}));function nqa(e){return!!e&&e.kind===80&&iqa(e)}function iqa(e){return e.escapedText==="this"}function PJe(e,t){return!!aqa(e,t)}function sqa(e){return PJe(e,256)}function oqa(e){return PJe(e,32768)}function aqa(e,t){return lqa(e)&t}function cqa(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=zvi(e)|536870912),r||t&&cCe(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=Kvi(e)|268435456),jvi(e.modifierFlagsCache)):uqa(e.modifierFlagsCache))}function lqa(e){return cqa(e,!1)}function Kvi(e){let t=0;return e.parent&&!pEt(e)&&(cCe(e)&&(O7a(e)&&(t|=8388608),P7a(e)&&(t|=16777216),M7a(e)&&(t|=33554432),H7a(e)&&(t|=67108864),Y7a(e)&&(t|=134217728)),Q7a(e)&&(t|=65536)),t}function uqa(e){return e&65535}function jvi(e){return e&131071|(e&260046848)>>>23}function gqa(e){return jvi(Kvi(e))}function Aqa(e){return zvi(e)|gqa(e)}function zvi(e){let t=DDr(e)?bP(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function bP(e){let t=0;if(e)for(let r of e)t|=qvi(r.kind);return t}function qvi(e){switch(e){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 170:return 32768}return 0}function dqa(e){return e===76||e===77||e===78}function $vi(e){return e>=64&&e<=79}function dEt(e,t){return eDe(e)&&(t?e.operatorToken.kind===64:$vi(e.operatorToken.kind))&&zNe(e.left)}function EDr(e){return e.kind===80||pqa(e)}function pqa(e){return Oce(e)&&t_(e.name)&&EDr(e.expression)}function fqa(e){return OJe(e)&&LJe(e)==="prototype"}function bNr(e){return e.flags&3899393?e.objectFlags:0}function Iqa(e){let t;return Xk(e,r=>{LNr(r)&&(t=r)},r=>{for(let n=r.length-1;n>=0;n--)if(LNr(r[n])){t=r[n];break}}),t}function hqa(e){return e>=182&&e<=205||e===133||e===159||e===150||e===163||e===151||e===136||e===154||e===155||e===116||e===157||e===146||e===141||e===233||e===312||e===313||e===314||e===315||e===316||e===317||e===318}function eBi(e){return e.kind===211||e.kind===212}function mqa(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.lastAssignmentPos=void 0,this.links=void 0}function Cqa(e,t){this.flags=t,(Zo.isDebugging||tEt)&&(this.checker=e)}function _qa(e,t){this.flags=t,Zo.isDebugging&&(this.checker=e)}function ENr(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 yqa(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 bqa(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 Eqa(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}var F2={getNodeConstructor:()=>ENr,getTokenConstructor:()=>yqa,getIdentifierConstructor:()=>bqa,getPrivateIdentifierConstructor:()=>ENr,getSourceFileConstructor:()=>ENr,getSymbolConstructor:()=>mqa,getTypeConstructor:()=>Cqa,getSignatureConstructor:()=>_qa,getSourceMapSourceConstructor:()=>Eqa},Sqa=[];function vqa(e){Object.assign(F2,e),SP(Sqa,t=>t(F2))}function Bqa(e,t){return e.replace(/\{(\d+)\}/g,(r,n)=>""+Zo.checkDefined(t[+n]))}var $2i;function wqa(e){return $2i&&$2i[e.key]||e.message}function LNe(e,t,r,n,a,...o){r+n>t.length&&(n=t.length-r),wza(t,r,n);let l=wqa(a);return gD(o)&&(l=Bqa(l,o)),{file:void 0,start:r,length:n,messageText:l,category:a.category,code:a.code,reportsUnnecessary:a.reportsUnnecessary,fileName:e}}function Tqa(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function tBi(e,t){let r=t.fileName||"",n=t.text.length;Zo.assertEqual(e.fileName,r),Zo.assertLessThanOrEqual(e.start,n),Zo.assertLessThanOrEqual(e.start+e.length,n);let a={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){a.relatedInformation=[];for(let o of e.relatedInformation)Tqa(o)&&o.fileName===r?(Zo.assertLessThanOrEqual(o.start,n),Zo.assertLessThanOrEqual(o.start+o.length,n),a.relatedInformation.push(tBi(o,t))):a.relatedInformation.push(o)}return a}function Jme(e,t){let r=[];for(let n of e)r.push(tBi(n,t));return r}function eSi(e){return e===4||e===2||e===1||e===6?1:0}var E0={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:e=>!!(e.allowImportingTsExtensions||e.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:e=>(e.target===0?void 0:e.target)??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:E0.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(E0.module.computeValue(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;case 200:t=100;break;default:t=1;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(E0.module.computeValue(e)===100||E0.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(E0.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:E0.esModuleInterop.computeValue(e)||E0.module.computeValue(e)===4||E0.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{let t=E0.moduleResolution.computeValue(e);if(!tSi(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{let t=E0.moduleResolution.computeValue(e);if(!tSi(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:E0.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||E0.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&E0.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?E0.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>Lee(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>Lee(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>Lee(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>Lee(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>Lee(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>Lee(e,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:e=>Lee(e,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:e=>Lee(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>Lee(e,"useUnknownInCatchVariables")}},xBu=E0.allowImportingTsExtensions.computeValue,GBu=E0.target.computeValue,FBu=E0.module.computeValue,ZBu=E0.moduleResolution.computeValue,LBu=E0.moduleDetection.computeValue,VBu=E0.isolatedModules.computeValue,WBu=E0.esModuleInterop.computeValue,OBu=E0.allowSyntheticDefaultImports.computeValue,PBu=E0.resolvePackageJsonExports.computeValue,MBu=E0.resolvePackageJsonImports.computeValue,HBu=E0.resolveJsonModule.computeValue,YBu=E0.declaration.computeValue,QBu=E0.preserveConstEnums.computeValue,XBu=E0.incremental.computeValue,JBu=E0.declarationMap.computeValue,UBu=E0.allowJs.computeValue,KBu=E0.useDefineForClassFields.computeValue;function tSi(e){return e>=3&&e<=99||e===100}function Lee(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function Rqa(e){return Eza(targetOptionDeclaration.type,(t,r)=>t===e?r:void 0)}var Nqa=["node_modules","bower_components","jspm_packages"],rBi=`(?!(${Nqa.join("|")})(/|$))`,Dqa={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${rBi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>nBi(e,Dqa.singleAsteriskRegexFragment)},kqa={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${rBi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>nBi(e,kqa.singleAsteriskRegexFragment)};function nBi(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function xqa(e,t){return t||Gqa(e)||3}function Gqa(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}}var iBi=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],jBu=$Si(iBi),zBu=[...iBi,[".json"]],Fqa=[[".js",".jsx"],[".mjs"],[".cjs"]],qBu=$Si(Fqa),Zqa=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],$Bu=[...Zqa,[".json"]],Lqa=[".d.ts",".d.cts",".d.mts"];function VJe(e){return!(e>=0)}function zbt(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),Zo.assert(e.relatedInformation!==Z2,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function Vqa(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 I=e.length-1,C=0;for(;e.charCodeAt(C)===48;)C++;return e.slice(C,I)||"0"}let r=2,n=e.length-1,a=(n-r)*t,o=new Uint16Array((a>>>4)+(a&15?1:0));for(let I=n-1,C=0;I>=r;I--,C+=t){let b=C>>>4,E=e.charCodeAt(I),N=(E<=57?E-48:10+E-(E<=70?65:97))<<(C&15);o[b]|=N;let B=N>>>16;B&&(o[b+1]|=B)}let l="",A=o.length-1,f=!0;for(;f;){let I=0;f=!1;for(let C=A;C>=0;C--){let b=I<<16|o[C],E=b/10|0;o[C]=E,I=b-E*10,E&&!f&&(A=C,f=!0)}l=I+l}return l}function Wqa({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function WNr(e,t){return e.pos=t,e}function Oqa(e,t){return e.end=t,e}function Lce(e,t,r){return Oqa(WNr(e,t),r)}function rSi(e,t,r){return Lce(e,t,t+r)}function SDr(e,t){return e&&t&&(e.parent=t),e}function Pqa(e,t){if(!e)return e;return DSi(e,Yvi(e)?r:a),e;function r(o,l){if(t&&o.parent===l)return"skip";SDr(o,l)}function n(o){if(rCe(o))for(let l of o.jsDoc)r(l,o),DSi(l,r)}function a(o,l){return r(o,l)||n(o)}}function Mqa(e){return!!(e.flags&262144&&e.isThisType)}function Hqa(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function Yqa(e){return`${wV(e.namespace)}:${wV(e.name)}`}var ewu=String.prototype.replace,ONr=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],twu=new Set(ONr),Qqa=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),rwu=new Set([...ONr,...ONr.map(e=>`node:${e}`),...Qqa]);function Xqa(){let e,t,r,n,a;return{createBaseSourceFileNode:o,createBaseIdentifierNode:l,createBasePrivateIdentifierNode:A,createBaseTokenNode:f,createBaseNode:I};function o(C){return new(a||(a=F2.getSourceFileConstructor()))(C,-1,-1)}function l(C){return new(r||(r=F2.getIdentifierConstructor()))(C,-1,-1)}function A(C){return new(n||(n=F2.getPrivateIdentifierConstructor()))(C,-1,-1)}function f(C){return new(t||(t=F2.getTokenConstructor()))(C,-1,-1)}function I(C){return new(e||(e=F2.getNodeConstructor()))(C,-1,-1)}}var Jqa={getParenthesizeLeftSideOfBinaryForOperator:e=>PE,getParenthesizeRightSideOfBinaryForOperator:e=>PE,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:PE,parenthesizeConditionOfConditionalExpression:PE,parenthesizeBranchOfConditionalExpression:PE,parenthesizeExpressionOfExportDefault:PE,parenthesizeExpressionOfNew:e=>v6(e,zNe),parenthesizeLeftSideOfAccess:e=>v6(e,zNe),parenthesizeOperandOfPostfixUnary:e=>v6(e,zNe),parenthesizeOperandOfPrefixUnary:e=>v6(e,gza),parenthesizeExpressionsOfCommaDelimitedList:e=>v6(e,Gce),parenthesizeExpressionForDisallowedComma:PE,parenthesizeExpressionOfExpressionStatement:PE,parenthesizeConciseBodyOfArrowFunction:PE,parenthesizeCheckTypeOfConditionalType:PE,parenthesizeExtendsTypeOfConditionalType:PE,parenthesizeConstituentTypesOfUnionType:e=>v6(e,Gce),parenthesizeConstituentTypeOfUnionType:PE,parenthesizeConstituentTypesOfIntersectionType:e=>v6(e,Gce),parenthesizeConstituentTypeOfIntersectionType:PE,parenthesizeOperandOfTypeOperator:PE,parenthesizeOperandOfReadonlyTypeOperator:PE,parenthesizeNonArrayTypeOfPostfixType:PE,parenthesizeElementTypesOfTupleType:e=>v6(e,Gce),parenthesizeElementTypeOfTupleType:PE,parenthesizeTypeOfOptionalType:PE,parenthesizeTypeArguments:e=>e&&v6(e,Gce),parenthesizeLeadingTypeArgument:PE},qbt=0,Uqa=[];function vDr(e,t){let r=e&8?PE:$qa,n=x2i(()=>e&1?Jqa:createParenthesizerRules(J)),a=x2i(()=>e&2?nullNodeConverters:createNodeConverters(J)),o=cH(z=>(ye,We)=>At(ye,z,We)),l=cH(z=>ye=>se(z,ye)),A=cH(z=>ye=>K(ye,z)),f=cH(z=>()=>FD(z)),I=cH(z=>ye=>e0(z,ye)),C=cH(z=>(ye,We)=>$R(z,ye,We)),b=cH(z=>(ye,We)=>ZD(z,ye,We)),E=cH(z=>(ye,We)=>LD(z,ye,We)),N=cH(z=>(ye,We)=>Mo(z,ye,We)),B=cH(z=>(ye,We,_t)=>dp(z,ye,We,_t)),F=cH(z=>(ye,We,_t)=>fF(z,ye,We,_t)),Q=cH(z=>(ye,We,_t,Rr)=>IF(z,ye,We,_t,Rr)),J={get parenthesizer(){return n()},get converters(){return a()},baseFactory:t,flags:e,createNodeArray:ae,createNumericLiteral:ue,createBigIntLiteral:de,createStringLiteral:Se,createStringLiteralFromNode:De,createRegularExpressionLiteral:k,createLiteralLikeNode:tt,createIdentifier:Je,createTempVariable:ft,createLoopVariable:lt,createUniqueName:Ot,getGeneratedNameForNode:Er,createPrivateIdentifier:jt,createUniquePrivateName:Dt,getGeneratedPrivateNameForNode:Fr,createToken:Xt,createSuper:lr,createThis:cr,createNull:Ar,createTrue:qr,createFalse:yn,createModifier:ke,createModifiersFromModifierFlags:zt,createQualifiedName:Fn,updateQualifiedName:Nn,createComputedPropertyName:Hi,updateComputedPropertyName:Ao,createTypeParameterDeclaration:Vr,updateTypeParameterDeclaration:xi,createParameterDeclaration:no,updateParameterDeclaration:ga,createDecorator:Ya,updateDecorator:Gc,createPropertySignature:ol,updatePropertySignature:Sc,createPropertyDeclaration:Or,updatePropertyDeclaration:Ft,createMethodSignature:zr,updateMethodSignature:Rn,createMethodDeclaration:Pr,updateMethodDeclaration:Qi,createConstructorDeclaration:gc,updateConstructorDeclaration:_g,createGetAccessorDeclaration:sA,updateGetAccessorDeclaration:ma,createSetAccessorDeclaration:li,updateSetAccessorDeclaration:Ei,createCallSignature:Xa,updateCallSignature:ac,createConstructSignature:Ql,updateConstructSignature:Oc,createIndexSignature:vg,updateIndexSignature:Kl,createClassStaticBlockDeclaration:yo,updateClassStaticBlockDeclaration:bo,createTemplateLiteralTypeSpan:Ju,updateTemplateLiteralTypeSpan:Da,createKeywordTypeNode:fu,createTypePredicateNode:yg,updateTypePredicateNode:_I,createTypeReferenceNode:Kh,updateTypeReferenceNode:Ri,createFunctionTypeNode:Do,updateFunctionTypeNode:Pt,createConstructorTypeNode:Ru,updateConstructorTypeNode:Yn,createTypeQueryNode:HA,updateTypeQueryNode:ZA,createTypeLiteralNode:$i,updateTypeLiteralNode:gl,createArrayTypeNode:zf,updateArrayTypeNode:zd,createTupleTypeNode:aA,updateTupleTypeNode:so,createNamedTupleMember:Ki,updateNamedTupleMember:cc,createOptionalTypeNode:Xs,updateOptionalTypeNode:ws,createRestTypeNode:Gs,updateRestTypeNode:Ma,createUnionTypeNode:Nf,updateUnionTypeNode:Am,createIntersectionTypeNode:Zl,updateIntersectionTypeNode:rc,createConditionalTypeNode:ad,updateConditionalTypeNode:Qm,createInferTypeNode:rl,updateInferTypeNode:LA,createImportTypeNode:bg,updateImportTypeNode:Yp,createParenthesizedType:YA,updateParenthesizedType:vr,createThisTypeNode:Zt,createTypeOperatorNode:bn,updateTypeOperatorNode:ls,createIndexedAccessTypeNode:oa,updateIndexedAccessTypeNode:Fs,createMappedTypeNode:Oa,updateMappedTypeNode:Ca,createLiteralTypeNode:gd,updateLiteralTypeNode:Dp,createTemplateLiteralType:VA,updateTemplateLiteralType:bl,createObjectBindingPattern:sp,updateObjectBindingPattern:QA,createArrayBindingPattern:ff,updateArrayBindingPattern:Zs,createBindingElement:io,updateBindingElement:Ea,createArrayLiteralExpression:Hl,updateArrayLiteralExpression:Dr,createObjectLiteralExpression:On,updateObjectLiteralExpression:di,createPropertyAccessExpression:e&4?(z,ye)=>setEmitFlags(Bo(z,ye),262144):Bo,updatePropertyAccessExpression:us,createPropertyAccessChain:e&4?(z,ye,We)=>setEmitFlags(Xl(z,ye,We),262144):Xl,updatePropertyAccessChain:WA,createElementAccessExpression:rf,updateElementAccessExpression:op,createElementAccessChain:bd,updateElementAccessChain:$1,createCallExpression:XA,updateCallExpression:Ac,createCallChain:Gm,updateCallChain:JS,createNewExpression:qd,updateNewExpression:hh,createTaggedTemplateExpression:Qp,updateTaggedTemplateExpression:dC,createTypeAssertion:oE,updateTypeAssertion:K_,createParenthesizedExpression:ey,updateParenthesizedExpression:KE,createFunctionExpression:NC,updateFunctionExpression:n_,createArrowFunction:up,updateArrowFunction:Xm,createDeleteExpression:hb,updateDeleteExpression:pe,createTypeOfExpression:dm,updateTypeOfExpression:qf,createVoidExpression:yI,updateVoidExpression:bI,createAwaitExpression:J2,updateAwaitExpression:aE,createPrefixUnaryExpression:se,updatePrefixUnaryExpression:P,createPostfixUnaryExpression:K,updatePostfixUnaryExpression:we,createBinaryExpression:At,updateBinaryExpression:Yr,createConditionalExpression:Lr,updateConditionalExpression:fi,createTemplateExpression:$n,updateTemplateExpression:ra,createTemplateHead:BA,createTemplateMiddle:gI,createTemplateTail:gp,createNoSubstitutionTemplateLiteral:mb,createTemplateLiteralLikeNode:eA,createYieldExpression:Na,updateYieldExpression:Rd,createSpreadElement:e2,updateSpreadElement:N_,createClassExpression:DC,updateClassExpression:Jm,createOmittedExpression:US,createExpressionWithTypeArguments:Zg,updateExpressionWithTypeArguments:Cb,createAsExpression:pC,updateAsExpression:kC,createNonNullExpression:U2,updateNonNullExpression:j_,createSatisfiesExpression:xC,updateSatisfiesExpression:GC,createNonNullChain:th,updateNonNullChain:mh,createMetaProperty:wA,updateMetaProperty:Nd,createTemplateSpan:Mc,updateTemplateSpan:Pf,createSemicolonClassElement:cE,createBlock:tA,updateBlock:KS,createVariableStatement:jS,updateVariableStatement:pm,createEmptyStatement:fm,createExpressionStatement:cs,updateExpressionStatement:na,createIfStatement:ko,updateIfStatement:ki,createDoStatement:jl,updateDoStatement:hd,createWhileStatement:$f,updateWhileStatement:Wd,createForStatement:fC,updateForStatement:jE,createForInStatement:Um,updateForInStatement:wy,createForOfStatement:z_,updateForOfStatement:cd,createContinueStatement:zE,updateContinueStatement:qE,createBreakStatement:Xp,updateBreakStatement:zS,createReturnStatement:Ty,updateReturnStatement:ty,createWithStatement:_w,updateWithStatement:K2,createSwitchStatement:xc,updateSwitchStatement:gt,createLabeledStatement:ar,updateLabeledStatement:Jr,createThrowStatement:Gn,updateThrowStatement:Ts,createTryStatement:Qo,updateTryStatement:Bg,createDebuggerStatement:Dg,createVariableDeclaration:Df,updateVariableDeclaration:AI,createVariableDeclarationList:kh,updateVariableDeclarationList:lE,createFunctionDeclaration:xT,updateFunctionDeclaration:uB,createClassDeclaration:Ry,updateClassDeclaration:$E,createInterfaceDeclaration:q_,updateInterfaceDeclaration:FT,createTypeAliasDeclaration:nf,updateTypeAliasDeclaration:Ny,createEnumDeclaration:qS,updateEnumDeclaration:rh,createModuleDeclaration:TA,updateModuleDeclaration:td,createModuleBlock:Km,updateModuleBlock:eI,createCaseBlock:_b,updateCaseBlock:D_,createNamespaceExportDeclaration:yb,updateNamespaceExportDeclaration:Dy,createImportEqualsDeclaration:bb,updateImportEqualsDeclaration:$_,createImportDeclaration:e1,updateImportDeclaration:gB,createImportClause:ZT,updateImportClause:AB,createAssertClause:ev,updateAssertClause:zR,createAssertEntry:tv,updateAssertEntry:t1,createImportTypeAssertionContainer:j2,updateImportTypeAssertionContainer:LT,createImportAttributes:pn,updateImportAttributes:t2,createImportAttribute:z2,updateImportAttribute:ry,createNamespaceImport:Ap,updateNamespaceImport:yw,createNamespaceExport:dB,updateNamespaceExport:GD,createNamedImports:Dd,updateNamedImports:qR,createImportSpecifier:ny,updateImportSpecifier:pF,createExportAssignment:r2,updateExportAssignment:r1,createExportDeclaration:k_,updateExportDeclaration:n1,createNamedExports:iy,updateNamedExports:VT,createExportSpecifier:Eb,updateExportSpecifier:i_,createMissingDeclaration:xh,createExternalModuleReference:Sb,updateExternalModuleReference:pB,get createJSDocAllType(){return f(312)},get createJSDocUnknownType(){return f(313)},get createJSDocNonNullableType(){return b(315)},get updateJSDocNonNullableType(){return E(315)},get createJSDocNullableType(){return b(314)},get updateJSDocNullableType(){return E(314)},get createJSDocOptionalType(){return I(316)},get updateJSDocOptionalType(){return C(316)},get createJSDocVariadicType(){return I(318)},get updateJSDocVariadicType(){return C(318)},get createJSDocNamepathType(){return I(319)},get updateJSDocNamepathType(){return C(319)},createJSDocFunctionType:lc,updateJSDocFunctionType:Ch,createJSDocTypeLiteral:sf,updateJSDocTypeLiteral:EI,createJSDocTypeExpression:uE,updateJSDocTypeExpression:rv,createJSDocSignature:Jp,updateJSDocSignature:fB,createJSDocTemplateTag:s1,updateJSDocTemplateTag:IB,createJSDocTypedefTag:bw,updateJSDocTypedefTag:WT,createJSDocParameterTag:S0,updateJSDocParameterTag:ia,createJSDocPropertyTag:n2,updateJSDocPropertyTag:Ed,createJSDocCallbackTag:SI,updateJSDocCallbackTag:cg,createJSDocOverloadTag:vb,updateJSDocOverloadTag:o1,createJSDocAugmentsTag:q2,updateJSDocAugmentsTag:r0,createJSDocImplementsTag:s_,updateJSDocImplementsTag:Mf,createJSDocSeeTag:Up,updateJSDocSeeTag:gE,createJSDocImportTag:xp,updateJSDocImportTag:i2,createJSDocNameReference:AE,updateJSDocNameReference:mp,createJSDocMemberName:jh,updateJSDocMemberName:v0,createJSDocLink:cA,updateJSDocLink:Iu,createJSDocLinkCode:Kp,updateJSDocLinkCode:IC,createJSDocLinkPlain:dE,updateJSDocLinkPlain:nh,get createJSDocTypeTag(){return F(344)},get updateJSDocTypeTag(){return Q(344)},get createJSDocReturnTag(){return F(342)},get updateJSDocReturnTag(){return Q(342)},get createJSDocThisTag(){return F(343)},get updateJSDocThisTag(){return Q(343)},get createJSDocAuthorTag(){return N(330)},get updateJSDocAuthorTag(){return B(330)},get createJSDocClassTag(){return N(332)},get updateJSDocClassTag(){return B(332)},get createJSDocPublicTag(){return N(333)},get updateJSDocPublicTag(){return B(333)},get createJSDocPrivateTag(){return N(334)},get updateJSDocPrivateTag(){return B(334)},get createJSDocProtectedTag(){return N(335)},get updateJSDocProtectedTag(){return B(335)},get createJSDocReadonlyTag(){return N(336)},get updateJSDocReadonlyTag(){return B(336)},get createJSDocOverrideTag(){return N(337)},get updateJSDocOverrideTag(){return B(337)},get createJSDocDeprecatedTag(){return N(331)},get updateJSDocDeprecatedTag(){return B(331)},get createJSDocThrowsTag(){return F(349)},get updateJSDocThrowsTag(){return Q(349)},get createJSDocSatisfiesTag(){return F(350)},get updateJSDocSatisfiesTag(){return Q(350)},createJSDocEnumTag:kp,updateJSDocEnumTag:Fm,createJSDocUnknownTag:pE,updateJSDocUnknownTag:OT,createJSDocText:Ro,updateJSDocText:fE,createJSDocComment:hB,updateJSDocComment:Xc,createJsxElement:su,updateJsxElement:IE,createJsxSelfClosingElement:wL,updateJsxSelfClosingElement:eN,createJsxOpeningElement:Pu,updateJsxOpeningElement:sy,createJsxClosingElement:Cp,updateJsxClosingElement:Im,createJsxFragment:$2,createJsxText:mB,updateJsxText:PT,createJsxOpeningFragment:Sx,createJsxJsxClosingFragment:CB,updateJsxFragment:o_,createJsxAttribute:tI,updateJsxAttribute:zh,createJsxAttributes:nv,updateJsxAttributes:Bb,createJsxSpreadAttribute:_p,updateJsxSpreadAttribute:s2,createJsxExpression:a1,updateJsxExpression:Hf,createJsxNamespacedName:hE,updateJsxNamespacedName:Od,createCaseClause:j,updateCaseClause:Z,createDefaultClause:md,updateDefaultClause:_B,createHeritageClause:iv,updateHeritageClause:ky,createCatchClause:wb,updateCatchClause:VD,createPropertyAssignment:yB,updatePropertyAssignment:Tb,createShorthandPropertyAssignment:hF,updateShorthandPropertyAssignment:x,createSpreadAssignment:te,updateSpreadAssignment:Re,createEnumMember:Ve,updateEnumMember:It,createSourceFile:dr,updateSourceFile:Ho,createRedirectedSourceFile:Ur,createBundle:Pg,updateBundle:lA,createSyntheticExpression:ih,createSyntaxList:xn,createNotEmittedStatement:rn,createNotEmittedTypeElement:ec,createPartiallyEmittedExpression:Ci,updatePartiallyEmittedExpression:Wo,createCommaListExpression:dc,updateCommaListExpression:hu,createSyntheticReferenceExpression:ml,updateSyntheticReferenceExpression:wl,cloneNode:sv,get createComma(){return o(28)},get createAssignment(){return o(64)},get createLogicalOr(){return o(57)},get createLogicalAnd(){return o(56)},get createBitwiseOr(){return o(52)},get createBitwiseXor(){return o(53)},get createBitwiseAnd(){return o(51)},get createStrictEquality(){return o(37)},get createStrictInequality(){return o(38)},get createEquality(){return o(35)},get createInequality(){return o(36)},get createLessThan(){return o(30)},get createLessThanEquals(){return o(33)},get createGreaterThan(){return o(32)},get createGreaterThanEquals(){return o(34)},get createLeftShift(){return o(48)},get createRightShift(){return o(49)},get createUnsignedRightShift(){return o(50)},get createAdd(){return o(40)},get createSubtract(){return o(41)},get createMultiply(){return o(42)},get createDivide(){return o(44)},get createModulo(){return o(45)},get createExponent(){return o(43)},get createPrefixPlus(){return l(40)},get createPrefixMinus(){return l(41)},get createPrefixIncrement(){return l(46)},get createPrefixDecrement(){return l(47)},get createBitwiseNot(){return l(55)},get createLogicalNot(){return l(54)},get createPostfixIncrement(){return A(46)},get createPostfixDecrement(){return A(47)},createImmediatelyInvokedFunctionExpression:Yu,createImmediatelyInvokedArrowFunction:s3,createVoidZero:bB,createExportDefault:Ew,createExternalModuleExport:mF,createTypeCheck:o3,createIsNotTypeCheck:fY,createMethodCall:MT,createGlobalMethodCall:hf,createFunctionBindCall:WD,createFunctionCallCall:CF,createFunctionApplyCall:RL,createArraySliceCall:OD,createArrayConcatCall:mE,createObjectDefinePropertyCall:o2,createObjectGetOwnPropertyDescriptorCall:EB,createReflectGetCall:Sd,createReflectSetCall:c1,createPropertyDescriptor:Rb,createCallBinding:mY,createAssignmentTargetWrapper:rt,inlineExpressions:Jt,getInternalName:Xr,getLocalName:ui,getExportName:Is,getDeclarationName:Hs,getNamespaceMemberName:Rs,getExternalModuleOrNamespaceExportName:ja,restoreOuterExpressions:IY,restoreEnclosingLabel:hY,createUseStrictPrologue:kd,copyPrologue:ho,copyStandardPrologue:rd,copyCustomPrologue:Mg,ensureUseStrict:Gh,liftToBlock:l1,mergeLexicalEnvironment:rS,replaceModifiers:CE,replaceDecoratorsAndModifiers:rN,replacePropertyName:a3};return SP(Uqa,z=>z(J)),J;function ae(z,ye){if(z===void 0||z===Z2)z=[];else if(Gce(z)){if(ye===void 0||z.hasTrailingComma===ye)return z.transformFlags===void 0&&iSi(z),Zo.attachNodeArrayDebugInfo(z),z;let Rr=z.slice();return Rr.pos=z.pos,Rr.end=z.end,Rr.hasTrailingComma=ye,Rr.transformFlags=z.transformFlags,Zo.attachNodeArrayDebugInfo(Rr),Rr}let We=z.length,_t=We>=1&&We<=4?z.slice():z;return _t.pos=-1,_t.end=-1,_t.hasTrailingComma=!!ye,_t.transformFlags=0,iSi(_t),Zo.attachNodeArrayDebugInfo(_t),_t}function ne(z){return t.createBaseNode(z)}function ce(z){let ye=ne(z);return ye.symbol=void 0,ye.localSymbol=void 0,ye}function fe(z,ye){return z!==ye&&(z.typeArguments=ye.typeArguments),Eo(z,ye)}function ue(z,ye=0){let We=typeof z=="number"?z+"":z;Zo.assert(We.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let _t=ce(9);return _t.text=We,_t.numericLiteralFlags=ye,ye&384&&(_t.transformFlags|=1024),_t}function de(z){let ye=$t(10);return ye.text=typeof z=="string"?z:Wqa(z)+"n",ye.transformFlags|=32,ye}function be(z,ye){let We=ce(11);return We.text=z,We.singleQuote=ye,We}function Se(z,ye,We){let _t=be(z,ye);return _t.hasExtendedUnicodeEscape=We,We&&(_t.transformFlags|=1024),_t}function De(z){let ye=be(tqa(z),void 0);return ye.textSourceNode=z,ye}function k(z){let ye=$t(14);return ye.text=z,ye}function tt(z,ye){switch(z){case 9:return ue(ye,0);case 10:return de(ye);case 11:return Se(ye,void 0);case 12:return mB(ye,!1);case 13:return mB(ye,!0);case 14:return k(ye);case 15:return eA(z,ye,void 0,0)}}function ze(z){let ye=t.createBaseIdentifierNode(80);return ye.escapedText=z,ye.jsDoc=void 0,ye.flowNode=void 0,ye.symbol=void 0,ye}function Le(z,ye,We,_t){let Rr=ze(PNe(z));return setIdentifierAutoGenerate(Rr,{flags:ye,id:qbt,prefix:We,suffix:_t}),qbt++,Rr}function Je(z,ye,We){ye===void 0&&z&&(ye=_vi(z)),ye===80&&(ye=void 0);let _t=ze(PNe(z));return We&&(_t.flags|=256),_t.escapedText==="await"&&(_t.transformFlags|=67108864),_t.flags&256&&(_t.transformFlags|=1024),_t}function ft(z,ye,We,_t){let Rr=1;ye&&(Rr|=8);let ai=Le("",Rr,We,_t);return z&&z(ai),ai}function lt(z){let ye=2;return z&&(ye|=8),Le("",ye,void 0,void 0)}function Ot(z,ye=0,We,_t){return Zo.assert(!(ye&7),"Argument out of range: flags"),Zo.assert((ye&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),Le(z,3|ye,We,_t)}function Er(z,ye=0,We,_t){Zo.assert(!(ye&7),"Argument out of range: flags");let Rr=z?ZNr(z)?YNr(!1,We,z,_t,wV):`generated@${getNodeId(z)}`:"";(We||_t)&&(ye|=16);let ai=Le(Rr,4|ye,We,_t);return ai.original=z,ai}function Sr(z){let ye=t.createBasePrivateIdentifierNode(81);return ye.escapedText=z,ye.transformFlags|=16777216,ye}function jt(z){return aEt(z,"#")||Zo.fail("First character of private identifier must be #: "+z),Sr(PNe(z))}function Bt(z,ye,We,_t){let Rr=Sr(PNe(z));return setIdentifierAutoGenerate(Rr,{flags:ye,id:qbt,prefix:We,suffix:_t}),qbt++,Rr}function Dt(z,ye,We){z&&!aEt(z,"#")&&Zo.fail("First character of private identifier must be #: "+z);let _t=8|(z?3:1);return Bt(z??"",_t,ye,We)}function Fr(z,ye,We){let _t=ZNr(z)?YNr(!0,ye,z,We,wV):`#generated@${getNodeId(z)}`,Rr=Bt(_t,4|(ye||We?16:0),ye,We);return Rr.original=z,Rr}function $t(z){return t.createBaseTokenNode(z)}function Xt(z){Zo.assert(z>=0&&z<=165,"Invalid token"),Zo.assert(z<=15||z>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Zo.assert(z<=9||z>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Zo.assert(z!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let ye=$t(z),We=0;switch(z){case 134:We=384;break;case 160:We=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:We=1;break;case 108:We=134218752,ye.flowNode=void 0;break;case 126:We=1024;break;case 129:We=16777216;break;case 110:We=16384,ye.flowNode=void 0;break}return We&&(ye.transformFlags|=We),ye}function lr(){return Xt(108)}function cr(){return Xt(110)}function Ar(){return Xt(106)}function qr(){return Xt(112)}function yn(){return Xt(97)}function ke(z){return Xt(z)}function zt(z){let ye=[];return z&32&&ye.push(ke(95)),z&128&&ye.push(ke(138)),z&2048&&ye.push(ke(90)),z&4096&&ye.push(ke(87)),z&1&&ye.push(ke(125)),z&2&&ye.push(ke(123)),z&4&&ye.push(ke(124)),z&64&&ye.push(ke(128)),z&256&&ye.push(ke(126)),z&16&&ye.push(ke(164)),z&8&&ye.push(ke(148)),z&512&&ye.push(ke(129)),z&1024&&ye.push(ke(134)),z&8192&&ye.push(ke(103)),z&16384&&ye.push(ke(147)),ye.length?ye:void 0}function Fn(z,ye){let We=ne(166);return We.left=z,We.right=vI(ye),We.transformFlags|=$o(We.left)|HNe(We.right),We.flowNode=void 0,We}function Nn(z,ye,We){return z.left!==ye||z.right!==We?Eo(Fn(ye,We),z):z}function Hi(z){let ye=ne(167);return ye.expression=n().parenthesizeExpressionOfComputedPropertyName(z),ye.transformFlags|=$o(ye.expression)|1024|131072,ye}function Ao(z,ye){return z.expression!==ye?Eo(Hi(ye),z):z}function Vr(z,ye,We,_t){let Rr=ce(168);return Rr.modifiers=hA(z),Rr.name=vI(ye),Rr.constraint=We,Rr.default=_t,Rr.transformFlags=1,Rr.expression=void 0,Rr.jsDoc=void 0,Rr}function xi(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.constraint!==_t||z.default!==Rr?Eo(Vr(ye,We,_t,Rr),z):z}function no(z,ye,We,_t,Rr,ai){let Lo=ce(169);return Lo.modifiers=hA(z),Lo.dotDotDotToken=ye,Lo.name=vI(We),Lo.questionToken=_t,Lo.type=Rr,Lo.initializer=RA(ai),nqa(Lo.name)?Lo.transformFlags=1:Lo.transformFlags=ed(Lo.modifiers)|$o(Lo.dotDotDotToken)|yP(Lo.name)|$o(Lo.questionToken)|$o(Lo.initializer)|(Lo.questionToken??Lo.type?1:0)|(Lo.dotDotDotToken??Lo.initializer?1024:0)|(bP(Lo.modifiers)&31?8192:0),Lo.jsDoc=void 0,Lo}function ga(z,ye,We,_t,Rr,ai,Lo){return z.modifiers!==ye||z.dotDotDotToken!==We||z.name!==_t||z.questionToken!==Rr||z.type!==ai||z.initializer!==Lo?Eo(no(ye,We,_t,Rr,ai,Lo),z):z}function Ya(z){let ye=ne(170);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1|8192|33554432,ye}function Gc(z,ye){return z.expression!==ye?Eo(Ya(ye),z):z}function ol(z,ye,We,_t){let Rr=ce(171);return Rr.modifiers=hA(z),Rr.name=vI(ye),Rr.type=_t,Rr.questionToken=We,Rr.transformFlags=1,Rr.initializer=void 0,Rr.jsDoc=void 0,Rr}function Sc(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.questionToken!==_t||z.type!==Rr?Hr(ol(ye,We,_t,Rr),z):z}function Hr(z,ye){return z!==ye&&(z.initializer=ye.initializer),Eo(z,ye)}function Or(z,ye,We,_t,Rr){let ai=ce(172);ai.modifiers=hA(z),ai.name=vI(ye),ai.questionToken=We&&oSi(We)?We:void 0,ai.exclamationToken=We&&sSi(We)?We:void 0,ai.type=_t,ai.initializer=RA(Rr);let Lo=ai.flags&33554432||bP(ai.modifiers)&128;return ai.transformFlags=ed(ai.modifiers)|yP(ai.name)|$o(ai.initializer)|(Lo||ai.questionToken||ai.exclamationToken||ai.type?1:0)|(sBi(ai.name)||bP(ai.modifiers)&256&&ai.initializer?8192:0)|16777216,ai.jsDoc=void 0,ai}function Ft(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.questionToken!==(_t!==void 0&&oSi(_t)?_t:void 0)||z.exclamationToken!==(_t!==void 0&&sSi(_t)?_t:void 0)||z.type!==Rr||z.initializer!==ai?Eo(Or(ye,We,_t,Rr,ai),z):z}function zr(z,ye,We,_t,Rr,ai){let Lo=ce(173);return Lo.modifiers=hA(z),Lo.name=vI(ye),Lo.questionToken=We,Lo.typeParameters=hA(_t),Lo.parameters=hA(Rr),Lo.type=ai,Lo.transformFlags=1,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.typeArguments=void 0,Lo}function Rn(z,ye,We,_t,Rr,ai,Lo){return z.modifiers!==ye||z.name!==We||z.questionToken!==_t||z.typeParameters!==Rr||z.parameters!==ai||z.type!==Lo?fe(zr(ye,We,_t,Rr,ai,Lo),z):z}function Pr(z,ye,We,_t,Rr,ai,Lo,Hc){let ld=ce(174);if(ld.modifiers=hA(z),ld.asteriskToken=ye,ld.name=vI(We),ld.questionToken=_t,ld.exclamationToken=void 0,ld.typeParameters=hA(Rr),ld.parameters=ae(ai),ld.type=Lo,ld.body=Hc,!ld.body)ld.transformFlags=1;else{let hm=bP(ld.modifiers)&1024,ov=!!ld.asteriskToken,av=hm&&ov;ld.transformFlags=ed(ld.modifiers)|$o(ld.asteriskToken)|yP(ld.name)|$o(ld.questionToken)|ed(ld.typeParameters)|ed(ld.parameters)|$o(ld.type)|$o(ld.body)&-67108865|(av?128:hm?256:ov?2048:0)|(ld.questionToken||ld.typeParameters||ld.type?1:0)|1024}return ld.typeArguments=void 0,ld.jsDoc=void 0,ld.locals=void 0,ld.nextContainer=void 0,ld.flowNode=void 0,ld.endFlowNode=void 0,ld.returnFlowNode=void 0,ld}function Qi(z,ye,We,_t,Rr,ai,Lo,Hc,ld){return z.modifiers!==ye||z.asteriskToken!==We||z.name!==_t||z.questionToken!==Rr||z.typeParameters!==ai||z.parameters!==Lo||z.type!==Hc||z.body!==ld?ps(Pr(ye,We,_t,Rr,ai,Lo,Hc,ld),z):z}function ps(z,ye){return z!==ye&&(z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function yo(z){let ye=ce(175);return ye.body=z,ye.transformFlags=$o(z)|16777216,ye.modifiers=void 0,ye.jsDoc=void 0,ye.locals=void 0,ye.nextContainer=void 0,ye.endFlowNode=void 0,ye.returnFlowNode=void 0,ye}function bo(z,ye){return z.body!==ye?Qa(yo(ye),z):z}function Qa(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function gc(z,ye,We){let _t=ce(176);return _t.modifiers=hA(z),_t.parameters=ae(ye),_t.body=We,_t.body?_t.transformFlags=ed(_t.modifiers)|ed(_t.parameters)|$o(_t.body)&-67108865|1024:_t.transformFlags=1,_t.typeParameters=void 0,_t.type=void 0,_t.typeArguments=void 0,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.endFlowNode=void 0,_t.returnFlowNode=void 0,_t}function _g(z,ye,We,_t){return z.modifiers!==ye||z.parameters!==We||z.body!==_t?Nc(gc(ye,We,_t),z):z}function Nc(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function sA(z,ye,We,_t,Rr){let ai=ce(177);return ai.modifiers=hA(z),ai.name=vI(ye),ai.parameters=ae(We),ai.type=_t,ai.body=Rr,ai.body?ai.transformFlags=ed(ai.modifiers)|yP(ai.name)|ed(ai.parameters)|$o(ai.type)|$o(ai.body)&-67108865|(ai.type?1:0):ai.transformFlags=1,ai.typeArguments=void 0,ai.typeParameters=void 0,ai.jsDoc=void 0,ai.locals=void 0,ai.nextContainer=void 0,ai.flowNode=void 0,ai.endFlowNode=void 0,ai.returnFlowNode=void 0,ai}function ma(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.parameters!==_t||z.type!==Rr||z.body!==ai?vu(sA(ye,We,_t,Rr,ai),z):z}function vu(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters),fe(z,ye)}function li(z,ye,We,_t){let Rr=ce(178);return Rr.modifiers=hA(z),Rr.name=vI(ye),Rr.parameters=ae(We),Rr.body=_t,Rr.body?Rr.transformFlags=ed(Rr.modifiers)|yP(Rr.name)|ed(Rr.parameters)|$o(Rr.body)&-67108865|(Rr.type?1:0):Rr.transformFlags=1,Rr.typeArguments=void 0,Rr.typeParameters=void 0,Rr.type=void 0,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr.endFlowNode=void 0,Rr.returnFlowNode=void 0,Rr}function Ei(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.parameters!==_t||z.body!==Rr?Ws(li(ye,We,_t,Rr),z):z}function Ws(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function Xa(z,ye,We){let _t=ce(179);return _t.typeParameters=hA(z),_t.parameters=hA(ye),_t.type=We,_t.transformFlags=1,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function ac(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?fe(Xa(ye,We,_t),z):z}function Ql(z,ye,We){let _t=ce(180);return _t.typeParameters=hA(z),_t.parameters=hA(ye),_t.type=We,_t.transformFlags=1,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function Oc(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?fe(Ql(ye,We,_t),z):z}function vg(z,ye,We){let _t=ce(181);return _t.modifiers=hA(z),_t.parameters=hA(ye),_t.type=We,_t.transformFlags=1,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function Kl(z,ye,We,_t){return z.parameters!==We||z.type!==_t||z.modifiers!==ye?fe(vg(ye,We,_t),z):z}function Ju(z,ye){let We=ne(204);return We.type=z,We.literal=ye,We.transformFlags=1,We}function Da(z,ye,We){return z.type!==ye||z.literal!==We?Eo(Ju(ye,We),z):z}function fu(z){return Xt(z)}function yg(z,ye,We){let _t=ne(182);return _t.assertsModifier=z,_t.parameterName=vI(ye),_t.type=We,_t.transformFlags=1,_t}function _I(z,ye,We,_t){return z.assertsModifier!==ye||z.parameterName!==We||z.type!==_t?Eo(yg(ye,We,_t),z):z}function Kh(z,ye){let We=ne(183);return We.typeName=vI(z),We.typeArguments=ye&&n().parenthesizeTypeArguments(ae(ye)),We.transformFlags=1,We}function Ri(z,ye,We){return z.typeName!==ye||z.typeArguments!==We?Eo(Kh(ye,We),z):z}function Do(z,ye,We){let _t=ce(184);return _t.typeParameters=hA(z),_t.parameters=hA(ye),_t.type=We,_t.transformFlags=1,_t.modifiers=void 0,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function Pt(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?Hu(Do(ye,We,_t),z):z}function Hu(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),fe(z,ye)}function Ru(...z){return z.length===4?Vs(...z):z.length===3?Uu(...z):Zo.fail("Incorrect number of arguments specified.")}function Vs(z,ye,We,_t){let Rr=ce(185);return Rr.modifiers=hA(z),Rr.typeParameters=hA(ye),Rr.parameters=hA(We),Rr.type=_t,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.typeArguments=void 0,Rr}function Uu(z,ye,We){return Vs(void 0,z,ye,We)}function Yn(...z){return z.length===5?Ko(...z):z.length===4?Sg(...z):Zo.fail("Incorrect number of arguments specified.")}function Ko(z,ye,We,_t,Rr){return z.modifiers!==ye||z.typeParameters!==We||z.parameters!==_t||z.type!==Rr?fe(Ru(ye,We,_t,Rr),z):z}function Sg(z,ye,We,_t){return Ko(z,z.modifiers,ye,We,_t)}function HA(z,ye){let We=ne(186);return We.exprName=z,We.typeArguments=ye&&n().parenthesizeTypeArguments(ye),We.transformFlags=1,We}function ZA(z,ye,We){return z.exprName!==ye||z.typeArguments!==We?Eo(HA(ye,We),z):z}function $i(z){let ye=ce(187);return ye.members=ae(z),ye.transformFlags=1,ye}function gl(z,ye){return z.members!==ye?Eo($i(ye),z):z}function zf(z){let ye=ne(188);return ye.elementType=n().parenthesizeNonArrayTypeOfPostfixType(z),ye.transformFlags=1,ye}function zd(z,ye){return z.elementType!==ye?Eo(zf(ye),z):z}function aA(z){let ye=ne(189);return ye.elements=ae(n().parenthesizeElementTypesOfTupleType(z)),ye.transformFlags=1,ye}function so(z,ye){return z.elements!==ye?Eo(aA(ye),z):z}function Ki(z,ye,We,_t){let Rr=ce(202);return Rr.dotDotDotToken=z,Rr.name=ye,Rr.questionToken=We,Rr.type=_t,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr}function cc(z,ye,We,_t,Rr){return z.dotDotDotToken!==ye||z.name!==We||z.questionToken!==_t||z.type!==Rr?Eo(Ki(ye,We,_t,Rr),z):z}function Xs(z){let ye=ne(190);return ye.type=n().parenthesizeTypeOfOptionalType(z),ye.transformFlags=1,ye}function ws(z,ye){return z.type!==ye?Eo(Xs(ye),z):z}function Gs(z){let ye=ne(191);return ye.type=z,ye.transformFlags=1,ye}function Ma(z,ye){return z.type!==ye?Eo(Gs(ye),z):z}function Dc(z,ye,We){let _t=ne(z);return _t.types=J.createNodeArray(We(ye)),_t.transformFlags=1,_t}function As(z,ye,We){return z.types!==ye?Eo(Dc(z.kind,ye,We),z):z}function Nf(z){return Dc(192,z,n().parenthesizeConstituentTypesOfUnionType)}function Am(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfUnionType)}function Zl(z){return Dc(193,z,n().parenthesizeConstituentTypesOfIntersectionType)}function rc(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfIntersectionType)}function ad(z,ye,We,_t){let Rr=ne(194);return Rr.checkType=n().parenthesizeCheckTypeOfConditionalType(z),Rr.extendsType=n().parenthesizeExtendsTypeOfConditionalType(ye),Rr.trueType=We,Rr.falseType=_t,Rr.transformFlags=1,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function Qm(z,ye,We,_t,Rr){return z.checkType!==ye||z.extendsType!==We||z.trueType!==_t||z.falseType!==Rr?Eo(ad(ye,We,_t,Rr),z):z}function rl(z){let ye=ne(195);return ye.typeParameter=z,ye.transformFlags=1,ye}function LA(z,ye){return z.typeParameter!==ye?Eo(rl(ye),z):z}function VA(z,ye){let We=ne(203);return We.head=z,We.templateSpans=ae(ye),We.transformFlags=1,We}function bl(z,ye,We){return z.head!==ye||z.templateSpans!==We?Eo(VA(ye,We),z):z}function bg(z,ye,We,_t,Rr=!1){let ai=ne(205);return ai.argument=z,ai.attributes=ye,ai.assertions&&ai.assertions.assertClause&&ai.attributes&&(ai.assertions.assertClause=ai.attributes),ai.qualifier=We,ai.typeArguments=_t&&n().parenthesizeTypeArguments(_t),ai.isTypeOf=Rr,ai.transformFlags=1,ai}function Yp(z,ye,We,_t,Rr,ai=z.isTypeOf){return z.argument!==ye||z.attributes!==We||z.qualifier!==_t||z.typeArguments!==Rr||z.isTypeOf!==ai?Eo(bg(ye,We,_t,Rr,ai),z):z}function YA(z){let ye=ne(196);return ye.type=z,ye.transformFlags=1,ye}function vr(z,ye){return z.type!==ye?Eo(YA(ye),z):z}function Zt(){let z=ne(197);return z.transformFlags=1,z}function bn(z,ye){let We=ne(198);return We.operator=z,We.type=z===148?n().parenthesizeOperandOfReadonlyTypeOperator(ye):n().parenthesizeOperandOfTypeOperator(ye),We.transformFlags=1,We}function ls(z,ye){return z.type!==ye?Eo(bn(z.operator,ye),z):z}function oa(z,ye){let We=ne(199);return We.objectType=n().parenthesizeNonArrayTypeOfPostfixType(z),We.indexType=ye,We.transformFlags=1,We}function Fs(z,ye,We){return z.objectType!==ye||z.indexType!==We?Eo(oa(ye,We),z):z}function Oa(z,ye,We,_t,Rr,ai){let Lo=ce(200);return Lo.readonlyToken=z,Lo.typeParameter=ye,Lo.nameType=We,Lo.questionToken=_t,Lo.type=Rr,Lo.members=ai&&ae(ai),Lo.transformFlags=1,Lo.locals=void 0,Lo.nextContainer=void 0,Lo}function Ca(z,ye,We,_t,Rr,ai,Lo){return z.readonlyToken!==ye||z.typeParameter!==We||z.nameType!==_t||z.questionToken!==Rr||z.type!==ai||z.members!==Lo?Eo(Oa(ye,We,_t,Rr,ai,Lo),z):z}function gd(z){let ye=ne(201);return ye.literal=z,ye.transformFlags=1,ye}function Dp(z,ye){return z.literal!==ye?Eo(gd(ye),z):z}function sp(z){let ye=ne(206);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements)|1024|524288,ye.transformFlags&32768&&(ye.transformFlags|=65664),ye}function QA(z,ye){return z.elements!==ye?Eo(sp(ye),z):z}function ff(z){let ye=ne(207);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements)|1024|524288,ye}function Zs(z,ye){return z.elements!==ye?Eo(ff(ye),z):z}function io(z,ye,We,_t){let Rr=ce(208);return Rr.dotDotDotToken=z,Rr.propertyName=vI(ye),Rr.name=vI(We),Rr.initializer=RA(_t),Rr.transformFlags|=$o(Rr.dotDotDotToken)|yP(Rr.propertyName)|yP(Rr.name)|$o(Rr.initializer)|(Rr.dotDotDotToken?32768:0)|1024,Rr.flowNode=void 0,Rr}function Ea(z,ye,We,_t,Rr){return z.propertyName!==We||z.dotDotDotToken!==ye||z.name!==_t||z.initializer!==Rr?Eo(io(ye,We,_t,Rr),z):z}function Hl(z,ye){let We=ne(209),_t=z&&tCe(z),Rr=ae(z,_t&&L$a(_t)?!0:void 0);return We.elements=n().parenthesizeExpressionsOfCommaDelimitedList(Rr),We.multiLine=ye,We.transformFlags|=ed(We.elements),We}function Dr(z,ye){return z.elements!==ye?Eo(Hl(ye,z.multiLine),z):z}function On(z,ye){let We=ce(210);return We.properties=ae(z),We.multiLine=ye,We.transformFlags|=ed(We.properties),We.jsDoc=void 0,We}function di(z,ye){return z.properties!==ye?Eo(On(ye,z.multiLine),z):z}function aa(z,ye,We){let _t=ce(211);return _t.expression=z,_t.questionDotToken=ye,_t.name=We,_t.transformFlags=$o(_t.expression)|$o(_t.questionDotToken)|(t_(_t.name)?HNe(_t.name):$o(_t.name)|536870912),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function Bo(z,ye){let We=aa(n().parenthesizeLeftSideOfAccess(z,!1),void 0,vI(ye));return SNr(z)&&(We.transformFlags|=384),We}function us(z,ye,We){return U7a(z)?WA(z,ye,z.questionDotToken,v6(We,t_)):z.expression!==ye||z.name!==We?Eo(Bo(ye,We),z):z}function Xl(z,ye,We){let _t=aa(n().parenthesizeLeftSideOfAccess(z,!0),ye,vI(We));return _t.flags|=64,_t.transformFlags|=32,_t}function WA(z,ye,We,_t){return Zo.assert(!!(z.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),z.expression!==ye||z.questionDotToken!==We||z.name!==_t?Eo(Xl(ye,We,_t),z):z}function If(z,ye,We){let _t=ce(212);return _t.expression=z,_t.questionDotToken=ye,_t.argumentExpression=We,_t.transformFlags|=$o(_t.expression)|$o(_t.questionDotToken)|$o(_t.argumentExpression),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function rf(z,ye){let We=If(n().parenthesizeLeftSideOfAccess(z,!1),void 0,$d(ye));return SNr(z)&&(We.transformFlags|=384),We}function op(z,ye,We){return K7a(z)?$1(z,ye,z.questionDotToken,We):z.expression!==ye||z.argumentExpression!==We?Eo(rf(ye,We),z):z}function bd(z,ye,We){let _t=If(n().parenthesizeLeftSideOfAccess(z,!0),ye,$d(We));return _t.flags|=64,_t.transformFlags|=32,_t}function $1(z,ye,We,_t){return Zo.assert(!!(z.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),z.expression!==ye||z.questionDotToken!==We||z.argumentExpression!==_t?Eo(bd(ye,We,_t),z):z}function Cw(z,ye,We,_t){let Rr=ce(213);return Rr.expression=z,Rr.questionDotToken=ye,Rr.typeArguments=We,Rr.arguments=_t,Rr.transformFlags|=$o(Rr.expression)|$o(Rr.questionDotToken)|ed(Rr.typeArguments)|ed(Rr.arguments),Rr.typeArguments&&(Rr.transformFlags|=1),z2i(Rr.expression)&&(Rr.transformFlags|=16384),Rr}function XA(z,ye,We){let _t=Cw(n().parenthesizeLeftSideOfAccess(z,!1),void 0,hA(ye),n().parenthesizeExpressionsOfCommaDelimitedList(ae(We)));return o$a(_t.expression)&&(_t.transformFlags|=8388608),_t}function Ac(z,ye,We,_t){return Y2i(z)?JS(z,ye,z.questionDotToken,We,_t):z.expression!==ye||z.typeArguments!==We||z.arguments!==_t?Eo(XA(ye,We,_t),z):z}function Gm(z,ye,We,_t){let Rr=Cw(n().parenthesizeLeftSideOfAccess(z,!0),ye,hA(We),n().parenthesizeExpressionsOfCommaDelimitedList(ae(_t)));return Rr.flags|=64,Rr.transformFlags|=32,Rr}function JS(z,ye,We,_t,Rr){return Zo.assert(!!(z.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),z.expression!==ye||z.questionDotToken!==We||z.typeArguments!==_t||z.arguments!==Rr?Eo(Gm(ye,We,_t,Rr),z):z}function qd(z,ye,We){let _t=ce(214);return _t.expression=n().parenthesizeExpressionOfNew(z),_t.typeArguments=hA(ye),_t.arguments=We?n().parenthesizeExpressionsOfCommaDelimitedList(We):void 0,_t.transformFlags|=$o(_t.expression)|ed(_t.typeArguments)|ed(_t.arguments)|32,_t.typeArguments&&(_t.transformFlags|=1),_t}function hh(z,ye,We,_t){return z.expression!==ye||z.typeArguments!==We||z.arguments!==_t?Eo(qd(ye,We,_t),z):z}function Qp(z,ye,We){let _t=ne(215);return _t.tag=n().parenthesizeLeftSideOfAccess(z,!1),_t.typeArguments=hA(ye),_t.template=We,_t.transformFlags|=$o(_t.tag)|ed(_t.typeArguments)|$o(_t.template)|1024,_t.typeArguments&&(_t.transformFlags|=1),rqa(_t.template)&&(_t.transformFlags|=128),_t}function dC(z,ye,We,_t){return z.tag!==ye||z.typeArguments!==We||z.template!==_t?Eo(Qp(ye,We,_t),z):z}function oE(z,ye){let We=ne(216);return We.expression=n().parenthesizeOperandOfPrefixUnary(ye),We.type=z,We.transformFlags|=$o(We.expression)|$o(We.type)|1,We}function K_(z,ye,We){return z.type!==ye||z.expression!==We?Eo(oE(ye,We),z):z}function ey(z){let ye=ne(217);return ye.expression=z,ye.transformFlags=$o(ye.expression),ye.jsDoc=void 0,ye}function KE(z,ye){return z.expression!==ye?Eo(ey(ye),z):z}function NC(z,ye,We,_t,Rr,ai,Lo){let Hc=ce(218);Hc.modifiers=hA(z),Hc.asteriskToken=ye,Hc.name=vI(We),Hc.typeParameters=hA(_t),Hc.parameters=ae(Rr),Hc.type=ai,Hc.body=Lo;let ld=bP(Hc.modifiers)&1024,hm=!!Hc.asteriskToken,ov=ld&&hm;return Hc.transformFlags=ed(Hc.modifiers)|$o(Hc.asteriskToken)|yP(Hc.name)|ed(Hc.typeParameters)|ed(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(ov?128:ld?256:hm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304,Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.flowNode=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function n_(z,ye,We,_t,Rr,ai,Lo,Hc){return z.name!==_t||z.modifiers!==ye||z.asteriskToken!==We||z.typeParameters!==Rr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?fe(NC(ye,We,_t,Rr,ai,Lo,Hc),z):z}function up(z,ye,We,_t,Rr,ai){let Lo=ce(219);Lo.modifiers=hA(z),Lo.typeParameters=hA(ye),Lo.parameters=ae(We),Lo.type=_t,Lo.equalsGreaterThanToken=Rr??Xt(39),Lo.body=n().parenthesizeConciseBodyOfArrowFunction(ai);let Hc=bP(Lo.modifiers)&1024;return Lo.transformFlags=ed(Lo.modifiers)|ed(Lo.typeParameters)|ed(Lo.parameters)|$o(Lo.type)|$o(Lo.equalsGreaterThanToken)|$o(Lo.body)&-67108865|(Lo.typeParameters||Lo.type?1:0)|(Hc?16640:0)|1024,Lo.typeArguments=void 0,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.flowNode=void 0,Lo.endFlowNode=void 0,Lo.returnFlowNode=void 0,Lo}function Xm(z,ye,We,_t,Rr,ai,Lo){return z.modifiers!==ye||z.typeParameters!==We||z.parameters!==_t||z.type!==Rr||z.equalsGreaterThanToken!==ai||z.body!==Lo?fe(up(ye,We,_t,Rr,ai,Lo),z):z}function hb(z){let ye=ne(220);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function pe(z,ye){return z.expression!==ye?Eo(hb(ye),z):z}function dm(z){let ye=ne(221);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function qf(z,ye){return z.expression!==ye?Eo(dm(ye),z):z}function yI(z){let ye=ne(222);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function bI(z,ye){return z.expression!==ye?Eo(yI(ye),z):z}function J2(z){let ye=ne(223);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression)|256|128|2097152,ye}function aE(z,ye){return z.expression!==ye?Eo(J2(ye),z):z}function se(z,ye){let We=ne(224);return We.operator=z,We.operand=n().parenthesizeOperandOfPrefixUnary(ye),We.transformFlags|=$o(We.operand),(z===46||z===47)&&t_(We.operand)&&!UNe(We.operand)&&!uSi(We.operand)&&(We.transformFlags|=268435456),We}function P(z,ye){return z.operand!==ye?Eo(se(z.operator,ye),z):z}function K(z,ye){let We=ne(225);return We.operator=ye,We.operand=n().parenthesizeOperandOfPostfixUnary(z),We.transformFlags|=$o(We.operand),t_(We.operand)&&!UNe(We.operand)&&!uSi(We.operand)&&(We.transformFlags|=268435456),We}function we(z,ye){return z.operand!==ye?Eo(K(ye,z.operator),z):z}function At(z,ye,We){let _t=ce(226),Rr=nN(ye),ai=Rr.kind;return _t.left=n().parenthesizeLeftSideOfBinary(ai,z),_t.operatorToken=Rr,_t.right=n().parenthesizeRightSideOfBinary(ai,_t.left,We),_t.transformFlags|=$o(_t.left)|$o(_t.operatorToken)|$o(_t.right),ai===61?_t.transformFlags|=32:ai===64?ABi(_t.left)?_t.transformFlags|=5248|sr(_t.left):k$a(_t.left)&&(_t.transformFlags|=5120|sr(_t.left)):ai===43||ai===68?_t.transformFlags|=512:dqa(ai)&&(_t.transformFlags|=16),ai===103&&aCe(_t.left)&&(_t.transformFlags|=536870912),_t.jsDoc=void 0,_t}function sr(z){return NBi(z)?65536:0}function Yr(z,ye,We,_t){return z.left!==ye||z.operatorToken!==We||z.right!==_t?Eo(At(ye,We,_t),z):z}function Lr(z,ye,We,_t,Rr){let ai=ne(227);return ai.condition=n().parenthesizeConditionOfConditionalExpression(z),ai.questionToken=ye??Xt(58),ai.whenTrue=n().parenthesizeBranchOfConditionalExpression(We),ai.colonToken=_t??Xt(59),ai.whenFalse=n().parenthesizeBranchOfConditionalExpression(Rr),ai.transformFlags|=$o(ai.condition)|$o(ai.questionToken)|$o(ai.whenTrue)|$o(ai.colonToken)|$o(ai.whenFalse),ai}function fi(z,ye,We,_t,Rr,ai){return z.condition!==ye||z.questionToken!==We||z.whenTrue!==_t||z.colonToken!==Rr||z.whenFalse!==ai?Eo(Lr(ye,We,_t,Rr,ai),z):z}function $n(z,ye){let We=ne(228);return We.head=z,We.templateSpans=ae(ye),We.transformFlags|=$o(We.head)|ed(We.templateSpans)|1024,We}function ra(z,ye,We){return z.head!==ye||z.templateSpans!==We?Eo($n(ye,We),z):z}function kc(z,ye,We,_t=0){Zo.assert(!(_t&-7177),"Unsupported template flags.");let Rr;if(We!==void 0&&We!==ye&&(Rr=Kqa(z,We),typeof Rr=="object"))return Zo.fail("Invalid raw text");if(ye===void 0){if(Rr===void 0)return Zo.fail("Arguments 'text' and 'rawText' may not both be undefined.");ye=Rr}else Rr!==void 0&&Zo.assert(ye===Rr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return ye}function Dl(z){let ye=1024;return z&&(ye|=128),ye}function ca(z,ye,We,_t){let Rr=$t(z);return Rr.text=ye,Rr.rawText=We,Rr.templateFlags=_t&7176,Rr.transformFlags=Dl(Rr.templateFlags),Rr}function Bl(z,ye,We,_t){let Rr=ce(z);return Rr.text=ye,Rr.rawText=We,Rr.templateFlags=_t&7176,Rr.transformFlags=Dl(Rr.templateFlags),Rr}function eA(z,ye,We,_t){return z===15?Bl(z,ye,We,_t):ca(z,ye,We,_t)}function BA(z,ye,We){return z=kc(16,z,ye,We),eA(16,z,ye,We)}function gI(z,ye,We){return z=kc(16,z,ye,We),eA(17,z,ye,We)}function gp(z,ye,We){return z=kc(16,z,ye,We),eA(18,z,ye,We)}function mb(z,ye,We){return z=kc(16,z,ye,We),Bl(15,z,ye,We)}function Na(z,ye){Zo.assert(!z||!!ye,"A `YieldExpression` with an asteriskToken must have an expression.");let We=ne(229);return We.expression=ye&&n().parenthesizeExpressionForDisallowedComma(ye),We.asteriskToken=z,We.transformFlags|=$o(We.expression)|$o(We.asteriskToken)|1024|128|1048576,We}function Rd(z,ye,We){return z.expression!==We||z.asteriskToken!==ye?Eo(Na(ye,We),z):z}function e2(z){let ye=ne(230);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|1024|32768,ye}function N_(z,ye){return z.expression!==ye?Eo(e2(ye),z):z}function DC(z,ye,We,_t,Rr){let ai=ce(231);return ai.modifiers=hA(z),ai.name=vI(ye),ai.typeParameters=hA(We),ai.heritageClauses=hA(_t),ai.members=ae(Rr),ai.transformFlags|=ed(ai.modifiers)|yP(ai.name)|ed(ai.typeParameters)|ed(ai.heritageClauses)|ed(ai.members)|(ai.typeParameters?1:0)|1024,ai.jsDoc=void 0,ai}function Jm(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.heritageClauses!==Rr||z.members!==ai?Eo(DC(ye,We,_t,Rr,ai),z):z}function US(){return ne(232)}function Zg(z,ye){let We=ne(233);return We.expression=n().parenthesizeLeftSideOfAccess(z,!1),We.typeArguments=ye&&n().parenthesizeTypeArguments(ye),We.transformFlags|=$o(We.expression)|ed(We.typeArguments)|1024,We}function Cb(z,ye,We){return z.expression!==ye||z.typeArguments!==We?Eo(Zg(ye,We),z):z}function pC(z,ye){let We=ne(234);return We.expression=z,We.type=ye,We.transformFlags|=$o(We.expression)|$o(We.type)|1,We}function kC(z,ye,We){return z.expression!==ye||z.type!==We?Eo(pC(ye,We),z):z}function U2(z){let ye=ne(235);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1,ye}function j_(z,ye){return j7a(z)?mh(z,ye):z.expression!==ye?Eo(U2(ye),z):z}function xC(z,ye){let We=ne(238);return We.expression=z,We.type=ye,We.transformFlags|=$o(We.expression)|$o(We.type)|1,We}function GC(z,ye,We){return z.expression!==ye||z.type!==We?Eo(xC(ye,We),z):z}function th(z){let ye=ne(235);return ye.flags|=64,ye.expression=n().parenthesizeLeftSideOfAccess(z,!0),ye.transformFlags|=$o(ye.expression)|1,ye}function mh(z,ye){return Zo.assert(!!(z.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),z.expression!==ye?Eo(th(ye),z):z}function wA(z,ye){let We=ne(236);switch(We.keywordToken=z,We.name=ye,We.transformFlags|=$o(We.name),z){case 105:We.transformFlags|=1024;break;case 102:We.transformFlags|=32;break;default:return Zo.assertNever(z)}return We.flowNode=void 0,We}function Nd(z,ye){return z.name!==ye?Eo(wA(z.keywordToken,ye),z):z}function Mc(z,ye){let We=ne(239);return We.expression=z,We.literal=ye,We.transformFlags|=$o(We.expression)|$o(We.literal)|1024,We}function Pf(z,ye,We){return z.expression!==ye||z.literal!==We?Eo(Mc(ye,We),z):z}function cE(){let z=ne(240);return z.transformFlags|=1024,z}function tA(z,ye){let We=ne(241);return We.statements=ae(z),We.multiLine=ye,We.transformFlags|=ed(We.statements),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We}function KS(z,ye){return z.statements!==ye?Eo(tA(ye,z.multiLine),z):z}function jS(z,ye){let We=ne(243);return We.modifiers=hA(z),We.declarationList=Mee(ye)?kh(ye):ye,We.transformFlags|=ed(We.modifiers)|$o(We.declarationList),bP(We.modifiers)&128&&(We.transformFlags=1),We.jsDoc=void 0,We.flowNode=void 0,We}function pm(z,ye,We){return z.modifiers!==ye||z.declarationList!==We?Eo(jS(ye,We),z):z}function fm(){let z=ne(242);return z.jsDoc=void 0,z}function cs(z){let ye=ne(244);return ye.expression=n().parenthesizeExpressionOfExpressionStatement(z),ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function na(z,ye){return z.expression!==ye?Eo(cs(ye),z):z}function ko(z,ye,We){let _t=ne(245);return _t.expression=z,_t.thenStatement=ay(ye),_t.elseStatement=ay(We),_t.transformFlags|=$o(_t.expression)|$o(_t.thenStatement)|$o(_t.elseStatement),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function ki(z,ye,We,_t){return z.expression!==ye||z.thenStatement!==We||z.elseStatement!==_t?Eo(ko(ye,We,_t),z):z}function jl(z,ye){let We=ne(246);return We.statement=ay(z),We.expression=ye,We.transformFlags|=$o(We.statement)|$o(We.expression),We.jsDoc=void 0,We.flowNode=void 0,We}function hd(z,ye,We){return z.statement!==ye||z.expression!==We?Eo(jl(ye,We),z):z}function $f(z,ye){let We=ne(247);return We.expression=z,We.statement=ay(ye),We.transformFlags|=$o(We.expression)|$o(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function Wd(z,ye,We){return z.expression!==ye||z.statement!==We?Eo($f(ye,We),z):z}function fC(z,ye,We,_t){let Rr=ne(248);return Rr.initializer=z,Rr.condition=ye,Rr.incrementor=We,Rr.statement=ay(_t),Rr.transformFlags|=$o(Rr.initializer)|$o(Rr.condition)|$o(Rr.incrementor)|$o(Rr.statement),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function jE(z,ye,We,_t,Rr){return z.initializer!==ye||z.condition!==We||z.incrementor!==_t||z.statement!==Rr?Eo(fC(ye,We,_t,Rr),z):z}function Um(z,ye,We){let _t=ne(249);return _t.initializer=z,_t.expression=ye,_t.statement=ay(We),_t.transformFlags|=$o(_t.initializer)|$o(_t.expression)|$o(_t.statement),_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.flowNode=void 0,_t}function wy(z,ye,We,_t){return z.initializer!==ye||z.expression!==We||z.statement!==_t?Eo(Um(ye,We,_t),z):z}function z_(z,ye,We,_t){let Rr=ne(250);return Rr.awaitModifier=z,Rr.initializer=ye,Rr.expression=n().parenthesizeExpressionForDisallowedComma(We),Rr.statement=ay(_t),Rr.transformFlags|=$o(Rr.awaitModifier)|$o(Rr.initializer)|$o(Rr.expression)|$o(Rr.statement)|1024,z&&(Rr.transformFlags|=128),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function cd(z,ye,We,_t,Rr){return z.awaitModifier!==ye||z.initializer!==We||z.expression!==_t||z.statement!==Rr?Eo(z_(ye,We,_t,Rr),z):z}function zE(z){let ye=ne(251);return ye.label=vI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function qE(z,ye){return z.label!==ye?Eo(zE(ye),z):z}function Xp(z){let ye=ne(252);return ye.label=vI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function zS(z,ye){return z.label!==ye?Eo(Xp(ye),z):z}function Ty(z){let ye=ne(253);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|128|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function ty(z,ye){return z.expression!==ye?Eo(Ty(ye),z):z}function _w(z,ye){let We=ne(254);return We.expression=z,We.statement=ay(ye),We.transformFlags|=$o(We.expression)|$o(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function K2(z,ye,We){return z.expression!==ye||z.statement!==We?Eo(_w(ye,We),z):z}function xc(z,ye){let We=ne(255);return We.expression=n().parenthesizeExpressionForDisallowedComma(z),We.caseBlock=ye,We.transformFlags|=$o(We.expression)|$o(We.caseBlock),We.jsDoc=void 0,We.flowNode=void 0,We.possiblyExhaustive=!1,We}function gt(z,ye,We){return z.expression!==ye||z.caseBlock!==We?Eo(xc(ye,We),z):z}function ar(z,ye){let We=ne(256);return We.label=vI(z),We.statement=ay(ye),We.transformFlags|=$o(We.label)|$o(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function Jr(z,ye,We){return z.label!==ye||z.statement!==We?Eo(ar(ye,We),z):z}function Gn(z){let ye=ne(257);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function Ts(z,ye){return z.expression!==ye?Eo(Gn(ye),z):z}function Qo(z,ye,We){let _t=ne(258);return _t.tryBlock=z,_t.catchClause=ye,_t.finallyBlock=We,_t.transformFlags|=$o(_t.tryBlock)|$o(_t.catchClause)|$o(_t.finallyBlock),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function Bg(z,ye,We,_t){return z.tryBlock!==ye||z.catchClause!==We||z.finallyBlock!==_t?Eo(Qo(ye,We,_t),z):z}function Dg(){let z=ne(259);return z.jsDoc=void 0,z.flowNode=void 0,z}function Df(z,ye,We,_t){let Rr=ce(260);return Rr.name=vI(z),Rr.exclamationToken=ye,Rr.type=We,Rr.initializer=RA(_t),Rr.transformFlags|=yP(Rr.name)|$o(Rr.initializer)|(Rr.exclamationToken??Rr.type?1:0),Rr.jsDoc=void 0,Rr}function AI(z,ye,We,_t,Rr){return z.name!==ye||z.type!==_t||z.exclamationToken!==We||z.initializer!==Rr?Eo(Df(ye,We,_t,Rr),z):z}function kh(z,ye=0){let We=ne(261);return We.flags|=ye&7,We.declarations=ae(z),We.transformFlags|=ed(We.declarations)|4194304,ye&7&&(We.transformFlags|=263168),ye&4&&(We.transformFlags|=4),We}function lE(z,ye){return z.declarations!==ye?Eo(kh(ye,z.flags),z):z}function xT(z,ye,We,_t,Rr,ai,Lo){let Hc=ce(262);if(Hc.modifiers=hA(z),Hc.asteriskToken=ye,Hc.name=vI(We),Hc.typeParameters=hA(_t),Hc.parameters=ae(Rr),Hc.type=ai,Hc.body=Lo,!Hc.body||bP(Hc.modifiers)&128)Hc.transformFlags=1;else{let ld=bP(Hc.modifiers)&1024,hm=!!Hc.asteriskToken,ov=ld&&hm;Hc.transformFlags=ed(Hc.modifiers)|$o(Hc.asteriskToken)|yP(Hc.name)|ed(Hc.typeParameters)|ed(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(ov?128:ld?256:hm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304}return Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function uB(z,ye,We,_t,Rr,ai,Lo,Hc){return z.modifiers!==ye||z.asteriskToken!==We||z.name!==_t||z.typeParameters!==Rr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?GT(xT(ye,We,_t,Rr,ai,Lo,Hc),z):z}function GT(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),fe(z,ye)}function Ry(z,ye,We,_t,Rr){let ai=ce(263);return ai.modifiers=hA(z),ai.name=vI(ye),ai.typeParameters=hA(We),ai.heritageClauses=hA(_t),ai.members=ae(Rr),bP(ai.modifiers)&128?ai.transformFlags=1:(ai.transformFlags|=ed(ai.modifiers)|yP(ai.name)|ed(ai.typeParameters)|ed(ai.heritageClauses)|ed(ai.members)|(ai.typeParameters?1:0)|1024,ai.transformFlags&8192&&(ai.transformFlags|=1)),ai.jsDoc=void 0,ai}function $E(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.heritageClauses!==Rr||z.members!==ai?Eo(Ry(ye,We,_t,Rr,ai),z):z}function q_(z,ye,We,_t,Rr){let ai=ce(264);return ai.modifiers=hA(z),ai.name=vI(ye),ai.typeParameters=hA(We),ai.heritageClauses=hA(_t),ai.members=ae(Rr),ai.transformFlags=1,ai.jsDoc=void 0,ai}function FT(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.heritageClauses!==Rr||z.members!==ai?Eo(q_(ye,We,_t,Rr,ai),z):z}function nf(z,ye,We,_t){let Rr=ce(265);return Rr.modifiers=hA(z),Rr.name=vI(ye),Rr.typeParameters=hA(We),Rr.type=_t,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function Ny(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.type!==Rr?Eo(nf(ye,We,_t,Rr),z):z}function qS(z,ye,We){let _t=ce(266);return _t.modifiers=hA(z),_t.name=vI(ye),_t.members=ae(We),_t.transformFlags|=ed(_t.modifiers)|$o(_t.name)|ed(_t.members)|1,_t.transformFlags&=-67108865,_t.jsDoc=void 0,_t}function rh(z,ye,We,_t){return z.modifiers!==ye||z.name!==We||z.members!==_t?Eo(qS(ye,We,_t),z):z}function TA(z,ye,We,_t=0){let Rr=ce(267);return Rr.modifiers=hA(z),Rr.flags|=_t&2088,Rr.name=ye,Rr.body=We,bP(Rr.modifiers)&128?Rr.transformFlags=1:Rr.transformFlags|=ed(Rr.modifiers)|$o(Rr.name)|$o(Rr.body)|1,Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function td(z,ye,We,_t){return z.modifiers!==ye||z.name!==We||z.body!==_t?Eo(TA(ye,We,_t,z.flags),z):z}function Km(z){let ye=ne(268);return ye.statements=ae(z),ye.transformFlags|=ed(ye.statements),ye.jsDoc=void 0,ye}function eI(z,ye){return z.statements!==ye?Eo(Km(ye),z):z}function _b(z){let ye=ne(269);return ye.clauses=ae(z),ye.transformFlags|=ed(ye.clauses),ye.locals=void 0,ye.nextContainer=void 0,ye}function D_(z,ye){return z.clauses!==ye?Eo(_b(ye),z):z}function yb(z){let ye=ce(270);return ye.name=vI(z),ye.transformFlags|=HNe(ye.name)|1,ye.modifiers=void 0,ye.jsDoc=void 0,ye}function Dy(z,ye){return z.name!==ye?$S(yb(ye),z):z}function $S(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function bb(z,ye,We,_t){let Rr=ce(271);return Rr.modifiers=hA(z),Rr.name=vI(We),Rr.isTypeOnly=ye,Rr.moduleReference=_t,Rr.transformFlags|=ed(Rr.modifiers)|HNe(Rr.name)|$o(Rr.moduleReference),SBi(Rr.moduleReference)||(Rr.transformFlags|=1),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function $_(z,ye,We,_t,Rr){return z.modifiers!==ye||z.isTypeOnly!==We||z.name!==_t||z.moduleReference!==Rr?Eo(bb(ye,We,_t,Rr),z):z}function e1(z,ye,We,_t){let Rr=ne(272);return Rr.modifiers=hA(z),Rr.importClause=ye,Rr.moduleSpecifier=We,Rr.attributes=Rr.assertClause=_t,Rr.transformFlags|=$o(Rr.importClause)|$o(Rr.moduleSpecifier),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function gB(z,ye,We,_t,Rr){return z.modifiers!==ye||z.importClause!==We||z.moduleSpecifier!==_t||z.attributes!==Rr?Eo(e1(ye,We,_t,Rr),z):z}function ZT(z,ye,We){let _t=ce(273);return _t.isTypeOnly=z,_t.name=ye,_t.namedBindings=We,_t.transformFlags|=$o(_t.name)|$o(_t.namedBindings),z&&(_t.transformFlags|=1),_t.transformFlags&=-67108865,_t}function AB(z,ye,We,_t){return z.isTypeOnly!==ye||z.name!==We||z.namedBindings!==_t?Eo(ZT(ye,We,_t),z):z}function ev(z,ye){let We=ne(300);return We.elements=ae(z),We.multiLine=ye,We.token=132,We.transformFlags|=4,We}function zR(z,ye,We){return z.elements!==ye||z.multiLine!==We?Eo(ev(ye,We),z):z}function tv(z,ye){let We=ne(301);return We.name=z,We.value=ye,We.transformFlags|=4,We}function t1(z,ye,We){return z.name!==ye||z.value!==We?Eo(tv(ye,We),z):z}function j2(z,ye){let We=ne(302);return We.assertClause=z,We.multiLine=ye,We}function LT(z,ye,We){return z.assertClause!==ye||z.multiLine!==We?Eo(j2(ye,We),z):z}function pn(z,ye,We){let _t=ne(300);return _t.token=We??118,_t.elements=ae(z),_t.multiLine=ye,_t.transformFlags|=4,_t}function t2(z,ye,We){return z.elements!==ye||z.multiLine!==We?Eo(pn(ye,We,z.token),z):z}function z2(z,ye){let We=ne(301);return We.name=z,We.value=ye,We.transformFlags|=4,We}function ry(z,ye,We){return z.name!==ye||z.value!==We?Eo(z2(ye,We),z):z}function Ap(z){let ye=ce(274);return ye.name=z,ye.transformFlags|=$o(ye.name),ye.transformFlags&=-67108865,ye}function yw(z,ye){return z.name!==ye?Eo(Ap(ye),z):z}function dB(z){let ye=ce(280);return ye.name=z,ye.transformFlags|=$o(ye.name)|32,ye.transformFlags&=-67108865,ye}function GD(z,ye){return z.name!==ye?Eo(dB(ye),z):z}function Dd(z){let ye=ne(275);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements),ye.transformFlags&=-67108865,ye}function qR(z,ye){return z.elements!==ye?Eo(Dd(ye),z):z}function ny(z,ye,We){let _t=ce(276);return _t.isTypeOnly=z,_t.propertyName=ye,_t.name=We,_t.transformFlags|=$o(_t.propertyName)|$o(_t.name),_t.transformFlags&=-67108865,_t}function pF(z,ye,We,_t){return z.isTypeOnly!==ye||z.propertyName!==We||z.name!==_t?Eo(ny(ye,We,_t),z):z}function r2(z,ye,We){let _t=ce(277);return _t.modifiers=hA(z),_t.isExportEquals=ye,_t.expression=ye?n().parenthesizeRightSideOfBinary(64,void 0,We):n().parenthesizeExpressionOfExportDefault(We),_t.transformFlags|=ed(_t.modifiers)|$o(_t.expression),_t.transformFlags&=-67108865,_t.jsDoc=void 0,_t}function r1(z,ye,We){return z.modifiers!==ye||z.expression!==We?Eo(r2(ye,z.isExportEquals,We),z):z}function k_(z,ye,We,_t,Rr){let ai=ce(278);return ai.modifiers=hA(z),ai.isTypeOnly=ye,ai.exportClause=We,ai.moduleSpecifier=_t,ai.attributes=ai.assertClause=Rr,ai.transformFlags|=ed(ai.modifiers)|$o(ai.exportClause)|$o(ai.moduleSpecifier),ai.transformFlags&=-67108865,ai.jsDoc=void 0,ai}function n1(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.isTypeOnly!==We||z.exportClause!==_t||z.moduleSpecifier!==Rr||z.attributes!==ai?i1(k_(ye,We,_t,Rr,ai),z):z}function i1(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),Eo(z,ye)}function iy(z){let ye=ne(279);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements),ye.transformFlags&=-67108865,ye}function VT(z,ye){return z.elements!==ye?Eo(iy(ye),z):z}function Eb(z,ye,We){let _t=ne(281);return _t.isTypeOnly=z,_t.propertyName=vI(ye),_t.name=vI(We),_t.transformFlags|=$o(_t.propertyName)|$o(_t.name),_t.transformFlags&=-67108865,_t.jsDoc=void 0,_t}function i_(z,ye,We,_t){return z.isTypeOnly!==ye||z.propertyName!==We||z.name!==_t?Eo(Eb(ye,We,_t),z):z}function xh(){let z=ce(282);return z.jsDoc=void 0,z}function Sb(z){let ye=ne(283);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.transformFlags&=-67108865,ye}function pB(z,ye){return z.expression!==ye?Eo(Sb(ye),z):z}function FD(z){return ne(z)}function ZD(z,ye,We=!1){let _t=e0(z,We?ye&&n().parenthesizeNonArrayTypeOfPostfixType(ye):ye);return _t.postfix=We,_t}function e0(z,ye){let We=ne(z);return We.type=ye,We}function LD(z,ye,We){return ye.type!==We?Eo(ZD(z,We,ye.postfix),ye):ye}function $R(z,ye,We){return ye.type!==We?Eo(e0(z,We),ye):ye}function lc(z,ye){let We=ce(317);return We.parameters=hA(z),We.type=ye,We.transformFlags=ed(We.parameters)|(We.type?1:0),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We.typeArguments=void 0,We}function Ch(z,ye,We){return z.parameters!==ye||z.type!==We?Eo(lc(ye,We),z):z}function sf(z,ye=!1){let We=ce(322);return We.jsDocPropertyTags=hA(z),We.isArrayType=ye,We}function EI(z,ye,We){return z.jsDocPropertyTags!==ye||z.isArrayType!==We?Eo(sf(ye,We),z):z}function uE(z){let ye=ne(309);return ye.type=z,ye}function rv(z,ye){return z.type!==ye?Eo(uE(ye),z):z}function Jp(z,ye,We){let _t=ce(323);return _t.typeParameters=hA(z),_t.parameters=ae(ye),_t.type=We,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t}function fB(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?Eo(Jp(ye,We,_t),z):z}function _h(z){let ye=$bt(z.kind);return z.tagName.escapedText===PNe(ye)?z.tagName:Je(ye)}function FC(z,ye,We){let _t=ne(z);return _t.tagName=ye,_t.comment=We,_t}function t0(z,ye,We){let _t=ce(z);return _t.tagName=ye,_t.comment=We,_t}function s1(z,ye,We,_t){let Rr=FC(345,z??Je("template"),_t);return Rr.constraint=ye,Rr.typeParameters=ae(We),Rr}function IB(z,ye=_h(z),We,_t,Rr){return z.tagName!==ye||z.constraint!==We||z.typeParameters!==_t||z.comment!==Rr?Eo(s1(ye,We,_t,Rr),z):z}function bw(z,ye,We,_t){let Rr=t0(346,z??Je("typedef"),_t);return Rr.typeExpression=ye,Rr.fullName=We,Rr.name=gSi(We),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function WT(z,ye=_h(z),We,_t,Rr){return z.tagName!==ye||z.typeExpression!==We||z.fullName!==_t||z.comment!==Rr?Eo(bw(ye,We,_t,Rr),z):z}function S0(z,ye,We,_t,Rr,ai){let Lo=t0(341,z??Je("param"),ai);return Lo.typeExpression=_t,Lo.name=ye,Lo.isNameFirst=!!Rr,Lo.isBracketed=We,Lo}function ia(z,ye=_h(z),We,_t,Rr,ai,Lo){return z.tagName!==ye||z.name!==We||z.isBracketed!==_t||z.typeExpression!==Rr||z.isNameFirst!==ai||z.comment!==Lo?Eo(S0(ye,We,_t,Rr,ai,Lo),z):z}function n2(z,ye,We,_t,Rr,ai){let Lo=t0(348,z??Je("prop"),ai);return Lo.typeExpression=_t,Lo.name=ye,Lo.isNameFirst=!!Rr,Lo.isBracketed=We,Lo}function Ed(z,ye=_h(z),We,_t,Rr,ai,Lo){return z.tagName!==ye||z.name!==We||z.isBracketed!==_t||z.typeExpression!==Rr||z.isNameFirst!==ai||z.comment!==Lo?Eo(n2(ye,We,_t,Rr,ai,Lo),z):z}function SI(z,ye,We,_t){let Rr=t0(338,z??Je("callback"),_t);return Rr.typeExpression=ye,Rr.fullName=We,Rr.name=gSi(We),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function cg(z,ye=_h(z),We,_t,Rr){return z.tagName!==ye||z.typeExpression!==We||z.fullName!==_t||z.comment!==Rr?Eo(SI(ye,We,_t,Rr),z):z}function vb(z,ye,We){let _t=FC(339,z??Je("overload"),We);return _t.typeExpression=ye,_t}function o1(z,ye=_h(z),We,_t){return z.tagName!==ye||z.typeExpression!==We||z.comment!==_t?Eo(vb(ye,We,_t),z):z}function q2(z,ye,We){let _t=FC(328,z??Je("augments"),We);return _t.class=ye,_t}function r0(z,ye=_h(z),We,_t){return z.tagName!==ye||z.class!==We||z.comment!==_t?Eo(q2(ye,We,_t),z):z}function s_(z,ye,We){let _t=FC(329,z??Je("implements"),We);return _t.class=ye,_t}function Up(z,ye,We){let _t=FC(347,z??Je("see"),We);return _t.name=ye,_t}function gE(z,ye,We,_t){return z.tagName!==ye||z.name!==We||z.comment!==_t?Eo(Up(ye,We,_t),z):z}function AE(z){let ye=ne(310);return ye.name=z,ye}function mp(z,ye){return z.name!==ye?Eo(AE(ye),z):z}function jh(z,ye){let We=ne(311);return We.left=z,We.right=ye,We.transformFlags|=$o(We.left)|$o(We.right),We}function v0(z,ye,We){return z.left!==ye||z.right!==We?Eo(jh(ye,We),z):z}function cA(z,ye){let We=ne(324);return We.name=z,We.text=ye,We}function Iu(z,ye,We){return z.name!==ye?Eo(cA(ye,We),z):z}function Kp(z,ye){let We=ne(325);return We.name=z,We.text=ye,We}function IC(z,ye,We){return z.name!==ye?Eo(Kp(ye,We),z):z}function dE(z,ye){let We=ne(326);return We.name=z,We.text=ye,We}function nh(z,ye,We){return z.name!==ye?Eo(dE(ye,We),z):z}function Mf(z,ye=_h(z),We,_t){return z.tagName!==ye||z.class!==We||z.comment!==_t?Eo(s_(ye,We,_t),z):z}function Mo(z,ye,We){return FC(z,ye??Je($bt(z)),We)}function dp(z,ye,We=_h(ye),_t){return ye.tagName!==We||ye.comment!==_t?Eo(Mo(z,We,_t),ye):ye}function fF(z,ye,We,_t){let Rr=FC(z,ye??Je($bt(z)),_t);return Rr.typeExpression=We,Rr}function IF(z,ye,We=_h(ye),_t,Rr){return ye.tagName!==We||ye.typeExpression!==_t||ye.comment!==Rr?Eo(fF(z,We,_t,Rr),ye):ye}function pE(z,ye){return FC(327,z,ye)}function OT(z,ye,We){return z.tagName!==ye||z.comment!==We?Eo(pE(ye,We),z):z}function kp(z,ye,We){let _t=t0(340,z??Je($bt(340)),We);return _t.typeExpression=ye,_t.locals=void 0,_t.nextContainer=void 0,_t}function Fm(z,ye=_h(z),We,_t){return z.tagName!==ye||z.typeExpression!==We||z.comment!==_t?Eo(kp(ye,We,_t),z):z}function xp(z,ye,We,_t,Rr){let ai=FC(351,z??Je("import"),Rr);return ai.importClause=ye,ai.moduleSpecifier=We,ai.attributes=_t,ai.comment=Rr,ai}function i2(z,ye,We,_t,Rr,ai){return z.tagName!==ye||z.comment!==ai||z.importClause!==We||z.moduleSpecifier!==_t||z.attributes!==Rr?Eo(xp(ye,We,_t,Rr,ai),z):z}function Ro(z){let ye=ne(321);return ye.text=z,ye}function fE(z,ye){return z.text!==ye?Eo(Ro(ye),z):z}function hB(z,ye){let We=ne(320);return We.comment=z,We.tags=hA(ye),We}function Xc(z,ye,We){return z.comment!==ye||z.tags!==We?Eo(hB(ye,We),z):z}function su(z,ye,We){let _t=ne(284);return _t.openingElement=z,_t.children=ae(ye),_t.closingElement=We,_t.transformFlags|=$o(_t.openingElement)|ed(_t.children)|$o(_t.closingElement)|2,_t}function IE(z,ye,We,_t){return z.openingElement!==ye||z.children!==We||z.closingElement!==_t?Eo(su(ye,We,_t),z):z}function wL(z,ye,We){let _t=ne(285);return _t.tagName=z,_t.typeArguments=hA(ye),_t.attributes=We,_t.transformFlags|=$o(_t.tagName)|ed(_t.typeArguments)|$o(_t.attributes)|2,_t.typeArguments&&(_t.transformFlags|=1),_t}function eN(z,ye,We,_t){return z.tagName!==ye||z.typeArguments!==We||z.attributes!==_t?Eo(wL(ye,We,_t),z):z}function Pu(z,ye,We){let _t=ne(286);return _t.tagName=z,_t.typeArguments=hA(ye),_t.attributes=We,_t.transformFlags|=$o(_t.tagName)|ed(_t.typeArguments)|$o(_t.attributes)|2,ye&&(_t.transformFlags|=1),_t}function sy(z,ye,We,_t){return z.tagName!==ye||z.typeArguments!==We||z.attributes!==_t?Eo(Pu(ye,We,_t),z):z}function Cp(z){let ye=ne(287);return ye.tagName=z,ye.transformFlags|=$o(ye.tagName)|2,ye}function Im(z,ye){return z.tagName!==ye?Eo(Cp(ye),z):z}function $2(z,ye,We){let _t=ne(288);return _t.openingFragment=z,_t.children=ae(ye),_t.closingFragment=We,_t.transformFlags|=$o(_t.openingFragment)|ed(_t.children)|$o(_t.closingFragment)|2,_t}function o_(z,ye,We,_t){return z.openingFragment!==ye||z.children!==We||z.closingFragment!==_t?Eo($2(ye,We,_t),z):z}function mB(z,ye){let We=ne(12);return We.text=z,We.containsOnlyTriviaWhiteSpaces=!!ye,We.transformFlags|=2,We}function PT(z,ye,We){return z.text!==ye||z.containsOnlyTriviaWhiteSpaces!==We?Eo(mB(ye,We),z):z}function Sx(){let z=ne(289);return z.transformFlags|=2,z}function CB(){let z=ne(290);return z.transformFlags|=2,z}function tI(z,ye){let We=ce(291);return We.name=z,We.initializer=ye,We.transformFlags|=$o(We.name)|$o(We.initializer)|2,We}function zh(z,ye,We){return z.name!==ye||z.initializer!==We?Eo(tI(ye,We),z):z}function nv(z){let ye=ce(292);return ye.properties=ae(z),ye.transformFlags|=ed(ye.properties)|2,ye}function Bb(z,ye){return z.properties!==ye?Eo(nv(ye),z):z}function _p(z){let ye=ne(293);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|2,ye}function s2(z,ye){return z.expression!==ye?Eo(_p(ye),z):z}function a1(z,ye){let We=ne(294);return We.dotDotDotToken=z,We.expression=ye,We.transformFlags|=$o(We.dotDotDotToken)|$o(We.expression)|2,We}function Hf(z,ye){return z.expression!==ye?Eo(a1(z.dotDotDotToken,ye),z):z}function hE(z,ye){let We=ne(295);return We.namespace=z,We.name=ye,We.transformFlags|=$o(We.namespace)|$o(We.name)|2,We}function Od(z,ye,We){return z.namespace!==ye||z.name!==We?Eo(hE(ye,We),z):z}function j(z,ye){let We=ne(296);return We.expression=n().parenthesizeExpressionForDisallowedComma(z),We.statements=ae(ye),We.transformFlags|=$o(We.expression)|ed(We.statements),We.jsDoc=void 0,We}function Z(z,ye,We){return z.expression!==ye||z.statements!==We?Eo(j(ye,We),z):z}function md(z){let ye=ne(297);return ye.statements=ae(z),ye.transformFlags=ed(ye.statements),ye}function _B(z,ye){return z.statements!==ye?Eo(md(ye),z):z}function iv(z,ye){let We=ne(298);switch(We.token=z,We.types=ae(ye),We.transformFlags|=ed(We.types),z){case 96:We.transformFlags|=1024;break;case 119:We.transformFlags|=1;break;default:return Zo.assertNever(z)}return We}function ky(z,ye){return z.types!==ye?Eo(iv(z.token,ye),z):z}function wb(z,ye){let We=ne(299);return We.variableDeclaration=nS(z),We.block=ye,We.transformFlags|=$o(We.variableDeclaration)|$o(We.block)|(z?0:64),We.locals=void 0,We.nextContainer=void 0,We}function VD(z,ye,We){return z.variableDeclaration!==ye||z.block!==We?Eo(wb(ye,We),z):z}function yB(z,ye){let We=ce(303);return We.name=vI(z),We.initializer=n().parenthesizeExpressionForDisallowedComma(ye),We.transformFlags|=yP(We.name)|$o(We.initializer),We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function Tb(z,ye,We){return z.name!==ye||z.initializer!==We?TL(yB(ye,We),z):z}function TL(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function hF(z,ye){let We=ce(304);return We.name=vI(z),We.objectAssignmentInitializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),We.transformFlags|=HNe(We.name)|$o(We.objectAssignmentInitializer)|1024,We.equalsToken=void 0,We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function x(z,ye,We){return z.name!==ye||z.objectAssignmentInitializer!==We?L(hF(ye,We),z):z}function L(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken,z.equalsToken=ye.equalsToken),Eo(z,ye)}function te(z){let ye=ce(305);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|128|65536,ye.jsDoc=void 0,ye}function Re(z,ye){return z.expression!==ye?Eo(te(ye),z):z}function Ve(z,ye){let We=ce(306);return We.name=vI(z),We.initializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),We.transformFlags|=$o(We.name)|$o(We.initializer)|1,We.jsDoc=void 0,We}function It(z,ye,We){return z.name!==ye||z.initializer!==We?Eo(Ve(ye,We),z):z}function dr(z,ye,We){let _t=t.createBaseSourceFileNode(307);return _t.statements=ae(z),_t.endOfFileToken=ye,_t.flags|=We,_t.text="",_t.fileName="",_t.path="",_t.resolvedPath="",_t.originalFileName="",_t.languageVersion=1,_t.languageVariant=0,_t.scriptKind=0,_t.isDeclarationFile=!1,_t.hasNoDefaultLib=!1,_t.transformFlags|=ed(_t.statements)|$o(_t.endOfFileToken),_t.locals=void 0,_t.nextContainer=void 0,_t.endFlowNode=void 0,_t.nodeCount=0,_t.identifierCount=0,_t.symbolCount=0,_t.parseDiagnostics=void 0,_t.bindDiagnostics=void 0,_t.bindSuggestionDiagnostics=void 0,_t.lineMap=void 0,_t.externalModuleIndicator=void 0,_t.setExternalModuleIndicator=void 0,_t.pragmas=void 0,_t.checkJsDirective=void 0,_t.referencedFiles=void 0,_t.typeReferenceDirectives=void 0,_t.libReferenceDirectives=void 0,_t.amdDependencies=void 0,_t.commentDirectives=void 0,_t.identifiers=void 0,_t.packageJsonLocations=void 0,_t.packageJsonScope=void 0,_t.imports=void 0,_t.moduleAugmentations=void 0,_t.ambientModuleNames=void 0,_t.classifiableNames=void 0,_t.impliedNodeFormat=void 0,_t}function Ur(z){let ye=Object.create(z.redirectTarget);return Object.defineProperties(ye,{id:{get(){return this.redirectInfo.redirectTarget.id},set(We){this.redirectInfo.redirectTarget.id=We}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(We){this.redirectInfo.redirectTarget.symbol=We}}}),ye.redirectInfo=z,ye}function mi(z){let ye=Ur(z.redirectInfo);return ye.flags|=z.flags&-17,ye.fileName=z.fileName,ye.path=z.path,ye.resolvedPath=z.resolvedPath,ye.originalFileName=z.originalFileName,ye.packageJsonLocations=z.packageJsonLocations,ye.packageJsonScope=z.packageJsonScope,ye.emitNode=void 0,ye}function Vi(z){let ye=t.createBaseSourceFileNode(307);ye.flags|=z.flags&-17;for(let We in z)if(!(T6(ye,We)||!T6(z,We))){if(We==="emitNode"){ye.emitNode=void 0;continue}ye[We]=z[We]}return ye}function Ta(z){let ye=z.redirectInfo?mi(z):Vi(z);return r(ye,z),ye}function El(z,ye,We,_t,Rr,ai,Lo){let Hc=Ta(z);return Hc.statements=ae(ye),Hc.isDeclarationFile=We,Hc.referencedFiles=_t,Hc.typeReferenceDirectives=Rr,Hc.hasNoDefaultLib=ai,Hc.libReferenceDirectives=Lo,Hc.transformFlags=ed(Hc.statements)|$o(Hc.endOfFileToken),Hc}function Ho(z,ye,We=z.isDeclarationFile,_t=z.referencedFiles,Rr=z.typeReferenceDirectives,ai=z.hasNoDefaultLib,Lo=z.libReferenceDirectives){return z.statements!==ye||z.isDeclarationFile!==We||z.referencedFiles!==_t||z.typeReferenceDirectives!==Rr||z.hasNoDefaultLib!==ai||z.libReferenceDirectives!==Lo?Eo(El(z,ye,We,_t,Rr,ai,Lo),z):z}function Pg(z){let ye=ne(308);return ye.sourceFiles=z,ye.syntheticFileReferences=void 0,ye.syntheticTypeReferences=void 0,ye.syntheticLibReferences=void 0,ye.hasNoDefaultLib=void 0,ye}function lA(z,ye){return z.sourceFiles!==ye?Eo(Pg(ye),z):z}function ih(z,ye=!1,We){let _t=ne(237);return _t.type=z,_t.isSpread=ye,_t.tupleNameSource=We,_t}function xn(z){let ye=ne(352);return ye._children=z,ye}function rn(z){let ye=ne(353);return ye.original=z,nL(ye,z),ye}function Ci(z,ye){let We=ne(355);return We.expression=z,We.original=ye,We.transformFlags|=$o(We.expression)|1,nL(We,ye),We}function Wo(z,ye){return z.expression!==ye?Eo(Ci(ye,z.original),z):z}function ec(){return ne(354)}function Ra(z){if(MNe(z)&&!gEt(z)&&!z.original&&!z.emitNode&&!z.id){if(O$a(z))return z.elements;if(eDe(z)&&i$a(z.operatorToken))return[z.left,z.right]}return z}function dc(z){let ye=ne(356);return ye.elements=ae(Ija(z,Ra)),ye.transformFlags|=ed(ye.elements),ye}function hu(z,ye){return z.elements!==ye?Eo(dc(ye),z):z}function ml(z,ye){let We=ne(357);return We.expression=z,We.thisArg=ye,We.transformFlags|=$o(We.expression)|$o(We.thisArg),We}function wl(z,ye,We){return z.expression!==ye||z.thisArg!==We?Eo(ml(ye,We),z):z}function rI(z){let ye=ze(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function eS(z){let ye=ze(z.escapedText);ye.flags|=z.flags&-17,ye.jsDoc=z.jsDoc,ye.flowNode=z.flowNode,ye.symbol=z.symbol,ye.transformFlags=z.transformFlags,r(ye,z);let We=getIdentifierTypeArguments(z);return We&&setIdentifierTypeArguments(ye,We),ye}function vx(z){let ye=Sr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function tS(z){let ye=Sr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),ye}function sv(z){if(z===void 0)return z;if(K$a(z))return Ta(z);if(UNe(z))return rI(z);if(t_(z))return eS(z);if(Lvi(z))return vx(z);if(aCe(z))return tS(z);let ye=fDr(z.kind)?t.createBaseNode(z.kind):t.createBaseTokenNode(z.kind);ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z);for(let We in z)T6(ye,We)||!T6(z,We)||(ye[We]=z[We]);return ye}function Yu(z,ye,We){return XA(NC(void 0,void 0,void 0,void 0,ye?[ye]:[],void 0,tA(z,!0)),void 0,We?[We]:[])}function s3(z,ye,We){return XA(up(void 0,void 0,ye?[ye]:[],void 0,void 0,tA(z,!0)),void 0,We?[We]:[])}function bB(){return yI(ue("0"))}function Ew(z){return r2(void 0,!1,z)}function mF(z){return k_(void 0,!1,iy([Eb(!1,void 0,z)]))}function o3(z,ye){return ye==="null"?J.createStrictEquality(z,Ar()):ye==="undefined"?J.createStrictEquality(z,bB()):J.createStrictEquality(dm(z),Se(ye))}function fY(z,ye){return ye==="null"?J.createStrictInequality(z,Ar()):ye==="undefined"?J.createStrictInequality(z,bB()):J.createStrictInequality(dm(z),Se(ye))}function MT(z,ye,We){return Y2i(z)?Gm(Xl(z,void 0,ye),void 0,void 0,We):XA(Bo(z,ye),void 0,We)}function WD(z,ye,We){return MT(z,"bind",[ye,...We])}function CF(z,ye,We){return MT(z,"call",[ye,...We])}function RL(z,ye,We){return MT(z,"apply",[ye,We])}function hf(z,ye,We){return MT(Je(z),ye,We)}function OD(z,ye){return MT(z,"slice",ye===void 0?[]:[$d(ye)])}function mE(z,ye){return MT(z,"concat",ye)}function o2(z,ye,We){return hf("Object","defineProperty",[z,$d(ye),We])}function EB(z,ye){return hf("Object","getOwnPropertyDescriptor",[z,$d(ye)])}function Sd(z,ye,We){return hf("Reflect","get",We?[z,ye,We]:[z,ye])}function c1(z,ye,We,_t){return hf("Reflect","set",_t?[z,ye,We,_t]:[z,ye,We])}function qh(z,ye,We){return We?(z.push(yB(ye,We)),!0):!1}function Rb(z,ye){let We=[];qh(We,"enumerable",$d(z.enumerable)),qh(We,"configurable",$d(z.configurable));let _t=qh(We,"writable",$d(z.writable));_t=qh(We,"value",z.value)||_t;let Rr=qh(We,"get",z.get);return Rr=qh(We,"set",z.set)||Rr,Zo.assert(!(_t&&Rr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),On(We,!ye)}function Ku(z,ye){switch(z.kind){case 217:return KE(z,ye);case 216:return K_(z,z.type,ye);case 234:return kC(z,ye,z.type);case 238:return GC(z,ye,z.type);case 235:return j_(z,ye);case 233:return Cb(z,ye,z.typeArguments);case 355:return Wo(z,ye)}}function oy(z){return wDr(z)&&MNe(z)&&MNe(getSourceMapRange(z))&&MNe(getCommentRange(z))&&!gD(getSyntheticLeadingComments(z))&&!gD(getSyntheticTrailingComments(z))}function IY(z,ye,We=31){return z&&RBi(z,We)&&!oy(z)?Ku(z,IY(z.expression,ye)):ye}function hY(z,ye,We){if(!ye)return z;let _t=Jr(ye,ye.label,P$a(ye.statement)?hY(z,ye.statement):z);return We&&We(ye),_t}function tN(z,ye){let We=yDr(z);switch(We.kind){case 80:return ye;case 110:case 9:case 10:case 11:return!1;case 209:return We.elements.length!==0;case 210:return We.properties.length>0;default:return!0}}function mY(z,ye,We,_t=!1){let Rr=NDr(z,31),ai,Lo;return z2i(Rr)?(ai=cr(),Lo=Rr):SNr(Rr)?(ai=cr(),Lo=We!==void 0&&We<2?nL(Je("_super"),Rr):Rr):qNe(Rr)&8192?(ai=bB(),Lo=n().parenthesizeLeftSideOfAccess(Rr,!1)):Oce(Rr)?tN(Rr.expression,_t)?(ai=ft(ye),Lo=Bo(nL(J.createAssignment(ai,Rr.expression),Rr.expression),Rr.name),nL(Lo,Rr)):(ai=Rr.expression,Lo=Rr):MJe(Rr)?tN(Rr.expression,_t)?(ai=ft(ye),Lo=rf(nL(J.createAssignment(ai,Rr.expression),Rr.expression),Rr.argumentExpression),nL(Lo,Rr)):(ai=Rr.expression,Lo=Rr):(ai=bB(),Lo=n().parenthesizeLeftSideOfAccess(z,!1)),{target:Lo,thisArg:ai}}function rt(z,ye){return Bo(ey(On([li(void 0,"value",[no(void 0,void 0,z,void 0,void 0,void 0)],tA([cs(ye)]))])),"value")}function Jt(z){return z.length>10?dc(z):Bja(z,J.createComma)}function kr(z,ye,We,_t=0,Rr){let ai=Rr?z&&dDr(z):kvi(z);if(ai&&t_(ai)&&!UNe(ai)){let Lo=SDr(nL(sv(ai),ai),ai.parent);return _t|=qNe(ai),We||(_t|=96),ye||(_t|=3072),_t&&setEmitFlags(Lo,_t),Lo}return Er(z)}function Xr(z,ye,We){return kr(z,ye,We,98304)}function ui(z,ye,We,_t){return kr(z,ye,We,32768,_t)}function Is(z,ye,We){return kr(z,ye,We,16384)}function Hs(z,ye,We){return kr(z,ye,We)}function Rs(z,ye,We,_t){let Rr=Bo(z,MNe(ye)?ye:sv(ye));nL(Rr,ye);let ai=0;return _t||(ai|=96),We||(ai|=3072),ai&&setEmitFlags(Rr,ai),Rr}function ja(z,ye,We,_t){return z&&PJe(ye,32)?Rs(z,kr(ye),We,_t):Is(ye,We,_t)}function ho(z,ye,We,_t){let Rr=rd(z,ye,0,We);return Mg(z,ye,Rr,_t)}function nl(z){return yEt(z.expression)&&z.expression.text==="use strict"}function kd(){return hec(cs(Se("use strict")))}function rd(z,ye,We=0,_t){Zo.assert(ye.length===0,"Prologue directives should be at the first statement in the target statements array");let Rr=!1,ai=z.length;for(;WeHc&&hm.splice(Rr,0,...ye.slice(Hc,ld)),Hc>Lo&&hm.splice(_t,0,...ye.slice(Lo,Hc)),Lo>ai&&hm.splice(We,0,...ye.slice(ai,Lo)),ai>0)if(We===0)hm.splice(0,0,...ye.slice(0,ai));else{let ov=new Map;for(let av=0;av=0;av--){let Bx=ye[av];ov.has(Bx.expression.text)||hm.unshift(Bx)}}return Gce(z)?nL(ae(hm,z.hasTrailingComma),z):z}function CE(z,ye){let We;return typeof ye=="number"?We=zt(ye):We=ye,oBi(z)?xi(z,We,z.name,z.constraint,z.default):pEt(z)?ga(z,We,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):gBi(z)?Ko(z,We,z.typeParameters,z.parameters,z.type):c$a(z)?Sc(z,We,z.name,z.questionToken,z.type):fEt(z)?Ft(z,We,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):l$a(z)?Rn(z,We,z.name,z.questionToken,z.typeParameters,z.parameters,z.type):PNr(z)?Qi(z,We,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):aBi(z)?_g(z,We,z.parameters,z.body):MNr(z)?ma(z,We,z.name,z.parameters,z.type,z.body):IEt(z)?Ei(z,We,z.name,z.parameters,z.body):cBi(z)?Kl(z,We,z.parameters,z.type):pBi(z)?n_(z,We,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):fBi(z)?Xm(z,We,z.typeParameters,z.parameters,z.type,z.equalsGreaterThanToken,z.body):HNr(z)?Jm(z,We,z.name,z.typeParameters,z.heritageClauses,z.members):bEt(z)?pm(z,We,z.declarationList):mBi(z)?uB(z,We,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):hEt(z)?$E(z,We,z.name,z.typeParameters,z.heritageClauses,z.members):TDr(z)?FT(z,We,z.name,z.typeParameters,z.heritageClauses,z.members):CBi(z)?Ny(z,We,z.name,z.typeParameters,z.type):H$a(z)?rh(z,We,z.name,z.members):WJe(z)?td(z,We,z.name,z.body):_Bi(z)?$_(z,We,z.isTypeOnly,z.name,z.moduleReference):yBi(z)?gB(z,We,z.importClause,z.moduleSpecifier,z.attributes):bBi(z)?r1(z,We,z.expression):EBi(z)?n1(z,We,z.isTypeOnly,z.exportClause,z.moduleSpecifier,z.attributes):Zo.assertNever(z)}function rN(z,ye){return pEt(z)?ga(z,ye,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):fEt(z)?Ft(z,ye,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):PNr(z)?Qi(z,ye,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):MNr(z)?ma(z,ye,z.name,z.parameters,z.type,z.body):IEt(z)?Ei(z,ye,z.name,z.parameters,z.body):HNr(z)?Jm(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):hEt(z)?$E(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):Zo.assertNever(z)}function a3(z,ye){switch(z.kind){case 177:return ma(z,z.modifiers,ye,z.parameters,z.type,z.body);case 178:return Ei(z,z.modifiers,ye,z.parameters,z.body);case 174:return Qi(z,z.modifiers,z.asteriskToken,ye,z.questionToken,z.typeParameters,z.parameters,z.type,z.body);case 173:return Rn(z,z.modifiers,ye,z.questionToken,z.typeParameters,z.parameters,z.type);case 172:return Ft(z,z.modifiers,ye,z.questionToken??z.exclamationToken,z.type,z.initializer);case 171:return Sc(z,z.modifiers,ye,z.questionToken,z.type);case 303:return Tb(z,ye,z.initializer)}}function hA(z){return z?ae(z):void 0}function vI(z){return typeof z=="string"?Je(z):z}function $d(z){return typeof z=="string"?Se(z):typeof z=="number"?ue(z):typeof z=="boolean"?z?qr():yn():z}function RA(z){return z&&n().parenthesizeExpressionForDisallowedComma(z)}function nN(z){return typeof z=="number"?Xt(z):z}function ay(z){return z&&Q$a(z)?nL(r(fm(),z),z):z}function nS(z){return typeof z=="string"||z&&!hBi(z)?Df(z,void 0,void 0,void 0):z}function Eo(z,ye){return z!==ye&&(r(z,ye),nL(z,ye)),z}}function $bt(e){switch(e){case 344:return"type";case 342:return"returns";case 343:return"this";case 340:return"enum";case 330:return"author";case 332:return"class";case 333:return"public";case 334:return"private";case 335:return"protected";case 336:return"readonly";case 337:return"override";case 345:return"template";case 346:return"typedef";case 341:return"param";case 348:return"prop";case 338:return"callback";case 339:return"overload";case 328:return"augments";case 329:return"implements";case 351:return"import";default:return Zo.fail(`Unsupported kind: ${Zo.formatSyntaxKind(e)}`)}}var EV,nSi={};function Kqa(e,t){switch(EV||(EV=gDr(99,!1,0)),e){case 15:EV.setText("`"+t+"`");break;case 16:EV.setText("`"+t+"${");break;case 17:EV.setText("}"+t+"${");break;case 18:EV.setText("}"+t+"`");break}let r=EV.scan();if(r===20&&(r=EV.reScanTemplateToken(!1)),EV.isUnterminated())return EV.setText(void 0),nSi;let n;switch(r){case 15:case 16:case 17:case 18:n=EV.getTokenValue();break}return n===void 0||EV.scan()!==1?(EV.setText(void 0),nSi):(EV.setText(void 0),n)}function yP(e){return e&&t_(e)?HNe(e):$o(e)}function HNe(e){return $o(e)&-67108865}function jqa(e,t){return t|e.transformFlags&134234112}function $o(e){if(!e)return 0;let t=e.transformFlags&~zqa(e.kind);return N7a(e)&&Vvi(e.name)?jqa(e.name,t):t}function ed(e){return e?e.transformFlags:0}function iSi(e){let t=0;for(let r of e)t|=$o(r);e.transformFlags=t}function zqa(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169:return-2147483648;case 219:return-2072174592;case 218:case 262:return-1937940480;case 261:return-2146893824;case 263:case 231:return-2147344384;case 176:return-1937948672;case 172:return-2013249536;case 174:case 177:case 178:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 168:case 171:case 173:case 179:case 180:case 181:case 264:case 265:return-2;case 210:return-2147278848;case 299:return-2147418112;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 355:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var CJe=Xqa();function _Je(e){return e.flags|=16,e}var qqa={createBaseSourceFileNode:e=>_Je(CJe.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>_Je(CJe.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>_Je(CJe.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>_Je(CJe.createBaseTokenNode(e)),createBaseNode:e=>_Je(CJe.createBaseNode(e))},nwu=vDr(4,qqa);function $qa(e,t){if(e.original!==t&&(e.original=t,t)){let r=t.emitNode;r&&(e.emitNode=e$a(r,e.emitNode))}return e}function e$a(e,t){let{flags:r,internalFlags:n,leadingComments:a,trailingComments:o,commentRange:l,sourceMapRange:A,tokenSourceMapRanges:f,constantValue:I,helpers:C,startsOnNewLine:b,snippetElement:E,classThis:N,assignedName:B}=e;if(t||(t={}),r&&(t.flags=r),n&&(t.internalFlags=n&-9),a&&(t.leadingComments=BV(a.slice(),t.leadingComments)),o&&(t.trailingComments=BV(o.slice(),t.trailingComments)),l&&(t.commentRange=l),A&&(t.sourceMapRange=A),f&&(t.tokenSourceMapRanges=t$a(f,t.tokenSourceMapRanges)),I!==void 0&&(t.constantValue=I),C)for(let F of C)t.helpers=_ja(t.helpers,F);return b!==void 0&&(t.startsOnNewLine=b),E!==void 0&&(t.snippetElement=E),N&&(t.classThis=N),B&&(t.assignedName=B),t}function t$a(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}function tDe(e){return e.kind===9}function r$a(e){return e.kind===10}function yEt(e){return e.kind===11}function n$a(e){return e.kind===15}function i$a(e){return e.kind===28}function sSi(e){return e.kind===54}function oSi(e){return e.kind===58}function t_(e){return e.kind===80}function aCe(e){return e.kind===81}function s$a(e){return e.kind===95}function eEt(e){return e.kind===134}function SNr(e){return e.kind===108}function o$a(e){return e.kind===102}function a$a(e){return e.kind===166}function sBi(e){return e.kind===167}function oBi(e){return e.kind===168}function pEt(e){return e.kind===169}function BDr(e){return e.kind===170}function c$a(e){return e.kind===171}function fEt(e){return e.kind===172}function l$a(e){return e.kind===173}function PNr(e){return e.kind===174}function aBi(e){return e.kind===176}function MNr(e){return e.kind===177}function IEt(e){return e.kind===178}function u$a(e){return e.kind===179}function g$a(e){return e.kind===180}function cBi(e){return e.kind===181}function A$a(e){return e.kind===182}function lBi(e){return e.kind===183}function uBi(e){return e.kind===184}function gBi(e){return e.kind===185}function d$a(e){return e.kind===186}function p$a(e){return e.kind===187}function f$a(e){return e.kind===188}function I$a(e){return e.kind===189}function h$a(e){return e.kind===202}function m$a(e){return e.kind===190}function C$a(e){return e.kind===191}function _$a(e){return e.kind===192}function y$a(e){return e.kind===193}function b$a(e){return e.kind===194}function E$a(e){return e.kind===195}function S$a(e){return e.kind===196}function v$a(e){return e.kind===197}function B$a(e){return e.kind===198}function w$a(e){return e.kind===199}function T$a(e){return e.kind===200}function R$a(e){return e.kind===201}function N$a(e){return e.kind===205}function D$a(e){return e.kind===208}function k$a(e){return e.kind===209}function ABi(e){return e.kind===210}function Oce(e){return e.kind===211}function MJe(e){return e.kind===212}function dBi(e){return e.kind===213}function x$a(e){return e.kind===215}function wDr(e){return e.kind===217}function pBi(e){return e.kind===218}function fBi(e){return e.kind===219}function G$a(e){return e.kind===222}function F$a(e){return e.kind===224}function eDe(e){return e.kind===226}function Z$a(e){return e.kind===230}function HNr(e){return e.kind===231}function L$a(e){return e.kind===232}function V$a(e){return e.kind===233}function iEt(e){return e.kind===235}function W$a(e){return e.kind===236}function O$a(e){return e.kind===356}function bEt(e){return e.kind===243}function IBi(e){return e.kind===244}function P$a(e){return e.kind===256}function hBi(e){return e.kind===260}function M$a(e){return e.kind===261}function mBi(e){return e.kind===262}function hEt(e){return e.kind===263}function TDr(e){return e.kind===264}function CBi(e){return e.kind===265}function H$a(e){return e.kind===266}function WJe(e){return e.kind===267}function _Bi(e){return e.kind===271}function yBi(e){return e.kind===272}function bBi(e){return e.kind===277}function EBi(e){return e.kind===278}function Y$a(e){return e.kind===279}function Q$a(e){return e.kind===353}function SBi(e){return e.kind===283}function aSi(e){return e.kind===286}function X$a(e){return e.kind===289}function vBi(e){return e.kind===295}function J$a(e){return e.kind===297}function U$a(e){return e.kind===303}function K$a(e){return e.kind===307}function j$a(e){return e.kind===309}function z$a(e){return e.kind===314}function q$a(e){return e.kind===317}function BBi(e){return e.kind===320}function $$a(e){return e.kind===322}function wBi(e){return e.kind===323}function eec(e){return e.kind===328}function tec(e){return e.kind===333}function rec(e){return e.kind===334}function nec(e){return e.kind===335}function iec(e){return e.kind===336}function sec(e){return e.kind===337}function oec(e){return e.kind===339}function aec(e){return e.kind===331}function cSi(e){return e.kind===341}function cec(e){return e.kind===342}function RDr(e){return e.kind===344}function lec(e){return e.kind===345}function uec(e){return e.kind===329}function gec(e){return e.kind===350}var iCe=new WeakMap;function TBi(e,t){var r;let n=e.kind;return fDr(n)?n===352?e._children:(r=iCe.get(t))==null?void 0:r.get(e):Z2}function Aec(e,t,r){e.kind===352&&Zo.fail("Should not need to re-set the children of a SyntaxList.");let n=iCe.get(t);return n===void 0&&(n=new WeakMap,iCe.set(t,n)),n.set(e,r),r}function lSi(e,t){var r;e.kind===352&&Zo.fail("Did not expect to unset the children of a SyntaxList."),(r=iCe.get(t))==null||r.delete(e)}function dec(e,t){let r=iCe.get(e);r!==void 0&&(iCe.delete(e),iCe.set(t,r))}function uSi(e){return(qNe(e)&32768)!==0}function pec(e){return yEt(e.expression)&&e.expression.text==="use strict"}function fec(e){for(let t of e)if(nEt(t)){if(pec(t))return t}else break}function Iec(e){return wDr(e)&&cCe(e)&&!!X7a(e)}function RBi(e,t=31){switch(e.kind){case 217:return t&-2147483648&&Iec(e)?!1:(t&1)!==0;case 216:case 234:case 238:return(t&2)!==0;case 233:return(t&16)!==0;case 235:return(t&4)!==0;case 355:return(t&8)!==0}return!1}function NDr(e,t=31){for(;RBi(e,t);)e=e.expression;return e}function hec(e){return setStartsOnNewLine(e,!0)}function RJe(e){if(uza(e))return e.name;if(oza(e)){switch(e.kind){case 303:return RJe(e.initializer);case 304:return e.name;case 305:return RJe(e.expression)}return}return dEt(e,!0)?RJe(e.left):Z$a(e)?RJe(e.expression):e}function mec(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function gSi(e){if(e){let t=e;for(;;){if(t_(t)||!t.body)return t_(t)?t:t.name;t=t.body}}}var ASi;(e=>{function t(C,b,E,N,B,F,Q){let J=b>0?B[b-1]:void 0;return Zo.assertEqual(E[b],t),B[b]=C.onEnter(N[b],J,Q),E[b]=A(C,t),b}e.enter=t;function r(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],r),Zo.assertIsDefined(C.onLeft),E[b]=A(C,r);let J=C.onLeft(N[b].left,B[b],N[b]);return J?(I(b,N,J),f(b,E,N,B,J)):b}e.left=r;function n(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],n),Zo.assertIsDefined(C.onOperator),E[b]=A(C,n),C.onOperator(N[b].operatorToken,B[b],N[b]),b}e.operator=n;function a(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],a),Zo.assertIsDefined(C.onRight),E[b]=A(C,a);let J=C.onRight(N[b].right,B[b],N[b]);return J?(I(b,N,J),f(b,E,N,B,J)):b}e.right=a;function o(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],o),E[b]=A(C,o);let J=C.onExit(N[b],B[b]);if(b>0){if(b--,C.foldState){let ae=E[b]===o?"right":"left";B[b]=C.foldState(B[b],J,ae)}}else F.value=J;return b}e.exit=o;function l(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],l),b}e.done=l;function A(C,b){switch(b){case t:if(C.onLeft)return r;case r:if(C.onOperator)return n;case n:if(C.onRight)return a;case a:return o;case o:return l;case l:return l;default:Zo.fail("Invalid state")}}e.nextState=A;function f(C,b,E,N,B){return C++,b[C]=t,E[C]=B,N[C]=void 0,C}function I(C,b,E){if(Zo.shouldAssert(2))for(;C>=0;)Zo.assert(b[C]!==E,"Circular traversal detected."),C--}})(ASi||(ASi={}));function dSi(e,t){return typeof e=="object"?YNr(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function Cec(e,t){return typeof e=="string"?e:_ec(e,Zo.checkDefined(t))}function _ec(e,t){return Lvi(e)?t(e).slice(1):UNe(e)?t(e):aCe(e)?e.escapedText.slice(1):wV(e)}function YNr(e,t,r,n,a){return t=dSi(t,a),n=dSi(n,a),r=Cec(r,a),`${e?"#":""}${t}${r}${n}`}function NBi(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of mec(e)){let r=RJe(t);if(r&&lza(r)&&(r.transformFlags&65536||r.transformFlags&128&&NBi(r)))return!0}return!1}function nL(e,t){return t?Lce(e,t.pos,t.end):e}function DDr(e){let t=e.kind;return t===168||t===169||t===171||t===172||t===173||t===174||t===176||t===177||t===178||t===181||t===185||t===218||t===219||t===231||t===243||t===262||t===263||t===264||t===265||t===266||t===267||t===271||t===272||t===277||t===278}function yec(e){let t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var pSi,fSi,ISi,hSi,mSi,bec={createBaseSourceFileNode:e=>new(mSi||(mSi=F2.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(ISi||(ISi=F2.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(hSi||(hSi=F2.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(fSi||(fSi=F2.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(pSi||(pSi=F2.getNodeConstructor()))(e,-1,-1)},iwu=vDr(1,bec);function wi(e,t){return t&&e(t)}function sl(e,t,r){if(r){if(t)return t(r);for(let n of r){let a=e(n);if(a)return a}}}function Eec(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function Sec(e){return SP(e.statements,vec)||Bec(e)}function vec(e){return DDr(e)&&wec(e,95)||_Bi(e)&&SBi(e.moduleReference)||yBi(e)||bBi(e)||EBi(e)?e:void 0}function Bec(e){return e.flags&8388608?DBi(e):void 0}function DBi(e){return Tec(e)?e:Xk(e,DBi)}function wec(e,t){return gD(e.modifiers,r=>r.kind===t)}function Tec(e){return W$a(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}var Rec={166:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},168:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.constraint)||wi(t,e.default)||wi(t,e.expression)},304:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.equalsToken)||wi(t,e.objectAssignmentInitializer)},305:function(e,t,r){return wi(t,e.expression)},169:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},172:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},171:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},303:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.initializer)},260:function(e,t,r){return wi(t,e.name)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},208:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.propertyName)||wi(t,e.name)||wi(t,e.initializer)},181:function(e,t,r){return sl(t,r,e.modifiers)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)},185:function(e,t,r){return sl(t,r,e.modifiers)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)},184:function(e,t,r){return sl(t,r,e.modifiers)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)},179:CSi,180:CSi,174:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},173:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)},176:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},177:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},178:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},262:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},218:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},219:function(e,t,r){return sl(t,r,e.modifiers)||sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)||wi(t,e.equalsGreaterThanToken)||wi(t,e.body)},175:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.body)},183:function(e,t,r){return wi(t,e.typeName)||sl(t,r,e.typeArguments)},182:function(e,t,r){return wi(t,e.assertsModifier)||wi(t,e.parameterName)||wi(t,e.type)},186:function(e,t,r){return wi(t,e.exprName)||sl(t,r,e.typeArguments)},187:function(e,t,r){return sl(t,r,e.members)},188:function(e,t,r){return wi(t,e.elementType)},189:function(e,t,r){return sl(t,r,e.elements)},192:_Si,193:_Si,194:function(e,t,r){return wi(t,e.checkType)||wi(t,e.extendsType)||wi(t,e.trueType)||wi(t,e.falseType)},195:function(e,t,r){return wi(t,e.typeParameter)},205:function(e,t,r){return wi(t,e.argument)||wi(t,e.attributes)||wi(t,e.qualifier)||sl(t,r,e.typeArguments)},302:function(e,t,r){return wi(t,e.assertClause)},196:ySi,198:ySi,199:function(e,t,r){return wi(t,e.objectType)||wi(t,e.indexType)},200:function(e,t,r){return wi(t,e.readonlyToken)||wi(t,e.typeParameter)||wi(t,e.nameType)||wi(t,e.questionToken)||wi(t,e.type)||sl(t,r,e.members)},201:function(e,t,r){return wi(t,e.literal)},202:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)},206:bSi,207:bSi,209:function(e,t,r){return sl(t,r,e.elements)},210:function(e,t,r){return sl(t,r,e.properties)},211:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.name)},212:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.argumentExpression)},213:ESi,214:ESi,215:function(e,t,r){return wi(t,e.tag)||wi(t,e.questionDotToken)||sl(t,r,e.typeArguments)||wi(t,e.template)},216:function(e,t,r){return wi(t,e.type)||wi(t,e.expression)},217:function(e,t,r){return wi(t,e.expression)},220:function(e,t,r){return wi(t,e.expression)},221:function(e,t,r){return wi(t,e.expression)},222:function(e,t,r){return wi(t,e.expression)},224:function(e,t,r){return wi(t,e.operand)},229:function(e,t,r){return wi(t,e.asteriskToken)||wi(t,e.expression)},223:function(e,t,r){return wi(t,e.expression)},225:function(e,t,r){return wi(t,e.operand)},226:function(e,t,r){return wi(t,e.left)||wi(t,e.operatorToken)||wi(t,e.right)},234:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},235:function(e,t,r){return wi(t,e.expression)},238:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},236:function(e,t,r){return wi(t,e.name)},227:function(e,t,r){return wi(t,e.condition)||wi(t,e.questionToken)||wi(t,e.whenTrue)||wi(t,e.colonToken)||wi(t,e.whenFalse)},230:function(e,t,r){return wi(t,e.expression)},241:SSi,268:SSi,307:function(e,t,r){return sl(t,r,e.statements)||wi(t,e.endOfFileToken)},243:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.declarationList)},261:function(e,t,r){return sl(t,r,e.declarations)},244:function(e,t,r){return wi(t,e.expression)},245:function(e,t,r){return wi(t,e.expression)||wi(t,e.thenStatement)||wi(t,e.elseStatement)},246:function(e,t,r){return wi(t,e.statement)||wi(t,e.expression)},247:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},248:function(e,t,r){return wi(t,e.initializer)||wi(t,e.condition)||wi(t,e.incrementor)||wi(t,e.statement)},249:function(e,t,r){return wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},250:function(e,t,r){return wi(t,e.awaitModifier)||wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},251:vSi,252:vSi,253:function(e,t,r){return wi(t,e.expression)},254:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},255:function(e,t,r){return wi(t,e.expression)||wi(t,e.caseBlock)},269:function(e,t,r){return sl(t,r,e.clauses)},296:function(e,t,r){return wi(t,e.expression)||sl(t,r,e.statements)},297:function(e,t,r){return sl(t,r,e.statements)},256:function(e,t,r){return wi(t,e.label)||wi(t,e.statement)},257:function(e,t,r){return wi(t,e.expression)},258:function(e,t,r){return wi(t,e.tryBlock)||wi(t,e.catchClause)||wi(t,e.finallyBlock)},299:function(e,t,r){return wi(t,e.variableDeclaration)||wi(t,e.block)},170:function(e,t,r){return wi(t,e.expression)},263:BSi,231:BSi,264:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||sl(t,r,e.typeParameters)||sl(t,r,e.heritageClauses)||sl(t,r,e.members)},265:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||sl(t,r,e.typeParameters)||wi(t,e.type)},266:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||sl(t,r,e.members)},306:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},267:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.body)},271:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.moduleReference)},272:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},273:function(e,t,r){return wi(t,e.name)||wi(t,e.namedBindings)},300:function(e,t,r){return sl(t,r,e.elements)},301:function(e,t,r){return wi(t,e.name)||wi(t,e.value)},270:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)},274:function(e,t,r){return wi(t,e.name)},280:function(e,t,r){return wi(t,e.name)},275:wSi,279:wSi,278:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.exportClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},276:TSi,281:TSi,277:function(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.expression)},228:function(e,t,r){return wi(t,e.head)||sl(t,r,e.templateSpans)},239:function(e,t,r){return wi(t,e.expression)||wi(t,e.literal)},203:function(e,t,r){return wi(t,e.head)||sl(t,r,e.templateSpans)},204:function(e,t,r){return wi(t,e.type)||wi(t,e.literal)},167:function(e,t,r){return wi(t,e.expression)},298:function(e,t,r){return sl(t,r,e.types)},233:function(e,t,r){return wi(t,e.expression)||sl(t,r,e.typeArguments)},283:function(e,t,r){return wi(t,e.expression)},282:function(e,t,r){return sl(t,r,e.modifiers)},356:function(e,t,r){return sl(t,r,e.elements)},284:function(e,t,r){return wi(t,e.openingElement)||sl(t,r,e.children)||wi(t,e.closingElement)},288:function(e,t,r){return wi(t,e.openingFragment)||sl(t,r,e.children)||wi(t,e.closingFragment)},285:RSi,286:RSi,292:function(e,t,r){return sl(t,r,e.properties)},291:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},293:function(e,t,r){return wi(t,e.expression)},294:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.expression)},287:function(e,t,r){return wi(t,e.tagName)},295:function(e,t,r){return wi(t,e.namespace)||wi(t,e.name)},190:Ume,191:Ume,309:Ume,315:Ume,314:Ume,316:Ume,318:Ume,317:function(e,t,r){return sl(t,r,e.parameters)||wi(t,e.type)},320:function(e,t,r){return(typeof e.comment=="string"?void 0:sl(t,r,e.comment))||sl(t,r,e.tags)},347:function(e,t,r){return wi(t,e.tagName)||wi(t,e.name)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))},310:function(e,t,r){return wi(t,e.name)},311:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},341:NSi,348:NSi,330:function(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))},329:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))},328:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))},345:function(e,t,r){return wi(t,e.tagName)||wi(t,e.constraint)||sl(t,r,e.typeParameters)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))},346:function(e,t,r){return wi(t,e.tagName)||(e.typeExpression&&e.typeExpression.kind===309?wi(t,e.typeExpression)||wi(t,e.fullName)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment)):wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment)))},338:function(e,t,r){return wi(t,e.tagName)||wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))},342:Kme,344:Kme,343:Kme,340:Kme,350:Kme,349:Kme,339:Kme,323:function(e,t,r){return SP(e.typeParameters,t)||SP(e.parameters,t)||wi(t,e.type)},324:vNr,325:vNr,326:vNr,322:function(e,t,r){return SP(e.jsDocPropertyTags,t)},327:Nce,332:Nce,333:Nce,334:Nce,335:Nce,336:Nce,331:Nce,337:Nce,351:Nec,355:Dec};function CSi(e,t,r){return sl(t,r,e.typeParameters)||sl(t,r,e.parameters)||wi(t,e.type)}function _Si(e,t,r){return sl(t,r,e.types)}function ySi(e,t,r){return wi(t,e.type)}function bSi(e,t,r){return sl(t,r,e.elements)}function ESi(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||sl(t,r,e.typeArguments)||sl(t,r,e.arguments)}function SSi(e,t,r){return sl(t,r,e.statements)}function vSi(e,t,r){return wi(t,e.label)}function BSi(e,t,r){return sl(t,r,e.modifiers)||wi(t,e.name)||sl(t,r,e.typeParameters)||sl(t,r,e.heritageClauses)||sl(t,r,e.members)}function wSi(e,t,r){return sl(t,r,e.elements)}function TSi(e,t,r){return wi(t,e.propertyName)||wi(t,e.name)}function RSi(e,t,r){return wi(t,e.tagName)||sl(t,r,e.typeArguments)||wi(t,e.attributes)}function Ume(e,t,r){return wi(t,e.type)}function NSi(e,t,r){return wi(t,e.tagName)||(e.isNameFirst?wi(t,e.name)||wi(t,e.typeExpression):wi(t,e.typeExpression)||wi(t,e.name))||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))}function Kme(e,t,r){return wi(t,e.tagName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))}function vNr(e,t,r){return wi(t,e.name)}function Nce(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))}function Nec(e,t,r){return wi(t,e.tagName)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)||(typeof e.comment=="string"?void 0:sl(t,r,e.comment))}function Dec(e,t,r){return wi(t,e.expression)}function Xk(e,t,r){if(e===void 0||e.kind<=165)return;let n=Rec[e.kind];return n===void 0?void 0:n(e,t,r)}function DSi(e,t,r){let n=kSi(e),a=[];for(;a.length=0;--A)n.push(o[A]),a.push(l)}else{let A=t(o,l);if(A){if(A==="skip")continue;return A}if(o.kind>=166)for(let f of kSi(o))n.push(f),a.push(o)}}}function kSi(e){let t=[];return Xk(e,r,r),t;function r(n){t.unshift(n)}}function kBi(e){e.externalModuleIndicator=Sec(e)}function kec(e,t,r,n=!1,a){var o,l;(o=tEt)==null||o.push(tEt.Phase.Parse,"createSourceFile",{path:e},!0),G2i("beforeParse");let A,{languageVersion:f,setExternalModuleIndicator:I,impliedNodeFormat:C,jsDocParsingMode:b}=typeof r=="object"?r:{languageVersion:r};if(f===100)A=sCe.parseSourceFile(e,t,f,void 0,n,6,$Ne,b);else{let E=C===void 0?I:N=>(N.impliedNodeFormat=C,(I||kBi)(N));A=sCe.parseSourceFile(e,t,f,void 0,n,a,E,b)}return G2i("afterParse"),Pja("Parse","beforeParse","afterParse"),(l=tEt)==null||l.pop(),A}function xec(e){return e.externalModuleIndicator!==void 0}function Gec(e,t,r,n=!1){let a=mEt.updateSourceFile(e,t,r,n);return a.flags|=e.flags&12582912,a}var sCe;(e=>{var t=gDr(99,!0),r=40960,n,a,o,l,A;function f(rt){return yn++,rt}var I={createBaseSourceFileNode:rt=>f(new A(rt,0,0)),createBaseIdentifierNode:rt=>f(new o(rt,0,0)),createBasePrivateIdentifierNode:rt=>f(new l(rt,0,0)),createBaseTokenNode:rt=>f(new a(rt,0,0)),createBaseNode:rt=>f(new n(rt,0,0))},C=vDr(11,I),{createNodeArray:b,createNumericLiteral:E,createStringLiteral:N,createLiteralLikeNode:B,createIdentifier:F,createPrivateIdentifier:Q,createToken:J,createArrayLiteralExpression:ae,createObjectLiteralExpression:ne,createPropertyAccessExpression:ce,createPropertyAccessChain:fe,createElementAccessExpression:ue,createElementAccessChain:de,createCallExpression:be,createCallChain:Se,createNewExpression:De,createParenthesizedExpression:k,createBlock:tt,createVariableStatement:ze,createExpressionStatement:Le,createIfStatement:Je,createWhileStatement:ft,createForStatement:lt,createForOfStatement:Ot,createVariableDeclaration:Er,createVariableDeclarationList:Sr}=C,jt,Bt,Dt,Fr,$t,Xt,lr,cr,Ar,qr,yn,ke,zt,Fn,Nn,Hi,Ao=!0,Vr=!1;function xi(rt,Jt,kr,Xr,ui=!1,Is,Hs,Rs=0){var ja;if(Is=xqa(rt,Is),Is===6){let nl=ga(rt,Jt,kr,Xr,ui);return convertToJson(nl,(ja=nl.statements[0])==null?void 0:ja.expression,nl.parseDiagnostics,!1,void 0),nl.referencedFiles=Z2,nl.typeReferenceDirectives=Z2,nl.libReferenceDirectives=Z2,nl.amdDependencies=Z2,nl.hasNoDefaultLib=!1,nl.pragmas=dja,nl}Ya(rt,Jt,kr,Xr,Is,Rs);let ho=ol(kr,ui,Is,Hs||kBi,Rs);return Gc(),ho}e.parseSourceFile=xi;function no(rt,Jt){Ya("",rt,Jt,void 0,1,0),Vs();let kr=se(!0),Xr=Pt()===1&&!lr.length;return Gc(),Xr?kr:void 0}e.parseIsolatedEntityName=no;function ga(rt,Jt,kr=2,Xr,ui=!1){Ya(rt,Jt,kr,Xr,6,0),Bt=Hi,Vs();let Is=Ri(),Hs,Rs;if(Pt()===1)Hs=vr([],Is,Is),Rs=VA();else{let nl;for(;Pt()!==1;){let Mg;switch(Pt()){case 23:Mg=cg();break;case 112:case 97:case 106:Mg=VA();break;case 41:so(()=>Vs()===9&&Vs()!==59)?Mg=ry():Mg=o1();break;case 9:case 11:if(so(()=>Vs()!==59)){Mg=ra();break}default:Mg=o1();break}nl&&Mee(nl)?nl.push(Mg):nl?nl=[nl,Mg]:(nl=Mg,Pt()!==1&&Da(ts.Unexpected_token))}let kd=Mee(nl)?Zt(ae(nl),Is):Zo.checkDefined(nl),rd=Le(kd);Zt(rd,Is),Hs=vr([rd],Is),Rs=rl(1,ts.Unexpected_token)}let ja=zr(rt,2,6,!1,Hs,Rs,Bt,$Ne);ui&&Ft(ja),ja.nodeCount=yn,ja.identifierCount=zt,ja.identifiers=ke,ja.parseDiagnostics=Jme(lr,ja),cr&&(ja.jsDocDiagnostics=Jme(cr,ja));let ho=ja;return Gc(),ho}e.parseJsonText=ga;function Ya(rt,Jt,kr,Xr,ui,Is){switch(n=F2.getNodeConstructor(),a=F2.getTokenConstructor(),o=F2.getIdentifierConstructor(),l=F2.getPrivateIdentifierConstructor(),A=F2.getSourceFileConstructor(),jt=e7a(rt),Dt=Jt,Fr=kr,Ar=Xr,$t=ui,Xt=eSi(ui),lr=[],Fn=0,ke=new Map,zt=0,yn=0,Bt=0,Ao=!0,$t){case 1:case 2:Hi=524288;break;case 6:Hi=134742016;break;default:Hi=0;break}Vr=!1,t.setText(Dt),t.setOnError(Kh),t.setScriptTarget(Fr),t.setLanguageVariant(Xt),t.setScriptKind($t),t.setJSDocParsingMode(Is)}function Gc(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),Dt=void 0,Fr=void 0,Ar=void 0,$t=void 0,Xt=void 0,Bt=0,lr=void 0,cr=void 0,Fn=0,ke=void 0,Nn=void 0,Ao=!0}function ol(rt,Jt,kr,Xr,ui){let Is=Lec(jt);Is&&(Hi|=33554432),Bt=Hi,Vs();let Hs=qd(0,Im);Zo.assert(Pt()===1);let Rs=Do(),ja=Hr(VA(),Rs),ho=zr(jt,rt,kr,Is,Hs,ja,Bt,Xr);return Oec(ho,Dt),Pec(ho,nl),ho.commentDirectives=t.getCommentDirectives(),ho.nodeCount=yn,ho.identifierCount=zt,ho.identifiers=ke,ho.parseDiagnostics=Jme(lr,ho),ho.jsDocParsingMode=ui,cr&&(ho.jsDocDiagnostics=Jme(cr,ho)),Jt&&Ft(ho),ho;function nl(kd,rd,Mg){lr.push(LNe(jt,Dt,kd,rd,Mg))}}let Sc=!1;function Hr(rt,Jt){if(!Jt)return rt;Zo.assert(!rt.jsDoc);let kr=hja(Rza(rt,Dt),Xr=>mY.parseJSDocComment(rt,Xr.pos,Xr.end-Xr.pos));return kr.length&&(rt.jsDoc=kr),Sc&&(Sc=!1,rt.flags|=536870912),rt}function Or(rt){let Jt=Ar,kr=mEt.createSyntaxCursor(rt);Ar={currentNode:nl};let Xr=[],ui=lr;lr=[];let Is=0,Hs=ja(rt.statements,0);for(;Hs!==-1;){let kd=rt.statements[Is],rd=rt.statements[Hs];BV(Xr,rt.statements,Is,Hs),Is=ho(rt.statements,Hs);let Mg=fNr(ui,l1=>l1.start>=kd.pos),Gh=Mg>=0?fNr(ui,l1=>l1.start>=rd.pos,Mg):-1;Mg>=0&&BV(lr,ui,Mg,Gh>=0?Gh:void 0),aA(()=>{let l1=Hi;for(Hi|=65536,t.resetTokenState(rd.pos),Vs();Pt()!==1;){let Nb=t.getTokenFullStart(),rS=hh(0,Im);if(Xr.push(rS),Nb===t.getTokenFullStart()&&Vs(),Is>=0){let CE=rt.statements[Is];if(rS.end===CE.pos)break;rS.end>CE.pos&&(Is=ho(rt.statements,Is+1))}}Hi=l1},2),Hs=Is>=0?ja(rt.statements,Is):-1}if(Is>=0){let kd=rt.statements[Is];BV(Xr,rt.statements,Is);let rd=fNr(ui,Mg=>Mg.start>=kd.pos);rd>=0&&BV(lr,ui,rd)}return Ar=Jt,C.updateSourceFile(rt,nL(b(Xr),rt.statements));function Rs(kd){return!(kd.flags&65536)&&!!(kd.transformFlags&67108864)}function ja(kd,rd){for(let Mg=rd;Mg118}function Xs(){return Pt()===80?!0:Pt()===127&&Ql()||Pt()===135&&Ju()?!1:Pt()>118}function ws(rt,Jt,kr=!0){return Pt()===rt?(kr&&Vs(),!0):(Jt?Da(Jt):Da(ts._0_expected,Sy(rt)),!1)}let Gs=Object.keys(cDr).filter(rt=>rt.length>2);function Ma(rt){if(x$a(rt)){yg(B6(Dt,rt.template.pos),rt.template.end,ts.Module_declaration_names_may_only_use_or_quoted_strings);return}let Jt=t_(rt)?wV(rt):void 0;if(!Jt||!b7a(Jt,Fr)){Da(ts._0_expected,Sy(27));return}let kr=B6(Dt,rt.pos);switch(Jt){case"const":case"let":case"var":yg(kr,rt.end,ts.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Dc(ts.Interface_name_cannot_be_0,ts.Interface_must_be_given_a_name,19);return;case"is":yg(kr,t.getTokenStart(),ts.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Dc(ts.Namespace_name_cannot_be_0,ts.Namespace_must_be_given_a_name,19);return;case"type":Dc(ts.Type_alias_name_cannot_be_0,ts.Type_alias_must_be_given_a_name,64);return}let Xr=vJe(Jt,Gs,PE)??As(Jt);if(Xr){yg(kr,rt.end,ts.Unknown_keyword_or_identifier_Did_you_mean_0,Xr);return}Pt()!==0&&yg(kr,rt.end,ts.Unexpected_keyword_or_identifier)}function Dc(rt,Jt,kr){Pt()===kr?Da(Jt):Da(rt,t.getTokenValue())}function As(rt){for(let Jt of Gs)if(rt.length>Jt.length+2&&aEt(rt,Jt))return`${Jt} ${rt.slice(Jt.length)}`}function Nf(rt,Jt,kr){if(Pt()===60&&!t.hasPrecedingLineBreak()){Da(ts.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Pt()===21){Da(ts.Cannot_start_a_function_call_in_a_type_annotation),Vs();return}if(Jt&&!bg()){kr?Da(ts._0_expected,Sy(27)):Da(ts.Expected_for_property_initializer);return}if(!Yp()){if(kr){Da(ts._0_expected,Sy(27));return}Ma(rt)}}function Am(rt){return Pt()===rt?(Uu(),!0):(Zo.assert(CNr(rt)),Da(ts._0_expected,Sy(rt)),!1)}function Zl(rt,Jt,kr,Xr){if(Pt()===Jt){Vs();return}let ui=Da(ts._0_expected,Sy(Jt));kr&&ui&&zbt(ui,LNe(jt,Dt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Sy(rt),Sy(Jt)))}function rc(rt){return Pt()===rt?(Vs(),!0):!1}function ad(rt){if(Pt()===rt)return VA()}function Qm(rt){if(Pt()===rt)return bl()}function rl(rt,Jt,kr){return ad(rt)||bn(rt,!1,Jt||ts._0_expected,kr||Sy(rt))}function LA(rt){return Qm(rt)||(Zo.assert(CNr(rt)),bn(rt,!1,ts._0_expected,Sy(rt)))}function VA(){let rt=Ri(),Jt=Pt();return Vs(),Zt(J(Jt),rt)}function bl(){let rt=Ri(),Jt=Pt();return Uu(),Zt(J(Jt),rt)}function bg(){return Pt()===27?!0:Pt()===20||Pt()===1||t.hasPrecedingLineBreak()}function Yp(){return bg()?(Pt()===27&&Vs(),!0):!1}function YA(){return Yp()||ws(27)}function vr(rt,Jt,kr,Xr){let ui=b(rt,Xr);return Lce(ui,Jt,kr??t.getTokenFullStart()),ui}function Zt(rt,Jt,kr){return Lce(rt,Jt,kr??t.getTokenFullStart()),Hi&&(rt.flags|=Hi),Vr&&(Vr=!1,rt.flags|=262144),rt}function bn(rt,Jt,kr,...Xr){Jt?fu(t.getTokenFullStart(),0,kr,...Xr):kr&&Da(kr,...Xr);let ui=Ri(),Is=rt===80?F("",void 0):Q2i(rt)?C.createTemplateLiteralLikeNode(rt,"","",void 0):rt===9?E("",void 0):rt===11?N("",void 0):rt===282?C.createMissingDeclaration():J(rt);return Zt(Is,ui)}function ls(rt){let Jt=ke.get(rt);return Jt===void 0&&ke.set(rt,Jt=rt),Jt}function oa(rt,Jt,kr){if(rt){zt++;let Rs=t.hasPrecedingJSDocLeadingAsterisks()?t.getTokenStart():Ri(),ja=Pt(),ho=ls(t.getTokenValue()),nl=t.hasExtendedUnicodeEscape();return Hu(),Zt(F(ho,ja,nl),Rs)}if(Pt()===81)return Da(kr||ts.Private_identifiers_are_not_allowed_outside_class_bodies),oa(!0);if(Pt()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return oa(!0);zt++;let Xr=Pt()===1,ui=t.isReservedWord(),Is=t.getTokenText(),Hs=ui?ts.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ts.Identifier_expected;return bn(80,Xr,Jt||Hs,Is)}function Fs(rt){return oa(cc(),void 0,rt)}function Oa(rt,Jt){return oa(Xs(),rt,Jt)}function Ca(rt){return oa(X1(Pt()),rt)}function gd(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&Da(ts.Unicode_escape_sequence_cannot_appear_here),oa(X1(Pt()))}function Dp(){return X1(Pt())||Pt()===11||Pt()===9||Pt()===10}function sp(){return X1(Pt())||Pt()===11}function QA(rt){if(Pt()===11||Pt()===9||Pt()===10){let Jt=ra();return Jt.text=ls(Jt.text),Jt}return rt&&Pt()===23?Zs():Pt()===81?io():Ca()}function ff(){return QA(!0)}function Zs(){let rt=Ri();ws(23);let Jt=gc(td);return ws(24),Zt(C.createComputedPropertyName(Jt),rt)}function io(){let rt=Ri(),Jt=Q(ls(t.getTokenValue()));return Vs(),Zt(Jt,rt)}function Ea(rt){return Pt()===rt&&Ki(Dr)}function Hl(){return Vs(),t.hasPrecedingLineBreak()?!1:Bo()}function Dr(){switch(Pt()){case 87:return Vs()===94;case 95:return Vs(),Pt()===90?so(Xl):Pt()===156?so(di):On();case 90:return Xl();case 126:return Vs(),Bo();case 139:case 153:return Vs(),us();default:return Hl()}}function On(){return Pt()===60||Pt()!==42&&Pt()!==130&&Pt()!==19&&Bo()}function di(){return Vs(),On()}function aa(){return Wee(Pt())&&Ki(Dr)}function Bo(){return Pt()===23||Pt()===19||Pt()===42||Pt()===26||Dp()}function us(){return Pt()===23||Dp()}function Xl(){return Vs(),Pt()===86||Pt()===100||Pt()===120||Pt()===60||Pt()===128&&so(xp)||Pt()===134&&so(i2)}function WA(rt,Jt){if(Qp(rt))return!0;switch(rt){case 0:case 1:case 3:return!(Pt()===27&&Jt)&&Xc();case 2:return Pt()===84||Pt()===90;case 4:return so(fm);case 5:return so(TL)||Pt()===27&&!Jt;case 6:return Pt()===23||Dp();case 12:switch(Pt()){case 23:case 42:case 26:case 25:return!0;default:return Dp()}case 18:return Dp();case 9:return Pt()===23||Pt()===26||Dp();case 24:return sp();case 7:return Pt()===19?so(If):Jt?Xs()&&!$1():qS()&&!$1();case 8:return a1();case 10:return Pt()===28||Pt()===26||a1();case 19:return Pt()===103||Pt()===87||Xs();case 15:switch(Pt()){case 28:case 25:return!0}case 11:return Pt()===26||rh();case 16:return kC(!1);case 17:return kC(!0);case 20:case 21:return Pt()===28||gt();case 22:return rn();case 23:return Pt()===161&&so(Sx)?!1:Pt()===11?!0:X1(Pt());case 13:return X1(Pt())||Pt()===19;case 14:return!0;case 25:return!0;case 26:return Zo.fail("ParsingContext.Count used as a context");default:Zo.assertNever(rt,"Non-exhaustive case in 'isListElement'.")}}function If(){if(Zo.assert(Pt()===19),Vs()===20){let rt=Vs();return rt===28||rt===19||rt===96||rt===119}return!0}function rf(){return Vs(),Xs()}function op(){return Vs(),X1(Pt())}function bd(){return Vs(),t7a(Pt())}function $1(){return Pt()===119||Pt()===96?so(Cw):!1}function Cw(){return Vs(),rh()}function XA(){return Vs(),gt()}function Ac(rt){if(Pt()===1)return!0;switch(rt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Pt()===20;case 3:return Pt()===20||Pt()===84||Pt()===90;case 7:return Pt()===19||Pt()===96||Pt()===119;case 8:return Gm();case 19:return Pt()===32||Pt()===21||Pt()===19||Pt()===96||Pt()===119;case 11:return Pt()===22||Pt()===27;case 15:case 21:case 10:return Pt()===24;case 17:case 16:case 18:return Pt()===22||Pt()===24;case 20:return Pt()!==28;case 22:return Pt()===19||Pt()===20;case 13:return Pt()===32||Pt()===44;case 14:return Pt()===30&&so(sv);default:return!1}}function Gm(){return!!(bg()||t1(Pt())||Pt()===39)}function JS(){Zo.assert(Fn,"Missing parsing context");for(let rt=0;rt<26;rt++)if(Fn&1<=0)}function yI(rt){return rt===6?ts.An_enum_member_name_must_be_followed_by_a_or:void 0}function bI(){let rt=vr([],Ri());return rt.isMissingList=!0,rt}function J2(rt){return!!rt.isMissingList}function aE(rt,Jt,kr,Xr){if(ws(kr)){let ui=qf(rt,Jt);return ws(Xr),ui}return bI()}function se(rt,Jt){let kr=Ri(),Xr=rt?Ca(Jt):Oa(Jt);for(;rc(25)&&Pt()!==30;)Xr=Zt(C.createQualifiedName(Xr,K(rt,!1,!0)),kr);return Xr}function P(rt,Jt){return Zt(C.createQualifiedName(rt,Jt),rt.pos)}function K(rt,Jt,kr){if(t.hasPrecedingLineBreak()&&X1(Pt())&&so(Fm))return bn(80,!0,ts.Identifier_expected);if(Pt()===81){let Xr=io();return Jt?Xr:bn(80,!0,ts.Identifier_expected)}return rt?kr?Ca():gd():Oa()}function we(rt){let Jt=Ri(),kr=[],Xr;do Xr=$n(rt),kr.push(Xr);while(Xr.literal.kind===17);return vr(kr,Jt)}function At(rt){let Jt=Ri();return Zt(C.createTemplateExpression(kc(rt),we(rt)),Jt)}function sr(){let rt=Ri();return Zt(C.createTemplateLiteralType(kc(!1),Yr()),rt)}function Yr(){let rt=Ri(),Jt=[],kr;do kr=Lr(),Jt.push(kr);while(kr.literal.kind===17);return vr(Jt,rt)}function Lr(){let rt=Ri();return Zt(C.createTemplateLiteralTypeSpan(nf(),fi(!1)),rt)}function fi(rt){return Pt()===20?(HA(rt),Dl()):rl(18,ts._0_expected,Sy(20))}function $n(rt){let Jt=Ri();return Zt(C.createTemplateSpan(gc(td),fi(rt)),Jt)}function ra(){return Bl(Pt())}function kc(rt){!rt&&t.getTokenFlags()&26656&&HA(!1);let Jt=Bl(Pt());return Zo.assert(Jt.kind===16,"Template head has wrong token kind"),Jt}function Dl(){let rt=Bl(Pt());return Zo.assert(rt.kind===17||rt.kind===18,"Template fragment has wrong token kind"),rt}function ca(rt){let Jt=rt===15||rt===18,kr=t.getTokenText();return kr.substring(1,kr.length-(t.isUnterminated()?0:Jt?1:2))}function Bl(rt){let Jt=Ri(),kr=Q2i(rt)?C.createTemplateLiteralLikeNode(rt,t.getTokenValue(),ca(rt),t.getTokenFlags()&7176):rt===9?E(t.getTokenValue(),t.getNumericLiteralFlags()):rt===11?N(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):q7a(rt)?B(rt,t.getTokenValue()):Zo.fail();return t.hasExtendedUnicodeEscape()&&(kr.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(kr.isUnterminated=!0),Vs(),Zt(kr,Jt)}function eA(){return se(!0,ts.Type_expected)}function BA(){if(!t.hasPrecedingLineBreak()&&ZA()===30)return aE(20,nf,30,32)}function gI(){let rt=Ri();return Zt(C.createTypeReferenceNode(eA(),BA()),rt)}function gp(rt){switch(rt.kind){case 183:return nCe(rt.typeName);case 184:case 185:{let{parameters:Jt,type:kr}=rt;return J2(Jt)||gp(kr)}case 196:return gp(rt.type);default:return!1}}function mb(rt){return Vs(),Zt(C.createTypePredicateNode(void 0,rt,nf()),rt.pos)}function Na(){let rt=Ri();return Vs(),Zt(C.createThisTypeNode(),rt)}function Rd(){let rt=Ri();return Vs(),Zt(C.createJSDocAllType(),rt)}function e2(){let rt=Ri();return Vs(),Zt(C.createJSDocNonNullableType(xc(),!1),rt)}function N_(){let rt=Ri();return Vs(),Pt()===28||Pt()===20||Pt()===22||Pt()===32||Pt()===64||Pt()===52?Zt(C.createJSDocUnknownType(),rt):Zt(C.createJSDocNullableType(nf(),!1),rt)}function DC(){let rt=Ri(),Jt=Do();if(Ki(vx)){let kr=Mc(36),Xr=mh(59,!1);return Hr(Zt(C.createJSDocFunctionType(kr,Xr),rt),Jt)}return Zt(C.createTypeReferenceNode(Ca(),void 0),rt)}function Jm(){let rt=Ri(),Jt;return(Pt()===110||Pt()===105)&&(Jt=Ca(),ws(59)),Zt(C.createParameterDeclaration(void 0,void 0,Jt,void 0,US(),void 0),rt)}function US(){t.setSkipJsDocLeadingAsterisks(!0);let rt=Ri();if(rc(144)){let Xr=C.createJSDocNamepathType(void 0);e:for(;;)switch(Pt()){case 20:case 1:case 28:case 5:break e;default:Uu()}return t.setSkipJsDocLeadingAsterisks(!1),Zt(Xr,rt)}let Jt=rc(26),kr=$E();return t.setSkipJsDocLeadingAsterisks(!1),Jt&&(kr=Zt(C.createJSDocVariadicType(kr),rt)),Pt()===64?(Vs(),Zt(C.createJSDocOptionalType(kr),rt)):kr}function Zg(){let rt=Ri();ws(114);let Jt=se(!0),kr=t.hasPrecedingLineBreak()?void 0:xn();return Zt(C.createTypeQueryNode(Jt,kr),rt)}function Cb(){let rt=Ri(),Jt=Ve(!1,!0),kr=Oa(),Xr,ui;rc(96)&&(gt()||!rh()?Xr=nf():ui=qR());let Is=rc(64)?nf():void 0,Hs=C.createTypeParameterDeclaration(Jt,kr,Xr,Is);return Hs.expression=ui,Zt(Hs,rt)}function pC(){if(Pt()===30)return aE(19,Cb,30,32)}function kC(rt){return Pt()===26||a1()||Wee(Pt())||Pt()===60||gt(!rt)}function U2(rt){let Jt=Hf(ts.Private_identifiers_cannot_be_used_as_parameters);return Sza(Jt)===0&&!gD(rt)&&Wee(Pt())&&Vs(),Jt}function j_(){return cc()||Pt()===23||Pt()===19}function xC(rt){return th(rt)}function GC(rt){return th(rt,!1)}function th(rt,Jt=!0){let kr=Ri(),Xr=Do(),ui=rt?li(()=>Ve(!0)):Ei(()=>Ve(!0));if(Pt()===110){let ja=C.createParameterDeclaration(ui,void 0,oa(!0),void 0,Ny(),void 0),ho=rDr(ui);return ho&&_I(ho,ts.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Hr(Zt(ja,kr),Xr)}let Is=Ao;Ao=!1;let Hs=ad(26);if(!Jt&&!j_())return;let Rs=Hr(Zt(C.createParameterDeclaration(ui,Hs,U2(ui),ad(58),Ny(),Km()),kr),Xr);return Ao=Is,Rs}function mh(rt,Jt){if(wA(rt,Jt))return Nc($E)}function wA(rt,Jt){return rt===39?(ws(rt),!0):rc(59)?!0:Jt&&Pt()===39?(Da(ts._0_expected,Sy(59)),Vs(),!0):!1}function Nd(rt,Jt){let kr=Ql(),Xr=Ju();Qi(!!(rt&1)),yo(!!(rt&2));let ui=rt&32?qf(17,Jm):qf(16,()=>Jt?xC(Xr):GC(Xr));return Qi(kr),yo(Xr),ui}function Mc(rt){if(!ws(21))return bI();let Jt=Nd(rt,!0);return ws(22),Jt}function Pf(){rc(28)||YA()}function cE(rt){let Jt=Ri(),kr=Do();rt===180&&ws(105);let Xr=pC(),ui=Mc(4),Is=mh(59,!0);Pf();let Hs=rt===179?C.createCallSignature(Xr,ui,Is):C.createConstructSignature(Xr,ui,Is);return Hr(Zt(Hs,Jt),kr)}function tA(){return Pt()===23&&so(KS)}function KS(){if(Vs(),Pt()===26||Pt()===24)return!0;if(Wee(Pt())){if(Vs(),Xs())return!0}else if(Xs())Vs();else return!1;return Pt()===59||Pt()===28?!0:Pt()!==58?!1:(Vs(),Pt()===59||Pt()===28||Pt()===24)}function jS(rt,Jt,kr){let Xr=aE(16,()=>xC(!1),23,24),ui=Ny();Pf();let Is=C.createIndexSignature(kr,Xr,ui);return Hr(Zt(Is,rt),Jt)}function pm(rt,Jt,kr){let Xr=ff(),ui=ad(58),Is;if(Pt()===21||Pt()===30){let Hs=pC(),Rs=Mc(4),ja=mh(59,!0);Is=C.createMethodSignature(kr,Xr,ui,Hs,Rs,ja)}else{let Hs=Ny();Is=C.createPropertySignature(kr,Xr,ui,Hs),Pt()===64&&(Is.initializer=Km())}return Pf(),Hr(Zt(Is,rt),Jt)}function fm(){if(Pt()===21||Pt()===30||Pt()===139||Pt()===153)return!0;let rt=!1;for(;Wee(Pt());)rt=!0,Vs();return Pt()===23?!0:(Dp()&&(rt=!0,Vs()),rt?Pt()===21||Pt()===30||Pt()===58||Pt()===59||Pt()===28||bg():!1)}function cs(){if(Pt()===21||Pt()===30)return cE(179);if(Pt()===105&&so(na))return cE(180);let rt=Ri(),Jt=Do(),kr=Ve(!1);return Ea(139)?Tb(rt,Jt,kr,177,4):Ea(153)?Tb(rt,Jt,kr,178,4):tA()?jS(rt,Jt,kr):pm(rt,Jt,kr)}function na(){return Vs(),Pt()===21||Pt()===30}function ko(){return Vs()===25}function ki(){switch(Vs()){case 21:case 30:case 25:return!0}return!1}function jl(){let rt=Ri();return Zt(C.createTypeLiteralNode(hd()),rt)}function hd(){let rt;return ws(19)?(rt=qd(4,cs),ws(20)):rt=bI(),rt}function $f(){return Vs(),Pt()===40||Pt()===41?Vs()===148:(Pt()===148&&Vs(),Pt()===23&&rf()&&Vs()===103)}function Wd(){let rt=Ri(),Jt=Ca();ws(103);let kr=nf();return Zt(C.createTypeParameterDeclaration(void 0,Jt,kr,void 0),rt)}function fC(){let rt=Ri();ws(19);let Jt;(Pt()===148||Pt()===40||Pt()===41)&&(Jt=VA(),Jt.kind!==148&&ws(148)),ws(23);let kr=Wd(),Xr=rc(130)?nf():void 0;ws(24);let ui;(Pt()===58||Pt()===40||Pt()===41)&&(ui=VA(),ui.kind!==58&&ws(58));let Is=Ny();YA();let Hs=qd(4,cs);return ws(20),Zt(C.createMappedTypeNode(Jt,kr,Xr,ui,Is,Hs),rt)}function jE(){let rt=Ri();if(rc(26))return Zt(C.createRestTypeNode(nf()),rt);let Jt=nf();if(z$a(Jt)&&Jt.pos===Jt.type.pos){let kr=C.createOptionalTypeNode(Jt.type);return nL(kr,Jt),kr.flags=Jt.flags,kr}return Jt}function Um(){return Vs()===59||Pt()===58&&Vs()===59}function wy(){return Pt()===26?X1(Vs())&&Um():X1(Pt())&&Um()}function z_(){if(so(wy)){let rt=Ri(),Jt=Do(),kr=ad(26),Xr=Ca(),ui=ad(58);ws(59);let Is=jE(),Hs=C.createNamedTupleMember(kr,Xr,ui,Is);return Hr(Zt(Hs,rt),Jt)}return jE()}function cd(){let rt=Ri();return Zt(C.createTupleTypeNode(aE(21,z_,23,24)),rt)}function zE(){let rt=Ri();ws(21);let Jt=nf();return ws(22),Zt(C.createParenthesizedType(Jt),rt)}function qE(){let rt;if(Pt()===128){let Jt=Ri();Vs();let kr=Zt(J(128),Jt);rt=vr([kr],Jt)}return rt}function Xp(){let rt=Ri(),Jt=Do(),kr=qE(),Xr=rc(105);Zo.assert(!kr||Xr,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let ui=pC(),Is=Mc(4),Hs=mh(39,!1),Rs=Xr?C.createConstructorTypeNode(kr,ui,Is,Hs):C.createFunctionTypeNode(ui,Is,Hs);return Hr(Zt(Rs,rt),Jt)}function zS(){let rt=VA();return Pt()===25?void 0:rt}function Ty(rt){let Jt=Ri();rt&&Vs();let kr=Pt()===112||Pt()===97||Pt()===106?VA():Bl(Pt());return rt&&(kr=Zt(C.createPrefixUnaryExpression(41,kr),Jt)),Zt(C.createLiteralTypeNode(kr),Jt)}function ty(){return Vs(),Pt()===102}function _w(){Bt|=4194304;let rt=Ri(),Jt=rc(114);ws(102),ws(21);let kr=nf(),Xr;if(rc(28)){let Hs=t.getTokenStart();ws(19);let Rs=Pt();if(Rs===118||Rs===132?Vs():Da(ts._0_expected,Sy(118)),ws(59),Xr=o3(Rs,!0),!ws(20)){let ja=tCe(lr);ja&&ja.code===ts._0_expected.code&&zbt(ja,LNe(jt,Dt,Hs,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ws(22);let ui=rc(25)?eA():void 0,Is=BA();return Zt(C.createImportTypeNode(kr,Xr,ui,Is,Jt),rt)}function K2(){return Vs(),Pt()===9||Pt()===10}function xc(){switch(Pt()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ki(zS)||gI();case 67:t.reScanAsteriskEqualsToken();case 42:return Rd();case 61:t.reScanQuestionToken();case 58:return N_();case 100:return DC();case 54:return e2();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return Ty();case 41:return so(K2)?Ty(!0):gI();case 116:return VA();case 110:{let rt=Na();return Pt()===142&&!t.hasPrecedingLineBreak()?mb(rt):rt}case 114:return so(ty)?_w():Zg();case 19:return so($f)?fC():jl();case 23:return cd();case 21:return zE();case 102:return _w();case 131:return so(Fm)?FT():gI();case 16:return sr();default:return gI()}}function gt(rt){switch(Pt()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!rt;case 41:return!rt&&so(K2);case 21:return!rt&&so(ar);default:return Xs()}}function ar(){return Vs(),Pt()===22||kC(!1)||gt()}function Jr(){let rt=Ri(),Jt=xc();for(;!t.hasPrecedingLineBreak();)switch(Pt()){case 54:Vs(),Jt=Zt(C.createJSDocNonNullableType(Jt,!0),rt);break;case 58:if(so(XA))return Jt;Vs(),Jt=Zt(C.createJSDocNullableType(Jt,!0),rt);break;case 23:if(ws(23),gt()){let kr=nf();ws(24),Jt=Zt(C.createIndexedAccessTypeNode(Jt,kr),rt)}else ws(24),Jt=Zt(C.createArrayTypeNode(Jt),rt);break;default:return Jt}return Jt}function Gn(rt){let Jt=Ri();return ws(rt),Zt(C.createTypeOperatorNode(rt,Dg()),Jt)}function Ts(){if(rc(96)){let rt=sA(nf);if(vg()||Pt()!==58)return rt}}function Qo(){let rt=Ri(),Jt=Oa(),kr=Ki(Ts),Xr=C.createTypeParameterDeclaration(void 0,Jt,kr);return Zt(Xr,rt)}function Bg(){let rt=Ri();return ws(140),Zt(C.createInferTypeNode(Qo()),rt)}function Dg(){let rt=Pt();switch(rt){case 143:case 158:case 148:return Gn(rt);case 140:return Bg()}return Nc(Jr)}function Df(rt){if(uB()){let Jt=Xp(),kr;return uBi(Jt)?kr=rt?ts.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:kr=rt?ts.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,_I(Jt,kr),Jt}}function AI(rt,Jt,kr){let Xr=Ri(),ui=rt===52,Is=rc(rt),Hs=Is&&Df(ui)||Jt();if(Pt()===rt||Is){let Rs=[Hs];for(;rc(rt);)Rs.push(Df(ui)||Jt());Hs=Zt(kr(vr(Rs,Xr)),Xr)}return Hs}function kh(){return AI(51,Dg,C.createIntersectionTypeNode)}function lE(){return AI(52,kh,C.createUnionTypeNode)}function xT(){return Vs(),Pt()===105}function uB(){return Pt()===30||Pt()===21&&so(Ry)?!0:Pt()===105||Pt()===128&&so(xT)}function GT(){if(Wee(Pt())&&Ve(!1),Xs()||Pt()===110)return Vs(),!0;if(Pt()===23||Pt()===19){let rt=lr.length;return Hf(),rt===lr.length}return!1}function Ry(){return Vs(),!!(Pt()===22||Pt()===26||GT()&&(Pt()===59||Pt()===28||Pt()===58||Pt()===64||Pt()===22&&(Vs(),Pt()===39)))}function $E(){let rt=Ri(),Jt=Xs()&&Ki(q_),kr=nf();return Jt?Zt(C.createTypePredicateNode(void 0,Jt,kr),rt):kr}function q_(){let rt=Oa();if(Pt()===142&&!t.hasPrecedingLineBreak())return Vs(),rt}function FT(){let rt=Ri(),Jt=rl(131),kr=Pt()===110?Na():Oa(),Xr=rc(142)?nf():void 0;return Zt(C.createTypePredicateNode(Jt,kr,Xr),rt)}function nf(){if(Hi&81920)return bo(81920,nf);if(uB())return Xp();let rt=Ri(),Jt=lE();if(!vg()&&!t.hasPrecedingLineBreak()&&rc(96)){let kr=sA(nf);ws(58);let Xr=Nc(nf);ws(59);let ui=Nc(nf);return Zt(C.createConditionalTypeNode(Jt,kr,Xr,ui),rt)}return Jt}function Ny(){return rc(59)?nf():void 0}function qS(){switch(Pt()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return so(ki);default:return Xs()}}function rh(){if(qS())return!0;switch(Pt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return LT()?!0:Xs()}}function TA(){return Pt()!==19&&Pt()!==100&&Pt()!==86&&Pt()!==60&&rh()}function td(){let rt=Kl();rt&&ps(!1);let Jt=Ri(),kr=eI(!0),Xr;for(;Xr=ad(28);)kr=t2(kr,Xr,eI(!0),Jt);return rt&&ps(!0),kr}function Km(){return rc(64)?eI(!0):void 0}function eI(rt){if(_b())return yb();let Jt=$S(rt)||gB(rt);if(Jt)return Jt;let kr=Ri(),Xr=Do(),ui=tv(0);return ui.kind===80&&Pt()===39?Dy(kr,ui,rt,Xr,void 0):zNe(ui)&&$vi(Ko())?t2(ui,VA(),eI(rt),kr):zR(ui,kr,rt)}function _b(){return Pt()===127?Ql()?!0:so(Ro):!1}function D_(){return Vs(),!t.hasPrecedingLineBreak()&&Xs()}function yb(){let rt=Ri();return Vs(),!t.hasPrecedingLineBreak()&&(Pt()===42||rh())?Zt(C.createYieldExpression(ad(42),eI(!0)),rt):Zt(C.createYieldExpression(void 0,void 0),rt)}function Dy(rt,Jt,kr,Xr,ui){Zo.assert(Pt()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Is=C.createParameterDeclaration(void 0,void 0,Jt,void 0,void 0,void 0);Zt(Is,Jt.pos);let Hs=vr([Is],Is.pos,Is.end),Rs=rl(39),ja=ev(!!ui,kr),ho=C.createArrowFunction(ui,void 0,Hs,void 0,Rs,ja);return Hr(Zt(ho,rt),Xr)}function $S(rt){let Jt=bb();if(Jt!==0)return Jt===1?AB(!0,!0):Ki(()=>e1(rt))}function bb(){return Pt()===21||Pt()===30||Pt()===134?so($_):Pt()===39?1:0}function $_(){if(Pt()===134&&(Vs(),t.hasPrecedingLineBreak()||Pt()!==21&&Pt()!==30))return 0;let rt=Pt(),Jt=Vs();if(rt===21){if(Jt===22)switch(Vs()){case 39:case 59:case 19:return 1;default:return 0}if(Jt===23||Jt===19)return 2;if(Jt===26)return 1;if(Wee(Jt)&&Jt!==134&&so(rf))return Vs()===130?0:1;if(!Xs()&&Jt!==110)return 0;switch(Vs()){case 59:return 1;case 58:return Vs(),Pt()===59||Pt()===28||Pt()===64||Pt()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return Zo.assert(rt===30),!Xs()&&Pt()!==87?0:Xt===1?so(()=>{rc(87);let kr=Vs();if(kr===96)switch(Vs()){case 64:case 32:case 44:return!1;default:return!0}else if(kr===28||kr===64)return!0;return!1})?1:0:2}function e1(rt){let Jt=t.getTokenStart();if(Nn!=null&&Nn.has(Jt))return;let kr=AB(!1,rt);return kr||(Nn||(Nn=new Set)).add(Jt),kr}function gB(rt){if(Pt()===134&&so(ZT)===1){let Jt=Ri(),kr=Do(),Xr=It(),ui=tv(0);return Dy(Jt,ui,rt,kr,Xr)}}function ZT(){if(Pt()===134){if(Vs(),t.hasPrecedingLineBreak()||Pt()===39)return 0;let rt=tv(0);if(!t.hasPrecedingLineBreak()&&rt.kind===80&&Pt()===39)return 1}return 0}function AB(rt,Jt){let kr=Ri(),Xr=Do(),ui=It(),Is=gD(ui,eEt)?2:0,Hs=pC(),Rs;if(ws(21)){if(rt)Rs=Nd(Is,rt);else{let Nb=Nd(Is,rt);if(!Nb)return;Rs=Nb}if(!ws(22)&&!rt)return}else{if(!rt)return;Rs=bI()}let ja=Pt()===59,ho=mh(59,!1);if(ho&&!rt&&gp(ho))return;let nl=ho;for(;nl?.kind===196;)nl=nl.type;let kd=nl&&q$a(nl);if(!rt&&Pt()!==39&&(kd||Pt()!==19))return;let rd=Pt(),Mg=rl(39),Gh=rd===39||rd===19?ev(gD(ui,eEt),Jt):Oa();if(!Jt&&ja&&Pt()!==59)return;let l1=C.createArrowFunction(ui,Hs,Rs,ho,Mg,Gh);return Hr(Zt(l1,kr),Xr)}function ev(rt,Jt){if(Pt()===19)return gE(rt?2:0);if(Pt()!==27&&Pt()!==100&&Pt()!==86&&Xc()&&!TA())return gE(16|(rt?2:0));let kr=Ao;Ao=!1;let Xr=rt?li(()=>eI(Jt)):Ei(()=>eI(Jt));return Ao=kr,Xr}function zR(rt,Jt,kr){let Xr=ad(58);if(!Xr)return rt;let ui;return Zt(C.createConditionalExpression(rt,Xr,bo(r,()=>eI(!1)),ui=rl(59),LNr(ui)?eI(kr):bn(80,!1,ts._0_expected,Sy(59))),Jt)}function tv(rt){let Jt=Ri(),kr=qR();return j2(rt,kr,Jt)}function t1(rt){return rt===103||rt===165}function j2(rt,Jt,kr){for(;;){Ko();let Xr=_Nr(Pt());if(!(Pt()===43?Xr>=rt:Xr>rt)||Pt()===103&&Oc())break;if(Pt()===130||Pt()===152){if(t.hasPrecedingLineBreak())break;{let ui=Pt();Vs(),Jt=ui===152?pn(Jt,nf()):z2(Jt,nf())}}else Jt=t2(Jt,VA(),tv(Xr),kr)}return Jt}function LT(){return Oc()&&Pt()===103?!1:_Nr(Pt())>0}function pn(rt,Jt){return Zt(C.createSatisfiesExpression(rt,Jt),rt.pos)}function t2(rt,Jt,kr,Xr){return Zt(C.createBinaryExpression(rt,Jt,kr),Xr)}function z2(rt,Jt){return Zt(C.createAsExpression(rt,Jt),rt.pos)}function ry(){let rt=Ri();return Zt(C.createPrefixUnaryExpression(Pt(),Ru(ny)),rt)}function Ap(){let rt=Ri();return Zt(C.createDeleteExpression(Ru(ny)),rt)}function yw(){let rt=Ri();return Zt(C.createTypeOfExpression(Ru(ny)),rt)}function dB(){let rt=Ri();return Zt(C.createVoidExpression(Ru(ny)),rt)}function GD(){return Pt()===135?Ju()?!0:so(Ro):!1}function Dd(){let rt=Ri();return Zt(C.createAwaitExpression(Ru(ny)),rt)}function qR(){if(pF()){let kr=Ri(),Xr=r2();return Pt()===43?j2(_Nr(Pt()),Xr,kr):Xr}let rt=Pt(),Jt=ny();if(Pt()===43){let kr=B6(Dt,Jt.pos),{end:Xr}=Jt;Jt.kind===216?yg(kr,Xr,ts.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(Zo.assert(CNr(rt)),yg(kr,Xr,ts.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,Sy(rt)))}return Jt}function ny(){switch(Pt()){case 40:case 41:case 55:case 54:return ry();case 91:return Ap();case 114:return yw();case 116:return dB();case 30:return Xt===1?i1(!0,void 0,void 0,!0):sf();case 135:if(GD())return Dd();default:return r2()}}function pF(){switch(Pt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Xt!==1)return!1;default:return!0}}function r2(){if(Pt()===46||Pt()===47){let Jt=Ri();return Zt(C.createPrefixUnaryExpression(Pt(),Ru(r1)),Jt)}else if(Xt===1&&Pt()===30&&so(bd))return i1(!0);let rt=r1();if(Zo.assert(zNe(rt)),(Pt()===46||Pt()===47)&&!t.hasPrecedingLineBreak()){let Jt=Pt();return Vs(),Zt(C.createPostfixUnaryExpression(rt,Jt),rt.pos)}return rt}function r1(){let rt=Ri(),Jt;return Pt()===102?so(na)?(Bt|=4194304,Jt=VA()):so(ko)?(Vs(),Vs(),Jt=Zt(C.createMetaProperty(102,Ca()),rt),Bt|=8388608):Jt=k_():Jt=Pt()===108?n1():k_(),s1(rt,Jt)}function k_(){let rt=Ri(),Jt=S0();return _h(rt,Jt,!0)}function n1(){let rt=Ri(),Jt=VA();if(Pt()===30){let kr=Ri(),Xr=Ki(bw);Xr!==void 0&&(yg(kr,Ri(),ts.super_may_not_use_type_arguments),FC()||(Jt=C.createExpressionWithTypeArguments(Jt,Xr)))}return Pt()===21||Pt()===25||Pt()===23?Jt:(rl(25,ts.super_must_be_followed_by_an_argument_list_or_member_access),Zt(ce(Jt,K(!0,!0,!0)),rt))}function i1(rt,Jt,kr,Xr=!1){let ui=Ri(),Is=xh(rt),Hs;if(Is.kind===286){let Rs=Eb(Is),ja,ho=Rs[Rs.length-1];if(ho?.kind===284&&!Dce(ho.openingElement.tagName,ho.closingElement.tagName)&&Dce(Is.tagName,ho.closingElement.tagName)){let nl=ho.children.end,kd=Zt(C.createJsxElement(ho.openingElement,ho.children,Zt(C.createJsxClosingElement(Zt(F(""),nl,nl)),nl,nl)),ho.openingElement.pos,nl);Rs=vr([...Rs.slice(0,Rs.length-1),kd],Rs.pos,nl),ja=ho.closingElement}else ja=lc(Is,rt),Dce(Is.tagName,ja.tagName)||(kr&&aSi(kr)&&Dce(ja.tagName,kr.tagName)?_I(Is.tagName,ts.JSX_element_0_has_no_corresponding_closing_tag,TJe(Dt,Is.tagName)):_I(ja.tagName,ts.Expected_corresponding_JSX_closing_tag_for_0,TJe(Dt,Is.tagName)));Hs=Zt(C.createJsxElement(Is,Rs,ja),ui)}else Is.kind===289?Hs=Zt(C.createJsxFragment(Is,Eb(Is),Ch(rt)),ui):(Zo.assert(Is.kind===285),Hs=Is);if(!Xr&&rt&&Pt()===30){let Rs=typeof Jt>"u"?Hs.pos:Jt,ja=Ki(()=>i1(!0,Rs));if(ja){let ho=bn(28,!1);return rSi(ho,ja.pos,0),yg(B6(Dt,Rs),ja.end,ts.JSX_expressions_must_have_one_parent_element),Zt(C.createBinaryExpression(Hs,ho,ja),ui)}}return Hs}function iy(){let rt=Ri(),Jt=C.createJsxText(t.getTokenValue(),qr===13);return qr=t.scanJsxToken(),Zt(Jt,rt)}function VT(rt,Jt){switch(Jt){case 1:if(X$a(rt))_I(rt,ts.JSX_fragment_has_no_corresponding_closing_tag);else{let kr=rt.tagName,Xr=Math.min(B6(Dt,kr.pos),kr.end);yg(Xr,kr.end,ts.JSX_element_0_has_no_corresponding_closing_tag,TJe(Dt,rt.tagName))}return;case 31:case 7:return;case 12:case 13:return iy();case 19:return FD(!1);case 30:return i1(!1,void 0,rt);default:return Zo.assertNever(Jt)}}function Eb(rt){let Jt=[],kr=Ri(),Xr=Fn;for(Fn|=16384;;){let ui=VT(rt,qr=t.reScanJsxToken());if(!ui||(Jt.push(ui),aSi(rt)&&ui?.kind===284&&!Dce(ui.openingElement.tagName,ui.closingElement.tagName)&&Dce(rt.tagName,ui.closingElement.tagName)))break}return Fn=Xr,vr(Jt,kr)}function i_(){let rt=Ri();return Zt(C.createJsxAttributes(qd(13,ZD)),rt)}function xh(rt){let Jt=Ri();if(ws(30),Pt()===32)return zf(),Zt(C.createJsxOpeningFragment(),Jt);let kr=Sb(),Xr=Hi&524288?void 0:xn(),ui=i_(),Is;return Pt()===32?(zf(),Is=C.createJsxOpeningElement(kr,Xr,ui)):(ws(44),ws(32,void 0,!1)&&(rt?Vs():zf()),Is=C.createJsxSelfClosingElement(kr,Xr,ui)),Zt(Is,Jt)}function Sb(){let rt=Ri(),Jt=pB();if(vBi(Jt))return Jt;let kr=Jt;for(;rc(25);)kr=Zt(ce(kr,K(!0,!1,!1)),rt);return kr}function pB(){let rt=Ri();gl();let Jt=Pt()===110,kr=gd();return rc(59)?(gl(),Zt(C.createJsxNamespacedName(kr,gd()),rt)):Jt?Zt(C.createToken(110),rt):kr}function FD(rt){let Jt=Ri();if(!ws(19))return;let kr,Xr;return Pt()!==20&&(rt||(kr=ad(26)),Xr=td()),rt?ws(20):ws(20,void 0,!1)&&zf(),Zt(C.createJsxExpression(kr,Xr),Jt)}function ZD(){if(Pt()===19)return $R();let rt=Ri();return Zt(C.createJsxAttribute(LD(),e0()),rt)}function e0(){if(Pt()===64){if(zd()===11)return ra();if(Pt()===19)return FD(!0);if(Pt()===30)return i1(!0);Da(ts.or_JSX_element_expected)}}function LD(){let rt=Ri();gl();let Jt=gd();return rc(59)?(gl(),Zt(C.createJsxNamespacedName(Jt,gd()),rt)):Jt}function $R(){let rt=Ri();ws(19),ws(26);let Jt=td();return ws(20),Zt(C.createJsxSpreadAttribute(Jt),rt)}function lc(rt,Jt){let kr=Ri();ws(31);let Xr=Sb();return ws(32,void 0,!1)&&(Jt||!Dce(rt.tagName,Xr)?Vs():zf()),Zt(C.createJsxClosingElement(Xr),kr)}function Ch(rt){let Jt=Ri();return ws(31),ws(32,ts.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(rt?Vs():zf()),Zt(C.createJsxJsxClosingFragment(),Jt)}function sf(){Zo.assert(Xt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let rt=Ri();ws(30);let Jt=nf();ws(32);let kr=ny();return Zt(C.createTypeAssertion(Jt,kr),rt)}function EI(){return Vs(),X1(Pt())||Pt()===23||FC()}function uE(){return Pt()===29&&so(EI)}function rv(rt){if(rt.flags&64)return!0;if(iEt(rt)){let Jt=rt.expression;for(;iEt(Jt)&&!(Jt.flags&64);)Jt=Jt.expression;if(Jt.flags&64){for(;iEt(rt);)rt.flags|=64,rt=rt.expression;return!0}}return!1}function Jp(rt,Jt,kr){let Xr=K(!0,!0,!0),ui=kr||rv(Jt),Is=ui?fe(Jt,kr,Xr):ce(Jt,Xr);if(ui&&aCe(Is.name)&&_I(Is.name,ts.An_optional_chain_cannot_contain_private_identifiers),V$a(Jt)&&Jt.typeArguments){let Hs=Jt.typeArguments.pos-1,Rs=B6(Dt,Jt.typeArguments.end)+1;yg(Hs,Rs,ts.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Zt(Is,rt)}function fB(rt,Jt,kr){let Xr;if(Pt()===24)Xr=bn(80,!0,ts.An_element_access_expression_should_take_an_argument);else{let Is=gc(td);_Et(Is)&&(Is.text=ls(Is.text)),Xr=Is}ws(24);let ui=kr||rv(Jt)?de(Jt,kr,Xr):ue(Jt,Xr);return Zt(ui,rt)}function _h(rt,Jt,kr){for(;;){let Xr,ui=!1;if(kr&&uE()?(Xr=rl(29),ui=X1(Pt())):ui=rc(25),ui){Jt=Jp(rt,Jt,Xr);continue}if((Xr||!Kl())&&rc(23)){Jt=fB(rt,Jt,Xr);continue}if(FC()){Jt=!Xr&&Jt.kind===233?t0(rt,Jt.expression,Xr,Jt.typeArguments):t0(rt,Jt,Xr,void 0);continue}if(!Xr){if(Pt()===54&&!t.hasPrecedingLineBreak()){Vs(),Jt=Zt(C.createNonNullExpression(Jt),rt);continue}let Is=Ki(bw);if(Is){Jt=Zt(C.createExpressionWithTypeArguments(Jt,Is),rt);continue}}return Jt}}function FC(){return Pt()===15||Pt()===16}function t0(rt,Jt,kr,Xr){let ui=C.createTaggedTemplateExpression(Jt,Xr,Pt()===15?(HA(!0),ra()):At(!0));return(kr||Jt.flags&64)&&(ui.flags|=64),ui.questionDotToken=kr,Zt(ui,rt)}function s1(rt,Jt){for(;;){Jt=_h(rt,Jt,!0);let kr,Xr=ad(29);if(Xr&&(kr=Ki(bw),FC())){Jt=t0(rt,Jt,Xr,kr);continue}if(kr||Pt()===21){!Xr&&Jt.kind===233&&(kr=Jt.typeArguments,Jt=Jt.expression);let ui=IB(),Is=Xr||rv(Jt)?Se(Jt,Xr,kr,ui):be(Jt,kr,ui);Jt=Zt(Is,rt);continue}if(Xr){let ui=bn(80,!1,ts.Identifier_expected);Jt=Zt(fe(Jt,Xr,ui),rt)}break}return Jt}function IB(){ws(21);let rt=qf(11,SI);return ws(22),rt}function bw(){if(Hi&524288||ZA()!==30)return;Vs();let rt=qf(20,nf);if(Ko()===32)return Vs(),rt&&WT()?rt:void 0}function WT(){switch(Pt()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||LT()||!rh()}function S0(){switch(Pt()){case 15:t.getTokenFlags()&26656&&HA(!1);case 9:case 10:case 11:return ra();case 110:case 108:case 106:case 112:case 97:return VA();case 21:return ia();case 23:return cg();case 19:return o1();case 134:if(!so(i2))break;return q2();case 60:return Ur();case 86:return mi();case 100:return q2();case 105:return s_();case 44:case 69:if(Sg()===14)return ra();break;case 16:return At(!1);case 81:return io()}return Oa(ts.Expression_expected)}function ia(){let rt=Ri(),Jt=Do();ws(21);let kr=gc(td);return ws(22),Hr(Zt(k(kr),rt),Jt)}function n2(){let rt=Ri();ws(26);let Jt=eI(!0);return Zt(C.createSpreadElement(Jt),rt)}function Ed(){return Pt()===26?n2():Pt()===28?Zt(C.createOmittedExpression(),Ri()):eI(!0)}function SI(){return bo(r,Ed)}function cg(){let rt=Ri(),Jt=t.getTokenStart(),kr=ws(23),Xr=t.hasPrecedingLineBreak(),ui=qf(15,Ed);return Zl(23,24,kr,Jt),Zt(ae(ui,Xr),rt)}function vb(){let rt=Ri(),Jt=Do();if(ad(26)){let ho=eI(!0);return Hr(Zt(C.createSpreadAssignment(ho),rt),Jt)}let kr=Ve(!0);if(Ea(139))return Tb(rt,Jt,kr,177,0);if(Ea(153))return Tb(rt,Jt,kr,178,0);let Xr=ad(42),ui=Xs(),Is=ff(),Hs=ad(58),Rs=ad(54);if(Xr||Pt()===21||Pt()===30)return wb(rt,Jt,kr,Xr,Is,Hs,Rs);let ja;if(ui&&Pt()!==59){let ho=ad(64),nl=ho?gc(()=>eI(!0)):void 0;ja=C.createShorthandPropertyAssignment(Is,nl),ja.equalsToken=ho}else{ws(59);let ho=gc(()=>eI(!0));ja=C.createPropertyAssignment(Is,ho)}return ja.modifiers=kr,ja.questionToken=Hs,ja.exclamationToken=Rs,Hr(Zt(ja,rt),Jt)}function o1(){let rt=Ri(),Jt=t.getTokenStart(),kr=ws(19),Xr=t.hasPrecedingLineBreak(),ui=qf(12,vb,!0);return Zl(19,20,kr,Jt),Zt(ne(ui,Xr),rt)}function q2(){let rt=Kl();ps(!1);let Jt=Ri(),kr=Do(),Xr=Ve(!1);ws(100);let ui=ad(42),Is=ui?1:0,Hs=gD(Xr,eEt)?2:0,Rs=Is&&Hs?Ws(r0):Is?ma(r0):Hs?li(r0):r0(),ja=pC(),ho=Mc(Is|Hs),nl=mh(59,!1),kd=gE(Is|Hs);ps(rt);let rd=C.createFunctionExpression(Xr,ui,Rs,ja,ho,nl,kd);return Hr(Zt(rd,Jt),kr)}function r0(){return cc()?Fs():void 0}function s_(){let rt=Ri();if(ws(105),rc(25)){let Is=Ca();return Zt(C.createMetaProperty(105,Is),rt)}let Jt=Ri(),kr=_h(Jt,S0(),!1),Xr;kr.kind===233&&(Xr=kr.typeArguments,kr=kr.expression),Pt()===29&&Da(ts.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,TJe(Dt,kr));let ui=Pt()===21?IB():void 0;return Zt(De(kr,Xr,ui),rt)}function Up(rt,Jt){let kr=Ri(),Xr=Do(),ui=t.getTokenStart(),Is=ws(19,Jt);if(Is||rt){let Hs=t.hasPrecedingLineBreak(),Rs=qd(1,Im);Zl(19,20,Is,ui);let ja=Hr(Zt(tt(Rs,Hs),kr),Xr);return Pt()===64&&(Da(ts.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),Vs()),ja}else{let Hs=bI();return Hr(Zt(tt(Hs,void 0),kr),Xr)}}function gE(rt,Jt){let kr=Ql();Qi(!!(rt&1));let Xr=Ju();yo(!!(rt&2));let ui=Ao;Ao=!1;let Is=Kl();Is&&ps(!1);let Hs=Up(!!(rt&16),Jt);return Is&&ps(!0),Ao=ui,Qi(kr),yo(Xr),Hs}function AE(){let rt=Ri(),Jt=Do();return ws(27),Hr(Zt(C.createEmptyStatement(),rt),Jt)}function mp(){let rt=Ri(),Jt=Do();ws(101);let kr=t.getTokenStart(),Xr=ws(21),ui=gc(td);Zl(21,22,Xr,kr);let Is=Im(),Hs=rc(93)?Im():void 0;return Hr(Zt(Je(ui,Is,Hs),rt),Jt)}function jh(){let rt=Ri(),Jt=Do();ws(92);let kr=Im();ws(117);let Xr=t.getTokenStart(),ui=ws(21),Is=gc(td);return Zl(21,22,ui,Xr),rc(27),Hr(Zt(C.createDoStatement(kr,Is),rt),Jt)}function v0(){let rt=Ri(),Jt=Do();ws(117);let kr=t.getTokenStart(),Xr=ws(21),ui=gc(td);Zl(21,22,Xr,kr);let Is=Im();return Hr(Zt(ft(ui,Is),rt),Jt)}function cA(){let rt=Ri(),Jt=Do();ws(99);let kr=ad(135);ws(21);let Xr;Pt()!==27&&(Pt()===115||Pt()===121||Pt()===87||Pt()===160&&so(wL)||Pt()===135&&so(sy)?Xr=j(!0):Xr=_g(td));let ui;if(kr?ws(165):rc(165)){let Is=gc(()=>eI(!0));ws(22),ui=Ot(kr,Xr,Is,Im())}else if(rc(103)){let Is=gc(td);ws(22),ui=C.createForInStatement(Xr,Is,Im())}else{ws(27);let Is=Pt()!==27&&Pt()!==22?gc(td):void 0;ws(27);let Hs=Pt()!==22?gc(td):void 0;ws(22),ui=lt(Xr,Is,Hs,Im())}return Hr(Zt(ui,rt),Jt)}function Iu(rt){let Jt=Ri(),kr=Do();ws(rt===252?83:88);let Xr=bg()?void 0:Oa();YA();let ui=rt===252?C.createBreakStatement(Xr):C.createContinueStatement(Xr);return Hr(Zt(ui,Jt),kr)}function Kp(){let rt=Ri(),Jt=Do();ws(107);let kr=bg()?void 0:gc(td);return YA(),Hr(Zt(C.createReturnStatement(kr),rt),Jt)}function IC(){let rt=Ri(),Jt=Do();ws(118);let kr=t.getTokenStart(),Xr=ws(21),ui=gc(td);Zl(21,22,Xr,kr);let Is=Qa(67108864,Im);return Hr(Zt(C.createWithStatement(ui,Is),rt),Jt)}function dE(){let rt=Ri(),Jt=Do();ws(84);let kr=gc(td);ws(59);let Xr=qd(3,Im);return Hr(Zt(C.createCaseClause(kr,Xr),rt),Jt)}function nh(){let rt=Ri();ws(90),ws(59);let Jt=qd(3,Im);return Zt(C.createDefaultClause(Jt),rt)}function Mf(){return Pt()===84?dE():nh()}function Mo(){let rt=Ri();ws(19);let Jt=qd(2,Mf);return ws(20),Zt(C.createCaseBlock(Jt),rt)}function dp(){let rt=Ri(),Jt=Do();ws(109),ws(21);let kr=gc(td);ws(22);let Xr=Mo();return Hr(Zt(C.createSwitchStatement(kr,Xr),rt),Jt)}function fF(){let rt=Ri(),Jt=Do();ws(111);let kr=t.hasPrecedingLineBreak()?void 0:gc(td);return kr===void 0&&(zt++,kr=Zt(F(""),Ri())),Yp()||Ma(kr),Hr(Zt(C.createThrowStatement(kr),rt),Jt)}function IF(){let rt=Ri(),Jt=Do();ws(113);let kr=Up(!1),Xr=Pt()===85?pE():void 0,ui;return(!Xr||Pt()===98)&&(ws(98,ts.catch_or_finally_expected),ui=Up(!1)),Hr(Zt(C.createTryStatement(kr,Xr,ui),rt),Jt)}function pE(){let rt=Ri();ws(85);let Jt;rc(21)?(Jt=Od(),ws(22)):Jt=void 0;let kr=Up(!1);return Zt(C.createCatchClause(Jt,kr),rt)}function OT(){let rt=Ri(),Jt=Do();return ws(89),YA(),Hr(Zt(C.createDebuggerStatement(),rt),Jt)}function kp(){let rt=Ri(),Jt=Do(),kr,Xr=Pt()===21,ui=gc(td);return t_(ui)&&rc(59)?kr=C.createLabeledStatement(ui,Im()):(Yp()||Ma(ui),kr=Le(ui),Xr&&(Jt=!1)),Hr(Zt(kr,rt),Jt)}function Fm(){return Vs(),X1(Pt())&&!t.hasPrecedingLineBreak()}function xp(){return Vs(),Pt()===86&&!t.hasPrecedingLineBreak()}function i2(){return Vs(),Pt()===100&&!t.hasPrecedingLineBreak()}function Ro(){return Vs(),(X1(Pt())||Pt()===9||Pt()===10||Pt()===11)&&!t.hasPrecedingLineBreak()}function fE(){for(;;)switch(Pt()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return Pu();case 135:return Cp();case 120:case 156:return D_();case 144:case 145:return tI();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let rt=Pt();if(Vs(),t.hasPrecedingLineBreak())return!1;if(rt===138&&Pt()===156)return!0;continue;case 162:return Vs(),Pt()===19||Pt()===80||Pt()===95;case 102:return Vs(),Pt()===11||Pt()===42||Pt()===19||X1(Pt());case 95:let Jt=Vs();if(Jt===156&&(Jt=so(Vs)),Jt===64||Jt===42||Jt===19||Jt===90||Jt===130||Jt===60)return!0;continue;case 126:Vs();continue;default:return!1}}function hB(){return so(fE)}function Xc(){switch(Pt()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return hB()||so(ki);case 87:case 95:return hB();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return hB()||!so(Fm);default:return rh()}}function su(){return Vs(),cc()||Pt()===19||Pt()===23}function IE(){return so(su)}function wL(){return eN(!0)}function eN(rt){return Vs(),rt&&Pt()===165?!1:(cc()||Pt()===19)&&!t.hasPrecedingLineBreak()}function Pu(){return so(eN)}function sy(rt){return Vs()===160?eN(rt):!1}function Cp(){return so(sy)}function Im(){switch(Pt()){case 27:return AE();case 19:return Up(!1);case 115:return md(Ri(),Do(),void 0);case 121:if(IE())return md(Ri(),Do(),void 0);break;case 135:if(Cp())return md(Ri(),Do(),void 0);break;case 160:if(Pu())return md(Ri(),Do(),void 0);break;case 100:return _B(Ri(),Do(),void 0);case 86:return Vi(Ri(),Do(),void 0);case 101:return mp();case 92:return jh();case 117:return v0();case 99:return cA();case 88:return Iu(251);case 83:return Iu(252);case 107:return Kp();case 118:return IC();case 109:return dp();case 111:return fF();case 113:case 85:case 98:return IF();case 89:return OT();case 60:return o_();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(hB())return o_();break}return kp()}function $2(rt){return rt.kind===138}function o_(){let rt=Ri(),Jt=Do(),kr=Ve(!0);if(gD(kr,$2)){let Xr=mB(rt);if(Xr)return Xr;for(let ui of kr)ui.flags|=33554432;return Qa(33554432,()=>PT(rt,Jt,kr))}else return PT(rt,Jt,kr)}function mB(rt){return Qa(33554432,()=>{let Jt=Qp(Fn,rt);if(Jt)return dC(Jt)})}function PT(rt,Jt,kr){switch(Pt()){case 115:case 121:case 87:case 160:case 135:return md(rt,Jt,kr);case 100:return _B(rt,Jt,kr);case 86:return Vi(rt,Jt,kr);case 120:return Wo(rt,Jt,kr);case 156:return ec(rt,Jt,kr);case 94:return dc(rt,Jt,kr);case 162:case 144:case 145:return rI(rt,Jt,kr);case 102:return s3(rt,Jt,kr);case 95:switch(Vs(),Pt()){case 90:case 64:return IY(rt,Jt,kr);case 130:return Yu(rt,Jt,kr);default:return oy(rt,Jt,kr)}default:if(kr){let Xr=bn(282,!0,ts.Declaration_expected);return WNr(Xr,rt),Xr.modifiers=kr,Xr}return}}function Sx(){return Vs()===11}function CB(){return Vs(),Pt()===161||Pt()===64}function tI(){return Vs(),!t.hasPrecedingLineBreak()&&(Xs()||Pt()===11)}function zh(rt,Jt){if(Pt()!==19){if(rt&4){Pf();return}if(bg()){YA();return}}return gE(rt,Jt)}function nv(){let rt=Ri();if(Pt()===28)return Zt(C.createOmittedExpression(),rt);let Jt=ad(26),kr=Hf(),Xr=Km();return Zt(C.createBindingElement(Jt,void 0,kr,Xr),rt)}function Bb(){let rt=Ri(),Jt=ad(26),kr=cc(),Xr=ff(),ui;kr&&Pt()!==59?(ui=Xr,Xr=void 0):(ws(59),ui=Hf());let Is=Km();return Zt(C.createBindingElement(Jt,Xr,ui,Is),rt)}function _p(){let rt=Ri();ws(19);let Jt=gc(()=>qf(9,Bb));return ws(20),Zt(C.createObjectBindingPattern(Jt),rt)}function s2(){let rt=Ri();ws(23);let Jt=gc(()=>qf(10,nv));return ws(24),Zt(C.createArrayBindingPattern(Jt),rt)}function a1(){return Pt()===19||Pt()===23||Pt()===81||cc()}function Hf(rt){return Pt()===23?s2():Pt()===19?_p():Fs(rt)}function hE(){return Od(!0)}function Od(rt){let Jt=Ri(),kr=Do(),Xr=Hf(ts.Private_identifiers_are_not_allowed_in_variable_declarations),ui;rt&&Xr.kind===80&&Pt()===54&&!t.hasPrecedingLineBreak()&&(ui=VA());let Is=Ny(),Hs=t1(Pt())?void 0:Km(),Rs=Er(Xr,ui,Is,Hs);return Hr(Zt(Rs,Jt),kr)}function j(rt){let Jt=Ri(),kr=0;switch(Pt()){case 115:break;case 121:kr|=1;break;case 87:kr|=2;break;case 160:kr|=4;break;case 135:Zo.assert(Cp()),kr|=6,Vs();break;default:Zo.fail()}Vs();let Xr;if(Pt()===165&&so(Z))Xr=bI();else{let ui=Oc();Pr(rt),Xr=qf(8,rt?Od:hE),Pr(ui)}return Zt(Sr(Xr,kr),Jt)}function Z(){return rf()&&Vs()===22}function md(rt,Jt,kr){let Xr=j(!1);YA();let ui=ze(kr,Xr);return Hr(Zt(ui,rt),Jt)}function _B(rt,Jt,kr){let Xr=Ju(),ui=bP(kr);ws(100);let Is=ad(42),Hs=ui&2048?r0():Fs(),Rs=Is?1:0,ja=ui&1024?2:0,ho=pC();ui&32&&yo(!0);let nl=Mc(Rs|ja),kd=mh(59,!1),rd=zh(Rs|ja,ts.or_expected);yo(Xr);let Mg=C.createFunctionDeclaration(kr,Is,Hs,ho,nl,kd,rd);return Hr(Zt(Mg,rt),Jt)}function iv(){if(Pt()===137)return ws(137);if(Pt()===11&&so(Vs)===21)return Ki(()=>{let rt=ra();return rt.text==="constructor"?rt:void 0})}function ky(rt,Jt,kr){return Ki(()=>{if(iv()){let Xr=pC(),ui=Mc(0),Is=mh(59,!1),Hs=zh(0,ts.or_expected),Rs=C.createConstructorDeclaration(kr,ui,Hs);return Rs.typeParameters=Xr,Rs.type=Is,Hr(Zt(Rs,rt),Jt)}})}function wb(rt,Jt,kr,Xr,ui,Is,Hs,Rs){let ja=Xr?1:0,ho=gD(kr,eEt)?2:0,nl=pC(),kd=Mc(ja|ho),rd=mh(59,!1),Mg=zh(ja|ho,Rs),Gh=C.createMethodDeclaration(kr,Xr,ui,Is,nl,kd,rd,Mg);return Gh.exclamationToken=Hs,Hr(Zt(Gh,rt),Jt)}function VD(rt,Jt,kr,Xr,ui){let Is=!ui&&!t.hasPrecedingLineBreak()?ad(54):void 0,Hs=Ny(),Rs=bo(90112,Km);Nf(Xr,Hs,Rs);let ja=C.createPropertyDeclaration(kr,Xr,ui||Is,Hs,Rs);return Hr(Zt(ja,rt),Jt)}function yB(rt,Jt,kr){let Xr=ad(42),ui=ff(),Is=ad(58);return Xr||Pt()===21||Pt()===30?wb(rt,Jt,kr,Xr,ui,Is,void 0,ts.or_expected):VD(rt,Jt,kr,ui,Is)}function Tb(rt,Jt,kr,Xr,ui){let Is=ff(),Hs=pC(),Rs=Mc(0),ja=mh(59,!1),ho=zh(ui),nl=Xr===177?C.createGetAccessorDeclaration(kr,Is,Rs,ja,ho):C.createSetAccessorDeclaration(kr,Is,Rs,ho);return nl.typeParameters=Hs,IEt(nl)&&(nl.type=ja),Hr(Zt(nl,rt),Jt)}function TL(){let rt;if(Pt()===60)return!0;for(;Wee(Pt());){if(rt=Pt(),tza(rt))return!0;Vs()}if(Pt()===42||(Dp()&&(rt=Pt(),Vs()),Pt()===23))return!0;if(rt!==void 0){if(!xce(rt)||rt===153||rt===139)return!0;switch(Pt()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return bg()}}return!1}function hF(rt,Jt,kr){rl(126);let Xr=x(),ui=Hr(Zt(C.createClassStaticBlockDeclaration(Xr),rt),Jt);return ui.modifiers=kr,ui}function x(){let rt=Ql(),Jt=Ju();Qi(!1),yo(!0);let kr=Up(!1);return Qi(rt),yo(Jt),kr}function L(){if(Ju()&&Pt()===135){let rt=Ri(),Jt=Oa(ts.Expression_expected);Vs();let kr=_h(rt,Jt,!0);return s1(rt,kr)}return r1()}function te(){let rt=Ri();if(!rc(60))return;let Jt=vu(L);return Zt(C.createDecorator(Jt),rt)}function Re(rt,Jt,kr){let Xr=Ri(),ui=Pt();if(Pt()===87&&Jt){if(!Ki(Hl))return}else if(kr&&Pt()===126&&so(tS)||rt&&Pt()===126||!aa())return;return Zt(J(ui),Xr)}function Ve(rt,Jt,kr){let Xr=Ri(),ui,Is,Hs,Rs=!1,ja=!1,ho=!1;if(rt&&Pt()===60)for(;Is=te();)ui=SV(ui,Is);for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=SV(ui,Hs),ja=!0;if(ja&&rt&&Pt()===60)for(;Is=te();)ui=SV(ui,Is),ho=!0;if(ho)for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=SV(ui,Hs);return ui&&vr(ui,Xr)}function It(){let rt;if(Pt()===134){let Jt=Ri();Vs();let kr=Zt(J(134),Jt);rt=vr([kr],Jt)}return rt}function dr(){let rt=Ri(),Jt=Do();if(Pt()===27)return Vs(),Hr(Zt(C.createSemicolonClassElement(),rt),Jt);let kr=Ve(!0,!0,!0);if(Pt()===126&&so(tS))return hF(rt,Jt,kr);if(Ea(139))return Tb(rt,Jt,kr,177,0);if(Ea(153))return Tb(rt,Jt,kr,178,0);if(Pt()===137||Pt()===11){let Xr=ky(rt,Jt,kr);if(Xr)return Xr}if(tA())return jS(rt,Jt,kr);if(X1(Pt())||Pt()===11||Pt()===9||Pt()===10||Pt()===42||Pt()===23)if(gD(kr,$2)){for(let Xr of kr)Xr.flags|=33554432;return Qa(33554432,()=>yB(rt,Jt,kr))}else return yB(rt,Jt,kr);if(kr){let Xr=bn(80,!0,ts.Declaration_expected);return VD(rt,Jt,kr,Xr,void 0)}return Zo.fail("Should not have attempted to parse class member declaration.")}function Ur(){let rt=Ri(),Jt=Do(),kr=Ve(!0);if(Pt()===86)return Ta(rt,Jt,kr,231);let Xr=bn(282,!0,ts.Expression_expected);return WNr(Xr,rt),Xr.modifiers=kr,Xr}function mi(){return Ta(Ri(),Do(),void 0,231)}function Vi(rt,Jt,kr){return Ta(rt,Jt,kr,263)}function Ta(rt,Jt,kr,Xr){let ui=Ju();ws(86);let Is=El(),Hs=pC();gD(kr,s$a)&&yo(!0);let Rs=Pg(),ja;ws(19)?(ja=Ci(),ws(20)):ja=bI(),yo(ui);let ho=Xr===263?C.createClassDeclaration(kr,Is,Hs,Rs,ja):C.createClassExpression(kr,Is,Hs,Rs,ja);return Hr(Zt(ho,rt),Jt)}function El(){return cc()&&!Ho()?oa(cc()):void 0}function Ho(){return Pt()===119&&so(op)}function Pg(){if(rn())return qd(22,lA)}function lA(){let rt=Ri(),Jt=Pt();Zo.assert(Jt===96||Jt===119),Vs();let kr=qf(7,ih);return Zt(C.createHeritageClause(Jt,kr),rt)}function ih(){let rt=Ri(),Jt=r1();if(Jt.kind===233)return Jt;let kr=xn();return Zt(C.createExpressionWithTypeArguments(Jt,kr),rt)}function xn(){return Pt()===30?aE(20,nf,30,32):void 0}function rn(){return Pt()===96||Pt()===119}function Ci(){return qd(5,dr)}function Wo(rt,Jt,kr){ws(120);let Xr=Oa(),ui=pC(),Is=Pg(),Hs=hd(),Rs=C.createInterfaceDeclaration(kr,Xr,ui,Is,Hs);return Hr(Zt(Rs,rt),Jt)}function ec(rt,Jt,kr){ws(156),t.hasPrecedingLineBreak()&&Da(ts.Line_break_not_permitted_here);let Xr=Oa(),ui=pC();ws(64);let Is=Pt()===141&&Ki(zS)||nf();YA();let Hs=C.createTypeAliasDeclaration(kr,Xr,ui,Is);return Hr(Zt(Hs,rt),Jt)}function Ra(){let rt=Ri(),Jt=Do(),kr=ff(),Xr=gc(Km);return Hr(Zt(C.createEnumMember(kr,Xr),rt),Jt)}function dc(rt,Jt,kr){ws(94);let Xr=Oa(),ui;ws(19)?(ui=Xa(()=>qf(6,Ra)),ws(20)):ui=bI();let Is=C.createEnumDeclaration(kr,Xr,ui);return Hr(Zt(Is,rt),Jt)}function hu(){let rt=Ri(),Jt;return ws(19)?(Jt=qd(1,Im),ws(20)):Jt=bI(),Zt(C.createModuleBlock(Jt),rt)}function ml(rt,Jt,kr,Xr){let ui=Xr&32,Is=Xr&8?Ca():Oa(),Hs=rc(25)?ml(Ri(),!1,void 0,8|ui):hu(),Rs=C.createModuleDeclaration(kr,Is,Hs,Xr);return Hr(Zt(Rs,rt),Jt)}function wl(rt,Jt,kr){let Xr=0,ui;Pt()===162?(ui=Oa(),Xr|=2048):(ui=ra(),ui.text=ls(ui.text));let Is;Pt()===19?Is=hu():YA();let Hs=C.createModuleDeclaration(kr,ui,Is,Xr);return Hr(Zt(Hs,rt),Jt)}function rI(rt,Jt,kr){let Xr=0;if(Pt()===162)return wl(rt,Jt,kr);if(rc(145))Xr|=32;else if(ws(144),Pt()===11)return wl(rt,Jt,kr);return ml(rt,Jt,kr,Xr)}function eS(){return Pt()===149&&so(vx)}function vx(){return Vs()===21}function tS(){return Vs()===19}function sv(){return Vs()===44}function Yu(rt,Jt,kr){ws(130),ws(145);let Xr=Oa();YA();let ui=C.createNamespaceExportDeclaration(Xr);return ui.modifiers=kr,Hr(Zt(ui,rt),Jt)}function s3(rt,Jt,kr){ws(102);let Xr=t.getTokenFullStart(),ui;Xs()&&(ui=Oa());let Is=!1;if(ui?.escapedText==="type"&&(Pt()!==161||Xs()&&so(CB))&&(Xs()||fY())&&(Is=!0,ui=Xs()?Oa():void 0),ui&&!MT())return WD(rt,Jt,kr,ui,Is);let Hs=bB(ui,Xr,Is),Rs=OD(),ja=Ew();YA();let ho=C.createImportDeclaration(kr,Hs,Rs,ja);return Hr(Zt(ho,rt),Jt)}function bB(rt,Jt,kr,Xr=!1){let ui;return(rt||Pt()===42||Pt()===19)&&(ui=CF(rt,Jt,kr,Xr),ws(161)),ui}function Ew(){let rt=Pt();if((rt===118||rt===132)&&!t.hasPrecedingLineBreak())return o3(rt)}function mF(){let rt=Ri(),Jt=X1(Pt())?Ca():Bl(11);ws(59);let kr=eI(!0);return Zt(C.createImportAttribute(Jt,kr),rt)}function o3(rt,Jt){let kr=Ri();Jt||ws(rt);let Xr=t.getTokenStart();if(ws(19)){let ui=t.hasPrecedingLineBreak(),Is=qf(24,mF,!0);if(!ws(20)){let Hs=tCe(lr);Hs&&Hs.code===ts._0_expected.code&&zbt(Hs,LNe(jt,Dt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Zt(C.createImportAttributes(Is,ui,rt),kr)}else{let ui=vr([],Ri(),void 0,!1);return Zt(C.createImportAttributes(ui,!1,rt),kr)}}function fY(){return Pt()===42||Pt()===19}function MT(){return Pt()===28||Pt()===161}function WD(rt,Jt,kr,Xr,ui){ws(64);let Is=RL();YA();let Hs=C.createImportEqualsDeclaration(kr,ui,Xr,Is);return Hr(Zt(Hs,rt),Jt)}function CF(rt,Jt,kr,Xr){let ui;return(!rt||rc(28))&&(Xr&&t.setSkipJsDocLeadingAsterisks(!0),ui=Pt()===42?mE():Sd(275),Xr&&t.setSkipJsDocLeadingAsterisks(!1)),Zt(C.createImportClause(kr,rt,ui),Jt)}function RL(){return eS()?hf():se(!1)}function hf(){let rt=Ri();ws(149),ws(21);let Jt=OD();return ws(22),Zt(C.createExternalModuleReference(Jt),rt)}function OD(){if(Pt()===11){let rt=ra();return rt.text=ls(rt.text),rt}else return td()}function mE(){let rt=Ri();ws(42),ws(130);let Jt=Oa();return Zt(C.createNamespaceImport(Jt),rt)}function o2(){return X1(Pt())||Pt()===11}function EB(rt){return Pt()===11?ra():rt()}function Sd(rt){let Jt=Ri(),kr=rt===275?C.createNamedImports(aE(23,qh,19,20)):C.createNamedExports(aE(23,c1,19,20));return Zt(kr,Jt)}function c1(){let rt=Do();return Hr(Rb(281),rt)}function qh(){return Rb(276)}function Rb(rt){let Jt=Ri(),kr=xce(Pt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Is=!1,Hs,Rs=!0,ja=EB(Ca);if(ja.kind===80&&ja.escapedText==="type")if(Pt()===130){let kd=Ca();if(Pt()===130){let rd=Ca();o2()?(Is=!0,Hs=kd,ja=EB(nl),Rs=!1):(Hs=ja,ja=rd,Rs=!1)}else o2()?(Hs=ja,Rs=!1,ja=EB(nl)):(Is=!0,ja=kd)}else o2()&&(Is=!0,ja=EB(nl));Rs&&Pt()===130&&(Hs=ja,ws(130),ja=EB(nl)),rt===276&&(ja.kind!==80?(yg(B6(Dt,ja.pos),ja.end,ts.Identifier_expected),ja=Lce(bn(80,!1),ja.pos,ja.pos)):kr&&yg(Xr,ui,ts.Identifier_expected));let ho=rt===276?C.createImportSpecifier(Is,Hs,ja):C.createExportSpecifier(Is,Hs,ja);return Zt(ho,Jt);function nl(){return kr=xce(Pt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Ca()}}function Ku(rt){return Zt(C.createNamespaceExport(EB(Ca)),rt)}function oy(rt,Jt,kr){let Xr=Ju();yo(!0);let ui,Is,Hs,Rs=rc(156),ja=Ri();rc(42)?(rc(130)&&(ui=Ku(ja)),ws(161),Is=OD()):(ui=Sd(279),(Pt()===161||Pt()===11&&!t.hasPrecedingLineBreak())&&(ws(161),Is=OD()));let ho=Pt();Is&&(ho===118||ho===132)&&!t.hasPrecedingLineBreak()&&(Hs=o3(ho)),YA(),yo(Xr);let nl=C.createExportDeclaration(kr,Rs,ui,Is,Hs);return Hr(Zt(nl,rt),Jt)}function IY(rt,Jt,kr){let Xr=Ju();yo(!0);let ui;rc(64)?ui=!0:ws(90);let Is=eI(!0);YA(),yo(Xr);let Hs=C.createExportAssignment(kr,ui,Is);return Hr(Zt(Hs,rt),Jt)}let hY;(rt=>{rt[rt.SourceElements=0]="SourceElements",rt[rt.BlockStatements=1]="BlockStatements",rt[rt.SwitchClauses=2]="SwitchClauses",rt[rt.SwitchClauseStatements=3]="SwitchClauseStatements",rt[rt.TypeMembers=4]="TypeMembers",rt[rt.ClassMembers=5]="ClassMembers",rt[rt.EnumMembers=6]="EnumMembers",rt[rt.HeritageClauseElement=7]="HeritageClauseElement",rt[rt.VariableDeclarations=8]="VariableDeclarations",rt[rt.ObjectBindingElements=9]="ObjectBindingElements",rt[rt.ArrayBindingElements=10]="ArrayBindingElements",rt[rt.ArgumentExpressions=11]="ArgumentExpressions",rt[rt.ObjectLiteralMembers=12]="ObjectLiteralMembers",rt[rt.JsxAttributes=13]="JsxAttributes",rt[rt.JsxChildren=14]="JsxChildren",rt[rt.ArrayLiteralMembers=15]="ArrayLiteralMembers",rt[rt.Parameters=16]="Parameters",rt[rt.JSDocParameters=17]="JSDocParameters",rt[rt.RestProperties=18]="RestProperties",rt[rt.TypeParameters=19]="TypeParameters",rt[rt.TypeArguments=20]="TypeArguments",rt[rt.TupleElementTypes=21]="TupleElementTypes",rt[rt.HeritageClauses=22]="HeritageClauses",rt[rt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",rt[rt.ImportAttributes=24]="ImportAttributes",rt[rt.JSDocComment=25]="JSDocComment",rt[rt.Count=26]="Count"})(hY||(hY={}));let tN;(rt=>{rt[rt.False=0]="False",rt[rt.True=1]="True",rt[rt.Unknown=2]="Unknown"})(tN||(tN={}));let mY;(rt=>{function Jt(ho,nl,kd){Ya("file.js",ho,99,void 0,1,0),t.setText(ho,nl,kd),qr=t.scan();let rd=kr(),Mg=zr("file.js",99,1,!1,[],J(1),0,$Ne),Gh=Jme(lr,Mg);return cr&&(Mg.jsDocDiagnostics=Jme(cr,Mg)),Gc(),rd?{jsDocTypeExpression:rd,diagnostics:Gh}:void 0}rt.parseJSDocTypeExpressionForTests=Jt;function kr(ho){let nl=Ri(),kd=(ho?rc:ws)(19),rd=Qa(16777216,US);(!ho||kd)&&Am(20);let Mg=C.createJSDocTypeExpression(rd);return Ft(Mg),Zt(Mg,nl)}rt.parseJSDocTypeExpression=kr;function Xr(){let ho=Ri(),nl=rc(19),kd=Ri(),rd=se(!1);for(;Pt()===81;)$i(),Uu(),rd=Zt(C.createJSDocMemberName(rd,Oa()),kd);nl&&Am(20);let Mg=C.createJSDocNameReference(rd);return Ft(Mg),Zt(Mg,ho)}rt.parseJSDocNameReference=Xr;function ui(ho,nl,kd){Ya("",ho,99,void 0,1,0);let rd=Qa(16777216,()=>ja(nl,kd)),Mg=Jme(lr,{languageVariant:0,text:ho});return Gc(),rd?{jsDoc:rd,diagnostics:Mg}:void 0}rt.parseIsolatedJSDocComment=ui;function Is(ho,nl,kd){let rd=qr,Mg=lr.length,Gh=Vr,l1=Qa(16777216,()=>ja(nl,kd));return SDr(l1,ho),Hi&524288&&(cr||(cr=[]),BV(cr,lr,Mg)),qr=rd,lr.length=Mg,Vr=Gh,l1}rt.parseJSDocComment=Is;let Hs;(ho=>{ho[ho.BeginningOfLine=0]="BeginningOfLine",ho[ho.SawAsterisk=1]="SawAsterisk",ho[ho.SavingComments=2]="SavingComments",ho[ho.SavingBackticks=3]="SavingBackticks"})(Hs||(Hs={}));let Rs;(ho=>{ho[ho.Property=1]="Property",ho[ho.Parameter=2]="Parameter",ho[ho.CallbackParameter=4]="CallbackParameter"})(Rs||(Rs={}));function ja(ho=0,nl){let kd=Dt,rd=nl===void 0?kd.length:ho+nl;if(nl=rd-ho,Zo.assert(ho>=0),Zo.assert(ho<=rd),Zo.assert(rd<=kd.length),!Eec(kd,ho))return;let Mg,Gh,l1,Nb,rS,CE=[],rN=[],a3=Fn;Fn|=1<<25;let hA=t.scanRange(ho+3,nl-5,vI);return Fn=a3,hA;function vI(){let Es=1,Aa,ha=ho-(kd.lastIndexOf(` -`,ho)+1)+4;function Ua(Pd){Aa||(Aa=ha),CE.push(Pd),ha+=Pd.length}for(Uu();wx(5););wx(4)&&(Es=0,ha=0);e:for(;;){switch(Pt()){case 60:RA(CE),rS||(rS=Ri()),Hc(Eo(ha)),Es=0,Aa=void 0;break;case 4:CE.push(t.getTokenText()),Es=0,ha=0;break;case 42:let Pd=t.getTokenText();Es===1?(Es=2,Ua(Pd)):(Zo.assert(Es===0),Es=1,ha+=Pd.length);break;case 5:Zo.assert(Es!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let $h=t.getTokenText();Aa!==void 0&&ha+$h.length>Aa&&CE.push($h.slice(Aa-ha)),ha+=$h.length;break;case 1:break e;case 82:Es=2,Ua(t.getTokenValue());break;case 19:Es=2;let a2=t.getTokenFullStart(),u1=t.getTokenEnd()-1,kb=We(u1);if(kb){Nb||$d(CE),rN.push(Zt(C.createJSDocText(CE.join("")),Nb??ho,a2)),rN.push(kb),CE=[],Nb=t.getTokenEnd();break}default:Es=2,Ua(t.getTokenText());break}Es===2?Yn(!1):Uu()}let wc=CE.join("").trimEnd();rN.length&&wc.length&&rN.push(Zt(C.createJSDocText(wc),Nb??ho,rS)),rN.length&&Mg&&Zo.assertIsDefined(rS,"having parsed tags implies that the end of the comment span should be set");let mA=Mg&&vr(Mg,Gh,l1);return Zt(C.createJSDocComment(rN.length?vr(rN,ho,rS):wc.length?wc:void 0,mA),ho,rd)}function $d(Es){for(;Es.length&&(Es[0]===` -`||Es[0]==="\r");)Es.shift()}function RA(Es){for(;Es.length;){let Aa=Es[Es.length-1].trimEnd();if(Aa==="")Es.pop();else if(Aa.length$h&&(Ua.push(lv.slice($h-Es)),Pd=2),Es+=lv.length;break;case 19:Pd=2;let pW=t.getTokenFullStart(),yF=t.getTokenEnd()-1,uv=We(yF);uv?(wc.push(Zt(C.createJSDocText(Ua.join("")),mA??ha,pW)),wc.push(uv),Ua=[],mA=t.getTokenEnd()):a2(t.getTokenText());break;case 62:Pd===3?Pd=2:Pd=3,a2(t.getTokenText());break;case 82:Pd!==3&&(Pd=2),a2(t.getTokenValue());break;case 42:if(Pd===0){Pd=1,Es+=1;break}default:Pd!==3&&(Pd=2),a2(t.getTokenText());break}Pd===2||Pd===3?u1=Yn(Pd===3):u1=Uu()}$d(Ua);let kb=Ua.join("").trimEnd();if(wc.length)return kb.length&&wc.push(Zt(C.createJSDocText(kb),mA??ha)),vr(wc,ha,t.getTokenEnd());if(kb.length)return kb}function We(Es){let Aa=Ki(Rr);if(!Aa)return;Uu(),ay();let ha=_t(),Ua=[];for(;Pt()!==20&&Pt()!==4&&Pt()!==1;)Ua.push(t.getTokenText()),Uu();let wc=Aa==="link"?C.createJSDocLink:Aa==="linkcode"?C.createJSDocLinkCode:C.createJSDocLinkPlain;return Zt(wc(ha,Ua.join("")),Es,t.getTokenEnd())}function _t(){if(X1(Pt())){let Es=Ri(),Aa=Ca();for(;rc(25);)Aa=Zt(C.createQualifiedName(Aa,Pt()===81?bn(80,!1):Ca()),Es);for(;Pt()===81;)$i(),Uu(),Aa=Zt(C.createJSDocMemberName(Aa,Oa()),Es);return Aa}}function Rr(){if(nS(),Pt()===19&&Uu()===60&&X1(Uu())){let Es=t.getTokenValue();if(ai(Es))return Es}}function ai(Es){return Es==="link"||Es==="linkcode"||Es==="linkplain"}function Lo(Es,Aa,ha,Ua){return Zt(C.createJSDocUnknownTag(Aa,z(Es,Ri(),ha,Ua)),Es)}function Hc(Es){Es&&(Mg?Mg.push(Es):(Mg=[Es],Gh=Es.pos),l1=Es.end)}function ld(){return nS(),Pt()===19?kr():void 0}function hm(){let Es=wx(23);Es&&ay();let Aa=wx(62),ha=Gre();return Aa&&LA(62),Es&&(ay(),ad(64)&&td(),ws(24)),{name:ha,isBracketed:Es}}function ov(Es){switch(Es.kind){case 151:return!0;case 188:return ov(Es.elementType);default:return lBi(Es)&&t_(Es.typeName)&&Es.typeName.escapedText==="Object"&&!Es.typeArguments}}function av(Es,Aa,ha,Ua){let wc=ld(),mA=!wc;nS();let{name:Pd,isBracketed:$h}=hm(),a2=nS();mA&&!so(Rr)&&(wc=ld());let u1=z(Es,Ri(),Ua,a2),kb=Bx(wc,Pd,ha,Ua);kb&&(wc=kb,mA=!0);let lv=ha===1?C.createJSDocPropertyTag(Aa,Pd,$h,wc,mA,u1):C.createJSDocParameterTag(Aa,Pd,$h,wc,mA,u1);return Zt(lv,Es)}function Bx(Es,Aa,ha,Ua){if(Es&&ov(Es.type)){let wc=Ri(),mA,Pd;for(;mA=Ki(()=>l3(ha,Ua,Aa));)mA.kind===341||mA.kind===348?Pd=SV(Pd,mA):mA.kind===345&&_I(mA.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Pd){let $h=Zt(C.createJSDocTypeLiteral(Pd,Es.type.kind===188),wc);return Zt(C.createJSDocTypeExpression($h),wc)}}}function xd(Es,Aa,ha,Ua){gD(Mg,cec)&&yg(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,GJe(Aa.escapedText));let wc=ld();return Zt(C.createJSDocReturnTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function ji(Es,Aa,ha,Ua){gD(Mg,RDr)&&yg(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,GJe(Aa.escapedText));let wc=kr(!0),mA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocTypeTag(Aa,wc,mA),Es)}function NL(Es,Aa,ha,Ua){let wc=Pt()===23||so(()=>Uu()===60&&X1(Uu())&&ai(t.getTokenValue()))?void 0:Xr(),mA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSeeTag(Aa,wc,mA),Es)}function eu(Es,Aa,ha,Ua){let wc=ld(),mA=z(Es,Ri(),ha,Ua);return Zt(C.createJSDocThrowsTag(Aa,wc,mA),Es)}function pp(Es,Aa,ha,Ua){let wc=Ri(),mA=Bc(),Pd=t.getTokenFullStart(),$h=z(Es,Pd,ha,Ua);$h||(Pd=t.getTokenFullStart());let a2=typeof $h!="string"?vr(tDr([Zt(mA,wc,Pd)],$h),wc):mA.text+$h;return Zt(C.createJSDocAuthorTag(Aa,a2),Es)}function Bc(){let Es=[],Aa=!1,ha=t.getToken();for(;ha!==1&&ha!==4;){if(ha===30)Aa=!0;else{if(ha===60&&!Aa)break;if(ha===32&&Aa){Es.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}Es.push(t.getTokenText()),ha=Uu()}return C.createJSDocText(Es.join(""))}function Vo(Es,Aa,ha,Ua){let wc=CY();return Zt(C.createJSDocImplementsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function cv(Es,Aa,ha,Ua){let wc=CY();return Zt(C.createJSDocAugmentsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function of(Es,Aa,ha,Ua){let wc=kr(!1),mA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSatisfiesTag(Aa,wc,mA),Es)}function a7(Es,Aa,ha,Ua){let wc=t.getTokenFullStart(),mA;Xs()&&(mA=Oa());let Pd=bB(mA,wc,!0,!0),$h=OD(),a2=Ew(),u1=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocImportTag(Aa,Pd,$h,a2,u1),Es)}function CY(){let Es=rc(19),Aa=Ri(),ha=c3();t.setSkipJsDocLeadingAsterisks(!0);let Ua=xn();t.setSkipJsDocLeadingAsterisks(!1);let wc=C.createExpressionWithTypeArguments(ha,Ua),mA=Zt(wc,Aa);return Es&&ws(20),mA}function c3(){let Es=Ri(),Aa=Tx();for(;rc(25);){let ha=Tx();Aa=Zt(ce(Aa,ha),Es)}return Aa}function _F(Es,Aa,ha,Ua,wc){return Zt(Aa(ha,z(Es,Ri(),Ua,wc)),Es)}function sh(Es,Aa,ha,Ua){let wc=kr(!0);return ay(),Zt(C.createJSDocThisTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function Sw(Es,Aa,ha,Ua){let wc=kr(!0);return ay(),Zt(C.createJSDocEnumTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function fl(Es,Aa,ha,Ua){let wc=ld();nS();let mA=SB();ay();let Pd=ye(ha),$h;if(!wc||ov(wc.type)){let u1,kb,lv,pW=!1;for(;(u1=Ki(()=>_Y(ha)))&&u1.kind!==345;)if(pW=!0,u1.kind===344)if(kb){let yF=Da(ts.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);yF&&zbt(yF,LNe(jt,Dt,0,0,ts.The_tag_was_first_specified_here));break}else kb=u1;else lv=SV(lv,u1);if(pW){let yF=wc&&wc.type.kind===188,uv=C.createJSDocTypeLiteral(lv,yF);wc=kb&&kb.typeExpression&&!ov(kb.typeExpression.type)?kb.typeExpression:Zt(uv,Es),$h=wc.end}}$h=$h||Pd!==void 0?Ri():(mA??wc??Aa).end,Pd||(Pd=z(Es,$h,ha,Ua));let a2=C.createJSDocTypedefTag(Aa,wc,mA,Pd);return Zt(a2,Es,$h)}function SB(Es){let Aa=t.getTokenStart();if(!X1(Pt()))return;let ha=Tx();if(rc(25)){let Ua=SB(!0),wc=C.createModuleDeclaration(void 0,ha,Ua,Es?8:void 0);return Zt(wc,Aa)}return Es&&(ha.flags|=4096),ha}function Db(Es){let Aa=Ri(),ha,Ua;for(;ha=Ki(()=>l3(4,Es));){if(ha.kind===345){_I(ha.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Ua=SV(Ua,ha)}return vr(Ua||[],Aa)}function iN(Es,Aa){let ha=Db(Aa),Ua=Ki(()=>{if(wx(60)){let wc=Eo(Aa);if(wc&&wc.kind===342)return wc}});return Zt(C.createJSDocSignature(void 0,ha,Ua),Es)}function xre(Es,Aa,ha,Ua){let wc=SB();ay();let mA=ye(ha),Pd=iN(Es,ha);mA||(mA=z(Es,Ri(),ha,Ua));let $h=mA!==void 0?Ri():Pd.end;return Zt(C.createJSDocCallbackTag(Aa,Pd,wc,mA),Es,$h)}function DL(Es,Aa,ha,Ua){ay();let wc=ye(ha),mA=iN(Es,ha);wc||(wc=z(Es,Ri(),ha,Ua));let Pd=wc!==void 0?Ri():mA.end;return Zt(C.createJSDocOverloadTag(Aa,mA,wc),Es,Pd)}function EJ(Es,Aa){for(;!t_(Es)||!t_(Aa);)if(!t_(Es)&&!t_(Aa)&&Es.right.escapedText===Aa.right.escapedText)Es=Es.left,Aa=Aa.left;else return!1;return Es.escapedText===Aa.escapedText}function _Y(Es){return l3(1,Es)}function l3(Es,Aa,ha){let Ua=!0,wc=!1;for(;;)switch(Uu()){case 60:if(Ua){let mA=c7(Es,Aa);return mA&&(mA.kind===341||mA.kind===348)&&ha&&(t_(mA.name)||!EJ(ha,mA.name.left))?!1:mA}wc=!1;break;case 4:Ua=!0,wc=!1;break;case 42:wc&&(Ua=!1),wc=!0;break;case 80:Ua=!1;break;case 1:return!1}}function c7(Es,Aa){Zo.assert(Pt()===60);let ha=t.getTokenFullStart();Uu();let Ua=Tx(),wc=nS(),mA;switch(Ua.escapedText){case"type":return Es===1&&ji(ha,Ua);case"prop":case"property":mA=1;break;case"arg":case"argument":case"param":mA=6;break;case"template":return yY(ha,Ua,Aa,wc);case"this":return sh(ha,Ua,Aa,wc);default:return!1}return Es&mA?av(ha,Ua,Es,Aa):!1}function SJ(){let Es=Ri(),Aa=wx(23);Aa&&ay();let ha=Ve(!1,!0),Ua=Tx(ts.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),wc;if(Aa&&(ay(),ws(64),wc=Qa(16777216,US),ws(24)),!nCe(Ua))return Zt(C.createTypeParameterDeclaration(ha,Ua,void 0,wc),Es)}function l7(){let Es=Ri(),Aa=[];do{ay();let ha=SJ();ha!==void 0&&Aa.push(ha),nS()}while(wx(28));return vr(Aa,Es)}function yY(Es,Aa,ha,Ua){let wc=Pt()===19?kr():void 0,mA=l7();return Zt(C.createJSDocTemplateTag(Aa,wc,mA,z(Es,Ri(),ha,Ua)),Es)}function wx(Es){return Pt()===Es?(Uu(),!0):!1}function Gre(){let Es=Tx();for(rc(23)&&ws(24);rc(25);){let Aa=Tx();rc(23)&&ws(24),Es=P(Es,Aa)}return Es}function Tx(Es){if(!X1(Pt()))return bn(80,!Es,Es||ts.Identifier_expected);zt++;let Aa=t.getTokenStart(),ha=t.getTokenEnd(),Ua=Pt(),wc=ls(t.getTokenValue()),mA=Zt(F(wc,Ua),Aa,ha);return Uu(),mA}}})(mY=e.JSDocParser||(e.JSDocParser={}))})(sCe||(sCe={}));var xSi=new WeakSet;function Fec(e){xSi.has(e)&&Zo.fail("Source file has already been incrementally parsed"),xSi.add(e)}var xBi=new WeakSet;function Zec(e){return xBi.has(e)}function QNr(e){xBi.add(e)}var mEt;(e=>{function t(N,B,F,Q){if(Q=Q||Zo.shouldAssert(2),C(N,B,F,Q),w7a(F))return N;if(N.statements.length===0)return sCe.parseSourceFile(N.fileName,B,N.languageVersion,void 0,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);Fec(N),sCe.fixupParentReferences(N);let J=N.text,ae=b(N),ne=f(N,F);C(N,B,ne,Q),Zo.assert(ne.span.start<=F.span.start),Zo.assert(S6(ne.span)===S6(F.span)),Zo.assert(S6(mJe(ne))===S6(mJe(F)));let ce=mJe(ne).length-ne.span.length;A(N,ne.span.start,S6(ne.span),S6(mJe(ne)),ce,J,B,Q);let fe=sCe.parseSourceFile(N.fileName,B,N.languageVersion,ae,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);return fe.commentDirectives=r(N.commentDirectives,fe.commentDirectives,ne.span.start,S6(ne.span),ce,J,B,Q),fe.impliedNodeFormat=N.impliedNodeFormat,dec(N,fe),fe}e.updateSourceFile=t;function r(N,B,F,Q,J,ae,ne,ce){if(!N)return B;let fe,ue=!1;for(let be of N){let{range:Se,type:De}=be;if(Se.endQ){de();let k={range:{pos:Se.pos+J,end:Se.end+J},type:De};fe=SV(fe,k),ce&&Zo.assert(ae.substring(Se.pos,Se.end)===ne.substring(k.range.pos,k.range.end))}}return de(),fe;function de(){ue||(ue=!0,fe?B&&fe.push(...B):fe=B)}}function n(N,B,F,Q,J,ae,ne){F?fe(N):ce(N);return;function ce(ue){let de="";if(ne&&a(ue)&&(de=J.substring(ue.pos,ue.end)),lSi(ue,B),Lce(ue,ue.pos+Q,ue.end+Q),ne&&a(ue)&&Zo.assert(de===ae.substring(ue.pos,ue.end)),Xk(ue,ce,fe),rCe(ue))for(let be of ue.jsDoc)ce(be);l(ue,ne)}function fe(ue){Lce(ue,ue.pos+Q,ue.end+Q);for(let de of ue)ce(de)}}function a(N){switch(N.kind){case 11:case 9:case 80:return!0}return!1}function o(N,B,F,Q,J){Zo.assert(N.end>=B,"Adjusting an element that was entirely before the change range"),Zo.assert(N.pos<=F,"Adjusting an element that was entirely after the change range"),Zo.assert(N.pos<=N.end);let ae=Math.min(N.pos,Q),ne=N.end>=F?N.end+J:Math.min(N.end,Q);if(Zo.assert(ae<=ne),N.parent){let ce=N.parent;Zo.assertGreaterThanOrEqual(ae,ce.pos),Zo.assertLessThanOrEqual(ne,ce.end)}Lce(N,ae,ne)}function l(N,B){if(B){let F=N.pos,Q=J=>{Zo.assert(J.pos>=F),F=J.end};if(rCe(N))for(let J of N.jsDoc)Q(J);Xk(N,Q),Zo.assert(F<=N.end)}}function A(N,B,F,Q,J,ae,ne,ce){fe(N);return;function fe(de){if(Zo.assert(de.pos<=de.end),de.pos>F){n(de,N,!1,J,ae,ne,ce);return}let be=de.end;if(be>=B){if(QNr(de),lSi(de,N),o(de,B,F,Q,J),Xk(de,fe,ue),rCe(de))for(let Se of de.jsDoc)fe(Se);l(de,ce);return}Zo.assert(beF){n(de,N,!0,J,ae,ne,ce);return}let be=de.end;if(be>=B){QNr(de),o(de,B,F,Q,J);for(let Se of de)fe(Se);return}Zo.assert(be0&&ae<=1;ae++){let ne=I(N,F);Zo.assert(ne.pos<=F);let ce=ne.pos;F=Math.max(0,ce-1)}let Q=B7a(F,S6(B.span)),J=B.newLength+(B.span.start-F);return Tvi(Q,J)}function I(N,B){let F=N,Q;if(Xk(N,ae),Q){let ne=J(Q);ne.pos>F.pos&&(F=ne)}return F;function J(ne){for(;;){let ce=Iqa(ne);if(ce)ne=ce;else return ne}}function ae(ne){if(!nCe(ne))if(ne.pos<=B){if(ne.pos>=F.pos&&(F=ne),BB),!0}}function C(N,B,F,Q){let J=N.text;if(F&&(Zo.assert(J.length-F.span.length+F.newLength===B.length),Q||Zo.shouldAssert(3))){let ae=J.substr(0,F.span.start),ne=B.substr(0,F.span.start);Zo.assert(ae===ne);let ce=J.substring(S6(F.span),J.length),fe=B.substring(S6(mJe(F)),B.length);Zo.assert(ce===fe)}}function b(N){let B=N.statements,F=0;Zo.assert(F=ue.pos&&ne=ue.pos&&ne{N[N.Value=-1]="Value"})(E||(E={}))})(mEt||(mEt={}));function Lec(e){return Vec(e)!==void 0}function Vec(e){let t=fvi(e,Lqa,!1);if(t)return t;if(Qja(e,".ts")){let r=pvi(e),n=r.lastIndexOf(".d.");if(n>=0)return r.substring(n)}}function Wec(e,t,r,n){if(e){if(e==="import")return 99;if(e==="require")return 1;n(t,r-t,ts.resolution_mode_should_be_either_require_or_import)}}function Oec(e,t){let r=[];for(let n of GNr(t,0)||Z2){let a=t.substring(n.pos,n.end);Qec(r,n,a)}e.pragmas=new Map;for(let n of r){if(e.pragmas.has(n.name)){let a=e.pragmas.get(n.name);a instanceof Array?a.push(n.args):e.pragmas.set(n.name,[a,n.args]);continue}e.pragmas.set(n.name,n.args)}}function Pec(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,n)=>{switch(n){case"reference":{let a=e.referencedFiles,o=e.typeReferenceDirectives,l=e.libReferenceDirectives;SP(INr(r),A=>{let{types:f,lib:I,path:C,["resolution-mode"]:b,preserve:E}=A.arguments,N=E==="true"?!0:void 0;if(A.arguments["no-default-lib"]==="true")e.hasNoDefaultLib=!0;else if(f){let B=Wec(b,f.pos,f.end,t);o.push({pos:f.pos,end:f.end,fileName:f.value,...B?{resolutionMode:B}:{},...N?{preserve:N}:{}})}else I?l.push({pos:I.pos,end:I.end,fileName:I.value,...N?{preserve:N}:{}}):C?a.push({pos:C.pos,end:C.end,fileName:C.value,...N?{preserve:N}:{}}):t(A.range.pos,A.range.end-A.range.pos,ts.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=RNr(INr(r),a=>({name:a.arguments.name,path:a.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let a of r)e.moduleName&&t(a.range.pos,a.range.end-a.range.pos,ts.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=a.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{SP(INr(r),a=>{(!e.checkJsDirective||a.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:n==="ts-check",end:a.range.end,pos:a.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Zo.fail("Unhandled pragma kind")}})}var BNr=new Map;function Mec(e){if(BNr.has(e))return BNr.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return BNr.set(e,t),t}var Hec=/^\/\/\/\s*<(\S+)\s.*?\/>/m,Yec=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function Qec(e,t,r){let n=t.kind===2&&Hec.exec(r);if(n){let o=n[1].toLowerCase(),l=dvi[o];if(!l||!(l.kind&1))return;if(l.args){let A={};for(let f of l.args){let I=Mec(f.name).exec(r);if(!I&&!f.optional)return;if(I){let C=I[2]||I[3];if(f.captureSpan){let b=t.pos+I.index+I[1].length+1;A[f.name]={value:C,pos:b,end:b+C.length}}else A[f.name]=C}}e.push({name:o,args:{arguments:A,range:t}})}else e.push({name:o,args:{arguments:{},range:t}});return}let a=t.kind===2&&Yec.exec(r);if(a)return GSi(e,t,2,a);if(t.kind===3){let o=/@(\S+)(\s+(?:\S.*)?)?$/gm,l;for(;l=o.exec(r);)GSi(e,t,4,l)}}function GSi(e,t,r,n){if(!n)return;let a=n[1].toLowerCase(),o=dvi[a];if(!o||!(o.kind&r))return;let l=n[2],A=Xec(o,l);A!=="fail"&&e.push({name:a,args:{arguments:A,range:t}})}function Xec(e,t){if(!t)return{};if(!e.args)return{};let r=t.trim().split(/\s+/),n={};for(let a=0;an.kind<309||n.kind>351);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=tCe(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return Xk(this,e,t)}};function Jec(e,t){let r=[];if(mza(e))return e.forEachChild(l=>{r.push(l)}),r;DJe.setText((t||e.getSourceFile()).text);let n=e.pos,a=l=>{kJe(r,n,l.pos,e),r.push(l),n=l.end},o=l=>{kJe(r,n,l.pos,e),r.push(Uec(l,e)),n=l.end};return SP(e.jsDoc,a),n=e.pos,e.forEachChild(a,o),kJe(r,n,e.end,e),DJe.setText(void 0),r}function kJe(e,t,r,n){for(DJe.resetTokenState(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function sEt(e,t){if(!e)return Z2;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(VBi))){let n=new Set;for(let a of e){let o=WBi(t,a,l=>{var A;if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualJsDocTags(a,t):((A=l.declarations)==null?void 0:A.length)===1?l.getJsDocTags(t):void 0});o&&(r=[...o,...r])}}return r}function NJe(e,t){if(!e)return Z2;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(VBi))){let n=new Set;for(let a of e){let o=WBi(t,a,l=>{if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualDocumentationComment(a,t):l.getDocumentationComment(t)});o&&(r=r.length===0?o.slice():o.concat(lineBreakPart(),r))}}return r}function WBi(e,t,r){var n;let a=((n=t.parent)==null?void 0:n.kind)===176?t.parent.parent:t.parent;if(!a)return;let o=sqa(t);return pja(jza(a),l=>{let A=e.getTypeAtLocation(l),f=o&&A.symbol?e.getTypeOfSymbol(A.symbol):A,I=e.getPropertyOfType(f,t.symbol.name);return I?r(I):void 0})}var qec=class extends kDr{constructor(e,t,r){super(e,t,r)}update(e,t){return Gec(this,e,t)}getLineAndCharacterOfPosition(e){return bvi(this,e)}getLineStarts(){return xNr(this)}getPositionOfLineAndCharacter(e,t,r){return p7a(xNr(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),n;t+1>=r.length&&(n=this.getEnd()),n||(n=r[t+1]-1);let a=this.getFullText();return a[n]===` -`&&a[n-1]==="\r"?n-1:n}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=Tja();return this.forEachChild(a),e;function t(o){let l=n(o);l&&e.add(l,o)}function r(o){let l=e.get(o);return l||e.set(o,l=[]),l}function n(o){let l=dDr(o);return l&&(sBi(l)&&Oce(l.expression)?l.expression.name.text:Vvi(l)?getNameFromPropertyName(l):void 0)}function a(o){switch(o.kind){case 262:case 218:case 174:case 173:let l=o,A=n(l);if(A){let C=r(A),b=tCe(C);b&&l.parent===b.parent&&l.symbol===b.symbol?l.body&&!b.body&&(C[C.length-1]=l):C.push(l)}Xk(o,a);break;case 263:case 231:case 264:case 265:case 266:case 267:case 271:case 281:case 276:case 273:case 274:case 177:case 178:case 187:t(o),Xk(o,a);break;case 169:if(!PJe(o,31))break;case 260:case 208:{let C=o;if(cza(C.name)){Xk(C.name,a);break}C.initializer&&a(C.initializer)}case 306:case 172:case 171:t(o);break;case 278:let f=o;f.exportClause&&(Y$a(f.exportClause)?SP(f.exportClause.elements,a):a(f.exportClause.name));break;case 272:let I=o.importClause;I&&(I.name&&t(I.name),I.namedBindings&&(I.namedBindings.kind===274?t(I.namedBindings):SP(I.namedBindings.elements,a)));break;case 226:mDr(o)!==0&&t(o);default:Xk(o,a)}}}},$ec=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}getLineAndCharacterOfPosition(e){return bvi(this,e)}};function etc(){return{getNodeConstructor:()=>kDr,getTokenConstructor:()=>FBi,getIdentifierConstructor:()=>ZBi,getPrivateIdentifierConstructor:()=>LBi,getSourceFileConstructor:()=>qec,getSymbolConstructor:()=>Kec,getTypeConstructor:()=>jec,getSignatureConstructor:()=>zec,getSourceMapSourceConstructor:()=>$ec}}var ttc=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],swu=[...ttc,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];vqa(etc());var OBi=new Proxy({},{get:()=>!0}),PBi=OBi["4.8"];function R6(e,t=!1){var r;if(e!=null){if(PBi){if(t||DDr(e)){let n=x7a(e);return n?[...n]:void 0}return}return(r=e.modifiers)==null?void 0:r.filter(n=>!BDr(n))}}function YNe(e,t=!1){var r;if(e!=null){if(PBi){if(t||yec(e)){let n=k7a(e);return n?[...n]:void 0}return}return(r=e.decorators)==null?void 0:r.filter(BDr)}}var rtc={},MBi=new Proxy({},{get:(e,t)=>t}),ntc=MBi,itc=MBi,hs=ntc,uD=itc,HBi=OBi["5.0"],cu=Np,stc=new Set([cu.AmpersandAmpersandToken,cu.BarBarToken,cu.QuestionQuestionToken]),otc=new Set([Np.AmpersandAmpersandEqualsToken,Np.AmpersandEqualsToken,Np.AsteriskAsteriskEqualsToken,Np.AsteriskEqualsToken,Np.BarBarEqualsToken,Np.BarEqualsToken,Np.CaretEqualsToken,Np.EqualsToken,Np.GreaterThanGreaterThanEqualsToken,Np.GreaterThanGreaterThanGreaterThanEqualsToken,Np.LessThanLessThanEqualsToken,Np.MinusEqualsToken,Np.PercentEqualsToken,Np.PlusEqualsToken,Np.QuestionQuestionEqualsToken,Np.SlashEqualsToken]),atc=new Set([cu.AmpersandAmpersandToken,cu.AmpersandToken,cu.AsteriskAsteriskToken,cu.AsteriskToken,cu.BarBarToken,cu.BarToken,cu.CaretToken,cu.EqualsEqualsEqualsToken,cu.EqualsEqualsToken,cu.ExclamationEqualsEqualsToken,cu.ExclamationEqualsToken,cu.GreaterThanEqualsToken,cu.GreaterThanGreaterThanGreaterThanToken,cu.GreaterThanGreaterThanToken,cu.GreaterThanToken,cu.InKeyword,cu.InstanceOfKeyword,cu.LessThanEqualsToken,cu.LessThanLessThanToken,cu.LessThanToken,cu.MinusToken,cu.PercentToken,cu.PlusToken,cu.SlashToken]);function ctc(e){return otc.has(e.kind)}function ltc(e){return stc.has(e.kind)}function utc(e){return atc.has(e.kind)}function Fce(e){return Sy(e)}function gtc(e){return e.kind!==cu.SemicolonClassElement}function Rh(e,t){let r=R6(t);return r?.some(n=>n.kind===e)===!0}function Atc(e){let t=R6(e);return t==null?null:t[t.length-1]??null}function dtc(e){return e.kind===cu.CommaToken}function ptc(e){return e.kind===cu.SingleLineCommentTrivia||e.kind===cu.MultiLineCommentTrivia}function ftc(e){return e.kind===cu.JSDocComment}function Itc(e){if(ctc(e))return{type:hs.AssignmentExpression,operator:Fce(e.kind)};if(ltc(e))return{type:hs.LogicalExpression,operator:Fce(e.kind)};if(utc(e))return{type:hs.BinaryExpression,operator:Fce(e.kind)};throw new Error(`Unexpected binary operator ${Sy(e.kind)}`)}function oEt(e,t){let r=t.getLineAndCharacterOfPosition(e);return{column:r.character,line:r.line+1}}function $me(e,t){let[r,n]=e.map(a=>oEt(a,t));return{end:n,start:r}}function htc(e){if(e.kind===Np.Block)switch(e.parent.kind){case Np.Constructor:case Np.GetAccessor:case Np.SetAccessor:case Np.ArrowFunction:case Np.FunctionExpression:case Np.FunctionDeclaration:case Np.MethodDeclaration:return!0;default:return!1}return!0}function yJe(e,t){return[e.getStart(t),e.getEnd()]}function mtc(e){return e.kind>=cu.FirstToken&&e.kind<=cu.LastToken}function YBi(e){return e.kind>=cu.JsxElement&&e.kind<=cu.JsxAttribute}function XNr(e){return e.flags&EP.Let?"let":(e.flags&EP.AwaitUsing)===EP.AwaitUsing?"await using":e.flags&EP.Const?"const":e.flags&EP.Using?"using":"var"}function jme(e){let t=R6(e);if(t!=null)for(let r of t)switch(r.kind){case cu.PublicKeyword:return"public";case cu.ProtectedKeyword:return"protected";case cu.PrivateKeyword:return"private";default:break}}function VNe(e,t,r){return n(t);function n(a){return z7a(a)&&a.pos===e.end?a:Ttc(a.getChildren(r),o=>(o.pos<=e.pos&&o.end>e.end||o.pos===e.end)&&wtc(o,r)?n(o):void 0)}}function Ctc(e,t){let r=e;for(;r;){if(t(r))return r;r=r.parent}}function _tc(e){return!!Ctc(e,YBi)}function FSi(e){return XNe(!1,e,/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,t=>{let r=t.slice(1,-1);if(r[0]==="#"){let n=r[1]==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return n>1114111?t:String.fromCodePoint(n)}return rtc[r]||t})}function WNe(e){return e.kind===cu.ComputedPropertyName}function ZSi(e){return!!e.questionToken}function QBi(e){return e.type===hs.ChainExpression}function ytc(e,t){return QBi(t)&&e.expression.kind!==Np.ParenthesizedExpression}function btc(e){let t;if(HBi&&e.kind===cu.Identifier?t=Nvi(e):"originalKeywordKind"in e&&(t=e.originalKeywordKind),t)return t===cu.NullKeyword?uD.Null:t>=cu.FirstFutureReservedWord&&t<=cu.LastKeyword?uD.Identifier:uD.Keyword;if(e.kind>=cu.FirstKeyword&&e.kind<=cu.LastFutureReservedWord)return e.kind===cu.FalseKeyword||e.kind===cu.TrueKeyword?uD.Boolean:uD.Keyword;if(e.kind>=cu.FirstPunctuation&&e.kind<=cu.LastPunctuation)return uD.Punctuator;if(e.kind>=cu.NoSubstitutionTemplateLiteral&&e.kind<=cu.TemplateTail)return uD.Template;switch(e.kind){case cu.NumericLiteral:return uD.Numeric;case cu.JsxText:return uD.JSXText;case cu.StringLiteral:return e.parent.kind===cu.JsxAttribute||e.parent.kind===cu.JsxElement?uD.JSXText:uD.String;case cu.RegularExpressionLiteral:return uD.RegularExpression;case cu.Identifier:case cu.ConstructorKeyword:case cu.GetKeyword:case cu.SetKeyword:default:}return e.kind===cu.Identifier&&(YBi(e.parent)||e.parent.kind===cu.PropertyAccessExpression&&_tc(e))?uD.JSXIdentifier:uD.Identifier}function Etc(e,t){let r=e.kind===cu.JsxText?e.getFullStart():e.getStart(t),n=e.getEnd(),a=t.text.slice(r,n),o=btc(e),l=[r,n],A=$me(l,t);return o===uD.RegularExpression?{type:o,loc:A,range:l,regex:{flags:a.slice(a.lastIndexOf("/")+1),pattern:a.slice(1,a.lastIndexOf("/"))},value:a}:{type:o,loc:A,range:l,value:a}}function Stc(e){let t=[];function r(n){ptc(n)||ftc(n)||(mtc(n)&&n.kind!==cu.EndOfFileToken?t.push(Etc(n,e)):n.getChildren(e).forEach(r))}return r(e),t}var vtc=class extends Error{fileName;location;constructor(e,t,r){super(e),this.fileName=t,this.location=r,Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:new.target.name})}get index(){return this.location.start.offset}get lineNumber(){return this.location.start.line}get column(){return this.location.start.column}};function XBi(e,t,r,n=r){let[a,o]=[r,n].map(l=>{let{character:A,line:f}=t.getLineAndCharacterOfPosition(l);return{column:A,line:f+1,offset:l}});return new vtc(e,t.fileName,{end:o,start:a})}function Btc(e){var t;return!!("illegalDecorators"in e&&(t=e.illegalDecorators)!=null&&t.length)}function wtc(e,t){return e.kind===cu.EndOfFileToken?!!e.jsDoc:e.getWidth(t)!==0}function Ttc(e,t){if(e!==void 0)for(let r=0;r=0&&e.kind!==cu.EndOfFileToken}function LSi(e){return!Dtc(e)}function ktc(e){return Rvi(e.parent,Wvi)}function xtc(e){return Rh(cu.AbstractKeyword,e)}function Gtc(e){if(e.parameters.length&&!wBi(e)){let t=e.parameters[0];if(Ftc(t))return t}return null}function Ftc(e){return JBi(e.name)}function Ztc(e){switch(e.kind){case cu.ClassDeclaration:return!0;case cu.ClassExpression:return!0;case cu.PropertyDeclaration:{let{parent:t}=e;return!!(hEt(t)||jNe(t)&&!xtc(e))}case cu.GetAccessor:case cu.SetAccessor:case cu.MethodDeclaration:{let{parent:t}=e;return!!e.body&&(hEt(t)||jNe(t))}case cu.Parameter:{let{parent:t}=e,r=t.parent;return!!t&&"body"in t&&!!t.body&&(t.kind===cu.Constructor||t.kind===cu.MethodDeclaration||t.kind===cu.SetAccessor)&&Gtc(t)!==e&&!!r&&r.kind===cu.ClassDeclaration}}return!1}function GDr(e){switch(e.kind){case cu.Identifier:return!0;case cu.PropertyAccessExpression:case cu.ElementAccessExpression:return!(e.flags&EP.OptionalChain);case cu.ParenthesizedExpression:case cu.TypeAssertionExpression:case cu.AsExpression:case cu.SatisfiesExpression:case cu.ExpressionWithTypeArguments:case cu.NonNullExpression:return GDr(e.expression);default:return!1}}function Ltc(e){let t=R6(e),r=e;for(;(!t||t.length===0)&&WJe(r.parent);){let n=R6(r.parent);n!=null&&n.length&&(t=n),r=r.parent}return t}var Pn=Np;function Vtc(e){return XBi("message"in e&&e.message||e.messageText,e.file,e.start)}var og,JNr,UBi,tf,LR,QNe,UNr,Wtc=class{constructor(e,t){lja(this,og),IJe(this,"allowPattern",!1),IJe(this,"ast"),IJe(this,"esTreeNodeToTSNodeMap",new WeakMap),IJe(this,"options"),IJe(this,"tsNodeToESTreeNodeMap",new WeakMap),this.ast=e,this.options={...t}}assertModuleSpecifier(e,t){var r;!t&&e.moduleSpecifier==null&&Ig(this,og,LR).call(this,e,"Module specifier must be a string literal."),e.moduleSpecifier&&((r=e.moduleSpecifier)==null?void 0:r.kind)!==Pn.StringLiteral&&Ig(this,og,LR).call(this,e.moduleSpecifier,"Module specifier must be a string literal.")}convertBindingNameWithTypeAnnotation(e,t,r){let n=this.convertPattern(e);return t&&(n.typeAnnotation=this.convertTypeAnnotation(t,r),this.fixParentLocation(n,n.typeAnnotation.range)),n}convertBodyExpressions(e,t){let r=htc(t);return e.map(n=>{let a=this.convertChild(n);if(r){if(a!=null&&a.expression&&IBi(n)&&yEt(n.expression)){let o=a.expression.raw;return a.directive=o.slice(1,-1),a}r=!1}return a}).filter(n=>n)}convertChainExpression(e,t){let{child:r,isOptional:n}=e.type===hs.MemberExpression?{child:e.object,isOptional:e.optional}:e.type===hs.CallExpression?{child:e.callee,isOptional:e.optional}:{child:e.expression,isOptional:!1},a=ytc(t,r);if(!a&&!n)return e;if(a&&QBi(r)){let o=r.expression;e.type===hs.MemberExpression?e.object=o:e.type===hs.CallExpression?e.callee=o:e.expression=o}return this.createNode(t,{type:hs.ChainExpression,expression:e})}convertChild(e,t){return this.converter(e,t,!1)}convertPattern(e,t){return this.converter(e,t,!0)}convertTypeAnnotation(e,t){let r=t?.kind===Pn.FunctionType||t?.kind===Pn.ConstructorType?2:1,n=[e.getFullStart()-r,e.end],a=$me(n,this.ast);return{type:hs.TSTypeAnnotation,loc:a,range:n,typeAnnotation:this.convertChild(e)}}convertTypeArgumentsToTypeParameterInstantiation(e,t){let r=VNe(e,this.ast,this.ast);return this.createNode(t,{type:hs.TSTypeParameterInstantiation,range:[e.pos-1,r.end],params:e.map(n=>this.convertChild(n))})}convertTSTypeParametersToTypeParametersDeclaration(e){let t=VNe(e,this.ast,this.ast),r=[e.pos-1,t.end];return{type:hs.TSTypeParameterDeclaration,loc:$me(r,this.ast),range:r,params:e.map(n=>this.convertChild(n))}}convertParameters(e){return e!=null&&e.length?e.map(t=>{var r;let n=this.convertChild(t);return n.decorators=((r=YNe(t))==null?void 0:r.map(a=>this.convertChild(a)))??[],n}):[]}converter(e,t,r){if(!e)return null;Ig(this,og,UBi).call(this,e);let n=this.allowPattern;r!=null&&(this.allowPattern=r);let a=this.convertNode(e,t??e.parent);return this.registerTSNodeInNodeMap(e,a),this.allowPattern=n,a}convertImportAttributes(e){return e==null?[]:e.elements.map(t=>this.convertChild(t))}convertJSXIdentifier(e){let t=this.createNode(e,{type:hs.JSXIdentifier,name:e.getText()});return this.registerTSNodeInNodeMap(e,t),t}convertJSXNamespaceOrIdentifier(e){if(e.kind===Np.JsxNamespacedName){let n=this.createNode(e,{type:hs.JSXNamespacedName,name:this.createNode(e.name,{type:hs.JSXIdentifier,name:e.name.text}),namespace:this.createNode(e.namespace,{type:hs.JSXIdentifier,name:e.namespace.text})});return this.registerTSNodeInNodeMap(e,n),n}let t=e.getText(),r=t.indexOf(":");if(r>0){let n=yJe(e,this.ast),a=this.createNode(e,{type:hs.JSXNamespacedName,range:n,name:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0]+r+1,n[1]],name:t.slice(r+1)}),namespace:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0],n[0]+r],name:t.slice(0,r)})});return this.registerTSNodeInNodeMap(e,a),a}return this.convertJSXIdentifier(e)}convertJSXTagName(e,t){let r;switch(e.kind){case Pn.PropertyAccessExpression:e.name.kind===Pn.PrivateIdentifier&&Ig(this,og,tf).call(this,e.name,"Non-private identifier expected."),r=this.createNode(e,{type:hs.JSXMemberExpression,object:this.convertJSXTagName(e.expression,t),property:this.convertJSXIdentifier(e.name)});break;case Pn.ThisKeyword:case Pn.Identifier:default:return this.convertJSXNamespaceOrIdentifier(e)}return this.registerTSNodeInNodeMap(e,r),r}convertMethodSignature(e){return this.createNode(e,{type:hs.TSMethodSignature,accessibility:jme(e),computed:WNe(e.name),key:this.convertChild(e.name),kind:(()=>{switch(e.kind){case Pn.GetAccessor:return"get";case Pn.SetAccessor:return"set";case Pn.MethodSignature:return"method"}})(),optional:ZSi(e),params:this.convertParameters(e.parameters),readonly:Rh(Pn.ReadonlyKeyword,e),returnType:e.type&&this.convertTypeAnnotation(e.type,e),static:Rh(Pn.StaticKeyword,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}fixParentLocation(e,t){t[0]e.range[1]&&(e.range[1]=t[1],e.loc.end=oEt(e.range[1],this.ast))}convertNode(e,t){var r,n,a,o,l,A,f,I;switch(e.kind){case Pn.SourceFile:return this.createNode(e,{type:hs.Program,range:[e.getStart(this.ast),e.endOfFileToken.end],body:this.convertBodyExpressions(e.statements,e),comments:void 0,sourceType:e.externalModuleIndicator?"module":"script",tokens:void 0});case Pn.Block:return this.createNode(e,{type:hs.BlockStatement,body:this.convertBodyExpressions(e.statements,e)});case Pn.Identifier:return Ntc(e)?this.createNode(e,{type:hs.ThisExpression}):this.createNode(e,{type:hs.Identifier,decorators:[],name:e.text,optional:!1,typeAnnotation:void 0});case Pn.PrivateIdentifier:return this.createNode(e,{type:hs.PrivateIdentifier,name:e.text.slice(1)});case Pn.WithStatement:return this.createNode(e,{type:hs.WithStatement,body:this.convertChild(e.statement),object:this.convertChild(e.expression)});case Pn.ReturnStatement:return this.createNode(e,{type:hs.ReturnStatement,argument:this.convertChild(e.expression)});case Pn.LabeledStatement:return this.createNode(e,{type:hs.LabeledStatement,body:this.convertChild(e.statement),label:this.convertChild(e.label)});case Pn.ContinueStatement:return this.createNode(e,{type:hs.ContinueStatement,label:this.convertChild(e.label)});case Pn.BreakStatement:return this.createNode(e,{type:hs.BreakStatement,label:this.convertChild(e.label)});case Pn.IfStatement:return this.createNode(e,{type:hs.IfStatement,alternate:this.convertChild(e.elseStatement),consequent:this.convertChild(e.thenStatement),test:this.convertChild(e.expression)});case Pn.SwitchStatement:return e.caseBlock.clauses.filter(C=>C.kind===Pn.DefaultClause).length>1&&Ig(this,og,tf).call(this,e,"A 'default' clause cannot appear more than once in a 'switch' statement."),this.createNode(e,{type:hs.SwitchStatement,cases:e.caseBlock.clauses.map(C=>this.convertChild(C)),discriminant:this.convertChild(e.expression)});case Pn.CaseClause:case Pn.DefaultClause:return this.createNode(e,{type:hs.SwitchCase,consequent:e.statements.map(C=>this.convertChild(C)),test:e.kind===Pn.CaseClause?this.convertChild(e.expression):null});case Pn.ThrowStatement:return e.expression.end===e.expression.pos&&Ig(this,og,LR).call(this,e,"A throw statement must throw an expression."),this.createNode(e,{type:hs.ThrowStatement,argument:this.convertChild(e.expression)});case Pn.TryStatement:return this.createNode(e,{type:hs.TryStatement,block:this.convertChild(e.tryBlock),finalizer:this.convertChild(e.finallyBlock),handler:this.convertChild(e.catchClause)});case Pn.CatchClause:return(r=e.variableDeclaration)!=null&&r.initializer&&Ig(this,og,tf).call(this,e.variableDeclaration.initializer,"Catch clause variable cannot have an initializer."),this.createNode(e,{type:hs.CatchClause,body:this.convertChild(e.block),param:e.variableDeclaration?this.convertBindingNameWithTypeAnnotation(e.variableDeclaration.name,e.variableDeclaration.type):null});case Pn.WhileStatement:return this.createNode(e,{type:hs.WhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Pn.DoStatement:return this.createNode(e,{type:hs.DoWhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Pn.ForStatement:return this.createNode(e,{type:hs.ForStatement,body:this.convertChild(e.statement),init:this.convertChild(e.initializer),test:this.convertChild(e.condition),update:this.convertChild(e.incrementor)});case Pn.ForInStatement:return Ig(this,og,JNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForInStatement,body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Pn.ForOfStatement:return Ig(this,og,JNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForOfStatement,await:!!(e.awaitModifier&&e.awaitModifier.kind===Pn.AwaitKeyword),body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Pn.FunctionDeclaration:{let C=Rh(Pn.DeclareKeyword,e),b=Rh(Pn.AsyncKeyword,e),E=!!e.asteriskToken;C?e.body?Ig(this,og,tf).call(this,e,"An implementation cannot be declared in ambient contexts."):b?Ig(this,og,tf).call(this,e,"'async' modifier cannot be used in an ambient context."):E&&Ig(this,og,tf).call(this,e,"Generators are not allowed in an ambient context."):!e.body&&E&&Ig(this,og,tf).call(this,e,"A function signature cannot be declared as a generator.");let N=this.createNode(e,{type:e.body?hs.FunctionDeclaration:hs.TSDeclareFunction,async:b,body:this.convertChild(e.body)||void 0,declare:C,expression:!1,generator:E,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,N)}case Pn.VariableDeclaration:{let C=!!e.exclamationToken,b=this.convertChild(e.initializer),E=this.convertBindingNameWithTypeAnnotation(e.name,e.type,e);return C&&(b?Ig(this,og,tf).call(this,e,"Declarations with initializers cannot also have definite assignment assertions."):(E.type!==hs.Identifier||!E.typeAnnotation)&&Ig(this,og,tf).call(this,e,"Declarations with definite assignment assertions must also have type annotations.")),this.createNode(e,{type:hs.VariableDeclarator,definite:C,id:E,init:b})}case Pn.VariableStatement:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarationList.declarations.map(b=>this.convertChild(b)),declare:Rh(Pn.DeclareKeyword,e),kind:XNr(e.declarationList)});return C.declarations.length||Ig(this,og,LR).call(this,e,"A variable declaration list must have at least one variable declarator."),(C.kind==="using"||C.kind==="await using")&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init==null&&Ig(this,og,tf).call(this,b,`'${C.kind}' declarations must be initialized.`),C.declarations[E].id.type!==hs.Identifier&&Ig(this,og,tf).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),(C.declare||["await using","const","using"].includes(C.kind))&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].definite&&Ig(this,og,tf).call(this,b,"A definite assignment assertion '!' is not permitted in this context.")}),C.declare&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init&&(["let","var"].includes(C.kind)||C.declarations[E].id.typeAnnotation)&&Ig(this,og,tf).call(this,b,"Initializers are not permitted in ambient contexts.")}),this.fixExports(e,C)}case Pn.VariableDeclarationList:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarations.map(b=>this.convertChild(b)),declare:!1,kind:XNr(e)});return(C.kind==="using"||C.kind==="await using")&&e.declarations.forEach((b,E)=>{C.declarations[E].init!=null&&Ig(this,og,tf).call(this,b,`'${C.kind}' declarations may not be initialized in for statement.`),C.declarations[E].id.type!==hs.Identifier&&Ig(this,og,tf).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),C}case Pn.ExpressionStatement:return this.createNode(e,{type:hs.ExpressionStatement,directive:void 0,expression:this.convertChild(e.expression)});case Pn.ThisKeyword:return this.createNode(e,{type:hs.ThisExpression});case Pn.ArrayLiteralExpression:return this.allowPattern?this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0}):this.createNode(e,{type:hs.ArrayExpression,elements:e.elements.map(C=>this.convertChild(C))});case Pn.ObjectLiteralExpression:{if(this.allowPattern)return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.properties.map(b=>this.convertPattern(b)),typeAnnotation:void 0});let C=[];for(let b of e.properties)(b.kind===Pn.GetAccessor||b.kind===Pn.SetAccessor||b.kind===Pn.MethodDeclaration)&&!b.body&&Ig(this,og,LR).call(this,b.end-1,"'{' expected."),C.push(this.convertChild(b));return this.createNode(e,{type:hs.ObjectExpression,properties:C})}case Pn.PropertyAssignment:{let{exclamationToken:C,questionToken:b}=e;return b&&Ig(this,og,tf).call(this,b,"A property assignment cannot have a question token."),C&&Ig(this,og,tf).call(this,C,"A property assignment cannot have an exclamation token."),this.createNode(e,{type:hs.Property,computed:WNe(e.name),key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!1,value:this.converter(e.initializer,e,this.allowPattern)})}case Pn.ShorthandPropertyAssignment:{let{exclamationToken:C,modifiers:b,questionToken:E}=e;return b&&Ig(this,og,tf).call(this,b[0],"A shorthand property assignment cannot have modifiers."),E&&Ig(this,og,tf).call(this,E,"A shorthand property assignment cannot have a question token."),C&&Ig(this,og,tf).call(this,C,"A shorthand property assignment cannot have an exclamation token."),e.objectAssignmentInitializer?this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.name),optional:!1,right:this.convertChild(e.objectAssignmentInitializer),typeAnnotation:void 0})}):this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.convertChild(e.name)})}case Pn.ComputedPropertyName:return this.convertChild(e.expression);case Pn.PropertyDeclaration:{let C=Rh(Pn.AbstractKeyword,e);C&&e.initializer&&Ig(this,og,tf).call(this,e.initializer,"Abstract property cannot have an initializer.");let b=Rh(Pn.AccessorKeyword,e),E=b?C?hs.TSAbstractAccessorProperty:hs.AccessorProperty:C?hs.TSAbstractPropertyDefinition:hs.PropertyDefinition,N=this.convertChild(e.name);return this.createNode(e,{type:E,accessibility:jme(e),computed:WNe(e.name),declare:Rh(Pn.DeclareKeyword,e),decorators:((n=YNe(e))==null?void 0:n.map(B=>this.convertChild(B)))??[],definite:!!e.exclamationToken,key:N,optional:(N.type===hs.Literal||e.name.kind===Pn.Identifier||e.name.kind===Pn.ComputedPropertyName||e.name.kind===Pn.PrivateIdentifier)&&!!e.questionToken,override:Rh(Pn.OverrideKeyword,e),readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e),value:C?null:this.convertChild(e.initializer)})}case Pn.GetAccessor:case Pn.SetAccessor:if(e.parent.kind===Pn.InterfaceDeclaration||e.parent.kind===Pn.TypeLiteral)return this.convertMethodSignature(e);case Pn.MethodDeclaration:{let C=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:Rh(Pn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:null,params:[],returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});C.typeParameters&&this.fixParentLocation(C,C.typeParameters.range);let b;if(t.kind===Pn.ObjectLiteralExpression)C.params=e.parameters.map(E=>this.convertChild(E)),b=this.createNode(e,{type:hs.Property,computed:WNe(e.name),key:this.convertChild(e.name),kind:"init",method:e.kind===Pn.MethodDeclaration,optional:!!e.questionToken,shorthand:!1,value:C});else{C.params=this.convertParameters(e.parameters);let E=Rh(Pn.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition;b=this.createNode(e,{type:E,accessibility:jme(e),computed:WNe(e.name),decorators:((a=YNe(e))==null?void 0:a.map(N=>this.convertChild(N)))??[],key:this.convertChild(e.name),kind:"method",optional:!!e.questionToken,override:Rh(Pn.OverrideKeyword,e),static:Rh(Pn.StaticKeyword,e),value:C})}return e.kind===Pn.GetAccessor?b.kind="get":e.kind===Pn.SetAccessor?b.kind="set":!b.static&&e.name.kind===Pn.StringLiteral&&e.name.text==="constructor"&&b.type!==hs.Property&&(b.kind="constructor"),b}case Pn.Constructor:{let C=Atc(e),b=(C&&VNe(C,e,this.ast))??e.getFirstToken(),E=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:!1,body:this.convertChild(e.body),declare:!1,expression:!1,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});E.typeParameters&&this.fixParentLocation(E,E.typeParameters.range);let N=this.createNode(e,{type:hs.Identifier,range:[b.getStart(this.ast),b.end],decorators:[],name:"constructor",optional:!1,typeAnnotation:void 0}),B=Rh(Pn.StaticKeyword,e);return this.createNode(e,{type:Rh(Pn.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition,accessibility:jme(e),computed:!1,decorators:[],key:N,kind:B?"method":"constructor",optional:!1,override:!1,static:B,value:E})}case Pn.FunctionExpression:return this.createNode(e,{type:hs.FunctionExpression,async:Rh(Pn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Pn.SuperKeyword:return this.createNode(e,{type:hs.Super});case Pn.ArrayBindingPattern:return this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0});case Pn.OmittedExpression:return null;case Pn.ObjectBindingPattern:return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.elements.map(C=>this.convertPattern(C)),typeAnnotation:void 0});case Pn.BindingElement:{if(t.kind===Pn.ArrayBindingPattern){let b=this.convertChild(e.name,t);return e.initializer?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:b,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}):e.dotDotDotToken?this.createNode(e,{type:hs.RestElement,argument:b,decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):b}let C;return e.dotDotDotToken?C=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.propertyName??e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):C=this.createNode(e,{type:hs.Property,computed:!!(e.propertyName&&e.propertyName.kind===Pn.ComputedPropertyName),key:this.convertChild(e.propertyName??e.name),kind:"init",method:!1,optional:!1,shorthand:!e.propertyName,value:this.convertChild(e.name)}),e.initializer&&(C.value=this.createNode(e,{type:hs.AssignmentPattern,range:[e.name.getStart(this.ast),e.initializer.end],decorators:[],left:this.convertChild(e.name),optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0})),C}case Pn.ArrowFunction:return this.createNode(e,{type:hs.ArrowFunctionExpression,async:Rh(Pn.AsyncKeyword,e),body:this.convertChild(e.body),expression:e.body.kind!==Pn.Block,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Pn.YieldExpression:return this.createNode(e,{type:hs.YieldExpression,argument:this.convertChild(e.expression),delegate:!!e.asteriskToken});case Pn.AwaitExpression:return this.createNode(e,{type:hs.AwaitExpression,argument:this.convertChild(e.expression)});case Pn.NoSubstitutionTemplateLiteral:return this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.createNode(e,{type:hs.TemplateElement,tail:!0,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-1)}})]});case Pn.TemplateExpression:{let C=this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.convertChild(e.head)]});return e.templateSpans.forEach(b=>{C.expressions.push(this.convertChild(b.expression)),C.quasis.push(this.convertChild(b.literal))}),C}case Pn.TaggedTemplateExpression:return this.createNode(e,{type:hs.TaggedTemplateExpression,quasi:this.convertChild(e.template),tag:this.convertChild(e.tag),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Pn.TemplateHead:case Pn.TemplateMiddle:case Pn.TemplateTail:{let C=e.kind===Pn.TemplateTail;return this.createNode(e,{type:hs.TemplateElement,tail:C,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-(C?1:2))}})}case Pn.SpreadAssignment:case Pn.SpreadElement:return this.allowPattern?this.createNode(e,{type:hs.RestElement,argument:this.convertPattern(e.expression),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):this.createNode(e,{type:hs.SpreadElement,argument:this.convertChild(e.expression)});case Pn.Parameter:{let C,b;return e.dotDotDotToken?C=b=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):e.initializer?(C=this.convertChild(e.name),b=this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:C,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}),R6(e)&&(b.range[0]=C.range[0],b.loc=$me(b.range,this.ast))):C=b=this.convertChild(e.name,t),e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),this.fixParentLocation(C,C.typeAnnotation.range)),e.questionToken&&(e.questionToken.end>C.range[1]&&(C.range[1]=e.questionToken.end,C.loc.end=oEt(C.range[1],this.ast)),C.optional=!0),R6(e)?this.createNode(e,{type:hs.TSParameterProperty,accessibility:jme(e),decorators:[],override:Rh(Pn.OverrideKeyword,e),parameter:b,readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e)}):b}case Pn.ClassDeclaration:!e.name&&(!Rh(Np.ExportKeyword,e)||!Rh(Np.DefaultKeyword,e))&&Ig(this,og,LR).call(this,e,"A class declaration without the 'default' modifier must have a name.");case Pn.ClassExpression:{let C=e.heritageClauses??[],b=e.kind===Pn.ClassDeclaration?hs.ClassDeclaration:hs.ClassExpression,E,N;for(let F of C){let{token:Q,types:J}=F;J.length===0&&Ig(this,og,LR).call(this,F,`'${Sy(Q)}' list cannot be empty.`),Q===Pn.ExtendsKeyword?(E&&Ig(this,og,LR).call(this,F,"'extends' clause already seen."),N&&Ig(this,og,LR).call(this,F,"'extends' clause must precede 'implements' clause."),J.length>1&&Ig(this,og,LR).call(this,J[1],"Classes can only extend a single class."),E??(E=F)):Q===Pn.ImplementsKeyword&&(N&&Ig(this,og,LR).call(this,F,"'implements' clause already seen."),N??(N=F))}let B=this.createNode(e,{type:b,abstract:Rh(Pn.AbstractKeyword,e),body:this.createNode(e,{type:hs.ClassBody,range:[e.members.pos-1,e.end],body:e.members.filter(gtc).map(F=>this.convertChild(F))}),declare:Rh(Pn.DeclareKeyword,e),decorators:((o=YNe(e))==null?void 0:o.map(F=>this.convertChild(F)))??[],id:this.convertChild(e.name),implements:N?.types.map(F=>this.convertChild(F))??[],superClass:E!=null&&E.types[0]?this.convertChild(E.types[0].expression):null,superTypeArguments:void 0,typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return(l=E?.types[0])!=null&&l.typeArguments&&(B.superTypeArguments=this.convertTypeArgumentsToTypeParameterInstantiation(E.types[0].typeArguments,E.types[0])),this.fixExports(e,B)}case Pn.ModuleBlock:return this.createNode(e,{type:hs.TSModuleBlock,body:this.convertBodyExpressions(e.statements,e)});case Pn.ImportDeclaration:{this.assertModuleSpecifier(e,!1);let C=this.createNode(e,Ig(this,og,QNe).call(this,{type:hs.ImportDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),importKind:"value",source:this.convertChild(e.moduleSpecifier),specifiers:[]},"assertions","attributes",!0));if(e.importClause&&(e.importClause.isTypeOnly&&(C.importKind="type"),e.importClause.name&&C.specifiers.push(this.convertChild(e.importClause)),e.importClause.namedBindings))switch(e.importClause.namedBindings.kind){case Pn.NamespaceImport:C.specifiers.push(this.convertChild(e.importClause.namedBindings));break;case Pn.NamedImports:C.specifiers.push(...e.importClause.namedBindings.elements.map(b=>this.convertChild(b)));break}return C}case Pn.NamespaceImport:return this.createNode(e,{type:hs.ImportNamespaceSpecifier,local:this.convertChild(e.name)});case Pn.ImportSpecifier:return this.createNode(e,{type:hs.ImportSpecifier,imported:this.convertChild(e.propertyName??e.name),importKind:e.isTypeOnly?"type":"value",local:this.convertChild(e.name)});case Pn.ImportClause:{let C=this.convertChild(e.name);return this.createNode(e,{type:hs.ImportDefaultSpecifier,range:C.range,local:C})}case Pn.ExportDeclaration:return((A=e.exportClause)==null?void 0:A.kind)===Pn.NamedExports?(this.assertModuleSpecifier(e,!0),this.createNode(e,Ig(this,og,QNe).call(this,{type:hs.ExportNamedDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),declaration:null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier),specifiers:e.exportClause.elements.map(C=>this.convertChild(C,e))},"assertions","attributes",!0))):(this.assertModuleSpecifier(e,!1),this.createNode(e,Ig(this,og,QNe).call(this,{type:hs.ExportAllDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),exported:((f=e.exportClause)==null?void 0:f.kind)===Pn.NamespaceExport?this.convertChild(e.exportClause.name):null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier)},"assertions","attributes",!0)));case Pn.ExportSpecifier:{let C=e.propertyName??e.name;return C.kind===Pn.StringLiteral&&t.kind===Pn.ExportDeclaration&&((I=t.moduleSpecifier)==null?void 0:I.kind)!==Pn.StringLiteral&&Ig(this,og,tf).call(this,C,"A string literal cannot be used as a local exported binding without `from`."),this.createNode(e,{type:hs.ExportSpecifier,exported:this.convertChild(e.name),exportKind:e.isTypeOnly?"type":"value",local:this.convertChild(C)})}case Pn.ExportAssignment:return e.isExportEquals?this.createNode(e,{type:hs.TSExportAssignment,expression:this.convertChild(e.expression)}):this.createNode(e,{type:hs.ExportDefaultDeclaration,declaration:this.convertChild(e.expression),exportKind:"value"});case Pn.PrefixUnaryExpression:case Pn.PostfixUnaryExpression:{let C=Fce(e.operator);return C==="++"||C==="--"?(GDr(e.operand)||Ig(this,og,LR).call(this,e.operand,"Invalid left-hand side expression in unary operation"),this.createNode(e,{type:hs.UpdateExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===Pn.PrefixUnaryExpression})):this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===Pn.PrefixUnaryExpression})}case Pn.DeleteExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"delete",prefix:!0});case Pn.VoidExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"void",prefix:!0});case Pn.TypeOfExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"typeof",prefix:!0});case Pn.TypeOperator:return this.createNode(e,{type:hs.TSTypeOperator,operator:Fce(e.operator),typeAnnotation:this.convertChild(e.type)});case Pn.BinaryExpression:{if(dtc(e.operatorToken)){let b=this.createNode(e,{type:hs.SequenceExpression,expressions:[]}),E=this.convertChild(e.left);return E.type===hs.SequenceExpression&&e.left.kind!==Pn.ParenthesizedExpression?b.expressions.push(...E.expressions):b.expressions.push(E),b.expressions.push(this.convertChild(e.right)),b}let C=Itc(e.operatorToken);return this.allowPattern&&C.type===hs.AssignmentExpression?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.left,e),optional:!1,right:this.convertChild(e.right),typeAnnotation:void 0}):this.createNode(e,{...C,left:this.converter(e.left,e,C.type===hs.AssignmentExpression),right:this.convertChild(e.right)})}case Pn.PropertyAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.name),E=this.createNode(e,{type:hs.MemberExpression,computed:!1,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case Pn.ElementAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.argumentExpression),E=this.createNode(e,{type:hs.MemberExpression,computed:!0,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case Pn.CallExpression:{if(e.expression.kind===Pn.ImportKeyword)return e.arguments.length!==1&&e.arguments.length!==2&&Ig(this,og,LR).call(this,e.arguments[2]??e,"Dynamic import requires exactly one or two arguments."),this.createNode(e,Ig(this,og,QNe).call(this,{type:hs.ImportExpression,options:e.arguments[1]?this.convertChild(e.arguments[1]):null,source:this.convertChild(e.arguments[0])},"attributes","options",!0));let C=this.convertChild(e.expression),b=e.arguments.map(B=>this.convertChild(B)),E=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),N=this.createNode(e,{type:hs.CallExpression,arguments:b,callee:C,optional:e.questionDotToken!=null,typeArguments:E});return this.convertChainExpression(N,e)}case Pn.NewExpression:{let C=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e);return this.createNode(e,{type:hs.NewExpression,arguments:e.arguments?e.arguments.map(b=>this.convertChild(b)):[],callee:this.convertChild(e.expression),typeArguments:C})}case Pn.ConditionalExpression:return this.createNode(e,{type:hs.ConditionalExpression,alternate:this.convertChild(e.whenFalse),consequent:this.convertChild(e.whenTrue),test:this.convertChild(e.condition)});case Pn.MetaProperty:return this.createNode(e,{type:hs.MetaProperty,meta:this.createNode(e.getFirstToken(),{type:hs.Identifier,decorators:[],name:Fce(e.keywordToken),optional:!1,typeAnnotation:void 0}),property:this.convertChild(e.name)});case Pn.Decorator:return this.createNode(e,{type:hs.Decorator,expression:this.convertChild(e.expression)});case Pn.StringLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:t.kind===Pn.JsxAttribute?FSi(e.text):e.text});case Pn.NumericLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:Number(e.text)});case Pn.BigIntLiteral:{let C=yJe(e,this.ast),b=this.ast.text.slice(C[0],C[1]),E=XNe(!1,b.slice(0,-1),"_",""),N=typeof BigInt<"u"?BigInt(E):null;return this.createNode(e,{type:hs.Literal,range:C,bigint:N==null?E:String(N),raw:b,value:N})}case Pn.RegularExpressionLiteral:{let C=e.text.slice(1,e.text.lastIndexOf("/")),b=e.text.slice(e.text.lastIndexOf("/")+1),E=null;try{E=new RegExp(C,b)}catch{}return this.createNode(e,{type:hs.Literal,raw:e.text,regex:{flags:b,pattern:C},value:E})}case Pn.TrueKeyword:return this.createNode(e,{type:hs.Literal,raw:"true",value:!0});case Pn.FalseKeyword:return this.createNode(e,{type:hs.Literal,raw:"false",value:!1});case Pn.NullKeyword:return this.createNode(e,{type:hs.Literal,raw:"null",value:null});case Pn.EmptyStatement:return this.createNode(e,{type:hs.EmptyStatement});case Pn.DebuggerStatement:return this.createNode(e,{type:hs.DebuggerStatement});case Pn.JsxElement:return this.createNode(e,{type:hs.JSXElement,children:e.children.map(C=>this.convertChild(C)),closingElement:this.convertChild(e.closingElement),openingElement:this.convertChild(e.openingElement)});case Pn.JsxFragment:return this.createNode(e,{type:hs.JSXFragment,children:e.children.map(C=>this.convertChild(C)),closingFragment:this.convertChild(e.closingFragment),openingFragment:this.convertChild(e.openingFragment)});case Pn.JsxSelfClosingElement:return this.createNode(e,{type:hs.JSXElement,children:[],closingElement:null,openingElement:this.createNode(e,{type:hs.JSXOpeningElement,range:yJe(e,this.ast),attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!0,typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):void 0})});case Pn.JsxOpeningElement:return this.createNode(e,{type:hs.JSXOpeningElement,attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!1,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Pn.JsxClosingElement:return this.createNode(e,{type:hs.JSXClosingElement,name:this.convertJSXTagName(e.tagName,e)});case Pn.JsxOpeningFragment:return this.createNode(e,{type:hs.JSXOpeningFragment});case Pn.JsxClosingFragment:return this.createNode(e,{type:hs.JSXClosingFragment});case Pn.JsxExpression:{let C=e.expression?this.convertChild(e.expression):this.createNode(e,{type:hs.JSXEmptyExpression,range:[e.getStart(this.ast)+1,e.getEnd()-1]});return e.dotDotDotToken?this.createNode(e,{type:hs.JSXSpreadChild,expression:C}):this.createNode(e,{type:hs.JSXExpressionContainer,expression:C})}case Pn.JsxAttribute:return this.createNode(e,{type:hs.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(e.name),value:this.convertChild(e.initializer)});case Pn.JsxText:{let C=e.getFullStart(),b=e.getEnd(),E=this.ast.text.slice(C,b);return this.createNode(e,{type:hs.JSXText,range:[C,b],raw:E,value:FSi(E)})}case Pn.JsxSpreadAttribute:return this.createNode(e,{type:hs.JSXSpreadAttribute,argument:this.convertChild(e.expression)});case Pn.QualifiedName:return this.createNode(e,{type:hs.TSQualifiedName,left:this.convertChild(e.left),right:this.convertChild(e.right)});case Pn.TypeReference:return this.createNode(e,{type:hs.TSTypeReference,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),typeName:this.convertChild(e.typeName)});case Pn.TypeParameter:return this.createNode(e,{type:hs.TSTypeParameter,const:Rh(Pn.ConstKeyword,e),constraint:e.constraint&&this.convertChild(e.constraint),default:e.default?this.convertChild(e.default):void 0,in:Rh(Pn.InKeyword,e),name:this.convertChild(e.name),out:Rh(Pn.OutKeyword,e)});case Pn.ThisType:return this.createNode(e,{type:hs.TSThisType});case Pn.AnyKeyword:case Pn.BigIntKeyword:case Pn.BooleanKeyword:case Pn.NeverKeyword:case Pn.NumberKeyword:case Pn.ObjectKeyword:case Pn.StringKeyword:case Pn.SymbolKeyword:case Pn.UnknownKeyword:case Pn.VoidKeyword:case Pn.UndefinedKeyword:case Pn.IntrinsicKeyword:return this.createNode(e,{type:hs[`TS${Pn[e.kind]}`]});case Pn.NonNullExpression:{let C=this.createNode(e,{type:hs.TSNonNullExpression,expression:this.convertChild(e.expression)});return this.convertChainExpression(C,e)}case Pn.TypeLiteral:return this.createNode(e,{type:hs.TSTypeLiteral,members:e.members.map(C=>this.convertChild(C))});case Pn.ArrayType:return this.createNode(e,{type:hs.TSArrayType,elementType:this.convertChild(e.elementType)});case Pn.IndexedAccessType:return this.createNode(e,{type:hs.TSIndexedAccessType,indexType:this.convertChild(e.indexType),objectType:this.convertChild(e.objectType)});case Pn.ConditionalType:return this.createNode(e,{type:hs.TSConditionalType,checkType:this.convertChild(e.checkType),extendsType:this.convertChild(e.extendsType),falseType:this.convertChild(e.falseType),trueType:this.convertChild(e.trueType)});case Pn.TypeQuery:return this.createNode(e,{type:hs.TSTypeQuery,exprName:this.convertChild(e.exprName),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Pn.MappedType:return e.members&&e.members.length>0&&Ig(this,og,LR).call(this,e.members[0],"A mapped type may not declare properties or methods."),this.createNode(e,Ig(this,og,UNr).call(this,{type:hs.TSMappedType,constraint:this.convertChild(e.typeParameter.constraint),key:this.convertChild(e.typeParameter.name),nameType:this.convertChild(e.nameType)??null,optional:e.questionToken&&(e.questionToken.kind===Pn.QuestionToken||Fce(e.questionToken.kind)),readonly:e.readonlyToken&&(e.readonlyToken.kind===Pn.ReadonlyKeyword||Fce(e.readonlyToken.kind)),typeAnnotation:e.type&&this.convertChild(e.type)},"typeParameter","'constraint' and 'key'",this.convertChild(e.typeParameter)));case Pn.ParenthesizedExpression:return this.convertChild(e.expression,t);case Pn.TypeAliasDeclaration:{let C=this.createNode(e,{type:hs.TSTypeAliasDeclaration,declare:Rh(Pn.DeclareKeyword,e),id:this.convertChild(e.name),typeAnnotation:this.convertChild(e.type),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,C)}case Pn.MethodSignature:return this.convertMethodSignature(e);case Pn.PropertySignature:{let{initializer:C}=e;return C&&Ig(this,og,tf).call(this,C,"A property signature cannot have an initializer."),this.createNode(e,{type:hs.TSPropertySignature,accessibility:jme(e),computed:WNe(e.name),key:this.convertChild(e.name),optional:ZSi(e),readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)})}case Pn.IndexSignature:return this.createNode(e,{type:hs.TSIndexSignature,accessibility:jme(e),parameters:e.parameters.map(C=>this.convertChild(C)),readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)});case Pn.ConstructorType:return this.createNode(e,{type:hs.TSConstructorType,abstract:Rh(Pn.AbstractKeyword,e),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Pn.FunctionType:{let{modifiers:C}=e;C&&Ig(this,og,tf).call(this,C[0],"A function type cannot have modifiers.")}case Pn.ConstructSignature:case Pn.CallSignature:{let C=e.kind===Pn.ConstructSignature?hs.TSConstructSignatureDeclaration:e.kind===Pn.CallSignature?hs.TSCallSignatureDeclaration:hs.TSFunctionType;return this.createNode(e,{type:C,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}case Pn.ExpressionWithTypeArguments:{let C=t.kind,b=C===Pn.InterfaceDeclaration?hs.TSInterfaceHeritage:C===Pn.HeritageClause?hs.TSClassImplements:hs.TSInstantiationExpression;return this.createNode(e,{type:b,expression:this.convertChild(e.expression),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)})}case Pn.InterfaceDeclaration:{let C=e.heritageClauses??[],b=[];for(let N of C){N.token!==Pn.ExtendsKeyword&&Ig(this,og,tf).call(this,N,N.token===Pn.ImplementsKeyword?"Interface declaration cannot have 'implements' clause.":"Unexpected token.");for(let B of N.types)b.push(this.convertChild(B,e))}let E=this.createNode(e,{type:hs.TSInterfaceDeclaration,body:this.createNode(e,{type:hs.TSInterfaceBody,range:[e.members.pos-1,e.end],body:e.members.map(N=>this.convertChild(N))}),declare:Rh(Pn.DeclareKeyword,e),extends:b,id:this.convertChild(e.name),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,E)}case Pn.TypePredicate:{let C=this.createNode(e,{type:hs.TSTypePredicate,asserts:e.assertsModifier!=null,parameterName:this.convertChild(e.parameterName),typeAnnotation:null});return e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),C.typeAnnotation.loc=C.typeAnnotation.typeAnnotation.loc,C.typeAnnotation.range=C.typeAnnotation.typeAnnotation.range),C}case Pn.ImportType:{let C=yJe(e,this.ast);if(e.isTypeOf){let E=VNe(e.getFirstToken(),e,this.ast);C[0]=E.getStart(this.ast)}let b=this.createNode(e,{type:hs.TSImportType,range:C,argument:this.convertChild(e.argument),attributes:this.convertImportAttributes(e.attributes),qualifier:this.convertChild(e.qualifier),typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null});return e.isTypeOf?this.createNode(e,{type:hs.TSTypeQuery,exprName:b,typeArguments:void 0}):b}case Pn.EnumDeclaration:{let C=e.members.map(E=>this.convertChild(E)),b=this.createNode(e,Ig(this,og,UNr).call(this,{type:hs.TSEnumDeclaration,body:this.createNode(e,{type:hs.TSEnumBody,range:[e.members.pos-1,e.end],members:C}),const:Rh(Pn.ConstKeyword,e),declare:Rh(Pn.DeclareKeyword,e),id:this.convertChild(e.name)},"members","'body.members'",e.members.map(E=>this.convertChild(E))));return this.fixExports(e,b)}case Pn.EnumMember:return this.createNode(e,{type:hs.TSEnumMember,computed:e.name.kind===Np.ComputedPropertyName,id:this.convertChild(e.name),initializer:e.initializer&&this.convertChild(e.initializer)});case Pn.ModuleDeclaration:{let C=Rh(Pn.DeclareKeyword,e),b=this.createNode(e,{type:hs.TSModuleDeclaration,...(()=>{if(e.flags&EP.GlobalAugmentation){let N=this.convertChild(e.name),B=this.convertChild(e.body);return(B==null||B.type===hs.TSModuleDeclaration)&&Ig(this,og,LR).call(this,e.body??e,"Expected a valid module body"),N.type!==hs.Identifier&&Ig(this,og,LR).call(this,e.name,"global module augmentation must have an Identifier id"),{body:B,declare:!1,global:!1,id:N,kind:"global"}}if(!(e.flags&EP.Namespace)){let N=this.convertChild(e.body);return{kind:"module",...N!=null?{body:N}:{},declare:!1,global:!1,id:this.convertChild(e.name)}}e.body==null&&Ig(this,og,LR).call(this,e,"Expected a module body"),e.name.kind!==Np.Identifier&&Ig(this,og,LR).call(this,e.name,"`namespace`s must have an Identifier id");let E=this.createNode(e.name,{type:hs.Identifier,range:[e.name.getStart(this.ast),e.name.getEnd()],decorators:[],name:e.name.text,optional:!1,typeAnnotation:void 0});for(;e.body&&WJe(e.body)&&e.body.name;){e=e.body,C||(C=Rh(Pn.DeclareKeyword,e));let N=e.name,B=this.createNode(N,{type:hs.Identifier,range:[N.getStart(this.ast),N.getEnd()],decorators:[],name:N.text,optional:!1,typeAnnotation:void 0});E=this.createNode(N,{type:hs.TSQualifiedName,range:[E.range[0],B.range[1]],left:E,right:B})}return{body:this.convertChild(e.body),declare:!1,global:!1,id:E,kind:"namespace"}})()});return b.declare=C,e.flags&EP.GlobalAugmentation&&(b.global=!0),this.fixExports(e,b)}case Pn.ParenthesizedType:return this.convertChild(e.type);case Pn.UnionType:return this.createNode(e,{type:hs.TSUnionType,types:e.types.map(C=>this.convertChild(C))});case Pn.IntersectionType:return this.createNode(e,{type:hs.TSIntersectionType,types:e.types.map(C=>this.convertChild(C))});case Pn.AsExpression:return this.createNode(e,{type:hs.TSAsExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Pn.InferType:return this.createNode(e,{type:hs.TSInferType,typeParameter:this.convertChild(e.typeParameter)});case Pn.LiteralType:return e.literal.kind===Pn.NullKeyword?this.createNode(e.literal,{type:hs.TSNullKeyword}):this.createNode(e,{type:hs.TSLiteralType,literal:this.convertChild(e.literal)});case Pn.TypeAssertionExpression:return this.createNode(e,{type:hs.TSTypeAssertion,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Pn.ImportEqualsDeclaration:return this.fixExports(e,this.createNode(e,{type:hs.TSImportEqualsDeclaration,id:this.convertChild(e.name),importKind:e.isTypeOnly?"type":"value",moduleReference:this.convertChild(e.moduleReference)}));case Pn.ExternalModuleReference:return e.expression.kind!==Pn.StringLiteral&&Ig(this,og,tf).call(this,e.expression,"String literal expected."),this.createNode(e,{type:hs.TSExternalModuleReference,expression:this.convertChild(e.expression)});case Pn.NamespaceExportDeclaration:return this.createNode(e,{type:hs.TSNamespaceExportDeclaration,id:this.convertChild(e.name)});case Pn.AbstractKeyword:return this.createNode(e,{type:hs.TSAbstractKeyword});case Pn.TupleType:{let C=e.elements.map(b=>this.convertChild(b));return this.createNode(e,{type:hs.TSTupleType,elementTypes:C})}case Pn.NamedTupleMember:{let C=this.createNode(e,{type:hs.TSNamedTupleMember,elementType:this.convertChild(e.type,e),label:this.convertChild(e.name,e),optional:e.questionToken!=null});return e.dotDotDotToken?(C.range[0]=C.label.range[0],C.loc.start=C.label.loc.start,this.createNode(e,{type:hs.TSRestType,typeAnnotation:C})):C}case Pn.OptionalType:return this.createNode(e,{type:hs.TSOptionalType,typeAnnotation:this.convertChild(e.type)});case Pn.RestType:return this.createNode(e,{type:hs.TSRestType,typeAnnotation:this.convertChild(e.type)});case Pn.TemplateLiteralType:{let C=this.createNode(e,{type:hs.TSTemplateLiteralType,quasis:[this.convertChild(e.head)],types:[]});return e.templateSpans.forEach(b=>{C.types.push(this.convertChild(b.type)),C.quasis.push(this.convertChild(b.literal))}),C}case Pn.ClassStaticBlockDeclaration:return this.createNode(e,{type:hs.StaticBlock,body:this.convertBodyExpressions(e.body.statements,e)});case Pn.AssertEntry:case Pn.ImportAttribute:return this.createNode(e,{type:hs.ImportAttribute,key:this.convertChild(e.name),value:this.convertChild(e.value)});case Pn.SatisfiesExpression:return this.createNode(e,{type:hs.TSSatisfiesExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});default:return this.deeplyCopy(e)}}createNode(e,t){let r=t;return r.range??(r.range=yJe(e,this.ast)),r.loc??(r.loc=$me(r.range,this.ast)),r&&this.options.shouldPreserveNodeMaps&&this.esTreeNodeToTSNodeMap.set(r,e),r}convertProgram(){return this.converter(this.ast)}deeplyCopy(e){e.kind===Np.JSDocFunctionType&&Ig(this,og,tf).call(this,e,"JSDoc types can only be used inside documentation comments.");let t=`TS${Pn[e.kind]}`;if(this.options.errorOnUnknownASTType&&!hs[t])throw new Error(`Unknown AST_NODE_TYPE: "${t}"`);let r=this.createNode(e,{type:t});"type"in e&&(r.typeAnnotation=e.type&&"kind"in e.type&&aza(e.type)?this.convertTypeAnnotation(e.type,e):null),"typeArguments"in e&&(r.typeArguments=e.typeArguments&&"pos"in e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null),"typeParameters"in e&&(r.typeParameters=e.typeParameters&&"pos"in e.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters):null);let n=YNe(e);n!=null&&n.length&&(r.decorators=n.map(o=>this.convertChild(o)));let a=new Set(["_children","decorators","end","flags","heritageClauses","illegalDecorators","jsDoc","kind","locals","localSymbol","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(e).filter(([o])=>!a.has(o)).forEach(([o,l])=>{Array.isArray(l)?r[o]=l.map(A=>this.convertChild(A)):l&&typeof l=="object"&&l.kind?r[o]=this.convertChild(l):r[o]=l}),r}fixExports(e,t){let r=WJe(e)&&e.flags&EP.Namespace?Ltc(e):R6(e);if(r?.[0].kind===Pn.ExportKeyword){this.registerTSNodeInNodeMap(e,t);let n=r[0],a=r[1],o=a?.kind===Pn.DefaultKeyword,l=o?VNe(a,this.ast,this.ast):VNe(n,this.ast,this.ast);if(t.range[0]=l.getStart(this.ast),t.loc=$me(t.range,this.ast),o)return this.createNode(e,{type:hs.ExportDefaultDeclaration,range:[n.getStart(this.ast),t.range[1]],declaration:t,exportKind:"value"});let A=t.type===hs.TSInterfaceDeclaration||t.type===hs.TSTypeAliasDeclaration,f="declare"in t&&t.declare;return this.createNode(e,Ig(this,og,QNe).call(this,{type:hs.ExportNamedDeclaration,range:[n.getStart(this.ast),t.range[1]],attributes:[],declaration:t,exportKind:A||f?"type":"value",source:null,specifiers:[]},"assertions","attributes",!0))}return t}getASTMaps(){return{esTreeNodeToTSNodeMap:this.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:this.tsNodeToESTreeNodeMap}}registerTSNodeInNodeMap(e,t){t&&this.options.shouldPreserveNodeMaps&&!this.tsNodeToESTreeNodeMap.has(e)&&this.tsNodeToESTreeNodeMap.set(e,t)}};og=new WeakSet,JNr=function(e,t){let r=t===Np.ForInStatement?"for...in":"for...of";if(M$a(e)){e.declarations.length!==1&&Ig(this,og,tf).call(this,e,`Only a single variable declaration is allowed in a '${r}' statement.`);let n=e.declarations[0];n.initializer?Ig(this,og,tf).call(this,n,`The variable declaration of a '${r}' statement cannot have an initializer.`):n.type&&Ig(this,og,tf).call(this,n,`The variable declaration of a '${r}' statement cannot have a type annotation.`),t===Np.ForInStatement&&e.flags&EP.Using&&Ig(this,og,tf).call(this,e,"The left-hand side of a 'for...in' statement cannot be a 'using' declaration.")}else!GDr(e)&&e.kind!==Np.ObjectLiteralExpression&&e.kind!==Np.ArrayLiteralExpression&&Ig(this,og,tf).call(this,e,`The left-hand side of a '${r}' statement must be a variable or a property access.`)},UBi=function(e){if(!this.options.allowInvalidAST){Btc(e)&&Ig(this,og,tf).call(this,e.illegalDecorators[0],"Decorators are not valid here.");for(let t of YNe(e,!0)??[])Ztc(e)||(PNr(e)&&!LSi(e.body)?Ig(this,og,tf).call(this,t,"A decorator can only decorate a method implementation, not an overload."):Ig(this,og,tf).call(this,t,"Decorators are not valid here."));for(let t of R6(e,!0)??[]){if(t.kind!==Pn.ReadonlyKeyword&&((e.kind===Pn.PropertySignature||e.kind===Pn.MethodSignature)&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier cannot appear on a type member`),e.kind===Pn.IndexSignature&&(t.kind!==Pn.StaticKeyword||!jNe(e.parent))&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier cannot appear on an index signature`)),t.kind!==Pn.InKeyword&&t.kind!==Pn.OutKeyword&&t.kind!==Pn.ConstKeyword&&e.kind===Pn.TypeParameter&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier cannot appear on a type parameter`),(t.kind===Pn.InKeyword||t.kind===Pn.OutKeyword)&&(e.kind!==Pn.TypeParameter||!(TDr(e.parent)||jNe(e.parent)||CBi(e.parent)))&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier can only appear on a type parameter of a class, interface or type alias`),t.kind===Pn.ReadonlyKeyword&&e.kind!==Pn.PropertyDeclaration&&e.kind!==Pn.PropertySignature&&e.kind!==Pn.IndexSignature&&e.kind!==Pn.Parameter&&Ig(this,og,tf).call(this,t,"'readonly' modifier can only appear on a property declaration or index signature."),t.kind===Pn.DeclareKeyword&&jNe(e.parent)&&!fEt(e)&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier cannot appear on class elements of this kind.`),t.kind===Pn.DeclareKeyword&&bEt(e)){let r=XNr(e.declarationList);(r==="using"||r==="await using")&&Ig(this,og,tf).call(this,t,`'declare' modifier cannot appear on a '${r}' declaration.`)}if(t.kind===Pn.AbstractKeyword&&e.kind!==Pn.ClassDeclaration&&e.kind!==Pn.ConstructorType&&e.kind!==Pn.MethodDeclaration&&e.kind!==Pn.PropertyDeclaration&&e.kind!==Pn.GetAccessor&&e.kind!==Pn.SetAccessor&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier can only appear on a class, method, or property declaration.`),(t.kind===Pn.StaticKeyword||t.kind===Pn.PublicKeyword||t.kind===Pn.ProtectedKeyword||t.kind===Pn.PrivateKeyword)&&(e.parent.kind===Pn.ModuleBlock||e.parent.kind===Pn.SourceFile)&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier cannot appear on a module or namespace element.`),t.kind===Pn.AccessorKeyword&&e.kind!==Pn.PropertyDeclaration&&Ig(this,og,tf).call(this,t,"'accessor' modifier can only appear on a property declaration."),t.kind===Pn.AsyncKeyword&&e.kind!==Pn.MethodDeclaration&&e.kind!==Pn.FunctionDeclaration&&e.kind!==Pn.FunctionExpression&&e.kind!==Pn.ArrowFunction&&Ig(this,og,tf).call(this,t,"'async' modifier cannot be used here."),e.kind===Pn.Parameter&&(t.kind===Pn.StaticKeyword||t.kind===Pn.ExportKeyword||t.kind===Pn.DeclareKeyword||t.kind===Pn.AsyncKeyword)&&Ig(this,og,tf).call(this,t,`'${Sy(t.kind)}' modifier cannot appear on a parameter.`),t.kind===Pn.PublicKeyword||t.kind===Pn.ProtectedKeyword||t.kind===Pn.PrivateKeyword)for(let r of R6(e)??[])r!==t&&(r.kind===Pn.PublicKeyword||r.kind===Pn.ProtectedKeyword||r.kind===Pn.PrivateKeyword)&&Ig(this,og,tf).call(this,r,"Accessibility modifier already seen.");if(e.kind===Pn.Parameter&&(t.kind===Pn.PublicKeyword||t.kind===Pn.PrivateKeyword||t.kind===Pn.ProtectedKeyword||t.kind===Pn.ReadonlyKeyword||t.kind===Pn.OverrideKeyword)){let r=ktc(e);r.kind===Pn.Constructor&&LSi(r.body)||Ig(this,og,tf).call(this,t,"A parameter property is only allowed in a constructor implementation.")}}}},tf=function(e,t){let r,n;throw typeof e=="number"?r=n=e:(r=e.getStart(this.ast),n=e.getEnd()),XBi(t,this.ast,r,n)},LR=function(e,t){this.options.allowInvalidAST||Ig(this,og,tf).call(this,e,t)},QNe=function(e,t,r,n=!1){let a=n;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>e[r]:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use '${r}' instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),e[r]),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e},UNr=function(e,t,r,n){let a=!1;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>n:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use ${r} instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),n),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e};function Otc(e,t,r=e.getSourceFile()){let n=[];for(;;){if(Zvi(e.kind))t(e);else{let a=e.getChildren(r);if(a.length===1){e=a[0];continue}for(let o=a.length-1;o>=0;--o)n.push(a[o])}if(n.length===0)break;e=n.pop()}}function Ptc(e,t,r=e.getSourceFile()){let n=r.text,a=r.languageVariant!==lvi.JSX;return Otc(e,l=>{if(l.pos!==l.end&&(l.kind!==Np.JsxText&&h7a(n,l.pos===0?(wvi(n)??"").length:l.pos,o),a||Mtc(l)))return m7a(n,l.end,o)},r);function o(l,A,f){t(n,{end:A,kind:f,pos:l})}}function Mtc(e){switch(e.kind){case Np.CloseBraceToken:return e.parent.kind!==Np.JsxExpression||!wNr(e.parent.parent);case Np.GreaterThanToken:switch(e.parent.kind){case Np.JsxClosingElement:case Np.JsxClosingFragment:return!wNr(e.parent.parent.parent);case Np.JsxOpeningElement:return e.end!==e.parent.end;case Np.JsxOpeningFragment:return!1;case Np.JsxSelfClosingElement:return e.end!==e.parent.end||!wNr(e.parent.parent)}}return!0}function wNr(e){return e.kind===Np.JsxElement||e.kind===Np.JsxFragment}var[owu,awu]=Aja.split(".").map(e=>Number.parseInt(e,10)),cwu=LG.Intrinsic??LG.Any|LG.Unknown|LG.String|LG.Number|LG.BigInt|LG.Boolean|LG.BooleanLiteral|LG.ESSymbol|LG.Void|LG.Undefined|LG.Null|LG.Never|LG.NonPrimitive;function Htc(e,t){let r=[];return Ptc(e,(n,a)=>{let o=a.kind===Np.SingleLineCommentTrivia?uD.Line:uD.Block,l=[a.pos,a.end],A=$me(l,e),f=l[0]+2,I=a.kind===Np.SingleLineCommentTrivia?l[1]-f:l[1]-f-2;r.push({type:o,loc:A,range:l,value:t.slice(f,f+I)})},e),r}var Ytc=()=>{};function Qtc(e,t,r){let{parseDiagnostics:n}=e;if(n.length)throw Vtc(n[0]);let a=new Wtc(e,{allowInvalidAST:t.allowInvalidAST,errorOnUnknownASTType:t.errorOnUnknownASTType,shouldPreserveNodeMaps:r,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings}),o=a.convertProgram();return(!t.range||!t.loc)&&Ytc(o,{enter:l=>{t.range||delete l.range,t.loc||delete l.loc}}),t.tokens&&(o.tokens=Stc(e)),t.comment&&(o.comments=Htc(e,t.codeFullText)),{astMaps:a.getASTMaps(),estree:o}}function KBi(e){if(typeof e!="object"||e==null)return!1;let t=e;return t.kind===Np.SourceFile&&typeof t.getFullText=="function"}var Xtc=function(e){return e&&e.__esModule?e:{default:e}},Jtc=Xtc({extname:e=>"."+e.split(".").pop()});function Utc(e,t){switch(Jtc.default.extname(e).toLowerCase()){case lH.Cjs:case lH.Js:case lH.Mjs:return Oee.JS;case lH.Cts:case lH.Mts:case lH.Ts:return Oee.TS;case lH.Json:return Oee.JSON;case lH.Jsx:return Oee.JSX;case lH.Tsx:return Oee.TSX;default:return t?Oee.TSX:Oee.TS}}var Ktc={default:$Nr},jtc=(0,Ktc.default)("typescript-eslint:typescript-estree:create-program:createSourceFile");function ztc(e){return jtc("Getting AST without type information in %s mode for: %s",e.jsx?"TSX":"TS",e.filePath),KBi(e.code)?e.code:kec(e.filePath,e.codeFullText,{jsDocParsingMode:e.jsDocParsingMode,languageVersion:sDr.Latest,setExternalModuleIndicator:e.setExternalModuleIndicator},!0,Utc(e.filePath,e.jsx))}var qtc=()=>{},$tc=e=>e,erc=class{},trc=()=>!1,rrc=()=>{},nrc=function(e){return e&&e.__esModule?e:{default:e}},KNr={default:$Nr},irc=nrc({extname:e=>"."+e.split(".").pop()}),src=(0,KNr.default)("typescript-eslint:typescript-estree:parseSettings:createParseSettings"),VSi,WSi=null,OSi,PSi,MSi,HSi,bJe={ParseAll:(OSi=BJe)==null?void 0:OSi.ParseAll,ParseForTypeErrors:(PSi=BJe)==null?void 0:PSi.ParseForTypeErrors,ParseForTypeInfo:(MSi=BJe)==null?void 0:MSi.ParseForTypeInfo,ParseNone:(HSi=BJe)==null?void 0:HSi.ParseNone};function orc(e,t={}){var r;let n=arc(e),a=trc(t),o=typeof t.tsconfigRootDir=="string"?t.tsconfigRootDir:"/prettier-security-dirname-placeholder",l=typeof t.loggerFn=="function",A=$tc(typeof t.filePath=="string"&&t.filePath!==""?t.filePath:crc(t.jsx),o),f=irc.default.extname(A).toLowerCase(),I=(()=>{switch(t.jsDocParsingMode){case"all":return bJe.ParseAll;case"none":return bJe.ParseNone;case"type-info":return bJe.ParseForTypeInfo;default:return bJe.ParseAll}})(),C={loc:t.loc===!0,range:t.range===!0,allowInvalidAST:t.allowInvalidAST===!0,code:e,codeFullText:n,comment:t.comment===!0,comments:[],debugLevel:t.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(t.debugLevel)?new Set(t.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:t.errorOnUnknownASTType===!0,extraFileExtensions:Array.isArray(t.extraFileExtensions)&&t.extraFileExtensions.every(b=>typeof b=="string")?t.extraFileExtensions:[],filePath:A,jsDocParsingMode:I,jsx:t.jsx===!0,log:typeof t.loggerFn=="function"?t.loggerFn:t.loggerFn===!1?()=>{}:console.log,preserveNodeMaps:t.preserveNodeMaps!==!1,programs:Array.isArray(t.programs)?t.programs:null,projects:new Map,projectService:t.projectService||t.project&&t.projectService!==!1&&(void 0).env.TYPESCRIPT_ESLINT_PROJECT_SERVICE==="true"?WSi??(WSi=qtc(t.projectService,I,o)):void 0,setExternalModuleIndicator:t.sourceType==="module"||t.sourceType==null&&f===lH.Mjs||t.sourceType==null&&f===lH.Mts?b=>{b.externalModuleIndicator=!0}:void 0,singleRun:a,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings??!0,tokens:t.tokens===!0?[]:null,tsconfigMatchCache:VSi??(VSi=new erc(a?"Infinity":((r=t.cacheLifetime)==null?void 0:r.glob)??void 0)),tsconfigRootDir:o};if(C.debugLevel.size>0){let b=[];C.debugLevel.has("typescript-eslint")&&b.push("typescript-eslint:*"),(C.debugLevel.has("eslint")||KNr.default.enabled("eslint:*,-eslint:code-path"))&&b.push("eslint:*,-eslint:code-path"),KNr.default.enable(b.join(","))}if(Array.isArray(t.programs)){if(!t.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.");src("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return!C.programs&&!C.projectService&&(C.projects=new Map),t.jsDocParsingMode==null&&C.projects.size===0&&C.programs==null&&C.projectService==null&&(C.jsDocParsingMode=bJe.ParseNone),rrc(C,l),C}function arc(e){return KBi(e)?e.getFullText(e):typeof e=="string"?e:String(e)}function crc(e){return e?"estree.tsx":"estree.ts"}var lrc={default:$Nr},lwu=(0,lrc.default)("typescript-eslint:typescript-estree:parser");function urc(e,t){let{ast:r}=grc(e,t,!1);return r}function grc(e,t,r){let n=orc(e,t);if(t!=null&&t.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let a=ztc(n),{astMaps:o,estree:l}=Qtc(a,n,r);return{ast:l,esTreeNodeToTSNodeMap:o.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:o.tsNodeToESTreeNodeMap}}function Arc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var drc=Arc;function prc(e){let t=[];for(let r of e)try{return r()}catch(n){t.push(n)}throw Object.assign(new Error("All combinations failed"),{errors:t})}var frc=prc,Irc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},YSi=Irc;function hrc(e){return Array.isArray(e)&&e.length>0}var mrc=hrc;function w6(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(w6(o),a):a}function eCe(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function Crc(e){let t=new Set(e);return r=>t.has(r?.type)}var _rc=Crc,yrc=_rc(["Block","CommentBlock","MultiLine"]),jNr=yrc;function brc(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var QSi=brc;function Erc(e){return jNr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var Src=Erc,EJe=null;function xJe(e){if(EJe!==null&&typeof EJe.property){let t=EJe;return EJe=xJe.prototype=null,t}return EJe=xJe.prototype=e??Object.create(null),new xJe}var vrc=10;for(let e=0;e<=vrc;e++)xJe();function Brc(e){return xJe(e)}function wrc(e,t="type"){Brc(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Trc=wrc,Rrc={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},Nrc=Trc(Rrc),Drc=Nrc;function zNr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(Src)&&a.add(w6(o))}),e=TNr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=w6(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=TNr(e,a=>{switch(a.type){case"LogicalExpression":if(jBi(a))return qNr(a);break;case"VariableDeclaration":{let o=YSi(!1,a.declarations,-1);o!=null&&o.init&&n[eCe(o)]!==";"&&(a.range=[w6(a),eCe(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=w6(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),mrc(e.comments)){let a=YSi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];eCe(l)===w6(a)&&jNr(l)&&jNr(a)&&QSi(l)&&QSi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[w6(l),eCe(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function jBi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function qNr(e){return jBi(e)?qNr({type:"LogicalExpression",operator:e.operator,left:qNr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[w6(e.left),eCe(e.right.left)]}),right:e.right.right,range:[w6(e),eCe(e)]}):e}var xrc=krc,Grc=/\*\/$/,Frc=/^\/\*\*?/,Zrc=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Lrc=/(^|\s+)\/\/([^\n\r]*)/g,XSi=/^(\r?\n)+/,Vrc=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,JSi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,Wrc=/(\r?\n|^) *\* ?/g,Orc=[];function Prc(e){let t=e.match(Zrc);return t?t[0].trimStart():""}function Mrc(e){let t=` -`;e=XNe(!1,e.replace(Frc,"").replace(Grc,""),Wrc,"$1");let r="";for(;r!==e;)r=e,e=XNe(!1,e,Vrc,`${t}$1 $2${t}`);e=e.replace(XSi,"").trimEnd();let n=Object.create(null),a=XNe(!1,e,JSi,"").replace(XSi,"").trimEnd(),o;for(;o=JSi.exec(e);){let l=XNe(!1,o[2],Lrc,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...Orc,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function Hrc(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var Yrc=Hrc;function Qrc(e){let t=Yrc(e);t&&(e=e.slice(t.length+1));let r=Prc(e),{pragmas:n,comments:a}=Mrc(r);return{shebang:t,text:e,pragmas:n,comments:a}}function Xrc(e){let{pragmas:t}=Qrc(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function Jrc(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:Xrc,locStart:w6,locEnd:eCe,...e}}var Urc=Jrc;function Krc(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var jrc=Krc;function zrc(e){return e.charAt(0)==="#"&&e.charAt(1)==="!"?"//"+e.slice(2):e}var qrc=zrc,$rc={loc:!0,range:!0,comment:!0,tokens:!0,loggerFn:!1,project:!1,jsDocParsingMode:"none",suppressDeprecatedPropertyWarnings:!0};function enc(e){if(!(e!=null&&e.location))return e;let{message:t,location:{start:r,end:n}}=e;return drc(t,{loc:{start:{line:r.line,column:r.column+1},end:{line:n.line,column:n.column+1}},cause:e})}var tnc=e=>/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/iu.test(e);function rnc(e,t){let r=t?.filepath,n=[{...$rc,filePath:r}],a=jrc(t);if(a?n=n.map(l=>({...l,sourceType:a})):n=["module","script"].flatMap(l=>n.map(A=>({...A,sourceType:l}))),r&&tnc(r))return n;let o=inc(e);return[o,!o].flatMap(l=>n.map(A=>({...A,jsx:l})))}function nnc(e,t={}){let r=qrc(e),n=rnc(e,t),a;try{a=frc(n.map(o=>()=>urc(r,o)))}catch({errors:[o]}){throw enc(o)}return xrc(a,{text:e})}function inc(e){return new RegExp(["(?:^[^\"'`]*)"].join(""),"mu").test(e)}var snc=Urc(nnc),onc=zSi;var jJe={};Uf(jJe,{default:()=>Wsc,languages:()=>Ywi,options:()=>Qwi,parsers:()=>ikr,printers:()=>sTi});var anc=Object.create,KDr=Object.defineProperty,cnc=Object.getOwnPropertyDescriptor,lnc=Object.getOwnPropertyNames,unc=Object.getPrototypeOf,gnc=Object.prototype.hasOwnProperty,Qee=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),cwi=(e,t)=>{for(var r in t)KDr(e,r,{get:t[r],enumerable:!0})},Anc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of lnc(t))!gnc.call(e,a)&&a!==r&&KDr(e,a,{get:()=>t[a],enumerable:!(n=cnc(t,a))||n.enumerable});return e},lwi=(e,t,r)=>(r=e!=null?anc(unc(e)):{},Anc(t||!e||!e.__esModule?KDr(r,"default",{value:e,enumerable:!0}):r,e)),ACe=Qee(e=>{"use strict";var t={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"},n="tag:yaml.org,2002:",a={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function o(ne){let ce=[0],fe=ne.indexOf(` +`;function Yn(Ko,Sg){Ru[Ko]+=Sg}}function Kh(Pt){switch(Pt){case 3:return"\u2502";case 12:return"\u2500";case 5:return"\u256F";case 9:return"\u2570";case 6:return"\u256E";case 10:return"\u256D";case 7:return"\u2524";case 11:return"\u251C";case 13:return"\u2534";case 14:return"\u252C";case 15:return"\u256B"}return" "}function Ri(Pt,Hu){if(Pt.fill)Pt.fill(Hu);else for(let Ru=0;Ru0?Pt.repeat(Hu):"";let Ru="";for(;Ru.length{},Xja=()=>{},$bt,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.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",e[e.NumericLiteral=9]="NumericLiteral",e[e.BigIntLiteral=10]="BigIntLiteral",e[e.StringLiteral=11]="StringLiteral",e[e.JsxText=12]="JsxText",e[e.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=14]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=16]="TemplateHead",e[e.TemplateMiddle=17]="TemplateMiddle",e[e.TemplateTail=18]="TemplateTail",e[e.OpenBraceToken=19]="OpenBraceToken",e[e.CloseBraceToken=20]="CloseBraceToken",e[e.OpenParenToken=21]="OpenParenToken",e[e.CloseParenToken=22]="CloseParenToken",e[e.OpenBracketToken=23]="OpenBracketToken",e[e.CloseBracketToken=24]="CloseBracketToken",e[e.DotToken=25]="DotToken",e[e.DotDotDotToken=26]="DotDotDotToken",e[e.SemicolonToken=27]="SemicolonToken",e[e.CommaToken=28]="CommaToken",e[e.QuestionDotToken=29]="QuestionDotToken",e[e.LessThanToken=30]="LessThanToken",e[e.LessThanSlashToken=31]="LessThanSlashToken",e[e.GreaterThanToken=32]="GreaterThanToken",e[e.LessThanEqualsToken=33]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=35]="EqualsEqualsToken",e[e.ExclamationEqualsToken=36]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",e[e.PlusToken=40]="PlusToken",e[e.MinusToken=41]="MinusToken",e[e.AsteriskToken=42]="AsteriskToken",e[e.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",e[e.SlashToken=44]="SlashToken",e[e.PercentToken=45]="PercentToken",e[e.PlusPlusToken=46]="PlusPlusToken",e[e.MinusMinusToken=47]="MinusMinusToken",e[e.LessThanLessThanToken=48]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=51]="AmpersandToken",e[e.BarToken=52]="BarToken",e[e.CaretToken=53]="CaretToken",e[e.ExclamationToken=54]="ExclamationToken",e[e.TildeToken=55]="TildeToken",e[e.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",e[e.BarBarToken=57]="BarBarToken",e[e.QuestionToken=58]="QuestionToken",e[e.ColonToken=59]="ColonToken",e[e.AtToken=60]="AtToken",e[e.QuestionQuestionToken=61]="QuestionQuestionToken",e[e.BacktickToken=62]="BacktickToken",e[e.HashToken=63]="HashToken",e[e.EqualsToken=64]="EqualsToken",e[e.PlusEqualsToken=65]="PlusEqualsToken",e[e.MinusEqualsToken=66]="MinusEqualsToken",e[e.AsteriskEqualsToken=67]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=69]="SlashEqualsToken",e[e.PercentEqualsToken=70]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=74]="AmpersandEqualsToken",e[e.BarEqualsToken=75]="BarEqualsToken",e[e.BarBarEqualsToken=76]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=79]="CaretEqualsToken",e[e.Identifier=80]="Identifier",e[e.PrivateIdentifier=81]="PrivateIdentifier",e[e.JSDocCommentTextToken=82]="JSDocCommentTextToken",e[e.BreakKeyword=83]="BreakKeyword",e[e.CaseKeyword=84]="CaseKeyword",e[e.CatchKeyword=85]="CatchKeyword",e[e.ClassKeyword=86]="ClassKeyword",e[e.ConstKeyword=87]="ConstKeyword",e[e.ContinueKeyword=88]="ContinueKeyword",e[e.DebuggerKeyword=89]="DebuggerKeyword",e[e.DefaultKeyword=90]="DefaultKeyword",e[e.DeleteKeyword=91]="DeleteKeyword",e[e.DoKeyword=92]="DoKeyword",e[e.ElseKeyword=93]="ElseKeyword",e[e.EnumKeyword=94]="EnumKeyword",e[e.ExportKeyword=95]="ExportKeyword",e[e.ExtendsKeyword=96]="ExtendsKeyword",e[e.FalseKeyword=97]="FalseKeyword",e[e.FinallyKeyword=98]="FinallyKeyword",e[e.ForKeyword=99]="ForKeyword",e[e.FunctionKeyword=100]="FunctionKeyword",e[e.IfKeyword=101]="IfKeyword",e[e.ImportKeyword=102]="ImportKeyword",e[e.InKeyword=103]="InKeyword",e[e.InstanceOfKeyword=104]="InstanceOfKeyword",e[e.NewKeyword=105]="NewKeyword",e[e.NullKeyword=106]="NullKeyword",e[e.ReturnKeyword=107]="ReturnKeyword",e[e.SuperKeyword=108]="SuperKeyword",e[e.SwitchKeyword=109]="SwitchKeyword",e[e.ThisKeyword=110]="ThisKeyword",e[e.ThrowKeyword=111]="ThrowKeyword",e[e.TrueKeyword=112]="TrueKeyword",e[e.TryKeyword=113]="TryKeyword",e[e.TypeOfKeyword=114]="TypeOfKeyword",e[e.VarKeyword=115]="VarKeyword",e[e.VoidKeyword=116]="VoidKeyword",e[e.WhileKeyword=117]="WhileKeyword",e[e.WithKeyword=118]="WithKeyword",e[e.ImplementsKeyword=119]="ImplementsKeyword",e[e.InterfaceKeyword=120]="InterfaceKeyword",e[e.LetKeyword=121]="LetKeyword",e[e.PackageKeyword=122]="PackageKeyword",e[e.PrivateKeyword=123]="PrivateKeyword",e[e.ProtectedKeyword=124]="ProtectedKeyword",e[e.PublicKeyword=125]="PublicKeyword",e[e.StaticKeyword=126]="StaticKeyword",e[e.YieldKeyword=127]="YieldKeyword",e[e.AbstractKeyword=128]="AbstractKeyword",e[e.AccessorKeyword=129]="AccessorKeyword",e[e.AsKeyword=130]="AsKeyword",e[e.AssertsKeyword=131]="AssertsKeyword",e[e.AssertKeyword=132]="AssertKeyword",e[e.AnyKeyword=133]="AnyKeyword",e[e.AsyncKeyword=134]="AsyncKeyword",e[e.AwaitKeyword=135]="AwaitKeyword",e[e.BooleanKeyword=136]="BooleanKeyword",e[e.ConstructorKeyword=137]="ConstructorKeyword",e[e.DeclareKeyword=138]="DeclareKeyword",e[e.GetKeyword=139]="GetKeyword",e[e.InferKeyword=140]="InferKeyword",e[e.IntrinsicKeyword=141]="IntrinsicKeyword",e[e.IsKeyword=142]="IsKeyword",e[e.KeyOfKeyword=143]="KeyOfKeyword",e[e.ModuleKeyword=144]="ModuleKeyword",e[e.NamespaceKeyword=145]="NamespaceKeyword",e[e.NeverKeyword=146]="NeverKeyword",e[e.OutKeyword=147]="OutKeyword",e[e.ReadonlyKeyword=148]="ReadonlyKeyword",e[e.RequireKeyword=149]="RequireKeyword",e[e.NumberKeyword=150]="NumberKeyword",e[e.ObjectKeyword=151]="ObjectKeyword",e[e.SatisfiesKeyword=152]="SatisfiesKeyword",e[e.SetKeyword=153]="SetKeyword",e[e.StringKeyword=154]="StringKeyword",e[e.SymbolKeyword=155]="SymbolKeyword",e[e.TypeKeyword=156]="TypeKeyword",e[e.UndefinedKeyword=157]="UndefinedKeyword",e[e.UniqueKeyword=158]="UniqueKeyword",e[e.UnknownKeyword=159]="UnknownKeyword",e[e.UsingKeyword=160]="UsingKeyword",e[e.FromKeyword=161]="FromKeyword",e[e.GlobalKeyword=162]="GlobalKeyword",e[e.BigIntKeyword=163]="BigIntKeyword",e[e.OverrideKeyword=164]="OverrideKeyword",e[e.OfKeyword=165]="OfKeyword",e[e.QualifiedName=166]="QualifiedName",e[e.ComputedPropertyName=167]="ComputedPropertyName",e[e.TypeParameter=168]="TypeParameter",e[e.Parameter=169]="Parameter",e[e.Decorator=170]="Decorator",e[e.PropertySignature=171]="PropertySignature",e[e.PropertyDeclaration=172]="PropertyDeclaration",e[e.MethodSignature=173]="MethodSignature",e[e.MethodDeclaration=174]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",e[e.Constructor=176]="Constructor",e[e.GetAccessor=177]="GetAccessor",e[e.SetAccessor=178]="SetAccessor",e[e.CallSignature=179]="CallSignature",e[e.ConstructSignature=180]="ConstructSignature",e[e.IndexSignature=181]="IndexSignature",e[e.TypePredicate=182]="TypePredicate",e[e.TypeReference=183]="TypeReference",e[e.FunctionType=184]="FunctionType",e[e.ConstructorType=185]="ConstructorType",e[e.TypeQuery=186]="TypeQuery",e[e.TypeLiteral=187]="TypeLiteral",e[e.ArrayType=188]="ArrayType",e[e.TupleType=189]="TupleType",e[e.OptionalType=190]="OptionalType",e[e.RestType=191]="RestType",e[e.UnionType=192]="UnionType",e[e.IntersectionType=193]="IntersectionType",e[e.ConditionalType=194]="ConditionalType",e[e.InferType=195]="InferType",e[e.ParenthesizedType=196]="ParenthesizedType",e[e.ThisType=197]="ThisType",e[e.TypeOperator=198]="TypeOperator",e[e.IndexedAccessType=199]="IndexedAccessType",e[e.MappedType=200]="MappedType",e[e.LiteralType=201]="LiteralType",e[e.NamedTupleMember=202]="NamedTupleMember",e[e.TemplateLiteralType=203]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",e[e.ImportType=205]="ImportType",e[e.ObjectBindingPattern=206]="ObjectBindingPattern",e[e.ArrayBindingPattern=207]="ArrayBindingPattern",e[e.BindingElement=208]="BindingElement",e[e.ArrayLiteralExpression=209]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=210]="ObjectLiteralExpression",e[e.PropertyAccessExpression=211]="PropertyAccessExpression",e[e.ElementAccessExpression=212]="ElementAccessExpression",e[e.CallExpression=213]="CallExpression",e[e.NewExpression=214]="NewExpression",e[e.TaggedTemplateExpression=215]="TaggedTemplateExpression",e[e.TypeAssertionExpression=216]="TypeAssertionExpression",e[e.ParenthesizedExpression=217]="ParenthesizedExpression",e[e.FunctionExpression=218]="FunctionExpression",e[e.ArrowFunction=219]="ArrowFunction",e[e.DeleteExpression=220]="DeleteExpression",e[e.TypeOfExpression=221]="TypeOfExpression",e[e.VoidExpression=222]="VoidExpression",e[e.AwaitExpression=223]="AwaitExpression",e[e.PrefixUnaryExpression=224]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=225]="PostfixUnaryExpression",e[e.BinaryExpression=226]="BinaryExpression",e[e.ConditionalExpression=227]="ConditionalExpression",e[e.TemplateExpression=228]="TemplateExpression",e[e.YieldExpression=229]="YieldExpression",e[e.SpreadElement=230]="SpreadElement",e[e.ClassExpression=231]="ClassExpression",e[e.OmittedExpression=232]="OmittedExpression",e[e.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",e[e.AsExpression=234]="AsExpression",e[e.NonNullExpression=235]="NonNullExpression",e[e.MetaProperty=236]="MetaProperty",e[e.SyntheticExpression=237]="SyntheticExpression",e[e.SatisfiesExpression=238]="SatisfiesExpression",e[e.TemplateSpan=239]="TemplateSpan",e[e.SemicolonClassElement=240]="SemicolonClassElement",e[e.Block=241]="Block",e[e.EmptyStatement=242]="EmptyStatement",e[e.VariableStatement=243]="VariableStatement",e[e.ExpressionStatement=244]="ExpressionStatement",e[e.IfStatement=245]="IfStatement",e[e.DoStatement=246]="DoStatement",e[e.WhileStatement=247]="WhileStatement",e[e.ForStatement=248]="ForStatement",e[e.ForInStatement=249]="ForInStatement",e[e.ForOfStatement=250]="ForOfStatement",e[e.ContinueStatement=251]="ContinueStatement",e[e.BreakStatement=252]="BreakStatement",e[e.ReturnStatement=253]="ReturnStatement",e[e.WithStatement=254]="WithStatement",e[e.SwitchStatement=255]="SwitchStatement",e[e.LabeledStatement=256]="LabeledStatement",e[e.ThrowStatement=257]="ThrowStatement",e[e.TryStatement=258]="TryStatement",e[e.DebuggerStatement=259]="DebuggerStatement",e[e.VariableDeclaration=260]="VariableDeclaration",e[e.VariableDeclarationList=261]="VariableDeclarationList",e[e.FunctionDeclaration=262]="FunctionDeclaration",e[e.ClassDeclaration=263]="ClassDeclaration",e[e.InterfaceDeclaration=264]="InterfaceDeclaration",e[e.TypeAliasDeclaration=265]="TypeAliasDeclaration",e[e.EnumDeclaration=266]="EnumDeclaration",e[e.ModuleDeclaration=267]="ModuleDeclaration",e[e.ModuleBlock=268]="ModuleBlock",e[e.CaseBlock=269]="CaseBlock",e[e.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",e[e.ImportDeclaration=272]="ImportDeclaration",e[e.ImportClause=273]="ImportClause",e[e.NamespaceImport=274]="NamespaceImport",e[e.NamedImports=275]="NamedImports",e[e.ImportSpecifier=276]="ImportSpecifier",e[e.ExportAssignment=277]="ExportAssignment",e[e.ExportDeclaration=278]="ExportDeclaration",e[e.NamedExports=279]="NamedExports",e[e.NamespaceExport=280]="NamespaceExport",e[e.ExportSpecifier=281]="ExportSpecifier",e[e.MissingDeclaration=282]="MissingDeclaration",e[e.ExternalModuleReference=283]="ExternalModuleReference",e[e.JsxElement=284]="JsxElement",e[e.JsxSelfClosingElement=285]="JsxSelfClosingElement",e[e.JsxOpeningElement=286]="JsxOpeningElement",e[e.JsxClosingElement=287]="JsxClosingElement",e[e.JsxFragment=288]="JsxFragment",e[e.JsxOpeningFragment=289]="JsxOpeningFragment",e[e.JsxClosingFragment=290]="JsxClosingFragment",e[e.JsxAttribute=291]="JsxAttribute",e[e.JsxAttributes=292]="JsxAttributes",e[e.JsxSpreadAttribute=293]="JsxSpreadAttribute",e[e.JsxExpression=294]="JsxExpression",e[e.JsxNamespacedName=295]="JsxNamespacedName",e[e.CaseClause=296]="CaseClause",e[e.DefaultClause=297]="DefaultClause",e[e.HeritageClause=298]="HeritageClause",e[e.CatchClause=299]="CatchClause",e[e.ImportAttributes=300]="ImportAttributes",e[e.ImportAttribute=301]="ImportAttribute",e[e.AssertClause=300]="AssertClause",e[e.AssertEntry=301]="AssertEntry",e[e.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",e[e.PropertyAssignment=303]="PropertyAssignment",e[e.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",e[e.SpreadAssignment=305]="SpreadAssignment",e[e.EnumMember=306]="EnumMember",e[e.SourceFile=307]="SourceFile",e[e.Bundle=308]="Bundle",e[e.JSDocTypeExpression=309]="JSDocTypeExpression",e[e.JSDocNameReference=310]="JSDocNameReference",e[e.JSDocMemberName=311]="JSDocMemberName",e[e.JSDocAllType=312]="JSDocAllType",e[e.JSDocUnknownType=313]="JSDocUnknownType",e[e.JSDocNullableType=314]="JSDocNullableType",e[e.JSDocNonNullableType=315]="JSDocNonNullableType",e[e.JSDocOptionalType=316]="JSDocOptionalType",e[e.JSDocFunctionType=317]="JSDocFunctionType",e[e.JSDocVariadicType=318]="JSDocVariadicType",e[e.JSDocNamepathType=319]="JSDocNamepathType",e[e.JSDoc=320]="JSDoc",e[e.JSDocComment=320]="JSDocComment",e[e.JSDocText=321]="JSDocText",e[e.JSDocTypeLiteral=322]="JSDocTypeLiteral",e[e.JSDocSignature=323]="JSDocSignature",e[e.JSDocLink=324]="JSDocLink",e[e.JSDocLinkCode=325]="JSDocLinkCode",e[e.JSDocLinkPlain=326]="JSDocLinkPlain",e[e.JSDocTag=327]="JSDocTag",e[e.JSDocAugmentsTag=328]="JSDocAugmentsTag",e[e.JSDocImplementsTag=329]="JSDocImplementsTag",e[e.JSDocAuthorTag=330]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",e[e.JSDocClassTag=332]="JSDocClassTag",e[e.JSDocPublicTag=333]="JSDocPublicTag",e[e.JSDocPrivateTag=334]="JSDocPrivateTag",e[e.JSDocProtectedTag=335]="JSDocProtectedTag",e[e.JSDocReadonlyTag=336]="JSDocReadonlyTag",e[e.JSDocOverrideTag=337]="JSDocOverrideTag",e[e.JSDocCallbackTag=338]="JSDocCallbackTag",e[e.JSDocOverloadTag=339]="JSDocOverloadTag",e[e.JSDocEnumTag=340]="JSDocEnumTag",e[e.JSDocParameterTag=341]="JSDocParameterTag",e[e.JSDocReturnTag=342]="JSDocReturnTag",e[e.JSDocThisTag=343]="JSDocThisTag",e[e.JSDocTypeTag=344]="JSDocTypeTag",e[e.JSDocTemplateTag=345]="JSDocTemplateTag",e[e.JSDocTypedefTag=346]="JSDocTypedefTag",e[e.JSDocSeeTag=347]="JSDocSeeTag",e[e.JSDocPropertyTag=348]="JSDocPropertyTag",e[e.JSDocThrowsTag=349]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",e[e.JSDocImportTag=351]="JSDocImportTag",e[e.SyntaxList=352]="SyntaxList",e[e.NotEmittedStatement=353]="NotEmittedStatement",e[e.NotEmittedTypeElement=354]="NotEmittedTypeElement",e[e.PartiallyEmittedExpression=355]="PartiallyEmittedExpression",e[e.CommaListExpression=356]="CommaListExpression",e[e.SyntheticReferenceExpression=357]="SyntheticReferenceExpression",e[e.Count=358]="Count",e[e.FirstAssignment=64]="FirstAssignment",e[e.LastAssignment=79]="LastAssignment",e[e.FirstCompoundAssignment=65]="FirstCompoundAssignment",e[e.LastCompoundAssignment=79]="LastCompoundAssignment",e[e.FirstReservedWord=83]="FirstReservedWord",e[e.LastReservedWord=118]="LastReservedWord",e[e.FirstKeyword=83]="FirstKeyword",e[e.LastKeyword=165]="LastKeyword",e[e.FirstFutureReservedWord=119]="FirstFutureReservedWord",e[e.LastFutureReservedWord=127]="LastFutureReservedWord",e[e.FirstTypeNode=182]="FirstTypeNode",e[e.LastTypeNode=205]="LastTypeNode",e[e.FirstPunctuation=19]="FirstPunctuation",e[e.LastPunctuation=79]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=165]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=9]="FirstLiteralToken",e[e.LastLiteralToken=15]="LastLiteralToken",e[e.FirstTemplateToken=15]="FirstTemplateToken",e[e.LastTemplateToken=18]="LastTemplateToken",e[e.FirstBinaryOperator=30]="FirstBinaryOperator",e[e.LastBinaryOperator=79]="LastBinaryOperator",e[e.FirstStatement=243]="FirstStatement",e[e.LastStatement=259]="LastStatement",e[e.FirstNode=166]="FirstNode",e[e.FirstJSDocNode=309]="FirstJSDocNode",e[e.LastJSDocNode=351]="LastJSDocNode",e[e.FirstJSDocTagNode=327]="FirstJSDocTagNode",e[e.LastJSDocTagNode=351]="LastJSDocTagNode",e[e.FirstContextualKeyword=128]="FirstContextualKeyword",e[e.LastContextualKeyword=165]="LastContextualKeyword",e))(Np||{}),vP=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.Using=4]="Using",e[e.AwaitUsing=6]="AwaitUsing",e[e.NestedNamespace=8]="NestedNamespace",e[e.Synthesized=16]="Synthesized",e[e.Namespace=32]="Namespace",e[e.OptionalChain=64]="OptionalChain",e[e.ExportContext=128]="ExportContext",e[e.ContainsThis=256]="ContainsThis",e[e.HasImplicitReturn=512]="HasImplicitReturn",e[e.HasExplicitReturn=1024]="HasExplicitReturn",e[e.GlobalAugmentation=2048]="GlobalAugmentation",e[e.HasAsyncFunctions=4096]="HasAsyncFunctions",e[e.DisallowInContext=8192]="DisallowInContext",e[e.YieldContext=16384]="YieldContext",e[e.DecoratorContext=32768]="DecoratorContext",e[e.AwaitContext=65536]="AwaitContext",e[e.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=262144]="ThisNodeHasError",e[e.JavaScriptFile=524288]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=2097152]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",e[e.JSDoc=16777216]="JSDoc",e[e.Ambient=33554432]="Ambient",e[e.InWithStatement=67108864]="InWithStatement",e[e.JsonFile=134217728]="JsonFile",e[e.TypeCached=268435456]="TypeCached",e[e.Deprecated=536870912]="Deprecated",e[e.BlockScoped=7]="BlockScoped",e[e.Constant=6]="Constant",e[e.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",e[e.ContextFlags=101441536]="ContextFlags",e[e.TypeExcludesFlags=81920]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",e))(vP||{}),pvi=(e=>(e[e.None=0]="None",e[e.Public=1]="Public",e[e.Private=2]="Private",e[e.Protected=4]="Protected",e[e.Readonly=8]="Readonly",e[e.Override=16]="Override",e[e.Export=32]="Export",e[e.Abstract=64]="Abstract",e[e.Ambient=128]="Ambient",e[e.Static=256]="Static",e[e.Accessor=512]="Accessor",e[e.Async=1024]="Async",e[e.Default=2048]="Default",e[e.Const=4096]="Const",e[e.In=8192]="In",e[e.Out=16384]="Out",e[e.Decorator=32768]="Decorator",e[e.Deprecated=65536]="Deprecated",e[e.JSDocPublic=8388608]="JSDocPublic",e[e.JSDocPrivate=16777216]="JSDocPrivate",e[e.JSDocProtected=33554432]="JSDocProtected",e[e.JSDocReadonly=67108864]="JSDocReadonly",e[e.JSDocOverride=134217728]="JSDocOverride",e[e.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",e[e.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",e[e.SyntacticModifiers=65535]="SyntacticModifiers",e[e.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",e[e.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",e[e.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",e[e.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=7]="AccessibilityModifier",e[e.ParameterPropertyModifier=31]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=28895]="TypeScriptModifier",e[e.ExportDefault=2080]="ExportDefault",e[e.All=131071]="All",e[e.Modifier=98303]="Modifier",e))(pvi||{}),fvi=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e[e.ComplexityOverflow=32]="ComplexityOverflow",e[e.StackDepthOverflow=64]="StackDepthOverflow",e[e.Overflow=96]="Overflow",e))(fvi||{}),GNr=(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))(GNr||{}),Ivi=(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=-1]="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))(Ivi||{}),hvi=(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.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",e[e.AssignmentsMarked=131072]="AssignmentsMarked",e[e.ContainsConstructorReference=262144]="ContainsConstructorReference",e[e.ConstructorReference=536870912]="ConstructorReference",e[e.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=4194304]="InCheckIdentifier",e[e.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",e[e.LazyFlags=539358128]="LazyFlags",e))(hvi||{}),VG=(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.Reserved1=536870912]="Reserved1",e[e.Reserved2=1073741824]="Reserved2",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.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.Primitive=402784252]="Primitive",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=473694207]="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.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",e[e.IncludesError=1073741824]="IncludesError",e[e.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",e))(VG||{}),mvi=(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.InstantiatedMapped=96]="InstantiatedMapped",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.SingleSignatureType=134217728]="SingleSignatureType",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[e.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",e))(mvi||{}),Cvi=(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.IsNonInferrable=64]="IsNonInferrable",e[e.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",e[e.PropagatingFlags=167]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(Cvi||{}),Pee=(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))(Pee||{}),aDr=(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.ES2023=10]="ES2023",e[e.ES2024=11]="ES2024",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(aDr||{}),_vi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(_vi||{}),uH=(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))(uH||{}),yvi=(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))(yvi||{}),bvi=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(bvi||{}),Evi=(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.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e))(Evi||{}),CJe={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},Svi={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},{name:"preserve",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}},TJe=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(TJe||{}),aCe="/",Jja="\\",X2i="://",Uja=/\\/g;function Kja(e){return e===47||e===92}function jja(e,t){return e.length>t.length&&Mja(e,t)}function cDr(e){return e.length>0&&Kja(e.charCodeAt(e.length-1))}function J2i(e){return e>=97&&e<=122||e>=65&&e<=90}function zja(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let n=e.charCodeAt(t+2);if(n===97||n===65)return t+3}return-1}function qja(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let n=e.indexOf(t===47?aCe:Jja,2);return n<0?e.length:n+1}if(J2i(t)&&e.charCodeAt(1)===58){let n=e.charCodeAt(2);if(n===47||n===92)return 3;if(e.length===2)return 2}let r=e.indexOf(X2i);if(r!==-1){let n=r+X2i.length,a=e.indexOf(aCe,n);if(a!==-1){let o=e.slice(0,r),l=e.slice(n,a);if(o==="file"&&(l===""||l==="localhost")&&J2i(e.charCodeAt(a+1))){let A=zja(e,a+2);if(A!==-1){if(e.charCodeAt(A)===47)return~(A+1);if(A===e.length)return~A}}return~(a+1)}return~e.length}return 0}function oEt(e){let t=qja(e);return t<0?~t:t}function vvi(e,t,r){if(e=aEt(e),oEt(e)===e.length)return"";e=wvi(e);let n=e.slice(Math.max(oEt(e),e.lastIndexOf(aCe)+1)),a=t!==void 0&&r!==void 0?Bvi(n,t,r):void 0;return a?n.slice(0,n.length-a.length):n}function U2i(e,t,r){if(sEt(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let n=e.slice(e.length-t.length);if(r(n,t))return n}}function $ja(e,t,r){if(typeof t=="string")return U2i(e,t,r)||"";for(let n of t){let a=U2i(e,n,r);if(a)return a}return""}function Bvi(e,t,r){if(t)return $ja(wvi(e),t,r?oDr:Vja);let n=vvi(e),a=n.lastIndexOf(".");return a>=0?n.substring(a):""}function e7a(e,t){let r=e.substring(0,t),n=e.substring(t).split(aCe);return n.length&&!rCe(n)&&n.pop(),[r,...n]}function t7a(e,t=""){return e=i7a(t,e),e7a(e,oEt(e))}function r7a(e,t){return e.length===0?"":(e[0]&&lDr(e[0]))+e.slice(1,t).join(aCe)}function aEt(e){return e.includes("\\")?e.replace(Uja,aCe):e}function n7a(e){if(!AD(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(n)}}return t}function i7a(e,...t){e&&(e=aEt(e));for(let r of t)r&&(r=aEt(r),!e||oEt(r)!==0?e=r:e=lDr(e)+r);return e}function s7a(e){if(e=aEt(e),!K2i.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!K2i.test(e)))return e;let r=r7a(n7a(t7a(e)));return r&&cDr(e)?lDr(r):r}function wvi(e){return cDr(e)?e.substr(0,e.length-1):e}function lDr(e){return cDr(e)?e:e+aCe}var K2i=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function $(e,t,r,n,a,o,l){return{code:e,category:t,key:r,message:n,reportsUnnecessary:a,elidedInCompatabilityPyramid:o,reportsDeprecated:l}}var ts={Unterminated_string_literal:$(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:$(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:$(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:$(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:$(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:$(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:$(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:$(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:$(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:$(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:$(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:$(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:$(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:$(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:$(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:$(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_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:$(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:$(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:$(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:$(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:$(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:$(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:$(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:$(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:$(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:$(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:$(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:$(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:$(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:$(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:$(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:$(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:$(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:$(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:$(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:$(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:$(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:$(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:$(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:$(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:$(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:$(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:$(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:$(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:$(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:$(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:$(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:$(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:$(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:$(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:$(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:$(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:$(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:$(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:$(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:$(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:$(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:$(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:$(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:$(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:$(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:$(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:$(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:$(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:$(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:$(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:$(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:$(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:$(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:$(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:$(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:$(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."),_0_declarations_must_be_initialized:$(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:$(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:$(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:$(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:$(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:$(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:$(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:$(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:$(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:$(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:$(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:$(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:$(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:$(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:$(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:$(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:$(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(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:$(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:$(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:$(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:$(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:$(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:$(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:$(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:$(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:$(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:$(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:$(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_ES5:$(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:$(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:$(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:$(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:$(1293,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ESM syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),with_statements_are_not_allowed_in_an_async_function_block:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_nodenext_or_preserve:$(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodene_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:$(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:$(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:$(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:$(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:$(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:$(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:$(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:$(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:$(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),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:$(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:$(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:$(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_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(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', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:$(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:$(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:$(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:$(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:$(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:$(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:$(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:$(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:$(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:$(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:$(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:$(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:$(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:$(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:$(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:$(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:$(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:$(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:$(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:$(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:$(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:$(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:$(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:$(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:$(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:$(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_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(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', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:$(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:$(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:$(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:$(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:$(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:$(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:$(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:$(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:$(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:$(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:$(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:$(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:$(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_set_of_attributes_as_arguments:$(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes 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:$(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_should_be_either_require_or_import:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:$(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:$(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:$(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:$(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:$(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:$(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:$(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:$(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:$(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:$(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:$(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:$(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:$(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:$(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:$(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:$(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:$(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:$(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:$(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:$(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:$(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:$(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:$(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:$(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:$(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:$(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:$(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:$(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:$(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:$(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:$(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:$(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:$(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:$(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:$(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:$(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:$(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:$(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:$(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:$(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:$(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:$(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:$(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:$(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:$(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:$(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:$(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:$(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:$(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:$(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:$(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:$(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:$(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:$(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:$(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),The_types_of_0_are_incompatible_between_these_types:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:$(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:$(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(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:$(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:$(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:$(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:$(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:$(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:$(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:$(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:$(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:$(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:$(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:$(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:$(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:$(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:$(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}'."),Untyped_function_calls_may_not_accept_type_arguments:$(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:$(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:$(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:$(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:$(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:$(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:$(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:$(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_undefined_void_nor_any_must_return_a_value:$(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:$(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:$(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:$(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_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:$(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),Overload_signatures_must_all_be_exported_or_non_exported:$(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:$(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:$(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:$(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:$(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:$(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:$(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:$(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:$(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:$(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:$(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:$(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:$(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:$(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:$(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:$(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:$(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:$(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:$(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:$(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:$(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:$(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:$(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:$(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:$(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:$(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:$(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:$(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:$(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:$(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_ES5_Consider_using_a_standard_function_expression:$(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in 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:$(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:$(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:$(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:$(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:$(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:$(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:$(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_ES5_Consider_using_a_standard_function_or_method:$(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:$(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:$(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:$(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:$(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:$(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:$(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:$(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:$(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:$(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:$(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:$(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:$(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:$(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),React_components_cannot_include_JSX_namespace_names:$(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:$(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."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:$(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:$(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:$(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:$(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}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:$(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:$(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:$(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 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:$(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:$(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:$(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:$(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:$(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:$(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_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:$(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:$(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:$(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:$(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:$(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:$(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:$(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:$(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:$(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:$(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:$(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_nodenext_or_preserve:$(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:$(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."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:$(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:$(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:$(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_compile_to_CommonJS_require_calls:$(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:$(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:$(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:$(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_It_can_only_extend_other_named_object_types:$(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:$(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:$(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:$(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:$(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:$(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?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:$(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:$(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:$(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:$(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_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:$(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements 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_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:$(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:$(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:$(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:$(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:$(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:$(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:$(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:$(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:$(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:$(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:$(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:$(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:$(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:$(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:$(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:$(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:$(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:$(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:$(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:$(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:$(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:$(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_declaration_0_is_using_private_name_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(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:$(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_anonymous_class_type_may_not_be_private_or_protected:$(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type 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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:$(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:$(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),The_current_host_does_not_support_the_0_option:$(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:$(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:$(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:$(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:$(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(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_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_cannot_be_specified_when_module_is_set_to_none_system_or_umd:$(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:$(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:$(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:$(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:$(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:$(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:$(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:$(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_preserve_or_to_es2015_or_later:$(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:$(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:$(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:$(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:$(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:$(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:$(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:$(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:$(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:$(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:$(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:$(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."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:$(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:$(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:$(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:$(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:$(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:$(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:$(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:$(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:$(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:$(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:$(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:$(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:$(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:$(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:$(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:$(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:$(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:$(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:$(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:$(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:$(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:$(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:$(6024,3,"options_6024","options"),file:$(6025,3,"file_6025","file"),Examples_Colon_0:$(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:$(6027,3,"Options_Colon_6027","Options:"),Version_0:$(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:$(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:$(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:$(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:$(6034,3,"KIND_6034","KIND"),FILE:$(6035,3,"FILE_6035","FILE"),VERSION:$(6036,3,"VERSION_6036","VERSION"),LOCATION:$(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:$(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:$(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:$(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:$(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:$(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:$(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:$(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:$(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:$(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:$(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:$(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:$(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:$(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:$(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:$(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:$(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:$(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:$(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:$(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:$(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:$(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:$(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:$(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:$(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:$(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:$(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:$(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:$(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:$(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:$(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:$(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:$(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:$(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:$(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:$(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:$(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:$(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:$(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:$(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:$(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:$(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:$(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:$(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:$(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:$(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:$(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:$(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:$(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:$(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:$(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:$(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:$(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:$(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:$(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:$(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:$(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:$(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:$(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:$(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:$(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:$(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:$(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:$(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:$(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:$(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:$(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:$(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:$(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:$(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:$(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:$(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:$(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:$(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:$(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:$(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:$(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:$(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:$(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:$(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:$(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:$(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:$(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:$(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:$(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:$(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:$(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:$(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:$(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:$(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:$(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:$(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:$(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:$(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:$(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:$(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:$(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:$(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:$(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:$(6244,3,"Modules_6244","Modules"),File_Management:$(6245,3,"File_Management_6245","File Management"),Emit:$(6246,3,"Emit_6246","Emit"),JavaScript_Support:$(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:$(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:$(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:$(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:$(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:$(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:$(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:$(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:$(6255,3,"Projects_6255","Projects"),Output_Formatting:$(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:$(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:$(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_0:$(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:$(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:$(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:$(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:$(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:$(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."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:$(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:$(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:$(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:$(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:$(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:$(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:$(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:$(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:$(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:$(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:$(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:$(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."),Referenced_project_0_may_not_disable_emit:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:$(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:$(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:$(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:$(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}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:$(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:$(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:$(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:$(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:$(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:$(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:$(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:$(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:$(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:$(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:$(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:$(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:$(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:$(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),Skip_building_downstream_projects_on_error_in_upstream_project:$(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:$(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:$(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:$(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:$(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:$(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:$(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:$(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:$(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:$(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:$(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."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:$(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:$(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Default_catch_clause_variables_as_unknown_instead_of_any:$(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:$(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."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:$(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:$(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:$(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),one_of_Colon:$(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:$(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:$(6902,3,"type_Colon_6902","type:"),default_Colon:$(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:$(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:$(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:$(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:$(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:$(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:$(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:$(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:$(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:$(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:$(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:$(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:$(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:$(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:$(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:$(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:$(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:$(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:$(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:$(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:$(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:$(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:$(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:$(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:$(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:$(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:$(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:$(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:$(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:$(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:$(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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_Consider_supplying_a_return_type_annotation:$(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:$(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:$(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:$(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:$(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:$(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:$(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:$(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:$(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:$(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."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:$(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:$(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:$(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:$(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:$(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:$(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:$(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:$(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:$(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:$(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:$(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:$(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:$(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:$(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:$(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:$(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:$(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:$(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:$(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:$(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:$(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:$(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:$(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:$(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:$(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:$(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:$(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:$(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:$(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:$(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:$(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:$(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}'?"),Unicode_escape_sequence_cannot_appear_here:$(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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."),JSDoc_typedef_may_be_converted_to_TypeScript_type:$(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:$(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:$(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:$(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:$(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:$(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:$(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:$(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:$(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:$(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:$(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:$(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:$(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:$(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:$(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:$(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:$(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:$(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:$(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:$(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:$(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:$(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:$(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:$(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:$(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:$(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:$(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:$(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:$(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:$(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:$(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:$(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:$(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:$(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:$(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:$(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:$(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:$(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:$(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:$(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:$(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:$(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:$(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:$(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:$(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:$(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:$(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:$(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:$(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:$(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:$(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:$(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:$(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:$(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:$(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:$(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:$(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:$(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:$(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:$(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:$(95005,3,"Extract_function_95005","Extract function"),Extract_constant:$(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:$(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:$(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:$(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:$(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:$(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:$(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:$(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:$(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:$(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:$(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:$(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:$(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:$(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:$(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:$(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:$(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:$(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:$(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:$(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:$(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:$(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:$(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:$(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:$(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:$(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:$(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:$(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:$(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:$(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:$(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:$(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:$(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:$(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:$(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:$(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:$(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:$(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:$(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:$(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:$(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:$(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:$(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:$(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:$(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:$(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:$(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:$(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:$(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:$(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:$(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:$(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:$(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:$(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:$(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:$(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:$(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:$(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:$(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:$(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:$(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:$(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:$(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:$(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:$(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:$(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:$(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:$(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:$(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:$(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:$(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:$(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:$(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:$(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:$(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:$(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:$(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:$(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:$(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:$(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:$(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:$(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:$(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:$(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:$(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:$(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:$(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:$(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:$(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:$(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:$(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:$(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:$(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:$(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:$(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:$(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:$(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:$(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:$(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:$(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:$(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:$(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:$(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:$(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:$(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:$(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:$(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:$(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:$(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:$(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:$(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:$(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:$(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:$(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:$(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:$(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:$(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:$(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:$(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:$(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:$(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:$(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:$(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:$(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:$(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:$(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:$(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:$(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:$(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:$(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:$(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:$(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:$(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:$(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:$(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:$(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:$(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:$(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:$(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:$(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:$(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:$(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:$(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:$(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:$(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:$(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:$(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:$(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:$(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:$(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:$(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:$(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:$(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:$(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:$(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:$(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:$(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:$(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:$(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:$(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:$(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:$(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:$(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:$(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:$(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:$(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:$(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:$(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:$(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:$(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:$(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:$(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:$(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:$(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:$(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:$(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:$(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:$(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:$(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:$(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:$(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:$(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:$(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:$(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:$(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:$(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:$(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:$(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:$(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:$(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:$(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:$(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:$(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:$(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:$(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:$(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:$(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:$(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'.")};function J1(e){return e>=80}function o7a(e){return e===32||J1(e)}var uDr={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},a7a=new Map(Object.entries(uDr)),Tvi=new Map(Object.entries({...uDr,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),Rvi=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),c7a=new Map([[1,CJe.RegularExpressionFlagsHasIndices],[16,CJe.RegularExpressionFlagsDotAll],[32,CJe.RegularExpressionFlagsUnicode],[64,CJe.RegularExpressionFlagsUnicodeSets],[128,CJe.RegularExpressionFlagsSticky]]),l7a=[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],u7a=[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],g7a=[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,2160,2183,2185,2190,2208,2249,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,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,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,5905,5919,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,6988,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,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,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,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,43881,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,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,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,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,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,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,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,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,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,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,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],A7a=[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,2160,2183,2185,2190,2200,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,2901,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,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,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,3790,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,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,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,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,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,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,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,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,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,43881,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,65381,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,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,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,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,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,70753,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,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,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,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,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,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,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,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,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,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],d7a=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,p7a=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,f7a=/@(?:see|link)/i;function cEt(e,t){if(e=2?cEt(e,g7a):cEt(e,l7a)}function h7a(e,t){return t>=2?cEt(e,A7a):cEt(e,u7a)}function Nvi(e){let t=[];return e.forEach((r,n)=>{t[r]=n}),t}var m7a=Nvi(Tvi);function vy(e){return m7a[e]}function Dvi(e){return Tvi.get(e)}var Lwu=Nvi(Rvi);function j2i(e){return Rvi.get(e)}function kvi(e){let t=[],r=0,n=0;for(;r127&&BV(a)&&(t.push(n),n=r);break}}return t.push(n),t}function C7a(e,t,r,n,a){(t<0||t>=e.length)&&(a?t=t<0?0:t>=e.length?e.length-1:t:Zo.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${n!==void 0?Eja(e,kvi(n)):"unknown"}`));let o=e[t]+r;return a?o>e[t+1]?e[t+1]:typeof n=="string"&&o>n.length?n.length:o:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function BV(e){return e===10||e===13||e===8232||e===8233}function xce(e){return e>=48&&e<=57}function CNr(e){return xce(e)||e>=65&&e<=70||e>=97&&e<=102}function gDr(e){return e>=65&&e<=90||e>=97&&e<=122}function Gvi(e){return gDr(e)||xce(e)||e===95}function _Nr(e){return e>=48&&e<=55}function w6(e,t,r,n,a){if(OJe(t))return t;let o=!1;for(;;){let l=e.charCodeAt(t);switch(l){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;o=!!a;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(n)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&JNe(l)){t++;continue}break}return t}}var eEt=7;function qme(e,t){if(Zo.assert(t>=0),t===0||BV(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+eEt=0&&r127&&JNe(B)){b&&BV(B)&&(C=!0),r++;continue}break e}}return b&&(N=a(A,f,I,C,o,N)),N}function b7a(e,t,r,n){return hEt(!1,e,t,!1,r,n)}function E7a(e,t,r,n){return hEt(!1,e,t,!0,r,n)}function S7a(e,t,r,n,a){return hEt(!0,e,t,!1,r,n,a)}function v7a(e,t,r,n,a){return hEt(!0,e,t,!0,r,n,a)}function Lvi(e,t,r,n,a,o=[]){return o.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),o}function ZNr(e,t){return S7a(e,t,Lvi,void 0,void 0)}function B7a(e,t){return v7a(e,t,Lvi,void 0,void 0)}function Vvi(e){let t=ADr.exec(e);if(t)return t[0]}function I4(e,t){return gDr(e)||e===36||e===95||e>127&&I7a(e,t)}function Wee(e,t,r){return Gvi(e)||e===36||(r===1?e===45||e===58:!1)||e>127&&h7a(e,t)}function w7a(e,t,r){let n=$me(e,0);if(!I4(n,t))return!1;for(let a=WR(n);aC,getStartPos:()=>C,getTokenEnd:()=>f,getTextPos:()=>f,getToken:()=>E,getTokenStart:()=>b,getTokenPos:()=>b,getTokenText:()=>A.substring(b,f),getTokenValue:()=>N,hasUnicodeEscape:()=>(B&1024)!==0,hasExtendedUnicodeEscape:()=>(B&8)!==0,hasPrecedingLineBreak:()=>(B&1)!==0,hasPrecedingJSDocComment:()=>(B&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(B&32768)!==0,isIdentifier:()=>E===80||E>118,isReservedWord:()=>E>=83&&E<=118,isUnterminated:()=>(B&4)!==0,getCommentDirectives:()=>F,getNumericLiteralFlags:()=>B&25584,getTokenFlags:()=>B,reScanGreaterToken:qr,reScanAsteriskEqualsToken:_n,reScanSlashToken:ke,reScanTemplateToken:Ao,reScanTemplateHeadOrNoSubstitutionTemplate:Vr,scanJsxIdentifier:al,scanJsxAttributeValue:Sc,reScanJsxAttributeValue:Hr,reScanJsxToken:xi,reScanLessThanToken:no,reScanHashToken:ga,reScanQuestionToken:Ya,reScanInvalidIdentifier:cr,scanJsxToken:Gc,scanJsDocToken:Ft,scanJSDocCommentTextToken:Or,scan:Xt,getText:ps,clearCommentDirectives:_o,setText:yo,setScriptTarget:gc,setLanguageVariant:_g,setScriptKind:Nc,setJSDocParsingMode:oA,setOnError:Qa,resetTokenState:ma,setTextPos:ma,setSkipJsDocLeadingAsterisks:vu,tryScan:Qi,lookAhead:Pr,scanRange:Rn};return Zo.isDebugging&&Object.defineProperty(ne,"__debugShowCurrentPositionInText",{get:()=>{let li=ne.getText();return li.slice(0,ne.getTokenFullStart())+"\u2551"+li.slice(ne.getTokenFullStart())}}),ne;function ce(li){return $me(A,li)}function fe(li){return li>=0&&li=0&&li=65&&Oc<=70)Oc+=32;else if(!(Oc>=48&&Oc<=57||Oc>=97&&Oc<=102))break;Xa.push(Oc),f++,Ql=!1}return Xa.length=I){Ws+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}let ac=ue(f);if(ac===Ei){Ws+=A.substring(Xa,f),f++;break}if(ac===92&&!li){Ws+=A.substring(Xa,f),Ws+=Ot(3),Xa=f;continue}if((ac===10||ac===13)&&!li){Ws+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}f++}return Ws}function lt(li){let Ei=ue(f)===96;f++;let Ws=f,Xa="",ac;for(;;){if(f>=I){Xa+=A.substring(Ws,f),B|=4,be(ts.Unterminated_template_literal),ac=Ei?15:18;break}let Ql=ue(f);if(Ql===96){Xa+=A.substring(Ws,f),f++,ac=Ei?15:18;break}if(Ql===36&&f+1=I)return be(ts.Unexpected_end_of_text),"";let Ws=ue(f);switch(f++,Ws){case 48:if(f>=I||!xce(ue(f)))return"\0";case 49:case 50:case 51:f=55296&&Xa<=56319&&f+6=56320&&vg<=57343)return f=Oc,ac+String.fromCharCode(vg)}return ac;case 120:for(;f1114111&&(li&&be(ts.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Ws,f-Ws),Ql=!0),f>=I?(li&&be(ts.Unexpected_end_of_text),Ql=!0):ue(f)===125?f++:(li&&be(ts.Unterminated_Unicode_escape_sequence),Ql=!0),Ql?(B|=2048,A.substring(Ei,f)):(B|=8,z2i(ac))}function Sr(){if(f+5=0&&Wee(Ws,e)){li+=Er(!0),Ei=f;continue}if(Ws=Sr(),!(Ws>=0&&Wee(Ws,e)))break;B|=1024,li+=A.substring(Ei,f),li+=z2i(Ws),f+=6,Ei=f}else break}return li+=A.substring(Ei,f),li}function Nt(){let li=N.length;if(li>=2&&li<=12){let Ei=N.charCodeAt(0);if(Ei>=97&&Ei<=122){let Ws=a7a.get(N);if(Ws!==void 0)return E=Ws}}return E=80}function Fr(li){let Ei="",Ws=!1,Xa=!1;for(;;){let ac=ue(f);if(ac===95){B|=512,Ws?(Ws=!1,Xa=!0):be(Xa?ts.Multiple_consecutive_numeric_separators_are_not_permitted:ts.Numeric_separators_are_not_allowed_here,f,1),f++;continue}if(Ws=!0,!xce(ac)||ac-48>=li)break;Ei+=A[f],f++,Xa=!1}return ue(f-1)===95&&be(ts.Numeric_separators_are_not_allowed_here,f-1,1),Ei}function $t(){return ue(f)===110?(N+="n",B&384&&(N=Hqa(N)+"n"),f++,10):(N=""+(B&128?parseInt(N.slice(2),2):B&256?parseInt(N.slice(2),8):+N),9)}function Xt(){for(C=f,B=0;;){if(b=f,f>=I)return E=1;let li=ce(f);if(f===0&&li===35&&Fvi(A,f)){if(f=Zvi(A,f),t)continue;return E=6}switch(li){case 10:case 13:if(B|=1,t){f++;continue}else return li===13&&f+1=0&&I4(Ei,e))return N=Er(!0)+Bt(),E=Nt();let Ws=Sr();return Ws>=0&&I4(Ws,e)?(f+=6,B|=1024,N=String.fromCharCode(Ws)+Bt(),E=Nt()):(be(ts.Invalid_character),f++,E=0);case 35:if(f!==0&&A[f+1]==="!")return be(ts.can_only_be_used_at_the_start_of_a_file,f,2),f++,E=0;let Xa=ce(f+1);if(Xa===92){f++;let Oc=jt();if(Oc>=0&&I4(Oc,e))return N="#"+Er(!0)+Bt(),E=81;let vg=Sr();if(vg>=0&&I4(vg,e))return f+=6,B|=1024,N="#"+String.fromCharCode(vg)+Bt(),E=81;f--}return I4(Xa,e)?(f++,Ar(Xa,e)):(N="#",be(ts.Invalid_character,f++,WR(li))),E=81;case 65533:return be(ts.File_appears_to_be_binary,0,0),f=I,E=8;default:let ac=Ar(li,e);if(ac)return E=ac;if(RJe(li)){f+=WR(li);continue}else if(BV(li)){B|=1,f+=WR(li);continue}let Ql=WR(li);return be(ts.Invalid_character,f,Ql),f+=Ql,E=0}}}function lr(){switch(ae){case 0:return!0;case 1:return!1}return J!==3&&J!==4?!0:ae===3?!1:f7a.test(A.slice(C,f))}function cr(){Zo.assert(E===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),f=b=C,B=0;let li=ce(f),Ei=Ar(li,99);return Ei?E=Ei:(f+=WR(li),E)}function Ar(li,Ei){let Ws=li;if(I4(Ws,Ei)){for(f+=WR(Ws);f=I)return E=1;let Ei=ue(f);if(Ei===60)return ue(f+1)===47?(f+=2,E=31):(f++,E=30);if(Ei===123)return f++,E=19;let Ws=0;for(;f0)break;JNe(Ei)||(Ws=f)}f++}return N=A.substring(C,f),Ws===-1?13:12}function al(){if(J1(E)){for(;f=I)return E=1;for(let Ei=ue(f);f=0&&RJe(ue(f-1))&&!(f+1=I)return E=1;let li=ce(f);switch(f+=WR(li),li){case 9:case 11:case 12:case 32:for(;f=0&&I4(Ei,e))return N=Er(!0)+Bt(),E=Nt();let Ws=Sr();return Ws>=0&&I4(Ws,e)?(f+=6,B|=1024,N=String.fromCharCode(Ws)+Bt(),E=Nt()):(f++,E=0)}if(I4(li,e)){let Ei=li;for(;f=0),f=li,C=li,b=li,E=0,N=void 0,B=0}function vu(li){Q+=li?1:-1}}function $me(e,t){return e.codePointAt(t)}function WR(e){return e>=65536?2:e===-1?0:1}function T7a(e){if(Zo.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)}var R7a=String.fromCodePoint?e=>String.fromCodePoint(e):T7a;function z2i(e){return R7a(e)}var q2i=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),$2i=new Set(["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","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","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"]),eSi=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),QNe={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};QNe.Script_Extensions=QNe.Script;function v6(e){return e.start+e.length}function N7a(e){return e.length===0}function pDr(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function D7a(e,t){return pDr(e,t-e)}function _Je(e){return pDr(e.span.start,e.newLength)}function k7a(e){return N7a(e.span)&&e.newLength===0}function Wvi(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var Vwu=Wvi(pDr(0,0),0);function Ovi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function lEt(e){return(e.flags&16)===0}function x7a(e,t){if(e===void 0||lEt(e))return e;for(e=e.original;e;){if(lEt(e))return!t||t(e)?e:void 0;e=e.original}}function WNe(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function ZJe(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 TV(e){return ZJe(e.escapedText)}function Pvi(e){let t=Dvi(e.escapedText);return t?Zja(t,Gce):void 0}function LNr(e){return e.valueDeclaration&&iza(e.valueDeclaration)?TV(e.valueDeclaration.name):ZJe(e.escapedName)}function Mvi(e){let t=e.parent.parent;if(t){if(nSi(t))return Xbt(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return Xbt(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:let n=r.argumentExpression;if(r_(n))return n}break;case 217:return Xbt(t.expression);case 256:{if(nSi(t.statement)||hza(t.statement))return Xbt(t.statement);break}}}}function Xbt(e){let t=Hvi(e);return t&&r_(t)?t:void 0}function G7a(e){return e.name||Mvi(e)}function F7a(e){return!!e.name}function fDr(e){switch(e.kind){case 80:return e;case 348:case 341:{let{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{let r=e;switch(_Dr(r)){case 1:case 4:case 5:case 3:return yDr(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 346:return G7a(e);case 340:return Mvi(e);case 277:{let{expression:r}=e;return r_(r)?r:void 0}case 212:let t=e;if(sBi(t))return t.argumentExpression}return e.name}function Hvi(e){if(e!==void 0)return fDr(e)||(vBi(e)||BBi(e)||QNr(e)?Z7a(e):void 0)}function Z7a(e){if(e.parent){if($$a(e.parent)||Z$a(e.parent))return e.parent.name;if(qNe(e.parent)&&e===e.parent.right){if(r_(e.parent.left))return e.parent.left;if(gBi(e.parent.left))return yDr(e.parent.left)}else if(TBi(e.parent)&&r_(e.parent.name))return e.parent.name}else return}function L7a(e){if(gqa(e))return Mee(e.modifiers,TDr)}function V7a(e){if(HJe(e,98303))return Mee(e.modifiers,aza)}function Yvi(e,t){if(e.name)if(r_(e.name)){let r=e.name.escapedText;return LJe(e.parent,t).filter(n=>CSi(n)&&r_(n.name)&&n.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);Zo.assert(r>-1,"Parameters should always be in their parents' parameter list");let n=LJe(e.parent,t).filter(CSi);if(rpec(n)&&n.typeParameters.some(a=>a.name.escapedText===r))}function P7a(e){return Qvi(e,!1)}function M7a(e){return Qvi(e,!0)}function H7a(e){return Oce(e,sec)}function Y7a(e){return q7a(e,fec)}function Q7a(e){return Oce(e,oec,!0)}function X7a(e){return Oce(e,aec,!0)}function J7a(e){return Oce(e,cec,!0)}function U7a(e){return Oce(e,lec,!0)}function K7a(e){return Oce(e,uec,!0)}function j7a(e){return Oce(e,Aec,!0)}function z7a(e){let t=Oce(e,DDr);if(t&&t.typeExpression&&t.typeExpression.type)return t}function LJe(e,t){var r;if(!bDr(e))return L2;let n=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(n===void 0||t){let a=Kza(e,t);Zo.assert(a.length<2||a[0]!==a[1]),n=gvi(a,o=>LBi(o)?o.tags:o),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=n)}return n}function Xvi(e){return LJe(e,!1)}function Oce(e,t,r){return lvi(LJe(e,r),t)}function q7a(e,t){return Xvi(e).filter(t)}function VNr(e){return e.kind===80||e.kind===81}function $7a(e){return Pce(e)&&!!(e.flags&64)}function eza(e){return YJe(e)&&!!(e.flags&64)}function tSi(e){return SBi(e)&&!!(e.flags&64)}function IDr(e){return kDr(e,8)}function tza(e){return rEt(e)&&!!(e.flags&64)}function hDr(e){return e>=166}function Jvi(e){return e>=0&&e<=165}function rza(e){return Jvi(e.kind)}function Fce(e){return R6(e,"pos")&&R6(e,"end")}function nza(e){return 9<=e&&e<=15}function rSi(e){return 15<=e&&e<=18}function XNe(e){var t;return r_(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Uvi(e){var t;return cCe(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function iza(e){return(dEt(e)||uza(e))&&cCe(e.name)}function Oee(e){switch(e){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function sza(e){return!!(lBi(e)&31)}function oza(e){return sza(e)||e===126||e===164||e===129}function aza(e){return Oee(e.kind)}function Kvi(e){let t=e.kind;return t===80||t===81||t===11||t===9||t===167}function jvi(e){return!!e&&lza(e.kind)}function cza(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function lza(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return cza(e)}}function UNe(e){return e&&(e.kind===263||e.kind===231)}function uza(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function gza(e){let t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function Aza(e){return bqa(e.kind)}function dza(e){if(e){let t=e.kind;return t===207||t===206}return!1}function pza(e){let t=e.kind;return t===209||t===210}function fza(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function KNe(e){return zvi(IDr(e).kind)}function zvi(e){switch(e){case 211:case 212:case 214:case 213:case 284:case 285:case 288:case 215:case 209:case 217:case 210:case 231:case 218:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 228:case 97:case 106:case 110:case 112:case 108:case 235:case 233:case 236:case 102:case 282:return!0;default:return!1}}function Iza(e){return qvi(IDr(e).kind)}function qvi(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return zvi(e)}}function hza(e){return mza(IDr(e).kind)}function mza(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 356:case 355:case 238:return!0;default:return qvi(e)}}function Cza(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===346||e===338||e===348||e===202}function $vi(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function eBi(e){return e===252||e===251||e===259||e===246||e===244||e===242||e===249||e===250||e===248||e===245||e===256||e===253||e===255||e===257||e===258||e===243||e===247||e===254||e===353}function nSi(e){return e.kind===168?e.parent&&e.parent.kind!==345||lCe(e):Cza(e.kind)}function _za(e){let t=e.kind;return eBi(t)||$vi(t)||yza(e)}function yza(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!Zza(e)}function bza(e){let t=e.kind;return eBi(t)||$vi(t)||t===241}function tBi(e){return e.kind>=309&&e.kind<=351}function Eza(e){return e.kind===320||e.kind===319||e.kind===321||Bza(e)||Sza(e)||iec(e)||VBi(e)}function Sza(e){return e.kind>=327&&e.kind<=351}function Jbt(e){return e.kind===178}function Ubt(e){return e.kind===177}function nCe(e){if(!bDr(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function vza(e){return!!e.initializer}function mDr(e){return e.kind===11||e.kind===15}function Bza(e){return e.kind===324||e.kind===325||e.kind===326}function iSi(e){return(e.flags&33554432)!==0}var Wwu=wza();function wza(){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,n)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&JNe(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:zNe,decreaseIndent:zNe,clear:()=>e=""}}function Tza(e,t){let r=e.entries();for(let[n,a]of r){let o=t(a,n);if(o)return o}}function Rza(e){return e.end-e.pos}function rBi(e){return Nza(e),(e.flags&1048576)!==0}function Nza(e){e.flags&2097152||((e.flags&262144||Jk(e,rBi))&&(e.flags|=1048576),e.flags|=2097152)}function Lce(e){for(;e&&e.kind!==307;)e=e.parent;return e}function iCe(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function WNr(e){return!iCe(e)}function uEt(e,t,r){if(iCe(e))return e.pos;if(tBi(e)||e.kind===12)return w6((t??Lce(e)).text,e.pos,!1,!0);if(r&&nCe(e))return uEt(e.jsDoc[0],t);if(e.kind===352){t??(t=Lce(e));let n=iDr(WBi(e,t));if(n)return uEt(n,t,r)}return w6((t??Lce(e)).text,e.pos,!1,!1,Lza(e))}function sSi(e,t,r=!1){return NJe(e.text,t,r)}function Dza(e){return!!Ovi(e,tec)}function NJe(e,t,r=!1){if(iCe(t))return"";let n=e.substring(r?t.pos:w6(e,t.pos),t.end);return Dza(t)&&(n=n.split(/\r\n|\n|\r/).map(a=>a.replace(/^\s*\*/,"").trimStart()).join(` +`)),n}function jNe(e){let t=e.emitNode;return t&&t.flags||0}function kza(e,t,r){Zo.assertGreaterThanOrEqual(t,0),Zo.assertGreaterThanOrEqual(r,0),Zo.assertLessThanOrEqual(t,e.length),Zo.assertLessThanOrEqual(t+r,e.length)}function tEt(e){return e.kind===244&&e.expression.kind===11}function CDr(e){return!!(jNe(e)&2097152)}function oSi(e){return CDr(e)&&RBi(e)}function xza(e){return r_(e.name)&&!e.initializer}function aSi(e){return CDr(e)&&_Et(e)&&rDr(e.declarationList.declarations,xza)}function Gza(e,t){let r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?nDr(B7a(t,e.pos),ZNr(t,e.pos)):ZNr(t,e.pos);return Mee(r,n=>n.end<=e.end&&t.charCodeAt(n.pos+1)===42&&t.charCodeAt(n.pos+2)===42&&t.charCodeAt(n.pos+3)!==47)}function Fza(e){if(e)switch(e.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function Zza(e){return e&&e.kind===241&&jvi(e.parent)}function cSi(e){let t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function lCe(e){return!!e&&!!(e.flags&524288)}function Lza(e){return!!e&&!!(e.flags&16777216)}function Vza(e){for(;gEt(e,!0);)e=e.right;return e}function Wza(e){return r_(e)&&e.escapedText==="exports"}function Oza(e){return r_(e)&&e.escapedText==="module"}function nBi(e){return(Pce(e)||iBi(e))&&Oza(e.expression)&&WJe(e)==="exports"}function _Dr(e){let t=Mza(e);return t===5||lCe(e)?t:0}function Pza(e){return BJe(e.arguments)===3&&Pce(e.expression)&&r_(e.expression.expression)&&TV(e.expression.expression)==="Object"&&TV(e.expression.name)==="defineProperty"&&mEt(e.arguments[1])&&VJe(e.arguments[0],!0)}function iBi(e){return YJe(e)&&mEt(e.argumentExpression)}function MJe(e,t){return Pce(e)&&(!t&&e.expression.kind===110||r_(e.name)&&VJe(e.expression,!0))||sBi(e,t)}function sBi(e,t){return iBi(e)&&(!t&&e.expression.kind===110||vDr(e.expression)||MJe(e.expression,!0))}function VJe(e,t){return vDr(e)||MJe(e,t)}function Mza(e){if(SBi(e)){if(!Pza(e))return 0;let t=e.arguments[0];return Wza(t)||nBi(t)?8:MJe(t)&&WJe(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!gBi(e.left)||Hza(Vza(e))?0:VJe(e.left.expression,!0)&&WJe(e.left)==="prototype"&&EBi(Qza(e))?6:Yza(e.left)}function Hza(e){return W$a(e)&&$Ne(e.expression)&&e.expression.text==="0"}function yDr(e){if(Pce(e))return e.name;let t=EDr(e.argumentExpression);return $Ne(t)||mDr(t)?t:e}function WJe(e){let t=yDr(e);if(t){if(r_(t))return t.escapedText;if(mDr(t)||$Ne(t))return WNe(t.text)}}function Yza(e){if(e.expression.kind===110)return 4;if(nBi(e))return 2;if(VJe(e.expression,!0)){if(_qa(e.expression))return 3;let t=e;for(;!r_(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&WJe(t)==="exports")&&MJe(e))return 1;if(VJe(e,!0)||YJe(e)&&sqa(e))return 5}return 0}function Qza(e){for(;qNe(e.right);)e=e.right;return e.right}function Xza(e){return wBi(e)&&qNe(e.expression)&&_Dr(e.expression)!==0&&qNe(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function Jza(e){switch(e.kind){case 243:let t=ONr(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function ONr(e){return _Et(e)?iDr(e.declarationList.declarations):void 0}function Uza(e){return PJe(e)&&e.body&&e.body.kind===267?e.body:void 0}function bDr(e){switch(e.kind){case 219:case 226:case 241:case 252:case 179:case 296:case 263:case 231:case 175:case 176:case 185:case 180:case 251:case 259:case 246:case 212:case 242:case 1:case 266:case 306:case 277:case 278:case 281:case 244:case 249:case 250:case 248:case 262:case 218:case 184:case 177:case 80:case 245:case 272:case 271:case 181:case 264:case 317:case 323:case 256:case 174:case 173:case 267:case 202:case 270:case 210:case 169:case 217:case 211:case 303:case 172:case 171:case 253:case 240:case 178:case 304:case 305:case 255:case 257:case 258:case 265:case 168:case 260:case 243:case 247:case 254:return!0;default:return!1}}function Kza(e,t){let r;Fza(e)&&vza(e)&&nCe(e.initializer)&&(r=wV(r,lSi(e,e.initializer.jsDoc)));let n=e;for(;n&&n.parent;){if(nCe(n)&&(r=wV(r,lSi(e,n.jsDoc))),n.kind===169){r=wV(r,(t?O7a:W7a)(n));break}if(n.kind===168){r=wV(r,(t?M7a:P7a)(n));break}n=zza(n)}return r||L2}function lSi(e,t){let r=wja(t);return gvi(t,n=>{if(n===r){let a=Mee(n.tags,o=>jza(e,o));return n.tags===a?[n]:a}else return Mee(n.tags,gec)})}function jza(e,t){return!(DDr(t)||Iec(t))||!t.parent||!LBi(t.parent)||!RDr(t.parent.parent)||t.parent.parent===e}function zza(e){let t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||Uza(t)||gEt(e))return t;if(t.parent&&(ONr(t.parent)===e||gEt(t)))return t.parent;if(t.parent&&t.parent.parent&&(ONr(t.parent.parent)||Jza(t.parent.parent)===e||Xza(t.parent.parent)))return t.parent.parent}function EDr(e,t){return kDr(e,t?-2147483647:1)}function qza(e){let t=$za(e);if(t&&lCe(e)){let r=H7a(e);if(r)return r.class}return t}function $za(e){let t=SDr(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function eqa(e){if(lCe(e))return Y7a(e).map(t=>t.class);{let t=SDr(e.heritageClauses,119);return t?.types}}function tqa(e){return NDr(e)?rqa(e)||L2:UNe(e)&&nDr(xNr(qza(e)),eqa(e))||L2}function rqa(e){let t=SDr(e.heritageClauses,96);return t?t.types:void 0}function SDr(e,t){if(e){for(let r of e)if(r.token===t)return r}}function Gce(e){return 83<=e&&e<=165}function nqa(e){return 19<=e&&e<=79}function yNr(e){return Gce(e)||nqa(e)}function mEt(e){return mDr(e)||$Ne(e)}function iqa(e){return O$a(e)&&(e.operator===40||e.operator===41)&&$Ne(e.operand)}function sqa(e){if(!(e.kind===167||e.kind===212))return!1;let t=YJe(e)?EDr(e.argumentExpression):e.expression;return!mEt(t)&&!iqa(t)}function oqa(e){return VNr(e)?TV(e):ZBi(e)?Kqa(e):e.text}function ONe(e){return OJe(e.pos)||OJe(e.end)}function bNr(e){switch(e){case 61:return 4;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function ENr(e){return!!((e.templateFlags||0)&2048)}function aqa(e){return e&&!!(c$a(e)?ENr(e):ENr(e.head)||AD(e.templateSpans,t=>ENr(t.literal)))}var Owu=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"})),Pwu=new Map(Object.entries({'"':""","'":"'"}));function cqa(e){return!!e&&e.kind===80&&lqa(e)}function lqa(e){return e.escapedText==="this"}function HJe(e,t){return!!Aqa(e,t)}function uqa(e){return HJe(e,256)}function gqa(e){return HJe(e,32768)}function Aqa(e,t){return pqa(e)&t}function dqa(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=cBi(e)|536870912),r||t&&lCe(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=oBi(e)|268435456),aBi(e.modifierFlagsCache)):fqa(e.modifierFlagsCache))}function pqa(e){return dqa(e,!1)}function oBi(e){let t=0;return e.parent&&!AEt(e)&&(lCe(e)&&(Q7a(e)&&(t|=8388608),X7a(e)&&(t|=16777216),J7a(e)&&(t|=33554432),U7a(e)&&(t|=67108864),K7a(e)&&(t|=134217728)),j7a(e)&&(t|=65536)),t}function fqa(e){return e&65535}function aBi(e){return e&131071|(e&260046848)>>>23}function Iqa(e){return aBi(oBi(e))}function hqa(e){return cBi(e)|Iqa(e)}function cBi(e){let t=xDr(e)?SP(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function SP(e){let t=0;if(e)for(let r of e)t|=lBi(r.kind);return t}function lBi(e){switch(e){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 170:return 32768}return 0}function mqa(e){return e===76||e===77||e===78}function uBi(e){return e>=64&&e<=79}function gEt(e,t){return qNe(e)&&(t?e.operatorToken.kind===64:uBi(e.operatorToken.kind))&&KNe(e.left)}function vDr(e){return e.kind===80||Cqa(e)}function Cqa(e){return Pce(e)&&r_(e.name)&&vDr(e.expression)}function _qa(e){return MJe(e)&&WJe(e)==="prototype"}function SNr(e){return e.flags&3899393?e.objectFlags:0}function yqa(e){let t;return Jk(e,r=>{WNr(r)&&(t=r)},r=>{for(let n=r.length-1;n>=0;n--)if(WNr(r[n])){t=r[n];break}}),t}function bqa(e){return e>=182&&e<=205||e===133||e===159||e===150||e===163||e===151||e===136||e===154||e===155||e===116||e===157||e===146||e===141||e===233||e===312||e===313||e===314||e===315||e===316||e===317||e===318}function gBi(e){return e.kind===211||e.kind===212}function Eqa(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.lastAssignmentPos=void 0,this.links=void 0}function Sqa(e,t){this.flags=t,(Zo.isDebugging||$bt)&&(this.checker=e)}function vqa(e,t){this.flags=t,Zo.isDebugging&&(this.checker=e)}function vNr(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 Bqa(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 wqa(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 Tqa(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}var Z2={getNodeConstructor:()=>vNr,getTokenConstructor:()=>Bqa,getIdentifierConstructor:()=>wqa,getPrivateIdentifierConstructor:()=>vNr,getSourceFileConstructor:()=>vNr,getSymbolConstructor:()=>Eqa,getTypeConstructor:()=>Sqa,getSignatureConstructor:()=>vqa,getSourceMapSourceConstructor:()=>Tqa},Rqa=[];function Nqa(e){Object.assign(Z2,e),BP(Rqa,t=>t(Z2))}function Dqa(e,t){return e.replace(/\{(\d+)\}/g,(r,n)=>""+Zo.checkDefined(t[+n]))}var uSi;function kqa(e){return uSi&&uSi[e.key]||e.message}function FNe(e,t,r,n,a,...o){r+n>t.length&&(n=t.length-r),kza(t,r,n);let l=kqa(a);return AD(o)&&(l=Dqa(l,o)),{file:void 0,start:r,length:n,messageText:l,category:a.category,code:a.code,reportsUnnecessary:a.reportsUnnecessary,fileName:e}}function xqa(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function ABi(e,t){let r=t.fileName||"",n=t.text.length;Zo.assertEqual(e.fileName,r),Zo.assertLessThanOrEqual(e.start,n),Zo.assertLessThanOrEqual(e.start+e.length,n);let a={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){a.relatedInformation=[];for(let o of e.relatedInformation)xqa(o)&&o.fileName===r?(Zo.assertLessThanOrEqual(o.start,n),Zo.assertLessThanOrEqual(o.start+o.length,n),a.relatedInformation.push(ABi(o,t))):a.relatedInformation.push(o)}return a}function Ume(e,t){let r=[];for(let n of e)r.push(ABi(n,t));return r}function gSi(e){return e===4||e===2||e===1||e===6?1:0}var S0={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:e=>!!(e.allowImportingTsExtensions||e.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:e=>(e.target===0?void 0:e.target)??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:S0.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(S0.module.computeValue(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;case 200:t=100;break;default:t=1;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(S0.module.computeValue(e)===100||S0.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(S0.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:S0.esModuleInterop.computeValue(e)||S0.module.computeValue(e)===4||S0.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{let t=S0.moduleResolution.computeValue(e);if(!ASi(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{let t=S0.moduleResolution.computeValue(e);if(!ASi(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:S0.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||S0.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&S0.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?S0.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>Vee(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>Vee(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>Vee(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>Vee(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>Vee(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>Vee(e,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:e=>Vee(e,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:e=>Vee(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>Vee(e,"useUnknownInCatchVariables")}},Mwu=S0.allowImportingTsExtensions.computeValue,Hwu=S0.target.computeValue,Ywu=S0.module.computeValue,Qwu=S0.moduleResolution.computeValue,Xwu=S0.moduleDetection.computeValue,Jwu=S0.isolatedModules.computeValue,Uwu=S0.esModuleInterop.computeValue,Kwu=S0.allowSyntheticDefaultImports.computeValue,jwu=S0.resolvePackageJsonExports.computeValue,zwu=S0.resolvePackageJsonImports.computeValue,qwu=S0.resolveJsonModule.computeValue,$wu=S0.declaration.computeValue,eTu=S0.preserveConstEnums.computeValue,tTu=S0.incremental.computeValue,rTu=S0.declarationMap.computeValue,nTu=S0.allowJs.computeValue,iTu=S0.useDefineForClassFields.computeValue;function ASi(e){return e>=3&&e<=99||e===100}function Vee(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function Gqa(e){return Tza(targetOptionDeclaration.type,(t,r)=>t===e?r:void 0)}var Fqa=["node_modules","bower_components","jspm_packages"],dBi=`(?!(${Fqa.join("|")})(/|$))`,Zqa={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${dBi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>pBi(e,Zqa.singleAsteriskRegexFragment)},Lqa={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${dBi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>pBi(e,Lqa.singleAsteriskRegexFragment)};function pBi(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function Vqa(e,t){return t||Wqa(e)||3}function Wqa(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}}var fBi=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],sTu=uvi(fBi),oTu=[...fBi,[".json"]],Oqa=[[".js",".jsx"],[".mjs"],[".cjs"]],aTu=uvi(Oqa),Pqa=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],cTu=[...Pqa,[".json"]],Mqa=[".d.ts",".d.cts",".d.mts"];function OJe(e){return!(e>=0)}function Kbt(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),Zo.assert(e.relatedInformation!==L2,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function Hqa(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 I=e.length-1,C=0;for(;e.charCodeAt(C)===48;)C++;return e.slice(C,I)||"0"}let r=2,n=e.length-1,a=(n-r)*t,o=new Uint16Array((a>>>4)+(a&15?1:0));for(let I=n-1,C=0;I>=r;I--,C+=t){let b=C>>>4,E=e.charCodeAt(I),N=(E<=57?E-48:10+E-(E<=70?65:97))<<(C&15);o[b]|=N;let B=N>>>16;B&&(o[b+1]|=B)}let l="",A=o.length-1,f=!0;for(;f;){let I=0;f=!1;for(let C=A;C>=0;C--){let b=I<<16|o[C],E=b/10|0;o[C]=E,I=b-E*10,E&&!f&&(A=C,f=!0)}l=I+l}return l}function Yqa({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function PNr(e,t){return e.pos=t,e}function Qqa(e,t){return e.end=t,e}function Vce(e,t,r){return Qqa(PNr(e,t),r)}function dSi(e,t,r){return Vce(e,t,t+r)}function BDr(e,t){return e&&t&&(e.parent=t),e}function Xqa(e,t){if(!e)return e;return MSi(e,tBi(e)?r:a),e;function r(o,l){if(t&&o.parent===l)return"skip";BDr(o,l)}function n(o){if(nCe(o))for(let l of o.jsDoc)r(l,o),MSi(l,r)}function a(o,l){return r(o,l)||n(o)}}function Jqa(e){return!!(e.flags&262144&&e.isThisType)}function Uqa(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function Kqa(e){return`${TV(e.namespace)}:${TV(e.name)}`}var lTu=String.prototype.replace,MNr=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],uTu=new Set(MNr),jqa=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),gTu=new Set([...MNr,...MNr.map(e=>`node:${e}`),...jqa]);function zqa(){let e,t,r,n,a;return{createBaseSourceFileNode:o,createBaseIdentifierNode:l,createBasePrivateIdentifierNode:A,createBaseTokenNode:f,createBaseNode:I};function o(C){return new(a||(a=Z2.getSourceFileConstructor()))(C,-1,-1)}function l(C){return new(r||(r=Z2.getIdentifierConstructor()))(C,-1,-1)}function A(C){return new(n||(n=Z2.getPrivateIdentifierConstructor()))(C,-1,-1)}function f(C){return new(t||(t=Z2.getTokenConstructor()))(C,-1,-1)}function I(C){return new(e||(e=Z2.getNodeConstructor()))(C,-1,-1)}}var qqa={getParenthesizeLeftSideOfBinaryForOperator:e=>ME,getParenthesizeRightSideOfBinaryForOperator:e=>ME,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:ME,parenthesizeConditionOfConditionalExpression:ME,parenthesizeBranchOfConditionalExpression:ME,parenthesizeExpressionOfExportDefault:ME,parenthesizeExpressionOfNew:e=>B6(e,KNe),parenthesizeLeftSideOfAccess:e=>B6(e,KNe),parenthesizeOperandOfPostfixUnary:e=>B6(e,KNe),parenthesizeOperandOfPrefixUnary:e=>B6(e,Iza),parenthesizeExpressionsOfCommaDelimitedList:e=>B6(e,Fce),parenthesizeExpressionForDisallowedComma:ME,parenthesizeExpressionOfExpressionStatement:ME,parenthesizeConciseBodyOfArrowFunction:ME,parenthesizeCheckTypeOfConditionalType:ME,parenthesizeExtendsTypeOfConditionalType:ME,parenthesizeConstituentTypesOfUnionType:e=>B6(e,Fce),parenthesizeConstituentTypeOfUnionType:ME,parenthesizeConstituentTypesOfIntersectionType:e=>B6(e,Fce),parenthesizeConstituentTypeOfIntersectionType:ME,parenthesizeOperandOfTypeOperator:ME,parenthesizeOperandOfReadonlyTypeOperator:ME,parenthesizeNonArrayTypeOfPostfixType:ME,parenthesizeElementTypesOfTupleType:e=>B6(e,Fce),parenthesizeElementTypeOfTupleType:ME,parenthesizeTypeOfOptionalType:ME,parenthesizeTypeArguments:e=>e&&B6(e,Fce),parenthesizeLeadingTypeArgument:ME},jbt=0,$qa=[];function wDr(e,t){let r=e&8?ME:i$a,n=Y2i(()=>e&1?qqa:createParenthesizerRules(J)),a=Y2i(()=>e&2?nullNodeConverters:createNodeConverters(J)),o=lH(z=>(ye,We)=>At(ye,z,We)),l=lH(z=>ye=>se(z,ye)),A=lH(z=>ye=>K(ye,z)),f=lH(z=>()=>ZD(z)),I=lH(z=>ye=>t0(z,ye)),C=lH(z=>(ye,We)=>eN(z,ye,We)),b=lH(z=>(ye,We)=>LD(z,ye,We)),E=lH(z=>(ye,We)=>VD(z,ye,We)),N=lH(z=>(ye,We)=>Mo(z,ye,We)),B=lH(z=>(ye,We,_t)=>dp(z,ye,We,_t)),F=lH(z=>(ye,We,_t)=>IF(z,ye,We,_t)),Q=lH(z=>(ye,We,_t,Rr)=>hF(z,ye,We,_t,Rr)),J={get parenthesizer(){return n()},get converters(){return a()},baseFactory:t,flags:e,createNodeArray:ae,createNumericLiteral:ue,createBigIntLiteral:de,createStringLiteral:Se,createStringLiteralFromNode:De,createRegularExpressionLiteral:k,createLiteralLikeNode:tt,createIdentifier:Je,createTempVariable:ft,createLoopVariable:lt,createUniqueName:Ot,getGeneratedNameForNode:Er,createPrivateIdentifier:jt,createUniquePrivateName:Nt,getGeneratedPrivateNameForNode:Fr,createToken:Xt,createSuper:lr,createThis:cr,createNull:Ar,createTrue:qr,createFalse:_n,createModifier:ke,createModifiersFromModifierFlags:zt,createQualifiedName:Fn,updateQualifiedName:Nn,createComputedPropertyName:Hi,updateComputedPropertyName:Ao,createTypeParameterDeclaration:Vr,updateTypeParameterDeclaration:xi,createParameterDeclaration:no,updateParameterDeclaration:ga,createDecorator:Ya,updateDecorator:Gc,createPropertySignature:al,updatePropertySignature:Sc,createPropertyDeclaration:Or,updatePropertyDeclaration:Ft,createMethodSignature:zr,updateMethodSignature:Rn,createMethodDeclaration:Pr,updateMethodDeclaration:Qi,createConstructorDeclaration:gc,updateConstructorDeclaration:_g,createGetAccessorDeclaration:oA,updateGetAccessorDeclaration:ma,createSetAccessorDeclaration:li,updateSetAccessorDeclaration:Ei,createCallSignature:Xa,updateCallSignature:ac,createConstructSignature:Ql,updateConstructSignature:Oc,createIndexSignature:vg,updateIndexSignature:Kl,createClassStaticBlockDeclaration:_o,updateClassStaticBlockDeclaration:yo,createTemplateLiteralTypeSpan:Ju,updateTemplateLiteralTypeSpan:Da,createKeywordTypeNode:fu,createTypePredicateNode:yg,updateTypePredicateNode:_I,createTypeReferenceNode:Kh,updateTypeReferenceNode:Ri,createFunctionTypeNode:Do,updateFunctionTypeNode:Pt,createConstructorTypeNode:Ru,updateConstructorTypeNode:Yn,createTypeQueryNode:HA,updateTypeQueryNode:ZA,createTypeLiteralNode:$i,updateTypeLiteralNode:Al,createArrayTypeNode:zf,updateArrayTypeNode:zd,createTupleTypeNode:cA,updateTupleTypeNode:so,createNamedTupleMember:Ki,updateNamedTupleMember:cc,createOptionalTypeNode:Xs,updateOptionalTypeNode:ws,createRestTypeNode:Gs,updateRestTypeNode:Ma,createUnionTypeNode:Nf,updateUnionTypeNode:Am,createIntersectionTypeNode:Zl,updateIntersectionTypeNode:rc,createConditionalTypeNode:ad,updateConditionalTypeNode:Qm,createInferTypeNode:rl,updateInferTypeNode:LA,createImportTypeNode:bg,updateImportTypeNode:Yp,createParenthesizedType:YA,updateParenthesizedType:vr,createThisTypeNode:Zt,createTypeOperatorNode:yn,updateTypeOperatorNode:ls,createIndexedAccessTypeNode:oa,updateIndexedAccessTypeNode:Fs,createMappedTypeNode:Oa,updateMappedTypeNode:Ca,createLiteralTypeNode:gd,updateLiteralTypeNode:Dp,createTemplateLiteralType:VA,updateTemplateLiteralType:bl,createObjectBindingPattern:sp,updateObjectBindingPattern:QA,createArrayBindingPattern:ff,updateArrayBindingPattern:Zs,createBindingElement:io,updateBindingElement:Ea,createArrayLiteralExpression:Hl,updateArrayLiteralExpression:Dr,createObjectLiteralExpression:On,updateObjectLiteralExpression:di,createPropertyAccessExpression:e&4?(z,ye)=>setEmitFlags(vo(z,ye),262144):vo,updatePropertyAccessExpression:us,createPropertyAccessChain:e&4?(z,ye,We)=>setEmitFlags(Xl(z,ye,We),262144):Xl,updatePropertyAccessChain:WA,createElementAccessExpression:rf,updateElementAccessExpression:op,createElementAccessChain:bd,updateElementAccessChain:e2,createCallExpression:XA,updateCallExpression:Ac,createCallChain:Gm,updateCallChain:US,createNewExpression:qd,updateNewExpression:hh,createTaggedTemplateExpression:Qp,updateTaggedTemplateExpression:dC,createTypeAssertion:aE,updateTypeAssertion:j_,createParenthesizedExpression:ty,updateParenthesizedExpression:jE,createFunctionExpression:DC,updateFunctionExpression:i_,createArrowFunction:up,updateArrowFunction:Xm,createDeleteExpression:mb,updateDeleteExpression:pe,createTypeOfExpression:dm,updateTypeOfExpression:qf,createVoidExpression:yI,updateVoidExpression:bI,createAwaitExpression:U2,updateAwaitExpression:cE,createPrefixUnaryExpression:se,updatePrefixUnaryExpression:P,createPostfixUnaryExpression:K,updatePostfixUnaryExpression:we,createBinaryExpression:At,updateBinaryExpression:Yr,createConditionalExpression:Lr,updateConditionalExpression:fi,createTemplateExpression:$n,updateTemplateExpression:ra,createTemplateHead:BA,createTemplateMiddle:gI,createTemplateTail:gp,createNoSubstitutionTemplateLiteral:Cb,createTemplateLiteralLikeNode:eA,createYieldExpression:Na,updateYieldExpression:Rd,createSpreadElement:t2,updateSpreadElement:D_,createClassExpression:kC,updateClassExpression:Jm,createOmittedExpression:KS,createExpressionWithTypeArguments:Zg,updateExpressionWithTypeArguments:_b,createAsExpression:pC,updateAsExpression:xC,createNonNullExpression:K2,updateNonNullExpression:z_,createSatisfiesExpression:GC,updateSatisfiesExpression:FC,createNonNullChain:th,updateNonNullChain:mh,createMetaProperty:wA,updateMetaProperty:Nd,createTemplateSpan:Mc,updateTemplateSpan:Pf,createSemicolonClassElement:lE,createBlock:tA,updateBlock:jS,createVariableStatement:zS,updateVariableStatement:pm,createEmptyStatement:fm,createExpressionStatement:cs,updateExpressionStatement:na,createIfStatement:ko,updateIfStatement:ki,createDoStatement:jl,updateDoStatement:hd,createWhileStatement:$f,updateWhileStatement:Wd,createForStatement:fC,updateForStatement:zE,createForInStatement:Um,updateForInStatement:Ty,createForOfStatement:q_,updateForOfStatement:cd,createContinueStatement:qE,updateContinueStatement:$E,createBreakStatement:Xp,updateBreakStatement:qS,createReturnStatement:Ry,updateReturnStatement:ry,createWithStatement:yw,updateWithStatement:j2,createSwitchStatement:xc,updateSwitchStatement:gt,createLabeledStatement:ar,updateLabeledStatement:Jr,createThrowStatement:Gn,updateThrowStatement:Ts,createTryStatement:Qo,updateTryStatement:Bg,createDebuggerStatement:Dg,createVariableDeclaration:Df,updateVariableDeclaration:AI,createVariableDeclarationList:kh,updateVariableDeclarationList:uE,createFunctionDeclaration:GT,updateFunctionDeclaration:gB,createClassDeclaration:Ny,updateClassDeclaration:e1,createInterfaceDeclaration:$_,updateInterfaceDeclaration:ZT,createTypeAliasDeclaration:nf,updateTypeAliasDeclaration:Dy,createEnumDeclaration:$S,updateEnumDeclaration:rh,createModuleDeclaration:TA,updateModuleDeclaration:td,createModuleBlock:Km,updateModuleBlock:eI,createCaseBlock:yb,updateCaseBlock:k_,createNamespaceExportDeclaration:bb,updateNamespaceExportDeclaration:ky,createImportEqualsDeclaration:Eb,updateImportEqualsDeclaration:e0,createImportDeclaration:t1,updateImportDeclaration:AB,createImportClause:LT,updateImportClause:dB,createAssertClause:tv,updateAssertClause:qR,createAssertEntry:rv,updateAssertEntry:r1,createImportTypeAssertionContainer:z2,updateImportTypeAssertionContainer:VT,createImportAttributes:pn,updateImportAttributes:r2,createImportAttribute:q2,updateImportAttribute:ny,createNamespaceImport:Ap,updateNamespaceImport:bw,createNamespaceExport:pB,updateNamespaceExport:FD,createNamedImports:Dd,updateNamedImports:$R,createImportSpecifier:iy,updateImportSpecifier:fF,createExportAssignment:n2,updateExportAssignment:n1,createExportDeclaration:x_,updateExportDeclaration:i1,createNamedExports:sy,updateNamedExports:WT,createExportSpecifier:Sb,updateExportSpecifier:s_,createMissingDeclaration:xh,createExternalModuleReference:vb,updateExternalModuleReference:fB,get createJSDocAllType(){return f(312)},get createJSDocUnknownType(){return f(313)},get createJSDocNonNullableType(){return b(315)},get updateJSDocNonNullableType(){return E(315)},get createJSDocNullableType(){return b(314)},get updateJSDocNullableType(){return E(314)},get createJSDocOptionalType(){return I(316)},get updateJSDocOptionalType(){return C(316)},get createJSDocVariadicType(){return I(318)},get updateJSDocVariadicType(){return C(318)},get createJSDocNamepathType(){return I(319)},get updateJSDocNamepathType(){return C(319)},createJSDocFunctionType:lc,updateJSDocFunctionType:Ch,createJSDocTypeLiteral:sf,updateJSDocTypeLiteral:EI,createJSDocTypeExpression:gE,updateJSDocTypeExpression:nv,createJSDocSignature:Jp,updateJSDocSignature:IB,createJSDocTemplateTag:o1,updateJSDocTemplateTag:hB,createJSDocTypedefTag:Ew,updateJSDocTypedefTag:OT,createJSDocParameterTag:v0,updateJSDocParameterTag:ia,createJSDocPropertyTag:i2,updateJSDocPropertyTag:Ed,createJSDocCallbackTag:SI,updateJSDocCallbackTag:cg,createJSDocOverloadTag:Bb,updateJSDocOverloadTag:a1,createJSDocAugmentsTag:$2,updateJSDocAugmentsTag:n0,createJSDocImplementsTag:o_,updateJSDocImplementsTag:Mf,createJSDocSeeTag:Up,updateJSDocSeeTag:AE,createJSDocImportTag:xp,updateJSDocImportTag:s2,createJSDocNameReference:dE,updateJSDocNameReference:mp,createJSDocMemberName:jh,updateJSDocMemberName:B0,createJSDocLink:lA,updateJSDocLink:Iu,createJSDocLinkCode:Kp,updateJSDocLinkCode:IC,createJSDocLinkPlain:pE,updateJSDocLinkPlain:nh,get createJSDocTypeTag(){return F(344)},get updateJSDocTypeTag(){return Q(344)},get createJSDocReturnTag(){return F(342)},get updateJSDocReturnTag(){return Q(342)},get createJSDocThisTag(){return F(343)},get updateJSDocThisTag(){return Q(343)},get createJSDocAuthorTag(){return N(330)},get updateJSDocAuthorTag(){return B(330)},get createJSDocClassTag(){return N(332)},get updateJSDocClassTag(){return B(332)},get createJSDocPublicTag(){return N(333)},get updateJSDocPublicTag(){return B(333)},get createJSDocPrivateTag(){return N(334)},get updateJSDocPrivateTag(){return B(334)},get createJSDocProtectedTag(){return N(335)},get updateJSDocProtectedTag(){return B(335)},get createJSDocReadonlyTag(){return N(336)},get updateJSDocReadonlyTag(){return B(336)},get createJSDocOverrideTag(){return N(337)},get updateJSDocOverrideTag(){return B(337)},get createJSDocDeprecatedTag(){return N(331)},get updateJSDocDeprecatedTag(){return B(331)},get createJSDocThrowsTag(){return F(349)},get updateJSDocThrowsTag(){return Q(349)},get createJSDocSatisfiesTag(){return F(350)},get updateJSDocSatisfiesTag(){return Q(350)},createJSDocEnumTag:kp,updateJSDocEnumTag:Fm,createJSDocUnknownTag:fE,updateJSDocUnknownTag:PT,createJSDocText:To,updateJSDocText:IE,createJSDocComment:mB,updateJSDocComment:Xc,createJsxElement:su,updateJsxElement:hE,createJsxSelfClosingElement:TL,updateJsxSelfClosingElement:tN,createJsxOpeningElement:Pu,updateJsxOpeningElement:oy,createJsxClosingElement:Cp,updateJsxClosingElement:Im,createJsxFragment:eS,createJsxText:CB,updateJsxText:MT,createJsxOpeningFragment:vx,createJsxJsxClosingFragment:_B,updateJsxFragment:a_,createJsxAttribute:tI,updateJsxAttribute:zh,createJsxAttributes:iv,updateJsxAttributes:wb,createJsxSpreadAttribute:_p,updateJsxSpreadAttribute:o2,createJsxExpression:c1,updateJsxExpression:Hf,createJsxNamespacedName:mE,updateJsxNamespacedName:Od,createCaseClause:j,updateCaseClause:Z,createDefaultClause:md,updateDefaultClause:yB,createHeritageClause:sv,updateHeritageClause:xy,createCatchClause:Tb,updateCatchClause:WD,createPropertyAssignment:bB,updatePropertyAssignment:Rb,createShorthandPropertyAssignment:mF,updateShorthandPropertyAssignment:x,createSpreadAssignment:te,updateSpreadAssignment:Re,createEnumMember:Ve,updateEnumMember:It,createSourceFile:dr,updateSourceFile:Ho,createRedirectedSourceFile:Ur,createBundle:Pg,updateBundle:uA,createSyntheticExpression:ih,createSyntaxList:xn,createNotEmittedStatement:rn,createNotEmittedTypeElement:ec,createPartiallyEmittedExpression:Ci,updatePartiallyEmittedExpression:Wo,createCommaListExpression:dc,updateCommaListExpression:hu,createSyntheticReferenceExpression:ml,updateSyntheticReferenceExpression:Tl,cloneNode:ov,get createComma(){return o(28)},get createAssignment(){return o(64)},get createLogicalOr(){return o(57)},get createLogicalAnd(){return o(56)},get createBitwiseOr(){return o(52)},get createBitwiseXor(){return o(53)},get createBitwiseAnd(){return o(51)},get createStrictEquality(){return o(37)},get createStrictInequality(){return o(38)},get createEquality(){return o(35)},get createInequality(){return o(36)},get createLessThan(){return o(30)},get createLessThanEquals(){return o(33)},get createGreaterThan(){return o(32)},get createGreaterThanEquals(){return o(34)},get createLeftShift(){return o(48)},get createRightShift(){return o(49)},get createUnsignedRightShift(){return o(50)},get createAdd(){return o(40)},get createSubtract(){return o(41)},get createMultiply(){return o(42)},get createDivide(){return o(44)},get createModulo(){return o(45)},get createExponent(){return o(43)},get createPrefixPlus(){return l(40)},get createPrefixMinus(){return l(41)},get createPrefixIncrement(){return l(46)},get createPrefixDecrement(){return l(47)},get createBitwiseNot(){return l(55)},get createLogicalNot(){return l(54)},get createPostfixIncrement(){return A(46)},get createPostfixDecrement(){return A(47)},createImmediatelyInvokedFunctionExpression:Yu,createImmediatelyInvokedArrowFunction:a3,createVoidZero:EB,createExportDefault:Sw,createExternalModuleExport:CF,createTypeCheck:c3,createIsNotTypeCheck:IY,createMethodCall:HT,createGlobalMethodCall:hf,createFunctionBindCall:OD,createFunctionCallCall:_F,createFunctionApplyCall:NL,createArraySliceCall:PD,createArrayConcatCall:CE,createObjectDefinePropertyCall:a2,createObjectGetOwnPropertyDescriptorCall:SB,createReflectGetCall:Sd,createReflectSetCall:l1,createPropertyDescriptor:Nb,createCallBinding:CY,createAssignmentTargetWrapper:rt,inlineExpressions:Jt,getInternalName:Xr,getLocalName:ui,getExportName:Is,getDeclarationName:Hs,getNamespaceMemberName:Rs,getExternalModuleOrNamespaceExportName:ja,restoreOuterExpressions:hY,restoreEnclosingLabel:mY,createUseStrictPrologue:kd,copyPrologue:Io,copyStandardPrologue:rd,copyCustomPrologue:Mg,ensureUseStrict:Gh,liftToBlock:u1,mergeLexicalEnvironment:nS,replaceModifiers:_E,replaceDecoratorsAndModifiers:nN,replacePropertyName:l3};return BP($qa,z=>z(J)),J;function ae(z,ye){if(z===void 0||z===L2)z=[];else if(Fce(z)){if(ye===void 0||z.hasTrailingComma===ye)return z.transformFlags===void 0&&fSi(z),Zo.attachNodeArrayDebugInfo(z),z;let Rr=z.slice();return Rr.pos=z.pos,Rr.end=z.end,Rr.hasTrailingComma=ye,Rr.transformFlags=z.transformFlags,Zo.attachNodeArrayDebugInfo(Rr),Rr}let We=z.length,_t=We>=1&&We<=4?z.slice():z;return _t.pos=-1,_t.end=-1,_t.hasTrailingComma=!!ye,_t.transformFlags=0,fSi(_t),Zo.attachNodeArrayDebugInfo(_t),_t}function ne(z){return t.createBaseNode(z)}function ce(z){let ye=ne(z);return ye.symbol=void 0,ye.localSymbol=void 0,ye}function fe(z,ye){return z!==ye&&(z.typeArguments=ye.typeArguments),bo(z,ye)}function ue(z,ye=0){let We=typeof z=="number"?z+"":z;Zo.assert(We.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let _t=ce(9);return _t.text=We,_t.numericLiteralFlags=ye,ye&384&&(_t.transformFlags|=1024),_t}function de(z){let ye=$t(10);return ye.text=typeof z=="string"?z:Yqa(z)+"n",ye.transformFlags|=32,ye}function be(z,ye){let We=ce(11);return We.text=z,We.singleQuote=ye,We}function Se(z,ye,We){let _t=be(z,ye);return _t.hasExtendedUnicodeEscape=We,We&&(_t.transformFlags|=1024),_t}function De(z){let ye=be(oqa(z),void 0);return ye.textSourceNode=z,ye}function k(z){let ye=$t(14);return ye.text=z,ye}function tt(z,ye){switch(z){case 9:return ue(ye,0);case 10:return de(ye);case 11:return Se(ye,void 0);case 12:return CB(ye,!1);case 13:return CB(ye,!0);case 14:return k(ye);case 15:return eA(z,ye,void 0,0)}}function ze(z){let ye=t.createBaseIdentifierNode(80);return ye.escapedText=z,ye.jsDoc=void 0,ye.flowNode=void 0,ye.symbol=void 0,ye}function Le(z,ye,We,_t){let Rr=ze(WNe(z));return setIdentifierAutoGenerate(Rr,{flags:ye,id:jbt,prefix:We,suffix:_t}),jbt++,Rr}function Je(z,ye,We){ye===void 0&&z&&(ye=Dvi(z)),ye===80&&(ye=void 0);let _t=ze(WNe(z));return We&&(_t.flags|=256),_t.escapedText==="await"&&(_t.transformFlags|=67108864),_t.flags&256&&(_t.transformFlags|=1024),_t}function ft(z,ye,We,_t){let Rr=1;ye&&(Rr|=8);let ai=Le("",Rr,We,_t);return z&&z(ai),ai}function lt(z){let ye=2;return z&&(ye|=8),Le("",ye,void 0,void 0)}function Ot(z,ye=0,We,_t){return Zo.assert(!(ye&7),"Argument out of range: flags"),Zo.assert((ye&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),Le(z,3|ye,We,_t)}function Er(z,ye=0,We,_t){Zo.assert(!(ye&7),"Argument out of range: flags");let Rr=z?VNr(z)?XNr(!1,We,z,_t,TV):`generated@${getNodeId(z)}`:"";(We||_t)&&(ye|=16);let ai=Le(Rr,4|ye,We,_t);return ai.original=z,ai}function Sr(z){let ye=t.createBasePrivateIdentifierNode(81);return ye.escapedText=z,ye.transformFlags|=16777216,ye}function jt(z){return sEt(z,"#")||Zo.fail("First character of private identifier must be #: "+z),Sr(WNe(z))}function Bt(z,ye,We,_t){let Rr=Sr(WNe(z));return setIdentifierAutoGenerate(Rr,{flags:ye,id:jbt,prefix:We,suffix:_t}),jbt++,Rr}function Nt(z,ye,We){z&&!sEt(z,"#")&&Zo.fail("First character of private identifier must be #: "+z);let _t=8|(z?3:1);return Bt(z??"",_t,ye,We)}function Fr(z,ye,We){let _t=VNr(z)?XNr(!0,ye,z,We,TV):`#generated@${getNodeId(z)}`,Rr=Bt(_t,4|(ye||We?16:0),ye,We);return Rr.original=z,Rr}function $t(z){return t.createBaseTokenNode(z)}function Xt(z){Zo.assert(z>=0&&z<=165,"Invalid token"),Zo.assert(z<=15||z>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Zo.assert(z<=9||z>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Zo.assert(z!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let ye=$t(z),We=0;switch(z){case 134:We=384;break;case 160:We=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:We=1;break;case 108:We=134218752,ye.flowNode=void 0;break;case 126:We=1024;break;case 129:We=16777216;break;case 110:We=16384,ye.flowNode=void 0;break}return We&&(ye.transformFlags|=We),ye}function lr(){return Xt(108)}function cr(){return Xt(110)}function Ar(){return Xt(106)}function qr(){return Xt(112)}function _n(){return Xt(97)}function ke(z){return Xt(z)}function zt(z){let ye=[];return z&32&&ye.push(ke(95)),z&128&&ye.push(ke(138)),z&2048&&ye.push(ke(90)),z&4096&&ye.push(ke(87)),z&1&&ye.push(ke(125)),z&2&&ye.push(ke(123)),z&4&&ye.push(ke(124)),z&64&&ye.push(ke(128)),z&256&&ye.push(ke(126)),z&16&&ye.push(ke(164)),z&8&&ye.push(ke(148)),z&512&&ye.push(ke(129)),z&1024&&ye.push(ke(134)),z&8192&&ye.push(ke(103)),z&16384&&ye.push(ke(147)),ye.length?ye:void 0}function Fn(z,ye){let We=ne(166);return We.left=z,We.right=vI(ye),We.transformFlags|=$o(We.left)|PNe(We.right),We.flowNode=void 0,We}function Nn(z,ye,We){return z.left!==ye||z.right!==We?bo(Fn(ye,We),z):z}function Hi(z){let ye=ne(167);return ye.expression=n().parenthesizeExpressionOfComputedPropertyName(z),ye.transformFlags|=$o(ye.expression)|1024|131072,ye}function Ao(z,ye){return z.expression!==ye?bo(Hi(ye),z):z}function Vr(z,ye,We,_t){let Rr=ce(168);return Rr.modifiers=mA(z),Rr.name=vI(ye),Rr.constraint=We,Rr.default=_t,Rr.transformFlags=1,Rr.expression=void 0,Rr.jsDoc=void 0,Rr}function xi(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.constraint!==_t||z.default!==Rr?bo(Vr(ye,We,_t,Rr),z):z}function no(z,ye,We,_t,Rr,ai){let Lo=ce(169);return Lo.modifiers=mA(z),Lo.dotDotDotToken=ye,Lo.name=vI(We),Lo.questionToken=_t,Lo.type=Rr,Lo.initializer=RA(ai),cqa(Lo.name)?Lo.transformFlags=1:Lo.transformFlags=ed(Lo.modifiers)|$o(Lo.dotDotDotToken)|EP(Lo.name)|$o(Lo.questionToken)|$o(Lo.initializer)|(Lo.questionToken??Lo.type?1:0)|(Lo.dotDotDotToken??Lo.initializer?1024:0)|(SP(Lo.modifiers)&31?8192:0),Lo.jsDoc=void 0,Lo}function ga(z,ye,We,_t,Rr,ai,Lo){return z.modifiers!==ye||z.dotDotDotToken!==We||z.name!==_t||z.questionToken!==Rr||z.type!==ai||z.initializer!==Lo?bo(no(ye,We,_t,Rr,ai,Lo),z):z}function Ya(z){let ye=ne(170);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1|8192|33554432,ye}function Gc(z,ye){return z.expression!==ye?bo(Ya(ye),z):z}function al(z,ye,We,_t){let Rr=ce(171);return Rr.modifiers=mA(z),Rr.name=vI(ye),Rr.type=_t,Rr.questionToken=We,Rr.transformFlags=1,Rr.initializer=void 0,Rr.jsDoc=void 0,Rr}function Sc(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.questionToken!==_t||z.type!==Rr?Hr(al(ye,We,_t,Rr),z):z}function Hr(z,ye){return z!==ye&&(z.initializer=ye.initializer),bo(z,ye)}function Or(z,ye,We,_t,Rr){let ai=ce(172);ai.modifiers=mA(z),ai.name=vI(ye),ai.questionToken=We&&hSi(We)?We:void 0,ai.exclamationToken=We&&ISi(We)?We:void 0,ai.type=_t,ai.initializer=RA(Rr);let Lo=ai.flags&33554432||SP(ai.modifiers)&128;return ai.transformFlags=ed(ai.modifiers)|EP(ai.name)|$o(ai.initializer)|(Lo||ai.questionToken||ai.exclamationToken||ai.type?1:0)|(IBi(ai.name)||SP(ai.modifiers)&256&&ai.initializer?8192:0)|16777216,ai.jsDoc=void 0,ai}function Ft(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.questionToken!==(_t!==void 0&&hSi(_t)?_t:void 0)||z.exclamationToken!==(_t!==void 0&&ISi(_t)?_t:void 0)||z.type!==Rr||z.initializer!==ai?bo(Or(ye,We,_t,Rr,ai),z):z}function zr(z,ye,We,_t,Rr,ai){let Lo=ce(173);return Lo.modifiers=mA(z),Lo.name=vI(ye),Lo.questionToken=We,Lo.typeParameters=mA(_t),Lo.parameters=mA(Rr),Lo.type=ai,Lo.transformFlags=1,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.typeArguments=void 0,Lo}function Rn(z,ye,We,_t,Rr,ai,Lo){return z.modifiers!==ye||z.name!==We||z.questionToken!==_t||z.typeParameters!==Rr||z.parameters!==ai||z.type!==Lo?fe(zr(ye,We,_t,Rr,ai,Lo),z):z}function Pr(z,ye,We,_t,Rr,ai,Lo,Hc){let ld=ce(174);if(ld.modifiers=mA(z),ld.asteriskToken=ye,ld.name=vI(We),ld.questionToken=_t,ld.exclamationToken=void 0,ld.typeParameters=mA(Rr),ld.parameters=ae(ai),ld.type=Lo,ld.body=Hc,!ld.body)ld.transformFlags=1;else{let hm=SP(ld.modifiers)&1024,av=!!ld.asteriskToken,cv=hm&&av;ld.transformFlags=ed(ld.modifiers)|$o(ld.asteriskToken)|EP(ld.name)|$o(ld.questionToken)|ed(ld.typeParameters)|ed(ld.parameters)|$o(ld.type)|$o(ld.body)&-67108865|(cv?128:hm?256:av?2048:0)|(ld.questionToken||ld.typeParameters||ld.type?1:0)|1024}return ld.typeArguments=void 0,ld.jsDoc=void 0,ld.locals=void 0,ld.nextContainer=void 0,ld.flowNode=void 0,ld.endFlowNode=void 0,ld.returnFlowNode=void 0,ld}function Qi(z,ye,We,_t,Rr,ai,Lo,Hc,ld){return z.modifiers!==ye||z.asteriskToken!==We||z.name!==_t||z.questionToken!==Rr||z.typeParameters!==ai||z.parameters!==Lo||z.type!==Hc||z.body!==ld?ps(Pr(ye,We,_t,Rr,ai,Lo,Hc,ld),z):z}function ps(z,ye){return z!==ye&&(z.exclamationToken=ye.exclamationToken),bo(z,ye)}function _o(z){let ye=ce(175);return ye.body=z,ye.transformFlags=$o(z)|16777216,ye.modifiers=void 0,ye.jsDoc=void 0,ye.locals=void 0,ye.nextContainer=void 0,ye.endFlowNode=void 0,ye.returnFlowNode=void 0,ye}function yo(z,ye){return z.body!==ye?Qa(_o(ye),z):z}function Qa(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),bo(z,ye)}function gc(z,ye,We){let _t=ce(176);return _t.modifiers=mA(z),_t.parameters=ae(ye),_t.body=We,_t.body?_t.transformFlags=ed(_t.modifiers)|ed(_t.parameters)|$o(_t.body)&-67108865|1024:_t.transformFlags=1,_t.typeParameters=void 0,_t.type=void 0,_t.typeArguments=void 0,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.endFlowNode=void 0,_t.returnFlowNode=void 0,_t}function _g(z,ye,We,_t){return z.modifiers!==ye||z.parameters!==We||z.body!==_t?Nc(gc(ye,We,_t),z):z}function Nc(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function oA(z,ye,We,_t,Rr){let ai=ce(177);return ai.modifiers=mA(z),ai.name=vI(ye),ai.parameters=ae(We),ai.type=_t,ai.body=Rr,ai.body?ai.transformFlags=ed(ai.modifiers)|EP(ai.name)|ed(ai.parameters)|$o(ai.type)|$o(ai.body)&-67108865|(ai.type?1:0):ai.transformFlags=1,ai.typeArguments=void 0,ai.typeParameters=void 0,ai.jsDoc=void 0,ai.locals=void 0,ai.nextContainer=void 0,ai.flowNode=void 0,ai.endFlowNode=void 0,ai.returnFlowNode=void 0,ai}function ma(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.parameters!==_t||z.type!==Rr||z.body!==ai?vu(oA(ye,We,_t,Rr,ai),z):z}function vu(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters),fe(z,ye)}function li(z,ye,We,_t){let Rr=ce(178);return Rr.modifiers=mA(z),Rr.name=vI(ye),Rr.parameters=ae(We),Rr.body=_t,Rr.body?Rr.transformFlags=ed(Rr.modifiers)|EP(Rr.name)|ed(Rr.parameters)|$o(Rr.body)&-67108865|(Rr.type?1:0):Rr.transformFlags=1,Rr.typeArguments=void 0,Rr.typeParameters=void 0,Rr.type=void 0,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr.endFlowNode=void 0,Rr.returnFlowNode=void 0,Rr}function Ei(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.parameters!==_t||z.body!==Rr?Ws(li(ye,We,_t,Rr),z):z}function Ws(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function Xa(z,ye,We){let _t=ce(179);return _t.typeParameters=mA(z),_t.parameters=mA(ye),_t.type=We,_t.transformFlags=1,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function ac(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?fe(Xa(ye,We,_t),z):z}function Ql(z,ye,We){let _t=ce(180);return _t.typeParameters=mA(z),_t.parameters=mA(ye),_t.type=We,_t.transformFlags=1,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function Oc(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?fe(Ql(ye,We,_t),z):z}function vg(z,ye,We){let _t=ce(181);return _t.modifiers=mA(z),_t.parameters=mA(ye),_t.type=We,_t.transformFlags=1,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function Kl(z,ye,We,_t){return z.parameters!==We||z.type!==_t||z.modifiers!==ye?fe(vg(ye,We,_t),z):z}function Ju(z,ye){let We=ne(204);return We.type=z,We.literal=ye,We.transformFlags=1,We}function Da(z,ye,We){return z.type!==ye||z.literal!==We?bo(Ju(ye,We),z):z}function fu(z){return Xt(z)}function yg(z,ye,We){let _t=ne(182);return _t.assertsModifier=z,_t.parameterName=vI(ye),_t.type=We,_t.transformFlags=1,_t}function _I(z,ye,We,_t){return z.assertsModifier!==ye||z.parameterName!==We||z.type!==_t?bo(yg(ye,We,_t),z):z}function Kh(z,ye){let We=ne(183);return We.typeName=vI(z),We.typeArguments=ye&&n().parenthesizeTypeArguments(ae(ye)),We.transformFlags=1,We}function Ri(z,ye,We){return z.typeName!==ye||z.typeArguments!==We?bo(Kh(ye,We),z):z}function Do(z,ye,We){let _t=ce(184);return _t.typeParameters=mA(z),_t.parameters=mA(ye),_t.type=We,_t.transformFlags=1,_t.modifiers=void 0,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.typeArguments=void 0,_t}function Pt(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?Hu(Do(ye,We,_t),z):z}function Hu(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),fe(z,ye)}function Ru(...z){return z.length===4?Vs(...z):z.length===3?Uu(...z):Zo.fail("Incorrect number of arguments specified.")}function Vs(z,ye,We,_t){let Rr=ce(185);return Rr.modifiers=mA(z),Rr.typeParameters=mA(ye),Rr.parameters=mA(We),Rr.type=_t,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.typeArguments=void 0,Rr}function Uu(z,ye,We){return Vs(void 0,z,ye,We)}function Yn(...z){return z.length===5?Ko(...z):z.length===4?Sg(...z):Zo.fail("Incorrect number of arguments specified.")}function Ko(z,ye,We,_t,Rr){return z.modifiers!==ye||z.typeParameters!==We||z.parameters!==_t||z.type!==Rr?fe(Ru(ye,We,_t,Rr),z):z}function Sg(z,ye,We,_t){return Ko(z,z.modifiers,ye,We,_t)}function HA(z,ye){let We=ne(186);return We.exprName=z,We.typeArguments=ye&&n().parenthesizeTypeArguments(ye),We.transformFlags=1,We}function ZA(z,ye,We){return z.exprName!==ye||z.typeArguments!==We?bo(HA(ye,We),z):z}function $i(z){let ye=ce(187);return ye.members=ae(z),ye.transformFlags=1,ye}function Al(z,ye){return z.members!==ye?bo($i(ye),z):z}function zf(z){let ye=ne(188);return ye.elementType=n().parenthesizeNonArrayTypeOfPostfixType(z),ye.transformFlags=1,ye}function zd(z,ye){return z.elementType!==ye?bo(zf(ye),z):z}function cA(z){let ye=ne(189);return ye.elements=ae(n().parenthesizeElementTypesOfTupleType(z)),ye.transformFlags=1,ye}function so(z,ye){return z.elements!==ye?bo(cA(ye),z):z}function Ki(z,ye,We,_t){let Rr=ce(202);return Rr.dotDotDotToken=z,Rr.name=ye,Rr.questionToken=We,Rr.type=_t,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr}function cc(z,ye,We,_t,Rr){return z.dotDotDotToken!==ye||z.name!==We||z.questionToken!==_t||z.type!==Rr?bo(Ki(ye,We,_t,Rr),z):z}function Xs(z){let ye=ne(190);return ye.type=n().parenthesizeTypeOfOptionalType(z),ye.transformFlags=1,ye}function ws(z,ye){return z.type!==ye?bo(Xs(ye),z):z}function Gs(z){let ye=ne(191);return ye.type=z,ye.transformFlags=1,ye}function Ma(z,ye){return z.type!==ye?bo(Gs(ye),z):z}function Dc(z,ye,We){let _t=ne(z);return _t.types=J.createNodeArray(We(ye)),_t.transformFlags=1,_t}function As(z,ye,We){return z.types!==ye?bo(Dc(z.kind,ye,We),z):z}function Nf(z){return Dc(192,z,n().parenthesizeConstituentTypesOfUnionType)}function Am(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfUnionType)}function Zl(z){return Dc(193,z,n().parenthesizeConstituentTypesOfIntersectionType)}function rc(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfIntersectionType)}function ad(z,ye,We,_t){let Rr=ne(194);return Rr.checkType=n().parenthesizeCheckTypeOfConditionalType(z),Rr.extendsType=n().parenthesizeExtendsTypeOfConditionalType(ye),Rr.trueType=We,Rr.falseType=_t,Rr.transformFlags=1,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function Qm(z,ye,We,_t,Rr){return z.checkType!==ye||z.extendsType!==We||z.trueType!==_t||z.falseType!==Rr?bo(ad(ye,We,_t,Rr),z):z}function rl(z){let ye=ne(195);return ye.typeParameter=z,ye.transformFlags=1,ye}function LA(z,ye){return z.typeParameter!==ye?bo(rl(ye),z):z}function VA(z,ye){let We=ne(203);return We.head=z,We.templateSpans=ae(ye),We.transformFlags=1,We}function bl(z,ye,We){return z.head!==ye||z.templateSpans!==We?bo(VA(ye,We),z):z}function bg(z,ye,We,_t,Rr=!1){let ai=ne(205);return ai.argument=z,ai.attributes=ye,ai.assertions&&ai.assertions.assertClause&&ai.attributes&&(ai.assertions.assertClause=ai.attributes),ai.qualifier=We,ai.typeArguments=_t&&n().parenthesizeTypeArguments(_t),ai.isTypeOf=Rr,ai.transformFlags=1,ai}function Yp(z,ye,We,_t,Rr,ai=z.isTypeOf){return z.argument!==ye||z.attributes!==We||z.qualifier!==_t||z.typeArguments!==Rr||z.isTypeOf!==ai?bo(bg(ye,We,_t,Rr,ai),z):z}function YA(z){let ye=ne(196);return ye.type=z,ye.transformFlags=1,ye}function vr(z,ye){return z.type!==ye?bo(YA(ye),z):z}function Zt(){let z=ne(197);return z.transformFlags=1,z}function yn(z,ye){let We=ne(198);return We.operator=z,We.type=z===148?n().parenthesizeOperandOfReadonlyTypeOperator(ye):n().parenthesizeOperandOfTypeOperator(ye),We.transformFlags=1,We}function ls(z,ye){return z.type!==ye?bo(yn(z.operator,ye),z):z}function oa(z,ye){let We=ne(199);return We.objectType=n().parenthesizeNonArrayTypeOfPostfixType(z),We.indexType=ye,We.transformFlags=1,We}function Fs(z,ye,We){return z.objectType!==ye||z.indexType!==We?bo(oa(ye,We),z):z}function Oa(z,ye,We,_t,Rr,ai){let Lo=ce(200);return Lo.readonlyToken=z,Lo.typeParameter=ye,Lo.nameType=We,Lo.questionToken=_t,Lo.type=Rr,Lo.members=ai&&ae(ai),Lo.transformFlags=1,Lo.locals=void 0,Lo.nextContainer=void 0,Lo}function Ca(z,ye,We,_t,Rr,ai,Lo){return z.readonlyToken!==ye||z.typeParameter!==We||z.nameType!==_t||z.questionToken!==Rr||z.type!==ai||z.members!==Lo?bo(Oa(ye,We,_t,Rr,ai,Lo),z):z}function gd(z){let ye=ne(201);return ye.literal=z,ye.transformFlags=1,ye}function Dp(z,ye){return z.literal!==ye?bo(gd(ye),z):z}function sp(z){let ye=ne(206);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements)|1024|524288,ye.transformFlags&32768&&(ye.transformFlags|=65664),ye}function QA(z,ye){return z.elements!==ye?bo(sp(ye),z):z}function ff(z){let ye=ne(207);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements)|1024|524288,ye}function Zs(z,ye){return z.elements!==ye?bo(ff(ye),z):z}function io(z,ye,We,_t){let Rr=ce(208);return Rr.dotDotDotToken=z,Rr.propertyName=vI(ye),Rr.name=vI(We),Rr.initializer=RA(_t),Rr.transformFlags|=$o(Rr.dotDotDotToken)|EP(Rr.propertyName)|EP(Rr.name)|$o(Rr.initializer)|(Rr.dotDotDotToken?32768:0)|1024,Rr.flowNode=void 0,Rr}function Ea(z,ye,We,_t,Rr){return z.propertyName!==We||z.dotDotDotToken!==ye||z.name!==_t||z.initializer!==Rr?bo(io(ye,We,_t,Rr),z):z}function Hl(z,ye){let We=ne(209),_t=z&&rCe(z),Rr=ae(z,_t&&M$a(_t)?!0:void 0);return We.elements=n().parenthesizeExpressionsOfCommaDelimitedList(Rr),We.multiLine=ye,We.transformFlags|=ed(We.elements),We}function Dr(z,ye){return z.elements!==ye?bo(Hl(ye,z.multiLine),z):z}function On(z,ye){let We=ce(210);return We.properties=ae(z),We.multiLine=ye,We.transformFlags|=ed(We.properties),We.jsDoc=void 0,We}function di(z,ye){return z.properties!==ye?bo(On(ye,z.multiLine),z):z}function aa(z,ye,We){let _t=ce(211);return _t.expression=z,_t.questionDotToken=ye,_t.name=We,_t.transformFlags=$o(_t.expression)|$o(_t.questionDotToken)|(r_(_t.name)?PNe(_t.name):$o(_t.name)|536870912),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function vo(z,ye){let We=aa(n().parenthesizeLeftSideOfAccess(z,!1),void 0,vI(ye));return BNr(z)&&(We.transformFlags|=384),We}function us(z,ye,We){return $7a(z)?WA(z,ye,z.questionDotToken,B6(We,r_)):z.expression!==ye||z.name!==We?bo(vo(ye,We),z):z}function Xl(z,ye,We){let _t=aa(n().parenthesizeLeftSideOfAccess(z,!0),ye,vI(We));return _t.flags|=64,_t.transformFlags|=32,_t}function WA(z,ye,We,_t){return Zo.assert(!!(z.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),z.expression!==ye||z.questionDotToken!==We||z.name!==_t?bo(Xl(ye,We,_t),z):z}function If(z,ye,We){let _t=ce(212);return _t.expression=z,_t.questionDotToken=ye,_t.argumentExpression=We,_t.transformFlags|=$o(_t.expression)|$o(_t.questionDotToken)|$o(_t.argumentExpression),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function rf(z,ye){let We=If(n().parenthesizeLeftSideOfAccess(z,!1),void 0,$d(ye));return BNr(z)&&(We.transformFlags|=384),We}function op(z,ye,We){return eza(z)?e2(z,ye,z.questionDotToken,We):z.expression!==ye||z.argumentExpression!==We?bo(rf(ye,We),z):z}function bd(z,ye,We){let _t=If(n().parenthesizeLeftSideOfAccess(z,!0),ye,$d(We));return _t.flags|=64,_t.transformFlags|=32,_t}function e2(z,ye,We,_t){return Zo.assert(!!(z.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),z.expression!==ye||z.questionDotToken!==We||z.argumentExpression!==_t?bo(bd(ye,We,_t),z):z}function _w(z,ye,We,_t){let Rr=ce(213);return Rr.expression=z,Rr.questionDotToken=ye,Rr.typeArguments=We,Rr.arguments=_t,Rr.transformFlags|=$o(Rr.expression)|$o(Rr.questionDotToken)|ed(Rr.typeArguments)|ed(Rr.arguments),Rr.typeArguments&&(Rr.transformFlags|=1),cSi(Rr.expression)&&(Rr.transformFlags|=16384),Rr}function XA(z,ye,We){let _t=_w(n().parenthesizeLeftSideOfAccess(z,!1),void 0,mA(ye),n().parenthesizeExpressionsOfCommaDelimitedList(ae(We)));return g$a(_t.expression)&&(_t.transformFlags|=8388608),_t}function Ac(z,ye,We,_t){return tSi(z)?US(z,ye,z.questionDotToken,We,_t):z.expression!==ye||z.typeArguments!==We||z.arguments!==_t?bo(XA(ye,We,_t),z):z}function Gm(z,ye,We,_t){let Rr=_w(n().parenthesizeLeftSideOfAccess(z,!0),ye,mA(We),n().parenthesizeExpressionsOfCommaDelimitedList(ae(_t)));return Rr.flags|=64,Rr.transformFlags|=32,Rr}function US(z,ye,We,_t,Rr){return Zo.assert(!!(z.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),z.expression!==ye||z.questionDotToken!==We||z.typeArguments!==_t||z.arguments!==Rr?bo(Gm(ye,We,_t,Rr),z):z}function qd(z,ye,We){let _t=ce(214);return _t.expression=n().parenthesizeExpressionOfNew(z),_t.typeArguments=mA(ye),_t.arguments=We?n().parenthesizeExpressionsOfCommaDelimitedList(We):void 0,_t.transformFlags|=$o(_t.expression)|ed(_t.typeArguments)|ed(_t.arguments)|32,_t.typeArguments&&(_t.transformFlags|=1),_t}function hh(z,ye,We,_t){return z.expression!==ye||z.typeArguments!==We||z.arguments!==_t?bo(qd(ye,We,_t),z):z}function Qp(z,ye,We){let _t=ne(215);return _t.tag=n().parenthesizeLeftSideOfAccess(z,!1),_t.typeArguments=mA(ye),_t.template=We,_t.transformFlags|=$o(_t.tag)|ed(_t.typeArguments)|$o(_t.template)|1024,_t.typeArguments&&(_t.transformFlags|=1),aqa(_t.template)&&(_t.transformFlags|=128),_t}function dC(z,ye,We,_t){return z.tag!==ye||z.typeArguments!==We||z.template!==_t?bo(Qp(ye,We,_t),z):z}function aE(z,ye){let We=ne(216);return We.expression=n().parenthesizeOperandOfPrefixUnary(ye),We.type=z,We.transformFlags|=$o(We.expression)|$o(We.type)|1,We}function j_(z,ye,We){return z.type!==ye||z.expression!==We?bo(aE(ye,We),z):z}function ty(z){let ye=ne(217);return ye.expression=z,ye.transformFlags=$o(ye.expression),ye.jsDoc=void 0,ye}function jE(z,ye){return z.expression!==ye?bo(ty(ye),z):z}function DC(z,ye,We,_t,Rr,ai,Lo){let Hc=ce(218);Hc.modifiers=mA(z),Hc.asteriskToken=ye,Hc.name=vI(We),Hc.typeParameters=mA(_t),Hc.parameters=ae(Rr),Hc.type=ai,Hc.body=Lo;let ld=SP(Hc.modifiers)&1024,hm=!!Hc.asteriskToken,av=ld&&hm;return Hc.transformFlags=ed(Hc.modifiers)|$o(Hc.asteriskToken)|EP(Hc.name)|ed(Hc.typeParameters)|ed(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(av?128:ld?256:hm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304,Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.flowNode=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function i_(z,ye,We,_t,Rr,ai,Lo,Hc){return z.name!==_t||z.modifiers!==ye||z.asteriskToken!==We||z.typeParameters!==Rr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?fe(DC(ye,We,_t,Rr,ai,Lo,Hc),z):z}function up(z,ye,We,_t,Rr,ai){let Lo=ce(219);Lo.modifiers=mA(z),Lo.typeParameters=mA(ye),Lo.parameters=ae(We),Lo.type=_t,Lo.equalsGreaterThanToken=Rr??Xt(39),Lo.body=n().parenthesizeConciseBodyOfArrowFunction(ai);let Hc=SP(Lo.modifiers)&1024;return Lo.transformFlags=ed(Lo.modifiers)|ed(Lo.typeParameters)|ed(Lo.parameters)|$o(Lo.type)|$o(Lo.equalsGreaterThanToken)|$o(Lo.body)&-67108865|(Lo.typeParameters||Lo.type?1:0)|(Hc?16640:0)|1024,Lo.typeArguments=void 0,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.flowNode=void 0,Lo.endFlowNode=void 0,Lo.returnFlowNode=void 0,Lo}function Xm(z,ye,We,_t,Rr,ai,Lo){return z.modifiers!==ye||z.typeParameters!==We||z.parameters!==_t||z.type!==Rr||z.equalsGreaterThanToken!==ai||z.body!==Lo?fe(up(ye,We,_t,Rr,ai,Lo),z):z}function mb(z){let ye=ne(220);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function pe(z,ye){return z.expression!==ye?bo(mb(ye),z):z}function dm(z){let ye=ne(221);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function qf(z,ye){return z.expression!==ye?bo(dm(ye),z):z}function yI(z){let ye=ne(222);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function bI(z,ye){return z.expression!==ye?bo(yI(ye),z):z}function U2(z){let ye=ne(223);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression)|256|128|2097152,ye}function cE(z,ye){return z.expression!==ye?bo(U2(ye),z):z}function se(z,ye){let We=ne(224);return We.operator=z,We.operand=n().parenthesizeOperandOfPrefixUnary(ye),We.transformFlags|=$o(We.operand),(z===46||z===47)&&r_(We.operand)&&!XNe(We.operand)&&!ySi(We.operand)&&(We.transformFlags|=268435456),We}function P(z,ye){return z.operand!==ye?bo(se(z.operator,ye),z):z}function K(z,ye){let We=ne(225);return We.operator=ye,We.operand=n().parenthesizeOperandOfPostfixUnary(z),We.transformFlags|=$o(We.operand),r_(We.operand)&&!XNe(We.operand)&&!ySi(We.operand)&&(We.transformFlags|=268435456),We}function we(z,ye){return z.operand!==ye?bo(K(ye,z.operator),z):z}function At(z,ye,We){let _t=ce(226),Rr=iN(ye),ai=Rr.kind;return _t.left=n().parenthesizeLeftSideOfBinary(ai,z),_t.operatorToken=Rr,_t.right=n().parenthesizeRightSideOfBinary(ai,_t.left,We),_t.transformFlags|=$o(_t.left)|$o(_t.operatorToken)|$o(_t.right),ai===61?_t.transformFlags|=32:ai===64?EBi(_t.left)?_t.transformFlags|=5248|sr(_t.left):L$a(_t.left)&&(_t.transformFlags|=5120|sr(_t.left)):ai===43||ai===68?_t.transformFlags|=512:mqa(ai)&&(_t.transformFlags|=16),ai===103&&cCe(_t.left)&&(_t.transformFlags|=536870912),_t.jsDoc=void 0,_t}function sr(z){return PBi(z)?65536:0}function Yr(z,ye,We,_t){return z.left!==ye||z.operatorToken!==We||z.right!==_t?bo(At(ye,We,_t),z):z}function Lr(z,ye,We,_t,Rr){let ai=ne(227);return ai.condition=n().parenthesizeConditionOfConditionalExpression(z),ai.questionToken=ye??Xt(58),ai.whenTrue=n().parenthesizeBranchOfConditionalExpression(We),ai.colonToken=_t??Xt(59),ai.whenFalse=n().parenthesizeBranchOfConditionalExpression(Rr),ai.transformFlags|=$o(ai.condition)|$o(ai.questionToken)|$o(ai.whenTrue)|$o(ai.colonToken)|$o(ai.whenFalse),ai}function fi(z,ye,We,_t,Rr,ai){return z.condition!==ye||z.questionToken!==We||z.whenTrue!==_t||z.colonToken!==Rr||z.whenFalse!==ai?bo(Lr(ye,We,_t,Rr,ai),z):z}function $n(z,ye){let We=ne(228);return We.head=z,We.templateSpans=ae(ye),We.transformFlags|=$o(We.head)|ed(We.templateSpans)|1024,We}function ra(z,ye,We){return z.head!==ye||z.templateSpans!==We?bo($n(ye,We),z):z}function kc(z,ye,We,_t=0){Zo.assert(!(_t&-7177),"Unsupported template flags.");let Rr;if(We!==void 0&&We!==ye&&(Rr=e$a(z,We),typeof Rr=="object"))return Zo.fail("Invalid raw text");if(ye===void 0){if(Rr===void 0)return Zo.fail("Arguments 'text' and 'rawText' may not both be undefined.");ye=Rr}else Rr!==void 0&&Zo.assert(ye===Rr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return ye}function Dl(z){let ye=1024;return z&&(ye|=128),ye}function ca(z,ye,We,_t){let Rr=$t(z);return Rr.text=ye,Rr.rawText=We,Rr.templateFlags=_t&7176,Rr.transformFlags=Dl(Rr.templateFlags),Rr}function wl(z,ye,We,_t){let Rr=ce(z);return Rr.text=ye,Rr.rawText=We,Rr.templateFlags=_t&7176,Rr.transformFlags=Dl(Rr.templateFlags),Rr}function eA(z,ye,We,_t){return z===15?wl(z,ye,We,_t):ca(z,ye,We,_t)}function BA(z,ye,We){return z=kc(16,z,ye,We),eA(16,z,ye,We)}function gI(z,ye,We){return z=kc(16,z,ye,We),eA(17,z,ye,We)}function gp(z,ye,We){return z=kc(16,z,ye,We),eA(18,z,ye,We)}function Cb(z,ye,We){return z=kc(16,z,ye,We),wl(15,z,ye,We)}function Na(z,ye){Zo.assert(!z||!!ye,"A `YieldExpression` with an asteriskToken must have an expression.");let We=ne(229);return We.expression=ye&&n().parenthesizeExpressionForDisallowedComma(ye),We.asteriskToken=z,We.transformFlags|=$o(We.expression)|$o(We.asteriskToken)|1024|128|1048576,We}function Rd(z,ye,We){return z.expression!==We||z.asteriskToken!==ye?bo(Na(ye,We),z):z}function t2(z){let ye=ne(230);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|1024|32768,ye}function D_(z,ye){return z.expression!==ye?bo(t2(ye),z):z}function kC(z,ye,We,_t,Rr){let ai=ce(231);return ai.modifiers=mA(z),ai.name=vI(ye),ai.typeParameters=mA(We),ai.heritageClauses=mA(_t),ai.members=ae(Rr),ai.transformFlags|=ed(ai.modifiers)|EP(ai.name)|ed(ai.typeParameters)|ed(ai.heritageClauses)|ed(ai.members)|(ai.typeParameters?1:0)|1024,ai.jsDoc=void 0,ai}function Jm(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.heritageClauses!==Rr||z.members!==ai?bo(kC(ye,We,_t,Rr,ai),z):z}function KS(){return ne(232)}function Zg(z,ye){let We=ne(233);return We.expression=n().parenthesizeLeftSideOfAccess(z,!1),We.typeArguments=ye&&n().parenthesizeTypeArguments(ye),We.transformFlags|=$o(We.expression)|ed(We.typeArguments)|1024,We}function _b(z,ye,We){return z.expression!==ye||z.typeArguments!==We?bo(Zg(ye,We),z):z}function pC(z,ye){let We=ne(234);return We.expression=z,We.type=ye,We.transformFlags|=$o(We.expression)|$o(We.type)|1,We}function xC(z,ye,We){return z.expression!==ye||z.type!==We?bo(pC(ye,We),z):z}function K2(z){let ye=ne(235);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1,ye}function z_(z,ye){return tza(z)?mh(z,ye):z.expression!==ye?bo(K2(ye),z):z}function GC(z,ye){let We=ne(238);return We.expression=z,We.type=ye,We.transformFlags|=$o(We.expression)|$o(We.type)|1,We}function FC(z,ye,We){return z.expression!==ye||z.type!==We?bo(GC(ye,We),z):z}function th(z){let ye=ne(235);return ye.flags|=64,ye.expression=n().parenthesizeLeftSideOfAccess(z,!0),ye.transformFlags|=$o(ye.expression)|1,ye}function mh(z,ye){return Zo.assert(!!(z.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),z.expression!==ye?bo(th(ye),z):z}function wA(z,ye){let We=ne(236);switch(We.keywordToken=z,We.name=ye,We.transformFlags|=$o(We.name),z){case 105:We.transformFlags|=1024;break;case 102:We.transformFlags|=32;break;default:return Zo.assertNever(z)}return We.flowNode=void 0,We}function Nd(z,ye){return z.name!==ye?bo(wA(z.keywordToken,ye),z):z}function Mc(z,ye){let We=ne(239);return We.expression=z,We.literal=ye,We.transformFlags|=$o(We.expression)|$o(We.literal)|1024,We}function Pf(z,ye,We){return z.expression!==ye||z.literal!==We?bo(Mc(ye,We),z):z}function lE(){let z=ne(240);return z.transformFlags|=1024,z}function tA(z,ye){let We=ne(241);return We.statements=ae(z),We.multiLine=ye,We.transformFlags|=ed(We.statements),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We}function jS(z,ye){return z.statements!==ye?bo(tA(ye,z.multiLine),z):z}function zS(z,ye){let We=ne(243);return We.modifiers=mA(z),We.declarationList=Hee(ye)?kh(ye):ye,We.transformFlags|=ed(We.modifiers)|$o(We.declarationList),SP(We.modifiers)&128&&(We.transformFlags=1),We.jsDoc=void 0,We.flowNode=void 0,We}function pm(z,ye,We){return z.modifiers!==ye||z.declarationList!==We?bo(zS(ye,We),z):z}function fm(){let z=ne(242);return z.jsDoc=void 0,z}function cs(z){let ye=ne(244);return ye.expression=n().parenthesizeExpressionOfExpressionStatement(z),ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function na(z,ye){return z.expression!==ye?bo(cs(ye),z):z}function ko(z,ye,We){let _t=ne(245);return _t.expression=z,_t.thenStatement=cy(ye),_t.elseStatement=cy(We),_t.transformFlags|=$o(_t.expression)|$o(_t.thenStatement)|$o(_t.elseStatement),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function ki(z,ye,We,_t){return z.expression!==ye||z.thenStatement!==We||z.elseStatement!==_t?bo(ko(ye,We,_t),z):z}function jl(z,ye){let We=ne(246);return We.statement=cy(z),We.expression=ye,We.transformFlags|=$o(We.statement)|$o(We.expression),We.jsDoc=void 0,We.flowNode=void 0,We}function hd(z,ye,We){return z.statement!==ye||z.expression!==We?bo(jl(ye,We),z):z}function $f(z,ye){let We=ne(247);return We.expression=z,We.statement=cy(ye),We.transformFlags|=$o(We.expression)|$o(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function Wd(z,ye,We){return z.expression!==ye||z.statement!==We?bo($f(ye,We),z):z}function fC(z,ye,We,_t){let Rr=ne(248);return Rr.initializer=z,Rr.condition=ye,Rr.incrementor=We,Rr.statement=cy(_t),Rr.transformFlags|=$o(Rr.initializer)|$o(Rr.condition)|$o(Rr.incrementor)|$o(Rr.statement),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function zE(z,ye,We,_t,Rr){return z.initializer!==ye||z.condition!==We||z.incrementor!==_t||z.statement!==Rr?bo(fC(ye,We,_t,Rr),z):z}function Um(z,ye,We){let _t=ne(249);return _t.initializer=z,_t.expression=ye,_t.statement=cy(We),_t.transformFlags|=$o(_t.initializer)|$o(_t.expression)|$o(_t.statement),_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t.flowNode=void 0,_t}function Ty(z,ye,We,_t){return z.initializer!==ye||z.expression!==We||z.statement!==_t?bo(Um(ye,We,_t),z):z}function q_(z,ye,We,_t){let Rr=ne(250);return Rr.awaitModifier=z,Rr.initializer=ye,Rr.expression=n().parenthesizeExpressionForDisallowedComma(We),Rr.statement=cy(_t),Rr.transformFlags|=$o(Rr.awaitModifier)|$o(Rr.initializer)|$o(Rr.expression)|$o(Rr.statement)|1024,z&&(Rr.transformFlags|=128),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function cd(z,ye,We,_t,Rr){return z.awaitModifier!==ye||z.initializer!==We||z.expression!==_t||z.statement!==Rr?bo(q_(ye,We,_t,Rr),z):z}function qE(z){let ye=ne(251);return ye.label=vI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function $E(z,ye){return z.label!==ye?bo(qE(ye),z):z}function Xp(z){let ye=ne(252);return ye.label=vI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function qS(z,ye){return z.label!==ye?bo(Xp(ye),z):z}function Ry(z){let ye=ne(253);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|128|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function ry(z,ye){return z.expression!==ye?bo(Ry(ye),z):z}function yw(z,ye){let We=ne(254);return We.expression=z,We.statement=cy(ye),We.transformFlags|=$o(We.expression)|$o(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function j2(z,ye,We){return z.expression!==ye||z.statement!==We?bo(yw(ye,We),z):z}function xc(z,ye){let We=ne(255);return We.expression=n().parenthesizeExpressionForDisallowedComma(z),We.caseBlock=ye,We.transformFlags|=$o(We.expression)|$o(We.caseBlock),We.jsDoc=void 0,We.flowNode=void 0,We.possiblyExhaustive=!1,We}function gt(z,ye,We){return z.expression!==ye||z.caseBlock!==We?bo(xc(ye,We),z):z}function ar(z,ye){let We=ne(256);return We.label=vI(z),We.statement=cy(ye),We.transformFlags|=$o(We.label)|$o(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function Jr(z,ye,We){return z.label!==ye||z.statement!==We?bo(ar(ye,We),z):z}function Gn(z){let ye=ne(257);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function Ts(z,ye){return z.expression!==ye?bo(Gn(ye),z):z}function Qo(z,ye,We){let _t=ne(258);return _t.tryBlock=z,_t.catchClause=ye,_t.finallyBlock=We,_t.transformFlags|=$o(_t.tryBlock)|$o(_t.catchClause)|$o(_t.finallyBlock),_t.jsDoc=void 0,_t.flowNode=void 0,_t}function Bg(z,ye,We,_t){return z.tryBlock!==ye||z.catchClause!==We||z.finallyBlock!==_t?bo(Qo(ye,We,_t),z):z}function Dg(){let z=ne(259);return z.jsDoc=void 0,z.flowNode=void 0,z}function Df(z,ye,We,_t){let Rr=ce(260);return Rr.name=vI(z),Rr.exclamationToken=ye,Rr.type=We,Rr.initializer=RA(_t),Rr.transformFlags|=EP(Rr.name)|$o(Rr.initializer)|(Rr.exclamationToken??Rr.type?1:0),Rr.jsDoc=void 0,Rr}function AI(z,ye,We,_t,Rr){return z.name!==ye||z.type!==_t||z.exclamationToken!==We||z.initializer!==Rr?bo(Df(ye,We,_t,Rr),z):z}function kh(z,ye=0){let We=ne(261);return We.flags|=ye&7,We.declarations=ae(z),We.transformFlags|=ed(We.declarations)|4194304,ye&7&&(We.transformFlags|=263168),ye&4&&(We.transformFlags|=4),We}function uE(z,ye){return z.declarations!==ye?bo(kh(ye,z.flags),z):z}function GT(z,ye,We,_t,Rr,ai,Lo){let Hc=ce(262);if(Hc.modifiers=mA(z),Hc.asteriskToken=ye,Hc.name=vI(We),Hc.typeParameters=mA(_t),Hc.parameters=ae(Rr),Hc.type=ai,Hc.body=Lo,!Hc.body||SP(Hc.modifiers)&128)Hc.transformFlags=1;else{let ld=SP(Hc.modifiers)&1024,hm=!!Hc.asteriskToken,av=ld&&hm;Hc.transformFlags=ed(Hc.modifiers)|$o(Hc.asteriskToken)|EP(Hc.name)|ed(Hc.typeParameters)|ed(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(av?128:ld?256:hm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304}return Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function gB(z,ye,We,_t,Rr,ai,Lo,Hc){return z.modifiers!==ye||z.asteriskToken!==We||z.name!==_t||z.typeParameters!==Rr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?FT(GT(ye,We,_t,Rr,ai,Lo,Hc),z):z}function FT(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),fe(z,ye)}function Ny(z,ye,We,_t,Rr){let ai=ce(263);return ai.modifiers=mA(z),ai.name=vI(ye),ai.typeParameters=mA(We),ai.heritageClauses=mA(_t),ai.members=ae(Rr),SP(ai.modifiers)&128?ai.transformFlags=1:(ai.transformFlags|=ed(ai.modifiers)|EP(ai.name)|ed(ai.typeParameters)|ed(ai.heritageClauses)|ed(ai.members)|(ai.typeParameters?1:0)|1024,ai.transformFlags&8192&&(ai.transformFlags|=1)),ai.jsDoc=void 0,ai}function e1(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.heritageClauses!==Rr||z.members!==ai?bo(Ny(ye,We,_t,Rr,ai),z):z}function $_(z,ye,We,_t,Rr){let ai=ce(264);return ai.modifiers=mA(z),ai.name=vI(ye),ai.typeParameters=mA(We),ai.heritageClauses=mA(_t),ai.members=ae(Rr),ai.transformFlags=1,ai.jsDoc=void 0,ai}function ZT(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.heritageClauses!==Rr||z.members!==ai?bo($_(ye,We,_t,Rr,ai),z):z}function nf(z,ye,We,_t){let Rr=ce(265);return Rr.modifiers=mA(z),Rr.name=vI(ye),Rr.typeParameters=mA(We),Rr.type=_t,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function Dy(z,ye,We,_t,Rr){return z.modifiers!==ye||z.name!==We||z.typeParameters!==_t||z.type!==Rr?bo(nf(ye,We,_t,Rr),z):z}function $S(z,ye,We){let _t=ce(266);return _t.modifiers=mA(z),_t.name=vI(ye),_t.members=ae(We),_t.transformFlags|=ed(_t.modifiers)|$o(_t.name)|ed(_t.members)|1,_t.transformFlags&=-67108865,_t.jsDoc=void 0,_t}function rh(z,ye,We,_t){return z.modifiers!==ye||z.name!==We||z.members!==_t?bo($S(ye,We,_t),z):z}function TA(z,ye,We,_t=0){let Rr=ce(267);return Rr.modifiers=mA(z),Rr.flags|=_t&2088,Rr.name=ye,Rr.body=We,SP(Rr.modifiers)&128?Rr.transformFlags=1:Rr.transformFlags|=ed(Rr.modifiers)|$o(Rr.name)|$o(Rr.body)|1,Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function td(z,ye,We,_t){return z.modifiers!==ye||z.name!==We||z.body!==_t?bo(TA(ye,We,_t,z.flags),z):z}function Km(z){let ye=ne(268);return ye.statements=ae(z),ye.transformFlags|=ed(ye.statements),ye.jsDoc=void 0,ye}function eI(z,ye){return z.statements!==ye?bo(Km(ye),z):z}function yb(z){let ye=ne(269);return ye.clauses=ae(z),ye.transformFlags|=ed(ye.clauses),ye.locals=void 0,ye.nextContainer=void 0,ye}function k_(z,ye){return z.clauses!==ye?bo(yb(ye),z):z}function bb(z){let ye=ce(270);return ye.name=vI(z),ye.transformFlags|=PNe(ye.name)|1,ye.modifiers=void 0,ye.jsDoc=void 0,ye}function ky(z,ye){return z.name!==ye?ev(bb(ye),z):z}function ev(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),bo(z,ye)}function Eb(z,ye,We,_t){let Rr=ce(271);return Rr.modifiers=mA(z),Rr.name=vI(We),Rr.isTypeOnly=ye,Rr.moduleReference=_t,Rr.transformFlags|=ed(Rr.modifiers)|PNe(Rr.name)|$o(Rr.moduleReference),FBi(Rr.moduleReference)||(Rr.transformFlags|=1),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function e0(z,ye,We,_t,Rr){return z.modifiers!==ye||z.isTypeOnly!==We||z.name!==_t||z.moduleReference!==Rr?bo(Eb(ye,We,_t,Rr),z):z}function t1(z,ye,We,_t){let Rr=ne(272);return Rr.modifiers=mA(z),Rr.importClause=ye,Rr.moduleSpecifier=We,Rr.attributes=Rr.assertClause=_t,Rr.transformFlags|=$o(Rr.importClause)|$o(Rr.moduleSpecifier),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function AB(z,ye,We,_t,Rr){return z.modifiers!==ye||z.importClause!==We||z.moduleSpecifier!==_t||z.attributes!==Rr?bo(t1(ye,We,_t,Rr),z):z}function LT(z,ye,We){let _t=ce(273);return _t.isTypeOnly=z,_t.name=ye,_t.namedBindings=We,_t.transformFlags|=$o(_t.name)|$o(_t.namedBindings),z&&(_t.transformFlags|=1),_t.transformFlags&=-67108865,_t}function dB(z,ye,We,_t){return z.isTypeOnly!==ye||z.name!==We||z.namedBindings!==_t?bo(LT(ye,We,_t),z):z}function tv(z,ye){let We=ne(300);return We.elements=ae(z),We.multiLine=ye,We.token=132,We.transformFlags|=4,We}function qR(z,ye,We){return z.elements!==ye||z.multiLine!==We?bo(tv(ye,We),z):z}function rv(z,ye){let We=ne(301);return We.name=z,We.value=ye,We.transformFlags|=4,We}function r1(z,ye,We){return z.name!==ye||z.value!==We?bo(rv(ye,We),z):z}function z2(z,ye){let We=ne(302);return We.assertClause=z,We.multiLine=ye,We}function VT(z,ye,We){return z.assertClause!==ye||z.multiLine!==We?bo(z2(ye,We),z):z}function pn(z,ye,We){let _t=ne(300);return _t.token=We??118,_t.elements=ae(z),_t.multiLine=ye,_t.transformFlags|=4,_t}function r2(z,ye,We){return z.elements!==ye||z.multiLine!==We?bo(pn(ye,We,z.token),z):z}function q2(z,ye){let We=ne(301);return We.name=z,We.value=ye,We.transformFlags|=4,We}function ny(z,ye,We){return z.name!==ye||z.value!==We?bo(q2(ye,We),z):z}function Ap(z){let ye=ce(274);return ye.name=z,ye.transformFlags|=$o(ye.name),ye.transformFlags&=-67108865,ye}function bw(z,ye){return z.name!==ye?bo(Ap(ye),z):z}function pB(z){let ye=ce(280);return ye.name=z,ye.transformFlags|=$o(ye.name)|32,ye.transformFlags&=-67108865,ye}function FD(z,ye){return z.name!==ye?bo(pB(ye),z):z}function Dd(z){let ye=ne(275);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements),ye.transformFlags&=-67108865,ye}function $R(z,ye){return z.elements!==ye?bo(Dd(ye),z):z}function iy(z,ye,We){let _t=ce(276);return _t.isTypeOnly=z,_t.propertyName=ye,_t.name=We,_t.transformFlags|=$o(_t.propertyName)|$o(_t.name),_t.transformFlags&=-67108865,_t}function fF(z,ye,We,_t){return z.isTypeOnly!==ye||z.propertyName!==We||z.name!==_t?bo(iy(ye,We,_t),z):z}function n2(z,ye,We){let _t=ce(277);return _t.modifiers=mA(z),_t.isExportEquals=ye,_t.expression=ye?n().parenthesizeRightSideOfBinary(64,void 0,We):n().parenthesizeExpressionOfExportDefault(We),_t.transformFlags|=ed(_t.modifiers)|$o(_t.expression),_t.transformFlags&=-67108865,_t.jsDoc=void 0,_t}function n1(z,ye,We){return z.modifiers!==ye||z.expression!==We?bo(n2(ye,z.isExportEquals,We),z):z}function x_(z,ye,We,_t,Rr){let ai=ce(278);return ai.modifiers=mA(z),ai.isTypeOnly=ye,ai.exportClause=We,ai.moduleSpecifier=_t,ai.attributes=ai.assertClause=Rr,ai.transformFlags|=ed(ai.modifiers)|$o(ai.exportClause)|$o(ai.moduleSpecifier),ai.transformFlags&=-67108865,ai.jsDoc=void 0,ai}function i1(z,ye,We,_t,Rr,ai){return z.modifiers!==ye||z.isTypeOnly!==We||z.exportClause!==_t||z.moduleSpecifier!==Rr||z.attributes!==ai?s1(x_(ye,We,_t,Rr,ai),z):z}function s1(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),bo(z,ye)}function sy(z){let ye=ne(279);return ye.elements=ae(z),ye.transformFlags|=ed(ye.elements),ye.transformFlags&=-67108865,ye}function WT(z,ye){return z.elements!==ye?bo(sy(ye),z):z}function Sb(z,ye,We){let _t=ne(281);return _t.isTypeOnly=z,_t.propertyName=vI(ye),_t.name=vI(We),_t.transformFlags|=$o(_t.propertyName)|$o(_t.name),_t.transformFlags&=-67108865,_t.jsDoc=void 0,_t}function s_(z,ye,We,_t){return z.isTypeOnly!==ye||z.propertyName!==We||z.name!==_t?bo(Sb(ye,We,_t),z):z}function xh(){let z=ce(282);return z.jsDoc=void 0,z}function vb(z){let ye=ne(283);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.transformFlags&=-67108865,ye}function fB(z,ye){return z.expression!==ye?bo(vb(ye),z):z}function ZD(z){return ne(z)}function LD(z,ye,We=!1){let _t=t0(z,We?ye&&n().parenthesizeNonArrayTypeOfPostfixType(ye):ye);return _t.postfix=We,_t}function t0(z,ye){let We=ne(z);return We.type=ye,We}function VD(z,ye,We){return ye.type!==We?bo(LD(z,We,ye.postfix),ye):ye}function eN(z,ye,We){return ye.type!==We?bo(t0(z,We),ye):ye}function lc(z,ye){let We=ce(317);return We.parameters=mA(z),We.type=ye,We.transformFlags=ed(We.parameters)|(We.type?1:0),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We.typeArguments=void 0,We}function Ch(z,ye,We){return z.parameters!==ye||z.type!==We?bo(lc(ye,We),z):z}function sf(z,ye=!1){let We=ce(322);return We.jsDocPropertyTags=mA(z),We.isArrayType=ye,We}function EI(z,ye,We){return z.jsDocPropertyTags!==ye||z.isArrayType!==We?bo(sf(ye,We),z):z}function gE(z){let ye=ne(309);return ye.type=z,ye}function nv(z,ye){return z.type!==ye?bo(gE(ye),z):z}function Jp(z,ye,We){let _t=ce(323);return _t.typeParameters=mA(z),_t.parameters=ae(ye),_t.type=We,_t.jsDoc=void 0,_t.locals=void 0,_t.nextContainer=void 0,_t}function IB(z,ye,We,_t){return z.typeParameters!==ye||z.parameters!==We||z.type!==_t?bo(Jp(ye,We,_t),z):z}function _h(z){let ye=zbt(z.kind);return z.tagName.escapedText===WNe(ye)?z.tagName:Je(ye)}function ZC(z,ye,We){let _t=ne(z);return _t.tagName=ye,_t.comment=We,_t}function r0(z,ye,We){let _t=ce(z);return _t.tagName=ye,_t.comment=We,_t}function o1(z,ye,We,_t){let Rr=ZC(345,z??Je("template"),_t);return Rr.constraint=ye,Rr.typeParameters=ae(We),Rr}function hB(z,ye=_h(z),We,_t,Rr){return z.tagName!==ye||z.constraint!==We||z.typeParameters!==_t||z.comment!==Rr?bo(o1(ye,We,_t,Rr),z):z}function Ew(z,ye,We,_t){let Rr=r0(346,z??Je("typedef"),_t);return Rr.typeExpression=ye,Rr.fullName=We,Rr.name=bSi(We),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function OT(z,ye=_h(z),We,_t,Rr){return z.tagName!==ye||z.typeExpression!==We||z.fullName!==_t||z.comment!==Rr?bo(Ew(ye,We,_t,Rr),z):z}function v0(z,ye,We,_t,Rr,ai){let Lo=r0(341,z??Je("param"),ai);return Lo.typeExpression=_t,Lo.name=ye,Lo.isNameFirst=!!Rr,Lo.isBracketed=We,Lo}function ia(z,ye=_h(z),We,_t,Rr,ai,Lo){return z.tagName!==ye||z.name!==We||z.isBracketed!==_t||z.typeExpression!==Rr||z.isNameFirst!==ai||z.comment!==Lo?bo(v0(ye,We,_t,Rr,ai,Lo),z):z}function i2(z,ye,We,_t,Rr,ai){let Lo=r0(348,z??Je("prop"),ai);return Lo.typeExpression=_t,Lo.name=ye,Lo.isNameFirst=!!Rr,Lo.isBracketed=We,Lo}function Ed(z,ye=_h(z),We,_t,Rr,ai,Lo){return z.tagName!==ye||z.name!==We||z.isBracketed!==_t||z.typeExpression!==Rr||z.isNameFirst!==ai||z.comment!==Lo?bo(i2(ye,We,_t,Rr,ai,Lo),z):z}function SI(z,ye,We,_t){let Rr=r0(338,z??Je("callback"),_t);return Rr.typeExpression=ye,Rr.fullName=We,Rr.name=bSi(We),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function cg(z,ye=_h(z),We,_t,Rr){return z.tagName!==ye||z.typeExpression!==We||z.fullName!==_t||z.comment!==Rr?bo(SI(ye,We,_t,Rr),z):z}function Bb(z,ye,We){let _t=ZC(339,z??Je("overload"),We);return _t.typeExpression=ye,_t}function a1(z,ye=_h(z),We,_t){return z.tagName!==ye||z.typeExpression!==We||z.comment!==_t?bo(Bb(ye,We,_t),z):z}function $2(z,ye,We){let _t=ZC(328,z??Je("augments"),We);return _t.class=ye,_t}function n0(z,ye=_h(z),We,_t){return z.tagName!==ye||z.class!==We||z.comment!==_t?bo($2(ye,We,_t),z):z}function o_(z,ye,We){let _t=ZC(329,z??Je("implements"),We);return _t.class=ye,_t}function Up(z,ye,We){let _t=ZC(347,z??Je("see"),We);return _t.name=ye,_t}function AE(z,ye,We,_t){return z.tagName!==ye||z.name!==We||z.comment!==_t?bo(Up(ye,We,_t),z):z}function dE(z){let ye=ne(310);return ye.name=z,ye}function mp(z,ye){return z.name!==ye?bo(dE(ye),z):z}function jh(z,ye){let We=ne(311);return We.left=z,We.right=ye,We.transformFlags|=$o(We.left)|$o(We.right),We}function B0(z,ye,We){return z.left!==ye||z.right!==We?bo(jh(ye,We),z):z}function lA(z,ye){let We=ne(324);return We.name=z,We.text=ye,We}function Iu(z,ye,We){return z.name!==ye?bo(lA(ye,We),z):z}function Kp(z,ye){let We=ne(325);return We.name=z,We.text=ye,We}function IC(z,ye,We){return z.name!==ye?bo(Kp(ye,We),z):z}function pE(z,ye){let We=ne(326);return We.name=z,We.text=ye,We}function nh(z,ye,We){return z.name!==ye?bo(pE(ye,We),z):z}function Mf(z,ye=_h(z),We,_t){return z.tagName!==ye||z.class!==We||z.comment!==_t?bo(o_(ye,We,_t),z):z}function Mo(z,ye,We){return ZC(z,ye??Je(zbt(z)),We)}function dp(z,ye,We=_h(ye),_t){return ye.tagName!==We||ye.comment!==_t?bo(Mo(z,We,_t),ye):ye}function IF(z,ye,We,_t){let Rr=ZC(z,ye??Je(zbt(z)),_t);return Rr.typeExpression=We,Rr}function hF(z,ye,We=_h(ye),_t,Rr){return ye.tagName!==We||ye.typeExpression!==_t||ye.comment!==Rr?bo(IF(z,We,_t,Rr),ye):ye}function fE(z,ye){return ZC(327,z,ye)}function PT(z,ye,We){return z.tagName!==ye||z.comment!==We?bo(fE(ye,We),z):z}function kp(z,ye,We){let _t=r0(340,z??Je(zbt(340)),We);return _t.typeExpression=ye,_t.locals=void 0,_t.nextContainer=void 0,_t}function Fm(z,ye=_h(z),We,_t){return z.tagName!==ye||z.typeExpression!==We||z.comment!==_t?bo(kp(ye,We,_t),z):z}function xp(z,ye,We,_t,Rr){let ai=ZC(351,z??Je("import"),Rr);return ai.importClause=ye,ai.moduleSpecifier=We,ai.attributes=_t,ai.comment=Rr,ai}function s2(z,ye,We,_t,Rr,ai){return z.tagName!==ye||z.comment!==ai||z.importClause!==We||z.moduleSpecifier!==_t||z.attributes!==Rr?bo(xp(ye,We,_t,Rr,ai),z):z}function To(z){let ye=ne(321);return ye.text=z,ye}function IE(z,ye){return z.text!==ye?bo(To(ye),z):z}function mB(z,ye){let We=ne(320);return We.comment=z,We.tags=mA(ye),We}function Xc(z,ye,We){return z.comment!==ye||z.tags!==We?bo(mB(ye,We),z):z}function su(z,ye,We){let _t=ne(284);return _t.openingElement=z,_t.children=ae(ye),_t.closingElement=We,_t.transformFlags|=$o(_t.openingElement)|ed(_t.children)|$o(_t.closingElement)|2,_t}function hE(z,ye,We,_t){return z.openingElement!==ye||z.children!==We||z.closingElement!==_t?bo(su(ye,We,_t),z):z}function TL(z,ye,We){let _t=ne(285);return _t.tagName=z,_t.typeArguments=mA(ye),_t.attributes=We,_t.transformFlags|=$o(_t.tagName)|ed(_t.typeArguments)|$o(_t.attributes)|2,_t.typeArguments&&(_t.transformFlags|=1),_t}function tN(z,ye,We,_t){return z.tagName!==ye||z.typeArguments!==We||z.attributes!==_t?bo(TL(ye,We,_t),z):z}function Pu(z,ye,We){let _t=ne(286);return _t.tagName=z,_t.typeArguments=mA(ye),_t.attributes=We,_t.transformFlags|=$o(_t.tagName)|ed(_t.typeArguments)|$o(_t.attributes)|2,ye&&(_t.transformFlags|=1),_t}function oy(z,ye,We,_t){return z.tagName!==ye||z.typeArguments!==We||z.attributes!==_t?bo(Pu(ye,We,_t),z):z}function Cp(z){let ye=ne(287);return ye.tagName=z,ye.transformFlags|=$o(ye.tagName)|2,ye}function Im(z,ye){return z.tagName!==ye?bo(Cp(ye),z):z}function eS(z,ye,We){let _t=ne(288);return _t.openingFragment=z,_t.children=ae(ye),_t.closingFragment=We,_t.transformFlags|=$o(_t.openingFragment)|ed(_t.children)|$o(_t.closingFragment)|2,_t}function a_(z,ye,We,_t){return z.openingFragment!==ye||z.children!==We||z.closingFragment!==_t?bo(eS(ye,We,_t),z):z}function CB(z,ye){let We=ne(12);return We.text=z,We.containsOnlyTriviaWhiteSpaces=!!ye,We.transformFlags|=2,We}function MT(z,ye,We){return z.text!==ye||z.containsOnlyTriviaWhiteSpaces!==We?bo(CB(ye,We),z):z}function vx(){let z=ne(289);return z.transformFlags|=2,z}function _B(){let z=ne(290);return z.transformFlags|=2,z}function tI(z,ye){let We=ce(291);return We.name=z,We.initializer=ye,We.transformFlags|=$o(We.name)|$o(We.initializer)|2,We}function zh(z,ye,We){return z.name!==ye||z.initializer!==We?bo(tI(ye,We),z):z}function iv(z){let ye=ce(292);return ye.properties=ae(z),ye.transformFlags|=ed(ye.properties)|2,ye}function wb(z,ye){return z.properties!==ye?bo(iv(ye),z):z}function _p(z){let ye=ne(293);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|2,ye}function o2(z,ye){return z.expression!==ye?bo(_p(ye),z):z}function c1(z,ye){let We=ne(294);return We.dotDotDotToken=z,We.expression=ye,We.transformFlags|=$o(We.dotDotDotToken)|$o(We.expression)|2,We}function Hf(z,ye){return z.expression!==ye?bo(c1(z.dotDotDotToken,ye),z):z}function mE(z,ye){let We=ne(295);return We.namespace=z,We.name=ye,We.transformFlags|=$o(We.namespace)|$o(We.name)|2,We}function Od(z,ye,We){return z.namespace!==ye||z.name!==We?bo(mE(ye,We),z):z}function j(z,ye){let We=ne(296);return We.expression=n().parenthesizeExpressionForDisallowedComma(z),We.statements=ae(ye),We.transformFlags|=$o(We.expression)|ed(We.statements),We.jsDoc=void 0,We}function Z(z,ye,We){return z.expression!==ye||z.statements!==We?bo(j(ye,We),z):z}function md(z){let ye=ne(297);return ye.statements=ae(z),ye.transformFlags=ed(ye.statements),ye}function yB(z,ye){return z.statements!==ye?bo(md(ye),z):z}function sv(z,ye){let We=ne(298);switch(We.token=z,We.types=ae(ye),We.transformFlags|=ed(We.types),z){case 96:We.transformFlags|=1024;break;case 119:We.transformFlags|=1;break;default:return Zo.assertNever(z)}return We}function xy(z,ye){return z.types!==ye?bo(sv(z.token,ye),z):z}function Tb(z,ye){let We=ne(299);return We.variableDeclaration=iS(z),We.block=ye,We.transformFlags|=$o(We.variableDeclaration)|$o(We.block)|(z?0:64),We.locals=void 0,We.nextContainer=void 0,We}function WD(z,ye,We){return z.variableDeclaration!==ye||z.block!==We?bo(Tb(ye,We),z):z}function bB(z,ye){let We=ce(303);return We.name=vI(z),We.initializer=n().parenthesizeExpressionForDisallowedComma(ye),We.transformFlags|=EP(We.name)|$o(We.initializer),We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function Rb(z,ye,We){return z.name!==ye||z.initializer!==We?RL(bB(ye,We),z):z}function RL(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken),bo(z,ye)}function mF(z,ye){let We=ce(304);return We.name=vI(z),We.objectAssignmentInitializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),We.transformFlags|=PNe(We.name)|$o(We.objectAssignmentInitializer)|1024,We.equalsToken=void 0,We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function x(z,ye,We){return z.name!==ye||z.objectAssignmentInitializer!==We?L(mF(ye,We),z):z}function L(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken,z.equalsToken=ye.equalsToken),bo(z,ye)}function te(z){let ye=ce(305);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|128|65536,ye.jsDoc=void 0,ye}function Re(z,ye){return z.expression!==ye?bo(te(ye),z):z}function Ve(z,ye){let We=ce(306);return We.name=vI(z),We.initializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),We.transformFlags|=$o(We.name)|$o(We.initializer)|1,We.jsDoc=void 0,We}function It(z,ye,We){return z.name!==ye||z.initializer!==We?bo(Ve(ye,We),z):z}function dr(z,ye,We){let _t=t.createBaseSourceFileNode(307);return _t.statements=ae(z),_t.endOfFileToken=ye,_t.flags|=We,_t.text="",_t.fileName="",_t.path="",_t.resolvedPath="",_t.originalFileName="",_t.languageVersion=1,_t.languageVariant=0,_t.scriptKind=0,_t.isDeclarationFile=!1,_t.hasNoDefaultLib=!1,_t.transformFlags|=ed(_t.statements)|$o(_t.endOfFileToken),_t.locals=void 0,_t.nextContainer=void 0,_t.endFlowNode=void 0,_t.nodeCount=0,_t.identifierCount=0,_t.symbolCount=0,_t.parseDiagnostics=void 0,_t.bindDiagnostics=void 0,_t.bindSuggestionDiagnostics=void 0,_t.lineMap=void 0,_t.externalModuleIndicator=void 0,_t.setExternalModuleIndicator=void 0,_t.pragmas=void 0,_t.checkJsDirective=void 0,_t.referencedFiles=void 0,_t.typeReferenceDirectives=void 0,_t.libReferenceDirectives=void 0,_t.amdDependencies=void 0,_t.commentDirectives=void 0,_t.identifiers=void 0,_t.packageJsonLocations=void 0,_t.packageJsonScope=void 0,_t.imports=void 0,_t.moduleAugmentations=void 0,_t.ambientModuleNames=void 0,_t.classifiableNames=void 0,_t.impliedNodeFormat=void 0,_t}function Ur(z){let ye=Object.create(z.redirectTarget);return Object.defineProperties(ye,{id:{get(){return this.redirectInfo.redirectTarget.id},set(We){this.redirectInfo.redirectTarget.id=We}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(We){this.redirectInfo.redirectTarget.symbol=We}}}),ye.redirectInfo=z,ye}function mi(z){let ye=Ur(z.redirectInfo);return ye.flags|=z.flags&-17,ye.fileName=z.fileName,ye.path=z.path,ye.resolvedPath=z.resolvedPath,ye.originalFileName=z.originalFileName,ye.packageJsonLocations=z.packageJsonLocations,ye.packageJsonScope=z.packageJsonScope,ye.emitNode=void 0,ye}function Vi(z){let ye=t.createBaseSourceFileNode(307);ye.flags|=z.flags&-17;for(let We in z)if(!(R6(ye,We)||!R6(z,We))){if(We==="emitNode"){ye.emitNode=void 0;continue}ye[We]=z[We]}return ye}function Ta(z){let ye=z.redirectInfo?mi(z):Vi(z);return r(ye,z),ye}function El(z,ye,We,_t,Rr,ai,Lo){let Hc=Ta(z);return Hc.statements=ae(ye),Hc.isDeclarationFile=We,Hc.referencedFiles=_t,Hc.typeReferenceDirectives=Rr,Hc.hasNoDefaultLib=ai,Hc.libReferenceDirectives=Lo,Hc.transformFlags=ed(Hc.statements)|$o(Hc.endOfFileToken),Hc}function Ho(z,ye,We=z.isDeclarationFile,_t=z.referencedFiles,Rr=z.typeReferenceDirectives,ai=z.hasNoDefaultLib,Lo=z.libReferenceDirectives){return z.statements!==ye||z.isDeclarationFile!==We||z.referencedFiles!==_t||z.typeReferenceDirectives!==Rr||z.hasNoDefaultLib!==ai||z.libReferenceDirectives!==Lo?bo(El(z,ye,We,_t,Rr,ai,Lo),z):z}function Pg(z){let ye=ne(308);return ye.sourceFiles=z,ye.syntheticFileReferences=void 0,ye.syntheticTypeReferences=void 0,ye.syntheticLibReferences=void 0,ye.hasNoDefaultLib=void 0,ye}function uA(z,ye){return z.sourceFiles!==ye?bo(Pg(ye),z):z}function ih(z,ye=!1,We){let _t=ne(237);return _t.type=z,_t.isSpread=ye,_t.tupleNameSource=We,_t}function xn(z){let ye=ne(352);return ye._children=z,ye}function rn(z){let ye=ne(353);return ye.original=z,iL(ye,z),ye}function Ci(z,ye){let We=ne(355);return We.expression=z,We.original=ye,We.transformFlags|=$o(We.expression)|1,iL(We,ye),We}function Wo(z,ye){return z.expression!==ye?bo(Ci(ye,z.original),z):z}function ec(){return ne(354)}function Ra(z){if(ONe(z)&&!lEt(z)&&!z.original&&!z.emitNode&&!z.id){if(Q$a(z))return z.elements;if(qNe(z)&&l$a(z.operatorToken))return[z.left,z.right]}return z}function dc(z){let ye=ne(356);return ye.elements=ae(yja(z,Ra)),ye.transformFlags|=ed(ye.elements),ye}function hu(z,ye){return z.elements!==ye?bo(dc(ye),z):z}function ml(z,ye){let We=ne(357);return We.expression=z,We.thisArg=ye,We.transformFlags|=$o(We.expression)|$o(We.thisArg),We}function Tl(z,ye,We){return z.expression!==ye||z.thisArg!==We?bo(ml(ye,We),z):z}function rI(z){let ye=ze(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function tS(z){let ye=ze(z.escapedText);ye.flags|=z.flags&-17,ye.jsDoc=z.jsDoc,ye.flowNode=z.flowNode,ye.symbol=z.symbol,ye.transformFlags=z.transformFlags,r(ye,z);let We=getIdentifierTypeArguments(z);return We&&setIdentifierTypeArguments(ye,We),ye}function Bx(z){let ye=Sr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function rS(z){let ye=Sr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),ye}function ov(z){if(z===void 0)return z;if(eec(z))return Ta(z);if(XNe(z))return rI(z);if(r_(z))return tS(z);if(Uvi(z))return Bx(z);if(cCe(z))return rS(z);let ye=hDr(z.kind)?t.createBaseNode(z.kind):t.createBaseTokenNode(z.kind);ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z);for(let We in z)R6(ye,We)||!R6(z,We)||(ye[We]=z[We]);return ye}function Yu(z,ye,We){return XA(DC(void 0,void 0,void 0,void 0,ye?[ye]:[],void 0,tA(z,!0)),void 0,We?[We]:[])}function a3(z,ye,We){return XA(up(void 0,void 0,ye?[ye]:[],void 0,void 0,tA(z,!0)),void 0,We?[We]:[])}function EB(){return yI(ue("0"))}function Sw(z){return n2(void 0,!1,z)}function CF(z){return x_(void 0,!1,sy([Sb(!1,void 0,z)]))}function c3(z,ye){return ye==="null"?J.createStrictEquality(z,Ar()):ye==="undefined"?J.createStrictEquality(z,EB()):J.createStrictEquality(dm(z),Se(ye))}function IY(z,ye){return ye==="null"?J.createStrictInequality(z,Ar()):ye==="undefined"?J.createStrictInequality(z,EB()):J.createStrictInequality(dm(z),Se(ye))}function HT(z,ye,We){return tSi(z)?Gm(Xl(z,void 0,ye),void 0,void 0,We):XA(vo(z,ye),void 0,We)}function OD(z,ye,We){return HT(z,"bind",[ye,...We])}function _F(z,ye,We){return HT(z,"call",[ye,...We])}function NL(z,ye,We){return HT(z,"apply",[ye,We])}function hf(z,ye,We){return HT(Je(z),ye,We)}function PD(z,ye){return HT(z,"slice",ye===void 0?[]:[$d(ye)])}function CE(z,ye){return HT(z,"concat",ye)}function a2(z,ye,We){return hf("Object","defineProperty",[z,$d(ye),We])}function SB(z,ye){return hf("Object","getOwnPropertyDescriptor",[z,$d(ye)])}function Sd(z,ye,We){return hf("Reflect","get",We?[z,ye,We]:[z,ye])}function l1(z,ye,We,_t){return hf("Reflect","set",_t?[z,ye,We,_t]:[z,ye,We])}function qh(z,ye,We){return We?(z.push(bB(ye,We)),!0):!1}function Nb(z,ye){let We=[];qh(We,"enumerable",$d(z.enumerable)),qh(We,"configurable",$d(z.configurable));let _t=qh(We,"writable",$d(z.writable));_t=qh(We,"value",z.value)||_t;let Rr=qh(We,"get",z.get);return Rr=qh(We,"set",z.set)||Rr,Zo.assert(!(_t&&Rr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),On(We,!ye)}function Ku(z,ye){switch(z.kind){case 217:return jE(z,ye);case 216:return j_(z,z.type,ye);case 234:return xC(z,ye,z.type);case 238:return FC(z,ye,z.type);case 235:return z_(z,ye);case 233:return _b(z,ye,z.typeArguments);case 355:return Wo(z,ye)}}function ay(z){return RDr(z)&&ONe(z)&&ONe(getSourceMapRange(z))&&ONe(getCommentRange(z))&&!AD(getSyntheticLeadingComments(z))&&!AD(getSyntheticTrailingComments(z))}function hY(z,ye,We=31){return z&&OBi(z,We)&&!ay(z)?Ku(z,hY(z.expression,ye)):ye}function mY(z,ye,We){if(!ye)return z;let _t=Jr(ye,ye.label,X$a(ye.statement)?mY(z,ye.statement):z);return We&&We(ye),_t}function rN(z,ye){let We=EDr(z);switch(We.kind){case 80:return ye;case 110:case 9:case 10:case 11:return!1;case 209:return We.elements.length!==0;case 210:return We.properties.length>0;default:return!0}}function CY(z,ye,We,_t=!1){let Rr=kDr(z,31),ai,Lo;return cSi(Rr)?(ai=cr(),Lo=Rr):BNr(Rr)?(ai=cr(),Lo=We!==void 0&&We<2?iL(Je("_super"),Rr):Rr):jNe(Rr)&8192?(ai=EB(),Lo=n().parenthesizeLeftSideOfAccess(Rr,!1)):Pce(Rr)?rN(Rr.expression,_t)?(ai=ft(ye),Lo=vo(iL(J.createAssignment(ai,Rr.expression),Rr.expression),Rr.name),iL(Lo,Rr)):(ai=Rr.expression,Lo=Rr):YJe(Rr)?rN(Rr.expression,_t)?(ai=ft(ye),Lo=rf(iL(J.createAssignment(ai,Rr.expression),Rr.expression),Rr.argumentExpression),iL(Lo,Rr)):(ai=Rr.expression,Lo=Rr):(ai=EB(),Lo=n().parenthesizeLeftSideOfAccess(z,!1)),{target:Lo,thisArg:ai}}function rt(z,ye){return vo(ty(On([li(void 0,"value",[no(void 0,void 0,z,void 0,void 0,void 0)],tA([cs(ye)]))])),"value")}function Jt(z){return z.length>10?dc(z):Dja(z,J.createComma)}function kr(z,ye,We,_t=0,Rr){let ai=Rr?z&&fDr(z):Hvi(z);if(ai&&r_(ai)&&!XNe(ai)){let Lo=BDr(iL(ov(ai),ai),ai.parent);return _t|=jNe(ai),We||(_t|=96),ye||(_t|=3072),_t&&setEmitFlags(Lo,_t),Lo}return Er(z)}function Xr(z,ye,We){return kr(z,ye,We,98304)}function ui(z,ye,We,_t){return kr(z,ye,We,32768,_t)}function Is(z,ye,We){return kr(z,ye,We,16384)}function Hs(z,ye,We){return kr(z,ye,We)}function Rs(z,ye,We,_t){let Rr=vo(z,ONe(ye)?ye:ov(ye));iL(Rr,ye);let ai=0;return _t||(ai|=96),We||(ai|=3072),ai&&setEmitFlags(Rr,ai),Rr}function ja(z,ye,We,_t){return z&&HJe(ye,32)?Rs(z,kr(ye),We,_t):Is(ye,We,_t)}function Io(z,ye,We,_t){let Rr=rd(z,ye,0,We);return Mg(z,ye,Rr,_t)}function nl(z){return CEt(z.expression)&&z.expression.text==="use strict"}function kd(){return bec(cs(Se("use strict")))}function rd(z,ye,We=0,_t){Zo.assert(ye.length===0,"Prologue directives should be at the first statement in the target statements array");let Rr=!1,ai=z.length;for(;WeHc&&hm.splice(Rr,0,...ye.slice(Hc,ld)),Hc>Lo&&hm.splice(_t,0,...ye.slice(Lo,Hc)),Lo>ai&&hm.splice(We,0,...ye.slice(ai,Lo)),ai>0)if(We===0)hm.splice(0,0,...ye.slice(0,ai));else{let av=new Map;for(let cv=0;cv=0;cv--){let wx=ye[cv];av.has(wx.expression.text)||hm.unshift(wx)}}return Fce(z)?iL(ae(hm,z.hasTrailingComma),z):z}function _E(z,ye){let We;return typeof ye=="number"?We=zt(ye):We=ye,hBi(z)?xi(z,We,z.name,z.constraint,z.default):AEt(z)?ga(z,We,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):bBi(z)?Ko(z,We,z.typeParameters,z.parameters,z.type):d$a(z)?Sc(z,We,z.name,z.questionToken,z.type):dEt(z)?Ft(z,We,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):p$a(z)?Rn(z,We,z.name,z.questionToken,z.typeParameters,z.parameters,z.type):HNr(z)?Qi(z,We,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):mBi(z)?_g(z,We,z.parameters,z.body):YNr(z)?ma(z,We,z.name,z.parameters,z.type,z.body):pEt(z)?Ei(z,We,z.name,z.parameters,z.body):CBi(z)?Kl(z,We,z.parameters,z.type):vBi(z)?i_(z,We,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):BBi(z)?Xm(z,We,z.typeParameters,z.parameters,z.type,z.equalsGreaterThanToken,z.body):QNr(z)?Jm(z,We,z.name,z.typeParameters,z.heritageClauses,z.members):_Et(z)?pm(z,We,z.declarationList):RBi(z)?gB(z,We,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):fEt(z)?e1(z,We,z.name,z.typeParameters,z.heritageClauses,z.members):NDr(z)?ZT(z,We,z.name,z.typeParameters,z.heritageClauses,z.members):NBi(z)?Dy(z,We,z.name,z.typeParameters,z.type):U$a(z)?rh(z,We,z.name,z.members):PJe(z)?td(z,We,z.name,z.body):DBi(z)?e0(z,We,z.isTypeOnly,z.name,z.moduleReference):kBi(z)?AB(z,We,z.importClause,z.moduleSpecifier,z.attributes):xBi(z)?n1(z,We,z.expression):GBi(z)?i1(z,We,z.isTypeOnly,z.exportClause,z.moduleSpecifier,z.attributes):Zo.assertNever(z)}function nN(z,ye){return AEt(z)?ga(z,ye,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):dEt(z)?Ft(z,ye,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):HNr(z)?Qi(z,ye,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):YNr(z)?ma(z,ye,z.name,z.parameters,z.type,z.body):pEt(z)?Ei(z,ye,z.name,z.parameters,z.body):QNr(z)?Jm(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):fEt(z)?e1(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):Zo.assertNever(z)}function l3(z,ye){switch(z.kind){case 177:return ma(z,z.modifiers,ye,z.parameters,z.type,z.body);case 178:return Ei(z,z.modifiers,ye,z.parameters,z.body);case 174:return Qi(z,z.modifiers,z.asteriskToken,ye,z.questionToken,z.typeParameters,z.parameters,z.type,z.body);case 173:return Rn(z,z.modifiers,ye,z.questionToken,z.typeParameters,z.parameters,z.type);case 172:return Ft(z,z.modifiers,ye,z.questionToken??z.exclamationToken,z.type,z.initializer);case 171:return Sc(z,z.modifiers,ye,z.questionToken,z.type);case 303:return Rb(z,ye,z.initializer)}}function mA(z){return z?ae(z):void 0}function vI(z){return typeof z=="string"?Je(z):z}function $d(z){return typeof z=="string"?Se(z):typeof z=="number"?ue(z):typeof z=="boolean"?z?qr():_n():z}function RA(z){return z&&n().parenthesizeExpressionForDisallowedComma(z)}function iN(z){return typeof z=="number"?Xt(z):z}function cy(z){return z&&j$a(z)?iL(r(fm(),z),z):z}function iS(z){return typeof z=="string"||z&&!TBi(z)?Df(z,void 0,void 0,void 0):z}function bo(z,ye){return z!==ye&&(r(z,ye),iL(z,ye)),z}}function zbt(e){switch(e){case 344:return"type";case 342:return"returns";case 343:return"this";case 340:return"enum";case 330:return"author";case 332:return"class";case 333:return"public";case 334:return"private";case 335:return"protected";case 336:return"readonly";case 337:return"override";case 345:return"template";case 346:return"typedef";case 341:return"param";case 348:return"prop";case 338:return"callback";case 339:return"overload";case 328:return"augments";case 329:return"implements";case 351:return"import";default:return Zo.fail(`Unsupported kind: ${Zo.formatSyntaxKind(e)}`)}}var SV,pSi={};function e$a(e,t){switch(SV||(SV=dDr(99,!1,0)),e){case 15:SV.setText("`"+t+"`");break;case 16:SV.setText("`"+t+"${");break;case 17:SV.setText("}"+t+"${");break;case 18:SV.setText("}"+t+"`");break}let r=SV.scan();if(r===20&&(r=SV.reScanTemplateToken(!1)),SV.isUnterminated())return SV.setText(void 0),pSi;let n;switch(r){case 15:case 16:case 17:case 18:n=SV.getTokenValue();break}return n===void 0||SV.scan()!==1?(SV.setText(void 0),pSi):(SV.setText(void 0),n)}function EP(e){return e&&r_(e)?PNe(e):$o(e)}function PNe(e){return $o(e)&-67108865}function t$a(e,t){return t|e.transformFlags&134234112}function $o(e){if(!e)return 0;let t=e.transformFlags&~r$a(e.kind);return F7a(e)&&Kvi(e.name)?t$a(e.name,t):t}function ed(e){return e?e.transformFlags:0}function fSi(e){let t=0;for(let r of e)t|=$o(r);e.transformFlags=t}function r$a(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169:return-2147483648;case 219:return-2072174592;case 218:case 262:return-1937940480;case 261:return-2146893824;case 263:case 231:return-2147344384;case 176:return-1937948672;case 172:return-2013249536;case 174:case 177:case 178:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 168:case 171:case 173:case 179:case 180:case 181:case 264:case 265:return-2;case 210:return-2147278848;case 299:return-2147418112;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 355:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var yJe=zqa();function bJe(e){return e.flags|=16,e}var n$a={createBaseSourceFileNode:e=>bJe(yJe.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>bJe(yJe.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>bJe(yJe.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>bJe(yJe.createBaseTokenNode(e)),createBaseNode:e=>bJe(yJe.createBaseNode(e))},ATu=wDr(4,n$a);function i$a(e,t){if(e.original!==t&&(e.original=t,t)){let r=t.emitNode;r&&(e.emitNode=s$a(r,e.emitNode))}return e}function s$a(e,t){let{flags:r,internalFlags:n,leadingComments:a,trailingComments:o,commentRange:l,sourceMapRange:A,tokenSourceMapRanges:f,constantValue:I,helpers:C,startsOnNewLine:b,snippetElement:E,classThis:N,assignedName:B}=e;if(t||(t={}),r&&(t.flags=r),n&&(t.internalFlags=n&-9),a&&(t.leadingComments=wV(a.slice(),t.leadingComments)),o&&(t.trailingComments=wV(o.slice(),t.trailingComments)),l&&(t.commentRange=l),A&&(t.sourceMapRange=A),f&&(t.tokenSourceMapRanges=o$a(f,t.tokenSourceMapRanges)),I!==void 0&&(t.constantValue=I),C)for(let F of C)t.helpers=vja(t.helpers,F);return b!==void 0&&(t.startsOnNewLine=b),E!==void 0&&(t.snippetElement=E),N&&(t.classThis=N),B&&(t.assignedName=B),t}function o$a(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}function $Ne(e){return e.kind===9}function a$a(e){return e.kind===10}function CEt(e){return e.kind===11}function c$a(e){return e.kind===15}function l$a(e){return e.kind===28}function ISi(e){return e.kind===54}function hSi(e){return e.kind===58}function r_(e){return e.kind===80}function cCe(e){return e.kind===81}function u$a(e){return e.kind===95}function qbt(e){return e.kind===134}function BNr(e){return e.kind===108}function g$a(e){return e.kind===102}function A$a(e){return e.kind===166}function IBi(e){return e.kind===167}function hBi(e){return e.kind===168}function AEt(e){return e.kind===169}function TDr(e){return e.kind===170}function d$a(e){return e.kind===171}function dEt(e){return e.kind===172}function p$a(e){return e.kind===173}function HNr(e){return e.kind===174}function mBi(e){return e.kind===176}function YNr(e){return e.kind===177}function pEt(e){return e.kind===178}function f$a(e){return e.kind===179}function I$a(e){return e.kind===180}function CBi(e){return e.kind===181}function h$a(e){return e.kind===182}function _Bi(e){return e.kind===183}function yBi(e){return e.kind===184}function bBi(e){return e.kind===185}function m$a(e){return e.kind===186}function C$a(e){return e.kind===187}function _$a(e){return e.kind===188}function y$a(e){return e.kind===189}function b$a(e){return e.kind===202}function E$a(e){return e.kind===190}function S$a(e){return e.kind===191}function v$a(e){return e.kind===192}function B$a(e){return e.kind===193}function w$a(e){return e.kind===194}function T$a(e){return e.kind===195}function R$a(e){return e.kind===196}function N$a(e){return e.kind===197}function D$a(e){return e.kind===198}function k$a(e){return e.kind===199}function x$a(e){return e.kind===200}function G$a(e){return e.kind===201}function F$a(e){return e.kind===205}function Z$a(e){return e.kind===208}function L$a(e){return e.kind===209}function EBi(e){return e.kind===210}function Pce(e){return e.kind===211}function YJe(e){return e.kind===212}function SBi(e){return e.kind===213}function V$a(e){return e.kind===215}function RDr(e){return e.kind===217}function vBi(e){return e.kind===218}function BBi(e){return e.kind===219}function W$a(e){return e.kind===222}function O$a(e){return e.kind===224}function qNe(e){return e.kind===226}function P$a(e){return e.kind===230}function QNr(e){return e.kind===231}function M$a(e){return e.kind===232}function H$a(e){return e.kind===233}function rEt(e){return e.kind===235}function Y$a(e){return e.kind===236}function Q$a(e){return e.kind===356}function _Et(e){return e.kind===243}function wBi(e){return e.kind===244}function X$a(e){return e.kind===256}function TBi(e){return e.kind===260}function J$a(e){return e.kind===261}function RBi(e){return e.kind===262}function fEt(e){return e.kind===263}function NDr(e){return e.kind===264}function NBi(e){return e.kind===265}function U$a(e){return e.kind===266}function PJe(e){return e.kind===267}function DBi(e){return e.kind===271}function kBi(e){return e.kind===272}function xBi(e){return e.kind===277}function GBi(e){return e.kind===278}function K$a(e){return e.kind===279}function j$a(e){return e.kind===353}function FBi(e){return e.kind===283}function mSi(e){return e.kind===286}function z$a(e){return e.kind===289}function ZBi(e){return e.kind===295}function q$a(e){return e.kind===297}function $$a(e){return e.kind===303}function eec(e){return e.kind===307}function tec(e){return e.kind===309}function rec(e){return e.kind===314}function nec(e){return e.kind===317}function LBi(e){return e.kind===320}function iec(e){return e.kind===322}function VBi(e){return e.kind===323}function sec(e){return e.kind===328}function oec(e){return e.kind===333}function aec(e){return e.kind===334}function cec(e){return e.kind===335}function lec(e){return e.kind===336}function uec(e){return e.kind===337}function gec(e){return e.kind===339}function Aec(e){return e.kind===331}function CSi(e){return e.kind===341}function dec(e){return e.kind===342}function DDr(e){return e.kind===344}function pec(e){return e.kind===345}function fec(e){return e.kind===329}function Iec(e){return e.kind===350}var sCe=new WeakMap;function WBi(e,t){var r;let n=e.kind;return hDr(n)?n===352?e._children:(r=sCe.get(t))==null?void 0:r.get(e):L2}function hec(e,t,r){e.kind===352&&Zo.fail("Should not need to re-set the children of a SyntaxList.");let n=sCe.get(t);return n===void 0&&(n=new WeakMap,sCe.set(t,n)),n.set(e,r),r}function _Si(e,t){var r;e.kind===352&&Zo.fail("Did not expect to unset the children of a SyntaxList."),(r=sCe.get(t))==null||r.delete(e)}function mec(e,t){let r=sCe.get(e);r!==void 0&&(sCe.delete(e),sCe.set(t,r))}function ySi(e){return(jNe(e)&32768)!==0}function Cec(e){return CEt(e.expression)&&e.expression.text==="use strict"}function _ec(e){for(let t of e)if(tEt(t)){if(Cec(t))return t}else break}function yec(e){return RDr(e)&&lCe(e)&&!!z7a(e)}function OBi(e,t=31){switch(e.kind){case 217:return t&-2147483648&&yec(e)?!1:(t&1)!==0;case 216:case 234:case 238:return(t&2)!==0;case 233:return(t&16)!==0;case 235:return(t&4)!==0;case 355:return(t&8)!==0}return!1}function kDr(e,t=31){for(;OBi(e,t);)e=e.expression;return e}function bec(e){return setStartsOnNewLine(e,!0)}function DJe(e){if(fza(e))return e.name;if(gza(e)){switch(e.kind){case 303:return DJe(e.initializer);case 304:return e.name;case 305:return DJe(e.expression)}return}return gEt(e,!0)?DJe(e.left):P$a(e)?DJe(e.expression):e}function Eec(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function bSi(e){if(e){let t=e;for(;;){if(r_(t)||!t.body)return r_(t)?t:t.name;t=t.body}}}var ESi;(e=>{function t(C,b,E,N,B,F,Q){let J=b>0?B[b-1]:void 0;return Zo.assertEqual(E[b],t),B[b]=C.onEnter(N[b],J,Q),E[b]=A(C,t),b}e.enter=t;function r(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],r),Zo.assertIsDefined(C.onLeft),E[b]=A(C,r);let J=C.onLeft(N[b].left,B[b],N[b]);return J?(I(b,N,J),f(b,E,N,B,J)):b}e.left=r;function n(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],n),Zo.assertIsDefined(C.onOperator),E[b]=A(C,n),C.onOperator(N[b].operatorToken,B[b],N[b]),b}e.operator=n;function a(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],a),Zo.assertIsDefined(C.onRight),E[b]=A(C,a);let J=C.onRight(N[b].right,B[b],N[b]);return J?(I(b,N,J),f(b,E,N,B,J)):b}e.right=a;function o(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],o),E[b]=A(C,o);let J=C.onExit(N[b],B[b]);if(b>0){if(b--,C.foldState){let ae=E[b]===o?"right":"left";B[b]=C.foldState(B[b],J,ae)}}else F.value=J;return b}e.exit=o;function l(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],l),b}e.done=l;function A(C,b){switch(b){case t:if(C.onLeft)return r;case r:if(C.onOperator)return n;case n:if(C.onRight)return a;case a:return o;case o:return l;case l:return l;default:Zo.fail("Invalid state")}}e.nextState=A;function f(C,b,E,N,B){return C++,b[C]=t,E[C]=B,N[C]=void 0,C}function I(C,b,E){if(Zo.shouldAssert(2))for(;C>=0;)Zo.assert(b[C]!==E,"Circular traversal detected."),C--}})(ESi||(ESi={}));function SSi(e,t){return typeof e=="object"?XNr(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function Sec(e,t){return typeof e=="string"?e:vec(e,Zo.checkDefined(t))}function vec(e,t){return Uvi(e)?t(e).slice(1):XNe(e)?t(e):cCe(e)?e.escapedText.slice(1):TV(e)}function XNr(e,t,r,n,a){return t=SSi(t,a),n=SSi(n,a),r=Sec(r,a),`${e?"#":""}${t}${r}${n}`}function PBi(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of Eec(e)){let r=DJe(t);if(r&&pza(r)&&(r.transformFlags&65536||r.transformFlags&128&&PBi(r)))return!0}return!1}function iL(e,t){return t?Vce(e,t.pos,t.end):e}function xDr(e){let t=e.kind;return t===168||t===169||t===171||t===172||t===173||t===174||t===176||t===177||t===178||t===181||t===185||t===218||t===219||t===231||t===243||t===262||t===263||t===264||t===265||t===266||t===267||t===271||t===272||t===277||t===278}function Bec(e){let t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var vSi,BSi,wSi,TSi,RSi,wec={createBaseSourceFileNode:e=>new(RSi||(RSi=Z2.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(wSi||(wSi=Z2.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(TSi||(TSi=Z2.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(BSi||(BSi=Z2.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(vSi||(vSi=Z2.getNodeConstructor()))(e,-1,-1)},dTu=wDr(1,wec);function wi(e,t){return t&&e(t)}function ol(e,t,r){if(r){if(t)return t(r);for(let n of r){let a=e(n);if(a)return a}}}function Tec(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function Rec(e){return BP(e.statements,Nec)||Dec(e)}function Nec(e){return xDr(e)&&kec(e,95)||DBi(e)&&FBi(e.moduleReference)||kBi(e)||xBi(e)||GBi(e)?e:void 0}function Dec(e){return e.flags&8388608?MBi(e):void 0}function MBi(e){return xec(e)?e:Jk(e,MBi)}function kec(e,t){return AD(e.modifiers,r=>r.kind===t)}function xec(e){return Y$a(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}var Gec={166:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},168:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.constraint)||wi(t,e.default)||wi(t,e.expression)},304:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.equalsToken)||wi(t,e.objectAssignmentInitializer)},305:function(e,t,r){return wi(t,e.expression)},169:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},172:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},171:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},303:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.initializer)},260:function(e,t,r){return wi(t,e.name)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},208:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.propertyName)||wi(t,e.name)||wi(t,e.initializer)},181:function(e,t,r){return ol(t,r,e.modifiers)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)},185:function(e,t,r){return ol(t,r,e.modifiers)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)},184:function(e,t,r){return ol(t,r,e.modifiers)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)},179:NSi,180:NSi,174:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},173:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)},176:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},177:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},178:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},262:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},218:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},219:function(e,t,r){return ol(t,r,e.modifiers)||ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)||wi(t,e.equalsGreaterThanToken)||wi(t,e.body)},175:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.body)},183:function(e,t,r){return wi(t,e.typeName)||ol(t,r,e.typeArguments)},182:function(e,t,r){return wi(t,e.assertsModifier)||wi(t,e.parameterName)||wi(t,e.type)},186:function(e,t,r){return wi(t,e.exprName)||ol(t,r,e.typeArguments)},187:function(e,t,r){return ol(t,r,e.members)},188:function(e,t,r){return wi(t,e.elementType)},189:function(e,t,r){return ol(t,r,e.elements)},192:DSi,193:DSi,194:function(e,t,r){return wi(t,e.checkType)||wi(t,e.extendsType)||wi(t,e.trueType)||wi(t,e.falseType)},195:function(e,t,r){return wi(t,e.typeParameter)},205:function(e,t,r){return wi(t,e.argument)||wi(t,e.attributes)||wi(t,e.qualifier)||ol(t,r,e.typeArguments)},302:function(e,t,r){return wi(t,e.assertClause)},196:kSi,198:kSi,199:function(e,t,r){return wi(t,e.objectType)||wi(t,e.indexType)},200:function(e,t,r){return wi(t,e.readonlyToken)||wi(t,e.typeParameter)||wi(t,e.nameType)||wi(t,e.questionToken)||wi(t,e.type)||ol(t,r,e.members)},201:function(e,t,r){return wi(t,e.literal)},202:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)},206:xSi,207:xSi,209:function(e,t,r){return ol(t,r,e.elements)},210:function(e,t,r){return ol(t,r,e.properties)},211:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.name)},212:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.argumentExpression)},213:GSi,214:GSi,215:function(e,t,r){return wi(t,e.tag)||wi(t,e.questionDotToken)||ol(t,r,e.typeArguments)||wi(t,e.template)},216:function(e,t,r){return wi(t,e.type)||wi(t,e.expression)},217:function(e,t,r){return wi(t,e.expression)},220:function(e,t,r){return wi(t,e.expression)},221:function(e,t,r){return wi(t,e.expression)},222:function(e,t,r){return wi(t,e.expression)},224:function(e,t,r){return wi(t,e.operand)},229:function(e,t,r){return wi(t,e.asteriskToken)||wi(t,e.expression)},223:function(e,t,r){return wi(t,e.expression)},225:function(e,t,r){return wi(t,e.operand)},226:function(e,t,r){return wi(t,e.left)||wi(t,e.operatorToken)||wi(t,e.right)},234:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},235:function(e,t,r){return wi(t,e.expression)},238:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},236:function(e,t,r){return wi(t,e.name)},227:function(e,t,r){return wi(t,e.condition)||wi(t,e.questionToken)||wi(t,e.whenTrue)||wi(t,e.colonToken)||wi(t,e.whenFalse)},230:function(e,t,r){return wi(t,e.expression)},241:FSi,268:FSi,307:function(e,t,r){return ol(t,r,e.statements)||wi(t,e.endOfFileToken)},243:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.declarationList)},261:function(e,t,r){return ol(t,r,e.declarations)},244:function(e,t,r){return wi(t,e.expression)},245:function(e,t,r){return wi(t,e.expression)||wi(t,e.thenStatement)||wi(t,e.elseStatement)},246:function(e,t,r){return wi(t,e.statement)||wi(t,e.expression)},247:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},248:function(e,t,r){return wi(t,e.initializer)||wi(t,e.condition)||wi(t,e.incrementor)||wi(t,e.statement)},249:function(e,t,r){return wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},250:function(e,t,r){return wi(t,e.awaitModifier)||wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},251:ZSi,252:ZSi,253:function(e,t,r){return wi(t,e.expression)},254:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},255:function(e,t,r){return wi(t,e.expression)||wi(t,e.caseBlock)},269:function(e,t,r){return ol(t,r,e.clauses)},296:function(e,t,r){return wi(t,e.expression)||ol(t,r,e.statements)},297:function(e,t,r){return ol(t,r,e.statements)},256:function(e,t,r){return wi(t,e.label)||wi(t,e.statement)},257:function(e,t,r){return wi(t,e.expression)},258:function(e,t,r){return wi(t,e.tryBlock)||wi(t,e.catchClause)||wi(t,e.finallyBlock)},299:function(e,t,r){return wi(t,e.variableDeclaration)||wi(t,e.block)},170:function(e,t,r){return wi(t,e.expression)},263:LSi,231:LSi,264:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||ol(t,r,e.typeParameters)||ol(t,r,e.heritageClauses)||ol(t,r,e.members)},265:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||ol(t,r,e.typeParameters)||wi(t,e.type)},266:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||ol(t,r,e.members)},306:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},267:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.body)},271:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.moduleReference)},272:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},273:function(e,t,r){return wi(t,e.name)||wi(t,e.namedBindings)},300:function(e,t,r){return ol(t,r,e.elements)},301:function(e,t,r){return wi(t,e.name)||wi(t,e.value)},270:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)},274:function(e,t,r){return wi(t,e.name)},280:function(e,t,r){return wi(t,e.name)},275:VSi,279:VSi,278:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.exportClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},276:WSi,281:WSi,277:function(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.expression)},228:function(e,t,r){return wi(t,e.head)||ol(t,r,e.templateSpans)},239:function(e,t,r){return wi(t,e.expression)||wi(t,e.literal)},203:function(e,t,r){return wi(t,e.head)||ol(t,r,e.templateSpans)},204:function(e,t,r){return wi(t,e.type)||wi(t,e.literal)},167:function(e,t,r){return wi(t,e.expression)},298:function(e,t,r){return ol(t,r,e.types)},233:function(e,t,r){return wi(t,e.expression)||ol(t,r,e.typeArguments)},283:function(e,t,r){return wi(t,e.expression)},282:function(e,t,r){return ol(t,r,e.modifiers)},356:function(e,t,r){return ol(t,r,e.elements)},284:function(e,t,r){return wi(t,e.openingElement)||ol(t,r,e.children)||wi(t,e.closingElement)},288:function(e,t,r){return wi(t,e.openingFragment)||ol(t,r,e.children)||wi(t,e.closingFragment)},285:OSi,286:OSi,292:function(e,t,r){return ol(t,r,e.properties)},291:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},293:function(e,t,r){return wi(t,e.expression)},294:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.expression)},287:function(e,t,r){return wi(t,e.tagName)},295:function(e,t,r){return wi(t,e.namespace)||wi(t,e.name)},190:Kme,191:Kme,309:Kme,315:Kme,314:Kme,316:Kme,318:Kme,317:function(e,t,r){return ol(t,r,e.parameters)||wi(t,e.type)},320:function(e,t,r){return(typeof e.comment=="string"?void 0:ol(t,r,e.comment))||ol(t,r,e.tags)},347:function(e,t,r){return wi(t,e.tagName)||wi(t,e.name)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))},310:function(e,t,r){return wi(t,e.name)},311:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},341:PSi,348:PSi,330:function(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))},329:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))},328:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))},345:function(e,t,r){return wi(t,e.tagName)||wi(t,e.constraint)||ol(t,r,e.typeParameters)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))},346:function(e,t,r){return wi(t,e.tagName)||(e.typeExpression&&e.typeExpression.kind===309?wi(t,e.typeExpression)||wi(t,e.fullName)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment)):wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment)))},338:function(e,t,r){return wi(t,e.tagName)||wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))},342:jme,344:jme,343:jme,340:jme,350:jme,349:jme,339:jme,323:function(e,t,r){return BP(e.typeParameters,t)||BP(e.parameters,t)||wi(t,e.type)},324:wNr,325:wNr,326:wNr,322:function(e,t,r){return BP(e.jsDocPropertyTags,t)},327:Dce,332:Dce,333:Dce,334:Dce,335:Dce,336:Dce,331:Dce,337:Dce,351:Fec,355:Zec};function NSi(e,t,r){return ol(t,r,e.typeParameters)||ol(t,r,e.parameters)||wi(t,e.type)}function DSi(e,t,r){return ol(t,r,e.types)}function kSi(e,t,r){return wi(t,e.type)}function xSi(e,t,r){return ol(t,r,e.elements)}function GSi(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||ol(t,r,e.typeArguments)||ol(t,r,e.arguments)}function FSi(e,t,r){return ol(t,r,e.statements)}function ZSi(e,t,r){return wi(t,e.label)}function LSi(e,t,r){return ol(t,r,e.modifiers)||wi(t,e.name)||ol(t,r,e.typeParameters)||ol(t,r,e.heritageClauses)||ol(t,r,e.members)}function VSi(e,t,r){return ol(t,r,e.elements)}function WSi(e,t,r){return wi(t,e.propertyName)||wi(t,e.name)}function OSi(e,t,r){return wi(t,e.tagName)||ol(t,r,e.typeArguments)||wi(t,e.attributes)}function Kme(e,t,r){return wi(t,e.type)}function PSi(e,t,r){return wi(t,e.tagName)||(e.isNameFirst?wi(t,e.name)||wi(t,e.typeExpression):wi(t,e.typeExpression)||wi(t,e.name))||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))}function jme(e,t,r){return wi(t,e.tagName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))}function wNr(e,t,r){return wi(t,e.name)}function Dce(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))}function Fec(e,t,r){return wi(t,e.tagName)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)||(typeof e.comment=="string"?void 0:ol(t,r,e.comment))}function Zec(e,t,r){return wi(t,e.expression)}function Jk(e,t,r){if(e===void 0||e.kind<=165)return;let n=Gec[e.kind];return n===void 0?void 0:n(e,t,r)}function MSi(e,t,r){let n=HSi(e),a=[];for(;a.length=0;--A)n.push(o[A]),a.push(l)}else{let A=t(o,l);if(A){if(A==="skip")continue;return A}if(o.kind>=166)for(let f of HSi(o))n.push(f),a.push(o)}}}function HSi(e){let t=[];return Jk(e,r,r),t;function r(n){t.unshift(n)}}function HBi(e){e.externalModuleIndicator=Rec(e)}function Lec(e,t,r,n=!1,a){var o,l;(o=$bt)==null||o.push($bt.Phase.Parse,"createSourceFile",{path:e},!0),Q2i("beforeParse");let A,{languageVersion:f,setExternalModuleIndicator:I,impliedNodeFormat:C,jsDocParsingMode:b}=typeof r=="object"?r:{languageVersion:r};if(f===100)A=oCe.parseSourceFile(e,t,f,void 0,n,6,zNe,b);else{let E=C===void 0?I:N=>(N.impliedNodeFormat=C,(I||HBi)(N));A=oCe.parseSourceFile(e,t,f,void 0,n,a,E,b)}return Q2i("afterParse"),Xja("Parse","beforeParse","afterParse"),(l=$bt)==null||l.pop(),A}function Vec(e){return e.externalModuleIndicator!==void 0}function Wec(e,t,r,n=!1){let a=IEt.updateSourceFile(e,t,r,n);return a.flags|=e.flags&12582912,a}var oCe;(e=>{var t=dDr(99,!0),r=40960,n,a,o,l,A;function f(rt){return _n++,rt}var I={createBaseSourceFileNode:rt=>f(new A(rt,0,0)),createBaseIdentifierNode:rt=>f(new o(rt,0,0)),createBasePrivateIdentifierNode:rt=>f(new l(rt,0,0)),createBaseTokenNode:rt=>f(new a(rt,0,0)),createBaseNode:rt=>f(new n(rt,0,0))},C=wDr(11,I),{createNodeArray:b,createNumericLiteral:E,createStringLiteral:N,createLiteralLikeNode:B,createIdentifier:F,createPrivateIdentifier:Q,createToken:J,createArrayLiteralExpression:ae,createObjectLiteralExpression:ne,createPropertyAccessExpression:ce,createPropertyAccessChain:fe,createElementAccessExpression:ue,createElementAccessChain:de,createCallExpression:be,createCallChain:Se,createNewExpression:De,createParenthesizedExpression:k,createBlock:tt,createVariableStatement:ze,createExpressionStatement:Le,createIfStatement:Je,createWhileStatement:ft,createForStatement:lt,createForOfStatement:Ot,createVariableDeclaration:Er,createVariableDeclarationList:Sr}=C,jt,Bt,Nt,Fr,$t,Xt,lr,cr,Ar,qr,_n,ke,zt,Fn,Nn,Hi,Ao=!0,Vr=!1;function xi(rt,Jt,kr,Xr,ui=!1,Is,Hs,Rs=0){var ja;if(Is=Vqa(rt,Is),Is===6){let nl=ga(rt,Jt,kr,Xr,ui);return convertToJson(nl,(ja=nl.statements[0])==null?void 0:ja.expression,nl.parseDiagnostics,!1,void 0),nl.referencedFiles=L2,nl.typeReferenceDirectives=L2,nl.libReferenceDirectives=L2,nl.amdDependencies=L2,nl.hasNoDefaultLib=!1,nl.pragmas=mja,nl}Ya(rt,Jt,kr,Xr,Is,Rs);let Io=al(kr,ui,Is,Hs||HBi,Rs);return Gc(),Io}e.parseSourceFile=xi;function no(rt,Jt){Ya("",rt,Jt,void 0,1,0),Vs();let kr=se(!0),Xr=Pt()===1&&!lr.length;return Gc(),Xr?kr:void 0}e.parseIsolatedEntityName=no;function ga(rt,Jt,kr=2,Xr,ui=!1){Ya(rt,Jt,kr,Xr,6,0),Bt=Hi,Vs();let Is=Ri(),Hs,Rs;if(Pt()===1)Hs=vr([],Is,Is),Rs=VA();else{let nl;for(;Pt()!==1;){let Mg;switch(Pt()){case 23:Mg=cg();break;case 112:case 97:case 106:Mg=VA();break;case 41:so(()=>Vs()===9&&Vs()!==59)?Mg=ny():Mg=a1();break;case 9:case 11:if(so(()=>Vs()!==59)){Mg=ra();break}default:Mg=a1();break}nl&&Hee(nl)?nl.push(Mg):nl?nl=[nl,Mg]:(nl=Mg,Pt()!==1&&Da(ts.Unexpected_token))}let kd=Hee(nl)?Zt(ae(nl),Is):Zo.checkDefined(nl),rd=Le(kd);Zt(rd,Is),Hs=vr([rd],Is),Rs=rl(1,ts.Unexpected_token)}let ja=zr(rt,2,6,!1,Hs,Rs,Bt,zNe);ui&&Ft(ja),ja.nodeCount=_n,ja.identifierCount=zt,ja.identifiers=ke,ja.parseDiagnostics=Ume(lr,ja),cr&&(ja.jsDocDiagnostics=Ume(cr,ja));let Io=ja;return Gc(),Io}e.parseJsonText=ga;function Ya(rt,Jt,kr,Xr,ui,Is){switch(n=Z2.getNodeConstructor(),a=Z2.getTokenConstructor(),o=Z2.getIdentifierConstructor(),l=Z2.getPrivateIdentifierConstructor(),A=Z2.getSourceFileConstructor(),jt=s7a(rt),Nt=Jt,Fr=kr,Ar=Xr,$t=ui,Xt=gSi(ui),lr=[],Fn=0,ke=new Map,zt=0,_n=0,Bt=0,Ao=!0,$t){case 1:case 2:Hi=524288;break;case 6:Hi=134742016;break;default:Hi=0;break}Vr=!1,t.setText(Nt),t.setOnError(Kh),t.setScriptTarget(Fr),t.setLanguageVariant(Xt),t.setScriptKind($t),t.setJSDocParsingMode(Is)}function Gc(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),Nt=void 0,Fr=void 0,Ar=void 0,$t=void 0,Xt=void 0,Bt=0,lr=void 0,cr=void 0,Fn=0,ke=void 0,Nn=void 0,Ao=!0}function al(rt,Jt,kr,Xr,ui){let Is=Mec(jt);Is&&(Hi|=33554432),Bt=Hi,Vs();let Hs=qd(0,Im);Zo.assert(Pt()===1);let Rs=Do(),ja=Hr(VA(),Rs),Io=zr(jt,rt,kr,Is,Hs,ja,Bt,Xr);return Qec(Io,Nt),Xec(Io,nl),Io.commentDirectives=t.getCommentDirectives(),Io.nodeCount=_n,Io.identifierCount=zt,Io.identifiers=ke,Io.parseDiagnostics=Ume(lr,Io),Io.jsDocParsingMode=ui,cr&&(Io.jsDocDiagnostics=Ume(cr,Io)),Jt&&Ft(Io),Io;function nl(kd,rd,Mg){lr.push(FNe(jt,Nt,kd,rd,Mg))}}let Sc=!1;function Hr(rt,Jt){if(!Jt)return rt;Zo.assert(!rt.jsDoc);let kr=bja(Gza(rt,Nt),Xr=>CY.parseJSDocComment(rt,Xr.pos,Xr.end-Xr.pos));return kr.length&&(rt.jsDoc=kr),Sc&&(Sc=!1,rt.flags|=536870912),rt}function Or(rt){let Jt=Ar,kr=IEt.createSyntaxCursor(rt);Ar={currentNode:nl};let Xr=[],ui=lr;lr=[];let Is=0,Hs=ja(rt.statements,0);for(;Hs!==-1;){let kd=rt.statements[Is],rd=rt.statements[Hs];wV(Xr,rt.statements,Is,Hs),Is=Io(rt.statements,Hs);let Mg=hNr(ui,u1=>u1.start>=kd.pos),Gh=Mg>=0?hNr(ui,u1=>u1.start>=rd.pos,Mg):-1;Mg>=0&&wV(lr,ui,Mg,Gh>=0?Gh:void 0),cA(()=>{let u1=Hi;for(Hi|=65536,t.resetTokenState(rd.pos),Vs();Pt()!==1;){let Db=t.getTokenFullStart(),nS=hh(0,Im);if(Xr.push(nS),Db===t.getTokenFullStart()&&Vs(),Is>=0){let _E=rt.statements[Is];if(nS.end===_E.pos)break;nS.end>_E.pos&&(Is=Io(rt.statements,Is+1))}}Hi=u1},2),Hs=Is>=0?ja(rt.statements,Is):-1}if(Is>=0){let kd=rt.statements[Is];wV(Xr,rt.statements,Is);let rd=hNr(ui,Mg=>Mg.start>=kd.pos);rd>=0&&wV(lr,ui,rd)}return Ar=Jt,C.updateSourceFile(rt,iL(b(Xr),rt.statements));function Rs(kd){return!(kd.flags&65536)&&!!(kd.transformFlags&67108864)}function ja(kd,rd){for(let Mg=rd;Mg118}function Xs(){return Pt()===80?!0:Pt()===127&&Ql()||Pt()===135&&Ju()?!1:Pt()>118}function ws(rt,Jt,kr=!0){return Pt()===rt?(kr&&Vs(),!0):(Jt?Da(Jt):Da(ts._0_expected,vy(rt)),!1)}let Gs=Object.keys(uDr).filter(rt=>rt.length>2);function Ma(rt){if(V$a(rt)){yg(w6(Nt,rt.template.pos),rt.template.end,ts.Module_declaration_names_may_only_use_or_quoted_strings);return}let Jt=r_(rt)?TV(rt):void 0;if(!Jt||!w7a(Jt,Fr)){Da(ts._0_expected,vy(27));return}let kr=w6(Nt,rt.pos);switch(Jt){case"const":case"let":case"var":yg(kr,rt.end,ts.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Dc(ts.Interface_name_cannot_be_0,ts.Interface_must_be_given_a_name,19);return;case"is":yg(kr,t.getTokenStart(),ts.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Dc(ts.Namespace_name_cannot_be_0,ts.Namespace_must_be_given_a_name,19);return;case"type":Dc(ts.Type_alias_name_cannot_be_0,ts.Type_alias_must_be_given_a_name,64);return}let Xr=wJe(Jt,Gs,ME)??As(Jt);if(Xr){yg(kr,rt.end,ts.Unknown_keyword_or_identifier_Did_you_mean_0,Xr);return}Pt()!==0&&yg(kr,rt.end,ts.Unexpected_keyword_or_identifier)}function Dc(rt,Jt,kr){Pt()===kr?Da(Jt):Da(rt,t.getTokenValue())}function As(rt){for(let Jt of Gs)if(rt.length>Jt.length+2&&sEt(rt,Jt))return`${Jt} ${rt.slice(Jt.length)}`}function Nf(rt,Jt,kr){if(Pt()===60&&!t.hasPrecedingLineBreak()){Da(ts.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Pt()===21){Da(ts.Cannot_start_a_function_call_in_a_type_annotation),Vs();return}if(Jt&&!bg()){kr?Da(ts._0_expected,vy(27)):Da(ts.Expected_for_property_initializer);return}if(!Yp()){if(kr){Da(ts._0_expected,vy(27));return}Ma(rt)}}function Am(rt){return Pt()===rt?(Uu(),!0):(Zo.assert(yNr(rt)),Da(ts._0_expected,vy(rt)),!1)}function Zl(rt,Jt,kr,Xr){if(Pt()===Jt){Vs();return}let ui=Da(ts._0_expected,vy(Jt));kr&&ui&&Kbt(ui,FNe(jt,Nt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,vy(rt),vy(Jt)))}function rc(rt){return Pt()===rt?(Vs(),!0):!1}function ad(rt){if(Pt()===rt)return VA()}function Qm(rt){if(Pt()===rt)return bl()}function rl(rt,Jt,kr){return ad(rt)||yn(rt,!1,Jt||ts._0_expected,kr||vy(rt))}function LA(rt){return Qm(rt)||(Zo.assert(yNr(rt)),yn(rt,!1,ts._0_expected,vy(rt)))}function VA(){let rt=Ri(),Jt=Pt();return Vs(),Zt(J(Jt),rt)}function bl(){let rt=Ri(),Jt=Pt();return Uu(),Zt(J(Jt),rt)}function bg(){return Pt()===27?!0:Pt()===20||Pt()===1||t.hasPrecedingLineBreak()}function Yp(){return bg()?(Pt()===27&&Vs(),!0):!1}function YA(){return Yp()||ws(27)}function vr(rt,Jt,kr,Xr){let ui=b(rt,Xr);return Vce(ui,Jt,kr??t.getTokenFullStart()),ui}function Zt(rt,Jt,kr){return Vce(rt,Jt,kr??t.getTokenFullStart()),Hi&&(rt.flags|=Hi),Vr&&(Vr=!1,rt.flags|=262144),rt}function yn(rt,Jt,kr,...Xr){Jt?fu(t.getTokenFullStart(),0,kr,...Xr):kr&&Da(kr,...Xr);let ui=Ri(),Is=rt===80?F("",void 0):rSi(rt)?C.createTemplateLiteralLikeNode(rt,"","",void 0):rt===9?E("",void 0):rt===11?N("",void 0):rt===282?C.createMissingDeclaration():J(rt);return Zt(Is,ui)}function ls(rt){let Jt=ke.get(rt);return Jt===void 0&&ke.set(rt,Jt=rt),Jt}function oa(rt,Jt,kr){if(rt){zt++;let Rs=t.hasPrecedingJSDocLeadingAsterisks()?t.getTokenStart():Ri(),ja=Pt(),Io=ls(t.getTokenValue()),nl=t.hasExtendedUnicodeEscape();return Hu(),Zt(F(Io,ja,nl),Rs)}if(Pt()===81)return Da(kr||ts.Private_identifiers_are_not_allowed_outside_class_bodies),oa(!0);if(Pt()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return oa(!0);zt++;let Xr=Pt()===1,ui=t.isReservedWord(),Is=t.getTokenText(),Hs=ui?ts.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ts.Identifier_expected;return yn(80,Xr,Jt||Hs,Is)}function Fs(rt){return oa(cc(),void 0,rt)}function Oa(rt,Jt){return oa(Xs(),rt,Jt)}function Ca(rt){return oa(J1(Pt()),rt)}function gd(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&Da(ts.Unicode_escape_sequence_cannot_appear_here),oa(J1(Pt()))}function Dp(){return J1(Pt())||Pt()===11||Pt()===9||Pt()===10}function sp(){return J1(Pt())||Pt()===11}function QA(rt){if(Pt()===11||Pt()===9||Pt()===10){let Jt=ra();return Jt.text=ls(Jt.text),Jt}return rt&&Pt()===23?Zs():Pt()===81?io():Ca()}function ff(){return QA(!0)}function Zs(){let rt=Ri();ws(23);let Jt=gc(td);return ws(24),Zt(C.createComputedPropertyName(Jt),rt)}function io(){let rt=Ri(),Jt=Q(ls(t.getTokenValue()));return Vs(),Zt(Jt,rt)}function Ea(rt){return Pt()===rt&&Ki(Dr)}function Hl(){return Vs(),t.hasPrecedingLineBreak()?!1:vo()}function Dr(){switch(Pt()){case 87:return Vs()===94;case 95:return Vs(),Pt()===90?so(Xl):Pt()===156?so(di):On();case 90:return Xl();case 126:return Vs(),vo();case 139:case 153:return Vs(),us();default:return Hl()}}function On(){return Pt()===60||Pt()!==42&&Pt()!==130&&Pt()!==19&&vo()}function di(){return Vs(),On()}function aa(){return Oee(Pt())&&Ki(Dr)}function vo(){return Pt()===23||Pt()===19||Pt()===42||Pt()===26||Dp()}function us(){return Pt()===23||Dp()}function Xl(){return Vs(),Pt()===86||Pt()===100||Pt()===120||Pt()===60||Pt()===128&&so(xp)||Pt()===134&&so(s2)}function WA(rt,Jt){if(Qp(rt))return!0;switch(rt){case 0:case 1:case 3:return!(Pt()===27&&Jt)&&Xc();case 2:return Pt()===84||Pt()===90;case 4:return so(fm);case 5:return so(RL)||Pt()===27&&!Jt;case 6:return Pt()===23||Dp();case 12:switch(Pt()){case 23:case 42:case 26:case 25:return!0;default:return Dp()}case 18:return Dp();case 9:return Pt()===23||Pt()===26||Dp();case 24:return sp();case 7:return Pt()===19?so(If):Jt?Xs()&&!e2():$S()&&!e2();case 8:return c1();case 10:return Pt()===28||Pt()===26||c1();case 19:return Pt()===103||Pt()===87||Xs();case 15:switch(Pt()){case 28:case 25:return!0}case 11:return Pt()===26||rh();case 16:return xC(!1);case 17:return xC(!0);case 20:case 21:return Pt()===28||gt();case 22:return rn();case 23:return Pt()===161&&so(vx)?!1:Pt()===11?!0:J1(Pt());case 13:return J1(Pt())||Pt()===19;case 14:return!0;case 25:return!0;case 26:return Zo.fail("ParsingContext.Count used as a context");default:Zo.assertNever(rt,"Non-exhaustive case in 'isListElement'.")}}function If(){if(Zo.assert(Pt()===19),Vs()===20){let rt=Vs();return rt===28||rt===19||rt===96||rt===119}return!0}function rf(){return Vs(),Xs()}function op(){return Vs(),J1(Pt())}function bd(){return Vs(),o7a(Pt())}function e2(){return Pt()===119||Pt()===96?so(_w):!1}function _w(){return Vs(),rh()}function XA(){return Vs(),gt()}function Ac(rt){if(Pt()===1)return!0;switch(rt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Pt()===20;case 3:return Pt()===20||Pt()===84||Pt()===90;case 7:return Pt()===19||Pt()===96||Pt()===119;case 8:return Gm();case 19:return Pt()===32||Pt()===21||Pt()===19||Pt()===96||Pt()===119;case 11:return Pt()===22||Pt()===27;case 15:case 21:case 10:return Pt()===24;case 17:case 16:case 18:return Pt()===22||Pt()===24;case 20:return Pt()!==28;case 22:return Pt()===19||Pt()===20;case 13:return Pt()===32||Pt()===44;case 14:return Pt()===30&&so(ov);default:return!1}}function Gm(){return!!(bg()||r1(Pt())||Pt()===39)}function US(){Zo.assert(Fn,"Missing parsing context");for(let rt=0;rt<26;rt++)if(Fn&1<=0)}function yI(rt){return rt===6?ts.An_enum_member_name_must_be_followed_by_a_or:void 0}function bI(){let rt=vr([],Ri());return rt.isMissingList=!0,rt}function U2(rt){return!!rt.isMissingList}function cE(rt,Jt,kr,Xr){if(ws(kr)){let ui=qf(rt,Jt);return ws(Xr),ui}return bI()}function se(rt,Jt){let kr=Ri(),Xr=rt?Ca(Jt):Oa(Jt);for(;rc(25)&&Pt()!==30;)Xr=Zt(C.createQualifiedName(Xr,K(rt,!1,!0)),kr);return Xr}function P(rt,Jt){return Zt(C.createQualifiedName(rt,Jt),rt.pos)}function K(rt,Jt,kr){if(t.hasPrecedingLineBreak()&&J1(Pt())&&so(Fm))return yn(80,!0,ts.Identifier_expected);if(Pt()===81){let Xr=io();return Jt?Xr:yn(80,!0,ts.Identifier_expected)}return rt?kr?Ca():gd():Oa()}function we(rt){let Jt=Ri(),kr=[],Xr;do Xr=$n(rt),kr.push(Xr);while(Xr.literal.kind===17);return vr(kr,Jt)}function At(rt){let Jt=Ri();return Zt(C.createTemplateExpression(kc(rt),we(rt)),Jt)}function sr(){let rt=Ri();return Zt(C.createTemplateLiteralType(kc(!1),Yr()),rt)}function Yr(){let rt=Ri(),Jt=[],kr;do kr=Lr(),Jt.push(kr);while(kr.literal.kind===17);return vr(Jt,rt)}function Lr(){let rt=Ri();return Zt(C.createTemplateLiteralTypeSpan(nf(),fi(!1)),rt)}function fi(rt){return Pt()===20?(HA(rt),Dl()):rl(18,ts._0_expected,vy(20))}function $n(rt){let Jt=Ri();return Zt(C.createTemplateSpan(gc(td),fi(rt)),Jt)}function ra(){return wl(Pt())}function kc(rt){!rt&&t.getTokenFlags()&26656&&HA(!1);let Jt=wl(Pt());return Zo.assert(Jt.kind===16,"Template head has wrong token kind"),Jt}function Dl(){let rt=wl(Pt());return Zo.assert(rt.kind===17||rt.kind===18,"Template fragment has wrong token kind"),rt}function ca(rt){let Jt=rt===15||rt===18,kr=t.getTokenText();return kr.substring(1,kr.length-(t.isUnterminated()?0:Jt?1:2))}function wl(rt){let Jt=Ri(),kr=rSi(rt)?C.createTemplateLiteralLikeNode(rt,t.getTokenValue(),ca(rt),t.getTokenFlags()&7176):rt===9?E(t.getTokenValue(),t.getNumericLiteralFlags()):rt===11?N(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):nza(rt)?B(rt,t.getTokenValue()):Zo.fail();return t.hasExtendedUnicodeEscape()&&(kr.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(kr.isUnterminated=!0),Vs(),Zt(kr,Jt)}function eA(){return se(!0,ts.Type_expected)}function BA(){if(!t.hasPrecedingLineBreak()&&ZA()===30)return cE(20,nf,30,32)}function gI(){let rt=Ri();return Zt(C.createTypeReferenceNode(eA(),BA()),rt)}function gp(rt){switch(rt.kind){case 183:return iCe(rt.typeName);case 184:case 185:{let{parameters:Jt,type:kr}=rt;return U2(Jt)||gp(kr)}case 196:return gp(rt.type);default:return!1}}function Cb(rt){return Vs(),Zt(C.createTypePredicateNode(void 0,rt,nf()),rt.pos)}function Na(){let rt=Ri();return Vs(),Zt(C.createThisTypeNode(),rt)}function Rd(){let rt=Ri();return Vs(),Zt(C.createJSDocAllType(),rt)}function t2(){let rt=Ri();return Vs(),Zt(C.createJSDocNonNullableType(xc(),!1),rt)}function D_(){let rt=Ri();return Vs(),Pt()===28||Pt()===20||Pt()===22||Pt()===32||Pt()===64||Pt()===52?Zt(C.createJSDocUnknownType(),rt):Zt(C.createJSDocNullableType(nf(),!1),rt)}function kC(){let rt=Ri(),Jt=Do();if(Ki(Bx)){let kr=Mc(36),Xr=mh(59,!1);return Hr(Zt(C.createJSDocFunctionType(kr,Xr),rt),Jt)}return Zt(C.createTypeReferenceNode(Ca(),void 0),rt)}function Jm(){let rt=Ri(),Jt;return(Pt()===110||Pt()===105)&&(Jt=Ca(),ws(59)),Zt(C.createParameterDeclaration(void 0,void 0,Jt,void 0,KS(),void 0),rt)}function KS(){t.setSkipJsDocLeadingAsterisks(!0);let rt=Ri();if(rc(144)){let Xr=C.createJSDocNamepathType(void 0);e:for(;;)switch(Pt()){case 20:case 1:case 28:case 5:break e;default:Uu()}return t.setSkipJsDocLeadingAsterisks(!1),Zt(Xr,rt)}let Jt=rc(26),kr=e1();return t.setSkipJsDocLeadingAsterisks(!1),Jt&&(kr=Zt(C.createJSDocVariadicType(kr),rt)),Pt()===64?(Vs(),Zt(C.createJSDocOptionalType(kr),rt)):kr}function Zg(){let rt=Ri();ws(114);let Jt=se(!0),kr=t.hasPrecedingLineBreak()?void 0:xn();return Zt(C.createTypeQueryNode(Jt,kr),rt)}function _b(){let rt=Ri(),Jt=Ve(!1,!0),kr=Oa(),Xr,ui;rc(96)&&(gt()||!rh()?Xr=nf():ui=$R());let Is=rc(64)?nf():void 0,Hs=C.createTypeParameterDeclaration(Jt,kr,Xr,Is);return Hs.expression=ui,Zt(Hs,rt)}function pC(){if(Pt()===30)return cE(19,_b,30,32)}function xC(rt){return Pt()===26||c1()||Oee(Pt())||Pt()===60||gt(!rt)}function K2(rt){let Jt=Hf(ts.Private_identifiers_cannot_be_used_as_parameters);return Rza(Jt)===0&&!AD(rt)&&Oee(Pt())&&Vs(),Jt}function z_(){return cc()||Pt()===23||Pt()===19}function GC(rt){return th(rt)}function FC(rt){return th(rt,!1)}function th(rt,Jt=!0){let kr=Ri(),Xr=Do(),ui=rt?li(()=>Ve(!0)):Ei(()=>Ve(!0));if(Pt()===110){let ja=C.createParameterDeclaration(ui,void 0,oa(!0),void 0,Dy(),void 0),Io=iDr(ui);return Io&&_I(Io,ts.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Hr(Zt(ja,kr),Xr)}let Is=Ao;Ao=!1;let Hs=ad(26);if(!Jt&&!z_())return;let Rs=Hr(Zt(C.createParameterDeclaration(ui,Hs,K2(ui),ad(58),Dy(),Km()),kr),Xr);return Ao=Is,Rs}function mh(rt,Jt){if(wA(rt,Jt))return Nc(e1)}function wA(rt,Jt){return rt===39?(ws(rt),!0):rc(59)?!0:Jt&&Pt()===39?(Da(ts._0_expected,vy(59)),Vs(),!0):!1}function Nd(rt,Jt){let kr=Ql(),Xr=Ju();Qi(!!(rt&1)),_o(!!(rt&2));let ui=rt&32?qf(17,Jm):qf(16,()=>Jt?GC(Xr):FC(Xr));return Qi(kr),_o(Xr),ui}function Mc(rt){if(!ws(21))return bI();let Jt=Nd(rt,!0);return ws(22),Jt}function Pf(){rc(28)||YA()}function lE(rt){let Jt=Ri(),kr=Do();rt===180&&ws(105);let Xr=pC(),ui=Mc(4),Is=mh(59,!0);Pf();let Hs=rt===179?C.createCallSignature(Xr,ui,Is):C.createConstructSignature(Xr,ui,Is);return Hr(Zt(Hs,Jt),kr)}function tA(){return Pt()===23&&so(jS)}function jS(){if(Vs(),Pt()===26||Pt()===24)return!0;if(Oee(Pt())){if(Vs(),Xs())return!0}else if(Xs())Vs();else return!1;return Pt()===59||Pt()===28?!0:Pt()!==58?!1:(Vs(),Pt()===59||Pt()===28||Pt()===24)}function zS(rt,Jt,kr){let Xr=cE(16,()=>GC(!1),23,24),ui=Dy();Pf();let Is=C.createIndexSignature(kr,Xr,ui);return Hr(Zt(Is,rt),Jt)}function pm(rt,Jt,kr){let Xr=ff(),ui=ad(58),Is;if(Pt()===21||Pt()===30){let Hs=pC(),Rs=Mc(4),ja=mh(59,!0);Is=C.createMethodSignature(kr,Xr,ui,Hs,Rs,ja)}else{let Hs=Dy();Is=C.createPropertySignature(kr,Xr,ui,Hs),Pt()===64&&(Is.initializer=Km())}return Pf(),Hr(Zt(Is,rt),Jt)}function fm(){if(Pt()===21||Pt()===30||Pt()===139||Pt()===153)return!0;let rt=!1;for(;Oee(Pt());)rt=!0,Vs();return Pt()===23?!0:(Dp()&&(rt=!0,Vs()),rt?Pt()===21||Pt()===30||Pt()===58||Pt()===59||Pt()===28||bg():!1)}function cs(){if(Pt()===21||Pt()===30)return lE(179);if(Pt()===105&&so(na))return lE(180);let rt=Ri(),Jt=Do(),kr=Ve(!1);return Ea(139)?Rb(rt,Jt,kr,177,4):Ea(153)?Rb(rt,Jt,kr,178,4):tA()?zS(rt,Jt,kr):pm(rt,Jt,kr)}function na(){return Vs(),Pt()===21||Pt()===30}function ko(){return Vs()===25}function ki(){switch(Vs()){case 21:case 30:case 25:return!0}return!1}function jl(){let rt=Ri();return Zt(C.createTypeLiteralNode(hd()),rt)}function hd(){let rt;return ws(19)?(rt=qd(4,cs),ws(20)):rt=bI(),rt}function $f(){return Vs(),Pt()===40||Pt()===41?Vs()===148:(Pt()===148&&Vs(),Pt()===23&&rf()&&Vs()===103)}function Wd(){let rt=Ri(),Jt=Ca();ws(103);let kr=nf();return Zt(C.createTypeParameterDeclaration(void 0,Jt,kr,void 0),rt)}function fC(){let rt=Ri();ws(19);let Jt;(Pt()===148||Pt()===40||Pt()===41)&&(Jt=VA(),Jt.kind!==148&&ws(148)),ws(23);let kr=Wd(),Xr=rc(130)?nf():void 0;ws(24);let ui;(Pt()===58||Pt()===40||Pt()===41)&&(ui=VA(),ui.kind!==58&&ws(58));let Is=Dy();YA();let Hs=qd(4,cs);return ws(20),Zt(C.createMappedTypeNode(Jt,kr,Xr,ui,Is,Hs),rt)}function zE(){let rt=Ri();if(rc(26))return Zt(C.createRestTypeNode(nf()),rt);let Jt=nf();if(rec(Jt)&&Jt.pos===Jt.type.pos){let kr=C.createOptionalTypeNode(Jt.type);return iL(kr,Jt),kr.flags=Jt.flags,kr}return Jt}function Um(){return Vs()===59||Pt()===58&&Vs()===59}function Ty(){return Pt()===26?J1(Vs())&&Um():J1(Pt())&&Um()}function q_(){if(so(Ty)){let rt=Ri(),Jt=Do(),kr=ad(26),Xr=Ca(),ui=ad(58);ws(59);let Is=zE(),Hs=C.createNamedTupleMember(kr,Xr,ui,Is);return Hr(Zt(Hs,rt),Jt)}return zE()}function cd(){let rt=Ri();return Zt(C.createTupleTypeNode(cE(21,q_,23,24)),rt)}function qE(){let rt=Ri();ws(21);let Jt=nf();return ws(22),Zt(C.createParenthesizedType(Jt),rt)}function $E(){let rt;if(Pt()===128){let Jt=Ri();Vs();let kr=Zt(J(128),Jt);rt=vr([kr],Jt)}return rt}function Xp(){let rt=Ri(),Jt=Do(),kr=$E(),Xr=rc(105);Zo.assert(!kr||Xr,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let ui=pC(),Is=Mc(4),Hs=mh(39,!1),Rs=Xr?C.createConstructorTypeNode(kr,ui,Is,Hs):C.createFunctionTypeNode(ui,Is,Hs);return Hr(Zt(Rs,rt),Jt)}function qS(){let rt=VA();return Pt()===25?void 0:rt}function Ry(rt){let Jt=Ri();rt&&Vs();let kr=Pt()===112||Pt()===97||Pt()===106?VA():wl(Pt());return rt&&(kr=Zt(C.createPrefixUnaryExpression(41,kr),Jt)),Zt(C.createLiteralTypeNode(kr),Jt)}function ry(){return Vs(),Pt()===102}function yw(){Bt|=4194304;let rt=Ri(),Jt=rc(114);ws(102),ws(21);let kr=nf(),Xr;if(rc(28)){let Hs=t.getTokenStart();ws(19);let Rs=Pt();if(Rs===118||Rs===132?Vs():Da(ts._0_expected,vy(118)),ws(59),Xr=c3(Rs,!0),!ws(20)){let ja=rCe(lr);ja&&ja.code===ts._0_expected.code&&Kbt(ja,FNe(jt,Nt,Hs,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ws(22);let ui=rc(25)?eA():void 0,Is=BA();return Zt(C.createImportTypeNode(kr,Xr,ui,Is,Jt),rt)}function j2(){return Vs(),Pt()===9||Pt()===10}function xc(){switch(Pt()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ki(qS)||gI();case 67:t.reScanAsteriskEqualsToken();case 42:return Rd();case 61:t.reScanQuestionToken();case 58:return D_();case 100:return kC();case 54:return t2();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return Ry();case 41:return so(j2)?Ry(!0):gI();case 116:return VA();case 110:{let rt=Na();return Pt()===142&&!t.hasPrecedingLineBreak()?Cb(rt):rt}case 114:return so(ry)?yw():Zg();case 19:return so($f)?fC():jl();case 23:return cd();case 21:return qE();case 102:return yw();case 131:return so(Fm)?ZT():gI();case 16:return sr();default:return gI()}}function gt(rt){switch(Pt()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!rt;case 41:return!rt&&so(j2);case 21:return!rt&&so(ar);default:return Xs()}}function ar(){return Vs(),Pt()===22||xC(!1)||gt()}function Jr(){let rt=Ri(),Jt=xc();for(;!t.hasPrecedingLineBreak();)switch(Pt()){case 54:Vs(),Jt=Zt(C.createJSDocNonNullableType(Jt,!0),rt);break;case 58:if(so(XA))return Jt;Vs(),Jt=Zt(C.createJSDocNullableType(Jt,!0),rt);break;case 23:if(ws(23),gt()){let kr=nf();ws(24),Jt=Zt(C.createIndexedAccessTypeNode(Jt,kr),rt)}else ws(24),Jt=Zt(C.createArrayTypeNode(Jt),rt);break;default:return Jt}return Jt}function Gn(rt){let Jt=Ri();return ws(rt),Zt(C.createTypeOperatorNode(rt,Dg()),Jt)}function Ts(){if(rc(96)){let rt=oA(nf);if(vg()||Pt()!==58)return rt}}function Qo(){let rt=Ri(),Jt=Oa(),kr=Ki(Ts),Xr=C.createTypeParameterDeclaration(void 0,Jt,kr);return Zt(Xr,rt)}function Bg(){let rt=Ri();return ws(140),Zt(C.createInferTypeNode(Qo()),rt)}function Dg(){let rt=Pt();switch(rt){case 143:case 158:case 148:return Gn(rt);case 140:return Bg()}return Nc(Jr)}function Df(rt){if(gB()){let Jt=Xp(),kr;return yBi(Jt)?kr=rt?ts.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:kr=rt?ts.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,_I(Jt,kr),Jt}}function AI(rt,Jt,kr){let Xr=Ri(),ui=rt===52,Is=rc(rt),Hs=Is&&Df(ui)||Jt();if(Pt()===rt||Is){let Rs=[Hs];for(;rc(rt);)Rs.push(Df(ui)||Jt());Hs=Zt(kr(vr(Rs,Xr)),Xr)}return Hs}function kh(){return AI(51,Dg,C.createIntersectionTypeNode)}function uE(){return AI(52,kh,C.createUnionTypeNode)}function GT(){return Vs(),Pt()===105}function gB(){return Pt()===30||Pt()===21&&so(Ny)?!0:Pt()===105||Pt()===128&&so(GT)}function FT(){if(Oee(Pt())&&Ve(!1),Xs()||Pt()===110)return Vs(),!0;if(Pt()===23||Pt()===19){let rt=lr.length;return Hf(),rt===lr.length}return!1}function Ny(){return Vs(),!!(Pt()===22||Pt()===26||FT()&&(Pt()===59||Pt()===28||Pt()===58||Pt()===64||Pt()===22&&(Vs(),Pt()===39)))}function e1(){let rt=Ri(),Jt=Xs()&&Ki($_),kr=nf();return Jt?Zt(C.createTypePredicateNode(void 0,Jt,kr),rt):kr}function $_(){let rt=Oa();if(Pt()===142&&!t.hasPrecedingLineBreak())return Vs(),rt}function ZT(){let rt=Ri(),Jt=rl(131),kr=Pt()===110?Na():Oa(),Xr=rc(142)?nf():void 0;return Zt(C.createTypePredicateNode(Jt,kr,Xr),rt)}function nf(){if(Hi&81920)return yo(81920,nf);if(gB())return Xp();let rt=Ri(),Jt=uE();if(!vg()&&!t.hasPrecedingLineBreak()&&rc(96)){let kr=oA(nf);ws(58);let Xr=Nc(nf);ws(59);let ui=Nc(nf);return Zt(C.createConditionalTypeNode(Jt,kr,Xr,ui),rt)}return Jt}function Dy(){return rc(59)?nf():void 0}function $S(){switch(Pt()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return so(ki);default:return Xs()}}function rh(){if($S())return!0;switch(Pt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return VT()?!0:Xs()}}function TA(){return Pt()!==19&&Pt()!==100&&Pt()!==86&&Pt()!==60&&rh()}function td(){let rt=Kl();rt&&ps(!1);let Jt=Ri(),kr=eI(!0),Xr;for(;Xr=ad(28);)kr=r2(kr,Xr,eI(!0),Jt);return rt&&ps(!0),kr}function Km(){return rc(64)?eI(!0):void 0}function eI(rt){if(yb())return bb();let Jt=ev(rt)||AB(rt);if(Jt)return Jt;let kr=Ri(),Xr=Do(),ui=rv(0);return ui.kind===80&&Pt()===39?ky(kr,ui,rt,Xr,void 0):KNe(ui)&&uBi(Ko())?r2(ui,VA(),eI(rt),kr):qR(ui,kr,rt)}function yb(){return Pt()===127?Ql()?!0:so(To):!1}function k_(){return Vs(),!t.hasPrecedingLineBreak()&&Xs()}function bb(){let rt=Ri();return Vs(),!t.hasPrecedingLineBreak()&&(Pt()===42||rh())?Zt(C.createYieldExpression(ad(42),eI(!0)),rt):Zt(C.createYieldExpression(void 0,void 0),rt)}function ky(rt,Jt,kr,Xr,ui){Zo.assert(Pt()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Is=C.createParameterDeclaration(void 0,void 0,Jt,void 0,void 0,void 0);Zt(Is,Jt.pos);let Hs=vr([Is],Is.pos,Is.end),Rs=rl(39),ja=tv(!!ui,kr),Io=C.createArrowFunction(ui,void 0,Hs,void 0,Rs,ja);return Hr(Zt(Io,rt),Xr)}function ev(rt){let Jt=Eb();if(Jt!==0)return Jt===1?dB(!0,!0):Ki(()=>t1(rt))}function Eb(){return Pt()===21||Pt()===30||Pt()===134?so(e0):Pt()===39?1:0}function e0(){if(Pt()===134&&(Vs(),t.hasPrecedingLineBreak()||Pt()!==21&&Pt()!==30))return 0;let rt=Pt(),Jt=Vs();if(rt===21){if(Jt===22)switch(Vs()){case 39:case 59:case 19:return 1;default:return 0}if(Jt===23||Jt===19)return 2;if(Jt===26)return 1;if(Oee(Jt)&&Jt!==134&&so(rf))return Vs()===130?0:1;if(!Xs()&&Jt!==110)return 0;switch(Vs()){case 59:return 1;case 58:return Vs(),Pt()===59||Pt()===28||Pt()===64||Pt()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return Zo.assert(rt===30),!Xs()&&Pt()!==87?0:Xt===1?so(()=>{rc(87);let kr=Vs();if(kr===96)switch(Vs()){case 64:case 32:case 44:return!1;default:return!0}else if(kr===28||kr===64)return!0;return!1})?1:0:2}function t1(rt){let Jt=t.getTokenStart();if(Nn!=null&&Nn.has(Jt))return;let kr=dB(!1,rt);return kr||(Nn||(Nn=new Set)).add(Jt),kr}function AB(rt){if(Pt()===134&&so(LT)===1){let Jt=Ri(),kr=Do(),Xr=It(),ui=rv(0);return ky(Jt,ui,rt,kr,Xr)}}function LT(){if(Pt()===134){if(Vs(),t.hasPrecedingLineBreak()||Pt()===39)return 0;let rt=rv(0);if(!t.hasPrecedingLineBreak()&&rt.kind===80&&Pt()===39)return 1}return 0}function dB(rt,Jt){let kr=Ri(),Xr=Do(),ui=It(),Is=AD(ui,qbt)?2:0,Hs=pC(),Rs;if(ws(21)){if(rt)Rs=Nd(Is,rt);else{let Db=Nd(Is,rt);if(!Db)return;Rs=Db}if(!ws(22)&&!rt)return}else{if(!rt)return;Rs=bI()}let ja=Pt()===59,Io=mh(59,!1);if(Io&&!rt&&gp(Io))return;let nl=Io;for(;nl?.kind===196;)nl=nl.type;let kd=nl&&nec(nl);if(!rt&&Pt()!==39&&(kd||Pt()!==19))return;let rd=Pt(),Mg=rl(39),Gh=rd===39||rd===19?tv(AD(ui,qbt),Jt):Oa();if(!Jt&&ja&&Pt()!==59)return;let u1=C.createArrowFunction(ui,Hs,Rs,Io,Mg,Gh);return Hr(Zt(u1,kr),Xr)}function tv(rt,Jt){if(Pt()===19)return AE(rt?2:0);if(Pt()!==27&&Pt()!==100&&Pt()!==86&&Xc()&&!TA())return AE(16|(rt?2:0));let kr=Ao;Ao=!1;let Xr=rt?li(()=>eI(Jt)):Ei(()=>eI(Jt));return Ao=kr,Xr}function qR(rt,Jt,kr){let Xr=ad(58);if(!Xr)return rt;let ui;return Zt(C.createConditionalExpression(rt,Xr,yo(r,()=>eI(!1)),ui=rl(59),WNr(ui)?eI(kr):yn(80,!1,ts._0_expected,vy(59))),Jt)}function rv(rt){let Jt=Ri(),kr=$R();return z2(rt,kr,Jt)}function r1(rt){return rt===103||rt===165}function z2(rt,Jt,kr){for(;;){Ko();let Xr=bNr(Pt());if(!(Pt()===43?Xr>=rt:Xr>rt)||Pt()===103&&Oc())break;if(Pt()===130||Pt()===152){if(t.hasPrecedingLineBreak())break;{let ui=Pt();Vs(),Jt=ui===152?pn(Jt,nf()):q2(Jt,nf())}}else Jt=r2(Jt,VA(),rv(Xr),kr)}return Jt}function VT(){return Oc()&&Pt()===103?!1:bNr(Pt())>0}function pn(rt,Jt){return Zt(C.createSatisfiesExpression(rt,Jt),rt.pos)}function r2(rt,Jt,kr,Xr){return Zt(C.createBinaryExpression(rt,Jt,kr),Xr)}function q2(rt,Jt){return Zt(C.createAsExpression(rt,Jt),rt.pos)}function ny(){let rt=Ri();return Zt(C.createPrefixUnaryExpression(Pt(),Ru(iy)),rt)}function Ap(){let rt=Ri();return Zt(C.createDeleteExpression(Ru(iy)),rt)}function bw(){let rt=Ri();return Zt(C.createTypeOfExpression(Ru(iy)),rt)}function pB(){let rt=Ri();return Zt(C.createVoidExpression(Ru(iy)),rt)}function FD(){return Pt()===135?Ju()?!0:so(To):!1}function Dd(){let rt=Ri();return Zt(C.createAwaitExpression(Ru(iy)),rt)}function $R(){if(fF()){let kr=Ri(),Xr=n2();return Pt()===43?z2(bNr(Pt()),Xr,kr):Xr}let rt=Pt(),Jt=iy();if(Pt()===43){let kr=w6(Nt,Jt.pos),{end:Xr}=Jt;Jt.kind===216?yg(kr,Xr,ts.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(Zo.assert(yNr(rt)),yg(kr,Xr,ts.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,vy(rt)))}return Jt}function iy(){switch(Pt()){case 40:case 41:case 55:case 54:return ny();case 91:return Ap();case 114:return bw();case 116:return pB();case 30:return Xt===1?s1(!0,void 0,void 0,!0):sf();case 135:if(FD())return Dd();default:return n2()}}function fF(){switch(Pt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Xt!==1)return!1;default:return!0}}function n2(){if(Pt()===46||Pt()===47){let Jt=Ri();return Zt(C.createPrefixUnaryExpression(Pt(),Ru(n1)),Jt)}else if(Xt===1&&Pt()===30&&so(bd))return s1(!0);let rt=n1();if(Zo.assert(KNe(rt)),(Pt()===46||Pt()===47)&&!t.hasPrecedingLineBreak()){let Jt=Pt();return Vs(),Zt(C.createPostfixUnaryExpression(rt,Jt),rt.pos)}return rt}function n1(){let rt=Ri(),Jt;return Pt()===102?so(na)?(Bt|=4194304,Jt=VA()):so(ko)?(Vs(),Vs(),Jt=Zt(C.createMetaProperty(102,Ca()),rt),Bt|=8388608):Jt=x_():Jt=Pt()===108?i1():x_(),o1(rt,Jt)}function x_(){let rt=Ri(),Jt=v0();return _h(rt,Jt,!0)}function i1(){let rt=Ri(),Jt=VA();if(Pt()===30){let kr=Ri(),Xr=Ki(Ew);Xr!==void 0&&(yg(kr,Ri(),ts.super_may_not_use_type_arguments),ZC()||(Jt=C.createExpressionWithTypeArguments(Jt,Xr)))}return Pt()===21||Pt()===25||Pt()===23?Jt:(rl(25,ts.super_must_be_followed_by_an_argument_list_or_member_access),Zt(ce(Jt,K(!0,!0,!0)),rt))}function s1(rt,Jt,kr,Xr=!1){let ui=Ri(),Is=xh(rt),Hs;if(Is.kind===286){let Rs=Sb(Is),ja,Io=Rs[Rs.length-1];if(Io?.kind===284&&!kce(Io.openingElement.tagName,Io.closingElement.tagName)&&kce(Is.tagName,Io.closingElement.tagName)){let nl=Io.children.end,kd=Zt(C.createJsxElement(Io.openingElement,Io.children,Zt(C.createJsxClosingElement(Zt(F(""),nl,nl)),nl,nl)),Io.openingElement.pos,nl);Rs=vr([...Rs.slice(0,Rs.length-1),kd],Rs.pos,nl),ja=Io.closingElement}else ja=lc(Is,rt),kce(Is.tagName,ja.tagName)||(kr&&mSi(kr)&&kce(ja.tagName,kr.tagName)?_I(Is.tagName,ts.JSX_element_0_has_no_corresponding_closing_tag,NJe(Nt,Is.tagName)):_I(ja.tagName,ts.Expected_corresponding_JSX_closing_tag_for_0,NJe(Nt,Is.tagName)));Hs=Zt(C.createJsxElement(Is,Rs,ja),ui)}else Is.kind===289?Hs=Zt(C.createJsxFragment(Is,Sb(Is),Ch(rt)),ui):(Zo.assert(Is.kind===285),Hs=Is);if(!Xr&&rt&&Pt()===30){let Rs=typeof Jt>"u"?Hs.pos:Jt,ja=Ki(()=>s1(!0,Rs));if(ja){let Io=yn(28,!1);return dSi(Io,ja.pos,0),yg(w6(Nt,Rs),ja.end,ts.JSX_expressions_must_have_one_parent_element),Zt(C.createBinaryExpression(Hs,Io,ja),ui)}}return Hs}function sy(){let rt=Ri(),Jt=C.createJsxText(t.getTokenValue(),qr===13);return qr=t.scanJsxToken(),Zt(Jt,rt)}function WT(rt,Jt){switch(Jt){case 1:if(z$a(rt))_I(rt,ts.JSX_fragment_has_no_corresponding_closing_tag);else{let kr=rt.tagName,Xr=Math.min(w6(Nt,kr.pos),kr.end);yg(Xr,kr.end,ts.JSX_element_0_has_no_corresponding_closing_tag,NJe(Nt,rt.tagName))}return;case 31:case 7:return;case 12:case 13:return sy();case 19:return ZD(!1);case 30:return s1(!1,void 0,rt);default:return Zo.assertNever(Jt)}}function Sb(rt){let Jt=[],kr=Ri(),Xr=Fn;for(Fn|=16384;;){let ui=WT(rt,qr=t.reScanJsxToken());if(!ui||(Jt.push(ui),mSi(rt)&&ui?.kind===284&&!kce(ui.openingElement.tagName,ui.closingElement.tagName)&&kce(rt.tagName,ui.closingElement.tagName)))break}return Fn=Xr,vr(Jt,kr)}function s_(){let rt=Ri();return Zt(C.createJsxAttributes(qd(13,LD)),rt)}function xh(rt){let Jt=Ri();if(ws(30),Pt()===32)return zf(),Zt(C.createJsxOpeningFragment(),Jt);let kr=vb(),Xr=Hi&524288?void 0:xn(),ui=s_(),Is;return Pt()===32?(zf(),Is=C.createJsxOpeningElement(kr,Xr,ui)):(ws(44),ws(32,void 0,!1)&&(rt?Vs():zf()),Is=C.createJsxSelfClosingElement(kr,Xr,ui)),Zt(Is,Jt)}function vb(){let rt=Ri(),Jt=fB();if(ZBi(Jt))return Jt;let kr=Jt;for(;rc(25);)kr=Zt(ce(kr,K(!0,!1,!1)),rt);return kr}function fB(){let rt=Ri();Al();let Jt=Pt()===110,kr=gd();return rc(59)?(Al(),Zt(C.createJsxNamespacedName(kr,gd()),rt)):Jt?Zt(C.createToken(110),rt):kr}function ZD(rt){let Jt=Ri();if(!ws(19))return;let kr,Xr;return Pt()!==20&&(rt||(kr=ad(26)),Xr=td()),rt?ws(20):ws(20,void 0,!1)&&zf(),Zt(C.createJsxExpression(kr,Xr),Jt)}function LD(){if(Pt()===19)return eN();let rt=Ri();return Zt(C.createJsxAttribute(VD(),t0()),rt)}function t0(){if(Pt()===64){if(zd()===11)return ra();if(Pt()===19)return ZD(!0);if(Pt()===30)return s1(!0);Da(ts.or_JSX_element_expected)}}function VD(){let rt=Ri();Al();let Jt=gd();return rc(59)?(Al(),Zt(C.createJsxNamespacedName(Jt,gd()),rt)):Jt}function eN(){let rt=Ri();ws(19),ws(26);let Jt=td();return ws(20),Zt(C.createJsxSpreadAttribute(Jt),rt)}function lc(rt,Jt){let kr=Ri();ws(31);let Xr=vb();return ws(32,void 0,!1)&&(Jt||!kce(rt.tagName,Xr)?Vs():zf()),Zt(C.createJsxClosingElement(Xr),kr)}function Ch(rt){let Jt=Ri();return ws(31),ws(32,ts.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(rt?Vs():zf()),Zt(C.createJsxJsxClosingFragment(),Jt)}function sf(){Zo.assert(Xt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let rt=Ri();ws(30);let Jt=nf();ws(32);let kr=iy();return Zt(C.createTypeAssertion(Jt,kr),rt)}function EI(){return Vs(),J1(Pt())||Pt()===23||ZC()}function gE(){return Pt()===29&&so(EI)}function nv(rt){if(rt.flags&64)return!0;if(rEt(rt)){let Jt=rt.expression;for(;rEt(Jt)&&!(Jt.flags&64);)Jt=Jt.expression;if(Jt.flags&64){for(;rEt(rt);)rt.flags|=64,rt=rt.expression;return!0}}return!1}function Jp(rt,Jt,kr){let Xr=K(!0,!0,!0),ui=kr||nv(Jt),Is=ui?fe(Jt,kr,Xr):ce(Jt,Xr);if(ui&&cCe(Is.name)&&_I(Is.name,ts.An_optional_chain_cannot_contain_private_identifiers),H$a(Jt)&&Jt.typeArguments){let Hs=Jt.typeArguments.pos-1,Rs=w6(Nt,Jt.typeArguments.end)+1;yg(Hs,Rs,ts.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Zt(Is,rt)}function IB(rt,Jt,kr){let Xr;if(Pt()===24)Xr=yn(80,!0,ts.An_element_access_expression_should_take_an_argument);else{let Is=gc(td);mEt(Is)&&(Is.text=ls(Is.text)),Xr=Is}ws(24);let ui=kr||nv(Jt)?de(Jt,kr,Xr):ue(Jt,Xr);return Zt(ui,rt)}function _h(rt,Jt,kr){for(;;){let Xr,ui=!1;if(kr&&gE()?(Xr=rl(29),ui=J1(Pt())):ui=rc(25),ui){Jt=Jp(rt,Jt,Xr);continue}if((Xr||!Kl())&&rc(23)){Jt=IB(rt,Jt,Xr);continue}if(ZC()){Jt=!Xr&&Jt.kind===233?r0(rt,Jt.expression,Xr,Jt.typeArguments):r0(rt,Jt,Xr,void 0);continue}if(!Xr){if(Pt()===54&&!t.hasPrecedingLineBreak()){Vs(),Jt=Zt(C.createNonNullExpression(Jt),rt);continue}let Is=Ki(Ew);if(Is){Jt=Zt(C.createExpressionWithTypeArguments(Jt,Is),rt);continue}}return Jt}}function ZC(){return Pt()===15||Pt()===16}function r0(rt,Jt,kr,Xr){let ui=C.createTaggedTemplateExpression(Jt,Xr,Pt()===15?(HA(!0),ra()):At(!0));return(kr||Jt.flags&64)&&(ui.flags|=64),ui.questionDotToken=kr,Zt(ui,rt)}function o1(rt,Jt){for(;;){Jt=_h(rt,Jt,!0);let kr,Xr=ad(29);if(Xr&&(kr=Ki(Ew),ZC())){Jt=r0(rt,Jt,Xr,kr);continue}if(kr||Pt()===21){!Xr&&Jt.kind===233&&(kr=Jt.typeArguments,Jt=Jt.expression);let ui=hB(),Is=Xr||nv(Jt)?Se(Jt,Xr,kr,ui):be(Jt,kr,ui);Jt=Zt(Is,rt);continue}if(Xr){let ui=yn(80,!1,ts.Identifier_expected);Jt=Zt(fe(Jt,Xr,ui),rt)}break}return Jt}function hB(){ws(21);let rt=qf(11,SI);return ws(22),rt}function Ew(){if(Hi&524288||ZA()!==30)return;Vs();let rt=qf(20,nf);if(Ko()===32)return Vs(),rt&&OT()?rt:void 0}function OT(){switch(Pt()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||VT()||!rh()}function v0(){switch(Pt()){case 15:t.getTokenFlags()&26656&&HA(!1);case 9:case 10:case 11:return ra();case 110:case 108:case 106:case 112:case 97:return VA();case 21:return ia();case 23:return cg();case 19:return a1();case 134:if(!so(s2))break;return $2();case 60:return Ur();case 86:return mi();case 100:return $2();case 105:return o_();case 44:case 69:if(Sg()===14)return ra();break;case 16:return At(!1);case 81:return io()}return Oa(ts.Expression_expected)}function ia(){let rt=Ri(),Jt=Do();ws(21);let kr=gc(td);return ws(22),Hr(Zt(k(kr),rt),Jt)}function i2(){let rt=Ri();ws(26);let Jt=eI(!0);return Zt(C.createSpreadElement(Jt),rt)}function Ed(){return Pt()===26?i2():Pt()===28?Zt(C.createOmittedExpression(),Ri()):eI(!0)}function SI(){return yo(r,Ed)}function cg(){let rt=Ri(),Jt=t.getTokenStart(),kr=ws(23),Xr=t.hasPrecedingLineBreak(),ui=qf(15,Ed);return Zl(23,24,kr,Jt),Zt(ae(ui,Xr),rt)}function Bb(){let rt=Ri(),Jt=Do();if(ad(26)){let Io=eI(!0);return Hr(Zt(C.createSpreadAssignment(Io),rt),Jt)}let kr=Ve(!0);if(Ea(139))return Rb(rt,Jt,kr,177,0);if(Ea(153))return Rb(rt,Jt,kr,178,0);let Xr=ad(42),ui=Xs(),Is=ff(),Hs=ad(58),Rs=ad(54);if(Xr||Pt()===21||Pt()===30)return Tb(rt,Jt,kr,Xr,Is,Hs,Rs);let ja;if(ui&&Pt()!==59){let Io=ad(64),nl=Io?gc(()=>eI(!0)):void 0;ja=C.createShorthandPropertyAssignment(Is,nl),ja.equalsToken=Io}else{ws(59);let Io=gc(()=>eI(!0));ja=C.createPropertyAssignment(Is,Io)}return ja.modifiers=kr,ja.questionToken=Hs,ja.exclamationToken=Rs,Hr(Zt(ja,rt),Jt)}function a1(){let rt=Ri(),Jt=t.getTokenStart(),kr=ws(19),Xr=t.hasPrecedingLineBreak(),ui=qf(12,Bb,!0);return Zl(19,20,kr,Jt),Zt(ne(ui,Xr),rt)}function $2(){let rt=Kl();ps(!1);let Jt=Ri(),kr=Do(),Xr=Ve(!1);ws(100);let ui=ad(42),Is=ui?1:0,Hs=AD(Xr,qbt)?2:0,Rs=Is&&Hs?Ws(n0):Is?ma(n0):Hs?li(n0):n0(),ja=pC(),Io=Mc(Is|Hs),nl=mh(59,!1),kd=AE(Is|Hs);ps(rt);let rd=C.createFunctionExpression(Xr,ui,Rs,ja,Io,nl,kd);return Hr(Zt(rd,Jt),kr)}function n0(){return cc()?Fs():void 0}function o_(){let rt=Ri();if(ws(105),rc(25)){let Is=Ca();return Zt(C.createMetaProperty(105,Is),rt)}let Jt=Ri(),kr=_h(Jt,v0(),!1),Xr;kr.kind===233&&(Xr=kr.typeArguments,kr=kr.expression),Pt()===29&&Da(ts.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,NJe(Nt,kr));let ui=Pt()===21?hB():void 0;return Zt(De(kr,Xr,ui),rt)}function Up(rt,Jt){let kr=Ri(),Xr=Do(),ui=t.getTokenStart(),Is=ws(19,Jt);if(Is||rt){let Hs=t.hasPrecedingLineBreak(),Rs=qd(1,Im);Zl(19,20,Is,ui);let ja=Hr(Zt(tt(Rs,Hs),kr),Xr);return Pt()===64&&(Da(ts.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),Vs()),ja}else{let Hs=bI();return Hr(Zt(tt(Hs,void 0),kr),Xr)}}function AE(rt,Jt){let kr=Ql();Qi(!!(rt&1));let Xr=Ju();_o(!!(rt&2));let ui=Ao;Ao=!1;let Is=Kl();Is&&ps(!1);let Hs=Up(!!(rt&16),Jt);return Is&&ps(!0),Ao=ui,Qi(kr),_o(Xr),Hs}function dE(){let rt=Ri(),Jt=Do();return ws(27),Hr(Zt(C.createEmptyStatement(),rt),Jt)}function mp(){let rt=Ri(),Jt=Do();ws(101);let kr=t.getTokenStart(),Xr=ws(21),ui=gc(td);Zl(21,22,Xr,kr);let Is=Im(),Hs=rc(93)?Im():void 0;return Hr(Zt(Je(ui,Is,Hs),rt),Jt)}function jh(){let rt=Ri(),Jt=Do();ws(92);let kr=Im();ws(117);let Xr=t.getTokenStart(),ui=ws(21),Is=gc(td);return Zl(21,22,ui,Xr),rc(27),Hr(Zt(C.createDoStatement(kr,Is),rt),Jt)}function B0(){let rt=Ri(),Jt=Do();ws(117);let kr=t.getTokenStart(),Xr=ws(21),ui=gc(td);Zl(21,22,Xr,kr);let Is=Im();return Hr(Zt(ft(ui,Is),rt),Jt)}function lA(){let rt=Ri(),Jt=Do();ws(99);let kr=ad(135);ws(21);let Xr;Pt()!==27&&(Pt()===115||Pt()===121||Pt()===87||Pt()===160&&so(TL)||Pt()===135&&so(oy)?Xr=j(!0):Xr=_g(td));let ui;if(kr?ws(165):rc(165)){let Is=gc(()=>eI(!0));ws(22),ui=Ot(kr,Xr,Is,Im())}else if(rc(103)){let Is=gc(td);ws(22),ui=C.createForInStatement(Xr,Is,Im())}else{ws(27);let Is=Pt()!==27&&Pt()!==22?gc(td):void 0;ws(27);let Hs=Pt()!==22?gc(td):void 0;ws(22),ui=lt(Xr,Is,Hs,Im())}return Hr(Zt(ui,rt),Jt)}function Iu(rt){let Jt=Ri(),kr=Do();ws(rt===252?83:88);let Xr=bg()?void 0:Oa();YA();let ui=rt===252?C.createBreakStatement(Xr):C.createContinueStatement(Xr);return Hr(Zt(ui,Jt),kr)}function Kp(){let rt=Ri(),Jt=Do();ws(107);let kr=bg()?void 0:gc(td);return YA(),Hr(Zt(C.createReturnStatement(kr),rt),Jt)}function IC(){let rt=Ri(),Jt=Do();ws(118);let kr=t.getTokenStart(),Xr=ws(21),ui=gc(td);Zl(21,22,Xr,kr);let Is=Qa(67108864,Im);return Hr(Zt(C.createWithStatement(ui,Is),rt),Jt)}function pE(){let rt=Ri(),Jt=Do();ws(84);let kr=gc(td);ws(59);let Xr=qd(3,Im);return Hr(Zt(C.createCaseClause(kr,Xr),rt),Jt)}function nh(){let rt=Ri();ws(90),ws(59);let Jt=qd(3,Im);return Zt(C.createDefaultClause(Jt),rt)}function Mf(){return Pt()===84?pE():nh()}function Mo(){let rt=Ri();ws(19);let Jt=qd(2,Mf);return ws(20),Zt(C.createCaseBlock(Jt),rt)}function dp(){let rt=Ri(),Jt=Do();ws(109),ws(21);let kr=gc(td);ws(22);let Xr=Mo();return Hr(Zt(C.createSwitchStatement(kr,Xr),rt),Jt)}function IF(){let rt=Ri(),Jt=Do();ws(111);let kr=t.hasPrecedingLineBreak()?void 0:gc(td);return kr===void 0&&(zt++,kr=Zt(F(""),Ri())),Yp()||Ma(kr),Hr(Zt(C.createThrowStatement(kr),rt),Jt)}function hF(){let rt=Ri(),Jt=Do();ws(113);let kr=Up(!1),Xr=Pt()===85?fE():void 0,ui;return(!Xr||Pt()===98)&&(ws(98,ts.catch_or_finally_expected),ui=Up(!1)),Hr(Zt(C.createTryStatement(kr,Xr,ui),rt),Jt)}function fE(){let rt=Ri();ws(85);let Jt;rc(21)?(Jt=Od(),ws(22)):Jt=void 0;let kr=Up(!1);return Zt(C.createCatchClause(Jt,kr),rt)}function PT(){let rt=Ri(),Jt=Do();return ws(89),YA(),Hr(Zt(C.createDebuggerStatement(),rt),Jt)}function kp(){let rt=Ri(),Jt=Do(),kr,Xr=Pt()===21,ui=gc(td);return r_(ui)&&rc(59)?kr=C.createLabeledStatement(ui,Im()):(Yp()||Ma(ui),kr=Le(ui),Xr&&(Jt=!1)),Hr(Zt(kr,rt),Jt)}function Fm(){return Vs(),J1(Pt())&&!t.hasPrecedingLineBreak()}function xp(){return Vs(),Pt()===86&&!t.hasPrecedingLineBreak()}function s2(){return Vs(),Pt()===100&&!t.hasPrecedingLineBreak()}function To(){return Vs(),(J1(Pt())||Pt()===9||Pt()===10||Pt()===11)&&!t.hasPrecedingLineBreak()}function IE(){for(;;)switch(Pt()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return Pu();case 135:return Cp();case 120:case 156:return k_();case 144:case 145:return tI();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let rt=Pt();if(Vs(),t.hasPrecedingLineBreak())return!1;if(rt===138&&Pt()===156)return!0;continue;case 162:return Vs(),Pt()===19||Pt()===80||Pt()===95;case 102:return Vs(),Pt()===11||Pt()===42||Pt()===19||J1(Pt());case 95:let Jt=Vs();if(Jt===156&&(Jt=so(Vs)),Jt===64||Jt===42||Jt===19||Jt===90||Jt===130||Jt===60)return!0;continue;case 126:Vs();continue;default:return!1}}function mB(){return so(IE)}function Xc(){switch(Pt()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return mB()||so(ki);case 87:case 95:return mB();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return mB()||!so(Fm);default:return rh()}}function su(){return Vs(),cc()||Pt()===19||Pt()===23}function hE(){return so(su)}function TL(){return tN(!0)}function tN(rt){return Vs(),rt&&Pt()===165?!1:(cc()||Pt()===19)&&!t.hasPrecedingLineBreak()}function Pu(){return so(tN)}function oy(rt){return Vs()===160?tN(rt):!1}function Cp(){return so(oy)}function Im(){switch(Pt()){case 27:return dE();case 19:return Up(!1);case 115:return md(Ri(),Do(),void 0);case 121:if(hE())return md(Ri(),Do(),void 0);break;case 135:if(Cp())return md(Ri(),Do(),void 0);break;case 160:if(Pu())return md(Ri(),Do(),void 0);break;case 100:return yB(Ri(),Do(),void 0);case 86:return Vi(Ri(),Do(),void 0);case 101:return mp();case 92:return jh();case 117:return B0();case 99:return lA();case 88:return Iu(251);case 83:return Iu(252);case 107:return Kp();case 118:return IC();case 109:return dp();case 111:return IF();case 113:case 85:case 98:return hF();case 89:return PT();case 60:return a_();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(mB())return a_();break}return kp()}function eS(rt){return rt.kind===138}function a_(){let rt=Ri(),Jt=Do(),kr=Ve(!0);if(AD(kr,eS)){let Xr=CB(rt);if(Xr)return Xr;for(let ui of kr)ui.flags|=33554432;return Qa(33554432,()=>MT(rt,Jt,kr))}else return MT(rt,Jt,kr)}function CB(rt){return Qa(33554432,()=>{let Jt=Qp(Fn,rt);if(Jt)return dC(Jt)})}function MT(rt,Jt,kr){switch(Pt()){case 115:case 121:case 87:case 160:case 135:return md(rt,Jt,kr);case 100:return yB(rt,Jt,kr);case 86:return Vi(rt,Jt,kr);case 120:return Wo(rt,Jt,kr);case 156:return ec(rt,Jt,kr);case 94:return dc(rt,Jt,kr);case 162:case 144:case 145:return rI(rt,Jt,kr);case 102:return a3(rt,Jt,kr);case 95:switch(Vs(),Pt()){case 90:case 64:return hY(rt,Jt,kr);case 130:return Yu(rt,Jt,kr);default:return ay(rt,Jt,kr)}default:if(kr){let Xr=yn(282,!0,ts.Declaration_expected);return PNr(Xr,rt),Xr.modifiers=kr,Xr}return}}function vx(){return Vs()===11}function _B(){return Vs(),Pt()===161||Pt()===64}function tI(){return Vs(),!t.hasPrecedingLineBreak()&&(Xs()||Pt()===11)}function zh(rt,Jt){if(Pt()!==19){if(rt&4){Pf();return}if(bg()){YA();return}}return AE(rt,Jt)}function iv(){let rt=Ri();if(Pt()===28)return Zt(C.createOmittedExpression(),rt);let Jt=ad(26),kr=Hf(),Xr=Km();return Zt(C.createBindingElement(Jt,void 0,kr,Xr),rt)}function wb(){let rt=Ri(),Jt=ad(26),kr=cc(),Xr=ff(),ui;kr&&Pt()!==59?(ui=Xr,Xr=void 0):(ws(59),ui=Hf());let Is=Km();return Zt(C.createBindingElement(Jt,Xr,ui,Is),rt)}function _p(){let rt=Ri();ws(19);let Jt=gc(()=>qf(9,wb));return ws(20),Zt(C.createObjectBindingPattern(Jt),rt)}function o2(){let rt=Ri();ws(23);let Jt=gc(()=>qf(10,iv));return ws(24),Zt(C.createArrayBindingPattern(Jt),rt)}function c1(){return Pt()===19||Pt()===23||Pt()===81||cc()}function Hf(rt){return Pt()===23?o2():Pt()===19?_p():Fs(rt)}function mE(){return Od(!0)}function Od(rt){let Jt=Ri(),kr=Do(),Xr=Hf(ts.Private_identifiers_are_not_allowed_in_variable_declarations),ui;rt&&Xr.kind===80&&Pt()===54&&!t.hasPrecedingLineBreak()&&(ui=VA());let Is=Dy(),Hs=r1(Pt())?void 0:Km(),Rs=Er(Xr,ui,Is,Hs);return Hr(Zt(Rs,Jt),kr)}function j(rt){let Jt=Ri(),kr=0;switch(Pt()){case 115:break;case 121:kr|=1;break;case 87:kr|=2;break;case 160:kr|=4;break;case 135:Zo.assert(Cp()),kr|=6,Vs();break;default:Zo.fail()}Vs();let Xr;if(Pt()===165&&so(Z))Xr=bI();else{let ui=Oc();Pr(rt),Xr=qf(8,rt?Od:mE),Pr(ui)}return Zt(Sr(Xr,kr),Jt)}function Z(){return rf()&&Vs()===22}function md(rt,Jt,kr){let Xr=j(!1);YA();let ui=ze(kr,Xr);return Hr(Zt(ui,rt),Jt)}function yB(rt,Jt,kr){let Xr=Ju(),ui=SP(kr);ws(100);let Is=ad(42),Hs=ui&2048?n0():Fs(),Rs=Is?1:0,ja=ui&1024?2:0,Io=pC();ui&32&&_o(!0);let nl=Mc(Rs|ja),kd=mh(59,!1),rd=zh(Rs|ja,ts.or_expected);_o(Xr);let Mg=C.createFunctionDeclaration(kr,Is,Hs,Io,nl,kd,rd);return Hr(Zt(Mg,rt),Jt)}function sv(){if(Pt()===137)return ws(137);if(Pt()===11&&so(Vs)===21)return Ki(()=>{let rt=ra();return rt.text==="constructor"?rt:void 0})}function xy(rt,Jt,kr){return Ki(()=>{if(sv()){let Xr=pC(),ui=Mc(0),Is=mh(59,!1),Hs=zh(0,ts.or_expected),Rs=C.createConstructorDeclaration(kr,ui,Hs);return Rs.typeParameters=Xr,Rs.type=Is,Hr(Zt(Rs,rt),Jt)}})}function Tb(rt,Jt,kr,Xr,ui,Is,Hs,Rs){let ja=Xr?1:0,Io=AD(kr,qbt)?2:0,nl=pC(),kd=Mc(ja|Io),rd=mh(59,!1),Mg=zh(ja|Io,Rs),Gh=C.createMethodDeclaration(kr,Xr,ui,Is,nl,kd,rd,Mg);return Gh.exclamationToken=Hs,Hr(Zt(Gh,rt),Jt)}function WD(rt,Jt,kr,Xr,ui){let Is=!ui&&!t.hasPrecedingLineBreak()?ad(54):void 0,Hs=Dy(),Rs=yo(90112,Km);Nf(Xr,Hs,Rs);let ja=C.createPropertyDeclaration(kr,Xr,ui||Is,Hs,Rs);return Hr(Zt(ja,rt),Jt)}function bB(rt,Jt,kr){let Xr=ad(42),ui=ff(),Is=ad(58);return Xr||Pt()===21||Pt()===30?Tb(rt,Jt,kr,Xr,ui,Is,void 0,ts.or_expected):WD(rt,Jt,kr,ui,Is)}function Rb(rt,Jt,kr,Xr,ui){let Is=ff(),Hs=pC(),Rs=Mc(0),ja=mh(59,!1),Io=zh(ui),nl=Xr===177?C.createGetAccessorDeclaration(kr,Is,Rs,ja,Io):C.createSetAccessorDeclaration(kr,Is,Rs,Io);return nl.typeParameters=Hs,pEt(nl)&&(nl.type=ja),Hr(Zt(nl,rt),Jt)}function RL(){let rt;if(Pt()===60)return!0;for(;Oee(Pt());){if(rt=Pt(),oza(rt))return!0;Vs()}if(Pt()===42||(Dp()&&(rt=Pt(),Vs()),Pt()===23))return!0;if(rt!==void 0){if(!Gce(rt)||rt===153||rt===139)return!0;switch(Pt()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return bg()}}return!1}function mF(rt,Jt,kr){rl(126);let Xr=x(),ui=Hr(Zt(C.createClassStaticBlockDeclaration(Xr),rt),Jt);return ui.modifiers=kr,ui}function x(){let rt=Ql(),Jt=Ju();Qi(!1),_o(!0);let kr=Up(!1);return Qi(rt),_o(Jt),kr}function L(){if(Ju()&&Pt()===135){let rt=Ri(),Jt=Oa(ts.Expression_expected);Vs();let kr=_h(rt,Jt,!0);return o1(rt,kr)}return n1()}function te(){let rt=Ri();if(!rc(60))return;let Jt=vu(L);return Zt(C.createDecorator(Jt),rt)}function Re(rt,Jt,kr){let Xr=Ri(),ui=Pt();if(Pt()===87&&Jt){if(!Ki(Hl))return}else if(kr&&Pt()===126&&so(rS)||rt&&Pt()===126||!aa())return;return Zt(J(ui),Xr)}function Ve(rt,Jt,kr){let Xr=Ri(),ui,Is,Hs,Rs=!1,ja=!1,Io=!1;if(rt&&Pt()===60)for(;Is=te();)ui=vV(ui,Is);for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=vV(ui,Hs),ja=!0;if(ja&&rt&&Pt()===60)for(;Is=te();)ui=vV(ui,Is),Io=!0;if(Io)for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=vV(ui,Hs);return ui&&vr(ui,Xr)}function It(){let rt;if(Pt()===134){let Jt=Ri();Vs();let kr=Zt(J(134),Jt);rt=vr([kr],Jt)}return rt}function dr(){let rt=Ri(),Jt=Do();if(Pt()===27)return Vs(),Hr(Zt(C.createSemicolonClassElement(),rt),Jt);let kr=Ve(!0,!0,!0);if(Pt()===126&&so(rS))return mF(rt,Jt,kr);if(Ea(139))return Rb(rt,Jt,kr,177,0);if(Ea(153))return Rb(rt,Jt,kr,178,0);if(Pt()===137||Pt()===11){let Xr=xy(rt,Jt,kr);if(Xr)return Xr}if(tA())return zS(rt,Jt,kr);if(J1(Pt())||Pt()===11||Pt()===9||Pt()===10||Pt()===42||Pt()===23)if(AD(kr,eS)){for(let Xr of kr)Xr.flags|=33554432;return Qa(33554432,()=>bB(rt,Jt,kr))}else return bB(rt,Jt,kr);if(kr){let Xr=yn(80,!0,ts.Declaration_expected);return WD(rt,Jt,kr,Xr,void 0)}return Zo.fail("Should not have attempted to parse class member declaration.")}function Ur(){let rt=Ri(),Jt=Do(),kr=Ve(!0);if(Pt()===86)return Ta(rt,Jt,kr,231);let Xr=yn(282,!0,ts.Expression_expected);return PNr(Xr,rt),Xr.modifiers=kr,Xr}function mi(){return Ta(Ri(),Do(),void 0,231)}function Vi(rt,Jt,kr){return Ta(rt,Jt,kr,263)}function Ta(rt,Jt,kr,Xr){let ui=Ju();ws(86);let Is=El(),Hs=pC();AD(kr,u$a)&&_o(!0);let Rs=Pg(),ja;ws(19)?(ja=Ci(),ws(20)):ja=bI(),_o(ui);let Io=Xr===263?C.createClassDeclaration(kr,Is,Hs,Rs,ja):C.createClassExpression(kr,Is,Hs,Rs,ja);return Hr(Zt(Io,rt),Jt)}function El(){return cc()&&!Ho()?oa(cc()):void 0}function Ho(){return Pt()===119&&so(op)}function Pg(){if(rn())return qd(22,uA)}function uA(){let rt=Ri(),Jt=Pt();Zo.assert(Jt===96||Jt===119),Vs();let kr=qf(7,ih);return Zt(C.createHeritageClause(Jt,kr),rt)}function ih(){let rt=Ri(),Jt=n1();if(Jt.kind===233)return Jt;let kr=xn();return Zt(C.createExpressionWithTypeArguments(Jt,kr),rt)}function xn(){return Pt()===30?cE(20,nf,30,32):void 0}function rn(){return Pt()===96||Pt()===119}function Ci(){return qd(5,dr)}function Wo(rt,Jt,kr){ws(120);let Xr=Oa(),ui=pC(),Is=Pg(),Hs=hd(),Rs=C.createInterfaceDeclaration(kr,Xr,ui,Is,Hs);return Hr(Zt(Rs,rt),Jt)}function ec(rt,Jt,kr){ws(156),t.hasPrecedingLineBreak()&&Da(ts.Line_break_not_permitted_here);let Xr=Oa(),ui=pC();ws(64);let Is=Pt()===141&&Ki(qS)||nf();YA();let Hs=C.createTypeAliasDeclaration(kr,Xr,ui,Is);return Hr(Zt(Hs,rt),Jt)}function Ra(){let rt=Ri(),Jt=Do(),kr=ff(),Xr=gc(Km);return Hr(Zt(C.createEnumMember(kr,Xr),rt),Jt)}function dc(rt,Jt,kr){ws(94);let Xr=Oa(),ui;ws(19)?(ui=Xa(()=>qf(6,Ra)),ws(20)):ui=bI();let Is=C.createEnumDeclaration(kr,Xr,ui);return Hr(Zt(Is,rt),Jt)}function hu(){let rt=Ri(),Jt;return ws(19)?(Jt=qd(1,Im),ws(20)):Jt=bI(),Zt(C.createModuleBlock(Jt),rt)}function ml(rt,Jt,kr,Xr){let ui=Xr&32,Is=Xr&8?Ca():Oa(),Hs=rc(25)?ml(Ri(),!1,void 0,8|ui):hu(),Rs=C.createModuleDeclaration(kr,Is,Hs,Xr);return Hr(Zt(Rs,rt),Jt)}function Tl(rt,Jt,kr){let Xr=0,ui;Pt()===162?(ui=Oa(),Xr|=2048):(ui=ra(),ui.text=ls(ui.text));let Is;Pt()===19?Is=hu():YA();let Hs=C.createModuleDeclaration(kr,ui,Is,Xr);return Hr(Zt(Hs,rt),Jt)}function rI(rt,Jt,kr){let Xr=0;if(Pt()===162)return Tl(rt,Jt,kr);if(rc(145))Xr|=32;else if(ws(144),Pt()===11)return Tl(rt,Jt,kr);return ml(rt,Jt,kr,Xr)}function tS(){return Pt()===149&&so(Bx)}function Bx(){return Vs()===21}function rS(){return Vs()===19}function ov(){return Vs()===44}function Yu(rt,Jt,kr){ws(130),ws(145);let Xr=Oa();YA();let ui=C.createNamespaceExportDeclaration(Xr);return ui.modifiers=kr,Hr(Zt(ui,rt),Jt)}function a3(rt,Jt,kr){ws(102);let Xr=t.getTokenFullStart(),ui;Xs()&&(ui=Oa());let Is=!1;if(ui?.escapedText==="type"&&(Pt()!==161||Xs()&&so(_B))&&(Xs()||IY())&&(Is=!0,ui=Xs()?Oa():void 0),ui&&!HT())return OD(rt,Jt,kr,ui,Is);let Hs=EB(ui,Xr,Is),Rs=PD(),ja=Sw();YA();let Io=C.createImportDeclaration(kr,Hs,Rs,ja);return Hr(Zt(Io,rt),Jt)}function EB(rt,Jt,kr,Xr=!1){let ui;return(rt||Pt()===42||Pt()===19)&&(ui=_F(rt,Jt,kr,Xr),ws(161)),ui}function Sw(){let rt=Pt();if((rt===118||rt===132)&&!t.hasPrecedingLineBreak())return c3(rt)}function CF(){let rt=Ri(),Jt=J1(Pt())?Ca():wl(11);ws(59);let kr=eI(!0);return Zt(C.createImportAttribute(Jt,kr),rt)}function c3(rt,Jt){let kr=Ri();Jt||ws(rt);let Xr=t.getTokenStart();if(ws(19)){let ui=t.hasPrecedingLineBreak(),Is=qf(24,CF,!0);if(!ws(20)){let Hs=rCe(lr);Hs&&Hs.code===ts._0_expected.code&&Kbt(Hs,FNe(jt,Nt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Zt(C.createImportAttributes(Is,ui,rt),kr)}else{let ui=vr([],Ri(),void 0,!1);return Zt(C.createImportAttributes(ui,!1,rt),kr)}}function IY(){return Pt()===42||Pt()===19}function HT(){return Pt()===28||Pt()===161}function OD(rt,Jt,kr,Xr,ui){ws(64);let Is=NL();YA();let Hs=C.createImportEqualsDeclaration(kr,ui,Xr,Is);return Hr(Zt(Hs,rt),Jt)}function _F(rt,Jt,kr,Xr){let ui;return(!rt||rc(28))&&(Xr&&t.setSkipJsDocLeadingAsterisks(!0),ui=Pt()===42?CE():Sd(275),Xr&&t.setSkipJsDocLeadingAsterisks(!1)),Zt(C.createImportClause(kr,rt,ui),Jt)}function NL(){return tS()?hf():se(!1)}function hf(){let rt=Ri();ws(149),ws(21);let Jt=PD();return ws(22),Zt(C.createExternalModuleReference(Jt),rt)}function PD(){if(Pt()===11){let rt=ra();return rt.text=ls(rt.text),rt}else return td()}function CE(){let rt=Ri();ws(42),ws(130);let Jt=Oa();return Zt(C.createNamespaceImport(Jt),rt)}function a2(){return J1(Pt())||Pt()===11}function SB(rt){return Pt()===11?ra():rt()}function Sd(rt){let Jt=Ri(),kr=rt===275?C.createNamedImports(cE(23,qh,19,20)):C.createNamedExports(cE(23,l1,19,20));return Zt(kr,Jt)}function l1(){let rt=Do();return Hr(Nb(281),rt)}function qh(){return Nb(276)}function Nb(rt){let Jt=Ri(),kr=Gce(Pt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Is=!1,Hs,Rs=!0,ja=SB(Ca);if(ja.kind===80&&ja.escapedText==="type")if(Pt()===130){let kd=Ca();if(Pt()===130){let rd=Ca();a2()?(Is=!0,Hs=kd,ja=SB(nl),Rs=!1):(Hs=ja,ja=rd,Rs=!1)}else a2()?(Hs=ja,Rs=!1,ja=SB(nl)):(Is=!0,ja=kd)}else a2()&&(Is=!0,ja=SB(nl));Rs&&Pt()===130&&(Hs=ja,ws(130),ja=SB(nl)),rt===276&&(ja.kind!==80?(yg(w6(Nt,ja.pos),ja.end,ts.Identifier_expected),ja=Vce(yn(80,!1),ja.pos,ja.pos)):kr&&yg(Xr,ui,ts.Identifier_expected));let Io=rt===276?C.createImportSpecifier(Is,Hs,ja):C.createExportSpecifier(Is,Hs,ja);return Zt(Io,Jt);function nl(){return kr=Gce(Pt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Ca()}}function Ku(rt){return Zt(C.createNamespaceExport(SB(Ca)),rt)}function ay(rt,Jt,kr){let Xr=Ju();_o(!0);let ui,Is,Hs,Rs=rc(156),ja=Ri();rc(42)?(rc(130)&&(ui=Ku(ja)),ws(161),Is=PD()):(ui=Sd(279),(Pt()===161||Pt()===11&&!t.hasPrecedingLineBreak())&&(ws(161),Is=PD()));let Io=Pt();Is&&(Io===118||Io===132)&&!t.hasPrecedingLineBreak()&&(Hs=c3(Io)),YA(),_o(Xr);let nl=C.createExportDeclaration(kr,Rs,ui,Is,Hs);return Hr(Zt(nl,rt),Jt)}function hY(rt,Jt,kr){let Xr=Ju();_o(!0);let ui;rc(64)?ui=!0:ws(90);let Is=eI(!0);YA(),_o(Xr);let Hs=C.createExportAssignment(kr,ui,Is);return Hr(Zt(Hs,rt),Jt)}let mY;(rt=>{rt[rt.SourceElements=0]="SourceElements",rt[rt.BlockStatements=1]="BlockStatements",rt[rt.SwitchClauses=2]="SwitchClauses",rt[rt.SwitchClauseStatements=3]="SwitchClauseStatements",rt[rt.TypeMembers=4]="TypeMembers",rt[rt.ClassMembers=5]="ClassMembers",rt[rt.EnumMembers=6]="EnumMembers",rt[rt.HeritageClauseElement=7]="HeritageClauseElement",rt[rt.VariableDeclarations=8]="VariableDeclarations",rt[rt.ObjectBindingElements=9]="ObjectBindingElements",rt[rt.ArrayBindingElements=10]="ArrayBindingElements",rt[rt.ArgumentExpressions=11]="ArgumentExpressions",rt[rt.ObjectLiteralMembers=12]="ObjectLiteralMembers",rt[rt.JsxAttributes=13]="JsxAttributes",rt[rt.JsxChildren=14]="JsxChildren",rt[rt.ArrayLiteralMembers=15]="ArrayLiteralMembers",rt[rt.Parameters=16]="Parameters",rt[rt.JSDocParameters=17]="JSDocParameters",rt[rt.RestProperties=18]="RestProperties",rt[rt.TypeParameters=19]="TypeParameters",rt[rt.TypeArguments=20]="TypeArguments",rt[rt.TupleElementTypes=21]="TupleElementTypes",rt[rt.HeritageClauses=22]="HeritageClauses",rt[rt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",rt[rt.ImportAttributes=24]="ImportAttributes",rt[rt.JSDocComment=25]="JSDocComment",rt[rt.Count=26]="Count"})(mY||(mY={}));let rN;(rt=>{rt[rt.False=0]="False",rt[rt.True=1]="True",rt[rt.Unknown=2]="Unknown"})(rN||(rN={}));let CY;(rt=>{function Jt(Io,nl,kd){Ya("file.js",Io,99,void 0,1,0),t.setText(Io,nl,kd),qr=t.scan();let rd=kr(),Mg=zr("file.js",99,1,!1,[],J(1),0,zNe),Gh=Ume(lr,Mg);return cr&&(Mg.jsDocDiagnostics=Ume(cr,Mg)),Gc(),rd?{jsDocTypeExpression:rd,diagnostics:Gh}:void 0}rt.parseJSDocTypeExpressionForTests=Jt;function kr(Io){let nl=Ri(),kd=(Io?rc:ws)(19),rd=Qa(16777216,KS);(!Io||kd)&&Am(20);let Mg=C.createJSDocTypeExpression(rd);return Ft(Mg),Zt(Mg,nl)}rt.parseJSDocTypeExpression=kr;function Xr(){let Io=Ri(),nl=rc(19),kd=Ri(),rd=se(!1);for(;Pt()===81;)$i(),Uu(),rd=Zt(C.createJSDocMemberName(rd,Oa()),kd);nl&&Am(20);let Mg=C.createJSDocNameReference(rd);return Ft(Mg),Zt(Mg,Io)}rt.parseJSDocNameReference=Xr;function ui(Io,nl,kd){Ya("",Io,99,void 0,1,0);let rd=Qa(16777216,()=>ja(nl,kd)),Mg=Ume(lr,{languageVariant:0,text:Io});return Gc(),rd?{jsDoc:rd,diagnostics:Mg}:void 0}rt.parseIsolatedJSDocComment=ui;function Is(Io,nl,kd){let rd=qr,Mg=lr.length,Gh=Vr,u1=Qa(16777216,()=>ja(nl,kd));return BDr(u1,Io),Hi&524288&&(cr||(cr=[]),wV(cr,lr,Mg)),qr=rd,lr.length=Mg,Vr=Gh,u1}rt.parseJSDocComment=Is;let Hs;(Io=>{Io[Io.BeginningOfLine=0]="BeginningOfLine",Io[Io.SawAsterisk=1]="SawAsterisk",Io[Io.SavingComments=2]="SavingComments",Io[Io.SavingBackticks=3]="SavingBackticks"})(Hs||(Hs={}));let Rs;(Io=>{Io[Io.Property=1]="Property",Io[Io.Parameter=2]="Parameter",Io[Io.CallbackParameter=4]="CallbackParameter"})(Rs||(Rs={}));function ja(Io=0,nl){let kd=Nt,rd=nl===void 0?kd.length:Io+nl;if(nl=rd-Io,Zo.assert(Io>=0),Zo.assert(Io<=rd),Zo.assert(rd<=kd.length),!Tec(kd,Io))return;let Mg,Gh,u1,Db,nS,_E=[],nN=[],l3=Fn;Fn|=1<<25;let mA=t.scanRange(Io+3,nl-5,vI);return Fn=l3,mA;function vI(){let Es=1,Aa,ha=Io-(kd.lastIndexOf(` +`,Io)+1)+4;function Ua(Pd){Aa||(Aa=ha),_E.push(Pd),ha+=Pd.length}for(Uu();Tx(5););Tx(4)&&(Es=0,ha=0);e:for(;;){switch(Pt()){case 60:RA(_E),nS||(nS=Ri()),Hc(bo(ha)),Es=0,Aa=void 0;break;case 4:_E.push(t.getTokenText()),Es=0,ha=0;break;case 42:let Pd=t.getTokenText();Es===1?(Es=2,Ua(Pd)):(Zo.assert(Es===0),Es=1,ha+=Pd.length);break;case 5:Zo.assert(Es!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let $h=t.getTokenText();Aa!==void 0&&ha+$h.length>Aa&&_E.push($h.slice(Aa-ha)),ha+=$h.length;break;case 1:break e;case 82:Es=2,Ua(t.getTokenValue());break;case 19:Es=2;let c2=t.getTokenFullStart(),g1=t.getTokenEnd()-1,xb=We(g1);if(xb){Db||$d(_E),nN.push(Zt(C.createJSDocText(_E.join("")),Db??Io,c2)),nN.push(xb),_E=[],Db=t.getTokenEnd();break}default:Es=2,Ua(t.getTokenText());break}Es===2?Yn(!1):Uu()}let wc=_E.join("").trimEnd();nN.length&&wc.length&&nN.push(Zt(C.createJSDocText(wc),Db??Io,nS)),nN.length&&Mg&&Zo.assertIsDefined(nS,"having parsed tags implies that the end of the comment span should be set");let CA=Mg&&vr(Mg,Gh,u1);return Zt(C.createJSDocComment(nN.length?vr(nN,Io,nS):wc.length?wc:void 0,CA),Io,rd)}function $d(Es){for(;Es.length&&(Es[0]===` +`||Es[0]==="\r");)Es.shift()}function RA(Es){for(;Es.length;){let Aa=Es[Es.length-1].trimEnd();if(Aa==="")Es.pop();else if(Aa.length$h&&(Ua.push(uv.slice($h-Es)),Pd=2),Es+=uv.length;break;case 19:Pd=2;let fW=t.getTokenFullStart(),bF=t.getTokenEnd()-1,gv=We(bF);gv?(wc.push(Zt(C.createJSDocText(Ua.join("")),CA??ha,fW)),wc.push(gv),Ua=[],CA=t.getTokenEnd()):c2(t.getTokenText());break;case 62:Pd===3?Pd=2:Pd=3,c2(t.getTokenText());break;case 82:Pd!==3&&(Pd=2),c2(t.getTokenValue());break;case 42:if(Pd===0){Pd=1,Es+=1;break}default:Pd!==3&&(Pd=2),c2(t.getTokenText());break}Pd===2||Pd===3?g1=Yn(Pd===3):g1=Uu()}$d(Ua);let xb=Ua.join("").trimEnd();if(wc.length)return xb.length&&wc.push(Zt(C.createJSDocText(xb),CA??ha)),vr(wc,ha,t.getTokenEnd());if(xb.length)return xb}function We(Es){let Aa=Ki(Rr);if(!Aa)return;Uu(),cy();let ha=_t(),Ua=[];for(;Pt()!==20&&Pt()!==4&&Pt()!==1;)Ua.push(t.getTokenText()),Uu();let wc=Aa==="link"?C.createJSDocLink:Aa==="linkcode"?C.createJSDocLinkCode:C.createJSDocLinkPlain;return Zt(wc(ha,Ua.join("")),Es,t.getTokenEnd())}function _t(){if(J1(Pt())){let Es=Ri(),Aa=Ca();for(;rc(25);)Aa=Zt(C.createQualifiedName(Aa,Pt()===81?yn(80,!1):Ca()),Es);for(;Pt()===81;)$i(),Uu(),Aa=Zt(C.createJSDocMemberName(Aa,Oa()),Es);return Aa}}function Rr(){if(iS(),Pt()===19&&Uu()===60&&J1(Uu())){let Es=t.getTokenValue();if(ai(Es))return Es}}function ai(Es){return Es==="link"||Es==="linkcode"||Es==="linkplain"}function Lo(Es,Aa,ha,Ua){return Zt(C.createJSDocUnknownTag(Aa,z(Es,Ri(),ha,Ua)),Es)}function Hc(Es){Es&&(Mg?Mg.push(Es):(Mg=[Es],Gh=Es.pos),u1=Es.end)}function ld(){return iS(),Pt()===19?kr():void 0}function hm(){let Es=Tx(23);Es&&cy();let Aa=Tx(62),ha=Fre();return Aa&&LA(62),Es&&(cy(),ad(64)&&td(),ws(24)),{name:ha,isBracketed:Es}}function av(Es){switch(Es.kind){case 151:return!0;case 188:return av(Es.elementType);default:return _Bi(Es)&&r_(Es.typeName)&&Es.typeName.escapedText==="Object"&&!Es.typeArguments}}function cv(Es,Aa,ha,Ua){let wc=ld(),CA=!wc;iS();let{name:Pd,isBracketed:$h}=hm(),c2=iS();CA&&!so(Rr)&&(wc=ld());let g1=z(Es,Ri(),Ua,c2),xb=wx(wc,Pd,ha,Ua);xb&&(wc=xb,CA=!0);let uv=ha===1?C.createJSDocPropertyTag(Aa,Pd,$h,wc,CA,g1):C.createJSDocParameterTag(Aa,Pd,$h,wc,CA,g1);return Zt(uv,Es)}function wx(Es,Aa,ha,Ua){if(Es&&av(Es.type)){let wc=Ri(),CA,Pd;for(;CA=Ki(()=>g3(ha,Ua,Aa));)CA.kind===341||CA.kind===348?Pd=vV(Pd,CA):CA.kind===345&&_I(CA.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Pd){let $h=Zt(C.createJSDocTypeLiteral(Pd,Es.type.kind===188),wc);return Zt(C.createJSDocTypeExpression($h),wc)}}}function xd(Es,Aa,ha,Ua){AD(Mg,dec)&&yg(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,ZJe(Aa.escapedText));let wc=ld();return Zt(C.createJSDocReturnTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function ji(Es,Aa,ha,Ua){AD(Mg,DDr)&&yg(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,ZJe(Aa.escapedText));let wc=kr(!0),CA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocTypeTag(Aa,wc,CA),Es)}function DL(Es,Aa,ha,Ua){let wc=Pt()===23||so(()=>Uu()===60&&J1(Uu())&&ai(t.getTokenValue()))?void 0:Xr(),CA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSeeTag(Aa,wc,CA),Es)}function eu(Es,Aa,ha,Ua){let wc=ld(),CA=z(Es,Ri(),ha,Ua);return Zt(C.createJSDocThrowsTag(Aa,wc,CA),Es)}function pp(Es,Aa,ha,Ua){let wc=Ri(),CA=Bc(),Pd=t.getTokenFullStart(),$h=z(Es,Pd,ha,Ua);$h||(Pd=t.getTokenFullStart());let c2=typeof $h!="string"?vr(nDr([Zt(CA,wc,Pd)],$h),wc):CA.text+$h;return Zt(C.createJSDocAuthorTag(Aa,c2),Es)}function Bc(){let Es=[],Aa=!1,ha=t.getToken();for(;ha!==1&&ha!==4;){if(ha===30)Aa=!0;else{if(ha===60&&!Aa)break;if(ha===32&&Aa){Es.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}Es.push(t.getTokenText()),ha=Uu()}return C.createJSDocText(Es.join(""))}function Vo(Es,Aa,ha,Ua){let wc=_Y();return Zt(C.createJSDocImplementsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function lv(Es,Aa,ha,Ua){let wc=_Y();return Zt(C.createJSDocAugmentsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function of(Es,Aa,ha,Ua){let wc=kr(!1),CA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSatisfiesTag(Aa,wc,CA),Es)}function c7(Es,Aa,ha,Ua){let wc=t.getTokenFullStart(),CA;Xs()&&(CA=Oa());let Pd=EB(CA,wc,!0,!0),$h=PD(),c2=Sw(),g1=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocImportTag(Aa,Pd,$h,c2,g1),Es)}function _Y(){let Es=rc(19),Aa=Ri(),ha=u3();t.setSkipJsDocLeadingAsterisks(!0);let Ua=xn();t.setSkipJsDocLeadingAsterisks(!1);let wc=C.createExpressionWithTypeArguments(ha,Ua),CA=Zt(wc,Aa);return Es&&ws(20),CA}function u3(){let Es=Ri(),Aa=Rx();for(;rc(25);){let ha=Rx();Aa=Zt(ce(Aa,ha),Es)}return Aa}function yF(Es,Aa,ha,Ua,wc){return Zt(Aa(ha,z(Es,Ri(),Ua,wc)),Es)}function sh(Es,Aa,ha,Ua){let wc=kr(!0);return cy(),Zt(C.createJSDocThisTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function vw(Es,Aa,ha,Ua){let wc=kr(!0);return cy(),Zt(C.createJSDocEnumTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function fl(Es,Aa,ha,Ua){let wc=ld();iS();let CA=vB();cy();let Pd=ye(ha),$h;if(!wc||av(wc.type)){let g1,xb,uv,fW=!1;for(;(g1=Ki(()=>yY(ha)))&&g1.kind!==345;)if(fW=!0,g1.kind===344)if(xb){let bF=Da(ts.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);bF&&Kbt(bF,FNe(jt,Nt,0,0,ts.The_tag_was_first_specified_here));break}else xb=g1;else uv=vV(uv,g1);if(fW){let bF=wc&&wc.type.kind===188,gv=C.createJSDocTypeLiteral(uv,bF);wc=xb&&xb.typeExpression&&!av(xb.typeExpression.type)?xb.typeExpression:Zt(gv,Es),$h=wc.end}}$h=$h||Pd!==void 0?Ri():(CA??wc??Aa).end,Pd||(Pd=z(Es,$h,ha,Ua));let c2=C.createJSDocTypedefTag(Aa,wc,CA,Pd);return Zt(c2,Es,$h)}function vB(Es){let Aa=t.getTokenStart();if(!J1(Pt()))return;let ha=Rx();if(rc(25)){let Ua=vB(!0),wc=C.createModuleDeclaration(void 0,ha,Ua,Es?8:void 0);return Zt(wc,Aa)}return Es&&(ha.flags|=4096),ha}function kb(Es){let Aa=Ri(),ha,Ua;for(;ha=Ki(()=>g3(4,Es));){if(ha.kind===345){_I(ha.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Ua=vV(Ua,ha)}return vr(Ua||[],Aa)}function sN(Es,Aa){let ha=kb(Aa),Ua=Ki(()=>{if(Tx(60)){let wc=bo(Aa);if(wc&&wc.kind===342)return wc}});return Zt(C.createJSDocSignature(void 0,ha,Ua),Es)}function Gre(Es,Aa,ha,Ua){let wc=vB();cy();let CA=ye(ha),Pd=sN(Es,ha);CA||(CA=z(Es,Ri(),ha,Ua));let $h=CA!==void 0?Ri():Pd.end;return Zt(C.createJSDocCallbackTag(Aa,Pd,wc,CA),Es,$h)}function kL(Es,Aa,ha,Ua){cy();let wc=ye(ha),CA=sN(Es,ha);wc||(wc=z(Es,Ri(),ha,Ua));let Pd=wc!==void 0?Ri():CA.end;return Zt(C.createJSDocOverloadTag(Aa,CA,wc),Es,Pd)}function SJ(Es,Aa){for(;!r_(Es)||!r_(Aa);)if(!r_(Es)&&!r_(Aa)&&Es.right.escapedText===Aa.right.escapedText)Es=Es.left,Aa=Aa.left;else return!1;return Es.escapedText===Aa.escapedText}function yY(Es){return g3(1,Es)}function g3(Es,Aa,ha){let Ua=!0,wc=!1;for(;;)switch(Uu()){case 60:if(Ua){let CA=l7(Es,Aa);return CA&&(CA.kind===341||CA.kind===348)&&ha&&(r_(CA.name)||!SJ(ha,CA.name.left))?!1:CA}wc=!1;break;case 4:Ua=!0,wc=!1;break;case 42:wc&&(Ua=!1),wc=!0;break;case 80:Ua=!1;break;case 1:return!1}}function l7(Es,Aa){Zo.assert(Pt()===60);let ha=t.getTokenFullStart();Uu();let Ua=Rx(),wc=iS(),CA;switch(Ua.escapedText){case"type":return Es===1&&ji(ha,Ua);case"prop":case"property":CA=1;break;case"arg":case"argument":case"param":CA=6;break;case"template":return bY(ha,Ua,Aa,wc);case"this":return sh(ha,Ua,Aa,wc);default:return!1}return Es&CA?cv(ha,Ua,Es,Aa):!1}function vJ(){let Es=Ri(),Aa=Tx(23);Aa&&cy();let ha=Ve(!1,!0),Ua=Rx(ts.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),wc;if(Aa&&(cy(),ws(64),wc=Qa(16777216,KS),ws(24)),!iCe(Ua))return Zt(C.createTypeParameterDeclaration(ha,Ua,void 0,wc),Es)}function u7(){let Es=Ri(),Aa=[];do{cy();let ha=vJ();ha!==void 0&&Aa.push(ha),iS()}while(Tx(28));return vr(Aa,Es)}function bY(Es,Aa,ha,Ua){let wc=Pt()===19?kr():void 0,CA=u7();return Zt(C.createJSDocTemplateTag(Aa,wc,CA,z(Es,Ri(),ha,Ua)),Es)}function Tx(Es){return Pt()===Es?(Uu(),!0):!1}function Fre(){let Es=Rx();for(rc(23)&&ws(24);rc(25);){let Aa=Rx();rc(23)&&ws(24),Es=P(Es,Aa)}return Es}function Rx(Es){if(!J1(Pt()))return yn(80,!Es,Es||ts.Identifier_expected);zt++;let Aa=t.getTokenStart(),ha=t.getTokenEnd(),Ua=Pt(),wc=ls(t.getTokenValue()),CA=Zt(F(wc,Ua),Aa,ha);return Uu(),CA}}})(CY=e.JSDocParser||(e.JSDocParser={}))})(oCe||(oCe={}));var YSi=new WeakSet;function Oec(e){YSi.has(e)&&Zo.fail("Source file has already been incrementally parsed"),YSi.add(e)}var YBi=new WeakSet;function Pec(e){return YBi.has(e)}function JNr(e){YBi.add(e)}var IEt;(e=>{function t(N,B,F,Q){if(Q=Q||Zo.shouldAssert(2),C(N,B,F,Q),k7a(F))return N;if(N.statements.length===0)return oCe.parseSourceFile(N.fileName,B,N.languageVersion,void 0,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);Oec(N),oCe.fixupParentReferences(N);let J=N.text,ae=b(N),ne=f(N,F);C(N,B,ne,Q),Zo.assert(ne.span.start<=F.span.start),Zo.assert(v6(ne.span)===v6(F.span)),Zo.assert(v6(_Je(ne))===v6(_Je(F)));let ce=_Je(ne).length-ne.span.length;A(N,ne.span.start,v6(ne.span),v6(_Je(ne)),ce,J,B,Q);let fe=oCe.parseSourceFile(N.fileName,B,N.languageVersion,ae,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);return fe.commentDirectives=r(N.commentDirectives,fe.commentDirectives,ne.span.start,v6(ne.span),ce,J,B,Q),fe.impliedNodeFormat=N.impliedNodeFormat,mec(N,fe),fe}e.updateSourceFile=t;function r(N,B,F,Q,J,ae,ne,ce){if(!N)return B;let fe,ue=!1;for(let be of N){let{range:Se,type:De}=be;if(Se.endQ){de();let k={range:{pos:Se.pos+J,end:Se.end+J},type:De};fe=vV(fe,k),ce&&Zo.assert(ae.substring(Se.pos,Se.end)===ne.substring(k.range.pos,k.range.end))}}return de(),fe;function de(){ue||(ue=!0,fe?B&&fe.push(...B):fe=B)}}function n(N,B,F,Q,J,ae,ne){F?fe(N):ce(N);return;function ce(ue){let de="";if(ne&&a(ue)&&(de=J.substring(ue.pos,ue.end)),_Si(ue,B),Vce(ue,ue.pos+Q,ue.end+Q),ne&&a(ue)&&Zo.assert(de===ae.substring(ue.pos,ue.end)),Jk(ue,ce,fe),nCe(ue))for(let be of ue.jsDoc)ce(be);l(ue,ne)}function fe(ue){Vce(ue,ue.pos+Q,ue.end+Q);for(let de of ue)ce(de)}}function a(N){switch(N.kind){case 11:case 9:case 80:return!0}return!1}function o(N,B,F,Q,J){Zo.assert(N.end>=B,"Adjusting an element that was entirely before the change range"),Zo.assert(N.pos<=F,"Adjusting an element that was entirely after the change range"),Zo.assert(N.pos<=N.end);let ae=Math.min(N.pos,Q),ne=N.end>=F?N.end+J:Math.min(N.end,Q);if(Zo.assert(ae<=ne),N.parent){let ce=N.parent;Zo.assertGreaterThanOrEqual(ae,ce.pos),Zo.assertLessThanOrEqual(ne,ce.end)}Vce(N,ae,ne)}function l(N,B){if(B){let F=N.pos,Q=J=>{Zo.assert(J.pos>=F),F=J.end};if(nCe(N))for(let J of N.jsDoc)Q(J);Jk(N,Q),Zo.assert(F<=N.end)}}function A(N,B,F,Q,J,ae,ne,ce){fe(N);return;function fe(de){if(Zo.assert(de.pos<=de.end),de.pos>F){n(de,N,!1,J,ae,ne,ce);return}let be=de.end;if(be>=B){if(JNr(de),_Si(de,N),o(de,B,F,Q,J),Jk(de,fe,ue),nCe(de))for(let Se of de.jsDoc)fe(Se);l(de,ce);return}Zo.assert(beF){n(de,N,!0,J,ae,ne,ce);return}let be=de.end;if(be>=B){JNr(de),o(de,B,F,Q,J);for(let Se of de)fe(Se);return}Zo.assert(be0&&ae<=1;ae++){let ne=I(N,F);Zo.assert(ne.pos<=F);let ce=ne.pos;F=Math.max(0,ce-1)}let Q=D7a(F,v6(B.span)),J=B.newLength+(B.span.start-F);return Wvi(Q,J)}function I(N,B){let F=N,Q;if(Jk(N,ae),Q){let ne=J(Q);ne.pos>F.pos&&(F=ne)}return F;function J(ne){for(;;){let ce=yqa(ne);if(ce)ne=ce;else return ne}}function ae(ne){if(!iCe(ne))if(ne.pos<=B){if(ne.pos>=F.pos&&(F=ne),BB),!0}}function C(N,B,F,Q){let J=N.text;if(F&&(Zo.assert(J.length-F.span.length+F.newLength===B.length),Q||Zo.shouldAssert(3))){let ae=J.substr(0,F.span.start),ne=B.substr(0,F.span.start);Zo.assert(ae===ne);let ce=J.substring(v6(F.span),J.length),fe=B.substring(v6(_Je(F)),B.length);Zo.assert(ce===fe)}}function b(N){let B=N.statements,F=0;Zo.assert(F=ue.pos&&ne=ue.pos&&ne{N[N.Value=-1]="Value"})(E||(E={}))})(IEt||(IEt={}));function Mec(e){return Hec(e)!==void 0}function Hec(e){let t=Bvi(e,Mqa,!1);if(t)return t;if(jja(e,".ts")){let r=vvi(e),n=r.lastIndexOf(".d.");if(n>=0)return r.substring(n)}}function Yec(e,t,r,n){if(e){if(e==="import")return 99;if(e==="require")return 1;n(t,r-t,ts.resolution_mode_should_be_either_require_or_import)}}function Qec(e,t){let r=[];for(let n of ZNr(t,0)||L2){let a=t.substring(n.pos,n.end);jec(r,n,a)}e.pragmas=new Map;for(let n of r){if(e.pragmas.has(n.name)){let a=e.pragmas.get(n.name);a instanceof Array?a.push(n.args):e.pragmas.set(n.name,[a,n.args]);continue}e.pragmas.set(n.name,n.args)}}function Xec(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,n)=>{switch(n){case"reference":{let a=e.referencedFiles,o=e.typeReferenceDirectives,l=e.libReferenceDirectives;BP(mNr(r),A=>{let{types:f,lib:I,path:C,["resolution-mode"]:b,preserve:E}=A.arguments,N=E==="true"?!0:void 0;if(A.arguments["no-default-lib"]==="true")e.hasNoDefaultLib=!0;else if(f){let B=Yec(b,f.pos,f.end,t);o.push({pos:f.pos,end:f.end,fileName:f.value,...B?{resolutionMode:B}:{},...N?{preserve:N}:{}})}else I?l.push({pos:I.pos,end:I.end,fileName:I.value,...N?{preserve:N}:{}}):C?a.push({pos:C.pos,end:C.end,fileName:C.value,...N?{preserve:N}:{}}):t(A.range.pos,A.range.end-A.range.pos,ts.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=DNr(mNr(r),a=>({name:a.arguments.name,path:a.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let a of r)e.moduleName&&t(a.range.pos,a.range.end-a.range.pos,ts.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=a.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{BP(mNr(r),a=>{(!e.checkJsDirective||a.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:n==="ts-check",end:a.range.end,pos:a.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Zo.fail("Unhandled pragma kind")}})}var TNr=new Map;function Jec(e){if(TNr.has(e))return TNr.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return TNr.set(e,t),t}var Uec=/^\/\/\/\s*<(\S+)\s.*?\/>/m,Kec=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function jec(e,t,r){let n=t.kind===2&&Uec.exec(r);if(n){let o=n[1].toLowerCase(),l=Svi[o];if(!l||!(l.kind&1))return;if(l.args){let A={};for(let f of l.args){let I=Jec(f.name).exec(r);if(!I&&!f.optional)return;if(I){let C=I[2]||I[3];if(f.captureSpan){let b=t.pos+I.index+I[1].length+1;A[f.name]={value:C,pos:b,end:b+C.length}}else A[f.name]=C}}e.push({name:o,args:{arguments:A,range:t}})}else e.push({name:o,args:{arguments:{},range:t}});return}let a=t.kind===2&&Kec.exec(r);if(a)return QSi(e,t,2,a);if(t.kind===3){let o=/@(\S+)(\s+(?:\S.*)?)?$/gm,l;for(;l=o.exec(r);)QSi(e,t,4,l)}}function QSi(e,t,r,n){if(!n)return;let a=n[1].toLowerCase(),o=Svi[a];if(!o||!(o.kind&r))return;let l=n[2],A=zec(o,l);A!=="fail"&&e.push({name:a,args:{arguments:A,range:t}})}function zec(e,t){if(!t)return{};if(!e.args)return{};let r=t.trim().split(/\s+/),n={};for(let a=0;an.kind<309||n.kind>351);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=rCe(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return Jk(this,e,t)}};function qec(e,t){let r=[];if(Eza(e))return e.forEachChild(l=>{r.push(l)}),r;xJe.setText((t||e.getSourceFile()).text);let n=e.pos,a=l=>{GJe(r,n,l.pos,e),r.push(l),n=l.end},o=l=>{GJe(r,n,l.pos,e),r.push($ec(l,e)),n=l.end};return BP(e.jsDoc,a),n=e.pos,e.forEachChild(a,o),GJe(r,n,e.end,e),xJe.setText(void 0),r}function GJe(e,t,r,n){for(xJe.resetTokenState(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function nEt(e,t){if(!e)return L2;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(KBi))){let n=new Set;for(let a of e){let o=jBi(t,a,l=>{var A;if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualJsDocTags(a,t):((A=l.declarations)==null?void 0:A.length)===1?l.getJsDocTags(t):void 0});o&&(r=[...o,...r])}}return r}function kJe(e,t){if(!e)return L2;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(KBi))){let n=new Set;for(let a of e){let o=jBi(t,a,l=>{if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualDocumentationComment(a,t):l.getDocumentationComment(t)});o&&(r=r.length===0?o.slice():o.concat(lineBreakPart(),r))}}return r}function jBi(e,t,r){var n;let a=((n=t.parent)==null?void 0:n.kind)===176?t.parent.parent:t.parent;if(!a)return;let o=uqa(t);return Cja(tqa(a),l=>{let A=e.getTypeAtLocation(l),f=o&&A.symbol?e.getTypeOfSymbol(A.symbol):A,I=e.getPropertyOfType(f,t.symbol.name);return I?r(I):void 0})}var ntc=class extends GDr{constructor(e,t,r){super(e,t,r)}update(e,t){return Wec(this,e,t)}getLineAndCharacterOfPosition(e){return xvi(this,e)}getLineStarts(){return FNr(this)}getPositionOfLineAndCharacter(e,t,r){return C7a(FNr(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),n;t+1>=r.length&&(n=this.getEnd()),n||(n=r[t+1]-1);let a=this.getFullText();return a[n]===` +`&&a[n-1]==="\r"?n-1:n}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=xja();return this.forEachChild(a),e;function t(o){let l=n(o);l&&e.add(l,o)}function r(o){let l=e.get(o);return l||e.set(o,l=[]),l}function n(o){let l=fDr(o);return l&&(IBi(l)&&Pce(l.expression)?l.expression.name.text:Kvi(l)?getNameFromPropertyName(l):void 0)}function a(o){switch(o.kind){case 262:case 218:case 174:case 173:let l=o,A=n(l);if(A){let C=r(A),b=rCe(C);b&&l.parent===b.parent&&l.symbol===b.symbol?l.body&&!b.body&&(C[C.length-1]=l):C.push(l)}Jk(o,a);break;case 263:case 231:case 264:case 265:case 266:case 267:case 271:case 281:case 276:case 273:case 274:case 177:case 178:case 187:t(o),Jk(o,a);break;case 169:if(!HJe(o,31))break;case 260:case 208:{let C=o;if(dza(C.name)){Jk(C.name,a);break}C.initializer&&a(C.initializer)}case 306:case 172:case 171:t(o);break;case 278:let f=o;f.exportClause&&(K$a(f.exportClause)?BP(f.exportClause.elements,a):a(f.exportClause.name));break;case 272:let I=o.importClause;I&&(I.name&&t(I.name),I.namedBindings&&(I.namedBindings.kind===274?t(I.namedBindings):BP(I.namedBindings.elements,a)));break;case 226:_Dr(o)!==0&&t(o);default:Jk(o,a)}}}},itc=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}getLineAndCharacterOfPosition(e){return xvi(this,e)}};function stc(){return{getNodeConstructor:()=>GDr,getTokenConstructor:()=>XBi,getIdentifierConstructor:()=>JBi,getPrivateIdentifierConstructor:()=>UBi,getSourceFileConstructor:()=>ntc,getSymbolConstructor:()=>etc,getTypeConstructor:()=>ttc,getSignatureConstructor:()=>rtc,getSourceMapSourceConstructor:()=>itc}}var otc=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],pTu=[...otc,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];Nqa(stc());var zBi=new Proxy({},{get:()=>!0}),qBi=zBi["4.8"];function N6(e,t=!1){var r;if(e!=null){if(qBi){if(t||xDr(e)){let n=V7a(e);return n?[...n]:void 0}return}return(r=e.modifiers)==null?void 0:r.filter(n=>!TDr(n))}}function MNe(e,t=!1){var r;if(e!=null){if(qBi){if(t||Bec(e)){let n=L7a(e);return n?[...n]:void 0}return}return(r=e.decorators)==null?void 0:r.filter(TDr)}}var atc={},$Bi=new Proxy({},{get:(e,t)=>t}),ctc=$Bi,ltc=$Bi,hs=ctc,gD=ltc,ewi=zBi["5.0"],cu=Np,utc=new Set([cu.AmpersandAmpersandToken,cu.BarBarToken,cu.QuestionQuestionToken]),gtc=new Set([Np.AmpersandAmpersandEqualsToken,Np.AmpersandEqualsToken,Np.AsteriskAsteriskEqualsToken,Np.AsteriskEqualsToken,Np.BarBarEqualsToken,Np.BarEqualsToken,Np.CaretEqualsToken,Np.EqualsToken,Np.GreaterThanGreaterThanEqualsToken,Np.GreaterThanGreaterThanGreaterThanEqualsToken,Np.LessThanLessThanEqualsToken,Np.MinusEqualsToken,Np.PercentEqualsToken,Np.PlusEqualsToken,Np.QuestionQuestionEqualsToken,Np.SlashEqualsToken]),Atc=new Set([cu.AmpersandAmpersandToken,cu.AmpersandToken,cu.AsteriskAsteriskToken,cu.AsteriskToken,cu.BarBarToken,cu.BarToken,cu.CaretToken,cu.EqualsEqualsEqualsToken,cu.EqualsEqualsToken,cu.ExclamationEqualsEqualsToken,cu.ExclamationEqualsToken,cu.GreaterThanEqualsToken,cu.GreaterThanGreaterThanGreaterThanToken,cu.GreaterThanGreaterThanToken,cu.GreaterThanToken,cu.InKeyword,cu.InstanceOfKeyword,cu.LessThanEqualsToken,cu.LessThanLessThanToken,cu.LessThanToken,cu.MinusToken,cu.PercentToken,cu.PlusToken,cu.SlashToken]);function dtc(e){return gtc.has(e.kind)}function ptc(e){return utc.has(e.kind)}function ftc(e){return Atc.has(e.kind)}function Zce(e){return vy(e)}function Itc(e){return e.kind!==cu.SemicolonClassElement}function Rh(e,t){let r=N6(t);return r?.some(n=>n.kind===e)===!0}function htc(e){let t=N6(e);return t==null?null:t[t.length-1]??null}function mtc(e){return e.kind===cu.CommaToken}function Ctc(e){return e.kind===cu.SingleLineCommentTrivia||e.kind===cu.MultiLineCommentTrivia}function _tc(e){return e.kind===cu.JSDocComment}function ytc(e){if(dtc(e))return{type:hs.AssignmentExpression,operator:Zce(e.kind)};if(ptc(e))return{type:hs.LogicalExpression,operator:Zce(e.kind)};if(ftc(e))return{type:hs.BinaryExpression,operator:Zce(e.kind)};throw new Error(`Unexpected binary operator ${vy(e.kind)}`)}function iEt(e,t){let r=t.getLineAndCharacterOfPosition(e);return{column:r.character,line:r.line+1}}function eCe(e,t){let[r,n]=e.map(a=>iEt(a,t));return{end:n,start:r}}function btc(e){if(e.kind===Np.Block)switch(e.parent.kind){case Np.Constructor:case Np.GetAccessor:case Np.SetAccessor:case Np.ArrowFunction:case Np.FunctionExpression:case Np.FunctionDeclaration:case Np.MethodDeclaration:return!0;default:return!1}return!0}function EJe(e,t){return[e.getStart(t),e.getEnd()]}function Etc(e){return e.kind>=cu.FirstToken&&e.kind<=cu.LastToken}function twi(e){return e.kind>=cu.JsxElement&&e.kind<=cu.JsxAttribute}function UNr(e){return e.flags&vP.Let?"let":(e.flags&vP.AwaitUsing)===vP.AwaitUsing?"await using":e.flags&vP.Const?"const":e.flags&vP.Using?"using":"var"}function zme(e){let t=N6(e);if(t!=null)for(let r of t)switch(r.kind){case cu.PublicKeyword:return"public";case cu.ProtectedKeyword:return"protected";case cu.PrivateKeyword:return"private";default:break}}function ZNe(e,t,r){return n(t);function n(a){return rza(a)&&a.pos===e.end?a:xtc(a.getChildren(r),o=>(o.pos<=e.pos&&o.end>e.end||o.pos===e.end)&&ktc(o,r)?n(o):void 0)}}function Stc(e,t){let r=e;for(;r;){if(t(r))return r;r=r.parent}}function vtc(e){return!!Stc(e,twi)}function XSi(e){return YNe(!1,e,/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,t=>{let r=t.slice(1,-1);if(r[0]==="#"){let n=r[1]==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return n>1114111?t:String.fromCodePoint(n)}return atc[r]||t})}function LNe(e){return e.kind===cu.ComputedPropertyName}function JSi(e){return!!e.questionToken}function rwi(e){return e.type===hs.ChainExpression}function Btc(e,t){return rwi(t)&&e.expression.kind!==Np.ParenthesizedExpression}function wtc(e){let t;if(ewi&&e.kind===cu.Identifier?t=Pvi(e):"originalKeywordKind"in e&&(t=e.originalKeywordKind),t)return t===cu.NullKeyword?gD.Null:t>=cu.FirstFutureReservedWord&&t<=cu.LastKeyword?gD.Identifier:gD.Keyword;if(e.kind>=cu.FirstKeyword&&e.kind<=cu.LastFutureReservedWord)return e.kind===cu.FalseKeyword||e.kind===cu.TrueKeyword?gD.Boolean:gD.Keyword;if(e.kind>=cu.FirstPunctuation&&e.kind<=cu.LastPunctuation)return gD.Punctuator;if(e.kind>=cu.NoSubstitutionTemplateLiteral&&e.kind<=cu.TemplateTail)return gD.Template;switch(e.kind){case cu.NumericLiteral:return gD.Numeric;case cu.JsxText:return gD.JSXText;case cu.StringLiteral:return e.parent.kind===cu.JsxAttribute||e.parent.kind===cu.JsxElement?gD.JSXText:gD.String;case cu.RegularExpressionLiteral:return gD.RegularExpression;case cu.Identifier:case cu.ConstructorKeyword:case cu.GetKeyword:case cu.SetKeyword:default:}return e.kind===cu.Identifier&&(twi(e.parent)||e.parent.kind===cu.PropertyAccessExpression&&vtc(e))?gD.JSXIdentifier:gD.Identifier}function Ttc(e,t){let r=e.kind===cu.JsxText?e.getFullStart():e.getStart(t),n=e.getEnd(),a=t.text.slice(r,n),o=wtc(e),l=[r,n],A=eCe(l,t);return o===gD.RegularExpression?{type:o,loc:A,range:l,regex:{flags:a.slice(a.lastIndexOf("/")+1),pattern:a.slice(1,a.lastIndexOf("/"))},value:a}:{type:o,loc:A,range:l,value:a}}function Rtc(e){let t=[];function r(n){Ctc(n)||_tc(n)||(Etc(n)&&n.kind!==cu.EndOfFileToken?t.push(Ttc(n,e)):n.getChildren(e).forEach(r))}return r(e),t}var Ntc=class extends Error{fileName;location;constructor(e,t,r){super(e),this.fileName=t,this.location=r,Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:new.target.name})}get index(){return this.location.start.offset}get lineNumber(){return this.location.start.line}get column(){return this.location.start.column}};function nwi(e,t,r,n=r){let[a,o]=[r,n].map(l=>{let{character:A,line:f}=t.getLineAndCharacterOfPosition(l);return{column:A,line:f+1,offset:l}});return new Ntc(e,t.fileName,{end:o,start:a})}function Dtc(e){var t;return!!("illegalDecorators"in e&&(t=e.illegalDecorators)!=null&&t.length)}function ktc(e,t){return e.kind===cu.EndOfFileToken?!!e.jsDoc:e.getWidth(t)!==0}function xtc(e,t){if(e!==void 0)for(let r=0;r=0&&e.kind!==cu.EndOfFileToken}function USi(e){return!Ztc(e)}function Ltc(e){return Ovi(e.parent,jvi)}function Vtc(e){return Rh(cu.AbstractKeyword,e)}function Wtc(e){if(e.parameters.length&&!VBi(e)){let t=e.parameters[0];if(Otc(t))return t}return null}function Otc(e){return iwi(e.name)}function Ptc(e){switch(e.kind){case cu.ClassDeclaration:return!0;case cu.ClassExpression:return!0;case cu.PropertyDeclaration:{let{parent:t}=e;return!!(fEt(t)||UNe(t)&&!Vtc(e))}case cu.GetAccessor:case cu.SetAccessor:case cu.MethodDeclaration:{let{parent:t}=e;return!!e.body&&(fEt(t)||UNe(t))}case cu.Parameter:{let{parent:t}=e,r=t.parent;return!!t&&"body"in t&&!!t.body&&(t.kind===cu.Constructor||t.kind===cu.MethodDeclaration||t.kind===cu.SetAccessor)&&Wtc(t)!==e&&!!r&&r.kind===cu.ClassDeclaration}}return!1}function ZDr(e){switch(e.kind){case cu.Identifier:return!0;case cu.PropertyAccessExpression:case cu.ElementAccessExpression:return!(e.flags&vP.OptionalChain);case cu.ParenthesizedExpression:case cu.TypeAssertionExpression:case cu.AsExpression:case cu.SatisfiesExpression:case cu.ExpressionWithTypeArguments:case cu.NonNullExpression:return ZDr(e.expression);default:return!1}}function Mtc(e){let t=N6(e),r=e;for(;(!t||t.length===0)&&PJe(r.parent);){let n=N6(r.parent);n!=null&&n.length&&(t=n),r=r.parent}return t}var Pn=Np;function Htc(e){return nwi("message"in e&&e.message||e.messageText,e.file,e.start)}var og,KNr,swi,tf,VR,HNe,jNr,Ytc=class{constructor(e,t){pja(this,og),mJe(this,"allowPattern",!1),mJe(this,"ast"),mJe(this,"esTreeNodeToTSNodeMap",new WeakMap),mJe(this,"options"),mJe(this,"tsNodeToESTreeNodeMap",new WeakMap),this.ast=e,this.options={...t}}assertModuleSpecifier(e,t){var r;!t&&e.moduleSpecifier==null&&Ig(this,og,VR).call(this,e,"Module specifier must be a string literal."),e.moduleSpecifier&&((r=e.moduleSpecifier)==null?void 0:r.kind)!==Pn.StringLiteral&&Ig(this,og,VR).call(this,e.moduleSpecifier,"Module specifier must be a string literal.")}convertBindingNameWithTypeAnnotation(e,t,r){let n=this.convertPattern(e);return t&&(n.typeAnnotation=this.convertTypeAnnotation(t,r),this.fixParentLocation(n,n.typeAnnotation.range)),n}convertBodyExpressions(e,t){let r=btc(t);return e.map(n=>{let a=this.convertChild(n);if(r){if(a!=null&&a.expression&&wBi(n)&&CEt(n.expression)){let o=a.expression.raw;return a.directive=o.slice(1,-1),a}r=!1}return a}).filter(n=>n)}convertChainExpression(e,t){let{child:r,isOptional:n}=e.type===hs.MemberExpression?{child:e.object,isOptional:e.optional}:e.type===hs.CallExpression?{child:e.callee,isOptional:e.optional}:{child:e.expression,isOptional:!1},a=Btc(t,r);if(!a&&!n)return e;if(a&&rwi(r)){let o=r.expression;e.type===hs.MemberExpression?e.object=o:e.type===hs.CallExpression?e.callee=o:e.expression=o}return this.createNode(t,{type:hs.ChainExpression,expression:e})}convertChild(e,t){return this.converter(e,t,!1)}convertPattern(e,t){return this.converter(e,t,!0)}convertTypeAnnotation(e,t){let r=t?.kind===Pn.FunctionType||t?.kind===Pn.ConstructorType?2:1,n=[e.getFullStart()-r,e.end],a=eCe(n,this.ast);return{type:hs.TSTypeAnnotation,loc:a,range:n,typeAnnotation:this.convertChild(e)}}convertTypeArgumentsToTypeParameterInstantiation(e,t){let r=ZNe(e,this.ast,this.ast);return this.createNode(t,{type:hs.TSTypeParameterInstantiation,range:[e.pos-1,r.end],params:e.map(n=>this.convertChild(n))})}convertTSTypeParametersToTypeParametersDeclaration(e){let t=ZNe(e,this.ast,this.ast),r=[e.pos-1,t.end];return{type:hs.TSTypeParameterDeclaration,loc:eCe(r,this.ast),range:r,params:e.map(n=>this.convertChild(n))}}convertParameters(e){return e!=null&&e.length?e.map(t=>{var r;let n=this.convertChild(t);return n.decorators=((r=MNe(t))==null?void 0:r.map(a=>this.convertChild(a)))??[],n}):[]}converter(e,t,r){if(!e)return null;Ig(this,og,swi).call(this,e);let n=this.allowPattern;r!=null&&(this.allowPattern=r);let a=this.convertNode(e,t??e.parent);return this.registerTSNodeInNodeMap(e,a),this.allowPattern=n,a}convertImportAttributes(e){return e==null?[]:e.elements.map(t=>this.convertChild(t))}convertJSXIdentifier(e){let t=this.createNode(e,{type:hs.JSXIdentifier,name:e.getText()});return this.registerTSNodeInNodeMap(e,t),t}convertJSXNamespaceOrIdentifier(e){if(e.kind===Np.JsxNamespacedName){let n=this.createNode(e,{type:hs.JSXNamespacedName,name:this.createNode(e.name,{type:hs.JSXIdentifier,name:e.name.text}),namespace:this.createNode(e.namespace,{type:hs.JSXIdentifier,name:e.namespace.text})});return this.registerTSNodeInNodeMap(e,n),n}let t=e.getText(),r=t.indexOf(":");if(r>0){let n=EJe(e,this.ast),a=this.createNode(e,{type:hs.JSXNamespacedName,range:n,name:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0]+r+1,n[1]],name:t.slice(r+1)}),namespace:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0],n[0]+r],name:t.slice(0,r)})});return this.registerTSNodeInNodeMap(e,a),a}return this.convertJSXIdentifier(e)}convertJSXTagName(e,t){let r;switch(e.kind){case Pn.PropertyAccessExpression:e.name.kind===Pn.PrivateIdentifier&&Ig(this,og,tf).call(this,e.name,"Non-private identifier expected."),r=this.createNode(e,{type:hs.JSXMemberExpression,object:this.convertJSXTagName(e.expression,t),property:this.convertJSXIdentifier(e.name)});break;case Pn.ThisKeyword:case Pn.Identifier:default:return this.convertJSXNamespaceOrIdentifier(e)}return this.registerTSNodeInNodeMap(e,r),r}convertMethodSignature(e){return this.createNode(e,{type:hs.TSMethodSignature,accessibility:zme(e),computed:LNe(e.name),key:this.convertChild(e.name),kind:(()=>{switch(e.kind){case Pn.GetAccessor:return"get";case Pn.SetAccessor:return"set";case Pn.MethodSignature:return"method"}})(),optional:JSi(e),params:this.convertParameters(e.parameters),readonly:Rh(Pn.ReadonlyKeyword,e),returnType:e.type&&this.convertTypeAnnotation(e.type,e),static:Rh(Pn.StaticKeyword,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}fixParentLocation(e,t){t[0]e.range[1]&&(e.range[1]=t[1],e.loc.end=iEt(e.range[1],this.ast))}convertNode(e,t){var r,n,a,o,l,A,f,I;switch(e.kind){case Pn.SourceFile:return this.createNode(e,{type:hs.Program,range:[e.getStart(this.ast),e.endOfFileToken.end],body:this.convertBodyExpressions(e.statements,e),comments:void 0,sourceType:e.externalModuleIndicator?"module":"script",tokens:void 0});case Pn.Block:return this.createNode(e,{type:hs.BlockStatement,body:this.convertBodyExpressions(e.statements,e)});case Pn.Identifier:return Ftc(e)?this.createNode(e,{type:hs.ThisExpression}):this.createNode(e,{type:hs.Identifier,decorators:[],name:e.text,optional:!1,typeAnnotation:void 0});case Pn.PrivateIdentifier:return this.createNode(e,{type:hs.PrivateIdentifier,name:e.text.slice(1)});case Pn.WithStatement:return this.createNode(e,{type:hs.WithStatement,body:this.convertChild(e.statement),object:this.convertChild(e.expression)});case Pn.ReturnStatement:return this.createNode(e,{type:hs.ReturnStatement,argument:this.convertChild(e.expression)});case Pn.LabeledStatement:return this.createNode(e,{type:hs.LabeledStatement,body:this.convertChild(e.statement),label:this.convertChild(e.label)});case Pn.ContinueStatement:return this.createNode(e,{type:hs.ContinueStatement,label:this.convertChild(e.label)});case Pn.BreakStatement:return this.createNode(e,{type:hs.BreakStatement,label:this.convertChild(e.label)});case Pn.IfStatement:return this.createNode(e,{type:hs.IfStatement,alternate:this.convertChild(e.elseStatement),consequent:this.convertChild(e.thenStatement),test:this.convertChild(e.expression)});case Pn.SwitchStatement:return e.caseBlock.clauses.filter(C=>C.kind===Pn.DefaultClause).length>1&&Ig(this,og,tf).call(this,e,"A 'default' clause cannot appear more than once in a 'switch' statement."),this.createNode(e,{type:hs.SwitchStatement,cases:e.caseBlock.clauses.map(C=>this.convertChild(C)),discriminant:this.convertChild(e.expression)});case Pn.CaseClause:case Pn.DefaultClause:return this.createNode(e,{type:hs.SwitchCase,consequent:e.statements.map(C=>this.convertChild(C)),test:e.kind===Pn.CaseClause?this.convertChild(e.expression):null});case Pn.ThrowStatement:return e.expression.end===e.expression.pos&&Ig(this,og,VR).call(this,e,"A throw statement must throw an expression."),this.createNode(e,{type:hs.ThrowStatement,argument:this.convertChild(e.expression)});case Pn.TryStatement:return this.createNode(e,{type:hs.TryStatement,block:this.convertChild(e.tryBlock),finalizer:this.convertChild(e.finallyBlock),handler:this.convertChild(e.catchClause)});case Pn.CatchClause:return(r=e.variableDeclaration)!=null&&r.initializer&&Ig(this,og,tf).call(this,e.variableDeclaration.initializer,"Catch clause variable cannot have an initializer."),this.createNode(e,{type:hs.CatchClause,body:this.convertChild(e.block),param:e.variableDeclaration?this.convertBindingNameWithTypeAnnotation(e.variableDeclaration.name,e.variableDeclaration.type):null});case Pn.WhileStatement:return this.createNode(e,{type:hs.WhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Pn.DoStatement:return this.createNode(e,{type:hs.DoWhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Pn.ForStatement:return this.createNode(e,{type:hs.ForStatement,body:this.convertChild(e.statement),init:this.convertChild(e.initializer),test:this.convertChild(e.condition),update:this.convertChild(e.incrementor)});case Pn.ForInStatement:return Ig(this,og,KNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForInStatement,body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Pn.ForOfStatement:return Ig(this,og,KNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForOfStatement,await:!!(e.awaitModifier&&e.awaitModifier.kind===Pn.AwaitKeyword),body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Pn.FunctionDeclaration:{let C=Rh(Pn.DeclareKeyword,e),b=Rh(Pn.AsyncKeyword,e),E=!!e.asteriskToken;C?e.body?Ig(this,og,tf).call(this,e,"An implementation cannot be declared in ambient contexts."):b?Ig(this,og,tf).call(this,e,"'async' modifier cannot be used in an ambient context."):E&&Ig(this,og,tf).call(this,e,"Generators are not allowed in an ambient context."):!e.body&&E&&Ig(this,og,tf).call(this,e,"A function signature cannot be declared as a generator.");let N=this.createNode(e,{type:e.body?hs.FunctionDeclaration:hs.TSDeclareFunction,async:b,body:this.convertChild(e.body)||void 0,declare:C,expression:!1,generator:E,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,N)}case Pn.VariableDeclaration:{let C=!!e.exclamationToken,b=this.convertChild(e.initializer),E=this.convertBindingNameWithTypeAnnotation(e.name,e.type,e);return C&&(b?Ig(this,og,tf).call(this,e,"Declarations with initializers cannot also have definite assignment assertions."):(E.type!==hs.Identifier||!E.typeAnnotation)&&Ig(this,og,tf).call(this,e,"Declarations with definite assignment assertions must also have type annotations.")),this.createNode(e,{type:hs.VariableDeclarator,definite:C,id:E,init:b})}case Pn.VariableStatement:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarationList.declarations.map(b=>this.convertChild(b)),declare:Rh(Pn.DeclareKeyword,e),kind:UNr(e.declarationList)});return C.declarations.length||Ig(this,og,VR).call(this,e,"A variable declaration list must have at least one variable declarator."),(C.kind==="using"||C.kind==="await using")&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init==null&&Ig(this,og,tf).call(this,b,`'${C.kind}' declarations must be initialized.`),C.declarations[E].id.type!==hs.Identifier&&Ig(this,og,tf).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),(C.declare||["await using","const","using"].includes(C.kind))&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].definite&&Ig(this,og,tf).call(this,b,"A definite assignment assertion '!' is not permitted in this context.")}),C.declare&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init&&(["let","var"].includes(C.kind)||C.declarations[E].id.typeAnnotation)&&Ig(this,og,tf).call(this,b,"Initializers are not permitted in ambient contexts.")}),this.fixExports(e,C)}case Pn.VariableDeclarationList:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarations.map(b=>this.convertChild(b)),declare:!1,kind:UNr(e)});return(C.kind==="using"||C.kind==="await using")&&e.declarations.forEach((b,E)=>{C.declarations[E].init!=null&&Ig(this,og,tf).call(this,b,`'${C.kind}' declarations may not be initialized in for statement.`),C.declarations[E].id.type!==hs.Identifier&&Ig(this,og,tf).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),C}case Pn.ExpressionStatement:return this.createNode(e,{type:hs.ExpressionStatement,directive:void 0,expression:this.convertChild(e.expression)});case Pn.ThisKeyword:return this.createNode(e,{type:hs.ThisExpression});case Pn.ArrayLiteralExpression:return this.allowPattern?this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0}):this.createNode(e,{type:hs.ArrayExpression,elements:e.elements.map(C=>this.convertChild(C))});case Pn.ObjectLiteralExpression:{if(this.allowPattern)return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.properties.map(b=>this.convertPattern(b)),typeAnnotation:void 0});let C=[];for(let b of e.properties)(b.kind===Pn.GetAccessor||b.kind===Pn.SetAccessor||b.kind===Pn.MethodDeclaration)&&!b.body&&Ig(this,og,VR).call(this,b.end-1,"'{' expected."),C.push(this.convertChild(b));return this.createNode(e,{type:hs.ObjectExpression,properties:C})}case Pn.PropertyAssignment:{let{exclamationToken:C,questionToken:b}=e;return b&&Ig(this,og,tf).call(this,b,"A property assignment cannot have a question token."),C&&Ig(this,og,tf).call(this,C,"A property assignment cannot have an exclamation token."),this.createNode(e,{type:hs.Property,computed:LNe(e.name),key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!1,value:this.converter(e.initializer,e,this.allowPattern)})}case Pn.ShorthandPropertyAssignment:{let{exclamationToken:C,modifiers:b,questionToken:E}=e;return b&&Ig(this,og,tf).call(this,b[0],"A shorthand property assignment cannot have modifiers."),E&&Ig(this,og,tf).call(this,E,"A shorthand property assignment cannot have a question token."),C&&Ig(this,og,tf).call(this,C,"A shorthand property assignment cannot have an exclamation token."),e.objectAssignmentInitializer?this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.name),optional:!1,right:this.convertChild(e.objectAssignmentInitializer),typeAnnotation:void 0})}):this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.convertChild(e.name)})}case Pn.ComputedPropertyName:return this.convertChild(e.expression);case Pn.PropertyDeclaration:{let C=Rh(Pn.AbstractKeyword,e);C&&e.initializer&&Ig(this,og,tf).call(this,e.initializer,"Abstract property cannot have an initializer.");let b=Rh(Pn.AccessorKeyword,e),E=b?C?hs.TSAbstractAccessorProperty:hs.AccessorProperty:C?hs.TSAbstractPropertyDefinition:hs.PropertyDefinition,N=this.convertChild(e.name);return this.createNode(e,{type:E,accessibility:zme(e),computed:LNe(e.name),declare:Rh(Pn.DeclareKeyword,e),decorators:((n=MNe(e))==null?void 0:n.map(B=>this.convertChild(B)))??[],definite:!!e.exclamationToken,key:N,optional:(N.type===hs.Literal||e.name.kind===Pn.Identifier||e.name.kind===Pn.ComputedPropertyName||e.name.kind===Pn.PrivateIdentifier)&&!!e.questionToken,override:Rh(Pn.OverrideKeyword,e),readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e),value:C?null:this.convertChild(e.initializer)})}case Pn.GetAccessor:case Pn.SetAccessor:if(e.parent.kind===Pn.InterfaceDeclaration||e.parent.kind===Pn.TypeLiteral)return this.convertMethodSignature(e);case Pn.MethodDeclaration:{let C=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:Rh(Pn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:null,params:[],returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});C.typeParameters&&this.fixParentLocation(C,C.typeParameters.range);let b;if(t.kind===Pn.ObjectLiteralExpression)C.params=e.parameters.map(E=>this.convertChild(E)),b=this.createNode(e,{type:hs.Property,computed:LNe(e.name),key:this.convertChild(e.name),kind:"init",method:e.kind===Pn.MethodDeclaration,optional:!!e.questionToken,shorthand:!1,value:C});else{C.params=this.convertParameters(e.parameters);let E=Rh(Pn.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition;b=this.createNode(e,{type:E,accessibility:zme(e),computed:LNe(e.name),decorators:((a=MNe(e))==null?void 0:a.map(N=>this.convertChild(N)))??[],key:this.convertChild(e.name),kind:"method",optional:!!e.questionToken,override:Rh(Pn.OverrideKeyword,e),static:Rh(Pn.StaticKeyword,e),value:C})}return e.kind===Pn.GetAccessor?b.kind="get":e.kind===Pn.SetAccessor?b.kind="set":!b.static&&e.name.kind===Pn.StringLiteral&&e.name.text==="constructor"&&b.type!==hs.Property&&(b.kind="constructor"),b}case Pn.Constructor:{let C=htc(e),b=(C&&ZNe(C,e,this.ast))??e.getFirstToken(),E=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:!1,body:this.convertChild(e.body),declare:!1,expression:!1,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});E.typeParameters&&this.fixParentLocation(E,E.typeParameters.range);let N=this.createNode(e,{type:hs.Identifier,range:[b.getStart(this.ast),b.end],decorators:[],name:"constructor",optional:!1,typeAnnotation:void 0}),B=Rh(Pn.StaticKeyword,e);return this.createNode(e,{type:Rh(Pn.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition,accessibility:zme(e),computed:!1,decorators:[],key:N,kind:B?"method":"constructor",optional:!1,override:!1,static:B,value:E})}case Pn.FunctionExpression:return this.createNode(e,{type:hs.FunctionExpression,async:Rh(Pn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Pn.SuperKeyword:return this.createNode(e,{type:hs.Super});case Pn.ArrayBindingPattern:return this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0});case Pn.OmittedExpression:return null;case Pn.ObjectBindingPattern:return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.elements.map(C=>this.convertPattern(C)),typeAnnotation:void 0});case Pn.BindingElement:{if(t.kind===Pn.ArrayBindingPattern){let b=this.convertChild(e.name,t);return e.initializer?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:b,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}):e.dotDotDotToken?this.createNode(e,{type:hs.RestElement,argument:b,decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):b}let C;return e.dotDotDotToken?C=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.propertyName??e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):C=this.createNode(e,{type:hs.Property,computed:!!(e.propertyName&&e.propertyName.kind===Pn.ComputedPropertyName),key:this.convertChild(e.propertyName??e.name),kind:"init",method:!1,optional:!1,shorthand:!e.propertyName,value:this.convertChild(e.name)}),e.initializer&&(C.value=this.createNode(e,{type:hs.AssignmentPattern,range:[e.name.getStart(this.ast),e.initializer.end],decorators:[],left:this.convertChild(e.name),optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0})),C}case Pn.ArrowFunction:return this.createNode(e,{type:hs.ArrowFunctionExpression,async:Rh(Pn.AsyncKeyword,e),body:this.convertChild(e.body),expression:e.body.kind!==Pn.Block,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Pn.YieldExpression:return this.createNode(e,{type:hs.YieldExpression,argument:this.convertChild(e.expression),delegate:!!e.asteriskToken});case Pn.AwaitExpression:return this.createNode(e,{type:hs.AwaitExpression,argument:this.convertChild(e.expression)});case Pn.NoSubstitutionTemplateLiteral:return this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.createNode(e,{type:hs.TemplateElement,tail:!0,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-1)}})]});case Pn.TemplateExpression:{let C=this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.convertChild(e.head)]});return e.templateSpans.forEach(b=>{C.expressions.push(this.convertChild(b.expression)),C.quasis.push(this.convertChild(b.literal))}),C}case Pn.TaggedTemplateExpression:return this.createNode(e,{type:hs.TaggedTemplateExpression,quasi:this.convertChild(e.template),tag:this.convertChild(e.tag),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Pn.TemplateHead:case Pn.TemplateMiddle:case Pn.TemplateTail:{let C=e.kind===Pn.TemplateTail;return this.createNode(e,{type:hs.TemplateElement,tail:C,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-(C?1:2))}})}case Pn.SpreadAssignment:case Pn.SpreadElement:return this.allowPattern?this.createNode(e,{type:hs.RestElement,argument:this.convertPattern(e.expression),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):this.createNode(e,{type:hs.SpreadElement,argument:this.convertChild(e.expression)});case Pn.Parameter:{let C,b;return e.dotDotDotToken?C=b=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):e.initializer?(C=this.convertChild(e.name),b=this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:C,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}),N6(e)&&(b.range[0]=C.range[0],b.loc=eCe(b.range,this.ast))):C=b=this.convertChild(e.name,t),e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),this.fixParentLocation(C,C.typeAnnotation.range)),e.questionToken&&(e.questionToken.end>C.range[1]&&(C.range[1]=e.questionToken.end,C.loc.end=iEt(C.range[1],this.ast)),C.optional=!0),N6(e)?this.createNode(e,{type:hs.TSParameterProperty,accessibility:zme(e),decorators:[],override:Rh(Pn.OverrideKeyword,e),parameter:b,readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e)}):b}case Pn.ClassDeclaration:!e.name&&(!Rh(Np.ExportKeyword,e)||!Rh(Np.DefaultKeyword,e))&&Ig(this,og,VR).call(this,e,"A class declaration without the 'default' modifier must have a name.");case Pn.ClassExpression:{let C=e.heritageClauses??[],b=e.kind===Pn.ClassDeclaration?hs.ClassDeclaration:hs.ClassExpression,E,N;for(let F of C){let{token:Q,types:J}=F;J.length===0&&Ig(this,og,VR).call(this,F,`'${vy(Q)}' list cannot be empty.`),Q===Pn.ExtendsKeyword?(E&&Ig(this,og,VR).call(this,F,"'extends' clause already seen."),N&&Ig(this,og,VR).call(this,F,"'extends' clause must precede 'implements' clause."),J.length>1&&Ig(this,og,VR).call(this,J[1],"Classes can only extend a single class."),E??(E=F)):Q===Pn.ImplementsKeyword&&(N&&Ig(this,og,VR).call(this,F,"'implements' clause already seen."),N??(N=F))}let B=this.createNode(e,{type:b,abstract:Rh(Pn.AbstractKeyword,e),body:this.createNode(e,{type:hs.ClassBody,range:[e.members.pos-1,e.end],body:e.members.filter(Itc).map(F=>this.convertChild(F))}),declare:Rh(Pn.DeclareKeyword,e),decorators:((o=MNe(e))==null?void 0:o.map(F=>this.convertChild(F)))??[],id:this.convertChild(e.name),implements:N?.types.map(F=>this.convertChild(F))??[],superClass:E!=null&&E.types[0]?this.convertChild(E.types[0].expression):null,superTypeArguments:void 0,typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return(l=E?.types[0])!=null&&l.typeArguments&&(B.superTypeArguments=this.convertTypeArgumentsToTypeParameterInstantiation(E.types[0].typeArguments,E.types[0])),this.fixExports(e,B)}case Pn.ModuleBlock:return this.createNode(e,{type:hs.TSModuleBlock,body:this.convertBodyExpressions(e.statements,e)});case Pn.ImportDeclaration:{this.assertModuleSpecifier(e,!1);let C=this.createNode(e,Ig(this,og,HNe).call(this,{type:hs.ImportDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),importKind:"value",source:this.convertChild(e.moduleSpecifier),specifiers:[]},"assertions","attributes",!0));if(e.importClause&&(e.importClause.isTypeOnly&&(C.importKind="type"),e.importClause.name&&C.specifiers.push(this.convertChild(e.importClause)),e.importClause.namedBindings))switch(e.importClause.namedBindings.kind){case Pn.NamespaceImport:C.specifiers.push(this.convertChild(e.importClause.namedBindings));break;case Pn.NamedImports:C.specifiers.push(...e.importClause.namedBindings.elements.map(b=>this.convertChild(b)));break}return C}case Pn.NamespaceImport:return this.createNode(e,{type:hs.ImportNamespaceSpecifier,local:this.convertChild(e.name)});case Pn.ImportSpecifier:return this.createNode(e,{type:hs.ImportSpecifier,imported:this.convertChild(e.propertyName??e.name),importKind:e.isTypeOnly?"type":"value",local:this.convertChild(e.name)});case Pn.ImportClause:{let C=this.convertChild(e.name);return this.createNode(e,{type:hs.ImportDefaultSpecifier,range:C.range,local:C})}case Pn.ExportDeclaration:return((A=e.exportClause)==null?void 0:A.kind)===Pn.NamedExports?(this.assertModuleSpecifier(e,!0),this.createNode(e,Ig(this,og,HNe).call(this,{type:hs.ExportNamedDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),declaration:null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier),specifiers:e.exportClause.elements.map(C=>this.convertChild(C,e))},"assertions","attributes",!0))):(this.assertModuleSpecifier(e,!1),this.createNode(e,Ig(this,og,HNe).call(this,{type:hs.ExportAllDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),exported:((f=e.exportClause)==null?void 0:f.kind)===Pn.NamespaceExport?this.convertChild(e.exportClause.name):null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier)},"assertions","attributes",!0)));case Pn.ExportSpecifier:{let C=e.propertyName??e.name;return C.kind===Pn.StringLiteral&&t.kind===Pn.ExportDeclaration&&((I=t.moduleSpecifier)==null?void 0:I.kind)!==Pn.StringLiteral&&Ig(this,og,tf).call(this,C,"A string literal cannot be used as a local exported binding without `from`."),this.createNode(e,{type:hs.ExportSpecifier,exported:this.convertChild(e.name),exportKind:e.isTypeOnly?"type":"value",local:this.convertChild(C)})}case Pn.ExportAssignment:return e.isExportEquals?this.createNode(e,{type:hs.TSExportAssignment,expression:this.convertChild(e.expression)}):this.createNode(e,{type:hs.ExportDefaultDeclaration,declaration:this.convertChild(e.expression),exportKind:"value"});case Pn.PrefixUnaryExpression:case Pn.PostfixUnaryExpression:{let C=Zce(e.operator);return C==="++"||C==="--"?(ZDr(e.operand)||Ig(this,og,VR).call(this,e.operand,"Invalid left-hand side expression in unary operation"),this.createNode(e,{type:hs.UpdateExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===Pn.PrefixUnaryExpression})):this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===Pn.PrefixUnaryExpression})}case Pn.DeleteExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"delete",prefix:!0});case Pn.VoidExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"void",prefix:!0});case Pn.TypeOfExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"typeof",prefix:!0});case Pn.TypeOperator:return this.createNode(e,{type:hs.TSTypeOperator,operator:Zce(e.operator),typeAnnotation:this.convertChild(e.type)});case Pn.BinaryExpression:{if(mtc(e.operatorToken)){let b=this.createNode(e,{type:hs.SequenceExpression,expressions:[]}),E=this.convertChild(e.left);return E.type===hs.SequenceExpression&&e.left.kind!==Pn.ParenthesizedExpression?b.expressions.push(...E.expressions):b.expressions.push(E),b.expressions.push(this.convertChild(e.right)),b}let C=ytc(e.operatorToken);return this.allowPattern&&C.type===hs.AssignmentExpression?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.left,e),optional:!1,right:this.convertChild(e.right),typeAnnotation:void 0}):this.createNode(e,{...C,left:this.converter(e.left,e,C.type===hs.AssignmentExpression),right:this.convertChild(e.right)})}case Pn.PropertyAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.name),E=this.createNode(e,{type:hs.MemberExpression,computed:!1,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case Pn.ElementAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.argumentExpression),E=this.createNode(e,{type:hs.MemberExpression,computed:!0,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case Pn.CallExpression:{if(e.expression.kind===Pn.ImportKeyword)return e.arguments.length!==1&&e.arguments.length!==2&&Ig(this,og,VR).call(this,e.arguments[2]??e,"Dynamic import requires exactly one or two arguments."),this.createNode(e,Ig(this,og,HNe).call(this,{type:hs.ImportExpression,options:e.arguments[1]?this.convertChild(e.arguments[1]):null,source:this.convertChild(e.arguments[0])},"attributes","options",!0));let C=this.convertChild(e.expression),b=e.arguments.map(B=>this.convertChild(B)),E=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),N=this.createNode(e,{type:hs.CallExpression,arguments:b,callee:C,optional:e.questionDotToken!=null,typeArguments:E});return this.convertChainExpression(N,e)}case Pn.NewExpression:{let C=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e);return this.createNode(e,{type:hs.NewExpression,arguments:e.arguments?e.arguments.map(b=>this.convertChild(b)):[],callee:this.convertChild(e.expression),typeArguments:C})}case Pn.ConditionalExpression:return this.createNode(e,{type:hs.ConditionalExpression,alternate:this.convertChild(e.whenFalse),consequent:this.convertChild(e.whenTrue),test:this.convertChild(e.condition)});case Pn.MetaProperty:return this.createNode(e,{type:hs.MetaProperty,meta:this.createNode(e.getFirstToken(),{type:hs.Identifier,decorators:[],name:Zce(e.keywordToken),optional:!1,typeAnnotation:void 0}),property:this.convertChild(e.name)});case Pn.Decorator:return this.createNode(e,{type:hs.Decorator,expression:this.convertChild(e.expression)});case Pn.StringLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:t.kind===Pn.JsxAttribute?XSi(e.text):e.text});case Pn.NumericLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:Number(e.text)});case Pn.BigIntLiteral:{let C=EJe(e,this.ast),b=this.ast.text.slice(C[0],C[1]),E=YNe(!1,b.slice(0,-1),"_",""),N=typeof BigInt<"u"?BigInt(E):null;return this.createNode(e,{type:hs.Literal,range:C,bigint:N==null?E:String(N),raw:b,value:N})}case Pn.RegularExpressionLiteral:{let C=e.text.slice(1,e.text.lastIndexOf("/")),b=e.text.slice(e.text.lastIndexOf("/")+1),E=null;try{E=new RegExp(C,b)}catch{}return this.createNode(e,{type:hs.Literal,raw:e.text,regex:{flags:b,pattern:C},value:E})}case Pn.TrueKeyword:return this.createNode(e,{type:hs.Literal,raw:"true",value:!0});case Pn.FalseKeyword:return this.createNode(e,{type:hs.Literal,raw:"false",value:!1});case Pn.NullKeyword:return this.createNode(e,{type:hs.Literal,raw:"null",value:null});case Pn.EmptyStatement:return this.createNode(e,{type:hs.EmptyStatement});case Pn.DebuggerStatement:return this.createNode(e,{type:hs.DebuggerStatement});case Pn.JsxElement:return this.createNode(e,{type:hs.JSXElement,children:e.children.map(C=>this.convertChild(C)),closingElement:this.convertChild(e.closingElement),openingElement:this.convertChild(e.openingElement)});case Pn.JsxFragment:return this.createNode(e,{type:hs.JSXFragment,children:e.children.map(C=>this.convertChild(C)),closingFragment:this.convertChild(e.closingFragment),openingFragment:this.convertChild(e.openingFragment)});case Pn.JsxSelfClosingElement:return this.createNode(e,{type:hs.JSXElement,children:[],closingElement:null,openingElement:this.createNode(e,{type:hs.JSXOpeningElement,range:EJe(e,this.ast),attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!0,typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):void 0})});case Pn.JsxOpeningElement:return this.createNode(e,{type:hs.JSXOpeningElement,attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!1,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Pn.JsxClosingElement:return this.createNode(e,{type:hs.JSXClosingElement,name:this.convertJSXTagName(e.tagName,e)});case Pn.JsxOpeningFragment:return this.createNode(e,{type:hs.JSXOpeningFragment});case Pn.JsxClosingFragment:return this.createNode(e,{type:hs.JSXClosingFragment});case Pn.JsxExpression:{let C=e.expression?this.convertChild(e.expression):this.createNode(e,{type:hs.JSXEmptyExpression,range:[e.getStart(this.ast)+1,e.getEnd()-1]});return e.dotDotDotToken?this.createNode(e,{type:hs.JSXSpreadChild,expression:C}):this.createNode(e,{type:hs.JSXExpressionContainer,expression:C})}case Pn.JsxAttribute:return this.createNode(e,{type:hs.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(e.name),value:this.convertChild(e.initializer)});case Pn.JsxText:{let C=e.getFullStart(),b=e.getEnd(),E=this.ast.text.slice(C,b);return this.createNode(e,{type:hs.JSXText,range:[C,b],raw:E,value:XSi(E)})}case Pn.JsxSpreadAttribute:return this.createNode(e,{type:hs.JSXSpreadAttribute,argument:this.convertChild(e.expression)});case Pn.QualifiedName:return this.createNode(e,{type:hs.TSQualifiedName,left:this.convertChild(e.left),right:this.convertChild(e.right)});case Pn.TypeReference:return this.createNode(e,{type:hs.TSTypeReference,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),typeName:this.convertChild(e.typeName)});case Pn.TypeParameter:return this.createNode(e,{type:hs.TSTypeParameter,const:Rh(Pn.ConstKeyword,e),constraint:e.constraint&&this.convertChild(e.constraint),default:e.default?this.convertChild(e.default):void 0,in:Rh(Pn.InKeyword,e),name:this.convertChild(e.name),out:Rh(Pn.OutKeyword,e)});case Pn.ThisType:return this.createNode(e,{type:hs.TSThisType});case Pn.AnyKeyword:case Pn.BigIntKeyword:case Pn.BooleanKeyword:case Pn.NeverKeyword:case Pn.NumberKeyword:case Pn.ObjectKeyword:case Pn.StringKeyword:case Pn.SymbolKeyword:case Pn.UnknownKeyword:case Pn.VoidKeyword:case Pn.UndefinedKeyword:case Pn.IntrinsicKeyword:return this.createNode(e,{type:hs[`TS${Pn[e.kind]}`]});case Pn.NonNullExpression:{let C=this.createNode(e,{type:hs.TSNonNullExpression,expression:this.convertChild(e.expression)});return this.convertChainExpression(C,e)}case Pn.TypeLiteral:return this.createNode(e,{type:hs.TSTypeLiteral,members:e.members.map(C=>this.convertChild(C))});case Pn.ArrayType:return this.createNode(e,{type:hs.TSArrayType,elementType:this.convertChild(e.elementType)});case Pn.IndexedAccessType:return this.createNode(e,{type:hs.TSIndexedAccessType,indexType:this.convertChild(e.indexType),objectType:this.convertChild(e.objectType)});case Pn.ConditionalType:return this.createNode(e,{type:hs.TSConditionalType,checkType:this.convertChild(e.checkType),extendsType:this.convertChild(e.extendsType),falseType:this.convertChild(e.falseType),trueType:this.convertChild(e.trueType)});case Pn.TypeQuery:return this.createNode(e,{type:hs.TSTypeQuery,exprName:this.convertChild(e.exprName),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Pn.MappedType:return e.members&&e.members.length>0&&Ig(this,og,VR).call(this,e.members[0],"A mapped type may not declare properties or methods."),this.createNode(e,Ig(this,og,jNr).call(this,{type:hs.TSMappedType,constraint:this.convertChild(e.typeParameter.constraint),key:this.convertChild(e.typeParameter.name),nameType:this.convertChild(e.nameType)??null,optional:e.questionToken&&(e.questionToken.kind===Pn.QuestionToken||Zce(e.questionToken.kind)),readonly:e.readonlyToken&&(e.readonlyToken.kind===Pn.ReadonlyKeyword||Zce(e.readonlyToken.kind)),typeAnnotation:e.type&&this.convertChild(e.type)},"typeParameter","'constraint' and 'key'",this.convertChild(e.typeParameter)));case Pn.ParenthesizedExpression:return this.convertChild(e.expression,t);case Pn.TypeAliasDeclaration:{let C=this.createNode(e,{type:hs.TSTypeAliasDeclaration,declare:Rh(Pn.DeclareKeyword,e),id:this.convertChild(e.name),typeAnnotation:this.convertChild(e.type),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,C)}case Pn.MethodSignature:return this.convertMethodSignature(e);case Pn.PropertySignature:{let{initializer:C}=e;return C&&Ig(this,og,tf).call(this,C,"A property signature cannot have an initializer."),this.createNode(e,{type:hs.TSPropertySignature,accessibility:zme(e),computed:LNe(e.name),key:this.convertChild(e.name),optional:JSi(e),readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)})}case Pn.IndexSignature:return this.createNode(e,{type:hs.TSIndexSignature,accessibility:zme(e),parameters:e.parameters.map(C=>this.convertChild(C)),readonly:Rh(Pn.ReadonlyKeyword,e),static:Rh(Pn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)});case Pn.ConstructorType:return this.createNode(e,{type:hs.TSConstructorType,abstract:Rh(Pn.AbstractKeyword,e),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Pn.FunctionType:{let{modifiers:C}=e;C&&Ig(this,og,tf).call(this,C[0],"A function type cannot have modifiers.")}case Pn.ConstructSignature:case Pn.CallSignature:{let C=e.kind===Pn.ConstructSignature?hs.TSConstructSignatureDeclaration:e.kind===Pn.CallSignature?hs.TSCallSignatureDeclaration:hs.TSFunctionType;return this.createNode(e,{type:C,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}case Pn.ExpressionWithTypeArguments:{let C=t.kind,b=C===Pn.InterfaceDeclaration?hs.TSInterfaceHeritage:C===Pn.HeritageClause?hs.TSClassImplements:hs.TSInstantiationExpression;return this.createNode(e,{type:b,expression:this.convertChild(e.expression),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)})}case Pn.InterfaceDeclaration:{let C=e.heritageClauses??[],b=[];for(let N of C){N.token!==Pn.ExtendsKeyword&&Ig(this,og,tf).call(this,N,N.token===Pn.ImplementsKeyword?"Interface declaration cannot have 'implements' clause.":"Unexpected token.");for(let B of N.types)b.push(this.convertChild(B,e))}let E=this.createNode(e,{type:hs.TSInterfaceDeclaration,body:this.createNode(e,{type:hs.TSInterfaceBody,range:[e.members.pos-1,e.end],body:e.members.map(N=>this.convertChild(N))}),declare:Rh(Pn.DeclareKeyword,e),extends:b,id:this.convertChild(e.name),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,E)}case Pn.TypePredicate:{let C=this.createNode(e,{type:hs.TSTypePredicate,asserts:e.assertsModifier!=null,parameterName:this.convertChild(e.parameterName),typeAnnotation:null});return e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),C.typeAnnotation.loc=C.typeAnnotation.typeAnnotation.loc,C.typeAnnotation.range=C.typeAnnotation.typeAnnotation.range),C}case Pn.ImportType:{let C=EJe(e,this.ast);if(e.isTypeOf){let E=ZNe(e.getFirstToken(),e,this.ast);C[0]=E.getStart(this.ast)}let b=this.createNode(e,{type:hs.TSImportType,range:C,argument:this.convertChild(e.argument),attributes:this.convertImportAttributes(e.attributes),qualifier:this.convertChild(e.qualifier),typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null});return e.isTypeOf?this.createNode(e,{type:hs.TSTypeQuery,exprName:b,typeArguments:void 0}):b}case Pn.EnumDeclaration:{let C=e.members.map(E=>this.convertChild(E)),b=this.createNode(e,Ig(this,og,jNr).call(this,{type:hs.TSEnumDeclaration,body:this.createNode(e,{type:hs.TSEnumBody,range:[e.members.pos-1,e.end],members:C}),const:Rh(Pn.ConstKeyword,e),declare:Rh(Pn.DeclareKeyword,e),id:this.convertChild(e.name)},"members","'body.members'",e.members.map(E=>this.convertChild(E))));return this.fixExports(e,b)}case Pn.EnumMember:return this.createNode(e,{type:hs.TSEnumMember,computed:e.name.kind===Np.ComputedPropertyName,id:this.convertChild(e.name),initializer:e.initializer&&this.convertChild(e.initializer)});case Pn.ModuleDeclaration:{let C=Rh(Pn.DeclareKeyword,e),b=this.createNode(e,{type:hs.TSModuleDeclaration,...(()=>{if(e.flags&vP.GlobalAugmentation){let N=this.convertChild(e.name),B=this.convertChild(e.body);return(B==null||B.type===hs.TSModuleDeclaration)&&Ig(this,og,VR).call(this,e.body??e,"Expected a valid module body"),N.type!==hs.Identifier&&Ig(this,og,VR).call(this,e.name,"global module augmentation must have an Identifier id"),{body:B,declare:!1,global:!1,id:N,kind:"global"}}if(!(e.flags&vP.Namespace)){let N=this.convertChild(e.body);return{kind:"module",...N!=null?{body:N}:{},declare:!1,global:!1,id:this.convertChild(e.name)}}e.body==null&&Ig(this,og,VR).call(this,e,"Expected a module body"),e.name.kind!==Np.Identifier&&Ig(this,og,VR).call(this,e.name,"`namespace`s must have an Identifier id");let E=this.createNode(e.name,{type:hs.Identifier,range:[e.name.getStart(this.ast),e.name.getEnd()],decorators:[],name:e.name.text,optional:!1,typeAnnotation:void 0});for(;e.body&&PJe(e.body)&&e.body.name;){e=e.body,C||(C=Rh(Pn.DeclareKeyword,e));let N=e.name,B=this.createNode(N,{type:hs.Identifier,range:[N.getStart(this.ast),N.getEnd()],decorators:[],name:N.text,optional:!1,typeAnnotation:void 0});E=this.createNode(N,{type:hs.TSQualifiedName,range:[E.range[0],B.range[1]],left:E,right:B})}return{body:this.convertChild(e.body),declare:!1,global:!1,id:E,kind:"namespace"}})()});return b.declare=C,e.flags&vP.GlobalAugmentation&&(b.global=!0),this.fixExports(e,b)}case Pn.ParenthesizedType:return this.convertChild(e.type);case Pn.UnionType:return this.createNode(e,{type:hs.TSUnionType,types:e.types.map(C=>this.convertChild(C))});case Pn.IntersectionType:return this.createNode(e,{type:hs.TSIntersectionType,types:e.types.map(C=>this.convertChild(C))});case Pn.AsExpression:return this.createNode(e,{type:hs.TSAsExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Pn.InferType:return this.createNode(e,{type:hs.TSInferType,typeParameter:this.convertChild(e.typeParameter)});case Pn.LiteralType:return e.literal.kind===Pn.NullKeyword?this.createNode(e.literal,{type:hs.TSNullKeyword}):this.createNode(e,{type:hs.TSLiteralType,literal:this.convertChild(e.literal)});case Pn.TypeAssertionExpression:return this.createNode(e,{type:hs.TSTypeAssertion,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Pn.ImportEqualsDeclaration:return this.fixExports(e,this.createNode(e,{type:hs.TSImportEqualsDeclaration,id:this.convertChild(e.name),importKind:e.isTypeOnly?"type":"value",moduleReference:this.convertChild(e.moduleReference)}));case Pn.ExternalModuleReference:return e.expression.kind!==Pn.StringLiteral&&Ig(this,og,tf).call(this,e.expression,"String literal expected."),this.createNode(e,{type:hs.TSExternalModuleReference,expression:this.convertChild(e.expression)});case Pn.NamespaceExportDeclaration:return this.createNode(e,{type:hs.TSNamespaceExportDeclaration,id:this.convertChild(e.name)});case Pn.AbstractKeyword:return this.createNode(e,{type:hs.TSAbstractKeyword});case Pn.TupleType:{let C=e.elements.map(b=>this.convertChild(b));return this.createNode(e,{type:hs.TSTupleType,elementTypes:C})}case Pn.NamedTupleMember:{let C=this.createNode(e,{type:hs.TSNamedTupleMember,elementType:this.convertChild(e.type,e),label:this.convertChild(e.name,e),optional:e.questionToken!=null});return e.dotDotDotToken?(C.range[0]=C.label.range[0],C.loc.start=C.label.loc.start,this.createNode(e,{type:hs.TSRestType,typeAnnotation:C})):C}case Pn.OptionalType:return this.createNode(e,{type:hs.TSOptionalType,typeAnnotation:this.convertChild(e.type)});case Pn.RestType:return this.createNode(e,{type:hs.TSRestType,typeAnnotation:this.convertChild(e.type)});case Pn.TemplateLiteralType:{let C=this.createNode(e,{type:hs.TSTemplateLiteralType,quasis:[this.convertChild(e.head)],types:[]});return e.templateSpans.forEach(b=>{C.types.push(this.convertChild(b.type)),C.quasis.push(this.convertChild(b.literal))}),C}case Pn.ClassStaticBlockDeclaration:return this.createNode(e,{type:hs.StaticBlock,body:this.convertBodyExpressions(e.body.statements,e)});case Pn.AssertEntry:case Pn.ImportAttribute:return this.createNode(e,{type:hs.ImportAttribute,key:this.convertChild(e.name),value:this.convertChild(e.value)});case Pn.SatisfiesExpression:return this.createNode(e,{type:hs.TSSatisfiesExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});default:return this.deeplyCopy(e)}}createNode(e,t){let r=t;return r.range??(r.range=EJe(e,this.ast)),r.loc??(r.loc=eCe(r.range,this.ast)),r&&this.options.shouldPreserveNodeMaps&&this.esTreeNodeToTSNodeMap.set(r,e),r}convertProgram(){return this.converter(this.ast)}deeplyCopy(e){e.kind===Np.JSDocFunctionType&&Ig(this,og,tf).call(this,e,"JSDoc types can only be used inside documentation comments.");let t=`TS${Pn[e.kind]}`;if(this.options.errorOnUnknownASTType&&!hs[t])throw new Error(`Unknown AST_NODE_TYPE: "${t}"`);let r=this.createNode(e,{type:t});"type"in e&&(r.typeAnnotation=e.type&&"kind"in e.type&&Aza(e.type)?this.convertTypeAnnotation(e.type,e):null),"typeArguments"in e&&(r.typeArguments=e.typeArguments&&"pos"in e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null),"typeParameters"in e&&(r.typeParameters=e.typeParameters&&"pos"in e.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters):null);let n=MNe(e);n!=null&&n.length&&(r.decorators=n.map(o=>this.convertChild(o)));let a=new Set(["_children","decorators","end","flags","heritageClauses","illegalDecorators","jsDoc","kind","locals","localSymbol","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(e).filter(([o])=>!a.has(o)).forEach(([o,l])=>{Array.isArray(l)?r[o]=l.map(A=>this.convertChild(A)):l&&typeof l=="object"&&l.kind?r[o]=this.convertChild(l):r[o]=l}),r}fixExports(e,t){let r=PJe(e)&&e.flags&vP.Namespace?Mtc(e):N6(e);if(r?.[0].kind===Pn.ExportKeyword){this.registerTSNodeInNodeMap(e,t);let n=r[0],a=r[1],o=a?.kind===Pn.DefaultKeyword,l=o?ZNe(a,this.ast,this.ast):ZNe(n,this.ast,this.ast);if(t.range[0]=l.getStart(this.ast),t.loc=eCe(t.range,this.ast),o)return this.createNode(e,{type:hs.ExportDefaultDeclaration,range:[n.getStart(this.ast),t.range[1]],declaration:t,exportKind:"value"});let A=t.type===hs.TSInterfaceDeclaration||t.type===hs.TSTypeAliasDeclaration,f="declare"in t&&t.declare;return this.createNode(e,Ig(this,og,HNe).call(this,{type:hs.ExportNamedDeclaration,range:[n.getStart(this.ast),t.range[1]],attributes:[],declaration:t,exportKind:A||f?"type":"value",source:null,specifiers:[]},"assertions","attributes",!0))}return t}getASTMaps(){return{esTreeNodeToTSNodeMap:this.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:this.tsNodeToESTreeNodeMap}}registerTSNodeInNodeMap(e,t){t&&this.options.shouldPreserveNodeMaps&&!this.tsNodeToESTreeNodeMap.has(e)&&this.tsNodeToESTreeNodeMap.set(e,t)}};og=new WeakSet,KNr=function(e,t){let r=t===Np.ForInStatement?"for...in":"for...of";if(J$a(e)){e.declarations.length!==1&&Ig(this,og,tf).call(this,e,`Only a single variable declaration is allowed in a '${r}' statement.`);let n=e.declarations[0];n.initializer?Ig(this,og,tf).call(this,n,`The variable declaration of a '${r}' statement cannot have an initializer.`):n.type&&Ig(this,og,tf).call(this,n,`The variable declaration of a '${r}' statement cannot have a type annotation.`),t===Np.ForInStatement&&e.flags&vP.Using&&Ig(this,og,tf).call(this,e,"The left-hand side of a 'for...in' statement cannot be a 'using' declaration.")}else!ZDr(e)&&e.kind!==Np.ObjectLiteralExpression&&e.kind!==Np.ArrayLiteralExpression&&Ig(this,og,tf).call(this,e,`The left-hand side of a '${r}' statement must be a variable or a property access.`)},swi=function(e){if(!this.options.allowInvalidAST){Dtc(e)&&Ig(this,og,tf).call(this,e.illegalDecorators[0],"Decorators are not valid here.");for(let t of MNe(e,!0)??[])Ptc(e)||(HNr(e)&&!USi(e.body)?Ig(this,og,tf).call(this,t,"A decorator can only decorate a method implementation, not an overload."):Ig(this,og,tf).call(this,t,"Decorators are not valid here."));for(let t of N6(e,!0)??[]){if(t.kind!==Pn.ReadonlyKeyword&&((e.kind===Pn.PropertySignature||e.kind===Pn.MethodSignature)&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier cannot appear on a type member`),e.kind===Pn.IndexSignature&&(t.kind!==Pn.StaticKeyword||!UNe(e.parent))&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier cannot appear on an index signature`)),t.kind!==Pn.InKeyword&&t.kind!==Pn.OutKeyword&&t.kind!==Pn.ConstKeyword&&e.kind===Pn.TypeParameter&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier cannot appear on a type parameter`),(t.kind===Pn.InKeyword||t.kind===Pn.OutKeyword)&&(e.kind!==Pn.TypeParameter||!(NDr(e.parent)||UNe(e.parent)||NBi(e.parent)))&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier can only appear on a type parameter of a class, interface or type alias`),t.kind===Pn.ReadonlyKeyword&&e.kind!==Pn.PropertyDeclaration&&e.kind!==Pn.PropertySignature&&e.kind!==Pn.IndexSignature&&e.kind!==Pn.Parameter&&Ig(this,og,tf).call(this,t,"'readonly' modifier can only appear on a property declaration or index signature."),t.kind===Pn.DeclareKeyword&&UNe(e.parent)&&!dEt(e)&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier cannot appear on class elements of this kind.`),t.kind===Pn.DeclareKeyword&&_Et(e)){let r=UNr(e.declarationList);(r==="using"||r==="await using")&&Ig(this,og,tf).call(this,t,`'declare' modifier cannot appear on a '${r}' declaration.`)}if(t.kind===Pn.AbstractKeyword&&e.kind!==Pn.ClassDeclaration&&e.kind!==Pn.ConstructorType&&e.kind!==Pn.MethodDeclaration&&e.kind!==Pn.PropertyDeclaration&&e.kind!==Pn.GetAccessor&&e.kind!==Pn.SetAccessor&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier can only appear on a class, method, or property declaration.`),(t.kind===Pn.StaticKeyword||t.kind===Pn.PublicKeyword||t.kind===Pn.ProtectedKeyword||t.kind===Pn.PrivateKeyword)&&(e.parent.kind===Pn.ModuleBlock||e.parent.kind===Pn.SourceFile)&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier cannot appear on a module or namespace element.`),t.kind===Pn.AccessorKeyword&&e.kind!==Pn.PropertyDeclaration&&Ig(this,og,tf).call(this,t,"'accessor' modifier can only appear on a property declaration."),t.kind===Pn.AsyncKeyword&&e.kind!==Pn.MethodDeclaration&&e.kind!==Pn.FunctionDeclaration&&e.kind!==Pn.FunctionExpression&&e.kind!==Pn.ArrowFunction&&Ig(this,og,tf).call(this,t,"'async' modifier cannot be used here."),e.kind===Pn.Parameter&&(t.kind===Pn.StaticKeyword||t.kind===Pn.ExportKeyword||t.kind===Pn.DeclareKeyword||t.kind===Pn.AsyncKeyword)&&Ig(this,og,tf).call(this,t,`'${vy(t.kind)}' modifier cannot appear on a parameter.`),t.kind===Pn.PublicKeyword||t.kind===Pn.ProtectedKeyword||t.kind===Pn.PrivateKeyword)for(let r of N6(e)??[])r!==t&&(r.kind===Pn.PublicKeyword||r.kind===Pn.ProtectedKeyword||r.kind===Pn.PrivateKeyword)&&Ig(this,og,tf).call(this,r,"Accessibility modifier already seen.");if(e.kind===Pn.Parameter&&(t.kind===Pn.PublicKeyword||t.kind===Pn.PrivateKeyword||t.kind===Pn.ProtectedKeyword||t.kind===Pn.ReadonlyKeyword||t.kind===Pn.OverrideKeyword)){let r=Ltc(e);r.kind===Pn.Constructor&&USi(r.body)||Ig(this,og,tf).call(this,t,"A parameter property is only allowed in a constructor implementation.")}}}},tf=function(e,t){let r,n;throw typeof e=="number"?r=n=e:(r=e.getStart(this.ast),n=e.getEnd()),nwi(t,this.ast,r,n)},VR=function(e,t){this.options.allowInvalidAST||Ig(this,og,tf).call(this,e,t)},HNe=function(e,t,r,n=!1){let a=n;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>e[r]:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use '${r}' instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),e[r]),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e},jNr=function(e,t,r,n){let a=!1;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>n:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use ${r} instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),n),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e};function Qtc(e,t,r=e.getSourceFile()){let n=[];for(;;){if(Jvi(e.kind))t(e);else{let a=e.getChildren(r);if(a.length===1){e=a[0];continue}for(let o=a.length-1;o>=0;--o)n.push(a[o])}if(n.length===0)break;e=n.pop()}}function Xtc(e,t,r=e.getSourceFile()){let n=r.text,a=r.languageVariant!==_vi.JSX;return Qtc(e,l=>{if(l.pos!==l.end&&(l.kind!==Np.JsxText&&b7a(n,l.pos===0?(Vvi(n)??"").length:l.pos,o),a||Jtc(l)))return E7a(n,l.end,o)},r);function o(l,A,f){t(n,{end:A,kind:f,pos:l})}}function Jtc(e){switch(e.kind){case Np.CloseBraceToken:return e.parent.kind!==Np.JsxExpression||!RNr(e.parent.parent);case Np.GreaterThanToken:switch(e.parent.kind){case Np.JsxClosingElement:case Np.JsxClosingFragment:return!RNr(e.parent.parent.parent);case Np.JsxOpeningElement:return e.end!==e.parent.end;case Np.JsxOpeningFragment:return!1;case Np.JsxSelfClosingElement:return e.end!==e.parent.end||!RNr(e.parent.parent)}}return!0}function RNr(e){return e.kind===Np.JsxElement||e.kind===Np.JsxFragment}var[fTu,ITu]=hja.split(".").map(e=>Number.parseInt(e,10)),hTu=VG.Intrinsic??VG.Any|VG.Unknown|VG.String|VG.Number|VG.BigInt|VG.Boolean|VG.BooleanLiteral|VG.ESSymbol|VG.Void|VG.Undefined|VG.Null|VG.Never|VG.NonPrimitive;function Utc(e,t){let r=[];return Xtc(e,(n,a)=>{let o=a.kind===Np.SingleLineCommentTrivia?gD.Line:gD.Block,l=[a.pos,a.end],A=eCe(l,e),f=l[0]+2,I=a.kind===Np.SingleLineCommentTrivia?l[1]-f:l[1]-f-2;r.push({type:o,loc:A,range:l,value:t.slice(f,f+I)})},e),r}var Ktc=()=>{};function jtc(e,t,r){let{parseDiagnostics:n}=e;if(n.length)throw Htc(n[0]);let a=new Ytc(e,{allowInvalidAST:t.allowInvalidAST,errorOnUnknownASTType:t.errorOnUnknownASTType,shouldPreserveNodeMaps:r,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings}),o=a.convertProgram();return(!t.range||!t.loc)&&Ktc(o,{enter:l=>{t.range||delete l.range,t.loc||delete l.loc}}),t.tokens&&(o.tokens=Rtc(e)),t.comment&&(o.comments=Utc(e,t.codeFullText)),{astMaps:a.getASTMaps(),estree:o}}function owi(e){if(typeof e!="object"||e==null)return!1;let t=e;return t.kind===Np.SourceFile&&typeof t.getFullText=="function"}var ztc=function(e){return e&&e.__esModule?e:{default:e}},qtc=ztc({extname:e=>"."+e.split(".").pop()});function $tc(e,t){switch(qtc.default.extname(e).toLowerCase()){case uH.Cjs:case uH.Js:case uH.Mjs:return Pee.JS;case uH.Cts:case uH.Mts:case uH.Ts:return Pee.TS;case uH.Json:return Pee.JSON;case uH.Jsx:return Pee.JSX;case uH.Tsx:return Pee.TSX;default:return t?Pee.TSX:Pee.TS}}var erc={default:tDr},trc=(0,erc.default)("typescript-eslint:typescript-estree:create-program:createSourceFile");function rrc(e){return trc("Getting AST without type information in %s mode for: %s",e.jsx?"TSX":"TS",e.filePath),owi(e.code)?e.code:Lec(e.filePath,e.codeFullText,{jsDocParsingMode:e.jsDocParsingMode,languageVersion:aDr.Latest,setExternalModuleIndicator:e.setExternalModuleIndicator},!0,$tc(e.filePath,e.jsx))}var nrc=()=>{},irc=e=>e,src=class{},orc=()=>!1,arc=()=>{},crc=function(e){return e&&e.__esModule?e:{default:e}},zNr={default:tDr},lrc=crc({extname:e=>"."+e.split(".").pop()}),urc=(0,zNr.default)("typescript-eslint:typescript-estree:parseSettings:createParseSettings"),KSi,jSi=null,zSi,qSi,$Si,evi,SJe={ParseAll:(zSi=TJe)==null?void 0:zSi.ParseAll,ParseForTypeErrors:(qSi=TJe)==null?void 0:qSi.ParseForTypeErrors,ParseForTypeInfo:($Si=TJe)==null?void 0:$Si.ParseForTypeInfo,ParseNone:(evi=TJe)==null?void 0:evi.ParseNone};function grc(e,t={}){var r;let n=Arc(e),a=orc(t),o=typeof t.tsconfigRootDir=="string"?t.tsconfigRootDir:"/prettier-security-dirname-placeholder",l=typeof t.loggerFn=="function",A=irc(typeof t.filePath=="string"&&t.filePath!==""?t.filePath:drc(t.jsx),o),f=lrc.default.extname(A).toLowerCase(),I=(()=>{switch(t.jsDocParsingMode){case"all":return SJe.ParseAll;case"none":return SJe.ParseNone;case"type-info":return SJe.ParseForTypeInfo;default:return SJe.ParseAll}})(),C={loc:t.loc===!0,range:t.range===!0,allowInvalidAST:t.allowInvalidAST===!0,code:e,codeFullText:n,comment:t.comment===!0,comments:[],debugLevel:t.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(t.debugLevel)?new Set(t.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:t.errorOnUnknownASTType===!0,extraFileExtensions:Array.isArray(t.extraFileExtensions)&&t.extraFileExtensions.every(b=>typeof b=="string")?t.extraFileExtensions:[],filePath:A,jsDocParsingMode:I,jsx:t.jsx===!0,log:typeof t.loggerFn=="function"?t.loggerFn:t.loggerFn===!1?()=>{}:console.log,preserveNodeMaps:t.preserveNodeMaps!==!1,programs:Array.isArray(t.programs)?t.programs:null,projects:new Map,projectService:t.projectService||t.project&&t.projectService!==!1&&(void 0).env.TYPESCRIPT_ESLINT_PROJECT_SERVICE==="true"?jSi??(jSi=nrc(t.projectService,I,o)):void 0,setExternalModuleIndicator:t.sourceType==="module"||t.sourceType==null&&f===uH.Mjs||t.sourceType==null&&f===uH.Mts?b=>{b.externalModuleIndicator=!0}:void 0,singleRun:a,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings??!0,tokens:t.tokens===!0?[]:null,tsconfigMatchCache:KSi??(KSi=new src(a?"Infinity":((r=t.cacheLifetime)==null?void 0:r.glob)??void 0)),tsconfigRootDir:o};if(C.debugLevel.size>0){let b=[];C.debugLevel.has("typescript-eslint")&&b.push("typescript-eslint:*"),(C.debugLevel.has("eslint")||zNr.default.enabled("eslint:*,-eslint:code-path"))&&b.push("eslint:*,-eslint:code-path"),zNr.default.enable(b.join(","))}if(Array.isArray(t.programs)){if(!t.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.");urc("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return!C.programs&&!C.projectService&&(C.projects=new Map),t.jsDocParsingMode==null&&C.projects.size===0&&C.programs==null&&C.projectService==null&&(C.jsDocParsingMode=SJe.ParseNone),arc(C,l),C}function Arc(e){return owi(e)?e.getFullText(e):typeof e=="string"?e:String(e)}function drc(e){return e?"estree.tsx":"estree.ts"}var prc={default:tDr},mTu=(0,prc.default)("typescript-eslint:typescript-estree:parser");function frc(e,t){let{ast:r}=Irc(e,t,!1);return r}function Irc(e,t,r){let n=grc(e,t);if(t!=null&&t.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let a=rrc(n),{astMaps:o,estree:l}=jtc(a,n,r);return{ast:l,esTreeNodeToTSNodeMap:o.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:o.tsNodeToESTreeNodeMap}}function hrc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var mrc=hrc;function Crc(e){let t=[];for(let r of e)try{return r()}catch(n){t.push(n)}throw Object.assign(new Error("All combinations failed"),{errors:t})}var _rc=Crc,yrc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},tvi=yrc;function brc(e){return Array.isArray(e)&&e.length>0}var Erc=brc;function T6(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(T6(o),a):a}function tCe(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function Src(e){let t=new Set(e);return r=>t.has(r?.type)}var vrc=Src,Brc=vrc(["Block","CommentBlock","MultiLine"]),qNr=Brc;function wrc(e){let t=`*${e.value}*`.split(` +`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var rvi=wrc;function Trc(e){return qNr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var Rrc=Trc,vJe=null;function FJe(e){if(vJe!==null&&typeof vJe.property){let t=vJe;return vJe=FJe.prototype=null,t}return vJe=FJe.prototype=e??Object.create(null),new FJe}var Nrc=10;for(let e=0;e<=Nrc;e++)FJe();function Drc(e){return FJe(e)}function krc(e,t="type"){Drc(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var xrc=krc,Grc={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},Frc=xrc(Grc),Zrc=Frc;function $Nr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(Rrc)&&a.add(T6(o))}),e=NNr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=T6(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=NNr(e,a=>{switch(a.type){case"LogicalExpression":if(awi(a))return eDr(a);break;case"VariableDeclaration":{let o=tvi(!1,a.declarations,-1);o!=null&&o.init&&n[tCe(o)]!==";"&&(a.range=[T6(a),tCe(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=T6(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),Erc(e.comments)){let a=tvi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];tCe(l)===T6(a)&&qNr(l)&&qNr(a)&&rvi(l)&&rvi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[T6(l),tCe(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function awi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function eDr(e){return awi(e)?eDr({type:"LogicalExpression",operator:e.operator,left:eDr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[T6(e.left),tCe(e.right.left)]}),right:e.right.right,range:[T6(e),tCe(e)]}):e}var Vrc=Lrc,Wrc=/\*\/$/,Orc=/^\/\*\*?/,Prc=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Mrc=/(^|\s+)\/\/([^\n\r]*)/g,nvi=/^(\r?\n)+/,Hrc=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,ivi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,Yrc=/(\r?\n|^) *\* ?/g,Qrc=[];function Xrc(e){let t=e.match(Prc);return t?t[0].trimStart():""}function Jrc(e){let t=` +`;e=YNe(!1,e.replace(Orc,"").replace(Wrc,""),Yrc,"$1");let r="";for(;r!==e;)r=e,e=YNe(!1,e,Hrc,`${t}$1 $2${t}`);e=e.replace(nvi,"").trimEnd();let n=Object.create(null),a=YNe(!1,e,ivi,"").replace(nvi,"").trimEnd(),o;for(;o=ivi.exec(e);){let l=YNe(!1,o[2],Mrc,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...Qrc,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function Urc(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` +`);return t===-1?e:e.slice(0,t)}var Krc=Urc;function jrc(e){let t=Krc(e);t&&(e=e.slice(t.length+1));let r=Xrc(e),{pragmas:n,comments:a}=Jrc(r);return{shebang:t,text:e,pragmas:n,comments:a}}function zrc(e){let{pragmas:t}=jrc(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function qrc(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:zrc,locStart:T6,locEnd:tCe,...e}}var $rc=qrc;function enc(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var tnc=enc;function rnc(e){return e.charAt(0)==="#"&&e.charAt(1)==="!"?"//"+e.slice(2):e}var nnc=rnc,inc={loc:!0,range:!0,comment:!0,tokens:!0,loggerFn:!1,project:!1,jsDocParsingMode:"none",suppressDeprecatedPropertyWarnings:!0};function snc(e){if(!(e!=null&&e.location))return e;let{message:t,location:{start:r,end:n}}=e;return mrc(t,{loc:{start:{line:r.line,column:r.column+1},end:{line:n.line,column:n.column+1}},cause:e})}var onc=e=>/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/iu.test(e);function anc(e,t){let r=t?.filepath,n=[{...inc,filePath:r}],a=tnc(t);if(a?n=n.map(l=>({...l,sourceType:a})):n=["module","script"].flatMap(l=>n.map(A=>({...A,sourceType:l}))),r&&onc(r))return n;let o=lnc(e);return[o,!o].flatMap(l=>n.map(A=>({...A,jsx:l})))}function cnc(e,t={}){let r=nnc(e),n=anc(e,t),a;try{a=_rc(n.map(o=>()=>frc(r,o)))}catch({errors:[o]}){throw snc(o)}return Vrc(a,{text:e})}function lnc(e){return new RegExp(["(?:^[^\"'`]*)"].join(""),"mu").test(e)}var unc=$rc(cnc),gnc=cvi;var qJe={};Uf(qJe,{default:()=>Ysc,languages:()=>tTi,options:()=>rTi,parsers:()=>okr,printers:()=>ITi});var Anc=Object.create,zDr=Object.defineProperty,dnc=Object.getOwnPropertyDescriptor,pnc=Object.getOwnPropertyNames,fnc=Object.getPrototypeOf,Inc=Object.prototype.hasOwnProperty,Xee=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Cwi=(e,t)=>{for(var r in t)zDr(e,r,{get:t[r],enumerable:!0})},hnc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of pnc(t))!Inc.call(e,a)&&a!==r&&zDr(e,a,{get:()=>t[a],enumerable:!(n=dnc(t,a))||n.enumerable});return e},_wi=(e,t,r)=>(r=e!=null?Anc(fnc(e)):{},hnc(t||!e||!e.__esModule?zDr(r,"default",{value:e,enumerable:!0}):r,e)),dCe=Xee(e=>{"use strict";var t={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"},n="tag:yaml.org,2002:",a={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function o(ne){let ce=[0],fe=ne.indexOf(` `);for(;fe!==-1;)fe+=1,ce.push(fe),fe=ne.indexOf(` `,fe);return ce}function l(ne){let ce,fe;return typeof ne=="string"?(ce=o(ne),fe=ne):(Array.isArray(ne)&&(ne=ne[0]),ne&&ne.context&&(ne.lineStarts||(ne.lineStarts=o(ne.context.src)),ce=ne.lineStarts,fe=ne.context.src)),{lineStarts:ce,src:fe}}function A(ne,ce){if(typeof ne!="number"||ne<0)return null;let{lineStarts:fe,src:ue}=l(ce);if(!fe||!ue||ne>ue.length)return null;for(let be=0;be=1)||ne>fe.length)return null;let de=fe[ne-1],be=fe[ne];for(;be&&be>de&&ue[be-1]===` `;)--be;return ue.slice(de,be)}function I({start:ne,end:ce},fe,ue=80){let de=f(ne.line,fe);if(!de)return null;let{col:be}=ne;if(de.length>ue)if(be<=ue-10)de=de.substr(0,ue-1)+"\u2026";else{let ze=Math.round(ue/2);de.length>be+ze&&(de=de.substr(0,be+ze-1)+"\u2026"),be-=de.length-ue,de="\u2026"+de.substr(1-ue)}let Se=1,De="";ce&&(ce.line===ne.line&&be+(ce.col-ne.col)<=ue+1?Se=ce.col-ne.col:(Se=Math.min(de.length+1,ue)-be,De="\u2026"));let k=be>1?" ".repeat(be-1):"",tt="^".repeat(Se);return`${de} -${k}${tt}${De}`}var C=class uwi{static copy(ce){return new uwi(ce.start,ce.end)}constructor(ce,fe){this.start=ce,this.end=fe||ce}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(ce,fe){let{start:ue,end:de}=this;if(ce.length===0||de<=ce[0])return this.origStart=ue,this.origEnd=de,fe;let be=fe;for(;beue);)++be;this.origStart=ue+be;let Se=be;for(;be=de);)++be;return this.origEnd=de+be,Se}},b=class Hee{static addStringTerminator(ce,fe,ue){if(ue[ue.length-1]===` -`)return ue;let de=Hee.endOfWhiteSpace(ce,fe);return de>=ce.length||ce[de]===` +${k}${tt}${De}`}var C=class ywi{static copy(ce){return new ywi(ce.start,ce.end)}constructor(ce,fe){this.start=ce,this.end=fe||ce}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(ce,fe){let{start:ue,end:de}=this;if(ce.length===0||de<=ce[0])return this.origStart=ue,this.origEnd=de,fe;let be=fe;for(;beue);)++be;this.origStart=ue+be;let Se=be;for(;be=de);)++be;return this.origEnd=de+be,Se}},b=class Yee{static addStringTerminator(ce,fe,ue){if(ue[ue.length-1]===` +`)return ue;let de=Yee.endOfWhiteSpace(ce,fe);return de>=ce.length||ce[de]===` `?ue+` `:ue}static atDocumentBoundary(ce,fe,ue){let de=ce[fe];if(!de)return!0;let be=ce[fe-1];if(be&&be!==` `)return!1;if(ue){if(de!==ue)return!1}else if(de!==t.DIRECTIVES_END&&de!==t.DOCUMENT_END)return!1;let Se=ce[fe+1],De=ce[fe+2];if(Se!==de||De!==de)return!1;let k=ce[fe+3];return!k||k===` @@ -2243,40 +2243,40 @@ ${k}${tt}${De}`}var C=class uwi{static copy(ce){return new uwi(ce.start,ce.end)} `," "," ","[","]","{","}",","];for(;ue&&be.indexOf(ue)===-1;)ue=ce[fe+=1];return de&&ue===">"&&(fe+=1),fe}static endOfIndent(ce,fe){let ue=ce[fe];for(;ue===" ";)ue=ce[fe+=1];return fe}static endOfLine(ce,fe){let ue=ce[fe];for(;ue&&ue!==` `;)ue=ce[fe+=1];return fe}static endOfWhiteSpace(ce,fe){let ue=ce[fe];for(;ue===" "||ue===" ";)ue=ce[fe+=1];return fe}static startOfLine(ce,fe){let ue=ce[fe-1];if(ue===` `)return fe;for(;ue&&ue!==` -`;)ue=ce[fe-=1];return fe+1}static endOfBlockIndent(ce,fe,ue){let de=Hee.endOfIndent(ce,ue);if(de>ue+fe)return de;{let be=Hee.endOfWhiteSpace(ce,de),Se=ce[be];if(!Se||Se===` +`;)ue=ce[fe-=1];return fe+1}static endOfBlockIndent(ce,fe,ue){let de=Yee.endOfIndent(ce,ue);if(de>ue+fe)return de;{let be=Yee.endOfWhiteSpace(ce,de),Se=ce[be];if(!Se||Se===` `)return be}return null}static atBlank(ce,fe,ue){let de=ce[fe];return de===` `||de===" "||de===" "||ue&&!de}static nextNodeIsIndented(ce,fe,ue){return!ce||fe<0?!1:fe>0?!0:ue&&ce==="-"}static normalizeOffset(ce,fe){let ue=ce[fe];return ue?ue!==` `&&ce[fe-1]===` -`?fe-1:Hee.endOfWhiteSpace(ce,fe):fe}static foldNewline(ce,fe,ue){let de=0,be=!1,Se="",De=ce[fe+1];for(;De===" "||De===" "||De===` +`?fe-1:Yee.endOfWhiteSpace(ce,fe):fe}static foldNewline(ce,fe,ue){let de=0,be=!1,Se="",De=ce[fe+1];for(;De===" "||De===" "||De===` `;){switch(De){case` `:de=0,fe+=1,Se+=` -`;break;case" ":de<=ue&&(be=!0),fe=Hee.endOfWhiteSpace(ce,fe+2)-1;break;case" ":de+=1,fe+=1;break}De=ce[fe+1]}return Se||(Se=" "),De&&de<=ue&&(be=!0),{fold:Se,offset:fe,error:be}}constructor(ce,fe,ue){Object.defineProperty(this,"context",{value:ue||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=fe||[],this.type=ce,this.value=null}getPropValue(ce,fe,ue){if(!this.context)return null;let{src:de}=this.context,be=this.props[ce];return be&&de[be.start]===fe?de.slice(be.start+(ue?1:0),be.end):null}get anchor(){for(let ce=0;ce0?ce.join(` -`):null}commentHasRequiredWhitespace(ce){let{src:fe}=this.context;if(this.header&&ce===this.header.end||!this.valueRange)return!1;let{end:ue}=this.valueRange;return ce!==ue||Hee.atBlank(fe,ue-1)}get hasComment(){if(this.context){let{src:ce}=this.context;for(let fe=0;feue.setOrigRange(ce,fe)),fe}toString(){let{context:{src:ce},range:fe,value:ue}=this;if(ue!=null)return ue;let de=ce.slice(fe.start,fe.end);return Hee.addStringTerminator(ce,fe.end,de)}},E=class extends Error{constructor(ne,ce,fe){if(!fe||!(ce instanceof b))throw new Error(`Invalid arguments for new ${ne}`);super(),this.name=ne,this.message=fe,this.source=ce}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let ne=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new C(this.offset,this.offset+1);let ce=ne&&A(this.offset,ne);if(ce){let fe={line:ce.line,col:ce.col+1};this.linePos={start:ce,end:fe}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:ce,col:fe}=this.linePos.start;this.message+=` at line ${ce}, column ${fe}`;let ue=ne&&I(this.linePos,ne);ue&&(this.message+=`: +`;break;case" ":de<=ue&&(be=!0),fe=Yee.endOfWhiteSpace(ce,fe+2)-1;break;case" ":de+=1,fe+=1;break}De=ce[fe+1]}return Se||(Se=" "),De&&de<=ue&&(be=!0),{fold:Se,offset:fe,error:be}}constructor(ce,fe,ue){Object.defineProperty(this,"context",{value:ue||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=fe||[],this.type=ce,this.value=null}getPropValue(ce,fe,ue){if(!this.context)return null;let{src:de}=this.context,be=this.props[ce];return be&&de[be.start]===fe?de.slice(be.start+(ue?1:0),be.end):null}get anchor(){for(let ce=0;ce0?ce.join(` +`):null}commentHasRequiredWhitespace(ce){let{src:fe}=this.context;if(this.header&&ce===this.header.end||!this.valueRange)return!1;let{end:ue}=this.valueRange;return ce!==ue||Yee.atBlank(fe,ue-1)}get hasComment(){if(this.context){let{src:ce}=this.context;for(let fe=0;feue.setOrigRange(ce,fe)),fe}toString(){let{context:{src:ce},range:fe,value:ue}=this;if(ue!=null)return ue;let de=ce.slice(fe.start,fe.end);return Yee.addStringTerminator(ce,fe.end,de)}},E=class extends Error{constructor(ne,ce,fe){if(!fe||!(ce instanceof b))throw new Error(`Invalid arguments for new ${ne}`);super(),this.name=ne,this.message=fe,this.source=ce}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let ne=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new C(this.offset,this.offset+1);let ce=ne&&A(this.offset,ne);if(ce){let fe={line:ce.line,col:ce.col+1};this.linePos={start:ce,end:fe}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:ce,col:fe}=this.linePos.start;this.message+=` at line ${ce}, column ${fe}`;let ue=ne&&I(this.linePos,ne);ue&&(this.message+=`: ${ue} -`)}delete this.source}},N=class extends E{constructor(ne,ce){super("YAMLReferenceError",ne,ce)}},B=class extends E{constructor(ne,ce){super("YAMLSemanticError",ne,ce)}},F=class extends E{constructor(ne,ce){super("YAMLSyntaxError",ne,ce)}},Q=class extends E{constructor(ne,ce){super("YAMLWarning",ne,ce)}};function J(ne,ce,fe){return ce in ne?Object.defineProperty(ne,ce,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ne[ce]=fe,ne}var ae=class WDr extends b{static endOfLine(ce,fe,ue){let de=ce[fe],be=fe;for(;de&&de!==` +`)}delete this.source}},N=class extends E{constructor(ne,ce){super("YAMLReferenceError",ne,ce)}},B=class extends E{constructor(ne,ce){super("YAMLSemanticError",ne,ce)}},F=class extends E{constructor(ne,ce){super("YAMLSyntaxError",ne,ce)}},Q=class extends E{constructor(ne,ce){super("YAMLWarning",ne,ce)}};function J(ne,ce,fe){return ce in ne?Object.defineProperty(ne,ce,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ne[ce]=fe,ne}var ae=class PDr extends b{static endOfLine(ce,fe,ue){let de=ce[fe],be=fe;for(;de&&de!==` `&&!(ue&&(de==="["||de==="]"||de==="{"||de==="}"||de===","));){let Se=ce[be+1];if(de===":"&&(!Se||Se===` `||Se===" "||Se===" "||ue&&Se===",")||(de===" "||de===" ")&&Se==="#")break;be+=1,de=Se}return be}get strValue(){if(!this.valueRange||!this.context)return null;let{start:ce,end:fe}=this.valueRange,{src:ue}=this.context,de=ue[fe-1];for(;cett?ue.slice(tt,De+1):k)}else be+=k}let Se=ue[ce];switch(Se){case" ":{let De="Plain value cannot start with a tab character";return{errors:[new B(this,De)],str:be}}case"@":case"`":{let De=`Plain value cannot start with reserved character ${Se}`;return{errors:[new B(this,De)],str:be}}default:return be}}parseBlockValue(ce){let{indent:fe,inFlow:ue,src:de}=this.context,be=ce,Se=ce;for(let De=de[be];De===` `&&!b.atDocumentBoundary(de,be+1);De=de[be]){let k=b.endOfBlockIndent(de,fe,be+1);if(k===null||de[k]==="#")break;de[k]===` -`?be=k:(Se=WDr.endOfLine(de,k,ue),be=Se)}return this.valueRange.isEmpty()&&(this.valueRange.start=ce),this.valueRange.end=Se,Se}parse(ce,fe){this.context=ce;let{inFlow:ue,src:de}=ce,be=fe,Se=de[be];return Se&&Se!=="#"&&Se!==` -`&&(be=WDr.endOfLine(de,fe,ue)),this.valueRange=new C(fe,be),be=b.endOfWhiteSpace(de,be),be=this.parseComment(be),(!this.hasComment||this.valueRange.isEmpty())&&(be=this.parseBlockValue(be)),be}};e.Char=t,e.Node=b,e.PlainValue=ae,e.Range=C,e.Type=r,e.YAMLError=E,e.YAMLReferenceError=N,e.YAMLSemanticError=B,e.YAMLSyntaxError=F,e.YAMLWarning=Q,e._defineProperty=J,e.defaultTagPrefix=n,e.defaultTags=a}),dnc=Qee(e=>{"use strict";var t=ACe(),r=class extends t.Node{constructor(){super(t.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(ae,ne){return this.context=ae,this.range=new t.Range(ne,ne+1),ne+1}},n=class extends t.Node{constructor(ae,ne){super(ae,ne),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(ae,ne){this.context=ae;let{parseNode:ce,src:fe}=ae,{atLineStart:ue,lineStart:de}=ae;!ue&&this.type===t.Type.SEQ_ITEM&&(this.error=new t.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let be=ue?ne-de:ae.indent,Se=t.Node.endOfWhiteSpace(fe,ne+1),De=fe[Se],k=De==="#",tt=[],ze=null;for(;De===` +`?be=k:(Se=PDr.endOfLine(de,k,ue),be=Se)}return this.valueRange.isEmpty()&&(this.valueRange.start=ce),this.valueRange.end=Se,Se}parse(ce,fe){this.context=ce;let{inFlow:ue,src:de}=ce,be=fe,Se=de[be];return Se&&Se!=="#"&&Se!==` +`&&(be=PDr.endOfLine(de,fe,ue)),this.valueRange=new C(fe,be),be=b.endOfWhiteSpace(de,be),be=this.parseComment(be),(!this.hasComment||this.valueRange.isEmpty())&&(be=this.parseBlockValue(be)),be}};e.Char=t,e.Node=b,e.PlainValue=ae,e.Range=C,e.Type=r,e.YAMLError=E,e.YAMLReferenceError=N,e.YAMLSemanticError=B,e.YAMLSyntaxError=F,e.YAMLWarning=Q,e._defineProperty=J,e.defaultTagPrefix=n,e.defaultTags=a}),mnc=Xee(e=>{"use strict";var t=dCe(),r=class extends t.Node{constructor(){super(t.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(ae,ne){return this.context=ae,this.range=new t.Range(ne,ne+1),ne+1}},n=class extends t.Node{constructor(ae,ne){super(ae,ne),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(ae,ne){this.context=ae;let{parseNode:ce,src:fe}=ae,{atLineStart:ue,lineStart:de}=ae;!ue&&this.type===t.Type.SEQ_ITEM&&(this.error=new t.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let be=ue?ne-de:ae.indent,Se=t.Node.endOfWhiteSpace(fe,ne+1),De=fe[Se],k=De==="#",tt=[],ze=null;for(;De===` `||De==="#";){if(De==="#"){let Je=t.Node.endOfLine(fe,Se+1);tt.push(new t.Range(Se,Je)),Se=Je}else{ue=!0,de=Se+1;let Je=t.Node.endOfWhiteSpace(fe,de);fe[Je]===` -`&&tt.length===0&&(ze=new r,de=ze.parse({src:fe},de)),Se=t.Node.endOfIndent(fe,de)}De=fe[Se]}if(t.Node.nextNodeIsIndented(De,Se-(de+be),this.type!==t.Type.SEQ_ITEM)?this.node=ce({atLineStart:ue,inCollection:!1,indent:be,lineStart:de,parent:this},Se):De&&de>ne+1&&(Se=de-1),this.node){if(ze){let Je=ae.parent.items||ae.parent.contents;Je&&Je.push(ze)}tt.length&&Array.prototype.push.apply(this.props,tt),Se=this.node.range.end}else if(k){let Je=tt[0];this.props.push(Je),Se=Je.end}else Se=t.Node.endOfLine(fe,ne+1);let Le=this.node?this.node.valueRange.end:Se;return this.valueRange=new t.Range(ne,Le),Se}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.node?this.node.setOrigRanges(ae,ne):ne}toString(){let{context:{src:ae},node:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne?ae.slice(ce.start,ne.range.start)+String(ne):ae.slice(ce.start,ce.end);return t.Node.addStringTerminator(ae,ce.end,ue)}},a=class extends t.Node{constructor(){super(t.Type.COMMENT)}parse(ae,ne){this.context=ae;let ce=this.parseComment(ne);return this.range=new t.Range(ne,ce),ce}};function o(ae){let ne=ae;for(;ne instanceof n;)ne=ne.node;if(!(ne instanceof l))return null;let ce=ne.items.length,fe=-1;for(let be=ce-1;be>=0;--be){let Se=ne.items[be];if(Se.type===t.Type.COMMENT){let{indent:De,lineStart:k}=Se.context;if(De>0&&Se.range.start>=k+De)break;fe=be}else if(Se.type===t.Type.BLANK_LINE)fe=be;else break}if(fe===-1)return null;let ue=ne.items.splice(fe,ce-fe),de=ue[0].range.start;for(;ne.range.end=de,ne.valueRange&&ne.valueRange.end>de&&(ne.valueRange.end=de),ne!==ae;)ne=ne.context.parent;return ue}var l=class ODr extends t.Node{static nextContentHasIndent(ne,ce,fe){let ue=t.Node.endOfLine(ne,ce)+1;ce=t.Node.endOfWhiteSpace(ne,ue);let de=ne[ce];return de?ce>=ue+fe?!0:de!=="#"&&de!==` -`?!1:ODr.nextContentHasIndent(ne,ce,fe):!1}constructor(ne){super(ne.type===t.Type.SEQ_ITEM?t.Type.SEQ:t.Type.MAP);for(let fe=ne.props.length-1;fe>=0;--fe)if(ne.props[fe].start0}parse(ne,ce){this.context=ne;let{parseNode:fe,src:ue}=ne,de=t.Node.startOfLine(ue,ce),be=this.items[0];be.context.parent=this,this.valueRange=t.Range.copy(be.valueRange);let Se=be.range.start-be.context.lineStart,De=ce;De=t.Node.normalizeOffset(ue,De);let k=ue[De],tt=t.Node.endOfWhiteSpace(ue,de)===De,ze=!1;for(;k;){for(;k===` +`&&tt.length===0&&(ze=new r,de=ze.parse({src:fe},de)),Se=t.Node.endOfIndent(fe,de)}De=fe[Se]}if(t.Node.nextNodeIsIndented(De,Se-(de+be),this.type!==t.Type.SEQ_ITEM)?this.node=ce({atLineStart:ue,inCollection:!1,indent:be,lineStart:de,parent:this},Se):De&&de>ne+1&&(Se=de-1),this.node){if(ze){let Je=ae.parent.items||ae.parent.contents;Je&&Je.push(ze)}tt.length&&Array.prototype.push.apply(this.props,tt),Se=this.node.range.end}else if(k){let Je=tt[0];this.props.push(Je),Se=Je.end}else Se=t.Node.endOfLine(fe,ne+1);let Le=this.node?this.node.valueRange.end:Se;return this.valueRange=new t.Range(ne,Le),Se}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.node?this.node.setOrigRanges(ae,ne):ne}toString(){let{context:{src:ae},node:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne?ae.slice(ce.start,ne.range.start)+String(ne):ae.slice(ce.start,ce.end);return t.Node.addStringTerminator(ae,ce.end,ue)}},a=class extends t.Node{constructor(){super(t.Type.COMMENT)}parse(ae,ne){this.context=ae;let ce=this.parseComment(ne);return this.range=new t.Range(ne,ce),ce}};function o(ae){let ne=ae;for(;ne instanceof n;)ne=ne.node;if(!(ne instanceof l))return null;let ce=ne.items.length,fe=-1;for(let be=ce-1;be>=0;--be){let Se=ne.items[be];if(Se.type===t.Type.COMMENT){let{indent:De,lineStart:k}=Se.context;if(De>0&&Se.range.start>=k+De)break;fe=be}else if(Se.type===t.Type.BLANK_LINE)fe=be;else break}if(fe===-1)return null;let ue=ne.items.splice(fe,ce-fe),de=ue[0].range.start;for(;ne.range.end=de,ne.valueRange&&ne.valueRange.end>de&&(ne.valueRange.end=de),ne!==ae;)ne=ne.context.parent;return ue}var l=class MDr extends t.Node{static nextContentHasIndent(ne,ce,fe){let ue=t.Node.endOfLine(ne,ce)+1;ce=t.Node.endOfWhiteSpace(ne,ue);let de=ne[ce];return de?ce>=ue+fe?!0:de!=="#"&&de!==` +`?!1:MDr.nextContentHasIndent(ne,ce,fe):!1}constructor(ne){super(ne.type===t.Type.SEQ_ITEM?t.Type.SEQ:t.Type.MAP);for(let fe=ne.props.length-1;fe>=0;--fe)if(ne.props[fe].start0}parse(ne,ce){this.context=ne;let{parseNode:fe,src:ue}=ne,de=t.Node.startOfLine(ue,ce),be=this.items[0];be.context.parent=this,this.valueRange=t.Range.copy(be.valueRange);let Se=be.range.start-be.context.lineStart,De=ce;De=t.Node.normalizeOffset(ue,De);let k=ue[De],tt=t.Node.endOfWhiteSpace(ue,de)===De,ze=!1;for(;k;){for(;k===` `||k==="#";){if(tt&&k===` -`&&!ze){let ft=new r;if(De=ft.parse({src:ue},De),this.valueRange.end=De,De>=ue.length){k=null;break}this.items.push(ft),De-=1}else if(k==="#"){if(De=ue.length){k=null;break}}if(de=De+1,De=t.Node.endOfIndent(ue,de),t.Node.atBlank(ue,De)){let ft=t.Node.endOfWhiteSpace(ue,De),lt=ue[ft];(!lt||lt===` +`&&!ze){let ft=new r;if(De=ft.parse({src:ue},De),this.valueRange.end=De,De>=ue.length){k=null;break}this.items.push(ft),De-=1}else if(k==="#"){if(De=ue.length){k=null;break}}if(de=De+1,De=t.Node.endOfIndent(ue,de),t.Node.atBlank(ue,De)){let ft=t.Node.endOfWhiteSpace(ue,De),lt=ue[ft];(!lt||lt===` `||lt==="#")&&(De=ft)}k=ue[De],tt=!0}if(!k)break;if(De!==de+Se&&(tt||k!==":")){if(Dece&&(De=de);break}else if(!this.error){let ft="All collection items must start at the same column";this.error=new t.YAMLSyntaxError(this,ft)}}if(be.type===t.Type.SEQ_ITEM){if(k!=="-"){de>ce&&(De=de);break}}else if(k==="-"&&!this.error){let ft=ue[De+1];if(!ft||ft===` `||ft===" "||ft===" "){let lt="A collection cannot be both a mapping and a sequence";this.error=new t.YAMLSyntaxError(this,lt)}}let Le=fe({atLineStart:tt,inCollection:!0,indent:Se,lineStart:de,parent:this},De);if(!Le)return De;if(this.items.push(Le),this.valueRange.end=Le.valueRange.end,De=t.Node.normalizeOffset(ue,Le.range.end),k=ue[De],tt=!1,ze=Le.includesTrailingLines,k){let ft=De-1,lt=ue[ft];for(;lt===" "||lt===" ";)lt=ue[--ft];lt===` `&&(de=ft+1,tt=!0)}let Je=o(Le);Je&&Array.prototype.push.apply(this.items,Je)}return De}setOrigRanges(ne,ce){return ce=super.setOrigRanges(ne,ce),this.items.forEach(fe=>{ce=fe.setOrigRanges(ne,ce)}),ce}toString(){let{context:{src:ne},items:ce,range:fe,value:ue}=this;if(ue!=null)return ue;let de=ne.slice(fe.start,ce[0].range.start)+String(ce[0]);for(let be=1;be0&&(this.contents=this.directives,this.directives=[]),de}return ce[de]?(this.directivesEndMarker=new t.Range(de,de+3),de+3):(ue?this.error=new t.YAMLSemanticError(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),de)}parseContents(ne){let{parseNode:ce,src:fe}=this.context;this.contents||(this.contents=[]);let ue=ne;for(;fe[ue-1]==="-";)ue-=1;let de=t.Node.endOfWhiteSpace(fe,ne),be=ue===ne;for(this.valueRange=new t.Range(de);!t.Node.atDocumentBoundary(fe,de,t.Char.DOCUMENT_END);){switch(fe[de]){case` -`:if(be){let Se=new r;de=Se.parse({src:fe},de),de{ce=fe.setOrigRanges(ne,ce)}),this.directivesEndMarker&&(ce=this.directivesEndMarker.setOrigRange(ne,ce)),this.contents.forEach(fe=>{ce=fe.setOrigRanges(ne,ce)}),this.documentEndMarker&&(ce=this.documentEndMarker.setOrigRange(ne,ce)),ce}toString(){let{contents:ne,directives:ce,value:fe}=this;if(fe!=null)return fe;let ue=ce.join("");return ne.length>0&&((ce.length>0||ne[0].type===t.Type.COMMENT)&&(ue+=`--- `),ue+=ne.join("")),ue[ue.length-1]!==` `&&(ue+=` @@ -2302,185 +2302,187 @@ ${ue} `||De===" "||De===" "||De===","||be===":"&&this.prevNodeIsJsonLike()){this.items.push({char:be,offset:Se}),Se+=1;break}}default:{let De=ce({atLineStart:!1,inCollection:!1,inFlow:!0,indent:-1,lineStart:de,parent:this},Se);if(!De)return this.valueRange=new t.Range(ne,Se),Se;this.items.push(De),Se=t.Node.normalizeOffset(fe,De.range.end)}}Se=t.Node.endOfWhiteSpace(fe,Se),be=fe[Se]}return this.valueRange=new t.Range(ne,Se+1),be&&(this.items.push({char:be,offset:Se}),Se=t.Node.endOfWhiteSpace(fe,Se+1),Se=this.parseComment(Se)),Se}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.items.forEach(ce=>{if(ce instanceof t.Node)ne=ce.setOrigRanges(ae,ne);else if(ae.length===0)ce.origOffset=ce.offset;else{let fe=ne;for(;fece.offset);)++fe;ce.origOffset=ce.offset+fe,ne=fe}}),ne}toString(){let{context:{src:ae},items:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne.filter(Se=>Se instanceof t.Node),de="",be=ce.start;return ue.forEach(Se=>{let De=ae.slice(be,Se.range.start);be=Se.range.end,de+=De+String(Se),de[de.length-1]===` `&&ae[be-1]!==` `&&ae[be]===` -`&&(be+=1)}),de+=ae.slice(be,ce.end),t.Node.addStringTerminator(ae,ce.end,de)}},N=class gwi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe&&fe!=='"';)ce+=fe==="\\"?2:1,fe=ne[ce];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=='"'&&ne.push(new t.YAMLSyntaxError(this,'Missing closing "quote'));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parseCharCode(ne,ce,fe){let{src:ue}=this.context,de=ue.substr(ne,ce),be=de.length===ce&&/^[0-9a-fA-F]+$/.test(de)?parseInt(de,16):NaN;return isNaN(be)?(fe.push(new t.YAMLSyntaxError(this,`Invalid escape sequence ${ue.substr(ne-2,ce+2)}`)),ue.substr(ne-2,ce+2)):String.fromCodePoint(be)}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=gwi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}},B=class Awi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe;)if(fe==="'"){if(ne[ce+1]!=="'")break;fe=ne[ce+=2]}else fe=ne[ce+=1];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=="'"&&ne.push(new t.YAMLSyntaxError(this,"Missing closing 'quote"));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parseCharCode(ne,ce,fe){let{src:ue}=this.context,de=ue.substr(ne,ce),be=de.length===ce&&/^[0-9a-fA-F]+$/.test(de)?parseInt(de,16):NaN;return isNaN(be)?(fe.push(new t.YAMLSyntaxError(this,`Invalid escape sequence ${ue.substr(ne-2,ce+2)}`)),ue.substr(ne-2,ce+2)):String.fromCodePoint(be)}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=bwi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}},B=class Ewi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe;)if(fe==="'"){if(ne[ce+1]!=="'")break;fe=ne[ce+=2]}else fe=ne[ce+=1];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=="'"&&ne.push(new t.YAMLSyntaxError(this,"Missing closing 'quote"));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=Awi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}};function F(ae,ne){switch(ae){case t.Type.ALIAS:return new I(ae,ne);case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return new b(ae,ne);case t.Type.FLOW_MAP:case t.Type.FLOW_SEQ:return new E(ae,ne);case t.Type.MAP_KEY:case t.Type.MAP_VALUE:case t.Type.SEQ_ITEM:return new n(ae,ne);case t.Type.COMMENT:case t.Type.PLAIN:return new t.PlainValue(ae,ne);case t.Type.QUOTE_DOUBLE:return new N(ae,ne);case t.Type.QUOTE_SINGLE:return new B(ae,ne);default:return null}}var Q=class SEt{static parseType(ne,ce,fe){switch(ne[ce]){case"*":return t.Type.ALIAS;case">":return t.Type.BLOCK_FOLDED;case"|":return t.Type.BLOCK_LITERAL;case"{":return t.Type.FLOW_MAP;case"[":return t.Type.FLOW_SEQ;case"?":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_KEY:t.Type.PLAIN;case":":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_VALUE:t.Type.PLAIN;case"-":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.SEQ_ITEM:t.Type.PLAIN;case'"':return t.Type.QUOTE_DOUBLE;case"'":return t.Type.QUOTE_SINGLE;default:return t.Type.PLAIN}}constructor(ne={},{atLineStart:ce,inCollection:fe,inFlow:ue,indent:de,lineStart:be,parent:Se}={}){t._defineProperty(this,"parseNode",(De,k)=>{if(t.Node.atDocumentBoundary(this.src,k))return null;let tt=new SEt(this,De),{props:ze,type:Le,valueStart:Je}=tt.parseProps(k),ft=F(Le,ze),lt=ft.parse(tt,Je);if(ft.range=new t.Range(k,lt),lt<=k&&(ft.error=new Error("Node#parse consumed no characters"),ft.error.parseEnd=lt,ft.error.source=ft,ft.range.end=k+1),tt.nodeStartsCollection(ft)){!ft.error&&!tt.atLineStart&&tt.parent.type===t.Type.DOCUMENT&&(ft.error=new t.YAMLSyntaxError(ft,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let Ot=new l(ft);return lt=Ot.parse(new SEt(tt),lt),Ot.range=new t.Range(k,lt),Ot}return ft}),this.atLineStart=ce??(ne.atLineStart||!1),this.inCollection=fe??(ne.inCollection||!1),this.inFlow=ue??(ne.inFlow||!1),this.indent=de??ne.indent,this.lineStart=be??ne.lineStart,this.parent=Se??(ne.parent||{}),this.root=ne.root,this.src=ne.src}nodeStartsCollection(ne){let{inCollection:ce,inFlow:fe,src:ue}=this;if(ce||fe)return!1;if(ne instanceof n)return!0;let de=ne.range.end;return ue[de]===` +`&&(be+=Se>k?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=Ewi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}};function F(ae,ne){switch(ae){case t.Type.ALIAS:return new I(ae,ne);case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return new b(ae,ne);case t.Type.FLOW_MAP:case t.Type.FLOW_SEQ:return new E(ae,ne);case t.Type.MAP_KEY:case t.Type.MAP_VALUE:case t.Type.SEQ_ITEM:return new n(ae,ne);case t.Type.COMMENT:case t.Type.PLAIN:return new t.PlainValue(ae,ne);case t.Type.QUOTE_DOUBLE:return new N(ae,ne);case t.Type.QUOTE_SINGLE:return new B(ae,ne);default:return null}}var Q=class bEt{static parseType(ne,ce,fe){switch(ne[ce]){case"*":return t.Type.ALIAS;case">":return t.Type.BLOCK_FOLDED;case"|":return t.Type.BLOCK_LITERAL;case"{":return t.Type.FLOW_MAP;case"[":return t.Type.FLOW_SEQ;case"?":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_KEY:t.Type.PLAIN;case":":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_VALUE:t.Type.PLAIN;case"-":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.SEQ_ITEM:t.Type.PLAIN;case'"':return t.Type.QUOTE_DOUBLE;case"'":return t.Type.QUOTE_SINGLE;default:return t.Type.PLAIN}}constructor(ne={},{atLineStart:ce,inCollection:fe,inFlow:ue,indent:de,lineStart:be,parent:Se}={}){t._defineProperty(this,"parseNode",(De,k)=>{if(t.Node.atDocumentBoundary(this.src,k))return null;let tt=new bEt(this,De),{props:ze,type:Le,valueStart:Je}=tt.parseProps(k),ft=F(Le,ze),lt=ft.parse(tt,Je);if(ft.range=new t.Range(k,lt),lt<=k&&(ft.error=new Error("Node#parse consumed no characters"),ft.error.parseEnd=lt,ft.error.source=ft,ft.range.end=k+1),tt.nodeStartsCollection(ft)){!ft.error&&!tt.atLineStart&&tt.parent.type===t.Type.DOCUMENT&&(ft.error=new t.YAMLSyntaxError(ft,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let Ot=new l(ft);return lt=Ot.parse(new bEt(tt),lt),Ot.range=new t.Range(k,lt),Ot}return ft}),this.atLineStart=ce??(ne.atLineStart||!1),this.inCollection=fe??(ne.inCollection||!1),this.inFlow=ue??(ne.inFlow||!1),this.indent=de??ne.indent,this.lineStart=be??ne.lineStart,this.parent=Se??(ne.parent||{}),this.root=ne.root,this.src=ne.src}nodeStartsCollection(ne){let{inCollection:ce,inFlow:fe,src:ue}=this;if(ce||fe)return!1;if(ne instanceof n)return!0;let de=ne.range.end;return ue[de]===` `||ue[de-1]===` `?!1:(de=t.Node.endOfWhiteSpace(ue,de),ue[de]===":")}parseProps(ne){let{inFlow:ce,parent:fe,src:ue}=this,de=[],be=!1;ne=this.atLineStart?t.Node.endOfIndent(ue,ne):t.Node.endOfWhiteSpace(ue,ne);let Se=ue[ne];for(;Se===t.Char.ANCHOR||Se===t.Char.COMMENT||Se===t.Char.TAG||Se===` `;){if(Se===` `){let k=ne,tt;do tt=k+1,k=t.Node.endOfIndent(ue,tt);while(ue[k]===` -`);let ze=k-(tt+this.indent),Le=fe.type===t.Type.SEQ_ITEM&&fe.context.atLineStart;if(ue[k]!=="#"&&!t.Node.nextNodeIsIndented(ue[k],ze,!Le))break;this.atLineStart=!0,this.lineStart=tt,be=!1,ne=k}else if(Se===t.Char.COMMENT){let k=t.Node.endOfLine(ue,ne+1);de.push(new t.Range(ne,k)),ne=k}else{let k=t.Node.endOfIdentifier(ue,ne+1);Se===t.Char.TAG&&ue[k]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(ue.slice(ne+1,k+13))&&(k=t.Node.endOfIdentifier(ue,k+5)),de.push(new t.Range(ne,k)),be=!0,ne=t.Node.endOfWhiteSpace(ue,k)}Se=ue[ne]}be&&Se===":"&&t.Node.atBlank(ue,ne+1,!0)&&(ne-=1);let De=SEt.parseType(ue,ne,ce);return{props:de,type:De,valueStart:ne}}};function J(ae){let ne=[];ae.indexOf("\r")!==-1&&(ae=ae.replace(/\r\n?/g,(ue,de)=>(ue.length>1&&ne.push(de),` +`);let ze=k-(tt+this.indent),Le=fe.type===t.Type.SEQ_ITEM&&fe.context.atLineStart;if(ue[k]!=="#"&&!t.Node.nextNodeIsIndented(ue[k],ze,!Le))break;this.atLineStart=!0,this.lineStart=tt,be=!1,ne=k}else if(Se===t.Char.COMMENT){let k=t.Node.endOfLine(ue,ne+1);de.push(new t.Range(ne,k)),ne=k}else{let k=t.Node.endOfIdentifier(ue,ne+1);Se===t.Char.TAG&&ue[k]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(ue.slice(ne+1,k+13))&&(k=t.Node.endOfIdentifier(ue,k+5)),de.push(new t.Range(ne,k)),be=!0,ne=t.Node.endOfWhiteSpace(ue,k)}Se=ue[ne]}be&&Se===":"&&t.Node.atBlank(ue,ne+1,!0)&&(ne-=1);let De=bEt.parseType(ue,ne,ce);return{props:de,type:De,valueStart:ne}}};function J(ae){let ne=[];ae.indexOf("\r")!==-1&&(ae=ae.replace(/\r\n?/g,(ue,de)=>(ue.length>1&&ne.push(de),` `)));let ce=[],fe=0;do{let ue=new f,de=new Q({src:ae});fe=ue.parse(de,fe),ce.push(ue)}while(fe{if(ne.length===0)return!1;for(let de=1;dece.join(`... -`),ce}e.parse=J}),JJe=Qee(e=>{"use strict";var t=ACe();function r(Hr,Or,Ft){return Ft?`#${Ft.replace(/[\s\S]^/gm,`$&${Or}#`)} +`),ce}e.parse=J}),KJe=Xee(e=>{"use strict";var t=dCe();function r(Hr,Or,Ft){return Ft?`#${Ft.replace(/[\s\S]^/gm,`$&${Or}#`)} ${Or}${Hr}`:Hr}function n(Hr,Or,Ft){return Ft?Ft.indexOf(` `)===-1?`${Hr} #${Ft}`:`${Hr} -`+Ft.replace(/^/gm,`${Or||""}#`):Hr}var a=class{};function o(Hr,Or,Ft){if(Array.isArray(Hr))return Hr.map((zr,Rn)=>o(zr,String(Rn),Ft));if(Hr&&typeof Hr.toJSON=="function"){let zr=Ft&&Ft.anchors&&Ft.anchors.get(Hr);zr&&(Ft.onCreate=Pr=>{zr.res=Pr,delete Ft.onCreate});let Rn=Hr.toJSON(Or,Ft);return zr&&Ft.onCreate&&Ft.onCreate(Rn),Rn}return(!Ft||!Ft.keep)&&typeof Hr=="bigint"?Number(Hr):Hr}var l=class extends a{constructor(Hr){super(),this.value=Hr}toJSON(Hr,Or){return Or&&Or.keep?this.value:o(this.value,Hr,Or)}toString(){return String(this.value)}};function A(Hr,Or,Ft){let zr=Ft;for(let Rn=Or.length-1;Rn>=0;--Rn){let Pr=Or[Rn];if(Number.isInteger(Pr)&&Pr>=0){let Qi=[];Qi[Pr]=zr,zr=Qi}else{let Qi={};Object.defineProperty(Qi,Pr,{value:zr,writable:!0,enumerable:!0,configurable:!0}),zr=Qi}}return Hr.createNode(zr,!1)}var f=Hr=>Hr==null||typeof Hr=="object"&&Hr[Symbol.iterator]().next().done,I=class uCe extends a{constructor(Or){super(),t._defineProperty(this,"items",[]),this.schema=Or}addIn(Or,Ft){if(f(Or))this.add(Ft);else{let[zr,...Rn]=Or,Pr=this.get(zr,!0);if(Pr instanceof uCe)Pr.addIn(Rn,Ft);else if(Pr===void 0&&this.schema)this.set(zr,A(this.schema,Rn,Ft));else throw new Error(`Expected YAML collection at ${zr}. Remaining path: ${Rn}`)}}deleteIn([Or,...Ft]){if(Ft.length===0)return this.delete(Or);let zr=this.get(Or,!0);if(zr instanceof uCe)return zr.deleteIn(Ft);throw new Error(`Expected YAML collection at ${Or}. Remaining path: ${Ft}`)}getIn([Or,...Ft],zr){let Rn=this.get(Or,!0);return Ft.length===0?!zr&&Rn instanceof l?Rn.value:Rn:Rn instanceof uCe?Rn.getIn(Ft,zr):void 0}hasAllNullValues(){return this.items.every(Or=>{if(!Or||Or.type!=="PAIR")return!1;let Ft=Or.value;return Ft==null||Ft instanceof l&&Ft.value==null&&!Ft.commentBefore&&!Ft.comment&&!Ft.tag})}hasIn([Or,...Ft]){if(Ft.length===0)return this.has(Or);let zr=this.get(Or,!0);return zr instanceof uCe?zr.hasIn(Ft):!1}setIn([Or,...Ft],zr){if(Ft.length===0)this.set(Or,zr);else{let Rn=this.get(Or,!0);if(Rn instanceof uCe)Rn.setIn(Ft,zr);else if(Rn===void 0&&this.schema)this.set(Or,A(this.schema,Ft,zr));else throw new Error(`Expected YAML collection at ${Or}. Remaining path: ${Ft}`)}}toJSON(){return null}toString(Or,{blockItem:Ft,flowChars:zr,isMap:Rn,itemIndent:Pr},Qi,ps){let{indent:yo,indentStep:bo,stringify:Qa}=Or,gc=this.type===t.Type.FLOW_MAP||this.type===t.Type.FLOW_SEQ||Or.inFlow;gc&&(Pr+=bo);let _g=Rn&&this.hasAllNullValues();Or=Object.assign({},Or,{allNullValues:_g,indent:Pr,inFlow:gc,type:null});let Nc=!1,sA=!1,ma=this.items.reduce((li,Ei,Ws)=>{let Xa;Ei&&(!Nc&&Ei.spaceBefore&&li.push({type:"comment",str:""}),Ei.commentBefore&&Ei.commentBefore.match(/^.*$/gm).forEach(Ql=>{li.push({type:"comment",str:`#${Ql}`})}),Ei.comment&&(Xa=Ei.comment),gc&&(!Nc&&Ei.spaceBefore||Ei.commentBefore||Ei.comment||Ei.key&&(Ei.key.commentBefore||Ei.key.comment)||Ei.value&&(Ei.value.commentBefore||Ei.value.comment))&&(sA=!0)),Nc=!1;let ac=Qa(Ei,Or,()=>Xa=null,()=>Nc=!0);return gc&&!sA&&ac.includes(` -`)&&(sA=!0),gc&&WsXa.str);if(sA||Ws.reduce((Xa,ac)=>Xa+ac.length+2,2)>uCe.maxFlowStringSingleLineLength){vu=li;for(let Xa of Ws)vu+=Xa?` -${bo}${yo}${Xa}`:` +`+Ft.replace(/^/gm,`${Or||""}#`):Hr}var a=class{};function o(Hr,Or,Ft){if(Array.isArray(Hr))return Hr.map((zr,Rn)=>o(zr,String(Rn),Ft));if(Hr&&typeof Hr.toJSON=="function"){let zr=Ft&&Ft.anchors&&Ft.anchors.get(Hr);zr&&(Ft.onCreate=Pr=>{zr.res=Pr,delete Ft.onCreate});let Rn=Hr.toJSON(Or,Ft);return zr&&Ft.onCreate&&Ft.onCreate(Rn),Rn}return(!Ft||!Ft.keep)&&typeof Hr=="bigint"?Number(Hr):Hr}var l=class extends a{constructor(Hr){super(),this.value=Hr}toJSON(Hr,Or){return Or&&Or.keep?this.value:o(this.value,Hr,Or)}toString(){return String(this.value)}};function A(Hr,Or,Ft){let zr=Ft;for(let Rn=Or.length-1;Rn>=0;--Rn){let Pr=Or[Rn];if(Number.isInteger(Pr)&&Pr>=0){let Qi=[];Qi[Pr]=zr,zr=Qi}else{let Qi={};Object.defineProperty(Qi,Pr,{value:zr,writable:!0,enumerable:!0,configurable:!0}),zr=Qi}}return Hr.createNode(zr,!1)}var f=Hr=>Hr==null||typeof Hr=="object"&&Hr[Symbol.iterator]().next().done,I=class gCe extends a{constructor(Or){super(),t._defineProperty(this,"items",[]),this.schema=Or}addIn(Or,Ft){if(f(Or))this.add(Ft);else{let[zr,...Rn]=Or,Pr=this.get(zr,!0);if(Pr instanceof gCe)Pr.addIn(Rn,Ft);else if(Pr===void 0&&this.schema)this.set(zr,A(this.schema,Rn,Ft));else throw new Error(`Expected YAML collection at ${zr}. Remaining path: ${Rn}`)}}deleteIn([Or,...Ft]){if(Ft.length===0)return this.delete(Or);let zr=this.get(Or,!0);if(zr instanceof gCe)return zr.deleteIn(Ft);throw new Error(`Expected YAML collection at ${Or}. Remaining path: ${Ft}`)}getIn([Or,...Ft],zr){let Rn=this.get(Or,!0);return Ft.length===0?!zr&&Rn instanceof l?Rn.value:Rn:Rn instanceof gCe?Rn.getIn(Ft,zr):void 0}hasAllNullValues(){return this.items.every(Or=>{if(!Or||Or.type!=="PAIR")return!1;let Ft=Or.value;return Ft==null||Ft instanceof l&&Ft.value==null&&!Ft.commentBefore&&!Ft.comment&&!Ft.tag})}hasIn([Or,...Ft]){if(Ft.length===0)return this.has(Or);let zr=this.get(Or,!0);return zr instanceof gCe?zr.hasIn(Ft):!1}setIn([Or,...Ft],zr){if(Ft.length===0)this.set(Or,zr);else{let Rn=this.get(Or,!0);if(Rn instanceof gCe)Rn.setIn(Ft,zr);else if(Rn===void 0&&this.schema)this.set(Or,A(this.schema,Ft,zr));else throw new Error(`Expected YAML collection at ${Or}. Remaining path: ${Ft}`)}}toJSON(){return null}toString(Or,{blockItem:Ft,flowChars:zr,isMap:Rn,itemIndent:Pr},Qi,ps){let{indent:_o,indentStep:yo,stringify:Qa}=Or,gc=this.type===t.Type.FLOW_MAP||this.type===t.Type.FLOW_SEQ||Or.inFlow;gc&&(Pr+=yo);let _g=Rn&&this.hasAllNullValues();Or=Object.assign({},Or,{allNullValues:_g,indent:Pr,inFlow:gc,type:null});let Nc=!1,oA=!1,ma=this.items.reduce((li,Ei,Ws)=>{let Xa;Ei&&(!Nc&&Ei.spaceBefore&&li.push({type:"comment",str:""}),Ei.commentBefore&&Ei.commentBefore.match(/^.*$/gm).forEach(Ql=>{li.push({type:"comment",str:`#${Ql}`})}),Ei.comment&&(Xa=Ei.comment),gc&&(!Nc&&Ei.spaceBefore||Ei.commentBefore||Ei.comment||Ei.key&&(Ei.key.commentBefore||Ei.key.comment)||Ei.value&&(Ei.value.commentBefore||Ei.value.comment))&&(oA=!0)),Nc=!1;let ac=Qa(Ei,Or,()=>Xa=null,()=>Nc=!0);return gc&&!oA&&ac.includes(` +`)&&(oA=!0),gc&&WsXa.str);if(oA||Ws.reduce((Xa,ac)=>Xa+ac.length+2,2)>gCe.maxFlowStringSingleLineLength){vu=li;for(let Xa of Ws)vu+=Xa?` +${yo}${_o}${Xa}`:` `;vu+=` -${yo}${Ei}`}else vu=`${li} ${Ws.join(" ")} ${Ei}`}else{let li=ma.map(Ft);vu=li.shift();for(let Ei of li)vu+=Ei?` -${yo}${Ei}`:` +${_o}${Ei}`}else vu=`${li} ${Ws.join(" ")} ${Ei}`}else{let li=ma.map(Ft);vu=li.shift();for(let Ei of li)vu+=Ei?` +${_o}${Ei}`:` `}return this.comment?(vu+=` -`+this.comment.replace(/^/gm,`${yo}#`),Qi&&Qi()):Nc&&ps&&ps(),vu}};t._defineProperty(I,"maxFlowStringSingleLineLength",60);function C(Hr){let Or=Hr instanceof l?Hr.value:Hr;return Or&&typeof Or=="string"&&(Or=Number(Or)),Number.isInteger(Or)&&Or>=0?Or:null}var b=class extends I{add(Hr){this.items.push(Hr)}delete(Hr){let Or=C(Hr);return typeof Or!="number"?!1:this.items.splice(Or,1).length>0}get(Hr,Or){let Ft=C(Hr);if(typeof Ft!="number")return;let zr=this.items[Ft];return!Or&&zr instanceof l?zr.value:zr}has(Hr){let Or=C(Hr);return typeof Or=="number"&&Orzr.type==="comment"?zr.str:`- ${zr.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(Hr.indent||"")+" "},Or,Ft):JSON.stringify(this)}},E=(Hr,Or,Ft)=>Or===null?"":typeof Or!="object"?String(Or):Hr instanceof a&&Ft&&Ft.doc?Hr.toString({anchors:Object.create(null),doc:Ft.doc,indent:"",indentStep:Ft.indentStep,inFlow:!0,inStringifyKey:!0,stringify:Ft.stringify}):JSON.stringify(Or),N=class dwi extends a{constructor(Or,Ft=null){super(),this.key=Or,this.value=Ft,this.type=dwi.Type.PAIR}get commentBefore(){return this.key instanceof a?this.key.commentBefore:void 0}set commentBefore(Or){if(this.key==null&&(this.key=new l(null)),this.key instanceof a)this.key.commentBefore=Or;else{let Ft="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(Ft)}}addToJSMap(Or,Ft){let zr=o(this.key,"",Or);if(Ft instanceof Map){let Rn=o(this.value,zr,Or);Ft.set(zr,Rn)}else if(Ft instanceof Set)Ft.add(zr);else{let Rn=E(this.key,zr,Or),Pr=o(this.value,Rn,Or);Rn in Ft?Object.defineProperty(Ft,Rn,{value:Pr,writable:!0,enumerable:!0,configurable:!0}):Ft[Rn]=Pr}return Ft}toJSON(Or,Ft){let zr=Ft&&Ft.mapAsMap?new Map:{};return this.addToJSMap(Ft,zr)}toString(Or,Ft,zr){if(!Or||!Or.doc)return JSON.stringify(this);let{indent:Rn,indentSeq:Pr,simpleKeys:Qi}=Or.doc.options,{key:ps,value:yo}=this,bo=ps instanceof a&&ps.comment;if(Qi){if(bo)throw new Error("With simple keys, key nodes cannot have comments");if(ps instanceof I){let ac="With simple keys, collection cannot be used as a key value";throw new Error(ac)}}let Qa=!Qi&&(!ps||bo||(ps instanceof a?ps instanceof I||ps.type===t.Type.BLOCK_FOLDED||ps.type===t.Type.BLOCK_LITERAL:typeof ps=="object")),{doc:gc,indent:_g,indentStep:Nc,stringify:sA}=Or;Or=Object.assign({},Or,{implicitKey:!Qa,indent:_g+Nc});let ma=!1,vu=sA(ps,Or,()=>bo=null,()=>ma=!0);if(vu=n(vu,Or.indent,bo),!Qa&&vu.length>1024){if(Qi)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");Qa=!0}if(Or.allNullValues&&!Qi)return this.comment?(vu=n(vu,Or.indent,this.comment),Ft&&Ft()):ma&&!bo&&zr&&zr(),Or.inFlow&&!Qa?vu:`? ${vu}`;vu=Qa?`? ${vu} -${_g}:`:`${vu}:`,this.comment&&(vu=n(vu,Or.indent,this.comment),Ft&&Ft());let li="",Ei=null;if(yo instanceof a){if(yo.spaceBefore&&(li=` -`),yo.commentBefore){let ac=yo.commentBefore.replace(/^/gm,`${Or.indent}#`);li+=` -${ac}`}Ei=yo.comment}else yo&&typeof yo=="object"&&(yo=gc.schema.createNode(yo,!0));Or.implicitKey=!1,!Qa&&!this.comment&&yo instanceof l&&(Or.indentAtStart=vu.length+1),ma=!1,!Pr&&Rn>=2&&!Or.inFlow&&!Qa&&yo instanceof b&&yo.type!==t.Type.FLOW_SEQ&&!yo.tag&&!gc.anchors.getName(yo)&&(Or.indent=Or.indent.substr(2));let Ws=sA(yo,Or,()=>Ei=null,()=>ma=!0),Xa=" ";return li||this.comment?Xa=`${li} -${Or.indent}`:!Qa&&yo instanceof I?(!(Ws[0]==="["||Ws[0]==="{")||Ws.includes(` +`+this.comment.replace(/^/gm,`${_o}#`),Qi&&Qi()):Nc&&ps&&ps(),vu}};t._defineProperty(I,"maxFlowStringSingleLineLength",60);function C(Hr){let Or=Hr instanceof l?Hr.value:Hr;return Or&&typeof Or=="string"&&(Or=Number(Or)),Number.isInteger(Or)&&Or>=0?Or:null}var b=class extends I{add(Hr){this.items.push(Hr)}delete(Hr){let Or=C(Hr);return typeof Or!="number"?!1:this.items.splice(Or,1).length>0}get(Hr,Or){let Ft=C(Hr);if(typeof Ft!="number")return;let zr=this.items[Ft];return!Or&&zr instanceof l?zr.value:zr}has(Hr){let Or=C(Hr);return typeof Or=="number"&&Orzr.type==="comment"?zr.str:`- ${zr.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(Hr.indent||"")+" "},Or,Ft):JSON.stringify(this)}},E=(Hr,Or,Ft)=>Or===null?"":typeof Or!="object"?String(Or):Hr instanceof a&&Ft&&Ft.doc?Hr.toString({anchors:Object.create(null),doc:Ft.doc,indent:"",indentStep:Ft.indentStep,inFlow:!0,inStringifyKey:!0,stringify:Ft.stringify}):JSON.stringify(Or),N=class Swi extends a{constructor(Or,Ft=null){super(),this.key=Or,this.value=Ft,this.type=Swi.Type.PAIR}get commentBefore(){return this.key instanceof a?this.key.commentBefore:void 0}set commentBefore(Or){if(this.key==null&&(this.key=new l(null)),this.key instanceof a)this.key.commentBefore=Or;else{let Ft="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(Ft)}}addToJSMap(Or,Ft){let zr=o(this.key,"",Or);if(Ft instanceof Map){let Rn=o(this.value,zr,Or);Ft.set(zr,Rn)}else if(Ft instanceof Set)Ft.add(zr);else{let Rn=E(this.key,zr,Or),Pr=o(this.value,Rn,Or);Rn in Ft?Object.defineProperty(Ft,Rn,{value:Pr,writable:!0,enumerable:!0,configurable:!0}):Ft[Rn]=Pr}return Ft}toJSON(Or,Ft){let zr=Ft&&Ft.mapAsMap?new Map:{};return this.addToJSMap(Ft,zr)}toString(Or,Ft,zr){if(!Or||!Or.doc)return JSON.stringify(this);let{indent:Rn,indentSeq:Pr,simpleKeys:Qi}=Or.doc.options,{key:ps,value:_o}=this,yo=ps instanceof a&&ps.comment;if(Qi){if(yo)throw new Error("With simple keys, key nodes cannot have comments");if(ps instanceof I){let ac="With simple keys, collection cannot be used as a key value";throw new Error(ac)}}let Qa=!Qi&&(!ps||yo||(ps instanceof a?ps instanceof I||ps.type===t.Type.BLOCK_FOLDED||ps.type===t.Type.BLOCK_LITERAL:typeof ps=="object")),{doc:gc,indent:_g,indentStep:Nc,stringify:oA}=Or;Or=Object.assign({},Or,{implicitKey:!Qa,indent:_g+Nc});let ma=!1,vu=oA(ps,Or,()=>yo=null,()=>ma=!0);if(vu=n(vu,Or.indent,yo),!Qa&&vu.length>1024){if(Qi)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");Qa=!0}if(Or.allNullValues&&!Qi)return this.comment?(vu=n(vu,Or.indent,this.comment),Ft&&Ft()):ma&&!yo&&zr&&zr(),Or.inFlow&&!Qa?vu:`? ${vu}`;vu=Qa?`? ${vu} +${_g}:`:`${vu}:`,this.comment&&(vu=n(vu,Or.indent,this.comment),Ft&&Ft());let li="",Ei=null;if(_o instanceof a){if(_o.spaceBefore&&(li=` +`),_o.commentBefore){let ac=_o.commentBefore.replace(/^/gm,`${Or.indent}#`);li+=` +${ac}`}Ei=_o.comment}else _o&&typeof _o=="object"&&(_o=gc.schema.createNode(_o,!0));Or.implicitKey=!1,!Qa&&!this.comment&&_o instanceof l&&(Or.indentAtStart=vu.length+1),ma=!1,!Pr&&Rn>=2&&!Or.inFlow&&!Qa&&_o instanceof b&&_o.type!==t.Type.FLOW_SEQ&&!_o.tag&&!gc.anchors.getName(_o)&&(Or.indent=Or.indent.substr(2));let Ws=oA(_o,Or,()=>Ei=null,()=>ma=!0),Xa=" ";return li||this.comment?Xa=`${li} +${Or.indent}`:!Qa&&_o instanceof I?(!(Ws[0]==="["||Ws[0]==="{")||Ws.includes(` `))&&(Xa=` ${Or.indent}`):Ws[0]===` -`&&(Xa=""),ma&&!Ei&&zr&&zr(),n(vu+Xa+Ws,Or.indent,Ei)}};t._defineProperty(N,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var B=(Hr,Or)=>{if(Hr instanceof F){let Ft=Or.get(Hr.source);return Ft.count*Ft.aliasCount}else if(Hr instanceof I){let Ft=0;for(let zr of Hr.items){let Rn=B(zr,Or);Rn>Ft&&(Ft=Rn)}return Ft}else if(Hr instanceof N){let Ft=B(Hr.key,Or),zr=B(Hr.value,Or);return Math.max(Ft,zr)}return 1},F=class pwi extends a{static stringify({range:Or,source:Ft},{anchors:zr,doc:Rn,implicitKey:Pr,inStringifyKey:Qi}){let ps=Object.keys(zr).find(bo=>zr[bo]===Ft);if(!ps&&Qi&&(ps=Rn.anchors.getName(Ft)||Rn.anchors.newName()),ps)return`*${ps}${Pr?" ":""}`;let yo=Rn.anchors.getName(Ft)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${yo} [${Or}]`)}constructor(Or){super(),this.source=Or,this.type=t.Type.ALIAS}set tag(Or){throw new Error("Alias nodes cannot have tags")}toJSON(Or,Ft){if(!Ft)return o(this.source,Or,Ft);let{anchors:zr,maxAliasCount:Rn}=Ft,Pr=zr.get(this.source);if(!Pr||Pr.res===void 0){let Qi="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}if(Rn>=0&&(Pr.count+=1,Pr.aliasCount===0&&(Pr.aliasCount=B(this.source,zr)),Pr.count*Pr.aliasCount>Rn)){let Qi="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}return Pr.res}toString(Or){return pwi.stringify(this,Or)}};t._defineProperty(F,"default",!0);function Q(Hr,Or){let Ft=Or instanceof l?Or.value:Or;for(let zr of Hr)if(zr instanceof N&&(zr.key===Or||zr.key===Ft||zr.key&&zr.key.value===Ft))return zr}var J=class extends I{add(Hr,Or){Hr?Hr instanceof N||(Hr=new N(Hr.key||Hr,Hr.value)):Hr=new N(Hr);let Ft=Q(this.items,Hr.key),zr=this.schema&&this.schema.sortMapEntries;if(Ft)if(Or)Ft.value=Hr.value;else throw new Error(`Key ${Hr.key} already set`);else if(zr){let Rn=this.items.findIndex(Pr=>zr(Hr,Pr)<0);Rn===-1?this.items.push(Hr):this.items.splice(Rn,0,Hr)}else this.items.push(Hr)}delete(Hr){let Or=Q(this.items,Hr);return Or?this.items.splice(this.items.indexOf(Or),1).length>0:!1}get(Hr,Or){let Ft=Q(this.items,Hr),zr=Ft&&Ft.value;return!Or&&zr instanceof l?zr.value:zr}has(Hr){return!!Q(this.items,Hr)}set(Hr,Or){this.add(new N(Hr,Or),!0)}toJSON(Hr,Or,Ft){let zr=Ft?new Ft:Or&&Or.mapAsMap?new Map:{};Or&&Or.onCreate&&Or.onCreate(zr);for(let Rn of this.items)Rn.addToJSMap(Or,zr);return zr}toString(Hr,Or,Ft){if(!Hr)return JSON.stringify(this);for(let zr of this.items)if(!(zr instanceof N))throw new Error(`Map items must all be pairs; found ${JSON.stringify(zr)} instead`);return super.toString(Hr,{blockItem:zr=>zr.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:Hr.indent||""},Or,Ft)}},ae="<<",ne=class extends N{constructor(Hr){if(Hr instanceof N){let Or=Hr.value;Or instanceof b||(Or=new b,Or.items.push(Hr.value),Or.range=Hr.value.range),super(Hr.key,Or),this.range=Hr.range}else super(new l(ae),new b);this.type=N.Type.MERGE_PAIR}addToJSMap(Hr,Or){for(let{source:Ft}of this.value.items){if(!(Ft instanceof J))throw new Error("Merge sources must be maps");let zr=Ft.toJSON(null,Hr,Map);for(let[Rn,Pr]of zr)Or instanceof Map?Or.has(Rn)||Or.set(Rn,Pr):Or instanceof Set?Or.add(Rn):Object.prototype.hasOwnProperty.call(Or,Rn)||Object.defineProperty(Or,Rn,{value:Pr,writable:!0,enumerable:!0,configurable:!0})}return Or}toString(Hr,Or){let Ft=this.value;if(Ft.items.length>1)return super.toString(Hr,Or);this.value=Ft.items[0];let zr=super.toString(Hr,Or);return this.value=Ft,zr}},ce={defaultType:t.Type.BLOCK_LITERAL,lineWidth:76},fe={trueStr:"true",falseStr:"false"},ue={asBigInt:!1},de={nullStr:"null"},be={defaultType:t.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Se(Hr,Or,Ft){for(let{format:zr,test:Rn,resolve:Pr}of Or)if(Rn){let Qi=Hr.match(Rn);if(Qi){let ps=Pr.apply(null,Qi);return ps instanceof l||(ps=new l(ps)),zr&&(ps.format=zr),ps}}return Ft&&(Hr=Ft(Hr)),new l(Hr)}var De="flow",k="block",tt="quoted",ze=(Hr,Or)=>{let Ft=Hr[Or+1];for(;Ft===" "||Ft===" ";){do Ft=Hr[Or+=1];while(Ft&&Ft!==` -`);Ft=Hr[Or+1]}return Or};function Le(Hr,Or,Ft,{indentAtStart:zr,lineWidth:Rn=80,minContentWidth:Pr=20,onFold:Qi,onOverflow:ps}){if(!Rn||Rn<0)return Hr;let yo=Math.max(1+Pr,1+Rn-Or.length);if(Hr.length<=yo)return Hr;let bo=[],Qa={},gc=Rn-Or.length;typeof zr=="number"&&(zr>Rn-Math.max(2,Pr)?bo.push(0):gc=Rn-zr);let _g,Nc,sA=!1,ma=-1,vu=-1,li=-1;Ft===k&&(ma=ze(Hr,ma),ma!==-1&&(gc=ma+yo));for(let Ws;Ws=Hr[ma+=1];){if(Ft===tt&&Ws==="\\"){switch(vu=ma,Hr[ma+1]){case"x":ma+=3;break;case"u":ma+=5;break;case"U":ma+=9;break;default:ma+=1}li=ma}if(Ws===` -`)Ft===k&&(ma=ze(Hr,ma)),gc=ma+yo,_g=void 0;else{if(Ws===" "&&Nc&&Nc!==" "&&Nc!==` +`&&(Xa=""),ma&&!Ei&&zr&&zr(),n(vu+Xa+Ws,Or.indent,Ei)}};t._defineProperty(N,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var B=(Hr,Or)=>{if(Hr instanceof F){let Ft=Or.get(Hr.source);return Ft.count*Ft.aliasCount}else if(Hr instanceof I){let Ft=0;for(let zr of Hr.items){let Rn=B(zr,Or);Rn>Ft&&(Ft=Rn)}return Ft}else if(Hr instanceof N){let Ft=B(Hr.key,Or),zr=B(Hr.value,Or);return Math.max(Ft,zr)}return 1},F=class vwi extends a{static stringify({range:Or,source:Ft},{anchors:zr,doc:Rn,implicitKey:Pr,inStringifyKey:Qi}){let ps=Object.keys(zr).find(yo=>zr[yo]===Ft);if(!ps&&Qi&&(ps=Rn.anchors.getName(Ft)||Rn.anchors.newName()),ps)return`*${ps}${Pr?" ":""}`;let _o=Rn.anchors.getName(Ft)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${_o} [${Or}]`)}constructor(Or){super(),this.source=Or,this.type=t.Type.ALIAS}set tag(Or){throw new Error("Alias nodes cannot have tags")}toJSON(Or,Ft){if(!Ft)return o(this.source,Or,Ft);let{anchors:zr,maxAliasCount:Rn}=Ft,Pr=zr.get(this.source);if(!Pr||Pr.res===void 0){let Qi="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}if(Rn>=0&&(Pr.count+=1,Pr.aliasCount===0&&(Pr.aliasCount=B(this.source,zr)),Pr.count*Pr.aliasCount>Rn)){let Qi="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}return Pr.res}toString(Or){return vwi.stringify(this,Or)}};t._defineProperty(F,"default",!0);function Q(Hr,Or){let Ft=Or instanceof l?Or.value:Or;for(let zr of Hr)if(zr instanceof N&&(zr.key===Or||zr.key===Ft||zr.key&&zr.key.value===Ft))return zr}var J=class extends I{add(Hr,Or){Hr?Hr instanceof N||(Hr=new N(Hr.key||Hr,Hr.value)):Hr=new N(Hr);let Ft=Q(this.items,Hr.key),zr=this.schema&&this.schema.sortMapEntries;if(Ft)if(Or)Ft.value=Hr.value;else throw new Error(`Key ${Hr.key} already set`);else if(zr){let Rn=this.items.findIndex(Pr=>zr(Hr,Pr)<0);Rn===-1?this.items.push(Hr):this.items.splice(Rn,0,Hr)}else this.items.push(Hr)}delete(Hr){let Or=Q(this.items,Hr);return Or?this.items.splice(this.items.indexOf(Or),1).length>0:!1}get(Hr,Or){let Ft=Q(this.items,Hr),zr=Ft&&Ft.value;return!Or&&zr instanceof l?zr.value:zr}has(Hr){return!!Q(this.items,Hr)}set(Hr,Or){this.add(new N(Hr,Or),!0)}toJSON(Hr,Or,Ft){let zr=Ft?new Ft:Or&&Or.mapAsMap?new Map:{};Or&&Or.onCreate&&Or.onCreate(zr);for(let Rn of this.items)Rn.addToJSMap(Or,zr);return zr}toString(Hr,Or,Ft){if(!Hr)return JSON.stringify(this);for(let zr of this.items)if(!(zr instanceof N))throw new Error(`Map items must all be pairs; found ${JSON.stringify(zr)} instead`);return super.toString(Hr,{blockItem:zr=>zr.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:Hr.indent||""},Or,Ft)}},ae="<<",ne=class extends N{constructor(Hr){if(Hr instanceof N){let Or=Hr.value;Or instanceof b||(Or=new b,Or.items.push(Hr.value),Or.range=Hr.value.range),super(Hr.key,Or),this.range=Hr.range}else super(new l(ae),new b);this.type=N.Type.MERGE_PAIR}addToJSMap(Hr,Or){for(let{source:Ft}of this.value.items){if(!(Ft instanceof J))throw new Error("Merge sources must be maps");let zr=Ft.toJSON(null,Hr,Map);for(let[Rn,Pr]of zr)Or instanceof Map?Or.has(Rn)||Or.set(Rn,Pr):Or instanceof Set?Or.add(Rn):Object.prototype.hasOwnProperty.call(Or,Rn)||Object.defineProperty(Or,Rn,{value:Pr,writable:!0,enumerable:!0,configurable:!0})}return Or}toString(Hr,Or){let Ft=this.value;if(Ft.items.length>1)return super.toString(Hr,Or);this.value=Ft.items[0];let zr=super.toString(Hr,Or);return this.value=Ft,zr}},ce={defaultType:t.Type.BLOCK_LITERAL,lineWidth:76},fe={trueStr:"true",falseStr:"false"},ue={asBigInt:!1},de={nullStr:"null"},be={defaultType:t.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Se(Hr,Or,Ft){for(let{format:zr,test:Rn,resolve:Pr}of Or)if(Rn){let Qi=Hr.match(Rn);if(Qi){let ps=Pr.apply(null,Qi);return ps instanceof l||(ps=new l(ps)),zr&&(ps.format=zr),ps}}return Ft&&(Hr=Ft(Hr)),new l(Hr)}var De="flow",k="block",tt="quoted",ze=(Hr,Or)=>{let Ft=Hr[Or+1];for(;Ft===" "||Ft===" ";){do Ft=Hr[Or+=1];while(Ft&&Ft!==` +`);Ft=Hr[Or+1]}return Or};function Le(Hr,Or,Ft,{indentAtStart:zr,lineWidth:Rn=80,minContentWidth:Pr=20,onFold:Qi,onOverflow:ps}){if(!Rn||Rn<0)return Hr;let _o=Math.max(1+Pr,1+Rn-Or.length);if(Hr.length<=_o)return Hr;let yo=[],Qa={},gc=Rn-Or.length;typeof zr=="number"&&(zr>Rn-Math.max(2,Pr)?yo.push(0):gc=Rn-zr);let _g,Nc,oA=!1,ma=-1,vu=-1,li=-1;Ft===k&&(ma=ze(Hr,ma),ma!==-1&&(gc=ma+_o));for(let Ws;Ws=Hr[ma+=1];){if(Ft===tt&&Ws==="\\"){switch(vu=ma,Hr[ma+1]){case"x":ma+=3;break;case"u":ma+=5;break;case"U":ma+=9;break;default:ma+=1}li=ma}if(Ws===` +`)Ft===k&&(ma=ze(Hr,ma)),gc=ma+_o,_g=void 0;else{if(Ws===" "&&Nc&&Nc!==" "&&Nc!==` `&&Nc!==" "){let Xa=Hr[ma+1];Xa&&Xa!==" "&&Xa!==` -`&&Xa!==" "&&(_g=ma)}if(ma>=gc)if(_g)bo.push(_g),gc=_g+yo,_g=void 0;else if(Ft===tt){for(;Nc===" "||Nc===" ";)Nc=Ws,Ws=Hr[ma+=1],sA=!0;let Xa=ma>li+1?ma-2:vu-1;if(Qa[Xa])return Hr;bo.push(Xa),Qa[Xa]=!0,gc=Xa+yo,_g=void 0}else sA=!0}Nc=Ws}if(sA&&ps&&ps(),bo.length===0)return Hr;Qi&&Qi();let Ei=Hr.slice(0,bo[0]);for(let Ws=0;Ws=gc)if(_g)yo.push(_g),gc=_g+_o,_g=void 0;else if(Ft===tt){for(;Nc===" "||Nc===" ";)Nc=Ws,Ws=Hr[ma+=1],oA=!0;let Xa=ma>li+1?ma-2:vu-1;if(Qa[Xa])return Hr;yo.push(Xa),Qa[Xa]=!0,gc=Xa+_o,_g=void 0}else oA=!0}Nc=Ws}if(oA&&ps&&ps(),yo.length===0)return Hr;Qi&&Qi();let Ei=Hr.slice(0,yo[0]);for(let Ws=0;WsHr?Object.assign({indentAtStart:Hr},be.fold):be.fold,ft=Hr=>/^(%|---|\.\.\.)/m.test(Hr);function lt(Hr,Or,Ft){if(!Or||Or<0)return!1;let zr=Or-Ft,Rn=Hr.length;if(Rn<=zr)return!1;for(let Pr=0,Qi=0;Przr)return!0;if(Qi=Pr+1,Rn-Qi<=zr)return!1}return!0}function Ot(Hr,Or){let{implicitKey:Ft}=Or,{jsonEncoding:zr,minMultiLineLength:Rn}=be.doubleQuoted,Pr=JSON.stringify(Hr);if(zr)return Pr;let Qi=Or.indent||(ft(Hr)?" ":""),ps="",yo=0;for(let bo=0,Qa=Pr[bo];Qa;Qa=Pr[++bo])if(Qa===" "&&Pr[bo+1]==="\\"&&Pr[bo+2]==="n"&&(ps+=Pr.slice(yo,bo)+"\\ ",bo+=1,yo=bo,Qa="\\"),Qa==="\\")switch(Pr[bo+1]){case"u":{ps+=Pr.slice(yo,bo);let gc=Pr.substr(bo+2,4);switch(gc){case"0000":ps+="\\0";break;case"0007":ps+="\\a";break;case"000b":ps+="\\v";break;case"001b":ps+="\\e";break;case"0085":ps+="\\N";break;case"00a0":ps+="\\_";break;case"2028":ps+="\\L";break;case"2029":ps+="\\P";break;default:gc.substr(0,2)==="00"?ps+="\\x"+gc.substr(2):ps+=Pr.substr(bo,6)}bo+=5,yo=bo+1}break;case"n":if(Ft||Pr[bo+2]==='"'||Pr.length";if(!Ft)return bo+` -`;let Qa="",gc="";if(Ft=Ft.replace(/[\n\t ]*$/,Nc=>{let sA=Nc.indexOf(` -`);return sA===-1?bo+="-":(Ft===Nc||sA!==Nc.length-1)&&(bo+="+",Pr&&Pr()),gc=Nc.replace(/\n$/,""),""}).replace(/^[\n ]*/,Nc=>{Nc.indexOf(" ")!==-1&&(bo+=ps);let sA=Nc.match(/ +$/);return sA?(Qa=Nc.slice(0,-sA[0].length),sA[0]):(Qa=Nc,"")}),gc&&(gc=gc.replace(/\n+(?!\n|$)/g,`$&${Qi}`)),Qa&&(Qa=Qa.replace(/\n+/g,`$&${Qi}`)),Hr&&(bo+=" #"+Hr.replace(/ ?[\r\n]+/g," "),Rn&&Rn()),!Ft)return`${bo}${ps} -${Qi}${gc}`;if(yo)return Ft=Ft.replace(/\n+/g,`$&${Qi}`),`${bo} +`){if(Pr-Qi>zr)return!0;if(Qi=Pr+1,Rn-Qi<=zr)return!1}return!0}function Ot(Hr,Or){let{implicitKey:Ft}=Or,{jsonEncoding:zr,minMultiLineLength:Rn}=be.doubleQuoted,Pr=JSON.stringify(Hr);if(zr)return Pr;let Qi=Or.indent||(ft(Hr)?" ":""),ps="",_o=0;for(let yo=0,Qa=Pr[yo];Qa;Qa=Pr[++yo])if(Qa===" "&&Pr[yo+1]==="\\"&&Pr[yo+2]==="n"&&(ps+=Pr.slice(_o,yo)+"\\ ",yo+=1,_o=yo,Qa="\\"),Qa==="\\")switch(Pr[yo+1]){case"u":{ps+=Pr.slice(_o,yo);let gc=Pr.substr(yo+2,4);switch(gc){case"0000":ps+="\\0";break;case"0007":ps+="\\a";break;case"000b":ps+="\\v";break;case"001b":ps+="\\e";break;case"0085":ps+="\\N";break;case"00a0":ps+="\\_";break;case"2028":ps+="\\L";break;case"2029":ps+="\\P";break;default:gc.substr(0,2)==="00"?ps+="\\x"+gc.substr(2):ps+=Pr.substr(yo,6)}yo+=5,_o=yo+1}break;case"n":if(Ft||Pr[yo+2]==='"'||Pr.length";if(!Ft)return yo+` +`;let Qa="",gc="";if(Ft=Ft.replace(/[\n\t ]*$/,Nc=>{let oA=Nc.indexOf(` +`);return oA===-1?yo+="-":(Ft===Nc||oA!==Nc.length-1)&&(yo+="+",Pr&&Pr()),gc=Nc.replace(/\n$/,""),""}).replace(/^[\n ]*/,Nc=>{Nc.indexOf(" ")!==-1&&(yo+=ps);let oA=Nc.match(/ +$/);return oA?(Qa=Nc.slice(0,-oA[0].length),oA[0]):(Qa=Nc,"")}),gc&&(gc=gc.replace(/\n+(?!\n|$)/g,`$&${Qi}`)),Qa&&(Qa=Qa.replace(/\n+/g,`$&${Qi}`)),Hr&&(yo+=" #"+Hr.replace(/ ?[\r\n]+/g," "),Rn&&Rn()),!Ft)return`${yo}${ps} +${Qi}${gc}`;if(_o)return Ft=Ft.replace(/\n+/g,`$&${Qi}`),`${yo} ${Qi}${Qa}${Ft}${gc}`;Ft=Ft.replace(/\n+/g,` -$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Qi}`);let _g=Le(`${Qa}${Ft}${gc}`,Qi,k,be.fold);return`${bo} -${Qi}${_g}`}function jt(Hr,Or,Ft,zr){let{comment:Rn,type:Pr,value:Qi}=Hr,{actualString:ps,implicitKey:yo,indent:bo,inFlow:Qa}=Or;if(yo&&/[\n[\]{},]/.test(Qi)||Qa&&/[[\]{},]/.test(Qi))return Ot(Qi,Or);if(!Qi||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Qi))return yo||Qa||Qi.indexOf(` -`)===-1?Qi.indexOf('"')!==-1&&Qi.indexOf("'")===-1?Er(Qi,Or):Ot(Qi,Or):Sr(Hr,Or,Ft,zr);if(!yo&&!Qa&&Pr!==t.Type.PLAIN&&Qi.indexOf(` -`)!==-1)return Sr(Hr,Or,Ft,zr);if(bo===""&&ft(Qi))return Or.forceBlockIndent=!0,Sr(Hr,Or,Ft,zr);let gc=Qi.replace(/\n+/g,`$& -${bo}`);if(ps){let{tags:Nc}=Or.doc.schema;if(typeof Se(gc,Nc,Nc.scalarFallback).value!="string")return Ot(Qi,Or)}let _g=yo?gc:Le(gc,bo,De,Je(Or));return Rn&&!Qa&&(_g.indexOf(` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Qi}`);let _g=Le(`${Qa}${Ft}${gc}`,Qi,k,be.fold);return`${yo} +${Qi}${_g}`}function jt(Hr,Or,Ft,zr){let{comment:Rn,type:Pr,value:Qi}=Hr,{actualString:ps,implicitKey:_o,indent:yo,inFlow:Qa}=Or;if(_o&&/[\n[\]{},]/.test(Qi)||Qa&&/[[\]{},]/.test(Qi))return Ot(Qi,Or);if(!Qi||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Qi))return _o||Qa||Qi.indexOf(` +`)===-1?Qi.indexOf('"')!==-1&&Qi.indexOf("'")===-1?Er(Qi,Or):Ot(Qi,Or):Sr(Hr,Or,Ft,zr);if(!_o&&!Qa&&Pr!==t.Type.PLAIN&&Qi.indexOf(` +`)!==-1)return Sr(Hr,Or,Ft,zr);if(yo===""&&ft(Qi))return Or.forceBlockIndent=!0,Sr(Hr,Or,Ft,zr);let gc=Qi.replace(/\n+/g,`$& +${yo}`);if(ps){let{tags:Nc}=Or.doc.schema;if(typeof Se(gc,Nc,Nc.scalarFallback).value!="string")return Ot(Qi,Or)}let _g=_o?gc:Le(gc,yo,De,Je(Or));return Rn&&!Qa&&(_g.indexOf(` `)!==-1||Rn.indexOf(` -`)!==-1)?(Ft&&Ft(),r(_g,bo,Rn)):_g}function Bt(Hr,Or,Ft,zr){let{defaultType:Rn}=be,{implicitKey:Pr,inFlow:Qi}=Or,{type:ps,value:yo}=Hr;typeof yo!="string"&&(yo=String(yo),Hr=Object.assign({},Hr,{value:yo}));let bo=gc=>{switch(gc){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return Sr(Hr,Or,Ft,zr);case t.Type.QUOTE_DOUBLE:return Ot(yo,Or);case t.Type.QUOTE_SINGLE:return Er(yo,Or);case t.Type.PLAIN:return jt(Hr,Or,Ft,zr);default:return null}};(ps!==t.Type.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(yo)||(Pr||Qi)&&(ps===t.Type.BLOCK_FOLDED||ps===t.Type.BLOCK_LITERAL))&&(ps=t.Type.QUOTE_DOUBLE);let Qa=bo(ps);if(Qa===null&&(Qa=bo(Rn),Qa===null))throw new Error(`Unsupported default string type ${Rn}`);return Qa}function Dt({format:Hr,minFractionDigits:Or,tag:Ft,value:zr}){if(typeof zr=="bigint")return String(zr);if(!isFinite(zr))return isNaN(zr)?".nan":zr<0?"-.inf":".inf";let Rn=JSON.stringify(zr);if(!Hr&&Or&&(!Ft||Ft==="tag:yaml.org,2002:float")&&/^\d/.test(Rn)){let Pr=Rn.indexOf(".");Pr<0&&(Pr=Rn.length,Rn+=".");let Qi=Or-(Rn.length-Pr-1);for(;Qi-- >0;)Rn+="0"}return Rn}function Fr(Hr,Or){let Ft,zr;switch(Or.type){case t.Type.FLOW_MAP:Ft="}",zr="flow map";break;case t.Type.FLOW_SEQ:Ft="]",zr="flow sequence";break;default:Hr.push(new t.YAMLSemanticError(Or,"Not a flow collection!?"));return}let Rn;for(let Pr=Or.items.length-1;Pr>=0;--Pr){let Qi=Or.items[Pr];if(!Qi||Qi.type!==t.Type.COMMENT){Rn=Qi;break}}if(Rn&&Rn.char!==Ft){let Pr=`Expected ${zr} to end with ${Ft}`,Qi;typeof Rn.offset=="number"?(Qi=new t.YAMLSemanticError(Or,Pr),Qi.offset=Rn.offset+1):(Qi=new t.YAMLSemanticError(Rn,Pr),Rn.range&&Rn.range.end&&(Qi.offset=Rn.range.end-Rn.range.start)),Hr.push(Qi)}}function $t(Hr,Or){let Ft=Or.context.src[Or.range.start-1];if(Ft!==` +`)!==-1)?(Ft&&Ft(),r(_g,yo,Rn)):_g}function Bt(Hr,Or,Ft,zr){let{defaultType:Rn}=be,{implicitKey:Pr,inFlow:Qi}=Or,{type:ps,value:_o}=Hr;typeof _o!="string"&&(_o=String(_o),Hr=Object.assign({},Hr,{value:_o}));let yo=gc=>{switch(gc){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return Sr(Hr,Or,Ft,zr);case t.Type.QUOTE_DOUBLE:return Ot(_o,Or);case t.Type.QUOTE_SINGLE:return Er(_o,Or);case t.Type.PLAIN:return jt(Hr,Or,Ft,zr);default:return null}};(ps!==t.Type.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(_o)||(Pr||Qi)&&(ps===t.Type.BLOCK_FOLDED||ps===t.Type.BLOCK_LITERAL))&&(ps=t.Type.QUOTE_DOUBLE);let Qa=yo(ps);if(Qa===null&&(Qa=yo(Rn),Qa===null))throw new Error(`Unsupported default string type ${Rn}`);return Qa}function Nt({format:Hr,minFractionDigits:Or,tag:Ft,value:zr}){if(typeof zr=="bigint")return String(zr);if(!isFinite(zr))return isNaN(zr)?".nan":zr<0?"-.inf":".inf";let Rn=JSON.stringify(zr);if(!Hr&&Or&&(!Ft||Ft==="tag:yaml.org,2002:float")&&/^\d/.test(Rn)){let Pr=Rn.indexOf(".");Pr<0&&(Pr=Rn.length,Rn+=".");let Qi=Or-(Rn.length-Pr-1);for(;Qi-- >0;)Rn+="0"}return Rn}function Fr(Hr,Or){let Ft,zr;switch(Or.type){case t.Type.FLOW_MAP:Ft="}",zr="flow map";break;case t.Type.FLOW_SEQ:Ft="]",zr="flow sequence";break;default:Hr.push(new t.YAMLSemanticError(Or,"Not a flow collection!?"));return}let Rn;for(let Pr=Or.items.length-1;Pr>=0;--Pr){let Qi=Or.items[Pr];if(!Qi||Qi.type!==t.Type.COMMENT){Rn=Qi;break}}if(Rn&&Rn.char!==Ft){let Pr=`Expected ${zr} to end with ${Ft}`,Qi;typeof Rn.offset=="number"?(Qi=new t.YAMLSemanticError(Or,Pr),Qi.offset=Rn.offset+1):(Qi=new t.YAMLSemanticError(Rn,Pr),Rn.range&&Rn.range.end&&(Qi.offset=Rn.range.end-Rn.range.start)),Hr.push(Qi)}}function $t(Hr,Or){let Ft=Or.context.src[Or.range.start-1];if(Ft!==` `&&Ft!==" "&&Ft!==" "){let zr="Comments must be separated from other tokens by white space characters";Hr.push(new t.YAMLSemanticError(Or,zr))}}function Xt(Hr,Or){let Ft=String(Or),zr=Ft.substr(0,8)+"..."+Ft.substr(-8);return new t.YAMLSemanticError(Hr,`The "${zr}" key is too long`)}function lr(Hr,Or){for(let{afterKey:Ft,before:zr,comment:Rn}of Or){let Pr=Hr.items[zr];Pr?(Ft&&Pr.value&&(Pr=Pr.value),Rn===void 0?(Ft||!Pr.commentBefore)&&(Pr.spaceBefore=!0):Pr.commentBefore?Pr.commentBefore+=` `+Rn:Pr.commentBefore=Rn):Rn!==void 0&&(Hr.comment?Hr.comment+=` -`+Rn:Hr.comment=Rn)}}function cr(Hr,Or){let Ft=Or.strValue;return Ft?typeof Ft=="string"?Ft:(Ft.errors.forEach(zr=>{zr.source||(zr.source=Or),Hr.errors.push(zr)}),Ft.str):""}function Ar(Hr,Or){let{handle:Ft,suffix:zr}=Or.tag,Rn=Hr.tagPrefixes.find(Pr=>Pr.handle===Ft);if(!Rn){let Pr=Hr.getDefaults().tagPrefixes;if(Pr&&(Rn=Pr.find(Qi=>Qi.handle===Ft)),!Rn)throw new t.YAMLSemanticError(Or,`The ${Ft} tag handle is non-default and was not declared.`)}if(!zr)throw new t.YAMLSemanticError(Or,`The ${Ft} tag has no suffix.`);if(Ft==="!"&&(Hr.version||Hr.options.version)==="1.0"){if(zr[0]==="^")return Hr.warnings.push(new t.YAMLWarning(Or,"YAML 1.0 ^ tag expansion is not supported")),zr;if(/[:/]/.test(zr)){let Pr=zr.match(/^([a-z0-9-]+)\/(.*)/i);return Pr?`tag:${Pr[1]}.yaml.org,2002:${Pr[2]}`:`tag:${zr}`}}return Rn.prefix+decodeURIComponent(zr)}function qr(Hr,Or){let{tag:Ft,type:zr}=Or,Rn=!1;if(Ft){let{handle:Pr,suffix:Qi,verbatim:ps}=Ft;if(ps){if(ps!=="!"&&ps!=="!!")return ps;let yo=`Verbatim tags aren't resolved, so ${ps} is invalid.`;Hr.errors.push(new t.YAMLSemanticError(Or,yo))}else if(Pr==="!"&&!Qi)Rn=!0;else try{return Ar(Hr,Or)}catch(yo){Hr.errors.push(yo)}}switch(zr){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:case t.Type.QUOTE_DOUBLE:case t.Type.QUOTE_SINGLE:return t.defaultTags.STR;case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;case t.Type.PLAIN:return Rn?t.defaultTags.STR:null;default:return null}}function yn(Hr,Or,Ft){let{tags:zr}=Hr.schema,Rn=[];for(let Qi of zr)if(Qi.tag===Ft)if(Qi.test)Rn.push(Qi);else{let ps=Qi.resolve(Hr,Or);return ps instanceof I?ps:new l(ps)}let Pr=cr(Hr,Or);return typeof Pr=="string"&&Rn.length>0?Se(Pr,Rn,zr.scalarFallback):null}function ke({type:Hr}){switch(Hr){case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;default:return t.defaultTags.STR}}function zt(Hr,Or,Ft){try{let zr=yn(Hr,Or,Ft);if(zr)return Ft&&Or.tag&&(zr.tag=Ft),zr}catch(zr){return zr.source||(zr.source=Or),Hr.errors.push(zr),null}try{let zr=ke(Or);if(!zr)throw new Error(`The tag ${Ft} is unavailable`);let Rn=`The tag ${Ft} is unavailable, falling back to ${zr}`;Hr.warnings.push(new t.YAMLWarning(Or,Rn));let Pr=yn(Hr,Or,zr);return Pr.tag=Ft,Pr}catch(zr){let Rn=new t.YAMLReferenceError(Or,zr.message);return Rn.stack=zr.stack,Hr.errors.push(Rn),null}}var Fn=Hr=>{if(!Hr)return!1;let{type:Or}=Hr;return Or===t.Type.MAP_KEY||Or===t.Type.MAP_VALUE||Or===t.Type.SEQ_ITEM};function Nn(Hr,Or){let Ft={before:[],after:[]},zr=!1,Rn=!1,Pr=Fn(Or.context.parent)?Or.context.parent.props.concat(Or.props):Or.props;for(let{start:Qi,end:ps}of Pr)switch(Or.context.src[Qi]){case t.Char.COMMENT:{if(!Or.commentHasRequiredWhitespace(Qi)){let Qa="Comments must be separated from other tokens by white space characters";Hr.push(new t.YAMLSemanticError(Or,Qa))}let{header:yo,valueRange:bo}=Or;(bo&&(Qi>bo.start||yo&&Qi>yo.start)?Ft.after:Ft.before).push(Or.context.src.slice(Qi+1,ps));break}case t.Char.ANCHOR:if(zr){let yo="A node can have at most one anchor";Hr.push(new t.YAMLSemanticError(Or,yo))}zr=!0;break;case t.Char.TAG:if(Rn){let yo="A node can have at most one tag";Hr.push(new t.YAMLSemanticError(Or,yo))}Rn=!0;break}return{comments:Ft,hasAnchor:zr,hasTag:Rn}}function Hi(Hr,Or){let{anchors:Ft,errors:zr,schema:Rn}=Hr;if(Or.type===t.Type.ALIAS){let Qi=Or.rawValue,ps=Ft.getNode(Qi);if(!ps){let bo=`Aliased anchor not found: ${Qi}`;return zr.push(new t.YAMLReferenceError(Or,bo)),null}let yo=new F(ps);return Ft._cstAliases.push(yo),yo}let Pr=qr(Hr,Or);if(Pr)return zt(Hr,Or,Pr);if(Or.type!==t.Type.PLAIN){let Qi=`Failed to resolve ${Or.type} node here`;return zr.push(new t.YAMLSyntaxError(Or,Qi)),null}try{let Qi=cr(Hr,Or);return Se(Qi,Rn.tags,Rn.tags.scalarFallback)}catch(Qi){return Qi.source||(Qi.source=Or),zr.push(Qi),null}}function Ao(Hr,Or){if(!Or)return null;Or.error&&Hr.errors.push(Or.error);let{comments:Ft,hasAnchor:zr,hasTag:Rn}=Nn(Hr.errors,Or);if(zr){let{anchors:Qi}=Hr,ps=Or.anchor,yo=Qi.getNode(ps);yo&&(Qi.map[Qi.newName(ps)]=yo),Qi.map[ps]=Or}if(Or.type===t.Type.ALIAS&&(zr||Rn)){let Qi="An alias node must not specify any properties";Hr.errors.push(new t.YAMLSemanticError(Or,Qi))}let Pr=Hi(Hr,Or);if(Pr){Pr.range=[Or.range.start,Or.range.end],Hr.options.keepCstNodes&&(Pr.cstNode=Or),Hr.options.keepNodeTypes&&(Pr.type=Or.type);let Qi=Ft.before.join(` +`+Rn:Hr.comment=Rn)}}function cr(Hr,Or){let Ft=Or.strValue;return Ft?typeof Ft=="string"?Ft:(Ft.errors.forEach(zr=>{zr.source||(zr.source=Or),Hr.errors.push(zr)}),Ft.str):""}function Ar(Hr,Or){let{handle:Ft,suffix:zr}=Or.tag,Rn=Hr.tagPrefixes.find(Pr=>Pr.handle===Ft);if(!Rn){let Pr=Hr.getDefaults().tagPrefixes;if(Pr&&(Rn=Pr.find(Qi=>Qi.handle===Ft)),!Rn)throw new t.YAMLSemanticError(Or,`The ${Ft} tag handle is non-default and was not declared.`)}if(!zr)throw new t.YAMLSemanticError(Or,`The ${Ft} tag has no suffix.`);if(Ft==="!"&&(Hr.version||Hr.options.version)==="1.0"){if(zr[0]==="^")return Hr.warnings.push(new t.YAMLWarning(Or,"YAML 1.0 ^ tag expansion is not supported")),zr;if(/[:/]/.test(zr)){let Pr=zr.match(/^([a-z0-9-]+)\/(.*)/i);return Pr?`tag:${Pr[1]}.yaml.org,2002:${Pr[2]}`:`tag:${zr}`}}return Rn.prefix+decodeURIComponent(zr)}function qr(Hr,Or){let{tag:Ft,type:zr}=Or,Rn=!1;if(Ft){let{handle:Pr,suffix:Qi,verbatim:ps}=Ft;if(ps){if(ps!=="!"&&ps!=="!!")return ps;let _o=`Verbatim tags aren't resolved, so ${ps} is invalid.`;Hr.errors.push(new t.YAMLSemanticError(Or,_o))}else if(Pr==="!"&&!Qi)Rn=!0;else try{return Ar(Hr,Or)}catch(_o){Hr.errors.push(_o)}}switch(zr){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:case t.Type.QUOTE_DOUBLE:case t.Type.QUOTE_SINGLE:return t.defaultTags.STR;case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;case t.Type.PLAIN:return Rn?t.defaultTags.STR:null;default:return null}}function _n(Hr,Or,Ft){let{tags:zr}=Hr.schema,Rn=[];for(let Qi of zr)if(Qi.tag===Ft)if(Qi.test)Rn.push(Qi);else{let ps=Qi.resolve(Hr,Or);return ps instanceof I?ps:new l(ps)}let Pr=cr(Hr,Or);return typeof Pr=="string"&&Rn.length>0?Se(Pr,Rn,zr.scalarFallback):null}function ke({type:Hr}){switch(Hr){case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;default:return t.defaultTags.STR}}function zt(Hr,Or,Ft){try{let zr=_n(Hr,Or,Ft);if(zr)return Ft&&Or.tag&&(zr.tag=Ft),zr}catch(zr){return zr.source||(zr.source=Or),Hr.errors.push(zr),null}try{let zr=ke(Or);if(!zr)throw new Error(`The tag ${Ft} is unavailable`);let Rn=`The tag ${Ft} is unavailable, falling back to ${zr}`;Hr.warnings.push(new t.YAMLWarning(Or,Rn));let Pr=_n(Hr,Or,zr);return Pr.tag=Ft,Pr}catch(zr){let Rn=new t.YAMLReferenceError(Or,zr.message);return Rn.stack=zr.stack,Hr.errors.push(Rn),null}}var Fn=Hr=>{if(!Hr)return!1;let{type:Or}=Hr;return Or===t.Type.MAP_KEY||Or===t.Type.MAP_VALUE||Or===t.Type.SEQ_ITEM};function Nn(Hr,Or){let Ft={before:[],after:[]},zr=!1,Rn=!1,Pr=Fn(Or.context.parent)?Or.context.parent.props.concat(Or.props):Or.props;for(let{start:Qi,end:ps}of Pr)switch(Or.context.src[Qi]){case t.Char.COMMENT:{if(!Or.commentHasRequiredWhitespace(Qi)){let Qa="Comments must be separated from other tokens by white space characters";Hr.push(new t.YAMLSemanticError(Or,Qa))}let{header:_o,valueRange:yo}=Or;(yo&&(Qi>yo.start||_o&&Qi>_o.start)?Ft.after:Ft.before).push(Or.context.src.slice(Qi+1,ps));break}case t.Char.ANCHOR:if(zr){let _o="A node can have at most one anchor";Hr.push(new t.YAMLSemanticError(Or,_o))}zr=!0;break;case t.Char.TAG:if(Rn){let _o="A node can have at most one tag";Hr.push(new t.YAMLSemanticError(Or,_o))}Rn=!0;break}return{comments:Ft,hasAnchor:zr,hasTag:Rn}}function Hi(Hr,Or){let{anchors:Ft,errors:zr,schema:Rn}=Hr;if(Or.type===t.Type.ALIAS){let Qi=Or.rawValue,ps=Ft.getNode(Qi);if(!ps){let yo=`Aliased anchor not found: ${Qi}`;return zr.push(new t.YAMLReferenceError(Or,yo)),null}let _o=new F(ps);return Ft._cstAliases.push(_o),_o}let Pr=qr(Hr,Or);if(Pr)return zt(Hr,Or,Pr);if(Or.type!==t.Type.PLAIN){let Qi=`Failed to resolve ${Or.type} node here`;return zr.push(new t.YAMLSyntaxError(Or,Qi)),null}try{let Qi=cr(Hr,Or);return Se(Qi,Rn.tags,Rn.tags.scalarFallback)}catch(Qi){return Qi.source||(Qi.source=Or),zr.push(Qi),null}}function Ao(Hr,Or){if(!Or)return null;Or.error&&Hr.errors.push(Or.error);let{comments:Ft,hasAnchor:zr,hasTag:Rn}=Nn(Hr.errors,Or);if(zr){let{anchors:Qi}=Hr,ps=Or.anchor,_o=Qi.getNode(ps);_o&&(Qi.map[Qi.newName(ps)]=_o),Qi.map[ps]=Or}if(Or.type===t.Type.ALIAS&&(zr||Rn)){let Qi="An alias node must not specify any properties";Hr.errors.push(new t.YAMLSemanticError(Or,Qi))}let Pr=Hi(Hr,Or);if(Pr){Pr.range=[Or.range.start,Or.range.end],Hr.options.keepCstNodes&&(Pr.cstNode=Or),Hr.options.keepNodeTypes&&(Pr.type=Or.type);let Qi=Ft.before.join(` `);Qi&&(Pr.commentBefore=Pr.commentBefore?`${Pr.commentBefore} ${Qi}`:Qi);let ps=Ft.after.join(` `);ps&&(Pr.comment=Pr.comment?`${Pr.comment} -${ps}`:ps)}return Or.resolved=Pr}function Vr(Hr,Or){if(Or.type!==t.Type.MAP&&Or.type!==t.Type.FLOW_MAP){let Qi=`A ${Or.type} node cannot be resolved as a mapping`;return Hr.errors.push(new t.YAMLSyntaxError(Or,Qi)),null}let{comments:Ft,items:zr}=Or.type===t.Type.FLOW_MAP?Ya(Hr,Or):ga(Hr,Or),Rn=new J;Rn.items=zr,lr(Rn,Ft);let Pr=!1;for(let Qi=0;Qi{if(Qa instanceof F){let{type:gc}=Qa.source;return gc===t.Type.MAP||gc===t.Type.FLOW_MAP?!1:bo="Merge nodes aliases can only point to maps"}return bo="Merge nodes can only have Alias nodes as values"}),bo&&Hr.errors.push(new t.YAMLSemanticError(Or,bo))}else for(let yo=Qi+1;yo{if(zr.length===0)return!1;let{start:Rn}=zr[0];if(Or&&Rn>Or.valueRange.start||Ft[Rn]!==t.Char.COMMENT)return!1;for(let Pr=Hr;Pr0){yo=new t.PlainValue(t.Type.PLAIN,[]),yo.context={parent:ps,src:ps.context.src};let Qa=ps.range.start+1;if(yo.range={start:Qa,end:Qa},yo.valueRange={start:Qa,end:Qa},typeof ps.range.origStart=="number"){let gc=ps.range.origStart+1;yo.range.origStart=yo.range.origEnd=gc,yo.valueRange.origStart=yo.valueRange.origEnd=gc}}let bo=new N(Rn,Ao(Hr,yo));no(ps,bo),zr.push(bo),Rn&&typeof Pr=="number"&&ps.range.start>Pr+1024&&Hr.errors.push(Xt(Or,Rn)),Rn=void 0,Pr=null}break;default:Rn!==void 0&&zr.push(new N(Rn)),Rn=Ao(Hr,ps),Pr=ps.range.start,ps.error&&Hr.errors.push(ps.error);e:for(let yo=Qi+1;;++yo){let bo=Or.items[yo];switch(bo&&bo.type){case t.Type.BLANK_LINE:case t.Type.COMMENT:continue e;case t.Type.MAP_VALUE:break e;default:{let Qa="Implicit map keys need to be followed by map values";Hr.errors.push(new t.YAMLSemanticError(ps,Qa));break e}}}if(ps.valueRangeContainsNewline){let yo="Implicit map keys need to be on a single line";Hr.errors.push(new t.YAMLSemanticError(ps,yo))}}}return Rn!==void 0&&zr.push(new N(Rn)),{comments:Ft,items:zr}}function Ya(Hr,Or){let Ft=[],zr=[],Rn,Pr=!1,Qi="{";for(let ps=0;psPr instanceof N&&Pr.key instanceof I)){let Pr="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";Hr.warnings.push(new t.YAMLWarning(Or,Pr))}return Or.resolved=Rn,Rn}function ol(Hr,Or){let Ft=[],zr=[];for(let Rn=0;RnQi+1024&&Hr.errors.push(Xt(Or,Pr));let{src:sA}=yo.context;for(let ma=Qi;ma{"use strict";var t=ACe(),r=JJe(),n={identify:Se=>Se instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(Se,De)=>{let k=r.resolveString(Se,De);if(typeof Buffer=="function")return Buffer.from(k,"base64");if(typeof atob=="function"){let tt=atob(k.replace(/[\n\r]/g,"")),ze=new Uint8Array(tt.length);for(let Le=0;Le{let Je;if(typeof Buffer=="function")Je=k instanceof Buffer?k.toString("base64"):Buffer.from(k.buffer).toString("base64");else if(typeof btoa=="function"){let ft="";for(let lt=0;lt{if(Qa instanceof F){let{type:gc}=Qa.source;return gc===t.Type.MAP||gc===t.Type.FLOW_MAP?!1:yo="Merge nodes aliases can only point to maps"}return yo="Merge nodes can only have Alias nodes as values"}),yo&&Hr.errors.push(new t.YAMLSemanticError(Or,yo))}else for(let _o=Qi+1;_o{if(zr.length===0)return!1;let{start:Rn}=zr[0];if(Or&&Rn>Or.valueRange.start||Ft[Rn]!==t.Char.COMMENT)return!1;for(let Pr=Hr;Pr0){_o=new t.PlainValue(t.Type.PLAIN,[]),_o.context={parent:ps,src:ps.context.src};let Qa=ps.range.start+1;if(_o.range={start:Qa,end:Qa},_o.valueRange={start:Qa,end:Qa},typeof ps.range.origStart=="number"){let gc=ps.range.origStart+1;_o.range.origStart=_o.range.origEnd=gc,_o.valueRange.origStart=_o.valueRange.origEnd=gc}}let yo=new N(Rn,Ao(Hr,_o));no(ps,yo),zr.push(yo),Rn&&typeof Pr=="number"&&ps.range.start>Pr+1024&&Hr.errors.push(Xt(Or,Rn)),Rn=void 0,Pr=null}break;default:Rn!==void 0&&zr.push(new N(Rn)),Rn=Ao(Hr,ps),Pr=ps.range.start,ps.error&&Hr.errors.push(ps.error);e:for(let _o=Qi+1;;++_o){let yo=Or.items[_o];switch(yo&&yo.type){case t.Type.BLANK_LINE:case t.Type.COMMENT:continue e;case t.Type.MAP_VALUE:break e;default:{let Qa="Implicit map keys need to be followed by map values";Hr.errors.push(new t.YAMLSemanticError(ps,Qa));break e}}}if(ps.valueRangeContainsNewline){let _o="Implicit map keys need to be on a single line";Hr.errors.push(new t.YAMLSemanticError(ps,_o))}}}return Rn!==void 0&&zr.push(new N(Rn)),{comments:Ft,items:zr}}function Ya(Hr,Or){let Ft=[],zr=[],Rn,Pr=!1,Qi="{";for(let ps=0;psPr instanceof N&&Pr.key instanceof I)){let Pr="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";Hr.warnings.push(new t.YAMLWarning(Or,Pr))}return Or.resolved=Rn,Rn}function al(Hr,Or){let Ft=[],zr=[];for(let Rn=0;RnQi+1024&&Hr.errors.push(Xt(Or,Pr));let{src:oA}=_o.context;for(let ma=Qi;ma{"use strict";var t=dCe(),r=KJe(),n={identify:Se=>Se instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(Se,De)=>{let k=r.resolveString(Se,De);if(typeof Buffer=="function")return Buffer.from(k,"base64");if(typeof atob=="function"){let tt=atob(k.replace(/[\n\r]/g,"")),ze=new Uint8Array(tt.length);for(let Le=0;Le{let Je;if(typeof Buffer=="function")Je=k instanceof Buffer?k.toString("base64"):Buffer.from(k.buffer).toString("base64");else if(typeof btoa=="function"){let ft="";for(let lt=0;lt1){let Je="Each pair must have its own sequence indicator";throw new t.YAMLSemanticError(De,Je)}let Le=ze.items[0]||new r.Pair;ze.commentBefore&&(Le.commentBefore=Le.commentBefore?`${ze.commentBefore} ${Le.commentBefore}`:ze.commentBefore),ze.comment&&(Le.comment=Le.comment?`${ze.comment} -${Le.comment}`:ze.comment),ze=Le}k.items[tt]=ze instanceof r.Pair?ze:new r.Pair(ze)}}return k}function o(Se,De,k){let tt=new r.YAMLSeq(Se);tt.tag="tag:yaml.org,2002:pairs";for(let ze of De){let Le,Je;if(Array.isArray(ze))if(ze.length===2)Le=ze[0],Je=ze[1];else throw new TypeError(`Expected [key, value] tuple: ${ze}`);else if(ze&&ze instanceof Object){let lt=Object.keys(ze);if(lt.length===1)Le=lt[0],Je=ze[Le];else throw new TypeError(`Expected { key: value } tuple: ${ze}`)}else Le=ze;let ft=Se.createPair(Le,Je,k);tt.items.push(ft)}return tt}var l={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:a,createNode:o},A=class Iwi extends r.YAMLSeq{constructor(){super(),t._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),t._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),t._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),t._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),t._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=Iwi.tag}toJSON(De,k){let tt=new Map;k&&k.onCreate&&k.onCreate(tt);for(let ze of this.items){let Le,Je;if(ze instanceof r.Pair?(Le=r.toJSON(ze.key,"",k),Je=r.toJSON(ze.value,Le,k)):Le=r.toJSON(ze,"",k),tt.has(Le))throw new Error("Ordered maps must not include duplicate keys");tt.set(Le,Je)}return tt}};t._defineProperty(A,"tag","tag:yaml.org,2002:omap");function f(Se,De){let k=a(Se,De),tt=[];for(let{key:ze}of k.items)if(ze instanceof r.Scalar)if(tt.includes(ze.value)){let Le="Ordered maps must not include duplicate keys";throw new t.YAMLSemanticError(De,Le)}else tt.push(ze.value);return Object.assign(new A,k)}function I(Se,De,k){let tt=o(Se,De,k),ze=new A;return ze.items=tt.items,ze}var C={identify:Se=>Se instanceof Map,nodeClass:A,default:!1,tag:"tag:yaml.org,2002:omap",resolve:f,createNode:I},b=class hwi extends r.YAMLMap{constructor(){super(),this.tag=hwi.tag}add(De){let k=De instanceof r.Pair?De:new r.Pair(De);r.findPair(this.items,k.key)||this.items.push(k)}get(De,k){let tt=r.findPair(this.items,De);return!k&&tt instanceof r.Pair?tt.key instanceof r.Scalar?tt.key.value:tt.key:tt}set(De,k){if(typeof k!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof k}`);let tt=r.findPair(this.items,De);tt&&!k?this.items.splice(this.items.indexOf(tt),1):!tt&&k&&this.items.push(new r.Pair(De))}toJSON(De,k){return super.toJSON(De,k,Set)}toString(De,k,tt){if(!De)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(De,k,tt);throw new Error("Set items must all have null values")}};t._defineProperty(b,"tag","tag:yaml.org,2002:set");function E(Se,De){let k=r.resolveMap(Se,De);if(!k.hasAllNullValues())throw new t.YAMLSemanticError(De,"Set items must all have null values");return Object.assign(new b,k)}function N(Se,De,k){let tt=new b;for(let ze of De)tt.items.push(Se.createPair(ze,null,k));return tt}var B={identify:Se=>Se instanceof Set,nodeClass:b,default:!1,tag:"tag:yaml.org,2002:set",resolve:E,createNode:N},F=(Se,De)=>{let k=De.split(":").reduce((tt,ze)=>tt*60+Number(ze),0);return Se==="-"?-k:k},Q=({value:Se})=>{if(isNaN(Se)||!isFinite(Se))return r.stringifyNumber(Se);let De="";Se<0&&(De="-",Se=Math.abs(Se));let k=[Se%60];return Se<60?k.unshift(0):(Se=Math.round((Se-k[0])/60),k.unshift(Se%60),Se>=60&&(Se=Math.round((Se-k[0])/60),k.unshift(Se))),De+k.map(tt=>tt<10?"0"+String(tt):String(tt)).join(":").replace(/000000\d*$/,"")},J={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ae={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ne={identify:Se=>Se 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:(Se,De,k,tt,ze,Le,Je,ft,lt)=>{ft&&(ft=(ft+"00").substr(1,3));let Ot=Date.UTC(De,k-1,tt,ze||0,Le||0,Je||0,ft||0);if(lt&<!=="Z"){let Er=F(lt[0],lt.slice(1));Math.abs(Er)<30&&(Er*=60),Ot-=6e4*Er}return new Date(Ot)},stringify:({value:Se})=>Se.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};function ce(Se){let De={};return Se?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!De.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!De.YAML_SILENCE_WARNINGS}function fe(Se,De){ce(!1)&&console.warn(De?`${De}: ${Se}`:Se)}function ue(Se){if(ce(!0)){let De=Se.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");fe(`The endpoint 'yaml/${De}' will be removed in a future release.`,"DeprecationWarning")}}var de={};function be(Se,De){if(!de[Se]&&ce(!0)){de[Se]=!0;let k=`The option '${Se}' will be removed in a future release`;k+=De?`, use '${De}' instead.`:".",fe(k,"DeprecationWarning")}}e.binary=n,e.floatTime=ae,e.intTime=J,e.omap=C,e.pairs=l,e.set=B,e.timestamp=ne,e.warn=fe,e.warnFileDeprecation=ue,e.warnOptionDeprecation=be}),mwi=Qee(e=>{"use strict";var t=ACe(),r=JJe(),n=fwi();function a(jt,Bt,Dt){let Fr=new r.YAMLMap(jt);if(Bt instanceof Map)for(let[$t,Xt]of Bt)Fr.items.push(jt.createPair($t,Xt,Dt));else if(Bt&&typeof Bt=="object")for(let $t of Object.keys(Bt))Fr.items.push(jt.createPair($t,Bt[$t],Dt));return typeof jt.sortMapEntries=="function"&&Fr.items.sort(jt.sortMapEntries),Fr}var o={createNode:a,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function l(jt,Bt,Dt){let Fr=new r.YAMLSeq(jt);if(Bt&&Bt[Symbol.iterator])for(let $t of Bt){let Xt=jt.createNode($t,Dt.wrapScalars,null,Dt);Fr.items.push(Xt)}return Fr}var A={createNode:l,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},f={identify:jt=>typeof jt=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(jt,Bt,Dt,Fr){return Bt=Object.assign({actualString:!0},Bt),r.stringifyString(jt,Bt,Dt,Fr)},options:r.strOptions},I=[o,A,f],C=jt=>typeof jt=="bigint"||Number.isInteger(jt),b=(jt,Bt,Dt)=>r.intOptions.asBigInt?BigInt(jt):parseInt(Bt,Dt);function E(jt,Bt,Dt){let{value:Fr}=jt;return C(Fr)&&Fr>=0?Dt+Fr.toString(Bt):r.stringifyNumber(jt)}var N={identify:jt=>jt==null,createNode:(jt,Bt,Dt)=>Dt.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},B={identify:jt=>typeof jt=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:jt=>jt[0]==="t"||jt[0]==="T",options:r.boolOptions,stringify:({value:jt})=>jt?r.boolOptions.trueStr:r.boolOptions.falseStr},F={identify:jt=>C(jt)&&jt>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(jt,Bt)=>b(jt,Bt,8),options:r.intOptions,stringify:jt=>E(jt,8,"0o")},Q={identify:C,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:jt=>b(jt,jt,10),options:r.intOptions,stringify:r.stringifyNumber},J={identify:jt=>C(jt)&&jt>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(jt,Bt)=>b(jt,Bt,16),options:r.intOptions,stringify:jt=>E(jt,16,"0x")},ae={identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(jt,Bt)=>Bt?NaN:jt[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},ne={identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:jt=>parseFloat(jt),stringify:({value:jt})=>Number(jt).toExponential()},ce={identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(jt,Bt,Dt){let Fr=Bt||Dt,$t=new r.Scalar(parseFloat(jt));return Fr&&Fr[Fr.length-1]==="0"&&($t.minFractionDigits=Fr.length),$t},stringify:r.stringifyNumber},fe=I.concat([N,B,F,Q,J,ae,ne,ce]),ue=jt=>typeof jt=="bigint"||Number.isInteger(jt),de=({value:jt})=>JSON.stringify(jt),be=[o,A,{identify:jt=>typeof jt=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:de},{identify:jt=>jt==null,createNode:(jt,Bt,Dt)=>Dt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:de},{identify:jt=>typeof jt=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:jt=>jt==="true",stringify:de},{identify:ue,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:jt=>r.intOptions.asBigInt?BigInt(jt):parseInt(jt,10),stringify:({value:jt})=>ue(jt)?jt.toString():JSON.stringify(jt)},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:jt=>parseFloat(jt),stringify:de}];be.scalarFallback=jt=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(jt)}`)};var Se=({value:jt})=>jt?r.boolOptions.trueStr:r.boolOptions.falseStr,De=jt=>typeof jt=="bigint"||Number.isInteger(jt);function k(jt,Bt,Dt){let Fr=Bt.replace(/_/g,"");if(r.intOptions.asBigInt){switch(Dt){case 2:Fr=`0b${Fr}`;break;case 8:Fr=`0o${Fr}`;break;case 16:Fr=`0x${Fr}`;break}let Xt=BigInt(Fr);return jt==="-"?BigInt(-1)*Xt:Xt}let $t=parseInt(Fr,Dt);return jt==="-"?-1*$t:$t}function tt(jt,Bt,Dt){let{value:Fr}=jt;if(De(Fr)){let $t=Fr.toString(Bt);return Fr<0?"-"+Dt+$t.substr(1):Dt+$t}return r.stringifyNumber(jt)}var ze=I.concat([{identify:jt=>jt==null,createNode:(jt,Bt,Dt)=>Dt.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:jt=>typeof jt=="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:Se},{identify:jt=>typeof jt=="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:Se},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(jt,Bt,Dt)=>k(Bt,Dt,2),stringify:jt=>tt(jt,2,"0b")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(jt,Bt,Dt)=>k(Bt,Dt,8),stringify:jt=>tt(jt,8,"0")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(jt,Bt,Dt)=>k(Bt,Dt,10),stringify:r.stringifyNumber},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(jt,Bt,Dt)=>k(Bt,Dt,16),stringify:jt=>tt(jt,16,"0x")},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(jt,Bt)=>Bt?NaN:jt[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:jt=>parseFloat(jt.replace(/_/g,"")),stringify:({value:jt})=>Number(jt).toExponential()},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(jt,Bt){let Dt=new r.Scalar(parseFloat(jt.replace(/_/g,"")));if(Bt){let Fr=Bt.replace(/_/g,"");Fr[Fr.length-1]==="0"&&(Dt.minFractionDigits=Fr.length)}return Dt},stringify:r.stringifyNumber}],n.binary,n.omap,n.pairs,n.set,n.intTime,n.floatTime,n.timestamp),Le={core:fe,failsafe:I,json:be,yaml11:ze},Je={binary:n.binary,bool:B,float:ce,floatExp:ne,floatNaN:ae,floatTime:n.floatTime,int:Q,intHex:J,intOct:F,intTime:n.intTime,map:o,null:N,omap:n.omap,pairs:n.pairs,seq:A,set:n.set,timestamp:n.timestamp};function ft(jt,Bt,Dt){if(Bt){let Fr=Dt.filter(Xt=>Xt.tag===Bt),$t=Fr.find(Xt=>!Xt.format)||Fr[0];if(!$t)throw new Error(`Tag ${Bt} not found`);return $t}return Dt.find(Fr=>(Fr.identify&&Fr.identify(jt)||Fr.class&&jt instanceof Fr.class)&&!Fr.format)}function lt(jt,Bt,Dt){if(jt instanceof r.Node)return jt;let{defaultPrefix:Fr,onTagObj:$t,prevObjects:Xt,schema:lr,wrapScalars:cr}=Dt;Bt&&Bt.startsWith("!!")&&(Bt=Fr+Bt.slice(2));let Ar=ft(jt,Bt,lr.tags);if(!Ar){if(typeof jt.toJSON=="function"&&(jt=jt.toJSON()),!jt||typeof jt!="object")return cr?new r.Scalar(jt):jt;Ar=jt instanceof Map?o:jt[Symbol.iterator]?A:o}$t&&($t(Ar),delete Dt.onTagObj);let qr={value:void 0,node:void 0};if(jt&&typeof jt=="object"&&Xt){let yn=Xt.get(jt);if(yn){let ke=new r.Alias(yn);return Dt.aliasNodes.push(ke),ke}qr.value=jt,Xt.set(jt,qr)}return qr.node=Ar.createNode?Ar.createNode(Dt.schema,jt,Dt):cr?new r.Scalar(jt):jt,Bt&&qr.node instanceof r.Node&&(qr.node.tag=Bt),qr.node}function Ot(jt,Bt,Dt,Fr){let $t=jt[Fr.replace(/\W/g,"")];if(!$t){let Xt=Object.keys(jt).map(lr=>JSON.stringify(lr)).join(", ");throw new Error(`Unknown schema "${Fr}"; use one of ${Xt}`)}if(Array.isArray(Dt))for(let Xt of Dt)$t=$t.concat(Xt);else typeof Dt=="function"&&($t=Dt($t.slice()));for(let Xt=0;Xt<$t.length;++Xt){let lr=$t[Xt];if(typeof lr=="string"){let cr=Bt[lr];if(!cr){let Ar=Object.keys(Bt).map(qr=>JSON.stringify(qr)).join(", ");throw new Error(`Unknown custom tag "${lr}"; use one of ${Ar}`)}$t[Xt]=cr}}return $t}var Er=(jt,Bt)=>jt.keyBt.key?1:0,Sr=class Cwi{constructor({customTags:Bt,merge:Dt,schema:Fr,sortMapEntries:$t,tags:Xt}){this.merge=!!Dt,this.name=Fr,this.sortMapEntries=$t===!0?Er:$t||null,!Bt&&Xt&&n.warnOptionDeprecation("tags","customTags"),this.tags=Ot(Le,Je,Bt||Xt,Fr)}createNode(Bt,Dt,Fr,$t){let Xt={defaultPrefix:Cwi.defaultPrefix,schema:this,wrapScalars:Dt},lr=$t?Object.assign($t,Xt):Xt;return lt(Bt,Fr,lr)}createPair(Bt,Dt,Fr){Fr||(Fr={wrapScalars:!0});let $t=this.createNode(Bt,Fr.wrapScalars,null,Fr),Xt=this.createNode(Dt,Fr.wrapScalars,null,Fr);return new r.Pair($t,Xt)}};t._defineProperty(Sr,"defaultPrefix",t.defaultTagPrefix),t._defineProperty(Sr,"defaultTags",t.defaultTags),e.Schema=Sr}),pnc=Qee(e=>{"use strict";var t=ACe(),r=JJe(),n=mwi(),a={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"},o={get binary(){return r.binaryOptions},set binary(ce){Object.assign(r.binaryOptions,ce)},get bool(){return r.boolOptions},set bool(ce){Object.assign(r.boolOptions,ce)},get int(){return r.intOptions},set int(ce){Object.assign(r.intOptions,ce)},get null(){return r.nullOptions},set null(ce){Object.assign(r.nullOptions,ce)},get str(){return r.strOptions},set str(ce){Object.assign(r.strOptions,ce)}},l={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:t.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]}};function A(ce,fe){if((ce.version||ce.options.version)==="1.0"){let be=fe.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(be)return"!"+be[1];let Se=fe.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return Se?`!${Se[1]}/${Se[2]}`:`!${fe.replace(/^tag:/,"")}`}let ue=ce.tagPrefixes.find(be=>fe.indexOf(be.prefix)===0);if(!ue){let be=ce.getDefaults().tagPrefixes;ue=be&&be.find(Se=>fe.indexOf(Se.prefix)===0)}if(!ue)return fe[0]==="!"?fe:`!<${fe}>`;let de=fe.substr(ue.prefix.length).replace(/[!,[\]{}]/g,be=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[be]);return ue.handle+de}function f(ce,fe){if(fe instanceof r.Alias)return r.Alias;if(fe.tag){let be=ce.filter(Se=>Se.tag===fe.tag);if(be.length>0)return be.find(Se=>Se.format===fe.format)||be[0]}let ue,de;if(fe instanceof r.Scalar){de=fe.value;let be=ce.filter(Se=>Se.identify&&Se.identify(de)||Se.class&&de instanceof Se.class);ue=be.find(Se=>Se.format===fe.format)||be.find(Se=>!Se.format)}else de=fe,ue=ce.find(be=>be.nodeClass&&de instanceof be.nodeClass);if(!ue){let be=de&&de.constructor?de.constructor.name:typeof de;throw new Error(`Tag not resolved for ${be} value`)}return ue}function I(ce,fe,{anchors:ue,doc:de}){let be=[],Se=de.anchors.getName(ce);return Se&&(ue[Se]=ce,be.push(`&${Se}`)),ce.tag?be.push(A(de,ce.tag)):fe.default||be.push(A(de,fe.tag)),be.join(" ")}function C(ce,fe,ue,de){let{anchors:be,schema:Se}=fe.doc,De;if(!(ce instanceof r.Node)){let ze={aliasNodes:[],onTagObj:Le=>De=Le,prevObjects:new Map};ce=Se.createNode(ce,!0,null,ze);for(let Le of ze.aliasNodes){Le.source=Le.source.node;let Je=be.getName(Le.source);Je||(Je=be.newName(),be.map[Je]=Le.source)}}if(ce instanceof r.Pair)return ce.toString(fe,ue,de);De||(De=f(Se.tags,ce));let k=I(ce,De,fe);k.length>0&&(fe.indentAtStart=(fe.indentAtStart||0)+k.length+1);let tt=typeof De.stringify=="function"?De.stringify(ce,fe,ue,de):ce instanceof r.Scalar?r.stringifyString(ce,fe,ue,de):ce.toString(fe,ue,de);return k?ce instanceof r.Scalar||tt[0]==="{"||tt[0]==="["?`${k} ${tt}`:`${k} -${fe.indent}${tt}`:tt}var b=class _wi{static validAnchorNode(fe){return fe instanceof r.Scalar||fe instanceof r.YAMLSeq||fe instanceof r.YAMLMap}constructor(fe){t._defineProperty(this,"map",Object.create(null)),this.prefix=fe}createAlias(fe,ue){return this.setAnchor(fe,ue),new r.Alias(fe)}createMergePair(...fe){let ue=new r.Merge;return ue.value.items=fe.map(de=>{if(de instanceof r.Alias){if(de.source instanceof r.YAMLMap)return de}else if(de instanceof r.YAMLMap)return this.createAlias(de);throw new Error("Merge sources must be Map nodes or their Aliases")}),ue}getName(fe){let{map:ue}=this;return Object.keys(ue).find(de=>ue[de]===fe)}getNames(){return Object.keys(this.map)}getNode(fe){return this.map[fe]}newName(fe){fe||(fe=this.prefix);let ue=Object.keys(this.map);for(let de=1;;++de){let be=`${fe}${de}`;if(!ue.includes(be))return be}}resolveNodes(){let{map:fe,_cstAliases:ue}=this;Object.keys(fe).forEach(de=>{fe[de]=fe[de].resolved}),ue.forEach(de=>{de.source=de.source.resolved}),delete this._cstAliases}setAnchor(fe,ue){if(fe!=null&&!_wi.validAnchorNode(fe))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(ue&&/[\x00-\x19\s,[\]{}]/.test(ue))throw new Error("Anchor names must not contain whitespace or control characters");let{map:de}=this,be=fe&&Object.keys(de).find(Se=>de[Se]===fe);if(be)if(ue)be!==ue&&(delete de[be],de[ue]=fe);else return be;else{if(!ue){if(!fe)return null;ue=this.newName()}de[ue]=fe}return ue}},E=(ce,fe)=>{if(ce&&typeof ce=="object"){let{tag:ue}=ce;ce instanceof r.Collection?(ue&&(fe[ue]=!0),ce.items.forEach(de=>E(de,fe))):ce instanceof r.Pair?(E(ce.key,fe),E(ce.value,fe)):ce instanceof r.Scalar&&ue&&(fe[ue]=!0)}return fe},N=ce=>Object.keys(E(ce,{}));function B(ce,fe){let ue={before:[],after:[]},de,be=!1;for(let Se of fe)if(Se.valueRange){if(de!==void 0){let k="Document contains trailing content not separated by a ... or --- line";ce.errors.push(new t.YAMLSyntaxError(Se,k));break}let De=r.resolveNode(ce,Se);be&&(De.spaceBefore=!0,be=!1),de=De}else Se.comment!==null?(de===void 0?ue.before:ue.after).push(Se.comment):Se.type===t.Type.BLANK_LINE&&(be=!0,de===void 0&&ue.before.length>0&&!ce.commentBefore&&(ce.commentBefore=ue.before.join(` +${Le.comment}`:ze.comment),ze=Le}k.items[tt]=ze instanceof r.Pair?ze:new r.Pair(ze)}}return k}function o(Se,De,k){let tt=new r.YAMLSeq(Se);tt.tag="tag:yaml.org,2002:pairs";for(let ze of De){let Le,Je;if(Array.isArray(ze))if(ze.length===2)Le=ze[0],Je=ze[1];else throw new TypeError(`Expected [key, value] tuple: ${ze}`);else if(ze&&ze instanceof Object){let lt=Object.keys(ze);if(lt.length===1)Le=lt[0],Je=ze[Le];else throw new TypeError(`Expected { key: value } tuple: ${ze}`)}else Le=ze;let ft=Se.createPair(Le,Je,k);tt.items.push(ft)}return tt}var l={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:a,createNode:o},A=class wwi extends r.YAMLSeq{constructor(){super(),t._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),t._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),t._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),t._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),t._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=wwi.tag}toJSON(De,k){let tt=new Map;k&&k.onCreate&&k.onCreate(tt);for(let ze of this.items){let Le,Je;if(ze instanceof r.Pair?(Le=r.toJSON(ze.key,"",k),Je=r.toJSON(ze.value,Le,k)):Le=r.toJSON(ze,"",k),tt.has(Le))throw new Error("Ordered maps must not include duplicate keys");tt.set(Le,Je)}return tt}};t._defineProperty(A,"tag","tag:yaml.org,2002:omap");function f(Se,De){let k=a(Se,De),tt=[];for(let{key:ze}of k.items)if(ze instanceof r.Scalar)if(tt.includes(ze.value)){let Le="Ordered maps must not include duplicate keys";throw new t.YAMLSemanticError(De,Le)}else tt.push(ze.value);return Object.assign(new A,k)}function I(Se,De,k){let tt=o(Se,De,k),ze=new A;return ze.items=tt.items,ze}var C={identify:Se=>Se instanceof Map,nodeClass:A,default:!1,tag:"tag:yaml.org,2002:omap",resolve:f,createNode:I},b=class Twi extends r.YAMLMap{constructor(){super(),this.tag=Twi.tag}add(De){let k=De instanceof r.Pair?De:new r.Pair(De);r.findPair(this.items,k.key)||this.items.push(k)}get(De,k){let tt=r.findPair(this.items,De);return!k&&tt instanceof r.Pair?tt.key instanceof r.Scalar?tt.key.value:tt.key:tt}set(De,k){if(typeof k!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof k}`);let tt=r.findPair(this.items,De);tt&&!k?this.items.splice(this.items.indexOf(tt),1):!tt&&k&&this.items.push(new r.Pair(De))}toJSON(De,k){return super.toJSON(De,k,Set)}toString(De,k,tt){if(!De)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(De,k,tt);throw new Error("Set items must all have null values")}};t._defineProperty(b,"tag","tag:yaml.org,2002:set");function E(Se,De){let k=r.resolveMap(Se,De);if(!k.hasAllNullValues())throw new t.YAMLSemanticError(De,"Set items must all have null values");return Object.assign(new b,k)}function N(Se,De,k){let tt=new b;for(let ze of De)tt.items.push(Se.createPair(ze,null,k));return tt}var B={identify:Se=>Se instanceof Set,nodeClass:b,default:!1,tag:"tag:yaml.org,2002:set",resolve:E,createNode:N},F=(Se,De)=>{let k=De.split(":").reduce((tt,ze)=>tt*60+Number(ze),0);return Se==="-"?-k:k},Q=({value:Se})=>{if(isNaN(Se)||!isFinite(Se))return r.stringifyNumber(Se);let De="";Se<0&&(De="-",Se=Math.abs(Se));let k=[Se%60];return Se<60?k.unshift(0):(Se=Math.round((Se-k[0])/60),k.unshift(Se%60),Se>=60&&(Se=Math.round((Se-k[0])/60),k.unshift(Se))),De+k.map(tt=>tt<10?"0"+String(tt):String(tt)).join(":").replace(/000000\d*$/,"")},J={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ae={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ne={identify:Se=>Se 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:(Se,De,k,tt,ze,Le,Je,ft,lt)=>{ft&&(ft=(ft+"00").substr(1,3));let Ot=Date.UTC(De,k-1,tt,ze||0,Le||0,Je||0,ft||0);if(lt&<!=="Z"){let Er=F(lt[0],lt.slice(1));Math.abs(Er)<30&&(Er*=60),Ot-=6e4*Er}return new Date(Ot)},stringify:({value:Se})=>Se.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};function ce(Se){let De={};return Se?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!De.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!De.YAML_SILENCE_WARNINGS}function fe(Se,De){ce(!1)&&console.warn(De?`${De}: ${Se}`:Se)}function ue(Se){if(ce(!0)){let De=Se.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");fe(`The endpoint 'yaml/${De}' will be removed in a future release.`,"DeprecationWarning")}}var de={};function be(Se,De){if(!de[Se]&&ce(!0)){de[Se]=!0;let k=`The option '${Se}' will be removed in a future release`;k+=De?`, use '${De}' instead.`:".",fe(k,"DeprecationWarning")}}e.binary=n,e.floatTime=ae,e.intTime=J,e.omap=C,e.pairs=l,e.set=B,e.timestamp=ne,e.warn=fe,e.warnFileDeprecation=ue,e.warnOptionDeprecation=be}),Rwi=Xee(e=>{"use strict";var t=dCe(),r=KJe(),n=Bwi();function a(jt,Bt,Nt){let Fr=new r.YAMLMap(jt);if(Bt instanceof Map)for(let[$t,Xt]of Bt)Fr.items.push(jt.createPair($t,Xt,Nt));else if(Bt&&typeof Bt=="object")for(let $t of Object.keys(Bt))Fr.items.push(jt.createPair($t,Bt[$t],Nt));return typeof jt.sortMapEntries=="function"&&Fr.items.sort(jt.sortMapEntries),Fr}var o={createNode:a,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function l(jt,Bt,Nt){let Fr=new r.YAMLSeq(jt);if(Bt&&Bt[Symbol.iterator])for(let $t of Bt){let Xt=jt.createNode($t,Nt.wrapScalars,null,Nt);Fr.items.push(Xt)}return Fr}var A={createNode:l,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},f={identify:jt=>typeof jt=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(jt,Bt,Nt,Fr){return Bt=Object.assign({actualString:!0},Bt),r.stringifyString(jt,Bt,Nt,Fr)},options:r.strOptions},I=[o,A,f],C=jt=>typeof jt=="bigint"||Number.isInteger(jt),b=(jt,Bt,Nt)=>r.intOptions.asBigInt?BigInt(jt):parseInt(Bt,Nt);function E(jt,Bt,Nt){let{value:Fr}=jt;return C(Fr)&&Fr>=0?Nt+Fr.toString(Bt):r.stringifyNumber(jt)}var N={identify:jt=>jt==null,createNode:(jt,Bt,Nt)=>Nt.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},B={identify:jt=>typeof jt=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:jt=>jt[0]==="t"||jt[0]==="T",options:r.boolOptions,stringify:({value:jt})=>jt?r.boolOptions.trueStr:r.boolOptions.falseStr},F={identify:jt=>C(jt)&&jt>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(jt,Bt)=>b(jt,Bt,8),options:r.intOptions,stringify:jt=>E(jt,8,"0o")},Q={identify:C,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:jt=>b(jt,jt,10),options:r.intOptions,stringify:r.stringifyNumber},J={identify:jt=>C(jt)&&jt>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(jt,Bt)=>b(jt,Bt,16),options:r.intOptions,stringify:jt=>E(jt,16,"0x")},ae={identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(jt,Bt)=>Bt?NaN:jt[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},ne={identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:jt=>parseFloat(jt),stringify:({value:jt})=>Number(jt).toExponential()},ce={identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(jt,Bt,Nt){let Fr=Bt||Nt,$t=new r.Scalar(parseFloat(jt));return Fr&&Fr[Fr.length-1]==="0"&&($t.minFractionDigits=Fr.length),$t},stringify:r.stringifyNumber},fe=I.concat([N,B,F,Q,J,ae,ne,ce]),ue=jt=>typeof jt=="bigint"||Number.isInteger(jt),de=({value:jt})=>JSON.stringify(jt),be=[o,A,{identify:jt=>typeof jt=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:de},{identify:jt=>jt==null,createNode:(jt,Bt,Nt)=>Nt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:de},{identify:jt=>typeof jt=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:jt=>jt==="true",stringify:de},{identify:ue,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:jt=>r.intOptions.asBigInt?BigInt(jt):parseInt(jt,10),stringify:({value:jt})=>ue(jt)?jt.toString():JSON.stringify(jt)},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:jt=>parseFloat(jt),stringify:de}];be.scalarFallback=jt=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(jt)}`)};var Se=({value:jt})=>jt?r.boolOptions.trueStr:r.boolOptions.falseStr,De=jt=>typeof jt=="bigint"||Number.isInteger(jt);function k(jt,Bt,Nt){let Fr=Bt.replace(/_/g,"");if(r.intOptions.asBigInt){switch(Nt){case 2:Fr=`0b${Fr}`;break;case 8:Fr=`0o${Fr}`;break;case 16:Fr=`0x${Fr}`;break}let Xt=BigInt(Fr);return jt==="-"?BigInt(-1)*Xt:Xt}let $t=parseInt(Fr,Nt);return jt==="-"?-1*$t:$t}function tt(jt,Bt,Nt){let{value:Fr}=jt;if(De(Fr)){let $t=Fr.toString(Bt);return Fr<0?"-"+Nt+$t.substr(1):Nt+$t}return r.stringifyNumber(jt)}var ze=I.concat([{identify:jt=>jt==null,createNode:(jt,Bt,Nt)=>Nt.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:jt=>typeof jt=="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:Se},{identify:jt=>typeof jt=="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:Se},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(jt,Bt,Nt)=>k(Bt,Nt,2),stringify:jt=>tt(jt,2,"0b")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(jt,Bt,Nt)=>k(Bt,Nt,8),stringify:jt=>tt(jt,8,"0")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(jt,Bt,Nt)=>k(Bt,Nt,10),stringify:r.stringifyNumber},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(jt,Bt,Nt)=>k(Bt,Nt,16),stringify:jt=>tt(jt,16,"0x")},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(jt,Bt)=>Bt?NaN:jt[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:jt=>parseFloat(jt.replace(/_/g,"")),stringify:({value:jt})=>Number(jt).toExponential()},{identify:jt=>typeof jt=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(jt,Bt){let Nt=new r.Scalar(parseFloat(jt.replace(/_/g,"")));if(Bt){let Fr=Bt.replace(/_/g,"");Fr[Fr.length-1]==="0"&&(Nt.minFractionDigits=Fr.length)}return Nt},stringify:r.stringifyNumber}],n.binary,n.omap,n.pairs,n.set,n.intTime,n.floatTime,n.timestamp),Le={core:fe,failsafe:I,json:be,yaml11:ze},Je={binary:n.binary,bool:B,float:ce,floatExp:ne,floatNaN:ae,floatTime:n.floatTime,int:Q,intHex:J,intOct:F,intTime:n.intTime,map:o,null:N,omap:n.omap,pairs:n.pairs,seq:A,set:n.set,timestamp:n.timestamp};function ft(jt,Bt,Nt){if(Bt){let Fr=Nt.filter(Xt=>Xt.tag===Bt),$t=Fr.find(Xt=>!Xt.format)||Fr[0];if(!$t)throw new Error(`Tag ${Bt} not found`);return $t}return Nt.find(Fr=>(Fr.identify&&Fr.identify(jt)||Fr.class&&jt instanceof Fr.class)&&!Fr.format)}function lt(jt,Bt,Nt){if(jt instanceof r.Node)return jt;let{defaultPrefix:Fr,onTagObj:$t,prevObjects:Xt,schema:lr,wrapScalars:cr}=Nt;Bt&&Bt.startsWith("!!")&&(Bt=Fr+Bt.slice(2));let Ar=ft(jt,Bt,lr.tags);if(!Ar){if(typeof jt.toJSON=="function"&&(jt=jt.toJSON()),!jt||typeof jt!="object")return cr?new r.Scalar(jt):jt;Ar=jt instanceof Map?o:jt[Symbol.iterator]?A:o}$t&&($t(Ar),delete Nt.onTagObj);let qr={value:void 0,node:void 0};if(jt&&typeof jt=="object"&&Xt){let _n=Xt.get(jt);if(_n){let ke=new r.Alias(_n);return Nt.aliasNodes.push(ke),ke}qr.value=jt,Xt.set(jt,qr)}return qr.node=Ar.createNode?Ar.createNode(Nt.schema,jt,Nt):cr?new r.Scalar(jt):jt,Bt&&qr.node instanceof r.Node&&(qr.node.tag=Bt),qr.node}function Ot(jt,Bt,Nt,Fr){let $t=jt[Fr.replace(/\W/g,"")];if(!$t){let Xt=Object.keys(jt).map(lr=>JSON.stringify(lr)).join(", ");throw new Error(`Unknown schema "${Fr}"; use one of ${Xt}`)}if(Array.isArray(Nt))for(let Xt of Nt)$t=$t.concat(Xt);else typeof Nt=="function"&&($t=Nt($t.slice()));for(let Xt=0;Xt<$t.length;++Xt){let lr=$t[Xt];if(typeof lr=="string"){let cr=Bt[lr];if(!cr){let Ar=Object.keys(Bt).map(qr=>JSON.stringify(qr)).join(", ");throw new Error(`Unknown custom tag "${lr}"; use one of ${Ar}`)}$t[Xt]=cr}}return $t}var Er=(jt,Bt)=>jt.keyBt.key?1:0,Sr=class Nwi{constructor({customTags:Bt,merge:Nt,schema:Fr,sortMapEntries:$t,tags:Xt}){this.merge=!!Nt,this.name=Fr,this.sortMapEntries=$t===!0?Er:$t||null,!Bt&&Xt&&n.warnOptionDeprecation("tags","customTags"),this.tags=Ot(Le,Je,Bt||Xt,Fr)}createNode(Bt,Nt,Fr,$t){let Xt={defaultPrefix:Nwi.defaultPrefix,schema:this,wrapScalars:Nt},lr=$t?Object.assign($t,Xt):Xt;return lt(Bt,Fr,lr)}createPair(Bt,Nt,Fr){Fr||(Fr={wrapScalars:!0});let $t=this.createNode(Bt,Fr.wrapScalars,null,Fr),Xt=this.createNode(Nt,Fr.wrapScalars,null,Fr);return new r.Pair($t,Xt)}};t._defineProperty(Sr,"defaultPrefix",t.defaultTagPrefix),t._defineProperty(Sr,"defaultTags",t.defaultTags),e.Schema=Sr}),Cnc=Xee(e=>{"use strict";var t=dCe(),r=KJe(),n=Rwi(),a={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"},o={get binary(){return r.binaryOptions},set binary(ce){Object.assign(r.binaryOptions,ce)},get bool(){return r.boolOptions},set bool(ce){Object.assign(r.boolOptions,ce)},get int(){return r.intOptions},set int(ce){Object.assign(r.intOptions,ce)},get null(){return r.nullOptions},set null(ce){Object.assign(r.nullOptions,ce)},get str(){return r.strOptions},set str(ce){Object.assign(r.strOptions,ce)}},l={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:t.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]}};function A(ce,fe){if((ce.version||ce.options.version)==="1.0"){let be=fe.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(be)return"!"+be[1];let Se=fe.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return Se?`!${Se[1]}/${Se[2]}`:`!${fe.replace(/^tag:/,"")}`}let ue=ce.tagPrefixes.find(be=>fe.indexOf(be.prefix)===0);if(!ue){let be=ce.getDefaults().tagPrefixes;ue=be&&be.find(Se=>fe.indexOf(Se.prefix)===0)}if(!ue)return fe[0]==="!"?fe:`!<${fe}>`;let de=fe.substr(ue.prefix.length).replace(/[!,[\]{}]/g,be=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[be]);return ue.handle+de}function f(ce,fe){if(fe instanceof r.Alias)return r.Alias;if(fe.tag){let be=ce.filter(Se=>Se.tag===fe.tag);if(be.length>0)return be.find(Se=>Se.format===fe.format)||be[0]}let ue,de;if(fe instanceof r.Scalar){de=fe.value;let be=ce.filter(Se=>Se.identify&&Se.identify(de)||Se.class&&de instanceof Se.class);ue=be.find(Se=>Se.format===fe.format)||be.find(Se=>!Se.format)}else de=fe,ue=ce.find(be=>be.nodeClass&&de instanceof be.nodeClass);if(!ue){let be=de&&de.constructor?de.constructor.name:typeof de;throw new Error(`Tag not resolved for ${be} value`)}return ue}function I(ce,fe,{anchors:ue,doc:de}){let be=[],Se=de.anchors.getName(ce);return Se&&(ue[Se]=ce,be.push(`&${Se}`)),ce.tag?be.push(A(de,ce.tag)):fe.default||be.push(A(de,fe.tag)),be.join(" ")}function C(ce,fe,ue,de){let{anchors:be,schema:Se}=fe.doc,De;if(!(ce instanceof r.Node)){let ze={aliasNodes:[],onTagObj:Le=>De=Le,prevObjects:new Map};ce=Se.createNode(ce,!0,null,ze);for(let Le of ze.aliasNodes){Le.source=Le.source.node;let Je=be.getName(Le.source);Je||(Je=be.newName(),be.map[Je]=Le.source)}}if(ce instanceof r.Pair)return ce.toString(fe,ue,de);De||(De=f(Se.tags,ce));let k=I(ce,De,fe);k.length>0&&(fe.indentAtStart=(fe.indentAtStart||0)+k.length+1);let tt=typeof De.stringify=="function"?De.stringify(ce,fe,ue,de):ce instanceof r.Scalar?r.stringifyString(ce,fe,ue,de):ce.toString(fe,ue,de);return k?ce instanceof r.Scalar||tt[0]==="{"||tt[0]==="["?`${k} ${tt}`:`${k} +${fe.indent}${tt}`:tt}var b=class Dwi{static validAnchorNode(fe){return fe instanceof r.Scalar||fe instanceof r.YAMLSeq||fe instanceof r.YAMLMap}constructor(fe){t._defineProperty(this,"map",Object.create(null)),this.prefix=fe}createAlias(fe,ue){return this.setAnchor(fe,ue),new r.Alias(fe)}createMergePair(...fe){let ue=new r.Merge;return ue.value.items=fe.map(de=>{if(de instanceof r.Alias){if(de.source instanceof r.YAMLMap)return de}else if(de instanceof r.YAMLMap)return this.createAlias(de);throw new Error("Merge sources must be Map nodes or their Aliases")}),ue}getName(fe){let{map:ue}=this;return Object.keys(ue).find(de=>ue[de]===fe)}getNames(){return Object.keys(this.map)}getNode(fe){return this.map[fe]}newName(fe){fe||(fe=this.prefix);let ue=Object.keys(this.map);for(let de=1;;++de){let be=`${fe}${de}`;if(!ue.includes(be))return be}}resolveNodes(){let{map:fe,_cstAliases:ue}=this;Object.keys(fe).forEach(de=>{fe[de]=fe[de].resolved}),ue.forEach(de=>{de.source=de.source.resolved}),delete this._cstAliases}setAnchor(fe,ue){if(fe!=null&&!Dwi.validAnchorNode(fe))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(ue&&/[\x00-\x19\s,[\]{}]/.test(ue))throw new Error("Anchor names must not contain whitespace or control characters");let{map:de}=this,be=fe&&Object.keys(de).find(Se=>de[Se]===fe);if(be)if(ue)be!==ue&&(delete de[be],de[ue]=fe);else return be;else{if(!ue){if(!fe)return null;ue=this.newName()}de[ue]=fe}return ue}},E=(ce,fe)=>{if(ce&&typeof ce=="object"){let{tag:ue}=ce;ce instanceof r.Collection?(ue&&(fe[ue]=!0),ce.items.forEach(de=>E(de,fe))):ce instanceof r.Pair?(E(ce.key,fe),E(ce.value,fe)):ce instanceof r.Scalar&&ue&&(fe[ue]=!0)}return fe},N=ce=>Object.keys(E(ce,{}));function B(ce,fe){let ue={before:[],after:[]},de,be=!1;for(let Se of fe)if(Se.valueRange){if(de!==void 0){let k="Document contains trailing content not separated by a ... or --- line";ce.errors.push(new t.YAMLSyntaxError(Se,k));break}let De=r.resolveNode(ce,Se);be&&(De.spaceBefore=!0,be=!1),de=De}else Se.comment!==null?(de===void 0?ue.before:ue.after).push(Se.comment):Se.type===t.Type.BLANK_LINE&&(be=!0,de===void 0&&ue.before.length>0&&!ce.commentBefore&&(ce.commentBefore=ue.before.join(` `),ue.before=[]));if(ce.contents=de||null,!de)ce.comment=ue.before.concat(ue.after).join(` `)||null;else{let Se=ue.before.join(` `);if(Se){let De=de instanceof r.Collection&&de.items[0]?de.items[0]:de;De.commentBefore=De.commentBefore?`${Se} ${De.commentBefore}`:Se}ce.comment=ue.after.join(` `)||null}}function F({tagPrefixes:ce},fe){let[ue,de]=fe.parameters;if(!ue||!de){let be="Insufficient parameters given for %TAG directive";throw new t.YAMLSemanticError(fe,be)}if(ce.some(be=>be.handle===ue)){let be="The %TAG directive must only be given at most once per handle in the same document.";throw new t.YAMLSemanticError(fe,be)}return{handle:ue,prefix:de}}function Q(ce,fe){let[ue]=fe.parameters;if(fe.name==="YAML:1.0"&&(ue="1.0"),!ue){let de="Insufficient parameters given for %YAML directive";throw new t.YAMLSemanticError(fe,de)}if(!l[ue]){let de=`Document will be parsed as YAML ${ce.version||ce.options.version} rather than YAML ${ue}`;ce.warnings.push(new t.YAMLWarning(fe,de))}return ue}function J(ce,fe,ue){let de=[],be=!1;for(let Se of fe){let{comment:De,name:k}=Se;switch(k){case"TAG":try{ce.tagPrefixes.push(F(ce,Se))}catch(tt){ce.errors.push(tt)}be=!0;break;case"YAML":case"YAML:1.0":if(ce.version){let tt="The %YAML directive must only be given at most once per document.";ce.errors.push(new t.YAMLSemanticError(Se,tt))}try{ce.version=Q(ce,Se)}catch(tt){ce.errors.push(tt)}be=!0;break;default:if(k){let tt=`YAML only supports %TAG and %YAML directives, and not %${k}`;ce.warnings.push(new t.YAMLWarning(Se,tt))}}De&&de.push(De)}if(ue&&!be&&(ce.version||ue.version||ce.options.version)==="1.1"){let Se=({handle:De,prefix:k})=>({handle:De,prefix:k});ce.tagPrefixes=ue.tagPrefixes.map(Se),ce.version=ue.version}ce.commentBefore=de.join(` -`)||null}function ae(ce){if(ce instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var ne=class MDr{constructor(fe){this.anchors=new b(fe.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=fe,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(fe){return ae(this.contents),this.contents.add(fe)}addIn(fe,ue){ae(this.contents),this.contents.addIn(fe,ue)}delete(fe){return ae(this.contents),this.contents.delete(fe)}deleteIn(fe){return r.isEmptyPath(fe)?this.contents==null?!1:(this.contents=null,!0):(ae(this.contents),this.contents.deleteIn(fe))}getDefaults(){return MDr.defaults[this.version]||MDr.defaults[this.options.version]||{}}get(fe,ue){return this.contents instanceof r.Collection?this.contents.get(fe,ue):void 0}getIn(fe,ue){return r.isEmptyPath(fe)?!ue&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(fe,ue):void 0}has(fe){return this.contents instanceof r.Collection?this.contents.has(fe):!1}hasIn(fe){return r.isEmptyPath(fe)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(fe):!1}set(fe,ue){ae(this.contents),this.contents.set(fe,ue)}setIn(fe,ue){r.isEmptyPath(fe)?this.contents=ue:(ae(this.contents),this.contents.setIn(fe,ue))}setSchema(fe,ue){if(!fe&&!ue&&this.schema)return;typeof fe=="number"&&(fe=fe.toFixed(1)),fe==="1.0"||fe==="1.1"||fe==="1.2"?(this.version?this.version=fe:this.options.version=fe,delete this.options.schema):fe&&typeof fe=="string"&&(this.options.schema=fe),Array.isArray(ue)&&(this.options.customTags=ue);let de=Object.assign({},this.getDefaults(),this.options);this.schema=new n.Schema(de)}parse(fe,ue){this.options.keepCstNodes&&(this.cstNode=fe),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:de=[],contents:be=[],directivesEndMarker:Se,error:De,valueRange:k}=fe;if(De&&(De.source||(De.source=this),this.errors.push(De)),J(this,de,ue),Se&&(this.directivesEndMarker=!0),this.range=k?[k.start,k.end]:null,this.setSchema(),this.anchors._cstAliases=[],B(this,be),this.anchors.resolveNodes(),this.options.prettyErrors){for(let tt of this.errors)tt instanceof t.YAMLError&&tt.makePretty();for(let tt of this.warnings)tt instanceof t.YAMLError&&tt.makePretty()}return this}listNonDefaultTags(){return N(this.contents).filter(fe=>fe.indexOf(n.Schema.defaultPrefix)!==0)}setTagPrefix(fe,ue){if(fe[0]!=="!"||fe[fe.length-1]!=="!")throw new Error("Handle must start and end with !");if(ue){let de=this.tagPrefixes.find(be=>be.handle===fe);de?de.prefix=ue:this.tagPrefixes.push({handle:fe,prefix:ue})}else this.tagPrefixes=this.tagPrefixes.filter(de=>de.handle!==fe)}toJSON(fe,ue){let{keepBlobsInJSON:de,mapAsMap:be,maxAliasCount:Se}=this.options,De=de&&(typeof fe!="string"||!(this.contents instanceof r.Scalar)),k={doc:this,indentStep:" ",keep:De,mapAsMap:De&&!!be,maxAliasCount:Se,stringify:C},tt=Object.keys(this.anchors.map);tt.length>0&&(k.anchors=new Map(tt.map(Le=>[this.anchors.map[Le],{alias:[],aliasCount:0,count:1}])));let ze=r.toJSON(this.contents,fe,k);if(typeof ue=="function"&&k.anchors)for(let{count:Le,res:Je}of k.anchors.values())ue(Je,Le);return ze}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let fe=this.options.indent;if(!Number.isInteger(fe)||fe<=0){let tt=JSON.stringify(fe);throw new Error(`"indent" option must be a positive integer, not ${tt}`)}this.setSchema();let ue=[],de=!1;if(this.version){let tt="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?tt="%YAML:1.0":this.version==="1.1"&&(tt="%YAML 1.1")),ue.push(tt),de=!0}let be=this.listNonDefaultTags();this.tagPrefixes.forEach(({handle:tt,prefix:ze})=>{be.some(Le=>Le.indexOf(ze)===0)&&(ue.push(`%TAG ${tt} ${ze}`),de=!0)}),(de||this.directivesEndMarker)&&ue.push("---"),this.commentBefore&&((de||!this.directivesEndMarker)&&ue.unshift(""),ue.unshift(this.commentBefore.replace(/^/gm,"#")));let Se={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(fe),stringify:C},De=!1,k=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(de||this.directivesEndMarker)&&ue.push(""),this.contents.commentBefore&&ue.push(this.contents.commentBefore.replace(/^/gm,"#")),Se.forceBlockIndent=!!this.comment,k=this.contents.comment);let tt=k?null:()=>De=!0,ze=C(this.contents,Se,()=>k=null,tt);ue.push(r.addComment(ze,"",k))}else this.contents!==void 0&&ue.push(C(this.contents,Se));return this.comment&&((!De||k)&&ue[ue.length-1]!==""&&ue.push(""),ue.push(this.comment.replace(/^/gm,"#"))),ue.join(` +`)||null}function ae(ce){if(ce instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var ne=class YDr{constructor(fe){this.anchors=new b(fe.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=fe,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(fe){return ae(this.contents),this.contents.add(fe)}addIn(fe,ue){ae(this.contents),this.contents.addIn(fe,ue)}delete(fe){return ae(this.contents),this.contents.delete(fe)}deleteIn(fe){return r.isEmptyPath(fe)?this.contents==null?!1:(this.contents=null,!0):(ae(this.contents),this.contents.deleteIn(fe))}getDefaults(){return YDr.defaults[this.version]||YDr.defaults[this.options.version]||{}}get(fe,ue){return this.contents instanceof r.Collection?this.contents.get(fe,ue):void 0}getIn(fe,ue){return r.isEmptyPath(fe)?!ue&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(fe,ue):void 0}has(fe){return this.contents instanceof r.Collection?this.contents.has(fe):!1}hasIn(fe){return r.isEmptyPath(fe)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(fe):!1}set(fe,ue){ae(this.contents),this.contents.set(fe,ue)}setIn(fe,ue){r.isEmptyPath(fe)?this.contents=ue:(ae(this.contents),this.contents.setIn(fe,ue))}setSchema(fe,ue){if(!fe&&!ue&&this.schema)return;typeof fe=="number"&&(fe=fe.toFixed(1)),fe==="1.0"||fe==="1.1"||fe==="1.2"?(this.version?this.version=fe:this.options.version=fe,delete this.options.schema):fe&&typeof fe=="string"&&(this.options.schema=fe),Array.isArray(ue)&&(this.options.customTags=ue);let de=Object.assign({},this.getDefaults(),this.options);this.schema=new n.Schema(de)}parse(fe,ue){this.options.keepCstNodes&&(this.cstNode=fe),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:de=[],contents:be=[],directivesEndMarker:Se,error:De,valueRange:k}=fe;if(De&&(De.source||(De.source=this),this.errors.push(De)),J(this,de,ue),Se&&(this.directivesEndMarker=!0),this.range=k?[k.start,k.end]:null,this.setSchema(),this.anchors._cstAliases=[],B(this,be),this.anchors.resolveNodes(),this.options.prettyErrors){for(let tt of this.errors)tt instanceof t.YAMLError&&tt.makePretty();for(let tt of this.warnings)tt instanceof t.YAMLError&&tt.makePretty()}return this}listNonDefaultTags(){return N(this.contents).filter(fe=>fe.indexOf(n.Schema.defaultPrefix)!==0)}setTagPrefix(fe,ue){if(fe[0]!=="!"||fe[fe.length-1]!=="!")throw new Error("Handle must start and end with !");if(ue){let de=this.tagPrefixes.find(be=>be.handle===fe);de?de.prefix=ue:this.tagPrefixes.push({handle:fe,prefix:ue})}else this.tagPrefixes=this.tagPrefixes.filter(de=>de.handle!==fe)}toJSON(fe,ue){let{keepBlobsInJSON:de,mapAsMap:be,maxAliasCount:Se}=this.options,De=de&&(typeof fe!="string"||!(this.contents instanceof r.Scalar)),k={doc:this,indentStep:" ",keep:De,mapAsMap:De&&!!be,maxAliasCount:Se,stringify:C},tt=Object.keys(this.anchors.map);tt.length>0&&(k.anchors=new Map(tt.map(Le=>[this.anchors.map[Le],{alias:[],aliasCount:0,count:1}])));let ze=r.toJSON(this.contents,fe,k);if(typeof ue=="function"&&k.anchors)for(let{count:Le,res:Je}of k.anchors.values())ue(Je,Le);return ze}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let fe=this.options.indent;if(!Number.isInteger(fe)||fe<=0){let tt=JSON.stringify(fe);throw new Error(`"indent" option must be a positive integer, not ${tt}`)}this.setSchema();let ue=[],de=!1;if(this.version){let tt="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?tt="%YAML:1.0":this.version==="1.1"&&(tt="%YAML 1.1")),ue.push(tt),de=!0}let be=this.listNonDefaultTags();this.tagPrefixes.forEach(({handle:tt,prefix:ze})=>{be.some(Le=>Le.indexOf(ze)===0)&&(ue.push(`%TAG ${tt} ${ze}`),de=!0)}),(de||this.directivesEndMarker)&&ue.push("---"),this.commentBefore&&((de||!this.directivesEndMarker)&&ue.unshift(""),ue.unshift(this.commentBefore.replace(/^/gm,"#")));let Se={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(fe),stringify:C},De=!1,k=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(de||this.directivesEndMarker)&&ue.push(""),this.contents.commentBefore&&ue.push(this.contents.commentBefore.replace(/^/gm,"#")),Se.forceBlockIndent=!!this.comment,k=this.contents.comment);let tt=k?null:()=>De=!0,ze=C(this.contents,Se,()=>k=null,tt);ue.push(r.addComment(ze,"",k))}else this.contents!==void 0&&ue.push(C(this.contents,Se));return this.comment&&((!De||k)&&ue[ue.length-1]!==""&&ue.push(""),ue.push(this.comment.replace(/^/gm,"#"))),ue.join(` `)+` -`}};t._defineProperty(ne,"defaults",l),e.Document=ne,e.defaultOptions=a,e.scalarOptions=o}),fnc=Qee(e=>{"use strict";var t=dnc(),r=pnc(),n=mwi(),a=ACe(),o=fwi();JJe();function l(N,B=!0,F){F===void 0&&typeof B=="string"&&(F=B,B=!0);let Q=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new n.Schema(Q).createNode(N,B,F)}var A=class extends r.Document{constructor(N){super(Object.assign({},r.defaultOptions,N))}};function f(N,B){let F=[],Q;for(let J of t.parse(N)){let ae=new A(B);ae.parse(J,Q),F.push(ae),Q=ae}return F}function I(N,B){let F=t.parse(N),Q=new A(B).parse(F[0]);if(F.length>1){let J="Source contains multiple documents; please use YAML.parseAllDocuments()";Q.errors.unshift(new a.YAMLSemanticError(F[1],J))}return Q}function C(N,B){let F=I(N,B);if(F.warnings.forEach(Q=>o.warn(Q)),F.errors.length>0)throw F.errors[0];return F.toJSON()}function b(N,B){let F=new A(B);return F.contents=N,String(F)}var E={createNode:l,defaultOptions:r.defaultOptions,Document:A,parse:C,parseAllDocuments:f,parseCST:t.parse,parseDocument:I,scalarOptions:r.scalarOptions,stringify:b};e.YAML=E}),Inc=Qee((e,t)=>{t.exports=fnc().YAML}),hnc=Qee(e=>{"use strict";var t=JJe(),r=ACe();e.findPair=t.findPair,e.parseMap=t.resolveMap,e.parseSeq=t.resolveSeq,e.stringifyNumber=t.stringifyNumber,e.stringifyString=t.stringifyString,e.toJSON=t.toJSON,e.Type=r.Type,e.YAMLError=r.YAMLError,e.YAMLReferenceError=r.YAMLReferenceError,e.YAMLSemanticError=r.YAMLSemanticError,e.YAMLSyntaxError=r.YAMLSyntaxError,e.YAMLWarning=r.YAMLWarning}),ywi={};cwi(ywi,{languages:()=>Ywi,options:()=>Qwi,parsers:()=>ikr,printers:()=>sTi});var mnc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},FDr=mnc,bwi="string",Ewi="array",Swi="cursor",vwi="indent",jDr="align",Bwi="trim",zDr="group",qDr="fill",$Dr="if-break",wwi="indent-if-break",ekr="line-suffix",Twi="line-suffix-boundary",sDe="line",Rwi="label",tkr="break-parent",Nwi=new Set([Swi,vwi,jDr,Bwi,zDr,qDr,$Dr,wwi,ekr,Twi,sDe,Rwi,tkr]),Cnc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},gH=Cnc;function _nc(e){if(typeof e=="string")return bwi;if(Array.isArray(e))return Ewi;if(!e)return;let{type:t}=e;if(Nwi.has(t))return t}var Dwi=_nc,ync=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function bnc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(Dwi(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=ync([...Nwi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var Enc=class extends Error{name="InvalidDocError";constructor(e){super(bnc(e)),this.doc=e}},Snc=Enc;function vnc(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Dwi(o)){case Ewi:return t(o.map(n));case qDr:return t({...o,parts:o.parts.map(n)});case $Dr:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case zDr:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case jDr:case vwi:case wwi:case Rwi:case ekr:return t({...o,contents:n(o.contents)});case bwi:case Swi:case Bwi:case Twi:case sDe:case tkr:return t(o);default:throw new Snc(o)}}}function Bnc(e,t=YDr){return vnc(e,r=>typeof r=="string"?TV(t,r.split(` -`)):r)}var rkr=()=>{},iDe=rkr,kwi=rkr,wnc=rkr;function NEt(e,t){return iDe(t),{type:jDr,contents:t,n:e}}function BEt(e,t={}){return iDe(e),kwi(t.expandedStates,!0),{type:zDr,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function zBi(e){return NEt(Number.NEGATIVE_INFINITY,e)}function Tnc(e){return NEt({type:"root"},e)}function Rnc(e){return NEt(-1,e)}function qBi(e,t){return BEt(e[0],{...t,expandedStates:e})}function xwi(e){return wnc(e),{type:qDr,parts:e}}function HDr(e,t="",r={}){return iDe(e),t!==""&&iDe(t),{type:$Dr,breakContents:e,flatContents:t,groupId:r.groupId}}function Nnc(e){return iDe(e),{type:ekr,contents:e}}var nkr={type:tkr},Dnc={type:sDe,hard:!0},knc={type:sDe,hard:!0,literal:!0},UJe={type:sDe},Gwi={type:sDe,soft:!0},X_=[Dnc,nkr],YDr=[knc,nkr];function TV(e,t){iDe(e),kwi(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{"use strict";var t=mnc(),r=Cnc(),n=Rwi(),a=dCe(),o=Bwi();KJe();function l(N,B=!0,F){F===void 0&&typeof B=="string"&&(F=B,B=!0);let Q=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new n.Schema(Q).createNode(N,B,F)}var A=class extends r.Document{constructor(N){super(Object.assign({},r.defaultOptions,N))}};function f(N,B){let F=[],Q;for(let J of t.parse(N)){let ae=new A(B);ae.parse(J,Q),F.push(ae),Q=ae}return F}function I(N,B){let F=t.parse(N),Q=new A(B).parse(F[0]);if(F.length>1){let J="Source contains multiple documents; please use YAML.parseAllDocuments()";Q.errors.unshift(new a.YAMLSemanticError(F[1],J))}return Q}function C(N,B){let F=I(N,B);if(F.warnings.forEach(Q=>o.warn(Q)),F.errors.length>0)throw F.errors[0];return F.toJSON()}function b(N,B){let F=new A(B);return F.contents=N,String(F)}var E={createNode:l,defaultOptions:r.defaultOptions,Document:A,parse:C,parseAllDocuments:f,parseCST:t.parse,parseDocument:I,scalarOptions:r.scalarOptions,stringify:b};e.YAML=E}),ync=Xee((e,t)=>{t.exports=_nc().YAML}),bnc=Xee(e=>{"use strict";var t=KJe(),r=dCe();e.findPair=t.findPair,e.parseMap=t.resolveMap,e.parseSeq=t.resolveSeq,e.stringifyNumber=t.stringifyNumber,e.stringifyString=t.stringifyString,e.toJSON=t.toJSON,e.Type=r.Type,e.YAMLError=r.YAMLError,e.YAMLReferenceError=r.YAMLReferenceError,e.YAMLSemanticError=r.YAMLSemanticError,e.YAMLSyntaxError=r.YAMLSyntaxError,e.YAMLWarning=r.YAMLWarning}),kwi={};Cwi(kwi,{languages:()=>tTi,options:()=>rTi,parsers:()=>okr,printers:()=>ITi});var Enc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},LDr=Enc,xwi="string",Gwi="array",Fwi="cursor",Zwi="indent",qDr="align",Lwi="trim",$Dr="group",ekr="fill",tkr="if-break",Vwi="indent-if-break",rkr="line-suffix",Wwi="line-suffix-boundary",nDe="line",Owi="label",nkr="break-parent",Pwi=new Set([Fwi,Zwi,qDr,Lwi,$Dr,ekr,tkr,Vwi,rkr,Wwi,nDe,Owi,nkr]),Snc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},AH=Snc;function vnc(e){if(typeof e=="string")return xwi;if(Array.isArray(e))return Gwi;if(!e)return;let{type:t}=e;if(Pwi.has(t))return t}var Mwi=vnc,Bnc=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function wnc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Mwi(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=Bnc([...Pwi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var Tnc=class extends Error{name="InvalidDocError";constructor(e){super(wnc(e)),this.doc=e}},Rnc=Tnc;function Nnc(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Mwi(o)){case Gwi:return t(o.map(n));case ekr:return t({...o,parts:o.parts.map(n)});case tkr:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case $Dr:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case qDr:case Zwi:case Vwi:case Owi:case rkr:return t({...o,contents:n(o.contents)});case xwi:case Fwi:case Lwi:case Wwi:case nDe:case nkr:return t(o);default:throw new Rnc(o)}}}function Dnc(e,t=XDr){return Nnc(e,r=>typeof r=="string"?RV(t,r.split(` +`)):r)}var ikr=()=>{},rDe=ikr,Hwi=ikr,knc=ikr;function TEt(e,t){return rDe(t),{type:qDr,contents:t,n:e}}function SEt(e,t={}){return rDe(e),Hwi(t.expandedStates,!0),{type:$Dr,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function cwi(e){return TEt(Number.NEGATIVE_INFINITY,e)}function xnc(e){return TEt({type:"root"},e)}function Gnc(e){return TEt(-1,e)}function lwi(e,t){return SEt(e[0],{...t,expandedStates:e})}function Ywi(e){return knc(e),{type:ekr,parts:e}}function QDr(e,t="",r={}){return rDe(e),t!==""&&rDe(t),{type:tkr,breakContents:e,flatContents:t,groupId:r.groupId}}function Fnc(e){return rDe(e),{type:rkr,contents:e}}var skr={type:nkr},Znc={type:nDe,hard:!0},Lnc={type:nDe,hard:!0,literal:!0},jJe={type:nDe},Qwi={type:nDe,soft:!0},J_=[Znc,skr],XDr=[Lnc,skr];function RV(e,t){rDe(e),Hwi(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{let a=await n(t.originalText,{parser:"json"});return a?[a,X_]:void 0}}Fwi.getVisitorKeys=()=>[];var Vnc=Fwi,HJe=null;function XJe(e){if(HJe!==null&&typeof HJe.property){let t=HJe;return HJe=XJe.prototype=null,t}return HJe=XJe.prototype=e??Object.create(null),new XJe}var Wnc=10;for(let e=0;e<=Wnc;e++)XJe();function Onc(e){return XJe(e)}function Pnc(e,t="type"){Onc(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Mnc=Pnc,Hnc=Object.fromEntries(Object.entries({root:["children"],document:["head","body","children"],documentHead:["children"],documentBody:["children"],directive:[],alias:[],blockLiteral:[],blockFolded:["children"],plain:["children"],quoteSingle:[],quoteDouble:[],mapping:["children"],mappingItem:["key","value","children"],mappingKey:["content","children"],mappingValue:["content","children"],sequence:["children"],sequenceItem:["content","children"],flowMapping:["children"],flowMappingItem:["key","value","children"],flowSequence:["children"],flowSequenceItem:["content","children"],comment:[],tag:[],anchor:[]}).map(([e,t])=>[e,[...t,"anchor","tag","indicatorComment","leadingComments","middleComments","trailingComment","endComments"]])),Ync=Hnc,Qnc=Mnc(Ync),Xnc=Qnc;function wEt(e){return e.position.start.offset}function Jnc(e){return e.position.end.offset}function Unc(e){return/^\s*@(?:prettier|format)\s*$/u.test(e)}function Knc(e){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/u.test(e)}function jnc(e){return`# @format - -${e}`}function znc(e){return Array.isArray(e)&&e.length>0}var KJe=znc;function Yee(e,t){return typeof e?.type=="string"&&(!t||t.includes(e.type))}function Zwi(e,t,r){return t("children"in e?{...e,children:e.children.map(n=>Zwi(n,t,e))}:e,r)}function YJe(e,t,r){Object.defineProperty(e,t,{get:r,enumerable:!1})}function qnc(e,t){let r=0,n=t.length;for(let a=e.position.end.offset-1;ao===0&&o===l.length-1?a:o!==0&&o!==l.length-1?a.trim():o===0?a.trimEnd():a.trimStart());return r.proseWrap==="preserve"?n.map(a=>a.length===0?[]:[a]):n.map(a=>a.length===0?[]:Wwi(a)).reduce((a,o,l)=>l!==0&&n[l-1].length>0&&o.length>0&&!(e==="quoteDouble"&&gH(!1,gH(!1,a,-1),-1).endsWith("\\"))?[...a.slice(0,-1),[...gH(!1,a,-1),...o]]:[...a,o],[]).map(a=>r.proseWrap==="never"?[a.join(" ")]:a)}function ric(e,{parentIndent:t,isLastDescendant:r,options:n}){let a=e.position.start.line===e.position.end.line?"":n.originalText.slice(e.position.start.offset,e.position.end.offset).match(/^[^\n]*\n(.*)$/su)[1],o;if(e.indent===null){let f=a.match(/^(? *)[^\n\r ]/mu);o=f?f.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else o=e.indent-1+t;let l=a.split(` -`).map(f=>f.slice(o));if(n.proseWrap==="preserve"||e.type==="blockLiteral")return A(l.map(f=>f.length===0?[]:[f]));return A(l.map(f=>f.length===0?[]:Wwi(f)).reduce((f,I,C)=>C!==0&&l[C-1].length>0&&I.length>0&&!/^\s/u.test(I[0])&&!/^\s|\s$/u.test(gH(!1,f,-1))?[...f.slice(0,-1),[...gH(!1,f,-1),...I]]:[...f,I],[]).map(f=>f.reduce((I,C)=>I.length>0&&/\s$/u.test(gH(!1,I,-1))?[...I.slice(0,-1),gH(!1,I,-1)+" "+C]:[...I,C],[])).map(f=>n.proseWrap==="never"?[f.join(" ")]:f));function A(f){if(e.chomping==="keep")return gH(!1,f,-1).length===0?f.slice(0,-1):f;let I=0;for(let C=f.length-1;C>=0&&f[C].length===0;C--)I++;return I===0?f:I>=2&&!r?f.slice(0,-(I-1)):f.slice(0,-I)}}function XDr(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}var ZDr=new WeakMap;function Owi(e,t){let{node:r,root:n}=e,a;return ZDr.has(n)?a=ZDr.get(n):(a=new Set,ZDr.set(n,a)),!a.has(r.position.end.line)&&(a.add(r.position.end.line),qnc(r,t)&&!Pwi(e.parent))?Gwi:""}function Pwi(e){return h4(e)&&!Yee(e,["documentHead","documentBody","flowMapping","flowSequence"])}function uH(e,t){return NEt(" ".repeat(e),t)}function nic(e,t,r){let{node:n}=e,a=e.ancestors.filter(I=>I.type==="sequence"||I.type==="mapping").length,o=Lwi(e),l=[n.type==="blockFolded"?">":"|"];n.indent!==null&&l.push(n.indent.toString()),n.chomping!=="clip"&&l.push(n.chomping==="keep"?"+":"-"),Vwi(n)&&l.push(" ",t("indicatorComment"));let A=ric(n,{parentIndent:a,isLastDescendant:o,options:r}),f=[];for(let[I,C]of A.entries())I===0&&f.push(X_),f.push(xwi(TV(UJe,C))),I!==A.length-1?f.push(C.length===0?X_:Tnc(YDr)):n.chomping==="keep"&&o&&f.push(zBi(C.length===0?X_:YDr));return n.indent===null?l.push(Rnc(uH(r.tabWidth,f))):l.push(zBi(uH(n.indent-1+a,f))),l}var iic=nic;function rwi(e,t,r){let{node:n}=e,a=n.type==="flowMapping",o=a?"{":"[",l=a?"}":"]",A=Gwi;a&&n.children.length>0&&r.bracketSpacing&&(A=UJe);let f=gH(!1,n.children,-1),I=f?.type==="flowMappingItem"&&TEt(f.key)&&TEt(f.value);return[o,uH(r.tabWidth,[A,sic(e,t,r),r.trailingComma==="none"?"":HDr(","),h4(n)?[X_,TV(X_,e.map(t,"endComments"))]:""]),I?"":A,l]}function sic(e,t,r){return e.map(({isLast:n,node:a,next:o})=>[t(),n?"":[",",UJe,a.position.start.line!==o.position.start.line?Owi(e,r.originalText):""]],"children")}function oic(e,t,r){var n;let{node:a,parent:o}=e,{key:l,value:A}=a,f=TEt(l),I=TEt(A);if(f&&I)return": ";let C=t("key"),b=aic(a)?" ":"";if(I)return a.type==="flowMappingItem"&&o.type==="flowMapping"?C:a.type==="mappingItem"&&LDr(l.content,r)&&!I4(l.content)&&((n=o.tag)==null?void 0:n.value)!=="tag:yaml.org,2002:set"?[C,b,":"]:["? ",uH(2,C)];let E=t("value");if(f)return[": ",uH(2,E)];if(Pce(A)||!XDr(l.content))return["? ",uH(2,C),X_,...e.map(()=>[t(),X_],"value","leadingComments"),": ",uH(2,E)];if(cic(l.content)&&!Pce(l.content)&&!rDe(l.content)&&!I4(l.content)&&!h4(l)&&!Pce(A.content)&&!rDe(A.content)&&!h4(A)&&LDr(A.content,r))return[C,b,": ",E];let N=Symbol("mappingKey"),B=BEt([HDr("? "),BEt(uH(2,C),{id:N})]),F=[X_,": ",uH(2,E)],Q=[b,":"];Pce(A.content)||h4(A)&&A.content&&!Yee(A.content,["mapping","sequence"])||o.type==="mapping"&&I4(l.content)&&XDr(A.content)||Yee(A.content,["mapping","sequence"])&&A.content.tag===null&&A.content.anchor===null?Q.push(X_):A.content?Q.push(UJe):I4(A)&&Q.push(" "),Q.push(E);let J=uH(r.tabWidth,Q);return LDr(l.content,r)&&!Pce(l.content)&&!rDe(l.content)&&!h4(l)?qBi([[C,J]]):qBi([[B,HDr(F,J,{groupId:N})]])}function LDr(e,t){if(!e)return!0;switch(e.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(t.proseWrap==="preserve")return e.position.start.line===e.position.end.line;if(/\\$/mu.test(t.originalText.slice(e.position.start.offset,e.position.end.offset)))return!1;switch(t.proseWrap){case"never":return!e.value.includes(` -`);case"always":return!/[\n ]/u.test(e.value);default:return!1}}function aic(e){var t;return((t=e.key.content)==null?void 0:t.type)==="alias"}function cic(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":return e.position.start.line===e.position.end.line;case"alias":return!0;default:return!1}}var lic=oic;function uic(e){return Zwi(e,gic)}function gic(e){switch(e.type){case"document":YJe(e,"head",()=>e.children[0]),YJe(e,"body",()=>e.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":YJe(e,"content",()=>e.children[0]);break;case"mappingItem":case"flowMappingItem":YJe(e,"key",()=>e.children[0]),YJe(e,"value",()=>e.children[1]);break}return e}var Aic=uic;function dic(e,t,r){let{node:n}=e,a=[];n.type!=="mappingValue"&&Pce(n)&&a.push([TV(X_,e.map(r,"leadingComments")),X_]);let{tag:o,anchor:l}=n;o&&a.push(r("tag")),o&&l&&a.push(" "),l&&a.push(r("anchor"));let A="";return Yee(n,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!Lwi(e)&&(A=Owi(e,t.originalText)),(o||l)&&(Yee(n,["sequence","mapping"])&&!rDe(n)?a.push(X_):a.push(" ")),rDe(n)&&a.push([n.middleComments.length===1?"":X_,TV(X_,e.map(r,"middleComments")),X_]),$nc(e)?a.push(Bnc(t.originalText.slice(n.position.start.offset,n.position.end.offset).trimEnd())):a.push(BEt(pic(e,t,r))),I4(n)&&!Yee(n,["document","documentHead"])&&a.push(Nnc([n.type==="mappingValue"&&!n.content?"":" ",e.parent.type==="mappingKey"&&e.getParentNode(2).type==="mapping"&&XDr(n)?"":nkr,r("trailingComment")])),Pwi(n)&&a.push(uH(n.type==="sequenceItem"?2:0,[X_,TV(X_,e.map(({node:f})=>[Fnc(t.originalText,wEt(f))?X_:"",r()],"endComments"))])),a.push(A),a}function pic(e,t,r){let{node:n}=e;switch(n.type){case"root":{let a=[];e.each(({node:l,next:A,isFirst:f})=>{f||a.push(X_),a.push(r()),Mwi(l,A)?(a.push(X_,"..."),I4(l)&&a.push(" ",r("trailingComment"))):A&&!I4(A.head)&&a.push(X_,"---")},"children");let o=QDr(n);return(!Yee(o,["blockLiteral","blockFolded"])||o.chomping!=="keep")&&a.push(X_),a}case"document":{let a=[];return Iic(e,t)==="head"&&((n.head.children.length>0||n.head.endComments.length>0)&&a.push(r("head")),I4(n.head)?a.push(["---"," ",r(["head","trailingComment"])]):a.push("---")),fic(n)&&a.push(r("body")),TV(X_,a)}case"documentHead":return TV(X_,[...e.map(r,"children"),...e.map(r,"endComments")]);case"documentBody":{let{children:a,endComments:o}=n,l="";if(a.length>0&&o.length>0){let A=QDr(n);Yee(A,["blockFolded","blockLiteral"])?A.chomping!=="keep"&&(l=[X_,X_]):l=X_}return[TV(X_,e.map(r,"children")),l,TV(X_,e.map(r,"endComments"))]}case"directive":return["%",TV(" ",[n.name,...n.parameters])];case"comment":return["#",n.value];case"alias":return["*",n.value];case"tag":return t.originalText.slice(n.position.start.offset,n.position.end.offset);case"anchor":return["&",n.value];case"plain":return QJe(n.type,t.originalText.slice(n.position.start.offset,n.position.end.offset),t);case"quoteDouble":case"quoteSingle":{let a="'",o='"',l=t.originalText.slice(n.position.start.offset+1,n.position.end.offset-1);if(n.type==="quoteSingle"&&l.includes("\\")||n.type==="quoteDouble"&&/\\[^"]/u.test(l)){let f=n.type==="quoteDouble"?o:a;return[f,QJe(n.type,l,t),f]}if(l.includes(o))return[a,QJe(n.type,n.type==="quoteDouble"?FDr(!1,FDr(!1,l,String.raw`\"`,o),"'",a.repeat(2)):l,t),a];if(l.includes(a))return[o,QJe(n.type,n.type==="quoteSingle"?FDr(!1,l,"''",a):l,t),o];let A=t.singleQuote?a:o;return[A,QJe(n.type,l,t),A]}case"blockFolded":case"blockLiteral":return iic(e,r,t);case"mapping":case"sequence":return TV(X_,e.map(r,"children"));case"sequenceItem":return["- ",uH(2,n.content?r("content"):"")];case"mappingKey":case"mappingValue":return n.content?r("content"):"";case"mappingItem":case"flowMappingItem":return lic(e,r,t);case"flowMapping":return rwi(e,r,t);case"flowSequence":return rwi(e,r,t);case"flowSequenceItem":return r("content");default:throw new Lnc(n,"YAML")}}function fic(e){return e.body.children.length>0||h4(e.body)}function Mwi(e,t){return I4(e)||t&&(t.head.children.length>0||h4(t.head))}function Iic(e,t){let r=e.node;if(e.isFirst&&/---(?:\s|$)/u.test(t.originalText.slice(wEt(r),wEt(r)+4))||r.head.children.length>0||h4(r.head)||I4(r.head))return"head";let n=e.next;return Mwi(r,n)?!1:n?"root":!1}function QJe(e,t,r){let n=tic(e,t,r);return TV(X_,n.map(a=>xwi(TV(UJe,a))))}function Hwi(e,t){if(Yee(e))switch(e.type){case"comment":if(Unc(e.value))return null;break;case"quoteDouble":case"quoteSingle":t.type="quote";break}}Hwi.ignoredProperties=new Set(["position"]);var hic={preprocess:Aic,embed:Vnc,print:dic,massageAstNode:Hwi,insertPragma:jnc,getVisitorKeys:Xnc},mic=hic,Ywi=[{linguistLanguageId:407,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",".prettierrc",".stylelintrc",".lintstagedrc"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","dockercompose","github-actions-workflow","home-assistant"]}],VDr={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Cic={bracketSpacing:VDr.bracketSpacing,singleQuote:VDr.singleQuote,proseWrap:VDr.proseWrap},Qwi=Cic,ikr={};cwi(ikr,{yaml:()=>Vsc});var EEt=` -`,nwi="\r",_ic=function(){function e(t){this.length=t.length;for(var r=[0],n=0;nthis.length)return null;for(var r=0,n=this.offsets;n[r+1]<=t;)r++;var a=t-n[r];return{line:r,column:a}},e.prototype.indexForLocation=function(t){var r=t.line,n=t.column;return r<0||r>=this.offsets.length||n<0||n>this.lengthOfLine(r)?null:this.offsets[r]+n},e.prototype.lengthOfLine=function(t){var r=this.offsets[t],n=t===this.offsets.length-1?this.length:this.offsets[t+1];return n-r},e}();function vP(e,t=null){"children"in e&&e.children.forEach(r=>vP(r,e)),"anchor"in e&&e.anchor&&vP(e.anchor,e),"tag"in e&&e.tag&&vP(e.tag,e),"leadingComments"in e&&e.leadingComments.forEach(r=>vP(r,e)),"middleComments"in e&&e.middleComments.forEach(r=>vP(r,e)),"indicatorComment"in e&&e.indicatorComment&&vP(e.indicatorComment,e),"trailingComment"in e&&e.trailingComment&&vP(e.trailingComment,e),"endComments"in e&&e.endComments.forEach(r=>vP(r,e)),Object.defineProperty(e,"_parent",{value:t,enumerable:!1})}function REt(e){return`${e.line}:${e.column}`}function yic(e){vP(e);let t=bic(e),r=e.children.slice();e.comments.sort((n,a)=>n.position.start.offset-a.position.end.offset).filter(n=>!n._parent).forEach(n=>{for(;r.length>1&&n.position.start.line>r[0].position.end.line;)r.shift();Eic(n,t,r[0])})}function bic(e){let t=Array.from(new Array(e.position.end.line),()=>({}));for(let r of e.comments)t[r.position.start.line-1].comment=r;return Xwi(t,e),t}function Xwi(e,t){if(t.position.start.offset!==t.position.end.offset){if("leadingComments"in t){let{start:r}=t.position,{leadingAttachableNode:n}=e[r.line-1];(!n||r.column1&&t.type!=="document"&&t.type!=="documentHead"){let{end:r}=t.position,{trailingAttachableNode:n}=e[r.line-1];(!n||r.column>=n.position.end.column)&&(e[r.line-1].trailingAttachableNode=t)}if(t.type!=="root"&&t.type!=="document"&&t.type!=="documentHead"&&t.type!=="documentBody"){let{start:r,end:n}=t.position,a=[n.line].concat(r.line===n.line?[]:r.line);for(let o of a){let l=e[o-1].trailingNode;(!l||n.column>=l.position.end.column)&&(e[o-1].trailingNode=t)}}"children"in t&&t.children.forEach(r=>{Xwi(e,r)})}}function Eic(e,t,r){let n=e.position.start.line,{trailingAttachableNode:a}=t[n-1];if(a){if(a.trailingComment)throw new Error(`Unexpected multiple trailing comment at ${REt(e.position.start)}`);vP(e,a),a.trailingComment=e;return}for(let l=n;l>=r.position.start.line;l--){let{trailingNode:A}=t[l-1],f;if(A)f=A;else if(l!==n&&t[l-1].comment)f=t[l-1].comment._parent;else continue;if((f.type==="sequence"||f.type==="mapping")&&(f=f.children[0]),f.type==="mappingItem"){let[I,C]=f.children;f=Jwi(I)?I:C}for(;;){if(Sic(f,e)){vP(e,f),f.endComments.push(e);return}if(!f._parent)break;f=f._parent}break}for(let l=n+1;l<=r.position.end.line;l++){let{leadingAttachableNode:A}=t[l-1];if(A){vP(e,A),A.leadingComments.push(e);return}}let o=r.children[1];vP(e,o),o.endComments.push(e)}function Sic(e,t){if(e.position.start.offsett.position.end.offset)switch(e.type){case"flowMapping":case"flowSequence":return e.children.length===0||t.position.start.line>e.children[e.children.length-1].position.end.line}if(t.position.end.offsete.position.start.column;case"mappingKey":case"mappingValue":return t.position.start.column>e._parent.position.start.column&&(e.children.length===0||e.children.length===1&&e.children[0].type!=="blockFolded"&&e.children[0].type!=="blockLiteral")&&(e.type==="mappingValue"||Jwi(e));default:return!1}}function Jwi(e){return e.position.start!==e.position.end&&(e.children.length===0||e.position.start.offset!==e.children[0].position.start.offset)}function cw(e,t){return{type:e,position:t}}function vic(e,t,r){return{...cw("root",e),children:t,comments:r}}function vEt(e){switch(e.type){case"DOCUMENT":for(let t=e.contents.length-1;t>=0;t--)e.contents[t].type==="BLANK_LINE"?e.contents.splice(t,1):vEt(e.contents[t]);for(let t=e.directives.length-1;t>=0;t--)e.directives[t].type==="BLANK_LINE"&&e.directives.splice(t,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];"char"in r||(r.type==="BLANK_LINE"?e.items.splice(t,1):vEt(r))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":e.node&&vEt(e.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(e.type)}`)}}function oDe(){return{leadingComments:[]}}function kEt(e=null){return{trailingComment:e}}function dCe(){return{...oDe(),...kEt()}}function Bic(e,t,r){return{...cw("alias",e),...dCe(),...t,value:r}}function wic(e,t){let r=e.cstNode;return Bic(t.transformRange({origStart:r.valueRange.origStart-1,origEnd:r.valueRange.origEnd}),t.transformContent(e),r.rawValue)}function Tic(e){return{...e,type:"blockFolded"}}function Ric(e,t,r,n,a,o){return{...cw("blockValue",e),...oDe(),...t,chomping:r,indent:n,value:a,indicatorComment:o}}var nDe;(function(e){e.Tag="!",e.Anchor="&",e.Comment="#"})(nDe||(nDe={}));function Nic(e,t){return{...cw("anchor",e),value:t}}function skr(e,t){return{...cw("comment",e),value:t}}function Dic(e,t,r){return{anchor:t,tag:e,middleComments:r}}function kic(e,t){return{...cw("tag",e),value:t}}function Uwi(e,t,r=()=>!1){let n=e.cstNode,a=[],o=null,l=null,A=null;for(let f of n.props){let I=t.text[f.origStart];switch(I){case nDe.Tag:o=o||f,l=kic(t.transformRange(f),e.tag);break;case nDe.Anchor:o=o||f,A=Nic(t.transformRange(f),n.anchor);break;case nDe.Comment:{let C=skr(t.transformRange(f),t.text.slice(f.origStart+1,f.origEnd));t.comments.push(C),!r(C)&&o&&o.origEnd<=f.origStart&&f.origEnd<=n.valueRange.origStart&&a.push(C);break}default:throw new Error(`Unexpected leading character ${JSON.stringify(I)}`)}}return Dic(l,A,a)}var JDr;(function(e){e.CLIP="clip",e.STRIP="strip",e.KEEP="keep"})(JDr||(JDr={}));function Kwi(e,t){let r=e.cstNode,n=1,a=r.chomping==="CLIP"?0:1,o=r.header.origEnd-r.header.origStart-n-a!==0,l=t.transformRange({origStart:r.header.origStart,origEnd:r.valueRange.origEnd}),A=null,f=Uwi(e,t,I=>{if(!(l.start.offset=0;f--){let I=e.contents[f];if(I.type==="COMMENT"){let C=t.transformNode(I);r&&r.line===C.position.start.line?l.unshift(C):A?n.unshift(C):C.position.start.offset>=e.valueRange.origEnd?o.unshift(C):n.unshift(C)}else A=!0}if(o.length>1)throw new Error(`Unexpected multiple document trailing comments at ${REt(o[1].position.start)}`);if(l.length>1)throw new Error(`Unexpected multiple documentHead trailing comments at ${REt(l[1].position.start)}`);return{comments:n,endComments:a,documentTrailingComment:Mce(o)||null,documentHeadTrailingComment:Mce(l)||null}}function Hic(e,t,r){let n=jwi(r.text.slice(e.valueRange.origEnd),/^\.\.\./),a=n===-1?e.valueRange.origEnd:Math.max(0,e.valueRange.origEnd-1);r.text[a-1]==="\r"&&a--;let o=r.transformRange({origStart:t!==null?t.position.start.offset:a,origEnd:a}),l=n===-1?o.end:r.transformOffset(e.valueRange.origEnd+3);return{position:o,documentEndPoint:l}}function Yic(e,t,r,n){return{...cw("documentHead",e),...pCe(r),...kEt(n),children:t}}function Qic(e,t){let r=e.cstNode,{directives:n,comments:a,endComments:o}=Xic(r,t),{position:l,endMarkerPoint:A}=Jic(r,n,t);return t.comments.push(...a,...o),{createDocumentHeadWithTrailingComment:f=>(f&&t.comments.push(f),Yic(l,n,o,f)),documentHeadEndMarkerPoint:A}}function Xic(e,t){let r=[],n=[],a=[],o=!1;for(let l=e.directives.length-1;l>=0;l--){let A=t.transformNode(e.directives[l]);A.type==="comment"?o?n.unshift(A):a.unshift(A):(o=!0,r.unshift(A))}return{directives:r,comments:n,endComments:a}}function Jic(e,t,r){let n=jwi(r.text.slice(0,e.valueRange.origStart),/---\s*$/);n>0&&!/[\r\n]/.test(r.text[n-1])&&(n=-1);let a=n===-1?{origStart:e.valueRange.origStart,origEnd:e.valueRange.origStart}:{origStart:n,origEnd:n+3};return t.length!==0&&(a.origStart=t[0].position.start.offset),{position:r.transformRange(a),endMarkerPoint:n===-1?null:r.transformOffset(n)}}function Uic(e,t){let{createDocumentHeadWithTrailingComment:r,documentHeadEndMarkerPoint:n}=Qic(e,t),{documentBody:a,documentEndPoint:o,documentTrailingComment:l,documentHeadTrailingComment:A}=Pic(e,t,n),f=r(A);return l&&t.comments.push(l),Wic(gCe(f.position.start,o),f,a,l)}function zwi(e,t,r){return{...cw("flowCollection",e),...dCe(),...pCe(),...t,children:r}}function Kic(e,t,r){return{...zwi(e,t,r),type:"flowMapping"}}function qwi(e,t,r){return{...cw("flowMappingItem",e),...oDe(),children:[t,r]}}function xEt(e,t){let r=[];for(let n of e)n&&"type"in n&&n.type==="COMMENT"?t.comments.push(t.transformNode(n)):r.push(n);return r}function $wi(e){let[t,r]=["?",":"].map(n=>{let a=e.find(o=>"char"in o&&o.char===n);return a?{origStart:a.origOffset,origEnd:a.origOffset+1}:null});return{additionalKeyRange:t,additionalValueRange:r}}function eTi(e,t){let r=t;return n=>e.slice(r,r=n)}function tTi(e){let t=[],r=eTi(e,1),n=!1;for(let a=1;a{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=$wi(I);return akr(A,t,qwi,C,b)}),o=r[0],l=Mce(r);return Kic(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function zic(e,t,r){return{...zwi(e,t,r),type:"flowSequence"}}function qic(e,t){return{...cw("flowSequenceItem",e),children:[t]}}function $ic(e,t){let r=xEt(e.cstNode.items,t),n=tTi(r),a=e.items.map((A,f)=>{if(A.type!=="PAIR"){let I=t.transformNode(A);return qic(gCe(I.position.start,I.position.end),I)}else{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=$wi(I);return akr(A,t,qwi,C,b)}}),o=r[0],l=Mce(r);return zic(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function esc(e,t,r){return{...cw("mapping",e),...oDe(),...t,children:r}}function tsc(e,t,r){return{...cw("mappingItem",e),...oDe(),children:[t,r]}}function rsc(e,t){let r=e.cstNode;r.items.filter(l=>l.type==="MAP_KEY"||l.type==="MAP_VALUE").forEach(l=>okr(l,t));let n=xEt(r.items,t),a=nsc(n),o=e.items.map((l,A)=>{let f=a[A],[I,C]=f[0].type==="MAP_VALUE"?[null,f[0].range]:[f[0].range,f.length===1?null:f[1].range];return akr(l,t,tsc,I,C)});return esc(gCe(o[0].position.start,Mce(o).position.end),t.transformContent(e),o)}function nsc(e){let t=[],r=eTi(e,0),n=!1;for(let a=0;a=0;n--)if(r.test(e[n]))return n;return-1}function osc(e,t){let r=e.cstNode;return isc(t.transformRange({origStart:r.valueRange.origStart,origEnd:ssc(t.text,r.valueRange.origEnd-1,/\S/)+1}),t.transformContent(e),r.strValue)}function asc(e){return{...e,type:"quoteDouble"}}function csc(e,t,r){return{...cw("quoteValue",e),...t,...dCe(),value:r}}function rTi(e,t){let r=e.cstNode;return csc(t.transformRange(r.valueRange),t.transformContent(e),r.strValue)}function lsc(e,t){return asc(rTi(e,t))}function usc(e){return{...e,type:"quoteSingle"}}function gsc(e,t){return usc(rTi(e,t))}function Asc(e,t,r){return{...cw("sequence",e),...oDe(),...pCe(),...t,children:r}}function dsc(e,t){return{...cw("sequenceItem",e),...dCe(),...pCe(),children:t?[t]:[]}}function psc(e,t){let r=xEt(e.cstNode.items,t).map((n,a)=>{okr(n,t);let o=t.transformNode(e.items[a]);return dsc(gCe(t.transformOffset(n.valueRange.origStart),o===null?t.transformOffset(n.valueRange.origStart+1):o.position.end),o)});return Asc(gCe(r[0].position.start,Mce(r).position.end),t.transformContent(e),r)}function fsc(e,t){if(e===null||e.type===void 0&&e.value===null)return null;switch(e.type){case"ALIAS":return wic(e,t);case"BLOCK_FOLDED":return xic(e,t);case"BLOCK_LITERAL":return Fic(e,t);case"COMMENT":return Zic(e,t);case"DIRECTIVE":return Vic(e,t);case"DOCUMENT":return Uic(e,t);case"FLOW_MAP":return jic(e,t);case"FLOW_SEQ":return $ic(e,t);case"MAP":return rsc(e,t);case"PLAIN":return osc(e,t);case"QUOTE_DOUBLE":return lsc(e,t);case"QUOTE_SINGLE":return gsc(e,t);case"SEQ":return psc(e,t);default:throw new Error(`Unexpected node type ${e.type}`)}}function Isc(e,t,r){let n=new SyntaxError(e);return n.name="YAMLSyntaxError",n.source=t,n.position=r,n}function hsc(e,t){let r=e.source.range||e.source.valueRange;return Isc(e.message,t.text,t.transformRange(r))}function msc(e,t,r){return{offset:e,line:t,column:r}}function Csc(e,t){e<0?e=0:e>t.text.length&&(e=t.text.length);let r=t.locator.locationForIndex(e);return msc(e,r.line+1,r.column+1)}function _sc(e,t){return gCe(t.transformOffset(e.origStart),t.transformOffset(e.origEnd))}function ysc(e){if(!e.setOrigRanges()){let t=r=>{if(bsc(r))return r.origStart=r.start,r.origEnd=r.end,!0;if(Esc(r))return r.origOffset=r.offset,!0};e.forEach(r=>UDr(r,t))}}function UDr(e,t){if(!(!e||typeof e!="object")&&t(e)!==!0)for(let r of Object.keys(e)){if(r==="context"||r==="error")continue;let n=e[r];Array.isArray(n)?n.forEach(a=>UDr(a,t)):UDr(n,t)}}function bsc(e){return typeof e.start=="number"}function Esc(e){return typeof e.offset=="number"}function nTi(e){if("children"in e){if(e.children.length===1){let t=e.children[0];if(t.type==="plain"&&t.tag===null&&t.anchor===null&&t.value==="")return e.children.splice(0,1),e}e.children.forEach(nTi)}return e}function awi(e,t,r,n){let a=t(e);return o=>{n(a,o)&&r(e,a=o)}}function iTi(e){if(e===null||!("children"in e))return;let t=e.children;if(t.forEach(iTi),e.type==="document"){let[o,l]=e.children;o.position.start.offset===o.position.end.offset?o.position.start=o.position.end=l.position.start:l.position.start.offset===l.position.end.offset&&(l.position.start=l.position.end=o.position.end)}let r=awi(e.position,Ssc,vsc,Tsc),n=awi(e.position,Bsc,wsc,Rsc);"endComments"in e&&e.endComments.length!==0&&(r(e.endComments[0].position.start),n(Mce(e.endComments).position.end));let a=t.filter(o=>o!==null);if(a.length!==0){let o=a[0],l=Mce(a);r(o.position.start),n(l.position.end),"leadingComments"in o&&o.leadingComments.length!==0&&r(o.leadingComments[0].position.start),"tag"in o&&o.tag&&r(o.tag.position.start),"anchor"in o&&o.anchor&&r(o.anchor.position.start),"trailingComment"in l&&l.trailingComment&&n(l.trailingComment.position.end)}}function Ssc(e){return e.start}function vsc(e,t){e.start=t}function Bsc(e){return e.end}function wsc(e,t){e.end=t}function Tsc(e,t){return t.offsete.offset}var Nsc=lwi(Inc(),1),AH=lwi(hnc(),1),Bwu=AH.default.findPair,wwu=AH.default.toJSON,Twu=AH.default.parseMap,Rwu=AH.default.parseSeq,Nwu=AH.default.stringifyNumber,Dwu=AH.default.stringifyString,kwu=AH.default.Type,xwu=AH.default.YAMLError,Gwu=AH.default.YAMLReferenceError,Dsc=AH.default.YAMLSemanticError,Fwu=AH.default.YAMLSyntaxError,Zwu=AH.default.YAMLWarning,{Document:ksc,parseCST:xsc}=Nsc.default;function Gsc(e){let t=xsc(e);ysc(t);let r=t.map(A=>new ksc({merge:!1,keepCstNodes:!0}).parse(A)),n=new _ic(e),a=[],o={text:e,locator:n,comments:a,transformOffset:A=>Csc(A,o),transformRange:A=>_sc(A,o),transformNode:A=>fsc(A,o),transformContent:A=>Uwi(A,o)};for(let A of r)for(let f of A.errors)if(!(f instanceof Dsc&&f.message==='Map keys must be unique; "<<" is repeated'))throw hsc(f,o);r.forEach(A=>vEt(A.cstNode));let l=vic(o.transformRange({origStart:0,origEnd:o.text.length}),r.map(o.transformNode),a);return yic(l),iTi(l),nTi(l),l}function Fsc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Zsc=Fsc;function Lsc(e){try{let t=Gsc(e);return delete t.comments,t}catch(t){throw t!=null&&t.position?Zsc(t.message,{loc:t.position,cause:t}):t}}var Vsc={astFormat:"yaml",parse:Lsc,hasPragma:Knc,locStart:wEt,locEnd:Jnc},sTi={yaml:mic},Wsc=ywi;var Osc=Object.create,Bkr=Object.defineProperty,Psc=Object.getOwnPropertyDescriptor,Msc=Object.getOwnPropertyNames,Hsc=Object.getPrototypeOf,Ysc=Object.prototype.hasOwnProperty,LTi=e=>{throw TypeError(e)},VTi=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),wkr=(e,t)=>{for(var r in t)Bkr(e,r,{get:t[r],enumerable:!0})},Qsc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Msc(t))!Ysc.call(e,a)&&a!==r&&Bkr(e,a,{get:()=>t[a],enumerable:!(n=Psc(t,a))||n.enumerable});return e},HEt=(e,t,r)=>(r=e!=null?Osc(Hsc(e)):{},Qsc(t||!e||!e.__esModule?Bkr(r,"default",{value:e,enumerable:!0}):r,e)),Xsc=(e,t,r)=>t.has(e)||LTi("Cannot "+r),Jsc=(e,t,r)=>t.has(e)?LTi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),zJe=(e,t,r)=>(Xsc(e,t,"access private method"),r),Tkr=VTi((e,t)=>{"use strict";var r=new Proxy(String,{get:()=>r});t.exports=r}),Usc=VTi(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:()=>o=>o})}var r=/\r\n|[\n\r\u2028\u2029]/;function n(o,l,A){let f=Object.assign({column:0,line:-1},o.start),I=Object.assign({},f,o.end),{linesAbove:C=2,linesBelow:b=3}=A||{},E=f.line,N=f.column,B=I.line,F=I.column,Q=Math.max(E-(C+1),0),J=Math.min(l.length,B+b);E===-1&&(Q=0),B===-1&&(J=l.length);let ae=B-E,ne={};if(ae)for(let ce=0;ce<=ae;ce++){let fe=ce+E;if(!N)ne[fe]=!0;else if(ce===0){let ue=l[fe-1].length;ne[fe]=[N,ue-N+1]}else if(ce===ae)ne[fe]=[0,F];else{let ue=l[fe-ce].length;ne[fe]=[0,ue]}}else N===F?N?ne[E]=[N,0]:ne[E]=!0:ne[E]=[N,F-N];return{start:Q,end:J,markerLines:ne}}function a(o,l,A={}){let f=t(!1),I=o.split(r),{start:C,end:b,markerLines:E}=n(l,I,A),N=l.start&&typeof l.start.column=="number",B=String(b).length,F=o.split(r,b).slice(C,b).map((Q,J)=>{let ae=C+1+J,ne=` ${` ${ae}`.slice(-B)} |`,ce=E[ae],fe=!E[ae+1];if(ce){let ue="";if(Array.isArray(ce)){let de=Q.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var gwi=Vnc;function Wnc(e,t){let r=t-1;r=uwi(e,r,{backwards:!0}),r=gwi(e,r,{backwards:!0}),r=uwi(e,r,{backwards:!0});let n=gwi(e,r,{backwards:!0});return r!==n}var Onc=Wnc,Pnc=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Mnc=Pnc;function Xwi(e,t){let{node:r}=e;if(r.type==="root"&&t.filepath&&/(?:[/\\]|^)\.(?:prettier|stylelint|lintstaged)rc$/u.test(t.filepath))return async n=>{let a=await n(t.originalText,{parser:"json"});return a?[a,J_]:void 0}}Xwi.getVisitorKeys=()=>[];var Hnc=Xwi,QJe=null;function UJe(e){if(QJe!==null&&typeof QJe.property){let t=QJe;return QJe=UJe.prototype=null,t}return QJe=UJe.prototype=e??Object.create(null),new UJe}var Ync=10;for(let e=0;e<=Ync;e++)UJe();function Qnc(e){return UJe(e)}function Xnc(e,t="type"){Qnc(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Jnc=Xnc,Unc=Object.fromEntries(Object.entries({root:["children"],document:["head","body","children"],documentHead:["children"],documentBody:["children"],directive:[],alias:[],blockLiteral:[],blockFolded:["children"],plain:["children"],quoteSingle:[],quoteDouble:[],mapping:["children"],mappingItem:["key","value","children"],mappingKey:["content","children"],mappingValue:["content","children"],sequence:["children"],sequenceItem:["content","children"],flowMapping:["children"],flowMappingItem:["key","value","children"],flowSequence:["children"],flowSequenceItem:["content","children"],comment:[],tag:[],anchor:[]}).map(([e,t])=>[e,[...t,"anchor","tag","indicatorComment","leadingComments","middleComments","trailingComment","endComments"]])),Knc=Unc,jnc=Jnc(Knc),znc=jnc;function vEt(e){return e.position.start.offset}function qnc(e){return e.position.end.offset}function $nc(e){return/^\s*@(?:prettier|format)\s*$/u.test(e)}function eic(e){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/u.test(e)}function tic(e){return`# @format + +${e}`}function ric(e){return Array.isArray(e)&&e.length>0}var zJe=ric;function Qee(e,t){return typeof e?.type=="string"&&(!t||t.includes(e.type))}function Jwi(e,t,r){return t("children"in e?{...e,children:e.children.map(n=>Jwi(n,t,e))}:e,r)}function XJe(e,t,r){Object.defineProperty(e,t,{get:r,enumerable:!1})}function nic(e,t){let r=0,n=t.length;for(let a=e.position.end.offset-1;ao===0&&o===l.length-1?a:o!==0&&o!==l.length-1?a.trim():o===0?a.trimEnd():a.trimStart());return r.proseWrap==="preserve"?n.map(a=>a.length===0?[]:[a]):n.map(a=>a.length===0?[]:jwi(a)).reduce((a,o,l)=>l!==0&&n[l-1].length>0&&o.length>0&&!(e==="quoteDouble"&&AH(!1,AH(!1,a,-1),-1).endsWith("\\"))?[...a.slice(0,-1),[...AH(!1,a,-1),...o]]:[...a,o],[]).map(a=>r.proseWrap==="never"?[a.join(" ")]:a)}function aic(e,{parentIndent:t,isLastDescendant:r,options:n}){let a=e.position.start.line===e.position.end.line?"":n.originalText.slice(e.position.start.offset,e.position.end.offset).match(/^[^\n]*\n(.*)$/su)[1],o;if(e.indent===null){let f=a.match(/^(? *)[^\n\r ]/mu);o=f?f.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else o=e.indent-1+t;let l=a.split(` +`).map(f=>f.slice(o));if(n.proseWrap==="preserve"||e.type==="blockLiteral")return A(l.map(f=>f.length===0?[]:[f]));return A(l.map(f=>f.length===0?[]:jwi(f)).reduce((f,I,C)=>C!==0&&l[C-1].length>0&&I.length>0&&!/^\s/u.test(I[0])&&!/^\s|\s$/u.test(AH(!1,f,-1))?[...f.slice(0,-1),[...AH(!1,f,-1),...I]]:[...f,I],[]).map(f=>f.reduce((I,C)=>I.length>0&&/\s$/u.test(AH(!1,I,-1))?[...I.slice(0,-1),AH(!1,I,-1)+" "+C]:[...I,C],[])).map(f=>n.proseWrap==="never"?[f.join(" ")]:f));function A(f){if(e.chomping==="keep")return AH(!1,f,-1).length===0?f.slice(0,-1):f;let I=0;for(let C=f.length-1;C>=0&&f[C].length===0;C--)I++;return I===0?f:I>=2&&!r?f.slice(0,-(I-1)):f.slice(0,-I)}}function UDr(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}var VDr=new WeakMap;function zwi(e,t){let{node:r,root:n}=e,a;return VDr.has(n)?a=VDr.get(n):(a=new Set,VDr.set(n,a)),!a.has(r.position.end.line)&&(a.add(r.position.end.line),nic(r,t)&&!qwi(e.parent))?Qwi:""}function qwi(e){return m4(e)&&!Qee(e,["documentHead","documentBody","flowMapping","flowSequence"])}function gH(e,t){return TEt(" ".repeat(e),t)}function cic(e,t,r){let{node:n}=e,a=e.ancestors.filter(I=>I.type==="sequence"||I.type==="mapping").length,o=Uwi(e),l=[n.type==="blockFolded"?">":"|"];n.indent!==null&&l.push(n.indent.toString()),n.chomping!=="clip"&&l.push(n.chomping==="keep"?"+":"-"),Kwi(n)&&l.push(" ",t("indicatorComment"));let A=aic(n,{parentIndent:a,isLastDescendant:o,options:r}),f=[];for(let[I,C]of A.entries())I===0&&f.push(J_),f.push(Ywi(RV(jJe,C))),I!==A.length-1?f.push(C.length===0?J_:xnc(XDr)):n.chomping==="keep"&&o&&f.push(cwi(C.length===0?J_:XDr));return n.indent===null?l.push(Gnc(gH(r.tabWidth,f))):l.push(cwi(gH(n.indent-1+a,f))),l}var lic=cic;function dwi(e,t,r){let{node:n}=e,a=n.type==="flowMapping",o=a?"{":"[",l=a?"}":"]",A=Qwi;a&&n.children.length>0&&r.bracketSpacing&&(A=jJe);let f=AH(!1,n.children,-1),I=f?.type==="flowMappingItem"&&BEt(f.key)&&BEt(f.value);return[o,gH(r.tabWidth,[A,uic(e,t,r),r.trailingComma==="none"?"":QDr(","),m4(n)?[J_,RV(J_,e.map(t,"endComments"))]:""]),I?"":A,l]}function uic(e,t,r){return e.map(({isLast:n,node:a,next:o})=>[t(),n?"":[",",jJe,a.position.start.line!==o.position.start.line?zwi(e,r.originalText):""]],"children")}function gic(e,t,r){var n;let{node:a,parent:o}=e,{key:l,value:A}=a,f=BEt(l),I=BEt(A);if(f&&I)return": ";let C=t("key"),b=Aic(a)?" ":"";if(I)return a.type==="flowMappingItem"&&o.type==="flowMapping"?C:a.type==="mappingItem"&&WDr(l.content,r)&&!h4(l.content)&&((n=o.tag)==null?void 0:n.value)!=="tag:yaml.org,2002:set"?[C,b,":"]:["? ",gH(2,C)];let E=t("value");if(f)return[": ",gH(2,E)];if(Mce(A)||!UDr(l.content))return["? ",gH(2,C),J_,...e.map(()=>[t(),J_],"value","leadingComments"),": ",gH(2,E)];if(dic(l.content)&&!Mce(l.content)&&!eDe(l.content)&&!h4(l.content)&&!m4(l)&&!Mce(A.content)&&!eDe(A.content)&&!m4(A)&&WDr(A.content,r))return[C,b,": ",E];let N=Symbol("mappingKey"),B=SEt([QDr("? "),SEt(gH(2,C),{id:N})]),F=[J_,": ",gH(2,E)],Q=[b,":"];Mce(A.content)||m4(A)&&A.content&&!Qee(A.content,["mapping","sequence"])||o.type==="mapping"&&h4(l.content)&&UDr(A.content)||Qee(A.content,["mapping","sequence"])&&A.content.tag===null&&A.content.anchor===null?Q.push(J_):A.content?Q.push(jJe):h4(A)&&Q.push(" "),Q.push(E);let J=gH(r.tabWidth,Q);return WDr(l.content,r)&&!Mce(l.content)&&!eDe(l.content)&&!m4(l)?lwi([[C,J]]):lwi([[B,QDr(F,J,{groupId:N})]])}function WDr(e,t){if(!e)return!0;switch(e.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(t.proseWrap==="preserve")return e.position.start.line===e.position.end.line;if(/\\$/mu.test(t.originalText.slice(e.position.start.offset,e.position.end.offset)))return!1;switch(t.proseWrap){case"never":return!e.value.includes(` +`);case"always":return!/[\n ]/u.test(e.value);default:return!1}}function Aic(e){var t;return((t=e.key.content)==null?void 0:t.type)==="alias"}function dic(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":return e.position.start.line===e.position.end.line;case"alias":return!0;default:return!1}}var pic=gic;function fic(e){return Jwi(e,Iic)}function Iic(e){switch(e.type){case"document":XJe(e,"head",()=>e.children[0]),XJe(e,"body",()=>e.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":XJe(e,"content",()=>e.children[0]);break;case"mappingItem":case"flowMappingItem":XJe(e,"key",()=>e.children[0]),XJe(e,"value",()=>e.children[1]);break}return e}var hic=fic;function mic(e,t,r){let{node:n}=e,a=[];n.type!=="mappingValue"&&Mce(n)&&a.push([RV(J_,e.map(r,"leadingComments")),J_]);let{tag:o,anchor:l}=n;o&&a.push(r("tag")),o&&l&&a.push(" "),l&&a.push(r("anchor"));let A="";return Qee(n,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!Uwi(e)&&(A=zwi(e,t.originalText)),(o||l)&&(Qee(n,["sequence","mapping"])&&!eDe(n)?a.push(J_):a.push(" ")),eDe(n)&&a.push([n.middleComments.length===1?"":J_,RV(J_,e.map(r,"middleComments")),J_]),iic(e)?a.push(Dnc(t.originalText.slice(n.position.start.offset,n.position.end.offset).trimEnd())):a.push(SEt(Cic(e,t,r))),h4(n)&&!Qee(n,["document","documentHead"])&&a.push(Fnc([n.type==="mappingValue"&&!n.content?"":" ",e.parent.type==="mappingKey"&&e.getParentNode(2).type==="mapping"&&UDr(n)?"":skr,r("trailingComment")])),qwi(n)&&a.push(gH(n.type==="sequenceItem"?2:0,[J_,RV(J_,e.map(({node:f})=>[Onc(t.originalText,vEt(f))?J_:"",r()],"endComments"))])),a.push(A),a}function Cic(e,t,r){let{node:n}=e;switch(n.type){case"root":{let a=[];e.each(({node:l,next:A,isFirst:f})=>{f||a.push(J_),a.push(r()),$wi(l,A)?(a.push(J_,"..."),h4(l)&&a.push(" ",r("trailingComment"))):A&&!h4(A.head)&&a.push(J_,"---")},"children");let o=JDr(n);return(!Qee(o,["blockLiteral","blockFolded"])||o.chomping!=="keep")&&a.push(J_),a}case"document":{let a=[];return yic(e,t)==="head"&&((n.head.children.length>0||n.head.endComments.length>0)&&a.push(r("head")),h4(n.head)?a.push(["---"," ",r(["head","trailingComment"])]):a.push("---")),_ic(n)&&a.push(r("body")),RV(J_,a)}case"documentHead":return RV(J_,[...e.map(r,"children"),...e.map(r,"endComments")]);case"documentBody":{let{children:a,endComments:o}=n,l="";if(a.length>0&&o.length>0){let A=JDr(n);Qee(A,["blockFolded","blockLiteral"])?A.chomping!=="keep"&&(l=[J_,J_]):l=J_}return[RV(J_,e.map(r,"children")),l,RV(J_,e.map(r,"endComments"))]}case"directive":return["%",RV(" ",[n.name,...n.parameters])];case"comment":return["#",n.value];case"alias":return["*",n.value];case"tag":return t.originalText.slice(n.position.start.offset,n.position.end.offset);case"anchor":return["&",n.value];case"plain":return JJe(n.type,t.originalText.slice(n.position.start.offset,n.position.end.offset),t);case"quoteDouble":case"quoteSingle":{let a="'",o='"',l=t.originalText.slice(n.position.start.offset+1,n.position.end.offset-1);if(n.type==="quoteSingle"&&l.includes("\\")||n.type==="quoteDouble"&&/\\[^"]/u.test(l)){let f=n.type==="quoteDouble"?o:a;return[f,JJe(n.type,l,t),f]}if(l.includes(o))return[a,JJe(n.type,n.type==="quoteDouble"?LDr(!1,LDr(!1,l,String.raw`\"`,o),"'",a.repeat(2)):l,t),a];if(l.includes(a))return[o,JJe(n.type,n.type==="quoteSingle"?LDr(!1,l,"''",a):l,t),o];let A=t.singleQuote?a:o;return[A,JJe(n.type,l,t),A]}case"blockFolded":case"blockLiteral":return lic(e,r,t);case"mapping":case"sequence":return RV(J_,e.map(r,"children"));case"sequenceItem":return["- ",gH(2,n.content?r("content"):"")];case"mappingKey":case"mappingValue":return n.content?r("content"):"";case"mappingItem":case"flowMappingItem":return pic(e,r,t);case"flowMapping":return dwi(e,r,t);case"flowSequence":return dwi(e,r,t);case"flowSequenceItem":return r("content");default:throw new Mnc(n,"YAML")}}function _ic(e){return e.body.children.length>0||m4(e.body)}function $wi(e,t){return h4(e)||t&&(t.head.children.length>0||m4(t.head))}function yic(e,t){let r=e.node;if(e.isFirst&&/---(?:\s|$)/u.test(t.originalText.slice(vEt(r),vEt(r)+4))||r.head.children.length>0||m4(r.head)||h4(r.head))return"head";let n=e.next;return $wi(r,n)?!1:n?"root":!1}function JJe(e,t,r){let n=oic(e,t,r);return RV(J_,n.map(a=>Ywi(RV(jJe,a))))}function eTi(e,t){if(Qee(e))switch(e.type){case"comment":if($nc(e.value))return null;break;case"quoteDouble":case"quoteSingle":t.type="quote";break}}eTi.ignoredProperties=new Set(["position"]);var bic={preprocess:hic,embed:Hnc,print:mic,massageAstNode:eTi,insertPragma:tic,getVisitorKeys:znc},Eic=bic,tTi=[{linguistLanguageId:407,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",".prettierrc",".stylelintrc",".lintstagedrc"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","dockercompose","github-actions-workflow","home-assistant"]}],ODr={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Sic={bracketSpacing:ODr.bracketSpacing,singleQuote:ODr.singleQuote,proseWrap:ODr.proseWrap},rTi=Sic,okr={};Cwi(okr,{yaml:()=>Hsc});var yEt=` +`,pwi="\r",vic=function(){function e(t){this.length=t.length;for(var r=[0],n=0;nthis.length)return null;for(var r=0,n=this.offsets;n[r+1]<=t;)r++;var a=t-n[r];return{line:r,column:a}},e.prototype.indexForLocation=function(t){var r=t.line,n=t.column;return r<0||r>=this.offsets.length||n<0||n>this.lengthOfLine(r)?null:this.offsets[r]+n},e.prototype.lengthOfLine=function(t){var r=this.offsets[t],n=t===this.offsets.length-1?this.length:this.offsets[t+1];return n-r},e}();function wP(e,t=null){"children"in e&&e.children.forEach(r=>wP(r,e)),"anchor"in e&&e.anchor&&wP(e.anchor,e),"tag"in e&&e.tag&&wP(e.tag,e),"leadingComments"in e&&e.leadingComments.forEach(r=>wP(r,e)),"middleComments"in e&&e.middleComments.forEach(r=>wP(r,e)),"indicatorComment"in e&&e.indicatorComment&&wP(e.indicatorComment,e),"trailingComment"in e&&e.trailingComment&&wP(e.trailingComment,e),"endComments"in e&&e.endComments.forEach(r=>wP(r,e)),Object.defineProperty(e,"_parent",{value:t,enumerable:!1})}function wEt(e){return`${e.line}:${e.column}`}function Bic(e){wP(e);let t=wic(e),r=e.children.slice();e.comments.sort((n,a)=>n.position.start.offset-a.position.end.offset).filter(n=>!n._parent).forEach(n=>{for(;r.length>1&&n.position.start.line>r[0].position.end.line;)r.shift();Tic(n,t,r[0])})}function wic(e){let t=Array.from(new Array(e.position.end.line),()=>({}));for(let r of e.comments)t[r.position.start.line-1].comment=r;return nTi(t,e),t}function nTi(e,t){if(t.position.start.offset!==t.position.end.offset){if("leadingComments"in t){let{start:r}=t.position,{leadingAttachableNode:n}=e[r.line-1];(!n||r.column1&&t.type!=="document"&&t.type!=="documentHead"){let{end:r}=t.position,{trailingAttachableNode:n}=e[r.line-1];(!n||r.column>=n.position.end.column)&&(e[r.line-1].trailingAttachableNode=t)}if(t.type!=="root"&&t.type!=="document"&&t.type!=="documentHead"&&t.type!=="documentBody"){let{start:r,end:n}=t.position,a=[n.line].concat(r.line===n.line?[]:r.line);for(let o of a){let l=e[o-1].trailingNode;(!l||n.column>=l.position.end.column)&&(e[o-1].trailingNode=t)}}"children"in t&&t.children.forEach(r=>{nTi(e,r)})}}function Tic(e,t,r){let n=e.position.start.line,{trailingAttachableNode:a}=t[n-1];if(a){if(a.trailingComment)throw new Error(`Unexpected multiple trailing comment at ${wEt(e.position.start)}`);wP(e,a),a.trailingComment=e;return}for(let l=n;l>=r.position.start.line;l--){let{trailingNode:A}=t[l-1],f;if(A)f=A;else if(l!==n&&t[l-1].comment)f=t[l-1].comment._parent;else continue;if((f.type==="sequence"||f.type==="mapping")&&(f=f.children[0]),f.type==="mappingItem"){let[I,C]=f.children;f=iTi(I)?I:C}for(;;){if(Ric(f,e)){wP(e,f),f.endComments.push(e);return}if(!f._parent)break;f=f._parent}break}for(let l=n+1;l<=r.position.end.line;l++){let{leadingAttachableNode:A}=t[l-1];if(A){wP(e,A),A.leadingComments.push(e);return}}let o=r.children[1];wP(e,o),o.endComments.push(e)}function Ric(e,t){if(e.position.start.offsett.position.end.offset)switch(e.type){case"flowMapping":case"flowSequence":return e.children.length===0||t.position.start.line>e.children[e.children.length-1].position.end.line}if(t.position.end.offsete.position.start.column;case"mappingKey":case"mappingValue":return t.position.start.column>e._parent.position.start.column&&(e.children.length===0||e.children.length===1&&e.children[0].type!=="blockFolded"&&e.children[0].type!=="blockLiteral")&&(e.type==="mappingValue"||iTi(e));default:return!1}}function iTi(e){return e.position.start!==e.position.end&&(e.children.length===0||e.position.start.offset!==e.children[0].position.start.offset)}function lw(e,t){return{type:e,position:t}}function Nic(e,t,r){return{...lw("root",e),children:t,comments:r}}function EEt(e){switch(e.type){case"DOCUMENT":for(let t=e.contents.length-1;t>=0;t--)e.contents[t].type==="BLANK_LINE"?e.contents.splice(t,1):EEt(e.contents[t]);for(let t=e.directives.length-1;t>=0;t--)e.directives[t].type==="BLANK_LINE"&&e.directives.splice(t,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];"char"in r||(r.type==="BLANK_LINE"?e.items.splice(t,1):EEt(r))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":e.node&&EEt(e.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(e.type)}`)}}function iDe(){return{leadingComments:[]}}function NEt(e=null){return{trailingComment:e}}function pCe(){return{...iDe(),...NEt()}}function Dic(e,t,r){return{...lw("alias",e),...pCe(),...t,value:r}}function kic(e,t){let r=e.cstNode;return Dic(t.transformRange({origStart:r.valueRange.origStart-1,origEnd:r.valueRange.origEnd}),t.transformContent(e),r.rawValue)}function xic(e){return{...e,type:"blockFolded"}}function Gic(e,t,r,n,a,o){return{...lw("blockValue",e),...iDe(),...t,chomping:r,indent:n,value:a,indicatorComment:o}}var tDe;(function(e){e.Tag="!",e.Anchor="&",e.Comment="#"})(tDe||(tDe={}));function Fic(e,t){return{...lw("anchor",e),value:t}}function akr(e,t){return{...lw("comment",e),value:t}}function Zic(e,t,r){return{anchor:t,tag:e,middleComments:r}}function Lic(e,t){return{...lw("tag",e),value:t}}function sTi(e,t,r=()=>!1){let n=e.cstNode,a=[],o=null,l=null,A=null;for(let f of n.props){let I=t.text[f.origStart];switch(I){case tDe.Tag:o=o||f,l=Lic(t.transformRange(f),e.tag);break;case tDe.Anchor:o=o||f,A=Fic(t.transformRange(f),n.anchor);break;case tDe.Comment:{let C=akr(t.transformRange(f),t.text.slice(f.origStart+1,f.origEnd));t.comments.push(C),!r(C)&&o&&o.origEnd<=f.origStart&&f.origEnd<=n.valueRange.origStart&&a.push(C);break}default:throw new Error(`Unexpected leading character ${JSON.stringify(I)}`)}}return Zic(l,A,a)}var KDr;(function(e){e.CLIP="clip",e.STRIP="strip",e.KEEP="keep"})(KDr||(KDr={}));function oTi(e,t){let r=e.cstNode,n=1,a=r.chomping==="CLIP"?0:1,o=r.header.origEnd-r.header.origStart-n-a!==0,l=t.transformRange({origStart:r.header.origStart,origEnd:r.valueRange.origEnd}),A=null,f=sTi(e,t,I=>{if(!(l.start.offset=0;f--){let I=e.contents[f];if(I.type==="COMMENT"){let C=t.transformNode(I);r&&r.line===C.position.start.line?l.unshift(C):A?n.unshift(C):C.position.start.offset>=e.valueRange.origEnd?o.unshift(C):n.unshift(C)}else A=!0}if(o.length>1)throw new Error(`Unexpected multiple document trailing comments at ${wEt(o[1].position.start)}`);if(l.length>1)throw new Error(`Unexpected multiple documentHead trailing comments at ${wEt(l[1].position.start)}`);return{comments:n,endComments:a,documentTrailingComment:Hce(o)||null,documentHeadTrailingComment:Hce(l)||null}}function Uic(e,t,r){let n=aTi(r.text.slice(e.valueRange.origEnd),/^\.\.\./),a=n===-1?e.valueRange.origEnd:Math.max(0,e.valueRange.origEnd-1);r.text[a-1]==="\r"&&a--;let o=r.transformRange({origStart:t!==null?t.position.start.offset:a,origEnd:a}),l=n===-1?o.end:r.transformOffset(e.valueRange.origEnd+3);return{position:o,documentEndPoint:l}}function Kic(e,t,r,n){return{...lw("documentHead",e),...fCe(r),...NEt(n),children:t}}function jic(e,t){let r=e.cstNode,{directives:n,comments:a,endComments:o}=zic(r,t),{position:l,endMarkerPoint:A}=qic(r,n,t);return t.comments.push(...a,...o),{createDocumentHeadWithTrailingComment:f=>(f&&t.comments.push(f),Kic(l,n,o,f)),documentHeadEndMarkerPoint:A}}function zic(e,t){let r=[],n=[],a=[],o=!1;for(let l=e.directives.length-1;l>=0;l--){let A=t.transformNode(e.directives[l]);A.type==="comment"?o?n.unshift(A):a.unshift(A):(o=!0,r.unshift(A))}return{directives:r,comments:n,endComments:a}}function qic(e,t,r){let n=aTi(r.text.slice(0,e.valueRange.origStart),/---\s*$/);n>0&&!/[\r\n]/.test(r.text[n-1])&&(n=-1);let a=n===-1?{origStart:e.valueRange.origStart,origEnd:e.valueRange.origStart}:{origStart:n,origEnd:n+3};return t.length!==0&&(a.origStart=t[0].position.start.offset),{position:r.transformRange(a),endMarkerPoint:n===-1?null:r.transformOffset(n)}}function $ic(e,t){let{createDocumentHeadWithTrailingComment:r,documentHeadEndMarkerPoint:n}=jic(e,t),{documentBody:a,documentEndPoint:o,documentTrailingComment:l,documentHeadTrailingComment:A}=Xic(e,t,n),f=r(A);return l&&t.comments.push(l),Yic(ACe(f.position.start,o),f,a,l)}function cTi(e,t,r){return{...lw("flowCollection",e),...pCe(),...fCe(),...t,children:r}}function esc(e,t,r){return{...cTi(e,t,r),type:"flowMapping"}}function lTi(e,t,r){return{...lw("flowMappingItem",e),...iDe(),children:[t,r]}}function DEt(e,t){let r=[];for(let n of e)n&&"type"in n&&n.type==="COMMENT"?t.comments.push(t.transformNode(n)):r.push(n);return r}function uTi(e){let[t,r]=["?",":"].map(n=>{let a=e.find(o=>"char"in o&&o.char===n);return a?{origStart:a.origOffset,origEnd:a.origOffset+1}:null});return{additionalKeyRange:t,additionalValueRange:r}}function gTi(e,t){let r=t;return n=>e.slice(r,r=n)}function ATi(e){let t=[],r=gTi(e,1),n=!1;for(let a=1;a{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=uTi(I);return lkr(A,t,lTi,C,b)}),o=r[0],l=Hce(r);return esc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function rsc(e,t,r){return{...cTi(e,t,r),type:"flowSequence"}}function nsc(e,t){return{...lw("flowSequenceItem",e),children:[t]}}function isc(e,t){let r=DEt(e.cstNode.items,t),n=ATi(r),a=e.items.map((A,f)=>{if(A.type!=="PAIR"){let I=t.transformNode(A);return nsc(ACe(I.position.start,I.position.end),I)}else{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=uTi(I);return lkr(A,t,lTi,C,b)}}),o=r[0],l=Hce(r);return rsc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function ssc(e,t,r){return{...lw("mapping",e),...iDe(),...t,children:r}}function osc(e,t,r){return{...lw("mappingItem",e),...iDe(),children:[t,r]}}function asc(e,t){let r=e.cstNode;r.items.filter(l=>l.type==="MAP_KEY"||l.type==="MAP_VALUE").forEach(l=>ckr(l,t));let n=DEt(r.items,t),a=csc(n),o=e.items.map((l,A)=>{let f=a[A],[I,C]=f[0].type==="MAP_VALUE"?[null,f[0].range]:[f[0].range,f.length===1?null:f[1].range];return lkr(l,t,osc,I,C)});return ssc(ACe(o[0].position.start,Hce(o).position.end),t.transformContent(e),o)}function csc(e){let t=[],r=gTi(e,0),n=!1;for(let a=0;a=0;n--)if(r.test(e[n]))return n;return-1}function gsc(e,t){let r=e.cstNode;return lsc(t.transformRange({origStart:r.valueRange.origStart,origEnd:usc(t.text,r.valueRange.origEnd-1,/\S/)+1}),t.transformContent(e),r.strValue)}function Asc(e){return{...e,type:"quoteDouble"}}function dsc(e,t,r){return{...lw("quoteValue",e),...t,...pCe(),value:r}}function dTi(e,t){let r=e.cstNode;return dsc(t.transformRange(r.valueRange),t.transformContent(e),r.strValue)}function psc(e,t){return Asc(dTi(e,t))}function fsc(e){return{...e,type:"quoteSingle"}}function Isc(e,t){return fsc(dTi(e,t))}function hsc(e,t,r){return{...lw("sequence",e),...iDe(),...fCe(),...t,children:r}}function msc(e,t){return{...lw("sequenceItem",e),...pCe(),...fCe(),children:t?[t]:[]}}function Csc(e,t){let r=DEt(e.cstNode.items,t).map((n,a)=>{ckr(n,t);let o=t.transformNode(e.items[a]);return msc(ACe(t.transformOffset(n.valueRange.origStart),o===null?t.transformOffset(n.valueRange.origStart+1):o.position.end),o)});return hsc(ACe(r[0].position.start,Hce(r).position.end),t.transformContent(e),r)}function _sc(e,t){if(e===null||e.type===void 0&&e.value===null)return null;switch(e.type){case"ALIAS":return kic(e,t);case"BLOCK_FOLDED":return Vic(e,t);case"BLOCK_LITERAL":return Oic(e,t);case"COMMENT":return Pic(e,t);case"DIRECTIVE":return Hic(e,t);case"DOCUMENT":return $ic(e,t);case"FLOW_MAP":return tsc(e,t);case"FLOW_SEQ":return isc(e,t);case"MAP":return asc(e,t);case"PLAIN":return gsc(e,t);case"QUOTE_DOUBLE":return psc(e,t);case"QUOTE_SINGLE":return Isc(e,t);case"SEQ":return Csc(e,t);default:throw new Error(`Unexpected node type ${e.type}`)}}function ysc(e,t,r){let n=new SyntaxError(e);return n.name="YAMLSyntaxError",n.source=t,n.position=r,n}function bsc(e,t){let r=e.source.range||e.source.valueRange;return ysc(e.message,t.text,t.transformRange(r))}function Esc(e,t,r){return{offset:e,line:t,column:r}}function Ssc(e,t){e<0?e=0:e>t.text.length&&(e=t.text.length);let r=t.locator.locationForIndex(e);return Esc(e,r.line+1,r.column+1)}function vsc(e,t){return ACe(t.transformOffset(e.origStart),t.transformOffset(e.origEnd))}function Bsc(e){if(!e.setOrigRanges()){let t=r=>{if(wsc(r))return r.origStart=r.start,r.origEnd=r.end,!0;if(Tsc(r))return r.origOffset=r.offset,!0};e.forEach(r=>jDr(r,t))}}function jDr(e,t){if(!(!e||typeof e!="object")&&t(e)!==!0)for(let r of Object.keys(e)){if(r==="context"||r==="error")continue;let n=e[r];Array.isArray(n)?n.forEach(a=>jDr(a,t)):jDr(n,t)}}function wsc(e){return typeof e.start=="number"}function Tsc(e){return typeof e.offset=="number"}function pTi(e){if("children"in e){if(e.children.length===1){let t=e.children[0];if(t.type==="plain"&&t.tag===null&&t.anchor===null&&t.value==="")return e.children.splice(0,1),e}e.children.forEach(pTi)}return e}function mwi(e,t,r,n){let a=t(e);return o=>{n(a,o)&&r(e,a=o)}}function fTi(e){if(e===null||!("children"in e))return;let t=e.children;if(t.forEach(fTi),e.type==="document"){let[o,l]=e.children;o.position.start.offset===o.position.end.offset?o.position.start=o.position.end=l.position.start:l.position.start.offset===l.position.end.offset&&(l.position.start=l.position.end=o.position.end)}let r=mwi(e.position,Rsc,Nsc,xsc),n=mwi(e.position,Dsc,ksc,Gsc);"endComments"in e&&e.endComments.length!==0&&(r(e.endComments[0].position.start),n(Hce(e.endComments).position.end));let a=t.filter(o=>o!==null);if(a.length!==0){let o=a[0],l=Hce(a);r(o.position.start),n(l.position.end),"leadingComments"in o&&o.leadingComments.length!==0&&r(o.leadingComments[0].position.start),"tag"in o&&o.tag&&r(o.tag.position.start),"anchor"in o&&o.anchor&&r(o.anchor.position.start),"trailingComment"in l&&l.trailingComment&&n(l.trailingComment.position.end)}}function Rsc(e){return e.start}function Nsc(e,t){e.start=t}function Dsc(e){return e.end}function ksc(e,t){e.end=t}function xsc(e,t){return t.offsete.offset}var Fsc=_wi(ync(),1),dH=_wi(bnc(),1),FTu=dH.default.findPair,ZTu=dH.default.toJSON,LTu=dH.default.parseMap,VTu=dH.default.parseSeq,WTu=dH.default.stringifyNumber,OTu=dH.default.stringifyString,PTu=dH.default.Type,MTu=dH.default.YAMLError,HTu=dH.default.YAMLReferenceError,Zsc=dH.default.YAMLSemanticError,YTu=dH.default.YAMLSyntaxError,QTu=dH.default.YAMLWarning,{Document:Lsc,parseCST:Vsc}=Fsc.default;function Wsc(e){let t=Vsc(e);Bsc(t);let r=t.map(A=>new Lsc({merge:!1,keepCstNodes:!0}).parse(A)),n=new vic(e),a=[],o={text:e,locator:n,comments:a,transformOffset:A=>Ssc(A,o),transformRange:A=>vsc(A,o),transformNode:A=>_sc(A,o),transformContent:A=>sTi(A,o)};for(let A of r)for(let f of A.errors)if(!(f instanceof Zsc&&f.message==='Map keys must be unique; "<<" is repeated'))throw bsc(f,o);r.forEach(A=>EEt(A.cstNode));let l=Nic(o.transformRange({origStart:0,origEnd:o.text.length}),r.map(o.transformNode),a);return Bic(l),fTi(l),pTi(l),l}function Osc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Psc=Osc;function Msc(e){try{let t=Wsc(e);return delete t.comments,t}catch(t){throw t!=null&&t.position?Psc(t.message,{loc:t.position,cause:t}):t}}var Hsc={astFormat:"yaml",parse:Msc,hasPragma:eic,locStart:vEt,locEnd:qnc},ITi={yaml:Eic},Ysc=kwi;var Qsc=Object.create,Tkr=Object.defineProperty,Xsc=Object.getOwnPropertyDescriptor,Jsc=Object.getOwnPropertyNames,Usc=Object.getPrototypeOf,Ksc=Object.prototype.hasOwnProperty,UTi=e=>{throw TypeError(e)},KTi=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Rkr=(e,t)=>{for(var r in t)Tkr(e,r,{get:t[r],enumerable:!0})},jsc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Jsc(t))!Ksc.call(e,a)&&a!==r&&Tkr(e,a,{get:()=>t[a],enumerable:!(n=Xsc(t,a))||n.enumerable});return e},PEt=(e,t,r)=>(r=e!=null?Qsc(Usc(e)):{},jsc(t||!e||!e.__esModule?Tkr(r,"default",{value:e,enumerable:!0}):r,e)),zsc=(e,t,r)=>t.has(e)||UTi("Cannot "+r),qsc=(e,t,r)=>t.has(e)?UTi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),$Je=(e,t,r)=>(zsc(e,t,"access private method"),r),Nkr=KTi((e,t)=>{"use strict";var r=new Proxy(String,{get:()=>r});t.exports=r}),$sc=KTi(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:()=>o=>o})}var r=/\r\n|[\n\r\u2028\u2029]/;function n(o,l,A){let f=Object.assign({column:0,line:-1},o.start),I=Object.assign({},f,o.end),{linesAbove:C=2,linesBelow:b=3}=A||{},E=f.line,N=f.column,B=I.line,F=I.column,Q=Math.max(E-(C+1),0),J=Math.min(l.length,B+b);E===-1&&(Q=0),B===-1&&(J=l.length);let ae=B-E,ne={};if(ae)for(let ce=0;ce<=ae;ce++){let fe=ce+E;if(!N)ne[fe]=!0;else if(ce===0){let ue=l[fe-1].length;ne[fe]=[N,ue-N+1]}else if(ce===ae)ne[fe]=[0,F];else{let ue=l[fe-ce].length;ne[fe]=[0,ue]}}else N===F?N?ne[E]=[N,0]:ne[E]=!0:ne[E]=[N,F-N];return{start:Q,end:J,markerLines:ne}}function a(o,l,A={}){let f=t(!1),I=o.split(r),{start:C,end:b,markerLines:E}=n(l,I,A),N=l.start&&typeof l.start.column=="number",B=String(b).length,F=o.split(r,b).slice(C,b).map((Q,J)=>{let ae=C+1+J,ne=` ${` ${ae}`.slice(-B)} |`,ce=E[ae],fe=!E[ae+1];if(ce){let ue="";if(Array.isArray(ce)){let de=Q.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` `,f.gutter(ne.replace(/\d/g," "))," ",de,f.marker("^").repeat(be)].join(""),fe&&A.message&&(ue+=" "+f.message(A.message))}return[f.marker(">"),f.gutter(ne),Q.length>0?` ${Q}`:"",ue].join("")}else return` ${f.gutter(ne)}${Q.length>0?` ${Q}`:""}`}).join(` `);return A.message&&!N&&(F=`${" ".repeat(B+1)}${A.message} -${F}`),F}e.codeFrameColumns=a}),Ksc={};wkr(Ksc,{__debug:()=>nlc,check:()=>tlc,doc:()=>_Ri,format:()=>qEt,formatWithCursor:()=>bRi,getSupportInfo:()=>rlc,util:()=>yRi,version:()=>Rcc});var jsc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},YEt=jsc;function m4(){}m4.prototype={diff:function(e,t){var r,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=n.callback;typeof n=="function"&&(a=n,n={});var o=this;function l(ne){return ne=o.postProcess(ne,n),a?(setTimeout(function(){a(ne)},0),!0):ne}e=this.castInput(e,n),t=this.castInput(t,n),e=this.removeEmpty(this.tokenize(e,n)),t=this.removeEmpty(this.tokenize(t,n));var A=t.length,f=e.length,I=1,C=A+f;n.maxEditLength!=null&&(C=Math.min(C,n.maxEditLength));var b=(r=n.timeout)!==null&&r!==void 0?r:1/0,E=Date.now()+b,N=[{oldPos:-1,lastComponent:void 0}],B=this.extractCommon(N[0],t,e,0,n);if(N[0].oldPos+1>=f&&B+1>=A)return l(oTi(o,N[0].lastComponent,t,e,o.useLongestToken));var F=-1/0,Q=1/0;function J(){for(var ne=Math.max(F,-I);ne<=Math.min(Q,I);ne+=2){var ce=void 0,fe=N[ne-1],ue=N[ne+1];fe&&(N[ne-1]=void 0);var de=!1;if(ue){var be=ue.oldPos-ne;de=ue&&0<=be&&be=f&&B+1>=A)return l(oTi(o,ce.lastComponent,t,e,o.useLongestToken));N[ne]=ce,ce.oldPos+1>=f&&(Q=Math.min(Q,ne-1)),B+1>=A&&(F=Math.max(F,ne+1))}I++}if(a)(function ne(){setTimeout(function(){if(I>C||Date.now()>E)return a();J()||ne()},0)})();else for(;I<=C&&Date.now()<=E;){var ae=J();if(ae)return ae}},addToPath:function(e,t,r,n,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+n,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+n,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},extractCommon:function(e,t,r,n,a){for(var o=t.length,l=r.length,A=e.oldPos,f=A-n,I=0;f+1N.length?F:N}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}return o}var nTu=new m4;function aTi(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var n=t.length;e.length0&&t[l]!=t[o];)o=a[o];t[l]==t[o]&&o++}o=0;for(var A=r;A0&&e[A]!=t[o];)o=a[o];e[A]==t[o]&&o++}return o}var OEt="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",qsc=new RegExp("[".concat(OEt,"]+|\\s+|[^").concat(OEt,"]"),"ug"),QEt=new m4;QEt.equals=function(e,t,r){return r.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()};QEt.tokenize=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(qsc)||[];var n=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?n.push(o):n.push(n.pop()+o):/\s/.test(a)?n[n.length-1]==a?n.push(n.pop()+o):n.push(a+o):n.push(o),a=o}),n};QEt.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")};QEt.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,n=null,a=null;return e.forEach(function(o){o.added?n=o:o.removed?a=o:((n||a)&&uTi(r,a,n,o),r=o,n=null,a=null)}),(n||a)&&uTi(r,a,n,null),e};function uTi(e,t,r,n){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],l=r.value.match(/^\s*/)[0],A=r.value.match(/\s*$/)[0];if(e){var f=aTi(a,l);e.value=fkr(e.value,l,f),t.value=qJe(t.value,f),r.value=qJe(r.value,f)}if(n){var I=cTi(o,A);n.value=pkr(n.value,A,I),t.value=GEt(t.value,I),r.value=GEt(r.value,I)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),n&&(n.value=n.value.replace(/^\s*/,""));else if(e&&n){var C=n.value.match(/^\s*/)[0],b=t.value.match(/^\s*/)[0],E=t.value.match(/\s*$/)[0],N=aTi(C,b);t.value=qJe(t.value,N);var B=cTi(qJe(C,N),E);t.value=GEt(t.value,B),n.value=pkr(n.value,C,B),e.value=fkr(e.value,C,C.slice(0,C.length-B.length))}else if(n){var F=n.value.match(/^\s*/)[0],Q=t.value.match(/\s*$/)[0],J=lTi(Q,F);t.value=GEt(t.value,J)}else if(e){var ae=e.value.match(/\s*$/)[0],ne=t.value.match(/^\s*/)[0],ce=lTi(ae,ne);t.value=qJe(t.value,ce)}}var $sc=new m4;$sc.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(OEt,"]+|[^\\S\\n\\r]+|[^").concat(OEt,"]"),"ug");return e.match(t)||[]};var Rkr=new m4;Rkr.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var r=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var a=0;aclc,check:()=>olc,doc:()=>DRi,format:()=>jEt,formatWithCursor:()=>xRi,getSupportInfo:()=>alc,util:()=>kRi,version:()=>Gcc});var toc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},MEt=toc;function C4(){}C4.prototype={diff:function(e,t){var r,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=n.callback;typeof n=="function"&&(a=n,n={});var o=this;function l(ne){return ne=o.postProcess(ne,n),a?(setTimeout(function(){a(ne)},0),!0):ne}e=this.castInput(e,n),t=this.castInput(t,n),e=this.removeEmpty(this.tokenize(e,n)),t=this.removeEmpty(this.tokenize(t,n));var A=t.length,f=e.length,I=1,C=A+f;n.maxEditLength!=null&&(C=Math.min(C,n.maxEditLength));var b=(r=n.timeout)!==null&&r!==void 0?r:1/0,E=Date.now()+b,N=[{oldPos:-1,lastComponent:void 0}],B=this.extractCommon(N[0],t,e,0,n);if(N[0].oldPos+1>=f&&B+1>=A)return l(hTi(o,N[0].lastComponent,t,e,o.useLongestToken));var F=-1/0,Q=1/0;function J(){for(var ne=Math.max(F,-I);ne<=Math.min(Q,I);ne+=2){var ce=void 0,fe=N[ne-1],ue=N[ne+1];fe&&(N[ne-1]=void 0);var de=!1;if(ue){var be=ue.oldPos-ne;de=ue&&0<=be&&be=f&&B+1>=A)return l(hTi(o,ce.lastComponent,t,e,o.useLongestToken));N[ne]=ce,ce.oldPos+1>=f&&(Q=Math.min(Q,ne-1)),B+1>=A&&(F=Math.max(F,ne+1))}I++}if(a)(function ne(){setTimeout(function(){if(I>C||Date.now()>E)return a();J()||ne()},0)})();else for(;I<=C&&Date.now()<=E;){var ae=J();if(ae)return ae}},addToPath:function(e,t,r,n,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+n,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+n,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},extractCommon:function(e,t,r,n,a){for(var o=t.length,l=r.length,A=e.oldPos,f=A-n,I=0;f+1N.length?F:N}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}return o}var ARu=new C4;function mTi(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var n=t.length;e.length0&&t[l]!=t[o];)o=a[o];t[l]==t[o]&&o++}o=0;for(var A=r;A0&&e[A]!=t[o];)o=a[o];e[A]==t[o]&&o++}return o}var VEt="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",noc=new RegExp("[".concat(VEt,"]+|\\s+|[^").concat(VEt,"]"),"ug"),HEt=new C4;HEt.equals=function(e,t,r){return r.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()};HEt.tokenize=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(noc)||[];var n=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?n.push(o):n.push(n.pop()+o):/\s/.test(a)?n[n.length-1]==a?n.push(n.pop()+o):n.push(a+o):n.push(o),a=o}),n};HEt.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")};HEt.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,n=null,a=null;return e.forEach(function(o){o.added?n=o:o.removed?a=o:((n||a)&&yTi(r,a,n,o),r=o,n=null,a=null)}),(n||a)&&yTi(r,a,n,null),e};function yTi(e,t,r,n){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],l=r.value.match(/^\s*/)[0],A=r.value.match(/\s*$/)[0];if(e){var f=mTi(a,l);e.value=hkr(e.value,l,f),t.value=eUe(t.value,f),r.value=eUe(r.value,f)}if(n){var I=CTi(o,A);n.value=Ikr(n.value,A,I),t.value=kEt(t.value,I),r.value=kEt(r.value,I)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),n&&(n.value=n.value.replace(/^\s*/,""));else if(e&&n){var C=n.value.match(/^\s*/)[0],b=t.value.match(/^\s*/)[0],E=t.value.match(/\s*$/)[0],N=mTi(C,b);t.value=eUe(t.value,N);var B=CTi(eUe(C,N),E);t.value=kEt(t.value,B),n.value=Ikr(n.value,C,B),e.value=hkr(e.value,C,C.slice(0,C.length-B.length))}else if(n){var F=n.value.match(/^\s*/)[0],Q=t.value.match(/\s*$/)[0],J=_Ti(Q,F);t.value=kEt(t.value,J)}else if(e){var ae=e.value.match(/\s*$/)[0],ne=t.value.match(/^\s*/)[0],ce=_Ti(ae,ne);t.value=eUe(t.value,ce)}}var ioc=new C4;ioc.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(VEt,"]+|[^\\S\\n\\r]+|[^").concat(VEt,"]"),"ug");return e.match(t)||[]};var Dkr=new C4;Dkr.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));var r=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var a=0;a"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(hkr(e,null,null,a),a," ")};eUe.equals=function(e,t,r){return m4.prototype.equals.call(eUe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)};function hkr(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(Ckr(e,null,null,a),a," ")};rUe.equals=function(e,t,r){return C4.prototype.equals.call(rUe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)};function Ckr(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},AD=soc;function ooc(e){if(typeof e=="string")return yCe;if(Array.isArray(e))return Jee;if(!e)return;let{type:t}=e;if(OTi.has(t))return t}var ECe=ooc,aoc=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function coc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(ECe(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=aoc([...OTi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var loc=class extends Error{name="InvalidDocError";constructor(e){super(coc(e)),this.doc=e}},ADe=loc,gTi={};function uoc(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===gTi){r(a.pop());continue}r&&a.push(o,gTi);let l=ECe(o);if(!l)throw new ADe(o);if(t?.(o)!==!1)switch(l){case Jee:case k6:{let A=l===Jee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case BP:a.push(o.flatContents,o.breakContents);break;case NV:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Kee:case Uee:case zee:case x6:case qee:a.push(o.contents);break;case yCe:case bCe:case jee:case $ee:case Jk:case dH:break;default:throw new ADe(o)}}}var Dkr=uoc;function XEt(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(ECe(o)){case Jee:return t(o.map(n));case k6:return t({...o,parts:o.parts.map(n)});case BP:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case NV:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case Kee:case Uee:case zee:case x6:case qee:return t({...o,contents:n(o.contents)});case yCe:case bCe:case jee:case $ee:case Jk:case dH:return t(o);default:throw new ADe(o)}}}function kkr(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return Dkr(e,o),n}function goc(e){if(e.type===NV&&e.break||e.type===Jk&&e.hard||e.type===dH)return!0}function Aoc(e){return kkr(e,goc,!1)}function ATi(e){if(e.length>0){let t=AD(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function doc(e){let t=new Set,r=[];function n(o){if(o.type===dH&&ATi(r),o.type===NV){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===NV&&r.pop().break&&ATi(r)}Dkr(e,n,a,!0)}function poc(e){return e.type===Jk&&!e.hard?e.soft?"":" ":e.type===BP?e.flatContents:e}function foc(e){return XEt(e,poc)}function dTi(e){for(e=[...e];e.length>=2&&AD(!1,e,-2).type===Jk&&AD(!1,e,-1).type===dH;)e.length-=2;if(e.length>0){let t=$Je(AD(!1,e,-1));e[e.length-1]=t}return e}function $Je(e){switch(ECe(e)){case Uee:case zee:case NV:case qee:case x6:{let t=$Je(e.contents);return{...e,contents:t}}case BP:return{...e,breakContents:$Je(e.breakContents),flatContents:$Je(e.flatContents)};case k6:return{...e,parts:dTi(e.parts)};case Jee:return dTi(e);case yCe:return e.replace(/[\n\r]*$/u,"");case Kee:case bCe:case jee:case $ee:case Jk:case dH:break;default:throw new ADe(e)}return e}function PTi(e){return $Je(hoc(e))}function Ioc(e){switch(ECe(e)){case k6:if(e.parts.every(t=>t===""))return"";break;case NV:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===NV&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Kee:case Uee:case zee:case qee:if(!e.contents)return"";break;case BP:if(!e.flatContents&&!e.breakContents)return"";break;case Jee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof AD(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case yCe:case bCe:case jee:case $ee:case Jk:case x6:case dH:break;default:throw new ADe(e)}return e}function hoc(e){return XEt(e,t=>Ioc(t))}function moc(e,t=XTi){return XEt(e,r=>typeof r=="string"?JTi(t,r.split(` -`)):r)}function Coc(e){if(e.type===Jk)return!0}function _oc(e){return kkr(e,Coc,!1)}function LEt(e,t){return e.type===x6?{...e,contents:t(e.contents)}:t(e)}var xkr=()=>{},D6=xkr,MTi=xkr,yoc=xkr;function MEt(e){return D6(e),{type:Uee,contents:e}}function dDe(e,t){return D6(t),{type:Kee,contents:t,n:e}}function HTi(e,t={}){return D6(e),MTi(t.expandedStates,!0),{type:NV,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function boc(e){return dDe(Number.NEGATIVE_INFINITY,e)}function Eoc(e){return dDe({type:"root"},e)}function Soc(e){return dDe(-1,e)}function voc(e,t){return HTi(e[0],{...t,expandedStates:e})}function Boc(e){return yoc(e),{type:k6,parts:e}}function woc(e,t="",r={}){return D6(e),t!==""&&D6(t),{type:BP,breakContents:e,flatContents:t,groupId:r.groupId}}function Toc(e,t){return D6(e),{type:zee,contents:e,groupId:t.groupId,negate:t.negate}}function mkr(e){return D6(e),{type:qee,contents:e}}var Roc={type:$ee},JEt={type:dH},Noc={type:jee},Gkr={type:Jk,hard:!0},YTi={type:Jk,hard:!0,literal:!0},QTi={type:Jk},Doc={type:Jk,soft:!0},CCe=[Gkr,JEt],XTi=[YTi,JEt],mCe={type:bCe};function JTi(e,t){D6(e),MTi(t);let r=[];for(let n=0;n0){for(let a=0;a0?`, { ${C.join(", ")} }`:"";return`indentIfBreak(${n(o.contents)}${b})`}if(o.type===NV){let C=[];o.break&&o.break!=="propagated"&&C.push("shouldBreak: true"),o.id&&C.push(`id: ${a(o.id)}`);let b=C.length>0?`, { ${C.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(E=>n(E)).join(",")}]${b})`:`group(${n(o.contents)}${b})`}if(o.type===k6)return`fill([${o.parts.map(C=>n(C)).join(", ")}])`;if(o.type===qee)return"lineSuffix("+n(o.contents)+")";if(o.type===$ee)return"lineSuffixBoundary";if(o.type===x6)return`label(${JSON.stringify(o.label)}, ${n(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let l=o.description||"symbol";for(let A=0;;A++){let f=l+(A>0?` #${A}`:"");if(!r.has(f))return r.add(f),t[o]=`Symbol.for(${JSON.stringify(f)})`}}}var Goc=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function Foc(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Zoc(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Loc=e=>!(Foc(e)||Zoc(e)),Voc=/[^\x20-\x7F]/u;function Woc(e){if(!e)return 0;if(!Voc.test(e))return e.length;e=e.replace(Goc()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Loc(n)?1:2)}return t}var Fkr=Woc,RV=Symbol("MODE_BREAK"),N6=Symbol("MODE_FLAT"),aDe=Symbol("cursor"),Ckr=Symbol("DOC_FILL_PRINTED_LENGTH");function KTi(){return{value:"",length:0,queue:[]}}function Ooc(e,t){return _kr(e,{type:"indent"},t)}function Poc(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||KTi():t<0?_kr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:_kr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function _kr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function ykr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===aDe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(aDe);return t}function FEt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=ECe(C);switch(b){case yCe:f.push(C),r-=Fkr(C);break;case Jee:case k6:{let E=b===Jee?C:C.parts,N=C[Ckr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case Uee:case Kee:case zee:case x6:A.push({mode:I,doc:C.contents});break;case jee:r+=ykr(f);break;case NV:{if(o&&C.break)return!1;let E=C.break?RV:I,N=C.expandedStates&&E===RV?AD(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case BP:{let E=(C.groupId?a[C.groupId]||N6:I)===RV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Jk:if(I===RV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case qee:n=!0;break;case $ee:if(n)return!1;break}}return!1}function UEt(e,t){let r={},n=t.printWidth,a=Nkr(t.endOfLine),o=0,l=[{ind:KTi(),mode:RV,doc:e}],A=[],f=!1,I=[],C=0;for(doc(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(ECe(B)){case yCe:{let F=a!==` -`?YEt(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=Fkr(F));break}case Jee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case bCe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(aDe),C++;break;case Uee:l.push({ind:Ooc(E,t),mode:N,doc:B.contents});break;case Kee:l.push({ind:Poc(E,B.n,t),mode:N,doc:B.contents});break;case jee:o-=ykr(A);break;case NV:switch(N){case N6:if(!f){l.push({ind:E,mode:B.break?RV:N6,doc:B.contents});break}case RV:{f=!1;let F={ind:E,mode:N6,doc:B.contents},Q=n-o,J=I.length>0;if(!B.break&&FEt(F,l,Q,J,r))l.push(F);else if(B.expandedStates){let ae=AD(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:RV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:RV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:N6,doc:ce};if(FEt(fe,l,Q,J,r)){l.push(fe);break}}}else l.push({ind:E,mode:RV,doc:B.contents});break}}B.id&&(r[B.id]=AD(!1,l,-1).mode);break;case k6:{let F=n-o,Q=B[Ckr]??0,{parts:J}=B,ae=J.length-Q;if(ae===0)break;let ne=J[Q+0],ce=J[Q+1],fe={ind:E,mode:N6,doc:ne},ue={ind:E,mode:RV,doc:ne},de=FEt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:N6,doc:ce},Se={ind:E,mode:RV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=J[Q+2],k={ind:E,mode:N,doc:{...B,[Ckr]:Q+2}};FEt({ind:E,mode:N6,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case BP:case zee:{let F=B.groupId?r[B.groupId]:N;if(F===RV){let Q=B.type===BP?B.breakContents:B.negate?B.contents:MEt(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===N6){let Q=B.type===BP?B.flatContents:B.negate?MEt(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case qee:I.push({ind:E,mode:N,doc:B.contents});break;case $ee:I.length>0&&l.push({ind:E,mode:N,doc:Gkr});break;case Jk:switch(N){case N6:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case RV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=ykr(A),A.push(a+E.value),o=E.length);break}break;case x6:l.push({ind:E,mode:N,doc:B.contents});break;case dH:break;default:throw new ADe(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(aDe);if(b!==-1){let E=A.indexOf(aDe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==aDe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function Moc(e,t,r=0){let n=0;for(let a=r;a1?AD(!1,e,-2):null}getValue(){return AD(!1,this.stack,-1)}getNode(e=0){let t=zJe(this,fCe,bkr).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:n}=r,a=AD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=n}}callParent(e,t=0){let r=zJe(this,fCe,bkr).call(this,t+1),n=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...n)}}each(e,...t){let{stack:r}=this,{length:n}=r,a=AD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(n,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,n=this.stack[t--];for(let a of e){if(n===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],n=this.stack[t--]),a&&!a(n,r,o))return!1;r=this.stack[t--],n=this.stack[t--]}return!0}findAncestor(e){for(let t of zJe(this,fCe,VEt).call(this))if(e(t))return t}hasAncestor(e){for(let t of zJe(this,fCe,VEt).call(this))if(e(t))return!0;return!1}};fCe=new WeakSet,bkr=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},VEt=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}};var Yoc=Hoc,jTi=new Proxy(()=>{},{get:()=>jTi}),Ekr=jTi;function Qoc(e){return e!==null&&typeof e=="object"}var Xoc=Qoc;function*KEt(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>Xoc(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*Joc(e,t){let r=[e];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},dD=uoc;function goc(e){if(typeof e=="string")return bCe;if(Array.isArray(e))return Uee;if(!e)return;let{type:t}=e;if(zTi.has(t))return t}var SCe=goc,Aoc=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function doc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(SCe(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=Aoc([...zTi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var poc=class extends Error{name="InvalidDocError";constructor(e){super(doc(e)),this.doc=e}},uDe=poc,bTi={};function foc(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===bTi){r(a.pop());continue}r&&a.push(o,bTi);let l=SCe(o);if(!l)throw new uDe(o);if(t?.(o)!==!1)switch(l){case Uee:case x6:{let A=l===Uee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case TP:a.push(o.flatContents,o.breakContents);break;case DV:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case jee:case Kee:case qee:case G6:case $ee:a.push(o.contents);break;case bCe:case ECe:case zee:case ete:case Uk:case pH:break;default:throw new uDe(o)}}}var xkr=foc;function YEt(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(SCe(o)){case Uee:return t(o.map(n));case x6:return t({...o,parts:o.parts.map(n)});case TP:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case DV:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case jee:case Kee:case qee:case G6:case $ee:return t({...o,contents:n(o.contents)});case bCe:case ECe:case zee:case ete:case Uk:case pH:return t(o);default:throw new uDe(o)}}}function Gkr(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return xkr(e,o),n}function Ioc(e){if(e.type===DV&&e.break||e.type===Uk&&e.hard||e.type===pH)return!0}function hoc(e){return Gkr(e,Ioc,!1)}function ETi(e){if(e.length>0){let t=dD(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function moc(e){let t=new Set,r=[];function n(o){if(o.type===pH&&ETi(r),o.type===DV){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===DV&&r.pop().break&&ETi(r)}xkr(e,n,a,!0)}function Coc(e){return e.type===Uk&&!e.hard?e.soft?"":" ":e.type===TP?e.flatContents:e}function _oc(e){return YEt(e,Coc)}function STi(e){for(e=[...e];e.length>=2&&dD(!1,e,-2).type===Uk&&dD(!1,e,-1).type===pH;)e.length-=2;if(e.length>0){let t=tUe(dD(!1,e,-1));e[e.length-1]=t}return e}function tUe(e){switch(SCe(e)){case Kee:case qee:case DV:case $ee:case G6:{let t=tUe(e.contents);return{...e,contents:t}}case TP:return{...e,breakContents:tUe(e.breakContents),flatContents:tUe(e.flatContents)};case x6:return{...e,parts:STi(e.parts)};case Uee:return STi(e);case bCe:return e.replace(/[\n\r]*$/u,"");case jee:case ECe:case zee:case ete:case Uk:case pH:break;default:throw new uDe(e)}return e}function qTi(e){return tUe(boc(e))}function yoc(e){switch(SCe(e)){case x6:if(e.parts.every(t=>t===""))return"";break;case DV:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===DV&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case jee:case Kee:case qee:case $ee:if(!e.contents)return"";break;case TP:if(!e.flatContents&&!e.breakContents)return"";break;case Uee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof dD(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case bCe:case ECe:case zee:case ete:case Uk:case G6:case pH:break;default:throw new uDe(e)}return e}function boc(e){return YEt(e,t=>yoc(t))}function Eoc(e,t=nRi){return YEt(e,r=>typeof r=="string"?iRi(t,r.split(` +`)):r)}function Soc(e){if(e.type===Uk)return!0}function voc(e){return Gkr(e,Soc,!1)}function FEt(e,t){return e.type===G6?{...e,contents:t(e.contents)}:t(e)}var Fkr=()=>{},k6=Fkr,$Ti=Fkr,Boc=Fkr;function OEt(e){return k6(e),{type:Kee,contents:e}}function gDe(e,t){return k6(t),{type:jee,contents:t,n:e}}function eRi(e,t={}){return k6(e),$Ti(t.expandedStates,!0),{type:DV,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function woc(e){return gDe(Number.NEGATIVE_INFINITY,e)}function Toc(e){return gDe({type:"root"},e)}function Roc(e){return gDe(-1,e)}function Noc(e,t){return eRi(e[0],{...t,expandedStates:e})}function Doc(e){return Boc(e),{type:x6,parts:e}}function koc(e,t="",r={}){return k6(e),t!==""&&k6(t),{type:TP,breakContents:e,flatContents:t,groupId:r.groupId}}function xoc(e,t){return k6(e),{type:qee,contents:e,groupId:t.groupId,negate:t.negate}}function _kr(e){return k6(e),{type:$ee,contents:e}}var Goc={type:ete},QEt={type:pH},Foc={type:zee},Zkr={type:Uk,hard:!0},tRi={type:Uk,hard:!0,literal:!0},rRi={type:Uk},Zoc={type:Uk,soft:!0},_Ce=[Zkr,QEt],nRi=[tRi,QEt],CCe={type:ECe};function iRi(e,t){k6(e),$Ti(t);let r=[];for(let n=0;n0){for(let a=0;a0?`, { ${C.join(", ")} }`:"";return`indentIfBreak(${n(o.contents)}${b})`}if(o.type===DV){let C=[];o.break&&o.break!=="propagated"&&C.push("shouldBreak: true"),o.id&&C.push(`id: ${a(o.id)}`);let b=C.length>0?`, { ${C.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(E=>n(E)).join(",")}]${b})`:`group(${n(o.contents)}${b})`}if(o.type===x6)return`fill([${o.parts.map(C=>n(C)).join(", ")}])`;if(o.type===$ee)return"lineSuffix("+n(o.contents)+")";if(o.type===ete)return"lineSuffixBoundary";if(o.type===G6)return`label(${JSON.stringify(o.label)}, ${n(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let l=o.description||"symbol";for(let A=0;;A++){let f=l+(A>0?` #${A}`:"");if(!r.has(f))return r.add(f),t[o]=`Symbol.for(${JSON.stringify(f)})`}}}var Woc=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\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?|[\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](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\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-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function Ooc(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Poc(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Moc=e=>!(Ooc(e)||Poc(e)),Hoc=/[^\x20-\x7F]/u;function Yoc(e){if(!e)return 0;if(!Hoc.test(e))return e.length;e=e.replace(Woc()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Moc(n)?1:2)}return t}var Lkr=Yoc,NV=Symbol("MODE_BREAK"),D6=Symbol("MODE_FLAT"),sDe=Symbol("cursor"),ykr=Symbol("DOC_FILL_PRINTED_LENGTH");function oRi(){return{value:"",length:0,queue:[]}}function Qoc(e,t){return bkr(e,{type:"indent"},t)}function Xoc(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||oRi():t<0?bkr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:bkr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function bkr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function Ekr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===sDe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(sDe);return t}function xEt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=SCe(C);switch(b){case bCe:f.push(C),r-=Lkr(C);break;case Uee:case x6:{let E=b===Uee?C:C.parts,N=C[ykr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case Kee:case jee:case qee:case G6:A.push({mode:I,doc:C.contents});break;case zee:r+=Ekr(f);break;case DV:{if(o&&C.break)return!1;let E=C.break?NV:I,N=C.expandedStates&&E===NV?dD(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case TP:{let E=(C.groupId?a[C.groupId]||D6:I)===NV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Uk:if(I===NV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case $ee:n=!0;break;case ete:if(n)return!1;break}}return!1}function XEt(e,t){let r={},n=t.printWidth,a=kkr(t.endOfLine),o=0,l=[{ind:oRi(),mode:NV,doc:e}],A=[],f=!1,I=[],C=0;for(moc(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(SCe(B)){case bCe:{let F=a!==` +`?MEt(!1,B,` +`,a):B;A.push(F),l.length>0&&(o+=Lkr(F));break}case Uee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case ECe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(sDe),C++;break;case Kee:l.push({ind:Qoc(E,t),mode:N,doc:B.contents});break;case jee:l.push({ind:Xoc(E,B.n,t),mode:N,doc:B.contents});break;case zee:o-=Ekr(A);break;case DV:switch(N){case D6:if(!f){l.push({ind:E,mode:B.break?NV:D6,doc:B.contents});break}case NV:{f=!1;let F={ind:E,mode:D6,doc:B.contents},Q=n-o,J=I.length>0;if(!B.break&&xEt(F,l,Q,J,r))l.push(F);else if(B.expandedStates){let ae=dD(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:NV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:NV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:D6,doc:ce};if(xEt(fe,l,Q,J,r)){l.push(fe);break}}}else l.push({ind:E,mode:NV,doc:B.contents});break}}B.id&&(r[B.id]=dD(!1,l,-1).mode);break;case x6:{let F=n-o,Q=B[ykr]??0,{parts:J}=B,ae=J.length-Q;if(ae===0)break;let ne=J[Q+0],ce=J[Q+1],fe={ind:E,mode:D6,doc:ne},ue={ind:E,mode:NV,doc:ne},de=xEt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:D6,doc:ce},Se={ind:E,mode:NV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=J[Q+2],k={ind:E,mode:N,doc:{...B,[ykr]:Q+2}};xEt({ind:E,mode:D6,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case TP:case qee:{let F=B.groupId?r[B.groupId]:N;if(F===NV){let Q=B.type===TP?B.breakContents:B.negate?B.contents:OEt(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===D6){let Q=B.type===TP?B.flatContents:B.negate?OEt(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case $ee:I.push({ind:E,mode:N,doc:B.contents});break;case ete:I.length>0&&l.push({ind:E,mode:N,doc:Zkr});break;case Uk:switch(N){case D6:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case NV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=Ekr(A),A.push(a+E.value),o=E.length);break}break;case G6:l.push({ind:E,mode:N,doc:B.contents});break;case pH:break;default:throw new uDe(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(sDe);if(b!==-1){let E=A.indexOf(sDe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==sDe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function Joc(e,t,r=0){let n=0;for(let a=r;a1?dD(!1,e,-2):null}getValue(){return dD(!1,this.stack,-1)}getNode(e=0){let t=$Je(this,ICe,Skr).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:n}=r,a=dD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=n}}callParent(e,t=0){let r=$Je(this,ICe,Skr).call(this,t+1),n=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...n)}}each(e,...t){let{stack:r}=this,{length:n}=r,a=dD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(n,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,n=this.stack[t--];for(let a of e){if(n===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],n=this.stack[t--]),a&&!a(n,r,o))return!1;r=this.stack[t--],n=this.stack[t--]}return!0}findAncestor(e){for(let t of $Je(this,ICe,ZEt).call(this))if(e(t))return t}hasAncestor(e){for(let t of $Je(this,ICe,ZEt).call(this))if(e(t))return!0;return!1}};ICe=new WeakSet,Skr=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},ZEt=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}};var Koc=Uoc,aRi=new Proxy(()=>{},{get:()=>aRi}),vkr=aRi;function joc(e){return e!==null&&typeof e=="object"}var zoc=joc;function*JEt(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>zoc(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*qoc(e,t){let r=[e];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var $oc=qoc,$Ti=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),eac=e=>Object.keys(e).filter(t=>!$Ti.has(t));function tac(e){return e?t=>e(t,$Ti):eac}var jEt=tac;function rac(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function Lkr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=rac(e)}function cDe(e,t){t.leading=!0,t.trailing=!1,Lkr(e,t)}function ICe(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),Lkr(e,t)}function lDe(e,t){t.leading=!1,t.trailing=!0,Lkr(e,t)}var ckr=new WeakMap;function Vkr(e,t){if(ckr.has(e))return ckr.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:a},locStart:o,locEnd:l}=t;if(!n)return[];let A=(r?.(e,t)??[...KEt(e,{getVisitorKeys:jEt(a)})]).flatMap(f=>n(f)?[f]:Vkr(f,t));return A.sort((f,I)=>o(f)-o(I)||l(f)-l(I)),ckr.set(e,A),A}function eRi(e,t,r,n){let{locStart:a,locEnd:o}=r,l=a(t),A=o(t),f=Vkr(e,r),I,C,b=0,E=f.length;for(;b>1,B=f[N],F=a(B),Q=o(B);if(F<=l&&A<=Q)return eRi(B,t,r,B);if(Q<=l){I=B,b=N+1;continue}if(A<=F){C=B,E=N;continue}throw new Error("Comment location overlaps with node location")}if(n?.type==="TemplateLiteral"){let{quasis:N}=n,B=ukr(N,t,r);I&&ukr(N,I,r)!==B&&(I=null),C&&ukr(N,C,r)!==B&&(C=null)}return{enclosingNode:n,precedingNode:I,followingNode:C}}var lkr=()=>!1;function nac(e,t){let{comments:r}=e;if(delete e.comments,!$oc(r)||!t.printer.canAttachComment)return;let n=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:l=!1}={},handleComments:A={}},originalText:f}=t,{ownLine:I=lkr,endOfLine:C=lkr,remaining:b=lkr}=A,E=r.map((N,B)=>({...eRi(e,N,t),comment:N,text:f,options:t,ast:e,isLastComment:r.length-1===B}));for(let[N,B]of E.entries()){let{comment:F,precedingNode:Q,enclosingNode:J,followingNode:ae,text:ne,options:ce,ast:fe,isLastComment:ue}=B;if(ce.parser==="json"||ce.parser==="json5"||ce.parser==="jsonc"||ce.parser==="__js_expression"||ce.parser==="__ts_expression"||ce.parser==="__vue_expression"||ce.parser==="__vue_ts_expression"){if(a(F)-a(fe)<=0){cDe(fe,F);continue}if(o(F)-o(fe)>=0){lDe(fe,F);continue}}let de;if(l?de=[B]:(F.enclosingNode=J,F.precedingNode=Q,F.followingNode=ae,de=[F,ne,ce,fe,ue]),iac(ne,ce,E,N))F.placement="ownLine",I(...de)||(ae?cDe(ae,F):Q?lDe(Q,F):ICe(J||fe,F));else if(sac(ne,ce,E,N))F.placement="endOfLine",C(...de)||(Q?lDe(Q,F):ae?cDe(ae,F):ICe(J||fe,F));else if(F.placement="remaining",!b(...de))if(Q&&ae){let be=n.length;be>0&&n[be-1].followingNode!==ae&&pTi(n,ce),n.push(B)}else Q?lDe(Q,F):ae?cDe(ae,F):ICe(J||fe,F)}if(pTi(n,t),!l)for(let N of r)delete N.precedingNode,delete N.enclosingNode,delete N.followingNode}var tRi=e=>!/[\S\n\u2028\u2029]/u.test(e);function iac(e,t,r,n){let{comment:a,precedingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=l(a);if(o)for(let I=n-1;I>=0;I--){let{comment:C,precedingNode:b}=r[I];if(b!==o||!tRi(e.slice(A(C),f)))break;f=l(C)}return Hce(e,f,{backwards:!0})}function sac(e,t,r,n){let{comment:a,followingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=A(a);if(o)for(let I=n+1;I0;--f){let{comment:I,precedingNode:C,followingNode:b}=e[f-1];Ekr.strictEqual(C,o),Ekr.strictEqual(b,l);let E=t.originalText.slice(t.locEnd(I),A);if(((n=(r=t.printer).isGap)==null?void 0:n.call(r,E,t))??/^[\s(]*$/u.test(E))A=t.locStart(I);else break}for(let[I,{comment:C}]of e.entries())I1&&I.comments.sort((C,b)=>t.locStart(C)-t.locStart(b));e.length=0}function ukr(e,t,r){let n=r.locStart(t)-1;for(let a=1;a!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(aac(e,t)):I&&(l=cac(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function uac(e,t,r){let{leading:n,trailing:a}=lac(e,r);return!n&&!a?t:LEt(t,o=>[n,o,a])}function gac(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed}}function Aac(e){return()=>{}}var dac=Aac,nRi=class extends Error{name="ConfigError"},fTi=class extends Error{name="UndefinedParserError"},pac={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"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:`Maintain existing +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var yCe=tac;function rac(e,t,r={}){let n=Qce(e,r.backwards?t-1:t,r),a=yCe(e,n,r);return n!==a}var Yce=rac;function nac(e){return Array.isArray(e)&&e.length>0}var iac=nac,uRi=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),sac=e=>Object.keys(e).filter(t=>!uRi.has(t));function oac(e){return e?t=>e(t,uRi):sac}var UEt=oac;function aac(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function Wkr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=aac(e)}function oDe(e,t){t.leading=!0,t.trailing=!1,Wkr(e,t)}function hCe(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),Wkr(e,t)}function aDe(e,t){t.leading=!1,t.trailing=!0,Wkr(e,t)}var ukr=new WeakMap;function Okr(e,t){if(ukr.has(e))return ukr.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:a},locStart:o,locEnd:l}=t;if(!n)return[];let A=(r?.(e,t)??[...JEt(e,{getVisitorKeys:UEt(a)})]).flatMap(f=>n(f)?[f]:Okr(f,t));return A.sort((f,I)=>o(f)-o(I)||l(f)-l(I)),ukr.set(e,A),A}function gRi(e,t,r,n){let{locStart:a,locEnd:o}=r,l=a(t),A=o(t),f=Okr(e,r),I,C,b=0,E=f.length;for(;b>1,B=f[N],F=a(B),Q=o(B);if(F<=l&&A<=Q)return gRi(B,t,r,B);if(Q<=l){I=B,b=N+1;continue}if(A<=F){C=B,E=N;continue}throw new Error("Comment location overlaps with node location")}if(n?.type==="TemplateLiteral"){let{quasis:N}=n,B=Akr(N,t,r);I&&Akr(N,I,r)!==B&&(I=null),C&&Akr(N,C,r)!==B&&(C=null)}return{enclosingNode:n,precedingNode:I,followingNode:C}}var gkr=()=>!1;function cac(e,t){let{comments:r}=e;if(delete e.comments,!iac(r)||!t.printer.canAttachComment)return;let n=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:l=!1}={},handleComments:A={}},originalText:f}=t,{ownLine:I=gkr,endOfLine:C=gkr,remaining:b=gkr}=A,E=r.map((N,B)=>({...gRi(e,N,t),comment:N,text:f,options:t,ast:e,isLastComment:r.length-1===B}));for(let[N,B]of E.entries()){let{comment:F,precedingNode:Q,enclosingNode:J,followingNode:ae,text:ne,options:ce,ast:fe,isLastComment:ue}=B;if(ce.parser==="json"||ce.parser==="json5"||ce.parser==="jsonc"||ce.parser==="__js_expression"||ce.parser==="__ts_expression"||ce.parser==="__vue_expression"||ce.parser==="__vue_ts_expression"){if(a(F)-a(fe)<=0){oDe(fe,F);continue}if(o(F)-o(fe)>=0){aDe(fe,F);continue}}let de;if(l?de=[B]:(F.enclosingNode=J,F.precedingNode=Q,F.followingNode=ae,de=[F,ne,ce,fe,ue]),lac(ne,ce,E,N))F.placement="ownLine",I(...de)||(ae?oDe(ae,F):Q?aDe(Q,F):hCe(J||fe,F));else if(uac(ne,ce,E,N))F.placement="endOfLine",C(...de)||(Q?aDe(Q,F):ae?oDe(ae,F):hCe(J||fe,F));else if(F.placement="remaining",!b(...de))if(Q&&ae){let be=n.length;be>0&&n[be-1].followingNode!==ae&&vTi(n,ce),n.push(B)}else Q?aDe(Q,F):ae?oDe(ae,F):hCe(J||fe,F)}if(vTi(n,t),!l)for(let N of r)delete N.precedingNode,delete N.enclosingNode,delete N.followingNode}var ARi=e=>!/[\S\n\u2028\u2029]/u.test(e);function lac(e,t,r,n){let{comment:a,precedingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=l(a);if(o)for(let I=n-1;I>=0;I--){let{comment:C,precedingNode:b}=r[I];if(b!==o||!ARi(e.slice(A(C),f)))break;f=l(C)}return Yce(e,f,{backwards:!0})}function uac(e,t,r,n){let{comment:a,followingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=A(a);if(o)for(let I=n+1;I0;--f){let{comment:I,precedingNode:C,followingNode:b}=e[f-1];vkr.strictEqual(C,o),vkr.strictEqual(b,l);let E=t.originalText.slice(t.locEnd(I),A);if(((n=(r=t.printer).isGap)==null?void 0:n.call(r,E,t))??/^[\s(]*$/u.test(E))A=t.locStart(I);else break}for(let[I,{comment:C}]of e.entries())I1&&I.comments.sort((C,b)=>t.locStart(C)-t.locStart(b));e.length=0}function Akr(e,t,r){let n=r.locStart(t)-1;for(let a=1;a!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(Aac(e,t)):I&&(l=dac(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function fac(e,t,r){let{leading:n,trailing:a}=pac(e,r);return!n&&!a?t:FEt(t,o=>[n,o,a])}function Iac(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed}}function hac(e){return()=>{}}var mac=hac,pRi=class extends Error{name="ConfigError"},BTi=class extends Error{name="UndefinedParserError"},Cac={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"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:`Maintain existing (mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:e=>typeof e=="string"||typeof e=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:e=>typeof e=="string"||typeof e=="object",cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive). The range will extend forwards to the end of the selected statement.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset. The range will extend backwards to the start of the first line containing the selected statement.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment -in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"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."}]}};function iRi({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),n=[];for(let a of Iac(Object.assign({},...e.map(({options:o})=>o),pac)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,...fac(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var l;return((l=o.defaultOptions)==null?void 0:l[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),n.push(a));return{languages:r,options:n}}function*fac(e,t,r){let n=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!n.has(o)){n.add(o);let l=r.find(f=>f.parsers&&Object.prototype.hasOwnProperty.call(f.parsers,o)),A=a.name;l!=null&&l.name&&(A+=` (plugin: ${l.name})`),yield{value:o,description:A}}}}function Iac(e){let t=[];for(let[r,n]of Object.entries(e)){let a={name:r,...n};Array.isArray(a.default)&&(a.default=AD(!1,a.default,-1).value),t.push(a)}return t}var hac=e=>String(e).split(/[/\\]/u).pop();function ITi(e,t){if(!t)return;let r=hac(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function mac(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Cac(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=mac(r,t.language)??ITi(r,t.physicalFile)??ITi(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var _ac=Cac,uDe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>uDe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${uDe.key(r)}: ${uDe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>uDe.value({[e]:t})},hTi=HEt(Tkr(),1),yac=(e,t,{descriptor:r})=>{let n=[`${hTi.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${hTi.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."},gDe=HEt(Tkr(),1),sRi=Symbol.for("vnopts.VALUE_NOT_EXIST"),WEt=Symbol.for("vnopts.VALUE_UNCHANGED"),mTi=" ".repeat(2),bac=(e,t,r)=>{let{text:n,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return n&&o.push(CTi(e,t,n,r.descriptor)),a&&o.push([CTi(e,t,a.title,r.descriptor)].concat(a.values.map(l=>oRi(l,r.loggerPrintWidth))).join(` -`)),aRi(o,r.loggerPrintWidth)};function CTi(e,t,r,n){return[`Invalid ${gDe.default.red(n.key(e))} value.`,`Expected ${gDe.default.blue(r)},`,`but received ${t===sRi?gDe.default.gray("nothing"):gDe.default.red(n.value(t))}.`].join(" ")}function oRi({text:e,list:t},r){let n=[];return e&&n.push(`- ${gDe.default.blue(e)}`),t&&n.push([`- ${gDe.default.blue(t.title)}:`].concat(t.values.map(a=>oRi(a,r-mTi.length).replace(/^|\n/g,`$&${mTi}`))).join(` -`)),aRi(n,r)}function aRi(e,t){if(e.length===1)return e[0];let[r,n]=e,[a,o]=e.map(l=>l.split(` -`,1)[0].length);return a>t&&a>o?n:r}var _Ti=HEt(Tkr(),1),gkr=[],yTi=[];function Eac(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,a=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-a);)n--,a--;let o=0;for(;oA?I>A?A+1:I:I>f?f+1:I;return A}var cRi=(e,t,{descriptor:r,logger:n,schemas:a})=>{let o=[`Ignored unknown option ${_Ti.default.yellow(r.pair({key:e,value:t}))}.`],l=Object.keys(a).sort().find(A=>Eac(e,A)<3);l&&o.push(`Did you mean ${_Ti.default.blue(r.key(l))}?`),n.warn(o.join(" "))},Sac=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function vac(e,t){let r=new e(t),n=Object.create(r);for(let a of Sac)a in t&&(n[a]=Bac(t[a],r,Qce.prototype[a].length));return n}var Qce=class{static create(e){return vac(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return WEt}};function Bac(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}var wac=class extends Qce{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},Tac=class extends Qce{expected(){return"anything"}validate(){return!0}},Rac=class extends Qce{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let n of e){let a=t.normalizeValidateResult(this._valueSchema.validate(n,t),n);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let n of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(n,t),n);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let n of e){let a=t.normalizeForwardResult(this._valueSchema.forward(n,t),n);r.push(...a.map(bTi))}return r}redirect(e,t){let r=[],n=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),n.push(...o.redirect.map(bTi))}return r.length===0?{redirect:n}:{redirect:n,remain:r}}overlap(e,t){return e.concat(t)}};function bTi({from:e,to:t}){return{from:[e],to:t}}var Nac=class extends Qce{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function Dac(e,t){let r=Object.create(null);for(let n of e){let a=n[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=n}return r}function kac(e,t){let r=new Map;for(let n of e){let a=n[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,n)}return r}function xac(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function Gac(e,t){let r=[],n=[];for(let a of e)t(a)?r.push(a):n.push(a);return[r,n]}function Fac(e){return e===Math.floor(e)}function Zac(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,a=["undefined","object","boolean","number","string"];return r!==n?a.indexOf(r)-a.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function Lac(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function ETi(e){return e===void 0?{}:e}function lRi(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return Vac((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(lRi)}}:{text:t}}function STi(e,t){return e===!0?!0:e===!1?{value:t}:e}function vTi(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function BTi(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function Skr(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>BTi(r,t)):[BTi(e,t)]}function wTi(e,t){let r=Skr(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function Vac(e,t){if(!e)throw new Error(t)}var Wac=class extends Qce{constructor(e){super(e),this._choices=kac(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(Zac).map(e.value),r=t.slice(0,-2),n=t.slice(-2);return{text:r.concat(n.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},Oac=class extends Qce{expected(){return"a number"}validate(e,t){return typeof e=="number"}},Pac=class extends Oac{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&Fac(e)}},TTi=class extends Qce{expected(){return"a string"}validate(e){return typeof e=="string"}},Mac=uDe,Hac=cRi,Yac=bac,Qac=yac,Xac=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:n=80,descriptor:a=Mac,unknown:o=Hac,invalid:l=Yac,deprecated:A=Qac,missing:f=()=>!1,required:I=()=>!1,preprocess:C=E=>E,postprocess:b=()=>WEt}=t||{};this._utils={descriptor:a,logger:r||{warn:()=>{}},loggerPrintWidth:n,schemas:Dac(e,"name"),normalizeDefaultResult:ETi,normalizeExpectedResult:lRi,normalizeDeprecatedResult:vTi,normalizeForwardResult:Skr,normalizeRedirectResult:wTi,normalizeValidateResult:STi},this._unknownHandler=o,this._invalidHandler=Lac(l),this._deprecatedHandler=A,this._identifyMissing=(E,N)=>!(E in N)||f(E,N),this._identifyRequired=I,this._preprocess=C,this._postprocess=b,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=xac()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],n=()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}};n();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let l=ETi(o.default(this._utils));"value"in l&&r.push({[a]:l.value})}}n();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],l=t[a],A=o.postprocess(l,this._utils);A!==WEt&&(this._applyValidation(A,a,o),t[a]=A)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:n,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of n){let l=this._utils.schemas[o],A=l.preprocess(e[o],this._utils);this._applyValidation(A,o,l);let f=({from:b,to:E})=>{r.push(typeof E=="string"?{[E]:b}:{[E.key]:E.value})},I=({value:b,redirectTo:E})=>{let N=vTi(l.deprecated(b,this._utils),A,!0);if(N!==!1)if(N===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,E,this._utils));else for(let{value:B}of N){let F={key:o,value:B};if(!this._hasDeprecationWarned(F)){let Q=typeof E=="string"?{key:E,value:B}:E;this._utils.logger.warn(this._deprecatedHandler(F,Q,this._utils))}}};Skr(l.forward(A,this._utils),A).forEach(f);let C=wTi(l.redirect(A,this._utils),A);if(C.redirect.forEach(f),"remain"in C){let b=C.remain;t[o]=o in t?l.overlap(t[o],b,this._utils):b,I({value:b})}for(let{from:b,to:E}of C.redirect)I({value:b,redirectTo:E})}for(let o of a){let l=e[o];this._applyUnknownHandler(o,l,t,(A,f)=>{r.push({[A]:f})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,sRi,this._utils)}_partitionOptionKeys(e){let[t,r]=Gac(Object.keys(e).filter(n=>!this._identifyMissing(n,e)),n=>n in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let n=STi(r.validate(e,this._utils),e);if(n!==!0)throw this._invalidHandler(t,n.value,this._utils)}_applyUnknownHandler(e,t,r,n){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let l=a[o];o in this._utils.schemas?n(o,l):r[o]=l}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==WEt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:n}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of n){let o=t.override[a];this._applyUnknownHandler(a,o,e,(l,A)=>{let f=this._utils.schemas[l];this._applyValidation(A,l,f),e[l]=A})}}}}},Akr;function Jac(e,t,{logger:r=!1,isCLI:n=!1,passThrough:a=!1,FlagSchema:o,descriptor:l}={}){if(n){if(!o)throw new Error("'FlagSchema' option is required.");if(!l)throw new Error("'descriptor' option is required.")}else l=uDe;let A=a?Array.isArray(a)?(E,N)=>a.includes(E)?{[E]:N}:void 0:(E,N)=>({[E]:N}):(E,N,B)=>{let{_:F,...Q}=B.schemas;return cRi(E,N,{...B,schemas:Q})},f=Uac(t,{isCLI:n,FlagSchema:o}),I=new Xac(f,{logger:r,unknown:A,descriptor:l}),C=r!==!1;C&&Akr&&(I._hasDeprecationWarned=Akr);let b=I.normalize(e);return C&&(Akr=I._hasDeprecationWarned),b}function Uac(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(Tac.create({name:"_"}));for(let a of e)n.push(Kac(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&n.push(wac.create({name:a.alias,sourceName:a.name}));return n}function Kac(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:a}=e,o={name:a},l,A={};switch(e.type){case"int":l=Pac,t&&(o.preprocess=Number);break;case"string":l=TTi;break;case"choice":l=Wac,o.choices=e.choices.map(f=>f!=null&&f.redirect?{...f,redirect:{to:{key:e.name,value:f.redirect}}}:f);break;case"boolean":l=Nac;break;case"flag":l=n,o.flags=r.flatMap(f=>[f.alias,f.description&&f.name,f.oppositeDescription&&`no-${f.name}`].filter(Boolean));break;case"path":l=TTi;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(f,I,C)=>e.exception(f)||I.validate(f,C):o.validate=(f,I,C)=>f===void 0||I.validate(f,C),e.redirect&&(A.redirect=f=>f?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(A.deprecated=!0),t&&!e.array){let f=o.preprocess||(I=>I);o.preprocess=(I,C,b)=>C.preprocess(f(Array.isArray(I)?AD(!1,I,-1):I),b)}return e.array?Rac.create({...t?{preprocess:f=>Array.isArray(f)?f:[f]}:{},...A,valueSchema:l.create(o)}):l.create({...o,...A})}var jac=Jac,zac=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},uRi=zac;function gRi(e,t){if(!t)throw new Error("parserName is required.");let r=uRi(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new nRi(n)}function qac(e,t){if(!t)throw new Error("astFormat is required.");let r=uRi(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new nRi(n)}function ARi({plugins:e,parser:t}){let r=gRi(e,t);return dRi(r,t)}function dRi(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function $ac(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var RTi={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function ecc(e,t={}){var r;let n={...e};if(!n.parser)if(n.filepath){if(n.parser=_ac(n,{physicalFile:n.filepath}),!n.parser)throw new fTi(`No parser could be inferred for file "${n.filepath}".`)}else throw new fTi("No parser and no file path given, couldn't infer a parser.");let a=iRi({plugins:e.plugins,showDeprecated:!0}).options,o={...RTi,...Object.fromEntries(a.filter(E=>E.default!==void 0).map(E=>[E.name,E.default]))},l=gRi(n.plugins,n.parser),A=await dRi(l,n.parser);n.astFormat=A.astFormat,n.locEnd=A.locEnd,n.locStart=A.locStart;let f=(r=l.printers)!=null&&r[A.astFormat]?l:qac(n.plugins,A.astFormat),I=await $ac(f,A.astFormat);n.printer=I;let C=f.defaultOptions?Object.fromEntries(Object.entries(f.defaultOptions).filter(([,E])=>E!==void 0)):{},b={...o,...C};for(let[E,N]of Object.entries(b))(n[E]===null||n[E]===void 0)&&(n[E]=N);return n.parser==="json"&&(n.trailingComma="none"),jac(n,a,{passThrough:Object.keys(RTi),...t})}var pDe=ecc,tcc=HEt(Usc(),1);async function rcc(e,t){let r=await ARi(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let a;try{a=await r.parse(n,t,t)}catch(o){ncc(o,e)}return{text:n,ast:a}}function ncc(e,t){let{loc:r}=e;if(r){let n=(0,tcc.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` -`+n,e.codeFrame=n,e}throw e}var rUe=rcc;async function icc(e,t,r,n,a){let{embeddedLanguageFormatting:o,printer:{embed:l,hasPrettierIgnore:A=()=>!1,getVisitorKeys:f}}=r;if(!l||o!=="auto")return;if(l.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/plugins#optional-embed");let I=jEt(l.getVisitorKeys??f),C=[];N();let b=e.stack;for(let{print:B,node:F,pathStack:Q}of C)try{e.stack=Q;let J=await B(E,t,e,r);J&&a.set(F,J)}catch(J){if(globalThis.PRETTIER_DEBUG)throw J}e.stack=b;function E(B,F){return scc(B,F,r,n)}function N(){let{node:B}=e;if(B===null||typeof B!="object"||A(e))return;for(let Q of I(B))Array.isArray(B[Q])?e.each(N,Q):e.call(N,Q);let F=l(e,r);if(F){if(typeof F=="function"){C.push({print:F,node:B,pathStack:[...e.stack]});return}a.set(B,F)}}}async function scc(e,t,r,n){let a=await pDe({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await rUe(e,a),l=await n(o,a);return PTi(l)}function occ(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var acc=occ;async function zEt(e,t){({ast:e}=await pRi(e,t));let r=new Map,n=new Yoc(e),a=dac(t),o=new Map;await icc(n,A,t,zEt,o);let l=await NTi(n,t,A,void 0,o);if(gac(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[mCe,l];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[l,mCe];return l;function A(I,C){return I===void 0||I===n?f(C):Array.isArray(I)?n.call(()=>f(C),...I):n.call(()=>f(C),I)}function f(I){a(n);let C=n.node;if(C==null)return"";let b=C&&typeof C=="object"&&I===void 0;if(b&&r.has(C))return r.get(C);let E=NTi(n,t,A,I,o);return b&&r.set(C,E),E}}function NTi(e,t,r,n,a){var o;let{node:l}=e,{printer:A}=t,f;switch((o=A.hasPrettierIgnore)!=null&&o.call(A,e)?f=acc(e,t):a.has(l)?f=a.get(l):f=A.print(e,t,r,n),l){case t.cursorNode:f=LEt(f,I=>[mCe,I,mCe]);break;case t.nodeBeforeCursor:f=LEt(f,I=>[I,mCe]);break;case t.nodeAfterCursor:f=LEt(f,I=>[mCe,I]);break}return A.printComment&&(!A.willPrintOwnComments||!A.willPrintOwnComments(e,t))&&(f=uac(e,f,t)),f}async function pRi(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,nac(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function ccc(e,t){let{cursorOffset:r,locStart:n,locEnd:a}=t,o=jEt(t.printer.getVisitorKeys),l=N=>n(N)<=r&&a(N)>=r,A=e,f=[e];for(let N of Joc(e,{getVisitorKeys:o,filter:l}))f.push(N),A=N;if(Uoc(A,{getVisitorKeys:o}))return{cursorNode:A};let I,C,b=-1,E=Number.POSITIVE_INFINITY;for(;f.length>0&&(I===void 0||C===void 0);){A=f.pop();let N=I!==void 0,B=C!==void 0;for(let F of KEt(A,{getVisitorKeys:o})){if(!N){let Q=a(F);Q<=r&&Q>b&&(I=F,b=Q)}if(!B){let Q=n(F);Q>=r&&Ql(E,f)).filter(Boolean);let I={},C=new Set(a(A));for(let E in A)!Object.prototype.hasOwnProperty.call(A,E)||o.has(E)||(C.has(E)?I[E]=l(A[E],A):I[E]=A[E]);let b=r(A,I,f);if(b!==null)return b??I}}var gcc=ucc,Acc=(e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return n}return-1}},dcc=Acc,pcc=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function fcc(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(a=>fRi.has(a.type)&&n.has(a))}function DTi(e){let t=dcc(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function Icc(e,t,{locStart:r,locEnd:n}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let l=r(e.node);for(let f of DTi(t.parentNodes))if(r(f)>=l)o=f;else break;let A=n(t.node);for(let f of DTi(e.parentNodes)){if(n(f)<=A)a=f;else break;if(a===o)break}return{startNode:a,endNode:o}}function vkr(e,t,r,n,a=[],o){let{locStart:l,locEnd:A}=r,f=l(e),I=A(e);if(!(t>I||tn);let A=e.slice(n,a).search(/\S/u),f=A===-1;if(!f)for(n+=A;a>n&&!/\S/u.test(e[a-1]);--a);let I=vkr(r,n,t,(N,B)=>kTi(t,N,B),[],"rangeStart"),C=f?I:vkr(r,a,t,N=>kTi(t,N),[],"rangeEnd");if(!I||!C)return{rangeStart:0,rangeEnd:0};let b,E;if(pcc(t)){let N=fcc(I,C);b=N,E=N}else({startNode:b,endNode:E}=Icc(I,C,t));return{rangeStart:Math.min(o(b),o(E)),rangeEnd:Math.max(l(b),l(E))}}var IRi="\uFEFF",xTi=Symbol("cursor");async function hRi(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:a}=await rUe(e,t);t.cursorOffset>=0&&(t={...t,...lcc(n,t)});let o=await zEt(n,t,r);r>0&&(o=UTi([CCe,o],r,t.tabWidth));let l=UEt(o,t);if(r>0){let f=l.formatted.trim();l.cursorNodeStart!==void 0&&(l.cursorNodeStart-=l.formatted.indexOf(f),l.cursorNodeStart<0&&(l.cursorNodeStart=0,l.cursorNodeText=l.cursorNodeText.trimStart()),l.cursorNodeStart+l.cursorNodeText.length>f.length&&(l.cursorNodeText=l.cursorNodeText.trimEnd())),l.formatted=f+Nkr(t.endOfLine)}let A=t[Symbol.for("comments")];if(t.cursorOffset>=0){let f,I,C,b;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&l.cursorNodeText)if(C=l.cursorNodeStart,b=l.cursorNodeText,t.cursorNode)f=t.locStart(t.cursorNode),I=a.slice(f,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");f=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let J=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;I=a.slice(f,J)}else f=0,I=a,C=0,b=l.formatted;let E=t.cursorOffset-f;if(I===b)return{formatted:l.formatted,cursorOffset:C+E,comments:A};let N=I.split("");N.splice(E,0,xTi);let B=b.split(""),F=roc(N,B),Q=C;for(let J of F)if(J.removed){if(J.value.includes(xTi))break}else Q+=J.count;return{formatted:l.formatted,cursorOffset:Q,comments:A}}return{formatted:l.formatted,cursorOffset:-1,comments:A}}async function _cc(e,t){let{ast:r,text:n}=await rUe(e,t),{rangeStart:a,rangeEnd:o}=Ccc(n,t,r),l=n.slice(a,o),A=Math.min(a,n.lastIndexOf(` -`,a)+1),f=n.slice(A,a).match(/^\s*/u)[0],I=Zkr(f,t.tabWidth),C=await hRi(l,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},I),b=C.formatted.trimEnd(),{cursorOffset:E}=t;E>o?E+=b.length-l.length:C.cursorOffset>=0&&(E=C.cursorOffset+a);let N=n.slice(0,a)+b+n.slice(o);if(t.endOfLine!=="lf"){let B=Nkr(t.endOfLine);E>=0&&B===`\r -`&&(E+=WTi(N.slice(0,E),` -`)),N=YEt(!1,N,` -`,B)}return{formatted:N,cursorOffset:E,comments:C.comments}}function dkr(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function GTi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a}=t;return r=dkr(e,r,-1),n=dkr(e,n,0),a=dkr(e,a,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:a}}function mRi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o}=GTi(e,t),l=e.charAt(0)===IRi;if(l&&(e=e.slice(1),r--,n--,a--),o==="auto"&&(o=noc(e)),e.includes("\r")){let A=f=>WTi(e.slice(0,Math.max(f,0)),`\r -`);r-=A(r),n-=A(n),a-=A(a),e=ioc(e)}return{hasBOM:l,text:e,options:GTi(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o})}}async function FTi(e,t){let r=await ARi(t);return!r.hasPragma||r.hasPragma(e)}async function CRi(e,t){let{hasBOM:r,text:n,options:a}=mRi(e,await pDe(t));if(a.rangeStart>=a.rangeEnd&&n!==""||a.requirePragma&&!await FTi(n,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function ycc(e,t,r){let{text:n,options:a}=mRi(e,await pDe(t)),o=await rUe(n,a);return r&&(r.preprocessForPrint&&(o.ast=await pRi(o.ast,a)),r.massage&&(o.ast=gcc(o.ast,a))),o}async function bcc(e,t){t=await pDe(t);let r=await zEt(e,t);return UEt(r,t)}async function Ecc(e,t){let r=xoc(e),{formatted:n}=await CRi(r,{...t,parser:"__js_expression"});return n}async function Scc(e,t){t=await pDe(t);let{ast:r}=await rUe(e,t);return zEt(r,t)}async function vcc(e,t){return UEt(e,await pDe(t))}var _Ri={};wkr(_Ri,{builders:()=>Bcc,printer:()=>wcc,utils:()=>Tcc});var Bcc={join:JTi,line:QTi,softline:Doc,hardline:CCe,literalline:XTi,group:HTi,conditionalGroup:voc,fill:Boc,lineSuffix:mkr,lineSuffixBoundary:Roc,cursor:mCe,breakParent:JEt,ifBreak:woc,trim:Noc,indent:MEt,indentIfBreak:Toc,align:dDe,addAlignmentToDoc:UTi,markAsRoot:Eoc,dedentToRoot:boc,dedent:Soc,hardlineWithoutBreakParent:Gkr,literallineWithoutBreakParent:YTi,label:koc,concat:e=>e},wcc={printDocToString:UEt},Tcc={willBreak:Aoc,traverseDoc:Dkr,findInDoc:kkr,mapDoc:XEt,removeLines:foc,stripTrailingHardline:PTi,replaceEndOfLine:moc,canBreak:_oc},Rcc="3.5.3",yRi={};wkr(yRi,{addDanglingComment:()=>ICe,addLeadingComment:()=>cDe,addTrailingComment:()=>lDe,getAlignmentSize:()=>Zkr,getIndentSize:()=>Fcc,getMaxContinuousCount:()=>Vcc,getNextNonSpaceNonCommentCharacter:()=>Occ,getNextNonSpaceNonCommentCharacterIndex:()=>jcc,getPreferredQuote:()=>Mcc,getStringWidth:()=>Fkr,hasNewline:()=>Hce,hasNewlineInRange:()=>Ycc,hasSpaces:()=>Xcc,isNextLineEmpty:()=>elc,isNextLineEmptyAfterIndex:()=>Hkr,isPreviousLineEmpty:()=>qcc,makeString:()=>Ucc,skip:()=>tUe,skipEverythingButNewLine:()=>qTi,skipInlineComment:()=>Okr,skipNewline:()=>_Ce,skipSpaces:()=>Yce,skipToLineEnd:()=>zTi,skipTrailingComment:()=>Pkr,skipWhitespace:()=>Koc});function Ncc(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(n,a.length/t.length),0)}var Vcc=Lcc;function Wcc(e,t){let r=Mkr(e,t);return r===!1?"":e.charAt(r)}var Occ=Wcc,ZEt="'",ZTi='"';function Pcc(e,t){let r=t===!0||t===ZEt?ZEt:ZTi,n=r===ZEt?ZTi:ZEt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var Mcc=Pcc;function Hcc(e,t,r){for(let n=t;nl===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var Ucc=Jcc;function Kcc(e,t,r){return Mkr(e,r(t))}function jcc(e,t){return arguments.length===2||typeof t=="number"?Mkr(e,t):Kcc(...arguments)}function zcc(e,t,r){return Wkr(e,r(t))}function qcc(e,t){return arguments.length===2||typeof t=="number"?Wkr(e,t):zcc(...arguments)}function $cc(e,t,r){return Hkr(e,r(t))}function elc(e,t){return arguments.length===2||typeof t=="number"?Hkr(e,t):$cc(...arguments)}function hCe(e,t=1){return async(...r)=>{let n=r[t]??{},a=n.plugins??[];return r[t]={...n,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}var bRi=hCe(CRi);async function qEt(e,t){let{formatted:r}=await bRi(e,{...t,cursorOffset:-1});return r}async function tlc(e,t){return await qEt(e,t)===e}var rlc=hCe(iRi,0),nlc={parse:hCe(ycc),formatAST:hCe(bcc),formatDoc:hCe(Ecc),printToDoc:hCe(Scc),printDocToString:hCe(vcc)};var HNi=Nt(xHe(),1);var aUe=Nt(SRi(),1);var ilc=/^(?:( )+|\t+)/,nUe="space",BRi="tab";function vRi(e,t){let r=new Map,n=0,a,o;for(let l of e.split(/\n/g)){if(!l)continue;let A,f,I,C,b,E=l.match(ilc);if(E===null)n=0,a="";else{if(A=E[0].length,f=E[1]?nUe:BRi,t&&f===nUe&&A===1)continue;f!==a&&(n=0),a=f,I=1,C=0;let N=A-n;if(n=A,N===0)I=0,C=1;else{let B=N>0?N:-N;o=slc(f,B)}b=r.get(o),b=b===void 0?[1,0]:[b[0]+I,b[1]+C],r.set(o,b)}}return r}function slc(e,t){return(e===nUe?"s":"t")+String(t)}function olc(e){let r=e[0]==="s"?nUe:BRi,n=Number(e.slice(1));return{type:r,amount:n}}function alc(e){let t,r=0,n=0;for(let[a,[o,l]]of e)(o>r||o===r&&l>n)&&(r=o,n=l,t=a);return t}function clc(e,t){return(e===nUe?" ":" ").repeat(t)}function Ykr(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=vRi(e,!0);t.size===0&&(t=vRi(e,!1));let r=alc(t),n,a=0,o="";return r!==void 0&&({type:n,amount:a}=olc(r),o=clc(n,a)),{amount:a,type:n,indent:o}}function llc(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return;let r=t.filter(a=>a===`\r +in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"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."}]}};function fRi({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),n=[];for(let a of yac(Object.assign({},...e.map(({options:o})=>o),Cac)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,..._ac(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var l;return((l=o.defaultOptions)==null?void 0:l[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),n.push(a));return{languages:r,options:n}}function*_ac(e,t,r){let n=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!n.has(o)){n.add(o);let l=r.find(f=>f.parsers&&Object.prototype.hasOwnProperty.call(f.parsers,o)),A=a.name;l!=null&&l.name&&(A+=` (plugin: ${l.name})`),yield{value:o,description:A}}}}function yac(e){let t=[];for(let[r,n]of Object.entries(e)){let a={name:r,...n};Array.isArray(a.default)&&(a.default=dD(!1,a.default,-1).value),t.push(a)}return t}var bac=e=>String(e).split(/[/\\]/u).pop();function wTi(e,t){if(!t)return;let r=bac(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function Eac(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Sac(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=Eac(r,t.language)??wTi(r,t.physicalFile)??wTi(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var vac=Sac,cDe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>cDe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${cDe.key(r)}: ${cDe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>cDe.value({[e]:t})},TTi=PEt(Nkr(),1),Bac=(e,t,{descriptor:r})=>{let n=[`${TTi.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${TTi.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."},lDe=PEt(Nkr(),1),IRi=Symbol.for("vnopts.VALUE_NOT_EXIST"),LEt=Symbol.for("vnopts.VALUE_UNCHANGED"),RTi=" ".repeat(2),wac=(e,t,r)=>{let{text:n,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return n&&o.push(NTi(e,t,n,r.descriptor)),a&&o.push([NTi(e,t,a.title,r.descriptor)].concat(a.values.map(l=>hRi(l,r.loggerPrintWidth))).join(` +`)),mRi(o,r.loggerPrintWidth)};function NTi(e,t,r,n){return[`Invalid ${lDe.default.red(n.key(e))} value.`,`Expected ${lDe.default.blue(r)},`,`but received ${t===IRi?lDe.default.gray("nothing"):lDe.default.red(n.value(t))}.`].join(" ")}function hRi({text:e,list:t},r){let n=[];return e&&n.push(`- ${lDe.default.blue(e)}`),t&&n.push([`- ${lDe.default.blue(t.title)}:`].concat(t.values.map(a=>hRi(a,r-RTi.length).replace(/^|\n/g,`$&${RTi}`))).join(` +`)),mRi(n,r)}function mRi(e,t){if(e.length===1)return e[0];let[r,n]=e,[a,o]=e.map(l=>l.split(` +`,1)[0].length);return a>t&&a>o?n:r}var DTi=PEt(Nkr(),1),dkr=[],kTi=[];function Tac(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,a=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-a);)n--,a--;let o=0;for(;oA?I>A?A+1:I:I>f?f+1:I;return A}var CRi=(e,t,{descriptor:r,logger:n,schemas:a})=>{let o=[`Ignored unknown option ${DTi.default.yellow(r.pair({key:e,value:t}))}.`],l=Object.keys(a).sort().find(A=>Tac(e,A)<3);l&&o.push(`Did you mean ${DTi.default.blue(r.key(l))}?`),n.warn(o.join(" "))},Rac=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function Nac(e,t){let r=new e(t),n=Object.create(r);for(let a of Rac)a in t&&(n[a]=Dac(t[a],r,Xce.prototype[a].length));return n}var Xce=class{static create(e){return Nac(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return LEt}};function Dac(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}var kac=class extends Xce{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},xac=class extends Xce{expected(){return"anything"}validate(){return!0}},Gac=class extends Xce{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let n of e){let a=t.normalizeValidateResult(this._valueSchema.validate(n,t),n);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let n of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(n,t),n);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let n of e){let a=t.normalizeForwardResult(this._valueSchema.forward(n,t),n);r.push(...a.map(xTi))}return r}redirect(e,t){let r=[],n=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),n.push(...o.redirect.map(xTi))}return r.length===0?{redirect:n}:{redirect:n,remain:r}}overlap(e,t){return e.concat(t)}};function xTi({from:e,to:t}){return{from:[e],to:t}}var Fac=class extends Xce{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function Zac(e,t){let r=Object.create(null);for(let n of e){let a=n[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=n}return r}function Lac(e,t){let r=new Map;for(let n of e){let a=n[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,n)}return r}function Vac(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function Wac(e,t){let r=[],n=[];for(let a of e)t(a)?r.push(a):n.push(a);return[r,n]}function Oac(e){return e===Math.floor(e)}function Pac(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,a=["undefined","object","boolean","number","string"];return r!==n?a.indexOf(r)-a.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function Mac(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function GTi(e){return e===void 0?{}:e}function _Ri(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return Hac((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(_Ri)}}:{text:t}}function FTi(e,t){return e===!0?!0:e===!1?{value:t}:e}function ZTi(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function LTi(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function Bkr(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>LTi(r,t)):[LTi(e,t)]}function VTi(e,t){let r=Bkr(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function Hac(e,t){if(!e)throw new Error(t)}var Yac=class extends Xce{constructor(e){super(e),this._choices=Lac(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(Pac).map(e.value),r=t.slice(0,-2),n=t.slice(-2);return{text:r.concat(n.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},Qac=class extends Xce{expected(){return"a number"}validate(e,t){return typeof e=="number"}},Xac=class extends Qac{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&Oac(e)}},WTi=class extends Xce{expected(){return"a string"}validate(e){return typeof e=="string"}},Jac=cDe,Uac=CRi,Kac=wac,jac=Bac,zac=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:n=80,descriptor:a=Jac,unknown:o=Uac,invalid:l=Kac,deprecated:A=jac,missing:f=()=>!1,required:I=()=>!1,preprocess:C=E=>E,postprocess:b=()=>LEt}=t||{};this._utils={descriptor:a,logger:r||{warn:()=>{}},loggerPrintWidth:n,schemas:Zac(e,"name"),normalizeDefaultResult:GTi,normalizeExpectedResult:_Ri,normalizeDeprecatedResult:ZTi,normalizeForwardResult:Bkr,normalizeRedirectResult:VTi,normalizeValidateResult:FTi},this._unknownHandler=o,this._invalidHandler=Mac(l),this._deprecatedHandler=A,this._identifyMissing=(E,N)=>!(E in N)||f(E,N),this._identifyRequired=I,this._preprocess=C,this._postprocess=b,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=Vac()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],n=()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}};n();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let l=GTi(o.default(this._utils));"value"in l&&r.push({[a]:l.value})}}n();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],l=t[a],A=o.postprocess(l,this._utils);A!==LEt&&(this._applyValidation(A,a,o),t[a]=A)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:n,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of n){let l=this._utils.schemas[o],A=l.preprocess(e[o],this._utils);this._applyValidation(A,o,l);let f=({from:b,to:E})=>{r.push(typeof E=="string"?{[E]:b}:{[E.key]:E.value})},I=({value:b,redirectTo:E})=>{let N=ZTi(l.deprecated(b,this._utils),A,!0);if(N!==!1)if(N===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,E,this._utils));else for(let{value:B}of N){let F={key:o,value:B};if(!this._hasDeprecationWarned(F)){let Q=typeof E=="string"?{key:E,value:B}:E;this._utils.logger.warn(this._deprecatedHandler(F,Q,this._utils))}}};Bkr(l.forward(A,this._utils),A).forEach(f);let C=VTi(l.redirect(A,this._utils),A);if(C.redirect.forEach(f),"remain"in C){let b=C.remain;t[o]=o in t?l.overlap(t[o],b,this._utils):b,I({value:b})}for(let{from:b,to:E}of C.redirect)I({value:b,redirectTo:E})}for(let o of a){let l=e[o];this._applyUnknownHandler(o,l,t,(A,f)=>{r.push({[A]:f})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,IRi,this._utils)}_partitionOptionKeys(e){let[t,r]=Wac(Object.keys(e).filter(n=>!this._identifyMissing(n,e)),n=>n in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let n=FTi(r.validate(e,this._utils),e);if(n!==!0)throw this._invalidHandler(t,n.value,this._utils)}_applyUnknownHandler(e,t,r,n){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let l=a[o];o in this._utils.schemas?n(o,l):r[o]=l}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==LEt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:n}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of n){let o=t.override[a];this._applyUnknownHandler(a,o,e,(l,A)=>{let f=this._utils.schemas[l];this._applyValidation(A,l,f),e[l]=A})}}}}},pkr;function qac(e,t,{logger:r=!1,isCLI:n=!1,passThrough:a=!1,FlagSchema:o,descriptor:l}={}){if(n){if(!o)throw new Error("'FlagSchema' option is required.");if(!l)throw new Error("'descriptor' option is required.")}else l=cDe;let A=a?Array.isArray(a)?(E,N)=>a.includes(E)?{[E]:N}:void 0:(E,N)=>({[E]:N}):(E,N,B)=>{let{_:F,...Q}=B.schemas;return CRi(E,N,{...B,schemas:Q})},f=$ac(t,{isCLI:n,FlagSchema:o}),I=new zac(f,{logger:r,unknown:A,descriptor:l}),C=r!==!1;C&&pkr&&(I._hasDeprecationWarned=pkr);let b=I.normalize(e);return C&&(pkr=I._hasDeprecationWarned),b}function $ac(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(xac.create({name:"_"}));for(let a of e)n.push(ecc(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&n.push(kac.create({name:a.alias,sourceName:a.name}));return n}function ecc(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:a}=e,o={name:a},l,A={};switch(e.type){case"int":l=Xac,t&&(o.preprocess=Number);break;case"string":l=WTi;break;case"choice":l=Yac,o.choices=e.choices.map(f=>f!=null&&f.redirect?{...f,redirect:{to:{key:e.name,value:f.redirect}}}:f);break;case"boolean":l=Fac;break;case"flag":l=n,o.flags=r.flatMap(f=>[f.alias,f.description&&f.name,f.oppositeDescription&&`no-${f.name}`].filter(Boolean));break;case"path":l=WTi;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(f,I,C)=>e.exception(f)||I.validate(f,C):o.validate=(f,I,C)=>f===void 0||I.validate(f,C),e.redirect&&(A.redirect=f=>f?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(A.deprecated=!0),t&&!e.array){let f=o.preprocess||(I=>I);o.preprocess=(I,C,b)=>C.preprocess(f(Array.isArray(I)?dD(!1,I,-1):I),b)}return e.array?Gac.create({...t?{preprocess:f=>Array.isArray(f)?f:[f]}:{},...A,valueSchema:l.create(o)}):l.create({...o,...A})}var tcc=qac,rcc=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},yRi=rcc;function bRi(e,t){if(!t)throw new Error("parserName is required.");let r=yRi(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new pRi(n)}function ncc(e,t){if(!t)throw new Error("astFormat is required.");let r=yRi(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new pRi(n)}function ERi({plugins:e,parser:t}){let r=bRi(e,t);return SRi(r,t)}function SRi(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function icc(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var OTi={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function scc(e,t={}){var r;let n={...e};if(!n.parser)if(n.filepath){if(n.parser=vac(n,{physicalFile:n.filepath}),!n.parser)throw new BTi(`No parser could be inferred for file "${n.filepath}".`)}else throw new BTi("No parser and no file path given, couldn't infer a parser.");let a=fRi({plugins:e.plugins,showDeprecated:!0}).options,o={...OTi,...Object.fromEntries(a.filter(E=>E.default!==void 0).map(E=>[E.name,E.default]))},l=bRi(n.plugins,n.parser),A=await SRi(l,n.parser);n.astFormat=A.astFormat,n.locEnd=A.locEnd,n.locStart=A.locStart;let f=(r=l.printers)!=null&&r[A.astFormat]?l:ncc(n.plugins,A.astFormat),I=await icc(f,A.astFormat);n.printer=I;let C=f.defaultOptions?Object.fromEntries(Object.entries(f.defaultOptions).filter(([,E])=>E!==void 0)):{},b={...o,...C};for(let[E,N]of Object.entries(b))(n[E]===null||n[E]===void 0)&&(n[E]=N);return n.parser==="json"&&(n.trailingComma="none"),tcc(n,a,{passThrough:Object.keys(OTi),...t})}var ADe=scc,occ=PEt($sc(),1);async function acc(e,t){let r=await ERi(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let a;try{a=await r.parse(n,t,t)}catch(o){ccc(o,e)}return{text:n,ast:a}}function ccc(e,t){let{loc:r}=e;if(r){let n=(0,occ.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` +`+n,e.codeFrame=n,e}throw e}var iUe=acc;async function lcc(e,t,r,n,a){let{embeddedLanguageFormatting:o,printer:{embed:l,hasPrettierIgnore:A=()=>!1,getVisitorKeys:f}}=r;if(!l||o!=="auto")return;if(l.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/plugins#optional-embed");let I=UEt(l.getVisitorKeys??f),C=[];N();let b=e.stack;for(let{print:B,node:F,pathStack:Q}of C)try{e.stack=Q;let J=await B(E,t,e,r);J&&a.set(F,J)}catch(J){if(globalThis.PRETTIER_DEBUG)throw J}e.stack=b;function E(B,F){return ucc(B,F,r,n)}function N(){let{node:B}=e;if(B===null||typeof B!="object"||A(e))return;for(let Q of I(B))Array.isArray(B[Q])?e.each(N,Q):e.call(N,Q);let F=l(e,r);if(F){if(typeof F=="function"){C.push({print:F,node:B,pathStack:[...e.stack]});return}a.set(B,F)}}}async function ucc(e,t,r,n){let a=await ADe({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await iUe(e,a),l=await n(o,a);return qTi(l)}function gcc(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var Acc=gcc;async function KEt(e,t){({ast:e}=await vRi(e,t));let r=new Map,n=new Koc(e),a=mac(t),o=new Map;await lcc(n,A,t,KEt,o);let l=await PTi(n,t,A,void 0,o);if(Iac(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[CCe,l];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[l,CCe];return l;function A(I,C){return I===void 0||I===n?f(C):Array.isArray(I)?n.call(()=>f(C),...I):n.call(()=>f(C),I)}function f(I){a(n);let C=n.node;if(C==null)return"";let b=C&&typeof C=="object"&&I===void 0;if(b&&r.has(C))return r.get(C);let E=PTi(n,t,A,I,o);return b&&r.set(C,E),E}}function PTi(e,t,r,n,a){var o;let{node:l}=e,{printer:A}=t,f;switch((o=A.hasPrettierIgnore)!=null&&o.call(A,e)?f=Acc(e,t):a.has(l)?f=a.get(l):f=A.print(e,t,r,n),l){case t.cursorNode:f=FEt(f,I=>[CCe,I,CCe]);break;case t.nodeBeforeCursor:f=FEt(f,I=>[I,CCe]);break;case t.nodeAfterCursor:f=FEt(f,I=>[CCe,I]);break}return A.printComment&&(!A.willPrintOwnComments||!A.willPrintOwnComments(e,t))&&(f=fac(e,f,t)),f}async function vRi(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,cac(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function dcc(e,t){let{cursorOffset:r,locStart:n,locEnd:a}=t,o=UEt(t.printer.getVisitorKeys),l=N=>n(N)<=r&&a(N)>=r,A=e,f=[e];for(let N of qoc(e,{getVisitorKeys:o,filter:l}))f.push(N),A=N;if($oc(A,{getVisitorKeys:o}))return{cursorNode:A};let I,C,b=-1,E=Number.POSITIVE_INFINITY;for(;f.length>0&&(I===void 0||C===void 0);){A=f.pop();let N=I!==void 0,B=C!==void 0;for(let F of JEt(A,{getVisitorKeys:o})){if(!N){let Q=a(F);Q<=r&&Q>b&&(I=F,b=Q)}if(!B){let Q=n(F);Q>=r&&Ql(E,f)).filter(Boolean);let I={},C=new Set(a(A));for(let E in A)!Object.prototype.hasOwnProperty.call(A,E)||o.has(E)||(C.has(E)?I[E]=l(A[E],A):I[E]=A[E]);let b=r(A,I,f);if(b!==null)return b??I}}var Icc=fcc,hcc=(e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return n}return-1}},mcc=hcc,Ccc=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function _cc(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(a=>BRi.has(a.type)&&n.has(a))}function MTi(e){let t=mcc(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function ycc(e,t,{locStart:r,locEnd:n}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let l=r(e.node);for(let f of MTi(t.parentNodes))if(r(f)>=l)o=f;else break;let A=n(t.node);for(let f of MTi(e.parentNodes)){if(n(f)<=A)a=f;else break;if(a===o)break}return{startNode:a,endNode:o}}function wkr(e,t,r,n,a=[],o){let{locStart:l,locEnd:A}=r,f=l(e),I=A(e);if(!(t>I||tn);let A=e.slice(n,a).search(/\S/u),f=A===-1;if(!f)for(n+=A;a>n&&!/\S/u.test(e[a-1]);--a);let I=wkr(r,n,t,(N,B)=>HTi(t,N,B),[],"rangeStart"),C=f?I:wkr(r,a,t,N=>HTi(t,N),[],"rangeEnd");if(!I||!C)return{rangeStart:0,rangeEnd:0};let b,E;if(Ccc(t)){let N=_cc(I,C);b=N,E=N}else({startNode:b,endNode:E}=ycc(I,C,t));return{rangeStart:Math.min(o(b),o(E)),rangeEnd:Math.max(l(b),l(E))}}var wRi="\uFEFF",YTi=Symbol("cursor");async function TRi(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:a}=await iUe(e,t);t.cursorOffset>=0&&(t={...t,...pcc(n,t)});let o=await KEt(n,t,r);r>0&&(o=sRi([_Ce,o],r,t.tabWidth));let l=XEt(o,t);if(r>0){let f=l.formatted.trim();l.cursorNodeStart!==void 0&&(l.cursorNodeStart-=l.formatted.indexOf(f),l.cursorNodeStart<0&&(l.cursorNodeStart=0,l.cursorNodeText=l.cursorNodeText.trimStart()),l.cursorNodeStart+l.cursorNodeText.length>f.length&&(l.cursorNodeText=l.cursorNodeText.trimEnd())),l.formatted=f+kkr(t.endOfLine)}let A=t[Symbol.for("comments")];if(t.cursorOffset>=0){let f,I,C,b;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&l.cursorNodeText)if(C=l.cursorNodeStart,b=l.cursorNodeText,t.cursorNode)f=t.locStart(t.cursorNode),I=a.slice(f,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");f=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let J=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;I=a.slice(f,J)}else f=0,I=a,C=0,b=l.formatted;let E=t.cursorOffset-f;if(I===b)return{formatted:l.formatted,cursorOffset:C+E,comments:A};let N=I.split("");N.splice(E,0,YTi);let B=b.split(""),F=aoc(N,B),Q=C;for(let J of F)if(J.removed){if(J.value.includes(YTi))break}else Q+=J.count;return{formatted:l.formatted,cursorOffset:Q,comments:A}}return{formatted:l.formatted,cursorOffset:-1,comments:A}}async function vcc(e,t){let{ast:r,text:n}=await iUe(e,t),{rangeStart:a,rangeEnd:o}=Scc(n,t,r),l=n.slice(a,o),A=Math.min(a,n.lastIndexOf(` +`,a)+1),f=n.slice(A,a).match(/^\s*/u)[0],I=Vkr(f,t.tabWidth),C=await TRi(l,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},I),b=C.formatted.trimEnd(),{cursorOffset:E}=t;E>o?E+=b.length-l.length:C.cursorOffset>=0&&(E=C.cursorOffset+a);let N=n.slice(0,a)+b+n.slice(o);if(t.endOfLine!=="lf"){let B=kkr(t.endOfLine);E>=0&&B===`\r +`&&(E+=jTi(N.slice(0,E),` +`)),N=MEt(!1,N,` +`,B)}return{formatted:N,cursorOffset:E,comments:C.comments}}function fkr(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function QTi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a}=t;return r=fkr(e,r,-1),n=fkr(e,n,0),a=fkr(e,a,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:a}}function RRi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o}=QTi(e,t),l=e.charAt(0)===wRi;if(l&&(e=e.slice(1),r--,n--,a--),o==="auto"&&(o=coc(e)),e.includes("\r")){let A=f=>jTi(e.slice(0,Math.max(f,0)),`\r +`);r-=A(r),n-=A(n),a-=A(a),e=loc(e)}return{hasBOM:l,text:e,options:QTi(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o})}}async function XTi(e,t){let r=await ERi(t);return!r.hasPragma||r.hasPragma(e)}async function NRi(e,t){let{hasBOM:r,text:n,options:a}=RRi(e,await ADe(t));if(a.rangeStart>=a.rangeEnd&&n!==""||a.requirePragma&&!await XTi(n,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function Bcc(e,t,r){let{text:n,options:a}=RRi(e,await ADe(t)),o=await iUe(n,a);return r&&(r.preprocessForPrint&&(o.ast=await vRi(o.ast,a)),r.massage&&(o.ast=Icc(o.ast,a))),o}async function wcc(e,t){t=await ADe(t);let r=await KEt(e,t);return XEt(r,t)}async function Tcc(e,t){let r=Voc(e),{formatted:n}=await NRi(r,{...t,parser:"__js_expression"});return n}async function Rcc(e,t){t=await ADe(t);let{ast:r}=await iUe(e,t);return KEt(r,t)}async function Ncc(e,t){return XEt(e,await ADe(t))}var DRi={};Rkr(DRi,{builders:()=>Dcc,printer:()=>kcc,utils:()=>xcc});var Dcc={join:iRi,line:rRi,softline:Zoc,hardline:_Ce,literalline:nRi,group:eRi,conditionalGroup:Noc,fill:Doc,lineSuffix:_kr,lineSuffixBoundary:Goc,cursor:CCe,breakParent:QEt,ifBreak:koc,trim:Foc,indent:OEt,indentIfBreak:xoc,align:gDe,addAlignmentToDoc:sRi,markAsRoot:Toc,dedentToRoot:woc,dedent:Roc,hardlineWithoutBreakParent:Zkr,literallineWithoutBreakParent:tRi,label:Loc,concat:e=>e},kcc={printDocToString:XEt},xcc={willBreak:hoc,traverseDoc:xkr,findInDoc:Gkr,mapDoc:YEt,removeLines:_oc,stripTrailingHardline:qTi,replaceEndOfLine:Eoc,canBreak:voc},Gcc="3.5.3",kRi={};Rkr(kRi,{addDanglingComment:()=>hCe,addLeadingComment:()=>oDe,addTrailingComment:()=>aDe,getAlignmentSize:()=>Vkr,getIndentSize:()=>Occ,getMaxContinuousCount:()=>Hcc,getNextNonSpaceNonCommentCharacter:()=>Qcc,getNextNonSpaceNonCommentCharacterIndex:()=>tlc,getPreferredQuote:()=>Jcc,getStringWidth:()=>Lkr,hasNewline:()=>Yce,hasNewlineInRange:()=>Kcc,hasSpaces:()=>zcc,isNextLineEmpty:()=>slc,isNextLineEmptyAfterIndex:()=>Qkr,isPreviousLineEmpty:()=>nlc,makeString:()=>$cc,skip:()=>nUe,skipEverythingButNewLine:()=>lRi,skipInlineComment:()=>Mkr,skipNewline:()=>yCe,skipSpaces:()=>Qce,skipToLineEnd:()=>cRi,skipTrailingComment:()=>Hkr,skipWhitespace:()=>eac});function Fcc(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(n,a.length/t.length),0)}var Hcc=Mcc;function Ycc(e,t){let r=Ykr(e,t);return r===!1?"":e.charAt(r)}var Qcc=Ycc,GEt="'",JTi='"';function Xcc(e,t){let r=t===!0||t===GEt?GEt:JTi,n=r===GEt?JTi:GEt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var Jcc=Xcc;function Ucc(e,t,r){for(let n=t;nl===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var $cc=qcc;function elc(e,t,r){return Ykr(e,r(t))}function tlc(e,t){return arguments.length===2||typeof t=="number"?Ykr(e,t):elc(...arguments)}function rlc(e,t,r){return Pkr(e,r(t))}function nlc(e,t){return arguments.length===2||typeof t=="number"?Pkr(e,t):rlc(...arguments)}function ilc(e,t,r){return Qkr(e,r(t))}function slc(e,t){return arguments.length===2||typeof t=="number"?Qkr(e,t):ilc(...arguments)}function mCe(e,t=1){return async(...r)=>{let n=r[t]??{},a=n.plugins??[];return r[t]={...n,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}var xRi=mCe(NRi);async function jEt(e,t){let{formatted:r}=await xRi(e,{...t,cursorOffset:-1});return r}async function olc(e,t){return await jEt(e,t)===e}var alc=mCe(fRi,0),clc={parse:mCe(Bcc),formatAST:mCe(wcc),formatDoc:mCe(Tcc),printToDoc:mCe(Rcc),printDocToString:mCe(Ncc)};var eDi=xt(kHe(),1);var lUe=xt(FRi(),1);var llc=/^(?:( )+|\t+)/,sUe="space",LRi="tab";function ZRi(e,t){let r=new Map,n=0,a,o;for(let l of e.split(/\n/g)){if(!l)continue;let A,f,I,C,b,E=l.match(llc);if(E===null)n=0,a="";else{if(A=E[0].length,f=E[1]?sUe:LRi,t&&f===sUe&&A===1)continue;f!==a&&(n=0),a=f,I=1,C=0;let N=A-n;if(n=A,N===0)I=0,C=1;else{let B=N>0?N:-N;o=ulc(f,B)}b=r.get(o),b=b===void 0?[1,0]:[b[0]+I,b[1]+C],r.set(o,b)}}return r}function ulc(e,t){return(e===sUe?"s":"t")+String(t)}function glc(e){let r=e[0]==="s"?sUe:LRi,n=Number(e.slice(1));return{type:r,amount:n}}function Alc(e){let t,r=0,n=0;for(let[a,[o,l]]of e)(o>r||o===r&&l>n)&&(r=o,n=l,t=a);return t}function dlc(e,t){return(e===sUe?" ":" ").repeat(t)}function Xkr(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=ZRi(e,!0);t.size===0&&(t=ZRi(e,!1));let r=Alc(t),n,a=0,o="";return r!==void 0&&({type:n,amount:a}=glc(r),o=dlc(n,a)),{amount:a,type:n,indent:o}}function plc(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return;let r=t.filter(a=>a===`\r `).length,n=t.length-r;return r>n?`\r `:` -`}function wRi(e){return typeof e=="string"&&llc(e)||` -`}function Qkr(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var Ukr=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t)),oUe=e=>(t,...r)=>e.reduce((n,a)=>a(n,...r),t),sUe=e=>t=>Array.isArray(t)?e(t):t,NRi=e=>t=>Array.isArray(t)&&t.every(r=>typeof r=="string")?e(t):t,iUe=NRi(e=>[...new Set(e)]),ulc=NRi(e=>[...e].sort()),$Et=oUe([iUe,ulc]),cUe=e=>(t,...r)=>Qkr(t)?e(t,...r):t,pH=(e,t)=>{let r=cUe(n=>(t&&(n=Object.fromEntries(Object.entries(n).map(([a,o])=>[a,r(o)]))),(0,aUe.default)(n,e)));return r},Mm=pH(),Xkr=pH(["type","url"]),Jkr=pH(["name","email","url"]),glc=pH(["lib","bin","man","doc","example","test"]),ete=(e,t)=>(r,...n)=>Ukr(r,e)?{...r,[e]:t(r[e],...n)}:r,Alc=["files","excludedFiles","env","parser","parserOptions","settings","plugins","extends","rules","overrides","globals","processor","noInlineConfig","reportUnusedDisableDirectives"],DRi=cUe(oUe([pH(Alc),ete("env",Mm),ete("globals",Mm),ete("overrides",sUe(e=>e.map(DRi))),ete("parserOptions",Mm),ete("rules",pH((e,t)=>e.split("/").length-t.split("/").length||e.localeCompare(t))),ete("settings",Mm)])),dlc=pH(["description","url","href"]),plc=cUe(oUe([e=>(0,aUe.default)(e,[...Object.keys(e).filter(t=>t!=="overrides").sort(),"overrides"]),ete("overrides",sUe(e=>e.map(oUe([Mm,ete("options",Mm)]))))])),flc=pH(["node","npm","yarn"]),Ilc=new Set(["install","pack","prepare","publish","restart","shrinkwrap","start","stop","test","uninstall","version"]),hlc=(e,t)=>Ukr(t,"devDependencies")&&Ukr(t.devDependencies,e),TRi=cUe((e,t)=>{let r=Object.keys(e),n=new Set,a=r.map(l=>{let A=l.replace(/^(?:pre|post)/,"");return Ilc.has(A)||r.includes(A)?(n.add(A),A):l});hlc("npm-run-all",t)||a.sort();let o=a.flatMap(l=>n.has(l)?[`pre${l}`,l,`post${l}`]:[l]);return(0,aUe.default)(e,o)}),kRi=[{key:"$schema"},{key:"name"},{key:"displayName"},{key:"version"},{key:"private"},{key:"description"},{key:"categories",over:iUe},{key:"keywords",over:iUe},{key:"homepage"},{key:"bugs",over:pH(["url","email"])},{key:"repository",over:Xkr},{key:"funding",over:Xkr},{key:"license",over:Xkr},{key:"qna"},{key:"author",over:Jkr},{key:"maintainers",over:sUe(e=>e.map(Jkr))},{key:"contributors",over:sUe(e=>e.map(Jkr))},{key:"publisher"},{key:"sideEffects"},{key:"type"},{key:"imports"},{key:"exports"},{key:"main"},{key:"svelte"},{key:"umd:main"},{key:"jsdelivr"},{key:"unpkg"},{key:"module"},{key:"source"},{key:"jsnext:main"},{key:"browser"},{key:"react-native"},{key:"types"},{key:"typesVersions"},{key:"typings"},{key:"style"},{key:"example"},{key:"examplestyle"},{key:"assets"},{key:"bin",over:Mm},{key:"man"},{key:"directories",over:glc},{key:"files",over:iUe},{key:"workspaces"},{key:"binary",over:pH(["module_name","module_path","remote_path","package_name","host"])},{key:"scripts",over:TRi},{key:"betterScripts",over:TRi},{key:"contributes",over:Mm},{key:"activationEvents",over:iUe},{key:"pre-commit"},{key:"commitlint",over:Mm},{key:"lint-staged"},{key:"config",over:Mm},{key:"nodemonConfig",over:Mm},{key:"browserify",over:Mm},{key:"babel",over:Mm},{key:"browserslist"},{key:"xo",over:Mm},{key:"prettier",over:plc},{key:"eslintConfig",over:DRi},{key:"eslintIgnore"},{key:"npmpkgjsonlint",over:Mm},{key:"npmPackageJsonLintConfig",over:Mm},{key:"npmpackagejsonlint",over:Mm},{key:"release",over:Mm},{key:"remarkConfig",over:Mm},{key:"stylelint"},{key:"ava",over:Mm},{key:"jest",over:Mm},{key:"jest-junit",over:Mm},{key:"jest-stare",over:Mm},{key:"mocha",over:Mm},{key:"nyc",over:Mm},{key:"c8",over:Mm},{key:"tap",over:Mm},{key:"resolutions",over:Mm},{key:"dependencies",over:Mm},{key:"devDependencies",over:Mm},{key:"dependenciesMeta",over:pH(void 0,!0)},{key:"peerDependencies",over:Mm},{key:"peerDependenciesMeta",over:pH(void 0,!0)},{key:"optionalDependencies",over:Mm},{key:"bundledDependencies",over:$Et},{key:"bundleDependencies",over:$Et},{key:"extensionPack",over:$Et},{key:"extensionDependencies",over:$Et},{key:"flat"},{key:"packageManager"},{key:"engines",over:Mm},{key:"engineStrict",over:Mm},{key:"volta",over:flc},{key:"languageName"},{key:"os"},{key:"cpu"},{key:"preferGlobal",over:Mm},{key:"publishConfig",over:Mm},{key:"icon"},{key:"badges",over:sUe(e=>e.map(dlc))},{key:"galleryBanner",over:Mm},{key:"preview"},{key:"markdown"}],RRi=kRi.map(({key:e})=>e),mlc=oUe(kRi.map(({key:e,over:t})=>t?ete(e,t):void 0).filter(Boolean));function Clc(e,t){if(typeof e=="string"){let{indent:r}=Ykr(e),n=e.slice(-1)===` +`}function VRi(e){return typeof e=="string"&&plc(e)||` +`}function Jkr(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var jkr=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t)),cUe=e=>(t,...r)=>e.reduce((n,a)=>a(n,...r),t),aUe=e=>t=>Array.isArray(t)?e(t):t,PRi=e=>t=>Array.isArray(t)&&t.every(r=>typeof r=="string")?e(t):t,oUe=PRi(e=>[...new Set(e)]),flc=PRi(e=>[...e].sort()),zEt=cUe([oUe,flc]),uUe=e=>(t,...r)=>Jkr(t)?e(t,...r):t,fH=(e,t)=>{let r=uUe(n=>(t&&(n=Object.fromEntries(Object.entries(n).map(([a,o])=>[a,r(o)]))),(0,lUe.default)(n,e)));return r},Mm=fH(),Ukr=fH(["type","url"]),Kkr=fH(["name","email","url"]),Ilc=fH(["lib","bin","man","doc","example","test"]),tte=(e,t)=>(r,...n)=>jkr(r,e)?{...r,[e]:t(r[e],...n)}:r,hlc=["files","excludedFiles","env","parser","parserOptions","settings","plugins","extends","rules","overrides","globals","processor","noInlineConfig","reportUnusedDisableDirectives"],MRi=uUe(cUe([fH(hlc),tte("env",Mm),tte("globals",Mm),tte("overrides",aUe(e=>e.map(MRi))),tte("parserOptions",Mm),tte("rules",fH((e,t)=>e.split("/").length-t.split("/").length||e.localeCompare(t))),tte("settings",Mm)])),mlc=fH(["description","url","href"]),Clc=uUe(cUe([e=>(0,lUe.default)(e,[...Object.keys(e).filter(t=>t!=="overrides").sort(),"overrides"]),tte("overrides",aUe(e=>e.map(cUe([Mm,tte("options",Mm)]))))])),_lc=fH(["node","npm","yarn"]),ylc=new Set(["install","pack","prepare","publish","restart","shrinkwrap","start","stop","test","uninstall","version"]),blc=(e,t)=>jkr(t,"devDependencies")&&jkr(t.devDependencies,e),WRi=uUe((e,t)=>{let r=Object.keys(e),n=new Set,a=r.map(l=>{let A=l.replace(/^(?:pre|post)/,"");return ylc.has(A)||r.includes(A)?(n.add(A),A):l});blc("npm-run-all",t)||a.sort();let o=a.flatMap(l=>n.has(l)?[`pre${l}`,l,`post${l}`]:[l]);return(0,lUe.default)(e,o)}),HRi=[{key:"$schema"},{key:"name"},{key:"displayName"},{key:"version"},{key:"private"},{key:"description"},{key:"categories",over:oUe},{key:"keywords",over:oUe},{key:"homepage"},{key:"bugs",over:fH(["url","email"])},{key:"repository",over:Ukr},{key:"funding",over:Ukr},{key:"license",over:Ukr},{key:"qna"},{key:"author",over:Kkr},{key:"maintainers",over:aUe(e=>e.map(Kkr))},{key:"contributors",over:aUe(e=>e.map(Kkr))},{key:"publisher"},{key:"sideEffects"},{key:"type"},{key:"imports"},{key:"exports"},{key:"main"},{key:"svelte"},{key:"umd:main"},{key:"jsdelivr"},{key:"unpkg"},{key:"module"},{key:"source"},{key:"jsnext:main"},{key:"browser"},{key:"react-native"},{key:"types"},{key:"typesVersions"},{key:"typings"},{key:"style"},{key:"example"},{key:"examplestyle"},{key:"assets"},{key:"bin",over:Mm},{key:"man"},{key:"directories",over:Ilc},{key:"files",over:oUe},{key:"workspaces"},{key:"binary",over:fH(["module_name","module_path","remote_path","package_name","host"])},{key:"scripts",over:WRi},{key:"betterScripts",over:WRi},{key:"contributes",over:Mm},{key:"activationEvents",over:oUe},{key:"pre-commit"},{key:"commitlint",over:Mm},{key:"lint-staged"},{key:"config",over:Mm},{key:"nodemonConfig",over:Mm},{key:"browserify",over:Mm},{key:"babel",over:Mm},{key:"browserslist"},{key:"xo",over:Mm},{key:"prettier",over:Clc},{key:"eslintConfig",over:MRi},{key:"eslintIgnore"},{key:"npmpkgjsonlint",over:Mm},{key:"npmPackageJsonLintConfig",over:Mm},{key:"npmpackagejsonlint",over:Mm},{key:"release",over:Mm},{key:"remarkConfig",over:Mm},{key:"stylelint"},{key:"ava",over:Mm},{key:"jest",over:Mm},{key:"jest-junit",over:Mm},{key:"jest-stare",over:Mm},{key:"mocha",over:Mm},{key:"nyc",over:Mm},{key:"c8",over:Mm},{key:"tap",over:Mm},{key:"resolutions",over:Mm},{key:"dependencies",over:Mm},{key:"devDependencies",over:Mm},{key:"dependenciesMeta",over:fH(void 0,!0)},{key:"peerDependencies",over:Mm},{key:"peerDependenciesMeta",over:fH(void 0,!0)},{key:"optionalDependencies",over:Mm},{key:"bundledDependencies",over:zEt},{key:"bundleDependencies",over:zEt},{key:"extensionPack",over:zEt},{key:"extensionDependencies",over:zEt},{key:"flat"},{key:"packageManager"},{key:"engines",over:Mm},{key:"engineStrict",over:Mm},{key:"volta",over:_lc},{key:"languageName"},{key:"os"},{key:"cpu"},{key:"preferGlobal",over:Mm},{key:"publishConfig",over:Mm},{key:"icon"},{key:"badges",over:aUe(e=>e.map(mlc))},{key:"galleryBanner",over:Mm},{key:"preview"},{key:"markdown"}],ORi=HRi.map(({key:e})=>e),Elc=cUe(HRi.map(({key:e,over:t})=>t?tte(e,t):void 0).filter(Boolean));function Slc(e,t){if(typeof e=="string"){let{indent:r}=Xkr(e),n=e.slice(-1)===` `?` -`:"",a=wRi(e);e=JSON.parse(e);let o=JSON.stringify(t(e),null,r)+n;return a===`\r -`&&(o=o.replace(/\n/g,a)),o}return t(e)}var _lc=e=>e[0]==="_",ylc=(e,t)=>e.reduce((r,n)=>(r[t(n)?0:1].push(n),r),[[],[]]);function blc(e,t={}){return Clc(e,cUe(r=>{let n=t.sortOrder||RRi;if(Array.isArray(n)){let a=Object.keys(r),[o,l]=ylc(a,_lc);n=[...n,...RRi,...l.sort(),...o.sort()]}return mlc((0,aUe.default)(r,n),r)}))}var xRi=blc;var e1t=class{constructor(t){this.program=t}parseImports(t){return this.program.body.filter(n=>n.type==="ImportDeclaration").map(n=>{let a={start:n.range[0],end:n.range[1],importStart:n.range[0],importEnd:n.range[1],type:n.importKind==="type"?"import-type":"import",moduleName:n.source.value,defaultMember:n.specifiers.find(f=>f.type==="ImportDefaultSpecifier")?.local.name,namespaceMember:n.specifiers.find(f=>f.type==="ImportNamespaceSpecifier")?.local.name,namedMembers:n.specifiers.filter(f=>f.type==="ImportSpecifier").map(f=>({name:f.imported.name,alias:f.local.name,type:n.importKind==="type"}))},o=this.program.comments.find(f=>f.loc.start.line===n.loc.start.line&&f.loc.end.line===n.loc.end.line);o&&(a.end=o.range[1]);let l=f=>{let I=this.program.comments.find(b=>b.loc.start.line===f);return I?[...l(I.loc.start.line-1),I]:[]},A=l(n.loc.start.line-1);return A.length>0&&(a.start=A.at(0).range.at(0)),a})}formatImport(t,r,n=` +`:"",a=VRi(e);e=JSON.parse(e);let o=JSON.stringify(t(e),null,r)+n;return a===`\r +`&&(o=o.replace(/\n/g,a)),o}return t(e)}var vlc=e=>e[0]==="_",Blc=(e,t)=>e.reduce((r,n)=>(r[t(n)?0:1].push(n),r),[[],[]]);function wlc(e,t={}){return Slc(e,uUe(r=>{let n=t.sortOrder||ORi;if(Array.isArray(n)){let a=Object.keys(r),[o,l]=Blc(a,vlc);n=[...n,...ORi,...l.sort(),...o.sort()]}return Elc((0,lUe.default)(r,n),r)}))}var YRi=wlc;var qEt=class{constructor(t){this.program=t}parseImports(t){return this.program.body.filter(n=>n.type==="ImportDeclaration").map(n=>{let a={start:n.range[0],end:n.range[1],importStart:n.range[0],importEnd:n.range[1],type:n.importKind==="type"?"import-type":"import",moduleName:n.source.value,defaultMember:n.specifiers.find(f=>f.type==="ImportDefaultSpecifier")?.local.name,namespaceMember:n.specifiers.find(f=>f.type==="ImportNamespaceSpecifier")?.local.name,namedMembers:n.specifiers.filter(f=>f.type==="ImportSpecifier").map(f=>({name:f.imported.name,alias:f.local.name,type:n.importKind==="type"}))},o=this.program.comments.find(f=>f.loc.start.line===n.loc.start.line&&f.loc.end.line===n.loc.end.line);o&&(a.end=o.range[1]);let l=f=>{let I=this.program.comments.find(b=>b.loc.start.line===f);return I?[...l(I.loc.start.line-1),I]:[]},A=l(n.loc.start.line-1);return A.length>0&&(a.start=A.at(0).range.at(0)),a})}formatImport(t,r,n=` `){let a=r.importStart||r.start,o=r.importEnd||r.end,l=t.substring(a,o),{namedMembers:A}=r;if(A.length===0)return t.substring(r.start,r.end);let f=l.replace(/\{[\s\S]*\}/g,I=>{let C=I.includes(n),b;C&&([b]=I.split(n)[1].match(/^\s*/));let E=I.charAt(1)===" ",N=I.replace("}","").trim().endsWith(",");return this.formatNamedMembers(A,C,E,N,b,n)});return t.substring(r.start,a)+f+t.substring(o,o+(r.end-o))}formatNamedMembers(t,r,n,a,o="",l=` -`){if(r)return"{"+l+t.map(({name:I,alias:C},b)=>{let E=b===t.length-1,N=!a&&E?"":",";return I===C?`${o}${I}${N}`+l:`${o}${I} as ${C}${N}`+l}).join("")+"}";let A=n?" ":"",f=a?",":"";return"{"+A+t.map(({name:I,alias:C})=>I===C?`${I}`:`${I} as ${C}`).join(", ")+f+A+"}"}};var RNi=Nt(SNi(),1);import{readFileSync as vNi}from"node:fs";import{join as BNi}from"node:path";var tgc=()=>{let e=new Set;try{let{workspaces:t}=JSON.parse(vNi(BNi(process.cwd(),"/package.json"),"utf-8"));t&&t.length>0&&NQn(t,{cwd:process.cwd(),onlyDirectories:!0,absolute:!0,expandDirectories:{files:["package.json"],extensions:["json"]}}).forEach(n=>{try{let{name:a}=JSON.parse(vNi(BNi(n,"package.json"),"utf-8"));a.startsWith("@")&&e.add(a)}catch{}})}catch(t){console.log(t)}return Array.from(e)},rgc=tgc(),dD=e=>rgc.some(t=>e.moduleName.startsWith(t)),wNi=e=>e.moduleName.startsWith("node:"),C4=e=>e.type==="import-type";var TNi=({and:e,hasDefaultMember:t,hasOnlyNamedMembers:r,hasNoMember:n,hasNamespaceMember:a,isAbsoluteModule:o,isRelativeModule:l,isScopedModule:A,moduleName:f,naturally:I,member:C,not:b,startsWithLowerCase:E,startsWithUpperCase:N})=>{let B=[{match:e(n,o,b(dD)),sort:f(I)},{match:e(n,o,dD),sort:f(I)},{match:e(n,l),sort:f(I)}],F=[{match:e(C4,o,a),sort:f(I)},{match:e(C4,o,r,C(N)),sort:f(I)},{match:e(C4,o,r,C(E)),sort:f(I)},{match:e(C4,o,t,C(N)),sort:f(I)},{match:e(C4,o,t,C(E)),sort:f(I)}],Q=[{match:e(C4,l,a),sort:f(I)},{match:e(C4,l,r,C(N)),sort:f(I)},{match:e(C4,l,r,C(E)),sort:f(I)},{match:e(C4,l,t,C(N)),sort:f(I)},{match:e(C4,l,t,C(E)),sort:f(I)}],J=[{match:wNi,sort:f(I)}],ae=[{match:e(A,b(dD),a),sort:f(I)},{match:e(A,b(dD),r,C(N)),sort:f(I)},{match:e(A,b(dD),r,C(E)),sort:f(I)},{match:e(A,b(dD),t,C(N)),sort:f(I)},{match:e(A,b(dD),t,C(E)),sort:f(I)},{match:e(o,b(dD),b(A),a),sort:f(I)},{match:e(o,b(A),b(dD),r,C(N)),sort:f(I)},{match:e(o,b(A),b(dD),r,C(E)),sort:f(I)},{match:e(o,b(A),b(dD),t,C(N)),sort:f(I)},{match:e(o,b(A),b(dD),t,C(E)),sort:f(I)}],ne=[{match:e(dD,a),sort:f(I)},{match:e(dD,r,C(N)),sort:f(I)},{match:e(dD,r,C(E)),sort:f(I)},{match:e(dD,t,C(N)),sort:f(I)},{match:e(dD,t,C(E)),sort:f(I)}],ce=[{match:e(l,a),sort:f(I)},{match:e(l,r,C(N)),sort:f(I)},{match:e(l,r,C(E)),sort:f(I)},{match:e(l,t,C(N)),sort:f(I)},{match:e(l,t,C(E)),sort:f(I)}];return[...B,{separator:!0},...F,{separator:!0},...Q,{separator:!0},...J,{separator:!0},...ae,{separator:!0},...ne,{separator:!0},...ce,{separator:!0}]};var NNi=(e,{plugins:t})=>{let r=Vce.typescript.parse(e,{plugins:t}),n=new e1t(r),{code:a}=(0,RNi.sortImports)(e,n,TNi);return a};var ngc=(e,t)=>NNi(e,t),igc=async(e,{plugins:t})=>{let r=Vce.typescript.parse(e,{plugins:t}),n=r.body.length;return[...r.body].reverse().forEach((o,l)=>{if(o.type==="ImportDeclaration"&&o.specifiers.length>1){let A=n-l-1;r.body.splice(A,1),o.specifiers.forEach((f,I)=>{r.body.splice(A+I,0,{...o,specifiers:o.specifiers.filter((C,b)=>I===b)})})}}),r},i1t={typescript:{...Vce.typescript,astFormat:"typescript-custom",preprocess:ngc,parse:igc},"json-stringify":{...nNe["json-stringify"],preprocess(e,t){return nNe["json-stringify"].preprocess&&(e=nNe["json-stringify"].preprocess(e,t)),t.filepath&&/(^|\\|\/)package\.json$/.test(t.filepath)?xRi(e):e}}};var kNi=yNe.estree,DNi=e=>{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},sgc=(e,t,r)=>{let n=e.getNode(),a=kNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},ogc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>DNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=DNi(a);a.alignOffset=o{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},agc=(e,t,r)=>{let n=e.getNode(),a=FNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},cgc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>GNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=GNi(a);a.alignOffset=o({"typescript-custom":{...FNi,preprocess:cgc,print:agc}});var LNi=async()=>({printers:await ZNi(),parsers:i1t});var lgc={printers:xNi,parsers:i1t},VNi=lgc;var ugc={semi:!1,singleQuote:!0,tabWidth:2,jsxSingleQuote:!0,printWidth:100,trailingComma:"es5",plugins:[Mme,jJe,fJe,rJe,iNe,lCe,VNi]},WNi=ugc;import{join as ggc}from"node:path";var ONi=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".git","node_modules","coverage","dist",".yarn",".vscode",".next","**/**/dist/*","**/**/templates/*.yaml","**/templates/*.yaml",".terraform",".idea"],Agc=["./**/*.{js,mjs,cjs,ts,tsx,yml,yaml,json,graphql,md,mdx}"],dgc=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/.idea/**","!./.idea/**"],PNi=e=>[...Agc.map(t=>ggc(e,t)),...dgc];var s1t=class e extends pgc{constructor(r){super();this.cwd=r}static async initialize(r){return new e(r)}async format(r){r&&r.length>0?await this.formatFiles(r):await this.formatProject()}async formatFiles(r=[]){let n=await LNi(),a=HNi.default.default().add(ONi).add(await this.getProjectIgnorePatterns()).filter(r.map(o=>Igc(this.cwd,o)));this.emit("start",{files:a});for await(let o of a){this.emit("format:start",{file:o});let l=await MNi(o,"utf8"),A=await qEt(l,{...WNi,filepath:o,plugins:[Mme,jJe,fJe,rJe,iNe,lCe,n]});A!==l&&A?(await fgc(o,A,"utf8"),this.emit("format:end",{file:o,changed:!0})):this.emit("format:end",{file:o,changed:!1})}this.emit("end")}async formatProject(){let r=await Z$(PNi(this.cwd),{dot:!0});await this.formatFiles(r)}async getProjectIgnorePatterns(){let r=await MNi(hgc(this.cwd,"package.json"),"utf-8"),{formatterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var rxr=Nt(Wc(),1),hUe=class extends YNi.BaseCommand{static paths=[["format"]];files=vA.Rest({required:0});async execute(){let t=await QNi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await XNi.Project.find(t,this.context.cwd),n=await s1t.initialize(this.context.cwd),{clear:a}=(0,JNi.render)((0,rxr.jsx)(q0i,{cwd:r.cwd,formatter:n}));try{return await n.format(this.files),0}catch(o){return o instanceof Error?ZE((0,rxr.jsx)(Ok,{error:o})).split(` -`).forEach(l=>{console.log(l)}):console.error(o),1}finally{a()}}};var UNi={commands:[hUe]};var pxr={};Uf(pxr,{ImagePackCommand:()=>yUe,default:()=>VDi});var xDi=Nt(dl(),1),GDi=Nt(mn(),1),FDi=Nt(mn(),1),ZDi=Nt(mn(),1),dxr=Nt(mn(),1),LDi=Nt(Io(),1);Rl();import{readFileSync as $gc}from"node:fs";import{join as eAc}from"node:path";var ixr=Nt(wTe(),1),KNi=Nt(mn(),1),mgc=()=>{let e=ixr.context.payload;return process.env.GITHUB_PULL_REQUST_HEAD_SHA||e.after||e.pull_request?.head?.sha||process.env.GITHUB_SHA};var Cgc=()=>{let e=ixr.context.payload;return String(e.pull_request?.number)},_gc=async()=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return mgc();let{stdout:e}=await KNi.execUtils.execvp("git",["log","-1",'--format="%H"'],{cwd:process.cwd(),strict:!0}),[t]=e.split(` -`);return t.replace(/"/g,"")},ygc=async()=>process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Cgc():"local",jNi=async e=>{let t=await _gc(),r=t.substr(0,7);return e==="hash-timestamp"?`${r}-${Date.now()}`:e==="ctx-hash-timestamp"?`${await ygc()}-${r}-${Date.now()}`:t};var NDi=Nt(wDi(),1),_Ue=Nt(mn(),1),Axr=Nt(Io(),1),DDi=Nt(Io(),1);import{readFileSync as qgc}from"node:fs";var TCe=Nt(mn(),1);import{platform as jgc}from"node:os";import{arch as zgc}from"node:os";var TDi="0.40.4",RDi=async({context:e,cwd:t})=>{let r;try{await TCe.execUtils.pipevp("pack",["--version"],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:TCe.execUtils.EndStrategy.ErrorCode}),r=!0}catch{r=!1}if(!r){console.log("Buildpack CLI (pack) is not installed. Installing it...");let n=`https://github.com/buildpacks/pack/releases/download/v${TDi}/pack-v${TDi}-`,a=jgc(),o=zgc();switch(a){case"linux":n+="linux.tgz";break;case"darwin":o==="arm64"?n+="macos-arm64.tgz":n+="macos.tgz";break;default:break}let l=`${t??e.cwd}/pack.tgz`;await TCe.execUtils.pipevp("curl",["-sSL","-o",l,n],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:TCe.execUtils.EndStrategy.ErrorCode}),await TCe.execUtils.pipevp("tar",["-C","/usr/local/bin/","--no-same-owner","-xzv",l],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:TCe.execUtils.EndStrategy.ErrorCode}),console.log("Buildpack CLI (pack) has been installed.")}};var kDi=async({workspace:e,registry:t,publish:r,tagPolicy:n,builder:a,buildpack:o,platform:l,require:A,cwd:f},I)=>{let C=e.replace("@","").replace(/\//g,"-"),b=`${t}${C}`,E=await jNi(n),N=[{name:"WORKSPACE",value:e},{name:"CNB_USER_ID",value:"1001"}];A&&A.length>0&&N.push({name:"BP_REQUIRE",value:A.join(",")});let B={_:{"schema-version":"0.2",id:C,name:C,version:"0.0.1"},io:{buildpacks:{exclude:[".git",".yarn/unplugged"],builder:a,build:{env:N}}}},F=DDi.ppath.join(await Axr.xfs.mktempPromise(),"project.toml");await Axr.xfs.writeFilePromise(F,(0,NDi.stringify)(B)),console.debug("project.toml",qgc(F,"utf8"));let Q=["build","--trust-builder",`${b}:${E}`,"--descriptor",F,"--buildpack",o,"--tag",`${b}:latest`,"--creation-time","now","--clear-cache","--verbose"];return r&&Q.push("--publish"),l&&Q.push("--platform",l),console.debug("Packing with args:",Q),await RDi({cwd:f,context:I}),await _Ue.execUtils.pipevp("pack",["config","experimental","true"],{cwd:f??I.cwd,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr,end:_Ue.execUtils.EndStrategy.ErrorCode}),await _Ue.execUtils.pipevp("pack",Q,{cwd:f??I.cwd,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr,end:_Ue.execUtils.EndStrategy.ErrorCode}),{images:[`${b}:${E}`,`${b}:latest`],tags:[E,"latest"],workspace:e}};var tAc="24",yUe=class extends xDi.BaseCommand{static paths=[["image","pack"]];registry=vA.String("-r,--registry","");tagPolicy=vA.String("-t,--tag-policy","revision");publish=vA.Boolean("-p,--publish",!1);platform=vA.String("--platform");async execute(){let t=await GDi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await FDi.Project.find(t,this.context.cwd),n=r.getWorkspaceByFilePath(this.context.cwd);return(await ZDi.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{if(!this.isWorkspaceAllowedForBundle(n)){o.reportInfo(null,`Workspace ${n.manifest.name?dxr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} not allowed for package.`);return}let l=await LDi.xfs.mktempPromise();o.reportInfo(null,`Package workspace ${n.manifest.name?dxr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} to ${l}`);let A=$gc(eAc(this.context.cwd,"package.json"),"utf-8"),{packConfiguration:f={}}=JSON.parse(A),I=f.builderTag??tAc,C=f.buildpackVersion??I,{require:b}=f;await JRe.pack(t,r,n,o,l),await kDi({workspace:n.manifest.raw.name,registry:this.registry,publish:this.publish,tagPolicy:this.tagPolicy,buildpack:`atlantislab/buildpack-yarn-workspace:${C}`,builder:`atlantislab/builder-base:${I}`,platform:this.platform,require:b,cwd:l},this.context)})).exitCode()}isWorkspaceAllowedForBundle(t){let{scripts:r,name:n}=t.manifest,a=r.get("build");return["actl service build","actl renderer build","build-storybook","storybook build","next build","builder build library","app service build","app renderer build","service build","renderer build","strapi build","astro build"].some(l=>a?.includes(l))&&!!n}};var VDi={commands:[yUe]};var Fxr={};Uf(Fxr,{default:()=>bki});var Iki=Nt(dl(),1),hki=Nt(dl(),1),mki=Nt(mn(),1),Cki=Nt(mn(),1),_ki=Nt(mn(),1),yki=Nt(Io(),1);import sdc from"node:assert/strict";import{join as odc}from"node:path";var fki=Nt(pki(),1),S1t=class{constructor(t){this.cwd=t}async publish(t){await(0,fki.publish)(this.cwd,t)}};var v1t=class extends Iki.BaseCommand{static paths=[["jsr","publish"]];async execute(){let t=await mki.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await _ki.Project.find(t,this.context.cwd);if(!n)throw new hki.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Cki.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Publishing to JSR",async()=>{let l=process.env.GITHUB_TOKEN;sdc.ok(l,"GitHub Token is missing");let A=new S1t(this.context.cwd),f=await yki.xfs.mktempPromise();await A.publish({pkgJsonPath:odc(this.context.cwd,"package.json"),canary:!1,publishArgs:["install"],binFolder:f})})})).exitCode()}};var bki={commands:[v1t]};var Yxr={};Uf(Yxr,{LibraryBuildCommand:()=>TUe,default:()=>rxi});var Uki=Nt(dl(),1),Kki=Nt(mn(),1),jki=Nt(mn(),1),Hxr=Nt(Io(),1),zki=Nt(mn(),1),qki=Nt(mn(),1),$ki=Nt(Io(),1);Rl();var exi=Nt(ul(),1);import{rm as udc}from"node:fs/promises";import{join as Jki}from"node:path";var Pxr=Nt(ul(),1),GCe=Nt(ul(),1),Mxr=Nt(Ec(),1),kki=Nt(Dki(),1);import{isAbsolute as adc}from"node:path";import{relative as cdc}from"node:path";var Uk=Nt(Wc(),1),T1t=({messageText:e,start:t,file:r,code:n,cwd:a=process.cwd()})=>{let o=(0,Mxr.useMemo)(()=>r?adc(r.fileName)?cdc(a,r.fileName):r.fileName:null,[r]),l=(0,Mxr.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return(0,Uk.jsxs)(GCe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%",children:[!!o&&(0,Uk.jsxs)(GCe.Box,{flexDirection:"row",children:[(0,Uk.jsx)(GCe.Box,{marginBottom:1,paddingX:2,flexGrow:1,children:(0,Uk.jsx)(v8,{line:l?l.line+1:1,column:l?.character,children:o})}),(0,Uk.jsx)(GCe.Box,{paddingX:2,children:(0,Uk.jsxs)(Pxr.Text,{bold:!0,color:"red",children:["TS",n]})})]}),(0,Uk.jsx)($9,{offset:2}),!!r?.text&&!!l&&(0,Uk.jsxs)(Uk.Fragment,{children:[(0,Uk.jsx)(GCe.Box,{children:(0,Uk.jsx)(B8,{line:l.line+1,column:l.character,children:r.text})}),(0,Uk.jsx)($9,{offset:2})]}),(0,Uk.jsx)(GCe.Box,{marginTop:1,paddingX:2,children:(0,Uk.jsx)(Pxr.Text,{color:"white",children:(0,kki.flattenDiagnosticMessageText)(e,` -`)})})]})};var wUe=Nt(ul(),1),Pki=Nt(Ec(),1),Mki=Nt(Ec(),1);var xki=Nt(Ec(),1),Gki=Nt(Ec(),1),Fki=Nt(Ec(),1),Lki=Nt(Wc(),1),Zki=({typescript:e})=>{let[t,r]=(0,Gki.useState)(10),n=(0,Fki.useRef)();return(0,xki.useEffect)(()=>{n.current=setInterval(()=>{r(o=>o+10)},100);let a=()=>{setTimeout(()=>{r(100),n.current&&clearInterval(n.current)},600)};return e.on("end",a),()=>{e.off("end",a),n.current&&clearInterval(n.current)}},[e,n,r]),(0,Lki.jsx)(tH,{value:t/100*100})};var _De=Nt(ul(),1),rte=Nt(ul(),1),Vki=Nt(Ec(),1),Wki=Nt(Ec(),1);var Kk=Nt(Wc(),1),Oki=({typescript:e})=>{let[t,r]=(0,Wki.useState)(0);return(0,Vki.useEffect)(()=>{let n=a=>{r(a.files.length)};return e.on("start",n),()=>{e.off("start",n)}},[e,r]),t===0?(0,Kk.jsxs)(_De.Box,{flexDirection:"row",children:[(0,Kk.jsx)(GG,{color:"cyan",children:"TypeScript:"}),(0,Kk.jsx)(rte.Text,{children:" "}),(0,Kk.jsx)(rte.Text,{color:"white",children:"Loading files..."})]}):(0,Kk.jsxs)(_De.Box,{flexDirection:"row",width:"100%",children:[(0,Kk.jsxs)(_De.Box,{flexGrow:1,children:[(0,Kk.jsx)(GG,{color:"cyan",children:"TypeScript:"}),(0,Kk.jsx)(rte.Text,{children:" "}),(0,Kk.jsx)(rte.Text,{color:"white",children:"Processing..."})]}),(0,Kk.jsx)(_De.Box,{flexDirection:"row",children:(0,Kk.jsxs)(_De.Box,{children:[(0,Kk.jsx)(rte.Text,{color:"green",children:GI.tick}),(0,Kk.jsx)(rte.Text,{children:" "}),(0,Kk.jsxs)(rte.Text,{color:"white",children:[t," Files"]}),(0,Kk.jsx)(rte.Text,{children:" "})]})})]})};var qce=Nt(Wc(),1),R1t=({typescript:e})=>{let[t,r]=(0,Pki.useState)(!1);return(0,Mki.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1e3)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,qce.jsx)(wUe.Box,{position:"relative",height:7,children:(0,qce.jsxs)(wUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,qce.jsx)(wUe.Box,{children:(0,qce.jsx)(Oki,{typescript:e})}),(0,qce.jsx)(wUe.Box,{marginTop:1,marginBottom:1,children:(0,qce.jsx)(Zki,{typescript:e})})]})})};import ldc from"node:events";import{readFileSync as Yki}from"node:fs";import{createRequire as Qki}from"node:module";import{join as Xki}from"node:path";var Z6={compilerOptions:{lib:["dom","dom.iterable","esnext"],declaration:!1,emitDecoratorMetadata:!0,experimentalDecorators:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,importHelpers:!1,isolatedModules:!1,moduleResolution:"NodeNext",noFallthroughCasesInSwitch:!0,noImplicitAny:!0,noImplicitReturns:!0,noImplicitThis:!0,noUnusedLocals:!1,noUnusedParameters:!1,pretty:!0,removeComments:!0,resolveJsonModule:!0,strict:!0,strictPropertyInitialization:!1,sourceMap:!1,module:"NodeNext",target:"es2022",jsx:"react-jsx",outDir:"./dist"},exclude:["**/*/next-env.d.ts","integration","node_modules","src/**/*.spec.ts","src/**/*.test.ts","src/**/*.story.ts","src/**/*.stories.ts","**/*/dist/**/*.ts","**/*/dist/**/*.d.ts","integration/**/*.test.ts",".idea"]};var Hki=e=>t=>{let r=n=>{let{moduleSpecifier:a}=n;if(a&&e.isStringLiteral(a)){if(e.isImportDeclaration(n)&&a.text.endsWith(".jsx"))return t.factory.updateImportDeclaration(n,n.modifiers,n.importClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause);if(e.isExportDeclaration(n))return t.factory.updateExportDeclaration(n,n.modifiers,n.isTypeOnly,n.exportClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause)}return e.visitEachChild(n,r,t)};return n=>e.visitNode(n,r)};var yDe=class e extends ldc{constructor(r,n){super();this.ts=r;this.cwd=n}static async initialize(r){let a=Qki(import.meta.url).resolve("@atls/code-runtime/package.json"),l=Qki(a)("typescript");return new e(l,r)}async check(r=[]){return this.run(r)}async build(r=[],n={}){return this.run(r,n,!1)}async run(r=[],n={},a=!0){let o=this.getProjectIgnorePatterns(),l=this.getLibCheckOption(),A={...Z6,compilerOptions:{...Z6.compilerOptions,...n,skipLibCheck:l},include:r,exclude:[...Z6.exclude,...o]},{fileNames:f,options:I,errors:C}=this.ts.parseJsonConfigFileContent(A,this.ts.sys,this.cwd);if(C.length>0)return this.emit("start",{files:[]}),this.emit("end",{diagnostics:C}),C;this.emit("start",{files:f});let b=this.ts.createProgram(f,{...I,noEmit:a}),E=Q=>J=>(this.emit("build:start",{file:J.fileName}),J),N=Q=>J=>(this.emit("build:end",{file:J.fileName}),J),B=b.emit(void 0,void 0,void 0,void 0,{before:[E],after:[N,Hki(this.ts)]}),F=this.filterDiagnostics(this.ts.getPreEmitDiagnostics(b).concat(B.diagnostics));return this.emit("end",{diagnostics:F}),F}filterDiagnostics(r){return r.filter(n=>n.code!==2209).filter(n=>!(n.code===1479&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===2834&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===7016&&n.file?.fileName.includes("/lexical/"))).filter(n=>!(n.code===6133&&n.file?.fileName.includes("/@yarnpkg/libui/"))).filter(n=>!([2315,2411,2304,7006,7016].includes(n.code)&&n.file?.fileName.includes("/@strapi/"))).filter(n=>!([2688,2307,2503].includes(n.code)&&n.file?.fileName.includes("/pkg-tests-core/"))).filter(n=>!([2307].includes(n.code)&&n.file?.fileName.includes("/@nestjs/testing/")))}getProjectIgnorePatterns(){let r=Yki(Xki(this.cwd,"package.json"),"utf-8"),{typecheckIgnorePatterns:n=[]}=JSON.parse(r);return n}getLibCheckOption(){let r=Yki(Xki(this.cwd,"package.json"),"utf-8"),{typecheckSkipLibCheck:n=!1}=JSON.parse(r);return n}};var N1t=Nt(Wc(),1),TUe=class extends Uki.BaseCommand{static paths=[["library","build"]];target=vA.String("-t,--target","./dist");async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Hxr.Filename.pnpCjs)&&t.includes(Hxr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Kki.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await jki.Project.find(t,this.context.cwd),n=[];this.target&&(n.push("-t"),n.push(this.target));let a=await $ki.xfs.mktempPromise(),{code:o}=await qki.execUtils.pipevp("yarn",["library","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await zki.scriptUtils.makeScriptEnv({binFolder:a,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){await this.cleanTarget();let t=await yDe.initialize(this.context.cwd),{clear:r}=(0,exi.render)((0,N1t.jsx)(R1t,{typescript:t}));try{let n=await t.build([Jki(this.context.cwd,"./src")],{outDir:Jki(this.context.cwd,this.target),declaration:!0});return n.forEach(a=>{ZE((0,N1t.jsx)(T1t,{...a})).split(` -`).forEach(l=>{console.log(l)})}),n.length===0?0:1}catch(n){return ZE((0,N1t.jsx)(Ok,{error:n})).split(` -`).forEach(a=>{console.error(a)}),1}finally{r()}}async cleanTarget(){try{await udc(this.target,{recursive:!0,force:!0})}catch{}}};var txi=(e,t)=>{t.publishConfig&&t.publishConfig.exports&&(t.exports=t.publishConfig.exports)};var rxi={hooks:{beforeWorkspacePacking:txi},commands:[TUe]};var zxr={};Uf(zxr,{LintCommand:()=>DUe,default:()=>yxi});var Ixi=Nt(dl(),1),Uxr=Nt(mn(),1),Kxr=Nt(mn(),1),jxr=Nt(Io(),1),hxi=Nt(mn(),1),mxi=Nt(mn(),1),Cxi=Nt(Io(),1);Rl();var _xi=Nt(ul(),1);var NUe=Nt(ul(),1),lxi=Nt(Ec(),1),uxi=Nt(Ec(),1);var nxi=Nt(Ec(),1),Qxr=Nt(Ec(),1),sxi=Nt(Wc(),1),ixi=({linter:e})=>{let[t,r]=(0,Qxr.useState)(0),[n,a]=(0,Qxr.useState)(0);return(0,nxi.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("lint:end",l),e.on("end",A),()=>{e.off("start",o),e.off("lint:end",l),e.off("end",A)}},[e,t,r,a]),(0,sxi.jsx)(tH,{value:t>0?n/t*100:0})};import{relative as oxi}from"node:path";var bDe=Nt(ul(),1),jk=Nt(ul(),1),axi=Nt(Ec(),1),RUe=Nt(Ec(),1);var $b=Nt(Wc(),1),gdc=({state:e})=>e==="warning"?(0,$b.jsx)(jk.Text,{color:"yellow",children:GI.warning}):e==="error"?(0,$b.jsx)(jk.Text,{color:"red",children:GI.cross}):e==="success"?(0,$b.jsx)(jk.Text,{color:"green",children:GI.tick}):(0,$b.jsx)(jk.Text,{color:"white",children:GI.circleDotted}),Adc=({state:e,children:t})=>e==="in-progress"?(0,$b.jsx)(jk.Text,{color:"gray",children:t}):(0,$b.jsx)(jk.Text,{color:"white",children:t}),cxi=({cwd:e,linter:t})=>{let[r,n]=(0,RUe.useState)(void 0),[a,o]=(0,RUe.useState)(0),[l,A]=(0,RUe.useState)(0),[f,I]=(0,RUe.useState)(0);return(0,axi.useEffect)(()=>{let C=N=>{o(N.files.length)},b=N=>{n({state:"in-progress",file:oxi(e,N.file)})},E=({result:N})=>{let B="success";N.warningCount>0&&(I(F=>F+N.warningCount),B="warning"),N.errorCount>0&&(A(F=>F+N.errorCount),B="error"),n({state:B,file:oxi(e,N.filePath)})};return t.on("start",C),t.on("lint:start",b),t.on("lint:end",E),()=>{t.off("start",C),t.off("lint:start",b),t.off("lint:end",E)}},[t,n,o,A,I]),r?(0,$b.jsxs)(bDe.Box,{flexDirection:"row",width:"100%",children:[(0,$b.jsxs)(bDe.Box,{flexGrow:1,children:[(0,$b.jsx)(GG,{color:"cyan",children:"Lint:"}),(0,$b.jsx)(jk.Text,{children:" "}),(0,$b.jsx)(Adc,{state:r.state,children:r.file})]}),(0,$b.jsx)(bDe.Box,{flexDirection:"row",children:(0,$b.jsxs)(bDe.Box,{children:[(0,$b.jsx)(gdc,{state:r.state}),(0,$b.jsx)(jk.Text,{children:" "}),(0,$b.jsxs)(jk.Text,{color:"yellow",children:[f," Warnings"]}),(0,$b.jsx)(jk.Text,{children:" "}),(0,$b.jsxs)(jk.Text,{color:"red",children:[l," Errors"]}),(0,$b.jsx)(jk.Text,{children:" "}),(0,$b.jsxs)(jk.Text,{color:"white",children:[a," Files"]}),(0,$b.jsx)(jk.Text,{children:" "})]})})]}):(0,$b.jsxs)(bDe.Box,{flexDirection:"row",children:[(0,$b.jsx)(GG,{color:"cyan",children:"Lint:"}),(0,$b.jsx)(jk.Text,{children:" "}),(0,$b.jsx)(jk.Text,{color:"white",children:"Loading files..."})]})};var $ce=Nt(Wc(),1),gxi=({cwd:e,linter:t})=>{let[r,n]=(0,lxi.useState)(!1);return(0,uxi.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,$ce.jsx)(NUe.Box,{position:"relative",height:7,children:(0,$ce.jsxs)(NUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,$ce.jsx)(NUe.Box,{children:(0,$ce.jsx)(cxi,{cwd:e,linter:t})}),(0,$ce.jsx)(NUe.Box,{marginTop:1,marginBottom:1,children:(0,$ce.jsx)(ixi,{linter:t})})]})})};var Xxr=Nt(ul(),1),ele=Nt(ul(),1);var pD=Nt(Wc(),1),Axi=({filePath:e,message:t,source:r})=>(0,pD.jsxs)(ele.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,pD.jsxs)(ele.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,pD.jsx)(ele.Box,{flexDirection:"row",flexGrow:1,children:(0,pD.jsx)(v8,{line:t.line,column:t.column,children:e})}),(0,pD.jsx)(ele.Box,{children:(0,pD.jsxs)(Xxr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,pD.jsx)(ele.Box,{children:(0,pD.jsx)($9,{offset:2})}),!!r&&(0,pD.jsxs)(pD.Fragment,{children:[(0,pD.jsx)(ele.Box,{children:(0,pD.jsx)(B8,{line:t.line,column:t.column,children:r})}),(0,pD.jsx)($9,{offset:2})]}),(0,pD.jsx)(ele.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,pD.jsxs)(Xxr.Text,{color:"white",children:[" ",t.message]})})]});var dxi=Nt(ul(),1);import{isAbsolute as ddc}from"node:path";import{relative as pdc}from"node:path";var pxi=Nt(Ec(),1);var Jxr=Nt(Wc(),1),fxi=({filePath:e,source:t,messages:r,cwd:n=process.cwd()})=>{let a=(0,pxi.useMemo)(()=>ddc(e)?pdc(n,e):e,[e]);return r.length===0?null:(0,Jxr.jsx)(dxi.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,Jxr.jsx)(Axi,{filePath:a,message:o,source:t},UO()))})};var D1t=Nt(Wc(),1),DUe=class extends Ixi.BaseCommand{static paths=[["lint"]];fix=vA.Boolean("--fix");files=vA.Rest({required:0});cache=vA.Boolean("--cache",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(jxr.Filename.pnpCjs)&&t.includes(jxr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Uxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Kxr.Project.find(t,this.context.cwd),n=await Cxi.xfs.mktempPromise(),a=[];this.fix&&a.push("--fix"),this.cache&&a.push("--cache");let{code:o}=await hxi.execUtils.pipevp("yarn",["lint",...a,...this.files],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await mxi.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await Uxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Kxr.Project.find(t,this.context.cwd),n=await PBe.initialize(r.cwd,this.context.cwd),{clear:a}=(0,_xi.render)((0,D1t.jsx)(gxi,{cwd:r.cwd,linter:n}));n.on("lint:end",({result:o})=>{o.messages.length>0&&ZE((0,D1t.jsx)(fxi,{...o})).split(` -`).forEach(A=>{console.log(A)})});try{return(await n.lint(this.files,{fix:this.fix,cache:this.cache})).find(l=>l.messages.length>0)?1:0}catch(o){return o instanceof Error?ZE((0,D1t.jsx)(Ok,{error:o})).split(` -`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var yxi={commands:[DUe]};var uGr={};Uf(uGr,{default:()=>$xi});var Uxi=Nt(dl(),1),Kxi=Nt(dl(),1),jxi=Nt(mn(),1),zxi=Nt(mn(),1),qxi=Nt(mn(),1);import GUe from"node:assert/strict";import{execSync as tpc}from"node:child_process";function tle(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function k1t(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce((a,o)=>k1t.bind(null,e,o,a,n),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((a,o)=>o.hook.bind(null,a,n),r)():r(n))}function bxi(e,t,r,n){let a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=(o,l)=>Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))),t==="after"&&(n=(o,l)=>{let A;return Promise.resolve().then(o.bind(null,l)).then(f=>(A=f,a(A,l))).then(()=>A)}),t==="error"&&(n=(o,l)=>Promise.resolve().then(o.bind(null,l)).catch(A=>a(A,l))),e.registry[r].push({hook:n,orig:a})}function Exi(e,t,r){if(!e.registry[t])return;let n=e.registry[t].map(a=>a.orig).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}var Sxi=Function.bind,vxi=Sxi.bind(Sxi);function Bxi(e,t,r){let n=vxi(Exi,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(a=>{let o=r?[t,a,r]:[t,a];e[a]=e.api[a]=vxi(bxi,null).apply(null,o)})}function fdc(){let e=Symbol("Singular"),t={registry:{}},r=k1t.bind(null,t,e);return Bxi(r,t,e),r}function Idc(){let e={registry:{}},t=k1t.bind(null,e);return Bxi(t,e),t}var wxi={Singular:fdc,Collection:Idc};var hdc="0.0.0-development",mdc=`octokit-endpoint.js/${hdc} ${tle()}`,Cdc={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":mdc},mediaType:{format:""}};function _dc(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function ydc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function Nxi(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{ydc(t[n])?n in e?r[n]=Nxi(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function Txi(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function $xr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=_dc(r.headers),Txi(r),Txi(r.headers);let n=Nxi(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function bdc(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var Edc=/\{[^}]+\}/g;function Sdc(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function vdc(e){let t=e.match(Edc);return t?t.map(Sdc).reduce((r,n)=>r.concat(n),[]):[]}function Rxi(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function Dxi(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function SDe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function kUe(e,t,r){return t=e==="+"||e==="#"?Dxi(t):SDe(t),r?SDe(r)+"="+t:t}function EDe(e){return e!=null}function qxr(e){return e===";"||e==="&"||e==="?"}function Bdc(e,t,r,n){var a=e[r],o=[];if(EDe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(kUe(t,a,qxr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(EDe).forEach(function(l){o.push(kUe(t,l,qxr(t)?r:""))}):Object.keys(a).forEach(function(l){EDe(a[l])&&o.push(kUe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(EDe).forEach(function(A){l.push(kUe(t,A))}):Object.keys(a).forEach(function(A){EDe(a[A])&&(l.push(SDe(A)),l.push(kUe(t,a[A].toString())))}),qxr(t)?o.push(SDe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?EDe(a)&&o.push(SDe(r)):a===""&&(t==="&"||t==="?")?o.push(SDe(r)+"="):a===""&&o.push("");return o}function wdc(e){return{expand:Tdc.bind(null,e)}}function Tdc(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(Bdc(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return Dxi(o)}),e==="/"?e:e.replace(/\/$/,"")}function kxi(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=Rxi(e,["method","baseUrl","url","headers","request","mediaType"]),l=vdc(r);r=wdc(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=Rxi(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=bdc(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function Rdc(e,t,r){return kxi($xr(e,t,r))}function xxi(e,t){let r=$xr(e,t),n=Rdc.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:xxi.bind(null,r),merge:$xr.bind(null,r),parse:kxi})}var Gxi=xxi(null,Cdc);var FCe=class extends Error{name;status;request;response;constructor(t,r,n){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in n&&(this.response=n.response);let a=Object.assign({},n.request);n.request.headers.authorization&&(a.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a}};var Ndc="0.0.0-development",Ddc={headers:{"user-agent":`octokit-request.js/${Ndc} ${tle()}`}};function kdc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function Fxi(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,n=e.request?.parseSuccessResponseBody!==!1,a=kdc(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,o=Object.fromEntries(Object.entries(e.headers).map(([b,E])=>[b,String(E)])),l;try{l=await t(e.url,{method:e.method,body:a,redirect:e.request?.redirect,headers:o,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(b){let E="Unknown Error";if(b instanceof Error){if(b.name==="AbortError")throw b.status=500,b;E=b.message,b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause))}let N=new FCe(E,500,{request:e});throw N.cause=b,N}let A=l.status,f=l.url,I={};for(let[b,E]of l.headers)I[b]=E;let C={url:f,status:A,headers:I,data:""};if("deprecation"in I){let b=I.link&&I.link.match(/<([^>]+)>; rel="deprecation"/),E=b&&b.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${I.sunset}${E?`. See ${E}`:""}`)}if(A===204||A===205)return C;if(e.method==="HEAD"){if(A<400)return C;throw new FCe(l.statusText,A,{response:C,request:e})}if(A===304)throw C.data=await eGr(l),new FCe("Not modified",A,{response:C,request:e});if(A>=400)throw C.data=await eGr(l),new FCe(xdc(C.data),A,{response:C,request:e});return C.data=n?await eGr(l):l.body,C}async function eGr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():e.arrayBuffer()}function xdc(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function tGr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return Fxi(r.parse(l));let A=(f,I)=>Fxi(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:tGr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:tGr.bind(null,r)})}var xUe=tGr(Gxi,Ddc);var Gdc="0.0.0-development";function Fdc(e){return`Request failed due to following response errors: +`){if(r)return"{"+l+t.map(({name:I,alias:C},b)=>{let E=b===t.length-1,N=!a&&E?"":",";return I===C?`${o}${I}${N}`+l:`${o}${I} as ${C}${N}`+l}).join("")+"}";let A=n?" ":"",f=a?",":"";return"{"+A+t.map(({name:I,alias:C})=>I===C?`${I}`:`${I} as ${C}`).join(", ")+f+A+"}"}};var ONi=xt(FNi(),1);import{readFileSync as ZNi}from"node:fs";import{join as LNi}from"node:path";var ogc=()=>{let e=new Set;try{let{workspaces:t}=JSON.parse(ZNi(LNi(process.cwd(),"/package.json"),"utf-8"));t&&t.length>0&&ZQn(t,{cwd:process.cwd(),onlyDirectories:!0,absolute:!0,expandDirectories:{files:["package.json"],extensions:["json"]}}).forEach(n=>{try{let{name:a}=JSON.parse(ZNi(LNi(n,"package.json"),"utf-8"));a.startsWith("@")&&e.add(a)}catch{}})}catch(t){console.log(t)}return Array.from(e)},agc=ogc(),pD=e=>agc.some(t=>e.moduleName.startsWith(t)),VNi=e=>e.moduleName.startsWith("node:"),_4=e=>e.type==="import-type";var WNi=({and:e,hasDefaultMember:t,hasOnlyNamedMembers:r,hasNoMember:n,hasNamespaceMember:a,isAbsoluteModule:o,isRelativeModule:l,isScopedModule:A,moduleName:f,naturally:I,member:C,not:b,startsWithLowerCase:E,startsWithUpperCase:N})=>{let B=[{match:e(n,o,b(pD)),sort:f(I)},{match:e(n,o,pD),sort:f(I)},{match:e(n,l),sort:f(I)}],F=[{match:e(_4,o,a),sort:f(I)},{match:e(_4,o,r,C(N)),sort:f(I)},{match:e(_4,o,r,C(E)),sort:f(I)},{match:e(_4,o,t,C(N)),sort:f(I)},{match:e(_4,o,t,C(E)),sort:f(I)}],Q=[{match:e(_4,l,a),sort:f(I)},{match:e(_4,l,r,C(N)),sort:f(I)},{match:e(_4,l,r,C(E)),sort:f(I)},{match:e(_4,l,t,C(N)),sort:f(I)},{match:e(_4,l,t,C(E)),sort:f(I)}],J=[{match:VNi,sort:f(I)}],ae=[{match:e(A,b(pD),a),sort:f(I)},{match:e(A,b(pD),r,C(N)),sort:f(I)},{match:e(A,b(pD),r,C(E)),sort:f(I)},{match:e(A,b(pD),t,C(N)),sort:f(I)},{match:e(A,b(pD),t,C(E)),sort:f(I)},{match:e(o,b(pD),b(A),a),sort:f(I)},{match:e(o,b(A),b(pD),r,C(N)),sort:f(I)},{match:e(o,b(A),b(pD),r,C(E)),sort:f(I)},{match:e(o,b(A),b(pD),t,C(N)),sort:f(I)},{match:e(o,b(A),b(pD),t,C(E)),sort:f(I)}],ne=[{match:e(pD,a),sort:f(I)},{match:e(pD,r,C(N)),sort:f(I)},{match:e(pD,r,C(E)),sort:f(I)},{match:e(pD,t,C(N)),sort:f(I)},{match:e(pD,t,C(E)),sort:f(I)}],ce=[{match:e(l,a),sort:f(I)},{match:e(l,r,C(N)),sort:f(I)},{match:e(l,r,C(E)),sort:f(I)},{match:e(l,t,C(N)),sort:f(I)},{match:e(l,t,C(E)),sort:f(I)}];return[...B,{separator:!0},...F,{separator:!0},...Q,{separator:!0},...J,{separator:!0},...ae,{separator:!0},...ne,{separator:!0},...ce,{separator:!0}]};var PNi=(e,{plugins:t})=>{let r=Wce.typescript.parse(e,{plugins:t}),n=new qEt(r),{code:a}=(0,ONi.sortImports)(e,n,WNi);return a};var cgc=(e,t)=>PNi(e,t),lgc=async(e,{plugins:t})=>{let r=Wce.typescript.parse(e,{plugins:t}),n=r.body.length;return[...r.body].reverse().forEach((o,l)=>{if(o.type==="ImportDeclaration"&&o.specifiers.length>1){let A=n-l-1;r.body.splice(A,1),o.specifiers.forEach((f,I)=>{r.body.splice(A+I,0,{...o,specifiers:o.specifiers.filter((C,b)=>I===b)})})}}),r},r1t={typescript:{...Wce.typescript,astFormat:"typescript-custom",preprocess:cgc,parse:lgc},"json-stringify":{...tNe["json-stringify"],preprocess(e,t){return tNe["json-stringify"].preprocess&&(e=tNe["json-stringify"].preprocess(e,t)),t.filepath&&/(^|\\|\/)package\.json$/.test(t.filepath)?YRi(e):e}}};var HNi=CNe.estree,MNi=e=>{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},ugc=(e,t,r)=>{let n=e.getNode(),a=HNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},ggc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>MNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=MNi(a);a.alignOffset=o{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},Agc=(e,t,r)=>{let n=e.getNode(),a=XNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},dgc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>QNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=QNi(a);a.alignOffset=o({"typescript-custom":{...XNi,preprocess:dgc,print:Agc}});var UNi=async()=>({printers:await JNi(),parsers:r1t});var pgc={printers:YNi,parsers:r1t},KNi=pgc;var fgc={semi:!1,singleQuote:!0,tabWidth:2,jsxSingleQuote:!0,printWidth:100,trailingComma:"es5",plugins:[Hme,qJe,hJe,iJe,rNe,uCe,KNi]},jNi=fgc;import{join as Igc}from"node:path";var zNi=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".git","node_modules","coverage","dist",".yarn",".vscode",".next","**/**/dist/*","**/**/templates/*.yaml","**/templates/*.yaml",".terraform",".idea"],hgc=["./**/*.{js,mjs,cjs,ts,tsx,yml,yaml,json,graphql,md,mdx}"],mgc=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/.idea/**","!./.idea/**"],qNi=e=>[...hgc.map(t=>Igc(e,t)),...mgc];var n1t=class e extends Cgc{constructor(r){super();this.cwd=r}static async initialize(r){return new e(r)}async format(r){r&&r.length>0?await this.formatFiles(r):await this.formatProject()}async formatFiles(r=[]){let n=await UNi(),a=eDi.default.default().add(zNi).add(await this.getProjectIgnorePatterns()).filter(r.map(o=>ygc(this.cwd,o)));this.emit("start",{files:a});for await(let o of a){this.emit("format:start",{file:o});let l=await $Ni(o,"utf8"),A=await jEt(l,{...jNi,filepath:o,plugins:[Hme,qJe,hJe,iJe,rNe,uCe,n]});A!==l&&A?(await _gc(o,A,"utf8"),this.emit("format:end",{file:o,changed:!0})):this.emit("format:end",{file:o,changed:!1})}this.emit("end")}async formatProject(){let r=await L$(qNi(this.cwd),{dot:!0});await this.formatFiles(r)}async getProjectIgnorePatterns(){let r=await $Ni(bgc(this.cwd,"package.json"),"utf-8"),{formatterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var ixr=xt(Wc(),1),CUe=class extends tDi.BaseCommand{static paths=[["format"]];files=sA.Rest({required:0});async execute(){let t=await rDi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await nDi.Project.find(t,this.context.cwd),n=await n1t.initialize(this.context.cwd),{clear:a}=(0,iDi.render)((0,ixr.jsx)(lyi,{cwd:r.cwd,formatter:n}));try{return await n.format(this.files),0}catch(o){return o instanceof Error?LE((0,ixr.jsx)(Pk,{error:o})).split(` +`).forEach(l=>{console.log(l)}):console.error(o),1}finally{a()}}};var sDi={commands:[CUe]};var hxr={};Uf(hxr,{ImagePackCommand:()=>bUe,default:()=>KDi});var YDi=xt(sl(),1),QDi=xt(wn(),1),XDi=xt(wn(),1),JDi=xt(wn(),1),Ixr=xt(wn(),1),UDi=xt(No(),1);vl();import{readFileSync as iAc}from"node:fs";import{join as sAc}from"node:path";var oxr=xt(wTe(),1),oDi=xt(wn(),1),Egc=()=>{let e=oxr.context.payload;return process.env.GITHUB_PULL_REQUST_HEAD_SHA||e.after||e.pull_request?.head?.sha||process.env.GITHUB_SHA};var Sgc=()=>{let e=oxr.context.payload;return String(e.pull_request?.number)},vgc=async()=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return Egc();let{stdout:e}=await oDi.execUtils.execvp("git",["log","-1",'--format="%H"'],{cwd:process.cwd(),strict:!0}),[t]=e.split(` +`);return t.replace(/"/g,"")},Bgc=async()=>process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Sgc():"local",aDi=async e=>{let t=await vgc(),r=t.substr(0,7);return e==="hash-timestamp"?`${r}-${Date.now()}`:e==="ctx-hash-timestamp"?`${await Bgc()}-${r}-${Date.now()}`:t};var PDi=xt(VDi(),1),fxr=xt(No(),1),MDi=xt(No(),1);import{readFileSync as nAc}from"node:fs";var pxr=xt(wn(),1);import{platform as tAc}from"node:os";import{arch as rAc}from"node:os";var WDi="0.40.4",fDe=async(e,t,r)=>{let{code:n}=await pxr.execUtils.pipevp(e,t,{...r,end:pxr.execUtils.EndStrategy.ErrorCode});if(n!==0)throw new Error(`Command "${[e,...t].join(" ")}" failed with exit code ${n}`)},ODi=async({context:e,cwd:t})=>{let r;try{await fDe("pack",["--version"],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),r=!0}catch{r=!1}if(!r){console.log("Buildpack CLI (pack) is not installed. Installing it...");let n=`https://github.com/buildpacks/pack/releases/download/v${WDi}/pack-v${WDi}-`,a=tAc(),o=rAc();switch(a){case"linux":n+="linux.tgz";break;case"darwin":o==="arm64"?n+="macos-arm64.tgz":n+="macos.tgz";break;default:break}let l=`${t??e.cwd}/pack.tgz`;await fDe("curl",["-sSL","-o",l,n],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),await fDe("tar",["-C","/usr/local/bin/","--no-same-owner","-xzv",l],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),console.log("Buildpack CLI (pack) has been installed.")}};var HDi=async({workspace:e,registry:t,publish:r,tagPolicy:n,builder:a,buildpack:o,platform:l,require:A,cwd:f},I)=>{let C=e.replace("@","").replace(/\//g,"-"),b=`${t}${C}`,E=await aDi(n),N=[{name:"WORKSPACE",value:e},{name:"CNB_USER_ID",value:"1001"}];A&&A.length>0&&N.push({name:"BP_REQUIRE",value:A.join(",")});let B={_:{"schema-version":"0.2",id:C,name:C,version:"0.0.1"},io:{buildpacks:{exclude:[".git",".yarn/unplugged"],builder:a,build:{env:N}}}},F=MDi.ppath.join(await fxr.xfs.mktempPromise(),"project.toml");await fxr.xfs.writeFilePromise(F,(0,PDi.stringify)(B)),console.debug("project.toml",nAc(F,"utf8"));let Q=["build","--trust-builder",`${b}:${E}`,"--descriptor",F,"--buildpack",o,"--tag",`${b}:latest`,"--creation-time","now","--clear-cache","--verbose"];return r&&Q.push("--publish"),l&&Q.push("--platform",l),console.debug("Packing with args:",Q),await ODi({cwd:f,context:I}),await fDe("pack",["config","experimental","true"],{cwd:f??I.cwd,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),await fDe("pack",Q,{cwd:f??I.cwd,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),{images:[`${b}:${E}`,`${b}:latest`],tags:[E,"latest"],workspace:e}};var oAc="24",bUe=class extends YDi.BaseCommand{static paths=[["image","pack"]];registry=sA.String("-r,--registry","");tagPolicy=sA.String("-t,--tag-policy","revision");publish=sA.Boolean("-p,--publish",!1);platform=sA.String("--platform");async execute(){let t=await QDi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await XDi.Project.find(t,this.context.cwd),n=r.getWorkspaceByFilePath(this.context.cwd);return(await JDi.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{if(!this.isWorkspaceAllowedForBundle(n)){o.reportInfo(null,`Workspace ${n.manifest.name?Ixr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} not allowed for package.`);return}let l=await UDi.xfs.mktempPromise();o.reportInfo(null,`Package workspace ${n.manifest.name?Ixr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} to ${l}`);let A=iAc(sAc(this.context.cwd,"package.json"),"utf-8"),{packConfiguration:f={}}=JSON.parse(A),I=f.builderTag??oAc,C=f.buildpackVersion??I,{require:b}=f;await QRe.pack(t,r,n,o,l),await HDi({workspace:n.manifest.raw.name,registry:this.registry,publish:this.publish,tagPolicy:this.tagPolicy,buildpack:`atlantislab/buildpack-yarn-workspace:${C}`,builder:`atlantislab/builder-base:${I}`,platform:this.platform,require:b,cwd:l},this.context)})).exitCode()}isWorkspaceAllowedForBundle(t){let{scripts:r,name:n}=t.manifest,a=r.get("build");return["actl service build","actl renderer build","build-storybook","storybook build","next build","builder build library","app service build","app renderer build","service build","renderer build","strapi build","astro build"].some(l=>a?.includes(l))&&!!n}};var KDi={commands:[bUe]};var Vxr={};Uf(Vxr,{default:()=>xki});var wki=xt(sl(),1),Tki=xt(sl(),1),Rki=xt(wn(),1),Nki=xt(wn(),1),Dki=xt(wn(),1),kki=xt(No(),1);import udc from"node:assert/strict";import{join as gdc}from"node:path";var Bki=xt(vki(),1),b1t=class{constructor(t){this.cwd=t}async publish(t){await(0,Bki.publish)(this.cwd,t)}};var E1t=class extends wki.BaseCommand{static paths=[["jsr","publish"]];async execute(){let t=await Rki.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Dki.Project.find(t,this.context.cwd);if(!n)throw new Tki.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Nki.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Publishing to JSR",async()=>{let l=process.env.GITHUB_TOKEN;udc.ok(l,"GitHub Token is missing");let A=new b1t(this.context.cwd),f=await kki.xfs.mktempPromise();await A.publish({pkgJsonPath:gdc(this.context.cwd,"package.json"),canary:!1,publishArgs:["install"],binFolder:f})})})).exitCode()}};var xki={commands:[E1t]};var Jxr={};Uf(Jxr,{LibraryBuildCommand:()=>RUe,default:()=>Axi});var sxi=xt(sl(),1),oxi=xt(wn(),1),axi=xt(wn(),1),Xxr=xt(No(),1),cxi=xt(wn(),1),lxi=xt(No(),1);vl();var uxi=xt(gl(),1);import{rm as fdc}from"node:fs/promises";import{join as ixi}from"node:path";var Yxr=xt(gl(),1),GCe=xt(gl(),1),Qxr=xt(Ec(),1),Hki=xt(Mki(),1);import{isAbsolute as Adc}from"node:path";import{relative as ddc}from"node:path";var Kk=xt(Wc(),1),B1t=({messageText:e,start:t,file:r,code:n,cwd:a=process.cwd()})=>{let o=(0,Qxr.useMemo)(()=>r?Adc(r.fileName)?ddc(a,r.fileName):r.fileName:null,[r]),l=(0,Qxr.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return(0,Kk.jsxs)(GCe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%",children:[!!o&&(0,Kk.jsxs)(GCe.Box,{flexDirection:"row",children:[(0,Kk.jsx)(GCe.Box,{marginBottom:1,paddingX:2,flexGrow:1,children:(0,Kk.jsx)(B8,{line:l?l.line+1:1,column:l?.character,children:o})}),(0,Kk.jsx)(GCe.Box,{paddingX:2,children:(0,Kk.jsxs)(Yxr.Text,{bold:!0,color:"red",children:["TS",n]})})]}),(0,Kk.jsx)(eV,{offset:2}),!!r?.text&&!!l&&(0,Kk.jsxs)(Kk.Fragment,{children:[(0,Kk.jsx)(GCe.Box,{children:(0,Kk.jsx)(w8,{line:l.line+1,column:l.character,children:r.text})}),(0,Kk.jsx)(eV,{offset:2})]}),(0,Kk.jsx)(GCe.Box,{marginTop:1,paddingX:2,children:(0,Kk.jsx)(Yxr.Text,{color:"white",children:(0,Hki.flattenDiagnosticMessageText)(e,` +`)})})]})};var TUe=xt(gl(),1),qki=xt(Ec(),1),$ki=xt(Ec(),1);var Yki=xt(Ec(),1),Qki=xt(Ec(),1),Xki=xt(Ec(),1),Uki=xt(Wc(),1),Jki=({typescript:e})=>{let[t,r]=(0,Qki.useState)(10),n=(0,Xki.useRef)();return(0,Yki.useEffect)(()=>{n.current=setInterval(()=>{r(o=>o+10)},100);let a=()=>{setTimeout(()=>{r(100),n.current&&clearInterval(n.current)},600)};return e.on("end",a),()=>{e.off("end",a),n.current&&clearInterval(n.current)}},[e,n,r]),(0,Uki.jsx)(rH,{value:t/100*100})};var CDe=xt(gl(),1),nte=xt(gl(),1),Kki=xt(Ec(),1),jki=xt(Ec(),1);var jk=xt(Wc(),1),zki=({typescript:e})=>{let[t,r]=(0,jki.useState)(0);return(0,Kki.useEffect)(()=>{let n=a=>{r(a.files.length)};return e.on("start",n),()=>{e.off("start",n)}},[e,r]),t===0?(0,jk.jsxs)(CDe.Box,{flexDirection:"row",children:[(0,jk.jsx)(FG,{color:"cyan",children:"TypeScript:"}),(0,jk.jsx)(nte.Text,{children:" "}),(0,jk.jsx)(nte.Text,{color:"white",children:"Loading files..."})]}):(0,jk.jsxs)(CDe.Box,{flexDirection:"row",width:"100%",children:[(0,jk.jsxs)(CDe.Box,{flexGrow:1,children:[(0,jk.jsx)(FG,{color:"cyan",children:"TypeScript:"}),(0,jk.jsx)(nte.Text,{children:" "}),(0,jk.jsx)(nte.Text,{color:"white",children:"Processing..."})]}),(0,jk.jsx)(CDe.Box,{flexDirection:"row",children:(0,jk.jsxs)(CDe.Box,{children:[(0,jk.jsx)(nte.Text,{color:"green",children:GI.tick}),(0,jk.jsx)(nte.Text,{children:" "}),(0,jk.jsxs)(nte.Text,{color:"white",children:[t," Files"]}),(0,jk.jsx)(nte.Text,{children:" "})]})})]})};var $ce=xt(Wc(),1),w1t=({typescript:e})=>{let[t,r]=(0,qki.useState)(!1);return(0,$ki.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1e3)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,$ce.jsx)(TUe.Box,{position:"relative",height:7,children:(0,$ce.jsxs)(TUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,$ce.jsx)(TUe.Box,{children:(0,$ce.jsx)(zki,{typescript:e})}),(0,$ce.jsx)(TUe.Box,{marginTop:1,marginBottom:1,children:(0,$ce.jsx)(Jki,{typescript:e})})]})})};import pdc from"node:events";import{readFileSync as txi}from"node:fs";import{createRequire as rxi}from"node:module";import{join as nxi}from"node:path";var L6={compilerOptions:{lib:["dom","dom.iterable","esnext"],declaration:!1,emitDecoratorMetadata:!0,experimentalDecorators:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,importHelpers:!1,isolatedModules:!1,moduleResolution:"NodeNext",noFallthroughCasesInSwitch:!0,noImplicitAny:!0,noImplicitReturns:!0,noImplicitThis:!0,noUnusedLocals:!1,noUnusedParameters:!1,pretty:!0,removeComments:!0,resolveJsonModule:!0,strict:!0,strictPropertyInitialization:!1,sourceMap:!1,module:"NodeNext",target:"es2022",jsx:"react-jsx",outDir:"./dist"},exclude:["**/*/next-env.d.ts","integration","node_modules","src/**/*.spec.ts","src/**/*.test.ts","src/**/*.story.ts","src/**/*.stories.ts","**/*/dist/**/*.ts","**/*/dist/**/*.d.ts","integration/**/*.test.ts",".idea"]};var exi=e=>t=>{let r=n=>{let{moduleSpecifier:a}=n;if(a&&e.isStringLiteral(a)){if(e.isImportDeclaration(n)&&a.text.endsWith(".jsx"))return t.factory.updateImportDeclaration(n,n.modifiers,n.importClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause);if(e.isExportDeclaration(n))return t.factory.updateExportDeclaration(n,n.modifiers,n.isTypeOnly,n.exportClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause)}return e.visitEachChild(n,r,t)};return n=>e.visitNode(n,r)};var _De=class e extends pdc{constructor(r,n){super();this.ts=r;this.cwd=n}static async initialize(r){let a=rxi(import.meta.url).resolve("@atls/code-runtime/package.json"),l=rxi(a)("typescript");return new e(l,r)}async check(r=[]){return this.run(r)}async build(r=[],n={}){return this.run(r,n,!1)}async run(r=[],n={},a=!0){let o=this.getProjectIgnorePatterns(),l=this.getLibCheckOption(),A={...L6,compilerOptions:{...L6.compilerOptions,...n,skipLibCheck:l},include:r,exclude:[...L6.exclude,...o]},{fileNames:f,options:I,errors:C}=this.ts.parseJsonConfigFileContent(A,this.ts.sys,this.cwd);if(C.length>0)return this.emit("start",{files:[]}),this.emit("end",{diagnostics:C}),C;this.emit("start",{files:f});let b=this.ts.createProgram(f,{...I,noEmit:a}),E=Q=>J=>(this.emit("build:start",{file:J.fileName}),J),N=Q=>J=>(this.emit("build:end",{file:J.fileName}),J),B=b.emit(void 0,void 0,void 0,void 0,{before:[E],after:[N,exi(this.ts)]}),F=this.filterDiagnostics(this.ts.getPreEmitDiagnostics(b).concat(B.diagnostics));return this.emit("end",{diagnostics:F}),F}filterDiagnostics(r){return r.filter(n=>n.code!==2209).filter(n=>!(n.code===1479&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===2834&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===7016&&n.file?.fileName.includes("/lexical/"))).filter(n=>!(n.code===6133&&n.file?.fileName.includes("/@yarnpkg/libui/"))).filter(n=>!([2315,2411,2304,7006,7016].includes(n.code)&&n.file?.fileName.includes("/@strapi/"))).filter(n=>!([2688,2307,2503].includes(n.code)&&n.file?.fileName.includes("/pkg-tests-core/"))).filter(n=>!([2307].includes(n.code)&&n.file?.fileName.includes("/@nestjs/testing/")))}getProjectIgnorePatterns(){let r=txi(nxi(this.cwd,"package.json"),"utf-8"),{typecheckIgnorePatterns:n=[]}=JSON.parse(r);return n}getLibCheckOption(){let r=txi(nxi(this.cwd,"package.json"),"utf-8"),{typecheckSkipLibCheck:n=!1}=JSON.parse(r);return n}};var T1t=xt(Wc(),1),RUe=class extends sxi.BaseCommand{static paths=[["library","build"]];target=sA.String("-t,--target","./dist");async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Xxr.Filename.pnpCjs)&&t.includes(Xxr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await oxi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await axi.Project.find(t,this.context.cwd),n=[];this.target&&(n.push("-t"),n.push(this.target));let a=await lxi.xfs.mktempPromise(),{executable:o,env:l}=await BC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await cxi.execUtils.pipevp(o,["library","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){await this.cleanTarget();let t=await _De.initialize(this.context.cwd),{clear:r}=(0,uxi.render)((0,T1t.jsx)(w1t,{typescript:t}));try{let n=await t.build([ixi(this.context.cwd,"./src")],{outDir:ixi(this.context.cwd,this.target),declaration:!0});return n.forEach(a=>{LE((0,T1t.jsx)(B1t,{...a})).split(` +`).forEach(l=>{console.log(l)})}),n.length===0?0:1}catch(n){return LE((0,T1t.jsx)(Pk,{error:n})).split(` +`).forEach(a=>{console.error(a)}),1}finally{r()}}async cleanTarget(){try{await fdc(this.target,{recursive:!0,force:!0})}catch{}}};var gxi=(e,t)=>{t.publishConfig&&t.publishConfig.exports&&(t.exports=t.publishConfig.exports)};var Axi={hooks:{beforeWorkspacePacking:gxi},commands:[RUe]};var eGr={};Uf(eGr,{LintCommand:()=>kUe,default:()=>Nxi});var Bxi=xt(sl(),1),zxr=xt(wn(),1),qxr=xt(wn(),1),$xr=xt(No(),1),wxi=xt(wn(),1),Txi=xt(No(),1);vl();var Rxi=xt(gl(),1);var DUe=xt(gl(),1),Cxi=xt(Ec(),1),_xi=xt(Ec(),1);var dxi=xt(Ec(),1),Uxr=xt(Ec(),1),fxi=xt(Wc(),1),pxi=({linter:e})=>{let[t,r]=(0,Uxr.useState)(0),[n,a]=(0,Uxr.useState)(0);return(0,dxi.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("lint:end",l),e.on("end",A),()=>{e.off("start",o),e.off("lint:end",l),e.off("end",A)}},[e,t,r,a]),(0,fxi.jsx)(rH,{value:t>0?n/t*100:0})};import{relative as Ixi}from"node:path";var yDe=xt(gl(),1),zk=xt(gl(),1),hxi=xt(Ec(),1),NUe=xt(Ec(),1);var eE=xt(Wc(),1),Idc=({state:e})=>e==="warning"?(0,eE.jsx)(zk.Text,{color:"yellow",children:GI.warning}):e==="error"?(0,eE.jsx)(zk.Text,{color:"red",children:GI.cross}):e==="success"?(0,eE.jsx)(zk.Text,{color:"green",children:GI.tick}):(0,eE.jsx)(zk.Text,{color:"white",children:GI.circleDotted}),hdc=({state:e,children:t})=>e==="in-progress"?(0,eE.jsx)(zk.Text,{color:"gray",children:t}):(0,eE.jsx)(zk.Text,{color:"white",children:t}),mxi=({cwd:e,linter:t})=>{let[r,n]=(0,NUe.useState)(void 0),[a,o]=(0,NUe.useState)(0),[l,A]=(0,NUe.useState)(0),[f,I]=(0,NUe.useState)(0);return(0,hxi.useEffect)(()=>{let C=N=>{o(N.files.length)},b=N=>{n({state:"in-progress",file:Ixi(e,N.file)})},E=({result:N})=>{let B="success";N.warningCount>0&&(I(F=>F+N.warningCount),B="warning"),N.errorCount>0&&(A(F=>F+N.errorCount),B="error"),n({state:B,file:Ixi(e,N.filePath)})};return t.on("start",C),t.on("lint:start",b),t.on("lint:end",E),()=>{t.off("start",C),t.off("lint:start",b),t.off("lint:end",E)}},[t,n,o,A,I]),r?(0,eE.jsxs)(yDe.Box,{flexDirection:"row",width:"100%",children:[(0,eE.jsxs)(yDe.Box,{flexGrow:1,children:[(0,eE.jsx)(FG,{color:"cyan",children:"Lint:"}),(0,eE.jsx)(zk.Text,{children:" "}),(0,eE.jsx)(hdc,{state:r.state,children:r.file})]}),(0,eE.jsx)(yDe.Box,{flexDirection:"row",children:(0,eE.jsxs)(yDe.Box,{children:[(0,eE.jsx)(Idc,{state:r.state}),(0,eE.jsx)(zk.Text,{children:" "}),(0,eE.jsxs)(zk.Text,{color:"yellow",children:[f," Warnings"]}),(0,eE.jsx)(zk.Text,{children:" "}),(0,eE.jsxs)(zk.Text,{color:"red",children:[l," Errors"]}),(0,eE.jsx)(zk.Text,{children:" "}),(0,eE.jsxs)(zk.Text,{color:"white",children:[a," Files"]}),(0,eE.jsx)(zk.Text,{children:" "})]})})]}):(0,eE.jsxs)(yDe.Box,{flexDirection:"row",children:[(0,eE.jsx)(FG,{color:"cyan",children:"Lint:"}),(0,eE.jsx)(zk.Text,{children:" "}),(0,eE.jsx)(zk.Text,{color:"white",children:"Loading files..."})]})};var ele=xt(Wc(),1),yxi=({cwd:e,linter:t})=>{let[r,n]=(0,Cxi.useState)(!1);return(0,_xi.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,ele.jsx)(DUe.Box,{position:"relative",height:7,children:(0,ele.jsxs)(DUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,ele.jsx)(DUe.Box,{children:(0,ele.jsx)(mxi,{cwd:e,linter:t})}),(0,ele.jsx)(DUe.Box,{marginTop:1,marginBottom:1,children:(0,ele.jsx)(pxi,{linter:t})})]})})};var Kxr=xt(gl(),1),tle=xt(gl(),1);var fD=xt(Wc(),1),bxi=({filePath:e,message:t,source:r})=>(0,fD.jsxs)(tle.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,fD.jsxs)(tle.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,fD.jsx)(tle.Box,{flexDirection:"row",flexGrow:1,children:(0,fD.jsx)(B8,{line:t.line,column:t.column,children:e})}),(0,fD.jsx)(tle.Box,{children:(0,fD.jsxs)(Kxr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,fD.jsx)(tle.Box,{children:(0,fD.jsx)(eV,{offset:2})}),!!r&&(0,fD.jsxs)(fD.Fragment,{children:[(0,fD.jsx)(tle.Box,{children:(0,fD.jsx)(w8,{line:t.line,column:t.column,children:r})}),(0,fD.jsx)(eV,{offset:2})]}),(0,fD.jsx)(tle.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,fD.jsxs)(Kxr.Text,{color:"white",children:[" ",t.message]})})]});var Exi=xt(gl(),1);import{isAbsolute as mdc}from"node:path";import{relative as Cdc}from"node:path";var Sxi=xt(Ec(),1);var jxr=xt(Wc(),1),vxi=({filePath:e,source:t,messages:r,cwd:n=process.cwd()})=>{let a=(0,Sxi.useMemo)(()=>mdc(e)?Cdc(n,e):e,[e]);return r.length===0?null:(0,jxr.jsx)(Exi.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,jxr.jsx)(bxi,{filePath:a,message:o,source:t},jO()))})};var R1t=xt(Wc(),1),kUe=class extends Bxi.BaseCommand{static paths=[["lint"]];fix=sA.Boolean("--fix");files=sA.Rest({required:0});cache=sA.Boolean("--cache",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes($xr.Filename.pnpCjs)&&t.includes($xr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await zxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qxr.Project.find(t,this.context.cwd),n=await Txi.xfs.mktempPromise(),a=[];this.fix&&a.push("--fix"),this.cache&&a.push("--cache");let{executable:o,env:l}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await wxi.execUtils.pipevp(o,["lint",...a,...this.files],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await zxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qxr.Project.find(t,this.context.cwd),n=await PBe.initialize(r.cwd,this.context.cwd),{clear:a}=(0,Rxi.render)((0,R1t.jsx)(yxi,{cwd:r.cwd,linter:n}));n.on("lint:end",({result:o})=>{o.messages.length>0&&LE((0,R1t.jsx)(vxi,{...o})).split(` +`).forEach(A=>{console.log(A)})});try{return(await n.lint(this.files,{fix:this.fix,cache:this.cache})).find(l=>l.messages.length>0)?1:0}catch(o){return o instanceof Error?LE((0,R1t.jsx)(Pk,{error:o})).split(` +`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var Nxi={commands:[kUe]};var mGr={};Uf(mGr,{default:()=>EGi});var nGi=xt(sl(),1),iGi=xt(sl(),1),sGi=xt(wn(),1),oGi=xt(wn(),1),aGi=xt(wn(),1);import FUe from"node:assert/strict";import{execSync as opc}from"node:child_process";function rle(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function N1t(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce((a,o)=>N1t.bind(null,e,o,a,n),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((a,o)=>o.hook.bind(null,a,n),r)():r(n))}function Dxi(e,t,r,n){let a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=(o,l)=>Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))),t==="after"&&(n=(o,l)=>{let A;return Promise.resolve().then(o.bind(null,l)).then(f=>(A=f,a(A,l))).then(()=>A)}),t==="error"&&(n=(o,l)=>Promise.resolve().then(o.bind(null,l)).catch(A=>a(A,l))),e.registry[r].push({hook:n,orig:a})}function kxi(e,t,r){if(!e.registry[t])return;let n=e.registry[t].map(a=>a.orig).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}var xxi=Function.bind,Gxi=xxi.bind(xxi);function Fxi(e,t,r){let n=Gxi(kxi,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(a=>{let o=r?[t,a,r]:[t,a];e[a]=e.api[a]=Gxi(Dxi,null).apply(null,o)})}function _dc(){let e=Symbol("Singular"),t={registry:{}},r=N1t.bind(null,t,e);return Fxi(r,t,e),r}function ydc(){let e={registry:{}},t=N1t.bind(null,e);return Fxi(t,e),t}var Zxi={Singular:_dc,Collection:ydc};var bdc="0.0.0-development",Edc=`octokit-endpoint.js/${bdc} ${rle()}`,Sdc={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":Edc},mediaType:{format:""}};function vdc(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function Bdc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function Wxi(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{Bdc(t[n])?n in e?r[n]=Wxi(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function Lxi(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function rGr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=vdc(r.headers),Lxi(r),Lxi(r.headers);let n=Wxi(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function wdc(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var Tdc=/\{[^}]+\}/g;function Rdc(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function Ndc(e){let t=e.match(Tdc);return t?t.map(Rdc).reduce((r,n)=>r.concat(n),[]):[]}function Vxi(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function Oxi(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function EDe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function xUe(e,t,r){return t=e==="+"||e==="#"?Oxi(t):EDe(t),r?EDe(r)+"="+t:t}function bDe(e){return e!=null}function tGr(e){return e===";"||e==="&"||e==="?"}function Ddc(e,t,r,n){var a=e[r],o=[];if(bDe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(xUe(t,a,tGr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(bDe).forEach(function(l){o.push(xUe(t,l,tGr(t)?r:""))}):Object.keys(a).forEach(function(l){bDe(a[l])&&o.push(xUe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(bDe).forEach(function(A){l.push(xUe(t,A))}):Object.keys(a).forEach(function(A){bDe(a[A])&&(l.push(EDe(A)),l.push(xUe(t,a[A].toString())))}),tGr(t)?o.push(EDe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?bDe(a)&&o.push(EDe(r)):a===""&&(t==="&"||t==="?")?o.push(EDe(r)+"="):a===""&&o.push("");return o}function kdc(e){return{expand:xdc.bind(null,e)}}function xdc(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(Ddc(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return Oxi(o)}),e==="/"?e:e.replace(/\/$/,"")}function Pxi(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=Vxi(e,["method","baseUrl","url","headers","request","mediaType"]),l=Ndc(r);r=kdc(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=Vxi(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=wdc(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function Gdc(e,t,r){return Pxi(rGr(e,t,r))}function Mxi(e,t){let r=rGr(e,t),n=Gdc.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:Mxi.bind(null,r),merge:rGr.bind(null,r),parse:Pxi})}var Hxi=Mxi(null,Sdc);var FCe=class extends Error{name;status;request;response;constructor(t,r,n){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in n&&(this.response=n.response);let a=Object.assign({},n.request);n.request.headers.authorization&&(a.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a}};var Fdc="0.0.0-development",Zdc={headers:{"user-agent":`octokit-request.js/${Fdc} ${rle()}`}};function Ldc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function Yxi(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,n=e.request?.parseSuccessResponseBody!==!1,a=Ldc(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,o=Object.fromEntries(Object.entries(e.headers).map(([b,E])=>[b,String(E)])),l;try{l=await t(e.url,{method:e.method,body:a,redirect:e.request?.redirect,headers:o,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(b){let E="Unknown Error";if(b instanceof Error){if(b.name==="AbortError")throw b.status=500,b;E=b.message,b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause))}let N=new FCe(E,500,{request:e});throw N.cause=b,N}let A=l.status,f=l.url,I={};for(let[b,E]of l.headers)I[b]=E;let C={url:f,status:A,headers:I,data:""};if("deprecation"in I){let b=I.link&&I.link.match(/<([^>]+)>; rel="deprecation"/),E=b&&b.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${I.sunset}${E?`. See ${E}`:""}`)}if(A===204||A===205)return C;if(e.method==="HEAD"){if(A<400)return C;throw new FCe(l.statusText,A,{response:C,request:e})}if(A===304)throw C.data=await nGr(l),new FCe("Not modified",A,{response:C,request:e});if(A>=400)throw C.data=await nGr(l),new FCe(Vdc(C.data),A,{response:C,request:e});return C.data=n?await nGr(l):l.body,C}async function nGr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():e.arrayBuffer()}function Vdc(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function iGr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return Yxi(r.parse(l));let A=(f,I)=>Yxi(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:iGr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:iGr.bind(null,r)})}var GUe=iGr(Hxi,Zdc);var Wdc="0.0.0-development";function Odc(e){return`Request failed due to following response errors: `+e.errors.map(t=>` - ${t.message}`).join(` -`)}var Zdc=class extends Error{constructor(e,t,r){super(Fdc(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},Ldc=["method","baseUrl","url","headers","request","query","mediaType"],Vdc=["query","method","url"],Zxi=/\/api\/v3\/?$/;function Wdc(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(Vdc.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>Ldc.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Zxi.test(o)&&(a.url=o.replace(Zxi,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Zdc(a,A,l.data)}return l.data.data})}function rGr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>Wdc(r,a,o),{defaults:rGr.bind(null,r),endpoint:r.endpoint})}var bxu=rGr(xUe,{headers:{"user-agent":`octokit-graphql.js/${Gdc} ${tle()}`},method:"POST",url:"/graphql"});function Lxi(e){return rGr(e,{method:"POST",url:"/graphql"})}var Odc=/^v1\./,Pdc=/^ghs_/,Mdc=/^ghu_/;async function Hdc(e){let t=e.split(/\./).length===3,r=Odc.test(e)||Pdc.test(e),n=Mdc.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function Ydc(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function Qdc(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=Ydc(e),t(a)}var x1t=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(Hdc.bind(null,t),{hook:Qdc.bind(null,t)})};var nGr="6.1.2";var Vxi=()=>{},Xdc=console.warn.bind(console),Jdc=console.error.bind(console),Wxi=`octokit-core.js/${nGr} ${tle()}`,G1t=class{static VERSION=nGr;static defaults(t){return class extends this{constructor(...n){let a=n[0]||{};if(typeof t=="function"){super(t(a));return}super(Object.assign({},t,a,a.userAgent&&t.userAgent?{userAgent:`${a.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(a=>!r.includes(a)))}}constructor(t={}){let r=new wxi.Collection,n={baseUrl:xUe.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=t.userAgent?`${t.userAgent} ${Wxi}`:Wxi,t.baseUrl&&(n.baseUrl=t.baseUrl),t.previews&&(n.mediaType.previews=t.previews),t.timeZone&&(n.headers["time-zone"]=t.timeZone),this.request=xUe.defaults(n),this.graphql=Lxi(this.request).defaults(n),this.log=Object.assign({debug:Vxi,info:Vxi,warn:Xdc,error:Jdc},t.log),this.hook=r,t.authStrategy){let{authStrategy:o,...l}=t,A=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:l},t.auth));r.wrap("request",A.hook),this.auth=A}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=x1t(t.auth);r.wrap("request",o.hook),this.auth=o}let a=this.constructor;for(let o=0;o{e.log.debug("request",r);let n=Date.now(),a=e.request.endpoint.parse(r),o=a.url.replace(r.baseUrl,"");return t(r).then(l=>{let A=l.headers["x-github-request-id"];return e.log.info(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l}).catch(l=>{let A=l.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l})})}iGr.VERSION=Oxi;var Udc="0.0.0-development";function Kdc(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function sGr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=Kdc(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function Pxi(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),Mxi(e,[],sGr(e,t,r)[Symbol.asyncIterator](),n)}function Mxi(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:Mxi(e,t,r,n)})}var Wxu=Object.assign(Pxi,{iterator:sGr});function oGr(e){return{paginate:Object.assign(Pxi.bind(null,e),{iterator:sGr.bind(null,e)})}}oGr.VERSION=Udc;var aGr="13.2.6";var jdc={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Hxi=jdc;var ZCe=new Map;for(let[e,t]of Object.entries(Hxi))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);ZCe.has(e)||ZCe.set(e,new Map),ZCe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var zdc={has({scope:e},t){return ZCe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...ZCe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=ZCe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=qdc(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function cGr(e){let t={};for(let r of ZCe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},zdc);return t}function qdc(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function $dc(e){return{rest:cGr(e)}}$dc.VERSION=aGr;function lGr(e){let t=cGr(e);return{...t,rest:t}}lGr.VERSION=aGr;var Yxi="21.0.2";var Qxi=G1t.plugin(iGr,lGr,oGr).defaults({userAgent:`octokit-rest.js/${Yxi}`});var Xxi=function(){if(!process.env.GITHUB_ACTION)throw new Error("[@octokit/auth-action] `GITHUB_ACTION` environment variable is not set. @octokit/auth-action is meant to be used in GitHub Actions only.");let t=[process.env.GITHUB_TOKEN,process.env.INPUT_GITHUB_TOKEN,process.env.INPUT_TOKEN].filter(Boolean);if(t.length===0)throw new Error("[@octokit/auth-action] `GITHUB_TOKEN` variable is not set. It must be set on either `env:` or `with:`. See https://github.com/octokit/auth-action.js#createactionauth");if(t.length>1)throw new Error("[@octokit/auth-action] The token variable is specified more than once. Use either `with.token`, `with.GITHUB_TOKEN`, or `env.GITHUB_TOKEN`. See https://github.com/octokit/auth-action.js#createactionauth");let r=t.pop();return x1t(r)};var F1t=class{client;constructor(t){this.client=new Qxi({auth:t.token,authStrategy:Xxi})}async create(t){let{owner:r,repo:n,tag_name:a,name:o,make_latest:l,draft:A,body:f}=t;return(await this.client.repos.createRelease({owner:r,repo:n,tag_name:a,draft:A,make_latest:l?"true":"false",name:o,body:f})).status}};import epc from"node:assert/strict";var Jxi=e=>{console.debug("Repository URL:",e);let t=e.match(/github\.com[/:](.+?)\/(.+?)(?:\.git|$)/);epc.ok(t,"URL does not match pattern");let[,r,n]=t;return{organization:r,repository:n}};var Z1t=class extends Uxi.BaseCommand{static paths=[["release","create"]];async execute(){let t=await jxi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await qxi.Project.find(t,this.context.cwd);if(!n)throw new Kxi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await zxi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Creating release",async()=>{let l=process.env.GITHUB_TOKEN;GUe.ok(l,"GitHub Token is missing");let A="",f=n.manifest.name?.scope;f&&(A+=`@${f}/`);let I=n.manifest.name?.name;GUe.ok(I,"Missing workspace name");let{version:C}=n.manifest;GUe.ok(C,"Missing version"),A+=`${I}`;let E=await new _Be().generate({packageName:A,version:C,path:this.context.cwd}),N=new F1t({token:l}),B,F;try{({repository:F,organization:B}=Jxi(tpc("git remote get-url origin",{encoding:"utf-8"})))}catch{[B,F]=process.env.GITHUB_REPOSITORY?.split("/")??["",""]}GUe.ok(B,"Could not get url of the repo"),GUe.ok(F,"Could not get url of the repo"),await N.create({draft:!1,make_latest:!0,name:`${A}@${C}`,tag_name:`${A}@${C}`,body:E,owner:B,repo:F})})})).exitCode()}};var $xi={commands:[Z1t]};var rFr={};Uf(rFr,{RendererBuildCommand:()=>FUe,RendererDevCommand:()=>YUe,default:()=>lZi});var tGi=Nt(dl(),1),rGi=Nt(mn(),1),nGi=Nt(mn(),1),iGi=Nt(mn(),1),L1t=Nt(mn(),1),gGr=Nt(mn(),1),sGi=Nt(mn(),1),y4=Nt(Io(),1),xV=Nt(Io(),1);import{PassThrough as eGi}from"node:stream";var FUe=class extends tGi.BaseCommand{static paths=[["renderer","build"]];async execute(){let t=await rGi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await nGi.Project.find(t,this.context.cwd);return(await iGi.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Renderer build",async()=>{let o=new eGi,l=new eGi;o.on("data",A=>{A.toString().split(` +`)}var Pdc=class extends Error{constructor(e,t,r){super(Odc(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},Mdc=["method","baseUrl","url","headers","request","query","mediaType"],Hdc=["query","method","url"],Qxi=/\/api\/v3\/?$/;function Ydc(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(Hdc.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>Mdc.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Qxi.test(o)&&(a.url=o.replace(Qxi,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Pdc(a,A,l.data)}return l.data.data})}function sGr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>Ydc(r,a,o),{defaults:sGr.bind(null,r),endpoint:r.endpoint})}var GGu=sGr(GUe,{headers:{"user-agent":`octokit-graphql.js/${Wdc} ${rle()}`},method:"POST",url:"/graphql"});function Xxi(e){return sGr(e,{method:"POST",url:"/graphql"})}var Qdc=/^v1\./,Xdc=/^ghs_/,Jdc=/^ghu_/;async function Udc(e){let t=e.split(/\./).length===3,r=Qdc.test(e)||Xdc.test(e),n=Jdc.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function Kdc(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function jdc(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=Kdc(e),t(a)}var D1t=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(Udc.bind(null,t),{hook:jdc.bind(null,t)})};var oGr="6.1.2";var Jxi=()=>{},zdc=console.warn.bind(console),qdc=console.error.bind(console),Uxi=`octokit-core.js/${oGr} ${rle()}`,k1t=class{static VERSION=oGr;static defaults(t){return class extends this{constructor(...n){let a=n[0]||{};if(typeof t=="function"){super(t(a));return}super(Object.assign({},t,a,a.userAgent&&t.userAgent?{userAgent:`${a.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(a=>!r.includes(a)))}}constructor(t={}){let r=new Zxi.Collection,n={baseUrl:GUe.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=t.userAgent?`${t.userAgent} ${Uxi}`:Uxi,t.baseUrl&&(n.baseUrl=t.baseUrl),t.previews&&(n.mediaType.previews=t.previews),t.timeZone&&(n.headers["time-zone"]=t.timeZone),this.request=GUe.defaults(n),this.graphql=Xxi(this.request).defaults(n),this.log=Object.assign({debug:Jxi,info:Jxi,warn:zdc,error:qdc},t.log),this.hook=r,t.authStrategy){let{authStrategy:o,...l}=t,A=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:l},t.auth));r.wrap("request",A.hook),this.auth=A}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=D1t(t.auth);r.wrap("request",o.hook),this.auth=o}let a=this.constructor;for(let o=0;o{e.log.debug("request",r);let n=Date.now(),a=e.request.endpoint.parse(r),o=a.url.replace(r.baseUrl,"");return t(r).then(l=>{let A=l.headers["x-github-request-id"];return e.log.info(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l}).catch(l=>{let A=l.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l})})}aGr.VERSION=Kxi;var $dc="0.0.0-development";function epc(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function cGr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=epc(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function jxi(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),zxi(e,[],cGr(e,t,r)[Symbol.asyncIterator](),n)}function zxi(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:zxi(e,t,r,n)})}var zGu=Object.assign(jxi,{iterator:cGr});function lGr(e){return{paginate:Object.assign(jxi.bind(null,e),{iterator:cGr.bind(null,e)})}}lGr.VERSION=$dc;var uGr="13.2.6";var tpc={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},qxi=tpc;var ZCe=new Map;for(let[e,t]of Object.entries(qxi))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);ZCe.has(e)||ZCe.set(e,new Map),ZCe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var rpc={has({scope:e},t){return ZCe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...ZCe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=ZCe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=npc(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function gGr(e){let t={};for(let r of ZCe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},rpc);return t}function npc(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function ipc(e){return{rest:gGr(e)}}ipc.VERSION=uGr;function AGr(e){let t=gGr(e);return{...t,rest:t}}AGr.VERSION=uGr;var $xi="21.0.2";var eGi=k1t.plugin(aGr,AGr,lGr).defaults({userAgent:`octokit-rest.js/${$xi}`});var tGi=function(){if(!process.env.GITHUB_ACTION)throw new Error("[@octokit/auth-action] `GITHUB_ACTION` environment variable is not set. @octokit/auth-action is meant to be used in GitHub Actions only.");let t=[process.env.GITHUB_TOKEN,process.env.INPUT_GITHUB_TOKEN,process.env.INPUT_TOKEN].filter(Boolean);if(t.length===0)throw new Error("[@octokit/auth-action] `GITHUB_TOKEN` variable is not set. It must be set on either `env:` or `with:`. See https://github.com/octokit/auth-action.js#createactionauth");if(t.length>1)throw new Error("[@octokit/auth-action] The token variable is specified more than once. Use either `with.token`, `with.GITHUB_TOKEN`, or `env.GITHUB_TOKEN`. See https://github.com/octokit/auth-action.js#createactionauth");let r=t.pop();return D1t(r)};var x1t=class{client;constructor(t){this.client=new eGi({auth:t.token,authStrategy:tGi})}async create(t){let{owner:r,repo:n,tag_name:a,name:o,make_latest:l,draft:A,body:f}=t;return(await this.client.repos.createRelease({owner:r,repo:n,tag_name:a,draft:A,make_latest:l?"true":"false",name:o,body:f})).status}};import spc from"node:assert/strict";var rGi=e=>{console.debug("Repository URL:",e);let t=e.match(/github\.com[/:](.+?)\/(.+?)(?:\.git|$)/);spc.ok(t,"URL does not match pattern");let[,r,n]=t;return{organization:r,repository:n}};var apc=422,cpc='"resource":"Release"',lpc='"code":"already_exists"',upc='"field":"tag_name"',gpc=e=>{let t=e;return t.status===apc&&typeof t.message=="string"&&t.message.includes(cpc)&&t.message.includes(lpc)&&t.message.includes(upc)},G1t=class extends nGi.BaseCommand{static paths=[["release","create"]];async execute(){let t=await sGi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await aGi.Project.find(t,this.context.cwd);if(!n)throw new iGi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await oGi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Creating release",async()=>{let l=process.env.GITHUB_TOKEN;FUe.ok(l,"GitHub Token is missing");let A="",f=n.manifest.name?.scope;f&&(A+=`@${f}/`);let I=n.manifest.name?.name;FUe.ok(I,"Missing workspace name");let{version:C}=n.manifest;FUe.ok(C,"Missing version"),A+=`${I}`;let E=await new _Be().generate({packageName:A,version:C,path:this.context.cwd}),N=new x1t({token:l}),B,F;try{({repository:F,organization:B}=rGi(opc("git remote get-url origin",{encoding:"utf-8"})))}catch{[B,F]=process.env.GITHUB_REPOSITORY?.split("/")??["",""]}FUe.ok(B,"Could not get url of the repo"),FUe.ok(F,"Could not get url of the repo");let Q=`${A}@${C}`;try{await N.create({draft:!1,make_latest:!0,name:Q,tag_name:Q,body:E,owner:B,repo:F})}catch(J){if(gpc(J)){o.reportInfo(null,`Release ${Q} already exists; skipping`);return}throw J}})})).exitCode()}};var pGi=xt(sl(),1),fGi=xt(sl(),1),IGi=xt(wn(),1),hGi=xt(wn(),1),mGi=xt(wn(),1),SDe=xt(wn(),1),CGi=xt(wn(),1),_Gi=xt(No(),1),hGr=xt(No(),1),yGi=xt(LO(),1);vl();var Apc="feat",dpc=": ",ppc="(",fpc=")",cGi="!",Ipc=".",hpc=["BREAKING CHANGE:","BREAKING CHANGE ","BREAKING-CHANGE:","BREAKING-CHANGE "],mpc=/^(?:[A-Za-z0-9-]+|BREAKING CHANGE)(?:: | #).+/,dGr={patch:0,minor:1,major:2},pGr=e=>Object.hasOwn(dGr,e),gGi=(e,t)=>dGr[t]>dGr[e]?t:e,IGr=(e,t)=>e===void 0?t:pGr(e)?gGi(e,t):e,F1t=(e,t)=>e===void 0?t:pGr(e)?pGr(t)?IGr(e,t):t:e,fGr=e=>e.relativeCwd===Ipc,AGi=(e,t)=>e===t.relativeCwd||e.startsWith(`${t.relativeCwd}/`),Cpc=(e,t)=>e.relativeCwd===t.relativeCwd,_pc=(e,t)=>Cpc(e,t)?!1:fGr(e)?!fGr(t):t.relativeCwd.startsWith(`${e.relativeCwd}/`),lGi=(e,t,r)=>r.some(n=>_pc(t,n)&&AGi(e,n)),ypc=(e,t,r)=>(fGr(t)||AGi(e,t))&&!lGi(e,t,r),bpc=e=>e.length>0&&[...e].every(t=>t>="a"&&t<="z"),uGi=e=>e.trim().length===0,Epc=e=>mpc.test(e),Spc=e=>{let t=e.split(` +`).map(a=>a.replace("\r",""));for(;t.length>0&&uGi(t[t.length-1]);)t.pop();let r=t.length;for(;r>0&&!uGi(t[r-1]);)r-=1;if(r===0||r===t.length)return[];let n=t.slice(r);return Epc(n[0])?n:[]},vpc=e=>Spc(e).some(t=>hpc.some(r=>t.startsWith(r))),Bpc=e=>{let t=e.indexOf(dpc);if(t<1)return;let r=e.slice(0,t),n=r.endsWith(cGi);n&&(r=r.slice(0,-cGi.length));let a=r.indexOf(ppc);if(a>=0){if(!r.endsWith(fpc))return;r=r.slice(0,a)}if(bpc(r))return{type:r,breaking:n}},wpc=e=>{let[t=""]=e.split(` +`,1),r=Bpc(t.replace("\r",""));if(r)return r.breaking||vpc(e)?"major":r.type===Apc?"minor":"patch"},dGi=(e,t,r=e)=>{let n=new Map;for(let a of t){let o=wpc(a.message);if(o)for(let l of e){if(!a.files.some(f=>ypc(f,l,r)))continue;let A=n.get(l.ident);n.set(l.ident,{workspace:l,strategy:A?gGi(A.strategy,o):o})}}return[...n.values()].sort((a,o)=>a.workspace.relativeCwd.localeCompare(o.workspace.relativeCwd))};var Tpc="origin/HEAD",Rpc="HEAD",Npc=`${Tpc}..${Rpc}`,Dpc="ENOENT",kpc="decline",xpc=(e,t)=>typeof e=="object"&&e!==null&&"code"in e&&e.code===t,bGi=e=>e.manifest.name?CGi.structUtils.stringifyIdent(e.manifest.name):void 0,Gpc=e=>e.manifest.raw.private!==!0&&!!bGi(e),Fpc=e=>{let t=bGi(e);if(!(!t||!Gpc(e)))return{ident:t,relativeCwd:e.relativeCwd}},Zpc=e=>({relativeCwd:e.relativeCwd}),Lpc=e=>[e.filename,e.previous_filename].filter(t=>!!t),Vpc=e=>({message:e.data.commit.message,files:[...new Set((e.data.files??[]).flatMap(Lpc))]}),Wpc=async()=>(await oCt()).map(Vpc),Opc=async(e,t)=>{let{stdout:r}=await SDe.execUtils.execvp("git",["rev-list","--reverse",t],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)},Ppc=async(e,t)=>{let{stdout:r}=await SDe.execUtils.execvp("git",["show","--format=%B","--no-patch","--max-count=1",t],{cwd:e.cwd,strict:!0});return r},Mpc=async(e,t)=>{let{stdout:r}=await SDe.execUtils.execvp("git",["rev-list","--parents","-n","1",t],{cwd:e.cwd,strict:!0}),[,...n]=r.trim().split(" ").filter(Boolean);return n},Hpc=(e,t)=>e.find(r=>!t.has(r))??e[0],Ypc=async(e,t)=>{let{stdout:r}=await SDe.execUtils.execvp("git",["diff-tree","--no-commit-id","--name-only","-r","--root","--no-renames","-z",t],{cwd:e.cwd,strict:!0});return r.split("\0").map(n=>n.trim()).filter(Boolean)},Qpc=async(e,t,r)=>{let n=Hpc(await Mpc(e,t),r);if(!n)return Ypc(e,t);let{stdout:a}=await SDe.execUtils.execvp("git",["diff","--name-only","--no-renames","-z",n,t],{cwd:e.cwd,strict:!0});return[...new Set(a.split("\0").map(o=>o.trim()).filter(Boolean))]},Xpc=async(e,t,r)=>({message:await Ppc(e,t),files:await Qpc(e,t,r)}),Jpc=async(e,t)=>{let r=await Opc(e,t),n=new Set(r);return Promise.all(r.map(async a=>Xpc(e,a,n)))},Upc=async(e,t)=>t===void 0&&process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Wpc():Jpc(e,t??Npc),Kpc=e=>{let t=(0,yGi.parseSyml)(e),r=new Map;for(let n of t.declined??[])typeof n=="string"&&r.set(n,F1t(r.get(n),kpc));for(let[n,a]of Object.entries(t.releases??{}))typeof a=="string"&&r.set(n,F1t(r.get(n),a));return r},jpc=async e=>{let t=e.get("deferredVersionFolder"),r=new Map,n;try{n=await hGr.xfs.readdirPromise(t)}catch(a){if(xpc(a,Dpc))return r;throw a}for(let a of n){if(!a.endsWith(".yml"))continue;let o=_Gi.ppath.join(t,a),l=await hGr.xfs.readFilePromise(o,"utf8"),A=Kpc(l);for(let[f,I]of A)r.set(f,F1t(r.get(f),I))}return r},Z1t=class extends pGi.BaseCommand{static paths=[["release","version","defer"]];since=sA.String("--since");dryRun=sA.Boolean("--dry-run",!1);async execute(){let t=await IGi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hGi.Project.find(t,this.context.cwd);if(!n)throw new fGi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await mGi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{let l=r.workspaces.map(Fpc).filter(b=>!!b),A=r.workspaces.map(Zpc),f=await Upc(r,this.since),I=dGi(l,f,A);if(!I.length){o.reportInfo(null,"No released workspaces need deferred version records");return}let C=await jpc(t);for(let{workspace:b,strategy:E}of I){let N=IGr(C.get(b.ident),E);if(o.reportInfo(null,`Deferring ${b.ident} as ${N}`),this.dryRun)continue;if(await this.cli.run(["workspace",b.ident,"version",N,"--deferred"],{cwd:r.cwd})>0)throw new Error(`Failed to defer ${b.ident} as ${E}`)}})).exitCode()}};var EGi={commands:[G1t,Z1t]};var uFr={};Uf(uFr,{RendererBuildCommand:()=>ZUe,RendererDevCommand:()=>QUe,default:()=>DZi});var vGi=xt(sl(),1),BGi=xt(wn(),1),wGi=xt(wn(),1),TGi=xt(wn(),1),L1t=xt(wn(),1),CGr=xt(wn(),1),b4=xt(No(),1),GV=xt(No(),1);import{PassThrough as SGi}from"node:stream";var ZUe=class extends vGi.BaseCommand{static paths=[["renderer","build"]];async execute(){let t=await BGi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await wGi.Project.find(t,this.context.cwd);return(await TGi.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Renderer build",async()=>{let o=new SGi,l=new SGi;o.on("data",A=>{A.toString().split(` `).filter(Boolean).forEach(f=>{a.reportInfo(L1t.MessageName.UNNAMED,f)})}),l.on("data",A=>{A.toString().split(` -`).filter(Boolean).forEach(f=>{a.reportInfo(L1t.MessageName.UNNAMED,f)})});try{await y4.xfs.writeJsonPromise(xV.ppath.join(this.context.cwd,"src/package.json"),{type:"module"});let A=await y4.xfs.mktempPromise(),f=await sGi.scriptUtils.makeScriptEnv({binFolder:A,project:r,ignoreCorepack:!0});await gGr.execUtils.pipevp("yarn",["next","build","src","--no-lint"],{end:gGr.execUtils.EndStrategy.ErrorCode,cwd:this.context.cwd,stdin:this.context.stdin,stdout:o,stderr:l,env:f})}catch(A){a.reportError(L1t.MessageName.UNNAMED,A instanceof Error?A.message:"Build error")}finally{await y4.xfs.removePromise(xV.ppath.join(this.context.cwd,"src/package.json"))}}),await a.startTimerPromise("Copy standalone files",async()=>{await y4.xfs.existsPromise(xV.ppath.join(this.context.cwd,"dist"))&&await y4.xfs.rmdirPromise(xV.ppath.join(this.context.cwd,"dist"),{recursive:!0}),await y4.xfs.copyPromise(xV.ppath.join(this.context.cwd,"dist"),xV.ppath.join(this.context.cwd,"src/.next/standalone",this.context.cwd.replace(`${t.projectCwd||""}/`,""),"src"))}),await a.startTimerPromise("Copy static files",async()=>{await y4.xfs.copyPromise(xV.ppath.join(this.context.cwd,"dist/.next/static"),xV.ppath.join(this.context.cwd,"src/.next/static"))}),await a.startTimerPromise("Copy edge chunks files",async()=>{await y4.xfs.existsPromise(xV.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))&&await y4.xfs.copyPromise(xV.ppath.join(this.context.cwd,"dist/.next/server/edge-chunks"),xV.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))}),await a.startTimerPromise("Move server start files",async()=>{await y4.xfs.movePromise(xV.ppath.join(this.context.cwd,"dist/server.js"),xV.ppath.join(this.context.cwd,"dist/index.js"))})})).exitCode()}};var nZi=Nt(dl(),1),iZi=Nt(mn(),1),sZi=Nt(mn(),1),oZi=Nt(mn(),1),t2t=Nt(Io(),1),HUe=Nt(Io(),1);Rl();var aZi=Nt(bGi(),1),cZi=Nt(rZi(),1),YUe=class extends nZi.BaseCommand{static paths=[["renderer","dev"]];tunnel=vA.Boolean("--tunnel");https=vA.Boolean("--https");#e;async runTunnel(t,r){this.#e&&this.#e.close(),this.#e=await(0,cZi.default)({host:t,port:r}),console.log("your url is: %s",this.#e.url)}startTunnel(t,r=3e3){this.runTunnel(t,r),process.stdin.on("data",n=>{n.toString().trim()==="rs"&&this.runTunnel(t,r)})}async execute(){let t=await iZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await sZi.Project.find(t,this.context.cwd),n=["next","dev","src"];if(this.https){if(!await t2t.xfs.existsPromise(HUe.ppath.join(r.cwd,".config/certs/local/dev.key")))throw new Error("Https key not found");if(!await t2t.xfs.existsPromise(HUe.ppath.join(r.cwd,".config/certs/local/dev.crt")))throw new Error("Https cert not found");n.push("--experimental-https"),n.push("--experimental-https-key",HUe.ppath.join(r.cwd,".config/certs/local/dev.key")),n.push("--experimental-https-cert",HUe.ppath.join(r.cwd,".config/certs/local/dev.crt"))}let a=await t2t.xfs.mktempPromise(),o=await oZi.scriptUtils.makeScriptEnv({binFolder:a,project:r,ignoreCorepack:!0});if((0,aZi.default)("yarn",n,{stdio:"inherit",cwd:this.context.cwd,env:o}),this.tunnel){let l=r.getWorkspaceByCwd(this.context.cwd),{tunnel:A}=l.manifest.raw.tools||{};if(!A?.host)throw new Error("Tunnel host not configured");this.startTunnel(A.host,A.port)}}};var lZi={commands:[FUe,YUe]};var D9r={};Uf(D9r,{AbstractServiceCommand:()=>A_e,ServiceBuildCommand:()=>vKe,ServiceDevCommand:()=>BKe,default:()=>I4i});var n4i=Nt(mn(),1),i4i=Nt(mn(),1),T9r=Nt(Io(),1),s4i=Nt(mn(),1),o4i=Nt(mn(),1),a4i=Nt(Io(),1),c4i=Nt(ul(),1);var QUe=Nt(ul(),1),hZi=Nt(Ec(),1),mZi=Nt(Ec(),1);var uZi=Nt(Ec(),1),gZi=Nt(Ec(),1),dZi=Nt(Wc(),1),AZi=({service:e})=>{let[t,r]=(0,gZi.useState)(0);return(0,uZi.useEffect)(()=>{let n=({percent:a})=>{r(a)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,dZi.jsx)(tH,{value:t})};var nFr=Nt(ul(),1),iFr=Nt(ul(),1),pZi=Nt(Ec(),1),fZi=Nt(Ec(),1),PCe=Nt(Wc(),1),IZi=({service:e})=>{let[t,r]=(0,fZi.useState)("");return(0,pZi.useEffect)(()=>{let n=a=>{r(a.message)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,PCe.jsx)(nFr.Box,{flexDirection:"row",width:"100%",children:(0,PCe.jsxs)(nFr.Box,{flexGrow:1,children:[(0,PCe.jsx)(GG,{color:"cyan",children:"Service:"}),(0,PCe.jsx)(iFr.Text,{children:" "}),(0,PCe.jsx)(iFr.Text,{color:"white",children:t})]})})};var rle=Nt(Wc(),1),r2t=({service:e})=>{let[t,r]=(0,hZi.useState)(!1);return(0,mZi.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,rle.jsx)(QUe.Box,{position:"relative",height:7,children:(0,rle.jsxs)(QUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,rle.jsx)(QUe.Box,{children:(0,rle.jsx)(IZi,{service:e})}),(0,rle.jsx)(QUe.Box,{marginTop:1,marginBottom:1,children:(0,rle.jsx)(AZi,{service:e})})]})})};import{readFile as cIc}from"node:fs/promises";import{writeFile as lIc}from"node:fs/promises";import{mkdtemp as uIc}from"node:fs/promises";import{tmpdir as gIc}from"node:os";import{join as XUe}from"node:path";import{readFile as oIc}from"node:fs/promises";import{join as aIc}from"node:path";import{readFile as iIc}from"node:fs/promises";import{join as sIc}from"node:path";var n2t=class{static async find(t){try{let{tools:r={}}=JSON.parse(await iIc(sIc(t,"package.json"),"utf-8"));return r}catch{return{}}}};var i2t=class{constructor(t){this.cwd=t}#e=[];#t=[];async loadPackageJson(){try{return JSON.parse(await oIc(aIc(this.cwd,"package.json"),"utf-8"))}catch{return{}}}async loadDependencies(){let{dependencies:t={}}=await this.loadPackageJson();return Object.keys(t)}async loadExternals(){let{service:t}=await n2t.find(this.cwd);return t?.externals||[]}async build(){return this.#e=await this.loadExternals(),this.#t=await this.loadDependencies(),this.externals}externals=({request:t},r)=>{t&&this.#t.includes(t)?r(void 0,t,"module"):t&&this.#e.includes(t)?r(void 0,t,"import"):r()}};var CZi=["@grpc/grpc-js","mqtt","nats","mariadb/callback","better-sqlite3","pg-native","hdb-pool","oracledb","mongodb","tedious","sqlite3","mysql","mysql2","mssql","sql.js","libsql","@mikro-orm/better-sqlite","@mikro-orm/mongodb","@mikro-orm/mariadb","@mikro-orm/sqlite","@mikro-orm/mysql","@nestjs/mongoose","@nestjs/typeorm/dist/common/typeorm.utils","@nestjs/sequelize/dist/common/sequelize.utils"];var s2t=class{constructor(t,r,n){this.webpack=t;this.loaders=r;this.cwd=n}async build(t="production",r=[]){let n=XUe(await uIc(XUe(gIc(),"code-service-")),"tsconfig.json");await lIc(n,'{"include":["**/*"]}');let a=await this.getWorkspaceType(),l=["webpack/hot/poll?100",await new i2t(this.cwd).build()],A=this.createPlugins(t,r,a==="module");return{mode:t,bail:t==="production",target:"node",optimization:{minimize:!1},experiments:{outputModule:a==="module"},plugins:A,entry:{index:XUe(this.cwd,"src/index"),...t==="development"&&{hot:"webpack/hot/poll?100"}},node:{__dirname:!0,__filename:!1},output:{path:XUe(this.cwd,"dist"),filename:"[name].js",library:{type:a},chunkFormat:t==="development"?"commonjs":a,module:a==="module",clean:!1,assetModuleFilename:"assets/[name][ext]"},resolve:{extensionAlias:{".js":[".tsx",".ts",".js"],".jsx":[".tsx",".ts",".js"],".cjs":[".cjs",".cts"],".mjs":[".mjs",".mts"]},extensions:[".tsx",".ts",".js"],alias:{"class-transformer/storage":"class-transformer/cjs/storage"}},externals:l,externalsType:t==="production"?a==="module"?"import":"commonjs":"commonjs2",externalsPresets:{node:!0},devtool:t==="production"?"source-map":"eval-cheap-module-source-map",module:{rules:[{test:/(^.?|\.[^d]|[^.]d|[^.][^d])\.tsx?$/,use:{loader:this.loaders.tsLoader,options:{transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...Z6.compilerOptions,sourceMap:!0},context:this.cwd,configFile:n}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource"},{test:/\.(png|svg|jpg|jpeg|gif)$/i,type:"asset/resource"},{test:/\.(md)$/i,type:"asset/resource"},{test:/\.node$/,use:this.loaders.nodeLoader}]}}}async getWorkspaceType(){try{let t=await cIc(XUe(this.cwd,"package.json"),"utf-8"),{type:r="commonjs"}=JSON.parse(t);return r}catch{return"module"}}createPlugins(t,r,n){let a=[new this.webpack.IgnorePlugin({checkResource:o=>{if(o.endsWith(".js.map"))return!0;if(!CZi.includes(o))return!1;try{Et.resolve(o,{paths:[this.cwd]})}catch{return!0}return!1}}),...r];return n&&a.push(new this.webpack.BannerPlugin({banner:`import { createRequire } from 'node:module' +`).filter(Boolean).forEach(f=>{a.reportInfo(L1t.MessageName.UNNAMED,f)})});try{await b4.xfs.writeJsonPromise(GV.ppath.join(this.context.cwd,"src/package.json"),{type:"module"});let A=await b4.xfs.mktempPromise(),{executable:f,env:I}=await BC({binFolder:A,project:r});await CGr.execUtils.pipevp(f,["next","build","src","--no-lint"],{end:CGr.execUtils.EndStrategy.ErrorCode,cwd:this.context.cwd,stdin:this.context.stdin,stdout:o,stderr:l,env:I})}catch(A){a.reportError(L1t.MessageName.UNNAMED,A instanceof Error?A.message:"Build error")}finally{await b4.xfs.removePromise(GV.ppath.join(this.context.cwd,"src/package.json"))}}),await a.startTimerPromise("Copy standalone files",async()=>{await b4.xfs.existsPromise(GV.ppath.join(this.context.cwd,"dist"))&&await b4.xfs.rmdirPromise(GV.ppath.join(this.context.cwd,"dist"),{recursive:!0}),await b4.xfs.copyPromise(GV.ppath.join(this.context.cwd,"dist"),GV.ppath.join(this.context.cwd,"src/.next/standalone",this.context.cwd.replace(`${t.projectCwd||""}/`,""),"src"))}),await a.startTimerPromise("Copy static files",async()=>{await b4.xfs.copyPromise(GV.ppath.join(this.context.cwd,"dist/.next/static"),GV.ppath.join(this.context.cwd,"src/.next/static"))}),await a.startTimerPromise("Copy edge chunks files",async()=>{await b4.xfs.existsPromise(GV.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))&&await b4.xfs.copyPromise(GV.ppath.join(this.context.cwd,"dist/.next/server/edge-chunks"),GV.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))}),await a.startTimerPromise("Move server start files",async()=>{await b4.xfs.movePromise(GV.ppath.join(this.context.cwd,"dist/server.js"),GV.ppath.join(this.context.cwd,"dist/index.js"))})})).exitCode()}};var BZi=xt(sl(),1),wZi=xt(wn(),1),TZi=xt(wn(),1),t2t=xt(No(),1),YUe=xt(No(),1);vl();var RZi=xt(QGi(),1),NZi=xt(vZi(),1);var QUe=class extends BZi.BaseCommand{static paths=[["renderer","dev"]];tunnel=sA.Boolean("--tunnel");https=sA.Boolean("--https");#e;async runTunnel(t,r){this.#e&&this.#e.close(),this.#e=await(0,NZi.default)({host:t,port:r}),console.log("your url is: %s",this.#e.url)}startTunnel(t,r=3e3){this.runTunnel(t,r),process.stdin.on("data",n=>{n.toString().trim()==="rs"&&this.runTunnel(t,r)})}async execute(){let t=await wZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await TZi.Project.find(t,this.context.cwd),n=["next","dev","src"];if(this.https){if(!await t2t.xfs.existsPromise(YUe.ppath.join(r.cwd,".config/certs/local/dev.key")))throw new Error("Https key not found");if(!await t2t.xfs.existsPromise(YUe.ppath.join(r.cwd,".config/certs/local/dev.crt")))throw new Error("Https cert not found");n.push("--experimental-https"),n.push("--experimental-https-key",YUe.ppath.join(r.cwd,".config/certs/local/dev.key")),n.push("--experimental-https-cert",YUe.ppath.join(r.cwd,".config/certs/local/dev.crt"))}let a=await t2t.xfs.mktempPromise(),{executable:o,env:l}=await BC({binFolder:a,project:r});if((0,RZi.default)(o,n,{stdio:"inherit",cwd:this.context.cwd,env:l}),this.tunnel){let A=r.getWorkspaceByCwd(this.context.cwd),{tunnel:f}=A.manifest.raw.tools||{};if(!f?.host)throw new Error("Tunnel host not configured");this.startTunnel(f.host,f.port)}}};var DZi={commands:[ZUe,QUe]};var W9r={};Uf(W9r,{AbstractServiceCommand:()=>A_e,ServiceBuildCommand:()=>BKe,ServiceDevCommand:()=>wKe,default:()=>L4i});var B4i=xt(wn(),1),w4i=xt(wn(),1),Z9r=xt(No(),1),T4i=xt(wn(),1),R4i=xt(No(),1),N4i=xt(gl(),1);var XUe=xt(gl(),1),WZi=xt(Ec(),1),OZi=xt(Ec(),1);var kZi=xt(Ec(),1),xZi=xt(Ec(),1),FZi=xt(Wc(),1),GZi=({service:e})=>{let[t,r]=(0,xZi.useState)(0);return(0,kZi.useEffect)(()=>{let n=({percent:a})=>{r(a)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,FZi.jsx)(rH,{value:t})};var gFr=xt(gl(),1),AFr=xt(gl(),1),ZZi=xt(Ec(),1),LZi=xt(Ec(),1),PCe=xt(Wc(),1),VZi=({service:e})=>{let[t,r]=(0,LZi.useState)("");return(0,ZZi.useEffect)(()=>{let n=a=>{r(a.message)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,PCe.jsx)(gFr.Box,{flexDirection:"row",width:"100%",children:(0,PCe.jsxs)(gFr.Box,{flexGrow:1,children:[(0,PCe.jsx)(FG,{color:"cyan",children:"Service:"}),(0,PCe.jsx)(AFr.Text,{children:" "}),(0,PCe.jsx)(AFr.Text,{color:"white",children:t})]})})};var nle=xt(Wc(),1),r2t=({service:e})=>{let[t,r]=(0,WZi.useState)(!1);return(0,OZi.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,nle.jsx)(XUe.Box,{position:"relative",height:7,children:(0,nle.jsxs)(XUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,nle.jsx)(XUe.Box,{children:(0,nle.jsx)(VZi,{service:e})}),(0,nle.jsx)(XUe.Box,{marginTop:1,marginBottom:1,children:(0,nle.jsx)(GZi,{service:e})})]})})};var $Ic="@atls/code-runtime/runtime-exec-argv",ehc=async()=>await import($Ic);var PZi=async e=>{let{createRuntimeExecArgv:t}=await ehc();return t(e)};import{readFile as shc}from"node:fs/promises";import{writeFile as ohc}from"node:fs/promises";import{mkdtemp as ahc}from"node:fs/promises";import{tmpdir as chc}from"node:os";import{join as JUe}from"node:path";import{readFile as nhc}from"node:fs/promises";import{join as ihc}from"node:path";import{readFile as thc}from"node:fs/promises";import{join as rhc}from"node:path";var n2t=class{static async find(t){try{let{tools:r={}}=JSON.parse(await thc(rhc(t,"package.json"),"utf-8"));return r}catch{return{}}}};var i2t=class{constructor(t){this.cwd=t}#e=[];#t=[];async loadPackageJson(){try{return JSON.parse(await nhc(ihc(this.cwd,"package.json"),"utf-8"))}catch{return{}}}async loadDependencies(){let{dependencies:t={}}=await this.loadPackageJson();return Object.keys(t)}async loadExternals(){let{service:t}=await n2t.find(this.cwd);return t?.externals||[]}async build(){return this.#e=await this.loadExternals(),this.#t=await this.loadDependencies(),this.externals}externals=({request:t},r)=>{t&&this.#t.includes(t)?r(void 0,t,"module"):t&&this.#e.includes(t)?r(void 0,t,"import"):r()}};var MZi=["@grpc/grpc-js","mqtt","nats","mariadb/callback","better-sqlite3","pg-native","hdb-pool","oracledb","mongodb","tedious","sqlite3","mysql","mysql2","mssql","sql.js","libsql","@mikro-orm/better-sqlite","@mikro-orm/mongodb","@mikro-orm/mariadb","@mikro-orm/sqlite","@mikro-orm/mysql","@nestjs/mongoose","@nestjs/typeorm/dist/common/typeorm.utils","@nestjs/sequelize/dist/common/sequelize.utils"];var s2t=class{constructor(t,r,n){this.webpack=t;this.loaders=r;this.cwd=n}async build(t="production",r=[]){let n=JUe(await ahc(JUe(chc(),"code-service-")),"tsconfig.json");await ohc(n,'{"include":["**/*"]}');let a=await this.getWorkspaceType(),l=["webpack/hot/poll?100",await new i2t(this.cwd).build()],A=this.createPlugins(t,r,a==="module");return{mode:t,bail:t==="production",target:"node",optimization:{minimize:!1},experiments:{outputModule:a==="module"},plugins:A,entry:{index:JUe(this.cwd,"src/index"),...t==="development"&&{hot:"webpack/hot/poll?100"}},node:{__dirname:!0,__filename:!1},output:{path:JUe(this.cwd,"dist"),filename:"[name].js",library:{type:a},chunkFormat:t==="development"?"commonjs":a,module:a==="module",clean:!1,assetModuleFilename:"assets/[name][ext]"},resolve:{extensionAlias:{".js":[".tsx",".ts",".js"],".jsx":[".tsx",".ts",".js"],".cjs":[".cjs",".cts"],".mjs":[".mjs",".mts"]},extensions:[".tsx",".ts",".js"],alias:{"class-transformer/storage":"class-transformer/cjs/storage"}},externals:l,externalsType:t==="production"?a==="module"?"import":"commonjs":"commonjs2",externalsPresets:{node:!0},devtool:t==="production"?"source-map":"eval-cheap-module-source-map",module:{rules:[{test:/(^.?|\.[^d]|[^.]d|[^.][^d])\.tsx?$/,use:{loader:this.loaders.tsLoader,options:{transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...L6.compilerOptions,sourceMap:!0},context:this.cwd,configFile:n}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource"},{test:/\.(png|svg|jpg|jpeg|gif)$/i,type:"asset/resource"},{test:/\.(md)$/i,type:"asset/resource"},{test:/\.node$/,use:this.loaders.nodeLoader}]}}}async getWorkspaceType(){try{let t=await shc(JUe(this.cwd,"package.json"),"utf-8"),{type:r="commonjs"}=JSON.parse(t);return r}catch{return"module"}}createPlugins(t,r,n){let a=[new this.webpack.IgnorePlugin({checkResource:o=>{if(o.endsWith(".js.map"))return!0;if(!MZi.includes(o))return!1;try{Et.resolve(o,{paths:[this.cwd]})}catch{return!0}return!1}}),...r];return n&&a.push(new this.webpack.BannerPlugin({banner:`import { createRequire } from 'node:module' import { fileURLToPath } from 'node:url' const require = createRequire(import.meta.url) const __filename = fileURLToPath(import.meta.url) -`,raw:!0})),t==="development"&&a.push(new this.webpack.HotModuleReplacementPlugin),a}};import RNc from"node:events";import{PassThrough as NNc}from"node:stream";var w4=Nt(GDe(),1);var zZr="@namespace";var LQi=Nt(GDe(),1),VQi=Nt(pKe(),1),WQi=Nt(pKe(),1),vvt=Nt(GDe(),1);var hQi=Nt(LLr(),1),mQi=Nt(pKe(),1),mvt=class extends mQi.ConsoleLogRecordExporter{export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));process.stdout.write(`${a} -`)}r?.({code:hQi.ExportResultCode.SUCCESS})}};var FQi=Nt(LLr(),1),ZQi=Nt(pKe(),1);var PLr=Nt(wQi(),1),MLr=Nt(xQi(),1);import{isMainThread as bNc}from"node:worker_threads";var ENc=PLr.default.default||PLr.default;function bvt(){}function SNc(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",()=>{e.end()})):e.flushSync())}var GQi=()=>{let e=new ENc({fd:process.stdout.fd||1});e.on("error",t),bNc&&(MLr.default.register(e,SNc),e.on("close",()=>{MLr.default.unregister(e)}));function t(r){if(r.code==="EPIPE"){e.write=bvt,e.end=bvt,e.flushSync=bvt,e.destroy=bvt;return}e.removeListener("error",t),e.emit("error",r)}return e};var vNc=function(e,t,r,n,a){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},BNc=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},Evt,Svt=class extends ZQi.ConsoleLogRecordExporter{constructor(){super(),Evt.set(this,void 0),vNc(this,Evt,GQi(),"f")}export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));BNc(this,Evt,"f").write(`${a} -`)}r?.({code:FQi.ExportResultCode.SUCCESS})}};Evt=new WeakMap;var Bvt=class e{static getLoggerProvider(){if(!e.initialized&&vvt.logs.getLoggerProvider()instanceof LQi.NoopLoggerProvider){let t=new VQi.LoggerProvider;t.addLogRecordProcessor(new WQi.SimpleLogRecordProcessor(process.env.JEST_WORKER_ID?new mvt:new Svt)),vvt.logs.setGlobalLoggerProvider(t),e.initialized=!0}return vvt.logs.getLoggerProvider()}};Bvt.initialized=!1;var HLr=Nt(GDe(),1),TOu=Object.keys(HLr.SeverityNumber).reduce((e,t)=>({...e,[HLr.SeverityNumber[t]]:t}),{});import{fork as wNc}from"node:child_process";import{join as TNc}from"node:path";var wvt=class{constructor(t={}){this.options=t}info(t){this.options.stdout&&this.options.stdout.write(Buffer.from(JSON.stringify({body:t,severityNumber:9,attributes:{"@namespace":"webpack:start-server"}})))}error(t){this.options.stderr&&this.options.stderr.write(Buffer.from(JSON.stringify({body:t.message,severityNumber:17,attributes:{"@namespace":"webpack:start-server","@stack":t.stack}})))}};var Tvt=class{options;entryFile=null;worker=null;initialized=!1;logger;constructor(t={}){this.logger=new wvt(t),this.options=t}apply(t){t.hooks.afterEmit.tapAsync({name:"StartServerPlugin"},this.afterEmit)}afterEmit=(t,r)=>{this.initialized?(this.worker?.connected&&this.worker.pid&&process.kill(this.worker.pid),this.startServer(t,r)):(this.initialized=!0,r())};startServer=(t,r)=>{this.logger.info("Starting server...");let{path:n}=t.compiler.options.output;n&&(this.entryFile=TNc(n,"index.js"),this.runWorker(this.entryFile,a=>{this.worker=a,r()}))};runWorker(t,r){let n=wNc(t,[],{silent:!0});this.options.stdout&&n.stdout?.pipe(this.options.stdout,{end:!1}),this.options.stderr&&n.stderr?.pipe(this.options.stderr,{end:!1}),setTimeout(()=>{r(n)},0)}};var eke=class e extends RNc{constructor(r,n){super();this.webpack=r;this.config=n}static async initialize(r){let{webpack:n,tsLoaderPath:a,nodeLoaderPath:o,protoLoaderPath:l}=await import("@atls/code-runtime/webpack"),A=new s2t(n,{nodeLoader:o,tsLoader:a,protoLoader:l},r);return new e(n,A)}async build(){let r=this.webpack(await this.config.build("production",[new this.webpack.ProgressPlugin((n,a)=>{this.emit("build:progress",{percent:n*100,message:a})})]));return new Promise((n,a)=>{r.run((o,l)=>{if(this.emit("end",{error:o,stats:l}),o)o.message?n([o]):a(o);else if(l){let{errors:A=[],warnings:f=[]}=l.toJson();n([...A.map(I=>({record:I,severityNumber:w4.SeverityNumber.ERROR})),...f.map(I=>({record:I,severityNumber:w4.SeverityNumber.WARN}))])}else n([])})})}async watch(r){let n=new NNc;return n.on("data",a=>{a.toString().split(/\r?\n/).filter(Boolean).forEach(o=>{try{r(JSON.parse(o))}catch{r({severityNumber:w4.SeverityNumber.INFO,body:o})}})}),this.webpack(await this.config.build("development",[new Tvt({stdout:n,stderr:n}),new this.webpack.ProgressPlugin((a,o)=>{this.emit("build:progress",{percent:a*100,message:o})})])).watch({},(a,o)=>{if(this.emit("end",{error:a,stats:o}),a)r(a);else if(o){let{errors:l=[],warnings:A=[]}=o.toJson();A.forEach(f=>{r({record:f,severityNumber:w4.SeverityNumber.WARN})}),l.forEach(f=>{r({record:f,severityNumber:w4.SeverityNumber.ERROR})})}})}};var r4i=Nt(dl(),1);Rl();var OQi=Nt(ul(),1),MQi=Nt(Wc(),1),PQi=({children:e})=>e?(0,MQi.jsx)(OQi.Text,{children:e}):null;var JLr=Nt(ul(),1);var ULr=Nt(Ec(),1);var DNc=(e,t)=>(e=e.replace(/((?r.toLowerCase()),e.replace(/(\p{Uppercase_Letter}+)(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,(r,n,a)=>n+t+a.toLowerCase()));function YLr(e,{separator:t="_",preserveConsecutiveUppercase:r=!1}={}){if(!(typeof e=="string"&&typeof t=="string"))throw new TypeError("The `text` and `separator` arguments should be of type `string`");if(e.length<2)return r?e:e.toLowerCase();let n=`$1${t}$2`,a=e.replace(/([\p{Lowercase_Letter}\d])(\p{Uppercase_Letter})/gu,n);return r?DNc(a,t):a.replace(/(\p{Uppercase_Letter})(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,n).toLowerCase()}var YQi=Nt(HQi(),1),KLr=Nt(Wc(),1),QQi=({children:e})=>{let t=(0,ULr.useMemo)(()=>typeof e=="string"?YLr(e,{separator:"-"}):e,[e]),r=(0,ULr.useMemo)(()=>t&&typeof t=="string"?(0,YQi.default)(t.split(":")[0]).color:"#d75f00",[t]);return t?Array.isArray(t)?t.map(n=>(0,KLr.jsx)(JLr.Text,{color:r,children:n},UO())):(0,KLr.jsx)(JLr.Text,{color:r,children:t}):null};var ske=Nt(ul(),1);var qXi=Nt($Qi(),1);var t9r="@mikro-orm-sql",r9r="@mikro-orm-params";var ONc;ONc=new WeakMap;var J6=Nt(ul(),1),Lvt=Nt(ul(),1);var YXi=Nt(tXi(),1),kXi=Object.defineProperty,PNc=Object.defineProperties,MNc=Object.getOwnPropertyDescriptors,Fvt=Object.getOwnPropertySymbols,xXi=Object.prototype.hasOwnProperty,GXi=Object.prototype.propertyIsEnumerable,rXi=(e,t,r)=>t in e?kXi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,tx=(e,t)=>{for(var r in t||(t={}))xXi.call(t,r)&&rXi(e,r,t[r]);if(Fvt)for(var r of Fvt(t))GXi.call(t,r)&&rXi(e,r,t[r]);return e},oL=(e,t)=>PNc(e,MNc(t)),HNc=(e,t)=>{var r={};for(var n in e)xXi.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Fvt)for(var n of Fvt(e))t.indexOf(n)<0&&GXi.call(e,n)&&(r[n]=e[n]);return r},YNc=(e,t)=>{for(var r in t)kXi(e,r,{get:t[r],enumerable:!0})},FXi={};YNc(FXi,{bigquery:()=>cDc,db2:()=>yDc,db2i:()=>NDc,hive:()=>WDc,mariadb:()=>UDc,mysql:()=>nkc,n1ql:()=>ykc,plsql:()=>Nkc,postgresql:()=>Okc,redshift:()=>Kkc,singlestoredb:()=>jxc,snowflake:()=>sGc,spark:()=>ixc,sql:()=>Exc,sqlite:()=>pxc,tidb:()=>Akc,transactsql:()=>Pxc,trino:()=>kxc});var oc=e=>e.flatMap(QNc),QNc=e=>kvt(JNc(e)).map(XNc),XNc=e=>e.replace(/ +/g," ").trim(),JNc=e=>({type:"mandatory_block",items:B9r(e,0)[0]}),B9r=(e,t,r)=>{let n=[];for(;e[t];){let[a,o]=UNc(e,t);if(n.push(a),t=o,e[t]==="|")t++;else if(e[t]==="}"||e[t]==="]"){if(r!==e[t])throw new Error(`Unbalanced parenthesis in: ${e}`);return t++,[n,t]}else if(t===e.length){if(r)throw new Error(`Unbalanced parenthesis in: ${e}`);return[n,t]}else throw new Error(`Unexpected "${e[t]}"`)}return[n,t]},UNc=(e,t)=>{let r=[];for(;;){let[n,a]=KNc(e,t);if(n)r.push(n),t=a;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},KNc=(e,t)=>{if(e[t]==="{")return jNc(e,t+1);if(e[t]==="[")return zNc(e,t+1);{let r="";for(;e[t]&&/[A-Za-z0-9_ ]/.test(e[t]);)r+=e[t],t++;return[r,t]}},jNc=(e,t)=>{let[r,n]=B9r(e,t,"}");return[{type:"mandatory_block",items:r},n]},zNc=(e,t)=>{let[r,n]=B9r(e,t,"]");return[{type:"optional_block",items:r},n]},kvt=e=>{if(typeof e=="string")return[e];if(e.type==="concatenation")return e.items.map(kvt).reduce(qNc,[""]);if(e.type==="mandatory_block")return e.items.flatMap(kvt);if(e.type==="optional_block")return["",...e.items.flatMap(kvt)];throw new Error(`Unknown node type: ${e}`)},qNc=(e,t)=>{let r=[];for(let n of e)for(let a of t)r.push(n+a);return r},ZXi=(e=>(e.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",e.IDENTIFIER="IDENTIFIER",e.STRING="STRING",e.VARIABLE="VARIABLE",e.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",e.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",e.RESERVED_KEYWORD="RESERVED_KEYWORD",e.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",e.RESERVED_PHRASE="RESERVED_PHRASE",e.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",e.RESERVED_CLAUSE="RESERVED_CLAUSE",e.RESERVED_SELECT="RESERVED_SELECT",e.RESERVED_JOIN="RESERVED_JOIN",e.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",e.ARRAY_KEYWORD="ARRAY_KEYWORD",e.CASE="CASE",e.END="END",e.WHEN="WHEN",e.ELSE="ELSE",e.THEN="THEN",e.LIMIT="LIMIT",e.BETWEEN="BETWEEN",e.AND="AND",e.OR="OR",e.XOR="XOR",e.OPERATOR="OPERATOR",e.COMMA="COMMA",e.ASTERISK="ASTERISK",e.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",e.OPEN_PAREN="OPEN_PAREN",e.CLOSE_PAREN="CLOSE_PAREN",e.LINE_COMMENT="LINE_COMMENT",e.BLOCK_COMMENT="BLOCK_COMMENT",e.DISABLE_COMMENT="DISABLE_COMMENT",e.NUMBER="NUMBER",e.NAMED_PARAMETER="NAMED_PARAMETER",e.QUOTED_PARAMETER="QUOTED_PARAMETER",e.NUMBERED_PARAMETER="NUMBERED_PARAMETER",e.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",e.CUSTOM_PARAMETER="CUSTOM_PARAMETER",e.DELIMITER="DELIMITER",e.EOF="EOF",e))(ZXi||{}),LXi=e=>({type:"EOF",raw:"\xABEOF\xBB",text:"\xABEOF\xBB",start:e}),ike=LXi(1/0),rke=e=>t=>t.type===e.type&&t.text===e.text,u_e={ARRAY:rke({text:"ARRAY",type:"RESERVED_DATA_TYPE"}),BY:rke({text:"BY",type:"RESERVED_KEYWORD"}),SET:rke({text:"SET",type:"RESERVED_CLAUSE"}),STRUCT:rke({text:"STRUCT",type:"RESERVED_DATA_TYPE"}),WINDOW:rke({text:"WINDOW",type:"RESERVED_CLAUSE"}),VALUES:rke({text:"VALUES",type:"RESERVED_CLAUSE"})},VXi=e=>e==="RESERVED_DATA_TYPE"||e==="RESERVED_KEYWORD"||e==="RESERVED_FUNCTION_NAME"||e==="RESERVED_PHRASE"||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="ARRAY_KEYWORD"||e==="CASE"||e==="END"||e==="WHEN"||e==="ELSE"||e==="THEN"||e==="LIMIT"||e==="BETWEEN"||e==="AND"||e==="OR"||e==="XOR",$Nc=e=>e==="AND"||e==="OR"||e==="XOR",eDc=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],tDc=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],rDc=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],nDc=oc(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),iDc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),nXi=oc(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),n9r=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),sDc=oc(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),oDc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),aDc=oc(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),cDc={name:"bigquery",tokenizerOptions:{reservedSelect:nDc,reservedClauses:[...iDc,...n9r,...nXi],reservedSetOperations:sDc,reservedJoins:oDc,reservedPhrases:aDc,reservedKeywords:tDc,reservedDataTypes:rDc,reservedFunctionNames:eDc,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:lDc},formatOptions:{onelineClauses:[...nXi,...n9r],tabularOnelineClauses:n9r}};function lDc(e){return uDc(gDc(e))}function uDc(e){let t=ike;return e.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,oL(tx({},r),{type:"RESERVED_FUNCTION_NAME"})):(t=r,r))}function gDc(e){var t;let r=[];for(let n=0;nt=>t.type==="IDENTIFIER"||t.type==="COMMA"?t[e]+" ":t[e];function ADc(e,t){let r=0;for(let n=t;n"?r--:a.text===">>"&&(r-=2),r===0)return n}return e.length-1}var dDc=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],pDc=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],fDc=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],IDc=oc(["SELECT [ALL | DISTINCT]"]),hDc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),sXi=oc(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),i9r=oc(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),mDc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),CDc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),_Dc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),yDc={name:"db2",tokenizerOptions:{reservedSelect:IDc,reservedClauses:[...hDc,...sXi,...i9r],reservedSetOperations:mDc,reservedJoins:CDc,reservedPhrases:_Dc,reservedKeywords:pDc,reservedDataTypes:fDc,reservedFunctionNames:dDc,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","\xAC=","\xAC>","\xAC<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...sXi,...i9r],tabularOnelineClauses:i9r}},bDc=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],EDc=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],SDc=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],vDc=oc(["SELECT [ALL | DISTINCT]"]),BDc=oc(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),oXi=oc(["CREATE [OR REPLACE] TABLE"]),s9r=oc(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),wDc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),TDc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),RDc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),NDc={name:"db2i",tokenizerOptions:{reservedSelect:vDc,reservedClauses:[...BDc,...oXi,...s9r],reservedSetOperations:wDc,reservedJoins:TDc,reservedPhrases:RDc,reservedKeywords:EDc,reservedDataTypes:SDc,reservedFunctionNames:bDc,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","\xAC=","\xAC>","\xAC<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...oXi,...s9r],tabularOnelineClauses:s9r}},DDc=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],kDc=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],xDc=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],GDc=oc(["SELECT [ALL | DISTINCT]"]),FDc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),aXi=oc(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),o9r=oc(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),ZDc=oc(["UNION [ALL | DISTINCT]"]),LDc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),VDc=oc(["{ROWS | RANGE} BETWEEN"]),WDc={name:"hive",tokenizerOptions:{reservedSelect:GDc,reservedClauses:[...FDc,...aXi,...o9r],reservedSetOperations:ZDc,reservedJoins:LDc,reservedPhrases:VDc,reservedKeywords:kDc,reservedDataTypes:xDc,reservedFunctionNames:DDc,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...aXi,...o9r],tabularOnelineClauses:o9r}};function Zvt(e){return e.map((t,r)=>{let n=e[r+1]||ike;if(u_e.SET(t)&&n.text==="(")return oL(tx({},t),{type:"RESERVED_FUNCTION_NAME"});let a=e[r-1]||ike;return u_e.VALUES(t)&&a.text==="="?oL(tx({},t),{type:"RESERVED_FUNCTION_NAME"}):t})}var ODc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],PDc=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],MDc=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],HDc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),YDc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),cXi=oc(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),a9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),QDc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),XDc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),JDc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),UDc={name:"mariadb",tokenizerOptions:{reservedSelect:HDc,reservedClauses:[...YDc,...cXi,...a9r],reservedSetOperations:QDc,reservedJoins:XDc,reservedPhrases:JDc,supportsXor:!0,reservedKeywords:ODc,reservedDataTypes:PDc,reservedFunctionNames:MDc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:Zvt},formatOptions:{onelineClauses:[...cXi,...a9r],tabularOnelineClauses:a9r}},KDc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],jDc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],zDc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],qDc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),$Dc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),lXi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),c9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),ekc=oc(["UNION [ALL | DISTINCT]"]),tkc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),rkc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),nkc={name:"mysql",tokenizerOptions:{reservedSelect:qDc,reservedClauses:[...$Dc,...lXi,...c9r],reservedSetOperations:ekc,reservedJoins:tkc,reservedPhrases:rkc,supportsXor:!0,reservedKeywords:KDc,reservedDataTypes:jDc,reservedFunctionNames:zDc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Zvt},formatOptions:{onelineClauses:[...lXi,...c9r],tabularOnelineClauses:c9r}},ikc=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],skc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],okc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],akc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),ckc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),uXi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),l9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),lkc=oc(["UNION [ALL | DISTINCT]"]),ukc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),gkc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),Akc={name:"tidb",tokenizerOptions:{reservedSelect:akc,reservedClauses:[...ckc,...uXi,...l9r],reservedSetOperations:lkc,reservedJoins:ukc,reservedPhrases:gkc,supportsXor:!0,reservedKeywords:ikc,reservedDataTypes:skc,reservedFunctionNames:okc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Zvt},formatOptions:{onelineClauses:[...uXi,...l9r],tabularOnelineClauses:l9r}},dkc=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],pkc=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],fkc=[],Ikc=oc(["SELECT [ALL | DISTINCT]"]),hkc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),gXi=oc(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),mkc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Ckc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),_kc=oc(["{ROWS | RANGE | GROUPS} BETWEEN"]),ykc={name:"n1ql",tokenizerOptions:{reservedSelect:Ikc,reservedClauses:[...hkc,...gXi],reservedSetOperations:mkc,reservedJoins:Ckc,reservedPhrases:_kc,supportsXor:!0,reservedKeywords:pkc,reservedDataTypes:fkc,reservedFunctionNames:dkc,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:gXi}},bkc=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],Ekc=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],Skc=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],vkc=oc(["SELECT [ALL | DISTINCT | UNIQUE]"]),Bkc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),AXi=oc(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),u9r=oc(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),wkc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),Tkc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),Rkc=oc(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),Nkc={name:"plsql",tokenizerOptions:{reservedSelect:vkc,reservedClauses:[...Bkc,...AXi,...u9r],reservedSetOperations:wkc,reservedJoins:Tkc,reservedPhrases:Rkc,supportsXor:!0,reservedKeywords:bkc,reservedDataTypes:Ekc,reservedFunctionNames:Skc,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},paramChars:{},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:Dkc},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...AXi,...u9r],tabularOnelineClauses:u9r}};function Dkc(e){let t=ike;return e.map(r=>u_e.SET(r)&&u_e.BY(t)?oL(tx({},r),{type:"RESERVED_KEYWORD"}):(VXi(r.type)&&(t=r),r))}var kkc=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","UUID","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],xkc=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],Gkc=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","VARCHAR","XML","ZONE"],Fkc=oc(["SELECT [ALL | DISTINCT]"]),Zkc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),dXi=oc(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),g9r=oc(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE FUNCTION","CREATE GROUP","CREATE INDEX","CREATE LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE RULE","CREATE SCHEMA","CREATE SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE TRANSFORM","CREATE TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),Lkc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),Vkc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Wkc=oc(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE","IS [NOT] DISTINCT FROM"]),Okc={name:"postgresql",tokenizerOptions:{reservedSelect:Fkc,reservedClauses:[...Zkc,...dXi,...g9r],reservedSetOperations:Lkc,reservedJoins:Vkc,reservedPhrases:Wkc,reservedKeywords:xkc,reservedDataTypes:Gkc,reservedFunctionNames:kkc,nestedBlockComments:!0,extraParens:["[]"],stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":"]},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...dXi,...g9r],tabularOnelineClauses:g9r}},Pkc=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],Mkc=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],Hkc=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],Ykc=oc(["SELECT [ALL | DISTINCT]"]),Qkc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),pXi=oc(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),A9r=oc(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),Xkc=oc(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),Jkc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Ukc=oc(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),Kkc={name:"redshift",tokenizerOptions:{reservedSelect:Ykc,reservedClauses:[...Qkc,...pXi,...A9r],reservedSetOperations:Xkc,reservedJoins:Jkc,reservedPhrases:Ukc,reservedKeywords:Mkc,reservedDataTypes:Hkc,reservedFunctionNames:Pkc,stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...pXi,...A9r],tabularOnelineClauses:A9r}},jkc=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],zkc=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],qkc=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],$kc=oc(["SELECT [ALL | DISTINCT]"]),exc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),fXi=oc(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),d9r=oc(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),txc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),rxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),nxc=oc(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),ixc={name:"spark",tokenizerOptions:{reservedSelect:$kc,reservedClauses:[...exc,...fXi,...d9r],reservedSetOperations:txc,reservedJoins:rxc,reservedPhrases:nxc,supportsXor:!0,reservedKeywords:jkc,reservedDataTypes:zkc,reservedFunctionNames:qkc,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:sxc},formatOptions:{onelineClauses:[...fXi,...d9r],tabularOnelineClauses:d9r}};function sxc(e){return e.map((t,r)=>{let n=e[r-1]||ike,a=e[r+1]||ike;return u_e.WINDOW(t)&&a.type==="OPEN_PAREN"?oL(tx({},t),{type:"RESERVED_FUNCTION_NAME"}):t.text==="ITEMS"&&t.type==="RESERVED_KEYWORD"&&!(n.text==="COLLECTION"&&a.text==="TERMINATED")?oL(tx({},t),{type:"IDENTIFIER",text:t.raw}):t})}var oxc=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],axc=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","GROUPS","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],cxc=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],lxc=oc(["SELECT [ALL | DISTINCT]"]),uxc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET"]),IXi=oc(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),p9r=oc(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),gxc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),Axc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),dxc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN"]),pxc={name:"sqlite",tokenizerOptions:{reservedSelect:lxc,reservedClauses:[...uxc,...IXi,...p9r],reservedSetOperations:gxc,reservedJoins:Axc,reservedPhrases:dxc,reservedKeywords:axc,reservedDataTypes:cxc,reservedFunctionNames:oxc,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...IXi,...p9r],tabularOnelineClauses:p9r}},fxc=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],Ixc=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],hxc=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],mxc=oc(["SELECT [ALL | DISTINCT]"]),Cxc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),hXi=oc(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),f9r=oc(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),_xc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),yxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),bxc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),Exc={name:"sql",tokenizerOptions:{reservedSelect:mxc,reservedClauses:[...Cxc,...hXi,...f9r],reservedSetOperations:_xc,reservedJoins:yxc,reservedPhrases:bxc,reservedKeywords:Ixc,reservedDataTypes:hxc,reservedFunctionNames:fxc,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...hXi,...f9r],tabularOnelineClauses:f9r}},Sxc=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],vxc=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],Bxc=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],wxc=oc(["SELECT [ALL | DISTINCT]"]),Txc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),mXi=oc(["CREATE TABLE [IF NOT EXISTS]"]),I9r=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),Rxc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),Nxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Dxc=oc(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),kxc={name:"trino",tokenizerOptions:{reservedSelect:wxc,reservedClauses:[...Txc,...mXi,...I9r],reservedSetOperations:Rxc,reservedJoins:Nxc,reservedPhrases:Dxc,reservedKeywords:vxc,reservedDataTypes:Bxc,reservedFunctionNames:Sxc,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...mXi,...I9r],tabularOnelineClauses:I9r}},xxc=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],Gxc=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","ABSOLUTE","ACTION","ADA","ALLOCATE","ARE","ASSERTION","AT","AVG","BIT_LENGTH","BOTH","CASCADED","CAST","CATALOG","CHARACTER_LENGTH","CHAR_LENGTH","COLLATION","CONNECT","CONNECTION","CONSTRAINTS","CORRESPONDING","COUNT","DAY","DEFERRABLE","DEFERRED","DESCRIBE","DESCRIPTOR","DIAGNOSTICS","DISCONNECT","DOMAIN","END-EXEC","EXCEPTION","EXTRACT","FALSE","FIRST","FORTRAN","FOUND","GET","GLOBAL","GO","HOUR","IMMEDIATE","INCLUDE","INDICATOR","INITIALLY","INPUT","INSENSITIVE","INTERVAL","ISOLATION","LANGUAGE","LAST","LEADING","LEVEL","LOCAL","LOWER","MATCH","MAX","MIN","MINUTE","MODULE","MONTH","NAMES","NATURAL","NEXT","NO","NONE","OCTET_LENGTH","ONLY","OUTPUT","OVERLAPS","PAD","PARTIAL","PASCAL","POSITION","PREPARE","PRESERVE","PRIOR","PRIVILEGES","RELATIVE","ROWS","SCROLL","SECOND","SECTION","SESSION","SIZE","SPACE","SQL","SQLCA","SQLCODE","SQLERROR","SQLSTATE","SQLWARNING","SUBSTRING","SUM","TEMPORARY","TIMEZONE_HOUR","TIMEZONE_MINUTE","TRAILING","TRANSLATE","TRANSLATION","TRIM","TRUE","UNKNOWN","UPPER","USAGE","VALUE","WHENEVER","WORK","WRITE","YEAR","ZONE"],Fxc=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],Zxc=oc(["SELECT [ALL | DISTINCT]"]),Lxc=oc(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET","CREATE [OR ALTER] {PROC | PROCEDURE}"]),CXi=oc(["CREATE TABLE"]),h9r=oc(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLLATE","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","FUNCTION","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION FUNCTION","PARTITION SCHEME","PROCEDURE","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),Vxc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),Wxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),Oxc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),Pxc={name:"transactsql",tokenizerOptions:{reservedSelect:Zxc,reservedClauses:[...Lxc,...CXi,...h9r],reservedSetOperations:Vxc,reservedJoins:Wxc,reservedPhrases:Oxc,reservedKeywords:Gxc,reservedDataTypes:Fxc,reservedFunctionNames:xxc,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]}],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...CXi,...h9r],tabularOnelineClauses:h9r}},Mxc=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],Hxc=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],Yxc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],Qxc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),Xxc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),_Xi=oc(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),m9r=oc(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),Jxc=oc(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),Uxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Kxc=oc(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),jxc={name:"singlestoredb",tokenizerOptions:{reservedSelect:Qxc,reservedClauses:[...Xxc,..._Xi,...m9r],reservedSetOperations:Jxc,reservedJoins:Uxc,reservedPhrases:Kxc,reservedKeywords:Mxc,reservedDataTypes:Hxc,reservedFunctionNames:Yxc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:Zvt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[..._Xi,...m9r],tabularOnelineClauses:m9r}},zxc=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER \u2014 Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],qxc=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],$xc=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],eGc=oc(["SELECT [ALL | DISTINCT]"]),tGc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),yXi=oc(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),C9r=oc(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),rGc=oc(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),nGc=oc(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),iGc=oc(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),sGc={name:"snowflake",tokenizerOptions:{reservedSelect:eGc,reservedClauses:[...tGc,...yXi,...C9r],reservedSetOperations:rGc,reservedJoins:nGc,reservedPhrases:iGc,reservedKeywords:qxc,reservedDataTypes:$xc,reservedFunctionNames:zxc,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":="],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...yXi,...C9r],tabularOnelineClauses:C9r}},EKe=e=>e[e.length-1],WXi=e=>e.sort((t,r)=>r.length-t.length||t.localeCompare(r)),xvt=e=>e.replace(/\s+/gu," "),_9r=e=>/\n/.test(e),T4=e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),bXi=/\s+/uy,g_e=e=>new RegExp(`(?:${e})`,"uy"),oGc=e=>e.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),aGc=e=>e+"(?:-"+e+")*",cGc=({prefixes:e,requirePrefix:t})=>`(?:${e.map(oGc).join("|")}${t?"":"|"})`,lGc=e=>new RegExp(`(?:${e.map(T4).join("|")}).*?(?=\r +`,raw:!0})),t==="development"&&a.push(new this.webpack.HotModuleReplacementPlugin),a}};import wDc from"node:events";import{PassThrough as TDc}from"node:stream";var T4=xt(GDe(),1);var sLr="@namespace";var oXi=xt(GDe(),1),aXi=xt(fKe(),1),cXi=xt(fKe(),1),vvt=xt(GDe(),1);var OQi=xt(QLr(),1),PQi=xt(fKe(),1),mvt=class extends PQi.ConsoleLogRecordExporter{export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));process.stdout.write(`${a} +`)}r?.({code:OQi.ExportResultCode.SUCCESS})}};var iXi=xt(QLr(),1),sXi=xt(fKe(),1);var KLr=xt(jQi(),1),jLr=xt(rXi(),1);import{isMainThread as CDc}from"node:worker_threads";var _Dc=KLr.default.default||KLr.default;function bvt(){}function yDc(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",()=>{e.end()})):e.flushSync())}var nXi=()=>{let e=new _Dc({fd:process.stdout.fd||1});e.on("error",t),CDc&&(jLr.default.register(e,yDc),e.on("close",()=>{jLr.default.unregister(e)}));function t(r){if(r.code==="EPIPE"){e.write=bvt,e.end=bvt,e.flushSync=bvt,e.destroy=bvt;return}e.removeListener("error",t),e.emit("error",r)}return e};var bDc=function(e,t,r,n,a){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},EDc=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},Evt,Svt=class extends sXi.ConsoleLogRecordExporter{constructor(){super(),Evt.set(this,void 0),bDc(this,Evt,nXi(),"f")}export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));EDc(this,Evt,"f").write(`${a} +`)}r?.({code:iXi.ExportResultCode.SUCCESS})}};Evt=new WeakMap;var Bvt=class e{static getLoggerProvider(){if(!e.initialized&&vvt.logs.getLoggerProvider()instanceof oXi.NoopLoggerProvider){let t=new aXi.LoggerProvider;t.addLogRecordProcessor(new cXi.SimpleLogRecordProcessor(process.env.JEST_WORKER_ID?new mvt:new Svt)),vvt.logs.setGlobalLoggerProvider(t),e.initialized=!0}return vvt.logs.getLoggerProvider()}};Bvt.initialized=!1;var zLr=xt(GDe(),1),zPu=Object.keys(zLr.SeverityNumber).reduce((e,t)=>({...e,[zLr.SeverityNumber[t]]:t}),{});import{fork as SDc}from"node:child_process";import{join as vDc}from"node:path";var wvt=class{constructor(t={}){this.options=t}info(t){this.options.stdout&&this.options.stdout.write(Buffer.from(JSON.stringify({body:t,severityNumber:9,attributes:{"@namespace":"webpack:start-server"}})))}error(t){this.options.stderr&&this.options.stderr.write(Buffer.from(JSON.stringify({body:t.message,severityNumber:17,attributes:{"@namespace":"webpack:start-server","@stack":t.stack}})))}};var BDc=({execArgv:e},t=process.execArgv)=>({silent:!0,...e?{execArgv:[...t,...e]}:{}}),Tvt=class{options;entryFile=null;worker=null;initialized=!1;logger;constructor(t={}){this.logger=new wvt(t),this.options=t}apply(t){t.hooks.afterEmit.tapAsync({name:"StartServerPlugin"},this.afterEmit)}afterEmit=(t,r)=>{this.initialized?(this.worker?.connected&&this.worker.pid&&process.kill(this.worker.pid),this.startServer(t,r)):(this.initialized=!0,r())};startServer=(t,r)=>{this.logger.info("Starting server...");let{path:n}=t.compiler.options.output;n&&(this.entryFile=vDc(n,"index.js"),this.runWorker(this.entryFile,a=>{this.worker=a,r()}))};runWorker(t,r){let n=SDc(t,[],BDc(this.options));this.options.stdout&&n.stdout?.pipe(this.options.stdout,{end:!1}),this.options.stderr&&n.stderr?.pipe(this.options.stderr,{end:!1}),setTimeout(()=>{r(n)},0)}};var eke=class e extends wDc{constructor(r,n,a){super();this.webpack=r;this.config=n;this.execArgv=a}static async initialize(r){let{webpack:n,tsLoaderPath:a,nodeLoaderPath:o,protoLoaderPath:l}=await import("@atls/code-runtime/webpack"),A=new s2t(n,{nodeLoader:o,tsLoader:a,protoLoader:l},r);return new e(n,A,await PZi(r))}async build(){let r=this.webpack(await this.config.build("production",[new this.webpack.ProgressPlugin((n,a)=>{this.emit("build:progress",{percent:n*100,message:a})})]));return new Promise((n,a)=>{r.run((o,l)=>{if(this.emit("end",{error:o,stats:l}),o)o.message?n([o]):a(o);else if(l){let{errors:A=[],warnings:f=[]}=l.toJson();n([...A.map(I=>({record:I,severityNumber:T4.SeverityNumber.ERROR})),...f.map(I=>({record:I,severityNumber:T4.SeverityNumber.WARN}))])}else n([])})})}async watch(r){let n=new TDc;return n.on("data",a=>{a.toString().split(/\r?\n/).filter(Boolean).forEach(o=>{try{r(JSON.parse(o))}catch{r({severityNumber:T4.SeverityNumber.INFO,body:o})}})}),this.webpack(await this.config.build("development",[new Tvt({stdout:n,stderr:n,execArgv:this.execArgv}),new this.webpack.ProgressPlugin((a,o)=>{this.emit("build:progress",{percent:a*100,message:o})})])).watch({},(a,o)=>{if(this.emit("end",{error:a,stats:o}),a)r(a);else if(o){let{errors:l=[],warnings:A=[]}=o.toJson();A.forEach(f=>{r({record:f,severityNumber:T4.SeverityNumber.WARN})}),l.forEach(f=>{r({record:f,severityNumber:T4.SeverityNumber.ERROR})})}})}};var v4i=xt(sl(),1);vl();var lXi=xt(gl(),1),gXi=xt(Wc(),1),uXi=({children:e})=>e?(0,gXi.jsx)(lXi.Text,{children:e}):null;var t9r=xt(gl(),1);var r9r=xt(Ec(),1);var RDc=(e,t)=>(e=e.replace(/((?r.toLowerCase()),e.replace(/(\p{Uppercase_Letter}+)(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,(r,n,a)=>n+t+a.toLowerCase()));function qLr(e,{separator:t="_",preserveConsecutiveUppercase:r=!1}={}){if(!(typeof e=="string"&&typeof t=="string"))throw new TypeError("The `text` and `separator` arguments should be of type `string`");if(e.length<2)return r?e:e.toLowerCase();let n=`$1${t}$2`,a=e.replace(/([\p{Lowercase_Letter}\d])(\p{Uppercase_Letter})/gu,n);return r?RDc(a,t):a.replace(/(\p{Uppercase_Letter})(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,n).toLowerCase()}var dXi=xt(AXi(),1),n9r=xt(Wc(),1),pXi=({children:e})=>{let t=(0,r9r.useMemo)(()=>typeof e=="string"?qLr(e,{separator:"-"}):e,[e]),r=(0,r9r.useMemo)(()=>t&&typeof t=="string"?(0,dXi.default)(t.split(":")[0]).color:"#d75f00",[t]);return t?Array.isArray(t)?t.map(n=>(0,n9r.jsx)(t9r.Text,{color:r,children:n},jO())):(0,n9r.jsx)(t9r.Text,{color:r,children:t}):null};var ske=xt(gl(),1);var y4i=xt(bXi(),1);var l9r="@mikro-orm-sql",u9r="@mikro-orm-params";var VDc;VDc=new WeakMap;var U6=xt(gl(),1),Lvt=xt(gl(),1);var d4i=xt(SXi(),1),t4i=Object.defineProperty,WDc=Object.defineProperties,ODc=Object.getOwnPropertyDescriptors,Fvt=Object.getOwnPropertySymbols,r4i=Object.prototype.hasOwnProperty,n4i=Object.prototype.propertyIsEnumerable,vXi=(e,t,r)=>t in e?t4i(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,rx=(e,t)=>{for(var r in t||(t={}))r4i.call(t,r)&&vXi(e,r,t[r]);if(Fvt)for(var r of Fvt(t))n4i.call(t,r)&&vXi(e,r,t[r]);return e},aL=(e,t)=>WDc(e,ODc(t)),PDc=(e,t)=>{var r={};for(var n in e)r4i.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Fvt)for(var n of Fvt(e))t.indexOf(n)<0&&n4i.call(e,n)&&(r[n]=e[n]);return r},MDc=(e,t)=>{for(var r in t)t4i(e,r,{get:t[r],enumerable:!0})},i4i={};MDc(i4i,{bigquery:()=>okc,db2:()=>Ckc,db2i:()=>Tkc,hive:()=>Lkc,mariadb:()=>Xkc,mysql:()=>txc,n1ql:()=>Cxc,plsql:()=>Txc,postgresql:()=>Vxc,redshift:()=>Jxc,singlestoredb:()=>UGc,snowflake:()=>nFc,spark:()=>rGc,sql:()=>yGc,sqlite:()=>AGc,tidb:()=>uxc,transactsql:()=>WGc,trino:()=>NGc});var oc=e=>e.flatMap(HDc),HDc=e=>kvt(QDc(e)).map(YDc),YDc=e=>e.replace(/ +/g," ").trim(),QDc=e=>({type:"mandatory_block",items:G9r(e,0)[0]}),G9r=(e,t,r)=>{let n=[];for(;e[t];){let[a,o]=XDc(e,t);if(n.push(a),t=o,e[t]==="|")t++;else if(e[t]==="}"||e[t]==="]"){if(r!==e[t])throw new Error(`Unbalanced parenthesis in: ${e}`);return t++,[n,t]}else if(t===e.length){if(r)throw new Error(`Unbalanced parenthesis in: ${e}`);return[n,t]}else throw new Error(`Unexpected "${e[t]}"`)}return[n,t]},XDc=(e,t)=>{let r=[];for(;;){let[n,a]=JDc(e,t);if(n)r.push(n),t=a;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},JDc=(e,t)=>{if(e[t]==="{")return UDc(e,t+1);if(e[t]==="[")return KDc(e,t+1);{let r="";for(;e[t]&&/[A-Za-z0-9_ ]/.test(e[t]);)r+=e[t],t++;return[r,t]}},UDc=(e,t)=>{let[r,n]=G9r(e,t,"}");return[{type:"mandatory_block",items:r},n]},KDc=(e,t)=>{let[r,n]=G9r(e,t,"]");return[{type:"optional_block",items:r},n]},kvt=e=>{if(typeof e=="string")return[e];if(e.type==="concatenation")return e.items.map(kvt).reduce(jDc,[""]);if(e.type==="mandatory_block")return e.items.flatMap(kvt);if(e.type==="optional_block")return["",...e.items.flatMap(kvt)];throw new Error(`Unknown node type: ${e}`)},jDc=(e,t)=>{let r=[];for(let n of e)for(let a of t)r.push(n+a);return r},s4i=(e=>(e.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",e.IDENTIFIER="IDENTIFIER",e.STRING="STRING",e.VARIABLE="VARIABLE",e.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",e.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",e.RESERVED_KEYWORD="RESERVED_KEYWORD",e.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",e.RESERVED_PHRASE="RESERVED_PHRASE",e.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",e.RESERVED_CLAUSE="RESERVED_CLAUSE",e.RESERVED_SELECT="RESERVED_SELECT",e.RESERVED_JOIN="RESERVED_JOIN",e.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",e.ARRAY_KEYWORD="ARRAY_KEYWORD",e.CASE="CASE",e.END="END",e.WHEN="WHEN",e.ELSE="ELSE",e.THEN="THEN",e.LIMIT="LIMIT",e.BETWEEN="BETWEEN",e.AND="AND",e.OR="OR",e.XOR="XOR",e.OPERATOR="OPERATOR",e.COMMA="COMMA",e.ASTERISK="ASTERISK",e.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",e.OPEN_PAREN="OPEN_PAREN",e.CLOSE_PAREN="CLOSE_PAREN",e.LINE_COMMENT="LINE_COMMENT",e.BLOCK_COMMENT="BLOCK_COMMENT",e.DISABLE_COMMENT="DISABLE_COMMENT",e.NUMBER="NUMBER",e.NAMED_PARAMETER="NAMED_PARAMETER",e.QUOTED_PARAMETER="QUOTED_PARAMETER",e.NUMBERED_PARAMETER="NUMBERED_PARAMETER",e.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",e.CUSTOM_PARAMETER="CUSTOM_PARAMETER",e.DELIMITER="DELIMITER",e.EOF="EOF",e))(s4i||{}),o4i=e=>({type:"EOF",raw:"\xABEOF\xBB",text:"\xABEOF\xBB",start:e}),ike=o4i(1/0),rke=e=>t=>t.type===e.type&&t.text===e.text,u_e={ARRAY:rke({text:"ARRAY",type:"RESERVED_DATA_TYPE"}),BY:rke({text:"BY",type:"RESERVED_KEYWORD"}),SET:rke({text:"SET",type:"RESERVED_CLAUSE"}),STRUCT:rke({text:"STRUCT",type:"RESERVED_DATA_TYPE"}),WINDOW:rke({text:"WINDOW",type:"RESERVED_CLAUSE"}),VALUES:rke({text:"VALUES",type:"RESERVED_CLAUSE"})},a4i=e=>e==="RESERVED_DATA_TYPE"||e==="RESERVED_KEYWORD"||e==="RESERVED_FUNCTION_NAME"||e==="RESERVED_PHRASE"||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="ARRAY_KEYWORD"||e==="CASE"||e==="END"||e==="WHEN"||e==="ELSE"||e==="THEN"||e==="LIMIT"||e==="BETWEEN"||e==="AND"||e==="OR"||e==="XOR",zDc=e=>e==="AND"||e==="OR"||e==="XOR",qDc=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],$Dc=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],ekc=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],tkc=oc(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),rkc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),BXi=oc(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),g9r=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),nkc=oc(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),ikc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),skc=oc(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),okc={name:"bigquery",tokenizerOptions:{reservedSelect:tkc,reservedClauses:[...rkc,...g9r,...BXi],reservedSetOperations:nkc,reservedJoins:ikc,reservedPhrases:skc,reservedKeywords:$Dc,reservedDataTypes:ekc,reservedFunctionNames:qDc,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:akc},formatOptions:{onelineClauses:[...BXi,...g9r],tabularOnelineClauses:g9r}};function akc(e){return ckc(lkc(e))}function ckc(e){let t=ike;return e.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,aL(rx({},r),{type:"RESERVED_FUNCTION_NAME"})):(t=r,r))}function lkc(e){var t;let r=[];for(let n=0;nt=>t.type==="IDENTIFIER"||t.type==="COMMA"?t[e]+" ":t[e];function ukc(e,t){let r=0;for(let n=t;n"?r--:a.text===">>"&&(r-=2),r===0)return n}return e.length-1}var gkc=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],Akc=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],dkc=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],pkc=oc(["SELECT [ALL | DISTINCT]"]),fkc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),TXi=oc(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),A9r=oc(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),Ikc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),hkc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),mkc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Ckc={name:"db2",tokenizerOptions:{reservedSelect:pkc,reservedClauses:[...fkc,...TXi,...A9r],reservedSetOperations:Ikc,reservedJoins:hkc,reservedPhrases:mkc,reservedKeywords:Akc,reservedDataTypes:dkc,reservedFunctionNames:gkc,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","\xAC=","\xAC>","\xAC<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...TXi,...A9r],tabularOnelineClauses:A9r}},_kc=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],ykc=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],bkc=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],Ekc=oc(["SELECT [ALL | DISTINCT]"]),Skc=oc(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),RXi=oc(["CREATE [OR REPLACE] TABLE"]),d9r=oc(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),vkc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Bkc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),wkc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Tkc={name:"db2i",tokenizerOptions:{reservedSelect:Ekc,reservedClauses:[...Skc,...RXi,...d9r],reservedSetOperations:vkc,reservedJoins:Bkc,reservedPhrases:wkc,reservedKeywords:ykc,reservedDataTypes:bkc,reservedFunctionNames:_kc,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","\xAC=","\xAC>","\xAC<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...RXi,...d9r],tabularOnelineClauses:d9r}},Rkc=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],Nkc=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],Dkc=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],kkc=oc(["SELECT [ALL | DISTINCT]"]),xkc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),NXi=oc(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),p9r=oc(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),Gkc=oc(["UNION [ALL | DISTINCT]"]),Fkc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),Zkc=oc(["{ROWS | RANGE} BETWEEN"]),Lkc={name:"hive",tokenizerOptions:{reservedSelect:kkc,reservedClauses:[...xkc,...NXi,...p9r],reservedSetOperations:Gkc,reservedJoins:Fkc,reservedPhrases:Zkc,reservedKeywords:Nkc,reservedDataTypes:Dkc,reservedFunctionNames:Rkc,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...NXi,...p9r],tabularOnelineClauses:p9r}};function Zvt(e){return e.map((t,r)=>{let n=e[r+1]||ike;if(u_e.SET(t)&&n.text==="(")return aL(rx({},t),{type:"RESERVED_FUNCTION_NAME"});let a=e[r-1]||ike;return u_e.VALUES(t)&&a.text==="="?aL(rx({},t),{type:"RESERVED_FUNCTION_NAME"}):t})}var Vkc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],Wkc=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],Okc=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],Pkc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),Mkc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),DXi=oc(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),f9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),Hkc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),Ykc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Qkc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),Xkc={name:"mariadb",tokenizerOptions:{reservedSelect:Pkc,reservedClauses:[...Mkc,...DXi,...f9r],reservedSetOperations:Hkc,reservedJoins:Ykc,reservedPhrases:Qkc,supportsXor:!0,reservedKeywords:Vkc,reservedDataTypes:Wkc,reservedFunctionNames:Okc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:Zvt},formatOptions:{onelineClauses:[...DXi,...f9r],tabularOnelineClauses:f9r}},Jkc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],Ukc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],Kkc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],jkc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),zkc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),kXi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),I9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),qkc=oc(["UNION [ALL | DISTINCT]"]),$kc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),exc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),txc={name:"mysql",tokenizerOptions:{reservedSelect:jkc,reservedClauses:[...zkc,...kXi,...I9r],reservedSetOperations:qkc,reservedJoins:$kc,reservedPhrases:exc,supportsXor:!0,reservedKeywords:Jkc,reservedDataTypes:Ukc,reservedFunctionNames:Kkc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Zvt},formatOptions:{onelineClauses:[...kXi,...I9r],tabularOnelineClauses:I9r}},rxc=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],nxc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],ixc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],sxc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),oxc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),xXi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),h9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),axc=oc(["UNION [ALL | DISTINCT]"]),cxc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),lxc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),uxc={name:"tidb",tokenizerOptions:{reservedSelect:sxc,reservedClauses:[...oxc,...xXi,...h9r],reservedSetOperations:axc,reservedJoins:cxc,reservedPhrases:lxc,supportsXor:!0,reservedKeywords:rxc,reservedDataTypes:nxc,reservedFunctionNames:ixc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Zvt},formatOptions:{onelineClauses:[...xXi,...h9r],tabularOnelineClauses:h9r}},gxc=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],Axc=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],dxc=[],pxc=oc(["SELECT [ALL | DISTINCT]"]),fxc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),GXi=oc(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),Ixc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),hxc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),mxc=oc(["{ROWS | RANGE | GROUPS} BETWEEN"]),Cxc={name:"n1ql",tokenizerOptions:{reservedSelect:pxc,reservedClauses:[...fxc,...GXi],reservedSetOperations:Ixc,reservedJoins:hxc,reservedPhrases:mxc,supportsXor:!0,reservedKeywords:Axc,reservedDataTypes:dxc,reservedFunctionNames:gxc,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:GXi}},_xc=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],yxc=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],bxc=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],Exc=oc(["SELECT [ALL | DISTINCT | UNIQUE]"]),Sxc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),FXi=oc(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),m9r=oc(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),vxc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),Bxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),wxc=oc(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),Txc={name:"plsql",tokenizerOptions:{reservedSelect:Exc,reservedClauses:[...Sxc,...FXi,...m9r],reservedSetOperations:vxc,reservedJoins:Bxc,reservedPhrases:wxc,supportsXor:!0,reservedKeywords:_xc,reservedDataTypes:yxc,reservedFunctionNames:bxc,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},paramChars:{},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:Rxc},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...FXi,...m9r],tabularOnelineClauses:m9r}};function Rxc(e){let t=ike;return e.map(r=>u_e.SET(r)&&u_e.BY(t)?aL(rx({},r),{type:"RESERVED_KEYWORD"}):(a4i(r.type)&&(t=r),r))}var Nxc=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","UUID","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],Dxc=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],kxc=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","VARCHAR","XML","ZONE"],xxc=oc(["SELECT [ALL | DISTINCT]"]),Gxc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),ZXi=oc(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),C9r=oc(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE FUNCTION","CREATE GROUP","CREATE INDEX","CREATE LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE RULE","CREATE SCHEMA","CREATE SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE TRANSFORM","CREATE TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),Fxc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),Zxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Lxc=oc(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE","IS [NOT] DISTINCT FROM"]),Vxc={name:"postgresql",tokenizerOptions:{reservedSelect:xxc,reservedClauses:[...Gxc,...ZXi,...C9r],reservedSetOperations:Fxc,reservedJoins:Zxc,reservedPhrases:Lxc,reservedKeywords:Dxc,reservedDataTypes:kxc,reservedFunctionNames:Nxc,nestedBlockComments:!0,extraParens:["[]"],stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":"]},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...ZXi,...C9r],tabularOnelineClauses:C9r}},Wxc=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],Oxc=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],Pxc=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],Mxc=oc(["SELECT [ALL | DISTINCT]"]),Hxc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),LXi=oc(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),_9r=oc(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),Yxc=oc(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),Qxc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Xxc=oc(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),Jxc={name:"redshift",tokenizerOptions:{reservedSelect:Mxc,reservedClauses:[...Hxc,...LXi,..._9r],reservedSetOperations:Yxc,reservedJoins:Qxc,reservedPhrases:Xxc,reservedKeywords:Oxc,reservedDataTypes:Pxc,reservedFunctionNames:Wxc,stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...LXi,..._9r],tabularOnelineClauses:_9r}},Uxc=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],Kxc=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],jxc=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],zxc=oc(["SELECT [ALL | DISTINCT]"]),qxc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),VXi=oc(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),y9r=oc(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),$xc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),eGc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),tGc=oc(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),rGc={name:"spark",tokenizerOptions:{reservedSelect:zxc,reservedClauses:[...qxc,...VXi,...y9r],reservedSetOperations:$xc,reservedJoins:eGc,reservedPhrases:tGc,supportsXor:!0,reservedKeywords:Uxc,reservedDataTypes:Kxc,reservedFunctionNames:jxc,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:nGc},formatOptions:{onelineClauses:[...VXi,...y9r],tabularOnelineClauses:y9r}};function nGc(e){return e.map((t,r)=>{let n=e[r-1]||ike,a=e[r+1]||ike;return u_e.WINDOW(t)&&a.type==="OPEN_PAREN"?aL(rx({},t),{type:"RESERVED_FUNCTION_NAME"}):t.text==="ITEMS"&&t.type==="RESERVED_KEYWORD"&&!(n.text==="COLLECTION"&&a.text==="TERMINATED")?aL(rx({},t),{type:"IDENTIFIER",text:t.raw}):t})}var iGc=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],sGc=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","GROUPS","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],oGc=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],aGc=oc(["SELECT [ALL | DISTINCT]"]),cGc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET"]),WXi=oc(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),b9r=oc(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),lGc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),uGc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),gGc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN"]),AGc={name:"sqlite",tokenizerOptions:{reservedSelect:aGc,reservedClauses:[...cGc,...WXi,...b9r],reservedSetOperations:lGc,reservedJoins:uGc,reservedPhrases:gGc,reservedKeywords:sGc,reservedDataTypes:oGc,reservedFunctionNames:iGc,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...WXi,...b9r],tabularOnelineClauses:b9r}},dGc=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],pGc=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],fGc=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],IGc=oc(["SELECT [ALL | DISTINCT]"]),hGc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),OXi=oc(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),E9r=oc(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),mGc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),CGc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),_Gc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),yGc={name:"sql",tokenizerOptions:{reservedSelect:IGc,reservedClauses:[...hGc,...OXi,...E9r],reservedSetOperations:mGc,reservedJoins:CGc,reservedPhrases:_Gc,reservedKeywords:pGc,reservedDataTypes:fGc,reservedFunctionNames:dGc,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...OXi,...E9r],tabularOnelineClauses:E9r}},bGc=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],EGc=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],SGc=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],vGc=oc(["SELECT [ALL | DISTINCT]"]),BGc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),PXi=oc(["CREATE TABLE [IF NOT EXISTS]"]),S9r=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),wGc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),TGc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),RGc=oc(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),NGc={name:"trino",tokenizerOptions:{reservedSelect:vGc,reservedClauses:[...BGc,...PXi,...S9r],reservedSetOperations:wGc,reservedJoins:TGc,reservedPhrases:RGc,reservedKeywords:EGc,reservedDataTypes:SGc,reservedFunctionNames:bGc,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...PXi,...S9r],tabularOnelineClauses:S9r}},DGc=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],kGc=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","ABSOLUTE","ACTION","ADA","ALLOCATE","ARE","ASSERTION","AT","AVG","BIT_LENGTH","BOTH","CASCADED","CAST","CATALOG","CHARACTER_LENGTH","CHAR_LENGTH","COLLATION","CONNECT","CONNECTION","CONSTRAINTS","CORRESPONDING","COUNT","DAY","DEFERRABLE","DEFERRED","DESCRIBE","DESCRIPTOR","DIAGNOSTICS","DISCONNECT","DOMAIN","END-EXEC","EXCEPTION","EXTRACT","FALSE","FIRST","FORTRAN","FOUND","GET","GLOBAL","GO","HOUR","IMMEDIATE","INCLUDE","INDICATOR","INITIALLY","INPUT","INSENSITIVE","INTERVAL","ISOLATION","LANGUAGE","LAST","LEADING","LEVEL","LOCAL","LOWER","MATCH","MAX","MIN","MINUTE","MODULE","MONTH","NAMES","NATURAL","NEXT","NO","NONE","OCTET_LENGTH","ONLY","OUTPUT","OVERLAPS","PAD","PARTIAL","PASCAL","POSITION","PREPARE","PRESERVE","PRIOR","PRIVILEGES","RELATIVE","ROWS","SCROLL","SECOND","SECTION","SESSION","SIZE","SPACE","SQL","SQLCA","SQLCODE","SQLERROR","SQLSTATE","SQLWARNING","SUBSTRING","SUM","TEMPORARY","TIMEZONE_HOUR","TIMEZONE_MINUTE","TRAILING","TRANSLATE","TRANSLATION","TRIM","TRUE","UNKNOWN","UPPER","USAGE","VALUE","WHENEVER","WORK","WRITE","YEAR","ZONE"],xGc=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],GGc=oc(["SELECT [ALL | DISTINCT]"]),FGc=oc(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET","CREATE [OR ALTER] {PROC | PROCEDURE}"]),MXi=oc(["CREATE TABLE"]),v9r=oc(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLLATE","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","FUNCTION","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION FUNCTION","PARTITION SCHEME","PROCEDURE","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),ZGc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),LGc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),VGc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),WGc={name:"transactsql",tokenizerOptions:{reservedSelect:GGc,reservedClauses:[...FGc,...MXi,...v9r],reservedSetOperations:ZGc,reservedJoins:LGc,reservedPhrases:VGc,reservedKeywords:kGc,reservedDataTypes:xGc,reservedFunctionNames:DGc,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]}],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...MXi,...v9r],tabularOnelineClauses:v9r}},OGc=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],PGc=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],MGc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],HGc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),YGc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),HXi=oc(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),B9r=oc(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),QGc=oc(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),XGc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),JGc=oc(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),UGc={name:"singlestoredb",tokenizerOptions:{reservedSelect:HGc,reservedClauses:[...YGc,...HXi,...B9r],reservedSetOperations:QGc,reservedJoins:XGc,reservedPhrases:JGc,reservedKeywords:OGc,reservedDataTypes:PGc,reservedFunctionNames:MGc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:Zvt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...HXi,...B9r],tabularOnelineClauses:B9r}},KGc=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER \u2014 Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],jGc=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],zGc=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],qGc=oc(["SELECT [ALL | DISTINCT]"]),$Gc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),YXi=oc(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),w9r=oc(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),eFc=oc(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),tFc=oc(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),rFc=oc(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),nFc={name:"snowflake",tokenizerOptions:{reservedSelect:qGc,reservedClauses:[...$Gc,...YXi,...w9r],reservedSetOperations:eFc,reservedJoins:tFc,reservedPhrases:rFc,reservedKeywords:jGc,reservedDataTypes:zGc,reservedFunctionNames:KGc,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":="],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...YXi,...w9r],tabularOnelineClauses:w9r}},SKe=e=>e[e.length-1],c4i=e=>e.sort((t,r)=>r.length-t.length||t.localeCompare(r)),xvt=e=>e.replace(/\s+/gu," "),T9r=e=>/\n/.test(e),R4=e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),QXi=/\s+/uy,g_e=e=>new RegExp(`(?:${e})`,"uy"),iFc=e=>e.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),sFc=e=>e+"(?:-"+e+")*",oFc=({prefixes:e,requirePrefix:t})=>`(?:${e.map(iFc).join("|")}${t?"":"|"})`,aFc=e=>new RegExp(`(?:${e.map(R4).join("|")}).*?(?=\r |\r| -|$)`,"uy"),EXi=(e,t=[])=>{let r=e==="open"?0:1,n=["()",...t].map(a=>a[r]);return g_e(n.map(T4).join("|"))},SXi=e=>g_e(`${WXi(e).map(T4).join("|")}`),uGc=({rest:e,dashes:t})=>e||t?`(?![${e||""}${t?"-":""}])`:"",Ile=(e,t={})=>{if(e.length===0)return/^\b$/u;let r=uGc(t),n=WXi(e).map(T4).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},y9r=(e,t)=>{if(!e.length)return;let r=e.map(T4).join("|");return g_e(`(?:${r})(?:${t})`)},gGc=()=>{let e={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(e).map(([l,A])=>t.replace(/{left}/g,T4(l)).replace(/{right}/g,T4(A))),n=T4(Object.keys(e).join(""));return`[Qq]'(?:${String.raw`(?[^\s${n}])(?:(?!\k').)*?\k`}|${r.join("|")})'`},vXi={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?\$\w*\$)[\s\S]*?\k`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":gGc()},OXi=e=>typeof e=="string"?vXi[e]:"regex"in e?e.regex:cGc(e)+vXi[e.quote],AGc=e=>g_e(e.map(t=>"regex"in t?t.regex:OXi(t)).join("|")),PXi=e=>e.map(OXi).join("|"),BXi=e=>g_e(PXi(e)),dGc=(e={})=>g_e(MXi(e)),MXi=({first:e,rest:t,dashes:r,allowFirstCharNumber:n}={})=>{let a="\\p{Alphabetic}\\p{Mark}_",o="\\p{Decimal_Number}",l=T4(e??""),A=T4(t??""),f=n?`[${a}${o}${l}][${a}${o}${A}]*`:`[${a}${l}][${a}${o}${A}]*`;return r?aGc(f):f};function HXi(e,t){let r=e.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}var pGc=class{constructor(e,t){this.rules=e,this.dialectName=t,this.input="",this.index=0}tokenize(e){this.input=e,this.index=0;let t=[],r;for(;this.index{let r=e==="open"?0:1,n=["()",...t].map(a=>a[r]);return g_e(n.map(R4).join("|"))},JXi=e=>g_e(`${c4i(e).map(R4).join("|")}`),cFc=({rest:e,dashes:t})=>e||t?`(?![${e||""}${t?"-":""}])`:"",hle=(e,t={})=>{if(e.length===0)return/^\b$/u;let r=cFc(t),n=c4i(e).map(R4).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},R9r=(e,t)=>{if(!e.length)return;let r=e.map(R4).join("|");return g_e(`(?:${r})(?:${t})`)},lFc=()=>{let e={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(e).map(([l,A])=>t.replace(/{left}/g,R4(l)).replace(/{right}/g,R4(A))),n=R4(Object.keys(e).join(""));return`[Qq]'(?:${String.raw`(?[^\s${n}])(?:(?!\k').)*?\k`}|${r.join("|")})'`},UXi={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?\$\w*\$)[\s\S]*?\k`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":lFc()},l4i=e=>typeof e=="string"?UXi[e]:"regex"in e?e.regex:oFc(e)+UXi[e.quote],uFc=e=>g_e(e.map(t=>"regex"in t?t.regex:l4i(t)).join("|")),u4i=e=>e.map(l4i).join("|"),KXi=e=>g_e(u4i(e)),gFc=(e={})=>g_e(g4i(e)),g4i=({first:e,rest:t,dashes:r,allowFirstCharNumber:n}={})=>{let a="\\p{Alphabetic}\\p{Mark}_",o="\\p{Decimal_Number}",l=R4(e??""),A=R4(t??""),f=n?`[${a}${o}${l}][${a}${o}${A}]*`:`[${a}${l}][${a}${o}${A}]*`;return r?sFc(f):f};function A4i(e,t){let r=e.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}var AFc=class{constructor(e,t){this.rules=e,this.dialectName=t,this.input="",this.index=0}tokenize(e){this.input=e,this.index=0;let t=[],r;for(;this.index0;)if(r=this.matchSection(wXi,e))t+=r,n++;else if(r=this.matchSection(IGc,e))t+=r,n--;else if(r=this.matchSection(fGc,e))t+=r;else return null;return[t]}matchSection(e,t){e.lastIndex=this.lastIndex;let r=e.exec(t);return r&&(this.lastIndex+=r[0].length),r?r[0]:null}},mGc=class{constructor(e,t){this.cfg=e,this.dialectName=t,this.rulesBeforeParams=this.buildRulesBeforeParams(e),this.rulesAfterParams=this.buildRulesAfterParams(e)}tokenize(e,t){let r=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,t),...this.rulesAfterParams],n=new pGc(r,this.dialectName).tokenize(e);return this.cfg.postProcess?this.cfg.postProcess(n):n}buildRulesBeforeParams(e){var t,r;return this.validRules([{type:"BLOCK_COMMENT",regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:"BLOCK_COMMENT",regex:e.nestedBlockComments?new hGc:/(\/\*[^]*?\*\/)/uy},{type:"LINE_COMMENT",regex:lGc((t=e.lineCommentTypes)!=null?t:["--"])},{type:"QUOTED_IDENTIFIER",regex:BXi(e.identTypes)},{type:"NUMBER",regex:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:"RESERVED_PHRASE",regex:Ile((r=e.reservedPhrases)!=null?r:[],e.identChars),text:mD},{type:"CASE",regex:/CASE\b/iuy,text:mD},{type:"END",regex:/END\b/iuy,text:mD},{type:"BETWEEN",regex:/BETWEEN\b/iuy,text:mD},{type:"LIMIT",regex:e.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:mD},{type:"RESERVED_CLAUSE",regex:Ile(e.reservedClauses,e.identChars),text:mD},{type:"RESERVED_SELECT",regex:Ile(e.reservedSelect,e.identChars),text:mD},{type:"RESERVED_SET_OPERATION",regex:Ile(e.reservedSetOperations,e.identChars),text:mD},{type:"WHEN",regex:/WHEN\b/iuy,text:mD},{type:"ELSE",regex:/ELSE\b/iuy,text:mD},{type:"THEN",regex:/THEN\b/iuy,text:mD},{type:"RESERVED_JOIN",regex:Ile(e.reservedJoins,e.identChars),text:mD},{type:"AND",regex:/AND\b/iuy,text:mD},{type:"OR",regex:/OR\b/iuy,text:mD},{type:"XOR",regex:e.supportsXor?/XOR\b/iuy:void 0,text:mD},{type:"RESERVED_FUNCTION_NAME",regex:Ile(e.reservedFunctionNames,e.identChars),text:mD},{type:"RESERVED_DATA_TYPE",regex:Ile(e.reservedDataTypes,e.identChars),text:mD},{type:"RESERVED_KEYWORD",regex:Ile(e.reservedKeywords,e.identChars),text:mD}])}buildRulesAfterParams(e){var t,r;return this.validRules([{type:"VARIABLE",regex:e.variableTypes?AGc(e.variableTypes):void 0},{type:"STRING",regex:BXi(e.stringTypes)},{type:"IDENTIFIER",regex:dGc(e.identChars)},{type:"DELIMITER",regex:/[;]/uy},{type:"COMMA",regex:/[,]/y},{type:"OPEN_PAREN",regex:EXi("open",e.extraParens)},{type:"CLOSE_PAREN",regex:EXi("close",e.extraParens)},{type:"OPERATOR",regex:SXi(["+","-","/",">","<","=","<>","<=",">=","!=",...(t=e.operators)!=null?t:[]])},{type:"ASTERISK",regex:/[*]/uy},{type:"PROPERTY_ACCESS_OPERATOR",regex:SXi([".",...(r=e.propertyAccessOperators)!=null?r:[]])}])}buildParamRules(e,t){var r,n,a,o,l;let A={named:t?.named||((r=e.paramTypes)==null?void 0:r.named)||[],quoted:t?.quoted||((n=e.paramTypes)==null?void 0:n.quoted)||[],numbered:t?.numbered||((a=e.paramTypes)==null?void 0:a.numbered)||[],positional:typeof t?.positional=="boolean"?t.positional:(o=e.paramTypes)==null?void 0:o.positional,custom:t?.custom||((l=e.paramTypes)==null?void 0:l.custom)||[]};return this.validRules([{type:"NAMED_PARAMETER",regex:y9r(A.named,MXi(e.paramChars||e.identChars)),key:f=>f.slice(1)},{type:"QUOTED_PARAMETER",regex:y9r(A.quoted,PXi(e.identTypes)),key:f=>(({tokenKey:I,quoteChar:C})=>I.replace(new RegExp(T4("\\"+C),"gu"),C))({tokenKey:f.slice(2,-1),quoteChar:f.slice(-1)})},{type:"NUMBERED_PARAMETER",regex:y9r(A.numbered,"[0-9]+"),key:f=>f.slice(1)},{type:"POSITIONAL_PARAMETER",regex:A.positional?/[?]/y:void 0},...A.custom.map(f=>{var I;return{type:"CUSTOM_PARAMETER",regex:g_e(f.regex),key:(I=f.key)!=null?I:C=>C}})])}validRules(e){return e.filter(t=>!!t.regex)}},mD=e=>xvt(e.toUpperCase()),TXi=new Map,CGc=e=>{let t=TXi.get(e);return t||(t=_Gc(e),TXi.set(e,t)),t},_Gc=e=>({tokenizer:new mGc(e.tokenizerOptions,e.name),formatOptions:yGc(e.formatOptions)}),yGc=e=>{var t;return{alwaysDenseOperators:e.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(e.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=e.tabularOnelineClauses)!=null?t:e.onelineClauses).map(r=>[r,!0]))}};function bGc(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"?" ".repeat(10):e.useTabs?" ":" ".repeat(e.tabWidth)}function nke(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"}var EGc=class{constructor(e){this.params=e,this.index=0}get({key:e,text:t}){return this.params?e?this.params[e]:this.params[this.index++]:t}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(e){this.index=e}};function SGc(e){return e.map(vGc).map(BGc).map(wGc).map(TGc).map(RGc)}var vGc=(e,t,r)=>{if(VXi(e.type)){let n=NGc(r,t);if(n&&n.type==="PROPERTY_ACCESS_OPERATOR")return oL(tx({},e),{type:"IDENTIFIER",text:e.raw})}return e},BGc=(e,t,r)=>{if(e.type==="RESERVED_FUNCTION_NAME"){let n=SKe(r,t);if(!n||!QXi(n))return oL(tx({},e),{type:"RESERVED_KEYWORD"})}return e},wGc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=SKe(r,t);if(n&&QXi(n))return oL(tx({},e),{type:"RESERVED_PARAMETERIZED_DATA_TYPE"})}return e},TGc=(e,t,r)=>{if(e.type==="IDENTIFIER"){let n=SKe(r,t);if(n&&XXi(n))return oL(tx({},e),{type:"ARRAY_IDENTIFIER"})}return e},RGc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=SKe(r,t);if(n&&XXi(n))return oL(tx({},e),{type:"ARRAY_KEYWORD"})}return e},NGc=(e,t)=>SKe(e,t,-1),SKe=(e,t,r=1)=>{let n=1;for(;e[t+n*r]&&DGc(e[t+n*r]);)n++;return e[t+n*r]},QXi=e=>e.type==="OPEN_PAREN"&&e.text==="(",XXi=e=>e.type==="OPEN_PAREN"&&e.text==="[",DGc=e=>e.type==="BLOCK_COMMENT"||e.type==="LINE_COMMENT",JXi=class{constructor(e){this.tokenize=e,this.index=0,this.tokens=[],this.input=""}reset(e,t){this.input=e,this.index=0,this.tokens=this.tokenize(e)}next(){return this.tokens[this.index++]}save(){}formatError(e){let{line:t,col:r}=HXi(this.input,e.start);return`Parse error at token: ${e.text} at line ${t} column ${r}`}has(e){return e in ZXi}};function b9r(e){return e[0]}var Rf=new JXi(e=>[]),l_e=([[e]])=>e,CD=e=>({type:"keyword",tokenType:e.type,text:e.text,raw:e.raw}),RXi=e=>({type:"data_type",text:e.text,raw:e.raw}),_D=(e,{leading:t,trailing:r})=>(t?.length&&(e=oL(tx({},e),{leadingComments:t})),r?.length&&(e=oL(tx({},e),{trailingComments:r})),e),kGc=(e,{leading:t,trailing:r})=>{if(t?.length){let[n,...a]=e;e=[_D(n,{leading:t}),...a]}if(r?.length){let n=e.slice(0,-1),a=e[e.length-1];e=[...n,_D(a,{trailing:r})]}return e},xGc={Lexer:Rf,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:e=>e[0].concat([e[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([e])=>{let t=e[e.length-1];return t&&!t.hasSemicolon?t.children.length>0?e:e.slice(0,-1):e}},{name:"statement$subexpression$1",symbols:[Rf.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[Rf.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([e,[t]])=>({type:"statement",children:e,hasSemicolon:t.type==="DELIMITER"})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([e,t])=>[...e,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:l_e},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[Rf.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:b9r},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[Rf.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([e,t,r,n])=>{if(n){let[a,o]=n;return{type:"limit_clause",limitKw:_D(CD(e),{trailing:t}),offset:r,count:o}}else return{type:"limit_clause",limitKw:_D(CD(e),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[Rf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([e,[t,r]])=>({type:"clause",nameKw:CD(e),children:[t,...r]})},{name:"select_clause",symbols:[Rf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([e])=>({type:"clause",nameKw:CD(e),children:[]})},{name:"all_columns_asterisk",symbols:[Rf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:"all_columns_asterisk"})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"other_clause",symbols:[Rf.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([e,t])=>({type:"clause",nameKw:CD(e),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"set_operation",symbols:[Rf.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([e,t])=>({type:"set_operation",nameKw:CD(e),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:b9r},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([e,t])=>_D(e,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([e,t])=>_D(t,{leading:e})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([e,t])=>_D(t,{leading:e})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:l_e},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:l_e},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:l_e},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:l_e},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:l_e},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:l_e},{name:"array_subscript",symbols:[Rf.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:_D({type:"identifier",quoted:!1,text:e.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[Rf.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:_D(CD(e),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[Rf.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([e,t,r])=>({type:"function_call",nameKw:_D(CD(e),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",Rf.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([e,t,r,n,[a]])=>({type:"property_access",object:_D(e,{trailing:t}),operator:r.text,property:_D(a,{leading:n})})},{name:"between_predicate",symbols:[Rf.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",Rf.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([e,t,r,n,a,o,l])=>({type:"between_predicate",betweenKw:CD(e),expr1:kGc(r,{leading:t,trailing:n}),andKw:CD(a),expr2:[_D(l,{leading:o})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:b9r},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:e=>e[0].concat([e[1]])},{name:"case_expression",symbols:[Rf.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",Rf.has("END")?{type:"END"}:END],postprocess:([e,t,r,n,a])=>({type:"case_expression",caseKw:_D(CD(e),{trailing:t}),endKw:CD(a),expr:r||[],clauses:n})},{name:"case_clause",symbols:[Rf.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",Rf.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([e,t,r,n,a,o])=>({type:"case_when",whenKw:_D(CD(e),{trailing:t}),thenKw:_D(CD(n),{trailing:a}),condition:r,result:o})},{name:"case_clause",symbols:[Rf.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([e,t,r])=>({type:"case_else",elseKw:_D(CD(e),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[Rf.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[e]])=>({type:"comma"})},{name:"asterisk$subexpression$1",symbols:[Rf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"operator$subexpression$1",symbols:[Rf.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"identifier$subexpression$1",symbols:[Rf.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Rf.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Rf.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[e]])=>({type:"identifier",quoted:e.type!=="IDENTIFIER",text:e.text})},{name:"parameter$subexpression$1",symbols:[Rf.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[e]])=>({type:"parameter",key:e.key,text:e.text})},{name:"literal$subexpression$1",symbols:[Rf.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[Rf.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[e]])=>({type:"literal",text:e.text})},{name:"keyword$subexpression$1",symbols:[Rf.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[Rf.has("RESERVED_PHRASE")?{type:"RESERVED_PHRASE"}:RESERVED_PHRASE]},{name:"keyword$subexpression$1",symbols:[Rf.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[e]])=>CD(e)},{name:"data_type$subexpression$1",symbols:[Rf.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[e]])=>RXi(e)},{name:"data_type",symbols:[Rf.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([e,t,r])=>({type:"parameterized_data_type",dataType:_D(RXi(e),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[Rf.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[Rf.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[Rf.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[e]])=>CD(e)},{name:"other_keyword$subexpression$1",symbols:[Rf.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[Rf.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[Rf.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[Rf.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[e]])=>CD(e)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:e=>e[0].concat([e[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([e])=>e},{name:"comment",symbols:[Rf.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([e])=>({type:"line_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[Rf.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([e])=>({type:"block_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[Rf.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([e])=>({type:"disable_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})}],ParserStart:"main"},GGc=xGc,{Parser:FGc,Grammar:ZGc}=YXi.default;function LGc(e){let t={},r=new JXi(a=>[...SGc(e.tokenize(a,t)),LXi(a.length)]),n=new FGc(ZGc.fromCompiled(GGc),{lexer:r});return{parse:(a,o)=>{t=o;let{results:l}=n.feed(a);if(l.length===1)return l[0];throw l.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar -${JSON.stringify(l,void 0,2)}`)}}}var UXi=class{constructor(e){this.indentation=e,this.items=[]}add(...e){for(let t of e)switch(t){case 0:this.items.push(0);break;case 1:this.trimHorizontalWhitespace();break;case 2:this.trimWhitespace();break;case 3:this.trimHorizontalWhitespace(),this.addNewline(3);break;case 4:this.trimHorizontalWhitespace(),this.addNewline(4);break;case 5:this.addIndentation();break;case 6:this.items.push(6);break;default:this.items.push(t)}}trimHorizontalWhitespace(){for(;VGc(EKe(this.items));)this.items.pop()}trimWhitespace(){for(;WGc(EKe(this.items));)this.items.pop()}addNewline(e){if(this.items.length>0)switch(EKe(this.items)){case 3:this.items.pop(),this.items.push(e);break;case 4:break;default:this.items.push(e);break}}addIndentation(){for(let e=0;ethis.itemToString(e)).join("")}getLayoutItems(){return this.items}itemToString(e){switch(e){case 0:return" ";case 3:case 4:return` -`;case 6:return this.indentation.getSingleIndent();default:return e}}},VGc=e=>e===0||e===6,WGc=e=>e===0||e===6||e===3;function NXi(e,t){if(t==="standard")return e;let r=[];return e.length>=10&&e.includes(" ")&&([e,...r]=e.split(" ")),t==="tabularLeft"?e=e.padEnd(9," "):e=e.padStart(9," "),e+["",...r].join(" ")}function DXi(e){return $Nc(e)||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="LIMIT"}var E9r="top-level",OGc="block-level",KXi=class{constructor(e){this.indent=e,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(E9r)}increaseBlockLevel(){this.indentTypes.push(OGc)}decreaseTopLevel(){this.indentTypes.length>0&&EKe(this.indentTypes)===E9r&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===E9r;);}},PGc=class extends UXi{constructor(e){super(new KXi("")),this.expressionWidth=e,this.length=0,this.trailingSpace=!1}add(...e){if(e.forEach(t=>this.addToLength(t)),this.length>this.expressionWidth)throw new S9r;super.add(...e)}addToLength(e){if(typeof e=="string")this.length+=e.length,this.trailingSpace=!1;else{if(e===4||e===3)throw new S9r;e===5||e===6||e===0?this.trailingSpace||(this.length++,this.trailingSpace=!0):(e===2||e===1)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}},S9r=class extends Error{},MGc=class v9r{constructor({cfg:t,dialectCfg:r,params:n,layout:a,inline:o=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=o,this.params=n,this.layout=a}format(t){for(this.nodes=t,this.index=0;this.index{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case"data_type":r=this.showDataType(t.array);break;case"keyword":r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(1,t.operator),this.formatNode(t.property)}formatParenthesis(t){let r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(1,t.closeParen,0)):(this.layout.add(t.openParen,3),nke(this.cfg)?(this.layout.add(5),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(3,5,t.closeParen,0))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),0),this.layout=this.formatSubExpression(t.expr1),this.layout.add(1,0,this.showNonTabularKw(t.andKw),0),this.layout=this.formatSubExpression(t.expr2),this.layout.add(0)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(3,5),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(3,5),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(3,5),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):nke(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return nke(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.indentation.increaseTopLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.add(5),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(3,5,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),nke(this.cfg)?this.layout.add(0):this.layout.add(3,5),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(1,",",0),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",0)}formatLiteral(t){this.layout.add(t.text,0)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),0)}formatParameter(t){this.layout.add(this.params.get(t),0)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(1,t):t===":"?this.layout.add(1,t,0):this.layout.add(t,0)}formatComma(t){this.inline?this.layout.add(1,",",0):this.layout.add(1,",",3,5)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type==="line_comment"?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){_9r(t.precedingWhitespace||"")?this.layout.add(3,5,t.text,4,5):this.layout.getLayoutItems().length>0?this.layout.add(2,0,t.text,4,5):this.layout.add(t.text,4,5)}formatBlockComment(t){t.type==="block_comment"&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(3,5,r)}),this.layout.add(3,5)):this.layout.add(t.text,0)}isMultilineBlockComment(t){return _9r(t.text)||_9r(t.precedingWhitespace||"")}isDocComment(t){let r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(n=>/^\s*\*/.test(n))&&/^\s*\*\/$/.test(EKe(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new v9r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){let r=this.params.getPositionalParameterIndex();try{return new v9r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new PGc(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof S9r){this.params.setPositionalParameterIndex(r);return}else throw n}}formatKeywordNode(t){switch(t.tokenType){case"RESERVED_JOIN":return this.formatJoin(t);case"AND":case"OR":case"XOR":return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){nke(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0)}formatKeyword(t){this.layout.add(this.showKw(t),0)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?nke(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0):this.layout.add(this.showKw(t),3,5)}formatDataType(t){this.layout.add(this.showDataType(t),0)}showKw(t){return DXi(t.tokenType)?NXi(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return xvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return DXi(t.tokenType)?NXi(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return xvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return xvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}},HGc=class{constructor(e,t){this.dialect=e,this.cfg=t,this.params=new EGc(this.cfg.params)}format(e){let t=this.parse(e);return this.formatAst(t).trimEnd()}parse(e){return LGc(this.dialect.tokenizer).parse(e,this.cfg.paramTypes||{})}formatAst(e){return e.map(t=>this.formatStatement(t)).join(` -`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(e){let t=new MGc({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new UXi(new KXi(bGc(this.cfg)))}).format(e.children);return e.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?t.add(3,";"):t.add(2,";")),t.toString()}},Gvt=class extends Error{};function YGc(e){let t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(let r of t)if(r in e)throw new Gvt(`${r} config is no more supported.`);if(e.expressionWidth<=0)throw new Gvt(`expressionWidth config must be positive number. Received ${e.expressionWidth} instead.`);if(e.params&&!QGc(e.params)&&console.warn('WARNING: All "params" option values should be strings.'),e.paramTypes&&!XGc(e.paramTypes))throw new Gvt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return e}function QGc(e){return(e instanceof Array?e:Object.values(e)).every(r=>typeof r=="string")}function XGc(e){return e.custom&&Array.isArray(e.custom)?e.custom.every(t=>t.regex!==""):!0}var jXi={bigquery:"bigquery",db2:"db2",db2i:"db2i",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},JGc=Object.keys(jXi),UGc={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},zXi=(e,t={})=>{if(typeof t.language=="string"&&!JGc.includes(t.language))throw new Gvt(`Unsupported SQL dialect: ${t.language}`);let r=jXi[t.language||"sql"];return KGc(e,oL(tx({},t),{dialect:FXi[r]}))},KGc=(e,t)=>{var r=t,{dialect:n}=r,a=HNc(r,["dialect"]);if(typeof e!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof e);let o=YGc(tx(tx({},UGc),a));return new HGc(CGc(n),o).format(e)};var JG=Nt(Wc(),1),jGc=({children:e})=>e?(0,JG.jsxs)(Lvt.Box,{paddingLeft:4,children:[(0,JG.jsx)(J6.Text,{children:"SQL:"}),(0,JG.jsx)(J6.Text,{children:" "}),(0,JG.jsx)(J6.Text,{children:new qXi.SqlHighlighter().highlight(zXi(e,{language:"postgresql"}))})]}):null,zGc=({children:e})=>{if(e&&Array.isArray(e)&&e.length>0){let t=e.reduce((r,n,a)=>(r.push((0,JG.jsx)(J6.Text,{color:"yellow",children:n},UO())),ae?(0,JG.jsxs)(Lvt.Box,{marginTop:1,flexDirection:"column",children:[(0,JG.jsx)(jGc,{children:e[t9r]}),(0,JG.jsx)(zGc,{children:e[r9r]})]}):null;var e4i=Nt(ul(),1);var w9r=Nt(Wc(),1),t4i=({children:e})=>e?(0,w9r.jsx)(e4i.Box,{paddingBottom:1,marginTop:1,children:(0,w9r.jsx)(qyt,{children:e})}):null;var R4=Nt(Wc(),1),Vvt=({namespace:e,body:t,stack:r,attributes:n={}})=>(0,R4.jsxs)(ske.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:[(0,R4.jsx)(ske.Box,{flexDirection:"row",children:(0,R4.jsxs)(ske.Box,{flexGrow:1,children:[(0,R4.jsx)(ske.Box,{paddingRight:1,children:(0,R4.jsx)(QQi,{children:e||n[zZr]})}),(0,R4.jsx)(ske.Box,{children:(0,R4.jsx)(PQi,{children:t})})]})}),(0,R4.jsx)(t4i,{children:r||n["@stack"]}),(0,R4.jsx)($Xi,{children:n})]});var Wvt=Nt(Wc(),1),A_e=class extends r4i.BaseCommand{showWarnings=vA.Boolean("-w,--show-warnings",!1);renderLogRecord(t){t instanceof Error?ZE((0,Wvt.jsx)(Ok,{error:t})).split(` -`).forEach(r=>{console.log(r)}):"severityNumber"in t&&"record"in t?ZE((0,Wvt.jsx)(Ok,{error:t.record})).split(` -`).forEach(r=>{t.severityNumber===w4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):"severityNumber"in t?ZE((0,Wvt.jsx)(Vvt,{...t})).split(` -`).forEach(r=>{t.severityNumber<=w4.SeverityNumber.INFO?console.log(r):t.severityNumber<=w4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):console.log(`Unknown record type: ${JSON.stringify(t)}`)}};var R9r=Nt(Wc(),1),vKe=class extends A_e{static paths=[["service","build"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(T9r.Filename.pnpCjs)&&t.includes(T9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await n4i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await i4i.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await a4i.xfs.mktempPromise(),{code:o}=await o4i.execUtils.pipevp("yarn",["service","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await s4i.scriptUtils.makeScriptEnv({binFolder:a,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await eke.initialize(this.context.cwd),{clear:r}=(0,c4i.render)((0,R9r.jsx)(r2t,{service:t}));try{return(await t.build()).forEach(a=>{this.renderLogRecord(a)}),0}catch(n){return n instanceof Error?ZE((0,R9r.jsx)(Ok,{error:n})).split(` -`).forEach(a=>{console.error(a)}):console.error(n),1}finally{r()}}};var l4i=Nt(mn(),1),u4i=Nt(mn(),1),N9r=Nt(Io(),1),g4i=Nt(mn(),1),A4i=Nt(mn(),1),d4i=Nt(Io(),1),p4i=Nt(ul(),1);var f4i=Nt(Wc(),1),BKe=class extends A_e{static paths=[["service","dev"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(N9r.Filename.pnpCjs)&&t.includes(N9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await l4i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await u4i.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await d4i.xfs.mktempPromise(),{code:o}=await A4i.execUtils.pipevp("yarn",["service","dev",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await g4i.scriptUtils.makeScriptEnv({binFolder:a,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await eke.initialize(this.context.cwd),{clear:r}=(0,p4i.render)((0,f4i.jsx)(r2t,{service:t}));try{return await t.watch(n=>{this.renderLogRecord(n)}),0}catch(n){return console.error(n),1}finally{r()}}};var I4i={commands:[vKe,BKe]};var O9r={};Uf(O9r,{AbstractTestCommand:()=>ote,TestIntegrationCommand:()=>RKe,TestUnitCommand:()=>NKe,default:()=>O4i});var L9r=Nt(Io(),1);var D4i=Nt(dl(),1),G9r=Nt(mn(),1),F9r=Nt(mn(),1),k4i=Nt(Io(),1),x4i=Nt(mn(),1),G4i=Nt(mn(),1),Z9r=Nt(Io(),1),F4i=Nt(Io(),1),Z4i=Nt(Io(),1);Rl();Rl();var L4i=Nt(ul(),1);vZ();import{readFileSync as $Gc}from"node:fs";import{relative as N4i}from"node:path";import{pathToFileURL as eFc}from"node:url";var h4i=Nt(ul(),1),wKe=Nt(ul(),1);var m4i=Nt(Ec(),1);var bH=Nt(Wc(),1),C4i=({file:e,messages:t=[]})=>{let r=(0,m4i.useMemo)(()=>t.map(n=>n.endsWith(` -`)?n.replace(/\n$/,""):n).filter(Boolean),[t]);return(0,bH.jsxs)(wKe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",children:[!!e&&(0,bH.jsx)(wKe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,bH.jsx)(v8,{children:e})}),r.length>0&&(0,bH.jsxs)(bH.Fragment,{children:[(0,bH.jsx)($9,{offset:2}),(0,bH.jsx)(wKe.Box,{flexDirection:"column",marginBottom:1,marginTop:1,marginX:2,children:r.map(n=>(0,bH.jsx)(wKe.Box,{children:(0,bH.jsx)(h4i.Text,{children:n})},UO()))})]})]})};var k9r=Nt(ul(),1),oke=Nt(ul(),1);var kP=Nt(Wc(),1),_4i=({details:e,source:t,file:r,line:n,column:a})=>r&&t?(0,kP.jsxs)(oke.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,kP.jsx)(oke.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,kP.jsx)(v8,{line:n,column:a,children:r})}),(0,kP.jsx)($9,{offset:2}),(0,kP.jsx)(oke.Box,{marginBottom:1,children:(0,kP.jsx)(B8,{line:n??1,column:a??1,children:t})}),(0,kP.jsx)($9,{offset:2}),(0,kP.jsx)(oke.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,kP.jsx)(k9r.Text,{color:"white",children:e.error.message})})]}):(0,kP.jsx)(oke.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:(0,kP.jsx)(k9r.Text,{children:e.error.message})});var TKe=Nt(ul(),1),w4i=Nt(Ec(),1),T4i=Nt(Ec(),1);var y4i=Nt(Ec(),1),x9r=Nt(Ec(),1),E4i=Nt(Wc(),1),b4i=({tester:e})=>{let[t,r]=(0,x9r.useState)(0),[n,a]=(0,x9r.useState)(0);return(0,y4i.useEffect)(()=>{let o=f=>{r(f.tests.reduce((I,C)=>I+C.tests+1,0))},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("test:pass",l),e.on("test:fail",l),e.on("end",A),()=>{e.off("start",o),e.off("test:pass",l),e.off("test:fail",l),e.off("end",A)}},[e,t,r,a]),(0,E4i.jsx)(tH,{value:t>0&&n>0?n/t*100:0})};import{relative as S4i}from"node:path";var ake=Nt(ul(),1),rx=Nt(ul(),1),v4i=Nt(Ec(),1),cke=Nt(Ec(),1);var YE=Nt(Wc(),1),qGc=({state:e})=>e==="fail"?(0,YE.jsx)(rx.Text,{color:"red",children:GI.cross}):e==="pass"?(0,YE.jsx)(rx.Text,{color:"green",children:GI.tick}):(0,YE.jsx)(rx.Text,{color:"white",children:GI.circleDotted}),B4i=({cwd:e,tester:t})=>{let[r,n]=(0,cke.useState)(void 0),[a,o]=(0,cke.useState)(void 0),[l,A]=(0,cke.useState)(0),[f,I]=(0,cke.useState)(0),[C,b]=(0,cke.useState)(0);return(0,v4i.useEffect)(()=>{let E=F=>{A(F.tests.reduce((Q,J)=>Q+J.tests,0)),n(F.tests)},N=F=>{I(Q=>Q+1),F.file&&o({file:S4i(e,F.file),state:"pass"})},B=F=>{b(Q=>Q+1),F.file&&o({file:S4i(e,F.file),state:"fail"})};return t.on("start",E),t.on("test:pass",N),t.on("test:fail",B),()=>{t.off("start",E),t.off("test:pass",N),t.off("test:fail",B)}},[t,A,I,b,o]),r?(0,YE.jsxs)(ake.Box,{flexDirection:"row",width:"100%",children:[(0,YE.jsxs)(ake.Box,{flexGrow:1,children:[(0,YE.jsx)(GG,{color:"cyan",children:"Test:"}),(0,YE.jsx)(rx.Text,{children:" "}),!!a&&(0,YE.jsx)(rx.Text,{color:"white",children:a.file})]}),(0,YE.jsx)(ake.Box,{flexDirection:"row",children:(0,YE.jsxs)(ake.Box,{children:[(0,YE.jsx)(qGc,{state:a?.state}),(0,YE.jsx)(rx.Text,{children:" "}),(0,YE.jsxs)(rx.Text,{color:"green",children:[f," Pass"]}),(0,YE.jsx)(rx.Text,{children:" "}),(0,YE.jsxs)(rx.Text,{color:"red",children:[C," Fail"]}),(0,YE.jsx)(rx.Text,{children:" "}),(0,YE.jsxs)(rx.Text,{color:"white",children:[l," Total"]}),(0,YE.jsx)(rx.Text,{children:" "}),(0,YE.jsxs)(rx.Text,{color:"gray",children:[r.length||0," Files"]}),(0,YE.jsx)(rx.Text,{children:" "})]})})]}):(0,YE.jsxs)(ake.Box,{flexDirection:"row",children:[(0,YE.jsx)(GG,{color:"cyan",children:"Test:"}),(0,YE.jsx)(rx.Text,{children:" "}),(0,YE.jsx)(rx.Text,{color:"white",children:"Loading..."})]})};var hle=Nt(Wc(),1),R4i=({cwd:e,tester:t})=>{let[r,n]=(0,w4i.useState)(!1);return(0,T4i.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1e3)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,hle.jsx)(TKe.Box,{position:"relative",height:7,children:(0,hle.jsxs)(TKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,hle.jsx)(TKe.Box,{children:(0,hle.jsx)(B4i,{cwd:e,tester:t})}),(0,hle.jsx)(TKe.Box,{marginTop:1,marginBottom:1,children:(0,hle.jsx)(b4i,{tester:t})})]})})};var lke=Nt(Wc(),1),ote=class extends D4i.BaseCommand{static usage=Ub.Usage({description:"Run tests",details:` +If possible, please select a more specific dialect (like sqlite, postgresql, etc).`:`SQL dialect used: "${this.dialectName}".`}getWhitespace(){QXi.lastIndex=this.index;let e=QXi.exec(this.input);if(e)return this.index+=e[0].length,e[0]}getNextToken(){for(let e of this.rules){let t=this.match(e);if(t)return t}}match(e){e.regex.lastIndex=this.index;let t=e.regex.exec(this.input);if(t){let r=t[0],n={type:e.type,raw:r,text:e.text?e.text(r):r,start:this.index};return e.key&&(n.key=e.key(r)),this.index+=r.length,n}}},jXi=/\/\*/uy,dFc=/[\s\S]/uy,pFc=/\*\//uy,fFc=class{constructor(){this.lastIndex=0}exec(e){let t="",r,n=0;if(r=this.matchSection(jXi,e))t+=r,n++;else return null;for(;n>0;)if(r=this.matchSection(jXi,e))t+=r,n++;else if(r=this.matchSection(pFc,e))t+=r,n--;else if(r=this.matchSection(dFc,e))t+=r;else return null;return[t]}matchSection(e,t){e.lastIndex=this.lastIndex;let r=e.exec(t);return r&&(this.lastIndex+=r[0].length),r?r[0]:null}},IFc=class{constructor(e,t){this.cfg=e,this.dialectName=t,this.rulesBeforeParams=this.buildRulesBeforeParams(e),this.rulesAfterParams=this.buildRulesAfterParams(e)}tokenize(e,t){let r=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,t),...this.rulesAfterParams],n=new AFc(r,this.dialectName).tokenize(e);return this.cfg.postProcess?this.cfg.postProcess(n):n}buildRulesBeforeParams(e){var t,r;return this.validRules([{type:"BLOCK_COMMENT",regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:"BLOCK_COMMENT",regex:e.nestedBlockComments?new fFc:/(\/\*[^]*?\*\/)/uy},{type:"LINE_COMMENT",regex:aFc((t=e.lineCommentTypes)!=null?t:["--"])},{type:"QUOTED_IDENTIFIER",regex:KXi(e.identTypes)},{type:"NUMBER",regex:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:"RESERVED_PHRASE",regex:hle((r=e.reservedPhrases)!=null?r:[],e.identChars),text:CD},{type:"CASE",regex:/CASE\b/iuy,text:CD},{type:"END",regex:/END\b/iuy,text:CD},{type:"BETWEEN",regex:/BETWEEN\b/iuy,text:CD},{type:"LIMIT",regex:e.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:CD},{type:"RESERVED_CLAUSE",regex:hle(e.reservedClauses,e.identChars),text:CD},{type:"RESERVED_SELECT",regex:hle(e.reservedSelect,e.identChars),text:CD},{type:"RESERVED_SET_OPERATION",regex:hle(e.reservedSetOperations,e.identChars),text:CD},{type:"WHEN",regex:/WHEN\b/iuy,text:CD},{type:"ELSE",regex:/ELSE\b/iuy,text:CD},{type:"THEN",regex:/THEN\b/iuy,text:CD},{type:"RESERVED_JOIN",regex:hle(e.reservedJoins,e.identChars),text:CD},{type:"AND",regex:/AND\b/iuy,text:CD},{type:"OR",regex:/OR\b/iuy,text:CD},{type:"XOR",regex:e.supportsXor?/XOR\b/iuy:void 0,text:CD},{type:"RESERVED_FUNCTION_NAME",regex:hle(e.reservedFunctionNames,e.identChars),text:CD},{type:"RESERVED_DATA_TYPE",regex:hle(e.reservedDataTypes,e.identChars),text:CD},{type:"RESERVED_KEYWORD",regex:hle(e.reservedKeywords,e.identChars),text:CD}])}buildRulesAfterParams(e){var t,r;return this.validRules([{type:"VARIABLE",regex:e.variableTypes?uFc(e.variableTypes):void 0},{type:"STRING",regex:KXi(e.stringTypes)},{type:"IDENTIFIER",regex:gFc(e.identChars)},{type:"DELIMITER",regex:/[;]/uy},{type:"COMMA",regex:/[,]/y},{type:"OPEN_PAREN",regex:XXi("open",e.extraParens)},{type:"CLOSE_PAREN",regex:XXi("close",e.extraParens)},{type:"OPERATOR",regex:JXi(["+","-","/",">","<","=","<>","<=",">=","!=",...(t=e.operators)!=null?t:[]])},{type:"ASTERISK",regex:/[*]/uy},{type:"PROPERTY_ACCESS_OPERATOR",regex:JXi([".",...(r=e.propertyAccessOperators)!=null?r:[]])}])}buildParamRules(e,t){var r,n,a,o,l;let A={named:t?.named||((r=e.paramTypes)==null?void 0:r.named)||[],quoted:t?.quoted||((n=e.paramTypes)==null?void 0:n.quoted)||[],numbered:t?.numbered||((a=e.paramTypes)==null?void 0:a.numbered)||[],positional:typeof t?.positional=="boolean"?t.positional:(o=e.paramTypes)==null?void 0:o.positional,custom:t?.custom||((l=e.paramTypes)==null?void 0:l.custom)||[]};return this.validRules([{type:"NAMED_PARAMETER",regex:R9r(A.named,g4i(e.paramChars||e.identChars)),key:f=>f.slice(1)},{type:"QUOTED_PARAMETER",regex:R9r(A.quoted,u4i(e.identTypes)),key:f=>(({tokenKey:I,quoteChar:C})=>I.replace(new RegExp(R4("\\"+C),"gu"),C))({tokenKey:f.slice(2,-1),quoteChar:f.slice(-1)})},{type:"NUMBERED_PARAMETER",regex:R9r(A.numbered,"[0-9]+"),key:f=>f.slice(1)},{type:"POSITIONAL_PARAMETER",regex:A.positional?/[?]/y:void 0},...A.custom.map(f=>{var I;return{type:"CUSTOM_PARAMETER",regex:g_e(f.regex),key:(I=f.key)!=null?I:C=>C}})])}validRules(e){return e.filter(t=>!!t.regex)}},CD=e=>xvt(e.toUpperCase()),zXi=new Map,hFc=e=>{let t=zXi.get(e);return t||(t=mFc(e),zXi.set(e,t)),t},mFc=e=>({tokenizer:new IFc(e.tokenizerOptions,e.name),formatOptions:CFc(e.formatOptions)}),CFc=e=>{var t;return{alwaysDenseOperators:e.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(e.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=e.tabularOnelineClauses)!=null?t:e.onelineClauses).map(r=>[r,!0]))}};function _Fc(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"?" ".repeat(10):e.useTabs?" ":" ".repeat(e.tabWidth)}function nke(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"}var yFc=class{constructor(e){this.params=e,this.index=0}get({key:e,text:t}){return this.params?e?this.params[e]:this.params[this.index++]:t}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(e){this.index=e}};function bFc(e){return e.map(EFc).map(SFc).map(vFc).map(BFc).map(wFc)}var EFc=(e,t,r)=>{if(a4i(e.type)){let n=TFc(r,t);if(n&&n.type==="PROPERTY_ACCESS_OPERATOR")return aL(rx({},e),{type:"IDENTIFIER",text:e.raw})}return e},SFc=(e,t,r)=>{if(e.type==="RESERVED_FUNCTION_NAME"){let n=vKe(r,t);if(!n||!p4i(n))return aL(rx({},e),{type:"RESERVED_KEYWORD"})}return e},vFc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=vKe(r,t);if(n&&p4i(n))return aL(rx({},e),{type:"RESERVED_PARAMETERIZED_DATA_TYPE"})}return e},BFc=(e,t,r)=>{if(e.type==="IDENTIFIER"){let n=vKe(r,t);if(n&&f4i(n))return aL(rx({},e),{type:"ARRAY_IDENTIFIER"})}return e},wFc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=vKe(r,t);if(n&&f4i(n))return aL(rx({},e),{type:"ARRAY_KEYWORD"})}return e},TFc=(e,t)=>vKe(e,t,-1),vKe=(e,t,r=1)=>{let n=1;for(;e[t+n*r]&&RFc(e[t+n*r]);)n++;return e[t+n*r]},p4i=e=>e.type==="OPEN_PAREN"&&e.text==="(",f4i=e=>e.type==="OPEN_PAREN"&&e.text==="[",RFc=e=>e.type==="BLOCK_COMMENT"||e.type==="LINE_COMMENT",I4i=class{constructor(e){this.tokenize=e,this.index=0,this.tokens=[],this.input=""}reset(e,t){this.input=e,this.index=0,this.tokens=this.tokenize(e)}next(){return this.tokens[this.index++]}save(){}formatError(e){let{line:t,col:r}=A4i(this.input,e.start);return`Parse error at token: ${e.text} at line ${t} column ${r}`}has(e){return e in s4i}};function N9r(e){return e[0]}var Rf=new I4i(e=>[]),l_e=([[e]])=>e,_D=e=>({type:"keyword",tokenType:e.type,text:e.text,raw:e.raw}),qXi=e=>({type:"data_type",text:e.text,raw:e.raw}),yD=(e,{leading:t,trailing:r})=>(t?.length&&(e=aL(rx({},e),{leadingComments:t})),r?.length&&(e=aL(rx({},e),{trailingComments:r})),e),NFc=(e,{leading:t,trailing:r})=>{if(t?.length){let[n,...a]=e;e=[yD(n,{leading:t}),...a]}if(r?.length){let n=e.slice(0,-1),a=e[e.length-1];e=[...n,yD(a,{trailing:r})]}return e},DFc={Lexer:Rf,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:e=>e[0].concat([e[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([e])=>{let t=e[e.length-1];return t&&!t.hasSemicolon?t.children.length>0?e:e.slice(0,-1):e}},{name:"statement$subexpression$1",symbols:[Rf.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[Rf.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([e,[t]])=>({type:"statement",children:e,hasSemicolon:t.type==="DELIMITER"})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([e,t])=>[...e,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:l_e},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[Rf.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:N9r},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[Rf.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([e,t,r,n])=>{if(n){let[a,o]=n;return{type:"limit_clause",limitKw:yD(_D(e),{trailing:t}),offset:r,count:o}}else return{type:"limit_clause",limitKw:yD(_D(e),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[Rf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([e,[t,r]])=>({type:"clause",nameKw:_D(e),children:[t,...r]})},{name:"select_clause",symbols:[Rf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([e])=>({type:"clause",nameKw:_D(e),children:[]})},{name:"all_columns_asterisk",symbols:[Rf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:"all_columns_asterisk"})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"other_clause",symbols:[Rf.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([e,t])=>({type:"clause",nameKw:_D(e),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"set_operation",symbols:[Rf.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([e,t])=>({type:"set_operation",nameKw:_D(e),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:N9r},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([e,t])=>yD(e,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([e,t])=>yD(t,{leading:e})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([e,t])=>yD(t,{leading:e})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:l_e},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:l_e},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:l_e},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:l_e},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:l_e},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:l_e},{name:"array_subscript",symbols:[Rf.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:yD({type:"identifier",quoted:!1,text:e.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[Rf.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:yD(_D(e),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[Rf.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([e,t,r])=>({type:"function_call",nameKw:yD(_D(e),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",Rf.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([e,t,r,n,[a]])=>({type:"property_access",object:yD(e,{trailing:t}),operator:r.text,property:yD(a,{leading:n})})},{name:"between_predicate",symbols:[Rf.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",Rf.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([e,t,r,n,a,o,l])=>({type:"between_predicate",betweenKw:_D(e),expr1:NFc(r,{leading:t,trailing:n}),andKw:_D(a),expr2:[yD(l,{leading:o})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:N9r},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:e=>e[0].concat([e[1]])},{name:"case_expression",symbols:[Rf.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",Rf.has("END")?{type:"END"}:END],postprocess:([e,t,r,n,a])=>({type:"case_expression",caseKw:yD(_D(e),{trailing:t}),endKw:_D(a),expr:r||[],clauses:n})},{name:"case_clause",symbols:[Rf.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",Rf.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([e,t,r,n,a,o])=>({type:"case_when",whenKw:yD(_D(e),{trailing:t}),thenKw:yD(_D(n),{trailing:a}),condition:r,result:o})},{name:"case_clause",symbols:[Rf.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([e,t,r])=>({type:"case_else",elseKw:yD(_D(e),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[Rf.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[e]])=>({type:"comma"})},{name:"asterisk$subexpression$1",symbols:[Rf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"operator$subexpression$1",symbols:[Rf.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"identifier$subexpression$1",symbols:[Rf.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Rf.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Rf.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[e]])=>({type:"identifier",quoted:e.type!=="IDENTIFIER",text:e.text})},{name:"parameter$subexpression$1",symbols:[Rf.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Rf.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[e]])=>({type:"parameter",key:e.key,text:e.text})},{name:"literal$subexpression$1",symbols:[Rf.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[Rf.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[e]])=>({type:"literal",text:e.text})},{name:"keyword$subexpression$1",symbols:[Rf.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[Rf.has("RESERVED_PHRASE")?{type:"RESERVED_PHRASE"}:RESERVED_PHRASE]},{name:"keyword$subexpression$1",symbols:[Rf.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[e]])=>_D(e)},{name:"data_type$subexpression$1",symbols:[Rf.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[e]])=>qXi(e)},{name:"data_type",symbols:[Rf.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([e,t,r])=>({type:"parameterized_data_type",dataType:yD(qXi(e),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[Rf.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[Rf.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[Rf.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[e]])=>_D(e)},{name:"other_keyword$subexpression$1",symbols:[Rf.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[Rf.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[Rf.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[Rf.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[e]])=>_D(e)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:e=>e[0].concat([e[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([e])=>e},{name:"comment",symbols:[Rf.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([e])=>({type:"line_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[Rf.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([e])=>({type:"block_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[Rf.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([e])=>({type:"disable_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})}],ParserStart:"main"},kFc=DFc,{Parser:xFc,Grammar:GFc}=d4i.default;function FFc(e){let t={},r=new I4i(a=>[...bFc(e.tokenize(a,t)),o4i(a.length)]),n=new xFc(GFc.fromCompiled(kFc),{lexer:r});return{parse:(a,o)=>{t=o;let{results:l}=n.feed(a);if(l.length===1)return l[0];throw l.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar +${JSON.stringify(l,void 0,2)}`)}}}var h4i=class{constructor(e){this.indentation=e,this.items=[]}add(...e){for(let t of e)switch(t){case 0:this.items.push(0);break;case 1:this.trimHorizontalWhitespace();break;case 2:this.trimWhitespace();break;case 3:this.trimHorizontalWhitespace(),this.addNewline(3);break;case 4:this.trimHorizontalWhitespace(),this.addNewline(4);break;case 5:this.addIndentation();break;case 6:this.items.push(6);break;default:this.items.push(t)}}trimHorizontalWhitespace(){for(;ZFc(SKe(this.items));)this.items.pop()}trimWhitespace(){for(;LFc(SKe(this.items));)this.items.pop()}addNewline(e){if(this.items.length>0)switch(SKe(this.items)){case 3:this.items.pop(),this.items.push(e);break;case 4:break;default:this.items.push(e);break}}addIndentation(){for(let e=0;ethis.itemToString(e)).join("")}getLayoutItems(){return this.items}itemToString(e){switch(e){case 0:return" ";case 3:case 4:return` +`;case 6:return this.indentation.getSingleIndent();default:return e}}},ZFc=e=>e===0||e===6,LFc=e=>e===0||e===6||e===3;function $Xi(e,t){if(t==="standard")return e;let r=[];return e.length>=10&&e.includes(" ")&&([e,...r]=e.split(" ")),t==="tabularLeft"?e=e.padEnd(9," "):e=e.padStart(9," "),e+["",...r].join(" ")}function e4i(e){return zDc(e)||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="LIMIT"}var D9r="top-level",VFc="block-level",m4i=class{constructor(e){this.indent=e,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(D9r)}increaseBlockLevel(){this.indentTypes.push(VFc)}decreaseTopLevel(){this.indentTypes.length>0&&SKe(this.indentTypes)===D9r&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===D9r;);}},WFc=class extends h4i{constructor(e){super(new m4i("")),this.expressionWidth=e,this.length=0,this.trailingSpace=!1}add(...e){if(e.forEach(t=>this.addToLength(t)),this.length>this.expressionWidth)throw new k9r;super.add(...e)}addToLength(e){if(typeof e=="string")this.length+=e.length,this.trailingSpace=!1;else{if(e===4||e===3)throw new k9r;e===5||e===6||e===0?this.trailingSpace||(this.length++,this.trailingSpace=!0):(e===2||e===1)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}},k9r=class extends Error{},OFc=class x9r{constructor({cfg:t,dialectCfg:r,params:n,layout:a,inline:o=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=o,this.params=n,this.layout=a}format(t){for(this.nodes=t,this.index=0;this.index{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case"data_type":r=this.showDataType(t.array);break;case"keyword":r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(1,t.operator),this.formatNode(t.property)}formatParenthesis(t){let r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(1,t.closeParen,0)):(this.layout.add(t.openParen,3),nke(this.cfg)?(this.layout.add(5),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(3,5,t.closeParen,0))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),0),this.layout=this.formatSubExpression(t.expr1),this.layout.add(1,0,this.showNonTabularKw(t.andKw),0),this.layout=this.formatSubExpression(t.expr2),this.layout.add(0)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(3,5),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(3,5),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(3,5),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):nke(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return nke(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.indentation.increaseTopLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.add(5),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(3,5,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),nke(this.cfg)?this.layout.add(0):this.layout.add(3,5),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(1,",",0),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",0)}formatLiteral(t){this.layout.add(t.text,0)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),0)}formatParameter(t){this.layout.add(this.params.get(t),0)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(1,t):t===":"?this.layout.add(1,t,0):this.layout.add(t,0)}formatComma(t){this.inline?this.layout.add(1,",",0):this.layout.add(1,",",3,5)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type==="line_comment"?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){T9r(t.precedingWhitespace||"")?this.layout.add(3,5,t.text,4,5):this.layout.getLayoutItems().length>0?this.layout.add(2,0,t.text,4,5):this.layout.add(t.text,4,5)}formatBlockComment(t){t.type==="block_comment"&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(3,5,r)}),this.layout.add(3,5)):this.layout.add(t.text,0)}isMultilineBlockComment(t){return T9r(t.text)||T9r(t.precedingWhitespace||"")}isDocComment(t){let r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(n=>/^\s*\*/.test(n))&&/^\s*\*\/$/.test(SKe(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new x9r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){let r=this.params.getPositionalParameterIndex();try{return new x9r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new WFc(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof k9r){this.params.setPositionalParameterIndex(r);return}else throw n}}formatKeywordNode(t){switch(t.tokenType){case"RESERVED_JOIN":return this.formatJoin(t);case"AND":case"OR":case"XOR":return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){nke(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0)}formatKeyword(t){this.layout.add(this.showKw(t),0)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?nke(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0):this.layout.add(this.showKw(t),3,5)}formatDataType(t){this.layout.add(this.showDataType(t),0)}showKw(t){return e4i(t.tokenType)?$Xi(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return xvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return e4i(t.tokenType)?$Xi(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return xvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return xvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}},PFc=class{constructor(e,t){this.dialect=e,this.cfg=t,this.params=new yFc(this.cfg.params)}format(e){let t=this.parse(e);return this.formatAst(t).trimEnd()}parse(e){return FFc(this.dialect.tokenizer).parse(e,this.cfg.paramTypes||{})}formatAst(e){return e.map(t=>this.formatStatement(t)).join(` +`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(e){let t=new OFc({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new h4i(new m4i(_Fc(this.cfg)))}).format(e.children);return e.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?t.add(3,";"):t.add(2,";")),t.toString()}},Gvt=class extends Error{};function MFc(e){let t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(let r of t)if(r in e)throw new Gvt(`${r} config is no more supported.`);if(e.expressionWidth<=0)throw new Gvt(`expressionWidth config must be positive number. Received ${e.expressionWidth} instead.`);if(e.params&&!HFc(e.params)&&console.warn('WARNING: All "params" option values should be strings.'),e.paramTypes&&!YFc(e.paramTypes))throw new Gvt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return e}function HFc(e){return(e instanceof Array?e:Object.values(e)).every(r=>typeof r=="string")}function YFc(e){return e.custom&&Array.isArray(e.custom)?e.custom.every(t=>t.regex!==""):!0}var C4i={bigquery:"bigquery",db2:"db2",db2i:"db2i",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},QFc=Object.keys(C4i),XFc={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},_4i=(e,t={})=>{if(typeof t.language=="string"&&!QFc.includes(t.language))throw new Gvt(`Unsupported SQL dialect: ${t.language}`);let r=C4i[t.language||"sql"];return JFc(e,aL(rx({},t),{dialect:i4i[r]}))},JFc=(e,t)=>{var r=t,{dialect:n}=r,a=PDc(r,["dialect"]);if(typeof e!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof e);let o=MFc(rx(rx({},XFc),a));return new PFc(hFc(n),o).format(e)};var UG=xt(Wc(),1),UFc=({children:e})=>e?(0,UG.jsxs)(Lvt.Box,{paddingLeft:4,children:[(0,UG.jsx)(U6.Text,{children:"SQL:"}),(0,UG.jsx)(U6.Text,{children:" "}),(0,UG.jsx)(U6.Text,{children:new y4i.SqlHighlighter().highlight(_4i(e,{language:"postgresql"}))})]}):null,KFc=({children:e})=>{if(e&&Array.isArray(e)&&e.length>0){let t=e.reduce((r,n,a)=>(r.push((0,UG.jsx)(U6.Text,{color:"yellow",children:n},jO())),ae?(0,UG.jsxs)(Lvt.Box,{marginTop:1,flexDirection:"column",children:[(0,UG.jsx)(UFc,{children:e[l9r]}),(0,UG.jsx)(KFc,{children:e[u9r]})]}):null;var E4i=xt(gl(),1);var F9r=xt(Wc(),1),S4i=({children:e})=>e?(0,F9r.jsx)(E4i.Box,{paddingBottom:1,marginTop:1,children:(0,F9r.jsx)(jyt,{children:e})}):null;var N4=xt(Wc(),1),Vvt=({namespace:e,body:t,stack:r,attributes:n={}})=>(0,N4.jsxs)(ske.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:[(0,N4.jsx)(ske.Box,{flexDirection:"row",children:(0,N4.jsxs)(ske.Box,{flexGrow:1,children:[(0,N4.jsx)(ske.Box,{paddingRight:1,children:(0,N4.jsx)(pXi,{children:e||n[sLr]})}),(0,N4.jsx)(ske.Box,{children:(0,N4.jsx)(uXi,{children:t})})]})}),(0,N4.jsx)(S4i,{children:r||n["@stack"]}),(0,N4.jsx)(b4i,{children:n})]});var Wvt=xt(Wc(),1),A_e=class extends v4i.BaseCommand{showWarnings=sA.Boolean("-w,--show-warnings",!1);renderLogRecord(t){t instanceof Error?LE((0,Wvt.jsx)(Pk,{error:t})).split(` +`).forEach(r=>{console.log(r)}):"severityNumber"in t&&"record"in t?LE((0,Wvt.jsx)(Pk,{error:t.record})).split(` +`).forEach(r=>{t.severityNumber===T4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):"severityNumber"in t?LE((0,Wvt.jsx)(Vvt,{...t})).split(` +`).forEach(r=>{t.severityNumber<=T4.SeverityNumber.INFO?console.log(r):t.severityNumber<=T4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):console.log(`Unknown record type: ${JSON.stringify(t)}`)}};var L9r=xt(Wc(),1),BKe=class extends A_e{static paths=[["service","build"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Z9r.Filename.pnpCjs)&&t.includes(Z9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await B4i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await w4i.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await R4i.xfs.mktempPromise(),{executable:o,env:l}=await BC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await T4i.execUtils.pipevp(o,["service","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await eke.initialize(this.context.cwd),{clear:r}=(0,N4i.render)((0,L9r.jsx)(r2t,{service:t}));try{return(await t.build()).forEach(a=>{this.renderLogRecord(a)}),0}catch(n){return n instanceof Error?LE((0,L9r.jsx)(Pk,{error:n})).split(` +`).forEach(a=>{console.error(a)}):console.error(n),1}finally{r()}}};var D4i=xt(wn(),1),k4i=xt(wn(),1),V9r=xt(No(),1),x4i=xt(wn(),1),G4i=xt(No(),1),F4i=xt(gl(),1);var Z4i=xt(Wc(),1),wKe=class extends A_e{static paths=[["service","dev"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(V9r.Filename.pnpCjs)&&t.includes(V9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await D4i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await k4i.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await G4i.xfs.mktempPromise(),{executable:o,env:l}=await BC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await x4i.execUtils.pipevp(o,["service","dev",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await eke.initialize(this.context.cwd),{clear:r}=(0,F4i.render)((0,Z4i.jsx)(r2t,{service:t}));try{return await t.watch(n=>{this.renderLogRecord(n)}),0}catch(n){return console.error(n),1}finally{r()}}};var L4i={commands:[BKe,wKe]};var J9r={};Uf(J9r,{AbstractTestCommand:()=>ate,TestIntegrationCommand:()=>NKe,TestUnitCommand:()=>DKe,default:()=>iJi});var Y9r=xt(No(),1);var q4i=xt(sl(),1),M9r=xt(wn(),1),H9r=xt(wn(),1),$4i=xt(wn(),1),eJi=xt(No(),1);vl();vl();var tJi=xt(gl(),1);BZ();import{readFileSync as zFc}from"node:fs";import{relative as z4i}from"node:path";var V4i=xt(gl(),1),TKe=xt(gl(),1);var W4i=xt(Ec(),1);var EH=xt(Wc(),1),O4i=({file:e,messages:t=[]})=>{let r=(0,W4i.useMemo)(()=>t.map(n=>n.endsWith(` +`)?n.replace(/\n$/,""):n).filter(Boolean),[t]);return(0,EH.jsxs)(TKe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",children:[!!e&&(0,EH.jsx)(TKe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,EH.jsx)(B8,{children:e})}),r.length>0&&(0,EH.jsxs)(EH.Fragment,{children:[(0,EH.jsx)(eV,{offset:2}),(0,EH.jsx)(TKe.Box,{flexDirection:"column",marginBottom:1,marginTop:1,marginX:2,children:r.map(n=>(0,EH.jsx)(TKe.Box,{children:(0,EH.jsx)(V4i.Text,{children:n})},jO()))})]})]})};var O9r=xt(gl(),1),oke=xt(gl(),1);var GP=xt(Wc(),1),P4i=({details:e,source:t,file:r,line:n,column:a})=>r&&t?(0,GP.jsxs)(oke.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,GP.jsx)(oke.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,GP.jsx)(B8,{line:n,column:a,children:r})}),(0,GP.jsx)(eV,{offset:2}),(0,GP.jsx)(oke.Box,{marginBottom:1,children:(0,GP.jsx)(w8,{line:n??1,column:a??1,children:t})}),(0,GP.jsx)(eV,{offset:2}),(0,GP.jsx)(oke.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,GP.jsx)(O9r.Text,{color:"white",children:e.error.message})})]}):(0,GP.jsx)(oke.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:(0,GP.jsx)(O9r.Text,{children:e.error.message})});var RKe=xt(gl(),1),U4i=xt(Ec(),1),K4i=xt(Ec(),1);var M4i=xt(Ec(),1),P9r=xt(Ec(),1),Y4i=xt(Wc(),1),H4i=({tester:e})=>{let[t,r]=(0,P9r.useState)(0),[n,a]=(0,P9r.useState)(0);return(0,M4i.useEffect)(()=>{let o=f=>{r(f.tests.reduce((I,C)=>I+C.tests+1,0))},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("test:pass",l),e.on("test:fail",l),e.on("end",A),()=>{e.off("start",o),e.off("test:pass",l),e.off("test:fail",l),e.off("end",A)}},[e,t,r,a]),(0,Y4i.jsx)(rH,{value:t>0&&n>0?n/t*100:0})};import{relative as Q4i}from"node:path";var ake=xt(gl(),1),nx=xt(gl(),1),X4i=xt(Ec(),1),cke=xt(Ec(),1);var QE=xt(Wc(),1),jFc=({state:e})=>e==="fail"?(0,QE.jsx)(nx.Text,{color:"red",children:GI.cross}):e==="pass"?(0,QE.jsx)(nx.Text,{color:"green",children:GI.tick}):(0,QE.jsx)(nx.Text,{color:"white",children:GI.circleDotted}),J4i=({cwd:e,tester:t})=>{let[r,n]=(0,cke.useState)(void 0),[a,o]=(0,cke.useState)(void 0),[l,A]=(0,cke.useState)(0),[f,I]=(0,cke.useState)(0),[C,b]=(0,cke.useState)(0);return(0,X4i.useEffect)(()=>{let E=F=>{A(F.tests.reduce((Q,J)=>Q+J.tests,0)),n(F.tests)},N=F=>{I(Q=>Q+1),F.file&&o({file:Q4i(e,F.file),state:"pass"})},B=F=>{b(Q=>Q+1),F.file&&o({file:Q4i(e,F.file),state:"fail"})};return t.on("start",E),t.on("test:pass",N),t.on("test:fail",B),()=>{t.off("start",E),t.off("test:pass",N),t.off("test:fail",B)}},[t,A,I,b,o]),r?(0,QE.jsxs)(ake.Box,{flexDirection:"row",width:"100%",children:[(0,QE.jsxs)(ake.Box,{flexGrow:1,children:[(0,QE.jsx)(FG,{color:"cyan",children:"Test:"}),(0,QE.jsx)(nx.Text,{children:" "}),!!a&&(0,QE.jsx)(nx.Text,{color:"white",children:a.file})]}),(0,QE.jsx)(ake.Box,{flexDirection:"row",children:(0,QE.jsxs)(ake.Box,{children:[(0,QE.jsx)(jFc,{state:a?.state}),(0,QE.jsx)(nx.Text,{children:" "}),(0,QE.jsxs)(nx.Text,{color:"green",children:[f," Pass"]}),(0,QE.jsx)(nx.Text,{children:" "}),(0,QE.jsxs)(nx.Text,{color:"red",children:[C," Fail"]}),(0,QE.jsx)(nx.Text,{children:" "}),(0,QE.jsxs)(nx.Text,{color:"white",children:[l," Total"]}),(0,QE.jsx)(nx.Text,{children:" "}),(0,QE.jsxs)(nx.Text,{color:"gray",children:[r.length||0," Files"]}),(0,QE.jsx)(nx.Text,{children:" "})]})})]}):(0,QE.jsxs)(ake.Box,{flexDirection:"row",children:[(0,QE.jsx)(FG,{color:"cyan",children:"Test:"}),(0,QE.jsx)(nx.Text,{children:" "}),(0,QE.jsx)(nx.Text,{color:"white",children:"Loading..."})]})};var mle=xt(Wc(),1),j4i=({cwd:e,tester:t})=>{let[r,n]=(0,U4i.useState)(!1);return(0,K4i.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1e3)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,mle.jsx)(RKe.Box,{position:"relative",height:7,children:(0,mle.jsxs)(RKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,mle.jsx)(RKe.Box,{children:(0,mle.jsx)(J4i,{cwd:e,tester:t})}),(0,mle.jsx)(RKe.Box,{marginTop:1,marginBottom:1,children:(0,mle.jsx)(H4i,{tester:t})})]})})};var lke=xt(Wc(),1),ate=class extends q4i.BaseCommand{static usage=Kb.Usage({description:"Run tests",details:` Run either integration or unit tests with Node.js built-in test runner. Integration tests are defined by placing *.test.[j|t]sx? in 'integration' folder anywhere. Unit tests are all *.test.[j|t]sx? except in 'integration' folder. - `,examples:[["Run all unit tests","yarn test unit"],["Run all integration tests","yarn test integration"],["Run all integration tests which file names include 'menu'","yarn test integration menu"],["Run all unit tests in watch mode - reloading after any change in file","yarn test unit -w"]]});target=vA.String("-t,--target");watch=vA.Boolean("-w,--watch",!1);files=vA.Rest({required:0});testReporter=vA.String("--test-reporter",{validator:Z6t(["tap"])});std=new Map;bufferedStdTimeout;async executeProxy(t){let r=await G9r.Configuration.find(this.context.cwd,this.context.plugins),{project:n,workspace:a}=await F9r.Project.find(r,this.context.cwd),o=[];this.files.length&&o.push(this.files.join(" ")),this.watch&&o.push("-w"),a&&(o.push("-t"),o.push(this.context.cwd)),this.testReporter&&o.push(`--test-reporter=${this.testReporter}`);let l=await Z9r.xfs.mktempPromise(),A=await x4i.scriptUtils.makeScriptEnv({binFolder:l,project:n,ignoreCorepack:!0});A.NODE_OPTIONS?.includes("--no-warnings")||(A.NODE_OPTIONS=`${A.NODE_OPTIONS??""} --no-warnings=DeprecationWarning`);let f=F4i.ppath.join(n.cwd,k4i.Filename.pnpEsmLoader),I=await Z9r.xfs.existsPromise(f)?eFc(Z4i.npath.fromPortablePath(f)).href:void 0;A[Phe]=JSON.stringify(NTe(I)),A.COMMAND_PROXY_EXECUTION="true";let{code:C}=await G4i.execUtils.pipevp("yarn",["test",t??"",...o],{cwd:n.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:A});return C}async executeRegular(t){let r=await G9r.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await F9r.Project.find(r,this.context.cwd),a=I=>{this.bufferedStd(I,C=>{this.renderStdBuffer(C)})},o=I=>{this.bufferedStd(I,C=>{this.renderStdBuffer(C)})},l=I=>{let C=I.file?$Gc(I.file,"utf8"):void 0;ZE((0,lke.jsx)(_4i,{details:I.details,source:C,file:I.file?N4i(n.cwd,I.file):void 0,column:I.column,line:I.line})).split(` -`).forEach(b=>{console.error(b)})},A=await z8.initialize(this.context.cwd);A.on("test:stdout",a),A.on("test:stderr",o),A.on("test:fail",l);let{clear:f}=(0,L4i.render)((0,lke.jsx)(R4i,{cwd:n.cwd,tester:A}));try{return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch})).find(C=>C.type==="test:fail")?1:0}catch(I){return I instanceof Error?ZE((0,lke.jsx)(Ok,{error:I})).split(` + `,examples:[["Run all unit tests","yarn test unit"],["Run all integration tests","yarn test integration"],["Run all integration tests which file names include 'menu'","yarn test integration menu"],["Run all unit tests in watch mode - reloading after any change in file","yarn test unit -w"]]});target=sA.String("-t,--target");watch=sA.Boolean("-w,--watch",!1);files=sA.Rest({required:0});testReporter=sA.String("--test-reporter",{validator:Z6t(["tap"])});std=new Map;bufferedStdTimeout;async executeProxy(t){let r=await M9r.Configuration.find(this.context.cwd,this.context.plugins),{project:n,workspace:a}=await H9r.Project.find(r,this.context.cwd),o=[];this.files.length&&o.push(this.files.join(" ")),this.watch&&o.push("-w"),a&&(o.push("-t"),o.push(this.context.cwd)),this.testReporter&&o.push(`--test-reporter=${this.testReporter}`);let l=await eJi.xfs.mktempPromise(),{executable:A,env:f}=await BC({binFolder:l,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}});f.NODE_OPTIONS?.includes("--no-warnings")||(f.NODE_OPTIONS=`${f.NODE_OPTIONS??""} --no-warnings=DeprecationWarning`);let{code:I}=await $4i.execUtils.pipevp(A,["test",t??"",...o],{cwd:n.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:f});return I}async executeRegular(t){let r=await M9r.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await H9r.Project.find(r,this.context.cwd),a=I=>{this.bufferedStd(I,C=>{this.renderStdBuffer(C)})},o=I=>{this.bufferedStd(I,C=>{this.renderStdBuffer(C)})},l=I=>{let C=I.file?zFc(I.file,"utf8"):void 0;LE((0,lke.jsx)(P4i,{details:I.details,source:C,file:I.file?z4i(n.cwd,I.file):void 0,column:I.column,line:I.line})).split(` +`).forEach(b=>{console.error(b)})},A=await q8.initialize(this.context.cwd);A.on("test:stdout",a),A.on("test:stderr",o),A.on("test:fail",l);let{clear:f}=(0,tJi.render)((0,lke.jsx)(j4i,{cwd:n.cwd,tester:A}));try{return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch})).find(C=>C.type==="test:fail")?1:0}catch(I){return I instanceof Error?LE((0,lke.jsx)(Pk,{error:I})).split(` `).forEach(C=>{console.error(C)}):console.error(I),1}finally{this.flushBufferedStd(),A.off("test:stdout",a),A.off("test:stderr",o),A.off("test:fail",l),f()}}bufferedStd(t,r){if(this.std.keys().next().value)if(this.std.has(t.file))this.std.get(t.file)?.push(t.message),this.bufferedStdTimeout&&clearTimeout(this.bufferedStdTimeout),this.bufferedStdTimeout=setTimeout(()=>{let n=this.std.keys().next().value;r({file:n,messages:this.std.get(n)??[]}),this.std.delete(n)},100);else{let n=this.std.keys().next().value;r({file:n,messages:this.std.get(n)??[]}),this.std.delete(n),this.std.set(t.file,[t.message])}else this.std.set(t.file,[t.message])}renderStdBuffer({file:t,messages:r}){let n=r.map(l=>l.split(` -`).filter(Boolean)).flat(),{logRecords:a,raw:o}=n.reduce((l,A)=>{try{let f=JSON.parse(A);return{...l,logRecords:[...l.logRecords,f]}}catch{return{...l,raw:[...l.raw,A]}}},{logRecords:[],raw:[]});a.forEach(l=>{console.log(ZE((0,lke.jsx)(Vvt,{...l})))}),o.length>0&&console.log(ZE((0,lke.jsx)(C4i,{file:t?N4i(process.cwd(),t):void 0,messages:o})))}flushBufferedStd(){this.std.forEach((t,r)=>{this.renderStdBuffer({file:r,messages:t})})}};var RKe=class extends ote{static paths=[["test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(L9r.Filename.pnpCjs)&&t.includes(L9r.Filename.pnpEsmLoader)?this.executeRegular("integration"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("integration"):this.executeProxy("integration")}};var V9r=Nt(Io(),1);var NKe=class extends ote{static paths=[["test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(V9r.Filename.pnpCjs)&&t.includes(V9r.Filename.pnpEsmLoader)?this.executeRegular("unit"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("unit"):this.executeProxy("unit")}};var V4i=Nt(mn(),1),W4i=Nt(mn(),1),W9r=Nt(Io(),1);var Ovt=class extends ote{static paths=[["test"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(W9r.Filename.pnpCjs)&&t.includes(W9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeRegular(){let t=await V4i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await W4i.Project.find(t,this.context.cwd),n=await z8.initialize(this.context.cwd);try{return(await n.general(this.target??r.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).some(o=>o.includes("# fail ")?parseInt(o.split("# fail ")[1],2)>0:!1)?1:0}catch(a){return console.error(a),1}}};var O4i={commands:[RKe,NKe,Ovt]};var K9r={};Uf(K9r,{default:()=>sJi});var J4i=Nt(mn(),1),U4i=Nt(mn(),1),K4i=Nt(mn(),1),M9r=Nt(Io(),1),H9r=Nt(mn(),1),Cle=Nt(jC(),1);var P4i=Nt(dl(),1),M4i=Nt(mn(),1),H4i=Nt(mn(),1),P9r=Nt(Io(),1),Y4i=Nt(mn(),1),Q4i=Nt(mn(),1),X4i=Nt(Io(),1);Rl();var mle=class extends P4i.BaseCommand{static usage=Ub.Usage({description:"Update tools",details:"\n Update tools such as `tsconfig`, `typescript` version, `@atls/code-runtime` version\n ",examples:[["Update tsconfig","yarn tools tsconfig"],["Update runtime","yarn tools runtime"],["Update typescript version","yarn tools typescript"],["Update all","yarn tools sync"]]});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(P9r.Filename.pnpCjs)&&t.includes(P9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(t=["tools","sync"]){let r=await M4i.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await H4i.Project.find(r,this.context.cwd),a=await X4i.xfs.mktempPromise(),{code:o}=await Q4i.execUtils.pipevp("yarn",t,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await Y4i.scriptUtils.makeScriptEnv({binFolder:a,project:n,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){return 0}};var Pvt=class extends mle{static paths=[["tools","sync","typescript"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(M9r.Filename.pnpCjs)&&t.includes(M9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","typescript"])}async executeRegular(){let t=await J4i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await U4i.Project.find(t,this.context.cwd),n=(await import("@atls/code-runtime/package.json",{with:{type:"json"}})).default;return(await K4i.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Tools sync typescript version",async()=>{if(r.topLevelWorkspace.manifest.raw.devDependencies){let l=H9r.structUtils.parseIdent("typescript"),A=Array.from(r.topLevelWorkspace.manifest.devDependencies.values()).find(f=>f.scope===l.scope&&f.name===l.name);A||(A=H9r.structUtils.makeDescriptor(l,n.dependencies.typescript)),Cle.default.valid(Cle.default.coerce(A.range))&&Cle.default.valid(Cle.default.coerce(n.dependencies.typescript))&&(Cle.default.eq(Cle.default.coerce(A.range)||"",Cle.default.coerce(n.dependencies.typescript)||"")||(A.range=n.dependencies.typescript)),r.topLevelWorkspace.manifest.devDependencies.set(A.identHash,A),await r.persist()}})})).exitCode()}};var j4i=Nt(mn(),1),z4i=Nt(mn(),1),q4i=Nt(mn(),1),Y9r=Nt(Io(),1),DKe=Nt(Io(),1),Q9r=Nt(Io(),1),X9r=Nt(DTr(),1);import tFc from"node:assert";var rFc=(e,t,r)=>{let n=e.slice();return t.forEach((a,o)=>{typeof n[o]>"u"?n[o]=r?.cloneUnlessOtherwiseSpecified(a,r):r?.isMergeableObject(a)?n[o]=(0,X9r.default)(e[o],a,r):e.includes(a)||n.push(a)}),n},nFc=e=>e.endsWith("/**/*")?e:!e.endsWith("/**/*")&&e.endsWith("/*")?e.replace("/*","/**/*"):e,Mvt=class extends mle{static paths=[["tools","sync","tsconfig"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Y9r.Filename.pnpCjs)&&t.includes(Y9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","tsconfig"])}async executeRegular(){let t=await j4i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await z4i.Project.find(t,this.context.cwd);return(await q4i.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Tools sync typescript config",async()=>{let o=Q9r.ppath.join(r.topLevelWorkspace.cwd,"tsconfig.json"),l=await DKe.xfs.existsPromise(o)?await DKe.xfs.readJsonPromise(o):{compilerOptions:{}};await DKe.xfs.writeFilePromise(Q9r.ppath.join(r.topLevelWorkspace.cwd,"project.types.d.ts"),`/// -`);let A=(0,X9r.default)(l,{compilerOptions:Z6.compilerOptions},{arrayMerge:rFc}),f=(r.topLevelWorkspace.manifest.raw.workspaces||[]).map(nFc),I={...A,include:Array.from(new Set(["project.types.d.ts",...A.include,...f]))};try{tFc.deepEqual(l,I)}catch{await DKe.xfs.writeJsonPromise(o,I)}})})).exitCode()}};var iFc=[["tools","sync","typescript"],["tools","sync","tsconfig"],["install"]],Hvt=class extends mle{static paths=[["tools","sync"]];async executeRegular(){for(let t of iFc){let r=await this.cli.run(t);if(r!==0)return r}return 0}};var $4i=Nt(mn(),1),J9r=Nt(mn(),1),eJi=Nt(mn(),1),tJi=Nt(Io(),1),rJi=async(e,t)=>{let{project:r}=await $4i.Project.find(e,t.cwd),n=await tJi.xfs.mktempPromise(),a=await eJi.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0});await J9r.execUtils.pipevp("yarn",["tools","sync"],{cwd:t.cwd,stdin:t.stdin,stdout:t.stdout,stderr:t.stderr,end:J9r.execUtils.EndStrategy.ErrorCode,env:a})};var uke=Nt(Io(),1),_le=Nt(Io(),1);import{spawnSync as sFc}from"node:child_process";var U9r=e=>`${e}`,oFc=()=>U9r("yarn commit staged"),nJi=e=>sFc("git",e,{encoding:"utf-8"}),iJi=async e=>{if(process.env.GITHUB_ACTIONS){console.log("AFTER INSTALL HOOK: Execution in GitHub Action");return}if(process.env.IMAGE_PACK||nJi(["--version"]).error?.code==="ENOENT")return;let r=uke.ppath.join(e.cwd,".config/husky"),n=uke.ppath.join(r,"_");await _le.xfs.existsPromise(n)&&await _le.xfs.removePromise(r),await _le.xfs.existsPromise(r)||await _le.xfs.mkdirPromise(r,{recursive:!0}),await _le.xfs.writeFilePromise(uke.ppath.join(r,"commit-msg"),U9r("yarn commit message lint"),{mode:493}),await _le.xfs.writeFilePromise(uke.ppath.join(r,"pre-commit"),oFc(),{mode:493}),await _le.xfs.writeFilePromise(uke.ppath.join(r,"prepare-commit-msg"),U9r("yarn commit message $@"),{mode:493});let{error:a}=nJi(["config","core.hooksPath",r]);if(a)throw a};var sJi={hooks:{afterAllInstalled:iJi,afterYarnVersionSet:rJi},commands:[Hvt,Pvt,Mvt]};var eVr={};Uf(eVr,{TypeCheckCommand:()=>kKe,default:()=>uJi});var oJi=Nt(dl(),1),j9r=Nt(mn(),1),z9r=Nt(mn(),1),q9r=Nt(Io(),1),aJi=Nt(mn(),1),cJi=Nt(mn(),1),$9r=Nt(Io(),1),Yvt=Nt(Io(),1);Rl();var lJi=Nt(ul(),1);var Qvt=Nt(Wc(),1),kKe=class extends oJi.BaseCommand{static paths=[["typecheck"]];args=vA.Rest({required:0});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(q9r.Filename.pnpCjs)&&t.includes(q9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await j9r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await z9r.Project.find(t,this.context.cwd),n=await Yvt.xfs.mktempPromise(),{code:a}=await cJi.execUtils.pipevp("yarn",["typecheck",...this.args],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await aJi.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return a}async executeRegular(){let t=await j9r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await z9r.Project.find(t,this.context.cwd),n=await yDe.initialize(r.cwd),{clear:a}=(0,lJi.render)((0,Qvt.jsx)(R1t,{typescript:n}));try{let o=await n.check(await this.getIncludes(r));return o.forEach(l=>{ZE((0,Qvt.jsx)(T1t,{...l})).split(` -`).forEach(A=>{console.log(A)})}),o.length===0?0:1}catch(o){return ZE((0,Qvt.jsx)(Ok,{error:o})).split(` -`).forEach(l=>{console.error(l)}),1}finally{a()}}async getIncludes(t){if(this.args.length>0)return this.args;if(await Yvt.xfs.existsPromise($9r.ppath.join(t.cwd,"tsconfig.json"))){let r=await Yvt.xfs.readJsonPromise($9r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var uJi={commands:[kKe]};var tVr={};Uf(tVr,{WorkspacesChangedForeachCommand:()=>xKe,WorkspacesChangedListCommand:()=>GKe,default:()=>EJi});var gJi=Nt(dl(),1),AJi=Nt(dl(),1),dJi=Nt(mn(),1),pJi=Nt(mn(),1),fJi=Nt(mn(),1),IJi=Nt(mn(),1);Rl();var xKe=class extends gJi.BaseCommand{static paths=[["workspaces","changed","foreach"]];exclude=vA.String("--exclude","");verbose=vA.Boolean("-v,--verbose",!1);parallel=vA.Boolean("-p,--parallel",!1);workTree=vA.Boolean("-W,--worktree",!0);all=vA.Boolean("-A,--all",!1);recursive=vA.Boolean("-R,--recursive",!1);since=vA.String("--since","");interlaced=vA.Boolean("-i,--interlaced",!1);publicOnly=vA.Boolean("--no-private",!1);topological=vA.Boolean("-t,--topological",!1);topologicalDev=vA.Boolean("--topological-dev",!1);jobs=vA.String("-j,--jobs");commandName=vA.String();args=vA.Proxy();async execute(){let t=await dJi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await pJi.Project.find(t,this.context.cwd);if(!n)throw new AJi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await dP(r),o=RTe(r,a);if(!o.length)return(await fJi.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{f.reportInfo(null,"No workspaces changed")})).exitCode();let l=["workspaces","foreach"];return o.forEach(A=>{l.push("--include"),l.push(IJi.structUtils.stringifyIdent(A.anchoredLocator))}),this.all?l.push("--all"):this.since.length>0?(l.push("--since"),l.push(this.since)):this.workTree&&l.push("--worktree"),this.exclude&&(l.push("--exclude"),l.push(this.exclude)),this.verbose&&l.push("--verbose"),this.parallel&&l.push("--parallel"),this.interlaced&&l.push("--interlaced"),this.publicOnly&&l.push("--no-private"),this.topological&&l.push("--topological"),this.topologicalDev&&l.push("--topological-dev"),this.jobs&&l.push("--jobs"),this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var hJi=Nt(dl(),1),mJi=Nt(dl(),1),CJi=Nt(mn(),1),_Ji=Nt(mn(),1),yJi=Nt(mn(),1),bJi=Nt(mn(),1);Rl();var GKe=class extends hJi.BaseCommand{static paths=[["workspaces","changed","list"]];json=vA.Boolean("--json",!1);async execute(){let t=await CJi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await _Ji.Project.find(t,this.context.cwd);if(!n)throw new mJi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await yJi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await dP(r),A=RTe(r,l);for(let f of A)o.reportInfo(null,f.relativeCwd),o.reportJson({name:f.manifest.name?bJi.structUtils.stringifyIdent(f.manifest.name):null,location:f.relativeCwd})})).exitCode()}};var EJi={commands:[xKe,GKe]};var mVr={};Uf(mVr,{UiIconsGenerateCommand:()=>VKe,default:()=>VUi});var xUi=Nt(dl(),1),pVr=Nt(mn(),1),fVr=Nt(mn(),1),IVr=Nt(Io(),1),GUi=Nt(mn(),1),FUi=Nt(mn(),1),ZUi=Nt(Io(),1);Rl();import{join as kUi}from"node:path";import{relative as NZc}from"node:path";var LUi=Nt(ul(),1);var FKe=Nt(ul(),1),DJi=Nt(Ec(),1),kJi=Nt(Ec(),1);var SJi=Nt(Ec(),1),vJi=Nt(Ec(),1),wJi=Nt(Wc(),1),BJi=({icons:e})=>{let[t,r]=(0,vJi.useState)(0);return(0,SJi.useEffect)(()=>{let n=()=>{r(33)},a=()=>{r(66)},o=()=>{r(100)};return e.on("read:end",n),e.on("transform:end",a),e.on("save:end",o),()=>{e.off("read:end",n),e.off("transform:end",a),e.off("save:end",o)}},[e,r]),(0,wJi.jsx)(tH,{value:t})};var Xvt=Nt(ul(),1),Jvt=Nt(ul(),1),TJi=Nt(Ec(),1),RJi=Nt(Ec(),1);var ate=Nt(Wc(),1),NJi=({icons:e})=>{let[t,r]=(0,RJi.useState)("Initilization...");return(0,TJi.useEffect)(()=>{let n=()=>{r("Reading files...")},a=()=>{r("Transforming files...")},o=()=>{r("Saving files...")};return e.on("read:start",n),e.on("transform:start",a),e.on("save:start",o),()=>{e.off("read:start",n),e.off("transform:start",a),e.off("save:start",o)}},[e,r]),(0,ate.jsxs)(Xvt.Box,{flexDirection:"row",width:"100%",children:[(0,ate.jsxs)(Xvt.Box,{flexGrow:1,children:[(0,ate.jsx)(GG,{color:"cyan",children:"Icons:"}),(0,ate.jsx)(Jvt.Text,{children:" "}),(0,ate.jsx)(Jvt.Text,{color:"white",children:t})]}),(0,ate.jsx)(Xvt.Box,{flexDirection:"row",children:(0,ate.jsx)(Jvt.Text,{color:"green",children:GI.tick})})]})};var yle=Nt(Wc(),1),xJi=({icons:e})=>{let[t,r]=(0,DJi.useState)(!1);return(0,kJi.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("save:end",n),()=>{e.off("save:end",n)}},[r]),t?null:(0,yle.jsx)(FKe.Box,{position:"relative",height:7,children:(0,yle.jsxs)(FKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,yle.jsx)(FKe.Box,{children:(0,yle.jsx)(NJi,{icons:e})}),(0,yle.jsx)(FKe.Box,{marginTop:1,marginBottom:1,children:(0,yle.jsx)(BJi,{icons:e})})]})})};import EZc from"node:events";import{access as SZc}from"node:fs/promises";import{mkdtemp as vZc}from"node:fs/promises";import{readFile as BZc}from"node:fs/promises";import{readdir as wZc}from"node:fs/promises";import{writeFile as RUi}from"node:fs/promises";import{mkdir as TZc}from"node:fs/promises";import{tmpdir as RZc}from"node:os";import{join as cte}from"node:path";import{basename as NUi}from"node:path";import{extname as DUi}from"node:path";var aFc=/[\p{Lu}]/u,cFc=/[\p{Ll}]/u,GJi=/^[\p{Lu}](?![\p{Lu}])/gu,LJi=/([\p{Alpha}\p{N}_]|$)/u,rVr=/[_.\- ]+/,lFc=new RegExp("^"+rVr.source),FJi=new RegExp(rVr.source+LJi.source,"gu"),ZJi=new RegExp("\\d+"+LJi.source,"gu"),uFc=(e,t,r,n)=>{let a=!1,o=!1,l=!1,A=!1;for(let f=0;f2?e[f-3]==="-":!0,a&&aFc.test(I)?(e=e.slice(0,f)+"-"+e.slice(f),a=!1,l=o,o=!0,f++):o&&l&&cFc.test(I)&&(!A||n)?(e=e.slice(0,f-1)+"-"+e.slice(f-1),l=o,o=!1,a=!0):(a=t(I)===I&&r(I)!==I,l=o,o=r(I)===I&&t(I)!==I)}return e},gFc=(e,t)=>(GJi.lastIndex=0,e.replaceAll(GJi,r=>t(r))),AFc=(e,t)=>(FJi.lastIndex=0,ZJi.lastIndex=0,e.replaceAll(ZJi,(r,n,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(FJi,(r,n)=>t(n)));function nVr(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),n=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?rVr.test(e)?"":t.pascalCase?n(e):r(e):(e!==r(e)&&(e=uFc(e,r,n,t.preserveConsecutiveUppercase)),e=e.replace(lFc,""),e=t.preserveConsecutiveUppercase?gFc(e,r):r(e),t.pascalCase&&(e=n(e.charAt(0))+e.slice(1)),AFc(e,n))}var TUi=Nt(wUi(),1);import{writeFile as _Zc}from"node:fs/promises";import{mkdtemp as yZc}from"node:fs/promises";import{tmpdir as bZc}from"node:os";import{join as oBt}from"node:path";var aBt=class{constructor(t,r,n){this.loaders=t;this.cwd=r;this.target=n}async build(){let t=new TUi.default;return await this.applyCommon(t),await this.applyModules(t),t.toConfig()}async applyCommon(t){t.mode("development").bail(!1).target("async-node").optimization.minimize(!1),t.entry("replacements").add(oBt(this.cwd,"replacements")),t.entry("template").add(oBt(this.cwd,"template")),t.output.path(this.target).filename("[name].mjs"),t.output.library({type:"module"}),t.output.chunkFormat("module"),t.output.module(!0),t.resolve.extensions.add(".tsx").add(".ts").add(".js"),t.resolve.extensionAlias.set(".js",[".js",".ts"]).set(".jsx",[".jsx",".tsx"]).set(".cjs",[".cjs",".cts"]).set(".mjs",[".mjs",".mts"]),t.externalsType("import"),t.externalsPresets({node:!0}),t.experiments({outputModule:!0})}async applyModules(t){let r=oBt(await yZc(oBt(bZc(),"tools-icons-")),"tsconfig.json");await _Zc(r,'{"include":["**/*"]}'),t.module.rule("ts").test(/.tsx?$/).use("ts").loader(this.loaders.tsLoader).options({transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...Z6.compilerOptions,sourceMap:!0},context:this.cwd,configFile:r})}};var cBt=class e extends EZc{constructor(r,n,a,o){super();this.svgr=r;this.webpack=n;this.loaders=a;this.cwd=o}static async initialize(r){let{transform:n,jsx:a}=await import("@atls/code-runtime/svgr"),{webpack:o,tsLoaderPath:l}=await import("@atls/code-runtime/webpack");return new e({transform:n,jsx:a},o,{tsLoader:l},r)}async generate(r={}){await this.save(await this.transform(await this.read(cte(this.cwd,"icons")),r))}async compileReplacementsAndTemplate(){let r=await vZc(cte(RZc(),"tools-icons-")),n=this.webpack(await new aBt(this.loaders,this.cwd,r).build());return await new Promise((a,o)=>{n.run(l=>{l&&o(l),a([])})}),{replacements:(await import(cte(r,"replacements.mjs"))).default,template:(await import(cte(r,"template.mjs"))).default}}async read(r){this.emit("read:start");let n=await wZc(r),a=await Promise.all(n.filter(o=>o.endsWith(".svg")).map(async o=>({source:await BZc(cte(r,o),"utf8"),component:nVr(NUi(o,DUi(o)),{pascalCase:!0}),name:NUi(o,DUi(o)),path:cte(r,o),file:o})));return this.emit("read:end"),a}async transform(r,n){this.emit("transform:start");let{replacements:a,template:o}=await this.compileReplacementsAndTemplate(),l=await Promise.all(r.map(async A=>{let f=await this.svgr.transform(A.source,{...n,icon:!0,template:o,typescript:!0,expandProps:!0,replaceAttrValues:a[`${A.component}Icon`]??{}},{componentName:`${A.component}Icon`,caller:{name:"@atls/code-icons",defaultPlugins:[this.svgr.jsx]}});return{...A,output:f}}));return this.emit("transform:end"),l}async save(r){this.emit("save:start");let n=cte(this.cwd,"src");try{await SZc(n)}catch{await TZc(n,{recursive:!0})}await Promise.all(r.map(async a=>RUi(cte(n,`${a.name}.icon.tsx`),a.output))),await RUi(cte(n,"index.ts"),r.map(a=>`export * from './${a.name}.icon.jsx'`).join(` -`)),this.emit("save:end")}};var hVr=Nt(Wc(),1),VKe=class extends xUi.BaseCommand{static paths=[["ui","icons","generate"]];native=vA.Boolean("-n, --native",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(IVr.Filename.pnpCjs)&&t.includes(IVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await pVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await fVr.Project.find(t,this.context.cwd),n=await ZUi.xfs.mktempPromise(),a=[];this.native&&a.push("--native");let{code:o}=await GUi.execUtils.pipevp("yarn",["ui","icons","generate",...a],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await FUi.scriptUtils.makeScriptEnv({binFolder:n,project:r,ignoreCorepack:!0}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await pVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await fVr.Project.find(t,this.context.cwd),n=await cBt.initialize(this.context.cwd),{clear:a}=(0,LUi.render)((0,hVr.jsx)(xJi,{icons:n}));try{await n.generate({native:this.native});let o=(await Z$("*.tsx",{cwd:kUi(this.context.cwd,"src")})).map(l=>kUi(NZc(r.cwd,this.context.cwd),"src",l));return await this.cli.run(["format",...o],{cwd:r.cwd}),await this.cli.run(["lint","--fix",...o],{cwd:r.cwd}),0}catch(o){return o instanceof Error?ZE((0,hVr.jsx)(Ok,{error:o})).split(` -`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var VUi={commands:[VKe]};var DHr={};Uf(DHr,{default:()=>Kts});var Xts=Nt(dl(),1),Jts=Nt(mn(),1),Uts=Nt(mn(),1);Rl();var WUi=(e,t)=>({stdout:e.context.stdout,configuration:t});var Hts=Nt(Io(),1),Yts=Nt(Io(),1);var Lts=Nt(Hxe(),1),Vts=Nt(Fts(),1);var Zts=e=>{let t=e.path;switch(e.kind){case"error":console.error(`ERROR! ${t} ${e.description==="alreadyExist"?"already exists":"does not exist"}.`);break;case"update":console.debug(`UPDATE ${t} (${e.content.length} bytes)`);break;case"create":console.debug(`CREATE ${t} (${e.content.length} bytes)`);break;case"delete":console.debug(`DELETE ${t}`);break;case"rename":console.debug(`RENAME ${t} => ${e.to}`);break}};var Wts=async(e,t,r)=>{let o=!0,l=new Vts.NodeWorkflow(process.cwd(),{force:!1,dryRun:!1,resolvePaths:[process.cwd(),import.meta.dirname],packageManager:"yarn"});l.reporter.subscribe(A=>{o=!1,Zts(A)});try{return await l.execute({collection:r,schematic:e,options:t,allowPrivate:!0,debug:!0}).toPromise(),o&&console.info("Nothing to be done."),0}catch(A){return A instanceof Lts.UnsuccessfulWorkflowExecution?console.debug("The Schematic workflow failed. See above."):A instanceof Error?console.debug(`An error occured: -${A.stack}`):console.debug(`Error: ${A instanceof Error?A.message:A}`),1}};var NHr=Nt(Io(),1);import{mkdir as eal}from"node:fs/promises";var $ol="dmFyIF9fY3JlYXRlID0gT2JqZWN0LmNyZWF0ZTsKdmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTsKdmFyIF9fZ2V0T3duUHJvcERlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOwp2YXIgX19nZXRPd25Qcm9wTmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczsKdmFyIF9fZ2V0UHJvdG9PZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKdmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7CnZhciBfX2NvbW1vbkpTID0gKGNiLCBtb2QpID0+IGZ1bmN0aW9uIF9fcmVxdWlyZSgpIHsKICByZXR1cm4gbW9kIHx8ICgwLCBjYltfX2dldE93blByb3BOYW1lcyhjYilbMF1dKSgobW9kID0geyBleHBvcnRzOiB7fSB9KS5leHBvcnRzLCBtb2QpLCBtb2QuZXhwb3J0czsKfTsKdmFyIF9fZXhwb3J0ID0gKHRhcmdldCwgYWxsKSA9PiB7CiAgZm9yICh2YXIgbmFtZSBpbiBhbGwpCiAgICBfX2RlZlByb3AodGFyZ2V0LCBuYW1lLCB7IGdldDogYWxsW25hbWVdLCBlbnVtZXJhYmxlOiB0cnVlIH0pOwp9Owp2YXIgX19jb3B5UHJvcHMgPSAodG8sIGZyb20sIGV4Y2VwdCwgZGVzYykgPT4gewogIGlmIChmcm9tICYmIHR5cGVvZiBmcm9tID09PSAib2JqZWN0IiB8fCB0eXBlb2YgZnJvbSA9PT0gImZ1bmN0aW9uIikgewogICAgZm9yIChsZXQga2V5IG9mIF9fZ2V0T3duUHJvcE5hbWVzKGZyb20pKQogICAgICBpZiAoIV9faGFzT3duUHJvcC5jYWxsKHRvLCBrZXkpICYmIGtleSAhPT0gZXhjZXB0KQogICAgICAgIF9fZGVmUHJvcCh0bywga2V5LCB7IGdldDogKCkgPT4gZnJvbVtrZXldLCBlbnVtZXJhYmxlOiAhKGRlc2MgPSBfX2dldE93blByb3BEZXNjKGZyb20sIGtleSkpIHx8IGRlc2MuZW51bWVyYWJsZSB9KTsKICB9CiAgcmV0dXJuIHRvOwp9Owp2YXIgX190b0VTTSA9IChtb2QsIGlzTm9kZU1vZGUsIHRhcmdldCkgPT4gKHRhcmdldCA9IG1vZCAhPSBudWxsID8gX19jcmVhdGUoX19nZXRQcm90b09mKG1vZCkpIDoge30sIF9fY29weVByb3BzKAogIC8vIElmIHRoZSBpbXBvcnRlciBpcyBpbiBub2RlIGNvbXBhdGliaWxpdHkgbW9kZSBvciB0aGlzIGlzIG5vdCBhbiBFU00KICAvLyBmaWxlIHRoYXQgaGFzIGJlZW4gY29udmVydGVkIHRvIGEgQ29tbW9uSlMgZmlsZSB1c2luZyBhIEJhYmVsLQogIC8vIGNvbXBhdGlibGUgdHJhbnNmb3JtIChpLmUuICJfX2VzTW9kdWxlIiBoYXMgbm90IGJlZW4gc2V0KSwgdGhlbiBzZXQKICAvLyAiZGVmYXVsdCIgdG8gdGhlIENvbW1vbkpTICJtb2R1bGUuZXhwb3J0cyIgZm9yIG5vZGUgY29tcGF0aWJpbGl0eS4KICBpc05vZGVNb2RlIHx8ICFtb2QgfHwgIW1vZC5fX2VzTW9kdWxlID8gX19kZWZQcm9wKHRhcmdldCwgImRlZmF1bHQiLCB7IHZhbHVlOiBtb2QsIGVudW1lcmFibGU6IHRydWUgfSkgOiB0YXJnZXQsCiAgbW9kCikpOwp2YXIgX190b0NvbW1vbkpTID0gKG1vZCkgPT4gX19jb3B5UHJvcHMoX19kZWZQcm9wKHt9LCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSksIG1vZCk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNKc29uT2JqZWN0ID0gaXNKc29uT2JqZWN0OwogICAgZXhwb3J0czIuaXNKc29uQXJyYXkgPSBpc0pzb25BcnJheTsKICAgIGZ1bmN0aW9uIGlzSnNvbk9iamVjdCh2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSnNvbkFycmF5KHZhbHVlKSB7CiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3V0aWxpdHkuanMKdmFyIHJlcXVpcmVfdXRpbGl0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdXRpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0VHlwZXNPZlNjaGVtYSA9IGdldFR5cGVzT2ZTY2hlbWE7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciBhbGxUeXBlcyA9IFsic3RyaW5nIiwgImludGVnZXIiLCAibnVtYmVyIiwgIm9iamVjdCIsICJhcnJheSIsICJib29sZWFuIiwgIm51bGwiXTsKICAgIGZ1bmN0aW9uIGdldFR5cGVzT2ZTY2hlbWEoc2NoZW1hMikgewogICAgICBpZiAoIXNjaGVtYTIpIHsKICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBuZXcgU2V0KGFsbFR5cGVzKTsKICAgICAgfQogICAgICBsZXQgcG90ZW50aWFsczsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnR5cGUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFtzY2hlbWEyLnR5cGVdKTsKICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIudHlwZSkpIHsKICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChzY2hlbWEyLnR5cGUpOwogICAgICB9IGVsc2UgaWYgKCgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShzY2hlbWEyLmVudW0pKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCB2IG9mIHNjaGVtYTIuZW51bSkgewogICAgICAgICAgc3dpdGNoICh0eXBlb2YgdikgewogICAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICBjYXNlICJib29sZWFuIjoKICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCh0eXBlb2Ygdik7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodikpIHsKICAgICAgICAgICAgICAgIHBvdGVudGlhbHMuYWRkKCJhcnJheSIpOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAodiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm51bGwiKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm9iamVjdCIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoYWxsVHlwZXMpOwogICAgICB9CiAgICAgIGlmICgoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIubm90KSkgewogICAgICAgIGNvbnN0IG5vdFR5cGVzID0gZ2V0VHlwZXNPZlNjaGVtYShzY2hlbWEyLm5vdCk7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLnBvdGVudGlhbHNdLmZpbHRlcigocCkgPT4gIW5vdFR5cGVzLmhhcyhwKSkpOwogICAgICB9CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIuYWxsT2YpKSB7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbGxPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChbLi4udHlwZXNdLmZpbHRlcigodCkgPT4gcG90ZW50aWFscy5oYXModCkpKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5vbmVPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5vbmVPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5hbnlPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbnlPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIucHJvcGVydGllcykgewogICAgICAgIHBvdGVudGlhbHMuYWRkKCJvYmplY3QiKTsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zKSB7CiAgICAgICAgcG90ZW50aWFscy5hZGQoImFycmF5Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvdGVudGlhbHM7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzCnZhciByZXF1aXJlX3RyYW5zZm9ybXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3RyYW5zZm9ybXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFkZFVuZGVmaW5lZERlZmF1bHRzID0gYWRkVW5kZWZpbmVkRGVmYXVsdHM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciB1dGlsaXR5XzEgPSByZXF1aXJlX3V0aWxpdHkoKTsKICAgIGZ1bmN0aW9uIGFkZFVuZGVmaW5lZERlZmF1bHRzKHZhbHVlLCBfcG9pbnRlciwgc2NoZW1hMikgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIiB8fCBzY2hlbWEyID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgdmFsdWUgPz89IHNjaGVtYTIuZGVmYXVsdDsKICAgICAgY29uc3QgdHlwZXMgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHNjaGVtYTIpOwogICAgICBpZiAodHlwZXMuc2l6ZSA9PT0gMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBsZXQgdHlwZTI7CiAgICAgIGlmICh0eXBlcy5zaXplID09PSAxKSB7CiAgICAgICAgdHlwZTIgPSBBcnJheS5mcm9tKHR5cGVzKVswXTsKICAgICAgfSBlbHNlIGlmICh0eXBlcy5zaXplID09PSAyICYmIHR5cGVzLmhhcygiYXJyYXkiKSAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYTIucHJvcGVydGllcyAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAib2JqZWN0IjsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zICYmIHR5cGVzLmhhcygiYXJyYXkiKSkgewogICAgICAgIHR5cGUyID0gImFycmF5IjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlID09IHZvaWQgMCA/IFtdIDogdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAib2JqZWN0IikgewogICAgICAgIGxldCBuZXdWYWx1ZTsKICAgICAgICBpZiAodmFsdWUgPT0gdm9pZCAwKSB7CiAgICAgICAgICBuZXdWYWx1ZSA9IHt9OwogICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIG5ld1ZhbHVlID0gdmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIucHJvcGVydGllcykpIHsKICAgICAgICAgIHJldHVybiBuZXdWYWx1ZTsKICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbcHJvcE5hbWUsIHNjaGVtYU9iamVjdF0gb2YgT2JqZWN0LmVudHJpZXMoc2NoZW1hMi5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgaWYgKHByb3BOYW1lID09PSAiJHNjaGVtYSIgfHwgISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoc2NoZW1hT2JqZWN0KSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZhbHVlMiA9IG5ld1ZhbHVlW3Byb3BOYW1lXTsKICAgICAgICAgIGlmICh2YWx1ZTIgPT09IHZvaWQgMCkgewogICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBzY2hlbWFPYmplY3QuZGVmYXVsdDsKICAgICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BlcnR5U2NoZW1hcyA9IHNjaGVtYU9iamVjdC5vbmVPZiB8fCBzY2hlbWFPYmplY3QuYW55T2Y7CiAgICAgICAgICAgIGNvbnN0IGFsbFByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyh2YWx1ZTIpOwogICAgICAgICAgICBjb25zdCBhZGp1c3RlZFNjaGVtYSA9ICgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShwcm9wZXJ0eVNjaGVtYXMpICYmIHByb3BlcnR5U2NoZW1hcy5maW5kKChzKSA9PiB7CiAgICAgICAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnN0IHNjaGVtYVR5cGUgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHMpOwogICAgICAgICAgICAgIGlmIChzY2hlbWFUeXBlLnNpemUgPT09IDEgJiYgc2NoZW1hVHlwZS5oYXMoIm9iamVjdCIpICYmICgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkocy5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5rZXlzKHMucHJvcGVydGllcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gYWxsUHJvcGVydGllcy5ldmVyeSgoa2V5KSA9PiBwcm9wZXJ0aWVzLmluY2x1ZGVzKGtleSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpZiAoYWRqdXN0ZWRTY2hlbWEgJiYgKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KShhZGp1c3RlZFNjaGVtYSkpIHsKICAgICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBhZGRVbmRlZmluZWREZWZhdWx0cyh2YWx1ZTIsIF9wb2ludGVyLCBhZGp1c3RlZFNjaGVtYSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld1ZhbHVlOwogICAgICB9CiAgICAgIHJldHVybiB2YWx1ZTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcG9pbnRlci5qcwp2YXIgcmVxdWlyZV9wb2ludGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9wb2ludGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWlsZEpzb25Qb2ludGVyID0gYnVpbGRKc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLmpvaW5Kc29uUG9pbnRlciA9IGpvaW5Kc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLnBhcnNlSnNvblBvaW50ZXIgPSBwYXJzZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gYnVpbGRKc29uUG9pbnRlcihmcmFnbWVudHMpIHsKICAgICAgcmV0dXJuICIvIiArIGZyYWdtZW50cy5tYXAoKGYpID0+IHsKICAgICAgICByZXR1cm4gZi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgICB9KS5qb2luKCIvIik7CiAgICB9CiAgICBmdW5jdGlvbiBqb2luSnNvblBvaW50ZXIocm9vdCwgLi4ub3RoZXJzKSB7CiAgICAgIGlmIChyb290ID09ICIvIikgewogICAgICAgIHJldHVybiBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJvb3QgKyBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZUpzb25Qb2ludGVyKHBvaW50ZXIpIHsKICAgICAgaWYgKHBvaW50ZXIgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICAgIGlmIChwb2ludGVyLmNoYXJBdCgwKSAhPT0gIi8iKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJSZWxhdGl2ZSBwb2ludGVyOiAiICsgcG9pbnRlcik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvaW50ZXIuc3Vic3RyaW5nKDEpLnNwbGl0KC9cLy8pLm1hcCgoc3RyMikgPT4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+IikpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMKdmFyIHJlcXVpcmVfY29kZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBleHBvcnRzMi5zYWZlU3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuYWRkQ29kZUFyZyA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5uaWwgPSBleHBvcnRzMi5fQ29kZSA9IGV4cG9ydHMyLk5hbWUgPSBleHBvcnRzMi5JREVOVElGSUVSID0gZXhwb3J0czIuX0NvZGVPck5hbWUgPSB2b2lkIDA7CiAgICB2YXIgX0NvZGVPck5hbWUgPSBjbGFzcyB7CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGVPck5hbWUgPSBfQ29kZU9yTmFtZTsKICAgIGV4cG9ydHMyLklERU5USUZJRVIgPSAvXlthLXokX11bYS16JF8wLTldKiQvaTsKICAgIHZhciBOYW1lID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIGlmICghZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KHMpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiBuYW1lIG11c3QgYmUgYSB2YWxpZCBpZGVudGlmaWVyIik7CiAgICAgICAgdGhpcy5zdHIgPSBzOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLnN0cjsKICAgICAgfQogICAgICBlbXB0eVN0cigpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB7IFt0aGlzLnN0cl06IDEgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5hbWUgPSBOYW1lOwogICAgdmFyIF9Db2RlID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvZGUpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuX2l0ZW1zID0gdHlwZW9mIGNvZGUgPT09ICJzdHJpbmciID8gW2NvZGVdIDogY29kZTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdHI7CiAgICAgIH0KICAgICAgZW1wdHlTdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDEpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuX2l0ZW1zWzBdOwogICAgICAgIHJldHVybiBpdGVtID09PSAiIiB8fCBpdGVtID09PSAnIiInOwogICAgICB9CiAgICAgIGdldCBzdHIoKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLl9zdHIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMuX3N0ciA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgocywgYykgPT4gYCR7c30ke2N9YCwgIiIpOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX25hbWVzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLl9uYW1lcyA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgobmFtZXMsIGMpID0+IHsKICAgICAgICAgIGlmIChjIGluc3RhbmNlb2YgTmFtZSkKICAgICAgICAgICAgbmFtZXNbYy5zdHJdID0gKG5hbWVzW2Muc3RyXSB8fCAwKSArIDE7CiAgICAgICAgICByZXR1cm4gbmFtZXM7CiAgICAgICAgfSwge30pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGUgPSBfQ29kZTsKICAgIGV4cG9ydHMyLm5pbCA9IG5ldyBfQ29kZSgiIik7CiAgICBmdW5jdGlvbiBfKHN0cnMsIC4uLmFyZ3MpIHsKICAgICAgY29uc3QgY29kZSA9IFtzdHJzWzBdXTsKICAgICAgbGV0IGkgPSAwOwogICAgICB3aGlsZSAoaSA8IGFyZ3MubGVuZ3RoKSB7CiAgICAgICAgYWRkQ29kZUFyZyhjb2RlLCBhcmdzW2ldKTsKICAgICAgICBjb2RlLnB1c2goc3Ryc1srK2ldKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IF9Db2RlKGNvZGUpOwogICAgfQogICAgZXhwb3J0czIuXyA9IF87CiAgICB2YXIgcGx1cyA9IG5ldyBfQ29kZSgiKyIpOwogICAgZnVuY3Rpb24gc3RyMihzdHJzLCAuLi5hcmdzKSB7CiAgICAgIGNvbnN0IGV4cHIgPSBbc2FmZVN0cmluZ2lmeShzdHJzWzBdKV07CiAgICAgIGxldCBpID0gMDsKICAgICAgd2hpbGUgKGkgPCBhcmdzLmxlbmd0aCkgewogICAgICAgIGV4cHIucHVzaChwbHVzKTsKICAgICAgICBhZGRDb2RlQXJnKGV4cHIsIGFyZ3NbaV0pOwogICAgICAgIGV4cHIucHVzaChwbHVzLCBzYWZlU3RyaW5naWZ5KHN0cnNbKytpXSkpOwogICAgICB9CiAgICAgIG9wdGltaXplKGV4cHIpOwogICAgICByZXR1cm4gbmV3IF9Db2RlKGV4cHIpOwogICAgfQogICAgZXhwb3J0czIuc3RyID0gc3RyMjsKICAgIGZ1bmN0aW9uIGFkZENvZGVBcmcoY29kZSwgYXJnKSB7CiAgICAgIGlmIChhcmcgaW5zdGFuY2VvZiBfQ29kZSkKICAgICAgICBjb2RlLnB1c2goLi4uYXJnLl9pdGVtcyk7CiAgICAgIGVsc2UgaWYgKGFyZyBpbnN0YW5jZW9mIE5hbWUpCiAgICAgICAgY29kZS5wdXNoKGFyZyk7CiAgICAgIGVsc2UKICAgICAgICBjb2RlLnB1c2goaW50ZXJwb2xhdGUoYXJnKSk7CiAgICB9CiAgICBleHBvcnRzMi5hZGRDb2RlQXJnID0gYWRkQ29kZUFyZzsKICAgIGZ1bmN0aW9uIG9wdGltaXplKGV4cHIpIHsKICAgICAgbGV0IGkgPSAxOwogICAgICB3aGlsZSAoaSA8IGV4cHIubGVuZ3RoIC0gMSkgewogICAgICAgIGlmIChleHByW2ldID09PSBwbHVzKSB7CiAgICAgICAgICBjb25zdCByZXMgPSBtZXJnZUV4cHJJdGVtcyhleHByW2kgLSAxXSwgZXhwcltpICsgMV0pOwogICAgICAgICAgaWYgKHJlcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGV4cHIuc3BsaWNlKGkgLSAxLCAzLCByZXMpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGV4cHJbaSsrXSA9ICIrIjsKICAgICAgICB9CiAgICAgICAgaSsrOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZUV4cHJJdGVtcyhhLCBiKSB7CiAgICAgIGlmIChiID09PSAnIiInKQogICAgICAgIHJldHVybiBhOwogICAgICBpZiAoYSA9PT0gJyIiJykKICAgICAgICByZXR1cm4gYjsKICAgICAgaWYgKHR5cGVvZiBhID09ICJzdHJpbmciKSB7CiAgICAgICAgaWYgKGIgaW5zdGFuY2VvZiBOYW1lIHx8IGFbYS5sZW5ndGggLSAxXSAhPT0gJyInKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0eXBlb2YgYiAhPSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiBgJHthLnNsaWNlKDAsIC0xKX0ke2J9ImA7CiAgICAgICAgaWYgKGJbMF0gPT09ICciJykKICAgICAgICAgIHJldHVybiBhLnNsaWNlKDAsIC0xKSArIGIuc2xpY2UoMSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgYiA9PSAic3RyaW5nIiAmJiBiWzBdID09PSAnIicgJiYgIShhIGluc3RhbmNlb2YgTmFtZSkpCiAgICAgICAgcmV0dXJuIGAiJHthfSR7Yi5zbGljZSgxKX1gOwogICAgICByZXR1cm47CiAgICB9CiAgICBmdW5jdGlvbiBzdHJDb25jYXQoYzEsIGMyKSB7CiAgICAgIHJldHVybiBjMi5lbXB0eVN0cigpID8gYzEgOiBjMS5lbXB0eVN0cigpID8gYzIgOiBzdHIyYCR7YzF9JHtjMn1gOwogICAgfQogICAgZXhwb3J0czIuc3RyQ29uY2F0ID0gc3RyQ29uY2F0OwogICAgZnVuY3Rpb24gaW50ZXJwb2xhdGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gIm51bWJlciIgfHwgdHlwZW9mIHggPT0gImJvb2xlYW4iIHx8IHggPT09IG51bGwgPyB4IDogc2FmZVN0cmluZ2lmeShBcnJheS5pc0FycmF5KHgpID8geC5qb2luKCIsIikgOiB4KTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmluZ2lmeSh4KSB7CiAgICAgIHJldHVybiBuZXcgX0NvZGUoc2FmZVN0cmluZ2lmeSh4KSk7CiAgICB9CiAgICBleHBvcnRzMi5zdHJpbmdpZnkgPSBzdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBzYWZlU3RyaW5naWZ5KHgpIHsKICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHgpLnJlcGxhY2UoL1x1MjAyOC9nLCAiXFx1MjAyOCIpLnJlcGxhY2UoL1x1MjAyOS9nLCAiXFx1MjAyOSIpOwogICAgfQogICAgZXhwb3J0czIuc2FmZVN0cmluZ2lmeSA9IHNhZmVTdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBnZXRQcm9wZXJ0eShrZXkpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBrZXkgPT0gInN0cmluZyIgJiYgZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KGtleSkgPyBuZXcgX0NvZGUoYC4ke2tleX1gKSA6IF9gWyR7a2V5fV1gOwogICAgfQogICAgZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBnZXRQcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIGdldEVzbUV4cG9ydE5hbWUoa2V5KSB7CiAgICAgIGlmICh0eXBlb2Yga2V5ID09ICJzdHJpbmciICYmIGV4cG9ydHMyLklERU5USUZJRVIudGVzdChrZXkpKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfQ29kZShgJHtrZXl9YCk7CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBpbnZhbGlkIGV4cG9ydCBuYW1lOiAke2tleX0sIHVzZSBleHBsaWNpdCAkaWQgbmFtZSBtYXBwaW5nYCk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZ2V0RXNtRXhwb3J0TmFtZTsKICAgIGZ1bmN0aW9uIHJlZ2V4cENvZGUocngpIHsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShyeC50b1N0cmluZygpKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSByZWdleHBDb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL3Njb3BlLmpzCnZhciByZXF1aXJlX3Njb3BlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vc2NvcGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IGV4cG9ydHMyLlNjb3BlID0gZXhwb3J0czIudmFyS2luZHMgPSBleHBvcnRzMi5Vc2VkVmFsdWVTdGF0ZSA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBWYWx1ZUVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgQ29kZUdlbjogImNvZGUiIGZvciAke25hbWV9IG5vdCBkZWZpbmVkYCk7CiAgICAgICAgdGhpcy52YWx1ZSA9IG5hbWUudmFsdWU7CiAgICAgIH0KICAgIH07CiAgICB2YXIgVXNlZFZhbHVlU3RhdGU7CiAgICAoZnVuY3Rpb24oVXNlZFZhbHVlU3RhdGUyKSB7CiAgICAgIFVzZWRWYWx1ZVN0YXRlMltVc2VkVmFsdWVTdGF0ZTJbIlN0YXJ0ZWQiXSA9IDBdID0gIlN0YXJ0ZWQiOwogICAgICBVc2VkVmFsdWVTdGF0ZTJbVXNlZFZhbHVlU3RhdGUyWyJDb21wbGV0ZWQiXSA9IDFdID0gIkNvbXBsZXRlZCI7CiAgICB9KShVc2VkVmFsdWVTdGF0ZSB8fCAoZXhwb3J0czIuVXNlZFZhbHVlU3RhdGUgPSBVc2VkVmFsdWVTdGF0ZSA9IHt9KSk7CiAgICBleHBvcnRzMi52YXJLaW5kcyA9IHsKICAgICAgY29uc3Q6IG5ldyBjb2RlXzEuTmFtZSgiY29uc3QiKSwKICAgICAgbGV0OiBuZXcgY29kZV8xLk5hbWUoImxldCIpLAogICAgICB2YXI6IG5ldyBjb2RlXzEuTmFtZSgidmFyIikKICAgIH07CiAgICB2YXIgU2NvcGUgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKHsgcHJlZml4ZXMsIHBhcmVudCB9ID0ge30pIHsKICAgICAgICB0aGlzLl9uYW1lcyA9IHt9OwogICAgICAgIHRoaXMuX3ByZWZpeGVzID0gcHJlZml4ZXM7CiAgICAgICAgdGhpcy5fcGFyZW50ID0gcGFyZW50OwogICAgICB9CiAgICAgIHRvTmFtZShuYW1lT3JQcmVmaXgpIHsKICAgICAgICByZXR1cm4gbmFtZU9yUHJlZml4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBuYW1lT3JQcmVmaXggOiB0aGlzLm5hbWUobmFtZU9yUHJlZml4KTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgY29kZV8xLk5hbWUodGhpcy5fbmV3TmFtZShwcmVmaXgpKTsKICAgICAgfQogICAgICBfbmV3TmFtZShwcmVmaXgpIHsKICAgICAgICBjb25zdCBuZyA9IHRoaXMuX25hbWVzW3ByZWZpeF0gfHwgdGhpcy5fbmFtZUdyb3VwKHByZWZpeCk7CiAgICAgICAgcmV0dXJuIGAke3ByZWZpeH0ke25nLmluZGV4Kyt9YDsKICAgICAgfQogICAgICBfbmFtZUdyb3VwKHByZWZpeCkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgaWYgKCgoX2IgPSAoX2EgPSB0aGlzLl9wYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5fcHJlZml4ZXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5oYXMocHJlZml4KSkgfHwgdGhpcy5fcHJlZml4ZXMgJiYgIXRoaXMuX3ByZWZpeGVzLmhhcyhwcmVmaXgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IHByZWZpeCAiJHtwcmVmaXh9IiBpcyBub3QgYWxsb3dlZCBpbiB0aGlzIHNjb3BlYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9uYW1lc1twcmVmaXhdID0geyBwcmVmaXgsIGluZGV4OiAwIH07CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZSA9IFNjb3BlOwogICAgdmFyIFZhbHVlU2NvcGVOYW1lID0gY2xhc3MgZXh0ZW5kcyBjb2RlXzEuTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHByZWZpeCwgbmFtZVN0cikgewogICAgICAgIHN1cGVyKG5hbWVTdHIpOwogICAgICAgIHRoaXMucHJlZml4ID0gcHJlZml4OwogICAgICB9CiAgICAgIHNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5LCBpdGVtSW5kZXggfSkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLnNjb3BlUGF0aCA9ICgwLCBjb2RlXzEuXylgLiR7bmV3IGNvZGVfMS5OYW1lKHByb3BlcnR5KX1bJHtpdGVtSW5kZXh9XWA7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IFZhbHVlU2NvcGVOYW1lOwogICAgdmFyIGxpbmUgPSAoMCwgY29kZV8xLl8pYFxuYDsKICAgIHZhciBWYWx1ZVNjb3BlID0gY2xhc3MgZXh0ZW5kcyBTY29wZSB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMpIHsKICAgICAgICBzdXBlcihvcHRzKTsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9zY29wZSA9IG9wdHMuc2NvcGU7CiAgICAgICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBfbjogb3B0cy5saW5lcyA/IGxpbmUgOiBjb2RlXzEubmlsIH07CiAgICAgIH0KICAgICAgZ2V0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9zY29wZTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgVmFsdWVTY29wZU5hbWUocHJlZml4LCB0aGlzLl9uZXdOYW1lKHByZWZpeCkpOwogICAgICB9CiAgICAgIHZhbHVlKG5hbWVPclByZWZpeCwgdmFsdWUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHZhbHVlLnJlZiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiByZWYgbXVzdCBiZSBwYXNzZWQgaW4gdmFsdWUiKTsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBjb25zdCB7IHByZWZpeCB9ID0gbmFtZTsKICAgICAgICBjb25zdCB2YWx1ZUtleSA9IChfYSA9IHZhbHVlLmtleSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsdWUucmVmOwogICAgICAgIGxldCB2cyA9IHRoaXMuX3ZhbHVlc1twcmVmaXhdOwogICAgICAgIGlmICh2cykgewogICAgICAgICAgY29uc3QgX25hbWUgPSB2cy5nZXQodmFsdWVLZXkpOwogICAgICAgICAgaWYgKF9uYW1lKQogICAgICAgICAgICByZXR1cm4gX25hbWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZzID0gdGhpcy5fdmFsdWVzW3ByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIH0KICAgICAgICB2cy5zZXQodmFsdWVLZXksIG5hbWUpOwogICAgICAgIGNvbnN0IHMgPSB0aGlzLl9zY29wZVtwcmVmaXhdIHx8ICh0aGlzLl9zY29wZVtwcmVmaXhdID0gW10pOwogICAgICAgIGNvbnN0IGl0ZW1JbmRleCA9IHMubGVuZ3RoOwogICAgICAgIHNbaXRlbUluZGV4XSA9IHZhbHVlLnJlZjsKICAgICAgICBuYW1lLnNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5OiBwcmVmaXgsIGl0ZW1JbmRleCB9KTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICBnZXRWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgY29uc3QgdnMgPSB0aGlzLl92YWx1ZXNbcHJlZml4XTsKICAgICAgICBpZiAoIXZzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHJldHVybiB2cy5nZXQoa2V5T3JSZWYpOwogICAgICB9CiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUsIHZhbHVlcyA9IHRoaXMuX3ZhbHVlcykgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUuc2NvcGVQYXRoID09PSB2b2lkIDApCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogbmFtZSAiJHtuYW1lfSIgaGFzIG5vIHZhbHVlYCk7CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVfMS5fKWAke3Njb3BlTmFtZX0ke25hbWUuc2NvcGVQYXRofWA7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgc2NvcGVDb2RlKHZhbHVlcyA9IHRoaXMuX3ZhbHVlcywgdXNlZFZhbHVlcywgZ2V0Q29kZSkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUudmFsdWUgPT09IHZvaWQgMCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBuYW1lICIke25hbWV9IiBoYXMgbm8gdmFsdWVgKTsKICAgICAgICAgIHJldHVybiBuYW1lLnZhbHVlLmNvZGU7CiAgICAgICAgfSwgdXNlZFZhbHVlcywgZ2V0Q29kZSk7CiAgICAgIH0KICAgICAgX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIHZhbHVlQ29kZSwgdXNlZFZhbHVlcyA9IHt9LCBnZXRDb2RlKSB7CiAgICAgICAgbGV0IGNvZGUgPSBjb2RlXzEubmlsOwogICAgICAgIGZvciAoY29uc3QgcHJlZml4IGluIHZhbHVlcykgewogICAgICAgICAgY29uc3QgdnMgPSB2YWx1ZXNbcHJlZml4XTsKICAgICAgICAgIGlmICghdnMpCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgY29uc3QgbmFtZVNldCA9IHVzZWRWYWx1ZXNbcHJlZml4XSA9IHVzZWRWYWx1ZXNbcHJlZml4XSB8fCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgICAgdnMuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAobmFtZVNldC5oYXMobmFtZSkpCiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICBuYW1lU2V0LnNldChuYW1lLCBVc2VkVmFsdWVTdGF0ZS5TdGFydGVkKTsKICAgICAgICAgICAgbGV0IGMgPSB2YWx1ZUNvZGUobmFtZSk7CiAgICAgICAgICAgIGlmIChjKSB7CiAgICAgICAgICAgICAgY29uc3QgZGVmID0gdGhpcy5vcHRzLmVzNSA/IGV4cG9ydHMyLnZhcktpbmRzLnZhciA6IGV4cG9ydHMyLnZhcktpbmRzLmNvbnN0OwogICAgICAgICAgICAgIGNvZGUgPSAoMCwgY29kZV8xLl8pYCR7Y29kZX0ke2RlZn0gJHtuYW1lfSA9ICR7Y307JHt0aGlzLm9wdHMuX259YDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjID0gZ2V0Q29kZSA9PT0gbnVsbCB8fCBnZXRDb2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnZXRDb2RlKG5hbWUpKSB7CiAgICAgICAgICAgICAgY29kZSA9ICgwLCBjb2RlXzEuXylgJHtjb2RlfSR7Y30ke3RoaXMub3B0cy5fbn1gOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRocm93IG5ldyBWYWx1ZUVycm9yKG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5hbWVTZXQuc2V0KG5hbWUsIFVzZWRWYWx1ZVN0YXRlLkNvbXBsZXRlZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlID0gVmFsdWVTY29wZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9pbmRleC5qcwp2YXIgcmVxdWlyZV9jb2RlZ2VuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9yID0gZXhwb3J0czIuYW5kID0gZXhwb3J0czIubm90ID0gZXhwb3J0czIuQ29kZUdlbiA9IGV4cG9ydHMyLm9wZXJhdG9ycyA9IGV4cG9ydHMyLnZhcktpbmRzID0gZXhwb3J0czIuVmFsdWVTY29wZU5hbWUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlID0gZXhwb3J0czIuU2NvcGUgPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIucmVnZXhwQ29kZSA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLmdldFByb3BlcnR5ID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBzY29wZV8xID0gcmVxdWlyZV9zY29wZSgpOwogICAgdmFyIGNvZGVfMiA9IHJlcXVpcmVfY29kZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyQ29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnN0ckNvbmNhdDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdldFByb3BlcnR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLmdldFByb3BlcnR5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ2lmeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHJpbmdpZnk7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVnZXhwQ29kZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5yZWdleHBDb2RlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuTmFtZTsKICAgIH0gfSk7CiAgICB2YXIgc2NvcGVfMiA9IHJlcXVpcmVfc2NvcGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5TY29wZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWx1ZVNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZhbHVlU2NvcGVOYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ2YXJLaW5kcyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIudmFyS2luZHM7CiAgICB9IH0pOwogICAgZXhwb3J0czIub3BlcmF0b3JzID0gewogICAgICBHVDogbmV3IGNvZGVfMS5fQ29kZSgiPiIpLAogICAgICBHVEU6IG5ldyBjb2RlXzEuX0NvZGUoIj49IiksCiAgICAgIExUOiBuZXcgY29kZV8xLl9Db2RlKCI8IiksCiAgICAgIExURTogbmV3IGNvZGVfMS5fQ29kZSgiPD0iKSwKICAgICAgRVE6IG5ldyBjb2RlXzEuX0NvZGUoIj09PSIpLAogICAgICBORVE6IG5ldyBjb2RlXzEuX0NvZGUoIiE9PSIpLAogICAgICBOT1Q6IG5ldyBjb2RlXzEuX0NvZGUoIiEiKSwKICAgICAgT1I6IG5ldyBjb2RlXzEuX0NvZGUoInx8IiksCiAgICAgIEFORDogbmV3IGNvZGVfMS5fQ29kZSgiJiYiKSwKICAgICAgQUREOiBuZXcgY29kZV8xLl9Db2RlKCIrIikKICAgIH07CiAgICB2YXIgTm9kZSA9IGNsYXNzIHsKICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKF9uYW1lcywgX2NvbnN0YW50cykgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgdmFyIERlZiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKHZhcktpbmQsIG5hbWUsIHJocykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucmhzID0gcmhzOwogICAgICB9CiAgICAgIHJlbmRlcih7IGVzNSwgX24gfSkgewogICAgICAgIGNvbnN0IHZhcktpbmQgPSBlczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHRoaXMudmFyS2luZDsKICAgICAgICBjb25zdCByaHMgPSB0aGlzLnJocyA9PT0gdm9pZCAwID8gIiIgOiBgID0gJHt0aGlzLnJoc31gOwogICAgICAgIHJldHVybiBgJHt2YXJLaW5kfSAke3RoaXMubmFtZX0ke3Joc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghbmFtZXNbdGhpcy5uYW1lLnN0cl0pCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKHRoaXMucmhzKQogICAgICAgICAgdGhpcy5yaHMgPSBvcHRpbWl6ZUV4cHIodGhpcy5yaHMsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5yaHMgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyB0aGlzLnJocy5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5saHMgPSBsaHM7CiAgICAgICAgdGhpcy5yaHMgPSByaHM7CiAgICAgICAgdGhpcy5zaWRlRWZmZWN0cyA9IHNpZGVFZmZlY3RzOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5saHN9ID0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICh0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lICYmICFuYW1lc1t0aGlzLmxocy5zdHJdICYmICF0aGlzLnNpZGVFZmZlY3RzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMucmhzID0gb3B0aW1pemVFeHByKHRoaXMucmhzLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSB0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lID8ge30gOiB7IC4uLnRoaXMubGhzLm5hbWVzIH07CiAgICAgICAgcmV0dXJuIGFkZEV4cHJOYW1lcyhuYW1lcywgdGhpcy5yaHMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbk9wID0gY2xhc3MgZXh0ZW5kcyBBc3NpZ24gewogICAgICBjb25zdHJ1Y3RvcihsaHMsIG9wLCByaHMsIHNpZGVFZmZlY3RzKSB7CiAgICAgICAgc3VwZXIobGhzLCByaHMsIHNpZGVFZmZlY3RzKTsKICAgICAgICB0aGlzLm9wID0gb3A7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxoc30gJHt0aGlzLm9wfT0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICB9OwogICAgdmFyIExhYmVsID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IobGFiZWwpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubGFiZWwgPSBsYWJlbDsKICAgICAgICB0aGlzLm5hbWVzID0ge307CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxhYmVsfTpgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgQnJlYWsgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihsYWJlbCkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5sYWJlbCA9IGxhYmVsOwogICAgICAgIHRoaXMubmFtZXMgPSB7fTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmxhYmVsID8gYCAke3RoaXMubGFiZWx9YCA6ICIiOwogICAgICAgIHJldHVybiBgYnJlYWske2xhYmVsfTtgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgVGhyb3cgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihlcnJvcikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYHRocm93ICR7dGhpcy5lcnJvcn07YCArIF9uOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5lcnJvci5uYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBBbnlDb2RlID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IoY29kZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX07YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX1gID8gdGhpcyA6IHZvaWQgMDsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICB0aGlzLmNvZGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5jb2RlLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY29kZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZU9yTmFtZSA/IHRoaXMuY29kZS5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIFBhcmVudE5vZGUgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3Rvcihub2RlcyA9IFtdKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5vZGVzID0gbm9kZXM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5ub2Rlcy5yZWR1Y2UoKGNvZGUsIG4pID0+IGNvZGUgKyBuLnJlbmRlcihvcHRzKSwgIiIpOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV0ub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobikpCiAgICAgICAgICAgIG5vZGVzLnNwbGljZShpLCAxLCAuLi5uKTsKICAgICAgICAgIGVsc2UgaWYgKG4pCiAgICAgICAgICAgIG5vZGVzW2ldID0gbjsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV07CiAgICAgICAgICBpZiAobi5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIHN1YnRyYWN0TmFtZXMobmFtZXMsIG4ubmFtZXMpOwogICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLm5vZGVzLnJlZHVjZSgobmFtZXMsIG4pID0+IGFkZE5hbWVzKG5hbWVzLCBuLm5hbWVzKSwge30pOwogICAgICB9CiAgICB9OwogICAgdmFyIEJsb2NrTm9kZSA9IGNsYXNzIGV4dGVuZHMgUGFyZW50Tm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuICJ7IiArIG9wdHMuX24gKyBzdXBlci5yZW5kZXIob3B0cykgKyAifSIgKyBvcHRzLl9uOwogICAgICB9CiAgICB9OwogICAgdmFyIFJvb3QgPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgfTsKICAgIHZhciBFbHNlID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgfTsKICAgIEVsc2Uua2luZCA9ICJlbHNlIjsKICAgIHZhciBJZiA9IGNsYXNzIF9JZiBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvbmRpdGlvbiwgbm9kZXMpIHsKICAgICAgICBzdXBlcihub2Rlcyk7CiAgICAgICAgdGhpcy5jb25kaXRpb24gPSBjb25kaXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9IGBpZigke3RoaXMuY29uZGl0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmVsc2UpCiAgICAgICAgICBjb2RlICs9ICJlbHNlICIgKyB0aGlzLmVsc2UucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgc3VwZXIub3B0aW1pemVOb2RlcygpOwogICAgICAgIGNvbnN0IGNvbmQgPSB0aGlzLmNvbmRpdGlvbjsKICAgICAgICBpZiAoY29uZCA9PT0gdHJ1ZSkKICAgICAgICAgIHJldHVybiB0aGlzLm5vZGVzOwogICAgICAgIGxldCBlID0gdGhpcy5lbHNlOwogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBjb25zdCBucyA9IGUub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgZSA9IHRoaXMuZWxzZSA9IEFycmF5LmlzQXJyYXkobnMpID8gbmV3IEVsc2UobnMpIDogbnM7CiAgICAgICAgfQogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBpZiAoY29uZCA9PT0gZmFsc2UpCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgX0lmID8gZSA6IGUubm9kZXM7CiAgICAgICAgICBpZiAodGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgICAgcmV0dXJuIG5ldyBfSWYobm90KGNvbmQpLCBlIGluc3RhbmNlb2YgX0lmID8gW2VdIDogZS5ub2Rlcyk7CiAgICAgICAgfQogICAgICAgIGlmIChjb25kID09PSBmYWxzZSB8fCAhdGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLmVsc2UgPSAoX2EgPSB0aGlzLmVsc2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIGlmICghKHN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgfHwgdGhpcy5lbHNlKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLmNvbmRpdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLmNvbmRpdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgYWRkRXhwck5hbWVzKG5hbWVzLCB0aGlzLmNvbmRpdGlvbik7CiAgICAgICAgaWYgKHRoaXMuZWxzZSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmVsc2UubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIElmLmtpbmQgPSAiaWYiOwogICAgdmFyIEZvciA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgIH07CiAgICBGb3Iua2luZCA9ICJmb3IiOwogICAgdmFyIEZvckxvb3AgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGl0ZXJhdGlvbikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5pdGVyYXRpb24gPSBpdGVyYXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMuaXRlcmF0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLml0ZXJhdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLml0ZXJhdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYXRpb24ubmFtZXMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvclJhbmdlID0gY2xhc3MgZXh0ZW5kcyBGb3IgewogICAgICBjb25zdHJ1Y3Rvcih2YXJLaW5kLCBuYW1lLCBmcm9tLCB0bykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuZnJvbSA9IGZyb207CiAgICAgICAgdGhpcy50byA9IHRvOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgY29uc3QgdmFyS2luZCA9IG9wdHMuZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiB0aGlzLnZhcktpbmQ7CiAgICAgICAgY29uc3QgeyBuYW1lLCBmcm9tLCB0byB9ID0gdGhpczsKICAgICAgICByZXR1cm4gYGZvcigke3ZhcktpbmR9ICR7bmFtZX09JHtmcm9tfTsgJHtuYW1lfTwke3RvfTsgJHtuYW1lfSsrKWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gYWRkRXhwck5hbWVzKHN1cGVyLm5hbWVzLCB0aGlzLmZyb20pOwogICAgICAgIHJldHVybiBhZGRFeHByTmFtZXMobmFtZXMsIHRoaXMudG8pOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvckl0ZXIgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGxvb3AsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxvb3AgPSBsb29wOwogICAgICAgIHRoaXMudmFyS2luZCA9IHZhcktpbmQ7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLml0ZXJhYmxlID0gaXRlcmFibGU7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMudmFyS2luZH0gJHt0aGlzLm5hbWV9ICR7dGhpcy5sb29wfSAke3RoaXMuaXRlcmFibGV9KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKCFzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMuaXRlcmFibGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5pdGVyYWJsZSwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYWJsZS5uYW1lcyk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRnVuYyA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgYXJncywgYXN5bmMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5hcmdzID0gYXJnczsKICAgICAgICB0aGlzLmFzeW5jID0gYXN5bmM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBjb25zdCBfYXN5bmMgPSB0aGlzLmFzeW5jID8gImFzeW5jICIgOiAiIjsKICAgICAgICByZXR1cm4gYCR7X2FzeW5jfWZ1bmN0aW9uICR7dGhpcy5uYW1lfSgke3RoaXMuYXJnc30pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIEZ1bmMua2luZCA9ICJmdW5jIjsKICAgIHZhciBSZXR1cm4gPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiAicmV0dXJuICIgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBSZXR1cm4ua2luZCA9ICJyZXR1cm4iOwogICAgdmFyIFRyeSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9ICJ0cnkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmNhdGNoKQogICAgICAgICAgY29kZSArPSB0aGlzLmNhdGNoLnJlbmRlcihvcHRzKTsKICAgICAgICBpZiAodGhpcy5maW5hbGx5KQogICAgICAgICAgY29kZSArPSB0aGlzLmZpbmFsbHkucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgKF9hID0gdGhpcy5jYXRjaCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAoX2IgPSB0aGlzLmZpbmFsbHkpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYSA9IHRoaXMuY2F0Y2gpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYiA9IHRoaXMuZmluYWxseSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgaWYgKHRoaXMuY2F0Y2gpCiAgICAgICAgICBhZGROYW1lcyhuYW1lcywgdGhpcy5jYXRjaC5uYW1lcyk7CiAgICAgICAgaWYgKHRoaXMuZmluYWxseSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmZpbmFsbHkubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBDYXRjaCA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IoZXJyb3IpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiBgY2F0Y2goJHt0aGlzLmVycm9yfSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgQ2F0Y2gua2luZCA9ICJjYXRjaCI7CiAgICB2YXIgRmluYWxseSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gImZpbmFsbHkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgRmluYWxseS5raW5kID0gImZpbmFsbHkiOwogICAgdmFyIENvZGVHZW4gPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGV4dFNjb3BlLCBvcHRzID0ge30pIHsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9ibG9ja1N0YXJ0cyA9IFtdOwogICAgICAgIHRoaXMuX2NvbnN0YW50cyA9IHt9OwogICAgICAgIHRoaXMub3B0cyA9IHsgLi4ub3B0cywgX246IG9wdHMubGluZXMgPyAiXG4iIDogIiIgfTsKICAgICAgICB0aGlzLl9leHRTY29wZSA9IGV4dFNjb3BlOwogICAgICAgIHRoaXMuX3Njb3BlID0gbmV3IHNjb3BlXzEuU2NvcGUoeyBwYXJlbnQ6IGV4dFNjb3BlIH0pOwogICAgICAgIHRoaXMuX25vZGVzID0gW25ldyBSb290KCldOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnJlbmRlcih0aGlzLm9wdHMpOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgdW5pcXVlIG5hbWUgaW4gdGhlIGludGVybmFsIHNjb3BlCiAgICAgIG5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Njb3BlLm5hbWUocHJlZml4KTsKICAgICAgfQogICAgICAvLyByZXNlcnZlcyB1bmlxdWUgbmFtZSBpbiB0aGUgZXh0ZXJuYWwgc2NvcGUKICAgICAgc2NvcGVOYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5uYW1lKHByZWZpeCk7CiAgICAgIH0KICAgICAgLy8gcmVzZXJ2ZXMgdW5pcXVlIG5hbWUgaW4gdGhlIGV4dGVybmFsIHNjb3BlIGFuZCBhc3NpZ25zIHZhbHVlIHRvIGl0CiAgICAgIHNjb3BlVmFsdWUocHJlZml4T3JOYW1lLCB2YWx1ZSkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9leHRTY29wZS52YWx1ZShwcmVmaXhPck5hbWUsIHZhbHVlKTsKICAgICAgICBjb25zdCB2cyA9IHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gfHwgKHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKTsKICAgICAgICB2cy5hZGQobmFtZSk7CiAgICAgICAgcmV0dXJuIG5hbWU7CiAgICAgIH0KICAgICAgZ2V0U2NvcGVWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLmdldFZhbHVlKHByZWZpeCwga2V5T3JSZWYpOwogICAgICB9CiAgICAgIC8vIHJldHVybiBjb2RlIHRoYXQgYXNzaWducyB2YWx1ZXMgaW4gdGhlIGV4dGVybmFsIHNjb3BlIHRvIHRoZSBuYW1lcyB0aGF0IGFyZSB1c2VkIGludGVybmFsbHkKICAgICAgLy8gKHNhbWUgbmFtZXMgdGhhdCB3ZXJlIHJldHVybmVkIGJ5IGdlbi5zY29wZU5hbWUgb3IgZ2VuLnNjb3BlVmFsdWUpCiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUuc2NvcGVSZWZzKHNjb3BlTmFtZSwgdGhpcy5fdmFsdWVzKTsKICAgICAgfQogICAgICBzY29wZUNvZGUoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLnNjb3BlQ29kZSh0aGlzLl92YWx1ZXMpOwogICAgICB9CiAgICAgIF9kZWYodmFyS2luZCwgbmFtZU9yUHJlZml4LCByaHMsIGNvbnN0YW50KSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIGlmIChyaHMgIT09IHZvaWQgMCAmJiBjb25zdGFudCkKICAgICAgICAgIHRoaXMuX2NvbnN0YW50c1tuYW1lLnN0cl0gPSByaHM7CiAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IERlZih2YXJLaW5kLCBuYW1lLCByaHMpKTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICAvLyBgY29uc3RgIGRlY2xhcmF0aW9uIChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgY29uc3QobmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWYoc2NvcGVfMS52YXJLaW5kcy5jb25zdCwgbmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCk7CiAgICAgIH0KICAgICAgLy8gYGxldGAgZGVjbGFyYXRpb24gd2l0aCBvcHRpb25hbCBhc3NpZ25tZW50IChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgbGV0KG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMubGV0LCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBgdmFyYCBkZWNsYXJhdGlvbiB3aXRoIG9wdGlvbmFsIGFzc2lnbm1lbnQKICAgICAgdmFyKG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMudmFyLCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBhc3NpZ25tZW50IGNvZGUKICAgICAgYXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykpOwogICAgICB9CiAgICAgIC8vIGArPWAgY29kZQogICAgICBhZGQobGhzLCByaHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IEFzc2lnbk9wKGxocywgZXhwb3J0czIub3BlcmF0b3JzLkFERCwgcmhzKSk7CiAgICAgIH0KICAgICAgLy8gYXBwZW5kcyBwYXNzZWQgU2FmZUV4cHIgdG8gY29kZSBvciBleGVjdXRlcyBCbG9jawogICAgICBjb2RlKGMpIHsKICAgICAgICBpZiAodHlwZW9mIGMgPT0gImZ1bmN0aW9uIikKICAgICAgICAgIGMoKTsKICAgICAgICBlbHNlIGlmIChjICE9PSBjb2RlXzEubmlsKQogICAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IEFueUNvZGUoYykpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgY29kZSBmb3Igb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSBwYXNzZWQgYXJndW1lbnQgbGlzdCBvZiBrZXktdmFsdWUgcGFpcnMKICAgICAgb2JqZWN0KC4uLmtleVZhbHVlcykgewogICAgICAgIGNvbnN0IGNvZGUgPSBbInsiXTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBrZXlWYWx1ZXMpIHsKICAgICAgICAgIGlmIChjb2RlLmxlbmd0aCA+IDEpCiAgICAgICAgICAgIGNvZGUucHVzaCgiLCIpOwogICAgICAgICAgY29kZS5wdXNoKGtleSk7CiAgICAgICAgICBpZiAoa2V5ICE9PSB2YWx1ZSB8fCB0aGlzLm9wdHMuZXM1KSB7CiAgICAgICAgICAgIGNvZGUucHVzaCgiOiIpOwogICAgICAgICAgICAoMCwgY29kZV8xLmFkZENvZGVBcmcpKGNvZGUsIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29kZS5wdXNoKCJ9Iik7CiAgICAgICAgcmV0dXJuIG5ldyBjb2RlXzEuX0NvZGUoY29kZSk7CiAgICAgIH0KICAgICAgLy8gYGlmYCBjbGF1c2UgKG9yIHN0YXRlbWVudCBpZiBgdGhlbkJvZHlgIGFuZCwgb3B0aW9uYWxseSwgYGVsc2VCb2R5YCBhcmUgcGFzc2VkKQogICAgICBpZihjb25kaXRpb24sIHRoZW5Cb2R5LCBlbHNlQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShuZXcgSWYoY29uZGl0aW9uKSk7CiAgICAgICAgaWYgKHRoZW5Cb2R5ICYmIGVsc2VCb2R5KSB7CiAgICAgICAgICB0aGlzLmNvZGUodGhlbkJvZHkpLmVsc2UoKS5jb2RlKGVsc2VCb2R5KS5lbmRJZigpOwogICAgICAgIH0gZWxzZSBpZiAodGhlbkJvZHkpIHsKICAgICAgICAgIHRoaXMuY29kZSh0aGVuQm9keSkuZW5kSWYoKTsKICAgICAgICB9IGVsc2UgaWYgKGVsc2VCb2R5KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJlbHNlIiBib2R5IHdpdGhvdXQgInRoZW4iIGJvZHknKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gYGVsc2UgaWZgIGNsYXVzZSAtIGludmFsaWQgd2l0aG91dCBgaWZgIG9yIGFmdGVyIGBlbHNlYCBjbGF1c2VzCiAgICAgIGVsc2VJZihjb25kaXRpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IElmKGNvbmRpdGlvbikpOwogICAgICB9CiAgICAgIC8vIGBlbHNlYCBjbGF1c2UgLSBvbmx5IHZhbGlkIGFmdGVyIGBpZmAgb3IgYGVsc2UgaWZgIGNsYXVzZXMKICAgICAgZWxzZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IEVsc2UoKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBpZmAgc3RhdGVtZW50IChuZWVkZWQgaWYgZ2VuLmlmIHdhcyB1c2VkIG9ubHkgd2l0aCBjb25kaXRpb24pCiAgICAgIGVuZElmKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoSWYsIEVsc2UpOwogICAgICB9CiAgICAgIF9mb3Iobm9kZSwgZm9yQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICBpZiAoZm9yQm9keSkKICAgICAgICAgIHRoaXMuY29kZShmb3JCb2R5KS5lbmRGb3IoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBhIGdlbmVyaWMgYGZvcmAgY2xhdXNlIChvciBzdGF0ZW1lbnQgaWYgYGZvckJvZHlgIGlzIHBhc3NlZCkKICAgICAgZm9yKGl0ZXJhdGlvbiwgZm9yQm9keSkgewogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckxvb3AoaXRlcmF0aW9uKSwgZm9yQm9keSk7CiAgICAgIH0KICAgICAgLy8gYGZvcmAgc3RhdGVtZW50IGZvciBhIHJhbmdlIG9mIHZhbHVlcwogICAgICBmb3JSYW5nZShuYW1lT3JQcmVmaXgsIGZyb20sIHRvLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5sZXQpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9yUmFuZ2UodmFyS2luZCwgbmFtZSwgZnJvbSwgdG8pLCAoKSA9PiBmb3JCb2R5KG5hbWUpKTsKICAgICAgfQogICAgICAvLyBgZm9yLW9mYCBzdGF0ZW1lbnQgKGluIGVzNSBtb2RlIHJlcGxhY2Ugd2l0aCBhIG5vcm1hbCBmb3IgbG9vcCkKICAgICAgZm9yT2YobmFtZU9yUHJlZml4LCBpdGVyYWJsZSwgZm9yQm9keSwgdmFyS2luZCA9IHNjb3BlXzEudmFyS2luZHMuY29uc3QpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgaWYgKHRoaXMub3B0cy5lczUpIHsKICAgICAgICAgIGNvbnN0IGFyciA9IGl0ZXJhYmxlIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBpdGVyYWJsZSA6IHRoaXMudmFyKCJfYXJyIiwgaXRlcmFibGUpOwogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yUmFuZ2UoIl9pIiwgMCwgKDAsIGNvZGVfMS5fKWAke2Fycn0ubGVuZ3RoYCwgKGkpID0+IHsKICAgICAgICAgICAgdGhpcy52YXIobmFtZSwgKDAsIGNvZGVfMS5fKWAke2Fycn1bJHtpfV1gKTsKICAgICAgICAgICAgZm9yQm9keShuYW1lKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JJdGVyKCJvZiIsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gYGZvci1pbmAgc3RhdGVtZW50LgogICAgICAvLyBXaXRoIG9wdGlvbiBgb3duUHJvcGVydGllc2AgcmVwbGFjZWQgd2l0aCBhIGBmb3Itb2ZgIGxvb3AgZm9yIG9iamVjdCBrZXlzCiAgICAgIGZvckluKG5hbWVPclByZWZpeCwgb2JqLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5jb25zdCkgewogICAgICAgIGlmICh0aGlzLm9wdHMub3duUHJvcGVydGllcykgewogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yT2YobmFtZU9yUHJlZml4LCAoMCwgY29kZV8xLl8pYE9iamVjdC5rZXlzKCR7b2JqfSlgLCBmb3JCb2R5KTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckl0ZXIoImluIiwgdmFyS2luZCwgbmFtZSwgb2JqKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBmb3JgIGxvb3AKICAgICAgZW5kRm9yKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRm9yKTsKICAgICAgfQogICAgICAvLyBgbGFiZWxgIHN0YXRlbWVudAogICAgICBsYWJlbChsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgTGFiZWwobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgYnJlYWtgIHN0YXRlbWVudAogICAgICBicmVhayhsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQnJlYWsobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgcmV0dXJuYCBzdGF0ZW1lbnQKICAgICAgcmV0dXJuKHZhbHVlKSB7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBSZXR1cm4oKTsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobm9kZSk7CiAgICAgICAgdGhpcy5jb2RlKHZhbHVlKTsKICAgICAgICBpZiAobm9kZS5ub2Rlcy5sZW5ndGggIT09IDEpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJyZXR1cm4iIHNob3VsZCBoYXZlIG9uZSBub2RlJyk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShSZXR1cm4pOwogICAgICB9CiAgICAgIC8vIGB0cnlgIHN0YXRlbWVudAogICAgICB0cnkodHJ5Qm9keSwgY2F0Y2hDb2RlLCBmaW5hbGx5Q29kZSkgewogICAgICAgIGlmICghY2F0Y2hDb2RlICYmICFmaW5hbGx5Q29kZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogInRyeSIgd2l0aG91dCAiY2F0Y2giIGFuZCAiZmluYWxseSInKTsKICAgICAgICBjb25zdCBub2RlID0gbmV3IFRyeSgpOwogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICB0aGlzLmNvZGUodHJ5Qm9keSk7CiAgICAgICAgaWYgKGNhdGNoQ29kZSkgewogICAgICAgICAgY29uc3QgZXJyb3IgPSB0aGlzLm5hbWUoImUiKTsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5jYXRjaCA9IG5ldyBDYXRjaChlcnJvcik7CiAgICAgICAgICBjYXRjaENvZGUoZXJyb3IpOwogICAgICAgIH0KICAgICAgICBpZiAoZmluYWxseUNvZGUpIHsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5maW5hbGx5ID0gbmV3IEZpbmFsbHkoKTsKICAgICAgICAgIHRoaXMuY29kZShmaW5hbGx5Q29kZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoQ2F0Y2gsIEZpbmFsbHkpOwogICAgICB9CiAgICAgIC8vIGB0aHJvd2Agc3RhdGVtZW50CiAgICAgIHRocm93KGVycm9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBUaHJvdyhlcnJvcikpOwogICAgICB9CiAgICAgIC8vIHN0YXJ0IHNlbGYtYmFsYW5jaW5nIGJsb2NrCiAgICAgIGJsb2NrKGJvZHksIG5vZGVDb3VudCkgewogICAgICAgIHRoaXMuX2Jsb2NrU3RhcnRzLnB1c2godGhpcy5fbm9kZXMubGVuZ3RoKTsKICAgICAgICBpZiAoYm9keSkKICAgICAgICAgIHRoaXMuY29kZShib2R5KS5lbmRCbG9jayhub2RlQ291bnQpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGVuZCB0aGUgY3VycmVudCBzZWxmLWJhbGFuY2luZyBibG9jawogICAgICBlbmRCbG9jayhub2RlQ291bnQpIHsKICAgICAgICBjb25zdCBsZW4gPSB0aGlzLl9ibG9ja1N0YXJ0cy5wb3AoKTsKICAgICAgICBpZiAobGVuID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IG5vdCBpbiBzZWxmLWJhbGFuY2luZyBibG9jayIpOwogICAgICAgIGNvbnN0IHRvQ2xvc2UgPSB0aGlzLl9ub2Rlcy5sZW5ndGggLSBsZW47CiAgICAgICAgaWYgKHRvQ2xvc2UgPCAwIHx8IG5vZGVDb3VudCAhPT0gdm9pZCAwICYmIHRvQ2xvc2UgIT09IG5vZGVDb3VudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiB3cm9uZyBudW1iZXIgb2Ygbm9kZXM6ICR7dG9DbG9zZX0gdnMgJHtub2RlQ291bnR9IGV4cGVjdGVkYCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX25vZGVzLmxlbmd0aCA9IGxlbjsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBgZnVuY3Rpb25gIGhlYWRpbmcgKG9yIGRlZmluaXRpb24gaWYgZnVuY0JvZHkgaXMgcGFzc2VkKQogICAgICBmdW5jKG5hbWUsIGFyZ3MgPSBjb2RlXzEubmlsLCBhc3luYywgZnVuY0JvZHkpIHsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobmV3IEZ1bmMobmFtZSwgYXJncywgYXN5bmMpKTsKICAgICAgICBpZiAoZnVuY0JvZHkpCiAgICAgICAgICB0aGlzLmNvZGUoZnVuY0JvZHkpLmVuZEZ1bmMoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBlbmQgZnVuY3Rpb24gZGVmaW5pdGlvbgogICAgICBlbmRGdW5jKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRnVuYyk7CiAgICAgIH0KICAgICAgb3B0aW1pemUobiA9IDEpIHsKICAgICAgICB3aGlsZSAobi0tID4gMCkgewogICAgICAgICAgdGhpcy5fcm9vdC5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgICB0aGlzLl9yb290Lm9wdGltaXplTmFtZXModGhpcy5fcm9vdC5uYW1lcywgdGhpcy5fY29uc3RhbnRzKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2xlYWZOb2RlKG5vZGUpIHsKICAgICAgICB0aGlzLl9jdXJyTm9kZS5ub2Rlcy5wdXNoKG5vZGUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF9ibG9ja05vZGUobm9kZSkgewogICAgICAgIHRoaXMuX2N1cnJOb2RlLm5vZGVzLnB1c2gobm9kZSk7CiAgICAgICAgdGhpcy5fbm9kZXMucHVzaChub2RlKTsKICAgICAgfQogICAgICBfZW5kQmxvY2tOb2RlKE4xLCBOMikgewogICAgICAgIGNvbnN0IG4gPSB0aGlzLl9jdXJyTm9kZTsKICAgICAgICBpZiAobiBpbnN0YW5jZW9mIE4xIHx8IE4yICYmIG4gaW5zdGFuY2VvZiBOMikgewogICAgICAgICAgdGhpcy5fbm9kZXMucG9wKCk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBub3QgaW4gYmxvY2sgIiR7TjIgPyBgJHtOMS5raW5kfS8ke04yLmtpbmR9YCA6IE4xLmtpbmR9ImApOwogICAgICB9CiAgICAgIF9lbHNlTm9kZShub2RlKSB7CiAgICAgICAgY29uc3QgbiA9IHRoaXMuX2N1cnJOb2RlOwogICAgICAgIGlmICghKG4gaW5zdGFuY2VvZiBJZikpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogImVsc2UiIHdpdGhvdXQgImlmIicpOwogICAgICAgIH0KICAgICAgICB0aGlzLl9jdXJyTm9kZSA9IG4uZWxzZSA9IG5vZGU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IF9yb290KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ub2Rlc1swXTsKICAgICAgfQogICAgICBnZXQgX2N1cnJOb2RlKCkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgcmV0dXJuIG5zW25zLmxlbmd0aCAtIDFdOwogICAgICB9CiAgICAgIHNldCBfY3Vyck5vZGUobm9kZSkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgbnNbbnMubGVuZ3RoIC0gMV0gPSBub2RlOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29kZUdlbiA9IENvZGVHZW47CiAgICBmdW5jdGlvbiBhZGROYW1lcyhuYW1lcywgZnJvbSkgewogICAgICBmb3IgKGNvbnN0IG4gaW4gZnJvbSkKICAgICAgICBuYW1lc1tuXSA9IChuYW1lc1tuXSB8fCAwKSArIChmcm9tW25dIHx8IDApOwogICAgICByZXR1cm4gbmFtZXM7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFeHByTmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgcmV0dXJuIGZyb20gaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyBhZGROYW1lcyhuYW1lcywgZnJvbS5uYW1lcykgOiBuYW1lczsKICAgIH0KICAgIGZ1bmN0aW9uIG9wdGltaXplRXhwcihleHByLCBuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgIGlmIChleHByIGluc3RhbmNlb2YgY29kZV8xLk5hbWUpCiAgICAgICAgcmV0dXJuIHJlcGxhY2VOYW1lKGV4cHIpOwogICAgICBpZiAoIWNhbk9wdGltaXplKGV4cHIpKQogICAgICAgIHJldHVybiBleHByOwogICAgICByZXR1cm4gbmV3IGNvZGVfMS5fQ29kZShleHByLl9pdGVtcy5yZWR1Y2UoKGl0ZW1zLCBjKSA9PiB7CiAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSkKICAgICAgICAgIGMgPSByZXBsYWNlTmFtZShjKTsKICAgICAgICBpZiAoYyBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSkKICAgICAgICAgIGl0ZW1zLnB1c2goLi4uYy5faXRlbXMpOwogICAgICAgIGVsc2UKICAgICAgICAgIGl0ZW1zLnB1c2goYyk7CiAgICAgICAgcmV0dXJuIGl0ZW1zOwogICAgICB9LCBbXSkpOwogICAgICBmdW5jdGlvbiByZXBsYWNlTmFtZShuKSB7CiAgICAgICAgY29uc3QgYyA9IGNvbnN0YW50c1tuLnN0cl07CiAgICAgICAgaWYgKGMgPT09IHZvaWQgMCB8fCBuYW1lc1tuLnN0cl0gIT09IDEpCiAgICAgICAgICByZXR1cm4gbjsKICAgICAgICBkZWxldGUgbmFtZXNbbi5zdHJdOwogICAgICAgIHJldHVybiBjOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbk9wdGltaXplKGUpIHsKICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSAmJiBlLl9pdGVtcy5zb21lKChjKSA9PiBjIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgJiYgbmFtZXNbYy5zdHJdID09PSAxICYmIGNvbnN0YW50c1tjLnN0cl0gIT09IHZvaWQgMCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHN1YnRyYWN0TmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgZm9yIChjb25zdCBuIGluIGZyb20pCiAgICAgICAgbmFtZXNbbl0gPSAobmFtZXNbbl0gfHwgMCkgLSAoZnJvbVtuXSB8fCAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIG5vdCh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAiYm9vbGVhbiIgfHwgdHlwZW9mIHggPT0gIm51bWJlciIgfHwgeCA9PT0gbnVsbCA/ICF4IDogKDAsIGNvZGVfMS5fKWAhJHtwYXIoeCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLm5vdCA9IG5vdDsKICAgIHZhciBhbmRDb2RlID0gbWFwcGVuZChleHBvcnRzMi5vcGVyYXRvcnMuQU5EKTsKICAgIGZ1bmN0aW9uIGFuZCguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShhbmRDb2RlKTsKICAgIH0KICAgIGV4cG9ydHMyLmFuZCA9IGFuZDsKICAgIHZhciBvckNvZGUgPSBtYXBwZW5kKGV4cG9ydHMyLm9wZXJhdG9ycy5PUik7CiAgICBmdW5jdGlvbiBvciguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShvckNvZGUpOwogICAgfQogICAgZXhwb3J0czIub3IgPSBvcjsKICAgIGZ1bmN0aW9uIG1hcHBlbmQob3ApIHsKICAgICAgcmV0dXJuICh4LCB5KSA9PiB4ID09PSBjb2RlXzEubmlsID8geSA6IHkgPT09IGNvZGVfMS5uaWwgPyB4IDogKDAsIGNvZGVfMS5fKWAke3Bhcih4KX0gJHtvcH0gJHtwYXIoeSl9YDsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcih4KSB7CiAgICAgIHJldHVybiB4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyB4IDogKDAsIGNvZGVfMS5fKWAoJHt4fSlgOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzCnZhciByZXF1aXJlX3V0aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdXRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gZXhwb3J0czIuZ2V0RXJyb3JQYXRoID0gZXhwb3J0czIuVHlwZSA9IGV4cG9ydHMyLnVzZUZ1bmMgPSBleHBvcnRzMi5zZXRFdmFsdWF0ZWQgPSBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV4cG9ydHMyLm1lcmdlRXZhbHVhdGVkID0gZXhwb3J0czIuZWFjaEl0ZW0gPSBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBleHBvcnRzMi5lc2NhcGVGcmFnbWVudCA9IGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSBleHBvcnRzMi5zY2hlbWFSZWZPclZhbCA9IGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzQnV0UmVmID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXMgPSBleHBvcnRzMi5jaGVja1Vua25vd25SdWxlcyA9IGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gZXhwb3J0czIudG9IYXNoID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZSgpOwogICAgZnVuY3Rpb24gdG9IYXNoKGFycikgewogICAgICBjb25zdCBoYXNoID0ge307CiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnIpCiAgICAgICAgaGFzaFtpdGVtXSA9IHRydWU7CiAgICAgIHJldHVybiBoYXNoOwogICAgfQogICAgZXhwb3J0czIudG9IYXNoID0gdG9IYXNoOwogICAgZnVuY3Rpb24gYWx3YXlzVmFsaWRTY2hlbWEoaXQsIHNjaGVtYTIpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gc2NoZW1hMjsKICAgICAgaWYgKE9iamVjdC5rZXlzKHNjaGVtYTIpLmxlbmd0aCA9PT0gMCkKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgY2hlY2tVbmtub3duUnVsZXMoaXQsIHNjaGVtYTIpOwogICAgICByZXR1cm4gIXNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIGl0LnNlbGYuUlVMRVMuYWxsKTsKICAgIH0KICAgIGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gYWx3YXlzVmFsaWRTY2hlbWE7CiAgICBmdW5jdGlvbiBjaGVja1Vua25vd25SdWxlcyhpdCwgc2NoZW1hMiA9IGl0LnNjaGVtYSkgewogICAgICBjb25zdCB7IG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgaWYgKCFvcHRzLnN0cmljdFNjaGVtYSkKICAgICAgICByZXR1cm47CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgcnVsZXMgPSBzZWxmMi5SVUxFUy5rZXl3b3JkczsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmICghcnVsZXNba2V5XSkKICAgICAgICAgIGNoZWNrU3RyaWN0TW9kZShpdCwgYHVua25vd24ga2V5d29yZDogIiR7a2V5fSJgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tVbmtub3duUnVsZXMgPSBjaGVja1Vua25vd25SdWxlczsKICAgIGZ1bmN0aW9uIHNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIHJ1bGVzKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWEyOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKQogICAgICAgIGlmIChydWxlc1trZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzID0gc2NoZW1hSGFzUnVsZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFIYXNSdWxlc0J1dFJlZihzY2hlbWEyLCBSVUxFUykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybiAhc2NoZW1hMjsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikKICAgICAgICBpZiAoa2V5ICE9PSAiJHJlZiIgJiYgUlVMRVMuYWxsW2tleV0pCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBzY2hlbWFIYXNSdWxlc0J1dFJlZjsKICAgIGZ1bmN0aW9uIHNjaGVtYVJlZk9yVmFsKHsgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0sIHNjaGVtYTIsIGtleXdvcmQsICRkYXRhKSB7CiAgICAgIGlmICghJGRhdGEpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gIm51bWJlciIgfHwgdHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuIHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciKQogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWEyfWA7CiAgICAgIH0KICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gc2NoZW1hUmVmT3JWYWw7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUZyYWdtZW50KHN0cjIpIHsKICAgICAgcmV0dXJuIHVuZXNjYXBlSnNvblBvaW50ZXIoZGVjb2RlVVJJQ29tcG9uZW50KHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSB1bmVzY2FwZUZyYWdtZW50OwogICAgZnVuY3Rpb24gZXNjYXBlRnJhZ21lbnQoc3RyMikgewogICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGVzY2FwZUpzb25Qb2ludGVyKHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmVzY2FwZUZyYWdtZW50ID0gZXNjYXBlRnJhZ21lbnQ7CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUG9pbnRlcihzdHIyKSB7CiAgICAgIGlmICh0eXBlb2Ygc3RyMiA9PSAibnVtYmVyIikKICAgICAgICByZXR1cm4gYCR7c3RyMn1gOwogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgfQogICAgZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBlc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIHVuZXNjYXBlSnNvblBvaW50ZXIoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+Iik7CiAgICB9CiAgICBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gdW5lc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIGVhY2hJdGVtKHhzLCBmKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHhzKSkgewogICAgICAgIGZvciAoY29uc3QgeCBvZiB4cykKICAgICAgICAgIGYoeCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZih4cyk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVhY2hJdGVtID0gZWFjaEl0ZW07CiAgICBmdW5jdGlvbiBtYWtlTWVyZ2VFdmFsdWF0ZWQoeyBtZXJnZU5hbWVzLCBtZXJnZVRvTmFtZSwgbWVyZ2VWYWx1ZXMsIHJlc3VsdFRvTmFtZSB9KSB7CiAgICAgIHJldHVybiAoZ2VuLCBmcm9tLCB0bywgdG9OYW1lKSA9PiB7CiAgICAgICAgY29uc3QgcmVzID0gdG8gPT09IHZvaWQgMCA/IGZyb20gOiB0byBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKGZyb20gaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IG1lcmdlTmFtZXMoZ2VuLCBmcm9tLCB0bykgOiBtZXJnZVRvTmFtZShnZW4sIGZyb20sIHRvKSwgdG8pIDogZnJvbSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKG1lcmdlVG9OYW1lKGdlbiwgdG8sIGZyb20pLCBmcm9tKSA6IG1lcmdlVmFsdWVzKGZyb20sIHRvKTsKICAgICAgICByZXR1cm4gdG9OYW1lID09PSBjb2RlZ2VuXzEuTmFtZSAmJiAhKHJlcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSA/IHJlc3VsdFRvTmFtZShnZW4sIHJlcykgOiByZXM7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUV2YWx1YXRlZCA9IHsKICAgICAgcHJvcHM6IG1ha2VNZXJnZUV2YWx1YXRlZCh7CiAgICAgICAgbWVyZ2VOYW1lczogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlICYmICR7ZnJvbX0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZnJvbX0gPT09IHRydWVgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCB0cnVlKSwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke3RvfSB8fCB7fWApLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QuYXNzaWduKCR7dG99LCAke2Zyb219KWApKTsKICAgICAgICB9KSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gewogICAgICAgICAgaWYgKGZyb20gPT09IHRydWUpIHsKICAgICAgICAgICAgZ2VuLmFzc2lnbih0bywgdHJ1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7dG99IHx8IHt9YCk7CiAgICAgICAgICAgIHNldEV2YWx1YXRlZChnZW4sIHRvLCBmcm9tKTsKICAgICAgICAgIH0KICAgICAgICB9KSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IHsgLi4uZnJvbSwgLi4udG8gfSwKICAgICAgICByZXN1bHRUb05hbWU6IGV2YWx1YXRlZFByb3BzVG9OYW1lCiAgICAgIH0pLAogICAgICBpdGVtczogbWFrZU1lcmdlRXZhbHVhdGVkKHsKICAgICAgICBtZXJnZU5hbWVzOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWUgJiYgJHtmcm9tfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke2Zyb219ID09PSB0cnVlID8gdHJ1ZSA6ICR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgZnJvbSA9PT0gdHJ1ZSA/IHRydWUgOiAoMCwgY29kZWdlbl8xLl8pYCR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IE1hdGgubWF4KGZyb20sIHRvKSwKICAgICAgICByZXN1bHRUb05hbWU6IChnZW4sIGl0ZW1zKSA9PiBnZW4udmFyKCJpdGVtcyIsIGl0ZW1zKQogICAgICB9KQogICAgfTsKICAgIGZ1bmN0aW9uIGV2YWx1YXRlZFByb3BzVG9OYW1lKGdlbiwgcHMpIHsKICAgICAgaWYgKHBzID09PSB0cnVlKQogICAgICAgIHJldHVybiBnZW4udmFyKCJwcm9wcyIsIHRydWUpOwogICAgICBjb25zdCBwcm9wcyA9IGdlbi52YXIoInByb3BzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICBpZiAocHMgIT09IHZvaWQgMCkKICAgICAgICBzZXRFdmFsdWF0ZWQoZ2VuLCBwcm9wcywgcHMpOwogICAgICByZXR1cm4gcHJvcHM7CiAgICB9CiAgICBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV2YWx1YXRlZFByb3BzVG9OYW1lOwogICAgZnVuY3Rpb24gc2V0RXZhbHVhdGVkKGdlbiwgcHJvcHMsIHBzKSB7CiAgICAgIE9iamVjdC5rZXlzKHBzKS5mb3JFYWNoKChwKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wc30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHApfWAsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNldEV2YWx1YXRlZCA9IHNldEV2YWx1YXRlZDsKICAgIHZhciBzbmlwcGV0cyA9IHt9OwogICAgZnVuY3Rpb24gdXNlRnVuYyhnZW4sIGYpIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIHJlZjogZiwKICAgICAgICBjb2RlOiBzbmlwcGV0c1tmLmNvZGVdIHx8IChzbmlwcGV0c1tmLmNvZGVdID0gbmV3IGNvZGVfMS5fQ29kZShmLmNvZGUpKQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzZUZ1bmMgPSB1c2VGdW5jOwogICAgdmFyIFR5cGU7CiAgICAoZnVuY3Rpb24oVHlwZTIpIHsKICAgICAgVHlwZTJbVHlwZTJbIk51bSJdID0gMF0gPSAiTnVtIjsKICAgICAgVHlwZTJbVHlwZTJbIlN0ciJdID0gMV0gPSAiU3RyIjsKICAgIH0pKFR5cGUgfHwgKGV4cG9ydHMyLlR5cGUgPSBUeXBlID0ge30pKTsKICAgIGZ1bmN0aW9uIGdldEVycm9yUGF0aChkYXRhUHJvcCwgZGF0YVByb3BUeXBlLCBqc1Byb3BlcnR5U3ludGF4KSB7CiAgICAgIGlmIChkYXRhUHJvcCBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSB7CiAgICAgICAgY29uc3QgaXNOdW1iZXIgPSBkYXRhUHJvcFR5cGUgPT09IFR5cGUuTnVtOwogICAgICAgIHJldHVybiBqc1Byb3BlcnR5U3ludGF4ID8gaXNOdW1iZXIgPyAoMCwgY29kZWdlbl8xLl8pYCJbIiArICR7ZGF0YVByb3B9ICsgIl0iYCA6ICgwLCBjb2RlZ2VuXzEuXylgIlsnIiArICR7ZGF0YVByb3B9ICsgIiddImAgOiBpc051bWJlciA/ICgwLCBjb2RlZ2VuXzEuXylgIi8iICsgJHtkYXRhUHJvcH1gIDogKDAsIGNvZGVnZW5fMS5fKWAiLyIgKyAke2RhdGFQcm9wfS5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1xcLy9nLCAifjEiKWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGpzUHJvcGVydHlTeW50YXggPyAoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCkudG9TdHJpbmcoKSA6ICIvIiArIGVzY2FwZUpzb25Qb2ludGVyKGRhdGFQcm9wKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEVycm9yUGF0aCA9IGdldEVycm9yUGF0aDsKICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0TW9kZShpdCwgbXNnLCBtb2RlID0gaXQub3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgaWYgKCFtb2RlKQogICAgICAgIHJldHVybjsKICAgICAgbXNnID0gYHN0cmljdCBtb2RlOiAke21zZ31gOwogICAgICBpZiAobW9kZSA9PT0gdHJ1ZSkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTsKICAgICAgaXQuc2VsZi5sb2dnZXIud2Fybihtc2cpOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gY2hlY2tTdHJpY3RNb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcwp2YXIgcmVxdWlyZV9uYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzID0gewogICAgICAvLyB2YWxpZGF0aW9uIGZ1bmN0aW9uIGFyZ3VtZW50cwogICAgICBkYXRhOiBuZXcgY29kZWdlbl8xLk5hbWUoImRhdGEiKSwKICAgICAgLy8gZGF0YSBwYXNzZWQgdG8gdmFsaWRhdGlvbiBmdW5jdGlvbgogICAgICAvLyBhcmdzIHBhc3NlZCBmcm9tIHJlZmVyZW5jaW5nIHNjaGVtYQogICAgICB2YWxDeHQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgidmFsQ3h0IiksCiAgICAgIC8vIHZhbGlkYXRpb24vZGF0YSBjb250ZXh0IC0gc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LCBpdCBpcyBkZXN0cnVjdHVyZWQgdG8gdGhlIG5hbWVzIGJlbG93CiAgICAgIGluc3RhbmNlUGF0aDogbmV3IGNvZGVnZW5fMS5OYW1lKCJpbnN0YW5jZVBhdGgiKSwKICAgICAgcGFyZW50RGF0YTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhIiksCiAgICAgIHBhcmVudERhdGFQcm9wZXJ0eTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhUHJvcGVydHkiKSwKICAgICAgcm9vdERhdGE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicm9vdERhdGEiKSwKICAgICAgLy8gcm9vdCBkYXRhIC0gc2FtZSBhcyB0aGUgZGF0YSBwYXNzZWQgdG8gdGhlIGZpcnN0L3RvcCB2YWxpZGF0aW9uIGZ1bmN0aW9uCiAgICAgIGR5bmFtaWNBbmNob3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoImR5bmFtaWNBbmNob3JzIiksCiAgICAgIC8vIHVzZWQgdG8gc3VwcG9ydCByZWN1cnNpdmVSZWYgYW5kIGR5bmFtaWNSZWYKICAgICAgLy8gZnVuY3Rpb24gc2NvcGVkIHZhcmlhYmxlcwogICAgICB2RXJyb3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoInZFcnJvcnMiKSwKICAgICAgLy8gbnVsbCBvciBhcnJheSBvZiB2YWxpZGF0aW9uIGVycm9ycwogICAgICBlcnJvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZXJyb3JzIiksCiAgICAgIC8vIGNvdW50ZXIgb2YgdmFsaWRhdGlvbiBlcnJvcnMKICAgICAgdGhpczogbmV3IGNvZGVnZW5fMS5OYW1lKCJ0aGlzIiksCiAgICAgIC8vICJnbG9iYWxzIgogICAgICBzZWxmOiBuZXcgY29kZWdlbl8xLk5hbWUoInNlbGYiKSwKICAgICAgc2NvcGU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NvcGUiKSwKICAgICAgLy8gSlREIHNlcmlhbGl6ZS9wYXJzZSBuYW1lIGZvciBKU09OIHN0cmluZyBhbmQgcG9zaXRpb24KICAgICAganNvbjogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uIiksCiAgICAgIGpzb25Qb3M6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBvcyIpLAogICAgICBqc29uTGVuOiBuZXcgY29kZWdlbl8xLk5hbWUoImpzb25MZW4iKSwKICAgICAganNvblBhcnQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBhcnQiKQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBuYW1lczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvZXJyb3JzLmpzCnZhciByZXF1aXJlX2Vycm9ycyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9lcnJvcnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4cG9ydHMyLnJlc2V0RXJyb3JzQ291bnQgPSBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gZXhwb3J0czIucmVwb3J0RXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgZXhwb3J0czIua2V5d29yZEVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IHBhc3MgIiR7a2V5d29yZH0iIGtleXdvcmQgdmFsaWRhdGlvbmAKICAgIH07CiAgICBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCwgc2NoZW1hVHlwZSB9KSA9PiBzY2hlbWFUeXBlID8gKDAsIGNvZGVnZW5fMS5zdHIpYCIke2tleXdvcmR9IiBrZXl3b3JkIG11c3QgYmUgJHtzY2hlbWFUeXBlfSAoJGRhdGEpYCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAiJHtrZXl3b3JkfSIga2V5d29yZCBpcyBpbnZhbGlkICgkZGF0YSlgCiAgICB9OwogICAgZnVuY3Rpb24gcmVwb3J0RXJyb3IoY3h0LCBlcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciwgZXJyb3JQYXRocywgb3ZlcnJpZGVBbGxFcnJvcnMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBpZiAob3ZlcnJpZGVBbGxFcnJvcnMgIT09IG51bGwgJiYgb3ZlcnJpZGVBbGxFcnJvcnMgIT09IHZvaWQgMCA/IG92ZXJyaWRlQWxsRXJyb3JzIDogY29tcG9zaXRlUnVsZSB8fCBhbGxFcnJvcnMpIHsKICAgICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuRXJyb3JzKGl0LCAoMCwgY29kZWdlbl8xLl8pYFske2Vyck9ian1dYCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydEVycm9yID0gcmVwb3J0RXJyb3I7CiAgICBmdW5jdGlvbiByZXBvcnRFeHRyYUVycm9yKGN4dCwgZXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkRXJyb3IsIGVycm9yUGF0aHMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIGlmICghKGNvbXBvc2l0ZVJ1bGUgfHwgYWxsRXJyb3JzKSkgewogICAgICAgIHJldHVybkVycm9ycyhpdCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gcmVwb3J0RXh0cmFFcnJvcjsKICAgIGZ1bmN0aW9uIHJlc2V0RXJyb3JzQ291bnQoZ2VuLCBlcnJzQ291bnQpIHsKICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCBlcnJzQ291bnQpOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSAhPT0gbnVsbGAsICgpID0+IGdlbi5pZihlcnJzQ291bnQsICgpID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfS5sZW5ndGhgLCBlcnJzQ291bnQpLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCBudWxsKSkpOwogICAgfQogICAgZXhwb3J0czIucmVzZXRFcnJvcnNDb3VudCA9IHJlc2V0RXJyb3JzQ291bnQ7CiAgICBmdW5jdGlvbiBleHRlbmRFcnJvcnMoeyBnZW4sIGtleXdvcmQsIHNjaGVtYVZhbHVlLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0pIHsKICAgICAgaWYgKGVycnNDb3VudCA9PT0gdm9pZCAwKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5uYW1lKCJlcnIiKTsKICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgZXJyc0NvdW50LCBuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoaSkgPT4gewogICAgICAgIGdlbi5jb25zdChlcnIsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc31bJHtpfV1gKTsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uaW5zdGFuY2VQYXRoID09PSB1bmRlZmluZWRgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9Lmluc3RhbmNlUGF0aGAsICgwLCBjb2RlZ2VuXzEuc3RyQ29uY2F0KShuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCBpdC5lcnJvclBhdGgpKSk7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5zY2hlbWFQYXRoYCwgKDAsIGNvZGVnZW5fMS5zdHIpYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWApOwogICAgICAgIGlmIChpdC5vcHRzLnZlcmJvc2UpIHsKICAgICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uc2NoZW1hYCwgc2NoZW1hVmFsdWUpOwogICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5kYXRhYCwgZGF0YSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4dGVuZEVycm9yczsKICAgIGZ1bmN0aW9uIGFkZEVycm9yKGdlbiwgZXJyT2JqKSB7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5jb25zdCgiZXJyIiwgZXJyT2JqKTsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGxgLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYFske2Vycn1dYCksICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ucHVzaCgke2Vycn0pYCk7CiAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSsrYCk7CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5FcnJvcnMoaXQsIGVycnMpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSwgc2NoZW1hRW52IH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4udGhyb3coKDAsIGNvZGVnZW5fMS5fKWBuZXcgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KCR7ZXJyc30pYCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBlcnJzKTsKICAgICAgICBnZW4ucmV0dXJuKGZhbHNlKTsKICAgICAgfQogICAgfQogICAgdmFyIEUgPSB7CiAgICAgIGtleXdvcmQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgia2V5d29yZCIpLAogICAgICBzY2hlbWFQYXRoOiBuZXcgY29kZWdlbl8xLk5hbWUoInNjaGVtYVBhdGgiKSwKICAgICAgLy8gYWxzbyB1c2VkIGluIEpURCBlcnJvcnMKICAgICAgcGFyYW1zOiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmFtcyIpLAogICAgICBwcm9wZXJ0eU5hbWU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicHJvcGVydHlOYW1lIiksCiAgICAgIG1lc3NhZ2U6IG5ldyBjb2RlZ2VuXzEuTmFtZSgibWVzc2FnZSIpLAogICAgICBzY2hlbWE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NoZW1hIiksCiAgICAgIHBhcmVudFNjaGVtYTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnRTY2hlbWEiKQogICAgfTsKICAgIGZ1bmN0aW9uIGVycm9yT2JqZWN0Q29kZShjeHQsIGVycm9yLCBlcnJvclBhdGhzKSB7CiAgICAgIGNvbnN0IHsgY3JlYXRlRXJyb3JzIH0gPSBjeHQuaXQ7CiAgICAgIGlmIChjcmVhdGVFcnJvcnMgPT09IGZhbHNlKQogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYHt9YDsKICAgICAgcmV0dXJuIGVycm9yT2JqZWN0KGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JPYmplY3QoY3h0LCBlcnJvciwgZXJyb3JQYXRocyA9IHt9KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBrZXlWYWx1ZXMgPSBbCiAgICAgICAgZXJyb3JJbnN0YW5jZVBhdGgoaXQsIGVycm9yUGF0aHMpLAogICAgICAgIGVycm9yU2NoZW1hUGF0aChjeHQsIGVycm9yUGF0aHMpCiAgICAgIF07CiAgICAgIGV4dHJhRXJyb3JQcm9wcyhjeHQsIGVycm9yLCBrZXlWYWx1ZXMpOwogICAgICByZXR1cm4gZ2VuLm9iamVjdCguLi5rZXlWYWx1ZXMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JJbnN0YW5jZVBhdGgoeyBlcnJvclBhdGggfSwgeyBpbnN0YW5jZVBhdGggfSkgewogICAgICBjb25zdCBpbnN0UGF0aCA9IGluc3RhbmNlUGF0aCA/ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShpbnN0YW5jZVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YCA6IGVycm9yUGF0aDsKICAgICAgcmV0dXJuIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgaW5zdFBhdGgpXTsKICAgIH0KICAgIGZ1bmN0aW9uIGVycm9yU2NoZW1hUGF0aCh7IGtleXdvcmQsIGl0OiB7IGVyclNjaGVtYVBhdGggfSB9LCB7IHNjaGVtYVBhdGgsIHBhcmVudFNjaGVtYSB9KSB7CiAgICAgIGxldCBzY2hQYXRoID0gcGFyZW50U2NoZW1hID8gZXJyU2NoZW1hUGF0aCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2VyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gOwogICAgICBpZiAoc2NoZW1hUGF0aCkgewogICAgICAgIHNjaFBhdGggPSAoMCwgY29kZWdlbl8xLnN0cilgJHtzY2hQYXRofSR7KDAsIHV0aWxfMS5nZXRFcnJvclBhdGgpKHNjaGVtYVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YDsKICAgICAgfQogICAgICByZXR1cm4gW0Uuc2NoZW1hUGF0aCwgc2NoUGF0aF07CiAgICB9CiAgICBmdW5jdGlvbiBleHRyYUVycm9yUHJvcHMoY3h0LCB7IHBhcmFtcywgbWVzc2FnZSB9LCBrZXlWYWx1ZXMpIHsKICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFWYWx1ZSwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBvcHRzLCBwcm9wZXJ0eU5hbWUsIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCB9ID0gaXQ7CiAgICAgIGtleVZhbHVlcy5wdXNoKFtFLmtleXdvcmQsIGtleXdvcmRdLCBbRS5wYXJhbXMsIHR5cGVvZiBwYXJhbXMgPT0gImZ1bmN0aW9uIiA/IHBhcmFtcyhjeHQpIDogcGFyYW1zIHx8ICgwLCBjb2RlZ2VuXzEuXylge31gXSk7CiAgICAgIGlmIChvcHRzLm1lc3NhZ2VzKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UubWVzc2FnZSwgdHlwZW9mIG1lc3NhZ2UgPT0gImZ1bmN0aW9uIiA/IG1lc3NhZ2UoY3h0KSA6IG1lc3NhZ2VdKTsKICAgICAgfQogICAgICBpZiAob3B0cy52ZXJib3NlKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0Uuc2NoZW1hLCBzY2hlbWFWYWx1ZV0sIFtFLnBhcmVudFNjaGVtYSwgKDAsIGNvZGVnZW5fMS5fKWAke3RvcFNjaGVtYVJlZn0ke3NjaGVtYVBhdGh9YF0sIFtuYW1lc18xLmRlZmF1bHQuZGF0YSwgZGF0YV0pOwogICAgICB9CiAgICAgIGlmIChwcm9wZXJ0eU5hbWUpCiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UucHJvcGVydHlOYW1lLCBwcm9wZXJ0eU5hbWVdKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcwp2YXIgcmVxdWlyZV9ib29sU2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2Jvb2xTY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gZXhwb3J0czIudG9wQm9vbE9yRW1wdHlTY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgZXJyb3JzXzEgPSByZXF1aXJlX2Vycm9ycygpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgYm9vbEVycm9yID0gewogICAgICBtZXNzYWdlOiAiYm9vbGVhbiBzY2hlbWEgaXMgZmFsc2UiCiAgICB9OwogICAgZnVuY3Rpb24gdG9wQm9vbE9yRW1wdHlTY2hlbWEoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgdmFsaWRhdGVOYW1lIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCwgZmFsc2UpOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmIHNjaGVtYTIuJGFzeW5jID09PSB0cnVlKSB7CiAgICAgICAgZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBudWxsKTsKICAgICAgICBnZW4ucmV0dXJuKHRydWUpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi50b3BCb29sT3JFbXB0eVNjaGVtYSA9IHRvcEJvb2xPckVtcHR5U2NoZW1hOwogICAgZnVuY3Rpb24gYm9vbE9yRW1wdHlTY2hlbWEoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICBnZW4udmFyKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gYm9vbE9yRW1wdHlTY2hlbWE7CiAgICBmdW5jdGlvbiBmYWxzZVNjaGVtYUVycm9yKGl0LCBvdmVycmlkZUFsbEVycm9ycykgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSB9ID0gaXQ7CiAgICAgIGNvbnN0IGN4dCA9IHsKICAgICAgICBnZW4sCiAgICAgICAga2V5d29yZDogImZhbHNlIHNjaGVtYSIsCiAgICAgICAgZGF0YSwKICAgICAgICBzY2hlbWE6IGZhbHNlLAogICAgICAgIHNjaGVtYUNvZGU6IGZhbHNlLAogICAgICAgIHNjaGVtYVZhbHVlOiBmYWxzZSwKICAgICAgICBwYXJhbXM6IHt9LAogICAgICAgIGl0CiAgICAgIH07CiAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikoY3h0LCBib29sRXJyb3IsIHZvaWQgMCwgb3ZlcnJpZGVBbGxFcnJvcnMpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcwp2YXIgcmVxdWlyZV9ydWxlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0UnVsZXMgPSBleHBvcnRzMi5pc0pTT05UeXBlID0gdm9pZCAwOwogICAgdmFyIF9qc29uVHlwZXMgPSBbInN0cmluZyIsICJudW1iZXIiLCAiaW50ZWdlciIsICJib29sZWFuIiwgIm51bGwiLCAib2JqZWN0IiwgImFycmF5Il07CiAgICB2YXIganNvblR5cGVzID0gbmV3IFNldChfanNvblR5cGVzKTsKICAgIGZ1bmN0aW9uIGlzSlNPTlR5cGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gInN0cmluZyIgJiYganNvblR5cGVzLmhhcyh4KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSlNPTlR5cGUgPSBpc0pTT05UeXBlOwogICAgZnVuY3Rpb24gZ2V0UnVsZXMoKSB7CiAgICAgIGNvbnN0IGdyb3VwcyA9IHsKICAgICAgICBudW1iZXI6IHsgdHlwZTogIm51bWJlciIsIHJ1bGVzOiBbXSB9LAogICAgICAgIHN0cmluZzogeyB0eXBlOiAic3RyaW5nIiwgcnVsZXM6IFtdIH0sCiAgICAgICAgYXJyYXk6IHsgdHlwZTogImFycmF5IiwgcnVsZXM6IFtdIH0sCiAgICAgICAgb2JqZWN0OiB7IHR5cGU6ICJvYmplY3QiLCBydWxlczogW10gfQogICAgICB9OwogICAgICByZXR1cm4gewogICAgICAgIHR5cGVzOiB7IC4uLmdyb3VwcywgaW50ZWdlcjogdHJ1ZSwgYm9vbGVhbjogdHJ1ZSwgbnVsbDogdHJ1ZSB9LAogICAgICAgIHJ1bGVzOiBbeyBydWxlczogW10gfSwgZ3JvdXBzLm51bWJlciwgZ3JvdXBzLnN0cmluZywgZ3JvdXBzLmFycmF5LCBncm91cHMub2JqZWN0XSwKICAgICAgICBwb3N0OiB7IHJ1bGVzOiBbXSB9LAogICAgICAgIGFsbDoge30sCiAgICAgICAga2V5d29yZHM6IHt9CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5nZXRSdWxlcyA9IGdldFJ1bGVzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9hcHBsaWNhYmlsaXR5LmpzCnZhciByZXF1aXJlX2FwcGxpY2FiaWxpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNGb3JUeXBlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNGb3JUeXBlKHsgc2NoZW1hOiBzY2hlbWEyLCBzZWxmOiBzZWxmMiB9LCB0eXBlMikgewogICAgICBjb25zdCBncm91cCA9IHNlbGYyLlJVTEVTLnR5cGVzW3R5cGUyXTsKICAgICAgcmV0dXJuIGdyb3VwICYmIGdyb3VwICE9PSB0cnVlICYmIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzRm9yVHlwZSA9IHNjaGVtYUhhc1J1bGVzRm9yVHlwZTsKICAgIGZ1bmN0aW9uIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKSB7CiAgICAgIHJldHVybiBncm91cC5ydWxlcy5zb21lKChydWxlKSA9PiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gc2hvdWxkVXNlR3JvdXA7CiAgICBmdW5jdGlvbiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpIHsKICAgICAgdmFyIF9hOwogICAgICByZXR1cm4gc2NoZW1hMltydWxlLmtleXdvcmRdICE9PSB2b2lkIDAgfHwgKChfYSA9IHJ1bGUuZGVmaW5pdGlvbi5pbXBsZW1lbnRzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc29tZSgoa3dkKSA9PiBzY2hlbWEyW2t3ZF0gIT09IHZvaWQgMCkpOwogICAgfQogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IHNob3VsZFVzZVJ1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzCnZhciByZXF1aXJlX2RhdGFUeXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSBleHBvcnRzMi5jaGVja0RhdGFUeXBlcyA9IGV4cG9ydHMyLmNoZWNrRGF0YVR5cGUgPSBleHBvcnRzMi5jb2VyY2VBbmRDaGVja0RhdGFUeXBlID0gZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZXhwb3J0czIuZ2V0U2NoZW1hVHlwZXMgPSBleHBvcnRzMi5EYXRhVHlwZSA9IHZvaWQgMDsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGFwcGxpY2FiaWxpdHlfMSA9IHJlcXVpcmVfYXBwbGljYWJpbGl0eSgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBEYXRhVHlwZTsKICAgIChmdW5jdGlvbihEYXRhVHlwZTIpIHsKICAgICAgRGF0YVR5cGUyW0RhdGFUeXBlMlsiQ29ycmVjdCJdID0gMF0gPSAiQ29ycmVjdCI7CiAgICAgIERhdGFUeXBlMltEYXRhVHlwZTJbIldyb25nIl0gPSAxXSA9ICJXcm9uZyI7CiAgICB9KShEYXRhVHlwZSB8fCAoZXhwb3J0czIuRGF0YVR5cGUgPSBEYXRhVHlwZSA9IHt9KSk7CiAgICBmdW5jdGlvbiBnZXRTY2hlbWFUeXBlcyhzY2hlbWEyKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gZ2V0SlNPTlR5cGVzKHNjaGVtYTIudHlwZSk7CiAgICAgIGNvbnN0IGhhc051bGwgPSB0eXBlcy5pbmNsdWRlcygibnVsbCIpOwogICAgICBpZiAoaGFzTnVsbCkgewogICAgICAgIGlmIChzY2hlbWEyLm51bGxhYmxlID09PSBmYWxzZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZTogbnVsbCBjb250cmFkaWN0cyBudWxsYWJsZTogZmFsc2UiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAoIXR5cGVzLmxlbmd0aCAmJiBzY2hlbWEyLm51bGxhYmxlICE9PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignIm51bGxhYmxlIiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0ICJ0eXBlIicpOwogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1hMi5udWxsYWJsZSA9PT0gdHJ1ZSkKICAgICAgICAgIHR5cGVzLnB1c2goIm51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gdHlwZXM7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGdldFNjaGVtYVR5cGVzOwogICAgZnVuY3Rpb24gZ2V0SlNPTlR5cGVzKHRzKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gQXJyYXkuaXNBcnJheSh0cykgPyB0cyA6IHRzID8gW3RzXSA6IFtdOwogICAgICBpZiAodHlwZXMuZXZlcnkocnVsZXNfMS5pc0pTT05UeXBlKSkKICAgICAgICByZXR1cm4gdHlwZXM7CiAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBtdXN0IGJlIEpTT05UeXBlIG9yIEpTT05UeXBlW106ICIgKyB0eXBlcy5qb2luKCIsIikpOwogICAgfQogICAgZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZ2V0SlNPTlR5cGVzOwogICAgZnVuY3Rpb24gY29lcmNlQW5kQ2hlY2tEYXRhVHlwZShpdCwgdHlwZXMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBjb2VyY2VUbyA9IGNvZXJjZVRvVHlwZXModHlwZXMsIG9wdHMuY29lcmNlVHlwZXMpOwogICAgICBjb25zdCBjaGVja1R5cGVzID0gdHlwZXMubGVuZ3RoID4gMCAmJiAhKGNvZXJjZVRvLmxlbmd0aCA9PT0gMCAmJiB0eXBlcy5sZW5ndGggPT09IDEgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zY2hlbWFIYXNSdWxlc0ZvclR5cGUpKGl0LCB0eXBlc1swXSkpOwogICAgICBpZiAoY2hlY2tUeXBlcykgewogICAgICAgIGNvbnN0IHdyb25nVHlwZSA9IGNoZWNrRGF0YVR5cGVzKHR5cGVzLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMsIERhdGFUeXBlLldyb25nKTsKICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoKSA9PiB7CiAgICAgICAgICBpZiAoY29lcmNlVG8ubGVuZ3RoKQogICAgICAgICAgICBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByZXBvcnRUeXBlRXJyb3IoaXQpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBjaGVja1R5cGVzOwogICAgfQogICAgZXhwb3J0czIuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSA9IGNvZXJjZUFuZENoZWNrRGF0YVR5cGU7CiAgICB2YXIgQ09FUkNJQkxFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIl0pOwogICAgZnVuY3Rpb24gY29lcmNlVG9UeXBlcyh0eXBlcywgY29lcmNlVHlwZXMpIHsKICAgICAgcmV0dXJuIGNvZXJjZVR5cGVzID8gdHlwZXMuZmlsdGVyKCh0KSA9PiBDT0VSQ0lCTEUuaGFzKHQpIHx8IGNvZXJjZVR5cGVzID09PSAiYXJyYXkiICYmIHQgPT09ICJhcnJheSIpIDogW107CiAgICB9CiAgICBmdW5jdGlvbiBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBkYXRhVHlwZSA9IGdlbi5sZXQoImRhdGFUeXBlIiwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfWApOwogICAgICBjb25zdCBjb2VyY2VkID0gZ2VuLmxldCgiY29lcmNlZCIsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgIGlmIChvcHRzLmNvZXJjZVR5cGVzID09PSAiYXJyYXkiKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT0gJ29iamVjdCcgJiYgQXJyYXkuaXNBcnJheSgke2RhdGF9KSAmJiAke2RhdGF9Lmxlbmd0aCA9PSAxYCwgKCkgPT4gZ2VuLmFzc2lnbihkYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX1bMF1gKS5hc3NpZ24oZGF0YVR5cGUsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZGF0YX1gKS5pZihjaGVja0RhdGFUeXBlcyh0eXBlcywgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSwgKCkgPT4gZ2VuLmFzc2lnbihjb2VyY2VkLCBkYXRhKSkpOwogICAgICB9CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGApOwogICAgICBmb3IgKGNvbnN0IHQgb2YgY29lcmNlVG8pIHsKICAgICAgICBpZiAoQ09FUkNJQkxFLmhhcyh0KSB8fCB0ID09PSAiYXJyYXkiICYmIG9wdHMuY29lcmNlVHlwZXMgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvZXJjZVNwZWNpZmljVHlwZSh0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2VuLmVsc2UoKTsKICAgICAgcmVwb3J0VHlwZUVycm9yKGl0KTsKICAgICAgZ2VuLmVuZElmKCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKGRhdGEsIGNvZXJjZWQpOwogICAgICAgIGFzc2lnblBhcmVudERhdGEoaXQsIGNvZXJjZWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY29lcmNlU3BlY2lmaWNUeXBlKHQpIHsKICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFUeXBlfSA9PSAibnVtYmVyIiB8fCAke2RhdGFUeXBlfSA9PSAiYm9vbGVhbiJgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWAiIiArICR7ZGF0YX1gKS5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSBudWxsYCkuYXNzaWduKGNvZXJjZWQsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09ICJib29sZWFuIiB8fCAke2RhdGF9ID09PSBudWxsCiAgICAgICAgICAgICAgfHwgKCR7ZGF0YVR5cGV9ID09ICJzdHJpbmciICYmICR7ZGF0YX0gJiYgJHtkYXRhfSA9PSArJHtkYXRhfSlgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWArJHtkYXRhfWApOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbAogICAgICAgICAgICAgIHx8ICgke2RhdGFUeXBlfSA9PT0gInN0cmluZyIgJiYgJHtkYXRhfSAmJiAke2RhdGF9ID09ICske2RhdGF9ICYmICEoJHtkYXRhfSAlIDEpKWApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYCske2RhdGF9YCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSA9PT0gImZhbHNlIiB8fCAke2RhdGF9ID09PSAwIHx8ICR7ZGF0YX0gPT09IG51bGxgKS5hc3NpZ24oY29lcmNlZCwgZmFsc2UpLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICJ0cnVlIiB8fCAke2RhdGF9ID09PSAxYCkuYXNzaWduKGNvZXJjZWQsIHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICIiIHx8ICR7ZGF0YX0gPT09IDAgfHwgJHtkYXRhfSA9PT0gZmFsc2VgKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbihjb2VyY2VkLCBudWxsKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT09ICJzdHJpbmciIHx8ICR7ZGF0YVR5cGV9ID09PSAibnVtYmVyIgogICAgICAgICAgICAgIHx8ICR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbGApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYFske2RhdGF9XWApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduUGFyZW50RGF0YSh7IGdlbiwgcGFyZW50RGF0YSwgcGFyZW50RGF0YVByb3BlcnR5IH0sIGV4cHIpIHsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtwYXJlbnREYXRhfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cGFyZW50RGF0YX1bJHtwYXJlbnREYXRhUHJvcGVydHl9XWAsIGV4cHIpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrRGF0YVR5cGUoZGF0YVR5cGUsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QgPSBEYXRhVHlwZS5Db3JyZWN0KSB7CiAgICAgIGNvbnN0IEVRID0gY29ycmVjdCA9PT0gRGF0YVR5cGUuQ29ycmVjdCA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuRVEgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLk5FUTsKICAgICAgbGV0IGNvbmQ7CiAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHsKICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtFUX0gbnVsbGA7CiAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJvYmplY3QiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAmJiB0eXBlb2YgJHtkYXRhfSA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgIGNvbmQgPSBudW1Db25kKCgwLCBjb2RlZ2VuXzEuXylgISgke2RhdGF9ICUgMSkgJiYgIWlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY29uZCA9IG51bUNvbmQoKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAke0VRfSAke2RhdGFUeXBlfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvcnJlY3QgPT09IERhdGFUeXBlLkNvcnJlY3QgPyBjb25kIDogKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmQpOwogICAgICBmdW5jdGlvbiBudW1Db25kKF9jb25kID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLmFuZCkoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSA9PSAibnVtYmVyImAsIF9jb25kLCBzdHJpY3ROdW1zID8gKDAsIGNvZGVnZW5fMS5fKWBpc0Zpbml0ZSgke2RhdGF9KWAgOiBjb2RlZ2VuXzEubmlsKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGNoZWNrRGF0YVR5cGU7CiAgICBmdW5jdGlvbiBjaGVja0RhdGFUeXBlcyhkYXRhVHlwZXMsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpIHsKICAgICAgaWYgKGRhdGFUeXBlcy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gY2hlY2tEYXRhVHlwZShkYXRhVHlwZXNbMF0sIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpOwogICAgICB9CiAgICAgIGxldCBjb25kOwogICAgICBjb25zdCB0eXBlcyA9ICgwLCB1dGlsXzEudG9IYXNoKShkYXRhVHlwZXMpOwogICAgICBpZiAodHlwZXMuYXJyYXkgJiYgdHlwZXMub2JqZWN0KSB7CiAgICAgICAgY29uc3Qgbm90T2JqID0gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAhPSAib2JqZWN0ImA7CiAgICAgICAgY29uZCA9IHR5cGVzLm51bGwgPyBub3RPYmogOiAoMCwgY29kZWdlbl8xLl8pYCEke2RhdGF9IHx8ICR7bm90T2JqfWA7CiAgICAgICAgZGVsZXRlIHR5cGVzLm51bGw7CiAgICAgICAgZGVsZXRlIHR5cGVzLmFycmF5OwogICAgICAgIGRlbGV0ZSB0eXBlcy5vYmplY3Q7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY29uZCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgIH0KICAgICAgaWYgKHR5cGVzLm51bWJlcikKICAgICAgICBkZWxldGUgdHlwZXMuaW50ZWdlcjsKICAgICAgZm9yIChjb25zdCB0IGluIHR5cGVzKQogICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLmFuZCkoY29uZCwgY2hlY2tEYXRhVHlwZSh0LCBkYXRhLCBzdHJpY3ROdW1zLCBjb3JyZWN0KSk7CiAgICAgIHJldHVybiBjb25kOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZXMgPSBjaGVja0RhdGFUeXBlczsKICAgIHZhciB0eXBlRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYTogc2NoZW1hMiB9KSA9PiBgbXVzdCBiZSAke3NjaGVtYTJ9YCwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYVZhbHVlIH0pID0+IHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciID8gKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWEyfX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWFWYWx1ZX19YAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydFR5cGVFcnJvcihpdCkgewogICAgICBjb25zdCBjeHQgPSBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KTsKICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKShjeHQsIHR5cGVFcnJvcik7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSByZXBvcnRUeXBlRXJyb3I7CiAgICBmdW5jdGlvbiBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBjb25zdCBzY2hlbWFDb2RlID0gKDAsIHV0aWxfMS5zY2hlbWFSZWZPclZhbCkoaXQsIHNjaGVtYTIsICJ0eXBlIik7CiAgICAgIHJldHVybiB7CiAgICAgICAgZ2VuLAogICAgICAgIGtleXdvcmQ6ICJ0eXBlIiwKICAgICAgICBkYXRhLAogICAgICAgIHNjaGVtYTogc2NoZW1hMi50eXBlLAogICAgICAgIHNjaGVtYUNvZGUsCiAgICAgICAgc2NoZW1hVmFsdWU6IHNjaGVtYUNvZGUsCiAgICAgICAgcGFyZW50U2NoZW1hOiBzY2hlbWEyLAogICAgICAgIHBhcmFtczoge30sCiAgICAgICAgaXQKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMKdmFyIHJlcXVpcmVfZGVmYXVsdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFzc2lnbkRlZmF1bHRzID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdHMoaXQsIHR5KSB7CiAgICAgIGNvbnN0IHsgcHJvcGVydGllcywgaXRlbXMgfSA9IGl0LnNjaGVtYTsKICAgICAgaWYgKHR5ID09PSAib2JqZWN0IiAmJiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcGVydGllcykgewogICAgICAgICAgYXNzaWduRGVmYXVsdChpdCwga2V5LCBwcm9wZXJ0aWVzW2tleV0uZGVmYXVsdCk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKHR5ID09PSAiYXJyYXkiICYmIEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgaXRlbXMuZm9yRWFjaCgoc2NoLCBpKSA9PiBhc3NpZ25EZWZhdWx0KGl0LCBpLCBzY2guZGVmYXVsdCkpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hc3NpZ25EZWZhdWx0cyA9IGFzc2lnbkRlZmF1bHRzOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdChpdCwgcHJvcCwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBkYXRhLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKGRlZmF1bHRWYWx1ZSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgY2hpbGREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wKX1gOwogICAgICBpZiAoY29tcG9zaXRlUnVsZSkgewogICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYGRlZmF1bHQgaXMgaWdub3JlZCBmb3I6ICR7Y2hpbGREYXRhfWApOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBsZXQgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NoaWxkRGF0YX0gPT09IHVuZGVmaW5lZGA7CiAgICAgIGlmIChvcHRzLnVzZURlZmF1bHRzID09PSAiZW1wdHkiKSB7CiAgICAgICAgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmRpdGlvbn0gfHwgJHtjaGlsZERhdGF9ID09PSBudWxsIHx8ICR7Y2hpbGREYXRhfSA9PT0gIiJgOwogICAgICB9CiAgICAgIGdlbi5pZihjb25kaXRpb24sICgwLCBjb2RlZ2VuXzEuXylgJHtjaGlsZERhdGF9ID0gJHsoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkoZGVmYXVsdFZhbHVlKX1gKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzCnZhciByZXF1aXJlX2NvZGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVVbmlvbiA9IGV4cG9ydHMyLnZhbGlkYXRlQXJyYXkgPSBleHBvcnRzMi51c2VQYXR0ZXJuID0gZXhwb3J0czIuY2FsbFZhbGlkYXRlQ29kZSA9IGV4cG9ydHMyLnNjaGVtYVByb3BlcnRpZXMgPSBleHBvcnRzMi5hbGxTY2hlbWFQcm9wZXJ0aWVzID0gZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IGV4cG9ydHMyLnByb3BlcnR5SW5EYXRhID0gZXhwb3J0czIuaXNPd25Qcm9wZXJ0eSA9IGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gZXhwb3J0czIucmVwb3J0TWlzc2luZ1Byb3AgPSBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gY2hlY2tSZXBvcnRNaXNzaW5nUHJvcChjeHQsIHByb3ApIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gewogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6ICgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wfWAgfSwgdHJ1ZSk7CiAgICAgICAgY3h0LmVycm9yKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IGNoZWNrUmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBjaGVja01pc3NpbmdQcm9wKHsgZ2VuLCBkYXRhLCBpdDogeyBvcHRzIH0gfSwgcHJvcGVydGllcywgbWlzc2luZykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5vcikoLi4ucHJvcGVydGllcy5tYXAoKHByb3ApID0+ICgwLCBjb2RlZ2VuXzEuYW5kKShub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKDAsIGNvZGVnZW5fMS5fKWAke21pc3Npbmd9ID0gJHtwcm9wfWApKSk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gY2hlY2tNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIHJlcG9ydE1pc3NpbmdQcm9wKGN4dCwgbWlzc2luZykgewogICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBtaXNzaW5nIH0sIHRydWUpOwogICAgICBjeHQuZXJyb3IoKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydE1pc3NpbmdQcm9wID0gcmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBoYXNQcm9wRnVuYyhnZW4pIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5ib3VuZC1tZXRob2QKICAgICAgICByZWY6IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5YAogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gaGFzUHJvcEZ1bmM7CiAgICBmdW5jdGlvbiBpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpIHsKICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtoYXNQcm9wRnVuYyhnZW4pfS5jYWxsKCR7ZGF0YX0sICR7cHJvcGVydHl9KWA7CiAgICB9CiAgICBleHBvcnRzMi5pc093blByb3BlcnR5ID0gaXNPd25Qcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIHByb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcGVydHksIG93blByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocHJvcGVydHkpfSAhPT0gdW5kZWZpbmVkYDsKICAgICAgcmV0dXJuIG93blByb3BlcnRpZXMgPyAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpfWAgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIucHJvcGVydHlJbkRhdGEgPSBwcm9wZXJ0eUluRGF0YTsKICAgIGZ1bmN0aW9uIG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wZXJ0eSwgb3duUHJvcGVydGllcykgewogICAgICBjb25zdCBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wZXJ0eSl9ID09PSB1bmRlZmluZWRgOwogICAgICByZXR1cm4gb3duUHJvcGVydGllcyA/ICgwLCBjb2RlZ2VuXzEub3IpKGNvbmQsICgwLCBjb2RlZ2VuXzEubm90KShpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpKSkgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IG5vUHJvcGVydHlJbkRhdGE7CiAgICBmdW5jdGlvbiBhbGxTY2hlbWFQcm9wZXJ0aWVzKHNjaGVtYU1hcCkgewogICAgICByZXR1cm4gc2NoZW1hTWFwID8gT2JqZWN0LmtleXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+IHAgIT09ICJfX3Byb3RvX18iKSA6IFtdOwogICAgfQogICAgZXhwb3J0czIuYWxsU2NoZW1hUHJvcGVydGllcyA9IGFsbFNjaGVtYVByb3BlcnRpZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFQcm9wZXJ0aWVzKGl0LCBzY2hlbWFNYXApIHsKICAgICAgcmV0dXJuIGFsbFNjaGVtYVByb3BlcnRpZXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+ICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hTWFwW3BdKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFQcm9wZXJ0aWVzID0gc2NoZW1hUHJvcGVydGllczsKICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZUNvZGUoeyBzY2hlbWFDb2RlLCBkYXRhLCBpdDogeyBnZW4sIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCwgZXJyb3JQYXRoIH0sIGl0IH0sIGZ1bmMsIGNvbnRleHQsIHBhc3NTY2hlbWEpIHsKICAgICAgY29uc3QgZGF0YUFuZFNjaGVtYSA9IHBhc3NTY2hlbWEgPyAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0sICR7ZGF0YX0sICR7dG9wU2NoZW1hUmVmfSR7c2NoZW1hUGF0aH1gIDogZGF0YTsKICAgICAgY29uc3QgdmFsQ3h0ID0gWwogICAgICAgIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgZXJyb3JQYXRoKV0sCiAgICAgICAgW25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCBpdC5wYXJlbnREYXRhXSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgaXQucGFyZW50RGF0YVByb3BlcnR5XSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCBuYW1lc18xLmRlZmF1bHQucm9vdERhdGFdCiAgICAgIF07CiAgICAgIGlmIChpdC5vcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgdmFsQ3h0LnB1c2goW25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgbmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzXSk7CiAgICAgIGNvbnN0IGFyZ3MgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YUFuZFNjaGVtYX0sICR7Z2VuLm9iamVjdCguLi52YWxDeHQpfWA7CiAgICAgIHJldHVybiBjb250ZXh0ICE9PSBjb2RlZ2VuXzEubmlsID8gKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9LmNhbGwoJHtjb250ZXh0fSwgJHthcmdzfSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9KCR7YXJnc30pYDsKICAgIH0KICAgIGV4cG9ydHMyLmNhbGxWYWxpZGF0ZUNvZGUgPSBjYWxsVmFsaWRhdGVDb2RlOwogICAgdmFyIG5ld1JlZ0V4cCA9ICgwLCBjb2RlZ2VuXzEuXylgbmV3IFJlZ0V4cGA7CiAgICBmdW5jdGlvbiB1c2VQYXR0ZXJuKHsgZ2VuLCBpdDogeyBvcHRzIH0gfSwgcGF0dGVybikgewogICAgICBjb25zdCB1ID0gb3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgIGNvbnN0IHsgcmVnRXhwIH0gPSBvcHRzLmNvZGU7CiAgICAgIGNvbnN0IHJ4ID0gcmVnRXhwKHBhdHRlcm4sIHUpOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoInBhdHRlcm4iLCB7CiAgICAgICAga2V5OiByeC50b1N0cmluZygpLAogICAgICAgIHJlZjogcngsCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWAke3JlZ0V4cC5jb2RlID09PSAibmV3IFJlZ0V4cCIgPyBuZXdSZWdFeHAgOiAoMCwgdXRpbF8yLnVzZUZ1bmMpKGdlbiwgcmVnRXhwKX0oJHtwYXR0ZXJufSwgJHt1fSlgCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlUGF0dGVybiA9IHVzZVBhdHRlcm47CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUFycmF5KGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgIGNvbnN0IHZhbGlkQXJyID0gZ2VuLmxldCgidmFsaWQiLCB0cnVlKTsKICAgICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5hc3NpZ24odmFsaWRBcnIsIGZhbHNlKSk7CiAgICAgICAgcmV0dXJuIHZhbGlkQXJyOwogICAgICB9CiAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5icmVhaygpKTsKICAgICAgcmV0dXJuIHZhbGlkOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKG5vdFZhbGlkKSB7CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQsCiAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bQogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksIG5vdFZhbGlkKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVBcnJheSA9IHZhbGlkYXRlQXJyYXk7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaW9uKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgY29uc3QgYWx3YXlzVmFsaWQgPSBzY2hlbWEyLnNvbWUoKHNjaCkgPT4gKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpOwogICAgICBpZiAoYWx3YXlzVmFsaWQgJiYgIWl0Lm9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHNjaGVtYTIuZm9yRWFjaCgoX3NjaCwgaSkgPT4gewogICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZCwKICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZH0gfHwgJHtzY2hWYWxpZH1gKTsKICAgICAgICBjb25zdCBtZXJnZWQgPSBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHNjaFZhbGlkKTsKICAgICAgICBpZiAoIW1lcmdlZCkKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpKTsKICAgICAgfSkpOwogICAgICBjeHQucmVzdWx0KHZhbGlkLCAoKSA9PiBjeHQucmVzZXQoKSwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlVW5pb24gPSB2YWxpZGF0ZVVuaW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9rZXl3b3JkLmpzCnZhciByZXF1aXJlX2tleXdvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSBleHBvcnRzMi52YWxpZFNjaGVtYVR5cGUgPSBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIG1hY3JvS2V5d29yZENvZGUoY3h0LCBkZWYpIHsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBtYWNyb1NjaGVtYSA9IGRlZi5tYWNyby5jYWxsKGl0LnNlbGYsIHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpOwogICAgICBjb25zdCBzY2hlbWFSZWYgPSB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgbWFjcm9TY2hlbWEpOwogICAgICBpZiAoaXQub3B0cy52YWxpZGF0ZVNjaGVtYSAhPT0gZmFsc2UpCiAgICAgICAgaXQuc2VsZi52YWxpZGF0ZVNjaGVtYShtYWNyb1NjaGVtYSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgIHNjaGVtYTogbWFjcm9TY2hlbWEsCiAgICAgICAgc2NoZW1hUGF0aDogY29kZWdlbl8xLm5pbCwKICAgICAgICBlcnJTY2hlbWFQYXRoOiBgJHtpdC5lcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9YCwKICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaGVtYVJlZiwKICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgIH0sIHZhbGlkKTsKICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICB9CiAgICBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gbWFjcm9LZXl3b3JkQ29kZTsKICAgIGZ1bmN0aW9uIGZ1bmNLZXl3b3JkQ29kZShjeHQsIGRlZikgewogICAgICB2YXIgX2E7CiAgICAgIGNvbnN0IHsgZ2VuLCBrZXl3b3JkLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgJGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGNoZWNrQXN5bmNLZXl3b3JkKGl0LCBkZWYpOwogICAgICBjb25zdCB2YWxpZGF0ZSA9ICEkZGF0YSAmJiBkZWYuY29tcGlsZSA/IGRlZi5jb21waWxlLmNhbGwoaXQuc2VsZiwgc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCkgOiBkZWYudmFsaWRhdGU7CiAgICAgIGNvbnN0IHZhbGlkYXRlUmVmID0gdXNlS2V5d29yZChnZW4sIGtleXdvcmQsIHZhbGlkYXRlKTsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgdmFsaWRhdGVLZXl3b3JkKTsKICAgICAgY3h0Lm9rKChfYSA9IGRlZi52YWxpZCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsaWQpOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUtleXdvcmQoKSB7CiAgICAgICAgaWYgKGRlZi5lcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICBhc3NpZ25WYWxpZCgpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBydWxlRXJycyA9IGRlZi5hc3luYyA/IHZhbGlkYXRlQXN5bmMoKSA6IHZhbGlkYXRlU3luYygpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gYWRkRXJycyhjeHQsIHJ1bGVFcnJzKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlQXN5bmMoKSB7CiAgICAgICAgY29uc3QgcnVsZUVycnMgPSBnZW4ubGV0KCJydWxlRXJycyIsIG51bGwpOwogICAgICAgIGdlbi50cnkoKCkgPT4gYXNzaWduVmFsaWQoKDAsIGNvZGVnZW5fMS5fKWBhd2FpdCBgKSwgKGUpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZX0gaW5zdGFuY2VvZiAke2l0LlZhbGlkYXRpb25FcnJvcn1gLCAoKSA9PiBnZW4uYXNzaWduKHJ1bGVFcnJzLCAoMCwgY29kZWdlbl8xLl8pYCR7ZX0uZXJyb3JzYCksICgpID0+IGdlbi50aHJvdyhlKSkpOwogICAgICAgIHJldHVybiBydWxlRXJyczsKICAgICAgfQogICAgICBmdW5jdGlvbiB2YWxpZGF0ZVN5bmMoKSB7CiAgICAgICAgY29uc3QgdmFsaWRhdGVFcnJzID0gKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlUmVmfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWRhdGVFcnJzLCBudWxsKTsKICAgICAgICBhc3NpZ25WYWxpZChjb2RlZ2VuXzEubmlsKTsKICAgICAgICByZXR1cm4gdmFsaWRhdGVFcnJzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFzc2lnblZhbGlkKF9hd2FpdCA9IGRlZi5hc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgYCA6IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBjb25zdCBwYXNzQ3h0ID0gaXQub3B0cy5wYXNzQ29udGV4dCA/IG5hbWVzXzEuZGVmYXVsdC50aGlzIDogbmFtZXNfMS5kZWZhdWx0LnNlbGY7CiAgICAgICAgY29uc3QgcGFzc1NjaGVtYSA9ICEoImNvbXBpbGUiIGluIGRlZiAmJiAhJGRhdGEgfHwgZGVmLnNjaGVtYSA9PT0gZmFsc2UpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHtfYXdhaXR9JHsoMCwgY29kZV8xLmNhbGxWYWxpZGF0ZUNvZGUpKGN4dCwgdmFsaWRhdGVSZWYsIHBhc3NDeHQsIHBhc3NTY2hlbWEpfWAsIGRlZi5tb2RpZnlpbmcpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlcG9ydEVycnMoZXJyb3JzKSB7CiAgICAgICAgdmFyIF9hMjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKChfYTIgPSBkZWYudmFsaWQpICE9PSBudWxsICYmIF9hMiAhPT0gdm9pZCAwID8gX2EyIDogdmFsaWQpLCBlcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBmdW5jS2V5d29yZENvZGU7CiAgICBmdW5jdGlvbiBtb2RpZnlEYXRhKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgZ2VuLmlmKGl0LnBhcmVudERhdGEsICgpID0+IGdlbi5hc3NpZ24oZGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LnBhcmVudERhdGF9WyR7aXQucGFyZW50RGF0YVByb3BlcnR5fV1gKSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFcnJzKGN4dCwgZXJycykgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWBBcnJheS5pc0FycmF5KCR7ZXJyc30pYCwgKCkgPT4gewogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCkuYXNzaWduKG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ubGVuZ3RoYCk7CiAgICAgICAgKDAsIGVycm9yc18xLmV4dGVuZEVycm9ycykoY3h0KTsKICAgICAgfSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY0tleXdvcmQoeyBzY2hlbWFFbnYgfSwgZGVmKSB7CiAgICAgIGlmIChkZWYuYXN5bmMgJiYgIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhc3luYyBrZXl3b3JkIGluIHN5bmMgc2NoZW1hIik7CiAgICB9CiAgICBmdW5jdGlvbiB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgcmVzdWx0KSB7CiAgICAgIGlmIChyZXN1bHQgPT09IHZvaWQgMCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGtleXdvcmQgIiR7a2V5d29yZH0iIGZhaWxlZCB0byBjb21waWxlYCk7CiAgICAgIHJldHVybiBnZW4uc2NvcGVWYWx1ZSgia2V5d29yZCIsIHR5cGVvZiByZXN1bHQgPT0gImZ1bmN0aW9uIiA/IHsgcmVmOiByZXN1bHQgfSA6IHsgcmVmOiByZXN1bHQsIGNvZGU6ICgwLCBjb2RlZ2VuXzEuc3RyaW5naWZ5KShyZXN1bHQpIH0pOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRTY2hlbWFUeXBlKHNjaGVtYTIsIHNjaGVtYVR5cGUsIGFsbG93VW5kZWZpbmVkID0gZmFsc2UpIHsKICAgICAgcmV0dXJuICFzY2hlbWFUeXBlLmxlbmd0aCB8fCBzY2hlbWFUeXBlLnNvbWUoKHN0KSA9PiBzdCA9PT0gImFycmF5IiA/IEFycmF5LmlzQXJyYXkoc2NoZW1hMikgOiBzdCA9PT0gIm9iamVjdCIgPyBzY2hlbWEyICYmIHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYTIpIDogdHlwZW9mIHNjaGVtYTIgPT0gc3QgfHwgYWxsb3dVbmRlZmluZWQgJiYgdHlwZW9mIHNjaGVtYTIgPT0gInVuZGVmaW5lZCIpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRTY2hlbWFUeXBlID0gdmFsaWRTY2hlbWFUeXBlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkVXNhZ2UoeyBzY2hlbWE6IHNjaGVtYTIsIG9wdHMsIHNlbGY6IHNlbGYyLCBlcnJTY2hlbWFQYXRoIH0sIGRlZiwga2V5d29yZCkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShkZWYua2V5d29yZCkgPyAhZGVmLmtleXdvcmQuaW5jbHVkZXMoa2V5d29yZCkgOiBkZWYua2V5d29yZCAhPT0ga2V5d29yZCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIH0KICAgICAgY29uc3QgZGVwcyA9IGRlZi5kZXBlbmRlbmNpZXM7CiAgICAgIGlmIChkZXBzID09PSBudWxsIHx8IGRlcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlcHMuc29tZSgoa3dkKSA9PiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNjaGVtYTIsIGt3ZCkpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJlbnQgc2NoZW1hIG11c3QgaGF2ZSBkZXBlbmRlbmNpZXMgb2YgJHtrZXl3b3JkfTogJHtkZXBzLmpvaW4oIiwiKX1gKTsKICAgICAgfQogICAgICBpZiAoZGVmLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgY29uc3QgdmFsaWQgPSBkZWYudmFsaWRhdGVTY2hlbWEoc2NoZW1hMltrZXl3b3JkXSk7CiAgICAgICAgaWYgKCF2YWxpZCkgewogICAgICAgICAgY29uc3QgbXNnID0gYGtleXdvcmQgIiR7a2V5d29yZH0iIHZhbHVlIGlzIGludmFsaWQgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSI6IGAgKyBzZWxmMi5lcnJvcnNUZXh0KGRlZi52YWxpZGF0ZVNjaGVtYS5lcnJvcnMpOwogICAgICAgICAgaWYgKG9wdHMudmFsaWRhdGVTY2hlbWEgPT09ICJsb2ciKQogICAgICAgICAgICBzZWxmMi5sb2dnZXIuZXJyb3IobXNnKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZUtleXdvcmRVc2FnZSA9IHZhbGlkYXRlS2V5d29yZFVzYWdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9zdWJzY2hlbWEuanMKdmFyIHJlcXVpcmVfc3Vic2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL3N1YnNjaGVtYS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4cG9ydHMyLmV4dGVuZFN1YnNjaGVtYURhdGEgPSBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICBmdW5jdGlvbiBnZXRTdWJzY2hlbWEoaXQsIHsga2V5d29yZCwgc2NoZW1hUHJvcCwgc2NoZW1hOiBzY2hlbWEyLCBzY2hlbWFQYXRoLCBlcnJTY2hlbWFQYXRoLCB0b3BTY2hlbWFSZWYgfSkgewogICAgICBpZiAoa2V5d29yZCAhPT0gdm9pZCAwICYmIHNjaGVtYTIgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAia2V5d29yZCIgYW5kICJzY2hlbWEiIHBhc3NlZCwgb25seSBvbmUgYWxsb3dlZCcpOwogICAgICB9CiAgICAgIGlmIChrZXl3b3JkICE9PSB2b2lkIDApIHsKICAgICAgICBjb25zdCBzY2ggPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgcmV0dXJuIHNjaGVtYVByb3AgPT09IHZvaWQgMCA/IHsKICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgc2NoZW1hUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAke2l0LnNjaGVtYVBhdGh9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShrZXl3b3JkKX1gLAogICAgICAgICAgZXJyU2NoZW1hUGF0aDogYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWAKICAgICAgICB9IDogewogICAgICAgICAgc2NoZW1hOiBzY2hbc2NoZW1hUHJvcF0sCiAgICAgICAgICBzY2hlbWFQYXRoOiAoMCwgY29kZWdlbl8xLl8pYCR7aXQuc2NoZW1hUGF0aH0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGtleXdvcmQpfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoc2NoZW1hUHJvcCl9YCwKICAgICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH0vJHsoMCwgdXRpbF8xLmVzY2FwZUZyYWdtZW50KShzY2hlbWFQcm9wKX1gCiAgICAgICAgfTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKHNjaGVtYVBhdGggPT09IHZvaWQgMCB8fCBlcnJTY2hlbWFQYXRoID09PSB2b2lkIDAgfHwgdG9wU2NoZW1hUmVmID09PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignInNjaGVtYVBhdGgiLCAiZXJyU2NoZW1hUGF0aCIgYW5kICJ0b3BTY2hlbWFSZWYiIGFyZSByZXF1aXJlZCB3aXRoICJzY2hlbWEiJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzY2hlbWE6IHNjaGVtYTIsCiAgICAgICAgICBzY2hlbWFQYXRoLAogICAgICAgICAgdG9wU2NoZW1hUmVmLAogICAgICAgICAgZXJyU2NoZW1hUGF0aAogICAgICAgIH07CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKCdlaXRoZXIgImtleXdvcmQiIG9yICJzY2hlbWEiIG11c3QgYmUgcGFzc2VkJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSBnZXRTdWJzY2hlbWE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFEYXRhKHN1YnNjaGVtYSwgaXQsIHsgZGF0YVByb3AsIGRhdGFQcm9wVHlwZTogZHBUeXBlLCBkYXRhLCBkYXRhVHlwZXMsIHByb3BlcnR5TmFtZSB9KSB7CiAgICAgIGlmIChkYXRhICE9PSB2b2lkIDAgJiYgZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAiZGF0YSIgYW5kICJkYXRhUHJvcCIgcGFzc2VkLCBvbmx5IG9uZSBhbGxvd2VkJyk7CiAgICAgIH0KICAgICAgY29uc3QgeyBnZW4gfSA9IGl0OwogICAgICBpZiAoZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHsgZXJyb3JQYXRoLCBkYXRhUGF0aEFyciwgb3B0cyB9ID0gaXQ7CiAgICAgICAgY29uc3QgbmV4dERhdGEgPSBnZW4ubGV0KCJkYXRhIiwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LmRhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCl9YCwgdHJ1ZSk7CiAgICAgICAgZGF0YUNvbnRleHRQcm9wcyhuZXh0RGF0YSk7CiAgICAgICAgc3Vic2NoZW1hLmVycm9yUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShkYXRhUHJvcCwgZHBUeXBlLCBvcHRzLmpzUHJvcGVydHlTeW50YXgpfWA7CiAgICAgICAgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eSA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhUHJvcH1gOwogICAgICAgIHN1YnNjaGVtYS5kYXRhUGF0aEFyciA9IFsuLi5kYXRhUGF0aEFyciwgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eV07CiAgICAgIH0KICAgICAgaWYgKGRhdGEgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IG5leHREYXRhID0gZGF0YSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gZGF0YSA6IGdlbi5sZXQoImRhdGEiLCBkYXRhLCB0cnVlKTsKICAgICAgICBkYXRhQ29udGV4dFByb3BzKG5leHREYXRhKTsKICAgICAgICBpZiAocHJvcGVydHlOYW1lICE9PSB2b2lkIDApCiAgICAgICAgICBzdWJzY2hlbWEucHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lOwogICAgICB9CiAgICAgIGlmIChkYXRhVHlwZXMpCiAgICAgICAgc3Vic2NoZW1hLmRhdGFUeXBlcyA9IGRhdGFUeXBlczsKICAgICAgZnVuY3Rpb24gZGF0YUNvbnRleHRQcm9wcyhfbmV4dERhdGEpIHsKICAgICAgICBzdWJzY2hlbWEuZGF0YSA9IF9uZXh0RGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YUxldmVsID0gaXQuZGF0YUxldmVsICsgMTsKICAgICAgICBzdWJzY2hlbWEuZGF0YVR5cGVzID0gW107CiAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHN1YnNjaGVtYS5wYXJlbnREYXRhID0gaXQuZGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YU5hbWVzID0gWy4uLml0LmRhdGFOYW1lcywgX25leHREYXRhXTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hRGF0YSA9IGV4dGVuZFN1YnNjaGVtYURhdGE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFNb2RlKHN1YnNjaGVtYSwgeyBqdGREaXNjcmltaW5hdG9yLCBqdGRNZXRhZGF0YSwgY29tcG9zaXRlUnVsZSwgY3JlYXRlRXJyb3JzLCBhbGxFcnJvcnMgfSkgewogICAgICBpZiAoY29tcG9zaXRlUnVsZSAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jb21wb3NpdGVSdWxlID0gY29tcG9zaXRlUnVsZTsKICAgICAgaWYgKGNyZWF0ZUVycm9ycyAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jcmVhdGVFcnJvcnMgPSBjcmVhdGVFcnJvcnM7CiAgICAgIGlmIChhbGxFcnJvcnMgIT09IHZvaWQgMCkKICAgICAgICBzdWJzY2hlbWEuYWxsRXJyb3JzID0gYWxsRXJyb3JzOwogICAgICBzdWJzY2hlbWEuanRkRGlzY3JpbWluYXRvciA9IGp0ZERpc2NyaW1pbmF0b3I7CiAgICAgIHN1YnNjaGVtYS5qdGRNZXRhZGF0YSA9IGp0ZE1ldGFkYXRhOwogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4dGVuZFN1YnNjaGVtYU1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtZGVlcC1lcXVhbC1ucG0tMy4xLjMtNzkwZWRjZmNmNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtZGVlcC1lcXVhbC9pbmRleC5qcwp2YXIgcmVxdWlyZV9mYXN0X2RlZXBfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC1kZWVwLWVxdWFsLW5wbS0zLjEuMy03OTBlZGNmY2Y1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC1kZWVwLWVxdWFsL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gZXF1YWwoYSwgYikgewogICAgICBpZiAoYSA9PT0gYikgcmV0dXJuIHRydWU7CiAgICAgIGlmIChhICYmIGIgJiYgdHlwZW9mIGEgPT0gIm9iamVjdCIgJiYgdHlwZW9mIGIgPT0gIm9iamVjdCIpIHsKICAgICAgICBpZiAoYS5jb25zdHJ1Y3RvciAhPT0gYi5jb25zdHJ1Y3RvcikgcmV0dXJuIGZhbHNlOwogICAgICAgIHZhciBsZW5ndGgsIGksIGtleXM7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHsKICAgICAgICAgIGxlbmd0aCA9IGEubGVuZ3RoOwogICAgICAgICAgaWYgKGxlbmd0aCAhPSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgICAgaWYgKCFlcXVhbChhW2ldLCBiW2ldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGlmIChhLmNvbnN0cnVjdG9yID09PSBSZWdFeHApIHJldHVybiBhLnNvdXJjZSA9PT0gYi5zb3VyY2UgJiYgYS5mbGFncyA9PT0gYi5mbGFnczsKICAgICAgICBpZiAoYS52YWx1ZU9mICE9PSBPYmplY3QucHJvdG90eXBlLnZhbHVlT2YpIHJldHVybiBhLnZhbHVlT2YoKSA9PT0gYi52YWx1ZU9mKCk7CiAgICAgICAgaWYgKGEudG9TdHJpbmcgIT09IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcpIHJldHVybiBhLnRvU3RyaW5nKCkgPT09IGIudG9TdHJpbmcoKTsKICAgICAgICBrZXlzID0gT2JqZWN0LmtleXMoYSk7CiAgICAgICAgbGVuZ3RoID0ga2V5cy5sZW5ndGg7CiAgICAgICAgaWYgKGxlbmd0aCAhPT0gT2JqZWN0LmtleXMoYikubGVuZ3RoKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIGtleXNbaV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkgewogICAgICAgICAgdmFyIGtleSA9IGtleXNbaV07CiAgICAgICAgICBpZiAoIWVxdWFsKGFba2V5XSwgYltrZXldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gYSAhPT0gYSAmJiBiICE9PSBiOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbi1zY2hlbWEtdHJhdmVyc2UtbnBtLTEuMC4wLWZiMzY4NGY0ZjAtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uLXNjaGVtYS10cmF2ZXJzZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9qc29uX3NjaGVtYV90cmF2ZXJzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uLXNjaGVtYS10cmF2ZXJzZS1ucG0tMS4wLjAtZmIzNjg0ZjRmMC0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb24tc2NoZW1hLXRyYXZlcnNlL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHRyYXZlcnNlID0gbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24oc2NoZW1hMiwgb3B0cywgY2IpIHsKICAgICAgaWYgKHR5cGVvZiBvcHRzID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjYiA9IG9wdHM7CiAgICAgICAgb3B0cyA9IHt9OwogICAgICB9CiAgICAgIGNiID0gb3B0cy5jYiB8fCBjYjsKICAgICAgdmFyIHByZSA9IHR5cGVvZiBjYiA9PSAiZnVuY3Rpb24iID8gY2IgOiBjYi5wcmUgfHwgZnVuY3Rpb24oKSB7CiAgICAgIH07CiAgICAgIHZhciBwb3N0ID0gY2IucG9zdCB8fCBmdW5jdGlvbigpIHsKICAgICAgfTsKICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwgIiIsIHNjaGVtYTIpOwogICAgfTsKICAgIHRyYXZlcnNlLmtleXdvcmRzID0gewogICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgIGl0ZW1zOiB0cnVlLAogICAgICBjb250YWluczogdHJ1ZSwKICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgIHByb3BlcnR5TmFtZXM6IHRydWUsCiAgICAgIG5vdDogdHJ1ZSwKICAgICAgaWY6IHRydWUsCiAgICAgIHRoZW46IHRydWUsCiAgICAgIGVsc2U6IHRydWUKICAgIH07CiAgICB0cmF2ZXJzZS5hcnJheUtleXdvcmRzID0gewogICAgICBpdGVtczogdHJ1ZSwKICAgICAgYWxsT2Y6IHRydWUsCiAgICAgIGFueU9mOiB0cnVlLAogICAgICBvbmVPZjogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnByb3BzS2V5d29yZHMgPSB7CiAgICAgICRkZWZzOiB0cnVlLAogICAgICBkZWZpbml0aW9uczogdHJ1ZSwKICAgICAgcHJvcGVydGllczogdHJ1ZSwKICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgIGRlcGVuZGVuY2llczogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnNraXBLZXl3b3JkcyA9IHsKICAgICAgZGVmYXVsdDogdHJ1ZSwKICAgICAgZW51bTogdHJ1ZSwKICAgICAgY29uc3Q6IHRydWUsCiAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICBtYXhpbXVtOiB0cnVlLAogICAgICBtaW5pbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNYXhpbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNaW5pbXVtOiB0cnVlLAogICAgICBtdWx0aXBsZU9mOiB0cnVlLAogICAgICBtYXhMZW5ndGg6IHRydWUsCiAgICAgIG1pbkxlbmd0aDogdHJ1ZSwKICAgICAgcGF0dGVybjogdHJ1ZSwKICAgICAgZm9ybWF0OiB0cnVlLAogICAgICBtYXhJdGVtczogdHJ1ZSwKICAgICAgbWluSXRlbXM6IHRydWUsCiAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLAogICAgICBtYXhQcm9wZXJ0aWVzOiB0cnVlLAogICAgICBtaW5Qcm9wZXJ0aWVzOiB0cnVlCiAgICB9OwogICAgZnVuY3Rpb24gX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwganNvblB0ciwgcm9vdFNjaGVtYSwgcGFyZW50SnNvblB0ciwgcGFyZW50S2V5d29yZCwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCkgewogICAgICBpZiAoc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheShzY2hlbWEyKSkgewogICAgICAgIHByZShzY2hlbWEyLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRKc29uUHRyLCBwYXJlbnRLZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2NoZW1hMikgewogICAgICAgICAgdmFyIHNjaCA9IHNjaGVtYTJba2V5XTsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgaWYgKGtleSBpbiB0cmF2ZXJzZS5hcnJheUtleXdvcmRzKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspCiAgICAgICAgICAgICAgICBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2hbaV0sIGpzb25QdHIgKyAiLyIgKyBrZXkgKyAiLyIgKyBpLCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIsIGkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5wcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGZvciAodmFyIHByb3AgaW4gc2NoKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW3Byb3BdLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgZXNjYXBlSnNvblB0cihwcm9wKSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEyLCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gdHJhdmVyc2Uua2V5d29yZHMgfHwgb3B0cy5hbGxLZXlzICYmICEoa2V5IGluIHRyYXZlcnNlLnNraXBLZXl3b3JkcykpIHsKICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoLCBqc29uUHRyICsgIi8iICsga2V5LCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwb3N0KHNjaGVtYTIsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUHRyKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVzb2x2ZS5qcwp2YXIgcmVxdWlyZV9yZXNvbHZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3Jlc29sdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdldFNjaGVtYVJlZnMgPSBleHBvcnRzMi5yZXNvbHZlVXJsID0gZXhwb3J0czIubm9ybWFsaXplSWQgPSBleHBvcnRzMi5fZ2V0RnVsbFBhdGggPSBleHBvcnRzMi5nZXRGdWxsUGF0aCA9IGV4cG9ydHMyLmlubGluZVJlZiA9IHZvaWQgMDsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICB2YXIgdHJhdmVyc2UgPSByZXF1aXJlX2pzb25fc2NoZW1hX3RyYXZlcnNlKCk7CiAgICB2YXIgU0lNUExFX0lOTElORUQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJ0eXBlIiwKICAgICAgImZvcm1hdCIsCiAgICAgICJwYXR0ZXJuIiwKICAgICAgIm1heExlbmd0aCIsCiAgICAgICJtaW5MZW5ndGgiLAogICAgICAibWF4UHJvcGVydGllcyIsCiAgICAgICJtaW5Qcm9wZXJ0aWVzIiwKICAgICAgIm1heEl0ZW1zIiwKICAgICAgIm1pbkl0ZW1zIiwKICAgICAgIm1heGltdW0iLAogICAgICAibWluaW11bSIsCiAgICAgICJ1bmlxdWVJdGVtcyIsCiAgICAgICJtdWx0aXBsZU9mIiwKICAgICAgInJlcXVpcmVkIiwKICAgICAgImVudW0iLAogICAgICAiY29uc3QiCiAgICBdKTsKICAgIGZ1bmN0aW9uIGlubGluZVJlZihzY2hlbWEyLCBsaW1pdCA9IHRydWUpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgaWYgKGxpbWl0ID09PSB0cnVlKQogICAgICAgIHJldHVybiAhaGFzUmVmKHNjaGVtYTIpOwogICAgICBpZiAoIWxpbWl0KQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgcmV0dXJuIGNvdW50S2V5cyhzY2hlbWEyKSA8PSBsaW1pdDsKICAgIH0KICAgIGV4cG9ydHMyLmlubGluZVJlZiA9IGlubGluZVJlZjsKICAgIHZhciBSRUZfS0VZV09SRFMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICIkcmVmIiwKICAgICAgIiRyZWN1cnNpdmVSZWYiLAogICAgICAiJHJlY3Vyc2l2ZUFuY2hvciIsCiAgICAgICIkZHluYW1pY1JlZiIsCiAgICAgICIkZHluYW1pY0FuY2hvciIKICAgIF0pOwogICAgZnVuY3Rpb24gaGFzUmVmKHNjaGVtYTIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmIChSRUZfS0VZV09SRFMuaGFzKGtleSkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2tleV07CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSAmJiBzY2guc29tZShoYXNSZWYpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIgJiYgaGFzUmVmKHNjaCkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBmdW5jdGlvbiBjb3VudEtleXMoc2NoZW1hMikgewogICAgICBsZXQgY291bnQgPSAwOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIiRyZWYiKQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICAgIGNvdW50Kys7CiAgICAgICAgaWYgKFNJTVBMRV9JTkxJTkVELmhhcyhrZXkpKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyW2tleV0gPT0gIm9iamVjdCIpIHsKICAgICAgICAgICgwLCB1dGlsXzEuZWFjaEl0ZW0pKHNjaGVtYTJba2V5XSwgKHNjaCkgPT4gY291bnQgKz0gY291bnRLZXlzKHNjaCkpOwogICAgICAgIH0KICAgICAgICBpZiAoY291bnQgPT09IEluZmluaXR5KQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBjb3VudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEZ1bGxQYXRoKHJlc29sdmVyLCBpZCA9ICIiLCBub3JtYWxpemUpIHsKICAgICAgaWYgKG5vcm1hbGl6ZSAhPT0gZmFsc2UpCiAgICAgICAgaWQgPSBub3JtYWxpemVJZChpZCk7CiAgICAgIGNvbnN0IHAgPSByZXNvbHZlci5wYXJzZShpZCk7CiAgICAgIHJldHVybiBfZ2V0RnVsbFBhdGgocmVzb2x2ZXIsIHApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RnVsbFBhdGggPSBnZXRGdWxsUGF0aDsKICAgIGZ1bmN0aW9uIF9nZXRGdWxsUGF0aChyZXNvbHZlciwgcCkgewogICAgICBjb25zdCBzZXJpYWxpemVkID0gcmVzb2x2ZXIuc2VyaWFsaXplKHApOwogICAgICByZXR1cm4gc2VyaWFsaXplZC5zcGxpdCgiIyIpWzBdICsgIiMiOwogICAgfQogICAgZXhwb3J0czIuX2dldEZ1bGxQYXRoID0gX2dldEZ1bGxQYXRoOwogICAgdmFyIFRSQUlMSU5HX1NMQVNIX0hBU0ggPSAvI1wvPyQvOwogICAgZnVuY3Rpb24gbm9ybWFsaXplSWQoaWQpIHsKICAgICAgcmV0dXJuIGlkID8gaWQucmVwbGFjZShUUkFJTElOR19TTEFTSF9IQVNILCAiIikgOiAiIjsKICAgIH0KICAgIGV4cG9ydHMyLm5vcm1hbGl6ZUlkID0gbm9ybWFsaXplSWQ7CiAgICBmdW5jdGlvbiByZXNvbHZlVXJsKHJlc29sdmVyLCBiYXNlSWQsIGlkKSB7CiAgICAgIGlkID0gbm9ybWFsaXplSWQoaWQpOwogICAgICByZXR1cm4gcmVzb2x2ZXIucmVzb2x2ZShiYXNlSWQsIGlkKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVVcmwgPSByZXNvbHZlVXJsOwogICAgdmFyIEFOQ0hPUiA9IC9eW2Etel9dWy1hLXowLTkuX10qJC9pOwogICAgZnVuY3Rpb24gZ2V0U2NoZW1hUmVmcyhzY2hlbWEyLCBiYXNlSWQpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4ge307CiAgICAgIGNvbnN0IHsgc2NoZW1hSWQsIHVyaVJlc29sdmVyIH0gPSB0aGlzLm9wdHM7CiAgICAgIGNvbnN0IHNjaElkID0gbm9ybWFsaXplSWQoc2NoZW1hMltzY2hlbWFJZF0gfHwgYmFzZUlkKTsKICAgICAgY29uc3QgYmFzZUlkcyA9IHsgIiI6IHNjaElkIH07CiAgICAgIGNvbnN0IHBhdGhQcmVmaXggPSBnZXRGdWxsUGF0aCh1cmlSZXNvbHZlciwgc2NoSWQsIGZhbHNlKTsKICAgICAgY29uc3QgbG9jYWxSZWZzID0ge307CiAgICAgIGNvbnN0IHNjaGVtYVJlZnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICB0cmF2ZXJzZShzY2hlbWEyLCB7IGFsbEtleXM6IHRydWUgfSwgKHNjaCwganNvblB0ciwgXywgcGFyZW50SnNvblB0cikgPT4gewogICAgICAgIGlmIChwYXJlbnRKc29uUHRyID09PSB2b2lkIDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZnVsbFBhdGggPSBwYXRoUHJlZml4ICsganNvblB0cjsKICAgICAgICBsZXQgaW5uZXJCYXNlSWQgPSBiYXNlSWRzW3BhcmVudEpzb25QdHJdOwogICAgICAgIGlmICh0eXBlb2Ygc2NoW3NjaGVtYUlkXSA9PSAic3RyaW5nIikKICAgICAgICAgIGlubmVyQmFzZUlkID0gYWRkUmVmLmNhbGwodGhpcywgc2NoW3NjaGVtYUlkXSk7CiAgICAgICAgYWRkQW5jaG9yLmNhbGwodGhpcywgc2NoLiRhbmNob3IpOwogICAgICAgIGFkZEFuY2hvci5jYWxsKHRoaXMsIHNjaC4kZHluYW1pY0FuY2hvcik7CiAgICAgICAgYmFzZUlkc1tqc29uUHRyXSA9IGlubmVyQmFzZUlkOwogICAgICAgIGZ1bmN0aW9uIGFkZFJlZihyZWYpIHsKICAgICAgICAgIGNvbnN0IF9yZXNvbHZlID0gdGhpcy5vcHRzLnVyaVJlc29sdmVyLnJlc29sdmU7CiAgICAgICAgICByZWYgPSBub3JtYWxpemVJZChpbm5lckJhc2VJZCA/IF9yZXNvbHZlKGlubmVyQmFzZUlkLCByZWYpIDogcmVmKTsKICAgICAgICAgIGlmIChzY2hlbWFSZWZzLmhhcyhyZWYpKQogICAgICAgICAgICB0aHJvdyBhbWJpZ3VvcyhyZWYpOwogICAgICAgICAgc2NoZW1hUmVmcy5hZGQocmVmKTsKICAgICAgICAgIGxldCBzY2hPclJlZiA9IHRoaXMucmVmc1tyZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAic3RyaW5nIikKICAgICAgICAgICAgc2NoT3JSZWYgPSB0aGlzLnJlZnNbc2NoT3JSZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAib2JqZWN0IikgewogICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgc2NoT3JSZWYuc2NoZW1hLCByZWYpOwogICAgICAgICAgfSBlbHNlIGlmIChyZWYgIT09IG5vcm1hbGl6ZUlkKGZ1bGxQYXRoKSkgewogICAgICAgICAgICBpZiAocmVmWzBdID09PSAiIyIpIHsKICAgICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgbG9jYWxSZWZzW3JlZl0sIHJlZik7CiAgICAgICAgICAgICAgbG9jYWxSZWZzW3JlZl0gPSBzY2g7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdGhpcy5yZWZzW3JlZl0gPSBmdWxsUGF0aDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHJlZjsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWRkQW5jaG9yKGFuY2hvcikgewogICAgICAgICAgaWYgKHR5cGVvZiBhbmNob3IgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKCFBTkNIT1IudGVzdChhbmNob3IpKQogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhbmNob3IgIiR7YW5jaG9yfSJgKTsKICAgICAgICAgICAgYWRkUmVmLmNhbGwodGhpcywgYCMke2FuY2hvcn1gKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gbG9jYWxSZWZzOwogICAgICBmdW5jdGlvbiBjaGVja0FtYmlndW9zUmVmKHNjaDEsIHNjaDIsIHJlZikgewogICAgICAgIGlmIChzY2gyICE9PSB2b2lkIDAgJiYgIWVxdWFsKHNjaDEsIHNjaDIpKQogICAgICAgICAgdGhyb3cgYW1iaWd1b3MocmVmKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhbWJpZ3VvcyhyZWYpIHsKICAgICAgICByZXR1cm4gbmV3IEVycm9yKGByZWZlcmVuY2UgIiR7cmVmfSIgcmVzb2x2ZXMgdG8gbW9yZSB0aGFuIG9uZSBzY2hlbWFgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0U2NoZW1hUmVmcyA9IGdldFNjaGVtYVJlZnM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzCnZhciByZXF1aXJlX3ZhbGlkYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXREYXRhID0gZXhwb3J0czIuS2V5d29yZEN4dCA9IGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdm9pZCAwOwogICAgdmFyIGJvb2xTY2hlbWFfMSA9IHJlcXVpcmVfYm9vbFNjaGVtYSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZGF0YVR5cGVfMiA9IHJlcXVpcmVfZGF0YVR5cGUoKTsKICAgIHZhciBkZWZhdWx0c18xID0gcmVxdWlyZV9kZWZhdWx0cygpOwogICAgdmFyIGtleXdvcmRfMSA9IHJlcXVpcmVfa2V5d29yZCgpOwogICAgdmFyIHN1YnNjaGVtYV8xID0gcmVxdWlyZV9zdWJzY2hlbWEoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlRnVuY3Rpb25Db2RlKGl0KSB7CiAgICAgIGlmIChpc1NjaGVtYU9iaihpdCkpIHsKICAgICAgICBjaGVja0tleXdvcmRzKGl0KTsKICAgICAgICBpZiAoc2NoZW1hQ3h0SGFzUnVsZXMoaXQpKSB7CiAgICAgICAgICB0b3BTY2hlbWFPYmpDb2RlKGl0KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0KICAgICAgdmFsaWRhdGVGdW5jdGlvbihpdCwgKCkgPT4gKDAsIGJvb2xTY2hlbWFfMS50b3BCb29sT3JFbXB0eVNjaGVtYSkoaXQpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdmFsaWRhdGVGdW5jdGlvbkNvZGU7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUZ1bmN0aW9uKHsgZ2VuLCB2YWxpZGF0ZU5hbWUsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hRW52LCBvcHRzIH0sIGJvZHkpIHsKICAgICAgaWYgKG9wdHMuY29kZS5lczUpIHsKICAgICAgICBnZW4uZnVuYyh2YWxpZGF0ZU5hbWUsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCJ1c2Ugc3RyaWN0IjsgJHtmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpfWApOwogICAgICAgICAgZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKTsKICAgICAgICAgIGdlbi5jb2RlKGJvZHkpOwogICAgICAgIH0pOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5mdW5jKHZhbGlkYXRlTmFtZSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5kYXRhfSwgJHtkZXN0cnVjdHVyZVZhbEN4dChvcHRzKX1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiBnZW4uY29kZShmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpKS5jb2RlKGJvZHkpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHQob3B0cykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB7JHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofT0iIiwgJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX0sICR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfT0ke25hbWVzXzEuZGVmYXVsdC5kYXRhfSR7b3B0cy5keW5hbWljUmVmID8gKDAsIGNvZGVnZW5fMS5fKWAsICR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfT17fWAgOiBjb2RlZ2VuXzEubmlsfX09e31gOwogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKSB7CiAgICAgIGdlbi5pZihuYW1lc18xLmRlZmF1bHQudmFsQ3h0LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhfWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX1gKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfWApOwogICAgICAgIGlmIChvcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfWApOwogICAgICB9LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCIiYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucm9vdERhdGEsIG5hbWVzXzEuZGVmYXVsdC5kYXRhKTsKICAgICAgICBpZiAob3B0cy5keW5hbWljUmVmKQogICAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnMsICgwLCBjb2RlZ2VuXzEuXylge31gKTsKICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiB0b3BTY2hlbWFPYmpDb2RlKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzLCBnZW4gfSA9IGl0OwogICAgICB2YWxpZGF0ZUZ1bmN0aW9uKGl0LCAoKSA9PiB7CiAgICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgJiYgc2NoZW1hMi4kY29tbWVudCkKICAgICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgICBjaGVja05vRGVmYXVsdChpdCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQudkVycm9ycywgbnVsbCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAwKTsKICAgICAgICBpZiAob3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJlc2V0RXZhbHVhdGVkKGl0KTsKICAgICAgICB0eXBlQW5kS2V5d29yZHMoaXQpOwogICAgICAgIHJldHVyblJlc3VsdHMoaXQpOwogICAgICB9KTsKICAgICAgcmV0dXJuOwogICAgfQogICAgZnVuY3Rpb24gcmVzZXRFdmFsdWF0ZWQoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSB9ID0gaXQ7CiAgICAgIGl0LmV2YWx1YXRlZCA9IGdlbi5jb25zdCgiZXZhbHVhdGVkIiwgKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXZhbHVhdGVkYCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljUHJvcHNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9LnByb3BzYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljSXRlbXNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9Lml0ZW1zYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICB9CiAgICBmdW5jdGlvbiBmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpIHsKICAgICAgY29uc3Qgc2NoSWQgPSB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiBzY2hlbWEyW29wdHMuc2NoZW1hSWRdOwogICAgICByZXR1cm4gc2NoSWQgJiYgKG9wdHMuY29kZS5zb3VyY2UgfHwgb3B0cy5jb2RlLnByb2Nlc3MpID8gKDAsIGNvZGVnZW5fMS5fKWAvKiMgc291cmNlVVJMPSR7c2NoSWR9ICovYCA6IGNvZGVnZW5fMS5uaWw7CiAgICB9CiAgICBmdW5jdGlvbiBzdWJzY2hlbWFDb2RlKGl0LCB2YWxpZCkgewogICAgICBpZiAoaXNTY2hlbWFPYmooaXQpKSB7CiAgICAgICAgY2hlY2tLZXl3b3JkcyhpdCk7CiAgICAgICAgaWYgKHNjaGVtYUN4dEhhc1J1bGVzKGl0KSkgewogICAgICAgICAgc3ViU2NoZW1hT2JqQ29kZShpdCwgdmFsaWQpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgfQogICAgICAoMCwgYm9vbFNjaGVtYV8xLmJvb2xPckVtcHR5U2NoZW1hKShpdCwgdmFsaWQpOwogICAgfQogICAgZnVuY3Rpb24gc2NoZW1hQ3h0SGFzUnVsZXMoeyBzY2hlbWE6IHNjaGVtYTIsIHNlbGY6IHNlbGYyIH0pIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gIXNjaGVtYTI7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYTIpCiAgICAgICAgaWYgKHNlbGYyLlJVTEVTLmFsbFtrZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU2NoZW1hT2JqKGl0KSB7CiAgICAgIHJldHVybiB0eXBlb2YgaXQuc2NoZW1hICE9ICJib29sZWFuIjsKICAgIH0KICAgIGZ1bmN0aW9uIHN1YlNjaGVtYU9iakNvZGUoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBnZW4sIG9wdHMgfSA9IGl0OwogICAgICBpZiAob3B0cy4kY29tbWVudCAmJiBzY2hlbWEyLiRjb21tZW50KQogICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgdXBkYXRlQ29udGV4dChpdCk7CiAgICAgIGNoZWNrQXN5bmNTY2hlbWEoaXQpOwogICAgICBjb25zdCBlcnJzQ291bnQgPSBnZW4uY29uc3QoIl9lcnJzIiwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycyk7CiAgICAgIHR5cGVBbmRLZXl3b3JkcyhpdCwgZXJyc0NvdW50KTsKICAgICAgZ2VuLnZhcih2YWxpZCwgKDAsIGNvZGVnZW5fMS5fKWAke2VycnNDb3VudH0gPT09ICR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc31gKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZHMoaXQpIHsKICAgICAgKDAsIHV0aWxfMS5jaGVja1Vua25vd25SdWxlcykoaXQpOwogICAgICBjaGVja1JlZnNBbmRLZXl3b3JkcyhpdCk7CiAgICB9CiAgICBmdW5jdGlvbiB0eXBlQW5kS2V5d29yZHMoaXQsIGVycnNDb3VudCkgewogICAgICBpZiAoaXQub3B0cy5qdGQpCiAgICAgICAgcmV0dXJuIHNjaGVtYUtleXdvcmRzKGl0LCBbXSwgZmFsc2UsIGVycnNDb3VudCk7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIGRhdGFUeXBlXzEuZ2V0U2NoZW1hVHlwZXMpKGl0LnNjaGVtYSk7CiAgICAgIGNvbnN0IGNoZWNrZWRUeXBlcyA9ICgwLCBkYXRhVHlwZV8xLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUpKGl0LCB0eXBlcyk7CiAgICAgIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgIWNoZWNrZWRUeXBlcywgZXJyc0NvdW50KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrUmVmc0FuZEtleXdvcmRzKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEyLiRyZWYgJiYgb3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgJiYgKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgc2VsZjIuUlVMRVMpKSB7CiAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4oYCRyZWY6IGtleXdvcmRzIGlnbm9yZWQgaW4gc2NoZW1hIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrTm9EZWZhdWx0KGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIuZGVmYXVsdCAhPT0gdm9pZCAwICYmIG9wdHMudXNlRGVmYXVsdHMgJiYgb3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICJkZWZhdWx0IGlzIGlnbm9yZWQgaW4gdGhlIHNjaGVtYSByb290Iik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUNvbnRleHQoaXQpIHsKICAgICAgY29uc3Qgc2NoSWQgPSBpdC5zY2hlbWFbaXQub3B0cy5zY2hlbWFJZF07CiAgICAgIGlmIChzY2hJZCkKICAgICAgICBpdC5iYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGl0LmJhc2VJZCwgc2NoSWQpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY1NjaGVtYShpdCkgewogICAgICBpZiAoaXQuc2NoZW1hLiRhc3luYyAmJiAhaXQuc2NoZW1hRW52LiRhc3luYykKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIHNjaGVtYSBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gY29tbWVudEtleXdvcmQoeyBnZW4sIHNjaGVtYUVudiwgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzIH0pIHsKICAgICAgY29uc3QgbXNnID0gc2NoZW1hMi4kY29tbWVudDsKICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgPT09IHRydWUpIHsKICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnNlbGZ9LmxvZ2dlci5sb2coJHttc2d9KWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcHRzLiRjb21tZW50ID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjb25zdCBzY2hlbWFQYXRoID0gKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyU2NoZW1hUGF0aH0vJGNvbW1lbnRgOwogICAgICAgIGNvbnN0IHJvb3ROYW1lID0gZ2VuLnNjb3BlVmFsdWUoInJvb3QiLCB7IHJlZjogc2NoZW1hRW52LnJvb3QgfSk7CiAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5zZWxmfS5vcHRzLiRjb21tZW50KCR7bXNnfSwgJHtzY2hlbWFQYXRofSwgJHtyb290TmFtZX0uc2NoZW1hKWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5SZXN1bHRzKGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFFbnYsIHZhbGlkYXRlTmFtZSwgVmFsaWRhdGlvbkVycm9yLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9ID09PSAwYCwgKCkgPT4gZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSksICgpID0+IGdlbi50aHJvdygoMCwgY29kZWdlbl8xLl8pYG5ldyAke1ZhbGlkYXRpb25FcnJvcn0oJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30pYCkpOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXJyb3JzYCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICAgIGlmIChvcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgYXNzaWduRXZhbHVhdGVkKGl0KTsKICAgICAgICBnZW4ucmV0dXJuKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gMGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhc3NpZ25FdmFsdWF0ZWQoeyBnZW4sIGV2YWx1YXRlZCwgcHJvcHMsIGl0ZW1zIH0pIHsKICAgICAgaWYgKHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5wcm9wc2AsIHByb3BzKTsKICAgICAgaWYgKGl0ZW1zIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5pdGVtc2AsIGl0ZW1zKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgdHlwZUVycm9ycywgZXJyc0NvdW50KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGFsbEVycm9ycywgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICBjb25zdCB7IFJVTEVTIH0gPSBzZWxmMjsKICAgICAgaWYgKHNjaGVtYTIuJHJlZiAmJiAob3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgfHwgISgwLCB1dGlsXzEuc2NoZW1hSGFzUnVsZXNCdXRSZWYpKHNjaGVtYTIsIFJVTEVTKSkpIHsKICAgICAgICBnZW4uYmxvY2soKCkgPT4ga2V5d29yZENvZGUoaXQsICIkcmVmIiwgUlVMRVMuYWxsLiRyZWYuZGVmaW5pdGlvbikpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAoIW9wdHMuanRkKQogICAgICAgIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IGdyb3VwIG9mIFJVTEVTLnJ1bGVzKQogICAgICAgICAgZ3JvdXBLZXl3b3Jkcyhncm91cCk7CiAgICAgICAgZ3JvdXBLZXl3b3JkcyhSVUxFUy5wb3N0KTsKICAgICAgfSk7CiAgICAgIGZ1bmN0aW9uIGdyb3VwS2V5d29yZHMoZ3JvdXApIHsKICAgICAgICBpZiAoISgwLCBhcHBsaWNhYmlsaXR5XzEuc2hvdWxkVXNlR3JvdXApKHNjaGVtYTIsIGdyb3VwKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAoZ3JvdXAudHlwZSkgewogICAgICAgICAgZ2VuLmlmKCgwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGUpKGdyb3VwLnR5cGUsIGRhdGEsIG9wdHMuc3RyaWN0TnVtYmVycykpOwogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgICBpZiAodHlwZXMubGVuZ3RoID09PSAxICYmIHR5cGVzWzBdID09PSBncm91cC50eXBlICYmIHR5cGVFcnJvcnMpIHsKICAgICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICAgICAgKDAsIGRhdGFUeXBlXzIucmVwb3J0VHlwZUVycm9yKShpdCk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgfQogICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gJHtlcnJzQ291bnQgfHwgMH1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBvcHRzOiB7IHVzZURlZmF1bHRzIH0gfSA9IGl0OwogICAgICBpZiAodXNlRGVmYXVsdHMpCiAgICAgICAgKDAsIGRlZmF1bHRzXzEuYXNzaWduRGVmYXVsdHMpKGl0LCBncm91cC50eXBlKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IHJ1bGUgb2YgZ3JvdXAucnVsZXMpIHsKICAgICAgICAgIGlmICgoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKHNjaGVtYTIsIHJ1bGUpKSB7CiAgICAgICAgICAgIGtleXdvcmRDb2RlKGl0LCBydWxlLmtleXdvcmQsIHJ1bGUuZGVmaW5pdGlvbiwgZ3JvdXAudHlwZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmIChpdC5zY2hlbWFFbnYubWV0YSB8fCAhaXQub3B0cy5zdHJpY3RUeXBlcykKICAgICAgICByZXR1cm47CiAgICAgIGNoZWNrQ29udGV4dFR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGlmICghaXQub3B0cy5hbGxvd1VuaW9uVHlwZXMpCiAgICAgICAgY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGNoZWNrS2V5d29yZFR5cGVzKGl0LCBpdC5kYXRhVHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tDb250ZXh0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmICghdHlwZXMubGVuZ3RoKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKCFpdC5kYXRhVHlwZXMubGVuZ3RoKSB7CiAgICAgICAgaXQuZGF0YVR5cGVzID0gdHlwZXM7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHR5cGVzLmZvckVhY2goKHQpID0+IHsKICAgICAgICBpZiAoIWluY2x1ZGVzVHlwZShpdC5kYXRhVHlwZXMsIHQpKSB7CiAgICAgICAgICBzdHJpY3RUeXBlc0Vycm9yKGl0LCBgdHlwZSAiJHt0fSIgbm90IGFsbG93ZWQgYnkgY29udGV4dCAiJHtpdC5kYXRhVHlwZXMuam9pbigiLCIpfSJgKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgICBuYXJyb3dTY2hlbWFUeXBlcyhpdCwgdHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0cykgewogICAgICBpZiAodHMubGVuZ3RoID4gMSAmJiAhKHRzLmxlbmd0aCA9PT0gMiAmJiB0cy5pbmNsdWRlcygibnVsbCIpKSkgewogICAgICAgIHN0cmljdFR5cGVzRXJyb3IoaXQsICJ1c2UgYWxsb3dVbmlvblR5cGVzIHRvIGFsbG93IHVuaW9uIHR5cGUga2V5d29yZCIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja0tleXdvcmRUeXBlcyhpdCwgdHMpIHsKICAgICAgY29uc3QgcnVsZXMgPSBpdC5zZWxmLlJVTEVTLmFsbDsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIHJ1bGVzKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHJ1bGVzW2tleXdvcmRdOwogICAgICAgIGlmICh0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiAmJiAoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKGl0LnNjaGVtYSwgcnVsZSkpIHsKICAgICAgICAgIGNvbnN0IHsgdHlwZTogdHlwZTIgfSA9IHJ1bGUuZGVmaW5pdGlvbjsKICAgICAgICAgIGlmICh0eXBlMi5sZW5ndGggJiYgIXR5cGUyLnNvbWUoKHQpID0+IGhhc0FwcGxpY2FibGVUeXBlKHRzLCB0KSkpIHsKICAgICAgICAgICAgc3RyaWN0VHlwZXNFcnJvcihpdCwgYG1pc3NpbmcgdHlwZSAiJHt0eXBlMi5qb2luKCIsIil9IiBmb3Iga2V5d29yZCAiJHtrZXl3b3JkfSJgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGhhc0FwcGxpY2FibGVUeXBlKHNjaFRzLCBrd2RUKSB7CiAgICAgIHJldHVybiBzY2hUcy5pbmNsdWRlcyhrd2RUKSB8fCBrd2RUID09PSAibnVtYmVyIiAmJiBzY2hUcy5pbmNsdWRlcygiaW50ZWdlciIpOwogICAgfQogICAgZnVuY3Rpb24gaW5jbHVkZXNUeXBlKHRzLCB0KSB7CiAgICAgIHJldHVybiB0cy5pbmNsdWRlcyh0KSB8fCB0ID09PSAiaW50ZWdlciIgJiYgdHMuaW5jbHVkZXMoIm51bWJlciIpOwogICAgfQogICAgZnVuY3Rpb24gbmFycm93U2NoZW1hVHlwZXMoaXQsIHdpdGhUeXBlcykgewogICAgICBjb25zdCB0cyA9IFtdOwogICAgICBmb3IgKGNvbnN0IHQgb2YgaXQuZGF0YVR5cGVzKSB7CiAgICAgICAgaWYgKGluY2x1ZGVzVHlwZSh3aXRoVHlwZXMsIHQpKQogICAgICAgICAgdHMucHVzaCh0KTsKICAgICAgICBlbHNlIGlmICh3aXRoVHlwZXMuaW5jbHVkZXMoImludGVnZXIiKSAmJiB0ID09PSAibnVtYmVyIikKICAgICAgICAgIHRzLnB1c2goImludGVnZXIiKTsKICAgICAgfQogICAgICBpdC5kYXRhVHlwZXMgPSB0czsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmljdFR5cGVzRXJyb3IoaXQsIG1zZykgewogICAgICBjb25zdCBzY2hlbWFQYXRoID0gaXQuc2NoZW1hRW52LmJhc2VJZCArIGl0LmVyclNjaGVtYVBhdGg7CiAgICAgIG1zZyArPSBgIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0VHlwZXMpYDsKICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBtc2csIGl0Lm9wdHMuc3RyaWN0VHlwZXMpOwogICAgfQogICAgdmFyIEtleXdvcmRDeHQgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGl0LCBkZWYsIGtleXdvcmQpIHsKICAgICAgICAoMCwga2V5d29yZF8xLnZhbGlkYXRlS2V5d29yZFVzYWdlKShpdCwgZGVmLCBrZXl3b3JkKTsKICAgICAgICB0aGlzLmdlbiA9IGl0LmdlbjsKICAgICAgICB0aGlzLmFsbEVycm9ycyA9IGl0LmFsbEVycm9yczsKICAgICAgICB0aGlzLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgIHRoaXMuZGF0YSA9IGl0LmRhdGE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgdGhpcy4kZGF0YSA9IGRlZi4kZGF0YSAmJiBpdC5vcHRzLiRkYXRhICYmIHRoaXMuc2NoZW1hICYmIHRoaXMuc2NoZW1hLiRkYXRhOwogICAgICAgIHRoaXMuc2NoZW1hVmFsdWUgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgdGhpcy5zY2hlbWEsIGtleXdvcmQsIHRoaXMuJGRhdGEpOwogICAgICAgIHRoaXMuc2NoZW1hVHlwZSA9IGRlZi5zY2hlbWFUeXBlOwogICAgICAgIHRoaXMucGFyZW50U2NoZW1hID0gaXQuc2NoZW1hOwogICAgICAgIHRoaXMucGFyYW1zID0ge307CiAgICAgICAgdGhpcy5pdCA9IGl0OwogICAgICAgIHRoaXMuZGVmID0gZGVmOwogICAgICAgIGlmICh0aGlzLiRkYXRhKSB7CiAgICAgICAgICB0aGlzLnNjaGVtYUNvZGUgPSBpdC5nZW4uY29uc3QoInZTY2hlbWEiLCBnZXREYXRhKHRoaXMuJGRhdGEsIGl0KSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuc2NoZW1hQ29kZSA9IHRoaXMuc2NoZW1hVmFsdWU7CiAgICAgICAgICBpZiAoISgwLCBrZXl3b3JkXzEudmFsaWRTY2hlbWFUeXBlKSh0aGlzLnNjaGVtYSwgZGVmLnNjaGVtYVR5cGUsIGRlZi5hbGxvd1VuZGVmaW5lZCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2tleXdvcmR9IHZhbHVlIG11c3QgYmUgJHtKU09OLnN0cmluZ2lmeShkZWYuc2NoZW1hVHlwZSl9YCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgiY29kZSIgaW4gZGVmID8gZGVmLnRyYWNrRXJyb3JzIDogZGVmLmVycm9ycyAhPT0gZmFsc2UpIHsKICAgICAgICAgIHRoaXMuZXJyc0NvdW50ID0gaXQuZ2VuLmNvbnN0KCJfZXJycyIsIG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMpOwogICAgICAgIH0KICAgICAgfQogICAgICByZXN1bHQoY29uZGl0aW9uLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5mYWlsUmVzdWx0KCgwLCBjb2RlZ2VuXzEubm90KShjb25kaXRpb24pLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsUmVzdWx0KGNvbmRpdGlvbiwgc3VjY2Vzc0FjdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZ2VuLmlmKGNvbmRpdGlvbik7CiAgICAgICAgaWYgKGZhaWxBY3Rpb24pCiAgICAgICAgICBmYWlsQWN0aW9uKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgIGlmIChzdWNjZXNzQWN0aW9uKSB7CiAgICAgICAgICB0aGlzLmdlbi5lbHNlKCk7CiAgICAgICAgICBzdWNjZXNzQWN0aW9uKCk7CiAgICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICAgIHRoaXMuZ2VuLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uZW5kSWYoKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhpcy5nZW4uZWxzZSgpOwogICAgICAgIH0KICAgICAgfQogICAgICBwYXNzKGNvbmRpdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZmFpbFJlc3VsdCgoMCwgY29kZWdlbl8xLm5vdCkoY29uZGl0aW9uKSwgdm9pZCAwLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsKGNvbmRpdGlvbikgewogICAgICAgIGlmIChjb25kaXRpb24gPT09IHZvaWQgMCkgewogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgICAgaWYgKCF0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uaWYoZmFsc2UpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLmdlbi5pZihjb25kaXRpb24pOwogICAgICAgIHRoaXMuZXJyb3IoKTsKICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICB0aGlzLmdlbi5lbmRJZigpOwogICAgICAgIGVsc2UKICAgICAgICAgIHRoaXMuZ2VuLmVsc2UoKTsKICAgICAgfQogICAgICBmYWlsJGRhdGEoY29uZGl0aW9uKSB7CiAgICAgICAgaWYgKCF0aGlzLiRkYXRhKQogICAgICAgICAgcmV0dXJuIHRoaXMuZmFpbChjb25kaXRpb24pOwogICAgICAgIGNvbnN0IHsgc2NoZW1hQ29kZSB9ID0gdGhpczsKICAgICAgICB0aGlzLmZhaWwoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ICE9PSB1bmRlZmluZWQgJiYgKCR7KDAsIGNvZGVnZW5fMS5vcikodGhpcy5pbnZhbGlkJGRhdGEoKSwgY29uZGl0aW9uKX0pYCk7CiAgICAgIH0KICAgICAgZXJyb3IoYXBwZW5kLCBlcnJvclBhcmFtcywgZXJyb3JQYXRocykgewogICAgICAgIGlmIChlcnJvclBhcmFtcykgewogICAgICAgICAgdGhpcy5zZXRQYXJhbXMoZXJyb3JQYXJhbXMpOwogICAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgICAgIHRoaXMuc2V0UGFyYW1zKHt9KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICBfZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKSB7CiAgICAgICAgOwogICAgICAgIChhcHBlbmQgPyBlcnJvcnNfMS5yZXBvcnRFeHRyYUVycm9yIDogZXJyb3JzXzEucmVwb3J0RXJyb3IpKHRoaXMsIHRoaXMuZGVmLmVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICAkZGF0YUVycm9yKCkgewogICAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikodGhpcywgdGhpcy5kZWYuJGRhdGFFcnJvciB8fCBlcnJvcnNfMS5rZXl3b3JkJERhdGFFcnJvcik7CiAgICAgIH0KICAgICAgcmVzZXQoKSB7CiAgICAgICAgaWYgKHRoaXMuZXJyc0NvdW50ID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZCAidHJhY2tFcnJvcnMiIHRvIGtleXdvcmQgZGVmaW5pdGlvbicpOwogICAgICAgICgwLCBlcnJvcnNfMS5yZXNldEVycm9yc0NvdW50KSh0aGlzLmdlbiwgdGhpcy5lcnJzQ291bnQpOwogICAgICB9CiAgICAgIG9rKGNvbmQpIHsKICAgICAgICBpZiAoIXRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgdGhpcy5nZW4uaWYoY29uZCk7CiAgICAgIH0KICAgICAgc2V0UGFyYW1zKG9iaiwgYXNzaWduKSB7CiAgICAgICAgaWYgKGFzc2lnbikKICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5wYXJhbXMsIG9iaik7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5wYXJhbXMgPSBvYmo7CiAgICAgIH0KICAgICAgYmxvY2skZGF0YSh2YWxpZCwgY29kZUJsb2NrLCAkZGF0YVZhbGlkID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHRoaXMuZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICAgIHRoaXMuY2hlY2skZGF0YSh2YWxpZCwgJGRhdGFWYWxpZCk7CiAgICAgICAgICBjb2RlQmxvY2soKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBjaGVjayRkYXRhKHZhbGlkID0gY29kZWdlbl8xLm5pbCwgJGRhdGFWYWxpZCA9IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBpZiAoIXRoaXMuJGRhdGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUNvZGUsIHNjaGVtYVR5cGUsIGRlZiB9ID0gdGhpczsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5vcikoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ID09PSB1bmRlZmluZWRgLCAkZGF0YVZhbGlkKSk7CiAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgaWYgKHNjaGVtYVR5cGUubGVuZ3RoIHx8IGRlZi52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgICAgZ2VuLmVsc2VJZih0aGlzLmludmFsaWQkZGF0YSgpKTsKICAgICAgICAgIHRoaXMuJGRhdGFFcnJvcigpOwogICAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGdlbi5lbHNlKCk7CiAgICAgIH0KICAgICAgaW52YWxpZCRkYXRhKCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFDb2RlLCBzY2hlbWFUeXBlLCBkZWYsIGl0IH0gPSB0aGlzOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm9yKSh3cm9uZyREYXRhVHlwZSgpLCBpbnZhbGlkJERhdGFTY2hlbWEoKSk7CiAgICAgICAgZnVuY3Rpb24gd3JvbmckRGF0YVR5cGUoKSB7CiAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5sZW5ndGgpIHsKICAgICAgICAgICAgaWYgKCEoc2NoZW1hQ29kZSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSkKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgICBjb25zdCBzdCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hVHlwZSkgPyBzY2hlbWFUeXBlIDogW3NjaGVtYVR5cGVdOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGVzKShzdCwgc2NoZW1hQ29kZSwgaXQub3B0cy5zdHJpY3ROdW1iZXJzLCBkYXRhVHlwZV8yLkRhdGFUeXBlLldyb25nKX1gOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGludmFsaWQkRGF0YVNjaGVtYSgpIHsKICAgICAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWRhdGVTY2hlbWFSZWYgPSBnZW4uc2NvcGVWYWx1ZSgidmFsaWRhdGUkZGF0YSIsIHsgcmVmOiBkZWYudmFsaWRhdGVTY2hlbWEgfSk7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCEke3ZhbGlkYXRlU2NoZW1hUmVmfSgke3NjaGVtYUNvZGV9KWA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3Vic2NoZW1hKGFwcGwsIHZhbGlkKSB7CiAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gKDAsIHN1YnNjaGVtYV8xLmdldFN1YnNjaGVtYSkodGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYURhdGEpKHN1YnNjaGVtYSwgdGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYU1vZGUpKHN1YnNjaGVtYSwgYXBwbCk7CiAgICAgICAgY29uc3QgbmV4dENvbnRleHQgPSB7IC4uLnRoaXMuaXQsIC4uLnN1YnNjaGVtYSwgaXRlbXM6IHZvaWQgMCwgcHJvcHM6IHZvaWQgMCB9OwogICAgICAgIHN1YnNjaGVtYUNvZGUobmV4dENvbnRleHQsIHZhbGlkKTsKICAgICAgICByZXR1cm4gbmV4dENvbnRleHQ7CiAgICAgIH0KICAgICAgbWVyZ2VFdmFsdWF0ZWQoc2NoZW1hQ3h0LCB0b05hbWUpIHsKICAgICAgICBjb25zdCB7IGl0LCBnZW4gfSA9IHRoaXM7CiAgICAgICAgaWYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChpdC5wcm9wcyAhPT0gdHJ1ZSAmJiBzY2hlbWFDeHQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBzY2hlbWFDeHQucHJvcHMsIGl0LnByb3BzLCB0b05hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoaXQuaXRlbXMgIT09IHRydWUgJiYgc2NoZW1hQ3h0Lml0ZW1zICE9PSB2b2lkIDApIHsKICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoZW1hQ3h0Lml0ZW1zLCBpdC5pdGVtcywgdG9OYW1lKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgbWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hlbWFDeHQsIHZhbGlkKSB7CiAgICAgICAgY29uc3QgeyBpdCwgZ2VuIH0gPSB0aGlzOwogICAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIChpdC5wcm9wcyAhPT0gdHJ1ZSB8fCBpdC5pdGVtcyAhPT0gdHJ1ZSkpIHsKICAgICAgICAgIGdlbi5pZih2YWxpZCwgKCkgPT4gdGhpcy5tZXJnZUV2YWx1YXRlZChzY2hlbWFDeHQsIGNvZGVnZW5fMS5OYW1lKSk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gS2V5d29yZEN4dDsKICAgIGZ1bmN0aW9uIGtleXdvcmRDb2RlKGl0LCBrZXl3b3JkLCBkZWYsIHJ1bGVUeXBlKSB7CiAgICAgIGNvbnN0IGN4dCA9IG5ldyBLZXl3b3JkQ3h0KGl0LCBkZWYsIGtleXdvcmQpOwogICAgICBpZiAoImNvZGUiIGluIGRlZikgewogICAgICAgIGRlZi5jb2RlKGN4dCwgcnVsZVR5cGUpOwogICAgICB9IGVsc2UgaWYgKGN4dC4kZGF0YSAmJiBkZWYudmFsaWRhdGUpIHsKICAgICAgICAoMCwga2V5d29yZF8xLmZ1bmNLZXl3b3JkQ29kZSkoY3h0LCBkZWYpOwogICAgICB9IGVsc2UgaWYgKCJtYWNybyIgaW4gZGVmKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5tYWNyb0tleXdvcmRDb2RlKShjeHQsIGRlZik7CiAgICAgIH0gZWxzZSBpZiAoZGVmLmNvbXBpbGUgfHwgZGVmLnZhbGlkYXRlKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5mdW5jS2V5d29yZENvZGUpKGN4dCwgZGVmKTsKICAgICAgfQogICAgfQogICAgdmFyIEpTT05fUE9JTlRFUiA9IC9eXC8oPzpbXn5dfH4wfH4xKSokLzsKICAgIHZhciBSRUxBVElWRV9KU09OX1BPSU5URVIgPSAvXihbMC05XSspKCN8XC8oPzpbXn5dfH4wfH4xKSopPyQvOwogICAgZnVuY3Rpb24gZ2V0RGF0YSgkZGF0YSwgeyBkYXRhTGV2ZWwsIGRhdGFOYW1lcywgZGF0YVBhdGhBcnIgfSkgewogICAgICBsZXQganNvblBvaW50ZXI7CiAgICAgIGxldCBkYXRhOwogICAgICBpZiAoJGRhdGEgPT09ICIiKQogICAgICAgIHJldHVybiBuYW1lc18xLmRlZmF1bHQucm9vdERhdGE7CiAgICAgIGlmICgkZGF0YVswXSA9PT0gIi8iKSB7CiAgICAgICAgaWYgKCFKU09OX1BPSU5URVIudGVzdCgkZGF0YSkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgSlNPTi1wb2ludGVyOiAkeyRkYXRhfWApOwogICAgICAgIGpzb25Qb2ludGVyID0gJGRhdGE7CiAgICAgICAgZGF0YSA9IG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YTsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gUkVMQVRJVkVfSlNPTl9QT0lOVEVSLmV4ZWMoJGRhdGEpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBKU09OLXBvaW50ZXI6ICR7JGRhdGF9YCk7CiAgICAgICAgY29uc3QgdXAgPSArbWF0Y2hlc1sxXTsKICAgICAgICBqc29uUG9pbnRlciA9IG1hdGNoZXNbMl07CiAgICAgICAgaWYgKGpzb25Qb2ludGVyID09PSAiIyIpIHsKICAgICAgICAgIGlmICh1cCA+PSBkYXRhTGV2ZWwpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1zZygicHJvcGVydHkvaW5kZXgiLCB1cCkpOwogICAgICAgICAgcmV0dXJuIGRhdGFQYXRoQXJyW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICB9CiAgICAgICAgaWYgKHVwID4gZGF0YUxldmVsKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yTXNnKCJkYXRhIiwgdXApKTsKICAgICAgICBkYXRhID0gZGF0YU5hbWVzW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICBpZiAoIWpzb25Qb2ludGVyKQogICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgIH0KICAgICAgbGV0IGV4cHIgPSBkYXRhOwogICAgICBjb25zdCBzZWdtZW50cyA9IGpzb25Qb2ludGVyLnNwbGl0KCIvIik7CiAgICAgIGZvciAoY29uc3Qgc2VnbWVudCBvZiBzZWdtZW50cykgewogICAgICAgIGlmIChzZWdtZW50KSB7CiAgICAgICAgICBkYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KSgoMCwgdXRpbF8xLnVuZXNjYXBlSnNvblBvaW50ZXIpKHNlZ21lbnQpKX1gOwogICAgICAgICAgZXhwciA9ICgwLCBjb2RlZ2VuXzEuXylgJHtleHByfSAmJiAke2RhdGF9YDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGV4cHI7CiAgICAgIGZ1bmN0aW9uIGVycm9yTXNnKHBvaW50ZXJUeXBlLCB1cCkgewogICAgICAgIHJldHVybiBgQ2Fubm90IGFjY2VzcyAke3BvaW50ZXJUeXBlfSAke3VwfSBsZXZlbHMgdXAsIGN1cnJlbnQgbGV2ZWwgaXMgJHtkYXRhTGV2ZWx9YDsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0RGF0YSA9IGdldERhdGE7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3ZhbGlkYXRpb25fZXJyb3IuanMKdmFyIHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgVmFsaWRhdGlvbkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycykgewogICAgICAgIHN1cGVyKCJ2YWxpZGF0aW9uIGZhaWxlZCIpOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICAgIHRoaXMuYWp2ID0gdGhpcy52YWxpZGF0aW9uID0gdHJ1ZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBWYWxpZGF0aW9uRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3JlZl9lcnJvci5qcwp2YXIgcmVxdWlyZV9yZWZfZXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVmX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgTWlzc2luZ1JlZkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKHJlc29sdmVyLCBiYXNlSWQsIHJlZiwgbXNnKSB7CiAgICAgICAgc3VwZXIobXNnIHx8IGBjYW4ndCByZXNvbHZlIHJlZmVyZW5jZSAke3JlZn0gZnJvbSBpZCAke2Jhc2VJZH1gKTsKICAgICAgICB0aGlzLm1pc3NpbmdSZWYgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHJlc29sdmVyLCBiYXNlSWQsIHJlZik7CiAgICAgICAgdGhpcy5taXNzaW5nU2NoZW1hID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkocmVzb2x2ZXIsIHRoaXMubWlzc2luZ1JlZikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IE1pc3NpbmdSZWZFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvaW5kZXguanMKdmFyIHJlcXVpcmVfY29tcGlsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGV4cG9ydHMyLnJlc29sdmVSZWYgPSBleHBvcnRzMi5jb21waWxlU2NoZW1hID0gZXhwb3J0czIuU2NoZW1hRW52ID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIHZhciBTY2hlbWFFbnYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGVudikgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmR5bmFtaWNBbmNob3JzID0ge307CiAgICAgICAgbGV0IHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBlbnYuc2NoZW1hID09ICJvYmplY3QiKQogICAgICAgICAgc2NoZW1hMiA9IGVudi5zY2hlbWE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBlbnYuc2NoZW1hOwogICAgICAgIHRoaXMuc2NoZW1hSWQgPSBlbnYuc2NoZW1hSWQ7CiAgICAgICAgdGhpcy5yb290ID0gZW52LnJvb3QgfHwgdGhpczsKICAgICAgICB0aGlzLmJhc2VJZCA9IChfYSA9IGVudi5iYXNlSWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHNjaGVtYTIgPT09IG51bGwgfHwgc2NoZW1hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoZW1hMltlbnYuc2NoZW1hSWQgfHwgIiRpZCJdKTsKICAgICAgICB0aGlzLnNjaGVtYVBhdGggPSBlbnYuc2NoZW1hUGF0aDsKICAgICAgICB0aGlzLmxvY2FsUmVmcyA9IGVudi5sb2NhbFJlZnM7CiAgICAgICAgdGhpcy5tZXRhID0gZW52Lm1ldGE7CiAgICAgICAgdGhpcy4kYXN5bmMgPSBzY2hlbWEyID09PSBudWxsIHx8IHNjaGVtYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaGVtYTIuJGFzeW5jOwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hRW52ID0gU2NoZW1hRW52OwogICAgZnVuY3Rpb24gY29tcGlsZVNjaGVtYShzY2gpIHsKICAgICAgY29uc3QgX3NjaCA9IGdldENvbXBpbGluZ1NjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgIGlmIChfc2NoKQogICAgICAgIHJldHVybiBfc2NoOwogICAgICBjb25zdCByb290SWQgPSAoMCwgcmVzb2x2ZV8xLmdldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHNjaC5yb290LmJhc2VJZCk7CiAgICAgIGNvbnN0IHsgZXM1LCBsaW5lcyB9ID0gdGhpcy5vcHRzLmNvZGU7CiAgICAgIGNvbnN0IHsgb3duUHJvcGVydGllcyB9ID0gdGhpcy5vcHRzOwogICAgICBjb25zdCBnZW4gPSBuZXcgY29kZWdlbl8xLkNvZGVHZW4odGhpcy5zY29wZSwgeyBlczUsIGxpbmVzLCBvd25Qcm9wZXJ0aWVzIH0pOwogICAgICBsZXQgX1ZhbGlkYXRpb25FcnJvcjsKICAgICAgaWYgKHNjaC4kYXN5bmMpIHsKICAgICAgICBfVmFsaWRhdGlvbkVycm9yID0gZ2VuLnNjb3BlVmFsdWUoIkVycm9yIiwgewogICAgICAgICAgcmVmOiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdCwKICAgICAgICAgIGNvZGU6ICgwLCBjb2RlZ2VuXzEuXylgcmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yIikuZGVmYXVsdGAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZGF0ZU5hbWUgPSBnZW4uc2NvcGVOYW1lKCJ2YWxpZGF0ZSIpOwogICAgICBzY2gudmFsaWRhdGVOYW1lID0gdmFsaWRhdGVOYW1lOwogICAgICBjb25zdCBzY2hlbWFDeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGFsbEVycm9yczogdGhpcy5vcHRzLmFsbEVycm9ycywKICAgICAgICBkYXRhOiBuYW1lc18xLmRlZmF1bHQuZGF0YSwKICAgICAgICBwYXJlbnREYXRhOiBuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwKICAgICAgICBwYXJlbnREYXRhUHJvcGVydHk6IG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksCiAgICAgICAgZGF0YU5hbWVzOiBbbmFtZXNfMS5kZWZhdWx0LmRhdGFdLAogICAgICAgIGRhdGFQYXRoQXJyOiBbY29kZWdlbl8xLm5pbF0sCiAgICAgICAgLy8gVE9ETyBjYW4gaXRzIGxlbmd0aCBiZSB1c2VkIGFzIGRhdGFMZXZlbCBpZiBuaWwgaXMgcmVtb3ZlZD8KICAgICAgICBkYXRhTGV2ZWw6IDAsCiAgICAgICAgZGF0YVR5cGVzOiBbXSwKICAgICAgICBkZWZpbmVkUHJvcGVydGllczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSwKICAgICAgICB0b3BTY2hlbWFSZWY6IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCB0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUgPyB7IHJlZjogc2NoLnNjaGVtYSwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaC5zY2hlbWEpIH0gOiB7IHJlZjogc2NoLnNjaGVtYSB9KSwKICAgICAgICB2YWxpZGF0ZU5hbWUsCiAgICAgICAgVmFsaWRhdGlvbkVycm9yOiBfVmFsaWRhdGlvbkVycm9yLAogICAgICAgIHNjaGVtYTogc2NoLnNjaGVtYSwKICAgICAgICBzY2hlbWFFbnY6IHNjaCwKICAgICAgICByb290SWQsCiAgICAgICAgYmFzZUlkOiBzY2guYmFzZUlkIHx8IHJvb3RJZCwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IHNjaC5zY2hlbWFQYXRoIHx8ICh0aGlzLm9wdHMuanRkID8gIiIgOiAiIyIpLAogICAgICAgIGVycm9yUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAiImAsCiAgICAgICAgb3B0czogdGhpcy5vcHRzLAogICAgICAgIHNlbGY6IHRoaXMKICAgICAgfTsKICAgICAgbGV0IHNvdXJjZUNvZGU7CiAgICAgIHRyeSB7CiAgICAgICAgdGhpcy5fY29tcGlsYXRpb25zLmFkZChzY2gpOwogICAgICAgICgwLCB2YWxpZGF0ZV8xLnZhbGlkYXRlRnVuY3Rpb25Db2RlKShzY2hlbWFDeHQpOwogICAgICAgIGdlbi5vcHRpbWl6ZSh0aGlzLm9wdHMuY29kZS5vcHRpbWl6ZSk7CiAgICAgICAgY29uc3QgdmFsaWRhdGVDb2RlID0gZ2VuLnRvU3RyaW5nKCk7CiAgICAgICAgc291cmNlQ29kZSA9IGAke2dlbi5zY29wZVJlZnMobmFtZXNfMS5kZWZhdWx0LnNjb3BlKX1yZXR1cm4gJHt2YWxpZGF0ZUNvZGV9YDsKICAgICAgICBpZiAodGhpcy5vcHRzLmNvZGUucHJvY2VzcykKICAgICAgICAgIHNvdXJjZUNvZGUgPSB0aGlzLm9wdHMuY29kZS5wcm9jZXNzKHNvdXJjZUNvZGUsIHNjaCk7CiAgICAgICAgY29uc3QgbWFrZVZhbGlkYXRlID0gbmV3IEZ1bmN0aW9uKGAke25hbWVzXzEuZGVmYXVsdC5zZWxmfWAsIGAke25hbWVzXzEuZGVmYXVsdC5zY29wZX1gLCBzb3VyY2VDb2RlKTsKICAgICAgICBjb25zdCB2YWxpZGF0ZSA9IG1ha2VWYWxpZGF0ZSh0aGlzLCB0aGlzLnNjb3BlLmdldCgpKTsKICAgICAgICB0aGlzLnNjb3BlLnZhbHVlKHZhbGlkYXRlTmFtZSwgeyByZWY6IHZhbGlkYXRlIH0pOwogICAgICAgIHZhbGlkYXRlLmVycm9ycyA9IG51bGw7CiAgICAgICAgdmFsaWRhdGUuc2NoZW1hID0gc2NoLnNjaGVtYTsKICAgICAgICB2YWxpZGF0ZS5zY2hlbWFFbnYgPSBzY2g7CiAgICAgICAgaWYgKHNjaC4kYXN5bmMpCiAgICAgICAgICB2YWxpZGF0ZS4kYXN5bmMgPSB0cnVlOwogICAgICAgIGlmICh0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUpIHsKICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZSA9IHsgdmFsaWRhdGVOYW1lLCB2YWxpZGF0ZUNvZGUsIHNjb3BlVmFsdWVzOiBnZW4uX3ZhbHVlcyB9OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5vcHRzLnVuZXZhbHVhdGVkKSB7CiAgICAgICAgICBjb25zdCB7IHByb3BzLCBpdGVtcyB9ID0gc2NoZW1hQ3h0OwogICAgICAgICAgdmFsaWRhdGUuZXZhbHVhdGVkID0gewogICAgICAgICAgICBwcm9wczogcHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IHByb3BzLAogICAgICAgICAgICBpdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IGl0ZW1zLAogICAgICAgICAgICBkeW5hbWljUHJvcHM6IHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUsCiAgICAgICAgICAgIGR5bmFtaWNJdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0ZS5zb3VyY2UpCiAgICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZS5ldmFsdWF0ZWQgPSAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkodmFsaWRhdGUuZXZhbHVhdGVkKTsKICAgICAgICB9CiAgICAgICAgc2NoLnZhbGlkYXRlID0gdmFsaWRhdGU7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgIGRlbGV0ZSBzY2gudmFsaWRhdGU7CiAgICAgICAgZGVsZXRlIHNjaC52YWxpZGF0ZU5hbWU7CiAgICAgICAgaWYgKHNvdXJjZUNvZGUpCiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcigiRXJyb3IgY29tcGlsaW5nIHNjaGVtYSwgZnVuY3Rpb24gY29kZToiLCBzb3VyY2VDb2RlKTsKICAgICAgICB0aHJvdyBlOwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucy5kZWxldGUoc2NoKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY29tcGlsZVNjaGVtYSA9IGNvbXBpbGVTY2hlbWE7CiAgICBmdW5jdGlvbiByZXNvbHZlUmVmKHJvb3QsIGJhc2VJZCwgcmVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgcmVmKTsKICAgICAgY29uc3Qgc2NoT3JGdW5jID0gcm9vdC5yZWZzW3JlZl07CiAgICAgIGlmIChzY2hPckZ1bmMpCiAgICAgICAgcmV0dXJuIHNjaE9yRnVuYzsKICAgICAgbGV0IF9zY2ggPSByZXNvbHZlLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHNjaGVtYTIgPSAoX2EgPSByb290LmxvY2FsUmVmcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3JlZl07CiAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGlmIChzY2hlbWEyKQogICAgICAgICAgX3NjaCA9IG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkKICAgICAgICByZXR1cm47CiAgICAgIHJldHVybiByb290LnJlZnNbcmVmXSA9IGlubGluZU9yQ29tcGlsZS5jYWxsKHRoaXMsIF9zY2gpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVJlZiA9IHJlc29sdmVSZWY7CiAgICBmdW5jdGlvbiBpbmxpbmVPckNvbXBpbGUoc2NoKSB7CiAgICAgIGlmICgoMCwgcmVzb2x2ZV8xLmlubGluZVJlZikoc2NoLnNjaGVtYSwgdGhpcy5vcHRzLmlubGluZVJlZnMpKQogICAgICAgIHJldHVybiBzY2guc2NoZW1hOwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gc2NoIDogY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRDb21waWxpbmdTY2hlbWEoc2NoRW52KSB7CiAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHRoaXMuX2NvbXBpbGF0aW9ucykgewogICAgICAgIGlmIChzYW1lU2NoZW1hRW52KHNjaCwgc2NoRW52KSkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGdldENvbXBpbGluZ1NjaGVtYTsKICAgIGZ1bmN0aW9uIHNhbWVTY2hlbWFFbnYoczEsIHMyKSB7CiAgICAgIHJldHVybiBzMS5zY2hlbWEgPT09IHMyLnNjaGVtYSAmJiBzMS5yb290ID09PSBzMi5yb290ICYmIHMxLmJhc2VJZCA9PT0gczIuYmFzZUlkOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShyb290LCByZWYpIHsKICAgICAgbGV0IHNjaDsKICAgICAgd2hpbGUgKHR5cGVvZiAoc2NoID0gdGhpcy5yZWZzW3JlZl0pID09ICJzdHJpbmciKQogICAgICAgIHJlZiA9IHNjaDsKICAgICAgcmV0dXJuIHNjaCB8fCB0aGlzLnNjaGVtYXNbcmVmXSB8fCByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVTY2hlbWEocm9vdCwgcmVmKSB7CiAgICAgIGNvbnN0IHAgPSB0aGlzLm9wdHMudXJpUmVzb2x2ZXIucGFyc2UocmVmKTsKICAgICAgY29uc3QgcmVmUGF0aCA9ICgwLCByZXNvbHZlXzEuX2dldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHApOwogICAgICBsZXQgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCByb290LmJhc2VJZCwgdm9pZCAwKTsKICAgICAgaWYgKE9iamVjdC5rZXlzKHJvb3Quc2NoZW1hKS5sZW5ndGggPiAwICYmIHJlZlBhdGggPT09IGJhc2VJZCkgewogICAgICAgIHJldHVybiBnZXRKc29uUG9pbnRlci5jYWxsKHRoaXMsIHAsIHJvb3QpOwogICAgICB9CiAgICAgIGNvbnN0IGlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmUGF0aCk7CiAgICAgIGNvbnN0IHNjaE9yUmVmID0gdGhpcy5yZWZzW2lkXSB8fCB0aGlzLnNjaGVtYXNbaWRdOwogICAgICBpZiAodHlwZW9mIHNjaE9yUmVmID09ICJzdHJpbmciKSB7CiAgICAgICAgY29uc3Qgc2NoID0gcmVzb2x2ZVNjaGVtYS5jYWxsKHRoaXMsIHJvb3QsIHNjaE9yUmVmKTsKICAgICAgICBpZiAodHlwZW9mIChzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2guc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoKTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIChzY2hPclJlZiA9PT0gbnVsbCB8fCBzY2hPclJlZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoT3JSZWYuc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoIXNjaE9yUmVmLnZhbGlkYXRlKQogICAgICAgIGNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2hPclJlZik7CiAgICAgIGlmIChpZCA9PT0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmKSkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyIH0gPSBzY2hPclJlZjsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgY29uc3Qgc2NoSWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICBpZiAoc2NoSWQpCiAgICAgICAgICBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hJZCk7CiAgICAgICAgcmV0dXJuIG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoT3JSZWYpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IHJlc29sdmVTY2hlbWE7CiAgICB2YXIgUFJFVkVOVF9TQ09QRV9DSEFOR0UgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJwcm9wZXJ0aWVzIiwKICAgICAgInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgImVudW0iLAogICAgICAiZGVwZW5kZW5jaWVzIiwKICAgICAgImRlZmluaXRpb25zIgogICAgXSk7CiAgICBmdW5jdGlvbiBnZXRKc29uUG9pbnRlcihwYXJzZWRSZWYsIHsgYmFzZUlkLCBzY2hlbWE6IHNjaGVtYTIsIHJvb3QgfSkgewogICAgICB2YXIgX2E7CiAgICAgIGlmICgoKF9hID0gcGFyc2VkUmVmLmZyYWdtZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2FbMF0pICE9PSAiLyIpCiAgICAgICAgcmV0dXJuOwogICAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFyc2VkUmVmLmZyYWdtZW50LnNsaWNlKDEpLnNwbGl0KCIvIikpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBwYXJ0U2NoZW1hID0gc2NoZW1hMlsoMCwgdXRpbF8xLnVuZXNjYXBlRnJhZ21lbnQpKHBhcnQpXTsKICAgICAgICBpZiAocGFydFNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHNjaGVtYTIgPSBwYXJ0U2NoZW1hOwogICAgICAgIGNvbnN0IHNjaElkID0gdHlwZW9mIHNjaGVtYTIgPT09ICJvYmplY3QiICYmIHNjaGVtYTJbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICBpZiAoIVBSRVZFTlRfU0NPUEVfQ0hBTkdFLmhhcyhwYXJ0KSAmJiBzY2hJZCkgewogICAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoSWQpOwogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgZW52OwogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgIT0gImJvb2xlYW4iICYmIHNjaGVtYTIuJHJlZiAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgdGhpcy5SVUxFUykpIHsKICAgICAgICBjb25zdCAkcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoZW1hMi4kcmVmKTsKICAgICAgICBlbnYgPSByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgJHJlZik7CiAgICAgIH0KICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICBlbnYgPSBlbnYgfHwgbmV3IFNjaGVtYUVudih7IHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hSWQsIHJvb3QsIGJhc2VJZCB9KTsKICAgICAgaWYgKGVudi5zY2hlbWEgIT09IGVudi5yb290LnNjaGVtYSkKICAgICAgICByZXR1cm4gZW52OwogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24KdmFyIHJlcXVpcmVfZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRpZDogImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9hanYtdmFsaWRhdG9yL2Fqdi9tYXN0ZXIvbGliL3JlZnMvZGF0YS5qc29uIyIsCiAgICAgIGRlc2NyaXB0aW9uOiAiTWV0YS1zY2hlbWEgZm9yICRkYXRhIHJlZmVyZW5jZSAoSlNPTiBBbnlTY2hlbWEgZXh0ZW5zaW9uIHByb3Bvc2FsKSIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICByZXF1aXJlZDogWyIkZGF0YSJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGRhdGE6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgYW55T2Y6IFt7IGZvcm1hdDogInJlbGF0aXZlLWpzb24tcG9pbnRlciIgfSwgeyBmb3JtYXQ6ICJqc29uLXBvaW50ZXIiIH1dCiAgICAgICAgfQogICAgICB9LAogICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzCnZhciByZXF1aXJlX3Njb3BlZENoYXJzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIEhFWCA9IHsKICAgICAgMDogMCwKICAgICAgMTogMSwKICAgICAgMjogMiwKICAgICAgMzogMywKICAgICAgNDogNCwKICAgICAgNTogNSwKICAgICAgNjogNiwKICAgICAgNzogNywKICAgICAgODogOCwKICAgICAgOTogOSwKICAgICAgYTogMTAsCiAgICAgIEE6IDEwLAogICAgICBiOiAxMSwKICAgICAgQjogMTEsCiAgICAgIGM6IDEyLAogICAgICBDOiAxMiwKICAgICAgZDogMTMsCiAgICAgIEQ6IDEzLAogICAgICBlOiAxNCwKICAgICAgRTogMTQsCiAgICAgIGY6IDE1LAogICAgICBGOiAxNQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgSEVYCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtMTAuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBIRVggfSA9IHJlcXVpcmVfc2NvcGVkQ2hhcnMoKTsKICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUlQdjQoaG9zdCkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICIuIikgPCAzKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY0OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBob3N0Lm1hdGNoKC9eKD86KD86MjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSg/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSkkL3UpIHx8IFtdOwogICAgICBjb25zdCBbYWRkcmVzc10gPSBtYXRjaGVzOwogICAgICBpZiAoYWRkcmVzcykgewogICAgICAgIHJldHVybiB7IGhvc3Q6IHN0cmlwTGVhZGluZ1plcm9zKGFkZHJlc3MsICIuIiksIGlzSVBWNDogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNDogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGlucHV0LCBrZWVwWmVybyA9IGZhbHNlKSB7CiAgICAgIGxldCBhY2MgPSAiIjsKICAgICAgbGV0IHN0cmlwID0gdHJ1ZTsKICAgICAgZm9yIChjb25zdCBjIG9mIGlucHV0KSB7CiAgICAgICAgaWYgKEhFWFtjXSA9PT0gdm9pZCAwKSByZXR1cm4gdm9pZCAwOwogICAgICAgIGlmIChjICE9PSAiMCIgJiYgc3RyaXAgPT09IHRydWUpIHN0cmlwID0gZmFsc2U7CiAgICAgICAgaWYgKCFzdHJpcCkgYWNjICs9IGM7CiAgICAgIH0KICAgICAgaWYgKGtlZXBaZXJvICYmIGFjYy5sZW5ndGggPT09IDApIGFjYyA9ICIwIjsKICAgICAgcmV0dXJuIGFjYzsKICAgIH0KICAgIGZ1bmN0aW9uIGdldElQVjYoaW5wdXQpIHsKICAgICAgbGV0IHRva2VuQ291bnQgPSAwOwogICAgICBjb25zdCBvdXRwdXQgPSB7IGVycm9yOiBmYWxzZSwgYWRkcmVzczogIiIsIHpvbmU6ICIiIH07CiAgICAgIGNvbnN0IGFkZHJlc3MgPSBbXTsKICAgICAgY29uc3QgYnVmZmVyID0gW107CiAgICAgIGxldCBpc1pvbmUgPSBmYWxzZTsKICAgICAgbGV0IGVuZGlwdjZFbmNvdW50ZXJlZCA9IGZhbHNlOwogICAgICBsZXQgZW5kSXB2NiA9IGZhbHNlOwogICAgICBmdW5jdGlvbiBjb25zdW1lKCkgewogICAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICBpZiAoaXNab25lID09PSBmYWxzZSkgewogICAgICAgICAgICBjb25zdCBoZXggPSBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQoYnVmZmVyKTsKICAgICAgICAgICAgaWYgKGhleCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgYWRkcmVzcy5wdXNoKGhleCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgb3V0cHV0LmVycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGJ1ZmZlci5sZW5ndGggPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3Vyc29yID0gaW5wdXRbaV07CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIlsiIHx8IGN1cnNvciA9PT0gIl0iKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIjoiKSB7CiAgICAgICAgICBpZiAoZW5kaXB2NkVuY291bnRlcmVkID09PSB0cnVlKSB7CiAgICAgICAgICAgIGVuZElwdjYgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFjb25zdW1lKCkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB0b2tlbkNvdW50Kys7CiAgICAgICAgICBhZGRyZXNzLnB1c2goIjoiKTsKICAgICAgICAgIGlmICh0b2tlbkNvdW50ID4gNykgewogICAgICAgICAgICBvdXRwdXQuZXJyb3IgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChpIC0gMSA+PSAwICYmIGlucHV0W2kgLSAxXSA9PT0gIjoiKSB7CiAgICAgICAgICAgIGVuZGlwdjZFbmNvdW50ZXJlZCA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGN1cnNvciA9PT0gIiUiKSB7CiAgICAgICAgICBpZiAoIWNvbnN1bWUoKSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlzWm9uZSA9IHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKGN1cnNvcik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGJ1ZmZlci5sZW5ndGgpIHsKICAgICAgICBpZiAoaXNab25lKSB7CiAgICAgICAgICBvdXRwdXQuem9uZSA9IGJ1ZmZlci5qb2luKCIiKTsKICAgICAgICB9IGVsc2UgaWYgKGVuZElwdjYpIHsKICAgICAgICAgIGFkZHJlc3MucHVzaChidWZmZXIuam9pbigiIikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhZGRyZXNzLnB1c2goc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGJ1ZmZlcikpOwogICAgICAgIH0KICAgICAgfQogICAgICBvdXRwdXQuYWRkcmVzcyA9IGFkZHJlc3Muam9pbigiIik7CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVJUHY2KGhvc3QsIG9wdHMgPSB7fSkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICI6IikgPCAyKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY2OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IGlwdjYgPSBnZXRJUFY2KGhvc3QpOwogICAgICBpZiAoIWlwdjYuZXJyb3IpIHsKICAgICAgICBsZXQgbmV3SG9zdCA9IGlwdjYuYWRkcmVzczsKICAgICAgICBsZXQgZXNjYXBlZEhvc3QgPSBpcHY2LmFkZHJlc3M7CiAgICAgICAgaWYgKGlwdjYuem9uZSkgewogICAgICAgICAgbmV3SG9zdCArPSAiJSIgKyBpcHY2LnpvbmU7CiAgICAgICAgICBlc2NhcGVkSG9zdCArPSAiJTI1IiArIGlwdjYuem9uZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsgaG9zdDogbmV3SG9zdCwgZXNjYXBlZEhvc3QsIGlzSVBWNjogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNjogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaXBMZWFkaW5nWmVyb3Moc3RyMiwgdG9rZW4pIHsKICAgICAgbGV0IG91dCA9ICIiOwogICAgICBsZXQgc2tpcCA9IHRydWU7CiAgICAgIGNvbnN0IGwgPSBzdHIyLmxlbmd0aDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHsKICAgICAgICBjb25zdCBjID0gc3RyMltpXTsKICAgICAgICBpZiAoYyA9PT0gIjAiICYmIHNraXApIHsKICAgICAgICAgIGlmIChpICsgMSA8PSBsICYmIHN0cjJbaSArIDFdID09PSB0b2tlbiB8fCBpICsgMSA9PT0gbCkgewogICAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICAgICAgc2tpcCA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoYyA9PT0gdG9rZW4pIHsKICAgICAgICAgICAgc2tpcCA9IHRydWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBza2lwID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIG91dDsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbmRUb2tlbihzdHIyLCB0b2tlbikgewogICAgICBsZXQgaW5kID0gMDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgaWYgKHN0cjJbaV0gPT09IHRva2VuKSBpbmQrKzsKICAgICAgfQogICAgICByZXR1cm4gaW5kOwogICAgfQogICAgdmFyIFJEUzEgPSAvXlwuXC4/XC8vdTsKICAgIHZhciBSRFMyID0gL15cL1wuKD86XC98JCkvdTsKICAgIHZhciBSRFMzID0gL15cL1wuXC4oPzpcL3wkKS91OwogICAgdmFyIFJEUzUgPSAvXlwvPyg/Oi58XG4pKj8oPz1cL3wkKS91OwogICAgZnVuY3Rpb24gcmVtb3ZlRG90U2VnbWVudHMoaW5wdXQpIHsKICAgICAgY29uc3Qgb3V0cHV0ID0gW107CiAgICAgIHdoaWxlIChpbnB1dC5sZW5ndGgpIHsKICAgICAgICBpZiAoaW5wdXQubWF0Y2goUkRTMSkpIHsKICAgICAgICAgIGlucHV0ID0gaW5wdXQucmVwbGFjZShSRFMxLCAiIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMyKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzIsICIvIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMzKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzMsICIvIik7CiAgICAgICAgICBvdXRwdXQucG9wKCk7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PT0gIi4iIHx8IGlucHV0ID09PSAiLi4iKSB7CiAgICAgICAgICBpbnB1dCA9ICIiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBpbSA9IGlucHV0Lm1hdGNoKFJEUzUpOwogICAgICAgICAgaWYgKGltKSB7CiAgICAgICAgICAgIGNvbnN0IHMgPSBpbVswXTsKICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShzLmxlbmd0aCk7CiAgICAgICAgICAgIG91dHB1dC5wdXNoKHMpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmV4cGVjdGVkIGRvdCBzZWdtZW50IGNvbmRpdGlvbiIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gb3V0cHV0LmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcoY29tcG9uZW50cywgZXNjKSB7CiAgICAgIGNvbnN0IGZ1bmMgPSBlc2MgIT09IHRydWUgPyBlc2NhcGUgOiB1bmVzY2FwZTsKICAgICAgaWYgKGNvbXBvbmVudHMuc2NoZW1lICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnNjaGVtZSA9IGZ1bmMoY29tcG9uZW50cy5zY2hlbWUpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnVzZXJpbmZvICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnVzZXJpbmZvID0gZnVuYyhjb21wb25lbnRzLnVzZXJpbmZvKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5ob3N0ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLmhvc3QgPSBmdW5jKGNvbXBvbmVudHMuaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZnVuYyhjb21wb25lbnRzLnBhdGgpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnF1ZXJ5ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnF1ZXJ5ID0gZnVuYyhjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5mcmFnbWVudCA9IGZ1bmMoY29tcG9uZW50cy5mcmFnbWVudCk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiByZWNvbXBvc2VBdXRob3JpdHkoY29tcG9uZW50cywgb3B0aW9ucykgewogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgaWYgKGNvbXBvbmVudHMudXNlcmluZm8gIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMudXNlcmluZm8pOwogICAgICAgIHVyaVRva2Vucy5wdXNoKCJAIik7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgbGV0IGhvc3QgPSB1bmVzY2FwZShjb21wb25lbnRzLmhvc3QpOwogICAgICAgIGNvbnN0IGlwVjRyZXMgPSBub3JtYWxpemVJUHY0KGhvc3QpOwogICAgICAgIGlmIChpcFY0cmVzLmlzSVBWNCkgewogICAgICAgICAgaG9zdCA9IGlwVjRyZXMuaG9zdDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgaXBWNnJlcyA9IG5vcm1hbGl6ZUlQdjYoaXBWNHJlcy5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICBpZiAoaXBWNnJlcy5pc0lQVjYgPT09IHRydWUpIHsKICAgICAgICAgICAgaG9zdCA9IGBbJHtpcFY2cmVzLmVzY2FwZWRIb3N0fV1gOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaG9zdCA9IGNvbXBvbmVudHMuaG9zdDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdXJpVG9rZW5zLnB1c2goaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJudW1iZXIiIHx8IHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIjoiKTsKICAgICAgICB1cmlUb2tlbnMucHVzaChTdHJpbmcoY29tcG9uZW50cy5wb3J0KSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaVRva2Vucy5sZW5ndGggPyB1cmlUb2tlbnMuam9pbigiIikgOiB2b2lkIDA7CiAgICB9CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIHJlY29tcG9zZUF1dGhvcml0eSwKICAgICAgbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcsCiAgICAgIHJlbW92ZURvdFNlZ21lbnRzLAogICAgICBub3JtYWxpemVJUHY0LAogICAgICBub3JtYWxpemVJUHY2LAogICAgICBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3NjaGVtZXMuanMKdmFyIHJlcXVpcmVfc2NoZW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFVVSURfUkVHID0gL15bXGRhLWZdezh9XGItW1xkYS1mXXs0fVxiLVtcZGEtZl17NH1cYi1bXGRhLWZdezR9XGItW1xkYS1mXXsxMn0kL2l1OwogICAgdmFyIFVSTl9SRUcgPSAvKFtcZGEtel1bXGRcLWEtel17MCwzMX0pOigoPzpbXHchJCcoKSorLFwtLjo7PUBdfCVbXGRhLWZdezJ9KSspL2l1OwogICAgZnVuY3Rpb24gaXNTZWN1cmUod3NDb21wb25lbnRzKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iID8gd3NDb21wb25lbnRzLnNlY3VyZSA6IFN0cmluZyh3c0NvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAid3NzIjsKICAgIH0KICAgIGZ1bmN0aW9uIGh0dHBQYXJzZShjb21wb25lbnRzKSB7CiAgICAgIGlmICghY29tcG9uZW50cy5ob3N0KSB7CiAgICAgICAgY29tcG9uZW50cy5lcnJvciA9IGNvbXBvbmVudHMuZXJyb3IgfHwgIkhUVFAgVVJJcyBtdXN0IGhhdmUgYSBob3N0LiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBodHRwU2VyaWFsaXplKGNvbXBvbmVudHMpIHsKICAgICAgY29uc3Qgc2VjdXJlID0gU3RyaW5nKGNvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAiaHR0cHMiOwogICAgICBpZiAoY29tcG9uZW50cy5wb3J0ID09PSAoc2VjdXJlID8gNDQzIDogODApIHx8IGNvbXBvbmVudHMucG9ydCA9PT0gIiIpIHsKICAgICAgICBjb21wb25lbnRzLnBvcnQgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKCFjb21wb25lbnRzLnBhdGgpIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSAiLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB3c1BhcnNlKHdzQ29tcG9uZW50cykgewogICAgICB3c0NvbXBvbmVudHMuc2VjdXJlID0gaXNTZWN1cmUod3NDb21wb25lbnRzKTsKICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9ICh3c0NvbXBvbmVudHMucGF0aCB8fCAiLyIpICsgKHdzQ29tcG9uZW50cy5xdWVyeSA/ICI/IiArIHdzQ29tcG9uZW50cy5xdWVyeSA6ICIiKTsKICAgICAgd3NDb21wb25lbnRzLnBhdGggPSB2b2lkIDA7CiAgICAgIHdzQ29tcG9uZW50cy5xdWVyeSA9IHZvaWQgMDsKICAgICAgcmV0dXJuIHdzQ29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHdzU2VyaWFsaXplKHdzQ29tcG9uZW50cykgewogICAgICBpZiAod3NDb21wb25lbnRzLnBvcnQgPT09IChpc1NlY3VyZSh3c0NvbXBvbmVudHMpID8gNDQzIDogODApIHx8IHdzQ29tcG9uZW50cy5wb3J0ID09PSAiIikgewogICAgICAgIHdzQ29tcG9uZW50cy5wb3J0ID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgd3NDb21wb25lbnRzLnNjaGVtZSA9IHdzQ29tcG9uZW50cy5zZWN1cmUgPyAid3NzIiA6ICJ3cyI7CiAgICAgICAgd3NDb21wb25lbnRzLnNlY3VyZSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAod3NDb21wb25lbnRzLnJlc291cmNlTmFtZSkgewogICAgICAgIGNvbnN0IFtwYXRoLCBxdWVyeV0gPSB3c0NvbXBvbmVudHMucmVzb3VyY2VOYW1lLnNwbGl0KCI/Iik7CiAgICAgICAgd3NDb21wb25lbnRzLnBhdGggPSBwYXRoICYmIHBhdGggIT09ICIvIiA/IHBhdGggOiB2b2lkIDA7CiAgICAgICAgd3NDb21wb25lbnRzLnF1ZXJ5ID0gcXVlcnk7CiAgICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9IHZvaWQgMDsKICAgICAgfQogICAgICB3c0NvbXBvbmVudHMuZnJhZ21lbnQgPSB2b2lkIDA7CiAgICAgIHJldHVybiB3c0NvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm5QYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGlmICghdXJuQ29tcG9uZW50cy5wYXRoKSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9ICJVUk4gY2FuIG5vdCBiZSBwYXJzZWQiOwogICAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cm5Db21wb25lbnRzLnBhdGgubWF0Y2goVVJOX1JFRyk7CiAgICAgIGlmIChtYXRjaGVzKSB7CiAgICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uaWQgPSBtYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSBtYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCB1cm5Db21wb25lbnRzLm5pZH1gOwogICAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTW3VyblNjaGVtZV07CiAgICAgICAgdXJuQ29tcG9uZW50cy5wYXRoID0gdm9pZCAwOwogICAgICAgIGlmIChzY2hlbWVIYW5kbGVyKSB7CiAgICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5wYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9IHVybkNvbXBvbmVudHMuZXJyb3IgfHwgIlVSTiBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJuU2VyaWFsaXplKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgIGNvbnN0IG5pZCA9IHVybkNvbXBvbmVudHMubmlkLnRvTG93ZXJDYXNlKCk7CiAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCBuaWR9YDsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbdXJuU2NoZW1lXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIpIHsKICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5zZXJpYWxpemUodXJuQ29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgdXJpQ29tcG9uZW50cyA9IHVybkNvbXBvbmVudHM7CiAgICAgIGNvbnN0IG5zcyA9IHVybkNvbXBvbmVudHMubnNzOwogICAgICB1cmlDb21wb25lbnRzLnBhdGggPSBgJHtuaWQgfHwgb3B0aW9ucy5uaWR9OiR7bnNzfWA7CiAgICAgIG9wdGlvbnMuc2tpcEVzY2FwZSA9IHRydWU7CiAgICAgIHJldHVybiB1cmlDb21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJudXVpZFBhcnNlKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgdXVpZENvbXBvbmVudHMgPSB1cm5Db21wb25lbnRzOwogICAgICB1dWlkQ29tcG9uZW50cy51dWlkID0gdXVpZENvbXBvbmVudHMubnNzOwogICAgICB1dWlkQ29tcG9uZW50cy5uc3MgPSB2b2lkIDA7CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiAoIXV1aWRDb21wb25lbnRzLnV1aWQgfHwgIVVVSURfUkVHLnRlc3QodXVpZENvbXBvbmVudHMudXVpZCkpKSB7CiAgICAgICAgdXVpZENvbXBvbmVudHMuZXJyb3IgPSB1dWlkQ29tcG9uZW50cy5lcnJvciB8fCAiVVVJRCBpcyBub3QgdmFsaWQuIjsKICAgICAgfQogICAgICByZXR1cm4gdXVpZENvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm51dWlkU2VyaWFsaXplKHV1aWRDb21wb25lbnRzKSB7CiAgICAgIGNvbnN0IHVybkNvbXBvbmVudHMgPSB1dWlkQ29tcG9uZW50czsKICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSAodXVpZENvbXBvbmVudHMudXVpZCB8fCAiIikudG9Mb3dlckNhc2UoKTsKICAgICAgcmV0dXJuIHVybkNvbXBvbmVudHM7CiAgICB9CiAgICB2YXIgaHR0cCA9IHsKICAgICAgc2NoZW1lOiAiaHR0cCIsCiAgICAgIGRvbWFpbkhvc3Q6IHRydWUsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciBodHRwcyA9IHsKICAgICAgc2NoZW1lOiAiaHR0cHMiLAogICAgICBkb21haW5Ib3N0OiBodHRwLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3cyA9IHsKICAgICAgc2NoZW1lOiAid3MiLAogICAgICBkb21haW5Ib3N0OiB0cnVlLAogICAgICBwYXJzZTogd3NQYXJzZSwKICAgICAgc2VyaWFsaXplOiB3c1NlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3c3MgPSB7CiAgICAgIHNjaGVtZTogIndzcyIsCiAgICAgIGRvbWFpbkhvc3Q6IHdzLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiB3cy5wYXJzZSwKICAgICAgc2VyaWFsaXplOiB3cy5zZXJpYWxpemUKICAgIH07CiAgICB2YXIgdXJuID0gewogICAgICBzY2hlbWU6ICJ1cm4iLAogICAgICBwYXJzZTogdXJuUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogdXJuU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIHVybnV1aWQgPSB7CiAgICAgIHNjaGVtZTogInVybjp1dWlkIiwKICAgICAgcGFyc2U6IHVybnV1aWRQYXJzZSwKICAgICAgc2VyaWFsaXplOiB1cm51dWlkU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIFNDSEVNRVMgPSB7CiAgICAgIGh0dHAsCiAgICAgIGh0dHBzLAogICAgICB3cywKICAgICAgd3NzLAogICAgICB1cm4sCiAgICAgICJ1cm46dXVpZCI6IHVybnV1aWQKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBTQ0hFTUVTOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfdXJpID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBub3JtYWxpemVJUHY2LCBub3JtYWxpemVJUHY0LCByZW1vdmVEb3RTZWdtZW50cywgcmVjb21wb3NlQXV0aG9yaXR5LCBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyB9ID0gcmVxdWlyZV91dGlsczIoKTsKICAgIHZhciBTQ0hFTUVTID0gcmVxdWlyZV9zY2hlbWVzKCk7CiAgICBmdW5jdGlvbiBub3JtYWxpemUodXJpLCBvcHRpb25zKSB7CiAgICAgIGlmICh0eXBlb2YgdXJpID09PSAic3RyaW5nIikgewogICAgICAgIHVyaSA9IHNlcmlhbGl6ZShwYXJzZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpID09PSAib2JqZWN0IikgewogICAgICAgIHVyaSA9IHBhcnNlKHNlcmlhbGl6ZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXR1cm4gdXJpOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShiYXNlVVJJLCByZWxhdGl2ZVVSSSwgb3B0aW9ucykgewogICAgICBjb25zdCBzY2hlbWVsZXNzT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oeyBzY2hlbWU6ICJudWxsIiB9LCBvcHRpb25zKTsKICAgICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlQ29tcG9uZW50cyhwYXJzZShiYXNlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHBhcnNlKHJlbGF0aXZlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHNjaGVtZWxlc3NPcHRpb25zLCB0cnVlKTsKICAgICAgcmV0dXJuIHNlcmlhbGl6ZShyZXNvbHZlZCwgeyAuLi5zY2hlbWVsZXNzT3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRzKGJhc2UsIHJlbGF0aXZlLCBvcHRpb25zLCBza2lwTm9ybWFsaXphdGlvbikgewogICAgICBjb25zdCB0YXJnZXQgPSB7fTsKICAgICAgaWYgKCFza2lwTm9ybWFsaXphdGlvbikgewogICAgICAgIGJhc2UgPSBwYXJzZShzZXJpYWxpemUoYmFzZSwgb3B0aW9ucyksIG9wdGlvbnMpOwogICAgICAgIHJlbGF0aXZlID0gcGFyc2Uoc2VyaWFsaXplKHJlbGF0aXZlLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiByZWxhdGl2ZS5zY2hlbWUpIHsKICAgICAgICB0YXJnZXQuc2NoZW1lID0gcmVsYXRpdmUuc2NoZW1lOwogICAgICAgIHRhcmdldC51c2VyaW5mbyA9IHJlbGF0aXZlLnVzZXJpbmZvOwogICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICB0YXJnZXQucG9ydCA9IHJlbGF0aXZlLnBvcnQ7CiAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoIHx8ICIiKTsKICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocmVsYXRpdmUudXNlcmluZm8gIT09IHZvaWQgMCB8fCByZWxhdGl2ZS5ob3N0ICE9PSB2b2lkIDAgfHwgcmVsYXRpdmUucG9ydCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSByZWxhdGl2ZS51c2VyaW5mbzsKICAgICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICAgIHRhcmdldC5wb3J0ID0gcmVsYXRpdmUucG9ydDsKICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCB8fCAiIik7CiAgICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFyZWxhdGl2ZS5wYXRoKSB7CiAgICAgICAgICAgIHRhcmdldC5wYXRoID0gYmFzZS5wYXRoOwogICAgICAgICAgICBpZiAocmVsYXRpdmUucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IHJlbGF0aXZlLnF1ZXJ5OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IGJhc2UucXVlcnk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChyZWxhdGl2ZS5wYXRoLmNoYXJBdCgwKSA9PT0gIi8iKSB7CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBpZiAoKGJhc2UudXNlcmluZm8gIT09IHZvaWQgMCB8fCBiYXNlLmhvc3QgIT09IHZvaWQgMCB8fCBiYXNlLnBvcnQgIT09IHZvaWQgMCkgJiYgIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSAiLyIgKyByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0YXJnZXQucGF0aCA9IGJhc2UucGF0aC5zbGljZSgwLCBiYXNlLnBhdGgubGFzdEluZGV4T2YoIi8iKSArIDEpICsgcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyh0YXJnZXQucGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgICAgICB9CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSBiYXNlLnVzZXJpbmZvOwogICAgICAgICAgdGFyZ2V0Lmhvc3QgPSBiYXNlLmhvc3Q7CiAgICAgICAgICB0YXJnZXQucG9ydCA9IGJhc2UucG9ydDsKICAgICAgICB9CiAgICAgICAgdGFyZ2V0LnNjaGVtZSA9IGJhc2Uuc2NoZW1lOwogICAgICB9CiAgICAgIHRhcmdldC5mcmFnbWVudCA9IHJlbGF0aXZlLmZyYWdtZW50OwogICAgICByZXR1cm4gdGFyZ2V0OwogICAgfQogICAgZnVuY3Rpb24gZXF1YWwodXJpQSwgdXJpQiwgb3B0aW9ucykgewogICAgICBpZiAodHlwZW9mIHVyaUEgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpQSA9IHVuZXNjYXBlKHVyaUEpOwogICAgICAgIHVyaUEgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcocGFyc2UodXJpQSwgb3B0aW9ucyksIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaUEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdXJpQSA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyh1cmlBLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgdXJpQiA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmlCID0gdW5lc2NhcGUodXJpQik7CiAgICAgICAgdXJpQiA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyhwYXJzZSh1cmlCLCBvcHRpb25zKSwgdHJ1ZSksIHsgLi4ub3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpQiA9PT0gIm9iamVjdCIpIHsKICAgICAgICB1cmlCID0gc2VyaWFsaXplKG5vcm1hbGl6ZUNvbXBvbmVudEVuY29kaW5nKHVyaUIsIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaUEudG9Mb3dlckNhc2UoKSA9PT0gdXJpQi50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gc2VyaWFsaXplKGNtcHRzLCBvcHRzKSB7CiAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSB7CiAgICAgICAgaG9zdDogY21wdHMuaG9zdCwKICAgICAgICBzY2hlbWU6IGNtcHRzLnNjaGVtZSwKICAgICAgICB1c2VyaW5mbzogY21wdHMudXNlcmluZm8sCiAgICAgICAgcG9ydDogY21wdHMucG9ydCwKICAgICAgICBwYXRoOiBjbXB0cy5wYXRoLAogICAgICAgIHF1ZXJ5OiBjbXB0cy5xdWVyeSwKICAgICAgICBuaWQ6IGNtcHRzLm5pZCwKICAgICAgICBuc3M6IGNtcHRzLm5zcywKICAgICAgICB1dWlkOiBjbXB0cy51dWlkLAogICAgICAgIGZyYWdtZW50OiBjbXB0cy5mcmFnbWVudCwKICAgICAgICByZWZlcmVuY2U6IGNtcHRzLnJlZmVyZW5jZSwKICAgICAgICByZXNvdXJjZU5hbWU6IGNtcHRzLnJlc291cmNlTmFtZSwKICAgICAgICBzZWN1cmU6IGNtcHRzLnNlY3VyZSwKICAgICAgICBlcnJvcjogIiIKICAgICAgfTsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbKG9wdGlvbnMuc2NoZW1lIHx8IGNvbXBvbmVudHMuc2NoZW1lIHx8ICIiKS50b0xvd2VyQ2FzZSgpXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5zZXJpYWxpemUpIHNjaGVtZUhhbmRsZXIuc2VyaWFsaXplKGNvbXBvbmVudHMsIG9wdGlvbnMpOwogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoIW9wdGlvbnMuc2tpcEVzY2FwZSkgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZXNjYXBlKGNvbXBvbmVudHMucGF0aCk7CiAgICAgICAgICBpZiAoY29tcG9uZW50cy5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBjb21wb25lbnRzLnBhdGggPSBjb21wb25lbnRzLnBhdGguc3BsaXQoIiUzQSIpLmpvaW4oIjoiKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gdW5lc2NhcGUoY29tcG9uZW50cy5wYXRoKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IiAmJiBjb21wb25lbnRzLnNjaGVtZSkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMuc2NoZW1lLCAiOiIpOwogICAgICB9CiAgICAgIGNvbnN0IGF1dGhvcml0eSA9IHJlY29tcG9zZUF1dGhvcml0eShjb21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgaWYgKGF1dGhvcml0eSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IikgewogICAgICAgICAgdXJpVG9rZW5zLnB1c2goIi8vIik7CiAgICAgICAgfQogICAgICAgIHVyaVRva2Vucy5wdXNoKGF1dGhvcml0eSk7CiAgICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAmJiBjb21wb25lbnRzLnBhdGguY2hhckF0KDApICE9PSAiLyIpIHsKICAgICAgICAgIHVyaVRva2Vucy5wdXNoKCIvIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnBhdGggIT09IHZvaWQgMCkgewogICAgICAgIGxldCBzID0gY29tcG9uZW50cy5wYXRoOwogICAgICAgIGlmICghb3B0aW9ucy5hYnNvbHV0ZVBhdGggJiYgKCFzY2hlbWVIYW5kbGVyIHx8ICFzY2hlbWVIYW5kbGVyLmFic29sdXRlUGF0aCkpIHsKICAgICAgICAgIHMgPSByZW1vdmVEb3RTZWdtZW50cyhzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGF1dGhvcml0eSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBzID0gcy5yZXBsYWNlKC9eXC9cLy91LCAiLyUyRiIpOwogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChzKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5xdWVyeSAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIj8iLCBjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIiMiLCBjb21wb25lbnRzLmZyYWdtZW50KTsKICAgICAgfQogICAgICByZXR1cm4gdXJpVG9rZW5zLmpvaW4oIiIpOwogICAgfQogICAgdmFyIGhleExvb2tVcCA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDEyNyB9LCAodiwgaykgPT4gL1teISIkJicoKSorLFwtLjs9X2BhLXp7fX5dL3UudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGspKSk7CiAgICBmdW5jdGlvbiBub25TaW1wbGVEb21haW4odmFsdWUpIHsKICAgICAgbGV0IGNvZGUgPSAwOwogICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdmFsdWUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHsKICAgICAgICBjb2RlID0gdmFsdWUuY2hhckNvZGVBdChpKTsKICAgICAgICBpZiAoY29kZSA+IDEyNiB8fCBoZXhMb29rVXBbY29kZV0pIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICB2YXIgVVJJX1BBUlNFID0gL14oPzooW14jLzo/XSspOik/KD86XC9cLygoPzooW14jLz9AXSopQCk/KFxbW14jLz9cXV0rXF18W14jLzo/XSopKD86OihcZCopKT8pKT8oW14jP10qKSg/Olw/KFteI10qKSk/KD86IygoPzoufFtcblxyXSkqKSk/L3U7CiAgICBmdW5jdGlvbiBwYXJzZSh1cmksIG9wdHMpIHsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCBwYXJzZWQgPSB7CiAgICAgICAgc2NoZW1lOiB2b2lkIDAsCiAgICAgICAgdXNlcmluZm86IHZvaWQgMCwKICAgICAgICBob3N0OiAiIiwKICAgICAgICBwb3J0OiB2b2lkIDAsCiAgICAgICAgcGF0aDogIiIsCiAgICAgICAgcXVlcnk6IHZvaWQgMCwKICAgICAgICBmcmFnbWVudDogdm9pZCAwCiAgICAgIH07CiAgICAgIGNvbnN0IGdvdEVuY29kaW5nID0gdXJpLmluZGV4T2YoIiUiKSAhPT0gLTE7CiAgICAgIGxldCBpc0lQID0gZmFsc2U7CiAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSA9PT0gInN1ZmZpeCIpIHVyaSA9IChvcHRpb25zLnNjaGVtZSA/IG9wdGlvbnMuc2NoZW1lICsgIjoiIDogIiIpICsgIi8vIiArIHVyaTsKICAgICAgY29uc3QgbWF0Y2hlcyA9IHVyaS5tYXRjaChVUklfUEFSU0UpOwogICAgICBpZiAobWF0Y2hlcykgewogICAgICAgIHBhcnNlZC5zY2hlbWUgPSBtYXRjaGVzWzFdOwogICAgICAgIHBhcnNlZC51c2VyaW5mbyA9IG1hdGNoZXNbM107CiAgICAgICAgcGFyc2VkLmhvc3QgPSBtYXRjaGVzWzRdOwogICAgICAgIHBhcnNlZC5wb3J0ID0gcGFyc2VJbnQobWF0Y2hlc1s1XSwgMTApOwogICAgICAgIHBhcnNlZC5wYXRoID0gbWF0Y2hlc1s2XSB8fCAiIjsKICAgICAgICBwYXJzZWQucXVlcnkgPSBtYXRjaGVzWzddOwogICAgICAgIHBhcnNlZC5mcmFnbWVudCA9IG1hdGNoZXNbOF07CiAgICAgICAgaWYgKGlzTmFOKHBhcnNlZC5wb3J0KSkgewogICAgICAgICAgcGFyc2VkLnBvcnQgPSBtYXRjaGVzWzVdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyc2VkLmhvc3QpIHsKICAgICAgICAgIGNvbnN0IGlwdjRyZXN1bHQgPSBub3JtYWxpemVJUHY0KHBhcnNlZC5ob3N0KTsKICAgICAgICAgIGlmIChpcHY0cmVzdWx0LmlzSVBWNCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY29uc3QgaXB2NnJlc3VsdCA9IG5vcm1hbGl6ZUlQdjYoaXB2NHJlc3VsdC5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NnJlc3VsdC5ob3N0LnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgIGlzSVAgPSBpcHY2cmVzdWx0LmlzSVBWNjsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NHJlc3VsdC5ob3N0OwogICAgICAgICAgICBpc0lQID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5zY2hlbWUgPT09IHZvaWQgMCAmJiBwYXJzZWQudXNlcmluZm8gPT09IHZvaWQgMCAmJiBwYXJzZWQuaG9zdCA9PT0gdm9pZCAwICYmIHBhcnNlZC5wb3J0ID09PSB2b2lkIDAgJiYgIXBhcnNlZC5wYXRoICYmIHBhcnNlZC5xdWVyeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInNhbWUtZG9jdW1lbnQiOwogICAgICAgIH0gZWxzZSBpZiAocGFyc2VkLnNjaGVtZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInJlbGF0aXZlIjsKICAgICAgICB9IGVsc2UgaWYgKHBhcnNlZC5mcmFnbWVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gImFic29sdXRlIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJ1cmkiOwogICAgICAgIH0KICAgICAgICBpZiAob3B0aW9ucy5yZWZlcmVuY2UgJiYgb3B0aW9ucy5yZWZlcmVuY2UgIT09ICJzdWZmaXgiICYmIG9wdGlvbnMucmVmZXJlbmNlICE9PSBwYXJzZWQucmVmZXJlbmNlKSB7CiAgICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIlVSSSBpcyBub3QgYSAiICsgb3B0aW9ucy5yZWZlcmVuY2UgKyAiIHJlZmVyZW5jZS4iOwogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWVIYW5kbGVyID0gU0NIRU1FU1sob3B0aW9ucy5zY2hlbWUgfHwgcGFyc2VkLnNjaGVtZSB8fCAiIikudG9Mb3dlckNhc2UoKV07CiAgICAgICAgaWYgKCFvcHRpb25zLnVuaWNvZGVTdXBwb3J0ICYmICghc2NoZW1lSGFuZGxlciB8fCAhc2NoZW1lSGFuZGxlci51bmljb2RlU3VwcG9ydCkpIHsKICAgICAgICAgIGlmIChwYXJzZWQuaG9zdCAmJiAob3B0aW9ucy5kb21haW5Ib3N0IHx8IHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5kb21haW5Ib3N0KSAmJiBpc0lQID09PSBmYWxzZSAmJiBub25TaW1wbGVEb21haW4ocGFyc2VkLmhvc3QpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgcGFyc2VkLmhvc3QgPSBVUkwuZG9tYWluVG9BU0NJSShwYXJzZWQuaG9zdC50b0xvd2VyQ2FzZSgpKTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiSG9zdCdzIGRvbWFpbiBuYW1lIGNhbiBub3QgYmUgY29udmVydGVkIHRvIEFTQ0lJOiAiICsgZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoIXNjaGVtZUhhbmRsZXIgfHwgc2NoZW1lSGFuZGxlciAmJiAhc2NoZW1lSGFuZGxlci5za2lwTm9ybWFsaXplKSB7CiAgICAgICAgICBpZiAoZ290RW5jb2RpbmcgJiYgcGFyc2VkLnNjaGVtZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5zY2hlbWUgPSB1bmVzY2FwZShwYXJzZWQuc2NoZW1lKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChnb3RFbmNvZGluZyAmJiBwYXJzZWQuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gdW5lc2NhcGUocGFyc2VkLmhvc3QpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhcnNlZC5wYXRoICE9PSB2b2lkIDAgJiYgcGFyc2VkLnBhdGgubGVuZ3RoKSB7CiAgICAgICAgICAgIHBhcnNlZC5wYXRoID0gZXNjYXBlKHVuZXNjYXBlKHBhcnNlZC5wYXRoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGFyc2VkLmZyYWdtZW50ICE9PSB2b2lkIDAgJiYgcGFyc2VkLmZyYWdtZW50Lmxlbmd0aCkgewogICAgICAgICAgICBwYXJzZWQuZnJhZ21lbnQgPSBlbmNvZGVVUkkoZGVjb2RlVVJJQ29tcG9uZW50KHBhcnNlZC5mcmFnbWVudCkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1lSGFuZGxlciAmJiBzY2hlbWVIYW5kbGVyLnBhcnNlKSB7CiAgICAgICAgICBzY2hlbWVIYW5kbGVyLnBhcnNlKHBhcnNlZCwgb3B0aW9ucyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiVVJJIGNhbiBub3QgYmUgcGFyc2VkLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhcnNlZDsKICAgIH0KICAgIHZhciBmYXN0VXJpID0gewogICAgICBTQ0hFTUVTLAogICAgICBub3JtYWxpemUsCiAgICAgIHJlc29sdmUsCiAgICAgIHJlc29sdmVDb21wb25lbnRzLAogICAgICBlcXVhbCwKICAgICAgc2VyaWFsaXplLAogICAgICBwYXJzZQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZGVmYXVsdCA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZmFzdFVyaSA9IGZhc3RVcmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VyaS5qcwp2YXIgcmVxdWlyZV91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdXJpLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXJpID0gcmVxdWlyZV9mYXN0X3VyaSgpOwogICAgdXJpLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91cmkiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB1cmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSB2b2lkIDA7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIktleXdvcmRDeHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0ZV8xLktleXdvcmRDeHQ7CiAgICB9IH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb2RlR2VuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLkNvZGVHZW47CiAgICB9IH0pOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIGNvZGVnZW5fMiA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgJGRhdGFSZWZTY2hlbWEgPSByZXF1aXJlX2RhdGEoKTsKICAgIHZhciB1cmlfMSA9IHJlcXVpcmVfdXJpKCk7CiAgICB2YXIgZGVmYXVsdFJlZ0V4cCA9IChzdHIyLCBmbGFncykgPT4gbmV3IFJlZ0V4cChzdHIyLCBmbGFncyk7CiAgICBkZWZhdWx0UmVnRXhwLmNvZGUgPSAibmV3IFJlZ0V4cCI7CiAgICB2YXIgTUVUQV9JR05PUkVfT1BUSU9OUyA9IFsicmVtb3ZlQWRkaXRpb25hbCIsICJ1c2VEZWZhdWx0cyIsICJjb2VyY2VUeXBlcyJdOwogICAgdmFyIEVYVF9TQ09QRV9OQU1FUyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgInZhbGlkYXRlIiwKICAgICAgInNlcmlhbGl6ZSIsCiAgICAgICJwYXJzZSIsCiAgICAgICJ3cmFwcGVyIiwKICAgICAgInJvb3QiLAogICAgICAic2NoZW1hIiwKICAgICAgImtleXdvcmQiLAogICAgICAicGF0dGVybiIsCiAgICAgICJmb3JtYXRzIiwKICAgICAgInZhbGlkYXRlJGRhdGEiLAogICAgICAiZnVuYyIsCiAgICAgICJvYmoiLAogICAgICAiRXJyb3IiCiAgICBdKTsKICAgIHZhciByZW1vdmVkT3B0aW9ucyA9IHsKICAgICAgZXJyb3JEYXRhUGF0aDogIiIsCiAgICAgIGZvcm1hdDogImB2YWxpZGF0ZUZvcm1hdHM6IGZhbHNlYCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG51bGxhYmxlOiAnIm51bGxhYmxlIiBrZXl3b3JkIGlzIHN1cHBvcnRlZCBieSBkZWZhdWx0LicsCiAgICAgIGpzb25Qb2ludGVyczogIkRlcHJlY2F0ZWQganNQcm9wZXJ0eVN5bnRheCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIGV4dGVuZFJlZnM6ICJEZXByZWNhdGVkIGlnbm9yZUtleXdvcmRzV2l0aFJlZiBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG1pc3NpbmdSZWZzOiAiUGFzcyBlbXB0eSBzY2hlbWEgd2l0aCAkaWQgdGhhdCBzaG91bGQgYmUgaWdub3JlZCB0byBhanYuYWRkU2NoZW1hLiIsCiAgICAgIHByb2Nlc3NDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3Byb2Nlc3M6IChjb2RlLCBzY2hlbWFFbnY6IG9iamVjdCkgPT4gc3RyaW5nfWAiLAogICAgICBzb3VyY2VDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3NvdXJjZTogdHJ1ZX1gIiwKICAgICAgc3RyaWN0RGVmYXVsdHM6ICJJdCBpcyBkZWZhdWx0IG5vdywgc2VlIG9wdGlvbiBgc3RyaWN0YC4iLAogICAgICBzdHJpY3RLZXl3b3JkczogIkl0IGlzIGRlZmF1bHQgbm93LCBzZWUgb3B0aW9uIGBzdHJpY3RgLiIsCiAgICAgIHVuaXF1ZUl0ZW1zOiAnInVuaXF1ZUl0ZW1zIiBrZXl3b3JkIGlzIGFsd2F5cyB2YWxpZGF0ZWQuJywKICAgICAgdW5rbm93bkZvcm1hdHM6ICJEaXNhYmxlIHN0cmljdCBtb2RlIG9yIHBhc3MgYHRydWVgIHRvIGBhanYuYWRkRm9ybWF0YCAob3IgYGZvcm1hdHNgIG9wdGlvbikuIiwKICAgICAgY2FjaGU6ICJNYXAgaXMgdXNlZCBhcyBjYWNoZSwgc2NoZW1hIG9iamVjdCBhcyBrZXkuIiwKICAgICAgc2VyaWFsaXplOiAiTWFwIGlzIHVzZWQgYXMgY2FjaGUsIHNjaGVtYSBvYmplY3QgYXMga2V5LiIsCiAgICAgIGFqdkVycm9yczogIkl0IGlzIGRlZmF1bHQgbm93LiIKICAgIH07CiAgICB2YXIgZGVwcmVjYXRlZE9wdGlvbnMgPSB7CiAgICAgIGlnbm9yZUtleXdvcmRzV2l0aFJlZjogIiIsCiAgICAgIGpzUHJvcGVydHlTeW50YXg6ICIiLAogICAgICB1bmljb2RlOiAnIm1pbkxlbmd0aCIvIm1heExlbmd0aCIgYWNjb3VudCBmb3IgdW5pY29kZSBjaGFyYWN0ZXJzIGJ5IGRlZmF1bHQuJwogICAgfTsKICAgIHZhciBNQVhfRVhQUkVTU0lPTiA9IDIwMDsKICAgIGZ1bmN0aW9uIHJlcXVpcmVkT3B0aW9ucyhvKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mLCBfZywgX2gsIF9qLCBfaywgX2wsIF9tLCBfbywgX3AsIF9xLCBfciwgX3MsIF90LCBfdSwgX3YsIF93LCBfeCwgX3ksIF96LCBfMDsKICAgICAgY29uc3QgcyA9IG8uc3RyaWN0OwogICAgICBjb25zdCBfb3B0eiA9IChfYSA9IG8uY29kZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplOwogICAgICBjb25zdCBvcHRpbWl6ZSA9IF9vcHR6ID09PSB0cnVlIHx8IF9vcHR6ID09PSB2b2lkIDAgPyAxIDogX29wdHogfHwgMDsKICAgICAgY29uc3QgcmVnRXhwID0gKF9jID0gKF9iID0gby5jb2RlKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IucmVnRXhwKSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiBkZWZhdWx0UmVnRXhwOwogICAgICBjb25zdCB1cmlSZXNvbHZlciA9IChfZCA9IG8udXJpUmVzb2x2ZXIpICE9PSBudWxsICYmIF9kICE9PSB2b2lkIDAgPyBfZCA6IHVyaV8xLmRlZmF1bHQ7CiAgICAgIHJldHVybiB7CiAgICAgICAgc3RyaWN0U2NoZW1hOiAoX2YgPSAoX2UgPSBvLnN0cmljdFNjaGVtYSkgIT09IG51bGwgJiYgX2UgIT09IHZvaWQgMCA/IF9lIDogcykgIT09IG51bGwgJiYgX2YgIT09IHZvaWQgMCA/IF9mIDogdHJ1ZSwKICAgICAgICBzdHJpY3ROdW1iZXJzOiAoX2ggPSAoX2cgPSBvLnN0cmljdE51bWJlcnMpICE9PSBudWxsICYmIF9nICE9PSB2b2lkIDAgPyBfZyA6IHMpICE9PSBudWxsICYmIF9oICE9PSB2b2lkIDAgPyBfaCA6IHRydWUsCiAgICAgICAgc3RyaWN0VHlwZXM6IChfayA9IChfaiA9IG8uc3RyaWN0VHlwZXMpICE9PSBudWxsICYmIF9qICE9PSB2b2lkIDAgPyBfaiA6IHMpICE9PSBudWxsICYmIF9rICE9PSB2b2lkIDAgPyBfayA6ICJsb2ciLAogICAgICAgIHN0cmljdFR1cGxlczogKF9tID0gKF9sID0gby5zdHJpY3RUdXBsZXMpICE9PSBudWxsICYmIF9sICE9PSB2b2lkIDAgPyBfbCA6IHMpICE9PSBudWxsICYmIF9tICE9PSB2b2lkIDAgPyBfbSA6ICJsb2ciLAogICAgICAgIHN0cmljdFJlcXVpcmVkOiAoX3AgPSAoX28gPSBvLnN0cmljdFJlcXVpcmVkKSAhPT0gbnVsbCAmJiBfbyAhPT0gdm9pZCAwID8gX28gOiBzKSAhPT0gbnVsbCAmJiBfcCAhPT0gdm9pZCAwID8gX3AgOiBmYWxzZSwKICAgICAgICBjb2RlOiBvLmNvZGUgPyB7IC4uLm8uY29kZSwgb3B0aW1pemUsIHJlZ0V4cCB9IDogeyBvcHRpbWl6ZSwgcmVnRXhwIH0sCiAgICAgICAgbG9vcFJlcXVpcmVkOiAoX3EgPSBvLmxvb3BSZXF1aXJlZCkgIT09IG51bGwgJiYgX3EgIT09IHZvaWQgMCA/IF9xIDogTUFYX0VYUFJFU1NJT04sCiAgICAgICAgbG9vcEVudW06IChfciA9IG8ubG9vcEVudW0pICE9PSBudWxsICYmIF9yICE9PSB2b2lkIDAgPyBfciA6IE1BWF9FWFBSRVNTSU9OLAogICAgICAgIG1ldGE6IChfcyA9IG8ubWV0YSkgIT09IG51bGwgJiYgX3MgIT09IHZvaWQgMCA/IF9zIDogdHJ1ZSwKICAgICAgICBtZXNzYWdlczogKF90ID0gby5tZXNzYWdlcykgIT09IG51bGwgJiYgX3QgIT09IHZvaWQgMCA/IF90IDogdHJ1ZSwKICAgICAgICBpbmxpbmVSZWZzOiAoX3UgPSBvLmlubGluZVJlZnMpICE9PSBudWxsICYmIF91ICE9PSB2b2lkIDAgPyBfdSA6IHRydWUsCiAgICAgICAgc2NoZW1hSWQ6IChfdiA9IG8uc2NoZW1hSWQpICE9PSBudWxsICYmIF92ICE9PSB2b2lkIDAgPyBfdiA6ICIkaWQiLAogICAgICAgIGFkZFVzZWRTY2hlbWE6IChfdyA9IG8uYWRkVXNlZFNjaGVtYSkgIT09IG51bGwgJiYgX3cgIT09IHZvaWQgMCA/IF93IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZVNjaGVtYTogKF94ID0gby52YWxpZGF0ZVNjaGVtYSkgIT09IG51bGwgJiYgX3ggIT09IHZvaWQgMCA/IF94IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZUZvcm1hdHM6IChfeSA9IG8udmFsaWRhdGVGb3JtYXRzKSAhPT0gbnVsbCAmJiBfeSAhPT0gdm9pZCAwID8gX3kgOiB0cnVlLAogICAgICAgIHVuaWNvZGVSZWdFeHA6IChfeiA9IG8udW5pY29kZVJlZ0V4cCkgIT09IG51bGwgJiYgX3ogIT09IHZvaWQgMCA/IF96IDogdHJ1ZSwKICAgICAgICBpbnQzMnJhbmdlOiAoXzAgPSBvLmludDMycmFuZ2UpICE9PSBudWxsICYmIF8wICE9PSB2b2lkIDAgPyBfMCA6IHRydWUsCiAgICAgICAgdXJpUmVzb2x2ZXIKICAgICAgfTsKICAgIH0KICAgIHZhciBBanYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMgPSB7fSkgewogICAgICAgIHRoaXMuc2NoZW1hcyA9IHt9OwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICAgIHRoaXMuZm9ybWF0cyA9IHt9OwogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgdGhpcy5fbG9hZGluZyA9IHt9OwogICAgICAgIHRoaXMuX2NhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBvcHRzID0gdGhpcy5vcHRzID0geyAuLi5vcHRzLCAuLi5yZXF1aXJlZE9wdGlvbnMob3B0cykgfTsKICAgICAgICBjb25zdCB7IGVzNSwgbGluZXMgfSA9IHRoaXMub3B0cy5jb2RlOwogICAgICAgIHRoaXMuc2NvcGUgPSBuZXcgY29kZWdlbl8yLlZhbHVlU2NvcGUoeyBzY29wZToge30sIHByZWZpeGVzOiBFWFRfU0NPUEVfTkFNRVMsIGVzNSwgbGluZXMgfSk7CiAgICAgICAgdGhpcy5sb2dnZXIgPSBnZXRMb2dnZXIob3B0cy5sb2dnZXIpOwogICAgICAgIGNvbnN0IGZvcm1hdE9wdCA9IG9wdHMudmFsaWRhdGVGb3JtYXRzOwogICAgICAgIG9wdHMudmFsaWRhdGVGb3JtYXRzID0gZmFsc2U7CiAgICAgICAgdGhpcy5SVUxFUyA9ICgwLCBydWxlc18xLmdldFJ1bGVzKSgpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIHJlbW92ZWRPcHRpb25zLCBvcHRzLCAiTk9UIFNVUFBPUlRFRCIpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIGRlcHJlY2F0ZWRPcHRpb25zLCBvcHRzLCAiREVQUkVDQVRFRCIsICJ3YXJuIik7CiAgICAgICAgdGhpcy5fbWV0YU9wdHMgPSBnZXRNZXRhU2NoZW1hT3B0aW9ucy5jYWxsKHRoaXMpOwogICAgICAgIGlmIChvcHRzLmZvcm1hdHMpCiAgICAgICAgICBhZGRJbml0aWFsRm9ybWF0cy5jYWxsKHRoaXMpOwogICAgICAgIHRoaXMuX2FkZFZvY2FidWxhcmllcygpOwogICAgICAgIHRoaXMuX2FkZERlZmF1bHRNZXRhU2NoZW1hKCk7CiAgICAgICAgaWYgKG9wdHMua2V5d29yZHMpCiAgICAgICAgICBhZGRJbml0aWFsS2V5d29yZHMuY2FsbCh0aGlzLCBvcHRzLmtleXdvcmRzKTsKICAgICAgICBpZiAodHlwZW9mIG9wdHMubWV0YSA9PSAib2JqZWN0IikKICAgICAgICAgIHRoaXMuYWRkTWV0YVNjaGVtYShvcHRzLm1ldGEpOwogICAgICAgIGFkZEluaXRpYWxTY2hlbWFzLmNhbGwodGhpcyk7CiAgICAgICAgb3B0cy52YWxpZGF0ZUZvcm1hdHMgPSBmb3JtYXRPcHQ7CiAgICAgIH0KICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICB0aGlzLmFkZEtleXdvcmQoIiRhc3luYyIpOwogICAgICB9CiAgICAgIF9hZGREZWZhdWx0TWV0YVNjaGVtYSgpIHsKICAgICAgICBjb25zdCB7ICRkYXRhLCBtZXRhLCBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGxldCBfZGF0YVJlZlNjaGVtYSA9ICRkYXRhUmVmU2NoZW1hOwogICAgICAgIGlmIChzY2hlbWFJZCA9PT0gImlkIikgewogICAgICAgICAgX2RhdGFSZWZTY2hlbWEgPSB7IC4uLiRkYXRhUmVmU2NoZW1hIH07CiAgICAgICAgICBfZGF0YVJlZlNjaGVtYS5pZCA9IF9kYXRhUmVmU2NoZW1hLiRpZDsKICAgICAgICAgIGRlbGV0ZSBfZGF0YVJlZlNjaGVtYS4kaWQ7CiAgICAgICAgfQogICAgICAgIGlmIChtZXRhICYmICRkYXRhKQogICAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKF9kYXRhUmVmU2NoZW1hLCBfZGF0YVJlZlNjaGVtYVtzY2hlbWFJZF0sIGZhbHNlKTsKICAgICAgfQogICAgICBkZWZhdWx0TWV0YSgpIHsKICAgICAgICBjb25zdCB7IG1ldGEsIHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHR5cGVvZiBtZXRhID09ICJvYmplY3QiID8gbWV0YVtzY2hlbWFJZF0gfHwgbWV0YSA6IHZvaWQgMDsKICAgICAgfQogICAgICB2YWxpZGF0ZShzY2hlbWFLZXlSZWYsIGRhdGEpIHsKICAgICAgICBsZXQgdjsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYUtleVJlZiA9PSAic3RyaW5nIikgewogICAgICAgICAgdiA9IHRoaXMuZ2V0U2NoZW1hKHNjaGVtYUtleVJlZik7CiAgICAgICAgICBpZiAoIXYpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgbm8gc2NoZW1hIHdpdGgga2V5IG9yIHJlZiAiJHtzY2hlbWFLZXlSZWZ9ImApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB2ID0gdGhpcy5jb21waWxlKHNjaGVtYUtleVJlZik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gdihkYXRhKTsKICAgICAgICBpZiAoISgiJGFzeW5jIiBpbiB2KSkKICAgICAgICAgIHRoaXMuZXJyb3JzID0gdi5lcnJvcnM7CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIGNvbXBpbGUoc2NoZW1hMiwgX21ldGEpIHsKICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEpOwogICAgICAgIHJldHVybiBzY2gudmFsaWRhdGUgfHwgdGhpcy5fY29tcGlsZVNjaGVtYUVudihzY2gpOwogICAgICB9CiAgICAgIGNvbXBpbGVBc3luYyhzY2hlbWEyLCBtZXRhKSB7CiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdHMubG9hZFNjaGVtYSAhPSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIm9wdGlvbnMubG9hZFNjaGVtYSBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB7IGxvYWRTY2hlbWEgfSA9IHRoaXMub3B0czsKICAgICAgICByZXR1cm4gcnVuQ29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoZW1hMiwgbWV0YSk7CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuQ29tcGlsZUFzeW5jKF9zY2hlbWEsIF9tZXRhKSB7CiAgICAgICAgICBhd2FpdCBsb2FkTWV0YVNjaGVtYS5jYWxsKHRoaXMsIF9zY2hlbWEuJHNjaGVtYSk7CiAgICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoX3NjaGVtYSwgX21ldGEpOwogICAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gbG9hZE1ldGFTY2hlbWEoJHJlZikgewogICAgICAgICAgaWYgKCRyZWYgJiYgIXRoaXMuZ2V0U2NoZW1hKCRyZWYpKSB7CiAgICAgICAgICAgIGF3YWl0IHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHsgJHJlZiB9LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gX2NvbXBpbGVBc3luYyhzY2gpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiByZWZfZXJyb3JfMS5kZWZhdWx0KSkKICAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgICBjaGVja0xvYWRlZC5jYWxsKHRoaXMsIGUpOwogICAgICAgICAgICBhd2FpdCBsb2FkTWlzc2luZ1NjaGVtYS5jYWxsKHRoaXMsIGUubWlzc2luZ1NjaGVtYSk7CiAgICAgICAgICAgIHJldHVybiBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoeyBtaXNzaW5nU2NoZW1hOiByZWYsIG1pc3NpbmdSZWYgfSkgewogICAgICAgICAgaWYgKHRoaXMucmVmc1tyZWZdKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQW55U2NoZW1hICR7cmVmfSBpcyBsb2FkZWQgYnV0ICR7bWlzc2luZ1JlZn0gY2Fubm90IGJlIHJlc29sdmVkYCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIGxvYWRNaXNzaW5nU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgX3NjaGVtYSA9IGF3YWl0IF9sb2FkU2NoZW1hLmNhbGwodGhpcywgcmVmKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIGF3YWl0IGxvYWRNZXRhU2NoZW1hLmNhbGwodGhpcywgX3NjaGVtYS4kc2NoZW1hKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKF9zY2hlbWEsIHJlZiwgbWV0YSk7CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIF9sb2FkU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvYWRpbmdbcmVmXTsKICAgICAgICAgIGlmIChwKQogICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAodGhpcy5fbG9hZGluZ1tyZWZdID0gbG9hZFNjaGVtYShyZWYpKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9sb2FkaW5nW3JlZl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIEFkZHMgc2NoZW1hIHRvIHRoZSBpbnN0YW5jZQogICAgICBhZGRTY2hlbWEoc2NoZW1hMiwga2V5LCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMikpIHsKICAgICAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHNjaGVtYTIpCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaCwgdm9pZCAwLCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBsZXQgaWQ7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgICAgaWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICAgIGlmIChpZCAhPT0gdm9pZCAwICYmIHR5cGVvZiBpZCAhPSAic3RyaW5nIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSAke3NjaGVtYUlkfSBtdXN0IGJlIHN0cmluZ2ApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBrZXkgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXkgfHwgaWQpOwogICAgICAgIHRoaXMuX2NoZWNrVW5pcXVlKGtleSk7CiAgICAgICAgdGhpcy5zY2hlbWFzW2tleV0gPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBBZGQgc2NoZW1hIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHZhbGlkYXRlIG90aGVyIHNjaGVtYXMKICAgICAgLy8gb3B0aW9ucyBpbiBNRVRBX0lHTk9SRV9PUFRJT05TIGFyZSBhbHdheSBzZXQgdG8gZmFsc2UKICAgICAgYWRkTWV0YVNjaGVtYShzY2hlbWEyLCBrZXksIF92YWxpZGF0ZVNjaGVtYSA9IHRoaXMub3B0cy52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaGVtYTIsIGtleSwgdHJ1ZSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyAgVmFsaWRhdGUgc2NoZW1hIGFnYWluc3QgaXRzIG1ldGEtc2NoZW1hCiAgICAgIHZhbGlkYXRlU2NoZW1hKHNjaGVtYTIsIHRocm93T3JMb2dFcnJvcikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgJHNjaGVtYTsKICAgICAgICAkc2NoZW1hID0gc2NoZW1hMi4kc2NoZW1hOwogICAgICAgIGlmICgkc2NoZW1hICE9PSB2b2lkIDAgJiYgdHlwZW9mICRzY2hlbWEgIT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiJHNjaGVtYSBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgfQogICAgICAgICRzY2hlbWEgPSAkc2NoZW1hIHx8IHRoaXMub3B0cy5kZWZhdWx0TWV0YSB8fCB0aGlzLmRlZmF1bHRNZXRhKCk7CiAgICAgICAgaWYgKCEkc2NoZW1hKSB7CiAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKCJtZXRhLXNjaGVtYSBub3QgYXZhaWxhYmxlIik7CiAgICAgICAgICB0aGlzLmVycm9ycyA9IG51bGw7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdmFsaWQgPSB0aGlzLnZhbGlkYXRlKCRzY2hlbWEsIHNjaGVtYTIpOwogICAgICAgIGlmICghdmFsaWQgJiYgdGhyb3dPckxvZ0Vycm9yKSB7CiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gInNjaGVtYSBpcyBpbnZhbGlkOiAiICsgdGhpcy5lcnJvcnNUZXh0KCk7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IobWVzc2FnZSk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIC8vIEdldCBjb21waWxlZCBzY2hlbWEgYnkgYGtleWAgb3IgYHJlZmAuCiAgICAgIC8vIChga2V5YCB0aGF0IHdhcyBwYXNzZWQgdG8gYGFkZFNjaGVtYWAgb3IgZnVsbCBzY2hlbWEgcmVmZXJlbmNlIC0gYHNjaGVtYS4kaWRgIG9yIHJlc29sdmVkIGlkKQogICAgICBnZXRTY2hlbWEoa2V5UmVmKSB7CiAgICAgICAgbGV0IHNjaDsKICAgICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSBnZXRTY2hFbnYuY2FsbCh0aGlzLCBrZXlSZWYpKSA9PSAic3RyaW5nIikKICAgICAgICAgIGtleVJlZiA9IHNjaDsKICAgICAgICBpZiAoc2NoID09PSB2b2lkIDApIHsKICAgICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICAgIGNvbnN0IHJvb3QgPSBuZXcgY29tcGlsZV8xLlNjaGVtYUVudih7IHNjaGVtYToge30sIHNjaGVtYUlkIH0pOwogICAgICAgICAgc2NoID0gY29tcGlsZV8xLnJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBrZXlSZWYpOwogICAgICAgICAgaWYgKCFzY2gpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHRoaXMucmVmc1trZXlSZWZdID0gc2NoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlIHx8IHRoaXMuX2NvbXBpbGVTY2hlbWFFbnYoc2NoKTsKICAgICAgfQogICAgICAvLyBSZW1vdmUgY2FjaGVkIHNjaGVtYShzKS4KICAgICAgLy8gSWYgbm8gcGFyYW1ldGVyIGlzIHBhc3NlZCBhbGwgc2NoZW1hcyBidXQgbWV0YS1zY2hlbWFzIGFyZSByZW1vdmVkLgogICAgICAvLyBJZiBSZWdFeHAgaXMgcGFzc2VkIGFsbCBzY2hlbWFzIHdpdGgga2V5L2lkIG1hdGNoaW5nIHBhdHRlcm4gYnV0IG1ldGEtc2NoZW1hcyBhcmUgcmVtb3ZlZC4KICAgICAgLy8gRXZlbiBpZiBzY2hlbWEgaXMgcmVmZXJlbmNlZCBieSBvdGhlciBzY2hlbWFzIGl0IHN0aWxsIGNhbiBiZSByZW1vdmVkIGFzIG90aGVyIHNjaGVtYXMgaGF2ZSBsb2NhbCByZWZlcmVuY2VzLgogICAgICByZW1vdmVTY2hlbWEoc2NoZW1hS2V5UmVmKSB7CiAgICAgICAgaWYgKHNjaGVtYUtleVJlZiBpbnN0YW5jZW9mIFJlZ0V4cCkgewogICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnNjaGVtYXMsIHNjaGVtYUtleVJlZik7CiAgICAgICAgICB0aGlzLl9yZW1vdmVBbGxTY2hlbWFzKHRoaXMucmVmcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBzd2l0Y2ggKHR5cGVvZiBzY2hlbWFLZXlSZWYpIHsKICAgICAgICAgIGNhc2UgInVuZGVmaW5lZCI6CiAgICAgICAgICAgIHRoaXMuX3JlbW92ZUFsbFNjaGVtYXModGhpcy5zY2hlbWFzKTsKICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnJlZnMpOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIGNhc2UgInN0cmluZyI6IHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gZ2V0U2NoRW52LmNhbGwodGhpcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpCiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICBkZWxldGUgdGhpcy5zY2hlbWFzW3NjaGVtYUtleVJlZl07CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLnJlZnNbc2NoZW1hS2V5UmVmXTsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc2NoZW1hS2V5UmVmOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVLZXkpOwogICAgICAgICAgICBsZXQgaWQgPSBzY2hlbWFLZXlSZWZbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICAgICAgaWYgKGlkKSB7CiAgICAgICAgICAgICAgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShpZCk7CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2NoZW1hc1tpZF07CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMucmVmc1tpZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdi5yZW1vdmVTY2hlbWE6IGludmFsaWQgcGFyYW1ldGVyIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIGFkZCAidm9jYWJ1bGFyeSIgLSBhIGNvbGxlY3Rpb24gb2Yga2V5d29yZHMKICAgICAgYWRkVm9jYWJ1bGFyeShkZWZpbml0aW9ucykgewogICAgICAgIGZvciAoY29uc3QgZGVmIG9mIGRlZmluaXRpb25zKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYWRkS2V5d29yZChrd2RPckRlZiwgZGVmKSB7CiAgICAgICAgbGV0IGtleXdvcmQ7CiAgICAgICAgaWYgKHR5cGVvZiBrd2RPckRlZiA9PSAic3RyaW5nIikgewogICAgICAgICAga2V5d29yZCA9IGt3ZE9yRGVmOwogICAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgdGhpcy5sb2dnZXIud2FybigidGhlc2UgcGFyYW1ldGVycyBhcmUgZGVwcmVjYXRlZCwgc2VlIGRvY3MgZm9yIGFkZEtleXdvcmQiKTsKICAgICAgICAgICAgZGVmLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGt3ZE9yRGVmID09ICJvYmplY3QiICYmIGRlZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWYgPSBrd2RPckRlZjsKICAgICAgICAgIGtleXdvcmQgPSBkZWYua2V5d29yZDsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGtleXdvcmQpICYmICFrZXl3b3JkLmxlbmd0aCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFkZEtleXdvcmRzOiBrZXl3b3JkIG11c3QgYmUgc3RyaW5nIG9yIG5vbi1lbXB0eSBhcnJheSIpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgYWRkS2V5d29yZHMgcGFyYW1ldGVycyIpOwogICAgICAgIH0KICAgICAgICBjaGVja0tleXdvcmQuY2FsbCh0aGlzLCBrZXl3b3JkLCBkZWYpOwogICAgICAgIGlmICghZGVmKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiBhZGRSdWxlLmNhbGwodGhpcywga3dkKSk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAga2V5d29yZE1ldGFzY2hlbWEuY2FsbCh0aGlzLCBkZWYpOwogICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAuLi5kZWYsCiAgICAgICAgICB0eXBlOiAoMCwgZGF0YVR5cGVfMS5nZXRKU09OVHlwZXMpKGRlZi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmLnNjaGVtYVR5cGUpCiAgICAgICAgfTsKICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCBkZWZpbml0aW9uLnR5cGUubGVuZ3RoID09PSAwID8gKGspID0+IGFkZFJ1bGUuY2FsbCh0aGlzLCBrLCBkZWZpbml0aW9uKSA6IChrKSA9PiBkZWZpbml0aW9uLnR5cGUuZm9yRWFjaCgodCkgPT4gYWRkUnVsZS5jYWxsKHRoaXMsIGssIGRlZmluaXRpb24sIHQpKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0S2V5d29yZChrZXl3b3JkKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIHJldHVybiB0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiA/IHJ1bGUuZGVmaW5pdGlvbiA6ICEhcnVsZTsKICAgICAgfQogICAgICAvLyBSZW1vdmUga2V5d29yZAogICAgICByZW1vdmVLZXl3b3JkKGtleXdvcmQpIHsKICAgICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAgIGRlbGV0ZSBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXTsKICAgICAgICBkZWxldGUgUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpIHsKICAgICAgICAgIGNvbnN0IGkgPSBncm91cC5ydWxlcy5maW5kSW5kZXgoKHJ1bGUpID0+IHJ1bGUua2V5d29yZCA9PT0ga2V5d29yZCk7CiAgICAgICAgICBpZiAoaSA+PSAwKQogICAgICAgICAgICBncm91cC5ydWxlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIEFkZCBmb3JtYXQKICAgICAgYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCkgewogICAgICAgIGlmICh0eXBlb2YgZm9ybWF0ID09ICJzdHJpbmciKQogICAgICAgICAgZm9ybWF0ID0gbmV3IFJlZ0V4cChmb3JtYXQpOwogICAgICAgIHRoaXMuZm9ybWF0c1tuYW1lXSA9IGZvcm1hdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBlcnJvcnNUZXh0KGVycm9ycyA9IHRoaXMuZXJyb3JzLCB7IHNlcGFyYXRvciA9ICIsICIsIGRhdGFWYXIgPSAiZGF0YSIgfSA9IHt9KSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiTm8gZXJyb3JzIjsKICAgICAgICByZXR1cm4gZXJyb3JzLm1hcCgoZSkgPT4gYCR7ZGF0YVZhcn0ke2UuaW5zdGFuY2VQYXRofSAke2UubWVzc2FnZX1gKS5yZWR1Y2UoKHRleHQsIG1zZykgPT4gdGV4dCArIHNlcGFyYXRvciArIG1zZyk7CiAgICAgIH0KICAgICAgJGRhdGFNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIGtleXdvcmRzSnNvblBvaW50ZXJzKSB7CiAgICAgICAgY29uc3QgcnVsZXMgPSB0aGlzLlJVTEVTLmFsbDsKICAgICAgICBtZXRhU2NoZW1hID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShtZXRhU2NoZW1hKSk7CiAgICAgICAgZm9yIChjb25zdCBqc29uUG9pbnRlciBvZiBrZXl3b3Jkc0pzb25Qb2ludGVycykgewogICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBqc29uUG9pbnRlci5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgbGV0IGtleXdvcmRzID0gbWV0YVNjaGVtYTsKICAgICAgICAgIGZvciAoY29uc3Qgc2VnIG9mIHNlZ21lbnRzKQogICAgICAgICAgICBrZXl3b3JkcyA9IGtleXdvcmRzW3NlZ107CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBydWxlcykgewogICAgICAgICAgICBjb25zdCBydWxlID0gcnVsZXNba2V5XTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlICE9ICJvYmplY3QiKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjb25zdCB7ICRkYXRhIH0gPSBydWxlLmRlZmluaXRpb247CiAgICAgICAgICAgIGNvbnN0IHNjaGVtYTIgPSBrZXl3b3Jkc1trZXldOwogICAgICAgICAgICBpZiAoJGRhdGEgJiYgc2NoZW1hMikKICAgICAgICAgICAgICBrZXl3b3Jkc1trZXldID0gc2NoZW1hT3JEYXRhKHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWV0YVNjaGVtYTsKICAgICAgfQogICAgICBfcmVtb3ZlQWxsU2NoZW1hcyhzY2hlbWFzLCByZWdleCkgewogICAgICAgIGZvciAoY29uc3Qga2V5UmVmIGluIHNjaGVtYXMpIHsKICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgIGlmICghcmVnZXggfHwgcmVnZXgudGVzdChrZXlSZWYpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgZGVsZXRlIHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2ggJiYgIXNjaC5tZXRhKSB7CiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICAgIGRlbGV0ZSBzY2hlbWFzW2tleVJlZl07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX2FkZFNjaGVtYShzY2hlbWEyLCBtZXRhLCBiYXNlSWQsIHZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hLCBhZGRTY2hlbWEgPSB0aGlzLm9wdHMuYWRkVXNlZFNjaGVtYSkgewogICAgICAgIGxldCBpZDsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiKSB7CiAgICAgICAgICBpZCA9IHNjaGVtYTJbc2NoZW1hSWRdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLmp0ZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3QiKTsKICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyICE9ICJib29sZWFuIikKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3Qgb3IgYm9vbGVhbiIpOwogICAgICAgIH0KICAgICAgICBsZXQgc2NoID0gdGhpcy5fY2FjaGUuZ2V0KHNjaGVtYTIpOwogICAgICAgIGlmIChzY2ggIT09IHZvaWQgMCkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoaWQgfHwgYmFzZUlkKTsKICAgICAgICBjb25zdCBsb2NhbFJlZnMgPSByZXNvbHZlXzEuZ2V0U2NoZW1hUmVmcy5jYWxsKHRoaXMsIHNjaGVtYTIsIGJhc2VJZCk7CiAgICAgICAgc2NoID0gbmV3IGNvbXBpbGVfMS5TY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCBtZXRhLCBiYXNlSWQsIGxvY2FsUmVmcyB9KTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoc2NoLnNjaGVtYSwgc2NoKTsKICAgICAgICBpZiAoYWRkU2NoZW1hICYmICFiYXNlSWQuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICBpZiAoYmFzZUlkKQogICAgICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShiYXNlSWQpOwogICAgICAgICAgdGhpcy5yZWZzW2Jhc2VJZF0gPSBzY2g7CiAgICAgICAgfQogICAgICAgIGlmICh2YWxpZGF0ZVNjaGVtYSkKICAgICAgICAgIHRoaXMudmFsaWRhdGVTY2hlbWEoc2NoZW1hMiwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfQogICAgICBfY2hlY2tVbmlxdWUoaWQpIHsKICAgICAgICBpZiAodGhpcy5zY2hlbWFzW2lkXSB8fCB0aGlzLnJlZnNbaWRdKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSB3aXRoIGtleSBvciBpZCAiJHtpZH0iIGFscmVhZHkgZXhpc3RzYCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9jb21waWxlU2NoZW1hRW52KHNjaCkgewogICAgICAgIGlmIChzY2gubWV0YSkKICAgICAgICAgIHRoaXMuX2NvbXBpbGVNZXRhU2NoZW1hKHNjaCk7CiAgICAgICAgZWxzZQogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIGlmICghc2NoLnZhbGlkYXRlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlOwogICAgICB9CiAgICAgIF9jb21waWxlTWV0YVNjaGVtYShzY2gpIHsKICAgICAgICBjb25zdCBjdXJyZW50T3B0cyA9IHRoaXMub3B0czsKICAgICAgICB0aGlzLm9wdHMgPSB0aGlzLl9tZXRhT3B0czsKICAgICAgICB0cnkgewogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLm9wdHMgPSBjdXJyZW50T3B0czsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBBanYuVmFsaWRhdGlvbkVycm9yID0gdmFsaWRhdGlvbl9lcnJvcl8xLmRlZmF1bHQ7CiAgICBBanYuTWlzc2luZ1JlZkVycm9yID0gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBBanY7CiAgICBmdW5jdGlvbiBjaGVja09wdGlvbnMoY2hlY2tPcHRzLCBvcHRpb25zLCBtc2csIGxvZyA9ICJlcnJvciIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gY2hlY2tPcHRzKSB7CiAgICAgICAgY29uc3Qgb3B0ID0ga2V5OwogICAgICAgIGlmIChvcHQgaW4gb3B0aW9ucykKICAgICAgICAgIHRoaXMubG9nZ2VyW2xvZ10oYCR7bXNnfTogb3B0aW9uICR7a2V5fS4gJHtjaGVja09wdHNbb3B0XX1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZ2V0U2NoRW52KGtleVJlZikgewogICAgICBrZXlSZWYgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXlSZWYpOwogICAgICByZXR1cm4gdGhpcy5zY2hlbWFzW2tleVJlZl0gfHwgdGhpcy5yZWZzW2tleVJlZl07CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsU2NoZW1hcygpIHsKICAgICAgY29uc3Qgb3B0c1NjaGVtYXMgPSB0aGlzLm9wdHMuc2NoZW1hczsKICAgICAgaWYgKCFvcHRzU2NoZW1hcykKICAgICAgICByZXR1cm47CiAgICAgIGlmIChBcnJheS5pc0FycmF5KG9wdHNTY2hlbWFzKSkKICAgICAgICB0aGlzLmFkZFNjaGVtYShvcHRzU2NoZW1hcyk7CiAgICAgIGVsc2UKICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBvcHRzU2NoZW1hcykKICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKG9wdHNTY2hlbWFzW2tleV0sIGtleSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsRm9ybWF0cygpIHsKICAgICAgZm9yIChjb25zdCBuYW1lIGluIHRoaXMub3B0cy5mb3JtYXRzKSB7CiAgICAgICAgY29uc3QgZm9ybWF0ID0gdGhpcy5vcHRzLmZvcm1hdHNbbmFtZV07CiAgICAgICAgaWYgKGZvcm1hdCkKICAgICAgICAgIHRoaXMuYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxLZXl3b3JkcyhkZWZzKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRlZnMpKSB7CiAgICAgICAgdGhpcy5hZGRWb2NhYnVsYXJ5KGRlZnMpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLmxvZ2dlci53YXJuKCJrZXl3b3JkcyBvcHRpb24gYXMgbWFwIGlzIGRlcHJlY2F0ZWQsIHBhc3MgYXJyYXkiKTsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIGRlZnMpIHsKICAgICAgICBjb25zdCBkZWYgPSBkZWZzW2tleXdvcmRdOwogICAgICAgIGlmICghZGVmLmtleXdvcmQpCiAgICAgICAgICBkZWYua2V5d29yZCA9IGtleXdvcmQ7CiAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGdldE1ldGFTY2hlbWFPcHRpb25zKCkgewogICAgICBjb25zdCBtZXRhT3B0cyA9IHsgLi4udGhpcy5vcHRzIH07CiAgICAgIGZvciAoY29uc3Qgb3B0IG9mIE1FVEFfSUdOT1JFX09QVElPTlMpCiAgICAgICAgZGVsZXRlIG1ldGFPcHRzW29wdF07CiAgICAgIHJldHVybiBtZXRhT3B0czsKICAgIH0KICAgIHZhciBub0xvZ3MgPSB7IGxvZygpIHsKICAgIH0sIHdhcm4oKSB7CiAgICB9LCBlcnJvcigpIHsKICAgIH0gfTsKICAgIGZ1bmN0aW9uIGdldExvZ2dlcihsb2dnZXIpIHsKICAgICAgaWYgKGxvZ2dlciA9PT0gZmFsc2UpCiAgICAgICAgcmV0dXJuIG5vTG9nczsKICAgICAgaWYgKGxvZ2dlciA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybiBjb25zb2xlOwogICAgICBpZiAobG9nZ2VyLmxvZyAmJiBsb2dnZXIud2FybiAmJiBsb2dnZXIuZXJyb3IpCiAgICAgICAgcmV0dXJuIGxvZ2dlcjsKICAgICAgdGhyb3cgbmV3IEVycm9yKCJsb2dnZXIgbXVzdCBpbXBsZW1lbnQgbG9nLCB3YXJuIGFuZCBlcnJvciBtZXRob2RzIik7CiAgICB9CiAgICB2YXIgS0VZV09SRF9OQU1FID0gL15bYS16XyRdW2EtejAtOV8kOi1dKiQvaTsKICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZChrZXl3b3JkLCBkZWYpIHsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgKDAsIHV0aWxfMS5lYWNoSXRlbSkoa2V5d29yZCwgKGt3ZCkgPT4gewogICAgICAgIGlmIChSVUxFUy5rZXl3b3Jkc1trd2RdKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXl3b3JkICR7a3dkfSBpcyBhbHJlYWR5IGRlZmluZWRgKTsKICAgICAgICBpZiAoIUtFWVdPUkRfTkFNRS50ZXN0KGt3ZCkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEtleXdvcmQgJHtrd2R9IGhhcyBpbnZhbGlkIG5hbWVgKTsKICAgICAgfSk7CiAgICAgIGlmICghZGVmKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiAhKCJjb2RlIiBpbiBkZWYgfHwgInZhbGlkYXRlIiBpbiBkZWYpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCckZGF0YSBrZXl3b3JkIG11c3QgaGF2ZSAiY29kZSIgb3IgInZhbGlkYXRlIiBmdW5jdGlvbicpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhZGRSdWxlKGtleXdvcmQsIGRlZmluaXRpb24sIGRhdGFUeXBlKSB7CiAgICAgIHZhciBfYTsKICAgICAgY29uc3QgcG9zdCA9IGRlZmluaXRpb24gPT09IG51bGwgfHwgZGVmaW5pdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVmaW5pdGlvbi5wb3N0OwogICAgICBpZiAoZGF0YVR5cGUgJiYgcG9zdCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2tleXdvcmQgd2l0aCAicG9zdCIgZmxhZyBjYW5ub3QgaGF2ZSAidHlwZSInKTsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgbGV0IHJ1bGVHcm91cCA9IHBvc3QgPyBSVUxFUy5wb3N0IDogUlVMRVMucnVsZXMuZmluZCgoeyB0eXBlOiB0IH0pID0+IHQgPT09IGRhdGFUeXBlKTsKICAgICAgaWYgKCFydWxlR3JvdXApIHsKICAgICAgICBydWxlR3JvdXAgPSB7IHR5cGU6IGRhdGFUeXBlLCBydWxlczogW10gfTsKICAgICAgICBSVUxFUy5ydWxlcy5wdXNoKHJ1bGVHcm91cCk7CiAgICAgIH0KICAgICAgUlVMRVMua2V5d29yZHNba2V5d29yZF0gPSB0cnVlOwogICAgICBpZiAoIWRlZmluaXRpb24pCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBydWxlID0gewogICAgICAgIGtleXdvcmQsCiAgICAgICAgZGVmaW5pdGlvbjogewogICAgICAgICAgLi4uZGVmaW5pdGlvbiwKICAgICAgICAgIHR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi5zY2hlbWFUeXBlKQogICAgICAgIH0KICAgICAgfTsKICAgICAgaWYgKGRlZmluaXRpb24uYmVmb3JlKQogICAgICAgIGFkZEJlZm9yZVJ1bGUuY2FsbCh0aGlzLCBydWxlR3JvdXAsIHJ1bGUsIGRlZmluaXRpb24uYmVmb3JlKTsKICAgICAgZWxzZQogICAgICAgIHJ1bGVHcm91cC5ydWxlcy5wdXNoKHJ1bGUpOwogICAgICBSVUxFUy5hbGxba2V5d29yZF0gPSBydWxlOwogICAgICAoX2EgPSBkZWZpbml0aW9uLmltcGxlbWVudHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb3JFYWNoKChrd2QpID0+IHRoaXMuYWRkS2V5d29yZChrd2QpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEJlZm9yZVJ1bGUocnVsZUdyb3VwLCBydWxlLCBiZWZvcmUpIHsKICAgICAgY29uc3QgaSA9IHJ1bGVHcm91cC5ydWxlcy5maW5kSW5kZXgoKF9ydWxlKSA9PiBfcnVsZS5rZXl3b3JkID09PSBiZWZvcmUpOwogICAgICBpZiAoaSA+PSAwKSB7CiAgICAgICAgcnVsZUdyb3VwLnJ1bGVzLnNwbGljZShpLCAwLCBydWxlKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBydWxlR3JvdXAucnVsZXMucHVzaChydWxlKTsKICAgICAgICB0aGlzLmxvZ2dlci53YXJuKGBydWxlICR7YmVmb3JlfSBpcyBub3QgZGVmaW5lZGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBrZXl3b3JkTWV0YXNjaGVtYShkZWYpIHsKICAgICAgbGV0IHsgbWV0YVNjaGVtYSB9ID0gZGVmOwogICAgICBpZiAobWV0YVNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiB0aGlzLm9wdHMuJGRhdGEpCiAgICAgICAgbWV0YVNjaGVtYSA9IHNjaGVtYU9yRGF0YShtZXRhU2NoZW1hKTsKICAgICAgZGVmLnZhbGlkYXRlU2NoZW1hID0gdGhpcy5jb21waWxlKG1ldGFTY2hlbWEsIHRydWUpOwogICAgfQogICAgdmFyICRkYXRhUmVmID0gewogICAgICAkcmVmOiAiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Fqdi12YWxpZGF0b3IvYWp2L21hc3Rlci9saWIvcmVmcy9kYXRhLmpzb24jIgogICAgfTsKICAgIGZ1bmN0aW9uIHNjaGVtYU9yRGF0YShzY2hlbWEyKSB7CiAgICAgIHJldHVybiB7IGFueU9mOiBbc2NoZW1hMiwgJGRhdGFSZWZdIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pZC5qcwp2YXIgcmVxdWlyZV9pZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvaWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZCIsCiAgICAgIGNvZGUoKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOT1QgU1VQUE9SVEVEOiBrZXl3b3JkICJpZCIsIHVzZSAiJGlkIiBmb3Igc2NoZW1hIElEJyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzCnZhciByZXF1aXJlX3JlZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYWxsUmVmID0gZXhwb3J0czIuZ2V0VmFsaWRhdGUgPSB2b2lkIDA7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIiRyZWYiLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiAkcmVmLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgYmFzZUlkLCBzY2hlbWFFbnY6IGVudiwgdmFsaWRhdGVOYW1lLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgY29uc3QgeyByb290IH0gPSBlbnY7CiAgICAgICAgaWYgKCgkcmVmID09PSAiIyIgfHwgJHJlZiA9PT0gIiMvIikgJiYgYmFzZUlkID09PSByb290LmJhc2VJZCkKICAgICAgICAgIHJldHVybiBjYWxsUm9vdFJlZigpOwogICAgICAgIGNvbnN0IHNjaE9yRW52ID0gY29tcGlsZV8xLnJlc29sdmVSZWYuY2FsbChzZWxmMiwgcm9vdCwgYmFzZUlkLCAkcmVmKTsKICAgICAgICBpZiAoc2NoT3JFbnYgPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyByZWZfZXJyb3JfMS5kZWZhdWx0KGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgJHJlZik7CiAgICAgICAgaWYgKHNjaE9yRW52IGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgIHJldHVybiBjYWxsVmFsaWRhdGUoc2NoT3JFbnYpOwogICAgICAgIHJldHVybiBpbmxpbmVSZWZTY2hlbWEoc2NoT3JFbnYpOwogICAgICAgIGZ1bmN0aW9uIGNhbGxSb290UmVmKCkgewogICAgICAgICAgaWYgKGVudiA9PT0gcm9vdCkKICAgICAgICAgICAgcmV0dXJuIGNhbGxSZWYoY3h0LCB2YWxpZGF0ZU5hbWUsIGVudiwgZW52LiRhc3luYyk7CiAgICAgICAgICBjb25zdCByb290TmFtZSA9IGdlbi5zY29wZVZhbHVlKCJyb290IiwgeyByZWY6IHJvb3QgfSk7CiAgICAgICAgICByZXR1cm4gY2FsbFJlZihjeHQsICgwLCBjb2RlZ2VuXzEuXylgJHtyb290TmFtZX0udmFsaWRhdGVgLCByb290LCByb290LiRhc3luYyk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZShzY2gpIHsKICAgICAgICAgIGNvbnN0IHYgPSBnZXRWYWxpZGF0ZShjeHQsIHNjaCk7CiAgICAgICAgICBjYWxsUmVmKGN4dCwgdiwgc2NoLCBzY2guJGFzeW5jKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaW5saW5lUmVmU2NoZW1hKHNjaCkgewogICAgICAgICAgY29uc3Qgc2NoTmFtZSA9IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCBvcHRzLmNvZGUuc291cmNlID09PSB0cnVlID8geyByZWY6IHNjaCwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaCkgfSA6IHsgcmVmOiBzY2ggfSk7CiAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgICBkYXRhVHlwZXM6IFtdLAogICAgICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaE5hbWUsCiAgICAgICAgICAgIGVyclNjaGVtYVBhdGg6ICRyZWYKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQpOwogICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBnZXRWYWxpZGF0ZShjeHQsIHNjaCkgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gZ2VuLnNjb3BlVmFsdWUoInZhbGlkYXRlIiwgeyByZWY6IHNjaC52YWxpZGF0ZSB9KSA6ICgwLCBjb2RlZ2VuXzEuXylgJHtnZW4uc2NvcGVWYWx1ZSgid3JhcHBlciIsIHsgcmVmOiBzY2ggfSl9LnZhbGlkYXRlYDsKICAgIH0KICAgIGV4cG9ydHMyLmdldFZhbGlkYXRlID0gZ2V0VmFsaWRhdGU7CiAgICBmdW5jdGlvbiBjYWxsUmVmKGN4dCwgdiwgc2NoLCAkYXN5bmMpIHsKICAgICAgY29uc3QgeyBnZW4sIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBzY2hlbWFFbnY6IGVudiwgb3B0cyB9ID0gaXQ7CiAgICAgIGNvbnN0IHBhc3NDeHQgPSBvcHRzLnBhc3NDb250ZXh0ID8gbmFtZXNfMS5kZWZhdWx0LnRoaXMgOiBjb2RlZ2VuXzEubmlsOwogICAgICBpZiAoJGFzeW5jKQogICAgICAgIGNhbGxBc3luY1JlZigpOwogICAgICBlbHNlCiAgICAgICAgY2FsbFN5bmNSZWYoKTsKICAgICAgZnVuY3Rpb24gY2FsbEFzeW5jUmVmKCkgewogICAgICAgIGlmICghZW52LiRhc3luYykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgc2NoZW1hIHJlZmVyZW5jZWQgYnkgc3luYyBzY2hlbWEiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIik7CiAgICAgICAgZ2VuLnRyeSgoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpfWApOwogICAgICAgICAgYWRkRXZhbHVhdGVkRnJvbSh2KTsKICAgICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICB9LCAoZSkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgISgke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KWAsICgpID0+IGdlbi50aHJvdyhlKSk7CiAgICAgICAgICBhZGRFcnJvcnNGcm9tKGUpOwogICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKTsKICAgICAgICB9KTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbGxTeW5jUmVmKCkgewogICAgICAgIGN4dC5yZXN1bHQoKDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpLCAoKSA9PiBhZGRFdmFsdWF0ZWRGcm9tKHYpLCAoKSA9PiBhZGRFcnJvcnNGcm9tKHYpKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhZGRFcnJvcnNGcm9tKHNvdXJjZSkgewogICAgICAgIGNvbnN0IGVycnMgPSAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCk7CiAgICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFkZEV2YWx1YXRlZEZyb20oc291cmNlKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmICghaXQub3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBzY2hFdmFsdWF0ZWQgPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gudmFsaWRhdGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ldmFsdWF0ZWQ7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY1Byb3BzKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgc2NoRXZhbHVhdGVkLnByb3BzLCBpdC5wcm9wcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQucHJvcHNgKTsKICAgICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBwcm9wcywgaXQucHJvcHMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGl0Lml0ZW1zICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY0l0ZW1zKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQuaXRlbXMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoRXZhbHVhdGVkLml0ZW1zLCBpdC5pdGVtcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZ2VuLnZhcigiaXRlbXMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQuaXRlbXNgKTsKICAgICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBpdGVtcywgaXQuaXRlbXMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNhbGxSZWYgPSBjYWxsUmVmOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2luZGV4LmpzCnZhciByZXF1aXJlX2NvcmUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGlkXzEgPSByZXF1aXJlX2lkKCk7CiAgICB2YXIgcmVmXzEgPSByZXF1aXJlX3JlZigpOwogICAgdmFyIGNvcmUyID0gWwogICAgICAiJHNjaGVtYSIsCiAgICAgICIkaWQiLAogICAgICAiJGRlZnMiLAogICAgICAiJHZvY2FidWxhcnkiLAogICAgICB7IGtleXdvcmQ6ICIkY29tbWVudCIgfSwKICAgICAgImRlZmluaXRpb25zIiwKICAgICAgaWRfMS5kZWZhdWx0LAogICAgICByZWZfMS5kZWZhdWx0CiAgICBdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGNvcmUyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXROdW1iZXIuanMKdmFyIHJlcXVpcmVfbGltaXROdW1iZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TnVtYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgb3BzID0gY29kZWdlbl8xLm9wZXJhdG9yczsKICAgIHZhciBLV0RzID0gewogICAgICBtYXhpbXVtOiB7IG9rU3RyOiAiPD0iLCBvazogb3BzLkxURSwgZmFpbDogb3BzLkdUIH0sCiAgICAgIG1pbmltdW06IHsgb2tTdHI6ICI+PSIsIG9rOiBvcHMuR1RFLCBmYWlsOiBvcHMuTFQgfSwKICAgICAgZXhjbHVzaXZlTWF4aW11bTogeyBva1N0cjogIjwiLCBvazogb3BzLkxULCBmYWlsOiBvcHMuR1RFIH0sCiAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsgb2tTdHI6ICI+Iiwgb2s6IG9wcy5HVCwgZmFpbDogb3BzLkxURSB9CiAgICB9OwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGJlICR7S1dEc1trZXl3b3JkXS5va1N0cn0gJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtjb21wYXJpc29uOiAke0tXRHNba2V5d29yZF0ub2tTdHJ9LCBsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ICR7S1dEc1trZXl3b3JkXS5mYWlsfSAke3NjaGVtYUNvZGV9IHx8IGlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbXVsdGlwbGVPZi5qcwp2YXIgcmVxdWlyZV9tdWx0aXBsZU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9tdWx0aXBsZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgYmUgbXVsdGlwbGUgb2YgJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHttdWx0aXBsZU9mOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibXVsdGlwbGVPZiIsCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHByZWMgPSBpdC5vcHRzLm11bHRpcGxlT2ZQcmVjaXNpb247CiAgICAgICAgY29uc3QgcmVzID0gZ2VuLmxldCgicmVzIik7CiAgICAgICAgY29uc3QgaW52YWxpZCA9IHByZWMgPyAoMCwgY29kZWdlbl8xLl8pYE1hdGguYWJzKE1hdGgucm91bmQoJHtyZXN9KSAtICR7cmVzfSkgPiAxZS0ke3ByZWN9YCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtyZXN9ICE9PSBwYXJzZUludCgke3Jlc30pYDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgKCR7c2NoZW1hQ29kZX0gPT09IDAgfHwgKCR7cmVzfSA9ICR7ZGF0YX0vJHtzY2hlbWFDb2RlfSwgJHtpbnZhbGlkfSkpYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoLmpzCnZhciByZXF1aXJlX3VjczJsZW5ndGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdWNzMmxlbmd0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZnVuY3Rpb24gdWNzMmxlbmd0aChzdHIyKSB7CiAgICAgIGNvbnN0IGxlbiA9IHN0cjIubGVuZ3RoOwogICAgICBsZXQgbGVuZ3RoID0gMDsKICAgICAgbGV0IHBvcyA9IDA7CiAgICAgIGxldCB2YWx1ZTsKICAgICAgd2hpbGUgKHBvcyA8IGxlbikgewogICAgICAgIGxlbmd0aCsrOwogICAgICAgIHZhbHVlID0gc3RyMi5jaGFyQ29kZUF0KHBvcysrKTsKICAgICAgICBpZiAodmFsdWUgPj0gNTUyOTYgJiYgdmFsdWUgPD0gNTYzMTkgJiYgcG9zIDwgbGVuKSB7CiAgICAgICAgICB2YWx1ZSA9IHN0cjIuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKCh2YWx1ZSAmIDY0NTEyKSA9PT0gNTYzMjApCiAgICAgICAgICAgIHBvcysrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbGVuZ3RoOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVjczJsZW5ndGg7CiAgICB1Y3MybGVuZ3RoLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoIikuZGVmYXVsdCc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdExlbmd0aC5qcwp2YXIgcmVxdWlyZV9saW1pdExlbmd0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRMZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB1Y3MybGVuZ3RoXzEgPSByZXF1aXJlX3VjczJsZW5ndGgoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IGNoYXJhY3RlcnNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4TGVuZ3RoIiwgIm1pbkxlbmd0aCJdLAogICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuR1QgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLkxUOwogICAgICAgIGNvbnN0IGxlbiA9IGl0Lm9wdHMudW5pY29kZSA9PT0gZmFsc2UgPyAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgdXRpbF8xLnVzZUZ1bmMpKGN4dC5nZW4sIHVjczJsZW5ndGhfMS5kZWZhdWx0KX0oJHtkYXRhfSlgOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBtYXRjaCBwYXR0ZXJuICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwYXR0ZXJuOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicGF0dGVybiIsCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB1ID0gaXQub3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgICAgY29uc3QgcmVnRXhwID0gJGRhdGEgPyAoMCwgY29kZWdlbl8xLl8pYChuZXcgUmVnRXhwKCR7c2NoZW1hQ29kZX0sICR7dX0pKWAgOiAoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgc2NoZW1hMik7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEke3JlZ0V4cH0udGVzdCgke2RhdGF9KWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9saW1pdFByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSB7CiAgICAgICAgY29uc3QgY29tcCA9IGtleXdvcmQgPT09ICJtYXhQcm9wZXJ0aWVzIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IHByb3BlcnRpZXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4UHJvcGVydGllcyIsICJtaW5Qcm9wZXJ0aWVzIl0sCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGNvbnN0IG9wID0ga2V5d29yZCA9PT0gIm1heFByb3BlcnRpZXMiID8gY29kZWdlbl8xLm9wZXJhdG9ycy5HVCA6IGNvZGVnZW5fMS5vcGVyYXRvcnMuTFQ7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5rZXlzKCR7ZGF0YX0pLmxlbmd0aCAke29wfSAke3NjaGVtYUNvZGV9YCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcmVxdWlyZWQuanMKdmFyIHJlcXVpcmVfcmVxdWlyZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3JlcXVpcmVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgaGF2ZSByZXF1aXJlZCBwcm9wZXJ0eSAnJHttaXNzaW5nUHJvcGVydHl9J2AsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge21pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicmVxdWlyZWQiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGRhdGEsICRkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cyB9ID0gaXQ7CiAgICAgICAgaWYgKCEkZGF0YSAmJiBzY2hlbWEyLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gb3B0cy5sb29wUmVxdWlyZWQ7CiAgICAgICAgaWYgKGl0LmFsbEVycm9ycykKICAgICAgICAgIGFsbEVycm9yc01vZGUoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBleGl0T25FcnJvck1vZGUoKTsKICAgICAgICBpZiAob3B0cy5zdHJpY3RSZXF1aXJlZCkgewogICAgICAgICAgY29uc3QgcHJvcHMgPSBjeHQucGFyZW50U2NoZW1hLnByb3BlcnRpZXM7CiAgICAgICAgICBjb25zdCB7IGRlZmluZWRQcm9wZXJ0aWVzIH0gPSBjeHQuaXQ7CiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkS2V5IG9mIHNjaGVtYTIpIHsKICAgICAgICAgICAgaWYgKChwcm9wcyA9PT0gbnVsbCB8fCBwcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJvcHNbcmVxdWlyZWRLZXldKSA9PT0gdm9pZCAwICYmICFkZWZpbmVkUHJvcGVydGllcy5oYXMocmVxdWlyZWRLZXkpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2NoZW1hUGF0aCA9IGl0LnNjaGVtYUVudi5iYXNlSWQgKyBpdC5lcnJTY2hlbWFQYXRoOwogICAgICAgICAgICAgIGNvbnN0IG1zZyA9IGByZXF1aXJlZCBwcm9wZXJ0eSAiJHtyZXF1aXJlZEtleX0iIGlzIG5vdCBkZWZpbmVkIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0UmVxdWlyZWQpYDsKICAgICAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgaXQub3B0cy5zdHJpY3RSZXF1aXJlZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWxsRXJyb3JzTW9kZSgpIHsKICAgICAgICAgIGlmICh1c2VMb29wIHx8ICRkYXRhKSB7CiAgICAgICAgICAgIGN4dC5ibG9jayRkYXRhKGNvZGVnZW5fMS5uaWwsIGxvb3BBbGxSZXF1aXJlZCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2Ygc2NoZW1hMikgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBleGl0T25FcnJvck1vZGUoKSB7CiAgICAgICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICAgICAgaWYgKHVzZUxvb3AgfHwgJGRhdGEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIHRydWUpOwogICAgICAgICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgKCkgPT4gbG9vcFVudGlsTWlzc2luZyhtaXNzaW5nLCB2YWxpZCkpOwogICAgICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBzY2hlbWEyLCBtaXNzaW5nKSk7CiAgICAgICAgICAgICgwLCBjb2RlXzEucmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgbWlzc2luZyk7CiAgICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BBbGxSZXF1aXJlZCgpIHsKICAgICAgICAgIGdlbi5mb3JPZigicHJvcCIsIHNjaGVtYUNvZGUsIChwcm9wKSA9PiB7CiAgICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IHByb3AgfSk7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLm5vUHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BVbnRpbE1pc3NpbmcobWlzc2luZywgdmFsaWQpIHsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IG1pc3NpbmcgfSk7CiAgICAgICAgICBnZW4uZm9yT2YobWlzc2luZywgc2NoZW1hQ29kZSwgKCkgPT4gewogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIG1pc3NpbmcsIG9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIGNvZGVnZW5fMS5uaWwpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdEl0ZW1zLmpzCnZhciByZXF1aXJlX2xpbWl0SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0SXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4SXRlbXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gaXRlbXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4SXRlbXMiLCAibWluSXRlbXMiXSwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUgfSA9IGN4dDsKICAgICAgICBjb25zdCBvcCA9IGtleXdvcmQgPT09ICJtYXhJdGVtcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMKdmFyIHJlcXVpcmVfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICBlcXVhbC5jb2RlID0gJ3JlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvZXF1YWwiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBlcXVhbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3VuaXF1ZUl0ZW1zLmpzCnZhciByZXF1aXJlX3VuaXF1ZUl0ZW1zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi91bmlxdWVJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGksIGogfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBkdXBsaWNhdGUgaXRlbXMgKGl0ZW1zICMjICR7an0gYW5kICR7aX0gYXJlIGlkZW50aWNhbClgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBpLCBqIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7aTogJHtpfSwgajogJHtqfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInVuaXF1ZUl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogImJvb2xlYW4iLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmICFzY2hlbWEyKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgICBjb25zdCBpdGVtVHlwZXMgPSBwYXJlbnRTY2hlbWEuaXRlbXMgPyAoMCwgZGF0YVR5cGVfMS5nZXRTY2hlbWFUeXBlcykocGFyZW50U2NoZW1hLml0ZW1zKSA6IFtdOwogICAgICAgIGN4dC5ibG9jayRkYXRhKHZhbGlkLCB2YWxpZGF0ZVVuaXF1ZUl0ZW1zLCAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gPT09IGZhbHNlYCk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaXF1ZUl0ZW1zKCkgewogICAgICAgICAgY29uc3QgaSA9IGdlbi5sZXQoImkiLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgICBjb25zdCBqID0gZ2VuLmxldCgiaiIpOwogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGksIGogfSk7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aX0gPiAxYCwgKCkgPT4gKGNhbk9wdGltaXplKCkgPyBsb29wTiA6IGxvb3BOMikoaSwgaikpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjYW5PcHRpbWl6ZSgpIHsKICAgICAgICAgIHJldHVybiBpdGVtVHlwZXMubGVuZ3RoID4gMCAmJiAhaXRlbVR5cGVzLnNvbWUoKHQpID0+IHQgPT09ICJvYmplY3QiIHx8IHQgPT09ICJhcnJheSIpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wTihpLCBqKSB7CiAgICAgICAgICBjb25zdCBpdGVtID0gZ2VuLm5hbWUoIml0ZW0iKTsKICAgICAgICAgIGNvbnN0IHdyb25nVHlwZSA9ICgwLCBkYXRhVHlwZV8xLmNoZWNrRGF0YVR5cGVzKShpdGVtVHlwZXMsIGl0ZW0sIGl0Lm9wdHMuc3RyaWN0TnVtYmVycywgZGF0YVR5cGVfMS5EYXRhVHlwZS5Xcm9uZyk7CiAgICAgICAgICBjb25zdCBpbmRpY2VzID0gZ2VuLmNvbnN0KCJpbmRpY2VzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICAgICAgZ2VuLmZvcigoMCwgY29kZWdlbl8xLl8pYDske2l9LS07YCwgKCkgPT4gewogICAgICAgICAgICBnZW4ubGV0KGl0ZW0sICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfVske2l9XWApOwogICAgICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoMCwgY29kZWdlbl8xLl8pYGNvbnRpbnVlYCk7CiAgICAgICAgICAgIGlmIChpdGVtVHlwZXMubGVuZ3RoID4gMSkKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtpdGVtfSA9PSAic3RyaW5nImAsICgwLCBjb2RlZ2VuXzEuXylgJHtpdGVtfSArPSAiXyJgKTsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7aW5kaWNlc31bJHtpdGVtfV0gPT0gIm51bWJlciJgLCAoKSA9PiB7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbihqLCAoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV1gKTsKICAgICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKTsKICAgICAgICAgICAgfSkuY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV0gPSAke2l9YCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbG9vcE4yKGksIGopIHsKICAgICAgICAgIGNvbnN0IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgICAgY29uc3Qgb3V0ZXIgPSBnZW4ubmFtZSgib3V0ZXIiKTsKICAgICAgICAgIGdlbi5sYWJlbChvdXRlcikuZm9yKCgwLCBjb2RlZ2VuXzEuXylgOyR7aX0tLTtgLCAoKSA9PiBnZW4uZm9yKCgwLCBjb2RlZ2VuXzEuXylgJHtqfSA9ICR7aX07ICR7an0tLTtgLCAoKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2VxbH0oJHtkYXRhfVske2l9XSwgJHtkYXRhfVske2p9XSlgLCAoKSA9PiB7CiAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsob3V0ZXIpOwogICAgICAgICAgfSkpKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vY29uc3QuanMKdmFyIHJlcXVpcmVfY29uc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2NvbnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gY29uc3RhbnQiLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWxsb3dlZFZhbHVlOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiY29uc3QiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWFDb2RlLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGN4dDsKICAgICAgICBpZiAoJGRhdGEgfHwgc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IikgewogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEkeygwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpfSgke2RhdGF9LCAke3NjaGVtYUNvZGV9KWApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjeHQuZmFpbCgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hMn0gIT09ICR7ZGF0YX1gKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vZW51bS5qcwp2YXIgcmVxdWlyZV9lbnVtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9lbnVtLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gb25lIG9mIHRoZSBhbGxvd2VkIHZhbHVlcyIsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHthbGxvd2VkVmFsdWVzOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZW51bSIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmIHNjaGVtYTIubGVuZ3RoID09PSAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJlbnVtIG11c3QgaGF2ZSBub24tZW1wdHkgYXJyYXkiKTsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gaXQub3B0cy5sb29wRW51bTsKICAgICAgICBsZXQgZXFsOwogICAgICAgIGNvbnN0IGdldEVxbCA9ICgpID0+IGVxbCAhPT0gbnVsbCAmJiBlcWwgIT09IHZvaWQgMCA/IGVxbCA6IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgIGxldCB2YWxpZDsKICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIGxvb3BFbnVtKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgY29uc3QgdlNjaGVtYSA9IGdlbi5jb25zdCgidlNjaGVtYSIsIHNjaGVtYUNvZGUpOwogICAgICAgICAgdmFsaWQgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5zY2hlbWEyLm1hcCgoX3gsIGkpID0+IGVxdWFsQ29kZSh2U2NoZW1hLCBpKSkpOwogICAgICAgIH0KICAgICAgICBjeHQucGFzcyh2YWxpZCk7CiAgICAgICAgZnVuY3Rpb24gbG9vcEVudW0oKSB7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICBnZW4uZm9yT2YoInYiLCBzY2hlbWFDb2RlLCAodikgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2fSlgLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKS5icmVhaygpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGVxdWFsQ29kZSh2U2NoZW1hLCBpKSB7CiAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2ldOwogICAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2ggPT09ICJvYmplY3QiICYmIHNjaCAhPT0gbnVsbCA/ICgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2U2NoZW1hfVske2l9XSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSAke3NjaH1gOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGxpbWl0TnVtYmVyXzEgPSByZXF1aXJlX2xpbWl0TnVtYmVyKCk7CiAgICB2YXIgbXVsdGlwbGVPZl8xID0gcmVxdWlyZV9tdWx0aXBsZU9mKCk7CiAgICB2YXIgbGltaXRMZW5ndGhfMSA9IHJlcXVpcmVfbGltaXRMZW5ndGgoKTsKICAgIHZhciBwYXR0ZXJuXzEgPSByZXF1aXJlX3BhdHRlcm4oKTsKICAgIHZhciBsaW1pdFByb3BlcnRpZXNfMSA9IHJlcXVpcmVfbGltaXRQcm9wZXJ0aWVzKCk7CiAgICB2YXIgcmVxdWlyZWRfMSA9IHJlcXVpcmVfcmVxdWlyZWQoKTsKICAgIHZhciBsaW1pdEl0ZW1zXzEgPSByZXF1aXJlX2xpbWl0SXRlbXMoKTsKICAgIHZhciB1bmlxdWVJdGVtc18xID0gcmVxdWlyZV91bmlxdWVJdGVtcygpOwogICAgdmFyIGNvbnN0XzEgPSByZXF1aXJlX2NvbnN0KCk7CiAgICB2YXIgZW51bV8xID0gcmVxdWlyZV9lbnVtKCk7CiAgICB2YXIgdmFsaWRhdGlvbiA9IFsKICAgICAgLy8gbnVtYmVyCiAgICAgIGxpbWl0TnVtYmVyXzEuZGVmYXVsdCwKICAgICAgbXVsdGlwbGVPZl8xLmRlZmF1bHQsCiAgICAgIC8vIHN0cmluZwogICAgICBsaW1pdExlbmd0aF8xLmRlZmF1bHQsCiAgICAgIHBhdHRlcm5fMS5kZWZhdWx0LAogICAgICAvLyBvYmplY3QKICAgICAgbGltaXRQcm9wZXJ0aWVzXzEuZGVmYXVsdCwKICAgICAgcmVxdWlyZWRfMS5kZWZhdWx0LAogICAgICAvLyBhcnJheQogICAgICBsaW1pdEl0ZW1zXzEuZGVmYXVsdCwKICAgICAgdW5pcXVlSXRlbXNfMS5kZWZhdWx0LAogICAgICAvLyBhbnkKICAgICAgeyBrZXl3b3JkOiAidHlwZSIsIHNjaGVtYVR5cGU6IFsic3RyaW5nIiwgImFycmF5Il0gfSwKICAgICAgeyBrZXl3b3JkOiAibnVsbGFibGUiLCBzY2hlbWFUeXBlOiAiYm9vbGVhbiIgfSwKICAgICAgY29uc3RfMS5kZWZhdWx0LAogICAgICBlbnVtXzEuZGVmYXVsdAogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB2YWxpZGF0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzCnZhciByZXF1aXJlX2FkZGl0aW9uYWxJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlIG1vcmUgdGhhbiAke2xlbn0gaXRlbXNgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtsZW59fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbEl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJib29sZWFuIiwgIm9iamVjdCJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgaXRlbXMgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICciYWRkaXRpb25hbEl0ZW1zIiBpcyBpZ25vcmVkIHdoZW4gIml0ZW1zIiBpcyBub3QgYW4gYXJyYXkgb2Ygc2NoZW1hcycpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyhjeHQsIGl0ZW1zKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKGN4dCwgaXRlbXMpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IGxlbjogaXRlbXMubGVuZ3RoIH0pOwogICAgICAgIGN4dC5wYXNzKCgwLCBjb2RlZ2VuXzEuXylgJHtsZW59IDw9ICR7aXRlbXMubGVuZ3RofWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi52YXIoInZhbGlkIiwgKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPD0gJHtpdGVtcy5sZW5ndGh9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHZhbGlkYXRlSXRlbXModmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXModmFsaWQpIHsKICAgICAgICBnZW4uZm9yUmFuZ2UoImkiLCBpdGVtcy5sZW5ndGgsIGxlbiwgKGkpID0+IHsKICAgICAgICAgIGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkLCBkYXRhUHJvcDogaSwgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5OdW0gfSwgdmFsaWQpOwogICAgICAgICAgaWYgKCFpdC5hbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zID0gdmFsaWRhdGVBZGRpdGlvbmFsSXRlbXM7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaXRlbXMuanMKdmFyIHJlcXVpcmVfaXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVR1cGxlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuIHZhbGlkYXRlVHVwbGUoY3h0LCAiYWRkaXRpb25hbEl0ZW1zIiwgc2NoZW1hMik7CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVR1cGxlKGN4dCwgZXh0cmFJdGVtcywgc2NoQXJyID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjaGVja1N0cmljdFR1cGxlKHBhcmVudFNjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHNjaEFyci5sZW5ndGggJiYgaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIHNjaEFyci5sZW5ndGgsIGl0Lml0ZW1zKTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPiAke2l9YCwgKCkgPT4gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGRhdGFQcm9wOiBpCiAgICAgICAgfSwgdmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RUdXBsZShzY2gpIHsKICAgICAgICBjb25zdCB7IG9wdHMsIGVyclNjaGVtYVBhdGggfSA9IGl0OwogICAgICAgIGNvbnN0IGwgPSBzY2hBcnIubGVuZ3RoOwogICAgICAgIGNvbnN0IGZ1bGxUdXBsZSA9IGwgPT09IHNjaC5taW5JdGVtcyAmJiAobCA9PT0gc2NoLm1heEl0ZW1zIHx8IHNjaFtleHRyYUl0ZW1zXSA9PT0gZmFsc2UpOwogICAgICAgIGlmIChvcHRzLnN0cmljdFR1cGxlcyAmJiAhZnVsbFR1cGxlKSB7CiAgICAgICAgICBjb25zdCBtc2cgPSBgIiR7a2V5d29yZH0iIGlzICR7bH0tdHVwbGUsIGJ1dCBtaW5JdGVtcyBvciBtYXhJdGVtcy8ke2V4dHJhSXRlbXN9IGFyZSBub3Qgc3BlY2lmaWVkIG9yIGRpZmZlcmVudCBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgb3B0cy5zdHJpY3RUdXBsZXMpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVUdXBsZSA9IHZhbGlkYXRlVHVwbGU7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJlZml4SXRlbXMuanMKdmFyIHJlcXVpcmVfcHJlZml4SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3ByZWZpeEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgaXRlbXNfMSA9IHJlcXVpcmVfaXRlbXMoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwcmVmaXhJdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsiYXJyYXkiXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlOiAoY3h0KSA9PiAoMCwgaXRlbXNfMS52YWxpZGF0ZVR1cGxlKShjeHQsICJpdGVtcyIpCiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcwp2YXIgcmVxdWlyZV9pdGVtczIwMjAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBtb3JlIHRoYW4gJHtsZW59IGl0ZW1zYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbGVuIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7bGVufX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIml0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBwcmVmaXhJdGVtcyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChwcmVmaXhJdGVtcykKICAgICAgICAgICgwLCBhZGRpdGlvbmFsSXRlbXNfMS52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcykoY3h0LCBwcmVmaXhJdGVtcyk7CiAgICAgICAgZWxzZQogICAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMKdmFyIHJlcXVpcmVfY29udGFpbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2NvbnRhaW5zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBtaW4sIG1heCB9IH0pID0+IG1heCA9PT0gdm9pZCAwID8gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgY29udGFpbiBhdCBsZWFzdCAke21pbn0gdmFsaWQgaXRlbShzKWAgOiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7bWlufSBhbmQgbm8gbW9yZSB0aGFuICR7bWF4fSB2YWxpZCBpdGVtKHMpYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbWluLCBtYXggfSB9KSA9PiBtYXggPT09IHZvaWQgMCA/ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn19YCA6ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn0sIG1heENvbnRhaW5zOiAke21heH19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJjb250YWlucyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGxldCBtaW47CiAgICAgICAgbGV0IG1heDsKICAgICAgICBjb25zdCB7IG1pbkNvbnRhaW5zLCBtYXhDb250YWlucyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmIChpdC5vcHRzLm5leHQpIHsKICAgICAgICAgIG1pbiA9IG1pbkNvbnRhaW5zID09PSB2b2lkIDAgPyAxIDogbWluQ29udGFpbnM7CiAgICAgICAgICBtYXggPSBtYXhDb250YWluczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWluID0gMTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IG1pbiwgbWF4IH0pOwogICAgICAgIGlmIChtYXggPT09IHZvaWQgMCAmJiBtaW4gPT09IDApIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPT0gMCB3aXRob3V0ICJtYXhDb250YWlucyI6ICJjb250YWlucyIga2V5d29yZCBpZ25vcmVkYCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChtYXggIT09IHZvaWQgMCAmJiBtaW4gPiBtYXgpIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPiAibWF4Q29udGFpbnMiIGlzIGFsd2F5cyBpbnZhbGlkYCk7CiAgICAgICAgICBjeHQuZmFpbCgpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICBsZXQgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtsZW59ID49ICR7bWlufWA7CiAgICAgICAgICBpZiAobWF4ICE9PSB2b2lkIDApCiAgICAgICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtsZW59IDw9ICR7bWF4fWA7CiAgICAgICAgICBjeHQucGFzcyhjb25kKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwICYmIG1pbiA9PT0gMSkgewogICAgICAgICAgdmFsaWRhdGVJdGVtcyh2YWxpZCwgKCkgPT4gZ2VuLmlmKHZhbGlkLCAoKSA9PiBnZW4uYnJlYWsoKSkpOwogICAgICAgIH0gZWxzZSBpZiAobWluID09PSAwKSB7CiAgICAgICAgICBnZW4ubGV0KHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGlmIChtYXggIT09IHZvaWQgMCkKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggPiAwYCwgdmFsaWRhdGVJdGVtc1dpdGhDb3VudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5sZXQodmFsaWQsIGZhbHNlKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKTsKICAgICAgICB9CiAgICAgICAgY3h0LnJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKSB7CiAgICAgICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgICAgIGNvbnN0IGNvdW50ID0gZ2VuLmxldCgiY291bnQiLCAwKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXMoc2NoVmFsaWQsICgpID0+IGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gY2hlY2tMaW1pdHMoY291bnQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXMoX3ZhbGlkLCBibG9jaykgewogICAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICBrZXl3b3JkOiAiY29udGFpbnMiLAogICAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICAgIGRhdGFQcm9wVHlwZTogdXRpbF8xLlR5cGUuTnVtLAogICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICAgICAgfSwgX3ZhbGlkKTsKICAgICAgICAgICAgYmxvY2soKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja0xpbWl0cyhjb3VudCkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSsrYCk7CiAgICAgICAgICBpZiAobWF4ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0gPj0gJHttaW59YCwgKCkgPT4gZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSkuYnJlYWsoKSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSA+ICR7bWF4fWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5icmVhaygpKTsKICAgICAgICAgICAgaWYgKG1pbiA9PT0gMSkKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y291bnR9ID49ICR7bWlufWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIHRydWUpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzCnZhciByZXF1aXJlX2RlcGVuZGVuY2llcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVNjaGVtYURlcHMgPSBleHBvcnRzMi52YWxpZGF0ZVByb3BlcnR5RGVwcyA9IGV4cG9ydHMyLmVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIGV4cG9ydHMyLmVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgcHJvcGVydHksIGRlcHNDb3VudCwgZGVwcyB9IH0pID0+IHsKICAgICAgICBjb25zdCBwcm9wZXJ0eV9pZXMgPSBkZXBzQ291bnQgPT09IDEgPyAicHJvcGVydHkiIDogInByb3BlcnRpZXMiOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBoYXZlICR7cHJvcGVydHlfaWVzfSAke2RlcHN9IHdoZW4gcHJvcGVydHkgJHtwcm9wZXJ0eX0gaXMgcHJlc2VudGA7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IHByb3BlcnR5LCBkZXBzQ291bnQsIGRlcHMsIG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Byb3BlcnR5OiAke3Byb3BlcnR5fSwKICAgIG1pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9LAogICAgZGVwc0NvdW50OiAke2RlcHNDb3VudH0sCiAgICBkZXBzOiAke2RlcHN9fWAKICAgICAgLy8gVE9ETyBjaGFuZ2UgdG8gcmVmZXJlbmNlCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImRlcGVuZGVuY2llcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3I6IGV4cG9ydHMyLmVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IFtwcm9wRGVwcywgc2NoRGVwc10gPSBzcGxpdERlcGVuZGVuY2llcyhjeHQpOwogICAgICAgIHZhbGlkYXRlUHJvcGVydHlEZXBzKGN4dCwgcHJvcERlcHMpOwogICAgICAgIHZhbGlkYXRlU2NoZW1hRGVwcyhjeHQsIHNjaERlcHMpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gc3BsaXREZXBlbmRlbmNpZXMoeyBzY2hlbWE6IHNjaGVtYTIgfSkgewogICAgICBjb25zdCBwcm9wZXJ0eURlcHMgPSB7fTsKICAgICAgY29uc3Qgc2NoZW1hRGVwcyA9IHt9OwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIl9fcHJvdG9fXyIpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBkZXBzID0gQXJyYXkuaXNBcnJheShzY2hlbWEyW2tleV0pID8gcHJvcGVydHlEZXBzIDogc2NoZW1hRGVwczsKICAgICAgICBkZXBzW2tleV0gPSBzY2hlbWEyW2tleV07CiAgICAgIH0KICAgICAgcmV0dXJuIFtwcm9wZXJ0eURlcHMsIHNjaGVtYURlcHNdOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0eURlcHMoY3h0LCBwcm9wZXJ0eURlcHMgPSBjeHQuc2NoZW1hKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICBpZiAoT2JqZWN0LmtleXMocHJvcGVydHlEZXBzKS5sZW5ndGggPT09IDApCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICBmb3IgKGNvbnN0IHByb3AgaW4gcHJvcGVydHlEZXBzKSB7CiAgICAgICAgY29uc3QgZGVwcyA9IHByb3BlcnR5RGVwc1twcm9wXTsKICAgICAgICBpZiAoZGVwcy5sZW5ndGggPT09IDApCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBoYXNQcm9wZXJ0eSA9ICgwLCBjb2RlXzEucHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsKICAgICAgICAgIHByb3BlcnR5OiBwcm9wLAogICAgICAgICAgZGVwc0NvdW50OiBkZXBzLmxlbmd0aCwKICAgICAgICAgIGRlcHM6IGRlcHMuam9pbigiLCAiKQogICAgICAgIH0pOwogICAgICAgIGlmIChpdC5hbGxFcnJvcnMpIHsKICAgICAgICAgIGdlbi5pZihoYXNQcm9wZXJ0eSwgKCkgPT4gewogICAgICAgICAgICBmb3IgKGNvbnN0IGRlcFByb3Agb2YgZGVwcykgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBkZXBQcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aGFzUHJvcGVydHl9ICYmICgkeygwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBkZXBzLCBtaXNzaW5nKX0pYCk7CiAgICAgICAgICAoMCwgY29kZV8xLnJlcG9ydE1pc3NpbmdQcm9wKShjeHQsIG1pc3NpbmcpOwogICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlUHJvcGVydHlEZXBzID0gdmFsaWRhdGVQcm9wZXJ0eURlcHM7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVNjaGVtYURlcHMoY3h0LCBzY2hlbWFEZXBzID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgZm9yIChjb25zdCBwcm9wIGluIHNjaGVtYURlcHMpIHsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYURlcHNbcHJvcF0pKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgZ2VuLmlmKAogICAgICAgICAgKDAsIGNvZGVfMS5wcm9wZXJ0eUluRGF0YSkoZ2VuLCBkYXRhLCBwcm9wLCBpdC5vcHRzLm93blByb3BlcnRpZXMpLAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZCwgc2NoZW1hUHJvcDogcHJvcCB9LCB2YWxpZCk7CiAgICAgICAgICAgIGN4dC5tZXJnZVZhbGlkRXZhbHVhdGVkKHNjaEN4dCwgdmFsaWQpOwogICAgICAgICAgfSwKICAgICAgICAgICgpID0+IGdlbi52YXIodmFsaWQsIHRydWUpCiAgICAgICAgICAvLyBUT0RPIHZhcgogICAgICAgICk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVTY2hlbWFEZXBzID0gdmFsaWRhdGVTY2hlbWFEZXBzOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnR5TmFtZXMuanMKdmFyIHJlcXVpcmVfcHJvcGVydHlOYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydHlOYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAicHJvcGVydHkgbmFtZSBtdXN0IGJlIHZhbGlkIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7cHJvcGVydHlOYW1lOiAke3BhcmFtcy5wcm9wZXJ0eU5hbWV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJvcGVydHlOYW1lcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEyKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IHByb3BlcnR5TmFtZToga2V5IH0pOwogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0eU5hbWVzIiwKICAgICAgICAgICAgZGF0YToga2V5LAogICAgICAgICAgICBkYXRhVHlwZXM6IFsic3RyaW5nIl0sCiAgICAgICAgICAgIHByb3BlcnR5TmFtZToga2V5LAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICBjeHQuZXJyb3IodHJ1ZSk7CiAgICAgICAgICAgIGlmICghaXQuYWxsRXJyb3JzKQogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hZGRpdGlvbmFsUHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgTk9UIGhhdmUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWRkaXRpb25hbFByb3BlcnR5OiAke3BhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICB0eXBlOiBbIm9iamVjdCJdLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGFsbG93VW5kZWZpbmVkOiB0cnVlLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFlcnJzQ291bnQpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBvcHRzIH0gPSBpdDsKICAgICAgICBpdC5wcm9wcyA9IHRydWU7CiAgICAgICAgaWYgKG9wdHMucmVtb3ZlQWRkaXRpb25hbCAhPT0gImFsbCIgJiYgKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHByb3BzID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShwYXJlbnRTY2hlbWEucHJvcGVydGllcyk7CiAgICAgICAgY29uc3QgcGF0UHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHBhcmVudFNjaGVtYS5wYXR0ZXJuUHJvcGVydGllcyk7CiAgICAgICAgY2hlY2tBZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgICAgIGN4dC5vaygoMCwgY29kZWdlbl8xLl8pYCR7ZXJyc0NvdW50fSA9PT0gJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfWApOwogICAgICAgIGZ1bmN0aW9uIGNoZWNrQWRkaXRpb25hbFByb3BlcnRpZXMoKSB7CiAgICAgICAgICBnZW4uZm9ySW4oImtleSIsIGRhdGEsIChrZXkpID0+IHsKICAgICAgICAgICAgaWYgKCFwcm9wcy5sZW5ndGggJiYgIXBhdFByb3BzLmxlbmd0aCkKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydHlDb2RlKGtleSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBnZW4uaWYoaXNBZGRpdGlvbmFsKGtleSksICgpID0+IGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaXNBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgbGV0IGRlZmluZWRQcm9wOwogICAgICAgICAgaWYgKHByb3BzLmxlbmd0aCA+IDgpIHsKICAgICAgICAgICAgY29uc3QgcHJvcHNTY2hlbWEgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgcGFyZW50U2NoZW1hLnByb3BlcnRpZXMsICJwcm9wZXJ0aWVzIik7CiAgICAgICAgICAgIGRlZmluZWRQcm9wID0gKDAsIGNvZGVfMS5pc093blByb3BlcnR5KShnZW4sIHByb3BzU2NoZW1hLCBrZXkpOwogICAgICAgICAgfSBlbHNlIGlmIChwcm9wcy5sZW5ndGgpIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5wcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl9ID09PSAke3B9YCkpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSBjb2RlZ2VuXzEubmlsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhdFByb3BzLmxlbmd0aCkgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9ICgwLCBjb2RlZ2VuXzEub3IpKGRlZmluZWRQcm9wLCAuLi5wYXRQcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgcCl9LnRlc3QoJHtrZXl9KWApKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm5vdCkoZGVmaW5lZFByb3ApOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBkZWxldGVBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBkZWxldGUgJHtkYXRhfVske2tleX1dYCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSB7CiAgICAgICAgICBpZiAob3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiYWxsIiB8fCBvcHRzLnJlbW92ZUFkZGl0aW9uYWwgJiYgc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGFkZGl0aW9uYWxQcm9wZXJ0eToga2V5IH0pOwogICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICAgIGlmIChvcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJmYWlsaW5nIikgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHsKICAgICAgICAgICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkKTsKICAgICAgICAgICAgICBpZiAoIWFsbEVycm9ycykKICAgICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlBZGRpdGlvbmFsU2NoZW1hKGtleSwgdmFsaWQsIGVycm9ycykgewogICAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gewogICAgICAgICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLlN0cgogICAgICAgICAgfTsKICAgICAgICAgIGlmIChlcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oc3Vic2NoZW1hLCB7CiAgICAgICAgICAgICAgY29tcG9zaXRlUnVsZTogdHJ1ZSwKICAgICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICAgIGFsbEVycm9yczogZmFsc2UKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHN1YnNjaGVtYSwgdmFsaWQpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInByb3BlcnRpZXMiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogIm9iamVjdCIsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChpdC5vcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJhbGwiICYmIHBhcmVudFNjaGVtYS5hZGRpdGlvbmFsUHJvcGVydGllcyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQuY29kZShuZXcgdmFsaWRhdGVfMS5LZXl3b3JkQ3h0KGl0LCBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQsICJhZGRpdGlvbmFsUHJvcGVydGllcyIpKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgYWxsUHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHNjaGVtYTIpOwogICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBhbGxQcm9wcykgewogICAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMuYWRkKHByb3ApOwogICAgICAgIH0KICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBhbGxQcm9wcy5sZW5ndGggJiYgaXQucHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgKDAsIHV0aWxfMS50b0hhc2gpKGFsbFByb3BzKSwgaXQucHJvcHMpOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYWxsUHJvcHMuZmlsdGVyKChwKSA9PiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTJbcF0pKTsKICAgICAgICBpZiAocHJvcGVydGllcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgcHJvcGVydGllcykgewogICAgICAgICAgaWYgKGhhc0RlZmF1bHQocHJvcCkpIHsKICAgICAgICAgICAgYXBwbHlQcm9wZXJ0eVNjaGVtYShwcm9wKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApOwogICAgICAgICAgICBpZiAoIWl0LmFsbEVycm9ycykKICAgICAgICAgICAgICBnZW4uZWxzZSgpLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGdlbi5lbmRJZigpOwogICAgICAgICAgfQogICAgICAgICAgY3h0Lml0LmRlZmluZWRQcm9wZXJ0aWVzLmFkZChwcm9wKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhc0RlZmF1bHQocHJvcCkgewogICAgICAgICAgcmV0dXJuIGl0Lm9wdHMudXNlRGVmYXVsdHMgJiYgIWl0LmNvbXBvc2l0ZVJ1bGUgJiYgc2NoZW1hMltwcm9wXS5kZWZhdWx0ICE9PSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFwcGx5UHJvcGVydHlTY2hlbWEocHJvcCkgewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0aWVzIiwKICAgICAgICAgICAgc2NoZW1hUHJvcDogcHJvcCwKICAgICAgICAgICAgZGF0YVByb3A6IHByb3AKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcGF0dGVyblByb3BlcnRpZXMuanMKdmFyIHJlcXVpcmVfcGF0dGVyblByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IG9wdHMgfSA9IGl0OwogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShzY2hlbWEyKTsKICAgICAgICBjb25zdCBhbHdheXNWYWxpZFBhdHRlcm5zID0gcGF0dGVybnMuZmlsdGVyKChwKSA9PiAoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMltwXSkpOwogICAgICAgIGlmIChwYXR0ZXJucy5sZW5ndGggPT09IDAgfHwgYWx3YXlzVmFsaWRQYXR0ZXJucy5sZW5ndGggPT09IHBhdHRlcm5zLmxlbmd0aCAmJiAoIWl0Lm9wdHMudW5ldmFsdWF0ZWQgfHwgaXQucHJvcHMgPT09IHRydWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNoZWNrUHJvcGVydGllcyA9IG9wdHMuc3RyaWN0U2NoZW1hICYmICFvcHRzLmFsbG93TWF0Y2hpbmdQcm9wZXJ0aWVzICYmIHBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlICYmICEoaXQucHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSkpIHsKICAgICAgICAgIGl0LnByb3BzID0gKDAsIHV0aWxfMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSkoZ2VuLCBpdC5wcm9wcyk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHsgcHJvcHMgfSA9IGl0OwogICAgICAgIHZhbGlkYXRlUGF0dGVyblByb3BlcnRpZXMoKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVBhdHRlcm5Qcm9wZXJ0aWVzKCkgewogICAgICAgICAgZm9yIChjb25zdCBwYXQgb2YgcGF0dGVybnMpIHsKICAgICAgICAgICAgaWYgKGNoZWNrUHJvcGVydGllcykKICAgICAgICAgICAgICBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpOwogICAgICAgICAgICBpZiAoaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgICAgZ2VuLmlmKHZhbGlkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpIHsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGVja1Byb3BlcnRpZXMpIHsKICAgICAgICAgICAgaWYgKG5ldyBSZWdFeHAocGF0KS50ZXN0KHByb3ApKSB7CiAgICAgICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgcHJvcGVydHkgJHtwcm9wfSBtYXRjaGVzIHBhdHRlcm4gJHtwYXR9ICh1c2UgYWxsb3dNYXRjaGluZ1Byb3BlcnRpZXMpYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCkgewogICAgICAgICAgZ2VuLmZvckluKCJrZXkiLCBkYXRhLCAoa2V5KSA9PiB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7KDAsIGNvZGVfMS51c2VQYXR0ZXJuKShjeHQsIHBhdCl9LnRlc3QoJHtrZXl9KWAsICgpID0+IHsKICAgICAgICAgICAgICBjb25zdCBhbHdheXNWYWxpZCA9IGFsd2F5c1ZhbGlkUGF0dGVybnMuaW5jbHVkZXMocGF0KTsKICAgICAgICAgICAgICBpZiAoIWFsd2F5c1ZhbGlkKSB7CiAgICAgICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgICAgICAgICAgICAgc2NoZW1hUHJvcDogcGF0LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMi5UeXBlLlN0cgogICAgICAgICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBwcm9wcyAhPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cHJvcHN9WyR7a2V5fV1gLCB0cnVlKTsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFhbHdheXNWYWxpZCAmJiAhaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzCnZhciByZXF1aXJlX25vdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICAgIGN4dC5mYWlsKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUsCiAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgYWxsRXJyb3JzOiBmYWxzZQogICAgICAgIH0sIHZhbGlkKTsKICAgICAgICBjeHQuZmFpbFJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCksICgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgfSwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgTk9UIGJlIHZhbGlkIiB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FueU9mLmpzCnZhciByZXF1aXJlX2FueU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hbnlPZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhbnlPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBjb2RlOiBjb2RlXzEudmFsaWRhdGVVbmlvbiwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgbWF0Y2ggYSBzY2hlbWEgaW4gYW55T2YiIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivb25lT2YuanMKdmFyIHJlcXVpcmVfb25lT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJtdXN0IG1hdGNoIGV4YWN0bHkgb25lIHNjaGVtYSBpbiBvbmVPZiIsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Bhc3NpbmdTY2hlbWFzOiAke3BhcmFtcy5wYXNzaW5nfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGlmIChpdC5vcHRzLmRpc2NyaW1pbmF0b3IgJiYgcGFyZW50U2NoZW1hLmRpc2NyaW1pbmF0b3IpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3Qgc2NoQXJyID0gc2NoZW1hMjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICAgIGNvbnN0IHBhc3NpbmcgPSBnZW4ubGV0KCJwYXNzaW5nIiwgbnVsbCk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IHBhc3NpbmcgfSk7CiAgICAgICAgZ2VuLmJsb2NrKHZhbGlkYXRlT25lT2YpOwogICAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IodHJ1ZSkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlT25lT2YoKSB7CiAgICAgICAgICBzY2hBcnIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICAgIGxldCBzY2hDeHQ7CiAgICAgICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkgewogICAgICAgICAgICAgIGdlbi52YXIoc2NoVmFsaWQsIHRydWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7c2NoVmFsaWR9ICYmICR7dmFsaWR9YCkuYXNzaWduKHZhbGlkLCBmYWxzZSkuYXNzaWduKHBhc3NpbmcsICgwLCBjb2RlZ2VuXzEuXylgWyR7cGFzc2luZ30sICR7aX1dYCkuZWxzZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gewogICAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHRydWUpOwogICAgICAgICAgICAgIGdlbi5hc3NpZ24ocGFzc2luZywgaSk7CiAgICAgICAgICAgICAgaWYgKHNjaEN4dCkKICAgICAgICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMKdmFyIHJlcXVpcmVfYWxsT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FsbE9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWxsT2YiLAogICAgICBzY2hlbWFUeXBlOiAiYXJyYXkiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIHNjaGVtYTIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkOiAiYWxsT2YiLCBzY2hlbWFQcm9wOiBpIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9pZi5qcwp2YXIgcmVxdWlyZV9pZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoICIke3BhcmFtcy5pZkNsYXVzZX0iIHNjaGVtYWAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2ZhaWxpbmdLZXl3b3JkOiAke3BhcmFtcy5pZkNsYXVzZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZiIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS50aGVuID09PSB2b2lkIDAgJiYgcGFyZW50U2NoZW1hLmVsc2UgPT09IHZvaWQgMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCAnImlmIiB3aXRob3V0ICJ0aGVuIiBhbmQgImVsc2UiIGlzIGlnbm9yZWQnKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaGFzVGhlbiA9IGhhc1NjaGVtYShpdCwgInRoZW4iKTsKICAgICAgICBjb25zdCBoYXNFbHNlID0gaGFzU2NoZW1hKGl0LCAiZWxzZSIpOwogICAgICAgIGlmICghaGFzVGhlbiAmJiAhaGFzRWxzZSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgdHJ1ZSk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgdmFsaWRhdGVJZigpOwogICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgIGlmIChoYXNUaGVuICYmIGhhc0Vsc2UpIHsKICAgICAgICAgIGNvbnN0IGlmQ2xhdXNlID0gZ2VuLmxldCgiaWZDbGF1c2UiKTsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBpZkNsYXVzZSB9KTsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iLCBpZkNsYXVzZSksIHZhbGlkYXRlQ2xhdXNlKCJlbHNlIiwgaWZDbGF1c2UpKTsKICAgICAgICB9IGVsc2UgaWYgKGhhc1RoZW4pIHsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkoc2NoVmFsaWQpLCB2YWxpZGF0ZUNsYXVzZSgiZWxzZSIpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVJZigpIHsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICBrZXl3b3JkOiAiaWYiLAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVDbGF1c2Uoa2V5d29yZCwgaWZDbGF1c2UpIHsKICAgICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkIH0sIHNjaFZhbGlkKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgc2NoVmFsaWQpOwogICAgICAgICAgICBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHZhbGlkKTsKICAgICAgICAgICAgaWYgKGlmQ2xhdXNlKQogICAgICAgICAgICAgIGdlbi5hc3NpZ24oaWZDbGF1c2UsICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl3b3JkfWApOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGlmQ2xhdXNlOiBrZXl3b3JkIH0pOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBoYXNTY2hlbWEoaXQsIGtleXdvcmQpIHsKICAgICAgY29uc3Qgc2NoZW1hMiA9IGl0LnNjaGVtYVtrZXl3b3JkXTsKICAgICAgcmV0dXJuIHNjaGVtYTIgIT09IHZvaWQgMCAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzCnZhciByZXF1aXJlX3RoZW5FbHNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci90aGVuRWxzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJ0aGVuIiwgImVsc2UiXSwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBjb2RlKHsga2V5d29yZCwgcGFyZW50U2NoZW1hLCBpdCB9KSB7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS5pZiA9PT0gdm9pZCAwKQogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIiR7a2V5d29yZH0iIHdpdGhvdXQgImlmIiBpcyBpZ25vcmVkYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMKdmFyIHJlcXVpcmVfYXBwbGljYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgcHJlZml4SXRlbXNfMSA9IHJlcXVpcmVfcHJlZml4SXRlbXMoKTsKICAgIHZhciBpdGVtc18xID0gcmVxdWlyZV9pdGVtcygpOwogICAgdmFyIGl0ZW1zMjAyMF8xID0gcmVxdWlyZV9pdGVtczIwMjAoKTsKICAgIHZhciBjb250YWluc18xID0gcmVxdWlyZV9jb250YWlucygpOwogICAgdmFyIGRlcGVuZGVuY2llc18xID0gcmVxdWlyZV9kZXBlbmRlbmNpZXMoKTsKICAgIHZhciBwcm9wZXJ0eU5hbWVzXzEgPSByZXF1aXJlX3Byb3BlcnR5TmFtZXMoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIHByb3BlcnRpZXNfMSA9IHJlcXVpcmVfcHJvcGVydGllcygpOwogICAgdmFyIHBhdHRlcm5Qcm9wZXJ0aWVzXzEgPSByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdCgpOwogICAgdmFyIGFueU9mXzEgPSByZXF1aXJlX2FueU9mKCk7CiAgICB2YXIgb25lT2ZfMSA9IHJlcXVpcmVfb25lT2YoKTsKICAgIHZhciBhbGxPZl8xID0gcmVxdWlyZV9hbGxPZigpOwogICAgdmFyIGlmXzEgPSByZXF1aXJlX2lmKCk7CiAgICB2YXIgdGhlbkVsc2VfMSA9IHJlcXVpcmVfdGhlbkVsc2UoKTsKICAgIGZ1bmN0aW9uIGdldEFwcGxpY2F0b3IoZHJhZnQyMDIwID0gZmFsc2UpIHsKICAgICAgY29uc3QgYXBwbGljYXRvciA9IFsKICAgICAgICAvLyBhbnkKICAgICAgICBub3RfMS5kZWZhdWx0LAogICAgICAgIGFueU9mXzEuZGVmYXVsdCwKICAgICAgICBvbmVPZl8xLmRlZmF1bHQsCiAgICAgICAgYWxsT2ZfMS5kZWZhdWx0LAogICAgICAgIGlmXzEuZGVmYXVsdCwKICAgICAgICB0aGVuRWxzZV8xLmRlZmF1bHQsCiAgICAgICAgLy8gb2JqZWN0CiAgICAgICAgcHJvcGVydHlOYW1lc18xLmRlZmF1bHQsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LAogICAgICAgIGRlcGVuZGVuY2llc18xLmRlZmF1bHQsCiAgICAgICAgcHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXNfMS5kZWZhdWx0CiAgICAgIF07CiAgICAgIGlmIChkcmFmdDIwMjApCiAgICAgICAgYXBwbGljYXRvci5wdXNoKHByZWZpeEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXMyMDIwXzEuZGVmYXVsdCk7CiAgICAgIGVsc2UKICAgICAgICBhcHBsaWNhdG9yLnB1c2goYWRkaXRpb25hbEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXNfMS5kZWZhdWx0KTsKICAgICAgYXBwbGljYXRvci5wdXNoKGNvbnRhaW5zXzEuZGVmYXVsdCk7CiAgICAgIHJldHVybiBhcHBsaWNhdG9yOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGdldEFwcGxpY2F0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvZm9ybWF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgbWF0Y2ggZm9ybWF0ICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtmb3JtYXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJmb3JtYXQiLAogICAgICB0eXBlOiBbIm51bWJlciIsICJzdHJpbmciXSwKICAgICAgc2NoZW1hVHlwZTogInN0cmluZyIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQsIHJ1bGVUeXBlKSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzLCBlcnJTY2hlbWFQYXRoLCBzY2hlbWFFbnYsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBpZiAoIW9wdHMudmFsaWRhdGVGb3JtYXRzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICgkZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZkRlZiA9IGdlbi5jb25zdCgiZkRlZiIsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRzfVske3NjaGVtYUNvZGV9XWApOwogICAgICAgICAgY29uc3QgZlR5cGUgPSBnZW4ubGV0KCJmVHlwZSIpOwogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2VuLmxldCgiZm9ybWF0Iik7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmRGVmfSA9PSAib2JqZWN0IiAmJiAhKCR7ZkRlZn0gaW5zdGFuY2VvZiBSZWdFeHApYCwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAke2ZEZWZ9LnR5cGUgfHwgInN0cmluZyJgKS5hc3NpZ24oZm9ybWF0LCAoMCwgY29kZWdlbl8xLl8pYCR7ZkRlZn0udmFsaWRhdGVgKSwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAic3RyaW5nImApLmFzc2lnbihmb3JtYXQsIGZEZWYpKTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5vcikodW5rbm93bkZtdCgpLCBpbnZhbGlkRm10KCkpKTsKICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25GbXQoKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdFNjaGVtYSA9PT0gZmFsc2UpCiAgICAgICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gJiYgISR7Zm9ybWF0fWA7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBpbnZhbGlkRm10KCkgewogICAgICAgICAgICBjb25zdCBjYWxsRm9ybWF0ID0gc2NoZW1hRW52LiRhc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgKCR7ZkRlZn0uYXN5bmMgPyBhd2FpdCAke2Zvcm1hdH0oJHtkYXRhfSkgOiAke2Zvcm1hdH0oJHtkYXRhfSkpYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmb3JtYXR9KCR7ZGF0YX0pYDsKICAgICAgICAgICAgY29uc3QgdmFsaWREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAodHlwZW9mICR7Zm9ybWF0fSA9PSAiZnVuY3Rpb24iID8gJHtjYWxsRm9ybWF0fSA6ICR7Zm9ybWF0fS50ZXN0KCR7ZGF0YX0pKWA7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7Zm9ybWF0fSAmJiAke2Zvcm1hdH0gIT09IHRydWUgJiYgJHtmVHlwZX0gPT09ICR7cnVsZVR5cGV9ICYmICEke3ZhbGlkRGF0YX1gOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZvcm1hdERlZiA9IHNlbGYyLmZvcm1hdHNbc2NoZW1hMl07CiAgICAgICAgICBpZiAoIWZvcm1hdERlZikgewogICAgICAgICAgICB1bmtub3duRm9ybWF0KCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmb3JtYXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IFtmbXRUeXBlLCBmb3JtYXQsIGZtdFJlZl0gPSBnZXRGb3JtYXQoZm9ybWF0RGVmKTsKICAgICAgICAgIGlmIChmbXRUeXBlID09PSBydWxlVHlwZSkKICAgICAgICAgICAgY3h0LnBhc3ModmFsaWRDb25kaXRpb24oKSk7CiAgICAgICAgICBmdW5jdGlvbiB1bmtub3duRm9ybWF0KCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RTY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4odW5rbm93bk1zZygpKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHVua25vd25Nc2coKSk7CiAgICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25Nc2coKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGB1bmtub3duIGZvcm1hdCAiJHtzY2hlbWEyfSIgaWdub3JlZCBpbiBzY2hlbWEgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSJgOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBnZXRGb3JtYXQoZm10RGVmKSB7CiAgICAgICAgICAgIGNvbnN0IGNvZGUgPSBmbXREZWYgaW5zdGFuY2VvZiBSZWdFeHAgPyAoMCwgY29kZWdlbl8xLnJlZ2V4cENvZGUpKGZtdERlZikgOiBvcHRzLmNvZGUuZm9ybWF0cyA/ICgwLCBjb2RlZ2VuXzEuXylgJHtvcHRzLmNvZGUuZm9ybWF0c30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHNjaGVtYTIpfWAgOiB2b2lkIDA7CiAgICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgeyBrZXk6IHNjaGVtYTIsIHJlZjogZm10RGVmLCBjb2RlIH0pOwogICAgICAgICAgICBpZiAodHlwZW9mIGZtdERlZiA9PSAib2JqZWN0IiAmJiAhKGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCkpIHsKICAgICAgICAgICAgICByZXR1cm4gW2ZtdERlZi50eXBlIHx8ICJzdHJpbmciLCBmbXREZWYudmFsaWRhdGUsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LnZhbGlkYXRlYF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFsic3RyaW5nIiwgZm10RGVmLCBmbXRdOwogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gdmFsaWRDb25kaXRpb24oKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgZm9ybWF0RGVmID09ICJvYmplY3QiICYmICEoZm9ybWF0RGVmIGluc3RhbmNlb2YgUmVnRXhwKSAmJiBmb3JtYXREZWYuYXN5bmMpIHsKICAgICAgICAgICAgICBpZiAoIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIGZvcm1hdCBpbiBzeW5jIHNjaGVtYSIpOwogICAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7Zm10UmVmfSgke2RhdGF9KWA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBmb3JtYXQgPT0gImZ1bmN0aW9uIiA/ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9KCR7ZGF0YX0pYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9LnRlc3QoJHtkYXRhfSlgOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2luZGV4LmpzCnZhciByZXF1aXJlX2Zvcm1hdDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBmb3JtYXRfMSA9IHJlcXVpcmVfZm9ybWF0KCk7CiAgICB2YXIgZm9ybWF0ID0gW2Zvcm1hdF8xLmRlZmF1bHRdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9tZXRhZGF0YS5qcwp2YXIgcmVxdWlyZV9tZXRhZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL21ldGFkYXRhLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb250ZW50Vm9jYWJ1bGFyeSA9IGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IFsKICAgICAgInRpdGxlIiwKICAgICAgImRlc2NyaXB0aW9uIiwKICAgICAgImRlZmF1bHQiLAogICAgICAiZGVwcmVjYXRlZCIsCiAgICAgICJyZWFkT25seSIsCiAgICAgICJ3cml0ZU9ubHkiLAogICAgICAiZXhhbXBsZXMiCiAgICBdOwogICAgZXhwb3J0czIuY29udGVudFZvY2FidWxhcnkgPSBbCiAgICAgICJjb250ZW50TWVkaWFUeXBlIiwKICAgICAgImNvbnRlbnRFbmNvZGluZyIsCiAgICAgICJjb250ZW50U2NoZW1hIgogICAgXTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kcmFmdDcuanMKdmFyIHJlcXVpcmVfZHJhZnQ3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZHJhZnQ3LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlMigpOwogICAgdmFyIHZhbGlkYXRpb25fMSA9IHJlcXVpcmVfdmFsaWRhdGlvbigpOwogICAgdmFyIGFwcGxpY2F0b3JfMSA9IHJlcXVpcmVfYXBwbGljYXRvcigpOwogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQyKCk7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEoKTsKICAgIHZhciBkcmFmdDdWb2NhYnVsYXJpZXMgPSBbCiAgICAgIGNvcmVfMS5kZWZhdWx0LAogICAgICB2YWxpZGF0aW9uXzEuZGVmYXVsdCwKICAgICAgKDAsIGFwcGxpY2F0b3JfMS5kZWZhdWx0KSgpLAogICAgICBmb3JtYXRfMS5kZWZhdWx0LAogICAgICBtZXRhZGF0YV8xLm1ldGFkYXRhVm9jYWJ1bGFyeSwKICAgICAgbWV0YWRhdGFfMS5jb250ZW50Vm9jYWJ1bGFyeQogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkcmFmdDdWb2NhYnVsYXJpZXM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZGlzY3JpbWluYXRvci90eXBlcy5qcwp2YXIgcmVxdWlyZV90eXBlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvdHlwZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRpc2NyRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgRGlzY3JFcnJvcjsKICAgIChmdW5jdGlvbihEaXNjckVycm9yMikgewogICAgICBEaXNjckVycm9yMlsiVGFnIl0gPSAidGFnIjsKICAgICAgRGlzY3JFcnJvcjJbIk1hcHBpbmciXSA9ICJtYXBwaW5nIjsKICAgIH0pKERpc2NyRXJyb3IgfHwgKGV4cG9ydHMyLkRpc2NyRXJyb3IgPSBEaXNjckVycm9yID0ge30pKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc2NyaW1pbmF0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdHlwZXNfMSA9IHJlcXVpcmVfdHlwZXMoKTsKICAgIHZhciBjb21waWxlXzEgPSByZXF1aXJlX2NvbXBpbGUoKTsKICAgIHZhciByZWZfZXJyb3JfMSA9IHJlcXVpcmVfcmVmX2Vycm9yKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWdOYW1lIH0gfSkgPT4gZGlzY3JFcnJvciA9PT0gdHlwZXNfMS5EaXNjckVycm9yLlRhZyA/IGB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgc3RyaW5nYCA6IGB2YWx1ZSBvZiB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgaW4gb25lT2ZgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWcsIHRhZ05hbWUgfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtlcnJvcjogJHtkaXNjckVycm9yfSwgdGFnOiAke3RhZ05hbWV9LCB0YWdWYWx1ZTogJHt0YWd9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZGlzY3JpbWluYXRvciIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb25lT2YgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIWl0Lm9wdHMuZGlzY3JpbWluYXRvcikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBkaXNjcmltaW5hdG9yIG9wdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB0YWdOYW1lID0gc2NoZW1hMi5wcm9wZXJ0eU5hbWU7CiAgICAgICAgaWYgKHR5cGVvZiB0YWdOYW1lICE9ICJzdHJpbmciKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBwcm9wZXJ0eU5hbWUiKTsKICAgICAgICBpZiAoc2NoZW1hMi5tYXBwaW5nKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiBtYXBwaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICBpZiAoIW9uZU9mKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBvbmVPZiBrZXl3b3JkIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCB0YWcgPSBnZW4uY29uc3QoInRhZyIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkodGFnTmFtZSl9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7dGFnfSA9PSAic3RyaW5nImAsICgpID0+IHZhbGlkYXRlTWFwcGluZygpLCAoKSA9PiBjeHQuZXJyb3IoZmFsc2UsIHsgZGlzY3JFcnJvcjogdHlwZXNfMS5EaXNjckVycm9yLlRhZywgdGFnLCB0YWdOYW1lIH0pKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlTWFwcGluZygpIHsKICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBnZXRNYXBwaW5nKCk7CiAgICAgICAgICBnZW4uaWYoZmFsc2UpOwogICAgICAgICAgZm9yIChjb25zdCB0YWdWYWx1ZSBpbiBtYXBwaW5nKSB7CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke3RhZ30gPT09ICR7dGFnVmFsdWV9YCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGFwcGx5VGFnU2NoZW1hKG1hcHBpbmdbdGFnVmFsdWVdKSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgY3h0LmVycm9yKGZhbHNlLCB7IGRpc2NyRXJyb3I6IHR5cGVzXzEuRGlzY3JFcnJvci5NYXBwaW5nLCB0YWcsIHRhZ05hbWUgfSk7CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlUYWdTY2hlbWEoc2NoZW1hUHJvcCkgewogICAgICAgICAgY29uc3QgX3ZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZDogIm9uZU9mIiwgc2NoZW1hUHJvcCB9LCBfdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgcmV0dXJuIF92YWxpZDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZ2V0TWFwcGluZygpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIGNvbnN0IG9uZU9mTWFwcGluZyA9IHt9OwogICAgICAgICAgY29uc3QgdG9wUmVxdWlyZWQgPSBoYXNSZXF1aXJlZChwYXJlbnRTY2hlbWEpOwogICAgICAgICAgbGV0IHRhZ1JlcXVpcmVkID0gdHJ1ZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb25lT2YubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgbGV0IHNjaCA9IG9uZU9mW2ldOwogICAgICAgICAgICBpZiAoKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC4kcmVmKSAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoLCBpdC5zZWxmLlJVTEVTKSkgewogICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHNjaC4kcmVmOwogICAgICAgICAgICAgIHNjaCA9IGNvbXBpbGVfMS5yZXNvbHZlUmVmLmNhbGwoaXQuc2VsZiwgaXQuc2NoZW1hRW52LnJvb3QsIGl0LmJhc2VJZCwgcmVmKTsKICAgICAgICAgICAgICBpZiAoc2NoIGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgICAgICAgIHNjaCA9IHNjaC5zY2hlbWE7CiAgICAgICAgICAgICAgaWYgKHNjaCA9PT0gdm9pZCAwKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCByZWYpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHByb3BTY2ggPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gucHJvcGVydGllcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3RhZ05hbWVdOwogICAgICAgICAgICBpZiAodHlwZW9mIHByb3BTY2ggIT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6IG9uZU9mIHN1YnNjaGVtYXMgKG9yIHJlZmVyZW5jZWQgc2NoZW1hcykgbXVzdCBoYXZlICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFnUmVxdWlyZWQgPSB0YWdSZXF1aXJlZCAmJiAodG9wUmVxdWlyZWQgfHwgaGFzUmVxdWlyZWQoc2NoKSk7CiAgICAgICAgICAgIGFkZE1hcHBpbmdzKHByb3BTY2gsIGkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCF0YWdSZXF1aXJlZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgbXVzdCBiZSByZXF1aXJlZGApOwogICAgICAgICAgcmV0dXJuIG9uZU9mTWFwcGluZzsKICAgICAgICAgIGZ1bmN0aW9uIGhhc1JlcXVpcmVkKHsgcmVxdWlyZWQgfSkgewogICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyZXF1aXJlZCkgJiYgcmVxdWlyZWQuaW5jbHVkZXModGFnTmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5ncyhzY2gsIGkpIHsKICAgICAgICAgICAgaWYgKHNjaC5jb25zdCkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmcoc2NoLmNvbnN0LCBpKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2guZW51bSkgewogICAgICAgICAgICAgIGZvciAoY29uc3QgdGFnVmFsdWUgb2Ygc2NoLmVudW0pIHsKICAgICAgICAgICAgICAgIGFkZE1hcHBpbmcodGFnVmFsdWUsIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6ICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iIG11c3QgaGF2ZSAiY29uc3QiIG9yICJlbnVtImApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nKHRhZ1ZhbHVlLCBpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgdGFnVmFsdWUgIT0gInN0cmluZyIgfHwgdGFnVmFsdWUgaW4gb25lT2ZNYXBwaW5nKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgdmFsdWVzIG11c3QgYmUgdW5pcXVlIHN0cmluZ3NgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBvbmVPZk1hcHBpbmdbdGFnVmFsdWVdID0gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9qc29uLXNjaGVtYS1kcmFmdC0wNy5qc29uCnZhciByZXF1aXJlX2pzb25fc2NoZW1hX2RyYWZ0XzA3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2pzb24tc2NoZW1hLWRyYWZ0LTA3Lmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRzY2hlbWE6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICAkaWQ6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICB0aXRsZTogIkNvcmUgc2NoZW1hIG1ldGEtc2NoZW1hIiwKICAgICAgZGVmaW5pdGlvbnM6IHsKICAgICAgICBzY2hlbWFBcnJheTogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG1pbkl0ZW1zOiAxLAogICAgICAgICAgaXRlbXM6IHsgJHJlZjogIiMiIH0KICAgICAgICB9LAogICAgICAgIG5vbk5lZ2F0aXZlSW50ZWdlcjogewogICAgICAgICAgdHlwZTogImludGVnZXIiLAogICAgICAgICAgbWluaW11bTogMAogICAgICAgIH0sCiAgICAgICAgbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDA6IHsKICAgICAgICAgIGFsbE9mOiBbeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sIHsgZGVmYXVsdDogMCB9XQogICAgICAgIH0sCiAgICAgICAgc2ltcGxlVHlwZXM6IHsKICAgICAgICAgIGVudW06IFsiYXJyYXkiLCAiYm9vbGVhbiIsICJpbnRlZ2VyIiwgIm51bGwiLCAibnVtYmVyIiwgIm9iamVjdCIsICJzdHJpbmciXQogICAgICAgIH0sCiAgICAgICAgc3RyaW5nQXJyYXk6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBpdGVtczogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgICAgICBkZWZhdWx0OiBbXQogICAgICAgIH0KICAgICAgfSwKICAgICAgdHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGlkOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaS1yZWZlcmVuY2UiCiAgICAgICAgfSwKICAgICAgICAkc2NoZW1hOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaSIKICAgICAgICB9LAogICAgICAgICRyZWY6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgZm9ybWF0OiAidXJpLXJlZmVyZW5jZSIKICAgICAgICB9LAogICAgICAgICRjb21tZW50OiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgdGl0bGU6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciCiAgICAgICAgfSwKICAgICAgICBkZXNjcmlwdGlvbjogewogICAgICAgICAgdHlwZTogInN0cmluZyIKICAgICAgICB9LAogICAgICAgIGRlZmF1bHQ6IHRydWUsCiAgICAgICAgcmVhZE9ubHk6IHsKICAgICAgICAgIHR5cGU6ICJib29sZWFuIiwKICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICBleGFtcGxlczogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICBtdWx0aXBsZU9mOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IDAKICAgICAgICB9LAogICAgICAgIG1heGltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBleGNsdXNpdmVNYXhpbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgbWluaW11bTogewogICAgICAgICAgdHlwZTogIm51bWJlciIKICAgICAgICB9LAogICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBtYXhMZW5ndGg6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkxlbmd0aDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICBwYXR0ZXJuOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInJlZ2V4IgogICAgICAgIH0sCiAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGl0ZW1zOiB7CiAgICAgICAgICBhbnlPZjogW3sgJHJlZjogIiMiIH0sIHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc2NoZW1hQXJyYXkiIH1dLAogICAgICAgICAgZGVmYXVsdDogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgbWF4SXRlbXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkl0ZW1zOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlckRlZmF1bHQwIiB9LAogICAgICAgIHVuaXF1ZUl0ZW1zOiB7CiAgICAgICAgICB0eXBlOiAiYm9vbGVhbiIsCiAgICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgY29udGFpbnM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgbWF4UHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sCiAgICAgICAgbWluUHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICByZXF1aXJlZDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zdHJpbmdBcnJheSIgfSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBkZWZpbml0aW9uczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgZGVmYXVsdDoge30KICAgICAgICB9LAogICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgcHJvcGVydHlOYW1lczogeyBmb3JtYXQ6ICJyZWdleCIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBkZXBlbmRlbmNpZXM6IHsKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsKICAgICAgICAgICAgYW55T2Y6IFt7ICRyZWY6ICIjIiB9LCB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3N0cmluZ0FycmF5IiB9XQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcHJvcGVydHlOYW1lczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBjb25zdDogdHJ1ZSwKICAgICAgICBlbnVtOiB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICB0eXBlOiB7CiAgICAgICAgICBhbnlPZjogWwogICAgICAgICAgICB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NpbXBsZVR5cGVzIiB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zaW1wbGVUeXBlcyIgfSwKICAgICAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICBmb3JtYXQ6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICBjb250ZW50TWVkaWFUeXBlOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgY29udGVudEVuY29kaW5nOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgaWY6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgdGhlbjogeyAkcmVmOiAiIyIgfSwKICAgICAgICBlbHNlOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGFsbE9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIGFueU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG9uZU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG5vdDogeyAkcmVmOiAiIyIgfQogICAgICB9LAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzCnZhciByZXF1aXJlX2FqdiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5NaXNzaW5nUmVmRXJyb3IgPSBleHBvcnRzMi5WYWxpZGF0aW9uRXJyb3IgPSBleHBvcnRzMi5Db2RlR2VuID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gZXhwb3J0czIuQWp2ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZSgpOwogICAgdmFyIGRyYWZ0N18xID0gcmVxdWlyZV9kcmFmdDcoKTsKICAgIHZhciBkaXNjcmltaW5hdG9yXzEgPSByZXF1aXJlX2Rpc2NyaW1pbmF0b3IoKTsKICAgIHZhciBkcmFmdDdNZXRhU2NoZW1hID0gcmVxdWlyZV9qc29uX3NjaGVtYV9kcmFmdF8wNygpOwogICAgdmFyIE1FVEFfU1VQUE9SVF9EQVRBID0gWyIvcHJvcGVydGllcyJdOwogICAgdmFyIE1FVEFfU0NIRU1BX0lEID0gImh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQtMDcvc2NoZW1hIjsKICAgIHZhciBBanYgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5kZWZhdWx0IHsKICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICBzdXBlci5fYWRkVm9jYWJ1bGFyaWVzKCk7CiAgICAgICAgZHJhZnQ3XzEuZGVmYXVsdC5mb3JFYWNoKCh2KSA9PiB0aGlzLmFkZFZvY2FidWxhcnkodikpOwogICAgICAgIGlmICh0aGlzLm9wdHMuZGlzY3JpbWluYXRvcikKICAgICAgICAgIHRoaXMuYWRkS2V5d29yZChkaXNjcmltaW5hdG9yXzEuZGVmYXVsdCk7CiAgICAgIH0KICAgICAgX2FkZERlZmF1bHRNZXRhU2NoZW1hKCkgewogICAgICAgIHN1cGVyLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmICghdGhpcy5vcHRzLm1ldGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgbWV0YVNjaGVtYSA9IHRoaXMub3B0cy4kZGF0YSA/IHRoaXMuJGRhdGFNZXRhU2NoZW1hKGRyYWZ0N01ldGFTY2hlbWEsIE1FVEFfU1VQUE9SVF9EQVRBKSA6IGRyYWZ0N01ldGFTY2hlbWE7CiAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIE1FVEFfU0NIRU1BX0lELCBmYWxzZSk7CiAgICAgICAgdGhpcy5yZWZzWyJodHRwOi8vanNvbi1zY2hlbWEub3JnL3NjaGVtYSJdID0gTUVUQV9TQ0hFTUFfSUQ7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHN1cGVyLmRlZmF1bHRNZXRhKCkgfHwgKHRoaXMuZ2V0U2NoZW1hKE1FVEFfU0NIRU1BX0lEKSA/IE1FVEFfU0NIRU1BX0lEIDogdm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFqdiA9IEFqdjsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gQWp2OwogICAgbW9kdWxlMi5leHBvcnRzLkFqdiA9IEFqdjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiS2V5d29yZEN4dCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHZhbGlkYXRlXzEuS2V5d29yZEN4dDsKICAgIH0gfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLl87CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdpZnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuc3RyaW5naWZ5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5pbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5OYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkNvZGVHZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuQ29kZUdlbjsKICAgIH0gfSk7CiAgICB2YXIgdmFsaWRhdGlvbl9lcnJvcl8xID0gcmVxdWlyZV92YWxpZGF0aW9uX2Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWxpZGF0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTWlzc2luZ1JlZkVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9mb3JtYXRzLmpzCnZhciByZXF1aXJlX2Zvcm1hdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gZXhwb3J0czIuZmFzdEZvcm1hdHMgPSBleHBvcnRzMi5mdWxsRm9ybWF0cyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGZtdERlZih2YWxpZGF0ZSwgY29tcGFyZSkgewogICAgICByZXR1cm4geyB2YWxpZGF0ZSwgY29tcGFyZSB9OwogICAgfQogICAgZXhwb3J0czIuZnVsbEZvcm1hdHMgPSB7CiAgICAgIC8vIGRhdGU6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkjc2VjdGlvbi01LjYKICAgICAgZGF0ZTogZm10RGVmKGRhdGUsIGNvbXBhcmVEYXRlKSwKICAgICAgLy8gZGF0ZS10aW1lOiBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I3NlY3Rpb24tNS42CiAgICAgIHRpbWU6IGZtdERlZihnZXRUaW1lKHRydWUpLCBjb21wYXJlVGltZSksCiAgICAgICJkYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUodHJ1ZSksIGNvbXBhcmVEYXRlVGltZSksCiAgICAgICJpc28tdGltZSI6IGZtdERlZihnZXRUaW1lKCksIGNvbXBhcmVJc29UaW1lKSwKICAgICAgImlzby1kYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUoKSwgY29tcGFyZUlzb0RhdGVUaW1lKSwKICAgICAgLy8gZHVyYXRpb246IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I2FwcGVuZGl4LUEKICAgICAgZHVyYXRpb246IC9eUCg/ISQpKChcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrUyk/KT98KFxkK1cpPykkLywKICAgICAgdXJpLAogICAgICAidXJpLXJlZmVyZW5jZSI6IC9eKD86W2Etel1bYS16MC05K1wtLl0qOik/KD86XC8/XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpdfCVbMC05YS1mXXsyfSkqQCk/KD86XFsoPzooPzooPzooPzpbMC05YS1mXXsxLDR9Oil7Nn18OjooPzpbMC05YS1mXXsxLDR9Oil7NX18KD86WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7NH18KD86KD86WzAtOWEtZl17MSw0fTopezAsMX1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXszfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwyfVswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezJ9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDN9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9OnwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCw0fVswLTlhLWZdezEsNH0pPzo6KSg/OlswLTlhLWZdezEsNH06WzAtOWEtZl17MSw0fXwoPzooPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pXC4pezN9KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KSl8KD86KD86WzAtOWEtZl17MSw0fTopezAsNX1bMC05YS1mXXsxLDR9KT86OlswLTlhLWZdezEsNH18KD86KD86WzAtOWEtZl17MSw0fTopezAsNn1bMC05YS1mXXsxLDR9KT86Oil8W1Z2XVswLTlhLWZdK1wuW2EtejAtOVwtLl9+ISQmJygpKissOz06XSspXF18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPyl8KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqfFwvKD86KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSopPyg/Olw/KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyg/OiMoPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/JC9pLAogICAgICAvLyB1cmktdGVtcGxhdGU6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NTcwCiAgICAgICJ1cmktdGVtcGxhdGUiOiAvXig/Oig/OlteXHgwMC1ceDIwIic8PiVcXF5ge3x9XXwlWzAtOWEtZl17Mn0pfFx7WysjLi87PyY9LCFAfF0/KD86W2EtejAtOV9dfCVbMC05YS1mXXsyfSkrKD86OlsxLTldWzAtOV17MCwzfXxcKik/KD86LCg/OlthLXowLTlfXXwlWzAtOWEtZl17Mn0pKyg/OjpbMS05XVswLTldezAsM318XCopPykqXH0pKiQvaSwKICAgICAgLy8gRm9yIHRoZSBzb3VyY2U6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RwZXJpbmkvNzI5Mjk0CiAgICAgIC8vIEZvciB0ZXN0IGNhc2VzOiBodHRwczovL21hdGhpYXNieW5lbnMuYmUvZGVtby91cmwtcmVnZXgKICAgICAgdXJsOiAvXig/Omh0dHBzP3xmdHApOlwvXC8oPzpcUysoPzo6XFMqKT9AKT8oPzooPyEoPzoxMHwxMjcpKD86XC5cZHsxLDN9KXszfSkoPyEoPzoxNjlcLjI1NHwxOTJcLjE2OCkoPzpcLlxkezEsM30pezJ9KSg/ITE3MlwuKD86MVs2LTldfDJcZHwzWzAtMV0pKD86XC5cZHsxLDN9KXsyfSkoPzpbMS05XVxkP3wxXGRcZHwyWzAxXVxkfDIyWzAtM10pKD86XC4oPzoxP1xkezEsMn18MlswLTRdXGR8MjVbMC01XSkpezJ9KD86XC4oPzpbMS05XVxkP3wxXGRcZHwyWzAtNF1cZHwyNVswLTRdKSl8KD86KD86W2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSstKSpbYS16MC05XHV7MDBhMX0tXHV7ZmZmZn1dKykoPzpcLig/OlthLXowLTlcdXswMGExfS1cdXtmZmZmfV0rLSkqW2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSspKig/OlwuKD86W2Etelx1ezAwYTF9LVx1e2ZmZmZ9XXsyLH0pKSkoPzo6XGR7Miw1fSk/KD86XC9bXlxzXSopPyQvaXUsCiAgICAgIGVtYWlsOiAvXlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSsoPzpcLlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16MC05XSg/OlthLXowLTktXSpbYS16MC05XSk/XC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8kL2ksCiAgICAgIGhvc3RuYW1lOiAvXig/PS57MSwyNTN9XC4/JClbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8oPzpcLlthLXowLTldKD86Wy0wLTlhLXpdezAsNjF9WzAtOWEtel0pPykqXC4/JC9pLAogICAgICAvLyBvcHRpbWl6ZWQgaHR0cHM6Ly93d3cuc2FmYXJpYm9va3NvbmxpbmUuY29tL2xpYnJhcnkvdmlldy9yZWd1bGFyLWV4cHJlc3Npb25zLWNvb2tib29rLzk3ODA1OTY4MDI4MzcvY2gwN3MxNi5odG1sCiAgICAgIGlwdjQ6IC9eKD86KD86MjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZClcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSQvLAogICAgICBpcHY2OiAvXigoKFswLTlhLWZdezEsNH06KXs3fShbMC05YS1mXXsxLDR9fDopKXwoKFswLTlhLWZdezEsNH06KXs2fSg6WzAtOWEtZl17MSw0fXwoKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezV9KCgoOlswLTlhLWZdezEsNH0pezEsMn0pfDooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezR9KCgoOlswLTlhLWZdezEsNH0pezEsM30pfCgoOlswLTlhLWZdezEsNH0pPzooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoKFswLTlhLWZdezEsNH06KXszfSgoKDpbMC05YS1mXXsxLDR9KXsxLDR9KXwoKDpbMC05YS1mXXsxLDR9KXswLDJ9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpfCgoWzAtOWEtZl17MSw0fTopezJ9KCgoOlswLTlhLWZdezEsNH0pezEsNX0pfCgoOlswLTlhLWZdezEsNH0pezAsM306KCgyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKShcLigyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSl7M30pKXw6KSl8KChbMC05YS1mXXsxLDR9Oil7MX0oKCg6WzAtOWEtZl17MSw0fSl7MSw2fSl8KCg6WzAtOWEtZl17MSw0fSl7MCw0fTooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoOigoKDpbMC05YS1mXXsxLDR9KXsxLDd9KXwoKDpbMC05YS1mXXsxLDR9KXswLDV9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpKSQvaSwKICAgICAgcmVnZXgsCiAgICAgIC8vIHV1aWQ6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzQxMjIKICAgICAgdXVpZDogL14oPzp1cm46dXVpZDopP1swLTlhLWZdezh9LSg/OlswLTlhLWZdezR9LSl7M31bMC05YS1mXXsxMn0kL2ksCiAgICAgIC8vIEpTT04tcG9pbnRlcjogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY5MDEKICAgICAgLy8gdXJpIGZyYWdtZW50OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NiNhcHBlbmRpeC1BCiAgICAgICJqc29uLXBvaW50ZXIiOiAvXig/OlwvKD86W15+L118fjB8fjEpKikqJC8sCiAgICAgICJqc29uLXBvaW50ZXItdXJpLWZyYWdtZW50IjogL14jKD86XC8oPzpbYS16MC05X1wtLiEkJicoKSorLDs6PUBdfCVbMC05YS1mXXsyfXx+MHx+MSkqKSokL2ksCiAgICAgIC8vIHJlbGF0aXZlIEpTT04tcG9pbnRlcjogaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQtbHVmZi1yZWxhdGl2ZS1qc29uLXBvaW50ZXItMDAKICAgICAgInJlbGF0aXZlLWpzb24tcG9pbnRlciI6IC9eKD86MHxbMS05XVswLTldKikoPzojfCg/OlwvKD86W15+L118fjB8fjEpKikqKSQvLAogICAgICAvLyB0aGUgZm9sbG93aW5nIGZvcm1hdHMgYXJlIHVzZWQgYnkgdGhlIG9wZW5hcGkgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9zcGVjLm9wZW5hcGlzLm9yZy9vYXMvdjMuMC4wI2RhdGEtdHlwZXMKICAgICAgLy8gYnl0ZTogaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbG1vdGEvaXMtYmFzZTY0CiAgICAgIGJ5dGUsCiAgICAgIC8vIHNpZ25lZCAzMiBiaXQgaW50ZWdlcgogICAgICBpbnQzMjogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlSW50MzIgfSwKICAgICAgLy8gc2lnbmVkIDY0IGJpdCBpbnRlZ2VyCiAgICAgIGludDY0OiB7IHR5cGU6ICJudW1iZXIiLCB2YWxpZGF0ZTogdmFsaWRhdGVJbnQ2NCB9LAogICAgICAvLyBDLXR5cGUgZmxvYXQKICAgICAgZmxvYXQ6IHsgdHlwZTogIm51bWJlciIsIHZhbGlkYXRlOiB2YWxpZGF0ZU51bWJlciB9LAogICAgICAvLyBDLXR5cGUgZG91YmxlCiAgICAgIGRvdWJsZTogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlTnVtYmVyIH0sCiAgICAgIC8vIGhpbnQgdG8gdGhlIFVJIHRvIGhpZGUgaW5wdXQgc3RyaW5ncwogICAgICBwYXNzd29yZDogdHJ1ZSwKICAgICAgLy8gdW5jaGVja2VkIHN0cmluZyBwYXlsb2FkCiAgICAgIGJpbmFyeTogdHJ1ZQogICAgfTsKICAgIGV4cG9ydHMyLmZhc3RGb3JtYXRzID0gewogICAgICAuLi5leHBvcnRzMi5mdWxsRm9ybWF0cywKICAgICAgZGF0ZTogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkJC8sIGNvbXBhcmVEYXRlKSwKICAgICAgdGltZTogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPykkL2ksIGNvbXBhcmVUaW1lKSwKICAgICAgImRhdGUtdGltZSI6IGZtdERlZigvXlxkXGRcZFxkLVswLTFdXGQtWzAtM11cZHQoPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KSQvaSwgY29tcGFyZURhdGVUaW1lKSwKICAgICAgImlzby10aW1lIjogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPyk/JC9pLCBjb21wYXJlSXNvVGltZSksCiAgICAgICJpc28tZGF0ZS10aW1lIjogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkW3Rcc10oPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KT8kL2ksIGNvbXBhcmVJc29EYXRlVGltZSksCiAgICAgIC8vIHVyaTogaHR0cHM6Ly9naXRodWIuY29tL21hZmludG9zaC9pcy1teS1qc29uLXZhbGlkL2Jsb2IvbWFzdGVyL2Zvcm1hdHMuanMKICAgICAgdXJpOiAvXig/OlthLXpdW2EtejAtOStcLS5dKjopKD86XC8/XC8pP1teXHNdKiQvaSwKICAgICAgInVyaS1yZWZlcmVuY2UiOiAvXig/Oig/OlthLXpdW2EtejAtOStcLS5dKjopP1wvP1wvKT8oPzpbXlxcXHMjXVteXHMjXSopPyg/OiNbXlxcXHNdKik/JC9pLAogICAgICAvLyBlbWFpbCAoc291cmNlcyBmcm9tIGpzZW4gdmFsaWRhdG9yKToKICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMDEzMjMvdXNpbmctYS1yZWd1bGFyLWV4cHJlc3Npb24tdG8tdmFsaWRhdGUtYW4tZW1haWwtYWRkcmVzcyNhbnN3ZXItODgyOTM2MwogICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sI3ZhbGlkLWUtbWFpbC1hZGRyZXNzIChzZWFyY2ggZm9yICd3aWxmdWwgdmlvbGF0aW9uJykKICAgICAgZW1haWw6IC9eW2EtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/KD86XC5bYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8pKiQvaQogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gT2JqZWN0LmtleXMoZXhwb3J0czIuZnVsbEZvcm1hdHMpOwogICAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7CiAgICAgIHJldHVybiB5ZWFyICUgNCA9PT0gMCAmJiAoeWVhciAlIDEwMCAhPT0gMCB8fCB5ZWFyICUgNDAwID09PSAwKTsKICAgIH0KICAgIHZhciBEQVRFID0gL14oXGRcZFxkXGQpLShcZFxkKS0oXGRcZCkkLzsKICAgIHZhciBEQVlTID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdOwogICAgZnVuY3Rpb24gZGF0ZShzdHIyKSB7CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBEQVRFLmV4ZWMoc3RyMik7CiAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIGNvbnN0IHllYXIgPSArbWF0Y2hlc1sxXTsKICAgICAgY29uc3QgbW9udGggPSArbWF0Y2hlc1syXTsKICAgICAgY29uc3QgZGF5ID0gK21hdGNoZXNbM107CiAgICAgIHJldHVybiBtb250aCA+PSAxICYmIG1vbnRoIDw9IDEyICYmIGRheSA+PSAxICYmIGRheSA8PSAobW9udGggPT09IDIgJiYgaXNMZWFwWWVhcih5ZWFyKSA/IDI5IDogREFZU1ttb250aF0pOwogICAgfQogICAgZnVuY3Rpb24gY29tcGFyZURhdGUoZDEsIGQyKSB7CiAgICAgIGlmICghKGQxICYmIGQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBpZiAoZDEgPiBkMikKICAgICAgICByZXR1cm4gMTsKICAgICAgaWYgKGQxIDwgZDIpCiAgICAgICAgcmV0dXJuIC0xOwogICAgICByZXR1cm4gMDsKICAgIH0KICAgIHZhciBUSU1FID0gL14oXGRcZCk6KFxkXGQpOihcZFxkKD86XC5cZCspPykoenwoWystXSkoXGRcZCkoPzo6PyhcZFxkKSk/KT8kL2k7CiAgICBmdW5jdGlvbiBnZXRUaW1lKHN0cmljdFRpbWVab25lKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiB0aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gVElNRS5leGVjKHN0cjIpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBjb25zdCBociA9ICttYXRjaGVzWzFdOwogICAgICAgIGNvbnN0IG1pbiA9ICttYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHNlYyA9ICttYXRjaGVzWzNdOwogICAgICAgIGNvbnN0IHR6ID0gbWF0Y2hlc1s0XTsKICAgICAgICBjb25zdCB0elNpZ24gPSBtYXRjaGVzWzVdID09PSAiLSIgPyAtMSA6IDE7CiAgICAgICAgY29uc3QgdHpIID0gKyhtYXRjaGVzWzZdIHx8IDApOwogICAgICAgIGNvbnN0IHR6TSA9ICsobWF0Y2hlc1s3XSB8fCAwKTsKICAgICAgICBpZiAodHpIID4gMjMgfHwgdHpNID4gNTkgfHwgc3RyaWN0VGltZVpvbmUgJiYgIXR6KQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmIChociA8PSAyMyAmJiBtaW4gPD0gNTkgJiYgc2VjIDwgNjApCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCB1dGNNaW4gPSBtaW4gLSB0ek0gKiB0elNpZ247CiAgICAgICAgY29uc3QgdXRjSHIgPSBociAtIHR6SCAqIHR6U2lnbiAtICh1dGNNaW4gPCAwID8gMSA6IDApOwogICAgICAgIHJldHVybiAodXRjSHIgPT09IDIzIHx8IHV0Y0hyID09PSAtMSkgJiYgKHV0Y01pbiA9PT0gNTkgfHwgdXRjTWluID09PSAtMSkgJiYgc2VjIDwgNjE7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlVGltZShzMSwgczIpIHsKICAgICAgaWYgKCEoczEgJiYgczIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIGNvbnN0IHQxID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczEpKS52YWx1ZU9mKCk7CiAgICAgIGNvbnN0IHQyID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczIpKS52YWx1ZU9mKCk7CiAgICAgIGlmICghKHQxICYmIHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICByZXR1cm4gdDEgLSB0MjsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVJc29UaW1lKHQxLCB0MikgewogICAgICBpZiAoISh0MSAmJiB0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgYTEgPSBUSU1FLmV4ZWModDEpOwogICAgICBjb25zdCBhMiA9IFRJTUUuZXhlYyh0Mik7CiAgICAgIGlmICghKGExICYmIGEyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB0MSA9IGExWzFdICsgYTFbMl0gKyBhMVszXTsKICAgICAgdDIgPSBhMlsxXSArIGEyWzJdICsgYTJbM107CiAgICAgIGlmICh0MSA+IHQyKQogICAgICAgIHJldHVybiAxOwogICAgICBpZiAodDEgPCB0MikKICAgICAgICByZXR1cm4gLTE7CiAgICAgIHJldHVybiAwOwogICAgfQogICAgdmFyIERBVEVfVElNRV9TRVBBUkFUT1IgPSAvdHxccy9pOwogICAgZnVuY3Rpb24gZ2V0RGF0ZVRpbWUoc3RyaWN0VGltZVpvbmUpIHsKICAgICAgY29uc3QgdGltZSA9IGdldFRpbWUoc3RyaWN0VGltZVpvbmUpOwogICAgICByZXR1cm4gZnVuY3Rpb24gZGF0ZV90aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBkYXRlVGltZSA9IHN0cjIuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgICAgcmV0dXJuIGRhdGVUaW1lLmxlbmd0aCA9PT0gMiAmJiBkYXRlKGRhdGVUaW1lWzBdKSAmJiB0aW1lKGRhdGVUaW1lWzFdKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlVGltZShkdDEsIGR0MikgewogICAgICBpZiAoIShkdDEgJiYgZHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBkMSA9IG5ldyBEYXRlKGR0MSkudmFsdWVPZigpOwogICAgICBjb25zdCBkMiA9IG5ldyBEYXRlKGR0MikudmFsdWVPZigpOwogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIGQxIC0gZDI7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlSXNvRGF0ZVRpbWUoZHQxLCBkdDIpIHsKICAgICAgaWYgKCEoZHQxICYmIGR0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgW2QxLCB0MV0gPSBkdDEuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgIGNvbnN0IFtkMiwgdDJdID0gZHQyLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpOwogICAgICBjb25zdCByZXMgPSBjb21wYXJlRGF0ZShkMSwgZDIpOwogICAgICBpZiAocmVzID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIHJlcyB8fCBjb21wYXJlVGltZSh0MSwgdDIpOwogICAgfQogICAgdmFyIE5PVF9VUklfRlJBR01FTlQgPSAvXC98Oi87CiAgICB2YXIgVVJJID0gL14oPzpbYS16XVthLXowLTkrXC0uXSo6KSg/OlwvP1wvKD86KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06XXwlWzAtOWEtZl17Mn0pKkApPyg/OlxbKD86KD86KD86KD86WzAtOWEtZl17MSw0fTopezZ9fDo6KD86WzAtOWEtZl17MSw0fTopezV9fCg/OlswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDF9WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7M318KD86KD86WzAtOWEtZl17MSw0fTopezAsMn1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXsyfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwzfVswLTlhLWZdezEsNH0pPzo6WzAtOWEtZl17MSw0fTp8KD86KD86WzAtOWEtZl17MSw0fTopezAsNH1bMC05YS1mXXsxLDR9KT86OikoPzpbMC05YS1mXXsxLDR9OlswLTlhLWZdezEsNH18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPykpfCg/Oig/OlswLTlhLWZdezEsNH06KXswLDV9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDZ9WzAtOWEtZl17MSw0fSk/OjopfFtWdl1bMC05YS1mXStcLlthLXowLTlcLS5ffiEkJicoKSorLDs9Ol0rKVxdfCg/Oig/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPylcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pfCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSp8XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqKSg/Olw/KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/KD86Iyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyQvaTsKICAgIGZ1bmN0aW9uIHVyaShzdHIyKSB7CiAgICAgIHJldHVybiBOT1RfVVJJX0ZSQUdNRU5ULnRlc3Qoc3RyMikgJiYgVVJJLnRlc3Qoc3RyMik7CiAgICB9CiAgICB2YXIgQllURSA9IC9eKD86W0EtWmEtejAtOSsvXXs0fSkqKD86W0EtWmEtejAtOSsvXXsyfT09fFtBLVphLXowLTkrL117M309KT8kL2dtOwogICAgZnVuY3Rpb24gYnl0ZShzdHIyKSB7CiAgICAgIEJZVEUubGFzdEluZGV4ID0gMDsKICAgICAgcmV0dXJuIEJZVEUudGVzdChzdHIyKTsKICAgIH0KICAgIHZhciBNSU5fSU5UMzIgPSAtKDIgKiogMzEpOwogICAgdmFyIE1BWF9JTlQzMiA9IDIgKiogMzEgLSAxOwogICAgZnVuY3Rpb24gdmFsaWRhdGVJbnQzMih2YWx1ZSkgewogICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSkgJiYgdmFsdWUgPD0gTUFYX0lOVDMyICYmIHZhbHVlID49IE1JTl9JTlQzMjsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlSW50NjQodmFsdWUpIHsKICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVOdW1iZXIoKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgdmFyIFpfQU5DSE9SID0gL1teXFxdXFxaLzsKICAgIGZ1bmN0aW9uIHJlZ2V4KHN0cjIpIHsKICAgICAgaWYgKFpfQU5DSE9SLnRlc3Qoc3RyMikpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAoc3RyMik7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2xpbWl0LmpzCnZhciByZXF1aXJlX2xpbWl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9saW1pdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZm9ybWF0TGltaXREZWZpbml0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gcmVxdWlyZV9hanYoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBvcHMgPSBjb2RlZ2VuXzEub3BlcmF0b3JzOwogICAgdmFyIEtXRHMgPSB7CiAgICAgIGZvcm1hdE1heGltdW06IHsgb2tTdHI6ICI8PSIsIG9rOiBvcHMuTFRFLCBmYWlsOiBvcHMuR1QgfSwKICAgICAgZm9ybWF0TWluaW11bTogeyBva1N0cjogIj49Iiwgb2s6IG9wcy5HVEUsIGZhaWw6IG9wcy5MVCB9LAogICAgICBmb3JtYXRFeGNsdXNpdmVNYXhpbXVtOiB7IG9rU3RyOiAiPCIsIG9rOiBvcHMuTFQsIGZhaWw6IG9wcy5HVEUgfSwKICAgICAgZm9ybWF0RXhjbHVzaXZlTWluaW11bTogeyBva1N0cjogIj4iLCBvazogb3BzLkdULCBmYWlsOiBvcHMuTFRFIH0KICAgIH07CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYHNob3VsZCBiZSAke0tXRHNba2V5d29yZF0ub2tTdHJ9ICR7c2NoZW1hQ29kZX1gLAogICAgICBwYXJhbXM6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7Y29tcGFyaXNvbjogJHtLV0RzW2tleXdvcmRdLm9rU3RyfSwgbGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdExpbWl0RGVmaW5pdGlvbiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICAgIGlmICghb3B0cy52YWxpZGF0ZUZvcm1hdHMpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZkN4dCA9IG5ldyBhanZfMS5LZXl3b3JkQ3h0KGl0LCBzZWxmMi5SVUxFUy5hbGwuZm9ybWF0LmRlZmluaXRpb24sICJmb3JtYXQiKTsKICAgICAgICBpZiAoZkN4dC4kZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZm10ID0gZ2VuLmNvbnN0KCJmbXQiLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10c31bJHtmQ3h0LnNjaGVtYUNvZGV9XWApOwogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLm9yKSgoMCwgY29kZWdlbl8xLl8pYHR5cGVvZiAke2ZtdH0gIT0gIm9iamVjdCJgLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10fSBpbnN0YW5jZW9mIFJlZ0V4cGAsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7Zm10fS5jb21wYXJlICE9ICJmdW5jdGlvbiJgLCBjb21wYXJlQ29kZShmbXQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlRm9ybWF0KCkgewogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZkN4dC5zY2hlbWE7CiAgICAgICAgICBjb25zdCBmbXREZWYgPSBzZWxmMi5mb3JtYXRzW2Zvcm1hdF07CiAgICAgICAgICBpZiAoIWZtdERlZiB8fCBmbXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGlmICh0eXBlb2YgZm10RGVmICE9ICJvYmplY3QiIHx8IGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCB8fCB0eXBlb2YgZm10RGVmLmNvbXBhcmUgIT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCIke2tleXdvcmR9IjogZm9ybWF0ICIke2Zvcm1hdH0iIGRvZXMgbm90IGRlZmluZSAiY29tcGFyZSIgZnVuY3Rpb25gKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgewogICAgICAgICAgICBrZXk6IGZvcm1hdCwKICAgICAgICAgICAgcmVmOiBmbXREZWYsCiAgICAgICAgICAgIGNvZGU6IG9wdHMuY29kZS5mb3JtYXRzID8gKDAsIGNvZGVnZW5fMS5fKWAke29wdHMuY29kZS5mb3JtYXRzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoZm9ybWF0KX1gIDogdm9pZCAwCiAgICAgICAgICB9KTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoY29tcGFyZUNvZGUoZm10KSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNvbXBhcmVDb2RlKGZtdCkgewogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LmNvbXBhcmUoJHtkYXRhfSwgJHtzY2hlbWFDb2RlfSkgJHtLV0RzW2tleXdvcmRdLmZhaWx9IDBgOwogICAgICAgIH0KICAgICAgfSwKICAgICAgZGVwZW5kZW5jaWVzOiBbImZvcm1hdCJdCiAgICB9OwogICAgdmFyIGZvcm1hdExpbWl0UGx1Z2luID0gKGFqdikgPT4gewogICAgICBhanYuYWRkS2V5d29yZChleHBvcnRzMi5mb3JtYXRMaW1pdERlZmluaXRpb24pOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBmb3JtYXRMaW1pdFBsdWdpbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZm9ybWF0c18xID0gcmVxdWlyZV9mb3JtYXRzKCk7CiAgICB2YXIgbGltaXRfMSA9IHJlcXVpcmVfbGltaXQoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBmdWxsTmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZnVsbEZvcm1hdHMiKTsKICAgIHZhciBmYXN0TmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZmFzdEZvcm1hdHMiKTsKICAgIHZhciBmb3JtYXRzUGx1Z2luID0gKGFqdiwgb3B0cyA9IHsga2V5d29yZHM6IHRydWUgfSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRzKSkgewogICAgICAgIGFkZEZvcm1hdHMoYWp2LCBvcHRzLCBmb3JtYXRzXzEuZnVsbEZvcm1hdHMsIGZ1bGxOYW1lKTsKICAgICAgICByZXR1cm4gYWp2OwogICAgICB9CiAgICAgIGNvbnN0IFtmb3JtYXRzLCBleHBvcnROYW1lXSA9IG9wdHMubW9kZSA9PT0gImZhc3QiID8gW2Zvcm1hdHNfMS5mYXN0Rm9ybWF0cywgZmFzdE5hbWVdIDogW2Zvcm1hdHNfMS5mdWxsRm9ybWF0cywgZnVsbE5hbWVdOwogICAgICBjb25zdCBsaXN0ID0gb3B0cy5mb3JtYXRzIHx8IGZvcm1hdHNfMS5mb3JtYXROYW1lczsKICAgICAgYWRkRm9ybWF0cyhhanYsIGxpc3QsIGZvcm1hdHMsIGV4cG9ydE5hbWUpOwogICAgICBpZiAob3B0cy5rZXl3b3JkcykKICAgICAgICAoMCwgbGltaXRfMS5kZWZhdWx0KShhanYpOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGZvcm1hdHNQbHVnaW4uZ2V0ID0gKG5hbWUsIG1vZGUgPSAiZnVsbCIpID0+IHsKICAgICAgY29uc3QgZm9ybWF0cyA9IG1vZGUgPT09ICJmYXN0IiA/IGZvcm1hdHNfMS5mYXN0Rm9ybWF0cyA6IGZvcm1hdHNfMS5mdWxsRm9ybWF0czsKICAgICAgY29uc3QgZiA9IGZvcm1hdHNbbmFtZV07CiAgICAgIGlmICghZikKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZm9ybWF0ICIke25hbWV9ImApOwogICAgICByZXR1cm4gZjsKICAgIH07CiAgICBmdW5jdGlvbiBhZGRGb3JtYXRzKGFqdiwgbGlzdCwgZnMsIGV4cG9ydE5hbWUpIHsKICAgICAgdmFyIF9hOwogICAgICB2YXIgX2I7CiAgICAgIChfYSA9IChfYiA9IGFqdi5vcHRzLmNvZGUpLmZvcm1hdHMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IF9iLmZvcm1hdHMgPSAoMCwgY29kZWdlbl8xLl8pYHJlcXVpcmUoImFqdi1mb3JtYXRzL2Rpc3QvZm9ybWF0cyIpLiR7ZXhwb3J0TmFtZX1gOwogICAgICBmb3IgKGNvbnN0IGYgb2YgbGlzdCkKICAgICAgICBhanYuYWRkRm9ybWF0KGYsIGZzW2ZdKTsKICAgIH0KICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gZm9ybWF0c1BsdWdpbjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdHNQbHVnaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcwp2YXIgcmVxdWlyZV9pc0Z1bmN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNGdW5jdGlvbiA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gImZ1bmN0aW9uIjsKICAgIH0KICAgIGV4cG9ydHMyLmlzRnVuY3Rpb24gPSBpc0Z1bmN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMKdmFyIHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUVycm9yQ2xhc3MgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBjcmVhdGVFcnJvckNsYXNzKGNyZWF0ZUltcGwpIHsKICAgICAgdmFyIF9zdXBlciA9IGZ1bmN0aW9uKGluc3RhbmNlKSB7CiAgICAgICAgRXJyb3IuY2FsbChpbnN0YW5jZSk7CiAgICAgICAgaW5zdGFuY2Uuc3RhY2sgPSBuZXcgRXJyb3IoKS5zdGFjazsKICAgICAgfTsKICAgICAgdmFyIGN0b3JGdW5jID0gY3JlYXRlSW1wbChfc3VwZXIpOwogICAgICBjdG9yRnVuYy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CiAgICAgIGN0b3JGdW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IGN0b3JGdW5jOwogICAgICByZXR1cm4gY3RvckZ1bmM7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVFcnJvckNsYXNzID0gY3JlYXRlRXJyb3JDbGFzczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzCnZhciByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VbnN1YnNjcmlwdGlvbkVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVW5zdWJzY3JpcHRpb25FcnJvckltcGwoZXJyb3JzKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9IGVycm9ycyA/IGVycm9ycy5sZW5ndGggKyAiIGVycm9ycyBvY2N1cnJlZCBkdXJpbmcgdW5zdWJzY3JpcHRpb246XG4iICsgZXJyb3JzLm1hcChmdW5jdGlvbihlcnIsIGkpIHsKICAgICAgICAgIHJldHVybiBpICsgMSArICIpICIgKyBlcnIudG9TdHJpbmcoKTsKICAgICAgICB9KS5qb2luKCJcbiAgIikgOiAiIjsKICAgICAgICB0aGlzLm5hbWUgPSAiVW5zdWJzY3JpcHRpb25FcnJvciI7CiAgICAgICAgdGhpcy5lcnJvcnMgPSBlcnJvcnM7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcnJSZW1vdmUuanMKdmFyIHJlcXVpcmVfYXJyUmVtb3ZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJyUmVtb3ZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBhcnJSZW1vdmUoYXJyLCBpdGVtKSB7CiAgICAgIGlmIChhcnIpIHsKICAgICAgICB2YXIgaW5kZXggPSBhcnIuaW5kZXhPZihpdGVtKTsKICAgICAgICAwIDw9IGluZGV4ICYmIGFyci5zcGxpY2UoaW5kZXgsIDEpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSBhcnJSZW1vdmU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmlwdGlvbi5qcwp2YXIgcmVxdWlyZV9TdWJzY3JpcHRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3Vic2NyaXB0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1N1YnNjcmlwdGlvbiA9IGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBVbnN1YnNjcmlwdGlvbkVycm9yXzEgPSByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFN1YnNjcmlwdGlvbjIoaW5pdGlhbFRlYXJkb3duKSB7CiAgICAgICAgdGhpcy5pbml0aWFsVGVhcmRvd24gPSBpbml0aWFsVGVhcmRvd247CiAgICAgICAgdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBudWxsOwogICAgICAgIHRoaXMuX2ZpbmFsaXplcnMgPSBudWxsOwogICAgICB9CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgdmFyIGVycm9yczsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICAgIGlmIChfcGFyZW50YWdlKSB7CiAgICAgICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IG51bGw7CiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpKSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9wYXJlbnRhZ2VfMSA9IF9fdmFsdWVzKF9wYXJlbnRhZ2UpLCBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCk7ICFfcGFyZW50YWdlXzFfMS5kb25lOyBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgICAgdmFyIHBhcmVudF8xID0gX3BhcmVudGFnZV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgICAgIHBhcmVudF8xLnJlbW92ZSh0aGlzKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgaWYgKF9wYXJlbnRhZ2VfMV8xICYmICFfcGFyZW50YWdlXzFfMS5kb25lICYmIChfYSA9IF9wYXJlbnRhZ2VfMS5yZXR1cm4pKSBfYS5jYWxsKF9wYXJlbnRhZ2VfMSk7CiAgICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF9wYXJlbnRhZ2UucmVtb3ZlKHRoaXMpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgaW5pdGlhbEZpbmFsaXplciA9IHRoaXMuaW5pdGlhbFRlYXJkb3duOwogICAgICAgICAgaWYgKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGluaXRpYWxGaW5hbGl6ZXIpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaW5pdGlhbEZpbmFsaXplcigpOwogICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgZXJyb3JzID0gZSBpbnN0YW5jZW9mIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yID8gZS5lcnJvcnMgOiBbZV07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHZhciBfZmluYWxpemVycyA9IHRoaXMuX2ZpbmFsaXplcnM7CiAgICAgICAgICBpZiAoX2ZpbmFsaXplcnMpIHsKICAgICAgICAgICAgdGhpcy5fZmluYWxpemVycyA9IG51bGw7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2ZpbmFsaXplcnNfMSA9IF9fdmFsdWVzKF9maW5hbGl6ZXJzKSwgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCk7ICFfZmluYWxpemVyc18xXzEuZG9uZTsgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgIHZhciBmaW5hbGl6ZXIgPSBfZmluYWxpemVyc18xXzEudmFsdWU7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBleGVjRmluYWxpemVyKGZpbmFsaXplcik7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgZXJyb3JzID0gZXJyb3JzICE9PSBudWxsICYmIGVycm9ycyAhPT0gdm9pZCAwID8gZXJyb3JzIDogW107CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcikgewogICAgICAgICAgICAgICAgICAgIGVycm9ycyA9IF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGVycm9ycykpLCBfX3JlYWQoZXJyLmVycm9ycykpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKGVycik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMl8xKSB7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9maW5hbGl6ZXJzXzFfMSAmJiAhX2ZpbmFsaXplcnNfMV8xLmRvbmUgJiYgKF9iID0gX2ZpbmFsaXplcnNfMS5yZXR1cm4pKSBfYi5jYWxsKF9maW5hbGl6ZXJzXzEpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8yKSB0aHJvdyBlXzIuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXJyb3JzKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcihlcnJvcnMpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHRlYXJkb3duICYmIHRlYXJkb3duICE9PSB0aGlzKSB7CiAgICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgICAgZXhlY0ZpbmFsaXplcih0ZWFyZG93bik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGVhcmRvd24gaW5zdGFuY2VvZiBTdWJzY3JpcHRpb24yKSB7CiAgICAgICAgICAgICAgaWYgKHRlYXJkb3duLmNsb3NlZCB8fCB0ZWFyZG93bi5faGFzUGFyZW50KHRoaXMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRlYXJkb3duLl9hZGRQYXJlbnQodGhpcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgKHRoaXMuX2ZpbmFsaXplcnMgPSAoX2EgPSB0aGlzLl9maW5hbGl6ZXJzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXSkucHVzaCh0ZWFyZG93bik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5faGFzUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgcmV0dXJuIF9wYXJlbnRhZ2UgPT09IHBhcmVudCB8fCBBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpICYmIF9wYXJlbnRhZ2UuaW5jbHVkZXMocGFyZW50KTsKICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuX2FkZFBhcmVudCA9IGZ1bmN0aW9uKHBhcmVudCkgewogICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkgPyAoX3BhcmVudGFnZS5wdXNoKHBhcmVudCksIF9wYXJlbnRhZ2UpIDogX3BhcmVudGFnZSA/IFtfcGFyZW50YWdlLCBwYXJlbnRdIDogcGFyZW50OwogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5fcmVtb3ZlUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgaWYgKF9wYXJlbnRhZ2UgPT09IHBhcmVudCkgewogICAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gbnVsbDsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkpIHsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShfcGFyZW50YWdlLCBwYXJlbnQpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUucmVtb3ZlID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2ZpbmFsaXplcnMgPSB0aGlzLl9maW5hbGl6ZXJzOwogICAgICAgIF9maW5hbGl6ZXJzICYmIGFyclJlbW92ZV8xLmFyclJlbW92ZShfZmluYWxpemVycywgdGVhcmRvd24pOwogICAgICAgIGlmICh0ZWFyZG93biBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbjIpIHsKICAgICAgICAgIHRlYXJkb3duLl9yZW1vdmVQYXJlbnQodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLkVNUFRZID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVtcHR5ID0gbmV3IFN1YnNjcmlwdGlvbjIoKTsKICAgICAgICBlbXB0eS5jbG9zZWQgPSB0cnVlOwogICAgICAgIHJldHVybiBlbXB0eTsKICAgICAgfSgpOwogICAgICByZXR1cm4gU3Vic2NyaXB0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbjsKICAgIGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IFN1YnNjcmlwdGlvbi5FTVBUWTsKICAgIGZ1bmN0aW9uIGlzU3Vic2NyaXB0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbiB8fCB2YWx1ZSAmJiAiY2xvc2VkIiBpbiB2YWx1ZSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5yZW1vdmUpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmFkZCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUudW5zdWJzY3JpYmUpOwogICAgfQogICAgZXhwb3J0czIuaXNTdWJzY3JpcHRpb24gPSBpc1N1YnNjcmlwdGlvbjsKICAgIGZ1bmN0aW9uIGV4ZWNGaW5hbGl6ZXIoZmluYWxpemVyKSB7CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihmaW5hbGl6ZXIpKSB7CiAgICAgICAgZmluYWxpemVyKCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZmluYWxpemVyLnVuc3Vic2NyaWJlKCk7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvY29uZmlnLmpzCnZhciByZXF1aXJlX2NvbmZpZyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9jb25maWcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHsKICAgICAgb25VbmhhbmRsZWRFcnJvcjogbnVsbCwKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uOiBudWxsLAogICAgICBQcm9taXNlOiB2b2lkIDAsCiAgICAgIHVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc6IGZhbHNlLAogICAgICB1c2VEZXByZWNhdGVkTmV4dENvbnRleHQ6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzCnZhciByZXF1aXJlX3RpbWVvdXRQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB2b2lkIDA7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB7CiAgICAgIHNldFRpbWVvdXQ6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgaWYgKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5zZXRUaW1lb3V0KSB7CiAgICAgICAgICByZXR1cm4gZGVsZWdhdGUuc2V0VGltZW91dC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0VGltZW91dC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW2hhbmRsZXIsIHRpbWVvdXRdLCBfX3JlYWQoYXJncykpKTsKICAgICAgfSwKICAgICAgY2xlYXJUaW1lb3V0OiBmdW5jdGlvbihoYW5kbGUpIHsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFyVGltZW91dCkgfHwgY2xlYXJUaW1lb3V0KShoYW5kbGUpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3JlcG9ydFVuaGFuZGxlZEVycm9yLmpzCnZhciByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcmVwb3J0VW5oYW5kbGVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvbmZpZ18xID0gcmVxdWlyZV9jb25maWcoKTsKICAgIHZhciB0aW1lb3V0UHJvdmlkZXJfMSA9IHJlcXVpcmVfdGltZW91dFByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiByZXBvcnRVbmhhbmRsZWRFcnJvcihlcnIpIHsKICAgICAgdGltZW91dFByb3ZpZGVyXzEudGltZW91dFByb3ZpZGVyLnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIG9uVW5oYW5kbGVkRXJyb3IgPSBjb25maWdfMS5jb25maWcub25VbmhhbmRsZWRFcnJvcjsKICAgICAgICBpZiAob25VbmhhbmRsZWRFcnJvcikgewogICAgICAgICAgb25VbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBlcnI7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gcmVwb3J0VW5oYW5kbGVkRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcwp2YXIgcmVxdWlyZV9ub29wID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm9vcCA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIG5vb3AoKSB7CiAgICB9CiAgICBleHBvcnRzMi5ub29wID0gbm9vcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uRmFjdG9yaWVzLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbkZhY3RvcmllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb25GYWN0b3JpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZU5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLm5leHROb3RpZmljYXRpb24gPSBleHBvcnRzMi5lcnJvck5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY3JlYXRlTm90aWZpY2F0aW9uKCJDIiwgdm9pZCAwLCB2b2lkIDApOwogICAgfSgpOwogICAgZnVuY3Rpb24gZXJyb3JOb3RpZmljYXRpb24oZXJyb3IpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiRSIsIHZvaWQgMCwgZXJyb3IpOwogICAgfQogICAgZXhwb3J0czIuZXJyb3JOb3RpZmljYXRpb24gPSBlcnJvck5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG5leHROb3RpZmljYXRpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiTiIsIHZhbHVlLCB2b2lkIDApOwogICAgfQogICAgZXhwb3J0czIubmV4dE5vdGlmaWNhdGlvbiA9IG5leHROb3RpZmljYXRpb247CiAgICBmdW5jdGlvbiBjcmVhdGVOb3RpZmljYXRpb24oa2luZCwgdmFsdWUsIGVycm9yKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAga2luZCwKICAgICAgICB2YWx1ZSwKICAgICAgICBlcnJvcgogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlTm90aWZpY2F0aW9uID0gY3JlYXRlTm90aWZpY2F0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2Vycm9yQ29udGV4dC5qcwp2YXIgcmVxdWlyZV9lcnJvckNvbnRleHQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9lcnJvckNvbnRleHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNhcHR1cmVFcnJvciA9IGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IHZvaWQgMDsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgY29udGV4dCA9IG51bGw7CiAgICBmdW5jdGlvbiBlcnJvckNvbnRleHQoY2IpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nKSB7CiAgICAgICAgdmFyIGlzUm9vdCA9ICFjb250ZXh0OwogICAgICAgIGlmIChpc1Jvb3QpIHsKICAgICAgICAgIGNvbnRleHQgPSB7IGVycm9yVGhyb3duOiBmYWxzZSwgZXJyb3I6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgY2IoKTsKICAgICAgICBpZiAoaXNSb290KSB7CiAgICAgICAgICB2YXIgX2EgPSBjb250ZXh0LCBlcnJvclRocm93biA9IF9hLmVycm9yVGhyb3duLCBlcnJvciA9IF9hLmVycm9yOwogICAgICAgICAgY29udGV4dCA9IG51bGw7CiAgICAgICAgICBpZiAoZXJyb3JUaHJvd24pIHsKICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGNiKCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IGVycm9yQ29udGV4dDsKICAgIGZ1bmN0aW9uIGNhcHR1cmVFcnJvcihlcnIpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nICYmIGNvbnRleHQpIHsKICAgICAgICBjb250ZXh0LmVycm9yVGhyb3duID0gdHJ1ZTsKICAgICAgICBjb250ZXh0LmVycm9yID0gZXJyOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5jYXB0dXJlRXJyb3IgPSBjYXB0dXJlRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfU3Vic2NyaWJlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVNUFRZX09CU0VSVkVSID0gZXhwb3J0czIuU2FmZVN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgcmVwb3J0VW5oYW5kbGVkRXJyb3JfMSA9IHJlcXVpcmVfcmVwb3J0VW5oYW5kbGVkRXJyb3IoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBOb3RpZmljYXRpb25GYWN0b3JpZXNfMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uRmFjdG9yaWVzKCk7CiAgICB2YXIgdGltZW91dFByb3ZpZGVyXzEgPSByZXF1aXJlX3RpbWVvdXRQcm92aWRlcigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJzY3JpYmVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3Vic2NyaWJlcjIoZGVzdGluYXRpb24pIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLmlzU3RvcHBlZCA9IGZhbHNlOwogICAgICAgIGlmIChkZXN0aW5hdGlvbikgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBkZXN0aW5hdGlvbjsKICAgICAgICAgIGlmIChTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbihkZXN0aW5hdGlvbikpIHsKICAgICAgICAgICAgZGVzdGluYXRpb24uYWRkKF90aGlzKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFN1YnNjcmliZXIyLmNyZWF0ZSA9IGZ1bmN0aW9uKG5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHJldHVybiBuZXcgU2FmZVN1YnNjcmliZXIobmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5uZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX25leHQodmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLmVycm9yTm90aWZpY2F0aW9uKGVyciksIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLkNPTVBMRVRFX05PVElGSUNBVElPTiwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgIHRoaXMuX2NvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gbnVsbDsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fbmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5uZXh0KHZhbHVlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLl9lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHRyeSB7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5jb21wbGV0ZSgpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gU3Vic2NyaWJlcjI7CiAgICB9KFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbik7CiAgICBleHBvcnRzMi5TdWJzY3JpYmVyID0gU3Vic2NyaWJlcjsKICAgIHZhciBfYmluZCA9IEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kOwogICAgZnVuY3Rpb24gYmluZChmbiwgdGhpc0FyZykgewogICAgICByZXR1cm4gX2JpbmQuY2FsbChmbiwgdGhpc0FyZyk7CiAgICB9CiAgICB2YXIgQ29uc3VtZXJPYnNlcnZlciA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBDb25zdW1lck9ic2VydmVyMihwYXJ0aWFsT2JzZXJ2ZXIpIHsKICAgICAgICB0aGlzLnBhcnRpYWxPYnNlcnZlciA9IHBhcnRpYWxPYnNlcnZlcjsKICAgICAgfQogICAgICBDb25zdW1lck9ic2VydmVyMi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIubmV4dCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuZXJyb3IpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5lcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuY29tcGxldGUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIENvbnN1bWVyT2JzZXJ2ZXIyOwogICAgfSgpOwogICAgdmFyIFNhZmVTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTYWZlU3Vic2NyaWJlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFNhZmVTdWJzY3JpYmVyMihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICB2YXIgcGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgIW9ic2VydmVyT3JOZXh0KSB7CiAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSB7CiAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0ICE9PSBudWxsICYmIG9ic2VydmVyT3JOZXh0ICE9PSB2b2lkIDAgPyBvYnNlcnZlck9yTmV4dCA6IHZvaWQgMCwKICAgICAgICAgICAgZXJyb3I6IGVycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6IHZvaWQgMCwKICAgICAgICAgICAgY29tcGxldGU6IGNvbXBsZXRlICE9PSBudWxsICYmIGNvbXBsZXRlICE9PSB2b2lkIDAgPyBjb21wbGV0ZSA6IHZvaWQgMAogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdmFyIGNvbnRleHRfMTsKICAgICAgICAgIGlmIChfdGhpcyAmJiBjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZE5leHRDb250ZXh0KSB7CiAgICAgICAgICAgIGNvbnRleHRfMSA9IE9iamVjdC5jcmVhdGUob2JzZXJ2ZXJPck5leHQpOwogICAgICAgICAgICBjb250ZXh0XzEudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gewogICAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0Lm5leHQgJiYgYmluZChvYnNlcnZlck9yTmV4dC5uZXh0LCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGVycm9yOiBvYnNlcnZlck9yTmV4dC5lcnJvciAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmVycm9yLCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGNvbXBsZXRlOiBvYnNlcnZlck9yTmV4dC5jb21wbGV0ZSAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmNvbXBsZXRlLCBjb250ZXh0XzEpCiAgICAgICAgICAgIH07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSBvYnNlcnZlck9yTmV4dDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBuZXcgQ29uc3VtZXJPYnNlcnZlcihwYXJ0aWFsT2JzZXJ2ZXIpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICByZXR1cm4gU2FmZVN1YnNjcmliZXIyOwogICAgfShTdWJzY3JpYmVyKTsKICAgIGV4cG9ydHMyLlNhZmVTdWJzY3JpYmVyID0gU2FmZVN1YnNjcmliZXI7CiAgICBmdW5jdGlvbiBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnJvcikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcpIHsKICAgICAgICBlcnJvckNvbnRleHRfMS5jYXB0dXJlRXJyb3IoZXJyb3IpOwogICAgICB9IGVsc2UgewogICAgICAgIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkZWZhdWx0RXJyb3JIYW5kbGVyKGVycikgewogICAgICB0aHJvdyBlcnI7CiAgICB9CiAgICBmdW5jdGlvbiBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcikgewogICAgICB2YXIgb25TdG9wcGVkTm90aWZpY2F0aW9uID0gY29uZmlnXzEuY29uZmlnLm9uU3RvcHBlZE5vdGlmaWNhdGlvbjsKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uICYmIHRpbWVvdXRQcm92aWRlcl8xLnRpbWVvdXRQcm92aWRlci5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBvblN0b3BwZWROb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUiA9IHsKICAgICAgY2xvc2VkOiB0cnVlLAogICAgICBuZXh0OiBub29wXzEubm9vcCwKICAgICAgZXJyb3I6IGRlZmF1bHRFcnJvckhhbmRsZXIsCiAgICAgIGNvbXBsZXRlOiBub29wXzEubm9vcAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL29ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfb2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvb2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLm9ic2VydmFibGUgfHwgIkBAb2JzZXJ2YWJsZSI7CiAgICB9KCk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaWRlbnRpdHkuanMKdmFyIHJlcXVpcmVfaWRlbnRpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pZGVudGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWRlbnRpdHkgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpZGVudGl0eSh4KSB7CiAgICAgIHJldHVybiB4OwogICAgfQogICAgZXhwb3J0czIuaWRlbnRpdHkgPSBpZGVudGl0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzCnZhciByZXF1aXJlX3BpcGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5waXBlRnJvbUFycmF5ID0gZXhwb3J0czIucGlwZSA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcGlwZSgpIHsKICAgICAgdmFyIGZucyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGZuc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBwaXBlRnJvbUFycmF5KGZucyk7CiAgICB9CiAgICBleHBvcnRzMi5waXBlID0gcGlwZTsKICAgIGZ1bmN0aW9uIHBpcGVGcm9tQXJyYXkoZm5zKSB7CiAgICAgIGlmIChmbnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgaWYgKGZucy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZm5zWzBdOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbiBwaXBlZChpbnB1dCkgewogICAgICAgIHJldHVybiBmbnMucmVkdWNlKGZ1bmN0aW9uKHByZXYsIGZuKSB7CiAgICAgICAgICByZXR1cm4gZm4ocHJldik7CiAgICAgICAgfSwgaW5wdXQpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucGlwZUZyb21BcnJheSA9IHBpcGVGcm9tQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9PYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIHZhciBwaXBlXzEgPSByZXF1aXJlX3BpcGUoKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXJyb3JDb250ZXh0XzEgPSByZXF1aXJlX2Vycm9yQ29udGV4dCgpOwogICAgdmFyIE9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gT2JzZXJ2YWJsZTIoc3Vic2NyaWJlKSB7CiAgICAgICAgaWYgKHN1YnNjcmliZSkgewogICAgICAgICAgdGhpcy5fc3Vic2NyaWJlID0gc3Vic2NyaWJlOwogICAgICAgIH0KICAgICAgfQogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUubGlmdCA9IGZ1bmN0aW9uKG9wZXJhdG9yKSB7CiAgICAgICAgdmFyIG9ic2VydmFibGUgPSBuZXcgT2JzZXJ2YWJsZTIoKTsKICAgICAgICBvYnNlcnZhYmxlLnNvdXJjZSA9IHRoaXM7CiAgICAgICAgb2JzZXJ2YWJsZS5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24ob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBpc1N1YnNjcmliZXIob2JzZXJ2ZXJPck5leHQpID8gb2JzZXJ2ZXJPck5leHQgOiBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUpOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYSA9IF90aGlzLCBvcGVyYXRvciA9IF9hLm9wZXJhdG9yLCBzb3VyY2UgPSBfYS5zb3VyY2U7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChvcGVyYXRvciA/IG9wZXJhdG9yLmNhbGwoc3Vic2NyaWJlciwgc291cmNlKSA6IHNvdXJjZSA/IF90aGlzLl9zdWJzY3JpYmUoc3Vic2NyaWJlcikgOiBfdGhpcy5fdHJ5U3Vic2NyaWJlKHN1YnNjcmliZXIpKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlcjsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzaW5rKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHJldHVybiB0aGlzLl9zdWJzY3JpYmUoc2luayk7CiAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICBzaW5rLmVycm9yKGVycik7CiAgICAgICAgfQogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuZm9yRWFjaCA9IGZ1bmN0aW9uKG5leHQsIHByb21pc2VDdG9yKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBwcm9taXNlQ3RvciA9IGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKTsKICAgICAgICByZXR1cm4gbmV3IHByb21pc2VDdG9yKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICAgICAgbmV4dDogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICByZWplY3QoZXJyKTsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICAgIGNvbXBsZXRlOiByZXNvbHZlCiAgICAgICAgICB9KTsKICAgICAgICAgIF90aGlzLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLnNvdXJjZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUucGlwZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvcGVyYXRpb25zID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIG9wZXJhdGlvbnNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHBpcGVfMS5waXBlRnJvbUFycmF5KG9wZXJhdGlvbnMpKHRoaXMpOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUudG9Qcm9taXNlID0gZnVuY3Rpb24ocHJvbWlzZUN0b3IpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHByb21pc2VDdG9yID0gZ2V0UHJvbWlzZUN0b3IocHJvbWlzZUN0b3IpOwogICAgICAgIHJldHVybiBuZXcgcHJvbWlzZUN0b3IoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICB2YXIgdmFsdWU7CiAgICAgICAgICBfdGhpcy5zdWJzY3JpYmUoZnVuY3Rpb24oeCkgewogICAgICAgICAgICByZXR1cm4gdmFsdWUgPSB4OwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIHJldHVybiByZWplY3QoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcmVzb2x2ZSh2YWx1ZSk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIuY3JlYXRlID0gZnVuY3Rpb24oc3Vic2NyaWJlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlMihzdWJzY3JpYmUpOwogICAgICB9OwogICAgICByZXR1cm4gT2JzZXJ2YWJsZTI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gT2JzZXJ2YWJsZTsKICAgIGZ1bmN0aW9uIGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmV0dXJuIChfYSA9IHByb21pc2VDdG9yICE9PSBudWxsICYmIHByb21pc2VDdG9yICE9PSB2b2lkIDAgPyBwcm9taXNlQ3RvciA6IGNvbmZpZ18xLmNvbmZpZy5Qcm9taXNlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBQcm9taXNlOwogICAgfQogICAgZnVuY3Rpb24gaXNPYnNlcnZlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUubmV4dCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuZXJyb3IpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmNvbXBsZXRlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU3Vic2NyaWJlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgdmFsdWUgaW5zdGFuY2VvZiBTdWJzY3JpYmVyXzEuU3Vic2NyaWJlciB8fCBpc09ic2VydmVyKHZhbHVlKSAmJiBTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbih2YWx1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcwp2YXIgcmVxdWlyZV9saWZ0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub3BlcmF0ZSA9IGV4cG9ydHMyLmhhc0xpZnQgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBoYXNMaWZ0KHNvdXJjZSkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc291cmNlID09PSBudWxsIHx8IHNvdXJjZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc291cmNlLmxpZnQpOwogICAgfQogICAgZXhwb3J0czIuaGFzTGlmdCA9IGhhc0xpZnQ7CiAgICBmdW5jdGlvbiBvcGVyYXRlKGluaXQpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIGlmIChoYXNMaWZ0KHNvdXJjZSkpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2UubGlmdChmdW5jdGlvbihsaWZ0ZWRTb3VyY2UpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICByZXR1cm4gaW5pdChsaWZ0ZWRTb3VyY2UsIHRoaXMpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICB0aGlzLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmFibGUgdG8gbGlmdCB1bmtub3duIE9ic2VydmFibGUgdHlwZSIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub3BlcmF0ZSA9IG9wZXJhdGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gZXhwb3J0czIuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUpIHsKICAgICAgcmV0dXJuIG5ldyBPcGVyYXRvclN1YnNjcmliZXIoZGVzdGluYXRpb24sIG9uTmV4dCwgb25Db21wbGV0ZSwgb25FcnJvciwgb25GaW5hbGl6ZSk7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIgPSBjcmVhdGVPcGVyYXRvclN1YnNjcmliZXI7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhPcGVyYXRvclN1YnNjcmliZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBPcGVyYXRvclN1YnNjcmliZXIyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUsIHNob3VsZFVuc3Vic2NyaWJlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgZGVzdGluYXRpb24pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMub25GaW5hbGl6ZSA9IG9uRmluYWxpemU7CiAgICAgICAgX3RoaXMuc2hvdWxkVW5zdWJzY3JpYmUgPSBzaG91bGRVbnN1YnNjcmliZTsKICAgICAgICBfdGhpcy5fbmV4dCA9IG9uTmV4dCA/IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBvbk5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX25leHQ7CiAgICAgICAgX3RoaXMuX2Vycm9yID0gb25FcnJvciA/IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25FcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyMikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIyKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9IDogX3N1cGVyLnByb3RvdHlwZS5fZXJyb3I7CiAgICAgICAgX3RoaXMuX2NvbXBsZXRlID0gb25Db21wbGV0ZSA/IGZ1bmN0aW9uKCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25Db21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX2NvbXBsZXRlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPcGVyYXRvclN1YnNjcmliZXIyLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoIXRoaXMuc2hvdWxkVW5zdWJzY3JpYmUgfHwgdGhpcy5zaG91bGRVbnN1YnNjcmliZSgpKSB7CiAgICAgICAgICB2YXIgY2xvc2VkXzEgPSB0aGlzLmNsb3NlZDsKICAgICAgICAgIF9zdXBlci5wcm90b3R5cGUudW5zdWJzY3JpYmUuY2FsbCh0aGlzKTsKICAgICAgICAgICFjbG9zZWRfMSAmJiAoKF9hID0gdGhpcy5vbkZpbmFsaXplKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzKSk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gT3BlcmF0b3JTdWJzY3JpYmVyMjsKICAgIH0oU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIpOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVmQ291bnQuanMKdmFyIHJlcXVpcmVfcmVmQ291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZkNvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWZDb3VudCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiByZWZDb3VudCgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBzb3VyY2UuX3JlZkNvdW50Kys7CiAgICAgICAgdmFyIHJlZkNvdW50ZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoIXNvdXJjZSB8fCBzb3VyY2UuX3JlZkNvdW50IDw9IDAgfHwgMCA8IC0tc291cmNlLl9yZWZDb3VudCkgewogICAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgdmFyIHNoYXJlZENvbm5lY3Rpb24gPSBzb3VyY2UuX2Nvbm5lY3Rpb247CiAgICAgICAgICB2YXIgY29ubiA9IGNvbm5lY3Rpb247CiAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgIGlmIChzaGFyZWRDb25uZWN0aW9uICYmICghY29ubiB8fCBzaGFyZWRDb25uZWN0aW9uID09PSBjb25uKSkgewogICAgICAgICAgICBzaGFyZWRDb25uZWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShyZWZDb3VudGVyKTsKICAgICAgICBpZiAoIXJlZkNvdW50ZXIuY2xvc2VkKSB7CiAgICAgICAgICBjb25uZWN0aW9uID0gc291cmNlLmNvbm5lY3QoKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVmQ291bnQgPSByZWZDb3VudDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9Db25uZWN0YWJsZU9ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvQ29ubmVjdGFibGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgcmVmQ291bnRfMSA9IHJlcXVpcmVfcmVmQ291bnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhDb25uZWN0YWJsZU9ic2VydmFibGUyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBDb25uZWN0YWJsZU9ic2VydmFibGUyKHNvdXJjZSwgc3ViamVjdEZhY3RvcnkpIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICBfdGhpcy5zdWJqZWN0RmFjdG9yeSA9IHN1YmplY3RGYWN0b3J5OwogICAgICAgIF90aGlzLl9zdWJqZWN0ID0gbnVsbDsKICAgICAgICBfdGhpcy5fcmVmQ291bnQgPSAwOwogICAgICAgIF90aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBpZiAobGlmdF8xLmhhc0xpZnQoc291cmNlKSkgewogICAgICAgICAgX3RoaXMubGlmdCA9IHNvdXJjZS5saWZ0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KCkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5nZXRTdWJqZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSB0aGlzLl9zdWJqZWN0OwogICAgICAgIGlmICghc3ViamVjdCB8fCBzdWJqZWN0LmlzU3RvcHBlZCkgewogICAgICAgICAgdGhpcy5fc3ViamVjdCA9IHRoaXMuc3ViamVjdEZhY3RvcnkoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX3N1YmplY3Q7CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90ZWFyZG93biA9IGZ1bmN0aW9uKCkgewogICAgICAgIHRoaXMuX3JlZkNvdW50ID0gMDsKICAgICAgICB2YXIgX2Nvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIHRoaXMuX3N1YmplY3QgPSB0aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBfY29ubmVjdGlvbiA9PT0gbnVsbCB8fCBfY29ubmVjdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Nvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIGNvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIGlmICghY29ubmVjdGlvbikgewogICAgICAgICAgY29ubmVjdGlvbiA9IHRoaXMuX2Nvbm5lY3Rpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgc3ViamVjdF8xID0gdGhpcy5nZXRTdWJqZWN0KCk7CiAgICAgICAgICBjb25uZWN0aW9uLmFkZCh0aGlzLnNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YmplY3RfMSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICAgIHN1YmplY3RfMS5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIF90aGlzLl90ZWFyZG93bigpOwogICAgICAgICAgICBzdWJqZWN0XzEuZXJyb3IoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICB9KSkpOwogICAgICAgICAgaWYgKGNvbm5lY3Rpb24uY2xvc2VkKSB7CiAgICAgICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24gPSBudWxsOwogICAgICAgICAgICBjb25uZWN0aW9uID0gU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uLkVNUFRZOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY29ubmVjdGlvbjsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUucmVmQ291bnQgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gcmVmQ291bnRfMS5yZWZDb3VudCgpKHRoaXMpOwogICAgICB9OwogICAgICByZXR1cm4gQ29ubmVjdGFibGVPYnNlcnZhYmxlMjsKICAgIH0oT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpOwogICAgZXhwb3J0czIuQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gQ29ubmVjdGFibGVPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIucGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuZGVsZWdhdGUgfHwgcGVyZm9ybWFuY2UpLm5vdygpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYW5pbWF0aW9uRnJhbWVQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIgPSB7CiAgICAgIHNjaGVkdWxlOiBmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgIHZhciByZXF1ZXN0ID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lOwogICAgICAgIHZhciBjYW5jZWwgPSBjYW5jZWxBbmltYXRpb25GcmFtZTsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSkgewogICAgICAgICAgcmVxdWVzdCA9IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZTsKICAgICAgICAgIGNhbmNlbCA9IGRlbGVnYXRlLmNhbmNlbEFuaW1hdGlvbkZyYW1lOwogICAgICAgIH0KICAgICAgICB2YXIgaGFuZGxlID0gcmVxdWVzdChmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICBjYW5jZWwgPSB2b2lkIDA7CiAgICAgICAgICBjYWxsYmFjayh0aW1lc3RhbXAyKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBjYW5jZWwgPT09IG51bGwgfHwgY2FuY2VsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjYW5jZWwoaGFuZGxlKTsKICAgICAgICB9KTsKICAgICAgfSwKICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lOiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZSkgfHwgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjYW5jZWxBbmltYXRpb25GcmFtZTogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIHJldHVybiAoKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5jYW5jZWxBbmltYXRpb25GcmFtZSkgfHwgY2FuY2VsQW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZG9tL2FuaW1hdGlvbkZyYW1lcy5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kb20vYW5pbWF0aW9uRnJhbWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXModGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcFByb3ZpZGVyID8gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSh0aW1lc3RhbXBQcm92aWRlcikgOiBERUZBVUxUX0FOSU1BVElPTl9GUkFNRVM7CiAgICB9CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSBhbmltYXRpb25GcmFtZXM7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXNGYWN0b3J5KHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcm92aWRlciA9IHRpbWVzdGFtcFByb3ZpZGVyIHx8IHBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXJfMS5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIHZhciBzdGFydCA9IHByb3ZpZGVyLm5vdygpOwogICAgICAgIHZhciBpZCA9IDA7CiAgICAgICAgdmFyIHJ1biA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBpZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICAgICAgaWQgPSAwOwogICAgICAgICAgICAgIHZhciBub3cgPSBwcm92aWRlci5ub3coKTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoewogICAgICAgICAgICAgICAgdGltZXN0YW1wOiB0aW1lc3RhbXBQcm92aWRlciA/IG5vdyA6IHRpbWVzdGFtcDIsCiAgICAgICAgICAgICAgICBlbGFwc2VkOiBub3cgLSBzdGFydAogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJ1bigpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHJ1bigpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChpZCkgewogICAgICAgICAgICBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5jYW5jZWxBbmltYXRpb25GcmFtZShpZCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICB2YXIgREVGQVVMVF9BTklNQVRJT05fRlJBTUVTID0gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSgpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL09iamVjdFVuc3Vic2NyaWJlZEVycm9yLmpzCnZhciByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE9iamVjdFVuc3Vic2NyaWJlZEVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk9iamVjdFVuc3Vic2NyaWJlZEVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAib2JqZWN0IHVuc3Vic2NyaWJlZCI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9TdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5vbnltb3VzU3ViamVjdCA9IGV4cG9ydHMyLlN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBfdGhpcy5vYnNlcnZlcnMgPSBbXTsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5oYXNFcnJvciA9IGZhbHNlOwogICAgICAgIF90aGlzLnRocm93bkVycm9yID0gbnVsbDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgU3ViamVjdDIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFub255bW91c1N1YmplY3QodGhpcywgdGhpcyk7CiAgICAgICAgc3ViamVjdC5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX3Rocm93SWZDbG9zZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBpZiAoIV90aGlzLmN1cnJlbnRPYnNlcnZlcnMpIHsKICAgICAgICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gQXJyYXkuZnJvbShfdGhpcy5vYnNlcnZlcnMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2IgPSBfX3ZhbHVlcyhfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzKSwgX2MgPSBfYi5uZXh0KCk7ICFfYy5kb25lOyBfYyA9IF9iLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gX2MudmFsdWU7CiAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9jICYmICFfYy5kb25lICYmIChfYSA9IF9iLnJldHVybikpIF9hLmNhbGwoX2IpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuZXJyb3JDb250ZXh0KGZ1bmN0aW9uKCkgewogICAgICAgICAgX3RoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICAgIGlmICghX3RoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICAgIF90aGlzLmhhc0Vycm9yID0gX3RoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgICAgX3RoaXMudGhyb3duRXJyb3IgPSBlcnI7CiAgICAgICAgICAgIHZhciBvYnNlcnZlcnMgPSBfdGhpcy5vYnNlcnZlcnM7CiAgICAgICAgICAgIHdoaWxlIChvYnNlcnZlcnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgICB2YXIgb2JzZXJ2ZXJzID0gX3RoaXMub2JzZXJ2ZXJzOwogICAgICAgICAgICB3aGlsZSAob2JzZXJ2ZXJzLmxlbmd0aCkgewogICAgICAgICAgICAgIG9ic2VydmVycy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgdGhpcy5vYnNlcnZlcnMgPSB0aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICB9OwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoU3ViamVjdDIucHJvdG90eXBlLCAib2JzZXJ2ZWQiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIHJldHVybiAoKF9hID0gdGhpcy5vYnNlcnZlcnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5sZW5ndGgpID4gMDsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUuY2FsbCh0aGlzLCBzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHRoaXMuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMoc3Vic2NyaWJlcik7CiAgICAgICAgcmV0dXJuIHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX2lubmVyU3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBvYnNlcnZlcnMgPSBfYS5vYnNlcnZlcnM7CiAgICAgICAgaWYgKGhhc0Vycm9yIHx8IGlzU3RvcHBlZCkgewogICAgICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgICB9CiAgICAgICAgdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBvYnNlcnZlcnMucHVzaChzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKG9ic2VydmVycywgc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBpc1N0b3BwZWQgPSBfYS5pc1N0b3BwZWQ7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKHRocm93bkVycm9yKTsKICAgICAgICB9IGVsc2UgaWYgKGlzU3RvcHBlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLmFzT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5jcmVhdGUgPSBmdW5jdGlvbihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBBbm9ueW1vdXNTdWJqZWN0KGRlc3RpbmF0aW9uLCBzb3VyY2UpOwogICAgICB9OwogICAgICByZXR1cm4gU3ViamVjdDI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLlN1YmplY3QgPSBTdWJqZWN0OwogICAgdmFyIEFub255bW91c1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFub255bW91c1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbm9ueW1vdXNTdWJqZWN0MihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5leHQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIEFub255bW91c1N1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSwgZXJyKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICAoX2IgPSAoX2EgPSB0aGlzLmRlc3RpbmF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29tcGxldGUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICByZXR1cm4gKF9iID0gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgfTsKICAgICAgcmV0dXJuIEFub255bW91c1N1YmplY3QyOwogICAgfShTdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFub255bW91c1N1YmplY3QgPSBBbm9ueW1vdXNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QuanMKdmFyIHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0JlaGF2aW9yU3ViamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhCZWhhdmlvclN1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBCZWhhdmlvclN1YmplY3QyKF92YWx1ZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gX3ZhbHVlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUsICJ2YWx1ZSIsIHsKICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3Vic2NyaXB0aW9uID0gX3N1cGVyLnByb3RvdHlwZS5fc3Vic2NyaWJlLmNhbGwodGhpcywgc3Vic2NyaWJlcik7CiAgICAgICAgIXN1YnNjcmlwdGlvbi5jbG9zZWQgJiYgc3Vic2NyaWJlci5uZXh0KHRoaXMuX3ZhbHVlKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBCZWhhdmlvclN1YmplY3QyLnByb3RvdHlwZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIGhhc0Vycm9yID0gX2EuaGFzRXJyb3IsIHRocm93bkVycm9yID0gX2EudGhyb3duRXJyb3IsIF92YWx1ZSA9IF9hLl92YWx1ZTsKICAgICAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgICAgIHRocm93IHRocm93bkVycm9yOwogICAgICAgIH0KICAgICAgICB0aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgcmV0dXJuIF92YWx1ZTsKICAgICAgfTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgX3N1cGVyLnByb3RvdHlwZS5uZXh0LmNhbGwodGhpcywgdGhpcy5fdmFsdWUgPSB2YWx1ZSk7CiAgICAgIH07CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3QyOwogICAgfShTdWJqZWN0XzEuU3ViamVjdCk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBCZWhhdmlvclN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlci5kZWxlZ2F0ZSB8fCBEYXRlKS5ub3coKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvUmVwbGF5U3ViamVjdC5qcwp2YXIgcmVxdWlyZV9SZXBsYXlTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgUmVwbGF5U3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUmVwbGF5U3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFJlcGxheVN1YmplY3QyKF9idWZmZXJTaXplLCBfd2luZG93VGltZSwgX3RpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgICAgaWYgKF9idWZmZXJTaXplID09PSB2b2lkIDApIHsKICAgICAgICAgIF9idWZmZXJTaXplID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIGlmIChfd2luZG93VGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBfd2luZG93VGltZSA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICBpZiAoX3RpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICAgIF90aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5fYnVmZmVyU2l6ZSA9IF9idWZmZXJTaXplOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gX3dpbmRvd1RpbWU7CiAgICAgICAgX3RoaXMuX3RpbWVzdGFtcFByb3ZpZGVyID0gX3RpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIF90aGlzLl9idWZmZXIgPSBbXTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gdHJ1ZTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gX3dpbmRvd1RpbWUgPT09IEluZmluaXR5OwogICAgICAgIF90aGlzLl9idWZmZXJTaXplID0gTWF0aC5tYXgoMSwgX2J1ZmZlclNpemUpOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gTWF0aC5tYXgoMSwgX3dpbmRvd1RpbWUpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfYnVmZmVyID0gX2EuX2J1ZmZlciwgX2luZmluaXRlVGltZVdpbmRvdyA9IF9hLl9pbmZpbml0ZVRpbWVXaW5kb3csIF90aW1lc3RhbXBQcm92aWRlciA9IF9hLl90aW1lc3RhbXBQcm92aWRlciwgX3dpbmRvd1RpbWUgPSBfYS5fd2luZG93VGltZTsKICAgICAgICBpZiAoIWlzU3RvcHBlZCkgewogICAgICAgICAgX2J1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICFfaW5maW5pdGVUaW1lV2luZG93ICYmIF9idWZmZXIucHVzaChfdGltZXN0YW1wUHJvdmlkZXIubm93KCkgKyBfd2luZG93VGltZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3RyaW1CdWZmZXIoKTsKICAgICAgICBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIFJlcGxheVN1YmplY3QyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHRoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICB0aGlzLl90cmltQnVmZmVyKCk7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHZhciBfYSA9IHRoaXMsIF9pbmZpbml0ZVRpbWVXaW5kb3cgPSBfYS5faW5maW5pdGVUaW1lV2luZG93LCBfYnVmZmVyID0gX2EuX2J1ZmZlcjsKICAgICAgICB2YXIgY29weSA9IF9idWZmZXIuc2xpY2UoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvcHkubGVuZ3RoICYmICFzdWJzY3JpYmVyLmNsb3NlZDsgaSArPSBfaW5maW5pdGVUaW1lV2luZG93ID8gMSA6IDIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjb3B5W2ldKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUuX3RyaW1CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfYnVmZmVyU2l6ZSA9IF9hLl9idWZmZXJTaXplLCBfdGltZXN0YW1wUHJvdmlkZXIgPSBfYS5fdGltZXN0YW1wUHJvdmlkZXIsIF9idWZmZXIgPSBfYS5fYnVmZmVyLCBfaW5maW5pdGVUaW1lV2luZG93ID0gX2EuX2luZmluaXRlVGltZVdpbmRvdzsKICAgICAgICB2YXIgYWRqdXN0ZWRCdWZmZXJTaXplID0gKF9pbmZpbml0ZVRpbWVXaW5kb3cgPyAxIDogMikgKiBfYnVmZmVyU2l6ZTsKICAgICAgICBfYnVmZmVyU2l6ZSA8IEluZmluaXR5ICYmIGFkanVzdGVkQnVmZmVyU2l6ZSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXIuc3BsaWNlKDAsIF9idWZmZXIubGVuZ3RoIC0gYWRqdXN0ZWRCdWZmZXJTaXplKTsKICAgICAgICBpZiAoIV9pbmZpbml0ZVRpbWVXaW5kb3cpIHsKICAgICAgICAgIHZhciBub3cgPSBfdGltZXN0YW1wUHJvdmlkZXIubm93KCk7CiAgICAgICAgICB2YXIgbGFzdCA9IDA7CiAgICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXJbaV0gPD0gbm93OyBpICs9IDIpIHsKICAgICAgICAgICAgbGFzdCA9IGk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0ICYmIF9idWZmZXIuc3BsaWNlKDAsIGxhc3QgKyAxKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IFJlcGxheVN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0FzeW5jU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9Bc3luY1N1YmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvQXN5bmNTdWJqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBBc3luY1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFzeW5jU3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gbnVsbDsKICAgICAgICBfdGhpcy5faGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICBfdGhpcy5faXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCBfaGFzVmFsdWUgPSBfYS5faGFzVmFsdWUsIF92YWx1ZSA9IF9hLl92YWx1ZSwgdGhyb3duRXJyb3IgPSBfYS50aHJvd25FcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmIChoYXNFcnJvcikgewogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcih0aHJvd25FcnJvcik7CiAgICAgICAgfSBlbHNlIGlmIChpc1N0b3BwZWQgfHwgX2lzQ29tcGxldGUpIHsKICAgICAgICAgIF9oYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLm5leHQoX3ZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICghdGhpcy5pc1N0b3BwZWQpIHsKICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICB0aGlzLl9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIF9oYXNWYWx1ZSA9IF9hLl9oYXNWYWx1ZSwgX3ZhbHVlID0gX2EuX3ZhbHVlLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmICghX2lzQ29tcGxldGUpIHsKICAgICAgICAgIHRoaXMuX2lzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgX2hhc1ZhbHVlICYmIF9zdXBlci5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsIF92YWx1ZSk7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuQXN5bmNTdWJqZWN0ID0gQXN5bmNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzCnZhciByZXF1aXJlX0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHJldHVybiBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIHJldHVybiBBY3Rpb24yOwogICAgfShTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24pOwogICAgZXhwb3J0czIuQWN0aW9uID0gQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW50ZXJ2YWxQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9pbnRlcnZhbFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9pbnRlcnZhbFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuaW50ZXJ2YWxQcm92aWRlciA9IHsKICAgICAgc2V0SW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0SW50ZXJ2YWwpIHsKICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZS5zZXRJbnRlcnZhbC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFySW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmludGVydmFsUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW50ZXJ2YWwpIHx8IGNsZWFySW50ZXJ2YWwpKGhhbmRsZSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY0FjdGlvbi5qcwp2YXIgcmVxdWlyZV9Bc3luY0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQWN0aW9uXzEgPSByZXF1aXJlX0FjdGlvbigpOwogICAgdmFyIGludGVydmFsUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW50ZXJ2YWxQcm92aWRlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBBc3luY0FjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXN5bmNBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBc3luY0FjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlOwogICAgICAgIHZhciBpZCA9IHRoaXMuaWQ7CiAgICAgICAgdmFyIHNjaGVkdWxlciA9IHRoaXMuc2NoZWR1bGVyOwogICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZChzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IHRydWU7CiAgICAgICAgdGhpcy5kZWxheSA9IGRlbGF5OwogICAgICAgIHRoaXMuaWQgPSAoX2EgPSB0aGlzLmlkKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLnJlcXVlc3RBc3luY0lkKHNjaGVkdWxlciwgdGhpcy5pZCwgZGVsYXkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBfaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLnNldEludGVydmFsKHNjaGVkdWxlci5mbHVzaC5iaW5kKHNjaGVkdWxlciwgdGhpcyksIGRlbGF5KTsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKF9zY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsICYmIHRoaXMuZGVsYXkgPT09IGRlbGF5ICYmIHRoaXMucGVuZGluZyA9PT0gZmFsc2UpIHsKICAgICAgICAgIHJldHVybiBpZDsKICAgICAgICB9CiAgICAgICAgaWYgKGlkICE9IG51bGwpIHsKICAgICAgICAgIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLmNsZWFySW50ZXJ2YWwoaWQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLmV4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9yID0gdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgcmV0dXJuIGVycm9yOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nID09PSBmYWxzZSAmJiB0aGlzLmlkICE9IG51bGwpIHsKICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHRoaXMuc2NoZWR1bGVyLCB0aGlzLmlkLCBudWxsKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuX2V4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgX2RlbGF5KSB7CiAgICAgICAgdmFyIGVycm9yZWQgPSBmYWxzZTsKICAgICAgICB2YXIgZXJyb3JWYWx1ZTsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy53b3JrKHN0YXRlKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBlcnJvcmVkID0gdHJ1ZTsKICAgICAgICAgIGVycm9yVmFsdWUgPSBlID8gZSA6IG5ldyBFcnJvcigiU2NoZWR1bGVkIGFjdGlvbiB0aHJldyBmYWxzeSBlcnJvciIpOwogICAgICAgIH0KICAgICAgICBpZiAoZXJyb3JlZCkgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgICAgcmV0dXJuIGVycm9yVmFsdWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdmFyIF9hID0gdGhpcywgaWQgPSBfYS5pZCwgc2NoZWR1bGVyID0gX2Euc2NoZWR1bGVyOwogICAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICAgIHRoaXMud29yayA9IHRoaXMuc3RhdGUgPSB0aGlzLnNjaGVkdWxlciA9IG51bGw7CiAgICAgICAgICB0aGlzLnBlbmRpbmcgPSBmYWxzZTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShhY3Rpb25zLCB0aGlzKTsKICAgICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHNjaGVkdWxlciwgaWQsIG51bGwpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5kZWxheSA9IG51bGw7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNBY3Rpb24yOwogICAgfShBY3Rpb25fMS5BY3Rpb24pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSBBc3luY0FjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMKdmFyIHJlcXVpcmVfSW1tZWRpYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvSW1tZWRpYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UZXN0VG9vbHMgPSBleHBvcnRzMi5JbW1lZGlhdGUgPSB2b2lkIDA7CiAgICB2YXIgbmV4dEhhbmRsZSA9IDE7CiAgICB2YXIgcmVzb2x2ZWQ7CiAgICB2YXIgYWN0aXZlSGFuZGxlcyA9IHt9OwogICAgZnVuY3Rpb24gZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSkgewogICAgICBpZiAoaGFuZGxlIGluIGFjdGl2ZUhhbmRsZXMpIHsKICAgICAgICBkZWxldGUgYWN0aXZlSGFuZGxlc1toYW5kbGVdOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLkltbWVkaWF0ZSA9IHsKICAgICAgc2V0SW1tZWRpYXRlOiBmdW5jdGlvbihjYikgewogICAgICAgIHZhciBoYW5kbGUgPSBuZXh0SGFuZGxlKys7CiAgICAgICAgYWN0aXZlSGFuZGxlc1toYW5kbGVdID0gdHJ1ZTsKICAgICAgICBpZiAoIXJlc29sdmVkKSB7CiAgICAgICAgICByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIH0KICAgICAgICByZXNvbHZlZC50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpICYmIGNiKCk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGhhbmRsZTsKICAgICAgfSwKICAgICAgY2xlYXJJbW1lZGlhdGU6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGVzdFRvb2xzID0gewogICAgICBwZW5kaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoYWN0aXZlSGFuZGxlcykubGVuZ3RoOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW1tZWRpYXRlUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbW1lZGlhdGVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBJbW1lZGlhdGVfMSA9IHJlcXVpcmVfSW1tZWRpYXRlKCk7CiAgICB2YXIgc2V0SW1tZWRpYXRlID0gSW1tZWRpYXRlXzEuSW1tZWRpYXRlLnNldEltbWVkaWF0ZTsKICAgIHZhciBjbGVhckltbWVkaWF0ZSA9IEltbWVkaWF0ZV8xLkltbWVkaWF0ZS5jbGVhckltbWVkaWF0ZTsKICAgIGV4cG9ydHMyLmltbWVkaWF0ZVByb3ZpZGVyID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnNldEltbWVkaWF0ZSkgfHwgc2V0SW1tZWRpYXRlKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW1tZWRpYXRlKSB8fCBjbGVhckltbWVkaWF0ZSkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzYXBBY3Rpb24uanMKdmFyIHJlcXVpcmVfQXNhcEFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcEFjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgaW1tZWRpYXRlUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIoKTsKICAgIHZhciBBc2FwQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcEFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXNhcEFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT09IG51bGwgJiYgZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgc2NoZWR1bGVyLmFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLl9zY2hlZHVsZWQgfHwgKHNjaGVkdWxlci5fc2NoZWR1bGVkID0gaW1tZWRpYXRlUHJvdmlkZXJfMS5pbW1lZGlhdGVQcm92aWRlci5zZXRJbW1lZGlhdGUoc2NoZWR1bGVyLmZsdXNoLmJpbmQoc2NoZWR1bGVyLCB2b2lkIDApKSk7CiAgICAgIH07CiAgICAgIEFzYXBBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsID8gZGVsYXkgPiAwIDogdGhpcy5kZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGlmIChpZCAhPSBudWxsICYmICgoX2EgPSBhY3Rpb25zW2FjdGlvbnMubGVuZ3RoIC0gMV0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pZCkgIT09IGlkKSB7CiAgICAgICAgICBpbW1lZGlhdGVQcm92aWRlcl8xLmltbWVkaWF0ZVByb3ZpZGVyLmNsZWFySW1tZWRpYXRlKGlkKTsKICAgICAgICAgIGlmIChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9PT0gaWQpIHsKICAgICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gQXNhcEFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgU2NoZWR1bGVyID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3Rvciwgbm93KSB7CiAgICAgICAgaWYgKG5vdyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBub3cgPSBTY2hlZHVsZXIyLm5vdzsKICAgICAgICB9CiAgICAgICAgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yID0gc2NoZWR1bGVyQWN0aW9uQ3RvcjsKICAgICAgICB0aGlzLm5vdyA9IG5vdzsKICAgICAgfQogICAgICBTY2hlZHVsZXIyLnByb3RvdHlwZS5zY2hlZHVsZSA9IGZ1bmN0aW9uKHdvcmssIGRlbGF5LCBzdGF0ZSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yKHRoaXMsIHdvcmspLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgIH07CiAgICAgIFNjaGVkdWxlcjIubm93ID0gZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyLm5vdzsKICAgICAgcmV0dXJuIFNjaGVkdWxlcjI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5TY2hlZHVsZXIgPSBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY1NjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc3luY1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1NjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU2NoZWR1bGVyMihTY2hlZHVsZXJBY3Rpb24sIG5vdykgewogICAgICAgIGlmIChub3cgPT09IHZvaWQgMCkgewogICAgICAgICAgbm93ID0gU2NoZWR1bGVyXzEuU2NoZWR1bGVyLm5vdzsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgU2NoZWR1bGVyQWN0aW9uLCBub3cpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuYWN0aW9ucyA9IFtdOwogICAgICAgIF90aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIGlmICh0aGlzLl9hY3RpdmUpIHsKICAgICAgICAgIGFjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoYWN0aW9uID0gYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc3luY1NjaGVkdWxlcjI7CiAgICB9KFNjaGVkdWxlcl8xLlNjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc3luY1NjaGVkdWxlciA9IEFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcFNjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc2FwU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc2FwU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBBc2FwU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcFNjaGVkdWxlcjIoKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFzYXBTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc2FwU2NoZWR1bGVyID0gQXNhcFNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzYXAuanMKdmFyIHJlcXVpcmVfYXNhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXNhcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLmFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXNhcEFjdGlvbl8xID0gcmVxdWlyZV9Bc2FwQWN0aW9uKCk7CiAgICB2YXIgQXNhcFNjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc2FwU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gbmV3IEFzYXBTY2hlZHVsZXJfMS5Bc2FwU2NoZWR1bGVyKEFzYXBBY3Rpb25fMS5Bc2FwQWN0aW9uKTsKICAgIGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXN5bmMuanMKdmFyIHJlcXVpcmVfYXN5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gbmV3IEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIoQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVBY3Rpb24uanMKdmFyIHJlcXVpcmVfUXVldWVBY3Rpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgUXVldWVBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBkZWxheTsKICAgICAgICB0aGlzLnN0YXRlID0gc3RhdGU7CiAgICAgICAgdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIHJldHVybiBkZWxheSA+IDAgfHwgdGhpcy5jbG9zZWQgPyBfc3VwZXIucHJvdG90eXBlLmV4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpIDogdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICB9OwogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCAmJiBkZWxheSA+IDAgfHwgZGVsYXkgPT0gbnVsbCAmJiB0aGlzLmRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5mbHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfTsKICAgICAgcmV0dXJuIFF1ZXVlQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5RdWV1ZUFjdGlvbiA9IFF1ZXVlQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfUXVldWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgUXVldWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICByZXR1cm4gUXVldWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gUXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9xdWV1ZS5qcwp2YXIgcmVxdWlyZV9xdWV1ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgUXVldWVBY3Rpb25fMSA9IHJlcXVpcmVfUXVldWVBY3Rpb24oKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlcl8xID0gcmVxdWlyZV9RdWV1ZVNjaGVkdWxlcigpOwogICAgZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBuZXcgUXVldWVTY2hlZHVsZXJfMS5RdWV1ZVNjaGVkdWxlcihRdWV1ZUFjdGlvbl8xLlF1ZXVlQWN0aW9uKTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZUFjdGlvbi5qcwp2YXIgcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQW5pbWF0aW9uRnJhbWVBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIoKTsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQW5pbWF0aW9uRnJhbWVBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbmltYXRpb25GcmFtZUFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9PSBudWxsICYmIGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5hY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5fc2NoZWR1bGVkIHx8IChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZXIuZmx1c2godm9pZCAwKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICAgIEFuaW1hdGlvbkZyYW1lQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCA/IGRlbGF5ID4gMCA6IHRoaXMuZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBpZiAoaWQgIT0gbnVsbCAmJiAoKF9hID0gYWN0aW9uc1thY3Rpb25zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWQpICE9PSBpZCkgewogICAgICAgICAgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQpOwogICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZUFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSBBbmltYXRpb25GcmFtZUFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBc3luY1NjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc3luY1NjaGVkdWxlcigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBbmltYXRpb25GcmFtZVNjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMigpIHsKICAgICAgICByZXR1cm4gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FuaW1hdGlvbkZyYW1lLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbl8xID0gcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IG5ldyBBbmltYXRpb25GcmFtZVNjaGVkdWxlcl8xLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKEFuaW1hdGlvbkZyYW1lQWN0aW9uXzEuQW5pbWF0aW9uRnJhbWVBY3Rpb24pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1ZpcnR1YWxUaW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9WaXJ0dWFsVGltZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBWaXJ0dWFsVGltZVNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbFRpbWVTY2hlZHVsZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBWaXJ0dWFsVGltZVNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3RvciwgbWF4RnJhbWVzKSB7CiAgICAgICAgaWYgKHNjaGVkdWxlckFjdGlvbkN0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc2NoZWR1bGVyQWN0aW9uQ3RvciA9IFZpcnR1YWxBY3Rpb247CiAgICAgICAgfQogICAgICAgIGlmIChtYXhGcmFtZXMgPT09IHZvaWQgMCkgewogICAgICAgICAgbWF4RnJhbWVzID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlckFjdGlvbkN0b3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIF90aGlzLmZyYW1lOwogICAgICAgIH0pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMubWF4RnJhbWVzID0gbWF4RnJhbWVzOwogICAgICAgIF90aGlzLmZyYW1lID0gMDsKICAgICAgICBfdGhpcy5pbmRleCA9IC0xOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBWaXJ0dWFsVGltZVNjaGVkdWxlcjIucHJvdG90eXBlLmZsdXNoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgYWN0aW9ucyA9IF9hLmFjdGlvbnMsIG1heEZyYW1lcyA9IF9hLm1heEZyYW1lczsKICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdmFyIGFjdGlvbjsKICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5kZWxheSA8PSBtYXhGcmFtZXMpIHsKICAgICAgICAgIGFjdGlvbnMuc2hpZnQoKTsKICAgICAgICAgIHRoaXMuZnJhbWUgPSBhY3Rpb24uZGVsYXk7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgd2hpbGUgKGFjdGlvbiA9IGFjdGlvbnMuc2hpZnQoKSkgewogICAgICAgICAgICBhY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbFRpbWVTY2hlZHVsZXIyLmZyYW1lVGltZUZhY3RvciA9IDEwOwogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB2YXIgVmlydHVhbEFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFZpcnR1YWxBY3Rpb24yKHNjaGVkdWxlciwgd29yaywgaW5kZXgpIHsKICAgICAgICBpZiAoaW5kZXggPT09IHZvaWQgMCkgewogICAgICAgICAgaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggKz0gMTsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5pbmRleCA9IGluZGV4OwogICAgICAgIF90aGlzLmFjdGl2ZSA9IHRydWU7CiAgICAgICAgX3RoaXMuaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggPSBpbmRleDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKE51bWJlci5pc0Zpbml0ZShkZWxheSkpIHsKICAgICAgICAgIGlmICghdGhpcy5pZCkgewogICAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgdmFyIGFjdGlvbiA9IG5ldyBWaXJ0dWFsQWN0aW9uMih0aGlzLnNjaGVkdWxlciwgdGhpcy53b3JrKTsKICAgICAgICAgIHRoaXMuYWRkKGFjdGlvbik7CiAgICAgICAgICByZXR1cm4gYWN0aW9uLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24uRU1QVFk7CiAgICAgICAgfQogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBzY2hlZHVsZXIuZnJhbWUgKyBkZWxheTsKICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICBhY3Rpb25zLnNvcnQoVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMpOwogICAgICAgIHJldHVybiAxOwogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIFZpcnR1YWxBY3Rpb24yLnByb3RvdHlwZS5fZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIGlmICh0aGlzLmFjdGl2ZSA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMgPSBmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgaWYgKGEuZGVsYXkgPT09IGIuZGVsYXkpIHsKICAgICAgICAgIGlmIChhLmluZGV4ID09PSBiLmluZGV4KSB7CiAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgfSBlbHNlIGlmIChhLmluZGV4ID4gYi5pbmRleCkgewogICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGEuZGVsYXkgPiBiLmRlbGF5KSB7CiAgICAgICAgICByZXR1cm4gMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIFZpcnR1YWxBY3Rpb24yOwogICAgfShBc3luY0FjdGlvbl8xLkFzeW5jQWN0aW9uKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxBY3Rpb24gPSBWaXJ0dWFsQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuRU1QVFkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBleHBvcnRzMi5FTVBUWSA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICB9KTsKICAgIGZ1bmN0aW9uIGVtcHR5KHNjaGVkdWxlcikgewogICAgICByZXR1cm4gc2NoZWR1bGVyID8gZW1wdHlTY2hlZHVsZWQoc2NoZWR1bGVyKSA6IGV4cG9ydHMyLkVNUFRZOwogICAgfQogICAgZXhwb3J0czIuZW1wdHkgPSBlbXB0eTsKICAgIGZ1bmN0aW9uIGVtcHR5U2NoZWR1bGVkKHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfaXNTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1NjaGVkdWxlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuc2NoZWR1bGUpOwogICAgfQogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSBpc1NjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzCnZhciByZXF1aXJlX2FyZ3MgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wb3BOdW1iZXIgPSBleHBvcnRzMi5wb3BTY2hlZHVsZXIgPSBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgZnVuY3Rpb24gbGFzdChhcnIpIHsKICAgICAgcmV0dXJuIGFyclthcnIubGVuZ3RoIC0gMV07CiAgICB9CiAgICBmdW5jdGlvbiBwb3BSZXN1bHRTZWxlY3RvcihhcmdzKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihsYXN0KGFyZ3MpKSA/IGFyZ3MucG9wKCkgOiB2b2lkIDA7CiAgICB9CiAgICBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHBvcFJlc3VsdFNlbGVjdG9yOwogICAgZnVuY3Rpb24gcG9wU2NoZWR1bGVyKGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIobGFzdChhcmdzKSkgPyBhcmdzLnBvcCgpIDogdm9pZCAwOwogICAgfQogICAgZXhwb3J0czIucG9wU2NoZWR1bGVyID0gcG9wU2NoZWR1bGVyOwogICAgZnVuY3Rpb24gcG9wTnVtYmVyKGFyZ3MsIGRlZmF1bHRWYWx1ZSkgewogICAgICByZXR1cm4gdHlwZW9mIGxhc3QoYXJncykgPT09ICJudW1iZXIiID8gYXJncy5wb3AoKSA6IGRlZmF1bHRWYWx1ZTsKICAgIH0KICAgIGV4cG9ydHMyLnBvcE51bWJlciA9IHBvcE51bWJlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FycmF5TGlrZS5qcwp2YXIgcmVxdWlyZV9pc0FycmF5TGlrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXJyYXlMaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0FycmF5TGlrZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmlzQXJyYXlMaWtlID0gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4geCAmJiB0eXBlb2YgeC5sZW5ndGggPT09ICJudW1iZXIiICYmIHR5cGVvZiB4ICE9PSAiZnVuY3Rpb24iOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1Byb21pc2UuanMKdmFyIHJlcXVpcmVfaXNQcm9taXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1Byb21pc2UodmFsdWUpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZS50aGVuKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0ludGVyb3BPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaW5wdXRbb2JzZXJ2YWJsZV8xLm9ic2VydmFibGVdKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSW50ZXJvcE9ic2VydmFibGUgPSBpc0ludGVyb3BPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FzeW5jSXRlcmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzQXN5bmNJdGVyYWJsZSA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZShvYmopIHsKICAgICAgcmV0dXJuIFN5bWJvbC5hc3luY0l0ZXJhdG9yICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9ialtTeW1ib2wuYXN5bmNJdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNBc3luY0l0ZXJhYmxlID0gaXNBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dVbm9ic2VydmFibGVFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpIHsKICAgICAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiICsgKGlucHV0ICE9PSBudWxsICYmIHR5cGVvZiBpbnB1dCA9PT0gIm9iamVjdCIgPyAiYW4gaW52YWxpZCBvYmplY3QiIDogIiciICsgaW5wdXQgKyAiJyIpICsgIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IgPSBjcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL2l0ZXJhdG9yLmpzCnZhciByZXF1aXJlX2l0ZXJhdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3N5bWJvbC9pdGVyYXRvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXRlcmF0b3IgPSBleHBvcnRzMi5nZXRTeW1ib2xJdGVyYXRvciA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGdldFN5bWJvbEl0ZXJhdG9yKCkgewogICAgICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gImZ1bmN0aW9uIiB8fCAhU3ltYm9sLml0ZXJhdG9yKSB7CiAgICAgICAgcmV0dXJuICJAQGl0ZXJhdG9yIjsKICAgICAgfQogICAgICByZXR1cm4gU3ltYm9sLml0ZXJhdG9yOwogICAgfQogICAgZXhwb3J0czIuZ2V0U3ltYm9sSXRlcmF0b3IgPSBnZXRTeW1ib2xJdGVyYXRvcjsKICAgIGV4cG9ydHMyLml0ZXJhdG9yID0gZ2V0U3ltYm9sSXRlcmF0b3IoKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX2lzSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc0l0ZXJhYmxlKGlucHV0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpbnB1dCA9PT0gbnVsbCB8fCBpbnB1dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNJdGVyYWJsZSA9IGlzSXRlcmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1JlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICB2YXIgX19hd2FpdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXQgfHwgZnVuY3Rpb24odikgewogICAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIF9fYXdhaXQgPyAodGhpcy52ID0gdiwgdGhpcykgOiBuZXcgX19hd2FpdCh2KTsKICAgIH07CiAgICB2YXIgX19hc3luY0dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXN5bmNHZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgZ2VuZXJhdG9yKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdOwogICAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpZiAoZ1tuXSkgaVtuXSA9IGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgICAgIHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHN0ZXAoZ1tuXSh2KSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgc2V0dGxlKHFbMF1bM10sIGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKHIpIHsKICAgICAgICByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7CiAgICAgICAgcmVzdW1lKCJuZXh0IiwgdmFsdWUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlamVjdCh2YWx1ZSkgewogICAgICAgIHJlc3VtZSgidGhyb3ciLCB2YWx1ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsKICAgICAgICBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOwogICAgICB9CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1JlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBfX2FzeW5jR2VuZXJhdG9yKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcl8xKCkgewogICAgICAgIHZhciByZWFkZXIsIF9hLCB2YWx1ZSwgZG9uZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2IpIHsKICAgICAgICAgIHN3aXRjaCAoX2IubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHJlYWRlciA9IHJlYWRhYmxlU3RyZWFtLmdldFJlYWRlcigpOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbMSwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMjsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmIChmYWxzZSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQocmVhZGVyLnJlYWQoKSldOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX2EgPSBfYi5zZW50KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICAgIGlmICghZG9uZSkgcmV0dXJuIFszLCA1XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodm9pZCAwKV07CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICByZXR1cm4gWzIsIF9iLnNlbnQoKV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodmFsdWUpXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIHJldHVybiBbNCwgX2Iuc2VudCgpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDJdOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvciA9IHJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3I7CiAgICBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtTGlrZShvYmopIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9iai5nZXRSZWFkZXIpOwogICAgfQogICAgZXhwb3J0czIuaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBpc1JlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbm5lckZyb20uanMKdmFyIHJlcXVpcmVfaW5uZXJGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW5uZXJGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fYXdhaXRlciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXRlciB8fCBmdW5jdGlvbih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHsKICAgICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsKICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbihyZXNvbHZlKSB7CiAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBzdGVwKGdlbmVyYXRvclsidGhyb3ciXSh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7CiAgICAgICAgICByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsKICAgICAgICB9CiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpOwogICAgICB9KTsKICAgIH07CiAgICB2YXIgX19nZW5lcmF0b3IgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2dlbmVyYXRvciB8fCBmdW5jdGlvbih0aGlzQXJnLCBib2R5KSB7CiAgICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRbMF0gJiAxKSB0aHJvdyB0WzFdOwogICAgICAgIHJldHVybiB0WzFdOwogICAgICB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnOwogICAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgInRocm93IjogdmVyYigxKSwgInJldHVybiI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0pLCBnOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24odikgewogICAgICAgICAgcmV0dXJuIHN0ZXAoW24sIHZdKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHsKICAgICAgICBpZiAoZikgdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpOwogICAgICAgIHdoaWxlIChfKSB0cnkgewogICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVsicmV0dXJuIl0gOiBvcFswXSA/IHlbInRocm93Il0gfHwgKCh0ID0geVsicmV0dXJuIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0OwogICAgICAgICAgaWYgKHkgPSAwLCB0KSBvcCA9IFtvcFswXSAmIDIsIHQudmFsdWVdOwogICAgICAgICAgc3dpdGNoIChvcFswXSkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9OwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHkgPSBvcFsxXTsKICAgICAgICAgICAgICBvcCA9IFswXTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIG9wID0gXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7CiAgICAgICAgICAgICAgICBfID0gMDsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDMgJiYgKCF0IHx8IG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gb3BbMV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsxXTsKICAgICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMl07CiAgICAgICAgICAgICAgICBfLm9wcy5wdXNoKG9wKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodFsyXSkgXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgb3AgPSBbNiwgZV07CiAgICAgICAgICB5ID0gMDsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgZiA9IHQgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsKICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9OwogICAgICB9CiAgICB9OwogICAgdmFyIF9fYXN5bmNWYWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2FzeW5jVmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICAgIHZhciBtID0gb1tTeW1ib2wuYXN5bmNJdGVyYXRvcl0sIGk7CiAgICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogKG8gPSB0eXBlb2YgX192YWx1ZXMgPT09ICJmdW5jdGlvbiIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpLCBpID0ge30sIHZlcmIoIm5leHQiKSwgdmVyYigidGhyb3ciKSwgdmVyYigicmV0dXJuIiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0sIGkpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpW25dID0gb1tuXSAmJiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgIHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCBkLCB2KSB7CiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZnVuY3Rpb24odjIpIHsKICAgICAgICAgIHJlc29sdmUoeyB2YWx1ZTogdjIsIGRvbmU6IGQgfSk7CiAgICAgICAgfSwgcmVqZWN0KTsKICAgICAgfQogICAgfTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbVJlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZXhwb3J0czIuZnJvbUl0ZXJhYmxlID0gZXhwb3J0czIuZnJvbVByb21pc2UgPSBleHBvcnRzMi5mcm9tQXJyYXlMaWtlID0gZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZXhwb3J0czIuaW5uZXJGcm9tID0gdm9pZCAwOwogICAgdmFyIGlzQXJyYXlMaWtlXzEgPSByZXF1aXJlX2lzQXJyYXlMaWtlKCk7CiAgICB2YXIgaXNQcm9taXNlXzEgPSByZXF1aXJlX2lzUHJvbWlzZSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc0l0ZXJhYmxlXzEgPSByZXF1aXJlX2lzSXRlcmFibGUoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEgPSByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBpbm5lckZyb20oaW5wdXQpIHsKICAgICAgaWYgKGlucHV0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpIHsKICAgICAgICByZXR1cm4gaW5wdXQ7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ICE9IG51bGwpIHsKICAgICAgICBpZiAoaXNJbnRlcm9wT2JzZXJ2YWJsZV8xLmlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUludGVyb3BPYnNlcnZhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUFycmF5TGlrZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1Byb21pc2VfMS5pc1Byb21pc2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbVByb21pc2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNBc3luY0l0ZXJhYmxlXzEuaXNBc3luY0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21Bc3luY0l0ZXJhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSXRlcmFibGVfMS5pc0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21JdGVyYWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLmlzUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21SZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgfQogICAgICB0aHJvdyB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuaW5uZXJGcm9tID0gaW5uZXJGcm9tOwogICAgZnVuY3Rpb24gZnJvbUludGVyb3BPYnNlcnZhYmxlKG9iaikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb2JzID0gb2JqW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSgpOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnMuc3Vic2NyaWJlKSkgewogICAgICAgICAgcmV0dXJuIG9icy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZnJvbUludGVyb3BPYnNlcnZhYmxlOwogICAgZnVuY3Rpb24gZnJvbUFycmF5TGlrZShhcnJheSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aCAmJiAhc3Vic2NyaWJlci5jbG9zZWQ7IGkrKykgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFycmF5W2ldKTsKICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21BcnJheUxpa2UgPSBmcm9tQXJyYXlMaWtlOwogICAgZnVuY3Rpb24gZnJvbVByb21pc2UocHJvbWlzZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmICghc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9KS50aGVuKG51bGwsIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Qcm9taXNlID0gZnJvbVByb21pc2U7CiAgICBmdW5jdGlvbiBmcm9tSXRlcmFibGUoaXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGZvciAodmFyIGl0ZXJhYmxlXzEgPSBfX3ZhbHVlcyhpdGVyYWJsZSksIGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpOyAhaXRlcmFibGVfMV8xLmRvbmU7IGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpKSB7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGl0ZXJhYmxlXzFfMS52YWx1ZTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmIChpdGVyYWJsZV8xXzEgJiYgIWl0ZXJhYmxlXzFfMS5kb25lICYmIChfYSA9IGl0ZXJhYmxlXzEucmV0dXJuKSkgX2EuY2FsbChpdGVyYWJsZV8xKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21JdGVyYWJsZSA9IGZyb21JdGVyYWJsZTsKICAgIGZ1bmN0aW9uIGZyb21Bc3luY0l0ZXJhYmxlKGFzeW5jSXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikuY2F0Y2goZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZnJvbUFzeW5jSXRlcmFibGU7CiAgICBmdW5jdGlvbiBmcm9tUmVhZGFibGVTdHJlYW1MaWtlKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBmcm9tQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IocmVhZGFibGVTdHJlYW0pKTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21SZWFkYWJsZVN0cmVhbUxpa2UgPSBmcm9tUmVhZGFibGVTdHJlYW1MaWtlOwogICAgZnVuY3Rpb24gcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikgewogICAgICB2YXIgYXN5bmNJdGVyYWJsZV8xLCBhc3luY0l0ZXJhYmxlXzFfMTsKICAgICAgdmFyIGVfMiwgX2E7CiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciB2YWx1ZSwgZV8yXzE7CiAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uKF9iKSB7CiAgICAgICAgICBzd2l0Y2ggKF9iLmxhYmVsKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfYi50cnlzLnB1c2goWzAsIDUsIDYsIDExXSk7CiAgICAgICAgICAgICAgYXN5bmNJdGVyYWJsZV8xID0gX19hc3luY1ZhbHVlcyhhc3luY0l0ZXJhYmxlKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDE7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gWzQsIGFzeW5jSXRlcmFibGVfMS5uZXh0KCldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgPSBfYi5zZW50KCksICFhc3luY0l0ZXJhYmxlXzFfMS5kb25lKSkgcmV0dXJuIFszLCA0XTsKICAgICAgICAgICAgICB2YWx1ZSA9IGFzeW5jSXRlcmFibGVfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gWzJdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfYi5sYWJlbCA9IDM7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBlXzJfMSA9IF9iLnNlbnQoKTsKICAgICAgICAgICAgICBlXzIgPSB7IGVycm9yOiBlXzJfMSB9OwogICAgICAgICAgICAgIHJldHVybiBbMywgMTFdOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX2IudHJ5cy5wdXNoKFs2LCAsIDksIDEwXSk7CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgJiYgIWFzeW5jSXRlcmFibGVfMV8xLmRvbmUgJiYgKF9hID0gYXN5bmNJdGVyYWJsZV8xLnJldHVybikpKSByZXR1cm4gWzMsIDhdOwogICAgICAgICAgICAgIHJldHVybiBbNCwgX2EuY2FsbChhc3luY0l0ZXJhYmxlXzEpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDg7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDEwXTsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbN107CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcwp2YXIgcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9leGVjdXRlU2NoZWR1bGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4ZWN1dGVTY2hlZHVsZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGV4ZWN1dGVTY2hlZHVsZShwYXJlbnRTdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgd29yaywgZGVsYXksIHJlcGVhdDIpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHJlcGVhdDIgPT09IHZvaWQgMCkgewogICAgICAgIHJlcGVhdDIgPSBmYWxzZTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVTdWJzY3JpcHRpb24gPSBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgd29yaygpOwogICAgICAgIGlmIChyZXBlYXQyKSB7CiAgICAgICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHRoaXMuc2NoZWR1bGUobnVsbCwgZGVsYXkpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgIH0KICAgICAgfSwgZGVsYXkpOwogICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHNjaGVkdWxlU3Vic2NyaXB0aW9uKTsKICAgICAgaWYgKCFyZXBlYXQyKSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlU3Vic2NyaXB0aW9uOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5leGVjdXRlU2NoZWR1bGUgPSBleGVjdXRlU2NoZWR1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMKdmFyIHJlcXVpcmVfb2JzZXJ2ZU9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVPbiA9IHZvaWQgMDsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gb2JzZXJ2ZU9uKHNjaGVkdWxlciwgZGVsYXkpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlT24gPSBvYnNlcnZlT247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdWJzY3JpYmVPbi5qcwp2YXIgcmVxdWlyZV9zdWJzY3JpYmVPbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3Vic2NyaWJlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN1YnNjcmliZU9uID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3Vic2NyaWJlT24oc2NoZWR1bGVyLCBkZWxheSkgewogICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgIGRlbGF5ID0gMDsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSwgZGVsYXkpKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zdWJzY3JpYmVPbiA9IHN1YnNjcmliZU9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZU9ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIG9ic2VydmVPbl8xID0gcmVxdWlyZV9vYnNlcnZlT24oKTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVPYnNlcnZhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCkucGlwZShzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uKHNjaGVkdWxlciksIG9ic2VydmVPbl8xLm9ic2VydmVPbihzY2hlZHVsZXIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlT2JzZXJ2YWJsZSA9IHNjaGVkdWxlT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZVByb21pc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVQcm9taXNlID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZVByb21pc2UgPSBzY2hlZHVsZVByb21pc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFycmF5LmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXJyYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGkgPSAwOwogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaSA9PT0gaW5wdXQubGVuZ3RoKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChpbnB1dFtpKytdKTsKICAgICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSBzY2hlZHVsZUFycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUl0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUl0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpdGVyYXRvcjsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGl0ZXJhdG9yID0gaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgX2E7CiAgICAgICAgICAgIHZhciB2YWx1ZTsKICAgICAgICAgICAgdmFyIGRvbmU7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgX2EgPSBpdGVyYXRvci5uZXh0KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChkb25lKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpdGVyYXRvciA9PT0gbnVsbCB8fCBpdGVyYXRvciA9PT0gdm9pZCAwID8gdm9pZCAwIDogaXRlcmF0b3IucmV0dXJuKSAmJiBpdGVyYXRvci5yZXR1cm4oKTsKICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlSXRlcmFibGUgPSBzY2hlZHVsZUl0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUFzeW5jSXRlcmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVBc3luY0l0ZXJhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKCFpbnB1dCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSXRlcmFibGUgY2Fubm90IGJlIG51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBpdGVyYXRvciA9IGlucHV0W1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOwogICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGl0ZXJhdG9yLm5leHQoKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewogICAgICAgICAgICAgIGlmIChyZXN1bHQuZG9uZSkgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQocmVzdWx0LnZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSwgMCwgdHJ1ZSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gc2NoZWR1bGVBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZSA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVBc3luY0l0ZXJhYmxlKCk7CiAgICB2YXIgaXNSZWFkYWJsZVN0cmVhbUxpa2VfMSA9IHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlQXN5bmNJdGVyYWJsZV8xLnNjaGVkdWxlQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IoaW5wdXQpLCBzY2hlZHVsZXIpOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBzY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVkID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUoKTsKICAgIHZhciBzY2hlZHVsZVByb21pc2VfMSA9IHJlcXVpcmVfc2NoZWR1bGVQcm9taXNlKCk7CiAgICB2YXIgc2NoZWR1bGVBcnJheV8xID0gcmVxdWlyZV9zY2hlZHVsZUFycmF5KCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICB2YXIgc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEgPSByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzUHJvbWlzZV8xID0gcmVxdWlyZV9pc1Byb21pc2UoKTsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNJdGVyYWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlXzEgPSByZXF1aXJlX3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICBpZiAoaW5wdXQgIT0gbnVsbCkgewogICAgICAgIGlmIChpc0ludGVyb3BPYnNlcnZhYmxlXzEuaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZU9ic2VydmFibGVfMS5zY2hlZHVsZU9ic2VydmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FycmF5TGlrZV8xLmlzQXJyYXlMaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlQXJyYXlfMS5zY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNQcm9taXNlXzEuaXNQcm9taXNlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlUHJvbWlzZV8xLnNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZV8xLmlzQXN5bmNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMS5zY2hlZHVsZUFzeW5jSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0l0ZXJhYmxlXzEuaXNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUl0ZXJhYmxlXzEuc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUmVhZGFibGVTdHJlYW1MaWtlXzEuaXNSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2VfMS5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdGhyb3cgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yKGlucHV0KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlZCA9IHNjaGVkdWxlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzCnZhciByZXF1aXJlX2Zyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlZF8xID0gcmVxdWlyZV9zY2hlZHVsZWQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBmcm9tKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlciA/IHNjaGVkdWxlZF8xLnNjaGVkdWxlZChpbnB1dCwgc2NoZWR1bGVyKSA6IGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tID0gZnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vZi5qcwp2YXIgcmVxdWlyZV9vZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vZiA9IHZvaWQgMDsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG9mKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKGFyZ3MsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5vZiA9IG9mOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiB0aHJvd0Vycm9yMihlcnJvck9yRXJyb3JGYWN0b3J5LCBzY2hlZHVsZXIpIHsKICAgICAgdmFyIGVycm9yRmFjdG9yeSA9IGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGVycm9yT3JFcnJvckZhY3RvcnkpID8gZXJyb3JPckVycm9yRmFjdG9yeSA6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlcnJvck9yRXJyb3JGYWN0b3J5OwogICAgICB9OwogICAgICB2YXIgaW5pdCA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnJvckZhY3RvcnkoKSk7CiAgICAgIH07CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoc2NoZWR1bGVyID8gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoaW5pdCwgMCwgc3Vic2NyaWJlcik7CiAgICAgIH0gOiBpbml0KTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB0aHJvd0Vycm9yMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVOb3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBOb3RpZmljYXRpb25LaW5kOwogICAgKGZ1bmN0aW9uKE5vdGlmaWNhdGlvbktpbmQyKSB7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJORVhUIl0gPSAiTiI7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJFUlJPUiJdID0gIkUiOwogICAgICBOb3RpZmljYXRpb25LaW5kMlsiQ09NUExFVEUiXSA9ICJDIjsKICAgIH0pKE5vdGlmaWNhdGlvbktpbmQgPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kIHx8IChleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0ge30pKTsKICAgIHZhciBOb3RpZmljYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gTm90aWZpY2F0aW9uMihraW5kLCB2YWx1ZSwgZXJyb3IpIHsKICAgICAgICB0aGlzLmtpbmQgPSBraW5kOwogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgICAgdGhpcy5oYXNWYWx1ZSA9IGtpbmQgPT09ICJOIjsKICAgICAgfQogICAgICBOb3RpZmljYXRpb24yLnByb3RvdHlwZS5vYnNlcnZlID0gZnVuY3Rpb24ob2JzZXJ2ZXIpIHsKICAgICAgICByZXR1cm4gb2JzZXJ2ZU5vdGlmaWNhdGlvbih0aGlzLCBvYnNlcnZlcik7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmRvID0gZnVuY3Rpb24obmV4dEhhbmRsZXIsIGVycm9ySGFuZGxlciwgY29tcGxldGVIYW5kbGVyKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgcmV0dXJuIGtpbmQgPT09ICJOIiA/IG5leHRIYW5kbGVyID09PSBudWxsIHx8IG5leHRIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBuZXh0SGFuZGxlcih2YWx1ZSkgOiBraW5kID09PSAiRSIgPyBlcnJvckhhbmRsZXIgPT09IG51bGwgfHwgZXJyb3JIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlcnJvckhhbmRsZXIoZXJyb3IpIDogY29tcGxldGVIYW5kbGVyID09PSBudWxsIHx8IGNvbXBsZXRlSGFuZGxlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY29tcGxldGVIYW5kbGVyKCk7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmFjY2VwdCA9IGZ1bmN0aW9uKG5leHRPck9ic2VydmVyLCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKChfYSA9IG5leHRPck9ic2VydmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubmV4dCkgPyB0aGlzLm9ic2VydmUobmV4dE9yT2JzZXJ2ZXIpIDogdGhpcy5kbyhuZXh0T3JPYnNlcnZlciwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUudG9PYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgdmFyIHJlc3VsdCA9IGtpbmQgPT09ICJOIiA/IG9mXzEub2YodmFsdWUpIDoga2luZCA9PT0gIkUiID8gdGhyb3dFcnJvcl8xLnRocm93RXJyb3IoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZXJyb3I7CiAgICAgICAgfSkgOiBraW5kID09PSAiQyIgPyBlbXB0eV8xLkVNUFRZIDogMDsKICAgICAgICBpZiAoIXJlc3VsdCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5leHBlY3RlZCBub3RpZmljYXRpb24ga2luZCAiICsga2luZCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlTmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJOIiwgdmFsdWUpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJFIiwgdm9pZCAwLCBlcnIpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb247CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb24gPSBuZXcgTm90aWZpY2F0aW9uMigiQyIpOwogICAgICByZXR1cm4gTm90aWZpY2F0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IE5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG9ic2VydmVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBvYnNlcnZlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIF9kID0gbm90aWZpY2F0aW9uLCBraW5kID0gX2Qua2luZCwgdmFsdWUgPSBfZC52YWx1ZSwgZXJyb3IgPSBfZC5lcnJvcjsKICAgICAgaWYgKHR5cGVvZiBraW5kICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbm90aWZpY2F0aW9uLCBtaXNzaW5nICJraW5kIicpOwogICAgICB9CiAgICAgIGtpbmQgPT09ICJOIiA/IChfYSA9IG9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKG9ic2VydmVyLCB2YWx1ZSkgOiBraW5kID09PSAiRSIgPyAoX2IgPSBvYnNlcnZlci5lcnJvcikgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwob2JzZXJ2ZXIsIGVycm9yKSA6IChfYyA9IG9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuY2FsbChvYnNlcnZlcik7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlTm90aWZpY2F0aW9uID0gb2JzZXJ2ZU5vdGlmaWNhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfaXNPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc09ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc09ic2VydmFibGUob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiAob2JqIGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUgfHwgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqLmxpZnQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iai5zdWJzY3JpYmUpKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzT2JzZXJ2YWJsZSA9IGlzT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzCnZhciByZXF1aXJlX0VtcHR5RXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuRW1wdHlFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gRW1wdHlFcnJvckltcGwoKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubmFtZSA9ICJFbXB0eUVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAibm8gZWxlbWVudHMgaW4gc2VxdWVuY2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMKdmFyIHJlcXVpcmVfbGFzdFZhbHVlRnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9sYXN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgZnVuY3Rpb24gbGFzdFZhbHVlRnJvbShzb3VyY2UsIGNvbmZpZykgewogICAgICB2YXIgaGFzQ29uZmlnID0gdHlwZW9mIGNvbmZpZyA9PT0gIm9iamVjdCI7CiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICB2YXIgX2hhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIF92YWx1ZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHsKICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIF92YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICBfaGFzVmFsdWUgPSB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChfaGFzVmFsdWUpIHsKICAgICAgICAgICAgICByZXNvbHZlKF92YWx1ZSk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoaGFzQ29uZmlnKSB7CiAgICAgICAgICAgICAgcmVzb2x2ZShjb25maWcuZGVmYXVsdFZhbHVlKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZWplY3QobmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubGFzdFZhbHVlRnJvbSA9IGxhc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzCnZhciByZXF1aXJlX2ZpcnN0VmFsdWVGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGZpcnN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICBuZXh0OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpcnN0VmFsdWVGcm9tID0gZmlyc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IuanMKdmFyIHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JJbXBsKCkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJhcmd1bWVudCBvdXQgb2YgcmFuZ2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcwp2YXIgcmVxdWlyZV9Ob3RGb3VuZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTm90Rm91bmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE5vdEZvdW5kRXJyb3JJbXBsKG1lc3NhZ2UpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk5vdEZvdW5kRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzCnZhciByZXF1aXJlX1NlcXVlbmNlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuU2VxdWVuY2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gU2VxdWVuY2VFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiU2VxdWVuY2VFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRGF0ZS5qcwp2YXIgcmVxdWlyZV9pc0RhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0RhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzVmFsaWREYXRlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gaXNWYWxpZERhdGUodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4odmFsdWUpOwogICAgfQogICAgZXhwb3J0czIuaXNWYWxpZERhdGUgPSBpc1ZhbGlkRGF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXQuanMKdmFyIHJlcXVpcmVfdGltZW91dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVGltZW91dEVycm9ySW1wbChpbmZvKSB7CiAgICAgICAgaWYgKGluZm8gPT09IHZvaWQgMCkgewogICAgICAgICAgaW5mbyA9IG51bGw7CiAgICAgICAgfQogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAiVGltZW91dCBoYXMgb2NjdXJyZWQiOwogICAgICAgIHRoaXMubmFtZSA9ICJUaW1lb3V0RXJyb3IiOwogICAgICAgIHRoaXMuaW5mbyA9IGluZm87CiAgICAgIH07CiAgICB9KTsKICAgIGZ1bmN0aW9uIHRpbWVvdXQoY29uZmlnLCBzY2hlZHVsZXJBcmcpIHsKICAgICAgdmFyIF9hID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoY29uZmlnKSA/IHsgZmlyc3Q6IGNvbmZpZyB9IDogdHlwZW9mIGNvbmZpZyA9PT0gIm51bWJlciIgPyB7IGVhY2g6IGNvbmZpZyB9IDogY29uZmlnLCBmaXJzdCA9IF9hLmZpcnN0LCBlYWNoID0gX2EuZWFjaCwgX2IgPSBfYS53aXRoLCBfd2l0aCA9IF9iID09PSB2b2lkIDAgPyB0aW1lb3V0RXJyb3JGYWN0b3J5IDogX2IsIF9jID0gX2Euc2NoZWR1bGVyLCBzY2hlZHVsZXIgPSBfYyA9PT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnICE9PSBudWxsICYmIHNjaGVkdWxlckFyZyAhPT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlciA6IF9jLCBfZCA9IF9hLm1ldGEsIG1ldGEgPSBfZCA9PT0gdm9pZCAwID8gbnVsbCA6IF9kOwogICAgICBpZiAoZmlyc3QgPT0gbnVsbCAmJiBlYWNoID09IG51bGwpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJObyB0aW1lb3V0IHByb3ZpZGVkLiIpOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb3JpZ2luYWxTb3VyY2VTdWJzY3JpcHRpb247CiAgICAgICAgdmFyIHRpbWVyU3Vic2NyaXB0aW9uOwogICAgICAgIHZhciBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICB2YXIgc3RhcnRUaW1lciA9IGZ1bmN0aW9uKGRlbGF5KSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9IGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIG9yaWdpbmFsU291cmNlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKF93aXRoKHsKICAgICAgICAgICAgICAgIG1ldGEsCiAgICAgICAgICAgICAgICBsYXN0VmFsdWUsCiAgICAgICAgICAgICAgICBzZWVuCiAgICAgICAgICAgICAgfSkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBkZWxheSk7CiAgICAgICAgfTsKICAgICAgICBvcmlnaW5hbFNvdXJjZVN1YnNjcmlwdGlvbiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCB0aW1lclN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogdGltZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNlZW4rKzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChsYXN0VmFsdWUgPSB2YWx1ZSk7CiAgICAgICAgICBlYWNoID4gMCAmJiBzdGFydFRpbWVyKGVhY2gpOwogICAgICAgIH0sIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghKHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi5jbG9zZWQpKSB7CiAgICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgICAgIXNlZW4gJiYgc3RhcnRUaW1lcihmaXJzdCAhPSBudWxsID8gdHlwZW9mIGZpcnN0ID09PSAibnVtYmVyIiA/IGZpcnN0IDogK2ZpcnN0IC0gc2NoZWR1bGVyLm5vdygpIDogZWFjaCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dCA9IHRpbWVvdXQ7CiAgICBmdW5jdGlvbiB0aW1lb3V0RXJyb3JGYWN0b3J5KGluZm8pIHsKICAgICAgdGhyb3cgbmV3IGV4cG9ydHMyLlRpbWVvdXRFcnJvcihpbmZvKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcwp2YXIgcmVxdWlyZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hcDIocHJvamVjdCwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QuY2FsbCh0aGlzQXJnLCB2YWx1ZSwgaW5kZXgrKykpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXAgPSBtYXAyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMKdmFyIHJlcXVpcmVfbWFwT25lT3JNYW55QXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcE9uZU9yTWFueUFyZ3MgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5OwogICAgZnVuY3Rpb24gY2FsbE9yQXBwbHkoZm4sIGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzQXJyYXkoYXJncykgPyBmbi5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpIDogZm4oYXJncyk7CiAgICB9CiAgICBmdW5jdGlvbiBtYXBPbmVPck1hbnlBcmdzKGZuKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oYXJncykgewogICAgICAgIHJldHVybiBjYWxsT3JBcHBseShmbiwgYXJncyk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwT25lT3JNYW55QXJncyA9IG1hcE9uZU9yTWFueUFyZ3M7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX2JpbmRDYWxsYmFja0ludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlzU2NoZWR1bGVyXzEgPSByZXF1aXJlX2lzU2NoZWR1bGVyKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHNjaGVkdWxlcikuYXBwbHkodGhpcywgYXJncykucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMpLmFwcGx5KHRoaXMsIGFyZ3MpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHZhciB1bmluaXRpYWxpemVkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICAgIHZhciBzdWJzID0gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAodW5pbml0aWFsaXplZCkgewogICAgICAgICAgICB1bmluaXRpYWxpemVkID0gZmFsc2U7CiAgICAgICAgICAgIHZhciBpc0FzeW5jXzEgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIGlzQ29tcGxldGVfMSA9IGZhbHNlOwogICAgICAgICAgICBjYWxsYmFja0Z1bmMuYXBwbHkoX3RoaXMsIF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSwgWwogICAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9pMiA9IDA7IF9pMiA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pMisrKSB7CiAgICAgICAgICAgICAgICAgIHJlc3VsdHNbX2kyXSA9IGFyZ3VtZW50c1tfaTJdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzTm9kZVN0eWxlKSB7CiAgICAgICAgICAgICAgICAgIHZhciBlcnIgPSByZXN1bHRzLnNoaWZ0KCk7CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dCgxIDwgcmVzdWx0cy5sZW5ndGggPyByZXN1bHRzIDogcmVzdWx0c1swXSk7CiAgICAgICAgICAgICAgICBpc0NvbXBsZXRlXzEgPSB0cnVlOwogICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNfMSkgewogICAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlXzEpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaXNBc3luY18xID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzOwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gYmluZENhbGxiYWNrSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kQ2FsbGJhY2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9iaW5kQ2FsbGJhY2suanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kQ2FsbGJhY2soY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMS5iaW5kQ2FsbGJhY2tJbnRlcm5hbHMoZmFsc2UsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kQ2FsbGJhY2sgPSBiaW5kQ2FsbGJhY2s7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kTm9kZUNhbGxiYWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kTm9kZUNhbGxiYWNrKGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzXzEuYmluZENhbGxiYWNrSW50ZXJuYWxzKHRydWUsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gYmluZE5vZGVDYWxsYmFjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzQXJnQXJyYXlPck9iamVjdC5qcwp2YXIgcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NBcmdBcnJheU9yT2JqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzQXJnQXJyYXlPck9iamVjdCA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIHZhciBnZXRQcm90b3R5cGVPZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKICAgIHZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7CiAgICB2YXIgZ2V0S2V5cyA9IE9iamVjdC5rZXlzOwogICAgZnVuY3Rpb24gYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncykgewogICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHsKICAgICAgICB2YXIgZmlyc3RfMSA9IGFyZ3NbMF07CiAgICAgICAgaWYgKGlzQXJyYXkoZmlyc3RfMSkpIHsKICAgICAgICAgIHJldHVybiB7IGFyZ3M6IGZpcnN0XzEsIGtleXM6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUE9KTyhmaXJzdF8xKSkgewogICAgICAgICAgdmFyIGtleXMgPSBnZXRLZXlzKGZpcnN0XzEpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgYXJnczoga2V5cy5tYXAoZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpcnN0XzFba2V5XTsKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIGtleXMKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGFyZ3MsIGtleXM6IG51bGwgfTsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NBcmdBcnJheU9yT2JqZWN0ID0gYXJnc0FyZ0FycmF5T3JPYmplY3Q7CiAgICBmdW5jdGlvbiBpc1BPSk8ob2JqKSB7CiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIG9iaiA9PT0gIm9iamVjdCIgJiYgZ2V0UHJvdG90eXBlT2Yob2JqKSA9PT0gb2JqZWN0UHJvdG87CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvY3JlYXRlT2JqZWN0LmpzCnZhciByZXF1aXJlX2NyZWF0ZU9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZU9iamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0KGtleXMsIHZhbHVlcykgewogICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoZnVuY3Rpb24ocmVzdWx0LCBrZXksIGkpIHsKICAgICAgICByZXR1cm4gcmVzdWx0W2tleV0gPSB2YWx1ZXNbaV0sIHJlc3VsdDsKICAgICAgfSwge30pOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gY3JlYXRlT2JqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RJbml0ID0gZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIHJlc3VsdFNlbGVjdG9yID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGFyZ3MpOwogICAgICB2YXIgX2EgPSBhcmdzQXJnQXJyYXlPck9iamVjdF8xLmFyZ3NBcmdBcnJheU9yT2JqZWN0KGFyZ3MpLCBvYnNlcnZhYmxlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICBpZiAob2JzZXJ2YWJsZXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKFtdLCBzY2hlZHVsZXIpOwogICAgICB9CiAgICAgIHZhciByZXN1bHQgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwga2V5cyA/IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIHJldHVybiBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKTsKICAgICAgfSA6IGlkZW50aXR5XzEuaWRlbnRpdHkpKTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBjb21iaW5lTGF0ZXN0OwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwgdmFsdWVUcmFuc2Zvcm0pIHsKICAgICAgaWYgKHZhbHVlVHJhbnNmb3JtID09PSB2b2lkIDApIHsKICAgICAgICB2YWx1ZVRyYW5zZm9ybSA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBtYXliZVNjaGVkdWxlKHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgbGVuZ3RoID0gb2JzZXJ2YWJsZXMubGVuZ3RoOwogICAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgICAgdmFyIGFjdGl2ZSA9IGxlbmd0aDsKICAgICAgICAgIHZhciByZW1haW5pbmdGaXJzdFZhbHVlcyA9IGxlbmd0aDsKICAgICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgICAgbWF5YmVTY2hlZHVsZShzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHZhciBzb3VyY2UgPSBmcm9tXzEuZnJvbShvYnNlcnZhYmxlc1tpMl0sIHNjaGVkdWxlcik7CiAgICAgICAgICAgICAgdmFyIGhhc0ZpcnN0VmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFsdWVzW2kyXSA9IHZhbHVlOwogICAgICAgICAgICAgICAgaWYgKCFoYXNGaXJzdFZhbHVlKSB7CiAgICAgICAgICAgICAgICAgIGhhc0ZpcnN0VmFsdWUgPSB0cnVlOwogICAgICAgICAgICAgICAgICByZW1haW5pbmdGaXJzdFZhbHVlcy0tOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdGaXJzdFZhbHVlcykgewogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWVUcmFuc2Zvcm0odmFsdWVzLnNsaWNlKCkpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGlmICghLS1hY3RpdmUpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfSwgc3Vic2NyaWJlcik7CiAgICAgICAgICB9OwogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgICAgfQogICAgICAgIH0sIHN1YnNjcmliZXIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEluaXQgPSBjb21iaW5lTGF0ZXN0SW5pdDsKICAgIGZ1bmN0aW9uIG1heWJlU2NoZWR1bGUoc2NoZWR1bGVyLCBleGVjdXRlLCBzdWJzY3JpcHRpb24pIHsKICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgZXhlY3V0ZSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZXhlY3V0ZSgpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUludGVybmFscy5qcwp2YXIgcmVxdWlyZV9tZXJnZUludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCBvbkJlZm9yZU5leHQsIGV4cGFuZCwgaW5uZXJTdWJTY2hlZHVsZXIsIGFkZGl0aW9uYWxGaW5hbGl6ZXIpIHsKICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICB2YXIgYWN0aXZlID0gMDsKICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoaXNDb21wbGV0ZSAmJiAhYnVmZmVyLmxlbmd0aCAmJiAhYWN0aXZlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICB2YXIgb3V0ZXJOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gYWN0aXZlIDwgY29uY3VycmVudCA/IGRvSW5uZXJTdWIodmFsdWUpIDogYnVmZmVyLnB1c2godmFsdWUpOwogICAgICB9OwogICAgICB2YXIgZG9Jbm5lclN1YiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgZXhwYW5kICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgYWN0aXZlKys7CiAgICAgICAgdmFyIGlubmVyQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdCh2YWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oaW5uZXJWYWx1ZSkgewogICAgICAgICAgb25CZWZvcmVOZXh0ID09PSBudWxsIHx8IG9uQmVmb3JlTmV4dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CZWZvcmVOZXh0KGlubmVyVmFsdWUpOwogICAgICAgICAgaWYgKGV4cGFuZCkgewogICAgICAgICAgICBvdXRlck5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpbm5lckNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGlubmVyQ29tcGxldGUpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBhY3RpdmUtLTsKICAgICAgICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGJ1ZmZlcmVkVmFsdWUgPSBidWZmZXIuc2hpZnQoKTsKICAgICAgICAgICAgICAgIGlmIChpbm5lclN1YlNjaGVkdWxlcikgewogICAgICAgICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgaW5uZXJTdWJTY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkb0lubmVyU3ViKGJ1ZmZlcmVkVmFsdWUpOwogICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGRvSW5uZXJTdWIoYnVmZmVyZWRWYWx1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB3aGlsZSAoYnVmZmVyLmxlbmd0aCAmJiBhY3RpdmUgPCBjb25jdXJyZW50KSB7CiAgICAgICAgICAgICAgICBfbG9vcF8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvdXRlck5leHQsIGZ1bmN0aW9uKCkgewogICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgfSkpOwogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgYWRkaXRpb25hbEZpbmFsaXplciA9PT0gbnVsbCB8fCBhZGRpdGlvbmFsRmluYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhZGRpdGlvbmFsRmluYWxpemVyKCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUludGVybmFscyA9IG1lcmdlSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VNYXAuanMKdmFyIHJlcXVpcmVfbWVyZ2VNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IoYSwgYiwgaSwgaWkpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpKTsKICAgICAgICB9LCBjb25jdXJyZW50KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gbWVyZ2VJbnRlcm5hbHNfMS5tZXJnZUludGVybmFscyhzb3VyY2UsIHN1YnNjcmliZXIsIHByb2plY3QsIGNvbmN1cnJlbnQpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwID0gbWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcwp2YXIgcmVxdWlyZV9tZXJnZUFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIG1lcmdlQWxsKGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChpZGVudGl0eV8xLmlkZW50aXR5LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gbWVyZ2VBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMKdmFyIHJlcXVpcmVfY29uY2F0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgZnVuY3Rpb24gY29uY2F0QWxsKCkgewogICAgICByZXR1cm4gbWVyZ2VBbGxfMS5tZXJnZUFsbCgxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IGNvbmNhdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsKCkoZnJvbV8xLmZyb20oYXJncywgYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RlZmVyLmpzCnZhciByZXF1aXJlX2RlZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZGVmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmVyID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlZmVyKG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvYnNlcnZhYmxlRmFjdG9yeSgpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmZXIgPSBkZWZlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25uZWN0YWJsZS5qcwp2YXIgcmVxdWlyZV9jb25uZWN0YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Nvbm5lY3RhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25uZWN0YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSwKICAgICAgcmVzZXRPbkRpc2Nvbm5lY3Q6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBjb25uZWN0YWJsZShzb3VyY2UsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yLCBfYSA9IGNvbmZpZy5yZXNldE9uRGlzY29ubmVjdCwgcmVzZXRPbkRpc2Nvbm5lY3QgPSBfYSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hOwogICAgICB2YXIgc3ViamVjdCA9IGNvbm5lY3RvcigpOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgICByZXN1bHQuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghY29ubmVjdGlvbiB8fCBjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7CiAgICAgICAgICB9KS5zdWJzY3JpYmUoc3ViamVjdCk7CiAgICAgICAgICBpZiAocmVzZXRPbkRpc2Nvbm5lY3QpIHsKICAgICAgICAgICAgY29ubmVjdGlvbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdGFibGUgPSBjb25uZWN0YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mb3JrSm9pbi5qcwp2YXIgcmVxdWlyZV9mb3JrSm9pbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2ZvcmtKb2luLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mb3JrSm9pbiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgZnVuY3Rpb24gZm9ya0pvaW4oKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciByZXN1bHRTZWxlY3RvciA9IGFyZ3NfMS5wb3BSZXN1bHRTZWxlY3RvcihhcmdzKTsKICAgICAgdmFyIF9hID0gYXJnc0FyZ0FycmF5T3JPYmplY3RfMS5hcmdzQXJnQXJyYXlPck9iamVjdChhcmdzKSwgc291cmNlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbGVuZ3RoID0gc291cmNlcy5sZW5ndGg7CiAgICAgICAgaWYgKCFsZW5ndGgpIHsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgIHZhciByZW1haW5pbmdDb21wbGV0aW9ucyA9IGxlbmd0aDsKICAgICAgICB2YXIgcmVtYWluaW5nRW1pc3Npb25zID0gbGVuZ3RoOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzW3NvdXJjZUluZGV4Ml0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgICAgICByZW1haW5pbmdFbWlzc2lvbnMtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZXNbc291cmNlSW5kZXgyXSA9IHZhbHVlOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdDb21wbGV0aW9ucy0tOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdDb21wbGV0aW9ucyB8fCAhaGFzVmFsdWUpIHsKICAgICAgICAgICAgICBpZiAoIXJlbWFpbmluZ0VtaXNzaW9ucykgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGtleXMgPyBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKSA6IHZhbHVlcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgc291cmNlSW5kZXggPSAwOyBzb3VyY2VJbmRleCA8IGxlbmd0aDsgc291cmNlSW5kZXgrKykgewogICAgICAgICAgX2xvb3BfMShzb3VyY2VJbmRleCk7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmZvcmtKb2luID0gZm9ya0pvaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzCnZhciByZXF1aXJlX2Zyb21FdmVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21FdmVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tRXZlbnQgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNBcnJheUxpa2VfMSA9IHJlcXVpcmVfaXNBcnJheUxpa2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBub2RlRXZlbnRFbWl0dGVyTWV0aG9kcyA9IFsiYWRkTGlzdGVuZXIiLCAicmVtb3ZlTGlzdGVuZXIiXTsKICAgIHZhciBldmVudFRhcmdldE1ldGhvZHMgPSBbImFkZEV2ZW50TGlzdGVuZXIiLCAicmVtb3ZlRXZlbnRMaXN0ZW5lciJdOwogICAgdmFyIGpxdWVyeU1ldGhvZHMgPSBbIm9uIiwgIm9mZiJdOwogICAgZnVuY3Rpb24gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zLCByZXN1bHRTZWxlY3RvcikgewogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob3B0aW9ucykpIHsKICAgICAgICByZXN1bHRTZWxlY3RvciA9IG9wdGlvbnM7CiAgICAgICAgb3B0aW9ucyA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAocmVzdWx0U2VsZWN0b3IpIHsKICAgICAgICByZXR1cm4gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zKS5waXBlKG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSk7CiAgICAgIH0KICAgICAgdmFyIF9hID0gX19yZWFkKGlzRXZlbnRUYXJnZXQodGFyZ2V0KSA/IGV2ZW50VGFyZ2V0TWV0aG9kcy5tYXAoZnVuY3Rpb24obWV0aG9kTmFtZSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihoYW5kbGVyKSB7CiAgICAgICAgICByZXR1cm4gdGFyZ2V0W21ldGhvZE5hbWVdKGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucyk7CiAgICAgICAgfTsKICAgICAgfSkgOiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpID8gbm9kZUV2ZW50RW1pdHRlck1ldGhvZHMubWFwKHRvQ29tbW9uSGFuZGxlclJlZ2lzdHJ5KHRhcmdldCwgZXZlbnROYW1lKSkgOiBpc0pRdWVyeVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgPyBqcXVlcnlNZXRob2RzLm1hcCh0b0NvbW1vbkhhbmRsZXJSZWdpc3RyeSh0YXJnZXQsIGV2ZW50TmFtZSkpIDogW10sIDIpLCBhZGQgPSBfYVswXSwgcmVtb3ZlID0gX2FbMV07CiAgICAgIGlmICghYWRkKSB7CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UodGFyZ2V0KSkgewogICAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oc3ViVGFyZ2V0KSB7CiAgICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQoc3ViVGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHRhcmdldCkpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIWFkZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgZXZlbnQgdGFyZ2V0Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhbmRsZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KDEgPCBhcmdzLmxlbmd0aCA/IGFyZ3MgOiBhcmdzWzBdKTsKICAgICAgICB9OwogICAgICAgIGFkZChoYW5kbGVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlKGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUV2ZW50ID0gZnJvbUV2ZW50OwogICAgZnVuY3Rpb24gdG9Db21tb25IYW5kbGVyUmVnaXN0cnkodGFyZ2V0LCBldmVudE5hbWUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhvZE5hbWUpIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oaGFuZGxlcikgewogICAgICAgICAgcmV0dXJuIHRhcmdldFttZXRob2ROYW1lXShldmVudE5hbWUsIGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRMaXN0ZW5lcikgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LnJlbW92ZUxpc3RlbmVyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSlF1ZXJ5U3R5bGVFdmVudEVtaXR0ZXIodGFyZ2V0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQub24pICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5vZmYpOwogICAgfQogICAgZnVuY3Rpb24gaXNFdmVudFRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRFdmVudExpc3RlbmVyKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcwp2YXIgcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIGZ1bmN0aW9uIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlciwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlcikucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgICAgZVtfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIubmV4dChlLmxlbmd0aCA9PT0gMSA/IGVbMF0gOiBlKTsKICAgICAgICB9OwogICAgICAgIHZhciByZXRWYWx1ZSA9IGFkZEhhbmRsZXIoaGFuZGxlcik7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlbW92ZUhhbmRsZXIpID8gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlSGFuZGxlcihoYW5kbGVyLCByZXRWYWx1ZSk7CiAgICAgICAgfSA6IHZvaWQgMDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnRQYXR0ZXJuID0gZnJvbUV2ZW50UGF0dGVybjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9nZW5lcmF0ZS5qcwp2YXIgcmVxdWlyZV9nZW5lcmF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2dlbmVyYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZ2VuZXJhdG9yID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19nZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgYm9keSkgewogICAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsKICAgICAgICByZXR1cm4gdFsxXTsKICAgICAgfSwgdHJ5czogW10sIG9wczogW10gfSwgZiwgeSwgdCwgZzsKICAgICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9KSwgZzsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBzdGVwKFtuLCB2XSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTsKICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICB5ID0gb3BbMV07CiAgICAgICAgICAgICAgb3AgPSBbMF07CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvcCA9IF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgewogICAgICAgICAgICAgICAgXyA9IDA7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCBvcFsxXSA+IHRbMF0gJiYgb3BbMV0gPCB0WzNdKSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IG9wWzFdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMV07CiAgICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzJdOwogICAgICAgICAgICAgICAgXy5vcHMucHVzaChvcCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIG9wID0gWzYsIGVdOwogICAgICAgICAgeSA9IDA7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGYgPSB0ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07CiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgICAgfQogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSB2b2lkIDA7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGRlZmVyXzEgPSByZXF1aXJlX2RlZmVyKCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZShpbml0aWFsU3RhdGVPck9wdGlvbnMsIGNvbmRpdGlvbiwgaXRlcmF0ZSwgcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlciwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciByZXN1bHRTZWxlY3RvcjsKICAgICAgdmFyIGluaXRpYWxTdGF0ZTsKICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgICAgICBfYSA9IGluaXRpYWxTdGF0ZU9yT3B0aW9ucywgaW5pdGlhbFN0YXRlID0gX2EuaW5pdGlhbFN0YXRlLCBjb25kaXRpb24gPSBfYS5jb25kaXRpb24sIGl0ZXJhdGUgPSBfYS5pdGVyYXRlLCBfYiA9IF9hLnJlc3VsdFNlbGVjdG9yLCByZXN1bHRTZWxlY3RvciA9IF9iID09PSB2b2lkIDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogX2IsIHNjaGVkdWxlciA9IF9hLnNjaGVkdWxlcjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpbml0aWFsU3RhdGUgPSBpbml0aWFsU3RhdGVPck9wdGlvbnM7CiAgICAgICAgaWYgKCFyZXN1bHRTZWxlY3Rvck9yU2NoZWR1bGVyIHx8IGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgICAgICAgIHNjaGVkdWxlciA9IHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZ2VuKCkgewogICAgICAgIHZhciBzdGF0ZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2EyKSB7CiAgICAgICAgICBzd2l0Y2ggKF9hMi5sYWJlbCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgc3RhdGUgPSBpbml0aWFsU3RhdGU7CiAgICAgICAgICAgICAgX2EyLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGlmICghKCFjb25kaXRpb24gfHwgY29uZGl0aW9uKHN0YXRlKSkpIHJldHVybiBbMywgNF07CiAgICAgICAgICAgICAgcmV0dXJuIFs0LCByZXN1bHRTZWxlY3RvcihzdGF0ZSldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX2EyLnNlbnQoKTsKICAgICAgICAgICAgICBfYTIubGFiZWwgPSAzOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgc3RhdGUgPSBpdGVyYXRlKHN0YXRlKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFsyXTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcihzY2hlZHVsZXIgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVJdGVyYWJsZV8xLnNjaGVkdWxlSXRlcmFibGUoZ2VuKCksIHNjaGVkdWxlcik7CiAgICAgIH0gOiBnZW4pOwogICAgfQogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSBnZW5lcmF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMKdmFyIHJlcXVpcmVfaWlmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaWlmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5paWYgPSB2b2lkIDA7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIGZ1bmN0aW9uIGlpZihjb25kaXRpb24sIHRydWVSZXN1bHQsIGZhbHNlUmVzdWx0KSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBjb25kaXRpb24oKSA/IHRydWVSZXN1bHQgOiBmYWxzZVJlc3VsdDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5paWYgPSBpaWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdGltZXIuanMKdmFyIHJlcXVpcmVfdGltZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aW1lci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIGZ1bmN0aW9uIHRpbWVyKGR1ZVRpbWUsIGludGVydmFsT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICBpZiAoZHVlVGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZHVlVGltZSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luYzsKICAgICAgfQogICAgICB2YXIgaW50ZXJ2YWxEdXJhdGlvbiA9IC0xOwogICAgICBpZiAoaW50ZXJ2YWxPclNjaGVkdWxlciAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIoaW50ZXJ2YWxPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHNjaGVkdWxlciA9IGludGVydmFsT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGludGVydmFsRHVyYXRpb24gPSBpbnRlcnZhbE9yU2NoZWR1bGVyOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZHVlID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoZHVlVGltZSkgPyArZHVlVGltZSAtIHNjaGVkdWxlci5ub3coKSA6IGR1ZVRpbWU7CiAgICAgICAgaWYgKGR1ZSA8IDApIHsKICAgICAgICAgIGR1ZSA9IDA7CiAgICAgICAgfQogICAgICAgIHZhciBuID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgaWYgKDAgPD0gaW50ZXJ2YWxEdXJhdGlvbikgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUodm9pZCAwLCBpbnRlcnZhbER1cmF0aW9uKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBkdWUpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVyID0gdGltZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfaW50ZXJ2YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gaW50ZXJ2YWwocGVyaW9kLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHBlcmlvZCA9PT0gdm9pZCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIGlmIChwZXJpb2QgPCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICByZXR1cm4gdGltZXJfMS50aW1lcihwZXJpb2QsIHBlcmlvZCwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLmludGVydmFsID0gaW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VBbGxfMSA9IHJlcXVpcmVfbWVyZ2VBbGwoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG1lcmdlMigpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHZhciBjb25jdXJyZW50ID0gYXJnc18xLnBvcE51bWJlcihhcmdzLCBJbmZpbml0eSk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnczsKICAgICAgcmV0dXJuICFzb3VyY2VzLmxlbmd0aCA/IGVtcHR5XzEuRU1QVFkgOiBzb3VyY2VzLmxlbmd0aCA9PT0gMSA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzWzBdKSA6IG1lcmdlQWxsXzEubWVyZ2VBbGwoY29uY3VycmVudCkoZnJvbV8xLmZyb20oc291cmNlcywgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9uZXZlci5qcwp2YXIgcmVxdWlyZV9uZXZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL25ldmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLk5FVkVSID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZXhwb3J0czIuTkVWRVIgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUobm9vcF8xLm5vb3ApOwogICAgZnVuY3Rpb24gbmV2ZXIoKSB7CiAgICAgIHJldHVybiBleHBvcnRzMi5ORVZFUjsKICAgIH0KICAgIGV4cG9ydHMyLm5ldmVyID0gbmV2ZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc09yQXJnQXJyYXkuanMKdmFyIHJlcXVpcmVfYXJnc09yQXJnQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzT3JBcmdBcnJheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXJnc09yQXJnQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgaXNBcnJheSA9IEFycmF5LmlzQXJyYXk7CiAgICBmdW5jdGlvbiBhcmdzT3JBcmdBcnJheShhcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLmxlbmd0aCA9PT0gMSAmJiBpc0FycmF5KGFyZ3NbMF0pID8gYXJnc1swXSA6IGFyZ3M7CiAgICB9CiAgICBleHBvcnRzMi5hcmdzT3JBcmdBcnJheSA9IGFyZ3NPckFyZ0FycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29uRXJyb3JSZXN1bWVOZXh0LmpzCnZhciByZXF1aXJlX29uRXJyb3JSZXN1bWVOZXh0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb25FcnJvclJlc3VtZU5leHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0KCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc291cmNlSW5kZXggPSAwOwogICAgICAgIHZhciBzdWJzY3JpYmVOZXh0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoc291cmNlSW5kZXggPCBuZXh0U291cmNlcy5sZW5ndGgpIHsKICAgICAgICAgICAgdmFyIG5leHRTb3VyY2UgPSB2b2lkIDA7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgbmV4dFNvdXJjZSA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShuZXh0U291cmNlc1tzb3VyY2VJbmRleCsrXSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgIHN1YnNjcmliZU5leHQoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG5ldyBPcGVyYXRvclN1YnNjcmliZXJfMS5PcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBub29wXzEubm9vcCwgbm9vcF8xLm5vb3ApOwogICAgICAgICAgICBuZXh0U291cmNlLnN1YnNjcmliZShpbm5lclN1YnNjcmliZXIpOwogICAgICAgICAgICBpbm5lclN1YnNjcmliZXIuYWRkKHN1YnNjcmliZU5leHQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlTmV4dCgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gb25FcnJvclJlc3VtZU5leHQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFpcnMuanMKdmFyIHJlcXVpcmVfcGFpcnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYWlycy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGFpcnMgPSB2b2lkIDA7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBmdW5jdGlvbiBwYWlyczIob2JqLCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKE9iamVjdC5lbnRyaWVzKG9iaiksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5wYWlycyA9IHBhaXJzMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9ub3QuanMKdmFyIHJlcXVpcmVfbm90MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm90ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gbm90KHByZWQsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgIHJldHVybiAhcHJlZC5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5ub3QgPSBub3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMKdmFyIHJlcXVpcmVfZmlsdGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbHRlciA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaWx0ZXIocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gcHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGluZGV4KyspICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbHRlciA9IGZpbHRlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMKdmFyIHJlcXVpcmVfcGFydGl0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFydGl0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSB2b2lkIDA7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdDIoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gcGFydGl0aW9uKHNvdXJjZSwgcHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBbZmlsdGVyXzEuZmlsdGVyKHByZWRpY2F0ZSwgdGhpc0FyZykoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZSkpLCBmaWx0ZXJfMS5maWx0ZXIobm90XzEubm90KHByZWRpY2F0ZSwgdGhpc0FyZykpKGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpKV07CiAgICB9CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcwp2YXIgcmVxdWlyZV9yYWNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFjZUluaXQgPSBleHBvcnRzMi5yYWNlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJhY2UoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gc291cmNlcy5sZW5ndGggPT09IDEgPyBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1swXSkgOiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUocmFjZUluaXQoc291cmNlcykpOwogICAgfQogICAgZXhwb3J0czIucmFjZSA9IHJhY2U7CiAgICBmdW5jdGlvbiByYWNlSW5pdChzb3VyY2VzKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbnMgPSBbXTsKICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKGkyKSB7CiAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZXNbaTJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChzdWJzY3JpcHRpb25zKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgcyA9IDA7IHMgPCBzdWJzY3JpcHRpb25zLmxlbmd0aDsgcysrKSB7CiAgICAgICAgICAgICAgICBzICE9PSBpMiAmJiBzdWJzY3JpcHRpb25zW3NdLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmlwdGlvbnMgPSBudWxsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9KSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IHN1YnNjcmlwdGlvbnMgJiYgIXN1YnNjcmliZXIuY2xvc2VkICYmIGkgPCBzb3VyY2VzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnJhY2VJbml0ID0gcmFjZUluaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFuZ2UuanMKdmFyIHJlcXVpcmVfcmFuZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYW5nZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFuZ2UgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIGZ1bmN0aW9uIHJhbmdlKHN0YXJ0LCBjb3VudCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChjb3VudCA9PSBudWxsKSB7CiAgICAgICAgY291bnQgPSBzdGFydDsKICAgICAgICBzdGFydCA9IDA7CiAgICAgIH0KICAgICAgaWYgKGNvdW50IDw9IDApIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfQogICAgICB2YXIgZW5kID0gY291bnQgKyBzdGFydDsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShzY2hlZHVsZXIgPyBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIG4gPSBzdGFydDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG4gPCBlbmQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSA6IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbiA9IHN0YXJ0OwogICAgICAgIHdoaWxlIChuIDwgZW5kICYmICFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgfQogICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yYW5nZSA9IHJhbmdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3VzaW5nLmpzCnZhciByZXF1aXJlX3VzaW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdXNpbmcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnVzaW5nID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgZnVuY3Rpb24gdXNpbmcocmVzb3VyY2VGYWN0b3J5LCBvYnNlcnZhYmxlRmFjdG9yeSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgcmVzb3VyY2UgPSByZXNvdXJjZUZhY3RvcnkoKTsKICAgICAgICB2YXIgcmVzdWx0ID0gb2JzZXJ2YWJsZUZhY3RvcnkocmVzb3VyY2UpOwogICAgICAgIHZhciBzb3VyY2UgPSByZXN1bHQgPyBpbm5lckZyb21fMS5pbm5lckZyb20ocmVzdWx0KSA6IGVtcHR5XzEuRU1QVFk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAocmVzb3VyY2UpIHsKICAgICAgICAgICAgcmVzb3VyY2UudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzaW5nID0gdXNpbmc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvemlwLmpzCnZhciByZXF1aXJlX3ppcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3ppcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgZnVuY3Rpb24gemlwKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKTsKICAgICAgcmV0dXJuIHNvdXJjZXMubGVuZ3RoID8gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IHNvdXJjZXMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0pOwogICAgICAgIHZhciBjb21wbGV0ZWQgPSBzb3VyY2VzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBjb21wbGV0ZWQgPSBudWxsOwogICAgICAgIH0pOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tzb3VyY2VJbmRleDJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGJ1ZmZlcnNbc291cmNlSW5kZXgyXS5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuZXZlcnkoZnVuY3Rpb24oYnVmZmVyKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5sZW5ndGg7CiAgICAgICAgICAgIH0pKSB7CiAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IGJ1ZmZlcnMubWFwKGZ1bmN0aW9uKGJ1ZmZlcikgewogICAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5zaGlmdCgpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChyZXN1bHRTZWxlY3RvciA/IHJlc3VsdFNlbGVjdG9yLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHJlc3VsdCkpKSA6IHJlc3VsdCk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuc29tZShmdW5jdGlvbihidWZmZXIsIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhYnVmZmVyLmxlbmd0aCAmJiBjb21wbGV0ZWRbaV07CiAgICAgICAgICAgICAgfSkpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBjb21wbGV0ZWRbc291cmNlSW5kZXgyXSA9IHRydWU7CiAgICAgICAgICAgICFidWZmZXJzW3NvdXJjZUluZGV4Ml0ubGVuZ3RoICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIHNvdXJjZUluZGV4ID0gMDsgIXN1YnNjcmliZXIuY2xvc2VkICYmIHNvdXJjZUluZGV4IDwgc291cmNlcy5sZW5ndGg7IHNvdXJjZUluZGV4KyspIHsKICAgICAgICAgIF9sb29wXzEoc291cmNlSW5kZXgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXJzID0gY29tcGxldGVkID0gbnVsbDsKICAgICAgICB9OwogICAgICB9KSA6IGVtcHR5XzEuRU1QVFk7CiAgICB9CiAgICBleHBvcnRzMi56aXAgPSB6aXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3R5cGVzLmpzCnZhciByZXF1aXJlX3R5cGVzMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC90eXBlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMKdmFyIHJlcXVpcmVfYXVkaXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2F1ZGl0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hdWRpdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gYXVkaXQoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICB2YXIgZW5kRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGlmICghZHVyYXRpb25TdWJzY3JpYmVyKSB7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmREdXJhdGlvbiwgY2xlYW51cER1cmF0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICghaGFzVmFsdWUgfHwgIWR1cmF0aW9uU3Vic2NyaWJlciB8fCBkdXJhdGlvblN1YnNjcmliZXIuY2xvc2VkKSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmF1ZGl0ID0gYXVkaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMKdmFyIHJlcXVpcmVfYXVkaXRUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0VGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGF1ZGl0VGltZShkdXJhdGlvbiwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXRUaW1lID0gYXVkaXRUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXIgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcihjbG9zaW5nTm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjdXJyZW50QnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBjdXJyZW50QnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGN1cnJlbnRCdWZmZXIpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ05vdGlmaWVyKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGIgPSBjdXJyZW50QnVmZmVyOwogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IFtdOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGIpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXIgPSBidWZmZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcwp2YXIgcmVxdWlyZV9idWZmZXJDb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyQ291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiBidWZmZXJDb3VudChidWZmZXJTaXplLCBzdGFydEJ1ZmZlckV2ZXJ5KSB7CiAgICAgIGlmIChzdGFydEJ1ZmZlckV2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gbnVsbDsKICAgICAgfQogICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gc3RhcnRCdWZmZXJFdmVyeSAhPT0gbnVsbCAmJiBzdGFydEJ1ZmZlckV2ZXJ5ICE9PSB2b2lkIDAgPyBzdGFydEJ1ZmZlckV2ZXJ5IDogYnVmZmVyU2l6ZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJzID0gW107CiAgICAgICAgdmFyIGNvdW50ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgICB2YXIgdG9FbWl0ID0gbnVsbDsKICAgICAgICAgIGlmIChjb3VudCsrICUgc3RhcnRCdWZmZXJFdmVyeSA9PT0gMCkgewogICAgICAgICAgICBidWZmZXJzLnB1c2goW10pOwogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18xID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKTsgIWJ1ZmZlcnNfMV8xLmRvbmU7IGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdG9FbWl0ID0gdG9FbWl0ICE9PSBudWxsICYmIHRvRW1pdCAhPT0gdm9pZCAwID8gdG9FbWl0IDogW107CiAgICAgICAgICAgICAgICB0b0VtaXQucHVzaChidWZmZXIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9FbWl0KSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgdG9FbWl0XzEgPSBfX3ZhbHVlcyh0b0VtaXQpLCB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpOyAhdG9FbWl0XzFfMS5kb25lOyB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gdG9FbWl0XzFfMS52YWx1ZTsKICAgICAgICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJzLCBidWZmZXIpOwogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGNhdGNoIChlXzJfMSkgewogICAgICAgICAgICAgIGVfMiA9IHsgZXJyb3I6IGVfMl8xIH07CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGlmICh0b0VtaXRfMV8xICYmICF0b0VtaXRfMV8xLmRvbmUgJiYgKF9iID0gdG9FbWl0XzEucmV0dXJuKSkgX2IuY2FsbCh0b0VtaXRfMSk7CiAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzMsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18yID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKTsgIWJ1ZmZlcnNfMl8xLmRvbmU7IGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzJfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8zXzEpIHsKICAgICAgICAgICAgZV8zID0geyBlcnJvcjogZV8zXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMl8xICYmICFidWZmZXJzXzJfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMi5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMik7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMykgdGhyb3cgZV8zLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJDb3VudCA9IGJ1ZmZlckNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVGltZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gYnVmZmVyVGltZShidWZmZXJUaW1lU3BhbikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgb3RoZXJBcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMTsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJBcmdzW19pIC0gMV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSAoX2EgPSBhcmdzXzEucG9wU2NoZWR1bGVyKG90aGVyQXJncykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIHZhciBidWZmZXJDcmVhdGlvbkludGVydmFsID0gKF9iID0gb3RoZXJBcmdzWzBdKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBudWxsOwogICAgICB2YXIgbWF4QnVmZmVyU2l6ZSA9IG90aGVyQXJnc1sxXSB8fCBJbmZpbml0eTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJSZWNvcmRzID0gW107CiAgICAgICAgdmFyIHJlc3RhcnRPbkVtaXQgPSBmYWxzZTsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKHJlY29yZCkgewogICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXIsIHN1YnMgPSByZWNvcmQuc3ViczsKICAgICAgICAgIHN1YnMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJSZWNvcmRzLCByZWNvcmQpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICByZXN0YXJ0T25FbWl0ICYmIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgfTsKICAgICAgICB2YXIgc3RhcnRCdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChidWZmZXJSZWNvcmRzKSB7CiAgICAgICAgICAgIHZhciBzdWJzID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChzdWJzKTsKICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgYnVmZmVyLAogICAgICAgICAgICAgIHN1YnMKICAgICAgICAgICAgfTsKICAgICAgICAgICAgYnVmZmVyUmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVtaXQocmVjb3JkXzEpOwogICAgICAgICAgICB9LCBidWZmZXJUaW1lU3Bhbik7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBpZiAoYnVmZmVyQ3JlYXRpb25JbnRlcnZhbCAhPT0gbnVsbCAmJiBidWZmZXJDcmVhdGlvbkludGVydmFsID49IDApIHsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIHN0YXJ0QnVmZmVyLCBidWZmZXJDcmVhdGlvbkludGVydmFsLCB0cnVlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmVzdGFydE9uRW1pdCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgdmFyIGJ1ZmZlclRpbWVTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTI7CiAgICAgICAgICB2YXIgcmVjb3Jkc0NvcHkgPSBidWZmZXJSZWNvcmRzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciByZWNvcmRzQ29weV8xID0gX192YWx1ZXMocmVjb3Jkc0NvcHkpLCByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKTsgIXJlY29yZHNDb3B5XzFfMS5kb25lOyByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciByZWNvcmQgPSByZWNvcmRzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXI7CiAgICAgICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgICAgIG1heEJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCAmJiBlbWl0KHJlY29yZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChyZWNvcmRzQ29weV8xXzEgJiYgIXJlY29yZHNDb3B5XzFfMS5kb25lICYmIChfYTIgPSByZWNvcmRzQ29weV8xLnJldHVybikpIF9hMi5jYWxsKHJlY29yZHNDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKGJ1ZmZlclJlY29yZHMgPT09IG51bGwgfHwgYnVmZmVyUmVjb3JkcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnVmZmVyUmVjb3Jkcy5sZW5ndGgpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlclJlY29yZHMuc2hpZnQoKS5idWZmZXIpOwogICAgICAgICAgfQogICAgICAgICAgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IG51bGwgfHwgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlclRpbWVTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXJSZWNvcmRzID0gbnVsbDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGJ1ZmZlclRpbWVTdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gYnVmZmVyVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlclRvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IFtdOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciBidWZmZXIgPSBbXTsKICAgICAgICAgIGJ1ZmZlcnMucHVzaChidWZmZXIpOwogICAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgZW1pdEJ1ZmZlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoYnVmZmVycywgYnVmZmVyKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH07CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZW1pdEJ1ZmZlciwgbm9vcF8xLm5vb3ApKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzEgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpOyAhYnVmZmVyc18xXzEuZG9uZTsgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoYnVmZmVycy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXJzLnNoaWZ0KCkpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUb2dnbGUgPSBidWZmZXJUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJXaGVuLmpzCnZhciByZXF1aXJlX2J1ZmZlcldoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlcldoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcldoZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gbnVsbDsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXIgPSBudWxsOwogICAgICAgIHZhciBvcGVuQnVmZmVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBjbG9zaW5nU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xvc2luZ1N1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBiID0gYnVmZmVyOwogICAgICAgICAgYnVmZmVyID0gW107CiAgICAgICAgICBiICYmIHN1YnNjcmliZXIubmV4dChiKTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nU2VsZWN0b3IoKSkuc3Vic2NyaWJlKGNsb3NpbmdTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIG9wZW5CdWZmZXIsIG5vb3BfMS5ub29wKSk7CiAgICAgICAgfTsKICAgICAgICBvcGVuQnVmZmVyKCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPT09IG51bGwgfHwgYnVmZmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgJiYgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPSBjbG9zaW5nU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSBidWZmZXJXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY2F0Y2hFcnJvci5qcwp2YXIgcmVxdWlyZV9jYXRjaEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jYXRjaEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYXRjaEVycm9yID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBjYXRjaEVycm9yKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWIgPSBudWxsOwogICAgICAgIHZhciBzeW5jVW5zdWIgPSBmYWxzZTsKICAgICAgICB2YXIgaGFuZGxlZFJlc3VsdDsKICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIGhhbmRsZWRSZXN1bHQgPSBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZXJyLCBjYXRjaEVycm9yKHNlbGVjdG9yKShzb3VyY2UpKSk7CiAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIGlmIChzeW5jVW5zdWIpIHsKICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2F0Y2hFcnJvciA9IGNhdGNoRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zY2FuSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX3NjYW5JbnRlcm5hbHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW5JbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjYW5JbnRlcm5hbHMgPSB2b2lkIDA7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgaGFzU2VlZCwgZW1pdE9uTmV4dCwgZW1pdEJlZm9yZUNvbXBsZXRlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzU3RhdGUgPSBoYXNTZWVkOwogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGkgPSBpbmRleCsrOwogICAgICAgICAgc3RhdGUgPSBoYXNTdGF0ZSA/IGFjY3VtdWxhdG9yKHN0YXRlLCB2YWx1ZSwgaSkgOiAoaGFzU3RhdGUgPSB0cnVlLCB2YWx1ZSk7CiAgICAgICAgICBlbWl0T25OZXh0ICYmIHN1YnNjcmliZXIubmV4dChzdGF0ZSk7CiAgICAgICAgfSwgZW1pdEJlZm9yZUNvbXBsZXRlICYmIGZ1bmN0aW9uKCkgewogICAgICAgICAgaGFzU3RhdGUgJiYgc3Vic2NyaWJlci5uZXh0KHN0YXRlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5zY2FuSW50ZXJuYWxzID0gc2NhbkludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcwp2YXIgcmVxdWlyZV9yZWR1Y2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVkdWNlID0gdm9pZCAwOwogICAgdmFyIHNjYW5JbnRlcm5hbHNfMSA9IHJlcXVpcmVfc2NhbkludGVybmFscygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gcmVkdWNlKGFjY3VtdWxhdG9yLCBzZWVkKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShzY2FuSW50ZXJuYWxzXzEuc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgYXJndW1lbnRzLmxlbmd0aCA+PSAyLCBmYWxzZSwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIucmVkdWNlID0gcmVkdWNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdG9BcnJheS5qcwp2YXIgcmVxdWlyZV90b0FycmF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90b0FycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50b0FycmF5ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBhcnJSZWR1Y2VyID0gZnVuY3Rpb24oYXJyLCB2YWx1ZSkgewogICAgICByZXR1cm4gYXJyLnB1c2godmFsdWUpLCBhcnI7CiAgICB9OwogICAgZnVuY3Rpb24gdG9BcnJheTIoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZWR1Y2VfMS5yZWR1Y2UoYXJyUmVkdWNlciwgW10pKHNvdXJjZSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRvQXJyYXkgPSB0b0FycmF5MjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2pvaW5BbGxJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfam9pbkFsbEludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvam9pbkFsbEludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuam9pbkFsbEludGVybmFscyA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgZnVuY3Rpb24gam9pbkFsbEludGVybmFscyhqb2luRm4sIHByb2plY3QpIHsKICAgICAgcmV0dXJuIHBpcGVfMS5waXBlKHRvQXJyYXlfMTIudG9BcnJheSgpLCBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKHNvdXJjZXMpIHsKICAgICAgICByZXR1cm4gam9pbkZuKHNvdXJjZXMpOwogICAgICB9KSwgcHJvamVjdCA/IG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHByb2plY3QpIDogaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5qb2luQWxsSW50ZXJuYWxzID0gam9pbkFsbEludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RBbGwuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdEFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdEFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IHZvaWQgMDsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIHZhciBqb2luQWxsSW50ZXJuYWxzXzEgPSByZXF1aXJlX2pvaW5BbGxJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3RBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QsIHByb2plY3QpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IGNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lQWxsLmpzCnZhciByZXF1aXJlX2NvbWJpbmVBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVBbGwgPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdEFsbF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsKCk7CiAgICBleHBvcnRzMi5jb21iaW5lQWxsID0gY29tYmluZUxhdGVzdEFsbF8xLmNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvciA/IHBpcGVfMS5waXBlKGNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSwgbWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0SW5pdChfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKSkpKShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gY29tYmluZUxhdGVzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RXaXRoLmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3RXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0MigpOwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBjb21iaW5lTGF0ZXN0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBjb25jYXRNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlc3VsdFNlbGVjdG9yKSA/IG1lcmdlTWFwXzEubWVyZ2VNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IsIDEpIDogbWVyZ2VNYXBfMS5tZXJnZU1hcChwcm9qZWN0LCAxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcCA9IGNvbmNhdE1hcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcFRvLmpzCnZhciByZXF1aXJlX2NvbmNhdE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gY29uY2F0TWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gY29uY2F0TWFwXzEuY29uY2F0TWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IGNvbmNhdE1hcF8xLmNvbmNhdE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gY29uY2F0TWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbmNhdEFsbF8xLmNvbmNhdEFsbCgpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXQgPSBjb25jYXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRXaXRoLmpzCnZhciByZXF1aXJlX2NvbmNhdFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdDIoKTsKICAgIGZ1bmN0aW9uIGNvbmNhdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSBjb25jYXRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMKdmFyIHJlcXVpcmVfZnJvbVN1YnNjcmliYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21TdWJzY3JpYmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBmcm9tU3Vic2NyaWJhYmxlKHN1YnNjcmliYWJsZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJhYmxlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU3Vic2NyaWJhYmxlID0gZnJvbVN1YnNjcmliYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Nvbm5lY3QuanMKdmFyIHJlcXVpcmVfY29ubmVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29ubmVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29ubmVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgZnJvbVN1YnNjcmliYWJsZV8xID0gcmVxdWlyZV9mcm9tU3Vic2NyaWJhYmxlKCk7CiAgICB2YXIgREVGQVVMVF9DT05GSUcgPSB7CiAgICAgIGNvbm5lY3RvcjogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gY29ubmVjdChzZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIGlmIChjb25maWcgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZyA9IERFRkFVTFRfQ09ORklHOwogICAgICB9CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZnJvbVN1YnNjcmliYWJsZV8xLmZyb21TdWJzY3JpYmFibGUoc3ViamVjdCkpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc291cmNlLnN1YnNjcmliZShzdWJqZWN0KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdCA9IGNvbm5lY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb3VudC5qcwp2YXIgcmVxdWlyZV9jb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvdW50ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIGZ1bmN0aW9uIGNvdW50KHByZWRpY2F0ZSkgewogICAgICByZXR1cm4gcmVkdWNlXzEucmVkdWNlKGZ1bmN0aW9uKHRvdGFsLCB2YWx1ZSwgaSkgewogICAgICAgIHJldHVybiAhcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaSkgPyB0b3RhbCArIDEgOiB0b3RhbDsKICAgICAgfSwgMCk7CiAgICB9CiAgICBleHBvcnRzMi5jb3VudCA9IGNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2UuanMKdmFyIHJlcXVpcmVfZGVib3VuY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVib3VuY2UoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGVtaXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbWl0LCBub29wXzEubm9vcCk7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb25TZWxlY3Rvcih2YWx1ZSkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXIpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IGRlYm91bmNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzCnZhciByZXF1aXJlX2RlYm91bmNlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWJvdW5jZVRpbWUoZHVlVGltZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFRpbWUgPSBudWxsOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGFjdGl2ZVRhc2sgPSBudWxsOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBlbWl0V2hlbklkbGUoKSB7CiAgICAgICAgICB2YXIgdGFyZ2V0VGltZSA9IGxhc3RUaW1lICsgZHVlVGltZTsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICBpZiAobm93IDwgdGFyZ2V0VGltZSkgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gdGhpcy5zY2hlZHVsZSh2b2lkIDAsIHRhcmdldFRpbWUgLSBub3cpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChhY3RpdmVUYXNrKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgZW1pdCgpOwogICAgICAgIH0KICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgICBsYXN0VGltZSA9IHNjaGVkdWxlci5ub3coKTsKICAgICAgICAgIGlmICghYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gc2NoZWR1bGVyLnNjaGVkdWxlKGVtaXRXaGVuSWRsZSwgZHVlVGltZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuYWRkKGFjdGl2ZVRhc2spOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVib3VuY2VUaW1lID0gZGVib3VuY2VUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVmYXVsdElmRW1wdHkuanMKdmFyIHJlcXVpcmVfZGVmYXVsdElmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlZmF1bHRJZkVtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZGVmYXVsdFZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSBkZWZhdWx0SWZFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2UuanMKdmFyIHJlcXVpcmVfdGFrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZSA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2UoY291bnQpIHsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaWYgKCsrc2VlbiA8PSBjb3VudCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICBpZiAoY291bnQgPD0gc2VlbikgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlID0gdGFrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2lnbm9yZUVsZW1lbnRzLmpzCnZhciByZXF1aXJlX2lnbm9yZUVsZW1lbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pZ25vcmVFbGVtZW50cy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZnVuY3Rpb24gaWdub3JlRWxlbWVudHMoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gaWdub3JlRWxlbWVudHM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXBUby5qcwp2YXIgcmVxdWlyZV9tYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcFRvID0gdm9pZCAwOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIGZ1bmN0aW9uIG1hcFRvKHZhbHVlKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hcFRvID0gbWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMKdmFyIHJlcXVpcmVfZGVsYXlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgaWdub3JlRWxlbWVudHNfMSA9IHJlcXVpcmVfaWdub3JlRWxlbWVudHMoKTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVsYXlXaGVuKGRlbGF5RHVyYXRpb25TZWxlY3Rvciwgc3Vic2NyaXB0aW9uRGVsYXkpIHsKICAgICAgaWYgKHN1YnNjcmlwdGlvbkRlbGF5KSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdChzdWJzY3JpcHRpb25EZWxheS5waXBlKHRha2VfMS50YWtlKDEpLCBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzKCkpLCBzb3VyY2UucGlwZShkZWxheVdoZW4oZGVsYXlEdXJhdGlvblNlbGVjdG9yKSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShkZWxheUR1cmF0aW9uU2VsZWN0b3IodmFsdWUsIGluZGV4KSkucGlwZSh0YWtlXzEudGFrZSgxKSwgbWFwVG9fMS5tYXBUbyh2YWx1ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IGRlbGF5V2hlbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbGF5LmpzCnZhciByZXF1aXJlX2RlbGF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVsYXkgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGRlbGF5KGR1ZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uID0gdGltZXJfMS50aW1lcihkdWUsIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGR1cmF0aW9uOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5ID0gZGVsYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZW1hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX2RlbWF0ZXJpYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbWF0ZXJpYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRlbWF0ZXJpYWxpemUoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihub3RpZmljYXRpb24pIHsKICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25fMS5vYnNlcnZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcik7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSBkZW1hdGVyaWFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3QuanMKdmFyIHJlcXVpcmVfZGlzdGluY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGlzdGluY3Qoa2V5U2VsZWN0b3IsIGZsdXNoZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBkaXN0aW5jdEtleXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIga2V5ID0ga2V5U2VsZWN0b3IgPyBrZXlTZWxlY3Rvcih2YWx1ZSkgOiB2YWx1ZTsKICAgICAgICAgIGlmICghZGlzdGluY3RLZXlzLmhhcyhrZXkpKSB7CiAgICAgICAgICAgIGRpc3RpbmN0S2V5cy5hZGQoa2V5KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgZmx1c2hlcyAmJiBpbm5lckZyb21fMS5pbm5lckZyb20oZmx1c2hlcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBkaXN0aW5jdEtleXMuY2xlYXIoKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0ID0gZGlzdGluY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kaXN0aW5jdFVudGlsQ2hhbmdlZC5qcwp2YXIgcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbENoYW5nZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbENoYW5nZWQoY29tcGFyYXRvciwga2V5U2VsZWN0b3IpIHsKICAgICAgaWYgKGtleVNlbGVjdG9yID09PSB2b2lkIDApIHsKICAgICAgICBrZXlTZWxlY3RvciA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgY29tcGFyYXRvciA9IGNvbXBhcmF0b3IgIT09IG51bGwgJiYgY29tcGFyYXRvciAhPT0gdm9pZCAwID8gY29tcGFyYXRvciA6IGRlZmF1bHRDb21wYXJlOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXZpb3VzS2V5OwogICAgICAgIHZhciBmaXJzdCA9IHRydWU7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBjdXJyZW50S2V5ID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgaWYgKGZpcnN0IHx8ICFjb21wYXJhdG9yKHByZXZpb3VzS2V5LCBjdXJyZW50S2V5KSkgewogICAgICAgICAgICBmaXJzdCA9IGZhbHNlOwogICAgICAgICAgICBwcmV2aW91c0tleSA9IGN1cnJlbnRLZXk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZGlzdGluY3RVbnRpbENoYW5nZWQ7CiAgICBmdW5jdGlvbiBkZWZhdWx0Q29tcGFyZShhLCBiKSB7CiAgICAgIHJldHVybiBhID09PSBiOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbEtleUNoYW5nZWQuanMKdmFyIHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxLZXlDaGFuZ2VkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IHZvaWQgMDsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbEtleUNoYW5nZWQoa2V5LCBjb21wYXJlKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkKGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4gY29tcGFyZSA/IGNvbXBhcmUoeFtrZXldLCB5W2tleV0pIDogeFtrZXldID09PSB5W2tleV07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcwp2YXIgcmVxdWlyZV90aHJvd0lmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRocm93SWZFbXB0eShlcnJvckZhY3RvcnkpIHsKICAgICAgaWYgKGVycm9yRmFjdG9yeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZXJyb3JGYWN0b3J5ID0gZGVmYXVsdEVycm9yRmFjdG9yeTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaGFzVmFsdWUgPyBzdWJzY3JpYmVyLmNvbXBsZXRlKCkgOiBzdWJzY3JpYmVyLmVycm9yKGVycm9yRmFjdG9yeSgpKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdGhyb3dJZkVtcHR5OwogICAgZnVuY3Rpb24gZGVmYXVsdEVycm9yRmFjdG9yeSgpIHsKICAgICAgcmV0dXJuIG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzCnZhciByZXF1aXJlX2VsZW1lbnRBdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSB2b2lkIDA7CiAgICB2YXIgQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMSA9IHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGhyb3dJZkVtcHR5XzEgPSByZXF1aXJlX3Rocm93SWZFbXB0eSgpOwogICAgdmFyIGRlZmF1bHRJZkVtcHR5XzEgPSByZXF1aXJlX2RlZmF1bHRJZkVtcHR5KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICBmdW5jdGlvbiBlbGVtZW50QXQoaW5kZXgsIGRlZmF1bHRWYWx1ZSkgewogICAgICBpZiAoaW5kZXggPCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgfQogICAgICB2YXIgaGFzRGVmYXVsdFZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+PSAyOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbih2LCBpKSB7CiAgICAgICAgICByZXR1cm4gaSA9PT0gaW5kZXg7CiAgICAgICAgfSksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSBlbGVtZW50QXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbmRXaXRoLmpzCnZhciByZXF1aXJlX2VuZFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VuZFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVuZFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIG9mXzEgPSByZXF1aXJlX29mKCk7CiAgICBmdW5jdGlvbiBlbmRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25jYXRfMS5jb25jYXQoc291cmNlLCBvZl8xLm9mLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbmRXaXRoID0gZW5kV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V2ZXJ5LmpzCnZhciByZXF1aXJlX2V2ZXJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXZlcnkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZXZlcnkocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAoIXByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrLCBzb3VyY2UpKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh0cnVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXZlcnkgPSBldmVyeTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RNYXAuanMKdmFyIHJlcXVpcmVfZXhoYXVzdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGV4aGF1c3RNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpLnBpcGUobWFwXzEubWFwKGZ1bmN0aW9uKGIsIGlpKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yKGEsIGIsIGksIGlpKTsKICAgICAgICAgICAgfSkpOwogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgdmFyIGlubmVyU3ViID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKG91dGVyVmFsdWUpIHsKICAgICAgICAgIGlmICghaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgICAgaXNDb21wbGV0ZSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdChvdXRlclZhbHVlLCBpbmRleCsrKSkuc3Vic2NyaWJlKGlubmVyU3ViKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgIWlubmVyU3ViICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IGV4aGF1c3RNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0QWxsLmpzCnZhciByZXF1aXJlX2V4aGF1c3RBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSB2b2lkIDA7CiAgICB2YXIgZXhoYXVzdE1hcF8xID0gcmVxdWlyZV9leGhhdXN0TWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RBbGwoKSB7CiAgICAgIHJldHVybiBleGhhdXN0TWFwXzEuZXhoYXVzdE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSBleGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdC5qcwp2YXIgcmVxdWlyZV9leGhhdXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leGhhdXN0ID0gdm9pZCAwOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgZXhwb3J0czIuZXhoYXVzdCA9IGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzCnZhciByZXF1aXJlX2V4cGFuZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leHBhbmQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbWVyZ2VJbnRlcm5hbHNfMSA9IHJlcXVpcmVfbWVyZ2VJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGV4cGFuZChwcm9qZWN0LCBjb25jdXJyZW50LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBjb25jdXJyZW50ID0gKGNvbmN1cnJlbnQgfHwgMCkgPCAxID8gSW5maW5pdHkgOiBjb25jdXJyZW50OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCB2b2lkIDAsIHRydWUsIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhwYW5kID0gZXhwYW5kOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluYWxpemUuanMKdmFyIHJlcXVpcmVfZmluYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmFsaXplLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIGZpbmFsaXplKGNhbGxiYWNrKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB0cnkgewogICAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgc3Vic2NyaWJlci5hZGQoY2FsbGJhY2spOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IGZpbmFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZC5qcwp2YXIgcmVxdWlyZV9maW5kID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVGaW5kID0gZXhwb3J0czIuZmluZCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaW5kKHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJ2YWx1ZSIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmQgPSBmaW5kOwogICAgZnVuY3Rpb24gY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsIGVtaXQpIHsKICAgICAgdmFyIGZpbmRJbmRleCA9IGVtaXQgPT09ICJpbmRleCI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgaSA9IGluZGV4Kys7CiAgICAgICAgICBpZiAocHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGksIHNvdXJjZSkpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGZpbmRJbmRleCA/IGkgOiB2YWx1ZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmaW5kSW5kZXggPyAtMSA6IHZvaWQgMCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlRmluZCA9IGNyZWF0ZUZpbmQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMKdmFyIHJlcXVpcmVfZmluZEluZGV4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbmRJbmRleCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBmaW5kXzEgPSByZXF1aXJlX2ZpbmQoKTsKICAgIGZ1bmN0aW9uIGZpbmRJbmRleChwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZpbmRfMS5jcmVhdGVGaW5kKHByZWRpY2F0ZSwgdGhpc0FyZywgImluZGV4IikpOwogICAgfQogICAgZXhwb3J0czIuZmluZEluZGV4ID0gZmluZEluZGV4OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlyc3QuanMKdmFyIHJlcXVpcmVfZmlyc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpcnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdCA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGZpcnN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZmlyc3QgPSBmaXJzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2dyb3VwQnkuanMKdmFyIHJlcXVpcmVfZ3JvdXBCeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZ3JvdXBCeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ3JvdXBCeSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZ3JvdXBCeShrZXlTZWxlY3RvciwgZWxlbWVudE9yT3B0aW9ucywgZHVyYXRpb24sIGNvbm5lY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVsZW1lbnQ7CiAgICAgICAgaWYgKCFlbGVtZW50T3JPcHRpb25zIHx8IHR5cGVvZiBlbGVtZW50T3JPcHRpb25zID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9uczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZHVyYXRpb24gPSBlbGVtZW50T3JPcHRpb25zLmR1cmF0aW9uLCBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9ucy5lbGVtZW50LCBjb25uZWN0b3IgPSBlbGVtZW50T3JPcHRpb25zLmNvbm5lY3RvcjsKICAgICAgICB9CiAgICAgICAgdmFyIGdyb3VwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgdmFyIG5vdGlmeSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBncm91cHMuZm9yRWFjaChjYik7CiAgICAgICAgICBjYihzdWJzY3JpYmVyKTsKICAgICAgICB9OwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIG5vdGlmeShmdW5jdGlvbihjb25zdW1lcikgewogICAgICAgICAgICByZXR1cm4gY29uc3VtZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0pOwogICAgICAgIH07CiAgICAgICAgdmFyIGFjdGl2ZUdyb3VwcyA9IDA7CiAgICAgICAgdmFyIHRlYXJkb3duQXR0ZW1wdGVkID0gZmFsc2U7CiAgICAgICAgdmFyIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyID0gbmV3IE9wZXJhdG9yU3Vic2NyaWJlcl8xLk9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGtleV8xID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgICB2YXIgZ3JvdXBfMSA9IGdyb3Vwcy5nZXQoa2V5XzEpOwogICAgICAgICAgICBpZiAoIWdyb3VwXzEpIHsKICAgICAgICAgICAgICBncm91cHMuc2V0KGtleV8xLCBncm91cF8xID0gY29ubmVjdG9yID8gY29ubmVjdG9yKCkgOiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgICAgICAgdmFyIGdyb3VwZWQgPSBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXlfMSwgZ3JvdXBfMSk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGdyb3VwZWQpOwogICAgICAgICAgICAgIGlmIChkdXJhdGlvbikgewogICAgICAgICAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGdyb3VwXzEsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBncm91cF8xLmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkdXJhdGlvblN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICByZXR1cm4gZ3JvdXBzLmRlbGV0ZShrZXlfMSk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb24oZ3JvdXBlZCkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXJfMSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBncm91cF8xLm5leHQoZWxlbWVudCA/IGVsZW1lbnQodmFsdWUpIDogdmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbm90aWZ5KGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5jb21wbGV0ZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGdyb3Vwcy5jbGVhcigpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdGVhcmRvd25BdHRlbXB0ZWQgPSB0cnVlOwogICAgICAgICAgcmV0dXJuIGFjdGl2ZUdyb3VwcyA9PT0gMDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyKTsKICAgICAgICBmdW5jdGlvbiBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXksIGdyb3VwU3ViamVjdCkgewogICAgICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihncm91cFN1YnNjcmliZXIpIHsKICAgICAgICAgICAgYWN0aXZlR3JvdXBzKys7CiAgICAgICAgICAgIHZhciBpbm5lclN1YiA9IGdyb3VwU3ViamVjdC5zdWJzY3JpYmUoZ3JvdXBTdWJzY3JpYmVyKTsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgLS1hY3RpdmVHcm91cHMgPT09IDAgJiYgdGVhcmRvd25BdHRlbXB0ZWQgJiYgZ3JvdXBCeVNvdXJjZVN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmVzdWx0LmtleSA9IGtleTsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmdyb3VwQnkgPSBncm91cEJ5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaXNFbXB0eS5qcwp2YXIgcmVxdWlyZV9pc0VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pc0VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0VtcHR5ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGlzRW1wdHkoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodHJ1ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzRW1wdHkgPSBpc0VtcHR5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZUxhc3QuanMKdmFyIHJlcXVpcmVfdGFrZUxhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2VMYXN0KGNvdW50KSB7CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgIGNvdW50IDwgYnVmZmVyLmxlbmd0aCAmJiBidWZmZXIuc2hpZnQoKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyXzEgPSBfX3ZhbHVlcyhidWZmZXIpLCBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpOyAhYnVmZmVyXzFfMS5kb25lOyBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIHZhbHVlID0gYnVmZmVyXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyXzFfMSAmJiAhYnVmZmVyXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcl8xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyXzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHRha2VMYXN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbGFzdC5qcwp2YXIgcmVxdWlyZV9sYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9sYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBsYXN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VMYXN0XzEudGFrZUxhc3QoMSksIGhhc0RlZmF1bHRWYWx1ZSA/IGRlZmF1bHRJZkVtcHR5XzEuZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSA6IHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5sYXN0ID0gbGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX21hdGVyaWFsaXplID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXRlcmlhbGl6ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hdGVyaWFsaXplKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlTmV4dCh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbi5jcmVhdGVDb21wbGV0ZSgpKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlRXJyb3IoZXJyKSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hdGVyaWFsaXplID0gbWF0ZXJpYWxpemU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMKdmFyIHJlcXVpcmVfbWF4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1heCA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtYXgoY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpID4gMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4ID4geSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1heCA9IG1heDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZsYXRNYXAuanMKdmFyIHJlcXVpcmVfZmxhdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmxhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IG1lcmdlTWFwXzEubWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcFRvLmpzCnZhciByZXF1aXJlX21lcmdlTWFwVG8gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIG1lcmdlTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgICAgfSwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIGNvbmN1cnJlbnQpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VNYXBUbyA9IG1lcmdlTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMKdmFyIHJlcXVpcmVfbWVyZ2VTY2FuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlU2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBtZXJnZUludGVybmFsc18xID0gcmVxdWlyZV9tZXJnZUludGVybmFscygpOwogICAgZnVuY3Rpb24gbWVyZ2VTY2FuKGFjY3VtdWxhdG9yLCBzZWVkLCBjb25jdXJyZW50KSB7CiAgICAgIGlmIChjb25jdXJyZW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25jdXJyZW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsKICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcihzdGF0ZSwgdmFsdWUsIGluZGV4KTsKICAgICAgICB9LCBjb25jdXJyZW50LCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3RhdGUgPSB2YWx1ZTsKICAgICAgICB9LCBmYWxzZSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdGF0ZSA9IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VTY2FuID0gbWVyZ2VTY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gbWVyZ2UyKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIGNvbmN1cnJlbnQgPSBhcmdzXzEucG9wTnVtYmVyKGFyZ3MsIEluZmluaXR5KTsKICAgICAgYXJncyA9IGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBtZXJnZUFsbF8xLm1lcmdlQWxsKGNvbmN1cnJlbnQpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcwp2YXIgcmVxdWlyZV9tZXJnZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gdm9pZCAwOwogICAgdmFyIG1lcmdlXzEgPSByZXF1aXJlX21lcmdlMigpOwogICAgZnVuY3Rpb24gbWVyZ2VXaXRoMigpIHsKICAgICAgdmFyIG90aGVyU291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIG90aGVyU291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlV2l0aCA9IG1lcmdlV2l0aDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMKdmFyIHJlcXVpcmVfbWluID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1pbiA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtaW4oY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpIDwgMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4IDwgeSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1pbiA9IG1pbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcwp2YXIgcmVxdWlyZV9tdWx0aWNhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubXVsdGljYXN0ID0gdm9pZCAwOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9Db25uZWN0YWJsZU9ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIGZ1bmN0aW9uIG11bHRpY2FzdChzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeSwgc2VsZWN0b3IpIHsKICAgICAgdmFyIHN1YmplY3RGYWN0b3J5ID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc3ViamVjdE9yU3ViamVjdEZhY3RvcnkpID8gc3ViamVjdE9yU3ViamVjdEZhY3RvcnkgOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc3ViamVjdE9yU3ViamVjdEZhY3Rvcnk7CiAgICAgIH07CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gY29ubmVjdF8xLmNvbm5lY3Qoc2VsZWN0b3IsIHsKICAgICAgICAgIGNvbm5lY3Rvcjogc3ViamVjdEZhY3RvcnkKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGUoc291cmNlLCBzdWJqZWN0RmFjdG9yeSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tdWx0aWNhc3QgPSBtdWx0aWNhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMKdmFyIHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgb25FcnJvclJlc3VtZU5leHRfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHQoKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0V2l0aCgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIG5leHRTb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShzb3VyY2VzKTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKG5leHRTb3VyY2VzKSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gb25FcnJvclJlc3VtZU5leHRXaXRoOwogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHQgPSBvbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wYWlyd2lzZS5qcwp2YXIgcmVxdWlyZV9wYWlyd2lzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGFpcndpc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJ3aXNlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHBhaXJ3aXNlKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXY7CiAgICAgICAgdmFyIGhhc1ByZXYgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHAgPSBwcmV2OwogICAgICAgICAgcHJldiA9IHZhbHVlOwogICAgICAgICAgaGFzUHJldiAmJiBzdWJzY3JpYmVyLm5leHQoW3AsIHZhbHVlXSk7CiAgICAgICAgICBoYXNQcmV2ID0gdHJ1ZTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGFpcndpc2UgPSBwYWlyd2lzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3BsdWNrLmpzCnZhciByZXF1aXJlX3BsdWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wbHVjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGx1Y2sgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgZnVuY3Rpb24gcGx1Y2soKSB7CiAgICAgIHZhciBwcm9wZXJ0aWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgcHJvcGVydGllc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBsZW5ndGggPSBwcm9wZXJ0aWVzLmxlbmd0aDsKICAgICAgaWYgKGxlbmd0aCA9PT0gMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigibGlzdCBvZiBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBlbXB0eS4iKTsKICAgICAgfQogICAgICByZXR1cm4gbWFwXzEubWFwKGZ1bmN0aW9uKHgpIHsKICAgICAgICB2YXIgY3VycmVudFByb3AgPSB4OwogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKICAgICAgICAgIHZhciBwID0gY3VycmVudFByb3AgPT09IG51bGwgfHwgY3VycmVudFByb3AgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGN1cnJlbnRQcm9wW3Byb3BlcnRpZXNbaV1dOwogICAgICAgICAgaWYgKHR5cGVvZiBwICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgICBjdXJyZW50UHJvcCA9IHA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY3VycmVudFByb3A7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGx1Y2sgPSBwbHVjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2guanMKdmFyIHJlcXVpcmVfcHVibGlzaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBtdWx0aWNhc3RfMSA9IHJlcXVpcmVfbXVsdGljYXN0KCk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBzZWxlY3RvciA/IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdChzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfSA6IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBtdWx0aWNhc3RfMS5tdWx0aWNhc3QobmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpKHNvdXJjZSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoID0gcHVibGlzaDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaEJlaGF2aW9yID0gdm9pZCAwOwogICAgdmFyIEJlaGF2aW9yU3ViamVjdF8xID0gcmVxdWlyZV9CZWhhdmlvclN1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoQmVoYXZpb3IoaW5pdGlhbFZhbHVlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3QoaW5pdGlhbFZhbHVlKTsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YmplY3Q7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBwdWJsaXNoQmVoYXZpb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoTGFzdC5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoTGFzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaExhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU3ViamVjdF8xID0gcmVxdWlyZV9Bc3luY1N1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoTGFzdCgpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHJldHVybiBuZXcgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlKHNvdXJjZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3ViamVjdDsKICAgICAgICB9KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gcHVibGlzaExhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoUmVwbGF5LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hSZXBsYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSB2b2lkIDA7CiAgICB2YXIgUmVwbGF5U3ViamVjdF8xID0gcmVxdWlyZV9SZXBsYXlTdWJqZWN0KCk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gcHVibGlzaFJlcGxheShidWZmZXJTaXplLCB3aW5kb3dUaW1lLCBzZWxlY3Rvck9yU2NoZWR1bGVyLCB0aW1lc3RhbXBQcm92aWRlcikgewogICAgICBpZiAoc2VsZWN0b3JPclNjaGVkdWxlciAmJiAhaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICB0aW1lc3RhbXBQcm92aWRlciA9IHNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIHNlbGVjdG9yID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikgPyBzZWxlY3Rvck9yU2NoZWR1bGVyIDogdm9pZCAwOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdChuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIpLCBzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBwdWJsaXNoUmVwbGF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmFjZVdpdGguanMKdmFyIHJlcXVpcmVfcmFjZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JhY2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYWNlV2l0aCA9IHZvaWQgMDsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcmFjZVdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gIW90aGVyU291cmNlcy5sZW5ndGggPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmFjZV8xLnJhY2VJbml0KF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChvdGhlclNvdXJjZXMpKSkoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmFjZVdpdGggPSByYWNlV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcwp2YXIgcmVxdWlyZV9yZXBlYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVwZWF0ID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gcmVwZWF0Mihjb3VudE9yQ29uZmlnKSB7CiAgICAgIHZhciBfYTsKICAgICAgdmFyIGNvdW50ID0gSW5maW5pdHk7CiAgICAgIHZhciBkZWxheTsKICAgICAgaWYgKGNvdW50T3JDb25maWcgIT0gbnVsbCkgewogICAgICAgIGlmICh0eXBlb2YgY291bnRPckNvbmZpZyA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIF9hID0gY291bnRPckNvbmZpZy5jb3VudCwgY291bnQgPSBfYSA9PT0gdm9pZCAwID8gSW5maW5pdHkgOiBfYSwgZGVsYXkgPSBjb3VudE9yQ29uZmlnLmRlbGF5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb3VudCA9IGNvdW50T3JDb25maWc7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc29GYXIgPSAwOwogICAgICAgIHZhciBzb3VyY2VTdWI7CiAgICAgICAgdmFyIHJlc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzb3VyY2VTdWIgPT09IG51bGwgfHwgc291cmNlU3ViID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzb3VyY2VTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNvdXJjZVN1YiA9IG51bGw7CiAgICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCkgewogICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoc29GYXIpKTsKICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIG5vdGlmaWVyU3Vic2NyaWJlcl8xLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIG5vdGlmaWVyLnN1YnNjcmliZShub3RpZmllclN1YnNjcmliZXJfMSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZVRvU291cmNlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBzb3VyY2VTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoKytzb0ZhciA8IGNvdW50KSB7CiAgICAgICAgICAgICAgaWYgKHNvdXJjZVN1YikgewogICAgICAgICAgICAgICAgcmVzdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Vuc3ViKSB7CiAgICAgICAgICAgIHJlc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdCA9IHJlcGVhdDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXBlYXRXaGVuLmpzCnZhciByZXF1aXJlX3JlcGVhdFdoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdFdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdFdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGNvbXBsZXRpb25zJDsKICAgICAgICB2YXIgaXNOb3RpZmllckNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc01haW5Db21wbGV0ZSAmJiBpc05vdGlmaWVyQ29tcGxldGUgJiYgKHN1YnNjcmliZXIuY29tcGxldGUoKSwgdHJ1ZSk7CiAgICAgICAgfTsKICAgICAgICB2YXIgZ2V0Q29tcGxldGlvblN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghY29tcGxldGlvbnMkKSB7CiAgICAgICAgICAgIGNvbXBsZXRpb25zJCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoY29tcGxldGlvbnMkKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZUZvclJlcGVhdFdoZW4oKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Jlc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlzTm90aWZpZXJDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29tcGxldGlvbnMkOwogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJlcGVhdFdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgIWNoZWNrQ29tcGxldGUoKSAmJiBnZXRDb21wbGV0aW9uU3ViamVjdCgpLm5leHQoKTsKICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSByZXBlYXRXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmV0cnkuanMKdmFyIHJlcXVpcmVfcmV0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JldHJ5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXRyeSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHJldHJ5KGNvbmZpZ09yQ291bnQpIHsKICAgICAgaWYgKGNvbmZpZ09yQ291bnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZ09yQ291bnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICB2YXIgY29uZmlnOwogICAgICBpZiAoY29uZmlnT3JDb3VudCAmJiB0eXBlb2YgY29uZmlnT3JDb3VudCA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25maWcgPSBjb25maWdPckNvdW50OwogICAgICB9IGVsc2UgewogICAgICAgIGNvbmZpZyA9IHsKICAgICAgICAgIGNvdW50OiBjb25maWdPckNvdW50CiAgICAgICAgfTsKICAgICAgfQogICAgICB2YXIgX2EgPSBjb25maWcuY291bnQsIGNvdW50ID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIGRlbGF5ID0gY29uZmlnLmRlbGF5LCBfYiA9IGNvbmZpZy5yZXNldE9uU3VjY2VzcywgcmVzZXRPblN1Y2Nlc3MgPSBfYiA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYjsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvRmFyID0gMDsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJldHJ5ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChyZXNldE9uU3VjY2VzcykgewogICAgICAgICAgICAgIHNvRmFyID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgaWYgKHNvRmFyKysgPCBjb3VudCkgewogICAgICAgICAgICAgIHZhciByZXN1Yl8xID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGlmIChkZWxheSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoZXJyLCBzb0ZhcikpOwogICAgICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBub3RpZmllclN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBub3RpZmllci5zdWJzY3JpYmUobm90aWZpZXJTdWJzY3JpYmVyXzEpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5KCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJldHJ5ID0gcmV0cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMKdmFyIHJlcXVpcmVfcmV0cnlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJldHJ5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmV0cnlXaGVuKG5vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN5bmNSZXN1YiA9IGZhbHNlOwogICAgICAgIHZhciBlcnJvcnMkOwogICAgICAgIHZhciBzdWJzY3JpYmVGb3JSZXRyeVdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlubmVyU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICBpZiAoIWVycm9ycyQpIHsKICAgICAgICAgICAgICBlcnJvcnMkID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG5vdGlmaWVyKGVycm9ycyQpKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGlubmVyU3ViID8gc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCkgOiBzeW5jUmVzdWIgPSB0cnVlOwogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZXJyb3JzJCkgewogICAgICAgICAgICAgIGVycm9ycyQubmV4dChlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Jlc3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgICAgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmV0cnlXaGVuID0gcmV0cnlXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzCnZhciByZXF1aXJlX3NhbXBsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNhbXBsZShub3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlID0gc2FtcGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlVGltZS5qcwp2YXIgcmVxdWlyZV9zYW1wbGVUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zYW1wbGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgdmFyIGludGVydmFsXzEgPSByZXF1aXJlX2ludGVydmFsKCk7CiAgICBmdW5jdGlvbiBzYW1wbGVUaW1lKHBlcmlvZCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZShpbnRlcnZhbF8xLmludGVydmFsKHBlcmlvZCwgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gc2FtcGxlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2Nhbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBzY2FuSW50ZXJuYWxzXzEgPSByZXF1aXJlX3NjYW5JbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIHNjYW4oYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjYW4gPSBzY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2VxdWVuY2VFcXVhbC5qcwp2YXIgcmVxdWlyZV9zZXF1ZW5jZUVxdWFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zZXF1ZW5jZUVxdWFsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zZXF1ZW5jZUVxdWFsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBzZXF1ZW5jZUVxdWFsKGNvbXBhcmVUbywgY29tcGFyYXRvcikgewogICAgICBpZiAoY29tcGFyYXRvciA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29tcGFyYXRvciA9IGZ1bmN0aW9uKGEsIGIpIHsKICAgICAgICAgIHJldHVybiBhID09PSBiOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBiU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oaXNFcXVhbCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlzRXF1YWwpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNyZWF0ZVN1YnNjcmliZXIgPSBmdW5jdGlvbihzZWxmU3RhdGUsIG90aGVyU3RhdGUpIHsKICAgICAgICAgIHZhciBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIHZhciBidWZmZXIgPSBvdGhlclN0YXRlLmJ1ZmZlciwgY29tcGxldGUgPSBvdGhlclN0YXRlLmNvbXBsZXRlOwogICAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGNvbXBsZXRlID8gZW1pdChmYWxzZSkgOiBzZWxmU3RhdGUuYnVmZmVyLnB1c2goYSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIWNvbXBhcmF0b3IoYSwgYnVmZmVyLnNoaWZ0KCkpICYmIGVtaXQoZmFsc2UpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2VsZlN0YXRlLmNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgdmFyIGNvbXBsZXRlID0gb3RoZXJTdGF0ZS5jb21wbGV0ZSwgYnVmZmVyID0gb3RoZXJTdGF0ZS5idWZmZXI7CiAgICAgICAgICAgIGNvbXBsZXRlICYmIGVtaXQoYnVmZmVyLmxlbmd0aCA9PT0gMCk7CiAgICAgICAgICAgIHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSBudWxsIHx8IHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gc2VxdWVuY2VFcXVhbFN1YnNjcmliZXI7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGNyZWF0ZVN1YnNjcmliZXIoYVN0YXRlLCBiU3RhdGUpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY29tcGFyZVRvKS5zdWJzY3JpYmUoY3JlYXRlU3Vic2NyaWJlcihiU3RhdGUsIGFTdGF0ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBzZXF1ZW5jZUVxdWFsOwogICAgZnVuY3Rpb24gY3JlYXRlU3RhdGUoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYnVmZmVyOiBbXSwKICAgICAgICBjb21wbGV0ZTogZmFsc2UKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NoYXJlLmpzCnZhciByZXF1aXJlX3NoYXJlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hhcmUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc2hhcmUob3B0aW9ucykgewogICAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7CiAgICAgICAgb3B0aW9ucyA9IHt9OwogICAgICB9CiAgICAgIHZhciBfYSA9IG9wdGlvbnMuY29ubmVjdG9yLCBjb25uZWN0b3IgPSBfYSA9PT0gdm9pZCAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9IDogX2EsIF9iID0gb3B0aW9ucy5yZXNldE9uRXJyb3IsIHJlc2V0T25FcnJvciA9IF9iID09PSB2b2lkIDAgPyB0cnVlIDogX2IsIF9jID0gb3B0aW9ucy5yZXNldE9uQ29tcGxldGUsIHJlc2V0T25Db21wbGV0ZSA9IF9jID09PSB2b2lkIDAgPyB0cnVlIDogX2MsIF9kID0gb3B0aW9ucy5yZXNldE9uUmVmQ291bnRaZXJvLCByZXNldE9uUmVmQ291bnRaZXJvID0gX2QgPT09IHZvaWQgMCA/IHRydWUgOiBfZDsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHdyYXBwZXJTb3VyY2UpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbjsKICAgICAgICB2YXIgcmVzZXRDb25uZWN0aW9uOwogICAgICAgIHZhciBzdWJqZWN0OwogICAgICAgIHZhciByZWZDb3VudCA9IDA7CiAgICAgICAgdmFyIGhhc0NvbXBsZXRlZCA9IGZhbHNlOwogICAgICAgIHZhciBoYXNFcnJvcmVkID0gZmFsc2U7CiAgICAgICAgdmFyIGNhbmNlbFJlc2V0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXNldENvbm5lY3Rpb24gPT09IG51bGwgfHwgcmVzZXRDb25uZWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiByZXNldENvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IHZvaWQgMDsKICAgICAgICB9OwogICAgICAgIHZhciByZXNldCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgIGNvbm5lY3Rpb24gPSBzdWJqZWN0ID0gdm9pZCAwOwogICAgICAgICAgaGFzQ29tcGxldGVkID0gaGFzRXJyb3JlZCA9IGZhbHNlOwogICAgICAgIH07CiAgICAgICAgdmFyIHJlc2V0QW5kVW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBjb25uID0gY29ubmVjdGlvbjsKICAgICAgICAgIHJlc2V0KCk7CiAgICAgICAgICBjb25uID09PSBudWxsIHx8IGNvbm4gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbm4udW5zdWJzY3JpYmUoKTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICAgIHJlZkNvdW50Kys7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yZWQgJiYgIWhhc0NvbXBsZXRlZCkgewogICAgICAgICAgICBjYW5jZWxSZXNldCgpOwogICAgICAgICAgfQogICAgICAgICAgdmFyIGRlc3QgPSBzdWJqZWN0ID0gc3ViamVjdCAhPT0gbnVsbCAmJiBzdWJqZWN0ICE9PSB2b2lkIDAgPyBzdWJqZWN0IDogY29ubmVjdG9yKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmVmQ291bnQtLTsKICAgICAgICAgICAgaWYgKHJlZkNvdW50ID09PSAwICYmICFoYXNFcnJvcmVkICYmICFoYXNDb21wbGV0ZWQpIHsKICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldEFuZFVuc3Vic2NyaWJlLCByZXNldE9uUmVmQ291bnRaZXJvKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgICBkZXN0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIGlmICghY29ubmVjdGlvbiAmJiByZWZDb3VudCA+IDApIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZGVzdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgICAgIGhhc0Vycm9yZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uRXJyb3IsIGVycik7CiAgICAgICAgICAgICAgICBkZXN0LmVycm9yKGVycik7CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBoYXNDb21wbGV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uQ29tcGxldGUpOwogICAgICAgICAgICAgICAgZGVzdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpLnN1YnNjcmliZShjb25uZWN0aW9uKTsKICAgICAgICAgIH0KICAgICAgICB9KSh3cmFwcGVyU291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnNoYXJlID0gc2hhcmU7CiAgICBmdW5jdGlvbiBoYW5kbGVSZXNldChyZXNldCwgb24pIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAyOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gdHJ1ZSkgewogICAgICAgIHJlc2V0KCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gZmFsc2UpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdmFyIG9uU3Vic2NyaWJlciA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICByZXNldCgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20ob24uYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSkuc3Vic2NyaWJlKG9uU3Vic2NyaWJlcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcwp2YXIgcmVxdWlyZV9zaGFyZVJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmVSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNoYXJlUmVwbGF5ID0gdm9pZCAwOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgdmFyIHNoYXJlXzEgPSByZXF1aXJlX3NoYXJlKCk7CiAgICBmdW5jdGlvbiBzaGFyZVJlcGxheShjb25maWdPckJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIGJ1ZmZlclNpemU7CiAgICAgIHZhciByZWZDb3VudCA9IGZhbHNlOwogICAgICBpZiAoY29uZmlnT3JCdWZmZXJTaXplICYmIHR5cGVvZiBjb25maWdPckJ1ZmZlclNpemUgPT09ICJvYmplY3QiKSB7CiAgICAgICAgX2EgPSBjb25maWdPckJ1ZmZlclNpemUuYnVmZmVyU2l6ZSwgYnVmZmVyU2l6ZSA9IF9hID09PSB2b2lkIDAgPyBJbmZpbml0eSA6IF9hLCBfYiA9IGNvbmZpZ09yQnVmZmVyU2l6ZS53aW5kb3dUaW1lLCB3aW5kb3dUaW1lID0gX2IgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2IsIF9jID0gY29uZmlnT3JCdWZmZXJTaXplLnJlZkNvdW50LCByZWZDb3VudCA9IF9jID09PSB2b2lkIDAgPyBmYWxzZSA6IF9jLCBzY2hlZHVsZXIgPSBjb25maWdPckJ1ZmZlclNpemUuc2NoZWR1bGVyOwogICAgICB9IGVsc2UgewogICAgICAgIGJ1ZmZlclNpemUgPSBjb25maWdPckJ1ZmZlclNpemUgIT09IG51bGwgJiYgY29uZmlnT3JCdWZmZXJTaXplICE9PSB2b2lkIDAgPyBjb25maWdPckJ1ZmZlclNpemUgOiBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZSh7CiAgICAgICAgY29ubmVjdG9yOiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKTsKICAgICAgICB9LAogICAgICAgIHJlc2V0T25FcnJvcjogdHJ1ZSwKICAgICAgICByZXNldE9uQ29tcGxldGU6IGZhbHNlLAogICAgICAgIHJlc2V0T25SZWZDb3VudFplcm86IHJlZkNvdW50CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBzaGFyZVJlcGxheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcwp2YXIgcmVxdWlyZV9zaW5nbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2luZ2xlID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNpbmdsZShwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBzaW5nbGVWYWx1ZTsKICAgICAgICB2YXIgc2VlblZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc2VlblZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGlmICghcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBoYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLmVycm9yKG5ldyBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcigiVG9vIG1hbnkgbWF0Y2hpbmcgdmFsdWVzIikpOwogICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgIHNpbmdsZVZhbHVlID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHNpbmdsZVZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihzZWVuVmFsdWUgPyBuZXcgTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3IoIk5vIG1hdGNoaW5nIHZhbHVlcyIpIDogbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaW5nbGUgPSBzaW5nbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwLmpzCnZhciByZXF1aXJlX3NraXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXAgPSB2b2lkIDA7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgZnVuY3Rpb24gc2tpcChjb3VudCkgewogICAgICByZXR1cm4gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKF8sIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGNvdW50IDw9IGluZGV4OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNraXAgPSBza2lwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMKdmFyIHJlcXVpcmVfc2tpcExhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwTGFzdCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNraXBMYXN0KHNraXBDb3VudCkgewogICAgICByZXR1cm4gc2tpcENvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHJpbmcgPSBuZXcgQXJyYXkoc2tpcENvdW50KTsKICAgICAgICB2YXIgc2VlbiA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciB2YWx1ZUluZGV4ID0gc2VlbisrOwogICAgICAgICAgaWYgKHZhbHVlSW5kZXggPCBza2lwQ291bnQpIHsKICAgICAgICAgICAgcmluZ1t2YWx1ZUluZGV4XSA9IHZhbHVlOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFyIGluZGV4ID0gdmFsdWVJbmRleCAlIHNraXBDb3VudDsKICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gcmluZ1tpbmRleF07CiAgICAgICAgICAgIHJpbmdbaW5kZXhdID0gdmFsdWU7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChvbGRWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJpbmcgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcExhc3QgPSBza2lwTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcwp2YXIgcmVxdWlyZV9za2lwVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2tpcFVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiBza2lwVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB0YWtpbmcgPSBmYWxzZTsKICAgICAgICB2YXIgc2tpcFN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBza2lwU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBza2lwU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2tpcFN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRha2luZyA9IHRydWU7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKHNraXBTdWJzY3JpYmVyKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRha2luZyAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwVW50aWwgPSBza2lwVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMKdmFyIHJlcXVpcmVfc2tpcFdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXBXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBza2lwV2hpbGUocHJlZGljYXRlKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgdGFraW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuICh0YWtpbmcgfHwgKHRha2luZyA9ICFwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspKSkgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcFdoaWxlID0gc2tpcFdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzCnZhciByZXF1aXJlX3N0YXJ0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdGFydFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3RhcnRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIodmFsdWVzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIChzY2hlZHVsZXIgPyBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UsIHNjaGVkdWxlcikgOiBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3RhcnRXaXRoID0gc3RhcnRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBjaGVja0NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNDb21wbGV0ZSAmJiAhaW5uZXJTdWJzY3JpYmVyICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpbm5lclN1YnNjcmliZXIgPT09IG51bGwgfHwgaW5uZXJTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbm5lclN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBpbm5lckluZGV4ID0gMDsKICAgICAgICAgIHZhciBvdXRlckluZGV4ID0gaW5kZXgrKzsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KHZhbHVlLCBvdXRlckluZGV4KSkuc3Vic2NyaWJlKGlubmVyU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihpbm5lclZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQocmVzdWx0U2VsZWN0b3IgPyByZXN1bHRTZWxlY3Rvcih2YWx1ZSwgaW5uZXJWYWx1ZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCsrKSA6IGlubmVyVmFsdWUpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSBzd2l0Y2hNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMKdmFyIHJlcXVpcmVfc3dpdGNoQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHZvaWQgMDsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaEFsbCgpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHN3aXRjaEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3dpdGNoTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gc3dpdGNoTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gc3dpdGNoTWFwXzEuc3dpdGNoTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IHN3aXRjaE1hcF8xLnN3aXRjaE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gc3dpdGNoTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hTY2FuLmpzCnZhciByZXF1aXJlX3N3aXRjaFNjYW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaFNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaFNjYW4gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3dpdGNoU2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgZnVuY3Rpb24oXywgaW5uZXJWYWx1ZSkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gaW5uZXJWYWx1ZSwgaW5uZXJWYWx1ZTsKICAgICAgICB9KShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGF0ZSA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hTY2FuID0gc3dpdGNoU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcwp2YXIgcmVxdWlyZV90YWtlVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZVVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiB0YWtlVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICAhc3Vic2NyaWJlci5jbG9zZWQgJiYgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlVW50aWwgPSB0YWtlVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMKdmFyIHJlcXVpcmVfdGFrZVdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlV2hpbGUocHJlZGljYXRlLCBpbmNsdXNpdmUpIHsKICAgICAgaWYgKGluY2x1c2l2ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgaW5jbHVzaXZlID0gZmFsc2U7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciByZXN1bHQgPSBwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspOwogICAgICAgICAgKHJlc3VsdCB8fCBpbmNsdXNpdmUpICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAhcmVzdWx0ICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZVdoaWxlID0gdGFrZVdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzCnZhciByZXF1aXJlX3RhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YXAgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiB0YXAob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICB2YXIgdGFwT2JzZXJ2ZXIgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgZXJyb3IgfHwgY29tcGxldGUgPyB7IG5leHQ6IG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUgfSA6IG9ic2VydmVyT3JOZXh0OwogICAgICByZXR1cm4gdGFwT2JzZXJ2ZXIgPyBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgKF9hID0gdGFwT2JzZXJ2ZXIuc3Vic2NyaWJlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgdmFyIGlzVW5zdWIgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIHZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgaXNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hMi5jYWxsKHRhcE9ic2VydmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHZhciBfYTI7CiAgICAgICAgICBpc1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICAoX2EyID0gdGFwT2JzZXJ2ZXIuZXJyb3IpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyLCBfYjsKICAgICAgICAgIGlmIChpc1Vuc3ViKSB7CiAgICAgICAgICAgIChfYTIgPSB0YXBPYnNlcnZlci51bnN1YnNjcmliZSkgPT09IG51bGwgfHwgX2EyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYTIuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgICB9CiAgICAgICAgICAoX2IgPSB0YXBPYnNlcnZlci5maW5hbGl6ZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwodGFwT2JzZXJ2ZXIpOwogICAgICAgIH0pKTsKICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfQogICAgZXhwb3J0czIudGFwID0gdGFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGUuanMKdmFyIHJlcXVpcmVfdGhyb3R0bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm90dGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gdGhyb3R0bGUoZHVyYXRpb25TZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSBjb25maWcgIT09IG51bGwgJiYgY29uZmlnICE9PSB2b2lkIDAgPyBjb25maWcgOiB7fSwgX2IgPSBfYS5sZWFkaW5nLCBsZWFkaW5nID0gX2IgPT09IHZvaWQgMCA/IHRydWUgOiBfYiwgX2MgPSBfYS50cmFpbGluZywgdHJhaWxpbmcgPSBfYyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYzsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgc2VuZFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmRUaHJvdHRsaW5nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB0aHJvdHRsZWQgPT09IG51bGwgfHwgdGhyb3R0bGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aHJvdHRsZWQudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgICBpZiAodHJhaWxpbmcpIHsKICAgICAgICAgICAgc2VuZCgpOwogICAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwVGhyb3R0bGluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0VGhyb3R0bGUgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRocm90dGxlZCA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmRUaHJvdHRsaW5nLCBjbGVhbnVwVGhyb3R0bGluZykpOwogICAgICAgIH07CiAgICAgICAgdmFyIHNlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBzZW5kVmFsdWU7CiAgICAgICAgICAgIHNlbmRWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICFpc0NvbXBsZXRlICYmIHN0YXJ0VGhyb3R0bGUodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHNlbmRWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgISh0aHJvdHRsZWQgJiYgIXRocm90dGxlZC5jbG9zZWQpICYmIChsZWFkaW5nID8gc2VuZCgpIDogc3RhcnRUaHJvdHRsZSh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaXNDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAhKHRyYWlsaW5nICYmIGhhc1ZhbHVlICYmIHRocm90dGxlZCAmJiAhdGhyb3R0bGVkLmNsb3NlZCkgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHRocm90dGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzCnZhciByZXF1aXJlX3Rocm90dGxlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiB0aHJvdHRsZVRpbWUoZHVyYXRpb24sIHNjaGVkdWxlciwgY29uZmlnKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uJCA9IHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbiQ7CiAgICAgIH0sIGNvbmZpZyk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB0aHJvdHRsZVRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfdGltZUludGVydmFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRpbWVJbnRlcnZhbChzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxhc3QgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBub3cgLSBsYXN0OwogICAgICAgICAgbGFzdCA9IG5vdzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgVGltZUludGVydmFsKHZhbHVlLCBpbnRlcnZhbCkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSB0aW1lSW50ZXJ2YWw7CiAgICB2YXIgVGltZUludGVydmFsID0gLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBUaW1lSW50ZXJ2YWwyKHZhbHVlLCBpbnRlcnZhbCkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7CiAgICAgIH0KICAgICAgcmV0dXJuIFRpbWVJbnRlcnZhbDI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5UaW1lSW50ZXJ2YWwgPSBUaW1lSW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0V2l0aC5qcwp2YXIgcmVxdWlyZV90aW1lb3V0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIHRpbWVvdXRfMSA9IHJlcXVpcmVfdGltZW91dCgpOwogICAgZnVuY3Rpb24gdGltZW91dFdpdGgoZHVlLCB3aXRoT2JzZXJ2YWJsZSwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBmaXJzdDsKICAgICAgdmFyIGVhY2g7CiAgICAgIHZhciBfd2l0aDsKICAgICAgc2NoZWR1bGVyID0gc2NoZWR1bGVyICE9PSBudWxsICYmIHNjaGVkdWxlciAhPT0gdm9pZCAwID8gc2NoZWR1bGVyIDogYXN5bmNfMS5hc3luYzsKICAgICAgaWYgKGlzRGF0ZV8xLmlzVmFsaWREYXRlKGR1ZSkpIHsKICAgICAgICBmaXJzdCA9IGR1ZTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZHVlID09PSAibnVtYmVyIikgewogICAgICAgIGVhY2ggPSBkdWU7CiAgICAgIH0KICAgICAgaWYgKHdpdGhPYnNlcnZhYmxlKSB7CiAgICAgICAgX3dpdGggPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB3aXRoT2JzZXJ2YWJsZTsKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG9ic2VydmFibGUgcHJvdmlkZWQgdG8gc3dpdGNoIHRvIik7CiAgICAgIH0KICAgICAgaWYgKGZpcnN0ID09IG51bGwgJiYgZWFjaCA9PSBudWxsKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gdGltZW91dCBwcm92aWRlZC4iKTsKICAgICAgfQogICAgICByZXR1cm4gdGltZW91dF8xLnRpbWVvdXQoewogICAgICAgIGZpcnN0LAogICAgICAgIGVhY2gsCiAgICAgICAgc2NoZWR1bGVyLAogICAgICAgIHdpdGg6IF93aXRoCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dFdpdGggPSB0aW1lb3V0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcwp2YXIgcmVxdWlyZV90aW1lc3RhbXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXN0YW1wID0gdm9pZCAwOwogICAgdmFyIGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9kYXRlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiB0aW1lc3RhbXAyKHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIGlmICh0aW1lc3RhbXBQcm92aWRlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGltZXN0YW1wUHJvdmlkZXIgPSBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMS5kYXRlVGltZXN0YW1wUHJvdmlkZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHJldHVybiB7IHZhbHVlLCB0aW1lc3RhbXA6IHRpbWVzdGFtcFByb3ZpZGVyLm5vdygpIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZXN0YW1wID0gdGltZXN0YW1wMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcwp2YXIgcmVxdWlyZV93aW5kb3cgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93ID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiB3aW5kb3cyKHdpbmRvd0JvdW5kYXJpZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3dTdWJqZWN0ID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHZhciBlcnJvckhhbmRsZXIgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93U3ViamVjdCA9PT0gbnVsbCB8fCB3aW5kb3dTdWJqZWN0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiB3aW5kb3dTdWJqZWN0Lm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGVycm9ySGFuZGxlcikpOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbSh3aW5kb3dCb3VuZGFyaWVzKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3AsIGVycm9ySGFuZGxlcikpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QgPT09IG51bGwgfHwgd2luZG93U3ViamVjdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93U3ViamVjdC51bnN1YnNjcmliZSgpOwogICAgICAgICAgd2luZG93U3ViamVjdCA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3cgPSB3aW5kb3cyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93Q291bnQuanMKdmFyIHJlcXVpcmVfd2luZG93Q291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd0NvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aW5kb3dDb3VudCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dDb3VudCh3aW5kb3dTaXplLCBzdGFydFdpbmRvd0V2ZXJ5KSB7CiAgICAgIGlmIChzdGFydFdpbmRvd0V2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydFdpbmRvd0V2ZXJ5ID0gMDsKICAgICAgfQogICAgICB2YXIgc3RhcnRFdmVyeSA9IHN0YXJ0V2luZG93RXZlcnkgPiAwID8gc3RhcnRXaW5kb3dFdmVyeSA6IHdpbmRvd1NpemU7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtuZXcgU3ViamVjdF8xLlN1YmplY3QoKV07CiAgICAgICAgdmFyIHN0YXJ0cyA9IFtdOwogICAgICAgIHZhciBjb3VudCA9IDA7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd3NbMF0uYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIHdpbmRvd3NfMSA9IF9fdmFsdWVzKHdpbmRvd3MpLCB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCk7ICF3aW5kb3dzXzFfMS5kb25lOyB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgd2luZG93XzEgPSB3aW5kb3dzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NfMV8xICYmICF3aW5kb3dzXzFfMS5kb25lICYmIChfYSA9IHdpbmRvd3NfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgYyA9IGNvdW50IC0gd2luZG93U2l6ZSArIDE7CiAgICAgICAgICBpZiAoYyA+PSAwICYmIGMgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCsrY291bnQgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93XzIpOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93XzIuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKHdpbmRvd3MubGVuZ3RoID4gMCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdoaWxlICh3aW5kb3dzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGFydHMgPSBudWxsOwogICAgICAgICAgd2luZG93cyA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpbmRvd0NvdW50ID0gd2luZG93Q291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUaW1lLmpzCnZhciByZXF1aXJlX3dpbmRvd1RpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RpbWUgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUaW1lKHdpbmRvd1RpbWVTcGFuKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciBvdGhlckFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAxOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlckFyZ3NbX2kgLSAxXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IChfYSA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIob3RoZXJBcmdzKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgdmFyIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgPSAoX2IgPSBvdGhlckFyZ3NbMF0pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IG51bGw7CiAgICAgIHZhciBtYXhXaW5kb3dTaXplID0gb3RoZXJBcmdzWzFdIHx8IEluZmluaXR5OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd1JlY29yZHMgPSBbXTsKICAgICAgICB2YXIgcmVzdGFydE9uQ2xvc2UgPSBmYWxzZTsKICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gcmVjb3JkLndpbmRvdywgc3VicyA9IHJlY29yZC5zdWJzOwogICAgICAgICAgd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vicy51bnN1YnNjcmliZSgpOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd1JlY29yZHMsIHJlY29yZCk7CiAgICAgICAgICByZXN0YXJ0T25DbG9zZSAmJiBzdGFydFdpbmRvdygpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0V2luZG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAod2luZG93UmVjb3JkcykgewogICAgICAgICAgICB2YXIgc3VicyA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoc3Vicyk7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgd2luZG93OiB3aW5kb3dfMSwKICAgICAgICAgICAgICBzdWJzLAogICAgICAgICAgICAgIHNlZW46IDAKICAgICAgICAgICAgfTsKICAgICAgICAgICAgd2luZG93UmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd18xLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGNsb3NlV2luZG93KHJlY29yZF8xKTsKICAgICAgICAgICAgfSwgd2luZG93VGltZVNwYW4pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgaWYgKHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgIT09IG51bGwgJiYgd2luZG93Q3JlYXRpb25JbnRlcnZhbCA+PSAwKSB7CiAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBzdGFydFdpbmRvdywgd2luZG93Q3JlYXRpb25JbnRlcnZhbCwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3RhcnRPbkNsb3NlID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgc3RhcnRXaW5kb3coKTsKICAgICAgICB2YXIgbG9vcCA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93UmVjb3Jkcy5zbGljZSgpLmZvckVhY2goY2IpOwogICAgICAgIH07CiAgICAgICAgdmFyIHRlcm1pbmF0ZSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBsb29wKGZ1bmN0aW9uKF9hMikgewogICAgICAgICAgICB2YXIgd2luZG93MiA9IF9hMi53aW5kb3c7CiAgICAgICAgICAgIHJldHVybiBjYih3aW5kb3cyKTsKICAgICAgICAgIH0pOwogICAgICAgICAgY2Ioc3Vic2NyaWJlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbG9vcChmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgICAgcmVjb3JkLndpbmRvdy5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgbWF4V2luZG93U2l6ZSA8PSArK3JlY29yZC5zZWVuICYmIGNsb3NlV2luZG93KHJlY29yZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmVycm9yKGVycik7CiAgICAgICAgICB9KTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93UmVjb3JkcyA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUaW1lID0gd2luZG93VGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcwp2YXIgcmVxdWlyZV93aW5kb3dUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93VG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1RvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtdOwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93Mik7CiAgICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgIHZhciBjbG9zZVdpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUod2luZG93cywgd2luZG93Mik7CiAgICAgICAgICAgIHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgICAgY2xvc2luZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24uYWRkKGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGNsb3NlV2luZG93LCBub29wXzEubm9vcCwgaGFuZGxlRXJyb3IpKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB2YXIgd2luZG93c0NvcHkgPSB3aW5kb3dzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciB3aW5kb3dzQ29weV8xID0gX192YWx1ZXMod2luZG93c0NvcHkpLCB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKTsgIXdpbmRvd3NDb3B5XzFfMS5kb25lOyB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IHdpbmRvd3NDb3B5XzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NDb3B5XzFfMSAmJiAhd2luZG93c0NvcHlfMV8xLmRvbmUgJiYgKF9hID0gd2luZG93c0NvcHlfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBoYW5kbGVFcnJvciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoMCA8IHdpbmRvd3MubGVuZ3RoKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUb2dnbGUgPSB3aW5kb3dUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dXaGVuLmpzCnZhciByZXF1aXJlX3dpbmRvd1doZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1doZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1doZW4gPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1doZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93MjsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXI7CiAgICAgICAgdmFyIGhhbmRsZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aW5kb3cyLmVycm9yKGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICB2YXIgb3BlbldpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID09PSBudWxsIHx8IHdpbmRvdzIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgIHdpbmRvdzIgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKCkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoY2xvc2luZ1N1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgb3BlbldpbmRvdywgb3BlbldpbmRvdywgaGFuZGxlRXJyb3IpKTsKICAgICAgICB9OwogICAgICAgIG9wZW5XaW5kb3coKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHdpbmRvdzIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93V2hlbiA9IHdpbmRvd1doZW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aXRoTGF0ZXN0RnJvbS5qcwp2YXIgcmVxdWlyZV93aXRoTGF0ZXN0RnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIGZ1bmN0aW9uIHdpdGhMYXRlc3RGcm9tKCkgewogICAgICB2YXIgaW5wdXRzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgaW5wdXRzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHByb2plY3QgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoaW5wdXRzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBsZW4gPSBpbnB1dHMubGVuZ3RoOwogICAgICAgIHZhciBvdGhlclZhbHVlcyA9IG5ldyBBcnJheShsZW4pOwogICAgICAgIHZhciBoYXNWYWx1ZSA9IGlucHV0cy5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgICAgdmFyIHJlYWR5ID0gZmFsc2U7CiAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihpMikgewogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0c1tpMl0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgb3RoZXJWYWx1ZXNbaTJdID0gdmFsdWU7CiAgICAgICAgICAgIGlmICghcmVhZHkgJiYgIWhhc1ZhbHVlW2kyXSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlW2kyXSA9IHRydWU7CiAgICAgICAgICAgICAgKHJlYWR5ID0gaGFzVmFsdWUuZXZlcnkoaWRlbnRpdHlfMS5pZGVudGl0eSkpICYmIChoYXNWYWx1ZSA9IG51bGwpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgX2xvb3BfMShpKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmIChyZWFkeSkgewogICAgICAgICAgICB2YXIgdmFsdWVzID0gX19zcHJlYWRBcnJheShbdmFsdWVdLCBfX3JlYWQob3RoZXJWYWx1ZXMpKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QgPyBwcm9qZWN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSA6IHZhbHVlcyk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gd2l0aExhdGVzdEZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMKdmFyIHJlcXVpcmVfemlwQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcEFsbCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgam9pbkFsbEludGVybmFsc18xID0gcmVxdWlyZV9qb2luQWxsSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiB6aXBBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoemlwXzEuemlwLCBwcm9qZWN0KTsKICAgIH0KICAgIGV4cG9ydHMyLnppcEFsbCA9IHppcEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcC5qcwp2YXIgcmVxdWlyZV96aXAyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiB6aXAoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoc291cmNlcykpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuemlwID0gemlwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwV2l0aC5qcwp2YXIgcmVxdWlyZV96aXBXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBXaXRoID0gdm9pZCAwOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAyKCk7CiAgICBmdW5jdGlvbiB6aXBXaXRoKCkgewogICAgICB2YXIgb3RoZXJJbnB1dHMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlcklucHV0c1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJJbnB1dHMpKSk7CiAgICB9CiAgICBleHBvcnRzMi56aXBXaXRoID0gemlwV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW5kZXguanMKdmFyIHJlcXVpcmVfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBtW2tdOwogICAgICB9IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbCA9IGV4cG9ydHMyLmlpZiA9IGV4cG9ydHMyLmdlbmVyYXRlID0gZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IGV4cG9ydHMyLmZyb21FdmVudCA9IGV4cG9ydHMyLmZyb20gPSBleHBvcnRzMi5mb3JrSm9pbiA9IGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuZGVmZXIgPSBleHBvcnRzMi5jb25uZWN0YWJsZSA9IGV4cG9ydHMyLmNvbmNhdCA9IGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gZXhwb3J0czIuYmluZENhbGxiYWNrID0gZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGV4cG9ydHMyLlNlcXVlbmNlRXJyb3IgPSBleHBvcnRzMi5PYmplY3RVbnN1YnNjcmliZWRFcnJvciA9IGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBleHBvcnRzMi5FbXB0eUVycm9yID0gZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IGV4cG9ydHMyLmxhc3RWYWx1ZUZyb20gPSBleHBvcnRzMi5pc09ic2VydmFibGUgPSBleHBvcnRzMi5pZGVudGl0eSA9IGV4cG9ydHMyLm5vb3AgPSBleHBvcnRzMi5waXBlID0gZXhwb3J0czIuTm90aWZpY2F0aW9uS2luZCA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLlN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpcHRpb24gPSBleHBvcnRzMi5TY2hlZHVsZXIgPSBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBleHBvcnRzMi5xdWV1ZSA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gZXhwb3J0czIuYXN5bmMgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IGV4cG9ydHMyLlJlcGxheVN1YmplY3QgPSBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBleHBvcnRzMi5TdWJqZWN0ID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVzID0gZXhwb3J0czIub2JzZXJ2YWJsZSA9IGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IGV4cG9ydHMyLk9ic2VydmFibGUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5maWx0ZXIgPSBleHBvcnRzMi5leHBhbmQgPSBleHBvcnRzMi5leGhhdXN0TWFwID0gZXhwb3J0czIuZXhoYXVzdEFsbCA9IGV4cG9ydHMyLmV4aGF1c3QgPSBleHBvcnRzMi5ldmVyeSA9IGV4cG9ydHMyLmVuZFdpdGggPSBleHBvcnRzMi5lbGVtZW50QXQgPSBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZXhwb3J0czIuZGlzdGluY3QgPSBleHBvcnRzMi5kZW1hdGVyaWFsaXplID0gZXhwb3J0czIuZGVsYXlXaGVuID0gZXhwb3J0czIuZGVsYXkgPSBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IGV4cG9ydHMyLmRlYm91bmNlVGltZSA9IGV4cG9ydHMyLmRlYm91bmNlID0gZXhwb3J0czIuY291bnQgPSBleHBvcnRzMi5jb25uZWN0ID0gZXhwb3J0czIuY29uY2F0V2l0aCA9IGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gZXhwb3J0czIuY29uY2F0TWFwID0gZXhwb3J0czIuY29uY2F0QWxsID0gZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0QWxsID0gZXhwb3J0czIuY29tYmluZUFsbCA9IGV4cG9ydHMyLmNhdGNoRXJyb3IgPSBleHBvcnRzMi5idWZmZXJXaGVuID0gZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gZXhwb3J0czIuYnVmZmVyVGltZSA9IGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gZXhwb3J0czIuYnVmZmVyID0gZXhwb3J0czIuYXVkaXRUaW1lID0gZXhwb3J0czIuYXVkaXQgPSBleHBvcnRzMi5jb25maWcgPSBleHBvcnRzMi5ORVZFUiA9IGV4cG9ydHMyLkVNUFRZID0gZXhwb3J0czIuc2NoZWR1bGVkID0gZXhwb3J0czIuemlwID0gZXhwb3J0czIudXNpbmcgPSBleHBvcnRzMi50aW1lciA9IGV4cG9ydHMyLnRocm93RXJyb3IgPSBleHBvcnRzMi5yYW5nZSA9IGV4cG9ydHMyLnJhY2UgPSBleHBvcnRzMi5wYXJ0aXRpb24gPSBleHBvcnRzMi5wYWlycyA9IGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub2YgPSBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLm1lcmdlID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3dpdGNoTWFwID0gZXhwb3J0czIuc3dpdGNoQWxsID0gZXhwb3J0czIuc3Vic2NyaWJlT24gPSBleHBvcnRzMi5zdGFydFdpdGggPSBleHBvcnRzMi5za2lwV2hpbGUgPSBleHBvcnRzMi5za2lwVW50aWwgPSBleHBvcnRzMi5za2lwTGFzdCA9IGV4cG9ydHMyLnNraXAgPSBleHBvcnRzMi5zaW5nbGUgPSBleHBvcnRzMi5zaGFyZVJlcGxheSA9IGV4cG9ydHMyLnNoYXJlID0gZXhwb3J0czIuc2VxdWVuY2VFcXVhbCA9IGV4cG9ydHMyLnNjYW4gPSBleHBvcnRzMi5zYW1wbGVUaW1lID0gZXhwb3J0czIuc2FtcGxlID0gZXhwb3J0czIucmVmQ291bnQgPSBleHBvcnRzMi5yZXRyeVdoZW4gPSBleHBvcnRzMi5yZXRyeSA9IGV4cG9ydHMyLnJlcGVhdFdoZW4gPSBleHBvcnRzMi5yZXBlYXQgPSBleHBvcnRzMi5yZWR1Y2UgPSBleHBvcnRzMi5yYWNlV2l0aCA9IGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBleHBvcnRzMi5wdWJsaXNoTGFzdCA9IGV4cG9ydHMyLnB1Ymxpc2hCZWhhdmlvciA9IGV4cG9ydHMyLnB1Ymxpc2ggPSBleHBvcnRzMi5wbHVjayA9IGV4cG9ydHMyLnBhaXJ3aXNlID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gZXhwb3J0czIub2JzZXJ2ZU9uID0gZXhwb3J0czIubXVsdGljYXN0ID0gZXhwb3J0czIubWluID0gZXhwb3J0czIubWVyZ2VXaXRoID0gZXhwb3J0czIubWVyZ2VTY2FuID0gZXhwb3J0czIubWVyZ2VNYXBUbyA9IGV4cG9ydHMyLm1lcmdlTWFwID0gZXhwb3J0czIuZmxhdE1hcCA9IGV4cG9ydHMyLm1lcmdlQWxsID0gZXhwb3J0czIubWF4ID0gZXhwb3J0czIubWF0ZXJpYWxpemUgPSBleHBvcnRzMi5tYXBUbyA9IGV4cG9ydHMyLm1hcCA9IGV4cG9ydHMyLmxhc3QgPSBleHBvcnRzMi5pc0VtcHR5ID0gZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSBleHBvcnRzMi5ncm91cEJ5ID0gZXhwb3J0czIuZmlyc3QgPSBleHBvcnRzMi5maW5kSW5kZXggPSBleHBvcnRzMi5maW5kID0gZXhwb3J0czIuZmluYWxpemUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi56aXBXaXRoID0gZXhwb3J0czIuemlwQWxsID0gZXhwb3J0czIud2l0aExhdGVzdEZyb20gPSBleHBvcnRzMi53aW5kb3dXaGVuID0gZXhwb3J0czIud2luZG93VG9nZ2xlID0gZXhwb3J0czIud2luZG93VGltZSA9IGV4cG9ydHMyLndpbmRvd0NvdW50ID0gZXhwb3J0czIud2luZG93ID0gZXhwb3J0czIudG9BcnJheSA9IGV4cG9ydHMyLnRpbWVzdGFtcCA9IGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRocm93SWZFbXB0eSA9IGV4cG9ydHMyLnRocm90dGxlVGltZSA9IGV4cG9ydHMyLnRocm90dGxlID0gZXhwb3J0czIudGFwID0gZXhwb3J0czIudGFrZVdoaWxlID0gZXhwb3J0czIudGFrZVVudGlsID0gZXhwb3J0czIudGFrZUxhc3QgPSBleHBvcnRzMi50YWtlID0gZXhwb3J0czIuc3dpdGNoU2NhbiA9IGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiT2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9ic2VydmFibGVfMS5PYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb25uZWN0YWJsZU9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9ic2VydmFibGVfMS5vYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZXNfMSA9IHJlcXVpcmVfYW5pbWF0aW9uRnJhbWVzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhbmltYXRpb25GcmFtZXMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZXNfMS5hbmltYXRpb25GcmFtZXM7CiAgICB9IH0pOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YmplY3RfMS5TdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBCZWhhdmlvclN1YmplY3RfMSA9IHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJCZWhhdmlvclN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiUmVwbGF5U3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFJlcGxheVN1YmplY3RfMS5SZXBsYXlTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBBc3luY1N1YmplY3RfMSA9IHJlcXVpcmVfQXN5bmNTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJBc3luY1N1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBc3luY1N1YmplY3RfMS5Bc3luY1N1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIGFzYXBfMSA9IHJlcXVpcmVfYXNhcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXNhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzYXBfMS5hc2FwOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzYXBTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc2FwXzEuYXNhcFNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzeW5jIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYXN5bmNfMS5hc3luYzsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc3luY1NjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIHF1ZXVlXzEgPSByZXF1aXJlX3F1ZXVlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJxdWV1ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHF1ZXVlXzEucXVldWU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicXVldWVTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBxdWV1ZV8xLnF1ZXVlU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZV8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYW5pbWF0aW9uRnJhbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZV8xLmFuaW1hdGlvbkZyYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVfMS5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgVmlydHVhbFRpbWVTY2hlZHVsZXJfMSA9IHJlcXVpcmVfVmlydHVhbFRpbWVTY2hlZHVsZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZpcnR1YWxUaW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsVGltZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWaXJ0dWFsQWN0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsQWN0aW9uOwogICAgfSB9KTsKICAgIHZhciBTY2hlZHVsZXJfMSA9IHJlcXVpcmVfU2NoZWR1bGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTY2hlZHVsZXJfMS5TY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlN1YnNjcmlwdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbjsKICAgIH0gfSk7CiAgICB2YXIgU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9TdWJzY3JpYmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTdWJzY3JpYmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gU3Vic2NyaWJlcl8xLlN1YnNjcmliZXI7CiAgICB9IH0pOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5vdGlmaWNhdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RpZmljYXRpb25LaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uS2luZDsKICAgIH0gfSk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwaXBlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGlwZV8xLnBpcGU7CiAgICB9IH0pOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibm9vcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5vb3BfMS5ub29wOwogICAgfSB9KTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWRlbnRpdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfSB9KTsKICAgIHZhciBpc09ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpc09ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpc09ic2VydmFibGVfMS5pc09ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIGxhc3RWYWx1ZUZyb21fMSA9IHJlcXVpcmVfbGFzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibGFzdFZhbHVlRnJvbSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb21fMS5sYXN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBmaXJzdFZhbHVlRnJvbV8xID0gcmVxdWlyZV9maXJzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmlyc3RWYWx1ZUZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbV8xLmZpcnN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xID0gcmVxdWlyZV9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yOwogICAgfSB9KTsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkVtcHR5RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgTm90Rm91bmRFcnJvcl8xID0gcmVxdWlyZV9Ob3RGb3VuZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RGb3VuZEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJPYmplY3RVbnN1YnNjcmliZWRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2VxdWVuY2VFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFNlcXVlbmNlRXJyb3JfMS5TZXF1ZW5jZUVycm9yOwogICAgfSB9KTsKICAgIHZhciB0aW1lb3V0XzEgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlRpbWVvdXRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRfMS5UaW1lb3V0RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFVuc3Vic2NyaXB0aW9uRXJyb3JfMSA9IHJlcXVpcmVfVW5zdWJzY3JpcHRpb25FcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVW5zdWJzY3JpcHRpb25FcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yOwogICAgfSB9KTsKICAgIHZhciBiaW5kQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJiaW5kQ2FsbGJhY2siLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tfMS5iaW5kQ2FsbGJhY2s7CiAgICB9IH0pOwogICAgdmFyIGJpbmROb2RlQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZE5vZGVDYWxsYmFjaygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYmluZE5vZGVDYWxsYmFjayIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJpbmROb2RlQ2FsbGJhY2tfMS5iaW5kTm9kZUNhbGxiYWNrOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0XzEuY29tYmluZUxhdGVzdDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0OwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0YWJsZV8xID0gcmVxdWlyZV9jb25uZWN0YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29ubmVjdGFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0YWJsZV8xLmNvbm5lY3RhYmxlOwogICAgfSB9KTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyOwogICAgfSB9KTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbXB0eV8xLmVtcHR5OwogICAgfSB9KTsKICAgIHZhciBmb3JrSm9pbl8xID0gcmVxdWlyZV9mb3JrSm9pbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZm9ya0pvaW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmb3JrSm9pbl8xLmZvcmtKb2luOwogICAgfSB9KTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tXzEuZnJvbTsKICAgIH0gfSk7CiAgICB2YXIgZnJvbUV2ZW50XzEgPSByZXF1aXJlX2Zyb21FdmVudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZnJvbUV2ZW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbUV2ZW50XzEuZnJvbUV2ZW50OwogICAgfSB9KTsKICAgIHZhciBmcm9tRXZlbnRQYXR0ZXJuXzEgPSByZXF1aXJlX2Zyb21FdmVudFBhdHRlcm4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb21FdmVudFBhdHRlcm4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tRXZlbnRQYXR0ZXJuXzEuZnJvbUV2ZW50UGF0dGVybjsKICAgIH0gfSk7CiAgICB2YXIgZ2VuZXJhdGVfMSA9IHJlcXVpcmVfZ2VuZXJhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdlbmVyYXRlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ2VuZXJhdGVfMS5nZW5lcmF0ZTsKICAgIH0gfSk7CiAgICB2YXIgaWlmXzEgPSByZXF1aXJlX2lpZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWlmIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaWlmXzEuaWlmOwogICAgfSB9KTsKICAgIHZhciBpbnRlcnZhbF8xID0gcmVxdWlyZV9pbnRlcnZhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaW50ZXJ2YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpbnRlcnZhbF8xLmludGVydmFsOwogICAgfSB9KTsKICAgIHZhciBtZXJnZV8xID0gcmVxdWlyZV9tZXJnZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlOwogICAgfSB9KTsKICAgIHZhciBuZXZlcl8xID0gcmVxdWlyZV9uZXZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibmV2ZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBuZXZlcl8xLm5ldmVyOwogICAgfSB9KTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2YiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvZl8xLm9mOwogICAgfSB9KTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib25FcnJvclJlc3VtZU5leHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0OwogICAgfSB9KTsKICAgIHZhciBwYWlyc18xID0gcmVxdWlyZV9wYWlycygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGFpcnMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYWlyc18xLnBhaXJzOwogICAgfSB9KTsKICAgIHZhciBwYXJ0aXRpb25fMSA9IHJlcXVpcmVfcGFydGl0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwYXJ0aXRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYXJ0aXRpb25fMS5wYXJ0aXRpb247CiAgICB9IH0pOwogICAgdmFyIHJhY2VfMSA9IHJlcXVpcmVfcmFjZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VfMS5yYWNlOwogICAgfSB9KTsKICAgIHZhciByYW5nZV8xID0gcmVxdWlyZV9yYW5nZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFuZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYW5nZV8xLnJhbmdlOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm93RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0Vycm9yXzEudGhyb3dFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZXJfMS50aW1lcjsKICAgIH0gfSk7CiAgICB2YXIgdXNpbmdfMSA9IHJlcXVpcmVfdXNpbmcoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInVzaW5nIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdXNpbmdfMS51c2luZzsKICAgIH0gfSk7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwXzEuemlwOwogICAgfSB9KTsKICAgIHZhciBzY2hlZHVsZWRfMSA9IHJlcXVpcmVfc2NoZWR1bGVkKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzY2hlZHVsZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZWRfMS5zY2hlZHVsZWQ7CiAgICB9IH0pOwogICAgdmFyIGVtcHR5XzIgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJFTVBUWSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVtcHR5XzIuRU1QVFk7CiAgICB9IH0pOwogICAgdmFyIG5ldmVyXzIgPSByZXF1aXJlX25ldmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJORVZFUiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5ldmVyXzIuTkVWRVI7CiAgICB9IH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHlwZXMyKCksIGV4cG9ydHMyKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25maWciLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25maWdfMS5jb25maWc7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhdWRpdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQ7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0VGltZV8xID0gcmVxdWlyZV9hdWRpdFRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImF1ZGl0VGltZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0VGltZV8xLmF1ZGl0VGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyXzEgPSByZXF1aXJlX2J1ZmZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyXzEuYnVmZmVyOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJDb3VudF8xID0gcmVxdWlyZV9idWZmZXJDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyQ291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJDb3VudF8xLmJ1ZmZlckNvdW50OwogICAgfSB9KTsKICAgIHZhciBidWZmZXJUaW1lXzEgPSByZXF1aXJlX2J1ZmZlclRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlclRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJUaW1lXzEuYnVmZmVyVGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyVG9nZ2xlXzEgPSByZXF1aXJlX2J1ZmZlclRvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyVG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyVG9nZ2xlXzEuYnVmZmVyVG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJXaGVuXzEgPSByZXF1aXJlX2J1ZmZlcldoZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlcldoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJXaGVuXzEuYnVmZmVyV2hlbjsKICAgIH0gfSk7CiAgICB2YXIgY2F0Y2hFcnJvcl8xID0gcmVxdWlyZV9jYXRjaEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjYXRjaEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY2F0Y2hFcnJvcl8xLmNhdGNoRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIGNvbWJpbmVBbGxfMSA9IHJlcXVpcmVfY29tYmluZUFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29tYmluZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbWJpbmVBbGxfMS5jb21iaW5lQWxsOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0QWxsXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0QWxsXzEuY29tYmluZUxhdGVzdEFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdFdpdGhfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdFdpdGhfMS5jb21iaW5lTGF0ZXN0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRNYXBfMSA9IHJlcXVpcmVfY29uY2F0TWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRNYXBfMS5jb25jYXRNYXA7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdE1hcFRvXzEgPSByZXF1aXJlX2NvbmNhdE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdE1hcFRvXzEuY29uY2F0TWFwVG87CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdFdpdGhfMSA9IHJlcXVpcmVfY29uY2F0V2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdFdpdGhfMS5jb25jYXRXaXRoOwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbm5lY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdDsKICAgIH0gfSk7CiAgICB2YXIgY291bnRfMSA9IHJlcXVpcmVfY291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY291bnRfMS5jb3VudDsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VfMSA9IHJlcXVpcmVfZGVib3VuY2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlYm91bmNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VfMS5kZWJvdW5jZTsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VUaW1lXzEgPSByZXF1aXJlX2RlYm91bmNlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVib3VuY2VUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VUaW1lXzEuZGVib3VuY2VUaW1lOwogICAgfSB9KTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmYXVsdElmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5OwogICAgfSB9KTsKICAgIHZhciBkZWxheV8xID0gcmVxdWlyZV9kZWxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVsYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheV8xLmRlbGF5OwogICAgfSB9KTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJkZWxheVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW47CiAgICB9IH0pOwogICAgdmFyIGRlbWF0ZXJpYWxpemVfMSA9IHJlcXVpcmVfZGVtYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVtYXRlcmlhbGl6ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlbWF0ZXJpYWxpemVfMS5kZW1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdF8xID0gcmVxdWlyZV9kaXN0aW5jdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdF8xLmRpc3RpbmN0OwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbENoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbEtleUNoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xLmRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBlbGVtZW50QXRfMSA9IHJlcXVpcmVfZWxlbWVudEF0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJlbGVtZW50QXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbGVtZW50QXRfMS5lbGVtZW50QXQ7CiAgICB9IH0pOwogICAgdmFyIGVuZFdpdGhfMSA9IHJlcXVpcmVfZW5kV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW5kV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVuZFdpdGhfMS5lbmRXaXRoOwogICAgfSB9KTsKICAgIHZhciBldmVyeV8xID0gcmVxdWlyZV9ldmVyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXZlcnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBldmVyeV8xLmV2ZXJ5OwogICAgfSB9KTsKICAgIHZhciBleGhhdXN0XzEgPSByZXF1aXJlX2V4aGF1c3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV4aGF1c3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGhhdXN0XzEuZXhoYXVzdDsKICAgIH0gfSk7CiAgICB2YXIgZXhoYXVzdEFsbF8xID0gcmVxdWlyZV9leGhhdXN0QWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleGhhdXN0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhoYXVzdEFsbF8xLmV4aGF1c3RBbGw7CiAgICB9IH0pOwogICAgdmFyIGV4aGF1c3RNYXBfMSA9IHJlcXVpcmVfZXhoYXVzdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhoYXVzdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RNYXBfMS5leGhhdXN0TWFwOwogICAgfSB9KTsKICAgIHZhciBleHBhbmRfMSA9IHJlcXVpcmVfZXhwYW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleHBhbmQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleHBhbmRfMS5leHBhbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbHRlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbHRlcl8xLmZpbHRlcjsKICAgIH0gfSk7CiAgICB2YXIgZmluYWxpemVfMSA9IHJlcXVpcmVfZmluYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmFsaXplIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluYWxpemVfMS5maW5hbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgZmluZF8xID0gcmVxdWlyZV9maW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluZF8xLmZpbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbmRJbmRleF8xID0gcmVxdWlyZV9maW5kSW5kZXgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmRJbmRleCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmRJbmRleF8xLmZpbmRJbmRleDsKICAgIH0gfSk7CiAgICB2YXIgZmlyc3RfMSA9IHJlcXVpcmVfZmlyc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpcnN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmlyc3RfMS5maXJzdDsKICAgIH0gfSk7CiAgICB2YXIgZ3JvdXBCeV8xID0gcmVxdWlyZV9ncm91cEJ5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJncm91cEJ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ3JvdXBCeV8xLmdyb3VwQnk7CiAgICB9IH0pOwogICAgdmFyIGlnbm9yZUVsZW1lbnRzXzEgPSByZXF1aXJlX2lnbm9yZUVsZW1lbnRzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpZ25vcmVFbGVtZW50cyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlnbm9yZUVsZW1lbnRzXzEuaWdub3JlRWxlbWVudHM7CiAgICB9IH0pOwogICAgdmFyIGlzRW1wdHlfMSA9IHJlcXVpcmVfaXNFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaXNFbXB0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlzRW1wdHlfMS5pc0VtcHR5OwogICAgfSB9KTsKICAgIHZhciBsYXN0XzEgPSByZXF1aXJlX2xhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImxhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBsYXN0XzEubGFzdDsKICAgIH0gfSk7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWFwXzEubWFwOwogICAgfSB9KTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXBUb18xLm1hcFRvOwogICAgfSB9KTsKICAgIHZhciBtYXRlcmlhbGl6ZV8xID0gcmVxdWlyZV9tYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWF0ZXJpYWxpemUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXRlcmlhbGl6ZV8xLm1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBtYXhfMSA9IHJlcXVpcmVfbWF4KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtYXgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXhfMS5tYXg7CiAgICB9IH0pOwogICAgdmFyIG1lcmdlQWxsXzEgPSByZXF1aXJlX21lcmdlQWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1lcmdlQWxsXzEubWVyZ2VBbGw7CiAgICB9IH0pOwogICAgdmFyIGZsYXRNYXBfMSA9IHJlcXVpcmVfZmxhdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmxhdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZsYXRNYXBfMS5mbGF0TWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcFRvXzEgPSByZXF1aXJlX21lcmdlTWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlTWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcFRvXzEubWVyZ2VNYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VTY2FuXzEgPSByZXF1aXJlX21lcmdlU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VTY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VTY2FuXzEubWVyZ2VTY2FuOwogICAgfSB9KTsKICAgIHZhciBtZXJnZVdpdGhfMSA9IHJlcXVpcmVfbWVyZ2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZVdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZVdpdGhfMS5tZXJnZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIG1pbl8xID0gcmVxdWlyZV9taW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1pbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1pbl8xLm1pbjsKICAgIH0gfSk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibXVsdGljYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbXVsdGljYXN0XzEubXVsdGljYXN0OwogICAgfSB9KTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJvYnNlcnZlT24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvYnNlcnZlT25fMS5vYnNlcnZlT247CiAgICB9IH0pOwogICAgdmFyIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9uRXJyb3JSZXN1bWVOZXh0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xLm9uRXJyb3JSZXN1bWVOZXh0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgcGFpcndpc2VfMSA9IHJlcXVpcmVfcGFpcndpc2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBhaXJ3aXNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFpcndpc2VfMS5wYWlyd2lzZTsKICAgIH0gfSk7CiAgICB2YXIgcGx1Y2tfMSA9IHJlcXVpcmVfcGx1Y2soKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBsdWNrIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGx1Y2tfMS5wbHVjazsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaF8xID0gcmVxdWlyZV9wdWJsaXNoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaF8xLnB1Ymxpc2g7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hCZWhhdmlvcl8xID0gcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hCZWhhdmlvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hCZWhhdmlvcl8xLnB1Ymxpc2hCZWhhdmlvcjsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaExhc3RfMSA9IHJlcXVpcmVfcHVibGlzaExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaExhc3RfMS5wdWJsaXNoTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaFJlcGxheV8xID0gcmVxdWlyZV9wdWJsaXNoUmVwbGF5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaFJlcGxheV8xLnB1Ymxpc2hSZXBsYXk7CiAgICB9IH0pOwogICAgdmFyIHJhY2VXaXRoXzEgPSByZXF1aXJlX3JhY2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyYWNlV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VXaXRoXzEucmFjZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZHVjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZTsKICAgIH0gfSk7CiAgICB2YXIgcmVwZWF0XzEyID0gcmVxdWlyZV9yZXBlYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlcGVhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdF8xMi5yZXBlYXQ7CiAgICB9IH0pOwogICAgdmFyIHJlcGVhdFdoZW5fMSA9IHJlcXVpcmVfcmVwZWF0V2hlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVwZWF0V2hlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdFdoZW5fMS5yZXBlYXRXaGVuOwogICAgfSB9KTsKICAgIHZhciByZXRyeV8xID0gcmVxdWlyZV9yZXRyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmV0cnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeV8xLnJldHJ5OwogICAgfSB9KTsKICAgIHZhciByZXRyeVdoZW5fMSA9IHJlcXVpcmVfcmV0cnlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXRyeVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeVdoZW5fMS5yZXRyeVdoZW47CiAgICB9IH0pOwogICAgdmFyIHJlZkNvdW50XzEgPSByZXF1aXJlX3JlZkNvdW50KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWZDb3VudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZkNvdW50XzEucmVmQ291bnQ7CiAgICB9IH0pOwogICAgdmFyIHNhbXBsZV8xID0gcmVxdWlyZV9zYW1wbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNhbXBsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZTsKICAgIH0gfSk7CiAgICB2YXIgc2FtcGxlVGltZV8xID0gcmVxdWlyZV9zYW1wbGVUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzYW1wbGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2FtcGxlVGltZV8xLnNhbXBsZVRpbWU7CiAgICB9IH0pOwogICAgdmFyIHNjYW5fMSA9IHJlcXVpcmVfc2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjYW5fMS5zY2FuOwogICAgfSB9KTsKICAgIHZhciBzZXF1ZW5jZUVxdWFsXzEgPSByZXF1aXJlX3NlcXVlbmNlRXF1YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNlcXVlbmNlRXF1YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzZXF1ZW5jZUVxdWFsXzEuc2VxdWVuY2VFcXVhbDsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVfMSA9IHJlcXVpcmVfc2hhcmUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZTsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVSZXBsYXlfMSA9IHJlcXVpcmVfc2hhcmVSZXBsYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVSZXBsYXlfMS5zaGFyZVJlcGxheTsKICAgIH0gfSk7CiAgICB2YXIgc2luZ2xlXzEgPSByZXF1aXJlX3NpbmdsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2luZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2luZ2xlXzEuc2luZ2xlOwogICAgfSB9KTsKICAgIHZhciBza2lwXzEgPSByZXF1aXJlX3NraXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwXzEuc2tpcDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcExhc3RfMSA9IHJlcXVpcmVfc2tpcExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXBMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcExhc3RfMS5za2lwTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcFVudGlsXzEgPSByZXF1aXJlX3NraXBVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcFVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcFVudGlsXzEuc2tpcFVudGlsOwogICAgfSB9KTsKICAgIHZhciBza2lwV2hpbGVfMSA9IHJlcXVpcmVfc2tpcFdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJza2lwV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwV2hpbGVfMS5za2lwV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHN0YXJ0V2l0aF8xID0gcmVxdWlyZV9zdGFydFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0YXJ0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN0YXJ0V2l0aF8xLnN0YXJ0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN1YnNjcmliZU9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbjsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoQWxsXzEgPSByZXF1aXJlX3N3aXRjaEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoQWxsXzEuc3dpdGNoQWxsOwogICAgfSB9KTsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXA7CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaE1hcFRvXzEgPSByZXF1aXJlX3N3aXRjaE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcFRvXzEuc3dpdGNoTWFwVG87CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaFNjYW5fMSA9IHJlcXVpcmVfc3dpdGNoU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoU2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaFNjYW5fMS5zd2l0Y2hTY2FuOwogICAgfSB9KTsKICAgIHZhciB0YWtlXzEgPSByZXF1aXJlX3Rha2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlXzEudGFrZTsKICAgIH0gfSk7CiAgICB2YXIgdGFrZUxhc3RfMSA9IHJlcXVpcmVfdGFrZUxhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2VMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZUxhc3RfMS50YWtlTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgdGFrZVVudGlsXzEgPSByZXF1aXJlX3Rha2VVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZVVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZVVudGlsXzEudGFrZVVudGlsOwogICAgfSB9KTsKICAgIHZhciB0YWtlV2hpbGVfMSA9IHJlcXVpcmVfdGFrZVdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0YWtlV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlV2hpbGVfMS50YWtlV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHRhcF8xID0gcmVxdWlyZV90YXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRhcF8xLnRhcDsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVfMSA9IHJlcXVpcmVfdGhyb3R0bGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm90dGxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVfMS50aHJvdHRsZTsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVUaW1lXzEgPSByZXF1aXJlX3Rocm90dGxlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGhyb3R0bGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVUaW1lXzEudGhyb3R0bGVUaW1lOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvd0lmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHk7CiAgICB9IH0pOwogICAgdmFyIHRpbWVJbnRlcnZhbF8xID0gcmVxdWlyZV90aW1lSW50ZXJ2YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVJbnRlcnZhbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVJbnRlcnZhbF8xLnRpbWVJbnRlcnZhbDsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dF8yID0gcmVxdWlyZV90aW1lb3V0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZW91dF8yLnRpbWVvdXQ7CiAgICB9IH0pOwogICAgdmFyIHRpbWVvdXRXaXRoXzEgPSByZXF1aXJlX3RpbWVvdXRXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRXaXRoXzEudGltZW91dFdpdGg7CiAgICB9IH0pOwogICAgdmFyIHRpbWVzdGFtcF8xID0gcmVxdWlyZV90aW1lc3RhbXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVzdGFtcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcF8xLnRpbWVzdGFtcDsKICAgIH0gfSk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidG9BcnJheSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRvQXJyYXlfMTIudG9BcnJheTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93XzEgPSByZXF1aXJlX3dpbmRvdygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93XzEud2luZG93OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dDb3VudF8xID0gcmVxdWlyZV93aW5kb3dDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93Q291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dDb3VudF8xLndpbmRvd0NvdW50OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dUaW1lXzEgPSByZXF1aXJlX3dpbmRvd1RpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1RpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dUaW1lXzEud2luZG93VGltZTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93VG9nZ2xlXzEgPSByZXF1aXJlX3dpbmRvd1RvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93VG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93VG9nZ2xlXzEud2luZG93VG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dXaGVuXzEgPSByZXF1aXJlX3dpbmRvd1doZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1doZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dXaGVuXzEud2luZG93V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgd2l0aExhdGVzdEZyb21fMSA9IHJlcXVpcmVfd2l0aExhdGVzdEZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpdGhMYXRlc3RGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2l0aExhdGVzdEZyb21fMS53aXRoTGF0ZXN0RnJvbTsKICAgIH0gfSk7CiAgICB2YXIgemlwQWxsXzEgPSByZXF1aXJlX3ppcEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwQWxsXzEuemlwQWxsOwogICAgfSB9KTsKICAgIHZhciB6aXBXaXRoXzEgPSByZXF1aXJlX3ppcFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB6aXBXaXRoXzEuemlwV2l0aDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlBhdGhJc0ZpbGVFeGNlcHRpb24gPSBleHBvcnRzMi5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25FeGNlcHRpb24gPSBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIEJhc2VFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIEVycm9yIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSA9ICIiKSB7CiAgICAgICAgc3VwZXIobWVzc2FnZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gQmFzZUV4Y2VwdGlvbjsKICAgIHZhciBVbmtub3duRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSkgewogICAgICAgIHN1cGVyKG1lc3NhZ2UpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkV4Y2VwdGlvbiA9IFVua25vd25FeGNlcHRpb247CiAgICB2YXIgRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBhbHJlYWR5IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb247CiAgICB2YXIgUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGRpcmVjdG9yeS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbiA9IFBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbjsKICAgIHZhciBQYXRoSXNGaWxlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGZpbGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoSXNGaWxlRXhjZXB0aW9uID0gUGF0aElzRmlsZUV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzCnZhciByZXF1aXJlX2xpdGVyYWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9saXRlcmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25lTGluZSA9IG9uZUxpbmU7CiAgICBleHBvcnRzMi5pbmRlbnRCeSA9IGluZGVudEJ5OwogICAgZXhwb3J0czIuc3RyaXBJbmRlbnQgPSBzdHJpcEluZGVudDsKICAgIGV4cG9ydHMyLnN0cmlwSW5kZW50cyA9IHN0cmlwSW5kZW50czsKICAgIGV4cG9ydHMyLnRyaW1OZXdsaW5lcyA9IHRyaW1OZXdsaW5lczsKICAgIGZ1bmN0aW9uIG9uZUxpbmUoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkrL2dtLCAiICIpLnRyaW0oKTsKICAgIH0KICAgIGZ1bmN0aW9uIGluZGVudEJ5KGluZGVudGF0aW9ucykgewogICAgICBsZXQgaSA9ICIiOwogICAgICB3aGlsZSAoaW5kZW50YXRpb25zLS0pIHsKICAgICAgICBpICs9ICIgIjsKICAgICAgfQogICAgICByZXR1cm4gKHN0cmluZ3MzLCAuLi52YWx1ZXMpID0+IHsKICAgICAgICByZXR1cm4gaSArIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpLnJlcGxhY2UoL1xuL2csICJcbiIgKyBpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgY29uc3QgZW5kUmVzdWx0ID0gU3RyaW5nLnJhdyhzdHJpbmdzMywgLi4udmFsdWVzKTsKICAgICAgY29uc3QgbWF0Y2ggPSBlbmRSZXN1bHQubWF0Y2goL15bIFx0XSooPz1cUykvZ20pOwogICAgICBpZiAobWF0Y2ggPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gZW5kUmVzdWx0OwogICAgICB9CiAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgubWluKC4uLm1hdGNoLm1hcCgoZWwpID0+IGVsLmxlbmd0aCkpOwogICAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKCJeWyBcXHRdeyIgKyBpbmRlbnQgKyAifSIsICJnbSIpOwogICAgICByZXR1cm4gKGluZGVudCA+IDAgPyBlbmRSZXN1bHQucmVwbGFjZShyZWdleHAsICIiKSA6IGVuZFJlc3VsdCkudHJpbSgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaXBJbmRlbnRzKHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgcmV0dXJuIFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykuc3BsaXQoIlxuIikubWFwKChsaW5lKSA9PiBsaW5lLnRyaW0oKSkuam9pbigiXG4iKS50cmltKCk7CiAgICB9CiAgICBmdW5jdGlvbiB0cmltTmV3bGluZXMoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoL14oPzpccj9cbikrLywgIiIpLnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkkLywgIiIpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvc3RyaW5ncy5qcwp2YXIgcmVxdWlyZV9zdHJpbmdzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWNhbWVsaXplID0gZGVjYW1lbGl6ZTsKICAgIGV4cG9ydHMyLmRhc2hlcml6ZSA9IGRhc2hlcml6ZTsKICAgIGV4cG9ydHMyLmNhbWVsaXplID0gY2FtZWxpemU7CiAgICBleHBvcnRzMi5jbGFzc2lmeSA9IGNsYXNzaWZ5OwogICAgZXhwb3J0czIudW5kZXJzY29yZSA9IHVuZGVyc2NvcmU7CiAgICBleHBvcnRzMi5jYXBpdGFsaXplID0gY2FwaXRhbGl6ZTsKICAgIGV4cG9ydHMyLmxldmVuc2h0ZWluID0gbGV2ZW5zaHRlaW47CiAgICB2YXIgU1RSSU5HX0RBU0hFUklaRV9SRUdFWFAgPSAvWyBfXS9nOwogICAgdmFyIFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCA9IC8oW2EtelxkXSkoW0EtWl0pL2c7CiAgICB2YXIgU1RSSU5HX0NBTUVMSVpFX1JFR0VYUCA9IC8oLXxffFwufFxzKSsoLik/L2c7CiAgICB2YXIgU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEgPSAvKFthLXpcZF0pKFtBLVpdKykvZzsKICAgIHZhciBTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiA9IC8tfFxzKy9nOwogICAgZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX0RFQ0FNRUxJWkVfUkVHRVhQLCAiJDFfJDIiKS50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gZGFzaGVyaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIGRlY2FtZWxpemUoc3RyMikucmVwbGFjZShTVFJJTkdfREFTSEVSSVpFX1JFR0VYUCwgIi0iKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhbWVsaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZShTVFJJTkdfQ0FNRUxJWkVfUkVHRVhQLCAoX21hdGNoLCBfc2VwYXJhdG9yLCBjaHIpID0+IHsKICAgICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAiIjsKICAgICAgfSkucmVwbGFjZSgvXihbQS1aXSkvLCAobWF0Y2gpID0+IG1hdGNoLnRvTG93ZXJDYXNlKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2xhc3NpZnkoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5zcGxpdCgiLiIpLm1hcCgocGFydCkgPT4gY2FwaXRhbGl6ZShjYW1lbGl6ZShwYXJ0KSkpLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gdW5kZXJzY29yZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEsICIkMV8kMiIpLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzIsICJfIikudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhcGl0YWxpemUoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0cjIuc2xpY2UoMSk7CiAgICB9CiAgICBmdW5jdGlvbiBsZXZlbnNodGVpbihhLCBiKSB7CiAgICAgIGlmIChhLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGIubGVuZ3RoOwogICAgICB9CiAgICAgIGlmIChiLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGEubGVuZ3RoOwogICAgICB9CiAgICAgIGNvbnN0IG1hdHJpeCA9IFtdOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSBiLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbWF0cml4W2ldID0gW2ldOwogICAgICB9CiAgICAgIGZvciAobGV0IGogPSAwOyBqIDw9IGEubGVuZ3RoOyBqKyspIHsKICAgICAgICBtYXRyaXhbMF1bal0gPSBqOwogICAgICB9CiAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IGIubGVuZ3RoOyBpKyspIHsKICAgICAgICBmb3IgKGxldCBqID0gMTsgaiA8PSBhLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICBpZiAoYi5jaGFyQXQoaSAtIDEpID09IGEuY2hhckF0KGogLSAxKSkgewogICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbaSAtIDFdW2ogLSAxXTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IE1hdGgubWluKAogICAgICAgICAgICAgIG1hdHJpeFtpIC0gMV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBzdWJzdGl0dXRpb24KICAgICAgICAgICAgICBtYXRyaXhbaV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBpbnNlcnRpb24KICAgICAgICAgICAgICBtYXRyaXhbaSAtIDFdW2pdICsgMQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbWF0cml4W2IubGVuZ3RoXVthLmxlbmd0aF07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMKdmFyIHJlcXVpcmVfb2JqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZXBDb3B5ID0gZGVlcENvcHk7CiAgICB2YXIgY29weVN5bWJvbCA9IFN5bWJvbCgpOwogICAgZnVuY3Rpb24gZGVlcENvcHkodmFsdWUpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlLm1hcCgobykgPT4gZGVlcENvcHkobykpOwogICAgICB9IGVsc2UgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25zdCB2YWx1ZUNhc3RlZCA9IHZhbHVlOwogICAgICAgIGlmICh2YWx1ZUNhc3RlZFtjb3B5U3ltYm9sXSkgewogICAgICAgICAgcmV0dXJuIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWVDYXN0ZWRbInRvSlNPTiJdKSB7CiAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZUNhc3RlZFsidG9KU09OIl0oKSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih2YWx1ZUNhc3RlZCkpOwogICAgICAgIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdID0gY29weTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZUNhc3RlZCkpIHsKICAgICAgICAgIGNvcHlba2V5XSA9IGRlZXBDb3B5KHZhbHVlQ2FzdGVkW2tleV0pOwogICAgICAgIH0KICAgICAgICBkZWxldGUgdmFsdWVDYXN0ZWRbY29weVN5bWJvbF07CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMKdmFyIHJlcXVpcmVfYmFzZTY0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgaW50VG9DaGFyTWFwID0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLnNwbGl0KCIiKTsKICAgIGV4cG9ydHMyLmVuY29kZSA9IGZ1bmN0aW9uKG51bWJlcikgewogICAgICBpZiAoMCA8PSBudW1iZXIgJiYgbnVtYmVyIDwgaW50VG9DaGFyTWFwLmxlbmd0aCkgewogICAgICAgIHJldHVybiBpbnRUb0NoYXJNYXBbbnVtYmVyXTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJNdXN0IGJlIGJldHdlZW4gMCBhbmQgNjM6ICIgKyBudW1iZXIpOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC12bHEuanMKdmFyIHJlcXVpcmVfYmFzZTY0X3ZscSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmFzZTY0LXZscS5qcyIoZXhwb3J0czIpIHsKICAgIHZhciBiYXNlNjQgPSByZXF1aXJlX2Jhc2U2NCgpOwogICAgdmFyIFZMUV9CQVNFX1NISUZUID0gNTsKICAgIHZhciBWTFFfQkFTRSA9IDEgPDwgVkxRX0JBU0VfU0hJRlQ7CiAgICB2YXIgVkxRX0JBU0VfTUFTSyA9IFZMUV9CQVNFIC0gMTsKICAgIHZhciBWTFFfQ09OVElOVUFUSU9OX0JJVCA9IFZMUV9CQVNFOwogICAgZnVuY3Rpb24gdG9WTFFTaWduZWQoYVZhbHVlKSB7CiAgICAgIHJldHVybiBhVmFsdWUgPCAwID8gKC1hVmFsdWUgPDwgMSkgKyAxIDogKGFWYWx1ZSA8PCAxKSArIDA7CiAgICB9CiAgICBleHBvcnRzMi5lbmNvZGUgPSBmdW5jdGlvbiBiYXNlNjRWTFFfZW5jb2RlKGFWYWx1ZSkgewogICAgICBsZXQgZW5jb2RlZCA9ICIiOwogICAgICBsZXQgZGlnaXQ7CiAgICAgIGxldCB2bHEgPSB0b1ZMUVNpZ25lZChhVmFsdWUpOwogICAgICBkbyB7CiAgICAgICAgZGlnaXQgPSB2bHEgJiBWTFFfQkFTRV9NQVNLOwogICAgICAgIHZscSA+Pj49IFZMUV9CQVNFX1NISUZUOwogICAgICAgIGlmICh2bHEgPiAwKSB7CiAgICAgICAgICBkaWdpdCB8PSBWTFFfQ09OVElOVUFUSU9OX0JJVDsKICAgICAgICB9CiAgICAgICAgZW5jb2RlZCArPSBiYXNlNjQuZW5jb2RlKGRpZ2l0KTsKICAgICAgfSB3aGlsZSAodmxxID4gMCk7CiAgICAgIHJldHVybiBlbmNvZGVkOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMKdmFyIHJlcXVpcmVfdXRpbDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMiKGV4cG9ydHMyKSB7CiAgICBmdW5jdGlvbiBnZXRBcmcoYUFyZ3MsIGFOYW1lLCBhRGVmYXVsdFZhbHVlKSB7CiAgICAgIGlmIChhTmFtZSBpbiBhQXJncykgewogICAgICAgIHJldHVybiBhQXJnc1thTmFtZV07CiAgICAgIH0gZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykgewogICAgICAgIHJldHVybiBhRGVmYXVsdFZhbHVlOwogICAgICB9CiAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhTmFtZSArICciIGlzIGEgcmVxdWlyZWQgYXJndW1lbnQuJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRBcmcgPSBnZXRBcmc7CiAgICB2YXIgdXJsUmVnZXhwID0gL14oPzooW1x3K1wtLl0rKTopP1wvXC8oPzooXHcrOlx3KylAKT8oW1x3Li1dKikoPzo6KFxkKykpPyguKikkLzsKICAgIHZhciBkYXRhVXJsUmVnZXhwID0gL15kYXRhOi4rXCwuKyQvOwogICAgZnVuY3Rpb24gdXJsUGFyc2UoYVVybCkgewogICAgICBjb25zdCBtYXRjaCA9IGFVcmwubWF0Y2godXJsUmVnZXhwKTsKICAgICAgaWYgKCFtYXRjaCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgc2NoZW1lOiBtYXRjaFsxXSwKICAgICAgICBhdXRoOiBtYXRjaFsyXSwKICAgICAgICBob3N0OiBtYXRjaFszXSwKICAgICAgICBwb3J0OiBtYXRjaFs0XSwKICAgICAgICBwYXRoOiBtYXRjaFs1XQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIudXJsUGFyc2UgPSB1cmxQYXJzZTsKICAgIGZ1bmN0aW9uIHVybEdlbmVyYXRlKGFQYXJzZWRVcmwpIHsKICAgICAgbGV0IHVybDMgPSAiIjsKICAgICAgaWYgKGFQYXJzZWRVcmwuc2NoZW1lKSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLnNjaGVtZSArICI6IjsKICAgICAgfQogICAgICB1cmwzICs9ICIvLyI7CiAgICAgIGlmIChhUGFyc2VkVXJsLmF1dGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuYXV0aCArICJAIjsKICAgICAgfQogICAgICBpZiAoYVBhcnNlZFVybC5ob3N0KSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLmhvc3Q7CiAgICAgIH0KICAgICAgaWYgKGFQYXJzZWRVcmwucG9ydCkgewogICAgICAgIHVybDMgKz0gIjoiICsgYVBhcnNlZFVybC5wb3J0OwogICAgICB9CiAgICAgIGlmIChhUGFyc2VkVXJsLnBhdGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwucGF0aDsKICAgICAgfQogICAgICByZXR1cm4gdXJsMzsKICAgIH0KICAgIGV4cG9ydHMyLnVybEdlbmVyYXRlID0gdXJsR2VuZXJhdGU7CiAgICB2YXIgTUFYX0NBQ0hFRF9JTlBVVFMgPSAzMjsKICAgIGZ1bmN0aW9uIGxydU1lbW9pemUoZikgewogICAgICBjb25zdCBjYWNoZSA9IFtdOwogICAgICByZXR1cm4gZnVuY3Rpb24oaW5wdXQpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhY2hlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBpZiAoY2FjaGVbaV0uaW5wdXQgPT09IGlucHV0KSB7CiAgICAgICAgICAgIGNvbnN0IHRlbXAgPSBjYWNoZVswXTsKICAgICAgICAgICAgY2FjaGVbMF0gPSBjYWNoZVtpXTsKICAgICAgICAgICAgY2FjaGVbaV0gPSB0ZW1wOwogICAgICAgICAgICByZXR1cm4gY2FjaGVbMF0ucmVzdWx0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCByZXN1bHQgPSBmKGlucHV0KTsKICAgICAgICBjYWNoZS51bnNoaWZ0KHsKICAgICAgICAgIGlucHV0LAogICAgICAgICAgcmVzdWx0CiAgICAgICAgfSk7CiAgICAgICAgaWYgKGNhY2hlLmxlbmd0aCA+IE1BWF9DQUNIRURfSU5QVVRTKSB7CiAgICAgICAgICBjYWNoZS5wb3AoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0KICAgIHZhciBub3JtYWxpemUgPSBscnVNZW1vaXplKGZ1bmN0aW9uIG5vcm1hbGl6ZTIoYVBhdGgpIHsKICAgICAgbGV0IHBhdGggPSBhUGF0aDsKICAgICAgY29uc3QgdXJsMyA9IHVybFBhcnNlKGFQYXRoKTsKICAgICAgaWYgKHVybDMpIHsKICAgICAgICBpZiAoIXVybDMucGF0aCkgewogICAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICAgIH0KICAgICAgICBwYXRoID0gdXJsMy5wYXRoOwogICAgICB9CiAgICAgIGNvbnN0IGlzQWJzb2x1dGUgPSBleHBvcnRzMi5pc0Fic29sdXRlKHBhdGgpOwogICAgICBjb25zdCBwYXJ0cyA9IFtdOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgc3RhcnQgPSBpOwogICAgICAgIGkgPSBwYXRoLmluZGV4T2YoIi8iLCBzdGFydCk7CiAgICAgICAgaWYgKGkgPT09IC0xKSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQpKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQsIGkpKTsKICAgICAgICAgIHdoaWxlIChpIDwgcGF0aC5sZW5ndGggJiYgcGF0aFtpXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IHVwID0gMDsKICAgICAgZm9yIChpID0gcGFydHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBjb25zdCBwYXJ0ID0gcGFydHNbaV07CiAgICAgICAgaWYgKHBhcnQgPT09ICIuIikgewogICAgICAgICAgcGFydHMuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSBpZiAocGFydCA9PT0gIi4uIikgewogICAgICAgICAgdXArKzsKICAgICAgICB9IGVsc2UgaWYgKHVwID4gMCkgewogICAgICAgICAgaWYgKHBhcnQgPT09ICIiKSB7CiAgICAgICAgICAgIHBhcnRzLnNwbGljZShpICsgMSwgdXApOwogICAgICAgICAgICB1cCA9IDA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0cy5zcGxpY2UoaSwgMik7CiAgICAgICAgICAgIHVwLS07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHBhdGggPSBwYXJ0cy5qb2luKCIvIik7CiAgICAgIGlmIChwYXRoID09PSAiIikgewogICAgICAgIHBhdGggPSBpc0Fic29sdXRlID8gIi8iIDogIi4iOwogICAgICB9CiAgICAgIGlmICh1cmwzKSB7CiAgICAgICAgdXJsMy5wYXRoID0gcGF0aDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUodXJsMyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGg7CiAgICB9KTsKICAgIGV4cG9ydHMyLm5vcm1hbGl6ZSA9IG5vcm1hbGl6ZTsKICAgIGZ1bmN0aW9uIGpvaW4yKGFSb290LCBhUGF0aCkgewogICAgICBpZiAoYVJvb3QgPT09ICIiKSB7CiAgICAgICAgYVJvb3QgPSAiLiI7CiAgICAgIH0KICAgICAgaWYgKGFQYXRoID09PSAiIikgewogICAgICAgIGFQYXRoID0gIi4iOwogICAgICB9CiAgICAgIGNvbnN0IGFQYXRoVXJsID0gdXJsUGFyc2UoYVBhdGgpOwogICAgICBjb25zdCBhUm9vdFVybCA9IHVybFBhcnNlKGFSb290KTsKICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgYVJvb3QgPSBhUm9vdFVybC5wYXRoIHx8ICIvIjsKICAgICAgfQogICAgICBpZiAoYVBhdGhVcmwgJiYgIWFQYXRoVXJsLnNjaGVtZSkgewogICAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgICAgYVBhdGhVcmwuc2NoZW1lID0gYVJvb3RVcmwuc2NoZW1lOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVBhdGhVcmwpOwogICAgICB9CiAgICAgIGlmIChhUGF0aFVybCB8fCBhUGF0aC5tYXRjaChkYXRhVXJsUmVnZXhwKSkgewogICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgfQogICAgICBpZiAoYVJvb3RVcmwgJiYgIWFSb290VXJsLmhvc3QgJiYgIWFSb290VXJsLnBhdGgpIHsKICAgICAgICBhUm9vdFVybC5ob3N0ID0gYVBhdGg7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICBjb25zdCBqb2luZWQgPSBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiA/IGFQYXRoIDogbm9ybWFsaXplKGFSb290LnJlcGxhY2UoL1wvKyQvLCAiIikgKyAiLyIgKyBhUGF0aCk7CiAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgIGFSb290VXJsLnBhdGggPSBqb2luZWQ7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICByZXR1cm4gam9pbmVkOwogICAgfQogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGZ1bmN0aW9uKGFQYXRoKSB7CiAgICAgIHJldHVybiBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiB8fCB1cmxSZWdleHAudGVzdChhUGF0aCk7CiAgICB9OwogICAgZnVuY3Rpb24gcmVsYXRpdmUoYVJvb3QsIGFQYXRoKSB7CiAgICAgIGlmIChhUm9vdCA9PT0gIiIpIHsKICAgICAgICBhUm9vdCA9ICIuIjsKICAgICAgfQogICAgICBhUm9vdCA9IGFSb290LnJlcGxhY2UoL1wvJC8sICIiKTsKICAgICAgbGV0IGxldmVsID0gMDsKICAgICAgd2hpbGUgKGFQYXRoLmluZGV4T2YoYVJvb3QgKyAiLyIpICE9PSAwKSB7CiAgICAgICAgY29uc3QgaW5kZXggPSBhUm9vdC5sYXN0SW5kZXhPZigiLyIpOwogICAgICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgICB9CiAgICAgICAgYVJvb3QgPSBhUm9vdC5zbGljZSgwLCBpbmRleCk7CiAgICAgICAgaWYgKGFSb290Lm1hdGNoKC9eKFteXC9dKzpcLyk/XC8qJC8pKSB7CiAgICAgICAgICByZXR1cm4gYVBhdGg7CiAgICAgICAgfQogICAgICAgICsrbGV2ZWw7CiAgICAgIH0KICAgICAgcmV0dXJuIEFycmF5KGxldmVsICsgMSkuam9pbigiLi4vIikgKyBhUGF0aC5zdWJzdHIoYVJvb3QubGVuZ3RoICsgMSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgdmFyIHN1cHBvcnRzTnVsbFByb3RvID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICByZXR1cm4gISgiX19wcm90b19fIiBpbiBvYmopOwogICAgfSgpOwogICAgZnVuY3Rpb24gaWRlbnRpdHkocykgewogICAgICByZXR1cm4gczsKICAgIH0KICAgIGZ1bmN0aW9uIHRvU2V0U3RyaW5nKGFTdHIpIHsKICAgICAgaWYgKGlzUHJvdG9TdHJpbmcoYVN0cikpIHsKICAgICAgICByZXR1cm4gIiQiICsgYVN0cjsKICAgICAgfQogICAgICByZXR1cm4gYVN0cjsKICAgIH0KICAgIGV4cG9ydHMyLnRvU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IHRvU2V0U3RyaW5nOwogICAgZnVuY3Rpb24gZnJvbVNldFN0cmluZyhhU3RyKSB7CiAgICAgIGlmIChpc1Byb3RvU3RyaW5nKGFTdHIpKSB7CiAgICAgICAgcmV0dXJuIGFTdHIuc2xpY2UoMSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGFTdHI7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IGZyb21TZXRTdHJpbmc7CiAgICBmdW5jdGlvbiBpc1Byb3RvU3RyaW5nKHMpIHsKICAgICAgaWYgKCFzKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0IGxlbmd0aCA9IHMubGVuZ3RoOwogICAgICBpZiAobGVuZ3RoIDwgOSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBpZiAocy5jaGFyQ29kZUF0KGxlbmd0aCAtIDEpICE9PSA5NSB8fCBzLmNoYXJDb2RlQXQobGVuZ3RoIC0gMikgIT09IDk1IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSAzKSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA0KSAhPT0gMTE2IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA1KSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA2KSAhPT0gMTE0IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA3KSAhPT0gMTEyIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA4KSAhPT0gOTUgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDkpICE9PSA5NSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gbGVuZ3RoIC0gMTA7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHMuY2hhckNvZGVBdChpKSAhPT0gMzYpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyhtYXBwaW5nQSwgbWFwcGluZ0IsIG9ubHlDb21wYXJlT3JpZ2luYWwpIHsKICAgICAgbGV0IGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCB8fCBvbmx5Q29tcGFyZU9yaWdpbmFsKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMgPSBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9uczsKICAgIGZ1bmN0aW9uIGNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkKG1hcHBpbmdBLCBtYXBwaW5nQiwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDAgfHwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQ7CiAgICBmdW5jdGlvbiBzdHJjbXAoYVN0cjEsIGFTdHIyKSB7CiAgICAgIGlmIChhU3RyMSA9PT0gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMDsKICAgICAgfQogICAgICBpZiAoYVN0cjEgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICBpZiAoYVN0cjIgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgaWYgKGFTdHIxID4gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICByZXR1cm4gLTE7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nQSwgbWFwcGluZ0IpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQ7CiAgICBmdW5jdGlvbiBwYXJzZVNvdXJjZU1hcElucHV0KHN0cjIpIHsKICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyMi5yZXBsYWNlKC9eXCldfSdbXlxuXSpcbi8sICIiKSk7CiAgICB9CiAgICBleHBvcnRzMi5wYXJzZVNvdXJjZU1hcElucHV0ID0gcGFyc2VTb3VyY2VNYXBJbnB1dDsKICAgIGZ1bmN0aW9uIGNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgc291cmNlVVJMLCBzb3VyY2VNYXBVUkwpIHsKICAgICAgc291cmNlVVJMID0gc291cmNlVVJMIHx8ICIiOwogICAgICBpZiAoc291cmNlUm9vdCkgewogICAgICAgIGlmIChzb3VyY2VSb290W3NvdXJjZVJvb3QubGVuZ3RoIC0gMV0gIT09ICIvIiAmJiBzb3VyY2VVUkxbMF0gIT09ICIvIikgewogICAgICAgICAgc291cmNlUm9vdCArPSAiLyI7CiAgICAgICAgfQogICAgICAgIHNvdXJjZVVSTCA9IHNvdXJjZVJvb3QgKyBzb3VyY2VVUkw7CiAgICAgIH0KICAgICAgaWYgKHNvdXJjZU1hcFVSTCkgewogICAgICAgIGNvbnN0IHBhcnNlZCA9IHVybFBhcnNlKHNvdXJjZU1hcFVSTCk7CiAgICAgICAgaWYgKCFwYXJzZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigic291cmNlTWFwVVJMIGNvdWxkIG5vdCBiZSBwYXJzZWQiKTsKICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5wYXRoKSB7CiAgICAgICAgICBjb25zdCBpbmRleCA9IHBhcnNlZC5wYXRoLmxhc3RJbmRleE9mKCIvIik7CiAgICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgICBwYXJzZWQucGF0aCA9IHBhcnNlZC5wYXRoLnN1YnN0cmluZygwLCBpbmRleCArIDEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzb3VyY2VVUkwgPSBqb2luMih1cmxHZW5lcmF0ZShwYXJzZWQpLCBzb3VyY2VVUkwpOwogICAgICB9CiAgICAgIHJldHVybiBub3JtYWxpemUoc291cmNlVVJMKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXB1dGVTb3VyY2VVUkwgPSBjb21wdXRlU291cmNlVVJMOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzCnZhciByZXF1aXJlX2FycmF5X3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzIihleHBvcnRzMikgewogICAgdmFyIEFycmF5U2V0ID0gY2xhc3MgX0FycmF5U2V0IHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgdGhpcy5fYXJyYXkgPSBbXTsKICAgICAgICB0aGlzLl9zZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTdGF0aWMgbWV0aG9kIGZvciBjcmVhdGluZyBBcnJheVNldCBpbnN0YW5jZXMgZnJvbSBhbiBleGlzdGluZyBhcnJheS4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tQXJyYXkoYUFycmF5LCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3Qgc2V0MiA9IG5ldyBfQXJyYXlTZXQoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYUFycmF5Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBzZXQyLmFkZChhQXJyYXlbaV0sIGFBbGxvd0R1cGxpY2F0ZXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0MjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIGhvdyBtYW55IHVuaXF1ZSBpdGVtcyBhcmUgaW4gdGhpcyBBcnJheVNldC4gSWYgZHVwbGljYXRlcyBoYXZlIGJlZW4KICAgICAgICogYWRkZWQsIHRoYW4gdGhvc2UgZG8gbm90IGNvdW50IHRvd2FyZHMgdGhlIHNpemUuCiAgICAgICAqCiAgICAgICAqIEByZXR1cm5zIE51bWJlcgogICAgICAgKi8KICAgICAgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2V0LnNpemU7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc3RyaW5nIHRvIHRoaXMgc2V0LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGFkZChhU3RyLCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3QgaXNEdXBsaWNhdGUgPSB0aGlzLmhhcyhhU3RyKTsKICAgICAgICBjb25zdCBpZHggPSB0aGlzLl9hcnJheS5sZW5ndGg7CiAgICAgICAgaWYgKCFpc0R1cGxpY2F0ZSB8fCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgICB0aGlzLl9hcnJheS5wdXNoKGFTdHIpOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzRHVwbGljYXRlKSB7CiAgICAgICAgICB0aGlzLl9zZXQuc2V0KGFTdHIsIGlkeCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJcyB0aGUgZ2l2ZW4gc3RyaW5nIGEgbWVtYmVyIG9mIHRoaXMgc2V0PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGhhcyhhU3RyKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NldC5oYXMoYVN0cik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdoYXQgaXMgdGhlIGluZGV4IG9mIHRoZSBnaXZlbiBzdHJpbmcgaW4gdGhlIGFycmF5PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGluZGV4T2YoYVN0cikgewogICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX3NldC5nZXQoYVN0cik7CiAgICAgICAgaWYgKGlkeCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gaWR4OwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVN0ciArICciIGlzIG5vdCBpbiB0aGUgc2V0LicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXaGF0IGlzIHRoZSBlbGVtZW50IGF0IHRoZSBnaXZlbiBpbmRleD8KICAgICAgICoKICAgICAgICogQHBhcmFtIE51bWJlciBhSWR4CiAgICAgICAqLwogICAgICBhdChhSWR4KSB7CiAgICAgICAgaWYgKGFJZHggPj0gMCAmJiBhSWR4IDwgdGhpcy5fYXJyYXkubGVuZ3RoKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYXJyYXlbYUlkeF07CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBpbmRleGVkIGJ5ICIgKyBhSWR4KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgYXJyYXkgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzZXQgKHdoaWNoIGhhcyB0aGUgcHJvcGVyIGluZGljZXMKICAgICAgICogaW5kaWNhdGVkIGJ5IGluZGV4T2YpLiBOb3RlIHRoYXQgdGhpcyBpcyBhIGNvcHkgb2YgdGhlIGludGVybmFsIGFycmF5IHVzZWQKICAgICAgICogZm9yIHN0b3JpbmcgdGhlIG1lbWJlcnMgc28gdGhhdCBubyBvbmUgY2FuIG1lc3Mgd2l0aCBpbnRlcm5hbCBzdGF0ZS4KICAgICAgICovCiAgICAgIHRvQXJyYXkoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FycmF5LnNsaWNlKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BcnJheVNldCA9IEFycmF5U2V0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzCnZhciByZXF1aXJlX21hcHBpbmdfbGlzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBjb25zdCBsaW5lQSA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmU7CiAgICAgIGNvbnN0IGxpbmVCID0gbWFwcGluZ0IuZ2VuZXJhdGVkTGluZTsKICAgICAgY29uc3QgY29sdW1uQSA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbjsKICAgICAgY29uc3QgY29sdW1uQiA9IG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgcmV0dXJuIGxpbmVCID4gbGluZUEgfHwgbGluZUIgPT0gbGluZUEgJiYgY29sdW1uQiA+PSBjb2x1bW5BIHx8IHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCKSA8PSAwOwogICAgfQogICAgdmFyIE1hcHBpbmdMaXN0ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgdGhpcy5fbGFzdCA9IHsgZ2VuZXJhdGVkTGluZTogLTEsIGdlbmVyYXRlZENvbHVtbjogMCB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIHRocm91Z2ggaW50ZXJuYWwgaXRlbXMuIFRoaXMgbWV0aG9kIHRha2VzIHRoZSBzYW1lIGFyZ3VtZW50cyB0aGF0CiAgICAgICAqIGBBcnJheS5wcm90b3R5cGUuZm9yRWFjaGAgdGFrZXMuCiAgICAgICAqCiAgICAgICAqIE5PVEU6IFRoZSBvcmRlciBvZiB0aGUgbWFwcGluZ3MgaXMgTk9UIGd1YXJhbnRlZWQuCiAgICAgICAqLwogICAgICB1bnNvcnRlZEZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZykgewogICAgICAgIHRoaXMuX2FycmF5LmZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc291cmNlIG1hcHBpbmcuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYU1hcHBpbmcKICAgICAgICovCiAgICAgIGFkZChhTWFwcGluZykgewogICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKHRoaXMuX2xhc3QsIGFNYXBwaW5nKSkgewogICAgICAgICAgdGhpcy5fbGFzdCA9IGFNYXBwaW5nOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IGZhbHNlOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBmbGF0LCBzb3J0ZWQgYXJyYXkgb2YgbWFwcGluZ3MuIFRoZSBtYXBwaW5ncyBhcmUgc29ydGVkIGJ5CiAgICAgICAqIGdlbmVyYXRlZCBwb3NpdGlvbi4KICAgICAgICoKICAgICAgICogV0FSTklORzogVGhpcyBtZXRob2QgcmV0dXJucyBpbnRlcm5hbCBkYXRhIHdpdGhvdXQgY29weWluZywgZm9yCiAgICAgICAqIHBlcmZvcm1hbmNlLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgTk9UIGJlIG11dGF0ZWQsIGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcwogICAgICAgKiBhbiBpbW11dGFibGUgYm9ycm93LiBJZiB5b3Ugd2FudCB0byB0YWtlIG93bmVyc2hpcCwgeW91IG11c3QgbWFrZSB5b3VyIG93bgogICAgICAgKiBjb3B5LgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICBpZiAoIXRoaXMuX3NvcnRlZCkgewogICAgICAgICAgdGhpcy5fYXJyYXkuc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKTsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9hcnJheTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1hcHBpbmdMaXN0ID0gTWFwcGluZ0xpc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2UtbWFwLWdlbmVyYXRvci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1nZW5lcmF0b3IuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgYmFzZTY0VkxRID0gcmVxdWlyZV9iYXNlNjRfdmxxKCk7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBBcnJheVNldCA9IHJlcXVpcmVfYXJyYXlfc2V0KCkuQXJyYXlTZXQ7CiAgICB2YXIgTWFwcGluZ0xpc3QgPSByZXF1aXJlX21hcHBpbmdfbGlzdCgpLk1hcHBpbmdMaXN0OwogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IGNsYXNzIF9Tb3VyY2VNYXBHZW5lcmF0b3IgewogICAgICBjb25zdHJ1Y3RvcihhQXJncykgewogICAgICAgIGlmICghYUFyZ3MpIHsKICAgICAgICAgIGFBcmdzID0ge307CiAgICAgICAgfQogICAgICAgIHRoaXMuX2ZpbGUgPSB1dGlsLmdldEFyZyhhQXJncywgImZpbGUiLCBudWxsKTsKICAgICAgICB0aGlzLl9zb3VyY2VSb290ID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2VSb290IiwgbnVsbCk7CiAgICAgICAgdGhpcy5fc2tpcFZhbGlkYXRpb24gPSB1dGlsLmdldEFyZyhhQXJncywgInNraXBWYWxpZGF0aW9uIiwgZmFsc2UpOwogICAgICAgIHRoaXMuX3NvdXJjZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICB0aGlzLl9uYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgIHRoaXMuX21hcHBpbmdzID0gbmV3IE1hcHBpbmdMaXN0KCk7CiAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlcyBhIG5ldyBTb3VyY2VNYXBHZW5lcmF0b3IgYmFzZWQgb24gYSBTb3VyY2VNYXBDb25zdW1lcgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBTb3VyY2VNYXAuCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwQ29uc3VtZXIpIHsKICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZVJvb3Q7CiAgICAgICAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IF9Tb3VyY2VNYXBHZW5lcmF0b3IoewogICAgICAgICAgZmlsZTogYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUsCiAgICAgICAgICBzb3VyY2VSb290CiAgICAgICAgfSk7CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLmVhY2hNYXBwaW5nKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGNvbnN0IG5ld01hcHBpbmcgPSB7CiAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uCiAgICAgICAgICAgIH0KICAgICAgICAgIH07CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT0gbnVsbCkgewogICAgICAgICAgICBuZXdNYXBwaW5nLnNvdXJjZSA9IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmV3TWFwcGluZy5zb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIG5ld01hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZXdNYXBwaW5nLm9yaWdpbmFsID0gewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICBuZXdNYXBwaW5nLm5hbWUgPSBtYXBwaW5nLm5hbWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGdlbmVyYXRvci5hZGRNYXBwaW5nKG5ld01hcHBpbmcpOwogICAgICAgIH0pOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgbGV0IHNvdXJjZVJlbGF0aXZlID0gc291cmNlRmlsZTsKICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9PSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZVJlbGF0aXZlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZ2VuZXJhdG9yLl9zb3VyY2VzLmhhcyhzb3VyY2VSZWxhdGl2ZSkpIHsKICAgICAgICAgICAgZ2VuZXJhdG9yLl9zb3VyY2VzLmFkZChzb3VyY2VSZWxhdGl2ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGdlbmVyYXRvci5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiBnZW5lcmF0b3I7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHNpbmdsZSBtYXBwaW5nIGZyb20gb3JpZ2luYWwgc291cmNlIGxpbmUgYW5kIGNvbHVtbiB0byB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBmb3IgdGhpcyBzb3VyY2UgbWFwIGJlaW5nIGNyZWF0ZWQuIFRoZSBtYXBwaW5nCiAgICAgICAqIG9iamVjdCBzaG91bGQgaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBnZW5lcmF0ZWQ6IEFuIG9iamVjdCB3aXRoIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIG9yaWdpbmFsOiBBbiBvYmplY3Qgd2l0aCB0aGUgb3JpZ2luYWwgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIChyZWxhdGl2ZSB0byB0aGUgc291cmNlUm9vdCkuCiAgICAgICAqICAgLSBuYW1lOiBBbiBvcHRpb25hbCBvcmlnaW5hbCB0b2tlbiBuYW1lIGZvciB0aGlzIG1hcHBpbmcuCiAgICAgICAqLwogICAgICBhZGRNYXBwaW5nKGFBcmdzKSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJnZW5lcmF0ZWQiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAib3JpZ2luYWwiLCBudWxsKTsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICBsZXQgbmFtZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibmFtZSIsIG51bGwpOwogICAgICAgIGlmICghdGhpcy5fc2tpcFZhbGlkYXRpb24pIHsKICAgICAgICAgIHRoaXMuX3ZhbGlkYXRlTWFwcGluZyhnZW5lcmF0ZWQsIG9yaWdpbmFsLCBzb3VyY2UsIG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlICE9IG51bGwpIHsKICAgICAgICAgIHNvdXJjZSA9IFN0cmluZyhzb3VyY2UpOwogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXMuYWRkKHNvdXJjZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChuYW1lICE9IG51bGwpIHsKICAgICAgICAgIG5hbWUgPSBTdHJpbmcobmFtZSk7CiAgICAgICAgICBpZiAoIXRoaXMuX25hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICB0aGlzLl9uYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzLmFkZCh7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbiwKICAgICAgICAgIG9yaWdpbmFsTGluZTogb3JpZ2luYWwgIT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG9yaWdpbmFsICE9IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uLAogICAgICAgICAgc291cmNlLAogICAgICAgICAgbmFtZQogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTZXQgdGhlIHNvdXJjZSBjb250ZW50IGZvciBhIHNvdXJjZSBmaWxlLgogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICBsZXQgc291cmNlID0gYVNvdXJjZUZpbGU7CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLl9zb3VyY2VSb290LCBzb3VyY2UpOwogICAgICAgIH0KICAgICAgICBpZiAoYVNvdXJjZUNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzQ29udGVudHMpIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zb3VyY2VzQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhzb3VyY2UpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBkZWxldGUgdGhpcy5fc291cmNlc0NvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoc291cmNlKV07CiAgICAgICAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fc291cmNlc0NvbnRlbnRzKS5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFwcGxpZXMgdGhlIG1hcHBpbmdzIG9mIGEgc3ViLXNvdXJjZS1tYXAgZm9yIGEgc3BlY2lmaWMgc291cmNlIGZpbGUgdG8gdGhlCiAgICAgICAqIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkLiBFYWNoIG1hcHBpbmcgdG8gdGhlIHN1cHBsaWVkIHNvdXJjZSBmaWxlIGlzCiAgICAgICAqIHJld3JpdHRlbiB1c2luZyB0aGUgc3VwcGxpZWQgc291cmNlIG1hcC4gTm90ZTogVGhlIHJlc29sdXRpb24gZm9yIHRoZQogICAgICAgKiByZXN1bHRpbmcgbWFwcGluZ3MgaXMgdGhlIG1pbmltaXVtIG9mIHRoaXMgbWFwIGFuZCB0aGUgc3VwcGxpZWQgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBzb3VyY2UgbWFwIHRvIGJlIGFwcGxpZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlRmlsZSBPcHRpb25hbC4gVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZS4KICAgICAgICogICAgICAgIElmIG9taXR0ZWQsIFNvdXJjZU1hcENvbnN1bWVyJ3MgZmlsZSBwcm9wZXJ0eSB3aWxsIGJlIHVzZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwUGF0aCBPcHRpb25hbC4gVGhlIGRpcm5hbWUgb2YgdGhlIHBhdGggdG8gdGhlIHNvdXJjZSBtYXAKICAgICAgICogICAgICAgIHRvIGJlIGFwcGxpZWQuIElmIHJlbGF0aXZlLCBpdCBpcyByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBuZWVkZWQgd2hlbiB0aGUgdHdvIHNvdXJjZSBtYXBzIGFyZW4ndCBpbiB0aGUgc2FtZQogICAgICAgKiAgICAgICAgZGlyZWN0b3J5LCBhbmQgdGhlIHNvdXJjZSBtYXAgdG8gYmUgYXBwbGllZCBjb250YWlucyByZWxhdGl2ZSBzb3VyY2UKICAgICAgICogICAgICAgIHBhdGhzLiBJZiBzbywgdGhvc2UgcmVsYXRpdmUgc291cmNlIHBhdGhzIG5lZWQgdG8gYmUgcmV3cml0dGVuCiAgICAgICAqICAgICAgICByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKi8KICAgICAgYXBwbHlTb3VyY2VNYXAoYVNvdXJjZU1hcENvbnN1bWVyLCBhU291cmNlRmlsZSwgYVNvdXJjZU1hcFBhdGgpIHsKICAgICAgICBsZXQgc291cmNlRmlsZSA9IGFTb3VyY2VGaWxlOwogICAgICAgIGlmIChhU291cmNlRmlsZSA9PSBudWxsKSB7CiAgICAgICAgICBpZiAoYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUgPT0gbnVsbCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYFNvdXJjZU1hcEdlbmVyYXRvci5wcm90b3R5cGUuYXBwbHlTb3VyY2VNYXAgcmVxdWlyZXMgZWl0aGVyIGFuIGV4cGxpY2l0IHNvdXJjZSBmaWxlLCBvciB0aGUgc291cmNlIG1hcCdzICJmaWxlIiBwcm9wZXJ0eS4gQm90aCB3ZXJlIG9taXR0ZWQuYAogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlRmlsZSA9IGFTb3VyY2VNYXBDb25zdW1lci5maWxlOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5fc291cmNlUm9vdDsKICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3U291cmNlcyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKS5sZW5ndGggPiAwID8gbmV3IEFycmF5U2V0KCkgOiB0aGlzLl9zb3VyY2VzOwogICAgICAgIGNvbnN0IG5ld05hbWVzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgdGhpcy5fbWFwcGluZ3MudW5zb3J0ZWRGb3JFYWNoKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSA9PT0gc291cmNlRmlsZSAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSAhPSBudWxsKSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gYVNvdXJjZU1hcENvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3IoewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBvcmlnaW5hbC5zb3VyY2U7CiAgICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxMaW5lID0gb3JpZ2luYWwubGluZTsKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWwuY29sdW1uOwogICAgICAgICAgICAgIGlmIChvcmlnaW5hbC5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzb3VyY2UgPSBtYXBwaW5nLnNvdXJjZTsKICAgICAgICAgIGlmIChzb3VyY2UgIT0gbnVsbCAmJiAhbmV3U291cmNlcy5oYXMoc291cmNlKSkgewogICAgICAgICAgICBuZXdTb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbmFtZSA9IG1hcHBpbmcubmFtZTsKICAgICAgICAgIGlmIChuYW1lICE9IG51bGwgJiYgIW5ld05hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICBuZXdOYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgdGhpcy5fc291cmNlcyA9IG5ld1NvdXJjZXM7CiAgICAgICAgdGhpcy5fbmFtZXMgPSBuZXdOYW1lczsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlcy5mb3JFYWNoKGZ1bmN0aW9uKHNyY0ZpbGUpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlQ29udGVudEZvcihzcmNGaWxlKTsKICAgICAgICAgIGlmIChjb250ZW50ICE9IG51bGwpIHsKICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzcmNGaWxlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBzcmNGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc3JjRmlsZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc3JjRmlsZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5zZXRTb3VyY2VDb250ZW50KHNyY0ZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBIG1hcHBpbmcgY2FuIGhhdmUgb25lIG9mIHRoZSB0aHJlZSBsZXZlbHMgb2YgZGF0YToKICAgICAgICoKICAgICAgICogICAxLiBKdXN0IHRoZSBnZW5lcmF0ZWQgcG9zaXRpb24uCiAgICAgICAqICAgMi4gVGhlIEdlbmVyYXRlZCBwb3NpdGlvbiwgb3JpZ2luYWwgcG9zaXRpb24sIGFuZCBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgMy4gR2VuZXJhdGVkIGFuZCBvcmlnaW5hbCBwb3NpdGlvbiwgb3JpZ2luYWwgc291cmNlLCBhcyB3ZWxsIGFzIGEgbmFtZQogICAgICAgKiAgICAgIHRva2VuLgogICAgICAgKgogICAgICAgKiBUbyBtYWludGFpbiBjb25zaXN0ZW5jeSwgd2UgdmFsaWRhdGUgdGhhdCBhbnkgbmV3IG1hcHBpbmcgYmVpbmcgYWRkZWQgZmFsbHMKICAgICAgICogaW4gdG8gb25lIG9mIHRoZXNlIGNhdGVnb3JpZXMuCiAgICAgICAqLwogICAgICBfdmFsaWRhdGVNYXBwaW5nKGFHZW5lcmF0ZWQsIGFPcmlnaW5hbCwgYVNvdXJjZSwgYU5hbWUpIHsKICAgICAgICBpZiAoYU9yaWdpbmFsICYmIHR5cGVvZiBhT3JpZ2luYWwubGluZSAhPT0gIm51bWJlciIgJiYgdHlwZW9mIGFPcmlnaW5hbC5jb2x1bW4gIT09ICJudW1iZXIiKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJvcmlnaW5hbC5saW5lIGFuZCBvcmlnaW5hbC5jb2x1bW4gYXJlIG5vdCBudW1iZXJzIC0tIHlvdSBwcm9iYWJseSBtZWFudCB0byBvbWl0IHRoZSBvcmlnaW5hbCBtYXBwaW5nIGVudGlyZWx5IGFuZCBvbmx5IG1hcCB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9uLiBJZiBzbywgcGFzcyBudWxsIGZvciB0aGUgb3JpZ2luYWwgbWFwcGluZyBpbnN0ZWFkIG9mIGFuIG9iamVjdCB3aXRoIGVtcHR5IG9yIG51bGwgdmFsdWVzLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYUdlbmVyYXRlZC5saW5lID4gMCAmJiBhR2VuZXJhdGVkLmNvbHVtbiA+PSAwICYmICFhT3JpZ2luYWwgJiYgIWFTb3VyY2UgJiYgIWFOYW1lKSB7CiAgICAgICAgfSBlbHNlIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYU9yaWdpbmFsICYmICJsaW5lIiBpbiBhT3JpZ2luYWwgJiYgImNvbHVtbiIgaW4gYU9yaWdpbmFsICYmIGFHZW5lcmF0ZWQubGluZSA+IDAgJiYgYUdlbmVyYXRlZC5jb2x1bW4gPj0gMCAmJiBhT3JpZ2luYWwubGluZSA+IDAgJiYgYU9yaWdpbmFsLmNvbHVtbiA+PSAwICYmIGFTb3VyY2UpIHsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIG1hcHBpbmc6ICIgKyBKU09OLnN0cmluZ2lmeSh7CiAgICAgICAgICAgIGdlbmVyYXRlZDogYUdlbmVyYXRlZCwKICAgICAgICAgICAgc291cmNlOiBhU291cmNlLAogICAgICAgICAgICBvcmlnaW5hbDogYU9yaWdpbmFsLAogICAgICAgICAgICBuYW1lOiBhTmFtZQogICAgICAgICAgfSkpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogU2VyaWFsaXplIHRoZSBhY2N1bXVsYXRlZCBtYXBwaW5ncyBpbiB0byB0aGUgc3RyZWFtIG9mIGJhc2UgNjQgVkxRcwogICAgICAgKiBzcGVjaWZpZWQgYnkgdGhlIHNvdXJjZSBtYXAgZm9ybWF0LgogICAgICAgKi8KICAgICAgX3NlcmlhbGl6ZU1hcHBpbmdzKCkgewogICAgICAgIGxldCBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzR2VuZXJhdGVkTGluZSA9IDE7CiAgICAgICAgbGV0IHByZXZpb3VzT3JpZ2luYWxDb2x1bW4gPSAwOwogICAgICAgIGxldCBwcmV2aW91c09yaWdpbmFsTGluZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzTmFtZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzU291cmNlID0gMDsKICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IG5leHQ7CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgbGV0IG5hbWVJZHg7CiAgICAgICAgbGV0IHNvdXJjZUlkeDsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gbWFwcGluZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIG1hcHBpbmcgPSBtYXBwaW5nc1tpXTsKICAgICAgICAgIG5leHQgPSAiIjsKICAgICAgICAgIGlmIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIG5leHQgKz0gIjsiOwogICAgICAgICAgICAgIHByZXZpb3VzR2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPiAwKSB7CiAgICAgICAgICAgIGlmICghdXRpbC5jb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nLCBtYXBwaW5nc1tpIC0gMV0pKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmV4dCArPSAiLCI7CiAgICAgICAgICB9CiAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBwcmV2aW91c0dlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlSWR4ID0gdGhpcy5fc291cmNlcy5pbmRleE9mKG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKHNvdXJjZUlkeCAtIHByZXZpb3VzU291cmNlKTsKICAgICAgICAgICAgcHJldmlvdXNTb3VyY2UgPSBzb3VyY2VJZHg7CiAgICAgICAgICAgIG5leHQgKz0gYmFzZTY0VkxRLmVuY29kZShtYXBwaW5nLm9yaWdpbmFsTGluZSAtIDEgLSBwcmV2aW91c09yaWdpbmFsTGluZSk7CiAgICAgICAgICAgIHByZXZpb3VzT3JpZ2luYWxMaW5lID0gbWFwcGluZy5vcmlnaW5hbExpbmUgLSAxOwogICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5vcmlnaW5hbENvbHVtbiAtIHByZXZpb3VzT3JpZ2luYWxDb2x1bW4pOwogICAgICAgICAgICBwcmV2aW91c09yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmFtZUlkeCA9IHRoaXMuX25hbWVzLmluZGV4T2YobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobmFtZUlkeCAtIHByZXZpb3VzTmFtZSk7CiAgICAgICAgICAgICAgcHJldmlvdXNOYW1lID0gbmFtZUlkeDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmVzdWx0ICs9IG5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgX2dlbmVyYXRlU291cmNlc0NvbnRlbnQoYVNvdXJjZXMsIGFTb3VyY2VSb290KSB7CiAgICAgICAgcmV0dXJuIGFTb3VyY2VzLm1hcChmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFTb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZShhU291cmNlUm9vdCwgc291cmNlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtleSA9IHV0aWwudG9TZXRTdHJpbmcoc291cmNlKTsKICAgICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5fc291cmNlc0NvbnRlbnRzLCBrZXkpID8gdGhpcy5fc291cmNlc0NvbnRlbnRzW2tleV0gOiBudWxsOwogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBFeHRlcm5hbGl6ZSB0aGUgc291cmNlIG1hcC4KICAgICAgICovCiAgICAgIHRvSlNPTigpIHsKICAgICAgICBjb25zdCBtYXAyID0gewogICAgICAgICAgdmVyc2lvbjogdGhpcy5fdmVyc2lvbiwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMuX3NvdXJjZXMudG9BcnJheSgpLAogICAgICAgICAgbmFtZXM6IHRoaXMuX25hbWVzLnRvQXJyYXkoKSwKICAgICAgICAgIG1hcHBpbmdzOiB0aGlzLl9zZXJpYWxpemVNYXBwaW5ncygpCiAgICAgICAgfTsKICAgICAgICBpZiAodGhpcy5fZmlsZSAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLmZpbGUgPSB0aGlzLl9maWxlOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZVJvb3QgPSB0aGlzLl9zb3VyY2VSb290OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZXNDb250ZW50ID0gdGhpcy5fZ2VuZXJhdGVTb3VyY2VzQ29udGVudChtYXAyLnNvdXJjZXMsIG1hcDIuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZW5kZXIgdGhlIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkIHRvIGEgc3RyaW5nLgogICAgICAgKi8KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMudG9KU09OKCkpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwR2VuZXJhdG9yLnByb3RvdHlwZS5fdmVyc2lvbiA9IDM7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBHZW5lcmF0b3IgPSBTb3VyY2VNYXBHZW5lcmF0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iaW5hcnktc2VhcmNoLmpzCnZhciByZXF1aXJlX2JpbmFyeV9zZWFyY2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2JpbmFyeS1zZWFyY2guanMiKGV4cG9ydHMyKSB7CiAgICBleHBvcnRzMi5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBleHBvcnRzMi5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBmdW5jdGlvbiByZWN1cnNpdmVTZWFyY2goYUxvdywgYUhpZ2gsIGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKSB7CiAgICAgIGNvbnN0IG1pZCA9IE1hdGguZmxvb3IoKGFIaWdoIC0gYUxvdykgLyAyKSArIGFMb3c7CiAgICAgIGNvbnN0IGNtcCA9IGFDb21wYXJlKGFOZWVkbGUsIGFIYXlzdGFja1ttaWRdLCB0cnVlKTsKICAgICAgaWYgKGNtcCA9PT0gMCkgewogICAgICAgIHJldHVybiBtaWQ7CiAgICAgIH0gZWxzZSBpZiAoY21wID4gMCkgewogICAgICAgIGlmIChhSGlnaCAtIG1pZCA+IDEpIHsKICAgICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2gobWlkLCBhSGlnaCwgYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpOwogICAgICAgIH0KICAgICAgICBpZiAoYUJpYXMgPT0gZXhwb3J0czIuTEVBU1RfVVBQRVJfQk9VTkQpIHsKICAgICAgICAgIHJldHVybiBhSGlnaCA8IGFIYXlzdGFjay5sZW5ndGggPyBhSGlnaCA6IC0xOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWlkOwogICAgICB9CiAgICAgIGlmIChtaWQgLSBhTG93ID4gMSkgewogICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2goYUxvdywgbWlkLCBhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcyk7CiAgICAgIH0KICAgICAgaWYgKGFCaWFzID09IGV4cG9ydHMyLkxFQVNUX1VQUEVSX0JPVU5EKSB7CiAgICAgICAgcmV0dXJuIG1pZDsKICAgICAgfQogICAgICByZXR1cm4gYUxvdyA8IDAgPyAtMSA6IGFMb3c7CiAgICB9CiAgICBleHBvcnRzMi5zZWFyY2ggPSBmdW5jdGlvbiBzZWFyY2goYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpIHsKICAgICAgaWYgKGFIYXlzdGFjay5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgbGV0IGluZGV4ID0gcmVjdXJzaXZlU2VhcmNoKAogICAgICAgIC0xLAogICAgICAgIGFIYXlzdGFjay5sZW5ndGgsCiAgICAgICAgYU5lZWRsZSwKICAgICAgICBhSGF5c3RhY2ssCiAgICAgICAgYUNvbXBhcmUsCiAgICAgICAgYUJpYXMgfHwgZXhwb3J0czIuR1JFQVRFU1RfTE9XRVJfQk9VTkQKICAgICAgKTsKICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICB3aGlsZSAoaW5kZXggLSAxID49IDApIHsKICAgICAgICBpZiAoYUNvbXBhcmUoYUhheXN0YWNrW2luZGV4XSwgYUhheXN0YWNrW2luZGV4IC0gMV0sIHRydWUpICE9PSAwKSB7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgLS1pbmRleDsKICAgICAgfQogICAgICByZXR1cm4gaW5kZXg7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzCnZhciByZXF1aXJlX3JlYWRfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGlzQnJvd3NlckVudmlyb25tZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd2luZG93ICE9PSAidW5kZWZpbmVkIiAmJiB0aGlzID09PSB3aW5kb3c7CiAgICB9LmNhbGwoKTsKICAgIGlmIChpc0Jyb3dzZXJFbnZpcm9ubWVudCkgewogICAgICBsZXQgbWFwcGluZ3NXYXNtID0gbnVsbDsKICAgICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gcmVhZFdhc20oKSB7CiAgICAgICAgaWYgKHR5cGVvZiBtYXBwaW5nc1dhc20gPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gZmV0Y2gobWFwcGluZ3NXYXNtKS50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKSk7CiAgICAgICAgfQogICAgICAgIGlmIChtYXBwaW5nc1dhc20gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikgewogICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYXBwaW5nc1dhc20pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIllvdSBtdXN0IHByb3ZpZGUgdGhlIHN0cmluZyBVUkwgb3IgQXJyYXlCdWZmZXIgY29udGVudHMgb2YgbGliL21hcHBpbmdzLndhc20gYnkgY2FsbGluZyBTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplKHsgJ2xpYi9tYXBwaW5ncy53YXNtJzogLi4uIH0pIGJlZm9yZSB1c2luZyBTb3VyY2VNYXBDb25zdW1lciIpOwogICAgICB9OwogICAgICBtb2R1bGUyLmV4cG9ydHMuaW5pdGlhbGl6ZSA9IChpbnB1dCkgPT4gbWFwcGluZ3NXYXNtID0gaW5wdXQ7CiAgICB9IGVsc2UgewogICAgICBjb25zdCBmcyA9IHJlcXVpcmUoImZzIik7CiAgICAgIGNvbnN0IHBhdGggPSByZXF1aXJlKCJwYXRoIik7CiAgICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHJlYWRXYXNtKCkgewogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CiAgICAgICAgICBjb25zdCB3YXNtUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICJtYXBwaW5ncy53YXNtIik7CiAgICAgICAgICBmcy5yZWFkRmlsZSh3YXNtUGF0aCwgbnVsbCwgKGVycm9yLCBkYXRhKSA9PiB7CiAgICAgICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgICAgIHJlamVjdChlcnJvcik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc29sdmUoZGF0YS5idWZmZXIpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIG1vZHVsZTIuZXhwb3J0cy5pbml0aWFsaXplID0gKF8pID0+IHsKICAgICAgICBjb25zb2xlLmRlYnVnKCJTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplIGlzIGEgbm8tb3Agd2hlbiBydW5uaW5nIGluIG5vZGUuanMiKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3dhc20uanMKdmFyIHJlcXVpcmVfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvd2FzbS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICBmdW5jdGlvbiBNYXBwaW5nKCkgewogICAgICB0aGlzLmdlbmVyYXRlZExpbmUgPSAwOwogICAgICB0aGlzLmdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgIHRoaXMubGFzdEdlbmVyYXRlZENvbHVtbiA9IG51bGw7CiAgICAgIHRoaXMuc291cmNlID0gbnVsbDsKICAgICAgdGhpcy5vcmlnaW5hbExpbmUgPSBudWxsOwogICAgICB0aGlzLm9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgdGhpcy5uYW1lID0gbnVsbDsKICAgIH0KICAgIHZhciBjYWNoZWRXYXNtID0gbnVsbDsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHdhc20oKSB7CiAgICAgIGlmIChjYWNoZWRXYXNtKSB7CiAgICAgICAgcmV0dXJuIGNhY2hlZFdhc207CiAgICAgIH0KICAgICAgY29uc3QgY2FsbGJhY2tTdGFjayA9IFtdOwogICAgICBjYWNoZWRXYXNtID0gcmVhZFdhc20oKS50aGVuKChidWZmZXIpID0+IHsKICAgICAgICByZXR1cm4gV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUoYnVmZmVyLCB7CiAgICAgICAgICBlbnY6IHsKICAgICAgICAgICAgbWFwcGluZ19jYWxsYmFjayhnZW5lcmF0ZWRMaW5lLCBnZW5lcmF0ZWRDb2x1bW4sIGhhc0xhc3RHZW5lcmF0ZWRDb2x1bW4sIGxhc3RHZW5lcmF0ZWRDb2x1bW4sIGhhc09yaWdpbmFsLCBzb3VyY2UsIG9yaWdpbmFsTGluZSwgb3JpZ2luYWxDb2x1bW4sIGhhc05hbWUsIG5hbWUpIHsKICAgICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gbmV3IE1hcHBpbmcoKTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZExpbmUgPSBnZW5lcmF0ZWRMaW5lICsgMTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiA9IGdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAoaGFzTGFzdEdlbmVyYXRlZENvbHVtbikgewogICAgICAgICAgICAgICAgbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uID0gbGFzdEdlbmVyYXRlZENvbHVtbiAtIDE7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChoYXNPcmlnaW5hbCkgewogICAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBzb3VyY2U7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSA9IG9yaWdpbmFsTGluZSArIDE7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgICAgICBpZiAoaGFzTmFtZSkgewogICAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSBuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjYWxsYmFja1N0YWNrW2NhbGxiYWNrU3RhY2subGVuZ3RoIC0gMV0obWFwcGluZyk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2FsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImFsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImdlbmVyYXRlZF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2dlbmVyYXRlZF9sb2NhdGlvbl9mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJnZW5lcmF0ZWRfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X29yaWdpbmFsX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoIm9yaWdpbmFsX2xvY2F0aW9uX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfb3JpZ2luYWxfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgib3JpZ2luYWxfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9zb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgic29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoInNvcnRfYnlfb3JpZ2luYWxfbG9jYXRpb24iKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KS50aGVuKChXYXNtKSA9PiB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGV4cG9ydHM6IFdhc20uaW5zdGFuY2UuZXhwb3J0cywKICAgICAgICAgIHdpdGhNYXBwaW5nQ2FsbGJhY2s6IChtYXBwaW5nQ2FsbGJhY2ssIGYpID0+IHsKICAgICAgICAgICAgY2FsbGJhY2tTdGFjay5wdXNoKG1hcHBpbmdDYWxsYmFjayk7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZigpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGNhbGxiYWNrU3RhY2sucG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KS50aGVuKG51bGwsIChlKSA9PiB7CiAgICAgICAgY2FjaGVkV2FzbSA9IG51bGw7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfSk7CiAgICAgIHJldHVybiBjYWNoZWRXYXNtOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtY29uc3VtZXIuanMKdmFyIHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1jb25zdW1lci5qcyIoZXhwb3J0czIpIHsKICAgIHZhciB1dGlsID0gcmVxdWlyZV91dGlsMigpOwogICAgdmFyIGJpbmFyeVNlYXJjaCA9IHJlcXVpcmVfYmluYXJ5X3NlYXJjaCgpOwogICAgdmFyIEFycmF5U2V0ID0gcmVxdWlyZV9hcnJheV9zZXQoKS5BcnJheVNldDsKICAgIHZhciBiYXNlNjRWTFEgPSByZXF1aXJlX2Jhc2U2NF92bHEoKTsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICB2YXIgd2FzbSA9IHJlcXVpcmVfd2FzbSgpOwogICAgdmFyIElOVEVSTkFMID0gU3ltYm9sKCJzbWNJbnRlcm5hbCIpOwogICAgdmFyIFNvdXJjZU1hcENvbnN1bWVyID0gY2xhc3MgX1NvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIGlmIChhU291cmNlTWFwID09IElOVEVSTkFMKSB7CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX2ZhY3RvcnkoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIH0KICAgICAgc3RhdGljIGluaXRpYWxpemUob3B0cykgewogICAgICAgIHJlYWRXYXNtLmluaXRpYWxpemUob3B0c1sibGliL21hcHBpbmdzLndhc20iXSk7CiAgICAgIH0KICAgICAgc3RhdGljIGZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBfZmFjdG9yeUJTTShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29uc3RydWN0IGEgbmV3IGBTb3VyY2VNYXBDb25zdW1lcmAgZnJvbSBgcmF3U291cmNlTWFwYCBhbmQgYHNvdXJjZU1hcFVybGAKICAgICAgICogKHNlZSB0aGUgYFNvdXJjZU1hcENvbnN1bWVyYCBjb25zdHJ1Y3RvciBmb3IgZGV0YWlscy4gVGhlbiwgaW52b2tlIHRoZSBgYXN5bmMKICAgICAgICogZnVuY3Rpb24gZihTb3VyY2VNYXBDb25zdW1lcikgLT4gVGAgd2l0aCB0aGUgbmV3bHkgY29uc3RydWN0ZWQgY29uc3VtZXIsIHdhaXQKICAgICAgICogZm9yIGBmYCB0byBjb21wbGV0ZSwgY2FsbCBgZGVzdHJveWAgb24gdGhlIGNvbnN1bWVyLCBhbmQgcmV0dXJuIGBmYCdzIHJldHVybgogICAgICAgKiB2YWx1ZS4KICAgICAgICoKICAgICAgICogWW91IG11c3Qgbm90IHVzZSB0aGUgY29uc3VtZXIgYWZ0ZXIgYGZgIGNvbXBsZXRlcyEKICAgICAgICoKICAgICAgICogQnkgdXNpbmcgYHdpdGhgLCB5b3UgZG8gbm90IGhhdmUgdG8gcmVtZW1iZXIgdG8gbWFudWFsbHkgY2FsbCBgZGVzdHJveWAgb24KICAgICAgICogdGhlIGNvbnN1bWVyLCBzaW5jZSBpdCB3aWxsIGJlIGNhbGxlZCBhdXRvbWF0aWNhbGx5IG9uY2UgYGZgIGNvbXBsZXRlcy4KICAgICAgICoKICAgICAgICogYGBganMKICAgICAgICogY29uc3QgeFNxdWFyZWQgPSBhd2FpdCBTb3VyY2VNYXBDb25zdW1lci53aXRoKAogICAgICAgKiAgIG15UmF3U291cmNlTWFwLAogICAgICAgKiAgIG51bGwsCiAgICAgICAqICAgYXN5bmMgZnVuY3Rpb24gKGNvbnN1bWVyKSB7CiAgICAgICAqICAgICAvLyBVc2UgYGNvbnN1bWVyYCBpbnNpZGUgaGVyZSBhbmQgZG9uJ3Qgd29ycnkgYWJvdXQgcmVtZW1iZXJpbmcKICAgICAgICogICAgIC8vIHRvIGNhbGwgYGRlc3Ryb3lgLgogICAgICAgKgogICAgICAgKiAgICAgY29uc3QgeCA9IGF3YWl0IHdoYXRldmVyKGNvbnN1bWVyKTsKICAgICAgICogICAgIHJldHVybiB4ICogeDsKICAgICAgICogICB9CiAgICAgICAqICk7CiAgICAgICAqCiAgICAgICAqIC8vIFlvdSBtYXkgbm90IHVzZSB0aGF0IGBjb25zdW1lcmAgYW55bW9yZSBvdXQgaGVyZTsgaXQgaGFzCiAgICAgICAqIC8vIGJlZW4gZGVzdHJveWVkLiBCdXQgeW91IGNhbiB1c2UgYHhTcXVhcmVkYC4KICAgICAgICogY29uc29sZS5sb2coeFNxdWFyZWQpOwogICAgICAgKiBgYGAKICAgICAgICovCiAgICAgIHN0YXRpYyBhc3luYyB3aXRoKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsLCBmKSB7CiAgICAgICAgY29uc3QgY29uc3VtZXIgPSBhd2FpdCBuZXcgX1NvdXJjZU1hcENvbnN1bWVyKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsKTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGF3YWl0IGYoY29uc3VtZXIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBjb25zdW1lci5kZXN0cm95KCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBQYXJzZSB0aGUgbWFwcGluZ3MgaW4gYSBzdHJpbmcgaW4gdG8gYSBkYXRhIHN0cnVjdHVyZSB3aGljaCB3ZSBjYW4gZWFzaWx5CiAgICAgICAqIHF1ZXJ5ICh0aGUgb3JkZXJlZCBhcnJheXMgaW4gdGhlIGB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAgKiBgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NgIHByb3BlcnRpZXMpLgogICAgICAgKi8KICAgICAgX3BhcnNlTWFwcGluZ3MoYVN0ciwgYVNvdXJjZVJvb3QpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgX3BhcnNlTWFwcGluZ3MiKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogSXRlcmF0ZSBvdmVyIGVhY2ggbWFwcGluZyBiZXR3ZWVuIGFuIG9yaWdpbmFsIHNvdXJjZS9saW5lL2NvbHVtbiBhbmQgYQogICAgICAgKiBnZW5lcmF0ZWQgbGluZS9jb2x1bW4gaW4gdGhpcyBzb3VyY2UgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gRnVuY3Rpb24gYUNhbGxiYWNrCiAgICAgICAqICAgICAgICBUaGUgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2l0aCBlYWNoIG1hcHBpbmcuCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYUNvbnRleHQKICAgICAgICogICAgICAgIE9wdGlvbmFsLiBJZiBzcGVjaWZpZWQsIHRoaXMgb2JqZWN0IHdpbGwgYmUgdGhlIHZhbHVlIG9mIGB0aGlzYCBldmVyeQogICAgICAgKiAgICAgICAgdGltZSB0aGF0IGBhQ2FsbGJhY2tgIGlzIGNhbGxlZC4KICAgICAgICogQHBhcmFtIGFPcmRlcgogICAgICAgKiAgICAgICAgRWl0aGVyIGBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVJgIG9yCiAgICAgICAqICAgICAgICBgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVJgLiBTcGVjaWZpZXMgd2hldGhlciB5b3Ugd2FudCB0bwogICAgICAgKiAgICAgICAgaXRlcmF0ZSBvdmVyIHRoZSBtYXBwaW5ncyBzb3J0ZWQgYnkgdGhlIGdlbmVyYXRlZCBmaWxlJ3MgbGluZS9jb2x1bW4KICAgICAgICogICAgICAgIG9yZGVyIG9yIHRoZSBvcmlnaW5hbCdzIHNvdXJjZS9saW5lL2NvbHVtbiBvcmRlciwgcmVzcGVjdGl2ZWx5LiBEZWZhdWx0cyB0bwogICAgICAgKiAgICAgICAgYFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUmAuCiAgICAgICAqLwogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZWFjaE1hcHBpbmciKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbGwgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwcm92aWRlZC4gSWYgbm8gY29sdW1uIGlzIHByb3ZpZGVkLCByZXR1cm5zIGFsbCBtYXBwaW5ncwogICAgICAgKiBjb3JyZXNwb25kaW5nIHRvIGEgZWl0aGVyIHRoZSBsaW5lIHdlIGFyZSBzZWFyY2hpbmcgZm9yIG9yIHRoZSBuZXh0CiAgICAgICAqIGNsb3Nlc3QgbGluZSB0aGF0IGhhcyBhbnkgbWFwcGluZ3MuIE90aGVyd2lzZSwgcmV0dXJucyBhbGwgbWFwcGluZ3MKICAgICAgICogY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gbGluZSBhbmQgZWl0aGVyIHRoZSBjb2x1bW4gd2UgYXJlIHNlYXJjaGluZyBmb3IKICAgICAgICogb3IgdGhlIG5leHQgY2xvc2VzdCBjb2x1bW4gdGhhdCBoYXMgYW55IG9mZnNldHMuCiAgICAgICAqCiAgICAgICAqIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBPcHRpb25hbC4gdGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICoKICAgICAgICogYW5kIGFuIGFycmF5IG9mIG9iamVjdHMgaXMgcmV0dXJuZWQsIGVhY2ggd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqLwogICAgICBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IoYUFyZ3MpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yIik7CiAgICAgIH0KICAgICAgZGVzdHJveSgpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZGVzdHJveSIpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLl92ZXJzaW9uID0gMzsKICAgIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUiA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUiA9IDI7CiAgICBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IFNvdXJjZU1hcENvbnN1bWVyOwogICAgdmFyIEJhc2ljU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBfQmFzaWNTb3VyY2VNYXBDb25zdW1lciBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBsZXQgc291cmNlcyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZXMiKTsKICAgICAgICAgIGNvbnN0IG5hbWVzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibmFtZXMiLCBbXSk7CiAgICAgICAgICBsZXQgc291cmNlUm9vdCA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZVJvb3QiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IHNvdXJjZXNDb250ZW50ID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic291cmNlc0NvbnRlbnQiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibWFwcGluZ3MiKTsKICAgICAgICAgIGNvbnN0IGZpbGUgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJmaWxlIiwgbnVsbCk7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZVJvb3QpIHsKICAgICAgICAgICAgc291cmNlUm9vdCA9IHV0aWwubm9ybWFsaXplKHNvdXJjZVJvb3QpOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlcyA9IHNvdXJjZXMubWFwKFN0cmluZykubWFwKHV0aWwubm9ybWFsaXplKS5tYXAoZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2VSb290ICYmIHV0aWwuaXNBYnNvbHV0ZShzb3VyY2VSb290KSAmJiB1dGlsLmlzQWJzb2x1dGUoc291cmNlKSA/IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc291cmNlKSA6IHNvdXJjZTsKICAgICAgICAgIH0pOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBBcnJheVNldC5mcm9tQXJyYXkobmFtZXMubWFwKFN0cmluZyksIHRydWUpOwogICAgICAgICAgdGhhdC5fc291cmNlcyA9IEFycmF5U2V0LmZyb21BcnJheShzb3VyY2VzLCB0cnVlKTsKICAgICAgICAgIHRoYXQuX2Fic29sdXRlU291cmNlcyA9IHRoYXQuX3NvdXJjZXMudG9BcnJheSgpLm1hcChmdW5jdGlvbihzKSB7CiAgICAgICAgICAgIHJldHVybiB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgcywgYVNvdXJjZU1hcFVSTCk7CiAgICAgICAgICB9KTsKICAgICAgICAgIHRoYXQuc291cmNlUm9vdCA9IHNvdXJjZVJvb3Q7CiAgICAgICAgICB0aGF0LnNvdXJjZXNDb250ZW50ID0gc291cmNlc0NvbnRlbnQ7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICAgICAgdGhhdC5fc291cmNlTWFwVVJMID0gYVNvdXJjZU1hcFVSTDsKICAgICAgICAgIHRoYXQuZmlsZSA9IGZpbGU7CiAgICAgICAgICB0aGF0Ll9jb21wdXRlZENvbHVtblNwYW5zID0gZmFsc2U7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5nc1B0ciA9IDA7CiAgICAgICAgICB0aGF0Ll93YXNtID0gbnVsbDsKICAgICAgICAgIHJldHVybiB3YXNtKCkudGhlbigodykgPT4gewogICAgICAgICAgICB0aGF0Ll93YXNtID0gdzsKICAgICAgICAgICAgcmV0dXJuIHRoYXQ7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogVXRpbGl0eSBmdW5jdGlvbiB0byBmaW5kIHRoZSBpbmRleCBvZiBhIHNvdXJjZS4gIFJldHVybnMgLTEgaWYgbm90CiAgICAgICAqIGZvdW5kLgogICAgICAgKi8KICAgICAgX2ZpbmRTb3VyY2VJbmRleChhU291cmNlKSB7CiAgICAgICAgbGV0IHJlbGF0aXZlU291cmNlID0gYVNvdXJjZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIHJlbGF0aXZlU291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLnNvdXJjZVJvb3QsIHJlbGF0aXZlU291cmNlKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZXMuaGFzKHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuX3NvdXJjZXMuaW5kZXhPZihyZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fYWJzb2x1dGVTb3VyY2VzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICBpZiAodGhpcy5fYWJzb2x1dGVTb3VyY2VzW2ldID09IGFTb3VyY2UpIHsKICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgQmFzaWNTb3VyY2VNYXBDb25zdW1lciBmcm9tIGEgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU291cmNlTWFwR2VuZXJhdG9yIGFTb3VyY2VNYXAKICAgICAgICogICAgICAgIFRoZSBzb3VyY2UgbWFwIHRoYXQgd2lsbCBiZSBjb25zdW1lZC4KICAgICAgICogQHBhcmFtIFN0cmluZyBhU291cmNlTWFwVVJMCiAgICAgICAqICAgICAgICBUaGUgVVJMIGF0IHdoaWNoIHRoZSBzb3VyY2UgbWFwIGNhbiBiZSBmb3VuZCAob3B0aW9uYWwpCiAgICAgICAqIEByZXR1cm5zIEJhc2ljU291cmNlTWFwQ29uc3VtZXIKICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gbmV3IF9CYXNpY1NvdXJjZU1hcENvbnN1bWVyKGFTb3VyY2VNYXAudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgICAgZ2V0IHNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Fic29sdXRlU291cmNlcy5zbGljZSgpOwogICAgICB9CiAgICAgIF9nZXRNYXBwaW5nc1B0cigpIHsKICAgICAgICBpZiAodGhpcy5fbWFwcGluZ3NQdHIgPT09IDApIHsKICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ3ModGhpcy5fbWFwcGluZ3MsIHRoaXMuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9tYXBwaW5nc1B0cjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3Qgc2l6ZSA9IGFTdHIubGVuZ3RoOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLmFsbG9jYXRlX21hcHBpbmdzKHNpemUpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmID0gbmV3IFVpbnQ4QXJyYXkodGhpcy5fd2FzbS5leHBvcnRzLm1lbW9yeS5idWZmZXIsIG1hcHBpbmdzQnVmUHRyLCBzaXplKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7IGkrKykgewogICAgICAgICAgbWFwcGluZ3NCdWZbaV0gPSBhU3RyLmNoYXJDb2RlQXQoaSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1hcHBpbmdzUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLnBhcnNlX21hcHBpbmdzKG1hcHBpbmdzQnVmUHRyKTsKICAgICAgICBpZiAoIW1hcHBpbmdzUHRyKSB7CiAgICAgICAgICBjb25zdCBlcnJvciA9IHRoaXMuX3dhc20uZXhwb3J0cy5nZXRfbGFzdF9lcnJvcigpOwogICAgICAgICAgbGV0IG1zZyA9IGBFcnJvciBwYXJzaW5nIG1hcHBpbmdzIChjb2RlICR7ZXJyb3J9KTogYDsKICAgICAgICAgIHN3aXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG5lZ2F0aXZlIGxpbmUsIGNvbHVtbiwgc291cmNlIGluZGV4LCBvciBuYW1lIGluZGV4IjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG51bWJlciBsYXJnZXIgdGhhbiAyKiozMiI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICBtc2cgKz0gInJlYWNoZWQgRU9GIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBtc2cgKz0gImludmFsaWQgYmFzZSA2NCBjaGFyYWN0ZXIgd2hpbGUgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgbXNnICs9ICJ1bmtub3duIGVycm9yIGNvZGUiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzUHRyID0gbWFwcGluZ3NQdHI7CiAgICAgIH0KICAgICAgZWFjaE1hcHBpbmcoYUNhbGxiYWNrLCBhQ29udGV4dCwgYU9yZGVyKSB7CiAgICAgICAgY29uc3QgY29udGV4dCA9IGFDb250ZXh0IHx8IG51bGw7CiAgICAgICAgY29uc3Qgb3JkZXIgPSBhT3JkZXIgfHwgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOwogICAgICAgIGNvbnN0IHNvdXJjZVJvb3QgPSB0aGlzLnNvdXJjZVJvb3Q7CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKAogICAgICAgICAgKG1hcHBpbmcpID0+IHsKICAgICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSB0aGlzLl9uYW1lcy5hdChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBhQ2FsbGJhY2suY2FsbChjb250ZXh0LCBtYXBwaW5nKTsKICAgICAgICAgIH0sCiAgICAgICAgICAoKSA9PiB7CiAgICAgICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjoKICAgICAgICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5ieV9nZW5lcmF0ZWRfbG9jYXRpb24odGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSOgogICAgICAgICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmJ5X29yaWdpbmFsX2xvY2F0aW9uKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBvcmRlciBvZiBpdGVyYXRpb24uIik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICApOwogICAgICB9CiAgICAgIGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvcihhQXJncykgewogICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gYUFyZ3MuY29sdW1uIHx8IDA7CiAgICAgICAgc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KHNvdXJjZSk7CiAgICAgICAgaWYgKHNvdXJjZSA8IDApIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgaWYgKG9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAob3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXBwaW5ncyA9IFtdOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygKICAgICAgICAgIChtKSA9PiB7CiAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbS5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIG1hcHBpbmdzLnB1c2goewogICAgICAgICAgICAgIGxpbmU6IG0uZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG0uZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKAogICAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZSAtIDEsCiAgICAgICAgICAgICAgImNvbHVtbiIgaW4gYUFyZ3MsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW4KICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICApOwogICAgICAgIHJldHVybiBtYXBwaW5nczsKICAgICAgfQogICAgICBkZXN0cm95KCkgewogICAgICAgIGlmICh0aGlzLl9tYXBwaW5nc1B0ciAhPT0gMCkgewogICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmZyZWVfbWFwcGluZ3ModGhpcy5fbWFwcGluZ3NQdHIpOwogICAgICAgICAgdGhpcy5fbWFwcGluZ3NQdHIgPSAwOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tcHV0ZSB0aGUgbGFzdCBjb2x1bW4gZm9yIGVhY2ggZ2VuZXJhdGVkIG1hcHBpbmcuIFRoZSBsYXN0IGNvbHVtbiBpcwogICAgICAgKiBpbmNsdXNpdmUuCiAgICAgICAqLwogICAgICBjb21wdXRlQ29sdW1uU3BhbnMoKSB7CiAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmNvbXB1dGVfY29sdW1uX3NwYW5zKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgIHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgPSB0cnVlOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UsIGxpbmUsIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBnZW5lcmF0ZWQKICAgICAgICogc291cmNlJ3MgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0CiAgICAgICAqIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvciBudWxsLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIG5hbWU6IFRoZSBvcmlnaW5hbCBpZGVudGlmaWVyLCBvciBudWxsLgogICAgICAgKi8KICAgICAgb3JpZ2luYWxQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIGdlbmVyYXRlZExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIpCiAgICAgICAgfTsKICAgICAgICBpZiAobmVlZGxlLmdlbmVyYXRlZExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5vcmlnaW5hbF9sb2NhdGlvbl9mb3IoCiAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgIG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLmdlbmVyYXRlZENvbHVtbiwKICAgICAgICAgICAgYmlhcwogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgICBpZiAobWFwcGluZykgewogICAgICAgICAgaWYgKG1hcHBpbmcuZ2VuZXJhdGVkTGluZSA9PT0gbmVlZGxlLmdlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICAgICAgaWYgKHNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuYXQoc291cmNlKTsKICAgICAgICAgICAgICBzb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwodGhpcy5zb3VyY2VSb290LCBzb3VyY2UsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG5hbWUgPSB1dGlsLmdldEFyZyhtYXBwaW5nLCAibmFtZSIsIG51bGwpOwogICAgICAgICAgICBpZiAobmFtZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5hdChuYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICBuYW1lCiAgICAgICAgICAgIH07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzb3VyY2U6IG51bGwsCiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgbmFtZTogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0cnVlIGlmIHdlIGhhdmUgdGhlIHNvdXJjZSBjb250ZW50IGZvciBldmVyeSBzb3VyY2UgaW4gdGhlIHNvdXJjZQogICAgICAgKiBtYXAsIGZhbHNlIG90aGVyd2lzZS4KICAgICAgICovCiAgICAgIGhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCkgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudC5sZW5ndGggPj0gdGhpcy5fc291cmNlcy5zaXplKCkgJiYgIXRoaXMuc291cmNlc0NvbnRlbnQuc29tZShmdW5jdGlvbihzYykgewogICAgICAgICAgcmV0dXJuIHNjID09IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KGFTb3VyY2UpOwogICAgICAgIGlmIChpbmRleCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFtpbmRleF07CiAgICAgICAgfQogICAgICAgIGxldCByZWxhdGl2ZVNvdXJjZSA9IGFTb3VyY2U7CiAgICAgICAgaWYgKHRoaXMuc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICByZWxhdGl2ZVNvdXJjZSA9IHV0aWwucmVsYXRpdmUodGhpcy5zb3VyY2VSb290LCByZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGxldCB1cmwzOwogICAgICAgIGlmICh0aGlzLnNvdXJjZVJvb3QgIT0gbnVsbCAmJiAodXJsMyA9IHV0aWwudXJsUGFyc2UodGhpcy5zb3VyY2VSb290KSkpIHsKICAgICAgICAgIGNvbnN0IGZpbGVVcmlBYnNQYXRoID0gcmVsYXRpdmVTb3VyY2UucmVwbGFjZSgvXmZpbGU6XC9cLy8sICIiKTsKICAgICAgICAgIGlmICh1cmwzLnNjaGVtZSA9PSAiZmlsZSIgJiYgdGhpcy5fc291cmNlcy5oYXMoZmlsZVVyaUFic1BhdGgpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50W3RoaXMuX3NvdXJjZXMuaW5kZXhPZihmaWxlVXJpQWJzUGF0aCldOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCghdXJsMy5wYXRoIHx8IHVybDMucGF0aCA9PSAiLyIpICYmIHRoaXMuX3NvdXJjZXMuaGFzKCIvIiArIHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFt0aGlzLl9zb3VyY2VzLmluZGV4T2YoIi8iICsgcmVsYXRpdmVTb3VyY2UpXTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgcmVsYXRpdmVTb3VyY2UgKyAnIiBpcyBub3QgaW4gdGhlIFNvdXJjZU1hcC4nKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoCiAgICAgICAqIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKi8KICAgICAgZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKTsKICAgICAgICBzb3VyY2UgPSB0aGlzLl9maW5kU291cmNlSW5kZXgoc291cmNlKTsKICAgICAgICBpZiAoc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICBvcmlnaW5hbExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIikKICAgICAgICB9OwogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5nZW5lcmF0ZWRfbG9jYXRpb25fZm9yKAogICAgICAgICAgICB0aGlzLl9nZXRNYXBwaW5nc1B0cigpLAogICAgICAgICAgICBuZWVkbGUuc291cmNlLAogICAgICAgICAgICBuZWVkbGUub3JpZ2luYWxMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICBiaWFzCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICAgIGlmIChtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgPT09IG5lZWRsZS5zb3VyY2UpIHsKICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgfTsKICAgIEJhc2ljU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLmNvbnN1bWVyID0gU291cmNlTWFwQ29uc3VtZXI7CiAgICBleHBvcnRzMi5CYXNpY1NvdXJjZU1hcENvbnN1bWVyID0gQmFzaWNTb3VyY2VNYXBDb25zdW1lcjsKICAgIHZhciBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBjb25zdCBzZWN0aW9ucyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNlY3Rpb25zIik7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgdGhhdC5fc291cmNlcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICAgIHRoYXQuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gbnVsbDsKICAgICAgICAgIGxldCBsYXN0T2Zmc2V0ID0gewogICAgICAgICAgICBsaW5lOiAtMSwKICAgICAgICAgICAgY29sdW1uOiAwCiAgICAgICAgICB9OwogICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHNlY3Rpb25zLm1hcCgocykgPT4gewogICAgICAgICAgICBpZiAocy51cmwpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1cHBvcnQgZm9yIHVybCBmaWVsZCBpbiBzZWN0aW9ucyBub3QgaW1wbGVtZW50ZWQuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdXRpbC5nZXRBcmcocywgIm9mZnNldCIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRMaW5lID0gdXRpbC5nZXRBcmcob2Zmc2V0LCAibGluZSIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRDb2x1bW4gPSB1dGlsLmdldEFyZyhvZmZzZXQsICJjb2x1bW4iKTsKICAgICAgICAgICAgaWYgKG9mZnNldExpbmUgPCBsYXN0T2Zmc2V0LmxpbmUgfHwgb2Zmc2V0TGluZSA9PT0gbGFzdE9mZnNldC5saW5lICYmIG9mZnNldENvbHVtbiA8IGxhc3RPZmZzZXQuY29sdW1uKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTZWN0aW9uIG9mZnNldHMgbXVzdCBiZSBvcmRlcmVkIGFuZCBub24tb3ZlcmxhcHBpbmcuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGFzdE9mZnNldCA9IG9mZnNldDsKICAgICAgICAgICAgY29uc3QgY29ucyA9IG5ldyBTb3VyY2VNYXBDb25zdW1lcih1dGlsLmdldEFyZyhzLCAibWFwIiksIGFTb3VyY2VNYXBVUkwpOwogICAgICAgICAgICByZXR1cm4gY29ucy50aGVuKChjb25zdW1lcikgPT4gewogICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICBnZW5lcmF0ZWRPZmZzZXQ6IHsKICAgICAgICAgICAgICAgICAgLy8gVGhlIG9mZnNldCBmaWVsZHMgYXJlIDAtYmFzZWQsIGJ1dCB3ZSB1c2UgMS1iYXNlZCBpbmRpY2VzIHdoZW4KICAgICAgICAgICAgICAgICAgLy8gZW5jb2RpbmcvZGVjb2RpbmcgZnJvbSBWTFEuCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZExpbmU6IG9mZnNldExpbmUgKyAxLAogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG9mZnNldENvbHVtbiArIDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjb25zdW1lcgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkpLnRoZW4oKHMpID0+IHsKICAgICAgICAgICAgdGhhdC5fc2VjdGlvbnMgPSBzOwogICAgICAgICAgICByZXR1cm4gdGhhdDsKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIGBfX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQgYF9fb3JpZ2luYWxNYXBwaW5nc2AgYXJlIGFycmF5cyB0aGF0IGhvbGQgdGhlCiAgICAgIC8vIHBhcnNlZCBtYXBwaW5nIGNvb3JkaW5hdGVzIGZyb20gdGhlIHNvdXJjZSBtYXAncyAibWFwcGluZ3MiIGF0dHJpYnV0ZS4gVGhleQogICAgICAvLyBhcmUgbGF6aWx5IGluc3RhbnRpYXRlZCwgYWNjZXNzZWQgdmlhIHRoZSBgX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgLy8gYF9vcmlnaW5hbE1hcHBpbmdzYCBnZXR0ZXJzIHJlc3BlY3RpdmVseSwgYW5kIHdlIG9ubHkgcGFyc2UgdGhlIG1hcHBpbmdzCiAgICAgIC8vIGFuZCBjcmVhdGUgdGhlc2UgYXJyYXlzIG9uY2UgcXVlcmllZCBmb3IgYSBzb3VyY2UgbG9jYXRpb24uIFdlIGp1bXAgdGhyb3VnaAogICAgICAvLyB0aGVzZSBob29wcyBiZWNhdXNlIHRoZXJlIGNhbiBiZSBtYW55IHRob3VzYW5kcyBvZiBtYXBwaW5ncywgYW5kIHBhcnNpbmcKICAgICAgLy8gdGhlbSBpcyBleHBlbnNpdmUsIHNvIHdlIG9ubHkgd2FudCB0byBkbyBpdCBpZiB3ZSBtdXN0LgogICAgICAvLwogICAgICAvLyBFYWNoIG9iamVjdCBpbiB0aGUgYXJyYXlzIGlzIG9mIHRoZSBmb3JtOgogICAgICAvLwogICAgICAvLyAgICAgewogICAgICAvLyAgICAgICBnZW5lcmF0ZWRMaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBnZW5lcmF0ZWRDb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgc291cmNlOiBUaGUgcGF0aCB0byB0aGUgb3JpZ2luYWwgc291cmNlIGZpbGUgdGhhdCBnZW5lcmF0ZWQgdGhpcwogICAgICAvLyAgICAgICAgICAgICAgIGNodW5rIG9mIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsTGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGhhdAogICAgICAvLyAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsQ29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlIHRoYXQKICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG5hbWU6IFRoZSBuYW1lIG9mIHRoZSBvcmlnaW5hbCBzeW1ib2wgd2hpY2ggZ2VuZXJhdGVkIHRoaXMgY2h1bmsgb2YKICAgICAgLy8gICAgICAgICAgICAgY29kZS4KICAgICAgLy8gICAgIH0KICAgICAgLy8KICAgICAgLy8gQWxsIHByb3BlcnRpZXMgZXhjZXB0IGZvciBgZ2VuZXJhdGVkTGluZWAgYW5kIGBnZW5lcmF0ZWRDb2x1bW5gIGNhbiBiZQogICAgICAvLyBgbnVsbGAuCiAgICAgIC8vCiAgICAgIC8vIGBfZ2VuZXJhdGVkTWFwcGluZ3NgIGlzIG9yZGVyZWQgYnkgdGhlIGdlbmVyYXRlZCBwb3NpdGlvbnMuCiAgICAgIC8vCiAgICAgIC8vIGBfb3JpZ2luYWxNYXBwaW5nc2AgaXMgb3JkZXJlZCBieSB0aGUgb3JpZ2luYWwgcG9zaXRpb25zLgogICAgICBnZXQgX2dlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGlmICghdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzKSB7CiAgICAgICAgICB0aGlzLl9zb3J0R2VuZXJhdGVkTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nczsKICAgICAgfQogICAgICBnZXQgX29yaWdpbmFsTWFwcGluZ3MoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5ncykgewogICAgICAgICAgdGhpcy5fc29ydE9yaWdpbmFsTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzOwogICAgICB9CiAgICAgIGdldCBfZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCgpIHsKICAgICAgICBpZiAoIXRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgIH0KICAgICAgZ2V0IF9vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgfQogICAgICBfc29ydEdlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdGhpcy5fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQpOwogICAgICAgIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICB9CiAgICAgIF9zb3J0T3JpZ2luYWxNYXBwaW5ncygpIHsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMpOwogICAgICAgIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzID0gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFRoZSBsaXN0IG9mIG9yaWdpbmFsIHNvdXJjZXMuCiAgICAgICAqLwogICAgICBnZXQgc291cmNlcygpIHsKICAgICAgICBjb25zdCBzb3VyY2VzID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIHNvdXJjZXMucHVzaCh0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzW2pdKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNvdXJjZXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSwgbGluZSwgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIGdlbmVyYXRlZAogICAgICAgKiBzb3VyY2UncyBsaW5lIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3QKICAgICAgICogd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb3IgbnVsbC4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBuYW1lOiBUaGUgb3JpZ2luYWwgaWRlbnRpZmllciwgb3IgbnVsbC4KICAgICAgICovCiAgICAgIG9yaWdpbmFsUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iKQogICAgICAgIH07CiAgICAgICAgY29uc3Qgc2VjdGlvbkluZGV4ID0gYmluYXJ5U2VhcmNoLnNlYXJjaCgKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX3NlY3Rpb25zLAogICAgICAgICAgZnVuY3Rpb24oYU5lZWRsZSwgc2VjdGlvbjIpIHsKICAgICAgICAgICAgY29uc3QgY21wID0gYU5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gc2VjdGlvbjIuZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmU7CiAgICAgICAgICAgIGlmIChjbXApIHsKICAgICAgICAgICAgICByZXR1cm4gY21wOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBhTmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIHNlY3Rpb24yLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbc2VjdGlvbkluZGV4XTsKICAgICAgICBpZiAoIXNlY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZTogbnVsbCwKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBuYW1lOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2VjdGlvbi5jb25zdW1lci5vcmlnaW5hbFBvc2l0aW9uRm9yKHsKICAgICAgICAgIGxpbmU6IG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgIGNvbHVtbjogbmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBuZWVkbGUuZ2VuZXJhdGVkTGluZSA/IHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbiAtIDEgOiAwKSwKICAgICAgICAgIGJpYXM6IGFBcmdzLmJpYXMKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIHRydWUgaWYgd2UgaGF2ZSB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGV2ZXJ5IHNvdXJjZSBpbiB0aGUgc291cmNlCiAgICAgICAqIG1hcCwgZmFsc2Ugb3RoZXJ3aXNlLgogICAgICAgKi8KICAgICAgaGFzQ29udGVudHNPZkFsbFNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NlY3Rpb25zLmV2ZXJ5KGZ1bmN0aW9uKHMpIHsKICAgICAgICAgIHJldHVybiBzLmNvbnN1bWVyLmhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tpXTsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBzZWN0aW9uLmNvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgdHJ1ZSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICByZXR1cm4gY29udGVudDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVNvdXJjZSArICciIGlzIG5vdCBpbiB0aGUgU291cmNlTWFwLicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgb3JpZ2luYWwgc291cmNlLAogICAgICAgKiBsaW5lLCBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0IHdpdGgKICAgICAgICogdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgZmlsZW5hbWUgb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLgogICAgICAgKiAgICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICovCiAgICAgIGdlbmVyYXRlZFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgaWYgKHNlY3Rpb24uY29uc3VtZXIuX2ZpbmRTb3VyY2VJbmRleCh1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpKSA9PT0gLTEpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBnZW5lcmF0ZWRQb3NpdGlvbiA9IHNlY3Rpb24uY29uc3VtZXIuZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpOwogICAgICAgICAgaWYgKGdlbmVyYXRlZFBvc2l0aW9uKSB7CiAgICAgICAgICAgIGNvbnN0IHJldCA9IHsKICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgICAgICBjb2x1bW46IGdlbmVyYXRlZFBvc2l0aW9uLmNvbHVtbiArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHJldHVybiByZXQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkTWFwcGluZ3MgPSB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IFtdOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTWFwcGluZ3MgPSB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgY29uc3Qgc2VjdGlvbk1hcHBpbmdzID0gW107CiAgICAgICAgICBzZWN0aW9uLmNvbnN1bWVyLmVhY2hNYXBwaW5nKChtKSA9PiBzZWN0aW9uTWFwcGluZ3MucHVzaChtKSk7CiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNlY3Rpb25NYXBwaW5ncy5sZW5ndGg7IGorKykgewogICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gc2VjdGlvbk1hcHBpbmdzW2pdOwogICAgICAgICAgICBsZXQgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNlY3Rpb24uY29uc3VtZXIuc291cmNlUm9vdCwgbnVsbCwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgdGhpcy5fc291cmNlcy5hZGQoc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdGhpcy5fc291cmNlcy5pbmRleE9mKHNvdXJjZSk7CiAgICAgICAgICAgIGxldCBuYW1lID0gbnVsbDsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSkgewogICAgICAgICAgICAgIHRoaXMuX25hbWVzLmFkZChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5pbmRleE9mKG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgYWRqdXN0ZWRNYXBwaW5nID0gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBtYXBwaW5nLmdlbmVyYXRlZExpbmUgKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSAtIDEpLAogICAgICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSA9PT0gbWFwcGluZy5nZW5lcmF0ZWRMaW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZTogbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4sCiAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICB9OwogICAgICAgICAgICBnZW5lcmF0ZWRNYXBwaW5ncy5wdXNoKGFkanVzdGVkTWFwcGluZyk7CiAgICAgICAgICAgIGlmICh0eXBlb2YgYWRqdXN0ZWRNYXBwaW5nLm9yaWdpbmFsTGluZSA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICBvcmlnaW5hbE1hcHBpbmdzLnB1c2goYWRqdXN0ZWRNYXBwaW5nKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICBjb25zdCBjb250ZXh0ID0gYUNvbnRleHQgfHwgbnVsbDsKICAgICAgICBjb25zdCBvcmRlciA9IGFPcmRlciB8fCBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI7CiAgICAgICAgbGV0IG1hcHBpbmdzOwogICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOgogICAgICAgICAgICBtYXBwaW5ncyA9IHRoaXMuX2dlbmVyYXRlZE1hcHBpbmdzOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVI6CiAgICAgICAgICAgIG1hcHBpbmdzID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nczsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gb3JkZXIgb2YgaXRlcmF0aW9uLiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5zb3VyY2VSb290OwogICAgICAgIG1hcHBpbmdzLm1hcChmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBsZXQgc291cmNlID0gbnVsbDsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIHNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgZ2VuZXJhdGVkTGluZTogbWFwcGluZy5nZW5lcmF0ZWRMaW5lLAogICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICBvcmlnaW5hbExpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICBvcmlnaW5hbENvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgbmFtZTogbWFwcGluZy5uYW1lID09PSBudWxsID8gbnVsbCA6IHRoaXMuX25hbWVzLmF0KG1hcHBpbmcubmFtZSkKICAgICAgICAgIH07CiAgICAgICAgfSwgdGhpcykuZm9yRWFjaChhQ2FsbGJhY2ssIGNvbnRleHQpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBGaW5kIHRoZSBtYXBwaW5nIHRoYXQgYmVzdCBtYXRjaGVzIHRoZSBoeXBvdGhldGljYWwgIm5lZWRsZSIgbWFwcGluZyB0aGF0CiAgICAgICAqIHdlIGFyZSBzZWFyY2hpbmcgZm9yIGluIHRoZSBnaXZlbiAiaGF5c3RhY2siIG9mIG1hcHBpbmdzLgogICAgICAgKi8KICAgICAgX2ZpbmRNYXBwaW5nKGFOZWVkbGUsIGFNYXBwaW5ncywgYUxpbmVOYW1lLCBhQ29sdW1uTmFtZSwgYUNvbXBhcmF0b3IsIGFCaWFzKSB7CiAgICAgICAgaWYgKGFOZWVkbGVbYUxpbmVOYW1lXSA8PSAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJMaW5lIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEsIGdvdCAiICsgYU5lZWRsZVthTGluZU5hbWVdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGFOZWVkbGVbYUNvbHVtbk5hbWVdIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ29sdW1uIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDAsIGdvdCAiICsgYU5lZWRsZVthQ29sdW1uTmFtZV0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYmluYXJ5U2VhcmNoLnNlYXJjaChhTmVlZGxlLCBhTWFwcGluZ3MsIGFDb21wYXJhdG9yLCBhQmlhcyk7CiAgICAgIH0KICAgICAgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yKGFBcmdzKSB7CiAgICAgICAgY29uc3QgbGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIHNvdXJjZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKSwKICAgICAgICAgIG9yaWdpbmFsTGluZTogbGluZSwKICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIsIDApCiAgICAgICAgfTsKICAgICAgICBuZWVkbGUuc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KG5lZWRsZS5zb3VyY2UpOwogICAgICAgIGlmIChuZWVkbGUuc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBbXTsKICAgICAgICBsZXQgaW5kZXggPSB0aGlzLl9maW5kTWFwcGluZygKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX29yaWdpbmFsTWFwcGluZ3MsCiAgICAgICAgICAib3JpZ2luYWxMaW5lIiwKICAgICAgICAgICJvcmlnaW5hbENvbHVtbiIsCiAgICAgICAgICB1dGlsLmNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zLAogICAgICAgICAgYmluYXJ5U2VhcmNoLkxFQVNUX1VQUEVSX0JPVU5ECiAgICAgICAgKTsKICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgbGV0IG1hcHBpbmcgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzW2luZGV4XTsKICAgICAgICAgIGlmIChhQXJncy5jb2x1bW4gPT09IHZvaWQgMCkgewogICAgICAgICAgICBjb25zdCBvcmlnaW5hbExpbmUgPSBtYXBwaW5nLm9yaWdpbmFsTGluZTsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IG9yaWdpbmFsTGluZSkgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IGxpbmUgJiYgbWFwcGluZy5vcmlnaW5hbENvbHVtbiA9PSBvcmlnaW5hbENvbHVtbikgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1hcHBpbmdzOwogICAgICB9CiAgICAgIGRlc3Ryb3koKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgdGhpcy5fc2VjdGlvbnNbaV0uY29uc3VtZXIuZGVzdHJveSgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkluZGV4ZWRTb3VyY2VNYXBDb25zdW1lciA9IEluZGV4ZWRTb3VyY2VNYXBDb25zdW1lcjsKICAgIGZ1bmN0aW9uIF9mYWN0b3J5KGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgIGlmICh0eXBlb2YgYVNvdXJjZU1hcCA9PT0gInN0cmluZyIpIHsKICAgICAgICBzb3VyY2VNYXAgPSB1dGlsLnBhcnNlU291cmNlTWFwSW5wdXQoYVNvdXJjZU1hcCk7CiAgICAgIH0KICAgICAgY29uc3QgY29uc3VtZXIgPSBzb3VyY2VNYXAuc2VjdGlvbnMgIT0gbnVsbCA/IG5ldyBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIoc291cmNlTWFwLCBhU291cmNlTWFwVVJMKSA6IG5ldyBCYXNpY1NvdXJjZU1hcENvbnN1bWVyKHNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoY29uc3VtZXIpOwogICAgfQogICAgZnVuY3Rpb24gX2ZhY3RvcnlCU00oYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICByZXR1cm4gQmFzaWNTb3VyY2VNYXBDb25zdW1lci5mcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMKdmFyIHJlcXVpcmVfc291cmNlX25vZGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1ub2RlLmpzIihleHBvcnRzMikgewogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBSRUdFWF9ORVdMSU5FID0gLyhccj9cbikvOwogICAgdmFyIE5FV0xJTkVfQ09ERSA9IDEwOwogICAgdmFyIGlzU291cmNlTm9kZSA9ICIkJCRpc1NvdXJjZU5vZGUkJCQiOwogICAgdmFyIFNvdXJjZU5vZGUgPSBjbGFzcyBfU291cmNlTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGFMaW5lLCBhQ29sdW1uLCBhU291cmNlLCBhQ2h1bmtzLCBhTmFtZSkgewogICAgICAgIHRoaXMuY2hpbGRyZW4gPSBbXTsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzID0ge307CiAgICAgICAgdGhpcy5saW5lID0gYUxpbmUgPT0gbnVsbCA/IG51bGwgOiBhTGluZTsKICAgICAgICB0aGlzLmNvbHVtbiA9IGFDb2x1bW4gPT0gbnVsbCA/IG51bGwgOiBhQ29sdW1uOwogICAgICAgIHRoaXMuc291cmNlID0gYVNvdXJjZSA9PSBudWxsID8gbnVsbCA6IGFTb3VyY2U7CiAgICAgICAgdGhpcy5uYW1lID0gYU5hbWUgPT0gbnVsbCA/IG51bGwgOiBhTmFtZTsKICAgICAgICB0aGlzW2lzU291cmNlTm9kZV0gPSB0cnVlOwogICAgICAgIGlmIChhQ2h1bmtzICE9IG51bGwpIHRoaXMuYWRkKGFDaHVua3MpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDcmVhdGVzIGEgU291cmNlTm9kZSBmcm9tIGdlbmVyYXRlZCBjb2RlIGFuZCBhIFNvdXJjZU1hcENvbnN1bWVyLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUdlbmVyYXRlZENvZGUgVGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwQ29uc3VtZXIgVGhlIFNvdXJjZU1hcCBmb3IgdGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhUmVsYXRpdmVQYXRoIE9wdGlvbmFsLiBUaGUgcGF0aCB0aGF0IHJlbGF0aXZlIHNvdXJjZXMgaW4gdGhlCiAgICAgICAqICAgICAgICBTb3VyY2VNYXBDb25zdW1lciBzaG91bGQgYmUgcmVsYXRpdmUgdG8uCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVN0cmluZ1dpdGhTb3VyY2VNYXAoYUdlbmVyYXRlZENvZGUsIGFTb3VyY2VNYXBDb25zdW1lciwgYVJlbGF0aXZlUGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgX1NvdXJjZU5vZGUoKTsKICAgICAgICBjb25zdCByZW1haW5pbmdMaW5lcyA9IGFHZW5lcmF0ZWRDb2RlLnNwbGl0KFJFR0VYX05FV0xJTkUpOwogICAgICAgIGxldCByZW1haW5pbmdMaW5lc0luZGV4ID0gMDsKICAgICAgICBjb25zdCBzaGlmdE5leHRMaW5lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjb25zdCBsaW5lQ29udGVudHMgPSBnZXROZXh0TGluZSgpOwogICAgICAgICAgY29uc3QgbmV3TGluZSA9IGdldE5leHRMaW5lKCkgfHwgIiI7CiAgICAgICAgICByZXR1cm4gbGluZUNvbnRlbnRzICsgbmV3TGluZTsKICAgICAgICAgIGZ1bmN0aW9uIGdldE5leHRMaW5lKCkgewogICAgICAgICAgICByZXR1cm4gcmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCA/IHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXgrK10gOiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBsZXQgbGFzdEdlbmVyYXRlZExpbmUgPSAxLCBsYXN0R2VuZXJhdGVkQ29sdW1uID0gMDsKICAgICAgICBsZXQgbGFzdE1hcHBpbmcgPSBudWxsOwogICAgICAgIGxldCBuZXh0TGluZTsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuZWFjaE1hcHBpbmcoZnVuY3Rpb24obWFwcGluZykgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0R2VuZXJhdGVkTGluZSA8IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgICAgICBsYXN0R2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgICAgY29uc3QgY29kZSA9IG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiAtIGxhc3RHZW5lcmF0ZWRDb2x1bW4pOwogICAgICAgICAgICAgIHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXhdID0gbmV4dExpbmUuc3Vic3RyKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gbGFzdEdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgY29kZSk7CiAgICAgICAgICAgICAgbGFzdE1hcHBpbmcgPSBtYXBwaW5nOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGxhc3RHZW5lcmF0ZWRMaW5lIDwgbWFwcGluZy5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgIG5vZGUuYWRkKHNoaWZ0TmV4dExpbmUoKSk7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRMaW5lKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobGFzdEdlbmVyYXRlZENvbHVtbiA8IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKSB7CiAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgIG5vZGUuYWRkKG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbikpOwogICAgICAgICAgICByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSA9IG5leHRMaW5lLnN1YnN0cihtYXBwaW5nLmdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNYXBwaW5nID0gbWFwcGluZzsKICAgICAgICB9LCB0aGlzKTsKICAgICAgICBpZiAocmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCkgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nKSB7CiAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgIH0KICAgICAgICAgIG5vZGUuYWRkKHJlbWFpbmluZ0xpbmVzLnNwbGljZShyZW1haW5pbmdMaW5lc0luZGV4KS5qb2luKCIiKSk7CiAgICAgICAgfQogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgY29uc3QgY29udGVudCA9IGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VDb250ZW50Rm9yKHNvdXJjZUZpbGUpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgICBpZiAoYVJlbGF0aXZlUGF0aCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc291cmNlRmlsZSA9IHV0aWwuam9pbihhUmVsYXRpdmVQYXRoLCBzb3VyY2VGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBub2RlLnNldFNvdXJjZUNvbnRlbnQoc291cmNlRmlsZSwgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgICAgZnVuY3Rpb24gYWRkTWFwcGluZ1dpdGhDb2RlKG1hcHBpbmcsIGNvZGUpIHsKICAgICAgICAgIGlmIChtYXBwaW5nID09PSBudWxsIHx8IG1hcHBpbmcuc291cmNlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgbm9kZS5hZGQoY29kZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBzb3VyY2UgPSBhUmVsYXRpdmVQYXRoID8gdXRpbC5qb2luKGFSZWxhdGl2ZVBhdGgsIG1hcHBpbmcuc291cmNlKSA6IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBub2RlLmFkZChuZXcgX1NvdXJjZU5vZGUoCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgY29kZSwKICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUKICAgICAgICAgICAgKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBjaHVuayBvZiBnZW5lcmF0ZWQgSlMgdG8gdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgYWRkKGFDaHVuaykgewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFDaHVuaykpIHsKICAgICAgICAgIGFDaHVuay5mb3JFYWNoKGZ1bmN0aW9uKGNodW5rKSB7CiAgICAgICAgICAgIHRoaXMuYWRkKGNodW5rKTsKICAgICAgICAgIH0sIHRoaXMpOwogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIGlmIChhQ2h1bmspIHsKICAgICAgICAgICAgdGhpcy5jaGlsZHJlbi5wdXNoKGFDaHVuayk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJFeHBlY3RlZCBhIFNvdXJjZU5vZGUsIHN0cmluZywgb3IgYW4gYXJyYXkgb2YgU291cmNlTm9kZXMgYW5kIHN0cmluZ3MuIEdvdCAiICsgYUNodW5rCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgY2h1bmsgb2YgZ2VuZXJhdGVkIEpTIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgcHJlcGVuZChhQ2h1bmspIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhQ2h1bmspKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gYUNodW5rLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgIHRoaXMucHJlcGVuZChhQ2h1bmtbaV0pOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4udW5zaGlmdChhQ2h1bmspOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAiRXhwZWN0ZWQgYSBTb3VyY2VOb2RlLCBzdHJpbmcsIG9yIGFuIGFycmF5IG9mIFNvdXJjZU5vZGVzIGFuZCBzdHJpbmdzLiBHb3QgIiArIGFDaHVuawogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdhbGsgb3ZlciB0aGUgdHJlZSBvZiBKUyBzbmlwcGV0cyBpbiB0aGlzIG5vZGUgYW5kIGl0cyBjaGlsZHJlbi4gVGhlCiAgICAgICAqIHdhbGtpbmcgZnVuY3Rpb24gaXMgY2FsbGVkIG9uY2UgZm9yIGVhY2ggc25pcHBldCBvZiBKUyBhbmQgaXMgcGFzc2VkIHRoYXQKICAgICAgICogc25pcHBldCBhbmQgdGhlIGl0cyBvcmlnaW5hbCBhc3NvY2lhdGVkIHNvdXJjZSdzIGxpbmUvY29sdW1uIGxvY2F0aW9uLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUZuIFRoZSB0cmF2ZXJzYWwgZnVuY3Rpb24uCiAgICAgICAqLwogICAgICB3YWxrKGFGbikgewogICAgICAgIGxldCBjaHVuazsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgY2h1bmsgPSB0aGlzLmNoaWxkcmVuW2ldOwogICAgICAgICAgaWYgKGNodW5rW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgICAgY2h1bmsud2FsayhhRm4pOwogICAgICAgICAgfSBlbHNlIGlmIChjaHVuayAhPT0gIiIpIHsKICAgICAgICAgICAgYUZuKGNodW5rLCB7CiAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB0aGlzLmxpbmUsCiAgICAgICAgICAgICAgY29sdW1uOiB0aGlzLmNvbHVtbiwKICAgICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaWtlIGBTdHJpbmcucHJvdG90eXBlLmpvaW5gIGV4Y2VwdCBmb3IgU291cmNlTm9kZXMuIEluc2VydHMgYGFTdHJgIGJldHdlZW4KICAgICAgICogZWFjaCBvZiBgdGhpcy5jaGlsZHJlbmAuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhU2VwIFRoZSBzZXBhcmF0b3IuCiAgICAgICAqLwogICAgICBqb2luKGFTZXApIHsKICAgICAgICBsZXQgbmV3Q2hpbGRyZW47CiAgICAgICAgbGV0IGk7CiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7CiAgICAgICAgaWYgKGxlbiA+IDApIHsKICAgICAgICAgIG5ld0NoaWxkcmVuID0gW107CiAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuIC0gMTsgaSsrKSB7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2godGhpcy5jaGlsZHJlbltpXSk7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2goYVNlcCk7CiAgICAgICAgICB9CiAgICAgICAgICBuZXdDaGlsZHJlbi5wdXNoKHRoaXMuY2hpbGRyZW5baV0pOwogICAgICAgICAgdGhpcy5jaGlsZHJlbiA9IG5ld0NoaWxkcmVuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ2FsbCBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2Ugb24gdGhlIHZlcnkgcmlnaHQtbW9zdCBzb3VyY2Ugc25pcHBldC4gVXNlZnVsCiAgICAgICAqIGZvciB0cmltbWluZyB3aGl0ZXNwYWNlIGZyb20gdGhlIGVuZCBvZiBhIHNvdXJjZSBub2RlLCBldGMuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhUGF0dGVybiBUaGUgcGF0dGVybiB0byByZXBsYWNlLgogICAgICAgKiBAcGFyYW0gYVJlcGxhY2VtZW50IFRoZSB0aGluZyB0byByZXBsYWNlIHRoZSBwYXR0ZXJuIHdpdGguCiAgICAgICAqLwogICAgICByZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IGxhc3RDaGlsZCA9IHRoaXMuY2hpbGRyZW5bdGhpcy5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICBpZiAobGFzdENoaWxkW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgIGxhc3RDaGlsZC5yZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgbGFzdENoaWxkID09PSAic3RyaW5nIikgewogICAgICAgICAgdGhpcy5jaGlsZHJlblt0aGlzLmNoaWxkcmVuLmxlbmd0aCAtIDFdID0gbGFzdENoaWxkLnJlcGxhY2UoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4ucHVzaCgiIi5yZXBsYWNlKGFQYXR0ZXJuLCBhUmVwbGFjZW1lbnQpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNldCB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGEgc291cmNlIGZpbGUuIFRoaXMgd2lsbCBiZSBhZGRlZCB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yCiAgICAgICAqIGluIHRoZSBzb3VyY2VzQ29udGVudCBmaWVsZC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTb3VyY2VGaWxlIFRoZSBmaWxlbmFtZSBvZiB0aGUgc291cmNlIGZpbGUKICAgICAgICogQHBhcmFtIGFTb3VyY2VDb250ZW50IFRoZSBjb250ZW50IG9mIHRoZSBzb3VyY2UgZmlsZQogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoYVNvdXJjZUZpbGUpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXYWxrIG92ZXIgdGhlIHRyZWUgb2YgU291cmNlTm9kZXMuIFRoZSB3YWxraW5nIGZ1bmN0aW9uIGlzIGNhbGxlZCBmb3IgZWFjaAogICAgICAgKiBzb3VyY2UgZmlsZSBjb250ZW50IGFuZCBpcyBwYXNzZWQgdGhlIGZpbGVuYW1lIGFuZCBzb3VyY2UgY29udGVudC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFGbiBUaGUgdHJhdmVyc2FsIGZ1bmN0aW9uLgogICAgICAgKi8KICAgICAgd2Fsa1NvdXJjZUNvbnRlbnRzKGFGbikgewogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBpZiAodGhpcy5jaGlsZHJlbltpXVtpc1NvdXJjZU5vZGVdKSB7CiAgICAgICAgICAgIHRoaXMuY2hpbGRyZW5baV0ud2Fsa1NvdXJjZUNvbnRlbnRzKGFGbik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNvdXJjZXMgPSBPYmplY3Qua2V5cyh0aGlzLnNvdXJjZUNvbnRlbnRzKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gc291cmNlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgYUZuKHV0aWwuZnJvbVNldFN0cmluZyhzb3VyY2VzW2ldKSwgdGhpcy5zb3VyY2VDb250ZW50c1tzb3VyY2VzW2ldXSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGlzIHNvdXJjZSBub2RlLiBXYWxrcyBvdmVyIHRoZSB0cmVlCiAgICAgICAqIGFuZCBjb25jYXRlbmF0ZXMgYWxsIHRoZSB2YXJpb3VzIHNuaXBwZXRzIHRvZ2V0aGVyIHRvIG9uZSBzdHJpbmcuCiAgICAgICAqLwogICAgICB0b1N0cmluZygpIHsKICAgICAgICBsZXQgc3RyMiA9ICIiOwogICAgICAgIHRoaXMud2FsayhmdW5jdGlvbihjaHVuaykgewogICAgICAgICAgc3RyMiArPSBjaHVuazsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc291cmNlIG5vZGUgYWxvbmcgd2l0aCBhIHNvdXJjZQogICAgICAgKiBtYXAuCiAgICAgICAqLwogICAgICB0b1N0cmluZ1dpdGhTb3VyY2VNYXAoYUFyZ3MpIHsKICAgICAgICBjb25zdCBnZW5lcmF0ZWQgPSB7CiAgICAgICAgICBjb2RlOiAiIiwKICAgICAgICAgIGxpbmU6IDEsCiAgICAgICAgICBjb2x1bW46IDAKICAgICAgICB9OwogICAgICAgIGNvbnN0IG1hcDIgPSBuZXcgU291cmNlTWFwR2VuZXJhdG9yKGFBcmdzKTsKICAgICAgICBsZXQgc291cmNlTWFwcGluZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxTb3VyY2UgPSBudWxsOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxMaW5lID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsTmFtZSA9IG51bGw7CiAgICAgICAgdGhpcy53YWxrKGZ1bmN0aW9uKGNodW5rLCBvcmlnaW5hbCkgewogICAgICAgICAgZ2VuZXJhdGVkLmNvZGUgKz0gY2h1bms7CiAgICAgICAgICBpZiAob3JpZ2luYWwuc291cmNlICE9PSBudWxsICYmIG9yaWdpbmFsLmxpbmUgIT09IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0T3JpZ2luYWxTb3VyY2UgIT09IG9yaWdpbmFsLnNvdXJjZSB8fCBsYXN0T3JpZ2luYWxMaW5lICE9PSBvcmlnaW5hbC5saW5lIHx8IGxhc3RPcmlnaW5hbENvbHVtbiAhPT0gb3JpZ2luYWwuY29sdW1uIHx8IGxhc3RPcmlnaW5hbE5hbWUgIT09IG9yaWdpbmFsLm5hbWUpIHsKICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICBvcmlnaW5hbDogewogICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG9yaWdpbmFsLnNvdXJjZTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSB0cnVlOwogICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgIG1hcDIuYWRkTWFwcGluZyh7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkOiB7CiAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIGZvciAobGV0IGlkeCA9IDAsIGxlbmd0aCA9IGNodW5rLmxlbmd0aDsgaWR4IDwgbGVuZ3RoOyBpZHgrKykgewogICAgICAgICAgICBpZiAoY2h1bmsuY2hhckNvZGVBdChpZHgpID09PSBORVdMSU5FX0NPREUpIHsKICAgICAgICAgICAgICBnZW5lcmF0ZWQubGluZSsrOwogICAgICAgICAgICAgIGdlbmVyYXRlZC5jb2x1bW4gPSAwOwogICAgICAgICAgICAgIGlmIChpZHggKyAxID09PSBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgICAgICBzb3VyY2VNYXBwaW5nQWN0aXZlID0gZmFsc2U7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgICBzb3VyY2U6IG9yaWdpbmFsLnNvdXJjZSwKICAgICAgICAgICAgICAgICAgb3JpZ2luYWw6IHsKICAgICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogb3JpZ2luYWwuY29sdW1uCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICBuYW1lOiBvcmlnaW5hbC5uYW1lCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkLmNvbHVtbisrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy53YWxrU291cmNlQ29udGVudHMoZnVuY3Rpb24oc291cmNlRmlsZSwgc291cmNlQ29udGVudCkgewogICAgICAgICAgbWFwMi5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGNvZGU6IGdlbmVyYXRlZC5jb2RlLCBtYXA6IG1hcDIgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSBTb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9zb3VyY2UtbWFwLmpzCnZhciByZXF1aXJlX3NvdXJjZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvc291cmNlLW1hcC5qcyIoZXhwb3J0czIpIHsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lcigpLlNvdXJjZU1hcENvbnN1bWVyOwogICAgZXhwb3J0czIuU291cmNlTm9kZSA9IHJlcXVpcmVfc291cmNlX25vZGUoKS5Tb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3RlbXBsYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50ZW1wbGF0ZVBhcnNlciA9IHRlbXBsYXRlUGFyc2VyOwogICAgZXhwb3J0czIudGVtcGxhdGUgPSB0ZW1wbGF0ZTM7CiAgICB2YXIgc291cmNlX21hcF8xID0gcmVxdWlyZV9zb3VyY2VfbWFwKCk7CiAgICB2YXIga0ludGVycG9sYXRlUmUgPSAvPCU9KFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0NvbW1lbnRSZSA9IC88JSMoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrRXNjYXBlUmUgPSAvPCUtKFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0V2YWx1YXRlUmUgPSAvPCUoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrSHRtbEVzY2FwZXMgPSB7CiAgICAgICImIjogIiZhbXA7IiwKICAgICAgIjwiOiAiJmx0OyIsCiAgICAgICI+IjogIiZndDsiLAogICAgICAnIic6ICImcXVvdDsiLAogICAgICAiJyI6ICImIzM5OyIsCiAgICAgICJgIjogIiYjOTY7IgogICAgfTsKICAgIHZhciByZVVuZXNjYXBlZEh0bWwgPSBuZXcgUmVnRXhwKGBbJHtPYmplY3Qua2V5cyhrSHRtbEVzY2FwZXMpLmpvaW4oIiIpfV1gLCAiZyIpOwogICAgZnVuY3Rpb24gX3Bvc2l0aW9uRm9yKGNvbnRlbnQsIG9mZnNldCkgewogICAgICBsZXQgbGluZSA9IDE7CiAgICAgIGxldCBjb2x1bW4gPSAwOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9mZnNldCAtIDE7IGkrKykgewogICAgICAgIGlmIChjb250ZW50W2ldID09ICJcbiIpIHsKICAgICAgICAgIGxpbmUrKzsKICAgICAgICAgIGNvbHVtbiA9IDA7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbHVtbisrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGxpbmUsCiAgICAgICAgY29sdW1uCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZVBhcnNlcihzb3VyY2VUZXh0LCBmaWxlTmFtZSkgewogICAgICBjb25zdCBjaGlsZHJlbiA9IFtdOwogICAgICBjb25zdCByZUV4cHJlc3Npb25zID0gW2tFc2NhcGVSZSwga0NvbW1lbnRSZSwga0ludGVycG9sYXRlUmUsIGtFdmFsdWF0ZVJlXTsKICAgICAgY29uc3QgcmVEZWxpbWl0ZXJzID0gUmVnRXhwKHJlRXhwcmVzc2lvbnMubWFwKCh4KSA9PiB4LnNvdXJjZSkuam9pbigifCIpICsgInwkIiwgImciKTsKICAgICAgY29uc3QgcGFyc2VkID0gc291cmNlVGV4dC5zcGxpdChyZURlbGltaXRlcnMpOwogICAgICBsZXQgb2Zmc2V0ID0gMDsKICAgICAgbGV0IHN0YXJ0ID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCk7CiAgICAgIGxldCBlbmQ7CiAgICAgIGNvbnN0IGluY3JlbWVudCA9IHJlRXhwcmVzc2lvbnMubGVuZ3RoICsgMTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJzZWQubGVuZ3RoOyBpICs9IGluY3JlbWVudCkgewogICAgICAgIGNvbnN0IFtjb250ZW50LCBlc2NhcGUyLCBjb21tZW50LCBpbnRlcnBvbGF0ZSwgZXZhbHVhdGVdID0gcGFyc2VkLnNsaWNlKGksIGkgKyBpbmNyZW1lbnQpOwogICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29udGVudC5sZW5ndGgpOwogICAgICAgICAgb2Zmc2V0ICs9IGNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJjb250ZW50IiwgY29udGVudCwgc3RhcnQsIGVuZCB9KTsKICAgICAgICAgIHN0YXJ0ID0gZW5kOwogICAgICAgIH0KICAgICAgICBpZiAoZXNjYXBlMikgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGVzY2FwZTIubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gZXNjYXBlMi5sZW5ndGggKyA1OwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJlc2NhcGUiLCBleHByZXNzaW9uOiBlc2NhcGUyLCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChjb21tZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29tbWVudC5sZW5ndGggKyA1KTsKICAgICAgICAgIG9mZnNldCArPSBjb21tZW50Lmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImNvbW1lbnQiLCB0ZXh0OiBjb21tZW50LCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChpbnRlcnBvbGF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGludGVycG9sYXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGludGVycG9sYXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAga2luZDogImludGVycG9sYXRlIiwKICAgICAgICAgICAgZXhwcmVzc2lvbjogaW50ZXJwb2xhdGUsCiAgICAgICAgICAgIHN0YXJ0LAogICAgICAgICAgICBlbmQKICAgICAgICAgIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChldmFsdWF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGV2YWx1YXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGV2YWx1YXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImV2YWx1YXRlIiwgZXhwcmVzc2lvbjogZXZhbHVhdGUsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICBmaWxlTmFtZSwKICAgICAgICBjb250ZW50OiBzb3VyY2VUZXh0LAogICAgICAgIGNoaWxkcmVuCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZUZhc3QoYXN0LCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gIm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSIgOiAiIjsKICAgICAgY29uc3QgcmVIdG1sRXNjYXBlID0gcmVVbmVzY2FwZWRIdG1sLnNvdXJjZS5yZXBsYWNlKC9bJ10vZywgIlxcXFxcXCciKTsKICAgICAgcmV0dXJuIGAKICAgIHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewogICAgICBvYmogfHwgKG9iaiA9IHt9KTsKICAgICAgbGV0IF9fdDsKICAgICAgbGV0IF9fcCA9ICcnOwogICAgICBjb25zdCBfX2VzY2FwZXMgPSAke0pTT04uc3RyaW5naWZ5KGtIdG1sRXNjYXBlcyl9OwogICAgICBjb25zdCBfX2VzY2FwZXNyZSA9IG5ldyBSZWdFeHAoJyR7cmVIdG1sRXNjYXBlfScsICdnJyk7CgogICAgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7CiAgICAgICAgcmV0dXJuIHMgPyBzLnJlcGxhY2UoX19lc2NhcGVzcmUsIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gX19lc2NhcGVzW2tleV07IH0pIDogJyc7CiAgICAgIH07CiAgICAgIHdpdGggKG9iaikgewogICAgICAgICR7YXN0LmNoaWxkcmVuLm1hcCgobm9kZSkgPT4gewogICAgICAgIHN3aXRjaCAobm9kZS5raW5kKSB7CiAgICAgICAgICBjYXNlICJjb250ZW50IjoKICAgICAgICAgICAgcmV0dXJuIGBfX3AgKz0gJHtKU09OLnN0cmluZ2lmeShub2RlLmNvbnRlbnQpfTtgOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSAoKF9fdCA9ICgke25vZGUuZXhwcmVzc2lvbn0pKSA9PSBudWxsKSA/ICcnIDogX190O2A7CiAgICAgICAgICBjYXNlICJlc2NhcGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSBfX2UoJHtub2RlLmV4cHJlc3Npb259KTtgOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5leHByZXNzaW9uOwogICAgICAgIH0KICAgICAgfSkuam9pbigiXG4iKX0KICAgICAgfQoKICAgICAgcmV0dXJuIF9fcDsKICAgIH07CiAgYDsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc291cmNlVXJsID0gYXN0LmZpbGVOYW1lOwogICAgICBjb25zdCBtb2R1bGUzID0gb3B0aW9ucyAmJiBvcHRpb25zLm1vZHVsZSA/ICJtb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0iIDogIiI7CiAgICAgIGNvbnN0IHJlSHRtbEVzY2FwZSA9IHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UucmVwbGFjZSgvWyddL2csICJcXFxcXFwnIik7CiAgICAgIGNvbnN0IHByZWFtYmxlID0gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKDEsIDAsIHNvdXJjZVVybCwgIiIpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoMSwgMCwgc291cmNlVXJsLCBbCiAgICAgICAgYHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewpgLAogICAgICAgICIgIG9iaiB8fCAob2JqID0ge30pO1xuIiwKICAgICAgICAiICBsZXQgX190O1xuIiwKICAgICAgICAnICBsZXQgX19wID0gIiI7XG4nLAogICAgICAgIGAgIGNvbnN0IF9fZXNjYXBlcyA9ICR7SlNPTi5zdHJpbmdpZnkoa0h0bWxFc2NhcGVzKX07CmAsCiAgICAgICAgYCAgY29uc3QgX19lc2NhcGVzcmUgPSBuZXcgUmVnRXhwKCcke3JlSHRtbEVzY2FwZX0nLCAnZycpOwpgLAogICAgICAgIGAKYCwKICAgICAgICBgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7IGAsCiAgICAgICAgYCAgICByZXR1cm4gcyA/IHMucmVwbGFjZShfX2VzY2FwZXNyZSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiBfX2VzY2FwZXNba2V5XTsgfSkgOiAnJztgLAogICAgICAgIGAgIH07CmAsCiAgICAgICAgYCAgd2l0aCAob2JqKSB7CmAKICAgICAgXSkpOwogICAgICBjb25zdCBlbmQgPSBhc3QuY2hpbGRyZW4ubGVuZ3RoID8gYXN0LmNoaWxkcmVuW2FzdC5jaGlsZHJlbi5sZW5ndGggLSAxXS5lbmQgOiB7IGxpbmU6IDAsIGNvbHVtbjogMCB9OwogICAgICBjb25zdCBub2RlcyA9IGFzdC5jaGlsZHJlbi5yZWR1Y2UoKGNodW5rLCBub2RlKSA9PiB7CiAgICAgICAgbGV0IGNvZGUyID0gIiI7CiAgICAgICAgc3dpdGNoIChub2RlLmtpbmQpIHsKICAgICAgICAgIGNhc2UgImNvbnRlbnQiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wID0gX19wIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5jb250ZW50LnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCAiXG4gICAgKyAiICsgSlNPTi5zdHJpbmdpZnkobGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSkpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIjtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wICs9ICgoX190ID0gIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5leHByZXNzaW9uLnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCBsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKTsKICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5lbmQubGluZSwgbm9kZS5lbmQuY29sdW1uLCBzb3VyY2VVcmwsICcpID09IG51bGwgPyAiIiA6IF9fdCk7XG4nKQogICAgICAgICAgICBdOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgImVzY2FwZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgKz0gX19lKCIpLAogICAgICAgICAgICAgIC4uLm5vZGUuZXhwcmVzc2lvbi5zcGxpdCgiXG4iKS5tYXAoKGxpbmUsIGksIGFycikgPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUgKyBpLCBpID09IDAgPyBub2RlLnN0YXJ0LmNvbHVtbiA6IDAsIHNvdXJjZVVybCwgbGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiKTtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICAuLi5ub2RlLmV4cHJlc3Npb24uc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsIGxpbmUgKyAoaSA9PSBhcnIubGVuZ3RoIC0gMSA/ICIiIDogIlxuIikpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIlxuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjaHVuay5hZGQobmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSwgbm9kZS5zdGFydC5jb2x1bW4sIHNvdXJjZVVybCwgY29kZTIpKTsKICAgICAgfSwgcHJlYW1ibGUpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoZW5kLmxpbmUsIGVuZC5jb2x1bW4sIHNvdXJjZVVybCwgWyIgIH07XG4iLCAiXG4iLCAiICByZXR1cm4gX19wO1xuIiwgIn1cbiJdKSk7CiAgICAgIGNvbnN0IGNvZGUgPSBub2Rlcy50b1N0cmluZ1dpdGhTb3VyY2VNYXAoewogICAgICAgIGZpbGU6IHNvdXJjZVVybCwKICAgICAgICBzb3VyY2VSb290OiBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlUm9vdCB8fCAiLiIKICAgICAgfSk7CiAgICAgIGNvZGUubWFwLnNldFNvdXJjZUNvbnRlbnQoc291cmNlVXJsLCBhc3QuY29udGVudCk7CiAgICAgIHJldHVybiBjb2RlLmNvZGUgKyAiXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIgKyBCdWZmZXIuZnJvbShjb2RlLm1hcC50b1N0cmluZygpKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZTMoY29udGVudCwgb3B0aW9ucykgewogICAgICBjb25zdCBzb3VyY2VVcmwgPSBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlVVJMIHx8ICJlanMiOwogICAgICBjb25zdCBhc3QgPSB0ZW1wbGF0ZVBhcnNlcihjb250ZW50LCBzb3VyY2VVcmwpOwogICAgICBsZXQgc291cmNlOwogICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnNvdXJjZU1hcCkgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpOwogICAgICB9IGVsc2UgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlRmFzdChhc3QsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGNvbnN0IGZuID0gRnVuY3Rpb24oIm1vZHVsZSIsIHNvdXJjZSk7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gb3B0aW9ucy5tb2R1bGUgPT09IHRydWUgPyB7IGV4cG9ydHM6IHt9IH0gOiBvcHRpb25zLm1vZHVsZSA6IG51bGw7CiAgICAgIGNvbnN0IHJlc3VsdCA9IGZuKG1vZHVsZTMpOwogICAgICByZXN1bHQuc291cmNlID0gc291cmNlOwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzCnZhciByZXF1aXJlX3BhcnRpYWxseV9vcmRlcmVkX3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXJ0aWFsbHlPcmRlcmVkU2V0ID0gZXhwb3J0czIuQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb24gPSBleHBvcnRzMi5EZXBlbmRlbmN5Tm90Rm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJPbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBpcyBub3QgcGFydCBvZiB0aGUgc2V0LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uID0gRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIkNpcmN1bGFyIGRlcGVuZGVuY2llcyBmb3VuZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb247CiAgICB2YXIgUGFydGlhbGx5T3JkZXJlZFNldCA9IGNsYXNzIHsKICAgICAgX2l0ZW1zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2NoZWNrQ2lyY3VsYXJEZXBlbmRlbmNpZXMoaXRlbSwgZGVwcykgewogICAgICAgIGlmIChkZXBzLmhhcyhpdGVtKSkgewogICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGRlcHMuZm9yRWFjaCgoZGVwKSA9PiB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIHRoaXMuX2l0ZW1zLmdldChkZXApIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpKTsKICAgICAgfQogICAgICBjbGVhcigpIHsKICAgICAgICB0aGlzLl9pdGVtcy5jbGVhcigpOwogICAgICB9CiAgICAgIGhhcyhpdGVtKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLmhhcyhpdGVtKTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2l6ZTsKICAgICAgfQogICAgICBmb3JFYWNoKGNhbGxiYWNrZm4sIHRoaXNBcmcpIHsKICAgICAgICBmb3IgKGNvbnN0IHggb2YgdGhpcykgewogICAgICAgICAgY2FsbGJhY2tmbi5jYWxsKHRoaXNBcmcsIHgsIHgsIHRoaXMpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbiBpdGVyYWJsZSBvZiBbdix2XSBwYWlycyBmb3IgZXZlcnkgdmFsdWUgYHZgIGluIHRoZSBzZXQuCiAgICAgICAqLwogICAgICAqZW50cmllcygpIHsKICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcykgewogICAgICAgICAgeWllbGQgW2l0ZW0sIGl0ZW1dOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogRGVzcGl0ZSBpdHMgbmFtZSwgcmV0dXJucyBhbiBpdGVyYWJsZSBvZiB0aGUgdmFsdWVzIGluIHRoZSBzZXQsCiAgICAgICAqLwogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLnZhbHVlcygpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9mIHZhbHVlcyBpbiB0aGUgc2V0LgogICAgICAgKi8KICAgICAgdmFsdWVzKCkgewogICAgICAgIHJldHVybiB0aGlzW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgICBhZGQoaXRlbSwgZGVwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBzKSkgewogICAgICAgICAgZGVwcyA9IG5ldyBTZXQoZGVwcyk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoaXRlbSkpIHsKICAgICAgICAgIGNvbnN0IGl0ZW1EZXBzID0gdGhpcy5faXRlbXMuZ2V0KGl0ZW0pIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgICBsZXQgZXF1YWwgPSB0cnVlOwogICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgZGVwcykgewogICAgICAgICAgICBpZiAoIWl0ZW1EZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVxdWFsKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGl0ZW1EZXBzKSB7CiAgICAgICAgICAgICAgaWYgKCFkZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgICBlcXVhbCA9IGZhbHNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXF1YWwpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGRlcHMpIHsKICAgICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGRlcCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbigpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIGRlcHMpOwogICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtLCBuZXcgU2V0KGRlcHMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBkZWxldGUoaXRlbSkgewogICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGl0ZW0pKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2l0ZW1zLmZvckVhY2goKHZhbHVlKSA9PiB2YWx1ZS5kZWxldGUoaXRlbSkpOwogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgIH0KICAgICAgKltTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgTWFwKHRoaXMuX2l0ZW1zKTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBjb3B5LmVudHJpZXMoKSkgewogICAgICAgICAgY29weS5zZXQoa2V5LCBuZXcgU2V0KHZhbHVlKSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChjb3B5LnNpemUgPiAwKSB7CiAgICAgICAgICBjb25zdCBydW4gPSBbXTsKICAgICAgICAgIGZvciAoY29uc3QgW2l0ZW0sIGRlcHNdIG9mIGNvcHkuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChkZXBzLnNpemUgPT0gMCkgewogICAgICAgICAgICAgIHJ1bi5wdXNoKGl0ZW0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcnVuKSB7CiAgICAgICAgICAgIGNvcHkuZm9yRWFjaCgocykgPT4gcy5kZWxldGUoaXRlbSkpOwogICAgICAgICAgICBjb3B5LmRlbGV0ZShpdGVtKTsKICAgICAgICAgICAgeWllbGQgaXRlbTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChydW4ubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkgewogICAgICAgIHJldHVybiAiU2V0IjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhcnRpYWxseU9yZGVyZWRTZXQgPSBQYXJ0aWFsbHlPcmRlcmVkU2V0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanMKdmFyIHJlcXVpcmVfcHJpb3JpdHlfcXVldWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3ByaW9yaXR5LXF1ZXVlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Qcmlvcml0eVF1ZXVlID0gdm9pZCAwOwogICAgdmFyIFByaW9yaXR5UXVldWUgPSBjbGFzcyB7CiAgICAgIF9jb21wYXJhdG9yOwogICAgICBfaXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2NvbXBhcmF0b3IpIHsKICAgICAgICB0aGlzLl9jb21wYXJhdG9yID0gX2NvbXBhcmF0b3I7CiAgICAgIH0KICAgICAgY2xlYXIoKSB7CiAgICAgICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgfQogICAgICBwdXNoKGl0ZW0pIHsKICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX2l0ZW1zLmZpbmRJbmRleCgoZXhpc3RpbmcpID0+IHRoaXMuX2NvbXBhcmF0b3IoaXRlbSwgZXhpc3RpbmcpIDw9IDApOwogICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnB1c2goaXRlbSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnNwbGljZShpbmRleCwgMCwgaXRlbSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHBvcCgpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc3BsaWNlKDAsIDEpWzBdOwogICAgICB9CiAgICAgIHBlZWsoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zWzBdOwogICAgICB9CiAgICAgIGdldCBzaXplKCkgewogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5sZW5ndGg7CiAgICAgIH0KICAgICAgdG9BcnJheSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2xpY2UoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaW9yaXR5UXVldWUgPSBQcmlvcml0eVF1ZXVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGFuZy5qcwp2YXIgcmVxdWlyZV9sYW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9sYW5nLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSBpc1Byb21pc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2Uob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiB0eXBlb2Ygb2JqLnRoZW4gPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9pbmRleC5qcwp2YXIgcmVxdWlyZV91dGlsczMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIudGFncyA9IHZvaWQgMDsKICAgIHZhciB0YWdzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfbGl0ZXJhbHMoKSk7CiAgICBleHBvcnRzMi50YWdzID0gdGFnczsKICAgIHZhciBzdHJpbmdzMyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3N0cmluZ3MoKSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gc3RyaW5nczM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9vYmplY3QoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGFydGlhbGx5X29yZGVyZWRfc2V0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3ByaW9yaXR5X3F1ZXVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xhbmcoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qcwp2YXIgcmVxdWlyZV92aXNpdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52aXNpdEpzb24gPSB2aXNpdEpzb247CiAgICBleHBvcnRzMi52aXNpdEpzb25TY2hlbWEgPSB2aXNpdEpzb25TY2hlbWE7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBwb2ludGVyXzEgPSByZXF1aXJlX3BvaW50ZXIoKTsKICAgIGZ1bmN0aW9uIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiAhPT0gIm9iamVjdCIgfHwgc2NoZW1hMiA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgfHwgc2NoZW1hMi50eXBlID09ICJvYmplY3QiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgJiYgdHlwZW9mIHNjaGVtYTIucHJvcGVydGllc1trZXldID09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gc2NoZW1hMi5wcm9wZXJ0aWVzW2tleV07CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMi5hZGRpdGlvbmFsUHJvcGVydGllcyA9PSAib2JqZWN0IikgewogICAgICAgICAgcmV0dXJuIHNjaGVtYTIuYWRkaXRpb25hbFByb3BlcnRpZXM7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiIHx8IHNjaGVtYTIudHlwZSA9PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiID8gc2NoZW1hMi5pdGVtcyA6IHZvaWQgMDsKICAgICAgfQogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogICAgZnVuY3Rpb24gX3Zpc2l0SnNvblJlY3Vyc2l2ZShqc29uMiwgdmlzaXRvciwgcHRyLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCkgewogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSB8fCBzY2hlbWEyID09PSBmYWxzZSkgewogICAgICAgIHNjaGVtYTIgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIgJiYgc2NoZW1hMi5oYXNPd25Qcm9wZXJ0eSgiJHJlZiIpICYmIHR5cGVvZiBzY2hlbWEyWyIkcmVmIl0gPT0gInN0cmluZyIpIHsKICAgICAgICBpZiAocmVmUmVzb2x2ZXIpIHsKICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVmUmVzb2x2ZXIoc2NoZW1hMlsiJHJlZiJdLCBjb250ZXh0KTsKICAgICAgICAgIHNjaGVtYTIgPSByZXNvbHZlZC5zY2hlbWE7CiAgICAgICAgICBjb250ZXh0ID0gcmVzb2x2ZWQuY29udGV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3QgdmFsdWUgPSB2aXNpdG9yKGpzb24yLCBwdHIsIHNjaGVtYTIsIHJvb3QpOwogICAgICByZXR1cm4gKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKSh2YWx1ZSkgPyB2YWx1ZSA6ICgwLCByeGpzXzEub2YpKHZhbHVlKSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHZhbHVlMikgPT4gewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlMikpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKSh2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKGl0ZW0sIGkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoaXRlbSwgdmlzaXRvciwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKHB0ciwgIiIgKyBpKSwgX2dldE9iamVjdFN1YlNjaGVtYShzY2hlbWEyLCAiIiArIGkpLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCB8fCB2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS50YXApKCh4KSA9PiB2YWx1ZTJbaV0gPSB4KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlMiA9PSAib2JqZWN0IiAmJiB2YWx1ZTIgIT09IG51bGwpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZTIpKS5waXBlKCgwLCByeGpzXzEubWVyZ2VNYXApKChrZXkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUodmFsdWUyW2tleV0sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShwdHIsIGtleSksIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQsIHJvb3QgfHwgdmFsdWUyKS5waXBlKCgwLCByeGpzXzEudGFwKSgoeCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbHVlMiwga2V5KTsKICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLndyaXRhYmxlICYmIHZhbHVlMltrZXldICE9PSB4KSB7CiAgICAgICAgICAgICAgICB2YWx1ZTJba2V5XSA9IHg7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodmFsdWUyKTsKICAgICAgICB9CiAgICAgIH0pKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZpc2l0SnNvbihqc29uMiwgdmlzaXRvciwgc2NoZW1hMiwgcmVmUmVzb2x2ZXIsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoanNvbjIsIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiB2aXNpdEpzb25TY2hlbWEoc2NoZW1hMiwgdmlzaXRvcikgewogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UgfHwgc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBjb25zdCBrZXl3b3JkcyA9IHsKICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgY29udGFpbnM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcHJvcGVydHlOYW1lczogdHJ1ZSwKICAgICAgICBub3Q6IHRydWUKICAgICAgfTsKICAgICAgY29uc3QgYXJyYXlLZXl3b3JkcyA9IHsKICAgICAgICBpdGVtczogdHJ1ZSwKICAgICAgICBhbGxPZjogdHJ1ZSwKICAgICAgICBhbnlPZjogdHJ1ZSwKICAgICAgICBvbmVPZjogdHJ1ZQogICAgICB9OwogICAgICBjb25zdCBwcm9wc0tleXdvcmRzID0gewogICAgICAgIGRlZmluaXRpb25zOiB0cnVlLAogICAgICAgIHByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgZGVwZW5kZW5jaWVzOiB0cnVlLAogICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgIH07CiAgICAgIGZ1bmN0aW9uIF90cmF2ZXJzZShzY2hlbWEzLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KSB7CiAgICAgICAgaWYgKHNjaGVtYTMgJiYgdHlwZW9mIHNjaGVtYTMgPT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkoc2NoZW1hMykpIHsKICAgICAgICAgIHZpc2l0b3Ioc2NoZW1hMywganNvblB0ciwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCk7CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhzY2hlbWEzKSkgewogICAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEzW2tleV07CiAgICAgICAgICAgIGlmIChrZXkgaW4gcHJvcHNLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIG9mIE9iamVjdC5rZXlzKHNjaCkpIHsKICAgICAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaFtwcm9wXSwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSwgcHJvcCksIHJvb3RTY2hlbWEsIHNjaGVtYTMsIHByb3ApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4ga2V5d29yZHMpIHsKICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5KSwgcm9vdFNjaGVtYSwgc2NoZW1hMywga2V5KTsKICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gYXJyYXlLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX3RyYXZlcnNlKHNjaGVtYTIsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3JlZ2lzdHJ5LmpzCnZhciByZXF1aXJlX3JlZ2lzdHJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Db3JlU2NoZW1hUmVnaXN0cnkgPSBleHBvcnRzMi5TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gX19pbXBvcnREZWZhdWx0KHJlcXVpcmVfYWp2KCkpOwogICAgdmFyIGFqdl9mb3JtYXRzXzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZV9kaXN0KCkpOwogICAgdmFyIGh0dHAgPSBfX2ltcG9ydFN0YXIocmVxdWlyZSgiaHR0cCIpKTsKICAgIHZhciBodHRwcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJodHRwcyIpKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFVybCA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJ1cmwiKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzMygpOwogICAgdmFyIHV0aWxzXzIgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgdXRpbGl0eV8xID0gcmVxdWlyZV91dGlsaXR5KCk7CiAgICB2YXIgdmlzaXRvcl8xID0gcmVxdWlyZV92aXNpdG9yKCk7CiAgICB2YXIgU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IGNsYXNzIF9TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGVycm9yczsKICAgICAgY29uc3RydWN0b3IoZXJyb3JzLCBiYXNlTWVzc2FnZSA9ICJTY2hlbWEgdmFsaWRhdGlvbiBmYWlsZWQgd2l0aCB0aGUgZm9sbG93aW5nIGVycm9yczoiKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgc3VwZXIoIlNjaGVtYSB2YWxpZGF0aW9uIGZhaWxlZC4iKTsKICAgICAgICAgIHRoaXMuZXJyb3JzID0gW107CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1lc3NhZ2VzID0gX1NjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24uY3JlYXRlTWVzc2FnZXMoZXJyb3JzKTsKICAgICAgICBzdXBlcihgJHtiYXNlTWVzc2FnZX0KICAke21lc3NhZ2VzLmpvaW4oIlxuICAiKX1gKTsKICAgICAgICB0aGlzLmVycm9ycyA9IGVycm9yczsKICAgICAgfQogICAgICBzdGF0aWMgY3JlYXRlTWVzc2FnZXMoZXJyb3JzKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBtZXNzYWdlcyA9IGVycm9ycy5tYXAoKGVycikgPT4gewogICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgRGF0YSBwYXRoICR7SlNPTi5zdHJpbmdpZnkoZXJyLmluc3RhbmNlUGF0aCl9ICR7ZXJyLm1lc3NhZ2V9YDsKICAgICAgICAgIGlmIChlcnIucGFyYW1zKSB7CiAgICAgICAgICAgIHN3aXRjaCAoZXJyLmtleXdvcmQpIHsKICAgICAgICAgICAgICBjYXNlICJhZGRpdGlvbmFsUHJvcGVydGllcyI6CiAgICAgICAgICAgICAgICBtZXNzYWdlICs9IGAoJHtlcnIucGFyYW1zLmFkZGl0aW9uYWxQcm9wZXJ0eX0pYDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgImVudW0iOgogICAgICAgICAgICAgICAgbWVzc2FnZSArPSBgLiBBbGxvd2VkIHZhbHVlcyBhcmU6ICR7ZXJyLnBhcmFtcy5hbGxvd2VkVmFsdWVzPy5tYXAoKHYpID0+IGAiJHt2fSJgKS5qb2luKCIsICIpfWA7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIG1lc3NhZ2UgKyAiLiI7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG1lc3NhZ2VzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IFNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb247CiAgICB2YXIgQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gY2xhc3MgX0NvcmVTY2hlbWFSZWdpc3RyeSB7CiAgICAgIF9hanY7CiAgICAgIF91cmlDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF91cmlIYW5kbGVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9wcmUgPSBuZXcgdXRpbHNfMS5QYXJ0aWFsbHlPcmRlcmVkU2V0KCk7CiAgICAgIF9wb3N0ID0gbmV3IHV0aWxzXzEuUGFydGlhbGx5T3JkZXJlZFNldCgpOwogICAgICBfY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbzsKICAgICAgX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSBmYWxzZTsKICAgICAgX3Byb21wdFByb3ZpZGVyOwogICAgICBfc291cmNlTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoZm9ybWF0cyA9IFtdKSB7CiAgICAgICAgdGhpcy5fYWp2ID0gbmV3IGFqdl8xLmRlZmF1bHQoewogICAgICAgICAgc3RyaWN0OiBmYWxzZSwKICAgICAgICAgIGxvYWRTY2hlbWE6ICh1cmkpID0+IHRoaXMuX2ZldGNoKHVyaSksCiAgICAgICAgICBwYXNzQ29udGV4dDogdHJ1ZQogICAgICAgIH0pOwogICAgICAgICgwLCBhanZfZm9ybWF0c18xLmRlZmF1bHQpKHRoaXMuX2Fqdik7CiAgICAgICAgZm9yIChjb25zdCBmb3JtYXQgb2YgZm9ybWF0cykgewogICAgICAgICAgdGhpcy5hZGRGb3JtYXQoZm9ybWF0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXN5bmMgX2ZldGNoKHVyaSkgewogICAgICAgIGNvbnN0IG1heWJlU2NoZW1hID0gdGhpcy5fdXJpQ2FjaGUuZ2V0KHVyaSk7CiAgICAgICAgaWYgKG1heWJlU2NoZW1hKSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTY2hlbWE7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgaGFuZGxlciBvZiB0aGlzLl91cmlIYW5kbGVycykgewogICAgICAgICAgbGV0IGhhbmRsZXJSZXN1bHQgPSBoYW5kbGVyKHVyaSk7CiAgICAgICAgICBpZiAoaGFuZGxlclJlc3VsdCA9PT0gbnVsbCB8fCBoYW5kbGVyUmVzdWx0ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKGhhbmRsZXJSZXN1bHQpKSB7CiAgICAgICAgICAgIGhhbmRsZXJSZXN1bHQgPSAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhhbmRsZXJSZXN1bHQpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCBoYW5kbGVyUmVzdWx0OwogICAgICAgICAgdGhpcy5fdXJpQ2FjaGUuc2V0KHVyaSwgdmFsdWUpOwogICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewogICAgICAgICAgY29uc3QgdXJsMyA9IG5ldyBVcmwuVVJMKHVyaSk7CiAgICAgICAgICBjb25zdCBjbGllbnQgPSB1cmwzLnByb3RvY29sID09PSAiaHR0cHM6IiA/IGh0dHBzIDogaHR0cDsKICAgICAgICAgIGNsaWVudC5nZXQodXJsMywgKHJlcykgPT4gewogICAgICAgICAgICBpZiAoIXJlcy5zdGF0dXNDb2RlIHx8IHJlcy5zdGF0dXNDb2RlID49IDMwMCkgewogICAgICAgICAgICAgIHJlcy5yZXN1bWUoKTsKICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBSZXF1ZXN0IGZhaWxlZC4gU3RhdHVzIENvZGU6ICR7cmVzLnN0YXR1c0NvZGV9YCkpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcy5zZXRFbmNvZGluZygidXRmOCIpOwogICAgICAgICAgICAgIGxldCBkYXRhID0gIiI7CiAgICAgICAgICAgICAgcmVzLm9uKCJkYXRhIiwgKGNodW5rKSA9PiB7CiAgICAgICAgICAgICAgICBkYXRhICs9IGNodW5rOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJlcy5vbigiZW5kIiwgKCkgPT4gewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QganNvbjIgPSBKU09OLnBhcnNlKGRhdGEpOwogICAgICAgICAgICAgICAgICB0aGlzLl91cmlDYWNoZS5zZXQodXJpLCBqc29uMik7CiAgICAgICAgICAgICAgICAgIHJlc29sdmUoanNvbjIpOwogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgdHJhbnNmb3JtYXRpb24gc3RlcCBiZWZvcmUgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3J9IHZpc2l0b3IgVGhlIHZpc2l0b3IgdG8gdHJhbnNmb3JtIGV2ZXJ5IHZhbHVlLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yW119IGRlcHMgQSBsaXN0IG9mIG90aGVyIHZpc2l0b3JzIHRvIHJ1biBiZWZvcmUuCiAgICAgICAqLwogICAgICBhZGRQcmVUcmFuc2Zvcm0odmlzaXRvciwgZGVwcykgewogICAgICAgIHRoaXMuX3ByZS5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHRyYW5zZm9ybWF0aW9uIHN0ZXAgYWZ0ZXIgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uIFRoZSBKU09OIHdpbGwgbm90IGJlIHZhbGlkYXRlZAogICAgICAgKiBhZnRlciB0aGUgUE9TVCwgc28gaWYgdHJhbnNmb3JtYXRpb25zIGFyZSBub3QgY29tcGF0aWJsZSB3aXRoIHRoZSBTY2hlbWEgaXQgd2lsbCBub3QgcmVzdWx0CiAgICAgICAqIGluIGFuIGVycm9yLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yfSB2aXNpdG9yIFRoZSB2aXNpdG9yIHRvIHRyYW5zZm9ybSBldmVyeSB2YWx1ZS4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcltdfSBkZXBzIEEgbGlzdCBvZiBvdGhlciB2aXNpdG9ycyB0byBydW4gYmVmb3JlLgogICAgICAgKi8KICAgICAgYWRkUG9zdFRyYW5zZm9ybSh2aXNpdG9yLCBkZXBzKSB7CiAgICAgICAgdGhpcy5fcG9zdC5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgX3Jlc29sdmVyKHJlZiwgdmFsaWRhdGUpIHsKICAgICAgICBpZiAoIXZhbGlkYXRlIHx8ICFyZWYpIHsKICAgICAgICAgIHJldHVybiB7fTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1hMiA9IHZhbGlkYXRlLnNjaGVtYUVudi5yb290LnNjaGVtYTsKICAgICAgICBjb25zdCBpZCA9IHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IiA/IHNjaGVtYTIuJGlkIDogbnVsbDsKICAgICAgICBsZXQgZnVsbFJlZmVyZW5jZSA9IHJlZjsKICAgICAgICBpZiAodHlwZW9mIGlkID09PSAic3RyaW5nIikgewogICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IFVybC5yZXNvbHZlKGlkLCByZWYpOwogICAgICAgICAgaWYgKHJlZi5zdGFydHNXaXRoKCIjIikpIHsKICAgICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IGlkICsgZnVsbFJlZmVyZW5jZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgcmVzb2x2ZWRTY2hlbWEgPSB0aGlzLl9hanYuZ2V0U2NoZW1hKGZ1bGxSZWZlcmVuY2UpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjb250ZXh0OiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hRW52LnZhbGlkYXRlLAogICAgICAgICAgc2NoZW1hOiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogRmxhdHRlbiB0aGUgU2NoZW1hLCByZXNvbHZpbmcgYW5kIHJlcGxhY2luZyBhbGwgdGhlIHJlZnMuIE1ha2VzIGl0IGludG8gYSBzeW5jaHJvbm91cyBzY2hlbWEKICAgICAgICogdGhhdCBpcyBhbHNvIGVhc2llciB0byB0cmF2ZXJzZS4gRG9lcyBub3QgY2FjaGUgdGhlIHJlc3VsdC4KICAgICAgICoKICAgICAgICogUHJvZHVjaW5nIGEgZmxhdHRlbiBzY2hlbWEgZG9jdW1lbnQgZG9lcyBub3QgaW4gYWxsIGNhc2VzIHByb2R1Y2UgYSBzY2hlbWEgd2l0aCBpZGVudGljYWwgYmVoYXZpb3IgdG8gdGhlIG9yaWdpbmFsLgogICAgICAgKiBTZWU6IGh0dHBzOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LzIwMTktMDkvanNvbi1zY2hlbWEtY29yZS5odG1sI3JmYy5hcHBlbmRpeC5CLjIKICAgICAgICoKICAgICAgICogQHBhcmFtIHNjaGVtYSBUaGUgc2NoZW1hIG9yIFVSSSB0byBmbGF0dGVuLgogICAgICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIG9mIHRoZSBmbGF0dGVuZWQgc2NoZW1hIG9iamVjdC4KICAgICAgICogQHByaXZhdGUgc2luY2UgMTEuMiB3aXRob3V0IHJlcGxhY2VtZW50LgogICAgICAgKi8KICAgICAgYXN5bmMgXHUwMjc1ZmxhdHRlbihzY2hlbWEyKSB7CiAgICAgICAgdGhpcy5fYWp2LnJlbW92ZVNjaGVtYShzY2hlbWEyKTsKICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fYWp2LmNvbXBpbGVBc3luYyhzY2hlbWEyKTsKICAgICAgICBjb25zdCBzZWxmMiA9IHRoaXM7CiAgICAgICAgZnVuY3Rpb24gdmlzaXRvcihjdXJyZW50LCBwb2ludGVyLCBwYXJlbnRTY2hlbWEsIGluZGV4KSB7CiAgICAgICAgICBpZiAoY3VycmVudCAmJiBwYXJlbnRTY2hlbWEgJiYgaW5kZXggJiYgKDAsIHV0aWxzXzIuaXNKc29uT2JqZWN0KShjdXJyZW50KSAmJiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoY3VycmVudCwgIiRyZWYiKSAmJiB0eXBlb2YgY3VycmVudFsiJHJlZiJdID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gc2VsZjIuX3Jlc29sdmVyKGN1cnJlbnRbIiRyZWYiXSwgdmFsaWRhdGUpOwogICAgICAgICAgICBpZiAocmVzb2x2ZWQuc2NoZW1hKSB7CiAgICAgICAgICAgICAgcGFyZW50U2NoZW1hW2luZGV4XSA9IHJlc29sdmVkLnNjaGVtYTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWFDb3B5ID0gKDAsIHV0aWxzXzEuZGVlcENvcHkpKHZhbGlkYXRlLnNjaGVtYSk7CiAgICAgICAgKDAsIHZpc2l0b3JfMS52aXNpdEpzb25TY2hlbWEpKHNjaGVtYUNvcHksIHZpc2l0b3IpOwogICAgICAgIHJldHVybiBzY2hlbWFDb3B5OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDb21waWxlIGFuZCByZXR1cm4gYSB2YWxpZGF0aW9uIGZ1bmN0aW9uIGZvciB0aGUgU2NoZW1hLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gc2NoZW1hIFRoZSBzY2hlbWEgdG8gdmFsaWRhdGUuIElmIGEgc3RyaW5nLCB3aWxsIGZldGNoIHRoZSBzY2hlbWEgYmVmb3JlIGNvbXBpbGluZyBpdAogICAgICAgKiAodXNpbmcgc2NoZW1hIGFzIGEgVVJJKS4KICAgICAgICovCiAgICAgIGFzeW5jIGNvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fY29tcGlsZShzY2hlbWEyKTsKICAgICAgICByZXR1cm4gKHZhbHVlLCBvcHRpb25zKSA9PiB2YWxpZGF0ZSh2YWx1ZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXN5bmMgX2NvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEpID0+ICh7IHN1Y2Nlc3M6IHNjaGVtYTIsIGRhdGEgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYUluZm8gPSB7CiAgICAgICAgICBzbWFydERlZmF1bHRSZWNvcmQ6IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCksCiAgICAgICAgICBwcm9tcHREZWZpbml0aW9uczogW10KICAgICAgICB9OwogICAgICAgIHRoaXMuX2Fqdi5yZW1vdmVTY2hlbWEoc2NoZW1hMik7CiAgICAgICAgbGV0IHZhbGlkYXRvcjsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5fY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbyA9IHNjaGVtYUluZm87CiAgICAgICAgICB2YWxpZGF0b3IgPSB0aGlzLl9hanYuY29tcGlsZShzY2hlbWEyKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgYWp2XzEuZGVmYXVsdC5NaXNzaW5nUmVmRXJyb3IpKSB7CiAgICAgICAgICAgIHRocm93IGU7CiAgICAgICAgICB9CiAgICAgICAgICB2YWxpZGF0b3IgPSBhd2FpdCB0aGlzLl9hanYuY29tcGlsZUFzeW5jKHNjaGVtYTIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEsIG9wdGlvbnMpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25PcHRpb25zID0gewogICAgICAgICAgICB3aXRoUHJvbXB0czogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQb3N0VHJhbnNmb3JtczogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQcmVUcmFuc2Zvcm1zOiB0cnVlLAogICAgICAgICAgICAuLi5vcHRpb25zCiAgICAgICAgICB9OwogICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkNvbnRleHQgPSB7CiAgICAgICAgICAgIHByb21wdEZpZWxkc1dpdGhWYWx1ZTogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy5hcHBseVByZVRyYW5zZm9ybXMpIHsKICAgICAgICAgICAgZm9yIChjb25zdCB2aXNpdG9yIG9mIHRoaXMuX3ByZS52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlTbWFydERlZmF1bHRzKGRhdGEsIHNjaGVtYUluZm8uc21hcnREZWZhdWx0UmVjb3JkKTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy53aXRoUHJvbXB0cykgewogICAgICAgICAgICBjb25zdCB2aXNpdG9yID0gKHZhbHVlLCBwb2ludGVyKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5hZGQocG9pbnRlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYTIsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGRlZmluaXRpb25zID0gc2NoZW1hSW5mby5wcm9tcHREZWZpbml0aW9ucy5maWx0ZXIoKGRlZikgPT4gIXZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5oYXMoZGVmLmlkKSk7CiAgICAgICAgICAgIGlmIChkZWZpbml0aW9ucy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlQcm9tcHRzKGRhdGEsIGRlZmluaXRpb25zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY29uc3Qgc3VjY2VzcyA9IGF3YWl0IHZhbGlkYXRvci5jYWxsKHZhbGlkYXRpb25Db250ZXh0LCBkYXRhKTsKICAgICAgICAgICAgaWYgKCFzdWNjZXNzKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzcywgZXJyb3JzOiB2YWxpZGF0b3IuZXJyb3JzID8/IFtdIH07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIGFqdl8xLmRlZmF1bHQuVmFsaWRhdGlvbkVycm9yKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogZmFsc2UsIGVycm9yczogZXJyb3IuZXJyb3JzIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsaWRhdGlvbk9wdGlvbnMuYXBwbHlQb3N0VHJhbnNmb3JtcykgewogICAgICAgICAgICBmb3IgKGNvbnN0IHZpc2l0b3Igb2YgdGhpcy5fcG9zdC52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogdHJ1ZSB9OwogICAgICAgIH07CiAgICAgIH0KICAgICAgYWRkRm9ybWF0KGZvcm1hdCkgewogICAgICAgIHRoaXMuX2Fqdi5hZGRGb3JtYXQoZm9ybWF0Lm5hbWUsIGZvcm1hdC5mb3JtYXR0ZXIpOwogICAgICB9CiAgICAgIGFkZFNtYXJ0RGVmYXVsdFByb3ZpZGVyKHNvdXJjZSwgcHJvdmlkZXIpIHsKICAgICAgICBpZiAodGhpcy5fc291cmNlTWFwLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Ioc291cmNlKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fc291cmNlTWFwLnNldChzb3VyY2UsIHByb3ZpZGVyKTsKICAgICAgICBpZiAoIXRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQpIHsKICAgICAgICAgIHRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSB0cnVlOwogICAgICAgICAgdGhpcy5fYWp2LmFkZEtleXdvcmQoewogICAgICAgICAgICBrZXl3b3JkOiAiJGRlZmF1bHQiLAogICAgICAgICAgICBlcnJvcnM6IGZhbHNlLAogICAgICAgICAgICB2YWxpZDogdHJ1ZSwKICAgICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIF9wYXJlbnRTY2hlbWEsIGl0KSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICAgIGlmIChjb21waWxhdGlvblNjaGVtSW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcGF0aEFycmF5ID0gdGhpcy5ub3JtYWxpemVEYXRhUGF0aEFycihpdCk7CiAgICAgICAgICAgICAgY29tcGlsYXRpb25TY2hlbUluZm8uc21hcnREZWZhdWx0UmVjb3JkLnNldChKU09OLnN0cmluZ2lmeShwYXRoQXJyYXkpLCBzY2hlbWEyKTsKICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICIkc291cmNlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICAgICAgICByZXF1aXJlZDogWyIkc291cmNlIl0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlZ2lzdGVyVXJpSGFuZGxlcihoYW5kbGVyKSB7CiAgICAgICAgdGhpcy5fdXJpSGFuZGxlcnMuYWRkKGhhbmRsZXIpOwogICAgICB9CiAgICAgIHVzZVByb21wdFByb3ZpZGVyKHByb3ZpZGVyKSB7CiAgICAgICAgY29uc3QgaXNTZXR1cCA9ICEhdGhpcy5fcHJvbXB0UHJvdmlkZXI7CiAgICAgICAgdGhpcy5fcHJvbXB0UHJvdmlkZXIgPSBwcm92aWRlcjsKICAgICAgICBpZiAoaXNTZXR1cCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1wcm9tcHQiLAogICAgICAgICAgZXJyb3JzOiBmYWxzZSwKICAgICAgICAgIHZhbGlkOiB0cnVlLAogICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpID0+IHsKICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICBpZiAoIWNvbXBpbGF0aW9uU2NoZW1JbmZvKSB7CiAgICAgICAgICAgICAgcmV0dXJuICgpID0+IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgcGF0aCA9ICIvIiArIHRoaXMubm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpLmpvaW4oIi8iKTsKICAgICAgICAgICAgbGV0IHR5cGUyOwogICAgICAgICAgICBsZXQgaXRlbXM7CiAgICAgICAgICAgIGxldCBtZXNzYWdlOwogICAgICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMi5tZXNzYWdlOwogICAgICAgICAgICAgIHR5cGUyID0gc2NoZW1hMi50eXBlOwogICAgICAgICAgICAgIGl0ZW1zID0gc2NoZW1hMi5pdGVtczsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShwYXJlbnRTY2hlbWEpOwogICAgICAgICAgICBpZiAoIXR5cGUyKSB7CiAgICAgICAgICAgICAgaWYgKHByb3BlcnR5VHlwZXMuc2l6ZSA9PT0gMSAmJiBwcm9wZXJ0eVR5cGVzLmhhcygiYm9vbGVhbiIpKSB7CiAgICAgICAgICAgICAgICB0eXBlMiA9ICJjb25maXJtYXRpb24iOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZW51bSkpIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImxpc3QiOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpICYmIHBhcmVudFNjaGVtYS5pdGVtcyAmJiBBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5pdGVtcy5lbnVtKSkgewogICAgICAgICAgICAgICAgdHlwZTIgPSAibGlzdCI7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImlucHV0IjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG11bHRpc2VsZWN0OwogICAgICAgICAgICBpZiAodHlwZTIgPT09ICJsaXN0IikgewogICAgICAgICAgICAgIG11bHRpc2VsZWN0ID0gc2NoZW1hMi5tdWx0aXNlbGVjdCA9PT0gdm9pZCAwID8gcHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpIDogc2NoZW1hMi5tdWx0aXNlbGVjdDsKICAgICAgICAgICAgICBjb25zdCBlbnVtVmFsdWVzID0gbXVsdGlzZWxlY3QgPyBwYXJlbnRTY2hlbWEuaXRlbXMgJiYgcGFyZW50U2NoZW1hLml0ZW1zLmVudW0gOiBwYXJlbnRTY2hlbWEuZW51bTsKICAgICAgICAgICAgICBpZiAoIWl0ZW1zICYmIEFycmF5LmlzQXJyYXkoZW51bVZhbHVlcykpIHsKICAgICAgICAgICAgICAgIGl0ZW1zID0gW107CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIGVudW1WYWx1ZXMpIHsKICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAic3RyaW5nIikgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2godmFsdWUpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goeyBsYWJlbDogdmFsdWUudG9TdHJpbmcoKSwgdmFsdWUgfSk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgZGVmaW5pdGlvbiA9IHsKICAgICAgICAgICAgICBpZDogcGF0aCwKICAgICAgICAgICAgICB0eXBlOiB0eXBlMiwKICAgICAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgICAgIHJhdzogc2NoZW1hMiwKICAgICAgICAgICAgICBpdGVtcywKICAgICAgICAgICAgICBtdWx0aXNlbGVjdCwKICAgICAgICAgICAgICBwcm9wZXJ0eVR5cGVzLAogICAgICAgICAgICAgIGRlZmF1bHQ6IHR5cGVvZiBwYXJlbnRTY2hlbWEuZGVmYXVsdCA9PSAib2JqZWN0IiAmJiBwYXJlbnRTY2hlbWEuZGVmYXVsdCAhPT0gbnVsbCAmJiAhQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZGVmYXVsdCkgPyB2b2lkIDAgOiBwYXJlbnRTY2hlbWEuZGVmYXVsdCwKICAgICAgICAgICAgICBhc3luYyB2YWxpZGF0b3IoZGF0YSkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaXQuc2VsZi52YWxpZGF0ZShwYXJlbnRTY2hlbWEsIGRhdGEpOwogICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpdC5zZWxmLmVycm9ycz8ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0LnNlbGYuZXJyb3JzWzBdLm1lc3NhZ2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkVycm9yID0gZTsKICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsaWRhdGlvbkVycm9yLmVycm9ycykgJiYgdmFsaWRhdGlvbkVycm9yLmVycm9ycy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvbkVycm9yLmVycm9yc1swXS5tZXNzYWdlOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgICBjb21waWxhdGlvblNjaGVtSW5mby5wcm9tcHREZWZpbml0aW9ucy5wdXNoKGRlZmluaXRpb24pOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaWYgKHRoaXMgJiYgdGhpcy5wcm9tcHRGaWVsZHNXaXRoVmFsdWUpIHsKICAgICAgICAgICAgICAgIHRoaXMucHJvbXB0RmllbGRzV2l0aFZhbHVlLmFkZChwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH07CiAgICAgICAgICB9LAogICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICBvbmVPZjogWwogICAgICAgICAgICAgIHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgICAgICAgICAgICJtZXNzYWdlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgICAgICAgICByZXF1aXJlZDogWyJtZXNzYWdlIl0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBhc3luYyBfYXBwbHlQcm9tcHRzKGRhdGEsIHByb21wdHMpIHsKICAgICAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuX3Byb21wdFByb3ZpZGVyOwogICAgICAgIGlmICghcHJvdmlkZXIpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgYW5zd2VycyA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHJ4anNfMS5mcm9tKShwcm92aWRlcihwcm9tcHRzKSkpOwogICAgICAgIGZvciAoY29uc3QgcGF0aCBpbiBhbnN3ZXJzKSB7CiAgICAgICAgICBjb25zdCBwYXRoRnJhZ21lbnRzID0gcGF0aC5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIHBhdGhGcmFnbWVudHMsIGFuc3dlcnNbcGF0aF0sIG51bGwsIHZvaWQgMCwgdHJ1ZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN0YXRpYyBfc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUsIHBhcmVudCA9IG51bGwsIHBhcmVudFByb3BlcnR5LCBmb3JjZSkgewogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBmcmFnbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IGZyYWdtZW50c1tpbmRleF07CiAgICAgICAgICBpZiAoL15pXGQrJC8udGVzdChmcmFnbWVudCkpIHsKICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGEpKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvciAobGV0IGRhdGFJbmRleCA9IDA7IGRhdGFJbmRleCA8IGRhdGEubGVuZ3RoOyBkYXRhSW5kZXgrKykgewogICAgICAgICAgICAgIF9Db3JlU2NoZW1hUmVnaXN0cnkuX3NldChkYXRhW2RhdGFJbmRleF0sIGZyYWdtZW50cy5zbGljZShpbmRleCArIDEpLCB2YWx1ZSwgZGF0YSwgYCR7ZGF0YUluZGV4fWApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZGF0YSAmJiBwYXJlbnQgIT09IG51bGwgJiYgcGFyZW50UHJvcGVydHkpIHsKICAgICAgICAgICAgZGF0YSA9IHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPSB7fTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcmVudCA9IGRhdGE7CiAgICAgICAgICBwYXJlbnRQcm9wZXJ0eSA9IGZyYWdtZW50OwogICAgICAgICAgZGF0YSA9IGRhdGFbZnJhZ21lbnRdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudFByb3BlcnR5ICYmIChmb3JjZSB8fCBwYXJlbnRbcGFyZW50UHJvcGVydHldID09PSB2b2lkIDApKSB7CiAgICAgICAgICBwYXJlbnRbcGFyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzeW5jIF9hcHBseVNtYXJ0RGVmYXVsdHMoZGF0YSwgc21hcnREZWZhdWx0cykgewogICAgICAgIGZvciAoY29uc3QgW3BvaW50ZXIsIHNjaGVtYTJdIG9mIHNtYXJ0RGVmYXVsdHMuZW50cmllcygpKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSBKU09OLnBhcnNlKHBvaW50ZXIpOwogICAgICAgICAgY29uc3Qgc291cmNlID0gdGhpcy5fc291cmNlTWFwLmdldChzY2hlbWEyLiRzb3VyY2UpOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2Uoc2NoZW1hMik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKHZhbHVlKSkgewogICAgICAgICAgICB2YWx1ZSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkodmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUpOwogICAgICAgIH0KICAgICAgfQogICAgICB1c2VYRGVwcmVjYXRlZFByb3ZpZGVyKG9uVXNhZ2UpIHsKICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1kZXByZWNhdGVkIiwKICAgICAgICAgIHZhbGlkYXRlOiAoc2NoZW1hMiwgX2RhdGEsIF9wYXJlbnRTY2hlbWEsIGRhdGFDeHQpID0+IHsKICAgICAgICAgICAgaWYgKHNjaGVtYTIpIHsKICAgICAgICAgICAgICBvblVzYWdlKGBPcHRpb24gIiR7ZGF0YUN4dD8ucGFyZW50RGF0YVByb3BlcnR5fSIgaXMgZGVwcmVjYXRlZCR7dHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIgPyAiOiAiICsgc2NoZW1hMiA6ICIuIn1gKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcnM6IGZhbHNlCiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpIHsKICAgICAgICByZXR1cm4gaXQuZGF0YVBhdGhBcnIuc2xpY2UoMSwgaXQuZGF0YUxldmVsICsgMSkubWFwKChwKSA9PiB0eXBlb2YgcCA9PT0gIm51bWJlciIgPyBwIDogcC5zdHIucmVwbGFjZSgvIi9nLCAiIikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gQ29yZVNjaGVtYVJlZ2lzdHJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzCnZhciByZXF1aXJlX3NjaGVtYSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0pzb25TY2hlbWEgPSBpc0pzb25TY2hlbWE7CiAgICBleHBvcnRzMi5tZXJnZVNjaGVtYXMgPSBtZXJnZVNjaGVtYXM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIGZ1bmN0aW9uIGlzSnNvblNjaGVtYSh2YWx1ZSkgewogICAgICByZXR1cm4gKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgdmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSB0cnVlOwogICAgfQogICAgZnVuY3Rpb24gbWVyZ2VTY2hlbWFzKC4uLnNjaGVtYXMpIHsKICAgICAgcmV0dXJuIHNjaGVtYXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiB7CiAgICAgICAgaWYgKGN1cnIgPT09IHZvaWQgMCkgewogICAgICAgICAgcmV0dXJuIHByZXY7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2ID09PSBmYWxzZSB8fCBjdXJyID09PSBmYWxzZSkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSBpZiAocHJldiA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIGN1cnI7CiAgICAgICAgfSBlbHNlIGlmIChjdXJyID09PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm4gcHJldjsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocHJldi5hbGxPZikpIHsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1cnIuYWxsT2YpKSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgY3Vycl0gfTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY3Vyci5hbGxPZikpIHsKICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbcHJldiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFtwcmV2LCBjdXJyXSB9OwogICAgICAgIH0KICAgICAgfSwgdHJ1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcwp2YXIgcmVxdWlyZV9zY2hlbWEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudHJhbnNmb3JtcyA9IHZvaWQgMDsKICAgIHZhciB0cmFuc2Zvcm1zID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtcygpKTsKICAgIGV4cG9ydHMyLnRyYW5zZm9ybXMgPSB0cmFuc2Zvcm1zOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BvaW50ZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmVnaXN0cnkoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Zpc2l0b3IoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdXRpbGl0eSgpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL2luZGV4LmpzCnZhciByZXF1aXJlX2pzb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBzY2hlbWEyID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hMigpKTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHNjaGVtYTI7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlscygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbG9nZ2VyLmpzCnZhciByZXF1aXJlX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyByeGpzXzEuT2JzZXJ2YWJsZSB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX21ldGFkYXRhOwogICAgICBfb2JzID0gcnhqc18xLkVNUFRZOwogICAgICBfc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgZ2V0IF9vYnNlcnZhYmxlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnM7CiAgICAgIH0KICAgICAgc2V0IF9vYnNlcnZhYmxlKHYpIHsKICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fb2JzID0gdjsKICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKGVycm9yKSA9PiB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCkgewogICAgICAgICAgICAgIHRoaXMucGFyZW50Ll9zdWJqZWN0LmVycm9yKGVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKCkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIGNvbnN0IHBhdGggPSBbXTsKICAgICAgICBsZXQgcCA9IHBhcmVudDsKICAgICAgICB3aGlsZSAocCkgewogICAgICAgICAgcGF0aC5wdXNoKHAubmFtZSk7CiAgICAgICAgICBwID0gcC5wYXJlbnQ7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21ldGFkYXRhID0geyBuYW1lLCBwYXRoIH07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX3N1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50Ll9zdWJqZWN0KSB7CiAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5zdWJzY3JpYmUodm9pZCAwLCB2b2lkIDAsICgpID0+IHRoaXMuY29tcGxldGUoKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKG5hbWUpID0+IHRoaXMuY3JlYXRlQ2hpbGQobmFtZSksCiAgICAgICAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEpID0+IHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgICAgICB9LAogICAgICAgICAgZGVidWc6IChtZXNzYWdlLCBtZXRhZGF0YSkgPT4gdGhpcy5kZWJ1ZyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBpbmZvOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICB3YXJuOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMud2FybihtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBlcnJvcjogKG1lc3NhZ2UsIG1ldGFkYXRhKSA9PiB0aGlzLmVycm9yKG1lc3NhZ2UsIG1ldGFkYXRhKSwKICAgICAgICAgIGZhdGFsOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuZmF0YWwobWVzc2FnZSwgbWV0YWRhdGEpCiAgICAgICAgfTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5hbWUsIHRoaXMpOwogICAgICB9CiAgICAgIGNvbXBsZXRlKCkgewogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgfQogICAgICBsb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGFkYXRhID0ge30pIHsKICAgICAgICBjb25zdCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe30sIG1ldGFkYXRhLCB0aGlzLl9tZXRhZGF0YSwgewogICAgICAgICAgbGV2ZWwsCiAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgdGltZXN0YW1wOiArRGF0ZS5ub3coKQogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgbmV4dChlbnRyeSkgewogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgZGVidWcobWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygiZGVidWciLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgIH0KICAgICAgaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJpbmZvIiwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIHdhcm4obWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygid2FybiIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBlcnJvcihtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJlcnJvciIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBmYXRhbChtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJmYXRhbCIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gYDxMb2dnZXIoJHt0aGlzLm5hbWV9KT5gOwogICAgICB9CiAgICAgIGxpZnQob3BlcmF0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb2JzZXJ2YWJsZS5saWZ0KG9wZXJhdG9yKTsKICAgICAgfQogICAgICBzdWJzY3JpYmUoX29ic2VydmVyT3JOZXh0LCBfZXJyb3IsIF9jb21wbGV0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnNlcnZhYmxlLnN1YnNjcmliZS5hcHBseSgKICAgICAgICAgIHRoaXMuX29ic2VydmFibGUsCiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zCiAgICAgICAgICBhcmd1bWVudHMKICAgICAgICApOwogICAgICB9CiAgICAgIGZvckVhY2gobmV4dCwgcHJvbWlzZUN0b3IgPSBQcm9taXNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX29ic2VydmFibGUuZm9yRWFjaChuZXh0LCBwcm9taXNlQ3Rvcik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Mb2dnZXIgPSBMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZW50LmpzCnZhciByZXF1aXJlX2luZGVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIGluZGVudGF0aW9uTWFwID0ge307CiAgICB2YXIgSW5kZW50TG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBpbmRlbnRhdGlvbiA9ICIgICIpIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSB8fCBbIiJdOwogICAgICAgIGNvbnN0IGluZGVudE1hcCA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gdGhpcy5fb2JzZXJ2YWJsZS5waXBlKCgwLCByeGpzXzEubWFwKSgoZW50cnkpID0+IHsKICAgICAgICAgIGNvbnN0IGwgPSBlbnRyeS5wYXRoLmZpbHRlcigoeCkgPT4gISF4KS5sZW5ndGg7CiAgICAgICAgICBpZiAobCA+PSBpbmRlbnRNYXAubGVuZ3RoKSB7CiAgICAgICAgICAgIGxldCBjdXJyZW50ID0gaW5kZW50TWFwW2luZGVudE1hcC5sZW5ndGggLSAxXTsKICAgICAgICAgICAgd2hpbGUgKGwgPj0gaW5kZW50TWFwLmxlbmd0aCkgewogICAgICAgICAgICAgIGN1cnJlbnQgKz0gaW5kZW50YXRpb247CiAgICAgICAgICAgICAgaW5kZW50TWFwLnB1c2goY3VycmVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGVudHJ5Lm1lc3NhZ2UgPSBpbmRlbnRNYXBbbF0gKyBlbnRyeS5tZXNzYWdlLnNwbGl0KC9cbi8pLmpvaW4oIlxuIiArIGluZGVudE1hcFtsXSk7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gSW5kZW50TG9nZ2VyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzCnZhciByZXF1aXJlX2xldmVsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbGV2ZWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkxldmVsQ2FwTG9nZ2VyID0gZXhwb3J0czIuTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgPSB2b2lkIDA7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIExldmVsVHJhbnNmb3JtTG9nZ2VyID0gY2xhc3MgX0xldmVsVHJhbnNmb3JtTG9nZ2VyIGV4dGVuZHMgbG9nZ2VyXzEuTG9nZ2VyIHsKICAgICAgbmFtZTsKICAgICAgcGFyZW50OwogICAgICBsZXZlbFRyYW5zZm9ybTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxUcmFuc2Zvcm0pIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbFRyYW5zZm9ybSA9IGxldmVsVHJhbnNmb3JtOwogICAgICB9CiAgICAgIGxvZyhsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiBzdXBlci5sb2codGhpcy5sZXZlbFRyYW5zZm9ybShsZXZlbCksIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIobmFtZSwgdGhpcywgdGhpcy5sZXZlbFRyYW5zZm9ybSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5MZXZlbFRyYW5zZm9ybUxvZ2dlciA9IExldmVsVHJhbnNmb3JtTG9nZ2VyOwogICAgdmFyIExldmVsQ2FwTG9nZ2VyID0gY2xhc3MgX0xldmVsQ2FwTG9nZ2VyIGV4dGVuZHMgTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgewogICAgICBuYW1lOwogICAgICBwYXJlbnQ7CiAgICAgIGxldmVsQ2FwOwogICAgICBzdGF0aWMgbGV2ZWxNYXAgPSB7CiAgICAgICAgZGVidWc6IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJkZWJ1ZyIsIHdhcm46ICJkZWJ1ZyIsIGVycm9yOiAiZGVidWciLCBmYXRhbDogImRlYnVnIiB9LAogICAgICAgIGluZm86IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJpbmZvIiwgd2FybjogImluZm8iLCBlcnJvcjogImluZm8iLCBmYXRhbDogImluZm8iIH0sCiAgICAgICAgd2FybjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAid2FybiIsIGZhdGFsOiAid2FybiIgfSwKICAgICAgICBlcnJvcjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAiZXJyb3IiLCBmYXRhbDogImVycm9yIiB9LAogICAgICAgIGZhdGFsOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJlcnJvciIsIGZhdGFsOiAiZmF0YWwiIH0KICAgICAgfTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxDYXApIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQsIChsZXZlbCkgPT4gewogICAgICAgICAgcmV0dXJuIF9MZXZlbENhcExvZ2dlci5sZXZlbE1hcFtsZXZlbENhcF1bbGV2ZWxdIHx8IGxldmVsOwogICAgICAgIH0pOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbENhcCA9IGxldmVsQ2FwOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGV2ZWxDYXBMb2dnZXIgPSBMZXZlbENhcExvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9udWxsLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV9udWxsX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIE51bGxMb2dnZXIgPSBjbGFzcyBfTnVsbExvZ2dlciBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcigiIiwgcGFyZW50KTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKCkgPT4gbmV3IF9OdWxsTG9nZ2VyKHRoaXMpLAogICAgICAgICAgbG9nKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGRlYnVnKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGluZm8oKSB7CiAgICAgICAgICB9LAogICAgICAgICAgd2FybigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBmYXRhbCgpIHsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbExvZ2dlciA9IE51bGxMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV90cmFuc2Zvcm1fbG9nZ2VyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJhbnNmb3JtTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIGxvZ2dlcl8xID0gcmVxdWlyZV9sb2dnZXIoKTsKICAgIHZhciBUcmFuc2Zvcm1Mb2dnZXIgPSBjbGFzcyBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIHRyYW5zZm9ybSwgcGFyZW50ID0gbnVsbCkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCk7CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRyYW5zZm9ybSh0aGlzLl9vYnNlcnZhYmxlKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRyYW5zZm9ybUxvZ2dlciA9IFRyYW5zZm9ybUxvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcwp2YXIgcmVxdWlyZV9sb2dnZXIyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2luZGVudCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sZXZlbCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbnVsbF9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvZGVmaW5pdGlvbnMuanMKdmFyIHJlcXVpcmVfZGVmaW5pdGlvbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgRGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyB7CiAgICAgIF9saXN0ZW5lcjsKICAgICAgX21hcDsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgX2xpc3RlbmVyKSB7CiAgICAgICAgdGhpcy5fbGlzdGVuZXIgPSBfbGlzdGVuZXI7CiAgICAgICAgdGhpcy5fbWFwID0gbmV3IE1hcChpbml0aWFsICYmIE9iamVjdC5lbnRyaWVzKGluaXRpYWwpKTsKICAgICAgfQogICAgICBkZWxldGUoa2V5KSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fbWFwLmRlbGV0ZShrZXkpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2b2lkIDAsIHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIHNldChrZXksIHZhbHVlKSB7CiAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlID0gdmFsdWUgIT09IHRoaXMuZ2V0KGtleSk7CiAgICAgICAgaWYgKHVwZGF0ZWRWYWx1ZSkgewogICAgICAgICAgdGhpcy5fbWFwLnNldChrZXksIHZhbHVlKTsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2YWx1ZSwgdGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZykgewogICAgICAgIHRoaXMuX21hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiBjYWxsYmFja2ZuKHZhbHVlLCBrZXksIHRoaXMpLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5nZXQoa2V5KTsKICAgICAgfQogICAgICBoYXMoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5oYXMoa2V5KTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnNpemU7CiAgICAgIH0KICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcFtTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgICAgZW50cmllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLmVudHJpZXMoKTsKICAgICAgfQogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9tYXAua2V5cygpOwogICAgICB9CiAgICAgIHZhbHVlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnZhbHVlcygpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaXNKc29uVmFsdWUodmFsdWUpIHsKICAgICAgY29uc3QgdmlzaXRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CiAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZpc2l0ZWQuYWRkKHZhbHVlKTsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgT2JqZWN0LnZhbHVlcyh2YWx1ZSkpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIgJiYgdmlzaXRlZC5oYXMocHJvcGVydHkpKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFpc0pzb25WYWx1ZShwcm9wZXJ0eSkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIHZhciBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJQcm9qZWN0IG5hbWUgYWxyZWFkeSBleGlzdHMuIik7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShkZWZpbml0aW9uLm5hbWUpOwogICAgICAgIGNvbnN0IHByb2plY3QgPSB7CiAgICAgICAgICByb290OiBkZWZpbml0aW9uLnJvb3QsCiAgICAgICAgICBwcmVmaXg6IGRlZmluaXRpb24ucHJlZml4LAogICAgICAgICAgc291cmNlUm9vdDogZGVmaW5pdGlvbi5zb3VyY2VSb290LAogICAgICAgICAgdGFyZ2V0czogbmV3IFRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKCksCiAgICAgICAgICBleHRlbnNpb25zOiB7fQogICAgICAgIH07CiAgICAgICAgaWYgKGRlZmluaXRpb24udGFyZ2V0cykgewogICAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdGFyZ2V0XSBvZiBPYmplY3QuZW50cmllcyhkZWZpbml0aW9uLnRhcmdldHMpKSB7CiAgICAgICAgICAgIGlmICh0YXJnZXQpIHsKICAgICAgICAgICAgICBwcm9qZWN0LnRhcmdldHMuc2V0KG5hbWUsIHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRlZmluaXRpb24pKSB7CiAgICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgICAgY2FzZSAibmFtZSI6CiAgICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKGlzSnNvblZhbHVlKHZhbHVlKSkgewogICAgICAgICAgICAgICAgcHJvamVjdC5leHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCIke25hbWV9IiBtdXN0IGJlIGEgSlNPTiB2YWx1ZS5gKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyLnNldChkZWZpbml0aW9uLm5hbWUsIHByb2plY3QpOwogICAgICAgIHJldHVybiBwcm9qZWN0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIgfHwgIS9eKD86QFx3W1x3Li1dKlwvKT9cd1tcdy4tXSokLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlByb2plY3QgbmFtZSBtdXN0IGJlIGEgdmFsaWQgbnBtIHBhY2thZ2UgbmFtZS4iKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb247CiAgICB2YXIgVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUYXJnZXQgbmFtZSBhbHJlYWR5IGV4aXN0cy4iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdmFsaWRhdGVOYW1lKGRlZmluaXRpb24ubmFtZSk7CiAgICAgICAgY29uc3QgdGFyZ2V0ID0gewogICAgICAgICAgYnVpbGRlcjogZGVmaW5pdGlvbi5idWlsZGVyLAogICAgICAgICAgb3B0aW9uczogZGVmaW5pdGlvbi5vcHRpb25zLAogICAgICAgICAgY29uZmlndXJhdGlvbnM6IGRlZmluaXRpb24uY29uZmlndXJhdGlvbnMsCiAgICAgICAgICBkZWZhdWx0Q29uZmlndXJhdGlvbjogZGVmaW5pdGlvbi5kZWZhdWx0Q29uZmlndXJhdGlvbgogICAgICAgIH07CiAgICAgICAgc3VwZXIuc2V0KGRlZmluaXRpb24ubmFtZSwgdGFyZ2V0KTsKICAgICAgICByZXR1cm4gdGFyZ2V0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlRhcmdldCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBUYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvcGF0aC5qcwp2YXIgcmVxdWlyZV9wYXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL3BhdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhdGggPSBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSBleHBvcnRzMi5QYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRQYXRoRXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3BsaXQgPSBzcGxpdDsKICAgIGV4cG9ydHMyLmV4dG5hbWUgPSBleHRuYW1lOwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSBiYXNlbmFtZTsKICAgIGV4cG9ydHMyLmRpcm5hbWUgPSBkaXJuYW1lOwogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGU7CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgZXhwb3J0czIucmVzb2x2ZSA9IHJlc29sdmU7CiAgICBleHBvcnRzMi5mcmFnbWVudCA9IGZyYWdtZW50OwogICAgZXhwb3J0czIucmVzZXROb3JtYWxpemVDYWNoZSA9IHJlc2V0Tm9ybWFsaXplQ2FjaGU7CiAgICBleHBvcnRzMi5ub3JtYWxpemUgPSBub3JtYWxpemU7CiAgICBleHBvcnRzMi5ub0NhY2hlTm9ybWFsaXplID0gbm9DYWNoZU5vcm1hbGl6ZTsKICAgIGV4cG9ydHMyLmFzV2luZG93c1BhdGggPSBhc1dpbmRvd3NQYXRoOwogICAgZXhwb3J0czIuYXNQb3NpeFBhdGggPSBhc1Bvc2l4UGF0aDsKICAgIGV4cG9ydHMyLmdldFN5c3RlbVBhdGggPSBnZXRTeXN0ZW1QYXRoOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBJbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IGlzIGludmFsaWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IEludmFsaWRQYXRoRXhjZXB0aW9uOwogICAgdmFyIFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IG11c3QgYmUgYWJzb2x1dGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb247CiAgICB2YXIgUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBjYW5ub3QgYmUgbWFkZSBhIGZyYWdtZW50LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbjsKICAgIGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSAiLyI7CiAgICBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXA7CiAgICBmdW5jdGlvbiBzcGxpdChwYXRoMikgewogICAgICBjb25zdCBmcmFnbWVudHMgPSBwYXRoMi5zcGxpdChleHBvcnRzMi5Ob3JtYWxpemVkU2VwKS5tYXAoKHgpID0+IGZyYWdtZW50KHgpKTsKICAgICAgaWYgKGZyYWdtZW50c1tmcmFnbWVudHMubGVuZ3RoIC0gMV0ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgZnJhZ21lbnRzLnBvcCgpOwogICAgICB9CiAgICAgIHJldHVybiBmcmFnbWVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBleHRuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGJhc2UgPSBiYXNlbmFtZShwYXRoMik7CiAgICAgIGNvbnN0IGkgPSBiYXNlLmxhc3RJbmRleE9mKCIuIik7CiAgICAgIGlmIChpIDwgMSkgewogICAgICAgIHJldHVybiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYmFzZS5zbGljZShpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYmFzZW5hbWUocGF0aDIpIHsKICAgICAgY29uc3QgaSA9IHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICBpZiAoaSA9PSAtMSkgewogICAgICAgIHJldHVybiBmcmFnbWVudChwYXRoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGZyYWdtZW50KHBhdGgyLnNsaWNlKHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApICsgMSkpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkaXJuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGluZGV4ID0gcGF0aDIubGFzdEluZGV4T2YoZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgY29uc3QgZW5kSW5kZXggPSBpbmRleCA9PT0gMCA/IDEgOiBpbmRleDsKICAgICAgcmV0dXJuIG5vcm1hbGl6ZShwYXRoMi5zbGljZSgwLCBlbmRJbmRleCkpOwogICAgfQogICAgZnVuY3Rpb24gam9pbjIocDEsIC4uLm90aGVycykgewogICAgICBpZiAob3RoZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICByZXR1cm4gbm9ybWFsaXplKChwMSA/IHAxICsgZXhwb3J0czIuTm9ybWFsaXplZFNlcCA6ICIiKSArIG90aGVycy5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gcDE7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGlzQWJzb2x1dGUocCkgewogICAgICByZXR1cm4gcC5zdGFydHNXaXRoKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgfQogICAgZnVuY3Rpb24gcmVsYXRpdmUoZnJvbSwgdG8pIHsKICAgICAgaWYgKCFpc0Fic29sdXRlKGZyb20pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbihmcm9tKTsKICAgICAgfQogICAgICBpZiAoIWlzQWJzb2x1dGUodG8pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbih0byk7CiAgICAgIH0KICAgICAgbGV0IHA7CiAgICAgIGlmIChmcm9tID09IHRvKSB7CiAgICAgICAgcCA9ICIiOwogICAgICB9IGVsc2UgewogICAgICAgIGNvbnN0IHNwbGl0RnJvbSA9IHNwbGl0KGZyb20pOwogICAgICAgIGNvbnN0IHNwbGl0VG8gPSBzcGxpdCh0byk7CiAgICAgICAgd2hpbGUgKHNwbGl0RnJvbS5sZW5ndGggPiAwICYmIHNwbGl0VG8ubGVuZ3RoID4gMCAmJiBzcGxpdEZyb21bMF0gPT0gc3BsaXRUb1swXSkgewogICAgICAgICAgc3BsaXRGcm9tLnNoaWZ0KCk7CiAgICAgICAgICBzcGxpdFRvLnNoaWZ0KCk7CiAgICAgICAgfQogICAgICAgIGlmIChzcGxpdEZyb20ubGVuZ3RoID09IDApIHsKICAgICAgICAgIHAgPSBzcGxpdFRvLmpvaW4oZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHAgPSBzcGxpdEZyb20ubWFwKCgpID0+ICIuLiIpLmNvbmNhdChzcGxpdFRvKS5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbm9ybWFsaXplKHApOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShwMSwgcDIpIHsKICAgICAgaWYgKGlzQWJzb2x1dGUocDIpKSB7CiAgICAgICAgcmV0dXJuIHAyOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBqb2luMihwMSwgcDIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBmcmFnbWVudChwYXRoMikgewogICAgICBpZiAocGF0aDIuaW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSAhPSAtMSkgewogICAgICAgIHRocm93IG5ldyBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbihwYXRoMik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGgyOwogICAgfQogICAgdmFyIG5vcm1hbGl6ZWRDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICBmdW5jdGlvbiByZXNldE5vcm1hbGl6ZUNhY2hlKCkgewogICAgICBub3JtYWxpemVkQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGxldCBtYXliZVBhdGggPSBub3JtYWxpemVkQ2FjaGUuZ2V0KHBhdGgyKTsKICAgICAgaWYgKCFtYXliZVBhdGgpIHsKICAgICAgICBtYXliZVBhdGggPSBub0NhY2hlTm9ybWFsaXplKHBhdGgyKTsKICAgICAgICBub3JtYWxpemVkQ2FjaGUuc2V0KHBhdGgyLCBtYXliZVBhdGgpOwogICAgICB9CiAgICAgIHJldHVybiBtYXliZVBhdGg7CiAgICB9CiAgICBmdW5jdGlvbiBub0NhY2hlTm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGlmIChwYXRoMiA9PSAiIiB8fCBwYXRoMiA9PSAiLiIpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0gZWxzZSBpZiAocGF0aDIgPT0gZXhwb3J0czIuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICByZXR1cm4gZXhwb3J0czIuTm9ybWFsaXplZFJvb3Q7CiAgICAgIH0KICAgICAgY29uc3Qgb3JpZ2luYWwgPSBwYXRoMjsKICAgICAgaWYgKHBhdGgyLm1hdGNoKC9eW0EtWl06Wy9cXF0vaSkpIHsKICAgICAgICBwYXRoMiA9ICJcXCIgKyBwYXRoMlswXS50b1VwcGVyQ2FzZSgpICsgIlxcIiArIHBhdGgyLnNsaWNlKDMpOwogICAgICB9CiAgICAgIGNvbnN0IHAgPSBwYXRoMi5zcGxpdCgvWy9cXF0vZyk7CiAgICAgIGxldCByZWxhdGl2ZTIgPSBmYWxzZTsKICAgICAgbGV0IGkgPSAxOwogICAgICBpZiAocFswXSAhPSAiIikgewogICAgICAgIHAudW5zaGlmdCgiLiIpOwogICAgICAgIHJlbGF0aXZlMiA9IHRydWU7CiAgICAgIH0KICAgICAgd2hpbGUgKGkgPCBwLmxlbmd0aCkgewogICAgICAgIGlmIChwW2ldID09ICIuIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIGlmIChwW2ldID09ICIuLiIpIHsKICAgICAgICAgIGlmIChpIDwgMiAmJiAhcmVsYXRpdmUyKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEV4Y2VwdGlvbihvcmlnaW5hbCk7CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPj0gMiAmJiBwW2kgLSAxXSAhPSAiLi4iKSB7CiAgICAgICAgICAgIHAuc3BsaWNlKGkgLSAxLCAyKTsKICAgICAgICAgICAgaS0tOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocFtpXSA9PSAiIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGkrKzsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHAubGVuZ3RoID09IDEpIHsKICAgICAgICByZXR1cm4gcFswXSA9PSAiIiA/IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgOiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocFswXSA9PSAiLiIpIHsKICAgICAgICAgIHAuc2hpZnQoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHAuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgfQogICAgfQogICAgdmFyIHBhdGggPSAoc3RyaW5nczMsIC4uLnZhbHVlcykgPT4gewogICAgICByZXR1cm4gbm9ybWFsaXplKFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykpOwogICAgfTsKICAgIGV4cG9ydHMyLnBhdGggPSBwYXRoOwogICAgZnVuY3Rpb24gYXNXaW5kb3dzUGF0aChwYXRoMikgewogICAgICBjb25zdCBkcml2ZSA9IHBhdGgyLm1hdGNoKC9eXC8oXHcpKD86XC8oLiopKT8kLyk7CiAgICAgIGlmIChkcml2ZSkgewogICAgICAgIGNvbnN0IHN1YlBhdGggPSBkcml2ZVsyXSA/IGRyaXZlWzJdLnJlcGxhY2UoL1wvL2csICJcXCIpIDogIiI7CiAgICAgICAgcmV0dXJuIGAke2RyaXZlWzFdfTpcXCR7c3ViUGF0aH1gOwogICAgICB9CiAgICAgIHJldHVybiBwYXRoMi5yZXBsYWNlKC9cLy9nLCAiXFwiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzUG9zaXhQYXRoKHBhdGgyKSB7CiAgICAgIHJldHVybiBwYXRoMjsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFN5c3RlbVBhdGgocGF0aDIpIHsKICAgICAgaWYgKHByb2Nlc3MucGxhdGZvcm0uc3RhcnRzV2l0aCgid2luMzIiKSkgewogICAgICAgIHJldHVybiBhc1dpbmRvd3NQYXRoKHBhdGgyKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYXNQb3NpeFBhdGgocGF0aDIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlcjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9idWZmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0cmluZ1RvRmlsZUJ1ZmZlciA9IHN0cmluZ1RvRmlsZUJ1ZmZlcjsKICAgIGV4cG9ydHMyLmZpbGVCdWZmZXJUb1N0cmluZyA9IGZpbGVCdWZmZXJUb1N0cmluZzsKICAgIHZhciBub2RlX3V0aWxfMSA9IHJlcXVpcmUoIm5vZGU6dXRpbCIpOwogICAgZnVuY3Rpb24gc3RyaW5nVG9GaWxlQnVmZmVyKHN0cjIpIHsKICAgICAgcmV0dXJuIG5ldyBub2RlX3V0aWxfMS5UZXh0RW5jb2RlcigpLmVuY29kZShzdHIyKS5idWZmZXI7CiAgICB9CiAgICBmdW5jdGlvbiBmaWxlQnVmZmVyVG9TdHJpbmcoZmlsZUJ1ZmZlcikgewogICAgICBpZiAoZmlsZUJ1ZmZlci50b1N0cmluZy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZmlsZUJ1ZmZlci50b1N0cmluZygidXRmLTgiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IG5vZGVfdXRpbF8xLlRleHREZWNvZGVyKCJ1dGYtOCIpLmRlY29kZShuZXcgVWludDhBcnJheShmaWxlQnVmZmVyKSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RXYXRjaEV2ZW50VHlwZSA9IHZvaWQgMDsKICAgIHZhciBIb3N0V2F0Y2hFdmVudFR5cGU7CiAgICAoZnVuY3Rpb24oSG9zdFdhdGNoRXZlbnRUeXBlMikgewogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNoYW5nZWQiXSA9IDBdID0gIkNoYW5nZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNyZWF0ZWQiXSA9IDFdID0gIkNyZWF0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkRlbGV0ZWQiXSA9IDJdID0gIkRlbGV0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIlJlbmFtZWQiXSA9IDNdID0gIlJlbmFtZWQiOwogICAgfSkoSG9zdFdhdGNoRXZlbnRUeXBlIHx8IChleHBvcnRzMi5Ib3N0V2F0Y2hFdmVudFR5cGUgPSBIb3N0V2F0Y2hFdmVudFR5cGUgPSB7fSkpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qcwp2YXIgcmVxdWlyZV9tZW1vcnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9tZW1vcnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNpbXBsZU1lbW9yeUhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTIoKTsKICAgIHZhciBTaW1wbGVNZW1vcnlIb3N0ID0gY2xhc3MgewogICAgICBfY2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfd2F0Y2hlcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfbmV3RGlyU3RhdHMoKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGluc3BlY3QoKSB7CiAgICAgICAgICAgIHJldHVybiAiPERpcmVjdG9yeT4iOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRmlsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBzaXplOiAwLAogICAgICAgICAgYXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY3RpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgbXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgYmlydGh0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQ6IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICAgIF9uZXdGaWxlU3RhdHMoY29udGVudCwgb2xkU3RhdHMpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgaW5zcGVjdCgpIHsKICAgICAgICAgICAgcmV0dXJuIGA8RmlsZSBzaXplKCR7Y29udGVudC5ieXRlTGVuZ3RofSk+YDsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0ZpbGUoKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9LAogICAgICAgICAgc2l6ZTogY29udGVudC5ieXRlTGVuZ3RoLAogICAgICAgICAgYXRpbWU6IG9sZFN0YXRzID8gb2xkU3RhdHMuYXRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGN0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIG10aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGJpcnRodGltZTogb2xkU3RhdHMgPyBvbGRTdGF0cy5iaXJ0aHRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQKICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHRoaXMuX2NhY2hlLnNldCgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKSwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgIH0KICAgICAgX3RvQWJzb2x1dGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcGF0aF8xLmlzQWJzb2x1dGUpKHBhdGgpID8gcGF0aCA6ICgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfdXBkYXRlV2F0Y2hlcnMocGF0aCwgdHlwZTIpIHsKICAgICAgICBjb25zdCB0aW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCk7CiAgICAgICAgbGV0IGN1cnJlbnRQYXRoID0gcGF0aDsKICAgICAgICBsZXQgcGFyZW50ID0gbnVsbDsKICAgICAgICBpZiAodGhpcy5fd2F0Y2hlcnMuc2l6ZSA9PSAwKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1heWJlV2F0Y2hlciA9IHRoaXMuX3dhdGNoZXJzLmdldChjdXJyZW50UGF0aCk7CiAgICAgICAgaWYgKG1heWJlV2F0Y2hlcikgewogICAgICAgICAgbWF5YmVXYXRjaGVyLmZvckVhY2goKHdhdGNoZXIpID0+IHsKICAgICAgICAgICAgY29uc3QgW29wdGlvbnMsIHN1YmplY3RdID0gd2F0Y2hlcjsKICAgICAgICAgICAgc3ViamVjdC5uZXh0KHsgcGF0aCwgdGltZSwgdHlwZTogdHlwZTIgfSk7CiAgICAgICAgICAgIGlmICghb3B0aW9ucy5wZXJzaXN0ZW50ICYmIHR5cGUyID09IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKSB7CiAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHRoaXMuX3dhdGNoZXJzLmRlbGV0ZShjdXJyZW50UGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBkbyB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IHBhcmVudCAhPT0gbnVsbCA/IHBhcmVudCA6IGN1cnJlbnRQYXRoOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhdGhfMS5kaXJuYW1lKShjdXJyZW50UGF0aCk7CiAgICAgICAgICBjb25zdCBtYXliZVdhdGNoZXIyID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KGN1cnJlbnRQYXRoKTsKICAgICAgICAgIGlmIChtYXliZVdhdGNoZXIyKSB7CiAgICAgICAgICAgIG1heWJlV2F0Y2hlcjIuZm9yRWFjaCgod2F0Y2hlcikgPT4gewogICAgICAgICAgICAgIGNvbnN0IFtvcHRpb25zLCBzdWJqZWN0XSA9IHdhdGNoZXI7CiAgICAgICAgICAgICAgaWYgKCFvcHRpb25zLnJlY3Vyc2l2ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdWJqZWN0Lm5leHQoeyBwYXRoLCB0aW1lLCB0eXBlOiB0eXBlMiB9KTsKICAgICAgICAgICAgICBpZiAoIW9wdGlvbnMucGVyc2lzdGVudCAmJiB0eXBlMiA9PSBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZCkgewogICAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgdGhpcy5fd2F0Y2hlcnMuZGVsZXRlKGN1cnJlbnRQYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKHBhcmVudCAhPSBjdXJyZW50UGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaXN0IG9mIHByb3RlY3RlZCBtZXRob2RzIHRoYXQgZ2l2ZSBkaXJlY3QgYWNjZXNzIG91dHNpZGUgdGhlIG9ic2VydmFibGVzIHRvIHRoZSBjYWNoZQogICAgICAgKiBhbmQgaW50ZXJuYWwgc3RhdGVzLgogICAgICAgKi8KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBvbGQgPSB0aGlzLl9jYWNoZS5nZXQocGF0aCk7CiAgICAgICAgaWYgKG9sZCAmJiBvbGQuaXNEaXJlY3RvcnkoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgbGV0IGN1cnIgPSAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGZyIG9mIGZyYWdtZW50cykgewogICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChmcik7CiAgICAgICAgICBpZiAobWF5YmVTdGF0cykgewogICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNGaWxlRXhjZXB0aW9uKGN1cnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoY3VyciwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHN0YXRzID0gdGhpcy5fbmV3RmlsZVN0YXRzKGNvbnRlbnQsIG9sZCk7CiAgICAgICAgdGhpcy5fY2FjaGUuc2V0KHBhdGgsIHN0YXRzKTsKICAgICAgICB0aGlzLl91cGRhdGVXYXRjaGVycyhwYXRoLCBvbGQgPyBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZCA6IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkKTsKICAgICAgfQogICAgICBfcmVhZChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChwYXRoKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAobWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAoIW1heWJlU3RhdHMuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIG1heWJlU3RhdHMuY29udGVudDsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IFtjYWNoZVBhdGhdIG9mIHRoaXMuX2NhY2hlLmVudHJpZXMoKSkgewogICAgICAgICAgICBpZiAoY2FjaGVQYXRoLnN0YXJ0c1dpdGgocGF0aCArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSB8fCBjYWNoZVBhdGggPT09IHBhdGgpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVQYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUocGF0aCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKTsKICAgICAgfQogICAgICBfcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgZnJvbSA9IHRoaXMuX3RvQWJzb2x1dGUoZnJvbSk7CiAgICAgICAgdG8gPSB0aGlzLl90b0Fic29sdXRlKHRvKTsKICAgICAgICBpZiAoIXRoaXMuX2NhY2hlLmhhcyhmcm9tKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oZnJvbSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jYWNoZS5oYXModG8pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbih0byk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pc0RpcmVjdG9yeShmcm9tKSkgewogICAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKGZyb20gKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fY2FjaGUuZ2V0KHBhdGgpOwogICAgICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoKDAsIHBhdGhfMS5qb2luKSh0bywgcGF0aF8xLk5vcm1hbGl6ZWRTZXAsIHBhdGguc2xpY2UoZnJvbS5sZW5ndGgpKSwgY29udGVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9jYWNoZS5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSAoMCwgcGF0aF8xLnNwbGl0KSh0byk7CiAgICAgICAgICAgIGNvbnN0IG5ld0RpcmVjdG9yaWVzID0gW107CiAgICAgICAgICAgIGxldCBjdXJyID0gKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIik7CiAgICAgICAgICAgIGZvciAoY29uc3QgZnIgb2YgZnJhZ21lbnRzKSB7CiAgICAgICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgICAgIGNvbnN0IG1heWJlU3RhdHMgPSB0aGlzLl9jYWNoZS5nZXQoZnIpOwogICAgICAgICAgICAgIGlmIChtYXliZVN0YXRzKSB7CiAgICAgICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihjdXJyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbmV3RGlyZWN0b3JpZXMucHVzaChjdXJyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIChjb25zdCBuZXdEaXJlY3Rvcnkgb2YgbmV3RGlyZWN0b3JpZXMpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQobmV3RGlyZWN0b3J5LCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoZnJvbSk7CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldCh0bywgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKGZyb20sIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5SZW5hbWVkKTsKICAgICAgfQogICAgICBfbGlzdChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRmlsZShwYXRoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0ZpbGVFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZyYWdtZW50cyA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgaWYgKHBhdGggIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgZm9yIChjb25zdCBwIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocC5zdGFydHNXaXRoKHBhdGggKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICByZXN1bHQuYWRkKCgwLCBwYXRoXzEuc3BsaXQpKHApW2ZyYWdtZW50cy5sZW5ndGhdKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwLnN0YXJ0c1dpdGgocGF0aF8xLk5vcm1hbGl6ZWRTZXApICYmIHAgIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgICAgIHJlc3VsdC5hZGQoKDAsIHBhdGhfMS5zcGxpdCkocClbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBbLi4ucmVzdWx0XTsKICAgICAgfQogICAgICBfZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gISF0aGlzLl9jYWNoZS5nZXQodGhpcy5fdG9BYnNvbHV0ZShwYXRoKSk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIHJldHVybiBtYXliZVN0YXRzID8gbWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpIDogZmFsc2U7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0cyA/IG1heWJlU3RhdHMuaXNGaWxlKCkgOiBmYWxzZTsKICAgICAgfQogICAgICBfc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTdGF0czsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgICAgbGV0IG1heWJlV2F0Y2hlckFycmF5ID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghbWF5YmVXYXRjaGVyQXJyYXkpIHsKICAgICAgICAgIG1heWJlV2F0Y2hlckFycmF5ID0gW107CiAgICAgICAgICB0aGlzLl93YXRjaGVycy5zZXQocGF0aCwgbWF5YmVXYXRjaGVyQXJyYXkpOwogICAgICAgIH0KICAgICAgICBtYXliZVdhdGNoZXJBcnJheS5wdXNoKFtvcHRpb25zIHx8IHt9LCBzdWJqZWN0XSk7CiAgICAgICAgcmV0dXJuIHN1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fcmVhZChwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KGNvbnRlbnQpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX2RlbGV0ZShwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9saXN0KHBhdGgpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9leGlzdHMocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5faXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2lzRmlsZShwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX3N0YXQocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl93YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgIHRoaXMuX3dhdGNoZXJzLmNsZWFyKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TaW1wbGVNZW1vcnlIb3N0ID0gU2ltcGxlTWVtb3J5SG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzCnZhciByZXF1aXJlX3N5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TeW5jRGVsZWdhdGVIb3N0ID0gZXhwb3J0czIuU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICBzdXBlcihgRXhwZWN0ZWQgYSBzeW5jaHJvbm91cyBkZWxlZ2F0ZSBidXQgZ290IGFuIGFzeW5jaHJvbm91cyBvbmUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb247CiAgICB2YXIgU3luY0RlbGVnYXRlSG9zdCA9IGNsYXNzIHsKICAgICAgX2RlbGVnYXRlOwogICAgICBjb25zdHJ1Y3RvcihfZGVsZWdhdGUpIHsKICAgICAgICB0aGlzLl9kZWxlZ2F0ZSA9IF9kZWxlZ2F0ZTsKICAgICAgICBpZiAoIV9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXMuc3luY2hyb25vdXMpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RvU3luY0NhbGwob2JzZXJ2YWJsZSkgewogICAgICAgIGxldCBjb21wbGV0ZWQgPSBmYWxzZTsKICAgICAgICBsZXQgcmVzdWx0ID0gdm9pZCAwOwogICAgICAgIGxldCBlcnJvclJlc3VsdCA9IHZvaWQgMDsKICAgICAgICBvYnNlcnZhYmxlLnN1YnNjcmliZSgoeCkgPT4gcmVzdWx0ID0geCwgKGVycikgPT4gZXJyb3JSZXN1bHQgPSBlcnIsICgpID0+IGNvbXBsZXRlZCA9IHRydWUpOwogICAgICAgIGlmIChlcnJvclJlc3VsdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBlcnJvclJlc3VsdDsKICAgICAgICB9CiAgICAgICAgaWYgKCFjb21wbGV0ZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXM7CiAgICAgIH0KICAgICAgZ2V0IGRlbGVnYXRlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZTsKICAgICAgfQogICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUud3JpdGUocGF0aCwgY29udGVudCkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLnJlYWQocGF0aCkpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuZGVsZXRlKHBhdGgpKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUoZnJvbSwgdG8pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmV4aXN0cyhwYXRoKSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRmlsZShwYXRoKSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgc3RhdC4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbChyZXN1bHQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlN5bmNEZWxlZ2F0ZUhvc3QgPSBTeW5jRGVsZWdhdGVIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMKdmFyIHJlcXVpcmVfdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRlc3RIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIGJ1ZmZlcl8xID0gcmVxdWlyZV9idWZmZXIyKCk7CiAgICB2YXIgbWVtb3J5XzEgPSByZXF1aXJlX21lbW9yeSgpOwogICAgdmFyIHN5bmNfMSA9IHJlcXVpcmVfc3luYygpOwogICAgdmFyIFRlc3RIb3N0ID0gY2xhc3MgX1Rlc3RIb3N0IGV4dGVuZHMgbWVtb3J5XzEuU2ltcGxlTWVtb3J5SG9zdCB7CiAgICAgIF9yZWNvcmRzID0gW107CiAgICAgIF9zeW5jID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IobWFwMiA9IHt9KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBmb3IgKGNvbnN0IGZpbGVQYXRoIG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1hcDIpKSB7CiAgICAgICAgICB0aGlzLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoZmlsZVBhdGgpLCAoMCwgYnVmZmVyXzEuc3RyaW5nVG9GaWxlQnVmZmVyKShtYXAyW2ZpbGVQYXRoXSkpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgcmVjb3JkcygpIHsKICAgICAgICByZXR1cm4gWy4uLnRoaXMuX3JlY29yZHNdOwogICAgICB9CiAgICAgIGNsZWFyUmVjb3JkcygpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzID0gW107CiAgICAgIH0KICAgICAgZ2V0IGZpbGVzKCkgewogICAgICAgIGNvbnN0IHN5bmMgPSB0aGlzLnN5bmM7CiAgICAgICAgZnVuY3Rpb24gX3Zpc2l0KHApIHsKICAgICAgICAgIHJldHVybiBzeW5jLmxpc3QocCkubWFwKChmcmFnbWVudCkgPT4gKDAsIHBhdGhfMS5qb2luKShwLCBmcmFnbWVudCkpLnJlZHVjZSgoZmlsZXMsIHBhdGgpID0+IHsKICAgICAgICAgICAgaWYgKHN5bmMuaXNEaXJlY3RvcnkocGF0aCkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmlsZXMuY29uY2F0KF92aXNpdChwYXRoKSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpbGVzLmNvbmNhdChwYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3Zpc2l0KCgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIpKTsKICAgICAgfQogICAgICBnZXQgc3luYygpIHsKICAgICAgICBpZiAoIXRoaXMuX3N5bmMpIHsKICAgICAgICAgIHRoaXMuX3N5bmMgPSBuZXcgc3luY18xLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9zeW5jOwogICAgICB9CiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IG5ld0hvc3QgPSBuZXcgX1Rlc3RIb3N0KCk7CiAgICAgICAgbmV3SG9zdC5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICByZXR1cm4gbmV3SG9zdDsKICAgICAgfQogICAgICAvLyBPdmVycmlkZSBwYXJlbnRzIGZ1bmN0aW9ucyB0byBrZWVwIGEgcmVjb3JkIG9mIGFsbCBvcGVyYXRvcnMgdGhhdCB3ZXJlIGRvbmUuCiAgICAgIF93cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndyaXRlIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dyaXRlKHBhdGgsIGNvbnRlbnQpOwogICAgICB9CiAgICAgIF9yZWFkKHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVhZCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIF9kZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJkZWxldGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIF9yZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVuYW1lIiwgZnJvbSwgdG8gfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIF9saXN0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAibGlzdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9saXN0KHBhdGgpOwogICAgICB9CiAgICAgIF9leGlzdHMocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJleGlzdHMiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIF9pc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImlzRGlyZWN0b3J5IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX2lzRGlyZWN0b3J5KHBhdGgpOwogICAgICB9CiAgICAgIF9pc0ZpbGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJpc0ZpbGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIF9zdGF0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAic3RhdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIF93YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndhdGNoIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dhdGNoKHBhdGgsIG9wdGlvbnMpOwogICAgICB9CiAgICAgICR3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCksICgwLCBidWZmZXJfMS5zdHJpbmdUb0ZpbGVCdWZmZXIpKGNvbnRlbnQpKTsKICAgICAgfQogICAgICAkcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBidWZmZXJfMS5maWxlQnVmZmVyVG9TdHJpbmcpKHN1cGVyLl9yZWFkKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICB9CiAgICAgICRsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2xpc3QoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgfQogICAgICAkZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2V4aXN0cygoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0RpcmVjdG9yeSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5UZXN0SG9zdCA9IFRlc3RIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Jlc29sdmVyLmpzCnZhciByZXF1aXJlX3Jlc29sdmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IHZvaWQgMDsKICAgIHZhciBSZXNvbHZlckhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUud3JpdGUodGhpcy5fcmVzb2x2ZShwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlYWQodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZGVsZXRlKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUodGhpcy5fcmVzb2x2ZShmcm9tKSwgdGhpcy5fcmVzb2x2ZSh0bykpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmV4aXN0cyh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRmlsZSh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuc3RhdCh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaCh0aGlzLl9yZXNvbHZlKHBhdGgpLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IFJlc29sdmVySG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9hbGlhcy5qcwp2YXIgcmVxdWlyZV9hbGlhcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBBbGlhc0hvc3QgPSBjbGFzcyBleHRlbmRzIHJlc29sdmVyXzEuUmVzb2x2ZXJIb3N0IHsKICAgICAgX2FsaWFzZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfcmVzb2x2ZShwYXRoKSB7CiAgICAgICAgbGV0IG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwYXRoKTsKICAgICAgICBjb25zdCBzcCA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlbWFpbmluZyA9IFtdOwogICAgICAgIHdoaWxlICghbWF5YmVBbGlhcyAmJiBzcC5sZW5ndGggPiAwKSB7CiAgICAgICAgICBjb25zdCBwID0gKDAsIHBhdGhfMS5qb2luKShwYXRoXzEuTm9ybWFsaXplZFJvb3QsIC4uLnNwKTsKICAgICAgICAgIG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwKTsKICAgICAgICAgIGlmIChtYXliZUFsaWFzKSB7CiAgICAgICAgICAgIG1heWJlQWxpYXMgPSAoMCwgcGF0aF8xLmpvaW4pKG1heWJlQWxpYXMsIC4uLnJlbWFpbmluZyk7CiAgICAgICAgICB9CiAgICAgICAgICByZW1haW5pbmcudW5zaGlmdChzcC5wb3AoKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUFsaWFzIHx8IHBhdGg7CiAgICAgIH0KICAgICAgZ2V0IGFsaWFzZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FsaWFzZXM7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSBBbGlhc0hvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzCnZhciByZXF1aXJlX2NyZWF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2NyZWF0ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlU3luY0hvc3QgPSBjcmVhdGVTeW5jSG9zdDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgZnVuY3Rpb24gd3JhcEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcikgPT4gewogICAgICAgIHN1YnNjcmliZXIubmV4dChhY3Rpb24oKSk7CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNyZWF0ZVN5bmNIb3N0KGhhbmRsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBjbGFzcyB7CiAgICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICAgIHJldHVybiB7IHN5bmNocm9ub3VzOiB0cnVlIH07CiAgICAgICAgfQogICAgICAgIHJlYWQocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5yZWFkKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmxpc3QocGF0aCkpOwogICAgICAgIH0KICAgICAgICBleGlzdHMocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5leGlzdHMocGF0aCkpOwogICAgICAgIH0KICAgICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuaXNGaWxlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnN0YXQocGF0aCkpOwogICAgICAgIH0KICAgICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLndyaXRlKHBhdGgsIGNvbnRlbnQpKTsKICAgICAgICB9CiAgICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuZGVsZXRlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnJlbmFtZShmcm9tLCB0bykpOwogICAgICAgIH0KICAgICAgICB3YXRjaCgpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgfSgpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBFbXB0eSA9IGNsYXNzIHsKICAgICAgY2FwYWJpbGl0aWVzID0gewogICAgICAgIHN5bmNocm9ub3VzOiB0cnVlCiAgICAgIH07CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoW10pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgIH0KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKG51bGwpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRW1wdHkgPSBFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9jb25zdGFudHMuanMKdmFyIHJlcXVpcmVfY29uc3RhbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvY29uc3RhbnRzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFdJTl9TTEFTSCA9ICJcXFxcLyI7CiAgICB2YXIgV0lOX05PX1NMQVNIID0gYFteJHtXSU5fU0xBU0h9XWA7CiAgICB2YXIgRE9UX0xJVEVSQUwgPSAiXFwuIjsKICAgIHZhciBQTFVTX0xJVEVSQUwgPSAiXFwrIjsKICAgIHZhciBRTUFSS19MSVRFUkFMID0gIlxcPyI7CiAgICB2YXIgU0xBU0hfTElURVJBTCA9ICJcXC8iOwogICAgdmFyIE9ORV9DSEFSID0gIig/PS4pIjsKICAgIHZhciBRTUFSSyA9ICJbXi9dIjsKICAgIHZhciBFTkRfQU5DSE9SID0gYCg/OiR7U0xBU0hfTElURVJBTH18JClgOwogICAgdmFyIFNUQVJUX0FOQ0hPUiA9IGAoPzpefCR7U0xBU0hfTElURVJBTH0pYDsKICAgIHZhciBET1RTX1NMQVNIID0gYCR7RE9UX0xJVEVSQUx9ezEsMn0ke0VORF9BTkNIT1J9YDsKICAgIHZhciBOT19ET1QgPSBgKD8hJHtET1RfTElURVJBTH0pYDsKICAgIHZhciBOT19ET1RTID0gYCg/ISR7U1RBUlRfQU5DSE9SfSR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBOT19ET1RfU0xBU0ggPSBgKD8hJHtET1RfTElURVJBTH17MCwxfSR7RU5EX0FOQ0hPUn0pYDsKICAgIHZhciBOT19ET1RTX1NMQVNIID0gYCg/ISR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBRTUFSS19OT19ET1QgPSBgW14uJHtTTEFTSF9MSVRFUkFMfV1gOwogICAgdmFyIFNUQVIgPSBgJHtRTUFSS30qP2A7CiAgICB2YXIgU0VQID0gIi8iOwogICAgdmFyIFBPU0lYX0NIQVJTID0gewogICAgICBET1RfTElURVJBTCwKICAgICAgUExVU19MSVRFUkFMLAogICAgICBRTUFSS19MSVRFUkFMLAogICAgICBTTEFTSF9MSVRFUkFMLAogICAgICBPTkVfQ0hBUiwKICAgICAgUU1BUkssCiAgICAgIEVORF9BTkNIT1IsCiAgICAgIERPVFNfU0xBU0gsCiAgICAgIE5PX0RPVCwKICAgICAgTk9fRE9UUywKICAgICAgTk9fRE9UX1NMQVNILAogICAgICBOT19ET1RTX1NMQVNILAogICAgICBRTUFSS19OT19ET1QsCiAgICAgIFNUQVIsCiAgICAgIFNUQVJUX0FOQ0hPUiwKICAgICAgU0VQCiAgICB9OwogICAgdmFyIFdJTkRPV1NfQ0hBUlMgPSB7CiAgICAgIC4uLlBPU0lYX0NIQVJTLAogICAgICBTTEFTSF9MSVRFUkFMOiBgWyR7V0lOX1NMQVNIfV1gLAogICAgICBRTUFSSzogV0lOX05PX1NMQVNILAogICAgICBTVEFSOiBgJHtXSU5fTk9fU0xBU0h9Kj9gLAogICAgICBET1RTX1NMQVNIOiBgJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpYCwKICAgICAgTk9fRE9UOiBgKD8hJHtET1RfTElURVJBTH0pYCwKICAgICAgTk9fRE9UUzogYCg/ISg/Ol58WyR7V0lOX1NMQVNIfV0pJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIE5PX0RPVF9TTEFTSDogYCg/ISR7RE9UX0xJVEVSQUx9ezAsMX0oPzpbJHtXSU5fU0xBU0h9XXwkKSlgLAogICAgICBOT19ET1RTX1NMQVNIOiBgKD8hJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIFFNQVJLX05PX0RPVDogYFteLiR7V0lOX1NMQVNIfV1gLAogICAgICBTVEFSVF9BTkNIT1I6IGAoPzpefFske1dJTl9TTEFTSH1dKWAsCiAgICAgIEVORF9BTkNIT1I6IGAoPzpbJHtXSU5fU0xBU0h9XXwkKWAsCiAgICAgIFNFUDogIlxcIgogICAgfTsKICAgIHZhciBQT1NJWF9SRUdFWF9TT1VSQ0UgPSB7CiAgICAgIGFsbnVtOiAiYS16QS1aMC05IiwKICAgICAgYWxwaGE6ICJhLXpBLVoiLAogICAgICBhc2NpaTogIlxceDAwLVxceDdGIiwKICAgICAgYmxhbms6ICIgXFx0IiwKICAgICAgY250cmw6ICJcXHgwMC1cXHgxRlxceDdGIiwKICAgICAgZGlnaXQ6ICIwLTkiLAogICAgICBncmFwaDogIlxceDIxLVxceDdFIiwKICAgICAgbG93ZXI6ICJhLXoiLAogICAgICBwcmludDogIlxceDIwLVxceDdFICIsCiAgICAgIHB1bmN0OiAiXFwtIVwiIyQlJicoKVxcKissLi86Ozw9Pj9AW1xcXV5fYHt8fX4iLAogICAgICBzcGFjZTogIiBcXHRcXHJcXG5cXHZcXGYiLAogICAgICB1cHBlcjogIkEtWiIsCiAgICAgIHdvcmQ6ICJBLVphLXowLTlfIiwKICAgICAgeGRpZ2l0OiAiQS1GYS1mMC05IgogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgTUFYX0xFTkdUSDogMTAyNCAqIDY0LAogICAgICBQT1NJWF9SRUdFWF9TT1VSQ0UsCiAgICAgIC8vIHJlZ3VsYXIgZXhwcmVzc2lvbnMKICAgICAgUkVHRVhfQkFDS1NMQVNIOiAvXFwoPyFbKis/XiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX05PTl9TUEVDSUFMX0NIQVJTOiAvXlteQCFbXF0uLCQqKz9ee30oKXxcXC9dKy8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlM6IC9bLSorPy5eJHt9KHwpW1xdXS8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRjogLyhcXD8pKChcVykoXDMqKSkvZywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUw6IC8oWy0qKz8uXiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX1JFTU9WRV9CQUNLU0xBU0g6IC8oPzpcWy4qP1teXFxdXF18XFwoPz0uKSkvZywKICAgICAgLy8gUmVwbGFjZSBnbG9icyB3aXRoIGVxdWl2YWxlbnQgcGF0dGVybnMgdG8gcmVkdWNlIHBhcnNpbmcgdGltZS4KICAgICAgUkVQTEFDRU1FTlRTOiB7CiAgICAgICAgIioqKiI6ICIqIiwKICAgICAgICAiKiovKioiOiAiKioiLAogICAgICAgICIqKi8qKi8qKiI6ICIqKiIKICAgICAgfSwKICAgICAgLy8gRGlnaXRzCiAgICAgIENIQVJfMDogNDgsCiAgICAgIC8qIDAgKi8KICAgICAgQ0hBUl85OiA1NywKICAgICAgLyogOSAqLwogICAgICAvLyBBbHBoYWJldCBjaGFycy4KICAgICAgQ0hBUl9VUFBFUkNBU0VfQTogNjUsCiAgICAgIC8qIEEgKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfQTogOTcsCiAgICAgIC8qIGEgKi8KICAgICAgQ0hBUl9VUFBFUkNBU0VfWjogOTAsCiAgICAgIC8qIFogKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfWjogMTIyLAogICAgICAvKiB6ICovCiAgICAgIENIQVJfTEVGVF9QQVJFTlRIRVNFUzogNDAsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzogNDEsCiAgICAgIC8qICkgKi8KICAgICAgQ0hBUl9BU1RFUklTSzogNDIsCiAgICAgIC8qICogKi8KICAgICAgLy8gTm9uLWFscGhhYmV0aWMgY2hhcnMuCiAgICAgIENIQVJfQU1QRVJTQU5EOiAzOCwKICAgICAgLyogJiAqLwogICAgICBDSEFSX0FUOiA2NCwKICAgICAgLyogQCAqLwogICAgICBDSEFSX0JBQ0tXQVJEX1NMQVNIOiA5MiwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NBUlJJQUdFX1JFVFVSTjogMTMsCiAgICAgIC8qIFxyICovCiAgICAgIENIQVJfQ0lSQ1VNRkxFWF9BQ0NFTlQ6IDk0LAogICAgICAvKiBeICovCiAgICAgIENIQVJfQ09MT046IDU4LAogICAgICAvKiA6ICovCiAgICAgIENIQVJfQ09NTUE6IDQ0LAogICAgICAvKiAsICovCiAgICAgIENIQVJfRE9UOiA0NiwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0RPVUJMRV9RVU9URTogMzQsCiAgICAgIC8qICIgKi8KICAgICAgQ0hBUl9FUVVBTDogNjEsCiAgICAgIC8qID0gKi8KICAgICAgQ0hBUl9FWENMQU1BVElPTl9NQVJLOiAzMywKICAgICAgLyogISAqLwogICAgICBDSEFSX0ZPUk1fRkVFRDogMTIsCiAgICAgIC8qIFxmICovCiAgICAgIENIQVJfRk9SV0FSRF9TTEFTSDogNDcsCiAgICAgIC8qIC8gKi8KICAgICAgQ0hBUl9HUkFWRV9BQ0NFTlQ6IDk2LAogICAgICAvKiBgICovCiAgICAgIENIQVJfSEFTSDogMzUsCiAgICAgIC8qICMgKi8KICAgICAgQ0hBUl9IWVBIRU5fTUlOVVM6IDQ1LAogICAgICAvKiAtICovCiAgICAgIENIQVJfTEVGVF9BTkdMRV9CUkFDS0VUOiA2MCwKICAgICAgLyogPCAqLwogICAgICBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6IDEyMywKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQ6IDkxLAogICAgICAvKiBbICovCiAgICAgIENIQVJfTElORV9GRUVEOiAxMCwKICAgICAgLyogXG4gKi8KICAgICAgQ0hBUl9OT19CUkVBS19TUEFDRTogMTYwLAogICAgICAvKiBcdTAwQTAgKi8KICAgICAgQ0hBUl9QRVJDRU5UOiAzNywKICAgICAgLyogJSAqLwogICAgICBDSEFSX1BMVVM6IDQzLAogICAgICAvKiArICovCiAgICAgIENIQVJfUVVFU1RJT05fTUFSSzogNjMsCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9BTkdMRV9CUkFDS0VUOiA2MiwKICAgICAgLyogPiAqLwogICAgICBDSEFSX1JJR0hUX0NVUkxZX0JSQUNFOiAxMjUsCiAgICAgIC8qIH0gKi8KICAgICAgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDogOTMsCiAgICAgIC8qIF0gKi8KICAgICAgQ0hBUl9TRU1JQ09MT046IDU5LAogICAgICAvKiA7ICovCiAgICAgIENIQVJfU0lOR0xFX1FVT1RFOiAzOSwKICAgICAgLyogJyAqLwogICAgICBDSEFSX1NQQUNFOiAzMiwKICAgICAgLyogICAqLwogICAgICBDSEFSX1RBQjogOSwKICAgICAgLyogXHQgKi8KICAgICAgQ0hBUl9VTkRFUlNDT1JFOiA5NSwKICAgICAgLyogXyAqLwogICAgICBDSEFSX1ZFUlRJQ0FMX0xJTkU6IDEyNCwKICAgICAgLyogfCAqLwogICAgICBDSEFSX1pFUk9fV0lEVEhfTk9CUkVBS19TUEFDRTogNjUyNzksCiAgICAgIC8qIFx1RkVGRiAqLwogICAgICAvKioKICAgICAgICogQ3JlYXRlIEVYVEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGV4dGdsb2JDaGFycyhjaGFycykgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICAiISI6IHsgdHlwZTogIm5lZ2F0ZSIsIG9wZW46ICIoPzooPyEoPzoiLCBjbG9zZTogYCkpJHtjaGFycy5TVEFSfSlgIH0sCiAgICAgICAgICAiPyI6IHsgdHlwZTogInFtYXJrIiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKT8iIH0sCiAgICAgICAgICAiKyI6IHsgdHlwZTogInBsdXMiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpKyIgfSwKICAgICAgICAgICIqIjogeyB0eXBlOiAic3RhciIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikqIiB9LAogICAgICAgICAgIkAiOiB7IHR5cGU6ICJhdCIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikiIH0KICAgICAgICB9OwogICAgICB9LAogICAgICAvKioKICAgICAgICogQ3JlYXRlIEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGdsb2JDaGFycyh3aW4zMikgewogICAgICAgIHJldHVybiB3aW4zMiA9PT0gdHJ1ZSA/IFdJTkRPV1NfQ0hBUlMgOiBQT1NJWF9DSEFSUzsKICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciB7CiAgICAgIFJFR0VYX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSUywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUwKICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgZXhwb3J0czIuaXNPYmplY3QgPSAodmFsKSA9PiB2YWwgIT09IG51bGwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIGV4cG9ydHMyLmhhc1JlZ2V4Q2hhcnMgPSAoc3RyMikgPT4gUkVHRVhfU1BFQ0lBTF9DSEFSUy50ZXN0KHN0cjIpOwogICAgZXhwb3J0czIuaXNSZWdleENoYXIgPSAoc3RyMikgPT4gc3RyMi5sZW5ndGggPT09IDEgJiYgZXhwb3J0czIuaGFzUmVnZXhDaGFycyhzdHIyKTsKICAgIGV4cG9ydHMyLmVzY2FwZVJlZ2V4ID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTCwgIlxcJDEiKTsKICAgIGV4cG9ydHMyLnRvUG9zaXhTbGFzaGVzID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9CQUNLU0xBU0gsICIvIik7CiAgICBleHBvcnRzMi5pc1dpbmRvd3MgPSAoKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgbmF2aWdhdG9yICE9PSAidW5kZWZpbmVkIiAmJiBuYXZpZ2F0b3IucGxhdGZvcm0pIHsKICAgICAgICBjb25zdCBwbGF0Zm9ybSA9IG5hdmlnYXRvci5wbGF0Zm9ybS50b0xvd2VyQ2FzZSgpOwogICAgICAgIHJldHVybiBwbGF0Zm9ybSA9PT0gIndpbjMyIiB8fCBwbGF0Zm9ybSA9PT0gIndpbmRvd3MiOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcHJvY2VzcyAhPT0gInVuZGVmaW5lZCIgJiYgcHJvY2Vzcy5wbGF0Zm9ybSkgewogICAgICAgIHJldHVybiBwcm9jZXNzLnBsYXRmb3JtID09PSAid2luMzIiOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH07CiAgICBleHBvcnRzMi5yZW1vdmVCYWNrc2xhc2hlcyA9IChzdHIyKSA9PiB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwgKG1hdGNoKSA9PiB7CiAgICAgICAgcmV0dXJuIG1hdGNoID09PSAiXFwiID8gIiIgOiBtYXRjaDsKICAgICAgfSk7CiAgICB9OwogICAgZXhwb3J0czIuZXNjYXBlTGFzdCA9IChpbnB1dCwgY2hhciwgbGFzdElkeCkgPT4gewogICAgICBjb25zdCBpZHggPSBpbnB1dC5sYXN0SW5kZXhPZihjaGFyLCBsYXN0SWR4KTsKICAgICAgaWYgKGlkeCA9PT0gLTEpIHJldHVybiBpbnB1dDsKICAgICAgaWYgKGlucHV0W2lkeCAtIDFdID09PSAiXFwiKSByZXR1cm4gZXhwb3J0czIuZXNjYXBlTGFzdChpbnB1dCwgY2hhciwgaWR4IC0gMSk7CiAgICAgIHJldHVybiBgJHtpbnB1dC5zbGljZSgwLCBpZHgpfVxcJHtpbnB1dC5zbGljZShpZHgpfWA7CiAgICB9OwogICAgZXhwb3J0czIucmVtb3ZlUHJlZml4ID0gKGlucHV0LCBzdGF0ZSA9IHt9KSA9PiB7CiAgICAgIGxldCBvdXRwdXQgPSBpbnB1dDsKICAgICAgaWYgKG91dHB1dC5zdGFydHNXaXRoKCIuLyIpKSB7CiAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNsaWNlKDIpOwogICAgICAgIHN0YXRlLnByZWZpeCA9ICIuLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIG91dHB1dDsKICAgIH07CiAgICBleHBvcnRzMi53cmFwT3V0cHV0ID0gKGlucHV0LCBzdGF0ZSA9IHt9LCBvcHRpb25zID0ge30pID0+IHsKICAgICAgY29uc3QgcHJlcGVuZCA9IG9wdGlvbnMuY29udGFpbnMgPyAiIiA6ICJeIjsKICAgICAgY29uc3QgYXBwZW5kID0gb3B0aW9ucy5jb250YWlucyA/ICIiIDogIiQiOwogICAgICBsZXQgb3V0cHV0ID0gYCR7cHJlcGVuZH0oPzoke2lucHV0fSkke2FwcGVuZH1gOwogICAgICBpZiAoc3RhdGUubmVnYXRlZCA9PT0gdHJ1ZSkgewogICAgICAgIG91dHB1dCA9IGAoPzpeKD8hJHtvdXRwdXR9KS4qJClgOwogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9OwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSAocGF0aCwgeyB3aW5kb3dzIH0gPSB7fSkgPT4gewogICAgICBjb25zdCBzZWdzID0gcGF0aC5zcGxpdCh3aW5kb3dzID8gL1tcXC9dLyA6ICIvIik7CiAgICAgIGNvbnN0IGxhc3QgPSBzZWdzW3NlZ3MubGVuZ3RoIC0gMV07CiAgICAgIGlmIChsYXN0ID09PSAiIikgewogICAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMl07CiAgICAgIH0KICAgICAgcmV0dXJuIGxhc3Q7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9zY2FuLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIENIQVJfQVNURVJJU0s6IENIQVJfQVNURVJJU0syLAogICAgICAvKiAqICovCiAgICAgIENIQVJfQVQsCiAgICAgIC8qIEAgKi8KICAgICAgQ0hBUl9CQUNLV0FSRF9TTEFTSCwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NPTU1BOiBDSEFSX0NPTU1BMiwKICAgICAgLyogLCAqLwogICAgICBDSEFSX0RPVCwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0VYQ0xBTUFUSU9OX01BUkssCiAgICAgIC8qICEgKi8KICAgICAgQ0hBUl9GT1JXQVJEX1NMQVNILAogICAgICAvKiAvICovCiAgICAgIENIQVJfTEVGVF9DVVJMWV9CUkFDRSwKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfUEFSRU5USEVTRVMsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9MRUZUX1NRVUFSRV9CUkFDS0VUOiBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyLAogICAgICAvKiBbICovCiAgICAgIENIQVJfUExVUywKICAgICAgLyogKyAqLwogICAgICBDSEFSX1FVRVNUSU9OX01BUkssCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRSwKICAgICAgLyogfSAqLwogICAgICBDSEFSX1JJR0hUX1BBUkVOVEhFU0VTLAogICAgICAvKiApICovCiAgICAgIENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQ6IENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQyCiAgICAgIC8qIF0gKi8KICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIGlzUGF0aFNlcGFyYXRvciA9IChjb2RlKSA9PiB7CiAgICAgIHJldHVybiBjb2RlID09PSBDSEFSX0ZPUldBUkRfU0xBU0ggfHwgY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSDsKICAgIH07CiAgICB2YXIgZGVwdGggPSAodG9rZW4pID0+IHsKICAgICAgaWYgKHRva2VuLmlzUHJlZml4ICE9PSB0cnVlKSB7CiAgICAgICAgdG9rZW4uZGVwdGggPSB0b2tlbi5pc0dsb2JzdGFyID8gSW5maW5pdHkgOiAxOwogICAgICB9CiAgICB9OwogICAgdmFyIHNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGxlbmd0aCA9IGlucHV0Lmxlbmd0aCAtIDE7CiAgICAgIGNvbnN0IHNjYW5Ub0VuZCA9IG9wdHMucGFydHMgPT09IHRydWUgfHwgb3B0cy5zY2FuVG9FbmQgPT09IHRydWU7CiAgICAgIGNvbnN0IHNsYXNoZXMgPSBbXTsKICAgICAgY29uc3QgdG9rZW5zID0gW107CiAgICAgIGNvbnN0IHBhcnRzID0gW107CiAgICAgIGxldCBzdHIyID0gaW5wdXQ7CiAgICAgIGxldCBpbmRleCA9IC0xOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgbGFzdEluZGV4ID0gMDsKICAgICAgbGV0IGlzQnJhY2UgPSBmYWxzZTsKICAgICAgbGV0IGlzQnJhY2tldCA9IGZhbHNlOwogICAgICBsZXQgaXNHbG9iID0gZmFsc2U7CiAgICAgIGxldCBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgbGV0IGlzR2xvYnN0YXIgPSBmYWxzZTsKICAgICAgbGV0IGJyYWNlRXNjYXBlZCA9IGZhbHNlOwogICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWQgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWRFeHRnbG9iID0gZmFsc2U7CiAgICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlOwogICAgICBsZXQgYnJhY2VzID0gMDsKICAgICAgbGV0IHByZXY7CiAgICAgIGxldCBjb2RlOwogICAgICBsZXQgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgY29uc3QgZW9zID0gKCkgPT4gaW5kZXggPj0gbGVuZ3RoOwogICAgICBjb25zdCBwZWVrID0gKCkgPT4gc3RyMi5jaGFyQ29kZUF0KGluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGFkdmFuY2UgPSAoKSA9PiB7CiAgICAgICAgcHJldiA9IGNvZGU7CiAgICAgICAgcmV0dXJuIHN0cjIuY2hhckNvZGVBdCgrK2luZGV4KTsKICAgICAgfTsKICAgICAgd2hpbGUgKGluZGV4IDwgbGVuZ3RoKSB7CiAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICBsZXQgbmV4dDsKICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICBjb2RlID0gYWR2YW5jZSgpOwogICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICBicmFjZUVzY2FwZWQgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChicmFjZUVzY2FwZWQgPT09IHRydWUgfHwgY29kZSA9PT0gQ0hBUl9MRUZUX0NVUkxZX0JSQUNFKSB7CiAgICAgICAgICBicmFjZXMrKzsKICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICAgIGJyYWNlcysrOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChicmFjZUVzY2FwZWQgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9ET1QgJiYgKGNvZGUgPSBhZHZhbmNlKCkpID09PSBDSEFSX0RPVCkgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGJyYWNlRXNjYXBlZCAhPT0gdHJ1ZSAmJiBjb2RlID09PSBDSEFSX0NPTU1BMikgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgICBicmFjZXMtLTsKICAgICAgICAgICAgICBpZiAoYnJhY2VzID09PSAwKSB7CiAgICAgICAgICAgICAgICBicmFjZUVzY2FwZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9GT1JXQVJEX1NMQVNIKSB7CiAgICAgICAgICBzbGFzaGVzLnB1c2goaW5kZXgpOwogICAgICAgICAgdG9rZW5zLnB1c2godG9rZW4pOwogICAgICAgICAgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgICAgIGlmIChmaW5pc2hlZCA9PT0gdHJ1ZSkgY29udGludWU7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9ET1QgJiYgaW5kZXggPT09IHN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGFydCArPSAyOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4ICsgMTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub2V4dCAhPT0gdHJ1ZSkgewogICAgICAgICAgY29uc3QgaXNFeHRnbG9iQ2hhciA9IGNvZGUgPT09IENIQVJfUExVUyB8fCBjb2RlID09PSBDSEFSX0FUIHx8IGNvZGUgPT09IENIQVJfQVNURVJJU0syIHx8IGNvZGUgPT09IENIQVJfUVVFU1RJT05fTUFSSyB8fCBjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUks7CiAgICAgICAgICBpZiAoaXNFeHRnbG9iQ2hhciA9PT0gdHJ1ZSAmJiBwZWVrKCkgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICBpc0V4dGdsb2IgPSB0b2tlbi5pc0V4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUksgJiYgaW5kZXggPT09IHN0YXJ0KSB7CiAgICAgICAgICAgICAgbmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKGNvZGUgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQVNURVJJU0syKSB7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9BU1RFUklTSzIpIGlzR2xvYnN0YXIgPSB0b2tlbi5pc0dsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX1FVRVNUSU9OX01BUkspIHsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyKSB7CiAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKG5leHQgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX0JBQ0tXQVJEX1NMQVNIKSB7CiAgICAgICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUMikgewogICAgICAgICAgICAgIGlzQnJhY2tldCA9IHRva2VuLmlzQnJhY2tldCA9IHRydWU7CiAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLICYmIGluZGV4ID09PSBzdGFydCkgewogICAgICAgICAgbmVnYXRlZCA9IHRva2VuLm5lZ2F0ZWQgPSB0cnVlOwogICAgICAgICAgc3RhcnQrKzsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub3BhcmVuICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChjb2RlID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChpc0dsb2IgPT09IHRydWUpIHsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMubm9leHQgPT09IHRydWUpIHsKICAgICAgICBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgICBpc0dsb2IgPSBmYWxzZTsKICAgICAgfQogICAgICBsZXQgYmFzZSA9IHN0cjI7CiAgICAgIGxldCBwcmVmaXggPSAiIjsKICAgICAgbGV0IGdsb2IgPSAiIjsKICAgICAgaWYgKHN0YXJ0ID4gMCkgewogICAgICAgIHByZWZpeCA9IHN0cjIuc2xpY2UoMCwgc3RhcnQpOwogICAgICAgIHN0cjIgPSBzdHIyLnNsaWNlKHN0YXJ0KTsKICAgICAgICBsYXN0SW5kZXggLT0gc3RhcnQ7CiAgICAgIH0KICAgICAgaWYgKGJhc2UgJiYgaXNHbG9iID09PSB0cnVlICYmIGxhc3RJbmRleCA+IDApIHsKICAgICAgICBiYXNlID0gc3RyMi5zbGljZSgwLCBsYXN0SW5kZXgpOwogICAgICAgIGdsb2IgPSBzdHIyLnNsaWNlKGxhc3RJbmRleCk7CiAgICAgIH0gZWxzZSBpZiAoaXNHbG9iID09PSB0cnVlKSB7CiAgICAgICAgYmFzZSA9ICIiOwogICAgICAgIGdsb2IgPSBzdHIyOwogICAgICB9IGVsc2UgewogICAgICAgIGJhc2UgPSBzdHIyOwogICAgICB9CiAgICAgIGlmIChiYXNlICYmIGJhc2UgIT09ICIiICYmIGJhc2UgIT09ICIvIiAmJiBiYXNlICE9PSBzdHIyKSB7CiAgICAgICAgaWYgKGlzUGF0aFNlcGFyYXRvcihiYXNlLmNoYXJDb2RlQXQoYmFzZS5sZW5ndGggLSAxKSkpIHsKICAgICAgICAgIGJhc2UgPSBiYXNlLnNsaWNlKDAsIC0xKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMudW5lc2NhcGUgPT09IHRydWUpIHsKICAgICAgICBpZiAoZ2xvYikgZ2xvYiA9IHV0aWxzLnJlbW92ZUJhY2tzbGFzaGVzKGdsb2IpOwogICAgICAgIGlmIChiYXNlICYmIGJhY2tzbGFzaGVzID09PSB0cnVlKSB7CiAgICAgICAgICBiYXNlID0gdXRpbHMucmVtb3ZlQmFja3NsYXNoZXMoYmFzZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IHN0YXRlID0gewogICAgICAgIHByZWZpeCwKICAgICAgICBpbnB1dCwKICAgICAgICBzdGFydCwKICAgICAgICBiYXNlLAogICAgICAgIGdsb2IsCiAgICAgICAgaXNCcmFjZSwKICAgICAgICBpc0JyYWNrZXQsCiAgICAgICAgaXNHbG9iLAogICAgICAgIGlzRXh0Z2xvYiwKICAgICAgICBpc0dsb2JzdGFyLAogICAgICAgIG5lZ2F0ZWQsCiAgICAgICAgbmVnYXRlZEV4dGdsb2IKICAgICAgfTsKICAgICAgaWYgKG9wdHMudG9rZW5zID09PSB0cnVlKSB7CiAgICAgICAgc3RhdGUubWF4RGVwdGggPSAwOwogICAgICAgIGlmICghaXNQYXRoU2VwYXJhdG9yKGNvZGUpKSB7CiAgICAgICAgICB0b2tlbnMucHVzaCh0b2tlbik7CiAgICAgICAgfQogICAgICAgIHN0YXRlLnRva2VucyA9IHRva2VuczsKICAgICAgfQogICAgICBpZiAob3B0cy5wYXJ0cyA9PT0gdHJ1ZSB8fCBvcHRzLnRva2VucyA9PT0gdHJ1ZSkgewogICAgICAgIGxldCBwcmV2SW5kZXg7CiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgc2xhc2hlcy5sZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICBjb25zdCBuID0gcHJldkluZGV4ID8gcHJldkluZGV4ICsgMSA6IHN0YXJ0OwogICAgICAgICAgY29uc3QgaSA9IHNsYXNoZXNbaWR4XTsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQuc2xpY2UobiwgaSk7CiAgICAgICAgICBpZiAob3B0cy50b2tlbnMpIHsKICAgICAgICAgICAgaWYgKGlkeCA9PT0gMCAmJiBzdGFydCAhPT0gMCkgewogICAgICAgICAgICAgIHRva2Vuc1tpZHhdLmlzUHJlZml4ID0gdHJ1ZTsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHByZWZpeDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlcHRoKHRva2Vuc1tpZHhdKTsKICAgICAgICAgICAgc3RhdGUubWF4RGVwdGggKz0gdG9rZW5zW2lkeF0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaWR4ICE9PSAwIHx8IHZhbHVlICE9PSAiIikgewogICAgICAgICAgICBwYXJ0cy5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHByZXZJbmRleCA9IGk7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2SW5kZXggJiYgcHJldkluZGV4ICsgMSA8IGlucHV0Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC5zbGljZShwcmV2SW5kZXggKyAxKTsKICAgICAgICAgIHBhcnRzLnB1c2godmFsdWUpOwogICAgICAgICAgaWYgKG9wdHMudG9rZW5zKSB7CiAgICAgICAgICAgIHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0udmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgZGVwdGgodG9rZW5zW3Rva2Vucy5sZW5ndGggLSAxXSk7CiAgICAgICAgICAgIHN0YXRlLm1heERlcHRoICs9IHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnNsYXNoZXMgPSBzbGFzaGVzOwogICAgICAgIHN0YXRlLnBhcnRzID0gcGFydHM7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0YXRlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvcGFyc2UuanMKdmFyIHJlcXVpcmVfcGFyc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9wYXJzZS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBjb25zdGFudHMgPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIE1BWF9MRU5HVEgsCiAgICAgIFBPU0lYX1JFR0VYX1NPVVJDRSwKICAgICAgUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlMsCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRiwKICAgICAgUkVQTEFDRU1FTlRTCiAgICB9ID0gY29uc3RhbnRzOwogICAgdmFyIGV4cGFuZFJhbmdlID0gKGFyZ3MsIG9wdGlvbnMpID0+IHsKICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLmV4cGFuZFJhbmdlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZXhwYW5kUmFuZ2UoLi4uYXJncywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXJncy5zb3J0KCk7CiAgICAgIGNvbnN0IHZhbHVlID0gYFske2FyZ3Muam9pbigiLSIpfV1gOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAodmFsdWUpOwogICAgICB9IGNhdGNoIChleCkgewogICAgICAgIHJldHVybiBhcmdzLm1hcCgodikgPT4gdXRpbHMuZXNjYXBlUmVnZXgodikpLmpvaW4oIi4uIik7CiAgICAgIH0KICAgICAgcmV0dXJuIHZhbHVlOwogICAgfTsKICAgIHZhciBzeW50YXhFcnJvciA9ICh0eXBlMiwgY2hhcikgPT4gewogICAgICByZXR1cm4gYE1pc3NpbmcgJHt0eXBlMn06ICIke2NoYXJ9IiAtIHVzZSAiXFxcXCR7Y2hhcn0iIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2A7CiAgICB9OwogICAgdmFyIHBhcnNlID0gKGlucHV0LCBvcHRpb25zKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IG9wdHMgPSB7IC4uLm9wdGlvbnMgfTsKICAgICAgY29uc3QgbWF4ID0gdHlwZW9mIG9wdHMubWF4TGVuZ3RoID09PSAibnVtYmVyIiA/IE1hdGgubWluKE1BWF9MRU5HVEgsIG9wdHMubWF4TGVuZ3RoKSA6IE1BWF9MRU5HVEg7CiAgICAgIGxldCBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGlmIChsZW4gPiBtYXgpIHsKICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsZW59LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7bWF4fWApOwogICAgICB9CiAgICAgIGNvbnN0IGJvcyA9IHsgdHlwZTogImJvcyIsIHZhbHVlOiAiIiwgb3V0cHV0OiBvcHRzLnByZXBlbmQgfHwgIiIgfTsKICAgICAgY29uc3QgdG9rZW5zID0gW2Jvc107CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IFBMQVRGT1JNX0NIQVJTID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBFWFRHTE9CX0NIQVJTID0gY29uc3RhbnRzLmV4dGdsb2JDaGFycyhQTEFURk9STV9DSEFSUyk7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBQTFVTX0xJVEVSQUwsCiAgICAgICAgU0xBU0hfTElURVJBTCwKICAgICAgICBPTkVfQ0hBUiwKICAgICAgICBET1RTX1NMQVNILAogICAgICAgIE5PX0RPVCwKICAgICAgICBOT19ET1RfU0xBU0gsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBRTUFSSywKICAgICAgICBRTUFSS19OT19ET1QsCiAgICAgICAgU1RBUiwKICAgICAgICBTVEFSVF9BTkNIT1IKICAgICAgfSA9IFBMQVRGT1JNX0NIQVJTOwogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIHJldHVybiBgKCR7Y2FwdHVyZX0oPzooPyEke1NUQVJUX0FOQ0hPUn0ke29wdHMyLmRvdCA/IERPVFNfU0xBU0ggOiBET1RfTElURVJBTH0pLikqPylgOwogICAgICB9OwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gIiIgOiBOT19ET1Q7CiAgICAgIGNvbnN0IHFtYXJrTm9Eb3QgPSBvcHRzLmRvdCA/IFFNQVJLIDogUU1BUktfTk9fRE9UOwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/IGdsb2JzdGFyKG9wdHMpIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBpZiAodHlwZW9mIG9wdHMubm9leHQgPT09ICJib29sZWFuIikgewogICAgICAgIG9wdHMubm9leHRnbG9iID0gb3B0cy5ub2V4dDsKICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBpbnB1dCwKICAgICAgICBpbmRleDogLTEsCiAgICAgICAgc3RhcnQ6IDAsCiAgICAgICAgZG90OiBvcHRzLmRvdCA9PT0gdHJ1ZSwKICAgICAgICBjb25zdW1lZDogIiIsCiAgICAgICAgb3V0cHV0OiAiIiwKICAgICAgICBwcmVmaXg6ICIiLAogICAgICAgIGJhY2t0cmFjazogZmFsc2UsCiAgICAgICAgbmVnYXRlZDogZmFsc2UsCiAgICAgICAgYnJhY2tldHM6IDAsCiAgICAgICAgYnJhY2VzOiAwLAogICAgICAgIHBhcmVuczogMCwKICAgICAgICBxdW90ZXM6IDAsCiAgICAgICAgZ2xvYnN0YXI6IGZhbHNlLAogICAgICAgIHRva2VucwogICAgICB9OwogICAgICBpbnB1dCA9IHV0aWxzLnJlbW92ZVByZWZpeChpbnB1dCwgc3RhdGUpOwogICAgICBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGNvbnN0IGV4dGdsb2JzID0gW107CiAgICAgIGNvbnN0IGJyYWNlcyA9IFtdOwogICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICBsZXQgcHJldiA9IGJvczsKICAgICAgbGV0IHZhbHVlOwogICAgICBjb25zdCBlb3MgPSAoKSA9PiBzdGF0ZS5pbmRleCA9PT0gbGVuIC0gMTsKICAgICAgY29uc3QgcGVlayA9IHN0YXRlLnBlZWsgPSAobiA9IDEpID0+IGlucHV0W3N0YXRlLmluZGV4ICsgbl07CiAgICAgIGNvbnN0IGFkdmFuY2UgPSBzdGF0ZS5hZHZhbmNlID0gKCkgPT4gaW5wdXRbKytzdGF0ZS5pbmRleF0gfHwgIiI7CiAgICAgIGNvbnN0IHJlbWFpbmluZyA9ICgpID0+IGlucHV0LnNsaWNlKHN0YXRlLmluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGNvbnN1bWUgPSAodmFsdWUyID0gIiIsIG51bSA9IDApID0+IHsKICAgICAgICBzdGF0ZS5jb25zdW1lZCArPSB2YWx1ZTI7CiAgICAgICAgc3RhdGUuaW5kZXggKz0gbnVtOwogICAgICB9OwogICAgICBjb25zdCBhcHBlbmQgPSAodG9rZW4pID0+IHsKICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdG9rZW4ub3V0cHV0ICE9IG51bGwgPyB0b2tlbi5vdXRwdXQgOiB0b2tlbi52YWx1ZTsKICAgICAgICBjb25zdW1lKHRva2VuLnZhbHVlKTsKICAgICAgfTsKICAgICAgY29uc3QgbmVnYXRlID0gKCkgPT4gewogICAgICAgIGxldCBjb3VudCA9IDE7CiAgICAgICAgd2hpbGUgKHBlZWsoKSA9PT0gIiEiICYmIChwZWVrKDIpICE9PSAiKCIgfHwgcGVlaygzKSA9PT0gIj8iKSkgewogICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIGlmIChjb3VudCAlIDIgPT09IDApIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUubmVnYXRlZCA9IHRydWU7CiAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfTsKICAgICAgY29uc3QgaW5jcmVtZW50ID0gKHR5cGUyKSA9PiB7CiAgICAgICAgc3RhdGVbdHlwZTJdKys7CiAgICAgICAgc3RhY2sucHVzaCh0eXBlMik7CiAgICAgIH07CiAgICAgIGNvbnN0IGRlY3JlbWVudCA9ICh0eXBlMikgPT4gewogICAgICAgIHN0YXRlW3R5cGUyXS0tOwogICAgICAgIHN0YWNrLnBvcCgpOwogICAgICB9OwogICAgICBjb25zdCBwdXNoID0gKHRvaykgPT4gewogICAgICAgIGlmIChwcmV2LnR5cGUgPT09ICJnbG9ic3RhciIpIHsKICAgICAgICAgIGNvbnN0IGlzQnJhY2UgPSBzdGF0ZS5icmFjZXMgPiAwICYmICh0b2sudHlwZSA9PT0gImNvbW1hIiB8fCB0b2sudHlwZSA9PT0gImJyYWNlIik7CiAgICAgICAgICBjb25zdCBpc0V4dGdsb2IgPSB0b2suZXh0Z2xvYiA9PT0gdHJ1ZSB8fCBleHRnbG9icy5sZW5ndGggJiYgKHRvay50eXBlID09PSAicGlwZSIgfHwgdG9rLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKHRvay50eXBlICE9PSAic2xhc2giICYmIHRvay50eXBlICE9PSAicGFyZW4iICYmICFpc0JyYWNlICYmICFpc0V4dGdsb2IpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICAgIHByZXYudmFsdWUgPSAiKiI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZXh0Z2xvYnMubGVuZ3RoICYmIHRvay50eXBlICE9PSAicGFyZW4iKSB7CiAgICAgICAgICBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXS5pbm5lciArPSB0b2sudmFsdWU7CiAgICAgICAgfQogICAgICAgIGlmICh0b2sudmFsdWUgfHwgdG9rLm91dHB1dCkgYXBwZW5kKHRvayk7CiAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAidGV4dCIgJiYgdG9rLnR5cGUgPT09ICJ0ZXh0IikgewogICAgICAgICAgcHJldi5vdXRwdXQgPSAocHJldi5vdXRwdXQgfHwgcHJldi52YWx1ZSkgKyB0b2sudmFsdWU7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHRvay52YWx1ZTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdG9rLnByZXYgPSBwcmV2OwogICAgICAgIHRva2Vucy5wdXNoKHRvayk7CiAgICAgICAgcHJldiA9IHRvazsKICAgICAgfTsKICAgICAgY29uc3QgZXh0Z2xvYk9wZW4gPSAodHlwZTIsIHZhbHVlMikgPT4gewogICAgICAgIGNvbnN0IHRva2VuID0geyAuLi5FWFRHTE9CX0NIQVJTW3ZhbHVlMl0sIGNvbmRpdGlvbnM6IDEsIGlubmVyOiAiIiB9OwogICAgICAgIHRva2VuLnByZXYgPSBwcmV2OwogICAgICAgIHRva2VuLnBhcmVucyA9IHN0YXRlLnBhcmVuczsKICAgICAgICB0b2tlbi5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQ7CiAgICAgICAgY29uc3Qgb3V0cHV0ID0gKG9wdHMuY2FwdHVyZSA/ICIoIiA6ICIiKSArIHRva2VuLm9wZW47CiAgICAgICAgaW5jcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICBwdXNoKHsgdHlwZTogdHlwZTIsIHZhbHVlOiB2YWx1ZTIsIG91dHB1dDogc3RhdGUub3V0cHV0ID8gIiIgOiBPTkVfQ0hBUiB9KTsKICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWU6IGFkdmFuY2UoKSwgb3V0cHV0IH0pOwogICAgICAgIGV4dGdsb2JzLnB1c2godG9rZW4pOwogICAgICB9OwogICAgICBjb25zdCBleHRnbG9iQ2xvc2UgPSAodG9rZW4pID0+IHsKICAgICAgICBsZXQgb3V0cHV0ID0gdG9rZW4uY2xvc2UgKyAob3B0cy5jYXB0dXJlID8gIikiIDogIiIpOwogICAgICAgIGxldCByZXN0OwogICAgICAgIGlmICh0b2tlbi50eXBlID09PSAibmVnYXRlIikgewogICAgICAgICAgbGV0IGV4dGdsb2JTdGFyID0gc3RhcjsKICAgICAgICAgIGlmICh0b2tlbi5pbm5lciAmJiB0b2tlbi5pbm5lci5sZW5ndGggPiAxICYmIHRva2VuLmlubmVyLmluY2x1ZGVzKCIvIikpIHsKICAgICAgICAgICAgZXh0Z2xvYlN0YXIgPSBnbG9ic3RhcihvcHRzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChleHRnbG9iU3RhciAhPT0gc3RhciB8fCBlb3MoKSB8fCAvXlwpKyQvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgIG91dHB1dCA9IHRva2VuLmNsb3NlID0gYCkkKSkke2V4dGdsb2JTdGFyfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9rZW4uaW5uZXIuaW5jbHVkZXMoIioiKSAmJiAocmVzdCA9IHJlbWFpbmluZygpKSAmJiAvXlwuW15cXC8uXSskLy50ZXN0KHJlc3QpKSB7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBwYXJzZShyZXN0LCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSkub3V0cHV0OwogICAgICAgICAgICBvdXRwdXQgPSB0b2tlbi5jbG9zZSA9IGApJHtleHByZXNzaW9ufSkke2V4dGdsb2JTdGFyfSlgOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHRva2VuLnByZXYudHlwZSA9PT0gImJvcyIpIHsKICAgICAgICAgICAgc3RhdGUubmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9OwogICAgICBpZiAob3B0cy5mYXN0cGF0aHMgIT09IGZhbHNlICYmICEvKF5bKiFdfFsvKClbXF17fSJdKS8udGVzdChpbnB1dCkpIHsKICAgICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgICBsZXQgb3V0cHV0ID0gaW5wdXQucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUYsIChtLCBlc2MsIGNoYXJzLCBmaXJzdCwgcmVzdCwgaW5kZXgpID0+IHsKICAgICAgICAgIGlmIChmaXJzdCA9PT0gIlxcIikgewogICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgIHJldHVybiBtOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZpcnN0ID09PSAiPyIpIHsKICAgICAgICAgICAgaWYgKGVzYykgewogICAgICAgICAgICAgIHJldHVybiBlc2MgKyBmaXJzdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHsKICAgICAgICAgICAgICByZXR1cm4gcW1hcmtOb0RvdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gUU1BUksucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIuIikgewogICAgICAgICAgICByZXR1cm4gRE9UX0xJVEVSQUwucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIqIikgewogICAgICAgICAgICBpZiAoZXNjKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVzYyArIGZpcnN0ICsgKHJlc3QgPyBzdGFyIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBzdGFyOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGVzYyA/IG0gOiBgXFwke219YDsKICAgICAgICB9KTsKICAgICAgICBpZiAoYmFja3NsYXNoZXMgPT09IHRydWUpIHsKICAgICAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKC9cXC9nLCAiIik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQucmVwbGFjZSgvXFwrL2csIChtKSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIG0ubGVuZ3RoICUgMiA9PT0gMCA/ICJcXFxcIiA6IG0gPyAiXFwiIDogIiI7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAob3V0cHV0ID09PSBpbnB1dCAmJiBvcHRzLmNvbnRhaW5zID09PSB0cnVlKSB7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBpbnB1dDsKICAgICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMud3JhcE91dHB1dChvdXRwdXQsIHN0YXRlLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gc3RhdGU7CiAgICAgIH0KICAgICAgd2hpbGUgKCFlb3MoKSkgewogICAgICAgIHZhbHVlID0gYWR2YW5jZSgpOwogICAgICAgIGlmICh2YWx1ZSA9PT0gIlwwIikgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIlxcIikgewogICAgICAgICAgY29uc3QgbmV4dCA9IHBlZWsoKTsKICAgICAgICAgIGlmIChuZXh0ID09PSAiLyIgJiYgb3B0cy5iYXNoICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG5leHQgPT09ICIuIiB8fCBuZXh0ID09PSAiOyIpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5leHQpIHsKICAgICAgICAgICAgdmFsdWUgKz0gIlxcIjsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSAvXlxcKy8uZXhlYyhyZW1haW5pbmcoKSk7CiAgICAgICAgICBsZXQgc2xhc2hlcyA9IDA7CiAgICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMF0ubGVuZ3RoID4gMikgewogICAgICAgICAgICBzbGFzaGVzID0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgICBzdGF0ZS5pbmRleCArPSBzbGFzaGVzOwogICAgICAgICAgICBpZiAoc2xhc2hlcyAlIDIgIT09IDApIHsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXFwiOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy51bmVzY2FwZSA9PT0gdHJ1ZSkgewogICAgICAgICAgICB2YWx1ZSA9IGFkdmFuY2UoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHZhbHVlICs9IGFkdmFuY2UoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA+IDAgJiYgKHZhbHVlICE9PSAiXSIgfHwgcHJldi52YWx1ZSA9PT0gIlsiIHx8IHByZXYudmFsdWUgPT09ICJbXiIpKSB7CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCAhPT0gZmFsc2UgJiYgdmFsdWUgPT09ICI6IikgewogICAgICAgICAgICBjb25zdCBpbm5lciA9IHByZXYudmFsdWUuc2xpY2UoMSk7CiAgICAgICAgICAgIGlmIChpbm5lci5pbmNsdWRlcygiWyIpKSB7CiAgICAgICAgICAgICAgcHJldi5wb3NpeCA9IHRydWU7CiAgICAgICAgICAgICAgaWYgKGlubmVyLmluY2x1ZGVzKCI6IikpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGlkeCA9IHByZXYudmFsdWUubGFzdEluZGV4T2YoIlsiKTsKICAgICAgICAgICAgICAgIGNvbnN0IHByZSA9IHByZXYudmFsdWUuc2xpY2UoMCwgaWR4KTsKICAgICAgICAgICAgICAgIGNvbnN0IHJlc3QyID0gcHJldi52YWx1ZS5zbGljZShpZHggKyAyKTsKICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l4ID0gUE9TSVhfUkVHRVhfU09VUkNFW3Jlc3QyXTsKICAgICAgICAgICAgICAgIGlmIChwb3NpeCkgewogICAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gcHJlICsgcG9zaXg7CiAgICAgICAgICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgaWYgKCFib3Mub3V0cHV0ICYmIHRva2Vucy5pbmRleE9mKHByZXYpID09PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgYm9zLm91dHB1dCA9IE9ORV9DSEFSOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSAiWyIgJiYgcGVlaygpICE9PSAiOiIgfHwgdmFsdWUgPT09ICItIiAmJiBwZWVrKCkgPT09ICJdIikgewogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh2YWx1ZSA9PT0gIl0iICYmIChwcmV2LnZhbHVlID09PSAiWyIgfHwgcHJldi52YWx1ZSA9PT0gIlteIikpIHsKICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCA9PT0gdHJ1ZSAmJiB2YWx1ZSA9PT0gIiEiICYmIHByZXYudmFsdWUgPT09ICJbIikgewogICAgICAgICAgICB2YWx1ZSA9ICJeIjsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBhcHBlbmQoeyB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUucXVvdGVzID09PSAxICYmIHZhbHVlICE9PSAnIicpIHsKICAgICAgICAgIHZhbHVlID0gdXRpbHMuZXNjYXBlUmVnZXgodmFsdWUpOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIGFwcGVuZCh7IHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gJyInKSB7CiAgICAgICAgICBzdGF0ZS5xdW90ZXMgPSBzdGF0ZS5xdW90ZXMgPT09IDEgPyAwIDogMTsKICAgICAgICAgIGlmIChvcHRzLmtlZXBRdW90ZXMgPT09IHRydWUpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKCIpIHsKICAgICAgICAgIGluY3JlbWVudCgicGFyZW5zIik7CiAgICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKSIpIHsKICAgICAgICAgIGlmIChzdGF0ZS5wYXJlbnMgPT09IDAgJiYgb3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoIm9wZW5pbmciLCAiKCIpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGV4dGdsb2IgPSBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChleHRnbG9iICYmIHN0YXRlLnBhcmVucyA9PT0gZXh0Z2xvYi5wYXJlbnMgKyAxKSB7CiAgICAgICAgICAgIGV4dGdsb2JDbG9zZShleHRnbG9icy5wb3AoKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJwYXJlbiIsIHZhbHVlLCBvdXRwdXQ6IHN0YXRlLnBhcmVucyA/ICIpIiA6ICJcXCkiIH0pOwogICAgICAgICAgZGVjcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJbIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8ICFyZW1haW5pbmcoKS5pbmNsdWRlcygiXSIpKSB7CiAgICAgICAgICAgIGlmIChvcHRzLm5vYnJhY2tldCAhPT0gdHJ1ZSAmJiBvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIl0iKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpbmNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImJyYWNrZXQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJdIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8IHByZXYgJiYgcHJldi50eXBlID09PSAiYnJhY2tldCIgJiYgcHJldi52YWx1ZS5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogYFxcJHt2YWx1ZX1gIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigib3BlbmluZyIsICJbIikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQ6IGBcXCR7dmFsdWV9YCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBkZWNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSBwcmV2LnZhbHVlLnNsaWNlKDEpOwogICAgICAgICAgaWYgKHByZXYucG9zaXggIT09IHRydWUgJiYgcHJldlZhbHVlWzBdID09PSAiXiIgJiYgIXByZXZWYWx1ZS5pbmNsdWRlcygiLyIpKSB7CiAgICAgICAgICAgIHZhbHVlID0gYC8ke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgYXBwZW5kKHsgdmFsdWUgfSk7CiAgICAgICAgICBpZiAob3B0cy5saXRlcmFsQnJhY2tldHMgPT09IGZhbHNlIHx8IHV0aWxzLmhhc1JlZ2V4Q2hhcnMocHJldlZhbHVlKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSB1dGlscy5lc2NhcGVSZWdleChwcmV2LnZhbHVlKTsKICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCAtcHJldi52YWx1ZS5sZW5ndGgpOwogICAgICAgICAgaWYgKG9wdHMubGl0ZXJhbEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBlc2NhcGVkOwogICAgICAgICAgICBwcmV2LnZhbHVlID0gZXNjYXBlZDsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlID0gYCgke2NhcHR1cmV9JHtlc2NhcGVkfXwke3ByZXYudmFsdWV9KWA7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi52YWx1ZTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ7IiAmJiBvcHRzLm5vYnJhY2UgIT09IHRydWUpIHsKICAgICAgICAgIGluY3JlbWVudCgiYnJhY2VzIik7CiAgICAgICAgICBjb25zdCBvcGVuID0gewogICAgICAgICAgICB0eXBlOiAiYnJhY2UiLAogICAgICAgICAgICB2YWx1ZSwKICAgICAgICAgICAgb3V0cHV0OiAiKCIsCiAgICAgICAgICAgIG91dHB1dEluZGV4OiBzdGF0ZS5vdXRwdXQubGVuZ3RoLAogICAgICAgICAgICB0b2tlbnNJbmRleDogc3RhdGUudG9rZW5zLmxlbmd0aAogICAgICAgICAgfTsKICAgICAgICAgIGJyYWNlcy5wdXNoKG9wZW4pOwogICAgICAgICAgcHVzaChvcGVuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ9IikgewogICAgICAgICAgY29uc3QgYnJhY2UgPSBicmFjZXNbYnJhY2VzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKG9wdHMubm9icmFjZSA9PT0gdHJ1ZSB8fCAhYnJhY2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IG91dHB1dCA9ICIpIjsKICAgICAgICAgIGlmIChicmFjZS5kb3RzID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IGFyciA9IHRva2Vucy5zbGljZSgpOwogICAgICAgICAgICBjb25zdCByYW5nZSA9IFtdOwogICAgICAgICAgICBmb3IgKGxldCBpID0gYXJyLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgdG9rZW5zLnBvcCgpOwogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSA9PT0gImJyYWNlIikgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSAhPT0gImRvdHMiKSB7CiAgICAgICAgICAgICAgICByYW5nZS51bnNoaWZ0KGFycltpXS52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIG91dHB1dCA9IGV4cGFuZFJhbmdlKHJhbmdlLCBvcHRzKTsKICAgICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChicmFjZS5jb21tYSAhPT0gdHJ1ZSAmJiBicmFjZS5kb3RzICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IG91dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCBicmFjZS5vdXRwdXRJbmRleCk7CiAgICAgICAgICAgIGNvbnN0IHRva3MgPSBzdGF0ZS50b2tlbnMuc2xpY2UoYnJhY2UudG9rZW5zSW5kZXgpOwogICAgICAgICAgICBicmFjZS52YWx1ZSA9IGJyYWNlLm91dHB1dCA9ICJcXHsiOwogICAgICAgICAgICB2YWx1ZSA9IG91dHB1dCA9ICJcXH0iOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBvdXQ7CiAgICAgICAgICAgIGZvciAoY29uc3QgdCBvZiB0b2tzKSB7CiAgICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHQub3V0cHV0IHx8IHQudmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiYnJhY2UiLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgICAgZGVjcmVtZW50KCJicmFjZXMiKTsKICAgICAgICAgIGJyYWNlcy5wb3AoKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ8IikgewogICAgICAgICAgaWYgKGV4dGdsb2JzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgZXh0Z2xvYnNbZXh0Z2xvYnMubGVuZ3RoIC0gMV0uY29uZGl0aW9ucysrOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiLCIpIHsKICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgIGNvbnN0IGJyYWNlID0gYnJhY2VzW2JyYWNlcy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChicmFjZSAmJiBzdGFja1tzdGFjay5sZW5ndGggLSAxXSA9PT0gImJyYWNlcyIpIHsKICAgICAgICAgICAgYnJhY2UuY29tbWEgPSB0cnVlOwogICAgICAgICAgICBvdXRwdXQgPSAifCI7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImNvbW1hIiwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIvIikgewogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImRvdCIgJiYgc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGF0ZS5zdGFydCA9IHN0YXRlLmluZGV4ICsgMTsKICAgICAgICAgICAgc3RhdGUuY29uc3VtZWQgPSAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gIiI7CiAgICAgICAgICAgIHRva2Vucy5wb3AoKTsKICAgICAgICAgICAgcHJldiA9IGJvczsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInNsYXNoIiwgdmFsdWUsIG91dHB1dDogU0xBU0hfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIuIikgewogICAgICAgICAgaWYgKHN0YXRlLmJyYWNlcyA+IDAgJiYgcHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBpZiAocHJldi52YWx1ZSA9PT0gIi4iKSBwcmV2Lm91dHB1dCA9IERPVF9MSVRFUkFMOwogICAgICAgICAgICBjb25zdCBicmFjZSA9IGJyYWNlc1ticmFjZXMubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJkb3RzIjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgKz0gdmFsdWU7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIGJyYWNlLmRvdHMgPSB0cnVlOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFjZXMgKyBzdGF0ZS5wYXJlbnMgPT09IDAgJiYgcHJldi50eXBlICE9PSAiYm9zIiAmJiBwcmV2LnR5cGUgIT09ICJzbGFzaCIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogRE9UX0xJVEVSQUwgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJkb3QiLCB2YWx1ZSwgb3V0cHV0OiBET1RfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICI/IikgewogICAgICAgICAgY29uc3QgaXNHcm91cCA9IHByZXYgJiYgcHJldi52YWx1ZSA9PT0gIigiOwogICAgICAgICAgaWYgKCFpc0dyb3VwICYmIG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicW1hcmsiLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAicGFyZW4iKSB7CiAgICAgICAgICAgIGNvbnN0IG5leHQgPSBwZWVrKCk7CiAgICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgICAgaWYgKHByZXYudmFsdWUgPT09ICIoIiAmJiAhL1shPTw6XS8udGVzdChuZXh0KSB8fCBuZXh0ID09PSAiPCIgJiYgIS88KFshPV18XHcrPikvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgICAgb3V0cHV0ID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMuZG90ICE9PSB0cnVlICYmIChwcmV2LnR5cGUgPT09ICJzbGFzaCIgfHwgcHJldi50eXBlID09PSAiYm9zIikpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJxbWFyayIsIHZhbHVlLCBvdXRwdXQ6IFFNQVJLX05PX0RPVCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInFtYXJrIiwgdmFsdWUsIG91dHB1dDogUU1BUksgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiISIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIikgewogICAgICAgICAgICBpZiAocGVlaygyKSAhPT0gIj8iIHx8ICEvWyE9PDpdLy50ZXN0KHBlZWsoMykpKSB7CiAgICAgICAgICAgICAgZXh0Z2xvYk9wZW4oIm5lZ2F0ZSIsIHZhbHVlKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgc3RhdGUuaW5kZXggPT09IDApIHsKICAgICAgICAgICAgbmVnYXRlKCk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIrIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicGx1cyIsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJldiAmJiBwcmV2LnZhbHVlID09PSAiKCIgfHwgb3B0cy5yZWdleCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWUsIG91dHB1dDogUExVU19MSVRFUkFMIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmV2ICYmIChwcmV2LnR5cGUgPT09ICJicmFja2V0IiB8fCBwcmV2LnR5cGUgPT09ICJwYXJlbiIgfHwgcHJldi50eXBlID09PSAiYnJhY2UiKSB8fCBzdGF0ZS5wYXJlbnMgPiAwKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlOiBQTFVTX0xJVEVSQUwgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiQCIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIiAmJiBwZWVrKDIpICE9PSAiPyIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJhdCIsIGV4dGdsb2I6IHRydWUsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSAhPT0gIioiKSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09ICIkIiB8fCB2YWx1ZSA9PT0gIl4iKSB7CiAgICAgICAgICAgIHZhbHVlID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUy5leGVjKHJlbWFpbmluZygpKTsKICAgICAgICAgIGlmIChtYXRjaCkgewogICAgICAgICAgICB2YWx1ZSArPSBtYXRjaFswXTsKICAgICAgICAgICAgc3RhdGUuaW5kZXggKz0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImdsb2JzdGFyIiB8fCBwcmV2LnN0YXIgPT09IHRydWUpKSB7CiAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICBwcmV2LnN0YXIgPSB0cnVlOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdCA9IHJlbWFpbmluZygpOwogICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiAvXlwoW14/XS8udGVzdChyZXN0KSkgewogICAgICAgICAgZXh0Z2xvYk9wZW4oInN0YXIiLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gInN0YXIiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2dsb2JzdGFyID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHByaW9yID0gcHJldi5wcmV2OwogICAgICAgICAgY29uc3QgYmVmb3JlID0gcHJpb3IucHJldjsKICAgICAgICAgIGNvbnN0IGlzU3RhcnQgPSBwcmlvci50eXBlID09PSAic2xhc2giIHx8IHByaW9yLnR5cGUgPT09ICJib3MiOwogICAgICAgICAgY29uc3QgYWZ0ZXJTdGFyID0gYmVmb3JlICYmIChiZWZvcmUudHlwZSA9PT0gInN0YXIiIHx8IGJlZm9yZS50eXBlID09PSAiZ2xvYnN0YXIiKTsKICAgICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUgJiYgKCFpc1N0YXJ0IHx8IHJlc3RbMF0gJiYgcmVzdFswXSAhPT0gIi8iKSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBpc0JyYWNlID0gc3RhdGUuYnJhY2VzID4gMCAmJiAocHJpb3IudHlwZSA9PT0gImNvbW1hIiB8fCBwcmlvci50eXBlID09PSAiYnJhY2UiKTsKICAgICAgICAgIGNvbnN0IGlzRXh0Z2xvYiA9IGV4dGdsb2JzLmxlbmd0aCAmJiAocHJpb3IudHlwZSA9PT0gInBpcGUiIHx8IHByaW9yLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKCFpc1N0YXJ0ICYmIHByaW9yLnR5cGUgIT09ICJwYXJlbiIgJiYgIWlzQnJhY2UgJiYgIWlzRXh0Z2xvYikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAocmVzdC5zbGljZSgwLCAzKSA9PT0gIi8qKiIpIHsKICAgICAgICAgICAgY29uc3QgYWZ0ZXIgPSBpbnB1dFtzdGF0ZS5pbmRleCArIDRdOwogICAgICAgICAgICBpZiAoYWZ0ZXIgJiYgYWZ0ZXIgIT09ICIvIikgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3QgPSByZXN0LnNsaWNlKDMpOwogICAgICAgICAgICBjb25zdW1lKCIvKioiLCAzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiBlb3MoKSkgewogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJpb3IudHlwZSA9PT0gInNsYXNoIiAmJiBwcmlvci5wcmV2LnR5cGUgIT09ICJib3MiICYmICFhZnRlclN0YXIgJiYgZW9zKCkpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpICsgKG9wdHMuc3RyaWN0U2xhc2hlcyA/ICIpIiA6ICJ8JCkiKTsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAic2xhc2giICYmIHByaW9yLnByZXYudHlwZSAhPT0gImJvcyIgJiYgcmVzdFswXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc3RbMV0gIT09IHZvaWQgMCA/ICJ8JCIgOiAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGAke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH18JHtTTEFTSF9MSVRFUkFMfSR7ZW5kfSlgOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIHN0YXRlLmdsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSArIGFkdmFuY2UoKSk7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic2xhc2giLCB2YWx1ZTogIi8iLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiByZXN0WzBdID09PSAiLyIpIHsKICAgICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgcHJldi5vdXRwdXQgPSBgKD86Xnwke1NMQVNIX0xJVEVSQUx9fCR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSlgOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlICsgYWR2YW5jZSgpKTsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJzbGFzaCIsIHZhbHVlOiAiLyIsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdG9rZW4gPSB7IHR5cGU6ICJzdGFyIiwgdmFsdWUsIG91dHB1dDogc3RhciB9OwogICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUpIHsKICAgICAgICAgIHRva2VuLm91dHB1dCA9ICIuKj8iOwogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImJvcyIgfHwgcHJldi50eXBlID09PSAic2xhc2giKSB7CiAgICAgICAgICAgIHRva2VuLm91dHB1dCA9IG5vZG90ICsgdG9rZW4ub3V0cHV0OwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh0b2tlbik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImJyYWNrZXQiIHx8IHByZXYudHlwZSA9PT0gInBhcmVuIikgJiYgb3B0cy5yZWdleCA9PT0gdHJ1ZSkgewogICAgICAgICAgdG9rZW4ub3V0cHV0ID0gdmFsdWU7CiAgICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0IHx8IHByZXYudHlwZSA9PT0gInNsYXNoIiB8fCBwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gTk9fRE9UX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RfU0xBU0g7CiAgICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZG90ID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IG5vZG90OwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBub2RvdDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwZWVrKCkgIT09ICIqIikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gT05FX0NIQVI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE9ORV9DSEFSOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUuYnJhY2tldHMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJdIikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAiWyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUucGFyZW5zID4gMCkgewogICAgICAgIGlmIChvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoImNsb3NpbmciLCAiKSIpKTsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSB1dGlscy5lc2NhcGVMYXN0KHN0YXRlLm91dHB1dCwgIigiKTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5icmFjZXMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJ9IikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAieyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2VzIik7CiAgICAgIH0KICAgICAgaWYgKG9wdHMuc3RyaWN0U2xhc2hlcyAhPT0gdHJ1ZSAmJiAocHJldi50eXBlID09PSAic3RhciIgfHwgcHJldi50eXBlID09PSAiYnJhY2tldCIpKSB7CiAgICAgICAgcHVzaCh7IHR5cGU6ICJtYXliZV9zbGFzaCIsIHZhbHVlOiAiIiwgb3V0cHV0OiBgJHtTTEFTSF9MSVRFUkFMfT9gIH0pOwogICAgICB9CiAgICAgIGlmIChzdGF0ZS5iYWNrdHJhY2sgPT09IHRydWUpIHsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSAiIjsKICAgICAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHN0YXRlLnRva2VucykgewogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLm91dHB1dCAhPSBudWxsID8gdG9rZW4ub3V0cHV0IDogdG9rZW4udmFsdWU7CiAgICAgICAgICBpZiAodG9rZW4uc3VmZml4KSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSB0b2tlbi5zdWZmaXg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBzdGF0ZTsKICAgIH07CiAgICBwYXJzZS5mYXN0cGF0aHMgPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IHsgLi4ub3B0aW9ucyB9OwogICAgICBjb25zdCBtYXggPSB0eXBlb2Ygb3B0cy5tYXhMZW5ndGggPT09ICJudW1iZXIiID8gTWF0aC5taW4oTUFYX0xFTkdUSCwgb3B0cy5tYXhMZW5ndGgpIDogTUFYX0xFTkdUSDsKICAgICAgY29uc3QgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBpZiAobGVuID4gbWF4KSB7CiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBJbnB1dCBsZW5ndGg6ICR7bGVufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke21heH1gKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBTTEFTSF9MSVRFUkFMLAogICAgICAgIE9ORV9DSEFSLAogICAgICAgIERPVFNfU0xBU0gsCiAgICAgICAgTk9fRE9ULAogICAgICAgIE5PX0RPVFMsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBTVEFSLAogICAgICAgIFNUQVJUX0FOQ0hPUgogICAgICB9ID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gTk9fRE9UUyA6IE5PX0RPVDsKICAgICAgY29uc3Qgc2xhc2hEb3QgPSBvcHRzLmRvdCA/IE5PX0RPVFNfU0xBU0ggOiBOT19ET1Q7CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IHN0YXRlID0geyBuZWdhdGVkOiBmYWxzZSwgcHJlZml4OiAiIiB9OwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/ICIuKj8iIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIGlmIChvcHRzMi5ub2dsb2JzdGFyID09PSB0cnVlKSByZXR1cm4gc3RhcjsKICAgICAgICByZXR1cm4gYCgke2NhcHR1cmV9KD86KD8hJHtTVEFSVF9BTkNIT1J9JHtvcHRzMi5kb3QgPyBET1RTX1NMQVNIIDogRE9UX0xJVEVSQUx9KS4pKj8pYDsKICAgICAgfTsKICAgICAgY29uc3QgY3JlYXRlID0gKHN0cjIpID0+IHsKICAgICAgICBzd2l0Y2ggKHN0cjIpIHsKICAgICAgICAgIGNhc2UgIioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqLioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtzdGFyfSR7RE9UX0xJVEVSQUx9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIiovKiI6CiAgICAgICAgICAgIHJldHVybiBgJHtub2RvdH0ke3N0YXJ9JHtTTEFTSF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzbGFzaERvdH0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqIjoKICAgICAgICAgICAgcmV0dXJuIG5vZG90ICsgZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBjYXNlICIqKi8qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovKi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke3N0YXJ9JHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovLioiOgogICAgICAgICAgICByZXR1cm4gYCg/OiR7bm9kb3R9JHtnbG9ic3RhcihvcHRzKX0ke1NMQVNIX0xJVEVSQUx9KT8ke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBkZWZhdWx0OiB7CiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gL14oLio/KVwuKFx3KykkLy5leGVjKHN0cjIpOwogICAgICAgICAgICBpZiAoIW1hdGNoKSByZXR1cm47CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZTIgPSBjcmVhdGUobWF0Y2hbMV0pOwogICAgICAgICAgICBpZiAoIXNvdXJjZTIpIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuIHNvdXJjZTIgKyBET1RfTElURVJBTCArIG1hdGNoWzJdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgY29uc3Qgb3V0cHV0ID0gdXRpbHMucmVtb3ZlUHJlZml4KGlucHV0LCBzdGF0ZSk7CiAgICAgIGxldCBzb3VyY2UgPSBjcmVhdGUob3V0cHV0KTsKICAgICAgaWYgKHNvdXJjZSAmJiBvcHRzLnN0cmljdFNsYXNoZXMgIT09IHRydWUpIHsKICAgICAgICBzb3VyY2UgKz0gYCR7U0xBU0hfTElURVJBTH0/YDsKICAgICAgfQogICAgICByZXR1cm4gc291cmNlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHBhcnNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3BpY29tYXRjaC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2NhbiA9IHJlcXVpcmVfc2NhbjIoKTsKICAgIHZhciBwYXJzZSA9IHJlcXVpcmVfcGFyc2UoKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgY29uc3RhbnRzID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc09iamVjdDIgPSAodmFsKSA9PiB2YWwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIHZhciBwaWNvbWF0Y2ggPSAoZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShnbG9iKSkgewogICAgICAgIGNvbnN0IGZucyA9IGdsb2IubWFwKChpbnB1dCkgPT4gcGljb21hdGNoKGlucHV0LCBvcHRpb25zLCByZXR1cm5TdGF0ZSkpOwogICAgICAgIGNvbnN0IGFycmF5TWF0Y2hlciA9IChzdHIyKSA9PiB7CiAgICAgICAgICBmb3IgKGNvbnN0IGlzTWF0Y2ggb2YgZm5zKSB7CiAgICAgICAgICAgIGNvbnN0IHN0YXRlMiA9IGlzTWF0Y2goc3RyMik7CiAgICAgICAgICAgIGlmIChzdGF0ZTIpIHJldHVybiBzdGF0ZTI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gYXJyYXlNYXRjaGVyOwogICAgICB9CiAgICAgIGNvbnN0IGlzU3RhdGUgPSBpc09iamVjdDIoZ2xvYikgJiYgZ2xvYi50b2tlbnMgJiYgZ2xvYi5pbnB1dDsKICAgICAgaWYgKGdsb2IgPT09ICIiIHx8IHR5cGVvZiBnbG9iICE9PSAic3RyaW5nIiAmJiAhaXNTdGF0ZSkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHBhdHRlcm4gdG8gYmUgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHBvc2l4ID0gb3B0cy53aW5kb3dzOwogICAgICBjb25zdCByZWdleCA9IGlzU3RhdGUgPyBwaWNvbWF0Y2guY29tcGlsZVJlKGdsb2IsIG9wdGlvbnMpIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zLCBmYWxzZSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHN0YXRlID0gcmVnZXguc3RhdGU7CiAgICAgIGRlbGV0ZSByZWdleC5zdGF0ZTsKICAgICAgbGV0IGlzSWdub3JlZCA9ICgpID0+IGZhbHNlOwogICAgICBpZiAob3B0cy5pZ25vcmUpIHsKICAgICAgICBjb25zdCBpZ25vcmVPcHRzID0geyAuLi5vcHRpb25zLCBpZ25vcmU6IG51bGwsIG9uTWF0Y2g6IG51bGwsIG9uUmVzdWx0OiBudWxsIH07CiAgICAgICAgaXNJZ25vcmVkID0gcGljb21hdGNoKG9wdHMuaWdub3JlLCBpZ25vcmVPcHRzLCByZXR1cm5TdGF0ZSk7CiAgICAgIH0KICAgICAgY29uc3QgbWF0Y2hlciA9IChpbnB1dCwgcmV0dXJuT2JqZWN0ID0gZmFsc2UpID0+IHsKICAgICAgICBjb25zdCB7IGlzTWF0Y2gsIG1hdGNoLCBvdXRwdXQgfSA9IHBpY29tYXRjaC50ZXN0KGlucHV0LCByZWdleCwgb3B0aW9ucywgeyBnbG9iLCBwb3NpeCB9KTsKICAgICAgICBjb25zdCByZXN1bHQgPSB7IGdsb2IsIHN0YXRlLCByZWdleCwgcG9zaXgsIGlucHV0LCBvdXRwdXQsIG1hdGNoLCBpc01hdGNoIH07CiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm9uUmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBvcHRzLm9uUmVzdWx0KHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc01hdGNoID09PSBmYWxzZSkgewogICAgICAgICAgcmVzdWx0LmlzTWF0Y2ggPSBmYWxzZTsKICAgICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSWdub3JlZChpbnB1dCkpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygb3B0cy5vbklnbm9yZSA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICBvcHRzLm9uSWdub3JlKHJlc3VsdCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXN1bHQuaXNNYXRjaCA9IGZhbHNlOwogICAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIG9wdHMub25NYXRjaCA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgb3B0cy5vbk1hdGNoKHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiB0cnVlOwogICAgICB9OwogICAgICBpZiAocmV0dXJuU3RhdGUpIHsKICAgICAgICBtYXRjaGVyLnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hdGNoZXI7CiAgICB9OwogICAgcGljb21hdGNoLnRlc3QgPSAoaW5wdXQsIHJlZ2V4LCBvcHRpb25zLCB7IGdsb2IsIHBvc2l4IH0gPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGlucHV0IHRvIGJlIGEgc3RyaW5nIik7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ID09PSAiIikgewogICAgICAgIHJldHVybiB7IGlzTWF0Y2g6IGZhbHNlLCBvdXRwdXQ6ICIiIH07CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGZvcm1hdCA9IG9wdHMuZm9ybWF0IHx8IChwb3NpeCA/IHV0aWxzLnRvUG9zaXhTbGFzaGVzIDogbnVsbCk7CiAgICAgIGxldCBtYXRjaCA9IGlucHV0ID09PSBnbG9iOwogICAgICBsZXQgb3V0cHV0ID0gbWF0Y2ggJiYgZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICBpZiAobWF0Y2ggPT09IGZhbHNlKSB7CiAgICAgICAgb3V0cHV0ID0gZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICAgIG1hdGNoID0gb3V0cHV0ID09PSBnbG9iOwogICAgICB9CiAgICAgIGlmIChtYXRjaCA9PT0gZmFsc2UgfHwgb3B0cy5jYXB0dXJlID09PSB0cnVlKSB7CiAgICAgICAgaWYgKG9wdHMubWF0Y2hCYXNlID09PSB0cnVlIHx8IG9wdHMuYmFzZW5hbWUgPT09IHRydWUpIHsKICAgICAgICAgIG1hdGNoID0gcGljb21hdGNoLm1hdGNoQmFzZShpbnB1dCwgcmVnZXgsIG9wdGlvbnMsIHBvc2l4KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWF0Y2ggPSByZWdleC5leGVjKG91dHB1dCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGlzTWF0Y2g6IEJvb2xlYW4obWF0Y2gpLCBtYXRjaCwgb3V0cHV0IH07CiAgICB9OwogICAgcGljb21hdGNoLm1hdGNoQmFzZSA9IChpbnB1dCwgZ2xvYiwgb3B0aW9ucykgPT4gewogICAgICBjb25zdCByZWdleCA9IGdsb2IgaW5zdGFuY2VvZiBSZWdFeHAgPyBnbG9iIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zKTsKICAgICAgcmV0dXJuIHJlZ2V4LnRlc3QodXRpbHMuYmFzZW5hbWUoaW5wdXQpKTsKICAgIH07CiAgICBwaWNvbWF0Y2guaXNNYXRjaCA9IChzdHIyLCBwYXR0ZXJucywgb3B0aW9ucykgPT4gcGljb21hdGNoKHBhdHRlcm5zLCBvcHRpb25zKShzdHIyKTsKICAgIHBpY29tYXRjaC5wYXJzZSA9IChwYXR0ZXJuLCBvcHRpb25zKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhdHRlcm4pKSByZXR1cm4gcGF0dGVybi5tYXAoKHApID0+IHBpY29tYXRjaC5wYXJzZShwLCBvcHRpb25zKSk7CiAgICAgIHJldHVybiBwYXJzZShwYXR0ZXJuLCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSk7CiAgICB9OwogICAgcGljb21hdGNoLnNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHNjYW4oaW5wdXQsIG9wdGlvbnMpOwogICAgcGljb21hdGNoLmNvbXBpbGVSZSA9IChzdGF0ZSwgb3B0aW9ucywgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKHJldHVybk91dHB1dCA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBzdGF0ZS5vdXRwdXQ7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHByZXBlbmQgPSBvcHRzLmNvbnRhaW5zID8gIiIgOiAiXiI7CiAgICAgIGNvbnN0IGFwcGVuZCA9IG9wdHMuY29udGFpbnMgPyAiIiA6ICIkIjsKICAgICAgbGV0IHNvdXJjZSA9IGAke3ByZXBlbmR9KD86JHtzdGF0ZS5vdXRwdXR9KSR7YXBwZW5kfWA7CiAgICAgIGlmIChzdGF0ZSAmJiBzdGF0ZS5uZWdhdGVkID09PSB0cnVlKSB7CiAgICAgICAgc291cmNlID0gYF4oPyEke3NvdXJjZX0pLiokYDsKICAgICAgfQogICAgICBjb25zdCByZWdleCA9IHBpY29tYXRjaC50b1JlZ2V4KHNvdXJjZSwgb3B0aW9ucyk7CiAgICAgIGlmIChyZXR1cm5TdGF0ZSA9PT0gdHJ1ZSkgewogICAgICAgIHJlZ2V4LnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlZ2V4OwogICAgfTsKICAgIHBpY29tYXRjaC5tYWtlUmUgPSAoaW5wdXQsIG9wdGlvbnMgPSB7fSwgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKCFpbnB1dCB8fCB0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgbGV0IHBhcnNlZCA9IHsgbmVnYXRlZDogZmFsc2UsIGZhc3RwYXRoczogdHJ1ZSB9OwogICAgICBpZiAob3B0aW9ucy5mYXN0cGF0aHMgIT09IGZhbHNlICYmIChpbnB1dFswXSA9PT0gIi4iIHx8IGlucHV0WzBdID09PSAiKiIpKSB7CiAgICAgICAgcGFyc2VkLm91dHB1dCA9IHBhcnNlLmZhc3RwYXRocyhpbnB1dCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgaWYgKCFwYXJzZWQub3V0cHV0KSB7CiAgICAgICAgcGFyc2VkID0gcGFyc2UoaW5wdXQsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHBhcnNlZCwgb3B0aW9ucywgcmV0dXJuT3V0cHV0LCByZXR1cm5TdGF0ZSk7CiAgICB9OwogICAgcGljb21hdGNoLnRvUmVnZXggPSAoc291cmNlLCBvcHRpb25zKSA9PiB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgcmV0dXJuIG5ldyBSZWdFeHAoc291cmNlLCBvcHRzLmZsYWdzIHx8IChvcHRzLm5vY2FzZSA/ICJpIiA6ICIiKSk7CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZGVidWcgPT09IHRydWUpIHRocm93IGVycjsKICAgICAgICByZXR1cm4gLyReLzsKICAgICAgfQogICAgfTsKICAgIHBpY29tYXRjaC5jb25zdGFudHMgPSBjb25zdGFudHM7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBwaWNvbWF0Y2g7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2gyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBwaWNvID0gcmVxdWlyZV9waWNvbWF0Y2goKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICBmdW5jdGlvbiBwaWNvbWF0Y2goZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgewogICAgICBpZiAob3B0aW9ucyAmJiAob3B0aW9ucy53aW5kb3dzID09PSBudWxsIHx8IG9wdGlvbnMud2luZG93cyA9PT0gdm9pZCAwKSkgewogICAgICAgIG9wdGlvbnMgPSB7IC4uLm9wdGlvbnMsIHdpbmRvd3M6IHV0aWxzLmlzV2luZG93cygpIH07CiAgICAgIH0KICAgICAgcmV0dXJuIHBpY28oZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUpOwogICAgfQogICAgT2JqZWN0LmFzc2lnbihwaWNvbWF0Y2gsIHBpY28pOwogICAgbW9kdWxlMi5leHBvcnRzID0gcGljb21hdGNoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBpY29tYXRjaF8xID0gcmVxdWlyZV9waWNvbWF0Y2gyKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBQYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9wYXR0ZXJucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGFkZFBhdHRlcm4ocGF0dGVybiwgcmVwbGFjZW1lbnRGbikgewogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gQXJyYXkuaXNBcnJheShwYXR0ZXJuKSA/IHBhdHRlcm4gOiBbcGF0dGVybl07CiAgICAgICAgZm9yIChjb25zdCBnbG9iIG9mIHBhdHRlcm5zKSB7CiAgICAgICAgICBjb25zdCB7IG91dHB1dCB9ID0gKDAsIHBpY29tYXRjaF8xLnBhcnNlKShnbG9iKTsKICAgICAgICAgIHRoaXMuX3BhdHRlcm5zLnNldChuZXcgUmVnRXhwKGBeJHtvdXRwdXR9JGApLCByZXBsYWNlbWVudEZuKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3Jlc29sdmUocGF0aCkgewogICAgICAgIGxldCBuZXdQYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9wYXR0ZXJucy5mb3JFYWNoKChmbiwgcmUpID0+IHsKICAgICAgICAgIGlmIChyZS50ZXN0KHBhdGgpKSB7CiAgICAgICAgICAgIG5ld1BhdGggPSBmbihuZXdQYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3UGF0aDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdHRlcm5NYXRjaGluZ0hvc3QgPSBQYXR0ZXJuTWF0Y2hpbmdIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3JlY29yZC5qcwp2YXIgcmVxdWlyZV9yZWNvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIG1lbW9yeV8xID0gcmVxdWlyZV9tZW1vcnkoKTsKICAgIHZhciBDb3JkSG9zdCA9IGNsYXNzIF9Db3JkSG9zdCBleHRlbmRzIG1lbW9yeV8xLlNpbXBsZU1lbW9yeUhvc3QgewogICAgICBfYmFjazsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2ZpbGVzVG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9iYWNrID0gX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGJhY2tlbmQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgc3luY2hyb25vdXM6IHRoaXMuX2JhY2suY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgY29weSBvZiB0aGlzIGhvc3QsIGluY2x1ZGluZyBhbGwgYWN0aW9ucyBtYWRlLgogICAgICAgKiBAcmV0dXJucyB7Q29yZEhvc3R9IFRoZSBjYXJib24gY29weS4KICAgICAgICovCiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IGRvbGx5ID0gbmV3IF9Db3JkSG9zdCh0aGlzLl9iYWNrKTsKICAgICAgICBkb2xseS5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICBkb2xseS5fZmlsZXNUb0NyZWF0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0NyZWF0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9SZW5hbWUgPSBuZXcgTWFwKHRoaXMuX2ZpbGVzVG9SZW5hbWUpOwogICAgICAgIGRvbGx5Ll9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gbmV3IE1hcCh0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0KTsKICAgICAgICBkb2xseS5fZmlsZXNUb0RlbGV0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0RlbGV0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9PdmVyd3JpdGUgPSBuZXcgU2V0KHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUpOwogICAgICAgIHJldHVybiBkb2xseTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tbWl0IHRoZSBjaGFuZ2VzIHJlY29yZGVkIHRvIGEgSG9zdC4gSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBob3N0IGRvZXMgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUKICAgICAgICogYXMgdGhlIGhvc3QgdGhhdCB3YXMgdXNlZCBmb3IgYmFja2VuZCAoY291bGQgYmUgdGhlIHNhbWUgaG9zdCkuCiAgICAgICAqIEBwYXJhbSBob3N0IFRoZSBob3N0IHRvIGNyZWF0ZS9kZWxldGUvcmVuYW1lL292ZXJ3cml0ZSBmaWxlcyB0by4KICAgICAgICogQHBhcmFtIGZvcmNlIFdoZXRoZXIgdG8gc2tpcCBleGlzdGVuY2UgY2hlY2tzIHdoZW4gY3JlYXRpbmcvb3ZlcndyaXRpbmcuIFRoaXMgaXMKICAgICAgICogICBmYXN0ZXIgYnV0IG1pZ2h0IGxlYWQgdG8gaW5jb3JyZWN0IHN0YXRlcy4gQmVjYXVzZSBIb3N0cyBuYXRpdmVseSBkb24ndCBzdXBwb3J0IGNyZWF0aW9uCiAgICAgICAqICAgdmVyc3VzIG92ZXJ3cml0aW5nIChpdCdzIG9ubHkgd3JpdGluZyksIHdlIGNoZWNrIGZvciBleGlzdGVuY2UgYmVmb3JlIGNvbXBsZXRpbmcgYSByZXF1ZXN0LgogICAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgY29tcGxldGVzIHdoZW4gZG9uZSwgb3IgZXJyb3IgaWYgYW4gZXJyb3Igb2NjdXJlZC4KICAgICAgICovCiAgICAgIGNvbW1pdChob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkodGhpcy5yZWNvcmRzKCkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChyZWNvcmQpID0+IHsKICAgICAgICAgIHN3aXRjaCAocmVjb3JkLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5kZWxldGUocmVjb3JkLnBhdGgpOwogICAgICAgICAgICBjYXNlICJyZW5hbWUiOgogICAgICAgICAgICAgIHJldHVybiBob3N0LnJlbmFtZShyZWNvcmQuZnJvbSwgcmVjb3JkLnRvKTsKICAgICAgICAgICAgY2FzZSAiY3JlYXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmIChleGlzdHMgJiYgIWZvcmNlKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHJlY29yZC5wYXRoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXR1cm4gaG9zdC53cml0ZShyZWNvcmQucGF0aCwgcmVjb3JkLmNvbnRlbnQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmICghZXhpc3RzICYmICFmb3JjZSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQucGF0aCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGUocmVjb3JkLnBhdGgsIHJlY29yZC5jb250ZW50KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEucmVkdWNlKSgoKSA9PiB7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHJlY29yZHMoKSB7CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIC4uLlsuLi50aGlzLl9maWxlc1RvRGVsZXRlLnZhbHVlcygpXS5tYXAoKHBhdGgpID0+ICh7CiAgICAgICAgICAgIGtpbmQ6ICJkZWxldGUiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldLm1hcCgoW2Zyb20sIHRvXSkgPT4gKHsKICAgICAgICAgICAga2luZDogInJlbmFtZSIsCiAgICAgICAgICAgIGZyb20sCiAgICAgICAgICAgIHRvCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS52YWx1ZXMoKV0ubWFwKChwYXRoKSA9PiAoewogICAgICAgICAgICBraW5kOiAiY3JlYXRlIiwKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogdGhpcy5fcmVhZChwYXRoKQogICAgICAgICAgfSkpLAogICAgICAgICAgLi4uWy4uLnRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUudmFsdWVzKCldLm1hcCgocGF0aCkgPT4gKHsKICAgICAgICAgICAga2luZDogIm92ZXJ3cml0ZSIsCiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuX3JlYWQocGF0aCkKICAgICAgICAgIH0pKQogICAgICAgIF07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNwZWNpYWxpemVkIHZlcnNpb24gb2Yge0BsaW5rIENvcmRIb3N0I3dyaXRlfSB3aGljaCBmb3JjZXMgdGhlIGNyZWF0aW9uIG9mIGEgZmlsZSB3aGV0aGVyIGl0CiAgICAgICAqIGV4aXN0cyBvciBub3QuCiAgICAgICAqIEBwYXJhbSB7fSBwYXRoCiAgICAgICAqIEBwYXJhbSB7RmlsZUJ1ZmZlcn0gY29udGVudAogICAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn0KICAgICAgICovCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgaWYgKHN1cGVyLl9leGlzdHMocGF0aCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuc3dpdGNoTWFwKSgoaXNEaXIpID0+IHsKICAgICAgICAgIGlmIChpc0RpcikgewogICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0aGlzLmV4aXN0cyhwYXRoKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgIGlmICghZXhpc3RzKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgaWYgKGV4aXN0cykgewogICAgICAgICAgICBpZiAodGhpcy53aWxsUmVuYW1lKHBhdGgpIHx8IHRoaXMud2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhwYXRoKSkgewogICAgICAgICAgcmV0dXJuIHN1cGVyLnJlYWQocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG1heWJlT3JpZ2luID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQocGF0aCk7CiAgICAgICAgICAgIGlmIChtYXliZU9yaWdpbikgewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWVSZXZlcnQuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZGVsZXRlKG1heWJlT3JpZ2luKTsKICAgICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChtYXliZU9yaWdpbik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLlVua25vd25FeGNlcHRpb24oYFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGF0aDogJHtKU09OLnN0cmluZ2lmeShwYXRoKX0uYCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYmFjay5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgICBpZiAoZXhpc3RzKSB7CiAgICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5hZGQocGF0aCk7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5leGlzdHModG8pLCB0aGlzLmV4aXN0cyhmcm9tKSkucGlwZSgoMCwgcnhqc18xLnRvQXJyYXkpKCksICgwLCByeGpzXzEuc3dpdGNoTWFwKSgoW2V4aXN0VG8sIGV4aXN0RnJvbV0pID0+IHsKICAgICAgICAgIGlmICghZXhpc3RGcm9tKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGZyb20pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmcm9tID09PSB0bykgewogICAgICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4aXN0VG8pIHsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24odG8pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnJlbmFtZShmcm9tLCB0byksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoeCkgPT4gewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuYWRkKHRvKTsKICAgICAgICAgICAgICB4LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyh0bykpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5kZWxldGUodG8pOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkKGZyb20pLnBpcGUoKDAsIHJ4anNfMS5tYXApKChjb250ZW50KSA9PiB0aGlzLl93cml0ZSh0bywgY29udGVudCkpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG1heWJlVG8xID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAobWF5YmVUbzEpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5kZWxldGUobWF5YmVUbzEpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0LmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgZnJvbSA9IG1heWJlVG8xOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5zZXQoZnJvbSwgdG8pOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5zZXQodG8sIGZyb20pOwogICAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhmcm9tKSkgewogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQoZnJvbSkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGNvbnRlbnQpID0+IHN1cGVyLndyaXRlKHRvLCBjb250ZW50KSkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKHN1cGVyLmxpc3QocGF0aCksIHRoaXMuX2JhY2subGlzdChwYXRoKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKGxpc3QsIGN1cnIpID0+IHsKICAgICAgICAgIGN1cnIuZm9yRWFjaCgoZWxlbSkgPT4gbGlzdC5hZGQoZWxlbSkpOwogICAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgICAgfSwgLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSksICgwLCByeGpzXzEubWFwKSgoc2V0MikgPT4gWy4uLnNldDJdKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gKDAsIHJ4anNfMS5vZikodHJ1ZSkgOiB0aGlzLndpbGxEZWxldGUocGF0aCkgfHwgdGhpcy53aWxsUmVuYW1lKHBhdGgpID8gKDAsIHJ4anNfMS5vZikoZmFsc2UpIDogdGhpcy5fYmFjay5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5pc0RpcmVjdG9yeShwYXRoKSA6IHRoaXMuX2JhY2suaXNEaXJlY3RvcnkocGF0aCk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuaXNGaWxlKHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKGZhbHNlKSA6IHRoaXMuX2JhY2suaXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5zdGF0KHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKG51bGwpIDogdGhpcy5fYmFjay5zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIHdhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICB3aWxsQ3JlYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbE92ZXJ3cml0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyhwYXRoKTsKICAgICAgfQogICAgICB3aWxsUmVuYW1lKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb1JlbmFtZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbFJlbmFtZVRvKHBhdGgsIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZ2V0KHBhdGgpID09PSB0bzsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gQ29yZEhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcwp2YXIgcmVxdWlyZV9zYWZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2FmZVJlYWRvbmx5SG9zdCA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFNhZmVSZWFkb25seUhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShbXSkpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikoZmFsc2UpKSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNGaWxlKHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShmYWxzZSkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0cy4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0ICYmIG1heWJlU3RhdC5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikobnVsbCkpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNhZmVSZWFkb25seUhvc3QgPSBTYWZlUmVhZG9ubHlIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBTY29wZWRIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihkZWxlZ2F0ZSwgX3Jvb3QgPSBwYXRoXzEuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICBzdXBlcihkZWxlZ2F0ZSk7CiAgICAgICAgdGhpcy5fcm9vdCA9IF9yb290OwogICAgICB9CiAgICAgIF9yZXNvbHZlKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHBhdGhfMS5qb2luKSh0aGlzLl9yb290LCBwYXRoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSBTY29wZWRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzCnZhciByZXF1aXJlX2hvc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGVzdCA9IHZvaWQgMDsKICAgIHZhciB0ZXN0ID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdGVzdCgpKTsKICAgIGV4cG9ydHMyLnRlc3QgPSB0ZXN0OwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYWxpYXMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYnVmZmVyMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jcmVhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW1wdHkyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbWVtb3J5KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BhdHRlcm4yKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3JlY29yZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zYWZlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Njb3BlZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zeW5jKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Jlc29sdmVyKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaW5kZXguanMKdmFyIHJlcXVpcmVfdmlydHVhbF9mcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmlydHVhbEZzID0gdm9pZCAwOwogICAgdmFyIHZpcnR1YWxGcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2hvc3QoKSk7CiAgICBleHBvcnRzMi52aXJ0dWFsRnMgPSB2aXJ0dWFsRnM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9wYXRoKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IGNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZVdvcmtzcGFjZUhvc3QoaG9zdCkgewogICAgICBjb25zdCB3b3Jrc3BhY2VIb3N0ID0gewogICAgICAgIGFzeW5jIHJlYWRGaWxlKHBhdGgpIHsKICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QucmVhZCgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpKTsKICAgICAgICAgIHJldHVybiB2aXJ0dWFsX2ZzXzEudmlydHVhbEZzLmZpbGVCdWZmZXJUb1N0cmluZyhkYXRhKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIHdyaXRlRmlsZShwYXRoLCBkYXRhKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LndyaXRlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSwgdmlydHVhbF9mc18xLnZpcnR1YWxGcy5zdHJpbmdUb0ZpbGVCdWZmZXIoZGF0YSkpKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNEaXJlY3RvcnkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgICAgICB9IGNhdGNoIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNGaWxlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiB3b3Jrc3BhY2VIb3N0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc2Nhbm5lci5qcwp2YXIgcmVxdWlyZV9zY2FubmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zY2FubmVyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gdm9pZCAwOwogICAgICBmdW5jdGlvbiBjcmVhdGVTY2FubmVyKHRleHQsIGlnbm9yZVRyaXZpYSA9IGZhbHNlKSB7CiAgICAgICAgY29uc3QgbGVuID0gdGV4dC5sZW5ndGg7CiAgICAgICAgbGV0IHBvcyA9IDAsIHZhbHVlID0gIiIsIHRva2VuT2Zmc2V0ID0gMCwgdG9rZW4gPSAxNiwgbGluZU51bWJlciA9IDAsIGxpbmVTdGFydE9mZnNldCA9IDAsIHRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgc2NhbkVycm9yID0gMDsKICAgICAgICBmdW5jdGlvbiBzY2FuSGV4RGlnaXRzKGNvdW50LCBleGFjdCkgewogICAgICAgICAgbGV0IGRpZ2l0cyA9IDA7CiAgICAgICAgICBsZXQgdmFsdWUyID0gMDsKICAgICAgICAgIHdoaWxlIChkaWdpdHMgPCBjb3VudCB8fCAhZXhhY3QpIHsKICAgICAgICAgICAgbGV0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA+PSA0OCAmJiBjaCA8PSA1NykgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA0ODsKICAgICAgICAgICAgfSBlbHNlIGlmIChjaCA+PSA2NSAmJiBjaCA8PSA3MCkgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA2NSArIDEwOwogICAgICAgICAgICB9IGVsc2UgaWYgKGNoID49IDk3ICYmIGNoIDw9IDEwMikgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA5NyArIDEwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBkaWdpdHMrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChkaWdpdHMgPCBjb3VudCkgewogICAgICAgICAgICB2YWx1ZTIgPSAtMTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB2YWx1ZTI7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNldFBvc2l0aW9uKG5ld1Bvc2l0aW9uKSB7CiAgICAgICAgICBwb3MgPSBuZXdQb3NpdGlvbjsKICAgICAgICAgIHZhbHVlID0gIiI7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IDA7CiAgICAgICAgICB0b2tlbiA9IDE2OwogICAgICAgICAgc2NhbkVycm9yID0gMDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk51bWJlcigpIHsKICAgICAgICAgIGxldCBzdGFydCA9IHBvczsKICAgICAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDgpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDYpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgICAgcmV0dXJuIHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kID0gcG9zOwogICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNjkgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDEwMSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDMgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ1KSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgZW5kID0gcG9zOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZyhzdGFydCwgZW5kKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2NhblN0cmluZygpIHsKICAgICAgICAgIGxldCByZXN1bHQgPSAiIiwgc3RhcnQgPSBwb3M7CiAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAyOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA9PT0gMzQpIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNoID09PSA5MikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBjaDIgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKyspOwogICAgICAgICAgICAgIHN3aXRjaCAoY2gyKSB7CiAgICAgICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gJyInOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgOTI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXFwiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgNDc6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiLyI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSA5ODoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcYiI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMDI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXGYiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTEwOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxuIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDExNDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcciI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTY6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiCSI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTc6CiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoMyA9IHNjYW5IZXhEaWdpdHMoNCwgdHJ1ZSk7CiAgICAgICAgICAgICAgICAgIGlmIChjaDMgPj0gMCkgewogICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNoMyk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgc2NhbkVycm9yID0gNDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN0YXJ0ID0gcG9zOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjaCA+PSAwICYmIGNoIDw9IDMxKSB7CiAgICAgICAgICAgICAgaWYgKGlzTGluZUJyZWFrKGNoKSkgewogICAgICAgICAgICAgICAgcmVzdWx0ICs9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSA2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OZXh0KCkgewogICAgICAgICAgdmFsdWUgPSAiIjsKICAgICAgICAgIHNjYW5FcnJvciA9IDA7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IHBvczsKICAgICAgICAgIGxpbmVTdGFydE9mZnNldCA9IGxpbmVOdW1iZXI7CiAgICAgICAgICBwcmV2VG9rZW5MaW5lU3RhcnRPZmZzZXQgPSB0b2tlbkxpbmVTdGFydE9mZnNldDsKICAgICAgICAgIGlmIChwb3MgPj0gbGVuKSB7CiAgICAgICAgICAgIHRva2VuT2Zmc2V0ID0gbGVuOwogICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNzsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICBpZiAoaXNXaGl0ZVNwYWNlKGNvZGUpKSB7CiAgICAgICAgICAgIGRvIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIGNvZGUgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgfSB3aGlsZSAoaXNXaGl0ZVNwYWNlKGNvZGUpKTsKICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIHZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSk7CiAgICAgICAgICAgIGlmIChjb2RlID09PSAxMyAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gMTApIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXG4iOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgdG9rZW5MaW5lU3RhcnRPZmZzZXQgPSBwb3M7CiAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE0OwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIC8vIHRva2VuczogW117fTosCiAgICAgICAgICAgIGNhc2UgMTIzOgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDI7CiAgICAgICAgICAgIGNhc2UgOTE6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMzsKICAgICAgICAgICAgY2FzZSA5MzoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA0OwogICAgICAgICAgICBjYXNlIDU4OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDY7CiAgICAgICAgICAgIGNhc2UgNDQ6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNTsKICAgICAgICAgICAgLy8gc3RyaW5ncwogICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHZhbHVlID0gc2NhblN0cmluZygpOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEwOwogICAgICAgICAgICAvLyBjb21tZW50cwogICAgICAgICAgICBjYXNlIDQ3OgogICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gcG9zIC0gMTsKICAgICAgICAgICAgICBpZiAodGV4dC5jaGFyQ29kZUF0KHBvcyArIDEpID09PSA0NykgewogICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgbGVuKSB7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhbHVlID0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRleHQuY2hhckNvZGVBdChwb3MgKyAxKSA9PT0gNDIpIHsKICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgY29uc3Qgc2FmZUxlbmd0aCA9IGxlbiAtIDE7CiAgICAgICAgICAgICAgICBsZXQgY29tbWVudENsb3NlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHNhZmVMZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgY2ggPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgICAgICAgaWYgKGNoID09PSA0MiAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zICsgMSkgPT09IDQ3KSB7CiAgICAgICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICAgICAgY29tbWVudENsb3NlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayhjaCkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoY2ggPT09IDEzICYmIHRleHQuY2hhckNvZGVBdChwb3MpID09PSAxMCkgewogICAgICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgICAgICAgICB0b2tlbkxpbmVTdGFydE9mZnNldCA9IHBvczsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFjb21tZW50Q2xvc2VkKSB7CiAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAxOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmFsdWUgPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEzOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAvLyBudW1iZXJzCiAgICAgICAgICAgIGNhc2UgNDU6CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID09PSBsZW4gfHwgIWlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIC8vIGZvdW5kIGEgbWludXMsIGZvbGxvd2VkIGJ5IGEgbnVtYmVyIHNvCiAgICAgICAgICAgIC8vIHdlIGZhbGwgdGhyb3VnaCB0byBwcm9jZWVkIHdpdGggc2Nhbm5pbmcKICAgICAgICAgICAgLy8gbnVtYmVycwogICAgICAgICAgICBjYXNlIDQ4OgogICAgICAgICAgICBjYXNlIDQ5OgogICAgICAgICAgICBjYXNlIDUwOgogICAgICAgICAgICBjYXNlIDUxOgogICAgICAgICAgICBjYXNlIDUyOgogICAgICAgICAgICBjYXNlIDUzOgogICAgICAgICAgICBjYXNlIDU0OgogICAgICAgICAgICBjYXNlIDU1OgogICAgICAgICAgICBjYXNlIDU2OgogICAgICAgICAgICBjYXNlIDU3OgogICAgICAgICAgICAgIHZhbHVlICs9IHNjYW5OdW1iZXIoKTsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMTsKICAgICAgICAgICAgLy8gbGl0ZXJhbHMgYW5kIHVua25vd24gc3ltYm9scwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCBsZW4gJiYgaXNVbmtub3duQ29udGVudENoYXJhY3Rlcihjb2RlKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0b2tlbk9mZnNldCAhPT0gcG9zKSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRleHQuc3Vic3RyaW5nKHRva2VuT2Zmc2V0LCBwb3MpOwogICAgICAgICAgICAgICAgc3dpdGNoICh2YWx1ZSkgewogICAgICAgICAgICAgICAgICBjYXNlICJ0cnVlIjoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA4OwogICAgICAgICAgICAgICAgICBjYXNlICJmYWxzZSI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gOTsKICAgICAgICAgICAgICAgICAgY2FzZSAibnVsbCI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpc1Vua25vd25Db250ZW50Q2hhcmFjdGVyKGNvZGUpIHsKICAgICAgICAgIGlmIChpc1doaXRlU3BhY2UoY29kZSkgfHwgaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICBjYXNlIDkzOgogICAgICAgICAgICBjYXNlIDEyMzoKICAgICAgICAgICAgY2FzZSA5MToKICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgY2FzZSA1ODoKICAgICAgICAgICAgY2FzZSA0NDoKICAgICAgICAgICAgY2FzZSA0NzoKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHROb25Ucml2aWEoKSB7CiAgICAgICAgICBsZXQgcmVzdWx0OwogICAgICAgICAgZG8gewogICAgICAgICAgICByZXN1bHQgPSBzY2FuTmV4dCgpOwogICAgICAgICAgfSB3aGlsZSAocmVzdWx0ID49IDEyICYmIHJlc3VsdCA8PSAxNSk7CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgc2V0UG9zaXRpb24sCiAgICAgICAgICBnZXRQb3NpdGlvbjogKCkgPT4gcG9zLAogICAgICAgICAgc2NhbjogaWdub3JlVHJpdmlhID8gc2Nhbk5leHROb25Ucml2aWEgOiBzY2FuTmV4dCwKICAgICAgICAgIGdldFRva2VuOiAoKSA9PiB0b2tlbiwKICAgICAgICAgIGdldFRva2VuVmFsdWU6ICgpID0+IHZhbHVlLAogICAgICAgICAgZ2V0VG9rZW5PZmZzZXQ6ICgpID0+IHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5MZW5ndGg6ICgpID0+IHBvcyAtIHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5TdGFydExpbmU6ICgpID0+IGxpbmVTdGFydE9mZnNldCwKICAgICAgICAgIGdldFRva2VuU3RhcnRDaGFyYWN0ZXI6ICgpID0+IHRva2VuT2Zmc2V0IC0gcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5FcnJvcjogKCkgPT4gc2NhbkVycm9yCiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gY3JlYXRlU2Nhbm5lcjsKICAgICAgZnVuY3Rpb24gaXNXaGl0ZVNwYWNlKGNoKSB7CiAgICAgICAgcmV0dXJuIGNoID09PSAzMiB8fCBjaCA9PT0gOTsKICAgICAgfQogICAgICBmdW5jdGlvbiBpc0xpbmVCcmVhayhjaCkgewogICAgICAgIHJldHVybiBjaCA9PT0gMTAgfHwgY2ggPT09IDEzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRGlnaXQoY2gpIHsKICAgICAgICByZXR1cm4gY2ggPj0gNDggJiYgY2ggPD0gNTc7CiAgICAgIH0KICAgICAgdmFyIENoYXJhY3RlckNvZGVzOwogICAgICAoZnVuY3Rpb24oQ2hhcmFjdGVyQ29kZXMyKSB7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibGluZUZlZWQiXSA9IDEwXSA9ICJsaW5lRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY2FycmlhZ2VSZXR1cm4iXSA9IDEzXSA9ICJjYXJyaWFnZVJldHVybiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic3BhY2UiXSA9IDMyXSA9ICJzcGFjZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzAiXSA9IDQ4XSA9ICJfMCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzEiXSA9IDQ5XSA9ICJfMSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzIiXSA9IDUwXSA9ICJfMiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzMiXSA9IDUxXSA9ICJfMyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzQiXSA9IDUyXSA9ICJfNCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzUiXSA9IDUzXSA9ICJfNSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzYiXSA9IDU0XSA9ICJfNiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzciXSA9IDU1XSA9ICJfNyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzgiXSA9IDU2XSA9ICJfOCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzkiXSA9IDU3XSA9ICJfOSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYSJdID0gOTddID0gImEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImIiXSA9IDk4XSA9ICJiIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjIl0gPSA5OV0gPSAiYyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZCJdID0gMTAwXSA9ICJkIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJlIl0gPSAxMDFdID0gImUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImYiXSA9IDEwMl0gPSAiZiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZyJdID0gMTAzXSA9ICJnIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJoIl0gPSAxMDRdID0gImgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImkiXSA9IDEwNV0gPSAiaSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiaiJdID0gMTA2XSA9ICJqIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJrIl0gPSAxMDddID0gImsiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImwiXSA9IDEwOF0gPSAibCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibSJdID0gMTA5XSA9ICJtIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJuIl0gPSAxMTBdID0gIm4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIm8iXSA9IDExMV0gPSAibyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicCJdID0gMTEyXSA9ICJwIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJxIl0gPSAxMTNdID0gInEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInIiXSA9IDExNF0gPSAiciI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicyJdID0gMTE1XSA9ICJzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ0Il0gPSAxMTZdID0gInQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInUiXSA9IDExN10gPSAidSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidiJdID0gMTE4XSA9ICJ2IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ3Il0gPSAxMTldID0gInciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIngiXSA9IDEyMF0gPSAieCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsieSJdID0gMTIxXSA9ICJ5IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ6Il0gPSAxMjJdID0gInoiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkEiXSA9IDY1XSA9ICJBIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJCIl0gPSA2Nl0gPSAiQiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiQyJdID0gNjddID0gIkMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkQiXSA9IDY4XSA9ICJEIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJFIl0gPSA2OV0gPSAiRSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiRiJdID0gNzBdID0gIkYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkciXSA9IDcxXSA9ICJHIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJIIl0gPSA3Ml0gPSAiSCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSSJdID0gNzNdID0gIkkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkoiXSA9IDc0XSA9ICJKIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJLIl0gPSA3NV0gPSAiSyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTCJdID0gNzZdID0gIkwiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIk0iXSA9IDc3XSA9ICJNIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJOIl0gPSA3OF0gPSAiTiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTyJdID0gNzldID0gIk8iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlAiXSA9IDgwXSA9ICJQIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJRIl0gPSA4MV0gPSAiUSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiUiJdID0gODJdID0gIlIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlMiXSA9IDgzXSA9ICJTIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJUIl0gPSA4NF0gPSAiVCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVSJdID0gODVdID0gIlUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlYiXSA9IDg2XSA9ICJWIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJXIl0gPSA4N10gPSAiVyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiWCJdID0gODhdID0gIlgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlkiXSA9IDg5XSA9ICJZIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJaIl0gPSA5MF0gPSAiWiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYXN0ZXJpc2siXSA9IDQyXSA9ICJhc3RlcmlzayI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYmFja3NsYXNoIl0gPSA5Ml0gPSAiYmFja3NsYXNoIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjbG9zZUJyYWNlIl0gPSAxMjVdID0gImNsb3NlQnJhY2UiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNsb3NlQnJhY2tldCJdID0gOTNdID0gImNsb3NlQnJhY2tldCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29sb24iXSA9IDU4XSA9ICJjb2xvbiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29tbWEiXSA9IDQ0XSA9ICJjb21tYSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZG90Il0gPSA0Nl0gPSAiZG90IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJkb3VibGVRdW90ZSJdID0gMzRdID0gImRvdWJsZVF1b3RlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJtaW51cyJdID0gNDVdID0gIm1pbnVzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2UiXSA9IDEyM10gPSAib3BlbkJyYWNlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2tldCJdID0gOTFdID0gIm9wZW5CcmFja2V0IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJwbHVzIl0gPSA0M10gPSAicGx1cyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic2xhc2giXSA9IDQ3XSA9ICJzbGFzaCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZm9ybUZlZWQiXSA9IDEyXSA9ICJmb3JtRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidGFiIl0gPSA5XSA9ICJ0YWIiOwogICAgICB9KShDaGFyYWN0ZXJDb2RlcyB8fCAoQ2hhcmFjdGVyQ29kZXMgPSB7fSkpOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zdHJpbmctaW50ZXJuLmpzCnZhciByZXF1aXJlX3N0cmluZ19pbnRlcm4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL3N0cmluZy1pbnRlcm4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyJdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLnN1cHBvcnRlZEVvbHMgPSBleHBvcnRzMy5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlcyA9IGV4cG9ydHMzLmNhY2hlZFNwYWNlcyA9IHZvaWQgMDsKICAgICAgZXhwb3J0czMuY2FjaGVkU3BhY2VzID0gbmV3IEFycmF5KDIwKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICByZXR1cm4gIiAiLnJlcGVhdChpbmRleCk7CiAgICAgIH0pOwogICAgICBjb25zdCBtYXhDYWNoZWRWYWx1ZXMgPSAyMDA7CiAgICAgIGV4cG9ydHMzLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzID0gewogICAgICAgICIgIjogewogICAgICAgICAgIlxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcciI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyIiArICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgIgkiOiB7CiAgICAgICAgICAiXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHIiICsgIgkiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcclxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pCiAgICAgICAgfQogICAgICB9OwogICAgICBleHBvcnRzMy5zdXBwb3J0ZWRFb2xzID0gWyJcbiIsICJcciIsICJcclxuIl07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgc2Nhbm5lcl8xID0gcmVxdWlyZV9zY2FubmVyKCk7CiAgICB2YXIgc3RyaW5nX2ludGVybl8xID0gcmVxdWlyZV9zdHJpbmdfaW50ZXJuKCk7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyIsICIuL3NjYW5uZXIiLCAiLi9zdHJpbmctaW50ZXJuIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuaXNFT0wgPSBleHBvcnRzMy5mb3JtYXQgPSB2b2lkIDA7CiAgICAgIGZ1bmN0aW9uIGZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKSB7CiAgICAgICAgbGV0IGluaXRpYWxJbmRlbnRMZXZlbDsKICAgICAgICBsZXQgZm9ybWF0VGV4dDsKICAgICAgICBsZXQgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgIGxldCByYW5nZVN0YXJ0OwogICAgICAgIGxldCByYW5nZUVuZDsKICAgICAgICBpZiAocmFuZ2UpIHsKICAgICAgICAgIHJhbmdlU3RhcnQgPSByYW5nZS5vZmZzZXQ7CiAgICAgICAgICByYW5nZUVuZCA9IHJhbmdlU3RhcnQgKyByYW5nZS5sZW5ndGg7CiAgICAgICAgICBmb3JtYXRUZXh0U3RhcnQgPSByYW5nZVN0YXJ0OwogICAgICAgICAgd2hpbGUgKGZvcm1hdFRleHRTdGFydCA+IDAgJiYgIWlzRU9MKGRvY3VtZW50VGV4dCwgZm9ybWF0VGV4dFN0YXJ0IC0gMSkpIHsKICAgICAgICAgICAgZm9ybWF0VGV4dFN0YXJ0LS07CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kT2Zmc2V0ID0gcmFuZ2VFbmQ7CiAgICAgICAgICB3aGlsZSAoZW5kT2Zmc2V0IDwgZG9jdW1lbnRUZXh0Lmxlbmd0aCAmJiAhaXNFT0woZG9jdW1lbnRUZXh0LCBlbmRPZmZzZXQpKSB7CiAgICAgICAgICAgIGVuZE9mZnNldCsrOwogICAgICAgICAgfQogICAgICAgICAgZm9ybWF0VGV4dCA9IGRvY3VtZW50VGV4dC5zdWJzdHJpbmcoZm9ybWF0VGV4dFN0YXJ0LCBlbmRPZmZzZXQpOwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gY29tcHV0ZUluZGVudExldmVsKGZvcm1hdFRleHQsIG9wdGlvbnMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3JtYXRUZXh0ID0gZG9jdW1lbnRUZXh0OwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gMDsKICAgICAgICAgIGZvcm1hdFRleHRTdGFydCA9IDA7CiAgICAgICAgICByYW5nZVN0YXJ0ID0gMDsKICAgICAgICAgIHJhbmdlRW5kID0gZG9jdW1lbnRUZXh0Lmxlbmd0aDsKICAgICAgICB9CiAgICAgICAgY29uc3QgZW9sID0gZ2V0RU9MKG9wdGlvbnMsIGRvY3VtZW50VGV4dCk7CiAgICAgICAgY29uc3QgZW9sRmFzdFBhdGhTdXBwb3J0ZWQgPSBzdHJpbmdfaW50ZXJuXzEuc3VwcG9ydGVkRW9scy5pbmNsdWRlcyhlb2wpOwogICAgICAgIGxldCBudW1iZXJMaW5lQnJlYWtzID0gMDsKICAgICAgICBsZXQgaW5kZW50TGV2ZWwgPSAwOwogICAgICAgIGxldCBpbmRlbnRWYWx1ZTsKICAgICAgICBpZiAob3B0aW9ucy5pbnNlcnRTcGFjZXMpIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1tvcHRpb25zLnRhYlNpemUgfHwgNF0gPz8gcmVwZWF0MihzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdLCBvcHRpb25zLnRhYlNpemUgfHwgNCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gIgkiOwogICAgICAgIH0KICAgICAgICBjb25zdCBpbmRlbnRUeXBlID0gaW5kZW50VmFsdWUgPT09ICIJIiA/ICIJIiA6ICIgIjsKICAgICAgICBsZXQgc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikoZm9ybWF0VGV4dCwgZmFsc2UpOwogICAgICAgIGxldCBoYXNFcnJvciA9IGZhbHNlOwogICAgICAgIGZ1bmN0aW9uIG5ld0xpbmVzQW5kSW5kZW50KCkgewogICAgICAgICAgaWYgKG51bWJlckxpbmVCcmVha3MgPiAxKSB7CiAgICAgICAgICAgIHJldHVybiByZXBlYXQyKGVvbCwgbnVtYmVyTGluZUJyZWFrcykgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBhbW91bnRPZlNwYWNlcyA9IGluZGVudFZhbHVlLmxlbmd0aCAqIChpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICBpZiAoIWVvbEZhc3RQYXRoU3VwcG9ydGVkIHx8IGFtb3VudE9mU3BhY2VzID4gc3RyaW5nX2ludGVybl8xLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzW2luZGVudFR5cGVdW2VvbF0ubGVuZ3RoKSB7CiAgICAgICAgICAgIHJldHVybiBlb2wgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYW1vdW50T2ZTcGFjZXMgPD0gMCkgewogICAgICAgICAgICByZXR1cm4gZW9sOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN0cmluZ19pbnRlcm5fMS5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlc1tpbmRlbnRUeXBlXVtlb2xdW2Ftb3VudE9mU3BhY2VzXTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICBsZXQgdG9rZW4gPSBzY2FubmVyLnNjYW4oKTsKICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgPSAwOwogICAgICAgICAgd2hpbGUgKHRva2VuID09PSAxNSB8fCB0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgaWYgKHRva2VuID09PSAxNCAmJiBvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgKz0gMTsKICAgICAgICAgICAgfSBlbHNlIGlmICh0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgICBudW1iZXJMaW5lQnJlYWtzID0gMTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0b2tlbiA9IHNjYW5uZXIuc2NhbigpOwogICAgICAgICAgfQogICAgICAgICAgaGFzRXJyb3IgPSB0b2tlbiA9PT0gMTYgfHwgc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkgIT09IDA7CiAgICAgICAgICByZXR1cm4gdG9rZW47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRPcGVyYXRpb25zID0gW107CiAgICAgICAgZnVuY3Rpb24gYWRkRWRpdCh0ZXh0LCBzdGFydE9mZnNldCwgZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yICYmICghcmFuZ2UgfHwgc3RhcnRPZmZzZXQgPCByYW5nZUVuZCAmJiBlbmRPZmZzZXQgPiByYW5nZVN0YXJ0KSAmJiBkb2N1bWVudFRleHQuc3Vic3RyaW5nKHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQpICE9PSB0ZXh0KSB7CiAgICAgICAgICAgIGVkaXRPcGVyYXRpb25zLnB1c2goewogICAgICAgICAgICAgIG9mZnNldDogc3RhcnRPZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoOiBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwKICAgICAgICAgICAgICBjb250ZW50OiB0ZXh0CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBsZXQgZmlyc3RUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICBhZGRFZGl0KHJlcGVhdDIoZW9sLCBudW1iZXJMaW5lQnJlYWtzKSwgMCwgMCk7CiAgICAgICAgfQogICAgICAgIGlmIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGxldCBpbml0aWFsSW5kZW50ID0gaW5kZW50VmFsdWUubGVuZ3RoICogaW5pdGlhbEluZGVudExldmVsIDwgMjAgJiYgb3B0aW9ucy5pbnNlcnRTcGFjZXMgPyBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzW2luZGVudFZhbHVlLmxlbmd0aCAqIGluaXRpYWxJbmRlbnRMZXZlbF0gOiByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwpOwogICAgICAgICAgYWRkRWRpdChpbml0aWFsSW5kZW50LCBmb3JtYXRUZXh0U3RhcnQsIGZpcnN0VG9rZW5TdGFydCk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBsZXQgc2Vjb25kVG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IHJlcGxhY2VDb250ZW50ID0gIiI7CiAgICAgICAgICBsZXQgbmVlZHNMaW5lQnJlYWsgPSBmYWxzZTsKICAgICAgICAgIHdoaWxlIChudW1iZXJMaW5lQnJlYWtzID09PSAwICYmIChzZWNvbmRUb2tlbiA9PT0gMTIgfHwgc2Vjb25kVG9rZW4gPT09IDEzKSkgewogICAgICAgICAgICBsZXQgY29tbWVudFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIGFkZEVkaXQoCiAgICAgICAgICAgICAgc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXSwKICAgICAgICAgICAgICBmaXJzdFRva2VuRW5kLAogICAgICAgICAgICAgIGNvbW1lbnRUb2tlblN0YXJ0CiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIG5lZWRzTGluZUJyZWFrID0gc2Vjb25kVG9rZW4gPT09IDEyOwogICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5lZWRzTGluZUJyZWFrID8gbmV3TGluZXNBbmRJbmRlbnQoKSA6ICIiOwogICAgICAgICAgICBzZWNvbmRUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2Vjb25kVG9rZW4gPT09IDIpIHsKICAgICAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDEpIHsKICAgICAgICAgICAgICBpbmRlbnRMZXZlbC0tOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMgJiYgZmlyc3RUb2tlbiAhPT0gMSkgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiA9PT0gNCkgewogICAgICAgICAgICBpZiAoZmlyc3RUb2tlbiAhPT0gMykgewogICAgICAgICAgICAgIGluZGVudExldmVsLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcyAmJiBmaXJzdFRva2VuICE9PSAzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzd2l0Y2ggKGZpcnN0VG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgaW5kZW50TGV2ZWwrKzsKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuID09PSA2ICYmICFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9ICIiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlmICgoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykgJiYgIW5lZWRzTGluZUJyZWFrKSB7CiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuICE9PSA1ICYmIHNlY29uZFRva2VuICE9PSAxNykgewogICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCAmJiAoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzZWNvbmRUb2tlbiA9PT0gMTcpIHsKICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gb3B0aW9ucy5pbnNlcnRGaW5hbE5ld2xpbmUgPyBlb2wgOiAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2Vjb25kVG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGFkZEVkaXQocmVwbGFjZUNvbnRlbnQsIGZpcnN0VG9rZW5FbmQsIHNlY29uZFRva2VuU3RhcnQpOwogICAgICAgICAgZmlyc3RUb2tlbiA9IHNlY29uZFRva2VuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZWRpdE9wZXJhdGlvbnM7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZm9ybWF0ID0gZm9ybWF0OwogICAgICBmdW5jdGlvbiByZXBlYXQyKHMsIGNvdW50KSB7CiAgICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykgewogICAgICAgICAgcmVzdWx0ICs9IHM7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY29tcHV0ZUluZGVudExldmVsKGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgbGV0IG5DaGFycyA9IDA7CiAgICAgICAgY29uc3QgdGFiU2l6ZSA9IG9wdGlvbnMudGFiU2l6ZSB8fCA0OwogICAgICAgIHdoaWxlIChpIDwgY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGxldCBjaCA9IGNvbnRlbnQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdKSB7CiAgICAgICAgICAgIG5DaGFycysrOwogICAgICAgICAgfSBlbHNlIGlmIChjaCA9PT0gIgkiKSB7CiAgICAgICAgICAgIG5DaGFycyArPSB0YWJTaXplOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICAgIHJldHVybiBNYXRoLmZsb29yKG5DaGFycyAvIHRhYlNpemUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGdldEVPTChvcHRpb25zLCB0ZXh0KSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSAiXHIiKSB7CiAgICAgICAgICAgIGlmIChpICsgMSA8IHRleHQubGVuZ3RoICYmIHRleHQuY2hhckF0KGkgKyAxKSA9PT0gIlxuIikgewogICAgICAgICAgICAgIHJldHVybiAiXHJcbiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJcciI7CiAgICAgICAgICB9IGVsc2UgaWYgKGNoID09PSAiXG4iKSB7CiAgICAgICAgICAgIHJldHVybiAiXG4iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gb3B0aW9ucyAmJiBvcHRpb25zLmVvbCB8fCAiXG4iOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRU9MKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiIuaW5kZXhPZih0ZXh0LmNoYXJBdChvZmZzZXQpKSAhPT0gLTE7CiAgICAgIH0KICAgICAgZXhwb3J0czMuaXNFT0wgPSBpc0VPTDsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzCnZhciByZXF1aXJlX3BhcnNlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuY29udGFpbnMgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IGV4cG9ydHMzLnBhcnNlVHJlZSA9IGV4cG9ydHMzLnBhcnNlID0gZXhwb3J0czMuZ2V0TG9jYXRpb24gPSB2b2lkIDA7CiAgICAgIHZhciBQYXJzZU9wdGlvbnM7CiAgICAgIChmdW5jdGlvbihQYXJzZU9wdGlvbnMyKSB7CiAgICAgICAgUGFyc2VPcHRpb25zMi5ERUZBVUxUID0gewogICAgICAgICAgYWxsb3dUcmFpbGluZ0NvbW1hOiBmYWxzZQogICAgICAgIH07CiAgICAgIH0pKFBhcnNlT3B0aW9ucyB8fCAoUGFyc2VPcHRpb25zID0ge30pKTsKICAgICAgZnVuY3Rpb24gZ2V0TG9jYXRpb24odGV4dCwgcG9zaXRpb24pIHsKICAgICAgICBjb25zdCBzZWdtZW50cyA9IFtdOwogICAgICAgIGNvbnN0IGVhcmx5UmV0dXJuRXhjZXB0aW9uID0gbmV3IE9iamVjdCgpOwogICAgICAgIGxldCBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgY29uc3QgcHJldmlvdXNOb2RlSW5zdCA9IHsKICAgICAgICAgIHZhbHVlOiB7fSwKICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGxldCBpc0F0UHJvcGVydHlLZXkgPSBmYWxzZTsKICAgICAgICBmdW5jdGlvbiBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCB0eXBlMikgewogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5vZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0Lmxlbmd0aCA9IGxlbmd0aDsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QudHlwZSA9IHR5cGUyOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5jb2xvbk9mZnNldCA9IHZvaWQgMDsKICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHByZXZpb3VzTm9kZUluc3Q7CiAgICAgICAgfQogICAgICAgIHRyeSB7CiAgICAgICAgICB2aXNpdCh0ZXh0LCB7CiAgICAgICAgICAgIG9uT2JqZWN0QmVnaW46IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gcG9zaXRpb24gPiBvZmZzZXQ7CiAgICAgICAgICAgICAgc2VnbWVudHMucHVzaCgiIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZShuYW1lLCBvZmZzZXQsIGxlbmd0aCwgInByb3BlcnR5Iik7CiAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSBuYW1lOwogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQgKyBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25PYmplY3RFbmQ6IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgc2VnbWVudHMucG9wKCk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uQXJyYXlCZWdpbjogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBzZWdtZW50cy5wdXNoKDApOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZTogKHZhbHVlLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZSh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgsIGdldE5vZGVUeXBlKHZhbHVlKSk7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCArIGxlbmd0aCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBvblNlcGFyYXRvcjogKHNlcCwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHNlcCA9PT0gIjoiICYmIHByZXZpb3VzTm9kZSAmJiBwcmV2aW91c05vZGUudHlwZSA9PT0gInByb3BlcnR5IikgewogICAgICAgICAgICAgICAgcHJldmlvdXNOb2RlLmNvbG9uT2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBsYXN0ID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgICAgICBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXSA9IGxhc3QgKyAxOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSAiIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlICE9PSBlYXJseVJldHVybkV4Y2VwdGlvbikgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgcGF0aDogc2VnbWVudHMsCiAgICAgICAgICBwcmV2aW91c05vZGUsCiAgICAgICAgICBpc0F0UHJvcGVydHlLZXksCiAgICAgICAgICBtYXRjaGVzOiAocGF0dGVybikgPT4gewogICAgICAgICAgICBsZXQgayA9IDA7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBrIDwgcGF0dGVybi5sZW5ndGggJiYgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgaWYgKHBhdHRlcm5ba10gPT09IHNlZ21lbnRzW2ldIHx8IHBhdHRlcm5ba10gPT09ICIqIikgewogICAgICAgICAgICAgICAgaysrOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocGF0dGVybltrXSAhPT0gIioqIikgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gayA9PT0gcGF0dGVybi5sZW5ndGg7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IGdldExvY2F0aW9uOwogICAgICBmdW5jdGlvbiBwYXJzZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSBbXTsKICAgICAgICBjb25zdCBwcmV2aW91c1BhcmVudHMgPSBbXTsKICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlKSB7CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjdXJyZW50UGFyZW50KSkgewogICAgICAgICAgICBjdXJyZW50UGFyZW50LnB1c2godmFsdWUpOwogICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50UHJvcGVydHkgIT09IG51bGwpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudFtjdXJyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZpc2l0b3IgPSB7CiAgICAgICAgICBvbk9iamVjdEJlZ2luOiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IG9iamVjdCA9IHt9OwogICAgICAgICAgICBvblZhbHVlKG9iamVjdCk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb2JqZWN0OwogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgICAgfSwKICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG5hbWU7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RFbmQ6ICgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IHByZXZpb3VzUGFyZW50cy5wb3AoKTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5QmVnaW46ICgpID0+IHsKICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBbXTsKICAgICAgICAgICAgb25WYWx1ZShhcnJheSk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gYXJyYXk7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUVuZDogKCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gcHJldmlvdXNQYXJlbnRzLnBvcCgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlOiBvblZhbHVlLAogICAgICAgICAgb25FcnJvcjogKGVycm9yLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBlcnJvcnMucHVzaCh7IGVycm9yLCBvZmZzZXQsIGxlbmd0aCB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZpc2l0KHRleHQsIHZpc2l0b3IsIG9wdGlvbnMpOwogICAgICAgIHJldHVybiBjdXJyZW50UGFyZW50WzBdOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlID0gcGFyc2U7CiAgICAgIGZ1bmN0aW9uIHBhcnNlVHJlZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgb2Zmc2V0OiAtMSwKICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICBjaGlsZHJlbjogW10sCiAgICAgICAgICBwYXJlbnQ6IHZvaWQgMAogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gZW5zdXJlUHJvcGVydHlDb21wbGV0ZShlbmRPZmZzZXQpIHsKICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBlbmRPZmZzZXQgLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlTm9kZSkgewogICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHZhbHVlTm9kZSk7CiAgICAgICAgICByZXR1cm4gdmFsdWVOb2RlOwogICAgICAgIH0KICAgICAgICBjb25zdCB2aXNpdG9yID0gewogICAgICAgICAgb25PYmplY3RCZWdpbjogKG9mZnNldCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJwcm9wZXJ0eSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgICAgICB2YWx1ZTogbmFtZSwKICAgICAgICAgICAgICBvZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdEVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGVuc3VyZVByb3BlcnR5Q29tcGxldGUob2Zmc2V0ICsgbGVuZ3RoKTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUJlZ2luOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25MaXRlcmFsVmFsdWU6ICh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogZ2V0Tm9kZVR5cGUodmFsdWUpLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGgsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25TZXBhcmF0b3I6IChzZXAsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgICBpZiAoc2VwID09PSAiOiIpIHsKICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY29sb25PZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwKICAgICAgICAgIG9uRXJyb3I6IChlcnJvciwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgZXJyb3JzLnB1c2goeyBlcnJvciwgb2Zmc2V0LCBsZW5ndGggfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zKTsKICAgICAgICBjb25zdCByZXN1bHQgPSBjdXJyZW50UGFyZW50LmNoaWxkcmVuWzBdOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIGRlbGV0ZSByZXN1bHQucGFyZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlVHJlZTsKICAgICAgZnVuY3Rpb24gZmluZE5vZGVBdExvY2F0aW9uKHJvb3QsIHBhdGgpIHsKICAgICAgICBpZiAoIXJvb3QpIHsKICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGxldCBub2RlID0gcm9vdDsKICAgICAgICBmb3IgKGxldCBzZWdtZW50IG9mIHBhdGgpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygc2VnbWVudCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gIm9iamVjdCIgfHwgIUFycmF5LmlzQXJyYXkobm9kZS5jaGlsZHJlbikpIHsKICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5Tm9kZSBvZiBub2RlLmNoaWxkcmVuKSB7CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocHJvcGVydHlOb2RlLmNoaWxkcmVuKSAmJiBwcm9wZXJ0eU5vZGUuY2hpbGRyZW5bMF0udmFsdWUgPT09IHNlZ21lbnQgJiYgcHJvcGVydHlOb2RlLmNoaWxkcmVuLmxlbmd0aCA9PT0gMikgewogICAgICAgICAgICAgICAgbm9kZSA9IHByb3BlcnR5Tm9kZS5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIWZvdW5kKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBzZWdtZW50OwogICAgICAgICAgICBpZiAobm9kZS50eXBlICE9PSAiYXJyYXkiIHx8IGluZGV4IDwgMCB8fCAhQXJyYXkuaXNBcnJheShub2RlLmNoaWxkcmVuKSB8fCBpbmRleCA+PSBub2RlLmNoaWxkcmVuLmxlbmd0aCkgewogICAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbm9kZSA9IG5vZGUuY2hpbGRyZW5baW5kZXhdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgfQogICAgICBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBmaW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGZ1bmN0aW9uIGdldE5vZGVQYXRoKG5vZGUpIHsKICAgICAgICBpZiAoIW5vZGUucGFyZW50IHx8ICFub2RlLnBhcmVudC5jaGlsZHJlbikgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoID0gZ2V0Tm9kZVBhdGgobm9kZS5wYXJlbnQpOwogICAgICAgIGlmIChub2RlLnBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICBjb25zdCBrZXkgPSBub2RlLnBhcmVudC5jaGlsZHJlblswXS52YWx1ZTsKICAgICAgICAgIHBhdGgucHVzaChrZXkpOwogICAgICAgIH0gZWxzZSBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gImFycmF5IikgewogICAgICAgICAgY29uc3QgaW5kZXggPSBub2RlLnBhcmVudC5jaGlsZHJlbi5pbmRleE9mKG5vZGUpOwogICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBwYXRoLnB1c2goaW5kZXgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gcGF0aDsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGdldE5vZGVQYXRoOwogICAgICBmdW5jdGlvbiBnZXROb2RlVmFsdWUobm9kZSkgewogICAgICAgIHN3aXRjaCAobm9kZS50eXBlKSB7CiAgICAgICAgICBjYXNlICJhcnJheSI6CiAgICAgICAgICAgIHJldHVybiBub2RlLmNoaWxkcmVuLm1hcChnZXROb2RlVmFsdWUpOwogICAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgICAgY29uc3Qgb2JqID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICAgIGZvciAobGV0IHByb3Agb2Ygbm9kZS5jaGlsZHJlbikgewogICAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHByb3AuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgaWYgKHZhbHVlTm9kZSkgewogICAgICAgICAgICAgICAgb2JqW3Byb3AuY2hpbGRyZW5bMF0udmFsdWVdID0gZ2V0Tm9kZVZhbHVlKHZhbHVlTm9kZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBvYmo7CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiBub2RlLnZhbHVlOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVZhbHVlID0gZ2V0Tm9kZVZhbHVlOwogICAgICBmdW5jdGlvbiBjb250YWlucyhub2RlLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kID0gZmFsc2UpIHsKICAgICAgICByZXR1cm4gb2Zmc2V0ID49IG5vZGUub2Zmc2V0ICYmIG9mZnNldCA8IG5vZGUub2Zmc2V0ICsgbm9kZS5sZW5ndGggfHwgaW5jbHVkZVJpZ2h0Qm91bmQgJiYgb2Zmc2V0ID09PSBub2RlLm9mZnNldCArIG5vZGUubGVuZ3RoOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmNvbnRhaW5zID0gY29udGFpbnM7CiAgICAgIGZ1bmN0aW9uIGZpbmROb2RlQXRPZmZzZXQobm9kZSwgb2Zmc2V0LCBpbmNsdWRlUmlnaHRCb3VuZCA9IGZhbHNlKSB7CiAgICAgICAgaWYgKGNvbnRhaW5zKG5vZGUsIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpKSB7CiAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUuY2hpbGRyZW47CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGggJiYgY2hpbGRyZW5baV0ub2Zmc2V0IDw9IG9mZnNldDsgaSsrKSB7CiAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IGZpbmROb2RlQXRPZmZzZXQoY2hpbGRyZW5baV0sIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpOwogICAgICAgICAgICAgIGlmIChpdGVtKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBub2RlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBmaW5kTm9kZUF0T2Zmc2V0OwogICAgICBmdW5jdGlvbiB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zID0gUGFyc2VPcHRpb25zLkRFRkFVTFQpIHsKICAgICAgICBjb25zdCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCwgZmFsc2UpOwogICAgICAgIGNvbnN0IF9qc29uUGF0aCA9IFtdOwogICAgICAgIGxldCBzdXBwcmVzc2VkQ2FsbGJhY2tzID0gMDsKICAgICAgICBmdW5jdGlvbiB0b05vQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKQogICAgICAgICAgKSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvT25lQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoYXJnKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIGFyZywKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydExpbmUoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpCiAgICAgICAgICApIDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKGFyZykgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBhcmcsCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKSwKICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICkgOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b0JlZ2luVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MrKzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBsZXQgY2JSZXR1cm4gPSB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpLAogICAgICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIGlmIChjYlJldHVybiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MgPSAxOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvRW5kVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCkgewogICAgICAgICAgICAgIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgb25PYmplY3RCZWdpbiA9IHRvQmVnaW5WaXNpdCh2aXNpdG9yLm9uT2JqZWN0QmVnaW4pLCBvbk9iamVjdFByb3BlcnR5ID0gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0b3Iub25PYmplY3RQcm9wZXJ0eSksIG9uT2JqZWN0RW5kID0gdG9FbmRWaXNpdCh2aXNpdG9yLm9uT2JqZWN0RW5kKSwgb25BcnJheUJlZ2luID0gdG9CZWdpblZpc2l0KHZpc2l0b3Iub25BcnJheUJlZ2luKSwgb25BcnJheUVuZCA9IHRvRW5kVmlzaXQodmlzaXRvci5vbkFycmF5RW5kKSwgb25MaXRlcmFsVmFsdWUgPSB0b09uZUFyZ1Zpc2l0V2l0aFBhdGgodmlzaXRvci5vbkxpdGVyYWxWYWx1ZSksIG9uU2VwYXJhdG9yID0gdG9PbmVBcmdWaXNpdCh2aXNpdG9yLm9uU2VwYXJhdG9yKSwgb25Db21tZW50ID0gdG9Ob0FyZ1Zpc2l0KHZpc2l0b3Iub25Db21tZW50KSwgb25FcnJvciA9IHRvT25lQXJnVmlzaXQodmlzaXRvci5vbkVycm9yKTsKICAgICAgICBjb25zdCBkaXNhbGxvd0NvbW1lbnRzID0gb3B0aW9ucyAmJiBvcHRpb25zLmRpc2FsbG93Q29tbWVudHM7CiAgICAgICAgY29uc3QgYWxsb3dUcmFpbGluZ0NvbW1hID0gb3B0aW9ucyAmJiBvcHRpb25zLmFsbG93VHJhaWxpbmdDb21tYTsKICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gX3NjYW5uZXIuc2NhbigpOwogICAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuRXJyb3IoKSkgewogICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNAogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkVW5pY29kZSAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNQogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkRXNjYXBlQ2hhcmFjdGVyICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDEzCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZk51bWJlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICAgIGlmICghZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMQogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQgKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZTdHJpbmcgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTYKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZENoYXJhY3RlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN3aXRjaCAodG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICBpZiAoZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMAogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRDb21tZW50VG9rZW4gKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIG9uQ29tbWVudCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRTeW1ib2wgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDE1OgogICAgICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhbmRsZUVycm9yKGVycm9yLCBza2lwVW50aWxBZnRlciA9IFtdLCBza2lwVW50aWwgPSBbXSkgewogICAgICAgICAgb25FcnJvcihlcnJvcik7CiAgICAgICAgICBpZiAoc2tpcFVudGlsQWZ0ZXIubGVuZ3RoICsgc2tpcFVudGlsLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGV0IHRva2VuID0gX3NjYW5uZXIuZ2V0VG9rZW4oKTsKICAgICAgICAgICAgd2hpbGUgKHRva2VuICE9PSAxNykgewogICAgICAgICAgICAgIGlmIChza2lwVW50aWxBZnRlci5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNraXBVbnRpbC5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0b2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VTdHJpbmcoaXNWYWx1ZSkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBfc2Nhbm5lci5nZXRUb2tlblZhbHVlKCk7CiAgICAgICAgICBpZiAoaXNWYWx1ZSkgewogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvbk9iamVjdFByb3BlcnR5KHZhbHVlKTsKICAgICAgICAgICAgX2pzb25QYXRoLnB1c2godmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUxpdGVyYWwoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjb25zdCB0b2tlblZhbHVlID0gX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpOwogICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE51bWJlcih0b2tlblZhbHVlKTsKICAgICAgICAgICAgICBpZiAoaXNOYU4odmFsdWUpKSB7CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkTnVtYmVyRm9ybWF0ICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgdmFsdWUgPSAwOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZShudWxsKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlKHRydWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUoZmFsc2UpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VQcm9wZXJ0eSgpIHsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxMCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAzLAogICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNvbW1hVG9rZW4gKi8KICAgICAgICAgICAgICBdCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcnNlU3RyaW5nKGZhbHNlKTsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA2KSB7CiAgICAgICAgICAgIG9uU2VwYXJhdG9yKCI6Iik7CiAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgNSwKICAgICAgICAgICAgICBbXSwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgNQogICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgXQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgX2pzb25QYXRoLnBvcCgpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlT2JqZWN0KCkgewogICAgICAgICAgb25PYmplY3RCZWdpbigpOwogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMiAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAyICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VQcm9wZXJ0eSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZWVkc0NvbW1hID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9uT2JqZWN0RW5kKCk7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMikgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA3LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFjZVRva2VuICovCiAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICBbXQogICAgICAgICAgICApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUFycmF5KCkgewogICAgICAgICAgb25BcnJheUJlZ2luKCk7CiAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IGlzRmlyc3RFbGVtZW50ID0gdHJ1ZTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA0ICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICAgIF9qc29uUGF0aC5wdXNoKDApOwogICAgICAgICAgICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2U7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgX2pzb25QYXRoW19qc29uUGF0aC5sZW5ndGggLSAxXSsrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDQsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5lZWRzQ29tbWEgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgb25BcnJheUVuZCgpOwogICAgICAgICAgaWYgKCFpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICBfanNvblBhdGgucG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA4LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDQKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFja2V0VG9rZW4gKi8KICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgIFtdCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlVmFsdWUoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIHJldHVybiBwYXJzZUFycmF5KCk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VPYmplY3QoKTsKICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VTdHJpbmcodHJ1ZSk7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlTGl0ZXJhbCgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAxNykgewogICAgICAgICAgaWYgKG9wdGlvbnMuYWxsb3dFbXB0eUNvbnRlbnQpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBoYW5kbGVFcnJvcig0LCBbXSwgW10pOwogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDE3KSB7CiAgICAgICAgICBoYW5kbGVFcnJvcig5LCBbXSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBleHBvcnRzMy52aXNpdCA9IHZpc2l0OwogICAgICBmdW5jdGlvbiBzdHJpcENvbW1lbnRzKHRleHQsIHJlcGxhY2VDaCkgewogICAgICAgIGxldCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCksIHBhcnRzID0gW10sIGtpbmQsIG9mZnNldCA9IDAsIHBvczsKICAgICAgICBkbyB7CiAgICAgICAgICBwb3MgPSBfc2Nhbm5lci5nZXRQb3NpdGlvbigpOwogICAgICAgICAga2luZCA9IF9zY2FubmVyLnNjYW4oKTsKICAgICAgICAgIHN3aXRjaCAoa2luZCkgewogICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICBjYXNlIDE3OgogICAgICAgICAgICAgIGlmIChvZmZzZXQgIT09IHBvcykgewogICAgICAgICAgICAgICAgcGFydHMucHVzaCh0ZXh0LnN1YnN0cmluZyhvZmZzZXQsIHBvcykpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAocmVwbGFjZUNoICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHBhcnRzLnB1c2goX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpLnJlcGxhY2UoL1teXHJcbl0vZywgcmVwbGFjZUNoKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9mZnNldCA9IF9zY2FubmVyLmdldFBvc2l0aW9uKCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoa2luZCAhPT0gMTcpOwogICAgICAgIHJldHVybiBwYXJ0cy5qb2luKCIiKTsKICAgICAgfQogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gc3RyaXBDb21tZW50czsKICAgICAgZnVuY3Rpb24gZ2V0Tm9kZVR5cGUodmFsdWUpIHsKICAgICAgICBzd2l0Y2ggKHR5cGVvZiB2YWx1ZSkgewogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiAiYm9vbGVhbiI7CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICByZXR1cm4gIm51bWJlciI7CiAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICByZXR1cm4gInN0cmluZyI7CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGlmICghdmFsdWUpIHsKICAgICAgICAgICAgICByZXR1cm4gIm51bGwiOwogICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJhcnJheSI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJvYmplY3QiOwogICAgICAgICAgfQogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBnZXROb2RlVHlwZTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZWRpdC5qcwp2YXIgcmVxdWlyZV9lZGl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9lZGl0LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgcGFyc2VyXzEgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9mb3JtYXQiLCAiLi9wYXJzZXIiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5pc1dTID0gZXhwb3J0czMuYXBwbHlFZGl0ID0gZXhwb3J0czMuc2V0UHJvcGVydHkgPSBleHBvcnRzMy5yZW1vdmVQcm9wZXJ0eSA9IHZvaWQgMDsKICAgICAgZnVuY3Rpb24gcmVtb3ZlUHJvcGVydHkodGV4dCwgcGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBzZXRQcm9wZXJ0eSh0ZXh0LCBwYXRoLCB2b2lkIDAsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnJlbW92ZVByb3BlcnR5ID0gcmVtb3ZlUHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHNldFByb3BlcnR5KHRleHQsIG9yaWdpbmFsUGF0aCwgdmFsdWUsIG9wdGlvbnMpIHsKICAgICAgICBjb25zdCBwYXRoID0gb3JpZ2luYWxQYXRoLnNsaWNlKCk7CiAgICAgICAgY29uc3QgZXJyb3JzID0gW107CiAgICAgICAgY29uc3Qgcm9vdCA9ICgwLCBwYXJzZXJfMS5wYXJzZVRyZWUpKHRleHQsIGVycm9ycyk7CiAgICAgICAgbGV0IHBhcmVudCA9IHZvaWQgMDsKICAgICAgICBsZXQgbGFzdFNlZ21lbnQgPSB2b2lkIDA7CiAgICAgICAgd2hpbGUgKHBhdGgubGVuZ3RoID4gMCkgewogICAgICAgICAgbGFzdFNlZ21lbnQgPSBwYXRoLnBvcCgpOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocm9vdCwgcGF0aCk7CiAgICAgICAgICBpZiAocGFyZW50ID09PSB2b2lkIDAgJiYgdmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodHlwZW9mIGxhc3RTZWdtZW50ID09PSAic3RyaW5nIikgewogICAgICAgICAgICAgIHZhbHVlID0geyBbbGFzdFNlZ21lbnRdOiB2YWx1ZSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHZhbHVlID0gW3ZhbHVlXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghcGFyZW50KSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNhbiBub3QgZGVsZXRlIGluIGVtcHR5IGRvY3VtZW50Iik7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcoCiAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBvZmZzZXQ6IHJvb3QgPyByb290Lm9mZnNldCA6IDAsCiAgICAgICAgICAgICAgbGVuZ3RoOiByb290ID8gcm9vdC5sZW5ndGggOiAwLAogICAgICAgICAgICAgIGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KHZhbHVlKQogICAgICAgICAgICB9LAogICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICApOwogICAgICAgIH0gZWxzZSBpZiAocGFyZW50LnR5cGUgPT09ICJvYmplY3QiICYmIHR5cGVvZiBsYXN0U2VnbWVudCA9PT0gInN0cmluZyIgJiYgQXJyYXkuaXNBcnJheShwYXJlbnQuY2hpbGRyZW4pKSB7CiAgICAgICAgICBjb25zdCBleGlzdGluZyA9ICgwLCBwYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHBhcmVudCwgW2xhc3RTZWdtZW50XSk7CiAgICAgICAgICBpZiAoZXhpc3RpbmcgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGlmICghZXhpc3RpbmcucGFyZW50KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk1hbGZvcm1lZCBBU1QiKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcHJvcGVydHlJbmRleCA9IHBhcmVudC5jaGlsZHJlbi5pbmRleE9mKGV4aXN0aW5nLnBhcmVudCk7CiAgICAgICAgICAgICAgbGV0IHJlbW92ZUJlZ2luOwogICAgICAgICAgICAgIGxldCByZW1vdmVFbmQgPSBleGlzdGluZy5wYXJlbnQub2Zmc2V0ICsgZXhpc3RpbmcucGFyZW50Lmxlbmd0aDsKICAgICAgICAgICAgICBpZiAocHJvcGVydHlJbmRleCA+IDApIHsKICAgICAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltwcm9wZXJ0eUluZGV4IC0gMV07CiAgICAgICAgICAgICAgICByZW1vdmVCZWdpbiA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmVtb3ZlQmVnaW4gPSBwYXJlbnQub2Zmc2V0ICsgMTsKICAgICAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gMSkgewogICAgICAgICAgICAgICAgICBsZXQgbmV4dCA9IHBhcmVudC5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgICAgcmVtb3ZlRW5kID0gbmV4dC5vZmZzZXQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZygKICAgICAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG9mZnNldDogcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogcmVtb3ZlRW5kIC0gcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb3B0aW9ucwogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKAogICAgICAgICAgICAgICAgdGV4dCwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBleGlzdGluZy5vZmZzZXQsCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogZXhpc3RpbmcubGVuZ3RoLAogICAgICAgICAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeShsYXN0U2VnbWVudCl9OiAke0pTT04uc3RyaW5naWZ5KAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICl9YDsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBvcHRpb25zLmdldEluc2VydGlvbkluZGV4ID8gb3B0aW9ucy5nZXRJbnNlcnRpb25JbmRleCgKICAgICAgICAgICAgICBwYXJlbnQuY2hpbGRyZW4ubWFwKChwKSA9PiBwLmNoaWxkcmVuWzBdLnZhbHVlKQogICAgICAgICAgICApIDogcGFyZW50LmNoaWxkcmVuLmxlbmd0aDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChpbmRleCA+IDApIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5baW5kZXggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGVkaXQgPSB7IG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsIGxlbmd0aDogMCwgY29udGVudDogbmV3UHJvcGVydHkgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQudHlwZSA9PT0gImFycmF5IiAmJiB0eXBlb2YgbGFzdFNlZ21lbnQgPT09ICJudW1iZXIiICYmIEFycmF5LmlzQXJyYXkocGFyZW50LmNoaWxkcmVuKSkgewogICAgICAgICAgY29uc3QgaW5zZXJ0SW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgIGlmIChpbnNlcnRJbmRleCA9PT0gLTEpIHsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwgbGVuZ3RoOiAwLCBjb250ZW50OiBuZXdQcm9wZXJ0eSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW3BhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gdm9pZCAwICYmIHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPj0gMCkgewogICAgICAgICAgICBjb25zdCByZW1vdmFsSW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgICAgY29uc3QgdG9SZW1vdmUgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4XTsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsCiAgICAgICAgICAgICAgICBsZW5ndGg6IHBhcmVudC5sZW5ndGggLSAyLAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxID09PSByZW1vdmFsSW5kZXgpIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4IC0gMV07CiAgICAgICAgICAgICAgbGV0IG9mZnNldCA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICBsZXQgcGFyZW50RW5kT2Zmc2V0ID0gcGFyZW50Lm9mZnNldCArIHBhcmVudC5sZW5ndGg7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0LCBsZW5ndGg6IHBhcmVudEVuZE9mZnNldCAtIDIgLSBvZmZzZXQsIGNvbnRlbnQ6ICIiIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgbGVuZ3RoOiBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4ICsgMV0ub2Zmc2V0IC0gdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgaWYgKCFvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gJiYgcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA+IGxhc3RTZWdtZW50KSB7CiAgICAgICAgICAgICAgY29uc3QgdG9Nb2RpZnkgPSBwYXJlbnQuY2hpbGRyZW5bbGFzdFNlZ21lbnRdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHRvTW9kaWZ5Lm9mZnNldCwKICAgICAgICAgICAgICAgIGxlbmd0aDogdG9Nb2RpZnkubGVuZ3RoLAogICAgICAgICAgICAgICAgY29udGVudDogbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgfHwgbGFzdFNlZ21lbnQgPT09IDApIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgPyBuZXdQcm9wZXJ0eSA6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IGxhc3RTZWdtZW50ID4gcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA/IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggOiBsYXN0U2VnbWVudDsKICAgICAgICAgICAgICBjb25zdCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltpbmRleCAtIDFdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aCwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIsIiArIG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYENhbiBub3QgJHt2YWx1ZSA9PT0gdm9pZCAwID8gInJlbW92ZSIgOiBvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gPyAiaW5zZXJ0IiA6ICJtb2RpZnkifSBBcnJheSBpbmRleCAke2luc2VydEluZGV4fSBhcyBsZW5ndGggaXMgbm90IHN1ZmZpY2llbnRgCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbiBub3QgYWRkICR7dHlwZW9mIGxhc3RTZWdtZW50ICE9PSAibnVtYmVyIiA/ICJpbmRleCIgOiAicHJvcGVydHkifSB0byBwYXJlbnQgb2YgdHlwZSAke3BhcmVudC50eXBlfWAKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLnNldFByb3BlcnR5ID0gc2V0UHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpIHsKICAgICAgICBpZiAoIW9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMpIHsKICAgICAgICAgIHJldHVybiBbZWRpdF07CiAgICAgICAgfQogICAgICAgIGxldCBuZXdUZXh0ID0gYXBwbHlFZGl0KHRleHQsIGVkaXQpOwogICAgICAgIGxldCBiZWdpbiA9IGVkaXQub2Zmc2V0OwogICAgICAgIGxldCBlbmQgPSBlZGl0Lm9mZnNldCArIGVkaXQuY29udGVudC5sZW5ndGg7CiAgICAgICAgaWYgKGVkaXQubGVuZ3RoID09PSAwIHx8IGVkaXQuY29udGVudC5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHdoaWxlIChiZWdpbiA+IDAgJiYgISgwLCBmb3JtYXRfMS5pc0VPTCkobmV3VGV4dCwgYmVnaW4gLSAxKSkgewogICAgICAgICAgICBiZWdpbi0tOwogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGVuZCA8IG5ld1RleHQubGVuZ3RoICYmICEoMCwgZm9ybWF0XzEuaXNFT0wpKG5ld1RleHQsIGVuZCkpIHsKICAgICAgICAgICAgZW5kKys7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRzID0gKDAsIGZvcm1hdF8xLmZvcm1hdCkoCiAgICAgICAgICBuZXdUZXh0LAogICAgICAgICAgeyBvZmZzZXQ6IGJlZ2luLCBsZW5ndGg6IGVuZCAtIGJlZ2luIH0sCiAgICAgICAgICB7IC4uLm9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMsIGtlZXBMaW5lczogZmFsc2UgfQogICAgICAgICk7CiAgICAgICAgZm9yIChsZXQgaSA9IGVkaXRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICBjb25zdCBlZGl0MiA9IGVkaXRzW2ldOwogICAgICAgICAgbmV3VGV4dCA9IGFwcGx5RWRpdChuZXdUZXh0LCBlZGl0Mik7CiAgICAgICAgICBiZWdpbiA9IE1hdGgubWluKGJlZ2luLCBlZGl0Mi5vZmZzZXQpOwogICAgICAgICAgZW5kID0gTWF0aC5tYXgoZW5kLCBlZGl0Mi5vZmZzZXQgKyBlZGl0Mi5sZW5ndGgpOwogICAgICAgICAgZW5kICs9IGVkaXQyLmNvbnRlbnQubGVuZ3RoIC0gZWRpdDIubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0TGVuZ3RoID0gdGV4dC5sZW5ndGggLSAobmV3VGV4dC5sZW5ndGggLSBlbmQpIC0gYmVnaW47CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIHsKICAgICAgICAgICAgb2Zmc2V0OiBiZWdpbiwKICAgICAgICAgICAgbGVuZ3RoOiBlZGl0TGVuZ3RoLAogICAgICAgICAgICBjb250ZW50OiBuZXdUZXh0LnN1YnN0cmluZyhiZWdpbiwgZW5kKQogICAgICAgICAgfQogICAgICAgIF07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gYXBwbHlFZGl0KHRleHQsIGVkaXQpIHsKICAgICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgZWRpdC5vZmZzZXQpICsgZWRpdC5jb250ZW50ICsgdGV4dC5zdWJzdHJpbmcoZWRpdC5vZmZzZXQgKyBlZGl0Lmxlbmd0aCk7CiAgICAgIH0KICAgICAgZXhwb3J0czMuYXBwbHlFZGl0ID0gYXBwbHlFZGl0OwogICAgICBmdW5jdGlvbiBpc1dTKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiAJIi5pbmRleE9mKHRleHQuY2hhckF0KG9mZnNldCkpICE9PSAtMTsKICAgICAgfQogICAgICBleHBvcnRzMy5pc1dTID0gaXNXUzsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMKdmFyIHJlcXVpcmVfbWFpbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgZm9ybWF0dGVyID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgZWRpdCA9IHJlcXVpcmVfZWRpdCgpOwogICAgdmFyIHNjYW5uZXIgPSByZXF1aXJlX3NjYW5uZXIoKTsKICAgIHZhciBwYXJzZXIgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWwogICAgICAgICAgInJlcXVpcmUiLAogICAgICAgICAgImV4cG9ydHMiLAogICAgICAgICAgIi4vaW1wbC9mb3JtYXQiLAogICAgICAgICAgIi4vaW1wbC9lZGl0IiwKICAgICAgICAgICIuL2ltcGwvc2Nhbm5lciIsCiAgICAgICAgICAiLi9pbXBsL3BhcnNlciIKICAgICAgICBdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmFwcGx5RWRpdHMgPSBleHBvcnRzMy5tb2RpZnkgPSBleHBvcnRzMy5mb3JtYXQgPSBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBleHBvcnRzMy5wYXJzZVRyZWUgPSBleHBvcnRzMy5wYXJzZSA9IGV4cG9ydHMzLmdldExvY2F0aW9uID0gZXhwb3J0czMuU3ludGF4S2luZCA9IGV4cG9ydHMzLlNjYW5FcnJvciA9IGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSB2b2lkIDA7CiAgICAgIGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSBzY2FubmVyLmNyZWF0ZVNjYW5uZXI7CiAgICAgIHZhciBTY2FuRXJyb3I7CiAgICAgIChmdW5jdGlvbihTY2FuRXJyb3IyKSB7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJOb25lIl0gPSAwXSA9ICJOb25lIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiXSA9IDFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mU3RyaW5nIl0gPSAyXSA9ICJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAzXSA9ICJVbmV4cGVjdGVkRW5kT2ZOdW1iZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZFVuaWNvZGUiXSA9IDRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiXSA9IDVdID0gIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZENoYXJhY3RlciJdID0gNl0gPSAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgIH0pKFNjYW5FcnJvciB8fCAoZXhwb3J0czMuU2NhbkVycm9yID0gU2NhbkVycm9yID0ge30pKTsKICAgICAgdmFyIFN5bnRheEtpbmQ7CiAgICAgIChmdW5jdGlvbihTeW50YXhLaW5kMikgewogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJPcGVuQnJhY2VUb2tlbiJdID0gMV0gPSAiT3BlbkJyYWNlVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNlVG9rZW4iXSA9IDJdID0gIkNsb3NlQnJhY2VUb2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk9wZW5CcmFja2V0VG9rZW4iXSA9IDNdID0gIk9wZW5CcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNrZXRUb2tlbiJdID0gNF0gPSAiQ2xvc2VCcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDb21tYVRva2VuIl0gPSA1XSA9ICJDb21tYVRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ29sb25Ub2tlbiJdID0gNl0gPSAiQ29sb25Ub2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk51bGxLZXl3b3JkIl0gPSA3XSA9ICJOdWxsS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRydWVLZXl3b3JkIl0gPSA4XSA9ICJUcnVlS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkZhbHNlS2V5d29yZCJdID0gOV0gPSAiRmFsc2VLZXl3b3JkIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiU3RyaW5nTGl0ZXJhbCJdID0gMTBdID0gIlN0cmluZ0xpdGVyYWwiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJOdW1lcmljTGl0ZXJhbCJdID0gMTFdID0gIk51bWVyaWNMaXRlcmFsIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiTGluZUNvbW1lbnRUcml2aWEiXSA9IDEyXSA9ICJMaW5lQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkJsb2NrQ29tbWVudFRyaXZpYSJdID0gMTNdID0gIkJsb2NrQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkxpbmVCcmVha1RyaXZpYSJdID0gMTRdID0gIkxpbmVCcmVha1RyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRyaXZpYSJdID0gMTVdID0gIlRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlVua25vd24iXSA9IDE2XSA9ICJVbmtub3duIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiRU9GIl0gPSAxN10gPSAiRU9GIjsKICAgICAgfSkoU3ludGF4S2luZCB8fCAoZXhwb3J0czMuU3ludGF4S2luZCA9IFN5bnRheEtpbmQgPSB7fSkpOwogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IHBhcnNlci5nZXRMb2NhdGlvbjsKICAgICAgZXhwb3J0czMucGFyc2UgPSBwYXJzZXIucGFyc2U7CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlci5wYXJzZVRyZWU7CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IHBhcnNlci5maW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBwYXJzZXIuZmluZE5vZGVBdE9mZnNldDsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBwYXJzZXIuZ2V0Tm9kZVBhdGg7CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IHBhcnNlci5nZXROb2RlVmFsdWU7CiAgICAgIGV4cG9ydHMzLnZpc2l0ID0gcGFyc2VyLnZpc2l0OwogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gcGFyc2VyLnN0cmlwQ29tbWVudHM7CiAgICAgIHZhciBQYXJzZUVycm9yQ29kZTsKICAgICAgKGZ1bmN0aW9uKFBhcnNlRXJyb3JDb2RlMikgewogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWRTeW1ib2wiXSA9IDFdID0gIkludmFsaWRTeW1ib2wiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWROdW1iZXJGb3JtYXQiXSA9IDJdID0gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlByb3BlcnR5TmFtZUV4cGVjdGVkIl0gPSAzXSA9ICJQcm9wZXJ0eU5hbWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVmFsdWVFeHBlY3RlZCJdID0gNF0gPSAiVmFsdWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29sb25FeHBlY3RlZCJdID0gNV0gPSAiQ29sb25FeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29tbWFFeHBlY3RlZCJdID0gNl0gPSAiQ29tbWFFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ2xvc2VCcmFjZUV4cGVjdGVkIl0gPSA3XSA9ICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNsb3NlQnJhY2tldEV4cGVjdGVkIl0gPSA4XSA9ICJDbG9zZUJyYWNrZXRFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiRW5kT2ZGaWxlRXhwZWN0ZWQiXSA9IDldID0gIkVuZE9mRmlsZUV4cGVjdGVkIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkQ29tbWVudFRva2VuIl0gPSAxMF0gPSAiSW52YWxpZENvbW1lbnRUb2tlbiI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mQ29tbWVudCJdID0gMTFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyJdID0gMTJdID0gIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAxM10gPSAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkVW5pY29kZSJdID0gMTRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIl0gPSAxNV0gPSAiSW52YWxpZEVzY2FwZUNoYXJhY3RlciI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZENoYXJhY3RlciJdID0gMTZdID0gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICB9KShQYXJzZUVycm9yQ29kZSB8fCAoZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBQYXJzZUVycm9yQ29kZSA9IHt9KSk7CiAgICAgIGZ1bmN0aW9uIHByaW50UGFyc2VFcnJvckNvZGUoY29kZSkgewogICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRTeW1ib2wiOwogICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICByZXR1cm4gIlByb3BlcnR5TmFtZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgcmV0dXJuICJWYWx1ZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgcmV0dXJuICJDb2xvbkV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgcmV0dXJuICJDb21tYUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgcmV0dXJuICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICByZXR1cm4gIkNsb3NlQnJhY2tldEV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgcmV0dXJuICJFbmRPZkZpbGVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRDb21tZW50VG9rZW4iOwogICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgcmV0dXJuICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mU3RyaW5nIjsKICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZFVuaWNvZGUiOwogICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIjsKICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgICAgfQogICAgICAgIHJldHVybiAiPHVua25vd24gUGFyc2VFcnJvckNvZGU+IjsKICAgICAgfQogICAgICBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gcHJpbnRQYXJzZUVycm9yQ29kZTsKICAgICAgZnVuY3Rpb24gZm9ybWF0KGRvY3VtZW50VGV4dCwgcmFuZ2UsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5mb3JtYXQgPSBmb3JtYXQ7CiAgICAgIGZ1bmN0aW9uIG1vZGlmeSh0ZXh0LCBwYXRoLCB2YWx1ZSwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBlZGl0LnNldFByb3BlcnR5KHRleHQsIHBhdGgsIHZhbHVlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5tb2RpZnkgPSBtb2RpZnk7CiAgICAgIGZ1bmN0aW9uIGFwcGx5RWRpdHModGV4dCwgZWRpdHMpIHsKICAgICAgICBsZXQgc29ydGVkRWRpdHMgPSBlZGl0cy5zbGljZSgwKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICBjb25zdCBkaWZmID0gYS5vZmZzZXQgLSBiLm9mZnNldDsKICAgICAgICAgIGlmIChkaWZmID09PSAwKSB7CiAgICAgICAgICAgIHJldHVybiBhLmxlbmd0aCAtIGIubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGRpZmY7CiAgICAgICAgfSk7CiAgICAgICAgbGV0IGxhc3RNb2RpZmllZE9mZnNldCA9IHRleHQubGVuZ3RoOwogICAgICAgIGZvciAobGV0IGkgPSBzb3J0ZWRFZGl0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgbGV0IGUgPSBzb3J0ZWRFZGl0c1tpXTsKICAgICAgICAgIGlmIChlLm9mZnNldCArIGUubGVuZ3RoIDw9IGxhc3RNb2RpZmllZE9mZnNldCkgewogICAgICAgICAgICB0ZXh0ID0gZWRpdC5hcHBseUVkaXQodGV4dCwgZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk92ZXJsYXBwaW5nIGVkaXQiKTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNb2RpZmllZE9mZnNldCA9IGUub2Zmc2V0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGV4dDsKICAgICAgfQogICAgICBleHBvcnRzMy5hcHBseUVkaXRzID0gYXBwbHlFZGl0czsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanMKdmFyIHJlcXVpcmVfbWV0YWRhdGEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi9tZXRhZGF0YS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZU1ldGFkYXRhID0gZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IHZvaWQgMDsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IFN5bWJvbC5mb3IoIkBhbmd1bGFyL2NvcmU6d29ya3NwYWNlLWpzb24iKTsKICAgIGZ1bmN0aW9uIGVzY2FwZUtleShrZXkpIHsKICAgICAgcmV0dXJuIGtleS5yZXBsYWNlKCJ+IiwgIn4wIikucmVwbGFjZSgiLyIsICJ+MSIpOwogICAgfQogICAgdmFyIEpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IGNsYXNzIHsKICAgICAgZmlsZVBhdGg7CiAgICAgIGFzdDsKICAgICAgcmF3OwogICAgICBjaGFuZ2VzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgaGFzTGVnYWN5VGFyZ2V0c05hbWUgPSB0cnVlOwogICAgICBjb25zdHJ1Y3RvcihmaWxlUGF0aCwgYXN0LCByYXcpIHsKICAgICAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7CiAgICAgICAgdGhpcy5hc3QgPSBhc3Q7CiAgICAgICAgdGhpcy5yYXcgPSByYXc7CiAgICAgIH0KICAgICAgZ2V0IGhhc0NoYW5nZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplID4gMDsKICAgICAgfQogICAgICBnZXQgY2hhbmdlQ291bnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplOwogICAgICB9CiAgICAgIGdldE5vZGVWYWx1ZUZyb21Bc3QocGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKSh0aGlzLmFzdCwgcGF0aCk7CiAgICAgICAgcmV0dXJuIG5vZGUgJiYgKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkobm9kZSk7CiAgICAgIH0KICAgICAgZmluZENoYW5nZXNGb3JQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5jaGFuZ2VzLmdldChwYXRoKTsKICAgICAgfQogICAgICBhZGRDaGFuZ2UoanNvblBhdGgsIHZhbHVlLCB0eXBlMikgewogICAgICAgIGxldCBjdXJyZW50UGF0aCA9ICIiOwogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBqc29uUGF0aC5sZW5ndGggLSAxOyBpbmRleCsrKSB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IGN1cnJlbnRQYXRoICsgIi8iICsgZXNjYXBlS2V5KGpzb25QYXRoW2luZGV4XSk7CiAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VzLmhhcyhjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoS2V5ID0gIi8iICsganNvblBhdGgubWFwKChrKSA9PiBlc2NhcGVLZXkoaykpLmpvaW4oIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmNoYW5nZXMua2V5cygpKSB7CiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgocGF0aEtleSArICIvIikpIHsKICAgICAgICAgICAgdGhpcy5jaGFuZ2VzLmRlbGV0ZShrZXkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KHBhdGhLZXksIHsganNvblBhdGgsIHR5cGU6IHR5cGUyLCB2YWx1ZSB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IEpzb25Xb3Jrc3BhY2VNZXRhZGF0YTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcwp2YXIgcmVxdWlyZV91dGlsaXRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlVmlydHVhbEFzdE9iamVjdCA9IGNyZWF0ZVZpcnR1YWxBc3RPYmplY3Q7CiAgICB2YXIganNvbl8xID0gcmVxdWlyZV9qc29uKCk7CiAgICBmdW5jdGlvbiBjcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KHJvb3QsIG9wdGlvbnMgPSB7fSkgewogICAgICBjb25zdCByZXBvcnRlciA9IChwYXRoLCB0YXJnZXQsIG9sZFZhbHVlLCBuZXdWYWx1ZSkgPT4gewogICAgICAgIGlmICghb3B0aW9ucy5saXN0ZW5lcikgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAob2xkVmFsdWUgPT09IG5ld1ZhbHVlIHx8IEpTT04uc3RyaW5naWZ5KG9sZFZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkobmV3VmFsdWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhcmdldCkpIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aC5zbGljZSgwLCAtMSksIHRhcmdldCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aCwgbmV3VmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIGNyZWF0ZShBcnJheS5pc0FycmF5KHJvb3QpID8gWy4uLnJvb3RdIDogeyAuLi5yb290IH0sIFtdLCByZXBvcnRlciwgbmV3IFNldChvcHRpb25zLmV4Y2x1ZGUpLCBvcHRpb25zLmluY2x1ZGU/Lmxlbmd0aCA/IG5ldyBTZXQob3B0aW9ucy5pbmNsdWRlKSA6IHZvaWQgMCk7CiAgICB9CiAgICBmdW5jdGlvbiBjcmVhdGUob2JqLCBwYXRoLCByZXBvcnRlciwgZXhjbHVkZWQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpLCBpbmNsdWRlZCkgewogICAgICByZXR1cm4gbmV3IFByb3h5KG9iaiwgewogICAgICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcCk7CiAgICAgICAgfSwKICAgICAgICBoYXModGFyZ2V0LCBwKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiIHx8IGV4Y2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXModGFyZ2V0LCBwKTsKICAgICAgICB9LAogICAgICAgIGdldCh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIGpzb25fMS5pc0pzb25PYmplY3QpKHZhbHVlKSAmJiAhKHZhbHVlIGluc3RhbmNlb2YgTWFwKSB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICByZXR1cm4gY3JlYXRlKHZhbHVlLCBbLi4ucGF0aCwgcF0sIHJlcG9ydGVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNldCh0YXJnZXQsIHAsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoZXhjbHVkZWQuaGFzKHApIHx8IGluY2x1ZGVkICYmICFpbmNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlUHJvcGVydHk/Lih0YXJnZXQsIHApID8/IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAoUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSkpIHsKICAgICAgICAgICAgcmVwb3J0ZXIoWy4uLnBhdGgsIHBdLCB0YXJnZXQsIGV4aXN0aW5nVmFsdWUsIHZhbHVlKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSwKICAgICAgICBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXhpc3RpbmdWYWx1ZSA9IGdldEN1cnJlbnRWYWx1ZSh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGFyZ2V0LCBwKSkgewogICAgICAgICAgICByZXBvcnRlcihbLi4ucGF0aCwgcF0sIHRhcmdldCwgZXhpc3RpbmdWYWx1ZSwgdm9pZCAwKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9LAogICAgICAgIGRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcykgewogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHAsIGF0dHJpYnV0ZXMpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0sCiAgICAgICAgb3duS2V5cyh0YXJnZXQpIHsKICAgICAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModGFyZ2V0KS5maWx0ZXIoKHApID0+ICFleGNsdWRlZC5oYXMocCkgJiYgKCFpbmNsdWRlZCB8fCBpbmNsdWRlZC5oYXMocCkpKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcHJvcGVydHkpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSAmJiBpc0Zpbml0ZSgrcHJvcGVydHkpKSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFsrcHJvcGVydHldOwogICAgICB9CiAgICAgIGlmICh0YXJnZXQgJiYgcHJvcGVydHkgaW4gdGFyZ2V0KSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFtwcm9wZXJ0eV07CiAgICAgIH0KICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcwp2YXIgcmVxdWlyZV9yZWFkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVhZEpzb25Xb3Jrc3BhY2UgPSByZWFkSnNvbldvcmtzcGFjZTsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgZGVmaW5pdGlvbnNfMSA9IHJlcXVpcmVfZGVmaW5pdGlvbnMoKTsKICAgIHZhciBtZXRhZGF0YV8xID0gcmVxdWlyZV9tZXRhZGF0YTIoKTsKICAgIHZhciB1dGlsaXRpZXNfMSA9IHJlcXVpcmVfdXRpbGl0aWVzKCk7CiAgICB2YXIgQU5HVUxBUl9XT1JLU1BBQ0VfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAibmV3UHJvamVjdFJvb3QiLCAic2NoZW1hdGljcyJdKTsKICAgIHZhciBBTkdVTEFSX1BST0pFQ1RfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAic2NoZW1hdGljcyIsICJwcm9qZWN0VHlwZSIsICJpMThuIl0pOwogICAgYXN5bmMgZnVuY3Rpb24gcmVhZEpzb25Xb3Jrc3BhY2UocGF0aCwgaG9zdCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IHJhdyA9IGF3YWl0IGhvc3QucmVhZEZpbGUocGF0aCk7CiAgICAgIGlmIChyYXcgPT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIHJlYWQgd29ya3NwYWNlIGZpbGUuIik7CiAgICAgIH0KICAgICAgY29uc3QgYXN0ID0gKDAsIGpzb25jX3BhcnNlcl8xLnBhcnNlVHJlZSkocmF3LCB2b2lkIDAsIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlLCBkaXNhbGxvd0NvbW1lbnRzOiBmYWxzZSB9KTsKICAgICAgaWYgKGFzdD8udHlwZSAhPT0gIm9iamVjdCIgfHwgIWFzdC5jaGlsZHJlbikgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSW52YWxpZCB3b3Jrc3BhY2UgZmlsZSAtIGV4cGVjdGVkIEpTT04gb2JqZWN0LiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb25Ob2RlID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikoYXN0LCBbInZlcnNpb24iXSk7CiAgICAgIGlmICghdmVyc2lvbk5vZGUpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gZm9ybWF0IC0gdmVyc2lvbiBzcGVjaWZpZXIgbm90IGZvdW5kLiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb24gPSB2ZXJzaW9uTm9kZS52YWx1ZTsKICAgICAgaWYgKHZlcnNpb24gIT09IDEpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9ybWF0IHZlcnNpb24gZGV0ZWN0ZWQgLSBFeHBlY3RlZDpbIDEgXSBGb3VuZDogWyAke3ZlcnNpb259IF1gKTsKICAgICAgfQogICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgIGhvc3QsCiAgICAgICAgbWV0YWRhdGE6IG5ldyBtZXRhZGF0YV8xLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YShwYXRoLCBhc3QsIHJhdyksCiAgICAgICAgdHJhY2tDaGFuZ2VzOiB0cnVlLAogICAgICAgIHVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zOiAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICAgICAuLi5BTkdVTEFSX1dPUktTUEFDRV9FWFRFTlNJT05TLAogICAgICAgICAgLi4ub3B0aW9ucy5hbGxvd2VkV29ya3NwYWNlRXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIHVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9uczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAgICAgLi4uQU5HVUxBUl9QUk9KRUNUX0VYVEVOU0lPTlMsCiAgICAgICAgICAuLi5vcHRpb25zLmFsbG93ZWRQcm9qZWN0RXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIGVycm9yKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7CiAgICAgICAgfSwKICAgICAgICB3YXJuKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICBjb25zdCB3b3Jrc3BhY2UgPSBwYXJzZVdvcmtzcGFjZShhc3QsIGNvbnRleHQpOwogICAgICByZXR1cm4gd29ya3NwYWNlOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VXb3Jrc3BhY2Uod29ya3NwYWNlTm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgcHJvamVjdHM7CiAgICAgIGxldCBleHRlbnNpb25zOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICB9CiAgICAgIGNvbnN0IHdvcmtzcGFjZU5vZGVWYWx1ZSA9ICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHdvcmtzcGFjZU5vZGUpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMod29ya3NwYWNlTm9kZVZhbHVlKSkgewogICAgICAgIGlmIChuYW1lID09PSAiJHNjaGVtYSIgfHwgbmFtZSA9PT0gInZlcnNpb24iKSB7CiAgICAgICAgfSBlbHNlIGlmIChuYW1lID09PSAicHJvamVjdHMiKSB7CiAgICAgICAgICBjb25zdCBub2RlcyA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHdvcmtzcGFjZU5vZGUsIFsicHJvamVjdHMiXSk7CiAgICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpIHx8ICFub2RlcykgewogICAgICAgICAgICBjb250ZXh0LmVycm9yKCdJbnZhbGlkICJwcm9qZWN0cyIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC4nLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHJvamVjdHMgPSBwYXJzZVByb2plY3RzT2JqZWN0KG5vZGVzLCBjb250ZXh0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zLmhhcyhuYW1lKSAmJiAhL15bYS16XXsxLDN9LS4qLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICAgIGNvbnRleHQud2FybihgV29ya3NwYWNlIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkgZm91bmQuYCwgbmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXh0ZW5zaW9ucykgewogICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSkgPT4gewogICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgbmFtZV0sIG5ld1ZhbHVlLCAicHJvamVjdCIpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgY29uc3QgcHJvamVjdENvbGxlY3Rpb24gPSBuZXcgZGVmaW5pdGlvbnNfMS5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24ocHJvamVjdHMsIGNvbGxlY3Rpb25MaXN0ZW5lcik7CiAgICAgIHJldHVybiB7CiAgICAgICAgW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF06IGpzb25NZXRhZGF0YSwKICAgICAgICBwcm9qZWN0czogcHJvamVjdENvbGxlY3Rpb24sCiAgICAgICAgLy8gSWYgbm90IHRyYWNraW5nIGNoYW5nZXMgdGhlIGBleHRlbnNpb25zYCB2YXJpYWJsZSB3aWxsIGNvbnRhaW4gdGhlIHBhcnNlZAogICAgICAgIC8vIHZhbHVlcy4gIE90aGVyd2lzZSB0aGUgZXh0ZW5zaW9ucyBhcmUgdHJhY2tlZCB2aWEgYSB2aXJ0dWFsIEFTVCBvYmplY3QuCiAgICAgICAgZXh0ZW5zaW9uczogZXh0ZW5zaW9ucyA/PyAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkod29ya3NwYWNlTm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbIiRzY2hlbWEiLCAidmVyc2lvbiIsICJwcm9qZWN0cyJdLAogICAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShwYXRoLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlUHJvamVjdHNPYmplY3QocHJvamVjdHNOb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcygoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKShwcm9qZWN0c05vZGUpKSkgewogICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdHNOb2RlLCBbbmFtZV0pOwogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICBjb250ZXh0Lndhcm4oIlNraXBwaW5nIGludmFsaWQgcHJvamVjdCB2YWx1ZTsgZXhwZWN0ZWQgYW4gb2JqZWN0LiIsIHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBwcm9qZWN0c1tuYW1lXSA9IHBhcnNlUHJvamVjdChuYW1lLCBub2RlcywgY29udGV4dCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHByb2plY3RzOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0Tm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgdGFyZ2V0czsKICAgICAgbGV0IGhhc1RhcmdldHMgPSBmYWxzZTsKICAgICAgbGV0IGV4dGVuc2lvbnM7CiAgICAgIGxldCBwcm9wZXJ0aWVzOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIHByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgfQogICAgICBjb25zdCBwcm9qZWN0Tm9kZVZhbHVlID0gKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkocHJvamVjdE5vZGUpOwogICAgICBpZiAoISgicm9vdCIgaW4gcHJvamVjdE5vZGVWYWx1ZSkpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFByb2plY3QgIiR7cHJvamVjdE5hbWV9IiBpcyBtaXNzaW5nIGEgcmVxdWlyZWQgcHJvcGVydHkgInJvb3QiLmApOwogICAgICB9CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9qZWN0Tm9kZVZhbHVlKSkgewogICAgICAgIHN3aXRjaCAobmFtZSkgewogICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICBjYXNlICJhcmNoaXRlY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdE5vZGUsIFtuYW1lXSk7CiAgICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICAgICAgY29udGV4dC5lcnJvcihgSW52YWxpZCAiJHtuYW1lfSIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC5gLCB2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaGFzVGFyZ2V0cyA9IHRydWU7CiAgICAgICAgICAgIHRhcmdldHMgPSBwYXJzZVRhcmdldHNPYmplY3QocHJvamVjdE5hbWUsIG5vZGVzLCBjb250ZXh0KTsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmhhc0xlZ2FjeVRhcmdldHNOYW1lID0gbmFtZSA9PT0gImFyY2hpdGVjdCI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgY2FzZSAic291cmNlUm9vdCI6CiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgY29udGV4dC53YXJuKGBQcm9qZWN0IHByb3BlcnR5ICIke25hbWV9IiBzaG91bGQgYmUgYSBzdHJpbmcuYCwgdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwcm9wZXJ0aWVzKSB7CiAgICAgICAgICAgICAgcHJvcGVydGllc1tuYW1lXSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9ucy5oYXMobmFtZSkgJiYgIS9eW2Etel17MSwzfS0uKi8udGVzdChuYW1lKSkgewogICAgICAgICAgICAgIGNvbnRleHQud2FybihgUHJvamVjdCAnJHtwcm9qZWN0TmFtZX0nIGNvbnRhaW5zIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkuYCwgbmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHsKICAgICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSwgY29sbGVjdGlvbikgPT4gewogICAgICAgICAgaWYgKGhhc1RhcmdldHMpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsICJ0YXJnZXRzIiwgbmFtZV0sIG5ld1ZhbHVlLCAidGFyZ2V0Iik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgInRhcmdldHMiXSwgY29sbGVjdGlvbiwgInRhcmdldGNvbGxlY3Rpb24iKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0IGJhc2UgPSB7CiAgICAgICAgdGFyZ2V0czogbmV3IGRlZmluaXRpb25zXzEuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24odGFyZ2V0cywgY29sbGVjdGlvbkxpc3RlbmVyKSwKICAgICAgICAvLyBJZiBub3QgdHJhY2tpbmcgY2hhbmdlcyB0aGUgYGV4dGVuc2lvbnNgIHZhcmlhYmxlIHdpbGwgY29udGFpbiB0aGUgcGFyc2VkCiAgICAgICAgLy8gdmFsdWVzLiAgT3RoZXJ3aXNlIHRoZSBleHRlbnNpb25zIGFyZSB0cmFja2VkIHZpYSBhIHZpcnR1YWwgQVNUIG9iamVjdC4KICAgICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbImFyY2hpdGVjdCIsICJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgInRhcmdldHMiXSwKICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAuLi5wYXRoXSwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIH07CiAgICAgIGNvbnN0IGJhc2VLZXlzID0gbmV3IFNldChPYmplY3Qua2V5cyhiYXNlKSk7CiAgICAgIGNvbnN0IHByb2plY3QgPSBwcm9wZXJ0aWVzID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgaW5jbHVkZTogWyJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgLi4uYmFzZUtleXNdLAogICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoIWJhc2VLZXlzLmhhcyhwYXRoWzBdKSkgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgLi4ucGF0aF0sIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihwcm9qZWN0LCBiYXNlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlVGFyZ2V0c09iamVjdChwcm9qZWN0TmFtZSwgdGFyZ2V0c05vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QganNvbk1ldGFkYXRhID0gY29udGV4dC5tZXRhZGF0YTsKICAgICAgY29uc3QgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkodGFyZ2V0c05vZGUpKSkgewogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIGNvbnRleHQud2FybigiU2tpcHBpbmcgaW52YWxpZCB0YXJnZXQgdmFsdWU7IGV4cGVjdGVkIGFuIG9iamVjdC4iLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgICB0YXJnZXRzW25hbWVdID0gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHZhbHVlLCB7CiAgICAgICAgICAgIGluY2x1ZGU6IFsiYnVpbGRlciIsICJvcHRpb25zIiwgImNvbmZpZ3VyYXRpb25zIiwgImRlZmF1bHRDb25maWd1cmF0aW9uIl0sCiAgICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlMikgewogICAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAidGFyZ2V0cyIsIG5hbWUsIC4uLnBhdGhdLCB2YWx1ZTIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGFyZ2V0c1tuYW1lXSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gdGFyZ2V0czsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcwp2YXIgcmVxdWlyZV93cml0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVKc29uV29ya3NwYWNlID0gd3JpdGVKc29uV29ya3NwYWNlOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgbm9kZV9vc18xID0gcmVxdWlyZSgibm9kZTpvcyIpOwogICAgdmFyIG1ldGFkYXRhXzEgPSByZXF1aXJlX21ldGFkYXRhMigpOwogICAgYXN5bmMgZnVuY3Rpb24gd3JpdGVKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgaG9zdCwgcGF0aCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IG1ldGFkYXRhID0gd29ya3NwYWNlW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF07CiAgICAgIGlmIChtZXRhZGF0YSkgewogICAgICAgIGlmICghbWV0YWRhdGEuaGFzQ2hhbmdlcykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBkYXRhID0gdXBkYXRlSnNvbldvcmtzcGFjZShtZXRhZGF0YSk7CiAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGVGaWxlKHBhdGggPz8gbWV0YWRhdGEuZmlsZVBhdGgsIGRhdGEpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmICghcGF0aCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJwYXRoIG9wdGlvbiBpcyByZXF1aXJlZCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBvYmogPSBjb252ZXJ0SnNvbldvcmtzcGFjZSh3b3Jrc3BhY2UsIG9wdGlvbnMuc2NoZW1hKTsKICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5zdHJpbmdpZnkob2JqLCBudWxsLCAyKTsKICAgICAgICByZXR1cm4gaG9zdC53cml0ZUZpbGUocGF0aCwgZGF0YSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgc2NoZW1hMikgewogICAgICBjb25zdCBvYmogPSB7CiAgICAgICAgJHNjaGVtYTogc2NoZW1hMiB8fCAiLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL2xpYi9jb25maWcvc2NoZW1hLmpzb24iLAogICAgICAgIHZlcnNpb246IDEsCiAgICAgICAgLi4ud29ya3NwYWNlLmV4dGVuc2lvbnMsCiAgICAgICAgLi4uaXNFbXB0eSh3b3Jrc3BhY2UucHJvamVjdHMpID8ge30gOiB7IHByb2plY3RzOiBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHdvcmtzcGFjZS5wcm9qZWN0cykgfQogICAgICB9OwogICAgICByZXR1cm4gb2JqOwogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbihjb2xsZWN0aW9uKSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCBwcm9qZWN0XSBvZiBjb2xsZWN0aW9uKSB7CiAgICAgICAgcHJvamVjdHNbcHJvamVjdE5hbWVdID0gY29udmVydEpzb25Qcm9qZWN0KHByb2plY3QpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uUHJvamVjdChwcm9qZWN0KSB7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBpZiAocHJvamVjdC50YXJnZXRzLnNpemUgPiAwKSB7CiAgICAgICAgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIGZvciAoY29uc3QgW3RhcmdldE5hbWUsIHRhcmdldF0gb2YgcHJvamVjdC50YXJnZXRzKSB7CiAgICAgICAgICB0YXJnZXRzW3RhcmdldE5hbWVdID0gY29udmVydEpzb25UYXJnZXQodGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3Qgb2JqID0gewogICAgICAgIC4uLnByb2plY3QuZXh0ZW5zaW9ucywKICAgICAgICByb290OiBwcm9qZWN0LnJvb3QsCiAgICAgICAgLi4ucHJvamVjdC5zb3VyY2VSb290ID09PSB2b2lkIDAgPyB7fSA6IHsgc291cmNlUm9vdDogcHJvamVjdC5zb3VyY2VSb290IH0sCiAgICAgICAgLi4ucHJvamVjdC5wcmVmaXggPT09IHZvaWQgMCA/IHt9IDogeyBwcmVmaXg6IHByb2plY3QucHJlZml4IH0sCiAgICAgICAgLi4udGFyZ2V0cyA9PT0gdm9pZCAwID8ge30gOiB7IGFyY2hpdGVjdDogdGFyZ2V0cyB9CiAgICAgIH07CiAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBmdW5jdGlvbiBpc0VtcHR5KG9iaikgewogICAgICByZXR1cm4gb2JqID09PSB2b2lkIDAgfHwgT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBidWlsZGVyOiB0YXJnZXQuYnVpbGRlciwKICAgICAgICAuLi5pc0VtcHR5KHRhcmdldC5vcHRpb25zKSA/IHt9IDogeyBvcHRpb25zOiB0YXJnZXQub3B0aW9ucyB9LAogICAgICAgIC4uLmlzRW1wdHkodGFyZ2V0LmNvbmZpZ3VyYXRpb25zKSA/IHt9IDogeyBjb25maWd1cmF0aW9uczogdGFyZ2V0LmNvbmZpZ3VyYXRpb25zIH0sCiAgICAgICAgLi4udGFyZ2V0LmRlZmF1bHRDb25maWd1cmF0aW9uID09PSB2b2lkIDAgPyB7fSA6IHsgZGVmYXVsdENvbmZpZ3VyYXRpb246IHRhcmdldC5kZWZhdWx0Q29uZmlndXJhdGlvbiB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24oY29sbGVjdGlvbikgewogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCB0YXJnZXRdIG9mIGNvbGxlY3Rpb24pIHsKICAgICAgICB0YXJnZXRzW3Byb2plY3ROYW1lXSA9IGNvbnZlcnRKc29uVGFyZ2V0KHRhcmdldCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpIHsKICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIHN3aXRjaCAodHlwZTIpIHsKICAgICAgICBjYXNlICJwcm9qZWN0IjoKICAgICAgICAgIHJldHVybiBjb252ZXJ0SnNvblByb2plY3QodmFsdWUpOwogICAgICAgIGNhc2UgInByb2plY3Rjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgcHJvamVjdHMgPSBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHZhbHVlKTsKICAgICAgICAgIHJldHVybiBpc0VtcHR5KHByb2plY3RzKSA/IHZvaWQgMCA6IHByb2plY3RzOwogICAgICAgIH0KICAgICAgICBjYXNlICJ0YXJnZXQiOgogICAgICAgICAgcmV0dXJuIGNvbnZlcnRKc29uVGFyZ2V0KHZhbHVlKTsKICAgICAgICBjYXNlICJ0YXJnZXRjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgdGFyZ2V0cyA9IGNvbnZlcnRKc29uVGFyZ2V0Q29sbGVjdGlvbih2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gaXNFbXB0eSh0YXJnZXRzKSA/IHZvaWQgMCA6IHRhcmdldHM7CiAgICAgICAgfQogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUpzb25Xb3Jrc3BhY2UobWV0YWRhdGEpIHsKICAgICAgbGV0IHsgcmF3OiBjb250ZW50IH0gPSBtZXRhZGF0YTsKICAgICAgY29uc3QgeyBjaGFuZ2VzLCBoYXNMZWdhY3lUYXJnZXRzTmFtZSB9ID0gbWV0YWRhdGE7CiAgICAgIGZvciAoY29uc3QgeyBqc29uUGF0aCwgdmFsdWUsIHR5cGU6IHR5cGUyIH0gb2YgY2hhbmdlcy52YWx1ZXMoKSkgewogICAgICAgIGlmIChoYXNMZWdhY3lUYXJnZXRzTmFtZSAmJiBqc29uUGF0aFsyXSA9PT0gInRhcmdldHMiKSB7CiAgICAgICAgICBqc29uUGF0aFsyXSA9ICJhcmNoaXRlY3QiOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBqc29uY19wYXJzZXJfMS5tb2RpZnkpKGNvbnRlbnQsIGpzb25QYXRoLCBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpLCB7CiAgICAgICAgICBmb3JtYXR0aW5nT3B0aW9uczogewogICAgICAgICAgICBpbnNlcnRTcGFjZXM6IHRydWUsCiAgICAgICAgICAgIHRhYlNpemU6IDIsCiAgICAgICAgICAgIGVvbDogZ2V0RU9MKGNvbnRlbnQpCiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgY29udGVudCA9ICgwLCBqc29uY19wYXJzZXJfMS5hcHBseUVkaXRzKShjb250ZW50LCBlZGl0cyk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbnRlbnQ7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRFT0woY29udGVudCkgewogICAgICBjb25zdCBDUkxGID0gIlxyXG4iOwogICAgICBjb25zdCBMRiA9ICJcbiI7CiAgICAgIGNvbnN0IG5ld2xpbmVzID0gY29udGVudC5tYXRjaCgvKD86XHI/XG4pL2cpOwogICAgICBpZiAobmV3bGluZXM/Lmxlbmd0aCkgewogICAgICAgIGNvbnN0IGNybGYgPSBuZXdsaW5lcy5maWx0ZXIoKGwpID0+IGwgPT09IENSTEYpLmxlbmd0aDsKICAgICAgICBjb25zdCBsZiA9IG5ld2xpbmVzLmxlbmd0aCAtIGNybGY7CiAgICAgICAgcmV0dXJuIGNybGYgPiBsZiA/IENSTEYgOiBMRjsKICAgICAgfQogICAgICByZXR1cm4gbm9kZV9vc18xLkVPTDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gdm9pZCAwOwogICAgZXhwb3J0czIuX3Rlc3RfYWRkV29ya3NwYWNlRmlsZSA9IF90ZXN0X2FkZFdvcmtzcGFjZUZpbGU7CiAgICBleHBvcnRzMi5fdGVzdF9yZW1vdmVXb3Jrc3BhY2VGaWxlID0gX3Rlc3RfcmVtb3ZlV29ya3NwYWNlRmlsZTsKICAgIGV4cG9ydHMyLnJlYWRXb3Jrc3BhY2UgPSByZWFkV29ya3NwYWNlOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSB3cml0ZVdvcmtzcGFjZTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIHZhciByZWFkZXJfMSA9IHJlcXVpcmVfcmVhZGVyKCk7CiAgICB2YXIgd3JpdGVyXzEgPSByZXF1aXJlX3dyaXRlcigpOwogICAgdmFyIGZvcm1hdExvb2t1cCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgdmFyIFdvcmtzcGFjZUZvcm1hdDsKICAgIChmdW5jdGlvbihXb3Jrc3BhY2VGb3JtYXQyKSB7CiAgICAgIFdvcmtzcGFjZUZvcm1hdDJbV29ya3NwYWNlRm9ybWF0MlsiSlNPTiJdID0gMF0gPSAiSlNPTiI7CiAgICB9KShXb3Jrc3BhY2VGb3JtYXQgfHwgKGV4cG9ydHMyLldvcmtzcGFjZUZvcm1hdCA9IFdvcmtzcGFjZUZvcm1hdCA9IHt9KSk7CiAgICBmdW5jdGlvbiBfdGVzdF9hZGRXb3Jrc3BhY2VGaWxlKG5hbWUsIGZvcm1hdCkgewogICAgICB3b3Jrc3BhY2VGaWxlc1tuYW1lXSA9IGZvcm1hdDsKICAgIH0KICAgIGZ1bmN0aW9uIF90ZXN0X3JlbW92ZVdvcmtzcGFjZUZpbGUobmFtZSkgewogICAgICBkZWxldGUgd29ya3NwYWNlRmlsZXNbbmFtZV07CiAgICB9CiAgICB2YXIgd29ya3NwYWNlRmlsZXMgPSB7CiAgICAgICJhbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTiwKICAgICAgIi5hbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTgogICAgfTsKICAgIGFzeW5jIGZ1bmN0aW9uIHJlYWRXb3Jrc3BhY2UocGF0aCwgaG9zdCwgZm9ybWF0KSB7CiAgICAgIGlmIChhd2FpdCBob3N0LmlzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgY29uc3QgZGlyZWN0b3J5ID0gKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgIGZvciAoY29uc3QgW25hbWUsIG5hbWVGb3JtYXRdIG9mIE9iamVjdC5lbnRyaWVzKHdvcmtzcGFjZUZpbGVzKSkgewogICAgICAgICAgaWYgKGZvcm1hdCAhPT0gdm9pZCAwICYmIGZvcm1hdCAhPT0gbmFtZUZvcm1hdCkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHBvdGVudGlhbCA9ICgwLCB2aXJ0dWFsX2ZzXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHZpcnR1YWxfZnNfMS5qb2luKShkaXJlY3RvcnksIG5hbWUpKTsKICAgICAgICAgIGlmIChhd2FpdCBob3N0LmlzRmlsZShwb3RlbnRpYWwpKSB7CiAgICAgICAgICAgIHBhdGggPSBwb3RlbnRpYWw7CiAgICAgICAgICAgIGZvcm1hdCA9IG5hbWVGb3JtYXQ7CiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghZm91bmQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIGxvY2F0ZSBhIHdvcmtzcGFjZSBmaWxlIGZvciB3b3Jrc3BhY2UgcGF0aC4gQXJlIHlvdSBtaXNzaW5nIGFuIGBhbmd1bGFyLmpzb25gIG9yIGAuYW5ndWxhci5qc29uYCBmaWxlPyIpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IGZpbGVuYW1lID0gKDAsIHZpcnR1YWxfZnNfMS5iYXNlbmFtZSkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgICBpZiAoZmlsZW5hbWUgaW4gd29ya3NwYWNlRmlsZXMpIHsKICAgICAgICAgIGZvcm1hdCA9IHdvcmtzcGFjZUZpbGVzW2ZpbGVuYW1lXTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gZGV0ZXJtaW5lIGZvcm1hdCBmb3Igd29ya3NwYWNlIHBhdGguIik7CiAgICAgIH0KICAgICAgbGV0IHdvcmtzcGFjZTsKICAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICAgICBjYXNlIFdvcmtzcGFjZUZvcm1hdC5KU09OOgogICAgICAgICAgd29ya3NwYWNlID0gYXdhaXQgKDAsIHJlYWRlcl8xLnJlYWRKc29uV29ya3NwYWNlKShwYXRoLCBob3N0KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgICAgZm9ybWF0TG9va3VwLnNldCh3b3Jrc3BhY2UsIFdvcmtzcGFjZUZvcm1hdC5KU09OKTsKICAgICAgcmV0dXJuIHsgd29ya3NwYWNlIH07CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZVdvcmtzcGFjZSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgsIGZvcm1hdCkgewogICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICBmb3JtYXQgPSBmb3JtYXRMb29rdXAuZ2V0KHdvcmtzcGFjZSk7CiAgICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkEgZm9ybWF0IGlzIHJlcXVpcmVkIGZvciBjdXN0b20gd29ya3NwYWNlIG9iamVjdHMuIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CiAgICAgICAgY2FzZSBXb3Jrc3BhY2VGb3JtYXQuSlNPTjoKICAgICAgICAgIHJldHVybiAoMCwgd3JpdGVyXzEud3JpdGVKc29uV29ya3NwYWNlKSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgpOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcwp2YXIgcmVxdWlyZV93b3Jrc3BhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSBleHBvcnRzMi5yZWFkV29ya3NwYWNlID0gZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IHZvaWQgMDsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2RlZmluaXRpb25zKCksIGV4cG9ydHMyKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3QyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjcmVhdGVXb3Jrc3BhY2VIb3N0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaG9zdF8xLmNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB9IH0pOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZTMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIldvcmtzcGFjZUZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5Xb3Jrc3BhY2VGb3JtYXQ7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVhZFdvcmtzcGFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5yZWFkV29ya3NwYWNlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndyaXRlV29ya3NwYWNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLndyaXRlV29ya3NwYWNlOwogICAgfSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndvcmtzcGFjZXMgPSBleHBvcnRzMi5sb2dnaW5nID0gZXhwb3J0czIuanNvbiA9IHZvaWQgMDsKICAgIHZhciBqc29uMiA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2pzb24oKSk7CiAgICBleHBvcnRzMi5qc29uID0ganNvbjI7CiAgICB2YXIgbG9nZ2luZyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2xvZ2dlcjIoKSk7CiAgICBleHBvcnRzMi5sb2dnaW5nID0gbG9nZ2luZzsKICAgIHZhciB3b3Jrc3BhY2VzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya3NwYWNlKCkpOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IHdvcmtzcGFjZXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfanNvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsczMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlydHVhbF9mcygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanMKdmFyIHJlcXVpcmVfaHRtbF9zZWxlY3RvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9odG1sLXNlbGVjdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgdW5pY29kZVJhbmdlcyA9IFsKICAgICAgWzE5MiwgMjE0XSwKICAgICAgWzIxNiwgMjQ2XSwKICAgICAgWzI0OCwgODkzXSwKICAgICAgWzg5NSwgODE5MV0sCiAgICAgIFs4MjA0LCA4MjA1XSwKICAgICAgWzgyNTUsIDgyNTZdLAogICAgICBbODMwNCwgODU5MV0sCiAgICAgIFsxMTI2NCwgMTIyNzFdLAogICAgICBbMTIyODksIDU1Mjk1XSwKICAgICAgWzYzNzQ0LCA2NDk3NV0sCiAgICAgIFs2NTAwOCwgNjU1MzNdLAogICAgICBbNjU1MzYsIDk4MzAzOV0KICAgIF07CiAgICBmdW5jdGlvbiBpc1ZhbGlkRWxlbWVudE5hbWUobmFtZSkgewogICAgICBsZXQgcmVnZXggPSAiXlthLXpBLVpdWyI7CiAgICAgIHJlZ2V4ICs9ICItLjAtOV9hLXpBLVpcXHV7Qjd9IjsKICAgICAgZm9yIChjb25zdCByYW5nZSBvZiB1bmljb2RlUmFuZ2VzKSB7CiAgICAgICAgcmVnZXggKz0gYFxcdXske3JhbmdlWzBdLnRvU3RyaW5nKDE2KX19LVxcdXske3JhbmdlWzFdLnRvU3RyaW5nKDE2KX19YDsKICAgICAgfQogICAgICByZWdleCArPSAiXSokIjsKICAgICAgcmV0dXJuIG5ldyBSZWdFeHAocmVnZXgsICJ1IikudGVzdChuYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmh0bWxTZWxlY3RvckZvcm1hdCA9IHsKICAgICAgbmFtZTogImh0bWwtc2VsZWN0b3IiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChuYW1lKSA9PiB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgJiYgaXNWYWxpZEVsZW1lbnROYW1lKG5hbWUpCiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanMKdmFyIHJlcXVpcmVfcGF0aDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHsKICAgICAgbmFtZTogInBhdGgiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChwYXRoKSA9PiB7CiAgICAgICAgICByZXR1cm4gcGF0aCA9PT0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0czIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IGV4cG9ydHMyLnBhdGhGb3JtYXQgPSBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgaHRtbF9zZWxlY3Rvcl8xID0gcmVxdWlyZV9odG1sX3NlbGVjdG9yKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoMigpOwogICAgdmFyIGh0bWxfc2VsZWN0b3JfMiA9IHJlcXVpcmVfaHRtbF9zZWxlY3RvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaHRtbFNlbGVjdG9yRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaHRtbF9zZWxlY3Rvcl8yLmh0bWxTZWxlY3RvckZvcm1hdDsKICAgIH0gfSk7CiAgICB2YXIgcGF0aF8yID0gcmVxdWlyZV9wYXRoMigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGF0aEZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhdGhfMi5wYXRoRm9ybWF0OwogICAgfSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IFtodG1sX3NlbGVjdG9yXzEuaHRtbFNlbGVjdG9yRm9ybWF0LCBwYXRoXzEucGF0aEZvcm1hdF07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJlZSA9IGV4cG9ydHMyLlRyZWVTeW1ib2wgPSBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gZXhwb3J0czIuTWVyZ2VTdHJhdGVneSA9IHZvaWQgMDsKICAgIHZhciBNZXJnZVN0cmF0ZWd5MjsKICAgIChmdW5jdGlvbihNZXJnZVN0cmF0ZWd5MykgewogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dPdmVyd3JpdGVDb25mbGljdCJdID0gMl0gPSAiQWxsb3dPdmVyd3JpdGVDb25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0NyZWF0aW9uQ29uZmxpY3QiXSA9IDRdID0gIkFsbG93Q3JlYXRpb25Db25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0RlbGV0ZUNvbmZsaWN0Il0gPSA4XSA9ICJBbGxvd0RlbGV0ZUNvbmZsaWN0IjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkRlZmF1bHQiXSA9IDBdID0gIkRlZmF1bHQiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siRXJyb3IiXSA9IDFdID0gIkVycm9yIjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkNvbnRlbnRPbmx5Il0gPSAyXSA9ICJDb250ZW50T25seSI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJPdmVyd3JpdGUiXSA9IDE0XSA9ICJPdmVyd3JpdGUiOwogICAgfSkoTWVyZ2VTdHJhdGVneTIgfHwgKGV4cG9ydHMyLk1lcmdlU3RyYXRlZ3kgPSBNZXJnZVN0cmF0ZWd5MiA9IHt9KSk7CiAgICBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gU3ltYm9sKCk7CiAgICBleHBvcnRzMi5UcmVlU3ltYm9sID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IGdsb2JhbFN5bWJvbCA9IHR5cGVvZiB3aW5kb3cgPT0gIm9iamVjdCIgJiYgd2luZG93LndpbmRvdyA9PT0gd2luZG93ICYmIHdpbmRvdy5TeW1ib2wgfHwgdHlwZW9mIHNlbGYgPT0gIm9iamVjdCIgJiYgc2VsZi5zZWxmID09PSBzZWxmICYmIHNlbGYuU3ltYm9sIHx8IHR5cGVvZiBnbG9iYWwgPT0gIm9iamVjdCIgJiYgZ2xvYmFsLmdsb2JhbCA9PT0gZ2xvYmFsICYmIGdsb2JhbC5TeW1ib2w7CiAgICAgIGlmICghZ2xvYmFsU3ltYm9sKSB7CiAgICAgICAgcmV0dXJuIFN5bWJvbCgic2NoZW1hdGljLXRyZWUiKTsKICAgICAgfQogICAgICBpZiAoIWdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlKSB7CiAgICAgICAgZ2xvYmFsU3ltYm9sLnNjaGVtYXRpY1RyZWUgPSBTeW1ib2woInNjaGVtYXRpYy10cmVlIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlOwogICAgfSgpOwogICAgZXhwb3J0czIuVHJlZSA9IE9iamVjdC5mcmVlemUoewogICAgICBpc1RyZWUobWF5YmVUcmVlKSB7CiAgICAgICAgcmV0dXJuIGV4cG9ydHMyLlRyZWVTeW1ib2wgaW4gbWF5YmVUcmVlOwogICAgICB9CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZXhjZXB0aW9uL2V4Y2VwdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gZXhwb3J0czIuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuU2NoZW1hdGljc0V4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIFNjaGVtYXRpY3NFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gU2NoZW1hdGljc0V4Y2VwdGlvbjsKICAgIHZhciBGaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgYWxyZWFkeSBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uOwogICAgdmFyIENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQ29udGVudCBhdCBwYXRoICIke3BhdGh9IiBoYXMgY2hhbmdlZCBiZXR3ZWVuIHRoZSBzdGFydCBhbmQgdGhlIGVuZCBvZiBhbiB1cGRhdGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEludmFsaWQgcmVjb3JkIGluc3RhbmNlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb247CiAgICB2YXIgTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYEEgbWVyZ2UgY29uZmxpY3RlZCBvbiBwYXRoICIke3BhdGh9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24gPSBNZXJnZUNvbmZsaWN0RXhjZXB0aW9uOwogICAgdmFyIFVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJXb3JrZmxvdyBkaWQgbm90IGV4ZWN1dGUgc3VjY2Vzc2Z1bGx5LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBVbnN1Y2Nlc3NmdWxXb3JrZmxvd0V4ZWN1dGlvbjsKICAgIHZhciBVbmltcGxlbWVudGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJUaGlzIGZ1bmN0aW9uIGlzIHVuaW1wbGVtZW50ZWQuIik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VbmltcGxlbWVudGVkRXhjZXB0aW9uID0gVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMKdmFyIHJlcXVpcmVfZGVsZWdhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRlbGVnYXRlVHJlZSA9IHZvaWQgMDsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIERlbGVnYXRlVHJlZSA9IGNsYXNzIHsKICAgICAgX290aGVyOwogICAgICBjb25zdHJ1Y3Rvcihfb3RoZXIpIHsKICAgICAgICB0aGlzLl9vdGhlciA9IF9vdGhlcjsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJyYW5jaCgpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIHRoaXMuX290aGVyLm1lcmdlKG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnJvb3Q7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIucmVhZFRleHQocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkSnNvbihwYXRoKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZ2V0KHBhdGgpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmdldERpcihwYXRoKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJlZ2luVXBkYXRlKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuYXBwbHkoYWN0aW9uLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVsZWdhdGVUcmVlID0gRGVsZWdhdGVUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcwp2YXIgcmVxdWlyZV9lbnRyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBTaW1wbGVGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9wYXRoOwogICAgICBfY29udGVudDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2NvbnRlbnQgPSBfY29udGVudDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IFNpbXBsZUZpbGVFbnRyeTsKICAgIHZhciBMYXp5RmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfcGF0aDsKICAgICAgX2xvYWQ7CiAgICAgIF9jb250ZW50ID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9sb2FkKSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2xvYWQgPSBfbG9hZDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudCB8fCAodGhpcy5fY29udGVudCA9IHRoaXMuX2xvYWQodGhpcy5fcGF0aCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IExhenlGaWxlRW50cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0BqcmlkZ2V3ZWxsLXNvdXJjZW1hcC1jb2RlYy1ucG0tMS41LjAtZGZkOTEyNmQ3MS0xMC56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMKdmFyIHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtMTAuemlwL25vZGVfbW9kdWxlcy9AanJpZGdld2VsbC9zb3VyY2VtYXAtY29kZWMvZGlzdC9zb3VyY2VtYXAtY29kZWMudW1kLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGdsb2JhbDIsIGZhY3RvcnkpIHsKICAgICAgdHlwZW9mIGV4cG9ydHMyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMiAhPT0gInVuZGVmaW5lZCIgPyBmYWN0b3J5KGV4cG9ydHMyKSA6IHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbImV4cG9ydHMiXSwgZmFjdG9yeSkgOiAoZ2xvYmFsMiA9IHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiA/IGdsb2JhbFRoaXMgOiBnbG9iYWwyIHx8IHNlbGYsIGZhY3RvcnkoZ2xvYmFsMi5zb3VyY2VtYXBDb2RlYyA9IHt9KSk7CiAgICB9KShleHBvcnRzMiwgZnVuY3Rpb24oZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBjb25zdCBjb21tYSA9ICIsIi5jaGFyQ29kZUF0KDApOwogICAgICBjb25zdCBzZW1pY29sb24gPSAiOyIuY2hhckNvZGVBdCgwKTsKICAgICAgY29uc3QgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgICAgIGNvbnN0IGludFRvQ2hhciA9IG5ldyBVaW50OEFycmF5KDY0KTsKICAgICAgY29uc3QgY2hhclRvSW50ID0gbmV3IFVpbnQ4QXJyYXkoMTI4KTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFycy5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbnN0IGMgPSBjaGFycy5jaGFyQ29kZUF0KGkpOwogICAgICAgIGludFRvQ2hhcltpXSA9IGM7CiAgICAgICAgY2hhclRvSW50W2NdID0gaTsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgcmVsYXRpdmUpIHsKICAgICAgICBsZXQgdmFsdWUgPSAwOwogICAgICAgIGxldCBzaGlmdCA9IDA7CiAgICAgICAgbGV0IGludGVnZXIgPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGMgPSByZWFkZXIubmV4dCgpOwogICAgICAgICAgaW50ZWdlciA9IGNoYXJUb0ludFtjXTsKICAgICAgICAgIHZhbHVlIHw9IChpbnRlZ2VyICYgMzEpIDw8IHNoaWZ0OwogICAgICAgICAgc2hpZnQgKz0gNTsKICAgICAgICB9IHdoaWxlIChpbnRlZ2VyICYgMzIpOwogICAgICAgIGNvbnN0IHNob3VsZE5lZ2F0ZSA9IHZhbHVlICYgMTsKICAgICAgICB2YWx1ZSA+Pj49IDE7CiAgICAgICAgaWYgKHNob3VsZE5lZ2F0ZSkgewogICAgICAgICAgdmFsdWUgPSAtMjE0NzQ4MzY0OCB8IC12YWx1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlbGF0aXZlICsgdmFsdWU7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZW5jb2RlSW50ZWdlcihidWlsZGVyLCBudW0sIHJlbGF0aXZlKSB7CiAgICAgICAgbGV0IGRlbHRhID0gbnVtIC0gcmVsYXRpdmU7CiAgICAgICAgZGVsdGEgPSBkZWx0YSA8IDAgPyAtZGVsdGEgPDwgMSB8IDEgOiBkZWx0YSA8PCAxOwogICAgICAgIGRvIHsKICAgICAgICAgIGxldCBjbGFtcGVkID0gZGVsdGEgJiAzMTsKICAgICAgICAgIGRlbHRhID4+Pj0gNTsKICAgICAgICAgIGlmIChkZWx0YSA+IDApCiAgICAgICAgICAgIGNsYW1wZWQgfD0gMzI7CiAgICAgICAgICBidWlsZGVyLndyaXRlKGludFRvQ2hhcltjbGFtcGVkXSk7CiAgICAgICAgfSB3aGlsZSAoZGVsdGEgPiAwKTsKICAgICAgICByZXR1cm4gbnVtOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGhhc01vcmVWbHEocmVhZGVyLCBtYXgpIHsKICAgICAgICBpZiAocmVhZGVyLnBvcyA+PSBtYXgpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHJlYWRlci5wZWVrKCkgIT09IGNvbW1hOwogICAgICB9CiAgICAgIGNvbnN0IGJ1Zkxlbmd0aCA9IDEwMjQgKiAxNjsKICAgICAgY29uc3QgdGQgPSB0eXBlb2YgVGV4dERlY29kZXIgIT09ICJ1bmRlZmluZWQiID8gLyogQF9fUFVSRV9fICovIG5ldyBUZXh0RGVjb2RlcigpIDogdHlwZW9mIEJ1ZmZlciAhPT0gInVuZGVmaW5lZCIgPyB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgY29uc3Qgb3V0ID0gQnVmZmVyLmZyb20oYnVmLmJ1ZmZlciwgYnVmLmJ5dGVPZmZzZXQsIGJ1Zi5ieXRlTGVuZ3RoKTsKICAgICAgICAgIHJldHVybiBvdXQudG9TdHJpbmcoKTsKICAgICAgICB9CiAgICAgIH0gOiB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgbGV0IG91dCA9ICIiOwogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgb3V0ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYnVmW2ldKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBvdXQ7CiAgICAgICAgfQogICAgICB9OwogICAgICBjbGFzcyBTdHJpbmdXcml0ZXIgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgICAgdGhpcy5wb3MgPSAwOwogICAgICAgICAgdGhpcy5vdXQgPSAiIjsKICAgICAgICAgIHRoaXMuYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoYnVmTGVuZ3RoKTsKICAgICAgICB9CiAgICAgICAgd3JpdGUodikgewogICAgICAgICAgY29uc3QgeyBidWZmZXIgfSA9IHRoaXM7CiAgICAgICAgICBidWZmZXJbdGhpcy5wb3MrK10gPSB2OwogICAgICAgICAgaWYgKHRoaXMucG9zID09PSBidWZMZW5ndGgpIHsKICAgICAgICAgICAgdGhpcy5vdXQgKz0gdGQuZGVjb2RlKGJ1ZmZlcik7CiAgICAgICAgICAgIHRoaXMucG9zID0gMDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZmx1c2goKSB7CiAgICAgICAgICBjb25zdCB7IGJ1ZmZlciwgb3V0LCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICByZXR1cm4gcG9zID4gMCA/IG91dCArIHRkLmRlY29kZShidWZmZXIuc3ViYXJyYXkoMCwgcG9zKSkgOiBvdXQ7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNsYXNzIFN0cmluZ1JlYWRlciB7CiAgICAgICAgY29uc3RydWN0b3IoYnVmZmVyKSB7CiAgICAgICAgICB0aGlzLnBvcyA9IDA7CiAgICAgICAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjsKICAgICAgICB9CiAgICAgICAgbmV4dCgpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlci5jaGFyQ29kZUF0KHRoaXMucG9zKyspOwogICAgICAgIH0KICAgICAgICBwZWVrKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuYnVmZmVyLmNoYXJDb2RlQXQodGhpcy5wb3MpOwogICAgICAgIH0KICAgICAgICBpbmRleE9mKGNoYXIpIHsKICAgICAgICAgIGNvbnN0IHsgYnVmZmVyLCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICBjb25zdCBpZHggPSBidWZmZXIuaW5kZXhPZihjaGFyLCBwb3MpOwogICAgICAgICAgcmV0dXJuIGlkeCA9PT0gLTEgPyBidWZmZXIubGVuZ3RoIDogaWR4OwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdCBFTVBUWSA9IFtdOwogICAgICBmdW5jdGlvbiBkZWNvZGVPcmlnaW5hbFNjb3BlcyhpbnB1dCkgewogICAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSBpbnB1dDsKICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTsKICAgICAgICBjb25zdCBzY29wZXMgPSBbXTsKICAgICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICAgIGxldCBsaW5lID0gMDsKICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IGxlbmd0aDsgcmVhZGVyLnBvcysrKSB7CiAgICAgICAgICBsaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGxpbmUpOwogICAgICAgICAgY29uc3QgY29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSkgewogICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgIGxhc3RbMl0gPSBsaW5lOwogICAgICAgICAgICBsYXN0WzNdID0gY29sdW1uOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtpbmQgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBoYXNOYW1lID0gZmllbGRzICYgMTsKICAgICAgICAgIGNvbnN0IHNjb3BlID0gaGFzTmFtZSA/IFtsaW5lLCBjb2x1bW4sIDAsIDAsIGtpbmQsIGRlY29kZUludGVnZXIocmVhZGVyLCAwKV0gOiBbbGluZSwgY29sdW1uLCAwLCAwLCBraW5kXTsKICAgICAgICAgIGxldCB2YXJzID0gRU1QVFk7CiAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIGxlbmd0aCkpIHsKICAgICAgICAgICAgdmFycyA9IFtdOwogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgY29uc3QgdmFyc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgIHZhcnMucHVzaCh2YXJzSW5kZXgpOwogICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBzY29wZS52YXJzID0gdmFyczsKICAgICAgICAgIHNjb3Blcy5wdXNoKHNjb3BlKTsKICAgICAgICAgIHN0YWNrLnB1c2goc2NvcGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NvcGVzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcykgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjb3Blcy5sZW5ndGg7ICkgewogICAgICAgICAgaSA9IF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGksIHdyaXRlciwgWzBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKSB7CiAgICAgICAgY29uc3Qgc2NvcGUgPSBzY29wZXNbaW5kZXhdOwogICAgICAgIGNvbnN0IHsgMDogc3RhcnRMaW5lLCAxOiBzdGFydENvbHVtbiwgMjogZW5kTGluZSwgMzogZW5kQ29sdW1uLCA0OiBraW5kLCB2YXJzIH0gPSBzY29wZTsKICAgICAgICBpZiAoaW5kZXggPiAwKQogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICBzdGF0ZVswXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzdGFydExpbmUsIHN0YXRlWzBdKTsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc3RhcnRDb2x1bW4sIDApOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBraW5kLCAwKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSBzY29wZS5sZW5ndGggPT09IDYgPyAxIDogMDsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZmllbGRzLCAwKTsKICAgICAgICBpZiAoc2NvcGUubGVuZ3RoID09PSA2KQogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNjb3BlWzVdLCAwKTsKICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdmFycykgewogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHYsIDApOwogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgc2NvcGVzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gc2NvcGVzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlT3JpZ2luYWxTY29wZXMoc2NvcGVzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlci53cml0ZShjb21tYSk7CiAgICAgICAgc3RhdGVbMF0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kTGluZSwgc3RhdGVbMF0pOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRDb2x1bW4sIDApOwogICAgICAgIHJldHVybiBpbmRleDsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVHZW5lcmF0ZWRSYW5nZXMoaW5wdXQpIHsKICAgICAgICBjb25zdCB7IGxlbmd0aCB9ID0gaW5wdXQ7CiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihpbnB1dCk7CiAgICAgICAgY29uc3QgcmFuZ2VzID0gW107CiAgICAgICAgY29uc3Qgc3RhY2sgPSBbXTsKICAgICAgICBsZXQgZ2VuTGluZSA9IDA7CiAgICAgICAgbGV0IGRlZmluaXRpb25Tb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBkZWZpbml0aW9uU2NvcGVJbmRleCA9IDA7CiAgICAgICAgbGV0IGNhbGxzaXRlU291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVMaW5lID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVDb2x1bW4gPSAwOwogICAgICAgIGxldCBiaW5kaW5nTGluZSA9IDA7CiAgICAgICAgbGV0IGJpbmRpbmdDb2x1bW4gPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgbGV0IGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IHNlbWk7IHJlYWRlci5wb3MrKykgewogICAgICAgICAgICBnZW5Db2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZ2VuQ29sdW1uKTsKICAgICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpIHsKICAgICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgICAgbGFzdFsyXSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgbGFzdFszXSA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgIGNvbnN0IGhhc0RlZmluaXRpb24gPSBmaWVsZHMgJiAxOwogICAgICAgICAgICBjb25zdCBoYXNDYWxsc2l0ZSA9IGZpZWxkcyAmIDI7CiAgICAgICAgICAgIGNvbnN0IGhhc1Njb3BlID0gZmllbGRzICYgNDsKICAgICAgICAgICAgbGV0IGNhbGxzaXRlID0gbnVsbDsKICAgICAgICAgICAgbGV0IGJpbmRpbmdzID0gRU1QVFk7CiAgICAgICAgICAgIGxldCByYW5nZTsKICAgICAgICAgICAgaWYgKGhhc0RlZmluaXRpb24pIHsKICAgICAgICAgICAgICBjb25zdCBkZWZTb3VyY2VzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgICAgZGVmaW5pdGlvblNjb3BlSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCA9PT0gZGVmU291cmNlc0luZGV4ID8gZGVmaW5pdGlvblNjb3BlSW5kZXggOiAwKTsKICAgICAgICAgICAgICBkZWZpbml0aW9uU291cmNlc0luZGV4ID0gZGVmU291cmNlc0luZGV4OwogICAgICAgICAgICAgIHJhbmdlID0gW2dlbkxpbmUsIGdlbkNvbHVtbiwgMCwgMCwgZGVmU291cmNlc0luZGV4LCBkZWZpbml0aW9uU2NvcGVJbmRleF07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmFuZ2UgPSBbZ2VuTGluZSwgZ2VuQ29sdW1uLCAwLCAwXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5pc1Njb3BlID0gISFoYXNTY29wZTsKICAgICAgICAgICAgaWYgKGhhc0NhbGxzaXRlKSB7CiAgICAgICAgICAgICAgY29uc3QgcHJldkNzaSA9IGNhbGxzaXRlU291cmNlc0luZGV4OwogICAgICAgICAgICAgIGNvbnN0IHByZXZMaW5lID0gY2FsbHNpdGVMaW5lOwogICAgICAgICAgICAgIGNhbGxzaXRlU291cmNlc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGNhbGxzaXRlU291cmNlc0luZGV4KTsKICAgICAgICAgICAgICBjb25zdCBzYW1lU291cmNlID0gcHJldkNzaSA9PT0gY2FsbHNpdGVTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgY2FsbHNpdGVMaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNhbWVTb3VyY2UgPyBjYWxsc2l0ZUxpbmUgOiAwKTsKICAgICAgICAgICAgICBjYWxsc2l0ZUNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzYW1lU291cmNlICYmIHByZXZMaW5lID09PSBjYWxsc2l0ZUxpbmUgPyBjYWxsc2l0ZUNvbHVtbiA6IDApOwogICAgICAgICAgICAgIGNhbGxzaXRlID0gW2NhbGxzaXRlU291cmNlc0luZGV4LCBjYWxsc2l0ZUxpbmUsIGNhbGxzaXRlQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5jYWxsc2l0ZSA9IGNhbGxzaXRlOwogICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgYmluZGluZ3MgPSBbXTsKICAgICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgICBiaW5kaW5nTGluZSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgICBiaW5kaW5nQ29sdW1uID0gZ2VuQ29sdW1uOwogICAgICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbnNDb3VudCA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uUmFuZ2VzOwogICAgICAgICAgICAgICAgaWYgKGV4cHJlc3Npb25zQ291bnQgPCAtMSkgewogICAgICAgICAgICAgICAgICBleHByZXNzaW9uUmFuZ2VzID0gW1tkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCldXTsKICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IC0xOyBpID4gZXhwcmVzc2lvbnNDb3VudDsgaS0tKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJldkJsID0gYmluZGluZ0xpbmU7CiAgICAgICAgICAgICAgICAgICAgYmluZGluZ0xpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUpOwogICAgICAgICAgICAgICAgICAgIGJpbmRpbmdDb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUgPT09IHByZXZCbCA/IGJpbmRpbmdDb2x1bW4gOiAwKTsKICAgICAgICAgICAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SYW5nZXMucHVzaChbZXhwcmVzc2lvbiwgYmluZGluZ0xpbmUsIGJpbmRpbmdDb2x1bW5dKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvblJhbmdlcyA9IFtbZXhwcmVzc2lvbnNDb3VudF1dOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYmluZGluZ3MucHVzaChleHByZXNzaW9uUmFuZ2VzKTsKICAgICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmJpbmRpbmdzID0gYmluZGluZ3M7CiAgICAgICAgICAgIHJhbmdlcy5wdXNoKHJhbmdlKTsKICAgICAgICAgICAgc3RhY2sucHVzaChyYW5nZSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW5MaW5lKys7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8IGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHJhbmdlczsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzKSB7CiAgICAgICAgaWYgKHJhbmdlcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBpID0gX2VuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMsIGksIHdyaXRlciwgWzAsIDAsIDAsIDAsIDAsIDAsIDBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSkgewogICAgICAgIGNvbnN0IHJhbmdlID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICBjb25zdCB7IDA6IHN0YXJ0TGluZSwgMTogc3RhcnRDb2x1bW4sIDI6IGVuZExpbmUsIDM6IGVuZENvbHVtbiwgaXNTY29wZSwgY2FsbHNpdGUsIGJpbmRpbmdzIH0gPSByYW5nZTsKICAgICAgICBpZiAoc3RhdGVbMF0gPCBzdGFydExpbmUpIHsKICAgICAgICAgIGNhdGNodXBMaW5lKHdyaXRlciwgc3RhdGVbMF0sIHN0YXJ0TGluZSk7CiAgICAgICAgICBzdGF0ZVswXSA9IHN0YXJ0TGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID4gMCkgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgcmFuZ2VbMV0sIHN0YXRlWzFdKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSAocmFuZ2UubGVuZ3RoID09PSA2ID8gMSA6IDApIHwgKGNhbGxzaXRlID8gMiA6IDApIHwgKGlzU2NvcGUgPyA0IDogMCk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGZpZWxkcywgMCk7CiAgICAgICAgaWYgKHJhbmdlLmxlbmd0aCA9PT0gNikgewogICAgICAgICAgY29uc3QgeyA0OiBzb3VyY2VzSW5kZXgsIDU6IHNjb3Blc0luZGV4IH0gPSByYW5nZTsKICAgICAgICAgIGlmIChzb3VyY2VzSW5kZXggIT09IHN0YXRlWzJdKSB7CiAgICAgICAgICAgIHN0YXRlWzNdID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIHN0YXRlWzJdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNvdXJjZXNJbmRleCwgc3RhdGVbMl0pOwogICAgICAgICAgc3RhdGVbM10gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2NvcGVzSW5kZXgsIHN0YXRlWzNdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNhbGxzaXRlKSB7CiAgICAgICAgICBjb25zdCB7IDA6IHNvdXJjZXNJbmRleCwgMTogY2FsbExpbmUsIDI6IGNhbGxDb2x1bW4gfSA9IHJhbmdlLmNhbGxzaXRlOwogICAgICAgICAgaWYgKHNvdXJjZXNJbmRleCAhPT0gc3RhdGVbNF0pIHsKICAgICAgICAgICAgc3RhdGVbNV0gPSAwOwogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9IGVsc2UgaWYgKGNhbGxMaW5lICE9PSBzdGF0ZVs1XSkgewogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9CiAgICAgICAgICBzdGF0ZVs0XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzb3VyY2VzSW5kZXgsIHN0YXRlWzRdKTsKICAgICAgICAgIHN0YXRlWzVdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGNhbGxMaW5lLCBzdGF0ZVs1XSk7CiAgICAgICAgICBzdGF0ZVs2XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBjYWxsQ29sdW1uLCBzdGF0ZVs2XSk7CiAgICAgICAgfQogICAgICAgIGlmIChiaW5kaW5ncykgewogICAgICAgICAgZm9yIChjb25zdCBiaW5kaW5nIG9mIGJpbmRpbmdzKSB7CiAgICAgICAgICAgIGlmIChiaW5kaW5nLmxlbmd0aCA+IDEpCiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIC1iaW5kaW5nLmxlbmd0aCwgMCk7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBiaW5kaW5nWzBdWzBdOwogICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwcmVzc2lvbiwgMCk7CiAgICAgICAgICAgIGxldCBiaW5kaW5nU3RhcnRMaW5lID0gc3RhcnRMaW5lOwogICAgICAgICAgICBsZXQgYmluZGluZ1N0YXJ0Q29sdW1uID0gc3RhcnRDb2x1bW47CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgYmluZGluZy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGV4cFJhbmdlID0gYmluZGluZ1tpXTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRMaW5lID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzFdLCBiaW5kaW5nU3RhcnRMaW5lKTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRDb2x1bW4gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMl0sIGJpbmRpbmdTdGFydENvbHVtbik7CiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzBdLCAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlR2VuZXJhdGVkUmFuZ2VzKHJhbmdlcywgaW5kZXgsIHdyaXRlciwgc3RhdGUpOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGVbMF0gPCBlbmRMaW5lKSB7CiAgICAgICAgICBjYXRjaHVwTGluZSh3cml0ZXIsIHN0YXRlWzBdLCBlbmRMaW5lKTsKICAgICAgICAgIHN0YXRlWzBdID0gZW5kTGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kQ29sdW1uLCBzdGF0ZVsxXSk7CiAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhdGNodXBMaW5lKHdyaXRlciwgbGFzdExpbmUsIGxpbmUpIHsKICAgICAgICBkbyB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoc2VtaWNvbG9uKTsKICAgICAgICB9IHdoaWxlICgrK2xhc3RMaW5lIDwgbGluZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZGVjb2RlKG1hcHBpbmdzKSB7CiAgICAgICAgY29uc3QgeyBsZW5ndGggfSA9IG1hcHBpbmdzOwogICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBTdHJpbmdSZWFkZXIobWFwcGluZ3MpOwogICAgICAgIGNvbnN0IGRlY29kZWQgPSBbXTsKICAgICAgICBsZXQgZ2VuQ29sdW1uID0gMDsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgY29uc3QgbGluZSA9IFtdOwogICAgICAgICAgbGV0IHNvcnRlZCA9IHRydWU7CiAgICAgICAgICBsZXQgbGFzdENvbCA9IDA7CiAgICAgICAgICBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgd2hpbGUgKHJlYWRlci5wb3MgPCBzZW1pKSB7CiAgICAgICAgICAgIGxldCBzZWc7CiAgICAgICAgICAgIGdlbkNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBnZW5Db2x1bW4pOwogICAgICAgICAgICBpZiAoZ2VuQ29sdW1uIDwgbGFzdENvbCkKICAgICAgICAgICAgICBzb3J0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgbGFzdENvbCA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgIHNvdXJjZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzb3VyY2VzSW5kZXgpOwogICAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc291cmNlTGluZSk7CiAgICAgICAgICAgICAgc291cmNlQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNvdXJjZUNvbHVtbik7CiAgICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgICAgbmFtZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBuYW1lc0luZGV4KTsKICAgICAgICAgICAgICAgIHNlZyA9IFtnZW5Db2x1bW4sIHNvdXJjZXNJbmRleCwgc291cmNlTGluZSwgc291cmNlQ29sdW1uLCBuYW1lc0luZGV4XTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2VnID0gW2dlbkNvbHVtbiwgc291cmNlc0luZGV4LCBzb3VyY2VMaW5lLCBzb3VyY2VDb2x1bW5dOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzZWcgPSBbZ2VuQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lLnB1c2goc2VnKTsKICAgICAgICAgICAgcmVhZGVyLnBvcysrOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFzb3J0ZWQpCiAgICAgICAgICAgIHNvcnQobGluZSk7CiAgICAgICAgICBkZWNvZGVkLnB1c2gobGluZSk7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8PSBsZW5ndGgpOwogICAgICAgIHJldHVybiBkZWNvZGVkOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHNvcnQobGluZSkgewogICAgICAgIGxpbmUuc29ydChzb3J0Q29tcGFyYXRvcik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc29ydENvbXBhcmF0b3IoYSwgYikgewogICAgICAgIHJldHVybiBhWzBdIC0gYlswXTsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGUoZGVjb2RlZCkgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGVjb2RlZC5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3QgbGluZSA9IGRlY29kZWRbaV07CiAgICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgIHdyaXRlci53cml0ZShzZW1pY29sb24pOwogICAgICAgICAgaWYgKGxpbmUubGVuZ3RoID09PSAwKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIGxldCBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsaW5lLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBsaW5lW2pdOwogICAgICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICAgICAgZ2VuQ29sdW1uID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMF0sIGdlbkNvbHVtbik7CiAgICAgICAgICAgIGlmIChzZWdtZW50Lmxlbmd0aCA9PT0gMSkKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgc291cmNlc0luZGV4ID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMV0sIHNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFsyXSwgc291cmNlTGluZSk7CiAgICAgICAgICAgIHNvdXJjZUNvbHVtbiA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzNdLCBzb3VyY2VDb2x1bW4pOwogICAgICAgICAgICBpZiAoc2VnbWVudC5sZW5ndGggPT09IDQpCiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIG5hbWVzSW5kZXggPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFs0XSwgbmFtZXNJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB3cml0ZXIuZmx1c2goKTsKICAgICAgfQogICAgICBleHBvcnRzMy5kZWNvZGUgPSBkZWNvZGU7CiAgICAgIGV4cG9ydHMzLmRlY29kZUdlbmVyYXRlZFJhbmdlcyA9IGRlY29kZUdlbmVyYXRlZFJhbmdlczsKICAgICAgZXhwb3J0czMuZGVjb2RlT3JpZ2luYWxTY29wZXMgPSBkZWNvZGVPcmlnaW5hbFNjb3BlczsKICAgICAgZXhwb3J0czMuZW5jb2RlID0gZW5jb2RlOwogICAgICBleHBvcnRzMy5lbmNvZGVHZW5lcmF0ZWRSYW5nZXMgPSBlbmNvZGVHZW5lcmF0ZWRSYW5nZXM7CiAgICAgIGV4cG9ydHMzLmVuY29kZU9yaWdpbmFsU2NvcGVzID0gZW5jb2RlT3JpZ2luYWxTY29wZXM7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcwp2YXIgcmVxdWlyZV9tYWdpY19zdHJpbmdfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzb3VyY2VtYXBDb2RlYyA9IHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCgpOwogICAgdmFyIEJpdFNldCA9IGNsYXNzIF9CaXRTZXQgewogICAgICBjb25zdHJ1Y3RvcihhcmcpIHsKICAgICAgICB0aGlzLmJpdHMgPSBhcmcgaW5zdGFuY2VvZiBfQml0U2V0ID8gYXJnLmJpdHMuc2xpY2UoKSA6IFtdOwogICAgICB9CiAgICAgIGFkZChuMikgewogICAgICAgIHRoaXMuYml0c1tuMiA+PiA1XSB8PSAxIDw8IChuMiAmIDMxKTsKICAgICAgfQogICAgICBoYXMobjIpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5iaXRzW24yID4+IDVdICYgMSA8PCAobjIgJiAzMSkpOwogICAgICB9CiAgICB9OwogICAgdmFyIENodW5rID0gY2xhc3MgX0NodW5rIHsKICAgICAgY29uc3RydWN0b3Ioc3RhcnQsIGVuZCwgY29udGVudCkgewogICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDsKICAgICAgICB0aGlzLmVuZCA9IGVuZDsKICAgICAgICB0aGlzLm9yaWdpbmFsID0gY29udGVudDsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBmYWxzZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIHsKICAgICAgICAgIHRoaXMucHJldmlvdXMgPSBudWxsOwogICAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXBwZW5kTGVmdChjb250ZW50KSB7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGNvbnRlbnQpIHsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRybyArIGNvbnRlbnQ7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgX0NodW5rKHRoaXMuc3RhcnQsIHRoaXMuZW5kLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICBjaHVuay5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2h1bmsub3V0cm8gPSB0aGlzLm91dHJvOwogICAgICAgIGNodW5rLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7CiAgICAgICAgY2h1bmsuc3RvcmVOYW1lID0gdGhpcy5zdG9yZU5hbWU7CiAgICAgICAgY2h1bmsuZWRpdGVkID0gdGhpcy5lZGl0ZWQ7CiAgICAgICAgcmV0dXJuIGNodW5rOwogICAgICB9CiAgICAgIGNvbnRhaW5zKGluZGV4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnQgPCBpbmRleCAmJiBpbmRleCA8IHRoaXMuZW5kOwogICAgICB9CiAgICAgIGVhY2hOZXh0KGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaFByZXZpb3VzKGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVkaXQoY29udGVudCwgc3RvcmVOYW1lLCBjb250ZW50T25seSkgewogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgaWYgKCFjb250ZW50T25seSkgewogICAgICAgICAgdGhpcy5pbnRybyA9ICIiOwogICAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIH0KICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IHN0b3JlTmFtZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZExlZnQoY29udGVudCkgewogICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBwcmVwZW5kUmlnaHQoY29udGVudCkgewogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIGlmICh0aGlzLmVkaXRlZCkgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcmlnaW5hbDsKICAgICAgICAgIHRoaXMuc3RvcmVOYW1lID0gZmFsc2U7CiAgICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICBzcGxpdChpbmRleCkgewogICAgICAgIGNvbnN0IHNsaWNlSW5kZXggPSBpbmRleCAtIHRoaXMuc3RhcnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCZWZvcmUgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKDAsIHNsaWNlSW5kZXgpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQWZ0ZXIgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHNsaWNlSW5kZXgpOwogICAgICAgIHRoaXMub3JpZ2luYWwgPSBvcmlnaW5hbEJlZm9yZTsKICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBfQ2h1bmsoaW5kZXgsIHRoaXMuZW5kLCBvcmlnaW5hbEFmdGVyKTsKICAgICAgICBuZXdDaHVuay5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuZW5kID0gaW5kZXg7CiAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICBuZXdDaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAiIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gb3JpZ2luYWxCZWZvcmU7CiAgICAgICAgfQogICAgICAgIG5ld0NodW5rLm5leHQgPSB0aGlzLm5leHQ7CiAgICAgICAgaWYgKG5ld0NodW5rLm5leHQpIG5ld0NodW5rLm5leHQucHJldmlvdXMgPSBuZXdDaHVuazsKICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IHRoaXM7CiAgICAgICAgdGhpcy5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgcmV0dXJuIG5ld0NodW5rOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgdGhpcy5jb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICB0cmltRW5kKHJ4KSB7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuc3BsaXQodGhpcy5zdGFydCArIHRyaW1tZWQubGVuZ3RoKS5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgICBpZiAodGhpcy5lZGl0ZWQpIHsKICAgICAgICAgICAgICB0aGlzLmVkaXQodHJpbW1lZCwgdGhpcy5zdG9yZU5hbWUsIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KHJ4KSB7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gdGhpcy5zcGxpdCh0aGlzLmVuZCAtIHRyaW1tZWQubGVuZ3RoKTsKICAgICAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICAgICAgbmV3Q2h1bmsuZWRpdCh0cmltbWVkLCB0aGlzLnN0b3JlTmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuZWRpdCgiIiwgdm9pZCAwLCB0cnVlKTsKICAgICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gZ2V0QnRvYSgpIHsKICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiAmJiB0eXBlb2YgZ2xvYmFsVGhpcy5idG9hID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIChzdHIyKSA9PiBnbG9iYWxUaGlzLmJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHN0cjIpKSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIEJ1ZmZlciA9PT0gImZ1bmN0aW9uIikgewogICAgICAgIHJldHVybiAoc3RyMikgPT4gQnVmZmVyLmZyb20oc3RyMiwgInV0Zi04IikudG9TdHJpbmcoImJhc2U2NCIpOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIGVudmlyb25tZW50OiBgd2luZG93LmJ0b2FgIG9yIGBCdWZmZXJgIHNob3VsZCBiZSBzdXBwb3J0ZWQuIik7CiAgICAgICAgfTsKICAgICAgfQogICAgfQogICAgdmFyIGJ0b2EgPSAvKiBAX19QVVJFX18gKi8gZ2V0QnRvYSgpOwogICAgdmFyIFNvdXJjZU1hcCA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IocHJvcGVydGllcykgewogICAgICAgIHRoaXMudmVyc2lvbiA9IDM7CiAgICAgICAgdGhpcy5maWxlID0gcHJvcGVydGllcy5maWxlOwogICAgICAgIHRoaXMuc291cmNlcyA9IHByb3BlcnRpZXMuc291cmNlczsKICAgICAgICB0aGlzLnNvdXJjZXNDb250ZW50ID0gcHJvcGVydGllcy5zb3VyY2VzQ29udGVudDsKICAgICAgICB0aGlzLm5hbWVzID0gcHJvcGVydGllcy5uYW1lczsKICAgICAgICB0aGlzLm1hcHBpbmdzID0gc291cmNlbWFwQ29kZWMuZW5jb2RlKHByb3BlcnRpZXMubWFwcGluZ3MpOwogICAgICAgIGlmICh0eXBlb2YgcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0ICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgdGhpcy54X2dvb2dsZV9pZ25vcmVMaXN0ID0gcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0OwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHByb3BlcnRpZXMuZGVidWdJZCAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgIHRoaXMuZGVidWdJZCA9IHByb3BlcnRpZXMuZGVidWdJZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMpOwogICAgICB9CiAgICAgIHRvVXJsKCkgewogICAgICAgIHJldHVybiAiZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIgKyBidG9hKHRoaXMudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBndWVzc0luZGVudChjb2RlKSB7CiAgICAgIGNvbnN0IGxpbmVzID0gY29kZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgdGFiYmVkID0gbGluZXMuZmlsdGVyKChsaW5lKSA9PiAvXlx0Ky8udGVzdChsaW5lKSk7CiAgICAgIGNvbnN0IHNwYWNlZCA9IGxpbmVzLmZpbHRlcigobGluZSkgPT4gL14gezIsfS8udGVzdChsaW5lKSk7CiAgICAgIGlmICh0YWJiZWQubGVuZ3RoID09PSAwICYmIHNwYWNlZC5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBpZiAodGFiYmVkLmxlbmd0aCA+PSBzcGFjZWQubGVuZ3RoKSB7CiAgICAgICAgcmV0dXJuICIJIjsKICAgICAgfQogICAgICBjb25zdCBtaW4gPSBzcGFjZWQucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4gewogICAgICAgIGNvbnN0IG51bVNwYWNlcyA9IC9eICsvLmV4ZWMoY3VycmVudClbMF0ubGVuZ3RoOwogICAgICAgIHJldHVybiBNYXRoLm1pbihudW1TcGFjZXMsIHByZXZpb3VzKTsKICAgICAgfSwgSW5maW5pdHkpOwogICAgICByZXR1cm4gbmV3IEFycmF5KG1pbiArIDEpLmpvaW4oIiAiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFJlbGF0aXZlUGF0aChmcm9tLCB0bykgewogICAgICBjb25zdCBmcm9tUGFydHMgPSBmcm9tLnNwbGl0KC9bL1xcXS8pOwogICAgICBjb25zdCB0b1BhcnRzID0gdG8uc3BsaXQoL1svXFxdLyk7CiAgICAgIGZyb21QYXJ0cy5wb3AoKTsKICAgICAgd2hpbGUgKGZyb21QYXJ0c1swXSA9PT0gdG9QYXJ0c1swXSkgewogICAgICAgIGZyb21QYXJ0cy5zaGlmdCgpOwogICAgICAgIHRvUGFydHMuc2hpZnQoKTsKICAgICAgfQogICAgICBpZiAoZnJvbVBhcnRzLmxlbmd0aCkgewogICAgICAgIGxldCBpID0gZnJvbVBhcnRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSBmcm9tUGFydHNbaV0gPSAiLi4iOwogICAgICB9CiAgICAgIHJldHVybiBmcm9tUGFydHMuY29uY2F0KHRvUGFydHMpLmpvaW4oIi8iKTsKICAgIH0KICAgIHZhciB0b1N0cmluZzIgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwogICAgZnVuY3Rpb24gaXNPYmplY3QyKHRoaW5nKSB7CiAgICAgIHJldHVybiB0b1N0cmluZzIuY2FsbCh0aGluZykgPT09ICJbb2JqZWN0IE9iamVjdF0iOwogICAgfQogICAgZnVuY3Rpb24gZ2V0TG9jYXRvcihzb3VyY2UpIHsKICAgICAgY29uc3Qgb3JpZ2luYWxMaW5lcyA9IHNvdXJjZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgbGluZU9mZnNldHMgPSBbXTsKICAgICAgZm9yIChsZXQgaSA9IDAsIHBvcyA9IDA7IGkgPCBvcmlnaW5hbExpbmVzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbGluZU9mZnNldHMucHVzaChwb3MpOwogICAgICAgIHBvcyArPSBvcmlnaW5hbExpbmVzW2ldLmxlbmd0aCArIDE7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uIGxvY2F0ZShpbmRleCkgewogICAgICAgIGxldCBpID0gMDsKICAgICAgICBsZXQgaiA9IGxpbmVPZmZzZXRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaSA8IGopIHsKICAgICAgICAgIGNvbnN0IG0gPSBpICsgaiA+PiAxOwogICAgICAgICAgaWYgKGluZGV4IDwgbGluZU9mZnNldHNbbV0pIHsKICAgICAgICAgICAgaiA9IG07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpID0gbSArIDE7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGxpbmUgPSBpIC0gMTsKICAgICAgICBjb25zdCBjb2x1bW4gPSBpbmRleCAtIGxpbmVPZmZzZXRzW2xpbmVdOwogICAgICAgIHJldHVybiB7IGxpbmUsIGNvbHVtbiB9OwogICAgICB9OwogICAgfQogICAgdmFyIHdvcmRSZWdleCA9IC9cdy87CiAgICB2YXIgTWFwcGluZ3MgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGhpcmVzKSB7CiAgICAgICAgdGhpcy5oaXJlcyA9IGhpcmVzOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUxpbmUgPSAwOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgdGhpcy5yYXcgPSBbXTsKICAgICAgICB0aGlzLnJhd1NlZ21lbnRzID0gdGhpcy5yYXdbdGhpcy5nZW5lcmF0ZWRDb2RlTGluZV0gPSBbXTsKICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkZEVkaXQoc291cmNlSW5kZXgsIGNvbnRlbnQsIGxvYywgbmFtZUluZGV4KSB7CiAgICAgICAgaWYgKGNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50TGVuZ3RoTWludXNPbmUgPSBjb250ZW50Lmxlbmd0aCAtIDE7CiAgICAgICAgICBsZXQgY29udGVudExpbmVFbmQgPSBjb250ZW50LmluZGV4T2YoIlxuIiwgMCk7CiAgICAgICAgICBsZXQgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IC0xOwogICAgICAgICAgd2hpbGUgKGNvbnRlbnRMaW5lRW5kID49IDAgJiYgY29udGVudExlbmd0aE1pbnVzT25lID4gY29udGVudExpbmVFbmQpIHsKICAgICAgICAgICAgY29uc3Qgc2VnbWVudDIgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgICBzZWdtZW50Mi5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5yYXdTZWdtZW50cy5wdXNoKHNlZ21lbnQyKTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IGNvbnRlbnRMaW5lRW5kOwogICAgICAgICAgICBjb250ZW50TGluZUVuZCA9IGNvbnRlbnQuaW5kZXhPZigiXG4iLCBjb250ZW50TGluZUVuZCArIDEpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2VnbWVudCA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgc2VnbWVudC5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICB0aGlzLmFkdmFuY2UoY29udGVudC5zbGljZShwcmV2aW91c0NvbnRlbnRMaW5lRW5kICsgMSkpOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nKSB7CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2godGhpcy5wZW5kaW5nKTsKICAgICAgICAgIHRoaXMuYWR2YW5jZShjb250ZW50KTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gbnVsbDsKICAgICAgfQogICAgICBhZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgb3JpZ2luYWwsIGxvYywgc291cmNlbWFwTG9jYXRpb25zKSB7CiAgICAgICAgbGV0IG9yaWdpbmFsQ2hhckluZGV4ID0gY2h1bmsuc3RhcnQ7CiAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTsKICAgICAgICBsZXQgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENoYXJJbmRleCA8IGNodW5rLmVuZCkgewogICAgICAgICAgaWYgKG9yaWdpbmFsW29yaWdpbmFsQ2hhckluZGV4XSA9PT0gIlxuIikgewogICAgICAgICAgICBsb2MubGluZSArPSAxOwogICAgICAgICAgICBsb2MuY29sdW1uID0gMDsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgZmlyc3QgPSB0cnVlOwogICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGhpcy5oaXJlcyB8fCBmaXJzdCB8fCBzb3VyY2VtYXBMb2NhdGlvbnMuaGFzKG9yaWdpbmFsQ2hhckluZGV4KSkgewogICAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICAgIGlmICh0aGlzLmhpcmVzID09PSAiYm91bmRhcnkiKSB7CiAgICAgICAgICAgICAgICBpZiAod29yZFJlZ2V4LnRlc3Qob3JpZ2luYWxbb3JpZ2luYWxDaGFySW5kZXhdKSkgewogICAgICAgICAgICAgICAgICBpZiAoIWNoYXJJbkhpcmVzQm91bmRhcnkpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGxvYy5jb2x1bW4gKz0gMTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uICs9IDE7CiAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvcmlnaW5hbENoYXJJbmRleCArPSAxOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkdmFuY2Uoc3RyMikgewogICAgICAgIGlmICghc3RyMikgcmV0dXJuOwogICAgICAgIGNvbnN0IGxpbmVzID0gc3RyMi5zcGxpdCgiXG4iKTsKICAgICAgICBpZiAobGluZXMubGVuZ3RoID4gMSkgewogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lcy5sZW5ndGggLSAxOyBpKyspIHsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSsrOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiArPSBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXS5sZW5ndGg7CiAgICAgIH0KICAgIH07CiAgICB2YXIgbiA9ICJcbiI7CiAgICB2YXIgd2FybmVkID0gewogICAgICBpbnNlcnRMZWZ0OiBmYWxzZSwKICAgICAgaW5zZXJ0UmlnaHQ6IGZhbHNlLAogICAgICBzdG9yZU5hbWU6IGZhbHNlCiAgICB9OwogICAgdmFyIE1hZ2ljU3RyaW5nID0gY2xhc3MgX01hZ2ljU3RyaW5nIHsKICAgICAgY29uc3RydWN0b3Ioc3RyaW5nLCBvcHRpb25zID0ge30pIHsKICAgICAgICBjb25zdCBjaHVuayA9IG5ldyBDaHVuaygwLCBzdHJpbmcubGVuZ3RoLCBzdHJpbmcpOwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMsIHsKICAgICAgICAgIG9yaWdpbmFsOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogc3RyaW5nIH0sCiAgICAgICAgICBvdXRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBpbnRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBmaXJzdENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGxhc3RDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBsYXN0U2VhcmNoZWRDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBieVN0YXJ0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGJ5RW5kOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGZpbGVuYW1lOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5maWxlbmFtZSB9LAogICAgICAgICAgaW5kZW50RXhjbHVzaW9uUmFuZ2VzOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pbmRlbnRFeGNsdXNpb25SYW5nZXMgfSwKICAgICAgICAgIHNvdXJjZW1hcExvY2F0aW9uczogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IG5ldyBCaXRTZXQoKSB9LAogICAgICAgICAgc3RvcmVkTmFtZXM6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgaW5kZW50U3RyOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogdm9pZCAwIH0sCiAgICAgICAgICBpZ25vcmVMaXN0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pZ25vcmVMaXN0IH0sCiAgICAgICAgICBvZmZzZXQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLm9mZnNldCB8fCAwIH0KICAgICAgICB9KTsKICAgICAgICB0aGlzLmJ5U3RhcnRbMF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5RW5kW3N0cmluZy5sZW5ndGhdID0gY2h1bms7CiAgICAgIH0KICAgICAgYWRkU291cmNlbWFwTG9jYXRpb24oY2hhcikgewogICAgICAgIHRoaXMuc291cmNlbWFwTG9jYXRpb25zLmFkZChjaGFyKTsKICAgICAgfQogICAgICBhcHBlbmQoY29udGVudCkgewogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoIm91dHJvIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kTGVmdChjb250ZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5pbnRybyArPSBjb250ZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2xvbmVkID0gbmV3IF9NYWdpY1N0cmluZyh0aGlzLm9yaWdpbmFsLCB7IGZpbGVuYW1lOiB0aGlzLmZpbGVuYW1lLCBvZmZzZXQ6IHRoaXMub2Zmc2V0IH0pOwogICAgICAgIGxldCBvcmlnaW5hbENodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGxldCBjbG9uZWRDaHVuayA9IGNsb25lZC5maXJzdENodW5rID0gY2xvbmVkLmxhc3RTZWFyY2hlZENodW5rID0gb3JpZ2luYWxDaHVuay5jbG9uZSgpOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENodW5rKSB7CiAgICAgICAgICBjbG9uZWQuYnlTdGFydFtjbG9uZWRDaHVuay5zdGFydF0gPSBjbG9uZWRDaHVuazsKICAgICAgICAgIGNsb25lZC5ieUVuZFtjbG9uZWRDaHVuay5lbmRdID0gY2xvbmVkQ2h1bms7CiAgICAgICAgICBjb25zdCBuZXh0T3JpZ2luYWxDaHVuayA9IG9yaWdpbmFsQ2h1bmsubmV4dDsKICAgICAgICAgIGNvbnN0IG5leHRDbG9uZWRDaHVuayA9IG5leHRPcmlnaW5hbENodW5rICYmIG5leHRPcmlnaW5hbENodW5rLmNsb25lKCk7CiAgICAgICAgICBpZiAobmV4dENsb25lZENodW5rKSB7CiAgICAgICAgICAgIGNsb25lZENodW5rLm5leHQgPSBuZXh0Q2xvbmVkQ2h1bms7CiAgICAgICAgICAgIG5leHRDbG9uZWRDaHVuay5wcmV2aW91cyA9IGNsb25lZENodW5rOwogICAgICAgICAgICBjbG9uZWRDaHVuayA9IG5leHRDbG9uZWRDaHVuazsKICAgICAgICAgIH0KICAgICAgICAgIG9yaWdpbmFsQ2h1bmsgPSBuZXh0T3JpZ2luYWxDaHVuazsKICAgICAgICB9CiAgICAgICAgY2xvbmVkLmxhc3RDaHVuayA9IGNsb25lZENodW5rOwogICAgICAgIGlmICh0aGlzLmluZGVudEV4Y2x1c2lvblJhbmdlcykgewogICAgICAgICAgY2xvbmVkLmluZGVudEV4Y2x1c2lvblJhbmdlcyA9IHRoaXMuaW5kZW50RXhjbHVzaW9uUmFuZ2VzLnNsaWNlKCk7CiAgICAgICAgfQogICAgICAgIGNsb25lZC5zb3VyY2VtYXBMb2NhdGlvbnMgPSBuZXcgQml0U2V0KHRoaXMuc291cmNlbWFwTG9jYXRpb25zKTsKICAgICAgICBjbG9uZWQuaW50cm8gPSB0aGlzLmludHJvOwogICAgICAgIGNsb25lZC5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgcmV0dXJuIGNsb25lZDsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gMDsKICAgICAgICBjb25zdCBuYW1lcyA9IE9iamVjdC5rZXlzKHRoaXMuc3RvcmVkTmFtZXMpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gbmV3IE1hcHBpbmdzKG9wdGlvbnMuaGlyZXMpOwogICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IodGhpcy5vcmlnaW5hbCk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgIGNvbnN0IGxvYyA9IGxvY2F0ZShjaHVuay5zdGFydCk7CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLmludHJvKTsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgbWFwcGluZ3MuYWRkRWRpdCgKICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICBjaHVuay5jb250ZW50LAogICAgICAgICAgICAgIGxvYywKICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgdGhpcy5vcmlnaW5hbCwgbG9jLCB0aGlzLnNvdXJjZW1hcExvY2F0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgZmlsZTogb3B0aW9ucy5maWxlID8gb3B0aW9ucy5maWxlLnNwbGl0KC9bL1xcXS8pLnBvcCgpIDogdm9pZCAwLAogICAgICAgICAgc291cmNlczogWwogICAgICAgICAgICBvcHRpb25zLnNvdXJjZSA/IGdldFJlbGF0aXZlUGF0aChvcHRpb25zLmZpbGUgfHwgIiIsIG9wdGlvbnMuc291cmNlKSA6IG9wdGlvbnMuZmlsZSB8fCAiIgogICAgICAgICAgXSwKICAgICAgICAgIHNvdXJjZXNDb250ZW50OiBvcHRpb25zLmluY2x1ZGVDb250ZW50ID8gW3RoaXMub3JpZ2luYWxdIDogdm9pZCAwLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdDogdGhpcy5pZ25vcmVMaXN0ID8gW3NvdXJjZUluZGV4XSA6IHZvaWQgMAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBfZW5zdXJlaW5kZW50U3RyKCkgewogICAgICAgIGlmICh0aGlzLmluZGVudFN0ciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLmluZGVudFN0ciA9IGd1ZXNzSW5kZW50KHRoaXMub3JpZ2luYWwpOwogICAgICAgIH0KICAgICAgfQogICAgICBfZ2V0UmF3SW5kZW50U3RyaW5nKCkgewogICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgIHJldHVybiB0aGlzLmluZGVudFN0cjsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgdGhpcy5fZW5zdXJlaW5kZW50U3RyKCk7CiAgICAgICAgcmV0dXJuIHRoaXMuaW5kZW50U3RyID09PSBudWxsID8gIgkiIDogdGhpcy5pbmRlbnRTdHI7CiAgICAgIH0KICAgICAgaW5kZW50KGluZGVudFN0ciwgb3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhdHRlcm4gPSAvXlteXHJcbl0vZ207CiAgICAgICAgaWYgKGlzT2JqZWN0MihpbmRlbnRTdHIpKSB7CiAgICAgICAgICBvcHRpb25zID0gaW5kZW50U3RyOwogICAgICAgICAgaW5kZW50U3RyID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSB2b2lkIDApIHsKICAgICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgICAgaW5kZW50U3RyID0gdGhpcy5pbmRlbnRTdHIgfHwgIgkiOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgY29uc3QgaXNFeGNsdWRlZCA9IHt9OwogICAgICAgIGlmIChvcHRpb25zLmV4Y2x1ZGUpIHsKICAgICAgICAgIGNvbnN0IGV4Y2x1c2lvbnMgPSB0eXBlb2Ygb3B0aW9ucy5leGNsdWRlWzBdID09PSAibnVtYmVyIiA/IFtvcHRpb25zLmV4Y2x1ZGVdIDogb3B0aW9ucy5leGNsdWRlOwogICAgICAgICAgZXhjbHVzaW9ucy5mb3JFYWNoKChleGNsdXNpb24pID0+IHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IGV4Y2x1c2lvblswXTsgaSA8IGV4Y2x1c2lvblsxXTsgaSArPSAxKSB7CiAgICAgICAgICAgICAgaXNFeGNsdWRlZFtpXSA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBsZXQgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IG9wdGlvbnMuaW5kZW50U3RhcnQgIT09IGZhbHNlOwogICAgICAgIGNvbnN0IHJlcGxhY2VyID0gKG1hdGNoKSA9PiB7CiAgICAgICAgICBpZiAoc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgcmV0dXJuIGAke2luZGVudFN0cn0ke21hdGNofWA7CiAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gdHJ1ZTsKICAgICAgICAgIHJldHVybiBtYXRjaDsKICAgICAgICB9OwogICAgICAgIHRoaXMuaW50cm8gPSB0aGlzLmludHJvLnJlcGxhY2UocGF0dGVybiwgcmVwbGFjZXIpOwogICAgICAgIGxldCBjaGFySW5kZXggPSAwOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgaWYgKCFpc0V4Y2x1ZGVkW2NoYXJJbmRleF0pIHsKICAgICAgICAgICAgICBjaHVuay5jb250ZW50ID0gY2h1bmsuY29udGVudC5yZXBsYWNlKHBhdHRlcm4sIHJlcGxhY2VyKTsKICAgICAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjaGFySW5kZXggPSBjaHVuay5zdGFydDsKICAgICAgICAgICAgd2hpbGUgKGNoYXJJbmRleCA8IGVuZCkgewogICAgICAgICAgICAgIGlmICghaXNFeGNsdWRlZFtjaGFySW5kZXhdKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjaGFyID0gdGhpcy5vcmlnaW5hbFtjaGFySW5kZXhdOwogICAgICAgICAgICAgICAgaWYgKGNoYXIgPT09ICJcbiIpIHsKICAgICAgICAgICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IHRydWU7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNoYXIgIT09ICJcciIgJiYgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgewogICAgICAgICAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgIGlmIChjaGFySW5kZXggPT09IGNodW5rLnN0YXJ0KSB7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3BsaXRDaHVuayhjaHVuaywgY2hhckluZGV4KTsKICAgICAgICAgICAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY2hhckluZGV4ICs9IDE7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGNoYXJJbmRleCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShwYXR0ZXJuLCByZXBsYWNlcik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaW5zZXJ0KCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgcHJlcGVuZFJpZ2h0KC4uLikgb3IgYXBwZW5kTGVmdCguLi4pIgogICAgICAgICk7CiAgICAgIH0KICAgICAgaW5zZXJ0TGVmdChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydExlZnQpIHsKICAgICAgICAgIGNvbnNvbGUud2FybigKICAgICAgICAgICAgIm1hZ2ljU3RyaW5nLmluc2VydExlZnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgbWFnaWNTdHJpbmcuYXBwZW5kTGVmdCguLi4pIGluc3RlYWQiCiAgICAgICAgICApOwogICAgICAgICAgd2FybmVkLmluc2VydExlZnQgPSB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KTsKICAgICAgfQogICAgICBpbnNlcnRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydFJpZ2h0KSB7CiAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnRSaWdodCguLi4pIGlzIGRlcHJlY2F0ZWQuIFVzZSBtYWdpY1N0cmluZy5wcmVwZW5kUmlnaHQoLi4uKSBpbnN0ZWFkIgogICAgICAgICAgKTsKICAgICAgICAgIHdhcm5lZC5pbnNlcnRSaWdodCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLnByZXBlbmRSaWdodChpbmRleCwgY29udGVudCk7CiAgICAgIH0KICAgICAgbW92ZShzdGFydCwgZW5kLCBpbmRleCkgewogICAgICAgIHN0YXJ0ID0gc3RhcnQgKyB0aGlzLm9mZnNldDsKICAgICAgICBlbmQgPSBlbmQgKyB0aGlzLm9mZnNldDsKICAgICAgICBpbmRleCA9IGluZGV4ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKGluZGV4ID49IHN0YXJ0ICYmIGluZGV4IDw9IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbW92ZSBhIHNlbGVjdGlvbiBpbnNpZGUgaXRzZWxmIik7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgdGhpcy5fc3BsaXQoaW5kZXgpOwogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGNvbnN0IG9sZExlZnQgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICBjb25zdCBvbGRSaWdodCA9IGxhc3QubmV4dDsKICAgICAgICBjb25zdCBuZXdSaWdodCA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKCFuZXdSaWdodCAmJiBsYXN0ID09PSB0aGlzLmxhc3RDaHVuaykgcmV0dXJuIHRoaXM7CiAgICAgICAgY29uc3QgbmV3TGVmdCA9IG5ld1JpZ2h0ID8gbmV3UmlnaHQucHJldmlvdXMgOiB0aGlzLmxhc3RDaHVuazsKICAgICAgICBpZiAob2xkTGVmdCkgb2xkTGVmdC5uZXh0ID0gb2xkUmlnaHQ7CiAgICAgICAgaWYgKG9sZFJpZ2h0KSBvbGRSaWdodC5wcmV2aW91cyA9IG9sZExlZnQ7CiAgICAgICAgaWYgKG5ld0xlZnQpIG5ld0xlZnQubmV4dCA9IGZpcnN0OwogICAgICAgIGlmIChuZXdSaWdodCkgbmV3UmlnaHQucHJldmlvdXMgPSBsYXN0OwogICAgICAgIGlmICghZmlyc3QucHJldmlvdXMpIHRoaXMuZmlyc3RDaHVuayA9IGxhc3QubmV4dDsKICAgICAgICBpZiAoIWxhc3QubmV4dCkgewogICAgICAgICAgdGhpcy5sYXN0Q2h1bmsgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICAgIHRoaXMubGFzdENodW5rLm5leHQgPSBudWxsOwogICAgICAgIH0KICAgICAgICBmaXJzdC5wcmV2aW91cyA9IG5ld0xlZnQ7CiAgICAgICAgbGFzdC5uZXh0ID0gbmV3UmlnaHQgfHwgbnVsbDsKICAgICAgICBpZiAoIW5ld0xlZnQpIHRoaXMuZmlyc3RDaHVuayA9IGZpcnN0OwogICAgICAgIGlmICghbmV3UmlnaHQpIHRoaXMubGFzdENodW5rID0gbGFzdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvdmVyd3JpdGUoc3RhcnQsIGVuZCwgY29udGVudCwgb3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZShzdGFydCwgZW5kLCBjb250ZW50LCB7IC4uLm9wdGlvbnMsIG92ZXJ3cml0ZTogIW9wdGlvbnMuY29udGVudE9ubHkgfSk7CiAgICAgIH0KICAgICAgdXBkYXRlKHN0YXJ0LCBlbmQsIGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigicmVwbGFjZW1lbnQgY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiQ2Fubm90IG92ZXJ3cml0ZSBhIHplcm8tbGVuZ3RoIHJhbmdlIFx1MjAxMyB1c2UgYXBwZW5kTGVmdCBvciBwcmVwZW5kUmlnaHQgaW5zdGVhZCIKICAgICAgICAgICk7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgaWYgKG9wdGlvbnMgPT09IHRydWUpIHsKICAgICAgICAgIGlmICghd2FybmVkLnN0b3JlTmFtZSkgewogICAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICAgIlRoZSBmaW5hbCBhcmd1bWVudCB0byBtYWdpY1N0cmluZy5vdmVyd3JpdGUoLi4uKSBzaG91bGQgYmUgYW4gb3B0aW9ucyBvYmplY3QuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcmljaC1oYXJyaXMvbWFnaWMtc3RyaW5nIgogICAgICAgICAgICApOwogICAgICAgICAgICB3YXJuZWQuc3RvcmVOYW1lID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wdGlvbnMgPSB7IHN0b3JlTmFtZTogdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBzdG9yZU5hbWUgPSBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zLnN0b3JlTmFtZSA6IGZhbHNlOwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZSA9IG9wdGlvbnMgIT09IHZvaWQgMCA/IG9wdGlvbnMub3ZlcndyaXRlIDogZmFsc2U7CiAgICAgICAgaWYgKHN0b3JlTmFtZSkgewogICAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMuc3RvcmVkTmFtZXMsIG9yaWdpbmFsLCB7CiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgICAgICB2YWx1ZTogdHJ1ZSwKICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGlmIChmaXJzdCkgewogICAgICAgICAgbGV0IGNodW5rID0gZmlyc3Q7CiAgICAgICAgICB3aGlsZSAoY2h1bmsgIT09IGxhc3QpIHsKICAgICAgICAgICAgaWYgKGNodW5rLm5leHQgIT09IHRoaXMuYnlTdGFydFtjaHVuay5lbmRdKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgb3ZlcndyaXRlIGFjcm9zcyBhIHNwbGl0IHBvaW50Iik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICBjaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmaXJzdC5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSwgIW92ZXJ3cml0ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gbmV3IENodW5rKHN0YXJ0LCBlbmQsICIiKS5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSk7CiAgICAgICAgICBsYXN0Lm5leHQgPSBuZXdDaHVuazsKICAgICAgICAgIG5ld0NodW5rLnByZXZpb3VzID0gbGFzdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZChjb250ZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigib3V0cm8gY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5pbnRybyA9IGNvbnRlbnQgKyB0aGlzLmludHJvOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsucHJlcGVuZExlZnQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5wcmVwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcmVtb3ZlKHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5pbnRybyA9ICIiOwogICAgICAgICAgY2h1bmsub3V0cm8gPSAiIjsKICAgICAgICAgIGNodW5rLmVkaXQoIiIpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlc2V0KHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5yZXNldCgpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGxhc3RDaGFyKCkgewogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRoaXMub3V0cm9bdGhpcy5vdXRyby5sZW5ndGggLSAxXTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsub3V0cm9bY2h1bmsub3V0cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHJldHVybiBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsuaW50cm9bY2h1bmsuaW50cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5wcmV2aW91cyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdGhpcy5pbnRyb1t0aGlzLmludHJvLmxlbmd0aCAtIDFdOwogICAgICAgIHJldHVybiAiIjsKICAgICAgfQogICAgICBsYXN0TGluZSgpIHsKICAgICAgICBsZXQgbGluZUluZGV4ID0gdGhpcy5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIHRoaXMub3V0cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpOwogICAgICAgIGxldCBsaW5lU3RyID0gdGhpcy5vdXRybzsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiBjaHVuay5vdXRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgICAgICBsaW5lU3RyID0gY2h1bmsub3V0cm8gKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5jb250ZW50Lmxhc3RJbmRleE9mKG4pOwogICAgICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIGNodW5rLmNvbnRlbnQuc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmNvbnRlbnQgKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsuaW50cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gY2h1bmsuaW50cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmludHJvICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLnByZXZpb3VzKTsKICAgICAgICBsaW5lSW5kZXggPSB0aGlzLmludHJvLmxhc3RJbmRleE9mKG4pOwogICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gdGhpcy5pbnRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgbGluZVN0cjsKICAgICAgfQogICAgICBzbGljZShzdGFydCA9IDAsIGVuZCA9IHRoaXMub3JpZ2luYWwubGVuZ3RoIC0gdGhpcy5vZmZzZXQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgd2hpbGUgKGNodW5rICYmIChjaHVuay5zdGFydCA+IHN0YXJ0IHx8IGNodW5rLmVuZCA8PSBzdGFydCkpIHsKICAgICAgICAgIGlmIChjaHVuay5zdGFydCA8IGVuZCAmJiBjaHVuay5lbmQgPj0gZW5kKSB7CiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgICB9CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIGlmIChjaHVuayAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuc3RhcnQgIT09IHN0YXJ0KQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgdXNlIHJlcGxhY2VkIGNoYXJhY3RlciAke3N0YXJ0fSBhcyBzbGljZSBzdGFydCBhbmNob3IuYCk7CiAgICAgICAgY29uc3Qgc3RhcnRDaHVuayA9IGNodW5rOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgaWYgKGNodW5rLmludHJvICYmIChzdGFydENodW5rICE9PSBjaHVuayB8fCBjaHVuay5zdGFydCA9PT0gc3RhcnQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5pbnRybzsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGNvbnRhaW5zRW5kID0gY2h1bmsuc3RhcnQgPCBlbmQgJiYgY2h1bmsuZW5kID49IGVuZDsKICAgICAgICAgIGlmIChjb250YWluc0VuZCAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuZW5kICE9PSBlbmQpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVzZSByZXBsYWNlZCBjaGFyYWN0ZXIgJHtlbmR9IGFzIHNsaWNlIGVuZCBhbmNob3IuYCk7CiAgICAgICAgICBjb25zdCBzbGljZVN0YXJ0ID0gc3RhcnRDaHVuayA9PT0gY2h1bmsgPyBzdGFydCAtIGNodW5rLnN0YXJ0IDogMDsKICAgICAgICAgIGNvbnN0IHNsaWNlRW5kID0gY29udGFpbnNFbmQgPyBjaHVuay5jb250ZW50Lmxlbmd0aCArIGVuZCAtIGNodW5rLmVuZCA6IGNodW5rLmNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgcmVzdWx0ICs9IGNodW5rLmNvbnRlbnQuc2xpY2Uoc2xpY2VTdGFydCwgc2xpY2VFbmQpOwogICAgICAgICAgaWYgKGNodW5rLm91dHJvICYmICghY29udGFpbnNFbmQgfHwgY2h1bmsuZW5kID09PSBlbmQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5vdXRybzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjb250YWluc0VuZCkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICAvLyBUT0RPIGRlcHJlY2F0ZSB0aGlzPyBub3QgcmVhbGx5IHZlcnkgdXNlZnVsCiAgICAgIHNuaXAoc3RhcnQsIGVuZCkgewogICAgICAgIGNvbnN0IGNsb25lID0gdGhpcy5jbG9uZSgpOwogICAgICAgIGNsb25lLnJlbW92ZSgwLCBzdGFydCk7CiAgICAgICAgY2xvbmUucmVtb3ZlKGVuZCwgY2xvbmUub3JpZ2luYWwubGVuZ3RoKTsKICAgICAgICByZXR1cm4gY2xvbmU7CiAgICAgIH0KICAgICAgX3NwbGl0KGluZGV4KSB7CiAgICAgICAgaWYgKHRoaXMuYnlTdGFydFtpbmRleF0gfHwgdGhpcy5ieUVuZFtpbmRleF0pIHJldHVybjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RTZWFyY2hlZENodW5rOwogICAgICAgIGNvbnN0IHNlYXJjaEZvcndhcmQgPSBpbmRleCA+IGNodW5rLmVuZDsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGlmIChjaHVuay5jb250YWlucyhpbmRleCkpIHJldHVybiB0aGlzLl9zcGxpdENodW5rKGNodW5rLCBpbmRleCk7CiAgICAgICAgICBjaHVuayA9IHNlYXJjaEZvcndhcmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IHRoaXMuYnlFbmRbY2h1bmsuc3RhcnRdOwogICAgICAgIH0KICAgICAgfQogICAgICBfc3BsaXRDaHVuayhjaHVuaywgaW5kZXgpIHsKICAgICAgICBpZiAoY2h1bmsuZWRpdGVkICYmIGNodW5rLmNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBsb2MgPSBnZXRMb2NhdG9yKHRoaXMub3JpZ2luYWwpKGluZGV4KTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbm5vdCBzcGxpdCBhIGNodW5rIHRoYXQgaGFzIGFscmVhZHkgYmVlbiBlZGl0ZWQgKCR7bG9jLmxpbmV9OiR7bG9jLmNvbHVtbn0gXHUyMDEzICIke2NodW5rLm9yaWdpbmFsfSIpYAogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3Q2h1bmsgPSBjaHVuay5zcGxpdChpbmRleCk7CiAgICAgICAgdGhpcy5ieUVuZFtpbmRleF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5U3RhcnRbaW5kZXhdID0gbmV3Q2h1bms7CiAgICAgICAgdGhpcy5ieUVuZFtuZXdDaHVuay5lbmRdID0gbmV3Q2h1bms7CiAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBuZXdDaHVuazsKICAgICAgICB0aGlzLmxhc3RTZWFyY2hlZENodW5rID0gY2h1bms7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgbGV0IHN0cjIgPSB0aGlzLmludHJvOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIHN0cjIgKz0gY2h1bmsudG9TdHJpbmcoKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHN0cjIgKyB0aGlzLm91dHJvOwogICAgICB9CiAgICAgIGlzRW1wdHkoKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGggJiYgY2h1bmsuaW50cm8udHJpbSgpIHx8IGNodW5rLmNvbnRlbnQubGVuZ3RoICYmIGNodW5rLmNvbnRlbnQudHJpbSgpIHx8IGNodW5rLm91dHJvLmxlbmd0aCAmJiBjaHVuay5vdXRyby50cmltKCkpCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLm5leHQpOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIGxlbmd0aCgpIHsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgbGV0IGxlbmd0aCA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgbGVuZ3RoICs9IGNodW5rLmludHJvLmxlbmd0aCArIGNodW5rLmNvbnRlbnQubGVuZ3RoICsgY2h1bmsub3V0cm8ubGVuZ3RoOwogICAgICAgIH0gd2hpbGUgKGNodW5rID0gY2h1bmsubmV4dCk7CiAgICAgICAgcmV0dXJuIGxlbmd0aDsKICAgICAgfQogICAgICB0cmltTGluZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbSgiW1xcclxcbl0iKTsKICAgICAgfQogICAgICB0cmltKGNoYXJUeXBlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbVN0YXJ0KGNoYXJUeXBlKS50cmltRW5kKGNoYXJUeXBlKTsKICAgICAgfQogICAgICB0cmltRW5kQWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1FbmQocngpOwogICAgICAgICAgaWYgKGNodW5rLmVuZCAhPT0gZW5kKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmxhc3RDaHVuayA9PT0gY2h1bmspIHsKICAgICAgICAgICAgICB0aGlzLmxhc3RDaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5lbmRdID0gY2h1bms7CiAgICAgICAgICAgIHRoaXMuYnlTdGFydFtjaHVuay5uZXh0LnN0YXJ0XSA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsubmV4dC5lbmRdID0gY2h1bmsubmV4dDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhYm9ydGVkKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfSB3aGlsZSAoY2h1bmspOwogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICB0cmltRW5kKGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltRW5kQWJvcnRlZChjaGFyVHlwZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1TdGFydChyeCk7CiAgICAgICAgICBpZiAoY2h1bmsuZW5kICE9PSBlbmQpIHsKICAgICAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICB0aGlzLmJ5RW5kW2NodW5rLmVuZF0gPSBjaHVuazsKICAgICAgICAgICAgdGhpcy5ieVN0YXJ0W2NodW5rLm5leHQuc3RhcnRdID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5uZXh0LmVuZF0gPSBjaHVuay5uZXh0OwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFib3J0ZWQpIHJldHVybiB0cnVlOwogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0gd2hpbGUgKGNodW5rKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltU3RhcnRBYm9ydGVkKGNoYXJUeXBlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBoYXNDaGFuZ2VkKCkgewogICAgICAgIHJldHVybiB0aGlzLm9yaWdpbmFsICE9PSB0aGlzLnRvU3RyaW5nKCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VSZWdleHAoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgZnVuY3Rpb24gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHN0cjIpIHsKICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudC5yZXBsYWNlKC9cJChcJHwmfFxkKykvZywgKF8sIGkpID0+IHsKICAgICAgICAgICAgICBpZiAoaSA9PT0gIiQiKSByZXR1cm4gIiQiOwogICAgICAgICAgICAgIGlmIChpID09PSAiJiIpIHJldHVybiBtYXRjaFswXTsKICAgICAgICAgICAgICBjb25zdCBudW0gPSAraTsKICAgICAgICAgICAgICBpZiAobnVtIDwgbWF0Y2gubGVuZ3RoKSByZXR1cm4gbWF0Y2hbK2ldOwogICAgICAgICAgICAgIHJldHVybiBgJCR7aX1gOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudCguLi5tYXRjaCwgbWF0Y2guaW5kZXgsIHN0cjIsIG1hdGNoLmdyb3Vwcyk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIG1hdGNoQWxsKHJlLCBzdHIyKSB7CiAgICAgICAgICBsZXQgbWF0Y2g7CiAgICAgICAgICBjb25zdCBtYXRjaGVzID0gW107CiAgICAgICAgICB3aGlsZSAobWF0Y2ggPSByZS5leGVjKHN0cjIpKSB7CiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWF0Y2hlczsKICAgICAgICB9CiAgICAgICAgaWYgKHNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1hdGNoQWxsKHNlYXJjaFZhbHVlLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHsKICAgICAgICAgICAgaWYgKG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudDIgPSBnZXRSZXBsYWNlbWVudChtYXRjaCwgdGhpcy5vcmlnaW5hbCk7CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50MiAhPT0gbWF0Y2hbMF0pIHsKICAgICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3JpZ2luYWwubWF0Y2goc2VhcmNoVmFsdWUpOwogICAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnQyID0gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHRoaXMub3JpZ2luYWwpOwogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQyICE9PSBtYXRjaFswXSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfcmVwbGFjZVN0cmluZyhzdHJpbmcsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgeyBvcmlnaW5hbCB9ID0gdGhpczsKICAgICAgICBjb25zdCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsKICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShpbmRleCwgaW5kZXggKyBzdHJpbmcubGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlcGxhY2Uoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBzZWFyY2hWYWx1ZSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlU3RyaW5nKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VBbGxTdHJpbmcoc3RyaW5nLCByZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IHsgb3JpZ2luYWwgfSA9IHRoaXM7CiAgICAgICAgY29uc3Qgc3RyaW5nTGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsgaW5kZXggIT09IC0xOyBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nLCBpbmRleCArIHN0cmluZ0xlbmd0aCkpIHsKICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gb3JpZ2luYWwuc2xpY2UoaW5kZXgsIGluZGV4ICsgc3RyaW5nTGVuZ3RoKTsKICAgICAgICAgIGlmIChwcmV2aW91cyAhPT0gcmVwbGFjZW1lbnQpIHRoaXMub3ZlcndyaXRlKGluZGV4LCBpbmRleCArIHN0cmluZ0xlbmd0aCwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGlmICh0eXBlb2Ygc2VhcmNoVmFsdWUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZUFsbFN0cmluZyhzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICBpZiAoIXNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIk1hZ2ljU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIGNhbGxlZCB3aXRoIGEgbm9uLWdsb2JhbCBSZWdFeHAgYXJndW1lbnQiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZVJlZ2V4cChzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICB9CiAgICB9OwogICAgdmFyIGhhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogICAgdmFyIEJ1bmRsZSA9IGNsYXNzIF9CdW5kbGUgewogICAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHsKICAgICAgICB0aGlzLmludHJvID0gb3B0aW9ucy5pbnRybyB8fCAiIjsKICAgICAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yICE9PSB2b2lkIDAgPyBvcHRpb25zLnNlcGFyYXRvciA6ICJcbiI7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUgPSB7fTsKICAgICAgfQogICAgICBhZGRTb3VyY2Uoc291cmNlKSB7CiAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIE1hZ2ljU3RyaW5nKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgICBjb250ZW50OiBzb3VyY2UsCiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIHNlcGFyYXRvcjogdGhpcy5zZXBhcmF0b3IKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzT2JqZWN0Mihzb3VyY2UpIHx8ICFzb3VyY2UuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiYnVuZGxlLmFkZFNvdXJjZSgpIHRha2VzIGFuIG9iamVjdCB3aXRoIGEgYGNvbnRlbnRgIHByb3BlcnR5LCB3aGljaCBzaG91bGQgYmUgYW4gaW5zdGFuY2Ugb2YgTWFnaWNTdHJpbmcsIGFuZCBhbiBvcHRpb25hbCBgZmlsZW5hbWVgIgogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgWyJmaWxlbmFtZSIsICJpZ25vcmVMaXN0IiwgImluZGVudEV4Y2x1c2lvblJhbmdlcyIsICJzZXBhcmF0b3IiXS5mb3JFYWNoKChvcHRpb24pID0+IHsKICAgICAgICAgIGlmICghaGFzT3duUHJvcC5jYWxsKHNvdXJjZSwgb3B0aW9uKSkgc291cmNlW29wdGlvbl0gPSBzb3VyY2UuY29udGVudFtvcHRpb25dOwogICAgICAgIH0pOwogICAgICAgIGlmIChzb3VyY2Uuc2VwYXJhdG9yID09PSB2b2lkIDApIHsKICAgICAgICAgIHNvdXJjZS5zZXBhcmF0b3IgPSB0aGlzLnNlcGFyYXRvcjsKICAgICAgICB9CiAgICAgICAgaWYgKHNvdXJjZS5maWxlbmFtZSkgewogICAgICAgICAgaWYgKCFoYXNPd25Qcm9wLmNhbGwodGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUsIHNvdXJjZS5maWxlbmFtZSkpIHsKICAgICAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA9IHRoaXMudW5pcXVlU291cmNlcy5sZW5ndGg7CiAgICAgICAgICAgIHRoaXMudW5pcXVlU291cmNlcy5wdXNoKHsgZmlsZW5hbWU6IHNvdXJjZS5maWxlbmFtZSwgY29udGVudDogc291cmNlLmNvbnRlbnQub3JpZ2luYWwgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCB1bmlxdWVTb3VyY2UgPSB0aGlzLnVuaXF1ZVNvdXJjZXNbdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXV07CiAgICAgICAgICAgIGlmIChzb3VyY2UuY29udGVudC5vcmlnaW5hbCAhPT0gdW5pcXVlU291cmNlLmNvbnRlbnQpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYElsbGVnYWwgc291cmNlOiBzYW1lIGZpbGVuYW1lICgke3NvdXJjZS5maWxlbmFtZX0pLCBkaWZmZXJlbnQgY29udGVudHNgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLnNvdXJjZXMucHVzaChzb3VyY2UpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZChzdHIyLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgY29udGVudDogbmV3IE1hZ2ljU3RyaW5nKHN0cjIpLAogICAgICAgICAgc2VwYXJhdG9yOiBvcHRpb25zICYmIG9wdGlvbnMuc2VwYXJhdG9yIHx8ICIiCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgYnVuZGxlID0gbmV3IF9CdW5kbGUoewogICAgICAgICAgaW50cm86IHRoaXMuaW50cm8sCiAgICAgICAgICBzZXBhcmF0b3I6IHRoaXMuc2VwYXJhdG9yCiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgYnVuZGxlLmFkZFNvdXJjZSh7CiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIGNvbnRlbnQ6IHNvdXJjZS5jb250ZW50LmNsb25lKCksCiAgICAgICAgICAgIHNlcGFyYXRvcjogc291cmNlLnNlcGFyYXRvcgogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGJ1bmRsZTsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucyA9IHt9KSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBbXTsKICAgICAgICBsZXQgeF9nb29nbGVfaWdub3JlTGlzdCA9IHZvaWQgMDsKICAgICAgICB0aGlzLnNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7CiAgICAgICAgICBPYmplY3Qua2V5cyhzb3VyY2UuY29udGVudC5zdG9yZWROYW1lcykuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAoIX5uYW1lcy5pbmRleE9mKG5hbWUpKSBuYW1lcy5wdXNoKG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZHZhbmNlKHRoaXMuc2VwYXJhdG9yKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gc291cmNlLmZpbGVuYW1lID8gdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA6IC0xOwogICAgICAgICAgY29uc3QgbWFnaWNTdHJpbmcgPSBzb3VyY2UuY29udGVudDsKICAgICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IobWFnaWNTdHJpbmcub3JpZ2luYWwpOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLmludHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcuaW50cm8pOwogICAgICAgICAgfQogICAgICAgICAgbWFnaWNTdHJpbmcuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5pbnRybyk7CiAgICAgICAgICAgIGlmIChzb3VyY2UuZmlsZW5hbWUpIHsKICAgICAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmsuY29udGVudCwKICAgICAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmssCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLm9yaWdpbmFsLAogICAgICAgICAgICAgICAgICBsb2MsCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLnNvdXJjZW1hcExvY2F0aW9ucwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5jb250ZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICAgIH0pOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLm91dHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcub3V0cm8pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZS5pZ25vcmVMaXN0ICYmIHNvdXJjZUluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBpZiAoeF9nb29nbGVfaWdub3JlTGlzdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdCA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHhfZ29vZ2xlX2lnbm9yZUxpc3QucHVzaChzb3VyY2VJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZpbGU6IG9wdGlvbnMuZmlsZSA/IG9wdGlvbnMuZmlsZS5zcGxpdCgvWy9cXF0vKS5wb3AoKSA6IHZvaWQgMCwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maWxlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSwgc291cmNlLmZpbGVuYW1lKSA6IHNvdXJjZS5maWxlbmFtZTsKICAgICAgICAgIH0pLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5pbmNsdWRlQ29udGVudCA/IHNvdXJjZS5jb250ZW50IDogbnVsbDsKICAgICAgICAgIH0pLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgY29uc3QgaW5kZW50U3RyaW5nQ291bnRzID0ge307CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgY29uc3QgaW5kZW50U3RyID0gc291cmNlLmNvbnRlbnQuX2dldFJhd0luZGVudFN0cmluZygpOwogICAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gbnVsbCkgcmV0dXJuOwogICAgICAgICAgaWYgKCFpbmRlbnRTdHJpbmdDb3VudHNbaW5kZW50U3RyXSkgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gPSAwOwogICAgICAgICAgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gKz0gMTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoaW5kZW50U3RyaW5nQ291bnRzKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICByZXR1cm4gaW5kZW50U3RyaW5nQ291bnRzW2FdIC0gaW5kZW50U3RyaW5nQ291bnRzW2JdOwogICAgICAgIH0pWzBdIHx8ICIJIjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyKSB7CiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICBpbmRlbnRTdHIgPSB0aGlzLmdldEluZGVudFN0cmluZygpOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgbGV0IHRyYWlsaW5nTmV3bGluZSA9ICF0aGlzLmludHJvIHx8IHRoaXMuaW50cm8uc2xpY2UoLTEpID09PSAiXG4iOwogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IGluZGVudFN0YXJ0ID0gdHJhaWxpbmdOZXdsaW5lIHx8IGkgPiAwICYmIC9ccj9cbiQvLnRlc3Qoc2VwYXJhdG9yKTsKICAgICAgICAgIHNvdXJjZS5jb250ZW50LmluZGVudChpbmRlbnRTdHIsIHsKICAgICAgICAgICAgZXhjbHVkZTogc291cmNlLmluZGVudEV4Y2x1c2lvblJhbmdlcywKICAgICAgICAgICAgaW5kZW50U3RhcnQKICAgICAgICAgICAgLy86IHRyYWlsaW5nTmV3bGluZSB8fCAvXHI/XG4kLy50ZXN0KCBzZXBhcmF0b3IgKSAgLy90cnVlLy8vXHI/XG4vLnRlc3QoIHNlcGFyYXRvciApCiAgICAgICAgICB9KTsKICAgICAgICAgIHRyYWlsaW5nTmV3bGluZSA9IHNvdXJjZS5jb250ZW50Lmxhc3RDaGFyKCkgPT09ICJcbiI7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBpbmRlbnRTdHIgKyB0aGlzLmludHJvLnJlcGxhY2UoL15bXlxuXS9nbSwgKG1hdGNoLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gaW5kZXggPiAwID8gaW5kZW50U3RyICsgbWF0Y2ggOiBtYXRjaDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kKHN0cjIpIHsKICAgICAgICB0aGlzLmludHJvID0gc3RyMiArIHRoaXMuaW50cm87CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuc291cmNlcy5tYXAoKHNvdXJjZSwgaSkgPT4gewogICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0gc291cmNlLnNlcGFyYXRvciAhPT0gdm9pZCAwID8gc291cmNlLnNlcGFyYXRvciA6IHRoaXMuc2VwYXJhdG9yOwogICAgICAgICAgY29uc3Qgc3RyMiA9IChpID4gMCA/IHNlcGFyYXRvciA6ICIiKSArIHNvdXJjZS5jb250ZW50LnRvU3RyaW5nKCk7CiAgICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgICB9KS5qb2luKCIiKTsKICAgICAgICByZXR1cm4gdGhpcy5pbnRybyArIGJvZHk7CiAgICAgIH0KICAgICAgaXNFbXB0eSgpIHsKICAgICAgICBpZiAodGhpcy5pbnRyby5sZW5ndGggJiYgdGhpcy5pbnRyby50cmltKCkpIHJldHVybiBmYWxzZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VzLnNvbWUoKHNvdXJjZSkgPT4gIXNvdXJjZS5jb250ZW50LmlzRW1wdHkoKSkpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBsZW5ndGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlcy5yZWR1Y2UoCiAgICAgICAgICAobGVuZ3RoLCBzb3VyY2UpID0+IGxlbmd0aCArIHNvdXJjZS5jb250ZW50Lmxlbmd0aCgpLAogICAgICAgICAgdGhpcy5pbnRyby5sZW5ndGgKICAgICAgICApOwogICAgICB9CiAgICAgIHRyaW1MaW5lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltKCJbXFxyXFxuXSIpOwogICAgICB9CiAgICAgIHRyaW0oY2hhclR5cGUpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltU3RhcnQoY2hhclR5cGUpLnRyaW1FbmQoY2hhclR5cGUpOwogICAgICB9CiAgICAgIHRyaW1TdGFydChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKCF0aGlzLmludHJvKSB7CiAgICAgICAgICBsZXQgc291cmNlOwogICAgICAgICAgbGV0IGkgPSAwOwogICAgICAgICAgZG8gewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLnNvdXJjZXNbaSsrXTsKICAgICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfSB3aGlsZSAoIXNvdXJjZS5jb250ZW50LnRyaW1TdGFydEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbUVuZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgbGV0IHNvdXJjZTsKICAgICAgICBsZXQgaSA9IHRoaXMuc291cmNlcy5sZW5ndGggLSAxOwogICAgICAgIGRvIHsKICAgICAgICAgIHNvdXJjZSA9IHRoaXMuc291cmNlc1tpLS1dOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICghc291cmNlLmNvbnRlbnQudHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgfTsKICAgIE1hZ2ljU3RyaW5nLkJ1bmRsZSA9IEJ1bmRsZTsKICAgIE1hZ2ljU3RyaW5nLlNvdXJjZU1hcCA9IFNvdXJjZU1hcDsKICAgIE1hZ2ljU3RyaW5nLmRlZmF1bHQgPSBNYWdpY1N0cmluZzsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IE1hZ2ljU3RyaW5nOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcwp2YXIgcmVxdWlyZV9yZWNvcmRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBleHBvcnRzMi5JbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBtYWdpY19zdHJpbmdfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX21hZ2ljX3N0cmluZ19janMoKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBJbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5kZXgsIG1pbiwgbWF4ID0gSW5maW5pdHkpIHsKICAgICAgICBzdXBlcihgSW5kZXggJHtpbmRleH0gb3V0c2lkZSBvZiByYW5nZSBbJHttaW59LCAke21heH1dLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uID0gSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uOwogICAgdmFyIFVwZGF0ZVJlY29yZGVyQmFzZSA9IGNsYXNzIF9VcGRhdGVSZWNvcmRlckJhc2UgewogICAgICBkYXRhOwogICAgICBib207CiAgICAgIF9wYXRoOwogICAgICBjb250ZW50OwogICAgICBjb25zdHJ1Y3RvcihkYXRhLCBwYXRoLCBlbmNvZGluZyA9ICJ1dGYtOCIsIGJvbSA9IGZhbHNlKSB7CiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTsKICAgICAgICB0aGlzLmJvbSA9IGJvbTsKICAgICAgICBsZXQgdGV4dDsKICAgICAgICB0cnkgewogICAgICAgICAgdGV4dCA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgeyBmYXRhbDogdHJ1ZSwgaWdub3JlQk9NOiBmYWxzZSB9KS5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyAke2VuY29kaW5nfSB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fcGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5jb250ZW50ID0gbmV3IG1hZ2ljX3N0cmluZ18xLmRlZmF1bHQodGV4dCk7CiAgICAgIH0KICAgICAgc3RhdGljIGNyZWF0ZUZyb21GaWxlRW50cnkoZW50cnkpIHsKICAgICAgICBjb25zdCBjMCA9IGVudHJ5LmNvbnRlbnQuYnl0ZUxlbmd0aCA+IDAgJiYgZW50cnkuY29udGVudC5yZWFkVUludDgoMCk7CiAgICAgICAgY29uc3QgYzEgPSBlbnRyeS5jb250ZW50LmJ5dGVMZW5ndGggPiAxICYmIGVudHJ5LmNvbnRlbnQucmVhZFVJbnQ4KDEpOwogICAgICAgIGNvbnN0IGMyID0gZW50cnkuY29udGVudC5ieXRlTGVuZ3RoID4gMiAmJiBlbnRyeS5jb250ZW50LnJlYWRVSW50OCgyKTsKICAgICAgICBpZiAoYzAgPT0gMjM5ICYmIGMxID09IDE4NyAmJiBjMiA9PSAxOTEpIHsKICAgICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoLCAidXRmLTgiLCB0cnVlKTsKICAgICAgICB9IGVsc2UgaWYgKGMwID09PSAyNTUgJiYgYzEgPT0gMjU0KSB7CiAgICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCwgInV0Zi0xNmxlIiwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIGlmIChjMCA9PT0gMjU0ICYmIGMxID09IDI1NSkgewogICAgICAgICAgcmV0dXJuIG5ldyBfVXBkYXRlUmVjb3JkZXJCYXNlKGVudHJ5LmNvbnRlbnQsIGVudHJ5LnBhdGgsICJ1dGYtMTZiZSIsIHRydWUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgX2Fzc2VydEluZGV4KGluZGV4KSB7CiAgICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+IHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpIHsKICAgICAgICAgIHRocm93IG5ldyBJbmRleE91dE9mQm91bmRFeGNlcHRpb24oaW5kZXgsIDAsIHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpOwogICAgICAgIH0KICAgICAgfQogICAgICAvLyBUaGVzZSBqdXN0IHJlY29yZCBjaGFuZ2VzLgogICAgICBpbnNlcnRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50LnRvU3RyaW5nKCkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRSaWdodChpbmRleCwgY29udGVudC50b1N0cmluZygpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZW1vdmUoaW5kZXgsIGxlbmd0aCkgewogICAgICAgIHRoaXMuX2Fzc2VydEluZGV4KGluZGV4KTsKICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlKGluZGV4LCBpbmRleCArIGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwbHkoY29udGVudCkgewogICAgICAgIGlmICghY29udGVudC5lcXVhbHModGhpcy5kYXRhKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHRoaXMucGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc3VsdCA9IEJ1ZmZlci5mcm9tKCh0aGlzLmJvbSA/ICJcdUZFRkYiIDogIiIpICsgdGhpcy5jb250ZW50LnRvU3RyaW5nKCksICJ1dGYtOCIpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBVcGRhdGVSZWNvcmRlckJhc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NvcGVkVHJlZSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGRlbGVnYXRlXzEgPSByZXF1aXJlX2RlbGVnYXRlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBTY29wZWRGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9iYXNlOwogICAgICBzY29wZTsKICAgICAgY29uc3RydWN0b3IoX2Jhc2UsIHNjb3BlKSB7CiAgICAgICAgdGhpcy5fYmFzZSA9IF9iYXNlOwogICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuc2NvcGUsIHRoaXMuX2Jhc2UucGF0aCkpOwogICAgICB9CiAgICAgIGdldCBjb250ZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmNvbnRlbnQ7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkRGlyRW50cnkgPSBjbGFzcyBfU2NvcGVkRGlyRW50cnkgewogICAgICBfYmFzZTsKICAgICAgc2NvcGU7CiAgICAgIGNvbnN0cnVjdG9yKF9iYXNlLCBzY29wZSkgewogICAgICAgIHRoaXMuX2Jhc2UgPSBfYmFzZTsKICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7CiAgICAgIH0KICAgICAgZ2V0IHBhcmVudCgpIHsKICAgICAgICBpZiAoIXRoaXMuX2Jhc2UucGFyZW50IHx8IHRoaXMuX2Jhc2UucGF0aCA9PSB0aGlzLnNjb3BlKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBfU2NvcGVkRGlyRW50cnkodGhpcy5fYmFzZS5wYXJlbnQsIHRoaXMuc2NvcGUpOwogICAgICB9CiAgICAgIGdldCBwYXRoKCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgdGhpcy5fYmFzZS5wYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmRpcnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZGlyczsKICAgICAgfQogICAgICBnZXQgc3ViZmlsZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZmlsZXM7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZGlyKG5hbWUpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgX1Njb3BlZERpckVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZmlsZShuYW1lKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IFNjb3BlZEZpbGVFbnRyeShlbnRyeSwgdGhpcy5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnZpc2l0KChwYXRoLCBlbnRyeSkgPT4gewogICAgICAgICAgdmlzaXRvcigoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgcGF0aCkpLCBlbnRyeSAmJiBuZXcgU2NvcGVkRmlsZUVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkVHJlZSA9IGNsYXNzIF9TY29wZWRUcmVlIHsKICAgICAgX2Jhc2U7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihfYmFzZSwgc2NvcGUpIHsKICAgICAgICB0aGlzLl9iYXNlID0gX2Jhc2U7CiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFNjb3BlID0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHNjb3BlKTsKICAgICAgICB0aGlzLl9yb290ID0gbmV3IFNjb3BlZERpckVudHJ5KHRoaXMuX2Jhc2UuZ2V0RGlyKG5vcm1hbGl6ZWRTY29wZSksIG5vcm1hbGl6ZWRTY29wZSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3Q7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX1Njb3BlZFRyZWUodGhpcy5fYmFzZS5icmFuY2goKSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgbWVyZ2Uob3RoZXIsIHN0cmF0ZWd5KSB7CiAgICAgICAgY29uc3Qgc2VsZjIgPSB0aGlzOwogICAgICAgIGNvbnN0IGRlbGVnYXRlID0gbmV3IGNsYXNzIGV4dGVuZHMgZGVsZWdhdGVfMS5EZWxlZ2F0ZVRyZWUgewogICAgICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgICAgIHJldHVybiBvdGhlci5hY3Rpb25zLm1hcCgoYWN0aW9uKSA9PiBzZWxmMi5fZnVsbFBhdGhBY3Rpb24oYWN0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfShvdGhlcik7CiAgICAgICAgdGhpcy5fYmFzZS5tZXJnZShkZWxlZ2F0ZSwgc3RyYXRlZ3kpOwogICAgICB9CiAgICAgIC8vIFJlYWRvbmx5LgogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVhZFRleHQodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlYWRKc29uKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkSnNvbih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5leGlzdHModGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldCh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWRGaWxlRW50cnkoZW50cnksIHRoaXMuX3Jvb3Quc2NvcGUpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldERpcih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWREaXJFbnRyeShlbnRyeSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uub3ZlcndyaXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuYmVnaW5VcGRhdGUodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5jb21taXRVcGRhdGUocmVjb3JkKTsKICAgICAgfQogICAgICAvLyBTdHJ1Y3R1cmFsIG1ldGhvZHMuCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuY3JlYXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmRlbGV0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVuYW1lKHRoaXMuX2Z1bGxQYXRoKGZyb20pLCB0aGlzLl9mdWxsUGF0aCh0bykpOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5hcHBseSh0aGlzLl9mdWxsUGF0aEFjdGlvbihhY3Rpb24pLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgY29uc3Qgc2NvcGVkQWN0aW9ucyA9IFtdOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRoaXMuX2Jhc2UuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFhY3Rpb24ucGF0aC5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFjdGlvbi5raW5kICE9PSAiciIpIHsKICAgICAgICAgICAgc2NvcGVkQWN0aW9ucy5wdXNoKHsKICAgICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgICAgcGF0aDogKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuX3Jvb3Quc2NvcGUsIGFjdGlvbi5wYXRoKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbi50by5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIHNjb3BlZEFjdGlvbnMucHVzaCh7CiAgICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICAgIHBhdGg6ICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLl9yb290LnNjb3BlLCBhY3Rpb24ucGF0aCkpLAogICAgICAgICAgICAgIHRvOiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5fcm9vdC5zY29wZSwgYWN0aW9uLnRvKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBzY29wZWRBY3Rpb25zOwogICAgICB9CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfZnVsbFBhdGgocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKHRoaXMuX3Jvb3Quc2NvcGUsICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgX2Z1bGxQYXRoQWN0aW9uKGFjdGlvbikgewogICAgICAgIGxldCBmdWxsUGF0aEFjdGlvbjsKICAgICAgICBpZiAoYWN0aW9uLmtpbmQgPT09ICJyIikgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpLAogICAgICAgICAgICB0bzogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnRvKQogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVsbFBhdGhBY3Rpb247CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZWRUcmVlID0gU2NvcGVkVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaG9zdC10cmVlLmpzCnZhciByZXF1aXJlX2hvc3RfdHJlZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9ob3N0LXRyZWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gZXhwb3J0czIuSG9zdENyZWF0ZVRyZWUgPSBleHBvcnRzMi5Ib3N0VHJlZSA9IGV4cG9ydHMyLkhvc3REaXJFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBkZWxlZ2F0ZV8xID0gcmVxdWlyZV9kZWxlZ2F0ZSgpOwogICAgdmFyIGVudHJ5XzEgPSByZXF1aXJlX2VudHJ5KCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciByZWNvcmRlcl8xID0gcmVxdWlyZV9yZWNvcmRlcigpOwogICAgdmFyIHNjb3BlZF8xID0gcmVxdWlyZV9zY29wZWQyKCk7CiAgICB2YXIgX3VuaXF1ZUlkID0gMDsKICAgIHZhciBIb3N0RGlyRW50cnkgPSBjbGFzcyB7CiAgICAgIHBhcmVudDsKICAgICAgcGF0aDsKICAgICAgX2hvc3Q7CiAgICAgIF90cmVlOwogICAgICBjb25zdHJ1Y3RvcihwYXJlbnQsIHBhdGgsIF9ob3N0LCBfdHJlZSkgewogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIHRoaXMucGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5faG9zdCA9IF9ob3N0OwogICAgICAgIHRoaXMuX3RyZWUgPSBfdHJlZTsKICAgICAgfQogICAgICBnZXQgc3ViZGlycygpIHsKICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5saXN0KHRoaXMucGF0aCkuZmlsdGVyKChmcmFnbWVudCkgPT4gdGhpcy5faG9zdC5pc0RpcmVjdG9yeSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmZpbGVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0Lmxpc3QodGhpcy5wYXRoKS5maWx0ZXIoKGZyYWdtZW50KSA9PiB0aGlzLl9ob3N0LmlzRmlsZSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXREaXIoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXQoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMuZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpLmZvckVhY2goKGZpbGUpID0+IHZpc2l0b3IoZmlsZS5wYXRoLCBmaWxlKSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgIT09IGludGVyZmFjZV8xLkZpbGVWaXNpdG9yQ2FuY2VsVG9rZW4pIHsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpIHsKICAgICAgICBmdW5jdGlvbiBfcmVjdXJzZShlbnRyeSkgewogICAgICAgICAgcmV0dXJuIGVudHJ5LnN1YmRpcnMucmVkdWNlKChmaWxlcywgc3ViZGlyKSA9PiBbLi4uZmlsZXMsIC4uLl9yZWN1cnNlKGVudHJ5LmRpcihzdWJkaXIpKV0sIGVudHJ5LnN1YmZpbGVzLm1hcCgoc3ViZmlsZSkgPT4gZW50cnkuZmlsZShzdWJmaWxlKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3JlY3Vyc2UodGhpcyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0RGlyRW50cnkgPSBIb3N0RGlyRW50cnk7CiAgICB2YXIgSG9zdFRyZWUgPSBjbGFzcyBfSG9zdFRyZWUgewogICAgICBfYmFja2VuZDsKICAgICAgX2lkID0gLS1fdW5pcXVlSWQ7CiAgICAgIF9yZWNvcmQ7CiAgICAgIF9yZWNvcmRTeW5jOwogICAgICBfYW5jZXN0cnkgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZGlyQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgc3RhdGljIGlzSG9zdFRyZWUodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiB0cmVlID09PSAib2JqZWN0IiAmJiB0eXBlb2YgdHJlZS5fYW5jZXN0cnkgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrZW5kID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuRW1wdHkoKSkgewogICAgICAgIHRoaXMuX2JhY2tlbmQgPSBfYmFja2VuZDsKICAgICAgICB0aGlzLl9yZWNvcmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5Db3JkSG9zdChuZXcgY29yZV8xLnZpcnR1YWxGcy5TYWZlUmVhZG9ubHlIb3N0KF9iYWNrZW5kKSk7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYyA9IG5ldyBjb3JlXzEudmlydHVhbEZzLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcy5fcmVjb3JkKTsKICAgICAgfQogICAgICBfbm9ybWFsaXplUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfd2lsbENyZWF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsQ3JlYXRlKHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsT3ZlcndyaXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxPdmVyd3JpdGUocGF0aCk7CiAgICAgIH0KICAgICAgX3dpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWNvcmQud2lsbERlbGV0ZShwYXRoKTsKICAgICAgfQogICAgICBfd2lsbFJlbmFtZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsUmVuYW1lKHBhdGgpOwogICAgICB9CiAgICAgIGJyYW5jaCgpIHsKICAgICAgICBjb25zdCBicmFuY2hlZFRyZWUgPSBuZXcgX0hvc3RUcmVlKHRoaXMuX2JhY2tlbmQpOwogICAgICAgIGJyYW5jaGVkVHJlZS5fcmVjb3JkID0gdGhpcy5fcmVjb3JkLmNsb25lKCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9yZWNvcmRTeW5jID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU3luY0RlbGVnYXRlSG9zdChicmFuY2hlZFRyZWUuX3JlY29yZCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9hbmNlc3RyeSA9IG5ldyBTZXQodGhpcy5fYW5jZXN0cnkpLmFkZCh0aGlzLl9pZCk7CiAgICAgICAgcmV0dXJuIGJyYW5jaGVkVHJlZTsKICAgICAgfQogICAgICBpc0FuY2VzdG9yT2YodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJlZS5fYW5jZXN0cnkuaGFzKHRoaXMuX2lkKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBkZWxlZ2F0ZV8xLkRlbGVnYXRlVHJlZSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuaXNBbmNlc3Rvck9mKHRyZWUuX290aGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBzY29wZWRfMS5TY29wZWRUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5pc0FuY2VzdG9yT2YodHJlZS5fYmFzZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBtZXJnZShvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgICBpZiAob3RoZXIgPT09IHRoaXMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuaXNBbmNlc3Rvck9mKG90aGVyKSkgewogICAgICAgICAgc3RyYXRlZ3kgfD0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNyZWF0aW9uQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0NyZWF0aW9uQ29uZmxpY3QpID09IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dDcmVhdGlvbkNvbmZsaWN0OwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dPdmVyd3JpdGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd092ZXJ3cml0ZUNvbmZsaWN0OwogICAgICAgIGNvbnN0IGRlbGV0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dEZWxldGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0RlbGV0ZUNvbmZsaWN0OwogICAgICAgIG90aGVyLmFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOiB7CiAgICAgICAgICAgICAgY29uc3QgeyBwYXRoLCBjb250ZW50IH0gPSBhY3Rpb247CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxDcmVhdGUocGF0aCkgfHwgdGhpcy5fd2lsbE92ZXJ3cml0ZShwYXRoKSB8fCB0aGlzLmV4aXN0cyhwYXRoKSkgewogICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdDb250ZW50ID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQ29udGVudCAmJiBjb250ZW50LmVxdWFscyhleGlzdGluZ0NvbnRlbnQpKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghY3JlYXRpb25Db25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQuY3JlYXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAibyI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSAmJiAhb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxPdmVyd3JpdGUocGF0aCkpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nQ29udGVudCA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0NvbnRlbnQgJiYgY29udGVudC5lcXVhbHMoZXhpc3RpbmdDb250ZW50KSkgewogICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoIW92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGhpcy5fcmVjb3JkLndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJyIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgdG8gfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsUmVuYW1lKHBhdGgpKSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fcmVjb3JkLndpbGxSZW5hbWVUbyhwYXRoLCB0bykpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMucmVuYW1lKHBhdGgsIHRvKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAiZCI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGggfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIXRoaXMuZXhpc3RzKHBhdGgpICYmICFkZWxldGVDb25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLl9yZWNvcmRTeW5jLmRlbGV0ZShwYXRoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBnZXQgcm9vdCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXREaXIoIi8iKTsKICAgICAgfQogICAgICAvLyBSZWFkb25seS4KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICByZXR1cm4gZW50cnkgPyBlbnRyeS5jb250ZW50IDogbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICBpZiAoZGF0YSA9PT0gbnVsbCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoInV0Zi04IiwgeyBmYXRhbDogdHJ1ZSB9KTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGRhdGEpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgVHlwZUVycm9yIHx8IGUuY29kZSA9PT0gIkVSUl9FTkNPRElOR19JTlZBTElEX0VOQ09ERURfREFUQSIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyBVVEYtOCB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLnJlYWRUZXh0KHBhdGgpOwogICAgICAgIGNvbnN0IGVycm9ycyA9IFtdOwogICAgICAgIGNvbnN0IHJlc3VsdCA9ICgwLCBqc29uY19wYXJzZXJfMS5wYXJzZSkoY29udGVudCwgZXJyb3JzLCB7IGFsbG93VHJhaWxpbmdDb21tYTogdHJ1ZSB9KTsKICAgICAgICBpZiAoZXJyb3JzWzBdKSB7CiAgICAgICAgICBjb25zdCB7IGVycm9yLCBvZmZzZXQgfSA9IGVycm9yc1swXTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHBhcnNlICIke3BhdGh9IiBhcyBKU09OLiAkeygwLCBqc29uY19wYXJzZXJfMS5wcmludFBhcnNlRXJyb3JDb2RlKShlcnJvcil9IGF0IG9mZnNldDogJHtvZmZzZXR9LmApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZFN5bmMuaXNGaWxlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX3JlY29yZFN5bmMuaXNEaXJlY3RvcnkocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBpZiAoIXRoaXMuX3JlY29yZFN5bmMuZXhpc3RzKHApKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBlbnRyeV8xLkxhenlGaWxlRW50cnkocCwgKCkgPT4gQnVmZmVyLmZyb20odGhpcy5fcmVjb3JkU3luYy5yZWFkKHApKSk7CiAgICAgIH0KICAgICAgZ2V0RGlyKHBhdGgpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5pc0ZpbGUocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihwKTsKICAgICAgICB9CiAgICAgICAgbGV0IG1heWJlQ2FjaGUgPSB0aGlzLl9kaXJDYWNoZS5nZXQocCk7CiAgICAgICAgaWYgKCFtYXliZUNhY2hlKSB7CiAgICAgICAgICBsZXQgcGFyZW50ID0gKDAsIGNvcmVfMS5kaXJuYW1lKShwKTsKICAgICAgICAgIGlmIChwID09PSBwYXJlbnQpIHsKICAgICAgICAgICAgcGFyZW50ID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICAgIG1heWJlQ2FjaGUgPSBuZXcgSG9zdERpckVudHJ5KHBhcmVudCAmJiB0aGlzLmdldERpcihwYXJlbnQpLCBwLCB0aGlzLl9yZWNvcmRTeW5jLCB0aGlzKTsKICAgICAgICAgIHRoaXMuX2RpckNhY2hlLnNldChwLCBtYXliZUNhY2hlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1heWJlQ2FjaGU7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHRoaXMucm9vdC52aXNpdCgocGF0aCwgZW50cnkpID0+IHsKICAgICAgICAgIHZpc2l0b3IocGF0aCwgZW50cnkpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKCF0aGlzLl9yZWNvcmRTeW5jLmV4aXN0cyhwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGMgPSB0eXBlb2YgY29udGVudCA9PSAic3RyaW5nIiA/IEJ1ZmZlci5mcm9tKGNvbnRlbnQpIDogY29udGVudDsKICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHAsIGMpLnN1YnNjcmliZSgpOwogICAgICB9CiAgICAgIGJlZ2luVXBkYXRlKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVjb3JkZXJfMS5VcGRhdGVSZWNvcmRlckJhc2UuY3JlYXRlRnJvbUZpbGVFbnRyeShlbnRyeSk7CiAgICAgIH0KICAgICAgY29tbWl0VXBkYXRlKHJlY29yZCkgewogICAgICAgIGlmIChyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSkgewogICAgICAgICAgY29uc3QgcGF0aCA9IHJlY29yZC5wYXRoOwogICAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgbmV3Q29udGVudCA9IHJlY29yZC5hcHBseShlbnRyeS5jb250ZW50KTsKICAgICAgICAgICAgaWYgKCFuZXdDb250ZW50LmVxdWFscyhlbnRyeS5jb250ZW50KSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKHBhdGgsIG5ld0NvbnRlbnQpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5JbnZhbGlkVXBkYXRlUmVjb3JkRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIFN0cnVjdHVyYWwgbWV0aG9kcy4KICAgICAgY3JlYXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5leGlzdHMocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBjb25zdCBjID0gdHlwZW9mIGNvbnRlbnQgPT0gInN0cmluZyIgPyBCdWZmZXIuZnJvbShjb250ZW50KSA6IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5fcmVjb3JkLmNyZWF0ZShwLCBjKS5zdWJzY3JpYmUoKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMuZGVsZXRlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMucmVuYW1lKHRoaXMuX25vcm1hbGl6ZVBhdGgoZnJvbSksIHRoaXMuX25vcm1hbGl6ZVBhdGgodG8pKTsKICAgICAgfQogICAgICBhcHBseShhY3Rpb24sIHN0cmF0ZWd5KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIkFwcGx5IG5vdCBpbXBsZW1lbnRlZCBvbiBob3N0IHRyZWVzLiIpOwogICAgICB9CiAgICAgICpnZW5lcmF0ZUFjdGlvbnMoKSB7CiAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgdGhpcy5fcmVjb3JkLnJlY29yZHMoKSkgewogICAgICAgICAgc3dpdGNoIChyZWNvcmQua2luZCkgewogICAgICAgICAgICBjYXNlICJjcmVhdGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJjIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoLAogICAgICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20ocmVjb3JkLmNvbnRlbnQpCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAibyIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IEJ1ZmZlci5mcm9tKHJlY29yZC5jb250ZW50KQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInJlbmFtZSI6CiAgICAgICAgICAgICAgeWllbGQgewogICAgICAgICAgICAgICAgaWQ6IHRoaXMuX2lkLAogICAgICAgICAgICAgICAgcGFyZW50OiAwLAogICAgICAgICAgICAgICAga2luZDogInIiLAogICAgICAgICAgICAgICAgcGF0aDogcmVjb3JkLmZyb20sCiAgICAgICAgICAgICAgICB0bzogcmVjb3JkLnRvCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAiZCIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aAogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGdldCBhY3Rpb25zKCkgewogICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZ2VuZXJhdGVBY3Rpb25zKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSG9zdFRyZWUgPSBIb3N0VHJlZTsKICAgIHZhciBIb3N0Q3JlYXRlVHJlZSA9IGNsYXNzIGV4dGVuZHMgSG9zdFRyZWUgewogICAgICBjb25zdHJ1Y3Rvcihob3N0KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBjb25zdCB0ZW1wSG9zdCA9IG5ldyBIb3N0VHJlZShob3N0KTsKICAgICAgICB0ZW1wSG9zdC52aXNpdCgocGF0aCkgPT4gewogICAgICAgICAgY29uc3QgY29udGVudCA9IHRlbXBIb3N0LnJlYWQocGF0aCk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RDcmVhdGVUcmVlID0gSG9zdENyZWF0ZVRyZWU7CiAgICB2YXIgRmlsdGVySG9zdFRyZWUgPSBjbGFzcyBleHRlbmRzIEhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IodHJlZSwgZmlsdGVyID0gKCkgPT4gdHJ1ZSkgewogICAgICAgIGNvbnN0IG5ld0JhY2tlbmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5TaW1wbGVNZW1vcnlIb3N0KCk7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCYWNrZW5kID0gdHJlZS5fYmFja2VuZDsKICAgICAgICBjb25zdCBwZW5kaW5nUGF0aHMgPSBbIi8iXTsKICAgICAgICB3aGlsZSAocGVuZGluZ1BhdGhzLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gcGVuZGluZ1BhdGhzLnBvcCgpOwogICAgICAgICAgaWYgKGN1cnJlbnRQYXRoID09PSB2b2lkIDApIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgaXNEaXJlY3RvcnkgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0RpcmVjdG9yeShjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGlzRGlyZWN0b3J5ID0gdmFsKTsKICAgICAgICAgIGlmIChpc0RpcmVjdG9yeSkgewogICAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQubGlzdChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IHBlbmRpbmdQYXRocy5wdXNoKC4uLnZhbC5tYXAoKHApID0+ICgwLCBjb3JlXzEuam9pbikoY3VycmVudFBhdGgsIHApKSkpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBpc0ZpbGUgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0ZpbGUoY3VycmVudFBhdGgpLnN1YnNjcmliZSgodmFsKSA9PiBpc0ZpbGUgPSB2YWwpOwogICAgICAgICAgaWYgKCFpc0ZpbGUgfHwgIWZpbHRlcihjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgY29udGVudCA9IG51bGw7CiAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQucmVhZChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGNvbnRlbnQgPSB2YWwpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT09IG51bGwpIHsKICAgICAgICAgICAgbmV3QmFja2VuZC53cml0ZShjdXJyZW50UGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyKG5ld0JhY2tlbmQpOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRyZWUuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFmaWx0ZXIoYWN0aW9uLnBhdGgpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgICB0aGlzLmNyZWF0ZShhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgICB0aGlzLmRlbGV0ZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm8iOgogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInIiOgogICAgICAgICAgICAgIHRoaXMucmVuYW1lKGFjdGlvbi5wYXRoLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gRmlsdGVySG9zdFRyZWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3N0YXRpYy5qcwp2YXIgcmVxdWlyZV9zdGF0aWMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbXB0eSA9IGVtcHR5OwogICAgZXhwb3J0czIuYnJhbmNoID0gYnJhbmNoOwogICAgZXhwb3J0czIubWVyZ2UgPSBtZXJnZTI7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gbmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKCk7CiAgICB9CiAgICBmdW5jdGlvbiBicmFuY2godHJlZSkgewogICAgICByZXR1cm4gdHJlZS5icmFuY2goKTsKICAgIH0KICAgIGZ1bmN0aW9uIG1lcmdlMih0cmVlLCBvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgdHJlZS5tZXJnZShvdGhlciwgc3RyYXRlZ3kpOwogICAgICByZXR1cm4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnRpdGlvbih0cmVlLCBwcmVkaWNhdGUpIHsKICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBob3N0X3RyZWVfMS5Ib3N0VHJlZSkgewogICAgICAgIHJldHVybiBbCiAgICAgICAgICBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKSwKICAgICAgICAgIG5ldyBob3N0X3RyZWVfMS5GaWx0ZXJIb3N0VHJlZSh0cmVlLCAocGF0aCwgZW50cnkpID0+ICFwcmVkaWNhdGUocGF0aCwgZW50cnkpKQogICAgICAgIF07CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMKdmFyIHJlcXVpcmVfbnVsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9udWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsVHJlZSA9IGV4cG9ydHMyLk51bGxUcmVlRGlyRW50cnkgPSBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYENhbm5vdCBjcmVhdGUgZmlsZSAiJHtwYXRofSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbjsKICAgIHZhciBOdWxsVHJlZURpckVudHJ5ID0gY2xhc3MgX051bGxUcmVlRGlyRW50cnkgewogICAgICBwYXRoOwogICAgICBnZXQgcGFyZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLnBhdGggPT0gIi8iID8gbnVsbCA6IG5ldyBfTnVsbFRyZWVEaXJFbnRyeSgoMCwgY29yZV8xLmRpcm5hbWUpKHRoaXMucGF0aCkpOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICB0aGlzLnBhdGggPSBwYXRoOwogICAgICB9CiAgICAgIHN1YmRpcnMgPSBbXTsKICAgICAgc3ViZmlsZXMgPSBbXTsKICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gbmV3IF9OdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBuYW1lKSk7CiAgICAgIH0KICAgICAgZmlsZShfbmFtZSkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHZpc2l0KCkgewogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWVEaXJFbnRyeSA9IE51bGxUcmVlRGlyRW50cnk7CiAgICB2YXIgTnVsbFRyZWUgPSBjbGFzcyBfTnVsbFRyZWUgewogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX051bGxUcmVlKCk7CiAgICAgIH0KICAgICAgbWVyZ2UoX290aGVyLCBfc3RyYXRlZ3kpIHsKICAgICAgfQogICAgICByb290ID0gbmV3IE51bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICAvLyBTaW1wbGUgcmVhZG9ubHkgZmlsZSBzeXN0ZW0gb3BlcmF0aW9ucy4KICAgICAgZXhpc3RzKF9wYXRoKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHJlYWQoX3BhdGgpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGdldChfcGF0aCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgdmlzaXQoKSB7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSA/IHJlY29yZC5wYXRoIDogIjx1bmtub3duPiIpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBzdHJ1Y3R1cmUgb2YgdGhlIGhvc3QuCiAgICAgIGNvcHkocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgX2NvbnRlbnQpIHsKICAgICAgICB0aHJvdyBuZXcgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgYXBwbHkoX2FjdGlvbiwgX3N0cmF0ZWd5KSB7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWUgPSBOdWxsVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2NhbGwuanMKdmFyIHJlcXVpcmVfY2FsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW52YWxpZFNvdXJjZVJlc3VsdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuY2FsbFNvdXJjZSA9IGNhbGxTb3VyY2U7CiAgICBleHBvcnRzMi5jYWxsUnVsZSA9IGNhbGxSdWxlOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gX2dldFR5cGVPZlJlc3VsdCh2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiAidW5kZWZpbmVkIjsKICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gYEZ1bmN0aW9uKClgOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSAhPSAib2JqZWN0IikgewogICAgICAgIHJldHVybiBgJHt0eXBlb2YgdmFsdWV9KCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSlgOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09IE9iamVjdCkgewogICAgICAgICAgcmV0dXJuIGBPYmplY3QoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWA7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5jb25zdHJ1Y3RvcikgewogICAgICAgICAgcmV0dXJuIGBJbnN0YW5jZSBvZiBjbGFzcyAke3ZhbHVlLmNvbnN0cnVjdG9yLm5hbWV9YDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuICJVbmtub3duIE9iamVjdCI7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICB2YXIgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBydWxlIHJlc3VsdDogJHtfZ2V0VHlwZU9mUmVzdWx0KHZhbHVlKX0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUnVsZVJlc3VsdEV4Y2VwdGlvbiA9IEludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBzb3VyY2UgcmVzdWx0OiAke19nZXRUeXBlT2ZSZXN1bHQodmFsdWUpfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uOwogICAgZnVuY3Rpb24gY2FsbFNvdXJjZShzb3VyY2UsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuICgwLCByeGpzXzEuZGVmZXIpKGFzeW5jICgpID0+IHsKICAgICAgICBsZXQgcmVzdWx0ID0gc291cmNlKGNvbnRleHQpOwogICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgICAgcmVzdWx0ID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShyZXN1bHQucGlwZSgoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKSk7CiAgICAgICAgfQogICAgICAgIGlmIChyZXN1bHQgJiYgaW50ZXJmYWNlXzEuVHJlZVN5bWJvbCBpbiByZXN1bHQpIHsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uKHJlc3VsdCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY2FsbFJ1bGUocnVsZSwgaW5wdXQsIGNvbnRleHQpIHsKICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShpbnB1dCkpIHsKICAgICAgICByZXR1cm4gaW5wdXQucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaW5wdXRUcmVlKSA9PiBjYWxsUnVsZUFzeW5jKHJ1bGUsIGlucHV0VHJlZSwgY29udGV4dCkpKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5kZWZlcikoKCkgPT4gY2FsbFJ1bGVBc3luYyhydWxlLCBpbnB1dCwgY29udGV4dCkpOwogICAgICB9CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiBjYWxsUnVsZUFzeW5jKHJ1bGUsIHRyZWUsIGNvbnRleHQpIHsKICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHJ1bGUodHJlZSwgY29udGV4dCk7CiAgICAgIHdoaWxlICh0eXBlb2YgcmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVzdWx0KHRyZWUsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAidW5kZWZpbmVkIikgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgIHJlc3VsdCA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkocmVzdWx0LnBpcGUoKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodHJlZSkpKTsKICAgICAgfQogICAgICBpZiAocmVzdWx0ICYmIGludGVyZmFjZV8xLlRyZWVTeW1ib2wgaW4gcmVzdWx0KSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICB0aHJvdyBuZXcgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24ocmVzdWx0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9zY2hlbWF0aWMuanMKdmFyIHJlcXVpcmVfc2NoZW1hdGljID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvc2NoZW1hdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY2hlbWF0aWNJbXBsID0gZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBjYWxsXzEgPSByZXF1aXJlX2NhbGwoKTsKICAgIHZhciBzY29wZWRfMSA9IHJlcXVpcmVfc2NvcGVkMigpOwogICAgdmFyIEludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpY3MgaGFzIGludmFsaWQgbmFtZTogIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0ltcGwgPSBjbGFzcyB7CiAgICAgIF9kZXNjcmlwdGlvbjsKICAgICAgX2ZhY3Rvcnk7CiAgICAgIF9jb2xsZWN0aW9uOwogICAgICBfZW5naW5lOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9mYWN0b3J5LCBfY29sbGVjdGlvbiwgX2VuZ2luZSkgewogICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gX2Rlc2NyaXB0aW9uOwogICAgICAgIHRoaXMuX2ZhY3RvcnkgPSBfZmFjdG9yeTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uID0gX2NvbGxlY3Rpb247CiAgICAgICAgdGhpcy5fZW5naW5lID0gX2VuZ2luZTsKICAgICAgICBpZiAoIV9kZXNjcmlwdGlvbi5uYW1lLm1hdGNoKC9eWy1AL18uYS16QS1aMC05XSskLykpIHsKICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NoZW1hdGljc05hbWVFeGNlcHRpb24oX2Rlc2NyaXB0aW9uLm5hbWUpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgZGVzY3JpcHRpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uOwogICAgICB9CiAgICAgIGdldCBjb2xsZWN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uOwogICAgICB9CiAgICAgIGNhbGwob3B0aW9ucywgaG9zdCwgcGFyZW50Q29udGV4dCwgZXhlY3V0aW9uT3B0aW9ucykgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29udGV4dCh0aGlzLCBwYXJlbnRDb250ZXh0LCBleGVjdXRpb25PcHRpb25zKTsKICAgICAgICByZXR1cm4gaG9zdC5waXBlKCgwLCByeGpzXzEuZmlyc3QpKCksICgwLCByeGpzXzEuY29uY2F0TWFwKSgodHJlZSkgPT4gdGhpcy5fZW5naW5lLnRyYW5zZm9ybU9wdGlvbnModGhpcywgb3B0aW9ucywgY29udGV4dCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKG8pID0+IFt0cmVlLCBvXSkpKSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChbdHJlZSwgdHJhbnNmb3JtZWRPcHRpb25zXSkgPT4gewogICAgICAgICAgbGV0IGlucHV0OwogICAgICAgICAgbGV0IHNjb3BlZCA9IGZhbHNlOwogICAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5zY29wZSkgewogICAgICAgICAgICBzY29wZWQgPSB0cnVlOwogICAgICAgICAgICBpbnB1dCA9IG5ldyBzY29wZWRfMS5TY29wZWRUcmVlKHRyZWUsIGV4ZWN1dGlvbk9wdGlvbnMuc2NvcGUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQgPSB0cmVlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHRoaXMuX2ZhY3RvcnkodHJhbnNmb3JtZWRPcHRpb25zKSwgaW5wdXQsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChvdXRwdXQpID0+IHsKICAgICAgICAgICAgaWYgKG91dHB1dCA9PT0gaW5wdXQpIHsKICAgICAgICAgICAgICByZXR1cm4gdHJlZTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY29wZWQpIHsKICAgICAgICAgICAgICB0cmVlLm1lcmdlKG91dHB1dCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIG91dHB1dDsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0ltcGwgPSBTY2hlbWF0aWNJbXBsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcwp2YXIgcmVxdWlyZV9lbmdpbmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9lbmdpbmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBleHBvcnRzMi5Db2xsZWN0aW9uSW1wbCA9IGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gZXhwb3J0czIuQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgbnVsbF8xID0gcmVxdWlyZV9udWxsKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgdmFyIHNjaGVtYXRpY18xID0gcmVxdWlyZV9zY2hlbWF0aWMoKTsKICAgIHZhciBVbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodXJsMykgewogICAgICAgIHN1cGVyKGBVbmtub3duIFByb3RvY29sIG9uIHVybCAiJHt1cmwzfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBVbmtub3duVXJsU291cmNlUHJvdG9jb2w7CiAgICB2YXIgVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBVbmtub3duIGNvbGxlY3Rpb24gIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBDaXJjdWxhciBjb2xsZWN0aW9uIHJlZmVyZW5jZSAiJHtuYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb247CiAgICB2YXIgVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBjb2xsZWN0aW9uKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpYyAiJHtuYW1lfSIgbm90IGZvdW5kIGluIGNvbGxlY3Rpb24gIiR7Y29sbGVjdGlvbi5uYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbjsKICAgIHZhciBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGNvbGxlY3Rpb24pIHsKICAgICAgICBzdXBlcihgU2NoZW1hdGljICIke25hbWV9IiBub3QgZm91bmQgaW4gY29sbGVjdGlvbiAiJHtjb2xsZWN0aW9uLm5hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKGBBIHNjaGVtYXRpYyB3YXMgY2FsbGVkIGZyb20gYSBkaWZmZXJlbnQgZW5naW5lIGFzIGl0cyBwYXJlbnQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uOwogICAgdmFyIFVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgc2NoZW1hdGljKSB7CiAgICAgICAgY29uc3QgYWRkZW5kdW0gPSBzY2hlbWF0aWMgPyBgIGluIHNjaGVtYXRpYyAiJHtzY2hlbWF0aWMubmFtZX0iYCA6ICIiOwogICAgICAgIHN1cGVyKGBVbnJlZ2lzdGVyZWQgdGFzayAiJHtuYW1lfSIke2FkZGVuZHVtfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBVbnJlZ2lzdGVyZWRUYXNrRXhjZXB0aW9uOwogICAgdmFyIFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihpZCkgewogICAgICAgIHN1cGVyKGBVbmtub3duIHRhc2sgZGVwZW5kZW5jeSBbSUQ6ICR7aWQuaWR9XS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbjsKICAgIHZhciBDb2xsZWN0aW9uSW1wbCA9IGNsYXNzIHsKICAgICAgX2Rlc2NyaXB0aW9uOwogICAgICBfZW5naW5lOwogICAgICBiYXNlRGVzY3JpcHRpb25zOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9lbmdpbmUsIGJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IF9kZXNjcmlwdGlvbjsKICAgICAgICB0aGlzLl9lbmdpbmUgPSBfZW5naW5lOwogICAgICAgIHRoaXMuYmFzZURlc2NyaXB0aW9ucyA9IGJhc2VEZXNjcmlwdGlvbnM7CiAgICAgIH0KICAgICAgZ2V0IGRlc2NyaXB0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjsKICAgICAgfQogICAgICBnZXQgbmFtZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5kZXNjcmlwdGlvbi5uYW1lIHx8ICI8dW5rbm93bj4iOwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuY3JlYXRlU2NoZW1hdGljKG5hbWUsIHRoaXMsIGFsbG93UHJpdmF0ZSk7CiAgICAgIH0KICAgICAgbGlzdFNjaGVtYXRpY05hbWVzKGluY2x1ZGVIaWRkZW4pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lLmxpc3RTY2hlbWF0aWNOYW1lcyh0aGlzLCBpbmNsdWRlSGlkZGVuKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvbGxlY3Rpb25JbXBsID0gQ29sbGVjdGlvbkltcGw7CiAgICB2YXIgVGFza1NjaGVkdWxlciA9IGNsYXNzIF9UYXNrU2NoZWR1bGVyIHsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9xdWV1ZSA9IG5ldyBjb3JlXzEuUHJpb3JpdHlRdWV1ZSgoeCwgeSkgPT4geC5wcmlvcml0eSAtIHkucHJpb3JpdHkpOwogICAgICBfdGFza0lkcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIHN0YXRpYyBfdGFza0lkQ291bnRlciA9IDE7CiAgICAgIGNvbnN0cnVjdG9yKF9jb250ZXh0KSB7CiAgICAgICAgdGhpcy5fY29udGV4dCA9IF9jb250ZXh0OwogICAgICB9CiAgICAgIF9jYWxjdWxhdGVQcmlvcml0eShkZXBlbmRlbmNpZXMpIHsKICAgICAgICBpZiAoZGVwZW5kZW5jaWVzLnNpemUgPT09IDApIHsKICAgICAgICAgIHJldHVybiAwOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcmlvID0gWy4uLmRlcGVuZGVuY2llc10ucmVkdWNlKChwcmlvMiwgdGFzaykgPT4gcHJpbzIgKyB0YXNrLnByaW9yaXR5LCAxKTsKICAgICAgICByZXR1cm4gcHJpbzsKICAgICAgfQogICAgICBfbWFwRGVwZW5kZW5jaWVzKGRlcGVuZGVuY2llcykgewogICAgICAgIGlmICghZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza3MgPSBkZXBlbmRlbmNpZXMubWFwKChkZXApID0+IHsKICAgICAgICAgIGNvbnN0IHRhc2sgPSB0aGlzLl90YXNrSWRzLmdldChkZXApOwogICAgICAgICAgaWYgKCF0YXNrKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVGFza0RlcGVuZGVuY3lFeGNlcHRpb24oZGVwKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU2V0KHRhc2tzKTsKICAgICAgfQogICAgICBzY2hlZHVsZSh0YXNrQ29uZmlndXJhdGlvbikgewogICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRoaXMuX21hcERlcGVuZGVuY2llcyh0YXNrQ29uZmlndXJhdGlvbi5kZXBlbmRlbmNpZXMpOwogICAgICAgIGNvbnN0IHByaW9yaXR5ID0gdGhpcy5fY2FsY3VsYXRlUHJpb3JpdHkoZGVwZW5kZW5jaWVzKTsKICAgICAgICBjb25zdCB0YXNrID0gewogICAgICAgICAgaWQ6IF9UYXNrU2NoZWR1bGVyLl90YXNrSWRDb3VudGVyKyssCiAgICAgICAgICBwcmlvcml0eSwKICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHRhc2tDb25maWd1cmF0aW9uLAogICAgICAgICAgY29udGV4dDogdGhpcy5fY29udGV4dAogICAgICAgIH07CiAgICAgICAgdGhpcy5fcXVldWUucHVzaCh0YXNrKTsKICAgICAgICBjb25zdCBpZCA9IHsgaWQ6IHRhc2suaWQgfTsKICAgICAgICB0aGlzLl90YXNrSWRzLnNldChpZCwgdGFzayk7CiAgICAgICAgcmV0dXJuIGlkOwogICAgICB9CiAgICAgIGZpbmFsaXplKCkgewogICAgICAgIGNvbnN0IHRhc2tzID0gdGhpcy5fcXVldWUudG9BcnJheSgpOwogICAgICAgIHRoaXMuX3F1ZXVlLmNsZWFyKCk7CiAgICAgICAgdGhpcy5fdGFza0lkcy5jbGVhcigpOwogICAgICAgIHJldHVybiB0YXNrczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBUYXNrU2NoZWR1bGVyOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZSA9IGNsYXNzIHsKICAgICAgX2hvc3Q7CiAgICAgIF93b3JrZmxvdzsKICAgICAgX2NvbGxlY3Rpb25DYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9zY2hlbWF0aWNDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgICBfdGFza1NjaGVkdWxlcnMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF93b3JrZmxvdykgewogICAgICAgIHRoaXMuX2hvc3QgPSBfaG9zdDsKICAgICAgICB0aGlzLl93b3JrZmxvdyA9IF93b3JrZmxvdzsKICAgICAgfQogICAgICBnZXQgd29ya2Zsb3coKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3dvcmtmbG93IHx8IG51bGw7CiAgICAgIH0KICAgICAgZ2V0IGRlZmF1bHRNZXJnZVN0cmF0ZWd5KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0LmRlZmF1bHRNZXJnZVN0cmF0ZWd5IHx8IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdDsKICAgICAgfQogICAgICBjcmVhdGVDb2xsZWN0aW9uKG5hbWUsIHJlcXVlc3RlcikgewogICAgICAgIGxldCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvbkNhY2hlLmdldChuYW1lKTsKICAgICAgICBpZiAoY29sbGVjdGlvbikgewogICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb247CiAgICAgICAgfQogICAgICAgIGNvbnN0IFtkZXNjcmlwdGlvbiwgYmFzZXNdID0gdGhpcy5fY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcj8uZGVzY3JpcHRpb24pOwogICAgICAgIGNvbGxlY3Rpb24gPSBuZXcgQ29sbGVjdGlvbkltcGwoZGVzY3JpcHRpb24sIHRoaXMsIGJhc2VzKTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uQ2FjaGUuc2V0KG5hbWUsIGNvbGxlY3Rpb24pOwogICAgICAgIHRoaXMuX3NjaGVtYXRpY0NhY2hlLnNldChjb2xsZWN0aW9uLCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpKTsKICAgICAgICByZXR1cm4gY29sbGVjdGlvbjsKICAgICAgfQogICAgICBfY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3RlciwgcGFyZW50TmFtZXMpIHsKICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcik7CiAgICAgICAgaWYgKCFkZXNjcmlwdGlvbikgewogICAgICAgICAgdGhyb3cgbmV3IFVua25vd25Db2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50TmFtZXMgJiYgcGFyZW50TmFtZXMuaGFzKGRlc2NyaXB0aW9uLm5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBjb25zdCBiYXNlcyA9IG5ldyBBcnJheSgpOwogICAgICAgIGlmIChkZXNjcmlwdGlvbi5leHRlbmRzKSB7CiAgICAgICAgICBwYXJlbnROYW1lcyA9IChwYXJlbnROYW1lcyB8fCAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKS5hZGQoZGVzY3JpcHRpb24ubmFtZSk7CiAgICAgICAgICBmb3IgKGNvbnN0IGJhc2VOYW1lIG9mIGRlc2NyaXB0aW9uLmV4dGVuZHMpIHsKICAgICAgICAgICAgY29uc3QgW2Jhc2UsIGJhc2VCYXNlc10gPSB0aGlzLl9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24oYmFzZU5hbWUsIGRlc2NyaXB0aW9uLCBuZXcgU2V0KHBhcmVudE5hbWVzKSk7CiAgICAgICAgICAgIGJhc2VzLnVuc2hpZnQoYmFzZSwgLi4uYmFzZUJhc2VzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFtkZXNjcmlwdGlvbiwgYmFzZXNdOwogICAgICB9CiAgICAgIGNyZWF0ZUNvbnRleHQoc2NoZW1hdGljLCBwYXJlbnQsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5lbmdpbmUgJiYgcGFyZW50LmVuZ2luZSAhPT0gdGhpcykgewogICAgICAgICAgdGhyb3cgbmV3IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGxldCBpbnRlcmFjdGl2ZSA9IHRydWU7CiAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZSAhPSB2b2lkIDApIHsKICAgICAgICAgIGludGVyYWN0aXZlID0gZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZTsKICAgICAgICB9IGVsc2UgaWYgKHBhcmVudCAmJiBwYXJlbnQuaW50ZXJhY3RpdmUgIT0gdm9pZCAwKSB7CiAgICAgICAgICBpbnRlcmFjdGl2ZSA9IHBhcmVudC5pbnRlcmFjdGl2ZTsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbnRleHQgPSB7CiAgICAgICAgICBkZWJ1ZzogcGFyZW50ICYmIHBhcmVudC5kZWJ1ZyB8fCBmYWxzZSwKICAgICAgICAgIGVuZ2luZTogdGhpcywKICAgICAgICAgIGxvZ2dlcjogcGFyZW50ICYmIHBhcmVudC5sb2dnZXIgJiYgcGFyZW50LmxvZ2dlci5jcmVhdGVDaGlsZChzY2hlbWF0aWMuZGVzY3JpcHRpb24ubmFtZSkgfHwgbmV3IGNvcmVfMS5sb2dnaW5nLk51bGxMb2dnZXIoKSwKICAgICAgICAgIHNjaGVtYXRpYywKICAgICAgICAgIHN0cmF0ZWd5OiBwYXJlbnQgJiYgcGFyZW50LnN0cmF0ZWd5ICE9PSB2b2lkIDAgPyBwYXJlbnQuc3RyYXRlZ3kgOiB0aGlzLmRlZmF1bHRNZXJnZVN0cmF0ZWd5LAogICAgICAgICAgaW50ZXJhY3RpdmUsCiAgICAgICAgICBhZGRUYXNrCiAgICAgICAgfTsKICAgICAgICBjb25zdCBtYXliZU5ld0NvbnRleHQgPSB0aGlzLl9ob3N0LnRyYW5zZm9ybUNvbnRleHQoY29udGV4dCk7CiAgICAgICAgaWYgKG1heWJlTmV3Q29udGV4dCkgewogICAgICAgICAgY29udGV4dCA9IG1heWJlTmV3Q29udGV4dDsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza1NjaGVkdWxlciA9IG5ldyBUYXNrU2NoZWR1bGVyKGNvbnRleHQpOwogICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLl9ob3N0OwogICAgICAgIHRoaXMuX3Rhc2tTY2hlZHVsZXJzLnB1c2godGFza1NjaGVkdWxlcik7CiAgICAgICAgZnVuY3Rpb24gYWRkVGFzayh0YXNrLCBkZXBlbmRlbmNpZXMpIHsKICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHRhc2sudG9Db25maWd1cmF0aW9uKCk7CiAgICAgICAgICBpZiAoIWhvc3QuaGFzVGFza0V4ZWN1dG9yKGNvbmZpZy5uYW1lKSkgewogICAgICAgICAgICB0aHJvdyBuZXcgVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbihjb25maWcubmFtZSwgc2NoZW1hdGljLmRlc2NyaXB0aW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbmZpZy5kZXBlbmRlbmNpZXMgPSBjb25maWcuZGVwZW5kZW5jaWVzIHx8IFtdOwogICAgICAgICAgaWYgKGRlcGVuZGVuY2llcykgewogICAgICAgICAgICBjb25maWcuZGVwZW5kZW5jaWVzLnVuc2hpZnQoLi4uZGVwZW5kZW5jaWVzKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrU2NoZWR1bGVyLnNjaGVkdWxlKGNvbmZpZyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb250ZXh0OwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBjb2xsZWN0aW9uLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IHNjaGVtYXRpY01hcCA9IHRoaXMuX3NjaGVtYXRpY0NhY2hlLmdldChjb2xsZWN0aW9uKTsKICAgICAgICBsZXQgc2NoZW1hdGljID0gc2NoZW1hdGljTWFwPy5nZXQobmFtZSk7CiAgICAgICAgaWYgKHNjaGVtYXRpYykgewogICAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbGxlY3Rpb25EZXNjcmlwdGlvbiA9IGNvbGxlY3Rpb24uZGVzY3JpcHRpb247CiAgICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVTY2hlbWF0aWNEZXNjcmlwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICBpZiAoY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgYmFzZSBvZiBjb2xsZWN0aW9uLmJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlU2NoZW1hdGljRGVzY3JpcHRpb24obmFtZSwgYmFzZSk7CiAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVzY3JpcHRpb24gPSBiYXNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZGVzY3JpcHRpb24ucHJpdmF0ZSAmJiAhYWxsb3dQcml2YXRlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX2hvc3QuZ2V0U2NoZW1hdGljUnVsZUZhY3RvcnkoZGVzY3JpcHRpb24sIGNvbGxlY3Rpb25EZXNjcmlwdGlvbik7CiAgICAgICAgc2NoZW1hdGljID0gbmV3IHNjaGVtYXRpY18xLlNjaGVtYXRpY0ltcGwoZGVzY3JpcHRpb24sIGZhY3RvcnksIGNvbGxlY3Rpb24sIHRoaXMpOwogICAgICAgIHNjaGVtYXRpY01hcD8uc2V0KG5hbWUsIHNjaGVtYXRpYyk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgfQogICAgICBsaXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbiwgaW5jbHVkZUhpZGRlbikgewogICAgICAgIGNvbnN0IG5hbWVzID0gdGhpcy5faG9zdC5saXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbi5kZXNjcmlwdGlvbiwgaW5jbHVkZUhpZGRlbik7CiAgICAgICAgaWYgKGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgZm9yIChjb25zdCBiYXNlIG9mIGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgICBuYW1lcy5wdXNoKC4uLnRoaXMuX2hvc3QubGlzdFNjaGVtYXRpY05hbWVzKGJhc2UsIGluY2x1ZGVIaWRkZW4pKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFsuLi5uZXcgU2V0KG5hbWVzKV0uc29ydCgpOwogICAgICB9CiAgICAgIHRyYW5zZm9ybU9wdGlvbnMoc2NoZW1hdGljLCBvcHRpb25zLCBjb250ZXh0KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QudHJhbnNmb3JtT3B0aW9ucyhzY2hlbWF0aWMuZGVzY3JpcHRpb24sIG9wdGlvbnMsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGNyZWF0ZVNvdXJjZUZyb21VcmwodXJsMywgY29udGV4dCkgewogICAgICAgIHN3aXRjaCAodXJsMy5wcm90b2NvbCkgewogICAgICAgICAgY2FzZSAibnVsbDoiOgogICAgICAgICAgICByZXR1cm4gKCkgPT4gbmV3IG51bGxfMS5OdWxsVHJlZSgpOwogICAgICAgICAgY2FzZSAiZW1wdHk6IjoKICAgICAgICAgICAgcmV0dXJuICgpID0+ICgwLCBzdGF0aWNfMS5lbXB0eSkoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaG9zdFNvdXJjZSA9IHRoaXMuX2hvc3QuY3JlYXRlU291cmNlRnJvbVVybCh1cmwzLCBjb250ZXh0KTsKICAgICAgICBpZiAoIWhvc3RTb3VyY2UpIHsKICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVXJsU291cmNlUHJvdG9jb2wodXJsMy50b1N0cmluZygpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGhvc3RTb3VyY2U7CiAgICAgIH0KICAgICAgZXhlY3V0ZVBvc3RUYXNrcygpIHsKICAgICAgICBjb25zdCBleGVjdXRvcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRhc2tPYnNlcnZhYmxlID0gKDAsIHJ4anNfMS5mcm9tKSh0aGlzLl90YXNrU2NoZWR1bGVycykucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHNjaGVkdWxlcikgPT4gc2NoZWR1bGVyLmZpbmFsaXplKCkpLCAoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHRhc2spID0+IHsKICAgICAgICAgIGNvbnN0IHsgbmFtZSwgb3B0aW9ucyB9ID0gdGFzay5jb25maWd1cmF0aW9uOwogICAgICAgICAgY29uc3QgZXhlY3V0b3IgPSBleGVjdXRvcnMuZ2V0KG5hbWUpOwogICAgICAgICAgaWYgKGV4ZWN1dG9yKSB7CiAgICAgICAgICAgIHJldHVybiBleGVjdXRvcihvcHRpb25zLCB0YXNrLmNvbnRleHQpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuY3JlYXRlVGFza0V4ZWN1dG9yKG5hbWUpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChleGVjdXRvcjIpID0+IHsKICAgICAgICAgICAgZXhlY3V0b3JzLnNldChuYW1lLCBleGVjdXRvcjIpOwogICAgICAgICAgICByZXR1cm4gZXhlY3V0b3IyKG9wdGlvbnMsIHRhc2suY29udGV4dCk7CiAgICAgICAgICB9KSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiB0YXNrT2JzZXJ2YWJsZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IFNjaGVtYXRpY0VuZ2luZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlNCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzCnZhciByZXF1aXJlX2VuZ2luZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW5naW5lKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hdGljKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzCnZhciByZXF1aXJlX2NsaV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVDb25zb2xlTG9nZ2VyID0gY3JlYXRlQ29uc29sZUxvZ2dlcjsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIHNyY18xID0gcmVxdWlyZV9zcmMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZUNvbnNvbGVMb2dnZXIodmVyYm9zZSA9IGZhbHNlLCBzdGRvdXQgPSBwcm9jZXNzLnN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5zdGRlcnIsIGNvbG9ycykgewogICAgICBjb25zdCBsb2dnZXIgPSBuZXcgc3JjXzEubG9nZ2luZy5JbmRlbnRMb2dnZXIoImNsaW5nIik7CiAgICAgIGxvZ2dlci5waXBlKCgwLCByeGpzXzEuZmlsdGVyKSgoZW50cnkpID0+IGVudHJ5LmxldmVsICE9PSAiZGVidWciIHx8IHZlcmJvc2UpKS5zdWJzY3JpYmUoKGVudHJ5KSA9PiB7CiAgICAgICAgY29uc3QgY29sb3IgPSBjb2xvcnMgJiYgY29sb3JzW2VudHJ5LmxldmVsXTsKICAgICAgICBsZXQgb3V0cHV0ID0gc3Rkb3V0OwogICAgICAgIHN3aXRjaCAoZW50cnkubGV2ZWwpIHsKICAgICAgICAgIGNhc2UgIndhcm4iOgogICAgICAgICAgY2FzZSAiZmF0YWwiOgogICAgICAgICAgY2FzZSAiZXJyb3IiOgogICAgICAgICAgICBvdXRwdXQgPSBzdGRlcnI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaHVua1NpemUgPSAyZTM7CiAgICAgICAgbGV0IG1lc3NhZ2UgPSBlbnRyeS5tZXNzYWdlOwogICAgICAgIHdoaWxlIChtZXNzYWdlKSB7CiAgICAgICAgICBjb25zdCBjaHVuayA9IG1lc3NhZ2Uuc2xpY2UoMCwgY2h1bmtTaXplKTsKICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLnNsaWNlKGNodW5rU2l6ZSk7CiAgICAgICAgICBvdXRwdXQud3JpdGUoY29sb3IgPyBjb2xvcihjaHVuaykgOiBjaHVuayk7CiAgICAgICAgfQogICAgICAgIG91dHB1dC53cml0ZSgiXG4iKTsKICAgICAgfSk7CiAgICAgIHJldHVybiBsb2dnZXI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk5vZGVKc1N5bmNIb3N0ID0gZXhwb3J0czIuTm9kZUpzQXN5bmNIb3N0ID0gdm9pZCAwOwogICAgdmFyIG5vZGVfZnNfMSA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKICAgIHZhciBub2RlX3BhdGhfMSA9IHJlcXVpcmUoIm5vZGU6cGF0aCIpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgYXN5bmMgZnVuY3Rpb24gZXhpc3RzKHBhdGgpIHsKICAgICAgdHJ5IHsKICAgICAgICBhd2FpdCBub2RlX2ZzXzEucHJvbWlzZXMuYWNjZXNzKHBhdGgsIG5vZGVfZnNfMS5jb25zdGFudHMuRl9PSyk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfQogICAgdmFyIEZTV2F0Y2hlcjsKICAgIGZ1bmN0aW9uIGxvYWRGU1dhdGNoZXIoKSB7CiAgICAgIGlmICghRlNXYXRjaGVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIEZTV2F0Y2hlciA9IHJlcXVpcmUoImNob2tpZGFyIikuRlNXYXRjaGVyOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlLmNvZGUgIT09ICJNT0RVTEVfTk9UX0ZPVU5EIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FzIG9mIGFuZ3VsYXItZGV2a2l0IHZlcnNpb24gOC4wLCB0aGUgImNob2tpZGFyIiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGluIG9yZGVyIHRvIHVzZSB3YXRjaCgpIGZlYXR1cmVzLicpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHZhciBOb2RlSnNBc3luY0hvc3QgPSBjbGFzcyB7CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IGZhbHNlIH07CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5ta2RpcigoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSkpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKCkgPT4gbm9kZV9mc18xLnByb21pc2VzLndyaXRlRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCksIG5ldyBVaW50OEFycmF5KGNvbnRlbnQpKSkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYnVmZmVyKSA9PiBuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcikpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkobm9kZV9mc18xLnByb21pc2VzLnJtKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMucmVuYW1lKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShmcm9tKSwgKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHRvKSkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkZGlyKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChuYW1lcykgPT4gbmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkoZXhpc3RzKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMuc3RhdCgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgX29wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGxvYWRGU1dhdGNoZXIoKTsKICAgICAgICAgIGNvbnN0IHdhdGNoZXIgPSBuZXcgRlNXYXRjaGVyKHsgcGVyc2lzdGVudDogdHJ1ZSB9KTsKICAgICAgICAgIHdhdGNoZXIuYWRkKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICB3YXRjaGVyLm9uKCJjaGFuZ2UiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNoYW5nZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigiYWRkIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkub24oInVubGluayIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgICAgdm9pZCB3YXRjaGVyLmNsb3NlKCk7CiAgICAgICAgICB9OwogICAgICAgIH0pLnBpcGUoKDAsIHJ4anNfMS5wdWJsaXNoKSgpLCAoMCwgcnhqc18xLnJlZkNvdW50KSgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5vZGVKc0FzeW5jSG9zdCA9IE5vZGVKc0FzeW5jSG9zdDsKICAgIHZhciBOb2RlSnNTeW5jSG9zdCA9IGNsYXNzIHsKICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgICgwLCBub2RlX2ZzXzEubWtkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7CiAgICAgICAgICAoMCwgbm9kZV9mc18xLndyaXRlRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgbmV3IFVpbnQ4QXJyYXkoY29udGVudCkpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgYnVmZmVyID0gKDAsIG5vZGVfZnNfMS5yZWFkRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICBvYnMubmV4dChuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcik7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ybVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCB0b1N5c3RlbVBhdGggPSAoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkodG8pOwogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ta2RpclN5bmMpKCgwLCBub2RlX3BhdGhfMS5kaXJuYW1lKSh0b1N5c3RlbVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTsKICAgICAgICAgICgwLCBub2RlX2ZzXzEucmVuYW1lU3luYykoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKGZyb20pLCB0b1N5c3RlbVBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgbmFtZXMgPSAoMCwgbm9kZV9mc18xLnJlYWRkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpOwogICAgICAgICAgb2JzLm5leHQobmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQoKDAsIG5vZGVfZnNfMS5leGlzdHNTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KCgwLCBub2RlX2ZzXzEuc3RhdFN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgd2F0Y2hpbmcuCiAgICAgIHdhdGNoKHBhdGgsIF9vcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBsb2FkRlNXYXRjaGVyKCk7CiAgICAgICAgICBjb25zdCB3YXRjaGVyID0gbmV3IEZTV2F0Y2hlcih7IHBlcnNpc3RlbnQ6IGZhbHNlIH0pOwogICAgICAgICAgd2F0Y2hlci5hZGQoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHBhdGgpKTsKICAgICAgICAgIHdhdGNoZXIub24oImNoYW5nZSIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pLm9uKCJhZGQiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigidW5saW5rIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICB2b2lkIHdhdGNoZXIuY2xvc2UoKTsKICAgICAgICAgIH07CiAgICAgICAgfSkucGlwZSgoMCwgcnhqc18xLnB1Ymxpc2gpKCksICgwLCByeGpzXzEucmVmQ291bnQpKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTm9kZUpzU3luY0hvc3QgPSBOb2RlSnNTeW5jSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9ub2RlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2NsaV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDMoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanMKdmFyIHJlcXVpcmVfYWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2FjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWN0aW9uTGlzdCA9IGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5pc0NvbnRlbnRBY3Rpb24gPSBpc0NvbnRlbnRBY3Rpb247CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBVbmtub3duQWN0aW9uRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKGFjdGlvbikgewogICAgICAgIHN1cGVyKGBVbmtub3duIGFjdGlvbjogIiR7YWN0aW9uLmtpbmR9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQWN0aW9uRXhjZXB0aW9uOwogICAgdmFyIF9pZCA9IDE7CiAgICB2YXIgQWN0aW9uTGlzdCA9IGNsYXNzIHsKICAgICAgX2FjdGlvbnMgPSBbXTsKICAgICAgX2FjdGlvbihhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goewogICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgaWQ6IF9pZCsrLAogICAgICAgICAgcGFyZW50OiB0aGlzLl9hY3Rpb25zW3RoaXMuX2FjdGlvbnMubGVuZ3RoIC0gMV0/LmlkID8/IDAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJjIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICBvdmVyd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJvIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgdG8pIHsKICAgICAgICB0aGlzLl9hY3Rpb24oeyBraW5kOiAiciIsIHBhdGgsIHRvIH0pOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogImQiLCBwYXRoIH0pOwogICAgICB9CiAgICAgIG9wdGltaXplKCkgewogICAgICAgIGNvbnN0IHRvQ3JlYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBjb25zdCB0b1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdG9PdmVyd3JpdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiB0aGlzLl9hY3Rpb25zKSB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBpZiAodG9DcmVhdGUuaGFzKGFjdGlvbi5wYXRoKSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRvT3ZlcndyaXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgdG9EZWxldGUuYWRkKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6IHsKICAgICAgICAgICAgICBjb25zdCBtYXliZUNyZWF0ZSA9IHRvQ3JlYXRlLmdldChhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgY29uc3QgbWF5YmVPdmVyd3JpdGUgPSB0b092ZXJ3cml0ZS5nZXQoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgIGlmIChtYXliZUNyZWF0ZSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24udG8sIG1heWJlQ3JlYXRlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG1heWJlT3ZlcndyaXRlKSB7CiAgICAgICAgICAgICAgICB0b092ZXJ3cml0ZS5kZWxldGUoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgICAgdG9PdmVyd3JpdGUuc2V0KGFjdGlvbi50bywgbWF5YmVPdmVyd3JpdGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBsZXQgbWF5YmVSZW5hbWUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgZm9yIChjb25zdCBbZnJvbSwgdG9dIG9mIHRvUmVuYW1lLmVudHJpZXMoKSkgewogICAgICAgICAgICAgICAgaWYgKHRvID09IGFjdGlvbi5wYXRoKSB7CiAgICAgICAgICAgICAgICAgIG1heWJlUmVuYW1lID0gZnJvbTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChtYXliZVJlbmFtZSkgewogICAgICAgICAgICAgICAgdG9SZW5hbWUuc2V0KG1heWJlUmVuYW1lLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIW1heWJlQ3JlYXRlICYmICFtYXliZU92ZXJ3cml0ZSAmJiAhbWF5YmVSZW5hbWUpIHsKICAgICAgICAgICAgICAgIHRvUmVuYW1lLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdGhpcy5fYWN0aW9ucyA9IFtdOwogICAgICAgIHRvRGVsZXRlLmZvckVhY2goKHgpID0+IHsKICAgICAgICAgIHRoaXMuZGVsZXRlKHgpOwogICAgICAgIH0pOwogICAgICAgIHRvUmVuYW1lLmZvckVhY2goKHRvLCBmcm9tKSA9PiB7CiAgICAgICAgICB0aGlzLnJlbmFtZShmcm9tLCB0byk7CiAgICAgICAgfSk7CiAgICAgICAgdG9DcmVhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgICAgdG9PdmVyd3JpdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcHVzaChhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goYWN0aW9uKTsKICAgICAgfQogICAgICBnZXQoaSkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zW2ldOwogICAgICB9CiAgICAgIGhhcyhhY3Rpb24pIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2FjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IGEgPSB0aGlzLl9hY3Rpb25zW2ldOwogICAgICAgICAgaWYgKGEuaWQgPT0gYWN0aW9uLmlkKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGEuaWQgPiBhY3Rpb24uaWQpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZmluZChwcmVkaWNhdGUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9ucy5maW5kKHByZWRpY2F0ZSkgfHwgbnVsbDsKICAgICAgfQogICAgICBmb3JFYWNoKGZuLCB0aGlzQXJnKSB7CiAgICAgICAgdGhpcy5fYWN0aW9ucy5mb3JFYWNoKGZuLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQgbGVuZ3RoKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zLmxlbmd0aDsKICAgICAgfQogICAgICBbU3ltYm9sLml0ZXJhdG9yXSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1tTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BY3Rpb25MaXN0ID0gQWN0aW9uTGlzdDsKICAgIGZ1bmN0aW9uIGlzQ29udGVudEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIGFjdGlvbi5raW5kID09ICJjIiB8fCBhY3Rpb24ua2luZCA9PSAibyI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL3NpbmsuanMKdmFyIHJlcXVpcmVfc2luayA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVTaW5rQmFzZSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgYWN0aW9uXzEgPSByZXF1aXJlX2FjdGlvbigpOwogICAgdmFyIE5vb3AgPSBmdW5jdGlvbigpIHsKICAgIH07CiAgICB2YXIgU2ltcGxlU2lua0Jhc2UgPSBjbGFzcyB7CiAgICAgIHByZUNvbW1pdEFjdGlvbiA9IE5vb3A7CiAgICAgIHBvc3RDb21taXRBY3Rpb24gPSBOb29wOwogICAgICBwcmVDb21taXQgPSBOb29wOwogICAgICBwb3N0Q29tbWl0ID0gTm9vcDsKICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVPdmVyd3JpdGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24ucGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKGIpID0+IHsKICAgICAgICAgIGlmICghYikgewogICAgICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoIWIpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihhY3Rpb24ucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEubWVyZ2VNYXApKCgpID0+IHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24udG8pKSwgKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi50byk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIF92YWxpZGF0ZURlbGV0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWxlRXhpc3RzKGFjdGlvbi5wYXRoKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYikgPT4gewogICAgICAgICAgaWYgKCFiKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oYWN0aW9uLnBhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICB2YWxpZGF0ZVNpbmdsZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlT3ZlcndyaXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJyIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRGVsZXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgYWN0aW9uXzEuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbihhY3Rpb24pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnZhbGlkYXRlU2luZ2xlQWN0aW9uKGFjdGlvbiksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHsKICAgICAgICAgIGxldCBjb21taXR0ZWQgPSBudWxsOwogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBjb21taXR0ZWQgPSB0aGlzLl9vdmVyd3JpdGVGaWxlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIGNvbW1pdHRlZCA9IHRoaXMuX2NyZWF0ZUZpbGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fcmVuYW1lRmlsZShhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fZGVsZXRlRmlsZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29tbWl0dGVkKSB7CiAgICAgICAgICAgIGNvbW1pdHRlZC5zdWJzY3JpYmUob2JzZXJ2ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKTsKICAgICAgfQogICAgICBjb21taXQodHJlZSkgewogICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoMCwgcnhqc18xLmZyb20pKHRyZWUuYWN0aW9ucyk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnByZUNvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpLCAoMCwgcnhqc18xLmRlZmVyKSgoKSA9PiBhY3Rpb25zKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBjb25zdCBtYXliZUFjdGlvbiA9IHRoaXMucHJlQ29tbWl0QWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKG1heWJlQWN0aW9uKSB8fCBpc1Byb21pc2VMaWtlKG1heWJlQWN0aW9uKSkgewogICAgICAgICAgICByZXR1cm4gbWF5YmVBY3Rpb247CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobWF5YmVBY3Rpb24gfHwgYWN0aW9uKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5jb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKS5waXBlKCgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKShhY3Rpb24pKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHRoaXMucG9zdENvbW1pdEFjdGlvbihhY3Rpb24pIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMuX2RvbmUoKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMucG9zdENvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpLCAoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZVNpbmtCYXNlID0gU2ltcGxlU2lua0Jhc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKHZhbHVlKSB7CiAgICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAiZnVuY3Rpb24iOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3Q0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc2lua18xID0gcmVxdWlyZV9zaW5rKCk7CiAgICB2YXIgSG9zdFNpbmsgPSBjbGFzcyBleHRlbmRzIHNpbmtfMS5TaW1wbGVTaW5rQmFzZSB7CiAgICAgIF9ob3N0OwogICAgICBfZm9yY2U7CiAgICAgIF9maWxlc1RvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX2ZpbGVzVG9SZW5hbWUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb0NyZWF0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvVXBkYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF9mb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fZm9yY2UgPSBfZm9yY2U7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl9mb3JjZSA/IHJ4anNfMS5FTVBUWSA6IHN1cGVyLl92YWxpZGF0ZUNyZWF0ZUFjdGlvbihhY3Rpb24pOwogICAgICB9CiAgICAgIF92YWxpZGF0ZUZpbGVFeGlzdHMocCkgewogICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhwKSB8fCB0aGlzLl9maWxlc1RvVXBkYXRlLmhhcyhwKSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocCkpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgW2Zyb20sIHRvXSBvZiB0aGlzLl9maWxlc1RvUmVuYW1lLnZhbHVlcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHApIHsKICAgICAgICAgICAgY2FzZSBmcm9tOgogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgICAgIGNhc2UgdG86CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5leGlzdHMocCk7CiAgICAgIH0KICAgICAgX292ZXJ3cml0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX2NyZWF0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX3JlbmFtZUZpbGUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmFkZChbZnJvbSwgdG9dKTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kZWxldGVGaWxlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1VwZGF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kb25lKCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb0RlbGV0ZS52YWx1ZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChwYXRoKSA9PiB0aGlzLl9ob3N0LmRlbGV0ZShwYXRoKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvUmVuYW1lLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbXywgW3BhdGgsIHRvXV0pID0+IHRoaXMuX2hvc3QucmVuYW1lKHBhdGgsIHRvKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvQ3JlYXRlLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbcGF0aCwgYnVmZmVyXSkgPT4gdGhpcy5faG9zdC53cml0ZShwYXRoLCBidWZmZXIpKSksICgwLCByeGpzXzEuZnJvbSkoWy4uLnRoaXMuX2ZpbGVzVG9VcGRhdGUuZW50cmllcygpXSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKFtwYXRoLCBidWZmZXJdKSA9PiB0aGlzLl9ob3N0LndyaXRlKHBhdGgsIGJ1ZmZlcikpKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKCkgPT4gewogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gSG9zdFNpbms7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qcwp2YXIgcmVxdWlyZV9kcnlydW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3NpbmsvZHJ5cnVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5EcnlSdW5TaW5rID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgbm9kZV8xID0gcmVxdWlyZV9ub2RlKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3Q0KCk7CiAgICB2YXIgRHJ5UnVuU2luayA9IGNsYXNzIGV4dGVuZHMgaG9zdF8xLkhvc3RTaW5rIHsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvblNldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHJlcG9ydGVyID0gdGhpcy5fc3ViamVjdC5hc09ic2VydmFibGUoKTsKICAgICAgY29uc3RydWN0b3IoaG9zdCwgZm9yY2UgPSBmYWxzZSkgewogICAgICAgIHN1cGVyKHR5cGVvZiBob3N0ID09ICJzdHJpbmciID8gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU2NvcGVkSG9zdChuZXcgbm9kZV8xLk5vZGVKc1N5bmNIb3N0KCksICgwLCBjb3JlXzEubm9ybWFsaXplKShob3N0KSkgOiBob3N0LCBmb3JjZSk7CiAgICAgIH0KICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuYWRkKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmFkZChwYXRoKTsKICAgICAgfQogICAgICBfZG9uZSgpIHsKICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmZvckVhY2goKHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7CiAgICAgICAgICAgIGtpbmQ6ICJlcnJvciIsCiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiYWxyZWFkeUV4aXN0IiwKICAgICAgICAgICAgcGF0aAogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvblNldC5mb3JFYWNoKChwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoewogICAgICAgICAgICBraW5kOiAiZXJyb3IiLAogICAgICAgICAgICBkZXNjcmlwdGlvbjogImRvZXNOb3RFeGlzdCIsCiAgICAgICAgICAgIHBhdGgKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZm9yRWFjaCgocGF0aCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBbZnJvbV0gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZSkgewogICAgICAgICAgICBpZiAoZnJvbSA9PSBwYXRoKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiZGVsZXRlIiwgcGF0aCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmZvckVhY2goKFtwYXRoLCB0b10pID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJyZW5hbWUiLCBwYXRoLCB0byB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIGZvciAoY29uc3QgWywgdG9dIG9mIHRoaXMuX2ZpbGVzVG9SZW5hbWUpIHsKICAgICAgICAgICAgaWYgKHRvID09IHBhdGgpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSB8fCB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiY3JlYXRlIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvVXBkYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJ1cGRhdGUiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkRyeVJ1blNpbmsgPSBEcnlSdW5TaW5rOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qcwp2YXIgcmVxdWlyZV9iYXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9iYXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CYXNlV29ya2Zsb3cgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGVuZ2luZV8xID0gcmVxdWlyZV9lbmdpbmUyKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBmb3JtYXRzXzEgPSByZXF1aXJlX2Zvcm1hdHMyKCk7CiAgICB2YXIgZHJ5cnVuXzEgPSByZXF1aXJlX2RyeXJ1bigpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgQmFzZVdvcmtmbG93ID0gY2xhc3MgewogICAgICBfZW5naW5lOwogICAgICBfZW5naW5lSG9zdDsKICAgICAgX3JlZ2lzdHJ5OwogICAgICBfaG9zdDsKICAgICAgX3JlcG9ydGVyID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgIF9saWZlQ3ljbGUgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9mb3JjZTsKICAgICAgX2RyeVJ1bjsKICAgICAgY29uc3RydWN0b3Iob3B0aW9ucykgewogICAgICAgIHRoaXMuX2hvc3QgPSBvcHRpb25zLmhvc3Q7CiAgICAgICAgdGhpcy5fZW5naW5lSG9zdCA9IG9wdGlvbnMuZW5naW5lSG9zdDsKICAgICAgICBpZiAob3B0aW9ucy5yZWdpc3RyeSkgewogICAgICAgICAgdGhpcy5fcmVnaXN0cnkgPSBvcHRpb25zLnJlZ2lzdHJ5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9yZWdpc3RyeSA9IG5ldyBjb3JlXzEuc2NoZW1hLkNvcmVTY2hlbWFSZWdpc3RyeShmb3JtYXRzXzEuc3RhbmRhcmRGb3JtYXRzKTsKICAgICAgICAgIHRoaXMuX3JlZ2lzdHJ5LmFkZFBvc3RUcmFuc2Zvcm0oY29yZV8xLnNjaGVtYS50cmFuc2Zvcm1zLmFkZFVuZGVmaW5lZERlZmF1bHRzKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZW5naW5lID0gbmV3IGVuZ2luZV8xLlNjaGVtYXRpY0VuZ2luZSh0aGlzLl9lbmdpbmVIb3N0LCB0aGlzKTsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gW107CiAgICAgICAgdGhpcy5fZm9yY2UgPSBvcHRpb25zLmZvcmNlIHx8IGZhbHNlOwogICAgICAgIHRoaXMuX2RyeVJ1biA9IG9wdGlvbnMuZHJ5UnVuIHx8IGZhbHNlOwogICAgICB9CiAgICAgIGdldCBjb250ZXh0KCkgewogICAgICAgIGNvbnN0IG1heWJlQ29udGV4dCA9IHRoaXMuX2NvbnRleHRbdGhpcy5fY29udGV4dC5sZW5ndGggLSAxXTsKICAgICAgICBpZiAoIW1heWJlQ29udGV4dCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IGNvbnRleHQgd2hlbiB3b3JrZmxvdyBpcyBub3QgZXhlY3V0aW5nLi4uIik7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUNvbnRleHQ7CiAgICAgIH0KICAgICAgZ2V0IGVuZ2luZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lOwogICAgICB9CiAgICAgIGdldCBlbmdpbmVIb3N0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmVIb3N0OwogICAgICB9CiAgICAgIGdldCByZWdpc3RyeSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnk7CiAgICAgIH0KICAgICAgZ2V0IHJlcG9ydGVyKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRlci5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICBnZXQgbGlmZUN5Y2xlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9saWZlQ3ljbGUuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgX2NyZWF0ZVNpbmtzKCkgewogICAgICAgIGxldCBlcnJvciA9IGZhbHNlOwogICAgICAgIGNvbnN0IGRyeVJ1blNpbmsgPSBuZXcgZHJ5cnVuXzEuRHJ5UnVuU2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSk7CiAgICAgICAgY29uc3QgZHJ5UnVuU3Vic2NyaWJlciA9IGRyeVJ1blNpbmsucmVwb3J0ZXIuc3Vic2NyaWJlKChldmVudCkgPT4gewogICAgICAgICAgdGhpcy5fcmVwb3J0ZXIubmV4dChldmVudCk7CiAgICAgICAgICBlcnJvciA9IGVycm9yIHx8IGV2ZW50LmtpbmQgPT0gImVycm9yIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgZHJ5UnVuU2luaywKICAgICAgICAgIC8vIEFkZCBhIGN1c3RvbSBzaW5rIHRoYXQgY2xlYW4gb3Vyc2VsdmVzIGFuZCB0aHJvd3MgYW4gZXJyb3IgaWYgYW4gZXJyb3IgaGFwcGVuZWQuCiAgICAgICAgICB7CiAgICAgICAgICAgIGNvbW1pdCgpIHsKICAgICAgICAgICAgICBkcnlSdW5TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24oKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgLy8gT25seSBhZGQgYSBIb3N0U2luayBpZiB0aGlzIGlzIG5vdCBhIGRyeVJ1bi4KICAgICAgICAgIC4uLiF0aGlzLl9kcnlSdW4gPyBbbmV3IGhvc3RfMS5Ib3N0U2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSldIDogW10KICAgICAgICBdOwogICAgICB9CiAgICAgIGV4ZWN1dGUob3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhcmVudENvbnRleHQgPSB0aGlzLl9jb250ZXh0W3RoaXMuX2NvbnRleHQubGVuZ3RoIC0gMV07CiAgICAgICAgaWYgKCFwYXJlbnRDb250ZXh0KSB7CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJzdGFydCIgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29sbGVjdGlvbihvcHRpb25zLmNvbGxlY3Rpb24pOwogICAgICAgIGNvbnN0IGFsbG93UHJpdmF0ZSA9IG9wdGlvbnMuYWxsb3dQcml2YXRlIHx8IHBhcmVudENvbnRleHQgJiYgcGFyZW50Q29udGV4dC5jb2xsZWN0aW9uID09PSBvcHRpb25zLmNvbGxlY3Rpb247CiAgICAgICAgY29uc3Qgc2NoZW1hdGljID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMob3B0aW9ucy5zY2hlbWF0aWMsIGFsbG93UHJpdmF0ZSk7CiAgICAgICAgY29uc3Qgc2lua3MgPSB0aGlzLl9jcmVhdGVTaW5rcygpOwogICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LXN0YXJ0IiB9KTsKICAgICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgICAgLi4ub3B0aW9ucywKICAgICAgICAgIGRlYnVnOiBvcHRpb25zLmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlciB8fCBwYXJlbnRDb250ZXh0ICYmIHBhcmVudENvbnRleHQubG9nZ2VyIHx8IG5ldyBjb3JlXzEubG9nZ2luZy5OdWxsTG9nZ2VyKCksCiAgICAgICAgICBwYXJlbnRDb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9jb250ZXh0LnB1c2goY29udGV4dCk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYy5jYWxsKG9wdGlvbnMub3B0aW9ucywgKDAsIHJ4anNfMS5vZikobmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKHRoaXMuX2hvc3QpKSwgeyBsb2dnZXI6IGNvbnRleHQubG9nZ2VyIH0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh0cmVlKSA9PiB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoc2lua3MpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChzaW5rKSA9PiBzaW5rLmNvbW1pdCh0cmVlKSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh0cmVlKSk7CiAgICAgICAgfSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoKSA9PiB7CiAgICAgICAgICBpZiAodGhpcy5fZHJ5UnVuKSB7CiAgICAgICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJwb3N0LXRhc2tzLXN0YXJ0IiB9KTsKICAgICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuZXhlY3V0ZVBvc3RUYXNrcygpLnBpcGUoKDAsIHJ4anNfMS50YXApKHsgY29tcGxldGU6ICgpID0+IHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogInBvc3QtdGFza3MtZW5kIiB9KSB9KSwgKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodm9pZCAwKSwgKDAsIHJ4anNfMS5sYXN0KSgpKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS50YXApKHsKICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LWVuZCIgfSk7CiAgICAgICAgICAgIHRoaXMuX2NvbnRleHQucG9wKCk7CiAgICAgICAgICAgIGlmICh0aGlzLl9jb250ZXh0Lmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgdGhpcy5fbGlmZUN5Y2xlLm5leHQoeyBraW5kOiAiZW5kIiB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkJhc2VXb3JrZmxvdyA9IEJhc2VXb3JrZmxvdzsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2U1ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtmbG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYmFzZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2U1KCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMKdmFyIHJlcXVpcmVfYmFzZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNvdXJjZSA9IHNvdXJjZTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5jaGFpbiA9IGNoYWluMjsKICAgIGV4cG9ydHMyLmFwcGx5ID0gYXBwbHkzOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICAgIGV4cG9ydHMyLm5vb3AgPSBub29wOwogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogICAgZXhwb3J0czIuYXNTb3VyY2UgPSBhc1NvdXJjZTsKICAgIGV4cG9ydHMyLmJyYW5jaEFuZE1lcmdlID0gYnJhbmNoQW5kTWVyZ2U7CiAgICBleHBvcnRzMi53aGVuID0gd2hlbjsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbkFwcGx5TWVyZ2UgPSBwYXJ0aXRpb25BcHBseU1lcmdlOwogICAgZXhwb3J0czIuZm9yRWFjaCA9IGZvckVhY2g7CiAgICBleHBvcnRzMi5jb21wb3NlRmlsZU9wZXJhdG9ycyA9IGNvbXBvc2VGaWxlT3BlcmF0b3JzOwogICAgZXhwb3J0czIuYXBwbHlUb1N1YnRyZWUgPSBhcHBseVRvU3VidHJlZTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICBmdW5jdGlvbiBzb3VyY2UodHJlZSkgewogICAgICByZXR1cm4gKCkgPT4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgfQogICAgZnVuY3Rpb24gY2hhaW4yKHJ1bGVzKSB7CiAgICAgIHJldHVybiBhc3luYyAoaW5pdGlhbFRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBsZXQgaW50ZXJtZWRpYXRlVHJlZTsKICAgICAgICBpZiAoU3ltYm9sLmFzeW5jSXRlcmF0b3IgaW4gcnVsZXMpIHsKICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAoKSA9PiBpbnRlcm1lZGlhdGVUcmVlOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXBwbHkzKHNvdXJjZTIsIHJ1bGVzKSB7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgKDAsIGNhbGxfMS5jYWxsU291cmNlKShzb3VyY2UyLCBjb250ZXh0KSwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKHNvdXJjZTIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxTb3VyY2UpKHNvdXJjZTIsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzb3VyY2VUcmVlKSA9PiB0cmVlLm1lcmdlKHNvdXJjZVRyZWUsIHN0cmF0ZWd5IHx8IGNvbnRleHQuc3RyYXRlZ3kpKSwgKDAsIHJ4anNfMS5tYXBUbykodHJlZSkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gbm9vcCgpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuICh0cmVlKSA9PiB7CiAgICAgICAgaWYgKGhvc3RfdHJlZV8xLkhvc3RUcmVlLmlzSG9zdFRyZWUodHJlZSkpIHsKICAgICAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzU291cmNlKHJ1bGUpIHsKICAgICAgcmV0dXJuIChjb250ZXh0KSA9PiAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlLCAoMCwgc3RhdGljXzEuZW1wdHkpKCksIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoQW5kTWVyZ2UocnVsZSwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgcmV0dXJuICh0cmVlLCBjb250ZXh0KSA9PiB7CiAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHJ1bGUsIHRyZWUuYnJhbmNoKCksIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChicmFuY2gpID0+IHRyZWUubWVyZ2UoYnJhbmNoLCBzdHJhdGVneSB8fCBjb250ZXh0LnN0cmF0ZWd5KSksICgwLCByeGpzXzEubWFwVG8pKHRyZWUpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHdoZW4ocHJlZGljYXRlLCBvcGVyYXRvcikgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKHByZWRpY2F0ZShlbnRyeS5wYXRoLCBlbnRyeSkpIHsKICAgICAgICAgIHJldHVybiBvcGVyYXRvcihlbnRyeSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb25BcHBseU1lcmdlKHByZWRpY2F0ZSwgcnVsZVllcywgcnVsZU5vKSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IFt5ZXMsIG5vXSA9ICgwLCBzdGF0aWNfMS5wYXJ0aXRpb24pKHRyZWUsIHByZWRpY2F0ZSk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlWWVzLCB5ZXMsIGNvbnRleHQpLCAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlTm8gfHwgbm9vcCgpLCBubywgY29udGV4dCkpLnBpcGUoKDAsIHJ4anNfMS50b0FycmF5KSgpLCAoMCwgcnhqc18xLm1hcCkoKFt5ZXNUcmVlLCBub1RyZWVdKSA9PiB7CiAgICAgICAgICB5ZXNUcmVlLm1lcmdlKG5vVHJlZSwgY29udGV4dC5zdHJhdGVneSk7CiAgICAgICAgICByZXR1cm4geWVzVHJlZTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBmb3JFYWNoKG9wZXJhdG9yKSB7CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIHRyZWUudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5ld0VudHJ5ID0gb3BlcmF0b3IoZW50cnkpOwogICAgICAgICAgaWYgKG5ld0VudHJ5ID09PSBlbnRyeSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV3RW50cnkgPT09IG51bGwpIHsKICAgICAgICAgICAgdHJlZS5kZWxldGUocGF0aCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChuZXdFbnRyeS5wYXRoICE9IHBhdGgpIHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgbmV3RW50cnkucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5ld0VudHJ5LmNvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgIHRyZWUub3ZlcndyaXRlKG5ld0VudHJ5LnBhdGgsIG5ld0VudHJ5LmNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gY29tcG9zZUZpbGVPcGVyYXRvcnMob3BlcmF0b3JzKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgY3VycmVudCA9IGVudHJ5OwogICAgICAgIGZvciAoY29uc3Qgb3Agb2Ygb3BlcmF0b3JzKSB7CiAgICAgICAgICBjdXJyZW50ID0gb3AoY3VycmVudCk7CiAgICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVRvU3VidHJlZShwYXRoLCBydWxlcykgewogICAgICByZXR1cm4gKHRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBzY29wZWQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBwYXRoKTsKICAgICAgICByZXR1cm4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgc2NvcGVkLCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgocmVzdWx0KSA9PiB7CiAgICAgICAgICBpZiAocmVzdWx0ID09PSBzY29wZWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbignT3JpZ2luYWwgdHJlZSBtdXN0IGJlIHJldHVybmVkIGZyb20gYWxsIHJ1bGVzIHdoZW4gdXNpbmcgImFwcGx5VG9TdWJ0cmVlIi4nKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9tb3ZlLmpzCnZhciByZXF1aXJlX21vdmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1vdmUgPSBtb3ZlMzsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGJhc2VfMSA9IHJlcXVpcmVfYmFzZTIoKTsKICAgIGZ1bmN0aW9uIG1vdmUzKGZyb20sIHRvKSB7CiAgICAgIGlmICh0byA9PT0gdm9pZCAwKSB7CiAgICAgICAgdG8gPSBmcm9tOwogICAgICAgIGZyb20gPSAiLyI7CiAgICAgIH0KICAgICAgY29uc3QgZnJvbVBhdGggPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgZnJvbSk7CiAgICAgIGNvbnN0IHRvUGF0aCA9ICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyB0byk7CiAgICAgIGlmIChmcm9tUGF0aCA9PT0gdG9QYXRoKSB7CiAgICAgICAgcmV0dXJuIGJhc2VfMS5ub29wOwogICAgICB9CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIGlmICh0cmVlLmV4aXN0cyhmcm9tUGF0aCkpIHsKICAgICAgICAgIHRyZWUucmVuYW1lKGZyb21QYXRoLCB0b1BhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0cmVlLmdldERpcihmcm9tUGF0aCkudmlzaXQoKHBhdGgpID0+IHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgKDAsIGNvcmVfMS5qb2luKSh0b1BhdGgsIHBhdGguc2xpY2UoZnJvbVBhdGgubGVuZ3RoKSkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzCnZhciByZXF1aXJlX3JhbmRvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmYXVsdF8xOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIGZ1bmN0aW9uIGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgobCkgewogICAgICByZXR1cm4gbmV3IEFycmF5KGwpLmZpbGwoMCkubWFwKChfeCkgPT4gewogICAgICAgIHJldHVybiAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI2KV07CiAgICAgIH0pLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gcmFuZG9tKGZyb20sIHRvKSB7CiAgICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAodG8gLSBmcm9tKSkgKyBmcm9tOwogICAgfQogICAgZnVuY3Rpb24gZGVmYXVsdF8xKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICBjb25zdCByb290ID0gInJvb3QiIGluIG9wdGlvbnMgPyBvcHRpb25zLnJvb3QgOiAiLyI7CiAgICAgICAgY29uc3QgbWFwMiA9IG5ldyBob3N0X3RyZWVfMS5Ib3N0VHJlZSgpOwogICAgICAgIGNvbnN0IG5iRmlsZXMgPSAibXVsdGlGaWxlcyIgaW4gb3B0aW9ucyA/IHR5cGVvZiBvcHRpb25zLm11bHRpRmlsZXMgPT0gIm51bWJlciIgPyBvcHRpb25zLm11bHRpRmlsZXMgOiByYW5kb20oMiwgMTIpIDogMTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5iRmlsZXM7IGkrKykgewogICAgICAgICAgY29uc3QgcGF0aCA9ICJhL2IvYy9kL2UvZiIuc2xpY2UoTWF0aC5yYW5kb20oKSAqIDEwKTsKICAgICAgICAgIGNvbnN0IGZpbGVOYW1lID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgyMCk7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgxMDApOwogICAgICAgICAgbWFwMi5jcmVhdGUocm9vdCArICIvIiArIHBhdGggKyAiLyIgKyBmaWxlTmFtZSwgY29udGVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvc2NoZW1hdGljLmpzCnZhciByZXF1aXJlX3NjaGVtYXRpYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZXJuYWxTY2hlbWF0aWMgPSBleHRlcm5hbFNjaGVtYXRpYzsKICAgIGV4cG9ydHMyLnNjaGVtYXRpYyA9IHNjaGVtYXRpYzsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgZnVuY3Rpb24gZXh0ZXJuYWxTY2hlbWF0aWMoY29sbGVjdGlvbk5hbWUsIHNjaGVtYXRpY05hbWUsIG9wdGlvbnMsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgcmV0dXJuIChpbnB1dCwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb250ZXh0LmVuZ2luZS5jcmVhdGVDb2xsZWN0aW9uKGNvbGxlY3Rpb25OYW1lLCBjb250ZXh0LnNjaGVtYXRpYy5jb2xsZWN0aW9uKTsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYXRpYyhzY2hlbWF0aWNOYW1lLCBvcHRpb25zLCBleGVjdXRpb25PcHRpb25zKSB7CiAgICAgIHJldHVybiAoaW5wdXQsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29udGV4dC5zY2hlbWF0aWMuY29sbGVjdGlvbjsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzCnZhciByZXF1aXJlX3RlbXBsYXRlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdGVtcGxhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkludmFsaWRQaXBlRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93blBpcGVFeGNlcHRpb24gPSBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmFwcGx5Q29udGVudFRlbXBsYXRlID0gYXBwbHlDb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5jb250ZW50VGVtcGxhdGUgPSBjb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5hcHBseVBhdGhUZW1wbGF0ZSA9IGFwcGx5UGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucGF0aFRlbXBsYXRlID0gcGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucmVuYW1lVGVtcGxhdGVGaWxlcyA9IHJlbmFtZVRlbXBsYXRlRmlsZXM7CiAgICBleHBvcnRzMi50ZW1wbGF0ZSA9IHRlbXBsYXRlMzsKICAgIGV4cG9ydHMyLmFwcGx5VGVtcGxhdGVzID0gYXBwbHlUZW1wbGF0ZXM7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgYmFzZV8xID0gcmVxdWlyZV9iYXNlMigpOwogICAgZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUgPSAvXC50ZW1wbGF0ZSQvOwogICAgdmFyIE9wdGlvbklzTm90RGVmaW5lZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYE9wdGlvbiAiJHtuYW1lfSIgaXMgbm90IGRlZmluZWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb247CiAgICB2YXIgVW5rbm93blBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBub3QgZGVmaW5lZC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25QaXBlRXhjZXB0aW9uID0gVW5rbm93blBpcGVFeGNlcHRpb247CiAgICB2YXIgSW52YWxpZFBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBpbnZhbGlkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFBpcGVFeGNlcHRpb24gPSBJbnZhbGlkUGlwZUV4Y2VwdGlvbjsKICAgIHZhciBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCJ1dGYtOCIsIHsgZmF0YWw6IHRydWUgfSk7CiAgICBmdW5jdGlvbiBhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGVudHJ5OwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb25zdCBkZWNvZGVkQ29udGVudCA9IGRlY29kZXIuZGVjb2RlKGNvbnRlbnQpLnJlcGxhY2UoL1xyP1xuL2csIG5vZGVfb3NfMS5FT0wpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20oKDAsIGNvcmVfMS50ZW1wbGF0ZSkoZGVjb2RlZENvbnRlbnQsIHt9KShvcHRpb25zKSkKICAgICAgICAgIH07CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFwcGx5UGF0aFRlbXBsYXRlKGRhdGEsIG9wdGlvbnMgPSB7CiAgICAgIGludGVycG9sYXRpb25TdGFydDogIl9fIiwKICAgICAgaW50ZXJwb2xhdGlvbkVuZDogIl9fIiwKICAgICAgcGlwZVNlcGFyYXRvcjogIkAiCiAgICB9KSB7CiAgICAgIGNvbnN0IGlzID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uU3RhcnQ7CiAgICAgIGNvbnN0IGllID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uRW5kOwogICAgICBjb25zdCBpc0wgPSBpcy5sZW5ndGg7CiAgICAgIGNvbnN0IGllTCA9IGllLmxlbmd0aDsKICAgICAgcmV0dXJuIChlbnRyeSkgPT4gewogICAgICAgIGxldCBwYXRoID0gZW50cnkucGF0aDsKICAgICAgICBjb25zdCBjb250ZW50ID0gZW50cnkuY29udGVudDsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHBhdGg7CiAgICAgICAgbGV0IHN0YXJ0ID0gcGF0aC5pbmRleE9mKGlzKTsKICAgICAgICBsZXQgZW5kID0gcGF0aC5pbmRleE9mKGllLCBzdGFydCArIGlzTCArIDEpOwogICAgICAgIHdoaWxlIChzdGFydCAhPSAtMSAmJiBlbmQgIT0gLTEpIHsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gcGF0aC5zdWJzdHJpbmcoc3RhcnQgKyBpc0wsIGVuZCk7CiAgICAgICAgICBsZXQgcmVwbGFjZW1lbnQgPSBkYXRhW21hdGNoXTsKICAgICAgICAgIGlmICghb3B0aW9ucy5waXBlU2VwYXJhdG9yKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnQuY2FsbChkYXRhLCBvcmlnaW5hbCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uKG1hdGNoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgW25hbWUsIC4uLnBpcGVzXSA9IG1hdGNoLnNwbGl0KG9wdGlvbnMucGlwZVNlcGFyYXRvcik7CiAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gZGF0YVtuYW1lXTsKICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlbWVudCA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudC5jYWxsKGRhdGEsIG9yaWdpbmFsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24obmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSBwaXBlcy5yZWR1Y2UoKGFjYywgcGlwZSkgPT4gewogICAgICAgICAgICAgIGlmICghcGlwZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFjYzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKCEocGlwZSBpbiBkYXRhKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25QaXBlRXhjZXB0aW9uKHBpcGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBwaXBlRm4gPSBkYXRhW3BpcGVdOwogICAgICAgICAgICAgIGlmICh0eXBlb2YgcGlwZUZuICE9ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGlwZUV4Y2VwdGlvbihwaXBlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuICIiICsgcGlwZUZuKGFjYyk7CiAgICAgICAgICAgIH0sICIiICsgcmVwbGFjZW1lbnQpOwogICAgICAgICAgfQogICAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDAsIHN0YXJ0KSArIHJlcGxhY2VtZW50ICsgcGF0aC5zdWJzdHJpbmcoZW5kICsgaWVMKTsKICAgICAgICAgIHN0YXJ0ID0gcGF0aC5pbmRleE9mKG9wdGlvbnMuaW50ZXJwb2xhdGlvblN0YXJ0KTsKICAgICAgICAgIGVuZCA9IHBhdGguaW5kZXhPZihvcHRpb25zLmludGVycG9sYXRpb25FbmQsIHN0YXJ0ICsgaXNMICsgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7IHBhdGg6ICgwLCBjb3JlXzEubm9ybWFsaXplKShwYXRoKSwgY29udGVudCB9OwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gcGF0aFRlbXBsYXRlKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoYXBwbHlQYXRoVGVtcGxhdGUob3B0aW9ucykpOwogICAgfQogICAgZnVuY3Rpb24gcmVuYW1lVGVtcGxhdGVGaWxlcygpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKGVudHJ5LnBhdGgubWF0Y2goZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUpKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBjb250ZW50OiBlbnRyeS5jb250ZW50LAogICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikpCiAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlMyhvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmNoYWluKShbCiAgICAgICAgY29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIEZvcmNlIGNhc3QgdG8gUGF0aFRlbXBsYXRlRGF0YS4gV2UgbmVlZCB0aGUgdHlwZSBmb3IgdGhlIGFjdHVhbCBwYXRoVGVtcGxhdGUoKSBjYWxsLAogICAgICAgIC8vIGJ1dCBpbiB0aGlzIGNhc2Ugd2UgY2Fubm90IGRvIGFueXRoaW5nIGFzIGNvbnRlbnRUZW1wbGF0ZSBhcmUgbW9yZSBwZXJtaXNzaXZlLgogICAgICAgIC8vIFNpbmNlIHZhbHVlcyBhcmUgY29lcmNlZCB0byBzdHJpbmdzIGluIFBhdGhUZW1wbGF0ZXMgaXQgd2lsbCBiZSBmaW5lIGluIHRoZSBlbmQuCiAgICAgICAgcGF0aFRlbXBsYXRlKG9wdGlvbnMpCiAgICAgIF0pOwogICAgfQogICAgZnVuY3Rpb24gYXBwbHlUZW1wbGF0ZXMob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5mb3JFYWNoKSgoMCwgYmFzZV8xLndoZW4pKChwYXRoKSA9PiBwYXRoLmVuZHNXaXRoKCIudGVtcGxhdGUiKSwgKDAsIGJhc2VfMS5jb21wb3NlRmlsZU9wZXJhdG9ycykoWwogICAgICAgIGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIFNlZSBhYm92ZSBmb3IgdGhpcyB3ZWlyZCBjYXN0LgogICAgICAgIGFwcGx5UGF0aFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIChlbnRyeSkgPT4gewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgY29udGVudDogZW50cnkuY29udGVudCwKICAgICAgICAgICAgcGF0aDogZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICBdKSkpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzCnZhciByZXF1aXJlX3VybCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi51cmwgPSB1cmwzOwogICAgdmFyIHVybF8xID0gcmVxdWlyZSgidXJsIik7CiAgICBmdW5jdGlvbiB1cmwzKHVybFN0cmluZykgewogICAgICBjb25zdCB1cmw0ID0gKDAsIHVybF8xLnBhcnNlKSh1cmxTdHJpbmcpOwogICAgICByZXR1cm4gKGNvbnRleHQpID0+IGNvbnRleHQuZW5naW5lLmNyZWF0ZVNvdXJjZUZyb21VcmwodXJsNCwgY29udGV4dCkoY29udGV4dCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlUcmVlID0gdm9pZCAwOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBFbXB0eVRyZWUgPSBjbGFzcyBleHRlbmRzIGhvc3RfdHJlZV8xLkhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkVtcHR5VHJlZSA9IEVtcHR5VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UcmVlID0gZXhwb3J0czIud29ya2Zsb3cgPSBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIuZm9ybWF0cyA9IGV4cG9ydHMyLlNjaGVtYXRpY3NFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ3MiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEuc3RyaW5nczsKICAgIH0gfSk7CiAgICB2YXIgZm9ybWF0cyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2Zvcm1hdHMyKCkpOwogICAgZXhwb3J0czIuZm9ybWF0cyA9IGZvcm1hdHM7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgd29ya2Zsb3cgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV93b3JrZmxvdygpKTsKICAgIGV4cG9ydHMyLndvcmtmbG93ID0gd29ya2Zsb3c7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjaGVtYXRpY3NFeGNlcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGNlcHRpb25fMS5TY2hlbWF0aWNzRXhjZXB0aW9uOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FjdGlvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbmdpbmUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2V4Y2VwdGlvbjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlMygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9iYXNlMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jYWxsKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21vdmUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmFuZG9tKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYzIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3VybCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kZWxlZ2F0ZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbXB0eTMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdF90cmVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kcnlydW4oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2luaygpLCBleHBvcnRzMik7CiAgICBleHBvcnRzMi5UcmVlID0gewogICAgICBlbXB0eSgpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgICB9LAogICAgICBicmFuY2godHJlZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEuYnJhbmNoKSh0cmVlKTsKICAgICAgfSwKICAgICAgbWVyZ2UodHJlZSwgb3RoZXIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgICAgcmV0dXJuICgwLCBzdGF0aWNfMS5tZXJnZSkodHJlZSwgb3RoZXIsIHN0cmF0ZWd5KTsKICAgICAgfSwKICAgICAgcGFydGl0aW9uKHRyZWUsIHByZWRpY2F0ZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEucGFydGl0aW9uKSh0cmVlLCBwcmVkaWNhdGUpOwogICAgICB9LAogICAgICBvcHRpbWl6ZSh0cmVlKSB7CiAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3N0cmlwLWpzb24tY29tbWVudHMtbnBtLTMuMS4xLWRjYjIzMjQ4MjMtMTAuemlwL25vZGVfbW9kdWxlcy9zdHJpcC1qc29uLWNvbW1lbnRzL2luZGV4LmpzCnZhciByZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc3RyaXAtanNvbi1jb21tZW50cy1ucG0tMy4xLjEtZGNiMjMyNDgyMy0xMC56aXAvbm9kZV9tb2R1bGVzL3N0cmlwLWpzb24tY29tbWVudHMvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2luZ2xlQ29tbWVudCA9IFN5bWJvbCgic2luZ2xlQ29tbWVudCIpOwogICAgdmFyIG11bHRpQ29tbWVudCA9IFN5bWJvbCgibXVsdGlDb21tZW50Iik7CiAgICB2YXIgc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA9ICgpID0+ICIiOwogICAgdmFyIHN0cmlwV2l0aFdoaXRlc3BhY2UgPSAoc3RyaW5nLCBzdGFydCwgZW5kKSA9PiBzdHJpbmcuc2xpY2Uoc3RhcnQsIGVuZCkucmVwbGFjZSgvXFMvZywgIiAiKTsKICAgIHZhciBpc0VzY2FwZWQgPSAoanNvblN0cmluZywgcXVvdGVQb3NpdGlvbikgPT4gewogICAgICBsZXQgaW5kZXggPSBxdW90ZVBvc2l0aW9uIC0gMTsKICAgICAgbGV0IGJhY2tzbGFzaENvdW50ID0gMDsKICAgICAgd2hpbGUgKGpzb25TdHJpbmdbaW5kZXhdID09PSAiXFwiKSB7CiAgICAgICAgaW5kZXggLT0gMTsKICAgICAgICBiYWNrc2xhc2hDb3VudCArPSAxOwogICAgICB9CiAgICAgIHJldHVybiBCb29sZWFuKGJhY2tzbGFzaENvdW50ICUgMik7CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gKGpzb25TdHJpbmcsIG9wdGlvbnMgPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGpzb25TdHJpbmcgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgYXJndW1lbnQgXGBqc29uU3RyaW5nXGAgdG8gYmUgYSBcYHN0cmluZ1xgLCBnb3QgXGAke3R5cGVvZiBqc29uU3RyaW5nfVxgYCk7CiAgICAgIH0KICAgICAgY29uc3Qgc3RyaXAgPSBvcHRpb25zLndoaXRlc3BhY2UgPT09IGZhbHNlID8gc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA6IHN0cmlwV2l0aFdoaXRlc3BhY2U7CiAgICAgIGxldCBpbnNpZGVTdHJpbmcgPSBmYWxzZTsKICAgICAgbGV0IGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgbGV0IG9mZnNldCA9IDA7CiAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBqc29uU3RyaW5nLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3VycmVudENoYXJhY3RlciA9IGpzb25TdHJpbmdbaV07CiAgICAgICAgY29uc3QgbmV4dENoYXJhY3RlciA9IGpzb25TdHJpbmdbaSArIDFdOwogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyID09PSAnIicpIHsKICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSBpc0VzY2FwZWQoanNvblN0cmluZywgaSk7CiAgICAgICAgICBpZiAoIWVzY2FwZWQpIHsKICAgICAgICAgICAgaW5zaWRlU3RyaW5nID0gIWluc2lkZVN0cmluZzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGluc2lkZVN0cmluZykgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIi8vIikgewogICAgICAgICAgcmVzdWx0ICs9IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0LCBpKTsKICAgICAgICAgIG9mZnNldCA9IGk7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gc2luZ2xlQ29tbWVudDsKICAgICAgICAgIGkrKzsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IHNpbmdsZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciArIG5leHRDaGFyYWN0ZXIgPT09ICJcclxuIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfSBlbHNlIGlmIChpbnNpZGVDb21tZW50ID09PSBzaW5nbGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgPT09ICJcbiIpIHsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgICAgIHJlc3VsdCArPSBzdHJpcChqc29uU3RyaW5nLCBvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICB9IGVsc2UgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiLyoiKSB7CiAgICAgICAgICByZXN1bHQgKz0ganNvblN0cmluZy5zbGljZShvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBtdWx0aUNvbW1lbnQ7CiAgICAgICAgICBpKys7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IG11bHRpQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIiovIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSArIDEpOwogICAgICAgICAgb2Zmc2V0ID0gaSArIDE7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdCArIChpbnNpZGVDb21tZW50ID8gc3RyaXAoanNvblN0cmluZy5zbGljZShvZmZzZXQpKSA6IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0KSk7CiAgICB9OwogIH0KfSk7CgovLyBzcmMvc2NoZW1hdGljL2luZGV4LnRzCnZhciBpbmRleF9leHBvcnRzID0ge307Cl9fZXhwb3J0KGluZGV4X2V4cG9ydHMsIHsKICBtYWluOiAoKSA9PiBtYWluCn0pOwptb2R1bGUuZXhwb3J0cyA9IF9fdG9Db21tb25KUyhpbmRleF9leHBvcnRzKTsKCi8vIHNyYy9zY2hlbWF0aWMvcHJvamVjdC9wcm9qZWN0LmZhY3RvcnkudHMKdmFyIGltcG9ydF9zY2hlbWF0aWNzOSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9qc29uLnV0aWxzLnRzCnZhciBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cyA9IF9fdG9FU00ocmVxdWlyZV9zdHJpcF9qc29uX2NvbW1lbnRzKCksIDEpOwp2YXIgc2VyaWFsaXplSnNvbiA9IChqc29uMikgPT4gYCR7SlNPTi5zdHJpbmdpZnkoanNvbjIsIG51bGwsIDIpfQpgOwp2YXIgcmVhZEpzb25JblRyZWUgPSAoaG9zdCwgcGF0aCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgJHtwYXRofWApOwogIH0KICBjb25zdCBjb250ZW50cyA9ICgwLCBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cy5kZWZhdWx0KShob3N0LnJlYWQocGF0aCk/LnRvU3RyaW5nKCJ1dGYtOCIpIHx8ICIiKTsKICB0cnkgewogICAgcmV0dXJuIEpTT04ucGFyc2UoY29udGVudHMpOwogIH0gY2F0Y2ggKGUpIHsKICAgIGNvbnN0IGVycm9yID0gZTsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHBhcnNlICR7cGF0aH06ICR7ZXJyb3IubWVzc2FnZX1gKTsKICB9Cn07CnZhciB1cGRhdGVKc29uSW5UcmVlID0gKHBhdGgsIGNhbGxiYWNrKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIGhvc3QuY3JlYXRlKHBhdGgsIHNlcmlhbGl6ZUpzb24oY2FsbGJhY2soe30sIGNvbnRleHQpKSk7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgaG9zdC5vdmVyd3JpdGUoCiAgICBwYXRoLAogICAgc2VyaWFsaXplSnNvbihjYWxsYmFjayhyZWFkSnNvbkluVHJlZShob3N0LCBwYXRoKSwgY29udGV4dCkpCiAgKTsKICByZXR1cm4gaG9zdDsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvdXRpbHMvdHNjb25maWcudXRpbHMudHMKdmFyIHVwZGF0ZVRzQ29uZmlnSW5UcmVlID0gKGNvbXBpbGVyT3B0aW9ucykgPT4gdXBkYXRlSnNvbkluVHJlZSgidHNjb25maWcuanNvbiIsICh0c2NvbmZpZykgPT4gKHsKICAuLi50c2NvbmZpZywKICBjb21waWxlck9wdGlvbnMKfSkpOwoKLy8gc3JjL3NjaGVtYXRpYy9ydWxlcy91cGRhdGUtdHMtY29uZmlnLnJ1bGUudHMKdmFyIHVwZGF0ZVRzQ29uZmlnUnVsZSA9IGFzeW5jICgpID0+IHsKICBjb25zdCB7IHRzQ29uZmlnIH0gPSBhd2FpdCBpbXBvcnQoIkBhdGxzL2NvZGUtcnVudGltZSIpOwogIHJldHVybiB1cGRhdGVUc0NvbmZpZ0luVHJlZSh7CiAgICAuLi50c0NvbmZpZy5jb21waWxlck9wdGlvbnMKICB9KTsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvc291cmNlcy9nZW5lcmF0ZS1jb21tb24uc291cmNlLnRzCnZhciBpbXBvcnRfY29yZSA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljcyA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MyID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczMgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgZ2VuZXJhdGVDb21tb25Tb3VyY2UgPSAob3B0aW9ucykgPT4gKDAsIGltcG9ydF9zY2hlbWF0aWNzLmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M0LnVybCkoIi4uL3RlbXBsYXRlcy9jb21tb24iKSwgWwogICgwLCBpbXBvcnRfc2NoZW1hdGljczIudGVtcGxhdGUpKHsKICAgIC4uLmltcG9ydF9jb3JlLnN0cmluZ3MsCiAgICAuLi5vcHRpb25zLAogICAgZG90OiAiLiIKICB9KSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MzLm1vdmUpKCIuLyIpCl0pOwoKLy8gc3JjL3NjaGVtYXRpYy9zb3VyY2VzL2dlbmVyYXRlLXByb2plY3Qtc3BlY2lmaWMuc291cmNlLnRzCnZhciBpbXBvcnRfbm9kZV9mcyA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKdmFyIGltcG9ydF9ub2RlX3BhdGggPSByZXF1aXJlKCJub2RlOnBhdGgiKTsKdmFyIGltcG9ydF9jb3JlMiA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczUgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNiA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M3ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczggPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGdlbmVyYXRlUHJvamVjdFNwZWNpZmljU291cmNlID0gKG9wdGlvbnMpID0+IHsKICBjb25zdCB7IG5hbWU6IHByb2plY3ROYW1lIH0gPSBKU09OLnBhcnNlKAogICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG4vbm8tc3luYwogICAgKDAsIGltcG9ydF9ub2RlX2ZzLnJlYWRGaWxlU3luYykoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikob3B0aW9ucy5jd2QsICJwYWNrYWdlLmpzb24iKSwgInV0Zi04IikKICApOwogIHJldHVybiAoMCwgaW1wb3J0X3NjaGVtYXRpY3M1LmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M2LnVybCkoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikoIi4uL3RlbXBsYXRlcyIsIG9wdGlvbnMudHlwZSkpLCBbCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3M3LnRlbXBsYXRlKSh7CiAgICAgIC4uLmltcG9ydF9jb3JlMi5zdHJpbmdzLAogICAgICAuLi5vcHRpb25zLAogICAgICBwcm9qZWN0TmFtZSwKICAgICAgZG90OiAiLiIKICAgIH0pLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzOC5tb3ZlKSgiLi8iKQogIF0pOwp9OwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9tZXJnZS1naXRpZ25vcmUtY29udGVudC51dGlscy50cwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19TVEFSVF9NQVJLRVIgPSAiIyByYWlqaW46YmVnaW4gcHJvamVjdC1zcGVjaWZpYyBnaXRpZ25vcmUiOwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19FTkRfTUFSS0VSID0gIiMgcmFpamluOmVuZCBwcm9qZWN0LXNwZWNpZmljIGdpdGlnbm9yZSI7CnZhciBub3JtYWxpemVDb250ZW50ID0gKGNvbnRlbnQpID0+IGNvbnRlbnQucmVwbGFjZSgvXHJcbi9nLCAiXG4iKTsKdmFyIGdldE5vcm1hbGl6ZWRMaW5lcyA9IChjb250ZW50KSA9PiBub3JtYWxpemVDb250ZW50KGNvbnRlbnQpLnNwbGl0KCJcbiIpOwp2YXIgdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyA9IChsaW5lcykgPT4gewogIGNvbnN0IG5vcm1hbGl6ZWRMaW5lcyA9IFsuLi5saW5lc107CiAgd2hpbGUgKG5vcm1hbGl6ZWRMaW5lcy5sZW5ndGggPiAwICYmIG5vcm1hbGl6ZWRMaW5lc1tub3JtYWxpemVkTGluZXMubGVuZ3RoIC0gMV0gPT09ICIiKSB7CiAgICBub3JtYWxpemVkTGluZXMucG9wKCk7CiAgfQogIHJldHVybiBub3JtYWxpemVkTGluZXM7Cn07CnZhciBpc1Byb2plY3RTcGVjaWZpY0xpbmUgPSAobGluZSwgdGVtcGxhdGVMaW5lU2V0KSA9PiBsaW5lICE9PSAiIiAmJiAhdGVtcGxhdGVMaW5lU2V0LmhhcyhsaW5lKSAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX1NUQVJUX01BUktFUiAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVI7CnZhciBnZXRQcm9qZWN0U3BlY2lmaWNMaW5lcyA9IChleGlzdGluZ0xpbmVzLCB0ZW1wbGF0ZUxpbmVTZXQpID0+IHsKICBjb25zdCBzdGFydEluZGV4ID0gZXhpc3RpbmdMaW5lcy5pbmRleE9mKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBjb25zdCBlbmRJbmRleCA9IGV4aXN0aW5nTGluZXMuaW5kZXhPZihQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVIpOwogIGlmIChzdGFydEluZGV4ICE9PSAtMSAmJiBlbmRJbmRleCA+IHN0YXJ0SW5kZXgpIHsKICAgIHJldHVybiBBcnJheS5mcm9tKAogICAgICBuZXcgU2V0KGV4aXN0aW5nTGluZXMuZmlsdGVyKChsaW5lKSA9PiBpc1Byb2plY3RTcGVjaWZpY0xpbmUobGluZSwgdGVtcGxhdGVMaW5lU2V0KSkpCiAgICApOwogIH0KICByZXR1cm4gZXhpc3RpbmdMaW5lcy5maWx0ZXIoKGxpbmUpID0+IGlzUHJvamVjdFNwZWNpZmljTGluZShsaW5lLCB0ZW1wbGF0ZUxpbmVTZXQpKTsKfTsKdmFyIG1lcmdlR2l0SWdub3JlQ29udGVudCA9ICh7CiAgZXhpc3RpbmdDb250ZW50LAogIHRlbXBsYXRlQ29udGVudAp9KSA9PiB7CiAgY29uc3QgdGVtcGxhdGVMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyh0ZW1wbGF0ZUNvbnRlbnQpOwogIGNvbnN0IHRlbXBsYXRlTGluZVNldCA9IG5ldyBTZXQodGVtcGxhdGVMaW5lcyk7CiAgY29uc3QgZXhpc3RpbmdMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyhleGlzdGluZ0NvbnRlbnQpOwogIGNvbnN0IHByb2plY3RTcGVjaWZpY0xpbmVzID0gZ2V0UHJvamVjdFNwZWNpZmljTGluZXMoZXhpc3RpbmdMaW5lcywgdGVtcGxhdGVMaW5lU2V0KTsKICBpZiAocHJvamVjdFNwZWNpZmljTGluZXMubGVuZ3RoID09PSAwKSB7CiAgICByZXR1cm4gdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyh0ZW1wbGF0ZUxpbmVzKS5qb2luKCJcbiIpOwogIH0KICBjb25zdCBtZXJnZWRMaW5lcyA9IHRyaW1UcmFpbGluZ0VtcHR5TGluZXModGVtcGxhdGVMaW5lcyk7CiAgaWYgKG1lcmdlZExpbmVzLmxlbmd0aCA+IDApIHsKICAgIG1lcmdlZExpbmVzLnB1c2goIiIpOwogIH0KICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBtZXJnZWRMaW5lcy5wdXNoKC4uLnByb2plY3RTcGVjaWZpY0xpbmVzKTsKICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfRU5EX01BUktFUik7CiAgcmV0dXJuIG1lcmdlZExpbmVzLmpvaW4oIlxuIik7Cn07CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qcy15YW1sLW5wbS00LjEuMC0zNjA2ZjMyMzEyLTEwLnppcC9ub2RlX21vZHVsZXMvanMteWFtbC9kaXN0L2pzLXlhbWwubWpzCmZ1bmN0aW9uIGlzTm90aGluZyhzdWJqZWN0KSB7CiAgcmV0dXJuIHR5cGVvZiBzdWJqZWN0ID09PSAidW5kZWZpbmVkIiB8fCBzdWJqZWN0ID09PSBudWxsOwp9CmZ1bmN0aW9uIGlzT2JqZWN0KHN1YmplY3QpIHsKICByZXR1cm4gdHlwZW9mIHN1YmplY3QgPT09ICJvYmplY3QiICYmIHN1YmplY3QgIT09IG51bGw7Cn0KZnVuY3Rpb24gdG9BcnJheShzZXF1ZW5jZSkgewogIGlmIChBcnJheS5pc0FycmF5KHNlcXVlbmNlKSkgcmV0dXJuIHNlcXVlbmNlOwogIGVsc2UgaWYgKGlzTm90aGluZyhzZXF1ZW5jZSkpIHJldHVybiBbXTsKICByZXR1cm4gW3NlcXVlbmNlXTsKfQpmdW5jdGlvbiBleHRlbmQodGFyZ2V0LCBzb3VyY2UpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwga2V5LCBzb3VyY2VLZXlzOwogIGlmIChzb3VyY2UpIHsKICAgIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsKICAgIH0KICB9CiAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiByZXBlYXQoc3RyaW5nLCBjb3VudCkgewogIHZhciByZXN1bHQgPSAiIiwgY3ljbGU7CiAgZm9yIChjeWNsZSA9IDA7IGN5Y2xlIDwgY291bnQ7IGN5Y2xlICs9IDEpIHsKICAgIHJlc3VsdCArPSBzdHJpbmc7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gaXNOZWdhdGl2ZVplcm8obnVtYmVyKSB7CiAgcmV0dXJuIG51bWJlciA9PT0gMCAmJiBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IDEgLyBudW1iZXI7Cn0KdmFyIGlzTm90aGluZ18xID0gaXNOb3RoaW5nOwp2YXIgaXNPYmplY3RfMSA9IGlzT2JqZWN0Owp2YXIgdG9BcnJheV8xID0gdG9BcnJheTsKdmFyIHJlcGVhdF8xID0gcmVwZWF0Owp2YXIgaXNOZWdhdGl2ZVplcm9fMSA9IGlzTmVnYXRpdmVaZXJvOwp2YXIgZXh0ZW5kXzEgPSBleHRlbmQ7CnZhciBjb21tb24gPSB7CiAgaXNOb3RoaW5nOiBpc05vdGhpbmdfMSwKICBpc09iamVjdDogaXNPYmplY3RfMSwKICB0b0FycmF5OiB0b0FycmF5XzEsCiAgcmVwZWF0OiByZXBlYXRfMSwKICBpc05lZ2F0aXZlWmVybzogaXNOZWdhdGl2ZVplcm9fMSwKICBleHRlbmQ6IGV4dGVuZF8xCn07CmZ1bmN0aW9uIGZvcm1hdEVycm9yKGV4Y2VwdGlvbjIsIGNvbXBhY3QpIHsKICB2YXIgd2hlcmUgPSAiIiwgbWVzc2FnZSA9IGV4Y2VwdGlvbjIucmVhc29uIHx8ICIodW5rbm93biByZWFzb24pIjsKICBpZiAoIWV4Y2VwdGlvbjIubWFyaykgcmV0dXJuIG1lc3NhZ2U7CiAgaWYgKGV4Y2VwdGlvbjIubWFyay5uYW1lKSB7CiAgICB3aGVyZSArPSAnaW4gIicgKyBleGNlcHRpb24yLm1hcmsubmFtZSArICciICc7CiAgfQogIHdoZXJlICs9ICIoIiArIChleGNlcHRpb24yLm1hcmsubGluZSArIDEpICsgIjoiICsgKGV4Y2VwdGlvbjIubWFyay5jb2x1bW4gKyAxKSArICIpIjsKICBpZiAoIWNvbXBhY3QgJiYgZXhjZXB0aW9uMi5tYXJrLnNuaXBwZXQpIHsKICAgIHdoZXJlICs9ICJcblxuIiArIGV4Y2VwdGlvbjIubWFyay5zbmlwcGV0OwogIH0KICByZXR1cm4gbWVzc2FnZSArICIgIiArIHdoZXJlOwp9CmZ1bmN0aW9uIFlBTUxFeGNlcHRpb24kMShyZWFzb24sIG1hcmspIHsKICBFcnJvci5jYWxsKHRoaXMpOwogIHRoaXMubmFtZSA9ICJZQU1MRXhjZXB0aW9uIjsKICB0aGlzLnJlYXNvbiA9IHJlYXNvbjsKICB0aGlzLm1hcmsgPSBtYXJrOwogIHRoaXMubWVzc2FnZSA9IGZvcm1hdEVycm9yKHRoaXMsIGZhbHNlKTsKICBpZiAoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpIHsKICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpOwogIH0gZWxzZSB7CiAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKCkuc3RhY2sgfHwgIiI7CiAgfQp9CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBZQU1MRXhjZXB0aW9uJDE7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZyhjb21wYWN0KSB7CiAgcmV0dXJuIHRoaXMubmFtZSArICI6ICIgKyBmb3JtYXRFcnJvcih0aGlzLCBjb21wYWN0KTsKfTsKdmFyIGV4Y2VwdGlvbiA9IFlBTUxFeGNlcHRpb24kMTsKZnVuY3Rpb24gZ2V0TGluZShidWZmZXIsIGxpbmVTdGFydCwgbGluZUVuZCwgcG9zaXRpb24sIG1heExpbmVMZW5ndGgpIHsKICB2YXIgaGVhZCA9ICIiOwogIHZhciB0YWlsID0gIiI7CiAgdmFyIG1heEhhbGZMZW5ndGggPSBNYXRoLmZsb29yKG1heExpbmVMZW5ndGggLyAyKSAtIDE7CiAgaWYgKHBvc2l0aW9uIC0gbGluZVN0YXJ0ID4gbWF4SGFsZkxlbmd0aCkgewogICAgaGVhZCA9ICIgLi4uICI7CiAgICBsaW5lU3RhcnQgPSBwb3NpdGlvbiAtIG1heEhhbGZMZW5ndGggKyBoZWFkLmxlbmd0aDsKICB9CiAgaWYgKGxpbmVFbmQgLSBwb3NpdGlvbiA+IG1heEhhbGZMZW5ndGgpIHsKICAgIHRhaWwgPSAiIC4uLiI7CiAgICBsaW5lRW5kID0gcG9zaXRpb24gKyBtYXhIYWxmTGVuZ3RoIC0gdGFpbC5sZW5ndGg7CiAgfQogIHJldHVybiB7CiAgICBzdHI6IGhlYWQgKyBidWZmZXIuc2xpY2UobGluZVN0YXJ0LCBsaW5lRW5kKS5yZXBsYWNlKC9cdC9nLCAiXHUyMTkyIikgKyB0YWlsLAogICAgcG9zOiBwb3NpdGlvbiAtIGxpbmVTdGFydCArIGhlYWQubGVuZ3RoCiAgICAvLyByZWxhdGl2ZSBwb3NpdGlvbgogIH07Cn0KZnVuY3Rpb24gcGFkU3RhcnQoc3RyaW5nLCBtYXgpIHsKICByZXR1cm4gY29tbW9uLnJlcGVhdCgiICIsIG1heCAtIHN0cmluZy5sZW5ndGgpICsgc3RyaW5nOwp9CmZ1bmN0aW9uIG1ha2VTbmlwcGV0KG1hcmssIG9wdGlvbnMpIHsKICBvcHRpb25zID0gT2JqZWN0LmNyZWF0ZShvcHRpb25zIHx8IG51bGwpOwogIGlmICghbWFyay5idWZmZXIpIHJldHVybiBudWxsOwogIGlmICghb3B0aW9ucy5tYXhMZW5ndGgpIG9wdGlvbnMubWF4TGVuZ3RoID0gNzk7CiAgaWYgKHR5cGVvZiBvcHRpb25zLmluZGVudCAhPT0gIm51bWJlciIpIG9wdGlvbnMuaW5kZW50ID0gMTsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNCZWZvcmUgIT09ICJudW1iZXIiKSBvcHRpb25zLmxpbmVzQmVmb3JlID0gMzsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNBZnRlciAhPT0gIm51bWJlciIpIG9wdGlvbnMubGluZXNBZnRlciA9IDI7CiAgdmFyIHJlID0gL1xyP1xufFxyfFwwL2c7CiAgdmFyIGxpbmVTdGFydHMgPSBbMF07CiAgdmFyIGxpbmVFbmRzID0gW107CiAgdmFyIG1hdGNoOwogIHZhciBmb3VuZExpbmVObyA9IC0xOwogIHdoaWxlIChtYXRjaCA9IHJlLmV4ZWMobWFyay5idWZmZXIpKSB7CiAgICBsaW5lRW5kcy5wdXNoKG1hdGNoLmluZGV4KTsKICAgIGxpbmVTdGFydHMucHVzaChtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCk7CiAgICBpZiAobWFyay5wb3NpdGlvbiA8PSBtYXRjaC5pbmRleCAmJiBmb3VuZExpbmVObyA8IDApIHsKICAgICAgZm91bmRMaW5lTm8gPSBsaW5lU3RhcnRzLmxlbmd0aCAtIDI7CiAgICB9CiAgfQogIGlmIChmb3VuZExpbmVObyA8IDApIGZvdW5kTGluZU5vID0gbGluZVN0YXJ0cy5sZW5ndGggLSAxOwogIHZhciByZXN1bHQgPSAiIiwgaSwgbGluZTsKICB2YXIgbGluZU5vTGVuZ3RoID0gTWF0aC5taW4obWFyay5saW5lICsgb3B0aW9ucy5saW5lc0FmdGVyLCBsaW5lRW5kcy5sZW5ndGgpLnRvU3RyaW5nKCkubGVuZ3RoOwogIHZhciBtYXhMaW5lTGVuZ3RoID0gb3B0aW9ucy5tYXhMZW5ndGggLSAob3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzKTsKICBmb3IgKGkgPSAxOyBpIDw9IG9wdGlvbnMubGluZXNCZWZvcmU7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vIC0gaSA8IDApIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ID0gY29tbW9uLnJlcGVhdCgiICIsIG9wdGlvbnMuaW5kZW50KSArIHBhZFN0YXJ0KChtYXJrLmxpbmUgLSBpICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iICsgcmVzdWx0OwogIH0KICBsaW5lID0gZ2V0TGluZShtYXJrLmJ1ZmZlciwgbGluZVN0YXJ0c1tmb3VuZExpbmVOb10sIGxpbmVFbmRzW2ZvdW5kTGluZU5vXSwgbWFyay5wb3NpdGlvbiwgbWF4TGluZUxlbmd0aCk7CiAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iOwogIHJlc3VsdCArPSBjb21tb24ucmVwZWF0KCItIiwgb3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzICsgbGluZS5wb3MpICsgIl5cbiI7CiAgZm9yIChpID0gMTsgaSA8PSBvcHRpb25zLmxpbmVzQWZ0ZXI7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vICsgaSA+PSBsaW5lRW5kcy5sZW5ndGgpIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgaSArIDEpLnRvU3RyaW5nKCksIGxpbmVOb0xlbmd0aCkgKyAiIHwgIiArIGxpbmUuc3RyICsgIlxuIjsKICB9CiAgcmV0dXJuIHJlc3VsdC5yZXBsYWNlKC9cbiQvLCAiIik7Cn0KdmFyIHNuaXBwZXQgPSBtYWtlU25pcHBldDsKdmFyIFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUyA9IFsKICAia2luZCIsCiAgIm11bHRpIiwKICAicmVzb2x2ZSIsCiAgImNvbnN0cnVjdCIsCiAgImluc3RhbmNlT2YiLAogICJwcmVkaWNhdGUiLAogICJyZXByZXNlbnQiLAogICJyZXByZXNlbnROYW1lIiwKICAiZGVmYXVsdFN0eWxlIiwKICAic3R5bGVBbGlhc2VzIgpdOwp2YXIgWUFNTF9OT0RFX0tJTkRTID0gWwogICJzY2FsYXIiLAogICJzZXF1ZW5jZSIsCiAgIm1hcHBpbmciCl07CmZ1bmN0aW9uIGNvbXBpbGVTdHlsZUFsaWFzZXMobWFwMikgewogIHZhciByZXN1bHQgPSB7fTsKICBpZiAobWFwMiAhPT0gbnVsbCkgewogICAgT2JqZWN0LmtleXMobWFwMikuZm9yRWFjaChmdW5jdGlvbihzdHlsZSkgewogICAgICBtYXAyW3N0eWxlXS5mb3JFYWNoKGZ1bmN0aW9uKGFsaWFzKSB7CiAgICAgICAgcmVzdWx0W1N0cmluZyhhbGlhcyldID0gc3R5bGU7CiAgICAgIH0pOwogICAgfSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gVHlwZSQxKHRhZywgb3B0aW9ucykgewogIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogIE9iamVjdC5rZXlzKG9wdGlvbnMpLmZvckVhY2goZnVuY3Rpb24obmFtZSkgewogICAgaWYgKFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUy5pbmRleE9mKG5hbWUpID09PSAtMSkgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCdVbmtub3duIG9wdGlvbiAiJyArIG5hbWUgKyAnIiBpcyBtZXQgaW4gZGVmaW5pdGlvbiBvZiAiJyArIHRhZyArICciIFlBTUwgdHlwZS4nKTsKICAgIH0KICB9KTsKICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zOwogIHRoaXMudGFnID0gdGFnOwogIHRoaXMua2luZCA9IG9wdGlvbnNbImtpbmQiXSB8fCBudWxsOwogIHRoaXMucmVzb2x2ZSA9IG9wdGlvbnNbInJlc29sdmUiXSB8fCBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0cnVlOwogIH07CiAgdGhpcy5jb25zdHJ1Y3QgPSBvcHRpb25zWyJjb25zdHJ1Y3QiXSB8fCBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YTsKICB9OwogIHRoaXMuaW5zdGFuY2VPZiA9IG9wdGlvbnNbImluc3RhbmNlT2YiXSB8fCBudWxsOwogIHRoaXMucHJlZGljYXRlID0gb3B0aW9uc1sicHJlZGljYXRlIl0gfHwgbnVsbDsKICB0aGlzLnJlcHJlc2VudCA9IG9wdGlvbnNbInJlcHJlc2VudCJdIHx8IG51bGw7CiAgdGhpcy5yZXByZXNlbnROYW1lID0gb3B0aW9uc1sicmVwcmVzZW50TmFtZSJdIHx8IG51bGw7CiAgdGhpcy5kZWZhdWx0U3R5bGUgPSBvcHRpb25zWyJkZWZhdWx0U3R5bGUiXSB8fCBudWxsOwogIHRoaXMubXVsdGkgPSBvcHRpb25zWyJtdWx0aSJdIHx8IGZhbHNlOwogIHRoaXMuc3R5bGVBbGlhc2VzID0gY29tcGlsZVN0eWxlQWxpYXNlcyhvcHRpb25zWyJzdHlsZUFsaWFzZXMiXSB8fCBudWxsKTsKICBpZiAoWUFNTF9OT0RFX0tJTkRTLmluZGV4T2YodGhpcy5raW5kKSA9PT0gLTEpIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oJ1Vua25vd24ga2luZCAiJyArIHRoaXMua2luZCArICciIGlzIHNwZWNpZmllZCBmb3IgIicgKyB0YWcgKyAnIiBZQU1MIHR5cGUuJyk7CiAgfQp9CnZhciB0eXBlID0gVHlwZSQxOwpmdW5jdGlvbiBjb21waWxlTGlzdChzY2hlbWEyLCBuYW1lKSB7CiAgdmFyIHJlc3VsdCA9IFtdOwogIHNjaGVtYTJbbmFtZV0uZm9yRWFjaChmdW5jdGlvbihjdXJyZW50VHlwZSkgewogICAgdmFyIG5ld0luZGV4ID0gcmVzdWx0Lmxlbmd0aDsKICAgIHJlc3VsdC5mb3JFYWNoKGZ1bmN0aW9uKHByZXZpb3VzVHlwZSwgcHJldmlvdXNJbmRleCkgewogICAgICBpZiAocHJldmlvdXNUeXBlLnRhZyA9PT0gY3VycmVudFR5cGUudGFnICYmIHByZXZpb3VzVHlwZS5raW5kID09PSBjdXJyZW50VHlwZS5raW5kICYmIHByZXZpb3VzVHlwZS5tdWx0aSA9PT0gY3VycmVudFR5cGUubXVsdGkpIHsKICAgICAgICBuZXdJbmRleCA9IHByZXZpb3VzSW5kZXg7CiAgICAgIH0KICAgIH0pOwogICAgcmVzdWx0W25ld0luZGV4XSA9IGN1cnJlbnRUeXBlOwogIH0pOwogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gY29tcGlsZU1hcCgpIHsKICB2YXIgcmVzdWx0ID0gewogICAgc2NhbGFyOiB7fSwKICAgIHNlcXVlbmNlOiB7fSwKICAgIG1hcHBpbmc6IHt9LAogICAgZmFsbGJhY2s6IHt9LAogICAgbXVsdGk6IHsKICAgICAgc2NhbGFyOiBbXSwKICAgICAgc2VxdWVuY2U6IFtdLAogICAgICBtYXBwaW5nOiBbXSwKICAgICAgZmFsbGJhY2s6IFtdCiAgICB9CiAgfSwgaW5kZXgsIGxlbmd0aDsKICBmdW5jdGlvbiBjb2xsZWN0VHlwZSh0eXBlMikgewogICAgaWYgKHR5cGUyLm11bHRpKSB7CiAgICAgIHJlc3VsdC5tdWx0aVt0eXBlMi5raW5kXS5wdXNoKHR5cGUyKTsKICAgICAgcmVzdWx0Lm11bHRpWyJmYWxsYmFjayJdLnB1c2godHlwZTIpOwogICAgfSBlbHNlIHsKICAgICAgcmVzdWx0W3R5cGUyLmtpbmRdW3R5cGUyLnRhZ10gPSByZXN1bHRbImZhbGxiYWNrIl1bdHlwZTIudGFnXSA9IHR5cGUyOwogICAgfQogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIGFyZ3VtZW50c1tpbmRleF0uZm9yRWFjaChjb2xsZWN0VHlwZSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gU2NoZW1hJDEoZGVmaW5pdGlvbikgewogIHJldHVybiB0aGlzLmV4dGVuZChkZWZpbml0aW9uKTsKfQpTY2hlbWEkMS5wcm90b3R5cGUuZXh0ZW5kID0gZnVuY3Rpb24gZXh0ZW5kMihkZWZpbml0aW9uKSB7CiAgdmFyIGltcGxpY2l0ID0gW107CiAgdmFyIGV4cGxpY2l0ID0gW107CiAgaWYgKGRlZmluaXRpb24gaW5zdGFuY2VvZiB0eXBlKSB7CiAgICBleHBsaWNpdC5wdXNoKGRlZmluaXRpb24pOwogIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShkZWZpbml0aW9uKSkgewogICAgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbik7CiAgfSBlbHNlIGlmIChkZWZpbml0aW9uICYmIChBcnJheS5pc0FycmF5KGRlZmluaXRpb24uaW1wbGljaXQpIHx8IEFycmF5LmlzQXJyYXkoZGVmaW5pdGlvbi5leHBsaWNpdCkpKSB7CiAgICBpZiAoZGVmaW5pdGlvbi5pbXBsaWNpdCkgaW1wbGljaXQgPSBpbXBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5pbXBsaWNpdCk7CiAgICBpZiAoZGVmaW5pdGlvbi5leHBsaWNpdCkgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5leHBsaWNpdCk7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNjaGVtYS5leHRlbmQgYXJndW1lbnQgc2hvdWxkIGJlIGEgVHlwZSwgWyBUeXBlIF0sIG9yIGEgc2NoZW1hIGRlZmluaXRpb24gKHsgaW1wbGljaXQ6IFsuLi5dLCBleHBsaWNpdDogWy4uLl0gfSkiKTsKICB9CiAgaW1wbGljaXQuZm9yRWFjaChmdW5jdGlvbih0eXBlJDEpIHsKICAgIGlmICghKHR5cGUkMSBpbnN0YW5jZW9mIHR5cGUpKSB7CiAgICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNwZWNpZmllZCBsaXN0IG9mIFlBTUwgdHlwZXMgKG9yIGEgc2luZ2xlIFR5cGUgb2JqZWN0KSBjb250YWlucyBhIG5vbi1UeXBlIG9iamVjdC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubG9hZEtpbmQgJiYgdHlwZSQxLmxvYWRLaW5kICE9PSAic2NhbGFyIikgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJUaGVyZSBpcyBhIG5vbi1zY2FsYXIgdHlwZSBpbiB0aGUgaW1wbGljaXQgbGlzdCBvZiBhIHNjaGVtYS4gSW1wbGljaXQgcmVzb2x2aW5nIG9mIHN1Y2ggdHlwZXMgaXMgbm90IHN1cHBvcnRlZC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubXVsdGkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiVGhlcmUgaXMgYSBtdWx0aSB0eXBlIGluIHRoZSBpbXBsaWNpdCBsaXN0IG9mIGEgc2NoZW1hLiBNdWx0aSB0YWdzIGNhbiBvbmx5IGJlIGxpc3RlZCBhcyBleHBsaWNpdC4iKTsKICAgIH0KICB9KTsKICBleHBsaWNpdC5mb3JFYWNoKGZ1bmN0aW9uKHR5cGUkMSkgewogICAgaWYgKCEodHlwZSQxIGluc3RhbmNlb2YgdHlwZSkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiU3BlY2lmaWVkIGxpc3Qgb2YgWUFNTCB0eXBlcyAob3IgYSBzaW5nbGUgVHlwZSBvYmplY3QpIGNvbnRhaW5zIGEgbm9uLVR5cGUgb2JqZWN0LiIpOwogICAgfQogIH0pOwogIHZhciByZXN1bHQgPSBPYmplY3QuY3JlYXRlKFNjaGVtYSQxLnByb3RvdHlwZSk7CiAgcmVzdWx0LmltcGxpY2l0ID0gKHRoaXMuaW1wbGljaXQgfHwgW10pLmNvbmNhdChpbXBsaWNpdCk7CiAgcmVzdWx0LmV4cGxpY2l0ID0gKHRoaXMuZXhwbGljaXQgfHwgW10pLmNvbmNhdChleHBsaWNpdCk7CiAgcmVzdWx0LmNvbXBpbGVkSW1wbGljaXQgPSBjb21waWxlTGlzdChyZXN1bHQsICJpbXBsaWNpdCIpOwogIHJlc3VsdC5jb21waWxlZEV4cGxpY2l0ID0gY29tcGlsZUxpc3QocmVzdWx0LCAiZXhwbGljaXQiKTsKICByZXN1bHQuY29tcGlsZWRUeXBlTWFwID0gY29tcGlsZU1hcChyZXN1bHQuY29tcGlsZWRJbXBsaWNpdCwgcmVzdWx0LmNvbXBpbGVkRXhwbGljaXQpOwogIHJldHVybiByZXN1bHQ7Cn07CnZhciBzY2hlbWEgPSBTY2hlbWEkMTsKdmFyIHN0ciA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpzdHIiLCB7CiAga2luZDogInNjYWxhciIsCiAgY29uc3RydWN0OiBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiAiIjsKICB9Cn0pOwp2YXIgc2VxID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNlcSIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107CiAgfQp9KTsKdmFyIG1hcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptYXAiLCB7CiAga2luZDogIm1hcHBpbmciLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDoge307CiAgfQp9KTsKdmFyIGZhaWxzYWZlID0gbmV3IHNjaGVtYSh7CiAgZXhwbGljaXQ6IFsKICAgIHN0ciwKICAgIHNlcSwKICAgIG1hcAogIF0KfSk7CmZ1bmN0aW9uIHJlc29sdmVZYW1sTnVsbChkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiB0cnVlOwogIHZhciBtYXggPSBkYXRhLmxlbmd0aDsKICByZXR1cm4gbWF4ID09PSAxICYmIGRhdGEgPT09ICJ+IiB8fCBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJudWxsIiB8fCBkYXRhID09PSAiTnVsbCIgfHwgZGF0YSA9PT0gIk5VTEwiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sTnVsbCgpIHsKICByZXR1cm4gbnVsbDsKfQpmdW5jdGlvbiBpc051bGwob2JqZWN0KSB7CiAgcmV0dXJuIG9iamVjdCA9PT0gbnVsbDsKfQp2YXIgX251bGwgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6bnVsbCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE51bGwsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sTnVsbCwKICBwcmVkaWNhdGU6IGlzTnVsbCwKICByZXByZXNlbnQ6IHsKICAgIGNhbm9uaWNhbDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAifiI7CiAgICB9LAogICAgbG93ZXJjYXNlOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuICJudWxsIjsKICAgIH0sCiAgICB1cHBlcmNhc2U6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIk5VTEwiOwogICAgfSwKICAgIGNhbWVsY2FzZTogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAiTnVsbCI7CiAgICB9LAogICAgZW1wdHk6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIiI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJvb2xlYW4oZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoOwogIHJldHVybiBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiKSB8fCBtYXggPT09IDUgJiYgKGRhdGEgPT09ICJmYWxzZSIgfHwgZGF0YSA9PT0gIkZhbHNlIiB8fCBkYXRhID09PSAiRkFMU0UiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQm9vbGVhbihkYXRhKSB7CiAgcmV0dXJuIGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiOwp9CmZ1bmN0aW9uIGlzQm9vbGVhbihvYmplY3QpIHsKICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG9iamVjdCkgPT09ICJbb2JqZWN0IEJvb2xlYW5dIjsKfQp2YXIgYm9vbCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpib29sIiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQm9vbGVhbiwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxCb29sZWFuLAogIHByZWRpY2F0ZTogaXNCb29sZWFuLAogIHJlcHJlc2VudDogewogICAgbG93ZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJ0cnVlIiA6ICJmYWxzZSI7CiAgICB9LAogICAgdXBwZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUUlVFIiA6ICJGQUxTRSI7CiAgICB9LAogICAgY2FtZWxjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUcnVlIiA6ICJGYWxzZSI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiBpc0hleENvZGUoYykgewogIHJldHVybiA0OCA8PSBjICYmIGMgPD0gNTcgfHwgNjUgPD0gYyAmJiBjIDw9IDcwIHx8IDk3IDw9IGMgJiYgYyA8PSAxMDI7Cn0KZnVuY3Rpb24gaXNPY3RDb2RlKGMpIHsKICByZXR1cm4gNDggPD0gYyAmJiBjIDw9IDU1Owp9CmZ1bmN0aW9uIGlzRGVjQ29kZShjKSB7CiAgcmV0dXJuIDQ4IDw9IGMgJiYgYyA8PSA1NzsKfQpmdW5jdGlvbiByZXNvbHZlWWFtbEludGVnZXIoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoLCBpbmRleCA9IDAsIGhhc0RpZ2l0cyA9IGZhbHNlLCBjaDsKICBpZiAoIW1heCkgcmV0dXJuIGZhbHNlOwogIGNoID0gZGF0YVtpbmRleF07CiAgaWYgKGNoID09PSAiLSIgfHwgY2ggPT09ICIrIikgewogICAgY2ggPSBkYXRhWysraW5kZXhdOwogIH0KICBpZiAoY2ggPT09ICIwIikgewogICAgaWYgKGluZGV4ICsgMSA9PT0gbWF4KSByZXR1cm4gdHJ1ZTsKICAgIGNoID0gZGF0YVsrK2luZGV4XTsKICAgIGlmIChjaCA9PT0gImIiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmIChjaCAhPT0gIjAiICYmIGNoICE9PSAiMSIpIHJldHVybiBmYWxzZTsKICAgICAgICBoYXNEaWdpdHMgPSB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBoYXNEaWdpdHMgJiYgY2ggIT09ICJfIjsKICAgIH0KICAgIGlmIChjaCA9PT0gIngiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmICghaXNIZXhDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSByZXR1cm4gZmFsc2U7CiAgICAgICAgaGFzRGlnaXRzID0gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gaGFzRGlnaXRzICYmIGNoICE9PSAiXyI7CiAgICB9CiAgICBpZiAoY2ggPT09ICJvIikgewogICAgICBpbmRleCsrOwogICAgICBmb3IgKDsgaW5kZXggPCBtYXg7IGluZGV4KyspIHsKICAgICAgICBjaCA9IGRhdGFbaW5kZXhdOwogICAgICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgICAgICBpZiAoIWlzT2N0Q29kZShkYXRhLmNoYXJDb2RlQXQoaW5kZXgpKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGhhc0RpZ2l0cyAmJiBjaCAhPT0gIl8iOwogICAgfQogIH0KICBpZiAoY2ggPT09ICJfIikgcmV0dXJuIGZhbHNlOwogIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgY2ggPSBkYXRhW2luZGV4XTsKICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgIGlmICghaXNEZWNDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgfQogIGlmICghaGFzRGlnaXRzIHx8IGNoID09PSAiXyIpIHJldHVybiBmYWxzZTsKICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sSW50ZWdlcihkYXRhKSB7CiAgdmFyIHZhbHVlID0gZGF0YSwgc2lnbiA9IDEsIGNoOwogIGlmICh2YWx1ZS5pbmRleE9mKCJfIikgIT09IC0xKSB7CiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL18vZywgIiIpOwogIH0KICBjaCA9IHZhbHVlWzBdOwogIGlmIChjaCA9PT0gIi0iIHx8IGNoID09PSAiKyIpIHsKICAgIGlmIChjaCA9PT0gIi0iKSBzaWduID0gLTE7CiAgICB2YWx1ZSA9IHZhbHVlLnNsaWNlKDEpOwogICAgY2ggPSB2YWx1ZVswXTsKICB9CiAgaWYgKHZhbHVlID09PSAiMCIpIHJldHVybiAwOwogIGlmIChjaCA9PT0gIjAiKSB7CiAgICBpZiAodmFsdWVbMV0gPT09ICJiIikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMik7CiAgICBpZiAodmFsdWVbMV0gPT09ICJ4IikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMTYpOwogICAgaWYgKHZhbHVlWzFdID09PSAibyIpIHJldHVybiBzaWduICogcGFyc2VJbnQodmFsdWUuc2xpY2UoMiksIDgpOwogIH0KICByZXR1cm4gc2lnbiAqIHBhcnNlSW50KHZhbHVlLCAxMCk7Cn0KZnVuY3Rpb24gaXNJbnRlZ2VyKG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgPT09IDAgJiYgIWNvbW1vbi5pc05lZ2F0aXZlWmVybyhvYmplY3QpKTsKfQp2YXIgaW50ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOmludCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEludGVnZXIsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sSW50ZWdlciwKICBwcmVkaWNhdGU6IGlzSW50ZWdlciwKICByZXByZXNlbnQ6IHsKICAgIGJpbmFyeTogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwYiIgKyBvYmoudG9TdHJpbmcoMikgOiAiLTBiIiArIG9iai50b1N0cmluZygyKS5zbGljZSgxKTsKICAgIH0sCiAgICBvY3RhbDogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwbyIgKyBvYmoudG9TdHJpbmcoOCkgOiAiLTBvIiArIG9iai50b1N0cmluZyg4KS5zbGljZSgxKTsKICAgIH0sCiAgICBkZWNpbWFsOiBmdW5jdGlvbihvYmopIHsKICAgICAgcmV0dXJuIG9iai50b1N0cmluZygxMCk7CiAgICB9LAogICAgLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqLwogICAgaGV4YWRlY2ltYWw6IGZ1bmN0aW9uKG9iaikgewogICAgICByZXR1cm4gb2JqID49IDAgPyAiMHgiICsgb2JqLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpIDogIi0weCIgKyBvYmoudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkuc2xpY2UoMSk7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJkZWNpbWFsIiwKICBzdHlsZUFsaWFzZXM6IHsKICAgIGJpbmFyeTogWzIsICJiaW4iXSwKICAgIG9jdGFsOiBbOCwgIm9jdCJdLAogICAgZGVjaW1hbDogWzEwLCAiZGVjIl0sCiAgICBoZXhhZGVjaW1hbDogWzE2LCAiaGV4Il0KICB9Cn0pOwp2YXIgWUFNTF9GTE9BVF9QQVRURVJOID0gbmV3IFJlZ0V4cCgKICAvLyAyLjVlNCwgMi41IGFuZCBpbnRlZ2VycwogICJeKD86Wy0rXT8oPzpbMC05XVswLTlfXSopKD86XFwuWzAtOV9dKik/KD86W2VFXVstK10/WzAtOV0rKT98XFwuWzAtOV9dKyg/OltlRV1bLStdP1swLTldKyk/fFstK10/XFwuKD86aW5mfEluZnxJTkYpfFxcLig/Om5hbnxOYU58TkFOKSkkIgopOwpmdW5jdGlvbiByZXNvbHZlWWFtbEZsb2F0KGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmICghWUFNTF9GTE9BVF9QQVRURVJOLnRlc3QoZGF0YSkgfHwgLy8gUXVpY2sgaGFjayB0byBub3QgYWxsb3cgaW50ZWdlcnMgZW5kIHdpdGggYF9gCiAgLy8gUHJvYmFibHkgc2hvdWxkIHVwZGF0ZSByZWdleHAgJiBjaGVjayBzcGVlZAogIGRhdGFbZGF0YS5sZW5ndGggLSAxXSA9PT0gIl8iKSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxGbG9hdChkYXRhKSB7CiAgdmFyIHZhbHVlLCBzaWduOwogIHZhbHVlID0gZGF0YS5yZXBsYWNlKC9fL2csICIiKS50b0xvd2VyQ2FzZSgpOwogIHNpZ24gPSB2YWx1ZVswXSA9PT0gIi0iID8gLTEgOiAxOwogIGlmICgiKy0iLmluZGV4T2YodmFsdWVbMF0pID49IDApIHsKICAgIHZhbHVlID0gdmFsdWUuc2xpY2UoMSk7CiAgfQogIGlmICh2YWx1ZSA9PT0gIi5pbmYiKSB7CiAgICByZXR1cm4gc2lnbiA9PT0gMSA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6IE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKICB9IGVsc2UgaWYgKHZhbHVlID09PSAiLm5hbiIpIHsKICAgIHJldHVybiBOYU47CiAgfQogIHJldHVybiBzaWduICogcGFyc2VGbG9hdCh2YWx1ZSwgMTApOwp9CnZhciBTQ0lFTlRJRklDX1dJVEhPVVRfRE9UID0gL15bLStdP1swLTldK2UvOwpmdW5jdGlvbiByZXByZXNlbnRZYW1sRmxvYXQob2JqZWN0LCBzdHlsZSkgewogIHZhciByZXM7CiAgaWYgKGlzTmFOKG9iamVjdCkpIHsKICAgIHN3aXRjaCAoc3R5bGUpIHsKICAgICAgY2FzZSAibG93ZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5uYW4iOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLk5BTiI7CiAgICAgIGNhc2UgImNhbWVsY2FzZSI6CiAgICAgICAgcmV0dXJuICIuTmFOIjsKICAgIH0KICB9IGVsc2UgaWYgKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA9PT0gb2JqZWN0KSB7CiAgICBzd2l0Y2ggKHN0eWxlKSB7CiAgICAgIGNhc2UgImxvd2VyY2FzZSI6CiAgICAgICAgcmV0dXJuICIuaW5mIjsKICAgICAgY2FzZSAidXBwZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLkluZiI7CiAgICB9CiAgfSBlbHNlIGlmIChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IG9iamVjdCkgewogICAgc3dpdGNoIChzdHlsZSkgewogICAgICBjYXNlICJsb3dlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5pbmYiOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLS5JbmYiOwogICAgfQogIH0gZWxzZSBpZiAoY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpIHsKICAgIHJldHVybiAiLTAuMCI7CiAgfQogIHJlcyA9IG9iamVjdC50b1N0cmluZygxMCk7CiAgcmV0dXJuIFNDSUVOVElGSUNfV0lUSE9VVF9ET1QudGVzdChyZXMpID8gcmVzLnJlcGxhY2UoImUiLCAiLmUiKSA6IHJlczsKfQpmdW5jdGlvbiBpc0Zsb2F0KG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgIT09IDAgfHwgY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpOwp9CnZhciBmbG9hdCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEZsb2F0LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEZsb2F0LAogIHByZWRpY2F0ZTogaXNGbG9hdCwKICByZXByZXNlbnQ6IHJlcHJlc2VudFlhbWxGbG9hdCwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwp2YXIganNvbiA9IGZhaWxzYWZlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIF9udWxsLAogICAgYm9vbCwKICAgIGludCwKICAgIGZsb2F0CiAgXQp9KTsKdmFyIGNvcmUgPSBqc29uOwp2YXIgWUFNTF9EQVRFX1JFR0VYUCA9IG5ldyBSZWdFeHAoCiAgIl4oWzAtOV1bMC05XVswLTldWzAtOV0pLShbMC05XVswLTldKS0oWzAtOV1bMC05XSkkIgopOwp2YXIgWUFNTF9USU1FU1RBTVBfUkVHRVhQID0gbmV3IFJlZ0V4cCgKICAiXihbMC05XVswLTldWzAtOV1bMC05XSktKFswLTldWzAtOV0/KS0oWzAtOV1bMC05XT8pKD86W1R0XXxbIFxcdF0rKShbMC05XVswLTldPyk6KFswLTldWzAtOV0pOihbMC05XVswLTldKSg/OlxcLihbMC05XSopKT8oPzpbIFxcdF0qKFp8KFstK10pKFswLTldWzAtOV0/KSg/OjooWzAtOV1bMC05XSkpPykpPyQiCik7CmZ1bmN0aW9uIHJlc29sdmVZYW1sVGltZXN0YW1wKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmIChZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSkgIT09IG51bGwpIHJldHVybiB0cnVlOwogIGlmIChZQU1MX1RJTUVTVEFNUF9SRUdFWFAuZXhlYyhkYXRhKSAhPT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxUaW1lc3RhbXAoZGF0YSkgewogIHZhciBtYXRjaCwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uID0gMCwgZGVsdGEgPSBudWxsLCB0el9ob3VyLCB0el9taW51dGUsIGRhdGU7CiAgbWF0Y2ggPSBZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSk7CiAgaWYgKG1hdGNoID09PSBudWxsKSBtYXRjaCA9IFlBTUxfVElNRVNUQU1QX1JFR0VYUC5leGVjKGRhdGEpOwogIGlmIChtYXRjaCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCJEYXRlIHJlc29sdmUgZXJyb3IiKTsKICB5ZWFyID0gK21hdGNoWzFdOwogIG1vbnRoID0gK21hdGNoWzJdIC0gMTsKICBkYXkgPSArbWF0Y2hbM107CiAgaWYgKCFtYXRjaFs0XSkgewogICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKHllYXIsIG1vbnRoLCBkYXkpKTsKICB9CiAgaG91ciA9ICttYXRjaFs0XTsKICBtaW51dGUgPSArbWF0Y2hbNV07CiAgc2Vjb25kID0gK21hdGNoWzZdOwogIGlmIChtYXRjaFs3XSkgewogICAgZnJhY3Rpb24gPSBtYXRjaFs3XS5zbGljZSgwLCAzKTsKICAgIHdoaWxlIChmcmFjdGlvbi5sZW5ndGggPCAzKSB7CiAgICAgIGZyYWN0aW9uICs9ICIwIjsKICAgIH0KICAgIGZyYWN0aW9uID0gK2ZyYWN0aW9uOwogIH0KICBpZiAobWF0Y2hbOV0pIHsKICAgIHR6X2hvdXIgPSArbWF0Y2hbMTBdOwogICAgdHpfbWludXRlID0gKyhtYXRjaFsxMV0gfHwgMCk7CiAgICBkZWx0YSA9ICh0el9ob3VyICogNjAgKyB0el9taW51dGUpICogNmU0OwogICAgaWYgKG1hdGNoWzldID09PSAiLSIpIGRlbHRhID0gLWRlbHRhOwogIH0KICBkYXRlID0gbmV3IERhdGUoRGF0ZS5VVEMoeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uKSk7CiAgaWYgKGRlbHRhKSBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgLSBkZWx0YSk7CiAgcmV0dXJuIGRhdGU7Cn0KZnVuY3Rpb24gcmVwcmVzZW50WWFtbFRpbWVzdGFtcChvYmplY3QpIHsKICByZXR1cm4gb2JqZWN0LnRvSVNPU3RyaW5nKCk7Cn0KdmFyIHRpbWVzdGFtcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjp0aW1lc3RhbXAiLCB7CiAga2luZDogInNjYWxhciIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxUaW1lc3RhbXAsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sVGltZXN0YW1wLAogIGluc3RhbmNlT2Y6IERhdGUsCiAgcmVwcmVzZW50OiByZXByZXNlbnRZYW1sVGltZXN0YW1wCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbE1lcmdlKGRhdGEpIHsKICByZXR1cm4gZGF0YSA9PT0gIjw8IiB8fCBkYXRhID09PSBudWxsOwp9CnZhciBtZXJnZSA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE1lcmdlCn0pOwp2YXIgQkFTRTY0X01BUCA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPVxuXHIiOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJpbmFyeShkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiBmYWxzZTsKICB2YXIgY29kZSwgaWR4LCBiaXRsZW4gPSAwLCBtYXggPSBkYXRhLmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBjb2RlID0gbWFwMi5pbmRleE9mKGRhdGEuY2hhckF0KGlkeCkpOwogICAgaWYgKGNvZGUgPiA2NCkgY29udGludWU7CiAgICBpZiAoY29kZSA8IDApIHJldHVybiBmYWxzZTsKICAgIGJpdGxlbiArPSA2OwogIH0KICByZXR1cm4gYml0bGVuICUgOCA9PT0gMDsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQmluYXJ5KGRhdGEpIHsKICB2YXIgaWR4LCB0YWlsYml0cywgaW5wdXQgPSBkYXRhLnJlcGxhY2UoL1tcclxuPV0vZywgIiIpLCBtYXggPSBpbnB1dC5sZW5ndGgsIG1hcDIgPSBCQVNFNjRfTUFQLCBiaXRzID0gMCwgcmVzdWx0ID0gW107CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgNCA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0LnB1c2goYml0cyA+PiAxNiAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgJiAyNTUpOwogICAgfQogICAgYml0cyA9IGJpdHMgPDwgNiB8IG1hcDIuaW5kZXhPZihpbnB1dC5jaGFyQXQoaWR4KSk7CiAgfQogIHRhaWxiaXRzID0gbWF4ICUgNCAqIDY7CiAgaWYgKHRhaWxiaXRzID09PSAwKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDE2ICYgMjU1KTsKICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzICYgMjU1KTsKICB9IGVsc2UgaWYgKHRhaWxiaXRzID09PSAxOCkgewogICAgcmVzdWx0LnB1c2goYml0cyA+PiAxMCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDIgJiAyNTUpOwogIH0gZWxzZSBpZiAodGFpbGJpdHMgPT09IDEyKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDQgJiAyNTUpOwogIH0KICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkocmVzdWx0KTsKfQpmdW5jdGlvbiByZXByZXNlbnRZYW1sQmluYXJ5KG9iamVjdCkgewogIHZhciByZXN1bHQgPSAiIiwgYml0cyA9IDAsIGlkeCwgdGFpbCwgbWF4ID0gb2JqZWN0Lmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgMyA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxOCAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA2ICYgNjNdOwogICAgICByZXN1bHQgKz0gbWFwMltiaXRzICYgNjNdOwogICAgfQogICAgYml0cyA9IChiaXRzIDw8IDgpICsgb2JqZWN0W2lkeF07CiAgfQogIHRhaWwgPSBtYXggJSAzOwogIGlmICh0YWlsID09PSAwKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDE4ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgPj4gNiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgJiA2M107CiAgfSBlbHNlIGlmICh0YWlsID09PSAyKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDEwICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0gZWxzZSBpZiAodGFpbCA9PT0gMSkgewogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0KICByZXR1cm4gcmVzdWx0Owp9CmZ1bmN0aW9uIGlzQmluYXJ5KG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKSA9PT0gIltvYmplY3QgVWludDhBcnJheV0iOwp9CnZhciBiaW5hcnkgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5IiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQmluYXJ5LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEJpbmFyeSwKICBwcmVkaWNhdGU6IGlzQmluYXJ5LAogIHJlcHJlc2VudDogcmVwcmVzZW50WWFtbEJpbmFyeQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQzID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIF90b1N0cmluZyQyID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxPbWFwKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIG9iamVjdEtleXMgPSBbXSwgaW5kZXgsIGxlbmd0aCwgcGFpciwgcGFpcktleSwgcGFpckhhc0tleSwgb2JqZWN0ID0gZGF0YTsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHBhaXIgPSBvYmplY3RbaW5kZXhdOwogICAgcGFpckhhc0tleSA9IGZhbHNlOwogICAgaWYgKF90b1N0cmluZyQyLmNhbGwocGFpcikgIT09ICJbb2JqZWN0IE9iamVjdF0iKSByZXR1cm4gZmFsc2U7CiAgICBmb3IgKHBhaXJLZXkgaW4gcGFpcikgewogICAgICBpZiAoX2hhc093blByb3BlcnR5JDMuY2FsbChwYWlyLCBwYWlyS2V5KSkgewogICAgICAgIGlmICghcGFpckhhc0tleSkgcGFpckhhc0tleSA9IHRydWU7CiAgICAgICAgZWxzZSByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIGlmICghcGFpckhhc0tleSkgcmV0dXJuIGZhbHNlOwogICAgaWYgKG9iamVjdEtleXMuaW5kZXhPZihwYWlyS2V5KSA9PT0gLTEpIG9iamVjdEtleXMucHVzaChwYWlyS2V5KTsKICAgIGVsc2UgcmV0dXJuIGZhbHNlOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sT21hcChkYXRhKSB7CiAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107Cn0KdmFyIG9tYXAgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6b21hcCIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sT21hcCwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxPbWFwCn0pOwp2YXIgX3RvU3RyaW5nJDEgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwpmdW5jdGlvbiByZXNvbHZlWWFtbFBhaXJzKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGlmIChfdG9TdHJpbmckMS5jYWxsKHBhaXIpICE9PSAiW29iamVjdCBPYmplY3RdIikgcmV0dXJuIGZhbHNlOwogICAga2V5cyA9IE9iamVjdC5rZXlzKHBhaXIpOwogICAgaWYgKGtleXMubGVuZ3RoICE9PSAxKSByZXR1cm4gZmFsc2U7CiAgICByZXN1bHRbaW5kZXhdID0gW2tleXNbMF0sIHBhaXJba2V5c1swXV1dOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sUGFpcnMoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gW107CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGtleXMgPSBPYmplY3Qua2V5cyhwYWlyKTsKICAgIHJlc3VsdFtpbmRleF0gPSBba2V5c1swXSwgcGFpcltrZXlzWzBdXV07CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KdmFyIHBhaXJzID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnBhaXJzIiwgewogIGtpbmQ6ICJzZXF1ZW5jZSIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxQYWlycywKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxQYWlycwp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQyID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxTZXQoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gdHJ1ZTsKICB2YXIga2V5LCBvYmplY3QgPSBkYXRhOwogIGZvciAoa2V5IGluIG9iamVjdCkgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQyLmNhbGwob2JqZWN0LCBrZXkpKSB7CiAgICAgIGlmIChvYmplY3Rba2V5XSAhPT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sU2V0KGRhdGEpIHsKICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiB7fTsKfQp2YXIgc2V0ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNldCIsIHsKICBraW5kOiAibWFwcGluZyIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxTZXQsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sU2V0Cn0pOwp2YXIgX2RlZmF1bHQgPSBjb3JlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIHRpbWVzdGFtcCwKICAgIG1lcmdlCiAgXSwKICBleHBsaWNpdDogWwogICAgYmluYXJ5LAogICAgb21hcCwKICAgIHBhaXJzLAogICAgc2V0CiAgXQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQxID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENPTlRFWFRfRkxPV19JTiA9IDE7CnZhciBDT05URVhUX0ZMT1dfT1VUID0gMjsKdmFyIENPTlRFWFRfQkxPQ0tfSU4gPSAzOwp2YXIgQ09OVEVYVF9CTE9DS19PVVQgPSA0Owp2YXIgQ0hPTVBJTkdfQ0xJUCA9IDE7CnZhciBDSE9NUElOR19TVFJJUCA9IDI7CnZhciBDSE9NUElOR19LRUVQID0gMzsKdmFyIFBBVFRFUk5fTk9OX1BSSU5UQUJMRSA9IC9bXHgwMC1ceDA4XHgwQlx4MENceDBFLVx4MUZceDdGLVx4ODRceDg2LVx4OUZcdUZGRkVcdUZGRkZdfFtcdUQ4MDAtXHVEQkZGXSg/IVtcdURDMDAtXHVERkZGXSl8KD86W15cdUQ4MDAtXHVEQkZGXXxeKVtcdURDMDAtXHVERkZGXS87CnZhciBQQVRURVJOX05PTl9BU0NJSV9MSU5FX0JSRUFLUyA9IC9bXHg4NVx1MjAyOFx1MjAyOV0vOwp2YXIgUEFUVEVSTl9GTE9XX0lORElDQVRPUlMgPSAvWyxcW1xdXHtcfV0vOwp2YXIgUEFUVEVSTl9UQUdfSEFORExFID0gL14oPzohfCEhfCFbYS16XC1dKyEpJC9pOwp2YXIgUEFUVEVSTl9UQUdfVVJJID0gL14oPzohfFteLFxbXF1ce1x9XSkoPzolWzAtOWEtZl17Mn18WzAtOWEtelwtIztcL1w/OkAmPVwrXCQsX1wuIX5cKidcKFwpXFtcXV0pKiQvaTsKZnVuY3Rpb24gX2NsYXNzKG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKTsKfQpmdW5jdGlvbiBpc19FT0woYykgewogIHJldHVybiBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19XSElURV9TUEFDRShjKSB7CiAgcmV0dXJuIGMgPT09IDkgfHwgYyA9PT0gMzI7Cn0KZnVuY3Rpb24gaXNfV1NfT1JfRU9MKGMpIHsKICByZXR1cm4gYyA9PT0gOSB8fCBjID09PSAzMiB8fCBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19GTE9XX0lORElDQVRPUihjKSB7CiAgcmV0dXJuIGMgPT09IDQ0IHx8IGMgPT09IDkxIHx8IGMgPT09IDkzIHx8IGMgPT09IDEyMyB8fCBjID09PSAxMjU7Cn0KZnVuY3Rpb24gZnJvbUhleENvZGUoYykgewogIHZhciBsYzsKICBpZiAoNDggPD0gYyAmJiBjIDw9IDU3KSB7CiAgICByZXR1cm4gYyAtIDQ4OwogIH0KICBsYyA9IGMgfCAzMjsKICBpZiAoOTcgPD0gbGMgJiYgbGMgPD0gMTAyKSB7CiAgICByZXR1cm4gbGMgLSA5NyArIDEwOwogIH0KICByZXR1cm4gLTE7Cn0KZnVuY3Rpb24gZXNjYXBlZEhleExlbihjKSB7CiAgaWYgKGMgPT09IDEyMCkgewogICAgcmV0dXJuIDI7CiAgfQogIGlmIChjID09PSAxMTcpIHsKICAgIHJldHVybiA0OwogIH0KICBpZiAoYyA9PT0gODUpIHsKICAgIHJldHVybiA4OwogIH0KICByZXR1cm4gMDsKfQpmdW5jdGlvbiBmcm9tRGVjaW1hbENvZGUoYykgewogIGlmICg0OCA8PSBjICYmIGMgPD0gNTcpIHsKICAgIHJldHVybiBjIC0gNDg7CiAgfQogIHJldHVybiAtMTsKfQpmdW5jdGlvbiBzaW1wbGVFc2NhcGVTZXF1ZW5jZShjKSB7CiAgcmV0dXJuIGMgPT09IDQ4ID8gIlwwIiA6IGMgPT09IDk3ID8gIlx4MDciIDogYyA9PT0gOTggPyAiXGIiIDogYyA9PT0gMTE2ID8gIgkiIDogYyA9PT0gOSA/ICIJIiA6IGMgPT09IDExMCA/ICJcbiIgOiBjID09PSAxMTggPyAiXHYiIDogYyA9PT0gMTAyID8gIlxmIiA6IGMgPT09IDExNCA/ICJcciIgOiBjID09PSAxMDEgPyAiXHgxQiIgOiBjID09PSAzMiA/ICIgIiA6IGMgPT09IDM0ID8gJyInIDogYyA9PT0gNDcgPyAiLyIgOiBjID09PSA5MiA/ICJcXCIgOiBjID09PSA3OCA/ICJceDg1IiA6IGMgPT09IDk1ID8gIlx4QTAiIDogYyA9PT0gNzYgPyAiXHUyMDI4IiA6IGMgPT09IDgwID8gIlx1MjAyOSIgOiAiIjsKfQpmdW5jdGlvbiBjaGFyRnJvbUNvZGVwb2ludChjKSB7CiAgaWYgKGMgPD0gNjU1MzUpIHsKICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGMpOwogIH0KICByZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZSgKICAgIChjIC0gNjU1MzYgPj4gMTApICsgNTUyOTYsCiAgICAoYyAtIDY1NTM2ICYgMTAyMykgKyA1NjMyMAogICk7Cn0KdmFyIHNpbXBsZUVzY2FwZUNoZWNrID0gbmV3IEFycmF5KDI1Nik7CnZhciBzaW1wbGVFc2NhcGVNYXAgPSBuZXcgQXJyYXkoMjU2KTsKZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7CiAgc2ltcGxlRXNjYXBlQ2hlY2tbaV0gPSBzaW1wbGVFc2NhcGVTZXF1ZW5jZShpKSA/IDEgOiAwOwogIHNpbXBsZUVzY2FwZU1hcFtpXSA9IHNpbXBsZUVzY2FwZVNlcXVlbmNlKGkpOwp9CnZhciBpOwpmdW5jdGlvbiBTdGF0ZSQxKGlucHV0LCBvcHRpb25zKSB7CiAgdGhpcy5pbnB1dCA9IGlucHV0OwogIHRoaXMuZmlsZW5hbWUgPSBvcHRpb25zWyJmaWxlbmFtZSJdIHx8IG51bGw7CiAgdGhpcy5zY2hlbWEgPSBvcHRpb25zWyJzY2hlbWEiXSB8fCBfZGVmYXVsdDsKICB0aGlzLm9uV2FybmluZyA9IG9wdGlvbnNbIm9uV2FybmluZyJdIHx8IG51bGw7CiAgdGhpcy5sZWdhY3kgPSBvcHRpb25zWyJsZWdhY3kiXSB8fCBmYWxzZTsKICB0aGlzLmpzb24gPSBvcHRpb25zWyJqc29uIl0gfHwgZmFsc2U7CiAgdGhpcy5saXN0ZW5lciA9IG9wdGlvbnNbImxpc3RlbmVyIl0gfHwgbnVsbDsKICB0aGlzLmltcGxpY2l0VHlwZXMgPSB0aGlzLnNjaGVtYS5jb21waWxlZEltcGxpY2l0OwogIHRoaXMudHlwZU1hcCA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkVHlwZU1hcDsKICB0aGlzLmxlbmd0aCA9IGlucHV0Lmxlbmd0aDsKICB0aGlzLnBvc2l0aW9uID0gMDsKICB0aGlzLmxpbmUgPSAwOwogIHRoaXMubGluZVN0YXJ0ID0gMDsKICB0aGlzLmxpbmVJbmRlbnQgPSAwOwogIHRoaXMuZmlyc3RUYWJJbkxpbmUgPSAtMTsKICB0aGlzLmRvY3VtZW50cyA9IFtdOwp9CmZ1bmN0aW9uIGdlbmVyYXRlRXJyb3Ioc3RhdGUsIG1lc3NhZ2UpIHsKICB2YXIgbWFyayA9IHsKICAgIG5hbWU6IHN0YXRlLmZpbGVuYW1lLAogICAgYnVmZmVyOiBzdGF0ZS5pbnB1dC5zbGljZSgwLCAtMSksCiAgICAvLyBvbWl0IHRyYWlsaW5nIFwwCiAgICBwb3NpdGlvbjogc3RhdGUucG9zaXRpb24sCiAgICBsaW5lOiBzdGF0ZS5saW5lLAogICAgY29sdW1uOiBzdGF0ZS5wb3NpdGlvbiAtIHN0YXRlLmxpbmVTdGFydAogIH07CiAgbWFyay5zbmlwcGV0ID0gc25pcHBldChtYXJrKTsKICByZXR1cm4gbmV3IGV4Y2VwdGlvbihtZXNzYWdlLCBtYXJrKTsKfQpmdW5jdGlvbiB0aHJvd0Vycm9yKHN0YXRlLCBtZXNzYWdlKSB7CiAgdGhyb3cgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSk7Cn0KZnVuY3Rpb24gdGhyb3dXYXJuaW5nKHN0YXRlLCBtZXNzYWdlKSB7CiAgaWYgKHN0YXRlLm9uV2FybmluZykgewogICAgc3RhdGUub25XYXJuaW5nLmNhbGwobnVsbCwgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSkpOwogIH0KfQp2YXIgZGlyZWN0aXZlSGFuZGxlcnMgPSB7CiAgWUFNTDogZnVuY3Rpb24gaGFuZGxlWWFtbERpcmVjdGl2ZShzdGF0ZSwgbmFtZSwgYXJncykgewogICAgdmFyIG1hdGNoLCBtYWpvciwgbWlub3I7CiAgICBpZiAoc3RhdGUudmVyc2lvbiAhPT0gbnVsbCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgJVlBTUwgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoYXJncy5sZW5ndGggIT09IDEpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIllBTUwgZGlyZWN0aXZlIGFjY2VwdHMgZXhhY3RseSBvbmUgYXJndW1lbnQiKTsKICAgIH0KICAgIG1hdGNoID0gL14oWzAtOV0rKVwuKFswLTldKykkLy5leGVjKGFyZ3NbMF0pOwogICAgaWYgKG1hdGNoID09PSBudWxsKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIGFyZ3VtZW50IG9mIHRoZSBZQU1MIGRpcmVjdGl2ZSIpOwogICAgfQogICAgbWFqb3IgPSBwYXJzZUludChtYXRjaFsxXSwgMTApOwogICAgbWlub3IgPSBwYXJzZUludChtYXRjaFsyXSwgMTApOwogICAgaWYgKG1ham9yICE9PSAxKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ1bmFjY2VwdGFibGUgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogICAgc3RhdGUudmVyc2lvbiA9IGFyZ3NbMF07CiAgICBzdGF0ZS5jaGVja0xpbmVCcmVha3MgPSBtaW5vciA8IDI7CiAgICBpZiAobWlub3IgIT09IDEgJiYgbWlub3IgIT09IDIpIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAidW5zdXBwb3J0ZWQgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogIH0sCiAgVEFHOiBmdW5jdGlvbiBoYW5kbGVUYWdEaXJlY3RpdmUoc3RhdGUsIG5hbWUsIGFyZ3MpIHsKICAgIHZhciBoYW5kbGUsIHByZWZpeDsKICAgIGlmIChhcmdzLmxlbmd0aCAhPT0gMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiVEFHIGRpcmVjdGl2ZSBhY2NlcHRzIGV4YWN0bHkgdHdvIGFyZ3VtZW50cyIpOwogICAgfQogICAgaGFuZGxlID0gYXJnc1swXTsKICAgIHByZWZpeCA9IGFyZ3NbMV07CiAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImlsbC1mb3JtZWQgdGFnIGhhbmRsZSAoZmlyc3QgYXJndW1lbnQpIG9mIHRoZSBUQUcgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3RoZXJlIGlzIGEgcHJldmlvdXNseSBkZWNsYXJlZCBzdWZmaXggZm9yICInICsgaGFuZGxlICsgJyIgdGFnIGhhbmRsZScpOwogICAgfQogICAgaWYgKCFQQVRURVJOX1RBR19VUkkudGVzdChwcmVmaXgpKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIHRhZyBwcmVmaXggKHNlY29uZCBhcmd1bWVudCkgb2YgdGhlIFRBRyBkaXJlY3RpdmUiKTsKICAgIH0KICAgIHRyeSB7CiAgICAgIHByZWZpeCA9IGRlY29kZVVSSUNvbXBvbmVudChwcmVmaXgpOwogICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgcHJlZml4IGlzIG1hbGZvcm1lZDogIiArIHByZWZpeCk7CiAgICB9CiAgICBzdGF0ZS50YWdNYXBbaGFuZGxlXSA9IHByZWZpeDsKICB9Cn07CmZ1bmN0aW9uIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBzdGFydCwgZW5kLCBjaGVja0pzb24pIHsKICB2YXIgX3Bvc2l0aW9uLCBfbGVuZ3RoLCBfY2hhcmFjdGVyLCBfcmVzdWx0OwogIGlmIChzdGFydCA8IGVuZCkgewogICAgX3Jlc3VsdCA9IHN0YXRlLmlucHV0LnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgaWYgKGNoZWNrSnNvbikgewogICAgICBmb3IgKF9wb3NpdGlvbiA9IDAsIF9sZW5ndGggPSBfcmVzdWx0Lmxlbmd0aDsgX3Bvc2l0aW9uIDwgX2xlbmd0aDsgX3Bvc2l0aW9uICs9IDEpIHsKICAgICAgICBfY2hhcmFjdGVyID0gX3Jlc3VsdC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICAgICAgaWYgKCEoX2NoYXJhY3RlciA9PT0gOSB8fCAzMiA8PSBfY2hhcmFjdGVyICYmIF9jaGFyYWN0ZXIgPD0gMTExNDExMSkpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB2YWxpZCBKU09OIGNoYXJhY3RlciIpOwogICAgICAgIH0KICAgICAgfQogICAgfSBlbHNlIGlmIChQQVRURVJOX05PTl9QUklOVEFCTEUudGVzdChfcmVzdWx0KSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGhlIHN0cmVhbSBjb250YWlucyBub24tcHJpbnRhYmxlIGNoYXJhY3RlcnMiKTsKICAgIH0KICAgIHN0YXRlLnJlc3VsdCArPSBfcmVzdWx0OwogIH0KfQpmdW5jdGlvbiBtZXJnZU1hcHBpbmdzKHN0YXRlLCBkZXN0aW5hdGlvbiwgc291cmNlLCBvdmVycmlkYWJsZUtleXMpIHsKICB2YXIgc291cmNlS2V5cywga2V5LCBpbmRleCwgcXVhbnRpdHk7CiAgaWYgKCFjb21tb24uaXNPYmplY3Qoc291cmNlKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImNhbm5vdCBtZXJnZSBtYXBwaW5nczsgdGhlIHByb3ZpZGVkIHNvdXJjZSBvYmplY3QgaXMgdW5hY2NlcHRhYmxlIik7CiAgfQogIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogIGZvciAoaW5kZXggPSAwLCBxdWFudGl0eSA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IHF1YW50aXR5OyBpbmRleCArPSAxKSB7CiAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChkZXN0aW5hdGlvbiwga2V5KSkgewogICAgICBkZXN0aW5hdGlvbltrZXldID0gc291cmNlW2tleV07CiAgICAgIG92ZXJyaWRhYmxlS2V5c1trZXldID0gdHJ1ZTsKICAgIH0KICB9Cn0KZnVuY3Rpb24gc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgc3RhcnRMaW5lLCBzdGFydExpbmVTdGFydCwgc3RhcnRQb3MpIHsKICB2YXIgaW5kZXgsIHF1YW50aXR5OwogIGlmIChBcnJheS5pc0FycmF5KGtleU5vZGUpKSB7CiAgICBrZXlOb2RlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoa2V5Tm9kZSk7CiAgICBmb3IgKGluZGV4ID0gMCwgcXVhbnRpdHkgPSBrZXlOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShrZXlOb2RlW2luZGV4XSkpIHsKICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibmVzdGVkIGFycmF5cyBhcmUgbm90IHN1cHBvcnRlZCBpbnNpZGUga2V5cyIpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGVbaW5kZXhdKSA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgICBrZXlOb2RlW2luZGV4XSA9ICJbb2JqZWN0IE9iamVjdF0iOwogICAgICB9CiAgICB9CiAgfQogIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGUpID09PSAiW29iamVjdCBPYmplY3RdIikgewogICAga2V5Tm9kZSA9ICJbb2JqZWN0IE9iamVjdF0iOwogIH0KICBrZXlOb2RlID0gU3RyaW5nKGtleU5vZGUpOwogIGlmIChfcmVzdWx0ID09PSBudWxsKSB7CiAgICBfcmVzdWx0ID0ge307CiAgfQogIGlmIChrZXlUYWcgPT09ICJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIpIHsKICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlTm9kZSkpIHsKICAgICAgZm9yIChpbmRleCA9IDAsIHF1YW50aXR5ID0gdmFsdWVOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZVtpbmRleF0sIG92ZXJyaWRhYmxlS2V5cyk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZSwgb3ZlcnJpZGFibGVLZXlzKTsKICAgIH0KICB9IGVsc2UgewogICAgaWYgKCFzdGF0ZS5qc29uICYmICFfaGFzT3duUHJvcGVydHkkMS5jYWxsKG92ZXJyaWRhYmxlS2V5cywga2V5Tm9kZSkgJiYgX2hhc093blByb3BlcnR5JDEuY2FsbChfcmVzdWx0LCBrZXlOb2RlKSkgewogICAgICBzdGF0ZS5saW5lID0gc3RhcnRMaW5lIHx8IHN0YXRlLmxpbmU7CiAgICAgIHN0YXRlLmxpbmVTdGFydCA9IHN0YXJ0TGluZVN0YXJ0IHx8IHN0YXRlLmxpbmVTdGFydDsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGFydFBvcyB8fCBzdGF0ZS5wb3NpdGlvbjsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0ZWQgbWFwcGluZyBrZXkiKTsKICAgIH0KICAgIGlmIChrZXlOb2RlID09PSAiX19wcm90b19fIikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoX3Jlc3VsdCwga2V5Tm9kZSwgewogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLAogICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgIHZhbHVlOiB2YWx1ZU5vZGUKICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICBfcmVzdWx0W2tleU5vZGVdID0gdmFsdWVOb2RlOwogICAgfQogICAgZGVsZXRlIG92ZXJyaWRhYmxlS2V5c1trZXlOb2RlXTsKICB9CiAgcmV0dXJuIF9yZXN1bHQ7Cn0KZnVuY3Rpb24gcmVhZExpbmVCcmVhayhzdGF0ZSkgewogIHZhciBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTApIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgfSBlbHNlIGlmIChjaCA9PT0gMTMpIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDEwKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICB9CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIGxpbmUgYnJlYWsgaXMgZXhwZWN0ZWQiKTsKICB9CiAgc3RhdGUubGluZSArPSAxOwogIHN0YXRlLmxpbmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogIHN0YXRlLmZpcnN0VGFiSW5MaW5lID0gLTE7Cn0KZnVuY3Rpb24gc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgYWxsb3dDb21tZW50cywgY2hlY2tJbmRlbnQpIHsKICB2YXIgbGluZUJyZWFrcyA9IDAsIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICB3aGlsZSAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gOSAmJiBzdGF0ZS5maXJzdFRhYkluTGluZSA9PT0gLTEpIHsKICAgICAgICBzdGF0ZS5maXJzdFRhYkluTGluZSA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB9CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmIChhbGxvd0NvbW1lbnRzICYmIGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlIChjaCAhPT0gMTAgJiYgY2ggIT09IDEzICYmIGNoICE9PSAwKTsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIHJlYWRMaW5lQnJlYWsoc3RhdGUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICBsaW5lQnJlYWtzKys7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQgPSAwOwogICAgICB3aGlsZSAoY2ggPT09IDMyKSB7CiAgICAgICAgc3RhdGUubGluZUluZGVudCsrOwogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgYnJlYWs7CiAgICB9CiAgfQogIGlmIChjaGVja0luZGVudCAhPT0gLTEgJiYgbGluZUJyZWFrcyAhPT0gMCAmJiBzdGF0ZS5saW5lSW5kZW50IDwgY2hlY2tJbmRlbnQpIHsKICAgIHRocm93V2FybmluZyhzdGF0ZSwgImRlZmljaWVudCBpbmRlbnRhdGlvbiIpOwogIH0KICByZXR1cm4gbGluZUJyZWFrczsKfQpmdW5jdGlvbiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb24sIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChfcG9zaXRpb24pOwogIGlmICgoY2ggPT09IDQ1IHx8IGNoID09PSA0NikgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMSkgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMikpIHsKICAgIF9wb3NpdGlvbiArPSAzOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICBpZiAoY2ggPT09IDAgfHwgaXNfV1NfT1JfRU9MKGNoKSkgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICB9CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIGNvdW50KSB7CiAgaWYgKGNvdW50ID09PSAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gIiAiOwogIH0gZWxzZSBpZiAoY291bnQgPiAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBjb3VudCAtIDEpOwogIH0KfQpmdW5jdGlvbiByZWFkUGxhaW5TY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQsIHdpdGhpbkZsb3dDb2xsZWN0aW9uKSB7CiAgdmFyIHByZWNlZGluZywgZm9sbG93aW5nLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhhc1BlbmRpbmdDb250ZW50LCBfbGluZSwgX2xpbmVTdGFydCwgX2xpbmVJbmRlbnQsIF9raW5kID0gc3RhdGUua2luZCwgX3Jlc3VsdCA9IHN0YXRlLnJlc3VsdCwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoaXNfV1NfT1JfRU9MKGNoKSB8fCBpc19GTE9XX0lORElDQVRPUihjaCkgfHwgY2ggPT09IDM1IHx8IGNoID09PSAzOCB8fCBjaCA9PT0gNDIgfHwgY2ggPT09IDMzIHx8IGNoID09PSAxMjQgfHwgY2ggPT09IDYyIHx8IGNoID09PSAzOSB8fCBjaCA9PT0gMzQgfHwgY2ggPT09IDM3IHx8IGNoID09PSA2NCB8fCBjaCA9PT0gOTYpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgaWYgKGNoID09PSA2MyB8fCBjaCA9PT0gNDUpIHsKICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICBoYXNQZW5kaW5nQ29udGVudCA9IGZhbHNlOwogIHdoaWxlIChjaCAhPT0gMCkgewogICAgaWYgKGNoID09PSA1OCkgewogICAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoY2ggPT09IDM1KSB7CiAgICAgIHByZWNlZGluZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gLSAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChwcmVjZWRpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHx8IHdpdGhpbkZsb3dDb2xsZWN0aW9uICYmIGlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgICBicmVhazsKICAgIH0gZWxzZSBpZiAoaXNfRU9MKGNoKSkgewogICAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICAgIF9saW5lSW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIC0xKTsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPj0gbm9kZUluZGVudCkgewogICAgICAgIGhhc1BlbmRpbmdDb250ZW50ID0gdHJ1ZTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnBvc2l0aW9uID0gY2FwdHVyZUVuZDsKICAgICAgICBzdGF0ZS5saW5lID0gX2xpbmU7CiAgICAgICAgc3RhdGUubGluZVN0YXJ0ID0gX2xpbmVTdGFydDsKICAgICAgICBzdGF0ZS5saW5lSW5kZW50ID0gX2xpbmVJbmRlbnQ7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0KICAgIGlmIChoYXNQZW5kaW5nQ29udGVudCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBjYXB0dXJlRW5kLCBmYWxzZSk7CiAgICAgIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIHN0YXRlLmxpbmUgLSBfbGluZSk7CiAgICAgIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgaGFzUGVuZGluZ0NvbnRlbnQgPSBmYWxzZTsKICAgIH0KICAgIGlmICghaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbiArIDE7CiAgICB9CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgfQogIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGZhbHNlKTsKICBpZiAoc3RhdGUucmVzdWx0KSB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CiAgc3RhdGUua2luZCA9IF9raW5kOwogIHN0YXRlLnJlc3VsdCA9IF9yZXN1bHQ7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2gsIGNhcHR1cmVTdGFydCwgY2FwdHVyZUVuZDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzkpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIHN0YXRlLnBvc2l0aW9uKys7CiAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogIHdoaWxlICgoY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSkgIT09IDApIHsKICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgICBjYXB0dXJlU3RhcnQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZERvdWJsZVF1b3RlZFNjYWxhcihzdGF0ZSwgbm9kZUluZGVudCkgewogIHZhciBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhleExlbmd0aCwgaGV4UmVzdWx0LCB0bXAsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSAzNCkgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBzdGF0ZS5raW5kID0gInNjYWxhciI7CiAgc3RhdGUucmVzdWx0ID0gIiI7CiAgc3RhdGUucG9zaXRpb24rKzsKICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgd2hpbGUgKChjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pKSAhPT0gMCkgewogICAgaWYgKGNoID09PSAzNCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBzdGF0ZS5wb3NpdGlvbiwgdHJ1ZSk7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSBlbHNlIGlmIChjaCA9PT0gOTIpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIG5vZGVJbmRlbnQpOwogICAgICB9IGVsc2UgaWYgKGNoIDwgMjU2ICYmIHNpbXBsZUVzY2FwZUNoZWNrW2NoXSkgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBzaW1wbGVFc2NhcGVNYXBbY2hdOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSBpZiAoKHRtcCA9IGVzY2FwZWRIZXhMZW4oY2gpKSA+IDApIHsKICAgICAgICBoZXhMZW5ndGggPSB0bXA7CiAgICAgICAgaGV4UmVzdWx0ID0gMDsKICAgICAgICBmb3IgKDsgaGV4TGVuZ3RoID4gMDsgaGV4TGVuZ3RoLS0pIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICAgIGlmICgodG1wID0gZnJvbUhleENvZGUoY2gpKSA+PSAwKSB7CiAgICAgICAgICAgIGhleFJlc3VsdCA9IChoZXhSZXN1bHQgPDwgNCkgKyB0bXA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZXhwZWN0ZWQgaGV4YWRlY2ltYWwgY2hhcmFjdGVyIik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjaGFyRnJvbUNvZGVwb2ludChoZXhSZXN1bHQpOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInVua25vd24gZXNjYXBlIHNlcXVlbmNlIik7CiAgICAgIH0KICAgICAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIHJlYWROZXh0ID0gdHJ1ZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9yZXN1bHQsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIGZvbGxvd2luZywgdGVybWluYXRvciwgaXNQYWlyLCBpc0V4cGxpY2l0UGFpciwgaXNNYXBwaW5nLCBvdmVycmlkYWJsZUtleXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKSwga2V5Tm9kZSwga2V5VGFnLCB2YWx1ZU5vZGUsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoID09PSA5MSkgewogICAgdGVybWluYXRvciA9IDkzOwogICAgaXNNYXBwaW5nID0gZmFsc2U7CiAgICBfcmVzdWx0ID0gW107CiAgfSBlbHNlIGlmIChjaCA9PT0gMTIzKSB7CiAgICB0ZXJtaW5hdG9yID0gMTI1OwogICAgaXNNYXBwaW5nID0gdHJ1ZTsKICAgIF9yZXN1bHQgPSB7fTsKICB9IGVsc2UgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gdGVybWluYXRvcikgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgICBzdGF0ZS5raW5kID0gaXNNYXBwaW5nID8gIm1hcHBpbmciIDogInNlcXVlbmNlIjsKICAgICAgc3RhdGUucmVzdWx0ID0gX3Jlc3VsdDsKICAgICAgcmV0dXJuIHRydWU7CiAgICB9IGVsc2UgaWYgKCFyZWFkTmV4dCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibWlzc2VkIGNvbW1hIGJldHdlZW4gZmxvdyBjb2xsZWN0aW9uIGVudHJpZXMiKTsKICAgIH0gZWxzZSBpZiAoY2ggPT09IDQ0KSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB0aGUgbm9kZSBjb250ZW50LCBidXQgZm91bmQgJywnIik7CiAgICB9CiAgICBrZXlUYWcgPSBrZXlOb2RlID0gdmFsdWVOb2RlID0gbnVsbDsKICAgIGlzUGFpciA9IGlzRXhwbGljaXRQYWlyID0gZmFsc2U7CiAgICBpZiAoY2ggPT09IDYzKSB7CiAgICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgICAgaXNQYWlyID0gaXNFeHBsaWNpdFBhaXIgPSB0cnVlOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIH0KICAgIH0KICAgIF9saW5lID0gc3RhdGUubGluZTsKICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICBfcG9zID0gc3RhdGUucG9zaXRpb247CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9GTE9XX0lOLCBmYWxzZSwgdHJ1ZSk7CiAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChpc0V4cGxpY2l0UGFpciB8fCBzdGF0ZS5saW5lID09PSBfbGluZSkgJiYgY2ggPT09IDU4KSB7CiAgICAgIGlzUGFpciA9IHRydWU7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIGNvbXBvc2VOb2RlKHN0YXRlLCBub2RlSW5kZW50LCBDT05URVhUX0ZMT1dfSU4sIGZhbHNlLCB0cnVlKTsKICAgICAgdmFsdWVOb2RlID0gc3RhdGUucmVzdWx0OwogICAgfQogICAgaWYgKGlzTWFwcGluZykgewogICAgICBzdG9yZU1hcHBpbmdQYWlyKHN0YXRlLCBfcmVzdWx0LCBvdmVycmlkYWJsZUtleXMsIGtleVRhZywga2V5Tm9kZSwgdmFsdWVOb2RlLCBfbGluZSwgX2xpbmVTdGFydCwgX3Bvcyk7CiAgICB9IGVsc2UgaWYgKGlzUGFpcikgewogICAgICBfcmVzdWx0LnB1c2goc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgbnVsbCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MpKTsKICAgIH0gZWxzZSB7CiAgICAgIF9yZXN1bHQucHVzaChrZXlOb2RlKTsKICAgIH0KICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDQpIHsKICAgICAgcmVhZE5leHQgPSB0cnVlOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICByZWFkTmV4dCA9IGZhbHNlOwogICAgfQogIH0KICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24iKTsKfQpmdW5jdGlvbiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2FwdHVyZVN0YXJ0LCBmb2xkaW5nLCBjaG9tcGluZyA9IENIT01QSU5HX0NMSVAsIGRpZFJlYWRDb250ZW50ID0gZmFsc2UsIGRldGVjdGVkSW5kZW50ID0gZmFsc2UsIHRleHRJbmRlbnQgPSBub2RlSW5kZW50LCBlbXB0eUxpbmVzID0gMCwgYXRNb3JlSW5kZW50ZWQgPSBmYWxzZSwgdG1wLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTI0KSB7CiAgICBmb2xkaW5nID0gZmFsc2U7CiAgfSBlbHNlIGlmIChjaCA9PT0gNjIpIHsKICAgIGZvbGRpbmcgPSB0cnVlOwogIH0gZWxzZSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHN0YXRlLmtpbmQgPSAic2NhbGFyIjsKICBzdGF0ZS5yZXN1bHQgPSAiIjsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDMgfHwgY2ggPT09IDQ1KSB7CiAgICAgIGlmIChDSE9NUElOR19DTElQID09PSBjaG9tcGluZykgewogICAgICAgIGNob21waW5nID0gY2ggPT09IDQzID8gQ0hPTVBJTkdfS0VFUCA6IENIT01QSU5HX1NUUklQOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYSBjaG9tcGluZyBtb2RlIGlkZW50aWZpZXIiKTsKICAgICAgfQogICAgfSBlbHNlIGlmICgodG1wID0gZnJvbURlY2ltYWxDb2RlKGNoKSkgPj0gMCkgewogICAgICBpZiAodG1wID09PSAwKSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBleHBsaWNpdCBpbmRlbnRhdGlvbiB3aWR0aCBvZiBhIGJsb2NrIHNjYWxhcjsgaXQgY2Fubm90IGJlIGxlc3MgdGhhbiBvbmUiKTsKICAgICAgfSBlbHNlIGlmICghZGV0ZWN0ZWRJbmRlbnQpIHsKICAgICAgICB0ZXh0SW5kZW50ID0gbm9kZUluZGVudCArIHRtcCAtIDE7CiAgICAgICAgZGV0ZWN0ZWRJbmRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYW4gaW5kZW50YXRpb24gd2lkdGggaWRlbnRpZmllciIpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBicmVhazsKICAgIH0KICB9CiAgaWYgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgZG8gewogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpOwogICAgaWYgKGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlICghaXNfRU9MKGNoKSAmJiBjaCAhPT0gMCk7CiAgICB9CiAgfQogIHdoaWxlIChjaCAhPT0gMCkgewogICAgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBzdGF0ZS5saW5lSW5kZW50ID0gMDsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgICB3aGlsZSAoKCFkZXRlY3RlZEluZGVudCB8fCBzdGF0ZS5saW5lSW5kZW50IDwgdGV4dEluZGVudCkgJiYgY2ggPT09IDMyKSB7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQrKzsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgaWYgKCFkZXRlY3RlZEluZGVudCAmJiBzdGF0ZS5saW5lSW5kZW50ID4gdGV4dEluZGVudCkgewogICAgICB0ZXh0SW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGVtcHR5TGluZXMrKzsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUubGluZUluZGVudCA8IHRleHRJbmRlbnQpIHsKICAgICAgaWYgKGNob21waW5nID09PSBDSE9NUElOR19LRUVQKSB7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZGlkUmVhZENvbnRlbnQgPyAxICsgZW1wdHlMaW5lcyA6IGVtcHR5TGluZXMpOwogICAgICB9IGVsc2UgaWYgKGNob21waW5nID09PSBDSE9NUElOR19DTElQKSB7CiAgICAgICAgaWYgKGRpZFJlYWRDb250ZW50KSB7CiAgICAgICAgICBzdGF0ZS5yZXN1bHQgKz0gIlxuIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgYnJlYWs7CiAgICB9CiAgICBpZiAoZm9sZGluZykgewogICAgICBpZiAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgICAgYXRNb3JlSW5kZW50ZWQgPSB0cnVlOwogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGRpZFJlYWRDb250ZW50ID8gMSArIGVtcHR5TGluZXMgOiBlbXB0eUxpbmVzKTsKICAgICAgfSBlbHNlIGlmIChhdE1vcmVJbmRlbnRlZCkgewogICAgICAgIGF0TW9yZUluZGVudGVkID0gZmFsc2U7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZW1wdHlMaW5lcyArIDEpOwogICAgICB9IGVsc2UgaWYgKGVtcHR5TGluZXMgPT09IDApIHsKICAgICAgICBpZiAoZGlkUmVhZENvbnRlbnQpIHsKICAgICAgICAgIHN0YXRlLnJlc3VsdCArPSAiICI7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGVtcHR5TGluZXMpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBkaWRSZWFkQ29udGVudCA/IDEgKyBlbXB0eUxpbmVzIDogZW1wdHlMaW5lcyk7CiAgICB9CiAgICBkaWRSZWFkQ29udGVudCA9IHRydWU7CiAgICBkZXRlY3RlZEluZGVudCA9IHRydWU7CiAgICBlbXB0eUxpbmVzID0gMDsKICAgIGNhcHR1cmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogICAgd2hpbGUgKCFpc19FT0woY2gpICYmIGNoICE9PSAwKSB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIHN0YXRlLnBvc2l0aW9uLCBmYWxzZSk7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIHJlYWRCbG9ja1NlcXVlbmNlKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIF9saW5lLCBfdGFnID0gc3RhdGUudGFnLCBfYW5jaG9yID0gc3RhdGUuYW5jaG9yLCBfcmVzdWx0ID0gW10sIGZvbGxvd2luZywgZGV0ZWN0ZWQgPSBmYWxzZSwgY2g7CiAgaWYgKHN0YXRlLmZpcnN0VGFiSW5MaW5lICE9PSAtMSkgcmV0dXJuIGZhbHNlOwogIGlmIChzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgIHN0YXRlLmFuY2hvck1hcFtzdGF0ZS5hbmNob3JdID0gX3Jlc3VsdDsKICB9CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGF0ZS5maXJzdFRhYkluTGluZTsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhYiBjaGFyYWN0ZXJzIG11c3Qgbm90IGJlIHVzZWQgaW4gaW5kZW50YXRpb24iKTsKICAgIH0KICAgIGlmIChjaCAhPT0gNDUpIHsKICAgICAgYnJlYWs7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBpZiAoIWlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGJyZWFrOwogICAgfQogICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgc3RhdGUucG9zaXRpb24rKzsKICAgIGlmIChza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSkpIHsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPD0gbm9kZUluZGVudCkgewogICAgICAgIF9yZXN1bHQucHVzaChudWxsKTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9CiAgICB9CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9CTE9DS19JTiwgZmFsc2UsIHRydWUpOwogICAgX3Jlc3VsdC5wdXNoKHN0YXRlLnJlc3VsdCk7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgJiYgY2ggIT09IDApIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBpbmRlbnRhdGlvbiBvZiBhIHNlcXVlbmNlIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoZGV0ZWN0ZWQpIHsKICAgIHN0YXRlLnRhZyA9IF90YWc7CiAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgc3RhdGUua2luZCA9ICJzZXF1ZW5jZSI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogICAgcmV0dXJuIHRydWU7CiAgfQogIHJldHVybiBmYWxzZTsKfQpmdW5jdGlvbiByZWFkQmxvY2tNYXBwaW5nKHN0YXRlLCBub2RlSW5kZW50LCBmbG93SW5kZW50KSB7CiAgdmFyIGZvbGxvd2luZywgYWxsb3dDb21wYWN0LCBfbGluZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIF9yZXN1bHQgPSB7fSwgb3ZlcnJpZGFibGVLZXlzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCksIGtleVRhZyA9IG51bGwsIGtleU5vZGUgPSBudWxsLCB2YWx1ZU5vZGUgPSBudWxsLCBhdEV4cGxpY2l0S2V5ID0gZmFsc2UsIGRldGVjdGVkID0gZmFsc2UsIGNoOwogIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICBpZiAoIWF0RXhwbGljaXRLZXkgJiYgc3RhdGUuZmlyc3RUYWJJbkxpbmUgIT09IC0xKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uID0gc3RhdGUuZmlyc3RUYWJJbkxpbmU7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWIgY2hhcmFjdGVycyBtdXN0IG5vdCBiZSB1c2VkIGluIGluZGVudGF0aW9uIik7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBpZiAoKGNoID09PSA2MyB8fCBjaCA9PT0gNTgpICYmIGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGlmIChjaCA9PT0gNjMpIHsKICAgICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgIH0KICAgICAgICBkZXRlY3RlZCA9IHRydWU7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IHRydWU7CiAgICAgICAgYWxsb3dDb21wYWN0ID0gdHJ1ZTsKICAgICAgfSBlbHNlIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgIGFsbG93Q29tcGFjdCA9IHRydWU7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImluY29tcGxldGUgZXhwbGljaXQgbWFwcGluZyBwYWlyOyBhIGtleSBub2RlIGlzIG1pc3NlZDsgb3IgZm9sbG93ZWQgYnkgYSBub24tdGFidWxhdGVkIGVtcHR5IGxpbmUiKTsKICAgICAgfQogICAgICBzdGF0ZS5wb3NpdGlvbiArPSAxOwogICAgICBjaCA9IGZvbGxvd2luZzsKICAgIH0gZWxzZSB7CiAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgX2tleUxpbmVTdGFydCA9IHN0YXRlLmxpbmVTdGFydDsKICAgICAgX2tleVBvcyA9IHN0YXRlLnBvc2l0aW9uOwogICAgICBpZiAoIWNvbXBvc2VOb2RlKHN0YXRlLCBmbG93SW5kZW50LCBDT05URVhUX0ZMT1dfT1VULCBmYWxzZSwgdHJ1ZSkpIHsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoc3RhdGUubGluZSA9PT0gX2xpbmUpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNoID09PSA1OCkgewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgICAgaWYgKCFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIHdoaXRlc3BhY2UgY2hhcmFjdGVyIGlzIGV4cGVjdGVkIGFmdGVyIHRoZSBrZXktdmFsdWUgc2VwYXJhdG9yIHdpdGhpbiBhIGJsb2NrIG1hcHBpbmciKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgICAgIHN0b3JlTWFwcGluZ1BhaXIoc3RhdGUsIF9yZXN1bHQsIG92ZXJyaWRhYmxlS2V5cywga2V5VGFnLCBrZXlOb2RlLCBudWxsLCBfa2V5TGluZSwgX2tleUxpbmVTdGFydCwgX2tleVBvcyk7CiAgICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgICAgfQogICAgICAgICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgICAgYWxsb3dDb21wYWN0ID0gZmFsc2U7CiAgICAgICAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICAgICAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgICAgIH0gZWxzZSBpZiAoZGV0ZWN0ZWQpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYW4gaW1wbGljaXQgbWFwcGluZyBwYWlyOyBhIGNvbG9uIGlzIG1pc3NlZCIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChkZXRlY3RlZCkgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYSBibG9jayBtYXBwaW5nIGVudHJ5OyBhIG11bHRpbGluZSBrZXkgbWF5IG5vdCBiZSBhbiBpbXBsaWNpdCBrZXkiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgIHN0YXRlLmFuY2hvciA9IF9hbmNob3I7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgIH0KICAgIGlmIChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgewogICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgICBfa2V5TGluZVN0YXJ0ID0gc3RhdGUubGluZVN0YXJ0OwogICAgICAgIF9rZXlQb3MgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfQogICAgICBpZiAoY29tcG9zZU5vZGUoc3RhdGUsIG5vZGVJbmRlbnQsIENPTlRFWFRfQkxPQ0tfT1VULCB0cnVlLCBhbGxvd0NvbXBhY3QpKSB7CiAgICAgICAgaWYgKGF0RXhwbGljaXRLZXkpIHsKICAgICAgICAgIGtleU5vZGUgPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZhbHVlTm9kZSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKCFhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MpOwogICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICB9CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmICgoc3RhdGUubGluZSA9PT0gX2xpbmUgfHwgc3RhdGUubGluZUluZGVudCA+IG5vZGVJbmRlbnQpICYmIGNoICE9PSAwKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJiYWQgaW5kZW50YXRpb24gb2YgYSBtYXBwaW5nIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICB9CiAgaWYgKGRldGVjdGVkKSB7CiAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgIHN0YXRlLmtpbmQgPSAibWFwcGluZyI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogIH0KICByZXR1cm4gZGV0ZWN0ZWQ7Cn0KZnVuY3Rpb24gcmVhZFRhZ1Byb3BlcnR5KHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgaXNWZXJiYXRpbSA9IGZhbHNlLCBpc05hbWVkID0gZmFsc2UsIHRhZ0hhbmRsZSwgdGFnTmFtZSwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggIT09IDMzKSByZXR1cm4gZmFsc2U7CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0aW9uIG9mIGEgdGFnIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggPT09IDYwKSB7CiAgICBpc1ZlcmJhdGltID0gdHJ1ZTsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB9IGVsc2UgaWYgKGNoID09PSAzMykgewogICAgaXNOYW1lZCA9IHRydWU7CiAgICB0YWdIYW5kbGUgPSAiISEiOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0gZWxzZSB7CiAgICB0YWdIYW5kbGUgPSAiISI7CiAgfQogIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBkbyB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0gd2hpbGUgKGNoICE9PSAwICYmIGNoICE9PSA2Mik7CiAgICBpZiAoc3RhdGUucG9zaXRpb24gPCBzdGF0ZS5sZW5ndGgpIHsKICAgICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSB2ZXJiYXRpbSB0YWciKTsKICAgIH0KICB9IGVsc2UgewogICAgd2hpbGUgKGNoICE9PSAwICYmICFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gMzMpIHsKICAgICAgICBpZiAoIWlzTmFtZWQpIHsKICAgICAgICAgIHRhZ0hhbmRsZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiAtIDEsIHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgICAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KHRhZ0hhbmRsZSkpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWVkIHRhZyBoYW5kbGUgY2Fubm90IGNvbnRhaW4gc3VjaCBjaGFyYWN0ZXJzIik7CiAgICAgICAgICB9CiAgICAgICAgICBpc05hbWVkID0gdHJ1ZTsKICAgICAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uICsgMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZXhjbGFtYXRpb24gbWFya3MiKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgaWYgKFBBVFRFUk5fRkxPV19JTkRJQ0FUT1JTLnRlc3QodGFnTmFtZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZmxvdyBpbmRpY2F0b3IgY2hhcmFjdGVycyIpOwogICAgfQogIH0KICBpZiAodGFnTmFtZSAmJiAhUEFUVEVSTl9UQUdfVVJJLnRlc3QodGFnTmFtZSkpIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgbmFtZSBjYW5ub3QgY29udGFpbiBzdWNoIGNoYXJhY3RlcnM6ICIgKyB0YWdOYW1lKTsKICB9CiAgdHJ5IHsKICAgIHRhZ05hbWUgPSBkZWNvZGVVUklDb21wb25lbnQodGFnTmFtZSk7CiAgfSBjYXRjaCAoZXJyKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGFnIG5hbWUgaXMgbWFsZm9ybWVkOiAiICsgdGFnTmFtZSk7CiAgfQogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBzdGF0ZS50YWcgPSB0YWdOYW1lOwogIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIHRhZ0hhbmRsZSkpIHsKICAgIHN0YXRlLnRhZyA9IHN0YXRlLnRhZ01hcFt0YWdIYW5kbGVdICsgdGFnTmFtZTsKICB9IGVsc2UgaWYgKHRhZ0hhbmRsZSA9PT0gIiEiKSB7CiAgICBzdGF0ZS50YWcgPSAiISIgKyB0YWdOYW1lOwogIH0gZWxzZSBpZiAodGFnSGFuZGxlID09PSAiISEiKSB7CiAgICBzdGF0ZS50YWcgPSAidGFnOnlhbWwub3JnLDIwMDI6IiArIHRhZ05hbWU7CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmRlY2xhcmVkIHRhZyBoYW5kbGUgIicgKyB0YWdIYW5kbGUgKyAnIicpOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiByZWFkQW5jaG9yUHJvcGVydHkoc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzgpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgYW4gYW5jaG9yIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYW5jaG9yIG5vZGUgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIiKTsKICB9CiAgc3RhdGUuYW5jaG9yID0gc3RhdGUuaW5wdXQuc2xpY2UoX3Bvc2l0aW9uLCBzdGF0ZS5wb3NpdGlvbik7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gcmVhZEFsaWFzKHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgYWxpYXMsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSA0MikgcmV0dXJuIGZhbHNlOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYWxpYXMgbm9kZSBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIGNoYXJhY3RlciIpOwogIH0KICBhbGlhcyA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS5hbmNob3JNYXAsIGFsaWFzKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3VuaWRlbnRpZmllZCBhbGlhcyAiJyArIGFsaWFzICsgJyInKTsKICB9CiAgc3RhdGUucmVzdWx0ID0gc3RhdGUuYW5jaG9yTWFwW2FsaWFzXTsKICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gY29tcG9zZU5vZGUoc3RhdGUsIHBhcmVudEluZGVudCwgbm9kZUNvbnRleHQsIGFsbG93VG9TZWVrLCBhbGxvd0NvbXBhY3QpIHsKICB2YXIgYWxsb3dCbG9ja1N0eWxlcywgYWxsb3dCbG9ja1NjYWxhcnMsIGFsbG93QmxvY2tDb2xsZWN0aW9ucywgaW5kZW50U3RhdHVzID0gMSwgYXROZXdMaW5lID0gZmFsc2UsIGhhc0NvbnRlbnQgPSBmYWxzZSwgdHlwZUluZGV4LCB0eXBlUXVhbnRpdHksIHR5cGVMaXN0LCB0eXBlMiwgZmxvd0luZGVudCwgYmxvY2tJbmRlbnQ7CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigib3BlbiIsIHN0YXRlKTsKICB9CiAgc3RhdGUudGFnID0gbnVsbDsKICBzdGF0ZS5hbmNob3IgPSBudWxsOwogIHN0YXRlLmtpbmQgPSBudWxsOwogIHN0YXRlLnJlc3VsdCA9IG51bGw7CiAgYWxsb3dCbG9ja1N0eWxlcyA9IGFsbG93QmxvY2tTY2FsYXJzID0gYWxsb3dCbG9ja0NvbGxlY3Rpb25zID0gQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0IHx8IENPTlRFWFRfQkxPQ0tfSU4gPT09IG5vZGVDb250ZXh0OwogIGlmIChhbGxvd1RvU2VlaykgewogICAgaWYgKHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKSkgewogICAgICBhdE5ld0xpbmUgPSB0cnVlOwogICAgICBpZiAoc3RhdGUubGluZUluZGVudCA+IHBhcmVudEluZGVudCkgewogICAgICAgIGluZGVudFN0YXR1cyA9IDE7CiAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gMDsKICAgICAgfSBlbHNlIGlmIChzdGF0ZS5saW5lSW5kZW50IDwgcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgd2hpbGUgKHJlYWRUYWdQcm9wZXJ0eShzdGF0ZSkgfHwgcmVhZEFuY2hvclByb3BlcnR5KHN0YXRlKSkgewogICAgICBpZiAoc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpKSB7CiAgICAgICAgYXROZXdMaW5lID0gdHJ1ZTsKICAgICAgICBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgPSBhbGxvd0Jsb2NrU3R5bGVzOwogICAgICAgIGlmIChzdGF0ZS5saW5lSW5kZW50ID4gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAxOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAwOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA8IHBhcmVudEluZGVudCkgewogICAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGZhbHNlOwogICAgICB9CiAgICB9CiAgfQogIGlmIChhbGxvd0Jsb2NrQ29sbGVjdGlvbnMpIHsKICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGF0TmV3TGluZSB8fCBhbGxvd0NvbXBhY3Q7CiAgfQogIGlmIChpbmRlbnRTdGF0dXMgPT09IDEgfHwgQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0KSB7CiAgICBpZiAoQ09OVEVYVF9GTE9XX0lOID09PSBub2RlQ29udGV4dCB8fCBDT05URVhUX0ZMT1dfT1VUID09PSBub2RlQ29udGV4dCkgewogICAgICBmbG93SW5kZW50ID0gcGFyZW50SW5kZW50OwogICAgfSBlbHNlIHsKICAgICAgZmxvd0luZGVudCA9IHBhcmVudEluZGVudCArIDE7CiAgICB9CiAgICBibG9ja0luZGVudCA9IHN0YXRlLnBvc2l0aW9uIC0gc3RhdGUubGluZVN0YXJ0OwogICAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgICBpZiAoYWxsb3dCbG9ja0NvbGxlY3Rpb25zICYmIChyZWFkQmxvY2tTZXF1ZW5jZShzdGF0ZSwgYmxvY2tJbmRlbnQpIHx8IHJlYWRCbG9ja01hcHBpbmcoc3RhdGUsIGJsb2NrSW5kZW50LCBmbG93SW5kZW50KSkgfHwgcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBmbG93SW5kZW50KSkgewogICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChhbGxvd0Jsb2NrU2NhbGFycyAmJiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWREb3VibGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICB9IGVsc2UgaWYgKHJlYWRBbGlhcyhzdGF0ZSkpIHsKICAgICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICAgICAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCB8fCBzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImFsaWFzIG5vZGUgc2hvdWxkIG5vdCBoYXZlIGFueSBwcm9wZXJ0aWVzIik7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChyZWFkUGxhaW5TY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQsIENPTlRFWFRfRkxPV19JTiA9PT0gbm9kZUNvbnRleHQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICAgIGlmIChzdGF0ZS50YWcgPT09IG51bGwpIHsKICAgICAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoaW5kZW50U3RhdHVzID09PSAwKSB7CiAgICAgIGhhc0NvbnRlbnQgPSBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgJiYgcmVhZEJsb2NrU2VxdWVuY2Uoc3RhdGUsIGJsb2NrSW5kZW50KTsKICAgIH0KICB9CiAgaWYgKHN0YXRlLnRhZyA9PT0gbnVsbCkgewogICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgIH0KICB9IGVsc2UgaWYgKHN0YXRlLnRhZyA9PT0gIj8iKSB7CiAgICBpZiAoc3RhdGUucmVzdWx0ICE9PSBudWxsICYmIHN0YXRlLmtpbmQgIT09ICJzY2FsYXIiKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmFjY2VwdGFibGUgbm9kZSBraW5kIGZvciAhPD8+IHRhZzsgaXQgc2hvdWxkIGJlICJzY2FsYXIiLCBub3QgIicgKyBzdGF0ZS5raW5kICsgJyInKTsKICAgIH0KICAgIGZvciAodHlwZUluZGV4ID0gMCwgdHlwZVF1YW50aXR5ID0gc3RhdGUuaW1wbGljaXRUeXBlcy5sZW5ndGg7IHR5cGVJbmRleCA8IHR5cGVRdWFudGl0eTsgdHlwZUluZGV4ICs9IDEpIHsKICAgICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW3R5cGVJbmRleF07CiAgICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCkpIHsKICAgICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0KTsKICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi50YWc7CiAgICAgICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwogICAgICB9CiAgICB9CiAgfSBlbHNlIGlmIChzdGF0ZS50YWcgIT09ICIhIikgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQxLmNhbGwoc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdLCBzdGF0ZS50YWcpKSB7CiAgICAgIHR5cGUyID0gc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdW3N0YXRlLnRhZ107CiAgICB9IGVsc2UgewogICAgICB0eXBlMiA9IG51bGw7CiAgICAgIHR5cGVMaXN0ID0gc3RhdGUudHlwZU1hcC5tdWx0aVtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdOwogICAgICBmb3IgKHR5cGVJbmRleCA9IDAsIHR5cGVRdWFudGl0eSA9IHR5cGVMaXN0Lmxlbmd0aDsgdHlwZUluZGV4IDwgdHlwZVF1YW50aXR5OyB0eXBlSW5kZXggKz0gMSkgewogICAgICAgIGlmIChzdGF0ZS50YWcuc2xpY2UoMCwgdHlwZUxpc3RbdHlwZUluZGV4XS50YWcubGVuZ3RoKSA9PT0gdHlwZUxpc3RbdHlwZUluZGV4XS50YWcpIHsKICAgICAgICAgIHR5cGUyID0gdHlwZUxpc3RbdHlwZUluZGV4XTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgaWYgKCF0eXBlMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5rbm93biB0YWcgITwiICsgc3RhdGUudGFnICsgIj4iKTsKICAgIH0KICAgIGlmIChzdGF0ZS5yZXN1bHQgIT09IG51bGwgJiYgdHlwZTIua2luZCAhPT0gc3RhdGUua2luZCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5hY2NlcHRhYmxlIG5vZGUga2luZCBmb3IgITwiICsgc3RhdGUudGFnICsgJz4gdGFnOyBpdCBzaG91bGQgYmUgIicgKyB0eXBlMi5raW5kICsgJyIsIG5vdCAiJyArIHN0YXRlLmtpbmQgKyAnIicpOwogICAgfQogICAgaWYgKCF0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCwgc3RhdGUudGFnKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiY2Fubm90IHJlc29sdmUgYSBub2RlIHdpdGggITwiICsgc3RhdGUudGFnICsgIj4gZXhwbGljaXQgdGFnIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0LCBzdGF0ZS50YWcpOwogICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigiY2xvc2UiLCBzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS50YWcgIT09IG51bGwgfHwgc3RhdGUuYW5jaG9yICE9PSBudWxsIHx8IGhhc0NvbnRlbnQ7Cn0KZnVuY3Rpb24gcmVhZERvY3VtZW50KHN0YXRlKSB7CiAgdmFyIGRvY3VtZW50U3RhcnQgPSBzdGF0ZS5wb3NpdGlvbiwgX3Bvc2l0aW9uLCBkaXJlY3RpdmVOYW1lLCBkaXJlY3RpdmVBcmdzLCBoYXNEaXJlY3RpdmVzID0gZmFsc2UsIGNoOwogIHN0YXRlLnZlcnNpb24gPSBudWxsOwogIHN0YXRlLmNoZWNrTGluZUJyZWFrcyA9IHN0YXRlLmxlZ2FjeTsKICBzdGF0ZS50YWdNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICBzdGF0ZS5hbmNob3JNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICB3aGlsZSAoKGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikpICE9PSAwKSB7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPiAwIHx8IGNoICE9PSAzNykgewogICAgICBicmVhazsKICAgIH0KICAgIGhhc0RpcmVjdGl2ZXMgPSB0cnVlOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb247CiAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgZGlyZWN0aXZlTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgZGlyZWN0aXZlQXJncyA9IFtdOwogICAgaWYgKGRpcmVjdGl2ZU5hbWUubGVuZ3RoIDwgMSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlIG5hbWUgbXVzdCBub3QgYmUgbGVzcyB0aGFuIG9uZSBjaGFyYWN0ZXIgaW4gbGVuZ3RoIik7CiAgICB9CiAgICB3aGlsZSAoY2ggIT09IDApIHsKICAgICAgd2hpbGUgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgICBpZiAoY2ggPT09IDM1KSB7CiAgICAgICAgZG8gewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgIH0gd2hpbGUgKGNoICE9PSAwICYmICFpc19FT0woY2gpKTsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoaXNfRU9MKGNoKSkgYnJlYWs7CiAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIH0KICAgICAgZGlyZWN0aXZlQXJncy5wdXNoKHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pKTsKICAgIH0KICAgIGlmIChjaCAhPT0gMCkgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChkaXJlY3RpdmVIYW5kbGVycywgZGlyZWN0aXZlTmFtZSkpIHsKICAgICAgZGlyZWN0aXZlSGFuZGxlcnNbZGlyZWN0aXZlTmFtZV0oc3RhdGUsIGRpcmVjdGl2ZU5hbWUsIGRpcmVjdGl2ZUFyZ3MpOwogICAgfSBlbHNlIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAndW5rbm93biBkb2N1bWVudCBkaXJlY3RpdmUgIicgKyBkaXJlY3RpdmVOYW1lICsgJyInKTsKICAgIH0KICB9CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5saW5lSW5kZW50ID09PSAwICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pID09PSA0NSAmJiBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSkgPT09IDQ1ICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAyKSA9PT0gNDUpIHsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgfSBlbHNlIGlmIChoYXNEaXJlY3RpdmVzKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlcyBlbmQgbWFyayBpcyBleHBlY3RlZCIpOwogIH0KICBjb21wb3NlTm9kZShzdGF0ZSwgc3RhdGUubGluZUluZGVudCAtIDEsIENPTlRFWFRfQkxPQ0tfT1VULCBmYWxzZSwgdHJ1ZSk7CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5jaGVja0xpbmVCcmVha3MgJiYgUEFUVEVSTl9OT05fQVNDSUlfTElORV9CUkVBS1MudGVzdChzdGF0ZS5pbnB1dC5zbGljZShkb2N1bWVudFN0YXJ0LCBzdGF0ZS5wb3NpdGlvbikpKSB7CiAgICB0aHJvd1dhcm5pbmcoc3RhdGUsICJub24tQVNDSUkgbGluZSBicmVha3MgYXJlIGludGVycHJldGVkIGFzIGNvbnRlbnQiKTsKICB9CiAgc3RhdGUuZG9jdW1lbnRzLnB1c2goc3RhdGUucmVzdWx0KTsKICBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpKSB7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDQ2KSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgIH0KICAgIHJldHVybjsKICB9CiAgaWYgKHN0YXRlLnBvc2l0aW9uIDwgc3RhdGUubGVuZ3RoIC0gMSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImVuZCBvZiB0aGUgc3RyZWFtIG9yIGEgZG9jdW1lbnQgc2VwYXJhdG9yIGlzIGV4cGVjdGVkIik7CiAgfSBlbHNlIHsKICAgIHJldHVybjsKICB9Cn0KZnVuY3Rpb24gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucykgewogIGlucHV0ID0gU3RyaW5nKGlucHV0KTsKICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICBpZiAoaW5wdXQubGVuZ3RoICE9PSAwKSB7CiAgICBpZiAoaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTAgJiYgaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTMpIHsKICAgICAgaW5wdXQgKz0gIlxuIjsKICAgIH0KICAgIGlmIChpbnB1dC5jaGFyQ29kZUF0KDApID09PSA2NTI3OSkgewogICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKDEpOwogICAgfQogIH0KICB2YXIgc3RhdGUgPSBuZXcgU3RhdGUkMShpbnB1dCwgb3B0aW9ucyk7CiAgdmFyIG51bGxwb3MgPSBpbnB1dC5pbmRleE9mKCJcMCIpOwogIGlmIChudWxscG9zICE9PSAtMSkgewogICAgc3RhdGUucG9zaXRpb24gPSBudWxscG9zOwogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm51bGwgYnl0ZSBpcyBub3QgYWxsb3dlZCBpbiBpbnB1dCIpOwogIH0KICBzdGF0ZS5pbnB1dCArPSAiXDAiOwogIHdoaWxlIChzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSA9PT0gMzIpIHsKICAgIHN0YXRlLmxpbmVJbmRlbnQgKz0gMTsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDE7CiAgfQogIHdoaWxlIChzdGF0ZS5wb3NpdGlvbiA8IHN0YXRlLmxlbmd0aCAtIDEpIHsKICAgIHJlYWREb2N1bWVudChzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS5kb2N1bWVudHM7Cn0KZnVuY3Rpb24gbG9hZEFsbCQxKGlucHV0LCBpdGVyYXRvciwgb3B0aW9ucykgewogIGlmIChpdGVyYXRvciAhPT0gbnVsbCAmJiB0eXBlb2YgaXRlcmF0b3IgPT09ICJvYmplY3QiICYmIHR5cGVvZiBvcHRpb25zID09PSAidW5kZWZpbmVkIikgewogICAgb3B0aW9ucyA9IGl0ZXJhdG9yOwogICAgaXRlcmF0b3IgPSBudWxsOwogIH0KICB2YXIgZG9jdW1lbnRzID0gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucyk7CiAgaWYgKHR5cGVvZiBpdGVyYXRvciAhPT0gImZ1bmN0aW9uIikgewogICAgcmV0dXJuIGRvY3VtZW50czsKICB9CiAgZm9yICh2YXIgaW5kZXggPSAwLCBsZW5ndGggPSBkb2N1bWVudHMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgaXRlcmF0b3IoZG9jdW1lbnRzW2luZGV4XSk7CiAgfQp9CmZ1bmN0aW9uIGxvYWQkMShpbnB1dCwgb3B0aW9ucykgewogIHZhciBkb2N1bWVudHMgPSBsb2FkRG9jdW1lbnRzKGlucHV0LCBvcHRpb25zKTsKICBpZiAoZG9jdW1lbnRzLmxlbmd0aCA9PT0gMCkgewogICAgcmV0dXJuIHZvaWQgMDsKICB9IGVsc2UgaWYgKGRvY3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgIHJldHVybiBkb2N1bWVudHNbMF07CiAgfQogIHRocm93IG5ldyBleGNlcHRpb24oImV4cGVjdGVkIGEgc2luZ2xlIGRvY3VtZW50IGluIHRoZSBzdHJlYW0sIGJ1dCBmb3VuZCBtb3JlIik7Cn0KdmFyIGxvYWRBbGxfMSA9IGxvYWRBbGwkMTsKdmFyIGxvYWRfMSA9IGxvYWQkMTsKdmFyIGxvYWRlciA9IHsKICBsb2FkQWxsOiBsb2FkQWxsXzEsCiAgbG9hZDogbG9hZF8xCn07CnZhciBfdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp2YXIgX2hhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENIQVJfQk9NID0gNjUyNzk7CnZhciBDSEFSX1RBQiA9IDk7CnZhciBDSEFSX0xJTkVfRkVFRCA9IDEwOwp2YXIgQ0hBUl9DQVJSSUFHRV9SRVRVUk4gPSAxMzsKdmFyIENIQVJfU1BBQ0UgPSAzMjsKdmFyIENIQVJfRVhDTEFNQVRJT04gPSAzMzsKdmFyIENIQVJfRE9VQkxFX1FVT1RFID0gMzQ7CnZhciBDSEFSX1NIQVJQID0gMzU7CnZhciBDSEFSX1BFUkNFTlQgPSAzNzsKdmFyIENIQVJfQU1QRVJTQU5EID0gMzg7CnZhciBDSEFSX1NJTkdMRV9RVU9URSA9IDM5Owp2YXIgQ0hBUl9BU1RFUklTSyA9IDQyOwp2YXIgQ0hBUl9DT01NQSA9IDQ0Owp2YXIgQ0hBUl9NSU5VUyA9IDQ1Owp2YXIgQ0hBUl9DT0xPTiA9IDU4Owp2YXIgQ0hBUl9FUVVBTFMgPSA2MTsKdmFyIENIQVJfR1JFQVRFUl9USEFOID0gNjI7CnZhciBDSEFSX1FVRVNUSU9OID0gNjM7CnZhciBDSEFSX0NPTU1FUkNJQUxfQVQgPSA2NDsKdmFyIENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVCA9IDkxOwp2YXIgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCA9IDkzOwp2YXIgQ0hBUl9HUkFWRV9BQ0NFTlQgPSA5NjsKdmFyIENIQVJfTEVGVF9DVVJMWV9CUkFDS0VUID0gMTIzOwp2YXIgQ0hBUl9WRVJUSUNBTF9MSU5FID0gMTI0Owp2YXIgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDS0VUID0gMTI1Owp2YXIgRVNDQVBFX1NFUVVFTkNFUyA9IHt9OwpFU0NBUEVfU0VRVUVOQ0VTWzBdID0gIlxcMCI7CkVTQ0FQRV9TRVFVRU5DRVNbN10gPSAiXFxhIjsKRVNDQVBFX1NFUVVFTkNFU1s4XSA9ICJcXGIiOwpFU0NBUEVfU0VRVUVOQ0VTWzldID0gIlxcdCI7CkVTQ0FQRV9TRVFVRU5DRVNbMTBdID0gIlxcbiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTFdID0gIlxcdiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTJdID0gIlxcZiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTNdID0gIlxcciI7CkVTQ0FQRV9TRVFVRU5DRVNbMjddID0gIlxcZSI7CkVTQ0FQRV9TRVFVRU5DRVNbMzRdID0gJ1xcIic7CkVTQ0FQRV9TRVFVRU5DRVNbOTJdID0gIlxcXFwiOwpFU0NBUEVfU0VRVUVOQ0VTWzEzM10gPSAiXFxOIjsKRVNDQVBFX1NFUVVFTkNFU1sxNjBdID0gIlxcXyI7CkVTQ0FQRV9TRVFVRU5DRVNbODIzMl0gPSAiXFxMIjsKRVNDQVBFX1NFUVVFTkNFU1s4MjMzXSA9ICJcXFAiOwp2YXIgREVQUkVDQVRFRF9CT09MRUFOU19TWU5UQVggPSBbCiAgInkiLAogICJZIiwKICAieWVzIiwKICAiWWVzIiwKICAiWUVTIiwKICAib24iLAogICJPbiIsCiAgIk9OIiwKICAibiIsCiAgIk4iLAogICJubyIsCiAgIk5vIiwKICAiTk8iLAogICJvZmYiLAogICJPZmYiLAogICJPRkYiCl07CnZhciBERVBSRUNBVEVEX0JBU0U2MF9TWU5UQVggPSAvXlstK10/WzAtOV9dKyg/OjpbMC05X10rKSsoPzpcLlswLTlfXSopPyQvOwpmdW5jdGlvbiBjb21waWxlU3R5bGVNYXAoc2NoZW1hMiwgbWFwMikgewogIHZhciByZXN1bHQsIGtleXMsIGluZGV4LCBsZW5ndGgsIHRhZywgc3R5bGUsIHR5cGUyOwogIGlmIChtYXAyID09PSBudWxsKSByZXR1cm4ge307CiAgcmVzdWx0ID0ge307CiAga2V5cyA9IE9iamVjdC5rZXlzKG1hcDIpOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBrZXlzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHRhZyA9IGtleXNbaW5kZXhdOwogICAgc3R5bGUgPSBTdHJpbmcobWFwMlt0YWddKTsKICAgIGlmICh0YWcuc2xpY2UoMCwgMikgPT09ICIhISIpIHsKICAgICAgdGFnID0gInRhZzp5YW1sLm9yZywyMDAyOiIgKyB0YWcuc2xpY2UoMik7CiAgICB9CiAgICB0eXBlMiA9IHNjaGVtYTIuY29tcGlsZWRUeXBlTWFwWyJmYWxsYmFjayJdW3RhZ107CiAgICBpZiAodHlwZTIgJiYgX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIuc3R5bGVBbGlhc2VzLCBzdHlsZSkpIHsKICAgICAgc3R5bGUgPSB0eXBlMi5zdHlsZUFsaWFzZXNbc3R5bGVdOwogICAgfQogICAgcmVzdWx0W3RhZ10gPSBzdHlsZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBlbmNvZGVIZXgoY2hhcmFjdGVyKSB7CiAgdmFyIHN0cmluZywgaGFuZGxlLCBsZW5ndGg7CiAgc3RyaW5nID0gY2hhcmFjdGVyLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpOwogIGlmIChjaGFyYWN0ZXIgPD0gMjU1KSB7CiAgICBoYW5kbGUgPSAieCI7CiAgICBsZW5ndGggPSAyOwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDY1NTM1KSB7CiAgICBoYW5kbGUgPSAidSI7CiAgICBsZW5ndGggPSA0OwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDQyOTQ5NjcyOTUpIHsKICAgIGhhbmRsZSA9ICJVIjsKICAgIGxlbmd0aCA9IDg7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oImNvZGUgcG9pbnQgd2l0aGluIGEgc3RyaW5nIG1heSBub3QgYmUgZ3JlYXRlciB0aGFuIDB4RkZGRkZGRkYiKTsKICB9CiAgcmV0dXJuICJcXCIgKyBoYW5kbGUgKyBjb21tb24ucmVwZWF0KCIwIiwgbGVuZ3RoIC0gc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7Cn0KdmFyIFFVT1RJTkdfVFlQRV9TSU5HTEUgPSAxOwp2YXIgUVVPVElOR19UWVBFX0RPVUJMRSA9IDI7CmZ1bmN0aW9uIFN0YXRlKG9wdGlvbnMpIHsKICB0aGlzLnNjaGVtYSA9IG9wdGlvbnNbInNjaGVtYSJdIHx8IF9kZWZhdWx0OwogIHRoaXMuaW5kZW50ID0gTWF0aC5tYXgoMSwgb3B0aW9uc1siaW5kZW50Il0gfHwgMik7CiAgdGhpcy5ub0FycmF5SW5kZW50ID0gb3B0aW9uc1sibm9BcnJheUluZGVudCJdIHx8IGZhbHNlOwogIHRoaXMuc2tpcEludmFsaWQgPSBvcHRpb25zWyJza2lwSW52YWxpZCJdIHx8IGZhbHNlOwogIHRoaXMuZmxvd0xldmVsID0gY29tbW9uLmlzTm90aGluZyhvcHRpb25zWyJmbG93TGV2ZWwiXSkgPyAtMSA6IG9wdGlvbnNbImZsb3dMZXZlbCJdOwogIHRoaXMuc3R5bGVNYXAgPSBjb21waWxlU3R5bGVNYXAodGhpcy5zY2hlbWEsIG9wdGlvbnNbInN0eWxlcyJdIHx8IG51bGwpOwogIHRoaXMuc29ydEtleXMgPSBvcHRpb25zWyJzb3J0S2V5cyJdIHx8IGZhbHNlOwogIHRoaXMubGluZVdpZHRoID0gb3B0aW9uc1sibGluZVdpZHRoIl0gfHwgODA7CiAgdGhpcy5ub1JlZnMgPSBvcHRpb25zWyJub1JlZnMiXSB8fCBmYWxzZTsKICB0aGlzLm5vQ29tcGF0TW9kZSA9IG9wdGlvbnNbIm5vQ29tcGF0TW9kZSJdIHx8IGZhbHNlOwogIHRoaXMuY29uZGVuc2VGbG93ID0gb3B0aW9uc1siY29uZGVuc2VGbG93Il0gfHwgZmFsc2U7CiAgdGhpcy5xdW90aW5nVHlwZSA9IG9wdGlvbnNbInF1b3RpbmdUeXBlIl0gPT09ICciJyA/IFFVT1RJTkdfVFlQRV9ET1VCTEUgOiBRVU9USU5HX1RZUEVfU0lOR0xFOwogIHRoaXMuZm9yY2VRdW90ZXMgPSBvcHRpb25zWyJmb3JjZVF1b3RlcyJdIHx8IGZhbHNlOwogIHRoaXMucmVwbGFjZXIgPSB0eXBlb2Ygb3B0aW9uc1sicmVwbGFjZXIiXSA9PT0gImZ1bmN0aW9uIiA/IG9wdGlvbnNbInJlcGxhY2VyIl0gOiBudWxsOwogIHRoaXMuaW1wbGljaXRUeXBlcyA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkSW1wbGljaXQ7CiAgdGhpcy5leHBsaWNpdFR5cGVzID0gdGhpcy5zY2hlbWEuY29tcGlsZWRFeHBsaWNpdDsKICB0aGlzLnRhZyA9IG51bGw7CiAgdGhpcy5yZXN1bHQgPSAiIjsKICB0aGlzLmR1cGxpY2F0ZXMgPSBbXTsKICB0aGlzLnVzZWREdXBsaWNhdGVzID0gbnVsbDsKfQpmdW5jdGlvbiBpbmRlbnRTdHJpbmcoc3RyaW5nLCBzcGFjZXMpIHsKICB2YXIgaW5kID0gY29tbW9uLnJlcGVhdCgiICIsIHNwYWNlcyksIHBvc2l0aW9uID0gMCwgbmV4dCA9IC0xLCByZXN1bHQgPSAiIiwgbGluZSwgbGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICB3aGlsZSAocG9zaXRpb24gPCBsZW5ndGgpIHsKICAgIG5leHQgPSBzdHJpbmcuaW5kZXhPZigiXG4iLCBwb3NpdGlvbik7CiAgICBpZiAobmV4dCA9PT0gLTEpIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbik7CiAgICAgIHBvc2l0aW9uID0gbGVuZ3RoOwogICAgfSBlbHNlIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbiwgbmV4dCArIDEpOwogICAgICBwb3NpdGlvbiA9IG5leHQgKyAxOwogICAgfQogICAgaWYgKGxpbmUubGVuZ3RoICYmIGxpbmUgIT09ICJcbiIpIHJlc3VsdCArPSBpbmQ7CiAgICByZXN1bHQgKz0gbGluZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCkgewogIHJldHVybiAiXG4iICsgY29tbW9uLnJlcGVhdCgiICIsIHN0YXRlLmluZGVudCAqIGxldmVsKTsKfQpmdW5jdGlvbiB0ZXN0SW1wbGljaXRSZXNvbHZpbmcoc3RhdGUsIHN0cjIpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwgdHlwZTI7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHN0YXRlLmltcGxpY2l0VHlwZXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW2luZGV4XTsKICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0cjIpKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gaXNXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gYyA9PT0gQ0hBUl9TUEFDRSB8fCBjID09PSBDSEFSX1RBQjsKfQpmdW5jdGlvbiBpc1ByaW50YWJsZShjKSB7CiAgcmV0dXJuIDMyIDw9IGMgJiYgYyA8PSAxMjYgfHwgMTYxIDw9IGMgJiYgYyA8PSA1NTI5NSAmJiBjICE9PSA4MjMyICYmIGMgIT09IDgyMzMgfHwgNTczNDQgPD0gYyAmJiBjIDw9IDY1NTMzICYmIGMgIT09IENIQVJfQk9NIHx8IDY1NTM2IDw9IGMgJiYgYyA8PSAxMTE0MTExOwp9CmZ1bmN0aW9uIGlzTnNDaGFyT3JXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gaXNQcmludGFibGUoYykgJiYgYyAhPT0gQ0hBUl9CT00gJiYgYyAhPT0gQ0hBUl9DQVJSSUFHRV9SRVRVUk4gJiYgYyAhPT0gQ0hBUl9MSU5FX0ZFRUQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmUoYywgcHJldiwgaW5ibG9jaykgewogIHZhciBjSXNOc0NoYXJPcldoaXRlc3BhY2UgPSBpc05zQ2hhck9yV2hpdGVzcGFjZShjKTsKICB2YXIgY0lzTnNDaGFyID0gY0lzTnNDaGFyT3JXaGl0ZXNwYWNlICYmICFpc1doaXRlc3BhY2UoYyk7CiAgcmV0dXJuICgKICAgIC8vIG5zLXBsYWluLXNhZmUKICAgIChpbmJsb2NrID8gKAogICAgICAvLyBjID0gZmxvdy1pbgogICAgICBjSXNOc0NoYXJPcldoaXRlc3BhY2UKICAgICkgOiBjSXNOc0NoYXJPcldoaXRlc3BhY2UgJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQpICYmIGMgIT09IENIQVJfU0hBUlAgJiYgIShwcmV2ID09PSBDSEFSX0NPTE9OICYmICFjSXNOc0NoYXIpIHx8IGlzTnNDaGFyT3JXaGl0ZXNwYWNlKHByZXYpICYmICFpc1doaXRlc3BhY2UocHJldikgJiYgYyA9PT0gQ0hBUl9TSEFSUCB8fCBwcmV2ID09PSBDSEFSX0NPTE9OICYmIGNJc05zQ2hhcgogICk7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVGaXJzdChjKSB7CiAgcmV0dXJuIGlzUHJpbnRhYmxlKGMpICYmIGMgIT09IENIQVJfQk9NICYmICFpc1doaXRlc3BhY2UoYykgJiYgYyAhPT0gQ0hBUl9NSU5VUyAmJiBjICE9PSBDSEFSX1FVRVNUSU9OICYmIGMgIT09IENIQVJfQ09MT04gJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9TSEFSUCAmJiBjICE9PSBDSEFSX0FNUEVSU0FORCAmJiBjICE9PSBDSEFSX0FTVEVSSVNLICYmIGMgIT09IENIQVJfRVhDTEFNQVRJT04gJiYgYyAhPT0gQ0hBUl9WRVJUSUNBTF9MSU5FICYmIGMgIT09IENIQVJfRVFVQUxTICYmIGMgIT09IENIQVJfR1JFQVRFUl9USEFOICYmIGMgIT09IENIQVJfU0lOR0xFX1FVT1RFICYmIGMgIT09IENIQVJfRE9VQkxFX1FVT1RFICYmIGMgIT09IENIQVJfUEVSQ0VOVCAmJiBjICE9PSBDSEFSX0NPTU1FUkNJQUxfQVQgJiYgYyAhPT0gQ0hBUl9HUkFWRV9BQ0NFTlQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVMYXN0KGMpIHsKICByZXR1cm4gIWlzV2hpdGVzcGFjZShjKSAmJiBjICE9PSBDSEFSX0NPTE9OOwp9CmZ1bmN0aW9uIGNvZGVQb2ludEF0KHN0cmluZywgcG9zKSB7CiAgdmFyIGZpcnN0ID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zKSwgc2Vjb25kOwogIGlmIChmaXJzdCA+PSA1NTI5NiAmJiBmaXJzdCA8PSA1NjMxOSAmJiBwb3MgKyAxIDwgc3RyaW5nLmxlbmd0aCkgewogICAgc2Vjb25kID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zICsgMSk7CiAgICBpZiAoc2Vjb25kID49IDU2MzIwICYmIHNlY29uZCA8PSA1NzM0MykgewogICAgICByZXR1cm4gKGZpcnN0IC0gNTUyOTYpICogMTAyNCArIHNlY29uZCAtIDU2MzIwICsgNjU1MzY7CiAgICB9CiAgfQogIHJldHVybiBmaXJzdDsKfQpmdW5jdGlvbiBuZWVkSW5kZW50SW5kaWNhdG9yKHN0cmluZykgewogIHZhciBsZWFkaW5nU3BhY2VSZSA9IC9eXG4qIC87CiAgcmV0dXJuIGxlYWRpbmdTcGFjZVJlLnRlc3Qoc3RyaW5nKTsKfQp2YXIgU1RZTEVfUExBSU4gPSAxOwp2YXIgU1RZTEVfU0lOR0xFID0gMjsKdmFyIFNUWUxFX0xJVEVSQUwgPSAzOwp2YXIgU1RZTEVfRk9MREVEID0gNDsKdmFyIFNUWUxFX0RPVUJMRSA9IDU7CmZ1bmN0aW9uIGNob29zZVNjYWxhclN0eWxlKHN0cmluZywgc2luZ2xlTGluZU9ubHksIGluZGVudFBlckxldmVsLCBsaW5lV2lkdGgsIHRlc3RBbWJpZ3VvdXNUeXBlLCBxdW90aW5nVHlwZSwgZm9yY2VRdW90ZXMsIGluYmxvY2spIHsKICB2YXIgaTsKICB2YXIgY2hhciA9IDA7CiAgdmFyIHByZXZDaGFyID0gbnVsbDsKICB2YXIgaGFzTGluZUJyZWFrID0gZmFsc2U7CiAgdmFyIGhhc0ZvbGRhYmxlTGluZSA9IGZhbHNlOwogIHZhciBzaG91bGRUcmFja1dpZHRoID0gbGluZVdpZHRoICE9PSAtMTsKICB2YXIgcHJldmlvdXNMaW5lQnJlYWsgPSAtMTsKICB2YXIgcGxhaW4gPSBpc1BsYWluU2FmZUZpcnN0KGNvZGVQb2ludEF0KHN0cmluZywgMCkpICYmIGlzUGxhaW5TYWZlTGFzdChjb2RlUG9pbnRBdChzdHJpbmcsIHN0cmluZy5sZW5ndGggLSAxKSk7CiAgaWYgKHNpbmdsZUxpbmVPbmx5IHx8IGZvcmNlUXVvdGVzKSB7CiAgICBmb3IgKGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgY2hhciA+PSA2NTUzNiA/IGkgKz0gMiA6IGkrKykgewogICAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgICAgaWYgKCFpc1ByaW50YWJsZShjaGFyKSkgewogICAgICAgIHJldHVybiBTVFlMRV9ET1VCTEU7CiAgICAgIH0KICAgICAgcGxhaW4gPSBwbGFpbiAmJiBpc1BsYWluU2FmZShjaGFyLCBwcmV2Q2hhciwgaW5ibG9jayk7CiAgICAgIHByZXZDaGFyID0gY2hhcjsKICAgIH0KICB9IGVsc2UgewogICAgZm9yIChpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGNoYXIgPj0gNjU1MzYgPyBpICs9IDIgOiBpKyspIHsKICAgICAgY2hhciA9IGNvZGVQb2ludEF0KHN0cmluZywgaSk7CiAgICAgIGlmIChjaGFyID09PSBDSEFSX0xJTkVfRkVFRCkgewogICAgICAgIGhhc0xpbmVCcmVhayA9IHRydWU7CiAgICAgICAgaWYgKHNob3VsZFRyYWNrV2lkdGgpIHsKICAgICAgICAgIGhhc0ZvbGRhYmxlTGluZSA9IGhhc0ZvbGRhYmxlTGluZSB8fCAvLyBGb2xkYWJsZSBsaW5lID0gdG9vIGxvbmcsIGFuZCBub3QgbW9yZS1pbmRlbnRlZC4KICAgICAgICAgIGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIjsKICAgICAgICAgIHByZXZpb3VzTGluZUJyZWFrID0gaTsKICAgICAgICB9CiAgICAgIH0gZWxzZSBpZiAoIWlzUHJpbnRhYmxlKGNoYXIpKSB7CiAgICAgICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICAgICAgfQogICAgICBwbGFpbiA9IHBsYWluICYmIGlzUGxhaW5TYWZlKGNoYXIsIHByZXZDaGFyLCBpbmJsb2NrKTsKICAgICAgcHJldkNoYXIgPSBjaGFyOwogICAgfQogICAgaGFzRm9sZGFibGVMaW5lID0gaGFzRm9sZGFibGVMaW5lIHx8IHNob3VsZFRyYWNrV2lkdGggJiYgKGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIik7CiAgfQogIGlmICghaGFzTGluZUJyZWFrICYmICFoYXNGb2xkYWJsZUxpbmUpIHsKICAgIGlmIChwbGFpbiAmJiAhZm9yY2VRdW90ZXMgJiYgIXRlc3RBbWJpZ3VvdXNUeXBlKHN0cmluZykpIHsKICAgICAgcmV0dXJuIFNUWUxFX1BMQUlOOwogICAgfQogICAgcmV0dXJuIHF1b3RpbmdUeXBlID09PSBRVU9USU5HX1RZUEVfRE9VQkxFID8gU1RZTEVfRE9VQkxFIDogU1RZTEVfU0lOR0xFOwogIH0KICBpZiAoaW5kZW50UGVyTGV2ZWwgPiA5ICYmIG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSkgewogICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICB9CiAgaWYgKCFmb3JjZVF1b3RlcykgewogICAgcmV0dXJuIGhhc0ZvbGRhYmxlTGluZSA/IFNUWUxFX0ZPTERFRCA6IFNUWUxFX0xJVEVSQUw7CiAgfQogIHJldHVybiBxdW90aW5nVHlwZSA9PT0gUVVPVElOR19UWVBFX0RPVUJMRSA/IFNUWUxFX0RPVUJMRSA6IFNUWUxFX1NJTkdMRTsKfQpmdW5jdGlvbiB3cml0ZVNjYWxhcihzdGF0ZSwgc3RyaW5nLCBsZXZlbCwgaXNrZXksIGluYmxvY2spIHsKICBzdGF0ZS5kdW1wID0gZnVuY3Rpb24oKSB7CiAgICBpZiAoc3RyaW5nLmxlbmd0aCA9PT0gMCkgewogICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIiInIDogIicnIjsKICAgIH0KICAgIGlmICghc3RhdGUubm9Db21wYXRNb2RlKSB7CiAgICAgIGlmIChERVBSRUNBVEVEX0JPT0xFQU5TX1NZTlRBWC5pbmRleE9mKHN0cmluZykgIT09IC0xIHx8IERFUFJFQ0FURURfQkFTRTYwX1NZTlRBWC50ZXN0KHN0cmluZykpIHsKICAgICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIicgKyBzdHJpbmcgKyAnIicgOiAiJyIgKyBzdHJpbmcgKyAiJyI7CiAgICAgIH0KICAgIH0KICAgIHZhciBpbmRlbnQgPSBzdGF0ZS5pbmRlbnQgKiBNYXRoLm1heCgxLCBsZXZlbCk7CiAgICB2YXIgbGluZVdpZHRoID0gc3RhdGUubGluZVdpZHRoID09PSAtMSA/IC0xIDogTWF0aC5tYXgoTWF0aC5taW4oc3RhdGUubGluZVdpZHRoLCA0MCksIHN0YXRlLmxpbmVXaWR0aCAtIGluZGVudCk7CiAgICB2YXIgc2luZ2xlTGluZU9ubHkgPSBpc2tleSB8fCBzdGF0ZS5mbG93TGV2ZWwgPiAtMSAmJiBsZXZlbCA+PSBzdGF0ZS5mbG93TGV2ZWw7CiAgICBmdW5jdGlvbiB0ZXN0QW1iaWd1aXR5KHN0cmluZzIpIHsKICAgICAgcmV0dXJuIHRlc3RJbXBsaWNpdFJlc29sdmluZyhzdGF0ZSwgc3RyaW5nMik7CiAgICB9CiAgICBzd2l0Y2ggKGNob29zZVNjYWxhclN0eWxlKAogICAgICBzdHJpbmcsCiAgICAgIHNpbmdsZUxpbmVPbmx5LAogICAgICBzdGF0ZS5pbmRlbnQsCiAgICAgIGxpbmVXaWR0aCwKICAgICAgdGVzdEFtYmlndWl0eSwKICAgICAgc3RhdGUucXVvdGluZ1R5cGUsCiAgICAgIHN0YXRlLmZvcmNlUXVvdGVzICYmICFpc2tleSwKICAgICAgaW5ibG9jawogICAgKSkgewogICAgICBjYXNlIFNUWUxFX1BMQUlOOgogICAgICAgIHJldHVybiBzdHJpbmc7CiAgICAgIGNhc2UgU1RZTEVfU0lOR0xFOgogICAgICAgIHJldHVybiAiJyIgKyBzdHJpbmcucmVwbGFjZSgvJy9nLCAiJyciKSArICInIjsKICAgICAgY2FzZSBTVFlMRV9MSVRFUkFMOgogICAgICAgIHJldHVybiAifCIgKyBibG9ja0hlYWRlcihzdHJpbmcsIHN0YXRlLmluZGVudCkgKyBkcm9wRW5kaW5nTmV3bGluZShpbmRlbnRTdHJpbmcoc3RyaW5nLCBpbmRlbnQpKTsKICAgICAgY2FzZSBTVFlMRV9GT0xERUQ6CiAgICAgICAgcmV0dXJuICI+IiArIGJsb2NrSGVhZGVyKHN0cmluZywgc3RhdGUuaW5kZW50KSArIGRyb3BFbmRpbmdOZXdsaW5lKGluZGVudFN0cmluZyhmb2xkU3RyaW5nKHN0cmluZywgbGluZVdpZHRoKSwgaW5kZW50KSk7CiAgICAgIGNhc2UgU1RZTEVfRE9VQkxFOgogICAgICAgIHJldHVybiAnIicgKyBlc2NhcGVTdHJpbmcoc3RyaW5nKSArICciJzsKICAgICAgZGVmYXVsdDoKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJpbXBvc3NpYmxlIGVycm9yOiBpbnZhbGlkIHNjYWxhciBzdHlsZSIpOwogICAgfQogIH0oKTsKfQpmdW5jdGlvbiBibG9ja0hlYWRlcihzdHJpbmcsIGluZGVudFBlckxldmVsKSB7CiAgdmFyIGluZGVudEluZGljYXRvciA9IG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSA/IFN0cmluZyhpbmRlbnRQZXJMZXZlbCkgOiAiIjsKICB2YXIgY2xpcCA9IHN0cmluZ1tzdHJpbmcubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgdmFyIGtlZXAgPSBjbGlwICYmIChzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDJdID09PSAiXG4iIHx8IHN0cmluZyA9PT0gIlxuIik7CiAgdmFyIGNob21wID0ga2VlcCA/ICIrIiA6IGNsaXAgPyAiIiA6ICItIjsKICByZXR1cm4gaW5kZW50SW5kaWNhdG9yICsgY2hvbXAgKyAiXG4iOwp9CmZ1bmN0aW9uIGRyb3BFbmRpbmdOZXdsaW5lKHN0cmluZykgewogIHJldHVybiBzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDFdID09PSAiXG4iID8gc3RyaW5nLnNsaWNlKDAsIC0xKSA6IHN0cmluZzsKfQpmdW5jdGlvbiBmb2xkU3RyaW5nKHN0cmluZywgd2lkdGgpIHsKICB2YXIgbGluZVJlID0gLyhcbispKFteXG5dKikvZzsKICB2YXIgcmVzdWx0ID0gZnVuY3Rpb24oKSB7CiAgICB2YXIgbmV4dExGID0gc3RyaW5nLmluZGV4T2YoIlxuIik7CiAgICBuZXh0TEYgPSBuZXh0TEYgIT09IC0xID8gbmV4dExGIDogc3RyaW5nLmxlbmd0aDsKICAgIGxpbmVSZS5sYXN0SW5kZXggPSBuZXh0TEY7CiAgICByZXR1cm4gZm9sZExpbmUoc3RyaW5nLnNsaWNlKDAsIG5leHRMRiksIHdpZHRoKTsKICB9KCk7CiAgdmFyIHByZXZNb3JlSW5kZW50ZWQgPSBzdHJpbmdbMF0gPT09ICJcbiIgfHwgc3RyaW5nWzBdID09PSAiICI7CiAgdmFyIG1vcmVJbmRlbnRlZDsKICB2YXIgbWF0Y2g7CiAgd2hpbGUgKG1hdGNoID0gbGluZVJlLmV4ZWMoc3RyaW5nKSkgewogICAgdmFyIHByZWZpeCA9IG1hdGNoWzFdLCBsaW5lID0gbWF0Y2hbMl07CiAgICBtb3JlSW5kZW50ZWQgPSBsaW5lWzBdID09PSAiICI7CiAgICByZXN1bHQgKz0gcHJlZml4ICsgKCFwcmV2TW9yZUluZGVudGVkICYmICFtb3JlSW5kZW50ZWQgJiYgbGluZSAhPT0gIiIgPyAiXG4iIDogIiIpICsgZm9sZExpbmUobGluZSwgd2lkdGgpOwogICAgcHJldk1vcmVJbmRlbnRlZCA9IG1vcmVJbmRlbnRlZDsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBmb2xkTGluZShsaW5lLCB3aWR0aCkgewogIGlmIChsaW5lID09PSAiIiB8fCBsaW5lWzBdID09PSAiICIpIHJldHVybiBsaW5lOwogIHZhciBicmVha1JlID0gLyBbXiBdL2c7CiAgdmFyIG1hdGNoOwogIHZhciBzdGFydCA9IDAsIGVuZCwgY3VyciA9IDAsIG5leHQgPSAwOwogIHZhciByZXN1bHQgPSAiIjsKICB3aGlsZSAobWF0Y2ggPSBicmVha1JlLmV4ZWMobGluZSkpIHsKICAgIG5leHQgPSBtYXRjaC5pbmRleDsKICAgIGlmIChuZXh0IC0gc3RhcnQgPiB3aWR0aCkgewogICAgICBlbmQgPSBjdXJyID4gc3RhcnQgPyBjdXJyIDogbmV4dDsKICAgICAgcmVzdWx0ICs9ICJcbiIgKyBsaW5lLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICBzdGFydCA9IGVuZCArIDE7CiAgICB9CiAgICBjdXJyID0gbmV4dDsKICB9CiAgcmVzdWx0ICs9ICJcbiI7CiAgaWYgKGxpbmUubGVuZ3RoIC0gc3RhcnQgPiB3aWR0aCAmJiBjdXJyID4gc3RhcnQpIHsKICAgIHJlc3VsdCArPSBsaW5lLnNsaWNlKHN0YXJ0LCBjdXJyKSArICJcbiIgKyBsaW5lLnNsaWNlKGN1cnIgKyAxKTsKICB9IGVsc2UgewogICAgcmVzdWx0ICs9IGxpbmUuc2xpY2Uoc3RhcnQpOwogIH0KICByZXR1cm4gcmVzdWx0LnNsaWNlKDEpOwp9CmZ1bmN0aW9uIGVzY2FwZVN0cmluZyhzdHJpbmcpIHsKICB2YXIgcmVzdWx0ID0gIiI7CiAgdmFyIGNoYXIgPSAwOwogIHZhciBlc2NhcGVTZXE7CiAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHJpbmcubGVuZ3RoOyBjaGFyID49IDY1NTM2ID8gaSArPSAyIDogaSsrKSB7CiAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgIGVzY2FwZVNlcSA9IEVTQ0FQRV9TRVFVRU5DRVNbY2hhcl07CiAgICBpZiAoIWVzY2FwZVNlcSAmJiBpc1ByaW50YWJsZShjaGFyKSkgewogICAgICByZXN1bHQgKz0gc3RyaW5nW2ldOwogICAgICBpZiAoY2hhciA+PSA2NTUzNikgcmVzdWx0ICs9IHN0cmluZ1tpICsgMV07CiAgICB9IGVsc2UgewogICAgICByZXN1bHQgKz0gZXNjYXBlU2VxIHx8IGVuY29kZUhleChjaGFyKTsKICAgIH0KICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiB3cml0ZUZsb3dTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIG9iamVjdCkgewogIHZhciBfcmVzdWx0ID0gIiIsIF90YWcgPSBzdGF0ZS50YWcsIGluZGV4LCBsZW5ndGgsIHZhbHVlOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdmFsdWUgPSBvYmplY3RbaW5kZXhdOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIHZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIFN0cmluZyhpbmRleCksIHZhbHVlKTsKICAgIH0KICAgIGlmICh3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCB2YWx1ZSwgZmFsc2UsIGZhbHNlKSB8fCB0eXBlb2YgdmFsdWUgPT09ICJ1bmRlZmluZWQiICYmIHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwsIG51bGwsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgaWYgKF9yZXN1bHQgIT09ICIiKSBfcmVzdWx0ICs9ICIsIiArICghc3RhdGUuY29uZGVuc2VGbG93ID8gIiAiIDogIiIpOwogICAgICBfcmVzdWx0ICs9IHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJbIiArIF9yZXN1bHQgKyAiXSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja1NlcXVlbmNlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBjb21wYWN0KSB7CiAgdmFyIF9yZXN1bHQgPSAiIiwgX3RhZyA9IHN0YXRlLnRhZywgaW5kZXgsIGxlbmd0aCwgdmFsdWU7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICB2YWx1ZSA9IG9iamVjdFtpbmRleF07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgdmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgU3RyaW5nKGluZGV4KSwgdmFsdWUpOwogICAgfQogICAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCB2YWx1ZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHRydWUpIHx8IHR5cGVvZiB2YWx1ZSA9PT0gInVuZGVmaW5lZCIgJiYgd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCArIDEsIG51bGwsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlKSkgewogICAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgICBfcmVzdWx0ICs9IGdlbmVyYXRlTmV4dExpbmUoc3RhdGUsIGxldmVsKTsKICAgICAgfQogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSAiOwogICAgICB9CiAgICAgIF9yZXN1bHQgKz0gc3RhdGUuZHVtcDsKICAgIH0KICB9CiAgc3RhdGUudGFnID0gX3RhZzsKICBzdGF0ZS5kdW1wID0gX3Jlc3VsdCB8fCAiW10iOwp9CmZ1bmN0aW9uIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgcGFpckJ1ZmZlcjsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoX3Jlc3VsdCAhPT0gIiIpIHBhaXJCdWZmZXIgKz0gIiwgIjsKICAgIGlmIChzdGF0ZS5jb25kZW5zZUZsb3cpIHBhaXJCdWZmZXIgKz0gJyInOwogICAgb2JqZWN0S2V5ID0gb2JqZWN0S2V5TGlzdFtpbmRleF07CiAgICBvYmplY3RWYWx1ZSA9IG9iamVjdFtvYmplY3RLZXldOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIG9iamVjdFZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIG9iamVjdEtleSwgb2JqZWN0VmFsdWUpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCBvYmplY3RLZXksIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0KSBwYWlyQnVmZmVyICs9ICI/ICI7CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXAgKyAoc3RhdGUuY29uZGVuc2VGbG93ID8gJyInIDogIiIpICsgIjoiICsgKHN0YXRlLmNvbmRlbnNlRmxvdyA/ICIiIDogIiAiKTsKICAgIGlmICghd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0VmFsdWUsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBfcmVzdWx0ICs9IHBhaXJCdWZmZXI7CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJ7IiArIF9yZXN1bHQgKyAifSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QsIGNvbXBhY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgZXhwbGljaXRQYWlyLCBwYWlyQnVmZmVyOwogIGlmIChzdGF0ZS5zb3J0S2V5cyA9PT0gdHJ1ZSkgewogICAgb2JqZWN0S2V5TGlzdC5zb3J0KCk7CiAgfSBlbHNlIGlmICh0eXBlb2Ygc3RhdGUuc29ydEtleXMgPT09ICJmdW5jdGlvbiIpIHsKICAgIG9iamVjdEtleUxpc3Quc29ydChzdGF0ZS5zb3J0S2V5cyk7CiAgfSBlbHNlIGlmIChzdGF0ZS5zb3J0S2V5cykgewogICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigic29ydEtleXMgbXVzdCBiZSBhIGJvb2xlYW4gb3IgYSBmdW5jdGlvbiIpOwogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgcGFpckJ1ZmZlciArPSBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCk7CiAgICB9CiAgICBvYmplY3RLZXkgPSBvYmplY3RLZXlMaXN0W2luZGV4XTsKICAgIG9iamVjdFZhbHVlID0gb2JqZWN0W29iamVjdEtleV07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgb2JqZWN0VmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSk7CiAgICB9CiAgICBpZiAoIXdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCBvYmplY3RLZXksIHRydWUsIHRydWUsIHRydWUpKSB7CiAgICAgIGNvbnRpbnVlOwogICAgfQogICAgZXhwbGljaXRQYWlyID0gc3RhdGUudGFnICE9PSBudWxsICYmIHN0YXRlLnRhZyAhPT0gIj8iIHx8IHN0YXRlLmR1bXAgJiYgc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0OwogICAgaWYgKGV4cGxpY2l0UGFpcikgewogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyAiOwogICAgICB9CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBpZiAoZXhwbGljaXRQYWlyKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gZ2VuZXJhdGVOZXh0TGluZShzdGF0ZSwgbGV2ZWwpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsICsgMSwgb2JqZWN0VmFsdWUsIHRydWUsIGV4cGxpY2l0UGFpcikpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gIjoiOwogICAgfSBlbHNlIHsKICAgICAgcGFpckJ1ZmZlciArPSAiOiAiOwogICAgfQogICAgcGFpckJ1ZmZlciArPSBzdGF0ZS5kdW1wOwogICAgX3Jlc3VsdCArPSBwYWlyQnVmZmVyOwogIH0KICBzdGF0ZS50YWcgPSBfdGFnOwogIHN0YXRlLmR1bXAgPSBfcmVzdWx0IHx8ICJ7fSI7Cn0KZnVuY3Rpb24gZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCBleHBsaWNpdCkgewogIHZhciBfcmVzdWx0LCB0eXBlTGlzdCwgaW5kZXgsIGxlbmd0aCwgdHlwZTIsIHN0eWxlOwogIHR5cGVMaXN0ID0gZXhwbGljaXQgPyBzdGF0ZS5leHBsaWNpdFR5cGVzIDogc3RhdGUuaW1wbGljaXRUeXBlczsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gdHlwZUxpc3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSB0eXBlTGlzdFtpbmRleF07CiAgICBpZiAoKHR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZTIucHJlZGljYXRlKSAmJiAoIXR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZW9mIG9iamVjdCA9PT0gIm9iamVjdCIgJiYgb2JqZWN0IGluc3RhbmNlb2YgdHlwZTIuaW5zdGFuY2VPZikgJiYgKCF0eXBlMi5wcmVkaWNhdGUgfHwgdHlwZTIucHJlZGljYXRlKG9iamVjdCkpKSB7CiAgICAgIGlmIChleHBsaWNpdCkgewogICAgICAgIGlmICh0eXBlMi5tdWx0aSAmJiB0eXBlMi5yZXByZXNlbnROYW1lKSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi5yZXByZXNlbnROYW1lKG9iamVjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHN0YXRlLnRhZyA9IHR5cGUyLnRhZzsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICB9CiAgICAgIGlmICh0eXBlMi5yZXByZXNlbnQpIHsKICAgICAgICBzdHlsZSA9IHN0YXRlLnN0eWxlTWFwW3R5cGUyLnRhZ10gfHwgdHlwZTIuZGVmYXVsdFN0eWxlOwogICAgICAgIGlmIChfdG9TdHJpbmcuY2FsbCh0eXBlMi5yZXByZXNlbnQpID09PSAiW29iamVjdCBGdW5jdGlvbl0iKSB7CiAgICAgICAgICBfcmVzdWx0ID0gdHlwZTIucmVwcmVzZW50KG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIucmVwcmVzZW50LCBzdHlsZSkpIHsKICAgICAgICAgIF9yZXN1bHQgPSB0eXBlMi5yZXByZXNlbnRbc3R5bGVdKG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCIhPCIgKyB0eXBlMi50YWcgKyAnPiB0YWcgcmVzb2x2ZXIgYWNjZXB0cyBub3QgIicgKyBzdHlsZSArICciIHN0eWxlJyk7CiAgICAgICAgfQogICAgICAgIHN0YXRlLmR1bXAgPSBfcmVzdWx0OwogICAgICB9CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBibG9jaywgY29tcGFjdCwgaXNrZXksIGlzYmxvY2tzZXEpIHsKICBzdGF0ZS50YWcgPSBudWxsOwogIHN0YXRlLmR1bXAgPSBvYmplY3Q7CiAgaWYgKCFkZXRlY3RUeXBlKHN0YXRlLCBvYmplY3QsIGZhbHNlKSkgewogICAgZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCB0cnVlKTsKICB9CiAgdmFyIHR5cGUyID0gX3RvU3RyaW5nLmNhbGwoc3RhdGUuZHVtcCk7CiAgdmFyIGluYmxvY2sgPSBibG9jazsKICB2YXIgdGFnU3RyOwogIGlmIChibG9jaykgewogICAgYmxvY2sgPSBzdGF0ZS5mbG93TGV2ZWwgPCAwIHx8IHN0YXRlLmZsb3dMZXZlbCA+IGxldmVsOwogIH0KICB2YXIgb2JqZWN0T3JBcnJheSA9IHR5cGUyID09PSAiW29iamVjdCBPYmplY3RdIiB8fCB0eXBlMiA9PT0gIltvYmplY3QgQXJyYXldIiwgZHVwbGljYXRlSW5kZXgsIGR1cGxpY2F0ZTsKICBpZiAob2JqZWN0T3JBcnJheSkgewogICAgZHVwbGljYXRlSW5kZXggPSBzdGF0ZS5kdXBsaWNhdGVzLmluZGV4T2Yob2JqZWN0KTsKICAgIGR1cGxpY2F0ZSA9IGR1cGxpY2F0ZUluZGV4ICE9PSAtMTsKICB9CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCAmJiBzdGF0ZS50YWcgIT09ICI/IiB8fCBkdXBsaWNhdGUgfHwgc3RhdGUuaW5kZW50ICE9PSAyICYmIGxldmVsID4gMCkgewogICAgY29tcGFjdCA9IGZhbHNlOwogIH0KICBpZiAoZHVwbGljYXRlICYmIHN0YXRlLnVzZWREdXBsaWNhdGVzW2R1cGxpY2F0ZUluZGV4XSkgewogICAgc3RhdGUuZHVtcCA9ICIqcmVmXyIgKyBkdXBsaWNhdGVJbmRleDsKICB9IGVsc2UgewogICAgaWYgKG9iamVjdE9yQXJyYXkgJiYgZHVwbGljYXRlICYmICFzdGF0ZS51c2VkRHVwbGljYXRlc1tkdXBsaWNhdGVJbmRleF0pIHsKICAgICAgc3RhdGUudXNlZER1cGxpY2F0ZXNbZHVwbGljYXRlSW5kZXhdID0gdHJ1ZTsKICAgIH0KICAgIGlmICh0eXBlMiA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIE9iamVjdC5rZXlzKHN0YXRlLmR1bXApLmxlbmd0aCAhPT0gMCkgewogICAgICAgIHdyaXRlQmxvY2tNYXBwaW5nKHN0YXRlLCBsZXZlbCwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgaWYgKGR1cGxpY2F0ZSkgewogICAgICAgICAgc3RhdGUuZHVtcCA9ICImcmVmXyIgKyBkdXBsaWNhdGVJbmRleCArIHN0YXRlLmR1bXA7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IEFycmF5XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIHN0YXRlLmR1bXAubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgaWYgKHN0YXRlLm5vQXJyYXlJbmRlbnQgJiYgIWlzYmxvY2tzZXEgJiYgbGV2ZWwgPiAwKSB7CiAgICAgICAgICB3cml0ZUJsb2NrU2VxdWVuY2Uoc3RhdGUsIGxldmVsIC0gMSwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHdyaXRlQmxvY2tTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIHN0YXRlLmR1bXAsIGNvbXBhY3QpOwogICAgICAgIH0KICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgd3JpdGVGbG93U2VxdWVuY2Uoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IFN0cmluZ10iKSB7CiAgICAgIGlmIChzdGF0ZS50YWcgIT09ICI/IikgewogICAgICAgIHdyaXRlU2NhbGFyKHN0YXRlLCBzdGF0ZS5kdW1wLCBsZXZlbCwgaXNrZXksIGluYmxvY2spOwogICAgICB9CiAgICB9IGVsc2UgaWYgKHR5cGUyID09PSAiW29iamVjdCBVbmRlZmluZWRdIikgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9IGVsc2UgewogICAgICBpZiAoc3RhdGUuc2tpcEludmFsaWQpIHJldHVybiBmYWxzZTsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigidW5hY2NlcHRhYmxlIGtpbmQgb2YgYW4gb2JqZWN0IHRvIGR1bXAgIiArIHR5cGUyKTsKICAgIH0KICAgIGlmIChzdGF0ZS50YWcgIT09IG51bGwgJiYgc3RhdGUudGFnICE9PSAiPyIpIHsKICAgICAgdGFnU3RyID0gZW5jb2RlVVJJKAogICAgICAgIHN0YXRlLnRhZ1swXSA9PT0gIiEiID8gc3RhdGUudGFnLnNsaWNlKDEpIDogc3RhdGUudGFnCiAgICAgICkucmVwbGFjZSgvIS9nLCAiJTIxIik7CiAgICAgIGlmIChzdGF0ZS50YWdbMF0gPT09ICIhIikgewogICAgICAgIHRhZ1N0ciA9ICIhIiArIHRhZ1N0cjsKICAgICAgfSBlbHNlIGlmICh0YWdTdHIuc2xpY2UoMCwgMTgpID09PSAidGFnOnlhbWwub3JnLDIwMDI6IikgewogICAgICAgIHRhZ1N0ciA9ICIhISIgKyB0YWdTdHIuc2xpY2UoMTgpOwogICAgICB9IGVsc2UgewogICAgICAgIHRhZ1N0ciA9ICIhPCIgKyB0YWdTdHIgKyAiPiI7CiAgICAgIH0KICAgICAgc3RhdGUuZHVtcCA9IHRhZ1N0ciArICIgIiArIHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGdldER1cGxpY2F0ZVJlZmVyZW5jZXMob2JqZWN0LCBzdGF0ZSkgewogIHZhciBvYmplY3RzID0gW10sIGR1cGxpY2F0ZXNJbmRleGVzID0gW10sIGluZGV4LCBsZW5ndGg7CiAgaW5zcGVjdE5vZGUob2JqZWN0LCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IGR1cGxpY2F0ZXNJbmRleGVzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHN0YXRlLmR1cGxpY2F0ZXMucHVzaChvYmplY3RzW2R1cGxpY2F0ZXNJbmRleGVzW2luZGV4XV0pOwogIH0KICBzdGF0ZS51c2VkRHVwbGljYXRlcyA9IG5ldyBBcnJheShsZW5ndGgpOwp9CmZ1bmN0aW9uIGluc3BlY3ROb2RlKG9iamVjdCwgb2JqZWN0cywgZHVwbGljYXRlc0luZGV4ZXMpIHsKICB2YXIgb2JqZWN0S2V5TGlzdCwgaW5kZXgsIGxlbmd0aDsKICBpZiAob2JqZWN0ICE9PSBudWxsICYmIHR5cGVvZiBvYmplY3QgPT09ICJvYmplY3QiKSB7CiAgICBpbmRleCA9IG9iamVjdHMuaW5kZXhPZihvYmplY3QpOwogICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICBpZiAoZHVwbGljYXRlc0luZGV4ZXMuaW5kZXhPZihpbmRleCkgPT09IC0xKSB7CiAgICAgICAgZHVwbGljYXRlc0luZGV4ZXMucHVzaChpbmRleCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG9iamVjdHMucHVzaChvYmplY3QpOwogICAgICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7CiAgICAgICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICAgICAgICBpbnNwZWN0Tm9kZShvYmplY3RbaW5kZXhdLCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIG9iamVjdEtleUxpc3QgPSBPYmplY3Qua2V5cyhvYmplY3QpOwogICAgICAgIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3RLZXlMaXN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgICAgICAgIGluc3BlY3ROb2RlKG9iamVjdFtvYmplY3RLZXlMaXN0W2luZGV4XV0sIG9iamVjdHMsIGR1cGxpY2F0ZXNJbmRleGVzKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0KZnVuY3Rpb24gZHVtcCQxKGlucHV0LCBvcHRpb25zKSB7CiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgdmFyIHN0YXRlID0gbmV3IFN0YXRlKG9wdGlvbnMpOwogIGlmICghc3RhdGUubm9SZWZzKSBnZXREdXBsaWNhdGVSZWZlcmVuY2VzKGlucHV0LCBzdGF0ZSk7CiAgdmFyIHZhbHVlID0gaW5wdXQ7CiAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICB2YWx1ZSA9IHN0YXRlLnJlcGxhY2VyLmNhbGwoeyAiIjogdmFsdWUgfSwgIiIsIHZhbHVlKTsKICB9CiAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgMCwgdmFsdWUsIHRydWUsIHRydWUpKSByZXR1cm4gc3RhdGUuZHVtcCArICJcbiI7CiAgcmV0dXJuICIiOwp9CnZhciBkdW1wXzEgPSBkdW1wJDE7CnZhciBkdW1wZXIgPSB7CiAgZHVtcDogZHVtcF8xCn07CmZ1bmN0aW9uIHJlbmFtZWQoZnJvbSwgdG8pIHsKICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoIkZ1bmN0aW9uIHlhbWwuIiArIGZyb20gKyAiIGlzIHJlbW92ZWQgaW4ganMteWFtbCA0LiBVc2UgeWFtbC4iICsgdG8gKyAiIGluc3RlYWQsIHdoaWNoIGlzIG5vdyBzYWZlIGJ5IGRlZmF1bHQuIik7CiAgfTsKfQp2YXIgbG9hZCA9IGxvYWRlci5sb2FkOwp2YXIgbG9hZEFsbCA9IGxvYWRlci5sb2FkQWxsOwp2YXIgZHVtcCA9IGR1bXBlci5kdW1wOwp2YXIgc2FmZUxvYWQgPSByZW5hbWVkKCJzYWZlTG9hZCIsICJsb2FkIik7CnZhciBzYWZlTG9hZEFsbCA9IHJlbmFtZWQoInNhZmVMb2FkQWxsIiwgImxvYWRBbGwiKTsKdmFyIHNhZmVEdW1wID0gcmVuYW1lZCgic2FmZUR1bXAiLCAiZHVtcCIpOwoKLy8gc3JjL3NjaGVtYXRpYy9wcm9qZWN0L3Byb2plY3QuZmFjdG9yeS50cwp2YXIgR0lUSUdOT1JFX1BBVEggPSAiLmdpdGlnbm9yZSI7CnZhciBjYXB0dXJlR2l0SWdub3JlQ29udGVudFJ1bGUgPSAoc3RhdGUpID0+IChob3N0KSA9PiB7CiAgY29uc3QgZ2l0SWdub3JlQnVmZmVyID0gaG9zdC5yZWFkKEdJVElHTk9SRV9QQVRIKTsKICBpZiAoIWdpdElnbm9yZUJ1ZmZlcikgewogICAgcmV0dXJuIGhvc3Q7CiAgfQogIHN0YXRlLmNvbnRlbnQgPSBnaXRJZ25vcmVCdWZmZXIudG9TdHJpbmcoInV0Zi04Iik7CiAgcmV0dXJuIGhvc3Q7Cn07CnZhciBtZXJnZUdpdElnbm9yZUNvbnRlbnRSdWxlID0gKHN0YXRlKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmIChzdGF0ZS5jb250ZW50ID09PSB2b2lkIDApIHsKICAgIHJldHVybiBob3N0OwogIH0KICBjb25zdCBnaXRJZ25vcmVCdWZmZXIgPSBob3N0LnJlYWQoR0lUSUdOT1JFX1BBVEgpOwogIGlmICghZ2l0SWdub3JlQnVmZmVyKSB7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgY29uc3QgdGVtcGxhdGVDb250ZW50ID0gZ2l0SWdub3JlQnVmZmVyLnRvU3RyaW5nKCJ1dGYtOCIpOwogIGNvbnN0IG1lcmdlZENvbnRlbnQgPSBtZXJnZUdpdElnbm9yZUNvbnRlbnQoewogICAgZXhpc3RpbmdDb250ZW50OiBzdGF0ZS5jb250ZW50LAogICAgdGVtcGxhdGVDb250ZW50CiAgfSk7CiAgaWYgKG1lcmdlZENvbnRlbnQgIT09IHRlbXBsYXRlQ29udGVudCkgewogICAgY29udGV4dC5sb2dnZXIuaW5mbygiTWVyZ2luZyB0ZW1wbGF0ZSAuZ2l0aWdub3JlIHdpdGggcHJvamVjdC1zcGVjaWZpYyBlbnRyaWVzIik7CiAgICBob3N0Lm92ZXJ3cml0ZShHSVRJR05PUkVfUEFUSCwgbWVyZ2VkQ29udGVudCk7CiAgfQogIHJldHVybiBob3N0Owp9Owp2YXIgbWFpbiA9IChvcHRpb25zKSA9PiB7CiAgY29uc3Qgc3RhdGUgPSB7fTsKICByZXR1cm4gKDAsIGltcG9ydF9zY2hlbWF0aWNzMTAuY2hhaW4pKFsKICAgIGNhcHR1cmVHaXRJZ25vcmVDb250ZW50UnVsZShzdGF0ZSksCiAgICB1cGRhdGVUc0NvbmZpZ1J1bGUsCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMS5tZXJnZVdpdGgpKGdlbmVyYXRlQ29tbW9uU291cmNlKG9wdGlvbnMpLCBpbXBvcnRfc2NoZW1hdGljczkuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGUpLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzMTEubWVyZ2VXaXRoKShnZW5lcmF0ZVByb2plY3RTcGVjaWZpY1NvdXJjZShvcHRpb25zKSwgaW1wb3J0X3NjaGVtYXRpY3M5Lk1lcmdlU3RyYXRlZ3kuT3ZlcndyaXRlKSwKICAgIG1lcmdlR2l0SWdub3JlQ29udGVudFJ1bGUoc3RhdGUpCiAgXSk7Cn07Ci8vIEFubm90YXRlIHRoZSBDb21tb25KUyBleHBvcnQgbmFtZXMgZm9yIEVTTSBpbXBvcnQgaW4gbm9kZToKMCAmJiAobW9kdWxlLmV4cG9ydHMgPSB7CiAgbWFpbgp9KTsKLyohIEJ1bmRsZWQgbGljZW5zZSBpbmZvcm1hdGlvbjoKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3V0aWxzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS91dGlsaXR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2V4Y2VwdGlvbi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGl0ZXJhbHMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3N0cmluZ3MuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3BhcnRpYWxseS1vcmRlcmVkLXNldC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xhbmcuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbnVsbC1sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci90cmFuc2Zvcm0tbG9nZ2VyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvbWVtb3J5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc3luYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVjb3JkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi93cml0ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW50cnkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvcmVjb3JkZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvbnVsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvY2xpLWxvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3Npbmsvc2luay5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvbW92ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9zY2hlbWF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy91cmwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCmpzLXlhbWwvZGlzdC9qcy15YW1sLm1qczoKICAoKiEganMteWFtbCA0LjEuMCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWNhL2pzLXlhbWwgQGxpY2Vuc2UgTUlUICopCiovCg==",Ots=async e=>{let t=Buffer.from($ol,"base64").toString("utf-8");await(await import("fs/promises")).writeFile(e,t)};var Pts=async e=>{let{writeFiles:t}=await import("@atls/code-runtime");await t(e);let r=NHr.ppath.join(e,"project");await eal(r,{recursive:!0}),await Ots(NHr.ppath.join(r,"project.factory.cjs")),console.info("All Schematic files writed to the tmp!")};var O_e=Nt(Io(),1),Dkt=Nt(Io(),1),Mts=async e=>{let t=process.cwd();await Dkt.xfs.copyFilePromise(O_e.ppath.join(t,".pnp.cjs"),O_e.ppath.join(e,".pnp.cjs")),await Dkt.xfs.symlinkPromise(O_e.ppath.join(t,"package.json"),O_e.ppath.join(e,"package.json")),await Dkt.xfs.symlinkPromise(O_e.ppath.join(t,"runtime"),O_e.ppath.join(e,"runtime"))};var Qts=async e=>async r=>{try{let n=await Yts.xfs.mktempPromise(),a=Hts.ppath.join(n,"collection.json");await Pts(n),await Mts(n),await Wts("project",e,a)}catch(n){console.error(n)}};var kkt=class extends Xts.BaseCommand{static paths=[["generate","project"]];type=vA.String("-t,--type","project");async execute(){let t=await Jts.Configuration.find(this.context.cwd,this.context.plugins),r=["libraries","project"];if(!r.includes(this.type))throw new Error(`Allowed only ${r.join(", ")} types`);let n={type:this.type,cwd:process.cwd()},a=WUi(this,t),o=await Qts(n);return(await Uts.StreamReport.start(a,o)).exitCode()}};var Kts={commands:[kkt]};var PVl=Nt(Nls()),MVl=Nt(Zls()),HVl=Nt(Qls()),YVl=Nt(jls()),QVl=Nt(Aus()),XVl=Nt(Vxt()),JVl=Nt(hus()),UVl=Nt(Sus()),KVl=Nt(ags()),jVl=Nt(pgs()),zVl=Nt(Egs()),qVl=Nt(Zgs()),$Vl=Nt(bGe()),eWl=Nt(Mgs()),tWl=Nt(Kgs()),rWl=Nt(tAs()),nWl=Nt(AAs()),iWl=Nt(Wds()),sWl=Nt(mJ()),oWl=Nt(d1s()),aWl=Nt(Ime()),cWl=Nt(Y1s()),lWl=Nt(OGe()),uWl=Nt(j1s()),gWl=Nt(i2s()),s2s=()=>({modules:new Map([["@yarnpkg/cli",GVl],["@yarnpkg/core",FVl],["@yarnpkg/fslib",ZVl],["@yarnpkg/libzip",LVl],["@yarnpkg/parsers",VVl],["@yarnpkg/shell",WVl],["clipanion",ng],["semver",OVl],["typanion",SZ],["@atls/yarn-plugin-badges",Fpr],["@atls/yarn-plugin-changelog",EIr],["@atls/yarn-plugin-check",SIr],["@atls/yarn-plugin-checks",B1r],["@atls/yarn-plugin-cli-publish",T1r],["@atls/yarn-plugin-commit",qBr],["@atls/yarn-plugin-essentials",ewr],["@atls/yarn-plugin-export",TTr],["@atls/yarn-plugin-files",$Er],["@atls/yarn-plugin-format",nxr],["@atls/yarn-plugin-image",pxr],["@atls/yarn-plugin-jsr",Fxr],["@atls/yarn-plugin-library",Yxr],["@atls/yarn-plugin-lint",zxr],["@atls/yarn-plugin-release",uGr],["@atls/yarn-plugin-renderer",rFr],["@atls/yarn-plugin-service",D9r],["@atls/yarn-plugin-test",O9r],["@atls/yarn-plugin-tools",K9r],["@atls/yarn-plugin-typescript",eVr],["@atls/yarn-plugin-workspaces",tVr],["@atls/yarn-plugin-ui",mVr],["@atls/yarn-plugin-schematics",DHr],["@yarnpkg/plugin-interactive-tools",PVl],["@yarnpkg/plugin-jsr",MVl],["@yarnpkg/plugin-workspace-tools",HVl],["@yarnpkg/plugin-typescript",YVl],["@yarnpkg/plugin-version",QVl],["@yarnpkg/plugin-essentials",XVl],["@yarnpkg/plugin-catalog",JVl],["@yarnpkg/plugin-compat",UVl],["@yarnpkg/plugin-constraints",KVl],["@yarnpkg/plugin-dlx",jVl],["@yarnpkg/plugin-exec",zVl],["@yarnpkg/plugin-file",qVl],["@yarnpkg/plugin-git",$Vl],["@yarnpkg/plugin-github",eWl],["@yarnpkg/plugin-http",tWl],["@yarnpkg/plugin-init",rWl],["@yarnpkg/plugin-link",nWl],["@yarnpkg/plugin-nm",iWl],["@yarnpkg/plugin-npm",sWl],["@yarnpkg/plugin-npm-cli",oWl],["@yarnpkg/plugin-pack",aWl],["@yarnpkg/plugin-patch",cWl],["@yarnpkg/plugin-pnp",lWl],["@yarnpkg/plugin-pnpm",uWl],["@yarnpkg/plugin-stage",gWl]]),plugins:new Set(["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"])});var o2s={name:"@atls/yarn-cli",version:"1.1.73-atls",private:!0,license:"BSD-3-Clause",type:"module",exports:{"./package.json":"./package.json",".":"./src/index.ts"},main:"src/index.ts",files:["dist"],scripts:{build:"yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version","build:bundle":"builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs","build:clean":"rm -rf dist","build:dist":"mv bundles dist","build:fix":"yarn node patches/cli.patch.mjs","build:schemaic":"yarn workspace @atls/code-schematics prepack","build:version":"yarn node patches/version-postfix-toggle.mjs",fix:"yarn run build:fix",prepack:"yarn run build",postpack:"rm -rf dist"},dependencies:{"@atls/yarn-cli-tools":"workspace:*","@atls/yarn-plugin-badges":"workspace:*","@atls/yarn-plugin-changelog":"workspace:*","@atls/yarn-plugin-check":"workspace:*","@atls/yarn-plugin-checks":"workspace:*","@atls/yarn-plugin-cli-publish":"workspace:*","@atls/yarn-plugin-commit":"workspace:*","@atls/yarn-plugin-essentials":"workspace:*","@atls/yarn-plugin-export":"workspace:*","@atls/yarn-plugin-files":"workspace:*","@atls/yarn-plugin-format":"workspace:*","@atls/yarn-plugin-image":"workspace:*","@atls/yarn-plugin-jsr":"workspace:*","@atls/yarn-plugin-library":"workspace:*","@atls/yarn-plugin-lint":"workspace:*","@atls/yarn-plugin-release":"workspace:*","@atls/yarn-plugin-renderer":"workspace:*","@atls/yarn-plugin-schematics":"workspace:*","@atls/yarn-plugin-service":"workspace:*","@atls/yarn-plugin-test":"workspace:*","@atls/yarn-plugin-tools":"workspace:*","@atls/yarn-plugin-typescript":"workspace:*","@atls/yarn-plugin-ui":"workspace:*","@atls/yarn-plugin-workspaces":"workspace:*","@yarnpkg/builder":"4.2.0","@yarnpkg/cli":"4.14.1","@yarnpkg/core":"4.7.0","@yarnpkg/fslib":"3.1.5","@yarnpkg/libzip":"3.2.2","@yarnpkg/parsers":"3.0.3","@yarnpkg/plugin-catalog":"1.0.2","@yarnpkg/plugin-compat":"4.0.12","@yarnpkg/plugin-constraints":"4.0.5","@yarnpkg/plugin-dlx":"4.0.2","@yarnpkg/plugin-essentials":"4.5.0","@yarnpkg/plugin-exec":"3.1.0","@yarnpkg/plugin-file":"3.0.2","@yarnpkg/plugin-git":"3.2.0","@yarnpkg/plugin-github":"3.0.2","@yarnpkg/plugin-http":"3.0.3","@yarnpkg/plugin-init":"4.1.2","@yarnpkg/plugin-interactive-tools":"4.1.0","@yarnpkg/plugin-jsr":"1.1.1","@yarnpkg/plugin-link":"3.0.2","@yarnpkg/plugin-nm":"4.0.8","@yarnpkg/plugin-npm":"3.5.0","@yarnpkg/plugin-npm-cli":"4.4.1","@yarnpkg/plugin-pack":"4.0.4","@yarnpkg/plugin-patch":"4.0.3","@yarnpkg/plugin-pnp":"4.1.5","@yarnpkg/plugin-pnpm":"2.1.2","@yarnpkg/plugin-stage":"4.0.2","@yarnpkg/plugin-typescript":"4.1.3","@yarnpkg/plugin-version":"4.2.0","@yarnpkg/plugin-workspace-tools":"4.1.7","@yarnpkg/shell":"4.1.3",clipanion:"4.0.0-rc.2",semver:"7.6.3",typanion:"3.14.0"},publishConfig:{access:"public",exports:{"./package.json":"./package.json",".":{import:"./dist/index.js",types:"./dist/index.d.ts",default:"./dist/index.js"}},main:"dist/index.js",types:"dist/index.d.ts"},"@yarnpkg/builder":{bundles:{standard:["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"]}}};var a2s=A$r.npath.toPortablePath(A$r.npath.resolve(process.argv[1])),u$r=s2s(o2s["@yarnpkg/builder"].bundles.standard);u$r.then?u$r.then(async e=>{(0,g$r.runExit)(process.argv.slice(2),{cwd:d$r.ppath.cwd(),selfPath:a2s,pluginConfiguration:e})}):(0,g$r.runExit)(process.argv.slice(2),{cwd:d$r.ppath.cwd(),selfPath:a2s,pluginConfiguration:u$r}); +`).filter(Boolean)).flat(),{logRecords:a,raw:o}=n.reduce((l,A)=>{try{let f=JSON.parse(A);return{...l,logRecords:[...l.logRecords,f]}}catch{return{...l,raw:[...l.raw,A]}}},{logRecords:[],raw:[]});a.forEach(l=>{console.log(LE((0,lke.jsx)(Vvt,{...l})))}),o.length>0&&console.log(LE((0,lke.jsx)(O4i,{file:t?z4i(process.cwd(),t):void 0,messages:o})))}flushBufferedStd(){this.std.forEach((t,r)=>{this.renderStdBuffer({file:r,messages:t})})}};var NKe=class extends ate{static paths=[["test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Y9r.Filename.pnpCjs)&&t.includes(Y9r.Filename.pnpEsmLoader)?this.executeRegular("integration"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("integration"):this.executeProxy("integration")}};var Q9r=xt(No(),1);var DKe=class extends ate{static paths=[["test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Q9r.Filename.pnpCjs)&&t.includes(Q9r.Filename.pnpEsmLoader)?this.executeRegular("unit"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("unit"):this.executeProxy("unit")}};var rJi=xt(wn(),1),nJi=xt(wn(),1),X9r=xt(No(),1);var Ovt=class extends ate{static paths=[["test"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(X9r.Filename.pnpCjs)&&t.includes(X9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeRegular(){let t=await rJi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await nJi.Project.find(t,this.context.cwd),n=await q8.initialize(this.context.cwd);try{return(await n.general(this.target??r.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).some(o=>o.includes("# fail ")?parseInt(o.split("# fail ")[1],2)>0:!1)?1:0}catch(a){return console.error(a),1}}};var iJi={commands:[NKe,DKe,Ovt]};var rVr={};Uf(rVr,{default:()=>yJi});var uJi=xt(wn(),1),gJi=xt(wn(),1),AJi=xt(wn(),1),K9r=xt(No(),1),j9r=xt(wn(),1),_le=xt(zC(),1);var sJi=xt(sl(),1),oJi=xt(wn(),1),aJi=xt(wn(),1),U9r=xt(No(),1),cJi=xt(wn(),1),lJi=xt(No(),1);vl();var Cle=class extends sJi.BaseCommand{static usage=Kb.Usage({description:"Update tools",details:"\n Update tools such as `tsconfig`, `typescript` version, `@atls/code-runtime` version\n ",examples:[["Update tsconfig","yarn tools tsconfig"],["Update runtime","yarn tools runtime"],["Update typescript version","yarn tools typescript"],["Update all","yarn tools sync"]]});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(U9r.Filename.pnpCjs)&&t.includes(U9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(t=["tools","sync"]){let r=await oJi.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await aJi.Project.find(r,this.context.cwd),a=await lJi.xfs.mktempPromise(),{executable:o,env:l}=await BC({binFolder:a,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await cJi.execUtils.pipevp(o,t,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){return 0}};var Pvt=class extends Cle{static paths=[["tools","sync","typescript"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(K9r.Filename.pnpCjs)&&t.includes(K9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","typescript"])}async executeRegular(){let t=await uJi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await gJi.Project.find(t,this.context.cwd),n=(await import("@atls/code-runtime/package.json",{with:{type:"json"}})).default;return(await AJi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Tools sync typescript version",async()=>{if(r.topLevelWorkspace.manifest.raw.devDependencies){let l=j9r.structUtils.parseIdent("typescript"),A=Array.from(r.topLevelWorkspace.manifest.devDependencies.values()).find(f=>f.scope===l.scope&&f.name===l.name);A||(A=j9r.structUtils.makeDescriptor(l,n.dependencies.typescript)),_le.default.valid(_le.default.coerce(A.range))&&_le.default.valid(_le.default.coerce(n.dependencies.typescript))&&(_le.default.eq(_le.default.coerce(A.range)||"",_le.default.coerce(n.dependencies.typescript)||"")||(A.range=n.dependencies.typescript)),r.topLevelWorkspace.manifest.devDependencies.set(A.identHash,A),await r.persist()}})})).exitCode()}};var dJi=xt(wn(),1),pJi=xt(wn(),1),fJi=xt(wn(),1),z9r=xt(No(),1),kKe=xt(No(),1),q9r=xt(No(),1),$9r=xt(xTr(),1);import qFc from"node:assert";var $Fc=(e,t,r)=>{let n=e.slice();return t.forEach((a,o)=>{typeof n[o]>"u"?n[o]=r?.cloneUnlessOtherwiseSpecified(a,r):r?.isMergeableObject(a)?n[o]=(0,$9r.default)(e[o],a,r):e.includes(a)||n.push(a)}),n},eZc=e=>e.endsWith("/**/*")?e:!e.endsWith("/**/*")&&e.endsWith("/*")?e.replace("/*","/**/*"):e,Mvt=class extends Cle{static paths=[["tools","sync","tsconfig"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(z9r.Filename.pnpCjs)&&t.includes(z9r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","tsconfig"])}async executeRegular(){let t=await dJi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await pJi.Project.find(t,this.context.cwd);return(await fJi.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Tools sync typescript config",async()=>{let o=q9r.ppath.join(r.topLevelWorkspace.cwd,"tsconfig.json"),l=await kKe.xfs.existsPromise(o)?await kKe.xfs.readJsonPromise(o):{compilerOptions:{}};await kKe.xfs.writeFilePromise(q9r.ppath.join(r.topLevelWorkspace.cwd,"project.types.d.ts"),`/// +`);let A=(0,$9r.default)(l,{compilerOptions:L6.compilerOptions},{arrayMerge:$Fc}),f=(r.topLevelWorkspace.manifest.raw.workspaces||[]).map(eZc),I={...A,include:Array.from(new Set(["project.types.d.ts",...A.include,...f]))};try{qFc.deepEqual(l,I)}catch{await kKe.xfs.writeJsonPromise(o,I)}})})).exitCode()}};var tZc=[["tools","sync","typescript"],["tools","sync","tsconfig"],["install"]],Hvt=class extends Cle{static paths=[["tools","sync"]];async executeRegular(){for(let t of tZc){let r=await this.cli.run(t);if(r!==0)return r}return 0}};var IJi=xt(wn(),1),eVr=xt(wn(),1),hJi=xt(No(),1);var mJi=async(e,t)=>{let{project:r}=await IJi.Project.find(e,t.cwd),n=await hJi.xfs.mktempPromise(),{executable:a,env:o}=await BC({binFolder:n,project:r});await eVr.execUtils.pipevp(a,["tools","sync"],{cwd:t.cwd,stdin:t.stdin,stdout:t.stdout,stderr:t.stderr,end:eVr.execUtils.EndStrategy.ErrorCode,env:o})};var uke=xt(No(),1),yle=xt(No(),1);import{spawnSync as rZc}from"node:child_process";var tVr=e=>`${e}`,nZc=()=>tVr("yarn commit staged"),CJi=e=>rZc("git",e,{encoding:"utf-8"}),_Ji=async e=>{if(process.env.GITHUB_ACTIONS){console.log("AFTER INSTALL HOOK: Execution in GitHub Action");return}if(process.env.IMAGE_PACK||CJi(["--version"]).error?.code==="ENOENT")return;let r=uke.ppath.join(e.cwd,".config/husky"),n=uke.ppath.join(r,"_");await yle.xfs.existsPromise(n)&&await yle.xfs.removePromise(r),await yle.xfs.existsPromise(r)||await yle.xfs.mkdirPromise(r,{recursive:!0}),await yle.xfs.writeFilePromise(uke.ppath.join(r,"commit-msg"),tVr("yarn commit message lint"),{mode:493}),await yle.xfs.writeFilePromise(uke.ppath.join(r,"pre-commit"),nZc(),{mode:493}),await yle.xfs.writeFilePromise(uke.ppath.join(r,"prepare-commit-msg"),tVr("yarn commit message $@"),{mode:493});let{error:a}=CJi(["config","core.hooksPath",r]);if(a)throw a};var yJi={hooks:{afterAllInstalled:_Ji,afterYarnVersionSet:mJi},commands:[Hvt,Pvt,Mvt]};var aVr={};Uf(aVr,{TypeCheckCommand:()=>xKe,default:()=>vJi});var bJi=xt(sl(),1),nVr=xt(wn(),1),iVr=xt(wn(),1),sVr=xt(No(),1),EJi=xt(wn(),1),oVr=xt(No(),1),Yvt=xt(No(),1);vl();var SJi=xt(gl(),1);var Qvt=xt(Wc(),1),xKe=class extends bJi.BaseCommand{static paths=[["typecheck"]];args=sA.Rest({required:0});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(sVr.Filename.pnpCjs)&&t.includes(sVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await nVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await iVr.Project.find(t,this.context.cwd),n=await Yvt.xfs.mktempPromise(),{executable:a,env:o}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await EJi.execUtils.pipevp(a,["typecheck",...this.args],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let t=await nVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await iVr.Project.find(t,this.context.cwd),n=await _De.initialize(r.cwd),{clear:a}=(0,SJi.render)((0,Qvt.jsx)(w1t,{typescript:n}));try{let o=await n.check(await this.getIncludes(r));return o.forEach(l=>{LE((0,Qvt.jsx)(B1t,{...l})).split(` +`).forEach(A=>{console.log(A)})}),o.length===0?0:1}catch(o){return LE((0,Qvt.jsx)(Pk,{error:o})).split(` +`).forEach(l=>{console.error(l)}),1}finally{a()}}async getIncludes(t){if(this.args.length>0)return this.args;if(await Yvt.xfs.existsPromise(oVr.ppath.join(t.cwd,"tsconfig.json"))){let r=await Yvt.xfs.readJsonPromise(oVr.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var vJi={commands:[xKe]};var SVr={};Uf(SVr,{UiIconsGenerateCommand:()=>LKe,default:()=>WUi});var FUi=xt(sl(),1),_Vr=xt(wn(),1),yVr=xt(wn(),1),bVr=xt(No(),1),ZUi=xt(wn(),1),LUi=xt(No(),1);vl();import{join as GUi}from"node:path";import{relative as wLc}from"node:path";var VUi=xt(gl(),1);var GKe=xt(gl(),1),xJi=xt(Ec(),1),GJi=xt(Ec(),1);var BJi=xt(Ec(),1),wJi=xt(Ec(),1),RJi=xt(Wc(),1),TJi=({icons:e})=>{let[t,r]=(0,wJi.useState)(0);return(0,BJi.useEffect)(()=>{let n=()=>{r(33)},a=()=>{r(66)},o=()=>{r(100)};return e.on("read:end",n),e.on("transform:end",a),e.on("save:end",o),()=>{e.off("read:end",n),e.off("transform:end",a),e.off("save:end",o)}},[e,r]),(0,RJi.jsx)(rH,{value:t})};var Xvt=xt(gl(),1),Jvt=xt(gl(),1),NJi=xt(Ec(),1),DJi=xt(Ec(),1);var cte=xt(Wc(),1),kJi=({icons:e})=>{let[t,r]=(0,DJi.useState)("Initilization...");return(0,NJi.useEffect)(()=>{let n=()=>{r("Reading files...")},a=()=>{r("Transforming files...")},o=()=>{r("Saving files...")};return e.on("read:start",n),e.on("transform:start",a),e.on("save:start",o),()=>{e.off("read:start",n),e.off("transform:start",a),e.off("save:start",o)}},[e,r]),(0,cte.jsxs)(Xvt.Box,{flexDirection:"row",width:"100%",children:[(0,cte.jsxs)(Xvt.Box,{flexGrow:1,children:[(0,cte.jsx)(FG,{color:"cyan",children:"Icons:"}),(0,cte.jsx)(Jvt.Text,{children:" "}),(0,cte.jsx)(Jvt.Text,{color:"white",children:t})]}),(0,cte.jsx)(Xvt.Box,{flexDirection:"row",children:(0,cte.jsx)(Jvt.Text,{color:"green",children:GI.tick})})]})};var ble=xt(Wc(),1),FJi=({icons:e})=>{let[t,r]=(0,xJi.useState)(!1);return(0,GJi.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("save:end",n),()=>{e.off("save:end",n)}},[r]),t?null:(0,ble.jsx)(GKe.Box,{position:"relative",height:7,children:(0,ble.jsxs)(GKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,ble.jsx)(GKe.Box,{children:(0,ble.jsx)(kJi,{icons:e})}),(0,ble.jsx)(GKe.Box,{marginTop:1,marginBottom:1,children:(0,ble.jsx)(TJi,{icons:e})})]})})};import _Lc from"node:events";import{access as yLc}from"node:fs/promises";import{mkdtemp as bLc}from"node:fs/promises";import{readFile as ELc}from"node:fs/promises";import{readdir as SLc}from"node:fs/promises";import{writeFile as DUi}from"node:fs/promises";import{mkdir as vLc}from"node:fs/promises";import{tmpdir as BLc}from"node:os";import{join as lte}from"node:path";import{basename as kUi}from"node:path";import{extname as xUi}from"node:path";var iZc=/[\p{Lu}]/u,sZc=/[\p{Ll}]/u,ZJi=/^[\p{Lu}](?![\p{Lu}])/gu,WJi=/([\p{Alpha}\p{N}_]|$)/u,cVr=/[_.\- ]+/,oZc=new RegExp("^"+cVr.source),LJi=new RegExp(cVr.source+WJi.source,"gu"),VJi=new RegExp("\\d+"+WJi.source,"gu"),aZc=(e,t,r,n)=>{let a=!1,o=!1,l=!1,A=!1;for(let f=0;f2?e[f-3]==="-":!0,a&&iZc.test(I)?(e=e.slice(0,f)+"-"+e.slice(f),a=!1,l=o,o=!0,f++):o&&l&&sZc.test(I)&&(!A||n)?(e=e.slice(0,f-1)+"-"+e.slice(f-1),l=o,o=!1,a=!0):(a=t(I)===I&&r(I)!==I,l=o,o=r(I)===I&&t(I)!==I)}return e},cZc=(e,t)=>(ZJi.lastIndex=0,e.replaceAll(ZJi,r=>t(r))),lZc=(e,t)=>(LJi.lastIndex=0,VJi.lastIndex=0,e.replaceAll(VJi,(r,n,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(LJi,(r,n)=>t(n)));function lVr(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),n=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?cVr.test(e)?"":t.pascalCase?n(e):r(e):(e!==r(e)&&(e=aZc(e,r,n,t.preserveConsecutiveUppercase)),e=e.replace(oZc,""),e=t.preserveConsecutiveUppercase?cZc(e,r):r(e),t.pascalCase&&(e=n(e.charAt(0))+e.slice(1)),lZc(e,n))}var NUi=xt(RUi(),1);import{writeFile as hLc}from"node:fs/promises";import{mkdtemp as mLc}from"node:fs/promises";import{tmpdir as CLc}from"node:os";import{join as oBt}from"node:path";var aBt=class{constructor(t,r,n){this.loaders=t;this.cwd=r;this.target=n}async build(){let t=new NUi.default;return await this.applyCommon(t),await this.applyModules(t),t.toConfig()}async applyCommon(t){t.mode("development").bail(!1).target("async-node").optimization.minimize(!1),t.entry("replacements").add(oBt(this.cwd,"replacements")),t.entry("template").add(oBt(this.cwd,"template")),t.output.path(this.target).filename("[name].mjs"),t.output.library({type:"module"}),t.output.chunkFormat("module"),t.output.module(!0),t.resolve.extensions.add(".tsx").add(".ts").add(".js"),t.resolve.extensionAlias.set(".js",[".js",".ts"]).set(".jsx",[".jsx",".tsx"]).set(".cjs",[".cjs",".cts"]).set(".mjs",[".mjs",".mts"]),t.externalsType("import"),t.externalsPresets({node:!0}),t.experiments({outputModule:!0})}async applyModules(t){let r=oBt(await mLc(oBt(CLc(),"tools-icons-")),"tsconfig.json");await hLc(r,'{"include":["**/*"]}'),t.module.rule("ts").test(/.tsx?$/).use("ts").loader(this.loaders.tsLoader).options({transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...L6.compilerOptions,sourceMap:!0},context:this.cwd,configFile:r})}};var cBt=class e extends _Lc{constructor(r,n,a,o){super();this.svgr=r;this.webpack=n;this.loaders=a;this.cwd=o}static async initialize(r){let{transform:n,jsx:a}=await import("@atls/code-runtime/svgr"),{webpack:o,tsLoaderPath:l}=await import("@atls/code-runtime/webpack");return new e({transform:n,jsx:a},o,{tsLoader:l},r)}async generate(r={}){await this.save(await this.transform(await this.read(lte(this.cwd,"icons")),r))}async compileReplacementsAndTemplate(){let r=await bLc(lte(BLc(),"tools-icons-")),n=this.webpack(await new aBt(this.loaders,this.cwd,r).build());return await new Promise((a,o)=>{n.run(l=>{l&&o(l),a([])})}),{replacements:(await import(lte(r,"replacements.mjs"))).default,template:(await import(lte(r,"template.mjs"))).default}}async read(r){this.emit("read:start");let n=await SLc(r),a=await Promise.all(n.filter(o=>o.endsWith(".svg")).map(async o=>({source:await ELc(lte(r,o),"utf8"),component:lVr(kUi(o,xUi(o)),{pascalCase:!0}),name:kUi(o,xUi(o)),path:lte(r,o),file:o})));return this.emit("read:end"),a}async transform(r,n){this.emit("transform:start");let{replacements:a,template:o}=await this.compileReplacementsAndTemplate(),l=await Promise.all(r.map(async A=>{let f=await this.svgr.transform(A.source,{...n,icon:!0,template:o,typescript:!0,expandProps:!0,replaceAttrValues:a[`${A.component}Icon`]??{}},{componentName:`${A.component}Icon`,caller:{name:"@atls/code-icons",defaultPlugins:[this.svgr.jsx]}});return{...A,output:f}}));return this.emit("transform:end"),l}async save(r){this.emit("save:start");let n=lte(this.cwd,"src");try{await yLc(n)}catch{await vLc(n,{recursive:!0})}await Promise.all(r.map(async a=>DUi(lte(n,`${a.name}.icon.tsx`),a.output))),await DUi(lte(n,"index.ts"),r.map(a=>`export * from './${a.name}.icon.jsx'`).join(` +`)),this.emit("save:end")}};var EVr=xt(Wc(),1),LKe=class extends FUi.BaseCommand{static paths=[["ui","icons","generate"]];native=sA.Boolean("-n, --native",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(bVr.Filename.pnpCjs)&&t.includes(bVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await _Vr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await yVr.Project.find(t,this.context.cwd),n=await LUi.xfs.mktempPromise(),a=[];this.native&&a.push("--native");let{executable:o,env:l}=await BC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await ZUi.execUtils.pipevp(o,["ui","icons","generate",...a],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await _Vr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await yVr.Project.find(t,this.context.cwd),n=await cBt.initialize(this.context.cwd),{clear:a}=(0,VUi.render)((0,EVr.jsx)(FJi,{icons:n}));try{await n.generate({native:this.native});let o=(await L$("*.tsx",{cwd:GUi(this.context.cwd,"src")})).map(l=>GUi(wLc(r.cwd,this.context.cwd),"src",l));return await this.cli.run(["format",...o],{cwd:r.cwd}),await this.cli.run(["lint","--fix",...o],{cwd:r.cwd}),0}catch(o){return o instanceof Error?LE((0,EVr.jsx)(Pk,{error:o})).split(` +`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var WUi={commands:[LKe]};var LHr={};Uf(LHr,{default:()=>jts});var Jts=xt(sl(),1),Uts=xt(wn(),1),Kts=xt(wn(),1);vl();var OUi=(e,t)=>({stdout:e.context.stdout,configuration:t});var Yts=xt(No(),1),Qts=xt(No(),1);var Vts=xt(Hxe(),1),Wts=xt(Zts(),1);var Lts=e=>{let t=e.path;switch(e.kind){case"error":console.error(`ERROR! ${t} ${e.description==="alreadyExist"?"already exists":"does not exist"}.`);break;case"update":console.debug(`UPDATE ${t} (${e.content.length} bytes)`);break;case"create":console.debug(`CREATE ${t} (${e.content.length} bytes)`);break;case"delete":console.debug(`DELETE ${t}`);break;case"rename":console.debug(`RENAME ${t} => ${e.to}`);break}};var Ots=async(e,t,r)=>{let o=!0,l=new Wts.NodeWorkflow(process.cwd(),{force:!1,dryRun:!1,resolvePaths:[process.cwd(),import.meta.dirname],packageManager:"yarn"});l.reporter.subscribe(A=>{o=!1,Lts(A)});try{return await l.execute({collection:r,schematic:e,options:t,allowPrivate:!0,debug:!0}).toPromise(),o&&console.info("Nothing to be done."),0}catch(A){return A instanceof Vts.UnsuccessfulWorkflowExecution?console.debug("The Schematic workflow failed. See above."):A instanceof Error?console.debug(`An error occured: +${A.stack}`):console.debug(`Error: ${A instanceof Error?A.message:A}`),1}};var ZHr=xt(No(),1);import{mkdir as zal}from"node:fs/promises";var jal="dmFyIF9fY3JlYXRlID0gT2JqZWN0LmNyZWF0ZTsKdmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTsKdmFyIF9fZ2V0T3duUHJvcERlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOwp2YXIgX19nZXRPd25Qcm9wTmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczsKdmFyIF9fZ2V0UHJvdG9PZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKdmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7CnZhciBfX2NvbW1vbkpTID0gKGNiLCBtb2QpID0+IGZ1bmN0aW9uIF9fcmVxdWlyZSgpIHsKICByZXR1cm4gbW9kIHx8ICgwLCBjYltfX2dldE93blByb3BOYW1lcyhjYilbMF1dKSgobW9kID0geyBleHBvcnRzOiB7fSB9KS5leHBvcnRzLCBtb2QpLCBtb2QuZXhwb3J0czsKfTsKdmFyIF9fZXhwb3J0ID0gKHRhcmdldCwgYWxsKSA9PiB7CiAgZm9yICh2YXIgbmFtZSBpbiBhbGwpCiAgICBfX2RlZlByb3AodGFyZ2V0LCBuYW1lLCB7IGdldDogYWxsW25hbWVdLCBlbnVtZXJhYmxlOiB0cnVlIH0pOwp9Owp2YXIgX19jb3B5UHJvcHMgPSAodG8sIGZyb20sIGV4Y2VwdCwgZGVzYykgPT4gewogIGlmIChmcm9tICYmIHR5cGVvZiBmcm9tID09PSAib2JqZWN0IiB8fCB0eXBlb2YgZnJvbSA9PT0gImZ1bmN0aW9uIikgewogICAgZm9yIChsZXQga2V5IG9mIF9fZ2V0T3duUHJvcE5hbWVzKGZyb20pKQogICAgICBpZiAoIV9faGFzT3duUHJvcC5jYWxsKHRvLCBrZXkpICYmIGtleSAhPT0gZXhjZXB0KQogICAgICAgIF9fZGVmUHJvcCh0bywga2V5LCB7IGdldDogKCkgPT4gZnJvbVtrZXldLCBlbnVtZXJhYmxlOiAhKGRlc2MgPSBfX2dldE93blByb3BEZXNjKGZyb20sIGtleSkpIHx8IGRlc2MuZW51bWVyYWJsZSB9KTsKICB9CiAgcmV0dXJuIHRvOwp9Owp2YXIgX190b0VTTSA9IChtb2QsIGlzTm9kZU1vZGUsIHRhcmdldCkgPT4gKHRhcmdldCA9IG1vZCAhPSBudWxsID8gX19jcmVhdGUoX19nZXRQcm90b09mKG1vZCkpIDoge30sIF9fY29weVByb3BzKAogIC8vIElmIHRoZSBpbXBvcnRlciBpcyBpbiBub2RlIGNvbXBhdGliaWxpdHkgbW9kZSBvciB0aGlzIGlzIG5vdCBhbiBFU00KICAvLyBmaWxlIHRoYXQgaGFzIGJlZW4gY29udmVydGVkIHRvIGEgQ29tbW9uSlMgZmlsZSB1c2luZyBhIEJhYmVsLQogIC8vIGNvbXBhdGlibGUgdHJhbnNmb3JtIChpLmUuICJfX2VzTW9kdWxlIiBoYXMgbm90IGJlZW4gc2V0KSwgdGhlbiBzZXQKICAvLyAiZGVmYXVsdCIgdG8gdGhlIENvbW1vbkpTICJtb2R1bGUuZXhwb3J0cyIgZm9yIG5vZGUgY29tcGF0aWJpbGl0eS4KICBpc05vZGVNb2RlIHx8ICFtb2QgfHwgIW1vZC5fX2VzTW9kdWxlID8gX19kZWZQcm9wKHRhcmdldCwgImRlZmF1bHQiLCB7IHZhbHVlOiBtb2QsIGVudW1lcmFibGU6IHRydWUgfSkgOiB0YXJnZXQsCiAgbW9kCikpOwp2YXIgX190b0NvbW1vbkpTID0gKG1vZCkgPT4gX19jb3B5UHJvcHMoX19kZWZQcm9wKHt9LCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSksIG1vZCk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNKc29uT2JqZWN0ID0gaXNKc29uT2JqZWN0OwogICAgZXhwb3J0czIuaXNKc29uQXJyYXkgPSBpc0pzb25BcnJheTsKICAgIGZ1bmN0aW9uIGlzSnNvbk9iamVjdCh2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSnNvbkFycmF5KHZhbHVlKSB7CiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3V0aWxpdHkuanMKdmFyIHJlcXVpcmVfdXRpbGl0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdXRpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0VHlwZXNPZlNjaGVtYSA9IGdldFR5cGVzT2ZTY2hlbWE7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciBhbGxUeXBlcyA9IFsic3RyaW5nIiwgImludGVnZXIiLCAibnVtYmVyIiwgIm9iamVjdCIsICJhcnJheSIsICJib29sZWFuIiwgIm51bGwiXTsKICAgIGZ1bmN0aW9uIGdldFR5cGVzT2ZTY2hlbWEoc2NoZW1hMikgewogICAgICBpZiAoIXNjaGVtYTIpIHsKICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBuZXcgU2V0KGFsbFR5cGVzKTsKICAgICAgfQogICAgICBsZXQgcG90ZW50aWFsczsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnR5cGUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFtzY2hlbWEyLnR5cGVdKTsKICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIudHlwZSkpIHsKICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChzY2hlbWEyLnR5cGUpOwogICAgICB9IGVsc2UgaWYgKCgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShzY2hlbWEyLmVudW0pKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCB2IG9mIHNjaGVtYTIuZW51bSkgewogICAgICAgICAgc3dpdGNoICh0eXBlb2YgdikgewogICAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICBjYXNlICJib29sZWFuIjoKICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCh0eXBlb2Ygdik7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodikpIHsKICAgICAgICAgICAgICAgIHBvdGVudGlhbHMuYWRkKCJhcnJheSIpOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAodiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm51bGwiKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm9iamVjdCIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoYWxsVHlwZXMpOwogICAgICB9CiAgICAgIGlmICgoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIubm90KSkgewogICAgICAgIGNvbnN0IG5vdFR5cGVzID0gZ2V0VHlwZXNPZlNjaGVtYShzY2hlbWEyLm5vdCk7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLnBvdGVudGlhbHNdLmZpbHRlcigocCkgPT4gIW5vdFR5cGVzLmhhcyhwKSkpOwogICAgICB9CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIuYWxsT2YpKSB7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbGxPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChbLi4udHlwZXNdLmZpbHRlcigodCkgPT4gcG90ZW50aWFscy5oYXModCkpKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5vbmVPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5vbmVPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5hbnlPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbnlPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIucHJvcGVydGllcykgewogICAgICAgIHBvdGVudGlhbHMuYWRkKCJvYmplY3QiKTsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zKSB7CiAgICAgICAgcG90ZW50aWFscy5hZGQoImFycmF5Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvdGVudGlhbHM7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzCnZhciByZXF1aXJlX3RyYW5zZm9ybXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3RyYW5zZm9ybXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFkZFVuZGVmaW5lZERlZmF1bHRzID0gYWRkVW5kZWZpbmVkRGVmYXVsdHM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciB1dGlsaXR5XzEgPSByZXF1aXJlX3V0aWxpdHkoKTsKICAgIGZ1bmN0aW9uIGFkZFVuZGVmaW5lZERlZmF1bHRzKHZhbHVlLCBfcG9pbnRlciwgc2NoZW1hMikgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIiB8fCBzY2hlbWEyID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgdmFsdWUgPz89IHNjaGVtYTIuZGVmYXVsdDsKICAgICAgY29uc3QgdHlwZXMgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHNjaGVtYTIpOwogICAgICBpZiAodHlwZXMuc2l6ZSA9PT0gMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBsZXQgdHlwZTI7CiAgICAgIGlmICh0eXBlcy5zaXplID09PSAxKSB7CiAgICAgICAgdHlwZTIgPSBBcnJheS5mcm9tKHR5cGVzKVswXTsKICAgICAgfSBlbHNlIGlmICh0eXBlcy5zaXplID09PSAyICYmIHR5cGVzLmhhcygiYXJyYXkiKSAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYTIucHJvcGVydGllcyAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAib2JqZWN0IjsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zICYmIHR5cGVzLmhhcygiYXJyYXkiKSkgewogICAgICAgIHR5cGUyID0gImFycmF5IjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlID09IHZvaWQgMCA/IFtdIDogdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAib2JqZWN0IikgewogICAgICAgIGxldCBuZXdWYWx1ZTsKICAgICAgICBpZiAodmFsdWUgPT0gdm9pZCAwKSB7CiAgICAgICAgICBuZXdWYWx1ZSA9IHt9OwogICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIG5ld1ZhbHVlID0gdmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIucHJvcGVydGllcykpIHsKICAgICAgICAgIHJldHVybiBuZXdWYWx1ZTsKICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbcHJvcE5hbWUsIHNjaGVtYU9iamVjdF0gb2YgT2JqZWN0LmVudHJpZXMoc2NoZW1hMi5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgaWYgKHByb3BOYW1lID09PSAiJHNjaGVtYSIgfHwgISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoc2NoZW1hT2JqZWN0KSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZhbHVlMiA9IG5ld1ZhbHVlW3Byb3BOYW1lXTsKICAgICAgICAgIGlmICh2YWx1ZTIgPT09IHZvaWQgMCkgewogICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBzY2hlbWFPYmplY3QuZGVmYXVsdDsKICAgICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BlcnR5U2NoZW1hcyA9IHNjaGVtYU9iamVjdC5vbmVPZiB8fCBzY2hlbWFPYmplY3QuYW55T2Y7CiAgICAgICAgICAgIGNvbnN0IGFsbFByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyh2YWx1ZTIpOwogICAgICAgICAgICBjb25zdCBhZGp1c3RlZFNjaGVtYSA9ICgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShwcm9wZXJ0eVNjaGVtYXMpICYmIHByb3BlcnR5U2NoZW1hcy5maW5kKChzKSA9PiB7CiAgICAgICAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnN0IHNjaGVtYVR5cGUgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHMpOwogICAgICAgICAgICAgIGlmIChzY2hlbWFUeXBlLnNpemUgPT09IDEgJiYgc2NoZW1hVHlwZS5oYXMoIm9iamVjdCIpICYmICgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkocy5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5rZXlzKHMucHJvcGVydGllcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gYWxsUHJvcGVydGllcy5ldmVyeSgoa2V5KSA9PiBwcm9wZXJ0aWVzLmluY2x1ZGVzKGtleSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpZiAoYWRqdXN0ZWRTY2hlbWEgJiYgKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KShhZGp1c3RlZFNjaGVtYSkpIHsKICAgICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBhZGRVbmRlZmluZWREZWZhdWx0cyh2YWx1ZTIsIF9wb2ludGVyLCBhZGp1c3RlZFNjaGVtYSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld1ZhbHVlOwogICAgICB9CiAgICAgIHJldHVybiB2YWx1ZTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcG9pbnRlci5qcwp2YXIgcmVxdWlyZV9wb2ludGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9wb2ludGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWlsZEpzb25Qb2ludGVyID0gYnVpbGRKc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLmpvaW5Kc29uUG9pbnRlciA9IGpvaW5Kc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLnBhcnNlSnNvblBvaW50ZXIgPSBwYXJzZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gYnVpbGRKc29uUG9pbnRlcihmcmFnbWVudHMpIHsKICAgICAgcmV0dXJuICIvIiArIGZyYWdtZW50cy5tYXAoKGYpID0+IHsKICAgICAgICByZXR1cm4gZi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgICB9KS5qb2luKCIvIik7CiAgICB9CiAgICBmdW5jdGlvbiBqb2luSnNvblBvaW50ZXIocm9vdCwgLi4ub3RoZXJzKSB7CiAgICAgIGlmIChyb290ID09ICIvIikgewogICAgICAgIHJldHVybiBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJvb3QgKyBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZUpzb25Qb2ludGVyKHBvaW50ZXIpIHsKICAgICAgaWYgKHBvaW50ZXIgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICAgIGlmIChwb2ludGVyLmNoYXJBdCgwKSAhPT0gIi8iKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJSZWxhdGl2ZSBwb2ludGVyOiAiICsgcG9pbnRlcik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvaW50ZXIuc3Vic3RyaW5nKDEpLnNwbGl0KC9cLy8pLm1hcCgoc3RyMikgPT4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+IikpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMKdmFyIHJlcXVpcmVfY29kZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBleHBvcnRzMi5zYWZlU3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuYWRkQ29kZUFyZyA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5uaWwgPSBleHBvcnRzMi5fQ29kZSA9IGV4cG9ydHMyLk5hbWUgPSBleHBvcnRzMi5JREVOVElGSUVSID0gZXhwb3J0czIuX0NvZGVPck5hbWUgPSB2b2lkIDA7CiAgICB2YXIgX0NvZGVPck5hbWUgPSBjbGFzcyB7CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGVPck5hbWUgPSBfQ29kZU9yTmFtZTsKICAgIGV4cG9ydHMyLklERU5USUZJRVIgPSAvXlthLXokX11bYS16JF8wLTldKiQvaTsKICAgIHZhciBOYW1lID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIGlmICghZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KHMpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiBuYW1lIG11c3QgYmUgYSB2YWxpZCBpZGVudGlmaWVyIik7CiAgICAgICAgdGhpcy5zdHIgPSBzOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLnN0cjsKICAgICAgfQogICAgICBlbXB0eVN0cigpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB7IFt0aGlzLnN0cl06IDEgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5hbWUgPSBOYW1lOwogICAgdmFyIF9Db2RlID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvZGUpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuX2l0ZW1zID0gdHlwZW9mIGNvZGUgPT09ICJzdHJpbmciID8gW2NvZGVdIDogY29kZTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdHI7CiAgICAgIH0KICAgICAgZW1wdHlTdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDEpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuX2l0ZW1zWzBdOwogICAgICAgIHJldHVybiBpdGVtID09PSAiIiB8fCBpdGVtID09PSAnIiInOwogICAgICB9CiAgICAgIGdldCBzdHIoKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLl9zdHIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMuX3N0ciA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgocywgYykgPT4gYCR7c30ke2N9YCwgIiIpOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX25hbWVzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLl9uYW1lcyA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgobmFtZXMsIGMpID0+IHsKICAgICAgICAgIGlmIChjIGluc3RhbmNlb2YgTmFtZSkKICAgICAgICAgICAgbmFtZXNbYy5zdHJdID0gKG5hbWVzW2Muc3RyXSB8fCAwKSArIDE7CiAgICAgICAgICByZXR1cm4gbmFtZXM7CiAgICAgICAgfSwge30pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGUgPSBfQ29kZTsKICAgIGV4cG9ydHMyLm5pbCA9IG5ldyBfQ29kZSgiIik7CiAgICBmdW5jdGlvbiBfKHN0cnMsIC4uLmFyZ3MpIHsKICAgICAgY29uc3QgY29kZSA9IFtzdHJzWzBdXTsKICAgICAgbGV0IGkgPSAwOwogICAgICB3aGlsZSAoaSA8IGFyZ3MubGVuZ3RoKSB7CiAgICAgICAgYWRkQ29kZUFyZyhjb2RlLCBhcmdzW2ldKTsKICAgICAgICBjb2RlLnB1c2goc3Ryc1srK2ldKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IF9Db2RlKGNvZGUpOwogICAgfQogICAgZXhwb3J0czIuXyA9IF87CiAgICB2YXIgcGx1cyA9IG5ldyBfQ29kZSgiKyIpOwogICAgZnVuY3Rpb24gc3RyMihzdHJzLCAuLi5hcmdzKSB7CiAgICAgIGNvbnN0IGV4cHIgPSBbc2FmZVN0cmluZ2lmeShzdHJzWzBdKV07CiAgICAgIGxldCBpID0gMDsKICAgICAgd2hpbGUgKGkgPCBhcmdzLmxlbmd0aCkgewogICAgICAgIGV4cHIucHVzaChwbHVzKTsKICAgICAgICBhZGRDb2RlQXJnKGV4cHIsIGFyZ3NbaV0pOwogICAgICAgIGV4cHIucHVzaChwbHVzLCBzYWZlU3RyaW5naWZ5KHN0cnNbKytpXSkpOwogICAgICB9CiAgICAgIG9wdGltaXplKGV4cHIpOwogICAgICByZXR1cm4gbmV3IF9Db2RlKGV4cHIpOwogICAgfQogICAgZXhwb3J0czIuc3RyID0gc3RyMjsKICAgIGZ1bmN0aW9uIGFkZENvZGVBcmcoY29kZSwgYXJnKSB7CiAgICAgIGlmIChhcmcgaW5zdGFuY2VvZiBfQ29kZSkKICAgICAgICBjb2RlLnB1c2goLi4uYXJnLl9pdGVtcyk7CiAgICAgIGVsc2UgaWYgKGFyZyBpbnN0YW5jZW9mIE5hbWUpCiAgICAgICAgY29kZS5wdXNoKGFyZyk7CiAgICAgIGVsc2UKICAgICAgICBjb2RlLnB1c2goaW50ZXJwb2xhdGUoYXJnKSk7CiAgICB9CiAgICBleHBvcnRzMi5hZGRDb2RlQXJnID0gYWRkQ29kZUFyZzsKICAgIGZ1bmN0aW9uIG9wdGltaXplKGV4cHIpIHsKICAgICAgbGV0IGkgPSAxOwogICAgICB3aGlsZSAoaSA8IGV4cHIubGVuZ3RoIC0gMSkgewogICAgICAgIGlmIChleHByW2ldID09PSBwbHVzKSB7CiAgICAgICAgICBjb25zdCByZXMgPSBtZXJnZUV4cHJJdGVtcyhleHByW2kgLSAxXSwgZXhwcltpICsgMV0pOwogICAgICAgICAgaWYgKHJlcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGV4cHIuc3BsaWNlKGkgLSAxLCAzLCByZXMpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGV4cHJbaSsrXSA9ICIrIjsKICAgICAgICB9CiAgICAgICAgaSsrOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZUV4cHJJdGVtcyhhLCBiKSB7CiAgICAgIGlmIChiID09PSAnIiInKQogICAgICAgIHJldHVybiBhOwogICAgICBpZiAoYSA9PT0gJyIiJykKICAgICAgICByZXR1cm4gYjsKICAgICAgaWYgKHR5cGVvZiBhID09ICJzdHJpbmciKSB7CiAgICAgICAgaWYgKGIgaW5zdGFuY2VvZiBOYW1lIHx8IGFbYS5sZW5ndGggLSAxXSAhPT0gJyInKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0eXBlb2YgYiAhPSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiBgJHthLnNsaWNlKDAsIC0xKX0ke2J9ImA7CiAgICAgICAgaWYgKGJbMF0gPT09ICciJykKICAgICAgICAgIHJldHVybiBhLnNsaWNlKDAsIC0xKSArIGIuc2xpY2UoMSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgYiA9PSAic3RyaW5nIiAmJiBiWzBdID09PSAnIicgJiYgIShhIGluc3RhbmNlb2YgTmFtZSkpCiAgICAgICAgcmV0dXJuIGAiJHthfSR7Yi5zbGljZSgxKX1gOwogICAgICByZXR1cm47CiAgICB9CiAgICBmdW5jdGlvbiBzdHJDb25jYXQoYzEsIGMyKSB7CiAgICAgIHJldHVybiBjMi5lbXB0eVN0cigpID8gYzEgOiBjMS5lbXB0eVN0cigpID8gYzIgOiBzdHIyYCR7YzF9JHtjMn1gOwogICAgfQogICAgZXhwb3J0czIuc3RyQ29uY2F0ID0gc3RyQ29uY2F0OwogICAgZnVuY3Rpb24gaW50ZXJwb2xhdGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gIm51bWJlciIgfHwgdHlwZW9mIHggPT0gImJvb2xlYW4iIHx8IHggPT09IG51bGwgPyB4IDogc2FmZVN0cmluZ2lmeShBcnJheS5pc0FycmF5KHgpID8geC5qb2luKCIsIikgOiB4KTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmluZ2lmeSh4KSB7CiAgICAgIHJldHVybiBuZXcgX0NvZGUoc2FmZVN0cmluZ2lmeSh4KSk7CiAgICB9CiAgICBleHBvcnRzMi5zdHJpbmdpZnkgPSBzdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBzYWZlU3RyaW5naWZ5KHgpIHsKICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHgpLnJlcGxhY2UoL1x1MjAyOC9nLCAiXFx1MjAyOCIpLnJlcGxhY2UoL1x1MjAyOS9nLCAiXFx1MjAyOSIpOwogICAgfQogICAgZXhwb3J0czIuc2FmZVN0cmluZ2lmeSA9IHNhZmVTdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBnZXRQcm9wZXJ0eShrZXkpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBrZXkgPT0gInN0cmluZyIgJiYgZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KGtleSkgPyBuZXcgX0NvZGUoYC4ke2tleX1gKSA6IF9gWyR7a2V5fV1gOwogICAgfQogICAgZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBnZXRQcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIGdldEVzbUV4cG9ydE5hbWUoa2V5KSB7CiAgICAgIGlmICh0eXBlb2Yga2V5ID09ICJzdHJpbmciICYmIGV4cG9ydHMyLklERU5USUZJRVIudGVzdChrZXkpKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfQ29kZShgJHtrZXl9YCk7CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBpbnZhbGlkIGV4cG9ydCBuYW1lOiAke2tleX0sIHVzZSBleHBsaWNpdCAkaWQgbmFtZSBtYXBwaW5nYCk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZ2V0RXNtRXhwb3J0TmFtZTsKICAgIGZ1bmN0aW9uIHJlZ2V4cENvZGUocngpIHsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShyeC50b1N0cmluZygpKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSByZWdleHBDb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL3Njb3BlLmpzCnZhciByZXF1aXJlX3Njb3BlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vc2NvcGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IGV4cG9ydHMyLlNjb3BlID0gZXhwb3J0czIudmFyS2luZHMgPSBleHBvcnRzMi5Vc2VkVmFsdWVTdGF0ZSA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBWYWx1ZUVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgQ29kZUdlbjogImNvZGUiIGZvciAke25hbWV9IG5vdCBkZWZpbmVkYCk7CiAgICAgICAgdGhpcy52YWx1ZSA9IG5hbWUudmFsdWU7CiAgICAgIH0KICAgIH07CiAgICB2YXIgVXNlZFZhbHVlU3RhdGU7CiAgICAoZnVuY3Rpb24oVXNlZFZhbHVlU3RhdGUyKSB7CiAgICAgIFVzZWRWYWx1ZVN0YXRlMltVc2VkVmFsdWVTdGF0ZTJbIlN0YXJ0ZWQiXSA9IDBdID0gIlN0YXJ0ZWQiOwogICAgICBVc2VkVmFsdWVTdGF0ZTJbVXNlZFZhbHVlU3RhdGUyWyJDb21wbGV0ZWQiXSA9IDFdID0gIkNvbXBsZXRlZCI7CiAgICB9KShVc2VkVmFsdWVTdGF0ZSB8fCAoZXhwb3J0czIuVXNlZFZhbHVlU3RhdGUgPSBVc2VkVmFsdWVTdGF0ZSA9IHt9KSk7CiAgICBleHBvcnRzMi52YXJLaW5kcyA9IHsKICAgICAgY29uc3Q6IG5ldyBjb2RlXzEuTmFtZSgiY29uc3QiKSwKICAgICAgbGV0OiBuZXcgY29kZV8xLk5hbWUoImxldCIpLAogICAgICB2YXI6IG5ldyBjb2RlXzEuTmFtZSgidmFyIikKICAgIH07CiAgICB2YXIgU2NvcGUgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKHsgcHJlZml4ZXMsIHBhcmVudCB9ID0ge30pIHsKICAgICAgICB0aGlzLl9uYW1lcyA9IHt9OwogICAgICAgIHRoaXMuX3ByZWZpeGVzID0gcHJlZml4ZXM7CiAgICAgICAgdGhpcy5fcGFyZW50ID0gcGFyZW50OwogICAgICB9CiAgICAgIHRvTmFtZShuYW1lT3JQcmVmaXgpIHsKICAgICAgICByZXR1cm4gbmFtZU9yUHJlZml4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBuYW1lT3JQcmVmaXggOiB0aGlzLm5hbWUobmFtZU9yUHJlZml4KTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgY29kZV8xLk5hbWUodGhpcy5fbmV3TmFtZShwcmVmaXgpKTsKICAgICAgfQogICAgICBfbmV3TmFtZShwcmVmaXgpIHsKICAgICAgICBjb25zdCBuZyA9IHRoaXMuX25hbWVzW3ByZWZpeF0gfHwgdGhpcy5fbmFtZUdyb3VwKHByZWZpeCk7CiAgICAgICAgcmV0dXJuIGAke3ByZWZpeH0ke25nLmluZGV4Kyt9YDsKICAgICAgfQogICAgICBfbmFtZUdyb3VwKHByZWZpeCkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgaWYgKCgoX2IgPSAoX2EgPSB0aGlzLl9wYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5fcHJlZml4ZXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5oYXMocHJlZml4KSkgfHwgdGhpcy5fcHJlZml4ZXMgJiYgIXRoaXMuX3ByZWZpeGVzLmhhcyhwcmVmaXgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IHByZWZpeCAiJHtwcmVmaXh9IiBpcyBub3QgYWxsb3dlZCBpbiB0aGlzIHNjb3BlYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9uYW1lc1twcmVmaXhdID0geyBwcmVmaXgsIGluZGV4OiAwIH07CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZSA9IFNjb3BlOwogICAgdmFyIFZhbHVlU2NvcGVOYW1lID0gY2xhc3MgZXh0ZW5kcyBjb2RlXzEuTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHByZWZpeCwgbmFtZVN0cikgewogICAgICAgIHN1cGVyKG5hbWVTdHIpOwogICAgICAgIHRoaXMucHJlZml4ID0gcHJlZml4OwogICAgICB9CiAgICAgIHNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5LCBpdGVtSW5kZXggfSkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLnNjb3BlUGF0aCA9ICgwLCBjb2RlXzEuXylgLiR7bmV3IGNvZGVfMS5OYW1lKHByb3BlcnR5KX1bJHtpdGVtSW5kZXh9XWA7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IFZhbHVlU2NvcGVOYW1lOwogICAgdmFyIGxpbmUgPSAoMCwgY29kZV8xLl8pYFxuYDsKICAgIHZhciBWYWx1ZVNjb3BlID0gY2xhc3MgZXh0ZW5kcyBTY29wZSB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMpIHsKICAgICAgICBzdXBlcihvcHRzKTsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9zY29wZSA9IG9wdHMuc2NvcGU7CiAgICAgICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBfbjogb3B0cy5saW5lcyA/IGxpbmUgOiBjb2RlXzEubmlsIH07CiAgICAgIH0KICAgICAgZ2V0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9zY29wZTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgVmFsdWVTY29wZU5hbWUocHJlZml4LCB0aGlzLl9uZXdOYW1lKHByZWZpeCkpOwogICAgICB9CiAgICAgIHZhbHVlKG5hbWVPclByZWZpeCwgdmFsdWUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHZhbHVlLnJlZiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiByZWYgbXVzdCBiZSBwYXNzZWQgaW4gdmFsdWUiKTsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBjb25zdCB7IHByZWZpeCB9ID0gbmFtZTsKICAgICAgICBjb25zdCB2YWx1ZUtleSA9IChfYSA9IHZhbHVlLmtleSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsdWUucmVmOwogICAgICAgIGxldCB2cyA9IHRoaXMuX3ZhbHVlc1twcmVmaXhdOwogICAgICAgIGlmICh2cykgewogICAgICAgICAgY29uc3QgX25hbWUgPSB2cy5nZXQodmFsdWVLZXkpOwogICAgICAgICAgaWYgKF9uYW1lKQogICAgICAgICAgICByZXR1cm4gX25hbWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZzID0gdGhpcy5fdmFsdWVzW3ByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIH0KICAgICAgICB2cy5zZXQodmFsdWVLZXksIG5hbWUpOwogICAgICAgIGNvbnN0IHMgPSB0aGlzLl9zY29wZVtwcmVmaXhdIHx8ICh0aGlzLl9zY29wZVtwcmVmaXhdID0gW10pOwogICAgICAgIGNvbnN0IGl0ZW1JbmRleCA9IHMubGVuZ3RoOwogICAgICAgIHNbaXRlbUluZGV4XSA9IHZhbHVlLnJlZjsKICAgICAgICBuYW1lLnNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5OiBwcmVmaXgsIGl0ZW1JbmRleCB9KTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICBnZXRWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgY29uc3QgdnMgPSB0aGlzLl92YWx1ZXNbcHJlZml4XTsKICAgICAgICBpZiAoIXZzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHJldHVybiB2cy5nZXQoa2V5T3JSZWYpOwogICAgICB9CiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUsIHZhbHVlcyA9IHRoaXMuX3ZhbHVlcykgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUuc2NvcGVQYXRoID09PSB2b2lkIDApCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogbmFtZSAiJHtuYW1lfSIgaGFzIG5vIHZhbHVlYCk7CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVfMS5fKWAke3Njb3BlTmFtZX0ke25hbWUuc2NvcGVQYXRofWA7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgc2NvcGVDb2RlKHZhbHVlcyA9IHRoaXMuX3ZhbHVlcywgdXNlZFZhbHVlcywgZ2V0Q29kZSkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUudmFsdWUgPT09IHZvaWQgMCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBuYW1lICIke25hbWV9IiBoYXMgbm8gdmFsdWVgKTsKICAgICAgICAgIHJldHVybiBuYW1lLnZhbHVlLmNvZGU7CiAgICAgICAgfSwgdXNlZFZhbHVlcywgZ2V0Q29kZSk7CiAgICAgIH0KICAgICAgX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIHZhbHVlQ29kZSwgdXNlZFZhbHVlcyA9IHt9LCBnZXRDb2RlKSB7CiAgICAgICAgbGV0IGNvZGUgPSBjb2RlXzEubmlsOwogICAgICAgIGZvciAoY29uc3QgcHJlZml4IGluIHZhbHVlcykgewogICAgICAgICAgY29uc3QgdnMgPSB2YWx1ZXNbcHJlZml4XTsKICAgICAgICAgIGlmICghdnMpCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgY29uc3QgbmFtZVNldCA9IHVzZWRWYWx1ZXNbcHJlZml4XSA9IHVzZWRWYWx1ZXNbcHJlZml4XSB8fCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgICAgdnMuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAobmFtZVNldC5oYXMobmFtZSkpCiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICBuYW1lU2V0LnNldChuYW1lLCBVc2VkVmFsdWVTdGF0ZS5TdGFydGVkKTsKICAgICAgICAgICAgbGV0IGMgPSB2YWx1ZUNvZGUobmFtZSk7CiAgICAgICAgICAgIGlmIChjKSB7CiAgICAgICAgICAgICAgY29uc3QgZGVmID0gdGhpcy5vcHRzLmVzNSA/IGV4cG9ydHMyLnZhcktpbmRzLnZhciA6IGV4cG9ydHMyLnZhcktpbmRzLmNvbnN0OwogICAgICAgICAgICAgIGNvZGUgPSAoMCwgY29kZV8xLl8pYCR7Y29kZX0ke2RlZn0gJHtuYW1lfSA9ICR7Y307JHt0aGlzLm9wdHMuX259YDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjID0gZ2V0Q29kZSA9PT0gbnVsbCB8fCBnZXRDb2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnZXRDb2RlKG5hbWUpKSB7CiAgICAgICAgICAgICAgY29kZSA9ICgwLCBjb2RlXzEuXylgJHtjb2RlfSR7Y30ke3RoaXMub3B0cy5fbn1gOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRocm93IG5ldyBWYWx1ZUVycm9yKG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5hbWVTZXQuc2V0KG5hbWUsIFVzZWRWYWx1ZVN0YXRlLkNvbXBsZXRlZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlID0gVmFsdWVTY29wZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9pbmRleC5qcwp2YXIgcmVxdWlyZV9jb2RlZ2VuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9yID0gZXhwb3J0czIuYW5kID0gZXhwb3J0czIubm90ID0gZXhwb3J0czIuQ29kZUdlbiA9IGV4cG9ydHMyLm9wZXJhdG9ycyA9IGV4cG9ydHMyLnZhcktpbmRzID0gZXhwb3J0czIuVmFsdWVTY29wZU5hbWUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlID0gZXhwb3J0czIuU2NvcGUgPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIucmVnZXhwQ29kZSA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLmdldFByb3BlcnR5ID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBzY29wZV8xID0gcmVxdWlyZV9zY29wZSgpOwogICAgdmFyIGNvZGVfMiA9IHJlcXVpcmVfY29kZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyQ29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnN0ckNvbmNhdDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdldFByb3BlcnR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLmdldFByb3BlcnR5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ2lmeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHJpbmdpZnk7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVnZXhwQ29kZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5yZWdleHBDb2RlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuTmFtZTsKICAgIH0gfSk7CiAgICB2YXIgc2NvcGVfMiA9IHJlcXVpcmVfc2NvcGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5TY29wZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWx1ZVNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZhbHVlU2NvcGVOYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ2YXJLaW5kcyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIudmFyS2luZHM7CiAgICB9IH0pOwogICAgZXhwb3J0czIub3BlcmF0b3JzID0gewogICAgICBHVDogbmV3IGNvZGVfMS5fQ29kZSgiPiIpLAogICAgICBHVEU6IG5ldyBjb2RlXzEuX0NvZGUoIj49IiksCiAgICAgIExUOiBuZXcgY29kZV8xLl9Db2RlKCI8IiksCiAgICAgIExURTogbmV3IGNvZGVfMS5fQ29kZSgiPD0iKSwKICAgICAgRVE6IG5ldyBjb2RlXzEuX0NvZGUoIj09PSIpLAogICAgICBORVE6IG5ldyBjb2RlXzEuX0NvZGUoIiE9PSIpLAogICAgICBOT1Q6IG5ldyBjb2RlXzEuX0NvZGUoIiEiKSwKICAgICAgT1I6IG5ldyBjb2RlXzEuX0NvZGUoInx8IiksCiAgICAgIEFORDogbmV3IGNvZGVfMS5fQ29kZSgiJiYiKSwKICAgICAgQUREOiBuZXcgY29kZV8xLl9Db2RlKCIrIikKICAgIH07CiAgICB2YXIgTm9kZSA9IGNsYXNzIHsKICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKF9uYW1lcywgX2NvbnN0YW50cykgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgdmFyIERlZiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKHZhcktpbmQsIG5hbWUsIHJocykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucmhzID0gcmhzOwogICAgICB9CiAgICAgIHJlbmRlcih7IGVzNSwgX24gfSkgewogICAgICAgIGNvbnN0IHZhcktpbmQgPSBlczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHRoaXMudmFyS2luZDsKICAgICAgICBjb25zdCByaHMgPSB0aGlzLnJocyA9PT0gdm9pZCAwID8gIiIgOiBgID0gJHt0aGlzLnJoc31gOwogICAgICAgIHJldHVybiBgJHt2YXJLaW5kfSAke3RoaXMubmFtZX0ke3Joc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghbmFtZXNbdGhpcy5uYW1lLnN0cl0pCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKHRoaXMucmhzKQogICAgICAgICAgdGhpcy5yaHMgPSBvcHRpbWl6ZUV4cHIodGhpcy5yaHMsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5yaHMgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyB0aGlzLnJocy5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5saHMgPSBsaHM7CiAgICAgICAgdGhpcy5yaHMgPSByaHM7CiAgICAgICAgdGhpcy5zaWRlRWZmZWN0cyA9IHNpZGVFZmZlY3RzOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5saHN9ID0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICh0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lICYmICFuYW1lc1t0aGlzLmxocy5zdHJdICYmICF0aGlzLnNpZGVFZmZlY3RzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMucmhzID0gb3B0aW1pemVFeHByKHRoaXMucmhzLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSB0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lID8ge30gOiB7IC4uLnRoaXMubGhzLm5hbWVzIH07CiAgICAgICAgcmV0dXJuIGFkZEV4cHJOYW1lcyhuYW1lcywgdGhpcy5yaHMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbk9wID0gY2xhc3MgZXh0ZW5kcyBBc3NpZ24gewogICAgICBjb25zdHJ1Y3RvcihsaHMsIG9wLCByaHMsIHNpZGVFZmZlY3RzKSB7CiAgICAgICAgc3VwZXIobGhzLCByaHMsIHNpZGVFZmZlY3RzKTsKICAgICAgICB0aGlzLm9wID0gb3A7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxoc30gJHt0aGlzLm9wfT0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICB9OwogICAgdmFyIExhYmVsID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IobGFiZWwpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubGFiZWwgPSBsYWJlbDsKICAgICAgICB0aGlzLm5hbWVzID0ge307CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxhYmVsfTpgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgQnJlYWsgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihsYWJlbCkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5sYWJlbCA9IGxhYmVsOwogICAgICAgIHRoaXMubmFtZXMgPSB7fTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmxhYmVsID8gYCAke3RoaXMubGFiZWx9YCA6ICIiOwogICAgICAgIHJldHVybiBgYnJlYWske2xhYmVsfTtgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgVGhyb3cgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihlcnJvcikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYHRocm93ICR7dGhpcy5lcnJvcn07YCArIF9uOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5lcnJvci5uYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBBbnlDb2RlID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IoY29kZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX07YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX1gID8gdGhpcyA6IHZvaWQgMDsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICB0aGlzLmNvZGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5jb2RlLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY29kZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZU9yTmFtZSA/IHRoaXMuY29kZS5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIFBhcmVudE5vZGUgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3Rvcihub2RlcyA9IFtdKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5vZGVzID0gbm9kZXM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5ub2Rlcy5yZWR1Y2UoKGNvZGUsIG4pID0+IGNvZGUgKyBuLnJlbmRlcihvcHRzKSwgIiIpOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV0ub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobikpCiAgICAgICAgICAgIG5vZGVzLnNwbGljZShpLCAxLCAuLi5uKTsKICAgICAgICAgIGVsc2UgaWYgKG4pCiAgICAgICAgICAgIG5vZGVzW2ldID0gbjsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV07CiAgICAgICAgICBpZiAobi5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIHN1YnRyYWN0TmFtZXMobmFtZXMsIG4ubmFtZXMpOwogICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLm5vZGVzLnJlZHVjZSgobmFtZXMsIG4pID0+IGFkZE5hbWVzKG5hbWVzLCBuLm5hbWVzKSwge30pOwogICAgICB9CiAgICB9OwogICAgdmFyIEJsb2NrTm9kZSA9IGNsYXNzIGV4dGVuZHMgUGFyZW50Tm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuICJ7IiArIG9wdHMuX24gKyBzdXBlci5yZW5kZXIob3B0cykgKyAifSIgKyBvcHRzLl9uOwogICAgICB9CiAgICB9OwogICAgdmFyIFJvb3QgPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgfTsKICAgIHZhciBFbHNlID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgfTsKICAgIEVsc2Uua2luZCA9ICJlbHNlIjsKICAgIHZhciBJZiA9IGNsYXNzIF9JZiBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvbmRpdGlvbiwgbm9kZXMpIHsKICAgICAgICBzdXBlcihub2Rlcyk7CiAgICAgICAgdGhpcy5jb25kaXRpb24gPSBjb25kaXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9IGBpZigke3RoaXMuY29uZGl0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmVsc2UpCiAgICAgICAgICBjb2RlICs9ICJlbHNlICIgKyB0aGlzLmVsc2UucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgc3VwZXIub3B0aW1pemVOb2RlcygpOwogICAgICAgIGNvbnN0IGNvbmQgPSB0aGlzLmNvbmRpdGlvbjsKICAgICAgICBpZiAoY29uZCA9PT0gdHJ1ZSkKICAgICAgICAgIHJldHVybiB0aGlzLm5vZGVzOwogICAgICAgIGxldCBlID0gdGhpcy5lbHNlOwogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBjb25zdCBucyA9IGUub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgZSA9IHRoaXMuZWxzZSA9IEFycmF5LmlzQXJyYXkobnMpID8gbmV3IEVsc2UobnMpIDogbnM7CiAgICAgICAgfQogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBpZiAoY29uZCA9PT0gZmFsc2UpCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgX0lmID8gZSA6IGUubm9kZXM7CiAgICAgICAgICBpZiAodGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgICAgcmV0dXJuIG5ldyBfSWYobm90KGNvbmQpLCBlIGluc3RhbmNlb2YgX0lmID8gW2VdIDogZS5ub2Rlcyk7CiAgICAgICAgfQogICAgICAgIGlmIChjb25kID09PSBmYWxzZSB8fCAhdGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLmVsc2UgPSAoX2EgPSB0aGlzLmVsc2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIGlmICghKHN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgfHwgdGhpcy5lbHNlKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLmNvbmRpdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLmNvbmRpdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgYWRkRXhwck5hbWVzKG5hbWVzLCB0aGlzLmNvbmRpdGlvbik7CiAgICAgICAgaWYgKHRoaXMuZWxzZSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmVsc2UubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIElmLmtpbmQgPSAiaWYiOwogICAgdmFyIEZvciA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgIH07CiAgICBGb3Iua2luZCA9ICJmb3IiOwogICAgdmFyIEZvckxvb3AgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGl0ZXJhdGlvbikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5pdGVyYXRpb24gPSBpdGVyYXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMuaXRlcmF0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLml0ZXJhdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLml0ZXJhdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYXRpb24ubmFtZXMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvclJhbmdlID0gY2xhc3MgZXh0ZW5kcyBGb3IgewogICAgICBjb25zdHJ1Y3Rvcih2YXJLaW5kLCBuYW1lLCBmcm9tLCB0bykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuZnJvbSA9IGZyb207CiAgICAgICAgdGhpcy50byA9IHRvOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgY29uc3QgdmFyS2luZCA9IG9wdHMuZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiB0aGlzLnZhcktpbmQ7CiAgICAgICAgY29uc3QgeyBuYW1lLCBmcm9tLCB0byB9ID0gdGhpczsKICAgICAgICByZXR1cm4gYGZvcigke3ZhcktpbmR9ICR7bmFtZX09JHtmcm9tfTsgJHtuYW1lfTwke3RvfTsgJHtuYW1lfSsrKWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gYWRkRXhwck5hbWVzKHN1cGVyLm5hbWVzLCB0aGlzLmZyb20pOwogICAgICAgIHJldHVybiBhZGRFeHByTmFtZXMobmFtZXMsIHRoaXMudG8pOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvckl0ZXIgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGxvb3AsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxvb3AgPSBsb29wOwogICAgICAgIHRoaXMudmFyS2luZCA9IHZhcktpbmQ7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLml0ZXJhYmxlID0gaXRlcmFibGU7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMudmFyS2luZH0gJHt0aGlzLm5hbWV9ICR7dGhpcy5sb29wfSAke3RoaXMuaXRlcmFibGV9KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKCFzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMuaXRlcmFibGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5pdGVyYWJsZSwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYWJsZS5uYW1lcyk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRnVuYyA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgYXJncywgYXN5bmMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5hcmdzID0gYXJnczsKICAgICAgICB0aGlzLmFzeW5jID0gYXN5bmM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBjb25zdCBfYXN5bmMgPSB0aGlzLmFzeW5jID8gImFzeW5jICIgOiAiIjsKICAgICAgICByZXR1cm4gYCR7X2FzeW5jfWZ1bmN0aW9uICR7dGhpcy5uYW1lfSgke3RoaXMuYXJnc30pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIEZ1bmMua2luZCA9ICJmdW5jIjsKICAgIHZhciBSZXR1cm4gPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiAicmV0dXJuICIgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBSZXR1cm4ua2luZCA9ICJyZXR1cm4iOwogICAgdmFyIFRyeSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9ICJ0cnkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmNhdGNoKQogICAgICAgICAgY29kZSArPSB0aGlzLmNhdGNoLnJlbmRlcihvcHRzKTsKICAgICAgICBpZiAodGhpcy5maW5hbGx5KQogICAgICAgICAgY29kZSArPSB0aGlzLmZpbmFsbHkucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgKF9hID0gdGhpcy5jYXRjaCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAoX2IgPSB0aGlzLmZpbmFsbHkpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYSA9IHRoaXMuY2F0Y2gpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYiA9IHRoaXMuZmluYWxseSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgaWYgKHRoaXMuY2F0Y2gpCiAgICAgICAgICBhZGROYW1lcyhuYW1lcywgdGhpcy5jYXRjaC5uYW1lcyk7CiAgICAgICAgaWYgKHRoaXMuZmluYWxseSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmZpbmFsbHkubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBDYXRjaCA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IoZXJyb3IpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiBgY2F0Y2goJHt0aGlzLmVycm9yfSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgQ2F0Y2gua2luZCA9ICJjYXRjaCI7CiAgICB2YXIgRmluYWxseSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gImZpbmFsbHkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgRmluYWxseS5raW5kID0gImZpbmFsbHkiOwogICAgdmFyIENvZGVHZW4gPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGV4dFNjb3BlLCBvcHRzID0ge30pIHsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9ibG9ja1N0YXJ0cyA9IFtdOwogICAgICAgIHRoaXMuX2NvbnN0YW50cyA9IHt9OwogICAgICAgIHRoaXMub3B0cyA9IHsgLi4ub3B0cywgX246IG9wdHMubGluZXMgPyAiXG4iIDogIiIgfTsKICAgICAgICB0aGlzLl9leHRTY29wZSA9IGV4dFNjb3BlOwogICAgICAgIHRoaXMuX3Njb3BlID0gbmV3IHNjb3BlXzEuU2NvcGUoeyBwYXJlbnQ6IGV4dFNjb3BlIH0pOwogICAgICAgIHRoaXMuX25vZGVzID0gW25ldyBSb290KCldOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnJlbmRlcih0aGlzLm9wdHMpOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgdW5pcXVlIG5hbWUgaW4gdGhlIGludGVybmFsIHNjb3BlCiAgICAgIG5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Njb3BlLm5hbWUocHJlZml4KTsKICAgICAgfQogICAgICAvLyByZXNlcnZlcyB1bmlxdWUgbmFtZSBpbiB0aGUgZXh0ZXJuYWwgc2NvcGUKICAgICAgc2NvcGVOYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5uYW1lKHByZWZpeCk7CiAgICAgIH0KICAgICAgLy8gcmVzZXJ2ZXMgdW5pcXVlIG5hbWUgaW4gdGhlIGV4dGVybmFsIHNjb3BlIGFuZCBhc3NpZ25zIHZhbHVlIHRvIGl0CiAgICAgIHNjb3BlVmFsdWUocHJlZml4T3JOYW1lLCB2YWx1ZSkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9leHRTY29wZS52YWx1ZShwcmVmaXhPck5hbWUsIHZhbHVlKTsKICAgICAgICBjb25zdCB2cyA9IHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gfHwgKHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKTsKICAgICAgICB2cy5hZGQobmFtZSk7CiAgICAgICAgcmV0dXJuIG5hbWU7CiAgICAgIH0KICAgICAgZ2V0U2NvcGVWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLmdldFZhbHVlKHByZWZpeCwga2V5T3JSZWYpOwogICAgICB9CiAgICAgIC8vIHJldHVybiBjb2RlIHRoYXQgYXNzaWducyB2YWx1ZXMgaW4gdGhlIGV4dGVybmFsIHNjb3BlIHRvIHRoZSBuYW1lcyB0aGF0IGFyZSB1c2VkIGludGVybmFsbHkKICAgICAgLy8gKHNhbWUgbmFtZXMgdGhhdCB3ZXJlIHJldHVybmVkIGJ5IGdlbi5zY29wZU5hbWUgb3IgZ2VuLnNjb3BlVmFsdWUpCiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUuc2NvcGVSZWZzKHNjb3BlTmFtZSwgdGhpcy5fdmFsdWVzKTsKICAgICAgfQogICAgICBzY29wZUNvZGUoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLnNjb3BlQ29kZSh0aGlzLl92YWx1ZXMpOwogICAgICB9CiAgICAgIF9kZWYodmFyS2luZCwgbmFtZU9yUHJlZml4LCByaHMsIGNvbnN0YW50KSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIGlmIChyaHMgIT09IHZvaWQgMCAmJiBjb25zdGFudCkKICAgICAgICAgIHRoaXMuX2NvbnN0YW50c1tuYW1lLnN0cl0gPSByaHM7CiAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IERlZih2YXJLaW5kLCBuYW1lLCByaHMpKTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICAvLyBgY29uc3RgIGRlY2xhcmF0aW9uIChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgY29uc3QobmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWYoc2NvcGVfMS52YXJLaW5kcy5jb25zdCwgbmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCk7CiAgICAgIH0KICAgICAgLy8gYGxldGAgZGVjbGFyYXRpb24gd2l0aCBvcHRpb25hbCBhc3NpZ25tZW50IChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgbGV0KG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMubGV0LCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBgdmFyYCBkZWNsYXJhdGlvbiB3aXRoIG9wdGlvbmFsIGFzc2lnbm1lbnQKICAgICAgdmFyKG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMudmFyLCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBhc3NpZ25tZW50IGNvZGUKICAgICAgYXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykpOwogICAgICB9CiAgICAgIC8vIGArPWAgY29kZQogICAgICBhZGQobGhzLCByaHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IEFzc2lnbk9wKGxocywgZXhwb3J0czIub3BlcmF0b3JzLkFERCwgcmhzKSk7CiAgICAgIH0KICAgICAgLy8gYXBwZW5kcyBwYXNzZWQgU2FmZUV4cHIgdG8gY29kZSBvciBleGVjdXRlcyBCbG9jawogICAgICBjb2RlKGMpIHsKICAgICAgICBpZiAodHlwZW9mIGMgPT0gImZ1bmN0aW9uIikKICAgICAgICAgIGMoKTsKICAgICAgICBlbHNlIGlmIChjICE9PSBjb2RlXzEubmlsKQogICAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IEFueUNvZGUoYykpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgY29kZSBmb3Igb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSBwYXNzZWQgYXJndW1lbnQgbGlzdCBvZiBrZXktdmFsdWUgcGFpcnMKICAgICAgb2JqZWN0KC4uLmtleVZhbHVlcykgewogICAgICAgIGNvbnN0IGNvZGUgPSBbInsiXTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBrZXlWYWx1ZXMpIHsKICAgICAgICAgIGlmIChjb2RlLmxlbmd0aCA+IDEpCiAgICAgICAgICAgIGNvZGUucHVzaCgiLCIpOwogICAgICAgICAgY29kZS5wdXNoKGtleSk7CiAgICAgICAgICBpZiAoa2V5ICE9PSB2YWx1ZSB8fCB0aGlzLm9wdHMuZXM1KSB7CiAgICAgICAgICAgIGNvZGUucHVzaCgiOiIpOwogICAgICAgICAgICAoMCwgY29kZV8xLmFkZENvZGVBcmcpKGNvZGUsIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29kZS5wdXNoKCJ9Iik7CiAgICAgICAgcmV0dXJuIG5ldyBjb2RlXzEuX0NvZGUoY29kZSk7CiAgICAgIH0KICAgICAgLy8gYGlmYCBjbGF1c2UgKG9yIHN0YXRlbWVudCBpZiBgdGhlbkJvZHlgIGFuZCwgb3B0aW9uYWxseSwgYGVsc2VCb2R5YCBhcmUgcGFzc2VkKQogICAgICBpZihjb25kaXRpb24sIHRoZW5Cb2R5LCBlbHNlQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShuZXcgSWYoY29uZGl0aW9uKSk7CiAgICAgICAgaWYgKHRoZW5Cb2R5ICYmIGVsc2VCb2R5KSB7CiAgICAgICAgICB0aGlzLmNvZGUodGhlbkJvZHkpLmVsc2UoKS5jb2RlKGVsc2VCb2R5KS5lbmRJZigpOwogICAgICAgIH0gZWxzZSBpZiAodGhlbkJvZHkpIHsKICAgICAgICAgIHRoaXMuY29kZSh0aGVuQm9keSkuZW5kSWYoKTsKICAgICAgICB9IGVsc2UgaWYgKGVsc2VCb2R5KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJlbHNlIiBib2R5IHdpdGhvdXQgInRoZW4iIGJvZHknKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gYGVsc2UgaWZgIGNsYXVzZSAtIGludmFsaWQgd2l0aG91dCBgaWZgIG9yIGFmdGVyIGBlbHNlYCBjbGF1c2VzCiAgICAgIGVsc2VJZihjb25kaXRpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IElmKGNvbmRpdGlvbikpOwogICAgICB9CiAgICAgIC8vIGBlbHNlYCBjbGF1c2UgLSBvbmx5IHZhbGlkIGFmdGVyIGBpZmAgb3IgYGVsc2UgaWZgIGNsYXVzZXMKICAgICAgZWxzZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IEVsc2UoKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBpZmAgc3RhdGVtZW50IChuZWVkZWQgaWYgZ2VuLmlmIHdhcyB1c2VkIG9ubHkgd2l0aCBjb25kaXRpb24pCiAgICAgIGVuZElmKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoSWYsIEVsc2UpOwogICAgICB9CiAgICAgIF9mb3Iobm9kZSwgZm9yQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICBpZiAoZm9yQm9keSkKICAgICAgICAgIHRoaXMuY29kZShmb3JCb2R5KS5lbmRGb3IoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBhIGdlbmVyaWMgYGZvcmAgY2xhdXNlIChvciBzdGF0ZW1lbnQgaWYgYGZvckJvZHlgIGlzIHBhc3NlZCkKICAgICAgZm9yKGl0ZXJhdGlvbiwgZm9yQm9keSkgewogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckxvb3AoaXRlcmF0aW9uKSwgZm9yQm9keSk7CiAgICAgIH0KICAgICAgLy8gYGZvcmAgc3RhdGVtZW50IGZvciBhIHJhbmdlIG9mIHZhbHVlcwogICAgICBmb3JSYW5nZShuYW1lT3JQcmVmaXgsIGZyb20sIHRvLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5sZXQpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9yUmFuZ2UodmFyS2luZCwgbmFtZSwgZnJvbSwgdG8pLCAoKSA9PiBmb3JCb2R5KG5hbWUpKTsKICAgICAgfQogICAgICAvLyBgZm9yLW9mYCBzdGF0ZW1lbnQgKGluIGVzNSBtb2RlIHJlcGxhY2Ugd2l0aCBhIG5vcm1hbCBmb3IgbG9vcCkKICAgICAgZm9yT2YobmFtZU9yUHJlZml4LCBpdGVyYWJsZSwgZm9yQm9keSwgdmFyS2luZCA9IHNjb3BlXzEudmFyS2luZHMuY29uc3QpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgaWYgKHRoaXMub3B0cy5lczUpIHsKICAgICAgICAgIGNvbnN0IGFyciA9IGl0ZXJhYmxlIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBpdGVyYWJsZSA6IHRoaXMudmFyKCJfYXJyIiwgaXRlcmFibGUpOwogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yUmFuZ2UoIl9pIiwgMCwgKDAsIGNvZGVfMS5fKWAke2Fycn0ubGVuZ3RoYCwgKGkpID0+IHsKICAgICAgICAgICAgdGhpcy52YXIobmFtZSwgKDAsIGNvZGVfMS5fKWAke2Fycn1bJHtpfV1gKTsKICAgICAgICAgICAgZm9yQm9keShuYW1lKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JJdGVyKCJvZiIsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gYGZvci1pbmAgc3RhdGVtZW50LgogICAgICAvLyBXaXRoIG9wdGlvbiBgb3duUHJvcGVydGllc2AgcmVwbGFjZWQgd2l0aCBhIGBmb3Itb2ZgIGxvb3AgZm9yIG9iamVjdCBrZXlzCiAgICAgIGZvckluKG5hbWVPclByZWZpeCwgb2JqLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5jb25zdCkgewogICAgICAgIGlmICh0aGlzLm9wdHMub3duUHJvcGVydGllcykgewogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yT2YobmFtZU9yUHJlZml4LCAoMCwgY29kZV8xLl8pYE9iamVjdC5rZXlzKCR7b2JqfSlgLCBmb3JCb2R5KTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckl0ZXIoImluIiwgdmFyS2luZCwgbmFtZSwgb2JqKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBmb3JgIGxvb3AKICAgICAgZW5kRm9yKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRm9yKTsKICAgICAgfQogICAgICAvLyBgbGFiZWxgIHN0YXRlbWVudAogICAgICBsYWJlbChsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgTGFiZWwobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgYnJlYWtgIHN0YXRlbWVudAogICAgICBicmVhayhsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQnJlYWsobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgcmV0dXJuYCBzdGF0ZW1lbnQKICAgICAgcmV0dXJuKHZhbHVlKSB7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBSZXR1cm4oKTsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobm9kZSk7CiAgICAgICAgdGhpcy5jb2RlKHZhbHVlKTsKICAgICAgICBpZiAobm9kZS5ub2Rlcy5sZW5ndGggIT09IDEpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJyZXR1cm4iIHNob3VsZCBoYXZlIG9uZSBub2RlJyk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShSZXR1cm4pOwogICAgICB9CiAgICAgIC8vIGB0cnlgIHN0YXRlbWVudAogICAgICB0cnkodHJ5Qm9keSwgY2F0Y2hDb2RlLCBmaW5hbGx5Q29kZSkgewogICAgICAgIGlmICghY2F0Y2hDb2RlICYmICFmaW5hbGx5Q29kZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogInRyeSIgd2l0aG91dCAiY2F0Y2giIGFuZCAiZmluYWxseSInKTsKICAgICAgICBjb25zdCBub2RlID0gbmV3IFRyeSgpOwogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICB0aGlzLmNvZGUodHJ5Qm9keSk7CiAgICAgICAgaWYgKGNhdGNoQ29kZSkgewogICAgICAgICAgY29uc3QgZXJyb3IgPSB0aGlzLm5hbWUoImUiKTsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5jYXRjaCA9IG5ldyBDYXRjaChlcnJvcik7CiAgICAgICAgICBjYXRjaENvZGUoZXJyb3IpOwogICAgICAgIH0KICAgICAgICBpZiAoZmluYWxseUNvZGUpIHsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5maW5hbGx5ID0gbmV3IEZpbmFsbHkoKTsKICAgICAgICAgIHRoaXMuY29kZShmaW5hbGx5Q29kZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoQ2F0Y2gsIEZpbmFsbHkpOwogICAgICB9CiAgICAgIC8vIGB0aHJvd2Agc3RhdGVtZW50CiAgICAgIHRocm93KGVycm9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBUaHJvdyhlcnJvcikpOwogICAgICB9CiAgICAgIC8vIHN0YXJ0IHNlbGYtYmFsYW5jaW5nIGJsb2NrCiAgICAgIGJsb2NrKGJvZHksIG5vZGVDb3VudCkgewogICAgICAgIHRoaXMuX2Jsb2NrU3RhcnRzLnB1c2godGhpcy5fbm9kZXMubGVuZ3RoKTsKICAgICAgICBpZiAoYm9keSkKICAgICAgICAgIHRoaXMuY29kZShib2R5KS5lbmRCbG9jayhub2RlQ291bnQpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGVuZCB0aGUgY3VycmVudCBzZWxmLWJhbGFuY2luZyBibG9jawogICAgICBlbmRCbG9jayhub2RlQ291bnQpIHsKICAgICAgICBjb25zdCBsZW4gPSB0aGlzLl9ibG9ja1N0YXJ0cy5wb3AoKTsKICAgICAgICBpZiAobGVuID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IG5vdCBpbiBzZWxmLWJhbGFuY2luZyBibG9jayIpOwogICAgICAgIGNvbnN0IHRvQ2xvc2UgPSB0aGlzLl9ub2Rlcy5sZW5ndGggLSBsZW47CiAgICAgICAgaWYgKHRvQ2xvc2UgPCAwIHx8IG5vZGVDb3VudCAhPT0gdm9pZCAwICYmIHRvQ2xvc2UgIT09IG5vZGVDb3VudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiB3cm9uZyBudW1iZXIgb2Ygbm9kZXM6ICR7dG9DbG9zZX0gdnMgJHtub2RlQ291bnR9IGV4cGVjdGVkYCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX25vZGVzLmxlbmd0aCA9IGxlbjsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBgZnVuY3Rpb25gIGhlYWRpbmcgKG9yIGRlZmluaXRpb24gaWYgZnVuY0JvZHkgaXMgcGFzc2VkKQogICAgICBmdW5jKG5hbWUsIGFyZ3MgPSBjb2RlXzEubmlsLCBhc3luYywgZnVuY0JvZHkpIHsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobmV3IEZ1bmMobmFtZSwgYXJncywgYXN5bmMpKTsKICAgICAgICBpZiAoZnVuY0JvZHkpCiAgICAgICAgICB0aGlzLmNvZGUoZnVuY0JvZHkpLmVuZEZ1bmMoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBlbmQgZnVuY3Rpb24gZGVmaW5pdGlvbgogICAgICBlbmRGdW5jKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRnVuYyk7CiAgICAgIH0KICAgICAgb3B0aW1pemUobiA9IDEpIHsKICAgICAgICB3aGlsZSAobi0tID4gMCkgewogICAgICAgICAgdGhpcy5fcm9vdC5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgICB0aGlzLl9yb290Lm9wdGltaXplTmFtZXModGhpcy5fcm9vdC5uYW1lcywgdGhpcy5fY29uc3RhbnRzKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2xlYWZOb2RlKG5vZGUpIHsKICAgICAgICB0aGlzLl9jdXJyTm9kZS5ub2Rlcy5wdXNoKG5vZGUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF9ibG9ja05vZGUobm9kZSkgewogICAgICAgIHRoaXMuX2N1cnJOb2RlLm5vZGVzLnB1c2gobm9kZSk7CiAgICAgICAgdGhpcy5fbm9kZXMucHVzaChub2RlKTsKICAgICAgfQogICAgICBfZW5kQmxvY2tOb2RlKE4xLCBOMikgewogICAgICAgIGNvbnN0IG4gPSB0aGlzLl9jdXJyTm9kZTsKICAgICAgICBpZiAobiBpbnN0YW5jZW9mIE4xIHx8IE4yICYmIG4gaW5zdGFuY2VvZiBOMikgewogICAgICAgICAgdGhpcy5fbm9kZXMucG9wKCk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBub3QgaW4gYmxvY2sgIiR7TjIgPyBgJHtOMS5raW5kfS8ke04yLmtpbmR9YCA6IE4xLmtpbmR9ImApOwogICAgICB9CiAgICAgIF9lbHNlTm9kZShub2RlKSB7CiAgICAgICAgY29uc3QgbiA9IHRoaXMuX2N1cnJOb2RlOwogICAgICAgIGlmICghKG4gaW5zdGFuY2VvZiBJZikpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogImVsc2UiIHdpdGhvdXQgImlmIicpOwogICAgICAgIH0KICAgICAgICB0aGlzLl9jdXJyTm9kZSA9IG4uZWxzZSA9IG5vZGU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IF9yb290KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ub2Rlc1swXTsKICAgICAgfQogICAgICBnZXQgX2N1cnJOb2RlKCkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgcmV0dXJuIG5zW25zLmxlbmd0aCAtIDFdOwogICAgICB9CiAgICAgIHNldCBfY3Vyck5vZGUobm9kZSkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgbnNbbnMubGVuZ3RoIC0gMV0gPSBub2RlOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29kZUdlbiA9IENvZGVHZW47CiAgICBmdW5jdGlvbiBhZGROYW1lcyhuYW1lcywgZnJvbSkgewogICAgICBmb3IgKGNvbnN0IG4gaW4gZnJvbSkKICAgICAgICBuYW1lc1tuXSA9IChuYW1lc1tuXSB8fCAwKSArIChmcm9tW25dIHx8IDApOwogICAgICByZXR1cm4gbmFtZXM7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFeHByTmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgcmV0dXJuIGZyb20gaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyBhZGROYW1lcyhuYW1lcywgZnJvbS5uYW1lcykgOiBuYW1lczsKICAgIH0KICAgIGZ1bmN0aW9uIG9wdGltaXplRXhwcihleHByLCBuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgIGlmIChleHByIGluc3RhbmNlb2YgY29kZV8xLk5hbWUpCiAgICAgICAgcmV0dXJuIHJlcGxhY2VOYW1lKGV4cHIpOwogICAgICBpZiAoIWNhbk9wdGltaXplKGV4cHIpKQogICAgICAgIHJldHVybiBleHByOwogICAgICByZXR1cm4gbmV3IGNvZGVfMS5fQ29kZShleHByLl9pdGVtcy5yZWR1Y2UoKGl0ZW1zLCBjKSA9PiB7CiAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSkKICAgICAgICAgIGMgPSByZXBsYWNlTmFtZShjKTsKICAgICAgICBpZiAoYyBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSkKICAgICAgICAgIGl0ZW1zLnB1c2goLi4uYy5faXRlbXMpOwogICAgICAgIGVsc2UKICAgICAgICAgIGl0ZW1zLnB1c2goYyk7CiAgICAgICAgcmV0dXJuIGl0ZW1zOwogICAgICB9LCBbXSkpOwogICAgICBmdW5jdGlvbiByZXBsYWNlTmFtZShuKSB7CiAgICAgICAgY29uc3QgYyA9IGNvbnN0YW50c1tuLnN0cl07CiAgICAgICAgaWYgKGMgPT09IHZvaWQgMCB8fCBuYW1lc1tuLnN0cl0gIT09IDEpCiAgICAgICAgICByZXR1cm4gbjsKICAgICAgICBkZWxldGUgbmFtZXNbbi5zdHJdOwogICAgICAgIHJldHVybiBjOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbk9wdGltaXplKGUpIHsKICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSAmJiBlLl9pdGVtcy5zb21lKChjKSA9PiBjIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgJiYgbmFtZXNbYy5zdHJdID09PSAxICYmIGNvbnN0YW50c1tjLnN0cl0gIT09IHZvaWQgMCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHN1YnRyYWN0TmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgZm9yIChjb25zdCBuIGluIGZyb20pCiAgICAgICAgbmFtZXNbbl0gPSAobmFtZXNbbl0gfHwgMCkgLSAoZnJvbVtuXSB8fCAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIG5vdCh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAiYm9vbGVhbiIgfHwgdHlwZW9mIHggPT0gIm51bWJlciIgfHwgeCA9PT0gbnVsbCA/ICF4IDogKDAsIGNvZGVfMS5fKWAhJHtwYXIoeCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLm5vdCA9IG5vdDsKICAgIHZhciBhbmRDb2RlID0gbWFwcGVuZChleHBvcnRzMi5vcGVyYXRvcnMuQU5EKTsKICAgIGZ1bmN0aW9uIGFuZCguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShhbmRDb2RlKTsKICAgIH0KICAgIGV4cG9ydHMyLmFuZCA9IGFuZDsKICAgIHZhciBvckNvZGUgPSBtYXBwZW5kKGV4cG9ydHMyLm9wZXJhdG9ycy5PUik7CiAgICBmdW5jdGlvbiBvciguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShvckNvZGUpOwogICAgfQogICAgZXhwb3J0czIub3IgPSBvcjsKICAgIGZ1bmN0aW9uIG1hcHBlbmQob3ApIHsKICAgICAgcmV0dXJuICh4LCB5KSA9PiB4ID09PSBjb2RlXzEubmlsID8geSA6IHkgPT09IGNvZGVfMS5uaWwgPyB4IDogKDAsIGNvZGVfMS5fKWAke3Bhcih4KX0gJHtvcH0gJHtwYXIoeSl9YDsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcih4KSB7CiAgICAgIHJldHVybiB4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyB4IDogKDAsIGNvZGVfMS5fKWAoJHt4fSlgOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzCnZhciByZXF1aXJlX3V0aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdXRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gZXhwb3J0czIuZ2V0RXJyb3JQYXRoID0gZXhwb3J0czIuVHlwZSA9IGV4cG9ydHMyLnVzZUZ1bmMgPSBleHBvcnRzMi5zZXRFdmFsdWF0ZWQgPSBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV4cG9ydHMyLm1lcmdlRXZhbHVhdGVkID0gZXhwb3J0czIuZWFjaEl0ZW0gPSBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBleHBvcnRzMi5lc2NhcGVGcmFnbWVudCA9IGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSBleHBvcnRzMi5zY2hlbWFSZWZPclZhbCA9IGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzQnV0UmVmID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXMgPSBleHBvcnRzMi5jaGVja1Vua25vd25SdWxlcyA9IGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gZXhwb3J0czIudG9IYXNoID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZSgpOwogICAgZnVuY3Rpb24gdG9IYXNoKGFycikgewogICAgICBjb25zdCBoYXNoID0ge307CiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnIpCiAgICAgICAgaGFzaFtpdGVtXSA9IHRydWU7CiAgICAgIHJldHVybiBoYXNoOwogICAgfQogICAgZXhwb3J0czIudG9IYXNoID0gdG9IYXNoOwogICAgZnVuY3Rpb24gYWx3YXlzVmFsaWRTY2hlbWEoaXQsIHNjaGVtYTIpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gc2NoZW1hMjsKICAgICAgaWYgKE9iamVjdC5rZXlzKHNjaGVtYTIpLmxlbmd0aCA9PT0gMCkKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgY2hlY2tVbmtub3duUnVsZXMoaXQsIHNjaGVtYTIpOwogICAgICByZXR1cm4gIXNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIGl0LnNlbGYuUlVMRVMuYWxsKTsKICAgIH0KICAgIGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gYWx3YXlzVmFsaWRTY2hlbWE7CiAgICBmdW5jdGlvbiBjaGVja1Vua25vd25SdWxlcyhpdCwgc2NoZW1hMiA9IGl0LnNjaGVtYSkgewogICAgICBjb25zdCB7IG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgaWYgKCFvcHRzLnN0cmljdFNjaGVtYSkKICAgICAgICByZXR1cm47CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgcnVsZXMgPSBzZWxmMi5SVUxFUy5rZXl3b3JkczsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmICghcnVsZXNba2V5XSkKICAgICAgICAgIGNoZWNrU3RyaWN0TW9kZShpdCwgYHVua25vd24ga2V5d29yZDogIiR7a2V5fSJgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tVbmtub3duUnVsZXMgPSBjaGVja1Vua25vd25SdWxlczsKICAgIGZ1bmN0aW9uIHNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIHJ1bGVzKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWEyOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKQogICAgICAgIGlmIChydWxlc1trZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzID0gc2NoZW1hSGFzUnVsZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFIYXNSdWxlc0J1dFJlZihzY2hlbWEyLCBSVUxFUykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybiAhc2NoZW1hMjsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikKICAgICAgICBpZiAoa2V5ICE9PSAiJHJlZiIgJiYgUlVMRVMuYWxsW2tleV0pCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBzY2hlbWFIYXNSdWxlc0J1dFJlZjsKICAgIGZ1bmN0aW9uIHNjaGVtYVJlZk9yVmFsKHsgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0sIHNjaGVtYTIsIGtleXdvcmQsICRkYXRhKSB7CiAgICAgIGlmICghJGRhdGEpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gIm51bWJlciIgfHwgdHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuIHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciKQogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWEyfWA7CiAgICAgIH0KICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gc2NoZW1hUmVmT3JWYWw7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUZyYWdtZW50KHN0cjIpIHsKICAgICAgcmV0dXJuIHVuZXNjYXBlSnNvblBvaW50ZXIoZGVjb2RlVVJJQ29tcG9uZW50KHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSB1bmVzY2FwZUZyYWdtZW50OwogICAgZnVuY3Rpb24gZXNjYXBlRnJhZ21lbnQoc3RyMikgewogICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGVzY2FwZUpzb25Qb2ludGVyKHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmVzY2FwZUZyYWdtZW50ID0gZXNjYXBlRnJhZ21lbnQ7CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUG9pbnRlcihzdHIyKSB7CiAgICAgIGlmICh0eXBlb2Ygc3RyMiA9PSAibnVtYmVyIikKICAgICAgICByZXR1cm4gYCR7c3RyMn1gOwogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgfQogICAgZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBlc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIHVuZXNjYXBlSnNvblBvaW50ZXIoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+Iik7CiAgICB9CiAgICBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gdW5lc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIGVhY2hJdGVtKHhzLCBmKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHhzKSkgewogICAgICAgIGZvciAoY29uc3QgeCBvZiB4cykKICAgICAgICAgIGYoeCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZih4cyk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVhY2hJdGVtID0gZWFjaEl0ZW07CiAgICBmdW5jdGlvbiBtYWtlTWVyZ2VFdmFsdWF0ZWQoeyBtZXJnZU5hbWVzLCBtZXJnZVRvTmFtZSwgbWVyZ2VWYWx1ZXMsIHJlc3VsdFRvTmFtZSB9KSB7CiAgICAgIHJldHVybiAoZ2VuLCBmcm9tLCB0bywgdG9OYW1lKSA9PiB7CiAgICAgICAgY29uc3QgcmVzID0gdG8gPT09IHZvaWQgMCA/IGZyb20gOiB0byBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKGZyb20gaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IG1lcmdlTmFtZXMoZ2VuLCBmcm9tLCB0bykgOiBtZXJnZVRvTmFtZShnZW4sIGZyb20sIHRvKSwgdG8pIDogZnJvbSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKG1lcmdlVG9OYW1lKGdlbiwgdG8sIGZyb20pLCBmcm9tKSA6IG1lcmdlVmFsdWVzKGZyb20sIHRvKTsKICAgICAgICByZXR1cm4gdG9OYW1lID09PSBjb2RlZ2VuXzEuTmFtZSAmJiAhKHJlcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSA/IHJlc3VsdFRvTmFtZShnZW4sIHJlcykgOiByZXM7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUV2YWx1YXRlZCA9IHsKICAgICAgcHJvcHM6IG1ha2VNZXJnZUV2YWx1YXRlZCh7CiAgICAgICAgbWVyZ2VOYW1lczogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlICYmICR7ZnJvbX0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZnJvbX0gPT09IHRydWVgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCB0cnVlKSwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke3RvfSB8fCB7fWApLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QuYXNzaWduKCR7dG99LCAke2Zyb219KWApKTsKICAgICAgICB9KSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gewogICAgICAgICAgaWYgKGZyb20gPT09IHRydWUpIHsKICAgICAgICAgICAgZ2VuLmFzc2lnbih0bywgdHJ1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7dG99IHx8IHt9YCk7CiAgICAgICAgICAgIHNldEV2YWx1YXRlZChnZW4sIHRvLCBmcm9tKTsKICAgICAgICAgIH0KICAgICAgICB9KSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IHsgLi4uZnJvbSwgLi4udG8gfSwKICAgICAgICByZXN1bHRUb05hbWU6IGV2YWx1YXRlZFByb3BzVG9OYW1lCiAgICAgIH0pLAogICAgICBpdGVtczogbWFrZU1lcmdlRXZhbHVhdGVkKHsKICAgICAgICBtZXJnZU5hbWVzOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWUgJiYgJHtmcm9tfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke2Zyb219ID09PSB0cnVlID8gdHJ1ZSA6ICR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgZnJvbSA9PT0gdHJ1ZSA/IHRydWUgOiAoMCwgY29kZWdlbl8xLl8pYCR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IE1hdGgubWF4KGZyb20sIHRvKSwKICAgICAgICByZXN1bHRUb05hbWU6IChnZW4sIGl0ZW1zKSA9PiBnZW4udmFyKCJpdGVtcyIsIGl0ZW1zKQogICAgICB9KQogICAgfTsKICAgIGZ1bmN0aW9uIGV2YWx1YXRlZFByb3BzVG9OYW1lKGdlbiwgcHMpIHsKICAgICAgaWYgKHBzID09PSB0cnVlKQogICAgICAgIHJldHVybiBnZW4udmFyKCJwcm9wcyIsIHRydWUpOwogICAgICBjb25zdCBwcm9wcyA9IGdlbi52YXIoInByb3BzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICBpZiAocHMgIT09IHZvaWQgMCkKICAgICAgICBzZXRFdmFsdWF0ZWQoZ2VuLCBwcm9wcywgcHMpOwogICAgICByZXR1cm4gcHJvcHM7CiAgICB9CiAgICBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV2YWx1YXRlZFByb3BzVG9OYW1lOwogICAgZnVuY3Rpb24gc2V0RXZhbHVhdGVkKGdlbiwgcHJvcHMsIHBzKSB7CiAgICAgIE9iamVjdC5rZXlzKHBzKS5mb3JFYWNoKChwKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wc30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHApfWAsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNldEV2YWx1YXRlZCA9IHNldEV2YWx1YXRlZDsKICAgIHZhciBzbmlwcGV0cyA9IHt9OwogICAgZnVuY3Rpb24gdXNlRnVuYyhnZW4sIGYpIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIHJlZjogZiwKICAgICAgICBjb2RlOiBzbmlwcGV0c1tmLmNvZGVdIHx8IChzbmlwcGV0c1tmLmNvZGVdID0gbmV3IGNvZGVfMS5fQ29kZShmLmNvZGUpKQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzZUZ1bmMgPSB1c2VGdW5jOwogICAgdmFyIFR5cGU7CiAgICAoZnVuY3Rpb24oVHlwZTIpIHsKICAgICAgVHlwZTJbVHlwZTJbIk51bSJdID0gMF0gPSAiTnVtIjsKICAgICAgVHlwZTJbVHlwZTJbIlN0ciJdID0gMV0gPSAiU3RyIjsKICAgIH0pKFR5cGUgfHwgKGV4cG9ydHMyLlR5cGUgPSBUeXBlID0ge30pKTsKICAgIGZ1bmN0aW9uIGdldEVycm9yUGF0aChkYXRhUHJvcCwgZGF0YVByb3BUeXBlLCBqc1Byb3BlcnR5U3ludGF4KSB7CiAgICAgIGlmIChkYXRhUHJvcCBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSB7CiAgICAgICAgY29uc3QgaXNOdW1iZXIgPSBkYXRhUHJvcFR5cGUgPT09IFR5cGUuTnVtOwogICAgICAgIHJldHVybiBqc1Byb3BlcnR5U3ludGF4ID8gaXNOdW1iZXIgPyAoMCwgY29kZWdlbl8xLl8pYCJbIiArICR7ZGF0YVByb3B9ICsgIl0iYCA6ICgwLCBjb2RlZ2VuXzEuXylgIlsnIiArICR7ZGF0YVByb3B9ICsgIiddImAgOiBpc051bWJlciA/ICgwLCBjb2RlZ2VuXzEuXylgIi8iICsgJHtkYXRhUHJvcH1gIDogKDAsIGNvZGVnZW5fMS5fKWAiLyIgKyAke2RhdGFQcm9wfS5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1xcLy9nLCAifjEiKWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGpzUHJvcGVydHlTeW50YXggPyAoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCkudG9TdHJpbmcoKSA6ICIvIiArIGVzY2FwZUpzb25Qb2ludGVyKGRhdGFQcm9wKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEVycm9yUGF0aCA9IGdldEVycm9yUGF0aDsKICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0TW9kZShpdCwgbXNnLCBtb2RlID0gaXQub3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgaWYgKCFtb2RlKQogICAgICAgIHJldHVybjsKICAgICAgbXNnID0gYHN0cmljdCBtb2RlOiAke21zZ31gOwogICAgICBpZiAobW9kZSA9PT0gdHJ1ZSkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTsKICAgICAgaXQuc2VsZi5sb2dnZXIud2Fybihtc2cpOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gY2hlY2tTdHJpY3RNb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcwp2YXIgcmVxdWlyZV9uYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzID0gewogICAgICAvLyB2YWxpZGF0aW9uIGZ1bmN0aW9uIGFyZ3VtZW50cwogICAgICBkYXRhOiBuZXcgY29kZWdlbl8xLk5hbWUoImRhdGEiKSwKICAgICAgLy8gZGF0YSBwYXNzZWQgdG8gdmFsaWRhdGlvbiBmdW5jdGlvbgogICAgICAvLyBhcmdzIHBhc3NlZCBmcm9tIHJlZmVyZW5jaW5nIHNjaGVtYQogICAgICB2YWxDeHQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgidmFsQ3h0IiksCiAgICAgIC8vIHZhbGlkYXRpb24vZGF0YSBjb250ZXh0IC0gc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LCBpdCBpcyBkZXN0cnVjdHVyZWQgdG8gdGhlIG5hbWVzIGJlbG93CiAgICAgIGluc3RhbmNlUGF0aDogbmV3IGNvZGVnZW5fMS5OYW1lKCJpbnN0YW5jZVBhdGgiKSwKICAgICAgcGFyZW50RGF0YTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhIiksCiAgICAgIHBhcmVudERhdGFQcm9wZXJ0eTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhUHJvcGVydHkiKSwKICAgICAgcm9vdERhdGE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicm9vdERhdGEiKSwKICAgICAgLy8gcm9vdCBkYXRhIC0gc2FtZSBhcyB0aGUgZGF0YSBwYXNzZWQgdG8gdGhlIGZpcnN0L3RvcCB2YWxpZGF0aW9uIGZ1bmN0aW9uCiAgICAgIGR5bmFtaWNBbmNob3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoImR5bmFtaWNBbmNob3JzIiksCiAgICAgIC8vIHVzZWQgdG8gc3VwcG9ydCByZWN1cnNpdmVSZWYgYW5kIGR5bmFtaWNSZWYKICAgICAgLy8gZnVuY3Rpb24gc2NvcGVkIHZhcmlhYmxlcwogICAgICB2RXJyb3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoInZFcnJvcnMiKSwKICAgICAgLy8gbnVsbCBvciBhcnJheSBvZiB2YWxpZGF0aW9uIGVycm9ycwogICAgICBlcnJvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZXJyb3JzIiksCiAgICAgIC8vIGNvdW50ZXIgb2YgdmFsaWRhdGlvbiBlcnJvcnMKICAgICAgdGhpczogbmV3IGNvZGVnZW5fMS5OYW1lKCJ0aGlzIiksCiAgICAgIC8vICJnbG9iYWxzIgogICAgICBzZWxmOiBuZXcgY29kZWdlbl8xLk5hbWUoInNlbGYiKSwKICAgICAgc2NvcGU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NvcGUiKSwKICAgICAgLy8gSlREIHNlcmlhbGl6ZS9wYXJzZSBuYW1lIGZvciBKU09OIHN0cmluZyBhbmQgcG9zaXRpb24KICAgICAganNvbjogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uIiksCiAgICAgIGpzb25Qb3M6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBvcyIpLAogICAgICBqc29uTGVuOiBuZXcgY29kZWdlbl8xLk5hbWUoImpzb25MZW4iKSwKICAgICAganNvblBhcnQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBhcnQiKQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBuYW1lczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvZXJyb3JzLmpzCnZhciByZXF1aXJlX2Vycm9ycyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9lcnJvcnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4cG9ydHMyLnJlc2V0RXJyb3JzQ291bnQgPSBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gZXhwb3J0czIucmVwb3J0RXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgZXhwb3J0czIua2V5d29yZEVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IHBhc3MgIiR7a2V5d29yZH0iIGtleXdvcmQgdmFsaWRhdGlvbmAKICAgIH07CiAgICBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCwgc2NoZW1hVHlwZSB9KSA9PiBzY2hlbWFUeXBlID8gKDAsIGNvZGVnZW5fMS5zdHIpYCIke2tleXdvcmR9IiBrZXl3b3JkIG11c3QgYmUgJHtzY2hlbWFUeXBlfSAoJGRhdGEpYCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAiJHtrZXl3b3JkfSIga2V5d29yZCBpcyBpbnZhbGlkICgkZGF0YSlgCiAgICB9OwogICAgZnVuY3Rpb24gcmVwb3J0RXJyb3IoY3h0LCBlcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciwgZXJyb3JQYXRocywgb3ZlcnJpZGVBbGxFcnJvcnMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBpZiAob3ZlcnJpZGVBbGxFcnJvcnMgIT09IG51bGwgJiYgb3ZlcnJpZGVBbGxFcnJvcnMgIT09IHZvaWQgMCA/IG92ZXJyaWRlQWxsRXJyb3JzIDogY29tcG9zaXRlUnVsZSB8fCBhbGxFcnJvcnMpIHsKICAgICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuRXJyb3JzKGl0LCAoMCwgY29kZWdlbl8xLl8pYFske2Vyck9ian1dYCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydEVycm9yID0gcmVwb3J0RXJyb3I7CiAgICBmdW5jdGlvbiByZXBvcnRFeHRyYUVycm9yKGN4dCwgZXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkRXJyb3IsIGVycm9yUGF0aHMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIGlmICghKGNvbXBvc2l0ZVJ1bGUgfHwgYWxsRXJyb3JzKSkgewogICAgICAgIHJldHVybkVycm9ycyhpdCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gcmVwb3J0RXh0cmFFcnJvcjsKICAgIGZ1bmN0aW9uIHJlc2V0RXJyb3JzQ291bnQoZ2VuLCBlcnJzQ291bnQpIHsKICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCBlcnJzQ291bnQpOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSAhPT0gbnVsbGAsICgpID0+IGdlbi5pZihlcnJzQ291bnQsICgpID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfS5sZW5ndGhgLCBlcnJzQ291bnQpLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCBudWxsKSkpOwogICAgfQogICAgZXhwb3J0czIucmVzZXRFcnJvcnNDb3VudCA9IHJlc2V0RXJyb3JzQ291bnQ7CiAgICBmdW5jdGlvbiBleHRlbmRFcnJvcnMoeyBnZW4sIGtleXdvcmQsIHNjaGVtYVZhbHVlLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0pIHsKICAgICAgaWYgKGVycnNDb3VudCA9PT0gdm9pZCAwKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5uYW1lKCJlcnIiKTsKICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgZXJyc0NvdW50LCBuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoaSkgPT4gewogICAgICAgIGdlbi5jb25zdChlcnIsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc31bJHtpfV1gKTsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uaW5zdGFuY2VQYXRoID09PSB1bmRlZmluZWRgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9Lmluc3RhbmNlUGF0aGAsICgwLCBjb2RlZ2VuXzEuc3RyQ29uY2F0KShuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCBpdC5lcnJvclBhdGgpKSk7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5zY2hlbWFQYXRoYCwgKDAsIGNvZGVnZW5fMS5zdHIpYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWApOwogICAgICAgIGlmIChpdC5vcHRzLnZlcmJvc2UpIHsKICAgICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uc2NoZW1hYCwgc2NoZW1hVmFsdWUpOwogICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5kYXRhYCwgZGF0YSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4dGVuZEVycm9yczsKICAgIGZ1bmN0aW9uIGFkZEVycm9yKGdlbiwgZXJyT2JqKSB7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5jb25zdCgiZXJyIiwgZXJyT2JqKTsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGxgLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYFske2Vycn1dYCksICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ucHVzaCgke2Vycn0pYCk7CiAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSsrYCk7CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5FcnJvcnMoaXQsIGVycnMpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSwgc2NoZW1hRW52IH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4udGhyb3coKDAsIGNvZGVnZW5fMS5fKWBuZXcgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KCR7ZXJyc30pYCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBlcnJzKTsKICAgICAgICBnZW4ucmV0dXJuKGZhbHNlKTsKICAgICAgfQogICAgfQogICAgdmFyIEUgPSB7CiAgICAgIGtleXdvcmQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgia2V5d29yZCIpLAogICAgICBzY2hlbWFQYXRoOiBuZXcgY29kZWdlbl8xLk5hbWUoInNjaGVtYVBhdGgiKSwKICAgICAgLy8gYWxzbyB1c2VkIGluIEpURCBlcnJvcnMKICAgICAgcGFyYW1zOiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmFtcyIpLAogICAgICBwcm9wZXJ0eU5hbWU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicHJvcGVydHlOYW1lIiksCiAgICAgIG1lc3NhZ2U6IG5ldyBjb2RlZ2VuXzEuTmFtZSgibWVzc2FnZSIpLAogICAgICBzY2hlbWE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NoZW1hIiksCiAgICAgIHBhcmVudFNjaGVtYTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnRTY2hlbWEiKQogICAgfTsKICAgIGZ1bmN0aW9uIGVycm9yT2JqZWN0Q29kZShjeHQsIGVycm9yLCBlcnJvclBhdGhzKSB7CiAgICAgIGNvbnN0IHsgY3JlYXRlRXJyb3JzIH0gPSBjeHQuaXQ7CiAgICAgIGlmIChjcmVhdGVFcnJvcnMgPT09IGZhbHNlKQogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYHt9YDsKICAgICAgcmV0dXJuIGVycm9yT2JqZWN0KGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JPYmplY3QoY3h0LCBlcnJvciwgZXJyb3JQYXRocyA9IHt9KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBrZXlWYWx1ZXMgPSBbCiAgICAgICAgZXJyb3JJbnN0YW5jZVBhdGgoaXQsIGVycm9yUGF0aHMpLAogICAgICAgIGVycm9yU2NoZW1hUGF0aChjeHQsIGVycm9yUGF0aHMpCiAgICAgIF07CiAgICAgIGV4dHJhRXJyb3JQcm9wcyhjeHQsIGVycm9yLCBrZXlWYWx1ZXMpOwogICAgICByZXR1cm4gZ2VuLm9iamVjdCguLi5rZXlWYWx1ZXMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JJbnN0YW5jZVBhdGgoeyBlcnJvclBhdGggfSwgeyBpbnN0YW5jZVBhdGggfSkgewogICAgICBjb25zdCBpbnN0UGF0aCA9IGluc3RhbmNlUGF0aCA/ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShpbnN0YW5jZVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YCA6IGVycm9yUGF0aDsKICAgICAgcmV0dXJuIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgaW5zdFBhdGgpXTsKICAgIH0KICAgIGZ1bmN0aW9uIGVycm9yU2NoZW1hUGF0aCh7IGtleXdvcmQsIGl0OiB7IGVyclNjaGVtYVBhdGggfSB9LCB7IHNjaGVtYVBhdGgsIHBhcmVudFNjaGVtYSB9KSB7CiAgICAgIGxldCBzY2hQYXRoID0gcGFyZW50U2NoZW1hID8gZXJyU2NoZW1hUGF0aCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2VyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gOwogICAgICBpZiAoc2NoZW1hUGF0aCkgewogICAgICAgIHNjaFBhdGggPSAoMCwgY29kZWdlbl8xLnN0cilgJHtzY2hQYXRofSR7KDAsIHV0aWxfMS5nZXRFcnJvclBhdGgpKHNjaGVtYVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YDsKICAgICAgfQogICAgICByZXR1cm4gW0Uuc2NoZW1hUGF0aCwgc2NoUGF0aF07CiAgICB9CiAgICBmdW5jdGlvbiBleHRyYUVycm9yUHJvcHMoY3h0LCB7IHBhcmFtcywgbWVzc2FnZSB9LCBrZXlWYWx1ZXMpIHsKICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFWYWx1ZSwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBvcHRzLCBwcm9wZXJ0eU5hbWUsIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCB9ID0gaXQ7CiAgICAgIGtleVZhbHVlcy5wdXNoKFtFLmtleXdvcmQsIGtleXdvcmRdLCBbRS5wYXJhbXMsIHR5cGVvZiBwYXJhbXMgPT0gImZ1bmN0aW9uIiA/IHBhcmFtcyhjeHQpIDogcGFyYW1zIHx8ICgwLCBjb2RlZ2VuXzEuXylge31gXSk7CiAgICAgIGlmIChvcHRzLm1lc3NhZ2VzKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UubWVzc2FnZSwgdHlwZW9mIG1lc3NhZ2UgPT0gImZ1bmN0aW9uIiA/IG1lc3NhZ2UoY3h0KSA6IG1lc3NhZ2VdKTsKICAgICAgfQogICAgICBpZiAob3B0cy52ZXJib3NlKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0Uuc2NoZW1hLCBzY2hlbWFWYWx1ZV0sIFtFLnBhcmVudFNjaGVtYSwgKDAsIGNvZGVnZW5fMS5fKWAke3RvcFNjaGVtYVJlZn0ke3NjaGVtYVBhdGh9YF0sIFtuYW1lc18xLmRlZmF1bHQuZGF0YSwgZGF0YV0pOwogICAgICB9CiAgICAgIGlmIChwcm9wZXJ0eU5hbWUpCiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UucHJvcGVydHlOYW1lLCBwcm9wZXJ0eU5hbWVdKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcwp2YXIgcmVxdWlyZV9ib29sU2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2Jvb2xTY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gZXhwb3J0czIudG9wQm9vbE9yRW1wdHlTY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgZXJyb3JzXzEgPSByZXF1aXJlX2Vycm9ycygpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgYm9vbEVycm9yID0gewogICAgICBtZXNzYWdlOiAiYm9vbGVhbiBzY2hlbWEgaXMgZmFsc2UiCiAgICB9OwogICAgZnVuY3Rpb24gdG9wQm9vbE9yRW1wdHlTY2hlbWEoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgdmFsaWRhdGVOYW1lIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCwgZmFsc2UpOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmIHNjaGVtYTIuJGFzeW5jID09PSB0cnVlKSB7CiAgICAgICAgZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBudWxsKTsKICAgICAgICBnZW4ucmV0dXJuKHRydWUpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi50b3BCb29sT3JFbXB0eVNjaGVtYSA9IHRvcEJvb2xPckVtcHR5U2NoZW1hOwogICAgZnVuY3Rpb24gYm9vbE9yRW1wdHlTY2hlbWEoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICBnZW4udmFyKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gYm9vbE9yRW1wdHlTY2hlbWE7CiAgICBmdW5jdGlvbiBmYWxzZVNjaGVtYUVycm9yKGl0LCBvdmVycmlkZUFsbEVycm9ycykgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSB9ID0gaXQ7CiAgICAgIGNvbnN0IGN4dCA9IHsKICAgICAgICBnZW4sCiAgICAgICAga2V5d29yZDogImZhbHNlIHNjaGVtYSIsCiAgICAgICAgZGF0YSwKICAgICAgICBzY2hlbWE6IGZhbHNlLAogICAgICAgIHNjaGVtYUNvZGU6IGZhbHNlLAogICAgICAgIHNjaGVtYVZhbHVlOiBmYWxzZSwKICAgICAgICBwYXJhbXM6IHt9LAogICAgICAgIGl0CiAgICAgIH07CiAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikoY3h0LCBib29sRXJyb3IsIHZvaWQgMCwgb3ZlcnJpZGVBbGxFcnJvcnMpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcwp2YXIgcmVxdWlyZV9ydWxlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0UnVsZXMgPSBleHBvcnRzMi5pc0pTT05UeXBlID0gdm9pZCAwOwogICAgdmFyIF9qc29uVHlwZXMgPSBbInN0cmluZyIsICJudW1iZXIiLCAiaW50ZWdlciIsICJib29sZWFuIiwgIm51bGwiLCAib2JqZWN0IiwgImFycmF5Il07CiAgICB2YXIganNvblR5cGVzID0gbmV3IFNldChfanNvblR5cGVzKTsKICAgIGZ1bmN0aW9uIGlzSlNPTlR5cGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gInN0cmluZyIgJiYganNvblR5cGVzLmhhcyh4KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSlNPTlR5cGUgPSBpc0pTT05UeXBlOwogICAgZnVuY3Rpb24gZ2V0UnVsZXMoKSB7CiAgICAgIGNvbnN0IGdyb3VwcyA9IHsKICAgICAgICBudW1iZXI6IHsgdHlwZTogIm51bWJlciIsIHJ1bGVzOiBbXSB9LAogICAgICAgIHN0cmluZzogeyB0eXBlOiAic3RyaW5nIiwgcnVsZXM6IFtdIH0sCiAgICAgICAgYXJyYXk6IHsgdHlwZTogImFycmF5IiwgcnVsZXM6IFtdIH0sCiAgICAgICAgb2JqZWN0OiB7IHR5cGU6ICJvYmplY3QiLCBydWxlczogW10gfQogICAgICB9OwogICAgICByZXR1cm4gewogICAgICAgIHR5cGVzOiB7IC4uLmdyb3VwcywgaW50ZWdlcjogdHJ1ZSwgYm9vbGVhbjogdHJ1ZSwgbnVsbDogdHJ1ZSB9LAogICAgICAgIHJ1bGVzOiBbeyBydWxlczogW10gfSwgZ3JvdXBzLm51bWJlciwgZ3JvdXBzLnN0cmluZywgZ3JvdXBzLmFycmF5LCBncm91cHMub2JqZWN0XSwKICAgICAgICBwb3N0OiB7IHJ1bGVzOiBbXSB9LAogICAgICAgIGFsbDoge30sCiAgICAgICAga2V5d29yZHM6IHt9CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5nZXRSdWxlcyA9IGdldFJ1bGVzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9hcHBsaWNhYmlsaXR5LmpzCnZhciByZXF1aXJlX2FwcGxpY2FiaWxpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNGb3JUeXBlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNGb3JUeXBlKHsgc2NoZW1hOiBzY2hlbWEyLCBzZWxmOiBzZWxmMiB9LCB0eXBlMikgewogICAgICBjb25zdCBncm91cCA9IHNlbGYyLlJVTEVTLnR5cGVzW3R5cGUyXTsKICAgICAgcmV0dXJuIGdyb3VwICYmIGdyb3VwICE9PSB0cnVlICYmIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzRm9yVHlwZSA9IHNjaGVtYUhhc1J1bGVzRm9yVHlwZTsKICAgIGZ1bmN0aW9uIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKSB7CiAgICAgIHJldHVybiBncm91cC5ydWxlcy5zb21lKChydWxlKSA9PiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gc2hvdWxkVXNlR3JvdXA7CiAgICBmdW5jdGlvbiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpIHsKICAgICAgdmFyIF9hOwogICAgICByZXR1cm4gc2NoZW1hMltydWxlLmtleXdvcmRdICE9PSB2b2lkIDAgfHwgKChfYSA9IHJ1bGUuZGVmaW5pdGlvbi5pbXBsZW1lbnRzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc29tZSgoa3dkKSA9PiBzY2hlbWEyW2t3ZF0gIT09IHZvaWQgMCkpOwogICAgfQogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IHNob3VsZFVzZVJ1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzCnZhciByZXF1aXJlX2RhdGFUeXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSBleHBvcnRzMi5jaGVja0RhdGFUeXBlcyA9IGV4cG9ydHMyLmNoZWNrRGF0YVR5cGUgPSBleHBvcnRzMi5jb2VyY2VBbmRDaGVja0RhdGFUeXBlID0gZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZXhwb3J0czIuZ2V0U2NoZW1hVHlwZXMgPSBleHBvcnRzMi5EYXRhVHlwZSA9IHZvaWQgMDsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGFwcGxpY2FiaWxpdHlfMSA9IHJlcXVpcmVfYXBwbGljYWJpbGl0eSgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBEYXRhVHlwZTsKICAgIChmdW5jdGlvbihEYXRhVHlwZTIpIHsKICAgICAgRGF0YVR5cGUyW0RhdGFUeXBlMlsiQ29ycmVjdCJdID0gMF0gPSAiQ29ycmVjdCI7CiAgICAgIERhdGFUeXBlMltEYXRhVHlwZTJbIldyb25nIl0gPSAxXSA9ICJXcm9uZyI7CiAgICB9KShEYXRhVHlwZSB8fCAoZXhwb3J0czIuRGF0YVR5cGUgPSBEYXRhVHlwZSA9IHt9KSk7CiAgICBmdW5jdGlvbiBnZXRTY2hlbWFUeXBlcyhzY2hlbWEyKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gZ2V0SlNPTlR5cGVzKHNjaGVtYTIudHlwZSk7CiAgICAgIGNvbnN0IGhhc051bGwgPSB0eXBlcy5pbmNsdWRlcygibnVsbCIpOwogICAgICBpZiAoaGFzTnVsbCkgewogICAgICAgIGlmIChzY2hlbWEyLm51bGxhYmxlID09PSBmYWxzZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZTogbnVsbCBjb250cmFkaWN0cyBudWxsYWJsZTogZmFsc2UiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAoIXR5cGVzLmxlbmd0aCAmJiBzY2hlbWEyLm51bGxhYmxlICE9PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignIm51bGxhYmxlIiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0ICJ0eXBlIicpOwogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1hMi5udWxsYWJsZSA9PT0gdHJ1ZSkKICAgICAgICAgIHR5cGVzLnB1c2goIm51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gdHlwZXM7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGdldFNjaGVtYVR5cGVzOwogICAgZnVuY3Rpb24gZ2V0SlNPTlR5cGVzKHRzKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gQXJyYXkuaXNBcnJheSh0cykgPyB0cyA6IHRzID8gW3RzXSA6IFtdOwogICAgICBpZiAodHlwZXMuZXZlcnkocnVsZXNfMS5pc0pTT05UeXBlKSkKICAgICAgICByZXR1cm4gdHlwZXM7CiAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBtdXN0IGJlIEpTT05UeXBlIG9yIEpTT05UeXBlW106ICIgKyB0eXBlcy5qb2luKCIsIikpOwogICAgfQogICAgZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZ2V0SlNPTlR5cGVzOwogICAgZnVuY3Rpb24gY29lcmNlQW5kQ2hlY2tEYXRhVHlwZShpdCwgdHlwZXMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBjb2VyY2VUbyA9IGNvZXJjZVRvVHlwZXModHlwZXMsIG9wdHMuY29lcmNlVHlwZXMpOwogICAgICBjb25zdCBjaGVja1R5cGVzID0gdHlwZXMubGVuZ3RoID4gMCAmJiAhKGNvZXJjZVRvLmxlbmd0aCA9PT0gMCAmJiB0eXBlcy5sZW5ndGggPT09IDEgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zY2hlbWFIYXNSdWxlc0ZvclR5cGUpKGl0LCB0eXBlc1swXSkpOwogICAgICBpZiAoY2hlY2tUeXBlcykgewogICAgICAgIGNvbnN0IHdyb25nVHlwZSA9IGNoZWNrRGF0YVR5cGVzKHR5cGVzLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMsIERhdGFUeXBlLldyb25nKTsKICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoKSA9PiB7CiAgICAgICAgICBpZiAoY29lcmNlVG8ubGVuZ3RoKQogICAgICAgICAgICBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByZXBvcnRUeXBlRXJyb3IoaXQpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBjaGVja1R5cGVzOwogICAgfQogICAgZXhwb3J0czIuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSA9IGNvZXJjZUFuZENoZWNrRGF0YVR5cGU7CiAgICB2YXIgQ09FUkNJQkxFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIl0pOwogICAgZnVuY3Rpb24gY29lcmNlVG9UeXBlcyh0eXBlcywgY29lcmNlVHlwZXMpIHsKICAgICAgcmV0dXJuIGNvZXJjZVR5cGVzID8gdHlwZXMuZmlsdGVyKCh0KSA9PiBDT0VSQ0lCTEUuaGFzKHQpIHx8IGNvZXJjZVR5cGVzID09PSAiYXJyYXkiICYmIHQgPT09ICJhcnJheSIpIDogW107CiAgICB9CiAgICBmdW5jdGlvbiBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBkYXRhVHlwZSA9IGdlbi5sZXQoImRhdGFUeXBlIiwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfWApOwogICAgICBjb25zdCBjb2VyY2VkID0gZ2VuLmxldCgiY29lcmNlZCIsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgIGlmIChvcHRzLmNvZXJjZVR5cGVzID09PSAiYXJyYXkiKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT0gJ29iamVjdCcgJiYgQXJyYXkuaXNBcnJheSgke2RhdGF9KSAmJiAke2RhdGF9Lmxlbmd0aCA9PSAxYCwgKCkgPT4gZ2VuLmFzc2lnbihkYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX1bMF1gKS5hc3NpZ24oZGF0YVR5cGUsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZGF0YX1gKS5pZihjaGVja0RhdGFUeXBlcyh0eXBlcywgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSwgKCkgPT4gZ2VuLmFzc2lnbihjb2VyY2VkLCBkYXRhKSkpOwogICAgICB9CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGApOwogICAgICBmb3IgKGNvbnN0IHQgb2YgY29lcmNlVG8pIHsKICAgICAgICBpZiAoQ09FUkNJQkxFLmhhcyh0KSB8fCB0ID09PSAiYXJyYXkiICYmIG9wdHMuY29lcmNlVHlwZXMgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvZXJjZVNwZWNpZmljVHlwZSh0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2VuLmVsc2UoKTsKICAgICAgcmVwb3J0VHlwZUVycm9yKGl0KTsKICAgICAgZ2VuLmVuZElmKCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKGRhdGEsIGNvZXJjZWQpOwogICAgICAgIGFzc2lnblBhcmVudERhdGEoaXQsIGNvZXJjZWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY29lcmNlU3BlY2lmaWNUeXBlKHQpIHsKICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFUeXBlfSA9PSAibnVtYmVyIiB8fCAke2RhdGFUeXBlfSA9PSAiYm9vbGVhbiJgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWAiIiArICR7ZGF0YX1gKS5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSBudWxsYCkuYXNzaWduKGNvZXJjZWQsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09ICJib29sZWFuIiB8fCAke2RhdGF9ID09PSBudWxsCiAgICAgICAgICAgICAgfHwgKCR7ZGF0YVR5cGV9ID09ICJzdHJpbmciICYmICR7ZGF0YX0gJiYgJHtkYXRhfSA9PSArJHtkYXRhfSlgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWArJHtkYXRhfWApOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbAogICAgICAgICAgICAgIHx8ICgke2RhdGFUeXBlfSA9PT0gInN0cmluZyIgJiYgJHtkYXRhfSAmJiAke2RhdGF9ID09ICske2RhdGF9ICYmICEoJHtkYXRhfSAlIDEpKWApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYCske2RhdGF9YCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSA9PT0gImZhbHNlIiB8fCAke2RhdGF9ID09PSAwIHx8ICR7ZGF0YX0gPT09IG51bGxgKS5hc3NpZ24oY29lcmNlZCwgZmFsc2UpLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICJ0cnVlIiB8fCAke2RhdGF9ID09PSAxYCkuYXNzaWduKGNvZXJjZWQsIHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICIiIHx8ICR7ZGF0YX0gPT09IDAgfHwgJHtkYXRhfSA9PT0gZmFsc2VgKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbihjb2VyY2VkLCBudWxsKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT09ICJzdHJpbmciIHx8ICR7ZGF0YVR5cGV9ID09PSAibnVtYmVyIgogICAgICAgICAgICAgIHx8ICR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbGApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYFske2RhdGF9XWApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduUGFyZW50RGF0YSh7IGdlbiwgcGFyZW50RGF0YSwgcGFyZW50RGF0YVByb3BlcnR5IH0sIGV4cHIpIHsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtwYXJlbnREYXRhfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cGFyZW50RGF0YX1bJHtwYXJlbnREYXRhUHJvcGVydHl9XWAsIGV4cHIpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrRGF0YVR5cGUoZGF0YVR5cGUsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QgPSBEYXRhVHlwZS5Db3JyZWN0KSB7CiAgICAgIGNvbnN0IEVRID0gY29ycmVjdCA9PT0gRGF0YVR5cGUuQ29ycmVjdCA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuRVEgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLk5FUTsKICAgICAgbGV0IGNvbmQ7CiAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHsKICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtFUX0gbnVsbGA7CiAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJvYmplY3QiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAmJiB0eXBlb2YgJHtkYXRhfSA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgIGNvbmQgPSBudW1Db25kKCgwLCBjb2RlZ2VuXzEuXylgISgke2RhdGF9ICUgMSkgJiYgIWlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY29uZCA9IG51bUNvbmQoKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAke0VRfSAke2RhdGFUeXBlfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvcnJlY3QgPT09IERhdGFUeXBlLkNvcnJlY3QgPyBjb25kIDogKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmQpOwogICAgICBmdW5jdGlvbiBudW1Db25kKF9jb25kID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLmFuZCkoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSA9PSAibnVtYmVyImAsIF9jb25kLCBzdHJpY3ROdW1zID8gKDAsIGNvZGVnZW5fMS5fKWBpc0Zpbml0ZSgke2RhdGF9KWAgOiBjb2RlZ2VuXzEubmlsKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGNoZWNrRGF0YVR5cGU7CiAgICBmdW5jdGlvbiBjaGVja0RhdGFUeXBlcyhkYXRhVHlwZXMsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpIHsKICAgICAgaWYgKGRhdGFUeXBlcy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gY2hlY2tEYXRhVHlwZShkYXRhVHlwZXNbMF0sIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpOwogICAgICB9CiAgICAgIGxldCBjb25kOwogICAgICBjb25zdCB0eXBlcyA9ICgwLCB1dGlsXzEudG9IYXNoKShkYXRhVHlwZXMpOwogICAgICBpZiAodHlwZXMuYXJyYXkgJiYgdHlwZXMub2JqZWN0KSB7CiAgICAgICAgY29uc3Qgbm90T2JqID0gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAhPSAib2JqZWN0ImA7CiAgICAgICAgY29uZCA9IHR5cGVzLm51bGwgPyBub3RPYmogOiAoMCwgY29kZWdlbl8xLl8pYCEke2RhdGF9IHx8ICR7bm90T2JqfWA7CiAgICAgICAgZGVsZXRlIHR5cGVzLm51bGw7CiAgICAgICAgZGVsZXRlIHR5cGVzLmFycmF5OwogICAgICAgIGRlbGV0ZSB0eXBlcy5vYmplY3Q7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY29uZCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgIH0KICAgICAgaWYgKHR5cGVzLm51bWJlcikKICAgICAgICBkZWxldGUgdHlwZXMuaW50ZWdlcjsKICAgICAgZm9yIChjb25zdCB0IGluIHR5cGVzKQogICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLmFuZCkoY29uZCwgY2hlY2tEYXRhVHlwZSh0LCBkYXRhLCBzdHJpY3ROdW1zLCBjb3JyZWN0KSk7CiAgICAgIHJldHVybiBjb25kOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZXMgPSBjaGVja0RhdGFUeXBlczsKICAgIHZhciB0eXBlRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYTogc2NoZW1hMiB9KSA9PiBgbXVzdCBiZSAke3NjaGVtYTJ9YCwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYVZhbHVlIH0pID0+IHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciID8gKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWEyfX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWFWYWx1ZX19YAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydFR5cGVFcnJvcihpdCkgewogICAgICBjb25zdCBjeHQgPSBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KTsKICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKShjeHQsIHR5cGVFcnJvcik7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSByZXBvcnRUeXBlRXJyb3I7CiAgICBmdW5jdGlvbiBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBjb25zdCBzY2hlbWFDb2RlID0gKDAsIHV0aWxfMS5zY2hlbWFSZWZPclZhbCkoaXQsIHNjaGVtYTIsICJ0eXBlIik7CiAgICAgIHJldHVybiB7CiAgICAgICAgZ2VuLAogICAgICAgIGtleXdvcmQ6ICJ0eXBlIiwKICAgICAgICBkYXRhLAogICAgICAgIHNjaGVtYTogc2NoZW1hMi50eXBlLAogICAgICAgIHNjaGVtYUNvZGUsCiAgICAgICAgc2NoZW1hVmFsdWU6IHNjaGVtYUNvZGUsCiAgICAgICAgcGFyZW50U2NoZW1hOiBzY2hlbWEyLAogICAgICAgIHBhcmFtczoge30sCiAgICAgICAgaXQKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMKdmFyIHJlcXVpcmVfZGVmYXVsdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFzc2lnbkRlZmF1bHRzID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdHMoaXQsIHR5KSB7CiAgICAgIGNvbnN0IHsgcHJvcGVydGllcywgaXRlbXMgfSA9IGl0LnNjaGVtYTsKICAgICAgaWYgKHR5ID09PSAib2JqZWN0IiAmJiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcGVydGllcykgewogICAgICAgICAgYXNzaWduRGVmYXVsdChpdCwga2V5LCBwcm9wZXJ0aWVzW2tleV0uZGVmYXVsdCk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKHR5ID09PSAiYXJyYXkiICYmIEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgaXRlbXMuZm9yRWFjaCgoc2NoLCBpKSA9PiBhc3NpZ25EZWZhdWx0KGl0LCBpLCBzY2guZGVmYXVsdCkpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hc3NpZ25EZWZhdWx0cyA9IGFzc2lnbkRlZmF1bHRzOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdChpdCwgcHJvcCwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBkYXRhLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKGRlZmF1bHRWYWx1ZSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgY2hpbGREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wKX1gOwogICAgICBpZiAoY29tcG9zaXRlUnVsZSkgewogICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYGRlZmF1bHQgaXMgaWdub3JlZCBmb3I6ICR7Y2hpbGREYXRhfWApOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBsZXQgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NoaWxkRGF0YX0gPT09IHVuZGVmaW5lZGA7CiAgICAgIGlmIChvcHRzLnVzZURlZmF1bHRzID09PSAiZW1wdHkiKSB7CiAgICAgICAgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmRpdGlvbn0gfHwgJHtjaGlsZERhdGF9ID09PSBudWxsIHx8ICR7Y2hpbGREYXRhfSA9PT0gIiJgOwogICAgICB9CiAgICAgIGdlbi5pZihjb25kaXRpb24sICgwLCBjb2RlZ2VuXzEuXylgJHtjaGlsZERhdGF9ID0gJHsoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkoZGVmYXVsdFZhbHVlKX1gKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzCnZhciByZXF1aXJlX2NvZGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVVbmlvbiA9IGV4cG9ydHMyLnZhbGlkYXRlQXJyYXkgPSBleHBvcnRzMi51c2VQYXR0ZXJuID0gZXhwb3J0czIuY2FsbFZhbGlkYXRlQ29kZSA9IGV4cG9ydHMyLnNjaGVtYVByb3BlcnRpZXMgPSBleHBvcnRzMi5hbGxTY2hlbWFQcm9wZXJ0aWVzID0gZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IGV4cG9ydHMyLnByb3BlcnR5SW5EYXRhID0gZXhwb3J0czIuaXNPd25Qcm9wZXJ0eSA9IGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gZXhwb3J0czIucmVwb3J0TWlzc2luZ1Byb3AgPSBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gY2hlY2tSZXBvcnRNaXNzaW5nUHJvcChjeHQsIHByb3ApIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gewogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6ICgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wfWAgfSwgdHJ1ZSk7CiAgICAgICAgY3h0LmVycm9yKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IGNoZWNrUmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBjaGVja01pc3NpbmdQcm9wKHsgZ2VuLCBkYXRhLCBpdDogeyBvcHRzIH0gfSwgcHJvcGVydGllcywgbWlzc2luZykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5vcikoLi4ucHJvcGVydGllcy5tYXAoKHByb3ApID0+ICgwLCBjb2RlZ2VuXzEuYW5kKShub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKDAsIGNvZGVnZW5fMS5fKWAke21pc3Npbmd9ID0gJHtwcm9wfWApKSk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gY2hlY2tNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIHJlcG9ydE1pc3NpbmdQcm9wKGN4dCwgbWlzc2luZykgewogICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBtaXNzaW5nIH0sIHRydWUpOwogICAgICBjeHQuZXJyb3IoKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydE1pc3NpbmdQcm9wID0gcmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBoYXNQcm9wRnVuYyhnZW4pIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5ib3VuZC1tZXRob2QKICAgICAgICByZWY6IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5YAogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gaGFzUHJvcEZ1bmM7CiAgICBmdW5jdGlvbiBpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpIHsKICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtoYXNQcm9wRnVuYyhnZW4pfS5jYWxsKCR7ZGF0YX0sICR7cHJvcGVydHl9KWA7CiAgICB9CiAgICBleHBvcnRzMi5pc093blByb3BlcnR5ID0gaXNPd25Qcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIHByb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcGVydHksIG93blByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocHJvcGVydHkpfSAhPT0gdW5kZWZpbmVkYDsKICAgICAgcmV0dXJuIG93blByb3BlcnRpZXMgPyAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpfWAgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIucHJvcGVydHlJbkRhdGEgPSBwcm9wZXJ0eUluRGF0YTsKICAgIGZ1bmN0aW9uIG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wZXJ0eSwgb3duUHJvcGVydGllcykgewogICAgICBjb25zdCBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wZXJ0eSl9ID09PSB1bmRlZmluZWRgOwogICAgICByZXR1cm4gb3duUHJvcGVydGllcyA/ICgwLCBjb2RlZ2VuXzEub3IpKGNvbmQsICgwLCBjb2RlZ2VuXzEubm90KShpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpKSkgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IG5vUHJvcGVydHlJbkRhdGE7CiAgICBmdW5jdGlvbiBhbGxTY2hlbWFQcm9wZXJ0aWVzKHNjaGVtYU1hcCkgewogICAgICByZXR1cm4gc2NoZW1hTWFwID8gT2JqZWN0LmtleXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+IHAgIT09ICJfX3Byb3RvX18iKSA6IFtdOwogICAgfQogICAgZXhwb3J0czIuYWxsU2NoZW1hUHJvcGVydGllcyA9IGFsbFNjaGVtYVByb3BlcnRpZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFQcm9wZXJ0aWVzKGl0LCBzY2hlbWFNYXApIHsKICAgICAgcmV0dXJuIGFsbFNjaGVtYVByb3BlcnRpZXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+ICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hTWFwW3BdKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFQcm9wZXJ0aWVzID0gc2NoZW1hUHJvcGVydGllczsKICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZUNvZGUoeyBzY2hlbWFDb2RlLCBkYXRhLCBpdDogeyBnZW4sIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCwgZXJyb3JQYXRoIH0sIGl0IH0sIGZ1bmMsIGNvbnRleHQsIHBhc3NTY2hlbWEpIHsKICAgICAgY29uc3QgZGF0YUFuZFNjaGVtYSA9IHBhc3NTY2hlbWEgPyAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0sICR7ZGF0YX0sICR7dG9wU2NoZW1hUmVmfSR7c2NoZW1hUGF0aH1gIDogZGF0YTsKICAgICAgY29uc3QgdmFsQ3h0ID0gWwogICAgICAgIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgZXJyb3JQYXRoKV0sCiAgICAgICAgW25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCBpdC5wYXJlbnREYXRhXSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgaXQucGFyZW50RGF0YVByb3BlcnR5XSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCBuYW1lc18xLmRlZmF1bHQucm9vdERhdGFdCiAgICAgIF07CiAgICAgIGlmIChpdC5vcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgdmFsQ3h0LnB1c2goW25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgbmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzXSk7CiAgICAgIGNvbnN0IGFyZ3MgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YUFuZFNjaGVtYX0sICR7Z2VuLm9iamVjdCguLi52YWxDeHQpfWA7CiAgICAgIHJldHVybiBjb250ZXh0ICE9PSBjb2RlZ2VuXzEubmlsID8gKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9LmNhbGwoJHtjb250ZXh0fSwgJHthcmdzfSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9KCR7YXJnc30pYDsKICAgIH0KICAgIGV4cG9ydHMyLmNhbGxWYWxpZGF0ZUNvZGUgPSBjYWxsVmFsaWRhdGVDb2RlOwogICAgdmFyIG5ld1JlZ0V4cCA9ICgwLCBjb2RlZ2VuXzEuXylgbmV3IFJlZ0V4cGA7CiAgICBmdW5jdGlvbiB1c2VQYXR0ZXJuKHsgZ2VuLCBpdDogeyBvcHRzIH0gfSwgcGF0dGVybikgewogICAgICBjb25zdCB1ID0gb3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgIGNvbnN0IHsgcmVnRXhwIH0gPSBvcHRzLmNvZGU7CiAgICAgIGNvbnN0IHJ4ID0gcmVnRXhwKHBhdHRlcm4sIHUpOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoInBhdHRlcm4iLCB7CiAgICAgICAga2V5OiByeC50b1N0cmluZygpLAogICAgICAgIHJlZjogcngsCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWAke3JlZ0V4cC5jb2RlID09PSAibmV3IFJlZ0V4cCIgPyBuZXdSZWdFeHAgOiAoMCwgdXRpbF8yLnVzZUZ1bmMpKGdlbiwgcmVnRXhwKX0oJHtwYXR0ZXJufSwgJHt1fSlgCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlUGF0dGVybiA9IHVzZVBhdHRlcm47CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUFycmF5KGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgIGNvbnN0IHZhbGlkQXJyID0gZ2VuLmxldCgidmFsaWQiLCB0cnVlKTsKICAgICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5hc3NpZ24odmFsaWRBcnIsIGZhbHNlKSk7CiAgICAgICAgcmV0dXJuIHZhbGlkQXJyOwogICAgICB9CiAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5icmVhaygpKTsKICAgICAgcmV0dXJuIHZhbGlkOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKG5vdFZhbGlkKSB7CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQsCiAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bQogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksIG5vdFZhbGlkKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVBcnJheSA9IHZhbGlkYXRlQXJyYXk7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaW9uKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgY29uc3QgYWx3YXlzVmFsaWQgPSBzY2hlbWEyLnNvbWUoKHNjaCkgPT4gKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpOwogICAgICBpZiAoYWx3YXlzVmFsaWQgJiYgIWl0Lm9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHNjaGVtYTIuZm9yRWFjaCgoX3NjaCwgaSkgPT4gewogICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZCwKICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZH0gfHwgJHtzY2hWYWxpZH1gKTsKICAgICAgICBjb25zdCBtZXJnZWQgPSBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHNjaFZhbGlkKTsKICAgICAgICBpZiAoIW1lcmdlZCkKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpKTsKICAgICAgfSkpOwogICAgICBjeHQucmVzdWx0KHZhbGlkLCAoKSA9PiBjeHQucmVzZXQoKSwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlVW5pb24gPSB2YWxpZGF0ZVVuaW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9rZXl3b3JkLmpzCnZhciByZXF1aXJlX2tleXdvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSBleHBvcnRzMi52YWxpZFNjaGVtYVR5cGUgPSBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIG1hY3JvS2V5d29yZENvZGUoY3h0LCBkZWYpIHsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBtYWNyb1NjaGVtYSA9IGRlZi5tYWNyby5jYWxsKGl0LnNlbGYsIHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpOwogICAgICBjb25zdCBzY2hlbWFSZWYgPSB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgbWFjcm9TY2hlbWEpOwogICAgICBpZiAoaXQub3B0cy52YWxpZGF0ZVNjaGVtYSAhPT0gZmFsc2UpCiAgICAgICAgaXQuc2VsZi52YWxpZGF0ZVNjaGVtYShtYWNyb1NjaGVtYSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgIHNjaGVtYTogbWFjcm9TY2hlbWEsCiAgICAgICAgc2NoZW1hUGF0aDogY29kZWdlbl8xLm5pbCwKICAgICAgICBlcnJTY2hlbWFQYXRoOiBgJHtpdC5lcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9YCwKICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaGVtYVJlZiwKICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgIH0sIHZhbGlkKTsKICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICB9CiAgICBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gbWFjcm9LZXl3b3JkQ29kZTsKICAgIGZ1bmN0aW9uIGZ1bmNLZXl3b3JkQ29kZShjeHQsIGRlZikgewogICAgICB2YXIgX2E7CiAgICAgIGNvbnN0IHsgZ2VuLCBrZXl3b3JkLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgJGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGNoZWNrQXN5bmNLZXl3b3JkKGl0LCBkZWYpOwogICAgICBjb25zdCB2YWxpZGF0ZSA9ICEkZGF0YSAmJiBkZWYuY29tcGlsZSA/IGRlZi5jb21waWxlLmNhbGwoaXQuc2VsZiwgc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCkgOiBkZWYudmFsaWRhdGU7CiAgICAgIGNvbnN0IHZhbGlkYXRlUmVmID0gdXNlS2V5d29yZChnZW4sIGtleXdvcmQsIHZhbGlkYXRlKTsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgdmFsaWRhdGVLZXl3b3JkKTsKICAgICAgY3h0Lm9rKChfYSA9IGRlZi52YWxpZCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsaWQpOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUtleXdvcmQoKSB7CiAgICAgICAgaWYgKGRlZi5lcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICBhc3NpZ25WYWxpZCgpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBydWxlRXJycyA9IGRlZi5hc3luYyA/IHZhbGlkYXRlQXN5bmMoKSA6IHZhbGlkYXRlU3luYygpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gYWRkRXJycyhjeHQsIHJ1bGVFcnJzKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlQXN5bmMoKSB7CiAgICAgICAgY29uc3QgcnVsZUVycnMgPSBnZW4ubGV0KCJydWxlRXJycyIsIG51bGwpOwogICAgICAgIGdlbi50cnkoKCkgPT4gYXNzaWduVmFsaWQoKDAsIGNvZGVnZW5fMS5fKWBhd2FpdCBgKSwgKGUpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZX0gaW5zdGFuY2VvZiAke2l0LlZhbGlkYXRpb25FcnJvcn1gLCAoKSA9PiBnZW4uYXNzaWduKHJ1bGVFcnJzLCAoMCwgY29kZWdlbl8xLl8pYCR7ZX0uZXJyb3JzYCksICgpID0+IGdlbi50aHJvdyhlKSkpOwogICAgICAgIHJldHVybiBydWxlRXJyczsKICAgICAgfQogICAgICBmdW5jdGlvbiB2YWxpZGF0ZVN5bmMoKSB7CiAgICAgICAgY29uc3QgdmFsaWRhdGVFcnJzID0gKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlUmVmfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWRhdGVFcnJzLCBudWxsKTsKICAgICAgICBhc3NpZ25WYWxpZChjb2RlZ2VuXzEubmlsKTsKICAgICAgICByZXR1cm4gdmFsaWRhdGVFcnJzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFzc2lnblZhbGlkKF9hd2FpdCA9IGRlZi5hc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgYCA6IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBjb25zdCBwYXNzQ3h0ID0gaXQub3B0cy5wYXNzQ29udGV4dCA/IG5hbWVzXzEuZGVmYXVsdC50aGlzIDogbmFtZXNfMS5kZWZhdWx0LnNlbGY7CiAgICAgICAgY29uc3QgcGFzc1NjaGVtYSA9ICEoImNvbXBpbGUiIGluIGRlZiAmJiAhJGRhdGEgfHwgZGVmLnNjaGVtYSA9PT0gZmFsc2UpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHtfYXdhaXR9JHsoMCwgY29kZV8xLmNhbGxWYWxpZGF0ZUNvZGUpKGN4dCwgdmFsaWRhdGVSZWYsIHBhc3NDeHQsIHBhc3NTY2hlbWEpfWAsIGRlZi5tb2RpZnlpbmcpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlcG9ydEVycnMoZXJyb3JzKSB7CiAgICAgICAgdmFyIF9hMjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKChfYTIgPSBkZWYudmFsaWQpICE9PSBudWxsICYmIF9hMiAhPT0gdm9pZCAwID8gX2EyIDogdmFsaWQpLCBlcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBmdW5jS2V5d29yZENvZGU7CiAgICBmdW5jdGlvbiBtb2RpZnlEYXRhKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgZ2VuLmlmKGl0LnBhcmVudERhdGEsICgpID0+IGdlbi5hc3NpZ24oZGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LnBhcmVudERhdGF9WyR7aXQucGFyZW50RGF0YVByb3BlcnR5fV1gKSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFcnJzKGN4dCwgZXJycykgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWBBcnJheS5pc0FycmF5KCR7ZXJyc30pYCwgKCkgPT4gewogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCkuYXNzaWduKG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ubGVuZ3RoYCk7CiAgICAgICAgKDAsIGVycm9yc18xLmV4dGVuZEVycm9ycykoY3h0KTsKICAgICAgfSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY0tleXdvcmQoeyBzY2hlbWFFbnYgfSwgZGVmKSB7CiAgICAgIGlmIChkZWYuYXN5bmMgJiYgIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhc3luYyBrZXl3b3JkIGluIHN5bmMgc2NoZW1hIik7CiAgICB9CiAgICBmdW5jdGlvbiB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgcmVzdWx0KSB7CiAgICAgIGlmIChyZXN1bHQgPT09IHZvaWQgMCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGtleXdvcmQgIiR7a2V5d29yZH0iIGZhaWxlZCB0byBjb21waWxlYCk7CiAgICAgIHJldHVybiBnZW4uc2NvcGVWYWx1ZSgia2V5d29yZCIsIHR5cGVvZiByZXN1bHQgPT0gImZ1bmN0aW9uIiA/IHsgcmVmOiByZXN1bHQgfSA6IHsgcmVmOiByZXN1bHQsIGNvZGU6ICgwLCBjb2RlZ2VuXzEuc3RyaW5naWZ5KShyZXN1bHQpIH0pOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRTY2hlbWFUeXBlKHNjaGVtYTIsIHNjaGVtYVR5cGUsIGFsbG93VW5kZWZpbmVkID0gZmFsc2UpIHsKICAgICAgcmV0dXJuICFzY2hlbWFUeXBlLmxlbmd0aCB8fCBzY2hlbWFUeXBlLnNvbWUoKHN0KSA9PiBzdCA9PT0gImFycmF5IiA/IEFycmF5LmlzQXJyYXkoc2NoZW1hMikgOiBzdCA9PT0gIm9iamVjdCIgPyBzY2hlbWEyICYmIHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYTIpIDogdHlwZW9mIHNjaGVtYTIgPT0gc3QgfHwgYWxsb3dVbmRlZmluZWQgJiYgdHlwZW9mIHNjaGVtYTIgPT0gInVuZGVmaW5lZCIpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRTY2hlbWFUeXBlID0gdmFsaWRTY2hlbWFUeXBlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkVXNhZ2UoeyBzY2hlbWE6IHNjaGVtYTIsIG9wdHMsIHNlbGY6IHNlbGYyLCBlcnJTY2hlbWFQYXRoIH0sIGRlZiwga2V5d29yZCkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShkZWYua2V5d29yZCkgPyAhZGVmLmtleXdvcmQuaW5jbHVkZXMoa2V5d29yZCkgOiBkZWYua2V5d29yZCAhPT0ga2V5d29yZCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIH0KICAgICAgY29uc3QgZGVwcyA9IGRlZi5kZXBlbmRlbmNpZXM7CiAgICAgIGlmIChkZXBzID09PSBudWxsIHx8IGRlcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlcHMuc29tZSgoa3dkKSA9PiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNjaGVtYTIsIGt3ZCkpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJlbnQgc2NoZW1hIG11c3QgaGF2ZSBkZXBlbmRlbmNpZXMgb2YgJHtrZXl3b3JkfTogJHtkZXBzLmpvaW4oIiwiKX1gKTsKICAgICAgfQogICAgICBpZiAoZGVmLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgY29uc3QgdmFsaWQgPSBkZWYudmFsaWRhdGVTY2hlbWEoc2NoZW1hMltrZXl3b3JkXSk7CiAgICAgICAgaWYgKCF2YWxpZCkgewogICAgICAgICAgY29uc3QgbXNnID0gYGtleXdvcmQgIiR7a2V5d29yZH0iIHZhbHVlIGlzIGludmFsaWQgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSI6IGAgKyBzZWxmMi5lcnJvcnNUZXh0KGRlZi52YWxpZGF0ZVNjaGVtYS5lcnJvcnMpOwogICAgICAgICAgaWYgKG9wdHMudmFsaWRhdGVTY2hlbWEgPT09ICJsb2ciKQogICAgICAgICAgICBzZWxmMi5sb2dnZXIuZXJyb3IobXNnKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZUtleXdvcmRVc2FnZSA9IHZhbGlkYXRlS2V5d29yZFVzYWdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9zdWJzY2hlbWEuanMKdmFyIHJlcXVpcmVfc3Vic2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL3N1YnNjaGVtYS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4cG9ydHMyLmV4dGVuZFN1YnNjaGVtYURhdGEgPSBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICBmdW5jdGlvbiBnZXRTdWJzY2hlbWEoaXQsIHsga2V5d29yZCwgc2NoZW1hUHJvcCwgc2NoZW1hOiBzY2hlbWEyLCBzY2hlbWFQYXRoLCBlcnJTY2hlbWFQYXRoLCB0b3BTY2hlbWFSZWYgfSkgewogICAgICBpZiAoa2V5d29yZCAhPT0gdm9pZCAwICYmIHNjaGVtYTIgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAia2V5d29yZCIgYW5kICJzY2hlbWEiIHBhc3NlZCwgb25seSBvbmUgYWxsb3dlZCcpOwogICAgICB9CiAgICAgIGlmIChrZXl3b3JkICE9PSB2b2lkIDApIHsKICAgICAgICBjb25zdCBzY2ggPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgcmV0dXJuIHNjaGVtYVByb3AgPT09IHZvaWQgMCA/IHsKICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgc2NoZW1hUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAke2l0LnNjaGVtYVBhdGh9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShrZXl3b3JkKX1gLAogICAgICAgICAgZXJyU2NoZW1hUGF0aDogYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWAKICAgICAgICB9IDogewogICAgICAgICAgc2NoZW1hOiBzY2hbc2NoZW1hUHJvcF0sCiAgICAgICAgICBzY2hlbWFQYXRoOiAoMCwgY29kZWdlbl8xLl8pYCR7aXQuc2NoZW1hUGF0aH0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGtleXdvcmQpfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoc2NoZW1hUHJvcCl9YCwKICAgICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH0vJHsoMCwgdXRpbF8xLmVzY2FwZUZyYWdtZW50KShzY2hlbWFQcm9wKX1gCiAgICAgICAgfTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKHNjaGVtYVBhdGggPT09IHZvaWQgMCB8fCBlcnJTY2hlbWFQYXRoID09PSB2b2lkIDAgfHwgdG9wU2NoZW1hUmVmID09PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignInNjaGVtYVBhdGgiLCAiZXJyU2NoZW1hUGF0aCIgYW5kICJ0b3BTY2hlbWFSZWYiIGFyZSByZXF1aXJlZCB3aXRoICJzY2hlbWEiJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzY2hlbWE6IHNjaGVtYTIsCiAgICAgICAgICBzY2hlbWFQYXRoLAogICAgICAgICAgdG9wU2NoZW1hUmVmLAogICAgICAgICAgZXJyU2NoZW1hUGF0aAogICAgICAgIH07CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKCdlaXRoZXIgImtleXdvcmQiIG9yICJzY2hlbWEiIG11c3QgYmUgcGFzc2VkJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSBnZXRTdWJzY2hlbWE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFEYXRhKHN1YnNjaGVtYSwgaXQsIHsgZGF0YVByb3AsIGRhdGFQcm9wVHlwZTogZHBUeXBlLCBkYXRhLCBkYXRhVHlwZXMsIHByb3BlcnR5TmFtZSB9KSB7CiAgICAgIGlmIChkYXRhICE9PSB2b2lkIDAgJiYgZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAiZGF0YSIgYW5kICJkYXRhUHJvcCIgcGFzc2VkLCBvbmx5IG9uZSBhbGxvd2VkJyk7CiAgICAgIH0KICAgICAgY29uc3QgeyBnZW4gfSA9IGl0OwogICAgICBpZiAoZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHsgZXJyb3JQYXRoLCBkYXRhUGF0aEFyciwgb3B0cyB9ID0gaXQ7CiAgICAgICAgY29uc3QgbmV4dERhdGEgPSBnZW4ubGV0KCJkYXRhIiwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LmRhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCl9YCwgdHJ1ZSk7CiAgICAgICAgZGF0YUNvbnRleHRQcm9wcyhuZXh0RGF0YSk7CiAgICAgICAgc3Vic2NoZW1hLmVycm9yUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShkYXRhUHJvcCwgZHBUeXBlLCBvcHRzLmpzUHJvcGVydHlTeW50YXgpfWA7CiAgICAgICAgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eSA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhUHJvcH1gOwogICAgICAgIHN1YnNjaGVtYS5kYXRhUGF0aEFyciA9IFsuLi5kYXRhUGF0aEFyciwgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eV07CiAgICAgIH0KICAgICAgaWYgKGRhdGEgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IG5leHREYXRhID0gZGF0YSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gZGF0YSA6IGdlbi5sZXQoImRhdGEiLCBkYXRhLCB0cnVlKTsKICAgICAgICBkYXRhQ29udGV4dFByb3BzKG5leHREYXRhKTsKICAgICAgICBpZiAocHJvcGVydHlOYW1lICE9PSB2b2lkIDApCiAgICAgICAgICBzdWJzY2hlbWEucHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lOwogICAgICB9CiAgICAgIGlmIChkYXRhVHlwZXMpCiAgICAgICAgc3Vic2NoZW1hLmRhdGFUeXBlcyA9IGRhdGFUeXBlczsKICAgICAgZnVuY3Rpb24gZGF0YUNvbnRleHRQcm9wcyhfbmV4dERhdGEpIHsKICAgICAgICBzdWJzY2hlbWEuZGF0YSA9IF9uZXh0RGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YUxldmVsID0gaXQuZGF0YUxldmVsICsgMTsKICAgICAgICBzdWJzY2hlbWEuZGF0YVR5cGVzID0gW107CiAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHN1YnNjaGVtYS5wYXJlbnREYXRhID0gaXQuZGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YU5hbWVzID0gWy4uLml0LmRhdGFOYW1lcywgX25leHREYXRhXTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hRGF0YSA9IGV4dGVuZFN1YnNjaGVtYURhdGE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFNb2RlKHN1YnNjaGVtYSwgeyBqdGREaXNjcmltaW5hdG9yLCBqdGRNZXRhZGF0YSwgY29tcG9zaXRlUnVsZSwgY3JlYXRlRXJyb3JzLCBhbGxFcnJvcnMgfSkgewogICAgICBpZiAoY29tcG9zaXRlUnVsZSAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jb21wb3NpdGVSdWxlID0gY29tcG9zaXRlUnVsZTsKICAgICAgaWYgKGNyZWF0ZUVycm9ycyAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jcmVhdGVFcnJvcnMgPSBjcmVhdGVFcnJvcnM7CiAgICAgIGlmIChhbGxFcnJvcnMgIT09IHZvaWQgMCkKICAgICAgICBzdWJzY2hlbWEuYWxsRXJyb3JzID0gYWxsRXJyb3JzOwogICAgICBzdWJzY2hlbWEuanRkRGlzY3JpbWluYXRvciA9IGp0ZERpc2NyaW1pbmF0b3I7CiAgICAgIHN1YnNjaGVtYS5qdGRNZXRhZGF0YSA9IGp0ZE1ldGFkYXRhOwogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4dGVuZFN1YnNjaGVtYU1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtZGVlcC1lcXVhbC1ucG0tMy4xLjMtNzkwZWRjZmNmNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtZGVlcC1lcXVhbC9pbmRleC5qcwp2YXIgcmVxdWlyZV9mYXN0X2RlZXBfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC1kZWVwLWVxdWFsLW5wbS0zLjEuMy03OTBlZGNmY2Y1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC1kZWVwLWVxdWFsL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gZXF1YWwoYSwgYikgewogICAgICBpZiAoYSA9PT0gYikgcmV0dXJuIHRydWU7CiAgICAgIGlmIChhICYmIGIgJiYgdHlwZW9mIGEgPT0gIm9iamVjdCIgJiYgdHlwZW9mIGIgPT0gIm9iamVjdCIpIHsKICAgICAgICBpZiAoYS5jb25zdHJ1Y3RvciAhPT0gYi5jb25zdHJ1Y3RvcikgcmV0dXJuIGZhbHNlOwogICAgICAgIHZhciBsZW5ndGgsIGksIGtleXM7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHsKICAgICAgICAgIGxlbmd0aCA9IGEubGVuZ3RoOwogICAgICAgICAgaWYgKGxlbmd0aCAhPSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgICAgaWYgKCFlcXVhbChhW2ldLCBiW2ldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGlmIChhLmNvbnN0cnVjdG9yID09PSBSZWdFeHApIHJldHVybiBhLnNvdXJjZSA9PT0gYi5zb3VyY2UgJiYgYS5mbGFncyA9PT0gYi5mbGFnczsKICAgICAgICBpZiAoYS52YWx1ZU9mICE9PSBPYmplY3QucHJvdG90eXBlLnZhbHVlT2YpIHJldHVybiBhLnZhbHVlT2YoKSA9PT0gYi52YWx1ZU9mKCk7CiAgICAgICAgaWYgKGEudG9TdHJpbmcgIT09IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcpIHJldHVybiBhLnRvU3RyaW5nKCkgPT09IGIudG9TdHJpbmcoKTsKICAgICAgICBrZXlzID0gT2JqZWN0LmtleXMoYSk7CiAgICAgICAgbGVuZ3RoID0ga2V5cy5sZW5ndGg7CiAgICAgICAgaWYgKGxlbmd0aCAhPT0gT2JqZWN0LmtleXMoYikubGVuZ3RoKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIGtleXNbaV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkgewogICAgICAgICAgdmFyIGtleSA9IGtleXNbaV07CiAgICAgICAgICBpZiAoIWVxdWFsKGFba2V5XSwgYltrZXldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gYSAhPT0gYSAmJiBiICE9PSBiOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbi1zY2hlbWEtdHJhdmVyc2UtbnBtLTEuMC4wLWZiMzY4NGY0ZjAtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uLXNjaGVtYS10cmF2ZXJzZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9qc29uX3NjaGVtYV90cmF2ZXJzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uLXNjaGVtYS10cmF2ZXJzZS1ucG0tMS4wLjAtZmIzNjg0ZjRmMC0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb24tc2NoZW1hLXRyYXZlcnNlL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHRyYXZlcnNlID0gbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24oc2NoZW1hMiwgb3B0cywgY2IpIHsKICAgICAgaWYgKHR5cGVvZiBvcHRzID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjYiA9IG9wdHM7CiAgICAgICAgb3B0cyA9IHt9OwogICAgICB9CiAgICAgIGNiID0gb3B0cy5jYiB8fCBjYjsKICAgICAgdmFyIHByZSA9IHR5cGVvZiBjYiA9PSAiZnVuY3Rpb24iID8gY2IgOiBjYi5wcmUgfHwgZnVuY3Rpb24oKSB7CiAgICAgIH07CiAgICAgIHZhciBwb3N0ID0gY2IucG9zdCB8fCBmdW5jdGlvbigpIHsKICAgICAgfTsKICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwgIiIsIHNjaGVtYTIpOwogICAgfTsKICAgIHRyYXZlcnNlLmtleXdvcmRzID0gewogICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgIGl0ZW1zOiB0cnVlLAogICAgICBjb250YWluczogdHJ1ZSwKICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgIHByb3BlcnR5TmFtZXM6IHRydWUsCiAgICAgIG5vdDogdHJ1ZSwKICAgICAgaWY6IHRydWUsCiAgICAgIHRoZW46IHRydWUsCiAgICAgIGVsc2U6IHRydWUKICAgIH07CiAgICB0cmF2ZXJzZS5hcnJheUtleXdvcmRzID0gewogICAgICBpdGVtczogdHJ1ZSwKICAgICAgYWxsT2Y6IHRydWUsCiAgICAgIGFueU9mOiB0cnVlLAogICAgICBvbmVPZjogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnByb3BzS2V5d29yZHMgPSB7CiAgICAgICRkZWZzOiB0cnVlLAogICAgICBkZWZpbml0aW9uczogdHJ1ZSwKICAgICAgcHJvcGVydGllczogdHJ1ZSwKICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgIGRlcGVuZGVuY2llczogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnNraXBLZXl3b3JkcyA9IHsKICAgICAgZGVmYXVsdDogdHJ1ZSwKICAgICAgZW51bTogdHJ1ZSwKICAgICAgY29uc3Q6IHRydWUsCiAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICBtYXhpbXVtOiB0cnVlLAogICAgICBtaW5pbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNYXhpbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNaW5pbXVtOiB0cnVlLAogICAgICBtdWx0aXBsZU9mOiB0cnVlLAogICAgICBtYXhMZW5ndGg6IHRydWUsCiAgICAgIG1pbkxlbmd0aDogdHJ1ZSwKICAgICAgcGF0dGVybjogdHJ1ZSwKICAgICAgZm9ybWF0OiB0cnVlLAogICAgICBtYXhJdGVtczogdHJ1ZSwKICAgICAgbWluSXRlbXM6IHRydWUsCiAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLAogICAgICBtYXhQcm9wZXJ0aWVzOiB0cnVlLAogICAgICBtaW5Qcm9wZXJ0aWVzOiB0cnVlCiAgICB9OwogICAgZnVuY3Rpb24gX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwganNvblB0ciwgcm9vdFNjaGVtYSwgcGFyZW50SnNvblB0ciwgcGFyZW50S2V5d29yZCwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCkgewogICAgICBpZiAoc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheShzY2hlbWEyKSkgewogICAgICAgIHByZShzY2hlbWEyLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRKc29uUHRyLCBwYXJlbnRLZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2NoZW1hMikgewogICAgICAgICAgdmFyIHNjaCA9IHNjaGVtYTJba2V5XTsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgaWYgKGtleSBpbiB0cmF2ZXJzZS5hcnJheUtleXdvcmRzKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspCiAgICAgICAgICAgICAgICBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2hbaV0sIGpzb25QdHIgKyAiLyIgKyBrZXkgKyAiLyIgKyBpLCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIsIGkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5wcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGZvciAodmFyIHByb3AgaW4gc2NoKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW3Byb3BdLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgZXNjYXBlSnNvblB0cihwcm9wKSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEyLCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gdHJhdmVyc2Uua2V5d29yZHMgfHwgb3B0cy5hbGxLZXlzICYmICEoa2V5IGluIHRyYXZlcnNlLnNraXBLZXl3b3JkcykpIHsKICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoLCBqc29uUHRyICsgIi8iICsga2V5LCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwb3N0KHNjaGVtYTIsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUHRyKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVzb2x2ZS5qcwp2YXIgcmVxdWlyZV9yZXNvbHZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3Jlc29sdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdldFNjaGVtYVJlZnMgPSBleHBvcnRzMi5yZXNvbHZlVXJsID0gZXhwb3J0czIubm9ybWFsaXplSWQgPSBleHBvcnRzMi5fZ2V0RnVsbFBhdGggPSBleHBvcnRzMi5nZXRGdWxsUGF0aCA9IGV4cG9ydHMyLmlubGluZVJlZiA9IHZvaWQgMDsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICB2YXIgdHJhdmVyc2UgPSByZXF1aXJlX2pzb25fc2NoZW1hX3RyYXZlcnNlKCk7CiAgICB2YXIgU0lNUExFX0lOTElORUQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJ0eXBlIiwKICAgICAgImZvcm1hdCIsCiAgICAgICJwYXR0ZXJuIiwKICAgICAgIm1heExlbmd0aCIsCiAgICAgICJtaW5MZW5ndGgiLAogICAgICAibWF4UHJvcGVydGllcyIsCiAgICAgICJtaW5Qcm9wZXJ0aWVzIiwKICAgICAgIm1heEl0ZW1zIiwKICAgICAgIm1pbkl0ZW1zIiwKICAgICAgIm1heGltdW0iLAogICAgICAibWluaW11bSIsCiAgICAgICJ1bmlxdWVJdGVtcyIsCiAgICAgICJtdWx0aXBsZU9mIiwKICAgICAgInJlcXVpcmVkIiwKICAgICAgImVudW0iLAogICAgICAiY29uc3QiCiAgICBdKTsKICAgIGZ1bmN0aW9uIGlubGluZVJlZihzY2hlbWEyLCBsaW1pdCA9IHRydWUpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgaWYgKGxpbWl0ID09PSB0cnVlKQogICAgICAgIHJldHVybiAhaGFzUmVmKHNjaGVtYTIpOwogICAgICBpZiAoIWxpbWl0KQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgcmV0dXJuIGNvdW50S2V5cyhzY2hlbWEyKSA8PSBsaW1pdDsKICAgIH0KICAgIGV4cG9ydHMyLmlubGluZVJlZiA9IGlubGluZVJlZjsKICAgIHZhciBSRUZfS0VZV09SRFMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICIkcmVmIiwKICAgICAgIiRyZWN1cnNpdmVSZWYiLAogICAgICAiJHJlY3Vyc2l2ZUFuY2hvciIsCiAgICAgICIkZHluYW1pY1JlZiIsCiAgICAgICIkZHluYW1pY0FuY2hvciIKICAgIF0pOwogICAgZnVuY3Rpb24gaGFzUmVmKHNjaGVtYTIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmIChSRUZfS0VZV09SRFMuaGFzKGtleSkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2tleV07CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSAmJiBzY2guc29tZShoYXNSZWYpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIgJiYgaGFzUmVmKHNjaCkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBmdW5jdGlvbiBjb3VudEtleXMoc2NoZW1hMikgewogICAgICBsZXQgY291bnQgPSAwOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIiRyZWYiKQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICAgIGNvdW50Kys7CiAgICAgICAgaWYgKFNJTVBMRV9JTkxJTkVELmhhcyhrZXkpKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyW2tleV0gPT0gIm9iamVjdCIpIHsKICAgICAgICAgICgwLCB1dGlsXzEuZWFjaEl0ZW0pKHNjaGVtYTJba2V5XSwgKHNjaCkgPT4gY291bnQgKz0gY291bnRLZXlzKHNjaCkpOwogICAgICAgIH0KICAgICAgICBpZiAoY291bnQgPT09IEluZmluaXR5KQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBjb3VudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEZ1bGxQYXRoKHJlc29sdmVyLCBpZCA9ICIiLCBub3JtYWxpemUpIHsKICAgICAgaWYgKG5vcm1hbGl6ZSAhPT0gZmFsc2UpCiAgICAgICAgaWQgPSBub3JtYWxpemVJZChpZCk7CiAgICAgIGNvbnN0IHAgPSByZXNvbHZlci5wYXJzZShpZCk7CiAgICAgIHJldHVybiBfZ2V0RnVsbFBhdGgocmVzb2x2ZXIsIHApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RnVsbFBhdGggPSBnZXRGdWxsUGF0aDsKICAgIGZ1bmN0aW9uIF9nZXRGdWxsUGF0aChyZXNvbHZlciwgcCkgewogICAgICBjb25zdCBzZXJpYWxpemVkID0gcmVzb2x2ZXIuc2VyaWFsaXplKHApOwogICAgICByZXR1cm4gc2VyaWFsaXplZC5zcGxpdCgiIyIpWzBdICsgIiMiOwogICAgfQogICAgZXhwb3J0czIuX2dldEZ1bGxQYXRoID0gX2dldEZ1bGxQYXRoOwogICAgdmFyIFRSQUlMSU5HX1NMQVNIX0hBU0ggPSAvI1wvPyQvOwogICAgZnVuY3Rpb24gbm9ybWFsaXplSWQoaWQpIHsKICAgICAgcmV0dXJuIGlkID8gaWQucmVwbGFjZShUUkFJTElOR19TTEFTSF9IQVNILCAiIikgOiAiIjsKICAgIH0KICAgIGV4cG9ydHMyLm5vcm1hbGl6ZUlkID0gbm9ybWFsaXplSWQ7CiAgICBmdW5jdGlvbiByZXNvbHZlVXJsKHJlc29sdmVyLCBiYXNlSWQsIGlkKSB7CiAgICAgIGlkID0gbm9ybWFsaXplSWQoaWQpOwogICAgICByZXR1cm4gcmVzb2x2ZXIucmVzb2x2ZShiYXNlSWQsIGlkKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVVcmwgPSByZXNvbHZlVXJsOwogICAgdmFyIEFOQ0hPUiA9IC9eW2Etel9dWy1hLXowLTkuX10qJC9pOwogICAgZnVuY3Rpb24gZ2V0U2NoZW1hUmVmcyhzY2hlbWEyLCBiYXNlSWQpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4ge307CiAgICAgIGNvbnN0IHsgc2NoZW1hSWQsIHVyaVJlc29sdmVyIH0gPSB0aGlzLm9wdHM7CiAgICAgIGNvbnN0IHNjaElkID0gbm9ybWFsaXplSWQoc2NoZW1hMltzY2hlbWFJZF0gfHwgYmFzZUlkKTsKICAgICAgY29uc3QgYmFzZUlkcyA9IHsgIiI6IHNjaElkIH07CiAgICAgIGNvbnN0IHBhdGhQcmVmaXggPSBnZXRGdWxsUGF0aCh1cmlSZXNvbHZlciwgc2NoSWQsIGZhbHNlKTsKICAgICAgY29uc3QgbG9jYWxSZWZzID0ge307CiAgICAgIGNvbnN0IHNjaGVtYVJlZnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICB0cmF2ZXJzZShzY2hlbWEyLCB7IGFsbEtleXM6IHRydWUgfSwgKHNjaCwganNvblB0ciwgXywgcGFyZW50SnNvblB0cikgPT4gewogICAgICAgIGlmIChwYXJlbnRKc29uUHRyID09PSB2b2lkIDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZnVsbFBhdGggPSBwYXRoUHJlZml4ICsganNvblB0cjsKICAgICAgICBsZXQgaW5uZXJCYXNlSWQgPSBiYXNlSWRzW3BhcmVudEpzb25QdHJdOwogICAgICAgIGlmICh0eXBlb2Ygc2NoW3NjaGVtYUlkXSA9PSAic3RyaW5nIikKICAgICAgICAgIGlubmVyQmFzZUlkID0gYWRkUmVmLmNhbGwodGhpcywgc2NoW3NjaGVtYUlkXSk7CiAgICAgICAgYWRkQW5jaG9yLmNhbGwodGhpcywgc2NoLiRhbmNob3IpOwogICAgICAgIGFkZEFuY2hvci5jYWxsKHRoaXMsIHNjaC4kZHluYW1pY0FuY2hvcik7CiAgICAgICAgYmFzZUlkc1tqc29uUHRyXSA9IGlubmVyQmFzZUlkOwogICAgICAgIGZ1bmN0aW9uIGFkZFJlZihyZWYpIHsKICAgICAgICAgIGNvbnN0IF9yZXNvbHZlID0gdGhpcy5vcHRzLnVyaVJlc29sdmVyLnJlc29sdmU7CiAgICAgICAgICByZWYgPSBub3JtYWxpemVJZChpbm5lckJhc2VJZCA/IF9yZXNvbHZlKGlubmVyQmFzZUlkLCByZWYpIDogcmVmKTsKICAgICAgICAgIGlmIChzY2hlbWFSZWZzLmhhcyhyZWYpKQogICAgICAgICAgICB0aHJvdyBhbWJpZ3VvcyhyZWYpOwogICAgICAgICAgc2NoZW1hUmVmcy5hZGQocmVmKTsKICAgICAgICAgIGxldCBzY2hPclJlZiA9IHRoaXMucmVmc1tyZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAic3RyaW5nIikKICAgICAgICAgICAgc2NoT3JSZWYgPSB0aGlzLnJlZnNbc2NoT3JSZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAib2JqZWN0IikgewogICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgc2NoT3JSZWYuc2NoZW1hLCByZWYpOwogICAgICAgICAgfSBlbHNlIGlmIChyZWYgIT09IG5vcm1hbGl6ZUlkKGZ1bGxQYXRoKSkgewogICAgICAgICAgICBpZiAocmVmWzBdID09PSAiIyIpIHsKICAgICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgbG9jYWxSZWZzW3JlZl0sIHJlZik7CiAgICAgICAgICAgICAgbG9jYWxSZWZzW3JlZl0gPSBzY2g7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdGhpcy5yZWZzW3JlZl0gPSBmdWxsUGF0aDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHJlZjsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWRkQW5jaG9yKGFuY2hvcikgewogICAgICAgICAgaWYgKHR5cGVvZiBhbmNob3IgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKCFBTkNIT1IudGVzdChhbmNob3IpKQogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhbmNob3IgIiR7YW5jaG9yfSJgKTsKICAgICAgICAgICAgYWRkUmVmLmNhbGwodGhpcywgYCMke2FuY2hvcn1gKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gbG9jYWxSZWZzOwogICAgICBmdW5jdGlvbiBjaGVja0FtYmlndW9zUmVmKHNjaDEsIHNjaDIsIHJlZikgewogICAgICAgIGlmIChzY2gyICE9PSB2b2lkIDAgJiYgIWVxdWFsKHNjaDEsIHNjaDIpKQogICAgICAgICAgdGhyb3cgYW1iaWd1b3MocmVmKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhbWJpZ3VvcyhyZWYpIHsKICAgICAgICByZXR1cm4gbmV3IEVycm9yKGByZWZlcmVuY2UgIiR7cmVmfSIgcmVzb2x2ZXMgdG8gbW9yZSB0aGFuIG9uZSBzY2hlbWFgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0U2NoZW1hUmVmcyA9IGdldFNjaGVtYVJlZnM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzCnZhciByZXF1aXJlX3ZhbGlkYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXREYXRhID0gZXhwb3J0czIuS2V5d29yZEN4dCA9IGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdm9pZCAwOwogICAgdmFyIGJvb2xTY2hlbWFfMSA9IHJlcXVpcmVfYm9vbFNjaGVtYSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZGF0YVR5cGVfMiA9IHJlcXVpcmVfZGF0YVR5cGUoKTsKICAgIHZhciBkZWZhdWx0c18xID0gcmVxdWlyZV9kZWZhdWx0cygpOwogICAgdmFyIGtleXdvcmRfMSA9IHJlcXVpcmVfa2V5d29yZCgpOwogICAgdmFyIHN1YnNjaGVtYV8xID0gcmVxdWlyZV9zdWJzY2hlbWEoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlRnVuY3Rpb25Db2RlKGl0KSB7CiAgICAgIGlmIChpc1NjaGVtYU9iaihpdCkpIHsKICAgICAgICBjaGVja0tleXdvcmRzKGl0KTsKICAgICAgICBpZiAoc2NoZW1hQ3h0SGFzUnVsZXMoaXQpKSB7CiAgICAgICAgICB0b3BTY2hlbWFPYmpDb2RlKGl0KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0KICAgICAgdmFsaWRhdGVGdW5jdGlvbihpdCwgKCkgPT4gKDAsIGJvb2xTY2hlbWFfMS50b3BCb29sT3JFbXB0eVNjaGVtYSkoaXQpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdmFsaWRhdGVGdW5jdGlvbkNvZGU7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUZ1bmN0aW9uKHsgZ2VuLCB2YWxpZGF0ZU5hbWUsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hRW52LCBvcHRzIH0sIGJvZHkpIHsKICAgICAgaWYgKG9wdHMuY29kZS5lczUpIHsKICAgICAgICBnZW4uZnVuYyh2YWxpZGF0ZU5hbWUsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCJ1c2Ugc3RyaWN0IjsgJHtmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpfWApOwogICAgICAgICAgZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKTsKICAgICAgICAgIGdlbi5jb2RlKGJvZHkpOwogICAgICAgIH0pOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5mdW5jKHZhbGlkYXRlTmFtZSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5kYXRhfSwgJHtkZXN0cnVjdHVyZVZhbEN4dChvcHRzKX1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiBnZW4uY29kZShmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpKS5jb2RlKGJvZHkpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHQob3B0cykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB7JHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofT0iIiwgJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX0sICR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfT0ke25hbWVzXzEuZGVmYXVsdC5kYXRhfSR7b3B0cy5keW5hbWljUmVmID8gKDAsIGNvZGVnZW5fMS5fKWAsICR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfT17fWAgOiBjb2RlZ2VuXzEubmlsfX09e31gOwogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKSB7CiAgICAgIGdlbi5pZihuYW1lc18xLmRlZmF1bHQudmFsQ3h0LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhfWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX1gKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfWApOwogICAgICAgIGlmIChvcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfWApOwogICAgICB9LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCIiYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucm9vdERhdGEsIG5hbWVzXzEuZGVmYXVsdC5kYXRhKTsKICAgICAgICBpZiAob3B0cy5keW5hbWljUmVmKQogICAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnMsICgwLCBjb2RlZ2VuXzEuXylge31gKTsKICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiB0b3BTY2hlbWFPYmpDb2RlKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzLCBnZW4gfSA9IGl0OwogICAgICB2YWxpZGF0ZUZ1bmN0aW9uKGl0LCAoKSA9PiB7CiAgICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgJiYgc2NoZW1hMi4kY29tbWVudCkKICAgICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgICBjaGVja05vRGVmYXVsdChpdCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQudkVycm9ycywgbnVsbCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAwKTsKICAgICAgICBpZiAob3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJlc2V0RXZhbHVhdGVkKGl0KTsKICAgICAgICB0eXBlQW5kS2V5d29yZHMoaXQpOwogICAgICAgIHJldHVyblJlc3VsdHMoaXQpOwogICAgICB9KTsKICAgICAgcmV0dXJuOwogICAgfQogICAgZnVuY3Rpb24gcmVzZXRFdmFsdWF0ZWQoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSB9ID0gaXQ7CiAgICAgIGl0LmV2YWx1YXRlZCA9IGdlbi5jb25zdCgiZXZhbHVhdGVkIiwgKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXZhbHVhdGVkYCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljUHJvcHNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9LnByb3BzYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljSXRlbXNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9Lml0ZW1zYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICB9CiAgICBmdW5jdGlvbiBmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpIHsKICAgICAgY29uc3Qgc2NoSWQgPSB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiBzY2hlbWEyW29wdHMuc2NoZW1hSWRdOwogICAgICByZXR1cm4gc2NoSWQgJiYgKG9wdHMuY29kZS5zb3VyY2UgfHwgb3B0cy5jb2RlLnByb2Nlc3MpID8gKDAsIGNvZGVnZW5fMS5fKWAvKiMgc291cmNlVVJMPSR7c2NoSWR9ICovYCA6IGNvZGVnZW5fMS5uaWw7CiAgICB9CiAgICBmdW5jdGlvbiBzdWJzY2hlbWFDb2RlKGl0LCB2YWxpZCkgewogICAgICBpZiAoaXNTY2hlbWFPYmooaXQpKSB7CiAgICAgICAgY2hlY2tLZXl3b3JkcyhpdCk7CiAgICAgICAgaWYgKHNjaGVtYUN4dEhhc1J1bGVzKGl0KSkgewogICAgICAgICAgc3ViU2NoZW1hT2JqQ29kZShpdCwgdmFsaWQpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgfQogICAgICAoMCwgYm9vbFNjaGVtYV8xLmJvb2xPckVtcHR5U2NoZW1hKShpdCwgdmFsaWQpOwogICAgfQogICAgZnVuY3Rpb24gc2NoZW1hQ3h0SGFzUnVsZXMoeyBzY2hlbWE6IHNjaGVtYTIsIHNlbGY6IHNlbGYyIH0pIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gIXNjaGVtYTI7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYTIpCiAgICAgICAgaWYgKHNlbGYyLlJVTEVTLmFsbFtrZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU2NoZW1hT2JqKGl0KSB7CiAgICAgIHJldHVybiB0eXBlb2YgaXQuc2NoZW1hICE9ICJib29sZWFuIjsKICAgIH0KICAgIGZ1bmN0aW9uIHN1YlNjaGVtYU9iakNvZGUoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBnZW4sIG9wdHMgfSA9IGl0OwogICAgICBpZiAob3B0cy4kY29tbWVudCAmJiBzY2hlbWEyLiRjb21tZW50KQogICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgdXBkYXRlQ29udGV4dChpdCk7CiAgICAgIGNoZWNrQXN5bmNTY2hlbWEoaXQpOwogICAgICBjb25zdCBlcnJzQ291bnQgPSBnZW4uY29uc3QoIl9lcnJzIiwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycyk7CiAgICAgIHR5cGVBbmRLZXl3b3JkcyhpdCwgZXJyc0NvdW50KTsKICAgICAgZ2VuLnZhcih2YWxpZCwgKDAsIGNvZGVnZW5fMS5fKWAke2VycnNDb3VudH0gPT09ICR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc31gKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZHMoaXQpIHsKICAgICAgKDAsIHV0aWxfMS5jaGVja1Vua25vd25SdWxlcykoaXQpOwogICAgICBjaGVja1JlZnNBbmRLZXl3b3JkcyhpdCk7CiAgICB9CiAgICBmdW5jdGlvbiB0eXBlQW5kS2V5d29yZHMoaXQsIGVycnNDb3VudCkgewogICAgICBpZiAoaXQub3B0cy5qdGQpCiAgICAgICAgcmV0dXJuIHNjaGVtYUtleXdvcmRzKGl0LCBbXSwgZmFsc2UsIGVycnNDb3VudCk7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIGRhdGFUeXBlXzEuZ2V0U2NoZW1hVHlwZXMpKGl0LnNjaGVtYSk7CiAgICAgIGNvbnN0IGNoZWNrZWRUeXBlcyA9ICgwLCBkYXRhVHlwZV8xLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUpKGl0LCB0eXBlcyk7CiAgICAgIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgIWNoZWNrZWRUeXBlcywgZXJyc0NvdW50KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrUmVmc0FuZEtleXdvcmRzKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEyLiRyZWYgJiYgb3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgJiYgKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgc2VsZjIuUlVMRVMpKSB7CiAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4oYCRyZWY6IGtleXdvcmRzIGlnbm9yZWQgaW4gc2NoZW1hIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrTm9EZWZhdWx0KGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIuZGVmYXVsdCAhPT0gdm9pZCAwICYmIG9wdHMudXNlRGVmYXVsdHMgJiYgb3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICJkZWZhdWx0IGlzIGlnbm9yZWQgaW4gdGhlIHNjaGVtYSByb290Iik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUNvbnRleHQoaXQpIHsKICAgICAgY29uc3Qgc2NoSWQgPSBpdC5zY2hlbWFbaXQub3B0cy5zY2hlbWFJZF07CiAgICAgIGlmIChzY2hJZCkKICAgICAgICBpdC5iYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGl0LmJhc2VJZCwgc2NoSWQpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY1NjaGVtYShpdCkgewogICAgICBpZiAoaXQuc2NoZW1hLiRhc3luYyAmJiAhaXQuc2NoZW1hRW52LiRhc3luYykKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIHNjaGVtYSBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gY29tbWVudEtleXdvcmQoeyBnZW4sIHNjaGVtYUVudiwgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzIH0pIHsKICAgICAgY29uc3QgbXNnID0gc2NoZW1hMi4kY29tbWVudDsKICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgPT09IHRydWUpIHsKICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnNlbGZ9LmxvZ2dlci5sb2coJHttc2d9KWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcHRzLiRjb21tZW50ID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjb25zdCBzY2hlbWFQYXRoID0gKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyU2NoZW1hUGF0aH0vJGNvbW1lbnRgOwogICAgICAgIGNvbnN0IHJvb3ROYW1lID0gZ2VuLnNjb3BlVmFsdWUoInJvb3QiLCB7IHJlZjogc2NoZW1hRW52LnJvb3QgfSk7CiAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5zZWxmfS5vcHRzLiRjb21tZW50KCR7bXNnfSwgJHtzY2hlbWFQYXRofSwgJHtyb290TmFtZX0uc2NoZW1hKWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5SZXN1bHRzKGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFFbnYsIHZhbGlkYXRlTmFtZSwgVmFsaWRhdGlvbkVycm9yLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9ID09PSAwYCwgKCkgPT4gZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSksICgpID0+IGdlbi50aHJvdygoMCwgY29kZWdlbl8xLl8pYG5ldyAke1ZhbGlkYXRpb25FcnJvcn0oJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30pYCkpOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXJyb3JzYCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICAgIGlmIChvcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgYXNzaWduRXZhbHVhdGVkKGl0KTsKICAgICAgICBnZW4ucmV0dXJuKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gMGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhc3NpZ25FdmFsdWF0ZWQoeyBnZW4sIGV2YWx1YXRlZCwgcHJvcHMsIGl0ZW1zIH0pIHsKICAgICAgaWYgKHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5wcm9wc2AsIHByb3BzKTsKICAgICAgaWYgKGl0ZW1zIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5pdGVtc2AsIGl0ZW1zKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgdHlwZUVycm9ycywgZXJyc0NvdW50KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGFsbEVycm9ycywgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICBjb25zdCB7IFJVTEVTIH0gPSBzZWxmMjsKICAgICAgaWYgKHNjaGVtYTIuJHJlZiAmJiAob3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgfHwgISgwLCB1dGlsXzEuc2NoZW1hSGFzUnVsZXNCdXRSZWYpKHNjaGVtYTIsIFJVTEVTKSkpIHsKICAgICAgICBnZW4uYmxvY2soKCkgPT4ga2V5d29yZENvZGUoaXQsICIkcmVmIiwgUlVMRVMuYWxsLiRyZWYuZGVmaW5pdGlvbikpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAoIW9wdHMuanRkKQogICAgICAgIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IGdyb3VwIG9mIFJVTEVTLnJ1bGVzKQogICAgICAgICAgZ3JvdXBLZXl3b3Jkcyhncm91cCk7CiAgICAgICAgZ3JvdXBLZXl3b3JkcyhSVUxFUy5wb3N0KTsKICAgICAgfSk7CiAgICAgIGZ1bmN0aW9uIGdyb3VwS2V5d29yZHMoZ3JvdXApIHsKICAgICAgICBpZiAoISgwLCBhcHBsaWNhYmlsaXR5XzEuc2hvdWxkVXNlR3JvdXApKHNjaGVtYTIsIGdyb3VwKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAoZ3JvdXAudHlwZSkgewogICAgICAgICAgZ2VuLmlmKCgwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGUpKGdyb3VwLnR5cGUsIGRhdGEsIG9wdHMuc3RyaWN0TnVtYmVycykpOwogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgICBpZiAodHlwZXMubGVuZ3RoID09PSAxICYmIHR5cGVzWzBdID09PSBncm91cC50eXBlICYmIHR5cGVFcnJvcnMpIHsKICAgICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICAgICAgKDAsIGRhdGFUeXBlXzIucmVwb3J0VHlwZUVycm9yKShpdCk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgfQogICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gJHtlcnJzQ291bnQgfHwgMH1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBvcHRzOiB7IHVzZURlZmF1bHRzIH0gfSA9IGl0OwogICAgICBpZiAodXNlRGVmYXVsdHMpCiAgICAgICAgKDAsIGRlZmF1bHRzXzEuYXNzaWduRGVmYXVsdHMpKGl0LCBncm91cC50eXBlKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IHJ1bGUgb2YgZ3JvdXAucnVsZXMpIHsKICAgICAgICAgIGlmICgoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKHNjaGVtYTIsIHJ1bGUpKSB7CiAgICAgICAgICAgIGtleXdvcmRDb2RlKGl0LCBydWxlLmtleXdvcmQsIHJ1bGUuZGVmaW5pdGlvbiwgZ3JvdXAudHlwZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmIChpdC5zY2hlbWFFbnYubWV0YSB8fCAhaXQub3B0cy5zdHJpY3RUeXBlcykKICAgICAgICByZXR1cm47CiAgICAgIGNoZWNrQ29udGV4dFR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGlmICghaXQub3B0cy5hbGxvd1VuaW9uVHlwZXMpCiAgICAgICAgY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGNoZWNrS2V5d29yZFR5cGVzKGl0LCBpdC5kYXRhVHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tDb250ZXh0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmICghdHlwZXMubGVuZ3RoKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKCFpdC5kYXRhVHlwZXMubGVuZ3RoKSB7CiAgICAgICAgaXQuZGF0YVR5cGVzID0gdHlwZXM7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHR5cGVzLmZvckVhY2goKHQpID0+IHsKICAgICAgICBpZiAoIWluY2x1ZGVzVHlwZShpdC5kYXRhVHlwZXMsIHQpKSB7CiAgICAgICAgICBzdHJpY3RUeXBlc0Vycm9yKGl0LCBgdHlwZSAiJHt0fSIgbm90IGFsbG93ZWQgYnkgY29udGV4dCAiJHtpdC5kYXRhVHlwZXMuam9pbigiLCIpfSJgKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgICBuYXJyb3dTY2hlbWFUeXBlcyhpdCwgdHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0cykgewogICAgICBpZiAodHMubGVuZ3RoID4gMSAmJiAhKHRzLmxlbmd0aCA9PT0gMiAmJiB0cy5pbmNsdWRlcygibnVsbCIpKSkgewogICAgICAgIHN0cmljdFR5cGVzRXJyb3IoaXQsICJ1c2UgYWxsb3dVbmlvblR5cGVzIHRvIGFsbG93IHVuaW9uIHR5cGUga2V5d29yZCIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja0tleXdvcmRUeXBlcyhpdCwgdHMpIHsKICAgICAgY29uc3QgcnVsZXMgPSBpdC5zZWxmLlJVTEVTLmFsbDsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIHJ1bGVzKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHJ1bGVzW2tleXdvcmRdOwogICAgICAgIGlmICh0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiAmJiAoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKGl0LnNjaGVtYSwgcnVsZSkpIHsKICAgICAgICAgIGNvbnN0IHsgdHlwZTogdHlwZTIgfSA9IHJ1bGUuZGVmaW5pdGlvbjsKICAgICAgICAgIGlmICh0eXBlMi5sZW5ndGggJiYgIXR5cGUyLnNvbWUoKHQpID0+IGhhc0FwcGxpY2FibGVUeXBlKHRzLCB0KSkpIHsKICAgICAgICAgICAgc3RyaWN0VHlwZXNFcnJvcihpdCwgYG1pc3NpbmcgdHlwZSAiJHt0eXBlMi5qb2luKCIsIil9IiBmb3Iga2V5d29yZCAiJHtrZXl3b3JkfSJgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGhhc0FwcGxpY2FibGVUeXBlKHNjaFRzLCBrd2RUKSB7CiAgICAgIHJldHVybiBzY2hUcy5pbmNsdWRlcyhrd2RUKSB8fCBrd2RUID09PSAibnVtYmVyIiAmJiBzY2hUcy5pbmNsdWRlcygiaW50ZWdlciIpOwogICAgfQogICAgZnVuY3Rpb24gaW5jbHVkZXNUeXBlKHRzLCB0KSB7CiAgICAgIHJldHVybiB0cy5pbmNsdWRlcyh0KSB8fCB0ID09PSAiaW50ZWdlciIgJiYgdHMuaW5jbHVkZXMoIm51bWJlciIpOwogICAgfQogICAgZnVuY3Rpb24gbmFycm93U2NoZW1hVHlwZXMoaXQsIHdpdGhUeXBlcykgewogICAgICBjb25zdCB0cyA9IFtdOwogICAgICBmb3IgKGNvbnN0IHQgb2YgaXQuZGF0YVR5cGVzKSB7CiAgICAgICAgaWYgKGluY2x1ZGVzVHlwZSh3aXRoVHlwZXMsIHQpKQogICAgICAgICAgdHMucHVzaCh0KTsKICAgICAgICBlbHNlIGlmICh3aXRoVHlwZXMuaW5jbHVkZXMoImludGVnZXIiKSAmJiB0ID09PSAibnVtYmVyIikKICAgICAgICAgIHRzLnB1c2goImludGVnZXIiKTsKICAgICAgfQogICAgICBpdC5kYXRhVHlwZXMgPSB0czsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmljdFR5cGVzRXJyb3IoaXQsIG1zZykgewogICAgICBjb25zdCBzY2hlbWFQYXRoID0gaXQuc2NoZW1hRW52LmJhc2VJZCArIGl0LmVyclNjaGVtYVBhdGg7CiAgICAgIG1zZyArPSBgIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0VHlwZXMpYDsKICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBtc2csIGl0Lm9wdHMuc3RyaWN0VHlwZXMpOwogICAgfQogICAgdmFyIEtleXdvcmRDeHQgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGl0LCBkZWYsIGtleXdvcmQpIHsKICAgICAgICAoMCwga2V5d29yZF8xLnZhbGlkYXRlS2V5d29yZFVzYWdlKShpdCwgZGVmLCBrZXl3b3JkKTsKICAgICAgICB0aGlzLmdlbiA9IGl0LmdlbjsKICAgICAgICB0aGlzLmFsbEVycm9ycyA9IGl0LmFsbEVycm9yczsKICAgICAgICB0aGlzLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgIHRoaXMuZGF0YSA9IGl0LmRhdGE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgdGhpcy4kZGF0YSA9IGRlZi4kZGF0YSAmJiBpdC5vcHRzLiRkYXRhICYmIHRoaXMuc2NoZW1hICYmIHRoaXMuc2NoZW1hLiRkYXRhOwogICAgICAgIHRoaXMuc2NoZW1hVmFsdWUgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgdGhpcy5zY2hlbWEsIGtleXdvcmQsIHRoaXMuJGRhdGEpOwogICAgICAgIHRoaXMuc2NoZW1hVHlwZSA9IGRlZi5zY2hlbWFUeXBlOwogICAgICAgIHRoaXMucGFyZW50U2NoZW1hID0gaXQuc2NoZW1hOwogICAgICAgIHRoaXMucGFyYW1zID0ge307CiAgICAgICAgdGhpcy5pdCA9IGl0OwogICAgICAgIHRoaXMuZGVmID0gZGVmOwogICAgICAgIGlmICh0aGlzLiRkYXRhKSB7CiAgICAgICAgICB0aGlzLnNjaGVtYUNvZGUgPSBpdC5nZW4uY29uc3QoInZTY2hlbWEiLCBnZXREYXRhKHRoaXMuJGRhdGEsIGl0KSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuc2NoZW1hQ29kZSA9IHRoaXMuc2NoZW1hVmFsdWU7CiAgICAgICAgICBpZiAoISgwLCBrZXl3b3JkXzEudmFsaWRTY2hlbWFUeXBlKSh0aGlzLnNjaGVtYSwgZGVmLnNjaGVtYVR5cGUsIGRlZi5hbGxvd1VuZGVmaW5lZCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2tleXdvcmR9IHZhbHVlIG11c3QgYmUgJHtKU09OLnN0cmluZ2lmeShkZWYuc2NoZW1hVHlwZSl9YCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgiY29kZSIgaW4gZGVmID8gZGVmLnRyYWNrRXJyb3JzIDogZGVmLmVycm9ycyAhPT0gZmFsc2UpIHsKICAgICAgICAgIHRoaXMuZXJyc0NvdW50ID0gaXQuZ2VuLmNvbnN0KCJfZXJycyIsIG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMpOwogICAgICAgIH0KICAgICAgfQogICAgICByZXN1bHQoY29uZGl0aW9uLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5mYWlsUmVzdWx0KCgwLCBjb2RlZ2VuXzEubm90KShjb25kaXRpb24pLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsUmVzdWx0KGNvbmRpdGlvbiwgc3VjY2Vzc0FjdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZ2VuLmlmKGNvbmRpdGlvbik7CiAgICAgICAgaWYgKGZhaWxBY3Rpb24pCiAgICAgICAgICBmYWlsQWN0aW9uKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgIGlmIChzdWNjZXNzQWN0aW9uKSB7CiAgICAgICAgICB0aGlzLmdlbi5lbHNlKCk7CiAgICAgICAgICBzdWNjZXNzQWN0aW9uKCk7CiAgICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICAgIHRoaXMuZ2VuLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uZW5kSWYoKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhpcy5nZW4uZWxzZSgpOwogICAgICAgIH0KICAgICAgfQogICAgICBwYXNzKGNvbmRpdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZmFpbFJlc3VsdCgoMCwgY29kZWdlbl8xLm5vdCkoY29uZGl0aW9uKSwgdm9pZCAwLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsKGNvbmRpdGlvbikgewogICAgICAgIGlmIChjb25kaXRpb24gPT09IHZvaWQgMCkgewogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgICAgaWYgKCF0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uaWYoZmFsc2UpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLmdlbi5pZihjb25kaXRpb24pOwogICAgICAgIHRoaXMuZXJyb3IoKTsKICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICB0aGlzLmdlbi5lbmRJZigpOwogICAgICAgIGVsc2UKICAgICAgICAgIHRoaXMuZ2VuLmVsc2UoKTsKICAgICAgfQogICAgICBmYWlsJGRhdGEoY29uZGl0aW9uKSB7CiAgICAgICAgaWYgKCF0aGlzLiRkYXRhKQogICAgICAgICAgcmV0dXJuIHRoaXMuZmFpbChjb25kaXRpb24pOwogICAgICAgIGNvbnN0IHsgc2NoZW1hQ29kZSB9ID0gdGhpczsKICAgICAgICB0aGlzLmZhaWwoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ICE9PSB1bmRlZmluZWQgJiYgKCR7KDAsIGNvZGVnZW5fMS5vcikodGhpcy5pbnZhbGlkJGRhdGEoKSwgY29uZGl0aW9uKX0pYCk7CiAgICAgIH0KICAgICAgZXJyb3IoYXBwZW5kLCBlcnJvclBhcmFtcywgZXJyb3JQYXRocykgewogICAgICAgIGlmIChlcnJvclBhcmFtcykgewogICAgICAgICAgdGhpcy5zZXRQYXJhbXMoZXJyb3JQYXJhbXMpOwogICAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgICAgIHRoaXMuc2V0UGFyYW1zKHt9KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICBfZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKSB7CiAgICAgICAgOwogICAgICAgIChhcHBlbmQgPyBlcnJvcnNfMS5yZXBvcnRFeHRyYUVycm9yIDogZXJyb3JzXzEucmVwb3J0RXJyb3IpKHRoaXMsIHRoaXMuZGVmLmVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICAkZGF0YUVycm9yKCkgewogICAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikodGhpcywgdGhpcy5kZWYuJGRhdGFFcnJvciB8fCBlcnJvcnNfMS5rZXl3b3JkJERhdGFFcnJvcik7CiAgICAgIH0KICAgICAgcmVzZXQoKSB7CiAgICAgICAgaWYgKHRoaXMuZXJyc0NvdW50ID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZCAidHJhY2tFcnJvcnMiIHRvIGtleXdvcmQgZGVmaW5pdGlvbicpOwogICAgICAgICgwLCBlcnJvcnNfMS5yZXNldEVycm9yc0NvdW50KSh0aGlzLmdlbiwgdGhpcy5lcnJzQ291bnQpOwogICAgICB9CiAgICAgIG9rKGNvbmQpIHsKICAgICAgICBpZiAoIXRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgdGhpcy5nZW4uaWYoY29uZCk7CiAgICAgIH0KICAgICAgc2V0UGFyYW1zKG9iaiwgYXNzaWduKSB7CiAgICAgICAgaWYgKGFzc2lnbikKICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5wYXJhbXMsIG9iaik7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5wYXJhbXMgPSBvYmo7CiAgICAgIH0KICAgICAgYmxvY2skZGF0YSh2YWxpZCwgY29kZUJsb2NrLCAkZGF0YVZhbGlkID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHRoaXMuZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICAgIHRoaXMuY2hlY2skZGF0YSh2YWxpZCwgJGRhdGFWYWxpZCk7CiAgICAgICAgICBjb2RlQmxvY2soKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBjaGVjayRkYXRhKHZhbGlkID0gY29kZWdlbl8xLm5pbCwgJGRhdGFWYWxpZCA9IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBpZiAoIXRoaXMuJGRhdGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUNvZGUsIHNjaGVtYVR5cGUsIGRlZiB9ID0gdGhpczsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5vcikoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ID09PSB1bmRlZmluZWRgLCAkZGF0YVZhbGlkKSk7CiAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgaWYgKHNjaGVtYVR5cGUubGVuZ3RoIHx8IGRlZi52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgICAgZ2VuLmVsc2VJZih0aGlzLmludmFsaWQkZGF0YSgpKTsKICAgICAgICAgIHRoaXMuJGRhdGFFcnJvcigpOwogICAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGdlbi5lbHNlKCk7CiAgICAgIH0KICAgICAgaW52YWxpZCRkYXRhKCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFDb2RlLCBzY2hlbWFUeXBlLCBkZWYsIGl0IH0gPSB0aGlzOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm9yKSh3cm9uZyREYXRhVHlwZSgpLCBpbnZhbGlkJERhdGFTY2hlbWEoKSk7CiAgICAgICAgZnVuY3Rpb24gd3JvbmckRGF0YVR5cGUoKSB7CiAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5sZW5ndGgpIHsKICAgICAgICAgICAgaWYgKCEoc2NoZW1hQ29kZSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSkKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgICBjb25zdCBzdCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hVHlwZSkgPyBzY2hlbWFUeXBlIDogW3NjaGVtYVR5cGVdOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGVzKShzdCwgc2NoZW1hQ29kZSwgaXQub3B0cy5zdHJpY3ROdW1iZXJzLCBkYXRhVHlwZV8yLkRhdGFUeXBlLldyb25nKX1gOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGludmFsaWQkRGF0YVNjaGVtYSgpIHsKICAgICAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWRhdGVTY2hlbWFSZWYgPSBnZW4uc2NvcGVWYWx1ZSgidmFsaWRhdGUkZGF0YSIsIHsgcmVmOiBkZWYudmFsaWRhdGVTY2hlbWEgfSk7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCEke3ZhbGlkYXRlU2NoZW1hUmVmfSgke3NjaGVtYUNvZGV9KWA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3Vic2NoZW1hKGFwcGwsIHZhbGlkKSB7CiAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gKDAsIHN1YnNjaGVtYV8xLmdldFN1YnNjaGVtYSkodGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYURhdGEpKHN1YnNjaGVtYSwgdGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYU1vZGUpKHN1YnNjaGVtYSwgYXBwbCk7CiAgICAgICAgY29uc3QgbmV4dENvbnRleHQgPSB7IC4uLnRoaXMuaXQsIC4uLnN1YnNjaGVtYSwgaXRlbXM6IHZvaWQgMCwgcHJvcHM6IHZvaWQgMCB9OwogICAgICAgIHN1YnNjaGVtYUNvZGUobmV4dENvbnRleHQsIHZhbGlkKTsKICAgICAgICByZXR1cm4gbmV4dENvbnRleHQ7CiAgICAgIH0KICAgICAgbWVyZ2VFdmFsdWF0ZWQoc2NoZW1hQ3h0LCB0b05hbWUpIHsKICAgICAgICBjb25zdCB7IGl0LCBnZW4gfSA9IHRoaXM7CiAgICAgICAgaWYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChpdC5wcm9wcyAhPT0gdHJ1ZSAmJiBzY2hlbWFDeHQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBzY2hlbWFDeHQucHJvcHMsIGl0LnByb3BzLCB0b05hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoaXQuaXRlbXMgIT09IHRydWUgJiYgc2NoZW1hQ3h0Lml0ZW1zICE9PSB2b2lkIDApIHsKICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoZW1hQ3h0Lml0ZW1zLCBpdC5pdGVtcywgdG9OYW1lKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgbWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hlbWFDeHQsIHZhbGlkKSB7CiAgICAgICAgY29uc3QgeyBpdCwgZ2VuIH0gPSB0aGlzOwogICAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIChpdC5wcm9wcyAhPT0gdHJ1ZSB8fCBpdC5pdGVtcyAhPT0gdHJ1ZSkpIHsKICAgICAgICAgIGdlbi5pZih2YWxpZCwgKCkgPT4gdGhpcy5tZXJnZUV2YWx1YXRlZChzY2hlbWFDeHQsIGNvZGVnZW5fMS5OYW1lKSk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gS2V5d29yZEN4dDsKICAgIGZ1bmN0aW9uIGtleXdvcmRDb2RlKGl0LCBrZXl3b3JkLCBkZWYsIHJ1bGVUeXBlKSB7CiAgICAgIGNvbnN0IGN4dCA9IG5ldyBLZXl3b3JkQ3h0KGl0LCBkZWYsIGtleXdvcmQpOwogICAgICBpZiAoImNvZGUiIGluIGRlZikgewogICAgICAgIGRlZi5jb2RlKGN4dCwgcnVsZVR5cGUpOwogICAgICB9IGVsc2UgaWYgKGN4dC4kZGF0YSAmJiBkZWYudmFsaWRhdGUpIHsKICAgICAgICAoMCwga2V5d29yZF8xLmZ1bmNLZXl3b3JkQ29kZSkoY3h0LCBkZWYpOwogICAgICB9IGVsc2UgaWYgKCJtYWNybyIgaW4gZGVmKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5tYWNyb0tleXdvcmRDb2RlKShjeHQsIGRlZik7CiAgICAgIH0gZWxzZSBpZiAoZGVmLmNvbXBpbGUgfHwgZGVmLnZhbGlkYXRlKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5mdW5jS2V5d29yZENvZGUpKGN4dCwgZGVmKTsKICAgICAgfQogICAgfQogICAgdmFyIEpTT05fUE9JTlRFUiA9IC9eXC8oPzpbXn5dfH4wfH4xKSokLzsKICAgIHZhciBSRUxBVElWRV9KU09OX1BPSU5URVIgPSAvXihbMC05XSspKCN8XC8oPzpbXn5dfH4wfH4xKSopPyQvOwogICAgZnVuY3Rpb24gZ2V0RGF0YSgkZGF0YSwgeyBkYXRhTGV2ZWwsIGRhdGFOYW1lcywgZGF0YVBhdGhBcnIgfSkgewogICAgICBsZXQganNvblBvaW50ZXI7CiAgICAgIGxldCBkYXRhOwogICAgICBpZiAoJGRhdGEgPT09ICIiKQogICAgICAgIHJldHVybiBuYW1lc18xLmRlZmF1bHQucm9vdERhdGE7CiAgICAgIGlmICgkZGF0YVswXSA9PT0gIi8iKSB7CiAgICAgICAgaWYgKCFKU09OX1BPSU5URVIudGVzdCgkZGF0YSkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgSlNPTi1wb2ludGVyOiAkeyRkYXRhfWApOwogICAgICAgIGpzb25Qb2ludGVyID0gJGRhdGE7CiAgICAgICAgZGF0YSA9IG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YTsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gUkVMQVRJVkVfSlNPTl9QT0lOVEVSLmV4ZWMoJGRhdGEpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBKU09OLXBvaW50ZXI6ICR7JGRhdGF9YCk7CiAgICAgICAgY29uc3QgdXAgPSArbWF0Y2hlc1sxXTsKICAgICAgICBqc29uUG9pbnRlciA9IG1hdGNoZXNbMl07CiAgICAgICAgaWYgKGpzb25Qb2ludGVyID09PSAiIyIpIHsKICAgICAgICAgIGlmICh1cCA+PSBkYXRhTGV2ZWwpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1zZygicHJvcGVydHkvaW5kZXgiLCB1cCkpOwogICAgICAgICAgcmV0dXJuIGRhdGFQYXRoQXJyW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICB9CiAgICAgICAgaWYgKHVwID4gZGF0YUxldmVsKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yTXNnKCJkYXRhIiwgdXApKTsKICAgICAgICBkYXRhID0gZGF0YU5hbWVzW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICBpZiAoIWpzb25Qb2ludGVyKQogICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgIH0KICAgICAgbGV0IGV4cHIgPSBkYXRhOwogICAgICBjb25zdCBzZWdtZW50cyA9IGpzb25Qb2ludGVyLnNwbGl0KCIvIik7CiAgICAgIGZvciAoY29uc3Qgc2VnbWVudCBvZiBzZWdtZW50cykgewogICAgICAgIGlmIChzZWdtZW50KSB7CiAgICAgICAgICBkYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KSgoMCwgdXRpbF8xLnVuZXNjYXBlSnNvblBvaW50ZXIpKHNlZ21lbnQpKX1gOwogICAgICAgICAgZXhwciA9ICgwLCBjb2RlZ2VuXzEuXylgJHtleHByfSAmJiAke2RhdGF9YDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGV4cHI7CiAgICAgIGZ1bmN0aW9uIGVycm9yTXNnKHBvaW50ZXJUeXBlLCB1cCkgewogICAgICAgIHJldHVybiBgQ2Fubm90IGFjY2VzcyAke3BvaW50ZXJUeXBlfSAke3VwfSBsZXZlbHMgdXAsIGN1cnJlbnQgbGV2ZWwgaXMgJHtkYXRhTGV2ZWx9YDsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0RGF0YSA9IGdldERhdGE7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3ZhbGlkYXRpb25fZXJyb3IuanMKdmFyIHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgVmFsaWRhdGlvbkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycykgewogICAgICAgIHN1cGVyKCJ2YWxpZGF0aW9uIGZhaWxlZCIpOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICAgIHRoaXMuYWp2ID0gdGhpcy52YWxpZGF0aW9uID0gdHJ1ZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBWYWxpZGF0aW9uRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3JlZl9lcnJvci5qcwp2YXIgcmVxdWlyZV9yZWZfZXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVmX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgTWlzc2luZ1JlZkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKHJlc29sdmVyLCBiYXNlSWQsIHJlZiwgbXNnKSB7CiAgICAgICAgc3VwZXIobXNnIHx8IGBjYW4ndCByZXNvbHZlIHJlZmVyZW5jZSAke3JlZn0gZnJvbSBpZCAke2Jhc2VJZH1gKTsKICAgICAgICB0aGlzLm1pc3NpbmdSZWYgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHJlc29sdmVyLCBiYXNlSWQsIHJlZik7CiAgICAgICAgdGhpcy5taXNzaW5nU2NoZW1hID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkocmVzb2x2ZXIsIHRoaXMubWlzc2luZ1JlZikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IE1pc3NpbmdSZWZFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvaW5kZXguanMKdmFyIHJlcXVpcmVfY29tcGlsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGV4cG9ydHMyLnJlc29sdmVSZWYgPSBleHBvcnRzMi5jb21waWxlU2NoZW1hID0gZXhwb3J0czIuU2NoZW1hRW52ID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIHZhciBTY2hlbWFFbnYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGVudikgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmR5bmFtaWNBbmNob3JzID0ge307CiAgICAgICAgbGV0IHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBlbnYuc2NoZW1hID09ICJvYmplY3QiKQogICAgICAgICAgc2NoZW1hMiA9IGVudi5zY2hlbWE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBlbnYuc2NoZW1hOwogICAgICAgIHRoaXMuc2NoZW1hSWQgPSBlbnYuc2NoZW1hSWQ7CiAgICAgICAgdGhpcy5yb290ID0gZW52LnJvb3QgfHwgdGhpczsKICAgICAgICB0aGlzLmJhc2VJZCA9IChfYSA9IGVudi5iYXNlSWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHNjaGVtYTIgPT09IG51bGwgfHwgc2NoZW1hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoZW1hMltlbnYuc2NoZW1hSWQgfHwgIiRpZCJdKTsKICAgICAgICB0aGlzLnNjaGVtYVBhdGggPSBlbnYuc2NoZW1hUGF0aDsKICAgICAgICB0aGlzLmxvY2FsUmVmcyA9IGVudi5sb2NhbFJlZnM7CiAgICAgICAgdGhpcy5tZXRhID0gZW52Lm1ldGE7CiAgICAgICAgdGhpcy4kYXN5bmMgPSBzY2hlbWEyID09PSBudWxsIHx8IHNjaGVtYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaGVtYTIuJGFzeW5jOwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hRW52ID0gU2NoZW1hRW52OwogICAgZnVuY3Rpb24gY29tcGlsZVNjaGVtYShzY2gpIHsKICAgICAgY29uc3QgX3NjaCA9IGdldENvbXBpbGluZ1NjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgIGlmIChfc2NoKQogICAgICAgIHJldHVybiBfc2NoOwogICAgICBjb25zdCByb290SWQgPSAoMCwgcmVzb2x2ZV8xLmdldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHNjaC5yb290LmJhc2VJZCk7CiAgICAgIGNvbnN0IHsgZXM1LCBsaW5lcyB9ID0gdGhpcy5vcHRzLmNvZGU7CiAgICAgIGNvbnN0IHsgb3duUHJvcGVydGllcyB9ID0gdGhpcy5vcHRzOwogICAgICBjb25zdCBnZW4gPSBuZXcgY29kZWdlbl8xLkNvZGVHZW4odGhpcy5zY29wZSwgeyBlczUsIGxpbmVzLCBvd25Qcm9wZXJ0aWVzIH0pOwogICAgICBsZXQgX1ZhbGlkYXRpb25FcnJvcjsKICAgICAgaWYgKHNjaC4kYXN5bmMpIHsKICAgICAgICBfVmFsaWRhdGlvbkVycm9yID0gZ2VuLnNjb3BlVmFsdWUoIkVycm9yIiwgewogICAgICAgICAgcmVmOiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdCwKICAgICAgICAgIGNvZGU6ICgwLCBjb2RlZ2VuXzEuXylgcmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yIikuZGVmYXVsdGAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZGF0ZU5hbWUgPSBnZW4uc2NvcGVOYW1lKCJ2YWxpZGF0ZSIpOwogICAgICBzY2gudmFsaWRhdGVOYW1lID0gdmFsaWRhdGVOYW1lOwogICAgICBjb25zdCBzY2hlbWFDeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGFsbEVycm9yczogdGhpcy5vcHRzLmFsbEVycm9ycywKICAgICAgICBkYXRhOiBuYW1lc18xLmRlZmF1bHQuZGF0YSwKICAgICAgICBwYXJlbnREYXRhOiBuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwKICAgICAgICBwYXJlbnREYXRhUHJvcGVydHk6IG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksCiAgICAgICAgZGF0YU5hbWVzOiBbbmFtZXNfMS5kZWZhdWx0LmRhdGFdLAogICAgICAgIGRhdGFQYXRoQXJyOiBbY29kZWdlbl8xLm5pbF0sCiAgICAgICAgLy8gVE9ETyBjYW4gaXRzIGxlbmd0aCBiZSB1c2VkIGFzIGRhdGFMZXZlbCBpZiBuaWwgaXMgcmVtb3ZlZD8KICAgICAgICBkYXRhTGV2ZWw6IDAsCiAgICAgICAgZGF0YVR5cGVzOiBbXSwKICAgICAgICBkZWZpbmVkUHJvcGVydGllczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSwKICAgICAgICB0b3BTY2hlbWFSZWY6IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCB0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUgPyB7IHJlZjogc2NoLnNjaGVtYSwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaC5zY2hlbWEpIH0gOiB7IHJlZjogc2NoLnNjaGVtYSB9KSwKICAgICAgICB2YWxpZGF0ZU5hbWUsCiAgICAgICAgVmFsaWRhdGlvbkVycm9yOiBfVmFsaWRhdGlvbkVycm9yLAogICAgICAgIHNjaGVtYTogc2NoLnNjaGVtYSwKICAgICAgICBzY2hlbWFFbnY6IHNjaCwKICAgICAgICByb290SWQsCiAgICAgICAgYmFzZUlkOiBzY2guYmFzZUlkIHx8IHJvb3RJZCwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IHNjaC5zY2hlbWFQYXRoIHx8ICh0aGlzLm9wdHMuanRkID8gIiIgOiAiIyIpLAogICAgICAgIGVycm9yUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAiImAsCiAgICAgICAgb3B0czogdGhpcy5vcHRzLAogICAgICAgIHNlbGY6IHRoaXMKICAgICAgfTsKICAgICAgbGV0IHNvdXJjZUNvZGU7CiAgICAgIHRyeSB7CiAgICAgICAgdGhpcy5fY29tcGlsYXRpb25zLmFkZChzY2gpOwogICAgICAgICgwLCB2YWxpZGF0ZV8xLnZhbGlkYXRlRnVuY3Rpb25Db2RlKShzY2hlbWFDeHQpOwogICAgICAgIGdlbi5vcHRpbWl6ZSh0aGlzLm9wdHMuY29kZS5vcHRpbWl6ZSk7CiAgICAgICAgY29uc3QgdmFsaWRhdGVDb2RlID0gZ2VuLnRvU3RyaW5nKCk7CiAgICAgICAgc291cmNlQ29kZSA9IGAke2dlbi5zY29wZVJlZnMobmFtZXNfMS5kZWZhdWx0LnNjb3BlKX1yZXR1cm4gJHt2YWxpZGF0ZUNvZGV9YDsKICAgICAgICBpZiAodGhpcy5vcHRzLmNvZGUucHJvY2VzcykKICAgICAgICAgIHNvdXJjZUNvZGUgPSB0aGlzLm9wdHMuY29kZS5wcm9jZXNzKHNvdXJjZUNvZGUsIHNjaCk7CiAgICAgICAgY29uc3QgbWFrZVZhbGlkYXRlID0gbmV3IEZ1bmN0aW9uKGAke25hbWVzXzEuZGVmYXVsdC5zZWxmfWAsIGAke25hbWVzXzEuZGVmYXVsdC5zY29wZX1gLCBzb3VyY2VDb2RlKTsKICAgICAgICBjb25zdCB2YWxpZGF0ZSA9IG1ha2VWYWxpZGF0ZSh0aGlzLCB0aGlzLnNjb3BlLmdldCgpKTsKICAgICAgICB0aGlzLnNjb3BlLnZhbHVlKHZhbGlkYXRlTmFtZSwgeyByZWY6IHZhbGlkYXRlIH0pOwogICAgICAgIHZhbGlkYXRlLmVycm9ycyA9IG51bGw7CiAgICAgICAgdmFsaWRhdGUuc2NoZW1hID0gc2NoLnNjaGVtYTsKICAgICAgICB2YWxpZGF0ZS5zY2hlbWFFbnYgPSBzY2g7CiAgICAgICAgaWYgKHNjaC4kYXN5bmMpCiAgICAgICAgICB2YWxpZGF0ZS4kYXN5bmMgPSB0cnVlOwogICAgICAgIGlmICh0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUpIHsKICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZSA9IHsgdmFsaWRhdGVOYW1lLCB2YWxpZGF0ZUNvZGUsIHNjb3BlVmFsdWVzOiBnZW4uX3ZhbHVlcyB9OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5vcHRzLnVuZXZhbHVhdGVkKSB7CiAgICAgICAgICBjb25zdCB7IHByb3BzLCBpdGVtcyB9ID0gc2NoZW1hQ3h0OwogICAgICAgICAgdmFsaWRhdGUuZXZhbHVhdGVkID0gewogICAgICAgICAgICBwcm9wczogcHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IHByb3BzLAogICAgICAgICAgICBpdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IGl0ZW1zLAogICAgICAgICAgICBkeW5hbWljUHJvcHM6IHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUsCiAgICAgICAgICAgIGR5bmFtaWNJdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0ZS5zb3VyY2UpCiAgICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZS5ldmFsdWF0ZWQgPSAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkodmFsaWRhdGUuZXZhbHVhdGVkKTsKICAgICAgICB9CiAgICAgICAgc2NoLnZhbGlkYXRlID0gdmFsaWRhdGU7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgIGRlbGV0ZSBzY2gudmFsaWRhdGU7CiAgICAgICAgZGVsZXRlIHNjaC52YWxpZGF0ZU5hbWU7CiAgICAgICAgaWYgKHNvdXJjZUNvZGUpCiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcigiRXJyb3IgY29tcGlsaW5nIHNjaGVtYSwgZnVuY3Rpb24gY29kZToiLCBzb3VyY2VDb2RlKTsKICAgICAgICB0aHJvdyBlOwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucy5kZWxldGUoc2NoKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY29tcGlsZVNjaGVtYSA9IGNvbXBpbGVTY2hlbWE7CiAgICBmdW5jdGlvbiByZXNvbHZlUmVmKHJvb3QsIGJhc2VJZCwgcmVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgcmVmKTsKICAgICAgY29uc3Qgc2NoT3JGdW5jID0gcm9vdC5yZWZzW3JlZl07CiAgICAgIGlmIChzY2hPckZ1bmMpCiAgICAgICAgcmV0dXJuIHNjaE9yRnVuYzsKICAgICAgbGV0IF9zY2ggPSByZXNvbHZlLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHNjaGVtYTIgPSAoX2EgPSByb290LmxvY2FsUmVmcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3JlZl07CiAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGlmIChzY2hlbWEyKQogICAgICAgICAgX3NjaCA9IG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkKICAgICAgICByZXR1cm47CiAgICAgIHJldHVybiByb290LnJlZnNbcmVmXSA9IGlubGluZU9yQ29tcGlsZS5jYWxsKHRoaXMsIF9zY2gpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVJlZiA9IHJlc29sdmVSZWY7CiAgICBmdW5jdGlvbiBpbmxpbmVPckNvbXBpbGUoc2NoKSB7CiAgICAgIGlmICgoMCwgcmVzb2x2ZV8xLmlubGluZVJlZikoc2NoLnNjaGVtYSwgdGhpcy5vcHRzLmlubGluZVJlZnMpKQogICAgICAgIHJldHVybiBzY2guc2NoZW1hOwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gc2NoIDogY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRDb21waWxpbmdTY2hlbWEoc2NoRW52KSB7CiAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHRoaXMuX2NvbXBpbGF0aW9ucykgewogICAgICAgIGlmIChzYW1lU2NoZW1hRW52KHNjaCwgc2NoRW52KSkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGdldENvbXBpbGluZ1NjaGVtYTsKICAgIGZ1bmN0aW9uIHNhbWVTY2hlbWFFbnYoczEsIHMyKSB7CiAgICAgIHJldHVybiBzMS5zY2hlbWEgPT09IHMyLnNjaGVtYSAmJiBzMS5yb290ID09PSBzMi5yb290ICYmIHMxLmJhc2VJZCA9PT0gczIuYmFzZUlkOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShyb290LCByZWYpIHsKICAgICAgbGV0IHNjaDsKICAgICAgd2hpbGUgKHR5cGVvZiAoc2NoID0gdGhpcy5yZWZzW3JlZl0pID09ICJzdHJpbmciKQogICAgICAgIHJlZiA9IHNjaDsKICAgICAgcmV0dXJuIHNjaCB8fCB0aGlzLnNjaGVtYXNbcmVmXSB8fCByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVTY2hlbWEocm9vdCwgcmVmKSB7CiAgICAgIGNvbnN0IHAgPSB0aGlzLm9wdHMudXJpUmVzb2x2ZXIucGFyc2UocmVmKTsKICAgICAgY29uc3QgcmVmUGF0aCA9ICgwLCByZXNvbHZlXzEuX2dldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHApOwogICAgICBsZXQgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCByb290LmJhc2VJZCwgdm9pZCAwKTsKICAgICAgaWYgKE9iamVjdC5rZXlzKHJvb3Quc2NoZW1hKS5sZW5ndGggPiAwICYmIHJlZlBhdGggPT09IGJhc2VJZCkgewogICAgICAgIHJldHVybiBnZXRKc29uUG9pbnRlci5jYWxsKHRoaXMsIHAsIHJvb3QpOwogICAgICB9CiAgICAgIGNvbnN0IGlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmUGF0aCk7CiAgICAgIGNvbnN0IHNjaE9yUmVmID0gdGhpcy5yZWZzW2lkXSB8fCB0aGlzLnNjaGVtYXNbaWRdOwogICAgICBpZiAodHlwZW9mIHNjaE9yUmVmID09ICJzdHJpbmciKSB7CiAgICAgICAgY29uc3Qgc2NoID0gcmVzb2x2ZVNjaGVtYS5jYWxsKHRoaXMsIHJvb3QsIHNjaE9yUmVmKTsKICAgICAgICBpZiAodHlwZW9mIChzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2guc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoKTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIChzY2hPclJlZiA9PT0gbnVsbCB8fCBzY2hPclJlZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoT3JSZWYuc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoIXNjaE9yUmVmLnZhbGlkYXRlKQogICAgICAgIGNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2hPclJlZik7CiAgICAgIGlmIChpZCA9PT0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmKSkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyIH0gPSBzY2hPclJlZjsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgY29uc3Qgc2NoSWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICBpZiAoc2NoSWQpCiAgICAgICAgICBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hJZCk7CiAgICAgICAgcmV0dXJuIG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoT3JSZWYpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IHJlc29sdmVTY2hlbWE7CiAgICB2YXIgUFJFVkVOVF9TQ09QRV9DSEFOR0UgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJwcm9wZXJ0aWVzIiwKICAgICAgInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgImVudW0iLAogICAgICAiZGVwZW5kZW5jaWVzIiwKICAgICAgImRlZmluaXRpb25zIgogICAgXSk7CiAgICBmdW5jdGlvbiBnZXRKc29uUG9pbnRlcihwYXJzZWRSZWYsIHsgYmFzZUlkLCBzY2hlbWE6IHNjaGVtYTIsIHJvb3QgfSkgewogICAgICB2YXIgX2E7CiAgICAgIGlmICgoKF9hID0gcGFyc2VkUmVmLmZyYWdtZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2FbMF0pICE9PSAiLyIpCiAgICAgICAgcmV0dXJuOwogICAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFyc2VkUmVmLmZyYWdtZW50LnNsaWNlKDEpLnNwbGl0KCIvIikpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBwYXJ0U2NoZW1hID0gc2NoZW1hMlsoMCwgdXRpbF8xLnVuZXNjYXBlRnJhZ21lbnQpKHBhcnQpXTsKICAgICAgICBpZiAocGFydFNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHNjaGVtYTIgPSBwYXJ0U2NoZW1hOwogICAgICAgIGNvbnN0IHNjaElkID0gdHlwZW9mIHNjaGVtYTIgPT09ICJvYmplY3QiICYmIHNjaGVtYTJbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICBpZiAoIVBSRVZFTlRfU0NPUEVfQ0hBTkdFLmhhcyhwYXJ0KSAmJiBzY2hJZCkgewogICAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoSWQpOwogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgZW52OwogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgIT0gImJvb2xlYW4iICYmIHNjaGVtYTIuJHJlZiAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgdGhpcy5SVUxFUykpIHsKICAgICAgICBjb25zdCAkcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoZW1hMi4kcmVmKTsKICAgICAgICBlbnYgPSByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgJHJlZik7CiAgICAgIH0KICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICBlbnYgPSBlbnYgfHwgbmV3IFNjaGVtYUVudih7IHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hSWQsIHJvb3QsIGJhc2VJZCB9KTsKICAgICAgaWYgKGVudi5zY2hlbWEgIT09IGVudi5yb290LnNjaGVtYSkKICAgICAgICByZXR1cm4gZW52OwogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24KdmFyIHJlcXVpcmVfZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRpZDogImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9hanYtdmFsaWRhdG9yL2Fqdi9tYXN0ZXIvbGliL3JlZnMvZGF0YS5qc29uIyIsCiAgICAgIGRlc2NyaXB0aW9uOiAiTWV0YS1zY2hlbWEgZm9yICRkYXRhIHJlZmVyZW5jZSAoSlNPTiBBbnlTY2hlbWEgZXh0ZW5zaW9uIHByb3Bvc2FsKSIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICByZXF1aXJlZDogWyIkZGF0YSJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGRhdGE6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgYW55T2Y6IFt7IGZvcm1hdDogInJlbGF0aXZlLWpzb24tcG9pbnRlciIgfSwgeyBmb3JtYXQ6ICJqc29uLXBvaW50ZXIiIH1dCiAgICAgICAgfQogICAgICB9LAogICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzCnZhciByZXF1aXJlX3Njb3BlZENoYXJzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIEhFWCA9IHsKICAgICAgMDogMCwKICAgICAgMTogMSwKICAgICAgMjogMiwKICAgICAgMzogMywKICAgICAgNDogNCwKICAgICAgNTogNSwKICAgICAgNjogNiwKICAgICAgNzogNywKICAgICAgODogOCwKICAgICAgOTogOSwKICAgICAgYTogMTAsCiAgICAgIEE6IDEwLAogICAgICBiOiAxMSwKICAgICAgQjogMTEsCiAgICAgIGM6IDEyLAogICAgICBDOiAxMiwKICAgICAgZDogMTMsCiAgICAgIEQ6IDEzLAogICAgICBlOiAxNCwKICAgICAgRTogMTQsCiAgICAgIGY6IDE1LAogICAgICBGOiAxNQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgSEVYCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtMTAuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBIRVggfSA9IHJlcXVpcmVfc2NvcGVkQ2hhcnMoKTsKICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUlQdjQoaG9zdCkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICIuIikgPCAzKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY0OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBob3N0Lm1hdGNoKC9eKD86KD86MjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSg/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSkkL3UpIHx8IFtdOwogICAgICBjb25zdCBbYWRkcmVzc10gPSBtYXRjaGVzOwogICAgICBpZiAoYWRkcmVzcykgewogICAgICAgIHJldHVybiB7IGhvc3Q6IHN0cmlwTGVhZGluZ1plcm9zKGFkZHJlc3MsICIuIiksIGlzSVBWNDogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNDogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGlucHV0LCBrZWVwWmVybyA9IGZhbHNlKSB7CiAgICAgIGxldCBhY2MgPSAiIjsKICAgICAgbGV0IHN0cmlwID0gdHJ1ZTsKICAgICAgZm9yIChjb25zdCBjIG9mIGlucHV0KSB7CiAgICAgICAgaWYgKEhFWFtjXSA9PT0gdm9pZCAwKSByZXR1cm4gdm9pZCAwOwogICAgICAgIGlmIChjICE9PSAiMCIgJiYgc3RyaXAgPT09IHRydWUpIHN0cmlwID0gZmFsc2U7CiAgICAgICAgaWYgKCFzdHJpcCkgYWNjICs9IGM7CiAgICAgIH0KICAgICAgaWYgKGtlZXBaZXJvICYmIGFjYy5sZW5ndGggPT09IDApIGFjYyA9ICIwIjsKICAgICAgcmV0dXJuIGFjYzsKICAgIH0KICAgIGZ1bmN0aW9uIGdldElQVjYoaW5wdXQpIHsKICAgICAgbGV0IHRva2VuQ291bnQgPSAwOwogICAgICBjb25zdCBvdXRwdXQgPSB7IGVycm9yOiBmYWxzZSwgYWRkcmVzczogIiIsIHpvbmU6ICIiIH07CiAgICAgIGNvbnN0IGFkZHJlc3MgPSBbXTsKICAgICAgY29uc3QgYnVmZmVyID0gW107CiAgICAgIGxldCBpc1pvbmUgPSBmYWxzZTsKICAgICAgbGV0IGVuZGlwdjZFbmNvdW50ZXJlZCA9IGZhbHNlOwogICAgICBsZXQgZW5kSXB2NiA9IGZhbHNlOwogICAgICBmdW5jdGlvbiBjb25zdW1lKCkgewogICAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICBpZiAoaXNab25lID09PSBmYWxzZSkgewogICAgICAgICAgICBjb25zdCBoZXggPSBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQoYnVmZmVyKTsKICAgICAgICAgICAgaWYgKGhleCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgYWRkcmVzcy5wdXNoKGhleCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgb3V0cHV0LmVycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGJ1ZmZlci5sZW5ndGggPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3Vyc29yID0gaW5wdXRbaV07CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIlsiIHx8IGN1cnNvciA9PT0gIl0iKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIjoiKSB7CiAgICAgICAgICBpZiAoZW5kaXB2NkVuY291bnRlcmVkID09PSB0cnVlKSB7CiAgICAgICAgICAgIGVuZElwdjYgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFjb25zdW1lKCkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB0b2tlbkNvdW50Kys7CiAgICAgICAgICBhZGRyZXNzLnB1c2goIjoiKTsKICAgICAgICAgIGlmICh0b2tlbkNvdW50ID4gNykgewogICAgICAgICAgICBvdXRwdXQuZXJyb3IgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChpIC0gMSA+PSAwICYmIGlucHV0W2kgLSAxXSA9PT0gIjoiKSB7CiAgICAgICAgICAgIGVuZGlwdjZFbmNvdW50ZXJlZCA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGN1cnNvciA9PT0gIiUiKSB7CiAgICAgICAgICBpZiAoIWNvbnN1bWUoKSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlzWm9uZSA9IHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKGN1cnNvcik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGJ1ZmZlci5sZW5ndGgpIHsKICAgICAgICBpZiAoaXNab25lKSB7CiAgICAgICAgICBvdXRwdXQuem9uZSA9IGJ1ZmZlci5qb2luKCIiKTsKICAgICAgICB9IGVsc2UgaWYgKGVuZElwdjYpIHsKICAgICAgICAgIGFkZHJlc3MucHVzaChidWZmZXIuam9pbigiIikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhZGRyZXNzLnB1c2goc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGJ1ZmZlcikpOwogICAgICAgIH0KICAgICAgfQogICAgICBvdXRwdXQuYWRkcmVzcyA9IGFkZHJlc3Muam9pbigiIik7CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVJUHY2KGhvc3QsIG9wdHMgPSB7fSkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICI6IikgPCAyKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY2OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IGlwdjYgPSBnZXRJUFY2KGhvc3QpOwogICAgICBpZiAoIWlwdjYuZXJyb3IpIHsKICAgICAgICBsZXQgbmV3SG9zdCA9IGlwdjYuYWRkcmVzczsKICAgICAgICBsZXQgZXNjYXBlZEhvc3QgPSBpcHY2LmFkZHJlc3M7CiAgICAgICAgaWYgKGlwdjYuem9uZSkgewogICAgICAgICAgbmV3SG9zdCArPSAiJSIgKyBpcHY2LnpvbmU7CiAgICAgICAgICBlc2NhcGVkSG9zdCArPSAiJTI1IiArIGlwdjYuem9uZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsgaG9zdDogbmV3SG9zdCwgZXNjYXBlZEhvc3QsIGlzSVBWNjogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNjogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaXBMZWFkaW5nWmVyb3Moc3RyMiwgdG9rZW4pIHsKICAgICAgbGV0IG91dCA9ICIiOwogICAgICBsZXQgc2tpcCA9IHRydWU7CiAgICAgIGNvbnN0IGwgPSBzdHIyLmxlbmd0aDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHsKICAgICAgICBjb25zdCBjID0gc3RyMltpXTsKICAgICAgICBpZiAoYyA9PT0gIjAiICYmIHNraXApIHsKICAgICAgICAgIGlmIChpICsgMSA8PSBsICYmIHN0cjJbaSArIDFdID09PSB0b2tlbiB8fCBpICsgMSA9PT0gbCkgewogICAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICAgICAgc2tpcCA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoYyA9PT0gdG9rZW4pIHsKICAgICAgICAgICAgc2tpcCA9IHRydWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBza2lwID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIG91dDsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbmRUb2tlbihzdHIyLCB0b2tlbikgewogICAgICBsZXQgaW5kID0gMDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgaWYgKHN0cjJbaV0gPT09IHRva2VuKSBpbmQrKzsKICAgICAgfQogICAgICByZXR1cm4gaW5kOwogICAgfQogICAgdmFyIFJEUzEgPSAvXlwuXC4/XC8vdTsKICAgIHZhciBSRFMyID0gL15cL1wuKD86XC98JCkvdTsKICAgIHZhciBSRFMzID0gL15cL1wuXC4oPzpcL3wkKS91OwogICAgdmFyIFJEUzUgPSAvXlwvPyg/Oi58XG4pKj8oPz1cL3wkKS91OwogICAgZnVuY3Rpb24gcmVtb3ZlRG90U2VnbWVudHMoaW5wdXQpIHsKICAgICAgY29uc3Qgb3V0cHV0ID0gW107CiAgICAgIHdoaWxlIChpbnB1dC5sZW5ndGgpIHsKICAgICAgICBpZiAoaW5wdXQubWF0Y2goUkRTMSkpIHsKICAgICAgICAgIGlucHV0ID0gaW5wdXQucmVwbGFjZShSRFMxLCAiIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMyKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzIsICIvIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMzKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzMsICIvIik7CiAgICAgICAgICBvdXRwdXQucG9wKCk7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PT0gIi4iIHx8IGlucHV0ID09PSAiLi4iKSB7CiAgICAgICAgICBpbnB1dCA9ICIiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBpbSA9IGlucHV0Lm1hdGNoKFJEUzUpOwogICAgICAgICAgaWYgKGltKSB7CiAgICAgICAgICAgIGNvbnN0IHMgPSBpbVswXTsKICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShzLmxlbmd0aCk7CiAgICAgICAgICAgIG91dHB1dC5wdXNoKHMpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmV4cGVjdGVkIGRvdCBzZWdtZW50IGNvbmRpdGlvbiIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gb3V0cHV0LmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcoY29tcG9uZW50cywgZXNjKSB7CiAgICAgIGNvbnN0IGZ1bmMgPSBlc2MgIT09IHRydWUgPyBlc2NhcGUgOiB1bmVzY2FwZTsKICAgICAgaWYgKGNvbXBvbmVudHMuc2NoZW1lICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnNjaGVtZSA9IGZ1bmMoY29tcG9uZW50cy5zY2hlbWUpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnVzZXJpbmZvICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnVzZXJpbmZvID0gZnVuYyhjb21wb25lbnRzLnVzZXJpbmZvKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5ob3N0ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLmhvc3QgPSBmdW5jKGNvbXBvbmVudHMuaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZnVuYyhjb21wb25lbnRzLnBhdGgpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnF1ZXJ5ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnF1ZXJ5ID0gZnVuYyhjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5mcmFnbWVudCA9IGZ1bmMoY29tcG9uZW50cy5mcmFnbWVudCk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiByZWNvbXBvc2VBdXRob3JpdHkoY29tcG9uZW50cywgb3B0aW9ucykgewogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgaWYgKGNvbXBvbmVudHMudXNlcmluZm8gIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMudXNlcmluZm8pOwogICAgICAgIHVyaVRva2Vucy5wdXNoKCJAIik7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgbGV0IGhvc3QgPSB1bmVzY2FwZShjb21wb25lbnRzLmhvc3QpOwogICAgICAgIGNvbnN0IGlwVjRyZXMgPSBub3JtYWxpemVJUHY0KGhvc3QpOwogICAgICAgIGlmIChpcFY0cmVzLmlzSVBWNCkgewogICAgICAgICAgaG9zdCA9IGlwVjRyZXMuaG9zdDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgaXBWNnJlcyA9IG5vcm1hbGl6ZUlQdjYoaXBWNHJlcy5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICBpZiAoaXBWNnJlcy5pc0lQVjYgPT09IHRydWUpIHsKICAgICAgICAgICAgaG9zdCA9IGBbJHtpcFY2cmVzLmVzY2FwZWRIb3N0fV1gOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaG9zdCA9IGNvbXBvbmVudHMuaG9zdDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdXJpVG9rZW5zLnB1c2goaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJudW1iZXIiIHx8IHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIjoiKTsKICAgICAgICB1cmlUb2tlbnMucHVzaChTdHJpbmcoY29tcG9uZW50cy5wb3J0KSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaVRva2Vucy5sZW5ndGggPyB1cmlUb2tlbnMuam9pbigiIikgOiB2b2lkIDA7CiAgICB9CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIHJlY29tcG9zZUF1dGhvcml0eSwKICAgICAgbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcsCiAgICAgIHJlbW92ZURvdFNlZ21lbnRzLAogICAgICBub3JtYWxpemVJUHY0LAogICAgICBub3JtYWxpemVJUHY2LAogICAgICBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3NjaGVtZXMuanMKdmFyIHJlcXVpcmVfc2NoZW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFVVSURfUkVHID0gL15bXGRhLWZdezh9XGItW1xkYS1mXXs0fVxiLVtcZGEtZl17NH1cYi1bXGRhLWZdezR9XGItW1xkYS1mXXsxMn0kL2l1OwogICAgdmFyIFVSTl9SRUcgPSAvKFtcZGEtel1bXGRcLWEtel17MCwzMX0pOigoPzpbXHchJCcoKSorLFwtLjo7PUBdfCVbXGRhLWZdezJ9KSspL2l1OwogICAgZnVuY3Rpb24gaXNTZWN1cmUod3NDb21wb25lbnRzKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iID8gd3NDb21wb25lbnRzLnNlY3VyZSA6IFN0cmluZyh3c0NvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAid3NzIjsKICAgIH0KICAgIGZ1bmN0aW9uIGh0dHBQYXJzZShjb21wb25lbnRzKSB7CiAgICAgIGlmICghY29tcG9uZW50cy5ob3N0KSB7CiAgICAgICAgY29tcG9uZW50cy5lcnJvciA9IGNvbXBvbmVudHMuZXJyb3IgfHwgIkhUVFAgVVJJcyBtdXN0IGhhdmUgYSBob3N0LiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBodHRwU2VyaWFsaXplKGNvbXBvbmVudHMpIHsKICAgICAgY29uc3Qgc2VjdXJlID0gU3RyaW5nKGNvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAiaHR0cHMiOwogICAgICBpZiAoY29tcG9uZW50cy5wb3J0ID09PSAoc2VjdXJlID8gNDQzIDogODApIHx8IGNvbXBvbmVudHMucG9ydCA9PT0gIiIpIHsKICAgICAgICBjb21wb25lbnRzLnBvcnQgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKCFjb21wb25lbnRzLnBhdGgpIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSAiLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB3c1BhcnNlKHdzQ29tcG9uZW50cykgewogICAgICB3c0NvbXBvbmVudHMuc2VjdXJlID0gaXNTZWN1cmUod3NDb21wb25lbnRzKTsKICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9ICh3c0NvbXBvbmVudHMucGF0aCB8fCAiLyIpICsgKHdzQ29tcG9uZW50cy5xdWVyeSA/ICI/IiArIHdzQ29tcG9uZW50cy5xdWVyeSA6ICIiKTsKICAgICAgd3NDb21wb25lbnRzLnBhdGggPSB2b2lkIDA7CiAgICAgIHdzQ29tcG9uZW50cy5xdWVyeSA9IHZvaWQgMDsKICAgICAgcmV0dXJuIHdzQ29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHdzU2VyaWFsaXplKHdzQ29tcG9uZW50cykgewogICAgICBpZiAod3NDb21wb25lbnRzLnBvcnQgPT09IChpc1NlY3VyZSh3c0NvbXBvbmVudHMpID8gNDQzIDogODApIHx8IHdzQ29tcG9uZW50cy5wb3J0ID09PSAiIikgewogICAgICAgIHdzQ29tcG9uZW50cy5wb3J0ID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgd3NDb21wb25lbnRzLnNjaGVtZSA9IHdzQ29tcG9uZW50cy5zZWN1cmUgPyAid3NzIiA6ICJ3cyI7CiAgICAgICAgd3NDb21wb25lbnRzLnNlY3VyZSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAod3NDb21wb25lbnRzLnJlc291cmNlTmFtZSkgewogICAgICAgIGNvbnN0IFtwYXRoLCBxdWVyeV0gPSB3c0NvbXBvbmVudHMucmVzb3VyY2VOYW1lLnNwbGl0KCI/Iik7CiAgICAgICAgd3NDb21wb25lbnRzLnBhdGggPSBwYXRoICYmIHBhdGggIT09ICIvIiA/IHBhdGggOiB2b2lkIDA7CiAgICAgICAgd3NDb21wb25lbnRzLnF1ZXJ5ID0gcXVlcnk7CiAgICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9IHZvaWQgMDsKICAgICAgfQogICAgICB3c0NvbXBvbmVudHMuZnJhZ21lbnQgPSB2b2lkIDA7CiAgICAgIHJldHVybiB3c0NvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm5QYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGlmICghdXJuQ29tcG9uZW50cy5wYXRoKSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9ICJVUk4gY2FuIG5vdCBiZSBwYXJzZWQiOwogICAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cm5Db21wb25lbnRzLnBhdGgubWF0Y2goVVJOX1JFRyk7CiAgICAgIGlmIChtYXRjaGVzKSB7CiAgICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uaWQgPSBtYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSBtYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCB1cm5Db21wb25lbnRzLm5pZH1gOwogICAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTW3VyblNjaGVtZV07CiAgICAgICAgdXJuQ29tcG9uZW50cy5wYXRoID0gdm9pZCAwOwogICAgICAgIGlmIChzY2hlbWVIYW5kbGVyKSB7CiAgICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5wYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9IHVybkNvbXBvbmVudHMuZXJyb3IgfHwgIlVSTiBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJuU2VyaWFsaXplKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgIGNvbnN0IG5pZCA9IHVybkNvbXBvbmVudHMubmlkLnRvTG93ZXJDYXNlKCk7CiAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCBuaWR9YDsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbdXJuU2NoZW1lXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIpIHsKICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5zZXJpYWxpemUodXJuQ29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgdXJpQ29tcG9uZW50cyA9IHVybkNvbXBvbmVudHM7CiAgICAgIGNvbnN0IG5zcyA9IHVybkNvbXBvbmVudHMubnNzOwogICAgICB1cmlDb21wb25lbnRzLnBhdGggPSBgJHtuaWQgfHwgb3B0aW9ucy5uaWR9OiR7bnNzfWA7CiAgICAgIG9wdGlvbnMuc2tpcEVzY2FwZSA9IHRydWU7CiAgICAgIHJldHVybiB1cmlDb21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJudXVpZFBhcnNlKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgdXVpZENvbXBvbmVudHMgPSB1cm5Db21wb25lbnRzOwogICAgICB1dWlkQ29tcG9uZW50cy51dWlkID0gdXVpZENvbXBvbmVudHMubnNzOwogICAgICB1dWlkQ29tcG9uZW50cy5uc3MgPSB2b2lkIDA7CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiAoIXV1aWRDb21wb25lbnRzLnV1aWQgfHwgIVVVSURfUkVHLnRlc3QodXVpZENvbXBvbmVudHMudXVpZCkpKSB7CiAgICAgICAgdXVpZENvbXBvbmVudHMuZXJyb3IgPSB1dWlkQ29tcG9uZW50cy5lcnJvciB8fCAiVVVJRCBpcyBub3QgdmFsaWQuIjsKICAgICAgfQogICAgICByZXR1cm4gdXVpZENvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm51dWlkU2VyaWFsaXplKHV1aWRDb21wb25lbnRzKSB7CiAgICAgIGNvbnN0IHVybkNvbXBvbmVudHMgPSB1dWlkQ29tcG9uZW50czsKICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSAodXVpZENvbXBvbmVudHMudXVpZCB8fCAiIikudG9Mb3dlckNhc2UoKTsKICAgICAgcmV0dXJuIHVybkNvbXBvbmVudHM7CiAgICB9CiAgICB2YXIgaHR0cCA9IHsKICAgICAgc2NoZW1lOiAiaHR0cCIsCiAgICAgIGRvbWFpbkhvc3Q6IHRydWUsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciBodHRwcyA9IHsKICAgICAgc2NoZW1lOiAiaHR0cHMiLAogICAgICBkb21haW5Ib3N0OiBodHRwLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3cyA9IHsKICAgICAgc2NoZW1lOiAid3MiLAogICAgICBkb21haW5Ib3N0OiB0cnVlLAogICAgICBwYXJzZTogd3NQYXJzZSwKICAgICAgc2VyaWFsaXplOiB3c1NlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3c3MgPSB7CiAgICAgIHNjaGVtZTogIndzcyIsCiAgICAgIGRvbWFpbkhvc3Q6IHdzLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiB3cy5wYXJzZSwKICAgICAgc2VyaWFsaXplOiB3cy5zZXJpYWxpemUKICAgIH07CiAgICB2YXIgdXJuID0gewogICAgICBzY2hlbWU6ICJ1cm4iLAogICAgICBwYXJzZTogdXJuUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogdXJuU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIHVybnV1aWQgPSB7CiAgICAgIHNjaGVtZTogInVybjp1dWlkIiwKICAgICAgcGFyc2U6IHVybnV1aWRQYXJzZSwKICAgICAgc2VyaWFsaXplOiB1cm51dWlkU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIFNDSEVNRVMgPSB7CiAgICAgIGh0dHAsCiAgICAgIGh0dHBzLAogICAgICB3cywKICAgICAgd3NzLAogICAgICB1cm4sCiAgICAgICJ1cm46dXVpZCI6IHVybnV1aWQKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBTQ0hFTUVTOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfdXJpID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBub3JtYWxpemVJUHY2LCBub3JtYWxpemVJUHY0LCByZW1vdmVEb3RTZWdtZW50cywgcmVjb21wb3NlQXV0aG9yaXR5LCBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyB9ID0gcmVxdWlyZV91dGlsczIoKTsKICAgIHZhciBTQ0hFTUVTID0gcmVxdWlyZV9zY2hlbWVzKCk7CiAgICBmdW5jdGlvbiBub3JtYWxpemUodXJpLCBvcHRpb25zKSB7CiAgICAgIGlmICh0eXBlb2YgdXJpID09PSAic3RyaW5nIikgewogICAgICAgIHVyaSA9IHNlcmlhbGl6ZShwYXJzZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpID09PSAib2JqZWN0IikgewogICAgICAgIHVyaSA9IHBhcnNlKHNlcmlhbGl6ZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXR1cm4gdXJpOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShiYXNlVVJJLCByZWxhdGl2ZVVSSSwgb3B0aW9ucykgewogICAgICBjb25zdCBzY2hlbWVsZXNzT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oeyBzY2hlbWU6ICJudWxsIiB9LCBvcHRpb25zKTsKICAgICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlQ29tcG9uZW50cyhwYXJzZShiYXNlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHBhcnNlKHJlbGF0aXZlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHNjaGVtZWxlc3NPcHRpb25zLCB0cnVlKTsKICAgICAgcmV0dXJuIHNlcmlhbGl6ZShyZXNvbHZlZCwgeyAuLi5zY2hlbWVsZXNzT3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRzKGJhc2UsIHJlbGF0aXZlLCBvcHRpb25zLCBza2lwTm9ybWFsaXphdGlvbikgewogICAgICBjb25zdCB0YXJnZXQgPSB7fTsKICAgICAgaWYgKCFza2lwTm9ybWFsaXphdGlvbikgewogICAgICAgIGJhc2UgPSBwYXJzZShzZXJpYWxpemUoYmFzZSwgb3B0aW9ucyksIG9wdGlvbnMpOwogICAgICAgIHJlbGF0aXZlID0gcGFyc2Uoc2VyaWFsaXplKHJlbGF0aXZlLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiByZWxhdGl2ZS5zY2hlbWUpIHsKICAgICAgICB0YXJnZXQuc2NoZW1lID0gcmVsYXRpdmUuc2NoZW1lOwogICAgICAgIHRhcmdldC51c2VyaW5mbyA9IHJlbGF0aXZlLnVzZXJpbmZvOwogICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICB0YXJnZXQucG9ydCA9IHJlbGF0aXZlLnBvcnQ7CiAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoIHx8ICIiKTsKICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocmVsYXRpdmUudXNlcmluZm8gIT09IHZvaWQgMCB8fCByZWxhdGl2ZS5ob3N0ICE9PSB2b2lkIDAgfHwgcmVsYXRpdmUucG9ydCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSByZWxhdGl2ZS51c2VyaW5mbzsKICAgICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICAgIHRhcmdldC5wb3J0ID0gcmVsYXRpdmUucG9ydDsKICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCB8fCAiIik7CiAgICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFyZWxhdGl2ZS5wYXRoKSB7CiAgICAgICAgICAgIHRhcmdldC5wYXRoID0gYmFzZS5wYXRoOwogICAgICAgICAgICBpZiAocmVsYXRpdmUucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IHJlbGF0aXZlLnF1ZXJ5OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IGJhc2UucXVlcnk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChyZWxhdGl2ZS5wYXRoLmNoYXJBdCgwKSA9PT0gIi8iKSB7CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBpZiAoKGJhc2UudXNlcmluZm8gIT09IHZvaWQgMCB8fCBiYXNlLmhvc3QgIT09IHZvaWQgMCB8fCBiYXNlLnBvcnQgIT09IHZvaWQgMCkgJiYgIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSAiLyIgKyByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0YXJnZXQucGF0aCA9IGJhc2UucGF0aC5zbGljZSgwLCBiYXNlLnBhdGgubGFzdEluZGV4T2YoIi8iKSArIDEpICsgcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyh0YXJnZXQucGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgICAgICB9CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSBiYXNlLnVzZXJpbmZvOwogICAgICAgICAgdGFyZ2V0Lmhvc3QgPSBiYXNlLmhvc3Q7CiAgICAgICAgICB0YXJnZXQucG9ydCA9IGJhc2UucG9ydDsKICAgICAgICB9CiAgICAgICAgdGFyZ2V0LnNjaGVtZSA9IGJhc2Uuc2NoZW1lOwogICAgICB9CiAgICAgIHRhcmdldC5mcmFnbWVudCA9IHJlbGF0aXZlLmZyYWdtZW50OwogICAgICByZXR1cm4gdGFyZ2V0OwogICAgfQogICAgZnVuY3Rpb24gZXF1YWwodXJpQSwgdXJpQiwgb3B0aW9ucykgewogICAgICBpZiAodHlwZW9mIHVyaUEgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpQSA9IHVuZXNjYXBlKHVyaUEpOwogICAgICAgIHVyaUEgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcocGFyc2UodXJpQSwgb3B0aW9ucyksIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaUEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdXJpQSA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyh1cmlBLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgdXJpQiA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmlCID0gdW5lc2NhcGUodXJpQik7CiAgICAgICAgdXJpQiA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyhwYXJzZSh1cmlCLCBvcHRpb25zKSwgdHJ1ZSksIHsgLi4ub3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpQiA9PT0gIm9iamVjdCIpIHsKICAgICAgICB1cmlCID0gc2VyaWFsaXplKG5vcm1hbGl6ZUNvbXBvbmVudEVuY29kaW5nKHVyaUIsIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaUEudG9Mb3dlckNhc2UoKSA9PT0gdXJpQi50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gc2VyaWFsaXplKGNtcHRzLCBvcHRzKSB7CiAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSB7CiAgICAgICAgaG9zdDogY21wdHMuaG9zdCwKICAgICAgICBzY2hlbWU6IGNtcHRzLnNjaGVtZSwKICAgICAgICB1c2VyaW5mbzogY21wdHMudXNlcmluZm8sCiAgICAgICAgcG9ydDogY21wdHMucG9ydCwKICAgICAgICBwYXRoOiBjbXB0cy5wYXRoLAogICAgICAgIHF1ZXJ5OiBjbXB0cy5xdWVyeSwKICAgICAgICBuaWQ6IGNtcHRzLm5pZCwKICAgICAgICBuc3M6IGNtcHRzLm5zcywKICAgICAgICB1dWlkOiBjbXB0cy51dWlkLAogICAgICAgIGZyYWdtZW50OiBjbXB0cy5mcmFnbWVudCwKICAgICAgICByZWZlcmVuY2U6IGNtcHRzLnJlZmVyZW5jZSwKICAgICAgICByZXNvdXJjZU5hbWU6IGNtcHRzLnJlc291cmNlTmFtZSwKICAgICAgICBzZWN1cmU6IGNtcHRzLnNlY3VyZSwKICAgICAgICBlcnJvcjogIiIKICAgICAgfTsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbKG9wdGlvbnMuc2NoZW1lIHx8IGNvbXBvbmVudHMuc2NoZW1lIHx8ICIiKS50b0xvd2VyQ2FzZSgpXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5zZXJpYWxpemUpIHNjaGVtZUhhbmRsZXIuc2VyaWFsaXplKGNvbXBvbmVudHMsIG9wdGlvbnMpOwogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoIW9wdGlvbnMuc2tpcEVzY2FwZSkgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZXNjYXBlKGNvbXBvbmVudHMucGF0aCk7CiAgICAgICAgICBpZiAoY29tcG9uZW50cy5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBjb21wb25lbnRzLnBhdGggPSBjb21wb25lbnRzLnBhdGguc3BsaXQoIiUzQSIpLmpvaW4oIjoiKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gdW5lc2NhcGUoY29tcG9uZW50cy5wYXRoKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IiAmJiBjb21wb25lbnRzLnNjaGVtZSkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMuc2NoZW1lLCAiOiIpOwogICAgICB9CiAgICAgIGNvbnN0IGF1dGhvcml0eSA9IHJlY29tcG9zZUF1dGhvcml0eShjb21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgaWYgKGF1dGhvcml0eSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IikgewogICAgICAgICAgdXJpVG9rZW5zLnB1c2goIi8vIik7CiAgICAgICAgfQogICAgICAgIHVyaVRva2Vucy5wdXNoKGF1dGhvcml0eSk7CiAgICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAmJiBjb21wb25lbnRzLnBhdGguY2hhckF0KDApICE9PSAiLyIpIHsKICAgICAgICAgIHVyaVRva2Vucy5wdXNoKCIvIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnBhdGggIT09IHZvaWQgMCkgewogICAgICAgIGxldCBzID0gY29tcG9uZW50cy5wYXRoOwogICAgICAgIGlmICghb3B0aW9ucy5hYnNvbHV0ZVBhdGggJiYgKCFzY2hlbWVIYW5kbGVyIHx8ICFzY2hlbWVIYW5kbGVyLmFic29sdXRlUGF0aCkpIHsKICAgICAgICAgIHMgPSByZW1vdmVEb3RTZWdtZW50cyhzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGF1dGhvcml0eSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBzID0gcy5yZXBsYWNlKC9eXC9cLy91LCAiLyUyRiIpOwogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChzKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5xdWVyeSAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIj8iLCBjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIiMiLCBjb21wb25lbnRzLmZyYWdtZW50KTsKICAgICAgfQogICAgICByZXR1cm4gdXJpVG9rZW5zLmpvaW4oIiIpOwogICAgfQogICAgdmFyIGhleExvb2tVcCA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDEyNyB9LCAodiwgaykgPT4gL1teISIkJicoKSorLFwtLjs9X2BhLXp7fX5dL3UudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGspKSk7CiAgICBmdW5jdGlvbiBub25TaW1wbGVEb21haW4odmFsdWUpIHsKICAgICAgbGV0IGNvZGUgPSAwOwogICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdmFsdWUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHsKICAgICAgICBjb2RlID0gdmFsdWUuY2hhckNvZGVBdChpKTsKICAgICAgICBpZiAoY29kZSA+IDEyNiB8fCBoZXhMb29rVXBbY29kZV0pIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICB2YXIgVVJJX1BBUlNFID0gL14oPzooW14jLzo/XSspOik/KD86XC9cLygoPzooW14jLz9AXSopQCk/KFxbW14jLz9cXV0rXF18W14jLzo/XSopKD86OihcZCopKT8pKT8oW14jP10qKSg/Olw/KFteI10qKSk/KD86IygoPzoufFtcblxyXSkqKSk/L3U7CiAgICBmdW5jdGlvbiBwYXJzZSh1cmksIG9wdHMpIHsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCBwYXJzZWQgPSB7CiAgICAgICAgc2NoZW1lOiB2b2lkIDAsCiAgICAgICAgdXNlcmluZm86IHZvaWQgMCwKICAgICAgICBob3N0OiAiIiwKICAgICAgICBwb3J0OiB2b2lkIDAsCiAgICAgICAgcGF0aDogIiIsCiAgICAgICAgcXVlcnk6IHZvaWQgMCwKICAgICAgICBmcmFnbWVudDogdm9pZCAwCiAgICAgIH07CiAgICAgIGNvbnN0IGdvdEVuY29kaW5nID0gdXJpLmluZGV4T2YoIiUiKSAhPT0gLTE7CiAgICAgIGxldCBpc0lQID0gZmFsc2U7CiAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSA9PT0gInN1ZmZpeCIpIHVyaSA9IChvcHRpb25zLnNjaGVtZSA/IG9wdGlvbnMuc2NoZW1lICsgIjoiIDogIiIpICsgIi8vIiArIHVyaTsKICAgICAgY29uc3QgbWF0Y2hlcyA9IHVyaS5tYXRjaChVUklfUEFSU0UpOwogICAgICBpZiAobWF0Y2hlcykgewogICAgICAgIHBhcnNlZC5zY2hlbWUgPSBtYXRjaGVzWzFdOwogICAgICAgIHBhcnNlZC51c2VyaW5mbyA9IG1hdGNoZXNbM107CiAgICAgICAgcGFyc2VkLmhvc3QgPSBtYXRjaGVzWzRdOwogICAgICAgIHBhcnNlZC5wb3J0ID0gcGFyc2VJbnQobWF0Y2hlc1s1XSwgMTApOwogICAgICAgIHBhcnNlZC5wYXRoID0gbWF0Y2hlc1s2XSB8fCAiIjsKICAgICAgICBwYXJzZWQucXVlcnkgPSBtYXRjaGVzWzddOwogICAgICAgIHBhcnNlZC5mcmFnbWVudCA9IG1hdGNoZXNbOF07CiAgICAgICAgaWYgKGlzTmFOKHBhcnNlZC5wb3J0KSkgewogICAgICAgICAgcGFyc2VkLnBvcnQgPSBtYXRjaGVzWzVdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyc2VkLmhvc3QpIHsKICAgICAgICAgIGNvbnN0IGlwdjRyZXN1bHQgPSBub3JtYWxpemVJUHY0KHBhcnNlZC5ob3N0KTsKICAgICAgICAgIGlmIChpcHY0cmVzdWx0LmlzSVBWNCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY29uc3QgaXB2NnJlc3VsdCA9IG5vcm1hbGl6ZUlQdjYoaXB2NHJlc3VsdC5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NnJlc3VsdC5ob3N0LnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgIGlzSVAgPSBpcHY2cmVzdWx0LmlzSVBWNjsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NHJlc3VsdC5ob3N0OwogICAgICAgICAgICBpc0lQID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5zY2hlbWUgPT09IHZvaWQgMCAmJiBwYXJzZWQudXNlcmluZm8gPT09IHZvaWQgMCAmJiBwYXJzZWQuaG9zdCA9PT0gdm9pZCAwICYmIHBhcnNlZC5wb3J0ID09PSB2b2lkIDAgJiYgIXBhcnNlZC5wYXRoICYmIHBhcnNlZC5xdWVyeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInNhbWUtZG9jdW1lbnQiOwogICAgICAgIH0gZWxzZSBpZiAocGFyc2VkLnNjaGVtZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInJlbGF0aXZlIjsKICAgICAgICB9IGVsc2UgaWYgKHBhcnNlZC5mcmFnbWVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gImFic29sdXRlIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJ1cmkiOwogICAgICAgIH0KICAgICAgICBpZiAob3B0aW9ucy5yZWZlcmVuY2UgJiYgb3B0aW9ucy5yZWZlcmVuY2UgIT09ICJzdWZmaXgiICYmIG9wdGlvbnMucmVmZXJlbmNlICE9PSBwYXJzZWQucmVmZXJlbmNlKSB7CiAgICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIlVSSSBpcyBub3QgYSAiICsgb3B0aW9ucy5yZWZlcmVuY2UgKyAiIHJlZmVyZW5jZS4iOwogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWVIYW5kbGVyID0gU0NIRU1FU1sob3B0aW9ucy5zY2hlbWUgfHwgcGFyc2VkLnNjaGVtZSB8fCAiIikudG9Mb3dlckNhc2UoKV07CiAgICAgICAgaWYgKCFvcHRpb25zLnVuaWNvZGVTdXBwb3J0ICYmICghc2NoZW1lSGFuZGxlciB8fCAhc2NoZW1lSGFuZGxlci51bmljb2RlU3VwcG9ydCkpIHsKICAgICAgICAgIGlmIChwYXJzZWQuaG9zdCAmJiAob3B0aW9ucy5kb21haW5Ib3N0IHx8IHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5kb21haW5Ib3N0KSAmJiBpc0lQID09PSBmYWxzZSAmJiBub25TaW1wbGVEb21haW4ocGFyc2VkLmhvc3QpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgcGFyc2VkLmhvc3QgPSBVUkwuZG9tYWluVG9BU0NJSShwYXJzZWQuaG9zdC50b0xvd2VyQ2FzZSgpKTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiSG9zdCdzIGRvbWFpbiBuYW1lIGNhbiBub3QgYmUgY29udmVydGVkIHRvIEFTQ0lJOiAiICsgZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoIXNjaGVtZUhhbmRsZXIgfHwgc2NoZW1lSGFuZGxlciAmJiAhc2NoZW1lSGFuZGxlci5za2lwTm9ybWFsaXplKSB7CiAgICAgICAgICBpZiAoZ290RW5jb2RpbmcgJiYgcGFyc2VkLnNjaGVtZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5zY2hlbWUgPSB1bmVzY2FwZShwYXJzZWQuc2NoZW1lKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChnb3RFbmNvZGluZyAmJiBwYXJzZWQuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gdW5lc2NhcGUocGFyc2VkLmhvc3QpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhcnNlZC5wYXRoICE9PSB2b2lkIDAgJiYgcGFyc2VkLnBhdGgubGVuZ3RoKSB7CiAgICAgICAgICAgIHBhcnNlZC5wYXRoID0gZXNjYXBlKHVuZXNjYXBlKHBhcnNlZC5wYXRoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGFyc2VkLmZyYWdtZW50ICE9PSB2b2lkIDAgJiYgcGFyc2VkLmZyYWdtZW50Lmxlbmd0aCkgewogICAgICAgICAgICBwYXJzZWQuZnJhZ21lbnQgPSBlbmNvZGVVUkkoZGVjb2RlVVJJQ29tcG9uZW50KHBhcnNlZC5mcmFnbWVudCkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1lSGFuZGxlciAmJiBzY2hlbWVIYW5kbGVyLnBhcnNlKSB7CiAgICAgICAgICBzY2hlbWVIYW5kbGVyLnBhcnNlKHBhcnNlZCwgb3B0aW9ucyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiVVJJIGNhbiBub3QgYmUgcGFyc2VkLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhcnNlZDsKICAgIH0KICAgIHZhciBmYXN0VXJpID0gewogICAgICBTQ0hFTUVTLAogICAgICBub3JtYWxpemUsCiAgICAgIHJlc29sdmUsCiAgICAgIHJlc29sdmVDb21wb25lbnRzLAogICAgICBlcXVhbCwKICAgICAgc2VyaWFsaXplLAogICAgICBwYXJzZQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZGVmYXVsdCA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZmFzdFVyaSA9IGZhc3RVcmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VyaS5qcwp2YXIgcmVxdWlyZV91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdXJpLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXJpID0gcmVxdWlyZV9mYXN0X3VyaSgpOwogICAgdXJpLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91cmkiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB1cmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSB2b2lkIDA7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIktleXdvcmRDeHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0ZV8xLktleXdvcmRDeHQ7CiAgICB9IH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb2RlR2VuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLkNvZGVHZW47CiAgICB9IH0pOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIGNvZGVnZW5fMiA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgJGRhdGFSZWZTY2hlbWEgPSByZXF1aXJlX2RhdGEoKTsKICAgIHZhciB1cmlfMSA9IHJlcXVpcmVfdXJpKCk7CiAgICB2YXIgZGVmYXVsdFJlZ0V4cCA9IChzdHIyLCBmbGFncykgPT4gbmV3IFJlZ0V4cChzdHIyLCBmbGFncyk7CiAgICBkZWZhdWx0UmVnRXhwLmNvZGUgPSAibmV3IFJlZ0V4cCI7CiAgICB2YXIgTUVUQV9JR05PUkVfT1BUSU9OUyA9IFsicmVtb3ZlQWRkaXRpb25hbCIsICJ1c2VEZWZhdWx0cyIsICJjb2VyY2VUeXBlcyJdOwogICAgdmFyIEVYVF9TQ09QRV9OQU1FUyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgInZhbGlkYXRlIiwKICAgICAgInNlcmlhbGl6ZSIsCiAgICAgICJwYXJzZSIsCiAgICAgICJ3cmFwcGVyIiwKICAgICAgInJvb3QiLAogICAgICAic2NoZW1hIiwKICAgICAgImtleXdvcmQiLAogICAgICAicGF0dGVybiIsCiAgICAgICJmb3JtYXRzIiwKICAgICAgInZhbGlkYXRlJGRhdGEiLAogICAgICAiZnVuYyIsCiAgICAgICJvYmoiLAogICAgICAiRXJyb3IiCiAgICBdKTsKICAgIHZhciByZW1vdmVkT3B0aW9ucyA9IHsKICAgICAgZXJyb3JEYXRhUGF0aDogIiIsCiAgICAgIGZvcm1hdDogImB2YWxpZGF0ZUZvcm1hdHM6IGZhbHNlYCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG51bGxhYmxlOiAnIm51bGxhYmxlIiBrZXl3b3JkIGlzIHN1cHBvcnRlZCBieSBkZWZhdWx0LicsCiAgICAgIGpzb25Qb2ludGVyczogIkRlcHJlY2F0ZWQganNQcm9wZXJ0eVN5bnRheCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIGV4dGVuZFJlZnM6ICJEZXByZWNhdGVkIGlnbm9yZUtleXdvcmRzV2l0aFJlZiBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG1pc3NpbmdSZWZzOiAiUGFzcyBlbXB0eSBzY2hlbWEgd2l0aCAkaWQgdGhhdCBzaG91bGQgYmUgaWdub3JlZCB0byBhanYuYWRkU2NoZW1hLiIsCiAgICAgIHByb2Nlc3NDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3Byb2Nlc3M6IChjb2RlLCBzY2hlbWFFbnY6IG9iamVjdCkgPT4gc3RyaW5nfWAiLAogICAgICBzb3VyY2VDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3NvdXJjZTogdHJ1ZX1gIiwKICAgICAgc3RyaWN0RGVmYXVsdHM6ICJJdCBpcyBkZWZhdWx0IG5vdywgc2VlIG9wdGlvbiBgc3RyaWN0YC4iLAogICAgICBzdHJpY3RLZXl3b3JkczogIkl0IGlzIGRlZmF1bHQgbm93LCBzZWUgb3B0aW9uIGBzdHJpY3RgLiIsCiAgICAgIHVuaXF1ZUl0ZW1zOiAnInVuaXF1ZUl0ZW1zIiBrZXl3b3JkIGlzIGFsd2F5cyB2YWxpZGF0ZWQuJywKICAgICAgdW5rbm93bkZvcm1hdHM6ICJEaXNhYmxlIHN0cmljdCBtb2RlIG9yIHBhc3MgYHRydWVgIHRvIGBhanYuYWRkRm9ybWF0YCAob3IgYGZvcm1hdHNgIG9wdGlvbikuIiwKICAgICAgY2FjaGU6ICJNYXAgaXMgdXNlZCBhcyBjYWNoZSwgc2NoZW1hIG9iamVjdCBhcyBrZXkuIiwKICAgICAgc2VyaWFsaXplOiAiTWFwIGlzIHVzZWQgYXMgY2FjaGUsIHNjaGVtYSBvYmplY3QgYXMga2V5LiIsCiAgICAgIGFqdkVycm9yczogIkl0IGlzIGRlZmF1bHQgbm93LiIKICAgIH07CiAgICB2YXIgZGVwcmVjYXRlZE9wdGlvbnMgPSB7CiAgICAgIGlnbm9yZUtleXdvcmRzV2l0aFJlZjogIiIsCiAgICAgIGpzUHJvcGVydHlTeW50YXg6ICIiLAogICAgICB1bmljb2RlOiAnIm1pbkxlbmd0aCIvIm1heExlbmd0aCIgYWNjb3VudCBmb3IgdW5pY29kZSBjaGFyYWN0ZXJzIGJ5IGRlZmF1bHQuJwogICAgfTsKICAgIHZhciBNQVhfRVhQUkVTU0lPTiA9IDIwMDsKICAgIGZ1bmN0aW9uIHJlcXVpcmVkT3B0aW9ucyhvKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mLCBfZywgX2gsIF9qLCBfaywgX2wsIF9tLCBfbywgX3AsIF9xLCBfciwgX3MsIF90LCBfdSwgX3YsIF93LCBfeCwgX3ksIF96LCBfMDsKICAgICAgY29uc3QgcyA9IG8uc3RyaWN0OwogICAgICBjb25zdCBfb3B0eiA9IChfYSA9IG8uY29kZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplOwogICAgICBjb25zdCBvcHRpbWl6ZSA9IF9vcHR6ID09PSB0cnVlIHx8IF9vcHR6ID09PSB2b2lkIDAgPyAxIDogX29wdHogfHwgMDsKICAgICAgY29uc3QgcmVnRXhwID0gKF9jID0gKF9iID0gby5jb2RlKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IucmVnRXhwKSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiBkZWZhdWx0UmVnRXhwOwogICAgICBjb25zdCB1cmlSZXNvbHZlciA9IChfZCA9IG8udXJpUmVzb2x2ZXIpICE9PSBudWxsICYmIF9kICE9PSB2b2lkIDAgPyBfZCA6IHVyaV8xLmRlZmF1bHQ7CiAgICAgIHJldHVybiB7CiAgICAgICAgc3RyaWN0U2NoZW1hOiAoX2YgPSAoX2UgPSBvLnN0cmljdFNjaGVtYSkgIT09IG51bGwgJiYgX2UgIT09IHZvaWQgMCA/IF9lIDogcykgIT09IG51bGwgJiYgX2YgIT09IHZvaWQgMCA/IF9mIDogdHJ1ZSwKICAgICAgICBzdHJpY3ROdW1iZXJzOiAoX2ggPSAoX2cgPSBvLnN0cmljdE51bWJlcnMpICE9PSBudWxsICYmIF9nICE9PSB2b2lkIDAgPyBfZyA6IHMpICE9PSBudWxsICYmIF9oICE9PSB2b2lkIDAgPyBfaCA6IHRydWUsCiAgICAgICAgc3RyaWN0VHlwZXM6IChfayA9IChfaiA9IG8uc3RyaWN0VHlwZXMpICE9PSBudWxsICYmIF9qICE9PSB2b2lkIDAgPyBfaiA6IHMpICE9PSBudWxsICYmIF9rICE9PSB2b2lkIDAgPyBfayA6ICJsb2ciLAogICAgICAgIHN0cmljdFR1cGxlczogKF9tID0gKF9sID0gby5zdHJpY3RUdXBsZXMpICE9PSBudWxsICYmIF9sICE9PSB2b2lkIDAgPyBfbCA6IHMpICE9PSBudWxsICYmIF9tICE9PSB2b2lkIDAgPyBfbSA6ICJsb2ciLAogICAgICAgIHN0cmljdFJlcXVpcmVkOiAoX3AgPSAoX28gPSBvLnN0cmljdFJlcXVpcmVkKSAhPT0gbnVsbCAmJiBfbyAhPT0gdm9pZCAwID8gX28gOiBzKSAhPT0gbnVsbCAmJiBfcCAhPT0gdm9pZCAwID8gX3AgOiBmYWxzZSwKICAgICAgICBjb2RlOiBvLmNvZGUgPyB7IC4uLm8uY29kZSwgb3B0aW1pemUsIHJlZ0V4cCB9IDogeyBvcHRpbWl6ZSwgcmVnRXhwIH0sCiAgICAgICAgbG9vcFJlcXVpcmVkOiAoX3EgPSBvLmxvb3BSZXF1aXJlZCkgIT09IG51bGwgJiYgX3EgIT09IHZvaWQgMCA/IF9xIDogTUFYX0VYUFJFU1NJT04sCiAgICAgICAgbG9vcEVudW06IChfciA9IG8ubG9vcEVudW0pICE9PSBudWxsICYmIF9yICE9PSB2b2lkIDAgPyBfciA6IE1BWF9FWFBSRVNTSU9OLAogICAgICAgIG1ldGE6IChfcyA9IG8ubWV0YSkgIT09IG51bGwgJiYgX3MgIT09IHZvaWQgMCA/IF9zIDogdHJ1ZSwKICAgICAgICBtZXNzYWdlczogKF90ID0gby5tZXNzYWdlcykgIT09IG51bGwgJiYgX3QgIT09IHZvaWQgMCA/IF90IDogdHJ1ZSwKICAgICAgICBpbmxpbmVSZWZzOiAoX3UgPSBvLmlubGluZVJlZnMpICE9PSBudWxsICYmIF91ICE9PSB2b2lkIDAgPyBfdSA6IHRydWUsCiAgICAgICAgc2NoZW1hSWQ6IChfdiA9IG8uc2NoZW1hSWQpICE9PSBudWxsICYmIF92ICE9PSB2b2lkIDAgPyBfdiA6ICIkaWQiLAogICAgICAgIGFkZFVzZWRTY2hlbWE6IChfdyA9IG8uYWRkVXNlZFNjaGVtYSkgIT09IG51bGwgJiYgX3cgIT09IHZvaWQgMCA/IF93IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZVNjaGVtYTogKF94ID0gby52YWxpZGF0ZVNjaGVtYSkgIT09IG51bGwgJiYgX3ggIT09IHZvaWQgMCA/IF94IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZUZvcm1hdHM6IChfeSA9IG8udmFsaWRhdGVGb3JtYXRzKSAhPT0gbnVsbCAmJiBfeSAhPT0gdm9pZCAwID8gX3kgOiB0cnVlLAogICAgICAgIHVuaWNvZGVSZWdFeHA6IChfeiA9IG8udW5pY29kZVJlZ0V4cCkgIT09IG51bGwgJiYgX3ogIT09IHZvaWQgMCA/IF96IDogdHJ1ZSwKICAgICAgICBpbnQzMnJhbmdlOiAoXzAgPSBvLmludDMycmFuZ2UpICE9PSBudWxsICYmIF8wICE9PSB2b2lkIDAgPyBfMCA6IHRydWUsCiAgICAgICAgdXJpUmVzb2x2ZXIKICAgICAgfTsKICAgIH0KICAgIHZhciBBanYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMgPSB7fSkgewogICAgICAgIHRoaXMuc2NoZW1hcyA9IHt9OwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICAgIHRoaXMuZm9ybWF0cyA9IHt9OwogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgdGhpcy5fbG9hZGluZyA9IHt9OwogICAgICAgIHRoaXMuX2NhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBvcHRzID0gdGhpcy5vcHRzID0geyAuLi5vcHRzLCAuLi5yZXF1aXJlZE9wdGlvbnMob3B0cykgfTsKICAgICAgICBjb25zdCB7IGVzNSwgbGluZXMgfSA9IHRoaXMub3B0cy5jb2RlOwogICAgICAgIHRoaXMuc2NvcGUgPSBuZXcgY29kZWdlbl8yLlZhbHVlU2NvcGUoeyBzY29wZToge30sIHByZWZpeGVzOiBFWFRfU0NPUEVfTkFNRVMsIGVzNSwgbGluZXMgfSk7CiAgICAgICAgdGhpcy5sb2dnZXIgPSBnZXRMb2dnZXIob3B0cy5sb2dnZXIpOwogICAgICAgIGNvbnN0IGZvcm1hdE9wdCA9IG9wdHMudmFsaWRhdGVGb3JtYXRzOwogICAgICAgIG9wdHMudmFsaWRhdGVGb3JtYXRzID0gZmFsc2U7CiAgICAgICAgdGhpcy5SVUxFUyA9ICgwLCBydWxlc18xLmdldFJ1bGVzKSgpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIHJlbW92ZWRPcHRpb25zLCBvcHRzLCAiTk9UIFNVUFBPUlRFRCIpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIGRlcHJlY2F0ZWRPcHRpb25zLCBvcHRzLCAiREVQUkVDQVRFRCIsICJ3YXJuIik7CiAgICAgICAgdGhpcy5fbWV0YU9wdHMgPSBnZXRNZXRhU2NoZW1hT3B0aW9ucy5jYWxsKHRoaXMpOwogICAgICAgIGlmIChvcHRzLmZvcm1hdHMpCiAgICAgICAgICBhZGRJbml0aWFsRm9ybWF0cy5jYWxsKHRoaXMpOwogICAgICAgIHRoaXMuX2FkZFZvY2FidWxhcmllcygpOwogICAgICAgIHRoaXMuX2FkZERlZmF1bHRNZXRhU2NoZW1hKCk7CiAgICAgICAgaWYgKG9wdHMua2V5d29yZHMpCiAgICAgICAgICBhZGRJbml0aWFsS2V5d29yZHMuY2FsbCh0aGlzLCBvcHRzLmtleXdvcmRzKTsKICAgICAgICBpZiAodHlwZW9mIG9wdHMubWV0YSA9PSAib2JqZWN0IikKICAgICAgICAgIHRoaXMuYWRkTWV0YVNjaGVtYShvcHRzLm1ldGEpOwogICAgICAgIGFkZEluaXRpYWxTY2hlbWFzLmNhbGwodGhpcyk7CiAgICAgICAgb3B0cy52YWxpZGF0ZUZvcm1hdHMgPSBmb3JtYXRPcHQ7CiAgICAgIH0KICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICB0aGlzLmFkZEtleXdvcmQoIiRhc3luYyIpOwogICAgICB9CiAgICAgIF9hZGREZWZhdWx0TWV0YVNjaGVtYSgpIHsKICAgICAgICBjb25zdCB7ICRkYXRhLCBtZXRhLCBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGxldCBfZGF0YVJlZlNjaGVtYSA9ICRkYXRhUmVmU2NoZW1hOwogICAgICAgIGlmIChzY2hlbWFJZCA9PT0gImlkIikgewogICAgICAgICAgX2RhdGFSZWZTY2hlbWEgPSB7IC4uLiRkYXRhUmVmU2NoZW1hIH07CiAgICAgICAgICBfZGF0YVJlZlNjaGVtYS5pZCA9IF9kYXRhUmVmU2NoZW1hLiRpZDsKICAgICAgICAgIGRlbGV0ZSBfZGF0YVJlZlNjaGVtYS4kaWQ7CiAgICAgICAgfQogICAgICAgIGlmIChtZXRhICYmICRkYXRhKQogICAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKF9kYXRhUmVmU2NoZW1hLCBfZGF0YVJlZlNjaGVtYVtzY2hlbWFJZF0sIGZhbHNlKTsKICAgICAgfQogICAgICBkZWZhdWx0TWV0YSgpIHsKICAgICAgICBjb25zdCB7IG1ldGEsIHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHR5cGVvZiBtZXRhID09ICJvYmplY3QiID8gbWV0YVtzY2hlbWFJZF0gfHwgbWV0YSA6IHZvaWQgMDsKICAgICAgfQogICAgICB2YWxpZGF0ZShzY2hlbWFLZXlSZWYsIGRhdGEpIHsKICAgICAgICBsZXQgdjsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYUtleVJlZiA9PSAic3RyaW5nIikgewogICAgICAgICAgdiA9IHRoaXMuZ2V0U2NoZW1hKHNjaGVtYUtleVJlZik7CiAgICAgICAgICBpZiAoIXYpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgbm8gc2NoZW1hIHdpdGgga2V5IG9yIHJlZiAiJHtzY2hlbWFLZXlSZWZ9ImApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB2ID0gdGhpcy5jb21waWxlKHNjaGVtYUtleVJlZik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gdihkYXRhKTsKICAgICAgICBpZiAoISgiJGFzeW5jIiBpbiB2KSkKICAgICAgICAgIHRoaXMuZXJyb3JzID0gdi5lcnJvcnM7CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIGNvbXBpbGUoc2NoZW1hMiwgX21ldGEpIHsKICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEpOwogICAgICAgIHJldHVybiBzY2gudmFsaWRhdGUgfHwgdGhpcy5fY29tcGlsZVNjaGVtYUVudihzY2gpOwogICAgICB9CiAgICAgIGNvbXBpbGVBc3luYyhzY2hlbWEyLCBtZXRhKSB7CiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdHMubG9hZFNjaGVtYSAhPSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIm9wdGlvbnMubG9hZFNjaGVtYSBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB7IGxvYWRTY2hlbWEgfSA9IHRoaXMub3B0czsKICAgICAgICByZXR1cm4gcnVuQ29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoZW1hMiwgbWV0YSk7CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuQ29tcGlsZUFzeW5jKF9zY2hlbWEsIF9tZXRhKSB7CiAgICAgICAgICBhd2FpdCBsb2FkTWV0YVNjaGVtYS5jYWxsKHRoaXMsIF9zY2hlbWEuJHNjaGVtYSk7CiAgICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoX3NjaGVtYSwgX21ldGEpOwogICAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gbG9hZE1ldGFTY2hlbWEoJHJlZikgewogICAgICAgICAgaWYgKCRyZWYgJiYgIXRoaXMuZ2V0U2NoZW1hKCRyZWYpKSB7CiAgICAgICAgICAgIGF3YWl0IHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHsgJHJlZiB9LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gX2NvbXBpbGVBc3luYyhzY2gpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiByZWZfZXJyb3JfMS5kZWZhdWx0KSkKICAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgICBjaGVja0xvYWRlZC5jYWxsKHRoaXMsIGUpOwogICAgICAgICAgICBhd2FpdCBsb2FkTWlzc2luZ1NjaGVtYS5jYWxsKHRoaXMsIGUubWlzc2luZ1NjaGVtYSk7CiAgICAgICAgICAgIHJldHVybiBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoeyBtaXNzaW5nU2NoZW1hOiByZWYsIG1pc3NpbmdSZWYgfSkgewogICAgICAgICAgaWYgKHRoaXMucmVmc1tyZWZdKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQW55U2NoZW1hICR7cmVmfSBpcyBsb2FkZWQgYnV0ICR7bWlzc2luZ1JlZn0gY2Fubm90IGJlIHJlc29sdmVkYCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIGxvYWRNaXNzaW5nU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgX3NjaGVtYSA9IGF3YWl0IF9sb2FkU2NoZW1hLmNhbGwodGhpcywgcmVmKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIGF3YWl0IGxvYWRNZXRhU2NoZW1hLmNhbGwodGhpcywgX3NjaGVtYS4kc2NoZW1hKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKF9zY2hlbWEsIHJlZiwgbWV0YSk7CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIF9sb2FkU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvYWRpbmdbcmVmXTsKICAgICAgICAgIGlmIChwKQogICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAodGhpcy5fbG9hZGluZ1tyZWZdID0gbG9hZFNjaGVtYShyZWYpKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9sb2FkaW5nW3JlZl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIEFkZHMgc2NoZW1hIHRvIHRoZSBpbnN0YW5jZQogICAgICBhZGRTY2hlbWEoc2NoZW1hMiwga2V5LCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMikpIHsKICAgICAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHNjaGVtYTIpCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaCwgdm9pZCAwLCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBsZXQgaWQ7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgICAgaWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICAgIGlmIChpZCAhPT0gdm9pZCAwICYmIHR5cGVvZiBpZCAhPSAic3RyaW5nIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSAke3NjaGVtYUlkfSBtdXN0IGJlIHN0cmluZ2ApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBrZXkgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXkgfHwgaWQpOwogICAgICAgIHRoaXMuX2NoZWNrVW5pcXVlKGtleSk7CiAgICAgICAgdGhpcy5zY2hlbWFzW2tleV0gPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBBZGQgc2NoZW1hIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHZhbGlkYXRlIG90aGVyIHNjaGVtYXMKICAgICAgLy8gb3B0aW9ucyBpbiBNRVRBX0lHTk9SRV9PUFRJT05TIGFyZSBhbHdheSBzZXQgdG8gZmFsc2UKICAgICAgYWRkTWV0YVNjaGVtYShzY2hlbWEyLCBrZXksIF92YWxpZGF0ZVNjaGVtYSA9IHRoaXMub3B0cy52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaGVtYTIsIGtleSwgdHJ1ZSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyAgVmFsaWRhdGUgc2NoZW1hIGFnYWluc3QgaXRzIG1ldGEtc2NoZW1hCiAgICAgIHZhbGlkYXRlU2NoZW1hKHNjaGVtYTIsIHRocm93T3JMb2dFcnJvcikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgJHNjaGVtYTsKICAgICAgICAkc2NoZW1hID0gc2NoZW1hMi4kc2NoZW1hOwogICAgICAgIGlmICgkc2NoZW1hICE9PSB2b2lkIDAgJiYgdHlwZW9mICRzY2hlbWEgIT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiJHNjaGVtYSBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgfQogICAgICAgICRzY2hlbWEgPSAkc2NoZW1hIHx8IHRoaXMub3B0cy5kZWZhdWx0TWV0YSB8fCB0aGlzLmRlZmF1bHRNZXRhKCk7CiAgICAgICAgaWYgKCEkc2NoZW1hKSB7CiAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKCJtZXRhLXNjaGVtYSBub3QgYXZhaWxhYmxlIik7CiAgICAgICAgICB0aGlzLmVycm9ycyA9IG51bGw7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdmFsaWQgPSB0aGlzLnZhbGlkYXRlKCRzY2hlbWEsIHNjaGVtYTIpOwogICAgICAgIGlmICghdmFsaWQgJiYgdGhyb3dPckxvZ0Vycm9yKSB7CiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gInNjaGVtYSBpcyBpbnZhbGlkOiAiICsgdGhpcy5lcnJvcnNUZXh0KCk7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IobWVzc2FnZSk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIC8vIEdldCBjb21waWxlZCBzY2hlbWEgYnkgYGtleWAgb3IgYHJlZmAuCiAgICAgIC8vIChga2V5YCB0aGF0IHdhcyBwYXNzZWQgdG8gYGFkZFNjaGVtYWAgb3IgZnVsbCBzY2hlbWEgcmVmZXJlbmNlIC0gYHNjaGVtYS4kaWRgIG9yIHJlc29sdmVkIGlkKQogICAgICBnZXRTY2hlbWEoa2V5UmVmKSB7CiAgICAgICAgbGV0IHNjaDsKICAgICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSBnZXRTY2hFbnYuY2FsbCh0aGlzLCBrZXlSZWYpKSA9PSAic3RyaW5nIikKICAgICAgICAgIGtleVJlZiA9IHNjaDsKICAgICAgICBpZiAoc2NoID09PSB2b2lkIDApIHsKICAgICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICAgIGNvbnN0IHJvb3QgPSBuZXcgY29tcGlsZV8xLlNjaGVtYUVudih7IHNjaGVtYToge30sIHNjaGVtYUlkIH0pOwogICAgICAgICAgc2NoID0gY29tcGlsZV8xLnJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBrZXlSZWYpOwogICAgICAgICAgaWYgKCFzY2gpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHRoaXMucmVmc1trZXlSZWZdID0gc2NoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlIHx8IHRoaXMuX2NvbXBpbGVTY2hlbWFFbnYoc2NoKTsKICAgICAgfQogICAgICAvLyBSZW1vdmUgY2FjaGVkIHNjaGVtYShzKS4KICAgICAgLy8gSWYgbm8gcGFyYW1ldGVyIGlzIHBhc3NlZCBhbGwgc2NoZW1hcyBidXQgbWV0YS1zY2hlbWFzIGFyZSByZW1vdmVkLgogICAgICAvLyBJZiBSZWdFeHAgaXMgcGFzc2VkIGFsbCBzY2hlbWFzIHdpdGgga2V5L2lkIG1hdGNoaW5nIHBhdHRlcm4gYnV0IG1ldGEtc2NoZW1hcyBhcmUgcmVtb3ZlZC4KICAgICAgLy8gRXZlbiBpZiBzY2hlbWEgaXMgcmVmZXJlbmNlZCBieSBvdGhlciBzY2hlbWFzIGl0IHN0aWxsIGNhbiBiZSByZW1vdmVkIGFzIG90aGVyIHNjaGVtYXMgaGF2ZSBsb2NhbCByZWZlcmVuY2VzLgogICAgICByZW1vdmVTY2hlbWEoc2NoZW1hS2V5UmVmKSB7CiAgICAgICAgaWYgKHNjaGVtYUtleVJlZiBpbnN0YW5jZW9mIFJlZ0V4cCkgewogICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnNjaGVtYXMsIHNjaGVtYUtleVJlZik7CiAgICAgICAgICB0aGlzLl9yZW1vdmVBbGxTY2hlbWFzKHRoaXMucmVmcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBzd2l0Y2ggKHR5cGVvZiBzY2hlbWFLZXlSZWYpIHsKICAgICAgICAgIGNhc2UgInVuZGVmaW5lZCI6CiAgICAgICAgICAgIHRoaXMuX3JlbW92ZUFsbFNjaGVtYXModGhpcy5zY2hlbWFzKTsKICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnJlZnMpOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIGNhc2UgInN0cmluZyI6IHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gZ2V0U2NoRW52LmNhbGwodGhpcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpCiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICBkZWxldGUgdGhpcy5zY2hlbWFzW3NjaGVtYUtleVJlZl07CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLnJlZnNbc2NoZW1hS2V5UmVmXTsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc2NoZW1hS2V5UmVmOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVLZXkpOwogICAgICAgICAgICBsZXQgaWQgPSBzY2hlbWFLZXlSZWZbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICAgICAgaWYgKGlkKSB7CiAgICAgICAgICAgICAgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShpZCk7CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2NoZW1hc1tpZF07CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMucmVmc1tpZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdi5yZW1vdmVTY2hlbWE6IGludmFsaWQgcGFyYW1ldGVyIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIGFkZCAidm9jYWJ1bGFyeSIgLSBhIGNvbGxlY3Rpb24gb2Yga2V5d29yZHMKICAgICAgYWRkVm9jYWJ1bGFyeShkZWZpbml0aW9ucykgewogICAgICAgIGZvciAoY29uc3QgZGVmIG9mIGRlZmluaXRpb25zKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYWRkS2V5d29yZChrd2RPckRlZiwgZGVmKSB7CiAgICAgICAgbGV0IGtleXdvcmQ7CiAgICAgICAgaWYgKHR5cGVvZiBrd2RPckRlZiA9PSAic3RyaW5nIikgewogICAgICAgICAga2V5d29yZCA9IGt3ZE9yRGVmOwogICAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgdGhpcy5sb2dnZXIud2FybigidGhlc2UgcGFyYW1ldGVycyBhcmUgZGVwcmVjYXRlZCwgc2VlIGRvY3MgZm9yIGFkZEtleXdvcmQiKTsKICAgICAgICAgICAgZGVmLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGt3ZE9yRGVmID09ICJvYmplY3QiICYmIGRlZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWYgPSBrd2RPckRlZjsKICAgICAgICAgIGtleXdvcmQgPSBkZWYua2V5d29yZDsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGtleXdvcmQpICYmICFrZXl3b3JkLmxlbmd0aCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFkZEtleXdvcmRzOiBrZXl3b3JkIG11c3QgYmUgc3RyaW5nIG9yIG5vbi1lbXB0eSBhcnJheSIpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgYWRkS2V5d29yZHMgcGFyYW1ldGVycyIpOwogICAgICAgIH0KICAgICAgICBjaGVja0tleXdvcmQuY2FsbCh0aGlzLCBrZXl3b3JkLCBkZWYpOwogICAgICAgIGlmICghZGVmKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiBhZGRSdWxlLmNhbGwodGhpcywga3dkKSk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAga2V5d29yZE1ldGFzY2hlbWEuY2FsbCh0aGlzLCBkZWYpOwogICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAuLi5kZWYsCiAgICAgICAgICB0eXBlOiAoMCwgZGF0YVR5cGVfMS5nZXRKU09OVHlwZXMpKGRlZi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmLnNjaGVtYVR5cGUpCiAgICAgICAgfTsKICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCBkZWZpbml0aW9uLnR5cGUubGVuZ3RoID09PSAwID8gKGspID0+IGFkZFJ1bGUuY2FsbCh0aGlzLCBrLCBkZWZpbml0aW9uKSA6IChrKSA9PiBkZWZpbml0aW9uLnR5cGUuZm9yRWFjaCgodCkgPT4gYWRkUnVsZS5jYWxsKHRoaXMsIGssIGRlZmluaXRpb24sIHQpKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0S2V5d29yZChrZXl3b3JkKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIHJldHVybiB0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiA/IHJ1bGUuZGVmaW5pdGlvbiA6ICEhcnVsZTsKICAgICAgfQogICAgICAvLyBSZW1vdmUga2V5d29yZAogICAgICByZW1vdmVLZXl3b3JkKGtleXdvcmQpIHsKICAgICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAgIGRlbGV0ZSBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXTsKICAgICAgICBkZWxldGUgUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpIHsKICAgICAgICAgIGNvbnN0IGkgPSBncm91cC5ydWxlcy5maW5kSW5kZXgoKHJ1bGUpID0+IHJ1bGUua2V5d29yZCA9PT0ga2V5d29yZCk7CiAgICAgICAgICBpZiAoaSA+PSAwKQogICAgICAgICAgICBncm91cC5ydWxlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIEFkZCBmb3JtYXQKICAgICAgYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCkgewogICAgICAgIGlmICh0eXBlb2YgZm9ybWF0ID09ICJzdHJpbmciKQogICAgICAgICAgZm9ybWF0ID0gbmV3IFJlZ0V4cChmb3JtYXQpOwogICAgICAgIHRoaXMuZm9ybWF0c1tuYW1lXSA9IGZvcm1hdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBlcnJvcnNUZXh0KGVycm9ycyA9IHRoaXMuZXJyb3JzLCB7IHNlcGFyYXRvciA9ICIsICIsIGRhdGFWYXIgPSAiZGF0YSIgfSA9IHt9KSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiTm8gZXJyb3JzIjsKICAgICAgICByZXR1cm4gZXJyb3JzLm1hcCgoZSkgPT4gYCR7ZGF0YVZhcn0ke2UuaW5zdGFuY2VQYXRofSAke2UubWVzc2FnZX1gKS5yZWR1Y2UoKHRleHQsIG1zZykgPT4gdGV4dCArIHNlcGFyYXRvciArIG1zZyk7CiAgICAgIH0KICAgICAgJGRhdGFNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIGtleXdvcmRzSnNvblBvaW50ZXJzKSB7CiAgICAgICAgY29uc3QgcnVsZXMgPSB0aGlzLlJVTEVTLmFsbDsKICAgICAgICBtZXRhU2NoZW1hID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShtZXRhU2NoZW1hKSk7CiAgICAgICAgZm9yIChjb25zdCBqc29uUG9pbnRlciBvZiBrZXl3b3Jkc0pzb25Qb2ludGVycykgewogICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBqc29uUG9pbnRlci5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgbGV0IGtleXdvcmRzID0gbWV0YVNjaGVtYTsKICAgICAgICAgIGZvciAoY29uc3Qgc2VnIG9mIHNlZ21lbnRzKQogICAgICAgICAgICBrZXl3b3JkcyA9IGtleXdvcmRzW3NlZ107CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBydWxlcykgewogICAgICAgICAgICBjb25zdCBydWxlID0gcnVsZXNba2V5XTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlICE9ICJvYmplY3QiKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjb25zdCB7ICRkYXRhIH0gPSBydWxlLmRlZmluaXRpb247CiAgICAgICAgICAgIGNvbnN0IHNjaGVtYTIgPSBrZXl3b3Jkc1trZXldOwogICAgICAgICAgICBpZiAoJGRhdGEgJiYgc2NoZW1hMikKICAgICAgICAgICAgICBrZXl3b3Jkc1trZXldID0gc2NoZW1hT3JEYXRhKHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWV0YVNjaGVtYTsKICAgICAgfQogICAgICBfcmVtb3ZlQWxsU2NoZW1hcyhzY2hlbWFzLCByZWdleCkgewogICAgICAgIGZvciAoY29uc3Qga2V5UmVmIGluIHNjaGVtYXMpIHsKICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgIGlmICghcmVnZXggfHwgcmVnZXgudGVzdChrZXlSZWYpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgZGVsZXRlIHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2ggJiYgIXNjaC5tZXRhKSB7CiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICAgIGRlbGV0ZSBzY2hlbWFzW2tleVJlZl07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX2FkZFNjaGVtYShzY2hlbWEyLCBtZXRhLCBiYXNlSWQsIHZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hLCBhZGRTY2hlbWEgPSB0aGlzLm9wdHMuYWRkVXNlZFNjaGVtYSkgewogICAgICAgIGxldCBpZDsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiKSB7CiAgICAgICAgICBpZCA9IHNjaGVtYTJbc2NoZW1hSWRdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLmp0ZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3QiKTsKICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyICE9ICJib29sZWFuIikKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3Qgb3IgYm9vbGVhbiIpOwogICAgICAgIH0KICAgICAgICBsZXQgc2NoID0gdGhpcy5fY2FjaGUuZ2V0KHNjaGVtYTIpOwogICAgICAgIGlmIChzY2ggIT09IHZvaWQgMCkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoaWQgfHwgYmFzZUlkKTsKICAgICAgICBjb25zdCBsb2NhbFJlZnMgPSByZXNvbHZlXzEuZ2V0U2NoZW1hUmVmcy5jYWxsKHRoaXMsIHNjaGVtYTIsIGJhc2VJZCk7CiAgICAgICAgc2NoID0gbmV3IGNvbXBpbGVfMS5TY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCBtZXRhLCBiYXNlSWQsIGxvY2FsUmVmcyB9KTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoc2NoLnNjaGVtYSwgc2NoKTsKICAgICAgICBpZiAoYWRkU2NoZW1hICYmICFiYXNlSWQuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICBpZiAoYmFzZUlkKQogICAgICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShiYXNlSWQpOwogICAgICAgICAgdGhpcy5yZWZzW2Jhc2VJZF0gPSBzY2g7CiAgICAgICAgfQogICAgICAgIGlmICh2YWxpZGF0ZVNjaGVtYSkKICAgICAgICAgIHRoaXMudmFsaWRhdGVTY2hlbWEoc2NoZW1hMiwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfQogICAgICBfY2hlY2tVbmlxdWUoaWQpIHsKICAgICAgICBpZiAodGhpcy5zY2hlbWFzW2lkXSB8fCB0aGlzLnJlZnNbaWRdKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSB3aXRoIGtleSBvciBpZCAiJHtpZH0iIGFscmVhZHkgZXhpc3RzYCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9jb21waWxlU2NoZW1hRW52KHNjaCkgewogICAgICAgIGlmIChzY2gubWV0YSkKICAgICAgICAgIHRoaXMuX2NvbXBpbGVNZXRhU2NoZW1hKHNjaCk7CiAgICAgICAgZWxzZQogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIGlmICghc2NoLnZhbGlkYXRlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlOwogICAgICB9CiAgICAgIF9jb21waWxlTWV0YVNjaGVtYShzY2gpIHsKICAgICAgICBjb25zdCBjdXJyZW50T3B0cyA9IHRoaXMub3B0czsKICAgICAgICB0aGlzLm9wdHMgPSB0aGlzLl9tZXRhT3B0czsKICAgICAgICB0cnkgewogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLm9wdHMgPSBjdXJyZW50T3B0czsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBBanYuVmFsaWRhdGlvbkVycm9yID0gdmFsaWRhdGlvbl9lcnJvcl8xLmRlZmF1bHQ7CiAgICBBanYuTWlzc2luZ1JlZkVycm9yID0gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBBanY7CiAgICBmdW5jdGlvbiBjaGVja09wdGlvbnMoY2hlY2tPcHRzLCBvcHRpb25zLCBtc2csIGxvZyA9ICJlcnJvciIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gY2hlY2tPcHRzKSB7CiAgICAgICAgY29uc3Qgb3B0ID0ga2V5OwogICAgICAgIGlmIChvcHQgaW4gb3B0aW9ucykKICAgICAgICAgIHRoaXMubG9nZ2VyW2xvZ10oYCR7bXNnfTogb3B0aW9uICR7a2V5fS4gJHtjaGVja09wdHNbb3B0XX1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZ2V0U2NoRW52KGtleVJlZikgewogICAgICBrZXlSZWYgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXlSZWYpOwogICAgICByZXR1cm4gdGhpcy5zY2hlbWFzW2tleVJlZl0gfHwgdGhpcy5yZWZzW2tleVJlZl07CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsU2NoZW1hcygpIHsKICAgICAgY29uc3Qgb3B0c1NjaGVtYXMgPSB0aGlzLm9wdHMuc2NoZW1hczsKICAgICAgaWYgKCFvcHRzU2NoZW1hcykKICAgICAgICByZXR1cm47CiAgICAgIGlmIChBcnJheS5pc0FycmF5KG9wdHNTY2hlbWFzKSkKICAgICAgICB0aGlzLmFkZFNjaGVtYShvcHRzU2NoZW1hcyk7CiAgICAgIGVsc2UKICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBvcHRzU2NoZW1hcykKICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKG9wdHNTY2hlbWFzW2tleV0sIGtleSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsRm9ybWF0cygpIHsKICAgICAgZm9yIChjb25zdCBuYW1lIGluIHRoaXMub3B0cy5mb3JtYXRzKSB7CiAgICAgICAgY29uc3QgZm9ybWF0ID0gdGhpcy5vcHRzLmZvcm1hdHNbbmFtZV07CiAgICAgICAgaWYgKGZvcm1hdCkKICAgICAgICAgIHRoaXMuYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxLZXl3b3JkcyhkZWZzKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRlZnMpKSB7CiAgICAgICAgdGhpcy5hZGRWb2NhYnVsYXJ5KGRlZnMpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLmxvZ2dlci53YXJuKCJrZXl3b3JkcyBvcHRpb24gYXMgbWFwIGlzIGRlcHJlY2F0ZWQsIHBhc3MgYXJyYXkiKTsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIGRlZnMpIHsKICAgICAgICBjb25zdCBkZWYgPSBkZWZzW2tleXdvcmRdOwogICAgICAgIGlmICghZGVmLmtleXdvcmQpCiAgICAgICAgICBkZWYua2V5d29yZCA9IGtleXdvcmQ7CiAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGdldE1ldGFTY2hlbWFPcHRpb25zKCkgewogICAgICBjb25zdCBtZXRhT3B0cyA9IHsgLi4udGhpcy5vcHRzIH07CiAgICAgIGZvciAoY29uc3Qgb3B0IG9mIE1FVEFfSUdOT1JFX09QVElPTlMpCiAgICAgICAgZGVsZXRlIG1ldGFPcHRzW29wdF07CiAgICAgIHJldHVybiBtZXRhT3B0czsKICAgIH0KICAgIHZhciBub0xvZ3MgPSB7IGxvZygpIHsKICAgIH0sIHdhcm4oKSB7CiAgICB9LCBlcnJvcigpIHsKICAgIH0gfTsKICAgIGZ1bmN0aW9uIGdldExvZ2dlcihsb2dnZXIpIHsKICAgICAgaWYgKGxvZ2dlciA9PT0gZmFsc2UpCiAgICAgICAgcmV0dXJuIG5vTG9nczsKICAgICAgaWYgKGxvZ2dlciA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybiBjb25zb2xlOwogICAgICBpZiAobG9nZ2VyLmxvZyAmJiBsb2dnZXIud2FybiAmJiBsb2dnZXIuZXJyb3IpCiAgICAgICAgcmV0dXJuIGxvZ2dlcjsKICAgICAgdGhyb3cgbmV3IEVycm9yKCJsb2dnZXIgbXVzdCBpbXBsZW1lbnQgbG9nLCB3YXJuIGFuZCBlcnJvciBtZXRob2RzIik7CiAgICB9CiAgICB2YXIgS0VZV09SRF9OQU1FID0gL15bYS16XyRdW2EtejAtOV8kOi1dKiQvaTsKICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZChrZXl3b3JkLCBkZWYpIHsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgKDAsIHV0aWxfMS5lYWNoSXRlbSkoa2V5d29yZCwgKGt3ZCkgPT4gewogICAgICAgIGlmIChSVUxFUy5rZXl3b3Jkc1trd2RdKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXl3b3JkICR7a3dkfSBpcyBhbHJlYWR5IGRlZmluZWRgKTsKICAgICAgICBpZiAoIUtFWVdPUkRfTkFNRS50ZXN0KGt3ZCkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEtleXdvcmQgJHtrd2R9IGhhcyBpbnZhbGlkIG5hbWVgKTsKICAgICAgfSk7CiAgICAgIGlmICghZGVmKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiAhKCJjb2RlIiBpbiBkZWYgfHwgInZhbGlkYXRlIiBpbiBkZWYpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCckZGF0YSBrZXl3b3JkIG11c3QgaGF2ZSAiY29kZSIgb3IgInZhbGlkYXRlIiBmdW5jdGlvbicpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhZGRSdWxlKGtleXdvcmQsIGRlZmluaXRpb24sIGRhdGFUeXBlKSB7CiAgICAgIHZhciBfYTsKICAgICAgY29uc3QgcG9zdCA9IGRlZmluaXRpb24gPT09IG51bGwgfHwgZGVmaW5pdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVmaW5pdGlvbi5wb3N0OwogICAgICBpZiAoZGF0YVR5cGUgJiYgcG9zdCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2tleXdvcmQgd2l0aCAicG9zdCIgZmxhZyBjYW5ub3QgaGF2ZSAidHlwZSInKTsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgbGV0IHJ1bGVHcm91cCA9IHBvc3QgPyBSVUxFUy5wb3N0IDogUlVMRVMucnVsZXMuZmluZCgoeyB0eXBlOiB0IH0pID0+IHQgPT09IGRhdGFUeXBlKTsKICAgICAgaWYgKCFydWxlR3JvdXApIHsKICAgICAgICBydWxlR3JvdXAgPSB7IHR5cGU6IGRhdGFUeXBlLCBydWxlczogW10gfTsKICAgICAgICBSVUxFUy5ydWxlcy5wdXNoKHJ1bGVHcm91cCk7CiAgICAgIH0KICAgICAgUlVMRVMua2V5d29yZHNba2V5d29yZF0gPSB0cnVlOwogICAgICBpZiAoIWRlZmluaXRpb24pCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBydWxlID0gewogICAgICAgIGtleXdvcmQsCiAgICAgICAgZGVmaW5pdGlvbjogewogICAgICAgICAgLi4uZGVmaW5pdGlvbiwKICAgICAgICAgIHR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi5zY2hlbWFUeXBlKQogICAgICAgIH0KICAgICAgfTsKICAgICAgaWYgKGRlZmluaXRpb24uYmVmb3JlKQogICAgICAgIGFkZEJlZm9yZVJ1bGUuY2FsbCh0aGlzLCBydWxlR3JvdXAsIHJ1bGUsIGRlZmluaXRpb24uYmVmb3JlKTsKICAgICAgZWxzZQogICAgICAgIHJ1bGVHcm91cC5ydWxlcy5wdXNoKHJ1bGUpOwogICAgICBSVUxFUy5hbGxba2V5d29yZF0gPSBydWxlOwogICAgICAoX2EgPSBkZWZpbml0aW9uLmltcGxlbWVudHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb3JFYWNoKChrd2QpID0+IHRoaXMuYWRkS2V5d29yZChrd2QpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEJlZm9yZVJ1bGUocnVsZUdyb3VwLCBydWxlLCBiZWZvcmUpIHsKICAgICAgY29uc3QgaSA9IHJ1bGVHcm91cC5ydWxlcy5maW5kSW5kZXgoKF9ydWxlKSA9PiBfcnVsZS5rZXl3b3JkID09PSBiZWZvcmUpOwogICAgICBpZiAoaSA+PSAwKSB7CiAgICAgICAgcnVsZUdyb3VwLnJ1bGVzLnNwbGljZShpLCAwLCBydWxlKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBydWxlR3JvdXAucnVsZXMucHVzaChydWxlKTsKICAgICAgICB0aGlzLmxvZ2dlci53YXJuKGBydWxlICR7YmVmb3JlfSBpcyBub3QgZGVmaW5lZGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBrZXl3b3JkTWV0YXNjaGVtYShkZWYpIHsKICAgICAgbGV0IHsgbWV0YVNjaGVtYSB9ID0gZGVmOwogICAgICBpZiAobWV0YVNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiB0aGlzLm9wdHMuJGRhdGEpCiAgICAgICAgbWV0YVNjaGVtYSA9IHNjaGVtYU9yRGF0YShtZXRhU2NoZW1hKTsKICAgICAgZGVmLnZhbGlkYXRlU2NoZW1hID0gdGhpcy5jb21waWxlKG1ldGFTY2hlbWEsIHRydWUpOwogICAgfQogICAgdmFyICRkYXRhUmVmID0gewogICAgICAkcmVmOiAiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Fqdi12YWxpZGF0b3IvYWp2L21hc3Rlci9saWIvcmVmcy9kYXRhLmpzb24jIgogICAgfTsKICAgIGZ1bmN0aW9uIHNjaGVtYU9yRGF0YShzY2hlbWEyKSB7CiAgICAgIHJldHVybiB7IGFueU9mOiBbc2NoZW1hMiwgJGRhdGFSZWZdIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pZC5qcwp2YXIgcmVxdWlyZV9pZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvaWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZCIsCiAgICAgIGNvZGUoKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOT1QgU1VQUE9SVEVEOiBrZXl3b3JkICJpZCIsIHVzZSAiJGlkIiBmb3Igc2NoZW1hIElEJyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzCnZhciByZXF1aXJlX3JlZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYWxsUmVmID0gZXhwb3J0czIuZ2V0VmFsaWRhdGUgPSB2b2lkIDA7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIiRyZWYiLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiAkcmVmLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgYmFzZUlkLCBzY2hlbWFFbnY6IGVudiwgdmFsaWRhdGVOYW1lLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgY29uc3QgeyByb290IH0gPSBlbnY7CiAgICAgICAgaWYgKCgkcmVmID09PSAiIyIgfHwgJHJlZiA9PT0gIiMvIikgJiYgYmFzZUlkID09PSByb290LmJhc2VJZCkKICAgICAgICAgIHJldHVybiBjYWxsUm9vdFJlZigpOwogICAgICAgIGNvbnN0IHNjaE9yRW52ID0gY29tcGlsZV8xLnJlc29sdmVSZWYuY2FsbChzZWxmMiwgcm9vdCwgYmFzZUlkLCAkcmVmKTsKICAgICAgICBpZiAoc2NoT3JFbnYgPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyByZWZfZXJyb3JfMS5kZWZhdWx0KGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgJHJlZik7CiAgICAgICAgaWYgKHNjaE9yRW52IGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgIHJldHVybiBjYWxsVmFsaWRhdGUoc2NoT3JFbnYpOwogICAgICAgIHJldHVybiBpbmxpbmVSZWZTY2hlbWEoc2NoT3JFbnYpOwogICAgICAgIGZ1bmN0aW9uIGNhbGxSb290UmVmKCkgewogICAgICAgICAgaWYgKGVudiA9PT0gcm9vdCkKICAgICAgICAgICAgcmV0dXJuIGNhbGxSZWYoY3h0LCB2YWxpZGF0ZU5hbWUsIGVudiwgZW52LiRhc3luYyk7CiAgICAgICAgICBjb25zdCByb290TmFtZSA9IGdlbi5zY29wZVZhbHVlKCJyb290IiwgeyByZWY6IHJvb3QgfSk7CiAgICAgICAgICByZXR1cm4gY2FsbFJlZihjeHQsICgwLCBjb2RlZ2VuXzEuXylgJHtyb290TmFtZX0udmFsaWRhdGVgLCByb290LCByb290LiRhc3luYyk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZShzY2gpIHsKICAgICAgICAgIGNvbnN0IHYgPSBnZXRWYWxpZGF0ZShjeHQsIHNjaCk7CiAgICAgICAgICBjYWxsUmVmKGN4dCwgdiwgc2NoLCBzY2guJGFzeW5jKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaW5saW5lUmVmU2NoZW1hKHNjaCkgewogICAgICAgICAgY29uc3Qgc2NoTmFtZSA9IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCBvcHRzLmNvZGUuc291cmNlID09PSB0cnVlID8geyByZWY6IHNjaCwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaCkgfSA6IHsgcmVmOiBzY2ggfSk7CiAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgICBkYXRhVHlwZXM6IFtdLAogICAgICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaE5hbWUsCiAgICAgICAgICAgIGVyclNjaGVtYVBhdGg6ICRyZWYKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQpOwogICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBnZXRWYWxpZGF0ZShjeHQsIHNjaCkgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gZ2VuLnNjb3BlVmFsdWUoInZhbGlkYXRlIiwgeyByZWY6IHNjaC52YWxpZGF0ZSB9KSA6ICgwLCBjb2RlZ2VuXzEuXylgJHtnZW4uc2NvcGVWYWx1ZSgid3JhcHBlciIsIHsgcmVmOiBzY2ggfSl9LnZhbGlkYXRlYDsKICAgIH0KICAgIGV4cG9ydHMyLmdldFZhbGlkYXRlID0gZ2V0VmFsaWRhdGU7CiAgICBmdW5jdGlvbiBjYWxsUmVmKGN4dCwgdiwgc2NoLCAkYXN5bmMpIHsKICAgICAgY29uc3QgeyBnZW4sIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBzY2hlbWFFbnY6IGVudiwgb3B0cyB9ID0gaXQ7CiAgICAgIGNvbnN0IHBhc3NDeHQgPSBvcHRzLnBhc3NDb250ZXh0ID8gbmFtZXNfMS5kZWZhdWx0LnRoaXMgOiBjb2RlZ2VuXzEubmlsOwogICAgICBpZiAoJGFzeW5jKQogICAgICAgIGNhbGxBc3luY1JlZigpOwogICAgICBlbHNlCiAgICAgICAgY2FsbFN5bmNSZWYoKTsKICAgICAgZnVuY3Rpb24gY2FsbEFzeW5jUmVmKCkgewogICAgICAgIGlmICghZW52LiRhc3luYykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgc2NoZW1hIHJlZmVyZW5jZWQgYnkgc3luYyBzY2hlbWEiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIik7CiAgICAgICAgZ2VuLnRyeSgoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpfWApOwogICAgICAgICAgYWRkRXZhbHVhdGVkRnJvbSh2KTsKICAgICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICB9LCAoZSkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgISgke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KWAsICgpID0+IGdlbi50aHJvdyhlKSk7CiAgICAgICAgICBhZGRFcnJvcnNGcm9tKGUpOwogICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKTsKICAgICAgICB9KTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbGxTeW5jUmVmKCkgewogICAgICAgIGN4dC5yZXN1bHQoKDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpLCAoKSA9PiBhZGRFdmFsdWF0ZWRGcm9tKHYpLCAoKSA9PiBhZGRFcnJvcnNGcm9tKHYpKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhZGRFcnJvcnNGcm9tKHNvdXJjZSkgewogICAgICAgIGNvbnN0IGVycnMgPSAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCk7CiAgICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFkZEV2YWx1YXRlZEZyb20oc291cmNlKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmICghaXQub3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBzY2hFdmFsdWF0ZWQgPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gudmFsaWRhdGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ldmFsdWF0ZWQ7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY1Byb3BzKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgc2NoRXZhbHVhdGVkLnByb3BzLCBpdC5wcm9wcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQucHJvcHNgKTsKICAgICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBwcm9wcywgaXQucHJvcHMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGl0Lml0ZW1zICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY0l0ZW1zKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQuaXRlbXMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoRXZhbHVhdGVkLml0ZW1zLCBpdC5pdGVtcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZ2VuLnZhcigiaXRlbXMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQuaXRlbXNgKTsKICAgICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBpdGVtcywgaXQuaXRlbXMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNhbGxSZWYgPSBjYWxsUmVmOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2luZGV4LmpzCnZhciByZXF1aXJlX2NvcmUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGlkXzEgPSByZXF1aXJlX2lkKCk7CiAgICB2YXIgcmVmXzEgPSByZXF1aXJlX3JlZigpOwogICAgdmFyIGNvcmUyID0gWwogICAgICAiJHNjaGVtYSIsCiAgICAgICIkaWQiLAogICAgICAiJGRlZnMiLAogICAgICAiJHZvY2FidWxhcnkiLAogICAgICB7IGtleXdvcmQ6ICIkY29tbWVudCIgfSwKICAgICAgImRlZmluaXRpb25zIiwKICAgICAgaWRfMS5kZWZhdWx0LAogICAgICByZWZfMS5kZWZhdWx0CiAgICBdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGNvcmUyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXROdW1iZXIuanMKdmFyIHJlcXVpcmVfbGltaXROdW1iZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TnVtYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgb3BzID0gY29kZWdlbl8xLm9wZXJhdG9yczsKICAgIHZhciBLV0RzID0gewogICAgICBtYXhpbXVtOiB7IG9rU3RyOiAiPD0iLCBvazogb3BzLkxURSwgZmFpbDogb3BzLkdUIH0sCiAgICAgIG1pbmltdW06IHsgb2tTdHI6ICI+PSIsIG9rOiBvcHMuR1RFLCBmYWlsOiBvcHMuTFQgfSwKICAgICAgZXhjbHVzaXZlTWF4aW11bTogeyBva1N0cjogIjwiLCBvazogb3BzLkxULCBmYWlsOiBvcHMuR1RFIH0sCiAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsgb2tTdHI6ICI+Iiwgb2s6IG9wcy5HVCwgZmFpbDogb3BzLkxURSB9CiAgICB9OwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGJlICR7S1dEc1trZXl3b3JkXS5va1N0cn0gJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtjb21wYXJpc29uOiAke0tXRHNba2V5d29yZF0ub2tTdHJ9LCBsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ICR7S1dEc1trZXl3b3JkXS5mYWlsfSAke3NjaGVtYUNvZGV9IHx8IGlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbXVsdGlwbGVPZi5qcwp2YXIgcmVxdWlyZV9tdWx0aXBsZU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9tdWx0aXBsZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgYmUgbXVsdGlwbGUgb2YgJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHttdWx0aXBsZU9mOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibXVsdGlwbGVPZiIsCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHByZWMgPSBpdC5vcHRzLm11bHRpcGxlT2ZQcmVjaXNpb247CiAgICAgICAgY29uc3QgcmVzID0gZ2VuLmxldCgicmVzIik7CiAgICAgICAgY29uc3QgaW52YWxpZCA9IHByZWMgPyAoMCwgY29kZWdlbl8xLl8pYE1hdGguYWJzKE1hdGgucm91bmQoJHtyZXN9KSAtICR7cmVzfSkgPiAxZS0ke3ByZWN9YCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtyZXN9ICE9PSBwYXJzZUludCgke3Jlc30pYDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgKCR7c2NoZW1hQ29kZX0gPT09IDAgfHwgKCR7cmVzfSA9ICR7ZGF0YX0vJHtzY2hlbWFDb2RlfSwgJHtpbnZhbGlkfSkpYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoLmpzCnZhciByZXF1aXJlX3VjczJsZW5ndGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdWNzMmxlbmd0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZnVuY3Rpb24gdWNzMmxlbmd0aChzdHIyKSB7CiAgICAgIGNvbnN0IGxlbiA9IHN0cjIubGVuZ3RoOwogICAgICBsZXQgbGVuZ3RoID0gMDsKICAgICAgbGV0IHBvcyA9IDA7CiAgICAgIGxldCB2YWx1ZTsKICAgICAgd2hpbGUgKHBvcyA8IGxlbikgewogICAgICAgIGxlbmd0aCsrOwogICAgICAgIHZhbHVlID0gc3RyMi5jaGFyQ29kZUF0KHBvcysrKTsKICAgICAgICBpZiAodmFsdWUgPj0gNTUyOTYgJiYgdmFsdWUgPD0gNTYzMTkgJiYgcG9zIDwgbGVuKSB7CiAgICAgICAgICB2YWx1ZSA9IHN0cjIuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKCh2YWx1ZSAmIDY0NTEyKSA9PT0gNTYzMjApCiAgICAgICAgICAgIHBvcysrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbGVuZ3RoOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVjczJsZW5ndGg7CiAgICB1Y3MybGVuZ3RoLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoIikuZGVmYXVsdCc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdExlbmd0aC5qcwp2YXIgcmVxdWlyZV9saW1pdExlbmd0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRMZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB1Y3MybGVuZ3RoXzEgPSByZXF1aXJlX3VjczJsZW5ndGgoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IGNoYXJhY3RlcnNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4TGVuZ3RoIiwgIm1pbkxlbmd0aCJdLAogICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuR1QgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLkxUOwogICAgICAgIGNvbnN0IGxlbiA9IGl0Lm9wdHMudW5pY29kZSA9PT0gZmFsc2UgPyAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgdXRpbF8xLnVzZUZ1bmMpKGN4dC5nZW4sIHVjczJsZW5ndGhfMS5kZWZhdWx0KX0oJHtkYXRhfSlgOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBtYXRjaCBwYXR0ZXJuICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwYXR0ZXJuOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicGF0dGVybiIsCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB1ID0gaXQub3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgICAgY29uc3QgcmVnRXhwID0gJGRhdGEgPyAoMCwgY29kZWdlbl8xLl8pYChuZXcgUmVnRXhwKCR7c2NoZW1hQ29kZX0sICR7dX0pKWAgOiAoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgc2NoZW1hMik7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEke3JlZ0V4cH0udGVzdCgke2RhdGF9KWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9saW1pdFByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSB7CiAgICAgICAgY29uc3QgY29tcCA9IGtleXdvcmQgPT09ICJtYXhQcm9wZXJ0aWVzIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IHByb3BlcnRpZXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4UHJvcGVydGllcyIsICJtaW5Qcm9wZXJ0aWVzIl0sCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGNvbnN0IG9wID0ga2V5d29yZCA9PT0gIm1heFByb3BlcnRpZXMiID8gY29kZWdlbl8xLm9wZXJhdG9ycy5HVCA6IGNvZGVnZW5fMS5vcGVyYXRvcnMuTFQ7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5rZXlzKCR7ZGF0YX0pLmxlbmd0aCAke29wfSAke3NjaGVtYUNvZGV9YCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcmVxdWlyZWQuanMKdmFyIHJlcXVpcmVfcmVxdWlyZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3JlcXVpcmVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgaGF2ZSByZXF1aXJlZCBwcm9wZXJ0eSAnJHttaXNzaW5nUHJvcGVydHl9J2AsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge21pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicmVxdWlyZWQiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGRhdGEsICRkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cyB9ID0gaXQ7CiAgICAgICAgaWYgKCEkZGF0YSAmJiBzY2hlbWEyLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gb3B0cy5sb29wUmVxdWlyZWQ7CiAgICAgICAgaWYgKGl0LmFsbEVycm9ycykKICAgICAgICAgIGFsbEVycm9yc01vZGUoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBleGl0T25FcnJvck1vZGUoKTsKICAgICAgICBpZiAob3B0cy5zdHJpY3RSZXF1aXJlZCkgewogICAgICAgICAgY29uc3QgcHJvcHMgPSBjeHQucGFyZW50U2NoZW1hLnByb3BlcnRpZXM7CiAgICAgICAgICBjb25zdCB7IGRlZmluZWRQcm9wZXJ0aWVzIH0gPSBjeHQuaXQ7CiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkS2V5IG9mIHNjaGVtYTIpIHsKICAgICAgICAgICAgaWYgKChwcm9wcyA9PT0gbnVsbCB8fCBwcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJvcHNbcmVxdWlyZWRLZXldKSA9PT0gdm9pZCAwICYmICFkZWZpbmVkUHJvcGVydGllcy5oYXMocmVxdWlyZWRLZXkpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2NoZW1hUGF0aCA9IGl0LnNjaGVtYUVudi5iYXNlSWQgKyBpdC5lcnJTY2hlbWFQYXRoOwogICAgICAgICAgICAgIGNvbnN0IG1zZyA9IGByZXF1aXJlZCBwcm9wZXJ0eSAiJHtyZXF1aXJlZEtleX0iIGlzIG5vdCBkZWZpbmVkIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0UmVxdWlyZWQpYDsKICAgICAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgaXQub3B0cy5zdHJpY3RSZXF1aXJlZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWxsRXJyb3JzTW9kZSgpIHsKICAgICAgICAgIGlmICh1c2VMb29wIHx8ICRkYXRhKSB7CiAgICAgICAgICAgIGN4dC5ibG9jayRkYXRhKGNvZGVnZW5fMS5uaWwsIGxvb3BBbGxSZXF1aXJlZCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2Ygc2NoZW1hMikgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBleGl0T25FcnJvck1vZGUoKSB7CiAgICAgICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICAgICAgaWYgKHVzZUxvb3AgfHwgJGRhdGEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIHRydWUpOwogICAgICAgICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgKCkgPT4gbG9vcFVudGlsTWlzc2luZyhtaXNzaW5nLCB2YWxpZCkpOwogICAgICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBzY2hlbWEyLCBtaXNzaW5nKSk7CiAgICAgICAgICAgICgwLCBjb2RlXzEucmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgbWlzc2luZyk7CiAgICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BBbGxSZXF1aXJlZCgpIHsKICAgICAgICAgIGdlbi5mb3JPZigicHJvcCIsIHNjaGVtYUNvZGUsIChwcm9wKSA9PiB7CiAgICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IHByb3AgfSk7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLm5vUHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BVbnRpbE1pc3NpbmcobWlzc2luZywgdmFsaWQpIHsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IG1pc3NpbmcgfSk7CiAgICAgICAgICBnZW4uZm9yT2YobWlzc2luZywgc2NoZW1hQ29kZSwgKCkgPT4gewogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIG1pc3NpbmcsIG9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIGNvZGVnZW5fMS5uaWwpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdEl0ZW1zLmpzCnZhciByZXF1aXJlX2xpbWl0SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0SXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4SXRlbXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gaXRlbXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4SXRlbXMiLCAibWluSXRlbXMiXSwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUgfSA9IGN4dDsKICAgICAgICBjb25zdCBvcCA9IGtleXdvcmQgPT09ICJtYXhJdGVtcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMKdmFyIHJlcXVpcmVfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICBlcXVhbC5jb2RlID0gJ3JlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvZXF1YWwiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBlcXVhbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3VuaXF1ZUl0ZW1zLmpzCnZhciByZXF1aXJlX3VuaXF1ZUl0ZW1zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi91bmlxdWVJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGksIGogfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBkdXBsaWNhdGUgaXRlbXMgKGl0ZW1zICMjICR7an0gYW5kICR7aX0gYXJlIGlkZW50aWNhbClgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBpLCBqIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7aTogJHtpfSwgajogJHtqfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInVuaXF1ZUl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogImJvb2xlYW4iLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmICFzY2hlbWEyKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgICBjb25zdCBpdGVtVHlwZXMgPSBwYXJlbnRTY2hlbWEuaXRlbXMgPyAoMCwgZGF0YVR5cGVfMS5nZXRTY2hlbWFUeXBlcykocGFyZW50U2NoZW1hLml0ZW1zKSA6IFtdOwogICAgICAgIGN4dC5ibG9jayRkYXRhKHZhbGlkLCB2YWxpZGF0ZVVuaXF1ZUl0ZW1zLCAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gPT09IGZhbHNlYCk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaXF1ZUl0ZW1zKCkgewogICAgICAgICAgY29uc3QgaSA9IGdlbi5sZXQoImkiLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgICBjb25zdCBqID0gZ2VuLmxldCgiaiIpOwogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGksIGogfSk7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aX0gPiAxYCwgKCkgPT4gKGNhbk9wdGltaXplKCkgPyBsb29wTiA6IGxvb3BOMikoaSwgaikpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjYW5PcHRpbWl6ZSgpIHsKICAgICAgICAgIHJldHVybiBpdGVtVHlwZXMubGVuZ3RoID4gMCAmJiAhaXRlbVR5cGVzLnNvbWUoKHQpID0+IHQgPT09ICJvYmplY3QiIHx8IHQgPT09ICJhcnJheSIpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wTihpLCBqKSB7CiAgICAgICAgICBjb25zdCBpdGVtID0gZ2VuLm5hbWUoIml0ZW0iKTsKICAgICAgICAgIGNvbnN0IHdyb25nVHlwZSA9ICgwLCBkYXRhVHlwZV8xLmNoZWNrRGF0YVR5cGVzKShpdGVtVHlwZXMsIGl0ZW0sIGl0Lm9wdHMuc3RyaWN0TnVtYmVycywgZGF0YVR5cGVfMS5EYXRhVHlwZS5Xcm9uZyk7CiAgICAgICAgICBjb25zdCBpbmRpY2VzID0gZ2VuLmNvbnN0KCJpbmRpY2VzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICAgICAgZ2VuLmZvcigoMCwgY29kZWdlbl8xLl8pYDske2l9LS07YCwgKCkgPT4gewogICAgICAgICAgICBnZW4ubGV0KGl0ZW0sICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfVske2l9XWApOwogICAgICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoMCwgY29kZWdlbl8xLl8pYGNvbnRpbnVlYCk7CiAgICAgICAgICAgIGlmIChpdGVtVHlwZXMubGVuZ3RoID4gMSkKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtpdGVtfSA9PSAic3RyaW5nImAsICgwLCBjb2RlZ2VuXzEuXylgJHtpdGVtfSArPSAiXyJgKTsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7aW5kaWNlc31bJHtpdGVtfV0gPT0gIm51bWJlciJgLCAoKSA9PiB7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbihqLCAoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV1gKTsKICAgICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKTsKICAgICAgICAgICAgfSkuY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV0gPSAke2l9YCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbG9vcE4yKGksIGopIHsKICAgICAgICAgIGNvbnN0IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgICAgY29uc3Qgb3V0ZXIgPSBnZW4ubmFtZSgib3V0ZXIiKTsKICAgICAgICAgIGdlbi5sYWJlbChvdXRlcikuZm9yKCgwLCBjb2RlZ2VuXzEuXylgOyR7aX0tLTtgLCAoKSA9PiBnZW4uZm9yKCgwLCBjb2RlZ2VuXzEuXylgJHtqfSA9ICR7aX07ICR7an0tLTtgLCAoKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2VxbH0oJHtkYXRhfVske2l9XSwgJHtkYXRhfVske2p9XSlgLCAoKSA9PiB7CiAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsob3V0ZXIpOwogICAgICAgICAgfSkpKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vY29uc3QuanMKdmFyIHJlcXVpcmVfY29uc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2NvbnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gY29uc3RhbnQiLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWxsb3dlZFZhbHVlOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiY29uc3QiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWFDb2RlLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGN4dDsKICAgICAgICBpZiAoJGRhdGEgfHwgc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IikgewogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEkeygwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpfSgke2RhdGF9LCAke3NjaGVtYUNvZGV9KWApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjeHQuZmFpbCgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hMn0gIT09ICR7ZGF0YX1gKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vZW51bS5qcwp2YXIgcmVxdWlyZV9lbnVtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9lbnVtLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gb25lIG9mIHRoZSBhbGxvd2VkIHZhbHVlcyIsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHthbGxvd2VkVmFsdWVzOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZW51bSIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmIHNjaGVtYTIubGVuZ3RoID09PSAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJlbnVtIG11c3QgaGF2ZSBub24tZW1wdHkgYXJyYXkiKTsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gaXQub3B0cy5sb29wRW51bTsKICAgICAgICBsZXQgZXFsOwogICAgICAgIGNvbnN0IGdldEVxbCA9ICgpID0+IGVxbCAhPT0gbnVsbCAmJiBlcWwgIT09IHZvaWQgMCA/IGVxbCA6IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgIGxldCB2YWxpZDsKICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIGxvb3BFbnVtKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgY29uc3QgdlNjaGVtYSA9IGdlbi5jb25zdCgidlNjaGVtYSIsIHNjaGVtYUNvZGUpOwogICAgICAgICAgdmFsaWQgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5zY2hlbWEyLm1hcCgoX3gsIGkpID0+IGVxdWFsQ29kZSh2U2NoZW1hLCBpKSkpOwogICAgICAgIH0KICAgICAgICBjeHQucGFzcyh2YWxpZCk7CiAgICAgICAgZnVuY3Rpb24gbG9vcEVudW0oKSB7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICBnZW4uZm9yT2YoInYiLCBzY2hlbWFDb2RlLCAodikgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2fSlgLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKS5icmVhaygpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGVxdWFsQ29kZSh2U2NoZW1hLCBpKSB7CiAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2ldOwogICAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2ggPT09ICJvYmplY3QiICYmIHNjaCAhPT0gbnVsbCA/ICgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2U2NoZW1hfVske2l9XSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSAke3NjaH1gOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGxpbWl0TnVtYmVyXzEgPSByZXF1aXJlX2xpbWl0TnVtYmVyKCk7CiAgICB2YXIgbXVsdGlwbGVPZl8xID0gcmVxdWlyZV9tdWx0aXBsZU9mKCk7CiAgICB2YXIgbGltaXRMZW5ndGhfMSA9IHJlcXVpcmVfbGltaXRMZW5ndGgoKTsKICAgIHZhciBwYXR0ZXJuXzEgPSByZXF1aXJlX3BhdHRlcm4oKTsKICAgIHZhciBsaW1pdFByb3BlcnRpZXNfMSA9IHJlcXVpcmVfbGltaXRQcm9wZXJ0aWVzKCk7CiAgICB2YXIgcmVxdWlyZWRfMSA9IHJlcXVpcmVfcmVxdWlyZWQoKTsKICAgIHZhciBsaW1pdEl0ZW1zXzEgPSByZXF1aXJlX2xpbWl0SXRlbXMoKTsKICAgIHZhciB1bmlxdWVJdGVtc18xID0gcmVxdWlyZV91bmlxdWVJdGVtcygpOwogICAgdmFyIGNvbnN0XzEgPSByZXF1aXJlX2NvbnN0KCk7CiAgICB2YXIgZW51bV8xID0gcmVxdWlyZV9lbnVtKCk7CiAgICB2YXIgdmFsaWRhdGlvbiA9IFsKICAgICAgLy8gbnVtYmVyCiAgICAgIGxpbWl0TnVtYmVyXzEuZGVmYXVsdCwKICAgICAgbXVsdGlwbGVPZl8xLmRlZmF1bHQsCiAgICAgIC8vIHN0cmluZwogICAgICBsaW1pdExlbmd0aF8xLmRlZmF1bHQsCiAgICAgIHBhdHRlcm5fMS5kZWZhdWx0LAogICAgICAvLyBvYmplY3QKICAgICAgbGltaXRQcm9wZXJ0aWVzXzEuZGVmYXVsdCwKICAgICAgcmVxdWlyZWRfMS5kZWZhdWx0LAogICAgICAvLyBhcnJheQogICAgICBsaW1pdEl0ZW1zXzEuZGVmYXVsdCwKICAgICAgdW5pcXVlSXRlbXNfMS5kZWZhdWx0LAogICAgICAvLyBhbnkKICAgICAgeyBrZXl3b3JkOiAidHlwZSIsIHNjaGVtYVR5cGU6IFsic3RyaW5nIiwgImFycmF5Il0gfSwKICAgICAgeyBrZXl3b3JkOiAibnVsbGFibGUiLCBzY2hlbWFUeXBlOiAiYm9vbGVhbiIgfSwKICAgICAgY29uc3RfMS5kZWZhdWx0LAogICAgICBlbnVtXzEuZGVmYXVsdAogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB2YWxpZGF0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzCnZhciByZXF1aXJlX2FkZGl0aW9uYWxJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlIG1vcmUgdGhhbiAke2xlbn0gaXRlbXNgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtsZW59fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbEl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJib29sZWFuIiwgIm9iamVjdCJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgaXRlbXMgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICciYWRkaXRpb25hbEl0ZW1zIiBpcyBpZ25vcmVkIHdoZW4gIml0ZW1zIiBpcyBub3QgYW4gYXJyYXkgb2Ygc2NoZW1hcycpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyhjeHQsIGl0ZW1zKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKGN4dCwgaXRlbXMpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IGxlbjogaXRlbXMubGVuZ3RoIH0pOwogICAgICAgIGN4dC5wYXNzKCgwLCBjb2RlZ2VuXzEuXylgJHtsZW59IDw9ICR7aXRlbXMubGVuZ3RofWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi52YXIoInZhbGlkIiwgKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPD0gJHtpdGVtcy5sZW5ndGh9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHZhbGlkYXRlSXRlbXModmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXModmFsaWQpIHsKICAgICAgICBnZW4uZm9yUmFuZ2UoImkiLCBpdGVtcy5sZW5ndGgsIGxlbiwgKGkpID0+IHsKICAgICAgICAgIGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkLCBkYXRhUHJvcDogaSwgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5OdW0gfSwgdmFsaWQpOwogICAgICAgICAgaWYgKCFpdC5hbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zID0gdmFsaWRhdGVBZGRpdGlvbmFsSXRlbXM7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaXRlbXMuanMKdmFyIHJlcXVpcmVfaXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVR1cGxlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuIHZhbGlkYXRlVHVwbGUoY3h0LCAiYWRkaXRpb25hbEl0ZW1zIiwgc2NoZW1hMik7CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVR1cGxlKGN4dCwgZXh0cmFJdGVtcywgc2NoQXJyID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjaGVja1N0cmljdFR1cGxlKHBhcmVudFNjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHNjaEFyci5sZW5ndGggJiYgaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIHNjaEFyci5sZW5ndGgsIGl0Lml0ZW1zKTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPiAke2l9YCwgKCkgPT4gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGRhdGFQcm9wOiBpCiAgICAgICAgfSwgdmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RUdXBsZShzY2gpIHsKICAgICAgICBjb25zdCB7IG9wdHMsIGVyclNjaGVtYVBhdGggfSA9IGl0OwogICAgICAgIGNvbnN0IGwgPSBzY2hBcnIubGVuZ3RoOwogICAgICAgIGNvbnN0IGZ1bGxUdXBsZSA9IGwgPT09IHNjaC5taW5JdGVtcyAmJiAobCA9PT0gc2NoLm1heEl0ZW1zIHx8IHNjaFtleHRyYUl0ZW1zXSA9PT0gZmFsc2UpOwogICAgICAgIGlmIChvcHRzLnN0cmljdFR1cGxlcyAmJiAhZnVsbFR1cGxlKSB7CiAgICAgICAgICBjb25zdCBtc2cgPSBgIiR7a2V5d29yZH0iIGlzICR7bH0tdHVwbGUsIGJ1dCBtaW5JdGVtcyBvciBtYXhJdGVtcy8ke2V4dHJhSXRlbXN9IGFyZSBub3Qgc3BlY2lmaWVkIG9yIGRpZmZlcmVudCBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgb3B0cy5zdHJpY3RUdXBsZXMpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVUdXBsZSA9IHZhbGlkYXRlVHVwbGU7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJlZml4SXRlbXMuanMKdmFyIHJlcXVpcmVfcHJlZml4SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3ByZWZpeEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgaXRlbXNfMSA9IHJlcXVpcmVfaXRlbXMoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwcmVmaXhJdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsiYXJyYXkiXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlOiAoY3h0KSA9PiAoMCwgaXRlbXNfMS52YWxpZGF0ZVR1cGxlKShjeHQsICJpdGVtcyIpCiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcwp2YXIgcmVxdWlyZV9pdGVtczIwMjAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBtb3JlIHRoYW4gJHtsZW59IGl0ZW1zYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbGVuIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7bGVufX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIml0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBwcmVmaXhJdGVtcyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChwcmVmaXhJdGVtcykKICAgICAgICAgICgwLCBhZGRpdGlvbmFsSXRlbXNfMS52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcykoY3h0LCBwcmVmaXhJdGVtcyk7CiAgICAgICAgZWxzZQogICAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMKdmFyIHJlcXVpcmVfY29udGFpbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2NvbnRhaW5zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBtaW4sIG1heCB9IH0pID0+IG1heCA9PT0gdm9pZCAwID8gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgY29udGFpbiBhdCBsZWFzdCAke21pbn0gdmFsaWQgaXRlbShzKWAgOiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7bWlufSBhbmQgbm8gbW9yZSB0aGFuICR7bWF4fSB2YWxpZCBpdGVtKHMpYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbWluLCBtYXggfSB9KSA9PiBtYXggPT09IHZvaWQgMCA/ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn19YCA6ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn0sIG1heENvbnRhaW5zOiAke21heH19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJjb250YWlucyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGxldCBtaW47CiAgICAgICAgbGV0IG1heDsKICAgICAgICBjb25zdCB7IG1pbkNvbnRhaW5zLCBtYXhDb250YWlucyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmIChpdC5vcHRzLm5leHQpIHsKICAgICAgICAgIG1pbiA9IG1pbkNvbnRhaW5zID09PSB2b2lkIDAgPyAxIDogbWluQ29udGFpbnM7CiAgICAgICAgICBtYXggPSBtYXhDb250YWluczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWluID0gMTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IG1pbiwgbWF4IH0pOwogICAgICAgIGlmIChtYXggPT09IHZvaWQgMCAmJiBtaW4gPT09IDApIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPT0gMCB3aXRob3V0ICJtYXhDb250YWlucyI6ICJjb250YWlucyIga2V5d29yZCBpZ25vcmVkYCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChtYXggIT09IHZvaWQgMCAmJiBtaW4gPiBtYXgpIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPiAibWF4Q29udGFpbnMiIGlzIGFsd2F5cyBpbnZhbGlkYCk7CiAgICAgICAgICBjeHQuZmFpbCgpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICBsZXQgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtsZW59ID49ICR7bWlufWA7CiAgICAgICAgICBpZiAobWF4ICE9PSB2b2lkIDApCiAgICAgICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtsZW59IDw9ICR7bWF4fWA7CiAgICAgICAgICBjeHQucGFzcyhjb25kKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwICYmIG1pbiA9PT0gMSkgewogICAgICAgICAgdmFsaWRhdGVJdGVtcyh2YWxpZCwgKCkgPT4gZ2VuLmlmKHZhbGlkLCAoKSA9PiBnZW4uYnJlYWsoKSkpOwogICAgICAgIH0gZWxzZSBpZiAobWluID09PSAwKSB7CiAgICAgICAgICBnZW4ubGV0KHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGlmIChtYXggIT09IHZvaWQgMCkKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggPiAwYCwgdmFsaWRhdGVJdGVtc1dpdGhDb3VudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5sZXQodmFsaWQsIGZhbHNlKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKTsKICAgICAgICB9CiAgICAgICAgY3h0LnJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKSB7CiAgICAgICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgICAgIGNvbnN0IGNvdW50ID0gZ2VuLmxldCgiY291bnQiLCAwKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXMoc2NoVmFsaWQsICgpID0+IGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gY2hlY2tMaW1pdHMoY291bnQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXMoX3ZhbGlkLCBibG9jaykgewogICAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICBrZXl3b3JkOiAiY29udGFpbnMiLAogICAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICAgIGRhdGFQcm9wVHlwZTogdXRpbF8xLlR5cGUuTnVtLAogICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICAgICAgfSwgX3ZhbGlkKTsKICAgICAgICAgICAgYmxvY2soKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja0xpbWl0cyhjb3VudCkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSsrYCk7CiAgICAgICAgICBpZiAobWF4ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0gPj0gJHttaW59YCwgKCkgPT4gZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSkuYnJlYWsoKSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSA+ICR7bWF4fWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5icmVhaygpKTsKICAgICAgICAgICAgaWYgKG1pbiA9PT0gMSkKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y291bnR9ID49ICR7bWlufWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIHRydWUpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzCnZhciByZXF1aXJlX2RlcGVuZGVuY2llcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVNjaGVtYURlcHMgPSBleHBvcnRzMi52YWxpZGF0ZVByb3BlcnR5RGVwcyA9IGV4cG9ydHMyLmVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIGV4cG9ydHMyLmVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgcHJvcGVydHksIGRlcHNDb3VudCwgZGVwcyB9IH0pID0+IHsKICAgICAgICBjb25zdCBwcm9wZXJ0eV9pZXMgPSBkZXBzQ291bnQgPT09IDEgPyAicHJvcGVydHkiIDogInByb3BlcnRpZXMiOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBoYXZlICR7cHJvcGVydHlfaWVzfSAke2RlcHN9IHdoZW4gcHJvcGVydHkgJHtwcm9wZXJ0eX0gaXMgcHJlc2VudGA7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IHByb3BlcnR5LCBkZXBzQ291bnQsIGRlcHMsIG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Byb3BlcnR5OiAke3Byb3BlcnR5fSwKICAgIG1pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9LAogICAgZGVwc0NvdW50OiAke2RlcHNDb3VudH0sCiAgICBkZXBzOiAke2RlcHN9fWAKICAgICAgLy8gVE9ETyBjaGFuZ2UgdG8gcmVmZXJlbmNlCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImRlcGVuZGVuY2llcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3I6IGV4cG9ydHMyLmVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IFtwcm9wRGVwcywgc2NoRGVwc10gPSBzcGxpdERlcGVuZGVuY2llcyhjeHQpOwogICAgICAgIHZhbGlkYXRlUHJvcGVydHlEZXBzKGN4dCwgcHJvcERlcHMpOwogICAgICAgIHZhbGlkYXRlU2NoZW1hRGVwcyhjeHQsIHNjaERlcHMpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gc3BsaXREZXBlbmRlbmNpZXMoeyBzY2hlbWE6IHNjaGVtYTIgfSkgewogICAgICBjb25zdCBwcm9wZXJ0eURlcHMgPSB7fTsKICAgICAgY29uc3Qgc2NoZW1hRGVwcyA9IHt9OwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIl9fcHJvdG9fXyIpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBkZXBzID0gQXJyYXkuaXNBcnJheShzY2hlbWEyW2tleV0pID8gcHJvcGVydHlEZXBzIDogc2NoZW1hRGVwczsKICAgICAgICBkZXBzW2tleV0gPSBzY2hlbWEyW2tleV07CiAgICAgIH0KICAgICAgcmV0dXJuIFtwcm9wZXJ0eURlcHMsIHNjaGVtYURlcHNdOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0eURlcHMoY3h0LCBwcm9wZXJ0eURlcHMgPSBjeHQuc2NoZW1hKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICBpZiAoT2JqZWN0LmtleXMocHJvcGVydHlEZXBzKS5sZW5ndGggPT09IDApCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICBmb3IgKGNvbnN0IHByb3AgaW4gcHJvcGVydHlEZXBzKSB7CiAgICAgICAgY29uc3QgZGVwcyA9IHByb3BlcnR5RGVwc1twcm9wXTsKICAgICAgICBpZiAoZGVwcy5sZW5ndGggPT09IDApCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBoYXNQcm9wZXJ0eSA9ICgwLCBjb2RlXzEucHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsKICAgICAgICAgIHByb3BlcnR5OiBwcm9wLAogICAgICAgICAgZGVwc0NvdW50OiBkZXBzLmxlbmd0aCwKICAgICAgICAgIGRlcHM6IGRlcHMuam9pbigiLCAiKQogICAgICAgIH0pOwogICAgICAgIGlmIChpdC5hbGxFcnJvcnMpIHsKICAgICAgICAgIGdlbi5pZihoYXNQcm9wZXJ0eSwgKCkgPT4gewogICAgICAgICAgICBmb3IgKGNvbnN0IGRlcFByb3Agb2YgZGVwcykgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBkZXBQcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aGFzUHJvcGVydHl9ICYmICgkeygwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBkZXBzLCBtaXNzaW5nKX0pYCk7CiAgICAgICAgICAoMCwgY29kZV8xLnJlcG9ydE1pc3NpbmdQcm9wKShjeHQsIG1pc3NpbmcpOwogICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlUHJvcGVydHlEZXBzID0gdmFsaWRhdGVQcm9wZXJ0eURlcHM7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVNjaGVtYURlcHMoY3h0LCBzY2hlbWFEZXBzID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgZm9yIChjb25zdCBwcm9wIGluIHNjaGVtYURlcHMpIHsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYURlcHNbcHJvcF0pKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgZ2VuLmlmKAogICAgICAgICAgKDAsIGNvZGVfMS5wcm9wZXJ0eUluRGF0YSkoZ2VuLCBkYXRhLCBwcm9wLCBpdC5vcHRzLm93blByb3BlcnRpZXMpLAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZCwgc2NoZW1hUHJvcDogcHJvcCB9LCB2YWxpZCk7CiAgICAgICAgICAgIGN4dC5tZXJnZVZhbGlkRXZhbHVhdGVkKHNjaEN4dCwgdmFsaWQpOwogICAgICAgICAgfSwKICAgICAgICAgICgpID0+IGdlbi52YXIodmFsaWQsIHRydWUpCiAgICAgICAgICAvLyBUT0RPIHZhcgogICAgICAgICk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVTY2hlbWFEZXBzID0gdmFsaWRhdGVTY2hlbWFEZXBzOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnR5TmFtZXMuanMKdmFyIHJlcXVpcmVfcHJvcGVydHlOYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydHlOYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAicHJvcGVydHkgbmFtZSBtdXN0IGJlIHZhbGlkIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7cHJvcGVydHlOYW1lOiAke3BhcmFtcy5wcm9wZXJ0eU5hbWV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJvcGVydHlOYW1lcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEyKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IHByb3BlcnR5TmFtZToga2V5IH0pOwogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0eU5hbWVzIiwKICAgICAgICAgICAgZGF0YToga2V5LAogICAgICAgICAgICBkYXRhVHlwZXM6IFsic3RyaW5nIl0sCiAgICAgICAgICAgIHByb3BlcnR5TmFtZToga2V5LAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICBjeHQuZXJyb3IodHJ1ZSk7CiAgICAgICAgICAgIGlmICghaXQuYWxsRXJyb3JzKQogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hZGRpdGlvbmFsUHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgTk9UIGhhdmUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWRkaXRpb25hbFByb3BlcnR5OiAke3BhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICB0eXBlOiBbIm9iamVjdCJdLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGFsbG93VW5kZWZpbmVkOiB0cnVlLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFlcnJzQ291bnQpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBvcHRzIH0gPSBpdDsKICAgICAgICBpdC5wcm9wcyA9IHRydWU7CiAgICAgICAgaWYgKG9wdHMucmVtb3ZlQWRkaXRpb25hbCAhPT0gImFsbCIgJiYgKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHByb3BzID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShwYXJlbnRTY2hlbWEucHJvcGVydGllcyk7CiAgICAgICAgY29uc3QgcGF0UHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHBhcmVudFNjaGVtYS5wYXR0ZXJuUHJvcGVydGllcyk7CiAgICAgICAgY2hlY2tBZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgICAgIGN4dC5vaygoMCwgY29kZWdlbl8xLl8pYCR7ZXJyc0NvdW50fSA9PT0gJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfWApOwogICAgICAgIGZ1bmN0aW9uIGNoZWNrQWRkaXRpb25hbFByb3BlcnRpZXMoKSB7CiAgICAgICAgICBnZW4uZm9ySW4oImtleSIsIGRhdGEsIChrZXkpID0+IHsKICAgICAgICAgICAgaWYgKCFwcm9wcy5sZW5ndGggJiYgIXBhdFByb3BzLmxlbmd0aCkKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydHlDb2RlKGtleSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBnZW4uaWYoaXNBZGRpdGlvbmFsKGtleSksICgpID0+IGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaXNBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgbGV0IGRlZmluZWRQcm9wOwogICAgICAgICAgaWYgKHByb3BzLmxlbmd0aCA+IDgpIHsKICAgICAgICAgICAgY29uc3QgcHJvcHNTY2hlbWEgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgcGFyZW50U2NoZW1hLnByb3BlcnRpZXMsICJwcm9wZXJ0aWVzIik7CiAgICAgICAgICAgIGRlZmluZWRQcm9wID0gKDAsIGNvZGVfMS5pc093blByb3BlcnR5KShnZW4sIHByb3BzU2NoZW1hLCBrZXkpOwogICAgICAgICAgfSBlbHNlIGlmIChwcm9wcy5sZW5ndGgpIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5wcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl9ID09PSAke3B9YCkpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSBjb2RlZ2VuXzEubmlsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhdFByb3BzLmxlbmd0aCkgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9ICgwLCBjb2RlZ2VuXzEub3IpKGRlZmluZWRQcm9wLCAuLi5wYXRQcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgcCl9LnRlc3QoJHtrZXl9KWApKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm5vdCkoZGVmaW5lZFByb3ApOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBkZWxldGVBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBkZWxldGUgJHtkYXRhfVske2tleX1dYCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSB7CiAgICAgICAgICBpZiAob3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiYWxsIiB8fCBvcHRzLnJlbW92ZUFkZGl0aW9uYWwgJiYgc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGFkZGl0aW9uYWxQcm9wZXJ0eToga2V5IH0pOwogICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICAgIGlmIChvcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJmYWlsaW5nIikgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHsKICAgICAgICAgICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkKTsKICAgICAgICAgICAgICBpZiAoIWFsbEVycm9ycykKICAgICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlBZGRpdGlvbmFsU2NoZW1hKGtleSwgdmFsaWQsIGVycm9ycykgewogICAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gewogICAgICAgICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLlN0cgogICAgICAgICAgfTsKICAgICAgICAgIGlmIChlcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oc3Vic2NoZW1hLCB7CiAgICAgICAgICAgICAgY29tcG9zaXRlUnVsZTogdHJ1ZSwKICAgICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICAgIGFsbEVycm9yczogZmFsc2UKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHN1YnNjaGVtYSwgdmFsaWQpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInByb3BlcnRpZXMiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogIm9iamVjdCIsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChpdC5vcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJhbGwiICYmIHBhcmVudFNjaGVtYS5hZGRpdGlvbmFsUHJvcGVydGllcyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQuY29kZShuZXcgdmFsaWRhdGVfMS5LZXl3b3JkQ3h0KGl0LCBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQsICJhZGRpdGlvbmFsUHJvcGVydGllcyIpKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgYWxsUHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHNjaGVtYTIpOwogICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBhbGxQcm9wcykgewogICAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMuYWRkKHByb3ApOwogICAgICAgIH0KICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBhbGxQcm9wcy5sZW5ndGggJiYgaXQucHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgKDAsIHV0aWxfMS50b0hhc2gpKGFsbFByb3BzKSwgaXQucHJvcHMpOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYWxsUHJvcHMuZmlsdGVyKChwKSA9PiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTJbcF0pKTsKICAgICAgICBpZiAocHJvcGVydGllcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgcHJvcGVydGllcykgewogICAgICAgICAgaWYgKGhhc0RlZmF1bHQocHJvcCkpIHsKICAgICAgICAgICAgYXBwbHlQcm9wZXJ0eVNjaGVtYShwcm9wKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApOwogICAgICAgICAgICBpZiAoIWl0LmFsbEVycm9ycykKICAgICAgICAgICAgICBnZW4uZWxzZSgpLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGdlbi5lbmRJZigpOwogICAgICAgICAgfQogICAgICAgICAgY3h0Lml0LmRlZmluZWRQcm9wZXJ0aWVzLmFkZChwcm9wKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhc0RlZmF1bHQocHJvcCkgewogICAgICAgICAgcmV0dXJuIGl0Lm9wdHMudXNlRGVmYXVsdHMgJiYgIWl0LmNvbXBvc2l0ZVJ1bGUgJiYgc2NoZW1hMltwcm9wXS5kZWZhdWx0ICE9PSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFwcGx5UHJvcGVydHlTY2hlbWEocHJvcCkgewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0aWVzIiwKICAgICAgICAgICAgc2NoZW1hUHJvcDogcHJvcCwKICAgICAgICAgICAgZGF0YVByb3A6IHByb3AKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcGF0dGVyblByb3BlcnRpZXMuanMKdmFyIHJlcXVpcmVfcGF0dGVyblByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IG9wdHMgfSA9IGl0OwogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShzY2hlbWEyKTsKICAgICAgICBjb25zdCBhbHdheXNWYWxpZFBhdHRlcm5zID0gcGF0dGVybnMuZmlsdGVyKChwKSA9PiAoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMltwXSkpOwogICAgICAgIGlmIChwYXR0ZXJucy5sZW5ndGggPT09IDAgfHwgYWx3YXlzVmFsaWRQYXR0ZXJucy5sZW5ndGggPT09IHBhdHRlcm5zLmxlbmd0aCAmJiAoIWl0Lm9wdHMudW5ldmFsdWF0ZWQgfHwgaXQucHJvcHMgPT09IHRydWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNoZWNrUHJvcGVydGllcyA9IG9wdHMuc3RyaWN0U2NoZW1hICYmICFvcHRzLmFsbG93TWF0Y2hpbmdQcm9wZXJ0aWVzICYmIHBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlICYmICEoaXQucHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSkpIHsKICAgICAgICAgIGl0LnByb3BzID0gKDAsIHV0aWxfMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSkoZ2VuLCBpdC5wcm9wcyk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHsgcHJvcHMgfSA9IGl0OwogICAgICAgIHZhbGlkYXRlUGF0dGVyblByb3BlcnRpZXMoKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVBhdHRlcm5Qcm9wZXJ0aWVzKCkgewogICAgICAgICAgZm9yIChjb25zdCBwYXQgb2YgcGF0dGVybnMpIHsKICAgICAgICAgICAgaWYgKGNoZWNrUHJvcGVydGllcykKICAgICAgICAgICAgICBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpOwogICAgICAgICAgICBpZiAoaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgICAgZ2VuLmlmKHZhbGlkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpIHsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGVja1Byb3BlcnRpZXMpIHsKICAgICAgICAgICAgaWYgKG5ldyBSZWdFeHAocGF0KS50ZXN0KHByb3ApKSB7CiAgICAgICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgcHJvcGVydHkgJHtwcm9wfSBtYXRjaGVzIHBhdHRlcm4gJHtwYXR9ICh1c2UgYWxsb3dNYXRjaGluZ1Byb3BlcnRpZXMpYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCkgewogICAgICAgICAgZ2VuLmZvckluKCJrZXkiLCBkYXRhLCAoa2V5KSA9PiB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7KDAsIGNvZGVfMS51c2VQYXR0ZXJuKShjeHQsIHBhdCl9LnRlc3QoJHtrZXl9KWAsICgpID0+IHsKICAgICAgICAgICAgICBjb25zdCBhbHdheXNWYWxpZCA9IGFsd2F5c1ZhbGlkUGF0dGVybnMuaW5jbHVkZXMocGF0KTsKICAgICAgICAgICAgICBpZiAoIWFsd2F5c1ZhbGlkKSB7CiAgICAgICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgICAgICAgICAgICAgc2NoZW1hUHJvcDogcGF0LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMi5UeXBlLlN0cgogICAgICAgICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBwcm9wcyAhPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cHJvcHN9WyR7a2V5fV1gLCB0cnVlKTsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFhbHdheXNWYWxpZCAmJiAhaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzCnZhciByZXF1aXJlX25vdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICAgIGN4dC5mYWlsKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUsCiAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgYWxsRXJyb3JzOiBmYWxzZQogICAgICAgIH0sIHZhbGlkKTsKICAgICAgICBjeHQuZmFpbFJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCksICgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgfSwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgTk9UIGJlIHZhbGlkIiB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FueU9mLmpzCnZhciByZXF1aXJlX2FueU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hbnlPZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhbnlPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBjb2RlOiBjb2RlXzEudmFsaWRhdGVVbmlvbiwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgbWF0Y2ggYSBzY2hlbWEgaW4gYW55T2YiIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivb25lT2YuanMKdmFyIHJlcXVpcmVfb25lT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJtdXN0IG1hdGNoIGV4YWN0bHkgb25lIHNjaGVtYSBpbiBvbmVPZiIsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Bhc3NpbmdTY2hlbWFzOiAke3BhcmFtcy5wYXNzaW5nfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGlmIChpdC5vcHRzLmRpc2NyaW1pbmF0b3IgJiYgcGFyZW50U2NoZW1hLmRpc2NyaW1pbmF0b3IpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3Qgc2NoQXJyID0gc2NoZW1hMjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICAgIGNvbnN0IHBhc3NpbmcgPSBnZW4ubGV0KCJwYXNzaW5nIiwgbnVsbCk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IHBhc3NpbmcgfSk7CiAgICAgICAgZ2VuLmJsb2NrKHZhbGlkYXRlT25lT2YpOwogICAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IodHJ1ZSkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlT25lT2YoKSB7CiAgICAgICAgICBzY2hBcnIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICAgIGxldCBzY2hDeHQ7CiAgICAgICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkgewogICAgICAgICAgICAgIGdlbi52YXIoc2NoVmFsaWQsIHRydWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7c2NoVmFsaWR9ICYmICR7dmFsaWR9YCkuYXNzaWduKHZhbGlkLCBmYWxzZSkuYXNzaWduKHBhc3NpbmcsICgwLCBjb2RlZ2VuXzEuXylgWyR7cGFzc2luZ30sICR7aX1dYCkuZWxzZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gewogICAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHRydWUpOwogICAgICAgICAgICAgIGdlbi5hc3NpZ24ocGFzc2luZywgaSk7CiAgICAgICAgICAgICAgaWYgKHNjaEN4dCkKICAgICAgICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMKdmFyIHJlcXVpcmVfYWxsT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FsbE9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWxsT2YiLAogICAgICBzY2hlbWFUeXBlOiAiYXJyYXkiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIHNjaGVtYTIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkOiAiYWxsT2YiLCBzY2hlbWFQcm9wOiBpIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9pZi5qcwp2YXIgcmVxdWlyZV9pZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoICIke3BhcmFtcy5pZkNsYXVzZX0iIHNjaGVtYWAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2ZhaWxpbmdLZXl3b3JkOiAke3BhcmFtcy5pZkNsYXVzZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZiIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS50aGVuID09PSB2b2lkIDAgJiYgcGFyZW50U2NoZW1hLmVsc2UgPT09IHZvaWQgMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCAnImlmIiB3aXRob3V0ICJ0aGVuIiBhbmQgImVsc2UiIGlzIGlnbm9yZWQnKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaGFzVGhlbiA9IGhhc1NjaGVtYShpdCwgInRoZW4iKTsKICAgICAgICBjb25zdCBoYXNFbHNlID0gaGFzU2NoZW1hKGl0LCAiZWxzZSIpOwogICAgICAgIGlmICghaGFzVGhlbiAmJiAhaGFzRWxzZSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgdHJ1ZSk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgdmFsaWRhdGVJZigpOwogICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgIGlmIChoYXNUaGVuICYmIGhhc0Vsc2UpIHsKICAgICAgICAgIGNvbnN0IGlmQ2xhdXNlID0gZ2VuLmxldCgiaWZDbGF1c2UiKTsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBpZkNsYXVzZSB9KTsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iLCBpZkNsYXVzZSksIHZhbGlkYXRlQ2xhdXNlKCJlbHNlIiwgaWZDbGF1c2UpKTsKICAgICAgICB9IGVsc2UgaWYgKGhhc1RoZW4pIHsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkoc2NoVmFsaWQpLCB2YWxpZGF0ZUNsYXVzZSgiZWxzZSIpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVJZigpIHsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICBrZXl3b3JkOiAiaWYiLAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVDbGF1c2Uoa2V5d29yZCwgaWZDbGF1c2UpIHsKICAgICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkIH0sIHNjaFZhbGlkKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgc2NoVmFsaWQpOwogICAgICAgICAgICBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHZhbGlkKTsKICAgICAgICAgICAgaWYgKGlmQ2xhdXNlKQogICAgICAgICAgICAgIGdlbi5hc3NpZ24oaWZDbGF1c2UsICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl3b3JkfWApOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGlmQ2xhdXNlOiBrZXl3b3JkIH0pOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBoYXNTY2hlbWEoaXQsIGtleXdvcmQpIHsKICAgICAgY29uc3Qgc2NoZW1hMiA9IGl0LnNjaGVtYVtrZXl3b3JkXTsKICAgICAgcmV0dXJuIHNjaGVtYTIgIT09IHZvaWQgMCAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzCnZhciByZXF1aXJlX3RoZW5FbHNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci90aGVuRWxzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJ0aGVuIiwgImVsc2UiXSwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBjb2RlKHsga2V5d29yZCwgcGFyZW50U2NoZW1hLCBpdCB9KSB7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS5pZiA9PT0gdm9pZCAwKQogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIiR7a2V5d29yZH0iIHdpdGhvdXQgImlmIiBpcyBpZ25vcmVkYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMKdmFyIHJlcXVpcmVfYXBwbGljYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgcHJlZml4SXRlbXNfMSA9IHJlcXVpcmVfcHJlZml4SXRlbXMoKTsKICAgIHZhciBpdGVtc18xID0gcmVxdWlyZV9pdGVtcygpOwogICAgdmFyIGl0ZW1zMjAyMF8xID0gcmVxdWlyZV9pdGVtczIwMjAoKTsKICAgIHZhciBjb250YWluc18xID0gcmVxdWlyZV9jb250YWlucygpOwogICAgdmFyIGRlcGVuZGVuY2llc18xID0gcmVxdWlyZV9kZXBlbmRlbmNpZXMoKTsKICAgIHZhciBwcm9wZXJ0eU5hbWVzXzEgPSByZXF1aXJlX3Byb3BlcnR5TmFtZXMoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIHByb3BlcnRpZXNfMSA9IHJlcXVpcmVfcHJvcGVydGllcygpOwogICAgdmFyIHBhdHRlcm5Qcm9wZXJ0aWVzXzEgPSByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdCgpOwogICAgdmFyIGFueU9mXzEgPSByZXF1aXJlX2FueU9mKCk7CiAgICB2YXIgb25lT2ZfMSA9IHJlcXVpcmVfb25lT2YoKTsKICAgIHZhciBhbGxPZl8xID0gcmVxdWlyZV9hbGxPZigpOwogICAgdmFyIGlmXzEgPSByZXF1aXJlX2lmKCk7CiAgICB2YXIgdGhlbkVsc2VfMSA9IHJlcXVpcmVfdGhlbkVsc2UoKTsKICAgIGZ1bmN0aW9uIGdldEFwcGxpY2F0b3IoZHJhZnQyMDIwID0gZmFsc2UpIHsKICAgICAgY29uc3QgYXBwbGljYXRvciA9IFsKICAgICAgICAvLyBhbnkKICAgICAgICBub3RfMS5kZWZhdWx0LAogICAgICAgIGFueU9mXzEuZGVmYXVsdCwKICAgICAgICBvbmVPZl8xLmRlZmF1bHQsCiAgICAgICAgYWxsT2ZfMS5kZWZhdWx0LAogICAgICAgIGlmXzEuZGVmYXVsdCwKICAgICAgICB0aGVuRWxzZV8xLmRlZmF1bHQsCiAgICAgICAgLy8gb2JqZWN0CiAgICAgICAgcHJvcGVydHlOYW1lc18xLmRlZmF1bHQsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LAogICAgICAgIGRlcGVuZGVuY2llc18xLmRlZmF1bHQsCiAgICAgICAgcHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXNfMS5kZWZhdWx0CiAgICAgIF07CiAgICAgIGlmIChkcmFmdDIwMjApCiAgICAgICAgYXBwbGljYXRvci5wdXNoKHByZWZpeEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXMyMDIwXzEuZGVmYXVsdCk7CiAgICAgIGVsc2UKICAgICAgICBhcHBsaWNhdG9yLnB1c2goYWRkaXRpb25hbEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXNfMS5kZWZhdWx0KTsKICAgICAgYXBwbGljYXRvci5wdXNoKGNvbnRhaW5zXzEuZGVmYXVsdCk7CiAgICAgIHJldHVybiBhcHBsaWNhdG9yOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGdldEFwcGxpY2F0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvZm9ybWF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgbWF0Y2ggZm9ybWF0ICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtmb3JtYXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJmb3JtYXQiLAogICAgICB0eXBlOiBbIm51bWJlciIsICJzdHJpbmciXSwKICAgICAgc2NoZW1hVHlwZTogInN0cmluZyIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQsIHJ1bGVUeXBlKSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzLCBlcnJTY2hlbWFQYXRoLCBzY2hlbWFFbnYsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBpZiAoIW9wdHMudmFsaWRhdGVGb3JtYXRzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICgkZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZkRlZiA9IGdlbi5jb25zdCgiZkRlZiIsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRzfVske3NjaGVtYUNvZGV9XWApOwogICAgICAgICAgY29uc3QgZlR5cGUgPSBnZW4ubGV0KCJmVHlwZSIpOwogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2VuLmxldCgiZm9ybWF0Iik7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmRGVmfSA9PSAib2JqZWN0IiAmJiAhKCR7ZkRlZn0gaW5zdGFuY2VvZiBSZWdFeHApYCwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAke2ZEZWZ9LnR5cGUgfHwgInN0cmluZyJgKS5hc3NpZ24oZm9ybWF0LCAoMCwgY29kZWdlbl8xLl8pYCR7ZkRlZn0udmFsaWRhdGVgKSwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAic3RyaW5nImApLmFzc2lnbihmb3JtYXQsIGZEZWYpKTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5vcikodW5rbm93bkZtdCgpLCBpbnZhbGlkRm10KCkpKTsKICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25GbXQoKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdFNjaGVtYSA9PT0gZmFsc2UpCiAgICAgICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gJiYgISR7Zm9ybWF0fWA7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBpbnZhbGlkRm10KCkgewogICAgICAgICAgICBjb25zdCBjYWxsRm9ybWF0ID0gc2NoZW1hRW52LiRhc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgKCR7ZkRlZn0uYXN5bmMgPyBhd2FpdCAke2Zvcm1hdH0oJHtkYXRhfSkgOiAke2Zvcm1hdH0oJHtkYXRhfSkpYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmb3JtYXR9KCR7ZGF0YX0pYDsKICAgICAgICAgICAgY29uc3QgdmFsaWREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAodHlwZW9mICR7Zm9ybWF0fSA9PSAiZnVuY3Rpb24iID8gJHtjYWxsRm9ybWF0fSA6ICR7Zm9ybWF0fS50ZXN0KCR7ZGF0YX0pKWA7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7Zm9ybWF0fSAmJiAke2Zvcm1hdH0gIT09IHRydWUgJiYgJHtmVHlwZX0gPT09ICR7cnVsZVR5cGV9ICYmICEke3ZhbGlkRGF0YX1gOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZvcm1hdERlZiA9IHNlbGYyLmZvcm1hdHNbc2NoZW1hMl07CiAgICAgICAgICBpZiAoIWZvcm1hdERlZikgewogICAgICAgICAgICB1bmtub3duRm9ybWF0KCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmb3JtYXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IFtmbXRUeXBlLCBmb3JtYXQsIGZtdFJlZl0gPSBnZXRGb3JtYXQoZm9ybWF0RGVmKTsKICAgICAgICAgIGlmIChmbXRUeXBlID09PSBydWxlVHlwZSkKICAgICAgICAgICAgY3h0LnBhc3ModmFsaWRDb25kaXRpb24oKSk7CiAgICAgICAgICBmdW5jdGlvbiB1bmtub3duRm9ybWF0KCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RTY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4odW5rbm93bk1zZygpKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHVua25vd25Nc2coKSk7CiAgICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25Nc2coKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGB1bmtub3duIGZvcm1hdCAiJHtzY2hlbWEyfSIgaWdub3JlZCBpbiBzY2hlbWEgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSJgOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBnZXRGb3JtYXQoZm10RGVmKSB7CiAgICAgICAgICAgIGNvbnN0IGNvZGUgPSBmbXREZWYgaW5zdGFuY2VvZiBSZWdFeHAgPyAoMCwgY29kZWdlbl8xLnJlZ2V4cENvZGUpKGZtdERlZikgOiBvcHRzLmNvZGUuZm9ybWF0cyA/ICgwLCBjb2RlZ2VuXzEuXylgJHtvcHRzLmNvZGUuZm9ybWF0c30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHNjaGVtYTIpfWAgOiB2b2lkIDA7CiAgICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgeyBrZXk6IHNjaGVtYTIsIHJlZjogZm10RGVmLCBjb2RlIH0pOwogICAgICAgICAgICBpZiAodHlwZW9mIGZtdERlZiA9PSAib2JqZWN0IiAmJiAhKGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCkpIHsKICAgICAgICAgICAgICByZXR1cm4gW2ZtdERlZi50eXBlIHx8ICJzdHJpbmciLCBmbXREZWYudmFsaWRhdGUsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LnZhbGlkYXRlYF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFsic3RyaW5nIiwgZm10RGVmLCBmbXRdOwogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gdmFsaWRDb25kaXRpb24oKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgZm9ybWF0RGVmID09ICJvYmplY3QiICYmICEoZm9ybWF0RGVmIGluc3RhbmNlb2YgUmVnRXhwKSAmJiBmb3JtYXREZWYuYXN5bmMpIHsKICAgICAgICAgICAgICBpZiAoIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIGZvcm1hdCBpbiBzeW5jIHNjaGVtYSIpOwogICAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7Zm10UmVmfSgke2RhdGF9KWA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBmb3JtYXQgPT0gImZ1bmN0aW9uIiA/ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9KCR7ZGF0YX0pYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9LnRlc3QoJHtkYXRhfSlgOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2luZGV4LmpzCnZhciByZXF1aXJlX2Zvcm1hdDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBmb3JtYXRfMSA9IHJlcXVpcmVfZm9ybWF0KCk7CiAgICB2YXIgZm9ybWF0ID0gW2Zvcm1hdF8xLmRlZmF1bHRdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9tZXRhZGF0YS5qcwp2YXIgcmVxdWlyZV9tZXRhZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL21ldGFkYXRhLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb250ZW50Vm9jYWJ1bGFyeSA9IGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IFsKICAgICAgInRpdGxlIiwKICAgICAgImRlc2NyaXB0aW9uIiwKICAgICAgImRlZmF1bHQiLAogICAgICAiZGVwcmVjYXRlZCIsCiAgICAgICJyZWFkT25seSIsCiAgICAgICJ3cml0ZU9ubHkiLAogICAgICAiZXhhbXBsZXMiCiAgICBdOwogICAgZXhwb3J0czIuY29udGVudFZvY2FidWxhcnkgPSBbCiAgICAgICJjb250ZW50TWVkaWFUeXBlIiwKICAgICAgImNvbnRlbnRFbmNvZGluZyIsCiAgICAgICJjb250ZW50U2NoZW1hIgogICAgXTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kcmFmdDcuanMKdmFyIHJlcXVpcmVfZHJhZnQ3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZHJhZnQ3LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlMigpOwogICAgdmFyIHZhbGlkYXRpb25fMSA9IHJlcXVpcmVfdmFsaWRhdGlvbigpOwogICAgdmFyIGFwcGxpY2F0b3JfMSA9IHJlcXVpcmVfYXBwbGljYXRvcigpOwogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQyKCk7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEoKTsKICAgIHZhciBkcmFmdDdWb2NhYnVsYXJpZXMgPSBbCiAgICAgIGNvcmVfMS5kZWZhdWx0LAogICAgICB2YWxpZGF0aW9uXzEuZGVmYXVsdCwKICAgICAgKDAsIGFwcGxpY2F0b3JfMS5kZWZhdWx0KSgpLAogICAgICBmb3JtYXRfMS5kZWZhdWx0LAogICAgICBtZXRhZGF0YV8xLm1ldGFkYXRhVm9jYWJ1bGFyeSwKICAgICAgbWV0YWRhdGFfMS5jb250ZW50Vm9jYWJ1bGFyeQogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkcmFmdDdWb2NhYnVsYXJpZXM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZGlzY3JpbWluYXRvci90eXBlcy5qcwp2YXIgcmVxdWlyZV90eXBlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvdHlwZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRpc2NyRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgRGlzY3JFcnJvcjsKICAgIChmdW5jdGlvbihEaXNjckVycm9yMikgewogICAgICBEaXNjckVycm9yMlsiVGFnIl0gPSAidGFnIjsKICAgICAgRGlzY3JFcnJvcjJbIk1hcHBpbmciXSA9ICJtYXBwaW5nIjsKICAgIH0pKERpc2NyRXJyb3IgfHwgKGV4cG9ydHMyLkRpc2NyRXJyb3IgPSBEaXNjckVycm9yID0ge30pKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc2NyaW1pbmF0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdHlwZXNfMSA9IHJlcXVpcmVfdHlwZXMoKTsKICAgIHZhciBjb21waWxlXzEgPSByZXF1aXJlX2NvbXBpbGUoKTsKICAgIHZhciByZWZfZXJyb3JfMSA9IHJlcXVpcmVfcmVmX2Vycm9yKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWdOYW1lIH0gfSkgPT4gZGlzY3JFcnJvciA9PT0gdHlwZXNfMS5EaXNjckVycm9yLlRhZyA/IGB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgc3RyaW5nYCA6IGB2YWx1ZSBvZiB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgaW4gb25lT2ZgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWcsIHRhZ05hbWUgfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtlcnJvcjogJHtkaXNjckVycm9yfSwgdGFnOiAke3RhZ05hbWV9LCB0YWdWYWx1ZTogJHt0YWd9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZGlzY3JpbWluYXRvciIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb25lT2YgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIWl0Lm9wdHMuZGlzY3JpbWluYXRvcikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBkaXNjcmltaW5hdG9yIG9wdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB0YWdOYW1lID0gc2NoZW1hMi5wcm9wZXJ0eU5hbWU7CiAgICAgICAgaWYgKHR5cGVvZiB0YWdOYW1lICE9ICJzdHJpbmciKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBwcm9wZXJ0eU5hbWUiKTsKICAgICAgICBpZiAoc2NoZW1hMi5tYXBwaW5nKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiBtYXBwaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICBpZiAoIW9uZU9mKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBvbmVPZiBrZXl3b3JkIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCB0YWcgPSBnZW4uY29uc3QoInRhZyIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkodGFnTmFtZSl9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7dGFnfSA9PSAic3RyaW5nImAsICgpID0+IHZhbGlkYXRlTWFwcGluZygpLCAoKSA9PiBjeHQuZXJyb3IoZmFsc2UsIHsgZGlzY3JFcnJvcjogdHlwZXNfMS5EaXNjckVycm9yLlRhZywgdGFnLCB0YWdOYW1lIH0pKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlTWFwcGluZygpIHsKICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBnZXRNYXBwaW5nKCk7CiAgICAgICAgICBnZW4uaWYoZmFsc2UpOwogICAgICAgICAgZm9yIChjb25zdCB0YWdWYWx1ZSBpbiBtYXBwaW5nKSB7CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke3RhZ30gPT09ICR7dGFnVmFsdWV9YCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGFwcGx5VGFnU2NoZW1hKG1hcHBpbmdbdGFnVmFsdWVdKSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgY3h0LmVycm9yKGZhbHNlLCB7IGRpc2NyRXJyb3I6IHR5cGVzXzEuRGlzY3JFcnJvci5NYXBwaW5nLCB0YWcsIHRhZ05hbWUgfSk7CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlUYWdTY2hlbWEoc2NoZW1hUHJvcCkgewogICAgICAgICAgY29uc3QgX3ZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZDogIm9uZU9mIiwgc2NoZW1hUHJvcCB9LCBfdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgcmV0dXJuIF92YWxpZDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZ2V0TWFwcGluZygpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIGNvbnN0IG9uZU9mTWFwcGluZyA9IHt9OwogICAgICAgICAgY29uc3QgdG9wUmVxdWlyZWQgPSBoYXNSZXF1aXJlZChwYXJlbnRTY2hlbWEpOwogICAgICAgICAgbGV0IHRhZ1JlcXVpcmVkID0gdHJ1ZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb25lT2YubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgbGV0IHNjaCA9IG9uZU9mW2ldOwogICAgICAgICAgICBpZiAoKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC4kcmVmKSAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoLCBpdC5zZWxmLlJVTEVTKSkgewogICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHNjaC4kcmVmOwogICAgICAgICAgICAgIHNjaCA9IGNvbXBpbGVfMS5yZXNvbHZlUmVmLmNhbGwoaXQuc2VsZiwgaXQuc2NoZW1hRW52LnJvb3QsIGl0LmJhc2VJZCwgcmVmKTsKICAgICAgICAgICAgICBpZiAoc2NoIGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgICAgICAgIHNjaCA9IHNjaC5zY2hlbWE7CiAgICAgICAgICAgICAgaWYgKHNjaCA9PT0gdm9pZCAwKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCByZWYpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHByb3BTY2ggPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gucHJvcGVydGllcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3RhZ05hbWVdOwogICAgICAgICAgICBpZiAodHlwZW9mIHByb3BTY2ggIT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6IG9uZU9mIHN1YnNjaGVtYXMgKG9yIHJlZmVyZW5jZWQgc2NoZW1hcykgbXVzdCBoYXZlICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFnUmVxdWlyZWQgPSB0YWdSZXF1aXJlZCAmJiAodG9wUmVxdWlyZWQgfHwgaGFzUmVxdWlyZWQoc2NoKSk7CiAgICAgICAgICAgIGFkZE1hcHBpbmdzKHByb3BTY2gsIGkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCF0YWdSZXF1aXJlZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgbXVzdCBiZSByZXF1aXJlZGApOwogICAgICAgICAgcmV0dXJuIG9uZU9mTWFwcGluZzsKICAgICAgICAgIGZ1bmN0aW9uIGhhc1JlcXVpcmVkKHsgcmVxdWlyZWQgfSkgewogICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyZXF1aXJlZCkgJiYgcmVxdWlyZWQuaW5jbHVkZXModGFnTmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5ncyhzY2gsIGkpIHsKICAgICAgICAgICAgaWYgKHNjaC5jb25zdCkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmcoc2NoLmNvbnN0LCBpKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2guZW51bSkgewogICAgICAgICAgICAgIGZvciAoY29uc3QgdGFnVmFsdWUgb2Ygc2NoLmVudW0pIHsKICAgICAgICAgICAgICAgIGFkZE1hcHBpbmcodGFnVmFsdWUsIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6ICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iIG11c3QgaGF2ZSAiY29uc3QiIG9yICJlbnVtImApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nKHRhZ1ZhbHVlLCBpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgdGFnVmFsdWUgIT0gInN0cmluZyIgfHwgdGFnVmFsdWUgaW4gb25lT2ZNYXBwaW5nKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgdmFsdWVzIG11c3QgYmUgdW5pcXVlIHN0cmluZ3NgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBvbmVPZk1hcHBpbmdbdGFnVmFsdWVdID0gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9qc29uLXNjaGVtYS1kcmFmdC0wNy5qc29uCnZhciByZXF1aXJlX2pzb25fc2NoZW1hX2RyYWZ0XzA3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2pzb24tc2NoZW1hLWRyYWZ0LTA3Lmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRzY2hlbWE6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICAkaWQ6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICB0aXRsZTogIkNvcmUgc2NoZW1hIG1ldGEtc2NoZW1hIiwKICAgICAgZGVmaW5pdGlvbnM6IHsKICAgICAgICBzY2hlbWFBcnJheTogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG1pbkl0ZW1zOiAxLAogICAgICAgICAgaXRlbXM6IHsgJHJlZjogIiMiIH0KICAgICAgICB9LAogICAgICAgIG5vbk5lZ2F0aXZlSW50ZWdlcjogewogICAgICAgICAgdHlwZTogImludGVnZXIiLAogICAgICAgICAgbWluaW11bTogMAogICAgICAgIH0sCiAgICAgICAgbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDA6IHsKICAgICAgICAgIGFsbE9mOiBbeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sIHsgZGVmYXVsdDogMCB9XQogICAgICAgIH0sCiAgICAgICAgc2ltcGxlVHlwZXM6IHsKICAgICAgICAgIGVudW06IFsiYXJyYXkiLCAiYm9vbGVhbiIsICJpbnRlZ2VyIiwgIm51bGwiLCAibnVtYmVyIiwgIm9iamVjdCIsICJzdHJpbmciXQogICAgICAgIH0sCiAgICAgICAgc3RyaW5nQXJyYXk6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBpdGVtczogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgICAgICBkZWZhdWx0OiBbXQogICAgICAgIH0KICAgICAgfSwKICAgICAgdHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGlkOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaS1yZWZlcmVuY2UiCiAgICAgICAgfSwKICAgICAgICAkc2NoZW1hOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaSIKICAgICAgICB9LAogICAgICAgICRyZWY6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgZm9ybWF0OiAidXJpLXJlZmVyZW5jZSIKICAgICAgICB9LAogICAgICAgICRjb21tZW50OiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgdGl0bGU6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciCiAgICAgICAgfSwKICAgICAgICBkZXNjcmlwdGlvbjogewogICAgICAgICAgdHlwZTogInN0cmluZyIKICAgICAgICB9LAogICAgICAgIGRlZmF1bHQ6IHRydWUsCiAgICAgICAgcmVhZE9ubHk6IHsKICAgICAgICAgIHR5cGU6ICJib29sZWFuIiwKICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICBleGFtcGxlczogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICBtdWx0aXBsZU9mOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IDAKICAgICAgICB9LAogICAgICAgIG1heGltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBleGNsdXNpdmVNYXhpbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgbWluaW11bTogewogICAgICAgICAgdHlwZTogIm51bWJlciIKICAgICAgICB9LAogICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBtYXhMZW5ndGg6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkxlbmd0aDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICBwYXR0ZXJuOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInJlZ2V4IgogICAgICAgIH0sCiAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGl0ZW1zOiB7CiAgICAgICAgICBhbnlPZjogW3sgJHJlZjogIiMiIH0sIHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc2NoZW1hQXJyYXkiIH1dLAogICAgICAgICAgZGVmYXVsdDogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgbWF4SXRlbXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkl0ZW1zOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlckRlZmF1bHQwIiB9LAogICAgICAgIHVuaXF1ZUl0ZW1zOiB7CiAgICAgICAgICB0eXBlOiAiYm9vbGVhbiIsCiAgICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgY29udGFpbnM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgbWF4UHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sCiAgICAgICAgbWluUHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICByZXF1aXJlZDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zdHJpbmdBcnJheSIgfSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBkZWZpbml0aW9uczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgZGVmYXVsdDoge30KICAgICAgICB9LAogICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgcHJvcGVydHlOYW1lczogeyBmb3JtYXQ6ICJyZWdleCIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBkZXBlbmRlbmNpZXM6IHsKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsKICAgICAgICAgICAgYW55T2Y6IFt7ICRyZWY6ICIjIiB9LCB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3N0cmluZ0FycmF5IiB9XQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcHJvcGVydHlOYW1lczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBjb25zdDogdHJ1ZSwKICAgICAgICBlbnVtOiB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICB0eXBlOiB7CiAgICAgICAgICBhbnlPZjogWwogICAgICAgICAgICB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NpbXBsZVR5cGVzIiB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zaW1wbGVUeXBlcyIgfSwKICAgICAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICBmb3JtYXQ6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICBjb250ZW50TWVkaWFUeXBlOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgY29udGVudEVuY29kaW5nOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgaWY6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgdGhlbjogeyAkcmVmOiAiIyIgfSwKICAgICAgICBlbHNlOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGFsbE9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIGFueU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG9uZU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG5vdDogeyAkcmVmOiAiIyIgfQogICAgICB9LAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzCnZhciByZXF1aXJlX2FqdiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5NaXNzaW5nUmVmRXJyb3IgPSBleHBvcnRzMi5WYWxpZGF0aW9uRXJyb3IgPSBleHBvcnRzMi5Db2RlR2VuID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gZXhwb3J0czIuQWp2ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZSgpOwogICAgdmFyIGRyYWZ0N18xID0gcmVxdWlyZV9kcmFmdDcoKTsKICAgIHZhciBkaXNjcmltaW5hdG9yXzEgPSByZXF1aXJlX2Rpc2NyaW1pbmF0b3IoKTsKICAgIHZhciBkcmFmdDdNZXRhU2NoZW1hID0gcmVxdWlyZV9qc29uX3NjaGVtYV9kcmFmdF8wNygpOwogICAgdmFyIE1FVEFfU1VQUE9SVF9EQVRBID0gWyIvcHJvcGVydGllcyJdOwogICAgdmFyIE1FVEFfU0NIRU1BX0lEID0gImh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQtMDcvc2NoZW1hIjsKICAgIHZhciBBanYgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5kZWZhdWx0IHsKICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICBzdXBlci5fYWRkVm9jYWJ1bGFyaWVzKCk7CiAgICAgICAgZHJhZnQ3XzEuZGVmYXVsdC5mb3JFYWNoKCh2KSA9PiB0aGlzLmFkZFZvY2FidWxhcnkodikpOwogICAgICAgIGlmICh0aGlzLm9wdHMuZGlzY3JpbWluYXRvcikKICAgICAgICAgIHRoaXMuYWRkS2V5d29yZChkaXNjcmltaW5hdG9yXzEuZGVmYXVsdCk7CiAgICAgIH0KICAgICAgX2FkZERlZmF1bHRNZXRhU2NoZW1hKCkgewogICAgICAgIHN1cGVyLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmICghdGhpcy5vcHRzLm1ldGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgbWV0YVNjaGVtYSA9IHRoaXMub3B0cy4kZGF0YSA/IHRoaXMuJGRhdGFNZXRhU2NoZW1hKGRyYWZ0N01ldGFTY2hlbWEsIE1FVEFfU1VQUE9SVF9EQVRBKSA6IGRyYWZ0N01ldGFTY2hlbWE7CiAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIE1FVEFfU0NIRU1BX0lELCBmYWxzZSk7CiAgICAgICAgdGhpcy5yZWZzWyJodHRwOi8vanNvbi1zY2hlbWEub3JnL3NjaGVtYSJdID0gTUVUQV9TQ0hFTUFfSUQ7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHN1cGVyLmRlZmF1bHRNZXRhKCkgfHwgKHRoaXMuZ2V0U2NoZW1hKE1FVEFfU0NIRU1BX0lEKSA/IE1FVEFfU0NIRU1BX0lEIDogdm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFqdiA9IEFqdjsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gQWp2OwogICAgbW9kdWxlMi5leHBvcnRzLkFqdiA9IEFqdjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiS2V5d29yZEN4dCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHZhbGlkYXRlXzEuS2V5d29yZEN4dDsKICAgIH0gfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLl87CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdpZnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuc3RyaW5naWZ5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5pbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5OYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkNvZGVHZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuQ29kZUdlbjsKICAgIH0gfSk7CiAgICB2YXIgdmFsaWRhdGlvbl9lcnJvcl8xID0gcmVxdWlyZV92YWxpZGF0aW9uX2Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWxpZGF0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTWlzc2luZ1JlZkVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9mb3JtYXRzLmpzCnZhciByZXF1aXJlX2Zvcm1hdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gZXhwb3J0czIuZmFzdEZvcm1hdHMgPSBleHBvcnRzMi5mdWxsRm9ybWF0cyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGZtdERlZih2YWxpZGF0ZSwgY29tcGFyZSkgewogICAgICByZXR1cm4geyB2YWxpZGF0ZSwgY29tcGFyZSB9OwogICAgfQogICAgZXhwb3J0czIuZnVsbEZvcm1hdHMgPSB7CiAgICAgIC8vIGRhdGU6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkjc2VjdGlvbi01LjYKICAgICAgZGF0ZTogZm10RGVmKGRhdGUsIGNvbXBhcmVEYXRlKSwKICAgICAgLy8gZGF0ZS10aW1lOiBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I3NlY3Rpb24tNS42CiAgICAgIHRpbWU6IGZtdERlZihnZXRUaW1lKHRydWUpLCBjb21wYXJlVGltZSksCiAgICAgICJkYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUodHJ1ZSksIGNvbXBhcmVEYXRlVGltZSksCiAgICAgICJpc28tdGltZSI6IGZtdERlZihnZXRUaW1lKCksIGNvbXBhcmVJc29UaW1lKSwKICAgICAgImlzby1kYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUoKSwgY29tcGFyZUlzb0RhdGVUaW1lKSwKICAgICAgLy8gZHVyYXRpb246IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I2FwcGVuZGl4LUEKICAgICAgZHVyYXRpb246IC9eUCg/ISQpKChcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrUyk/KT98KFxkK1cpPykkLywKICAgICAgdXJpLAogICAgICAidXJpLXJlZmVyZW5jZSI6IC9eKD86W2Etel1bYS16MC05K1wtLl0qOik/KD86XC8/XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpdfCVbMC05YS1mXXsyfSkqQCk/KD86XFsoPzooPzooPzooPzpbMC05YS1mXXsxLDR9Oil7Nn18OjooPzpbMC05YS1mXXsxLDR9Oil7NX18KD86WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7NH18KD86KD86WzAtOWEtZl17MSw0fTopezAsMX1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXszfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwyfVswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezJ9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDN9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9OnwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCw0fVswLTlhLWZdezEsNH0pPzo6KSg/OlswLTlhLWZdezEsNH06WzAtOWEtZl17MSw0fXwoPzooPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pXC4pezN9KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KSl8KD86KD86WzAtOWEtZl17MSw0fTopezAsNX1bMC05YS1mXXsxLDR9KT86OlswLTlhLWZdezEsNH18KD86KD86WzAtOWEtZl17MSw0fTopezAsNn1bMC05YS1mXXsxLDR9KT86Oil8W1Z2XVswLTlhLWZdK1wuW2EtejAtOVwtLl9+ISQmJygpKissOz06XSspXF18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPyl8KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqfFwvKD86KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSopPyg/Olw/KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyg/OiMoPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/JC9pLAogICAgICAvLyB1cmktdGVtcGxhdGU6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NTcwCiAgICAgICJ1cmktdGVtcGxhdGUiOiAvXig/Oig/OlteXHgwMC1ceDIwIic8PiVcXF5ge3x9XXwlWzAtOWEtZl17Mn0pfFx7WysjLi87PyY9LCFAfF0/KD86W2EtejAtOV9dfCVbMC05YS1mXXsyfSkrKD86OlsxLTldWzAtOV17MCwzfXxcKik/KD86LCg/OlthLXowLTlfXXwlWzAtOWEtZl17Mn0pKyg/OjpbMS05XVswLTldezAsM318XCopPykqXH0pKiQvaSwKICAgICAgLy8gRm9yIHRoZSBzb3VyY2U6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RwZXJpbmkvNzI5Mjk0CiAgICAgIC8vIEZvciB0ZXN0IGNhc2VzOiBodHRwczovL21hdGhpYXNieW5lbnMuYmUvZGVtby91cmwtcmVnZXgKICAgICAgdXJsOiAvXig/Omh0dHBzP3xmdHApOlwvXC8oPzpcUysoPzo6XFMqKT9AKT8oPzooPyEoPzoxMHwxMjcpKD86XC5cZHsxLDN9KXszfSkoPyEoPzoxNjlcLjI1NHwxOTJcLjE2OCkoPzpcLlxkezEsM30pezJ9KSg/ITE3MlwuKD86MVs2LTldfDJcZHwzWzAtMV0pKD86XC5cZHsxLDN9KXsyfSkoPzpbMS05XVxkP3wxXGRcZHwyWzAxXVxkfDIyWzAtM10pKD86XC4oPzoxP1xkezEsMn18MlswLTRdXGR8MjVbMC01XSkpezJ9KD86XC4oPzpbMS05XVxkP3wxXGRcZHwyWzAtNF1cZHwyNVswLTRdKSl8KD86KD86W2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSstKSpbYS16MC05XHV7MDBhMX0tXHV7ZmZmZn1dKykoPzpcLig/OlthLXowLTlcdXswMGExfS1cdXtmZmZmfV0rLSkqW2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSspKig/OlwuKD86W2Etelx1ezAwYTF9LVx1e2ZmZmZ9XXsyLH0pKSkoPzo6XGR7Miw1fSk/KD86XC9bXlxzXSopPyQvaXUsCiAgICAgIGVtYWlsOiAvXlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSsoPzpcLlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16MC05XSg/OlthLXowLTktXSpbYS16MC05XSk/XC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8kL2ksCiAgICAgIGhvc3RuYW1lOiAvXig/PS57MSwyNTN9XC4/JClbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8oPzpcLlthLXowLTldKD86Wy0wLTlhLXpdezAsNjF9WzAtOWEtel0pPykqXC4/JC9pLAogICAgICAvLyBvcHRpbWl6ZWQgaHR0cHM6Ly93d3cuc2FmYXJpYm9va3NvbmxpbmUuY29tL2xpYnJhcnkvdmlldy9yZWd1bGFyLWV4cHJlc3Npb25zLWNvb2tib29rLzk3ODA1OTY4MDI4MzcvY2gwN3MxNi5odG1sCiAgICAgIGlwdjQ6IC9eKD86KD86MjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZClcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSQvLAogICAgICBpcHY2OiAvXigoKFswLTlhLWZdezEsNH06KXs3fShbMC05YS1mXXsxLDR9fDopKXwoKFswLTlhLWZdezEsNH06KXs2fSg6WzAtOWEtZl17MSw0fXwoKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezV9KCgoOlswLTlhLWZdezEsNH0pezEsMn0pfDooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezR9KCgoOlswLTlhLWZdezEsNH0pezEsM30pfCgoOlswLTlhLWZdezEsNH0pPzooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoKFswLTlhLWZdezEsNH06KXszfSgoKDpbMC05YS1mXXsxLDR9KXsxLDR9KXwoKDpbMC05YS1mXXsxLDR9KXswLDJ9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpfCgoWzAtOWEtZl17MSw0fTopezJ9KCgoOlswLTlhLWZdezEsNH0pezEsNX0pfCgoOlswLTlhLWZdezEsNH0pezAsM306KCgyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKShcLigyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSl7M30pKXw6KSl8KChbMC05YS1mXXsxLDR9Oil7MX0oKCg6WzAtOWEtZl17MSw0fSl7MSw2fSl8KCg6WzAtOWEtZl17MSw0fSl7MCw0fTooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoOigoKDpbMC05YS1mXXsxLDR9KXsxLDd9KXwoKDpbMC05YS1mXXsxLDR9KXswLDV9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpKSQvaSwKICAgICAgcmVnZXgsCiAgICAgIC8vIHV1aWQ6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzQxMjIKICAgICAgdXVpZDogL14oPzp1cm46dXVpZDopP1swLTlhLWZdezh9LSg/OlswLTlhLWZdezR9LSl7M31bMC05YS1mXXsxMn0kL2ksCiAgICAgIC8vIEpTT04tcG9pbnRlcjogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY5MDEKICAgICAgLy8gdXJpIGZyYWdtZW50OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NiNhcHBlbmRpeC1BCiAgICAgICJqc29uLXBvaW50ZXIiOiAvXig/OlwvKD86W15+L118fjB8fjEpKikqJC8sCiAgICAgICJqc29uLXBvaW50ZXItdXJpLWZyYWdtZW50IjogL14jKD86XC8oPzpbYS16MC05X1wtLiEkJicoKSorLDs6PUBdfCVbMC05YS1mXXsyfXx+MHx+MSkqKSokL2ksCiAgICAgIC8vIHJlbGF0aXZlIEpTT04tcG9pbnRlcjogaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQtbHVmZi1yZWxhdGl2ZS1qc29uLXBvaW50ZXItMDAKICAgICAgInJlbGF0aXZlLWpzb24tcG9pbnRlciI6IC9eKD86MHxbMS05XVswLTldKikoPzojfCg/OlwvKD86W15+L118fjB8fjEpKikqKSQvLAogICAgICAvLyB0aGUgZm9sbG93aW5nIGZvcm1hdHMgYXJlIHVzZWQgYnkgdGhlIG9wZW5hcGkgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9zcGVjLm9wZW5hcGlzLm9yZy9vYXMvdjMuMC4wI2RhdGEtdHlwZXMKICAgICAgLy8gYnl0ZTogaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbG1vdGEvaXMtYmFzZTY0CiAgICAgIGJ5dGUsCiAgICAgIC8vIHNpZ25lZCAzMiBiaXQgaW50ZWdlcgogICAgICBpbnQzMjogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlSW50MzIgfSwKICAgICAgLy8gc2lnbmVkIDY0IGJpdCBpbnRlZ2VyCiAgICAgIGludDY0OiB7IHR5cGU6ICJudW1iZXIiLCB2YWxpZGF0ZTogdmFsaWRhdGVJbnQ2NCB9LAogICAgICAvLyBDLXR5cGUgZmxvYXQKICAgICAgZmxvYXQ6IHsgdHlwZTogIm51bWJlciIsIHZhbGlkYXRlOiB2YWxpZGF0ZU51bWJlciB9LAogICAgICAvLyBDLXR5cGUgZG91YmxlCiAgICAgIGRvdWJsZTogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlTnVtYmVyIH0sCiAgICAgIC8vIGhpbnQgdG8gdGhlIFVJIHRvIGhpZGUgaW5wdXQgc3RyaW5ncwogICAgICBwYXNzd29yZDogdHJ1ZSwKICAgICAgLy8gdW5jaGVja2VkIHN0cmluZyBwYXlsb2FkCiAgICAgIGJpbmFyeTogdHJ1ZQogICAgfTsKICAgIGV4cG9ydHMyLmZhc3RGb3JtYXRzID0gewogICAgICAuLi5leHBvcnRzMi5mdWxsRm9ybWF0cywKICAgICAgZGF0ZTogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkJC8sIGNvbXBhcmVEYXRlKSwKICAgICAgdGltZTogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPykkL2ksIGNvbXBhcmVUaW1lKSwKICAgICAgImRhdGUtdGltZSI6IGZtdERlZigvXlxkXGRcZFxkLVswLTFdXGQtWzAtM11cZHQoPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KSQvaSwgY29tcGFyZURhdGVUaW1lKSwKICAgICAgImlzby10aW1lIjogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPyk/JC9pLCBjb21wYXJlSXNvVGltZSksCiAgICAgICJpc28tZGF0ZS10aW1lIjogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkW3Rcc10oPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KT8kL2ksIGNvbXBhcmVJc29EYXRlVGltZSksCiAgICAgIC8vIHVyaTogaHR0cHM6Ly9naXRodWIuY29tL21hZmludG9zaC9pcy1teS1qc29uLXZhbGlkL2Jsb2IvbWFzdGVyL2Zvcm1hdHMuanMKICAgICAgdXJpOiAvXig/OlthLXpdW2EtejAtOStcLS5dKjopKD86XC8/XC8pP1teXHNdKiQvaSwKICAgICAgInVyaS1yZWZlcmVuY2UiOiAvXig/Oig/OlthLXpdW2EtejAtOStcLS5dKjopP1wvP1wvKT8oPzpbXlxcXHMjXVteXHMjXSopPyg/OiNbXlxcXHNdKik/JC9pLAogICAgICAvLyBlbWFpbCAoc291cmNlcyBmcm9tIGpzZW4gdmFsaWRhdG9yKToKICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMDEzMjMvdXNpbmctYS1yZWd1bGFyLWV4cHJlc3Npb24tdG8tdmFsaWRhdGUtYW4tZW1haWwtYWRkcmVzcyNhbnN3ZXItODgyOTM2MwogICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sI3ZhbGlkLWUtbWFpbC1hZGRyZXNzIChzZWFyY2ggZm9yICd3aWxmdWwgdmlvbGF0aW9uJykKICAgICAgZW1haWw6IC9eW2EtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/KD86XC5bYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8pKiQvaQogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gT2JqZWN0LmtleXMoZXhwb3J0czIuZnVsbEZvcm1hdHMpOwogICAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7CiAgICAgIHJldHVybiB5ZWFyICUgNCA9PT0gMCAmJiAoeWVhciAlIDEwMCAhPT0gMCB8fCB5ZWFyICUgNDAwID09PSAwKTsKICAgIH0KICAgIHZhciBEQVRFID0gL14oXGRcZFxkXGQpLShcZFxkKS0oXGRcZCkkLzsKICAgIHZhciBEQVlTID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdOwogICAgZnVuY3Rpb24gZGF0ZShzdHIyKSB7CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBEQVRFLmV4ZWMoc3RyMik7CiAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIGNvbnN0IHllYXIgPSArbWF0Y2hlc1sxXTsKICAgICAgY29uc3QgbW9udGggPSArbWF0Y2hlc1syXTsKICAgICAgY29uc3QgZGF5ID0gK21hdGNoZXNbM107CiAgICAgIHJldHVybiBtb250aCA+PSAxICYmIG1vbnRoIDw9IDEyICYmIGRheSA+PSAxICYmIGRheSA8PSAobW9udGggPT09IDIgJiYgaXNMZWFwWWVhcih5ZWFyKSA/IDI5IDogREFZU1ttb250aF0pOwogICAgfQogICAgZnVuY3Rpb24gY29tcGFyZURhdGUoZDEsIGQyKSB7CiAgICAgIGlmICghKGQxICYmIGQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBpZiAoZDEgPiBkMikKICAgICAgICByZXR1cm4gMTsKICAgICAgaWYgKGQxIDwgZDIpCiAgICAgICAgcmV0dXJuIC0xOwogICAgICByZXR1cm4gMDsKICAgIH0KICAgIHZhciBUSU1FID0gL14oXGRcZCk6KFxkXGQpOihcZFxkKD86XC5cZCspPykoenwoWystXSkoXGRcZCkoPzo6PyhcZFxkKSk/KT8kL2k7CiAgICBmdW5jdGlvbiBnZXRUaW1lKHN0cmljdFRpbWVab25lKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiB0aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gVElNRS5leGVjKHN0cjIpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBjb25zdCBociA9ICttYXRjaGVzWzFdOwogICAgICAgIGNvbnN0IG1pbiA9ICttYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHNlYyA9ICttYXRjaGVzWzNdOwogICAgICAgIGNvbnN0IHR6ID0gbWF0Y2hlc1s0XTsKICAgICAgICBjb25zdCB0elNpZ24gPSBtYXRjaGVzWzVdID09PSAiLSIgPyAtMSA6IDE7CiAgICAgICAgY29uc3QgdHpIID0gKyhtYXRjaGVzWzZdIHx8IDApOwogICAgICAgIGNvbnN0IHR6TSA9ICsobWF0Y2hlc1s3XSB8fCAwKTsKICAgICAgICBpZiAodHpIID4gMjMgfHwgdHpNID4gNTkgfHwgc3RyaWN0VGltZVpvbmUgJiYgIXR6KQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmIChociA8PSAyMyAmJiBtaW4gPD0gNTkgJiYgc2VjIDwgNjApCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCB1dGNNaW4gPSBtaW4gLSB0ek0gKiB0elNpZ247CiAgICAgICAgY29uc3QgdXRjSHIgPSBociAtIHR6SCAqIHR6U2lnbiAtICh1dGNNaW4gPCAwID8gMSA6IDApOwogICAgICAgIHJldHVybiAodXRjSHIgPT09IDIzIHx8IHV0Y0hyID09PSAtMSkgJiYgKHV0Y01pbiA9PT0gNTkgfHwgdXRjTWluID09PSAtMSkgJiYgc2VjIDwgNjE7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlVGltZShzMSwgczIpIHsKICAgICAgaWYgKCEoczEgJiYgczIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIGNvbnN0IHQxID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczEpKS52YWx1ZU9mKCk7CiAgICAgIGNvbnN0IHQyID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczIpKS52YWx1ZU9mKCk7CiAgICAgIGlmICghKHQxICYmIHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICByZXR1cm4gdDEgLSB0MjsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVJc29UaW1lKHQxLCB0MikgewogICAgICBpZiAoISh0MSAmJiB0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgYTEgPSBUSU1FLmV4ZWModDEpOwogICAgICBjb25zdCBhMiA9IFRJTUUuZXhlYyh0Mik7CiAgICAgIGlmICghKGExICYmIGEyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB0MSA9IGExWzFdICsgYTFbMl0gKyBhMVszXTsKICAgICAgdDIgPSBhMlsxXSArIGEyWzJdICsgYTJbM107CiAgICAgIGlmICh0MSA+IHQyKQogICAgICAgIHJldHVybiAxOwogICAgICBpZiAodDEgPCB0MikKICAgICAgICByZXR1cm4gLTE7CiAgICAgIHJldHVybiAwOwogICAgfQogICAgdmFyIERBVEVfVElNRV9TRVBBUkFUT1IgPSAvdHxccy9pOwogICAgZnVuY3Rpb24gZ2V0RGF0ZVRpbWUoc3RyaWN0VGltZVpvbmUpIHsKICAgICAgY29uc3QgdGltZSA9IGdldFRpbWUoc3RyaWN0VGltZVpvbmUpOwogICAgICByZXR1cm4gZnVuY3Rpb24gZGF0ZV90aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBkYXRlVGltZSA9IHN0cjIuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgICAgcmV0dXJuIGRhdGVUaW1lLmxlbmd0aCA9PT0gMiAmJiBkYXRlKGRhdGVUaW1lWzBdKSAmJiB0aW1lKGRhdGVUaW1lWzFdKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlVGltZShkdDEsIGR0MikgewogICAgICBpZiAoIShkdDEgJiYgZHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBkMSA9IG5ldyBEYXRlKGR0MSkudmFsdWVPZigpOwogICAgICBjb25zdCBkMiA9IG5ldyBEYXRlKGR0MikudmFsdWVPZigpOwogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIGQxIC0gZDI7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlSXNvRGF0ZVRpbWUoZHQxLCBkdDIpIHsKICAgICAgaWYgKCEoZHQxICYmIGR0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgW2QxLCB0MV0gPSBkdDEuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgIGNvbnN0IFtkMiwgdDJdID0gZHQyLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpOwogICAgICBjb25zdCByZXMgPSBjb21wYXJlRGF0ZShkMSwgZDIpOwogICAgICBpZiAocmVzID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIHJlcyB8fCBjb21wYXJlVGltZSh0MSwgdDIpOwogICAgfQogICAgdmFyIE5PVF9VUklfRlJBR01FTlQgPSAvXC98Oi87CiAgICB2YXIgVVJJID0gL14oPzpbYS16XVthLXowLTkrXC0uXSo6KSg/OlwvP1wvKD86KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06XXwlWzAtOWEtZl17Mn0pKkApPyg/OlxbKD86KD86KD86KD86WzAtOWEtZl17MSw0fTopezZ9fDo6KD86WzAtOWEtZl17MSw0fTopezV9fCg/OlswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDF9WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7M318KD86KD86WzAtOWEtZl17MSw0fTopezAsMn1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXsyfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwzfVswLTlhLWZdezEsNH0pPzo6WzAtOWEtZl17MSw0fTp8KD86KD86WzAtOWEtZl17MSw0fTopezAsNH1bMC05YS1mXXsxLDR9KT86OikoPzpbMC05YS1mXXsxLDR9OlswLTlhLWZdezEsNH18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPykpfCg/Oig/OlswLTlhLWZdezEsNH06KXswLDV9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDZ9WzAtOWEtZl17MSw0fSk/OjopfFtWdl1bMC05YS1mXStcLlthLXowLTlcLS5ffiEkJicoKSorLDs9Ol0rKVxdfCg/Oig/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPylcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pfCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSp8XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqKSg/Olw/KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/KD86Iyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyQvaTsKICAgIGZ1bmN0aW9uIHVyaShzdHIyKSB7CiAgICAgIHJldHVybiBOT1RfVVJJX0ZSQUdNRU5ULnRlc3Qoc3RyMikgJiYgVVJJLnRlc3Qoc3RyMik7CiAgICB9CiAgICB2YXIgQllURSA9IC9eKD86W0EtWmEtejAtOSsvXXs0fSkqKD86W0EtWmEtejAtOSsvXXsyfT09fFtBLVphLXowLTkrL117M309KT8kL2dtOwogICAgZnVuY3Rpb24gYnl0ZShzdHIyKSB7CiAgICAgIEJZVEUubGFzdEluZGV4ID0gMDsKICAgICAgcmV0dXJuIEJZVEUudGVzdChzdHIyKTsKICAgIH0KICAgIHZhciBNSU5fSU5UMzIgPSAtKDIgKiogMzEpOwogICAgdmFyIE1BWF9JTlQzMiA9IDIgKiogMzEgLSAxOwogICAgZnVuY3Rpb24gdmFsaWRhdGVJbnQzMih2YWx1ZSkgewogICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSkgJiYgdmFsdWUgPD0gTUFYX0lOVDMyICYmIHZhbHVlID49IE1JTl9JTlQzMjsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlSW50NjQodmFsdWUpIHsKICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVOdW1iZXIoKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgdmFyIFpfQU5DSE9SID0gL1teXFxdXFxaLzsKICAgIGZ1bmN0aW9uIHJlZ2V4KHN0cjIpIHsKICAgICAgaWYgKFpfQU5DSE9SLnRlc3Qoc3RyMikpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAoc3RyMik7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2xpbWl0LmpzCnZhciByZXF1aXJlX2xpbWl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9saW1pdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZm9ybWF0TGltaXREZWZpbml0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gcmVxdWlyZV9hanYoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBvcHMgPSBjb2RlZ2VuXzEub3BlcmF0b3JzOwogICAgdmFyIEtXRHMgPSB7CiAgICAgIGZvcm1hdE1heGltdW06IHsgb2tTdHI6ICI8PSIsIG9rOiBvcHMuTFRFLCBmYWlsOiBvcHMuR1QgfSwKICAgICAgZm9ybWF0TWluaW11bTogeyBva1N0cjogIj49Iiwgb2s6IG9wcy5HVEUsIGZhaWw6IG9wcy5MVCB9LAogICAgICBmb3JtYXRFeGNsdXNpdmVNYXhpbXVtOiB7IG9rU3RyOiAiPCIsIG9rOiBvcHMuTFQsIGZhaWw6IG9wcy5HVEUgfSwKICAgICAgZm9ybWF0RXhjbHVzaXZlTWluaW11bTogeyBva1N0cjogIj4iLCBvazogb3BzLkdULCBmYWlsOiBvcHMuTFRFIH0KICAgIH07CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYHNob3VsZCBiZSAke0tXRHNba2V5d29yZF0ub2tTdHJ9ICR7c2NoZW1hQ29kZX1gLAogICAgICBwYXJhbXM6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7Y29tcGFyaXNvbjogJHtLV0RzW2tleXdvcmRdLm9rU3RyfSwgbGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdExpbWl0RGVmaW5pdGlvbiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICAgIGlmICghb3B0cy52YWxpZGF0ZUZvcm1hdHMpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZkN4dCA9IG5ldyBhanZfMS5LZXl3b3JkQ3h0KGl0LCBzZWxmMi5SVUxFUy5hbGwuZm9ybWF0LmRlZmluaXRpb24sICJmb3JtYXQiKTsKICAgICAgICBpZiAoZkN4dC4kZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZm10ID0gZ2VuLmNvbnN0KCJmbXQiLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10c31bJHtmQ3h0LnNjaGVtYUNvZGV9XWApOwogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLm9yKSgoMCwgY29kZWdlbl8xLl8pYHR5cGVvZiAke2ZtdH0gIT0gIm9iamVjdCJgLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10fSBpbnN0YW5jZW9mIFJlZ0V4cGAsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7Zm10fS5jb21wYXJlICE9ICJmdW5jdGlvbiJgLCBjb21wYXJlQ29kZShmbXQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlRm9ybWF0KCkgewogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZkN4dC5zY2hlbWE7CiAgICAgICAgICBjb25zdCBmbXREZWYgPSBzZWxmMi5mb3JtYXRzW2Zvcm1hdF07CiAgICAgICAgICBpZiAoIWZtdERlZiB8fCBmbXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGlmICh0eXBlb2YgZm10RGVmICE9ICJvYmplY3QiIHx8IGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCB8fCB0eXBlb2YgZm10RGVmLmNvbXBhcmUgIT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCIke2tleXdvcmR9IjogZm9ybWF0ICIke2Zvcm1hdH0iIGRvZXMgbm90IGRlZmluZSAiY29tcGFyZSIgZnVuY3Rpb25gKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgewogICAgICAgICAgICBrZXk6IGZvcm1hdCwKICAgICAgICAgICAgcmVmOiBmbXREZWYsCiAgICAgICAgICAgIGNvZGU6IG9wdHMuY29kZS5mb3JtYXRzID8gKDAsIGNvZGVnZW5fMS5fKWAke29wdHMuY29kZS5mb3JtYXRzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoZm9ybWF0KX1gIDogdm9pZCAwCiAgICAgICAgICB9KTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoY29tcGFyZUNvZGUoZm10KSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNvbXBhcmVDb2RlKGZtdCkgewogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LmNvbXBhcmUoJHtkYXRhfSwgJHtzY2hlbWFDb2RlfSkgJHtLV0RzW2tleXdvcmRdLmZhaWx9IDBgOwogICAgICAgIH0KICAgICAgfSwKICAgICAgZGVwZW5kZW5jaWVzOiBbImZvcm1hdCJdCiAgICB9OwogICAgdmFyIGZvcm1hdExpbWl0UGx1Z2luID0gKGFqdikgPT4gewogICAgICBhanYuYWRkS2V5d29yZChleHBvcnRzMi5mb3JtYXRMaW1pdERlZmluaXRpb24pOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBmb3JtYXRMaW1pdFBsdWdpbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZm9ybWF0c18xID0gcmVxdWlyZV9mb3JtYXRzKCk7CiAgICB2YXIgbGltaXRfMSA9IHJlcXVpcmVfbGltaXQoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBmdWxsTmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZnVsbEZvcm1hdHMiKTsKICAgIHZhciBmYXN0TmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZmFzdEZvcm1hdHMiKTsKICAgIHZhciBmb3JtYXRzUGx1Z2luID0gKGFqdiwgb3B0cyA9IHsga2V5d29yZHM6IHRydWUgfSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRzKSkgewogICAgICAgIGFkZEZvcm1hdHMoYWp2LCBvcHRzLCBmb3JtYXRzXzEuZnVsbEZvcm1hdHMsIGZ1bGxOYW1lKTsKICAgICAgICByZXR1cm4gYWp2OwogICAgICB9CiAgICAgIGNvbnN0IFtmb3JtYXRzLCBleHBvcnROYW1lXSA9IG9wdHMubW9kZSA9PT0gImZhc3QiID8gW2Zvcm1hdHNfMS5mYXN0Rm9ybWF0cywgZmFzdE5hbWVdIDogW2Zvcm1hdHNfMS5mdWxsRm9ybWF0cywgZnVsbE5hbWVdOwogICAgICBjb25zdCBsaXN0ID0gb3B0cy5mb3JtYXRzIHx8IGZvcm1hdHNfMS5mb3JtYXROYW1lczsKICAgICAgYWRkRm9ybWF0cyhhanYsIGxpc3QsIGZvcm1hdHMsIGV4cG9ydE5hbWUpOwogICAgICBpZiAob3B0cy5rZXl3b3JkcykKICAgICAgICAoMCwgbGltaXRfMS5kZWZhdWx0KShhanYpOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGZvcm1hdHNQbHVnaW4uZ2V0ID0gKG5hbWUsIG1vZGUgPSAiZnVsbCIpID0+IHsKICAgICAgY29uc3QgZm9ybWF0cyA9IG1vZGUgPT09ICJmYXN0IiA/IGZvcm1hdHNfMS5mYXN0Rm9ybWF0cyA6IGZvcm1hdHNfMS5mdWxsRm9ybWF0czsKICAgICAgY29uc3QgZiA9IGZvcm1hdHNbbmFtZV07CiAgICAgIGlmICghZikKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZm9ybWF0ICIke25hbWV9ImApOwogICAgICByZXR1cm4gZjsKICAgIH07CiAgICBmdW5jdGlvbiBhZGRGb3JtYXRzKGFqdiwgbGlzdCwgZnMsIGV4cG9ydE5hbWUpIHsKICAgICAgdmFyIF9hOwogICAgICB2YXIgX2I7CiAgICAgIChfYSA9IChfYiA9IGFqdi5vcHRzLmNvZGUpLmZvcm1hdHMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IF9iLmZvcm1hdHMgPSAoMCwgY29kZWdlbl8xLl8pYHJlcXVpcmUoImFqdi1mb3JtYXRzL2Rpc3QvZm9ybWF0cyIpLiR7ZXhwb3J0TmFtZX1gOwogICAgICBmb3IgKGNvbnN0IGYgb2YgbGlzdCkKICAgICAgICBhanYuYWRkRm9ybWF0KGYsIGZzW2ZdKTsKICAgIH0KICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gZm9ybWF0c1BsdWdpbjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdHNQbHVnaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcwp2YXIgcmVxdWlyZV9pc0Z1bmN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNGdW5jdGlvbiA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gImZ1bmN0aW9uIjsKICAgIH0KICAgIGV4cG9ydHMyLmlzRnVuY3Rpb24gPSBpc0Z1bmN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMKdmFyIHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUVycm9yQ2xhc3MgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBjcmVhdGVFcnJvckNsYXNzKGNyZWF0ZUltcGwpIHsKICAgICAgdmFyIF9zdXBlciA9IGZ1bmN0aW9uKGluc3RhbmNlKSB7CiAgICAgICAgRXJyb3IuY2FsbChpbnN0YW5jZSk7CiAgICAgICAgaW5zdGFuY2Uuc3RhY2sgPSBuZXcgRXJyb3IoKS5zdGFjazsKICAgICAgfTsKICAgICAgdmFyIGN0b3JGdW5jID0gY3JlYXRlSW1wbChfc3VwZXIpOwogICAgICBjdG9yRnVuYy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CiAgICAgIGN0b3JGdW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IGN0b3JGdW5jOwogICAgICByZXR1cm4gY3RvckZ1bmM7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVFcnJvckNsYXNzID0gY3JlYXRlRXJyb3JDbGFzczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzCnZhciByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VbnN1YnNjcmlwdGlvbkVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVW5zdWJzY3JpcHRpb25FcnJvckltcGwoZXJyb3JzKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9IGVycm9ycyA/IGVycm9ycy5sZW5ndGggKyAiIGVycm9ycyBvY2N1cnJlZCBkdXJpbmcgdW5zdWJzY3JpcHRpb246XG4iICsgZXJyb3JzLm1hcChmdW5jdGlvbihlcnIsIGkpIHsKICAgICAgICAgIHJldHVybiBpICsgMSArICIpICIgKyBlcnIudG9TdHJpbmcoKTsKICAgICAgICB9KS5qb2luKCJcbiAgIikgOiAiIjsKICAgICAgICB0aGlzLm5hbWUgPSAiVW5zdWJzY3JpcHRpb25FcnJvciI7CiAgICAgICAgdGhpcy5lcnJvcnMgPSBlcnJvcnM7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcnJSZW1vdmUuanMKdmFyIHJlcXVpcmVfYXJyUmVtb3ZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJyUmVtb3ZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBhcnJSZW1vdmUoYXJyLCBpdGVtKSB7CiAgICAgIGlmIChhcnIpIHsKICAgICAgICB2YXIgaW5kZXggPSBhcnIuaW5kZXhPZihpdGVtKTsKICAgICAgICAwIDw9IGluZGV4ICYmIGFyci5zcGxpY2UoaW5kZXgsIDEpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSBhcnJSZW1vdmU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmlwdGlvbi5qcwp2YXIgcmVxdWlyZV9TdWJzY3JpcHRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3Vic2NyaXB0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1N1YnNjcmlwdGlvbiA9IGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBVbnN1YnNjcmlwdGlvbkVycm9yXzEgPSByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFN1YnNjcmlwdGlvbjIoaW5pdGlhbFRlYXJkb3duKSB7CiAgICAgICAgdGhpcy5pbml0aWFsVGVhcmRvd24gPSBpbml0aWFsVGVhcmRvd247CiAgICAgICAgdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBudWxsOwogICAgICAgIHRoaXMuX2ZpbmFsaXplcnMgPSBudWxsOwogICAgICB9CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgdmFyIGVycm9yczsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICAgIGlmIChfcGFyZW50YWdlKSB7CiAgICAgICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IG51bGw7CiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpKSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9wYXJlbnRhZ2VfMSA9IF9fdmFsdWVzKF9wYXJlbnRhZ2UpLCBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCk7ICFfcGFyZW50YWdlXzFfMS5kb25lOyBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgICAgdmFyIHBhcmVudF8xID0gX3BhcmVudGFnZV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgICAgIHBhcmVudF8xLnJlbW92ZSh0aGlzKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgaWYgKF9wYXJlbnRhZ2VfMV8xICYmICFfcGFyZW50YWdlXzFfMS5kb25lICYmIChfYSA9IF9wYXJlbnRhZ2VfMS5yZXR1cm4pKSBfYS5jYWxsKF9wYXJlbnRhZ2VfMSk7CiAgICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF9wYXJlbnRhZ2UucmVtb3ZlKHRoaXMpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgaW5pdGlhbEZpbmFsaXplciA9IHRoaXMuaW5pdGlhbFRlYXJkb3duOwogICAgICAgICAgaWYgKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGluaXRpYWxGaW5hbGl6ZXIpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaW5pdGlhbEZpbmFsaXplcigpOwogICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgZXJyb3JzID0gZSBpbnN0YW5jZW9mIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yID8gZS5lcnJvcnMgOiBbZV07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHZhciBfZmluYWxpemVycyA9IHRoaXMuX2ZpbmFsaXplcnM7CiAgICAgICAgICBpZiAoX2ZpbmFsaXplcnMpIHsKICAgICAgICAgICAgdGhpcy5fZmluYWxpemVycyA9IG51bGw7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2ZpbmFsaXplcnNfMSA9IF9fdmFsdWVzKF9maW5hbGl6ZXJzKSwgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCk7ICFfZmluYWxpemVyc18xXzEuZG9uZTsgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgIHZhciBmaW5hbGl6ZXIgPSBfZmluYWxpemVyc18xXzEudmFsdWU7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBleGVjRmluYWxpemVyKGZpbmFsaXplcik7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgZXJyb3JzID0gZXJyb3JzICE9PSBudWxsICYmIGVycm9ycyAhPT0gdm9pZCAwID8gZXJyb3JzIDogW107CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcikgewogICAgICAgICAgICAgICAgICAgIGVycm9ycyA9IF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGVycm9ycykpLCBfX3JlYWQoZXJyLmVycm9ycykpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKGVycik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMl8xKSB7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9maW5hbGl6ZXJzXzFfMSAmJiAhX2ZpbmFsaXplcnNfMV8xLmRvbmUgJiYgKF9iID0gX2ZpbmFsaXplcnNfMS5yZXR1cm4pKSBfYi5jYWxsKF9maW5hbGl6ZXJzXzEpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8yKSB0aHJvdyBlXzIuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXJyb3JzKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcihlcnJvcnMpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHRlYXJkb3duICYmIHRlYXJkb3duICE9PSB0aGlzKSB7CiAgICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgICAgZXhlY0ZpbmFsaXplcih0ZWFyZG93bik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGVhcmRvd24gaW5zdGFuY2VvZiBTdWJzY3JpcHRpb24yKSB7CiAgICAgICAgICAgICAgaWYgKHRlYXJkb3duLmNsb3NlZCB8fCB0ZWFyZG93bi5faGFzUGFyZW50KHRoaXMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRlYXJkb3duLl9hZGRQYXJlbnQodGhpcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgKHRoaXMuX2ZpbmFsaXplcnMgPSAoX2EgPSB0aGlzLl9maW5hbGl6ZXJzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXSkucHVzaCh0ZWFyZG93bik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5faGFzUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgcmV0dXJuIF9wYXJlbnRhZ2UgPT09IHBhcmVudCB8fCBBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpICYmIF9wYXJlbnRhZ2UuaW5jbHVkZXMocGFyZW50KTsKICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuX2FkZFBhcmVudCA9IGZ1bmN0aW9uKHBhcmVudCkgewogICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkgPyAoX3BhcmVudGFnZS5wdXNoKHBhcmVudCksIF9wYXJlbnRhZ2UpIDogX3BhcmVudGFnZSA/IFtfcGFyZW50YWdlLCBwYXJlbnRdIDogcGFyZW50OwogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5fcmVtb3ZlUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgaWYgKF9wYXJlbnRhZ2UgPT09IHBhcmVudCkgewogICAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gbnVsbDsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkpIHsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShfcGFyZW50YWdlLCBwYXJlbnQpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUucmVtb3ZlID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2ZpbmFsaXplcnMgPSB0aGlzLl9maW5hbGl6ZXJzOwogICAgICAgIF9maW5hbGl6ZXJzICYmIGFyclJlbW92ZV8xLmFyclJlbW92ZShfZmluYWxpemVycywgdGVhcmRvd24pOwogICAgICAgIGlmICh0ZWFyZG93biBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbjIpIHsKICAgICAgICAgIHRlYXJkb3duLl9yZW1vdmVQYXJlbnQodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLkVNUFRZID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVtcHR5ID0gbmV3IFN1YnNjcmlwdGlvbjIoKTsKICAgICAgICBlbXB0eS5jbG9zZWQgPSB0cnVlOwogICAgICAgIHJldHVybiBlbXB0eTsKICAgICAgfSgpOwogICAgICByZXR1cm4gU3Vic2NyaXB0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbjsKICAgIGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IFN1YnNjcmlwdGlvbi5FTVBUWTsKICAgIGZ1bmN0aW9uIGlzU3Vic2NyaXB0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbiB8fCB2YWx1ZSAmJiAiY2xvc2VkIiBpbiB2YWx1ZSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5yZW1vdmUpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmFkZCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUudW5zdWJzY3JpYmUpOwogICAgfQogICAgZXhwb3J0czIuaXNTdWJzY3JpcHRpb24gPSBpc1N1YnNjcmlwdGlvbjsKICAgIGZ1bmN0aW9uIGV4ZWNGaW5hbGl6ZXIoZmluYWxpemVyKSB7CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihmaW5hbGl6ZXIpKSB7CiAgICAgICAgZmluYWxpemVyKCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZmluYWxpemVyLnVuc3Vic2NyaWJlKCk7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvY29uZmlnLmpzCnZhciByZXF1aXJlX2NvbmZpZyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9jb25maWcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHsKICAgICAgb25VbmhhbmRsZWRFcnJvcjogbnVsbCwKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uOiBudWxsLAogICAgICBQcm9taXNlOiB2b2lkIDAsCiAgICAgIHVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc6IGZhbHNlLAogICAgICB1c2VEZXByZWNhdGVkTmV4dENvbnRleHQ6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzCnZhciByZXF1aXJlX3RpbWVvdXRQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB2b2lkIDA7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB7CiAgICAgIHNldFRpbWVvdXQ6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgaWYgKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5zZXRUaW1lb3V0KSB7CiAgICAgICAgICByZXR1cm4gZGVsZWdhdGUuc2V0VGltZW91dC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0VGltZW91dC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW2hhbmRsZXIsIHRpbWVvdXRdLCBfX3JlYWQoYXJncykpKTsKICAgICAgfSwKICAgICAgY2xlYXJUaW1lb3V0OiBmdW5jdGlvbihoYW5kbGUpIHsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFyVGltZW91dCkgfHwgY2xlYXJUaW1lb3V0KShoYW5kbGUpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3JlcG9ydFVuaGFuZGxlZEVycm9yLmpzCnZhciByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcmVwb3J0VW5oYW5kbGVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvbmZpZ18xID0gcmVxdWlyZV9jb25maWcoKTsKICAgIHZhciB0aW1lb3V0UHJvdmlkZXJfMSA9IHJlcXVpcmVfdGltZW91dFByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiByZXBvcnRVbmhhbmRsZWRFcnJvcihlcnIpIHsKICAgICAgdGltZW91dFByb3ZpZGVyXzEudGltZW91dFByb3ZpZGVyLnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIG9uVW5oYW5kbGVkRXJyb3IgPSBjb25maWdfMS5jb25maWcub25VbmhhbmRsZWRFcnJvcjsKICAgICAgICBpZiAob25VbmhhbmRsZWRFcnJvcikgewogICAgICAgICAgb25VbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBlcnI7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gcmVwb3J0VW5oYW5kbGVkRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcwp2YXIgcmVxdWlyZV9ub29wID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm9vcCA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIG5vb3AoKSB7CiAgICB9CiAgICBleHBvcnRzMi5ub29wID0gbm9vcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uRmFjdG9yaWVzLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbkZhY3RvcmllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb25GYWN0b3JpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZU5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLm5leHROb3RpZmljYXRpb24gPSBleHBvcnRzMi5lcnJvck5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY3JlYXRlTm90aWZpY2F0aW9uKCJDIiwgdm9pZCAwLCB2b2lkIDApOwogICAgfSgpOwogICAgZnVuY3Rpb24gZXJyb3JOb3RpZmljYXRpb24oZXJyb3IpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiRSIsIHZvaWQgMCwgZXJyb3IpOwogICAgfQogICAgZXhwb3J0czIuZXJyb3JOb3RpZmljYXRpb24gPSBlcnJvck5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG5leHROb3RpZmljYXRpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiTiIsIHZhbHVlLCB2b2lkIDApOwogICAgfQogICAgZXhwb3J0czIubmV4dE5vdGlmaWNhdGlvbiA9IG5leHROb3RpZmljYXRpb247CiAgICBmdW5jdGlvbiBjcmVhdGVOb3RpZmljYXRpb24oa2luZCwgdmFsdWUsIGVycm9yKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAga2luZCwKICAgICAgICB2YWx1ZSwKICAgICAgICBlcnJvcgogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlTm90aWZpY2F0aW9uID0gY3JlYXRlTm90aWZpY2F0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2Vycm9yQ29udGV4dC5qcwp2YXIgcmVxdWlyZV9lcnJvckNvbnRleHQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9lcnJvckNvbnRleHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNhcHR1cmVFcnJvciA9IGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IHZvaWQgMDsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgY29udGV4dCA9IG51bGw7CiAgICBmdW5jdGlvbiBlcnJvckNvbnRleHQoY2IpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nKSB7CiAgICAgICAgdmFyIGlzUm9vdCA9ICFjb250ZXh0OwogICAgICAgIGlmIChpc1Jvb3QpIHsKICAgICAgICAgIGNvbnRleHQgPSB7IGVycm9yVGhyb3duOiBmYWxzZSwgZXJyb3I6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgY2IoKTsKICAgICAgICBpZiAoaXNSb290KSB7CiAgICAgICAgICB2YXIgX2EgPSBjb250ZXh0LCBlcnJvclRocm93biA9IF9hLmVycm9yVGhyb3duLCBlcnJvciA9IF9hLmVycm9yOwogICAgICAgICAgY29udGV4dCA9IG51bGw7CiAgICAgICAgICBpZiAoZXJyb3JUaHJvd24pIHsKICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGNiKCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IGVycm9yQ29udGV4dDsKICAgIGZ1bmN0aW9uIGNhcHR1cmVFcnJvcihlcnIpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nICYmIGNvbnRleHQpIHsKICAgICAgICBjb250ZXh0LmVycm9yVGhyb3duID0gdHJ1ZTsKICAgICAgICBjb250ZXh0LmVycm9yID0gZXJyOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5jYXB0dXJlRXJyb3IgPSBjYXB0dXJlRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfU3Vic2NyaWJlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVNUFRZX09CU0VSVkVSID0gZXhwb3J0czIuU2FmZVN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgcmVwb3J0VW5oYW5kbGVkRXJyb3JfMSA9IHJlcXVpcmVfcmVwb3J0VW5oYW5kbGVkRXJyb3IoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBOb3RpZmljYXRpb25GYWN0b3JpZXNfMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uRmFjdG9yaWVzKCk7CiAgICB2YXIgdGltZW91dFByb3ZpZGVyXzEgPSByZXF1aXJlX3RpbWVvdXRQcm92aWRlcigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJzY3JpYmVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3Vic2NyaWJlcjIoZGVzdGluYXRpb24pIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLmlzU3RvcHBlZCA9IGZhbHNlOwogICAgICAgIGlmIChkZXN0aW5hdGlvbikgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBkZXN0aW5hdGlvbjsKICAgICAgICAgIGlmIChTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbihkZXN0aW5hdGlvbikpIHsKICAgICAgICAgICAgZGVzdGluYXRpb24uYWRkKF90aGlzKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFN1YnNjcmliZXIyLmNyZWF0ZSA9IGZ1bmN0aW9uKG5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHJldHVybiBuZXcgU2FmZVN1YnNjcmliZXIobmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5uZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX25leHQodmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLmVycm9yTm90aWZpY2F0aW9uKGVyciksIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLkNPTVBMRVRFX05PVElGSUNBVElPTiwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgIHRoaXMuX2NvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gbnVsbDsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fbmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5uZXh0KHZhbHVlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLl9lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHRyeSB7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5jb21wbGV0ZSgpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gU3Vic2NyaWJlcjI7CiAgICB9KFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbik7CiAgICBleHBvcnRzMi5TdWJzY3JpYmVyID0gU3Vic2NyaWJlcjsKICAgIHZhciBfYmluZCA9IEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kOwogICAgZnVuY3Rpb24gYmluZChmbiwgdGhpc0FyZykgewogICAgICByZXR1cm4gX2JpbmQuY2FsbChmbiwgdGhpc0FyZyk7CiAgICB9CiAgICB2YXIgQ29uc3VtZXJPYnNlcnZlciA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBDb25zdW1lck9ic2VydmVyMihwYXJ0aWFsT2JzZXJ2ZXIpIHsKICAgICAgICB0aGlzLnBhcnRpYWxPYnNlcnZlciA9IHBhcnRpYWxPYnNlcnZlcjsKICAgICAgfQogICAgICBDb25zdW1lck9ic2VydmVyMi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIubmV4dCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuZXJyb3IpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5lcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuY29tcGxldGUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIENvbnN1bWVyT2JzZXJ2ZXIyOwogICAgfSgpOwogICAgdmFyIFNhZmVTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTYWZlU3Vic2NyaWJlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFNhZmVTdWJzY3JpYmVyMihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICB2YXIgcGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgIW9ic2VydmVyT3JOZXh0KSB7CiAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSB7CiAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0ICE9PSBudWxsICYmIG9ic2VydmVyT3JOZXh0ICE9PSB2b2lkIDAgPyBvYnNlcnZlck9yTmV4dCA6IHZvaWQgMCwKICAgICAgICAgICAgZXJyb3I6IGVycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6IHZvaWQgMCwKICAgICAgICAgICAgY29tcGxldGU6IGNvbXBsZXRlICE9PSBudWxsICYmIGNvbXBsZXRlICE9PSB2b2lkIDAgPyBjb21wbGV0ZSA6IHZvaWQgMAogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdmFyIGNvbnRleHRfMTsKICAgICAgICAgIGlmIChfdGhpcyAmJiBjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZE5leHRDb250ZXh0KSB7CiAgICAgICAgICAgIGNvbnRleHRfMSA9IE9iamVjdC5jcmVhdGUob2JzZXJ2ZXJPck5leHQpOwogICAgICAgICAgICBjb250ZXh0XzEudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gewogICAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0Lm5leHQgJiYgYmluZChvYnNlcnZlck9yTmV4dC5uZXh0LCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGVycm9yOiBvYnNlcnZlck9yTmV4dC5lcnJvciAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmVycm9yLCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGNvbXBsZXRlOiBvYnNlcnZlck9yTmV4dC5jb21wbGV0ZSAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmNvbXBsZXRlLCBjb250ZXh0XzEpCiAgICAgICAgICAgIH07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSBvYnNlcnZlck9yTmV4dDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBuZXcgQ29uc3VtZXJPYnNlcnZlcihwYXJ0aWFsT2JzZXJ2ZXIpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICByZXR1cm4gU2FmZVN1YnNjcmliZXIyOwogICAgfShTdWJzY3JpYmVyKTsKICAgIGV4cG9ydHMyLlNhZmVTdWJzY3JpYmVyID0gU2FmZVN1YnNjcmliZXI7CiAgICBmdW5jdGlvbiBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnJvcikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcpIHsKICAgICAgICBlcnJvckNvbnRleHRfMS5jYXB0dXJlRXJyb3IoZXJyb3IpOwogICAgICB9IGVsc2UgewogICAgICAgIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkZWZhdWx0RXJyb3JIYW5kbGVyKGVycikgewogICAgICB0aHJvdyBlcnI7CiAgICB9CiAgICBmdW5jdGlvbiBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcikgewogICAgICB2YXIgb25TdG9wcGVkTm90aWZpY2F0aW9uID0gY29uZmlnXzEuY29uZmlnLm9uU3RvcHBlZE5vdGlmaWNhdGlvbjsKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uICYmIHRpbWVvdXRQcm92aWRlcl8xLnRpbWVvdXRQcm92aWRlci5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBvblN0b3BwZWROb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUiA9IHsKICAgICAgY2xvc2VkOiB0cnVlLAogICAgICBuZXh0OiBub29wXzEubm9vcCwKICAgICAgZXJyb3I6IGRlZmF1bHRFcnJvckhhbmRsZXIsCiAgICAgIGNvbXBsZXRlOiBub29wXzEubm9vcAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL29ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfb2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvb2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLm9ic2VydmFibGUgfHwgIkBAb2JzZXJ2YWJsZSI7CiAgICB9KCk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaWRlbnRpdHkuanMKdmFyIHJlcXVpcmVfaWRlbnRpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pZGVudGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWRlbnRpdHkgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpZGVudGl0eSh4KSB7CiAgICAgIHJldHVybiB4OwogICAgfQogICAgZXhwb3J0czIuaWRlbnRpdHkgPSBpZGVudGl0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzCnZhciByZXF1aXJlX3BpcGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5waXBlRnJvbUFycmF5ID0gZXhwb3J0czIucGlwZSA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcGlwZSgpIHsKICAgICAgdmFyIGZucyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGZuc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBwaXBlRnJvbUFycmF5KGZucyk7CiAgICB9CiAgICBleHBvcnRzMi5waXBlID0gcGlwZTsKICAgIGZ1bmN0aW9uIHBpcGVGcm9tQXJyYXkoZm5zKSB7CiAgICAgIGlmIChmbnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgaWYgKGZucy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZm5zWzBdOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbiBwaXBlZChpbnB1dCkgewogICAgICAgIHJldHVybiBmbnMucmVkdWNlKGZ1bmN0aW9uKHByZXYsIGZuKSB7CiAgICAgICAgICByZXR1cm4gZm4ocHJldik7CiAgICAgICAgfSwgaW5wdXQpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucGlwZUZyb21BcnJheSA9IHBpcGVGcm9tQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9PYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIHZhciBwaXBlXzEgPSByZXF1aXJlX3BpcGUoKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXJyb3JDb250ZXh0XzEgPSByZXF1aXJlX2Vycm9yQ29udGV4dCgpOwogICAgdmFyIE9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gT2JzZXJ2YWJsZTIoc3Vic2NyaWJlKSB7CiAgICAgICAgaWYgKHN1YnNjcmliZSkgewogICAgICAgICAgdGhpcy5fc3Vic2NyaWJlID0gc3Vic2NyaWJlOwogICAgICAgIH0KICAgICAgfQogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUubGlmdCA9IGZ1bmN0aW9uKG9wZXJhdG9yKSB7CiAgICAgICAgdmFyIG9ic2VydmFibGUgPSBuZXcgT2JzZXJ2YWJsZTIoKTsKICAgICAgICBvYnNlcnZhYmxlLnNvdXJjZSA9IHRoaXM7CiAgICAgICAgb2JzZXJ2YWJsZS5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24ob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBpc1N1YnNjcmliZXIob2JzZXJ2ZXJPck5leHQpID8gb2JzZXJ2ZXJPck5leHQgOiBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUpOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYSA9IF90aGlzLCBvcGVyYXRvciA9IF9hLm9wZXJhdG9yLCBzb3VyY2UgPSBfYS5zb3VyY2U7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChvcGVyYXRvciA/IG9wZXJhdG9yLmNhbGwoc3Vic2NyaWJlciwgc291cmNlKSA6IHNvdXJjZSA/IF90aGlzLl9zdWJzY3JpYmUoc3Vic2NyaWJlcikgOiBfdGhpcy5fdHJ5U3Vic2NyaWJlKHN1YnNjcmliZXIpKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlcjsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzaW5rKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHJldHVybiB0aGlzLl9zdWJzY3JpYmUoc2luayk7CiAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICBzaW5rLmVycm9yKGVycik7CiAgICAgICAgfQogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuZm9yRWFjaCA9IGZ1bmN0aW9uKG5leHQsIHByb21pc2VDdG9yKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBwcm9taXNlQ3RvciA9IGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKTsKICAgICAgICByZXR1cm4gbmV3IHByb21pc2VDdG9yKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICAgICAgbmV4dDogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICByZWplY3QoZXJyKTsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICAgIGNvbXBsZXRlOiByZXNvbHZlCiAgICAgICAgICB9KTsKICAgICAgICAgIF90aGlzLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLnNvdXJjZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUucGlwZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvcGVyYXRpb25zID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIG9wZXJhdGlvbnNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHBpcGVfMS5waXBlRnJvbUFycmF5KG9wZXJhdGlvbnMpKHRoaXMpOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUudG9Qcm9taXNlID0gZnVuY3Rpb24ocHJvbWlzZUN0b3IpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHByb21pc2VDdG9yID0gZ2V0UHJvbWlzZUN0b3IocHJvbWlzZUN0b3IpOwogICAgICAgIHJldHVybiBuZXcgcHJvbWlzZUN0b3IoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICB2YXIgdmFsdWU7CiAgICAgICAgICBfdGhpcy5zdWJzY3JpYmUoZnVuY3Rpb24oeCkgewogICAgICAgICAgICByZXR1cm4gdmFsdWUgPSB4OwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIHJldHVybiByZWplY3QoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcmVzb2x2ZSh2YWx1ZSk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIuY3JlYXRlID0gZnVuY3Rpb24oc3Vic2NyaWJlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlMihzdWJzY3JpYmUpOwogICAgICB9OwogICAgICByZXR1cm4gT2JzZXJ2YWJsZTI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gT2JzZXJ2YWJsZTsKICAgIGZ1bmN0aW9uIGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmV0dXJuIChfYSA9IHByb21pc2VDdG9yICE9PSBudWxsICYmIHByb21pc2VDdG9yICE9PSB2b2lkIDAgPyBwcm9taXNlQ3RvciA6IGNvbmZpZ18xLmNvbmZpZy5Qcm9taXNlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBQcm9taXNlOwogICAgfQogICAgZnVuY3Rpb24gaXNPYnNlcnZlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUubmV4dCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuZXJyb3IpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmNvbXBsZXRlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU3Vic2NyaWJlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgdmFsdWUgaW5zdGFuY2VvZiBTdWJzY3JpYmVyXzEuU3Vic2NyaWJlciB8fCBpc09ic2VydmVyKHZhbHVlKSAmJiBTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbih2YWx1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcwp2YXIgcmVxdWlyZV9saWZ0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub3BlcmF0ZSA9IGV4cG9ydHMyLmhhc0xpZnQgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBoYXNMaWZ0KHNvdXJjZSkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc291cmNlID09PSBudWxsIHx8IHNvdXJjZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc291cmNlLmxpZnQpOwogICAgfQogICAgZXhwb3J0czIuaGFzTGlmdCA9IGhhc0xpZnQ7CiAgICBmdW5jdGlvbiBvcGVyYXRlKGluaXQpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIGlmIChoYXNMaWZ0KHNvdXJjZSkpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2UubGlmdChmdW5jdGlvbihsaWZ0ZWRTb3VyY2UpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICByZXR1cm4gaW5pdChsaWZ0ZWRTb3VyY2UsIHRoaXMpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICB0aGlzLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmFibGUgdG8gbGlmdCB1bmtub3duIE9ic2VydmFibGUgdHlwZSIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub3BlcmF0ZSA9IG9wZXJhdGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gZXhwb3J0czIuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUpIHsKICAgICAgcmV0dXJuIG5ldyBPcGVyYXRvclN1YnNjcmliZXIoZGVzdGluYXRpb24sIG9uTmV4dCwgb25Db21wbGV0ZSwgb25FcnJvciwgb25GaW5hbGl6ZSk7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIgPSBjcmVhdGVPcGVyYXRvclN1YnNjcmliZXI7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhPcGVyYXRvclN1YnNjcmliZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBPcGVyYXRvclN1YnNjcmliZXIyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUsIHNob3VsZFVuc3Vic2NyaWJlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgZGVzdGluYXRpb24pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMub25GaW5hbGl6ZSA9IG9uRmluYWxpemU7CiAgICAgICAgX3RoaXMuc2hvdWxkVW5zdWJzY3JpYmUgPSBzaG91bGRVbnN1YnNjcmliZTsKICAgICAgICBfdGhpcy5fbmV4dCA9IG9uTmV4dCA/IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBvbk5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX25leHQ7CiAgICAgICAgX3RoaXMuX2Vycm9yID0gb25FcnJvciA/IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25FcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyMikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIyKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9IDogX3N1cGVyLnByb3RvdHlwZS5fZXJyb3I7CiAgICAgICAgX3RoaXMuX2NvbXBsZXRlID0gb25Db21wbGV0ZSA/IGZ1bmN0aW9uKCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25Db21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX2NvbXBsZXRlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPcGVyYXRvclN1YnNjcmliZXIyLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoIXRoaXMuc2hvdWxkVW5zdWJzY3JpYmUgfHwgdGhpcy5zaG91bGRVbnN1YnNjcmliZSgpKSB7CiAgICAgICAgICB2YXIgY2xvc2VkXzEgPSB0aGlzLmNsb3NlZDsKICAgICAgICAgIF9zdXBlci5wcm90b3R5cGUudW5zdWJzY3JpYmUuY2FsbCh0aGlzKTsKICAgICAgICAgICFjbG9zZWRfMSAmJiAoKF9hID0gdGhpcy5vbkZpbmFsaXplKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzKSk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gT3BlcmF0b3JTdWJzY3JpYmVyMjsKICAgIH0oU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIpOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVmQ291bnQuanMKdmFyIHJlcXVpcmVfcmVmQ291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZkNvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWZDb3VudCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiByZWZDb3VudCgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBzb3VyY2UuX3JlZkNvdW50Kys7CiAgICAgICAgdmFyIHJlZkNvdW50ZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoIXNvdXJjZSB8fCBzb3VyY2UuX3JlZkNvdW50IDw9IDAgfHwgMCA8IC0tc291cmNlLl9yZWZDb3VudCkgewogICAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgdmFyIHNoYXJlZENvbm5lY3Rpb24gPSBzb3VyY2UuX2Nvbm5lY3Rpb247CiAgICAgICAgICB2YXIgY29ubiA9IGNvbm5lY3Rpb247CiAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgIGlmIChzaGFyZWRDb25uZWN0aW9uICYmICghY29ubiB8fCBzaGFyZWRDb25uZWN0aW9uID09PSBjb25uKSkgewogICAgICAgICAgICBzaGFyZWRDb25uZWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShyZWZDb3VudGVyKTsKICAgICAgICBpZiAoIXJlZkNvdW50ZXIuY2xvc2VkKSB7CiAgICAgICAgICBjb25uZWN0aW9uID0gc291cmNlLmNvbm5lY3QoKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVmQ291bnQgPSByZWZDb3VudDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9Db25uZWN0YWJsZU9ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvQ29ubmVjdGFibGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgcmVmQ291bnRfMSA9IHJlcXVpcmVfcmVmQ291bnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhDb25uZWN0YWJsZU9ic2VydmFibGUyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBDb25uZWN0YWJsZU9ic2VydmFibGUyKHNvdXJjZSwgc3ViamVjdEZhY3RvcnkpIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICBfdGhpcy5zdWJqZWN0RmFjdG9yeSA9IHN1YmplY3RGYWN0b3J5OwogICAgICAgIF90aGlzLl9zdWJqZWN0ID0gbnVsbDsKICAgICAgICBfdGhpcy5fcmVmQ291bnQgPSAwOwogICAgICAgIF90aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBpZiAobGlmdF8xLmhhc0xpZnQoc291cmNlKSkgewogICAgICAgICAgX3RoaXMubGlmdCA9IHNvdXJjZS5saWZ0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KCkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5nZXRTdWJqZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSB0aGlzLl9zdWJqZWN0OwogICAgICAgIGlmICghc3ViamVjdCB8fCBzdWJqZWN0LmlzU3RvcHBlZCkgewogICAgICAgICAgdGhpcy5fc3ViamVjdCA9IHRoaXMuc3ViamVjdEZhY3RvcnkoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX3N1YmplY3Q7CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90ZWFyZG93biA9IGZ1bmN0aW9uKCkgewogICAgICAgIHRoaXMuX3JlZkNvdW50ID0gMDsKICAgICAgICB2YXIgX2Nvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIHRoaXMuX3N1YmplY3QgPSB0aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBfY29ubmVjdGlvbiA9PT0gbnVsbCB8fCBfY29ubmVjdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Nvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIGNvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIGlmICghY29ubmVjdGlvbikgewogICAgICAgICAgY29ubmVjdGlvbiA9IHRoaXMuX2Nvbm5lY3Rpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgc3ViamVjdF8xID0gdGhpcy5nZXRTdWJqZWN0KCk7CiAgICAgICAgICBjb25uZWN0aW9uLmFkZCh0aGlzLnNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YmplY3RfMSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICAgIHN1YmplY3RfMS5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIF90aGlzLl90ZWFyZG93bigpOwogICAgICAgICAgICBzdWJqZWN0XzEuZXJyb3IoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICB9KSkpOwogICAgICAgICAgaWYgKGNvbm5lY3Rpb24uY2xvc2VkKSB7CiAgICAgICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24gPSBudWxsOwogICAgICAgICAgICBjb25uZWN0aW9uID0gU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uLkVNUFRZOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY29ubmVjdGlvbjsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUucmVmQ291bnQgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gcmVmQ291bnRfMS5yZWZDb3VudCgpKHRoaXMpOwogICAgICB9OwogICAgICByZXR1cm4gQ29ubmVjdGFibGVPYnNlcnZhYmxlMjsKICAgIH0oT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpOwogICAgZXhwb3J0czIuQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gQ29ubmVjdGFibGVPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIucGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuZGVsZWdhdGUgfHwgcGVyZm9ybWFuY2UpLm5vdygpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYW5pbWF0aW9uRnJhbWVQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIgPSB7CiAgICAgIHNjaGVkdWxlOiBmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgIHZhciByZXF1ZXN0ID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lOwogICAgICAgIHZhciBjYW5jZWwgPSBjYW5jZWxBbmltYXRpb25GcmFtZTsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSkgewogICAgICAgICAgcmVxdWVzdCA9IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZTsKICAgICAgICAgIGNhbmNlbCA9IGRlbGVnYXRlLmNhbmNlbEFuaW1hdGlvbkZyYW1lOwogICAgICAgIH0KICAgICAgICB2YXIgaGFuZGxlID0gcmVxdWVzdChmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICBjYW5jZWwgPSB2b2lkIDA7CiAgICAgICAgICBjYWxsYmFjayh0aW1lc3RhbXAyKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBjYW5jZWwgPT09IG51bGwgfHwgY2FuY2VsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjYW5jZWwoaGFuZGxlKTsKICAgICAgICB9KTsKICAgICAgfSwKICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lOiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZSkgfHwgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjYW5jZWxBbmltYXRpb25GcmFtZTogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIHJldHVybiAoKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5jYW5jZWxBbmltYXRpb25GcmFtZSkgfHwgY2FuY2VsQW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZG9tL2FuaW1hdGlvbkZyYW1lcy5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kb20vYW5pbWF0aW9uRnJhbWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXModGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcFByb3ZpZGVyID8gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSh0aW1lc3RhbXBQcm92aWRlcikgOiBERUZBVUxUX0FOSU1BVElPTl9GUkFNRVM7CiAgICB9CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSBhbmltYXRpb25GcmFtZXM7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXNGYWN0b3J5KHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcm92aWRlciA9IHRpbWVzdGFtcFByb3ZpZGVyIHx8IHBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXJfMS5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIHZhciBzdGFydCA9IHByb3ZpZGVyLm5vdygpOwogICAgICAgIHZhciBpZCA9IDA7CiAgICAgICAgdmFyIHJ1biA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBpZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICAgICAgaWQgPSAwOwogICAgICAgICAgICAgIHZhciBub3cgPSBwcm92aWRlci5ub3coKTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoewogICAgICAgICAgICAgICAgdGltZXN0YW1wOiB0aW1lc3RhbXBQcm92aWRlciA/IG5vdyA6IHRpbWVzdGFtcDIsCiAgICAgICAgICAgICAgICBlbGFwc2VkOiBub3cgLSBzdGFydAogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJ1bigpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHJ1bigpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChpZCkgewogICAgICAgICAgICBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5jYW5jZWxBbmltYXRpb25GcmFtZShpZCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICB2YXIgREVGQVVMVF9BTklNQVRJT05fRlJBTUVTID0gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSgpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL09iamVjdFVuc3Vic2NyaWJlZEVycm9yLmpzCnZhciByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE9iamVjdFVuc3Vic2NyaWJlZEVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk9iamVjdFVuc3Vic2NyaWJlZEVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAib2JqZWN0IHVuc3Vic2NyaWJlZCI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9TdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5vbnltb3VzU3ViamVjdCA9IGV4cG9ydHMyLlN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBfdGhpcy5vYnNlcnZlcnMgPSBbXTsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5oYXNFcnJvciA9IGZhbHNlOwogICAgICAgIF90aGlzLnRocm93bkVycm9yID0gbnVsbDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgU3ViamVjdDIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFub255bW91c1N1YmplY3QodGhpcywgdGhpcyk7CiAgICAgICAgc3ViamVjdC5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX3Rocm93SWZDbG9zZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBpZiAoIV90aGlzLmN1cnJlbnRPYnNlcnZlcnMpIHsKICAgICAgICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gQXJyYXkuZnJvbShfdGhpcy5vYnNlcnZlcnMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2IgPSBfX3ZhbHVlcyhfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzKSwgX2MgPSBfYi5uZXh0KCk7ICFfYy5kb25lOyBfYyA9IF9iLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gX2MudmFsdWU7CiAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9jICYmICFfYy5kb25lICYmIChfYSA9IF9iLnJldHVybikpIF9hLmNhbGwoX2IpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuZXJyb3JDb250ZXh0KGZ1bmN0aW9uKCkgewogICAgICAgICAgX3RoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICAgIGlmICghX3RoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICAgIF90aGlzLmhhc0Vycm9yID0gX3RoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgICAgX3RoaXMudGhyb3duRXJyb3IgPSBlcnI7CiAgICAgICAgICAgIHZhciBvYnNlcnZlcnMgPSBfdGhpcy5vYnNlcnZlcnM7CiAgICAgICAgICAgIHdoaWxlIChvYnNlcnZlcnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgICB2YXIgb2JzZXJ2ZXJzID0gX3RoaXMub2JzZXJ2ZXJzOwogICAgICAgICAgICB3aGlsZSAob2JzZXJ2ZXJzLmxlbmd0aCkgewogICAgICAgICAgICAgIG9ic2VydmVycy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgdGhpcy5vYnNlcnZlcnMgPSB0aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICB9OwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoU3ViamVjdDIucHJvdG90eXBlLCAib2JzZXJ2ZWQiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIHJldHVybiAoKF9hID0gdGhpcy5vYnNlcnZlcnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5sZW5ndGgpID4gMDsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUuY2FsbCh0aGlzLCBzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHRoaXMuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMoc3Vic2NyaWJlcik7CiAgICAgICAgcmV0dXJuIHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX2lubmVyU3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBvYnNlcnZlcnMgPSBfYS5vYnNlcnZlcnM7CiAgICAgICAgaWYgKGhhc0Vycm9yIHx8IGlzU3RvcHBlZCkgewogICAgICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgICB9CiAgICAgICAgdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBvYnNlcnZlcnMucHVzaChzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKG9ic2VydmVycywgc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBpc1N0b3BwZWQgPSBfYS5pc1N0b3BwZWQ7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKHRocm93bkVycm9yKTsKICAgICAgICB9IGVsc2UgaWYgKGlzU3RvcHBlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLmFzT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5jcmVhdGUgPSBmdW5jdGlvbihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBBbm9ueW1vdXNTdWJqZWN0KGRlc3RpbmF0aW9uLCBzb3VyY2UpOwogICAgICB9OwogICAgICByZXR1cm4gU3ViamVjdDI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLlN1YmplY3QgPSBTdWJqZWN0OwogICAgdmFyIEFub255bW91c1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFub255bW91c1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbm9ueW1vdXNTdWJqZWN0MihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5leHQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIEFub255bW91c1N1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSwgZXJyKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICAoX2IgPSAoX2EgPSB0aGlzLmRlc3RpbmF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29tcGxldGUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICByZXR1cm4gKF9iID0gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgfTsKICAgICAgcmV0dXJuIEFub255bW91c1N1YmplY3QyOwogICAgfShTdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFub255bW91c1N1YmplY3QgPSBBbm9ueW1vdXNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QuanMKdmFyIHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0JlaGF2aW9yU3ViamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhCZWhhdmlvclN1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBCZWhhdmlvclN1YmplY3QyKF92YWx1ZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gX3ZhbHVlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUsICJ2YWx1ZSIsIHsKICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3Vic2NyaXB0aW9uID0gX3N1cGVyLnByb3RvdHlwZS5fc3Vic2NyaWJlLmNhbGwodGhpcywgc3Vic2NyaWJlcik7CiAgICAgICAgIXN1YnNjcmlwdGlvbi5jbG9zZWQgJiYgc3Vic2NyaWJlci5uZXh0KHRoaXMuX3ZhbHVlKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBCZWhhdmlvclN1YmplY3QyLnByb3RvdHlwZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIGhhc0Vycm9yID0gX2EuaGFzRXJyb3IsIHRocm93bkVycm9yID0gX2EudGhyb3duRXJyb3IsIF92YWx1ZSA9IF9hLl92YWx1ZTsKICAgICAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgICAgIHRocm93IHRocm93bkVycm9yOwogICAgICAgIH0KICAgICAgICB0aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgcmV0dXJuIF92YWx1ZTsKICAgICAgfTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgX3N1cGVyLnByb3RvdHlwZS5uZXh0LmNhbGwodGhpcywgdGhpcy5fdmFsdWUgPSB2YWx1ZSk7CiAgICAgIH07CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3QyOwogICAgfShTdWJqZWN0XzEuU3ViamVjdCk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBCZWhhdmlvclN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlci5kZWxlZ2F0ZSB8fCBEYXRlKS5ub3coKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvUmVwbGF5U3ViamVjdC5qcwp2YXIgcmVxdWlyZV9SZXBsYXlTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgUmVwbGF5U3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUmVwbGF5U3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFJlcGxheVN1YmplY3QyKF9idWZmZXJTaXplLCBfd2luZG93VGltZSwgX3RpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgICAgaWYgKF9idWZmZXJTaXplID09PSB2b2lkIDApIHsKICAgICAgICAgIF9idWZmZXJTaXplID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIGlmIChfd2luZG93VGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBfd2luZG93VGltZSA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICBpZiAoX3RpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICAgIF90aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5fYnVmZmVyU2l6ZSA9IF9idWZmZXJTaXplOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gX3dpbmRvd1RpbWU7CiAgICAgICAgX3RoaXMuX3RpbWVzdGFtcFByb3ZpZGVyID0gX3RpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIF90aGlzLl9idWZmZXIgPSBbXTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gdHJ1ZTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gX3dpbmRvd1RpbWUgPT09IEluZmluaXR5OwogICAgICAgIF90aGlzLl9idWZmZXJTaXplID0gTWF0aC5tYXgoMSwgX2J1ZmZlclNpemUpOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gTWF0aC5tYXgoMSwgX3dpbmRvd1RpbWUpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfYnVmZmVyID0gX2EuX2J1ZmZlciwgX2luZmluaXRlVGltZVdpbmRvdyA9IF9hLl9pbmZpbml0ZVRpbWVXaW5kb3csIF90aW1lc3RhbXBQcm92aWRlciA9IF9hLl90aW1lc3RhbXBQcm92aWRlciwgX3dpbmRvd1RpbWUgPSBfYS5fd2luZG93VGltZTsKICAgICAgICBpZiAoIWlzU3RvcHBlZCkgewogICAgICAgICAgX2J1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICFfaW5maW5pdGVUaW1lV2luZG93ICYmIF9idWZmZXIucHVzaChfdGltZXN0YW1wUHJvdmlkZXIubm93KCkgKyBfd2luZG93VGltZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3RyaW1CdWZmZXIoKTsKICAgICAgICBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIFJlcGxheVN1YmplY3QyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHRoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICB0aGlzLl90cmltQnVmZmVyKCk7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHZhciBfYSA9IHRoaXMsIF9pbmZpbml0ZVRpbWVXaW5kb3cgPSBfYS5faW5maW5pdGVUaW1lV2luZG93LCBfYnVmZmVyID0gX2EuX2J1ZmZlcjsKICAgICAgICB2YXIgY29weSA9IF9idWZmZXIuc2xpY2UoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvcHkubGVuZ3RoICYmICFzdWJzY3JpYmVyLmNsb3NlZDsgaSArPSBfaW5maW5pdGVUaW1lV2luZG93ID8gMSA6IDIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjb3B5W2ldKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUuX3RyaW1CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfYnVmZmVyU2l6ZSA9IF9hLl9idWZmZXJTaXplLCBfdGltZXN0YW1wUHJvdmlkZXIgPSBfYS5fdGltZXN0YW1wUHJvdmlkZXIsIF9idWZmZXIgPSBfYS5fYnVmZmVyLCBfaW5maW5pdGVUaW1lV2luZG93ID0gX2EuX2luZmluaXRlVGltZVdpbmRvdzsKICAgICAgICB2YXIgYWRqdXN0ZWRCdWZmZXJTaXplID0gKF9pbmZpbml0ZVRpbWVXaW5kb3cgPyAxIDogMikgKiBfYnVmZmVyU2l6ZTsKICAgICAgICBfYnVmZmVyU2l6ZSA8IEluZmluaXR5ICYmIGFkanVzdGVkQnVmZmVyU2l6ZSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXIuc3BsaWNlKDAsIF9idWZmZXIubGVuZ3RoIC0gYWRqdXN0ZWRCdWZmZXJTaXplKTsKICAgICAgICBpZiAoIV9pbmZpbml0ZVRpbWVXaW5kb3cpIHsKICAgICAgICAgIHZhciBub3cgPSBfdGltZXN0YW1wUHJvdmlkZXIubm93KCk7CiAgICAgICAgICB2YXIgbGFzdCA9IDA7CiAgICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXJbaV0gPD0gbm93OyBpICs9IDIpIHsKICAgICAgICAgICAgbGFzdCA9IGk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0ICYmIF9idWZmZXIuc3BsaWNlKDAsIGxhc3QgKyAxKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IFJlcGxheVN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0FzeW5jU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9Bc3luY1N1YmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvQXN5bmNTdWJqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBBc3luY1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFzeW5jU3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gbnVsbDsKICAgICAgICBfdGhpcy5faGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICBfdGhpcy5faXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCBfaGFzVmFsdWUgPSBfYS5faGFzVmFsdWUsIF92YWx1ZSA9IF9hLl92YWx1ZSwgdGhyb3duRXJyb3IgPSBfYS50aHJvd25FcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmIChoYXNFcnJvcikgewogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcih0aHJvd25FcnJvcik7CiAgICAgICAgfSBlbHNlIGlmIChpc1N0b3BwZWQgfHwgX2lzQ29tcGxldGUpIHsKICAgICAgICAgIF9oYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLm5leHQoX3ZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICghdGhpcy5pc1N0b3BwZWQpIHsKICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICB0aGlzLl9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIF9oYXNWYWx1ZSA9IF9hLl9oYXNWYWx1ZSwgX3ZhbHVlID0gX2EuX3ZhbHVlLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmICghX2lzQ29tcGxldGUpIHsKICAgICAgICAgIHRoaXMuX2lzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgX2hhc1ZhbHVlICYmIF9zdXBlci5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsIF92YWx1ZSk7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuQXN5bmNTdWJqZWN0ID0gQXN5bmNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzCnZhciByZXF1aXJlX0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHJldHVybiBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIHJldHVybiBBY3Rpb24yOwogICAgfShTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24pOwogICAgZXhwb3J0czIuQWN0aW9uID0gQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW50ZXJ2YWxQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9pbnRlcnZhbFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9pbnRlcnZhbFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuaW50ZXJ2YWxQcm92aWRlciA9IHsKICAgICAgc2V0SW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0SW50ZXJ2YWwpIHsKICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZS5zZXRJbnRlcnZhbC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFySW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmludGVydmFsUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW50ZXJ2YWwpIHx8IGNsZWFySW50ZXJ2YWwpKGhhbmRsZSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY0FjdGlvbi5qcwp2YXIgcmVxdWlyZV9Bc3luY0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQWN0aW9uXzEgPSByZXF1aXJlX0FjdGlvbigpOwogICAgdmFyIGludGVydmFsUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW50ZXJ2YWxQcm92aWRlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBBc3luY0FjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXN5bmNBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBc3luY0FjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlOwogICAgICAgIHZhciBpZCA9IHRoaXMuaWQ7CiAgICAgICAgdmFyIHNjaGVkdWxlciA9IHRoaXMuc2NoZWR1bGVyOwogICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZChzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IHRydWU7CiAgICAgICAgdGhpcy5kZWxheSA9IGRlbGF5OwogICAgICAgIHRoaXMuaWQgPSAoX2EgPSB0aGlzLmlkKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLnJlcXVlc3RBc3luY0lkKHNjaGVkdWxlciwgdGhpcy5pZCwgZGVsYXkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBfaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLnNldEludGVydmFsKHNjaGVkdWxlci5mbHVzaC5iaW5kKHNjaGVkdWxlciwgdGhpcyksIGRlbGF5KTsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKF9zY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsICYmIHRoaXMuZGVsYXkgPT09IGRlbGF5ICYmIHRoaXMucGVuZGluZyA9PT0gZmFsc2UpIHsKICAgICAgICAgIHJldHVybiBpZDsKICAgICAgICB9CiAgICAgICAgaWYgKGlkICE9IG51bGwpIHsKICAgICAgICAgIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLmNsZWFySW50ZXJ2YWwoaWQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLmV4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9yID0gdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgcmV0dXJuIGVycm9yOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nID09PSBmYWxzZSAmJiB0aGlzLmlkICE9IG51bGwpIHsKICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHRoaXMuc2NoZWR1bGVyLCB0aGlzLmlkLCBudWxsKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuX2V4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgX2RlbGF5KSB7CiAgICAgICAgdmFyIGVycm9yZWQgPSBmYWxzZTsKICAgICAgICB2YXIgZXJyb3JWYWx1ZTsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy53b3JrKHN0YXRlKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBlcnJvcmVkID0gdHJ1ZTsKICAgICAgICAgIGVycm9yVmFsdWUgPSBlID8gZSA6IG5ldyBFcnJvcigiU2NoZWR1bGVkIGFjdGlvbiB0aHJldyBmYWxzeSBlcnJvciIpOwogICAgICAgIH0KICAgICAgICBpZiAoZXJyb3JlZCkgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgICAgcmV0dXJuIGVycm9yVmFsdWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdmFyIF9hID0gdGhpcywgaWQgPSBfYS5pZCwgc2NoZWR1bGVyID0gX2Euc2NoZWR1bGVyOwogICAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICAgIHRoaXMud29yayA9IHRoaXMuc3RhdGUgPSB0aGlzLnNjaGVkdWxlciA9IG51bGw7CiAgICAgICAgICB0aGlzLnBlbmRpbmcgPSBmYWxzZTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShhY3Rpb25zLCB0aGlzKTsKICAgICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHNjaGVkdWxlciwgaWQsIG51bGwpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5kZWxheSA9IG51bGw7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNBY3Rpb24yOwogICAgfShBY3Rpb25fMS5BY3Rpb24pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSBBc3luY0FjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMKdmFyIHJlcXVpcmVfSW1tZWRpYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvSW1tZWRpYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UZXN0VG9vbHMgPSBleHBvcnRzMi5JbW1lZGlhdGUgPSB2b2lkIDA7CiAgICB2YXIgbmV4dEhhbmRsZSA9IDE7CiAgICB2YXIgcmVzb2x2ZWQ7CiAgICB2YXIgYWN0aXZlSGFuZGxlcyA9IHt9OwogICAgZnVuY3Rpb24gZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSkgewogICAgICBpZiAoaGFuZGxlIGluIGFjdGl2ZUhhbmRsZXMpIHsKICAgICAgICBkZWxldGUgYWN0aXZlSGFuZGxlc1toYW5kbGVdOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLkltbWVkaWF0ZSA9IHsKICAgICAgc2V0SW1tZWRpYXRlOiBmdW5jdGlvbihjYikgewogICAgICAgIHZhciBoYW5kbGUgPSBuZXh0SGFuZGxlKys7CiAgICAgICAgYWN0aXZlSGFuZGxlc1toYW5kbGVdID0gdHJ1ZTsKICAgICAgICBpZiAoIXJlc29sdmVkKSB7CiAgICAgICAgICByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIH0KICAgICAgICByZXNvbHZlZC50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpICYmIGNiKCk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGhhbmRsZTsKICAgICAgfSwKICAgICAgY2xlYXJJbW1lZGlhdGU6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGVzdFRvb2xzID0gewogICAgICBwZW5kaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoYWN0aXZlSGFuZGxlcykubGVuZ3RoOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW1tZWRpYXRlUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbW1lZGlhdGVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBJbW1lZGlhdGVfMSA9IHJlcXVpcmVfSW1tZWRpYXRlKCk7CiAgICB2YXIgc2V0SW1tZWRpYXRlID0gSW1tZWRpYXRlXzEuSW1tZWRpYXRlLnNldEltbWVkaWF0ZTsKICAgIHZhciBjbGVhckltbWVkaWF0ZSA9IEltbWVkaWF0ZV8xLkltbWVkaWF0ZS5jbGVhckltbWVkaWF0ZTsKICAgIGV4cG9ydHMyLmltbWVkaWF0ZVByb3ZpZGVyID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnNldEltbWVkaWF0ZSkgfHwgc2V0SW1tZWRpYXRlKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW1tZWRpYXRlKSB8fCBjbGVhckltbWVkaWF0ZSkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzYXBBY3Rpb24uanMKdmFyIHJlcXVpcmVfQXNhcEFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcEFjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgaW1tZWRpYXRlUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIoKTsKICAgIHZhciBBc2FwQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcEFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXNhcEFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT09IG51bGwgJiYgZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgc2NoZWR1bGVyLmFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLl9zY2hlZHVsZWQgfHwgKHNjaGVkdWxlci5fc2NoZWR1bGVkID0gaW1tZWRpYXRlUHJvdmlkZXJfMS5pbW1lZGlhdGVQcm92aWRlci5zZXRJbW1lZGlhdGUoc2NoZWR1bGVyLmZsdXNoLmJpbmQoc2NoZWR1bGVyLCB2b2lkIDApKSk7CiAgICAgIH07CiAgICAgIEFzYXBBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsID8gZGVsYXkgPiAwIDogdGhpcy5kZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGlmIChpZCAhPSBudWxsICYmICgoX2EgPSBhY3Rpb25zW2FjdGlvbnMubGVuZ3RoIC0gMV0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pZCkgIT09IGlkKSB7CiAgICAgICAgICBpbW1lZGlhdGVQcm92aWRlcl8xLmltbWVkaWF0ZVByb3ZpZGVyLmNsZWFySW1tZWRpYXRlKGlkKTsKICAgICAgICAgIGlmIChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9PT0gaWQpIHsKICAgICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gQXNhcEFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgU2NoZWR1bGVyID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3Rvciwgbm93KSB7CiAgICAgICAgaWYgKG5vdyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBub3cgPSBTY2hlZHVsZXIyLm5vdzsKICAgICAgICB9CiAgICAgICAgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yID0gc2NoZWR1bGVyQWN0aW9uQ3RvcjsKICAgICAgICB0aGlzLm5vdyA9IG5vdzsKICAgICAgfQogICAgICBTY2hlZHVsZXIyLnByb3RvdHlwZS5zY2hlZHVsZSA9IGZ1bmN0aW9uKHdvcmssIGRlbGF5LCBzdGF0ZSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yKHRoaXMsIHdvcmspLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgIH07CiAgICAgIFNjaGVkdWxlcjIubm93ID0gZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyLm5vdzsKICAgICAgcmV0dXJuIFNjaGVkdWxlcjI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5TY2hlZHVsZXIgPSBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY1NjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc3luY1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1NjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU2NoZWR1bGVyMihTY2hlZHVsZXJBY3Rpb24sIG5vdykgewogICAgICAgIGlmIChub3cgPT09IHZvaWQgMCkgewogICAgICAgICAgbm93ID0gU2NoZWR1bGVyXzEuU2NoZWR1bGVyLm5vdzsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgU2NoZWR1bGVyQWN0aW9uLCBub3cpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuYWN0aW9ucyA9IFtdOwogICAgICAgIF90aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIGlmICh0aGlzLl9hY3RpdmUpIHsKICAgICAgICAgIGFjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoYWN0aW9uID0gYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc3luY1NjaGVkdWxlcjI7CiAgICB9KFNjaGVkdWxlcl8xLlNjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc3luY1NjaGVkdWxlciA9IEFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcFNjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc2FwU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc2FwU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBBc2FwU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcFNjaGVkdWxlcjIoKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFzYXBTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc2FwU2NoZWR1bGVyID0gQXNhcFNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzYXAuanMKdmFyIHJlcXVpcmVfYXNhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXNhcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLmFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXNhcEFjdGlvbl8xID0gcmVxdWlyZV9Bc2FwQWN0aW9uKCk7CiAgICB2YXIgQXNhcFNjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc2FwU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gbmV3IEFzYXBTY2hlZHVsZXJfMS5Bc2FwU2NoZWR1bGVyKEFzYXBBY3Rpb25fMS5Bc2FwQWN0aW9uKTsKICAgIGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXN5bmMuanMKdmFyIHJlcXVpcmVfYXN5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gbmV3IEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIoQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVBY3Rpb24uanMKdmFyIHJlcXVpcmVfUXVldWVBY3Rpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgUXVldWVBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBkZWxheTsKICAgICAgICB0aGlzLnN0YXRlID0gc3RhdGU7CiAgICAgICAgdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIHJldHVybiBkZWxheSA+IDAgfHwgdGhpcy5jbG9zZWQgPyBfc3VwZXIucHJvdG90eXBlLmV4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpIDogdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICB9OwogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCAmJiBkZWxheSA+IDAgfHwgZGVsYXkgPT0gbnVsbCAmJiB0aGlzLmRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5mbHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfTsKICAgICAgcmV0dXJuIFF1ZXVlQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5RdWV1ZUFjdGlvbiA9IFF1ZXVlQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfUXVldWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgUXVldWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICByZXR1cm4gUXVldWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gUXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9xdWV1ZS5qcwp2YXIgcmVxdWlyZV9xdWV1ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgUXVldWVBY3Rpb25fMSA9IHJlcXVpcmVfUXVldWVBY3Rpb24oKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlcl8xID0gcmVxdWlyZV9RdWV1ZVNjaGVkdWxlcigpOwogICAgZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBuZXcgUXVldWVTY2hlZHVsZXJfMS5RdWV1ZVNjaGVkdWxlcihRdWV1ZUFjdGlvbl8xLlF1ZXVlQWN0aW9uKTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZUFjdGlvbi5qcwp2YXIgcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQW5pbWF0aW9uRnJhbWVBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIoKTsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQW5pbWF0aW9uRnJhbWVBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbmltYXRpb25GcmFtZUFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9PSBudWxsICYmIGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5hY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5fc2NoZWR1bGVkIHx8IChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZXIuZmx1c2godm9pZCAwKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICAgIEFuaW1hdGlvbkZyYW1lQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCA/IGRlbGF5ID4gMCA6IHRoaXMuZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBpZiAoaWQgIT0gbnVsbCAmJiAoKF9hID0gYWN0aW9uc1thY3Rpb25zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWQpICE9PSBpZCkgewogICAgICAgICAgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQpOwogICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZUFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSBBbmltYXRpb25GcmFtZUFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBc3luY1NjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc3luY1NjaGVkdWxlcigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBbmltYXRpb25GcmFtZVNjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMigpIHsKICAgICAgICByZXR1cm4gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FuaW1hdGlvbkZyYW1lLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbl8xID0gcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IG5ldyBBbmltYXRpb25GcmFtZVNjaGVkdWxlcl8xLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKEFuaW1hdGlvbkZyYW1lQWN0aW9uXzEuQW5pbWF0aW9uRnJhbWVBY3Rpb24pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1ZpcnR1YWxUaW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9WaXJ0dWFsVGltZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBWaXJ0dWFsVGltZVNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbFRpbWVTY2hlZHVsZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBWaXJ0dWFsVGltZVNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3RvciwgbWF4RnJhbWVzKSB7CiAgICAgICAgaWYgKHNjaGVkdWxlckFjdGlvbkN0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc2NoZWR1bGVyQWN0aW9uQ3RvciA9IFZpcnR1YWxBY3Rpb247CiAgICAgICAgfQogICAgICAgIGlmIChtYXhGcmFtZXMgPT09IHZvaWQgMCkgewogICAgICAgICAgbWF4RnJhbWVzID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlckFjdGlvbkN0b3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIF90aGlzLmZyYW1lOwogICAgICAgIH0pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMubWF4RnJhbWVzID0gbWF4RnJhbWVzOwogICAgICAgIF90aGlzLmZyYW1lID0gMDsKICAgICAgICBfdGhpcy5pbmRleCA9IC0xOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBWaXJ0dWFsVGltZVNjaGVkdWxlcjIucHJvdG90eXBlLmZsdXNoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgYWN0aW9ucyA9IF9hLmFjdGlvbnMsIG1heEZyYW1lcyA9IF9hLm1heEZyYW1lczsKICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdmFyIGFjdGlvbjsKICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5kZWxheSA8PSBtYXhGcmFtZXMpIHsKICAgICAgICAgIGFjdGlvbnMuc2hpZnQoKTsKICAgICAgICAgIHRoaXMuZnJhbWUgPSBhY3Rpb24uZGVsYXk7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgd2hpbGUgKGFjdGlvbiA9IGFjdGlvbnMuc2hpZnQoKSkgewogICAgICAgICAgICBhY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbFRpbWVTY2hlZHVsZXIyLmZyYW1lVGltZUZhY3RvciA9IDEwOwogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB2YXIgVmlydHVhbEFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFZpcnR1YWxBY3Rpb24yKHNjaGVkdWxlciwgd29yaywgaW5kZXgpIHsKICAgICAgICBpZiAoaW5kZXggPT09IHZvaWQgMCkgewogICAgICAgICAgaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggKz0gMTsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5pbmRleCA9IGluZGV4OwogICAgICAgIF90aGlzLmFjdGl2ZSA9IHRydWU7CiAgICAgICAgX3RoaXMuaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggPSBpbmRleDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKE51bWJlci5pc0Zpbml0ZShkZWxheSkpIHsKICAgICAgICAgIGlmICghdGhpcy5pZCkgewogICAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgdmFyIGFjdGlvbiA9IG5ldyBWaXJ0dWFsQWN0aW9uMih0aGlzLnNjaGVkdWxlciwgdGhpcy53b3JrKTsKICAgICAgICAgIHRoaXMuYWRkKGFjdGlvbik7CiAgICAgICAgICByZXR1cm4gYWN0aW9uLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24uRU1QVFk7CiAgICAgICAgfQogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBzY2hlZHVsZXIuZnJhbWUgKyBkZWxheTsKICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICBhY3Rpb25zLnNvcnQoVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMpOwogICAgICAgIHJldHVybiAxOwogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIFZpcnR1YWxBY3Rpb24yLnByb3RvdHlwZS5fZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIGlmICh0aGlzLmFjdGl2ZSA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMgPSBmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgaWYgKGEuZGVsYXkgPT09IGIuZGVsYXkpIHsKICAgICAgICAgIGlmIChhLmluZGV4ID09PSBiLmluZGV4KSB7CiAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgfSBlbHNlIGlmIChhLmluZGV4ID4gYi5pbmRleCkgewogICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGEuZGVsYXkgPiBiLmRlbGF5KSB7CiAgICAgICAgICByZXR1cm4gMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIFZpcnR1YWxBY3Rpb24yOwogICAgfShBc3luY0FjdGlvbl8xLkFzeW5jQWN0aW9uKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxBY3Rpb24gPSBWaXJ0dWFsQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuRU1QVFkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBleHBvcnRzMi5FTVBUWSA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICB9KTsKICAgIGZ1bmN0aW9uIGVtcHR5KHNjaGVkdWxlcikgewogICAgICByZXR1cm4gc2NoZWR1bGVyID8gZW1wdHlTY2hlZHVsZWQoc2NoZWR1bGVyKSA6IGV4cG9ydHMyLkVNUFRZOwogICAgfQogICAgZXhwb3J0czIuZW1wdHkgPSBlbXB0eTsKICAgIGZ1bmN0aW9uIGVtcHR5U2NoZWR1bGVkKHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfaXNTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1NjaGVkdWxlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuc2NoZWR1bGUpOwogICAgfQogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSBpc1NjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzCnZhciByZXF1aXJlX2FyZ3MgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wb3BOdW1iZXIgPSBleHBvcnRzMi5wb3BTY2hlZHVsZXIgPSBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgZnVuY3Rpb24gbGFzdChhcnIpIHsKICAgICAgcmV0dXJuIGFyclthcnIubGVuZ3RoIC0gMV07CiAgICB9CiAgICBmdW5jdGlvbiBwb3BSZXN1bHRTZWxlY3RvcihhcmdzKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihsYXN0KGFyZ3MpKSA/IGFyZ3MucG9wKCkgOiB2b2lkIDA7CiAgICB9CiAgICBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHBvcFJlc3VsdFNlbGVjdG9yOwogICAgZnVuY3Rpb24gcG9wU2NoZWR1bGVyKGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIobGFzdChhcmdzKSkgPyBhcmdzLnBvcCgpIDogdm9pZCAwOwogICAgfQogICAgZXhwb3J0czIucG9wU2NoZWR1bGVyID0gcG9wU2NoZWR1bGVyOwogICAgZnVuY3Rpb24gcG9wTnVtYmVyKGFyZ3MsIGRlZmF1bHRWYWx1ZSkgewogICAgICByZXR1cm4gdHlwZW9mIGxhc3QoYXJncykgPT09ICJudW1iZXIiID8gYXJncy5wb3AoKSA6IGRlZmF1bHRWYWx1ZTsKICAgIH0KICAgIGV4cG9ydHMyLnBvcE51bWJlciA9IHBvcE51bWJlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FycmF5TGlrZS5qcwp2YXIgcmVxdWlyZV9pc0FycmF5TGlrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXJyYXlMaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0FycmF5TGlrZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmlzQXJyYXlMaWtlID0gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4geCAmJiB0eXBlb2YgeC5sZW5ndGggPT09ICJudW1iZXIiICYmIHR5cGVvZiB4ICE9PSAiZnVuY3Rpb24iOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1Byb21pc2UuanMKdmFyIHJlcXVpcmVfaXNQcm9taXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1Byb21pc2UodmFsdWUpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZS50aGVuKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0ludGVyb3BPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaW5wdXRbb2JzZXJ2YWJsZV8xLm9ic2VydmFibGVdKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSW50ZXJvcE9ic2VydmFibGUgPSBpc0ludGVyb3BPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FzeW5jSXRlcmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzQXN5bmNJdGVyYWJsZSA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZShvYmopIHsKICAgICAgcmV0dXJuIFN5bWJvbC5hc3luY0l0ZXJhdG9yICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9ialtTeW1ib2wuYXN5bmNJdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNBc3luY0l0ZXJhYmxlID0gaXNBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dVbm9ic2VydmFibGVFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpIHsKICAgICAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiICsgKGlucHV0ICE9PSBudWxsICYmIHR5cGVvZiBpbnB1dCA9PT0gIm9iamVjdCIgPyAiYW4gaW52YWxpZCBvYmplY3QiIDogIiciICsgaW5wdXQgKyAiJyIpICsgIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IgPSBjcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL2l0ZXJhdG9yLmpzCnZhciByZXF1aXJlX2l0ZXJhdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3N5bWJvbC9pdGVyYXRvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXRlcmF0b3IgPSBleHBvcnRzMi5nZXRTeW1ib2xJdGVyYXRvciA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGdldFN5bWJvbEl0ZXJhdG9yKCkgewogICAgICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gImZ1bmN0aW9uIiB8fCAhU3ltYm9sLml0ZXJhdG9yKSB7CiAgICAgICAgcmV0dXJuICJAQGl0ZXJhdG9yIjsKICAgICAgfQogICAgICByZXR1cm4gU3ltYm9sLml0ZXJhdG9yOwogICAgfQogICAgZXhwb3J0czIuZ2V0U3ltYm9sSXRlcmF0b3IgPSBnZXRTeW1ib2xJdGVyYXRvcjsKICAgIGV4cG9ydHMyLml0ZXJhdG9yID0gZ2V0U3ltYm9sSXRlcmF0b3IoKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX2lzSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc0l0ZXJhYmxlKGlucHV0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpbnB1dCA9PT0gbnVsbCB8fCBpbnB1dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNJdGVyYWJsZSA9IGlzSXRlcmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1JlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICB2YXIgX19hd2FpdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXQgfHwgZnVuY3Rpb24odikgewogICAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIF9fYXdhaXQgPyAodGhpcy52ID0gdiwgdGhpcykgOiBuZXcgX19hd2FpdCh2KTsKICAgIH07CiAgICB2YXIgX19hc3luY0dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXN5bmNHZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgZ2VuZXJhdG9yKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdOwogICAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpZiAoZ1tuXSkgaVtuXSA9IGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgICAgIHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHN0ZXAoZ1tuXSh2KSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgc2V0dGxlKHFbMF1bM10sIGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKHIpIHsKICAgICAgICByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7CiAgICAgICAgcmVzdW1lKCJuZXh0IiwgdmFsdWUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlamVjdCh2YWx1ZSkgewogICAgICAgIHJlc3VtZSgidGhyb3ciLCB2YWx1ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsKICAgICAgICBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOwogICAgICB9CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1JlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBfX2FzeW5jR2VuZXJhdG9yKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcl8xKCkgewogICAgICAgIHZhciByZWFkZXIsIF9hLCB2YWx1ZSwgZG9uZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2IpIHsKICAgICAgICAgIHN3aXRjaCAoX2IubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHJlYWRlciA9IHJlYWRhYmxlU3RyZWFtLmdldFJlYWRlcigpOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbMSwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMjsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmIChmYWxzZSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQocmVhZGVyLnJlYWQoKSldOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX2EgPSBfYi5zZW50KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICAgIGlmICghZG9uZSkgcmV0dXJuIFszLCA1XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodm9pZCAwKV07CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICByZXR1cm4gWzIsIF9iLnNlbnQoKV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodmFsdWUpXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIHJldHVybiBbNCwgX2Iuc2VudCgpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDJdOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvciA9IHJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3I7CiAgICBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtTGlrZShvYmopIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9iai5nZXRSZWFkZXIpOwogICAgfQogICAgZXhwb3J0czIuaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBpc1JlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbm5lckZyb20uanMKdmFyIHJlcXVpcmVfaW5uZXJGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW5uZXJGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fYXdhaXRlciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXRlciB8fCBmdW5jdGlvbih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHsKICAgICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsKICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbihyZXNvbHZlKSB7CiAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBzdGVwKGdlbmVyYXRvclsidGhyb3ciXSh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7CiAgICAgICAgICByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsKICAgICAgICB9CiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpOwogICAgICB9KTsKICAgIH07CiAgICB2YXIgX19nZW5lcmF0b3IgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2dlbmVyYXRvciB8fCBmdW5jdGlvbih0aGlzQXJnLCBib2R5KSB7CiAgICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRbMF0gJiAxKSB0aHJvdyB0WzFdOwogICAgICAgIHJldHVybiB0WzFdOwogICAgICB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnOwogICAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgInRocm93IjogdmVyYigxKSwgInJldHVybiI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0pLCBnOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24odikgewogICAgICAgICAgcmV0dXJuIHN0ZXAoW24sIHZdKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHsKICAgICAgICBpZiAoZikgdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpOwogICAgICAgIHdoaWxlIChfKSB0cnkgewogICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVsicmV0dXJuIl0gOiBvcFswXSA/IHlbInRocm93Il0gfHwgKCh0ID0geVsicmV0dXJuIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0OwogICAgICAgICAgaWYgKHkgPSAwLCB0KSBvcCA9IFtvcFswXSAmIDIsIHQudmFsdWVdOwogICAgICAgICAgc3dpdGNoIChvcFswXSkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9OwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHkgPSBvcFsxXTsKICAgICAgICAgICAgICBvcCA9IFswXTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIG9wID0gXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7CiAgICAgICAgICAgICAgICBfID0gMDsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDMgJiYgKCF0IHx8IG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gb3BbMV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsxXTsKICAgICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMl07CiAgICAgICAgICAgICAgICBfLm9wcy5wdXNoKG9wKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodFsyXSkgXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgb3AgPSBbNiwgZV07CiAgICAgICAgICB5ID0gMDsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgZiA9IHQgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsKICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9OwogICAgICB9CiAgICB9OwogICAgdmFyIF9fYXN5bmNWYWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2FzeW5jVmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICAgIHZhciBtID0gb1tTeW1ib2wuYXN5bmNJdGVyYXRvcl0sIGk7CiAgICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogKG8gPSB0eXBlb2YgX192YWx1ZXMgPT09ICJmdW5jdGlvbiIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpLCBpID0ge30sIHZlcmIoIm5leHQiKSwgdmVyYigidGhyb3ciKSwgdmVyYigicmV0dXJuIiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0sIGkpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpW25dID0gb1tuXSAmJiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgIHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCBkLCB2KSB7CiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZnVuY3Rpb24odjIpIHsKICAgICAgICAgIHJlc29sdmUoeyB2YWx1ZTogdjIsIGRvbmU6IGQgfSk7CiAgICAgICAgfSwgcmVqZWN0KTsKICAgICAgfQogICAgfTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbVJlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZXhwb3J0czIuZnJvbUl0ZXJhYmxlID0gZXhwb3J0czIuZnJvbVByb21pc2UgPSBleHBvcnRzMi5mcm9tQXJyYXlMaWtlID0gZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZXhwb3J0czIuaW5uZXJGcm9tID0gdm9pZCAwOwogICAgdmFyIGlzQXJyYXlMaWtlXzEgPSByZXF1aXJlX2lzQXJyYXlMaWtlKCk7CiAgICB2YXIgaXNQcm9taXNlXzEgPSByZXF1aXJlX2lzUHJvbWlzZSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc0l0ZXJhYmxlXzEgPSByZXF1aXJlX2lzSXRlcmFibGUoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEgPSByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBpbm5lckZyb20oaW5wdXQpIHsKICAgICAgaWYgKGlucHV0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpIHsKICAgICAgICByZXR1cm4gaW5wdXQ7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ICE9IG51bGwpIHsKICAgICAgICBpZiAoaXNJbnRlcm9wT2JzZXJ2YWJsZV8xLmlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUludGVyb3BPYnNlcnZhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUFycmF5TGlrZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1Byb21pc2VfMS5pc1Byb21pc2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbVByb21pc2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNBc3luY0l0ZXJhYmxlXzEuaXNBc3luY0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21Bc3luY0l0ZXJhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSXRlcmFibGVfMS5pc0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21JdGVyYWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLmlzUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21SZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgfQogICAgICB0aHJvdyB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuaW5uZXJGcm9tID0gaW5uZXJGcm9tOwogICAgZnVuY3Rpb24gZnJvbUludGVyb3BPYnNlcnZhYmxlKG9iaikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb2JzID0gb2JqW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSgpOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnMuc3Vic2NyaWJlKSkgewogICAgICAgICAgcmV0dXJuIG9icy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZnJvbUludGVyb3BPYnNlcnZhYmxlOwogICAgZnVuY3Rpb24gZnJvbUFycmF5TGlrZShhcnJheSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aCAmJiAhc3Vic2NyaWJlci5jbG9zZWQ7IGkrKykgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFycmF5W2ldKTsKICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21BcnJheUxpa2UgPSBmcm9tQXJyYXlMaWtlOwogICAgZnVuY3Rpb24gZnJvbVByb21pc2UocHJvbWlzZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmICghc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9KS50aGVuKG51bGwsIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Qcm9taXNlID0gZnJvbVByb21pc2U7CiAgICBmdW5jdGlvbiBmcm9tSXRlcmFibGUoaXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGZvciAodmFyIGl0ZXJhYmxlXzEgPSBfX3ZhbHVlcyhpdGVyYWJsZSksIGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpOyAhaXRlcmFibGVfMV8xLmRvbmU7IGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpKSB7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGl0ZXJhYmxlXzFfMS52YWx1ZTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmIChpdGVyYWJsZV8xXzEgJiYgIWl0ZXJhYmxlXzFfMS5kb25lICYmIChfYSA9IGl0ZXJhYmxlXzEucmV0dXJuKSkgX2EuY2FsbChpdGVyYWJsZV8xKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21JdGVyYWJsZSA9IGZyb21JdGVyYWJsZTsKICAgIGZ1bmN0aW9uIGZyb21Bc3luY0l0ZXJhYmxlKGFzeW5jSXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikuY2F0Y2goZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZnJvbUFzeW5jSXRlcmFibGU7CiAgICBmdW5jdGlvbiBmcm9tUmVhZGFibGVTdHJlYW1MaWtlKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBmcm9tQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IocmVhZGFibGVTdHJlYW0pKTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21SZWFkYWJsZVN0cmVhbUxpa2UgPSBmcm9tUmVhZGFibGVTdHJlYW1MaWtlOwogICAgZnVuY3Rpb24gcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikgewogICAgICB2YXIgYXN5bmNJdGVyYWJsZV8xLCBhc3luY0l0ZXJhYmxlXzFfMTsKICAgICAgdmFyIGVfMiwgX2E7CiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciB2YWx1ZSwgZV8yXzE7CiAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uKF9iKSB7CiAgICAgICAgICBzd2l0Y2ggKF9iLmxhYmVsKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfYi50cnlzLnB1c2goWzAsIDUsIDYsIDExXSk7CiAgICAgICAgICAgICAgYXN5bmNJdGVyYWJsZV8xID0gX19hc3luY1ZhbHVlcyhhc3luY0l0ZXJhYmxlKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDE7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gWzQsIGFzeW5jSXRlcmFibGVfMS5uZXh0KCldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgPSBfYi5zZW50KCksICFhc3luY0l0ZXJhYmxlXzFfMS5kb25lKSkgcmV0dXJuIFszLCA0XTsKICAgICAgICAgICAgICB2YWx1ZSA9IGFzeW5jSXRlcmFibGVfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gWzJdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfYi5sYWJlbCA9IDM7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBlXzJfMSA9IF9iLnNlbnQoKTsKICAgICAgICAgICAgICBlXzIgPSB7IGVycm9yOiBlXzJfMSB9OwogICAgICAgICAgICAgIHJldHVybiBbMywgMTFdOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX2IudHJ5cy5wdXNoKFs2LCAsIDksIDEwXSk7CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgJiYgIWFzeW5jSXRlcmFibGVfMV8xLmRvbmUgJiYgKF9hID0gYXN5bmNJdGVyYWJsZV8xLnJldHVybikpKSByZXR1cm4gWzMsIDhdOwogICAgICAgICAgICAgIHJldHVybiBbNCwgX2EuY2FsbChhc3luY0l0ZXJhYmxlXzEpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDg7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDEwXTsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbN107CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcwp2YXIgcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9leGVjdXRlU2NoZWR1bGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4ZWN1dGVTY2hlZHVsZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGV4ZWN1dGVTY2hlZHVsZShwYXJlbnRTdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgd29yaywgZGVsYXksIHJlcGVhdDIpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHJlcGVhdDIgPT09IHZvaWQgMCkgewogICAgICAgIHJlcGVhdDIgPSBmYWxzZTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVTdWJzY3JpcHRpb24gPSBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgd29yaygpOwogICAgICAgIGlmIChyZXBlYXQyKSB7CiAgICAgICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHRoaXMuc2NoZWR1bGUobnVsbCwgZGVsYXkpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgIH0KICAgICAgfSwgZGVsYXkpOwogICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHNjaGVkdWxlU3Vic2NyaXB0aW9uKTsKICAgICAgaWYgKCFyZXBlYXQyKSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlU3Vic2NyaXB0aW9uOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5leGVjdXRlU2NoZWR1bGUgPSBleGVjdXRlU2NoZWR1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMKdmFyIHJlcXVpcmVfb2JzZXJ2ZU9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVPbiA9IHZvaWQgMDsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gb2JzZXJ2ZU9uKHNjaGVkdWxlciwgZGVsYXkpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlT24gPSBvYnNlcnZlT247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdWJzY3JpYmVPbi5qcwp2YXIgcmVxdWlyZV9zdWJzY3JpYmVPbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3Vic2NyaWJlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN1YnNjcmliZU9uID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3Vic2NyaWJlT24oc2NoZWR1bGVyLCBkZWxheSkgewogICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgIGRlbGF5ID0gMDsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSwgZGVsYXkpKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zdWJzY3JpYmVPbiA9IHN1YnNjcmliZU9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZU9ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIG9ic2VydmVPbl8xID0gcmVxdWlyZV9vYnNlcnZlT24oKTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVPYnNlcnZhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCkucGlwZShzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uKHNjaGVkdWxlciksIG9ic2VydmVPbl8xLm9ic2VydmVPbihzY2hlZHVsZXIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlT2JzZXJ2YWJsZSA9IHNjaGVkdWxlT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZVByb21pc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVQcm9taXNlID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZVByb21pc2UgPSBzY2hlZHVsZVByb21pc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFycmF5LmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXJyYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGkgPSAwOwogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaSA9PT0gaW5wdXQubGVuZ3RoKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChpbnB1dFtpKytdKTsKICAgICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSBzY2hlZHVsZUFycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUl0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUl0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpdGVyYXRvcjsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGl0ZXJhdG9yID0gaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgX2E7CiAgICAgICAgICAgIHZhciB2YWx1ZTsKICAgICAgICAgICAgdmFyIGRvbmU7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgX2EgPSBpdGVyYXRvci5uZXh0KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChkb25lKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpdGVyYXRvciA9PT0gbnVsbCB8fCBpdGVyYXRvciA9PT0gdm9pZCAwID8gdm9pZCAwIDogaXRlcmF0b3IucmV0dXJuKSAmJiBpdGVyYXRvci5yZXR1cm4oKTsKICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlSXRlcmFibGUgPSBzY2hlZHVsZUl0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUFzeW5jSXRlcmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVBc3luY0l0ZXJhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKCFpbnB1dCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSXRlcmFibGUgY2Fubm90IGJlIG51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBpdGVyYXRvciA9IGlucHV0W1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOwogICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGl0ZXJhdG9yLm5leHQoKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewogICAgICAgICAgICAgIGlmIChyZXN1bHQuZG9uZSkgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQocmVzdWx0LnZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSwgMCwgdHJ1ZSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gc2NoZWR1bGVBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZSA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVBc3luY0l0ZXJhYmxlKCk7CiAgICB2YXIgaXNSZWFkYWJsZVN0cmVhbUxpa2VfMSA9IHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlQXN5bmNJdGVyYWJsZV8xLnNjaGVkdWxlQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IoaW5wdXQpLCBzY2hlZHVsZXIpOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBzY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVkID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUoKTsKICAgIHZhciBzY2hlZHVsZVByb21pc2VfMSA9IHJlcXVpcmVfc2NoZWR1bGVQcm9taXNlKCk7CiAgICB2YXIgc2NoZWR1bGVBcnJheV8xID0gcmVxdWlyZV9zY2hlZHVsZUFycmF5KCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICB2YXIgc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEgPSByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzUHJvbWlzZV8xID0gcmVxdWlyZV9pc1Byb21pc2UoKTsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNJdGVyYWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlXzEgPSByZXF1aXJlX3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICBpZiAoaW5wdXQgIT0gbnVsbCkgewogICAgICAgIGlmIChpc0ludGVyb3BPYnNlcnZhYmxlXzEuaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZU9ic2VydmFibGVfMS5zY2hlZHVsZU9ic2VydmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FycmF5TGlrZV8xLmlzQXJyYXlMaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlQXJyYXlfMS5zY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNQcm9taXNlXzEuaXNQcm9taXNlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlUHJvbWlzZV8xLnNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZV8xLmlzQXN5bmNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMS5zY2hlZHVsZUFzeW5jSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0l0ZXJhYmxlXzEuaXNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUl0ZXJhYmxlXzEuc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUmVhZGFibGVTdHJlYW1MaWtlXzEuaXNSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2VfMS5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdGhyb3cgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yKGlucHV0KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlZCA9IHNjaGVkdWxlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzCnZhciByZXF1aXJlX2Zyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlZF8xID0gcmVxdWlyZV9zY2hlZHVsZWQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBmcm9tKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlciA/IHNjaGVkdWxlZF8xLnNjaGVkdWxlZChpbnB1dCwgc2NoZWR1bGVyKSA6IGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tID0gZnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vZi5qcwp2YXIgcmVxdWlyZV9vZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vZiA9IHZvaWQgMDsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG9mKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKGFyZ3MsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5vZiA9IG9mOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiB0aHJvd0Vycm9yMihlcnJvck9yRXJyb3JGYWN0b3J5LCBzY2hlZHVsZXIpIHsKICAgICAgdmFyIGVycm9yRmFjdG9yeSA9IGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGVycm9yT3JFcnJvckZhY3RvcnkpID8gZXJyb3JPckVycm9yRmFjdG9yeSA6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlcnJvck9yRXJyb3JGYWN0b3J5OwogICAgICB9OwogICAgICB2YXIgaW5pdCA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnJvckZhY3RvcnkoKSk7CiAgICAgIH07CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoc2NoZWR1bGVyID8gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoaW5pdCwgMCwgc3Vic2NyaWJlcik7CiAgICAgIH0gOiBpbml0KTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB0aHJvd0Vycm9yMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVOb3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBOb3RpZmljYXRpb25LaW5kOwogICAgKGZ1bmN0aW9uKE5vdGlmaWNhdGlvbktpbmQyKSB7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJORVhUIl0gPSAiTiI7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJFUlJPUiJdID0gIkUiOwogICAgICBOb3RpZmljYXRpb25LaW5kMlsiQ09NUExFVEUiXSA9ICJDIjsKICAgIH0pKE5vdGlmaWNhdGlvbktpbmQgPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kIHx8IChleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0ge30pKTsKICAgIHZhciBOb3RpZmljYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gTm90aWZpY2F0aW9uMihraW5kLCB2YWx1ZSwgZXJyb3IpIHsKICAgICAgICB0aGlzLmtpbmQgPSBraW5kOwogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgICAgdGhpcy5oYXNWYWx1ZSA9IGtpbmQgPT09ICJOIjsKICAgICAgfQogICAgICBOb3RpZmljYXRpb24yLnByb3RvdHlwZS5vYnNlcnZlID0gZnVuY3Rpb24ob2JzZXJ2ZXIpIHsKICAgICAgICByZXR1cm4gb2JzZXJ2ZU5vdGlmaWNhdGlvbih0aGlzLCBvYnNlcnZlcik7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmRvID0gZnVuY3Rpb24obmV4dEhhbmRsZXIsIGVycm9ySGFuZGxlciwgY29tcGxldGVIYW5kbGVyKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgcmV0dXJuIGtpbmQgPT09ICJOIiA/IG5leHRIYW5kbGVyID09PSBudWxsIHx8IG5leHRIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBuZXh0SGFuZGxlcih2YWx1ZSkgOiBraW5kID09PSAiRSIgPyBlcnJvckhhbmRsZXIgPT09IG51bGwgfHwgZXJyb3JIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlcnJvckhhbmRsZXIoZXJyb3IpIDogY29tcGxldGVIYW5kbGVyID09PSBudWxsIHx8IGNvbXBsZXRlSGFuZGxlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY29tcGxldGVIYW5kbGVyKCk7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmFjY2VwdCA9IGZ1bmN0aW9uKG5leHRPck9ic2VydmVyLCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKChfYSA9IG5leHRPck9ic2VydmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubmV4dCkgPyB0aGlzLm9ic2VydmUobmV4dE9yT2JzZXJ2ZXIpIDogdGhpcy5kbyhuZXh0T3JPYnNlcnZlciwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUudG9PYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgdmFyIHJlc3VsdCA9IGtpbmQgPT09ICJOIiA/IG9mXzEub2YodmFsdWUpIDoga2luZCA9PT0gIkUiID8gdGhyb3dFcnJvcl8xLnRocm93RXJyb3IoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZXJyb3I7CiAgICAgICAgfSkgOiBraW5kID09PSAiQyIgPyBlbXB0eV8xLkVNUFRZIDogMDsKICAgICAgICBpZiAoIXJlc3VsdCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5leHBlY3RlZCBub3RpZmljYXRpb24ga2luZCAiICsga2luZCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlTmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJOIiwgdmFsdWUpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJFIiwgdm9pZCAwLCBlcnIpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb247CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb24gPSBuZXcgTm90aWZpY2F0aW9uMigiQyIpOwogICAgICByZXR1cm4gTm90aWZpY2F0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IE5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG9ic2VydmVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBvYnNlcnZlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIF9kID0gbm90aWZpY2F0aW9uLCBraW5kID0gX2Qua2luZCwgdmFsdWUgPSBfZC52YWx1ZSwgZXJyb3IgPSBfZC5lcnJvcjsKICAgICAgaWYgKHR5cGVvZiBraW5kICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbm90aWZpY2F0aW9uLCBtaXNzaW5nICJraW5kIicpOwogICAgICB9CiAgICAgIGtpbmQgPT09ICJOIiA/IChfYSA9IG9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKG9ic2VydmVyLCB2YWx1ZSkgOiBraW5kID09PSAiRSIgPyAoX2IgPSBvYnNlcnZlci5lcnJvcikgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwob2JzZXJ2ZXIsIGVycm9yKSA6IChfYyA9IG9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuY2FsbChvYnNlcnZlcik7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlTm90aWZpY2F0aW9uID0gb2JzZXJ2ZU5vdGlmaWNhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfaXNPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc09ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc09ic2VydmFibGUob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiAob2JqIGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUgfHwgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqLmxpZnQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iai5zdWJzY3JpYmUpKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzT2JzZXJ2YWJsZSA9IGlzT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzCnZhciByZXF1aXJlX0VtcHR5RXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuRW1wdHlFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gRW1wdHlFcnJvckltcGwoKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubmFtZSA9ICJFbXB0eUVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAibm8gZWxlbWVudHMgaW4gc2VxdWVuY2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMKdmFyIHJlcXVpcmVfbGFzdFZhbHVlRnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9sYXN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgZnVuY3Rpb24gbGFzdFZhbHVlRnJvbShzb3VyY2UsIGNvbmZpZykgewogICAgICB2YXIgaGFzQ29uZmlnID0gdHlwZW9mIGNvbmZpZyA9PT0gIm9iamVjdCI7CiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICB2YXIgX2hhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIF92YWx1ZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHsKICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIF92YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICBfaGFzVmFsdWUgPSB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChfaGFzVmFsdWUpIHsKICAgICAgICAgICAgICByZXNvbHZlKF92YWx1ZSk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoaGFzQ29uZmlnKSB7CiAgICAgICAgICAgICAgcmVzb2x2ZShjb25maWcuZGVmYXVsdFZhbHVlKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZWplY3QobmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubGFzdFZhbHVlRnJvbSA9IGxhc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzCnZhciByZXF1aXJlX2ZpcnN0VmFsdWVGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGZpcnN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICBuZXh0OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpcnN0VmFsdWVGcm9tID0gZmlyc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IuanMKdmFyIHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JJbXBsKCkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJhcmd1bWVudCBvdXQgb2YgcmFuZ2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcwp2YXIgcmVxdWlyZV9Ob3RGb3VuZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTm90Rm91bmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE5vdEZvdW5kRXJyb3JJbXBsKG1lc3NhZ2UpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk5vdEZvdW5kRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzCnZhciByZXF1aXJlX1NlcXVlbmNlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuU2VxdWVuY2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gU2VxdWVuY2VFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiU2VxdWVuY2VFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRGF0ZS5qcwp2YXIgcmVxdWlyZV9pc0RhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0RhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzVmFsaWREYXRlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gaXNWYWxpZERhdGUodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4odmFsdWUpOwogICAgfQogICAgZXhwb3J0czIuaXNWYWxpZERhdGUgPSBpc1ZhbGlkRGF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXQuanMKdmFyIHJlcXVpcmVfdGltZW91dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVGltZW91dEVycm9ySW1wbChpbmZvKSB7CiAgICAgICAgaWYgKGluZm8gPT09IHZvaWQgMCkgewogICAgICAgICAgaW5mbyA9IG51bGw7CiAgICAgICAgfQogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAiVGltZW91dCBoYXMgb2NjdXJyZWQiOwogICAgICAgIHRoaXMubmFtZSA9ICJUaW1lb3V0RXJyb3IiOwogICAgICAgIHRoaXMuaW5mbyA9IGluZm87CiAgICAgIH07CiAgICB9KTsKICAgIGZ1bmN0aW9uIHRpbWVvdXQoY29uZmlnLCBzY2hlZHVsZXJBcmcpIHsKICAgICAgdmFyIF9hID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoY29uZmlnKSA/IHsgZmlyc3Q6IGNvbmZpZyB9IDogdHlwZW9mIGNvbmZpZyA9PT0gIm51bWJlciIgPyB7IGVhY2g6IGNvbmZpZyB9IDogY29uZmlnLCBmaXJzdCA9IF9hLmZpcnN0LCBlYWNoID0gX2EuZWFjaCwgX2IgPSBfYS53aXRoLCBfd2l0aCA9IF9iID09PSB2b2lkIDAgPyB0aW1lb3V0RXJyb3JGYWN0b3J5IDogX2IsIF9jID0gX2Euc2NoZWR1bGVyLCBzY2hlZHVsZXIgPSBfYyA9PT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnICE9PSBudWxsICYmIHNjaGVkdWxlckFyZyAhPT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlciA6IF9jLCBfZCA9IF9hLm1ldGEsIG1ldGEgPSBfZCA9PT0gdm9pZCAwID8gbnVsbCA6IF9kOwogICAgICBpZiAoZmlyc3QgPT0gbnVsbCAmJiBlYWNoID09IG51bGwpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJObyB0aW1lb3V0IHByb3ZpZGVkLiIpOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb3JpZ2luYWxTb3VyY2VTdWJzY3JpcHRpb247CiAgICAgICAgdmFyIHRpbWVyU3Vic2NyaXB0aW9uOwogICAgICAgIHZhciBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICB2YXIgc3RhcnRUaW1lciA9IGZ1bmN0aW9uKGRlbGF5KSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9IGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIG9yaWdpbmFsU291cmNlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKF93aXRoKHsKICAgICAgICAgICAgICAgIG1ldGEsCiAgICAgICAgICAgICAgICBsYXN0VmFsdWUsCiAgICAgICAgICAgICAgICBzZWVuCiAgICAgICAgICAgICAgfSkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBkZWxheSk7CiAgICAgICAgfTsKICAgICAgICBvcmlnaW5hbFNvdXJjZVN1YnNjcmlwdGlvbiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCB0aW1lclN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogdGltZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNlZW4rKzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChsYXN0VmFsdWUgPSB2YWx1ZSk7CiAgICAgICAgICBlYWNoID4gMCAmJiBzdGFydFRpbWVyKGVhY2gpOwogICAgICAgIH0sIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghKHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi5jbG9zZWQpKSB7CiAgICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgICAgIXNlZW4gJiYgc3RhcnRUaW1lcihmaXJzdCAhPSBudWxsID8gdHlwZW9mIGZpcnN0ID09PSAibnVtYmVyIiA/IGZpcnN0IDogK2ZpcnN0IC0gc2NoZWR1bGVyLm5vdygpIDogZWFjaCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dCA9IHRpbWVvdXQ7CiAgICBmdW5jdGlvbiB0aW1lb3V0RXJyb3JGYWN0b3J5KGluZm8pIHsKICAgICAgdGhyb3cgbmV3IGV4cG9ydHMyLlRpbWVvdXRFcnJvcihpbmZvKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcwp2YXIgcmVxdWlyZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hcDIocHJvamVjdCwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QuY2FsbCh0aGlzQXJnLCB2YWx1ZSwgaW5kZXgrKykpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXAgPSBtYXAyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMKdmFyIHJlcXVpcmVfbWFwT25lT3JNYW55QXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcE9uZU9yTWFueUFyZ3MgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5OwogICAgZnVuY3Rpb24gY2FsbE9yQXBwbHkoZm4sIGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzQXJyYXkoYXJncykgPyBmbi5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpIDogZm4oYXJncyk7CiAgICB9CiAgICBmdW5jdGlvbiBtYXBPbmVPck1hbnlBcmdzKGZuKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oYXJncykgewogICAgICAgIHJldHVybiBjYWxsT3JBcHBseShmbiwgYXJncyk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwT25lT3JNYW55QXJncyA9IG1hcE9uZU9yTWFueUFyZ3M7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX2JpbmRDYWxsYmFja0ludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlzU2NoZWR1bGVyXzEgPSByZXF1aXJlX2lzU2NoZWR1bGVyKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHNjaGVkdWxlcikuYXBwbHkodGhpcywgYXJncykucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMpLmFwcGx5KHRoaXMsIGFyZ3MpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHZhciB1bmluaXRpYWxpemVkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICAgIHZhciBzdWJzID0gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAodW5pbml0aWFsaXplZCkgewogICAgICAgICAgICB1bmluaXRpYWxpemVkID0gZmFsc2U7CiAgICAgICAgICAgIHZhciBpc0FzeW5jXzEgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIGlzQ29tcGxldGVfMSA9IGZhbHNlOwogICAgICAgICAgICBjYWxsYmFja0Z1bmMuYXBwbHkoX3RoaXMsIF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSwgWwogICAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9pMiA9IDA7IF9pMiA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pMisrKSB7CiAgICAgICAgICAgICAgICAgIHJlc3VsdHNbX2kyXSA9IGFyZ3VtZW50c1tfaTJdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzTm9kZVN0eWxlKSB7CiAgICAgICAgICAgICAgICAgIHZhciBlcnIgPSByZXN1bHRzLnNoaWZ0KCk7CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dCgxIDwgcmVzdWx0cy5sZW5ndGggPyByZXN1bHRzIDogcmVzdWx0c1swXSk7CiAgICAgICAgICAgICAgICBpc0NvbXBsZXRlXzEgPSB0cnVlOwogICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNfMSkgewogICAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlXzEpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaXNBc3luY18xID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzOwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gYmluZENhbGxiYWNrSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kQ2FsbGJhY2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9iaW5kQ2FsbGJhY2suanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kQ2FsbGJhY2soY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMS5iaW5kQ2FsbGJhY2tJbnRlcm5hbHMoZmFsc2UsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kQ2FsbGJhY2sgPSBiaW5kQ2FsbGJhY2s7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kTm9kZUNhbGxiYWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kTm9kZUNhbGxiYWNrKGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzXzEuYmluZENhbGxiYWNrSW50ZXJuYWxzKHRydWUsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gYmluZE5vZGVDYWxsYmFjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzQXJnQXJyYXlPck9iamVjdC5qcwp2YXIgcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NBcmdBcnJheU9yT2JqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzQXJnQXJyYXlPck9iamVjdCA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIHZhciBnZXRQcm90b3R5cGVPZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKICAgIHZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7CiAgICB2YXIgZ2V0S2V5cyA9IE9iamVjdC5rZXlzOwogICAgZnVuY3Rpb24gYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncykgewogICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHsKICAgICAgICB2YXIgZmlyc3RfMSA9IGFyZ3NbMF07CiAgICAgICAgaWYgKGlzQXJyYXkoZmlyc3RfMSkpIHsKICAgICAgICAgIHJldHVybiB7IGFyZ3M6IGZpcnN0XzEsIGtleXM6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUE9KTyhmaXJzdF8xKSkgewogICAgICAgICAgdmFyIGtleXMgPSBnZXRLZXlzKGZpcnN0XzEpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgYXJnczoga2V5cy5tYXAoZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpcnN0XzFba2V5XTsKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIGtleXMKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGFyZ3MsIGtleXM6IG51bGwgfTsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NBcmdBcnJheU9yT2JqZWN0ID0gYXJnc0FyZ0FycmF5T3JPYmplY3Q7CiAgICBmdW5jdGlvbiBpc1BPSk8ob2JqKSB7CiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIG9iaiA9PT0gIm9iamVjdCIgJiYgZ2V0UHJvdG90eXBlT2Yob2JqKSA9PT0gb2JqZWN0UHJvdG87CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvY3JlYXRlT2JqZWN0LmpzCnZhciByZXF1aXJlX2NyZWF0ZU9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZU9iamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0KGtleXMsIHZhbHVlcykgewogICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoZnVuY3Rpb24ocmVzdWx0LCBrZXksIGkpIHsKICAgICAgICByZXR1cm4gcmVzdWx0W2tleV0gPSB2YWx1ZXNbaV0sIHJlc3VsdDsKICAgICAgfSwge30pOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gY3JlYXRlT2JqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RJbml0ID0gZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIHJlc3VsdFNlbGVjdG9yID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGFyZ3MpOwogICAgICB2YXIgX2EgPSBhcmdzQXJnQXJyYXlPck9iamVjdF8xLmFyZ3NBcmdBcnJheU9yT2JqZWN0KGFyZ3MpLCBvYnNlcnZhYmxlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICBpZiAob2JzZXJ2YWJsZXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKFtdLCBzY2hlZHVsZXIpOwogICAgICB9CiAgICAgIHZhciByZXN1bHQgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwga2V5cyA/IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIHJldHVybiBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKTsKICAgICAgfSA6IGlkZW50aXR5XzEuaWRlbnRpdHkpKTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBjb21iaW5lTGF0ZXN0OwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwgdmFsdWVUcmFuc2Zvcm0pIHsKICAgICAgaWYgKHZhbHVlVHJhbnNmb3JtID09PSB2b2lkIDApIHsKICAgICAgICB2YWx1ZVRyYW5zZm9ybSA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBtYXliZVNjaGVkdWxlKHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgbGVuZ3RoID0gb2JzZXJ2YWJsZXMubGVuZ3RoOwogICAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgICAgdmFyIGFjdGl2ZSA9IGxlbmd0aDsKICAgICAgICAgIHZhciByZW1haW5pbmdGaXJzdFZhbHVlcyA9IGxlbmd0aDsKICAgICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgICAgbWF5YmVTY2hlZHVsZShzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHZhciBzb3VyY2UgPSBmcm9tXzEuZnJvbShvYnNlcnZhYmxlc1tpMl0sIHNjaGVkdWxlcik7CiAgICAgICAgICAgICAgdmFyIGhhc0ZpcnN0VmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFsdWVzW2kyXSA9IHZhbHVlOwogICAgICAgICAgICAgICAgaWYgKCFoYXNGaXJzdFZhbHVlKSB7CiAgICAgICAgICAgICAgICAgIGhhc0ZpcnN0VmFsdWUgPSB0cnVlOwogICAgICAgICAgICAgICAgICByZW1haW5pbmdGaXJzdFZhbHVlcy0tOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdGaXJzdFZhbHVlcykgewogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWVUcmFuc2Zvcm0odmFsdWVzLnNsaWNlKCkpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGlmICghLS1hY3RpdmUpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfSwgc3Vic2NyaWJlcik7CiAgICAgICAgICB9OwogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgICAgfQogICAgICAgIH0sIHN1YnNjcmliZXIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEluaXQgPSBjb21iaW5lTGF0ZXN0SW5pdDsKICAgIGZ1bmN0aW9uIG1heWJlU2NoZWR1bGUoc2NoZWR1bGVyLCBleGVjdXRlLCBzdWJzY3JpcHRpb24pIHsKICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgZXhlY3V0ZSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZXhlY3V0ZSgpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUludGVybmFscy5qcwp2YXIgcmVxdWlyZV9tZXJnZUludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCBvbkJlZm9yZU5leHQsIGV4cGFuZCwgaW5uZXJTdWJTY2hlZHVsZXIsIGFkZGl0aW9uYWxGaW5hbGl6ZXIpIHsKICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICB2YXIgYWN0aXZlID0gMDsKICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoaXNDb21wbGV0ZSAmJiAhYnVmZmVyLmxlbmd0aCAmJiAhYWN0aXZlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICB2YXIgb3V0ZXJOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gYWN0aXZlIDwgY29uY3VycmVudCA/IGRvSW5uZXJTdWIodmFsdWUpIDogYnVmZmVyLnB1c2godmFsdWUpOwogICAgICB9OwogICAgICB2YXIgZG9Jbm5lclN1YiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgZXhwYW5kICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgYWN0aXZlKys7CiAgICAgICAgdmFyIGlubmVyQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdCh2YWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oaW5uZXJWYWx1ZSkgewogICAgICAgICAgb25CZWZvcmVOZXh0ID09PSBudWxsIHx8IG9uQmVmb3JlTmV4dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CZWZvcmVOZXh0KGlubmVyVmFsdWUpOwogICAgICAgICAgaWYgKGV4cGFuZCkgewogICAgICAgICAgICBvdXRlck5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpbm5lckNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGlubmVyQ29tcGxldGUpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBhY3RpdmUtLTsKICAgICAgICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGJ1ZmZlcmVkVmFsdWUgPSBidWZmZXIuc2hpZnQoKTsKICAgICAgICAgICAgICAgIGlmIChpbm5lclN1YlNjaGVkdWxlcikgewogICAgICAgICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgaW5uZXJTdWJTY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkb0lubmVyU3ViKGJ1ZmZlcmVkVmFsdWUpOwogICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGRvSW5uZXJTdWIoYnVmZmVyZWRWYWx1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB3aGlsZSAoYnVmZmVyLmxlbmd0aCAmJiBhY3RpdmUgPCBjb25jdXJyZW50KSB7CiAgICAgICAgICAgICAgICBfbG9vcF8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvdXRlck5leHQsIGZ1bmN0aW9uKCkgewogICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgfSkpOwogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgYWRkaXRpb25hbEZpbmFsaXplciA9PT0gbnVsbCB8fCBhZGRpdGlvbmFsRmluYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhZGRpdGlvbmFsRmluYWxpemVyKCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUludGVybmFscyA9IG1lcmdlSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VNYXAuanMKdmFyIHJlcXVpcmVfbWVyZ2VNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IoYSwgYiwgaSwgaWkpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpKTsKICAgICAgICB9LCBjb25jdXJyZW50KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gbWVyZ2VJbnRlcm5hbHNfMS5tZXJnZUludGVybmFscyhzb3VyY2UsIHN1YnNjcmliZXIsIHByb2plY3QsIGNvbmN1cnJlbnQpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwID0gbWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcwp2YXIgcmVxdWlyZV9tZXJnZUFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIG1lcmdlQWxsKGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChpZGVudGl0eV8xLmlkZW50aXR5LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gbWVyZ2VBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMKdmFyIHJlcXVpcmVfY29uY2F0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgZnVuY3Rpb24gY29uY2F0QWxsKCkgewogICAgICByZXR1cm4gbWVyZ2VBbGxfMS5tZXJnZUFsbCgxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IGNvbmNhdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsKCkoZnJvbV8xLmZyb20oYXJncywgYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RlZmVyLmpzCnZhciByZXF1aXJlX2RlZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZGVmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmVyID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlZmVyKG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvYnNlcnZhYmxlRmFjdG9yeSgpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmZXIgPSBkZWZlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25uZWN0YWJsZS5qcwp2YXIgcmVxdWlyZV9jb25uZWN0YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Nvbm5lY3RhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25uZWN0YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSwKICAgICAgcmVzZXRPbkRpc2Nvbm5lY3Q6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBjb25uZWN0YWJsZShzb3VyY2UsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yLCBfYSA9IGNvbmZpZy5yZXNldE9uRGlzY29ubmVjdCwgcmVzZXRPbkRpc2Nvbm5lY3QgPSBfYSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hOwogICAgICB2YXIgc3ViamVjdCA9IGNvbm5lY3RvcigpOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgICByZXN1bHQuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghY29ubmVjdGlvbiB8fCBjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7CiAgICAgICAgICB9KS5zdWJzY3JpYmUoc3ViamVjdCk7CiAgICAgICAgICBpZiAocmVzZXRPbkRpc2Nvbm5lY3QpIHsKICAgICAgICAgICAgY29ubmVjdGlvbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdGFibGUgPSBjb25uZWN0YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mb3JrSm9pbi5qcwp2YXIgcmVxdWlyZV9mb3JrSm9pbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2ZvcmtKb2luLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mb3JrSm9pbiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgZnVuY3Rpb24gZm9ya0pvaW4oKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciByZXN1bHRTZWxlY3RvciA9IGFyZ3NfMS5wb3BSZXN1bHRTZWxlY3RvcihhcmdzKTsKICAgICAgdmFyIF9hID0gYXJnc0FyZ0FycmF5T3JPYmplY3RfMS5hcmdzQXJnQXJyYXlPck9iamVjdChhcmdzKSwgc291cmNlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbGVuZ3RoID0gc291cmNlcy5sZW5ndGg7CiAgICAgICAgaWYgKCFsZW5ndGgpIHsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgIHZhciByZW1haW5pbmdDb21wbGV0aW9ucyA9IGxlbmd0aDsKICAgICAgICB2YXIgcmVtYWluaW5nRW1pc3Npb25zID0gbGVuZ3RoOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzW3NvdXJjZUluZGV4Ml0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgICAgICByZW1haW5pbmdFbWlzc2lvbnMtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZXNbc291cmNlSW5kZXgyXSA9IHZhbHVlOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdDb21wbGV0aW9ucy0tOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdDb21wbGV0aW9ucyB8fCAhaGFzVmFsdWUpIHsKICAgICAgICAgICAgICBpZiAoIXJlbWFpbmluZ0VtaXNzaW9ucykgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGtleXMgPyBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKSA6IHZhbHVlcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgc291cmNlSW5kZXggPSAwOyBzb3VyY2VJbmRleCA8IGxlbmd0aDsgc291cmNlSW5kZXgrKykgewogICAgICAgICAgX2xvb3BfMShzb3VyY2VJbmRleCk7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmZvcmtKb2luID0gZm9ya0pvaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzCnZhciByZXF1aXJlX2Zyb21FdmVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21FdmVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tRXZlbnQgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNBcnJheUxpa2VfMSA9IHJlcXVpcmVfaXNBcnJheUxpa2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBub2RlRXZlbnRFbWl0dGVyTWV0aG9kcyA9IFsiYWRkTGlzdGVuZXIiLCAicmVtb3ZlTGlzdGVuZXIiXTsKICAgIHZhciBldmVudFRhcmdldE1ldGhvZHMgPSBbImFkZEV2ZW50TGlzdGVuZXIiLCAicmVtb3ZlRXZlbnRMaXN0ZW5lciJdOwogICAgdmFyIGpxdWVyeU1ldGhvZHMgPSBbIm9uIiwgIm9mZiJdOwogICAgZnVuY3Rpb24gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zLCByZXN1bHRTZWxlY3RvcikgewogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob3B0aW9ucykpIHsKICAgICAgICByZXN1bHRTZWxlY3RvciA9IG9wdGlvbnM7CiAgICAgICAgb3B0aW9ucyA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAocmVzdWx0U2VsZWN0b3IpIHsKICAgICAgICByZXR1cm4gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zKS5waXBlKG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSk7CiAgICAgIH0KICAgICAgdmFyIF9hID0gX19yZWFkKGlzRXZlbnRUYXJnZXQodGFyZ2V0KSA/IGV2ZW50VGFyZ2V0TWV0aG9kcy5tYXAoZnVuY3Rpb24obWV0aG9kTmFtZSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihoYW5kbGVyKSB7CiAgICAgICAgICByZXR1cm4gdGFyZ2V0W21ldGhvZE5hbWVdKGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucyk7CiAgICAgICAgfTsKICAgICAgfSkgOiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpID8gbm9kZUV2ZW50RW1pdHRlck1ldGhvZHMubWFwKHRvQ29tbW9uSGFuZGxlclJlZ2lzdHJ5KHRhcmdldCwgZXZlbnROYW1lKSkgOiBpc0pRdWVyeVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgPyBqcXVlcnlNZXRob2RzLm1hcCh0b0NvbW1vbkhhbmRsZXJSZWdpc3RyeSh0YXJnZXQsIGV2ZW50TmFtZSkpIDogW10sIDIpLCBhZGQgPSBfYVswXSwgcmVtb3ZlID0gX2FbMV07CiAgICAgIGlmICghYWRkKSB7CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UodGFyZ2V0KSkgewogICAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oc3ViVGFyZ2V0KSB7CiAgICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQoc3ViVGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHRhcmdldCkpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIWFkZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgZXZlbnQgdGFyZ2V0Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhbmRsZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KDEgPCBhcmdzLmxlbmd0aCA/IGFyZ3MgOiBhcmdzWzBdKTsKICAgICAgICB9OwogICAgICAgIGFkZChoYW5kbGVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlKGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUV2ZW50ID0gZnJvbUV2ZW50OwogICAgZnVuY3Rpb24gdG9Db21tb25IYW5kbGVyUmVnaXN0cnkodGFyZ2V0LCBldmVudE5hbWUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhvZE5hbWUpIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oaGFuZGxlcikgewogICAgICAgICAgcmV0dXJuIHRhcmdldFttZXRob2ROYW1lXShldmVudE5hbWUsIGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRMaXN0ZW5lcikgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LnJlbW92ZUxpc3RlbmVyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSlF1ZXJ5U3R5bGVFdmVudEVtaXR0ZXIodGFyZ2V0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQub24pICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5vZmYpOwogICAgfQogICAgZnVuY3Rpb24gaXNFdmVudFRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRFdmVudExpc3RlbmVyKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcwp2YXIgcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIGZ1bmN0aW9uIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlciwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlcikucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgICAgZVtfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIubmV4dChlLmxlbmd0aCA9PT0gMSA/IGVbMF0gOiBlKTsKICAgICAgICB9OwogICAgICAgIHZhciByZXRWYWx1ZSA9IGFkZEhhbmRsZXIoaGFuZGxlcik7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlbW92ZUhhbmRsZXIpID8gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlSGFuZGxlcihoYW5kbGVyLCByZXRWYWx1ZSk7CiAgICAgICAgfSA6IHZvaWQgMDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnRQYXR0ZXJuID0gZnJvbUV2ZW50UGF0dGVybjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9nZW5lcmF0ZS5qcwp2YXIgcmVxdWlyZV9nZW5lcmF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2dlbmVyYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZ2VuZXJhdG9yID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19nZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgYm9keSkgewogICAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsKICAgICAgICByZXR1cm4gdFsxXTsKICAgICAgfSwgdHJ5czogW10sIG9wczogW10gfSwgZiwgeSwgdCwgZzsKICAgICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9KSwgZzsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBzdGVwKFtuLCB2XSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTsKICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICB5ID0gb3BbMV07CiAgICAgICAgICAgICAgb3AgPSBbMF07CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvcCA9IF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgewogICAgICAgICAgICAgICAgXyA9IDA7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCBvcFsxXSA+IHRbMF0gJiYgb3BbMV0gPCB0WzNdKSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IG9wWzFdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMV07CiAgICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzJdOwogICAgICAgICAgICAgICAgXy5vcHMucHVzaChvcCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIG9wID0gWzYsIGVdOwogICAgICAgICAgeSA9IDA7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGYgPSB0ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07CiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgICAgfQogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSB2b2lkIDA7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGRlZmVyXzEgPSByZXF1aXJlX2RlZmVyKCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZShpbml0aWFsU3RhdGVPck9wdGlvbnMsIGNvbmRpdGlvbiwgaXRlcmF0ZSwgcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlciwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciByZXN1bHRTZWxlY3RvcjsKICAgICAgdmFyIGluaXRpYWxTdGF0ZTsKICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgICAgICBfYSA9IGluaXRpYWxTdGF0ZU9yT3B0aW9ucywgaW5pdGlhbFN0YXRlID0gX2EuaW5pdGlhbFN0YXRlLCBjb25kaXRpb24gPSBfYS5jb25kaXRpb24sIGl0ZXJhdGUgPSBfYS5pdGVyYXRlLCBfYiA9IF9hLnJlc3VsdFNlbGVjdG9yLCByZXN1bHRTZWxlY3RvciA9IF9iID09PSB2b2lkIDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogX2IsIHNjaGVkdWxlciA9IF9hLnNjaGVkdWxlcjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpbml0aWFsU3RhdGUgPSBpbml0aWFsU3RhdGVPck9wdGlvbnM7CiAgICAgICAgaWYgKCFyZXN1bHRTZWxlY3Rvck9yU2NoZWR1bGVyIHx8IGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgICAgICAgIHNjaGVkdWxlciA9IHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZ2VuKCkgewogICAgICAgIHZhciBzdGF0ZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2EyKSB7CiAgICAgICAgICBzd2l0Y2ggKF9hMi5sYWJlbCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgc3RhdGUgPSBpbml0aWFsU3RhdGU7CiAgICAgICAgICAgICAgX2EyLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGlmICghKCFjb25kaXRpb24gfHwgY29uZGl0aW9uKHN0YXRlKSkpIHJldHVybiBbMywgNF07CiAgICAgICAgICAgICAgcmV0dXJuIFs0LCByZXN1bHRTZWxlY3RvcihzdGF0ZSldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX2EyLnNlbnQoKTsKICAgICAgICAgICAgICBfYTIubGFiZWwgPSAzOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgc3RhdGUgPSBpdGVyYXRlKHN0YXRlKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFsyXTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcihzY2hlZHVsZXIgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVJdGVyYWJsZV8xLnNjaGVkdWxlSXRlcmFibGUoZ2VuKCksIHNjaGVkdWxlcik7CiAgICAgIH0gOiBnZW4pOwogICAgfQogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSBnZW5lcmF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMKdmFyIHJlcXVpcmVfaWlmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaWlmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5paWYgPSB2b2lkIDA7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIGZ1bmN0aW9uIGlpZihjb25kaXRpb24sIHRydWVSZXN1bHQsIGZhbHNlUmVzdWx0KSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBjb25kaXRpb24oKSA/IHRydWVSZXN1bHQgOiBmYWxzZVJlc3VsdDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5paWYgPSBpaWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdGltZXIuanMKdmFyIHJlcXVpcmVfdGltZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aW1lci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIGZ1bmN0aW9uIHRpbWVyKGR1ZVRpbWUsIGludGVydmFsT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICBpZiAoZHVlVGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZHVlVGltZSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luYzsKICAgICAgfQogICAgICB2YXIgaW50ZXJ2YWxEdXJhdGlvbiA9IC0xOwogICAgICBpZiAoaW50ZXJ2YWxPclNjaGVkdWxlciAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIoaW50ZXJ2YWxPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHNjaGVkdWxlciA9IGludGVydmFsT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGludGVydmFsRHVyYXRpb24gPSBpbnRlcnZhbE9yU2NoZWR1bGVyOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZHVlID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoZHVlVGltZSkgPyArZHVlVGltZSAtIHNjaGVkdWxlci5ub3coKSA6IGR1ZVRpbWU7CiAgICAgICAgaWYgKGR1ZSA8IDApIHsKICAgICAgICAgIGR1ZSA9IDA7CiAgICAgICAgfQogICAgICAgIHZhciBuID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgaWYgKDAgPD0gaW50ZXJ2YWxEdXJhdGlvbikgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUodm9pZCAwLCBpbnRlcnZhbER1cmF0aW9uKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBkdWUpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVyID0gdGltZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfaW50ZXJ2YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gaW50ZXJ2YWwocGVyaW9kLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHBlcmlvZCA9PT0gdm9pZCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIGlmIChwZXJpb2QgPCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICByZXR1cm4gdGltZXJfMS50aW1lcihwZXJpb2QsIHBlcmlvZCwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLmludGVydmFsID0gaW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VBbGxfMSA9IHJlcXVpcmVfbWVyZ2VBbGwoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG1lcmdlMigpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHZhciBjb25jdXJyZW50ID0gYXJnc18xLnBvcE51bWJlcihhcmdzLCBJbmZpbml0eSk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnczsKICAgICAgcmV0dXJuICFzb3VyY2VzLmxlbmd0aCA/IGVtcHR5XzEuRU1QVFkgOiBzb3VyY2VzLmxlbmd0aCA9PT0gMSA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzWzBdKSA6IG1lcmdlQWxsXzEubWVyZ2VBbGwoY29uY3VycmVudCkoZnJvbV8xLmZyb20oc291cmNlcywgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9uZXZlci5qcwp2YXIgcmVxdWlyZV9uZXZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL25ldmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLk5FVkVSID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZXhwb3J0czIuTkVWRVIgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUobm9vcF8xLm5vb3ApOwogICAgZnVuY3Rpb24gbmV2ZXIoKSB7CiAgICAgIHJldHVybiBleHBvcnRzMi5ORVZFUjsKICAgIH0KICAgIGV4cG9ydHMyLm5ldmVyID0gbmV2ZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc09yQXJnQXJyYXkuanMKdmFyIHJlcXVpcmVfYXJnc09yQXJnQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzT3JBcmdBcnJheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXJnc09yQXJnQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgaXNBcnJheSA9IEFycmF5LmlzQXJyYXk7CiAgICBmdW5jdGlvbiBhcmdzT3JBcmdBcnJheShhcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLmxlbmd0aCA9PT0gMSAmJiBpc0FycmF5KGFyZ3NbMF0pID8gYXJnc1swXSA6IGFyZ3M7CiAgICB9CiAgICBleHBvcnRzMi5hcmdzT3JBcmdBcnJheSA9IGFyZ3NPckFyZ0FycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29uRXJyb3JSZXN1bWVOZXh0LmpzCnZhciByZXF1aXJlX29uRXJyb3JSZXN1bWVOZXh0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb25FcnJvclJlc3VtZU5leHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0KCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc291cmNlSW5kZXggPSAwOwogICAgICAgIHZhciBzdWJzY3JpYmVOZXh0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoc291cmNlSW5kZXggPCBuZXh0U291cmNlcy5sZW5ndGgpIHsKICAgICAgICAgICAgdmFyIG5leHRTb3VyY2UgPSB2b2lkIDA7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgbmV4dFNvdXJjZSA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShuZXh0U291cmNlc1tzb3VyY2VJbmRleCsrXSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgIHN1YnNjcmliZU5leHQoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG5ldyBPcGVyYXRvclN1YnNjcmliZXJfMS5PcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBub29wXzEubm9vcCwgbm9vcF8xLm5vb3ApOwogICAgICAgICAgICBuZXh0U291cmNlLnN1YnNjcmliZShpbm5lclN1YnNjcmliZXIpOwogICAgICAgICAgICBpbm5lclN1YnNjcmliZXIuYWRkKHN1YnNjcmliZU5leHQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlTmV4dCgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gb25FcnJvclJlc3VtZU5leHQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFpcnMuanMKdmFyIHJlcXVpcmVfcGFpcnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYWlycy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGFpcnMgPSB2b2lkIDA7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBmdW5jdGlvbiBwYWlyczIob2JqLCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKE9iamVjdC5lbnRyaWVzKG9iaiksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5wYWlycyA9IHBhaXJzMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9ub3QuanMKdmFyIHJlcXVpcmVfbm90MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm90ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gbm90KHByZWQsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgIHJldHVybiAhcHJlZC5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5ub3QgPSBub3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMKdmFyIHJlcXVpcmVfZmlsdGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbHRlciA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaWx0ZXIocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gcHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGluZGV4KyspICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbHRlciA9IGZpbHRlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMKdmFyIHJlcXVpcmVfcGFydGl0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFydGl0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSB2b2lkIDA7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdDIoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gcGFydGl0aW9uKHNvdXJjZSwgcHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBbZmlsdGVyXzEuZmlsdGVyKHByZWRpY2F0ZSwgdGhpc0FyZykoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZSkpLCBmaWx0ZXJfMS5maWx0ZXIobm90XzEubm90KHByZWRpY2F0ZSwgdGhpc0FyZykpKGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpKV07CiAgICB9CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcwp2YXIgcmVxdWlyZV9yYWNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFjZUluaXQgPSBleHBvcnRzMi5yYWNlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJhY2UoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gc291cmNlcy5sZW5ndGggPT09IDEgPyBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1swXSkgOiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUocmFjZUluaXQoc291cmNlcykpOwogICAgfQogICAgZXhwb3J0czIucmFjZSA9IHJhY2U7CiAgICBmdW5jdGlvbiByYWNlSW5pdChzb3VyY2VzKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbnMgPSBbXTsKICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKGkyKSB7CiAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZXNbaTJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChzdWJzY3JpcHRpb25zKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgcyA9IDA7IHMgPCBzdWJzY3JpcHRpb25zLmxlbmd0aDsgcysrKSB7CiAgICAgICAgICAgICAgICBzICE9PSBpMiAmJiBzdWJzY3JpcHRpb25zW3NdLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmlwdGlvbnMgPSBudWxsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9KSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IHN1YnNjcmlwdGlvbnMgJiYgIXN1YnNjcmliZXIuY2xvc2VkICYmIGkgPCBzb3VyY2VzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnJhY2VJbml0ID0gcmFjZUluaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFuZ2UuanMKdmFyIHJlcXVpcmVfcmFuZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYW5nZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFuZ2UgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIGZ1bmN0aW9uIHJhbmdlKHN0YXJ0LCBjb3VudCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChjb3VudCA9PSBudWxsKSB7CiAgICAgICAgY291bnQgPSBzdGFydDsKICAgICAgICBzdGFydCA9IDA7CiAgICAgIH0KICAgICAgaWYgKGNvdW50IDw9IDApIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfQogICAgICB2YXIgZW5kID0gY291bnQgKyBzdGFydDsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShzY2hlZHVsZXIgPyBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIG4gPSBzdGFydDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG4gPCBlbmQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSA6IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbiA9IHN0YXJ0OwogICAgICAgIHdoaWxlIChuIDwgZW5kICYmICFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgfQogICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yYW5nZSA9IHJhbmdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3VzaW5nLmpzCnZhciByZXF1aXJlX3VzaW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdXNpbmcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnVzaW5nID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgZnVuY3Rpb24gdXNpbmcocmVzb3VyY2VGYWN0b3J5LCBvYnNlcnZhYmxlRmFjdG9yeSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgcmVzb3VyY2UgPSByZXNvdXJjZUZhY3RvcnkoKTsKICAgICAgICB2YXIgcmVzdWx0ID0gb2JzZXJ2YWJsZUZhY3RvcnkocmVzb3VyY2UpOwogICAgICAgIHZhciBzb3VyY2UgPSByZXN1bHQgPyBpbm5lckZyb21fMS5pbm5lckZyb20ocmVzdWx0KSA6IGVtcHR5XzEuRU1QVFk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAocmVzb3VyY2UpIHsKICAgICAgICAgICAgcmVzb3VyY2UudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzaW5nID0gdXNpbmc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvemlwLmpzCnZhciByZXF1aXJlX3ppcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3ppcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgZnVuY3Rpb24gemlwKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKTsKICAgICAgcmV0dXJuIHNvdXJjZXMubGVuZ3RoID8gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IHNvdXJjZXMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0pOwogICAgICAgIHZhciBjb21wbGV0ZWQgPSBzb3VyY2VzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBjb21wbGV0ZWQgPSBudWxsOwogICAgICAgIH0pOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tzb3VyY2VJbmRleDJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGJ1ZmZlcnNbc291cmNlSW5kZXgyXS5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuZXZlcnkoZnVuY3Rpb24oYnVmZmVyKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5sZW5ndGg7CiAgICAgICAgICAgIH0pKSB7CiAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IGJ1ZmZlcnMubWFwKGZ1bmN0aW9uKGJ1ZmZlcikgewogICAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5zaGlmdCgpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChyZXN1bHRTZWxlY3RvciA/IHJlc3VsdFNlbGVjdG9yLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHJlc3VsdCkpKSA6IHJlc3VsdCk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuc29tZShmdW5jdGlvbihidWZmZXIsIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhYnVmZmVyLmxlbmd0aCAmJiBjb21wbGV0ZWRbaV07CiAgICAgICAgICAgICAgfSkpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBjb21wbGV0ZWRbc291cmNlSW5kZXgyXSA9IHRydWU7CiAgICAgICAgICAgICFidWZmZXJzW3NvdXJjZUluZGV4Ml0ubGVuZ3RoICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIHNvdXJjZUluZGV4ID0gMDsgIXN1YnNjcmliZXIuY2xvc2VkICYmIHNvdXJjZUluZGV4IDwgc291cmNlcy5sZW5ndGg7IHNvdXJjZUluZGV4KyspIHsKICAgICAgICAgIF9sb29wXzEoc291cmNlSW5kZXgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXJzID0gY29tcGxldGVkID0gbnVsbDsKICAgICAgICB9OwogICAgICB9KSA6IGVtcHR5XzEuRU1QVFk7CiAgICB9CiAgICBleHBvcnRzMi56aXAgPSB6aXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3R5cGVzLmpzCnZhciByZXF1aXJlX3R5cGVzMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC90eXBlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMKdmFyIHJlcXVpcmVfYXVkaXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2F1ZGl0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hdWRpdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gYXVkaXQoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICB2YXIgZW5kRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGlmICghZHVyYXRpb25TdWJzY3JpYmVyKSB7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmREdXJhdGlvbiwgY2xlYW51cER1cmF0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICghaGFzVmFsdWUgfHwgIWR1cmF0aW9uU3Vic2NyaWJlciB8fCBkdXJhdGlvblN1YnNjcmliZXIuY2xvc2VkKSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmF1ZGl0ID0gYXVkaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMKdmFyIHJlcXVpcmVfYXVkaXRUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0VGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGF1ZGl0VGltZShkdXJhdGlvbiwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXRUaW1lID0gYXVkaXRUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXIgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcihjbG9zaW5nTm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjdXJyZW50QnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBjdXJyZW50QnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGN1cnJlbnRCdWZmZXIpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ05vdGlmaWVyKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGIgPSBjdXJyZW50QnVmZmVyOwogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IFtdOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGIpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXIgPSBidWZmZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcwp2YXIgcmVxdWlyZV9idWZmZXJDb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyQ291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiBidWZmZXJDb3VudChidWZmZXJTaXplLCBzdGFydEJ1ZmZlckV2ZXJ5KSB7CiAgICAgIGlmIChzdGFydEJ1ZmZlckV2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gbnVsbDsKICAgICAgfQogICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gc3RhcnRCdWZmZXJFdmVyeSAhPT0gbnVsbCAmJiBzdGFydEJ1ZmZlckV2ZXJ5ICE9PSB2b2lkIDAgPyBzdGFydEJ1ZmZlckV2ZXJ5IDogYnVmZmVyU2l6ZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJzID0gW107CiAgICAgICAgdmFyIGNvdW50ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgICB2YXIgdG9FbWl0ID0gbnVsbDsKICAgICAgICAgIGlmIChjb3VudCsrICUgc3RhcnRCdWZmZXJFdmVyeSA9PT0gMCkgewogICAgICAgICAgICBidWZmZXJzLnB1c2goW10pOwogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18xID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKTsgIWJ1ZmZlcnNfMV8xLmRvbmU7IGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdG9FbWl0ID0gdG9FbWl0ICE9PSBudWxsICYmIHRvRW1pdCAhPT0gdm9pZCAwID8gdG9FbWl0IDogW107CiAgICAgICAgICAgICAgICB0b0VtaXQucHVzaChidWZmZXIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9FbWl0KSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgdG9FbWl0XzEgPSBfX3ZhbHVlcyh0b0VtaXQpLCB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpOyAhdG9FbWl0XzFfMS5kb25lOyB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gdG9FbWl0XzFfMS52YWx1ZTsKICAgICAgICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJzLCBidWZmZXIpOwogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGNhdGNoIChlXzJfMSkgewogICAgICAgICAgICAgIGVfMiA9IHsgZXJyb3I6IGVfMl8xIH07CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGlmICh0b0VtaXRfMV8xICYmICF0b0VtaXRfMV8xLmRvbmUgJiYgKF9iID0gdG9FbWl0XzEucmV0dXJuKSkgX2IuY2FsbCh0b0VtaXRfMSk7CiAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzMsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18yID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKTsgIWJ1ZmZlcnNfMl8xLmRvbmU7IGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzJfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8zXzEpIHsKICAgICAgICAgICAgZV8zID0geyBlcnJvcjogZV8zXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMl8xICYmICFidWZmZXJzXzJfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMi5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMik7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMykgdGhyb3cgZV8zLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJDb3VudCA9IGJ1ZmZlckNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVGltZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gYnVmZmVyVGltZShidWZmZXJUaW1lU3BhbikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgb3RoZXJBcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMTsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJBcmdzW19pIC0gMV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSAoX2EgPSBhcmdzXzEucG9wU2NoZWR1bGVyKG90aGVyQXJncykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIHZhciBidWZmZXJDcmVhdGlvbkludGVydmFsID0gKF9iID0gb3RoZXJBcmdzWzBdKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBudWxsOwogICAgICB2YXIgbWF4QnVmZmVyU2l6ZSA9IG90aGVyQXJnc1sxXSB8fCBJbmZpbml0eTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJSZWNvcmRzID0gW107CiAgICAgICAgdmFyIHJlc3RhcnRPbkVtaXQgPSBmYWxzZTsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKHJlY29yZCkgewogICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXIsIHN1YnMgPSByZWNvcmQuc3ViczsKICAgICAgICAgIHN1YnMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJSZWNvcmRzLCByZWNvcmQpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICByZXN0YXJ0T25FbWl0ICYmIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgfTsKICAgICAgICB2YXIgc3RhcnRCdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChidWZmZXJSZWNvcmRzKSB7CiAgICAgICAgICAgIHZhciBzdWJzID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChzdWJzKTsKICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgYnVmZmVyLAogICAgICAgICAgICAgIHN1YnMKICAgICAgICAgICAgfTsKICAgICAgICAgICAgYnVmZmVyUmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVtaXQocmVjb3JkXzEpOwogICAgICAgICAgICB9LCBidWZmZXJUaW1lU3Bhbik7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBpZiAoYnVmZmVyQ3JlYXRpb25JbnRlcnZhbCAhPT0gbnVsbCAmJiBidWZmZXJDcmVhdGlvbkludGVydmFsID49IDApIHsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIHN0YXJ0QnVmZmVyLCBidWZmZXJDcmVhdGlvbkludGVydmFsLCB0cnVlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmVzdGFydE9uRW1pdCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgdmFyIGJ1ZmZlclRpbWVTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTI7CiAgICAgICAgICB2YXIgcmVjb3Jkc0NvcHkgPSBidWZmZXJSZWNvcmRzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciByZWNvcmRzQ29weV8xID0gX192YWx1ZXMocmVjb3Jkc0NvcHkpLCByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKTsgIXJlY29yZHNDb3B5XzFfMS5kb25lOyByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciByZWNvcmQgPSByZWNvcmRzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXI7CiAgICAgICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgICAgIG1heEJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCAmJiBlbWl0KHJlY29yZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChyZWNvcmRzQ29weV8xXzEgJiYgIXJlY29yZHNDb3B5XzFfMS5kb25lICYmIChfYTIgPSByZWNvcmRzQ29weV8xLnJldHVybikpIF9hMi5jYWxsKHJlY29yZHNDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKGJ1ZmZlclJlY29yZHMgPT09IG51bGwgfHwgYnVmZmVyUmVjb3JkcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnVmZmVyUmVjb3Jkcy5sZW5ndGgpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlclJlY29yZHMuc2hpZnQoKS5idWZmZXIpOwogICAgICAgICAgfQogICAgICAgICAgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IG51bGwgfHwgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlclRpbWVTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXJSZWNvcmRzID0gbnVsbDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGJ1ZmZlclRpbWVTdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gYnVmZmVyVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlclRvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IFtdOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciBidWZmZXIgPSBbXTsKICAgICAgICAgIGJ1ZmZlcnMucHVzaChidWZmZXIpOwogICAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgZW1pdEJ1ZmZlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoYnVmZmVycywgYnVmZmVyKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH07CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZW1pdEJ1ZmZlciwgbm9vcF8xLm5vb3ApKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzEgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpOyAhYnVmZmVyc18xXzEuZG9uZTsgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoYnVmZmVycy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXJzLnNoaWZ0KCkpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUb2dnbGUgPSBidWZmZXJUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJXaGVuLmpzCnZhciByZXF1aXJlX2J1ZmZlcldoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlcldoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcldoZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gbnVsbDsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXIgPSBudWxsOwogICAgICAgIHZhciBvcGVuQnVmZmVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBjbG9zaW5nU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xvc2luZ1N1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBiID0gYnVmZmVyOwogICAgICAgICAgYnVmZmVyID0gW107CiAgICAgICAgICBiICYmIHN1YnNjcmliZXIubmV4dChiKTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nU2VsZWN0b3IoKSkuc3Vic2NyaWJlKGNsb3NpbmdTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIG9wZW5CdWZmZXIsIG5vb3BfMS5ub29wKSk7CiAgICAgICAgfTsKICAgICAgICBvcGVuQnVmZmVyKCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPT09IG51bGwgfHwgYnVmZmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgJiYgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPSBjbG9zaW5nU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSBidWZmZXJXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY2F0Y2hFcnJvci5qcwp2YXIgcmVxdWlyZV9jYXRjaEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jYXRjaEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYXRjaEVycm9yID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBjYXRjaEVycm9yKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWIgPSBudWxsOwogICAgICAgIHZhciBzeW5jVW5zdWIgPSBmYWxzZTsKICAgICAgICB2YXIgaGFuZGxlZFJlc3VsdDsKICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIGhhbmRsZWRSZXN1bHQgPSBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZXJyLCBjYXRjaEVycm9yKHNlbGVjdG9yKShzb3VyY2UpKSk7CiAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIGlmIChzeW5jVW5zdWIpIHsKICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2F0Y2hFcnJvciA9IGNhdGNoRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zY2FuSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX3NjYW5JbnRlcm5hbHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW5JbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjYW5JbnRlcm5hbHMgPSB2b2lkIDA7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgaGFzU2VlZCwgZW1pdE9uTmV4dCwgZW1pdEJlZm9yZUNvbXBsZXRlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzU3RhdGUgPSBoYXNTZWVkOwogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGkgPSBpbmRleCsrOwogICAgICAgICAgc3RhdGUgPSBoYXNTdGF0ZSA/IGFjY3VtdWxhdG9yKHN0YXRlLCB2YWx1ZSwgaSkgOiAoaGFzU3RhdGUgPSB0cnVlLCB2YWx1ZSk7CiAgICAgICAgICBlbWl0T25OZXh0ICYmIHN1YnNjcmliZXIubmV4dChzdGF0ZSk7CiAgICAgICAgfSwgZW1pdEJlZm9yZUNvbXBsZXRlICYmIGZ1bmN0aW9uKCkgewogICAgICAgICAgaGFzU3RhdGUgJiYgc3Vic2NyaWJlci5uZXh0KHN0YXRlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5zY2FuSW50ZXJuYWxzID0gc2NhbkludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcwp2YXIgcmVxdWlyZV9yZWR1Y2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVkdWNlID0gdm9pZCAwOwogICAgdmFyIHNjYW5JbnRlcm5hbHNfMSA9IHJlcXVpcmVfc2NhbkludGVybmFscygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gcmVkdWNlKGFjY3VtdWxhdG9yLCBzZWVkKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShzY2FuSW50ZXJuYWxzXzEuc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgYXJndW1lbnRzLmxlbmd0aCA+PSAyLCBmYWxzZSwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIucmVkdWNlID0gcmVkdWNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdG9BcnJheS5qcwp2YXIgcmVxdWlyZV90b0FycmF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90b0FycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50b0FycmF5ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBhcnJSZWR1Y2VyID0gZnVuY3Rpb24oYXJyLCB2YWx1ZSkgewogICAgICByZXR1cm4gYXJyLnB1c2godmFsdWUpLCBhcnI7CiAgICB9OwogICAgZnVuY3Rpb24gdG9BcnJheTIoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZWR1Y2VfMS5yZWR1Y2UoYXJyUmVkdWNlciwgW10pKHNvdXJjZSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRvQXJyYXkgPSB0b0FycmF5MjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2pvaW5BbGxJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfam9pbkFsbEludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvam9pbkFsbEludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuam9pbkFsbEludGVybmFscyA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgZnVuY3Rpb24gam9pbkFsbEludGVybmFscyhqb2luRm4sIHByb2plY3QpIHsKICAgICAgcmV0dXJuIHBpcGVfMS5waXBlKHRvQXJyYXlfMTIudG9BcnJheSgpLCBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKHNvdXJjZXMpIHsKICAgICAgICByZXR1cm4gam9pbkZuKHNvdXJjZXMpOwogICAgICB9KSwgcHJvamVjdCA/IG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHByb2plY3QpIDogaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5qb2luQWxsSW50ZXJuYWxzID0gam9pbkFsbEludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RBbGwuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdEFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdEFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IHZvaWQgMDsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIHZhciBqb2luQWxsSW50ZXJuYWxzXzEgPSByZXF1aXJlX2pvaW5BbGxJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3RBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QsIHByb2plY3QpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IGNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lQWxsLmpzCnZhciByZXF1aXJlX2NvbWJpbmVBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVBbGwgPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdEFsbF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsKCk7CiAgICBleHBvcnRzMi5jb21iaW5lQWxsID0gY29tYmluZUxhdGVzdEFsbF8xLmNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvciA/IHBpcGVfMS5waXBlKGNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSwgbWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0SW5pdChfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKSkpKShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gY29tYmluZUxhdGVzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RXaXRoLmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3RXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0MigpOwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBjb21iaW5lTGF0ZXN0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBjb25jYXRNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlc3VsdFNlbGVjdG9yKSA/IG1lcmdlTWFwXzEubWVyZ2VNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IsIDEpIDogbWVyZ2VNYXBfMS5tZXJnZU1hcChwcm9qZWN0LCAxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcCA9IGNvbmNhdE1hcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcFRvLmpzCnZhciByZXF1aXJlX2NvbmNhdE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gY29uY2F0TWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gY29uY2F0TWFwXzEuY29uY2F0TWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IGNvbmNhdE1hcF8xLmNvbmNhdE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gY29uY2F0TWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbmNhdEFsbF8xLmNvbmNhdEFsbCgpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXQgPSBjb25jYXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRXaXRoLmpzCnZhciByZXF1aXJlX2NvbmNhdFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdDIoKTsKICAgIGZ1bmN0aW9uIGNvbmNhdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSBjb25jYXRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMKdmFyIHJlcXVpcmVfZnJvbVN1YnNjcmliYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21TdWJzY3JpYmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBmcm9tU3Vic2NyaWJhYmxlKHN1YnNjcmliYWJsZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJhYmxlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU3Vic2NyaWJhYmxlID0gZnJvbVN1YnNjcmliYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Nvbm5lY3QuanMKdmFyIHJlcXVpcmVfY29ubmVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29ubmVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29ubmVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgZnJvbVN1YnNjcmliYWJsZV8xID0gcmVxdWlyZV9mcm9tU3Vic2NyaWJhYmxlKCk7CiAgICB2YXIgREVGQVVMVF9DT05GSUcgPSB7CiAgICAgIGNvbm5lY3RvcjogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gY29ubmVjdChzZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIGlmIChjb25maWcgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZyA9IERFRkFVTFRfQ09ORklHOwogICAgICB9CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZnJvbVN1YnNjcmliYWJsZV8xLmZyb21TdWJzY3JpYmFibGUoc3ViamVjdCkpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc291cmNlLnN1YnNjcmliZShzdWJqZWN0KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdCA9IGNvbm5lY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb3VudC5qcwp2YXIgcmVxdWlyZV9jb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvdW50ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIGZ1bmN0aW9uIGNvdW50KHByZWRpY2F0ZSkgewogICAgICByZXR1cm4gcmVkdWNlXzEucmVkdWNlKGZ1bmN0aW9uKHRvdGFsLCB2YWx1ZSwgaSkgewogICAgICAgIHJldHVybiAhcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaSkgPyB0b3RhbCArIDEgOiB0b3RhbDsKICAgICAgfSwgMCk7CiAgICB9CiAgICBleHBvcnRzMi5jb3VudCA9IGNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2UuanMKdmFyIHJlcXVpcmVfZGVib3VuY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVib3VuY2UoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGVtaXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbWl0LCBub29wXzEubm9vcCk7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb25TZWxlY3Rvcih2YWx1ZSkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXIpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IGRlYm91bmNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzCnZhciByZXF1aXJlX2RlYm91bmNlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWJvdW5jZVRpbWUoZHVlVGltZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFRpbWUgPSBudWxsOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGFjdGl2ZVRhc2sgPSBudWxsOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBlbWl0V2hlbklkbGUoKSB7CiAgICAgICAgICB2YXIgdGFyZ2V0VGltZSA9IGxhc3RUaW1lICsgZHVlVGltZTsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICBpZiAobm93IDwgdGFyZ2V0VGltZSkgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gdGhpcy5zY2hlZHVsZSh2b2lkIDAsIHRhcmdldFRpbWUgLSBub3cpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChhY3RpdmVUYXNrKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgZW1pdCgpOwogICAgICAgIH0KICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgICBsYXN0VGltZSA9IHNjaGVkdWxlci5ub3coKTsKICAgICAgICAgIGlmICghYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gc2NoZWR1bGVyLnNjaGVkdWxlKGVtaXRXaGVuSWRsZSwgZHVlVGltZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuYWRkKGFjdGl2ZVRhc2spOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVib3VuY2VUaW1lID0gZGVib3VuY2VUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVmYXVsdElmRW1wdHkuanMKdmFyIHJlcXVpcmVfZGVmYXVsdElmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlZmF1bHRJZkVtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZGVmYXVsdFZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSBkZWZhdWx0SWZFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2UuanMKdmFyIHJlcXVpcmVfdGFrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZSA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2UoY291bnQpIHsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaWYgKCsrc2VlbiA8PSBjb3VudCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICBpZiAoY291bnQgPD0gc2VlbikgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlID0gdGFrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2lnbm9yZUVsZW1lbnRzLmpzCnZhciByZXF1aXJlX2lnbm9yZUVsZW1lbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pZ25vcmVFbGVtZW50cy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZnVuY3Rpb24gaWdub3JlRWxlbWVudHMoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gaWdub3JlRWxlbWVudHM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXBUby5qcwp2YXIgcmVxdWlyZV9tYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcFRvID0gdm9pZCAwOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIGZ1bmN0aW9uIG1hcFRvKHZhbHVlKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hcFRvID0gbWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMKdmFyIHJlcXVpcmVfZGVsYXlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgaWdub3JlRWxlbWVudHNfMSA9IHJlcXVpcmVfaWdub3JlRWxlbWVudHMoKTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVsYXlXaGVuKGRlbGF5RHVyYXRpb25TZWxlY3Rvciwgc3Vic2NyaXB0aW9uRGVsYXkpIHsKICAgICAgaWYgKHN1YnNjcmlwdGlvbkRlbGF5KSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdChzdWJzY3JpcHRpb25EZWxheS5waXBlKHRha2VfMS50YWtlKDEpLCBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzKCkpLCBzb3VyY2UucGlwZShkZWxheVdoZW4oZGVsYXlEdXJhdGlvblNlbGVjdG9yKSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShkZWxheUR1cmF0aW9uU2VsZWN0b3IodmFsdWUsIGluZGV4KSkucGlwZSh0YWtlXzEudGFrZSgxKSwgbWFwVG9fMS5tYXBUbyh2YWx1ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IGRlbGF5V2hlbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbGF5LmpzCnZhciByZXF1aXJlX2RlbGF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVsYXkgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGRlbGF5KGR1ZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uID0gdGltZXJfMS50aW1lcihkdWUsIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGR1cmF0aW9uOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5ID0gZGVsYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZW1hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX2RlbWF0ZXJpYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbWF0ZXJpYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRlbWF0ZXJpYWxpemUoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihub3RpZmljYXRpb24pIHsKICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25fMS5vYnNlcnZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcik7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSBkZW1hdGVyaWFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3QuanMKdmFyIHJlcXVpcmVfZGlzdGluY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGlzdGluY3Qoa2V5U2VsZWN0b3IsIGZsdXNoZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBkaXN0aW5jdEtleXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIga2V5ID0ga2V5U2VsZWN0b3IgPyBrZXlTZWxlY3Rvcih2YWx1ZSkgOiB2YWx1ZTsKICAgICAgICAgIGlmICghZGlzdGluY3RLZXlzLmhhcyhrZXkpKSB7CiAgICAgICAgICAgIGRpc3RpbmN0S2V5cy5hZGQoa2V5KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgZmx1c2hlcyAmJiBpbm5lckZyb21fMS5pbm5lckZyb20oZmx1c2hlcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBkaXN0aW5jdEtleXMuY2xlYXIoKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0ID0gZGlzdGluY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kaXN0aW5jdFVudGlsQ2hhbmdlZC5qcwp2YXIgcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbENoYW5nZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbENoYW5nZWQoY29tcGFyYXRvciwga2V5U2VsZWN0b3IpIHsKICAgICAgaWYgKGtleVNlbGVjdG9yID09PSB2b2lkIDApIHsKICAgICAgICBrZXlTZWxlY3RvciA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgY29tcGFyYXRvciA9IGNvbXBhcmF0b3IgIT09IG51bGwgJiYgY29tcGFyYXRvciAhPT0gdm9pZCAwID8gY29tcGFyYXRvciA6IGRlZmF1bHRDb21wYXJlOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXZpb3VzS2V5OwogICAgICAgIHZhciBmaXJzdCA9IHRydWU7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBjdXJyZW50S2V5ID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgaWYgKGZpcnN0IHx8ICFjb21wYXJhdG9yKHByZXZpb3VzS2V5LCBjdXJyZW50S2V5KSkgewogICAgICAgICAgICBmaXJzdCA9IGZhbHNlOwogICAgICAgICAgICBwcmV2aW91c0tleSA9IGN1cnJlbnRLZXk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZGlzdGluY3RVbnRpbENoYW5nZWQ7CiAgICBmdW5jdGlvbiBkZWZhdWx0Q29tcGFyZShhLCBiKSB7CiAgICAgIHJldHVybiBhID09PSBiOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbEtleUNoYW5nZWQuanMKdmFyIHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxLZXlDaGFuZ2VkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IHZvaWQgMDsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbEtleUNoYW5nZWQoa2V5LCBjb21wYXJlKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkKGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4gY29tcGFyZSA/IGNvbXBhcmUoeFtrZXldLCB5W2tleV0pIDogeFtrZXldID09PSB5W2tleV07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcwp2YXIgcmVxdWlyZV90aHJvd0lmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRocm93SWZFbXB0eShlcnJvckZhY3RvcnkpIHsKICAgICAgaWYgKGVycm9yRmFjdG9yeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZXJyb3JGYWN0b3J5ID0gZGVmYXVsdEVycm9yRmFjdG9yeTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaGFzVmFsdWUgPyBzdWJzY3JpYmVyLmNvbXBsZXRlKCkgOiBzdWJzY3JpYmVyLmVycm9yKGVycm9yRmFjdG9yeSgpKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdGhyb3dJZkVtcHR5OwogICAgZnVuY3Rpb24gZGVmYXVsdEVycm9yRmFjdG9yeSgpIHsKICAgICAgcmV0dXJuIG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzCnZhciByZXF1aXJlX2VsZW1lbnRBdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSB2b2lkIDA7CiAgICB2YXIgQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMSA9IHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGhyb3dJZkVtcHR5XzEgPSByZXF1aXJlX3Rocm93SWZFbXB0eSgpOwogICAgdmFyIGRlZmF1bHRJZkVtcHR5XzEgPSByZXF1aXJlX2RlZmF1bHRJZkVtcHR5KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICBmdW5jdGlvbiBlbGVtZW50QXQoaW5kZXgsIGRlZmF1bHRWYWx1ZSkgewogICAgICBpZiAoaW5kZXggPCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgfQogICAgICB2YXIgaGFzRGVmYXVsdFZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+PSAyOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbih2LCBpKSB7CiAgICAgICAgICByZXR1cm4gaSA9PT0gaW5kZXg7CiAgICAgICAgfSksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSBlbGVtZW50QXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbmRXaXRoLmpzCnZhciByZXF1aXJlX2VuZFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VuZFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVuZFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIG9mXzEgPSByZXF1aXJlX29mKCk7CiAgICBmdW5jdGlvbiBlbmRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25jYXRfMS5jb25jYXQoc291cmNlLCBvZl8xLm9mLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbmRXaXRoID0gZW5kV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V2ZXJ5LmpzCnZhciByZXF1aXJlX2V2ZXJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXZlcnkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZXZlcnkocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAoIXByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrLCBzb3VyY2UpKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh0cnVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXZlcnkgPSBldmVyeTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RNYXAuanMKdmFyIHJlcXVpcmVfZXhoYXVzdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGV4aGF1c3RNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpLnBpcGUobWFwXzEubWFwKGZ1bmN0aW9uKGIsIGlpKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yKGEsIGIsIGksIGlpKTsKICAgICAgICAgICAgfSkpOwogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgdmFyIGlubmVyU3ViID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKG91dGVyVmFsdWUpIHsKICAgICAgICAgIGlmICghaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgICAgaXNDb21wbGV0ZSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdChvdXRlclZhbHVlLCBpbmRleCsrKSkuc3Vic2NyaWJlKGlubmVyU3ViKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgIWlubmVyU3ViICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IGV4aGF1c3RNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0QWxsLmpzCnZhciByZXF1aXJlX2V4aGF1c3RBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSB2b2lkIDA7CiAgICB2YXIgZXhoYXVzdE1hcF8xID0gcmVxdWlyZV9leGhhdXN0TWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RBbGwoKSB7CiAgICAgIHJldHVybiBleGhhdXN0TWFwXzEuZXhoYXVzdE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSBleGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdC5qcwp2YXIgcmVxdWlyZV9leGhhdXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leGhhdXN0ID0gdm9pZCAwOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgZXhwb3J0czIuZXhoYXVzdCA9IGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzCnZhciByZXF1aXJlX2V4cGFuZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leHBhbmQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbWVyZ2VJbnRlcm5hbHNfMSA9IHJlcXVpcmVfbWVyZ2VJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGV4cGFuZChwcm9qZWN0LCBjb25jdXJyZW50LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBjb25jdXJyZW50ID0gKGNvbmN1cnJlbnQgfHwgMCkgPCAxID8gSW5maW5pdHkgOiBjb25jdXJyZW50OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCB2b2lkIDAsIHRydWUsIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhwYW5kID0gZXhwYW5kOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluYWxpemUuanMKdmFyIHJlcXVpcmVfZmluYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmFsaXplLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIGZpbmFsaXplKGNhbGxiYWNrKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB0cnkgewogICAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgc3Vic2NyaWJlci5hZGQoY2FsbGJhY2spOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IGZpbmFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZC5qcwp2YXIgcmVxdWlyZV9maW5kID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVGaW5kID0gZXhwb3J0czIuZmluZCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaW5kKHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJ2YWx1ZSIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmQgPSBmaW5kOwogICAgZnVuY3Rpb24gY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsIGVtaXQpIHsKICAgICAgdmFyIGZpbmRJbmRleCA9IGVtaXQgPT09ICJpbmRleCI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgaSA9IGluZGV4Kys7CiAgICAgICAgICBpZiAocHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGksIHNvdXJjZSkpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGZpbmRJbmRleCA/IGkgOiB2YWx1ZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmaW5kSW5kZXggPyAtMSA6IHZvaWQgMCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlRmluZCA9IGNyZWF0ZUZpbmQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMKdmFyIHJlcXVpcmVfZmluZEluZGV4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbmRJbmRleCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBmaW5kXzEgPSByZXF1aXJlX2ZpbmQoKTsKICAgIGZ1bmN0aW9uIGZpbmRJbmRleChwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZpbmRfMS5jcmVhdGVGaW5kKHByZWRpY2F0ZSwgdGhpc0FyZywgImluZGV4IikpOwogICAgfQogICAgZXhwb3J0czIuZmluZEluZGV4ID0gZmluZEluZGV4OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlyc3QuanMKdmFyIHJlcXVpcmVfZmlyc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpcnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdCA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGZpcnN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZmlyc3QgPSBmaXJzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2dyb3VwQnkuanMKdmFyIHJlcXVpcmVfZ3JvdXBCeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZ3JvdXBCeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ3JvdXBCeSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZ3JvdXBCeShrZXlTZWxlY3RvciwgZWxlbWVudE9yT3B0aW9ucywgZHVyYXRpb24sIGNvbm5lY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVsZW1lbnQ7CiAgICAgICAgaWYgKCFlbGVtZW50T3JPcHRpb25zIHx8IHR5cGVvZiBlbGVtZW50T3JPcHRpb25zID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9uczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZHVyYXRpb24gPSBlbGVtZW50T3JPcHRpb25zLmR1cmF0aW9uLCBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9ucy5lbGVtZW50LCBjb25uZWN0b3IgPSBlbGVtZW50T3JPcHRpb25zLmNvbm5lY3RvcjsKICAgICAgICB9CiAgICAgICAgdmFyIGdyb3VwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgdmFyIG5vdGlmeSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBncm91cHMuZm9yRWFjaChjYik7CiAgICAgICAgICBjYihzdWJzY3JpYmVyKTsKICAgICAgICB9OwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIG5vdGlmeShmdW5jdGlvbihjb25zdW1lcikgewogICAgICAgICAgICByZXR1cm4gY29uc3VtZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0pOwogICAgICAgIH07CiAgICAgICAgdmFyIGFjdGl2ZUdyb3VwcyA9IDA7CiAgICAgICAgdmFyIHRlYXJkb3duQXR0ZW1wdGVkID0gZmFsc2U7CiAgICAgICAgdmFyIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyID0gbmV3IE9wZXJhdG9yU3Vic2NyaWJlcl8xLk9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGtleV8xID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgICB2YXIgZ3JvdXBfMSA9IGdyb3Vwcy5nZXQoa2V5XzEpOwogICAgICAgICAgICBpZiAoIWdyb3VwXzEpIHsKICAgICAgICAgICAgICBncm91cHMuc2V0KGtleV8xLCBncm91cF8xID0gY29ubmVjdG9yID8gY29ubmVjdG9yKCkgOiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgICAgICAgdmFyIGdyb3VwZWQgPSBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXlfMSwgZ3JvdXBfMSk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGdyb3VwZWQpOwogICAgICAgICAgICAgIGlmIChkdXJhdGlvbikgewogICAgICAgICAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGdyb3VwXzEsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBncm91cF8xLmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkdXJhdGlvblN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICByZXR1cm4gZ3JvdXBzLmRlbGV0ZShrZXlfMSk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb24oZ3JvdXBlZCkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXJfMSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBncm91cF8xLm5leHQoZWxlbWVudCA/IGVsZW1lbnQodmFsdWUpIDogdmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbm90aWZ5KGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5jb21wbGV0ZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGdyb3Vwcy5jbGVhcigpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdGVhcmRvd25BdHRlbXB0ZWQgPSB0cnVlOwogICAgICAgICAgcmV0dXJuIGFjdGl2ZUdyb3VwcyA9PT0gMDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyKTsKICAgICAgICBmdW5jdGlvbiBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXksIGdyb3VwU3ViamVjdCkgewogICAgICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihncm91cFN1YnNjcmliZXIpIHsKICAgICAgICAgICAgYWN0aXZlR3JvdXBzKys7CiAgICAgICAgICAgIHZhciBpbm5lclN1YiA9IGdyb3VwU3ViamVjdC5zdWJzY3JpYmUoZ3JvdXBTdWJzY3JpYmVyKTsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgLS1hY3RpdmVHcm91cHMgPT09IDAgJiYgdGVhcmRvd25BdHRlbXB0ZWQgJiYgZ3JvdXBCeVNvdXJjZVN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmVzdWx0LmtleSA9IGtleTsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmdyb3VwQnkgPSBncm91cEJ5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaXNFbXB0eS5qcwp2YXIgcmVxdWlyZV9pc0VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pc0VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0VtcHR5ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGlzRW1wdHkoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodHJ1ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzRW1wdHkgPSBpc0VtcHR5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZUxhc3QuanMKdmFyIHJlcXVpcmVfdGFrZUxhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2VMYXN0KGNvdW50KSB7CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgIGNvdW50IDwgYnVmZmVyLmxlbmd0aCAmJiBidWZmZXIuc2hpZnQoKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyXzEgPSBfX3ZhbHVlcyhidWZmZXIpLCBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpOyAhYnVmZmVyXzFfMS5kb25lOyBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIHZhbHVlID0gYnVmZmVyXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyXzFfMSAmJiAhYnVmZmVyXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcl8xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyXzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHRha2VMYXN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbGFzdC5qcwp2YXIgcmVxdWlyZV9sYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9sYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBsYXN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VMYXN0XzEudGFrZUxhc3QoMSksIGhhc0RlZmF1bHRWYWx1ZSA/IGRlZmF1bHRJZkVtcHR5XzEuZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSA6IHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5sYXN0ID0gbGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX21hdGVyaWFsaXplID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXRlcmlhbGl6ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hdGVyaWFsaXplKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlTmV4dCh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbi5jcmVhdGVDb21wbGV0ZSgpKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlRXJyb3IoZXJyKSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hdGVyaWFsaXplID0gbWF0ZXJpYWxpemU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMKdmFyIHJlcXVpcmVfbWF4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1heCA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtYXgoY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpID4gMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4ID4geSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1heCA9IG1heDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZsYXRNYXAuanMKdmFyIHJlcXVpcmVfZmxhdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmxhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IG1lcmdlTWFwXzEubWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcFRvLmpzCnZhciByZXF1aXJlX21lcmdlTWFwVG8gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIG1lcmdlTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgICAgfSwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIGNvbmN1cnJlbnQpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VNYXBUbyA9IG1lcmdlTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMKdmFyIHJlcXVpcmVfbWVyZ2VTY2FuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlU2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBtZXJnZUludGVybmFsc18xID0gcmVxdWlyZV9tZXJnZUludGVybmFscygpOwogICAgZnVuY3Rpb24gbWVyZ2VTY2FuKGFjY3VtdWxhdG9yLCBzZWVkLCBjb25jdXJyZW50KSB7CiAgICAgIGlmIChjb25jdXJyZW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25jdXJyZW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsKICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcihzdGF0ZSwgdmFsdWUsIGluZGV4KTsKICAgICAgICB9LCBjb25jdXJyZW50LCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3RhdGUgPSB2YWx1ZTsKICAgICAgICB9LCBmYWxzZSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdGF0ZSA9IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VTY2FuID0gbWVyZ2VTY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gbWVyZ2UyKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIGNvbmN1cnJlbnQgPSBhcmdzXzEucG9wTnVtYmVyKGFyZ3MsIEluZmluaXR5KTsKICAgICAgYXJncyA9IGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBtZXJnZUFsbF8xLm1lcmdlQWxsKGNvbmN1cnJlbnQpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcwp2YXIgcmVxdWlyZV9tZXJnZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gdm9pZCAwOwogICAgdmFyIG1lcmdlXzEgPSByZXF1aXJlX21lcmdlMigpOwogICAgZnVuY3Rpb24gbWVyZ2VXaXRoMigpIHsKICAgICAgdmFyIG90aGVyU291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIG90aGVyU291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlV2l0aCA9IG1lcmdlV2l0aDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMKdmFyIHJlcXVpcmVfbWluID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1pbiA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtaW4oY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpIDwgMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4IDwgeSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1pbiA9IG1pbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcwp2YXIgcmVxdWlyZV9tdWx0aWNhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubXVsdGljYXN0ID0gdm9pZCAwOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9Db25uZWN0YWJsZU9ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIGZ1bmN0aW9uIG11bHRpY2FzdChzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeSwgc2VsZWN0b3IpIHsKICAgICAgdmFyIHN1YmplY3RGYWN0b3J5ID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc3ViamVjdE9yU3ViamVjdEZhY3RvcnkpID8gc3ViamVjdE9yU3ViamVjdEZhY3RvcnkgOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc3ViamVjdE9yU3ViamVjdEZhY3Rvcnk7CiAgICAgIH07CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gY29ubmVjdF8xLmNvbm5lY3Qoc2VsZWN0b3IsIHsKICAgICAgICAgIGNvbm5lY3Rvcjogc3ViamVjdEZhY3RvcnkKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGUoc291cmNlLCBzdWJqZWN0RmFjdG9yeSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tdWx0aWNhc3QgPSBtdWx0aWNhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMKdmFyIHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgb25FcnJvclJlc3VtZU5leHRfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHQoKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0V2l0aCgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIG5leHRTb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShzb3VyY2VzKTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKG5leHRTb3VyY2VzKSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gb25FcnJvclJlc3VtZU5leHRXaXRoOwogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHQgPSBvbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wYWlyd2lzZS5qcwp2YXIgcmVxdWlyZV9wYWlyd2lzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGFpcndpc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJ3aXNlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHBhaXJ3aXNlKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXY7CiAgICAgICAgdmFyIGhhc1ByZXYgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHAgPSBwcmV2OwogICAgICAgICAgcHJldiA9IHZhbHVlOwogICAgICAgICAgaGFzUHJldiAmJiBzdWJzY3JpYmVyLm5leHQoW3AsIHZhbHVlXSk7CiAgICAgICAgICBoYXNQcmV2ID0gdHJ1ZTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGFpcndpc2UgPSBwYWlyd2lzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3BsdWNrLmpzCnZhciByZXF1aXJlX3BsdWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wbHVjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGx1Y2sgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgZnVuY3Rpb24gcGx1Y2soKSB7CiAgICAgIHZhciBwcm9wZXJ0aWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgcHJvcGVydGllc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBsZW5ndGggPSBwcm9wZXJ0aWVzLmxlbmd0aDsKICAgICAgaWYgKGxlbmd0aCA9PT0gMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigibGlzdCBvZiBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBlbXB0eS4iKTsKICAgICAgfQogICAgICByZXR1cm4gbWFwXzEubWFwKGZ1bmN0aW9uKHgpIHsKICAgICAgICB2YXIgY3VycmVudFByb3AgPSB4OwogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKICAgICAgICAgIHZhciBwID0gY3VycmVudFByb3AgPT09IG51bGwgfHwgY3VycmVudFByb3AgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGN1cnJlbnRQcm9wW3Byb3BlcnRpZXNbaV1dOwogICAgICAgICAgaWYgKHR5cGVvZiBwICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgICBjdXJyZW50UHJvcCA9IHA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY3VycmVudFByb3A7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGx1Y2sgPSBwbHVjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2guanMKdmFyIHJlcXVpcmVfcHVibGlzaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBtdWx0aWNhc3RfMSA9IHJlcXVpcmVfbXVsdGljYXN0KCk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBzZWxlY3RvciA/IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdChzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfSA6IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBtdWx0aWNhc3RfMS5tdWx0aWNhc3QobmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpKHNvdXJjZSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoID0gcHVibGlzaDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaEJlaGF2aW9yID0gdm9pZCAwOwogICAgdmFyIEJlaGF2aW9yU3ViamVjdF8xID0gcmVxdWlyZV9CZWhhdmlvclN1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoQmVoYXZpb3IoaW5pdGlhbFZhbHVlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3QoaW5pdGlhbFZhbHVlKTsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YmplY3Q7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBwdWJsaXNoQmVoYXZpb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoTGFzdC5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoTGFzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaExhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU3ViamVjdF8xID0gcmVxdWlyZV9Bc3luY1N1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoTGFzdCgpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHJldHVybiBuZXcgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlKHNvdXJjZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3ViamVjdDsKICAgICAgICB9KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gcHVibGlzaExhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoUmVwbGF5LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hSZXBsYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSB2b2lkIDA7CiAgICB2YXIgUmVwbGF5U3ViamVjdF8xID0gcmVxdWlyZV9SZXBsYXlTdWJqZWN0KCk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gcHVibGlzaFJlcGxheShidWZmZXJTaXplLCB3aW5kb3dUaW1lLCBzZWxlY3Rvck9yU2NoZWR1bGVyLCB0aW1lc3RhbXBQcm92aWRlcikgewogICAgICBpZiAoc2VsZWN0b3JPclNjaGVkdWxlciAmJiAhaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICB0aW1lc3RhbXBQcm92aWRlciA9IHNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIHNlbGVjdG9yID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikgPyBzZWxlY3Rvck9yU2NoZWR1bGVyIDogdm9pZCAwOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdChuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIpLCBzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBwdWJsaXNoUmVwbGF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmFjZVdpdGguanMKdmFyIHJlcXVpcmVfcmFjZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JhY2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYWNlV2l0aCA9IHZvaWQgMDsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcmFjZVdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gIW90aGVyU291cmNlcy5sZW5ndGggPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmFjZV8xLnJhY2VJbml0KF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChvdGhlclNvdXJjZXMpKSkoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmFjZVdpdGggPSByYWNlV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcwp2YXIgcmVxdWlyZV9yZXBlYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVwZWF0ID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gcmVwZWF0Mihjb3VudE9yQ29uZmlnKSB7CiAgICAgIHZhciBfYTsKICAgICAgdmFyIGNvdW50ID0gSW5maW5pdHk7CiAgICAgIHZhciBkZWxheTsKICAgICAgaWYgKGNvdW50T3JDb25maWcgIT0gbnVsbCkgewogICAgICAgIGlmICh0eXBlb2YgY291bnRPckNvbmZpZyA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIF9hID0gY291bnRPckNvbmZpZy5jb3VudCwgY291bnQgPSBfYSA9PT0gdm9pZCAwID8gSW5maW5pdHkgOiBfYSwgZGVsYXkgPSBjb3VudE9yQ29uZmlnLmRlbGF5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb3VudCA9IGNvdW50T3JDb25maWc7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc29GYXIgPSAwOwogICAgICAgIHZhciBzb3VyY2VTdWI7CiAgICAgICAgdmFyIHJlc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzb3VyY2VTdWIgPT09IG51bGwgfHwgc291cmNlU3ViID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzb3VyY2VTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNvdXJjZVN1YiA9IG51bGw7CiAgICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCkgewogICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoc29GYXIpKTsKICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIG5vdGlmaWVyU3Vic2NyaWJlcl8xLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIG5vdGlmaWVyLnN1YnNjcmliZShub3RpZmllclN1YnNjcmliZXJfMSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZVRvU291cmNlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBzb3VyY2VTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoKytzb0ZhciA8IGNvdW50KSB7CiAgICAgICAgICAgICAgaWYgKHNvdXJjZVN1YikgewogICAgICAgICAgICAgICAgcmVzdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Vuc3ViKSB7CiAgICAgICAgICAgIHJlc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdCA9IHJlcGVhdDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXBlYXRXaGVuLmpzCnZhciByZXF1aXJlX3JlcGVhdFdoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdFdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdFdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGNvbXBsZXRpb25zJDsKICAgICAgICB2YXIgaXNOb3RpZmllckNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc01haW5Db21wbGV0ZSAmJiBpc05vdGlmaWVyQ29tcGxldGUgJiYgKHN1YnNjcmliZXIuY29tcGxldGUoKSwgdHJ1ZSk7CiAgICAgICAgfTsKICAgICAgICB2YXIgZ2V0Q29tcGxldGlvblN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghY29tcGxldGlvbnMkKSB7CiAgICAgICAgICAgIGNvbXBsZXRpb25zJCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoY29tcGxldGlvbnMkKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZUZvclJlcGVhdFdoZW4oKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Jlc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlzTm90aWZpZXJDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29tcGxldGlvbnMkOwogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJlcGVhdFdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgIWNoZWNrQ29tcGxldGUoKSAmJiBnZXRDb21wbGV0aW9uU3ViamVjdCgpLm5leHQoKTsKICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSByZXBlYXRXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmV0cnkuanMKdmFyIHJlcXVpcmVfcmV0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JldHJ5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXRyeSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHJldHJ5KGNvbmZpZ09yQ291bnQpIHsKICAgICAgaWYgKGNvbmZpZ09yQ291bnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZ09yQ291bnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICB2YXIgY29uZmlnOwogICAgICBpZiAoY29uZmlnT3JDb3VudCAmJiB0eXBlb2YgY29uZmlnT3JDb3VudCA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25maWcgPSBjb25maWdPckNvdW50OwogICAgICB9IGVsc2UgewogICAgICAgIGNvbmZpZyA9IHsKICAgICAgICAgIGNvdW50OiBjb25maWdPckNvdW50CiAgICAgICAgfTsKICAgICAgfQogICAgICB2YXIgX2EgPSBjb25maWcuY291bnQsIGNvdW50ID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIGRlbGF5ID0gY29uZmlnLmRlbGF5LCBfYiA9IGNvbmZpZy5yZXNldE9uU3VjY2VzcywgcmVzZXRPblN1Y2Nlc3MgPSBfYiA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYjsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvRmFyID0gMDsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJldHJ5ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChyZXNldE9uU3VjY2VzcykgewogICAgICAgICAgICAgIHNvRmFyID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgaWYgKHNvRmFyKysgPCBjb3VudCkgewogICAgICAgICAgICAgIHZhciByZXN1Yl8xID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGlmIChkZWxheSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoZXJyLCBzb0ZhcikpOwogICAgICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBub3RpZmllclN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBub3RpZmllci5zdWJzY3JpYmUobm90aWZpZXJTdWJzY3JpYmVyXzEpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5KCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJldHJ5ID0gcmV0cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMKdmFyIHJlcXVpcmVfcmV0cnlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJldHJ5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmV0cnlXaGVuKG5vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN5bmNSZXN1YiA9IGZhbHNlOwogICAgICAgIHZhciBlcnJvcnMkOwogICAgICAgIHZhciBzdWJzY3JpYmVGb3JSZXRyeVdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlubmVyU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICBpZiAoIWVycm9ycyQpIHsKICAgICAgICAgICAgICBlcnJvcnMkID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG5vdGlmaWVyKGVycm9ycyQpKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGlubmVyU3ViID8gc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCkgOiBzeW5jUmVzdWIgPSB0cnVlOwogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZXJyb3JzJCkgewogICAgICAgICAgICAgIGVycm9ycyQubmV4dChlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Jlc3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgICAgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmV0cnlXaGVuID0gcmV0cnlXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzCnZhciByZXF1aXJlX3NhbXBsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNhbXBsZShub3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlID0gc2FtcGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlVGltZS5qcwp2YXIgcmVxdWlyZV9zYW1wbGVUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zYW1wbGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgdmFyIGludGVydmFsXzEgPSByZXF1aXJlX2ludGVydmFsKCk7CiAgICBmdW5jdGlvbiBzYW1wbGVUaW1lKHBlcmlvZCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZShpbnRlcnZhbF8xLmludGVydmFsKHBlcmlvZCwgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gc2FtcGxlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2Nhbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBzY2FuSW50ZXJuYWxzXzEgPSByZXF1aXJlX3NjYW5JbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIHNjYW4oYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjYW4gPSBzY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2VxdWVuY2VFcXVhbC5qcwp2YXIgcmVxdWlyZV9zZXF1ZW5jZUVxdWFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zZXF1ZW5jZUVxdWFsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zZXF1ZW5jZUVxdWFsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBzZXF1ZW5jZUVxdWFsKGNvbXBhcmVUbywgY29tcGFyYXRvcikgewogICAgICBpZiAoY29tcGFyYXRvciA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29tcGFyYXRvciA9IGZ1bmN0aW9uKGEsIGIpIHsKICAgICAgICAgIHJldHVybiBhID09PSBiOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBiU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oaXNFcXVhbCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlzRXF1YWwpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNyZWF0ZVN1YnNjcmliZXIgPSBmdW5jdGlvbihzZWxmU3RhdGUsIG90aGVyU3RhdGUpIHsKICAgICAgICAgIHZhciBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIHZhciBidWZmZXIgPSBvdGhlclN0YXRlLmJ1ZmZlciwgY29tcGxldGUgPSBvdGhlclN0YXRlLmNvbXBsZXRlOwogICAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGNvbXBsZXRlID8gZW1pdChmYWxzZSkgOiBzZWxmU3RhdGUuYnVmZmVyLnB1c2goYSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIWNvbXBhcmF0b3IoYSwgYnVmZmVyLnNoaWZ0KCkpICYmIGVtaXQoZmFsc2UpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2VsZlN0YXRlLmNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgdmFyIGNvbXBsZXRlID0gb3RoZXJTdGF0ZS5jb21wbGV0ZSwgYnVmZmVyID0gb3RoZXJTdGF0ZS5idWZmZXI7CiAgICAgICAgICAgIGNvbXBsZXRlICYmIGVtaXQoYnVmZmVyLmxlbmd0aCA9PT0gMCk7CiAgICAgICAgICAgIHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSBudWxsIHx8IHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gc2VxdWVuY2VFcXVhbFN1YnNjcmliZXI7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGNyZWF0ZVN1YnNjcmliZXIoYVN0YXRlLCBiU3RhdGUpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY29tcGFyZVRvKS5zdWJzY3JpYmUoY3JlYXRlU3Vic2NyaWJlcihiU3RhdGUsIGFTdGF0ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBzZXF1ZW5jZUVxdWFsOwogICAgZnVuY3Rpb24gY3JlYXRlU3RhdGUoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYnVmZmVyOiBbXSwKICAgICAgICBjb21wbGV0ZTogZmFsc2UKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NoYXJlLmpzCnZhciByZXF1aXJlX3NoYXJlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hhcmUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc2hhcmUob3B0aW9ucykgewogICAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7CiAgICAgICAgb3B0aW9ucyA9IHt9OwogICAgICB9CiAgICAgIHZhciBfYSA9IG9wdGlvbnMuY29ubmVjdG9yLCBjb25uZWN0b3IgPSBfYSA9PT0gdm9pZCAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9IDogX2EsIF9iID0gb3B0aW9ucy5yZXNldE9uRXJyb3IsIHJlc2V0T25FcnJvciA9IF9iID09PSB2b2lkIDAgPyB0cnVlIDogX2IsIF9jID0gb3B0aW9ucy5yZXNldE9uQ29tcGxldGUsIHJlc2V0T25Db21wbGV0ZSA9IF9jID09PSB2b2lkIDAgPyB0cnVlIDogX2MsIF9kID0gb3B0aW9ucy5yZXNldE9uUmVmQ291bnRaZXJvLCByZXNldE9uUmVmQ291bnRaZXJvID0gX2QgPT09IHZvaWQgMCA/IHRydWUgOiBfZDsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHdyYXBwZXJTb3VyY2UpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbjsKICAgICAgICB2YXIgcmVzZXRDb25uZWN0aW9uOwogICAgICAgIHZhciBzdWJqZWN0OwogICAgICAgIHZhciByZWZDb3VudCA9IDA7CiAgICAgICAgdmFyIGhhc0NvbXBsZXRlZCA9IGZhbHNlOwogICAgICAgIHZhciBoYXNFcnJvcmVkID0gZmFsc2U7CiAgICAgICAgdmFyIGNhbmNlbFJlc2V0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXNldENvbm5lY3Rpb24gPT09IG51bGwgfHwgcmVzZXRDb25uZWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiByZXNldENvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IHZvaWQgMDsKICAgICAgICB9OwogICAgICAgIHZhciByZXNldCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgIGNvbm5lY3Rpb24gPSBzdWJqZWN0ID0gdm9pZCAwOwogICAgICAgICAgaGFzQ29tcGxldGVkID0gaGFzRXJyb3JlZCA9IGZhbHNlOwogICAgICAgIH07CiAgICAgICAgdmFyIHJlc2V0QW5kVW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBjb25uID0gY29ubmVjdGlvbjsKICAgICAgICAgIHJlc2V0KCk7CiAgICAgICAgICBjb25uID09PSBudWxsIHx8IGNvbm4gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbm4udW5zdWJzY3JpYmUoKTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICAgIHJlZkNvdW50Kys7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yZWQgJiYgIWhhc0NvbXBsZXRlZCkgewogICAgICAgICAgICBjYW5jZWxSZXNldCgpOwogICAgICAgICAgfQogICAgICAgICAgdmFyIGRlc3QgPSBzdWJqZWN0ID0gc3ViamVjdCAhPT0gbnVsbCAmJiBzdWJqZWN0ICE9PSB2b2lkIDAgPyBzdWJqZWN0IDogY29ubmVjdG9yKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmVmQ291bnQtLTsKICAgICAgICAgICAgaWYgKHJlZkNvdW50ID09PSAwICYmICFoYXNFcnJvcmVkICYmICFoYXNDb21wbGV0ZWQpIHsKICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldEFuZFVuc3Vic2NyaWJlLCByZXNldE9uUmVmQ291bnRaZXJvKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgICBkZXN0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIGlmICghY29ubmVjdGlvbiAmJiByZWZDb3VudCA+IDApIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZGVzdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgICAgIGhhc0Vycm9yZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uRXJyb3IsIGVycik7CiAgICAgICAgICAgICAgICBkZXN0LmVycm9yKGVycik7CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBoYXNDb21wbGV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uQ29tcGxldGUpOwogICAgICAgICAgICAgICAgZGVzdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpLnN1YnNjcmliZShjb25uZWN0aW9uKTsKICAgICAgICAgIH0KICAgICAgICB9KSh3cmFwcGVyU291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnNoYXJlID0gc2hhcmU7CiAgICBmdW5jdGlvbiBoYW5kbGVSZXNldChyZXNldCwgb24pIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAyOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gdHJ1ZSkgewogICAgICAgIHJlc2V0KCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gZmFsc2UpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdmFyIG9uU3Vic2NyaWJlciA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICByZXNldCgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20ob24uYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSkuc3Vic2NyaWJlKG9uU3Vic2NyaWJlcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcwp2YXIgcmVxdWlyZV9zaGFyZVJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmVSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNoYXJlUmVwbGF5ID0gdm9pZCAwOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgdmFyIHNoYXJlXzEgPSByZXF1aXJlX3NoYXJlKCk7CiAgICBmdW5jdGlvbiBzaGFyZVJlcGxheShjb25maWdPckJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIGJ1ZmZlclNpemU7CiAgICAgIHZhciByZWZDb3VudCA9IGZhbHNlOwogICAgICBpZiAoY29uZmlnT3JCdWZmZXJTaXplICYmIHR5cGVvZiBjb25maWdPckJ1ZmZlclNpemUgPT09ICJvYmplY3QiKSB7CiAgICAgICAgX2EgPSBjb25maWdPckJ1ZmZlclNpemUuYnVmZmVyU2l6ZSwgYnVmZmVyU2l6ZSA9IF9hID09PSB2b2lkIDAgPyBJbmZpbml0eSA6IF9hLCBfYiA9IGNvbmZpZ09yQnVmZmVyU2l6ZS53aW5kb3dUaW1lLCB3aW5kb3dUaW1lID0gX2IgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2IsIF9jID0gY29uZmlnT3JCdWZmZXJTaXplLnJlZkNvdW50LCByZWZDb3VudCA9IF9jID09PSB2b2lkIDAgPyBmYWxzZSA6IF9jLCBzY2hlZHVsZXIgPSBjb25maWdPckJ1ZmZlclNpemUuc2NoZWR1bGVyOwogICAgICB9IGVsc2UgewogICAgICAgIGJ1ZmZlclNpemUgPSBjb25maWdPckJ1ZmZlclNpemUgIT09IG51bGwgJiYgY29uZmlnT3JCdWZmZXJTaXplICE9PSB2b2lkIDAgPyBjb25maWdPckJ1ZmZlclNpemUgOiBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZSh7CiAgICAgICAgY29ubmVjdG9yOiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKTsKICAgICAgICB9LAogICAgICAgIHJlc2V0T25FcnJvcjogdHJ1ZSwKICAgICAgICByZXNldE9uQ29tcGxldGU6IGZhbHNlLAogICAgICAgIHJlc2V0T25SZWZDb3VudFplcm86IHJlZkNvdW50CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBzaGFyZVJlcGxheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcwp2YXIgcmVxdWlyZV9zaW5nbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2luZ2xlID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNpbmdsZShwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBzaW5nbGVWYWx1ZTsKICAgICAgICB2YXIgc2VlblZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc2VlblZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGlmICghcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBoYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLmVycm9yKG5ldyBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcigiVG9vIG1hbnkgbWF0Y2hpbmcgdmFsdWVzIikpOwogICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgIHNpbmdsZVZhbHVlID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHNpbmdsZVZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihzZWVuVmFsdWUgPyBuZXcgTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3IoIk5vIG1hdGNoaW5nIHZhbHVlcyIpIDogbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaW5nbGUgPSBzaW5nbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwLmpzCnZhciByZXF1aXJlX3NraXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXAgPSB2b2lkIDA7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgZnVuY3Rpb24gc2tpcChjb3VudCkgewogICAgICByZXR1cm4gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKF8sIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGNvdW50IDw9IGluZGV4OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNraXAgPSBza2lwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMKdmFyIHJlcXVpcmVfc2tpcExhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwTGFzdCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNraXBMYXN0KHNraXBDb3VudCkgewogICAgICByZXR1cm4gc2tpcENvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHJpbmcgPSBuZXcgQXJyYXkoc2tpcENvdW50KTsKICAgICAgICB2YXIgc2VlbiA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciB2YWx1ZUluZGV4ID0gc2VlbisrOwogICAgICAgICAgaWYgKHZhbHVlSW5kZXggPCBza2lwQ291bnQpIHsKICAgICAgICAgICAgcmluZ1t2YWx1ZUluZGV4XSA9IHZhbHVlOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFyIGluZGV4ID0gdmFsdWVJbmRleCAlIHNraXBDb3VudDsKICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gcmluZ1tpbmRleF07CiAgICAgICAgICAgIHJpbmdbaW5kZXhdID0gdmFsdWU7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChvbGRWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJpbmcgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcExhc3QgPSBza2lwTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcwp2YXIgcmVxdWlyZV9za2lwVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2tpcFVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiBza2lwVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB0YWtpbmcgPSBmYWxzZTsKICAgICAgICB2YXIgc2tpcFN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBza2lwU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBza2lwU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2tpcFN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRha2luZyA9IHRydWU7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKHNraXBTdWJzY3JpYmVyKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRha2luZyAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwVW50aWwgPSBza2lwVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMKdmFyIHJlcXVpcmVfc2tpcFdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXBXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBza2lwV2hpbGUocHJlZGljYXRlKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgdGFraW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuICh0YWtpbmcgfHwgKHRha2luZyA9ICFwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspKSkgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcFdoaWxlID0gc2tpcFdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzCnZhciByZXF1aXJlX3N0YXJ0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdGFydFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3RhcnRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIodmFsdWVzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIChzY2hlZHVsZXIgPyBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UsIHNjaGVkdWxlcikgOiBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3RhcnRXaXRoID0gc3RhcnRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBjaGVja0NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNDb21wbGV0ZSAmJiAhaW5uZXJTdWJzY3JpYmVyICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpbm5lclN1YnNjcmliZXIgPT09IG51bGwgfHwgaW5uZXJTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbm5lclN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBpbm5lckluZGV4ID0gMDsKICAgICAgICAgIHZhciBvdXRlckluZGV4ID0gaW5kZXgrKzsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KHZhbHVlLCBvdXRlckluZGV4KSkuc3Vic2NyaWJlKGlubmVyU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihpbm5lclZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQocmVzdWx0U2VsZWN0b3IgPyByZXN1bHRTZWxlY3Rvcih2YWx1ZSwgaW5uZXJWYWx1ZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCsrKSA6IGlubmVyVmFsdWUpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSBzd2l0Y2hNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMKdmFyIHJlcXVpcmVfc3dpdGNoQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHZvaWQgMDsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaEFsbCgpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHN3aXRjaEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3dpdGNoTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gc3dpdGNoTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gc3dpdGNoTWFwXzEuc3dpdGNoTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IHN3aXRjaE1hcF8xLnN3aXRjaE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gc3dpdGNoTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hTY2FuLmpzCnZhciByZXF1aXJlX3N3aXRjaFNjYW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaFNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaFNjYW4gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3dpdGNoU2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgZnVuY3Rpb24oXywgaW5uZXJWYWx1ZSkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gaW5uZXJWYWx1ZSwgaW5uZXJWYWx1ZTsKICAgICAgICB9KShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGF0ZSA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hTY2FuID0gc3dpdGNoU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcwp2YXIgcmVxdWlyZV90YWtlVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZVVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiB0YWtlVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICAhc3Vic2NyaWJlci5jbG9zZWQgJiYgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlVW50aWwgPSB0YWtlVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMKdmFyIHJlcXVpcmVfdGFrZVdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlV2hpbGUocHJlZGljYXRlLCBpbmNsdXNpdmUpIHsKICAgICAgaWYgKGluY2x1c2l2ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgaW5jbHVzaXZlID0gZmFsc2U7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciByZXN1bHQgPSBwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspOwogICAgICAgICAgKHJlc3VsdCB8fCBpbmNsdXNpdmUpICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAhcmVzdWx0ICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZVdoaWxlID0gdGFrZVdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzCnZhciByZXF1aXJlX3RhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YXAgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiB0YXAob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICB2YXIgdGFwT2JzZXJ2ZXIgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgZXJyb3IgfHwgY29tcGxldGUgPyB7IG5leHQ6IG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUgfSA6IG9ic2VydmVyT3JOZXh0OwogICAgICByZXR1cm4gdGFwT2JzZXJ2ZXIgPyBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgKF9hID0gdGFwT2JzZXJ2ZXIuc3Vic2NyaWJlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgdmFyIGlzVW5zdWIgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIHZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgaXNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hMi5jYWxsKHRhcE9ic2VydmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHZhciBfYTI7CiAgICAgICAgICBpc1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICAoX2EyID0gdGFwT2JzZXJ2ZXIuZXJyb3IpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyLCBfYjsKICAgICAgICAgIGlmIChpc1Vuc3ViKSB7CiAgICAgICAgICAgIChfYTIgPSB0YXBPYnNlcnZlci51bnN1YnNjcmliZSkgPT09IG51bGwgfHwgX2EyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYTIuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgICB9CiAgICAgICAgICAoX2IgPSB0YXBPYnNlcnZlci5maW5hbGl6ZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwodGFwT2JzZXJ2ZXIpOwogICAgICAgIH0pKTsKICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfQogICAgZXhwb3J0czIudGFwID0gdGFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGUuanMKdmFyIHJlcXVpcmVfdGhyb3R0bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm90dGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gdGhyb3R0bGUoZHVyYXRpb25TZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSBjb25maWcgIT09IG51bGwgJiYgY29uZmlnICE9PSB2b2lkIDAgPyBjb25maWcgOiB7fSwgX2IgPSBfYS5sZWFkaW5nLCBsZWFkaW5nID0gX2IgPT09IHZvaWQgMCA/IHRydWUgOiBfYiwgX2MgPSBfYS50cmFpbGluZywgdHJhaWxpbmcgPSBfYyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYzsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgc2VuZFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmRUaHJvdHRsaW5nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB0aHJvdHRsZWQgPT09IG51bGwgfHwgdGhyb3R0bGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aHJvdHRsZWQudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgICBpZiAodHJhaWxpbmcpIHsKICAgICAgICAgICAgc2VuZCgpOwogICAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwVGhyb3R0bGluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0VGhyb3R0bGUgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRocm90dGxlZCA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmRUaHJvdHRsaW5nLCBjbGVhbnVwVGhyb3R0bGluZykpOwogICAgICAgIH07CiAgICAgICAgdmFyIHNlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBzZW5kVmFsdWU7CiAgICAgICAgICAgIHNlbmRWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICFpc0NvbXBsZXRlICYmIHN0YXJ0VGhyb3R0bGUodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHNlbmRWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgISh0aHJvdHRsZWQgJiYgIXRocm90dGxlZC5jbG9zZWQpICYmIChsZWFkaW5nID8gc2VuZCgpIDogc3RhcnRUaHJvdHRsZSh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaXNDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAhKHRyYWlsaW5nICYmIGhhc1ZhbHVlICYmIHRocm90dGxlZCAmJiAhdGhyb3R0bGVkLmNsb3NlZCkgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHRocm90dGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzCnZhciByZXF1aXJlX3Rocm90dGxlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiB0aHJvdHRsZVRpbWUoZHVyYXRpb24sIHNjaGVkdWxlciwgY29uZmlnKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uJCA9IHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbiQ7CiAgICAgIH0sIGNvbmZpZyk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB0aHJvdHRsZVRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfdGltZUludGVydmFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRpbWVJbnRlcnZhbChzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxhc3QgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBub3cgLSBsYXN0OwogICAgICAgICAgbGFzdCA9IG5vdzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgVGltZUludGVydmFsKHZhbHVlLCBpbnRlcnZhbCkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSB0aW1lSW50ZXJ2YWw7CiAgICB2YXIgVGltZUludGVydmFsID0gLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBUaW1lSW50ZXJ2YWwyKHZhbHVlLCBpbnRlcnZhbCkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7CiAgICAgIH0KICAgICAgcmV0dXJuIFRpbWVJbnRlcnZhbDI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5UaW1lSW50ZXJ2YWwgPSBUaW1lSW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0V2l0aC5qcwp2YXIgcmVxdWlyZV90aW1lb3V0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIHRpbWVvdXRfMSA9IHJlcXVpcmVfdGltZW91dCgpOwogICAgZnVuY3Rpb24gdGltZW91dFdpdGgoZHVlLCB3aXRoT2JzZXJ2YWJsZSwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBmaXJzdDsKICAgICAgdmFyIGVhY2g7CiAgICAgIHZhciBfd2l0aDsKICAgICAgc2NoZWR1bGVyID0gc2NoZWR1bGVyICE9PSBudWxsICYmIHNjaGVkdWxlciAhPT0gdm9pZCAwID8gc2NoZWR1bGVyIDogYXN5bmNfMS5hc3luYzsKICAgICAgaWYgKGlzRGF0ZV8xLmlzVmFsaWREYXRlKGR1ZSkpIHsKICAgICAgICBmaXJzdCA9IGR1ZTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZHVlID09PSAibnVtYmVyIikgewogICAgICAgIGVhY2ggPSBkdWU7CiAgICAgIH0KICAgICAgaWYgKHdpdGhPYnNlcnZhYmxlKSB7CiAgICAgICAgX3dpdGggPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB3aXRoT2JzZXJ2YWJsZTsKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG9ic2VydmFibGUgcHJvdmlkZWQgdG8gc3dpdGNoIHRvIik7CiAgICAgIH0KICAgICAgaWYgKGZpcnN0ID09IG51bGwgJiYgZWFjaCA9PSBudWxsKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gdGltZW91dCBwcm92aWRlZC4iKTsKICAgICAgfQogICAgICByZXR1cm4gdGltZW91dF8xLnRpbWVvdXQoewogICAgICAgIGZpcnN0LAogICAgICAgIGVhY2gsCiAgICAgICAgc2NoZWR1bGVyLAogICAgICAgIHdpdGg6IF93aXRoCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dFdpdGggPSB0aW1lb3V0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcwp2YXIgcmVxdWlyZV90aW1lc3RhbXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXN0YW1wID0gdm9pZCAwOwogICAgdmFyIGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9kYXRlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiB0aW1lc3RhbXAyKHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIGlmICh0aW1lc3RhbXBQcm92aWRlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGltZXN0YW1wUHJvdmlkZXIgPSBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMS5kYXRlVGltZXN0YW1wUHJvdmlkZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHJldHVybiB7IHZhbHVlLCB0aW1lc3RhbXA6IHRpbWVzdGFtcFByb3ZpZGVyLm5vdygpIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZXN0YW1wID0gdGltZXN0YW1wMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcwp2YXIgcmVxdWlyZV93aW5kb3cgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93ID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiB3aW5kb3cyKHdpbmRvd0JvdW5kYXJpZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3dTdWJqZWN0ID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHZhciBlcnJvckhhbmRsZXIgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93U3ViamVjdCA9PT0gbnVsbCB8fCB3aW5kb3dTdWJqZWN0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiB3aW5kb3dTdWJqZWN0Lm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGVycm9ySGFuZGxlcikpOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbSh3aW5kb3dCb3VuZGFyaWVzKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3AsIGVycm9ySGFuZGxlcikpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QgPT09IG51bGwgfHwgd2luZG93U3ViamVjdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93U3ViamVjdC51bnN1YnNjcmliZSgpOwogICAgICAgICAgd2luZG93U3ViamVjdCA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3cgPSB3aW5kb3cyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93Q291bnQuanMKdmFyIHJlcXVpcmVfd2luZG93Q291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd0NvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aW5kb3dDb3VudCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dDb3VudCh3aW5kb3dTaXplLCBzdGFydFdpbmRvd0V2ZXJ5KSB7CiAgICAgIGlmIChzdGFydFdpbmRvd0V2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydFdpbmRvd0V2ZXJ5ID0gMDsKICAgICAgfQogICAgICB2YXIgc3RhcnRFdmVyeSA9IHN0YXJ0V2luZG93RXZlcnkgPiAwID8gc3RhcnRXaW5kb3dFdmVyeSA6IHdpbmRvd1NpemU7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtuZXcgU3ViamVjdF8xLlN1YmplY3QoKV07CiAgICAgICAgdmFyIHN0YXJ0cyA9IFtdOwogICAgICAgIHZhciBjb3VudCA9IDA7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd3NbMF0uYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIHdpbmRvd3NfMSA9IF9fdmFsdWVzKHdpbmRvd3MpLCB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCk7ICF3aW5kb3dzXzFfMS5kb25lOyB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgd2luZG93XzEgPSB3aW5kb3dzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NfMV8xICYmICF3aW5kb3dzXzFfMS5kb25lICYmIChfYSA9IHdpbmRvd3NfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgYyA9IGNvdW50IC0gd2luZG93U2l6ZSArIDE7CiAgICAgICAgICBpZiAoYyA+PSAwICYmIGMgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCsrY291bnQgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93XzIpOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93XzIuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKHdpbmRvd3MubGVuZ3RoID4gMCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdoaWxlICh3aW5kb3dzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGFydHMgPSBudWxsOwogICAgICAgICAgd2luZG93cyA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpbmRvd0NvdW50ID0gd2luZG93Q291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUaW1lLmpzCnZhciByZXF1aXJlX3dpbmRvd1RpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RpbWUgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUaW1lKHdpbmRvd1RpbWVTcGFuKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciBvdGhlckFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAxOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlckFyZ3NbX2kgLSAxXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IChfYSA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIob3RoZXJBcmdzKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgdmFyIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgPSAoX2IgPSBvdGhlckFyZ3NbMF0pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IG51bGw7CiAgICAgIHZhciBtYXhXaW5kb3dTaXplID0gb3RoZXJBcmdzWzFdIHx8IEluZmluaXR5OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd1JlY29yZHMgPSBbXTsKICAgICAgICB2YXIgcmVzdGFydE9uQ2xvc2UgPSBmYWxzZTsKICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gcmVjb3JkLndpbmRvdywgc3VicyA9IHJlY29yZC5zdWJzOwogICAgICAgICAgd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vicy51bnN1YnNjcmliZSgpOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd1JlY29yZHMsIHJlY29yZCk7CiAgICAgICAgICByZXN0YXJ0T25DbG9zZSAmJiBzdGFydFdpbmRvdygpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0V2luZG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAod2luZG93UmVjb3JkcykgewogICAgICAgICAgICB2YXIgc3VicyA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoc3Vicyk7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgd2luZG93OiB3aW5kb3dfMSwKICAgICAgICAgICAgICBzdWJzLAogICAgICAgICAgICAgIHNlZW46IDAKICAgICAgICAgICAgfTsKICAgICAgICAgICAgd2luZG93UmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd18xLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGNsb3NlV2luZG93KHJlY29yZF8xKTsKICAgICAgICAgICAgfSwgd2luZG93VGltZVNwYW4pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgaWYgKHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgIT09IG51bGwgJiYgd2luZG93Q3JlYXRpb25JbnRlcnZhbCA+PSAwKSB7CiAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBzdGFydFdpbmRvdywgd2luZG93Q3JlYXRpb25JbnRlcnZhbCwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3RhcnRPbkNsb3NlID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgc3RhcnRXaW5kb3coKTsKICAgICAgICB2YXIgbG9vcCA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93UmVjb3Jkcy5zbGljZSgpLmZvckVhY2goY2IpOwogICAgICAgIH07CiAgICAgICAgdmFyIHRlcm1pbmF0ZSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBsb29wKGZ1bmN0aW9uKF9hMikgewogICAgICAgICAgICB2YXIgd2luZG93MiA9IF9hMi53aW5kb3c7CiAgICAgICAgICAgIHJldHVybiBjYih3aW5kb3cyKTsKICAgICAgICAgIH0pOwogICAgICAgICAgY2Ioc3Vic2NyaWJlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbG9vcChmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgICAgcmVjb3JkLndpbmRvdy5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgbWF4V2luZG93U2l6ZSA8PSArK3JlY29yZC5zZWVuICYmIGNsb3NlV2luZG93KHJlY29yZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmVycm9yKGVycik7CiAgICAgICAgICB9KTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93UmVjb3JkcyA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUaW1lID0gd2luZG93VGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcwp2YXIgcmVxdWlyZV93aW5kb3dUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93VG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1RvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtdOwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93Mik7CiAgICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgIHZhciBjbG9zZVdpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUod2luZG93cywgd2luZG93Mik7CiAgICAgICAgICAgIHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgICAgY2xvc2luZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24uYWRkKGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGNsb3NlV2luZG93LCBub29wXzEubm9vcCwgaGFuZGxlRXJyb3IpKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB2YXIgd2luZG93c0NvcHkgPSB3aW5kb3dzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciB3aW5kb3dzQ29weV8xID0gX192YWx1ZXMod2luZG93c0NvcHkpLCB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKTsgIXdpbmRvd3NDb3B5XzFfMS5kb25lOyB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IHdpbmRvd3NDb3B5XzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NDb3B5XzFfMSAmJiAhd2luZG93c0NvcHlfMV8xLmRvbmUgJiYgKF9hID0gd2luZG93c0NvcHlfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBoYW5kbGVFcnJvciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoMCA8IHdpbmRvd3MubGVuZ3RoKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUb2dnbGUgPSB3aW5kb3dUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dXaGVuLmpzCnZhciByZXF1aXJlX3dpbmRvd1doZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1doZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1doZW4gPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1doZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93MjsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXI7CiAgICAgICAgdmFyIGhhbmRsZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aW5kb3cyLmVycm9yKGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICB2YXIgb3BlbldpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID09PSBudWxsIHx8IHdpbmRvdzIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgIHdpbmRvdzIgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKCkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoY2xvc2luZ1N1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgb3BlbldpbmRvdywgb3BlbldpbmRvdywgaGFuZGxlRXJyb3IpKTsKICAgICAgICB9OwogICAgICAgIG9wZW5XaW5kb3coKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHdpbmRvdzIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93V2hlbiA9IHdpbmRvd1doZW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aXRoTGF0ZXN0RnJvbS5qcwp2YXIgcmVxdWlyZV93aXRoTGF0ZXN0RnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIGZ1bmN0aW9uIHdpdGhMYXRlc3RGcm9tKCkgewogICAgICB2YXIgaW5wdXRzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgaW5wdXRzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHByb2plY3QgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoaW5wdXRzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBsZW4gPSBpbnB1dHMubGVuZ3RoOwogICAgICAgIHZhciBvdGhlclZhbHVlcyA9IG5ldyBBcnJheShsZW4pOwogICAgICAgIHZhciBoYXNWYWx1ZSA9IGlucHV0cy5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgICAgdmFyIHJlYWR5ID0gZmFsc2U7CiAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihpMikgewogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0c1tpMl0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgb3RoZXJWYWx1ZXNbaTJdID0gdmFsdWU7CiAgICAgICAgICAgIGlmICghcmVhZHkgJiYgIWhhc1ZhbHVlW2kyXSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlW2kyXSA9IHRydWU7CiAgICAgICAgICAgICAgKHJlYWR5ID0gaGFzVmFsdWUuZXZlcnkoaWRlbnRpdHlfMS5pZGVudGl0eSkpICYmIChoYXNWYWx1ZSA9IG51bGwpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgX2xvb3BfMShpKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmIChyZWFkeSkgewogICAgICAgICAgICB2YXIgdmFsdWVzID0gX19zcHJlYWRBcnJheShbdmFsdWVdLCBfX3JlYWQob3RoZXJWYWx1ZXMpKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QgPyBwcm9qZWN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSA6IHZhbHVlcyk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gd2l0aExhdGVzdEZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMKdmFyIHJlcXVpcmVfemlwQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcEFsbCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgam9pbkFsbEludGVybmFsc18xID0gcmVxdWlyZV9qb2luQWxsSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiB6aXBBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoemlwXzEuemlwLCBwcm9qZWN0KTsKICAgIH0KICAgIGV4cG9ydHMyLnppcEFsbCA9IHppcEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcC5qcwp2YXIgcmVxdWlyZV96aXAyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiB6aXAoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoc291cmNlcykpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuemlwID0gemlwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwV2l0aC5qcwp2YXIgcmVxdWlyZV96aXBXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBXaXRoID0gdm9pZCAwOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAyKCk7CiAgICBmdW5jdGlvbiB6aXBXaXRoKCkgewogICAgICB2YXIgb3RoZXJJbnB1dHMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlcklucHV0c1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJJbnB1dHMpKSk7CiAgICB9CiAgICBleHBvcnRzMi56aXBXaXRoID0gemlwV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW5kZXguanMKdmFyIHJlcXVpcmVfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBtW2tdOwogICAgICB9IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbCA9IGV4cG9ydHMyLmlpZiA9IGV4cG9ydHMyLmdlbmVyYXRlID0gZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IGV4cG9ydHMyLmZyb21FdmVudCA9IGV4cG9ydHMyLmZyb20gPSBleHBvcnRzMi5mb3JrSm9pbiA9IGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuZGVmZXIgPSBleHBvcnRzMi5jb25uZWN0YWJsZSA9IGV4cG9ydHMyLmNvbmNhdCA9IGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gZXhwb3J0czIuYmluZENhbGxiYWNrID0gZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGV4cG9ydHMyLlNlcXVlbmNlRXJyb3IgPSBleHBvcnRzMi5PYmplY3RVbnN1YnNjcmliZWRFcnJvciA9IGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBleHBvcnRzMi5FbXB0eUVycm9yID0gZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IGV4cG9ydHMyLmxhc3RWYWx1ZUZyb20gPSBleHBvcnRzMi5pc09ic2VydmFibGUgPSBleHBvcnRzMi5pZGVudGl0eSA9IGV4cG9ydHMyLm5vb3AgPSBleHBvcnRzMi5waXBlID0gZXhwb3J0czIuTm90aWZpY2F0aW9uS2luZCA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLlN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpcHRpb24gPSBleHBvcnRzMi5TY2hlZHVsZXIgPSBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBleHBvcnRzMi5xdWV1ZSA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gZXhwb3J0czIuYXN5bmMgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IGV4cG9ydHMyLlJlcGxheVN1YmplY3QgPSBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBleHBvcnRzMi5TdWJqZWN0ID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVzID0gZXhwb3J0czIub2JzZXJ2YWJsZSA9IGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IGV4cG9ydHMyLk9ic2VydmFibGUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5maWx0ZXIgPSBleHBvcnRzMi5leHBhbmQgPSBleHBvcnRzMi5leGhhdXN0TWFwID0gZXhwb3J0czIuZXhoYXVzdEFsbCA9IGV4cG9ydHMyLmV4aGF1c3QgPSBleHBvcnRzMi5ldmVyeSA9IGV4cG9ydHMyLmVuZFdpdGggPSBleHBvcnRzMi5lbGVtZW50QXQgPSBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZXhwb3J0czIuZGlzdGluY3QgPSBleHBvcnRzMi5kZW1hdGVyaWFsaXplID0gZXhwb3J0czIuZGVsYXlXaGVuID0gZXhwb3J0czIuZGVsYXkgPSBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IGV4cG9ydHMyLmRlYm91bmNlVGltZSA9IGV4cG9ydHMyLmRlYm91bmNlID0gZXhwb3J0czIuY291bnQgPSBleHBvcnRzMi5jb25uZWN0ID0gZXhwb3J0czIuY29uY2F0V2l0aCA9IGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gZXhwb3J0czIuY29uY2F0TWFwID0gZXhwb3J0czIuY29uY2F0QWxsID0gZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0QWxsID0gZXhwb3J0czIuY29tYmluZUFsbCA9IGV4cG9ydHMyLmNhdGNoRXJyb3IgPSBleHBvcnRzMi5idWZmZXJXaGVuID0gZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gZXhwb3J0czIuYnVmZmVyVGltZSA9IGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gZXhwb3J0czIuYnVmZmVyID0gZXhwb3J0czIuYXVkaXRUaW1lID0gZXhwb3J0czIuYXVkaXQgPSBleHBvcnRzMi5jb25maWcgPSBleHBvcnRzMi5ORVZFUiA9IGV4cG9ydHMyLkVNUFRZID0gZXhwb3J0czIuc2NoZWR1bGVkID0gZXhwb3J0czIuemlwID0gZXhwb3J0czIudXNpbmcgPSBleHBvcnRzMi50aW1lciA9IGV4cG9ydHMyLnRocm93RXJyb3IgPSBleHBvcnRzMi5yYW5nZSA9IGV4cG9ydHMyLnJhY2UgPSBleHBvcnRzMi5wYXJ0aXRpb24gPSBleHBvcnRzMi5wYWlycyA9IGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub2YgPSBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLm1lcmdlID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3dpdGNoTWFwID0gZXhwb3J0czIuc3dpdGNoQWxsID0gZXhwb3J0czIuc3Vic2NyaWJlT24gPSBleHBvcnRzMi5zdGFydFdpdGggPSBleHBvcnRzMi5za2lwV2hpbGUgPSBleHBvcnRzMi5za2lwVW50aWwgPSBleHBvcnRzMi5za2lwTGFzdCA9IGV4cG9ydHMyLnNraXAgPSBleHBvcnRzMi5zaW5nbGUgPSBleHBvcnRzMi5zaGFyZVJlcGxheSA9IGV4cG9ydHMyLnNoYXJlID0gZXhwb3J0czIuc2VxdWVuY2VFcXVhbCA9IGV4cG9ydHMyLnNjYW4gPSBleHBvcnRzMi5zYW1wbGVUaW1lID0gZXhwb3J0czIuc2FtcGxlID0gZXhwb3J0czIucmVmQ291bnQgPSBleHBvcnRzMi5yZXRyeVdoZW4gPSBleHBvcnRzMi5yZXRyeSA9IGV4cG9ydHMyLnJlcGVhdFdoZW4gPSBleHBvcnRzMi5yZXBlYXQgPSBleHBvcnRzMi5yZWR1Y2UgPSBleHBvcnRzMi5yYWNlV2l0aCA9IGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBleHBvcnRzMi5wdWJsaXNoTGFzdCA9IGV4cG9ydHMyLnB1Ymxpc2hCZWhhdmlvciA9IGV4cG9ydHMyLnB1Ymxpc2ggPSBleHBvcnRzMi5wbHVjayA9IGV4cG9ydHMyLnBhaXJ3aXNlID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gZXhwb3J0czIub2JzZXJ2ZU9uID0gZXhwb3J0czIubXVsdGljYXN0ID0gZXhwb3J0czIubWluID0gZXhwb3J0czIubWVyZ2VXaXRoID0gZXhwb3J0czIubWVyZ2VTY2FuID0gZXhwb3J0czIubWVyZ2VNYXBUbyA9IGV4cG9ydHMyLm1lcmdlTWFwID0gZXhwb3J0czIuZmxhdE1hcCA9IGV4cG9ydHMyLm1lcmdlQWxsID0gZXhwb3J0czIubWF4ID0gZXhwb3J0czIubWF0ZXJpYWxpemUgPSBleHBvcnRzMi5tYXBUbyA9IGV4cG9ydHMyLm1hcCA9IGV4cG9ydHMyLmxhc3QgPSBleHBvcnRzMi5pc0VtcHR5ID0gZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSBleHBvcnRzMi5ncm91cEJ5ID0gZXhwb3J0czIuZmlyc3QgPSBleHBvcnRzMi5maW5kSW5kZXggPSBleHBvcnRzMi5maW5kID0gZXhwb3J0czIuZmluYWxpemUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi56aXBXaXRoID0gZXhwb3J0czIuemlwQWxsID0gZXhwb3J0czIud2l0aExhdGVzdEZyb20gPSBleHBvcnRzMi53aW5kb3dXaGVuID0gZXhwb3J0czIud2luZG93VG9nZ2xlID0gZXhwb3J0czIud2luZG93VGltZSA9IGV4cG9ydHMyLndpbmRvd0NvdW50ID0gZXhwb3J0czIud2luZG93ID0gZXhwb3J0czIudG9BcnJheSA9IGV4cG9ydHMyLnRpbWVzdGFtcCA9IGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRocm93SWZFbXB0eSA9IGV4cG9ydHMyLnRocm90dGxlVGltZSA9IGV4cG9ydHMyLnRocm90dGxlID0gZXhwb3J0czIudGFwID0gZXhwb3J0czIudGFrZVdoaWxlID0gZXhwb3J0czIudGFrZVVudGlsID0gZXhwb3J0czIudGFrZUxhc3QgPSBleHBvcnRzMi50YWtlID0gZXhwb3J0czIuc3dpdGNoU2NhbiA9IGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiT2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9ic2VydmFibGVfMS5PYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb25uZWN0YWJsZU9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9ic2VydmFibGVfMS5vYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZXNfMSA9IHJlcXVpcmVfYW5pbWF0aW9uRnJhbWVzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhbmltYXRpb25GcmFtZXMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZXNfMS5hbmltYXRpb25GcmFtZXM7CiAgICB9IH0pOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YmplY3RfMS5TdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBCZWhhdmlvclN1YmplY3RfMSA9IHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJCZWhhdmlvclN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiUmVwbGF5U3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFJlcGxheVN1YmplY3RfMS5SZXBsYXlTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBBc3luY1N1YmplY3RfMSA9IHJlcXVpcmVfQXN5bmNTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJBc3luY1N1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBc3luY1N1YmplY3RfMS5Bc3luY1N1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIGFzYXBfMSA9IHJlcXVpcmVfYXNhcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXNhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzYXBfMS5hc2FwOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzYXBTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc2FwXzEuYXNhcFNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzeW5jIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYXN5bmNfMS5hc3luYzsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc3luY1NjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIHF1ZXVlXzEgPSByZXF1aXJlX3F1ZXVlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJxdWV1ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHF1ZXVlXzEucXVldWU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicXVldWVTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBxdWV1ZV8xLnF1ZXVlU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZV8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYW5pbWF0aW9uRnJhbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZV8xLmFuaW1hdGlvbkZyYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVfMS5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgVmlydHVhbFRpbWVTY2hlZHVsZXJfMSA9IHJlcXVpcmVfVmlydHVhbFRpbWVTY2hlZHVsZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZpcnR1YWxUaW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsVGltZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWaXJ0dWFsQWN0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsQWN0aW9uOwogICAgfSB9KTsKICAgIHZhciBTY2hlZHVsZXJfMSA9IHJlcXVpcmVfU2NoZWR1bGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTY2hlZHVsZXJfMS5TY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlN1YnNjcmlwdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbjsKICAgIH0gfSk7CiAgICB2YXIgU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9TdWJzY3JpYmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTdWJzY3JpYmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gU3Vic2NyaWJlcl8xLlN1YnNjcmliZXI7CiAgICB9IH0pOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5vdGlmaWNhdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RpZmljYXRpb25LaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uS2luZDsKICAgIH0gfSk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwaXBlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGlwZV8xLnBpcGU7CiAgICB9IH0pOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibm9vcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5vb3BfMS5ub29wOwogICAgfSB9KTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWRlbnRpdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfSB9KTsKICAgIHZhciBpc09ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpc09ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpc09ic2VydmFibGVfMS5pc09ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIGxhc3RWYWx1ZUZyb21fMSA9IHJlcXVpcmVfbGFzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibGFzdFZhbHVlRnJvbSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb21fMS5sYXN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBmaXJzdFZhbHVlRnJvbV8xID0gcmVxdWlyZV9maXJzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmlyc3RWYWx1ZUZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbV8xLmZpcnN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xID0gcmVxdWlyZV9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yOwogICAgfSB9KTsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkVtcHR5RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgTm90Rm91bmRFcnJvcl8xID0gcmVxdWlyZV9Ob3RGb3VuZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RGb3VuZEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJPYmplY3RVbnN1YnNjcmliZWRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2VxdWVuY2VFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFNlcXVlbmNlRXJyb3JfMS5TZXF1ZW5jZUVycm9yOwogICAgfSB9KTsKICAgIHZhciB0aW1lb3V0XzEgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlRpbWVvdXRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRfMS5UaW1lb3V0RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFVuc3Vic2NyaXB0aW9uRXJyb3JfMSA9IHJlcXVpcmVfVW5zdWJzY3JpcHRpb25FcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVW5zdWJzY3JpcHRpb25FcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yOwogICAgfSB9KTsKICAgIHZhciBiaW5kQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJiaW5kQ2FsbGJhY2siLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tfMS5iaW5kQ2FsbGJhY2s7CiAgICB9IH0pOwogICAgdmFyIGJpbmROb2RlQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZE5vZGVDYWxsYmFjaygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYmluZE5vZGVDYWxsYmFjayIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJpbmROb2RlQ2FsbGJhY2tfMS5iaW5kTm9kZUNhbGxiYWNrOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0XzEuY29tYmluZUxhdGVzdDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0OwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0YWJsZV8xID0gcmVxdWlyZV9jb25uZWN0YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29ubmVjdGFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0YWJsZV8xLmNvbm5lY3RhYmxlOwogICAgfSB9KTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyOwogICAgfSB9KTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbXB0eV8xLmVtcHR5OwogICAgfSB9KTsKICAgIHZhciBmb3JrSm9pbl8xID0gcmVxdWlyZV9mb3JrSm9pbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZm9ya0pvaW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmb3JrSm9pbl8xLmZvcmtKb2luOwogICAgfSB9KTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tXzEuZnJvbTsKICAgIH0gfSk7CiAgICB2YXIgZnJvbUV2ZW50XzEgPSByZXF1aXJlX2Zyb21FdmVudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZnJvbUV2ZW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbUV2ZW50XzEuZnJvbUV2ZW50OwogICAgfSB9KTsKICAgIHZhciBmcm9tRXZlbnRQYXR0ZXJuXzEgPSByZXF1aXJlX2Zyb21FdmVudFBhdHRlcm4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb21FdmVudFBhdHRlcm4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tRXZlbnRQYXR0ZXJuXzEuZnJvbUV2ZW50UGF0dGVybjsKICAgIH0gfSk7CiAgICB2YXIgZ2VuZXJhdGVfMSA9IHJlcXVpcmVfZ2VuZXJhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdlbmVyYXRlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ2VuZXJhdGVfMS5nZW5lcmF0ZTsKICAgIH0gfSk7CiAgICB2YXIgaWlmXzEgPSByZXF1aXJlX2lpZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWlmIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaWlmXzEuaWlmOwogICAgfSB9KTsKICAgIHZhciBpbnRlcnZhbF8xID0gcmVxdWlyZV9pbnRlcnZhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaW50ZXJ2YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpbnRlcnZhbF8xLmludGVydmFsOwogICAgfSB9KTsKICAgIHZhciBtZXJnZV8xID0gcmVxdWlyZV9tZXJnZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlOwogICAgfSB9KTsKICAgIHZhciBuZXZlcl8xID0gcmVxdWlyZV9uZXZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibmV2ZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBuZXZlcl8xLm5ldmVyOwogICAgfSB9KTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2YiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvZl8xLm9mOwogICAgfSB9KTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib25FcnJvclJlc3VtZU5leHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0OwogICAgfSB9KTsKICAgIHZhciBwYWlyc18xID0gcmVxdWlyZV9wYWlycygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGFpcnMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYWlyc18xLnBhaXJzOwogICAgfSB9KTsKICAgIHZhciBwYXJ0aXRpb25fMSA9IHJlcXVpcmVfcGFydGl0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwYXJ0aXRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYXJ0aXRpb25fMS5wYXJ0aXRpb247CiAgICB9IH0pOwogICAgdmFyIHJhY2VfMSA9IHJlcXVpcmVfcmFjZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VfMS5yYWNlOwogICAgfSB9KTsKICAgIHZhciByYW5nZV8xID0gcmVxdWlyZV9yYW5nZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFuZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYW5nZV8xLnJhbmdlOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm93RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0Vycm9yXzEudGhyb3dFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZXJfMS50aW1lcjsKICAgIH0gfSk7CiAgICB2YXIgdXNpbmdfMSA9IHJlcXVpcmVfdXNpbmcoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInVzaW5nIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdXNpbmdfMS51c2luZzsKICAgIH0gfSk7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwXzEuemlwOwogICAgfSB9KTsKICAgIHZhciBzY2hlZHVsZWRfMSA9IHJlcXVpcmVfc2NoZWR1bGVkKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzY2hlZHVsZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZWRfMS5zY2hlZHVsZWQ7CiAgICB9IH0pOwogICAgdmFyIGVtcHR5XzIgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJFTVBUWSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVtcHR5XzIuRU1QVFk7CiAgICB9IH0pOwogICAgdmFyIG5ldmVyXzIgPSByZXF1aXJlX25ldmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJORVZFUiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5ldmVyXzIuTkVWRVI7CiAgICB9IH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHlwZXMyKCksIGV4cG9ydHMyKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25maWciLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25maWdfMS5jb25maWc7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhdWRpdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQ7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0VGltZV8xID0gcmVxdWlyZV9hdWRpdFRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImF1ZGl0VGltZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0VGltZV8xLmF1ZGl0VGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyXzEgPSByZXF1aXJlX2J1ZmZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyXzEuYnVmZmVyOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJDb3VudF8xID0gcmVxdWlyZV9idWZmZXJDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyQ291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJDb3VudF8xLmJ1ZmZlckNvdW50OwogICAgfSB9KTsKICAgIHZhciBidWZmZXJUaW1lXzEgPSByZXF1aXJlX2J1ZmZlclRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlclRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJUaW1lXzEuYnVmZmVyVGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyVG9nZ2xlXzEgPSByZXF1aXJlX2J1ZmZlclRvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyVG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyVG9nZ2xlXzEuYnVmZmVyVG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJXaGVuXzEgPSByZXF1aXJlX2J1ZmZlcldoZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlcldoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJXaGVuXzEuYnVmZmVyV2hlbjsKICAgIH0gfSk7CiAgICB2YXIgY2F0Y2hFcnJvcl8xID0gcmVxdWlyZV9jYXRjaEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjYXRjaEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY2F0Y2hFcnJvcl8xLmNhdGNoRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIGNvbWJpbmVBbGxfMSA9IHJlcXVpcmVfY29tYmluZUFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29tYmluZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbWJpbmVBbGxfMS5jb21iaW5lQWxsOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0QWxsXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0QWxsXzEuY29tYmluZUxhdGVzdEFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdFdpdGhfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdFdpdGhfMS5jb21iaW5lTGF0ZXN0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRNYXBfMSA9IHJlcXVpcmVfY29uY2F0TWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRNYXBfMS5jb25jYXRNYXA7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdE1hcFRvXzEgPSByZXF1aXJlX2NvbmNhdE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdE1hcFRvXzEuY29uY2F0TWFwVG87CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdFdpdGhfMSA9IHJlcXVpcmVfY29uY2F0V2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdFdpdGhfMS5jb25jYXRXaXRoOwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbm5lY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdDsKICAgIH0gfSk7CiAgICB2YXIgY291bnRfMSA9IHJlcXVpcmVfY291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY291bnRfMS5jb3VudDsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VfMSA9IHJlcXVpcmVfZGVib3VuY2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlYm91bmNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VfMS5kZWJvdW5jZTsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VUaW1lXzEgPSByZXF1aXJlX2RlYm91bmNlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVib3VuY2VUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VUaW1lXzEuZGVib3VuY2VUaW1lOwogICAgfSB9KTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmYXVsdElmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5OwogICAgfSB9KTsKICAgIHZhciBkZWxheV8xID0gcmVxdWlyZV9kZWxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVsYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheV8xLmRlbGF5OwogICAgfSB9KTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJkZWxheVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW47CiAgICB9IH0pOwogICAgdmFyIGRlbWF0ZXJpYWxpemVfMSA9IHJlcXVpcmVfZGVtYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVtYXRlcmlhbGl6ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlbWF0ZXJpYWxpemVfMS5kZW1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdF8xID0gcmVxdWlyZV9kaXN0aW5jdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdF8xLmRpc3RpbmN0OwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbENoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbEtleUNoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xLmRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBlbGVtZW50QXRfMSA9IHJlcXVpcmVfZWxlbWVudEF0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJlbGVtZW50QXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbGVtZW50QXRfMS5lbGVtZW50QXQ7CiAgICB9IH0pOwogICAgdmFyIGVuZFdpdGhfMSA9IHJlcXVpcmVfZW5kV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW5kV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVuZFdpdGhfMS5lbmRXaXRoOwogICAgfSB9KTsKICAgIHZhciBldmVyeV8xID0gcmVxdWlyZV9ldmVyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXZlcnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBldmVyeV8xLmV2ZXJ5OwogICAgfSB9KTsKICAgIHZhciBleGhhdXN0XzEgPSByZXF1aXJlX2V4aGF1c3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV4aGF1c3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGhhdXN0XzEuZXhoYXVzdDsKICAgIH0gfSk7CiAgICB2YXIgZXhoYXVzdEFsbF8xID0gcmVxdWlyZV9leGhhdXN0QWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleGhhdXN0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhoYXVzdEFsbF8xLmV4aGF1c3RBbGw7CiAgICB9IH0pOwogICAgdmFyIGV4aGF1c3RNYXBfMSA9IHJlcXVpcmVfZXhoYXVzdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhoYXVzdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RNYXBfMS5leGhhdXN0TWFwOwogICAgfSB9KTsKICAgIHZhciBleHBhbmRfMSA9IHJlcXVpcmVfZXhwYW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleHBhbmQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleHBhbmRfMS5leHBhbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbHRlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbHRlcl8xLmZpbHRlcjsKICAgIH0gfSk7CiAgICB2YXIgZmluYWxpemVfMSA9IHJlcXVpcmVfZmluYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmFsaXplIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluYWxpemVfMS5maW5hbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgZmluZF8xID0gcmVxdWlyZV9maW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluZF8xLmZpbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbmRJbmRleF8xID0gcmVxdWlyZV9maW5kSW5kZXgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmRJbmRleCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmRJbmRleF8xLmZpbmRJbmRleDsKICAgIH0gfSk7CiAgICB2YXIgZmlyc3RfMSA9IHJlcXVpcmVfZmlyc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpcnN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmlyc3RfMS5maXJzdDsKICAgIH0gfSk7CiAgICB2YXIgZ3JvdXBCeV8xID0gcmVxdWlyZV9ncm91cEJ5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJncm91cEJ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ3JvdXBCeV8xLmdyb3VwQnk7CiAgICB9IH0pOwogICAgdmFyIGlnbm9yZUVsZW1lbnRzXzEgPSByZXF1aXJlX2lnbm9yZUVsZW1lbnRzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpZ25vcmVFbGVtZW50cyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlnbm9yZUVsZW1lbnRzXzEuaWdub3JlRWxlbWVudHM7CiAgICB9IH0pOwogICAgdmFyIGlzRW1wdHlfMSA9IHJlcXVpcmVfaXNFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaXNFbXB0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlzRW1wdHlfMS5pc0VtcHR5OwogICAgfSB9KTsKICAgIHZhciBsYXN0XzEgPSByZXF1aXJlX2xhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImxhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBsYXN0XzEubGFzdDsKICAgIH0gfSk7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWFwXzEubWFwOwogICAgfSB9KTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXBUb18xLm1hcFRvOwogICAgfSB9KTsKICAgIHZhciBtYXRlcmlhbGl6ZV8xID0gcmVxdWlyZV9tYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWF0ZXJpYWxpemUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXRlcmlhbGl6ZV8xLm1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBtYXhfMSA9IHJlcXVpcmVfbWF4KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtYXgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXhfMS5tYXg7CiAgICB9IH0pOwogICAgdmFyIG1lcmdlQWxsXzEgPSByZXF1aXJlX21lcmdlQWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1lcmdlQWxsXzEubWVyZ2VBbGw7CiAgICB9IH0pOwogICAgdmFyIGZsYXRNYXBfMSA9IHJlcXVpcmVfZmxhdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmxhdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZsYXRNYXBfMS5mbGF0TWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcFRvXzEgPSByZXF1aXJlX21lcmdlTWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlTWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcFRvXzEubWVyZ2VNYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VTY2FuXzEgPSByZXF1aXJlX21lcmdlU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VTY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VTY2FuXzEubWVyZ2VTY2FuOwogICAgfSB9KTsKICAgIHZhciBtZXJnZVdpdGhfMSA9IHJlcXVpcmVfbWVyZ2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZVdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZVdpdGhfMS5tZXJnZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIG1pbl8xID0gcmVxdWlyZV9taW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1pbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1pbl8xLm1pbjsKICAgIH0gfSk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibXVsdGljYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbXVsdGljYXN0XzEubXVsdGljYXN0OwogICAgfSB9KTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJvYnNlcnZlT24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvYnNlcnZlT25fMS5vYnNlcnZlT247CiAgICB9IH0pOwogICAgdmFyIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9uRXJyb3JSZXN1bWVOZXh0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xLm9uRXJyb3JSZXN1bWVOZXh0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgcGFpcndpc2VfMSA9IHJlcXVpcmVfcGFpcndpc2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBhaXJ3aXNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFpcndpc2VfMS5wYWlyd2lzZTsKICAgIH0gfSk7CiAgICB2YXIgcGx1Y2tfMSA9IHJlcXVpcmVfcGx1Y2soKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBsdWNrIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGx1Y2tfMS5wbHVjazsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaF8xID0gcmVxdWlyZV9wdWJsaXNoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaF8xLnB1Ymxpc2g7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hCZWhhdmlvcl8xID0gcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hCZWhhdmlvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hCZWhhdmlvcl8xLnB1Ymxpc2hCZWhhdmlvcjsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaExhc3RfMSA9IHJlcXVpcmVfcHVibGlzaExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaExhc3RfMS5wdWJsaXNoTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaFJlcGxheV8xID0gcmVxdWlyZV9wdWJsaXNoUmVwbGF5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaFJlcGxheV8xLnB1Ymxpc2hSZXBsYXk7CiAgICB9IH0pOwogICAgdmFyIHJhY2VXaXRoXzEgPSByZXF1aXJlX3JhY2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyYWNlV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VXaXRoXzEucmFjZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZHVjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZTsKICAgIH0gfSk7CiAgICB2YXIgcmVwZWF0XzEyID0gcmVxdWlyZV9yZXBlYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlcGVhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdF8xMi5yZXBlYXQ7CiAgICB9IH0pOwogICAgdmFyIHJlcGVhdFdoZW5fMSA9IHJlcXVpcmVfcmVwZWF0V2hlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVwZWF0V2hlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdFdoZW5fMS5yZXBlYXRXaGVuOwogICAgfSB9KTsKICAgIHZhciByZXRyeV8xID0gcmVxdWlyZV9yZXRyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmV0cnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeV8xLnJldHJ5OwogICAgfSB9KTsKICAgIHZhciByZXRyeVdoZW5fMSA9IHJlcXVpcmVfcmV0cnlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXRyeVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeVdoZW5fMS5yZXRyeVdoZW47CiAgICB9IH0pOwogICAgdmFyIHJlZkNvdW50XzEgPSByZXF1aXJlX3JlZkNvdW50KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWZDb3VudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZkNvdW50XzEucmVmQ291bnQ7CiAgICB9IH0pOwogICAgdmFyIHNhbXBsZV8xID0gcmVxdWlyZV9zYW1wbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNhbXBsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZTsKICAgIH0gfSk7CiAgICB2YXIgc2FtcGxlVGltZV8xID0gcmVxdWlyZV9zYW1wbGVUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzYW1wbGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2FtcGxlVGltZV8xLnNhbXBsZVRpbWU7CiAgICB9IH0pOwogICAgdmFyIHNjYW5fMSA9IHJlcXVpcmVfc2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjYW5fMS5zY2FuOwogICAgfSB9KTsKICAgIHZhciBzZXF1ZW5jZUVxdWFsXzEgPSByZXF1aXJlX3NlcXVlbmNlRXF1YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNlcXVlbmNlRXF1YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzZXF1ZW5jZUVxdWFsXzEuc2VxdWVuY2VFcXVhbDsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVfMSA9IHJlcXVpcmVfc2hhcmUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZTsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVSZXBsYXlfMSA9IHJlcXVpcmVfc2hhcmVSZXBsYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVSZXBsYXlfMS5zaGFyZVJlcGxheTsKICAgIH0gfSk7CiAgICB2YXIgc2luZ2xlXzEgPSByZXF1aXJlX3NpbmdsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2luZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2luZ2xlXzEuc2luZ2xlOwogICAgfSB9KTsKICAgIHZhciBza2lwXzEgPSByZXF1aXJlX3NraXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwXzEuc2tpcDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcExhc3RfMSA9IHJlcXVpcmVfc2tpcExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXBMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcExhc3RfMS5za2lwTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcFVudGlsXzEgPSByZXF1aXJlX3NraXBVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcFVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcFVudGlsXzEuc2tpcFVudGlsOwogICAgfSB9KTsKICAgIHZhciBza2lwV2hpbGVfMSA9IHJlcXVpcmVfc2tpcFdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJza2lwV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwV2hpbGVfMS5za2lwV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHN0YXJ0V2l0aF8xID0gcmVxdWlyZV9zdGFydFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0YXJ0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN0YXJ0V2l0aF8xLnN0YXJ0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN1YnNjcmliZU9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbjsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoQWxsXzEgPSByZXF1aXJlX3N3aXRjaEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoQWxsXzEuc3dpdGNoQWxsOwogICAgfSB9KTsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXA7CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaE1hcFRvXzEgPSByZXF1aXJlX3N3aXRjaE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcFRvXzEuc3dpdGNoTWFwVG87CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaFNjYW5fMSA9IHJlcXVpcmVfc3dpdGNoU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoU2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaFNjYW5fMS5zd2l0Y2hTY2FuOwogICAgfSB9KTsKICAgIHZhciB0YWtlXzEgPSByZXF1aXJlX3Rha2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlXzEudGFrZTsKICAgIH0gfSk7CiAgICB2YXIgdGFrZUxhc3RfMSA9IHJlcXVpcmVfdGFrZUxhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2VMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZUxhc3RfMS50YWtlTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgdGFrZVVudGlsXzEgPSByZXF1aXJlX3Rha2VVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZVVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZVVudGlsXzEudGFrZVVudGlsOwogICAgfSB9KTsKICAgIHZhciB0YWtlV2hpbGVfMSA9IHJlcXVpcmVfdGFrZVdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0YWtlV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlV2hpbGVfMS50YWtlV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHRhcF8xID0gcmVxdWlyZV90YXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRhcF8xLnRhcDsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVfMSA9IHJlcXVpcmVfdGhyb3R0bGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm90dGxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVfMS50aHJvdHRsZTsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVUaW1lXzEgPSByZXF1aXJlX3Rocm90dGxlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGhyb3R0bGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVUaW1lXzEudGhyb3R0bGVUaW1lOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvd0lmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHk7CiAgICB9IH0pOwogICAgdmFyIHRpbWVJbnRlcnZhbF8xID0gcmVxdWlyZV90aW1lSW50ZXJ2YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVJbnRlcnZhbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVJbnRlcnZhbF8xLnRpbWVJbnRlcnZhbDsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dF8yID0gcmVxdWlyZV90aW1lb3V0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZW91dF8yLnRpbWVvdXQ7CiAgICB9IH0pOwogICAgdmFyIHRpbWVvdXRXaXRoXzEgPSByZXF1aXJlX3RpbWVvdXRXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRXaXRoXzEudGltZW91dFdpdGg7CiAgICB9IH0pOwogICAgdmFyIHRpbWVzdGFtcF8xID0gcmVxdWlyZV90aW1lc3RhbXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVzdGFtcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcF8xLnRpbWVzdGFtcDsKICAgIH0gfSk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidG9BcnJheSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRvQXJyYXlfMTIudG9BcnJheTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93XzEgPSByZXF1aXJlX3dpbmRvdygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93XzEud2luZG93OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dDb3VudF8xID0gcmVxdWlyZV93aW5kb3dDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93Q291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dDb3VudF8xLndpbmRvd0NvdW50OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dUaW1lXzEgPSByZXF1aXJlX3dpbmRvd1RpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1RpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dUaW1lXzEud2luZG93VGltZTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93VG9nZ2xlXzEgPSByZXF1aXJlX3dpbmRvd1RvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93VG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93VG9nZ2xlXzEud2luZG93VG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dXaGVuXzEgPSByZXF1aXJlX3dpbmRvd1doZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1doZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dXaGVuXzEud2luZG93V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgd2l0aExhdGVzdEZyb21fMSA9IHJlcXVpcmVfd2l0aExhdGVzdEZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpdGhMYXRlc3RGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2l0aExhdGVzdEZyb21fMS53aXRoTGF0ZXN0RnJvbTsKICAgIH0gfSk7CiAgICB2YXIgemlwQWxsXzEgPSByZXF1aXJlX3ppcEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwQWxsXzEuemlwQWxsOwogICAgfSB9KTsKICAgIHZhciB6aXBXaXRoXzEgPSByZXF1aXJlX3ppcFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB6aXBXaXRoXzEuemlwV2l0aDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlBhdGhJc0ZpbGVFeGNlcHRpb24gPSBleHBvcnRzMi5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25FeGNlcHRpb24gPSBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIEJhc2VFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIEVycm9yIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSA9ICIiKSB7CiAgICAgICAgc3VwZXIobWVzc2FnZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gQmFzZUV4Y2VwdGlvbjsKICAgIHZhciBVbmtub3duRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSkgewogICAgICAgIHN1cGVyKG1lc3NhZ2UpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkV4Y2VwdGlvbiA9IFVua25vd25FeGNlcHRpb247CiAgICB2YXIgRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBhbHJlYWR5IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb247CiAgICB2YXIgUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGRpcmVjdG9yeS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbiA9IFBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbjsKICAgIHZhciBQYXRoSXNGaWxlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGZpbGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoSXNGaWxlRXhjZXB0aW9uID0gUGF0aElzRmlsZUV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzCnZhciByZXF1aXJlX2xpdGVyYWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9saXRlcmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25lTGluZSA9IG9uZUxpbmU7CiAgICBleHBvcnRzMi5pbmRlbnRCeSA9IGluZGVudEJ5OwogICAgZXhwb3J0czIuc3RyaXBJbmRlbnQgPSBzdHJpcEluZGVudDsKICAgIGV4cG9ydHMyLnN0cmlwSW5kZW50cyA9IHN0cmlwSW5kZW50czsKICAgIGV4cG9ydHMyLnRyaW1OZXdsaW5lcyA9IHRyaW1OZXdsaW5lczsKICAgIGZ1bmN0aW9uIG9uZUxpbmUoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkrL2dtLCAiICIpLnRyaW0oKTsKICAgIH0KICAgIGZ1bmN0aW9uIGluZGVudEJ5KGluZGVudGF0aW9ucykgewogICAgICBsZXQgaSA9ICIiOwogICAgICB3aGlsZSAoaW5kZW50YXRpb25zLS0pIHsKICAgICAgICBpICs9ICIgIjsKICAgICAgfQogICAgICByZXR1cm4gKHN0cmluZ3MzLCAuLi52YWx1ZXMpID0+IHsKICAgICAgICByZXR1cm4gaSArIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpLnJlcGxhY2UoL1xuL2csICJcbiIgKyBpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgY29uc3QgZW5kUmVzdWx0ID0gU3RyaW5nLnJhdyhzdHJpbmdzMywgLi4udmFsdWVzKTsKICAgICAgY29uc3QgbWF0Y2ggPSBlbmRSZXN1bHQubWF0Y2goL15bIFx0XSooPz1cUykvZ20pOwogICAgICBpZiAobWF0Y2ggPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gZW5kUmVzdWx0OwogICAgICB9CiAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgubWluKC4uLm1hdGNoLm1hcCgoZWwpID0+IGVsLmxlbmd0aCkpOwogICAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKCJeWyBcXHRdeyIgKyBpbmRlbnQgKyAifSIsICJnbSIpOwogICAgICByZXR1cm4gKGluZGVudCA+IDAgPyBlbmRSZXN1bHQucmVwbGFjZShyZWdleHAsICIiKSA6IGVuZFJlc3VsdCkudHJpbSgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaXBJbmRlbnRzKHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgcmV0dXJuIFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykuc3BsaXQoIlxuIikubWFwKChsaW5lKSA9PiBsaW5lLnRyaW0oKSkuam9pbigiXG4iKS50cmltKCk7CiAgICB9CiAgICBmdW5jdGlvbiB0cmltTmV3bGluZXMoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoL14oPzpccj9cbikrLywgIiIpLnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkkLywgIiIpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvc3RyaW5ncy5qcwp2YXIgcmVxdWlyZV9zdHJpbmdzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWNhbWVsaXplID0gZGVjYW1lbGl6ZTsKICAgIGV4cG9ydHMyLmRhc2hlcml6ZSA9IGRhc2hlcml6ZTsKICAgIGV4cG9ydHMyLmNhbWVsaXplID0gY2FtZWxpemU7CiAgICBleHBvcnRzMi5jbGFzc2lmeSA9IGNsYXNzaWZ5OwogICAgZXhwb3J0czIudW5kZXJzY29yZSA9IHVuZGVyc2NvcmU7CiAgICBleHBvcnRzMi5jYXBpdGFsaXplID0gY2FwaXRhbGl6ZTsKICAgIGV4cG9ydHMyLmxldmVuc2h0ZWluID0gbGV2ZW5zaHRlaW47CiAgICB2YXIgU1RSSU5HX0RBU0hFUklaRV9SRUdFWFAgPSAvWyBfXS9nOwogICAgdmFyIFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCA9IC8oW2EtelxkXSkoW0EtWl0pL2c7CiAgICB2YXIgU1RSSU5HX0NBTUVMSVpFX1JFR0VYUCA9IC8oLXxffFwufFxzKSsoLik/L2c7CiAgICB2YXIgU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEgPSAvKFthLXpcZF0pKFtBLVpdKykvZzsKICAgIHZhciBTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiA9IC8tfFxzKy9nOwogICAgZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX0RFQ0FNRUxJWkVfUkVHRVhQLCAiJDFfJDIiKS50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gZGFzaGVyaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIGRlY2FtZWxpemUoc3RyMikucmVwbGFjZShTVFJJTkdfREFTSEVSSVpFX1JFR0VYUCwgIi0iKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhbWVsaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZShTVFJJTkdfQ0FNRUxJWkVfUkVHRVhQLCAoX21hdGNoLCBfc2VwYXJhdG9yLCBjaHIpID0+IHsKICAgICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAiIjsKICAgICAgfSkucmVwbGFjZSgvXihbQS1aXSkvLCAobWF0Y2gpID0+IG1hdGNoLnRvTG93ZXJDYXNlKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2xhc3NpZnkoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5zcGxpdCgiLiIpLm1hcCgocGFydCkgPT4gY2FwaXRhbGl6ZShjYW1lbGl6ZShwYXJ0KSkpLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gdW5kZXJzY29yZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEsICIkMV8kMiIpLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzIsICJfIikudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhcGl0YWxpemUoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0cjIuc2xpY2UoMSk7CiAgICB9CiAgICBmdW5jdGlvbiBsZXZlbnNodGVpbihhLCBiKSB7CiAgICAgIGlmIChhLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGIubGVuZ3RoOwogICAgICB9CiAgICAgIGlmIChiLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGEubGVuZ3RoOwogICAgICB9CiAgICAgIGNvbnN0IG1hdHJpeCA9IFtdOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSBiLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbWF0cml4W2ldID0gW2ldOwogICAgICB9CiAgICAgIGZvciAobGV0IGogPSAwOyBqIDw9IGEubGVuZ3RoOyBqKyspIHsKICAgICAgICBtYXRyaXhbMF1bal0gPSBqOwogICAgICB9CiAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IGIubGVuZ3RoOyBpKyspIHsKICAgICAgICBmb3IgKGxldCBqID0gMTsgaiA8PSBhLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICBpZiAoYi5jaGFyQXQoaSAtIDEpID09IGEuY2hhckF0KGogLSAxKSkgewogICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbaSAtIDFdW2ogLSAxXTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IE1hdGgubWluKAogICAgICAgICAgICAgIG1hdHJpeFtpIC0gMV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBzdWJzdGl0dXRpb24KICAgICAgICAgICAgICBtYXRyaXhbaV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBpbnNlcnRpb24KICAgICAgICAgICAgICBtYXRyaXhbaSAtIDFdW2pdICsgMQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbWF0cml4W2IubGVuZ3RoXVthLmxlbmd0aF07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMKdmFyIHJlcXVpcmVfb2JqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZXBDb3B5ID0gZGVlcENvcHk7CiAgICB2YXIgY29weVN5bWJvbCA9IFN5bWJvbCgpOwogICAgZnVuY3Rpb24gZGVlcENvcHkodmFsdWUpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlLm1hcCgobykgPT4gZGVlcENvcHkobykpOwogICAgICB9IGVsc2UgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25zdCB2YWx1ZUNhc3RlZCA9IHZhbHVlOwogICAgICAgIGlmICh2YWx1ZUNhc3RlZFtjb3B5U3ltYm9sXSkgewogICAgICAgICAgcmV0dXJuIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWVDYXN0ZWRbInRvSlNPTiJdKSB7CiAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZUNhc3RlZFsidG9KU09OIl0oKSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih2YWx1ZUNhc3RlZCkpOwogICAgICAgIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdID0gY29weTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZUNhc3RlZCkpIHsKICAgICAgICAgIGNvcHlba2V5XSA9IGRlZXBDb3B5KHZhbHVlQ2FzdGVkW2tleV0pOwogICAgICAgIH0KICAgICAgICBkZWxldGUgdmFsdWVDYXN0ZWRbY29weVN5bWJvbF07CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMKdmFyIHJlcXVpcmVfYmFzZTY0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgaW50VG9DaGFyTWFwID0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLnNwbGl0KCIiKTsKICAgIGV4cG9ydHMyLmVuY29kZSA9IGZ1bmN0aW9uKG51bWJlcikgewogICAgICBpZiAoMCA8PSBudW1iZXIgJiYgbnVtYmVyIDwgaW50VG9DaGFyTWFwLmxlbmd0aCkgewogICAgICAgIHJldHVybiBpbnRUb0NoYXJNYXBbbnVtYmVyXTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJNdXN0IGJlIGJldHdlZW4gMCBhbmQgNjM6ICIgKyBudW1iZXIpOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC12bHEuanMKdmFyIHJlcXVpcmVfYmFzZTY0X3ZscSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmFzZTY0LXZscS5qcyIoZXhwb3J0czIpIHsKICAgIHZhciBiYXNlNjQgPSByZXF1aXJlX2Jhc2U2NCgpOwogICAgdmFyIFZMUV9CQVNFX1NISUZUID0gNTsKICAgIHZhciBWTFFfQkFTRSA9IDEgPDwgVkxRX0JBU0VfU0hJRlQ7CiAgICB2YXIgVkxRX0JBU0VfTUFTSyA9IFZMUV9CQVNFIC0gMTsKICAgIHZhciBWTFFfQ09OVElOVUFUSU9OX0JJVCA9IFZMUV9CQVNFOwogICAgZnVuY3Rpb24gdG9WTFFTaWduZWQoYVZhbHVlKSB7CiAgICAgIHJldHVybiBhVmFsdWUgPCAwID8gKC1hVmFsdWUgPDwgMSkgKyAxIDogKGFWYWx1ZSA8PCAxKSArIDA7CiAgICB9CiAgICBleHBvcnRzMi5lbmNvZGUgPSBmdW5jdGlvbiBiYXNlNjRWTFFfZW5jb2RlKGFWYWx1ZSkgewogICAgICBsZXQgZW5jb2RlZCA9ICIiOwogICAgICBsZXQgZGlnaXQ7CiAgICAgIGxldCB2bHEgPSB0b1ZMUVNpZ25lZChhVmFsdWUpOwogICAgICBkbyB7CiAgICAgICAgZGlnaXQgPSB2bHEgJiBWTFFfQkFTRV9NQVNLOwogICAgICAgIHZscSA+Pj49IFZMUV9CQVNFX1NISUZUOwogICAgICAgIGlmICh2bHEgPiAwKSB7CiAgICAgICAgICBkaWdpdCB8PSBWTFFfQ09OVElOVUFUSU9OX0JJVDsKICAgICAgICB9CiAgICAgICAgZW5jb2RlZCArPSBiYXNlNjQuZW5jb2RlKGRpZ2l0KTsKICAgICAgfSB3aGlsZSAodmxxID4gMCk7CiAgICAgIHJldHVybiBlbmNvZGVkOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMKdmFyIHJlcXVpcmVfdXRpbDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMiKGV4cG9ydHMyKSB7CiAgICBmdW5jdGlvbiBnZXRBcmcoYUFyZ3MsIGFOYW1lLCBhRGVmYXVsdFZhbHVlKSB7CiAgICAgIGlmIChhTmFtZSBpbiBhQXJncykgewogICAgICAgIHJldHVybiBhQXJnc1thTmFtZV07CiAgICAgIH0gZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykgewogICAgICAgIHJldHVybiBhRGVmYXVsdFZhbHVlOwogICAgICB9CiAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhTmFtZSArICciIGlzIGEgcmVxdWlyZWQgYXJndW1lbnQuJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRBcmcgPSBnZXRBcmc7CiAgICB2YXIgdXJsUmVnZXhwID0gL14oPzooW1x3K1wtLl0rKTopP1wvXC8oPzooXHcrOlx3KylAKT8oW1x3Li1dKikoPzo6KFxkKykpPyguKikkLzsKICAgIHZhciBkYXRhVXJsUmVnZXhwID0gL15kYXRhOi4rXCwuKyQvOwogICAgZnVuY3Rpb24gdXJsUGFyc2UoYVVybCkgewogICAgICBjb25zdCBtYXRjaCA9IGFVcmwubWF0Y2godXJsUmVnZXhwKTsKICAgICAgaWYgKCFtYXRjaCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgc2NoZW1lOiBtYXRjaFsxXSwKICAgICAgICBhdXRoOiBtYXRjaFsyXSwKICAgICAgICBob3N0OiBtYXRjaFszXSwKICAgICAgICBwb3J0OiBtYXRjaFs0XSwKICAgICAgICBwYXRoOiBtYXRjaFs1XQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIudXJsUGFyc2UgPSB1cmxQYXJzZTsKICAgIGZ1bmN0aW9uIHVybEdlbmVyYXRlKGFQYXJzZWRVcmwpIHsKICAgICAgbGV0IHVybDMgPSAiIjsKICAgICAgaWYgKGFQYXJzZWRVcmwuc2NoZW1lKSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLnNjaGVtZSArICI6IjsKICAgICAgfQogICAgICB1cmwzICs9ICIvLyI7CiAgICAgIGlmIChhUGFyc2VkVXJsLmF1dGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuYXV0aCArICJAIjsKICAgICAgfQogICAgICBpZiAoYVBhcnNlZFVybC5ob3N0KSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLmhvc3Q7CiAgICAgIH0KICAgICAgaWYgKGFQYXJzZWRVcmwucG9ydCkgewogICAgICAgIHVybDMgKz0gIjoiICsgYVBhcnNlZFVybC5wb3J0OwogICAgICB9CiAgICAgIGlmIChhUGFyc2VkVXJsLnBhdGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwucGF0aDsKICAgICAgfQogICAgICByZXR1cm4gdXJsMzsKICAgIH0KICAgIGV4cG9ydHMyLnVybEdlbmVyYXRlID0gdXJsR2VuZXJhdGU7CiAgICB2YXIgTUFYX0NBQ0hFRF9JTlBVVFMgPSAzMjsKICAgIGZ1bmN0aW9uIGxydU1lbW9pemUoZikgewogICAgICBjb25zdCBjYWNoZSA9IFtdOwogICAgICByZXR1cm4gZnVuY3Rpb24oaW5wdXQpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhY2hlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBpZiAoY2FjaGVbaV0uaW5wdXQgPT09IGlucHV0KSB7CiAgICAgICAgICAgIGNvbnN0IHRlbXAgPSBjYWNoZVswXTsKICAgICAgICAgICAgY2FjaGVbMF0gPSBjYWNoZVtpXTsKICAgICAgICAgICAgY2FjaGVbaV0gPSB0ZW1wOwogICAgICAgICAgICByZXR1cm4gY2FjaGVbMF0ucmVzdWx0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCByZXN1bHQgPSBmKGlucHV0KTsKICAgICAgICBjYWNoZS51bnNoaWZ0KHsKICAgICAgICAgIGlucHV0LAogICAgICAgICAgcmVzdWx0CiAgICAgICAgfSk7CiAgICAgICAgaWYgKGNhY2hlLmxlbmd0aCA+IE1BWF9DQUNIRURfSU5QVVRTKSB7CiAgICAgICAgICBjYWNoZS5wb3AoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0KICAgIHZhciBub3JtYWxpemUgPSBscnVNZW1vaXplKGZ1bmN0aW9uIG5vcm1hbGl6ZTIoYVBhdGgpIHsKICAgICAgbGV0IHBhdGggPSBhUGF0aDsKICAgICAgY29uc3QgdXJsMyA9IHVybFBhcnNlKGFQYXRoKTsKICAgICAgaWYgKHVybDMpIHsKICAgICAgICBpZiAoIXVybDMucGF0aCkgewogICAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICAgIH0KICAgICAgICBwYXRoID0gdXJsMy5wYXRoOwogICAgICB9CiAgICAgIGNvbnN0IGlzQWJzb2x1dGUgPSBleHBvcnRzMi5pc0Fic29sdXRlKHBhdGgpOwogICAgICBjb25zdCBwYXJ0cyA9IFtdOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgc3RhcnQgPSBpOwogICAgICAgIGkgPSBwYXRoLmluZGV4T2YoIi8iLCBzdGFydCk7CiAgICAgICAgaWYgKGkgPT09IC0xKSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQpKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQsIGkpKTsKICAgICAgICAgIHdoaWxlIChpIDwgcGF0aC5sZW5ndGggJiYgcGF0aFtpXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IHVwID0gMDsKICAgICAgZm9yIChpID0gcGFydHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBjb25zdCBwYXJ0ID0gcGFydHNbaV07CiAgICAgICAgaWYgKHBhcnQgPT09ICIuIikgewogICAgICAgICAgcGFydHMuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSBpZiAocGFydCA9PT0gIi4uIikgewogICAgICAgICAgdXArKzsKICAgICAgICB9IGVsc2UgaWYgKHVwID4gMCkgewogICAgICAgICAgaWYgKHBhcnQgPT09ICIiKSB7CiAgICAgICAgICAgIHBhcnRzLnNwbGljZShpICsgMSwgdXApOwogICAgICAgICAgICB1cCA9IDA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0cy5zcGxpY2UoaSwgMik7CiAgICAgICAgICAgIHVwLS07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHBhdGggPSBwYXJ0cy5qb2luKCIvIik7CiAgICAgIGlmIChwYXRoID09PSAiIikgewogICAgICAgIHBhdGggPSBpc0Fic29sdXRlID8gIi8iIDogIi4iOwogICAgICB9CiAgICAgIGlmICh1cmwzKSB7CiAgICAgICAgdXJsMy5wYXRoID0gcGF0aDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUodXJsMyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGg7CiAgICB9KTsKICAgIGV4cG9ydHMyLm5vcm1hbGl6ZSA9IG5vcm1hbGl6ZTsKICAgIGZ1bmN0aW9uIGpvaW4yKGFSb290LCBhUGF0aCkgewogICAgICBpZiAoYVJvb3QgPT09ICIiKSB7CiAgICAgICAgYVJvb3QgPSAiLiI7CiAgICAgIH0KICAgICAgaWYgKGFQYXRoID09PSAiIikgewogICAgICAgIGFQYXRoID0gIi4iOwogICAgICB9CiAgICAgIGNvbnN0IGFQYXRoVXJsID0gdXJsUGFyc2UoYVBhdGgpOwogICAgICBjb25zdCBhUm9vdFVybCA9IHVybFBhcnNlKGFSb290KTsKICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgYVJvb3QgPSBhUm9vdFVybC5wYXRoIHx8ICIvIjsKICAgICAgfQogICAgICBpZiAoYVBhdGhVcmwgJiYgIWFQYXRoVXJsLnNjaGVtZSkgewogICAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgICAgYVBhdGhVcmwuc2NoZW1lID0gYVJvb3RVcmwuc2NoZW1lOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVBhdGhVcmwpOwogICAgICB9CiAgICAgIGlmIChhUGF0aFVybCB8fCBhUGF0aC5tYXRjaChkYXRhVXJsUmVnZXhwKSkgewogICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgfQogICAgICBpZiAoYVJvb3RVcmwgJiYgIWFSb290VXJsLmhvc3QgJiYgIWFSb290VXJsLnBhdGgpIHsKICAgICAgICBhUm9vdFVybC5ob3N0ID0gYVBhdGg7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICBjb25zdCBqb2luZWQgPSBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiA/IGFQYXRoIDogbm9ybWFsaXplKGFSb290LnJlcGxhY2UoL1wvKyQvLCAiIikgKyAiLyIgKyBhUGF0aCk7CiAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgIGFSb290VXJsLnBhdGggPSBqb2luZWQ7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICByZXR1cm4gam9pbmVkOwogICAgfQogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGZ1bmN0aW9uKGFQYXRoKSB7CiAgICAgIHJldHVybiBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiB8fCB1cmxSZWdleHAudGVzdChhUGF0aCk7CiAgICB9OwogICAgZnVuY3Rpb24gcmVsYXRpdmUoYVJvb3QsIGFQYXRoKSB7CiAgICAgIGlmIChhUm9vdCA9PT0gIiIpIHsKICAgICAgICBhUm9vdCA9ICIuIjsKICAgICAgfQogICAgICBhUm9vdCA9IGFSb290LnJlcGxhY2UoL1wvJC8sICIiKTsKICAgICAgbGV0IGxldmVsID0gMDsKICAgICAgd2hpbGUgKGFQYXRoLmluZGV4T2YoYVJvb3QgKyAiLyIpICE9PSAwKSB7CiAgICAgICAgY29uc3QgaW5kZXggPSBhUm9vdC5sYXN0SW5kZXhPZigiLyIpOwogICAgICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgICB9CiAgICAgICAgYVJvb3QgPSBhUm9vdC5zbGljZSgwLCBpbmRleCk7CiAgICAgICAgaWYgKGFSb290Lm1hdGNoKC9eKFteXC9dKzpcLyk/XC8qJC8pKSB7CiAgICAgICAgICByZXR1cm4gYVBhdGg7CiAgICAgICAgfQogICAgICAgICsrbGV2ZWw7CiAgICAgIH0KICAgICAgcmV0dXJuIEFycmF5KGxldmVsICsgMSkuam9pbigiLi4vIikgKyBhUGF0aC5zdWJzdHIoYVJvb3QubGVuZ3RoICsgMSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgdmFyIHN1cHBvcnRzTnVsbFByb3RvID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICByZXR1cm4gISgiX19wcm90b19fIiBpbiBvYmopOwogICAgfSgpOwogICAgZnVuY3Rpb24gaWRlbnRpdHkocykgewogICAgICByZXR1cm4gczsKICAgIH0KICAgIGZ1bmN0aW9uIHRvU2V0U3RyaW5nKGFTdHIpIHsKICAgICAgaWYgKGlzUHJvdG9TdHJpbmcoYVN0cikpIHsKICAgICAgICByZXR1cm4gIiQiICsgYVN0cjsKICAgICAgfQogICAgICByZXR1cm4gYVN0cjsKICAgIH0KICAgIGV4cG9ydHMyLnRvU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IHRvU2V0U3RyaW5nOwogICAgZnVuY3Rpb24gZnJvbVNldFN0cmluZyhhU3RyKSB7CiAgICAgIGlmIChpc1Byb3RvU3RyaW5nKGFTdHIpKSB7CiAgICAgICAgcmV0dXJuIGFTdHIuc2xpY2UoMSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGFTdHI7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IGZyb21TZXRTdHJpbmc7CiAgICBmdW5jdGlvbiBpc1Byb3RvU3RyaW5nKHMpIHsKICAgICAgaWYgKCFzKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0IGxlbmd0aCA9IHMubGVuZ3RoOwogICAgICBpZiAobGVuZ3RoIDwgOSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBpZiAocy5jaGFyQ29kZUF0KGxlbmd0aCAtIDEpICE9PSA5NSB8fCBzLmNoYXJDb2RlQXQobGVuZ3RoIC0gMikgIT09IDk1IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSAzKSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA0KSAhPT0gMTE2IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA1KSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA2KSAhPT0gMTE0IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA3KSAhPT0gMTEyIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA4KSAhPT0gOTUgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDkpICE9PSA5NSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gbGVuZ3RoIC0gMTA7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHMuY2hhckNvZGVBdChpKSAhPT0gMzYpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyhtYXBwaW5nQSwgbWFwcGluZ0IsIG9ubHlDb21wYXJlT3JpZ2luYWwpIHsKICAgICAgbGV0IGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCB8fCBvbmx5Q29tcGFyZU9yaWdpbmFsKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMgPSBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9uczsKICAgIGZ1bmN0aW9uIGNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkKG1hcHBpbmdBLCBtYXBwaW5nQiwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDAgfHwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQ7CiAgICBmdW5jdGlvbiBzdHJjbXAoYVN0cjEsIGFTdHIyKSB7CiAgICAgIGlmIChhU3RyMSA9PT0gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMDsKICAgICAgfQogICAgICBpZiAoYVN0cjEgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICBpZiAoYVN0cjIgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgaWYgKGFTdHIxID4gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICByZXR1cm4gLTE7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nQSwgbWFwcGluZ0IpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQ7CiAgICBmdW5jdGlvbiBwYXJzZVNvdXJjZU1hcElucHV0KHN0cjIpIHsKICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyMi5yZXBsYWNlKC9eXCldfSdbXlxuXSpcbi8sICIiKSk7CiAgICB9CiAgICBleHBvcnRzMi5wYXJzZVNvdXJjZU1hcElucHV0ID0gcGFyc2VTb3VyY2VNYXBJbnB1dDsKICAgIGZ1bmN0aW9uIGNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgc291cmNlVVJMLCBzb3VyY2VNYXBVUkwpIHsKICAgICAgc291cmNlVVJMID0gc291cmNlVVJMIHx8ICIiOwogICAgICBpZiAoc291cmNlUm9vdCkgewogICAgICAgIGlmIChzb3VyY2VSb290W3NvdXJjZVJvb3QubGVuZ3RoIC0gMV0gIT09ICIvIiAmJiBzb3VyY2VVUkxbMF0gIT09ICIvIikgewogICAgICAgICAgc291cmNlUm9vdCArPSAiLyI7CiAgICAgICAgfQogICAgICAgIHNvdXJjZVVSTCA9IHNvdXJjZVJvb3QgKyBzb3VyY2VVUkw7CiAgICAgIH0KICAgICAgaWYgKHNvdXJjZU1hcFVSTCkgewogICAgICAgIGNvbnN0IHBhcnNlZCA9IHVybFBhcnNlKHNvdXJjZU1hcFVSTCk7CiAgICAgICAgaWYgKCFwYXJzZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigic291cmNlTWFwVVJMIGNvdWxkIG5vdCBiZSBwYXJzZWQiKTsKICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5wYXRoKSB7CiAgICAgICAgICBjb25zdCBpbmRleCA9IHBhcnNlZC5wYXRoLmxhc3RJbmRleE9mKCIvIik7CiAgICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgICBwYXJzZWQucGF0aCA9IHBhcnNlZC5wYXRoLnN1YnN0cmluZygwLCBpbmRleCArIDEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzb3VyY2VVUkwgPSBqb2luMih1cmxHZW5lcmF0ZShwYXJzZWQpLCBzb3VyY2VVUkwpOwogICAgICB9CiAgICAgIHJldHVybiBub3JtYWxpemUoc291cmNlVVJMKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXB1dGVTb3VyY2VVUkwgPSBjb21wdXRlU291cmNlVVJMOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzCnZhciByZXF1aXJlX2FycmF5X3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzIihleHBvcnRzMikgewogICAgdmFyIEFycmF5U2V0ID0gY2xhc3MgX0FycmF5U2V0IHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgdGhpcy5fYXJyYXkgPSBbXTsKICAgICAgICB0aGlzLl9zZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTdGF0aWMgbWV0aG9kIGZvciBjcmVhdGluZyBBcnJheVNldCBpbnN0YW5jZXMgZnJvbSBhbiBleGlzdGluZyBhcnJheS4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tQXJyYXkoYUFycmF5LCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3Qgc2V0MiA9IG5ldyBfQXJyYXlTZXQoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYUFycmF5Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBzZXQyLmFkZChhQXJyYXlbaV0sIGFBbGxvd0R1cGxpY2F0ZXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0MjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIGhvdyBtYW55IHVuaXF1ZSBpdGVtcyBhcmUgaW4gdGhpcyBBcnJheVNldC4gSWYgZHVwbGljYXRlcyBoYXZlIGJlZW4KICAgICAgICogYWRkZWQsIHRoYW4gdGhvc2UgZG8gbm90IGNvdW50IHRvd2FyZHMgdGhlIHNpemUuCiAgICAgICAqCiAgICAgICAqIEByZXR1cm5zIE51bWJlcgogICAgICAgKi8KICAgICAgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2V0LnNpemU7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc3RyaW5nIHRvIHRoaXMgc2V0LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGFkZChhU3RyLCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3QgaXNEdXBsaWNhdGUgPSB0aGlzLmhhcyhhU3RyKTsKICAgICAgICBjb25zdCBpZHggPSB0aGlzLl9hcnJheS5sZW5ndGg7CiAgICAgICAgaWYgKCFpc0R1cGxpY2F0ZSB8fCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgICB0aGlzLl9hcnJheS5wdXNoKGFTdHIpOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzRHVwbGljYXRlKSB7CiAgICAgICAgICB0aGlzLl9zZXQuc2V0KGFTdHIsIGlkeCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJcyB0aGUgZ2l2ZW4gc3RyaW5nIGEgbWVtYmVyIG9mIHRoaXMgc2V0PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGhhcyhhU3RyKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NldC5oYXMoYVN0cik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdoYXQgaXMgdGhlIGluZGV4IG9mIHRoZSBnaXZlbiBzdHJpbmcgaW4gdGhlIGFycmF5PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGluZGV4T2YoYVN0cikgewogICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX3NldC5nZXQoYVN0cik7CiAgICAgICAgaWYgKGlkeCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gaWR4OwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVN0ciArICciIGlzIG5vdCBpbiB0aGUgc2V0LicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXaGF0IGlzIHRoZSBlbGVtZW50IGF0IHRoZSBnaXZlbiBpbmRleD8KICAgICAgICoKICAgICAgICogQHBhcmFtIE51bWJlciBhSWR4CiAgICAgICAqLwogICAgICBhdChhSWR4KSB7CiAgICAgICAgaWYgKGFJZHggPj0gMCAmJiBhSWR4IDwgdGhpcy5fYXJyYXkubGVuZ3RoKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYXJyYXlbYUlkeF07CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBpbmRleGVkIGJ5ICIgKyBhSWR4KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgYXJyYXkgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzZXQgKHdoaWNoIGhhcyB0aGUgcHJvcGVyIGluZGljZXMKICAgICAgICogaW5kaWNhdGVkIGJ5IGluZGV4T2YpLiBOb3RlIHRoYXQgdGhpcyBpcyBhIGNvcHkgb2YgdGhlIGludGVybmFsIGFycmF5IHVzZWQKICAgICAgICogZm9yIHN0b3JpbmcgdGhlIG1lbWJlcnMgc28gdGhhdCBubyBvbmUgY2FuIG1lc3Mgd2l0aCBpbnRlcm5hbCBzdGF0ZS4KICAgICAgICovCiAgICAgIHRvQXJyYXkoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FycmF5LnNsaWNlKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BcnJheVNldCA9IEFycmF5U2V0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzCnZhciByZXF1aXJlX21hcHBpbmdfbGlzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBjb25zdCBsaW5lQSA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmU7CiAgICAgIGNvbnN0IGxpbmVCID0gbWFwcGluZ0IuZ2VuZXJhdGVkTGluZTsKICAgICAgY29uc3QgY29sdW1uQSA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbjsKICAgICAgY29uc3QgY29sdW1uQiA9IG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgcmV0dXJuIGxpbmVCID4gbGluZUEgfHwgbGluZUIgPT0gbGluZUEgJiYgY29sdW1uQiA+PSBjb2x1bW5BIHx8IHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCKSA8PSAwOwogICAgfQogICAgdmFyIE1hcHBpbmdMaXN0ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgdGhpcy5fbGFzdCA9IHsgZ2VuZXJhdGVkTGluZTogLTEsIGdlbmVyYXRlZENvbHVtbjogMCB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIHRocm91Z2ggaW50ZXJuYWwgaXRlbXMuIFRoaXMgbWV0aG9kIHRha2VzIHRoZSBzYW1lIGFyZ3VtZW50cyB0aGF0CiAgICAgICAqIGBBcnJheS5wcm90b3R5cGUuZm9yRWFjaGAgdGFrZXMuCiAgICAgICAqCiAgICAgICAqIE5PVEU6IFRoZSBvcmRlciBvZiB0aGUgbWFwcGluZ3MgaXMgTk9UIGd1YXJhbnRlZWQuCiAgICAgICAqLwogICAgICB1bnNvcnRlZEZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZykgewogICAgICAgIHRoaXMuX2FycmF5LmZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc291cmNlIG1hcHBpbmcuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYU1hcHBpbmcKICAgICAgICovCiAgICAgIGFkZChhTWFwcGluZykgewogICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKHRoaXMuX2xhc3QsIGFNYXBwaW5nKSkgewogICAgICAgICAgdGhpcy5fbGFzdCA9IGFNYXBwaW5nOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IGZhbHNlOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBmbGF0LCBzb3J0ZWQgYXJyYXkgb2YgbWFwcGluZ3MuIFRoZSBtYXBwaW5ncyBhcmUgc29ydGVkIGJ5CiAgICAgICAqIGdlbmVyYXRlZCBwb3NpdGlvbi4KICAgICAgICoKICAgICAgICogV0FSTklORzogVGhpcyBtZXRob2QgcmV0dXJucyBpbnRlcm5hbCBkYXRhIHdpdGhvdXQgY29weWluZywgZm9yCiAgICAgICAqIHBlcmZvcm1hbmNlLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgTk9UIGJlIG11dGF0ZWQsIGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcwogICAgICAgKiBhbiBpbW11dGFibGUgYm9ycm93LiBJZiB5b3Ugd2FudCB0byB0YWtlIG93bmVyc2hpcCwgeW91IG11c3QgbWFrZSB5b3VyIG93bgogICAgICAgKiBjb3B5LgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICBpZiAoIXRoaXMuX3NvcnRlZCkgewogICAgICAgICAgdGhpcy5fYXJyYXkuc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKTsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9hcnJheTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1hcHBpbmdMaXN0ID0gTWFwcGluZ0xpc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2UtbWFwLWdlbmVyYXRvci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1nZW5lcmF0b3IuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgYmFzZTY0VkxRID0gcmVxdWlyZV9iYXNlNjRfdmxxKCk7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBBcnJheVNldCA9IHJlcXVpcmVfYXJyYXlfc2V0KCkuQXJyYXlTZXQ7CiAgICB2YXIgTWFwcGluZ0xpc3QgPSByZXF1aXJlX21hcHBpbmdfbGlzdCgpLk1hcHBpbmdMaXN0OwogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IGNsYXNzIF9Tb3VyY2VNYXBHZW5lcmF0b3IgewogICAgICBjb25zdHJ1Y3RvcihhQXJncykgewogICAgICAgIGlmICghYUFyZ3MpIHsKICAgICAgICAgIGFBcmdzID0ge307CiAgICAgICAgfQogICAgICAgIHRoaXMuX2ZpbGUgPSB1dGlsLmdldEFyZyhhQXJncywgImZpbGUiLCBudWxsKTsKICAgICAgICB0aGlzLl9zb3VyY2VSb290ID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2VSb290IiwgbnVsbCk7CiAgICAgICAgdGhpcy5fc2tpcFZhbGlkYXRpb24gPSB1dGlsLmdldEFyZyhhQXJncywgInNraXBWYWxpZGF0aW9uIiwgZmFsc2UpOwogICAgICAgIHRoaXMuX3NvdXJjZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICB0aGlzLl9uYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgIHRoaXMuX21hcHBpbmdzID0gbmV3IE1hcHBpbmdMaXN0KCk7CiAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlcyBhIG5ldyBTb3VyY2VNYXBHZW5lcmF0b3IgYmFzZWQgb24gYSBTb3VyY2VNYXBDb25zdW1lcgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBTb3VyY2VNYXAuCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwQ29uc3VtZXIpIHsKICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZVJvb3Q7CiAgICAgICAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IF9Tb3VyY2VNYXBHZW5lcmF0b3IoewogICAgICAgICAgZmlsZTogYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUsCiAgICAgICAgICBzb3VyY2VSb290CiAgICAgICAgfSk7CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLmVhY2hNYXBwaW5nKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGNvbnN0IG5ld01hcHBpbmcgPSB7CiAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uCiAgICAgICAgICAgIH0KICAgICAgICAgIH07CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT0gbnVsbCkgewogICAgICAgICAgICBuZXdNYXBwaW5nLnNvdXJjZSA9IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmV3TWFwcGluZy5zb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIG5ld01hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZXdNYXBwaW5nLm9yaWdpbmFsID0gewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICBuZXdNYXBwaW5nLm5hbWUgPSBtYXBwaW5nLm5hbWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGdlbmVyYXRvci5hZGRNYXBwaW5nKG5ld01hcHBpbmcpOwogICAgICAgIH0pOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgbGV0IHNvdXJjZVJlbGF0aXZlID0gc291cmNlRmlsZTsKICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9PSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZVJlbGF0aXZlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZ2VuZXJhdG9yLl9zb3VyY2VzLmhhcyhzb3VyY2VSZWxhdGl2ZSkpIHsKICAgICAgICAgICAgZ2VuZXJhdG9yLl9zb3VyY2VzLmFkZChzb3VyY2VSZWxhdGl2ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGdlbmVyYXRvci5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiBnZW5lcmF0b3I7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHNpbmdsZSBtYXBwaW5nIGZyb20gb3JpZ2luYWwgc291cmNlIGxpbmUgYW5kIGNvbHVtbiB0byB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBmb3IgdGhpcyBzb3VyY2UgbWFwIGJlaW5nIGNyZWF0ZWQuIFRoZSBtYXBwaW5nCiAgICAgICAqIG9iamVjdCBzaG91bGQgaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBnZW5lcmF0ZWQ6IEFuIG9iamVjdCB3aXRoIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIG9yaWdpbmFsOiBBbiBvYmplY3Qgd2l0aCB0aGUgb3JpZ2luYWwgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIChyZWxhdGl2ZSB0byB0aGUgc291cmNlUm9vdCkuCiAgICAgICAqICAgLSBuYW1lOiBBbiBvcHRpb25hbCBvcmlnaW5hbCB0b2tlbiBuYW1lIGZvciB0aGlzIG1hcHBpbmcuCiAgICAgICAqLwogICAgICBhZGRNYXBwaW5nKGFBcmdzKSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJnZW5lcmF0ZWQiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAib3JpZ2luYWwiLCBudWxsKTsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICBsZXQgbmFtZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibmFtZSIsIG51bGwpOwogICAgICAgIGlmICghdGhpcy5fc2tpcFZhbGlkYXRpb24pIHsKICAgICAgICAgIHRoaXMuX3ZhbGlkYXRlTWFwcGluZyhnZW5lcmF0ZWQsIG9yaWdpbmFsLCBzb3VyY2UsIG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlICE9IG51bGwpIHsKICAgICAgICAgIHNvdXJjZSA9IFN0cmluZyhzb3VyY2UpOwogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXMuYWRkKHNvdXJjZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChuYW1lICE9IG51bGwpIHsKICAgICAgICAgIG5hbWUgPSBTdHJpbmcobmFtZSk7CiAgICAgICAgICBpZiAoIXRoaXMuX25hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICB0aGlzLl9uYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzLmFkZCh7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbiwKICAgICAgICAgIG9yaWdpbmFsTGluZTogb3JpZ2luYWwgIT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG9yaWdpbmFsICE9IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uLAogICAgICAgICAgc291cmNlLAogICAgICAgICAgbmFtZQogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTZXQgdGhlIHNvdXJjZSBjb250ZW50IGZvciBhIHNvdXJjZSBmaWxlLgogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICBsZXQgc291cmNlID0gYVNvdXJjZUZpbGU7CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLl9zb3VyY2VSb290LCBzb3VyY2UpOwogICAgICAgIH0KICAgICAgICBpZiAoYVNvdXJjZUNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzQ29udGVudHMpIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zb3VyY2VzQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhzb3VyY2UpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBkZWxldGUgdGhpcy5fc291cmNlc0NvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoc291cmNlKV07CiAgICAgICAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fc291cmNlc0NvbnRlbnRzKS5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFwcGxpZXMgdGhlIG1hcHBpbmdzIG9mIGEgc3ViLXNvdXJjZS1tYXAgZm9yIGEgc3BlY2lmaWMgc291cmNlIGZpbGUgdG8gdGhlCiAgICAgICAqIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkLiBFYWNoIG1hcHBpbmcgdG8gdGhlIHN1cHBsaWVkIHNvdXJjZSBmaWxlIGlzCiAgICAgICAqIHJld3JpdHRlbiB1c2luZyB0aGUgc3VwcGxpZWQgc291cmNlIG1hcC4gTm90ZTogVGhlIHJlc29sdXRpb24gZm9yIHRoZQogICAgICAgKiByZXN1bHRpbmcgbWFwcGluZ3MgaXMgdGhlIG1pbmltaXVtIG9mIHRoaXMgbWFwIGFuZCB0aGUgc3VwcGxpZWQgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBzb3VyY2UgbWFwIHRvIGJlIGFwcGxpZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlRmlsZSBPcHRpb25hbC4gVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZS4KICAgICAgICogICAgICAgIElmIG9taXR0ZWQsIFNvdXJjZU1hcENvbnN1bWVyJ3MgZmlsZSBwcm9wZXJ0eSB3aWxsIGJlIHVzZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwUGF0aCBPcHRpb25hbC4gVGhlIGRpcm5hbWUgb2YgdGhlIHBhdGggdG8gdGhlIHNvdXJjZSBtYXAKICAgICAgICogICAgICAgIHRvIGJlIGFwcGxpZWQuIElmIHJlbGF0aXZlLCBpdCBpcyByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBuZWVkZWQgd2hlbiB0aGUgdHdvIHNvdXJjZSBtYXBzIGFyZW4ndCBpbiB0aGUgc2FtZQogICAgICAgKiAgICAgICAgZGlyZWN0b3J5LCBhbmQgdGhlIHNvdXJjZSBtYXAgdG8gYmUgYXBwbGllZCBjb250YWlucyByZWxhdGl2ZSBzb3VyY2UKICAgICAgICogICAgICAgIHBhdGhzLiBJZiBzbywgdGhvc2UgcmVsYXRpdmUgc291cmNlIHBhdGhzIG5lZWQgdG8gYmUgcmV3cml0dGVuCiAgICAgICAqICAgICAgICByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKi8KICAgICAgYXBwbHlTb3VyY2VNYXAoYVNvdXJjZU1hcENvbnN1bWVyLCBhU291cmNlRmlsZSwgYVNvdXJjZU1hcFBhdGgpIHsKICAgICAgICBsZXQgc291cmNlRmlsZSA9IGFTb3VyY2VGaWxlOwogICAgICAgIGlmIChhU291cmNlRmlsZSA9PSBudWxsKSB7CiAgICAgICAgICBpZiAoYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUgPT0gbnVsbCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYFNvdXJjZU1hcEdlbmVyYXRvci5wcm90b3R5cGUuYXBwbHlTb3VyY2VNYXAgcmVxdWlyZXMgZWl0aGVyIGFuIGV4cGxpY2l0IHNvdXJjZSBmaWxlLCBvciB0aGUgc291cmNlIG1hcCdzICJmaWxlIiBwcm9wZXJ0eS4gQm90aCB3ZXJlIG9taXR0ZWQuYAogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlRmlsZSA9IGFTb3VyY2VNYXBDb25zdW1lci5maWxlOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5fc291cmNlUm9vdDsKICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3U291cmNlcyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKS5sZW5ndGggPiAwID8gbmV3IEFycmF5U2V0KCkgOiB0aGlzLl9zb3VyY2VzOwogICAgICAgIGNvbnN0IG5ld05hbWVzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgdGhpcy5fbWFwcGluZ3MudW5zb3J0ZWRGb3JFYWNoKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSA9PT0gc291cmNlRmlsZSAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSAhPSBudWxsKSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gYVNvdXJjZU1hcENvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3IoewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBvcmlnaW5hbC5zb3VyY2U7CiAgICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxMaW5lID0gb3JpZ2luYWwubGluZTsKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWwuY29sdW1uOwogICAgICAgICAgICAgIGlmIChvcmlnaW5hbC5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzb3VyY2UgPSBtYXBwaW5nLnNvdXJjZTsKICAgICAgICAgIGlmIChzb3VyY2UgIT0gbnVsbCAmJiAhbmV3U291cmNlcy5oYXMoc291cmNlKSkgewogICAgICAgICAgICBuZXdTb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbmFtZSA9IG1hcHBpbmcubmFtZTsKICAgICAgICAgIGlmIChuYW1lICE9IG51bGwgJiYgIW5ld05hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICBuZXdOYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgdGhpcy5fc291cmNlcyA9IG5ld1NvdXJjZXM7CiAgICAgICAgdGhpcy5fbmFtZXMgPSBuZXdOYW1lczsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlcy5mb3JFYWNoKGZ1bmN0aW9uKHNyY0ZpbGUpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlQ29udGVudEZvcihzcmNGaWxlKTsKICAgICAgICAgIGlmIChjb250ZW50ICE9IG51bGwpIHsKICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzcmNGaWxlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBzcmNGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc3JjRmlsZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc3JjRmlsZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5zZXRTb3VyY2VDb250ZW50KHNyY0ZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBIG1hcHBpbmcgY2FuIGhhdmUgb25lIG9mIHRoZSB0aHJlZSBsZXZlbHMgb2YgZGF0YToKICAgICAgICoKICAgICAgICogICAxLiBKdXN0IHRoZSBnZW5lcmF0ZWQgcG9zaXRpb24uCiAgICAgICAqICAgMi4gVGhlIEdlbmVyYXRlZCBwb3NpdGlvbiwgb3JpZ2luYWwgcG9zaXRpb24sIGFuZCBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgMy4gR2VuZXJhdGVkIGFuZCBvcmlnaW5hbCBwb3NpdGlvbiwgb3JpZ2luYWwgc291cmNlLCBhcyB3ZWxsIGFzIGEgbmFtZQogICAgICAgKiAgICAgIHRva2VuLgogICAgICAgKgogICAgICAgKiBUbyBtYWludGFpbiBjb25zaXN0ZW5jeSwgd2UgdmFsaWRhdGUgdGhhdCBhbnkgbmV3IG1hcHBpbmcgYmVpbmcgYWRkZWQgZmFsbHMKICAgICAgICogaW4gdG8gb25lIG9mIHRoZXNlIGNhdGVnb3JpZXMuCiAgICAgICAqLwogICAgICBfdmFsaWRhdGVNYXBwaW5nKGFHZW5lcmF0ZWQsIGFPcmlnaW5hbCwgYVNvdXJjZSwgYU5hbWUpIHsKICAgICAgICBpZiAoYU9yaWdpbmFsICYmIHR5cGVvZiBhT3JpZ2luYWwubGluZSAhPT0gIm51bWJlciIgJiYgdHlwZW9mIGFPcmlnaW5hbC5jb2x1bW4gIT09ICJudW1iZXIiKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJvcmlnaW5hbC5saW5lIGFuZCBvcmlnaW5hbC5jb2x1bW4gYXJlIG5vdCBudW1iZXJzIC0tIHlvdSBwcm9iYWJseSBtZWFudCB0byBvbWl0IHRoZSBvcmlnaW5hbCBtYXBwaW5nIGVudGlyZWx5IGFuZCBvbmx5IG1hcCB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9uLiBJZiBzbywgcGFzcyBudWxsIGZvciB0aGUgb3JpZ2luYWwgbWFwcGluZyBpbnN0ZWFkIG9mIGFuIG9iamVjdCB3aXRoIGVtcHR5IG9yIG51bGwgdmFsdWVzLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYUdlbmVyYXRlZC5saW5lID4gMCAmJiBhR2VuZXJhdGVkLmNvbHVtbiA+PSAwICYmICFhT3JpZ2luYWwgJiYgIWFTb3VyY2UgJiYgIWFOYW1lKSB7CiAgICAgICAgfSBlbHNlIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYU9yaWdpbmFsICYmICJsaW5lIiBpbiBhT3JpZ2luYWwgJiYgImNvbHVtbiIgaW4gYU9yaWdpbmFsICYmIGFHZW5lcmF0ZWQubGluZSA+IDAgJiYgYUdlbmVyYXRlZC5jb2x1bW4gPj0gMCAmJiBhT3JpZ2luYWwubGluZSA+IDAgJiYgYU9yaWdpbmFsLmNvbHVtbiA+PSAwICYmIGFTb3VyY2UpIHsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIG1hcHBpbmc6ICIgKyBKU09OLnN0cmluZ2lmeSh7CiAgICAgICAgICAgIGdlbmVyYXRlZDogYUdlbmVyYXRlZCwKICAgICAgICAgICAgc291cmNlOiBhU291cmNlLAogICAgICAgICAgICBvcmlnaW5hbDogYU9yaWdpbmFsLAogICAgICAgICAgICBuYW1lOiBhTmFtZQogICAgICAgICAgfSkpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogU2VyaWFsaXplIHRoZSBhY2N1bXVsYXRlZCBtYXBwaW5ncyBpbiB0byB0aGUgc3RyZWFtIG9mIGJhc2UgNjQgVkxRcwogICAgICAgKiBzcGVjaWZpZWQgYnkgdGhlIHNvdXJjZSBtYXAgZm9ybWF0LgogICAgICAgKi8KICAgICAgX3NlcmlhbGl6ZU1hcHBpbmdzKCkgewogICAgICAgIGxldCBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzR2VuZXJhdGVkTGluZSA9IDE7CiAgICAgICAgbGV0IHByZXZpb3VzT3JpZ2luYWxDb2x1bW4gPSAwOwogICAgICAgIGxldCBwcmV2aW91c09yaWdpbmFsTGluZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzTmFtZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzU291cmNlID0gMDsKICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IG5leHQ7CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgbGV0IG5hbWVJZHg7CiAgICAgICAgbGV0IHNvdXJjZUlkeDsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gbWFwcGluZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIG1hcHBpbmcgPSBtYXBwaW5nc1tpXTsKICAgICAgICAgIG5leHQgPSAiIjsKICAgICAgICAgIGlmIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIG5leHQgKz0gIjsiOwogICAgICAgICAgICAgIHByZXZpb3VzR2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPiAwKSB7CiAgICAgICAgICAgIGlmICghdXRpbC5jb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nLCBtYXBwaW5nc1tpIC0gMV0pKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmV4dCArPSAiLCI7CiAgICAgICAgICB9CiAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBwcmV2aW91c0dlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlSWR4ID0gdGhpcy5fc291cmNlcy5pbmRleE9mKG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKHNvdXJjZUlkeCAtIHByZXZpb3VzU291cmNlKTsKICAgICAgICAgICAgcHJldmlvdXNTb3VyY2UgPSBzb3VyY2VJZHg7CiAgICAgICAgICAgIG5leHQgKz0gYmFzZTY0VkxRLmVuY29kZShtYXBwaW5nLm9yaWdpbmFsTGluZSAtIDEgLSBwcmV2aW91c09yaWdpbmFsTGluZSk7CiAgICAgICAgICAgIHByZXZpb3VzT3JpZ2luYWxMaW5lID0gbWFwcGluZy5vcmlnaW5hbExpbmUgLSAxOwogICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5vcmlnaW5hbENvbHVtbiAtIHByZXZpb3VzT3JpZ2luYWxDb2x1bW4pOwogICAgICAgICAgICBwcmV2aW91c09yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmFtZUlkeCA9IHRoaXMuX25hbWVzLmluZGV4T2YobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobmFtZUlkeCAtIHByZXZpb3VzTmFtZSk7CiAgICAgICAgICAgICAgcHJldmlvdXNOYW1lID0gbmFtZUlkeDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmVzdWx0ICs9IG5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgX2dlbmVyYXRlU291cmNlc0NvbnRlbnQoYVNvdXJjZXMsIGFTb3VyY2VSb290KSB7CiAgICAgICAgcmV0dXJuIGFTb3VyY2VzLm1hcChmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFTb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZShhU291cmNlUm9vdCwgc291cmNlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtleSA9IHV0aWwudG9TZXRTdHJpbmcoc291cmNlKTsKICAgICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5fc291cmNlc0NvbnRlbnRzLCBrZXkpID8gdGhpcy5fc291cmNlc0NvbnRlbnRzW2tleV0gOiBudWxsOwogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBFeHRlcm5hbGl6ZSB0aGUgc291cmNlIG1hcC4KICAgICAgICovCiAgICAgIHRvSlNPTigpIHsKICAgICAgICBjb25zdCBtYXAyID0gewogICAgICAgICAgdmVyc2lvbjogdGhpcy5fdmVyc2lvbiwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMuX3NvdXJjZXMudG9BcnJheSgpLAogICAgICAgICAgbmFtZXM6IHRoaXMuX25hbWVzLnRvQXJyYXkoKSwKICAgICAgICAgIG1hcHBpbmdzOiB0aGlzLl9zZXJpYWxpemVNYXBwaW5ncygpCiAgICAgICAgfTsKICAgICAgICBpZiAodGhpcy5fZmlsZSAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLmZpbGUgPSB0aGlzLl9maWxlOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZVJvb3QgPSB0aGlzLl9zb3VyY2VSb290OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZXNDb250ZW50ID0gdGhpcy5fZ2VuZXJhdGVTb3VyY2VzQ29udGVudChtYXAyLnNvdXJjZXMsIG1hcDIuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZW5kZXIgdGhlIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkIHRvIGEgc3RyaW5nLgogICAgICAgKi8KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMudG9KU09OKCkpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwR2VuZXJhdG9yLnByb3RvdHlwZS5fdmVyc2lvbiA9IDM7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBHZW5lcmF0b3IgPSBTb3VyY2VNYXBHZW5lcmF0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iaW5hcnktc2VhcmNoLmpzCnZhciByZXF1aXJlX2JpbmFyeV9zZWFyY2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2JpbmFyeS1zZWFyY2guanMiKGV4cG9ydHMyKSB7CiAgICBleHBvcnRzMi5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBleHBvcnRzMi5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBmdW5jdGlvbiByZWN1cnNpdmVTZWFyY2goYUxvdywgYUhpZ2gsIGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKSB7CiAgICAgIGNvbnN0IG1pZCA9IE1hdGguZmxvb3IoKGFIaWdoIC0gYUxvdykgLyAyKSArIGFMb3c7CiAgICAgIGNvbnN0IGNtcCA9IGFDb21wYXJlKGFOZWVkbGUsIGFIYXlzdGFja1ttaWRdLCB0cnVlKTsKICAgICAgaWYgKGNtcCA9PT0gMCkgewogICAgICAgIHJldHVybiBtaWQ7CiAgICAgIH0gZWxzZSBpZiAoY21wID4gMCkgewogICAgICAgIGlmIChhSGlnaCAtIG1pZCA+IDEpIHsKICAgICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2gobWlkLCBhSGlnaCwgYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpOwogICAgICAgIH0KICAgICAgICBpZiAoYUJpYXMgPT0gZXhwb3J0czIuTEVBU1RfVVBQRVJfQk9VTkQpIHsKICAgICAgICAgIHJldHVybiBhSGlnaCA8IGFIYXlzdGFjay5sZW5ndGggPyBhSGlnaCA6IC0xOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWlkOwogICAgICB9CiAgICAgIGlmIChtaWQgLSBhTG93ID4gMSkgewogICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2goYUxvdywgbWlkLCBhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcyk7CiAgICAgIH0KICAgICAgaWYgKGFCaWFzID09IGV4cG9ydHMyLkxFQVNUX1VQUEVSX0JPVU5EKSB7CiAgICAgICAgcmV0dXJuIG1pZDsKICAgICAgfQogICAgICByZXR1cm4gYUxvdyA8IDAgPyAtMSA6IGFMb3c7CiAgICB9CiAgICBleHBvcnRzMi5zZWFyY2ggPSBmdW5jdGlvbiBzZWFyY2goYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpIHsKICAgICAgaWYgKGFIYXlzdGFjay5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgbGV0IGluZGV4ID0gcmVjdXJzaXZlU2VhcmNoKAogICAgICAgIC0xLAogICAgICAgIGFIYXlzdGFjay5sZW5ndGgsCiAgICAgICAgYU5lZWRsZSwKICAgICAgICBhSGF5c3RhY2ssCiAgICAgICAgYUNvbXBhcmUsCiAgICAgICAgYUJpYXMgfHwgZXhwb3J0czIuR1JFQVRFU1RfTE9XRVJfQk9VTkQKICAgICAgKTsKICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICB3aGlsZSAoaW5kZXggLSAxID49IDApIHsKICAgICAgICBpZiAoYUNvbXBhcmUoYUhheXN0YWNrW2luZGV4XSwgYUhheXN0YWNrW2luZGV4IC0gMV0sIHRydWUpICE9PSAwKSB7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgLS1pbmRleDsKICAgICAgfQogICAgICByZXR1cm4gaW5kZXg7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzCnZhciByZXF1aXJlX3JlYWRfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGlzQnJvd3NlckVudmlyb25tZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd2luZG93ICE9PSAidW5kZWZpbmVkIiAmJiB0aGlzID09PSB3aW5kb3c7CiAgICB9LmNhbGwoKTsKICAgIGlmIChpc0Jyb3dzZXJFbnZpcm9ubWVudCkgewogICAgICBsZXQgbWFwcGluZ3NXYXNtID0gbnVsbDsKICAgICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gcmVhZFdhc20oKSB7CiAgICAgICAgaWYgKHR5cGVvZiBtYXBwaW5nc1dhc20gPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gZmV0Y2gobWFwcGluZ3NXYXNtKS50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKSk7CiAgICAgICAgfQogICAgICAgIGlmIChtYXBwaW5nc1dhc20gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikgewogICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYXBwaW5nc1dhc20pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIllvdSBtdXN0IHByb3ZpZGUgdGhlIHN0cmluZyBVUkwgb3IgQXJyYXlCdWZmZXIgY29udGVudHMgb2YgbGliL21hcHBpbmdzLndhc20gYnkgY2FsbGluZyBTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplKHsgJ2xpYi9tYXBwaW5ncy53YXNtJzogLi4uIH0pIGJlZm9yZSB1c2luZyBTb3VyY2VNYXBDb25zdW1lciIpOwogICAgICB9OwogICAgICBtb2R1bGUyLmV4cG9ydHMuaW5pdGlhbGl6ZSA9IChpbnB1dCkgPT4gbWFwcGluZ3NXYXNtID0gaW5wdXQ7CiAgICB9IGVsc2UgewogICAgICBjb25zdCBmcyA9IHJlcXVpcmUoImZzIik7CiAgICAgIGNvbnN0IHBhdGggPSByZXF1aXJlKCJwYXRoIik7CiAgICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHJlYWRXYXNtKCkgewogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CiAgICAgICAgICBjb25zdCB3YXNtUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICJtYXBwaW5ncy53YXNtIik7CiAgICAgICAgICBmcy5yZWFkRmlsZSh3YXNtUGF0aCwgbnVsbCwgKGVycm9yLCBkYXRhKSA9PiB7CiAgICAgICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgICAgIHJlamVjdChlcnJvcik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc29sdmUoZGF0YS5idWZmZXIpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIG1vZHVsZTIuZXhwb3J0cy5pbml0aWFsaXplID0gKF8pID0+IHsKICAgICAgICBjb25zb2xlLmRlYnVnKCJTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplIGlzIGEgbm8tb3Agd2hlbiBydW5uaW5nIGluIG5vZGUuanMiKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3dhc20uanMKdmFyIHJlcXVpcmVfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvd2FzbS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICBmdW5jdGlvbiBNYXBwaW5nKCkgewogICAgICB0aGlzLmdlbmVyYXRlZExpbmUgPSAwOwogICAgICB0aGlzLmdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgIHRoaXMubGFzdEdlbmVyYXRlZENvbHVtbiA9IG51bGw7CiAgICAgIHRoaXMuc291cmNlID0gbnVsbDsKICAgICAgdGhpcy5vcmlnaW5hbExpbmUgPSBudWxsOwogICAgICB0aGlzLm9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgdGhpcy5uYW1lID0gbnVsbDsKICAgIH0KICAgIHZhciBjYWNoZWRXYXNtID0gbnVsbDsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHdhc20oKSB7CiAgICAgIGlmIChjYWNoZWRXYXNtKSB7CiAgICAgICAgcmV0dXJuIGNhY2hlZFdhc207CiAgICAgIH0KICAgICAgY29uc3QgY2FsbGJhY2tTdGFjayA9IFtdOwogICAgICBjYWNoZWRXYXNtID0gcmVhZFdhc20oKS50aGVuKChidWZmZXIpID0+IHsKICAgICAgICByZXR1cm4gV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUoYnVmZmVyLCB7CiAgICAgICAgICBlbnY6IHsKICAgICAgICAgICAgbWFwcGluZ19jYWxsYmFjayhnZW5lcmF0ZWRMaW5lLCBnZW5lcmF0ZWRDb2x1bW4sIGhhc0xhc3RHZW5lcmF0ZWRDb2x1bW4sIGxhc3RHZW5lcmF0ZWRDb2x1bW4sIGhhc09yaWdpbmFsLCBzb3VyY2UsIG9yaWdpbmFsTGluZSwgb3JpZ2luYWxDb2x1bW4sIGhhc05hbWUsIG5hbWUpIHsKICAgICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gbmV3IE1hcHBpbmcoKTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZExpbmUgPSBnZW5lcmF0ZWRMaW5lICsgMTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiA9IGdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAoaGFzTGFzdEdlbmVyYXRlZENvbHVtbikgewogICAgICAgICAgICAgICAgbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uID0gbGFzdEdlbmVyYXRlZENvbHVtbiAtIDE7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChoYXNPcmlnaW5hbCkgewogICAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBzb3VyY2U7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSA9IG9yaWdpbmFsTGluZSArIDE7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgICAgICBpZiAoaGFzTmFtZSkgewogICAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSBuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjYWxsYmFja1N0YWNrW2NhbGxiYWNrU3RhY2subGVuZ3RoIC0gMV0obWFwcGluZyk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2FsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImFsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImdlbmVyYXRlZF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2dlbmVyYXRlZF9sb2NhdGlvbl9mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJnZW5lcmF0ZWRfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X29yaWdpbmFsX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoIm9yaWdpbmFsX2xvY2F0aW9uX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfb3JpZ2luYWxfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgib3JpZ2luYWxfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9zb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgic29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoInNvcnRfYnlfb3JpZ2luYWxfbG9jYXRpb24iKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KS50aGVuKChXYXNtKSA9PiB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGV4cG9ydHM6IFdhc20uaW5zdGFuY2UuZXhwb3J0cywKICAgICAgICAgIHdpdGhNYXBwaW5nQ2FsbGJhY2s6IChtYXBwaW5nQ2FsbGJhY2ssIGYpID0+IHsKICAgICAgICAgICAgY2FsbGJhY2tTdGFjay5wdXNoKG1hcHBpbmdDYWxsYmFjayk7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZigpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGNhbGxiYWNrU3RhY2sucG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KS50aGVuKG51bGwsIChlKSA9PiB7CiAgICAgICAgY2FjaGVkV2FzbSA9IG51bGw7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfSk7CiAgICAgIHJldHVybiBjYWNoZWRXYXNtOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtY29uc3VtZXIuanMKdmFyIHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1jb25zdW1lci5qcyIoZXhwb3J0czIpIHsKICAgIHZhciB1dGlsID0gcmVxdWlyZV91dGlsMigpOwogICAgdmFyIGJpbmFyeVNlYXJjaCA9IHJlcXVpcmVfYmluYXJ5X3NlYXJjaCgpOwogICAgdmFyIEFycmF5U2V0ID0gcmVxdWlyZV9hcnJheV9zZXQoKS5BcnJheVNldDsKICAgIHZhciBiYXNlNjRWTFEgPSByZXF1aXJlX2Jhc2U2NF92bHEoKTsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICB2YXIgd2FzbSA9IHJlcXVpcmVfd2FzbSgpOwogICAgdmFyIElOVEVSTkFMID0gU3ltYm9sKCJzbWNJbnRlcm5hbCIpOwogICAgdmFyIFNvdXJjZU1hcENvbnN1bWVyID0gY2xhc3MgX1NvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIGlmIChhU291cmNlTWFwID09IElOVEVSTkFMKSB7CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX2ZhY3RvcnkoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIH0KICAgICAgc3RhdGljIGluaXRpYWxpemUob3B0cykgewogICAgICAgIHJlYWRXYXNtLmluaXRpYWxpemUob3B0c1sibGliL21hcHBpbmdzLndhc20iXSk7CiAgICAgIH0KICAgICAgc3RhdGljIGZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBfZmFjdG9yeUJTTShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29uc3RydWN0IGEgbmV3IGBTb3VyY2VNYXBDb25zdW1lcmAgZnJvbSBgcmF3U291cmNlTWFwYCBhbmQgYHNvdXJjZU1hcFVybGAKICAgICAgICogKHNlZSB0aGUgYFNvdXJjZU1hcENvbnN1bWVyYCBjb25zdHJ1Y3RvciBmb3IgZGV0YWlscy4gVGhlbiwgaW52b2tlIHRoZSBgYXN5bmMKICAgICAgICogZnVuY3Rpb24gZihTb3VyY2VNYXBDb25zdW1lcikgLT4gVGAgd2l0aCB0aGUgbmV3bHkgY29uc3RydWN0ZWQgY29uc3VtZXIsIHdhaXQKICAgICAgICogZm9yIGBmYCB0byBjb21wbGV0ZSwgY2FsbCBgZGVzdHJveWAgb24gdGhlIGNvbnN1bWVyLCBhbmQgcmV0dXJuIGBmYCdzIHJldHVybgogICAgICAgKiB2YWx1ZS4KICAgICAgICoKICAgICAgICogWW91IG11c3Qgbm90IHVzZSB0aGUgY29uc3VtZXIgYWZ0ZXIgYGZgIGNvbXBsZXRlcyEKICAgICAgICoKICAgICAgICogQnkgdXNpbmcgYHdpdGhgLCB5b3UgZG8gbm90IGhhdmUgdG8gcmVtZW1iZXIgdG8gbWFudWFsbHkgY2FsbCBgZGVzdHJveWAgb24KICAgICAgICogdGhlIGNvbnN1bWVyLCBzaW5jZSBpdCB3aWxsIGJlIGNhbGxlZCBhdXRvbWF0aWNhbGx5IG9uY2UgYGZgIGNvbXBsZXRlcy4KICAgICAgICoKICAgICAgICogYGBganMKICAgICAgICogY29uc3QgeFNxdWFyZWQgPSBhd2FpdCBTb3VyY2VNYXBDb25zdW1lci53aXRoKAogICAgICAgKiAgIG15UmF3U291cmNlTWFwLAogICAgICAgKiAgIG51bGwsCiAgICAgICAqICAgYXN5bmMgZnVuY3Rpb24gKGNvbnN1bWVyKSB7CiAgICAgICAqICAgICAvLyBVc2UgYGNvbnN1bWVyYCBpbnNpZGUgaGVyZSBhbmQgZG9uJ3Qgd29ycnkgYWJvdXQgcmVtZW1iZXJpbmcKICAgICAgICogICAgIC8vIHRvIGNhbGwgYGRlc3Ryb3lgLgogICAgICAgKgogICAgICAgKiAgICAgY29uc3QgeCA9IGF3YWl0IHdoYXRldmVyKGNvbnN1bWVyKTsKICAgICAgICogICAgIHJldHVybiB4ICogeDsKICAgICAgICogICB9CiAgICAgICAqICk7CiAgICAgICAqCiAgICAgICAqIC8vIFlvdSBtYXkgbm90IHVzZSB0aGF0IGBjb25zdW1lcmAgYW55bW9yZSBvdXQgaGVyZTsgaXQgaGFzCiAgICAgICAqIC8vIGJlZW4gZGVzdHJveWVkLiBCdXQgeW91IGNhbiB1c2UgYHhTcXVhcmVkYC4KICAgICAgICogY29uc29sZS5sb2coeFNxdWFyZWQpOwogICAgICAgKiBgYGAKICAgICAgICovCiAgICAgIHN0YXRpYyBhc3luYyB3aXRoKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsLCBmKSB7CiAgICAgICAgY29uc3QgY29uc3VtZXIgPSBhd2FpdCBuZXcgX1NvdXJjZU1hcENvbnN1bWVyKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsKTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGF3YWl0IGYoY29uc3VtZXIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBjb25zdW1lci5kZXN0cm95KCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBQYXJzZSB0aGUgbWFwcGluZ3MgaW4gYSBzdHJpbmcgaW4gdG8gYSBkYXRhIHN0cnVjdHVyZSB3aGljaCB3ZSBjYW4gZWFzaWx5CiAgICAgICAqIHF1ZXJ5ICh0aGUgb3JkZXJlZCBhcnJheXMgaW4gdGhlIGB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAgKiBgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NgIHByb3BlcnRpZXMpLgogICAgICAgKi8KICAgICAgX3BhcnNlTWFwcGluZ3MoYVN0ciwgYVNvdXJjZVJvb3QpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgX3BhcnNlTWFwcGluZ3MiKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogSXRlcmF0ZSBvdmVyIGVhY2ggbWFwcGluZyBiZXR3ZWVuIGFuIG9yaWdpbmFsIHNvdXJjZS9saW5lL2NvbHVtbiBhbmQgYQogICAgICAgKiBnZW5lcmF0ZWQgbGluZS9jb2x1bW4gaW4gdGhpcyBzb3VyY2UgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gRnVuY3Rpb24gYUNhbGxiYWNrCiAgICAgICAqICAgICAgICBUaGUgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2l0aCBlYWNoIG1hcHBpbmcuCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYUNvbnRleHQKICAgICAgICogICAgICAgIE9wdGlvbmFsLiBJZiBzcGVjaWZpZWQsIHRoaXMgb2JqZWN0IHdpbGwgYmUgdGhlIHZhbHVlIG9mIGB0aGlzYCBldmVyeQogICAgICAgKiAgICAgICAgdGltZSB0aGF0IGBhQ2FsbGJhY2tgIGlzIGNhbGxlZC4KICAgICAgICogQHBhcmFtIGFPcmRlcgogICAgICAgKiAgICAgICAgRWl0aGVyIGBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVJgIG9yCiAgICAgICAqICAgICAgICBgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVJgLiBTcGVjaWZpZXMgd2hldGhlciB5b3Ugd2FudCB0bwogICAgICAgKiAgICAgICAgaXRlcmF0ZSBvdmVyIHRoZSBtYXBwaW5ncyBzb3J0ZWQgYnkgdGhlIGdlbmVyYXRlZCBmaWxlJ3MgbGluZS9jb2x1bW4KICAgICAgICogICAgICAgIG9yZGVyIG9yIHRoZSBvcmlnaW5hbCdzIHNvdXJjZS9saW5lL2NvbHVtbiBvcmRlciwgcmVzcGVjdGl2ZWx5LiBEZWZhdWx0cyB0bwogICAgICAgKiAgICAgICAgYFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUmAuCiAgICAgICAqLwogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZWFjaE1hcHBpbmciKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbGwgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwcm92aWRlZC4gSWYgbm8gY29sdW1uIGlzIHByb3ZpZGVkLCByZXR1cm5zIGFsbCBtYXBwaW5ncwogICAgICAgKiBjb3JyZXNwb25kaW5nIHRvIGEgZWl0aGVyIHRoZSBsaW5lIHdlIGFyZSBzZWFyY2hpbmcgZm9yIG9yIHRoZSBuZXh0CiAgICAgICAqIGNsb3Nlc3QgbGluZSB0aGF0IGhhcyBhbnkgbWFwcGluZ3MuIE90aGVyd2lzZSwgcmV0dXJucyBhbGwgbWFwcGluZ3MKICAgICAgICogY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gbGluZSBhbmQgZWl0aGVyIHRoZSBjb2x1bW4gd2UgYXJlIHNlYXJjaGluZyBmb3IKICAgICAgICogb3IgdGhlIG5leHQgY2xvc2VzdCBjb2x1bW4gdGhhdCBoYXMgYW55IG9mZnNldHMuCiAgICAgICAqCiAgICAgICAqIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBPcHRpb25hbC4gdGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICoKICAgICAgICogYW5kIGFuIGFycmF5IG9mIG9iamVjdHMgaXMgcmV0dXJuZWQsIGVhY2ggd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqLwogICAgICBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IoYUFyZ3MpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yIik7CiAgICAgIH0KICAgICAgZGVzdHJveSgpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZGVzdHJveSIpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLl92ZXJzaW9uID0gMzsKICAgIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUiA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUiA9IDI7CiAgICBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IFNvdXJjZU1hcENvbnN1bWVyOwogICAgdmFyIEJhc2ljU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBfQmFzaWNTb3VyY2VNYXBDb25zdW1lciBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBsZXQgc291cmNlcyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZXMiKTsKICAgICAgICAgIGNvbnN0IG5hbWVzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibmFtZXMiLCBbXSk7CiAgICAgICAgICBsZXQgc291cmNlUm9vdCA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZVJvb3QiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IHNvdXJjZXNDb250ZW50ID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic291cmNlc0NvbnRlbnQiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibWFwcGluZ3MiKTsKICAgICAgICAgIGNvbnN0IGZpbGUgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJmaWxlIiwgbnVsbCk7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZVJvb3QpIHsKICAgICAgICAgICAgc291cmNlUm9vdCA9IHV0aWwubm9ybWFsaXplKHNvdXJjZVJvb3QpOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlcyA9IHNvdXJjZXMubWFwKFN0cmluZykubWFwKHV0aWwubm9ybWFsaXplKS5tYXAoZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2VSb290ICYmIHV0aWwuaXNBYnNvbHV0ZShzb3VyY2VSb290KSAmJiB1dGlsLmlzQWJzb2x1dGUoc291cmNlKSA/IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc291cmNlKSA6IHNvdXJjZTsKICAgICAgICAgIH0pOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBBcnJheVNldC5mcm9tQXJyYXkobmFtZXMubWFwKFN0cmluZyksIHRydWUpOwogICAgICAgICAgdGhhdC5fc291cmNlcyA9IEFycmF5U2V0LmZyb21BcnJheShzb3VyY2VzLCB0cnVlKTsKICAgICAgICAgIHRoYXQuX2Fic29sdXRlU291cmNlcyA9IHRoYXQuX3NvdXJjZXMudG9BcnJheSgpLm1hcChmdW5jdGlvbihzKSB7CiAgICAgICAgICAgIHJldHVybiB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgcywgYVNvdXJjZU1hcFVSTCk7CiAgICAgICAgICB9KTsKICAgICAgICAgIHRoYXQuc291cmNlUm9vdCA9IHNvdXJjZVJvb3Q7CiAgICAgICAgICB0aGF0LnNvdXJjZXNDb250ZW50ID0gc291cmNlc0NvbnRlbnQ7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICAgICAgdGhhdC5fc291cmNlTWFwVVJMID0gYVNvdXJjZU1hcFVSTDsKICAgICAgICAgIHRoYXQuZmlsZSA9IGZpbGU7CiAgICAgICAgICB0aGF0Ll9jb21wdXRlZENvbHVtblNwYW5zID0gZmFsc2U7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5nc1B0ciA9IDA7CiAgICAgICAgICB0aGF0Ll93YXNtID0gbnVsbDsKICAgICAgICAgIHJldHVybiB3YXNtKCkudGhlbigodykgPT4gewogICAgICAgICAgICB0aGF0Ll93YXNtID0gdzsKICAgICAgICAgICAgcmV0dXJuIHRoYXQ7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogVXRpbGl0eSBmdW5jdGlvbiB0byBmaW5kIHRoZSBpbmRleCBvZiBhIHNvdXJjZS4gIFJldHVybnMgLTEgaWYgbm90CiAgICAgICAqIGZvdW5kLgogICAgICAgKi8KICAgICAgX2ZpbmRTb3VyY2VJbmRleChhU291cmNlKSB7CiAgICAgICAgbGV0IHJlbGF0aXZlU291cmNlID0gYVNvdXJjZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIHJlbGF0aXZlU291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLnNvdXJjZVJvb3QsIHJlbGF0aXZlU291cmNlKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZXMuaGFzKHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuX3NvdXJjZXMuaW5kZXhPZihyZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fYWJzb2x1dGVTb3VyY2VzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICBpZiAodGhpcy5fYWJzb2x1dGVTb3VyY2VzW2ldID09IGFTb3VyY2UpIHsKICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgQmFzaWNTb3VyY2VNYXBDb25zdW1lciBmcm9tIGEgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU291cmNlTWFwR2VuZXJhdG9yIGFTb3VyY2VNYXAKICAgICAgICogICAgICAgIFRoZSBzb3VyY2UgbWFwIHRoYXQgd2lsbCBiZSBjb25zdW1lZC4KICAgICAgICogQHBhcmFtIFN0cmluZyBhU291cmNlTWFwVVJMCiAgICAgICAqICAgICAgICBUaGUgVVJMIGF0IHdoaWNoIHRoZSBzb3VyY2UgbWFwIGNhbiBiZSBmb3VuZCAob3B0aW9uYWwpCiAgICAgICAqIEByZXR1cm5zIEJhc2ljU291cmNlTWFwQ29uc3VtZXIKICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gbmV3IF9CYXNpY1NvdXJjZU1hcENvbnN1bWVyKGFTb3VyY2VNYXAudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgICAgZ2V0IHNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Fic29sdXRlU291cmNlcy5zbGljZSgpOwogICAgICB9CiAgICAgIF9nZXRNYXBwaW5nc1B0cigpIHsKICAgICAgICBpZiAodGhpcy5fbWFwcGluZ3NQdHIgPT09IDApIHsKICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ3ModGhpcy5fbWFwcGluZ3MsIHRoaXMuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9tYXBwaW5nc1B0cjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3Qgc2l6ZSA9IGFTdHIubGVuZ3RoOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLmFsbG9jYXRlX21hcHBpbmdzKHNpemUpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmID0gbmV3IFVpbnQ4QXJyYXkodGhpcy5fd2FzbS5leHBvcnRzLm1lbW9yeS5idWZmZXIsIG1hcHBpbmdzQnVmUHRyLCBzaXplKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7IGkrKykgewogICAgICAgICAgbWFwcGluZ3NCdWZbaV0gPSBhU3RyLmNoYXJDb2RlQXQoaSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1hcHBpbmdzUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLnBhcnNlX21hcHBpbmdzKG1hcHBpbmdzQnVmUHRyKTsKICAgICAgICBpZiAoIW1hcHBpbmdzUHRyKSB7CiAgICAgICAgICBjb25zdCBlcnJvciA9IHRoaXMuX3dhc20uZXhwb3J0cy5nZXRfbGFzdF9lcnJvcigpOwogICAgICAgICAgbGV0IG1zZyA9IGBFcnJvciBwYXJzaW5nIG1hcHBpbmdzIChjb2RlICR7ZXJyb3J9KTogYDsKICAgICAgICAgIHN3aXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG5lZ2F0aXZlIGxpbmUsIGNvbHVtbiwgc291cmNlIGluZGV4LCBvciBuYW1lIGluZGV4IjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG51bWJlciBsYXJnZXIgdGhhbiAyKiozMiI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICBtc2cgKz0gInJlYWNoZWQgRU9GIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBtc2cgKz0gImludmFsaWQgYmFzZSA2NCBjaGFyYWN0ZXIgd2hpbGUgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgbXNnICs9ICJ1bmtub3duIGVycm9yIGNvZGUiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzUHRyID0gbWFwcGluZ3NQdHI7CiAgICAgIH0KICAgICAgZWFjaE1hcHBpbmcoYUNhbGxiYWNrLCBhQ29udGV4dCwgYU9yZGVyKSB7CiAgICAgICAgY29uc3QgY29udGV4dCA9IGFDb250ZXh0IHx8IG51bGw7CiAgICAgICAgY29uc3Qgb3JkZXIgPSBhT3JkZXIgfHwgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOwogICAgICAgIGNvbnN0IHNvdXJjZVJvb3QgPSB0aGlzLnNvdXJjZVJvb3Q7CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKAogICAgICAgICAgKG1hcHBpbmcpID0+IHsKICAgICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSB0aGlzLl9uYW1lcy5hdChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBhQ2FsbGJhY2suY2FsbChjb250ZXh0LCBtYXBwaW5nKTsKICAgICAgICAgIH0sCiAgICAgICAgICAoKSA9PiB7CiAgICAgICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjoKICAgICAgICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5ieV9nZW5lcmF0ZWRfbG9jYXRpb24odGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSOgogICAgICAgICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmJ5X29yaWdpbmFsX2xvY2F0aW9uKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBvcmRlciBvZiBpdGVyYXRpb24uIik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICApOwogICAgICB9CiAgICAgIGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvcihhQXJncykgewogICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gYUFyZ3MuY29sdW1uIHx8IDA7CiAgICAgICAgc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KHNvdXJjZSk7CiAgICAgICAgaWYgKHNvdXJjZSA8IDApIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgaWYgKG9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAob3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXBwaW5ncyA9IFtdOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygKICAgICAgICAgIChtKSA9PiB7CiAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbS5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIG1hcHBpbmdzLnB1c2goewogICAgICAgICAgICAgIGxpbmU6IG0uZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG0uZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKAogICAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZSAtIDEsCiAgICAgICAgICAgICAgImNvbHVtbiIgaW4gYUFyZ3MsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW4KICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICApOwogICAgICAgIHJldHVybiBtYXBwaW5nczsKICAgICAgfQogICAgICBkZXN0cm95KCkgewogICAgICAgIGlmICh0aGlzLl9tYXBwaW5nc1B0ciAhPT0gMCkgewogICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmZyZWVfbWFwcGluZ3ModGhpcy5fbWFwcGluZ3NQdHIpOwogICAgICAgICAgdGhpcy5fbWFwcGluZ3NQdHIgPSAwOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tcHV0ZSB0aGUgbGFzdCBjb2x1bW4gZm9yIGVhY2ggZ2VuZXJhdGVkIG1hcHBpbmcuIFRoZSBsYXN0IGNvbHVtbiBpcwogICAgICAgKiBpbmNsdXNpdmUuCiAgICAgICAqLwogICAgICBjb21wdXRlQ29sdW1uU3BhbnMoKSB7CiAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmNvbXB1dGVfY29sdW1uX3NwYW5zKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgIHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgPSB0cnVlOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UsIGxpbmUsIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBnZW5lcmF0ZWQKICAgICAgICogc291cmNlJ3MgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0CiAgICAgICAqIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvciBudWxsLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIG5hbWU6IFRoZSBvcmlnaW5hbCBpZGVudGlmaWVyLCBvciBudWxsLgogICAgICAgKi8KICAgICAgb3JpZ2luYWxQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIGdlbmVyYXRlZExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIpCiAgICAgICAgfTsKICAgICAgICBpZiAobmVlZGxlLmdlbmVyYXRlZExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5vcmlnaW5hbF9sb2NhdGlvbl9mb3IoCiAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgIG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLmdlbmVyYXRlZENvbHVtbiwKICAgICAgICAgICAgYmlhcwogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgICBpZiAobWFwcGluZykgewogICAgICAgICAgaWYgKG1hcHBpbmcuZ2VuZXJhdGVkTGluZSA9PT0gbmVlZGxlLmdlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICAgICAgaWYgKHNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuYXQoc291cmNlKTsKICAgICAgICAgICAgICBzb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwodGhpcy5zb3VyY2VSb290LCBzb3VyY2UsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG5hbWUgPSB1dGlsLmdldEFyZyhtYXBwaW5nLCAibmFtZSIsIG51bGwpOwogICAgICAgICAgICBpZiAobmFtZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5hdChuYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICBuYW1lCiAgICAgICAgICAgIH07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzb3VyY2U6IG51bGwsCiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgbmFtZTogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0cnVlIGlmIHdlIGhhdmUgdGhlIHNvdXJjZSBjb250ZW50IGZvciBldmVyeSBzb3VyY2UgaW4gdGhlIHNvdXJjZQogICAgICAgKiBtYXAsIGZhbHNlIG90aGVyd2lzZS4KICAgICAgICovCiAgICAgIGhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCkgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudC5sZW5ndGggPj0gdGhpcy5fc291cmNlcy5zaXplKCkgJiYgIXRoaXMuc291cmNlc0NvbnRlbnQuc29tZShmdW5jdGlvbihzYykgewogICAgICAgICAgcmV0dXJuIHNjID09IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KGFTb3VyY2UpOwogICAgICAgIGlmIChpbmRleCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFtpbmRleF07CiAgICAgICAgfQogICAgICAgIGxldCByZWxhdGl2ZVNvdXJjZSA9IGFTb3VyY2U7CiAgICAgICAgaWYgKHRoaXMuc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICByZWxhdGl2ZVNvdXJjZSA9IHV0aWwucmVsYXRpdmUodGhpcy5zb3VyY2VSb290LCByZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGxldCB1cmwzOwogICAgICAgIGlmICh0aGlzLnNvdXJjZVJvb3QgIT0gbnVsbCAmJiAodXJsMyA9IHV0aWwudXJsUGFyc2UodGhpcy5zb3VyY2VSb290KSkpIHsKICAgICAgICAgIGNvbnN0IGZpbGVVcmlBYnNQYXRoID0gcmVsYXRpdmVTb3VyY2UucmVwbGFjZSgvXmZpbGU6XC9cLy8sICIiKTsKICAgICAgICAgIGlmICh1cmwzLnNjaGVtZSA9PSAiZmlsZSIgJiYgdGhpcy5fc291cmNlcy5oYXMoZmlsZVVyaUFic1BhdGgpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50W3RoaXMuX3NvdXJjZXMuaW5kZXhPZihmaWxlVXJpQWJzUGF0aCldOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCghdXJsMy5wYXRoIHx8IHVybDMucGF0aCA9PSAiLyIpICYmIHRoaXMuX3NvdXJjZXMuaGFzKCIvIiArIHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFt0aGlzLl9zb3VyY2VzLmluZGV4T2YoIi8iICsgcmVsYXRpdmVTb3VyY2UpXTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgcmVsYXRpdmVTb3VyY2UgKyAnIiBpcyBub3QgaW4gdGhlIFNvdXJjZU1hcC4nKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoCiAgICAgICAqIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKi8KICAgICAgZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKTsKICAgICAgICBzb3VyY2UgPSB0aGlzLl9maW5kU291cmNlSW5kZXgoc291cmNlKTsKICAgICAgICBpZiAoc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICBvcmlnaW5hbExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIikKICAgICAgICB9OwogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5nZW5lcmF0ZWRfbG9jYXRpb25fZm9yKAogICAgICAgICAgICB0aGlzLl9nZXRNYXBwaW5nc1B0cigpLAogICAgICAgICAgICBuZWVkbGUuc291cmNlLAogICAgICAgICAgICBuZWVkbGUub3JpZ2luYWxMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICBiaWFzCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICAgIGlmIChtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgPT09IG5lZWRsZS5zb3VyY2UpIHsKICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgfTsKICAgIEJhc2ljU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLmNvbnN1bWVyID0gU291cmNlTWFwQ29uc3VtZXI7CiAgICBleHBvcnRzMi5CYXNpY1NvdXJjZU1hcENvbnN1bWVyID0gQmFzaWNTb3VyY2VNYXBDb25zdW1lcjsKICAgIHZhciBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBjb25zdCBzZWN0aW9ucyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNlY3Rpb25zIik7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgdGhhdC5fc291cmNlcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICAgIHRoYXQuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gbnVsbDsKICAgICAgICAgIGxldCBsYXN0T2Zmc2V0ID0gewogICAgICAgICAgICBsaW5lOiAtMSwKICAgICAgICAgICAgY29sdW1uOiAwCiAgICAgICAgICB9OwogICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHNlY3Rpb25zLm1hcCgocykgPT4gewogICAgICAgICAgICBpZiAocy51cmwpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1cHBvcnQgZm9yIHVybCBmaWVsZCBpbiBzZWN0aW9ucyBub3QgaW1wbGVtZW50ZWQuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdXRpbC5nZXRBcmcocywgIm9mZnNldCIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRMaW5lID0gdXRpbC5nZXRBcmcob2Zmc2V0LCAibGluZSIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRDb2x1bW4gPSB1dGlsLmdldEFyZyhvZmZzZXQsICJjb2x1bW4iKTsKICAgICAgICAgICAgaWYgKG9mZnNldExpbmUgPCBsYXN0T2Zmc2V0LmxpbmUgfHwgb2Zmc2V0TGluZSA9PT0gbGFzdE9mZnNldC5saW5lICYmIG9mZnNldENvbHVtbiA8IGxhc3RPZmZzZXQuY29sdW1uKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTZWN0aW9uIG9mZnNldHMgbXVzdCBiZSBvcmRlcmVkIGFuZCBub24tb3ZlcmxhcHBpbmcuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGFzdE9mZnNldCA9IG9mZnNldDsKICAgICAgICAgICAgY29uc3QgY29ucyA9IG5ldyBTb3VyY2VNYXBDb25zdW1lcih1dGlsLmdldEFyZyhzLCAibWFwIiksIGFTb3VyY2VNYXBVUkwpOwogICAgICAgICAgICByZXR1cm4gY29ucy50aGVuKChjb25zdW1lcikgPT4gewogICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICBnZW5lcmF0ZWRPZmZzZXQ6IHsKICAgICAgICAgICAgICAgICAgLy8gVGhlIG9mZnNldCBmaWVsZHMgYXJlIDAtYmFzZWQsIGJ1dCB3ZSB1c2UgMS1iYXNlZCBpbmRpY2VzIHdoZW4KICAgICAgICAgICAgICAgICAgLy8gZW5jb2RpbmcvZGVjb2RpbmcgZnJvbSBWTFEuCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZExpbmU6IG9mZnNldExpbmUgKyAxLAogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG9mZnNldENvbHVtbiArIDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjb25zdW1lcgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkpLnRoZW4oKHMpID0+IHsKICAgICAgICAgICAgdGhhdC5fc2VjdGlvbnMgPSBzOwogICAgICAgICAgICByZXR1cm4gdGhhdDsKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIGBfX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQgYF9fb3JpZ2luYWxNYXBwaW5nc2AgYXJlIGFycmF5cyB0aGF0IGhvbGQgdGhlCiAgICAgIC8vIHBhcnNlZCBtYXBwaW5nIGNvb3JkaW5hdGVzIGZyb20gdGhlIHNvdXJjZSBtYXAncyAibWFwcGluZ3MiIGF0dHJpYnV0ZS4gVGhleQogICAgICAvLyBhcmUgbGF6aWx5IGluc3RhbnRpYXRlZCwgYWNjZXNzZWQgdmlhIHRoZSBgX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgLy8gYF9vcmlnaW5hbE1hcHBpbmdzYCBnZXR0ZXJzIHJlc3BlY3RpdmVseSwgYW5kIHdlIG9ubHkgcGFyc2UgdGhlIG1hcHBpbmdzCiAgICAgIC8vIGFuZCBjcmVhdGUgdGhlc2UgYXJyYXlzIG9uY2UgcXVlcmllZCBmb3IgYSBzb3VyY2UgbG9jYXRpb24uIFdlIGp1bXAgdGhyb3VnaAogICAgICAvLyB0aGVzZSBob29wcyBiZWNhdXNlIHRoZXJlIGNhbiBiZSBtYW55IHRob3VzYW5kcyBvZiBtYXBwaW5ncywgYW5kIHBhcnNpbmcKICAgICAgLy8gdGhlbSBpcyBleHBlbnNpdmUsIHNvIHdlIG9ubHkgd2FudCB0byBkbyBpdCBpZiB3ZSBtdXN0LgogICAgICAvLwogICAgICAvLyBFYWNoIG9iamVjdCBpbiB0aGUgYXJyYXlzIGlzIG9mIHRoZSBmb3JtOgogICAgICAvLwogICAgICAvLyAgICAgewogICAgICAvLyAgICAgICBnZW5lcmF0ZWRMaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBnZW5lcmF0ZWRDb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgc291cmNlOiBUaGUgcGF0aCB0byB0aGUgb3JpZ2luYWwgc291cmNlIGZpbGUgdGhhdCBnZW5lcmF0ZWQgdGhpcwogICAgICAvLyAgICAgICAgICAgICAgIGNodW5rIG9mIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsTGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGhhdAogICAgICAvLyAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsQ29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlIHRoYXQKICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG5hbWU6IFRoZSBuYW1lIG9mIHRoZSBvcmlnaW5hbCBzeW1ib2wgd2hpY2ggZ2VuZXJhdGVkIHRoaXMgY2h1bmsgb2YKICAgICAgLy8gICAgICAgICAgICAgY29kZS4KICAgICAgLy8gICAgIH0KICAgICAgLy8KICAgICAgLy8gQWxsIHByb3BlcnRpZXMgZXhjZXB0IGZvciBgZ2VuZXJhdGVkTGluZWAgYW5kIGBnZW5lcmF0ZWRDb2x1bW5gIGNhbiBiZQogICAgICAvLyBgbnVsbGAuCiAgICAgIC8vCiAgICAgIC8vIGBfZ2VuZXJhdGVkTWFwcGluZ3NgIGlzIG9yZGVyZWQgYnkgdGhlIGdlbmVyYXRlZCBwb3NpdGlvbnMuCiAgICAgIC8vCiAgICAgIC8vIGBfb3JpZ2luYWxNYXBwaW5nc2AgaXMgb3JkZXJlZCBieSB0aGUgb3JpZ2luYWwgcG9zaXRpb25zLgogICAgICBnZXQgX2dlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGlmICghdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzKSB7CiAgICAgICAgICB0aGlzLl9zb3J0R2VuZXJhdGVkTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nczsKICAgICAgfQogICAgICBnZXQgX29yaWdpbmFsTWFwcGluZ3MoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5ncykgewogICAgICAgICAgdGhpcy5fc29ydE9yaWdpbmFsTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzOwogICAgICB9CiAgICAgIGdldCBfZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCgpIHsKICAgICAgICBpZiAoIXRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgIH0KICAgICAgZ2V0IF9vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgfQogICAgICBfc29ydEdlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdGhpcy5fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQpOwogICAgICAgIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICB9CiAgICAgIF9zb3J0T3JpZ2luYWxNYXBwaW5ncygpIHsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMpOwogICAgICAgIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzID0gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFRoZSBsaXN0IG9mIG9yaWdpbmFsIHNvdXJjZXMuCiAgICAgICAqLwogICAgICBnZXQgc291cmNlcygpIHsKICAgICAgICBjb25zdCBzb3VyY2VzID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIHNvdXJjZXMucHVzaCh0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzW2pdKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNvdXJjZXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSwgbGluZSwgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIGdlbmVyYXRlZAogICAgICAgKiBzb3VyY2UncyBsaW5lIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3QKICAgICAgICogd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb3IgbnVsbC4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBuYW1lOiBUaGUgb3JpZ2luYWwgaWRlbnRpZmllciwgb3IgbnVsbC4KICAgICAgICovCiAgICAgIG9yaWdpbmFsUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iKQogICAgICAgIH07CiAgICAgICAgY29uc3Qgc2VjdGlvbkluZGV4ID0gYmluYXJ5U2VhcmNoLnNlYXJjaCgKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX3NlY3Rpb25zLAogICAgICAgICAgZnVuY3Rpb24oYU5lZWRsZSwgc2VjdGlvbjIpIHsKICAgICAgICAgICAgY29uc3QgY21wID0gYU5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gc2VjdGlvbjIuZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmU7CiAgICAgICAgICAgIGlmIChjbXApIHsKICAgICAgICAgICAgICByZXR1cm4gY21wOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBhTmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIHNlY3Rpb24yLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbc2VjdGlvbkluZGV4XTsKICAgICAgICBpZiAoIXNlY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZTogbnVsbCwKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBuYW1lOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2VjdGlvbi5jb25zdW1lci5vcmlnaW5hbFBvc2l0aW9uRm9yKHsKICAgICAgICAgIGxpbmU6IG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgIGNvbHVtbjogbmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBuZWVkbGUuZ2VuZXJhdGVkTGluZSA/IHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbiAtIDEgOiAwKSwKICAgICAgICAgIGJpYXM6IGFBcmdzLmJpYXMKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIHRydWUgaWYgd2UgaGF2ZSB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGV2ZXJ5IHNvdXJjZSBpbiB0aGUgc291cmNlCiAgICAgICAqIG1hcCwgZmFsc2Ugb3RoZXJ3aXNlLgogICAgICAgKi8KICAgICAgaGFzQ29udGVudHNPZkFsbFNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NlY3Rpb25zLmV2ZXJ5KGZ1bmN0aW9uKHMpIHsKICAgICAgICAgIHJldHVybiBzLmNvbnN1bWVyLmhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tpXTsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBzZWN0aW9uLmNvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgdHJ1ZSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICByZXR1cm4gY29udGVudDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVNvdXJjZSArICciIGlzIG5vdCBpbiB0aGUgU291cmNlTWFwLicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgb3JpZ2luYWwgc291cmNlLAogICAgICAgKiBsaW5lLCBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0IHdpdGgKICAgICAgICogdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgZmlsZW5hbWUgb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLgogICAgICAgKiAgICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICovCiAgICAgIGdlbmVyYXRlZFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgaWYgKHNlY3Rpb24uY29uc3VtZXIuX2ZpbmRTb3VyY2VJbmRleCh1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpKSA9PT0gLTEpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBnZW5lcmF0ZWRQb3NpdGlvbiA9IHNlY3Rpb24uY29uc3VtZXIuZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpOwogICAgICAgICAgaWYgKGdlbmVyYXRlZFBvc2l0aW9uKSB7CiAgICAgICAgICAgIGNvbnN0IHJldCA9IHsKICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgICAgICBjb2x1bW46IGdlbmVyYXRlZFBvc2l0aW9uLmNvbHVtbiArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHJldHVybiByZXQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkTWFwcGluZ3MgPSB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IFtdOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTWFwcGluZ3MgPSB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgY29uc3Qgc2VjdGlvbk1hcHBpbmdzID0gW107CiAgICAgICAgICBzZWN0aW9uLmNvbnN1bWVyLmVhY2hNYXBwaW5nKChtKSA9PiBzZWN0aW9uTWFwcGluZ3MucHVzaChtKSk7CiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNlY3Rpb25NYXBwaW5ncy5sZW5ndGg7IGorKykgewogICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gc2VjdGlvbk1hcHBpbmdzW2pdOwogICAgICAgICAgICBsZXQgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNlY3Rpb24uY29uc3VtZXIuc291cmNlUm9vdCwgbnVsbCwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgdGhpcy5fc291cmNlcy5hZGQoc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdGhpcy5fc291cmNlcy5pbmRleE9mKHNvdXJjZSk7CiAgICAgICAgICAgIGxldCBuYW1lID0gbnVsbDsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSkgewogICAgICAgICAgICAgIHRoaXMuX25hbWVzLmFkZChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5pbmRleE9mKG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgYWRqdXN0ZWRNYXBwaW5nID0gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBtYXBwaW5nLmdlbmVyYXRlZExpbmUgKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSAtIDEpLAogICAgICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSA9PT0gbWFwcGluZy5nZW5lcmF0ZWRMaW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZTogbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4sCiAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICB9OwogICAgICAgICAgICBnZW5lcmF0ZWRNYXBwaW5ncy5wdXNoKGFkanVzdGVkTWFwcGluZyk7CiAgICAgICAgICAgIGlmICh0eXBlb2YgYWRqdXN0ZWRNYXBwaW5nLm9yaWdpbmFsTGluZSA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICBvcmlnaW5hbE1hcHBpbmdzLnB1c2goYWRqdXN0ZWRNYXBwaW5nKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICBjb25zdCBjb250ZXh0ID0gYUNvbnRleHQgfHwgbnVsbDsKICAgICAgICBjb25zdCBvcmRlciA9IGFPcmRlciB8fCBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI7CiAgICAgICAgbGV0IG1hcHBpbmdzOwogICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOgogICAgICAgICAgICBtYXBwaW5ncyA9IHRoaXMuX2dlbmVyYXRlZE1hcHBpbmdzOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVI6CiAgICAgICAgICAgIG1hcHBpbmdzID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nczsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gb3JkZXIgb2YgaXRlcmF0aW9uLiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5zb3VyY2VSb290OwogICAgICAgIG1hcHBpbmdzLm1hcChmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBsZXQgc291cmNlID0gbnVsbDsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIHNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgZ2VuZXJhdGVkTGluZTogbWFwcGluZy5nZW5lcmF0ZWRMaW5lLAogICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICBvcmlnaW5hbExpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICBvcmlnaW5hbENvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgbmFtZTogbWFwcGluZy5uYW1lID09PSBudWxsID8gbnVsbCA6IHRoaXMuX25hbWVzLmF0KG1hcHBpbmcubmFtZSkKICAgICAgICAgIH07CiAgICAgICAgfSwgdGhpcykuZm9yRWFjaChhQ2FsbGJhY2ssIGNvbnRleHQpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBGaW5kIHRoZSBtYXBwaW5nIHRoYXQgYmVzdCBtYXRjaGVzIHRoZSBoeXBvdGhldGljYWwgIm5lZWRsZSIgbWFwcGluZyB0aGF0CiAgICAgICAqIHdlIGFyZSBzZWFyY2hpbmcgZm9yIGluIHRoZSBnaXZlbiAiaGF5c3RhY2siIG9mIG1hcHBpbmdzLgogICAgICAgKi8KICAgICAgX2ZpbmRNYXBwaW5nKGFOZWVkbGUsIGFNYXBwaW5ncywgYUxpbmVOYW1lLCBhQ29sdW1uTmFtZSwgYUNvbXBhcmF0b3IsIGFCaWFzKSB7CiAgICAgICAgaWYgKGFOZWVkbGVbYUxpbmVOYW1lXSA8PSAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJMaW5lIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEsIGdvdCAiICsgYU5lZWRsZVthTGluZU5hbWVdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGFOZWVkbGVbYUNvbHVtbk5hbWVdIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ29sdW1uIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDAsIGdvdCAiICsgYU5lZWRsZVthQ29sdW1uTmFtZV0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYmluYXJ5U2VhcmNoLnNlYXJjaChhTmVlZGxlLCBhTWFwcGluZ3MsIGFDb21wYXJhdG9yLCBhQmlhcyk7CiAgICAgIH0KICAgICAgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yKGFBcmdzKSB7CiAgICAgICAgY29uc3QgbGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIHNvdXJjZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKSwKICAgICAgICAgIG9yaWdpbmFsTGluZTogbGluZSwKICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIsIDApCiAgICAgICAgfTsKICAgICAgICBuZWVkbGUuc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KG5lZWRsZS5zb3VyY2UpOwogICAgICAgIGlmIChuZWVkbGUuc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBbXTsKICAgICAgICBsZXQgaW5kZXggPSB0aGlzLl9maW5kTWFwcGluZygKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX29yaWdpbmFsTWFwcGluZ3MsCiAgICAgICAgICAib3JpZ2luYWxMaW5lIiwKICAgICAgICAgICJvcmlnaW5hbENvbHVtbiIsCiAgICAgICAgICB1dGlsLmNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zLAogICAgICAgICAgYmluYXJ5U2VhcmNoLkxFQVNUX1VQUEVSX0JPVU5ECiAgICAgICAgKTsKICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgbGV0IG1hcHBpbmcgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzW2luZGV4XTsKICAgICAgICAgIGlmIChhQXJncy5jb2x1bW4gPT09IHZvaWQgMCkgewogICAgICAgICAgICBjb25zdCBvcmlnaW5hbExpbmUgPSBtYXBwaW5nLm9yaWdpbmFsTGluZTsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IG9yaWdpbmFsTGluZSkgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IGxpbmUgJiYgbWFwcGluZy5vcmlnaW5hbENvbHVtbiA9PSBvcmlnaW5hbENvbHVtbikgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1hcHBpbmdzOwogICAgICB9CiAgICAgIGRlc3Ryb3koKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgdGhpcy5fc2VjdGlvbnNbaV0uY29uc3VtZXIuZGVzdHJveSgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkluZGV4ZWRTb3VyY2VNYXBDb25zdW1lciA9IEluZGV4ZWRTb3VyY2VNYXBDb25zdW1lcjsKICAgIGZ1bmN0aW9uIF9mYWN0b3J5KGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgIGlmICh0eXBlb2YgYVNvdXJjZU1hcCA9PT0gInN0cmluZyIpIHsKICAgICAgICBzb3VyY2VNYXAgPSB1dGlsLnBhcnNlU291cmNlTWFwSW5wdXQoYVNvdXJjZU1hcCk7CiAgICAgIH0KICAgICAgY29uc3QgY29uc3VtZXIgPSBzb3VyY2VNYXAuc2VjdGlvbnMgIT0gbnVsbCA/IG5ldyBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIoc291cmNlTWFwLCBhU291cmNlTWFwVVJMKSA6IG5ldyBCYXNpY1NvdXJjZU1hcENvbnN1bWVyKHNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoY29uc3VtZXIpOwogICAgfQogICAgZnVuY3Rpb24gX2ZhY3RvcnlCU00oYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICByZXR1cm4gQmFzaWNTb3VyY2VNYXBDb25zdW1lci5mcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMKdmFyIHJlcXVpcmVfc291cmNlX25vZGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1ub2RlLmpzIihleHBvcnRzMikgewogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBSRUdFWF9ORVdMSU5FID0gLyhccj9cbikvOwogICAgdmFyIE5FV0xJTkVfQ09ERSA9IDEwOwogICAgdmFyIGlzU291cmNlTm9kZSA9ICIkJCRpc1NvdXJjZU5vZGUkJCQiOwogICAgdmFyIFNvdXJjZU5vZGUgPSBjbGFzcyBfU291cmNlTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGFMaW5lLCBhQ29sdW1uLCBhU291cmNlLCBhQ2h1bmtzLCBhTmFtZSkgewogICAgICAgIHRoaXMuY2hpbGRyZW4gPSBbXTsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzID0ge307CiAgICAgICAgdGhpcy5saW5lID0gYUxpbmUgPT0gbnVsbCA/IG51bGwgOiBhTGluZTsKICAgICAgICB0aGlzLmNvbHVtbiA9IGFDb2x1bW4gPT0gbnVsbCA/IG51bGwgOiBhQ29sdW1uOwogICAgICAgIHRoaXMuc291cmNlID0gYVNvdXJjZSA9PSBudWxsID8gbnVsbCA6IGFTb3VyY2U7CiAgICAgICAgdGhpcy5uYW1lID0gYU5hbWUgPT0gbnVsbCA/IG51bGwgOiBhTmFtZTsKICAgICAgICB0aGlzW2lzU291cmNlTm9kZV0gPSB0cnVlOwogICAgICAgIGlmIChhQ2h1bmtzICE9IG51bGwpIHRoaXMuYWRkKGFDaHVua3MpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDcmVhdGVzIGEgU291cmNlTm9kZSBmcm9tIGdlbmVyYXRlZCBjb2RlIGFuZCBhIFNvdXJjZU1hcENvbnN1bWVyLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUdlbmVyYXRlZENvZGUgVGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwQ29uc3VtZXIgVGhlIFNvdXJjZU1hcCBmb3IgdGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhUmVsYXRpdmVQYXRoIE9wdGlvbmFsLiBUaGUgcGF0aCB0aGF0IHJlbGF0aXZlIHNvdXJjZXMgaW4gdGhlCiAgICAgICAqICAgICAgICBTb3VyY2VNYXBDb25zdW1lciBzaG91bGQgYmUgcmVsYXRpdmUgdG8uCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVN0cmluZ1dpdGhTb3VyY2VNYXAoYUdlbmVyYXRlZENvZGUsIGFTb3VyY2VNYXBDb25zdW1lciwgYVJlbGF0aXZlUGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgX1NvdXJjZU5vZGUoKTsKICAgICAgICBjb25zdCByZW1haW5pbmdMaW5lcyA9IGFHZW5lcmF0ZWRDb2RlLnNwbGl0KFJFR0VYX05FV0xJTkUpOwogICAgICAgIGxldCByZW1haW5pbmdMaW5lc0luZGV4ID0gMDsKICAgICAgICBjb25zdCBzaGlmdE5leHRMaW5lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjb25zdCBsaW5lQ29udGVudHMgPSBnZXROZXh0TGluZSgpOwogICAgICAgICAgY29uc3QgbmV3TGluZSA9IGdldE5leHRMaW5lKCkgfHwgIiI7CiAgICAgICAgICByZXR1cm4gbGluZUNvbnRlbnRzICsgbmV3TGluZTsKICAgICAgICAgIGZ1bmN0aW9uIGdldE5leHRMaW5lKCkgewogICAgICAgICAgICByZXR1cm4gcmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCA/IHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXgrK10gOiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBsZXQgbGFzdEdlbmVyYXRlZExpbmUgPSAxLCBsYXN0R2VuZXJhdGVkQ29sdW1uID0gMDsKICAgICAgICBsZXQgbGFzdE1hcHBpbmcgPSBudWxsOwogICAgICAgIGxldCBuZXh0TGluZTsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuZWFjaE1hcHBpbmcoZnVuY3Rpb24obWFwcGluZykgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0R2VuZXJhdGVkTGluZSA8IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgICAgICBsYXN0R2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgICAgY29uc3QgY29kZSA9IG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiAtIGxhc3RHZW5lcmF0ZWRDb2x1bW4pOwogICAgICAgICAgICAgIHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXhdID0gbmV4dExpbmUuc3Vic3RyKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gbGFzdEdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgY29kZSk7CiAgICAgICAgICAgICAgbGFzdE1hcHBpbmcgPSBtYXBwaW5nOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGxhc3RHZW5lcmF0ZWRMaW5lIDwgbWFwcGluZy5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgIG5vZGUuYWRkKHNoaWZ0TmV4dExpbmUoKSk7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRMaW5lKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobGFzdEdlbmVyYXRlZENvbHVtbiA8IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKSB7CiAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgIG5vZGUuYWRkKG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbikpOwogICAgICAgICAgICByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSA9IG5leHRMaW5lLnN1YnN0cihtYXBwaW5nLmdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNYXBwaW5nID0gbWFwcGluZzsKICAgICAgICB9LCB0aGlzKTsKICAgICAgICBpZiAocmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCkgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nKSB7CiAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgIH0KICAgICAgICAgIG5vZGUuYWRkKHJlbWFpbmluZ0xpbmVzLnNwbGljZShyZW1haW5pbmdMaW5lc0luZGV4KS5qb2luKCIiKSk7CiAgICAgICAgfQogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgY29uc3QgY29udGVudCA9IGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VDb250ZW50Rm9yKHNvdXJjZUZpbGUpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgICBpZiAoYVJlbGF0aXZlUGF0aCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc291cmNlRmlsZSA9IHV0aWwuam9pbihhUmVsYXRpdmVQYXRoLCBzb3VyY2VGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBub2RlLnNldFNvdXJjZUNvbnRlbnQoc291cmNlRmlsZSwgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgICAgZnVuY3Rpb24gYWRkTWFwcGluZ1dpdGhDb2RlKG1hcHBpbmcsIGNvZGUpIHsKICAgICAgICAgIGlmIChtYXBwaW5nID09PSBudWxsIHx8IG1hcHBpbmcuc291cmNlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgbm9kZS5hZGQoY29kZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBzb3VyY2UgPSBhUmVsYXRpdmVQYXRoID8gdXRpbC5qb2luKGFSZWxhdGl2ZVBhdGgsIG1hcHBpbmcuc291cmNlKSA6IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBub2RlLmFkZChuZXcgX1NvdXJjZU5vZGUoCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgY29kZSwKICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUKICAgICAgICAgICAgKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBjaHVuayBvZiBnZW5lcmF0ZWQgSlMgdG8gdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgYWRkKGFDaHVuaykgewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFDaHVuaykpIHsKICAgICAgICAgIGFDaHVuay5mb3JFYWNoKGZ1bmN0aW9uKGNodW5rKSB7CiAgICAgICAgICAgIHRoaXMuYWRkKGNodW5rKTsKICAgICAgICAgIH0sIHRoaXMpOwogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIGlmIChhQ2h1bmspIHsKICAgICAgICAgICAgdGhpcy5jaGlsZHJlbi5wdXNoKGFDaHVuayk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJFeHBlY3RlZCBhIFNvdXJjZU5vZGUsIHN0cmluZywgb3IgYW4gYXJyYXkgb2YgU291cmNlTm9kZXMgYW5kIHN0cmluZ3MuIEdvdCAiICsgYUNodW5rCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgY2h1bmsgb2YgZ2VuZXJhdGVkIEpTIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgcHJlcGVuZChhQ2h1bmspIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhQ2h1bmspKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gYUNodW5rLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgIHRoaXMucHJlcGVuZChhQ2h1bmtbaV0pOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4udW5zaGlmdChhQ2h1bmspOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAiRXhwZWN0ZWQgYSBTb3VyY2VOb2RlLCBzdHJpbmcsIG9yIGFuIGFycmF5IG9mIFNvdXJjZU5vZGVzIGFuZCBzdHJpbmdzLiBHb3QgIiArIGFDaHVuawogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdhbGsgb3ZlciB0aGUgdHJlZSBvZiBKUyBzbmlwcGV0cyBpbiB0aGlzIG5vZGUgYW5kIGl0cyBjaGlsZHJlbi4gVGhlCiAgICAgICAqIHdhbGtpbmcgZnVuY3Rpb24gaXMgY2FsbGVkIG9uY2UgZm9yIGVhY2ggc25pcHBldCBvZiBKUyBhbmQgaXMgcGFzc2VkIHRoYXQKICAgICAgICogc25pcHBldCBhbmQgdGhlIGl0cyBvcmlnaW5hbCBhc3NvY2lhdGVkIHNvdXJjZSdzIGxpbmUvY29sdW1uIGxvY2F0aW9uLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUZuIFRoZSB0cmF2ZXJzYWwgZnVuY3Rpb24uCiAgICAgICAqLwogICAgICB3YWxrKGFGbikgewogICAgICAgIGxldCBjaHVuazsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgY2h1bmsgPSB0aGlzLmNoaWxkcmVuW2ldOwogICAgICAgICAgaWYgKGNodW5rW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgICAgY2h1bmsud2FsayhhRm4pOwogICAgICAgICAgfSBlbHNlIGlmIChjaHVuayAhPT0gIiIpIHsKICAgICAgICAgICAgYUZuKGNodW5rLCB7CiAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB0aGlzLmxpbmUsCiAgICAgICAgICAgICAgY29sdW1uOiB0aGlzLmNvbHVtbiwKICAgICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaWtlIGBTdHJpbmcucHJvdG90eXBlLmpvaW5gIGV4Y2VwdCBmb3IgU291cmNlTm9kZXMuIEluc2VydHMgYGFTdHJgIGJldHdlZW4KICAgICAgICogZWFjaCBvZiBgdGhpcy5jaGlsZHJlbmAuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhU2VwIFRoZSBzZXBhcmF0b3IuCiAgICAgICAqLwogICAgICBqb2luKGFTZXApIHsKICAgICAgICBsZXQgbmV3Q2hpbGRyZW47CiAgICAgICAgbGV0IGk7CiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7CiAgICAgICAgaWYgKGxlbiA+IDApIHsKICAgICAgICAgIG5ld0NoaWxkcmVuID0gW107CiAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuIC0gMTsgaSsrKSB7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2godGhpcy5jaGlsZHJlbltpXSk7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2goYVNlcCk7CiAgICAgICAgICB9CiAgICAgICAgICBuZXdDaGlsZHJlbi5wdXNoKHRoaXMuY2hpbGRyZW5baV0pOwogICAgICAgICAgdGhpcy5jaGlsZHJlbiA9IG5ld0NoaWxkcmVuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ2FsbCBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2Ugb24gdGhlIHZlcnkgcmlnaHQtbW9zdCBzb3VyY2Ugc25pcHBldC4gVXNlZnVsCiAgICAgICAqIGZvciB0cmltbWluZyB3aGl0ZXNwYWNlIGZyb20gdGhlIGVuZCBvZiBhIHNvdXJjZSBub2RlLCBldGMuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhUGF0dGVybiBUaGUgcGF0dGVybiB0byByZXBsYWNlLgogICAgICAgKiBAcGFyYW0gYVJlcGxhY2VtZW50IFRoZSB0aGluZyB0byByZXBsYWNlIHRoZSBwYXR0ZXJuIHdpdGguCiAgICAgICAqLwogICAgICByZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IGxhc3RDaGlsZCA9IHRoaXMuY2hpbGRyZW5bdGhpcy5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICBpZiAobGFzdENoaWxkW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgIGxhc3RDaGlsZC5yZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgbGFzdENoaWxkID09PSAic3RyaW5nIikgewogICAgICAgICAgdGhpcy5jaGlsZHJlblt0aGlzLmNoaWxkcmVuLmxlbmd0aCAtIDFdID0gbGFzdENoaWxkLnJlcGxhY2UoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4ucHVzaCgiIi5yZXBsYWNlKGFQYXR0ZXJuLCBhUmVwbGFjZW1lbnQpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNldCB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGEgc291cmNlIGZpbGUuIFRoaXMgd2lsbCBiZSBhZGRlZCB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yCiAgICAgICAqIGluIHRoZSBzb3VyY2VzQ29udGVudCBmaWVsZC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTb3VyY2VGaWxlIFRoZSBmaWxlbmFtZSBvZiB0aGUgc291cmNlIGZpbGUKICAgICAgICogQHBhcmFtIGFTb3VyY2VDb250ZW50IFRoZSBjb250ZW50IG9mIHRoZSBzb3VyY2UgZmlsZQogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoYVNvdXJjZUZpbGUpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXYWxrIG92ZXIgdGhlIHRyZWUgb2YgU291cmNlTm9kZXMuIFRoZSB3YWxraW5nIGZ1bmN0aW9uIGlzIGNhbGxlZCBmb3IgZWFjaAogICAgICAgKiBzb3VyY2UgZmlsZSBjb250ZW50IGFuZCBpcyBwYXNzZWQgdGhlIGZpbGVuYW1lIGFuZCBzb3VyY2UgY29udGVudC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFGbiBUaGUgdHJhdmVyc2FsIGZ1bmN0aW9uLgogICAgICAgKi8KICAgICAgd2Fsa1NvdXJjZUNvbnRlbnRzKGFGbikgewogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBpZiAodGhpcy5jaGlsZHJlbltpXVtpc1NvdXJjZU5vZGVdKSB7CiAgICAgICAgICAgIHRoaXMuY2hpbGRyZW5baV0ud2Fsa1NvdXJjZUNvbnRlbnRzKGFGbik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNvdXJjZXMgPSBPYmplY3Qua2V5cyh0aGlzLnNvdXJjZUNvbnRlbnRzKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gc291cmNlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgYUZuKHV0aWwuZnJvbVNldFN0cmluZyhzb3VyY2VzW2ldKSwgdGhpcy5zb3VyY2VDb250ZW50c1tzb3VyY2VzW2ldXSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGlzIHNvdXJjZSBub2RlLiBXYWxrcyBvdmVyIHRoZSB0cmVlCiAgICAgICAqIGFuZCBjb25jYXRlbmF0ZXMgYWxsIHRoZSB2YXJpb3VzIHNuaXBwZXRzIHRvZ2V0aGVyIHRvIG9uZSBzdHJpbmcuCiAgICAgICAqLwogICAgICB0b1N0cmluZygpIHsKICAgICAgICBsZXQgc3RyMiA9ICIiOwogICAgICAgIHRoaXMud2FsayhmdW5jdGlvbihjaHVuaykgewogICAgICAgICAgc3RyMiArPSBjaHVuazsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc291cmNlIG5vZGUgYWxvbmcgd2l0aCBhIHNvdXJjZQogICAgICAgKiBtYXAuCiAgICAgICAqLwogICAgICB0b1N0cmluZ1dpdGhTb3VyY2VNYXAoYUFyZ3MpIHsKICAgICAgICBjb25zdCBnZW5lcmF0ZWQgPSB7CiAgICAgICAgICBjb2RlOiAiIiwKICAgICAgICAgIGxpbmU6IDEsCiAgICAgICAgICBjb2x1bW46IDAKICAgICAgICB9OwogICAgICAgIGNvbnN0IG1hcDIgPSBuZXcgU291cmNlTWFwR2VuZXJhdG9yKGFBcmdzKTsKICAgICAgICBsZXQgc291cmNlTWFwcGluZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxTb3VyY2UgPSBudWxsOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxMaW5lID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsTmFtZSA9IG51bGw7CiAgICAgICAgdGhpcy53YWxrKGZ1bmN0aW9uKGNodW5rLCBvcmlnaW5hbCkgewogICAgICAgICAgZ2VuZXJhdGVkLmNvZGUgKz0gY2h1bms7CiAgICAgICAgICBpZiAob3JpZ2luYWwuc291cmNlICE9PSBudWxsICYmIG9yaWdpbmFsLmxpbmUgIT09IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0T3JpZ2luYWxTb3VyY2UgIT09IG9yaWdpbmFsLnNvdXJjZSB8fCBsYXN0T3JpZ2luYWxMaW5lICE9PSBvcmlnaW5hbC5saW5lIHx8IGxhc3RPcmlnaW5hbENvbHVtbiAhPT0gb3JpZ2luYWwuY29sdW1uIHx8IGxhc3RPcmlnaW5hbE5hbWUgIT09IG9yaWdpbmFsLm5hbWUpIHsKICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICBvcmlnaW5hbDogewogICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG9yaWdpbmFsLnNvdXJjZTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSB0cnVlOwogICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgIG1hcDIuYWRkTWFwcGluZyh7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkOiB7CiAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIGZvciAobGV0IGlkeCA9IDAsIGxlbmd0aCA9IGNodW5rLmxlbmd0aDsgaWR4IDwgbGVuZ3RoOyBpZHgrKykgewogICAgICAgICAgICBpZiAoY2h1bmsuY2hhckNvZGVBdChpZHgpID09PSBORVdMSU5FX0NPREUpIHsKICAgICAgICAgICAgICBnZW5lcmF0ZWQubGluZSsrOwogICAgICAgICAgICAgIGdlbmVyYXRlZC5jb2x1bW4gPSAwOwogICAgICAgICAgICAgIGlmIChpZHggKyAxID09PSBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgICAgICBzb3VyY2VNYXBwaW5nQWN0aXZlID0gZmFsc2U7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgICBzb3VyY2U6IG9yaWdpbmFsLnNvdXJjZSwKICAgICAgICAgICAgICAgICAgb3JpZ2luYWw6IHsKICAgICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogb3JpZ2luYWwuY29sdW1uCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICBuYW1lOiBvcmlnaW5hbC5uYW1lCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkLmNvbHVtbisrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy53YWxrU291cmNlQ29udGVudHMoZnVuY3Rpb24oc291cmNlRmlsZSwgc291cmNlQ29udGVudCkgewogICAgICAgICAgbWFwMi5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGNvZGU6IGdlbmVyYXRlZC5jb2RlLCBtYXA6IG1hcDIgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSBTb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9zb3VyY2UtbWFwLmpzCnZhciByZXF1aXJlX3NvdXJjZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvc291cmNlLW1hcC5qcyIoZXhwb3J0czIpIHsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lcigpLlNvdXJjZU1hcENvbnN1bWVyOwogICAgZXhwb3J0czIuU291cmNlTm9kZSA9IHJlcXVpcmVfc291cmNlX25vZGUoKS5Tb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3RlbXBsYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50ZW1wbGF0ZVBhcnNlciA9IHRlbXBsYXRlUGFyc2VyOwogICAgZXhwb3J0czIudGVtcGxhdGUgPSB0ZW1wbGF0ZTM7CiAgICB2YXIgc291cmNlX21hcF8xID0gcmVxdWlyZV9zb3VyY2VfbWFwKCk7CiAgICB2YXIga0ludGVycG9sYXRlUmUgPSAvPCU9KFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0NvbW1lbnRSZSA9IC88JSMoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrRXNjYXBlUmUgPSAvPCUtKFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0V2YWx1YXRlUmUgPSAvPCUoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrSHRtbEVzY2FwZXMgPSB7CiAgICAgICImIjogIiZhbXA7IiwKICAgICAgIjwiOiAiJmx0OyIsCiAgICAgICI+IjogIiZndDsiLAogICAgICAnIic6ICImcXVvdDsiLAogICAgICAiJyI6ICImIzM5OyIsCiAgICAgICJgIjogIiYjOTY7IgogICAgfTsKICAgIHZhciByZVVuZXNjYXBlZEh0bWwgPSBuZXcgUmVnRXhwKGBbJHtPYmplY3Qua2V5cyhrSHRtbEVzY2FwZXMpLmpvaW4oIiIpfV1gLCAiZyIpOwogICAgZnVuY3Rpb24gX3Bvc2l0aW9uRm9yKGNvbnRlbnQsIG9mZnNldCkgewogICAgICBsZXQgbGluZSA9IDE7CiAgICAgIGxldCBjb2x1bW4gPSAwOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9mZnNldCAtIDE7IGkrKykgewogICAgICAgIGlmIChjb250ZW50W2ldID09ICJcbiIpIHsKICAgICAgICAgIGxpbmUrKzsKICAgICAgICAgIGNvbHVtbiA9IDA7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbHVtbisrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGxpbmUsCiAgICAgICAgY29sdW1uCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZVBhcnNlcihzb3VyY2VUZXh0LCBmaWxlTmFtZSkgewogICAgICBjb25zdCBjaGlsZHJlbiA9IFtdOwogICAgICBjb25zdCByZUV4cHJlc3Npb25zID0gW2tFc2NhcGVSZSwga0NvbW1lbnRSZSwga0ludGVycG9sYXRlUmUsIGtFdmFsdWF0ZVJlXTsKICAgICAgY29uc3QgcmVEZWxpbWl0ZXJzID0gUmVnRXhwKHJlRXhwcmVzc2lvbnMubWFwKCh4KSA9PiB4LnNvdXJjZSkuam9pbigifCIpICsgInwkIiwgImciKTsKICAgICAgY29uc3QgcGFyc2VkID0gc291cmNlVGV4dC5zcGxpdChyZURlbGltaXRlcnMpOwogICAgICBsZXQgb2Zmc2V0ID0gMDsKICAgICAgbGV0IHN0YXJ0ID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCk7CiAgICAgIGxldCBlbmQ7CiAgICAgIGNvbnN0IGluY3JlbWVudCA9IHJlRXhwcmVzc2lvbnMubGVuZ3RoICsgMTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJzZWQubGVuZ3RoOyBpICs9IGluY3JlbWVudCkgewogICAgICAgIGNvbnN0IFtjb250ZW50LCBlc2NhcGUyLCBjb21tZW50LCBpbnRlcnBvbGF0ZSwgZXZhbHVhdGVdID0gcGFyc2VkLnNsaWNlKGksIGkgKyBpbmNyZW1lbnQpOwogICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29udGVudC5sZW5ndGgpOwogICAgICAgICAgb2Zmc2V0ICs9IGNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJjb250ZW50IiwgY29udGVudCwgc3RhcnQsIGVuZCB9KTsKICAgICAgICAgIHN0YXJ0ID0gZW5kOwogICAgICAgIH0KICAgICAgICBpZiAoZXNjYXBlMikgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGVzY2FwZTIubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gZXNjYXBlMi5sZW5ndGggKyA1OwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJlc2NhcGUiLCBleHByZXNzaW9uOiBlc2NhcGUyLCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChjb21tZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29tbWVudC5sZW5ndGggKyA1KTsKICAgICAgICAgIG9mZnNldCArPSBjb21tZW50Lmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImNvbW1lbnQiLCB0ZXh0OiBjb21tZW50LCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChpbnRlcnBvbGF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGludGVycG9sYXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGludGVycG9sYXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAga2luZDogImludGVycG9sYXRlIiwKICAgICAgICAgICAgZXhwcmVzc2lvbjogaW50ZXJwb2xhdGUsCiAgICAgICAgICAgIHN0YXJ0LAogICAgICAgICAgICBlbmQKICAgICAgICAgIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChldmFsdWF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGV2YWx1YXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGV2YWx1YXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImV2YWx1YXRlIiwgZXhwcmVzc2lvbjogZXZhbHVhdGUsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICBmaWxlTmFtZSwKICAgICAgICBjb250ZW50OiBzb3VyY2VUZXh0LAogICAgICAgIGNoaWxkcmVuCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZUZhc3QoYXN0LCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gIm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSIgOiAiIjsKICAgICAgY29uc3QgcmVIdG1sRXNjYXBlID0gcmVVbmVzY2FwZWRIdG1sLnNvdXJjZS5yZXBsYWNlKC9bJ10vZywgIlxcXFxcXCciKTsKICAgICAgcmV0dXJuIGAKICAgIHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewogICAgICBvYmogfHwgKG9iaiA9IHt9KTsKICAgICAgbGV0IF9fdDsKICAgICAgbGV0IF9fcCA9ICcnOwogICAgICBjb25zdCBfX2VzY2FwZXMgPSAke0pTT04uc3RyaW5naWZ5KGtIdG1sRXNjYXBlcyl9OwogICAgICBjb25zdCBfX2VzY2FwZXNyZSA9IG5ldyBSZWdFeHAoJyR7cmVIdG1sRXNjYXBlfScsICdnJyk7CgogICAgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7CiAgICAgICAgcmV0dXJuIHMgPyBzLnJlcGxhY2UoX19lc2NhcGVzcmUsIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gX19lc2NhcGVzW2tleV07IH0pIDogJyc7CiAgICAgIH07CiAgICAgIHdpdGggKG9iaikgewogICAgICAgICR7YXN0LmNoaWxkcmVuLm1hcCgobm9kZSkgPT4gewogICAgICAgIHN3aXRjaCAobm9kZS5raW5kKSB7CiAgICAgICAgICBjYXNlICJjb250ZW50IjoKICAgICAgICAgICAgcmV0dXJuIGBfX3AgKz0gJHtKU09OLnN0cmluZ2lmeShub2RlLmNvbnRlbnQpfTtgOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSAoKF9fdCA9ICgke25vZGUuZXhwcmVzc2lvbn0pKSA9PSBudWxsKSA/ICcnIDogX190O2A7CiAgICAgICAgICBjYXNlICJlc2NhcGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSBfX2UoJHtub2RlLmV4cHJlc3Npb259KTtgOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5leHByZXNzaW9uOwogICAgICAgIH0KICAgICAgfSkuam9pbigiXG4iKX0KICAgICAgfQoKICAgICAgcmV0dXJuIF9fcDsKICAgIH07CiAgYDsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc291cmNlVXJsID0gYXN0LmZpbGVOYW1lOwogICAgICBjb25zdCBtb2R1bGUzID0gb3B0aW9ucyAmJiBvcHRpb25zLm1vZHVsZSA/ICJtb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0iIDogIiI7CiAgICAgIGNvbnN0IHJlSHRtbEVzY2FwZSA9IHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UucmVwbGFjZSgvWyddL2csICJcXFxcXFwnIik7CiAgICAgIGNvbnN0IHByZWFtYmxlID0gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKDEsIDAsIHNvdXJjZVVybCwgIiIpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoMSwgMCwgc291cmNlVXJsLCBbCiAgICAgICAgYHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewpgLAogICAgICAgICIgIG9iaiB8fCAob2JqID0ge30pO1xuIiwKICAgICAgICAiICBsZXQgX190O1xuIiwKICAgICAgICAnICBsZXQgX19wID0gIiI7XG4nLAogICAgICAgIGAgIGNvbnN0IF9fZXNjYXBlcyA9ICR7SlNPTi5zdHJpbmdpZnkoa0h0bWxFc2NhcGVzKX07CmAsCiAgICAgICAgYCAgY29uc3QgX19lc2NhcGVzcmUgPSBuZXcgUmVnRXhwKCcke3JlSHRtbEVzY2FwZX0nLCAnZycpOwpgLAogICAgICAgIGAKYCwKICAgICAgICBgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7IGAsCiAgICAgICAgYCAgICByZXR1cm4gcyA/IHMucmVwbGFjZShfX2VzY2FwZXNyZSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiBfX2VzY2FwZXNba2V5XTsgfSkgOiAnJztgLAogICAgICAgIGAgIH07CmAsCiAgICAgICAgYCAgd2l0aCAob2JqKSB7CmAKICAgICAgXSkpOwogICAgICBjb25zdCBlbmQgPSBhc3QuY2hpbGRyZW4ubGVuZ3RoID8gYXN0LmNoaWxkcmVuW2FzdC5jaGlsZHJlbi5sZW5ndGggLSAxXS5lbmQgOiB7IGxpbmU6IDAsIGNvbHVtbjogMCB9OwogICAgICBjb25zdCBub2RlcyA9IGFzdC5jaGlsZHJlbi5yZWR1Y2UoKGNodW5rLCBub2RlKSA9PiB7CiAgICAgICAgbGV0IGNvZGUyID0gIiI7CiAgICAgICAgc3dpdGNoIChub2RlLmtpbmQpIHsKICAgICAgICAgIGNhc2UgImNvbnRlbnQiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wID0gX19wIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5jb250ZW50LnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCAiXG4gICAgKyAiICsgSlNPTi5zdHJpbmdpZnkobGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSkpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIjtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wICs9ICgoX190ID0gIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5leHByZXNzaW9uLnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCBsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKTsKICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5lbmQubGluZSwgbm9kZS5lbmQuY29sdW1uLCBzb3VyY2VVcmwsICcpID09IG51bGwgPyAiIiA6IF9fdCk7XG4nKQogICAgICAgICAgICBdOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgImVzY2FwZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgKz0gX19lKCIpLAogICAgICAgICAgICAgIC4uLm5vZGUuZXhwcmVzc2lvbi5zcGxpdCgiXG4iKS5tYXAoKGxpbmUsIGksIGFycikgPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUgKyBpLCBpID09IDAgPyBub2RlLnN0YXJ0LmNvbHVtbiA6IDAsIHNvdXJjZVVybCwgbGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiKTtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICAuLi5ub2RlLmV4cHJlc3Npb24uc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsIGxpbmUgKyAoaSA9PSBhcnIubGVuZ3RoIC0gMSA/ICIiIDogIlxuIikpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIlxuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjaHVuay5hZGQobmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSwgbm9kZS5zdGFydC5jb2x1bW4sIHNvdXJjZVVybCwgY29kZTIpKTsKICAgICAgfSwgcHJlYW1ibGUpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoZW5kLmxpbmUsIGVuZC5jb2x1bW4sIHNvdXJjZVVybCwgWyIgIH07XG4iLCAiXG4iLCAiICByZXR1cm4gX19wO1xuIiwgIn1cbiJdKSk7CiAgICAgIGNvbnN0IGNvZGUgPSBub2Rlcy50b1N0cmluZ1dpdGhTb3VyY2VNYXAoewogICAgICAgIGZpbGU6IHNvdXJjZVVybCwKICAgICAgICBzb3VyY2VSb290OiBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlUm9vdCB8fCAiLiIKICAgICAgfSk7CiAgICAgIGNvZGUubWFwLnNldFNvdXJjZUNvbnRlbnQoc291cmNlVXJsLCBhc3QuY29udGVudCk7CiAgICAgIHJldHVybiBjb2RlLmNvZGUgKyAiXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIgKyBCdWZmZXIuZnJvbShjb2RlLm1hcC50b1N0cmluZygpKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZTMoY29udGVudCwgb3B0aW9ucykgewogICAgICBjb25zdCBzb3VyY2VVcmwgPSBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlVVJMIHx8ICJlanMiOwogICAgICBjb25zdCBhc3QgPSB0ZW1wbGF0ZVBhcnNlcihjb250ZW50LCBzb3VyY2VVcmwpOwogICAgICBsZXQgc291cmNlOwogICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnNvdXJjZU1hcCkgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpOwogICAgICB9IGVsc2UgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlRmFzdChhc3QsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGNvbnN0IGZuID0gRnVuY3Rpb24oIm1vZHVsZSIsIHNvdXJjZSk7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gb3B0aW9ucy5tb2R1bGUgPT09IHRydWUgPyB7IGV4cG9ydHM6IHt9IH0gOiBvcHRpb25zLm1vZHVsZSA6IG51bGw7CiAgICAgIGNvbnN0IHJlc3VsdCA9IGZuKG1vZHVsZTMpOwogICAgICByZXN1bHQuc291cmNlID0gc291cmNlOwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzCnZhciByZXF1aXJlX3BhcnRpYWxseV9vcmRlcmVkX3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXJ0aWFsbHlPcmRlcmVkU2V0ID0gZXhwb3J0czIuQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb24gPSBleHBvcnRzMi5EZXBlbmRlbmN5Tm90Rm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJPbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBpcyBub3QgcGFydCBvZiB0aGUgc2V0LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uID0gRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIkNpcmN1bGFyIGRlcGVuZGVuY2llcyBmb3VuZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb247CiAgICB2YXIgUGFydGlhbGx5T3JkZXJlZFNldCA9IGNsYXNzIHsKICAgICAgX2l0ZW1zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2NoZWNrQ2lyY3VsYXJEZXBlbmRlbmNpZXMoaXRlbSwgZGVwcykgewogICAgICAgIGlmIChkZXBzLmhhcyhpdGVtKSkgewogICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGRlcHMuZm9yRWFjaCgoZGVwKSA9PiB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIHRoaXMuX2l0ZW1zLmdldChkZXApIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpKTsKICAgICAgfQogICAgICBjbGVhcigpIHsKICAgICAgICB0aGlzLl9pdGVtcy5jbGVhcigpOwogICAgICB9CiAgICAgIGhhcyhpdGVtKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLmhhcyhpdGVtKTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2l6ZTsKICAgICAgfQogICAgICBmb3JFYWNoKGNhbGxiYWNrZm4sIHRoaXNBcmcpIHsKICAgICAgICBmb3IgKGNvbnN0IHggb2YgdGhpcykgewogICAgICAgICAgY2FsbGJhY2tmbi5jYWxsKHRoaXNBcmcsIHgsIHgsIHRoaXMpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbiBpdGVyYWJsZSBvZiBbdix2XSBwYWlycyBmb3IgZXZlcnkgdmFsdWUgYHZgIGluIHRoZSBzZXQuCiAgICAgICAqLwogICAgICAqZW50cmllcygpIHsKICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcykgewogICAgICAgICAgeWllbGQgW2l0ZW0sIGl0ZW1dOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogRGVzcGl0ZSBpdHMgbmFtZSwgcmV0dXJucyBhbiBpdGVyYWJsZSBvZiB0aGUgdmFsdWVzIGluIHRoZSBzZXQsCiAgICAgICAqLwogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLnZhbHVlcygpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9mIHZhbHVlcyBpbiB0aGUgc2V0LgogICAgICAgKi8KICAgICAgdmFsdWVzKCkgewogICAgICAgIHJldHVybiB0aGlzW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgICBhZGQoaXRlbSwgZGVwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBzKSkgewogICAgICAgICAgZGVwcyA9IG5ldyBTZXQoZGVwcyk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoaXRlbSkpIHsKICAgICAgICAgIGNvbnN0IGl0ZW1EZXBzID0gdGhpcy5faXRlbXMuZ2V0KGl0ZW0pIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgICBsZXQgZXF1YWwgPSB0cnVlOwogICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgZGVwcykgewogICAgICAgICAgICBpZiAoIWl0ZW1EZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVxdWFsKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGl0ZW1EZXBzKSB7CiAgICAgICAgICAgICAgaWYgKCFkZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgICBlcXVhbCA9IGZhbHNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXF1YWwpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGRlcHMpIHsKICAgICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGRlcCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbigpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIGRlcHMpOwogICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtLCBuZXcgU2V0KGRlcHMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBkZWxldGUoaXRlbSkgewogICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGl0ZW0pKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2l0ZW1zLmZvckVhY2goKHZhbHVlKSA9PiB2YWx1ZS5kZWxldGUoaXRlbSkpOwogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgIH0KICAgICAgKltTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgTWFwKHRoaXMuX2l0ZW1zKTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBjb3B5LmVudHJpZXMoKSkgewogICAgICAgICAgY29weS5zZXQoa2V5LCBuZXcgU2V0KHZhbHVlKSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChjb3B5LnNpemUgPiAwKSB7CiAgICAgICAgICBjb25zdCBydW4gPSBbXTsKICAgICAgICAgIGZvciAoY29uc3QgW2l0ZW0sIGRlcHNdIG9mIGNvcHkuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChkZXBzLnNpemUgPT0gMCkgewogICAgICAgICAgICAgIHJ1bi5wdXNoKGl0ZW0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcnVuKSB7CiAgICAgICAgICAgIGNvcHkuZm9yRWFjaCgocykgPT4gcy5kZWxldGUoaXRlbSkpOwogICAgICAgICAgICBjb3B5LmRlbGV0ZShpdGVtKTsKICAgICAgICAgICAgeWllbGQgaXRlbTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChydW4ubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkgewogICAgICAgIHJldHVybiAiU2V0IjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhcnRpYWxseU9yZGVyZWRTZXQgPSBQYXJ0aWFsbHlPcmRlcmVkU2V0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanMKdmFyIHJlcXVpcmVfcHJpb3JpdHlfcXVldWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3ByaW9yaXR5LXF1ZXVlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Qcmlvcml0eVF1ZXVlID0gdm9pZCAwOwogICAgdmFyIFByaW9yaXR5UXVldWUgPSBjbGFzcyB7CiAgICAgIF9jb21wYXJhdG9yOwogICAgICBfaXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2NvbXBhcmF0b3IpIHsKICAgICAgICB0aGlzLl9jb21wYXJhdG9yID0gX2NvbXBhcmF0b3I7CiAgICAgIH0KICAgICAgY2xlYXIoKSB7CiAgICAgICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgfQogICAgICBwdXNoKGl0ZW0pIHsKICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX2l0ZW1zLmZpbmRJbmRleCgoZXhpc3RpbmcpID0+IHRoaXMuX2NvbXBhcmF0b3IoaXRlbSwgZXhpc3RpbmcpIDw9IDApOwogICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnB1c2goaXRlbSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnNwbGljZShpbmRleCwgMCwgaXRlbSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHBvcCgpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc3BsaWNlKDAsIDEpWzBdOwogICAgICB9CiAgICAgIHBlZWsoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zWzBdOwogICAgICB9CiAgICAgIGdldCBzaXplKCkgewogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5sZW5ndGg7CiAgICAgIH0KICAgICAgdG9BcnJheSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2xpY2UoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaW9yaXR5UXVldWUgPSBQcmlvcml0eVF1ZXVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGFuZy5qcwp2YXIgcmVxdWlyZV9sYW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9sYW5nLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSBpc1Byb21pc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2Uob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiB0eXBlb2Ygb2JqLnRoZW4gPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9pbmRleC5qcwp2YXIgcmVxdWlyZV91dGlsczMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIudGFncyA9IHZvaWQgMDsKICAgIHZhciB0YWdzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfbGl0ZXJhbHMoKSk7CiAgICBleHBvcnRzMi50YWdzID0gdGFnczsKICAgIHZhciBzdHJpbmdzMyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3N0cmluZ3MoKSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gc3RyaW5nczM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9vYmplY3QoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGFydGlhbGx5X29yZGVyZWRfc2V0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3ByaW9yaXR5X3F1ZXVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xhbmcoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qcwp2YXIgcmVxdWlyZV92aXNpdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52aXNpdEpzb24gPSB2aXNpdEpzb247CiAgICBleHBvcnRzMi52aXNpdEpzb25TY2hlbWEgPSB2aXNpdEpzb25TY2hlbWE7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBwb2ludGVyXzEgPSByZXF1aXJlX3BvaW50ZXIoKTsKICAgIGZ1bmN0aW9uIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiAhPT0gIm9iamVjdCIgfHwgc2NoZW1hMiA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgfHwgc2NoZW1hMi50eXBlID09ICJvYmplY3QiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgJiYgdHlwZW9mIHNjaGVtYTIucHJvcGVydGllc1trZXldID09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gc2NoZW1hMi5wcm9wZXJ0aWVzW2tleV07CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMi5hZGRpdGlvbmFsUHJvcGVydGllcyA9PSAib2JqZWN0IikgewogICAgICAgICAgcmV0dXJuIHNjaGVtYTIuYWRkaXRpb25hbFByb3BlcnRpZXM7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiIHx8IHNjaGVtYTIudHlwZSA9PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiID8gc2NoZW1hMi5pdGVtcyA6IHZvaWQgMDsKICAgICAgfQogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogICAgZnVuY3Rpb24gX3Zpc2l0SnNvblJlY3Vyc2l2ZShqc29uMiwgdmlzaXRvciwgcHRyLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCkgewogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSB8fCBzY2hlbWEyID09PSBmYWxzZSkgewogICAgICAgIHNjaGVtYTIgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIgJiYgc2NoZW1hMi5oYXNPd25Qcm9wZXJ0eSgiJHJlZiIpICYmIHR5cGVvZiBzY2hlbWEyWyIkcmVmIl0gPT0gInN0cmluZyIpIHsKICAgICAgICBpZiAocmVmUmVzb2x2ZXIpIHsKICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVmUmVzb2x2ZXIoc2NoZW1hMlsiJHJlZiJdLCBjb250ZXh0KTsKICAgICAgICAgIHNjaGVtYTIgPSByZXNvbHZlZC5zY2hlbWE7CiAgICAgICAgICBjb250ZXh0ID0gcmVzb2x2ZWQuY29udGV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3QgdmFsdWUgPSB2aXNpdG9yKGpzb24yLCBwdHIsIHNjaGVtYTIsIHJvb3QpOwogICAgICByZXR1cm4gKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKSh2YWx1ZSkgPyB2YWx1ZSA6ICgwLCByeGpzXzEub2YpKHZhbHVlKSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHZhbHVlMikgPT4gewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlMikpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKSh2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKGl0ZW0sIGkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoaXRlbSwgdmlzaXRvciwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKHB0ciwgIiIgKyBpKSwgX2dldE9iamVjdFN1YlNjaGVtYShzY2hlbWEyLCAiIiArIGkpLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCB8fCB2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS50YXApKCh4KSA9PiB2YWx1ZTJbaV0gPSB4KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlMiA9PSAib2JqZWN0IiAmJiB2YWx1ZTIgIT09IG51bGwpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZTIpKS5waXBlKCgwLCByeGpzXzEubWVyZ2VNYXApKChrZXkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUodmFsdWUyW2tleV0sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShwdHIsIGtleSksIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQsIHJvb3QgfHwgdmFsdWUyKS5waXBlKCgwLCByeGpzXzEudGFwKSgoeCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbHVlMiwga2V5KTsKICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLndyaXRhYmxlICYmIHZhbHVlMltrZXldICE9PSB4KSB7CiAgICAgICAgICAgICAgICB2YWx1ZTJba2V5XSA9IHg7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodmFsdWUyKTsKICAgICAgICB9CiAgICAgIH0pKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZpc2l0SnNvbihqc29uMiwgdmlzaXRvciwgc2NoZW1hMiwgcmVmUmVzb2x2ZXIsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoanNvbjIsIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiB2aXNpdEpzb25TY2hlbWEoc2NoZW1hMiwgdmlzaXRvcikgewogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UgfHwgc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBjb25zdCBrZXl3b3JkcyA9IHsKICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgY29udGFpbnM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcHJvcGVydHlOYW1lczogdHJ1ZSwKICAgICAgICBub3Q6IHRydWUKICAgICAgfTsKICAgICAgY29uc3QgYXJyYXlLZXl3b3JkcyA9IHsKICAgICAgICBpdGVtczogdHJ1ZSwKICAgICAgICBhbGxPZjogdHJ1ZSwKICAgICAgICBhbnlPZjogdHJ1ZSwKICAgICAgICBvbmVPZjogdHJ1ZQogICAgICB9OwogICAgICBjb25zdCBwcm9wc0tleXdvcmRzID0gewogICAgICAgIGRlZmluaXRpb25zOiB0cnVlLAogICAgICAgIHByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgZGVwZW5kZW5jaWVzOiB0cnVlLAogICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgIH07CiAgICAgIGZ1bmN0aW9uIF90cmF2ZXJzZShzY2hlbWEzLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KSB7CiAgICAgICAgaWYgKHNjaGVtYTMgJiYgdHlwZW9mIHNjaGVtYTMgPT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkoc2NoZW1hMykpIHsKICAgICAgICAgIHZpc2l0b3Ioc2NoZW1hMywganNvblB0ciwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCk7CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhzY2hlbWEzKSkgewogICAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEzW2tleV07CiAgICAgICAgICAgIGlmIChrZXkgaW4gcHJvcHNLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIG9mIE9iamVjdC5rZXlzKHNjaCkpIHsKICAgICAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaFtwcm9wXSwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSwgcHJvcCksIHJvb3RTY2hlbWEsIHNjaGVtYTMsIHByb3ApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4ga2V5d29yZHMpIHsKICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5KSwgcm9vdFNjaGVtYSwgc2NoZW1hMywga2V5KTsKICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gYXJyYXlLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX3RyYXZlcnNlKHNjaGVtYTIsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3JlZ2lzdHJ5LmpzCnZhciByZXF1aXJlX3JlZ2lzdHJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Db3JlU2NoZW1hUmVnaXN0cnkgPSBleHBvcnRzMi5TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gX19pbXBvcnREZWZhdWx0KHJlcXVpcmVfYWp2KCkpOwogICAgdmFyIGFqdl9mb3JtYXRzXzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZV9kaXN0KCkpOwogICAgdmFyIGh0dHAgPSBfX2ltcG9ydFN0YXIocmVxdWlyZSgiaHR0cCIpKTsKICAgIHZhciBodHRwcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJodHRwcyIpKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFVybCA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJ1cmwiKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzMygpOwogICAgdmFyIHV0aWxzXzIgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgdXRpbGl0eV8xID0gcmVxdWlyZV91dGlsaXR5KCk7CiAgICB2YXIgdmlzaXRvcl8xID0gcmVxdWlyZV92aXNpdG9yKCk7CiAgICB2YXIgU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IGNsYXNzIF9TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGVycm9yczsKICAgICAgY29uc3RydWN0b3IoZXJyb3JzLCBiYXNlTWVzc2FnZSA9ICJTY2hlbWEgdmFsaWRhdGlvbiBmYWlsZWQgd2l0aCB0aGUgZm9sbG93aW5nIGVycm9yczoiKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgc3VwZXIoIlNjaGVtYSB2YWxpZGF0aW9uIGZhaWxlZC4iKTsKICAgICAgICAgIHRoaXMuZXJyb3JzID0gW107CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1lc3NhZ2VzID0gX1NjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24uY3JlYXRlTWVzc2FnZXMoZXJyb3JzKTsKICAgICAgICBzdXBlcihgJHtiYXNlTWVzc2FnZX0KICAke21lc3NhZ2VzLmpvaW4oIlxuICAiKX1gKTsKICAgICAgICB0aGlzLmVycm9ycyA9IGVycm9yczsKICAgICAgfQogICAgICBzdGF0aWMgY3JlYXRlTWVzc2FnZXMoZXJyb3JzKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBtZXNzYWdlcyA9IGVycm9ycy5tYXAoKGVycikgPT4gewogICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgRGF0YSBwYXRoICR7SlNPTi5zdHJpbmdpZnkoZXJyLmluc3RhbmNlUGF0aCl9ICR7ZXJyLm1lc3NhZ2V9YDsKICAgICAgICAgIGlmIChlcnIucGFyYW1zKSB7CiAgICAgICAgICAgIHN3aXRjaCAoZXJyLmtleXdvcmQpIHsKICAgICAgICAgICAgICBjYXNlICJhZGRpdGlvbmFsUHJvcGVydGllcyI6CiAgICAgICAgICAgICAgICBtZXNzYWdlICs9IGAoJHtlcnIucGFyYW1zLmFkZGl0aW9uYWxQcm9wZXJ0eX0pYDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgImVudW0iOgogICAgICAgICAgICAgICAgbWVzc2FnZSArPSBgLiBBbGxvd2VkIHZhbHVlcyBhcmU6ICR7ZXJyLnBhcmFtcy5hbGxvd2VkVmFsdWVzPy5tYXAoKHYpID0+IGAiJHt2fSJgKS5qb2luKCIsICIpfWA7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIG1lc3NhZ2UgKyAiLiI7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG1lc3NhZ2VzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IFNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb247CiAgICB2YXIgQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gY2xhc3MgX0NvcmVTY2hlbWFSZWdpc3RyeSB7CiAgICAgIF9hanY7CiAgICAgIF91cmlDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF91cmlIYW5kbGVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9wcmUgPSBuZXcgdXRpbHNfMS5QYXJ0aWFsbHlPcmRlcmVkU2V0KCk7CiAgICAgIF9wb3N0ID0gbmV3IHV0aWxzXzEuUGFydGlhbGx5T3JkZXJlZFNldCgpOwogICAgICBfY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbzsKICAgICAgX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSBmYWxzZTsKICAgICAgX3Byb21wdFByb3ZpZGVyOwogICAgICBfc291cmNlTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoZm9ybWF0cyA9IFtdKSB7CiAgICAgICAgdGhpcy5fYWp2ID0gbmV3IGFqdl8xLmRlZmF1bHQoewogICAgICAgICAgc3RyaWN0OiBmYWxzZSwKICAgICAgICAgIGxvYWRTY2hlbWE6ICh1cmkpID0+IHRoaXMuX2ZldGNoKHVyaSksCiAgICAgICAgICBwYXNzQ29udGV4dDogdHJ1ZQogICAgICAgIH0pOwogICAgICAgICgwLCBhanZfZm9ybWF0c18xLmRlZmF1bHQpKHRoaXMuX2Fqdik7CiAgICAgICAgZm9yIChjb25zdCBmb3JtYXQgb2YgZm9ybWF0cykgewogICAgICAgICAgdGhpcy5hZGRGb3JtYXQoZm9ybWF0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXN5bmMgX2ZldGNoKHVyaSkgewogICAgICAgIGNvbnN0IG1heWJlU2NoZW1hID0gdGhpcy5fdXJpQ2FjaGUuZ2V0KHVyaSk7CiAgICAgICAgaWYgKG1heWJlU2NoZW1hKSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTY2hlbWE7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgaGFuZGxlciBvZiB0aGlzLl91cmlIYW5kbGVycykgewogICAgICAgICAgbGV0IGhhbmRsZXJSZXN1bHQgPSBoYW5kbGVyKHVyaSk7CiAgICAgICAgICBpZiAoaGFuZGxlclJlc3VsdCA9PT0gbnVsbCB8fCBoYW5kbGVyUmVzdWx0ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKGhhbmRsZXJSZXN1bHQpKSB7CiAgICAgICAgICAgIGhhbmRsZXJSZXN1bHQgPSAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhhbmRsZXJSZXN1bHQpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCBoYW5kbGVyUmVzdWx0OwogICAgICAgICAgdGhpcy5fdXJpQ2FjaGUuc2V0KHVyaSwgdmFsdWUpOwogICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewogICAgICAgICAgY29uc3QgdXJsMyA9IG5ldyBVcmwuVVJMKHVyaSk7CiAgICAgICAgICBjb25zdCBjbGllbnQgPSB1cmwzLnByb3RvY29sID09PSAiaHR0cHM6IiA/IGh0dHBzIDogaHR0cDsKICAgICAgICAgIGNsaWVudC5nZXQodXJsMywgKHJlcykgPT4gewogICAgICAgICAgICBpZiAoIXJlcy5zdGF0dXNDb2RlIHx8IHJlcy5zdGF0dXNDb2RlID49IDMwMCkgewogICAgICAgICAgICAgIHJlcy5yZXN1bWUoKTsKICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBSZXF1ZXN0IGZhaWxlZC4gU3RhdHVzIENvZGU6ICR7cmVzLnN0YXR1c0NvZGV9YCkpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcy5zZXRFbmNvZGluZygidXRmOCIpOwogICAgICAgICAgICAgIGxldCBkYXRhID0gIiI7CiAgICAgICAgICAgICAgcmVzLm9uKCJkYXRhIiwgKGNodW5rKSA9PiB7CiAgICAgICAgICAgICAgICBkYXRhICs9IGNodW5rOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJlcy5vbigiZW5kIiwgKCkgPT4gewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QganNvbjIgPSBKU09OLnBhcnNlKGRhdGEpOwogICAgICAgICAgICAgICAgICB0aGlzLl91cmlDYWNoZS5zZXQodXJpLCBqc29uMik7CiAgICAgICAgICAgICAgICAgIHJlc29sdmUoanNvbjIpOwogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgdHJhbnNmb3JtYXRpb24gc3RlcCBiZWZvcmUgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3J9IHZpc2l0b3IgVGhlIHZpc2l0b3IgdG8gdHJhbnNmb3JtIGV2ZXJ5IHZhbHVlLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yW119IGRlcHMgQSBsaXN0IG9mIG90aGVyIHZpc2l0b3JzIHRvIHJ1biBiZWZvcmUuCiAgICAgICAqLwogICAgICBhZGRQcmVUcmFuc2Zvcm0odmlzaXRvciwgZGVwcykgewogICAgICAgIHRoaXMuX3ByZS5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHRyYW5zZm9ybWF0aW9uIHN0ZXAgYWZ0ZXIgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uIFRoZSBKU09OIHdpbGwgbm90IGJlIHZhbGlkYXRlZAogICAgICAgKiBhZnRlciB0aGUgUE9TVCwgc28gaWYgdHJhbnNmb3JtYXRpb25zIGFyZSBub3QgY29tcGF0aWJsZSB3aXRoIHRoZSBTY2hlbWEgaXQgd2lsbCBub3QgcmVzdWx0CiAgICAgICAqIGluIGFuIGVycm9yLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yfSB2aXNpdG9yIFRoZSB2aXNpdG9yIHRvIHRyYW5zZm9ybSBldmVyeSB2YWx1ZS4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcltdfSBkZXBzIEEgbGlzdCBvZiBvdGhlciB2aXNpdG9ycyB0byBydW4gYmVmb3JlLgogICAgICAgKi8KICAgICAgYWRkUG9zdFRyYW5zZm9ybSh2aXNpdG9yLCBkZXBzKSB7CiAgICAgICAgdGhpcy5fcG9zdC5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgX3Jlc29sdmVyKHJlZiwgdmFsaWRhdGUpIHsKICAgICAgICBpZiAoIXZhbGlkYXRlIHx8ICFyZWYpIHsKICAgICAgICAgIHJldHVybiB7fTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1hMiA9IHZhbGlkYXRlLnNjaGVtYUVudi5yb290LnNjaGVtYTsKICAgICAgICBjb25zdCBpZCA9IHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IiA/IHNjaGVtYTIuJGlkIDogbnVsbDsKICAgICAgICBsZXQgZnVsbFJlZmVyZW5jZSA9IHJlZjsKICAgICAgICBpZiAodHlwZW9mIGlkID09PSAic3RyaW5nIikgewogICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IFVybC5yZXNvbHZlKGlkLCByZWYpOwogICAgICAgICAgaWYgKHJlZi5zdGFydHNXaXRoKCIjIikpIHsKICAgICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IGlkICsgZnVsbFJlZmVyZW5jZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgcmVzb2x2ZWRTY2hlbWEgPSB0aGlzLl9hanYuZ2V0U2NoZW1hKGZ1bGxSZWZlcmVuY2UpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjb250ZXh0OiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hRW52LnZhbGlkYXRlLAogICAgICAgICAgc2NoZW1hOiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogRmxhdHRlbiB0aGUgU2NoZW1hLCByZXNvbHZpbmcgYW5kIHJlcGxhY2luZyBhbGwgdGhlIHJlZnMuIE1ha2VzIGl0IGludG8gYSBzeW5jaHJvbm91cyBzY2hlbWEKICAgICAgICogdGhhdCBpcyBhbHNvIGVhc2llciB0byB0cmF2ZXJzZS4gRG9lcyBub3QgY2FjaGUgdGhlIHJlc3VsdC4KICAgICAgICoKICAgICAgICogUHJvZHVjaW5nIGEgZmxhdHRlbiBzY2hlbWEgZG9jdW1lbnQgZG9lcyBub3QgaW4gYWxsIGNhc2VzIHByb2R1Y2UgYSBzY2hlbWEgd2l0aCBpZGVudGljYWwgYmVoYXZpb3IgdG8gdGhlIG9yaWdpbmFsLgogICAgICAgKiBTZWU6IGh0dHBzOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LzIwMTktMDkvanNvbi1zY2hlbWEtY29yZS5odG1sI3JmYy5hcHBlbmRpeC5CLjIKICAgICAgICoKICAgICAgICogQHBhcmFtIHNjaGVtYSBUaGUgc2NoZW1hIG9yIFVSSSB0byBmbGF0dGVuLgogICAgICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIG9mIHRoZSBmbGF0dGVuZWQgc2NoZW1hIG9iamVjdC4KICAgICAgICogQHByaXZhdGUgc2luY2UgMTEuMiB3aXRob3V0IHJlcGxhY2VtZW50LgogICAgICAgKi8KICAgICAgYXN5bmMgXHUwMjc1ZmxhdHRlbihzY2hlbWEyKSB7CiAgICAgICAgdGhpcy5fYWp2LnJlbW92ZVNjaGVtYShzY2hlbWEyKTsKICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fYWp2LmNvbXBpbGVBc3luYyhzY2hlbWEyKTsKICAgICAgICBjb25zdCBzZWxmMiA9IHRoaXM7CiAgICAgICAgZnVuY3Rpb24gdmlzaXRvcihjdXJyZW50LCBwb2ludGVyLCBwYXJlbnRTY2hlbWEsIGluZGV4KSB7CiAgICAgICAgICBpZiAoY3VycmVudCAmJiBwYXJlbnRTY2hlbWEgJiYgaW5kZXggJiYgKDAsIHV0aWxzXzIuaXNKc29uT2JqZWN0KShjdXJyZW50KSAmJiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoY3VycmVudCwgIiRyZWYiKSAmJiB0eXBlb2YgY3VycmVudFsiJHJlZiJdID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gc2VsZjIuX3Jlc29sdmVyKGN1cnJlbnRbIiRyZWYiXSwgdmFsaWRhdGUpOwogICAgICAgICAgICBpZiAocmVzb2x2ZWQuc2NoZW1hKSB7CiAgICAgICAgICAgICAgcGFyZW50U2NoZW1hW2luZGV4XSA9IHJlc29sdmVkLnNjaGVtYTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWFDb3B5ID0gKDAsIHV0aWxzXzEuZGVlcENvcHkpKHZhbGlkYXRlLnNjaGVtYSk7CiAgICAgICAgKDAsIHZpc2l0b3JfMS52aXNpdEpzb25TY2hlbWEpKHNjaGVtYUNvcHksIHZpc2l0b3IpOwogICAgICAgIHJldHVybiBzY2hlbWFDb3B5OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDb21waWxlIGFuZCByZXR1cm4gYSB2YWxpZGF0aW9uIGZ1bmN0aW9uIGZvciB0aGUgU2NoZW1hLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gc2NoZW1hIFRoZSBzY2hlbWEgdG8gdmFsaWRhdGUuIElmIGEgc3RyaW5nLCB3aWxsIGZldGNoIHRoZSBzY2hlbWEgYmVmb3JlIGNvbXBpbGluZyBpdAogICAgICAgKiAodXNpbmcgc2NoZW1hIGFzIGEgVVJJKS4KICAgICAgICovCiAgICAgIGFzeW5jIGNvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fY29tcGlsZShzY2hlbWEyKTsKICAgICAgICByZXR1cm4gKHZhbHVlLCBvcHRpb25zKSA9PiB2YWxpZGF0ZSh2YWx1ZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXN5bmMgX2NvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEpID0+ICh7IHN1Y2Nlc3M6IHNjaGVtYTIsIGRhdGEgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYUluZm8gPSB7CiAgICAgICAgICBzbWFydERlZmF1bHRSZWNvcmQ6IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCksCiAgICAgICAgICBwcm9tcHREZWZpbml0aW9uczogW10KICAgICAgICB9OwogICAgICAgIHRoaXMuX2Fqdi5yZW1vdmVTY2hlbWEoc2NoZW1hMik7CiAgICAgICAgbGV0IHZhbGlkYXRvcjsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5fY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbyA9IHNjaGVtYUluZm87CiAgICAgICAgICB2YWxpZGF0b3IgPSB0aGlzLl9hanYuY29tcGlsZShzY2hlbWEyKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgYWp2XzEuZGVmYXVsdC5NaXNzaW5nUmVmRXJyb3IpKSB7CiAgICAgICAgICAgIHRocm93IGU7CiAgICAgICAgICB9CiAgICAgICAgICB2YWxpZGF0b3IgPSBhd2FpdCB0aGlzLl9hanYuY29tcGlsZUFzeW5jKHNjaGVtYTIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEsIG9wdGlvbnMpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25PcHRpb25zID0gewogICAgICAgICAgICB3aXRoUHJvbXB0czogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQb3N0VHJhbnNmb3JtczogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQcmVUcmFuc2Zvcm1zOiB0cnVlLAogICAgICAgICAgICAuLi5vcHRpb25zCiAgICAgICAgICB9OwogICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkNvbnRleHQgPSB7CiAgICAgICAgICAgIHByb21wdEZpZWxkc1dpdGhWYWx1ZTogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy5hcHBseVByZVRyYW5zZm9ybXMpIHsKICAgICAgICAgICAgZm9yIChjb25zdCB2aXNpdG9yIG9mIHRoaXMuX3ByZS52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlTbWFydERlZmF1bHRzKGRhdGEsIHNjaGVtYUluZm8uc21hcnREZWZhdWx0UmVjb3JkKTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy53aXRoUHJvbXB0cykgewogICAgICAgICAgICBjb25zdCB2aXNpdG9yID0gKHZhbHVlLCBwb2ludGVyKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5hZGQocG9pbnRlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYTIsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGRlZmluaXRpb25zID0gc2NoZW1hSW5mby5wcm9tcHREZWZpbml0aW9ucy5maWx0ZXIoKGRlZikgPT4gIXZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5oYXMoZGVmLmlkKSk7CiAgICAgICAgICAgIGlmIChkZWZpbml0aW9ucy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlQcm9tcHRzKGRhdGEsIGRlZmluaXRpb25zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY29uc3Qgc3VjY2VzcyA9IGF3YWl0IHZhbGlkYXRvci5jYWxsKHZhbGlkYXRpb25Db250ZXh0LCBkYXRhKTsKICAgICAgICAgICAgaWYgKCFzdWNjZXNzKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzcywgZXJyb3JzOiB2YWxpZGF0b3IuZXJyb3JzID8/IFtdIH07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIGFqdl8xLmRlZmF1bHQuVmFsaWRhdGlvbkVycm9yKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogZmFsc2UsIGVycm9yczogZXJyb3IuZXJyb3JzIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsaWRhdGlvbk9wdGlvbnMuYXBwbHlQb3N0VHJhbnNmb3JtcykgewogICAgICAgICAgICBmb3IgKGNvbnN0IHZpc2l0b3Igb2YgdGhpcy5fcG9zdC52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogdHJ1ZSB9OwogICAgICAgIH07CiAgICAgIH0KICAgICAgYWRkRm9ybWF0KGZvcm1hdCkgewogICAgICAgIHRoaXMuX2Fqdi5hZGRGb3JtYXQoZm9ybWF0Lm5hbWUsIGZvcm1hdC5mb3JtYXR0ZXIpOwogICAgICB9CiAgICAgIGFkZFNtYXJ0RGVmYXVsdFByb3ZpZGVyKHNvdXJjZSwgcHJvdmlkZXIpIHsKICAgICAgICBpZiAodGhpcy5fc291cmNlTWFwLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Ioc291cmNlKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fc291cmNlTWFwLnNldChzb3VyY2UsIHByb3ZpZGVyKTsKICAgICAgICBpZiAoIXRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQpIHsKICAgICAgICAgIHRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSB0cnVlOwogICAgICAgICAgdGhpcy5fYWp2LmFkZEtleXdvcmQoewogICAgICAgICAgICBrZXl3b3JkOiAiJGRlZmF1bHQiLAogICAgICAgICAgICBlcnJvcnM6IGZhbHNlLAogICAgICAgICAgICB2YWxpZDogdHJ1ZSwKICAgICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIF9wYXJlbnRTY2hlbWEsIGl0KSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICAgIGlmIChjb21waWxhdGlvblNjaGVtSW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcGF0aEFycmF5ID0gdGhpcy5ub3JtYWxpemVEYXRhUGF0aEFycihpdCk7CiAgICAgICAgICAgICAgY29tcGlsYXRpb25TY2hlbUluZm8uc21hcnREZWZhdWx0UmVjb3JkLnNldChKU09OLnN0cmluZ2lmeShwYXRoQXJyYXkpLCBzY2hlbWEyKTsKICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICIkc291cmNlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICAgICAgICByZXF1aXJlZDogWyIkc291cmNlIl0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlZ2lzdGVyVXJpSGFuZGxlcihoYW5kbGVyKSB7CiAgICAgICAgdGhpcy5fdXJpSGFuZGxlcnMuYWRkKGhhbmRsZXIpOwogICAgICB9CiAgICAgIHVzZVByb21wdFByb3ZpZGVyKHByb3ZpZGVyKSB7CiAgICAgICAgY29uc3QgaXNTZXR1cCA9ICEhdGhpcy5fcHJvbXB0UHJvdmlkZXI7CiAgICAgICAgdGhpcy5fcHJvbXB0UHJvdmlkZXIgPSBwcm92aWRlcjsKICAgICAgICBpZiAoaXNTZXR1cCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1wcm9tcHQiLAogICAgICAgICAgZXJyb3JzOiBmYWxzZSwKICAgICAgICAgIHZhbGlkOiB0cnVlLAogICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpID0+IHsKICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICBpZiAoIWNvbXBpbGF0aW9uU2NoZW1JbmZvKSB7CiAgICAgICAgICAgICAgcmV0dXJuICgpID0+IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgcGF0aCA9ICIvIiArIHRoaXMubm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpLmpvaW4oIi8iKTsKICAgICAgICAgICAgbGV0IHR5cGUyOwogICAgICAgICAgICBsZXQgaXRlbXM7CiAgICAgICAgICAgIGxldCBtZXNzYWdlOwogICAgICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMi5tZXNzYWdlOwogICAgICAgICAgICAgIHR5cGUyID0gc2NoZW1hMi50eXBlOwogICAgICAgICAgICAgIGl0ZW1zID0gc2NoZW1hMi5pdGVtczsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShwYXJlbnRTY2hlbWEpOwogICAgICAgICAgICBpZiAoIXR5cGUyKSB7CiAgICAgICAgICAgICAgaWYgKHByb3BlcnR5VHlwZXMuc2l6ZSA9PT0gMSAmJiBwcm9wZXJ0eVR5cGVzLmhhcygiYm9vbGVhbiIpKSB7CiAgICAgICAgICAgICAgICB0eXBlMiA9ICJjb25maXJtYXRpb24iOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZW51bSkpIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImxpc3QiOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpICYmIHBhcmVudFNjaGVtYS5pdGVtcyAmJiBBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5pdGVtcy5lbnVtKSkgewogICAgICAgICAgICAgICAgdHlwZTIgPSAibGlzdCI7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImlucHV0IjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG11bHRpc2VsZWN0OwogICAgICAgICAgICBpZiAodHlwZTIgPT09ICJsaXN0IikgewogICAgICAgICAgICAgIG11bHRpc2VsZWN0ID0gc2NoZW1hMi5tdWx0aXNlbGVjdCA9PT0gdm9pZCAwID8gcHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpIDogc2NoZW1hMi5tdWx0aXNlbGVjdDsKICAgICAgICAgICAgICBjb25zdCBlbnVtVmFsdWVzID0gbXVsdGlzZWxlY3QgPyBwYXJlbnRTY2hlbWEuaXRlbXMgJiYgcGFyZW50U2NoZW1hLml0ZW1zLmVudW0gOiBwYXJlbnRTY2hlbWEuZW51bTsKICAgICAgICAgICAgICBpZiAoIWl0ZW1zICYmIEFycmF5LmlzQXJyYXkoZW51bVZhbHVlcykpIHsKICAgICAgICAgICAgICAgIGl0ZW1zID0gW107CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIGVudW1WYWx1ZXMpIHsKICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAic3RyaW5nIikgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2godmFsdWUpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goeyBsYWJlbDogdmFsdWUudG9TdHJpbmcoKSwgdmFsdWUgfSk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgZGVmaW5pdGlvbiA9IHsKICAgICAgICAgICAgICBpZDogcGF0aCwKICAgICAgICAgICAgICB0eXBlOiB0eXBlMiwKICAgICAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgICAgIHJhdzogc2NoZW1hMiwKICAgICAgICAgICAgICBpdGVtcywKICAgICAgICAgICAgICBtdWx0aXNlbGVjdCwKICAgICAgICAgICAgICBwcm9wZXJ0eVR5cGVzLAogICAgICAgICAgICAgIGRlZmF1bHQ6IHR5cGVvZiBwYXJlbnRTY2hlbWEuZGVmYXVsdCA9PSAib2JqZWN0IiAmJiBwYXJlbnRTY2hlbWEuZGVmYXVsdCAhPT0gbnVsbCAmJiAhQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZGVmYXVsdCkgPyB2b2lkIDAgOiBwYXJlbnRTY2hlbWEuZGVmYXVsdCwKICAgICAgICAgICAgICBhc3luYyB2YWxpZGF0b3IoZGF0YSkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaXQuc2VsZi52YWxpZGF0ZShwYXJlbnRTY2hlbWEsIGRhdGEpOwogICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpdC5zZWxmLmVycm9ycz8ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0LnNlbGYuZXJyb3JzWzBdLm1lc3NhZ2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkVycm9yID0gZTsKICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsaWRhdGlvbkVycm9yLmVycm9ycykgJiYgdmFsaWRhdGlvbkVycm9yLmVycm9ycy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvbkVycm9yLmVycm9yc1swXS5tZXNzYWdlOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgICBjb21waWxhdGlvblNjaGVtSW5mby5wcm9tcHREZWZpbml0aW9ucy5wdXNoKGRlZmluaXRpb24pOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaWYgKHRoaXMgJiYgdGhpcy5wcm9tcHRGaWVsZHNXaXRoVmFsdWUpIHsKICAgICAgICAgICAgICAgIHRoaXMucHJvbXB0RmllbGRzV2l0aFZhbHVlLmFkZChwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH07CiAgICAgICAgICB9LAogICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICBvbmVPZjogWwogICAgICAgICAgICAgIHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgICAgICAgICAgICJtZXNzYWdlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgICAgICAgICByZXF1aXJlZDogWyJtZXNzYWdlIl0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBhc3luYyBfYXBwbHlQcm9tcHRzKGRhdGEsIHByb21wdHMpIHsKICAgICAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuX3Byb21wdFByb3ZpZGVyOwogICAgICAgIGlmICghcHJvdmlkZXIpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgYW5zd2VycyA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHJ4anNfMS5mcm9tKShwcm92aWRlcihwcm9tcHRzKSkpOwogICAgICAgIGZvciAoY29uc3QgcGF0aCBpbiBhbnN3ZXJzKSB7CiAgICAgICAgICBjb25zdCBwYXRoRnJhZ21lbnRzID0gcGF0aC5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIHBhdGhGcmFnbWVudHMsIGFuc3dlcnNbcGF0aF0sIG51bGwsIHZvaWQgMCwgdHJ1ZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN0YXRpYyBfc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUsIHBhcmVudCA9IG51bGwsIHBhcmVudFByb3BlcnR5LCBmb3JjZSkgewogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBmcmFnbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IGZyYWdtZW50c1tpbmRleF07CiAgICAgICAgICBpZiAoL15pXGQrJC8udGVzdChmcmFnbWVudCkpIHsKICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGEpKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvciAobGV0IGRhdGFJbmRleCA9IDA7IGRhdGFJbmRleCA8IGRhdGEubGVuZ3RoOyBkYXRhSW5kZXgrKykgewogICAgICAgICAgICAgIF9Db3JlU2NoZW1hUmVnaXN0cnkuX3NldChkYXRhW2RhdGFJbmRleF0sIGZyYWdtZW50cy5zbGljZShpbmRleCArIDEpLCB2YWx1ZSwgZGF0YSwgYCR7ZGF0YUluZGV4fWApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZGF0YSAmJiBwYXJlbnQgIT09IG51bGwgJiYgcGFyZW50UHJvcGVydHkpIHsKICAgICAgICAgICAgZGF0YSA9IHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPSB7fTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcmVudCA9IGRhdGE7CiAgICAgICAgICBwYXJlbnRQcm9wZXJ0eSA9IGZyYWdtZW50OwogICAgICAgICAgZGF0YSA9IGRhdGFbZnJhZ21lbnRdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudFByb3BlcnR5ICYmIChmb3JjZSB8fCBwYXJlbnRbcGFyZW50UHJvcGVydHldID09PSB2b2lkIDApKSB7CiAgICAgICAgICBwYXJlbnRbcGFyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzeW5jIF9hcHBseVNtYXJ0RGVmYXVsdHMoZGF0YSwgc21hcnREZWZhdWx0cykgewogICAgICAgIGZvciAoY29uc3QgW3BvaW50ZXIsIHNjaGVtYTJdIG9mIHNtYXJ0RGVmYXVsdHMuZW50cmllcygpKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSBKU09OLnBhcnNlKHBvaW50ZXIpOwogICAgICAgICAgY29uc3Qgc291cmNlID0gdGhpcy5fc291cmNlTWFwLmdldChzY2hlbWEyLiRzb3VyY2UpOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2Uoc2NoZW1hMik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKHZhbHVlKSkgewogICAgICAgICAgICB2YWx1ZSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkodmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUpOwogICAgICAgIH0KICAgICAgfQogICAgICB1c2VYRGVwcmVjYXRlZFByb3ZpZGVyKG9uVXNhZ2UpIHsKICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1kZXByZWNhdGVkIiwKICAgICAgICAgIHZhbGlkYXRlOiAoc2NoZW1hMiwgX2RhdGEsIF9wYXJlbnRTY2hlbWEsIGRhdGFDeHQpID0+IHsKICAgICAgICAgICAgaWYgKHNjaGVtYTIpIHsKICAgICAgICAgICAgICBvblVzYWdlKGBPcHRpb24gIiR7ZGF0YUN4dD8ucGFyZW50RGF0YVByb3BlcnR5fSIgaXMgZGVwcmVjYXRlZCR7dHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIgPyAiOiAiICsgc2NoZW1hMiA6ICIuIn1gKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcnM6IGZhbHNlCiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpIHsKICAgICAgICByZXR1cm4gaXQuZGF0YVBhdGhBcnIuc2xpY2UoMSwgaXQuZGF0YUxldmVsICsgMSkubWFwKChwKSA9PiB0eXBlb2YgcCA9PT0gIm51bWJlciIgPyBwIDogcC5zdHIucmVwbGFjZSgvIi9nLCAiIikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gQ29yZVNjaGVtYVJlZ2lzdHJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzCnZhciByZXF1aXJlX3NjaGVtYSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0pzb25TY2hlbWEgPSBpc0pzb25TY2hlbWE7CiAgICBleHBvcnRzMi5tZXJnZVNjaGVtYXMgPSBtZXJnZVNjaGVtYXM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIGZ1bmN0aW9uIGlzSnNvblNjaGVtYSh2YWx1ZSkgewogICAgICByZXR1cm4gKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgdmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSB0cnVlOwogICAgfQogICAgZnVuY3Rpb24gbWVyZ2VTY2hlbWFzKC4uLnNjaGVtYXMpIHsKICAgICAgcmV0dXJuIHNjaGVtYXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiB7CiAgICAgICAgaWYgKGN1cnIgPT09IHZvaWQgMCkgewogICAgICAgICAgcmV0dXJuIHByZXY7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2ID09PSBmYWxzZSB8fCBjdXJyID09PSBmYWxzZSkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSBpZiAocHJldiA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIGN1cnI7CiAgICAgICAgfSBlbHNlIGlmIChjdXJyID09PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm4gcHJldjsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocHJldi5hbGxPZikpIHsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1cnIuYWxsT2YpKSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgY3Vycl0gfTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY3Vyci5hbGxPZikpIHsKICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbcHJldiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFtwcmV2LCBjdXJyXSB9OwogICAgICAgIH0KICAgICAgfSwgdHJ1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcwp2YXIgcmVxdWlyZV9zY2hlbWEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudHJhbnNmb3JtcyA9IHZvaWQgMDsKICAgIHZhciB0cmFuc2Zvcm1zID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtcygpKTsKICAgIGV4cG9ydHMyLnRyYW5zZm9ybXMgPSB0cmFuc2Zvcm1zOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BvaW50ZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmVnaXN0cnkoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Zpc2l0b3IoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdXRpbGl0eSgpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL2luZGV4LmpzCnZhciByZXF1aXJlX2pzb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBzY2hlbWEyID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hMigpKTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHNjaGVtYTI7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlscygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbG9nZ2VyLmpzCnZhciByZXF1aXJlX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyByeGpzXzEuT2JzZXJ2YWJsZSB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX21ldGFkYXRhOwogICAgICBfb2JzID0gcnhqc18xLkVNUFRZOwogICAgICBfc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgZ2V0IF9vYnNlcnZhYmxlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnM7CiAgICAgIH0KICAgICAgc2V0IF9vYnNlcnZhYmxlKHYpIHsKICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fb2JzID0gdjsKICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKGVycm9yKSA9PiB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCkgewogICAgICAgICAgICAgIHRoaXMucGFyZW50Ll9zdWJqZWN0LmVycm9yKGVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKCkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIGNvbnN0IHBhdGggPSBbXTsKICAgICAgICBsZXQgcCA9IHBhcmVudDsKICAgICAgICB3aGlsZSAocCkgewogICAgICAgICAgcGF0aC5wdXNoKHAubmFtZSk7CiAgICAgICAgICBwID0gcC5wYXJlbnQ7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21ldGFkYXRhID0geyBuYW1lLCBwYXRoIH07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX3N1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50Ll9zdWJqZWN0KSB7CiAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5zdWJzY3JpYmUodm9pZCAwLCB2b2lkIDAsICgpID0+IHRoaXMuY29tcGxldGUoKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKG5hbWUpID0+IHRoaXMuY3JlYXRlQ2hpbGQobmFtZSksCiAgICAgICAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEpID0+IHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgICAgICB9LAogICAgICAgICAgZGVidWc6IChtZXNzYWdlLCBtZXRhZGF0YSkgPT4gdGhpcy5kZWJ1ZyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBpbmZvOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICB3YXJuOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMud2FybihtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBlcnJvcjogKG1lc3NhZ2UsIG1ldGFkYXRhKSA9PiB0aGlzLmVycm9yKG1lc3NhZ2UsIG1ldGFkYXRhKSwKICAgICAgICAgIGZhdGFsOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuZmF0YWwobWVzc2FnZSwgbWV0YWRhdGEpCiAgICAgICAgfTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5hbWUsIHRoaXMpOwogICAgICB9CiAgICAgIGNvbXBsZXRlKCkgewogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgfQogICAgICBsb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGFkYXRhID0ge30pIHsKICAgICAgICBjb25zdCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe30sIG1ldGFkYXRhLCB0aGlzLl9tZXRhZGF0YSwgewogICAgICAgICAgbGV2ZWwsCiAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgdGltZXN0YW1wOiArRGF0ZS5ub3coKQogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgbmV4dChlbnRyeSkgewogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgZGVidWcobWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygiZGVidWciLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgIH0KICAgICAgaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJpbmZvIiwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIHdhcm4obWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygid2FybiIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBlcnJvcihtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJlcnJvciIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBmYXRhbChtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJmYXRhbCIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gYDxMb2dnZXIoJHt0aGlzLm5hbWV9KT5gOwogICAgICB9CiAgICAgIGxpZnQob3BlcmF0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb2JzZXJ2YWJsZS5saWZ0KG9wZXJhdG9yKTsKICAgICAgfQogICAgICBzdWJzY3JpYmUoX29ic2VydmVyT3JOZXh0LCBfZXJyb3IsIF9jb21wbGV0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnNlcnZhYmxlLnN1YnNjcmliZS5hcHBseSgKICAgICAgICAgIHRoaXMuX29ic2VydmFibGUsCiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zCiAgICAgICAgICBhcmd1bWVudHMKICAgICAgICApOwogICAgICB9CiAgICAgIGZvckVhY2gobmV4dCwgcHJvbWlzZUN0b3IgPSBQcm9taXNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX29ic2VydmFibGUuZm9yRWFjaChuZXh0LCBwcm9taXNlQ3Rvcik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Mb2dnZXIgPSBMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZW50LmpzCnZhciByZXF1aXJlX2luZGVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIGluZGVudGF0aW9uTWFwID0ge307CiAgICB2YXIgSW5kZW50TG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBpbmRlbnRhdGlvbiA9ICIgICIpIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSB8fCBbIiJdOwogICAgICAgIGNvbnN0IGluZGVudE1hcCA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gdGhpcy5fb2JzZXJ2YWJsZS5waXBlKCgwLCByeGpzXzEubWFwKSgoZW50cnkpID0+IHsKICAgICAgICAgIGNvbnN0IGwgPSBlbnRyeS5wYXRoLmZpbHRlcigoeCkgPT4gISF4KS5sZW5ndGg7CiAgICAgICAgICBpZiAobCA+PSBpbmRlbnRNYXAubGVuZ3RoKSB7CiAgICAgICAgICAgIGxldCBjdXJyZW50ID0gaW5kZW50TWFwW2luZGVudE1hcC5sZW5ndGggLSAxXTsKICAgICAgICAgICAgd2hpbGUgKGwgPj0gaW5kZW50TWFwLmxlbmd0aCkgewogICAgICAgICAgICAgIGN1cnJlbnQgKz0gaW5kZW50YXRpb247CiAgICAgICAgICAgICAgaW5kZW50TWFwLnB1c2goY3VycmVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGVudHJ5Lm1lc3NhZ2UgPSBpbmRlbnRNYXBbbF0gKyBlbnRyeS5tZXNzYWdlLnNwbGl0KC9cbi8pLmpvaW4oIlxuIiArIGluZGVudE1hcFtsXSk7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gSW5kZW50TG9nZ2VyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzCnZhciByZXF1aXJlX2xldmVsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbGV2ZWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkxldmVsQ2FwTG9nZ2VyID0gZXhwb3J0czIuTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgPSB2b2lkIDA7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIExldmVsVHJhbnNmb3JtTG9nZ2VyID0gY2xhc3MgX0xldmVsVHJhbnNmb3JtTG9nZ2VyIGV4dGVuZHMgbG9nZ2VyXzEuTG9nZ2VyIHsKICAgICAgbmFtZTsKICAgICAgcGFyZW50OwogICAgICBsZXZlbFRyYW5zZm9ybTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxUcmFuc2Zvcm0pIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbFRyYW5zZm9ybSA9IGxldmVsVHJhbnNmb3JtOwogICAgICB9CiAgICAgIGxvZyhsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiBzdXBlci5sb2codGhpcy5sZXZlbFRyYW5zZm9ybShsZXZlbCksIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIobmFtZSwgdGhpcywgdGhpcy5sZXZlbFRyYW5zZm9ybSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5MZXZlbFRyYW5zZm9ybUxvZ2dlciA9IExldmVsVHJhbnNmb3JtTG9nZ2VyOwogICAgdmFyIExldmVsQ2FwTG9nZ2VyID0gY2xhc3MgX0xldmVsQ2FwTG9nZ2VyIGV4dGVuZHMgTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgewogICAgICBuYW1lOwogICAgICBwYXJlbnQ7CiAgICAgIGxldmVsQ2FwOwogICAgICBzdGF0aWMgbGV2ZWxNYXAgPSB7CiAgICAgICAgZGVidWc6IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJkZWJ1ZyIsIHdhcm46ICJkZWJ1ZyIsIGVycm9yOiAiZGVidWciLCBmYXRhbDogImRlYnVnIiB9LAogICAgICAgIGluZm86IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJpbmZvIiwgd2FybjogImluZm8iLCBlcnJvcjogImluZm8iLCBmYXRhbDogImluZm8iIH0sCiAgICAgICAgd2FybjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAid2FybiIsIGZhdGFsOiAid2FybiIgfSwKICAgICAgICBlcnJvcjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAiZXJyb3IiLCBmYXRhbDogImVycm9yIiB9LAogICAgICAgIGZhdGFsOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJlcnJvciIsIGZhdGFsOiAiZmF0YWwiIH0KICAgICAgfTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxDYXApIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQsIChsZXZlbCkgPT4gewogICAgICAgICAgcmV0dXJuIF9MZXZlbENhcExvZ2dlci5sZXZlbE1hcFtsZXZlbENhcF1bbGV2ZWxdIHx8IGxldmVsOwogICAgICAgIH0pOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbENhcCA9IGxldmVsQ2FwOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGV2ZWxDYXBMb2dnZXIgPSBMZXZlbENhcExvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9udWxsLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV9udWxsX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIE51bGxMb2dnZXIgPSBjbGFzcyBfTnVsbExvZ2dlciBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcigiIiwgcGFyZW50KTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKCkgPT4gbmV3IF9OdWxsTG9nZ2VyKHRoaXMpLAogICAgICAgICAgbG9nKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGRlYnVnKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGluZm8oKSB7CiAgICAgICAgICB9LAogICAgICAgICAgd2FybigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBmYXRhbCgpIHsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbExvZ2dlciA9IE51bGxMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV90cmFuc2Zvcm1fbG9nZ2VyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJhbnNmb3JtTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIGxvZ2dlcl8xID0gcmVxdWlyZV9sb2dnZXIoKTsKICAgIHZhciBUcmFuc2Zvcm1Mb2dnZXIgPSBjbGFzcyBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIHRyYW5zZm9ybSwgcGFyZW50ID0gbnVsbCkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCk7CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRyYW5zZm9ybSh0aGlzLl9vYnNlcnZhYmxlKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRyYW5zZm9ybUxvZ2dlciA9IFRyYW5zZm9ybUxvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcwp2YXIgcmVxdWlyZV9sb2dnZXIyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2luZGVudCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sZXZlbCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbnVsbF9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvZGVmaW5pdGlvbnMuanMKdmFyIHJlcXVpcmVfZGVmaW5pdGlvbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgRGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyB7CiAgICAgIF9saXN0ZW5lcjsKICAgICAgX21hcDsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgX2xpc3RlbmVyKSB7CiAgICAgICAgdGhpcy5fbGlzdGVuZXIgPSBfbGlzdGVuZXI7CiAgICAgICAgdGhpcy5fbWFwID0gbmV3IE1hcChpbml0aWFsICYmIE9iamVjdC5lbnRyaWVzKGluaXRpYWwpKTsKICAgICAgfQogICAgICBkZWxldGUoa2V5KSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fbWFwLmRlbGV0ZShrZXkpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2b2lkIDAsIHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIHNldChrZXksIHZhbHVlKSB7CiAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlID0gdmFsdWUgIT09IHRoaXMuZ2V0KGtleSk7CiAgICAgICAgaWYgKHVwZGF0ZWRWYWx1ZSkgewogICAgICAgICAgdGhpcy5fbWFwLnNldChrZXksIHZhbHVlKTsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2YWx1ZSwgdGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZykgewogICAgICAgIHRoaXMuX21hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiBjYWxsYmFja2ZuKHZhbHVlLCBrZXksIHRoaXMpLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5nZXQoa2V5KTsKICAgICAgfQogICAgICBoYXMoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5oYXMoa2V5KTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnNpemU7CiAgICAgIH0KICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcFtTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgICAgZW50cmllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLmVudHJpZXMoKTsKICAgICAgfQogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9tYXAua2V5cygpOwogICAgICB9CiAgICAgIHZhbHVlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnZhbHVlcygpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaXNKc29uVmFsdWUodmFsdWUpIHsKICAgICAgY29uc3QgdmlzaXRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CiAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZpc2l0ZWQuYWRkKHZhbHVlKTsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgT2JqZWN0LnZhbHVlcyh2YWx1ZSkpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIgJiYgdmlzaXRlZC5oYXMocHJvcGVydHkpKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFpc0pzb25WYWx1ZShwcm9wZXJ0eSkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIHZhciBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJQcm9qZWN0IG5hbWUgYWxyZWFkeSBleGlzdHMuIik7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShkZWZpbml0aW9uLm5hbWUpOwogICAgICAgIGNvbnN0IHByb2plY3QgPSB7CiAgICAgICAgICByb290OiBkZWZpbml0aW9uLnJvb3QsCiAgICAgICAgICBwcmVmaXg6IGRlZmluaXRpb24ucHJlZml4LAogICAgICAgICAgc291cmNlUm9vdDogZGVmaW5pdGlvbi5zb3VyY2VSb290LAogICAgICAgICAgdGFyZ2V0czogbmV3IFRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKCksCiAgICAgICAgICBleHRlbnNpb25zOiB7fQogICAgICAgIH07CiAgICAgICAgaWYgKGRlZmluaXRpb24udGFyZ2V0cykgewogICAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdGFyZ2V0XSBvZiBPYmplY3QuZW50cmllcyhkZWZpbml0aW9uLnRhcmdldHMpKSB7CiAgICAgICAgICAgIGlmICh0YXJnZXQpIHsKICAgICAgICAgICAgICBwcm9qZWN0LnRhcmdldHMuc2V0KG5hbWUsIHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRlZmluaXRpb24pKSB7CiAgICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgICAgY2FzZSAibmFtZSI6CiAgICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKGlzSnNvblZhbHVlKHZhbHVlKSkgewogICAgICAgICAgICAgICAgcHJvamVjdC5leHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCIke25hbWV9IiBtdXN0IGJlIGEgSlNPTiB2YWx1ZS5gKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyLnNldChkZWZpbml0aW9uLm5hbWUsIHByb2plY3QpOwogICAgICAgIHJldHVybiBwcm9qZWN0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIgfHwgIS9eKD86QFx3W1x3Li1dKlwvKT9cd1tcdy4tXSokLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlByb2plY3QgbmFtZSBtdXN0IGJlIGEgdmFsaWQgbnBtIHBhY2thZ2UgbmFtZS4iKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb247CiAgICB2YXIgVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUYXJnZXQgbmFtZSBhbHJlYWR5IGV4aXN0cy4iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdmFsaWRhdGVOYW1lKGRlZmluaXRpb24ubmFtZSk7CiAgICAgICAgY29uc3QgdGFyZ2V0ID0gewogICAgICAgICAgYnVpbGRlcjogZGVmaW5pdGlvbi5idWlsZGVyLAogICAgICAgICAgb3B0aW9uczogZGVmaW5pdGlvbi5vcHRpb25zLAogICAgICAgICAgY29uZmlndXJhdGlvbnM6IGRlZmluaXRpb24uY29uZmlndXJhdGlvbnMsCiAgICAgICAgICBkZWZhdWx0Q29uZmlndXJhdGlvbjogZGVmaW5pdGlvbi5kZWZhdWx0Q29uZmlndXJhdGlvbgogICAgICAgIH07CiAgICAgICAgc3VwZXIuc2V0KGRlZmluaXRpb24ubmFtZSwgdGFyZ2V0KTsKICAgICAgICByZXR1cm4gdGFyZ2V0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlRhcmdldCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBUYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvcGF0aC5qcwp2YXIgcmVxdWlyZV9wYXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL3BhdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhdGggPSBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSBleHBvcnRzMi5QYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRQYXRoRXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3BsaXQgPSBzcGxpdDsKICAgIGV4cG9ydHMyLmV4dG5hbWUgPSBleHRuYW1lOwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSBiYXNlbmFtZTsKICAgIGV4cG9ydHMyLmRpcm5hbWUgPSBkaXJuYW1lOwogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGU7CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgZXhwb3J0czIucmVzb2x2ZSA9IHJlc29sdmU7CiAgICBleHBvcnRzMi5mcmFnbWVudCA9IGZyYWdtZW50OwogICAgZXhwb3J0czIucmVzZXROb3JtYWxpemVDYWNoZSA9IHJlc2V0Tm9ybWFsaXplQ2FjaGU7CiAgICBleHBvcnRzMi5ub3JtYWxpemUgPSBub3JtYWxpemU7CiAgICBleHBvcnRzMi5ub0NhY2hlTm9ybWFsaXplID0gbm9DYWNoZU5vcm1hbGl6ZTsKICAgIGV4cG9ydHMyLmFzV2luZG93c1BhdGggPSBhc1dpbmRvd3NQYXRoOwogICAgZXhwb3J0czIuYXNQb3NpeFBhdGggPSBhc1Bvc2l4UGF0aDsKICAgIGV4cG9ydHMyLmdldFN5c3RlbVBhdGggPSBnZXRTeXN0ZW1QYXRoOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBJbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IGlzIGludmFsaWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IEludmFsaWRQYXRoRXhjZXB0aW9uOwogICAgdmFyIFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IG11c3QgYmUgYWJzb2x1dGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb247CiAgICB2YXIgUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBjYW5ub3QgYmUgbWFkZSBhIGZyYWdtZW50LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbjsKICAgIGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSAiLyI7CiAgICBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXA7CiAgICBmdW5jdGlvbiBzcGxpdChwYXRoMikgewogICAgICBjb25zdCBmcmFnbWVudHMgPSBwYXRoMi5zcGxpdChleHBvcnRzMi5Ob3JtYWxpemVkU2VwKS5tYXAoKHgpID0+IGZyYWdtZW50KHgpKTsKICAgICAgaWYgKGZyYWdtZW50c1tmcmFnbWVudHMubGVuZ3RoIC0gMV0ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgZnJhZ21lbnRzLnBvcCgpOwogICAgICB9CiAgICAgIHJldHVybiBmcmFnbWVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBleHRuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGJhc2UgPSBiYXNlbmFtZShwYXRoMik7CiAgICAgIGNvbnN0IGkgPSBiYXNlLmxhc3RJbmRleE9mKCIuIik7CiAgICAgIGlmIChpIDwgMSkgewogICAgICAgIHJldHVybiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYmFzZS5zbGljZShpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYmFzZW5hbWUocGF0aDIpIHsKICAgICAgY29uc3QgaSA9IHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICBpZiAoaSA9PSAtMSkgewogICAgICAgIHJldHVybiBmcmFnbWVudChwYXRoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGZyYWdtZW50KHBhdGgyLnNsaWNlKHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApICsgMSkpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkaXJuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGluZGV4ID0gcGF0aDIubGFzdEluZGV4T2YoZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgY29uc3QgZW5kSW5kZXggPSBpbmRleCA9PT0gMCA/IDEgOiBpbmRleDsKICAgICAgcmV0dXJuIG5vcm1hbGl6ZShwYXRoMi5zbGljZSgwLCBlbmRJbmRleCkpOwogICAgfQogICAgZnVuY3Rpb24gam9pbjIocDEsIC4uLm90aGVycykgewogICAgICBpZiAob3RoZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICByZXR1cm4gbm9ybWFsaXplKChwMSA/IHAxICsgZXhwb3J0czIuTm9ybWFsaXplZFNlcCA6ICIiKSArIG90aGVycy5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gcDE7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGlzQWJzb2x1dGUocCkgewogICAgICByZXR1cm4gcC5zdGFydHNXaXRoKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgfQogICAgZnVuY3Rpb24gcmVsYXRpdmUoZnJvbSwgdG8pIHsKICAgICAgaWYgKCFpc0Fic29sdXRlKGZyb20pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbihmcm9tKTsKICAgICAgfQogICAgICBpZiAoIWlzQWJzb2x1dGUodG8pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbih0byk7CiAgICAgIH0KICAgICAgbGV0IHA7CiAgICAgIGlmIChmcm9tID09IHRvKSB7CiAgICAgICAgcCA9ICIiOwogICAgICB9IGVsc2UgewogICAgICAgIGNvbnN0IHNwbGl0RnJvbSA9IHNwbGl0KGZyb20pOwogICAgICAgIGNvbnN0IHNwbGl0VG8gPSBzcGxpdCh0byk7CiAgICAgICAgd2hpbGUgKHNwbGl0RnJvbS5sZW5ndGggPiAwICYmIHNwbGl0VG8ubGVuZ3RoID4gMCAmJiBzcGxpdEZyb21bMF0gPT0gc3BsaXRUb1swXSkgewogICAgICAgICAgc3BsaXRGcm9tLnNoaWZ0KCk7CiAgICAgICAgICBzcGxpdFRvLnNoaWZ0KCk7CiAgICAgICAgfQogICAgICAgIGlmIChzcGxpdEZyb20ubGVuZ3RoID09IDApIHsKICAgICAgICAgIHAgPSBzcGxpdFRvLmpvaW4oZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHAgPSBzcGxpdEZyb20ubWFwKCgpID0+ICIuLiIpLmNvbmNhdChzcGxpdFRvKS5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbm9ybWFsaXplKHApOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShwMSwgcDIpIHsKICAgICAgaWYgKGlzQWJzb2x1dGUocDIpKSB7CiAgICAgICAgcmV0dXJuIHAyOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBqb2luMihwMSwgcDIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBmcmFnbWVudChwYXRoMikgewogICAgICBpZiAocGF0aDIuaW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSAhPSAtMSkgewogICAgICAgIHRocm93IG5ldyBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbihwYXRoMik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGgyOwogICAgfQogICAgdmFyIG5vcm1hbGl6ZWRDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICBmdW5jdGlvbiByZXNldE5vcm1hbGl6ZUNhY2hlKCkgewogICAgICBub3JtYWxpemVkQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGxldCBtYXliZVBhdGggPSBub3JtYWxpemVkQ2FjaGUuZ2V0KHBhdGgyKTsKICAgICAgaWYgKCFtYXliZVBhdGgpIHsKICAgICAgICBtYXliZVBhdGggPSBub0NhY2hlTm9ybWFsaXplKHBhdGgyKTsKICAgICAgICBub3JtYWxpemVkQ2FjaGUuc2V0KHBhdGgyLCBtYXliZVBhdGgpOwogICAgICB9CiAgICAgIHJldHVybiBtYXliZVBhdGg7CiAgICB9CiAgICBmdW5jdGlvbiBub0NhY2hlTm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGlmIChwYXRoMiA9PSAiIiB8fCBwYXRoMiA9PSAiLiIpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0gZWxzZSBpZiAocGF0aDIgPT0gZXhwb3J0czIuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICByZXR1cm4gZXhwb3J0czIuTm9ybWFsaXplZFJvb3Q7CiAgICAgIH0KICAgICAgY29uc3Qgb3JpZ2luYWwgPSBwYXRoMjsKICAgICAgaWYgKHBhdGgyLm1hdGNoKC9eW0EtWl06Wy9cXF0vaSkpIHsKICAgICAgICBwYXRoMiA9ICJcXCIgKyBwYXRoMlswXS50b1VwcGVyQ2FzZSgpICsgIlxcIiArIHBhdGgyLnNsaWNlKDMpOwogICAgICB9CiAgICAgIGNvbnN0IHAgPSBwYXRoMi5zcGxpdCgvWy9cXF0vZyk7CiAgICAgIGxldCByZWxhdGl2ZTIgPSBmYWxzZTsKICAgICAgbGV0IGkgPSAxOwogICAgICBpZiAocFswXSAhPSAiIikgewogICAgICAgIHAudW5zaGlmdCgiLiIpOwogICAgICAgIHJlbGF0aXZlMiA9IHRydWU7CiAgICAgIH0KICAgICAgd2hpbGUgKGkgPCBwLmxlbmd0aCkgewogICAgICAgIGlmIChwW2ldID09ICIuIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIGlmIChwW2ldID09ICIuLiIpIHsKICAgICAgICAgIGlmIChpIDwgMiAmJiAhcmVsYXRpdmUyKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEV4Y2VwdGlvbihvcmlnaW5hbCk7CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPj0gMiAmJiBwW2kgLSAxXSAhPSAiLi4iKSB7CiAgICAgICAgICAgIHAuc3BsaWNlKGkgLSAxLCAyKTsKICAgICAgICAgICAgaS0tOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocFtpXSA9PSAiIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGkrKzsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHAubGVuZ3RoID09IDEpIHsKICAgICAgICByZXR1cm4gcFswXSA9PSAiIiA/IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgOiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocFswXSA9PSAiLiIpIHsKICAgICAgICAgIHAuc2hpZnQoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHAuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgfQogICAgfQogICAgdmFyIHBhdGggPSAoc3RyaW5nczMsIC4uLnZhbHVlcykgPT4gewogICAgICByZXR1cm4gbm9ybWFsaXplKFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykpOwogICAgfTsKICAgIGV4cG9ydHMyLnBhdGggPSBwYXRoOwogICAgZnVuY3Rpb24gYXNXaW5kb3dzUGF0aChwYXRoMikgewogICAgICBjb25zdCBkcml2ZSA9IHBhdGgyLm1hdGNoKC9eXC8oXHcpKD86XC8oLiopKT8kLyk7CiAgICAgIGlmIChkcml2ZSkgewogICAgICAgIGNvbnN0IHN1YlBhdGggPSBkcml2ZVsyXSA/IGRyaXZlWzJdLnJlcGxhY2UoL1wvL2csICJcXCIpIDogIiI7CiAgICAgICAgcmV0dXJuIGAke2RyaXZlWzFdfTpcXCR7c3ViUGF0aH1gOwogICAgICB9CiAgICAgIHJldHVybiBwYXRoMi5yZXBsYWNlKC9cLy9nLCAiXFwiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzUG9zaXhQYXRoKHBhdGgyKSB7CiAgICAgIHJldHVybiBwYXRoMjsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFN5c3RlbVBhdGgocGF0aDIpIHsKICAgICAgaWYgKHByb2Nlc3MucGxhdGZvcm0uc3RhcnRzV2l0aCgid2luMzIiKSkgewogICAgICAgIHJldHVybiBhc1dpbmRvd3NQYXRoKHBhdGgyKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYXNQb3NpeFBhdGgocGF0aDIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlcjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9idWZmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0cmluZ1RvRmlsZUJ1ZmZlciA9IHN0cmluZ1RvRmlsZUJ1ZmZlcjsKICAgIGV4cG9ydHMyLmZpbGVCdWZmZXJUb1N0cmluZyA9IGZpbGVCdWZmZXJUb1N0cmluZzsKICAgIHZhciBub2RlX3V0aWxfMSA9IHJlcXVpcmUoIm5vZGU6dXRpbCIpOwogICAgZnVuY3Rpb24gc3RyaW5nVG9GaWxlQnVmZmVyKHN0cjIpIHsKICAgICAgcmV0dXJuIG5ldyBub2RlX3V0aWxfMS5UZXh0RW5jb2RlcigpLmVuY29kZShzdHIyKS5idWZmZXI7CiAgICB9CiAgICBmdW5jdGlvbiBmaWxlQnVmZmVyVG9TdHJpbmcoZmlsZUJ1ZmZlcikgewogICAgICBpZiAoZmlsZUJ1ZmZlci50b1N0cmluZy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZmlsZUJ1ZmZlci50b1N0cmluZygidXRmLTgiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IG5vZGVfdXRpbF8xLlRleHREZWNvZGVyKCJ1dGYtOCIpLmRlY29kZShuZXcgVWludDhBcnJheShmaWxlQnVmZmVyKSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RXYXRjaEV2ZW50VHlwZSA9IHZvaWQgMDsKICAgIHZhciBIb3N0V2F0Y2hFdmVudFR5cGU7CiAgICAoZnVuY3Rpb24oSG9zdFdhdGNoRXZlbnRUeXBlMikgewogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNoYW5nZWQiXSA9IDBdID0gIkNoYW5nZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNyZWF0ZWQiXSA9IDFdID0gIkNyZWF0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkRlbGV0ZWQiXSA9IDJdID0gIkRlbGV0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIlJlbmFtZWQiXSA9IDNdID0gIlJlbmFtZWQiOwogICAgfSkoSG9zdFdhdGNoRXZlbnRUeXBlIHx8IChleHBvcnRzMi5Ib3N0V2F0Y2hFdmVudFR5cGUgPSBIb3N0V2F0Y2hFdmVudFR5cGUgPSB7fSkpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qcwp2YXIgcmVxdWlyZV9tZW1vcnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9tZW1vcnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNpbXBsZU1lbW9yeUhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTIoKTsKICAgIHZhciBTaW1wbGVNZW1vcnlIb3N0ID0gY2xhc3MgewogICAgICBfY2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfd2F0Y2hlcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfbmV3RGlyU3RhdHMoKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGluc3BlY3QoKSB7CiAgICAgICAgICAgIHJldHVybiAiPERpcmVjdG9yeT4iOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRmlsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBzaXplOiAwLAogICAgICAgICAgYXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY3RpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgbXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgYmlydGh0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQ6IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICAgIF9uZXdGaWxlU3RhdHMoY29udGVudCwgb2xkU3RhdHMpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgaW5zcGVjdCgpIHsKICAgICAgICAgICAgcmV0dXJuIGA8RmlsZSBzaXplKCR7Y29udGVudC5ieXRlTGVuZ3RofSk+YDsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0ZpbGUoKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9LAogICAgICAgICAgc2l6ZTogY29udGVudC5ieXRlTGVuZ3RoLAogICAgICAgICAgYXRpbWU6IG9sZFN0YXRzID8gb2xkU3RhdHMuYXRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGN0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIG10aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGJpcnRodGltZTogb2xkU3RhdHMgPyBvbGRTdGF0cy5iaXJ0aHRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQKICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHRoaXMuX2NhY2hlLnNldCgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKSwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgIH0KICAgICAgX3RvQWJzb2x1dGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcGF0aF8xLmlzQWJzb2x1dGUpKHBhdGgpID8gcGF0aCA6ICgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfdXBkYXRlV2F0Y2hlcnMocGF0aCwgdHlwZTIpIHsKICAgICAgICBjb25zdCB0aW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCk7CiAgICAgICAgbGV0IGN1cnJlbnRQYXRoID0gcGF0aDsKICAgICAgICBsZXQgcGFyZW50ID0gbnVsbDsKICAgICAgICBpZiAodGhpcy5fd2F0Y2hlcnMuc2l6ZSA9PSAwKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1heWJlV2F0Y2hlciA9IHRoaXMuX3dhdGNoZXJzLmdldChjdXJyZW50UGF0aCk7CiAgICAgICAgaWYgKG1heWJlV2F0Y2hlcikgewogICAgICAgICAgbWF5YmVXYXRjaGVyLmZvckVhY2goKHdhdGNoZXIpID0+IHsKICAgICAgICAgICAgY29uc3QgW29wdGlvbnMsIHN1YmplY3RdID0gd2F0Y2hlcjsKICAgICAgICAgICAgc3ViamVjdC5uZXh0KHsgcGF0aCwgdGltZSwgdHlwZTogdHlwZTIgfSk7CiAgICAgICAgICAgIGlmICghb3B0aW9ucy5wZXJzaXN0ZW50ICYmIHR5cGUyID09IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKSB7CiAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHRoaXMuX3dhdGNoZXJzLmRlbGV0ZShjdXJyZW50UGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBkbyB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IHBhcmVudCAhPT0gbnVsbCA/IHBhcmVudCA6IGN1cnJlbnRQYXRoOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhdGhfMS5kaXJuYW1lKShjdXJyZW50UGF0aCk7CiAgICAgICAgICBjb25zdCBtYXliZVdhdGNoZXIyID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KGN1cnJlbnRQYXRoKTsKICAgICAgICAgIGlmIChtYXliZVdhdGNoZXIyKSB7CiAgICAgICAgICAgIG1heWJlV2F0Y2hlcjIuZm9yRWFjaCgod2F0Y2hlcikgPT4gewogICAgICAgICAgICAgIGNvbnN0IFtvcHRpb25zLCBzdWJqZWN0XSA9IHdhdGNoZXI7CiAgICAgICAgICAgICAgaWYgKCFvcHRpb25zLnJlY3Vyc2l2ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdWJqZWN0Lm5leHQoeyBwYXRoLCB0aW1lLCB0eXBlOiB0eXBlMiB9KTsKICAgICAgICAgICAgICBpZiAoIW9wdGlvbnMucGVyc2lzdGVudCAmJiB0eXBlMiA9PSBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZCkgewogICAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgdGhpcy5fd2F0Y2hlcnMuZGVsZXRlKGN1cnJlbnRQYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKHBhcmVudCAhPSBjdXJyZW50UGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaXN0IG9mIHByb3RlY3RlZCBtZXRob2RzIHRoYXQgZ2l2ZSBkaXJlY3QgYWNjZXNzIG91dHNpZGUgdGhlIG9ic2VydmFibGVzIHRvIHRoZSBjYWNoZQogICAgICAgKiBhbmQgaW50ZXJuYWwgc3RhdGVzLgogICAgICAgKi8KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBvbGQgPSB0aGlzLl9jYWNoZS5nZXQocGF0aCk7CiAgICAgICAgaWYgKG9sZCAmJiBvbGQuaXNEaXJlY3RvcnkoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgbGV0IGN1cnIgPSAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGZyIG9mIGZyYWdtZW50cykgewogICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChmcik7CiAgICAgICAgICBpZiAobWF5YmVTdGF0cykgewogICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNGaWxlRXhjZXB0aW9uKGN1cnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoY3VyciwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHN0YXRzID0gdGhpcy5fbmV3RmlsZVN0YXRzKGNvbnRlbnQsIG9sZCk7CiAgICAgICAgdGhpcy5fY2FjaGUuc2V0KHBhdGgsIHN0YXRzKTsKICAgICAgICB0aGlzLl91cGRhdGVXYXRjaGVycyhwYXRoLCBvbGQgPyBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZCA6IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkKTsKICAgICAgfQogICAgICBfcmVhZChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChwYXRoKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAobWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAoIW1heWJlU3RhdHMuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIG1heWJlU3RhdHMuY29udGVudDsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IFtjYWNoZVBhdGhdIG9mIHRoaXMuX2NhY2hlLmVudHJpZXMoKSkgewogICAgICAgICAgICBpZiAoY2FjaGVQYXRoLnN0YXJ0c1dpdGgocGF0aCArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSB8fCBjYWNoZVBhdGggPT09IHBhdGgpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVQYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUocGF0aCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKTsKICAgICAgfQogICAgICBfcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgZnJvbSA9IHRoaXMuX3RvQWJzb2x1dGUoZnJvbSk7CiAgICAgICAgdG8gPSB0aGlzLl90b0Fic29sdXRlKHRvKTsKICAgICAgICBpZiAoIXRoaXMuX2NhY2hlLmhhcyhmcm9tKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oZnJvbSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jYWNoZS5oYXModG8pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbih0byk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pc0RpcmVjdG9yeShmcm9tKSkgewogICAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKGZyb20gKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fY2FjaGUuZ2V0KHBhdGgpOwogICAgICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoKDAsIHBhdGhfMS5qb2luKSh0bywgcGF0aF8xLk5vcm1hbGl6ZWRTZXAsIHBhdGguc2xpY2UoZnJvbS5sZW5ndGgpKSwgY29udGVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9jYWNoZS5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSAoMCwgcGF0aF8xLnNwbGl0KSh0byk7CiAgICAgICAgICAgIGNvbnN0IG5ld0RpcmVjdG9yaWVzID0gW107CiAgICAgICAgICAgIGxldCBjdXJyID0gKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIik7CiAgICAgICAgICAgIGZvciAoY29uc3QgZnIgb2YgZnJhZ21lbnRzKSB7CiAgICAgICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgICAgIGNvbnN0IG1heWJlU3RhdHMgPSB0aGlzLl9jYWNoZS5nZXQoZnIpOwogICAgICAgICAgICAgIGlmIChtYXliZVN0YXRzKSB7CiAgICAgICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihjdXJyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbmV3RGlyZWN0b3JpZXMucHVzaChjdXJyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIChjb25zdCBuZXdEaXJlY3Rvcnkgb2YgbmV3RGlyZWN0b3JpZXMpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQobmV3RGlyZWN0b3J5LCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoZnJvbSk7CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldCh0bywgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKGZyb20sIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5SZW5hbWVkKTsKICAgICAgfQogICAgICBfbGlzdChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRmlsZShwYXRoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0ZpbGVFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZyYWdtZW50cyA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgaWYgKHBhdGggIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgZm9yIChjb25zdCBwIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocC5zdGFydHNXaXRoKHBhdGggKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICByZXN1bHQuYWRkKCgwLCBwYXRoXzEuc3BsaXQpKHApW2ZyYWdtZW50cy5sZW5ndGhdKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwLnN0YXJ0c1dpdGgocGF0aF8xLk5vcm1hbGl6ZWRTZXApICYmIHAgIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgICAgIHJlc3VsdC5hZGQoKDAsIHBhdGhfMS5zcGxpdCkocClbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBbLi4ucmVzdWx0XTsKICAgICAgfQogICAgICBfZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gISF0aGlzLl9jYWNoZS5nZXQodGhpcy5fdG9BYnNvbHV0ZShwYXRoKSk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIHJldHVybiBtYXliZVN0YXRzID8gbWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpIDogZmFsc2U7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0cyA/IG1heWJlU3RhdHMuaXNGaWxlKCkgOiBmYWxzZTsKICAgICAgfQogICAgICBfc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTdGF0czsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgICAgbGV0IG1heWJlV2F0Y2hlckFycmF5ID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghbWF5YmVXYXRjaGVyQXJyYXkpIHsKICAgICAgICAgIG1heWJlV2F0Y2hlckFycmF5ID0gW107CiAgICAgICAgICB0aGlzLl93YXRjaGVycy5zZXQocGF0aCwgbWF5YmVXYXRjaGVyQXJyYXkpOwogICAgICAgIH0KICAgICAgICBtYXliZVdhdGNoZXJBcnJheS5wdXNoKFtvcHRpb25zIHx8IHt9LCBzdWJqZWN0XSk7CiAgICAgICAgcmV0dXJuIHN1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fcmVhZChwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KGNvbnRlbnQpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX2RlbGV0ZShwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9saXN0KHBhdGgpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9leGlzdHMocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5faXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2lzRmlsZShwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX3N0YXQocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl93YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgIHRoaXMuX3dhdGNoZXJzLmNsZWFyKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TaW1wbGVNZW1vcnlIb3N0ID0gU2ltcGxlTWVtb3J5SG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzCnZhciByZXF1aXJlX3N5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TeW5jRGVsZWdhdGVIb3N0ID0gZXhwb3J0czIuU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICBzdXBlcihgRXhwZWN0ZWQgYSBzeW5jaHJvbm91cyBkZWxlZ2F0ZSBidXQgZ290IGFuIGFzeW5jaHJvbm91cyBvbmUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb247CiAgICB2YXIgU3luY0RlbGVnYXRlSG9zdCA9IGNsYXNzIHsKICAgICAgX2RlbGVnYXRlOwogICAgICBjb25zdHJ1Y3RvcihfZGVsZWdhdGUpIHsKICAgICAgICB0aGlzLl9kZWxlZ2F0ZSA9IF9kZWxlZ2F0ZTsKICAgICAgICBpZiAoIV9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXMuc3luY2hyb25vdXMpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RvU3luY0NhbGwob2JzZXJ2YWJsZSkgewogICAgICAgIGxldCBjb21wbGV0ZWQgPSBmYWxzZTsKICAgICAgICBsZXQgcmVzdWx0ID0gdm9pZCAwOwogICAgICAgIGxldCBlcnJvclJlc3VsdCA9IHZvaWQgMDsKICAgICAgICBvYnNlcnZhYmxlLnN1YnNjcmliZSgoeCkgPT4gcmVzdWx0ID0geCwgKGVycikgPT4gZXJyb3JSZXN1bHQgPSBlcnIsICgpID0+IGNvbXBsZXRlZCA9IHRydWUpOwogICAgICAgIGlmIChlcnJvclJlc3VsdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBlcnJvclJlc3VsdDsKICAgICAgICB9CiAgICAgICAgaWYgKCFjb21wbGV0ZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXM7CiAgICAgIH0KICAgICAgZ2V0IGRlbGVnYXRlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZTsKICAgICAgfQogICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUud3JpdGUocGF0aCwgY29udGVudCkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLnJlYWQocGF0aCkpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuZGVsZXRlKHBhdGgpKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUoZnJvbSwgdG8pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmV4aXN0cyhwYXRoKSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRmlsZShwYXRoKSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgc3RhdC4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbChyZXN1bHQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlN5bmNEZWxlZ2F0ZUhvc3QgPSBTeW5jRGVsZWdhdGVIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMKdmFyIHJlcXVpcmVfdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRlc3RIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIGJ1ZmZlcl8xID0gcmVxdWlyZV9idWZmZXIyKCk7CiAgICB2YXIgbWVtb3J5XzEgPSByZXF1aXJlX21lbW9yeSgpOwogICAgdmFyIHN5bmNfMSA9IHJlcXVpcmVfc3luYygpOwogICAgdmFyIFRlc3RIb3N0ID0gY2xhc3MgX1Rlc3RIb3N0IGV4dGVuZHMgbWVtb3J5XzEuU2ltcGxlTWVtb3J5SG9zdCB7CiAgICAgIF9yZWNvcmRzID0gW107CiAgICAgIF9zeW5jID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IobWFwMiA9IHt9KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBmb3IgKGNvbnN0IGZpbGVQYXRoIG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1hcDIpKSB7CiAgICAgICAgICB0aGlzLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoZmlsZVBhdGgpLCAoMCwgYnVmZmVyXzEuc3RyaW5nVG9GaWxlQnVmZmVyKShtYXAyW2ZpbGVQYXRoXSkpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgcmVjb3JkcygpIHsKICAgICAgICByZXR1cm4gWy4uLnRoaXMuX3JlY29yZHNdOwogICAgICB9CiAgICAgIGNsZWFyUmVjb3JkcygpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzID0gW107CiAgICAgIH0KICAgICAgZ2V0IGZpbGVzKCkgewogICAgICAgIGNvbnN0IHN5bmMgPSB0aGlzLnN5bmM7CiAgICAgICAgZnVuY3Rpb24gX3Zpc2l0KHApIHsKICAgICAgICAgIHJldHVybiBzeW5jLmxpc3QocCkubWFwKChmcmFnbWVudCkgPT4gKDAsIHBhdGhfMS5qb2luKShwLCBmcmFnbWVudCkpLnJlZHVjZSgoZmlsZXMsIHBhdGgpID0+IHsKICAgICAgICAgICAgaWYgKHN5bmMuaXNEaXJlY3RvcnkocGF0aCkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmlsZXMuY29uY2F0KF92aXNpdChwYXRoKSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpbGVzLmNvbmNhdChwYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3Zpc2l0KCgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIpKTsKICAgICAgfQogICAgICBnZXQgc3luYygpIHsKICAgICAgICBpZiAoIXRoaXMuX3N5bmMpIHsKICAgICAgICAgIHRoaXMuX3N5bmMgPSBuZXcgc3luY18xLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9zeW5jOwogICAgICB9CiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IG5ld0hvc3QgPSBuZXcgX1Rlc3RIb3N0KCk7CiAgICAgICAgbmV3SG9zdC5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICByZXR1cm4gbmV3SG9zdDsKICAgICAgfQogICAgICAvLyBPdmVycmlkZSBwYXJlbnRzIGZ1bmN0aW9ucyB0byBrZWVwIGEgcmVjb3JkIG9mIGFsbCBvcGVyYXRvcnMgdGhhdCB3ZXJlIGRvbmUuCiAgICAgIF93cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndyaXRlIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dyaXRlKHBhdGgsIGNvbnRlbnQpOwogICAgICB9CiAgICAgIF9yZWFkKHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVhZCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIF9kZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJkZWxldGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIF9yZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVuYW1lIiwgZnJvbSwgdG8gfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIF9saXN0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAibGlzdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9saXN0KHBhdGgpOwogICAgICB9CiAgICAgIF9leGlzdHMocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJleGlzdHMiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIF9pc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImlzRGlyZWN0b3J5IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX2lzRGlyZWN0b3J5KHBhdGgpOwogICAgICB9CiAgICAgIF9pc0ZpbGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJpc0ZpbGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIF9zdGF0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAic3RhdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIF93YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndhdGNoIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dhdGNoKHBhdGgsIG9wdGlvbnMpOwogICAgICB9CiAgICAgICR3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCksICgwLCBidWZmZXJfMS5zdHJpbmdUb0ZpbGVCdWZmZXIpKGNvbnRlbnQpKTsKICAgICAgfQogICAgICAkcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBidWZmZXJfMS5maWxlQnVmZmVyVG9TdHJpbmcpKHN1cGVyLl9yZWFkKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICB9CiAgICAgICRsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2xpc3QoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgfQogICAgICAkZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2V4aXN0cygoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0RpcmVjdG9yeSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5UZXN0SG9zdCA9IFRlc3RIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Jlc29sdmVyLmpzCnZhciByZXF1aXJlX3Jlc29sdmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IHZvaWQgMDsKICAgIHZhciBSZXNvbHZlckhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUud3JpdGUodGhpcy5fcmVzb2x2ZShwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlYWQodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZGVsZXRlKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUodGhpcy5fcmVzb2x2ZShmcm9tKSwgdGhpcy5fcmVzb2x2ZSh0bykpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmV4aXN0cyh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRmlsZSh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuc3RhdCh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaCh0aGlzLl9yZXNvbHZlKHBhdGgpLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IFJlc29sdmVySG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9hbGlhcy5qcwp2YXIgcmVxdWlyZV9hbGlhcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBBbGlhc0hvc3QgPSBjbGFzcyBleHRlbmRzIHJlc29sdmVyXzEuUmVzb2x2ZXJIb3N0IHsKICAgICAgX2FsaWFzZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfcmVzb2x2ZShwYXRoKSB7CiAgICAgICAgbGV0IG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwYXRoKTsKICAgICAgICBjb25zdCBzcCA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlbWFpbmluZyA9IFtdOwogICAgICAgIHdoaWxlICghbWF5YmVBbGlhcyAmJiBzcC5sZW5ndGggPiAwKSB7CiAgICAgICAgICBjb25zdCBwID0gKDAsIHBhdGhfMS5qb2luKShwYXRoXzEuTm9ybWFsaXplZFJvb3QsIC4uLnNwKTsKICAgICAgICAgIG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwKTsKICAgICAgICAgIGlmIChtYXliZUFsaWFzKSB7CiAgICAgICAgICAgIG1heWJlQWxpYXMgPSAoMCwgcGF0aF8xLmpvaW4pKG1heWJlQWxpYXMsIC4uLnJlbWFpbmluZyk7CiAgICAgICAgICB9CiAgICAgICAgICByZW1haW5pbmcudW5zaGlmdChzcC5wb3AoKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUFsaWFzIHx8IHBhdGg7CiAgICAgIH0KICAgICAgZ2V0IGFsaWFzZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FsaWFzZXM7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSBBbGlhc0hvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzCnZhciByZXF1aXJlX2NyZWF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2NyZWF0ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlU3luY0hvc3QgPSBjcmVhdGVTeW5jSG9zdDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgZnVuY3Rpb24gd3JhcEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcikgPT4gewogICAgICAgIHN1YnNjcmliZXIubmV4dChhY3Rpb24oKSk7CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNyZWF0ZVN5bmNIb3N0KGhhbmRsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBjbGFzcyB7CiAgICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICAgIHJldHVybiB7IHN5bmNocm9ub3VzOiB0cnVlIH07CiAgICAgICAgfQogICAgICAgIHJlYWQocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5yZWFkKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmxpc3QocGF0aCkpOwogICAgICAgIH0KICAgICAgICBleGlzdHMocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5leGlzdHMocGF0aCkpOwogICAgICAgIH0KICAgICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuaXNGaWxlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnN0YXQocGF0aCkpOwogICAgICAgIH0KICAgICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLndyaXRlKHBhdGgsIGNvbnRlbnQpKTsKICAgICAgICB9CiAgICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuZGVsZXRlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnJlbmFtZShmcm9tLCB0bykpOwogICAgICAgIH0KICAgICAgICB3YXRjaCgpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgfSgpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBFbXB0eSA9IGNsYXNzIHsKICAgICAgY2FwYWJpbGl0aWVzID0gewogICAgICAgIHN5bmNocm9ub3VzOiB0cnVlCiAgICAgIH07CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoW10pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgIH0KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKG51bGwpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRW1wdHkgPSBFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9jb25zdGFudHMuanMKdmFyIHJlcXVpcmVfY29uc3RhbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvY29uc3RhbnRzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFdJTl9TTEFTSCA9ICJcXFxcLyI7CiAgICB2YXIgV0lOX05PX1NMQVNIID0gYFteJHtXSU5fU0xBU0h9XWA7CiAgICB2YXIgRE9UX0xJVEVSQUwgPSAiXFwuIjsKICAgIHZhciBQTFVTX0xJVEVSQUwgPSAiXFwrIjsKICAgIHZhciBRTUFSS19MSVRFUkFMID0gIlxcPyI7CiAgICB2YXIgU0xBU0hfTElURVJBTCA9ICJcXC8iOwogICAgdmFyIE9ORV9DSEFSID0gIig/PS4pIjsKICAgIHZhciBRTUFSSyA9ICJbXi9dIjsKICAgIHZhciBFTkRfQU5DSE9SID0gYCg/OiR7U0xBU0hfTElURVJBTH18JClgOwogICAgdmFyIFNUQVJUX0FOQ0hPUiA9IGAoPzpefCR7U0xBU0hfTElURVJBTH0pYDsKICAgIHZhciBET1RTX1NMQVNIID0gYCR7RE9UX0xJVEVSQUx9ezEsMn0ke0VORF9BTkNIT1J9YDsKICAgIHZhciBOT19ET1QgPSBgKD8hJHtET1RfTElURVJBTH0pYDsKICAgIHZhciBOT19ET1RTID0gYCg/ISR7U1RBUlRfQU5DSE9SfSR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBOT19ET1RfU0xBU0ggPSBgKD8hJHtET1RfTElURVJBTH17MCwxfSR7RU5EX0FOQ0hPUn0pYDsKICAgIHZhciBOT19ET1RTX1NMQVNIID0gYCg/ISR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBRTUFSS19OT19ET1QgPSBgW14uJHtTTEFTSF9MSVRFUkFMfV1gOwogICAgdmFyIFNUQVIgPSBgJHtRTUFSS30qP2A7CiAgICB2YXIgU0VQID0gIi8iOwogICAgdmFyIFBPU0lYX0NIQVJTID0gewogICAgICBET1RfTElURVJBTCwKICAgICAgUExVU19MSVRFUkFMLAogICAgICBRTUFSS19MSVRFUkFMLAogICAgICBTTEFTSF9MSVRFUkFMLAogICAgICBPTkVfQ0hBUiwKICAgICAgUU1BUkssCiAgICAgIEVORF9BTkNIT1IsCiAgICAgIERPVFNfU0xBU0gsCiAgICAgIE5PX0RPVCwKICAgICAgTk9fRE9UUywKICAgICAgTk9fRE9UX1NMQVNILAogICAgICBOT19ET1RTX1NMQVNILAogICAgICBRTUFSS19OT19ET1QsCiAgICAgIFNUQVIsCiAgICAgIFNUQVJUX0FOQ0hPUiwKICAgICAgU0VQCiAgICB9OwogICAgdmFyIFdJTkRPV1NfQ0hBUlMgPSB7CiAgICAgIC4uLlBPU0lYX0NIQVJTLAogICAgICBTTEFTSF9MSVRFUkFMOiBgWyR7V0lOX1NMQVNIfV1gLAogICAgICBRTUFSSzogV0lOX05PX1NMQVNILAogICAgICBTVEFSOiBgJHtXSU5fTk9fU0xBU0h9Kj9gLAogICAgICBET1RTX1NMQVNIOiBgJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpYCwKICAgICAgTk9fRE9UOiBgKD8hJHtET1RfTElURVJBTH0pYCwKICAgICAgTk9fRE9UUzogYCg/ISg/Ol58WyR7V0lOX1NMQVNIfV0pJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIE5PX0RPVF9TTEFTSDogYCg/ISR7RE9UX0xJVEVSQUx9ezAsMX0oPzpbJHtXSU5fU0xBU0h9XXwkKSlgLAogICAgICBOT19ET1RTX1NMQVNIOiBgKD8hJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIFFNQVJLX05PX0RPVDogYFteLiR7V0lOX1NMQVNIfV1gLAogICAgICBTVEFSVF9BTkNIT1I6IGAoPzpefFske1dJTl9TTEFTSH1dKWAsCiAgICAgIEVORF9BTkNIT1I6IGAoPzpbJHtXSU5fU0xBU0h9XXwkKWAsCiAgICAgIFNFUDogIlxcIgogICAgfTsKICAgIHZhciBQT1NJWF9SRUdFWF9TT1VSQ0UgPSB7CiAgICAgIGFsbnVtOiAiYS16QS1aMC05IiwKICAgICAgYWxwaGE6ICJhLXpBLVoiLAogICAgICBhc2NpaTogIlxceDAwLVxceDdGIiwKICAgICAgYmxhbms6ICIgXFx0IiwKICAgICAgY250cmw6ICJcXHgwMC1cXHgxRlxceDdGIiwKICAgICAgZGlnaXQ6ICIwLTkiLAogICAgICBncmFwaDogIlxceDIxLVxceDdFIiwKICAgICAgbG93ZXI6ICJhLXoiLAogICAgICBwcmludDogIlxceDIwLVxceDdFICIsCiAgICAgIHB1bmN0OiAiXFwtIVwiIyQlJicoKVxcKissLi86Ozw9Pj9AW1xcXV5fYHt8fX4iLAogICAgICBzcGFjZTogIiBcXHRcXHJcXG5cXHZcXGYiLAogICAgICB1cHBlcjogIkEtWiIsCiAgICAgIHdvcmQ6ICJBLVphLXowLTlfIiwKICAgICAgeGRpZ2l0OiAiQS1GYS1mMC05IgogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgTUFYX0xFTkdUSDogMTAyNCAqIDY0LAogICAgICBQT1NJWF9SRUdFWF9TT1VSQ0UsCiAgICAgIC8vIHJlZ3VsYXIgZXhwcmVzc2lvbnMKICAgICAgUkVHRVhfQkFDS1NMQVNIOiAvXFwoPyFbKis/XiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX05PTl9TUEVDSUFMX0NIQVJTOiAvXlteQCFbXF0uLCQqKz9ee30oKXxcXC9dKy8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlM6IC9bLSorPy5eJHt9KHwpW1xdXS8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRjogLyhcXD8pKChcVykoXDMqKSkvZywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUw6IC8oWy0qKz8uXiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX1JFTU9WRV9CQUNLU0xBU0g6IC8oPzpcWy4qP1teXFxdXF18XFwoPz0uKSkvZywKICAgICAgLy8gUmVwbGFjZSBnbG9icyB3aXRoIGVxdWl2YWxlbnQgcGF0dGVybnMgdG8gcmVkdWNlIHBhcnNpbmcgdGltZS4KICAgICAgUkVQTEFDRU1FTlRTOiB7CiAgICAgICAgIioqKiI6ICIqIiwKICAgICAgICAiKiovKioiOiAiKioiLAogICAgICAgICIqKi8qKi8qKiI6ICIqKiIKICAgICAgfSwKICAgICAgLy8gRGlnaXRzCiAgICAgIENIQVJfMDogNDgsCiAgICAgIC8qIDAgKi8KICAgICAgQ0hBUl85OiA1NywKICAgICAgLyogOSAqLwogICAgICAvLyBBbHBoYWJldCBjaGFycy4KICAgICAgQ0hBUl9VUFBFUkNBU0VfQTogNjUsCiAgICAgIC8qIEEgKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfQTogOTcsCiAgICAgIC8qIGEgKi8KICAgICAgQ0hBUl9VUFBFUkNBU0VfWjogOTAsCiAgICAgIC8qIFogKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfWjogMTIyLAogICAgICAvKiB6ICovCiAgICAgIENIQVJfTEVGVF9QQVJFTlRIRVNFUzogNDAsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzogNDEsCiAgICAgIC8qICkgKi8KICAgICAgQ0hBUl9BU1RFUklTSzogNDIsCiAgICAgIC8qICogKi8KICAgICAgLy8gTm9uLWFscGhhYmV0aWMgY2hhcnMuCiAgICAgIENIQVJfQU1QRVJTQU5EOiAzOCwKICAgICAgLyogJiAqLwogICAgICBDSEFSX0FUOiA2NCwKICAgICAgLyogQCAqLwogICAgICBDSEFSX0JBQ0tXQVJEX1NMQVNIOiA5MiwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NBUlJJQUdFX1JFVFVSTjogMTMsCiAgICAgIC8qIFxyICovCiAgICAgIENIQVJfQ0lSQ1VNRkxFWF9BQ0NFTlQ6IDk0LAogICAgICAvKiBeICovCiAgICAgIENIQVJfQ09MT046IDU4LAogICAgICAvKiA6ICovCiAgICAgIENIQVJfQ09NTUE6IDQ0LAogICAgICAvKiAsICovCiAgICAgIENIQVJfRE9UOiA0NiwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0RPVUJMRV9RVU9URTogMzQsCiAgICAgIC8qICIgKi8KICAgICAgQ0hBUl9FUVVBTDogNjEsCiAgICAgIC8qID0gKi8KICAgICAgQ0hBUl9FWENMQU1BVElPTl9NQVJLOiAzMywKICAgICAgLyogISAqLwogICAgICBDSEFSX0ZPUk1fRkVFRDogMTIsCiAgICAgIC8qIFxmICovCiAgICAgIENIQVJfRk9SV0FSRF9TTEFTSDogNDcsCiAgICAgIC8qIC8gKi8KICAgICAgQ0hBUl9HUkFWRV9BQ0NFTlQ6IDk2LAogICAgICAvKiBgICovCiAgICAgIENIQVJfSEFTSDogMzUsCiAgICAgIC8qICMgKi8KICAgICAgQ0hBUl9IWVBIRU5fTUlOVVM6IDQ1LAogICAgICAvKiAtICovCiAgICAgIENIQVJfTEVGVF9BTkdMRV9CUkFDS0VUOiA2MCwKICAgICAgLyogPCAqLwogICAgICBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6IDEyMywKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQ6IDkxLAogICAgICAvKiBbICovCiAgICAgIENIQVJfTElORV9GRUVEOiAxMCwKICAgICAgLyogXG4gKi8KICAgICAgQ0hBUl9OT19CUkVBS19TUEFDRTogMTYwLAogICAgICAvKiBcdTAwQTAgKi8KICAgICAgQ0hBUl9QRVJDRU5UOiAzNywKICAgICAgLyogJSAqLwogICAgICBDSEFSX1BMVVM6IDQzLAogICAgICAvKiArICovCiAgICAgIENIQVJfUVVFU1RJT05fTUFSSzogNjMsCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9BTkdMRV9CUkFDS0VUOiA2MiwKICAgICAgLyogPiAqLwogICAgICBDSEFSX1JJR0hUX0NVUkxZX0JSQUNFOiAxMjUsCiAgICAgIC8qIH0gKi8KICAgICAgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDogOTMsCiAgICAgIC8qIF0gKi8KICAgICAgQ0hBUl9TRU1JQ09MT046IDU5LAogICAgICAvKiA7ICovCiAgICAgIENIQVJfU0lOR0xFX1FVT1RFOiAzOSwKICAgICAgLyogJyAqLwogICAgICBDSEFSX1NQQUNFOiAzMiwKICAgICAgLyogICAqLwogICAgICBDSEFSX1RBQjogOSwKICAgICAgLyogXHQgKi8KICAgICAgQ0hBUl9VTkRFUlNDT1JFOiA5NSwKICAgICAgLyogXyAqLwogICAgICBDSEFSX1ZFUlRJQ0FMX0xJTkU6IDEyNCwKICAgICAgLyogfCAqLwogICAgICBDSEFSX1pFUk9fV0lEVEhfTk9CUkVBS19TUEFDRTogNjUyNzksCiAgICAgIC8qIFx1RkVGRiAqLwogICAgICAvKioKICAgICAgICogQ3JlYXRlIEVYVEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGV4dGdsb2JDaGFycyhjaGFycykgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICAiISI6IHsgdHlwZTogIm5lZ2F0ZSIsIG9wZW46ICIoPzooPyEoPzoiLCBjbG9zZTogYCkpJHtjaGFycy5TVEFSfSlgIH0sCiAgICAgICAgICAiPyI6IHsgdHlwZTogInFtYXJrIiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKT8iIH0sCiAgICAgICAgICAiKyI6IHsgdHlwZTogInBsdXMiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpKyIgfSwKICAgICAgICAgICIqIjogeyB0eXBlOiAic3RhciIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikqIiB9LAogICAgICAgICAgIkAiOiB7IHR5cGU6ICJhdCIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikiIH0KICAgICAgICB9OwogICAgICB9LAogICAgICAvKioKICAgICAgICogQ3JlYXRlIEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGdsb2JDaGFycyh3aW4zMikgewogICAgICAgIHJldHVybiB3aW4zMiA9PT0gdHJ1ZSA/IFdJTkRPV1NfQ0hBUlMgOiBQT1NJWF9DSEFSUzsKICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciB7CiAgICAgIFJFR0VYX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSUywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUwKICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgZXhwb3J0czIuaXNPYmplY3QgPSAodmFsKSA9PiB2YWwgIT09IG51bGwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIGV4cG9ydHMyLmhhc1JlZ2V4Q2hhcnMgPSAoc3RyMikgPT4gUkVHRVhfU1BFQ0lBTF9DSEFSUy50ZXN0KHN0cjIpOwogICAgZXhwb3J0czIuaXNSZWdleENoYXIgPSAoc3RyMikgPT4gc3RyMi5sZW5ndGggPT09IDEgJiYgZXhwb3J0czIuaGFzUmVnZXhDaGFycyhzdHIyKTsKICAgIGV4cG9ydHMyLmVzY2FwZVJlZ2V4ID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTCwgIlxcJDEiKTsKICAgIGV4cG9ydHMyLnRvUG9zaXhTbGFzaGVzID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9CQUNLU0xBU0gsICIvIik7CiAgICBleHBvcnRzMi5pc1dpbmRvd3MgPSAoKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgbmF2aWdhdG9yICE9PSAidW5kZWZpbmVkIiAmJiBuYXZpZ2F0b3IucGxhdGZvcm0pIHsKICAgICAgICBjb25zdCBwbGF0Zm9ybSA9IG5hdmlnYXRvci5wbGF0Zm9ybS50b0xvd2VyQ2FzZSgpOwogICAgICAgIHJldHVybiBwbGF0Zm9ybSA9PT0gIndpbjMyIiB8fCBwbGF0Zm9ybSA9PT0gIndpbmRvd3MiOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcHJvY2VzcyAhPT0gInVuZGVmaW5lZCIgJiYgcHJvY2Vzcy5wbGF0Zm9ybSkgewogICAgICAgIHJldHVybiBwcm9jZXNzLnBsYXRmb3JtID09PSAid2luMzIiOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH07CiAgICBleHBvcnRzMi5yZW1vdmVCYWNrc2xhc2hlcyA9IChzdHIyKSA9PiB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwgKG1hdGNoKSA9PiB7CiAgICAgICAgcmV0dXJuIG1hdGNoID09PSAiXFwiID8gIiIgOiBtYXRjaDsKICAgICAgfSk7CiAgICB9OwogICAgZXhwb3J0czIuZXNjYXBlTGFzdCA9IChpbnB1dCwgY2hhciwgbGFzdElkeCkgPT4gewogICAgICBjb25zdCBpZHggPSBpbnB1dC5sYXN0SW5kZXhPZihjaGFyLCBsYXN0SWR4KTsKICAgICAgaWYgKGlkeCA9PT0gLTEpIHJldHVybiBpbnB1dDsKICAgICAgaWYgKGlucHV0W2lkeCAtIDFdID09PSAiXFwiKSByZXR1cm4gZXhwb3J0czIuZXNjYXBlTGFzdChpbnB1dCwgY2hhciwgaWR4IC0gMSk7CiAgICAgIHJldHVybiBgJHtpbnB1dC5zbGljZSgwLCBpZHgpfVxcJHtpbnB1dC5zbGljZShpZHgpfWA7CiAgICB9OwogICAgZXhwb3J0czIucmVtb3ZlUHJlZml4ID0gKGlucHV0LCBzdGF0ZSA9IHt9KSA9PiB7CiAgICAgIGxldCBvdXRwdXQgPSBpbnB1dDsKICAgICAgaWYgKG91dHB1dC5zdGFydHNXaXRoKCIuLyIpKSB7CiAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNsaWNlKDIpOwogICAgICAgIHN0YXRlLnByZWZpeCA9ICIuLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIG91dHB1dDsKICAgIH07CiAgICBleHBvcnRzMi53cmFwT3V0cHV0ID0gKGlucHV0LCBzdGF0ZSA9IHt9LCBvcHRpb25zID0ge30pID0+IHsKICAgICAgY29uc3QgcHJlcGVuZCA9IG9wdGlvbnMuY29udGFpbnMgPyAiIiA6ICJeIjsKICAgICAgY29uc3QgYXBwZW5kID0gb3B0aW9ucy5jb250YWlucyA/ICIiIDogIiQiOwogICAgICBsZXQgb3V0cHV0ID0gYCR7cHJlcGVuZH0oPzoke2lucHV0fSkke2FwcGVuZH1gOwogICAgICBpZiAoc3RhdGUubmVnYXRlZCA9PT0gdHJ1ZSkgewogICAgICAgIG91dHB1dCA9IGAoPzpeKD8hJHtvdXRwdXR9KS4qJClgOwogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9OwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSAocGF0aCwgeyB3aW5kb3dzIH0gPSB7fSkgPT4gewogICAgICBjb25zdCBzZWdzID0gcGF0aC5zcGxpdCh3aW5kb3dzID8gL1tcXC9dLyA6ICIvIik7CiAgICAgIGNvbnN0IGxhc3QgPSBzZWdzW3NlZ3MubGVuZ3RoIC0gMV07CiAgICAgIGlmIChsYXN0ID09PSAiIikgewogICAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMl07CiAgICAgIH0KICAgICAgcmV0dXJuIGxhc3Q7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9zY2FuLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIENIQVJfQVNURVJJU0s6IENIQVJfQVNURVJJU0syLAogICAgICAvKiAqICovCiAgICAgIENIQVJfQVQsCiAgICAgIC8qIEAgKi8KICAgICAgQ0hBUl9CQUNLV0FSRF9TTEFTSCwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NPTU1BOiBDSEFSX0NPTU1BMiwKICAgICAgLyogLCAqLwogICAgICBDSEFSX0RPVCwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0VYQ0xBTUFUSU9OX01BUkssCiAgICAgIC8qICEgKi8KICAgICAgQ0hBUl9GT1JXQVJEX1NMQVNILAogICAgICAvKiAvICovCiAgICAgIENIQVJfTEVGVF9DVVJMWV9CUkFDRSwKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfUEFSRU5USEVTRVMsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9MRUZUX1NRVUFSRV9CUkFDS0VUOiBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyLAogICAgICAvKiBbICovCiAgICAgIENIQVJfUExVUywKICAgICAgLyogKyAqLwogICAgICBDSEFSX1FVRVNUSU9OX01BUkssCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRSwKICAgICAgLyogfSAqLwogICAgICBDSEFSX1JJR0hUX1BBUkVOVEhFU0VTLAogICAgICAvKiApICovCiAgICAgIENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQ6IENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQyCiAgICAgIC8qIF0gKi8KICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIGlzUGF0aFNlcGFyYXRvciA9IChjb2RlKSA9PiB7CiAgICAgIHJldHVybiBjb2RlID09PSBDSEFSX0ZPUldBUkRfU0xBU0ggfHwgY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSDsKICAgIH07CiAgICB2YXIgZGVwdGggPSAodG9rZW4pID0+IHsKICAgICAgaWYgKHRva2VuLmlzUHJlZml4ICE9PSB0cnVlKSB7CiAgICAgICAgdG9rZW4uZGVwdGggPSB0b2tlbi5pc0dsb2JzdGFyID8gSW5maW5pdHkgOiAxOwogICAgICB9CiAgICB9OwogICAgdmFyIHNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGxlbmd0aCA9IGlucHV0Lmxlbmd0aCAtIDE7CiAgICAgIGNvbnN0IHNjYW5Ub0VuZCA9IG9wdHMucGFydHMgPT09IHRydWUgfHwgb3B0cy5zY2FuVG9FbmQgPT09IHRydWU7CiAgICAgIGNvbnN0IHNsYXNoZXMgPSBbXTsKICAgICAgY29uc3QgdG9rZW5zID0gW107CiAgICAgIGNvbnN0IHBhcnRzID0gW107CiAgICAgIGxldCBzdHIyID0gaW5wdXQ7CiAgICAgIGxldCBpbmRleCA9IC0xOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgbGFzdEluZGV4ID0gMDsKICAgICAgbGV0IGlzQnJhY2UgPSBmYWxzZTsKICAgICAgbGV0IGlzQnJhY2tldCA9IGZhbHNlOwogICAgICBsZXQgaXNHbG9iID0gZmFsc2U7CiAgICAgIGxldCBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgbGV0IGlzR2xvYnN0YXIgPSBmYWxzZTsKICAgICAgbGV0IGJyYWNlRXNjYXBlZCA9IGZhbHNlOwogICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWQgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWRFeHRnbG9iID0gZmFsc2U7CiAgICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlOwogICAgICBsZXQgYnJhY2VzID0gMDsKICAgICAgbGV0IHByZXY7CiAgICAgIGxldCBjb2RlOwogICAgICBsZXQgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgY29uc3QgZW9zID0gKCkgPT4gaW5kZXggPj0gbGVuZ3RoOwogICAgICBjb25zdCBwZWVrID0gKCkgPT4gc3RyMi5jaGFyQ29kZUF0KGluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGFkdmFuY2UgPSAoKSA9PiB7CiAgICAgICAgcHJldiA9IGNvZGU7CiAgICAgICAgcmV0dXJuIHN0cjIuY2hhckNvZGVBdCgrK2luZGV4KTsKICAgICAgfTsKICAgICAgd2hpbGUgKGluZGV4IDwgbGVuZ3RoKSB7CiAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICBsZXQgbmV4dDsKICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICBjb2RlID0gYWR2YW5jZSgpOwogICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICBicmFjZUVzY2FwZWQgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChicmFjZUVzY2FwZWQgPT09IHRydWUgfHwgY29kZSA9PT0gQ0hBUl9MRUZUX0NVUkxZX0JSQUNFKSB7CiAgICAgICAgICBicmFjZXMrKzsKICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICAgIGJyYWNlcysrOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChicmFjZUVzY2FwZWQgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9ET1QgJiYgKGNvZGUgPSBhZHZhbmNlKCkpID09PSBDSEFSX0RPVCkgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGJyYWNlRXNjYXBlZCAhPT0gdHJ1ZSAmJiBjb2RlID09PSBDSEFSX0NPTU1BMikgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgICBicmFjZXMtLTsKICAgICAgICAgICAgICBpZiAoYnJhY2VzID09PSAwKSB7CiAgICAgICAgICAgICAgICBicmFjZUVzY2FwZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9GT1JXQVJEX1NMQVNIKSB7CiAgICAgICAgICBzbGFzaGVzLnB1c2goaW5kZXgpOwogICAgICAgICAgdG9rZW5zLnB1c2godG9rZW4pOwogICAgICAgICAgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgICAgIGlmIChmaW5pc2hlZCA9PT0gdHJ1ZSkgY29udGludWU7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9ET1QgJiYgaW5kZXggPT09IHN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGFydCArPSAyOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4ICsgMTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub2V4dCAhPT0gdHJ1ZSkgewogICAgICAgICAgY29uc3QgaXNFeHRnbG9iQ2hhciA9IGNvZGUgPT09IENIQVJfUExVUyB8fCBjb2RlID09PSBDSEFSX0FUIHx8IGNvZGUgPT09IENIQVJfQVNURVJJU0syIHx8IGNvZGUgPT09IENIQVJfUVVFU1RJT05fTUFSSyB8fCBjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUks7CiAgICAgICAgICBpZiAoaXNFeHRnbG9iQ2hhciA9PT0gdHJ1ZSAmJiBwZWVrKCkgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICBpc0V4dGdsb2IgPSB0b2tlbi5pc0V4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUksgJiYgaW5kZXggPT09IHN0YXJ0KSB7CiAgICAgICAgICAgICAgbmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKGNvZGUgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQVNURVJJU0syKSB7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9BU1RFUklTSzIpIGlzR2xvYnN0YXIgPSB0b2tlbi5pc0dsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX1FVRVNUSU9OX01BUkspIHsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyKSB7CiAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKG5leHQgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX0JBQ0tXQVJEX1NMQVNIKSB7CiAgICAgICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUMikgewogICAgICAgICAgICAgIGlzQnJhY2tldCA9IHRva2VuLmlzQnJhY2tldCA9IHRydWU7CiAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLICYmIGluZGV4ID09PSBzdGFydCkgewogICAgICAgICAgbmVnYXRlZCA9IHRva2VuLm5lZ2F0ZWQgPSB0cnVlOwogICAgICAgICAgc3RhcnQrKzsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub3BhcmVuICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChjb2RlID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChpc0dsb2IgPT09IHRydWUpIHsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMubm9leHQgPT09IHRydWUpIHsKICAgICAgICBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgICBpc0dsb2IgPSBmYWxzZTsKICAgICAgfQogICAgICBsZXQgYmFzZSA9IHN0cjI7CiAgICAgIGxldCBwcmVmaXggPSAiIjsKICAgICAgbGV0IGdsb2IgPSAiIjsKICAgICAgaWYgKHN0YXJ0ID4gMCkgewogICAgICAgIHByZWZpeCA9IHN0cjIuc2xpY2UoMCwgc3RhcnQpOwogICAgICAgIHN0cjIgPSBzdHIyLnNsaWNlKHN0YXJ0KTsKICAgICAgICBsYXN0SW5kZXggLT0gc3RhcnQ7CiAgICAgIH0KICAgICAgaWYgKGJhc2UgJiYgaXNHbG9iID09PSB0cnVlICYmIGxhc3RJbmRleCA+IDApIHsKICAgICAgICBiYXNlID0gc3RyMi5zbGljZSgwLCBsYXN0SW5kZXgpOwogICAgICAgIGdsb2IgPSBzdHIyLnNsaWNlKGxhc3RJbmRleCk7CiAgICAgIH0gZWxzZSBpZiAoaXNHbG9iID09PSB0cnVlKSB7CiAgICAgICAgYmFzZSA9ICIiOwogICAgICAgIGdsb2IgPSBzdHIyOwogICAgICB9IGVsc2UgewogICAgICAgIGJhc2UgPSBzdHIyOwogICAgICB9CiAgICAgIGlmIChiYXNlICYmIGJhc2UgIT09ICIiICYmIGJhc2UgIT09ICIvIiAmJiBiYXNlICE9PSBzdHIyKSB7CiAgICAgICAgaWYgKGlzUGF0aFNlcGFyYXRvcihiYXNlLmNoYXJDb2RlQXQoYmFzZS5sZW5ndGggLSAxKSkpIHsKICAgICAgICAgIGJhc2UgPSBiYXNlLnNsaWNlKDAsIC0xKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMudW5lc2NhcGUgPT09IHRydWUpIHsKICAgICAgICBpZiAoZ2xvYikgZ2xvYiA9IHV0aWxzLnJlbW92ZUJhY2tzbGFzaGVzKGdsb2IpOwogICAgICAgIGlmIChiYXNlICYmIGJhY2tzbGFzaGVzID09PSB0cnVlKSB7CiAgICAgICAgICBiYXNlID0gdXRpbHMucmVtb3ZlQmFja3NsYXNoZXMoYmFzZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IHN0YXRlID0gewogICAgICAgIHByZWZpeCwKICAgICAgICBpbnB1dCwKICAgICAgICBzdGFydCwKICAgICAgICBiYXNlLAogICAgICAgIGdsb2IsCiAgICAgICAgaXNCcmFjZSwKICAgICAgICBpc0JyYWNrZXQsCiAgICAgICAgaXNHbG9iLAogICAgICAgIGlzRXh0Z2xvYiwKICAgICAgICBpc0dsb2JzdGFyLAogICAgICAgIG5lZ2F0ZWQsCiAgICAgICAgbmVnYXRlZEV4dGdsb2IKICAgICAgfTsKICAgICAgaWYgKG9wdHMudG9rZW5zID09PSB0cnVlKSB7CiAgICAgICAgc3RhdGUubWF4RGVwdGggPSAwOwogICAgICAgIGlmICghaXNQYXRoU2VwYXJhdG9yKGNvZGUpKSB7CiAgICAgICAgICB0b2tlbnMucHVzaCh0b2tlbik7CiAgICAgICAgfQogICAgICAgIHN0YXRlLnRva2VucyA9IHRva2VuczsKICAgICAgfQogICAgICBpZiAob3B0cy5wYXJ0cyA9PT0gdHJ1ZSB8fCBvcHRzLnRva2VucyA9PT0gdHJ1ZSkgewogICAgICAgIGxldCBwcmV2SW5kZXg7CiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgc2xhc2hlcy5sZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICBjb25zdCBuID0gcHJldkluZGV4ID8gcHJldkluZGV4ICsgMSA6IHN0YXJ0OwogICAgICAgICAgY29uc3QgaSA9IHNsYXNoZXNbaWR4XTsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQuc2xpY2UobiwgaSk7CiAgICAgICAgICBpZiAob3B0cy50b2tlbnMpIHsKICAgICAgICAgICAgaWYgKGlkeCA9PT0gMCAmJiBzdGFydCAhPT0gMCkgewogICAgICAgICAgICAgIHRva2Vuc1tpZHhdLmlzUHJlZml4ID0gdHJ1ZTsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHByZWZpeDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlcHRoKHRva2Vuc1tpZHhdKTsKICAgICAgICAgICAgc3RhdGUubWF4RGVwdGggKz0gdG9rZW5zW2lkeF0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaWR4ICE9PSAwIHx8IHZhbHVlICE9PSAiIikgewogICAgICAgICAgICBwYXJ0cy5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHByZXZJbmRleCA9IGk7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2SW5kZXggJiYgcHJldkluZGV4ICsgMSA8IGlucHV0Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC5zbGljZShwcmV2SW5kZXggKyAxKTsKICAgICAgICAgIHBhcnRzLnB1c2godmFsdWUpOwogICAgICAgICAgaWYgKG9wdHMudG9rZW5zKSB7CiAgICAgICAgICAgIHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0udmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgZGVwdGgodG9rZW5zW3Rva2Vucy5sZW5ndGggLSAxXSk7CiAgICAgICAgICAgIHN0YXRlLm1heERlcHRoICs9IHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnNsYXNoZXMgPSBzbGFzaGVzOwogICAgICAgIHN0YXRlLnBhcnRzID0gcGFydHM7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0YXRlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvcGFyc2UuanMKdmFyIHJlcXVpcmVfcGFyc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9wYXJzZS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBjb25zdGFudHMgPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIE1BWF9MRU5HVEgsCiAgICAgIFBPU0lYX1JFR0VYX1NPVVJDRSwKICAgICAgUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlMsCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRiwKICAgICAgUkVQTEFDRU1FTlRTCiAgICB9ID0gY29uc3RhbnRzOwogICAgdmFyIGV4cGFuZFJhbmdlID0gKGFyZ3MsIG9wdGlvbnMpID0+IHsKICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLmV4cGFuZFJhbmdlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZXhwYW5kUmFuZ2UoLi4uYXJncywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXJncy5zb3J0KCk7CiAgICAgIGNvbnN0IHZhbHVlID0gYFske2FyZ3Muam9pbigiLSIpfV1gOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAodmFsdWUpOwogICAgICB9IGNhdGNoIChleCkgewogICAgICAgIHJldHVybiBhcmdzLm1hcCgodikgPT4gdXRpbHMuZXNjYXBlUmVnZXgodikpLmpvaW4oIi4uIik7CiAgICAgIH0KICAgICAgcmV0dXJuIHZhbHVlOwogICAgfTsKICAgIHZhciBzeW50YXhFcnJvciA9ICh0eXBlMiwgY2hhcikgPT4gewogICAgICByZXR1cm4gYE1pc3NpbmcgJHt0eXBlMn06ICIke2NoYXJ9IiAtIHVzZSAiXFxcXCR7Y2hhcn0iIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2A7CiAgICB9OwogICAgdmFyIHBhcnNlID0gKGlucHV0LCBvcHRpb25zKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IG9wdHMgPSB7IC4uLm9wdGlvbnMgfTsKICAgICAgY29uc3QgbWF4ID0gdHlwZW9mIG9wdHMubWF4TGVuZ3RoID09PSAibnVtYmVyIiA/IE1hdGgubWluKE1BWF9MRU5HVEgsIG9wdHMubWF4TGVuZ3RoKSA6IE1BWF9MRU5HVEg7CiAgICAgIGxldCBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGlmIChsZW4gPiBtYXgpIHsKICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsZW59LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7bWF4fWApOwogICAgICB9CiAgICAgIGNvbnN0IGJvcyA9IHsgdHlwZTogImJvcyIsIHZhbHVlOiAiIiwgb3V0cHV0OiBvcHRzLnByZXBlbmQgfHwgIiIgfTsKICAgICAgY29uc3QgdG9rZW5zID0gW2Jvc107CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IFBMQVRGT1JNX0NIQVJTID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBFWFRHTE9CX0NIQVJTID0gY29uc3RhbnRzLmV4dGdsb2JDaGFycyhQTEFURk9STV9DSEFSUyk7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBQTFVTX0xJVEVSQUwsCiAgICAgICAgU0xBU0hfTElURVJBTCwKICAgICAgICBPTkVfQ0hBUiwKICAgICAgICBET1RTX1NMQVNILAogICAgICAgIE5PX0RPVCwKICAgICAgICBOT19ET1RfU0xBU0gsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBRTUFSSywKICAgICAgICBRTUFSS19OT19ET1QsCiAgICAgICAgU1RBUiwKICAgICAgICBTVEFSVF9BTkNIT1IKICAgICAgfSA9IFBMQVRGT1JNX0NIQVJTOwogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIHJldHVybiBgKCR7Y2FwdHVyZX0oPzooPyEke1NUQVJUX0FOQ0hPUn0ke29wdHMyLmRvdCA/IERPVFNfU0xBU0ggOiBET1RfTElURVJBTH0pLikqPylgOwogICAgICB9OwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gIiIgOiBOT19ET1Q7CiAgICAgIGNvbnN0IHFtYXJrTm9Eb3QgPSBvcHRzLmRvdCA/IFFNQVJLIDogUU1BUktfTk9fRE9UOwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/IGdsb2JzdGFyKG9wdHMpIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBpZiAodHlwZW9mIG9wdHMubm9leHQgPT09ICJib29sZWFuIikgewogICAgICAgIG9wdHMubm9leHRnbG9iID0gb3B0cy5ub2V4dDsKICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBpbnB1dCwKICAgICAgICBpbmRleDogLTEsCiAgICAgICAgc3RhcnQ6IDAsCiAgICAgICAgZG90OiBvcHRzLmRvdCA9PT0gdHJ1ZSwKICAgICAgICBjb25zdW1lZDogIiIsCiAgICAgICAgb3V0cHV0OiAiIiwKICAgICAgICBwcmVmaXg6ICIiLAogICAgICAgIGJhY2t0cmFjazogZmFsc2UsCiAgICAgICAgbmVnYXRlZDogZmFsc2UsCiAgICAgICAgYnJhY2tldHM6IDAsCiAgICAgICAgYnJhY2VzOiAwLAogICAgICAgIHBhcmVuczogMCwKICAgICAgICBxdW90ZXM6IDAsCiAgICAgICAgZ2xvYnN0YXI6IGZhbHNlLAogICAgICAgIHRva2VucwogICAgICB9OwogICAgICBpbnB1dCA9IHV0aWxzLnJlbW92ZVByZWZpeChpbnB1dCwgc3RhdGUpOwogICAgICBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGNvbnN0IGV4dGdsb2JzID0gW107CiAgICAgIGNvbnN0IGJyYWNlcyA9IFtdOwogICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICBsZXQgcHJldiA9IGJvczsKICAgICAgbGV0IHZhbHVlOwogICAgICBjb25zdCBlb3MgPSAoKSA9PiBzdGF0ZS5pbmRleCA9PT0gbGVuIC0gMTsKICAgICAgY29uc3QgcGVlayA9IHN0YXRlLnBlZWsgPSAobiA9IDEpID0+IGlucHV0W3N0YXRlLmluZGV4ICsgbl07CiAgICAgIGNvbnN0IGFkdmFuY2UgPSBzdGF0ZS5hZHZhbmNlID0gKCkgPT4gaW5wdXRbKytzdGF0ZS5pbmRleF0gfHwgIiI7CiAgICAgIGNvbnN0IHJlbWFpbmluZyA9ICgpID0+IGlucHV0LnNsaWNlKHN0YXRlLmluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGNvbnN1bWUgPSAodmFsdWUyID0gIiIsIG51bSA9IDApID0+IHsKICAgICAgICBzdGF0ZS5jb25zdW1lZCArPSB2YWx1ZTI7CiAgICAgICAgc3RhdGUuaW5kZXggKz0gbnVtOwogICAgICB9OwogICAgICBjb25zdCBhcHBlbmQgPSAodG9rZW4pID0+IHsKICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdG9rZW4ub3V0cHV0ICE9IG51bGwgPyB0b2tlbi5vdXRwdXQgOiB0b2tlbi52YWx1ZTsKICAgICAgICBjb25zdW1lKHRva2VuLnZhbHVlKTsKICAgICAgfTsKICAgICAgY29uc3QgbmVnYXRlID0gKCkgPT4gewogICAgICAgIGxldCBjb3VudCA9IDE7CiAgICAgICAgd2hpbGUgKHBlZWsoKSA9PT0gIiEiICYmIChwZWVrKDIpICE9PSAiKCIgfHwgcGVlaygzKSA9PT0gIj8iKSkgewogICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIGlmIChjb3VudCAlIDIgPT09IDApIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUubmVnYXRlZCA9IHRydWU7CiAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfTsKICAgICAgY29uc3QgaW5jcmVtZW50ID0gKHR5cGUyKSA9PiB7CiAgICAgICAgc3RhdGVbdHlwZTJdKys7CiAgICAgICAgc3RhY2sucHVzaCh0eXBlMik7CiAgICAgIH07CiAgICAgIGNvbnN0IGRlY3JlbWVudCA9ICh0eXBlMikgPT4gewogICAgICAgIHN0YXRlW3R5cGUyXS0tOwogICAgICAgIHN0YWNrLnBvcCgpOwogICAgICB9OwogICAgICBjb25zdCBwdXNoID0gKHRvaykgPT4gewogICAgICAgIGlmIChwcmV2LnR5cGUgPT09ICJnbG9ic3RhciIpIHsKICAgICAgICAgIGNvbnN0IGlzQnJhY2UgPSBzdGF0ZS5icmFjZXMgPiAwICYmICh0b2sudHlwZSA9PT0gImNvbW1hIiB8fCB0b2sudHlwZSA9PT0gImJyYWNlIik7CiAgICAgICAgICBjb25zdCBpc0V4dGdsb2IgPSB0b2suZXh0Z2xvYiA9PT0gdHJ1ZSB8fCBleHRnbG9icy5sZW5ndGggJiYgKHRvay50eXBlID09PSAicGlwZSIgfHwgdG9rLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKHRvay50eXBlICE9PSAic2xhc2giICYmIHRvay50eXBlICE9PSAicGFyZW4iICYmICFpc0JyYWNlICYmICFpc0V4dGdsb2IpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICAgIHByZXYudmFsdWUgPSAiKiI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZXh0Z2xvYnMubGVuZ3RoICYmIHRvay50eXBlICE9PSAicGFyZW4iKSB7CiAgICAgICAgICBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXS5pbm5lciArPSB0b2sudmFsdWU7CiAgICAgICAgfQogICAgICAgIGlmICh0b2sudmFsdWUgfHwgdG9rLm91dHB1dCkgYXBwZW5kKHRvayk7CiAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAidGV4dCIgJiYgdG9rLnR5cGUgPT09ICJ0ZXh0IikgewogICAgICAgICAgcHJldi5vdXRwdXQgPSAocHJldi5vdXRwdXQgfHwgcHJldi52YWx1ZSkgKyB0b2sudmFsdWU7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHRvay52YWx1ZTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdG9rLnByZXYgPSBwcmV2OwogICAgICAgIHRva2Vucy5wdXNoKHRvayk7CiAgICAgICAgcHJldiA9IHRvazsKICAgICAgfTsKICAgICAgY29uc3QgZXh0Z2xvYk9wZW4gPSAodHlwZTIsIHZhbHVlMikgPT4gewogICAgICAgIGNvbnN0IHRva2VuID0geyAuLi5FWFRHTE9CX0NIQVJTW3ZhbHVlMl0sIGNvbmRpdGlvbnM6IDEsIGlubmVyOiAiIiB9OwogICAgICAgIHRva2VuLnByZXYgPSBwcmV2OwogICAgICAgIHRva2VuLnBhcmVucyA9IHN0YXRlLnBhcmVuczsKICAgICAgICB0b2tlbi5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQ7CiAgICAgICAgY29uc3Qgb3V0cHV0ID0gKG9wdHMuY2FwdHVyZSA/ICIoIiA6ICIiKSArIHRva2VuLm9wZW47CiAgICAgICAgaW5jcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICBwdXNoKHsgdHlwZTogdHlwZTIsIHZhbHVlOiB2YWx1ZTIsIG91dHB1dDogc3RhdGUub3V0cHV0ID8gIiIgOiBPTkVfQ0hBUiB9KTsKICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWU6IGFkdmFuY2UoKSwgb3V0cHV0IH0pOwogICAgICAgIGV4dGdsb2JzLnB1c2godG9rZW4pOwogICAgICB9OwogICAgICBjb25zdCBleHRnbG9iQ2xvc2UgPSAodG9rZW4pID0+IHsKICAgICAgICBsZXQgb3V0cHV0ID0gdG9rZW4uY2xvc2UgKyAob3B0cy5jYXB0dXJlID8gIikiIDogIiIpOwogICAgICAgIGxldCByZXN0OwogICAgICAgIGlmICh0b2tlbi50eXBlID09PSAibmVnYXRlIikgewogICAgICAgICAgbGV0IGV4dGdsb2JTdGFyID0gc3RhcjsKICAgICAgICAgIGlmICh0b2tlbi5pbm5lciAmJiB0b2tlbi5pbm5lci5sZW5ndGggPiAxICYmIHRva2VuLmlubmVyLmluY2x1ZGVzKCIvIikpIHsKICAgICAgICAgICAgZXh0Z2xvYlN0YXIgPSBnbG9ic3RhcihvcHRzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChleHRnbG9iU3RhciAhPT0gc3RhciB8fCBlb3MoKSB8fCAvXlwpKyQvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgIG91dHB1dCA9IHRva2VuLmNsb3NlID0gYCkkKSkke2V4dGdsb2JTdGFyfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9rZW4uaW5uZXIuaW5jbHVkZXMoIioiKSAmJiAocmVzdCA9IHJlbWFpbmluZygpKSAmJiAvXlwuW15cXC8uXSskLy50ZXN0KHJlc3QpKSB7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBwYXJzZShyZXN0LCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSkub3V0cHV0OwogICAgICAgICAgICBvdXRwdXQgPSB0b2tlbi5jbG9zZSA9IGApJHtleHByZXNzaW9ufSkke2V4dGdsb2JTdGFyfSlgOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHRva2VuLnByZXYudHlwZSA9PT0gImJvcyIpIHsKICAgICAgICAgICAgc3RhdGUubmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9OwogICAgICBpZiAob3B0cy5mYXN0cGF0aHMgIT09IGZhbHNlICYmICEvKF5bKiFdfFsvKClbXF17fSJdKS8udGVzdChpbnB1dCkpIHsKICAgICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgICBsZXQgb3V0cHV0ID0gaW5wdXQucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUYsIChtLCBlc2MsIGNoYXJzLCBmaXJzdCwgcmVzdCwgaW5kZXgpID0+IHsKICAgICAgICAgIGlmIChmaXJzdCA9PT0gIlxcIikgewogICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgIHJldHVybiBtOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZpcnN0ID09PSAiPyIpIHsKICAgICAgICAgICAgaWYgKGVzYykgewogICAgICAgICAgICAgIHJldHVybiBlc2MgKyBmaXJzdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHsKICAgICAgICAgICAgICByZXR1cm4gcW1hcmtOb0RvdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gUU1BUksucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIuIikgewogICAgICAgICAgICByZXR1cm4gRE9UX0xJVEVSQUwucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIqIikgewogICAgICAgICAgICBpZiAoZXNjKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVzYyArIGZpcnN0ICsgKHJlc3QgPyBzdGFyIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBzdGFyOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGVzYyA/IG0gOiBgXFwke219YDsKICAgICAgICB9KTsKICAgICAgICBpZiAoYmFja3NsYXNoZXMgPT09IHRydWUpIHsKICAgICAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKC9cXC9nLCAiIik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQucmVwbGFjZSgvXFwrL2csIChtKSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIG0ubGVuZ3RoICUgMiA9PT0gMCA/ICJcXFxcIiA6IG0gPyAiXFwiIDogIiI7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAob3V0cHV0ID09PSBpbnB1dCAmJiBvcHRzLmNvbnRhaW5zID09PSB0cnVlKSB7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBpbnB1dDsKICAgICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMud3JhcE91dHB1dChvdXRwdXQsIHN0YXRlLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gc3RhdGU7CiAgICAgIH0KICAgICAgd2hpbGUgKCFlb3MoKSkgewogICAgICAgIHZhbHVlID0gYWR2YW5jZSgpOwogICAgICAgIGlmICh2YWx1ZSA9PT0gIlwwIikgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIlxcIikgewogICAgICAgICAgY29uc3QgbmV4dCA9IHBlZWsoKTsKICAgICAgICAgIGlmIChuZXh0ID09PSAiLyIgJiYgb3B0cy5iYXNoICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG5leHQgPT09ICIuIiB8fCBuZXh0ID09PSAiOyIpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5leHQpIHsKICAgICAgICAgICAgdmFsdWUgKz0gIlxcIjsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSAvXlxcKy8uZXhlYyhyZW1haW5pbmcoKSk7CiAgICAgICAgICBsZXQgc2xhc2hlcyA9IDA7CiAgICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMF0ubGVuZ3RoID4gMikgewogICAgICAgICAgICBzbGFzaGVzID0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgICBzdGF0ZS5pbmRleCArPSBzbGFzaGVzOwogICAgICAgICAgICBpZiAoc2xhc2hlcyAlIDIgIT09IDApIHsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXFwiOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy51bmVzY2FwZSA9PT0gdHJ1ZSkgewogICAgICAgICAgICB2YWx1ZSA9IGFkdmFuY2UoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHZhbHVlICs9IGFkdmFuY2UoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA+IDAgJiYgKHZhbHVlICE9PSAiXSIgfHwgcHJldi52YWx1ZSA9PT0gIlsiIHx8IHByZXYudmFsdWUgPT09ICJbXiIpKSB7CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCAhPT0gZmFsc2UgJiYgdmFsdWUgPT09ICI6IikgewogICAgICAgICAgICBjb25zdCBpbm5lciA9IHByZXYudmFsdWUuc2xpY2UoMSk7CiAgICAgICAgICAgIGlmIChpbm5lci5pbmNsdWRlcygiWyIpKSB7CiAgICAgICAgICAgICAgcHJldi5wb3NpeCA9IHRydWU7CiAgICAgICAgICAgICAgaWYgKGlubmVyLmluY2x1ZGVzKCI6IikpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGlkeCA9IHByZXYudmFsdWUubGFzdEluZGV4T2YoIlsiKTsKICAgICAgICAgICAgICAgIGNvbnN0IHByZSA9IHByZXYudmFsdWUuc2xpY2UoMCwgaWR4KTsKICAgICAgICAgICAgICAgIGNvbnN0IHJlc3QyID0gcHJldi52YWx1ZS5zbGljZShpZHggKyAyKTsKICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l4ID0gUE9TSVhfUkVHRVhfU09VUkNFW3Jlc3QyXTsKICAgICAgICAgICAgICAgIGlmIChwb3NpeCkgewogICAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gcHJlICsgcG9zaXg7CiAgICAgICAgICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgaWYgKCFib3Mub3V0cHV0ICYmIHRva2Vucy5pbmRleE9mKHByZXYpID09PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgYm9zLm91dHB1dCA9IE9ORV9DSEFSOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSAiWyIgJiYgcGVlaygpICE9PSAiOiIgfHwgdmFsdWUgPT09ICItIiAmJiBwZWVrKCkgPT09ICJdIikgewogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh2YWx1ZSA9PT0gIl0iICYmIChwcmV2LnZhbHVlID09PSAiWyIgfHwgcHJldi52YWx1ZSA9PT0gIlteIikpIHsKICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCA9PT0gdHJ1ZSAmJiB2YWx1ZSA9PT0gIiEiICYmIHByZXYudmFsdWUgPT09ICJbIikgewogICAgICAgICAgICB2YWx1ZSA9ICJeIjsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBhcHBlbmQoeyB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUucXVvdGVzID09PSAxICYmIHZhbHVlICE9PSAnIicpIHsKICAgICAgICAgIHZhbHVlID0gdXRpbHMuZXNjYXBlUmVnZXgodmFsdWUpOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIGFwcGVuZCh7IHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gJyInKSB7CiAgICAgICAgICBzdGF0ZS5xdW90ZXMgPSBzdGF0ZS5xdW90ZXMgPT09IDEgPyAwIDogMTsKICAgICAgICAgIGlmIChvcHRzLmtlZXBRdW90ZXMgPT09IHRydWUpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKCIpIHsKICAgICAgICAgIGluY3JlbWVudCgicGFyZW5zIik7CiAgICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKSIpIHsKICAgICAgICAgIGlmIChzdGF0ZS5wYXJlbnMgPT09IDAgJiYgb3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoIm9wZW5pbmciLCAiKCIpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGV4dGdsb2IgPSBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChleHRnbG9iICYmIHN0YXRlLnBhcmVucyA9PT0gZXh0Z2xvYi5wYXJlbnMgKyAxKSB7CiAgICAgICAgICAgIGV4dGdsb2JDbG9zZShleHRnbG9icy5wb3AoKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJwYXJlbiIsIHZhbHVlLCBvdXRwdXQ6IHN0YXRlLnBhcmVucyA/ICIpIiA6ICJcXCkiIH0pOwogICAgICAgICAgZGVjcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJbIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8ICFyZW1haW5pbmcoKS5pbmNsdWRlcygiXSIpKSB7CiAgICAgICAgICAgIGlmIChvcHRzLm5vYnJhY2tldCAhPT0gdHJ1ZSAmJiBvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIl0iKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpbmNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImJyYWNrZXQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJdIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8IHByZXYgJiYgcHJldi50eXBlID09PSAiYnJhY2tldCIgJiYgcHJldi52YWx1ZS5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogYFxcJHt2YWx1ZX1gIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigib3BlbmluZyIsICJbIikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQ6IGBcXCR7dmFsdWV9YCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBkZWNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSBwcmV2LnZhbHVlLnNsaWNlKDEpOwogICAgICAgICAgaWYgKHByZXYucG9zaXggIT09IHRydWUgJiYgcHJldlZhbHVlWzBdID09PSAiXiIgJiYgIXByZXZWYWx1ZS5pbmNsdWRlcygiLyIpKSB7CiAgICAgICAgICAgIHZhbHVlID0gYC8ke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgYXBwZW5kKHsgdmFsdWUgfSk7CiAgICAgICAgICBpZiAob3B0cy5saXRlcmFsQnJhY2tldHMgPT09IGZhbHNlIHx8IHV0aWxzLmhhc1JlZ2V4Q2hhcnMocHJldlZhbHVlKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSB1dGlscy5lc2NhcGVSZWdleChwcmV2LnZhbHVlKTsKICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCAtcHJldi52YWx1ZS5sZW5ndGgpOwogICAgICAgICAgaWYgKG9wdHMubGl0ZXJhbEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBlc2NhcGVkOwogICAgICAgICAgICBwcmV2LnZhbHVlID0gZXNjYXBlZDsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlID0gYCgke2NhcHR1cmV9JHtlc2NhcGVkfXwke3ByZXYudmFsdWV9KWA7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi52YWx1ZTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ7IiAmJiBvcHRzLm5vYnJhY2UgIT09IHRydWUpIHsKICAgICAgICAgIGluY3JlbWVudCgiYnJhY2VzIik7CiAgICAgICAgICBjb25zdCBvcGVuID0gewogICAgICAgICAgICB0eXBlOiAiYnJhY2UiLAogICAgICAgICAgICB2YWx1ZSwKICAgICAgICAgICAgb3V0cHV0OiAiKCIsCiAgICAgICAgICAgIG91dHB1dEluZGV4OiBzdGF0ZS5vdXRwdXQubGVuZ3RoLAogICAgICAgICAgICB0b2tlbnNJbmRleDogc3RhdGUudG9rZW5zLmxlbmd0aAogICAgICAgICAgfTsKICAgICAgICAgIGJyYWNlcy5wdXNoKG9wZW4pOwogICAgICAgICAgcHVzaChvcGVuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ9IikgewogICAgICAgICAgY29uc3QgYnJhY2UgPSBicmFjZXNbYnJhY2VzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKG9wdHMubm9icmFjZSA9PT0gdHJ1ZSB8fCAhYnJhY2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IG91dHB1dCA9ICIpIjsKICAgICAgICAgIGlmIChicmFjZS5kb3RzID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IGFyciA9IHRva2Vucy5zbGljZSgpOwogICAgICAgICAgICBjb25zdCByYW5nZSA9IFtdOwogICAgICAgICAgICBmb3IgKGxldCBpID0gYXJyLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgdG9rZW5zLnBvcCgpOwogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSA9PT0gImJyYWNlIikgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSAhPT0gImRvdHMiKSB7CiAgICAgICAgICAgICAgICByYW5nZS51bnNoaWZ0KGFycltpXS52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIG91dHB1dCA9IGV4cGFuZFJhbmdlKHJhbmdlLCBvcHRzKTsKICAgICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChicmFjZS5jb21tYSAhPT0gdHJ1ZSAmJiBicmFjZS5kb3RzICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IG91dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCBicmFjZS5vdXRwdXRJbmRleCk7CiAgICAgICAgICAgIGNvbnN0IHRva3MgPSBzdGF0ZS50b2tlbnMuc2xpY2UoYnJhY2UudG9rZW5zSW5kZXgpOwogICAgICAgICAgICBicmFjZS52YWx1ZSA9IGJyYWNlLm91dHB1dCA9ICJcXHsiOwogICAgICAgICAgICB2YWx1ZSA9IG91dHB1dCA9ICJcXH0iOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBvdXQ7CiAgICAgICAgICAgIGZvciAoY29uc3QgdCBvZiB0b2tzKSB7CiAgICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHQub3V0cHV0IHx8IHQudmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiYnJhY2UiLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgICAgZGVjcmVtZW50KCJicmFjZXMiKTsKICAgICAgICAgIGJyYWNlcy5wb3AoKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ8IikgewogICAgICAgICAgaWYgKGV4dGdsb2JzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgZXh0Z2xvYnNbZXh0Z2xvYnMubGVuZ3RoIC0gMV0uY29uZGl0aW9ucysrOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiLCIpIHsKICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgIGNvbnN0IGJyYWNlID0gYnJhY2VzW2JyYWNlcy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChicmFjZSAmJiBzdGFja1tzdGFjay5sZW5ndGggLSAxXSA9PT0gImJyYWNlcyIpIHsKICAgICAgICAgICAgYnJhY2UuY29tbWEgPSB0cnVlOwogICAgICAgICAgICBvdXRwdXQgPSAifCI7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImNvbW1hIiwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIvIikgewogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImRvdCIgJiYgc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGF0ZS5zdGFydCA9IHN0YXRlLmluZGV4ICsgMTsKICAgICAgICAgICAgc3RhdGUuY29uc3VtZWQgPSAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gIiI7CiAgICAgICAgICAgIHRva2Vucy5wb3AoKTsKICAgICAgICAgICAgcHJldiA9IGJvczsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInNsYXNoIiwgdmFsdWUsIG91dHB1dDogU0xBU0hfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIuIikgewogICAgICAgICAgaWYgKHN0YXRlLmJyYWNlcyA+IDAgJiYgcHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBpZiAocHJldi52YWx1ZSA9PT0gIi4iKSBwcmV2Lm91dHB1dCA9IERPVF9MSVRFUkFMOwogICAgICAgICAgICBjb25zdCBicmFjZSA9IGJyYWNlc1ticmFjZXMubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJkb3RzIjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgKz0gdmFsdWU7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIGJyYWNlLmRvdHMgPSB0cnVlOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFjZXMgKyBzdGF0ZS5wYXJlbnMgPT09IDAgJiYgcHJldi50eXBlICE9PSAiYm9zIiAmJiBwcmV2LnR5cGUgIT09ICJzbGFzaCIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogRE9UX0xJVEVSQUwgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJkb3QiLCB2YWx1ZSwgb3V0cHV0OiBET1RfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICI/IikgewogICAgICAgICAgY29uc3QgaXNHcm91cCA9IHByZXYgJiYgcHJldi52YWx1ZSA9PT0gIigiOwogICAgICAgICAgaWYgKCFpc0dyb3VwICYmIG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicW1hcmsiLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAicGFyZW4iKSB7CiAgICAgICAgICAgIGNvbnN0IG5leHQgPSBwZWVrKCk7CiAgICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgICAgaWYgKHByZXYudmFsdWUgPT09ICIoIiAmJiAhL1shPTw6XS8udGVzdChuZXh0KSB8fCBuZXh0ID09PSAiPCIgJiYgIS88KFshPV18XHcrPikvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgICAgb3V0cHV0ID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMuZG90ICE9PSB0cnVlICYmIChwcmV2LnR5cGUgPT09ICJzbGFzaCIgfHwgcHJldi50eXBlID09PSAiYm9zIikpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJxbWFyayIsIHZhbHVlLCBvdXRwdXQ6IFFNQVJLX05PX0RPVCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInFtYXJrIiwgdmFsdWUsIG91dHB1dDogUU1BUksgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiISIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIikgewogICAgICAgICAgICBpZiAocGVlaygyKSAhPT0gIj8iIHx8ICEvWyE9PDpdLy50ZXN0KHBlZWsoMykpKSB7CiAgICAgICAgICAgICAgZXh0Z2xvYk9wZW4oIm5lZ2F0ZSIsIHZhbHVlKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgc3RhdGUuaW5kZXggPT09IDApIHsKICAgICAgICAgICAgbmVnYXRlKCk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIrIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicGx1cyIsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJldiAmJiBwcmV2LnZhbHVlID09PSAiKCIgfHwgb3B0cy5yZWdleCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWUsIG91dHB1dDogUExVU19MSVRFUkFMIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmV2ICYmIChwcmV2LnR5cGUgPT09ICJicmFja2V0IiB8fCBwcmV2LnR5cGUgPT09ICJwYXJlbiIgfHwgcHJldi50eXBlID09PSAiYnJhY2UiKSB8fCBzdGF0ZS5wYXJlbnMgPiAwKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlOiBQTFVTX0xJVEVSQUwgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiQCIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIiAmJiBwZWVrKDIpICE9PSAiPyIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJhdCIsIGV4dGdsb2I6IHRydWUsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSAhPT0gIioiKSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09ICIkIiB8fCB2YWx1ZSA9PT0gIl4iKSB7CiAgICAgICAgICAgIHZhbHVlID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUy5leGVjKHJlbWFpbmluZygpKTsKICAgICAgICAgIGlmIChtYXRjaCkgewogICAgICAgICAgICB2YWx1ZSArPSBtYXRjaFswXTsKICAgICAgICAgICAgc3RhdGUuaW5kZXggKz0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImdsb2JzdGFyIiB8fCBwcmV2LnN0YXIgPT09IHRydWUpKSB7CiAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICBwcmV2LnN0YXIgPSB0cnVlOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdCA9IHJlbWFpbmluZygpOwogICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiAvXlwoW14/XS8udGVzdChyZXN0KSkgewogICAgICAgICAgZXh0Z2xvYk9wZW4oInN0YXIiLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gInN0YXIiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2dsb2JzdGFyID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHByaW9yID0gcHJldi5wcmV2OwogICAgICAgICAgY29uc3QgYmVmb3JlID0gcHJpb3IucHJldjsKICAgICAgICAgIGNvbnN0IGlzU3RhcnQgPSBwcmlvci50eXBlID09PSAic2xhc2giIHx8IHByaW9yLnR5cGUgPT09ICJib3MiOwogICAgICAgICAgY29uc3QgYWZ0ZXJTdGFyID0gYmVmb3JlICYmIChiZWZvcmUudHlwZSA9PT0gInN0YXIiIHx8IGJlZm9yZS50eXBlID09PSAiZ2xvYnN0YXIiKTsKICAgICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUgJiYgKCFpc1N0YXJ0IHx8IHJlc3RbMF0gJiYgcmVzdFswXSAhPT0gIi8iKSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBpc0JyYWNlID0gc3RhdGUuYnJhY2VzID4gMCAmJiAocHJpb3IudHlwZSA9PT0gImNvbW1hIiB8fCBwcmlvci50eXBlID09PSAiYnJhY2UiKTsKICAgICAgICAgIGNvbnN0IGlzRXh0Z2xvYiA9IGV4dGdsb2JzLmxlbmd0aCAmJiAocHJpb3IudHlwZSA9PT0gInBpcGUiIHx8IHByaW9yLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKCFpc1N0YXJ0ICYmIHByaW9yLnR5cGUgIT09ICJwYXJlbiIgJiYgIWlzQnJhY2UgJiYgIWlzRXh0Z2xvYikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAocmVzdC5zbGljZSgwLCAzKSA9PT0gIi8qKiIpIHsKICAgICAgICAgICAgY29uc3QgYWZ0ZXIgPSBpbnB1dFtzdGF0ZS5pbmRleCArIDRdOwogICAgICAgICAgICBpZiAoYWZ0ZXIgJiYgYWZ0ZXIgIT09ICIvIikgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3QgPSByZXN0LnNsaWNlKDMpOwogICAgICAgICAgICBjb25zdW1lKCIvKioiLCAzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiBlb3MoKSkgewogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJpb3IudHlwZSA9PT0gInNsYXNoIiAmJiBwcmlvci5wcmV2LnR5cGUgIT09ICJib3MiICYmICFhZnRlclN0YXIgJiYgZW9zKCkpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpICsgKG9wdHMuc3RyaWN0U2xhc2hlcyA/ICIpIiA6ICJ8JCkiKTsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAic2xhc2giICYmIHByaW9yLnByZXYudHlwZSAhPT0gImJvcyIgJiYgcmVzdFswXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc3RbMV0gIT09IHZvaWQgMCA/ICJ8JCIgOiAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGAke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH18JHtTTEFTSF9MSVRFUkFMfSR7ZW5kfSlgOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIHN0YXRlLmdsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSArIGFkdmFuY2UoKSk7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic2xhc2giLCB2YWx1ZTogIi8iLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiByZXN0WzBdID09PSAiLyIpIHsKICAgICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgcHJldi5vdXRwdXQgPSBgKD86Xnwke1NMQVNIX0xJVEVSQUx9fCR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSlgOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlICsgYWR2YW5jZSgpKTsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJzbGFzaCIsIHZhbHVlOiAiLyIsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdG9rZW4gPSB7IHR5cGU6ICJzdGFyIiwgdmFsdWUsIG91dHB1dDogc3RhciB9OwogICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUpIHsKICAgICAgICAgIHRva2VuLm91dHB1dCA9ICIuKj8iOwogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImJvcyIgfHwgcHJldi50eXBlID09PSAic2xhc2giKSB7CiAgICAgICAgICAgIHRva2VuLm91dHB1dCA9IG5vZG90ICsgdG9rZW4ub3V0cHV0OwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh0b2tlbik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImJyYWNrZXQiIHx8IHByZXYudHlwZSA9PT0gInBhcmVuIikgJiYgb3B0cy5yZWdleCA9PT0gdHJ1ZSkgewogICAgICAgICAgdG9rZW4ub3V0cHV0ID0gdmFsdWU7CiAgICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0IHx8IHByZXYudHlwZSA9PT0gInNsYXNoIiB8fCBwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gTk9fRE9UX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RfU0xBU0g7CiAgICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZG90ID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IG5vZG90OwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBub2RvdDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwZWVrKCkgIT09ICIqIikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gT05FX0NIQVI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE9ORV9DSEFSOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUuYnJhY2tldHMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJdIikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAiWyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUucGFyZW5zID4gMCkgewogICAgICAgIGlmIChvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoImNsb3NpbmciLCAiKSIpKTsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSB1dGlscy5lc2NhcGVMYXN0KHN0YXRlLm91dHB1dCwgIigiKTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5icmFjZXMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJ9IikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAieyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2VzIik7CiAgICAgIH0KICAgICAgaWYgKG9wdHMuc3RyaWN0U2xhc2hlcyAhPT0gdHJ1ZSAmJiAocHJldi50eXBlID09PSAic3RhciIgfHwgcHJldi50eXBlID09PSAiYnJhY2tldCIpKSB7CiAgICAgICAgcHVzaCh7IHR5cGU6ICJtYXliZV9zbGFzaCIsIHZhbHVlOiAiIiwgb3V0cHV0OiBgJHtTTEFTSF9MSVRFUkFMfT9gIH0pOwogICAgICB9CiAgICAgIGlmIChzdGF0ZS5iYWNrdHJhY2sgPT09IHRydWUpIHsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSAiIjsKICAgICAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHN0YXRlLnRva2VucykgewogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLm91dHB1dCAhPSBudWxsID8gdG9rZW4ub3V0cHV0IDogdG9rZW4udmFsdWU7CiAgICAgICAgICBpZiAodG9rZW4uc3VmZml4KSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSB0b2tlbi5zdWZmaXg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBzdGF0ZTsKICAgIH07CiAgICBwYXJzZS5mYXN0cGF0aHMgPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IHsgLi4ub3B0aW9ucyB9OwogICAgICBjb25zdCBtYXggPSB0eXBlb2Ygb3B0cy5tYXhMZW5ndGggPT09ICJudW1iZXIiID8gTWF0aC5taW4oTUFYX0xFTkdUSCwgb3B0cy5tYXhMZW5ndGgpIDogTUFYX0xFTkdUSDsKICAgICAgY29uc3QgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBpZiAobGVuID4gbWF4KSB7CiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBJbnB1dCBsZW5ndGg6ICR7bGVufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke21heH1gKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBTTEFTSF9MSVRFUkFMLAogICAgICAgIE9ORV9DSEFSLAogICAgICAgIERPVFNfU0xBU0gsCiAgICAgICAgTk9fRE9ULAogICAgICAgIE5PX0RPVFMsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBTVEFSLAogICAgICAgIFNUQVJUX0FOQ0hPUgogICAgICB9ID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gTk9fRE9UUyA6IE5PX0RPVDsKICAgICAgY29uc3Qgc2xhc2hEb3QgPSBvcHRzLmRvdCA/IE5PX0RPVFNfU0xBU0ggOiBOT19ET1Q7CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IHN0YXRlID0geyBuZWdhdGVkOiBmYWxzZSwgcHJlZml4OiAiIiB9OwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/ICIuKj8iIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIGlmIChvcHRzMi5ub2dsb2JzdGFyID09PSB0cnVlKSByZXR1cm4gc3RhcjsKICAgICAgICByZXR1cm4gYCgke2NhcHR1cmV9KD86KD8hJHtTVEFSVF9BTkNIT1J9JHtvcHRzMi5kb3QgPyBET1RTX1NMQVNIIDogRE9UX0xJVEVSQUx9KS4pKj8pYDsKICAgICAgfTsKICAgICAgY29uc3QgY3JlYXRlID0gKHN0cjIpID0+IHsKICAgICAgICBzd2l0Y2ggKHN0cjIpIHsKICAgICAgICAgIGNhc2UgIioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqLioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtzdGFyfSR7RE9UX0xJVEVSQUx9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIiovKiI6CiAgICAgICAgICAgIHJldHVybiBgJHtub2RvdH0ke3N0YXJ9JHtTTEFTSF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzbGFzaERvdH0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqIjoKICAgICAgICAgICAgcmV0dXJuIG5vZG90ICsgZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBjYXNlICIqKi8qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovKi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke3N0YXJ9JHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovLioiOgogICAgICAgICAgICByZXR1cm4gYCg/OiR7bm9kb3R9JHtnbG9ic3RhcihvcHRzKX0ke1NMQVNIX0xJVEVSQUx9KT8ke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBkZWZhdWx0OiB7CiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gL14oLio/KVwuKFx3KykkLy5leGVjKHN0cjIpOwogICAgICAgICAgICBpZiAoIW1hdGNoKSByZXR1cm47CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZTIgPSBjcmVhdGUobWF0Y2hbMV0pOwogICAgICAgICAgICBpZiAoIXNvdXJjZTIpIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuIHNvdXJjZTIgKyBET1RfTElURVJBTCArIG1hdGNoWzJdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgY29uc3Qgb3V0cHV0ID0gdXRpbHMucmVtb3ZlUHJlZml4KGlucHV0LCBzdGF0ZSk7CiAgICAgIGxldCBzb3VyY2UgPSBjcmVhdGUob3V0cHV0KTsKICAgICAgaWYgKHNvdXJjZSAmJiBvcHRzLnN0cmljdFNsYXNoZXMgIT09IHRydWUpIHsKICAgICAgICBzb3VyY2UgKz0gYCR7U0xBU0hfTElURVJBTH0/YDsKICAgICAgfQogICAgICByZXR1cm4gc291cmNlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHBhcnNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3BpY29tYXRjaC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2NhbiA9IHJlcXVpcmVfc2NhbjIoKTsKICAgIHZhciBwYXJzZSA9IHJlcXVpcmVfcGFyc2UoKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgY29uc3RhbnRzID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc09iamVjdDIgPSAodmFsKSA9PiB2YWwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIHZhciBwaWNvbWF0Y2ggPSAoZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShnbG9iKSkgewogICAgICAgIGNvbnN0IGZucyA9IGdsb2IubWFwKChpbnB1dCkgPT4gcGljb21hdGNoKGlucHV0LCBvcHRpb25zLCByZXR1cm5TdGF0ZSkpOwogICAgICAgIGNvbnN0IGFycmF5TWF0Y2hlciA9IChzdHIyKSA9PiB7CiAgICAgICAgICBmb3IgKGNvbnN0IGlzTWF0Y2ggb2YgZm5zKSB7CiAgICAgICAgICAgIGNvbnN0IHN0YXRlMiA9IGlzTWF0Y2goc3RyMik7CiAgICAgICAgICAgIGlmIChzdGF0ZTIpIHJldHVybiBzdGF0ZTI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gYXJyYXlNYXRjaGVyOwogICAgICB9CiAgICAgIGNvbnN0IGlzU3RhdGUgPSBpc09iamVjdDIoZ2xvYikgJiYgZ2xvYi50b2tlbnMgJiYgZ2xvYi5pbnB1dDsKICAgICAgaWYgKGdsb2IgPT09ICIiIHx8IHR5cGVvZiBnbG9iICE9PSAic3RyaW5nIiAmJiAhaXNTdGF0ZSkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHBhdHRlcm4gdG8gYmUgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHBvc2l4ID0gb3B0cy53aW5kb3dzOwogICAgICBjb25zdCByZWdleCA9IGlzU3RhdGUgPyBwaWNvbWF0Y2guY29tcGlsZVJlKGdsb2IsIG9wdGlvbnMpIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zLCBmYWxzZSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHN0YXRlID0gcmVnZXguc3RhdGU7CiAgICAgIGRlbGV0ZSByZWdleC5zdGF0ZTsKICAgICAgbGV0IGlzSWdub3JlZCA9ICgpID0+IGZhbHNlOwogICAgICBpZiAob3B0cy5pZ25vcmUpIHsKICAgICAgICBjb25zdCBpZ25vcmVPcHRzID0geyAuLi5vcHRpb25zLCBpZ25vcmU6IG51bGwsIG9uTWF0Y2g6IG51bGwsIG9uUmVzdWx0OiBudWxsIH07CiAgICAgICAgaXNJZ25vcmVkID0gcGljb21hdGNoKG9wdHMuaWdub3JlLCBpZ25vcmVPcHRzLCByZXR1cm5TdGF0ZSk7CiAgICAgIH0KICAgICAgY29uc3QgbWF0Y2hlciA9IChpbnB1dCwgcmV0dXJuT2JqZWN0ID0gZmFsc2UpID0+IHsKICAgICAgICBjb25zdCB7IGlzTWF0Y2gsIG1hdGNoLCBvdXRwdXQgfSA9IHBpY29tYXRjaC50ZXN0KGlucHV0LCByZWdleCwgb3B0aW9ucywgeyBnbG9iLCBwb3NpeCB9KTsKICAgICAgICBjb25zdCByZXN1bHQgPSB7IGdsb2IsIHN0YXRlLCByZWdleCwgcG9zaXgsIGlucHV0LCBvdXRwdXQsIG1hdGNoLCBpc01hdGNoIH07CiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm9uUmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBvcHRzLm9uUmVzdWx0KHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc01hdGNoID09PSBmYWxzZSkgewogICAgICAgICAgcmVzdWx0LmlzTWF0Y2ggPSBmYWxzZTsKICAgICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSWdub3JlZChpbnB1dCkpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygb3B0cy5vbklnbm9yZSA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICBvcHRzLm9uSWdub3JlKHJlc3VsdCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXN1bHQuaXNNYXRjaCA9IGZhbHNlOwogICAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIG9wdHMub25NYXRjaCA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgb3B0cy5vbk1hdGNoKHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiB0cnVlOwogICAgICB9OwogICAgICBpZiAocmV0dXJuU3RhdGUpIHsKICAgICAgICBtYXRjaGVyLnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hdGNoZXI7CiAgICB9OwogICAgcGljb21hdGNoLnRlc3QgPSAoaW5wdXQsIHJlZ2V4LCBvcHRpb25zLCB7IGdsb2IsIHBvc2l4IH0gPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGlucHV0IHRvIGJlIGEgc3RyaW5nIik7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ID09PSAiIikgewogICAgICAgIHJldHVybiB7IGlzTWF0Y2g6IGZhbHNlLCBvdXRwdXQ6ICIiIH07CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGZvcm1hdCA9IG9wdHMuZm9ybWF0IHx8IChwb3NpeCA/IHV0aWxzLnRvUG9zaXhTbGFzaGVzIDogbnVsbCk7CiAgICAgIGxldCBtYXRjaCA9IGlucHV0ID09PSBnbG9iOwogICAgICBsZXQgb3V0cHV0ID0gbWF0Y2ggJiYgZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICBpZiAobWF0Y2ggPT09IGZhbHNlKSB7CiAgICAgICAgb3V0cHV0ID0gZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICAgIG1hdGNoID0gb3V0cHV0ID09PSBnbG9iOwogICAgICB9CiAgICAgIGlmIChtYXRjaCA9PT0gZmFsc2UgfHwgb3B0cy5jYXB0dXJlID09PSB0cnVlKSB7CiAgICAgICAgaWYgKG9wdHMubWF0Y2hCYXNlID09PSB0cnVlIHx8IG9wdHMuYmFzZW5hbWUgPT09IHRydWUpIHsKICAgICAgICAgIG1hdGNoID0gcGljb21hdGNoLm1hdGNoQmFzZShpbnB1dCwgcmVnZXgsIG9wdGlvbnMsIHBvc2l4KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWF0Y2ggPSByZWdleC5leGVjKG91dHB1dCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGlzTWF0Y2g6IEJvb2xlYW4obWF0Y2gpLCBtYXRjaCwgb3V0cHV0IH07CiAgICB9OwogICAgcGljb21hdGNoLm1hdGNoQmFzZSA9IChpbnB1dCwgZ2xvYiwgb3B0aW9ucykgPT4gewogICAgICBjb25zdCByZWdleCA9IGdsb2IgaW5zdGFuY2VvZiBSZWdFeHAgPyBnbG9iIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zKTsKICAgICAgcmV0dXJuIHJlZ2V4LnRlc3QodXRpbHMuYmFzZW5hbWUoaW5wdXQpKTsKICAgIH07CiAgICBwaWNvbWF0Y2guaXNNYXRjaCA9IChzdHIyLCBwYXR0ZXJucywgb3B0aW9ucykgPT4gcGljb21hdGNoKHBhdHRlcm5zLCBvcHRpb25zKShzdHIyKTsKICAgIHBpY29tYXRjaC5wYXJzZSA9IChwYXR0ZXJuLCBvcHRpb25zKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhdHRlcm4pKSByZXR1cm4gcGF0dGVybi5tYXAoKHApID0+IHBpY29tYXRjaC5wYXJzZShwLCBvcHRpb25zKSk7CiAgICAgIHJldHVybiBwYXJzZShwYXR0ZXJuLCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSk7CiAgICB9OwogICAgcGljb21hdGNoLnNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHNjYW4oaW5wdXQsIG9wdGlvbnMpOwogICAgcGljb21hdGNoLmNvbXBpbGVSZSA9IChzdGF0ZSwgb3B0aW9ucywgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKHJldHVybk91dHB1dCA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBzdGF0ZS5vdXRwdXQ7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHByZXBlbmQgPSBvcHRzLmNvbnRhaW5zID8gIiIgOiAiXiI7CiAgICAgIGNvbnN0IGFwcGVuZCA9IG9wdHMuY29udGFpbnMgPyAiIiA6ICIkIjsKICAgICAgbGV0IHNvdXJjZSA9IGAke3ByZXBlbmR9KD86JHtzdGF0ZS5vdXRwdXR9KSR7YXBwZW5kfWA7CiAgICAgIGlmIChzdGF0ZSAmJiBzdGF0ZS5uZWdhdGVkID09PSB0cnVlKSB7CiAgICAgICAgc291cmNlID0gYF4oPyEke3NvdXJjZX0pLiokYDsKICAgICAgfQogICAgICBjb25zdCByZWdleCA9IHBpY29tYXRjaC50b1JlZ2V4KHNvdXJjZSwgb3B0aW9ucyk7CiAgICAgIGlmIChyZXR1cm5TdGF0ZSA9PT0gdHJ1ZSkgewogICAgICAgIHJlZ2V4LnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlZ2V4OwogICAgfTsKICAgIHBpY29tYXRjaC5tYWtlUmUgPSAoaW5wdXQsIG9wdGlvbnMgPSB7fSwgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKCFpbnB1dCB8fCB0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgbGV0IHBhcnNlZCA9IHsgbmVnYXRlZDogZmFsc2UsIGZhc3RwYXRoczogdHJ1ZSB9OwogICAgICBpZiAob3B0aW9ucy5mYXN0cGF0aHMgIT09IGZhbHNlICYmIChpbnB1dFswXSA9PT0gIi4iIHx8IGlucHV0WzBdID09PSAiKiIpKSB7CiAgICAgICAgcGFyc2VkLm91dHB1dCA9IHBhcnNlLmZhc3RwYXRocyhpbnB1dCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgaWYgKCFwYXJzZWQub3V0cHV0KSB7CiAgICAgICAgcGFyc2VkID0gcGFyc2UoaW5wdXQsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHBhcnNlZCwgb3B0aW9ucywgcmV0dXJuT3V0cHV0LCByZXR1cm5TdGF0ZSk7CiAgICB9OwogICAgcGljb21hdGNoLnRvUmVnZXggPSAoc291cmNlLCBvcHRpb25zKSA9PiB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgcmV0dXJuIG5ldyBSZWdFeHAoc291cmNlLCBvcHRzLmZsYWdzIHx8IChvcHRzLm5vY2FzZSA/ICJpIiA6ICIiKSk7CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZGVidWcgPT09IHRydWUpIHRocm93IGVycjsKICAgICAgICByZXR1cm4gLyReLzsKICAgICAgfQogICAgfTsKICAgIHBpY29tYXRjaC5jb25zdGFudHMgPSBjb25zdGFudHM7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBwaWNvbWF0Y2g7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2gyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBwaWNvID0gcmVxdWlyZV9waWNvbWF0Y2goKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICBmdW5jdGlvbiBwaWNvbWF0Y2goZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgewogICAgICBpZiAob3B0aW9ucyAmJiAob3B0aW9ucy53aW5kb3dzID09PSBudWxsIHx8IG9wdGlvbnMud2luZG93cyA9PT0gdm9pZCAwKSkgewogICAgICAgIG9wdGlvbnMgPSB7IC4uLm9wdGlvbnMsIHdpbmRvd3M6IHV0aWxzLmlzV2luZG93cygpIH07CiAgICAgIH0KICAgICAgcmV0dXJuIHBpY28oZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUpOwogICAgfQogICAgT2JqZWN0LmFzc2lnbihwaWNvbWF0Y2gsIHBpY28pOwogICAgbW9kdWxlMi5leHBvcnRzID0gcGljb21hdGNoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBpY29tYXRjaF8xID0gcmVxdWlyZV9waWNvbWF0Y2gyKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBQYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9wYXR0ZXJucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGFkZFBhdHRlcm4ocGF0dGVybiwgcmVwbGFjZW1lbnRGbikgewogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gQXJyYXkuaXNBcnJheShwYXR0ZXJuKSA/IHBhdHRlcm4gOiBbcGF0dGVybl07CiAgICAgICAgZm9yIChjb25zdCBnbG9iIG9mIHBhdHRlcm5zKSB7CiAgICAgICAgICBjb25zdCB7IG91dHB1dCB9ID0gKDAsIHBpY29tYXRjaF8xLnBhcnNlKShnbG9iKTsKICAgICAgICAgIHRoaXMuX3BhdHRlcm5zLnNldChuZXcgUmVnRXhwKGBeJHtvdXRwdXR9JGApLCByZXBsYWNlbWVudEZuKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3Jlc29sdmUocGF0aCkgewogICAgICAgIGxldCBuZXdQYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9wYXR0ZXJucy5mb3JFYWNoKChmbiwgcmUpID0+IHsKICAgICAgICAgIGlmIChyZS50ZXN0KHBhdGgpKSB7CiAgICAgICAgICAgIG5ld1BhdGggPSBmbihuZXdQYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3UGF0aDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdHRlcm5NYXRjaGluZ0hvc3QgPSBQYXR0ZXJuTWF0Y2hpbmdIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3JlY29yZC5qcwp2YXIgcmVxdWlyZV9yZWNvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIG1lbW9yeV8xID0gcmVxdWlyZV9tZW1vcnkoKTsKICAgIHZhciBDb3JkSG9zdCA9IGNsYXNzIF9Db3JkSG9zdCBleHRlbmRzIG1lbW9yeV8xLlNpbXBsZU1lbW9yeUhvc3QgewogICAgICBfYmFjazsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2ZpbGVzVG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9iYWNrID0gX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGJhY2tlbmQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgc3luY2hyb25vdXM6IHRoaXMuX2JhY2suY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgY29weSBvZiB0aGlzIGhvc3QsIGluY2x1ZGluZyBhbGwgYWN0aW9ucyBtYWRlLgogICAgICAgKiBAcmV0dXJucyB7Q29yZEhvc3R9IFRoZSBjYXJib24gY29weS4KICAgICAgICovCiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IGRvbGx5ID0gbmV3IF9Db3JkSG9zdCh0aGlzLl9iYWNrKTsKICAgICAgICBkb2xseS5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICBkb2xseS5fZmlsZXNUb0NyZWF0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0NyZWF0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9SZW5hbWUgPSBuZXcgTWFwKHRoaXMuX2ZpbGVzVG9SZW5hbWUpOwogICAgICAgIGRvbGx5Ll9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gbmV3IE1hcCh0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0KTsKICAgICAgICBkb2xseS5fZmlsZXNUb0RlbGV0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0RlbGV0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9PdmVyd3JpdGUgPSBuZXcgU2V0KHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUpOwogICAgICAgIHJldHVybiBkb2xseTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tbWl0IHRoZSBjaGFuZ2VzIHJlY29yZGVkIHRvIGEgSG9zdC4gSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBob3N0IGRvZXMgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUKICAgICAgICogYXMgdGhlIGhvc3QgdGhhdCB3YXMgdXNlZCBmb3IgYmFja2VuZCAoY291bGQgYmUgdGhlIHNhbWUgaG9zdCkuCiAgICAgICAqIEBwYXJhbSBob3N0IFRoZSBob3N0IHRvIGNyZWF0ZS9kZWxldGUvcmVuYW1lL292ZXJ3cml0ZSBmaWxlcyB0by4KICAgICAgICogQHBhcmFtIGZvcmNlIFdoZXRoZXIgdG8gc2tpcCBleGlzdGVuY2UgY2hlY2tzIHdoZW4gY3JlYXRpbmcvb3ZlcndyaXRpbmcuIFRoaXMgaXMKICAgICAgICogICBmYXN0ZXIgYnV0IG1pZ2h0IGxlYWQgdG8gaW5jb3JyZWN0IHN0YXRlcy4gQmVjYXVzZSBIb3N0cyBuYXRpdmVseSBkb24ndCBzdXBwb3J0IGNyZWF0aW9uCiAgICAgICAqICAgdmVyc3VzIG92ZXJ3cml0aW5nIChpdCdzIG9ubHkgd3JpdGluZyksIHdlIGNoZWNrIGZvciBleGlzdGVuY2UgYmVmb3JlIGNvbXBsZXRpbmcgYSByZXF1ZXN0LgogICAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgY29tcGxldGVzIHdoZW4gZG9uZSwgb3IgZXJyb3IgaWYgYW4gZXJyb3Igb2NjdXJlZC4KICAgICAgICovCiAgICAgIGNvbW1pdChob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkodGhpcy5yZWNvcmRzKCkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChyZWNvcmQpID0+IHsKICAgICAgICAgIHN3aXRjaCAocmVjb3JkLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5kZWxldGUocmVjb3JkLnBhdGgpOwogICAgICAgICAgICBjYXNlICJyZW5hbWUiOgogICAgICAgICAgICAgIHJldHVybiBob3N0LnJlbmFtZShyZWNvcmQuZnJvbSwgcmVjb3JkLnRvKTsKICAgICAgICAgICAgY2FzZSAiY3JlYXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmIChleGlzdHMgJiYgIWZvcmNlKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHJlY29yZC5wYXRoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXR1cm4gaG9zdC53cml0ZShyZWNvcmQucGF0aCwgcmVjb3JkLmNvbnRlbnQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmICghZXhpc3RzICYmICFmb3JjZSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQucGF0aCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGUocmVjb3JkLnBhdGgsIHJlY29yZC5jb250ZW50KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEucmVkdWNlKSgoKSA9PiB7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHJlY29yZHMoKSB7CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIC4uLlsuLi50aGlzLl9maWxlc1RvRGVsZXRlLnZhbHVlcygpXS5tYXAoKHBhdGgpID0+ICh7CiAgICAgICAgICAgIGtpbmQ6ICJkZWxldGUiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldLm1hcCgoW2Zyb20sIHRvXSkgPT4gKHsKICAgICAgICAgICAga2luZDogInJlbmFtZSIsCiAgICAgICAgICAgIGZyb20sCiAgICAgICAgICAgIHRvCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS52YWx1ZXMoKV0ubWFwKChwYXRoKSA9PiAoewogICAgICAgICAgICBraW5kOiAiY3JlYXRlIiwKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogdGhpcy5fcmVhZChwYXRoKQogICAgICAgICAgfSkpLAogICAgICAgICAgLi4uWy4uLnRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUudmFsdWVzKCldLm1hcCgocGF0aCkgPT4gKHsKICAgICAgICAgICAga2luZDogIm92ZXJ3cml0ZSIsCiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuX3JlYWQocGF0aCkKICAgICAgICAgIH0pKQogICAgICAgIF07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNwZWNpYWxpemVkIHZlcnNpb24gb2Yge0BsaW5rIENvcmRIb3N0I3dyaXRlfSB3aGljaCBmb3JjZXMgdGhlIGNyZWF0aW9uIG9mIGEgZmlsZSB3aGV0aGVyIGl0CiAgICAgICAqIGV4aXN0cyBvciBub3QuCiAgICAgICAqIEBwYXJhbSB7fSBwYXRoCiAgICAgICAqIEBwYXJhbSB7RmlsZUJ1ZmZlcn0gY29udGVudAogICAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn0KICAgICAgICovCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgaWYgKHN1cGVyLl9leGlzdHMocGF0aCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuc3dpdGNoTWFwKSgoaXNEaXIpID0+IHsKICAgICAgICAgIGlmIChpc0RpcikgewogICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0aGlzLmV4aXN0cyhwYXRoKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgIGlmICghZXhpc3RzKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgaWYgKGV4aXN0cykgewogICAgICAgICAgICBpZiAodGhpcy53aWxsUmVuYW1lKHBhdGgpIHx8IHRoaXMud2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhwYXRoKSkgewogICAgICAgICAgcmV0dXJuIHN1cGVyLnJlYWQocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG1heWJlT3JpZ2luID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQocGF0aCk7CiAgICAgICAgICAgIGlmIChtYXliZU9yaWdpbikgewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWVSZXZlcnQuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZGVsZXRlKG1heWJlT3JpZ2luKTsKICAgICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChtYXliZU9yaWdpbik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLlVua25vd25FeGNlcHRpb24oYFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGF0aDogJHtKU09OLnN0cmluZ2lmeShwYXRoKX0uYCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYmFjay5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgICBpZiAoZXhpc3RzKSB7CiAgICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5hZGQocGF0aCk7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5leGlzdHModG8pLCB0aGlzLmV4aXN0cyhmcm9tKSkucGlwZSgoMCwgcnhqc18xLnRvQXJyYXkpKCksICgwLCByeGpzXzEuc3dpdGNoTWFwKSgoW2V4aXN0VG8sIGV4aXN0RnJvbV0pID0+IHsKICAgICAgICAgIGlmICghZXhpc3RGcm9tKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGZyb20pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmcm9tID09PSB0bykgewogICAgICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4aXN0VG8pIHsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24odG8pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnJlbmFtZShmcm9tLCB0byksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoeCkgPT4gewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuYWRkKHRvKTsKICAgICAgICAgICAgICB4LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyh0bykpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5kZWxldGUodG8pOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkKGZyb20pLnBpcGUoKDAsIHJ4anNfMS5tYXApKChjb250ZW50KSA9PiB0aGlzLl93cml0ZSh0bywgY29udGVudCkpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG1heWJlVG8xID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAobWF5YmVUbzEpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5kZWxldGUobWF5YmVUbzEpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0LmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgZnJvbSA9IG1heWJlVG8xOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5zZXQoZnJvbSwgdG8pOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5zZXQodG8sIGZyb20pOwogICAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhmcm9tKSkgewogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQoZnJvbSkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGNvbnRlbnQpID0+IHN1cGVyLndyaXRlKHRvLCBjb250ZW50KSkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKHN1cGVyLmxpc3QocGF0aCksIHRoaXMuX2JhY2subGlzdChwYXRoKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKGxpc3QsIGN1cnIpID0+IHsKICAgICAgICAgIGN1cnIuZm9yRWFjaCgoZWxlbSkgPT4gbGlzdC5hZGQoZWxlbSkpOwogICAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgICAgfSwgLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSksICgwLCByeGpzXzEubWFwKSgoc2V0MikgPT4gWy4uLnNldDJdKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gKDAsIHJ4anNfMS5vZikodHJ1ZSkgOiB0aGlzLndpbGxEZWxldGUocGF0aCkgfHwgdGhpcy53aWxsUmVuYW1lKHBhdGgpID8gKDAsIHJ4anNfMS5vZikoZmFsc2UpIDogdGhpcy5fYmFjay5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5pc0RpcmVjdG9yeShwYXRoKSA6IHRoaXMuX2JhY2suaXNEaXJlY3RvcnkocGF0aCk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuaXNGaWxlKHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKGZhbHNlKSA6IHRoaXMuX2JhY2suaXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5zdGF0KHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKG51bGwpIDogdGhpcy5fYmFjay5zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIHdhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICB3aWxsQ3JlYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbE92ZXJ3cml0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyhwYXRoKTsKICAgICAgfQogICAgICB3aWxsUmVuYW1lKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb1JlbmFtZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbFJlbmFtZVRvKHBhdGgsIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZ2V0KHBhdGgpID09PSB0bzsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gQ29yZEhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcwp2YXIgcmVxdWlyZV9zYWZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2FmZVJlYWRvbmx5SG9zdCA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFNhZmVSZWFkb25seUhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShbXSkpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikoZmFsc2UpKSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNGaWxlKHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShmYWxzZSkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0cy4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0ICYmIG1heWJlU3RhdC5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikobnVsbCkpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNhZmVSZWFkb25seUhvc3QgPSBTYWZlUmVhZG9ubHlIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBTY29wZWRIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihkZWxlZ2F0ZSwgX3Jvb3QgPSBwYXRoXzEuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICBzdXBlcihkZWxlZ2F0ZSk7CiAgICAgICAgdGhpcy5fcm9vdCA9IF9yb290OwogICAgICB9CiAgICAgIF9yZXNvbHZlKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHBhdGhfMS5qb2luKSh0aGlzLl9yb290LCBwYXRoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSBTY29wZWRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzCnZhciByZXF1aXJlX2hvc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGVzdCA9IHZvaWQgMDsKICAgIHZhciB0ZXN0ID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdGVzdCgpKTsKICAgIGV4cG9ydHMyLnRlc3QgPSB0ZXN0OwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYWxpYXMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYnVmZmVyMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jcmVhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW1wdHkyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbWVtb3J5KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BhdHRlcm4yKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3JlY29yZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zYWZlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Njb3BlZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zeW5jKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Jlc29sdmVyKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaW5kZXguanMKdmFyIHJlcXVpcmVfdmlydHVhbF9mcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmlydHVhbEZzID0gdm9pZCAwOwogICAgdmFyIHZpcnR1YWxGcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2hvc3QoKSk7CiAgICBleHBvcnRzMi52aXJ0dWFsRnMgPSB2aXJ0dWFsRnM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9wYXRoKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IGNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZVdvcmtzcGFjZUhvc3QoaG9zdCkgewogICAgICBjb25zdCB3b3Jrc3BhY2VIb3N0ID0gewogICAgICAgIGFzeW5jIHJlYWRGaWxlKHBhdGgpIHsKICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QucmVhZCgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpKTsKICAgICAgICAgIHJldHVybiB2aXJ0dWFsX2ZzXzEudmlydHVhbEZzLmZpbGVCdWZmZXJUb1N0cmluZyhkYXRhKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIHdyaXRlRmlsZShwYXRoLCBkYXRhKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LndyaXRlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSwgdmlydHVhbF9mc18xLnZpcnR1YWxGcy5zdHJpbmdUb0ZpbGVCdWZmZXIoZGF0YSkpKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNEaXJlY3RvcnkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgICAgICB9IGNhdGNoIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNGaWxlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiB3b3Jrc3BhY2VIb3N0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc2Nhbm5lci5qcwp2YXIgcmVxdWlyZV9zY2FubmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zY2FubmVyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gdm9pZCAwOwogICAgICBmdW5jdGlvbiBjcmVhdGVTY2FubmVyKHRleHQsIGlnbm9yZVRyaXZpYSA9IGZhbHNlKSB7CiAgICAgICAgY29uc3QgbGVuID0gdGV4dC5sZW5ndGg7CiAgICAgICAgbGV0IHBvcyA9IDAsIHZhbHVlID0gIiIsIHRva2VuT2Zmc2V0ID0gMCwgdG9rZW4gPSAxNiwgbGluZU51bWJlciA9IDAsIGxpbmVTdGFydE9mZnNldCA9IDAsIHRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgc2NhbkVycm9yID0gMDsKICAgICAgICBmdW5jdGlvbiBzY2FuSGV4RGlnaXRzKGNvdW50LCBleGFjdCkgewogICAgICAgICAgbGV0IGRpZ2l0cyA9IDA7CiAgICAgICAgICBsZXQgdmFsdWUyID0gMDsKICAgICAgICAgIHdoaWxlIChkaWdpdHMgPCBjb3VudCB8fCAhZXhhY3QpIHsKICAgICAgICAgICAgbGV0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA+PSA0OCAmJiBjaCA8PSA1NykgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA0ODsKICAgICAgICAgICAgfSBlbHNlIGlmIChjaCA+PSA2NSAmJiBjaCA8PSA3MCkgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA2NSArIDEwOwogICAgICAgICAgICB9IGVsc2UgaWYgKGNoID49IDk3ICYmIGNoIDw9IDEwMikgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA5NyArIDEwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBkaWdpdHMrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChkaWdpdHMgPCBjb3VudCkgewogICAgICAgICAgICB2YWx1ZTIgPSAtMTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB2YWx1ZTI7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNldFBvc2l0aW9uKG5ld1Bvc2l0aW9uKSB7CiAgICAgICAgICBwb3MgPSBuZXdQb3NpdGlvbjsKICAgICAgICAgIHZhbHVlID0gIiI7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IDA7CiAgICAgICAgICB0b2tlbiA9IDE2OwogICAgICAgICAgc2NhbkVycm9yID0gMDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk51bWJlcigpIHsKICAgICAgICAgIGxldCBzdGFydCA9IHBvczsKICAgICAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDgpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDYpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgICAgcmV0dXJuIHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kID0gcG9zOwogICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNjkgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDEwMSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDMgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ1KSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgZW5kID0gcG9zOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZyhzdGFydCwgZW5kKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2NhblN0cmluZygpIHsKICAgICAgICAgIGxldCByZXN1bHQgPSAiIiwgc3RhcnQgPSBwb3M7CiAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAyOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA9PT0gMzQpIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNoID09PSA5MikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBjaDIgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKyspOwogICAgICAgICAgICAgIHN3aXRjaCAoY2gyKSB7CiAgICAgICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gJyInOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgOTI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXFwiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgNDc6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiLyI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSA5ODoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcYiI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMDI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXGYiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTEwOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxuIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDExNDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcciI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTY6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiCSI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTc6CiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoMyA9IHNjYW5IZXhEaWdpdHMoNCwgdHJ1ZSk7CiAgICAgICAgICAgICAgICAgIGlmIChjaDMgPj0gMCkgewogICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNoMyk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgc2NhbkVycm9yID0gNDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN0YXJ0ID0gcG9zOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjaCA+PSAwICYmIGNoIDw9IDMxKSB7CiAgICAgICAgICAgICAgaWYgKGlzTGluZUJyZWFrKGNoKSkgewogICAgICAgICAgICAgICAgcmVzdWx0ICs9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSA2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OZXh0KCkgewogICAgICAgICAgdmFsdWUgPSAiIjsKICAgICAgICAgIHNjYW5FcnJvciA9IDA7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IHBvczsKICAgICAgICAgIGxpbmVTdGFydE9mZnNldCA9IGxpbmVOdW1iZXI7CiAgICAgICAgICBwcmV2VG9rZW5MaW5lU3RhcnRPZmZzZXQgPSB0b2tlbkxpbmVTdGFydE9mZnNldDsKICAgICAgICAgIGlmIChwb3MgPj0gbGVuKSB7CiAgICAgICAgICAgIHRva2VuT2Zmc2V0ID0gbGVuOwogICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNzsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICBpZiAoaXNXaGl0ZVNwYWNlKGNvZGUpKSB7CiAgICAgICAgICAgIGRvIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIGNvZGUgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgfSB3aGlsZSAoaXNXaGl0ZVNwYWNlKGNvZGUpKTsKICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIHZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSk7CiAgICAgICAgICAgIGlmIChjb2RlID09PSAxMyAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gMTApIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXG4iOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgdG9rZW5MaW5lU3RhcnRPZmZzZXQgPSBwb3M7CiAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE0OwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIC8vIHRva2VuczogW117fTosCiAgICAgICAgICAgIGNhc2UgMTIzOgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDI7CiAgICAgICAgICAgIGNhc2UgOTE6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMzsKICAgICAgICAgICAgY2FzZSA5MzoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA0OwogICAgICAgICAgICBjYXNlIDU4OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDY7CiAgICAgICAgICAgIGNhc2UgNDQ6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNTsKICAgICAgICAgICAgLy8gc3RyaW5ncwogICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHZhbHVlID0gc2NhblN0cmluZygpOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEwOwogICAgICAgICAgICAvLyBjb21tZW50cwogICAgICAgICAgICBjYXNlIDQ3OgogICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gcG9zIC0gMTsKICAgICAgICAgICAgICBpZiAodGV4dC5jaGFyQ29kZUF0KHBvcyArIDEpID09PSA0NykgewogICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgbGVuKSB7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhbHVlID0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRleHQuY2hhckNvZGVBdChwb3MgKyAxKSA9PT0gNDIpIHsKICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgY29uc3Qgc2FmZUxlbmd0aCA9IGxlbiAtIDE7CiAgICAgICAgICAgICAgICBsZXQgY29tbWVudENsb3NlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHNhZmVMZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgY2ggPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgICAgICAgaWYgKGNoID09PSA0MiAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zICsgMSkgPT09IDQ3KSB7CiAgICAgICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICAgICAgY29tbWVudENsb3NlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayhjaCkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoY2ggPT09IDEzICYmIHRleHQuY2hhckNvZGVBdChwb3MpID09PSAxMCkgewogICAgICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgICAgICAgICB0b2tlbkxpbmVTdGFydE9mZnNldCA9IHBvczsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFjb21tZW50Q2xvc2VkKSB7CiAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAxOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmFsdWUgPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEzOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAvLyBudW1iZXJzCiAgICAgICAgICAgIGNhc2UgNDU6CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID09PSBsZW4gfHwgIWlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIC8vIGZvdW5kIGEgbWludXMsIGZvbGxvd2VkIGJ5IGEgbnVtYmVyIHNvCiAgICAgICAgICAgIC8vIHdlIGZhbGwgdGhyb3VnaCB0byBwcm9jZWVkIHdpdGggc2Nhbm5pbmcKICAgICAgICAgICAgLy8gbnVtYmVycwogICAgICAgICAgICBjYXNlIDQ4OgogICAgICAgICAgICBjYXNlIDQ5OgogICAgICAgICAgICBjYXNlIDUwOgogICAgICAgICAgICBjYXNlIDUxOgogICAgICAgICAgICBjYXNlIDUyOgogICAgICAgICAgICBjYXNlIDUzOgogICAgICAgICAgICBjYXNlIDU0OgogICAgICAgICAgICBjYXNlIDU1OgogICAgICAgICAgICBjYXNlIDU2OgogICAgICAgICAgICBjYXNlIDU3OgogICAgICAgICAgICAgIHZhbHVlICs9IHNjYW5OdW1iZXIoKTsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMTsKICAgICAgICAgICAgLy8gbGl0ZXJhbHMgYW5kIHVua25vd24gc3ltYm9scwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCBsZW4gJiYgaXNVbmtub3duQ29udGVudENoYXJhY3Rlcihjb2RlKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0b2tlbk9mZnNldCAhPT0gcG9zKSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRleHQuc3Vic3RyaW5nKHRva2VuT2Zmc2V0LCBwb3MpOwogICAgICAgICAgICAgICAgc3dpdGNoICh2YWx1ZSkgewogICAgICAgICAgICAgICAgICBjYXNlICJ0cnVlIjoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA4OwogICAgICAgICAgICAgICAgICBjYXNlICJmYWxzZSI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gOTsKICAgICAgICAgICAgICAgICAgY2FzZSAibnVsbCI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpc1Vua25vd25Db250ZW50Q2hhcmFjdGVyKGNvZGUpIHsKICAgICAgICAgIGlmIChpc1doaXRlU3BhY2UoY29kZSkgfHwgaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICBjYXNlIDkzOgogICAgICAgICAgICBjYXNlIDEyMzoKICAgICAgICAgICAgY2FzZSA5MToKICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgY2FzZSA1ODoKICAgICAgICAgICAgY2FzZSA0NDoKICAgICAgICAgICAgY2FzZSA0NzoKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHROb25Ucml2aWEoKSB7CiAgICAgICAgICBsZXQgcmVzdWx0OwogICAgICAgICAgZG8gewogICAgICAgICAgICByZXN1bHQgPSBzY2FuTmV4dCgpOwogICAgICAgICAgfSB3aGlsZSAocmVzdWx0ID49IDEyICYmIHJlc3VsdCA8PSAxNSk7CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgc2V0UG9zaXRpb24sCiAgICAgICAgICBnZXRQb3NpdGlvbjogKCkgPT4gcG9zLAogICAgICAgICAgc2NhbjogaWdub3JlVHJpdmlhID8gc2Nhbk5leHROb25Ucml2aWEgOiBzY2FuTmV4dCwKICAgICAgICAgIGdldFRva2VuOiAoKSA9PiB0b2tlbiwKICAgICAgICAgIGdldFRva2VuVmFsdWU6ICgpID0+IHZhbHVlLAogICAgICAgICAgZ2V0VG9rZW5PZmZzZXQ6ICgpID0+IHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5MZW5ndGg6ICgpID0+IHBvcyAtIHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5TdGFydExpbmU6ICgpID0+IGxpbmVTdGFydE9mZnNldCwKICAgICAgICAgIGdldFRva2VuU3RhcnRDaGFyYWN0ZXI6ICgpID0+IHRva2VuT2Zmc2V0IC0gcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5FcnJvcjogKCkgPT4gc2NhbkVycm9yCiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gY3JlYXRlU2Nhbm5lcjsKICAgICAgZnVuY3Rpb24gaXNXaGl0ZVNwYWNlKGNoKSB7CiAgICAgICAgcmV0dXJuIGNoID09PSAzMiB8fCBjaCA9PT0gOTsKICAgICAgfQogICAgICBmdW5jdGlvbiBpc0xpbmVCcmVhayhjaCkgewogICAgICAgIHJldHVybiBjaCA9PT0gMTAgfHwgY2ggPT09IDEzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRGlnaXQoY2gpIHsKICAgICAgICByZXR1cm4gY2ggPj0gNDggJiYgY2ggPD0gNTc7CiAgICAgIH0KICAgICAgdmFyIENoYXJhY3RlckNvZGVzOwogICAgICAoZnVuY3Rpb24oQ2hhcmFjdGVyQ29kZXMyKSB7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibGluZUZlZWQiXSA9IDEwXSA9ICJsaW5lRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY2FycmlhZ2VSZXR1cm4iXSA9IDEzXSA9ICJjYXJyaWFnZVJldHVybiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic3BhY2UiXSA9IDMyXSA9ICJzcGFjZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzAiXSA9IDQ4XSA9ICJfMCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzEiXSA9IDQ5XSA9ICJfMSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzIiXSA9IDUwXSA9ICJfMiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzMiXSA9IDUxXSA9ICJfMyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzQiXSA9IDUyXSA9ICJfNCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzUiXSA9IDUzXSA9ICJfNSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzYiXSA9IDU0XSA9ICJfNiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzciXSA9IDU1XSA9ICJfNyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzgiXSA9IDU2XSA9ICJfOCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzkiXSA9IDU3XSA9ICJfOSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYSJdID0gOTddID0gImEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImIiXSA9IDk4XSA9ICJiIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjIl0gPSA5OV0gPSAiYyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZCJdID0gMTAwXSA9ICJkIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJlIl0gPSAxMDFdID0gImUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImYiXSA9IDEwMl0gPSAiZiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZyJdID0gMTAzXSA9ICJnIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJoIl0gPSAxMDRdID0gImgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImkiXSA9IDEwNV0gPSAiaSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiaiJdID0gMTA2XSA9ICJqIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJrIl0gPSAxMDddID0gImsiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImwiXSA9IDEwOF0gPSAibCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibSJdID0gMTA5XSA9ICJtIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJuIl0gPSAxMTBdID0gIm4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIm8iXSA9IDExMV0gPSAibyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicCJdID0gMTEyXSA9ICJwIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJxIl0gPSAxMTNdID0gInEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInIiXSA9IDExNF0gPSAiciI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicyJdID0gMTE1XSA9ICJzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ0Il0gPSAxMTZdID0gInQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInUiXSA9IDExN10gPSAidSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidiJdID0gMTE4XSA9ICJ2IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ3Il0gPSAxMTldID0gInciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIngiXSA9IDEyMF0gPSAieCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsieSJdID0gMTIxXSA9ICJ5IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ6Il0gPSAxMjJdID0gInoiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkEiXSA9IDY1XSA9ICJBIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJCIl0gPSA2Nl0gPSAiQiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiQyJdID0gNjddID0gIkMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkQiXSA9IDY4XSA9ICJEIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJFIl0gPSA2OV0gPSAiRSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiRiJdID0gNzBdID0gIkYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkciXSA9IDcxXSA9ICJHIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJIIl0gPSA3Ml0gPSAiSCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSSJdID0gNzNdID0gIkkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkoiXSA9IDc0XSA9ICJKIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJLIl0gPSA3NV0gPSAiSyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTCJdID0gNzZdID0gIkwiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIk0iXSA9IDc3XSA9ICJNIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJOIl0gPSA3OF0gPSAiTiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTyJdID0gNzldID0gIk8iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlAiXSA9IDgwXSA9ICJQIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJRIl0gPSA4MV0gPSAiUSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiUiJdID0gODJdID0gIlIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlMiXSA9IDgzXSA9ICJTIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJUIl0gPSA4NF0gPSAiVCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVSJdID0gODVdID0gIlUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlYiXSA9IDg2XSA9ICJWIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJXIl0gPSA4N10gPSAiVyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiWCJdID0gODhdID0gIlgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlkiXSA9IDg5XSA9ICJZIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJaIl0gPSA5MF0gPSAiWiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYXN0ZXJpc2siXSA9IDQyXSA9ICJhc3RlcmlzayI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYmFja3NsYXNoIl0gPSA5Ml0gPSAiYmFja3NsYXNoIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjbG9zZUJyYWNlIl0gPSAxMjVdID0gImNsb3NlQnJhY2UiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNsb3NlQnJhY2tldCJdID0gOTNdID0gImNsb3NlQnJhY2tldCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29sb24iXSA9IDU4XSA9ICJjb2xvbiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29tbWEiXSA9IDQ0XSA9ICJjb21tYSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZG90Il0gPSA0Nl0gPSAiZG90IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJkb3VibGVRdW90ZSJdID0gMzRdID0gImRvdWJsZVF1b3RlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJtaW51cyJdID0gNDVdID0gIm1pbnVzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2UiXSA9IDEyM10gPSAib3BlbkJyYWNlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2tldCJdID0gOTFdID0gIm9wZW5CcmFja2V0IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJwbHVzIl0gPSA0M10gPSAicGx1cyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic2xhc2giXSA9IDQ3XSA9ICJzbGFzaCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZm9ybUZlZWQiXSA9IDEyXSA9ICJmb3JtRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidGFiIl0gPSA5XSA9ICJ0YWIiOwogICAgICB9KShDaGFyYWN0ZXJDb2RlcyB8fCAoQ2hhcmFjdGVyQ29kZXMgPSB7fSkpOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zdHJpbmctaW50ZXJuLmpzCnZhciByZXF1aXJlX3N0cmluZ19pbnRlcm4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL3N0cmluZy1pbnRlcm4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyJdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLnN1cHBvcnRlZEVvbHMgPSBleHBvcnRzMy5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlcyA9IGV4cG9ydHMzLmNhY2hlZFNwYWNlcyA9IHZvaWQgMDsKICAgICAgZXhwb3J0czMuY2FjaGVkU3BhY2VzID0gbmV3IEFycmF5KDIwKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICByZXR1cm4gIiAiLnJlcGVhdChpbmRleCk7CiAgICAgIH0pOwogICAgICBjb25zdCBtYXhDYWNoZWRWYWx1ZXMgPSAyMDA7CiAgICAgIGV4cG9ydHMzLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzID0gewogICAgICAgICIgIjogewogICAgICAgICAgIlxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcciI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyIiArICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgIgkiOiB7CiAgICAgICAgICAiXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHIiICsgIgkiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcclxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pCiAgICAgICAgfQogICAgICB9OwogICAgICBleHBvcnRzMy5zdXBwb3J0ZWRFb2xzID0gWyJcbiIsICJcciIsICJcclxuIl07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgc2Nhbm5lcl8xID0gcmVxdWlyZV9zY2FubmVyKCk7CiAgICB2YXIgc3RyaW5nX2ludGVybl8xID0gcmVxdWlyZV9zdHJpbmdfaW50ZXJuKCk7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyIsICIuL3NjYW5uZXIiLCAiLi9zdHJpbmctaW50ZXJuIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuaXNFT0wgPSBleHBvcnRzMy5mb3JtYXQgPSB2b2lkIDA7CiAgICAgIGZ1bmN0aW9uIGZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKSB7CiAgICAgICAgbGV0IGluaXRpYWxJbmRlbnRMZXZlbDsKICAgICAgICBsZXQgZm9ybWF0VGV4dDsKICAgICAgICBsZXQgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgIGxldCByYW5nZVN0YXJ0OwogICAgICAgIGxldCByYW5nZUVuZDsKICAgICAgICBpZiAocmFuZ2UpIHsKICAgICAgICAgIHJhbmdlU3RhcnQgPSByYW5nZS5vZmZzZXQ7CiAgICAgICAgICByYW5nZUVuZCA9IHJhbmdlU3RhcnQgKyByYW5nZS5sZW5ndGg7CiAgICAgICAgICBmb3JtYXRUZXh0U3RhcnQgPSByYW5nZVN0YXJ0OwogICAgICAgICAgd2hpbGUgKGZvcm1hdFRleHRTdGFydCA+IDAgJiYgIWlzRU9MKGRvY3VtZW50VGV4dCwgZm9ybWF0VGV4dFN0YXJ0IC0gMSkpIHsKICAgICAgICAgICAgZm9ybWF0VGV4dFN0YXJ0LS07CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kT2Zmc2V0ID0gcmFuZ2VFbmQ7CiAgICAgICAgICB3aGlsZSAoZW5kT2Zmc2V0IDwgZG9jdW1lbnRUZXh0Lmxlbmd0aCAmJiAhaXNFT0woZG9jdW1lbnRUZXh0LCBlbmRPZmZzZXQpKSB7CiAgICAgICAgICAgIGVuZE9mZnNldCsrOwogICAgICAgICAgfQogICAgICAgICAgZm9ybWF0VGV4dCA9IGRvY3VtZW50VGV4dC5zdWJzdHJpbmcoZm9ybWF0VGV4dFN0YXJ0LCBlbmRPZmZzZXQpOwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gY29tcHV0ZUluZGVudExldmVsKGZvcm1hdFRleHQsIG9wdGlvbnMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3JtYXRUZXh0ID0gZG9jdW1lbnRUZXh0OwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gMDsKICAgICAgICAgIGZvcm1hdFRleHRTdGFydCA9IDA7CiAgICAgICAgICByYW5nZVN0YXJ0ID0gMDsKICAgICAgICAgIHJhbmdlRW5kID0gZG9jdW1lbnRUZXh0Lmxlbmd0aDsKICAgICAgICB9CiAgICAgICAgY29uc3QgZW9sID0gZ2V0RU9MKG9wdGlvbnMsIGRvY3VtZW50VGV4dCk7CiAgICAgICAgY29uc3QgZW9sRmFzdFBhdGhTdXBwb3J0ZWQgPSBzdHJpbmdfaW50ZXJuXzEuc3VwcG9ydGVkRW9scy5pbmNsdWRlcyhlb2wpOwogICAgICAgIGxldCBudW1iZXJMaW5lQnJlYWtzID0gMDsKICAgICAgICBsZXQgaW5kZW50TGV2ZWwgPSAwOwogICAgICAgIGxldCBpbmRlbnRWYWx1ZTsKICAgICAgICBpZiAob3B0aW9ucy5pbnNlcnRTcGFjZXMpIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1tvcHRpb25zLnRhYlNpemUgfHwgNF0gPz8gcmVwZWF0MihzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdLCBvcHRpb25zLnRhYlNpemUgfHwgNCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gIgkiOwogICAgICAgIH0KICAgICAgICBjb25zdCBpbmRlbnRUeXBlID0gaW5kZW50VmFsdWUgPT09ICIJIiA/ICIJIiA6ICIgIjsKICAgICAgICBsZXQgc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikoZm9ybWF0VGV4dCwgZmFsc2UpOwogICAgICAgIGxldCBoYXNFcnJvciA9IGZhbHNlOwogICAgICAgIGZ1bmN0aW9uIG5ld0xpbmVzQW5kSW5kZW50KCkgewogICAgICAgICAgaWYgKG51bWJlckxpbmVCcmVha3MgPiAxKSB7CiAgICAgICAgICAgIHJldHVybiByZXBlYXQyKGVvbCwgbnVtYmVyTGluZUJyZWFrcykgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBhbW91bnRPZlNwYWNlcyA9IGluZGVudFZhbHVlLmxlbmd0aCAqIChpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICBpZiAoIWVvbEZhc3RQYXRoU3VwcG9ydGVkIHx8IGFtb3VudE9mU3BhY2VzID4gc3RyaW5nX2ludGVybl8xLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzW2luZGVudFR5cGVdW2VvbF0ubGVuZ3RoKSB7CiAgICAgICAgICAgIHJldHVybiBlb2wgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYW1vdW50T2ZTcGFjZXMgPD0gMCkgewogICAgICAgICAgICByZXR1cm4gZW9sOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN0cmluZ19pbnRlcm5fMS5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlc1tpbmRlbnRUeXBlXVtlb2xdW2Ftb3VudE9mU3BhY2VzXTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICBsZXQgdG9rZW4gPSBzY2FubmVyLnNjYW4oKTsKICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgPSAwOwogICAgICAgICAgd2hpbGUgKHRva2VuID09PSAxNSB8fCB0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgaWYgKHRva2VuID09PSAxNCAmJiBvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgKz0gMTsKICAgICAgICAgICAgfSBlbHNlIGlmICh0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgICBudW1iZXJMaW5lQnJlYWtzID0gMTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0b2tlbiA9IHNjYW5uZXIuc2NhbigpOwogICAgICAgICAgfQogICAgICAgICAgaGFzRXJyb3IgPSB0b2tlbiA9PT0gMTYgfHwgc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkgIT09IDA7CiAgICAgICAgICByZXR1cm4gdG9rZW47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRPcGVyYXRpb25zID0gW107CiAgICAgICAgZnVuY3Rpb24gYWRkRWRpdCh0ZXh0LCBzdGFydE9mZnNldCwgZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yICYmICghcmFuZ2UgfHwgc3RhcnRPZmZzZXQgPCByYW5nZUVuZCAmJiBlbmRPZmZzZXQgPiByYW5nZVN0YXJ0KSAmJiBkb2N1bWVudFRleHQuc3Vic3RyaW5nKHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQpICE9PSB0ZXh0KSB7CiAgICAgICAgICAgIGVkaXRPcGVyYXRpb25zLnB1c2goewogICAgICAgICAgICAgIG9mZnNldDogc3RhcnRPZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoOiBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwKICAgICAgICAgICAgICBjb250ZW50OiB0ZXh0CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBsZXQgZmlyc3RUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICBhZGRFZGl0KHJlcGVhdDIoZW9sLCBudW1iZXJMaW5lQnJlYWtzKSwgMCwgMCk7CiAgICAgICAgfQogICAgICAgIGlmIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGxldCBpbml0aWFsSW5kZW50ID0gaW5kZW50VmFsdWUubGVuZ3RoICogaW5pdGlhbEluZGVudExldmVsIDwgMjAgJiYgb3B0aW9ucy5pbnNlcnRTcGFjZXMgPyBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzW2luZGVudFZhbHVlLmxlbmd0aCAqIGluaXRpYWxJbmRlbnRMZXZlbF0gOiByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwpOwogICAgICAgICAgYWRkRWRpdChpbml0aWFsSW5kZW50LCBmb3JtYXRUZXh0U3RhcnQsIGZpcnN0VG9rZW5TdGFydCk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBsZXQgc2Vjb25kVG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IHJlcGxhY2VDb250ZW50ID0gIiI7CiAgICAgICAgICBsZXQgbmVlZHNMaW5lQnJlYWsgPSBmYWxzZTsKICAgICAgICAgIHdoaWxlIChudW1iZXJMaW5lQnJlYWtzID09PSAwICYmIChzZWNvbmRUb2tlbiA9PT0gMTIgfHwgc2Vjb25kVG9rZW4gPT09IDEzKSkgewogICAgICAgICAgICBsZXQgY29tbWVudFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIGFkZEVkaXQoCiAgICAgICAgICAgICAgc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXSwKICAgICAgICAgICAgICBmaXJzdFRva2VuRW5kLAogICAgICAgICAgICAgIGNvbW1lbnRUb2tlblN0YXJ0CiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIG5lZWRzTGluZUJyZWFrID0gc2Vjb25kVG9rZW4gPT09IDEyOwogICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5lZWRzTGluZUJyZWFrID8gbmV3TGluZXNBbmRJbmRlbnQoKSA6ICIiOwogICAgICAgICAgICBzZWNvbmRUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2Vjb25kVG9rZW4gPT09IDIpIHsKICAgICAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDEpIHsKICAgICAgICAgICAgICBpbmRlbnRMZXZlbC0tOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMgJiYgZmlyc3RUb2tlbiAhPT0gMSkgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiA9PT0gNCkgewogICAgICAgICAgICBpZiAoZmlyc3RUb2tlbiAhPT0gMykgewogICAgICAgICAgICAgIGluZGVudExldmVsLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcyAmJiBmaXJzdFRva2VuICE9PSAzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzd2l0Y2ggKGZpcnN0VG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgaW5kZW50TGV2ZWwrKzsKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuID09PSA2ICYmICFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9ICIiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlmICgoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykgJiYgIW5lZWRzTGluZUJyZWFrKSB7CiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuICE9PSA1ICYmIHNlY29uZFRva2VuICE9PSAxNykgewogICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCAmJiAoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzZWNvbmRUb2tlbiA9PT0gMTcpIHsKICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gb3B0aW9ucy5pbnNlcnRGaW5hbE5ld2xpbmUgPyBlb2wgOiAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2Vjb25kVG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGFkZEVkaXQocmVwbGFjZUNvbnRlbnQsIGZpcnN0VG9rZW5FbmQsIHNlY29uZFRva2VuU3RhcnQpOwogICAgICAgICAgZmlyc3RUb2tlbiA9IHNlY29uZFRva2VuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZWRpdE9wZXJhdGlvbnM7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZm9ybWF0ID0gZm9ybWF0OwogICAgICBmdW5jdGlvbiByZXBlYXQyKHMsIGNvdW50KSB7CiAgICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykgewogICAgICAgICAgcmVzdWx0ICs9IHM7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY29tcHV0ZUluZGVudExldmVsKGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgbGV0IG5DaGFycyA9IDA7CiAgICAgICAgY29uc3QgdGFiU2l6ZSA9IG9wdGlvbnMudGFiU2l6ZSB8fCA0OwogICAgICAgIHdoaWxlIChpIDwgY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGxldCBjaCA9IGNvbnRlbnQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdKSB7CiAgICAgICAgICAgIG5DaGFycysrOwogICAgICAgICAgfSBlbHNlIGlmIChjaCA9PT0gIgkiKSB7CiAgICAgICAgICAgIG5DaGFycyArPSB0YWJTaXplOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICAgIHJldHVybiBNYXRoLmZsb29yKG5DaGFycyAvIHRhYlNpemUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGdldEVPTChvcHRpb25zLCB0ZXh0KSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSAiXHIiKSB7CiAgICAgICAgICAgIGlmIChpICsgMSA8IHRleHQubGVuZ3RoICYmIHRleHQuY2hhckF0KGkgKyAxKSA9PT0gIlxuIikgewogICAgICAgICAgICAgIHJldHVybiAiXHJcbiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJcciI7CiAgICAgICAgICB9IGVsc2UgaWYgKGNoID09PSAiXG4iKSB7CiAgICAgICAgICAgIHJldHVybiAiXG4iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gb3B0aW9ucyAmJiBvcHRpb25zLmVvbCB8fCAiXG4iOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRU9MKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiIuaW5kZXhPZih0ZXh0LmNoYXJBdChvZmZzZXQpKSAhPT0gLTE7CiAgICAgIH0KICAgICAgZXhwb3J0czMuaXNFT0wgPSBpc0VPTDsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzCnZhciByZXF1aXJlX3BhcnNlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuY29udGFpbnMgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IGV4cG9ydHMzLnBhcnNlVHJlZSA9IGV4cG9ydHMzLnBhcnNlID0gZXhwb3J0czMuZ2V0TG9jYXRpb24gPSB2b2lkIDA7CiAgICAgIHZhciBQYXJzZU9wdGlvbnM7CiAgICAgIChmdW5jdGlvbihQYXJzZU9wdGlvbnMyKSB7CiAgICAgICAgUGFyc2VPcHRpb25zMi5ERUZBVUxUID0gewogICAgICAgICAgYWxsb3dUcmFpbGluZ0NvbW1hOiBmYWxzZQogICAgICAgIH07CiAgICAgIH0pKFBhcnNlT3B0aW9ucyB8fCAoUGFyc2VPcHRpb25zID0ge30pKTsKICAgICAgZnVuY3Rpb24gZ2V0TG9jYXRpb24odGV4dCwgcG9zaXRpb24pIHsKICAgICAgICBjb25zdCBzZWdtZW50cyA9IFtdOwogICAgICAgIGNvbnN0IGVhcmx5UmV0dXJuRXhjZXB0aW9uID0gbmV3IE9iamVjdCgpOwogICAgICAgIGxldCBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgY29uc3QgcHJldmlvdXNOb2RlSW5zdCA9IHsKICAgICAgICAgIHZhbHVlOiB7fSwKICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGxldCBpc0F0UHJvcGVydHlLZXkgPSBmYWxzZTsKICAgICAgICBmdW5jdGlvbiBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCB0eXBlMikgewogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5vZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0Lmxlbmd0aCA9IGxlbmd0aDsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QudHlwZSA9IHR5cGUyOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5jb2xvbk9mZnNldCA9IHZvaWQgMDsKICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHByZXZpb3VzTm9kZUluc3Q7CiAgICAgICAgfQogICAgICAgIHRyeSB7CiAgICAgICAgICB2aXNpdCh0ZXh0LCB7CiAgICAgICAgICAgIG9uT2JqZWN0QmVnaW46IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gcG9zaXRpb24gPiBvZmZzZXQ7CiAgICAgICAgICAgICAgc2VnbWVudHMucHVzaCgiIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZShuYW1lLCBvZmZzZXQsIGxlbmd0aCwgInByb3BlcnR5Iik7CiAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSBuYW1lOwogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQgKyBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25PYmplY3RFbmQ6IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgc2VnbWVudHMucG9wKCk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uQXJyYXlCZWdpbjogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBzZWdtZW50cy5wdXNoKDApOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZTogKHZhbHVlLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZSh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgsIGdldE5vZGVUeXBlKHZhbHVlKSk7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCArIGxlbmd0aCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBvblNlcGFyYXRvcjogKHNlcCwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHNlcCA9PT0gIjoiICYmIHByZXZpb3VzTm9kZSAmJiBwcmV2aW91c05vZGUudHlwZSA9PT0gInByb3BlcnR5IikgewogICAgICAgICAgICAgICAgcHJldmlvdXNOb2RlLmNvbG9uT2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBsYXN0ID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgICAgICBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXSA9IGxhc3QgKyAxOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSAiIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlICE9PSBlYXJseVJldHVybkV4Y2VwdGlvbikgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgcGF0aDogc2VnbWVudHMsCiAgICAgICAgICBwcmV2aW91c05vZGUsCiAgICAgICAgICBpc0F0UHJvcGVydHlLZXksCiAgICAgICAgICBtYXRjaGVzOiAocGF0dGVybikgPT4gewogICAgICAgICAgICBsZXQgayA9IDA7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBrIDwgcGF0dGVybi5sZW5ndGggJiYgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgaWYgKHBhdHRlcm5ba10gPT09IHNlZ21lbnRzW2ldIHx8IHBhdHRlcm5ba10gPT09ICIqIikgewogICAgICAgICAgICAgICAgaysrOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocGF0dGVybltrXSAhPT0gIioqIikgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gayA9PT0gcGF0dGVybi5sZW5ndGg7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IGdldExvY2F0aW9uOwogICAgICBmdW5jdGlvbiBwYXJzZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSBbXTsKICAgICAgICBjb25zdCBwcmV2aW91c1BhcmVudHMgPSBbXTsKICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlKSB7CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjdXJyZW50UGFyZW50KSkgewogICAgICAgICAgICBjdXJyZW50UGFyZW50LnB1c2godmFsdWUpOwogICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50UHJvcGVydHkgIT09IG51bGwpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudFtjdXJyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZpc2l0b3IgPSB7CiAgICAgICAgICBvbk9iamVjdEJlZ2luOiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IG9iamVjdCA9IHt9OwogICAgICAgICAgICBvblZhbHVlKG9iamVjdCk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb2JqZWN0OwogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgICAgfSwKICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG5hbWU7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RFbmQ6ICgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IHByZXZpb3VzUGFyZW50cy5wb3AoKTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5QmVnaW46ICgpID0+IHsKICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBbXTsKICAgICAgICAgICAgb25WYWx1ZShhcnJheSk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gYXJyYXk7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUVuZDogKCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gcHJldmlvdXNQYXJlbnRzLnBvcCgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlOiBvblZhbHVlLAogICAgICAgICAgb25FcnJvcjogKGVycm9yLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBlcnJvcnMucHVzaCh7IGVycm9yLCBvZmZzZXQsIGxlbmd0aCB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZpc2l0KHRleHQsIHZpc2l0b3IsIG9wdGlvbnMpOwogICAgICAgIHJldHVybiBjdXJyZW50UGFyZW50WzBdOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlID0gcGFyc2U7CiAgICAgIGZ1bmN0aW9uIHBhcnNlVHJlZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgb2Zmc2V0OiAtMSwKICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICBjaGlsZHJlbjogW10sCiAgICAgICAgICBwYXJlbnQ6IHZvaWQgMAogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gZW5zdXJlUHJvcGVydHlDb21wbGV0ZShlbmRPZmZzZXQpIHsKICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBlbmRPZmZzZXQgLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlTm9kZSkgewogICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHZhbHVlTm9kZSk7CiAgICAgICAgICByZXR1cm4gdmFsdWVOb2RlOwogICAgICAgIH0KICAgICAgICBjb25zdCB2aXNpdG9yID0gewogICAgICAgICAgb25PYmplY3RCZWdpbjogKG9mZnNldCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJwcm9wZXJ0eSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgICAgICB2YWx1ZTogbmFtZSwKICAgICAgICAgICAgICBvZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdEVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGVuc3VyZVByb3BlcnR5Q29tcGxldGUob2Zmc2V0ICsgbGVuZ3RoKTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUJlZ2luOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25MaXRlcmFsVmFsdWU6ICh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogZ2V0Tm9kZVR5cGUodmFsdWUpLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGgsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25TZXBhcmF0b3I6IChzZXAsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgICBpZiAoc2VwID09PSAiOiIpIHsKICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY29sb25PZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwKICAgICAgICAgIG9uRXJyb3I6IChlcnJvciwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgZXJyb3JzLnB1c2goeyBlcnJvciwgb2Zmc2V0LCBsZW5ndGggfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zKTsKICAgICAgICBjb25zdCByZXN1bHQgPSBjdXJyZW50UGFyZW50LmNoaWxkcmVuWzBdOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIGRlbGV0ZSByZXN1bHQucGFyZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlVHJlZTsKICAgICAgZnVuY3Rpb24gZmluZE5vZGVBdExvY2F0aW9uKHJvb3QsIHBhdGgpIHsKICAgICAgICBpZiAoIXJvb3QpIHsKICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGxldCBub2RlID0gcm9vdDsKICAgICAgICBmb3IgKGxldCBzZWdtZW50IG9mIHBhdGgpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygc2VnbWVudCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gIm9iamVjdCIgfHwgIUFycmF5LmlzQXJyYXkobm9kZS5jaGlsZHJlbikpIHsKICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5Tm9kZSBvZiBub2RlLmNoaWxkcmVuKSB7CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocHJvcGVydHlOb2RlLmNoaWxkcmVuKSAmJiBwcm9wZXJ0eU5vZGUuY2hpbGRyZW5bMF0udmFsdWUgPT09IHNlZ21lbnQgJiYgcHJvcGVydHlOb2RlLmNoaWxkcmVuLmxlbmd0aCA9PT0gMikgewogICAgICAgICAgICAgICAgbm9kZSA9IHByb3BlcnR5Tm9kZS5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIWZvdW5kKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBzZWdtZW50OwogICAgICAgICAgICBpZiAobm9kZS50eXBlICE9PSAiYXJyYXkiIHx8IGluZGV4IDwgMCB8fCAhQXJyYXkuaXNBcnJheShub2RlLmNoaWxkcmVuKSB8fCBpbmRleCA+PSBub2RlLmNoaWxkcmVuLmxlbmd0aCkgewogICAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbm9kZSA9IG5vZGUuY2hpbGRyZW5baW5kZXhdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgfQogICAgICBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBmaW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGZ1bmN0aW9uIGdldE5vZGVQYXRoKG5vZGUpIHsKICAgICAgICBpZiAoIW5vZGUucGFyZW50IHx8ICFub2RlLnBhcmVudC5jaGlsZHJlbikgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoID0gZ2V0Tm9kZVBhdGgobm9kZS5wYXJlbnQpOwogICAgICAgIGlmIChub2RlLnBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICBjb25zdCBrZXkgPSBub2RlLnBhcmVudC5jaGlsZHJlblswXS52YWx1ZTsKICAgICAgICAgIHBhdGgucHVzaChrZXkpOwogICAgICAgIH0gZWxzZSBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gImFycmF5IikgewogICAgICAgICAgY29uc3QgaW5kZXggPSBub2RlLnBhcmVudC5jaGlsZHJlbi5pbmRleE9mKG5vZGUpOwogICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBwYXRoLnB1c2goaW5kZXgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gcGF0aDsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGdldE5vZGVQYXRoOwogICAgICBmdW5jdGlvbiBnZXROb2RlVmFsdWUobm9kZSkgewogICAgICAgIHN3aXRjaCAobm9kZS50eXBlKSB7CiAgICAgICAgICBjYXNlICJhcnJheSI6CiAgICAgICAgICAgIHJldHVybiBub2RlLmNoaWxkcmVuLm1hcChnZXROb2RlVmFsdWUpOwogICAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgICAgY29uc3Qgb2JqID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICAgIGZvciAobGV0IHByb3Agb2Ygbm9kZS5jaGlsZHJlbikgewogICAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHByb3AuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgaWYgKHZhbHVlTm9kZSkgewogICAgICAgICAgICAgICAgb2JqW3Byb3AuY2hpbGRyZW5bMF0udmFsdWVdID0gZ2V0Tm9kZVZhbHVlKHZhbHVlTm9kZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBvYmo7CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiBub2RlLnZhbHVlOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVZhbHVlID0gZ2V0Tm9kZVZhbHVlOwogICAgICBmdW5jdGlvbiBjb250YWlucyhub2RlLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kID0gZmFsc2UpIHsKICAgICAgICByZXR1cm4gb2Zmc2V0ID49IG5vZGUub2Zmc2V0ICYmIG9mZnNldCA8IG5vZGUub2Zmc2V0ICsgbm9kZS5sZW5ndGggfHwgaW5jbHVkZVJpZ2h0Qm91bmQgJiYgb2Zmc2V0ID09PSBub2RlLm9mZnNldCArIG5vZGUubGVuZ3RoOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmNvbnRhaW5zID0gY29udGFpbnM7CiAgICAgIGZ1bmN0aW9uIGZpbmROb2RlQXRPZmZzZXQobm9kZSwgb2Zmc2V0LCBpbmNsdWRlUmlnaHRCb3VuZCA9IGZhbHNlKSB7CiAgICAgICAgaWYgKGNvbnRhaW5zKG5vZGUsIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpKSB7CiAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUuY2hpbGRyZW47CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGggJiYgY2hpbGRyZW5baV0ub2Zmc2V0IDw9IG9mZnNldDsgaSsrKSB7CiAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IGZpbmROb2RlQXRPZmZzZXQoY2hpbGRyZW5baV0sIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpOwogICAgICAgICAgICAgIGlmIChpdGVtKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBub2RlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBmaW5kTm9kZUF0T2Zmc2V0OwogICAgICBmdW5jdGlvbiB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zID0gUGFyc2VPcHRpb25zLkRFRkFVTFQpIHsKICAgICAgICBjb25zdCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCwgZmFsc2UpOwogICAgICAgIGNvbnN0IF9qc29uUGF0aCA9IFtdOwogICAgICAgIGxldCBzdXBwcmVzc2VkQ2FsbGJhY2tzID0gMDsKICAgICAgICBmdW5jdGlvbiB0b05vQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKQogICAgICAgICAgKSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvT25lQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoYXJnKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIGFyZywKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydExpbmUoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpCiAgICAgICAgICApIDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKGFyZykgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBhcmcsCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKSwKICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICkgOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b0JlZ2luVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MrKzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBsZXQgY2JSZXR1cm4gPSB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpLAogICAgICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIGlmIChjYlJldHVybiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MgPSAxOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvRW5kVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCkgewogICAgICAgICAgICAgIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgb25PYmplY3RCZWdpbiA9IHRvQmVnaW5WaXNpdCh2aXNpdG9yLm9uT2JqZWN0QmVnaW4pLCBvbk9iamVjdFByb3BlcnR5ID0gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0b3Iub25PYmplY3RQcm9wZXJ0eSksIG9uT2JqZWN0RW5kID0gdG9FbmRWaXNpdCh2aXNpdG9yLm9uT2JqZWN0RW5kKSwgb25BcnJheUJlZ2luID0gdG9CZWdpblZpc2l0KHZpc2l0b3Iub25BcnJheUJlZ2luKSwgb25BcnJheUVuZCA9IHRvRW5kVmlzaXQodmlzaXRvci5vbkFycmF5RW5kKSwgb25MaXRlcmFsVmFsdWUgPSB0b09uZUFyZ1Zpc2l0V2l0aFBhdGgodmlzaXRvci5vbkxpdGVyYWxWYWx1ZSksIG9uU2VwYXJhdG9yID0gdG9PbmVBcmdWaXNpdCh2aXNpdG9yLm9uU2VwYXJhdG9yKSwgb25Db21tZW50ID0gdG9Ob0FyZ1Zpc2l0KHZpc2l0b3Iub25Db21tZW50KSwgb25FcnJvciA9IHRvT25lQXJnVmlzaXQodmlzaXRvci5vbkVycm9yKTsKICAgICAgICBjb25zdCBkaXNhbGxvd0NvbW1lbnRzID0gb3B0aW9ucyAmJiBvcHRpb25zLmRpc2FsbG93Q29tbWVudHM7CiAgICAgICAgY29uc3QgYWxsb3dUcmFpbGluZ0NvbW1hID0gb3B0aW9ucyAmJiBvcHRpb25zLmFsbG93VHJhaWxpbmdDb21tYTsKICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gX3NjYW5uZXIuc2NhbigpOwogICAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuRXJyb3IoKSkgewogICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNAogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkVW5pY29kZSAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNQogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkRXNjYXBlQ2hhcmFjdGVyICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDEzCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZk51bWJlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICAgIGlmICghZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMQogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQgKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZTdHJpbmcgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTYKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZENoYXJhY3RlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN3aXRjaCAodG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICBpZiAoZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMAogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRDb21tZW50VG9rZW4gKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIG9uQ29tbWVudCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRTeW1ib2wgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDE1OgogICAgICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhbmRsZUVycm9yKGVycm9yLCBza2lwVW50aWxBZnRlciA9IFtdLCBza2lwVW50aWwgPSBbXSkgewogICAgICAgICAgb25FcnJvcihlcnJvcik7CiAgICAgICAgICBpZiAoc2tpcFVudGlsQWZ0ZXIubGVuZ3RoICsgc2tpcFVudGlsLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGV0IHRva2VuID0gX3NjYW5uZXIuZ2V0VG9rZW4oKTsKICAgICAgICAgICAgd2hpbGUgKHRva2VuICE9PSAxNykgewogICAgICAgICAgICAgIGlmIChza2lwVW50aWxBZnRlci5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNraXBVbnRpbC5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0b2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VTdHJpbmcoaXNWYWx1ZSkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBfc2Nhbm5lci5nZXRUb2tlblZhbHVlKCk7CiAgICAgICAgICBpZiAoaXNWYWx1ZSkgewogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvbk9iamVjdFByb3BlcnR5KHZhbHVlKTsKICAgICAgICAgICAgX2pzb25QYXRoLnB1c2godmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUxpdGVyYWwoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjb25zdCB0b2tlblZhbHVlID0gX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpOwogICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE51bWJlcih0b2tlblZhbHVlKTsKICAgICAgICAgICAgICBpZiAoaXNOYU4odmFsdWUpKSB7CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkTnVtYmVyRm9ybWF0ICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgdmFsdWUgPSAwOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZShudWxsKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlKHRydWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUoZmFsc2UpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VQcm9wZXJ0eSgpIHsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxMCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAzLAogICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNvbW1hVG9rZW4gKi8KICAgICAgICAgICAgICBdCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcnNlU3RyaW5nKGZhbHNlKTsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA2KSB7CiAgICAgICAgICAgIG9uU2VwYXJhdG9yKCI6Iik7CiAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgNSwKICAgICAgICAgICAgICBbXSwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgNQogICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgXQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgX2pzb25QYXRoLnBvcCgpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlT2JqZWN0KCkgewogICAgICAgICAgb25PYmplY3RCZWdpbigpOwogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMiAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAyICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VQcm9wZXJ0eSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZWVkc0NvbW1hID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9uT2JqZWN0RW5kKCk7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMikgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA3LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFjZVRva2VuICovCiAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICBbXQogICAgICAgICAgICApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUFycmF5KCkgewogICAgICAgICAgb25BcnJheUJlZ2luKCk7CiAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IGlzRmlyc3RFbGVtZW50ID0gdHJ1ZTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA0ICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICAgIF9qc29uUGF0aC5wdXNoKDApOwogICAgICAgICAgICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2U7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgX2pzb25QYXRoW19qc29uUGF0aC5sZW5ndGggLSAxXSsrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDQsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5lZWRzQ29tbWEgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgb25BcnJheUVuZCgpOwogICAgICAgICAgaWYgKCFpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICBfanNvblBhdGgucG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA4LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDQKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFja2V0VG9rZW4gKi8KICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgIFtdCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlVmFsdWUoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIHJldHVybiBwYXJzZUFycmF5KCk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VPYmplY3QoKTsKICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VTdHJpbmcodHJ1ZSk7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlTGl0ZXJhbCgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAxNykgewogICAgICAgICAgaWYgKG9wdGlvbnMuYWxsb3dFbXB0eUNvbnRlbnQpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBoYW5kbGVFcnJvcig0LCBbXSwgW10pOwogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDE3KSB7CiAgICAgICAgICBoYW5kbGVFcnJvcig5LCBbXSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBleHBvcnRzMy52aXNpdCA9IHZpc2l0OwogICAgICBmdW5jdGlvbiBzdHJpcENvbW1lbnRzKHRleHQsIHJlcGxhY2VDaCkgewogICAgICAgIGxldCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCksIHBhcnRzID0gW10sIGtpbmQsIG9mZnNldCA9IDAsIHBvczsKICAgICAgICBkbyB7CiAgICAgICAgICBwb3MgPSBfc2Nhbm5lci5nZXRQb3NpdGlvbigpOwogICAgICAgICAga2luZCA9IF9zY2FubmVyLnNjYW4oKTsKICAgICAgICAgIHN3aXRjaCAoa2luZCkgewogICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICBjYXNlIDE3OgogICAgICAgICAgICAgIGlmIChvZmZzZXQgIT09IHBvcykgewogICAgICAgICAgICAgICAgcGFydHMucHVzaCh0ZXh0LnN1YnN0cmluZyhvZmZzZXQsIHBvcykpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAocmVwbGFjZUNoICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHBhcnRzLnB1c2goX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpLnJlcGxhY2UoL1teXHJcbl0vZywgcmVwbGFjZUNoKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9mZnNldCA9IF9zY2FubmVyLmdldFBvc2l0aW9uKCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoa2luZCAhPT0gMTcpOwogICAgICAgIHJldHVybiBwYXJ0cy5qb2luKCIiKTsKICAgICAgfQogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gc3RyaXBDb21tZW50czsKICAgICAgZnVuY3Rpb24gZ2V0Tm9kZVR5cGUodmFsdWUpIHsKICAgICAgICBzd2l0Y2ggKHR5cGVvZiB2YWx1ZSkgewogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiAiYm9vbGVhbiI7CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICByZXR1cm4gIm51bWJlciI7CiAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICByZXR1cm4gInN0cmluZyI7CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGlmICghdmFsdWUpIHsKICAgICAgICAgICAgICByZXR1cm4gIm51bGwiOwogICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJhcnJheSI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJvYmplY3QiOwogICAgICAgICAgfQogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBnZXROb2RlVHlwZTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZWRpdC5qcwp2YXIgcmVxdWlyZV9lZGl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9lZGl0LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgcGFyc2VyXzEgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9mb3JtYXQiLCAiLi9wYXJzZXIiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5pc1dTID0gZXhwb3J0czMuYXBwbHlFZGl0ID0gZXhwb3J0czMuc2V0UHJvcGVydHkgPSBleHBvcnRzMy5yZW1vdmVQcm9wZXJ0eSA9IHZvaWQgMDsKICAgICAgZnVuY3Rpb24gcmVtb3ZlUHJvcGVydHkodGV4dCwgcGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBzZXRQcm9wZXJ0eSh0ZXh0LCBwYXRoLCB2b2lkIDAsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnJlbW92ZVByb3BlcnR5ID0gcmVtb3ZlUHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHNldFByb3BlcnR5KHRleHQsIG9yaWdpbmFsUGF0aCwgdmFsdWUsIG9wdGlvbnMpIHsKICAgICAgICBjb25zdCBwYXRoID0gb3JpZ2luYWxQYXRoLnNsaWNlKCk7CiAgICAgICAgY29uc3QgZXJyb3JzID0gW107CiAgICAgICAgY29uc3Qgcm9vdCA9ICgwLCBwYXJzZXJfMS5wYXJzZVRyZWUpKHRleHQsIGVycm9ycyk7CiAgICAgICAgbGV0IHBhcmVudCA9IHZvaWQgMDsKICAgICAgICBsZXQgbGFzdFNlZ21lbnQgPSB2b2lkIDA7CiAgICAgICAgd2hpbGUgKHBhdGgubGVuZ3RoID4gMCkgewogICAgICAgICAgbGFzdFNlZ21lbnQgPSBwYXRoLnBvcCgpOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocm9vdCwgcGF0aCk7CiAgICAgICAgICBpZiAocGFyZW50ID09PSB2b2lkIDAgJiYgdmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodHlwZW9mIGxhc3RTZWdtZW50ID09PSAic3RyaW5nIikgewogICAgICAgICAgICAgIHZhbHVlID0geyBbbGFzdFNlZ21lbnRdOiB2YWx1ZSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHZhbHVlID0gW3ZhbHVlXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghcGFyZW50KSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNhbiBub3QgZGVsZXRlIGluIGVtcHR5IGRvY3VtZW50Iik7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcoCiAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBvZmZzZXQ6IHJvb3QgPyByb290Lm9mZnNldCA6IDAsCiAgICAgICAgICAgICAgbGVuZ3RoOiByb290ID8gcm9vdC5sZW5ndGggOiAwLAogICAgICAgICAgICAgIGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KHZhbHVlKQogICAgICAgICAgICB9LAogICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICApOwogICAgICAgIH0gZWxzZSBpZiAocGFyZW50LnR5cGUgPT09ICJvYmplY3QiICYmIHR5cGVvZiBsYXN0U2VnbWVudCA9PT0gInN0cmluZyIgJiYgQXJyYXkuaXNBcnJheShwYXJlbnQuY2hpbGRyZW4pKSB7CiAgICAgICAgICBjb25zdCBleGlzdGluZyA9ICgwLCBwYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHBhcmVudCwgW2xhc3RTZWdtZW50XSk7CiAgICAgICAgICBpZiAoZXhpc3RpbmcgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGlmICghZXhpc3RpbmcucGFyZW50KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk1hbGZvcm1lZCBBU1QiKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcHJvcGVydHlJbmRleCA9IHBhcmVudC5jaGlsZHJlbi5pbmRleE9mKGV4aXN0aW5nLnBhcmVudCk7CiAgICAgICAgICAgICAgbGV0IHJlbW92ZUJlZ2luOwogICAgICAgICAgICAgIGxldCByZW1vdmVFbmQgPSBleGlzdGluZy5wYXJlbnQub2Zmc2V0ICsgZXhpc3RpbmcucGFyZW50Lmxlbmd0aDsKICAgICAgICAgICAgICBpZiAocHJvcGVydHlJbmRleCA+IDApIHsKICAgICAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltwcm9wZXJ0eUluZGV4IC0gMV07CiAgICAgICAgICAgICAgICByZW1vdmVCZWdpbiA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmVtb3ZlQmVnaW4gPSBwYXJlbnQub2Zmc2V0ICsgMTsKICAgICAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gMSkgewogICAgICAgICAgICAgICAgICBsZXQgbmV4dCA9IHBhcmVudC5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgICAgcmVtb3ZlRW5kID0gbmV4dC5vZmZzZXQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZygKICAgICAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG9mZnNldDogcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogcmVtb3ZlRW5kIC0gcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb3B0aW9ucwogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKAogICAgICAgICAgICAgICAgdGV4dCwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBleGlzdGluZy5vZmZzZXQsCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogZXhpc3RpbmcubGVuZ3RoLAogICAgICAgICAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeShsYXN0U2VnbWVudCl9OiAke0pTT04uc3RyaW5naWZ5KAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICl9YDsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBvcHRpb25zLmdldEluc2VydGlvbkluZGV4ID8gb3B0aW9ucy5nZXRJbnNlcnRpb25JbmRleCgKICAgICAgICAgICAgICBwYXJlbnQuY2hpbGRyZW4ubWFwKChwKSA9PiBwLmNoaWxkcmVuWzBdLnZhbHVlKQogICAgICAgICAgICApIDogcGFyZW50LmNoaWxkcmVuLmxlbmd0aDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChpbmRleCA+IDApIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5baW5kZXggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGVkaXQgPSB7IG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsIGxlbmd0aDogMCwgY29udGVudDogbmV3UHJvcGVydHkgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQudHlwZSA9PT0gImFycmF5IiAmJiB0eXBlb2YgbGFzdFNlZ21lbnQgPT09ICJudW1iZXIiICYmIEFycmF5LmlzQXJyYXkocGFyZW50LmNoaWxkcmVuKSkgewogICAgICAgICAgY29uc3QgaW5zZXJ0SW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgIGlmIChpbnNlcnRJbmRleCA9PT0gLTEpIHsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwgbGVuZ3RoOiAwLCBjb250ZW50OiBuZXdQcm9wZXJ0eSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW3BhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gdm9pZCAwICYmIHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPj0gMCkgewogICAgICAgICAgICBjb25zdCByZW1vdmFsSW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgICAgY29uc3QgdG9SZW1vdmUgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4XTsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsCiAgICAgICAgICAgICAgICBsZW5ndGg6IHBhcmVudC5sZW5ndGggLSAyLAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxID09PSByZW1vdmFsSW5kZXgpIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4IC0gMV07CiAgICAgICAgICAgICAgbGV0IG9mZnNldCA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICBsZXQgcGFyZW50RW5kT2Zmc2V0ID0gcGFyZW50Lm9mZnNldCArIHBhcmVudC5sZW5ndGg7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0LCBsZW5ndGg6IHBhcmVudEVuZE9mZnNldCAtIDIgLSBvZmZzZXQsIGNvbnRlbnQ6ICIiIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgbGVuZ3RoOiBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4ICsgMV0ub2Zmc2V0IC0gdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgaWYgKCFvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gJiYgcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA+IGxhc3RTZWdtZW50KSB7CiAgICAgICAgICAgICAgY29uc3QgdG9Nb2RpZnkgPSBwYXJlbnQuY2hpbGRyZW5bbGFzdFNlZ21lbnRdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHRvTW9kaWZ5Lm9mZnNldCwKICAgICAgICAgICAgICAgIGxlbmd0aDogdG9Nb2RpZnkubGVuZ3RoLAogICAgICAgICAgICAgICAgY29udGVudDogbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgfHwgbGFzdFNlZ21lbnQgPT09IDApIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgPyBuZXdQcm9wZXJ0eSA6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IGxhc3RTZWdtZW50ID4gcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA/IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggOiBsYXN0U2VnbWVudDsKICAgICAgICAgICAgICBjb25zdCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltpbmRleCAtIDFdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aCwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIsIiArIG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYENhbiBub3QgJHt2YWx1ZSA9PT0gdm9pZCAwID8gInJlbW92ZSIgOiBvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gPyAiaW5zZXJ0IiA6ICJtb2RpZnkifSBBcnJheSBpbmRleCAke2luc2VydEluZGV4fSBhcyBsZW5ndGggaXMgbm90IHN1ZmZpY2llbnRgCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbiBub3QgYWRkICR7dHlwZW9mIGxhc3RTZWdtZW50ICE9PSAibnVtYmVyIiA/ICJpbmRleCIgOiAicHJvcGVydHkifSB0byBwYXJlbnQgb2YgdHlwZSAke3BhcmVudC50eXBlfWAKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLnNldFByb3BlcnR5ID0gc2V0UHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpIHsKICAgICAgICBpZiAoIW9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMpIHsKICAgICAgICAgIHJldHVybiBbZWRpdF07CiAgICAgICAgfQogICAgICAgIGxldCBuZXdUZXh0ID0gYXBwbHlFZGl0KHRleHQsIGVkaXQpOwogICAgICAgIGxldCBiZWdpbiA9IGVkaXQub2Zmc2V0OwogICAgICAgIGxldCBlbmQgPSBlZGl0Lm9mZnNldCArIGVkaXQuY29udGVudC5sZW5ndGg7CiAgICAgICAgaWYgKGVkaXQubGVuZ3RoID09PSAwIHx8IGVkaXQuY29udGVudC5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHdoaWxlIChiZWdpbiA+IDAgJiYgISgwLCBmb3JtYXRfMS5pc0VPTCkobmV3VGV4dCwgYmVnaW4gLSAxKSkgewogICAgICAgICAgICBiZWdpbi0tOwogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGVuZCA8IG5ld1RleHQubGVuZ3RoICYmICEoMCwgZm9ybWF0XzEuaXNFT0wpKG5ld1RleHQsIGVuZCkpIHsKICAgICAgICAgICAgZW5kKys7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRzID0gKDAsIGZvcm1hdF8xLmZvcm1hdCkoCiAgICAgICAgICBuZXdUZXh0LAogICAgICAgICAgeyBvZmZzZXQ6IGJlZ2luLCBsZW5ndGg6IGVuZCAtIGJlZ2luIH0sCiAgICAgICAgICB7IC4uLm9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMsIGtlZXBMaW5lczogZmFsc2UgfQogICAgICAgICk7CiAgICAgICAgZm9yIChsZXQgaSA9IGVkaXRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICBjb25zdCBlZGl0MiA9IGVkaXRzW2ldOwogICAgICAgICAgbmV3VGV4dCA9IGFwcGx5RWRpdChuZXdUZXh0LCBlZGl0Mik7CiAgICAgICAgICBiZWdpbiA9IE1hdGgubWluKGJlZ2luLCBlZGl0Mi5vZmZzZXQpOwogICAgICAgICAgZW5kID0gTWF0aC5tYXgoZW5kLCBlZGl0Mi5vZmZzZXQgKyBlZGl0Mi5sZW5ndGgpOwogICAgICAgICAgZW5kICs9IGVkaXQyLmNvbnRlbnQubGVuZ3RoIC0gZWRpdDIubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0TGVuZ3RoID0gdGV4dC5sZW5ndGggLSAobmV3VGV4dC5sZW5ndGggLSBlbmQpIC0gYmVnaW47CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIHsKICAgICAgICAgICAgb2Zmc2V0OiBiZWdpbiwKICAgICAgICAgICAgbGVuZ3RoOiBlZGl0TGVuZ3RoLAogICAgICAgICAgICBjb250ZW50OiBuZXdUZXh0LnN1YnN0cmluZyhiZWdpbiwgZW5kKQogICAgICAgICAgfQogICAgICAgIF07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gYXBwbHlFZGl0KHRleHQsIGVkaXQpIHsKICAgICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgZWRpdC5vZmZzZXQpICsgZWRpdC5jb250ZW50ICsgdGV4dC5zdWJzdHJpbmcoZWRpdC5vZmZzZXQgKyBlZGl0Lmxlbmd0aCk7CiAgICAgIH0KICAgICAgZXhwb3J0czMuYXBwbHlFZGl0ID0gYXBwbHlFZGl0OwogICAgICBmdW5jdGlvbiBpc1dTKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiAJIi5pbmRleE9mKHRleHQuY2hhckF0KG9mZnNldCkpICE9PSAtMTsKICAgICAgfQogICAgICBleHBvcnRzMy5pc1dTID0gaXNXUzsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMKdmFyIHJlcXVpcmVfbWFpbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgZm9ybWF0dGVyID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgZWRpdCA9IHJlcXVpcmVfZWRpdCgpOwogICAgdmFyIHNjYW5uZXIgPSByZXF1aXJlX3NjYW5uZXIoKTsKICAgIHZhciBwYXJzZXIgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWwogICAgICAgICAgInJlcXVpcmUiLAogICAgICAgICAgImV4cG9ydHMiLAogICAgICAgICAgIi4vaW1wbC9mb3JtYXQiLAogICAgICAgICAgIi4vaW1wbC9lZGl0IiwKICAgICAgICAgICIuL2ltcGwvc2Nhbm5lciIsCiAgICAgICAgICAiLi9pbXBsL3BhcnNlciIKICAgICAgICBdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmFwcGx5RWRpdHMgPSBleHBvcnRzMy5tb2RpZnkgPSBleHBvcnRzMy5mb3JtYXQgPSBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBleHBvcnRzMy5wYXJzZVRyZWUgPSBleHBvcnRzMy5wYXJzZSA9IGV4cG9ydHMzLmdldExvY2F0aW9uID0gZXhwb3J0czMuU3ludGF4S2luZCA9IGV4cG9ydHMzLlNjYW5FcnJvciA9IGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSB2b2lkIDA7CiAgICAgIGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSBzY2FubmVyLmNyZWF0ZVNjYW5uZXI7CiAgICAgIHZhciBTY2FuRXJyb3I7CiAgICAgIChmdW5jdGlvbihTY2FuRXJyb3IyKSB7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJOb25lIl0gPSAwXSA9ICJOb25lIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiXSA9IDFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mU3RyaW5nIl0gPSAyXSA9ICJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAzXSA9ICJVbmV4cGVjdGVkRW5kT2ZOdW1iZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZFVuaWNvZGUiXSA9IDRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiXSA9IDVdID0gIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZENoYXJhY3RlciJdID0gNl0gPSAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgIH0pKFNjYW5FcnJvciB8fCAoZXhwb3J0czMuU2NhbkVycm9yID0gU2NhbkVycm9yID0ge30pKTsKICAgICAgdmFyIFN5bnRheEtpbmQ7CiAgICAgIChmdW5jdGlvbihTeW50YXhLaW5kMikgewogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJPcGVuQnJhY2VUb2tlbiJdID0gMV0gPSAiT3BlbkJyYWNlVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNlVG9rZW4iXSA9IDJdID0gIkNsb3NlQnJhY2VUb2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk9wZW5CcmFja2V0VG9rZW4iXSA9IDNdID0gIk9wZW5CcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNrZXRUb2tlbiJdID0gNF0gPSAiQ2xvc2VCcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDb21tYVRva2VuIl0gPSA1XSA9ICJDb21tYVRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ29sb25Ub2tlbiJdID0gNl0gPSAiQ29sb25Ub2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk51bGxLZXl3b3JkIl0gPSA3XSA9ICJOdWxsS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRydWVLZXl3b3JkIl0gPSA4XSA9ICJUcnVlS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkZhbHNlS2V5d29yZCJdID0gOV0gPSAiRmFsc2VLZXl3b3JkIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiU3RyaW5nTGl0ZXJhbCJdID0gMTBdID0gIlN0cmluZ0xpdGVyYWwiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJOdW1lcmljTGl0ZXJhbCJdID0gMTFdID0gIk51bWVyaWNMaXRlcmFsIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiTGluZUNvbW1lbnRUcml2aWEiXSA9IDEyXSA9ICJMaW5lQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkJsb2NrQ29tbWVudFRyaXZpYSJdID0gMTNdID0gIkJsb2NrQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkxpbmVCcmVha1RyaXZpYSJdID0gMTRdID0gIkxpbmVCcmVha1RyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRyaXZpYSJdID0gMTVdID0gIlRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlVua25vd24iXSA9IDE2XSA9ICJVbmtub3duIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiRU9GIl0gPSAxN10gPSAiRU9GIjsKICAgICAgfSkoU3ludGF4S2luZCB8fCAoZXhwb3J0czMuU3ludGF4S2luZCA9IFN5bnRheEtpbmQgPSB7fSkpOwogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IHBhcnNlci5nZXRMb2NhdGlvbjsKICAgICAgZXhwb3J0czMucGFyc2UgPSBwYXJzZXIucGFyc2U7CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlci5wYXJzZVRyZWU7CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IHBhcnNlci5maW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBwYXJzZXIuZmluZE5vZGVBdE9mZnNldDsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBwYXJzZXIuZ2V0Tm9kZVBhdGg7CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IHBhcnNlci5nZXROb2RlVmFsdWU7CiAgICAgIGV4cG9ydHMzLnZpc2l0ID0gcGFyc2VyLnZpc2l0OwogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gcGFyc2VyLnN0cmlwQ29tbWVudHM7CiAgICAgIHZhciBQYXJzZUVycm9yQ29kZTsKICAgICAgKGZ1bmN0aW9uKFBhcnNlRXJyb3JDb2RlMikgewogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWRTeW1ib2wiXSA9IDFdID0gIkludmFsaWRTeW1ib2wiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWROdW1iZXJGb3JtYXQiXSA9IDJdID0gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlByb3BlcnR5TmFtZUV4cGVjdGVkIl0gPSAzXSA9ICJQcm9wZXJ0eU5hbWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVmFsdWVFeHBlY3RlZCJdID0gNF0gPSAiVmFsdWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29sb25FeHBlY3RlZCJdID0gNV0gPSAiQ29sb25FeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29tbWFFeHBlY3RlZCJdID0gNl0gPSAiQ29tbWFFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ2xvc2VCcmFjZUV4cGVjdGVkIl0gPSA3XSA9ICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNsb3NlQnJhY2tldEV4cGVjdGVkIl0gPSA4XSA9ICJDbG9zZUJyYWNrZXRFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiRW5kT2ZGaWxlRXhwZWN0ZWQiXSA9IDldID0gIkVuZE9mRmlsZUV4cGVjdGVkIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkQ29tbWVudFRva2VuIl0gPSAxMF0gPSAiSW52YWxpZENvbW1lbnRUb2tlbiI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mQ29tbWVudCJdID0gMTFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyJdID0gMTJdID0gIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAxM10gPSAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkVW5pY29kZSJdID0gMTRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIl0gPSAxNV0gPSAiSW52YWxpZEVzY2FwZUNoYXJhY3RlciI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZENoYXJhY3RlciJdID0gMTZdID0gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICB9KShQYXJzZUVycm9yQ29kZSB8fCAoZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBQYXJzZUVycm9yQ29kZSA9IHt9KSk7CiAgICAgIGZ1bmN0aW9uIHByaW50UGFyc2VFcnJvckNvZGUoY29kZSkgewogICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRTeW1ib2wiOwogICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICByZXR1cm4gIlByb3BlcnR5TmFtZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgcmV0dXJuICJWYWx1ZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgcmV0dXJuICJDb2xvbkV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgcmV0dXJuICJDb21tYUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgcmV0dXJuICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICByZXR1cm4gIkNsb3NlQnJhY2tldEV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgcmV0dXJuICJFbmRPZkZpbGVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRDb21tZW50VG9rZW4iOwogICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgcmV0dXJuICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mU3RyaW5nIjsKICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZFVuaWNvZGUiOwogICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIjsKICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgICAgfQogICAgICAgIHJldHVybiAiPHVua25vd24gUGFyc2VFcnJvckNvZGU+IjsKICAgICAgfQogICAgICBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gcHJpbnRQYXJzZUVycm9yQ29kZTsKICAgICAgZnVuY3Rpb24gZm9ybWF0KGRvY3VtZW50VGV4dCwgcmFuZ2UsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5mb3JtYXQgPSBmb3JtYXQ7CiAgICAgIGZ1bmN0aW9uIG1vZGlmeSh0ZXh0LCBwYXRoLCB2YWx1ZSwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBlZGl0LnNldFByb3BlcnR5KHRleHQsIHBhdGgsIHZhbHVlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5tb2RpZnkgPSBtb2RpZnk7CiAgICAgIGZ1bmN0aW9uIGFwcGx5RWRpdHModGV4dCwgZWRpdHMpIHsKICAgICAgICBsZXQgc29ydGVkRWRpdHMgPSBlZGl0cy5zbGljZSgwKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICBjb25zdCBkaWZmID0gYS5vZmZzZXQgLSBiLm9mZnNldDsKICAgICAgICAgIGlmIChkaWZmID09PSAwKSB7CiAgICAgICAgICAgIHJldHVybiBhLmxlbmd0aCAtIGIubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGRpZmY7CiAgICAgICAgfSk7CiAgICAgICAgbGV0IGxhc3RNb2RpZmllZE9mZnNldCA9IHRleHQubGVuZ3RoOwogICAgICAgIGZvciAobGV0IGkgPSBzb3J0ZWRFZGl0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgbGV0IGUgPSBzb3J0ZWRFZGl0c1tpXTsKICAgICAgICAgIGlmIChlLm9mZnNldCArIGUubGVuZ3RoIDw9IGxhc3RNb2RpZmllZE9mZnNldCkgewogICAgICAgICAgICB0ZXh0ID0gZWRpdC5hcHBseUVkaXQodGV4dCwgZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk92ZXJsYXBwaW5nIGVkaXQiKTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNb2RpZmllZE9mZnNldCA9IGUub2Zmc2V0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGV4dDsKICAgICAgfQogICAgICBleHBvcnRzMy5hcHBseUVkaXRzID0gYXBwbHlFZGl0czsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanMKdmFyIHJlcXVpcmVfbWV0YWRhdGEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi9tZXRhZGF0YS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZU1ldGFkYXRhID0gZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IHZvaWQgMDsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IFN5bWJvbC5mb3IoIkBhbmd1bGFyL2NvcmU6d29ya3NwYWNlLWpzb24iKTsKICAgIGZ1bmN0aW9uIGVzY2FwZUtleShrZXkpIHsKICAgICAgcmV0dXJuIGtleS5yZXBsYWNlKCJ+IiwgIn4wIikucmVwbGFjZSgiLyIsICJ+MSIpOwogICAgfQogICAgdmFyIEpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IGNsYXNzIHsKICAgICAgZmlsZVBhdGg7CiAgICAgIGFzdDsKICAgICAgcmF3OwogICAgICBjaGFuZ2VzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgaGFzTGVnYWN5VGFyZ2V0c05hbWUgPSB0cnVlOwogICAgICBjb25zdHJ1Y3RvcihmaWxlUGF0aCwgYXN0LCByYXcpIHsKICAgICAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7CiAgICAgICAgdGhpcy5hc3QgPSBhc3Q7CiAgICAgICAgdGhpcy5yYXcgPSByYXc7CiAgICAgIH0KICAgICAgZ2V0IGhhc0NoYW5nZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplID4gMDsKICAgICAgfQogICAgICBnZXQgY2hhbmdlQ291bnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplOwogICAgICB9CiAgICAgIGdldE5vZGVWYWx1ZUZyb21Bc3QocGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKSh0aGlzLmFzdCwgcGF0aCk7CiAgICAgICAgcmV0dXJuIG5vZGUgJiYgKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkobm9kZSk7CiAgICAgIH0KICAgICAgZmluZENoYW5nZXNGb3JQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5jaGFuZ2VzLmdldChwYXRoKTsKICAgICAgfQogICAgICBhZGRDaGFuZ2UoanNvblBhdGgsIHZhbHVlLCB0eXBlMikgewogICAgICAgIGxldCBjdXJyZW50UGF0aCA9ICIiOwogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBqc29uUGF0aC5sZW5ndGggLSAxOyBpbmRleCsrKSB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IGN1cnJlbnRQYXRoICsgIi8iICsgZXNjYXBlS2V5KGpzb25QYXRoW2luZGV4XSk7CiAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VzLmhhcyhjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoS2V5ID0gIi8iICsganNvblBhdGgubWFwKChrKSA9PiBlc2NhcGVLZXkoaykpLmpvaW4oIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmNoYW5nZXMua2V5cygpKSB7CiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgocGF0aEtleSArICIvIikpIHsKICAgICAgICAgICAgdGhpcy5jaGFuZ2VzLmRlbGV0ZShrZXkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KHBhdGhLZXksIHsganNvblBhdGgsIHR5cGU6IHR5cGUyLCB2YWx1ZSB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IEpzb25Xb3Jrc3BhY2VNZXRhZGF0YTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcwp2YXIgcmVxdWlyZV91dGlsaXRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlVmlydHVhbEFzdE9iamVjdCA9IGNyZWF0ZVZpcnR1YWxBc3RPYmplY3Q7CiAgICB2YXIganNvbl8xID0gcmVxdWlyZV9qc29uKCk7CiAgICBmdW5jdGlvbiBjcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KHJvb3QsIG9wdGlvbnMgPSB7fSkgewogICAgICBjb25zdCByZXBvcnRlciA9IChwYXRoLCB0YXJnZXQsIG9sZFZhbHVlLCBuZXdWYWx1ZSkgPT4gewogICAgICAgIGlmICghb3B0aW9ucy5saXN0ZW5lcikgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAob2xkVmFsdWUgPT09IG5ld1ZhbHVlIHx8IEpTT04uc3RyaW5naWZ5KG9sZFZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkobmV3VmFsdWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhcmdldCkpIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aC5zbGljZSgwLCAtMSksIHRhcmdldCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aCwgbmV3VmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIGNyZWF0ZShBcnJheS5pc0FycmF5KHJvb3QpID8gWy4uLnJvb3RdIDogeyAuLi5yb290IH0sIFtdLCByZXBvcnRlciwgbmV3IFNldChvcHRpb25zLmV4Y2x1ZGUpLCBvcHRpb25zLmluY2x1ZGU/Lmxlbmd0aCA/IG5ldyBTZXQob3B0aW9ucy5pbmNsdWRlKSA6IHZvaWQgMCk7CiAgICB9CiAgICBmdW5jdGlvbiBjcmVhdGUob2JqLCBwYXRoLCByZXBvcnRlciwgZXhjbHVkZWQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpLCBpbmNsdWRlZCkgewogICAgICByZXR1cm4gbmV3IFByb3h5KG9iaiwgewogICAgICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcCk7CiAgICAgICAgfSwKICAgICAgICBoYXModGFyZ2V0LCBwKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiIHx8IGV4Y2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXModGFyZ2V0LCBwKTsKICAgICAgICB9LAogICAgICAgIGdldCh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIGpzb25fMS5pc0pzb25PYmplY3QpKHZhbHVlKSAmJiAhKHZhbHVlIGluc3RhbmNlb2YgTWFwKSB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICByZXR1cm4gY3JlYXRlKHZhbHVlLCBbLi4ucGF0aCwgcF0sIHJlcG9ydGVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNldCh0YXJnZXQsIHAsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoZXhjbHVkZWQuaGFzKHApIHx8IGluY2x1ZGVkICYmICFpbmNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlUHJvcGVydHk/Lih0YXJnZXQsIHApID8/IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAoUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSkpIHsKICAgICAgICAgICAgcmVwb3J0ZXIoWy4uLnBhdGgsIHBdLCB0YXJnZXQsIGV4aXN0aW5nVmFsdWUsIHZhbHVlKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSwKICAgICAgICBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXhpc3RpbmdWYWx1ZSA9IGdldEN1cnJlbnRWYWx1ZSh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGFyZ2V0LCBwKSkgewogICAgICAgICAgICByZXBvcnRlcihbLi4ucGF0aCwgcF0sIHRhcmdldCwgZXhpc3RpbmdWYWx1ZSwgdm9pZCAwKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9LAogICAgICAgIGRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcykgewogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHAsIGF0dHJpYnV0ZXMpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0sCiAgICAgICAgb3duS2V5cyh0YXJnZXQpIHsKICAgICAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModGFyZ2V0KS5maWx0ZXIoKHApID0+ICFleGNsdWRlZC5oYXMocCkgJiYgKCFpbmNsdWRlZCB8fCBpbmNsdWRlZC5oYXMocCkpKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcHJvcGVydHkpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSAmJiBpc0Zpbml0ZSgrcHJvcGVydHkpKSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFsrcHJvcGVydHldOwogICAgICB9CiAgICAgIGlmICh0YXJnZXQgJiYgcHJvcGVydHkgaW4gdGFyZ2V0KSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFtwcm9wZXJ0eV07CiAgICAgIH0KICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcwp2YXIgcmVxdWlyZV9yZWFkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVhZEpzb25Xb3Jrc3BhY2UgPSByZWFkSnNvbldvcmtzcGFjZTsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgZGVmaW5pdGlvbnNfMSA9IHJlcXVpcmVfZGVmaW5pdGlvbnMoKTsKICAgIHZhciBtZXRhZGF0YV8xID0gcmVxdWlyZV9tZXRhZGF0YTIoKTsKICAgIHZhciB1dGlsaXRpZXNfMSA9IHJlcXVpcmVfdXRpbGl0aWVzKCk7CiAgICB2YXIgQU5HVUxBUl9XT1JLU1BBQ0VfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAibmV3UHJvamVjdFJvb3QiLCAic2NoZW1hdGljcyJdKTsKICAgIHZhciBBTkdVTEFSX1BST0pFQ1RfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAic2NoZW1hdGljcyIsICJwcm9qZWN0VHlwZSIsICJpMThuIl0pOwogICAgYXN5bmMgZnVuY3Rpb24gcmVhZEpzb25Xb3Jrc3BhY2UocGF0aCwgaG9zdCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IHJhdyA9IGF3YWl0IGhvc3QucmVhZEZpbGUocGF0aCk7CiAgICAgIGlmIChyYXcgPT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIHJlYWQgd29ya3NwYWNlIGZpbGUuIik7CiAgICAgIH0KICAgICAgY29uc3QgYXN0ID0gKDAsIGpzb25jX3BhcnNlcl8xLnBhcnNlVHJlZSkocmF3LCB2b2lkIDAsIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlLCBkaXNhbGxvd0NvbW1lbnRzOiBmYWxzZSB9KTsKICAgICAgaWYgKGFzdD8udHlwZSAhPT0gIm9iamVjdCIgfHwgIWFzdC5jaGlsZHJlbikgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSW52YWxpZCB3b3Jrc3BhY2UgZmlsZSAtIGV4cGVjdGVkIEpTT04gb2JqZWN0LiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb25Ob2RlID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikoYXN0LCBbInZlcnNpb24iXSk7CiAgICAgIGlmICghdmVyc2lvbk5vZGUpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gZm9ybWF0IC0gdmVyc2lvbiBzcGVjaWZpZXIgbm90IGZvdW5kLiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb24gPSB2ZXJzaW9uTm9kZS52YWx1ZTsKICAgICAgaWYgKHZlcnNpb24gIT09IDEpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9ybWF0IHZlcnNpb24gZGV0ZWN0ZWQgLSBFeHBlY3RlZDpbIDEgXSBGb3VuZDogWyAke3ZlcnNpb259IF1gKTsKICAgICAgfQogICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgIGhvc3QsCiAgICAgICAgbWV0YWRhdGE6IG5ldyBtZXRhZGF0YV8xLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YShwYXRoLCBhc3QsIHJhdyksCiAgICAgICAgdHJhY2tDaGFuZ2VzOiB0cnVlLAogICAgICAgIHVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zOiAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICAgICAuLi5BTkdVTEFSX1dPUktTUEFDRV9FWFRFTlNJT05TLAogICAgICAgICAgLi4ub3B0aW9ucy5hbGxvd2VkV29ya3NwYWNlRXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIHVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9uczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAgICAgLi4uQU5HVUxBUl9QUk9KRUNUX0VYVEVOU0lPTlMsCiAgICAgICAgICAuLi5vcHRpb25zLmFsbG93ZWRQcm9qZWN0RXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIGVycm9yKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7CiAgICAgICAgfSwKICAgICAgICB3YXJuKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICBjb25zdCB3b3Jrc3BhY2UgPSBwYXJzZVdvcmtzcGFjZShhc3QsIGNvbnRleHQpOwogICAgICByZXR1cm4gd29ya3NwYWNlOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VXb3Jrc3BhY2Uod29ya3NwYWNlTm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgcHJvamVjdHM7CiAgICAgIGxldCBleHRlbnNpb25zOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICB9CiAgICAgIGNvbnN0IHdvcmtzcGFjZU5vZGVWYWx1ZSA9ICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHdvcmtzcGFjZU5vZGUpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMod29ya3NwYWNlTm9kZVZhbHVlKSkgewogICAgICAgIGlmIChuYW1lID09PSAiJHNjaGVtYSIgfHwgbmFtZSA9PT0gInZlcnNpb24iKSB7CiAgICAgICAgfSBlbHNlIGlmIChuYW1lID09PSAicHJvamVjdHMiKSB7CiAgICAgICAgICBjb25zdCBub2RlcyA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHdvcmtzcGFjZU5vZGUsIFsicHJvamVjdHMiXSk7CiAgICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpIHx8ICFub2RlcykgewogICAgICAgICAgICBjb250ZXh0LmVycm9yKCdJbnZhbGlkICJwcm9qZWN0cyIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC4nLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHJvamVjdHMgPSBwYXJzZVByb2plY3RzT2JqZWN0KG5vZGVzLCBjb250ZXh0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zLmhhcyhuYW1lKSAmJiAhL15bYS16XXsxLDN9LS4qLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICAgIGNvbnRleHQud2FybihgV29ya3NwYWNlIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkgZm91bmQuYCwgbmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXh0ZW5zaW9ucykgewogICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSkgPT4gewogICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgbmFtZV0sIG5ld1ZhbHVlLCAicHJvamVjdCIpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgY29uc3QgcHJvamVjdENvbGxlY3Rpb24gPSBuZXcgZGVmaW5pdGlvbnNfMS5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24ocHJvamVjdHMsIGNvbGxlY3Rpb25MaXN0ZW5lcik7CiAgICAgIHJldHVybiB7CiAgICAgICAgW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF06IGpzb25NZXRhZGF0YSwKICAgICAgICBwcm9qZWN0czogcHJvamVjdENvbGxlY3Rpb24sCiAgICAgICAgLy8gSWYgbm90IHRyYWNraW5nIGNoYW5nZXMgdGhlIGBleHRlbnNpb25zYCB2YXJpYWJsZSB3aWxsIGNvbnRhaW4gdGhlIHBhcnNlZAogICAgICAgIC8vIHZhbHVlcy4gIE90aGVyd2lzZSB0aGUgZXh0ZW5zaW9ucyBhcmUgdHJhY2tlZCB2aWEgYSB2aXJ0dWFsIEFTVCBvYmplY3QuCiAgICAgICAgZXh0ZW5zaW9uczogZXh0ZW5zaW9ucyA/PyAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkod29ya3NwYWNlTm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbIiRzY2hlbWEiLCAidmVyc2lvbiIsICJwcm9qZWN0cyJdLAogICAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShwYXRoLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlUHJvamVjdHNPYmplY3QocHJvamVjdHNOb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcygoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKShwcm9qZWN0c05vZGUpKSkgewogICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdHNOb2RlLCBbbmFtZV0pOwogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICBjb250ZXh0Lndhcm4oIlNraXBwaW5nIGludmFsaWQgcHJvamVjdCB2YWx1ZTsgZXhwZWN0ZWQgYW4gb2JqZWN0LiIsIHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBwcm9qZWN0c1tuYW1lXSA9IHBhcnNlUHJvamVjdChuYW1lLCBub2RlcywgY29udGV4dCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHByb2plY3RzOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0Tm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgdGFyZ2V0czsKICAgICAgbGV0IGhhc1RhcmdldHMgPSBmYWxzZTsKICAgICAgbGV0IGV4dGVuc2lvbnM7CiAgICAgIGxldCBwcm9wZXJ0aWVzOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIHByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgfQogICAgICBjb25zdCBwcm9qZWN0Tm9kZVZhbHVlID0gKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkocHJvamVjdE5vZGUpOwogICAgICBpZiAoISgicm9vdCIgaW4gcHJvamVjdE5vZGVWYWx1ZSkpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFByb2plY3QgIiR7cHJvamVjdE5hbWV9IiBpcyBtaXNzaW5nIGEgcmVxdWlyZWQgcHJvcGVydHkgInJvb3QiLmApOwogICAgICB9CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9qZWN0Tm9kZVZhbHVlKSkgewogICAgICAgIHN3aXRjaCAobmFtZSkgewogICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICBjYXNlICJhcmNoaXRlY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdE5vZGUsIFtuYW1lXSk7CiAgICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICAgICAgY29udGV4dC5lcnJvcihgSW52YWxpZCAiJHtuYW1lfSIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC5gLCB2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaGFzVGFyZ2V0cyA9IHRydWU7CiAgICAgICAgICAgIHRhcmdldHMgPSBwYXJzZVRhcmdldHNPYmplY3QocHJvamVjdE5hbWUsIG5vZGVzLCBjb250ZXh0KTsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmhhc0xlZ2FjeVRhcmdldHNOYW1lID0gbmFtZSA9PT0gImFyY2hpdGVjdCI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgY2FzZSAic291cmNlUm9vdCI6CiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgY29udGV4dC53YXJuKGBQcm9qZWN0IHByb3BlcnR5ICIke25hbWV9IiBzaG91bGQgYmUgYSBzdHJpbmcuYCwgdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwcm9wZXJ0aWVzKSB7CiAgICAgICAgICAgICAgcHJvcGVydGllc1tuYW1lXSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9ucy5oYXMobmFtZSkgJiYgIS9eW2Etel17MSwzfS0uKi8udGVzdChuYW1lKSkgewogICAgICAgICAgICAgIGNvbnRleHQud2FybihgUHJvamVjdCAnJHtwcm9qZWN0TmFtZX0nIGNvbnRhaW5zIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkuYCwgbmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHsKICAgICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSwgY29sbGVjdGlvbikgPT4gewogICAgICAgICAgaWYgKGhhc1RhcmdldHMpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsICJ0YXJnZXRzIiwgbmFtZV0sIG5ld1ZhbHVlLCAidGFyZ2V0Iik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgInRhcmdldHMiXSwgY29sbGVjdGlvbiwgInRhcmdldGNvbGxlY3Rpb24iKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0IGJhc2UgPSB7CiAgICAgICAgdGFyZ2V0czogbmV3IGRlZmluaXRpb25zXzEuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24odGFyZ2V0cywgY29sbGVjdGlvbkxpc3RlbmVyKSwKICAgICAgICAvLyBJZiBub3QgdHJhY2tpbmcgY2hhbmdlcyB0aGUgYGV4dGVuc2lvbnNgIHZhcmlhYmxlIHdpbGwgY29udGFpbiB0aGUgcGFyc2VkCiAgICAgICAgLy8gdmFsdWVzLiAgT3RoZXJ3aXNlIHRoZSBleHRlbnNpb25zIGFyZSB0cmFja2VkIHZpYSBhIHZpcnR1YWwgQVNUIG9iamVjdC4KICAgICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbImFyY2hpdGVjdCIsICJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgInRhcmdldHMiXSwKICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAuLi5wYXRoXSwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIH07CiAgICAgIGNvbnN0IGJhc2VLZXlzID0gbmV3IFNldChPYmplY3Qua2V5cyhiYXNlKSk7CiAgICAgIGNvbnN0IHByb2plY3QgPSBwcm9wZXJ0aWVzID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgaW5jbHVkZTogWyJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgLi4uYmFzZUtleXNdLAogICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoIWJhc2VLZXlzLmhhcyhwYXRoWzBdKSkgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgLi4ucGF0aF0sIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihwcm9qZWN0LCBiYXNlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlVGFyZ2V0c09iamVjdChwcm9qZWN0TmFtZSwgdGFyZ2V0c05vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QganNvbk1ldGFkYXRhID0gY29udGV4dC5tZXRhZGF0YTsKICAgICAgY29uc3QgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkodGFyZ2V0c05vZGUpKSkgewogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIGNvbnRleHQud2FybigiU2tpcHBpbmcgaW52YWxpZCB0YXJnZXQgdmFsdWU7IGV4cGVjdGVkIGFuIG9iamVjdC4iLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgICB0YXJnZXRzW25hbWVdID0gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHZhbHVlLCB7CiAgICAgICAgICAgIGluY2x1ZGU6IFsiYnVpbGRlciIsICJvcHRpb25zIiwgImNvbmZpZ3VyYXRpb25zIiwgImRlZmF1bHRDb25maWd1cmF0aW9uIl0sCiAgICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlMikgewogICAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAidGFyZ2V0cyIsIG5hbWUsIC4uLnBhdGhdLCB2YWx1ZTIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGFyZ2V0c1tuYW1lXSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gdGFyZ2V0czsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcwp2YXIgcmVxdWlyZV93cml0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVKc29uV29ya3NwYWNlID0gd3JpdGVKc29uV29ya3NwYWNlOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgbm9kZV9vc18xID0gcmVxdWlyZSgibm9kZTpvcyIpOwogICAgdmFyIG1ldGFkYXRhXzEgPSByZXF1aXJlX21ldGFkYXRhMigpOwogICAgYXN5bmMgZnVuY3Rpb24gd3JpdGVKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgaG9zdCwgcGF0aCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IG1ldGFkYXRhID0gd29ya3NwYWNlW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF07CiAgICAgIGlmIChtZXRhZGF0YSkgewogICAgICAgIGlmICghbWV0YWRhdGEuaGFzQ2hhbmdlcykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBkYXRhID0gdXBkYXRlSnNvbldvcmtzcGFjZShtZXRhZGF0YSk7CiAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGVGaWxlKHBhdGggPz8gbWV0YWRhdGEuZmlsZVBhdGgsIGRhdGEpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmICghcGF0aCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJwYXRoIG9wdGlvbiBpcyByZXF1aXJlZCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBvYmogPSBjb252ZXJ0SnNvbldvcmtzcGFjZSh3b3Jrc3BhY2UsIG9wdGlvbnMuc2NoZW1hKTsKICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5zdHJpbmdpZnkob2JqLCBudWxsLCAyKTsKICAgICAgICByZXR1cm4gaG9zdC53cml0ZUZpbGUocGF0aCwgZGF0YSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgc2NoZW1hMikgewogICAgICBjb25zdCBvYmogPSB7CiAgICAgICAgJHNjaGVtYTogc2NoZW1hMiB8fCAiLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL2xpYi9jb25maWcvc2NoZW1hLmpzb24iLAogICAgICAgIHZlcnNpb246IDEsCiAgICAgICAgLi4ud29ya3NwYWNlLmV4dGVuc2lvbnMsCiAgICAgICAgLi4uaXNFbXB0eSh3b3Jrc3BhY2UucHJvamVjdHMpID8ge30gOiB7IHByb2plY3RzOiBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHdvcmtzcGFjZS5wcm9qZWN0cykgfQogICAgICB9OwogICAgICByZXR1cm4gb2JqOwogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbihjb2xsZWN0aW9uKSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCBwcm9qZWN0XSBvZiBjb2xsZWN0aW9uKSB7CiAgICAgICAgcHJvamVjdHNbcHJvamVjdE5hbWVdID0gY29udmVydEpzb25Qcm9qZWN0KHByb2plY3QpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uUHJvamVjdChwcm9qZWN0KSB7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBpZiAocHJvamVjdC50YXJnZXRzLnNpemUgPiAwKSB7CiAgICAgICAgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIGZvciAoY29uc3QgW3RhcmdldE5hbWUsIHRhcmdldF0gb2YgcHJvamVjdC50YXJnZXRzKSB7CiAgICAgICAgICB0YXJnZXRzW3RhcmdldE5hbWVdID0gY29udmVydEpzb25UYXJnZXQodGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3Qgb2JqID0gewogICAgICAgIC4uLnByb2plY3QuZXh0ZW5zaW9ucywKICAgICAgICByb290OiBwcm9qZWN0LnJvb3QsCiAgICAgICAgLi4ucHJvamVjdC5zb3VyY2VSb290ID09PSB2b2lkIDAgPyB7fSA6IHsgc291cmNlUm9vdDogcHJvamVjdC5zb3VyY2VSb290IH0sCiAgICAgICAgLi4ucHJvamVjdC5wcmVmaXggPT09IHZvaWQgMCA/IHt9IDogeyBwcmVmaXg6IHByb2plY3QucHJlZml4IH0sCiAgICAgICAgLi4udGFyZ2V0cyA9PT0gdm9pZCAwID8ge30gOiB7IGFyY2hpdGVjdDogdGFyZ2V0cyB9CiAgICAgIH07CiAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBmdW5jdGlvbiBpc0VtcHR5KG9iaikgewogICAgICByZXR1cm4gb2JqID09PSB2b2lkIDAgfHwgT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBidWlsZGVyOiB0YXJnZXQuYnVpbGRlciwKICAgICAgICAuLi5pc0VtcHR5KHRhcmdldC5vcHRpb25zKSA/IHt9IDogeyBvcHRpb25zOiB0YXJnZXQub3B0aW9ucyB9LAogICAgICAgIC4uLmlzRW1wdHkodGFyZ2V0LmNvbmZpZ3VyYXRpb25zKSA/IHt9IDogeyBjb25maWd1cmF0aW9uczogdGFyZ2V0LmNvbmZpZ3VyYXRpb25zIH0sCiAgICAgICAgLi4udGFyZ2V0LmRlZmF1bHRDb25maWd1cmF0aW9uID09PSB2b2lkIDAgPyB7fSA6IHsgZGVmYXVsdENvbmZpZ3VyYXRpb246IHRhcmdldC5kZWZhdWx0Q29uZmlndXJhdGlvbiB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24oY29sbGVjdGlvbikgewogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCB0YXJnZXRdIG9mIGNvbGxlY3Rpb24pIHsKICAgICAgICB0YXJnZXRzW3Byb2plY3ROYW1lXSA9IGNvbnZlcnRKc29uVGFyZ2V0KHRhcmdldCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpIHsKICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIHN3aXRjaCAodHlwZTIpIHsKICAgICAgICBjYXNlICJwcm9qZWN0IjoKICAgICAgICAgIHJldHVybiBjb252ZXJ0SnNvblByb2plY3QodmFsdWUpOwogICAgICAgIGNhc2UgInByb2plY3Rjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgcHJvamVjdHMgPSBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHZhbHVlKTsKICAgICAgICAgIHJldHVybiBpc0VtcHR5KHByb2plY3RzKSA/IHZvaWQgMCA6IHByb2plY3RzOwogICAgICAgIH0KICAgICAgICBjYXNlICJ0YXJnZXQiOgogICAgICAgICAgcmV0dXJuIGNvbnZlcnRKc29uVGFyZ2V0KHZhbHVlKTsKICAgICAgICBjYXNlICJ0YXJnZXRjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgdGFyZ2V0cyA9IGNvbnZlcnRKc29uVGFyZ2V0Q29sbGVjdGlvbih2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gaXNFbXB0eSh0YXJnZXRzKSA/IHZvaWQgMCA6IHRhcmdldHM7CiAgICAgICAgfQogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUpzb25Xb3Jrc3BhY2UobWV0YWRhdGEpIHsKICAgICAgbGV0IHsgcmF3OiBjb250ZW50IH0gPSBtZXRhZGF0YTsKICAgICAgY29uc3QgeyBjaGFuZ2VzLCBoYXNMZWdhY3lUYXJnZXRzTmFtZSB9ID0gbWV0YWRhdGE7CiAgICAgIGZvciAoY29uc3QgeyBqc29uUGF0aCwgdmFsdWUsIHR5cGU6IHR5cGUyIH0gb2YgY2hhbmdlcy52YWx1ZXMoKSkgewogICAgICAgIGlmIChoYXNMZWdhY3lUYXJnZXRzTmFtZSAmJiBqc29uUGF0aFsyXSA9PT0gInRhcmdldHMiKSB7CiAgICAgICAgICBqc29uUGF0aFsyXSA9ICJhcmNoaXRlY3QiOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBqc29uY19wYXJzZXJfMS5tb2RpZnkpKGNvbnRlbnQsIGpzb25QYXRoLCBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpLCB7CiAgICAgICAgICBmb3JtYXR0aW5nT3B0aW9uczogewogICAgICAgICAgICBpbnNlcnRTcGFjZXM6IHRydWUsCiAgICAgICAgICAgIHRhYlNpemU6IDIsCiAgICAgICAgICAgIGVvbDogZ2V0RU9MKGNvbnRlbnQpCiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgY29udGVudCA9ICgwLCBqc29uY19wYXJzZXJfMS5hcHBseUVkaXRzKShjb250ZW50LCBlZGl0cyk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbnRlbnQ7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRFT0woY29udGVudCkgewogICAgICBjb25zdCBDUkxGID0gIlxyXG4iOwogICAgICBjb25zdCBMRiA9ICJcbiI7CiAgICAgIGNvbnN0IG5ld2xpbmVzID0gY29udGVudC5tYXRjaCgvKD86XHI/XG4pL2cpOwogICAgICBpZiAobmV3bGluZXM/Lmxlbmd0aCkgewogICAgICAgIGNvbnN0IGNybGYgPSBuZXdsaW5lcy5maWx0ZXIoKGwpID0+IGwgPT09IENSTEYpLmxlbmd0aDsKICAgICAgICBjb25zdCBsZiA9IG5ld2xpbmVzLmxlbmd0aCAtIGNybGY7CiAgICAgICAgcmV0dXJuIGNybGYgPiBsZiA/IENSTEYgOiBMRjsKICAgICAgfQogICAgICByZXR1cm4gbm9kZV9vc18xLkVPTDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gdm9pZCAwOwogICAgZXhwb3J0czIuX3Rlc3RfYWRkV29ya3NwYWNlRmlsZSA9IF90ZXN0X2FkZFdvcmtzcGFjZUZpbGU7CiAgICBleHBvcnRzMi5fdGVzdF9yZW1vdmVXb3Jrc3BhY2VGaWxlID0gX3Rlc3RfcmVtb3ZlV29ya3NwYWNlRmlsZTsKICAgIGV4cG9ydHMyLnJlYWRXb3Jrc3BhY2UgPSByZWFkV29ya3NwYWNlOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSB3cml0ZVdvcmtzcGFjZTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIHZhciByZWFkZXJfMSA9IHJlcXVpcmVfcmVhZGVyKCk7CiAgICB2YXIgd3JpdGVyXzEgPSByZXF1aXJlX3dyaXRlcigpOwogICAgdmFyIGZvcm1hdExvb2t1cCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgdmFyIFdvcmtzcGFjZUZvcm1hdDsKICAgIChmdW5jdGlvbihXb3Jrc3BhY2VGb3JtYXQyKSB7CiAgICAgIFdvcmtzcGFjZUZvcm1hdDJbV29ya3NwYWNlRm9ybWF0MlsiSlNPTiJdID0gMF0gPSAiSlNPTiI7CiAgICB9KShXb3Jrc3BhY2VGb3JtYXQgfHwgKGV4cG9ydHMyLldvcmtzcGFjZUZvcm1hdCA9IFdvcmtzcGFjZUZvcm1hdCA9IHt9KSk7CiAgICBmdW5jdGlvbiBfdGVzdF9hZGRXb3Jrc3BhY2VGaWxlKG5hbWUsIGZvcm1hdCkgewogICAgICB3b3Jrc3BhY2VGaWxlc1tuYW1lXSA9IGZvcm1hdDsKICAgIH0KICAgIGZ1bmN0aW9uIF90ZXN0X3JlbW92ZVdvcmtzcGFjZUZpbGUobmFtZSkgewogICAgICBkZWxldGUgd29ya3NwYWNlRmlsZXNbbmFtZV07CiAgICB9CiAgICB2YXIgd29ya3NwYWNlRmlsZXMgPSB7CiAgICAgICJhbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTiwKICAgICAgIi5hbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTgogICAgfTsKICAgIGFzeW5jIGZ1bmN0aW9uIHJlYWRXb3Jrc3BhY2UocGF0aCwgaG9zdCwgZm9ybWF0KSB7CiAgICAgIGlmIChhd2FpdCBob3N0LmlzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgY29uc3QgZGlyZWN0b3J5ID0gKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgIGZvciAoY29uc3QgW25hbWUsIG5hbWVGb3JtYXRdIG9mIE9iamVjdC5lbnRyaWVzKHdvcmtzcGFjZUZpbGVzKSkgewogICAgICAgICAgaWYgKGZvcm1hdCAhPT0gdm9pZCAwICYmIGZvcm1hdCAhPT0gbmFtZUZvcm1hdCkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHBvdGVudGlhbCA9ICgwLCB2aXJ0dWFsX2ZzXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHZpcnR1YWxfZnNfMS5qb2luKShkaXJlY3RvcnksIG5hbWUpKTsKICAgICAgICAgIGlmIChhd2FpdCBob3N0LmlzRmlsZShwb3RlbnRpYWwpKSB7CiAgICAgICAgICAgIHBhdGggPSBwb3RlbnRpYWw7CiAgICAgICAgICAgIGZvcm1hdCA9IG5hbWVGb3JtYXQ7CiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghZm91bmQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIGxvY2F0ZSBhIHdvcmtzcGFjZSBmaWxlIGZvciB3b3Jrc3BhY2UgcGF0aC4gQXJlIHlvdSBtaXNzaW5nIGFuIGBhbmd1bGFyLmpzb25gIG9yIGAuYW5ndWxhci5qc29uYCBmaWxlPyIpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IGZpbGVuYW1lID0gKDAsIHZpcnR1YWxfZnNfMS5iYXNlbmFtZSkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgICBpZiAoZmlsZW5hbWUgaW4gd29ya3NwYWNlRmlsZXMpIHsKICAgICAgICAgIGZvcm1hdCA9IHdvcmtzcGFjZUZpbGVzW2ZpbGVuYW1lXTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gZGV0ZXJtaW5lIGZvcm1hdCBmb3Igd29ya3NwYWNlIHBhdGguIik7CiAgICAgIH0KICAgICAgbGV0IHdvcmtzcGFjZTsKICAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICAgICBjYXNlIFdvcmtzcGFjZUZvcm1hdC5KU09OOgogICAgICAgICAgd29ya3NwYWNlID0gYXdhaXQgKDAsIHJlYWRlcl8xLnJlYWRKc29uV29ya3NwYWNlKShwYXRoLCBob3N0KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgICAgZm9ybWF0TG9va3VwLnNldCh3b3Jrc3BhY2UsIFdvcmtzcGFjZUZvcm1hdC5KU09OKTsKICAgICAgcmV0dXJuIHsgd29ya3NwYWNlIH07CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZVdvcmtzcGFjZSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgsIGZvcm1hdCkgewogICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICBmb3JtYXQgPSBmb3JtYXRMb29rdXAuZ2V0KHdvcmtzcGFjZSk7CiAgICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkEgZm9ybWF0IGlzIHJlcXVpcmVkIGZvciBjdXN0b20gd29ya3NwYWNlIG9iamVjdHMuIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CiAgICAgICAgY2FzZSBXb3Jrc3BhY2VGb3JtYXQuSlNPTjoKICAgICAgICAgIHJldHVybiAoMCwgd3JpdGVyXzEud3JpdGVKc29uV29ya3NwYWNlKSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgpOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcwp2YXIgcmVxdWlyZV93b3Jrc3BhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSBleHBvcnRzMi5yZWFkV29ya3NwYWNlID0gZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IHZvaWQgMDsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2RlZmluaXRpb25zKCksIGV4cG9ydHMyKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3QyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjcmVhdGVXb3Jrc3BhY2VIb3N0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaG9zdF8xLmNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB9IH0pOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZTMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIldvcmtzcGFjZUZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5Xb3Jrc3BhY2VGb3JtYXQ7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVhZFdvcmtzcGFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5yZWFkV29ya3NwYWNlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndyaXRlV29ya3NwYWNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLndyaXRlV29ya3NwYWNlOwogICAgfSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndvcmtzcGFjZXMgPSBleHBvcnRzMi5sb2dnaW5nID0gZXhwb3J0czIuanNvbiA9IHZvaWQgMDsKICAgIHZhciBqc29uMiA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2pzb24oKSk7CiAgICBleHBvcnRzMi5qc29uID0ganNvbjI7CiAgICB2YXIgbG9nZ2luZyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2xvZ2dlcjIoKSk7CiAgICBleHBvcnRzMi5sb2dnaW5nID0gbG9nZ2luZzsKICAgIHZhciB3b3Jrc3BhY2VzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya3NwYWNlKCkpOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IHdvcmtzcGFjZXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfanNvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsczMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlydHVhbF9mcygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanMKdmFyIHJlcXVpcmVfaHRtbF9zZWxlY3RvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9odG1sLXNlbGVjdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgdW5pY29kZVJhbmdlcyA9IFsKICAgICAgWzE5MiwgMjE0XSwKICAgICAgWzIxNiwgMjQ2XSwKICAgICAgWzI0OCwgODkzXSwKICAgICAgWzg5NSwgODE5MV0sCiAgICAgIFs4MjA0LCA4MjA1XSwKICAgICAgWzgyNTUsIDgyNTZdLAogICAgICBbODMwNCwgODU5MV0sCiAgICAgIFsxMTI2NCwgMTIyNzFdLAogICAgICBbMTIyODksIDU1Mjk1XSwKICAgICAgWzYzNzQ0LCA2NDk3NV0sCiAgICAgIFs2NTAwOCwgNjU1MzNdLAogICAgICBbNjU1MzYsIDk4MzAzOV0KICAgIF07CiAgICBmdW5jdGlvbiBpc1ZhbGlkRWxlbWVudE5hbWUobmFtZSkgewogICAgICBsZXQgcmVnZXggPSAiXlthLXpBLVpdWyI7CiAgICAgIHJlZ2V4ICs9ICItLjAtOV9hLXpBLVpcXHV7Qjd9IjsKICAgICAgZm9yIChjb25zdCByYW5nZSBvZiB1bmljb2RlUmFuZ2VzKSB7CiAgICAgICAgcmVnZXggKz0gYFxcdXske3JhbmdlWzBdLnRvU3RyaW5nKDE2KX19LVxcdXske3JhbmdlWzFdLnRvU3RyaW5nKDE2KX19YDsKICAgICAgfQogICAgICByZWdleCArPSAiXSokIjsKICAgICAgcmV0dXJuIG5ldyBSZWdFeHAocmVnZXgsICJ1IikudGVzdChuYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmh0bWxTZWxlY3RvckZvcm1hdCA9IHsKICAgICAgbmFtZTogImh0bWwtc2VsZWN0b3IiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChuYW1lKSA9PiB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgJiYgaXNWYWxpZEVsZW1lbnROYW1lKG5hbWUpCiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanMKdmFyIHJlcXVpcmVfcGF0aDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHsKICAgICAgbmFtZTogInBhdGgiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChwYXRoKSA9PiB7CiAgICAgICAgICByZXR1cm4gcGF0aCA9PT0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0czIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IGV4cG9ydHMyLnBhdGhGb3JtYXQgPSBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgaHRtbF9zZWxlY3Rvcl8xID0gcmVxdWlyZV9odG1sX3NlbGVjdG9yKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoMigpOwogICAgdmFyIGh0bWxfc2VsZWN0b3JfMiA9IHJlcXVpcmVfaHRtbF9zZWxlY3RvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaHRtbFNlbGVjdG9yRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaHRtbF9zZWxlY3Rvcl8yLmh0bWxTZWxlY3RvckZvcm1hdDsKICAgIH0gfSk7CiAgICB2YXIgcGF0aF8yID0gcmVxdWlyZV9wYXRoMigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGF0aEZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhdGhfMi5wYXRoRm9ybWF0OwogICAgfSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IFtodG1sX3NlbGVjdG9yXzEuaHRtbFNlbGVjdG9yRm9ybWF0LCBwYXRoXzEucGF0aEZvcm1hdF07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJlZSA9IGV4cG9ydHMyLlRyZWVTeW1ib2wgPSBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gZXhwb3J0czIuTWVyZ2VTdHJhdGVneSA9IHZvaWQgMDsKICAgIHZhciBNZXJnZVN0cmF0ZWd5MjsKICAgIChmdW5jdGlvbihNZXJnZVN0cmF0ZWd5MykgewogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dPdmVyd3JpdGVDb25mbGljdCJdID0gMl0gPSAiQWxsb3dPdmVyd3JpdGVDb25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0NyZWF0aW9uQ29uZmxpY3QiXSA9IDRdID0gIkFsbG93Q3JlYXRpb25Db25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0RlbGV0ZUNvbmZsaWN0Il0gPSA4XSA9ICJBbGxvd0RlbGV0ZUNvbmZsaWN0IjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkRlZmF1bHQiXSA9IDBdID0gIkRlZmF1bHQiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siRXJyb3IiXSA9IDFdID0gIkVycm9yIjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkNvbnRlbnRPbmx5Il0gPSAyXSA9ICJDb250ZW50T25seSI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJPdmVyd3JpdGUiXSA9IDE0XSA9ICJPdmVyd3JpdGUiOwogICAgfSkoTWVyZ2VTdHJhdGVneTIgfHwgKGV4cG9ydHMyLk1lcmdlU3RyYXRlZ3kgPSBNZXJnZVN0cmF0ZWd5MiA9IHt9KSk7CiAgICBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gU3ltYm9sKCk7CiAgICBleHBvcnRzMi5UcmVlU3ltYm9sID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IGdsb2JhbFN5bWJvbCA9IHR5cGVvZiB3aW5kb3cgPT0gIm9iamVjdCIgJiYgd2luZG93LndpbmRvdyA9PT0gd2luZG93ICYmIHdpbmRvdy5TeW1ib2wgfHwgdHlwZW9mIHNlbGYgPT0gIm9iamVjdCIgJiYgc2VsZi5zZWxmID09PSBzZWxmICYmIHNlbGYuU3ltYm9sIHx8IHR5cGVvZiBnbG9iYWwgPT0gIm9iamVjdCIgJiYgZ2xvYmFsLmdsb2JhbCA9PT0gZ2xvYmFsICYmIGdsb2JhbC5TeW1ib2w7CiAgICAgIGlmICghZ2xvYmFsU3ltYm9sKSB7CiAgICAgICAgcmV0dXJuIFN5bWJvbCgic2NoZW1hdGljLXRyZWUiKTsKICAgICAgfQogICAgICBpZiAoIWdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlKSB7CiAgICAgICAgZ2xvYmFsU3ltYm9sLnNjaGVtYXRpY1RyZWUgPSBTeW1ib2woInNjaGVtYXRpYy10cmVlIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlOwogICAgfSgpOwogICAgZXhwb3J0czIuVHJlZSA9IE9iamVjdC5mcmVlemUoewogICAgICBpc1RyZWUobWF5YmVUcmVlKSB7CiAgICAgICAgcmV0dXJuIGV4cG9ydHMyLlRyZWVTeW1ib2wgaW4gbWF5YmVUcmVlOwogICAgICB9CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZXhjZXB0aW9uL2V4Y2VwdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gZXhwb3J0czIuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuU2NoZW1hdGljc0V4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIFNjaGVtYXRpY3NFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gU2NoZW1hdGljc0V4Y2VwdGlvbjsKICAgIHZhciBGaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgYWxyZWFkeSBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uOwogICAgdmFyIENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQ29udGVudCBhdCBwYXRoICIke3BhdGh9IiBoYXMgY2hhbmdlZCBiZXR3ZWVuIHRoZSBzdGFydCBhbmQgdGhlIGVuZCBvZiBhbiB1cGRhdGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEludmFsaWQgcmVjb3JkIGluc3RhbmNlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb247CiAgICB2YXIgTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYEEgbWVyZ2UgY29uZmxpY3RlZCBvbiBwYXRoICIke3BhdGh9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24gPSBNZXJnZUNvbmZsaWN0RXhjZXB0aW9uOwogICAgdmFyIFVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJXb3JrZmxvdyBkaWQgbm90IGV4ZWN1dGUgc3VjY2Vzc2Z1bGx5LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBVbnN1Y2Nlc3NmdWxXb3JrZmxvd0V4ZWN1dGlvbjsKICAgIHZhciBVbmltcGxlbWVudGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJUaGlzIGZ1bmN0aW9uIGlzIHVuaW1wbGVtZW50ZWQuIik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VbmltcGxlbWVudGVkRXhjZXB0aW9uID0gVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMKdmFyIHJlcXVpcmVfZGVsZWdhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRlbGVnYXRlVHJlZSA9IHZvaWQgMDsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIERlbGVnYXRlVHJlZSA9IGNsYXNzIHsKICAgICAgX290aGVyOwogICAgICBjb25zdHJ1Y3Rvcihfb3RoZXIpIHsKICAgICAgICB0aGlzLl9vdGhlciA9IF9vdGhlcjsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJyYW5jaCgpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIHRoaXMuX290aGVyLm1lcmdlKG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnJvb3Q7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIucmVhZFRleHQocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkSnNvbihwYXRoKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZ2V0KHBhdGgpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmdldERpcihwYXRoKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJlZ2luVXBkYXRlKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuYXBwbHkoYWN0aW9uLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVsZWdhdGVUcmVlID0gRGVsZWdhdGVUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcwp2YXIgcmVxdWlyZV9lbnRyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBTaW1wbGVGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9wYXRoOwogICAgICBfY29udGVudDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2NvbnRlbnQgPSBfY29udGVudDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IFNpbXBsZUZpbGVFbnRyeTsKICAgIHZhciBMYXp5RmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfcGF0aDsKICAgICAgX2xvYWQ7CiAgICAgIF9jb250ZW50ID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9sb2FkKSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2xvYWQgPSBfbG9hZDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudCB8fCAodGhpcy5fY29udGVudCA9IHRoaXMuX2xvYWQodGhpcy5fcGF0aCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IExhenlGaWxlRW50cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0BqcmlkZ2V3ZWxsLXNvdXJjZW1hcC1jb2RlYy1ucG0tMS41LjAtZGZkOTEyNmQ3MS0xMC56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMKdmFyIHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtMTAuemlwL25vZGVfbW9kdWxlcy9AanJpZGdld2VsbC9zb3VyY2VtYXAtY29kZWMvZGlzdC9zb3VyY2VtYXAtY29kZWMudW1kLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGdsb2JhbDIsIGZhY3RvcnkpIHsKICAgICAgdHlwZW9mIGV4cG9ydHMyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMiAhPT0gInVuZGVmaW5lZCIgPyBmYWN0b3J5KGV4cG9ydHMyKSA6IHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbImV4cG9ydHMiXSwgZmFjdG9yeSkgOiAoZ2xvYmFsMiA9IHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiA/IGdsb2JhbFRoaXMgOiBnbG9iYWwyIHx8IHNlbGYsIGZhY3RvcnkoZ2xvYmFsMi5zb3VyY2VtYXBDb2RlYyA9IHt9KSk7CiAgICB9KShleHBvcnRzMiwgZnVuY3Rpb24oZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBjb25zdCBjb21tYSA9ICIsIi5jaGFyQ29kZUF0KDApOwogICAgICBjb25zdCBzZW1pY29sb24gPSAiOyIuY2hhckNvZGVBdCgwKTsKICAgICAgY29uc3QgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgICAgIGNvbnN0IGludFRvQ2hhciA9IG5ldyBVaW50OEFycmF5KDY0KTsKICAgICAgY29uc3QgY2hhclRvSW50ID0gbmV3IFVpbnQ4QXJyYXkoMTI4KTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFycy5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbnN0IGMgPSBjaGFycy5jaGFyQ29kZUF0KGkpOwogICAgICAgIGludFRvQ2hhcltpXSA9IGM7CiAgICAgICAgY2hhclRvSW50W2NdID0gaTsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgcmVsYXRpdmUpIHsKICAgICAgICBsZXQgdmFsdWUgPSAwOwogICAgICAgIGxldCBzaGlmdCA9IDA7CiAgICAgICAgbGV0IGludGVnZXIgPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGMgPSByZWFkZXIubmV4dCgpOwogICAgICAgICAgaW50ZWdlciA9IGNoYXJUb0ludFtjXTsKICAgICAgICAgIHZhbHVlIHw9IChpbnRlZ2VyICYgMzEpIDw8IHNoaWZ0OwogICAgICAgICAgc2hpZnQgKz0gNTsKICAgICAgICB9IHdoaWxlIChpbnRlZ2VyICYgMzIpOwogICAgICAgIGNvbnN0IHNob3VsZE5lZ2F0ZSA9IHZhbHVlICYgMTsKICAgICAgICB2YWx1ZSA+Pj49IDE7CiAgICAgICAgaWYgKHNob3VsZE5lZ2F0ZSkgewogICAgICAgICAgdmFsdWUgPSAtMjE0NzQ4MzY0OCB8IC12YWx1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlbGF0aXZlICsgdmFsdWU7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZW5jb2RlSW50ZWdlcihidWlsZGVyLCBudW0sIHJlbGF0aXZlKSB7CiAgICAgICAgbGV0IGRlbHRhID0gbnVtIC0gcmVsYXRpdmU7CiAgICAgICAgZGVsdGEgPSBkZWx0YSA8IDAgPyAtZGVsdGEgPDwgMSB8IDEgOiBkZWx0YSA8PCAxOwogICAgICAgIGRvIHsKICAgICAgICAgIGxldCBjbGFtcGVkID0gZGVsdGEgJiAzMTsKICAgICAgICAgIGRlbHRhID4+Pj0gNTsKICAgICAgICAgIGlmIChkZWx0YSA+IDApCiAgICAgICAgICAgIGNsYW1wZWQgfD0gMzI7CiAgICAgICAgICBidWlsZGVyLndyaXRlKGludFRvQ2hhcltjbGFtcGVkXSk7CiAgICAgICAgfSB3aGlsZSAoZGVsdGEgPiAwKTsKICAgICAgICByZXR1cm4gbnVtOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGhhc01vcmVWbHEocmVhZGVyLCBtYXgpIHsKICAgICAgICBpZiAocmVhZGVyLnBvcyA+PSBtYXgpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHJlYWRlci5wZWVrKCkgIT09IGNvbW1hOwogICAgICB9CiAgICAgIGNvbnN0IGJ1Zkxlbmd0aCA9IDEwMjQgKiAxNjsKICAgICAgY29uc3QgdGQgPSB0eXBlb2YgVGV4dERlY29kZXIgIT09ICJ1bmRlZmluZWQiID8gLyogQF9fUFVSRV9fICovIG5ldyBUZXh0RGVjb2RlcigpIDogdHlwZW9mIEJ1ZmZlciAhPT0gInVuZGVmaW5lZCIgPyB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgY29uc3Qgb3V0ID0gQnVmZmVyLmZyb20oYnVmLmJ1ZmZlciwgYnVmLmJ5dGVPZmZzZXQsIGJ1Zi5ieXRlTGVuZ3RoKTsKICAgICAgICAgIHJldHVybiBvdXQudG9TdHJpbmcoKTsKICAgICAgICB9CiAgICAgIH0gOiB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgbGV0IG91dCA9ICIiOwogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgb3V0ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYnVmW2ldKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBvdXQ7CiAgICAgICAgfQogICAgICB9OwogICAgICBjbGFzcyBTdHJpbmdXcml0ZXIgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgICAgdGhpcy5wb3MgPSAwOwogICAgICAgICAgdGhpcy5vdXQgPSAiIjsKICAgICAgICAgIHRoaXMuYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoYnVmTGVuZ3RoKTsKICAgICAgICB9CiAgICAgICAgd3JpdGUodikgewogICAgICAgICAgY29uc3QgeyBidWZmZXIgfSA9IHRoaXM7CiAgICAgICAgICBidWZmZXJbdGhpcy5wb3MrK10gPSB2OwogICAgICAgICAgaWYgKHRoaXMucG9zID09PSBidWZMZW5ndGgpIHsKICAgICAgICAgICAgdGhpcy5vdXQgKz0gdGQuZGVjb2RlKGJ1ZmZlcik7CiAgICAgICAgICAgIHRoaXMucG9zID0gMDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZmx1c2goKSB7CiAgICAgICAgICBjb25zdCB7IGJ1ZmZlciwgb3V0LCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICByZXR1cm4gcG9zID4gMCA/IG91dCArIHRkLmRlY29kZShidWZmZXIuc3ViYXJyYXkoMCwgcG9zKSkgOiBvdXQ7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNsYXNzIFN0cmluZ1JlYWRlciB7CiAgICAgICAgY29uc3RydWN0b3IoYnVmZmVyKSB7CiAgICAgICAgICB0aGlzLnBvcyA9IDA7CiAgICAgICAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjsKICAgICAgICB9CiAgICAgICAgbmV4dCgpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlci5jaGFyQ29kZUF0KHRoaXMucG9zKyspOwogICAgICAgIH0KICAgICAgICBwZWVrKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuYnVmZmVyLmNoYXJDb2RlQXQodGhpcy5wb3MpOwogICAgICAgIH0KICAgICAgICBpbmRleE9mKGNoYXIpIHsKICAgICAgICAgIGNvbnN0IHsgYnVmZmVyLCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICBjb25zdCBpZHggPSBidWZmZXIuaW5kZXhPZihjaGFyLCBwb3MpOwogICAgICAgICAgcmV0dXJuIGlkeCA9PT0gLTEgPyBidWZmZXIubGVuZ3RoIDogaWR4OwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdCBFTVBUWSA9IFtdOwogICAgICBmdW5jdGlvbiBkZWNvZGVPcmlnaW5hbFNjb3BlcyhpbnB1dCkgewogICAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSBpbnB1dDsKICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTsKICAgICAgICBjb25zdCBzY29wZXMgPSBbXTsKICAgICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICAgIGxldCBsaW5lID0gMDsKICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IGxlbmd0aDsgcmVhZGVyLnBvcysrKSB7CiAgICAgICAgICBsaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGxpbmUpOwogICAgICAgICAgY29uc3QgY29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSkgewogICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgIGxhc3RbMl0gPSBsaW5lOwogICAgICAgICAgICBsYXN0WzNdID0gY29sdW1uOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtpbmQgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBoYXNOYW1lID0gZmllbGRzICYgMTsKICAgICAgICAgIGNvbnN0IHNjb3BlID0gaGFzTmFtZSA/IFtsaW5lLCBjb2x1bW4sIDAsIDAsIGtpbmQsIGRlY29kZUludGVnZXIocmVhZGVyLCAwKV0gOiBbbGluZSwgY29sdW1uLCAwLCAwLCBraW5kXTsKICAgICAgICAgIGxldCB2YXJzID0gRU1QVFk7CiAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIGxlbmd0aCkpIHsKICAgICAgICAgICAgdmFycyA9IFtdOwogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgY29uc3QgdmFyc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgIHZhcnMucHVzaCh2YXJzSW5kZXgpOwogICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBzY29wZS52YXJzID0gdmFyczsKICAgICAgICAgIHNjb3Blcy5wdXNoKHNjb3BlKTsKICAgICAgICAgIHN0YWNrLnB1c2goc2NvcGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NvcGVzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcykgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjb3Blcy5sZW5ndGg7ICkgewogICAgICAgICAgaSA9IF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGksIHdyaXRlciwgWzBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKSB7CiAgICAgICAgY29uc3Qgc2NvcGUgPSBzY29wZXNbaW5kZXhdOwogICAgICAgIGNvbnN0IHsgMDogc3RhcnRMaW5lLCAxOiBzdGFydENvbHVtbiwgMjogZW5kTGluZSwgMzogZW5kQ29sdW1uLCA0OiBraW5kLCB2YXJzIH0gPSBzY29wZTsKICAgICAgICBpZiAoaW5kZXggPiAwKQogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICBzdGF0ZVswXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzdGFydExpbmUsIHN0YXRlWzBdKTsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc3RhcnRDb2x1bW4sIDApOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBraW5kLCAwKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSBzY29wZS5sZW5ndGggPT09IDYgPyAxIDogMDsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZmllbGRzLCAwKTsKICAgICAgICBpZiAoc2NvcGUubGVuZ3RoID09PSA2KQogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNjb3BlWzVdLCAwKTsKICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdmFycykgewogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHYsIDApOwogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgc2NvcGVzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gc2NvcGVzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlT3JpZ2luYWxTY29wZXMoc2NvcGVzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlci53cml0ZShjb21tYSk7CiAgICAgICAgc3RhdGVbMF0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kTGluZSwgc3RhdGVbMF0pOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRDb2x1bW4sIDApOwogICAgICAgIHJldHVybiBpbmRleDsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVHZW5lcmF0ZWRSYW5nZXMoaW5wdXQpIHsKICAgICAgICBjb25zdCB7IGxlbmd0aCB9ID0gaW5wdXQ7CiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihpbnB1dCk7CiAgICAgICAgY29uc3QgcmFuZ2VzID0gW107CiAgICAgICAgY29uc3Qgc3RhY2sgPSBbXTsKICAgICAgICBsZXQgZ2VuTGluZSA9IDA7CiAgICAgICAgbGV0IGRlZmluaXRpb25Tb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBkZWZpbml0aW9uU2NvcGVJbmRleCA9IDA7CiAgICAgICAgbGV0IGNhbGxzaXRlU291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVMaW5lID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVDb2x1bW4gPSAwOwogICAgICAgIGxldCBiaW5kaW5nTGluZSA9IDA7CiAgICAgICAgbGV0IGJpbmRpbmdDb2x1bW4gPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgbGV0IGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IHNlbWk7IHJlYWRlci5wb3MrKykgewogICAgICAgICAgICBnZW5Db2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZ2VuQ29sdW1uKTsKICAgICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpIHsKICAgICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgICAgbGFzdFsyXSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgbGFzdFszXSA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgIGNvbnN0IGhhc0RlZmluaXRpb24gPSBmaWVsZHMgJiAxOwogICAgICAgICAgICBjb25zdCBoYXNDYWxsc2l0ZSA9IGZpZWxkcyAmIDI7CiAgICAgICAgICAgIGNvbnN0IGhhc1Njb3BlID0gZmllbGRzICYgNDsKICAgICAgICAgICAgbGV0IGNhbGxzaXRlID0gbnVsbDsKICAgICAgICAgICAgbGV0IGJpbmRpbmdzID0gRU1QVFk7CiAgICAgICAgICAgIGxldCByYW5nZTsKICAgICAgICAgICAgaWYgKGhhc0RlZmluaXRpb24pIHsKICAgICAgICAgICAgICBjb25zdCBkZWZTb3VyY2VzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgICAgZGVmaW5pdGlvblNjb3BlSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCA9PT0gZGVmU291cmNlc0luZGV4ID8gZGVmaW5pdGlvblNjb3BlSW5kZXggOiAwKTsKICAgICAgICAgICAgICBkZWZpbml0aW9uU291cmNlc0luZGV4ID0gZGVmU291cmNlc0luZGV4OwogICAgICAgICAgICAgIHJhbmdlID0gW2dlbkxpbmUsIGdlbkNvbHVtbiwgMCwgMCwgZGVmU291cmNlc0luZGV4LCBkZWZpbml0aW9uU2NvcGVJbmRleF07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmFuZ2UgPSBbZ2VuTGluZSwgZ2VuQ29sdW1uLCAwLCAwXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5pc1Njb3BlID0gISFoYXNTY29wZTsKICAgICAgICAgICAgaWYgKGhhc0NhbGxzaXRlKSB7CiAgICAgICAgICAgICAgY29uc3QgcHJldkNzaSA9IGNhbGxzaXRlU291cmNlc0luZGV4OwogICAgICAgICAgICAgIGNvbnN0IHByZXZMaW5lID0gY2FsbHNpdGVMaW5lOwogICAgICAgICAgICAgIGNhbGxzaXRlU291cmNlc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGNhbGxzaXRlU291cmNlc0luZGV4KTsKICAgICAgICAgICAgICBjb25zdCBzYW1lU291cmNlID0gcHJldkNzaSA9PT0gY2FsbHNpdGVTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgY2FsbHNpdGVMaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNhbWVTb3VyY2UgPyBjYWxsc2l0ZUxpbmUgOiAwKTsKICAgICAgICAgICAgICBjYWxsc2l0ZUNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzYW1lU291cmNlICYmIHByZXZMaW5lID09PSBjYWxsc2l0ZUxpbmUgPyBjYWxsc2l0ZUNvbHVtbiA6IDApOwogICAgICAgICAgICAgIGNhbGxzaXRlID0gW2NhbGxzaXRlU291cmNlc0luZGV4LCBjYWxsc2l0ZUxpbmUsIGNhbGxzaXRlQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5jYWxsc2l0ZSA9IGNhbGxzaXRlOwogICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgYmluZGluZ3MgPSBbXTsKICAgICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgICBiaW5kaW5nTGluZSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgICBiaW5kaW5nQ29sdW1uID0gZ2VuQ29sdW1uOwogICAgICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbnNDb3VudCA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uUmFuZ2VzOwogICAgICAgICAgICAgICAgaWYgKGV4cHJlc3Npb25zQ291bnQgPCAtMSkgewogICAgICAgICAgICAgICAgICBleHByZXNzaW9uUmFuZ2VzID0gW1tkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCldXTsKICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IC0xOyBpID4gZXhwcmVzc2lvbnNDb3VudDsgaS0tKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJldkJsID0gYmluZGluZ0xpbmU7CiAgICAgICAgICAgICAgICAgICAgYmluZGluZ0xpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUpOwogICAgICAgICAgICAgICAgICAgIGJpbmRpbmdDb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUgPT09IHByZXZCbCA/IGJpbmRpbmdDb2x1bW4gOiAwKTsKICAgICAgICAgICAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SYW5nZXMucHVzaChbZXhwcmVzc2lvbiwgYmluZGluZ0xpbmUsIGJpbmRpbmdDb2x1bW5dKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvblJhbmdlcyA9IFtbZXhwcmVzc2lvbnNDb3VudF1dOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYmluZGluZ3MucHVzaChleHByZXNzaW9uUmFuZ2VzKTsKICAgICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmJpbmRpbmdzID0gYmluZGluZ3M7CiAgICAgICAgICAgIHJhbmdlcy5wdXNoKHJhbmdlKTsKICAgICAgICAgICAgc3RhY2sucHVzaChyYW5nZSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW5MaW5lKys7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8IGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHJhbmdlczsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzKSB7CiAgICAgICAgaWYgKHJhbmdlcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBpID0gX2VuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMsIGksIHdyaXRlciwgWzAsIDAsIDAsIDAsIDAsIDAsIDBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSkgewogICAgICAgIGNvbnN0IHJhbmdlID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICBjb25zdCB7IDA6IHN0YXJ0TGluZSwgMTogc3RhcnRDb2x1bW4sIDI6IGVuZExpbmUsIDM6IGVuZENvbHVtbiwgaXNTY29wZSwgY2FsbHNpdGUsIGJpbmRpbmdzIH0gPSByYW5nZTsKICAgICAgICBpZiAoc3RhdGVbMF0gPCBzdGFydExpbmUpIHsKICAgICAgICAgIGNhdGNodXBMaW5lKHdyaXRlciwgc3RhdGVbMF0sIHN0YXJ0TGluZSk7CiAgICAgICAgICBzdGF0ZVswXSA9IHN0YXJ0TGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID4gMCkgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgcmFuZ2VbMV0sIHN0YXRlWzFdKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSAocmFuZ2UubGVuZ3RoID09PSA2ID8gMSA6IDApIHwgKGNhbGxzaXRlID8gMiA6IDApIHwgKGlzU2NvcGUgPyA0IDogMCk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGZpZWxkcywgMCk7CiAgICAgICAgaWYgKHJhbmdlLmxlbmd0aCA9PT0gNikgewogICAgICAgICAgY29uc3QgeyA0OiBzb3VyY2VzSW5kZXgsIDU6IHNjb3Blc0luZGV4IH0gPSByYW5nZTsKICAgICAgICAgIGlmIChzb3VyY2VzSW5kZXggIT09IHN0YXRlWzJdKSB7CiAgICAgICAgICAgIHN0YXRlWzNdID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIHN0YXRlWzJdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNvdXJjZXNJbmRleCwgc3RhdGVbMl0pOwogICAgICAgICAgc3RhdGVbM10gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2NvcGVzSW5kZXgsIHN0YXRlWzNdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNhbGxzaXRlKSB7CiAgICAgICAgICBjb25zdCB7IDA6IHNvdXJjZXNJbmRleCwgMTogY2FsbExpbmUsIDI6IGNhbGxDb2x1bW4gfSA9IHJhbmdlLmNhbGxzaXRlOwogICAgICAgICAgaWYgKHNvdXJjZXNJbmRleCAhPT0gc3RhdGVbNF0pIHsKICAgICAgICAgICAgc3RhdGVbNV0gPSAwOwogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9IGVsc2UgaWYgKGNhbGxMaW5lICE9PSBzdGF0ZVs1XSkgewogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9CiAgICAgICAgICBzdGF0ZVs0XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzb3VyY2VzSW5kZXgsIHN0YXRlWzRdKTsKICAgICAgICAgIHN0YXRlWzVdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGNhbGxMaW5lLCBzdGF0ZVs1XSk7CiAgICAgICAgICBzdGF0ZVs2XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBjYWxsQ29sdW1uLCBzdGF0ZVs2XSk7CiAgICAgICAgfQogICAgICAgIGlmIChiaW5kaW5ncykgewogICAgICAgICAgZm9yIChjb25zdCBiaW5kaW5nIG9mIGJpbmRpbmdzKSB7CiAgICAgICAgICAgIGlmIChiaW5kaW5nLmxlbmd0aCA+IDEpCiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIC1iaW5kaW5nLmxlbmd0aCwgMCk7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBiaW5kaW5nWzBdWzBdOwogICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwcmVzc2lvbiwgMCk7CiAgICAgICAgICAgIGxldCBiaW5kaW5nU3RhcnRMaW5lID0gc3RhcnRMaW5lOwogICAgICAgICAgICBsZXQgYmluZGluZ1N0YXJ0Q29sdW1uID0gc3RhcnRDb2x1bW47CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgYmluZGluZy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGV4cFJhbmdlID0gYmluZGluZ1tpXTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRMaW5lID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzFdLCBiaW5kaW5nU3RhcnRMaW5lKTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRDb2x1bW4gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMl0sIGJpbmRpbmdTdGFydENvbHVtbik7CiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzBdLCAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlR2VuZXJhdGVkUmFuZ2VzKHJhbmdlcywgaW5kZXgsIHdyaXRlciwgc3RhdGUpOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGVbMF0gPCBlbmRMaW5lKSB7CiAgICAgICAgICBjYXRjaHVwTGluZSh3cml0ZXIsIHN0YXRlWzBdLCBlbmRMaW5lKTsKICAgICAgICAgIHN0YXRlWzBdID0gZW5kTGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kQ29sdW1uLCBzdGF0ZVsxXSk7CiAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhdGNodXBMaW5lKHdyaXRlciwgbGFzdExpbmUsIGxpbmUpIHsKICAgICAgICBkbyB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoc2VtaWNvbG9uKTsKICAgICAgICB9IHdoaWxlICgrK2xhc3RMaW5lIDwgbGluZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZGVjb2RlKG1hcHBpbmdzKSB7CiAgICAgICAgY29uc3QgeyBsZW5ndGggfSA9IG1hcHBpbmdzOwogICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBTdHJpbmdSZWFkZXIobWFwcGluZ3MpOwogICAgICAgIGNvbnN0IGRlY29kZWQgPSBbXTsKICAgICAgICBsZXQgZ2VuQ29sdW1uID0gMDsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgY29uc3QgbGluZSA9IFtdOwogICAgICAgICAgbGV0IHNvcnRlZCA9IHRydWU7CiAgICAgICAgICBsZXQgbGFzdENvbCA9IDA7CiAgICAgICAgICBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgd2hpbGUgKHJlYWRlci5wb3MgPCBzZW1pKSB7CiAgICAgICAgICAgIGxldCBzZWc7CiAgICAgICAgICAgIGdlbkNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBnZW5Db2x1bW4pOwogICAgICAgICAgICBpZiAoZ2VuQ29sdW1uIDwgbGFzdENvbCkKICAgICAgICAgICAgICBzb3J0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgbGFzdENvbCA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgIHNvdXJjZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzb3VyY2VzSW5kZXgpOwogICAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc291cmNlTGluZSk7CiAgICAgICAgICAgICAgc291cmNlQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNvdXJjZUNvbHVtbik7CiAgICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgICAgbmFtZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBuYW1lc0luZGV4KTsKICAgICAgICAgICAgICAgIHNlZyA9IFtnZW5Db2x1bW4sIHNvdXJjZXNJbmRleCwgc291cmNlTGluZSwgc291cmNlQ29sdW1uLCBuYW1lc0luZGV4XTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2VnID0gW2dlbkNvbHVtbiwgc291cmNlc0luZGV4LCBzb3VyY2VMaW5lLCBzb3VyY2VDb2x1bW5dOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzZWcgPSBbZ2VuQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lLnB1c2goc2VnKTsKICAgICAgICAgICAgcmVhZGVyLnBvcysrOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFzb3J0ZWQpCiAgICAgICAgICAgIHNvcnQobGluZSk7CiAgICAgICAgICBkZWNvZGVkLnB1c2gobGluZSk7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8PSBsZW5ndGgpOwogICAgICAgIHJldHVybiBkZWNvZGVkOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHNvcnQobGluZSkgewogICAgICAgIGxpbmUuc29ydChzb3J0Q29tcGFyYXRvcik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc29ydENvbXBhcmF0b3IoYSwgYikgewogICAgICAgIHJldHVybiBhWzBdIC0gYlswXTsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGUoZGVjb2RlZCkgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGVjb2RlZC5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3QgbGluZSA9IGRlY29kZWRbaV07CiAgICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgIHdyaXRlci53cml0ZShzZW1pY29sb24pOwogICAgICAgICAgaWYgKGxpbmUubGVuZ3RoID09PSAwKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIGxldCBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsaW5lLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBsaW5lW2pdOwogICAgICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICAgICAgZ2VuQ29sdW1uID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMF0sIGdlbkNvbHVtbik7CiAgICAgICAgICAgIGlmIChzZWdtZW50Lmxlbmd0aCA9PT0gMSkKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgc291cmNlc0luZGV4ID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMV0sIHNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFsyXSwgc291cmNlTGluZSk7CiAgICAgICAgICAgIHNvdXJjZUNvbHVtbiA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzNdLCBzb3VyY2VDb2x1bW4pOwogICAgICAgICAgICBpZiAoc2VnbWVudC5sZW5ndGggPT09IDQpCiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIG5hbWVzSW5kZXggPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFs0XSwgbmFtZXNJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB3cml0ZXIuZmx1c2goKTsKICAgICAgfQogICAgICBleHBvcnRzMy5kZWNvZGUgPSBkZWNvZGU7CiAgICAgIGV4cG9ydHMzLmRlY29kZUdlbmVyYXRlZFJhbmdlcyA9IGRlY29kZUdlbmVyYXRlZFJhbmdlczsKICAgICAgZXhwb3J0czMuZGVjb2RlT3JpZ2luYWxTY29wZXMgPSBkZWNvZGVPcmlnaW5hbFNjb3BlczsKICAgICAgZXhwb3J0czMuZW5jb2RlID0gZW5jb2RlOwogICAgICBleHBvcnRzMy5lbmNvZGVHZW5lcmF0ZWRSYW5nZXMgPSBlbmNvZGVHZW5lcmF0ZWRSYW5nZXM7CiAgICAgIGV4cG9ydHMzLmVuY29kZU9yaWdpbmFsU2NvcGVzID0gZW5jb2RlT3JpZ2luYWxTY29wZXM7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcwp2YXIgcmVxdWlyZV9tYWdpY19zdHJpbmdfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzb3VyY2VtYXBDb2RlYyA9IHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCgpOwogICAgdmFyIEJpdFNldCA9IGNsYXNzIF9CaXRTZXQgewogICAgICBjb25zdHJ1Y3RvcihhcmcpIHsKICAgICAgICB0aGlzLmJpdHMgPSBhcmcgaW5zdGFuY2VvZiBfQml0U2V0ID8gYXJnLmJpdHMuc2xpY2UoKSA6IFtdOwogICAgICB9CiAgICAgIGFkZChuMikgewogICAgICAgIHRoaXMuYml0c1tuMiA+PiA1XSB8PSAxIDw8IChuMiAmIDMxKTsKICAgICAgfQogICAgICBoYXMobjIpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5iaXRzW24yID4+IDVdICYgMSA8PCAobjIgJiAzMSkpOwogICAgICB9CiAgICB9OwogICAgdmFyIENodW5rID0gY2xhc3MgX0NodW5rIHsKICAgICAgY29uc3RydWN0b3Ioc3RhcnQsIGVuZCwgY29udGVudCkgewogICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDsKICAgICAgICB0aGlzLmVuZCA9IGVuZDsKICAgICAgICB0aGlzLm9yaWdpbmFsID0gY29udGVudDsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBmYWxzZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIHsKICAgICAgICAgIHRoaXMucHJldmlvdXMgPSBudWxsOwogICAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXBwZW5kTGVmdChjb250ZW50KSB7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGNvbnRlbnQpIHsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRybyArIGNvbnRlbnQ7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgX0NodW5rKHRoaXMuc3RhcnQsIHRoaXMuZW5kLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICBjaHVuay5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2h1bmsub3V0cm8gPSB0aGlzLm91dHJvOwogICAgICAgIGNodW5rLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7CiAgICAgICAgY2h1bmsuc3RvcmVOYW1lID0gdGhpcy5zdG9yZU5hbWU7CiAgICAgICAgY2h1bmsuZWRpdGVkID0gdGhpcy5lZGl0ZWQ7CiAgICAgICAgcmV0dXJuIGNodW5rOwogICAgICB9CiAgICAgIGNvbnRhaW5zKGluZGV4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnQgPCBpbmRleCAmJiBpbmRleCA8IHRoaXMuZW5kOwogICAgICB9CiAgICAgIGVhY2hOZXh0KGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaFByZXZpb3VzKGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVkaXQoY29udGVudCwgc3RvcmVOYW1lLCBjb250ZW50T25seSkgewogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgaWYgKCFjb250ZW50T25seSkgewogICAgICAgICAgdGhpcy5pbnRybyA9ICIiOwogICAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIH0KICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IHN0b3JlTmFtZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZExlZnQoY29udGVudCkgewogICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBwcmVwZW5kUmlnaHQoY29udGVudCkgewogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIGlmICh0aGlzLmVkaXRlZCkgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcmlnaW5hbDsKICAgICAgICAgIHRoaXMuc3RvcmVOYW1lID0gZmFsc2U7CiAgICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICBzcGxpdChpbmRleCkgewogICAgICAgIGNvbnN0IHNsaWNlSW5kZXggPSBpbmRleCAtIHRoaXMuc3RhcnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCZWZvcmUgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKDAsIHNsaWNlSW5kZXgpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQWZ0ZXIgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHNsaWNlSW5kZXgpOwogICAgICAgIHRoaXMub3JpZ2luYWwgPSBvcmlnaW5hbEJlZm9yZTsKICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBfQ2h1bmsoaW5kZXgsIHRoaXMuZW5kLCBvcmlnaW5hbEFmdGVyKTsKICAgICAgICBuZXdDaHVuay5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuZW5kID0gaW5kZXg7CiAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICBuZXdDaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAiIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gb3JpZ2luYWxCZWZvcmU7CiAgICAgICAgfQogICAgICAgIG5ld0NodW5rLm5leHQgPSB0aGlzLm5leHQ7CiAgICAgICAgaWYgKG5ld0NodW5rLm5leHQpIG5ld0NodW5rLm5leHQucHJldmlvdXMgPSBuZXdDaHVuazsKICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IHRoaXM7CiAgICAgICAgdGhpcy5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgcmV0dXJuIG5ld0NodW5rOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgdGhpcy5jb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICB0cmltRW5kKHJ4KSB7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuc3BsaXQodGhpcy5zdGFydCArIHRyaW1tZWQubGVuZ3RoKS5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgICBpZiAodGhpcy5lZGl0ZWQpIHsKICAgICAgICAgICAgICB0aGlzLmVkaXQodHJpbW1lZCwgdGhpcy5zdG9yZU5hbWUsIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KHJ4KSB7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gdGhpcy5zcGxpdCh0aGlzLmVuZCAtIHRyaW1tZWQubGVuZ3RoKTsKICAgICAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICAgICAgbmV3Q2h1bmsuZWRpdCh0cmltbWVkLCB0aGlzLnN0b3JlTmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuZWRpdCgiIiwgdm9pZCAwLCB0cnVlKTsKICAgICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gZ2V0QnRvYSgpIHsKICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiAmJiB0eXBlb2YgZ2xvYmFsVGhpcy5idG9hID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIChzdHIyKSA9PiBnbG9iYWxUaGlzLmJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHN0cjIpKSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIEJ1ZmZlciA9PT0gImZ1bmN0aW9uIikgewogICAgICAgIHJldHVybiAoc3RyMikgPT4gQnVmZmVyLmZyb20oc3RyMiwgInV0Zi04IikudG9TdHJpbmcoImJhc2U2NCIpOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIGVudmlyb25tZW50OiBgd2luZG93LmJ0b2FgIG9yIGBCdWZmZXJgIHNob3VsZCBiZSBzdXBwb3J0ZWQuIik7CiAgICAgICAgfTsKICAgICAgfQogICAgfQogICAgdmFyIGJ0b2EgPSAvKiBAX19QVVJFX18gKi8gZ2V0QnRvYSgpOwogICAgdmFyIFNvdXJjZU1hcCA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IocHJvcGVydGllcykgewogICAgICAgIHRoaXMudmVyc2lvbiA9IDM7CiAgICAgICAgdGhpcy5maWxlID0gcHJvcGVydGllcy5maWxlOwogICAgICAgIHRoaXMuc291cmNlcyA9IHByb3BlcnRpZXMuc291cmNlczsKICAgICAgICB0aGlzLnNvdXJjZXNDb250ZW50ID0gcHJvcGVydGllcy5zb3VyY2VzQ29udGVudDsKICAgICAgICB0aGlzLm5hbWVzID0gcHJvcGVydGllcy5uYW1lczsKICAgICAgICB0aGlzLm1hcHBpbmdzID0gc291cmNlbWFwQ29kZWMuZW5jb2RlKHByb3BlcnRpZXMubWFwcGluZ3MpOwogICAgICAgIGlmICh0eXBlb2YgcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0ICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgdGhpcy54X2dvb2dsZV9pZ25vcmVMaXN0ID0gcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0OwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHByb3BlcnRpZXMuZGVidWdJZCAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgIHRoaXMuZGVidWdJZCA9IHByb3BlcnRpZXMuZGVidWdJZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMpOwogICAgICB9CiAgICAgIHRvVXJsKCkgewogICAgICAgIHJldHVybiAiZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIgKyBidG9hKHRoaXMudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBndWVzc0luZGVudChjb2RlKSB7CiAgICAgIGNvbnN0IGxpbmVzID0gY29kZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgdGFiYmVkID0gbGluZXMuZmlsdGVyKChsaW5lKSA9PiAvXlx0Ky8udGVzdChsaW5lKSk7CiAgICAgIGNvbnN0IHNwYWNlZCA9IGxpbmVzLmZpbHRlcigobGluZSkgPT4gL14gezIsfS8udGVzdChsaW5lKSk7CiAgICAgIGlmICh0YWJiZWQubGVuZ3RoID09PSAwICYmIHNwYWNlZC5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBpZiAodGFiYmVkLmxlbmd0aCA+PSBzcGFjZWQubGVuZ3RoKSB7CiAgICAgICAgcmV0dXJuICIJIjsKICAgICAgfQogICAgICBjb25zdCBtaW4gPSBzcGFjZWQucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4gewogICAgICAgIGNvbnN0IG51bVNwYWNlcyA9IC9eICsvLmV4ZWMoY3VycmVudClbMF0ubGVuZ3RoOwogICAgICAgIHJldHVybiBNYXRoLm1pbihudW1TcGFjZXMsIHByZXZpb3VzKTsKICAgICAgfSwgSW5maW5pdHkpOwogICAgICByZXR1cm4gbmV3IEFycmF5KG1pbiArIDEpLmpvaW4oIiAiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFJlbGF0aXZlUGF0aChmcm9tLCB0bykgewogICAgICBjb25zdCBmcm9tUGFydHMgPSBmcm9tLnNwbGl0KC9bL1xcXS8pOwogICAgICBjb25zdCB0b1BhcnRzID0gdG8uc3BsaXQoL1svXFxdLyk7CiAgICAgIGZyb21QYXJ0cy5wb3AoKTsKICAgICAgd2hpbGUgKGZyb21QYXJ0c1swXSA9PT0gdG9QYXJ0c1swXSkgewogICAgICAgIGZyb21QYXJ0cy5zaGlmdCgpOwogICAgICAgIHRvUGFydHMuc2hpZnQoKTsKICAgICAgfQogICAgICBpZiAoZnJvbVBhcnRzLmxlbmd0aCkgewogICAgICAgIGxldCBpID0gZnJvbVBhcnRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSBmcm9tUGFydHNbaV0gPSAiLi4iOwogICAgICB9CiAgICAgIHJldHVybiBmcm9tUGFydHMuY29uY2F0KHRvUGFydHMpLmpvaW4oIi8iKTsKICAgIH0KICAgIHZhciB0b1N0cmluZzIgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwogICAgZnVuY3Rpb24gaXNPYmplY3QyKHRoaW5nKSB7CiAgICAgIHJldHVybiB0b1N0cmluZzIuY2FsbCh0aGluZykgPT09ICJbb2JqZWN0IE9iamVjdF0iOwogICAgfQogICAgZnVuY3Rpb24gZ2V0TG9jYXRvcihzb3VyY2UpIHsKICAgICAgY29uc3Qgb3JpZ2luYWxMaW5lcyA9IHNvdXJjZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgbGluZU9mZnNldHMgPSBbXTsKICAgICAgZm9yIChsZXQgaSA9IDAsIHBvcyA9IDA7IGkgPCBvcmlnaW5hbExpbmVzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbGluZU9mZnNldHMucHVzaChwb3MpOwogICAgICAgIHBvcyArPSBvcmlnaW5hbExpbmVzW2ldLmxlbmd0aCArIDE7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uIGxvY2F0ZShpbmRleCkgewogICAgICAgIGxldCBpID0gMDsKICAgICAgICBsZXQgaiA9IGxpbmVPZmZzZXRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaSA8IGopIHsKICAgICAgICAgIGNvbnN0IG0gPSBpICsgaiA+PiAxOwogICAgICAgICAgaWYgKGluZGV4IDwgbGluZU9mZnNldHNbbV0pIHsKICAgICAgICAgICAgaiA9IG07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpID0gbSArIDE7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGxpbmUgPSBpIC0gMTsKICAgICAgICBjb25zdCBjb2x1bW4gPSBpbmRleCAtIGxpbmVPZmZzZXRzW2xpbmVdOwogICAgICAgIHJldHVybiB7IGxpbmUsIGNvbHVtbiB9OwogICAgICB9OwogICAgfQogICAgdmFyIHdvcmRSZWdleCA9IC9cdy87CiAgICB2YXIgTWFwcGluZ3MgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGhpcmVzKSB7CiAgICAgICAgdGhpcy5oaXJlcyA9IGhpcmVzOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUxpbmUgPSAwOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgdGhpcy5yYXcgPSBbXTsKICAgICAgICB0aGlzLnJhd1NlZ21lbnRzID0gdGhpcy5yYXdbdGhpcy5nZW5lcmF0ZWRDb2RlTGluZV0gPSBbXTsKICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkZEVkaXQoc291cmNlSW5kZXgsIGNvbnRlbnQsIGxvYywgbmFtZUluZGV4KSB7CiAgICAgICAgaWYgKGNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50TGVuZ3RoTWludXNPbmUgPSBjb250ZW50Lmxlbmd0aCAtIDE7CiAgICAgICAgICBsZXQgY29udGVudExpbmVFbmQgPSBjb250ZW50LmluZGV4T2YoIlxuIiwgMCk7CiAgICAgICAgICBsZXQgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IC0xOwogICAgICAgICAgd2hpbGUgKGNvbnRlbnRMaW5lRW5kID49IDAgJiYgY29udGVudExlbmd0aE1pbnVzT25lID4gY29udGVudExpbmVFbmQpIHsKICAgICAgICAgICAgY29uc3Qgc2VnbWVudDIgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgICBzZWdtZW50Mi5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5yYXdTZWdtZW50cy5wdXNoKHNlZ21lbnQyKTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IGNvbnRlbnRMaW5lRW5kOwogICAgICAgICAgICBjb250ZW50TGluZUVuZCA9IGNvbnRlbnQuaW5kZXhPZigiXG4iLCBjb250ZW50TGluZUVuZCArIDEpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2VnbWVudCA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgc2VnbWVudC5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICB0aGlzLmFkdmFuY2UoY29udGVudC5zbGljZShwcmV2aW91c0NvbnRlbnRMaW5lRW5kICsgMSkpOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nKSB7CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2godGhpcy5wZW5kaW5nKTsKICAgICAgICAgIHRoaXMuYWR2YW5jZShjb250ZW50KTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gbnVsbDsKICAgICAgfQogICAgICBhZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgb3JpZ2luYWwsIGxvYywgc291cmNlbWFwTG9jYXRpb25zKSB7CiAgICAgICAgbGV0IG9yaWdpbmFsQ2hhckluZGV4ID0gY2h1bmsuc3RhcnQ7CiAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTsKICAgICAgICBsZXQgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENoYXJJbmRleCA8IGNodW5rLmVuZCkgewogICAgICAgICAgaWYgKG9yaWdpbmFsW29yaWdpbmFsQ2hhckluZGV4XSA9PT0gIlxuIikgewogICAgICAgICAgICBsb2MubGluZSArPSAxOwogICAgICAgICAgICBsb2MuY29sdW1uID0gMDsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgZmlyc3QgPSB0cnVlOwogICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGhpcy5oaXJlcyB8fCBmaXJzdCB8fCBzb3VyY2VtYXBMb2NhdGlvbnMuaGFzKG9yaWdpbmFsQ2hhckluZGV4KSkgewogICAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICAgIGlmICh0aGlzLmhpcmVzID09PSAiYm91bmRhcnkiKSB7CiAgICAgICAgICAgICAgICBpZiAod29yZFJlZ2V4LnRlc3Qob3JpZ2luYWxbb3JpZ2luYWxDaGFySW5kZXhdKSkgewogICAgICAgICAgICAgICAgICBpZiAoIWNoYXJJbkhpcmVzQm91bmRhcnkpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGxvYy5jb2x1bW4gKz0gMTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uICs9IDE7CiAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvcmlnaW5hbENoYXJJbmRleCArPSAxOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkdmFuY2Uoc3RyMikgewogICAgICAgIGlmICghc3RyMikgcmV0dXJuOwogICAgICAgIGNvbnN0IGxpbmVzID0gc3RyMi5zcGxpdCgiXG4iKTsKICAgICAgICBpZiAobGluZXMubGVuZ3RoID4gMSkgewogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lcy5sZW5ndGggLSAxOyBpKyspIHsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSsrOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiArPSBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXS5sZW5ndGg7CiAgICAgIH0KICAgIH07CiAgICB2YXIgbiA9ICJcbiI7CiAgICB2YXIgd2FybmVkID0gewogICAgICBpbnNlcnRMZWZ0OiBmYWxzZSwKICAgICAgaW5zZXJ0UmlnaHQ6IGZhbHNlLAogICAgICBzdG9yZU5hbWU6IGZhbHNlCiAgICB9OwogICAgdmFyIE1hZ2ljU3RyaW5nID0gY2xhc3MgX01hZ2ljU3RyaW5nIHsKICAgICAgY29uc3RydWN0b3Ioc3RyaW5nLCBvcHRpb25zID0ge30pIHsKICAgICAgICBjb25zdCBjaHVuayA9IG5ldyBDaHVuaygwLCBzdHJpbmcubGVuZ3RoLCBzdHJpbmcpOwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMsIHsKICAgICAgICAgIG9yaWdpbmFsOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogc3RyaW5nIH0sCiAgICAgICAgICBvdXRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBpbnRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBmaXJzdENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGxhc3RDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBsYXN0U2VhcmNoZWRDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBieVN0YXJ0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGJ5RW5kOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGZpbGVuYW1lOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5maWxlbmFtZSB9LAogICAgICAgICAgaW5kZW50RXhjbHVzaW9uUmFuZ2VzOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pbmRlbnRFeGNsdXNpb25SYW5nZXMgfSwKICAgICAgICAgIHNvdXJjZW1hcExvY2F0aW9uczogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IG5ldyBCaXRTZXQoKSB9LAogICAgICAgICAgc3RvcmVkTmFtZXM6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgaW5kZW50U3RyOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogdm9pZCAwIH0sCiAgICAgICAgICBpZ25vcmVMaXN0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pZ25vcmVMaXN0IH0sCiAgICAgICAgICBvZmZzZXQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLm9mZnNldCB8fCAwIH0KICAgICAgICB9KTsKICAgICAgICB0aGlzLmJ5U3RhcnRbMF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5RW5kW3N0cmluZy5sZW5ndGhdID0gY2h1bms7CiAgICAgIH0KICAgICAgYWRkU291cmNlbWFwTG9jYXRpb24oY2hhcikgewogICAgICAgIHRoaXMuc291cmNlbWFwTG9jYXRpb25zLmFkZChjaGFyKTsKICAgICAgfQogICAgICBhcHBlbmQoY29udGVudCkgewogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoIm91dHJvIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kTGVmdChjb250ZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5pbnRybyArPSBjb250ZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2xvbmVkID0gbmV3IF9NYWdpY1N0cmluZyh0aGlzLm9yaWdpbmFsLCB7IGZpbGVuYW1lOiB0aGlzLmZpbGVuYW1lLCBvZmZzZXQ6IHRoaXMub2Zmc2V0IH0pOwogICAgICAgIGxldCBvcmlnaW5hbENodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGxldCBjbG9uZWRDaHVuayA9IGNsb25lZC5maXJzdENodW5rID0gY2xvbmVkLmxhc3RTZWFyY2hlZENodW5rID0gb3JpZ2luYWxDaHVuay5jbG9uZSgpOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENodW5rKSB7CiAgICAgICAgICBjbG9uZWQuYnlTdGFydFtjbG9uZWRDaHVuay5zdGFydF0gPSBjbG9uZWRDaHVuazsKICAgICAgICAgIGNsb25lZC5ieUVuZFtjbG9uZWRDaHVuay5lbmRdID0gY2xvbmVkQ2h1bms7CiAgICAgICAgICBjb25zdCBuZXh0T3JpZ2luYWxDaHVuayA9IG9yaWdpbmFsQ2h1bmsubmV4dDsKICAgICAgICAgIGNvbnN0IG5leHRDbG9uZWRDaHVuayA9IG5leHRPcmlnaW5hbENodW5rICYmIG5leHRPcmlnaW5hbENodW5rLmNsb25lKCk7CiAgICAgICAgICBpZiAobmV4dENsb25lZENodW5rKSB7CiAgICAgICAgICAgIGNsb25lZENodW5rLm5leHQgPSBuZXh0Q2xvbmVkQ2h1bms7CiAgICAgICAgICAgIG5leHRDbG9uZWRDaHVuay5wcmV2aW91cyA9IGNsb25lZENodW5rOwogICAgICAgICAgICBjbG9uZWRDaHVuayA9IG5leHRDbG9uZWRDaHVuazsKICAgICAgICAgIH0KICAgICAgICAgIG9yaWdpbmFsQ2h1bmsgPSBuZXh0T3JpZ2luYWxDaHVuazsKICAgICAgICB9CiAgICAgICAgY2xvbmVkLmxhc3RDaHVuayA9IGNsb25lZENodW5rOwogICAgICAgIGlmICh0aGlzLmluZGVudEV4Y2x1c2lvblJhbmdlcykgewogICAgICAgICAgY2xvbmVkLmluZGVudEV4Y2x1c2lvblJhbmdlcyA9IHRoaXMuaW5kZW50RXhjbHVzaW9uUmFuZ2VzLnNsaWNlKCk7CiAgICAgICAgfQogICAgICAgIGNsb25lZC5zb3VyY2VtYXBMb2NhdGlvbnMgPSBuZXcgQml0U2V0KHRoaXMuc291cmNlbWFwTG9jYXRpb25zKTsKICAgICAgICBjbG9uZWQuaW50cm8gPSB0aGlzLmludHJvOwogICAgICAgIGNsb25lZC5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgcmV0dXJuIGNsb25lZDsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gMDsKICAgICAgICBjb25zdCBuYW1lcyA9IE9iamVjdC5rZXlzKHRoaXMuc3RvcmVkTmFtZXMpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gbmV3IE1hcHBpbmdzKG9wdGlvbnMuaGlyZXMpOwogICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IodGhpcy5vcmlnaW5hbCk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgIGNvbnN0IGxvYyA9IGxvY2F0ZShjaHVuay5zdGFydCk7CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLmludHJvKTsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgbWFwcGluZ3MuYWRkRWRpdCgKICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICBjaHVuay5jb250ZW50LAogICAgICAgICAgICAgIGxvYywKICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgdGhpcy5vcmlnaW5hbCwgbG9jLCB0aGlzLnNvdXJjZW1hcExvY2F0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgZmlsZTogb3B0aW9ucy5maWxlID8gb3B0aW9ucy5maWxlLnNwbGl0KC9bL1xcXS8pLnBvcCgpIDogdm9pZCAwLAogICAgICAgICAgc291cmNlczogWwogICAgICAgICAgICBvcHRpb25zLnNvdXJjZSA/IGdldFJlbGF0aXZlUGF0aChvcHRpb25zLmZpbGUgfHwgIiIsIG9wdGlvbnMuc291cmNlKSA6IG9wdGlvbnMuZmlsZSB8fCAiIgogICAgICAgICAgXSwKICAgICAgICAgIHNvdXJjZXNDb250ZW50OiBvcHRpb25zLmluY2x1ZGVDb250ZW50ID8gW3RoaXMub3JpZ2luYWxdIDogdm9pZCAwLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdDogdGhpcy5pZ25vcmVMaXN0ID8gW3NvdXJjZUluZGV4XSA6IHZvaWQgMAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBfZW5zdXJlaW5kZW50U3RyKCkgewogICAgICAgIGlmICh0aGlzLmluZGVudFN0ciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLmluZGVudFN0ciA9IGd1ZXNzSW5kZW50KHRoaXMub3JpZ2luYWwpOwogICAgICAgIH0KICAgICAgfQogICAgICBfZ2V0UmF3SW5kZW50U3RyaW5nKCkgewogICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgIHJldHVybiB0aGlzLmluZGVudFN0cjsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgdGhpcy5fZW5zdXJlaW5kZW50U3RyKCk7CiAgICAgICAgcmV0dXJuIHRoaXMuaW5kZW50U3RyID09PSBudWxsID8gIgkiIDogdGhpcy5pbmRlbnRTdHI7CiAgICAgIH0KICAgICAgaW5kZW50KGluZGVudFN0ciwgb3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhdHRlcm4gPSAvXlteXHJcbl0vZ207CiAgICAgICAgaWYgKGlzT2JqZWN0MihpbmRlbnRTdHIpKSB7CiAgICAgICAgICBvcHRpb25zID0gaW5kZW50U3RyOwogICAgICAgICAgaW5kZW50U3RyID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSB2b2lkIDApIHsKICAgICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgICAgaW5kZW50U3RyID0gdGhpcy5pbmRlbnRTdHIgfHwgIgkiOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgY29uc3QgaXNFeGNsdWRlZCA9IHt9OwogICAgICAgIGlmIChvcHRpb25zLmV4Y2x1ZGUpIHsKICAgICAgICAgIGNvbnN0IGV4Y2x1c2lvbnMgPSB0eXBlb2Ygb3B0aW9ucy5leGNsdWRlWzBdID09PSAibnVtYmVyIiA/IFtvcHRpb25zLmV4Y2x1ZGVdIDogb3B0aW9ucy5leGNsdWRlOwogICAgICAgICAgZXhjbHVzaW9ucy5mb3JFYWNoKChleGNsdXNpb24pID0+IHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IGV4Y2x1c2lvblswXTsgaSA8IGV4Y2x1c2lvblsxXTsgaSArPSAxKSB7CiAgICAgICAgICAgICAgaXNFeGNsdWRlZFtpXSA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBsZXQgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IG9wdGlvbnMuaW5kZW50U3RhcnQgIT09IGZhbHNlOwogICAgICAgIGNvbnN0IHJlcGxhY2VyID0gKG1hdGNoKSA9PiB7CiAgICAgICAgICBpZiAoc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgcmV0dXJuIGAke2luZGVudFN0cn0ke21hdGNofWA7CiAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gdHJ1ZTsKICAgICAgICAgIHJldHVybiBtYXRjaDsKICAgICAgICB9OwogICAgICAgIHRoaXMuaW50cm8gPSB0aGlzLmludHJvLnJlcGxhY2UocGF0dGVybiwgcmVwbGFjZXIpOwogICAgICAgIGxldCBjaGFySW5kZXggPSAwOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgaWYgKCFpc0V4Y2x1ZGVkW2NoYXJJbmRleF0pIHsKICAgICAgICAgICAgICBjaHVuay5jb250ZW50ID0gY2h1bmsuY29udGVudC5yZXBsYWNlKHBhdHRlcm4sIHJlcGxhY2VyKTsKICAgICAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjaGFySW5kZXggPSBjaHVuay5zdGFydDsKICAgICAgICAgICAgd2hpbGUgKGNoYXJJbmRleCA8IGVuZCkgewogICAgICAgICAgICAgIGlmICghaXNFeGNsdWRlZFtjaGFySW5kZXhdKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjaGFyID0gdGhpcy5vcmlnaW5hbFtjaGFySW5kZXhdOwogICAgICAgICAgICAgICAgaWYgKGNoYXIgPT09ICJcbiIpIHsKICAgICAgICAgICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IHRydWU7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNoYXIgIT09ICJcciIgJiYgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgewogICAgICAgICAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgIGlmIChjaGFySW5kZXggPT09IGNodW5rLnN0YXJ0KSB7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3BsaXRDaHVuayhjaHVuaywgY2hhckluZGV4KTsKICAgICAgICAgICAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY2hhckluZGV4ICs9IDE7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGNoYXJJbmRleCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShwYXR0ZXJuLCByZXBsYWNlcik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaW5zZXJ0KCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgcHJlcGVuZFJpZ2h0KC4uLikgb3IgYXBwZW5kTGVmdCguLi4pIgogICAgICAgICk7CiAgICAgIH0KICAgICAgaW5zZXJ0TGVmdChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydExlZnQpIHsKICAgICAgICAgIGNvbnNvbGUud2FybigKICAgICAgICAgICAgIm1hZ2ljU3RyaW5nLmluc2VydExlZnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgbWFnaWNTdHJpbmcuYXBwZW5kTGVmdCguLi4pIGluc3RlYWQiCiAgICAgICAgICApOwogICAgICAgICAgd2FybmVkLmluc2VydExlZnQgPSB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KTsKICAgICAgfQogICAgICBpbnNlcnRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydFJpZ2h0KSB7CiAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnRSaWdodCguLi4pIGlzIGRlcHJlY2F0ZWQuIFVzZSBtYWdpY1N0cmluZy5wcmVwZW5kUmlnaHQoLi4uKSBpbnN0ZWFkIgogICAgICAgICAgKTsKICAgICAgICAgIHdhcm5lZC5pbnNlcnRSaWdodCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLnByZXBlbmRSaWdodChpbmRleCwgY29udGVudCk7CiAgICAgIH0KICAgICAgbW92ZShzdGFydCwgZW5kLCBpbmRleCkgewogICAgICAgIHN0YXJ0ID0gc3RhcnQgKyB0aGlzLm9mZnNldDsKICAgICAgICBlbmQgPSBlbmQgKyB0aGlzLm9mZnNldDsKICAgICAgICBpbmRleCA9IGluZGV4ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKGluZGV4ID49IHN0YXJ0ICYmIGluZGV4IDw9IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbW92ZSBhIHNlbGVjdGlvbiBpbnNpZGUgaXRzZWxmIik7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgdGhpcy5fc3BsaXQoaW5kZXgpOwogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGNvbnN0IG9sZExlZnQgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICBjb25zdCBvbGRSaWdodCA9IGxhc3QubmV4dDsKICAgICAgICBjb25zdCBuZXdSaWdodCA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKCFuZXdSaWdodCAmJiBsYXN0ID09PSB0aGlzLmxhc3RDaHVuaykgcmV0dXJuIHRoaXM7CiAgICAgICAgY29uc3QgbmV3TGVmdCA9IG5ld1JpZ2h0ID8gbmV3UmlnaHQucHJldmlvdXMgOiB0aGlzLmxhc3RDaHVuazsKICAgICAgICBpZiAob2xkTGVmdCkgb2xkTGVmdC5uZXh0ID0gb2xkUmlnaHQ7CiAgICAgICAgaWYgKG9sZFJpZ2h0KSBvbGRSaWdodC5wcmV2aW91cyA9IG9sZExlZnQ7CiAgICAgICAgaWYgKG5ld0xlZnQpIG5ld0xlZnQubmV4dCA9IGZpcnN0OwogICAgICAgIGlmIChuZXdSaWdodCkgbmV3UmlnaHQucHJldmlvdXMgPSBsYXN0OwogICAgICAgIGlmICghZmlyc3QucHJldmlvdXMpIHRoaXMuZmlyc3RDaHVuayA9IGxhc3QubmV4dDsKICAgICAgICBpZiAoIWxhc3QubmV4dCkgewogICAgICAgICAgdGhpcy5sYXN0Q2h1bmsgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICAgIHRoaXMubGFzdENodW5rLm5leHQgPSBudWxsOwogICAgICAgIH0KICAgICAgICBmaXJzdC5wcmV2aW91cyA9IG5ld0xlZnQ7CiAgICAgICAgbGFzdC5uZXh0ID0gbmV3UmlnaHQgfHwgbnVsbDsKICAgICAgICBpZiAoIW5ld0xlZnQpIHRoaXMuZmlyc3RDaHVuayA9IGZpcnN0OwogICAgICAgIGlmICghbmV3UmlnaHQpIHRoaXMubGFzdENodW5rID0gbGFzdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvdmVyd3JpdGUoc3RhcnQsIGVuZCwgY29udGVudCwgb3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZShzdGFydCwgZW5kLCBjb250ZW50LCB7IC4uLm9wdGlvbnMsIG92ZXJ3cml0ZTogIW9wdGlvbnMuY29udGVudE9ubHkgfSk7CiAgICAgIH0KICAgICAgdXBkYXRlKHN0YXJ0LCBlbmQsIGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigicmVwbGFjZW1lbnQgY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiQ2Fubm90IG92ZXJ3cml0ZSBhIHplcm8tbGVuZ3RoIHJhbmdlIFx1MjAxMyB1c2UgYXBwZW5kTGVmdCBvciBwcmVwZW5kUmlnaHQgaW5zdGVhZCIKICAgICAgICAgICk7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgaWYgKG9wdGlvbnMgPT09IHRydWUpIHsKICAgICAgICAgIGlmICghd2FybmVkLnN0b3JlTmFtZSkgewogICAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICAgIlRoZSBmaW5hbCBhcmd1bWVudCB0byBtYWdpY1N0cmluZy5vdmVyd3JpdGUoLi4uKSBzaG91bGQgYmUgYW4gb3B0aW9ucyBvYmplY3QuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcmljaC1oYXJyaXMvbWFnaWMtc3RyaW5nIgogICAgICAgICAgICApOwogICAgICAgICAgICB3YXJuZWQuc3RvcmVOYW1lID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wdGlvbnMgPSB7IHN0b3JlTmFtZTogdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBzdG9yZU5hbWUgPSBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zLnN0b3JlTmFtZSA6IGZhbHNlOwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZSA9IG9wdGlvbnMgIT09IHZvaWQgMCA/IG9wdGlvbnMub3ZlcndyaXRlIDogZmFsc2U7CiAgICAgICAgaWYgKHN0b3JlTmFtZSkgewogICAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMuc3RvcmVkTmFtZXMsIG9yaWdpbmFsLCB7CiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgICAgICB2YWx1ZTogdHJ1ZSwKICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGlmIChmaXJzdCkgewogICAgICAgICAgbGV0IGNodW5rID0gZmlyc3Q7CiAgICAgICAgICB3aGlsZSAoY2h1bmsgIT09IGxhc3QpIHsKICAgICAgICAgICAgaWYgKGNodW5rLm5leHQgIT09IHRoaXMuYnlTdGFydFtjaHVuay5lbmRdKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgb3ZlcndyaXRlIGFjcm9zcyBhIHNwbGl0IHBvaW50Iik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICBjaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmaXJzdC5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSwgIW92ZXJ3cml0ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gbmV3IENodW5rKHN0YXJ0LCBlbmQsICIiKS5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSk7CiAgICAgICAgICBsYXN0Lm5leHQgPSBuZXdDaHVuazsKICAgICAgICAgIG5ld0NodW5rLnByZXZpb3VzID0gbGFzdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZChjb250ZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigib3V0cm8gY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5pbnRybyA9IGNvbnRlbnQgKyB0aGlzLmludHJvOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsucHJlcGVuZExlZnQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5wcmVwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcmVtb3ZlKHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5pbnRybyA9ICIiOwogICAgICAgICAgY2h1bmsub3V0cm8gPSAiIjsKICAgICAgICAgIGNodW5rLmVkaXQoIiIpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlc2V0KHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5yZXNldCgpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGxhc3RDaGFyKCkgewogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRoaXMub3V0cm9bdGhpcy5vdXRyby5sZW5ndGggLSAxXTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsub3V0cm9bY2h1bmsub3V0cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHJldHVybiBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsuaW50cm9bY2h1bmsuaW50cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5wcmV2aW91cyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdGhpcy5pbnRyb1t0aGlzLmludHJvLmxlbmd0aCAtIDFdOwogICAgICAgIHJldHVybiAiIjsKICAgICAgfQogICAgICBsYXN0TGluZSgpIHsKICAgICAgICBsZXQgbGluZUluZGV4ID0gdGhpcy5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIHRoaXMub3V0cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpOwogICAgICAgIGxldCBsaW5lU3RyID0gdGhpcy5vdXRybzsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiBjaHVuay5vdXRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgICAgICBsaW5lU3RyID0gY2h1bmsub3V0cm8gKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5jb250ZW50Lmxhc3RJbmRleE9mKG4pOwogICAgICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIGNodW5rLmNvbnRlbnQuc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmNvbnRlbnQgKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsuaW50cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gY2h1bmsuaW50cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmludHJvICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLnByZXZpb3VzKTsKICAgICAgICBsaW5lSW5kZXggPSB0aGlzLmludHJvLmxhc3RJbmRleE9mKG4pOwogICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gdGhpcy5pbnRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgbGluZVN0cjsKICAgICAgfQogICAgICBzbGljZShzdGFydCA9IDAsIGVuZCA9IHRoaXMub3JpZ2luYWwubGVuZ3RoIC0gdGhpcy5vZmZzZXQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgd2hpbGUgKGNodW5rICYmIChjaHVuay5zdGFydCA+IHN0YXJ0IHx8IGNodW5rLmVuZCA8PSBzdGFydCkpIHsKICAgICAgICAgIGlmIChjaHVuay5zdGFydCA8IGVuZCAmJiBjaHVuay5lbmQgPj0gZW5kKSB7CiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgICB9CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIGlmIChjaHVuayAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuc3RhcnQgIT09IHN0YXJ0KQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgdXNlIHJlcGxhY2VkIGNoYXJhY3RlciAke3N0YXJ0fSBhcyBzbGljZSBzdGFydCBhbmNob3IuYCk7CiAgICAgICAgY29uc3Qgc3RhcnRDaHVuayA9IGNodW5rOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgaWYgKGNodW5rLmludHJvICYmIChzdGFydENodW5rICE9PSBjaHVuayB8fCBjaHVuay5zdGFydCA9PT0gc3RhcnQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5pbnRybzsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGNvbnRhaW5zRW5kID0gY2h1bmsuc3RhcnQgPCBlbmQgJiYgY2h1bmsuZW5kID49IGVuZDsKICAgICAgICAgIGlmIChjb250YWluc0VuZCAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuZW5kICE9PSBlbmQpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVzZSByZXBsYWNlZCBjaGFyYWN0ZXIgJHtlbmR9IGFzIHNsaWNlIGVuZCBhbmNob3IuYCk7CiAgICAgICAgICBjb25zdCBzbGljZVN0YXJ0ID0gc3RhcnRDaHVuayA9PT0gY2h1bmsgPyBzdGFydCAtIGNodW5rLnN0YXJ0IDogMDsKICAgICAgICAgIGNvbnN0IHNsaWNlRW5kID0gY29udGFpbnNFbmQgPyBjaHVuay5jb250ZW50Lmxlbmd0aCArIGVuZCAtIGNodW5rLmVuZCA6IGNodW5rLmNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgcmVzdWx0ICs9IGNodW5rLmNvbnRlbnQuc2xpY2Uoc2xpY2VTdGFydCwgc2xpY2VFbmQpOwogICAgICAgICAgaWYgKGNodW5rLm91dHJvICYmICghY29udGFpbnNFbmQgfHwgY2h1bmsuZW5kID09PSBlbmQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5vdXRybzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjb250YWluc0VuZCkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICAvLyBUT0RPIGRlcHJlY2F0ZSB0aGlzPyBub3QgcmVhbGx5IHZlcnkgdXNlZnVsCiAgICAgIHNuaXAoc3RhcnQsIGVuZCkgewogICAgICAgIGNvbnN0IGNsb25lID0gdGhpcy5jbG9uZSgpOwogICAgICAgIGNsb25lLnJlbW92ZSgwLCBzdGFydCk7CiAgICAgICAgY2xvbmUucmVtb3ZlKGVuZCwgY2xvbmUub3JpZ2luYWwubGVuZ3RoKTsKICAgICAgICByZXR1cm4gY2xvbmU7CiAgICAgIH0KICAgICAgX3NwbGl0KGluZGV4KSB7CiAgICAgICAgaWYgKHRoaXMuYnlTdGFydFtpbmRleF0gfHwgdGhpcy5ieUVuZFtpbmRleF0pIHJldHVybjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RTZWFyY2hlZENodW5rOwogICAgICAgIGNvbnN0IHNlYXJjaEZvcndhcmQgPSBpbmRleCA+IGNodW5rLmVuZDsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGlmIChjaHVuay5jb250YWlucyhpbmRleCkpIHJldHVybiB0aGlzLl9zcGxpdENodW5rKGNodW5rLCBpbmRleCk7CiAgICAgICAgICBjaHVuayA9IHNlYXJjaEZvcndhcmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IHRoaXMuYnlFbmRbY2h1bmsuc3RhcnRdOwogICAgICAgIH0KICAgICAgfQogICAgICBfc3BsaXRDaHVuayhjaHVuaywgaW5kZXgpIHsKICAgICAgICBpZiAoY2h1bmsuZWRpdGVkICYmIGNodW5rLmNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBsb2MgPSBnZXRMb2NhdG9yKHRoaXMub3JpZ2luYWwpKGluZGV4KTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbm5vdCBzcGxpdCBhIGNodW5rIHRoYXQgaGFzIGFscmVhZHkgYmVlbiBlZGl0ZWQgKCR7bG9jLmxpbmV9OiR7bG9jLmNvbHVtbn0gXHUyMDEzICIke2NodW5rLm9yaWdpbmFsfSIpYAogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3Q2h1bmsgPSBjaHVuay5zcGxpdChpbmRleCk7CiAgICAgICAgdGhpcy5ieUVuZFtpbmRleF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5U3RhcnRbaW5kZXhdID0gbmV3Q2h1bms7CiAgICAgICAgdGhpcy5ieUVuZFtuZXdDaHVuay5lbmRdID0gbmV3Q2h1bms7CiAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBuZXdDaHVuazsKICAgICAgICB0aGlzLmxhc3RTZWFyY2hlZENodW5rID0gY2h1bms7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgbGV0IHN0cjIgPSB0aGlzLmludHJvOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIHN0cjIgKz0gY2h1bmsudG9TdHJpbmcoKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHN0cjIgKyB0aGlzLm91dHJvOwogICAgICB9CiAgICAgIGlzRW1wdHkoKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGggJiYgY2h1bmsuaW50cm8udHJpbSgpIHx8IGNodW5rLmNvbnRlbnQubGVuZ3RoICYmIGNodW5rLmNvbnRlbnQudHJpbSgpIHx8IGNodW5rLm91dHJvLmxlbmd0aCAmJiBjaHVuay5vdXRyby50cmltKCkpCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLm5leHQpOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIGxlbmd0aCgpIHsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgbGV0IGxlbmd0aCA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgbGVuZ3RoICs9IGNodW5rLmludHJvLmxlbmd0aCArIGNodW5rLmNvbnRlbnQubGVuZ3RoICsgY2h1bmsub3V0cm8ubGVuZ3RoOwogICAgICAgIH0gd2hpbGUgKGNodW5rID0gY2h1bmsubmV4dCk7CiAgICAgICAgcmV0dXJuIGxlbmd0aDsKICAgICAgfQogICAgICB0cmltTGluZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbSgiW1xcclxcbl0iKTsKICAgICAgfQogICAgICB0cmltKGNoYXJUeXBlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbVN0YXJ0KGNoYXJUeXBlKS50cmltRW5kKGNoYXJUeXBlKTsKICAgICAgfQogICAgICB0cmltRW5kQWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1FbmQocngpOwogICAgICAgICAgaWYgKGNodW5rLmVuZCAhPT0gZW5kKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmxhc3RDaHVuayA9PT0gY2h1bmspIHsKICAgICAgICAgICAgICB0aGlzLmxhc3RDaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5lbmRdID0gY2h1bms7CiAgICAgICAgICAgIHRoaXMuYnlTdGFydFtjaHVuay5uZXh0LnN0YXJ0XSA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsubmV4dC5lbmRdID0gY2h1bmsubmV4dDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhYm9ydGVkKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfSB3aGlsZSAoY2h1bmspOwogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICB0cmltRW5kKGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltRW5kQWJvcnRlZChjaGFyVHlwZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1TdGFydChyeCk7CiAgICAgICAgICBpZiAoY2h1bmsuZW5kICE9PSBlbmQpIHsKICAgICAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICB0aGlzLmJ5RW5kW2NodW5rLmVuZF0gPSBjaHVuazsKICAgICAgICAgICAgdGhpcy5ieVN0YXJ0W2NodW5rLm5leHQuc3RhcnRdID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5uZXh0LmVuZF0gPSBjaHVuay5uZXh0OwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFib3J0ZWQpIHJldHVybiB0cnVlOwogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0gd2hpbGUgKGNodW5rKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltU3RhcnRBYm9ydGVkKGNoYXJUeXBlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBoYXNDaGFuZ2VkKCkgewogICAgICAgIHJldHVybiB0aGlzLm9yaWdpbmFsICE9PSB0aGlzLnRvU3RyaW5nKCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VSZWdleHAoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgZnVuY3Rpb24gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHN0cjIpIHsKICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudC5yZXBsYWNlKC9cJChcJHwmfFxkKykvZywgKF8sIGkpID0+IHsKICAgICAgICAgICAgICBpZiAoaSA9PT0gIiQiKSByZXR1cm4gIiQiOwogICAgICAgICAgICAgIGlmIChpID09PSAiJiIpIHJldHVybiBtYXRjaFswXTsKICAgICAgICAgICAgICBjb25zdCBudW0gPSAraTsKICAgICAgICAgICAgICBpZiAobnVtIDwgbWF0Y2gubGVuZ3RoKSByZXR1cm4gbWF0Y2hbK2ldOwogICAgICAgICAgICAgIHJldHVybiBgJCR7aX1gOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudCguLi5tYXRjaCwgbWF0Y2guaW5kZXgsIHN0cjIsIG1hdGNoLmdyb3Vwcyk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIG1hdGNoQWxsKHJlLCBzdHIyKSB7CiAgICAgICAgICBsZXQgbWF0Y2g7CiAgICAgICAgICBjb25zdCBtYXRjaGVzID0gW107CiAgICAgICAgICB3aGlsZSAobWF0Y2ggPSByZS5leGVjKHN0cjIpKSB7CiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWF0Y2hlczsKICAgICAgICB9CiAgICAgICAgaWYgKHNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1hdGNoQWxsKHNlYXJjaFZhbHVlLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHsKICAgICAgICAgICAgaWYgKG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudDIgPSBnZXRSZXBsYWNlbWVudChtYXRjaCwgdGhpcy5vcmlnaW5hbCk7CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50MiAhPT0gbWF0Y2hbMF0pIHsKICAgICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3JpZ2luYWwubWF0Y2goc2VhcmNoVmFsdWUpOwogICAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnQyID0gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHRoaXMub3JpZ2luYWwpOwogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQyICE9PSBtYXRjaFswXSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfcmVwbGFjZVN0cmluZyhzdHJpbmcsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgeyBvcmlnaW5hbCB9ID0gdGhpczsKICAgICAgICBjb25zdCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsKICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShpbmRleCwgaW5kZXggKyBzdHJpbmcubGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlcGxhY2Uoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBzZWFyY2hWYWx1ZSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlU3RyaW5nKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VBbGxTdHJpbmcoc3RyaW5nLCByZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IHsgb3JpZ2luYWwgfSA9IHRoaXM7CiAgICAgICAgY29uc3Qgc3RyaW5nTGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsgaW5kZXggIT09IC0xOyBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nLCBpbmRleCArIHN0cmluZ0xlbmd0aCkpIHsKICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gb3JpZ2luYWwuc2xpY2UoaW5kZXgsIGluZGV4ICsgc3RyaW5nTGVuZ3RoKTsKICAgICAgICAgIGlmIChwcmV2aW91cyAhPT0gcmVwbGFjZW1lbnQpIHRoaXMub3ZlcndyaXRlKGluZGV4LCBpbmRleCArIHN0cmluZ0xlbmd0aCwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGlmICh0eXBlb2Ygc2VhcmNoVmFsdWUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZUFsbFN0cmluZyhzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICBpZiAoIXNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIk1hZ2ljU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIGNhbGxlZCB3aXRoIGEgbm9uLWdsb2JhbCBSZWdFeHAgYXJndW1lbnQiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZVJlZ2V4cChzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICB9CiAgICB9OwogICAgdmFyIGhhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogICAgdmFyIEJ1bmRsZSA9IGNsYXNzIF9CdW5kbGUgewogICAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHsKICAgICAgICB0aGlzLmludHJvID0gb3B0aW9ucy5pbnRybyB8fCAiIjsKICAgICAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yICE9PSB2b2lkIDAgPyBvcHRpb25zLnNlcGFyYXRvciA6ICJcbiI7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUgPSB7fTsKICAgICAgfQogICAgICBhZGRTb3VyY2Uoc291cmNlKSB7CiAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIE1hZ2ljU3RyaW5nKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgICBjb250ZW50OiBzb3VyY2UsCiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIHNlcGFyYXRvcjogdGhpcy5zZXBhcmF0b3IKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzT2JqZWN0Mihzb3VyY2UpIHx8ICFzb3VyY2UuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiYnVuZGxlLmFkZFNvdXJjZSgpIHRha2VzIGFuIG9iamVjdCB3aXRoIGEgYGNvbnRlbnRgIHByb3BlcnR5LCB3aGljaCBzaG91bGQgYmUgYW4gaW5zdGFuY2Ugb2YgTWFnaWNTdHJpbmcsIGFuZCBhbiBvcHRpb25hbCBgZmlsZW5hbWVgIgogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgWyJmaWxlbmFtZSIsICJpZ25vcmVMaXN0IiwgImluZGVudEV4Y2x1c2lvblJhbmdlcyIsICJzZXBhcmF0b3IiXS5mb3JFYWNoKChvcHRpb24pID0+IHsKICAgICAgICAgIGlmICghaGFzT3duUHJvcC5jYWxsKHNvdXJjZSwgb3B0aW9uKSkgc291cmNlW29wdGlvbl0gPSBzb3VyY2UuY29udGVudFtvcHRpb25dOwogICAgICAgIH0pOwogICAgICAgIGlmIChzb3VyY2Uuc2VwYXJhdG9yID09PSB2b2lkIDApIHsKICAgICAgICAgIHNvdXJjZS5zZXBhcmF0b3IgPSB0aGlzLnNlcGFyYXRvcjsKICAgICAgICB9CiAgICAgICAgaWYgKHNvdXJjZS5maWxlbmFtZSkgewogICAgICAgICAgaWYgKCFoYXNPd25Qcm9wLmNhbGwodGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUsIHNvdXJjZS5maWxlbmFtZSkpIHsKICAgICAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA9IHRoaXMudW5pcXVlU291cmNlcy5sZW5ndGg7CiAgICAgICAgICAgIHRoaXMudW5pcXVlU291cmNlcy5wdXNoKHsgZmlsZW5hbWU6IHNvdXJjZS5maWxlbmFtZSwgY29udGVudDogc291cmNlLmNvbnRlbnQub3JpZ2luYWwgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCB1bmlxdWVTb3VyY2UgPSB0aGlzLnVuaXF1ZVNvdXJjZXNbdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXV07CiAgICAgICAgICAgIGlmIChzb3VyY2UuY29udGVudC5vcmlnaW5hbCAhPT0gdW5pcXVlU291cmNlLmNvbnRlbnQpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYElsbGVnYWwgc291cmNlOiBzYW1lIGZpbGVuYW1lICgke3NvdXJjZS5maWxlbmFtZX0pLCBkaWZmZXJlbnQgY29udGVudHNgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLnNvdXJjZXMucHVzaChzb3VyY2UpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZChzdHIyLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgY29udGVudDogbmV3IE1hZ2ljU3RyaW5nKHN0cjIpLAogICAgICAgICAgc2VwYXJhdG9yOiBvcHRpb25zICYmIG9wdGlvbnMuc2VwYXJhdG9yIHx8ICIiCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgYnVuZGxlID0gbmV3IF9CdW5kbGUoewogICAgICAgICAgaW50cm86IHRoaXMuaW50cm8sCiAgICAgICAgICBzZXBhcmF0b3I6IHRoaXMuc2VwYXJhdG9yCiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgYnVuZGxlLmFkZFNvdXJjZSh7CiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIGNvbnRlbnQ6IHNvdXJjZS5jb250ZW50LmNsb25lKCksCiAgICAgICAgICAgIHNlcGFyYXRvcjogc291cmNlLnNlcGFyYXRvcgogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGJ1bmRsZTsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucyA9IHt9KSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBbXTsKICAgICAgICBsZXQgeF9nb29nbGVfaWdub3JlTGlzdCA9IHZvaWQgMDsKICAgICAgICB0aGlzLnNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7CiAgICAgICAgICBPYmplY3Qua2V5cyhzb3VyY2UuY29udGVudC5zdG9yZWROYW1lcykuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAoIX5uYW1lcy5pbmRleE9mKG5hbWUpKSBuYW1lcy5wdXNoKG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZHZhbmNlKHRoaXMuc2VwYXJhdG9yKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gc291cmNlLmZpbGVuYW1lID8gdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA6IC0xOwogICAgICAgICAgY29uc3QgbWFnaWNTdHJpbmcgPSBzb3VyY2UuY29udGVudDsKICAgICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IobWFnaWNTdHJpbmcub3JpZ2luYWwpOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLmludHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcuaW50cm8pOwogICAgICAgICAgfQogICAgICAgICAgbWFnaWNTdHJpbmcuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5pbnRybyk7CiAgICAgICAgICAgIGlmIChzb3VyY2UuZmlsZW5hbWUpIHsKICAgICAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmsuY29udGVudCwKICAgICAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmssCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLm9yaWdpbmFsLAogICAgICAgICAgICAgICAgICBsb2MsCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLnNvdXJjZW1hcExvY2F0aW9ucwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5jb250ZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICAgIH0pOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLm91dHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcub3V0cm8pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZS5pZ25vcmVMaXN0ICYmIHNvdXJjZUluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBpZiAoeF9nb29nbGVfaWdub3JlTGlzdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdCA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHhfZ29vZ2xlX2lnbm9yZUxpc3QucHVzaChzb3VyY2VJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZpbGU6IG9wdGlvbnMuZmlsZSA/IG9wdGlvbnMuZmlsZS5zcGxpdCgvWy9cXF0vKS5wb3AoKSA6IHZvaWQgMCwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maWxlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSwgc291cmNlLmZpbGVuYW1lKSA6IHNvdXJjZS5maWxlbmFtZTsKICAgICAgICAgIH0pLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5pbmNsdWRlQ29udGVudCA/IHNvdXJjZS5jb250ZW50IDogbnVsbDsKICAgICAgICAgIH0pLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgY29uc3QgaW5kZW50U3RyaW5nQ291bnRzID0ge307CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgY29uc3QgaW5kZW50U3RyID0gc291cmNlLmNvbnRlbnQuX2dldFJhd0luZGVudFN0cmluZygpOwogICAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gbnVsbCkgcmV0dXJuOwogICAgICAgICAgaWYgKCFpbmRlbnRTdHJpbmdDb3VudHNbaW5kZW50U3RyXSkgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gPSAwOwogICAgICAgICAgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gKz0gMTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoaW5kZW50U3RyaW5nQ291bnRzKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICByZXR1cm4gaW5kZW50U3RyaW5nQ291bnRzW2FdIC0gaW5kZW50U3RyaW5nQ291bnRzW2JdOwogICAgICAgIH0pWzBdIHx8ICIJIjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyKSB7CiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICBpbmRlbnRTdHIgPSB0aGlzLmdldEluZGVudFN0cmluZygpOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgbGV0IHRyYWlsaW5nTmV3bGluZSA9ICF0aGlzLmludHJvIHx8IHRoaXMuaW50cm8uc2xpY2UoLTEpID09PSAiXG4iOwogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IGluZGVudFN0YXJ0ID0gdHJhaWxpbmdOZXdsaW5lIHx8IGkgPiAwICYmIC9ccj9cbiQvLnRlc3Qoc2VwYXJhdG9yKTsKICAgICAgICAgIHNvdXJjZS5jb250ZW50LmluZGVudChpbmRlbnRTdHIsIHsKICAgICAgICAgICAgZXhjbHVkZTogc291cmNlLmluZGVudEV4Y2x1c2lvblJhbmdlcywKICAgICAgICAgICAgaW5kZW50U3RhcnQKICAgICAgICAgICAgLy86IHRyYWlsaW5nTmV3bGluZSB8fCAvXHI/XG4kLy50ZXN0KCBzZXBhcmF0b3IgKSAgLy90cnVlLy8vXHI/XG4vLnRlc3QoIHNlcGFyYXRvciApCiAgICAgICAgICB9KTsKICAgICAgICAgIHRyYWlsaW5nTmV3bGluZSA9IHNvdXJjZS5jb250ZW50Lmxhc3RDaGFyKCkgPT09ICJcbiI7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBpbmRlbnRTdHIgKyB0aGlzLmludHJvLnJlcGxhY2UoL15bXlxuXS9nbSwgKG1hdGNoLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gaW5kZXggPiAwID8gaW5kZW50U3RyICsgbWF0Y2ggOiBtYXRjaDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kKHN0cjIpIHsKICAgICAgICB0aGlzLmludHJvID0gc3RyMiArIHRoaXMuaW50cm87CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuc291cmNlcy5tYXAoKHNvdXJjZSwgaSkgPT4gewogICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0gc291cmNlLnNlcGFyYXRvciAhPT0gdm9pZCAwID8gc291cmNlLnNlcGFyYXRvciA6IHRoaXMuc2VwYXJhdG9yOwogICAgICAgICAgY29uc3Qgc3RyMiA9IChpID4gMCA/IHNlcGFyYXRvciA6ICIiKSArIHNvdXJjZS5jb250ZW50LnRvU3RyaW5nKCk7CiAgICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgICB9KS5qb2luKCIiKTsKICAgICAgICByZXR1cm4gdGhpcy5pbnRybyArIGJvZHk7CiAgICAgIH0KICAgICAgaXNFbXB0eSgpIHsKICAgICAgICBpZiAodGhpcy5pbnRyby5sZW5ndGggJiYgdGhpcy5pbnRyby50cmltKCkpIHJldHVybiBmYWxzZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VzLnNvbWUoKHNvdXJjZSkgPT4gIXNvdXJjZS5jb250ZW50LmlzRW1wdHkoKSkpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBsZW5ndGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlcy5yZWR1Y2UoCiAgICAgICAgICAobGVuZ3RoLCBzb3VyY2UpID0+IGxlbmd0aCArIHNvdXJjZS5jb250ZW50Lmxlbmd0aCgpLAogICAgICAgICAgdGhpcy5pbnRyby5sZW5ndGgKICAgICAgICApOwogICAgICB9CiAgICAgIHRyaW1MaW5lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltKCJbXFxyXFxuXSIpOwogICAgICB9CiAgICAgIHRyaW0oY2hhclR5cGUpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltU3RhcnQoY2hhclR5cGUpLnRyaW1FbmQoY2hhclR5cGUpOwogICAgICB9CiAgICAgIHRyaW1TdGFydChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKCF0aGlzLmludHJvKSB7CiAgICAgICAgICBsZXQgc291cmNlOwogICAgICAgICAgbGV0IGkgPSAwOwogICAgICAgICAgZG8gewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLnNvdXJjZXNbaSsrXTsKICAgICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfSB3aGlsZSAoIXNvdXJjZS5jb250ZW50LnRyaW1TdGFydEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbUVuZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgbGV0IHNvdXJjZTsKICAgICAgICBsZXQgaSA9IHRoaXMuc291cmNlcy5sZW5ndGggLSAxOwogICAgICAgIGRvIHsKICAgICAgICAgIHNvdXJjZSA9IHRoaXMuc291cmNlc1tpLS1dOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICghc291cmNlLmNvbnRlbnQudHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgfTsKICAgIE1hZ2ljU3RyaW5nLkJ1bmRsZSA9IEJ1bmRsZTsKICAgIE1hZ2ljU3RyaW5nLlNvdXJjZU1hcCA9IFNvdXJjZU1hcDsKICAgIE1hZ2ljU3RyaW5nLmRlZmF1bHQgPSBNYWdpY1N0cmluZzsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IE1hZ2ljU3RyaW5nOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcwp2YXIgcmVxdWlyZV9yZWNvcmRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBleHBvcnRzMi5JbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBtYWdpY19zdHJpbmdfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX21hZ2ljX3N0cmluZ19janMoKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBJbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5kZXgsIG1pbiwgbWF4ID0gSW5maW5pdHkpIHsKICAgICAgICBzdXBlcihgSW5kZXggJHtpbmRleH0gb3V0c2lkZSBvZiByYW5nZSBbJHttaW59LCAke21heH1dLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uID0gSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uOwogICAgdmFyIFVwZGF0ZVJlY29yZGVyQmFzZSA9IGNsYXNzIF9VcGRhdGVSZWNvcmRlckJhc2UgewogICAgICBkYXRhOwogICAgICBib207CiAgICAgIF9wYXRoOwogICAgICBjb250ZW50OwogICAgICBjb25zdHJ1Y3RvcihkYXRhLCBwYXRoLCBlbmNvZGluZyA9ICJ1dGYtOCIsIGJvbSA9IGZhbHNlKSB7CiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTsKICAgICAgICB0aGlzLmJvbSA9IGJvbTsKICAgICAgICBsZXQgdGV4dDsKICAgICAgICB0cnkgewogICAgICAgICAgdGV4dCA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgeyBmYXRhbDogdHJ1ZSwgaWdub3JlQk9NOiBmYWxzZSB9KS5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyAke2VuY29kaW5nfSB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fcGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5jb250ZW50ID0gbmV3IG1hZ2ljX3N0cmluZ18xLmRlZmF1bHQodGV4dCk7CiAgICAgIH0KICAgICAgc3RhdGljIGNyZWF0ZUZyb21GaWxlRW50cnkoZW50cnkpIHsKICAgICAgICBjb25zdCBjMCA9IGVudHJ5LmNvbnRlbnQuYnl0ZUxlbmd0aCA+IDAgJiYgZW50cnkuY29udGVudC5yZWFkVUludDgoMCk7CiAgICAgICAgY29uc3QgYzEgPSBlbnRyeS5jb250ZW50LmJ5dGVMZW5ndGggPiAxICYmIGVudHJ5LmNvbnRlbnQucmVhZFVJbnQ4KDEpOwogICAgICAgIGNvbnN0IGMyID0gZW50cnkuY29udGVudC5ieXRlTGVuZ3RoID4gMiAmJiBlbnRyeS5jb250ZW50LnJlYWRVSW50OCgyKTsKICAgICAgICBpZiAoYzAgPT0gMjM5ICYmIGMxID09IDE4NyAmJiBjMiA9PSAxOTEpIHsKICAgICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoLCAidXRmLTgiLCB0cnVlKTsKICAgICAgICB9IGVsc2UgaWYgKGMwID09PSAyNTUgJiYgYzEgPT0gMjU0KSB7CiAgICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCwgInV0Zi0xNmxlIiwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIGlmIChjMCA9PT0gMjU0ICYmIGMxID09IDI1NSkgewogICAgICAgICAgcmV0dXJuIG5ldyBfVXBkYXRlUmVjb3JkZXJCYXNlKGVudHJ5LmNvbnRlbnQsIGVudHJ5LnBhdGgsICJ1dGYtMTZiZSIsIHRydWUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgX2Fzc2VydEluZGV4KGluZGV4KSB7CiAgICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+IHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpIHsKICAgICAgICAgIHRocm93IG5ldyBJbmRleE91dE9mQm91bmRFeGNlcHRpb24oaW5kZXgsIDAsIHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpOwogICAgICAgIH0KICAgICAgfQogICAgICAvLyBUaGVzZSBqdXN0IHJlY29yZCBjaGFuZ2VzLgogICAgICBpbnNlcnRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50LnRvU3RyaW5nKCkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRSaWdodChpbmRleCwgY29udGVudC50b1N0cmluZygpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZW1vdmUoaW5kZXgsIGxlbmd0aCkgewogICAgICAgIHRoaXMuX2Fzc2VydEluZGV4KGluZGV4KTsKICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlKGluZGV4LCBpbmRleCArIGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwbHkoY29udGVudCkgewogICAgICAgIGlmICghY29udGVudC5lcXVhbHModGhpcy5kYXRhKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHRoaXMucGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc3VsdCA9IEJ1ZmZlci5mcm9tKCh0aGlzLmJvbSA/ICJcdUZFRkYiIDogIiIpICsgdGhpcy5jb250ZW50LnRvU3RyaW5nKCksICJ1dGYtOCIpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBVcGRhdGVSZWNvcmRlckJhc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NvcGVkVHJlZSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGRlbGVnYXRlXzEgPSByZXF1aXJlX2RlbGVnYXRlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBTY29wZWRGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9iYXNlOwogICAgICBzY29wZTsKICAgICAgY29uc3RydWN0b3IoX2Jhc2UsIHNjb3BlKSB7CiAgICAgICAgdGhpcy5fYmFzZSA9IF9iYXNlOwogICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuc2NvcGUsIHRoaXMuX2Jhc2UucGF0aCkpOwogICAgICB9CiAgICAgIGdldCBjb250ZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmNvbnRlbnQ7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkRGlyRW50cnkgPSBjbGFzcyBfU2NvcGVkRGlyRW50cnkgewogICAgICBfYmFzZTsKICAgICAgc2NvcGU7CiAgICAgIGNvbnN0cnVjdG9yKF9iYXNlLCBzY29wZSkgewogICAgICAgIHRoaXMuX2Jhc2UgPSBfYmFzZTsKICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7CiAgICAgIH0KICAgICAgZ2V0IHBhcmVudCgpIHsKICAgICAgICBpZiAoIXRoaXMuX2Jhc2UucGFyZW50IHx8IHRoaXMuX2Jhc2UucGF0aCA9PSB0aGlzLnNjb3BlKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBfU2NvcGVkRGlyRW50cnkodGhpcy5fYmFzZS5wYXJlbnQsIHRoaXMuc2NvcGUpOwogICAgICB9CiAgICAgIGdldCBwYXRoKCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgdGhpcy5fYmFzZS5wYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmRpcnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZGlyczsKICAgICAgfQogICAgICBnZXQgc3ViZmlsZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZmlsZXM7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZGlyKG5hbWUpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgX1Njb3BlZERpckVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZmlsZShuYW1lKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IFNjb3BlZEZpbGVFbnRyeShlbnRyeSwgdGhpcy5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnZpc2l0KChwYXRoLCBlbnRyeSkgPT4gewogICAgICAgICAgdmlzaXRvcigoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgcGF0aCkpLCBlbnRyeSAmJiBuZXcgU2NvcGVkRmlsZUVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkVHJlZSA9IGNsYXNzIF9TY29wZWRUcmVlIHsKICAgICAgX2Jhc2U7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihfYmFzZSwgc2NvcGUpIHsKICAgICAgICB0aGlzLl9iYXNlID0gX2Jhc2U7CiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFNjb3BlID0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHNjb3BlKTsKICAgICAgICB0aGlzLl9yb290ID0gbmV3IFNjb3BlZERpckVudHJ5KHRoaXMuX2Jhc2UuZ2V0RGlyKG5vcm1hbGl6ZWRTY29wZSksIG5vcm1hbGl6ZWRTY29wZSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3Q7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX1Njb3BlZFRyZWUodGhpcy5fYmFzZS5icmFuY2goKSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgbWVyZ2Uob3RoZXIsIHN0cmF0ZWd5KSB7CiAgICAgICAgY29uc3Qgc2VsZjIgPSB0aGlzOwogICAgICAgIGNvbnN0IGRlbGVnYXRlID0gbmV3IGNsYXNzIGV4dGVuZHMgZGVsZWdhdGVfMS5EZWxlZ2F0ZVRyZWUgewogICAgICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgICAgIHJldHVybiBvdGhlci5hY3Rpb25zLm1hcCgoYWN0aW9uKSA9PiBzZWxmMi5fZnVsbFBhdGhBY3Rpb24oYWN0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfShvdGhlcik7CiAgICAgICAgdGhpcy5fYmFzZS5tZXJnZShkZWxlZ2F0ZSwgc3RyYXRlZ3kpOwogICAgICB9CiAgICAgIC8vIFJlYWRvbmx5LgogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVhZFRleHQodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlYWRKc29uKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkSnNvbih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5leGlzdHModGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldCh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWRGaWxlRW50cnkoZW50cnksIHRoaXMuX3Jvb3Quc2NvcGUpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldERpcih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWREaXJFbnRyeShlbnRyeSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uub3ZlcndyaXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuYmVnaW5VcGRhdGUodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5jb21taXRVcGRhdGUocmVjb3JkKTsKICAgICAgfQogICAgICAvLyBTdHJ1Y3R1cmFsIG1ldGhvZHMuCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuY3JlYXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmRlbGV0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVuYW1lKHRoaXMuX2Z1bGxQYXRoKGZyb20pLCB0aGlzLl9mdWxsUGF0aCh0bykpOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5hcHBseSh0aGlzLl9mdWxsUGF0aEFjdGlvbihhY3Rpb24pLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgY29uc3Qgc2NvcGVkQWN0aW9ucyA9IFtdOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRoaXMuX2Jhc2UuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFhY3Rpb24ucGF0aC5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFjdGlvbi5raW5kICE9PSAiciIpIHsKICAgICAgICAgICAgc2NvcGVkQWN0aW9ucy5wdXNoKHsKICAgICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgICAgcGF0aDogKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuX3Jvb3Quc2NvcGUsIGFjdGlvbi5wYXRoKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbi50by5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIHNjb3BlZEFjdGlvbnMucHVzaCh7CiAgICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICAgIHBhdGg6ICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLl9yb290LnNjb3BlLCBhY3Rpb24ucGF0aCkpLAogICAgICAgICAgICAgIHRvOiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5fcm9vdC5zY29wZSwgYWN0aW9uLnRvKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBzY29wZWRBY3Rpb25zOwogICAgICB9CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfZnVsbFBhdGgocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKHRoaXMuX3Jvb3Quc2NvcGUsICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgX2Z1bGxQYXRoQWN0aW9uKGFjdGlvbikgewogICAgICAgIGxldCBmdWxsUGF0aEFjdGlvbjsKICAgICAgICBpZiAoYWN0aW9uLmtpbmQgPT09ICJyIikgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpLAogICAgICAgICAgICB0bzogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnRvKQogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVsbFBhdGhBY3Rpb247CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZWRUcmVlID0gU2NvcGVkVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaG9zdC10cmVlLmpzCnZhciByZXF1aXJlX2hvc3RfdHJlZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9ob3N0LXRyZWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gZXhwb3J0czIuSG9zdENyZWF0ZVRyZWUgPSBleHBvcnRzMi5Ib3N0VHJlZSA9IGV4cG9ydHMyLkhvc3REaXJFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBkZWxlZ2F0ZV8xID0gcmVxdWlyZV9kZWxlZ2F0ZSgpOwogICAgdmFyIGVudHJ5XzEgPSByZXF1aXJlX2VudHJ5KCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciByZWNvcmRlcl8xID0gcmVxdWlyZV9yZWNvcmRlcigpOwogICAgdmFyIHNjb3BlZF8xID0gcmVxdWlyZV9zY29wZWQyKCk7CiAgICB2YXIgX3VuaXF1ZUlkID0gMDsKICAgIHZhciBIb3N0RGlyRW50cnkgPSBjbGFzcyB7CiAgICAgIHBhcmVudDsKICAgICAgcGF0aDsKICAgICAgX2hvc3Q7CiAgICAgIF90cmVlOwogICAgICBjb25zdHJ1Y3RvcihwYXJlbnQsIHBhdGgsIF9ob3N0LCBfdHJlZSkgewogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIHRoaXMucGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5faG9zdCA9IF9ob3N0OwogICAgICAgIHRoaXMuX3RyZWUgPSBfdHJlZTsKICAgICAgfQogICAgICBnZXQgc3ViZGlycygpIHsKICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5saXN0KHRoaXMucGF0aCkuZmlsdGVyKChmcmFnbWVudCkgPT4gdGhpcy5faG9zdC5pc0RpcmVjdG9yeSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmZpbGVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0Lmxpc3QodGhpcy5wYXRoKS5maWx0ZXIoKGZyYWdtZW50KSA9PiB0aGlzLl9ob3N0LmlzRmlsZSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXREaXIoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXQoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMuZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpLmZvckVhY2goKGZpbGUpID0+IHZpc2l0b3IoZmlsZS5wYXRoLCBmaWxlKSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgIT09IGludGVyZmFjZV8xLkZpbGVWaXNpdG9yQ2FuY2VsVG9rZW4pIHsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpIHsKICAgICAgICBmdW5jdGlvbiBfcmVjdXJzZShlbnRyeSkgewogICAgICAgICAgcmV0dXJuIGVudHJ5LnN1YmRpcnMucmVkdWNlKChmaWxlcywgc3ViZGlyKSA9PiBbLi4uZmlsZXMsIC4uLl9yZWN1cnNlKGVudHJ5LmRpcihzdWJkaXIpKV0sIGVudHJ5LnN1YmZpbGVzLm1hcCgoc3ViZmlsZSkgPT4gZW50cnkuZmlsZShzdWJmaWxlKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3JlY3Vyc2UodGhpcyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0RGlyRW50cnkgPSBIb3N0RGlyRW50cnk7CiAgICB2YXIgSG9zdFRyZWUgPSBjbGFzcyBfSG9zdFRyZWUgewogICAgICBfYmFja2VuZDsKICAgICAgX2lkID0gLS1fdW5pcXVlSWQ7CiAgICAgIF9yZWNvcmQ7CiAgICAgIF9yZWNvcmRTeW5jOwogICAgICBfYW5jZXN0cnkgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZGlyQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgc3RhdGljIGlzSG9zdFRyZWUodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiB0cmVlID09PSAib2JqZWN0IiAmJiB0eXBlb2YgdHJlZS5fYW5jZXN0cnkgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrZW5kID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuRW1wdHkoKSkgewogICAgICAgIHRoaXMuX2JhY2tlbmQgPSBfYmFja2VuZDsKICAgICAgICB0aGlzLl9yZWNvcmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5Db3JkSG9zdChuZXcgY29yZV8xLnZpcnR1YWxGcy5TYWZlUmVhZG9ubHlIb3N0KF9iYWNrZW5kKSk7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYyA9IG5ldyBjb3JlXzEudmlydHVhbEZzLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcy5fcmVjb3JkKTsKICAgICAgfQogICAgICBfbm9ybWFsaXplUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfd2lsbENyZWF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsQ3JlYXRlKHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsT3ZlcndyaXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxPdmVyd3JpdGUocGF0aCk7CiAgICAgIH0KICAgICAgX3dpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWNvcmQud2lsbERlbGV0ZShwYXRoKTsKICAgICAgfQogICAgICBfd2lsbFJlbmFtZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsUmVuYW1lKHBhdGgpOwogICAgICB9CiAgICAgIGJyYW5jaCgpIHsKICAgICAgICBjb25zdCBicmFuY2hlZFRyZWUgPSBuZXcgX0hvc3RUcmVlKHRoaXMuX2JhY2tlbmQpOwogICAgICAgIGJyYW5jaGVkVHJlZS5fcmVjb3JkID0gdGhpcy5fcmVjb3JkLmNsb25lKCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9yZWNvcmRTeW5jID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU3luY0RlbGVnYXRlSG9zdChicmFuY2hlZFRyZWUuX3JlY29yZCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9hbmNlc3RyeSA9IG5ldyBTZXQodGhpcy5fYW5jZXN0cnkpLmFkZCh0aGlzLl9pZCk7CiAgICAgICAgcmV0dXJuIGJyYW5jaGVkVHJlZTsKICAgICAgfQogICAgICBpc0FuY2VzdG9yT2YodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJlZS5fYW5jZXN0cnkuaGFzKHRoaXMuX2lkKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBkZWxlZ2F0ZV8xLkRlbGVnYXRlVHJlZSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuaXNBbmNlc3Rvck9mKHRyZWUuX290aGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBzY29wZWRfMS5TY29wZWRUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5pc0FuY2VzdG9yT2YodHJlZS5fYmFzZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBtZXJnZShvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgICBpZiAob3RoZXIgPT09IHRoaXMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuaXNBbmNlc3Rvck9mKG90aGVyKSkgewogICAgICAgICAgc3RyYXRlZ3kgfD0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNyZWF0aW9uQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0NyZWF0aW9uQ29uZmxpY3QpID09IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dDcmVhdGlvbkNvbmZsaWN0OwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dPdmVyd3JpdGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd092ZXJ3cml0ZUNvbmZsaWN0OwogICAgICAgIGNvbnN0IGRlbGV0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dEZWxldGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0RlbGV0ZUNvbmZsaWN0OwogICAgICAgIG90aGVyLmFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOiB7CiAgICAgICAgICAgICAgY29uc3QgeyBwYXRoLCBjb250ZW50IH0gPSBhY3Rpb247CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxDcmVhdGUocGF0aCkgfHwgdGhpcy5fd2lsbE92ZXJ3cml0ZShwYXRoKSB8fCB0aGlzLmV4aXN0cyhwYXRoKSkgewogICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdDb250ZW50ID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQ29udGVudCAmJiBjb250ZW50LmVxdWFscyhleGlzdGluZ0NvbnRlbnQpKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghY3JlYXRpb25Db25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQuY3JlYXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAibyI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSAmJiAhb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxPdmVyd3JpdGUocGF0aCkpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nQ29udGVudCA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0NvbnRlbnQgJiYgY29udGVudC5lcXVhbHMoZXhpc3RpbmdDb250ZW50KSkgewogICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoIW92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGhpcy5fcmVjb3JkLndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJyIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgdG8gfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsUmVuYW1lKHBhdGgpKSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fcmVjb3JkLndpbGxSZW5hbWVUbyhwYXRoLCB0bykpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMucmVuYW1lKHBhdGgsIHRvKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAiZCI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGggfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIXRoaXMuZXhpc3RzKHBhdGgpICYmICFkZWxldGVDb25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLl9yZWNvcmRTeW5jLmRlbGV0ZShwYXRoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBnZXQgcm9vdCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXREaXIoIi8iKTsKICAgICAgfQogICAgICAvLyBSZWFkb25seS4KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICByZXR1cm4gZW50cnkgPyBlbnRyeS5jb250ZW50IDogbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICBpZiAoZGF0YSA9PT0gbnVsbCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoInV0Zi04IiwgeyBmYXRhbDogdHJ1ZSB9KTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGRhdGEpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgVHlwZUVycm9yIHx8IGUuY29kZSA9PT0gIkVSUl9FTkNPRElOR19JTlZBTElEX0VOQ09ERURfREFUQSIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyBVVEYtOCB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLnJlYWRUZXh0KHBhdGgpOwogICAgICAgIGNvbnN0IGVycm9ycyA9IFtdOwogICAgICAgIGNvbnN0IHJlc3VsdCA9ICgwLCBqc29uY19wYXJzZXJfMS5wYXJzZSkoY29udGVudCwgZXJyb3JzLCB7IGFsbG93VHJhaWxpbmdDb21tYTogdHJ1ZSB9KTsKICAgICAgICBpZiAoZXJyb3JzWzBdKSB7CiAgICAgICAgICBjb25zdCB7IGVycm9yLCBvZmZzZXQgfSA9IGVycm9yc1swXTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHBhcnNlICIke3BhdGh9IiBhcyBKU09OLiAkeygwLCBqc29uY19wYXJzZXJfMS5wcmludFBhcnNlRXJyb3JDb2RlKShlcnJvcil9IGF0IG9mZnNldDogJHtvZmZzZXR9LmApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZFN5bmMuaXNGaWxlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX3JlY29yZFN5bmMuaXNEaXJlY3RvcnkocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBpZiAoIXRoaXMuX3JlY29yZFN5bmMuZXhpc3RzKHApKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBlbnRyeV8xLkxhenlGaWxlRW50cnkocCwgKCkgPT4gQnVmZmVyLmZyb20odGhpcy5fcmVjb3JkU3luYy5yZWFkKHApKSk7CiAgICAgIH0KICAgICAgZ2V0RGlyKHBhdGgpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5pc0ZpbGUocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihwKTsKICAgICAgICB9CiAgICAgICAgbGV0IG1heWJlQ2FjaGUgPSB0aGlzLl9kaXJDYWNoZS5nZXQocCk7CiAgICAgICAgaWYgKCFtYXliZUNhY2hlKSB7CiAgICAgICAgICBsZXQgcGFyZW50ID0gKDAsIGNvcmVfMS5kaXJuYW1lKShwKTsKICAgICAgICAgIGlmIChwID09PSBwYXJlbnQpIHsKICAgICAgICAgICAgcGFyZW50ID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICAgIG1heWJlQ2FjaGUgPSBuZXcgSG9zdERpckVudHJ5KHBhcmVudCAmJiB0aGlzLmdldERpcihwYXJlbnQpLCBwLCB0aGlzLl9yZWNvcmRTeW5jLCB0aGlzKTsKICAgICAgICAgIHRoaXMuX2RpckNhY2hlLnNldChwLCBtYXliZUNhY2hlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1heWJlQ2FjaGU7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHRoaXMucm9vdC52aXNpdCgocGF0aCwgZW50cnkpID0+IHsKICAgICAgICAgIHZpc2l0b3IocGF0aCwgZW50cnkpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKCF0aGlzLl9yZWNvcmRTeW5jLmV4aXN0cyhwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGMgPSB0eXBlb2YgY29udGVudCA9PSAic3RyaW5nIiA/IEJ1ZmZlci5mcm9tKGNvbnRlbnQpIDogY29udGVudDsKICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHAsIGMpLnN1YnNjcmliZSgpOwogICAgICB9CiAgICAgIGJlZ2luVXBkYXRlKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVjb3JkZXJfMS5VcGRhdGVSZWNvcmRlckJhc2UuY3JlYXRlRnJvbUZpbGVFbnRyeShlbnRyeSk7CiAgICAgIH0KICAgICAgY29tbWl0VXBkYXRlKHJlY29yZCkgewogICAgICAgIGlmIChyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSkgewogICAgICAgICAgY29uc3QgcGF0aCA9IHJlY29yZC5wYXRoOwogICAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgbmV3Q29udGVudCA9IHJlY29yZC5hcHBseShlbnRyeS5jb250ZW50KTsKICAgICAgICAgICAgaWYgKCFuZXdDb250ZW50LmVxdWFscyhlbnRyeS5jb250ZW50KSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKHBhdGgsIG5ld0NvbnRlbnQpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5JbnZhbGlkVXBkYXRlUmVjb3JkRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIFN0cnVjdHVyYWwgbWV0aG9kcy4KICAgICAgY3JlYXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5leGlzdHMocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBjb25zdCBjID0gdHlwZW9mIGNvbnRlbnQgPT0gInN0cmluZyIgPyBCdWZmZXIuZnJvbShjb250ZW50KSA6IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5fcmVjb3JkLmNyZWF0ZShwLCBjKS5zdWJzY3JpYmUoKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMuZGVsZXRlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMucmVuYW1lKHRoaXMuX25vcm1hbGl6ZVBhdGgoZnJvbSksIHRoaXMuX25vcm1hbGl6ZVBhdGgodG8pKTsKICAgICAgfQogICAgICBhcHBseShhY3Rpb24sIHN0cmF0ZWd5KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIkFwcGx5IG5vdCBpbXBsZW1lbnRlZCBvbiBob3N0IHRyZWVzLiIpOwogICAgICB9CiAgICAgICpnZW5lcmF0ZUFjdGlvbnMoKSB7CiAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgdGhpcy5fcmVjb3JkLnJlY29yZHMoKSkgewogICAgICAgICAgc3dpdGNoIChyZWNvcmQua2luZCkgewogICAgICAgICAgICBjYXNlICJjcmVhdGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJjIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoLAogICAgICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20ocmVjb3JkLmNvbnRlbnQpCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAibyIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IEJ1ZmZlci5mcm9tKHJlY29yZC5jb250ZW50KQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInJlbmFtZSI6CiAgICAgICAgICAgICAgeWllbGQgewogICAgICAgICAgICAgICAgaWQ6IHRoaXMuX2lkLAogICAgICAgICAgICAgICAgcGFyZW50OiAwLAogICAgICAgICAgICAgICAga2luZDogInIiLAogICAgICAgICAgICAgICAgcGF0aDogcmVjb3JkLmZyb20sCiAgICAgICAgICAgICAgICB0bzogcmVjb3JkLnRvCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAiZCIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aAogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGdldCBhY3Rpb25zKCkgewogICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZ2VuZXJhdGVBY3Rpb25zKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSG9zdFRyZWUgPSBIb3N0VHJlZTsKICAgIHZhciBIb3N0Q3JlYXRlVHJlZSA9IGNsYXNzIGV4dGVuZHMgSG9zdFRyZWUgewogICAgICBjb25zdHJ1Y3Rvcihob3N0KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBjb25zdCB0ZW1wSG9zdCA9IG5ldyBIb3N0VHJlZShob3N0KTsKICAgICAgICB0ZW1wSG9zdC52aXNpdCgocGF0aCkgPT4gewogICAgICAgICAgY29uc3QgY29udGVudCA9IHRlbXBIb3N0LnJlYWQocGF0aCk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RDcmVhdGVUcmVlID0gSG9zdENyZWF0ZVRyZWU7CiAgICB2YXIgRmlsdGVySG9zdFRyZWUgPSBjbGFzcyBleHRlbmRzIEhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IodHJlZSwgZmlsdGVyID0gKCkgPT4gdHJ1ZSkgewogICAgICAgIGNvbnN0IG5ld0JhY2tlbmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5TaW1wbGVNZW1vcnlIb3N0KCk7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCYWNrZW5kID0gdHJlZS5fYmFja2VuZDsKICAgICAgICBjb25zdCBwZW5kaW5nUGF0aHMgPSBbIi8iXTsKICAgICAgICB3aGlsZSAocGVuZGluZ1BhdGhzLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gcGVuZGluZ1BhdGhzLnBvcCgpOwogICAgICAgICAgaWYgKGN1cnJlbnRQYXRoID09PSB2b2lkIDApIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgaXNEaXJlY3RvcnkgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0RpcmVjdG9yeShjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGlzRGlyZWN0b3J5ID0gdmFsKTsKICAgICAgICAgIGlmIChpc0RpcmVjdG9yeSkgewogICAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQubGlzdChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IHBlbmRpbmdQYXRocy5wdXNoKC4uLnZhbC5tYXAoKHApID0+ICgwLCBjb3JlXzEuam9pbikoY3VycmVudFBhdGgsIHApKSkpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBpc0ZpbGUgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0ZpbGUoY3VycmVudFBhdGgpLnN1YnNjcmliZSgodmFsKSA9PiBpc0ZpbGUgPSB2YWwpOwogICAgICAgICAgaWYgKCFpc0ZpbGUgfHwgIWZpbHRlcihjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgY29udGVudCA9IG51bGw7CiAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQucmVhZChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGNvbnRlbnQgPSB2YWwpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT09IG51bGwpIHsKICAgICAgICAgICAgbmV3QmFja2VuZC53cml0ZShjdXJyZW50UGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyKG5ld0JhY2tlbmQpOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRyZWUuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFmaWx0ZXIoYWN0aW9uLnBhdGgpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgICB0aGlzLmNyZWF0ZShhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgICB0aGlzLmRlbGV0ZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm8iOgogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInIiOgogICAgICAgICAgICAgIHRoaXMucmVuYW1lKGFjdGlvbi5wYXRoLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gRmlsdGVySG9zdFRyZWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3N0YXRpYy5qcwp2YXIgcmVxdWlyZV9zdGF0aWMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbXB0eSA9IGVtcHR5OwogICAgZXhwb3J0czIuYnJhbmNoID0gYnJhbmNoOwogICAgZXhwb3J0czIubWVyZ2UgPSBtZXJnZTI7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gbmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKCk7CiAgICB9CiAgICBmdW5jdGlvbiBicmFuY2godHJlZSkgewogICAgICByZXR1cm4gdHJlZS5icmFuY2goKTsKICAgIH0KICAgIGZ1bmN0aW9uIG1lcmdlMih0cmVlLCBvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgdHJlZS5tZXJnZShvdGhlciwgc3RyYXRlZ3kpOwogICAgICByZXR1cm4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnRpdGlvbih0cmVlLCBwcmVkaWNhdGUpIHsKICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBob3N0X3RyZWVfMS5Ib3N0VHJlZSkgewogICAgICAgIHJldHVybiBbCiAgICAgICAgICBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKSwKICAgICAgICAgIG5ldyBob3N0X3RyZWVfMS5GaWx0ZXJIb3N0VHJlZSh0cmVlLCAocGF0aCwgZW50cnkpID0+ICFwcmVkaWNhdGUocGF0aCwgZW50cnkpKQogICAgICAgIF07CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMKdmFyIHJlcXVpcmVfbnVsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9udWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsVHJlZSA9IGV4cG9ydHMyLk51bGxUcmVlRGlyRW50cnkgPSBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYENhbm5vdCBjcmVhdGUgZmlsZSAiJHtwYXRofSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbjsKICAgIHZhciBOdWxsVHJlZURpckVudHJ5ID0gY2xhc3MgX051bGxUcmVlRGlyRW50cnkgewogICAgICBwYXRoOwogICAgICBnZXQgcGFyZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLnBhdGggPT0gIi8iID8gbnVsbCA6IG5ldyBfTnVsbFRyZWVEaXJFbnRyeSgoMCwgY29yZV8xLmRpcm5hbWUpKHRoaXMucGF0aCkpOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICB0aGlzLnBhdGggPSBwYXRoOwogICAgICB9CiAgICAgIHN1YmRpcnMgPSBbXTsKICAgICAgc3ViZmlsZXMgPSBbXTsKICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gbmV3IF9OdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBuYW1lKSk7CiAgICAgIH0KICAgICAgZmlsZShfbmFtZSkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHZpc2l0KCkgewogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWVEaXJFbnRyeSA9IE51bGxUcmVlRGlyRW50cnk7CiAgICB2YXIgTnVsbFRyZWUgPSBjbGFzcyBfTnVsbFRyZWUgewogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX051bGxUcmVlKCk7CiAgICAgIH0KICAgICAgbWVyZ2UoX290aGVyLCBfc3RyYXRlZ3kpIHsKICAgICAgfQogICAgICByb290ID0gbmV3IE51bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICAvLyBTaW1wbGUgcmVhZG9ubHkgZmlsZSBzeXN0ZW0gb3BlcmF0aW9ucy4KICAgICAgZXhpc3RzKF9wYXRoKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHJlYWQoX3BhdGgpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGdldChfcGF0aCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgdmlzaXQoKSB7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSA/IHJlY29yZC5wYXRoIDogIjx1bmtub3duPiIpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBzdHJ1Y3R1cmUgb2YgdGhlIGhvc3QuCiAgICAgIGNvcHkocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgX2NvbnRlbnQpIHsKICAgICAgICB0aHJvdyBuZXcgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgYXBwbHkoX2FjdGlvbiwgX3N0cmF0ZWd5KSB7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWUgPSBOdWxsVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2NhbGwuanMKdmFyIHJlcXVpcmVfY2FsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW52YWxpZFNvdXJjZVJlc3VsdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuY2FsbFNvdXJjZSA9IGNhbGxTb3VyY2U7CiAgICBleHBvcnRzMi5jYWxsUnVsZSA9IGNhbGxSdWxlOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gX2dldFR5cGVPZlJlc3VsdCh2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiAidW5kZWZpbmVkIjsKICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gYEZ1bmN0aW9uKClgOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSAhPSAib2JqZWN0IikgewogICAgICAgIHJldHVybiBgJHt0eXBlb2YgdmFsdWV9KCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSlgOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09IE9iamVjdCkgewogICAgICAgICAgcmV0dXJuIGBPYmplY3QoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWA7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5jb25zdHJ1Y3RvcikgewogICAgICAgICAgcmV0dXJuIGBJbnN0YW5jZSBvZiBjbGFzcyAke3ZhbHVlLmNvbnN0cnVjdG9yLm5hbWV9YDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuICJVbmtub3duIE9iamVjdCI7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICB2YXIgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBydWxlIHJlc3VsdDogJHtfZ2V0VHlwZU9mUmVzdWx0KHZhbHVlKX0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUnVsZVJlc3VsdEV4Y2VwdGlvbiA9IEludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBzb3VyY2UgcmVzdWx0OiAke19nZXRUeXBlT2ZSZXN1bHQodmFsdWUpfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uOwogICAgZnVuY3Rpb24gY2FsbFNvdXJjZShzb3VyY2UsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuICgwLCByeGpzXzEuZGVmZXIpKGFzeW5jICgpID0+IHsKICAgICAgICBsZXQgcmVzdWx0ID0gc291cmNlKGNvbnRleHQpOwogICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgICAgcmVzdWx0ID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShyZXN1bHQucGlwZSgoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKSk7CiAgICAgICAgfQogICAgICAgIGlmIChyZXN1bHQgJiYgaW50ZXJmYWNlXzEuVHJlZVN5bWJvbCBpbiByZXN1bHQpIHsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uKHJlc3VsdCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY2FsbFJ1bGUocnVsZSwgaW5wdXQsIGNvbnRleHQpIHsKICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShpbnB1dCkpIHsKICAgICAgICByZXR1cm4gaW5wdXQucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaW5wdXRUcmVlKSA9PiBjYWxsUnVsZUFzeW5jKHJ1bGUsIGlucHV0VHJlZSwgY29udGV4dCkpKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5kZWZlcikoKCkgPT4gY2FsbFJ1bGVBc3luYyhydWxlLCBpbnB1dCwgY29udGV4dCkpOwogICAgICB9CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiBjYWxsUnVsZUFzeW5jKHJ1bGUsIHRyZWUsIGNvbnRleHQpIHsKICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHJ1bGUodHJlZSwgY29udGV4dCk7CiAgICAgIHdoaWxlICh0eXBlb2YgcmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVzdWx0KHRyZWUsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAidW5kZWZpbmVkIikgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgIHJlc3VsdCA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkocmVzdWx0LnBpcGUoKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodHJlZSkpKTsKICAgICAgfQogICAgICBpZiAocmVzdWx0ICYmIGludGVyZmFjZV8xLlRyZWVTeW1ib2wgaW4gcmVzdWx0KSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICB0aHJvdyBuZXcgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24ocmVzdWx0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9zY2hlbWF0aWMuanMKdmFyIHJlcXVpcmVfc2NoZW1hdGljID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvc2NoZW1hdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY2hlbWF0aWNJbXBsID0gZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBjYWxsXzEgPSByZXF1aXJlX2NhbGwoKTsKICAgIHZhciBzY29wZWRfMSA9IHJlcXVpcmVfc2NvcGVkMigpOwogICAgdmFyIEludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpY3MgaGFzIGludmFsaWQgbmFtZTogIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0ltcGwgPSBjbGFzcyB7CiAgICAgIF9kZXNjcmlwdGlvbjsKICAgICAgX2ZhY3Rvcnk7CiAgICAgIF9jb2xsZWN0aW9uOwogICAgICBfZW5naW5lOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9mYWN0b3J5LCBfY29sbGVjdGlvbiwgX2VuZ2luZSkgewogICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gX2Rlc2NyaXB0aW9uOwogICAgICAgIHRoaXMuX2ZhY3RvcnkgPSBfZmFjdG9yeTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uID0gX2NvbGxlY3Rpb247CiAgICAgICAgdGhpcy5fZW5naW5lID0gX2VuZ2luZTsKICAgICAgICBpZiAoIV9kZXNjcmlwdGlvbi5uYW1lLm1hdGNoKC9eWy1AL18uYS16QS1aMC05XSskLykpIHsKICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NoZW1hdGljc05hbWVFeGNlcHRpb24oX2Rlc2NyaXB0aW9uLm5hbWUpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgZGVzY3JpcHRpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uOwogICAgICB9CiAgICAgIGdldCBjb2xsZWN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uOwogICAgICB9CiAgICAgIGNhbGwob3B0aW9ucywgaG9zdCwgcGFyZW50Q29udGV4dCwgZXhlY3V0aW9uT3B0aW9ucykgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29udGV4dCh0aGlzLCBwYXJlbnRDb250ZXh0LCBleGVjdXRpb25PcHRpb25zKTsKICAgICAgICByZXR1cm4gaG9zdC5waXBlKCgwLCByeGpzXzEuZmlyc3QpKCksICgwLCByeGpzXzEuY29uY2F0TWFwKSgodHJlZSkgPT4gdGhpcy5fZW5naW5lLnRyYW5zZm9ybU9wdGlvbnModGhpcywgb3B0aW9ucywgY29udGV4dCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKG8pID0+IFt0cmVlLCBvXSkpKSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChbdHJlZSwgdHJhbnNmb3JtZWRPcHRpb25zXSkgPT4gewogICAgICAgICAgbGV0IGlucHV0OwogICAgICAgICAgbGV0IHNjb3BlZCA9IGZhbHNlOwogICAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5zY29wZSkgewogICAgICAgICAgICBzY29wZWQgPSB0cnVlOwogICAgICAgICAgICBpbnB1dCA9IG5ldyBzY29wZWRfMS5TY29wZWRUcmVlKHRyZWUsIGV4ZWN1dGlvbk9wdGlvbnMuc2NvcGUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQgPSB0cmVlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHRoaXMuX2ZhY3RvcnkodHJhbnNmb3JtZWRPcHRpb25zKSwgaW5wdXQsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChvdXRwdXQpID0+IHsKICAgICAgICAgICAgaWYgKG91dHB1dCA9PT0gaW5wdXQpIHsKICAgICAgICAgICAgICByZXR1cm4gdHJlZTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY29wZWQpIHsKICAgICAgICAgICAgICB0cmVlLm1lcmdlKG91dHB1dCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIG91dHB1dDsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0ltcGwgPSBTY2hlbWF0aWNJbXBsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcwp2YXIgcmVxdWlyZV9lbmdpbmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9lbmdpbmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBleHBvcnRzMi5Db2xsZWN0aW9uSW1wbCA9IGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gZXhwb3J0czIuQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgbnVsbF8xID0gcmVxdWlyZV9udWxsKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgdmFyIHNjaGVtYXRpY18xID0gcmVxdWlyZV9zY2hlbWF0aWMoKTsKICAgIHZhciBVbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodXJsMykgewogICAgICAgIHN1cGVyKGBVbmtub3duIFByb3RvY29sIG9uIHVybCAiJHt1cmwzfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBVbmtub3duVXJsU291cmNlUHJvdG9jb2w7CiAgICB2YXIgVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBVbmtub3duIGNvbGxlY3Rpb24gIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBDaXJjdWxhciBjb2xsZWN0aW9uIHJlZmVyZW5jZSAiJHtuYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb247CiAgICB2YXIgVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBjb2xsZWN0aW9uKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpYyAiJHtuYW1lfSIgbm90IGZvdW5kIGluIGNvbGxlY3Rpb24gIiR7Y29sbGVjdGlvbi5uYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbjsKICAgIHZhciBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGNvbGxlY3Rpb24pIHsKICAgICAgICBzdXBlcihgU2NoZW1hdGljICIke25hbWV9IiBub3QgZm91bmQgaW4gY29sbGVjdGlvbiAiJHtjb2xsZWN0aW9uLm5hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKGBBIHNjaGVtYXRpYyB3YXMgY2FsbGVkIGZyb20gYSBkaWZmZXJlbnQgZW5naW5lIGFzIGl0cyBwYXJlbnQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uOwogICAgdmFyIFVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgc2NoZW1hdGljKSB7CiAgICAgICAgY29uc3QgYWRkZW5kdW0gPSBzY2hlbWF0aWMgPyBgIGluIHNjaGVtYXRpYyAiJHtzY2hlbWF0aWMubmFtZX0iYCA6ICIiOwogICAgICAgIHN1cGVyKGBVbnJlZ2lzdGVyZWQgdGFzayAiJHtuYW1lfSIke2FkZGVuZHVtfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBVbnJlZ2lzdGVyZWRUYXNrRXhjZXB0aW9uOwogICAgdmFyIFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihpZCkgewogICAgICAgIHN1cGVyKGBVbmtub3duIHRhc2sgZGVwZW5kZW5jeSBbSUQ6ICR7aWQuaWR9XS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbjsKICAgIHZhciBDb2xsZWN0aW9uSW1wbCA9IGNsYXNzIHsKICAgICAgX2Rlc2NyaXB0aW9uOwogICAgICBfZW5naW5lOwogICAgICBiYXNlRGVzY3JpcHRpb25zOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9lbmdpbmUsIGJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IF9kZXNjcmlwdGlvbjsKICAgICAgICB0aGlzLl9lbmdpbmUgPSBfZW5naW5lOwogICAgICAgIHRoaXMuYmFzZURlc2NyaXB0aW9ucyA9IGJhc2VEZXNjcmlwdGlvbnM7CiAgICAgIH0KICAgICAgZ2V0IGRlc2NyaXB0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjsKICAgICAgfQogICAgICBnZXQgbmFtZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5kZXNjcmlwdGlvbi5uYW1lIHx8ICI8dW5rbm93bj4iOwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuY3JlYXRlU2NoZW1hdGljKG5hbWUsIHRoaXMsIGFsbG93UHJpdmF0ZSk7CiAgICAgIH0KICAgICAgbGlzdFNjaGVtYXRpY05hbWVzKGluY2x1ZGVIaWRkZW4pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lLmxpc3RTY2hlbWF0aWNOYW1lcyh0aGlzLCBpbmNsdWRlSGlkZGVuKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvbGxlY3Rpb25JbXBsID0gQ29sbGVjdGlvbkltcGw7CiAgICB2YXIgVGFza1NjaGVkdWxlciA9IGNsYXNzIF9UYXNrU2NoZWR1bGVyIHsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9xdWV1ZSA9IG5ldyBjb3JlXzEuUHJpb3JpdHlRdWV1ZSgoeCwgeSkgPT4geC5wcmlvcml0eSAtIHkucHJpb3JpdHkpOwogICAgICBfdGFza0lkcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIHN0YXRpYyBfdGFza0lkQ291bnRlciA9IDE7CiAgICAgIGNvbnN0cnVjdG9yKF9jb250ZXh0KSB7CiAgICAgICAgdGhpcy5fY29udGV4dCA9IF9jb250ZXh0OwogICAgICB9CiAgICAgIF9jYWxjdWxhdGVQcmlvcml0eShkZXBlbmRlbmNpZXMpIHsKICAgICAgICBpZiAoZGVwZW5kZW5jaWVzLnNpemUgPT09IDApIHsKICAgICAgICAgIHJldHVybiAwOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcmlvID0gWy4uLmRlcGVuZGVuY2llc10ucmVkdWNlKChwcmlvMiwgdGFzaykgPT4gcHJpbzIgKyB0YXNrLnByaW9yaXR5LCAxKTsKICAgICAgICByZXR1cm4gcHJpbzsKICAgICAgfQogICAgICBfbWFwRGVwZW5kZW5jaWVzKGRlcGVuZGVuY2llcykgewogICAgICAgIGlmICghZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza3MgPSBkZXBlbmRlbmNpZXMubWFwKChkZXApID0+IHsKICAgICAgICAgIGNvbnN0IHRhc2sgPSB0aGlzLl90YXNrSWRzLmdldChkZXApOwogICAgICAgICAgaWYgKCF0YXNrKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVGFza0RlcGVuZGVuY3lFeGNlcHRpb24oZGVwKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU2V0KHRhc2tzKTsKICAgICAgfQogICAgICBzY2hlZHVsZSh0YXNrQ29uZmlndXJhdGlvbikgewogICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRoaXMuX21hcERlcGVuZGVuY2llcyh0YXNrQ29uZmlndXJhdGlvbi5kZXBlbmRlbmNpZXMpOwogICAgICAgIGNvbnN0IHByaW9yaXR5ID0gdGhpcy5fY2FsY3VsYXRlUHJpb3JpdHkoZGVwZW5kZW5jaWVzKTsKICAgICAgICBjb25zdCB0YXNrID0gewogICAgICAgICAgaWQ6IF9UYXNrU2NoZWR1bGVyLl90YXNrSWRDb3VudGVyKyssCiAgICAgICAgICBwcmlvcml0eSwKICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHRhc2tDb25maWd1cmF0aW9uLAogICAgICAgICAgY29udGV4dDogdGhpcy5fY29udGV4dAogICAgICAgIH07CiAgICAgICAgdGhpcy5fcXVldWUucHVzaCh0YXNrKTsKICAgICAgICBjb25zdCBpZCA9IHsgaWQ6IHRhc2suaWQgfTsKICAgICAgICB0aGlzLl90YXNrSWRzLnNldChpZCwgdGFzayk7CiAgICAgICAgcmV0dXJuIGlkOwogICAgICB9CiAgICAgIGZpbmFsaXplKCkgewogICAgICAgIGNvbnN0IHRhc2tzID0gdGhpcy5fcXVldWUudG9BcnJheSgpOwogICAgICAgIHRoaXMuX3F1ZXVlLmNsZWFyKCk7CiAgICAgICAgdGhpcy5fdGFza0lkcy5jbGVhcigpOwogICAgICAgIHJldHVybiB0YXNrczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBUYXNrU2NoZWR1bGVyOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZSA9IGNsYXNzIHsKICAgICAgX2hvc3Q7CiAgICAgIF93b3JrZmxvdzsKICAgICAgX2NvbGxlY3Rpb25DYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9zY2hlbWF0aWNDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgICBfdGFza1NjaGVkdWxlcnMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF93b3JrZmxvdykgewogICAgICAgIHRoaXMuX2hvc3QgPSBfaG9zdDsKICAgICAgICB0aGlzLl93b3JrZmxvdyA9IF93b3JrZmxvdzsKICAgICAgfQogICAgICBnZXQgd29ya2Zsb3coKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3dvcmtmbG93IHx8IG51bGw7CiAgICAgIH0KICAgICAgZ2V0IGRlZmF1bHRNZXJnZVN0cmF0ZWd5KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0LmRlZmF1bHRNZXJnZVN0cmF0ZWd5IHx8IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdDsKICAgICAgfQogICAgICBjcmVhdGVDb2xsZWN0aW9uKG5hbWUsIHJlcXVlc3RlcikgewogICAgICAgIGxldCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvbkNhY2hlLmdldChuYW1lKTsKICAgICAgICBpZiAoY29sbGVjdGlvbikgewogICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb247CiAgICAgICAgfQogICAgICAgIGNvbnN0IFtkZXNjcmlwdGlvbiwgYmFzZXNdID0gdGhpcy5fY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcj8uZGVzY3JpcHRpb24pOwogICAgICAgIGNvbGxlY3Rpb24gPSBuZXcgQ29sbGVjdGlvbkltcGwoZGVzY3JpcHRpb24sIHRoaXMsIGJhc2VzKTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uQ2FjaGUuc2V0KG5hbWUsIGNvbGxlY3Rpb24pOwogICAgICAgIHRoaXMuX3NjaGVtYXRpY0NhY2hlLnNldChjb2xsZWN0aW9uLCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpKTsKICAgICAgICByZXR1cm4gY29sbGVjdGlvbjsKICAgICAgfQogICAgICBfY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3RlciwgcGFyZW50TmFtZXMpIHsKICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcik7CiAgICAgICAgaWYgKCFkZXNjcmlwdGlvbikgewogICAgICAgICAgdGhyb3cgbmV3IFVua25vd25Db2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50TmFtZXMgJiYgcGFyZW50TmFtZXMuaGFzKGRlc2NyaXB0aW9uLm5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBjb25zdCBiYXNlcyA9IG5ldyBBcnJheSgpOwogICAgICAgIGlmIChkZXNjcmlwdGlvbi5leHRlbmRzKSB7CiAgICAgICAgICBwYXJlbnROYW1lcyA9IChwYXJlbnROYW1lcyB8fCAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKS5hZGQoZGVzY3JpcHRpb24ubmFtZSk7CiAgICAgICAgICBmb3IgKGNvbnN0IGJhc2VOYW1lIG9mIGRlc2NyaXB0aW9uLmV4dGVuZHMpIHsKICAgICAgICAgICAgY29uc3QgW2Jhc2UsIGJhc2VCYXNlc10gPSB0aGlzLl9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24oYmFzZU5hbWUsIGRlc2NyaXB0aW9uLCBuZXcgU2V0KHBhcmVudE5hbWVzKSk7CiAgICAgICAgICAgIGJhc2VzLnVuc2hpZnQoYmFzZSwgLi4uYmFzZUJhc2VzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFtkZXNjcmlwdGlvbiwgYmFzZXNdOwogICAgICB9CiAgICAgIGNyZWF0ZUNvbnRleHQoc2NoZW1hdGljLCBwYXJlbnQsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5lbmdpbmUgJiYgcGFyZW50LmVuZ2luZSAhPT0gdGhpcykgewogICAgICAgICAgdGhyb3cgbmV3IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGxldCBpbnRlcmFjdGl2ZSA9IHRydWU7CiAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZSAhPSB2b2lkIDApIHsKICAgICAgICAgIGludGVyYWN0aXZlID0gZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZTsKICAgICAgICB9IGVsc2UgaWYgKHBhcmVudCAmJiBwYXJlbnQuaW50ZXJhY3RpdmUgIT0gdm9pZCAwKSB7CiAgICAgICAgICBpbnRlcmFjdGl2ZSA9IHBhcmVudC5pbnRlcmFjdGl2ZTsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbnRleHQgPSB7CiAgICAgICAgICBkZWJ1ZzogcGFyZW50ICYmIHBhcmVudC5kZWJ1ZyB8fCBmYWxzZSwKICAgICAgICAgIGVuZ2luZTogdGhpcywKICAgICAgICAgIGxvZ2dlcjogcGFyZW50ICYmIHBhcmVudC5sb2dnZXIgJiYgcGFyZW50LmxvZ2dlci5jcmVhdGVDaGlsZChzY2hlbWF0aWMuZGVzY3JpcHRpb24ubmFtZSkgfHwgbmV3IGNvcmVfMS5sb2dnaW5nLk51bGxMb2dnZXIoKSwKICAgICAgICAgIHNjaGVtYXRpYywKICAgICAgICAgIHN0cmF0ZWd5OiBwYXJlbnQgJiYgcGFyZW50LnN0cmF0ZWd5ICE9PSB2b2lkIDAgPyBwYXJlbnQuc3RyYXRlZ3kgOiB0aGlzLmRlZmF1bHRNZXJnZVN0cmF0ZWd5LAogICAgICAgICAgaW50ZXJhY3RpdmUsCiAgICAgICAgICBhZGRUYXNrCiAgICAgICAgfTsKICAgICAgICBjb25zdCBtYXliZU5ld0NvbnRleHQgPSB0aGlzLl9ob3N0LnRyYW5zZm9ybUNvbnRleHQoY29udGV4dCk7CiAgICAgICAgaWYgKG1heWJlTmV3Q29udGV4dCkgewogICAgICAgICAgY29udGV4dCA9IG1heWJlTmV3Q29udGV4dDsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza1NjaGVkdWxlciA9IG5ldyBUYXNrU2NoZWR1bGVyKGNvbnRleHQpOwogICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLl9ob3N0OwogICAgICAgIHRoaXMuX3Rhc2tTY2hlZHVsZXJzLnB1c2godGFza1NjaGVkdWxlcik7CiAgICAgICAgZnVuY3Rpb24gYWRkVGFzayh0YXNrLCBkZXBlbmRlbmNpZXMpIHsKICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHRhc2sudG9Db25maWd1cmF0aW9uKCk7CiAgICAgICAgICBpZiAoIWhvc3QuaGFzVGFza0V4ZWN1dG9yKGNvbmZpZy5uYW1lKSkgewogICAgICAgICAgICB0aHJvdyBuZXcgVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbihjb25maWcubmFtZSwgc2NoZW1hdGljLmRlc2NyaXB0aW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbmZpZy5kZXBlbmRlbmNpZXMgPSBjb25maWcuZGVwZW5kZW5jaWVzIHx8IFtdOwogICAgICAgICAgaWYgKGRlcGVuZGVuY2llcykgewogICAgICAgICAgICBjb25maWcuZGVwZW5kZW5jaWVzLnVuc2hpZnQoLi4uZGVwZW5kZW5jaWVzKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrU2NoZWR1bGVyLnNjaGVkdWxlKGNvbmZpZyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb250ZXh0OwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBjb2xsZWN0aW9uLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IHNjaGVtYXRpY01hcCA9IHRoaXMuX3NjaGVtYXRpY0NhY2hlLmdldChjb2xsZWN0aW9uKTsKICAgICAgICBsZXQgc2NoZW1hdGljID0gc2NoZW1hdGljTWFwPy5nZXQobmFtZSk7CiAgICAgICAgaWYgKHNjaGVtYXRpYykgewogICAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbGxlY3Rpb25EZXNjcmlwdGlvbiA9IGNvbGxlY3Rpb24uZGVzY3JpcHRpb247CiAgICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVTY2hlbWF0aWNEZXNjcmlwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICBpZiAoY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgYmFzZSBvZiBjb2xsZWN0aW9uLmJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlU2NoZW1hdGljRGVzY3JpcHRpb24obmFtZSwgYmFzZSk7CiAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVzY3JpcHRpb24gPSBiYXNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZGVzY3JpcHRpb24ucHJpdmF0ZSAmJiAhYWxsb3dQcml2YXRlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX2hvc3QuZ2V0U2NoZW1hdGljUnVsZUZhY3RvcnkoZGVzY3JpcHRpb24sIGNvbGxlY3Rpb25EZXNjcmlwdGlvbik7CiAgICAgICAgc2NoZW1hdGljID0gbmV3IHNjaGVtYXRpY18xLlNjaGVtYXRpY0ltcGwoZGVzY3JpcHRpb24sIGZhY3RvcnksIGNvbGxlY3Rpb24sIHRoaXMpOwogICAgICAgIHNjaGVtYXRpY01hcD8uc2V0KG5hbWUsIHNjaGVtYXRpYyk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgfQogICAgICBsaXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbiwgaW5jbHVkZUhpZGRlbikgewogICAgICAgIGNvbnN0IG5hbWVzID0gdGhpcy5faG9zdC5saXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbi5kZXNjcmlwdGlvbiwgaW5jbHVkZUhpZGRlbik7CiAgICAgICAgaWYgKGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgZm9yIChjb25zdCBiYXNlIG9mIGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgICBuYW1lcy5wdXNoKC4uLnRoaXMuX2hvc3QubGlzdFNjaGVtYXRpY05hbWVzKGJhc2UsIGluY2x1ZGVIaWRkZW4pKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFsuLi5uZXcgU2V0KG5hbWVzKV0uc29ydCgpOwogICAgICB9CiAgICAgIHRyYW5zZm9ybU9wdGlvbnMoc2NoZW1hdGljLCBvcHRpb25zLCBjb250ZXh0KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QudHJhbnNmb3JtT3B0aW9ucyhzY2hlbWF0aWMuZGVzY3JpcHRpb24sIG9wdGlvbnMsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGNyZWF0ZVNvdXJjZUZyb21VcmwodXJsMywgY29udGV4dCkgewogICAgICAgIHN3aXRjaCAodXJsMy5wcm90b2NvbCkgewogICAgICAgICAgY2FzZSAibnVsbDoiOgogICAgICAgICAgICByZXR1cm4gKCkgPT4gbmV3IG51bGxfMS5OdWxsVHJlZSgpOwogICAgICAgICAgY2FzZSAiZW1wdHk6IjoKICAgICAgICAgICAgcmV0dXJuICgpID0+ICgwLCBzdGF0aWNfMS5lbXB0eSkoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaG9zdFNvdXJjZSA9IHRoaXMuX2hvc3QuY3JlYXRlU291cmNlRnJvbVVybCh1cmwzLCBjb250ZXh0KTsKICAgICAgICBpZiAoIWhvc3RTb3VyY2UpIHsKICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVXJsU291cmNlUHJvdG9jb2wodXJsMy50b1N0cmluZygpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGhvc3RTb3VyY2U7CiAgICAgIH0KICAgICAgZXhlY3V0ZVBvc3RUYXNrcygpIHsKICAgICAgICBjb25zdCBleGVjdXRvcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRhc2tPYnNlcnZhYmxlID0gKDAsIHJ4anNfMS5mcm9tKSh0aGlzLl90YXNrU2NoZWR1bGVycykucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHNjaGVkdWxlcikgPT4gc2NoZWR1bGVyLmZpbmFsaXplKCkpLCAoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHRhc2spID0+IHsKICAgICAgICAgIGNvbnN0IHsgbmFtZSwgb3B0aW9ucyB9ID0gdGFzay5jb25maWd1cmF0aW9uOwogICAgICAgICAgY29uc3QgZXhlY3V0b3IgPSBleGVjdXRvcnMuZ2V0KG5hbWUpOwogICAgICAgICAgaWYgKGV4ZWN1dG9yKSB7CiAgICAgICAgICAgIHJldHVybiBleGVjdXRvcihvcHRpb25zLCB0YXNrLmNvbnRleHQpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuY3JlYXRlVGFza0V4ZWN1dG9yKG5hbWUpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChleGVjdXRvcjIpID0+IHsKICAgICAgICAgICAgZXhlY3V0b3JzLnNldChuYW1lLCBleGVjdXRvcjIpOwogICAgICAgICAgICByZXR1cm4gZXhlY3V0b3IyKG9wdGlvbnMsIHRhc2suY29udGV4dCk7CiAgICAgICAgICB9KSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiB0YXNrT2JzZXJ2YWJsZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IFNjaGVtYXRpY0VuZ2luZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlNCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzCnZhciByZXF1aXJlX2VuZ2luZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW5naW5lKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hdGljKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzCnZhciByZXF1aXJlX2NsaV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVDb25zb2xlTG9nZ2VyID0gY3JlYXRlQ29uc29sZUxvZ2dlcjsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIHNyY18xID0gcmVxdWlyZV9zcmMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZUNvbnNvbGVMb2dnZXIodmVyYm9zZSA9IGZhbHNlLCBzdGRvdXQgPSBwcm9jZXNzLnN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5zdGRlcnIsIGNvbG9ycykgewogICAgICBjb25zdCBsb2dnZXIgPSBuZXcgc3JjXzEubG9nZ2luZy5JbmRlbnRMb2dnZXIoImNsaW5nIik7CiAgICAgIGxvZ2dlci5waXBlKCgwLCByeGpzXzEuZmlsdGVyKSgoZW50cnkpID0+IGVudHJ5LmxldmVsICE9PSAiZGVidWciIHx8IHZlcmJvc2UpKS5zdWJzY3JpYmUoKGVudHJ5KSA9PiB7CiAgICAgICAgY29uc3QgY29sb3IgPSBjb2xvcnMgJiYgY29sb3JzW2VudHJ5LmxldmVsXTsKICAgICAgICBsZXQgb3V0cHV0ID0gc3Rkb3V0OwogICAgICAgIHN3aXRjaCAoZW50cnkubGV2ZWwpIHsKICAgICAgICAgIGNhc2UgIndhcm4iOgogICAgICAgICAgY2FzZSAiZmF0YWwiOgogICAgICAgICAgY2FzZSAiZXJyb3IiOgogICAgICAgICAgICBvdXRwdXQgPSBzdGRlcnI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaHVua1NpemUgPSAyZTM7CiAgICAgICAgbGV0IG1lc3NhZ2UgPSBlbnRyeS5tZXNzYWdlOwogICAgICAgIHdoaWxlIChtZXNzYWdlKSB7CiAgICAgICAgICBjb25zdCBjaHVuayA9IG1lc3NhZ2Uuc2xpY2UoMCwgY2h1bmtTaXplKTsKICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLnNsaWNlKGNodW5rU2l6ZSk7CiAgICAgICAgICBvdXRwdXQud3JpdGUoY29sb3IgPyBjb2xvcihjaHVuaykgOiBjaHVuayk7CiAgICAgICAgfQogICAgICAgIG91dHB1dC53cml0ZSgiXG4iKTsKICAgICAgfSk7CiAgICAgIHJldHVybiBsb2dnZXI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk5vZGVKc1N5bmNIb3N0ID0gZXhwb3J0czIuTm9kZUpzQXN5bmNIb3N0ID0gdm9pZCAwOwogICAgdmFyIG5vZGVfZnNfMSA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKICAgIHZhciBub2RlX3BhdGhfMSA9IHJlcXVpcmUoIm5vZGU6cGF0aCIpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgYXN5bmMgZnVuY3Rpb24gZXhpc3RzKHBhdGgpIHsKICAgICAgdHJ5IHsKICAgICAgICBhd2FpdCBub2RlX2ZzXzEucHJvbWlzZXMuYWNjZXNzKHBhdGgsIG5vZGVfZnNfMS5jb25zdGFudHMuRl9PSyk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfQogICAgdmFyIEZTV2F0Y2hlcjsKICAgIGZ1bmN0aW9uIGxvYWRGU1dhdGNoZXIoKSB7CiAgICAgIGlmICghRlNXYXRjaGVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIEZTV2F0Y2hlciA9IHJlcXVpcmUoImNob2tpZGFyIikuRlNXYXRjaGVyOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlLmNvZGUgIT09ICJNT0RVTEVfTk9UX0ZPVU5EIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FzIG9mIGFuZ3VsYXItZGV2a2l0IHZlcnNpb24gOC4wLCB0aGUgImNob2tpZGFyIiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGluIG9yZGVyIHRvIHVzZSB3YXRjaCgpIGZlYXR1cmVzLicpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHZhciBOb2RlSnNBc3luY0hvc3QgPSBjbGFzcyB7CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IGZhbHNlIH07CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5ta2RpcigoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSkpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKCkgPT4gbm9kZV9mc18xLnByb21pc2VzLndyaXRlRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCksIG5ldyBVaW50OEFycmF5KGNvbnRlbnQpKSkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYnVmZmVyKSA9PiBuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcikpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkobm9kZV9mc18xLnByb21pc2VzLnJtKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMucmVuYW1lKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShmcm9tKSwgKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHRvKSkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkZGlyKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChuYW1lcykgPT4gbmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkoZXhpc3RzKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMuc3RhdCgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgX29wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGxvYWRGU1dhdGNoZXIoKTsKICAgICAgICAgIGNvbnN0IHdhdGNoZXIgPSBuZXcgRlNXYXRjaGVyKHsgcGVyc2lzdGVudDogdHJ1ZSB9KTsKICAgICAgICAgIHdhdGNoZXIuYWRkKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICB3YXRjaGVyLm9uKCJjaGFuZ2UiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNoYW5nZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigiYWRkIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkub24oInVubGluayIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgICAgdm9pZCB3YXRjaGVyLmNsb3NlKCk7CiAgICAgICAgICB9OwogICAgICAgIH0pLnBpcGUoKDAsIHJ4anNfMS5wdWJsaXNoKSgpLCAoMCwgcnhqc18xLnJlZkNvdW50KSgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5vZGVKc0FzeW5jSG9zdCA9IE5vZGVKc0FzeW5jSG9zdDsKICAgIHZhciBOb2RlSnNTeW5jSG9zdCA9IGNsYXNzIHsKICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgICgwLCBub2RlX2ZzXzEubWtkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7CiAgICAgICAgICAoMCwgbm9kZV9mc18xLndyaXRlRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgbmV3IFVpbnQ4QXJyYXkoY29udGVudCkpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgYnVmZmVyID0gKDAsIG5vZGVfZnNfMS5yZWFkRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICBvYnMubmV4dChuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcik7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ybVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCB0b1N5c3RlbVBhdGggPSAoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkodG8pOwogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ta2RpclN5bmMpKCgwLCBub2RlX3BhdGhfMS5kaXJuYW1lKSh0b1N5c3RlbVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTsKICAgICAgICAgICgwLCBub2RlX2ZzXzEucmVuYW1lU3luYykoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKGZyb20pLCB0b1N5c3RlbVBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgbmFtZXMgPSAoMCwgbm9kZV9mc18xLnJlYWRkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpOwogICAgICAgICAgb2JzLm5leHQobmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQoKDAsIG5vZGVfZnNfMS5leGlzdHNTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KCgwLCBub2RlX2ZzXzEuc3RhdFN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgd2F0Y2hpbmcuCiAgICAgIHdhdGNoKHBhdGgsIF9vcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBsb2FkRlNXYXRjaGVyKCk7CiAgICAgICAgICBjb25zdCB3YXRjaGVyID0gbmV3IEZTV2F0Y2hlcih7IHBlcnNpc3RlbnQ6IGZhbHNlIH0pOwogICAgICAgICAgd2F0Y2hlci5hZGQoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHBhdGgpKTsKICAgICAgICAgIHdhdGNoZXIub24oImNoYW5nZSIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pLm9uKCJhZGQiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigidW5saW5rIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICB2b2lkIHdhdGNoZXIuY2xvc2UoKTsKICAgICAgICAgIH07CiAgICAgICAgfSkucGlwZSgoMCwgcnhqc18xLnB1Ymxpc2gpKCksICgwLCByeGpzXzEucmVmQ291bnQpKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTm9kZUpzU3luY0hvc3QgPSBOb2RlSnNTeW5jSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9ub2RlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2NsaV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDMoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanMKdmFyIHJlcXVpcmVfYWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2FjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWN0aW9uTGlzdCA9IGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5pc0NvbnRlbnRBY3Rpb24gPSBpc0NvbnRlbnRBY3Rpb247CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBVbmtub3duQWN0aW9uRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKGFjdGlvbikgewogICAgICAgIHN1cGVyKGBVbmtub3duIGFjdGlvbjogIiR7YWN0aW9uLmtpbmR9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQWN0aW9uRXhjZXB0aW9uOwogICAgdmFyIF9pZCA9IDE7CiAgICB2YXIgQWN0aW9uTGlzdCA9IGNsYXNzIHsKICAgICAgX2FjdGlvbnMgPSBbXTsKICAgICAgX2FjdGlvbihhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goewogICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgaWQ6IF9pZCsrLAogICAgICAgICAgcGFyZW50OiB0aGlzLl9hY3Rpb25zW3RoaXMuX2FjdGlvbnMubGVuZ3RoIC0gMV0/LmlkID8/IDAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJjIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICBvdmVyd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJvIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgdG8pIHsKICAgICAgICB0aGlzLl9hY3Rpb24oeyBraW5kOiAiciIsIHBhdGgsIHRvIH0pOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogImQiLCBwYXRoIH0pOwogICAgICB9CiAgICAgIG9wdGltaXplKCkgewogICAgICAgIGNvbnN0IHRvQ3JlYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBjb25zdCB0b1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdG9PdmVyd3JpdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiB0aGlzLl9hY3Rpb25zKSB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBpZiAodG9DcmVhdGUuaGFzKGFjdGlvbi5wYXRoKSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRvT3ZlcndyaXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgdG9EZWxldGUuYWRkKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6IHsKICAgICAgICAgICAgICBjb25zdCBtYXliZUNyZWF0ZSA9IHRvQ3JlYXRlLmdldChhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgY29uc3QgbWF5YmVPdmVyd3JpdGUgPSB0b092ZXJ3cml0ZS5nZXQoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgIGlmIChtYXliZUNyZWF0ZSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24udG8sIG1heWJlQ3JlYXRlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG1heWJlT3ZlcndyaXRlKSB7CiAgICAgICAgICAgICAgICB0b092ZXJ3cml0ZS5kZWxldGUoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgICAgdG9PdmVyd3JpdGUuc2V0KGFjdGlvbi50bywgbWF5YmVPdmVyd3JpdGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBsZXQgbWF5YmVSZW5hbWUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgZm9yIChjb25zdCBbZnJvbSwgdG9dIG9mIHRvUmVuYW1lLmVudHJpZXMoKSkgewogICAgICAgICAgICAgICAgaWYgKHRvID09IGFjdGlvbi5wYXRoKSB7CiAgICAgICAgICAgICAgICAgIG1heWJlUmVuYW1lID0gZnJvbTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChtYXliZVJlbmFtZSkgewogICAgICAgICAgICAgICAgdG9SZW5hbWUuc2V0KG1heWJlUmVuYW1lLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIW1heWJlQ3JlYXRlICYmICFtYXliZU92ZXJ3cml0ZSAmJiAhbWF5YmVSZW5hbWUpIHsKICAgICAgICAgICAgICAgIHRvUmVuYW1lLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdGhpcy5fYWN0aW9ucyA9IFtdOwogICAgICAgIHRvRGVsZXRlLmZvckVhY2goKHgpID0+IHsKICAgICAgICAgIHRoaXMuZGVsZXRlKHgpOwogICAgICAgIH0pOwogICAgICAgIHRvUmVuYW1lLmZvckVhY2goKHRvLCBmcm9tKSA9PiB7CiAgICAgICAgICB0aGlzLnJlbmFtZShmcm9tLCB0byk7CiAgICAgICAgfSk7CiAgICAgICAgdG9DcmVhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgICAgdG9PdmVyd3JpdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcHVzaChhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goYWN0aW9uKTsKICAgICAgfQogICAgICBnZXQoaSkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zW2ldOwogICAgICB9CiAgICAgIGhhcyhhY3Rpb24pIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2FjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IGEgPSB0aGlzLl9hY3Rpb25zW2ldOwogICAgICAgICAgaWYgKGEuaWQgPT0gYWN0aW9uLmlkKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGEuaWQgPiBhY3Rpb24uaWQpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZmluZChwcmVkaWNhdGUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9ucy5maW5kKHByZWRpY2F0ZSkgfHwgbnVsbDsKICAgICAgfQogICAgICBmb3JFYWNoKGZuLCB0aGlzQXJnKSB7CiAgICAgICAgdGhpcy5fYWN0aW9ucy5mb3JFYWNoKGZuLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQgbGVuZ3RoKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zLmxlbmd0aDsKICAgICAgfQogICAgICBbU3ltYm9sLml0ZXJhdG9yXSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1tTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BY3Rpb25MaXN0ID0gQWN0aW9uTGlzdDsKICAgIGZ1bmN0aW9uIGlzQ29udGVudEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIGFjdGlvbi5raW5kID09ICJjIiB8fCBhY3Rpb24ua2luZCA9PSAibyI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL3NpbmsuanMKdmFyIHJlcXVpcmVfc2luayA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVTaW5rQmFzZSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgYWN0aW9uXzEgPSByZXF1aXJlX2FjdGlvbigpOwogICAgdmFyIE5vb3AgPSBmdW5jdGlvbigpIHsKICAgIH07CiAgICB2YXIgU2ltcGxlU2lua0Jhc2UgPSBjbGFzcyB7CiAgICAgIHByZUNvbW1pdEFjdGlvbiA9IE5vb3A7CiAgICAgIHBvc3RDb21taXRBY3Rpb24gPSBOb29wOwogICAgICBwcmVDb21taXQgPSBOb29wOwogICAgICBwb3N0Q29tbWl0ID0gTm9vcDsKICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVPdmVyd3JpdGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24ucGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKGIpID0+IHsKICAgICAgICAgIGlmICghYikgewogICAgICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoIWIpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihhY3Rpb24ucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEubWVyZ2VNYXApKCgpID0+IHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24udG8pKSwgKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi50byk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIF92YWxpZGF0ZURlbGV0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWxlRXhpc3RzKGFjdGlvbi5wYXRoKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYikgPT4gewogICAgICAgICAgaWYgKCFiKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oYWN0aW9uLnBhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICB2YWxpZGF0ZVNpbmdsZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlT3ZlcndyaXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJyIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRGVsZXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgYWN0aW9uXzEuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbihhY3Rpb24pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnZhbGlkYXRlU2luZ2xlQWN0aW9uKGFjdGlvbiksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHsKICAgICAgICAgIGxldCBjb21taXR0ZWQgPSBudWxsOwogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBjb21taXR0ZWQgPSB0aGlzLl9vdmVyd3JpdGVGaWxlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIGNvbW1pdHRlZCA9IHRoaXMuX2NyZWF0ZUZpbGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fcmVuYW1lRmlsZShhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fZGVsZXRlRmlsZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29tbWl0dGVkKSB7CiAgICAgICAgICAgIGNvbW1pdHRlZC5zdWJzY3JpYmUob2JzZXJ2ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKTsKICAgICAgfQogICAgICBjb21taXQodHJlZSkgewogICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoMCwgcnhqc18xLmZyb20pKHRyZWUuYWN0aW9ucyk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnByZUNvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpLCAoMCwgcnhqc18xLmRlZmVyKSgoKSA9PiBhY3Rpb25zKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBjb25zdCBtYXliZUFjdGlvbiA9IHRoaXMucHJlQ29tbWl0QWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKG1heWJlQWN0aW9uKSB8fCBpc1Byb21pc2VMaWtlKG1heWJlQWN0aW9uKSkgewogICAgICAgICAgICByZXR1cm4gbWF5YmVBY3Rpb247CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobWF5YmVBY3Rpb24gfHwgYWN0aW9uKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5jb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKS5waXBlKCgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKShhY3Rpb24pKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHRoaXMucG9zdENvbW1pdEFjdGlvbihhY3Rpb24pIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMuX2RvbmUoKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMucG9zdENvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpLCAoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZVNpbmtCYXNlID0gU2ltcGxlU2lua0Jhc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKHZhbHVlKSB7CiAgICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAiZnVuY3Rpb24iOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3Q0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc2lua18xID0gcmVxdWlyZV9zaW5rKCk7CiAgICB2YXIgSG9zdFNpbmsgPSBjbGFzcyBleHRlbmRzIHNpbmtfMS5TaW1wbGVTaW5rQmFzZSB7CiAgICAgIF9ob3N0OwogICAgICBfZm9yY2U7CiAgICAgIF9maWxlc1RvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX2ZpbGVzVG9SZW5hbWUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb0NyZWF0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvVXBkYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF9mb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fZm9yY2UgPSBfZm9yY2U7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl9mb3JjZSA/IHJ4anNfMS5FTVBUWSA6IHN1cGVyLl92YWxpZGF0ZUNyZWF0ZUFjdGlvbihhY3Rpb24pOwogICAgICB9CiAgICAgIF92YWxpZGF0ZUZpbGVFeGlzdHMocCkgewogICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhwKSB8fCB0aGlzLl9maWxlc1RvVXBkYXRlLmhhcyhwKSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocCkpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgW2Zyb20sIHRvXSBvZiB0aGlzLl9maWxlc1RvUmVuYW1lLnZhbHVlcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHApIHsKICAgICAgICAgICAgY2FzZSBmcm9tOgogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgICAgIGNhc2UgdG86CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5leGlzdHMocCk7CiAgICAgIH0KICAgICAgX292ZXJ3cml0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX2NyZWF0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX3JlbmFtZUZpbGUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmFkZChbZnJvbSwgdG9dKTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kZWxldGVGaWxlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1VwZGF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kb25lKCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb0RlbGV0ZS52YWx1ZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChwYXRoKSA9PiB0aGlzLl9ob3N0LmRlbGV0ZShwYXRoKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvUmVuYW1lLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbXywgW3BhdGgsIHRvXV0pID0+IHRoaXMuX2hvc3QucmVuYW1lKHBhdGgsIHRvKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvQ3JlYXRlLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbcGF0aCwgYnVmZmVyXSkgPT4gdGhpcy5faG9zdC53cml0ZShwYXRoLCBidWZmZXIpKSksICgwLCByeGpzXzEuZnJvbSkoWy4uLnRoaXMuX2ZpbGVzVG9VcGRhdGUuZW50cmllcygpXSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKFtwYXRoLCBidWZmZXJdKSA9PiB0aGlzLl9ob3N0LndyaXRlKHBhdGgsIGJ1ZmZlcikpKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKCkgPT4gewogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gSG9zdFNpbms7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qcwp2YXIgcmVxdWlyZV9kcnlydW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3NpbmsvZHJ5cnVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5EcnlSdW5TaW5rID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgbm9kZV8xID0gcmVxdWlyZV9ub2RlKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3Q0KCk7CiAgICB2YXIgRHJ5UnVuU2luayA9IGNsYXNzIGV4dGVuZHMgaG9zdF8xLkhvc3RTaW5rIHsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvblNldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHJlcG9ydGVyID0gdGhpcy5fc3ViamVjdC5hc09ic2VydmFibGUoKTsKICAgICAgY29uc3RydWN0b3IoaG9zdCwgZm9yY2UgPSBmYWxzZSkgewogICAgICAgIHN1cGVyKHR5cGVvZiBob3N0ID09ICJzdHJpbmciID8gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU2NvcGVkSG9zdChuZXcgbm9kZV8xLk5vZGVKc1N5bmNIb3N0KCksICgwLCBjb3JlXzEubm9ybWFsaXplKShob3N0KSkgOiBob3N0LCBmb3JjZSk7CiAgICAgIH0KICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuYWRkKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmFkZChwYXRoKTsKICAgICAgfQogICAgICBfZG9uZSgpIHsKICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmZvckVhY2goKHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7CiAgICAgICAgICAgIGtpbmQ6ICJlcnJvciIsCiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiYWxyZWFkeUV4aXN0IiwKICAgICAgICAgICAgcGF0aAogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvblNldC5mb3JFYWNoKChwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoewogICAgICAgICAgICBraW5kOiAiZXJyb3IiLAogICAgICAgICAgICBkZXNjcmlwdGlvbjogImRvZXNOb3RFeGlzdCIsCiAgICAgICAgICAgIHBhdGgKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZm9yRWFjaCgocGF0aCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBbZnJvbV0gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZSkgewogICAgICAgICAgICBpZiAoZnJvbSA9PSBwYXRoKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiZGVsZXRlIiwgcGF0aCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmZvckVhY2goKFtwYXRoLCB0b10pID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJyZW5hbWUiLCBwYXRoLCB0byB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIGZvciAoY29uc3QgWywgdG9dIG9mIHRoaXMuX2ZpbGVzVG9SZW5hbWUpIHsKICAgICAgICAgICAgaWYgKHRvID09IHBhdGgpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSB8fCB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiY3JlYXRlIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvVXBkYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJ1cGRhdGUiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkRyeVJ1blNpbmsgPSBEcnlSdW5TaW5rOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qcwp2YXIgcmVxdWlyZV9iYXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9iYXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CYXNlV29ya2Zsb3cgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGVuZ2luZV8xID0gcmVxdWlyZV9lbmdpbmUyKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBmb3JtYXRzXzEgPSByZXF1aXJlX2Zvcm1hdHMyKCk7CiAgICB2YXIgZHJ5cnVuXzEgPSByZXF1aXJlX2RyeXJ1bigpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgQmFzZVdvcmtmbG93ID0gY2xhc3MgewogICAgICBfZW5naW5lOwogICAgICBfZW5naW5lSG9zdDsKICAgICAgX3JlZ2lzdHJ5OwogICAgICBfaG9zdDsKICAgICAgX3JlcG9ydGVyID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgIF9saWZlQ3ljbGUgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9mb3JjZTsKICAgICAgX2RyeVJ1bjsKICAgICAgY29uc3RydWN0b3Iob3B0aW9ucykgewogICAgICAgIHRoaXMuX2hvc3QgPSBvcHRpb25zLmhvc3Q7CiAgICAgICAgdGhpcy5fZW5naW5lSG9zdCA9IG9wdGlvbnMuZW5naW5lSG9zdDsKICAgICAgICBpZiAob3B0aW9ucy5yZWdpc3RyeSkgewogICAgICAgICAgdGhpcy5fcmVnaXN0cnkgPSBvcHRpb25zLnJlZ2lzdHJ5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9yZWdpc3RyeSA9IG5ldyBjb3JlXzEuc2NoZW1hLkNvcmVTY2hlbWFSZWdpc3RyeShmb3JtYXRzXzEuc3RhbmRhcmRGb3JtYXRzKTsKICAgICAgICAgIHRoaXMuX3JlZ2lzdHJ5LmFkZFBvc3RUcmFuc2Zvcm0oY29yZV8xLnNjaGVtYS50cmFuc2Zvcm1zLmFkZFVuZGVmaW5lZERlZmF1bHRzKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZW5naW5lID0gbmV3IGVuZ2luZV8xLlNjaGVtYXRpY0VuZ2luZSh0aGlzLl9lbmdpbmVIb3N0LCB0aGlzKTsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gW107CiAgICAgICAgdGhpcy5fZm9yY2UgPSBvcHRpb25zLmZvcmNlIHx8IGZhbHNlOwogICAgICAgIHRoaXMuX2RyeVJ1biA9IG9wdGlvbnMuZHJ5UnVuIHx8IGZhbHNlOwogICAgICB9CiAgICAgIGdldCBjb250ZXh0KCkgewogICAgICAgIGNvbnN0IG1heWJlQ29udGV4dCA9IHRoaXMuX2NvbnRleHRbdGhpcy5fY29udGV4dC5sZW5ndGggLSAxXTsKICAgICAgICBpZiAoIW1heWJlQ29udGV4dCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IGNvbnRleHQgd2hlbiB3b3JrZmxvdyBpcyBub3QgZXhlY3V0aW5nLi4uIik7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUNvbnRleHQ7CiAgICAgIH0KICAgICAgZ2V0IGVuZ2luZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lOwogICAgICB9CiAgICAgIGdldCBlbmdpbmVIb3N0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmVIb3N0OwogICAgICB9CiAgICAgIGdldCByZWdpc3RyeSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnk7CiAgICAgIH0KICAgICAgZ2V0IHJlcG9ydGVyKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRlci5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICBnZXQgbGlmZUN5Y2xlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9saWZlQ3ljbGUuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgX2NyZWF0ZVNpbmtzKCkgewogICAgICAgIGxldCBlcnJvciA9IGZhbHNlOwogICAgICAgIGNvbnN0IGRyeVJ1blNpbmsgPSBuZXcgZHJ5cnVuXzEuRHJ5UnVuU2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSk7CiAgICAgICAgY29uc3QgZHJ5UnVuU3Vic2NyaWJlciA9IGRyeVJ1blNpbmsucmVwb3J0ZXIuc3Vic2NyaWJlKChldmVudCkgPT4gewogICAgICAgICAgdGhpcy5fcmVwb3J0ZXIubmV4dChldmVudCk7CiAgICAgICAgICBlcnJvciA9IGVycm9yIHx8IGV2ZW50LmtpbmQgPT0gImVycm9yIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgZHJ5UnVuU2luaywKICAgICAgICAgIC8vIEFkZCBhIGN1c3RvbSBzaW5rIHRoYXQgY2xlYW4gb3Vyc2VsdmVzIGFuZCB0aHJvd3MgYW4gZXJyb3IgaWYgYW4gZXJyb3IgaGFwcGVuZWQuCiAgICAgICAgICB7CiAgICAgICAgICAgIGNvbW1pdCgpIHsKICAgICAgICAgICAgICBkcnlSdW5TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24oKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgLy8gT25seSBhZGQgYSBIb3N0U2luayBpZiB0aGlzIGlzIG5vdCBhIGRyeVJ1bi4KICAgICAgICAgIC4uLiF0aGlzLl9kcnlSdW4gPyBbbmV3IGhvc3RfMS5Ib3N0U2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSldIDogW10KICAgICAgICBdOwogICAgICB9CiAgICAgIGV4ZWN1dGUob3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhcmVudENvbnRleHQgPSB0aGlzLl9jb250ZXh0W3RoaXMuX2NvbnRleHQubGVuZ3RoIC0gMV07CiAgICAgICAgaWYgKCFwYXJlbnRDb250ZXh0KSB7CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJzdGFydCIgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29sbGVjdGlvbihvcHRpb25zLmNvbGxlY3Rpb24pOwogICAgICAgIGNvbnN0IGFsbG93UHJpdmF0ZSA9IG9wdGlvbnMuYWxsb3dQcml2YXRlIHx8IHBhcmVudENvbnRleHQgJiYgcGFyZW50Q29udGV4dC5jb2xsZWN0aW9uID09PSBvcHRpb25zLmNvbGxlY3Rpb247CiAgICAgICAgY29uc3Qgc2NoZW1hdGljID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMob3B0aW9ucy5zY2hlbWF0aWMsIGFsbG93UHJpdmF0ZSk7CiAgICAgICAgY29uc3Qgc2lua3MgPSB0aGlzLl9jcmVhdGVTaW5rcygpOwogICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LXN0YXJ0IiB9KTsKICAgICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgICAgLi4ub3B0aW9ucywKICAgICAgICAgIGRlYnVnOiBvcHRpb25zLmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlciB8fCBwYXJlbnRDb250ZXh0ICYmIHBhcmVudENvbnRleHQubG9nZ2VyIHx8IG5ldyBjb3JlXzEubG9nZ2luZy5OdWxsTG9nZ2VyKCksCiAgICAgICAgICBwYXJlbnRDb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9jb250ZXh0LnB1c2goY29udGV4dCk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYy5jYWxsKG9wdGlvbnMub3B0aW9ucywgKDAsIHJ4anNfMS5vZikobmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKHRoaXMuX2hvc3QpKSwgeyBsb2dnZXI6IGNvbnRleHQubG9nZ2VyIH0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh0cmVlKSA9PiB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoc2lua3MpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChzaW5rKSA9PiBzaW5rLmNvbW1pdCh0cmVlKSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh0cmVlKSk7CiAgICAgICAgfSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoKSA9PiB7CiAgICAgICAgICBpZiAodGhpcy5fZHJ5UnVuKSB7CiAgICAgICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJwb3N0LXRhc2tzLXN0YXJ0IiB9KTsKICAgICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuZXhlY3V0ZVBvc3RUYXNrcygpLnBpcGUoKDAsIHJ4anNfMS50YXApKHsgY29tcGxldGU6ICgpID0+IHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogInBvc3QtdGFza3MtZW5kIiB9KSB9KSwgKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodm9pZCAwKSwgKDAsIHJ4anNfMS5sYXN0KSgpKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS50YXApKHsKICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LWVuZCIgfSk7CiAgICAgICAgICAgIHRoaXMuX2NvbnRleHQucG9wKCk7CiAgICAgICAgICAgIGlmICh0aGlzLl9jb250ZXh0Lmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgdGhpcy5fbGlmZUN5Y2xlLm5leHQoeyBraW5kOiAiZW5kIiB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkJhc2VXb3JrZmxvdyA9IEJhc2VXb3JrZmxvdzsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2U1ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtmbG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYmFzZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2U1KCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMKdmFyIHJlcXVpcmVfYmFzZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNvdXJjZSA9IHNvdXJjZTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5jaGFpbiA9IGNoYWluMjsKICAgIGV4cG9ydHMyLmFwcGx5ID0gYXBwbHkzOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICAgIGV4cG9ydHMyLm5vb3AgPSBub29wOwogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogICAgZXhwb3J0czIuYXNTb3VyY2UgPSBhc1NvdXJjZTsKICAgIGV4cG9ydHMyLmJyYW5jaEFuZE1lcmdlID0gYnJhbmNoQW5kTWVyZ2U7CiAgICBleHBvcnRzMi53aGVuID0gd2hlbjsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbkFwcGx5TWVyZ2UgPSBwYXJ0aXRpb25BcHBseU1lcmdlOwogICAgZXhwb3J0czIuZm9yRWFjaCA9IGZvckVhY2g7CiAgICBleHBvcnRzMi5jb21wb3NlRmlsZU9wZXJhdG9ycyA9IGNvbXBvc2VGaWxlT3BlcmF0b3JzOwogICAgZXhwb3J0czIuYXBwbHlUb1N1YnRyZWUgPSBhcHBseVRvU3VidHJlZTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICBmdW5jdGlvbiBzb3VyY2UodHJlZSkgewogICAgICByZXR1cm4gKCkgPT4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgfQogICAgZnVuY3Rpb24gY2hhaW4yKHJ1bGVzKSB7CiAgICAgIHJldHVybiBhc3luYyAoaW5pdGlhbFRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBsZXQgaW50ZXJtZWRpYXRlVHJlZTsKICAgICAgICBpZiAoU3ltYm9sLmFzeW5jSXRlcmF0b3IgaW4gcnVsZXMpIHsKICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAoKSA9PiBpbnRlcm1lZGlhdGVUcmVlOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXBwbHkzKHNvdXJjZTIsIHJ1bGVzKSB7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgKDAsIGNhbGxfMS5jYWxsU291cmNlKShzb3VyY2UyLCBjb250ZXh0KSwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKHNvdXJjZTIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxTb3VyY2UpKHNvdXJjZTIsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzb3VyY2VUcmVlKSA9PiB0cmVlLm1lcmdlKHNvdXJjZVRyZWUsIHN0cmF0ZWd5IHx8IGNvbnRleHQuc3RyYXRlZ3kpKSwgKDAsIHJ4anNfMS5tYXBUbykodHJlZSkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gbm9vcCgpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuICh0cmVlKSA9PiB7CiAgICAgICAgaWYgKGhvc3RfdHJlZV8xLkhvc3RUcmVlLmlzSG9zdFRyZWUodHJlZSkpIHsKICAgICAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzU291cmNlKHJ1bGUpIHsKICAgICAgcmV0dXJuIChjb250ZXh0KSA9PiAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlLCAoMCwgc3RhdGljXzEuZW1wdHkpKCksIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoQW5kTWVyZ2UocnVsZSwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgcmV0dXJuICh0cmVlLCBjb250ZXh0KSA9PiB7CiAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHJ1bGUsIHRyZWUuYnJhbmNoKCksIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChicmFuY2gpID0+IHRyZWUubWVyZ2UoYnJhbmNoLCBzdHJhdGVneSB8fCBjb250ZXh0LnN0cmF0ZWd5KSksICgwLCByeGpzXzEubWFwVG8pKHRyZWUpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHdoZW4ocHJlZGljYXRlLCBvcGVyYXRvcikgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKHByZWRpY2F0ZShlbnRyeS5wYXRoLCBlbnRyeSkpIHsKICAgICAgICAgIHJldHVybiBvcGVyYXRvcihlbnRyeSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb25BcHBseU1lcmdlKHByZWRpY2F0ZSwgcnVsZVllcywgcnVsZU5vKSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IFt5ZXMsIG5vXSA9ICgwLCBzdGF0aWNfMS5wYXJ0aXRpb24pKHRyZWUsIHByZWRpY2F0ZSk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlWWVzLCB5ZXMsIGNvbnRleHQpLCAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlTm8gfHwgbm9vcCgpLCBubywgY29udGV4dCkpLnBpcGUoKDAsIHJ4anNfMS50b0FycmF5KSgpLCAoMCwgcnhqc18xLm1hcCkoKFt5ZXNUcmVlLCBub1RyZWVdKSA9PiB7CiAgICAgICAgICB5ZXNUcmVlLm1lcmdlKG5vVHJlZSwgY29udGV4dC5zdHJhdGVneSk7CiAgICAgICAgICByZXR1cm4geWVzVHJlZTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBmb3JFYWNoKG9wZXJhdG9yKSB7CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIHRyZWUudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5ld0VudHJ5ID0gb3BlcmF0b3IoZW50cnkpOwogICAgICAgICAgaWYgKG5ld0VudHJ5ID09PSBlbnRyeSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV3RW50cnkgPT09IG51bGwpIHsKICAgICAgICAgICAgdHJlZS5kZWxldGUocGF0aCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChuZXdFbnRyeS5wYXRoICE9IHBhdGgpIHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgbmV3RW50cnkucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5ld0VudHJ5LmNvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgIHRyZWUub3ZlcndyaXRlKG5ld0VudHJ5LnBhdGgsIG5ld0VudHJ5LmNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gY29tcG9zZUZpbGVPcGVyYXRvcnMob3BlcmF0b3JzKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgY3VycmVudCA9IGVudHJ5OwogICAgICAgIGZvciAoY29uc3Qgb3Agb2Ygb3BlcmF0b3JzKSB7CiAgICAgICAgICBjdXJyZW50ID0gb3AoY3VycmVudCk7CiAgICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVRvU3VidHJlZShwYXRoLCBydWxlcykgewogICAgICByZXR1cm4gKHRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBzY29wZWQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBwYXRoKTsKICAgICAgICByZXR1cm4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgc2NvcGVkLCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgocmVzdWx0KSA9PiB7CiAgICAgICAgICBpZiAocmVzdWx0ID09PSBzY29wZWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbignT3JpZ2luYWwgdHJlZSBtdXN0IGJlIHJldHVybmVkIGZyb20gYWxsIHJ1bGVzIHdoZW4gdXNpbmcgImFwcGx5VG9TdWJ0cmVlIi4nKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9tb3ZlLmpzCnZhciByZXF1aXJlX21vdmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1vdmUgPSBtb3ZlMzsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGJhc2VfMSA9IHJlcXVpcmVfYmFzZTIoKTsKICAgIGZ1bmN0aW9uIG1vdmUzKGZyb20sIHRvKSB7CiAgICAgIGlmICh0byA9PT0gdm9pZCAwKSB7CiAgICAgICAgdG8gPSBmcm9tOwogICAgICAgIGZyb20gPSAiLyI7CiAgICAgIH0KICAgICAgY29uc3QgZnJvbVBhdGggPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgZnJvbSk7CiAgICAgIGNvbnN0IHRvUGF0aCA9ICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyB0byk7CiAgICAgIGlmIChmcm9tUGF0aCA9PT0gdG9QYXRoKSB7CiAgICAgICAgcmV0dXJuIGJhc2VfMS5ub29wOwogICAgICB9CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIGlmICh0cmVlLmV4aXN0cyhmcm9tUGF0aCkpIHsKICAgICAgICAgIHRyZWUucmVuYW1lKGZyb21QYXRoLCB0b1BhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0cmVlLmdldERpcihmcm9tUGF0aCkudmlzaXQoKHBhdGgpID0+IHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgKDAsIGNvcmVfMS5qb2luKSh0b1BhdGgsIHBhdGguc2xpY2UoZnJvbVBhdGgubGVuZ3RoKSkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzCnZhciByZXF1aXJlX3JhbmRvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmYXVsdF8xOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIGZ1bmN0aW9uIGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgobCkgewogICAgICByZXR1cm4gbmV3IEFycmF5KGwpLmZpbGwoMCkubWFwKChfeCkgPT4gewogICAgICAgIHJldHVybiAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI2KV07CiAgICAgIH0pLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gcmFuZG9tKGZyb20sIHRvKSB7CiAgICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAodG8gLSBmcm9tKSkgKyBmcm9tOwogICAgfQogICAgZnVuY3Rpb24gZGVmYXVsdF8xKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICBjb25zdCByb290ID0gInJvb3QiIGluIG9wdGlvbnMgPyBvcHRpb25zLnJvb3QgOiAiLyI7CiAgICAgICAgY29uc3QgbWFwMiA9IG5ldyBob3N0X3RyZWVfMS5Ib3N0VHJlZSgpOwogICAgICAgIGNvbnN0IG5iRmlsZXMgPSAibXVsdGlGaWxlcyIgaW4gb3B0aW9ucyA/IHR5cGVvZiBvcHRpb25zLm11bHRpRmlsZXMgPT0gIm51bWJlciIgPyBvcHRpb25zLm11bHRpRmlsZXMgOiByYW5kb20oMiwgMTIpIDogMTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5iRmlsZXM7IGkrKykgewogICAgICAgICAgY29uc3QgcGF0aCA9ICJhL2IvYy9kL2UvZiIuc2xpY2UoTWF0aC5yYW5kb20oKSAqIDEwKTsKICAgICAgICAgIGNvbnN0IGZpbGVOYW1lID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgyMCk7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgxMDApOwogICAgICAgICAgbWFwMi5jcmVhdGUocm9vdCArICIvIiArIHBhdGggKyAiLyIgKyBmaWxlTmFtZSwgY29udGVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvc2NoZW1hdGljLmpzCnZhciByZXF1aXJlX3NjaGVtYXRpYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZXJuYWxTY2hlbWF0aWMgPSBleHRlcm5hbFNjaGVtYXRpYzsKICAgIGV4cG9ydHMyLnNjaGVtYXRpYyA9IHNjaGVtYXRpYzsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgZnVuY3Rpb24gZXh0ZXJuYWxTY2hlbWF0aWMoY29sbGVjdGlvbk5hbWUsIHNjaGVtYXRpY05hbWUsIG9wdGlvbnMsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgcmV0dXJuIChpbnB1dCwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb250ZXh0LmVuZ2luZS5jcmVhdGVDb2xsZWN0aW9uKGNvbGxlY3Rpb25OYW1lLCBjb250ZXh0LnNjaGVtYXRpYy5jb2xsZWN0aW9uKTsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYXRpYyhzY2hlbWF0aWNOYW1lLCBvcHRpb25zLCBleGVjdXRpb25PcHRpb25zKSB7CiAgICAgIHJldHVybiAoaW5wdXQsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29udGV4dC5zY2hlbWF0aWMuY29sbGVjdGlvbjsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzCnZhciByZXF1aXJlX3RlbXBsYXRlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdGVtcGxhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkludmFsaWRQaXBlRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93blBpcGVFeGNlcHRpb24gPSBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmFwcGx5Q29udGVudFRlbXBsYXRlID0gYXBwbHlDb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5jb250ZW50VGVtcGxhdGUgPSBjb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5hcHBseVBhdGhUZW1wbGF0ZSA9IGFwcGx5UGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucGF0aFRlbXBsYXRlID0gcGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucmVuYW1lVGVtcGxhdGVGaWxlcyA9IHJlbmFtZVRlbXBsYXRlRmlsZXM7CiAgICBleHBvcnRzMi50ZW1wbGF0ZSA9IHRlbXBsYXRlMzsKICAgIGV4cG9ydHMyLmFwcGx5VGVtcGxhdGVzID0gYXBwbHlUZW1wbGF0ZXM7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgYmFzZV8xID0gcmVxdWlyZV9iYXNlMigpOwogICAgZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUgPSAvXC50ZW1wbGF0ZSQvOwogICAgdmFyIE9wdGlvbklzTm90RGVmaW5lZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYE9wdGlvbiAiJHtuYW1lfSIgaXMgbm90IGRlZmluZWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb247CiAgICB2YXIgVW5rbm93blBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBub3QgZGVmaW5lZC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25QaXBlRXhjZXB0aW9uID0gVW5rbm93blBpcGVFeGNlcHRpb247CiAgICB2YXIgSW52YWxpZFBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBpbnZhbGlkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFBpcGVFeGNlcHRpb24gPSBJbnZhbGlkUGlwZUV4Y2VwdGlvbjsKICAgIHZhciBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCJ1dGYtOCIsIHsgZmF0YWw6IHRydWUgfSk7CiAgICBmdW5jdGlvbiBhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGVudHJ5OwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb25zdCBkZWNvZGVkQ29udGVudCA9IGRlY29kZXIuZGVjb2RlKGNvbnRlbnQpLnJlcGxhY2UoL1xyP1xuL2csIG5vZGVfb3NfMS5FT0wpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20oKDAsIGNvcmVfMS50ZW1wbGF0ZSkoZGVjb2RlZENvbnRlbnQsIHt9KShvcHRpb25zKSkKICAgICAgICAgIH07CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFwcGx5UGF0aFRlbXBsYXRlKGRhdGEsIG9wdGlvbnMgPSB7CiAgICAgIGludGVycG9sYXRpb25TdGFydDogIl9fIiwKICAgICAgaW50ZXJwb2xhdGlvbkVuZDogIl9fIiwKICAgICAgcGlwZVNlcGFyYXRvcjogIkAiCiAgICB9KSB7CiAgICAgIGNvbnN0IGlzID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uU3RhcnQ7CiAgICAgIGNvbnN0IGllID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uRW5kOwogICAgICBjb25zdCBpc0wgPSBpcy5sZW5ndGg7CiAgICAgIGNvbnN0IGllTCA9IGllLmxlbmd0aDsKICAgICAgcmV0dXJuIChlbnRyeSkgPT4gewogICAgICAgIGxldCBwYXRoID0gZW50cnkucGF0aDsKICAgICAgICBjb25zdCBjb250ZW50ID0gZW50cnkuY29udGVudDsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHBhdGg7CiAgICAgICAgbGV0IHN0YXJ0ID0gcGF0aC5pbmRleE9mKGlzKTsKICAgICAgICBsZXQgZW5kID0gcGF0aC5pbmRleE9mKGllLCBzdGFydCArIGlzTCArIDEpOwogICAgICAgIHdoaWxlIChzdGFydCAhPSAtMSAmJiBlbmQgIT0gLTEpIHsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gcGF0aC5zdWJzdHJpbmcoc3RhcnQgKyBpc0wsIGVuZCk7CiAgICAgICAgICBsZXQgcmVwbGFjZW1lbnQgPSBkYXRhW21hdGNoXTsKICAgICAgICAgIGlmICghb3B0aW9ucy5waXBlU2VwYXJhdG9yKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnQuY2FsbChkYXRhLCBvcmlnaW5hbCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uKG1hdGNoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgW25hbWUsIC4uLnBpcGVzXSA9IG1hdGNoLnNwbGl0KG9wdGlvbnMucGlwZVNlcGFyYXRvcik7CiAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gZGF0YVtuYW1lXTsKICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlbWVudCA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudC5jYWxsKGRhdGEsIG9yaWdpbmFsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24obmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSBwaXBlcy5yZWR1Y2UoKGFjYywgcGlwZSkgPT4gewogICAgICAgICAgICAgIGlmICghcGlwZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFjYzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKCEocGlwZSBpbiBkYXRhKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25QaXBlRXhjZXB0aW9uKHBpcGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBwaXBlRm4gPSBkYXRhW3BpcGVdOwogICAgICAgICAgICAgIGlmICh0eXBlb2YgcGlwZUZuICE9ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGlwZUV4Y2VwdGlvbihwaXBlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuICIiICsgcGlwZUZuKGFjYyk7CiAgICAgICAgICAgIH0sICIiICsgcmVwbGFjZW1lbnQpOwogICAgICAgICAgfQogICAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDAsIHN0YXJ0KSArIHJlcGxhY2VtZW50ICsgcGF0aC5zdWJzdHJpbmcoZW5kICsgaWVMKTsKICAgICAgICAgIHN0YXJ0ID0gcGF0aC5pbmRleE9mKG9wdGlvbnMuaW50ZXJwb2xhdGlvblN0YXJ0KTsKICAgICAgICAgIGVuZCA9IHBhdGguaW5kZXhPZihvcHRpb25zLmludGVycG9sYXRpb25FbmQsIHN0YXJ0ICsgaXNMICsgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7IHBhdGg6ICgwLCBjb3JlXzEubm9ybWFsaXplKShwYXRoKSwgY29udGVudCB9OwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gcGF0aFRlbXBsYXRlKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoYXBwbHlQYXRoVGVtcGxhdGUob3B0aW9ucykpOwogICAgfQogICAgZnVuY3Rpb24gcmVuYW1lVGVtcGxhdGVGaWxlcygpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKGVudHJ5LnBhdGgubWF0Y2goZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUpKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBjb250ZW50OiBlbnRyeS5jb250ZW50LAogICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikpCiAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlMyhvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmNoYWluKShbCiAgICAgICAgY29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIEZvcmNlIGNhc3QgdG8gUGF0aFRlbXBsYXRlRGF0YS4gV2UgbmVlZCB0aGUgdHlwZSBmb3IgdGhlIGFjdHVhbCBwYXRoVGVtcGxhdGUoKSBjYWxsLAogICAgICAgIC8vIGJ1dCBpbiB0aGlzIGNhc2Ugd2UgY2Fubm90IGRvIGFueXRoaW5nIGFzIGNvbnRlbnRUZW1wbGF0ZSBhcmUgbW9yZSBwZXJtaXNzaXZlLgogICAgICAgIC8vIFNpbmNlIHZhbHVlcyBhcmUgY29lcmNlZCB0byBzdHJpbmdzIGluIFBhdGhUZW1wbGF0ZXMgaXQgd2lsbCBiZSBmaW5lIGluIHRoZSBlbmQuCiAgICAgICAgcGF0aFRlbXBsYXRlKG9wdGlvbnMpCiAgICAgIF0pOwogICAgfQogICAgZnVuY3Rpb24gYXBwbHlUZW1wbGF0ZXMob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5mb3JFYWNoKSgoMCwgYmFzZV8xLndoZW4pKChwYXRoKSA9PiBwYXRoLmVuZHNXaXRoKCIudGVtcGxhdGUiKSwgKDAsIGJhc2VfMS5jb21wb3NlRmlsZU9wZXJhdG9ycykoWwogICAgICAgIGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIFNlZSBhYm92ZSBmb3IgdGhpcyB3ZWlyZCBjYXN0LgogICAgICAgIGFwcGx5UGF0aFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIChlbnRyeSkgPT4gewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgY29udGVudDogZW50cnkuY29udGVudCwKICAgICAgICAgICAgcGF0aDogZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICBdKSkpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzCnZhciByZXF1aXJlX3VybCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi51cmwgPSB1cmwzOwogICAgdmFyIHVybF8xID0gcmVxdWlyZSgidXJsIik7CiAgICBmdW5jdGlvbiB1cmwzKHVybFN0cmluZykgewogICAgICBjb25zdCB1cmw0ID0gKDAsIHVybF8xLnBhcnNlKSh1cmxTdHJpbmcpOwogICAgICByZXR1cm4gKGNvbnRleHQpID0+IGNvbnRleHQuZW5naW5lLmNyZWF0ZVNvdXJjZUZyb21VcmwodXJsNCwgY29udGV4dCkoY29udGV4dCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlUcmVlID0gdm9pZCAwOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBFbXB0eVRyZWUgPSBjbGFzcyBleHRlbmRzIGhvc3RfdHJlZV8xLkhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkVtcHR5VHJlZSA9IEVtcHR5VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UcmVlID0gZXhwb3J0czIud29ya2Zsb3cgPSBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIuZm9ybWF0cyA9IGV4cG9ydHMyLlNjaGVtYXRpY3NFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ3MiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEuc3RyaW5nczsKICAgIH0gfSk7CiAgICB2YXIgZm9ybWF0cyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2Zvcm1hdHMyKCkpOwogICAgZXhwb3J0czIuZm9ybWF0cyA9IGZvcm1hdHM7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgd29ya2Zsb3cgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV93b3JrZmxvdygpKTsKICAgIGV4cG9ydHMyLndvcmtmbG93ID0gd29ya2Zsb3c7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjaGVtYXRpY3NFeGNlcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGNlcHRpb25fMS5TY2hlbWF0aWNzRXhjZXB0aW9uOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FjdGlvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbmdpbmUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2V4Y2VwdGlvbjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlMygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9iYXNlMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jYWxsKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21vdmUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmFuZG9tKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYzIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3VybCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kZWxlZ2F0ZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbXB0eTMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdF90cmVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kcnlydW4oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2luaygpLCBleHBvcnRzMik7CiAgICBleHBvcnRzMi5UcmVlID0gewogICAgICBlbXB0eSgpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgICB9LAogICAgICBicmFuY2godHJlZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEuYnJhbmNoKSh0cmVlKTsKICAgICAgfSwKICAgICAgbWVyZ2UodHJlZSwgb3RoZXIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgICAgcmV0dXJuICgwLCBzdGF0aWNfMS5tZXJnZSkodHJlZSwgb3RoZXIsIHN0cmF0ZWd5KTsKICAgICAgfSwKICAgICAgcGFydGl0aW9uKHRyZWUsIHByZWRpY2F0ZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEucGFydGl0aW9uKSh0cmVlLCBwcmVkaWNhdGUpOwogICAgICB9LAogICAgICBvcHRpbWl6ZSh0cmVlKSB7CiAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3N0cmlwLWpzb24tY29tbWVudHMtbnBtLTMuMS4xLWRjYjIzMjQ4MjMtMTAuemlwL25vZGVfbW9kdWxlcy9zdHJpcC1qc29uLWNvbW1lbnRzL2luZGV4LmpzCnZhciByZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc3RyaXAtanNvbi1jb21tZW50cy1ucG0tMy4xLjEtZGNiMjMyNDgyMy0xMC56aXAvbm9kZV9tb2R1bGVzL3N0cmlwLWpzb24tY29tbWVudHMvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2luZ2xlQ29tbWVudCA9IFN5bWJvbCgic2luZ2xlQ29tbWVudCIpOwogICAgdmFyIG11bHRpQ29tbWVudCA9IFN5bWJvbCgibXVsdGlDb21tZW50Iik7CiAgICB2YXIgc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA9ICgpID0+ICIiOwogICAgdmFyIHN0cmlwV2l0aFdoaXRlc3BhY2UgPSAoc3RyaW5nLCBzdGFydCwgZW5kKSA9PiBzdHJpbmcuc2xpY2Uoc3RhcnQsIGVuZCkucmVwbGFjZSgvXFMvZywgIiAiKTsKICAgIHZhciBpc0VzY2FwZWQgPSAoanNvblN0cmluZywgcXVvdGVQb3NpdGlvbikgPT4gewogICAgICBsZXQgaW5kZXggPSBxdW90ZVBvc2l0aW9uIC0gMTsKICAgICAgbGV0IGJhY2tzbGFzaENvdW50ID0gMDsKICAgICAgd2hpbGUgKGpzb25TdHJpbmdbaW5kZXhdID09PSAiXFwiKSB7CiAgICAgICAgaW5kZXggLT0gMTsKICAgICAgICBiYWNrc2xhc2hDb3VudCArPSAxOwogICAgICB9CiAgICAgIHJldHVybiBCb29sZWFuKGJhY2tzbGFzaENvdW50ICUgMik7CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gKGpzb25TdHJpbmcsIG9wdGlvbnMgPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGpzb25TdHJpbmcgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgYXJndW1lbnQgXGBqc29uU3RyaW5nXGAgdG8gYmUgYSBcYHN0cmluZ1xgLCBnb3QgXGAke3R5cGVvZiBqc29uU3RyaW5nfVxgYCk7CiAgICAgIH0KICAgICAgY29uc3Qgc3RyaXAgPSBvcHRpb25zLndoaXRlc3BhY2UgPT09IGZhbHNlID8gc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA6IHN0cmlwV2l0aFdoaXRlc3BhY2U7CiAgICAgIGxldCBpbnNpZGVTdHJpbmcgPSBmYWxzZTsKICAgICAgbGV0IGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgbGV0IG9mZnNldCA9IDA7CiAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBqc29uU3RyaW5nLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3VycmVudENoYXJhY3RlciA9IGpzb25TdHJpbmdbaV07CiAgICAgICAgY29uc3QgbmV4dENoYXJhY3RlciA9IGpzb25TdHJpbmdbaSArIDFdOwogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyID09PSAnIicpIHsKICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSBpc0VzY2FwZWQoanNvblN0cmluZywgaSk7CiAgICAgICAgICBpZiAoIWVzY2FwZWQpIHsKICAgICAgICAgICAgaW5zaWRlU3RyaW5nID0gIWluc2lkZVN0cmluZzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGluc2lkZVN0cmluZykgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIi8vIikgewogICAgICAgICAgcmVzdWx0ICs9IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0LCBpKTsKICAgICAgICAgIG9mZnNldCA9IGk7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gc2luZ2xlQ29tbWVudDsKICAgICAgICAgIGkrKzsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IHNpbmdsZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciArIG5leHRDaGFyYWN0ZXIgPT09ICJcclxuIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfSBlbHNlIGlmIChpbnNpZGVDb21tZW50ID09PSBzaW5nbGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgPT09ICJcbiIpIHsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgICAgIHJlc3VsdCArPSBzdHJpcChqc29uU3RyaW5nLCBvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICB9IGVsc2UgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiLyoiKSB7CiAgICAgICAgICByZXN1bHQgKz0ganNvblN0cmluZy5zbGljZShvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBtdWx0aUNvbW1lbnQ7CiAgICAgICAgICBpKys7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IG11bHRpQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIiovIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSArIDEpOwogICAgICAgICAgb2Zmc2V0ID0gaSArIDE7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdCArIChpbnNpZGVDb21tZW50ID8gc3RyaXAoanNvblN0cmluZy5zbGljZShvZmZzZXQpKSA6IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0KSk7CiAgICB9OwogIH0KfSk7CgovLyBzcmMvc2NoZW1hdGljL2luZGV4LnRzCnZhciBpbmRleF9leHBvcnRzID0ge307Cl9fZXhwb3J0KGluZGV4X2V4cG9ydHMsIHsKICBtYWluOiAoKSA9PiBtYWluCn0pOwptb2R1bGUuZXhwb3J0cyA9IF9fdG9Db21tb25KUyhpbmRleF9leHBvcnRzKTsKCi8vIHNyYy9zY2hlbWF0aWMvcHJvamVjdC9wcm9qZWN0LmZhY3RvcnkudHMKdmFyIGltcG9ydF9zY2hlbWF0aWNzOSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9qc29uLnV0aWxzLnRzCnZhciBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cyA9IF9fdG9FU00ocmVxdWlyZV9zdHJpcF9qc29uX2NvbW1lbnRzKCksIDEpOwp2YXIgc2VyaWFsaXplSnNvbiA9IChqc29uMikgPT4gYCR7SlNPTi5zdHJpbmdpZnkoanNvbjIsIG51bGwsIDIpfQpgOwp2YXIgcmVhZEpzb25JblRyZWUgPSAoaG9zdCwgcGF0aCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgJHtwYXRofWApOwogIH0KICBjb25zdCBjb250ZW50cyA9ICgwLCBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cy5kZWZhdWx0KShob3N0LnJlYWQocGF0aCk/LnRvU3RyaW5nKCJ1dGYtOCIpIHx8ICIiKTsKICB0cnkgewogICAgcmV0dXJuIEpTT04ucGFyc2UoY29udGVudHMpOwogIH0gY2F0Y2ggKGUpIHsKICAgIGNvbnN0IGVycm9yID0gZTsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHBhcnNlICR7cGF0aH06ICR7ZXJyb3IubWVzc2FnZX1gKTsKICB9Cn07CnZhciB1cGRhdGVKc29uSW5UcmVlID0gKHBhdGgsIGNhbGxiYWNrKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIGhvc3QuY3JlYXRlKHBhdGgsIHNlcmlhbGl6ZUpzb24oY2FsbGJhY2soe30sIGNvbnRleHQpKSk7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgaG9zdC5vdmVyd3JpdGUoCiAgICBwYXRoLAogICAgc2VyaWFsaXplSnNvbihjYWxsYmFjayhyZWFkSnNvbkluVHJlZShob3N0LCBwYXRoKSwgY29udGV4dCkpCiAgKTsKICByZXR1cm4gaG9zdDsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvdXRpbHMvdHNjb25maWcudXRpbHMudHMKdmFyIHVwZGF0ZVRzQ29uZmlnSW5UcmVlID0gKGNvbXBpbGVyT3B0aW9ucykgPT4gdXBkYXRlSnNvbkluVHJlZSgidHNjb25maWcuanNvbiIsICh0c2NvbmZpZykgPT4gKHsKICAuLi50c2NvbmZpZywKICBjb21waWxlck9wdGlvbnMKfSkpOwoKLy8gc3JjL3NjaGVtYXRpYy9ydWxlcy91cGRhdGUtdHMtY29uZmlnLnJ1bGUudHMKdmFyIHVwZGF0ZVRzQ29uZmlnUnVsZSA9IGFzeW5jICgpID0+IHsKICBjb25zdCB7IHRzQ29uZmlnIH0gPSBhd2FpdCBpbXBvcnQoIkBhdGxzL2NvZGUtcnVudGltZSIpOwogIHJldHVybiB1cGRhdGVUc0NvbmZpZ0luVHJlZSh7CiAgICAuLi50c0NvbmZpZy5jb21waWxlck9wdGlvbnMKICB9KTsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvc291cmNlcy9nZW5lcmF0ZS1jb21tb24uc291cmNlLnRzCnZhciBpbXBvcnRfY29yZSA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljcyA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MyID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczMgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgZ2VuZXJhdGVDb21tb25Tb3VyY2UgPSAob3B0aW9ucykgPT4gKDAsIGltcG9ydF9zY2hlbWF0aWNzLmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M0LnVybCkoIi4uL3RlbXBsYXRlcy9jb21tb24iKSwgWwogICgwLCBpbXBvcnRfc2NoZW1hdGljczIudGVtcGxhdGUpKHsKICAgIC4uLmltcG9ydF9jb3JlLnN0cmluZ3MsCiAgICAuLi5vcHRpb25zLAogICAgZG90OiAiLiIKICB9KSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MzLm1vdmUpKCIuLyIpCl0pOwoKLy8gc3JjL3NjaGVtYXRpYy9zb3VyY2VzL2dlbmVyYXRlLXByb2plY3Qtc3BlY2lmaWMuc291cmNlLnRzCnZhciBpbXBvcnRfbm9kZV9mcyA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKdmFyIGltcG9ydF9ub2RlX3BhdGggPSByZXF1aXJlKCJub2RlOnBhdGgiKTsKdmFyIGltcG9ydF9jb3JlMiA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczUgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNiA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M3ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczggPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGdlbmVyYXRlUHJvamVjdFNwZWNpZmljU291cmNlID0gKG9wdGlvbnMpID0+IHsKICBjb25zdCB7IG5hbWU6IHByb2plY3ROYW1lIH0gPSBKU09OLnBhcnNlKAogICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG4vbm8tc3luYwogICAgKDAsIGltcG9ydF9ub2RlX2ZzLnJlYWRGaWxlU3luYykoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikob3B0aW9ucy5jd2QsICJwYWNrYWdlLmpzb24iKSwgInV0Zi04IikKICApOwogIHJldHVybiAoMCwgaW1wb3J0X3NjaGVtYXRpY3M1LmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M2LnVybCkoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikoIi4uL3RlbXBsYXRlcyIsIG9wdGlvbnMudHlwZSkpLCBbCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3M3LnRlbXBsYXRlKSh7CiAgICAgIC4uLmltcG9ydF9jb3JlMi5zdHJpbmdzLAogICAgICAuLi5vcHRpb25zLAogICAgICBwcm9qZWN0TmFtZSwKICAgICAgZG90OiAiLiIKICAgIH0pLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzOC5tb3ZlKSgiLi8iKQogIF0pOwp9OwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9tZXJnZS1naXRpZ25vcmUtY29udGVudC51dGlscy50cwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19TVEFSVF9NQVJLRVIgPSAiIyByYWlqaW46YmVnaW4gcHJvamVjdC1zcGVjaWZpYyBnaXRpZ25vcmUiOwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19FTkRfTUFSS0VSID0gIiMgcmFpamluOmVuZCBwcm9qZWN0LXNwZWNpZmljIGdpdGlnbm9yZSI7CnZhciBub3JtYWxpemVDb250ZW50ID0gKGNvbnRlbnQpID0+IGNvbnRlbnQucmVwbGFjZSgvXHJcbi9nLCAiXG4iKTsKdmFyIGdldE5vcm1hbGl6ZWRMaW5lcyA9IChjb250ZW50KSA9PiBub3JtYWxpemVDb250ZW50KGNvbnRlbnQpLnNwbGl0KCJcbiIpOwp2YXIgdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyA9IChsaW5lcykgPT4gewogIGNvbnN0IG5vcm1hbGl6ZWRMaW5lcyA9IFsuLi5saW5lc107CiAgd2hpbGUgKG5vcm1hbGl6ZWRMaW5lcy5sZW5ndGggPiAwICYmIG5vcm1hbGl6ZWRMaW5lc1tub3JtYWxpemVkTGluZXMubGVuZ3RoIC0gMV0gPT09ICIiKSB7CiAgICBub3JtYWxpemVkTGluZXMucG9wKCk7CiAgfQogIHJldHVybiBub3JtYWxpemVkTGluZXM7Cn07CnZhciBpc1Byb2plY3RTcGVjaWZpY0xpbmUgPSAobGluZSwgdGVtcGxhdGVMaW5lU2V0KSA9PiBsaW5lICE9PSAiIiAmJiAhdGVtcGxhdGVMaW5lU2V0LmhhcyhsaW5lKSAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX1NUQVJUX01BUktFUiAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVI7CnZhciBnZXRQcm9qZWN0U3BlY2lmaWNMaW5lcyA9IChleGlzdGluZ0xpbmVzLCB0ZW1wbGF0ZUxpbmVTZXQpID0+IHsKICBjb25zdCBzdGFydEluZGV4ID0gZXhpc3RpbmdMaW5lcy5pbmRleE9mKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBjb25zdCBlbmRJbmRleCA9IGV4aXN0aW5nTGluZXMuaW5kZXhPZihQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVIpOwogIGlmIChzdGFydEluZGV4ICE9PSAtMSAmJiBlbmRJbmRleCA+IHN0YXJ0SW5kZXgpIHsKICAgIHJldHVybiBBcnJheS5mcm9tKAogICAgICBuZXcgU2V0KGV4aXN0aW5nTGluZXMuZmlsdGVyKChsaW5lKSA9PiBpc1Byb2plY3RTcGVjaWZpY0xpbmUobGluZSwgdGVtcGxhdGVMaW5lU2V0KSkpCiAgICApOwogIH0KICByZXR1cm4gZXhpc3RpbmdMaW5lcy5maWx0ZXIoKGxpbmUpID0+IGlzUHJvamVjdFNwZWNpZmljTGluZShsaW5lLCB0ZW1wbGF0ZUxpbmVTZXQpKTsKfTsKdmFyIG1lcmdlR2l0SWdub3JlQ29udGVudCA9ICh7CiAgZXhpc3RpbmdDb250ZW50LAogIHRlbXBsYXRlQ29udGVudAp9KSA9PiB7CiAgY29uc3QgdGVtcGxhdGVMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyh0ZW1wbGF0ZUNvbnRlbnQpOwogIGNvbnN0IHRlbXBsYXRlTGluZVNldCA9IG5ldyBTZXQodGVtcGxhdGVMaW5lcyk7CiAgY29uc3QgZXhpc3RpbmdMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyhleGlzdGluZ0NvbnRlbnQpOwogIGNvbnN0IHByb2plY3RTcGVjaWZpY0xpbmVzID0gZ2V0UHJvamVjdFNwZWNpZmljTGluZXMoZXhpc3RpbmdMaW5lcywgdGVtcGxhdGVMaW5lU2V0KTsKICBpZiAocHJvamVjdFNwZWNpZmljTGluZXMubGVuZ3RoID09PSAwKSB7CiAgICByZXR1cm4gdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyh0ZW1wbGF0ZUxpbmVzKS5qb2luKCJcbiIpOwogIH0KICBjb25zdCBtZXJnZWRMaW5lcyA9IHRyaW1UcmFpbGluZ0VtcHR5TGluZXModGVtcGxhdGVMaW5lcyk7CiAgaWYgKG1lcmdlZExpbmVzLmxlbmd0aCA+IDApIHsKICAgIG1lcmdlZExpbmVzLnB1c2goIiIpOwogIH0KICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBtZXJnZWRMaW5lcy5wdXNoKC4uLnByb2plY3RTcGVjaWZpY0xpbmVzKTsKICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfRU5EX01BUktFUik7CiAgcmV0dXJuIG1lcmdlZExpbmVzLmpvaW4oIlxuIik7Cn07CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qcy15YW1sLW5wbS00LjEuMC0zNjA2ZjMyMzEyLTEwLnppcC9ub2RlX21vZHVsZXMvanMteWFtbC9kaXN0L2pzLXlhbWwubWpzCmZ1bmN0aW9uIGlzTm90aGluZyhzdWJqZWN0KSB7CiAgcmV0dXJuIHR5cGVvZiBzdWJqZWN0ID09PSAidW5kZWZpbmVkIiB8fCBzdWJqZWN0ID09PSBudWxsOwp9CmZ1bmN0aW9uIGlzT2JqZWN0KHN1YmplY3QpIHsKICByZXR1cm4gdHlwZW9mIHN1YmplY3QgPT09ICJvYmplY3QiICYmIHN1YmplY3QgIT09IG51bGw7Cn0KZnVuY3Rpb24gdG9BcnJheShzZXF1ZW5jZSkgewogIGlmIChBcnJheS5pc0FycmF5KHNlcXVlbmNlKSkgcmV0dXJuIHNlcXVlbmNlOwogIGVsc2UgaWYgKGlzTm90aGluZyhzZXF1ZW5jZSkpIHJldHVybiBbXTsKICByZXR1cm4gW3NlcXVlbmNlXTsKfQpmdW5jdGlvbiBleHRlbmQodGFyZ2V0LCBzb3VyY2UpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwga2V5LCBzb3VyY2VLZXlzOwogIGlmIChzb3VyY2UpIHsKICAgIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsKICAgIH0KICB9CiAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiByZXBlYXQoc3RyaW5nLCBjb3VudCkgewogIHZhciByZXN1bHQgPSAiIiwgY3ljbGU7CiAgZm9yIChjeWNsZSA9IDA7IGN5Y2xlIDwgY291bnQ7IGN5Y2xlICs9IDEpIHsKICAgIHJlc3VsdCArPSBzdHJpbmc7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gaXNOZWdhdGl2ZVplcm8obnVtYmVyKSB7CiAgcmV0dXJuIG51bWJlciA9PT0gMCAmJiBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IDEgLyBudW1iZXI7Cn0KdmFyIGlzTm90aGluZ18xID0gaXNOb3RoaW5nOwp2YXIgaXNPYmplY3RfMSA9IGlzT2JqZWN0Owp2YXIgdG9BcnJheV8xID0gdG9BcnJheTsKdmFyIHJlcGVhdF8xID0gcmVwZWF0Owp2YXIgaXNOZWdhdGl2ZVplcm9fMSA9IGlzTmVnYXRpdmVaZXJvOwp2YXIgZXh0ZW5kXzEgPSBleHRlbmQ7CnZhciBjb21tb24gPSB7CiAgaXNOb3RoaW5nOiBpc05vdGhpbmdfMSwKICBpc09iamVjdDogaXNPYmplY3RfMSwKICB0b0FycmF5OiB0b0FycmF5XzEsCiAgcmVwZWF0OiByZXBlYXRfMSwKICBpc05lZ2F0aXZlWmVybzogaXNOZWdhdGl2ZVplcm9fMSwKICBleHRlbmQ6IGV4dGVuZF8xCn07CmZ1bmN0aW9uIGZvcm1hdEVycm9yKGV4Y2VwdGlvbjIsIGNvbXBhY3QpIHsKICB2YXIgd2hlcmUgPSAiIiwgbWVzc2FnZSA9IGV4Y2VwdGlvbjIucmVhc29uIHx8ICIodW5rbm93biByZWFzb24pIjsKICBpZiAoIWV4Y2VwdGlvbjIubWFyaykgcmV0dXJuIG1lc3NhZ2U7CiAgaWYgKGV4Y2VwdGlvbjIubWFyay5uYW1lKSB7CiAgICB3aGVyZSArPSAnaW4gIicgKyBleGNlcHRpb24yLm1hcmsubmFtZSArICciICc7CiAgfQogIHdoZXJlICs9ICIoIiArIChleGNlcHRpb24yLm1hcmsubGluZSArIDEpICsgIjoiICsgKGV4Y2VwdGlvbjIubWFyay5jb2x1bW4gKyAxKSArICIpIjsKICBpZiAoIWNvbXBhY3QgJiYgZXhjZXB0aW9uMi5tYXJrLnNuaXBwZXQpIHsKICAgIHdoZXJlICs9ICJcblxuIiArIGV4Y2VwdGlvbjIubWFyay5zbmlwcGV0OwogIH0KICByZXR1cm4gbWVzc2FnZSArICIgIiArIHdoZXJlOwp9CmZ1bmN0aW9uIFlBTUxFeGNlcHRpb24kMShyZWFzb24sIG1hcmspIHsKICBFcnJvci5jYWxsKHRoaXMpOwogIHRoaXMubmFtZSA9ICJZQU1MRXhjZXB0aW9uIjsKICB0aGlzLnJlYXNvbiA9IHJlYXNvbjsKICB0aGlzLm1hcmsgPSBtYXJrOwogIHRoaXMubWVzc2FnZSA9IGZvcm1hdEVycm9yKHRoaXMsIGZhbHNlKTsKICBpZiAoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpIHsKICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpOwogIH0gZWxzZSB7CiAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKCkuc3RhY2sgfHwgIiI7CiAgfQp9CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBZQU1MRXhjZXB0aW9uJDE7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZyhjb21wYWN0KSB7CiAgcmV0dXJuIHRoaXMubmFtZSArICI6ICIgKyBmb3JtYXRFcnJvcih0aGlzLCBjb21wYWN0KTsKfTsKdmFyIGV4Y2VwdGlvbiA9IFlBTUxFeGNlcHRpb24kMTsKZnVuY3Rpb24gZ2V0TGluZShidWZmZXIsIGxpbmVTdGFydCwgbGluZUVuZCwgcG9zaXRpb24sIG1heExpbmVMZW5ndGgpIHsKICB2YXIgaGVhZCA9ICIiOwogIHZhciB0YWlsID0gIiI7CiAgdmFyIG1heEhhbGZMZW5ndGggPSBNYXRoLmZsb29yKG1heExpbmVMZW5ndGggLyAyKSAtIDE7CiAgaWYgKHBvc2l0aW9uIC0gbGluZVN0YXJ0ID4gbWF4SGFsZkxlbmd0aCkgewogICAgaGVhZCA9ICIgLi4uICI7CiAgICBsaW5lU3RhcnQgPSBwb3NpdGlvbiAtIG1heEhhbGZMZW5ndGggKyBoZWFkLmxlbmd0aDsKICB9CiAgaWYgKGxpbmVFbmQgLSBwb3NpdGlvbiA+IG1heEhhbGZMZW5ndGgpIHsKICAgIHRhaWwgPSAiIC4uLiI7CiAgICBsaW5lRW5kID0gcG9zaXRpb24gKyBtYXhIYWxmTGVuZ3RoIC0gdGFpbC5sZW5ndGg7CiAgfQogIHJldHVybiB7CiAgICBzdHI6IGhlYWQgKyBidWZmZXIuc2xpY2UobGluZVN0YXJ0LCBsaW5lRW5kKS5yZXBsYWNlKC9cdC9nLCAiXHUyMTkyIikgKyB0YWlsLAogICAgcG9zOiBwb3NpdGlvbiAtIGxpbmVTdGFydCArIGhlYWQubGVuZ3RoCiAgICAvLyByZWxhdGl2ZSBwb3NpdGlvbgogIH07Cn0KZnVuY3Rpb24gcGFkU3RhcnQoc3RyaW5nLCBtYXgpIHsKICByZXR1cm4gY29tbW9uLnJlcGVhdCgiICIsIG1heCAtIHN0cmluZy5sZW5ndGgpICsgc3RyaW5nOwp9CmZ1bmN0aW9uIG1ha2VTbmlwcGV0KG1hcmssIG9wdGlvbnMpIHsKICBvcHRpb25zID0gT2JqZWN0LmNyZWF0ZShvcHRpb25zIHx8IG51bGwpOwogIGlmICghbWFyay5idWZmZXIpIHJldHVybiBudWxsOwogIGlmICghb3B0aW9ucy5tYXhMZW5ndGgpIG9wdGlvbnMubWF4TGVuZ3RoID0gNzk7CiAgaWYgKHR5cGVvZiBvcHRpb25zLmluZGVudCAhPT0gIm51bWJlciIpIG9wdGlvbnMuaW5kZW50ID0gMTsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNCZWZvcmUgIT09ICJudW1iZXIiKSBvcHRpb25zLmxpbmVzQmVmb3JlID0gMzsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNBZnRlciAhPT0gIm51bWJlciIpIG9wdGlvbnMubGluZXNBZnRlciA9IDI7CiAgdmFyIHJlID0gL1xyP1xufFxyfFwwL2c7CiAgdmFyIGxpbmVTdGFydHMgPSBbMF07CiAgdmFyIGxpbmVFbmRzID0gW107CiAgdmFyIG1hdGNoOwogIHZhciBmb3VuZExpbmVObyA9IC0xOwogIHdoaWxlIChtYXRjaCA9IHJlLmV4ZWMobWFyay5idWZmZXIpKSB7CiAgICBsaW5lRW5kcy5wdXNoKG1hdGNoLmluZGV4KTsKICAgIGxpbmVTdGFydHMucHVzaChtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCk7CiAgICBpZiAobWFyay5wb3NpdGlvbiA8PSBtYXRjaC5pbmRleCAmJiBmb3VuZExpbmVObyA8IDApIHsKICAgICAgZm91bmRMaW5lTm8gPSBsaW5lU3RhcnRzLmxlbmd0aCAtIDI7CiAgICB9CiAgfQogIGlmIChmb3VuZExpbmVObyA8IDApIGZvdW5kTGluZU5vID0gbGluZVN0YXJ0cy5sZW5ndGggLSAxOwogIHZhciByZXN1bHQgPSAiIiwgaSwgbGluZTsKICB2YXIgbGluZU5vTGVuZ3RoID0gTWF0aC5taW4obWFyay5saW5lICsgb3B0aW9ucy5saW5lc0FmdGVyLCBsaW5lRW5kcy5sZW5ndGgpLnRvU3RyaW5nKCkubGVuZ3RoOwogIHZhciBtYXhMaW5lTGVuZ3RoID0gb3B0aW9ucy5tYXhMZW5ndGggLSAob3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzKTsKICBmb3IgKGkgPSAxOyBpIDw9IG9wdGlvbnMubGluZXNCZWZvcmU7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vIC0gaSA8IDApIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ID0gY29tbW9uLnJlcGVhdCgiICIsIG9wdGlvbnMuaW5kZW50KSArIHBhZFN0YXJ0KChtYXJrLmxpbmUgLSBpICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iICsgcmVzdWx0OwogIH0KICBsaW5lID0gZ2V0TGluZShtYXJrLmJ1ZmZlciwgbGluZVN0YXJ0c1tmb3VuZExpbmVOb10sIGxpbmVFbmRzW2ZvdW5kTGluZU5vXSwgbWFyay5wb3NpdGlvbiwgbWF4TGluZUxlbmd0aCk7CiAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iOwogIHJlc3VsdCArPSBjb21tb24ucmVwZWF0KCItIiwgb3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzICsgbGluZS5wb3MpICsgIl5cbiI7CiAgZm9yIChpID0gMTsgaSA8PSBvcHRpb25zLmxpbmVzQWZ0ZXI7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vICsgaSA+PSBsaW5lRW5kcy5sZW5ndGgpIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgaSArIDEpLnRvU3RyaW5nKCksIGxpbmVOb0xlbmd0aCkgKyAiIHwgIiArIGxpbmUuc3RyICsgIlxuIjsKICB9CiAgcmV0dXJuIHJlc3VsdC5yZXBsYWNlKC9cbiQvLCAiIik7Cn0KdmFyIHNuaXBwZXQgPSBtYWtlU25pcHBldDsKdmFyIFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUyA9IFsKICAia2luZCIsCiAgIm11bHRpIiwKICAicmVzb2x2ZSIsCiAgImNvbnN0cnVjdCIsCiAgImluc3RhbmNlT2YiLAogICJwcmVkaWNhdGUiLAogICJyZXByZXNlbnQiLAogICJyZXByZXNlbnROYW1lIiwKICAiZGVmYXVsdFN0eWxlIiwKICAic3R5bGVBbGlhc2VzIgpdOwp2YXIgWUFNTF9OT0RFX0tJTkRTID0gWwogICJzY2FsYXIiLAogICJzZXF1ZW5jZSIsCiAgIm1hcHBpbmciCl07CmZ1bmN0aW9uIGNvbXBpbGVTdHlsZUFsaWFzZXMobWFwMikgewogIHZhciByZXN1bHQgPSB7fTsKICBpZiAobWFwMiAhPT0gbnVsbCkgewogICAgT2JqZWN0LmtleXMobWFwMikuZm9yRWFjaChmdW5jdGlvbihzdHlsZSkgewogICAgICBtYXAyW3N0eWxlXS5mb3JFYWNoKGZ1bmN0aW9uKGFsaWFzKSB7CiAgICAgICAgcmVzdWx0W1N0cmluZyhhbGlhcyldID0gc3R5bGU7CiAgICAgIH0pOwogICAgfSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gVHlwZSQxKHRhZywgb3B0aW9ucykgewogIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogIE9iamVjdC5rZXlzKG9wdGlvbnMpLmZvckVhY2goZnVuY3Rpb24obmFtZSkgewogICAgaWYgKFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUy5pbmRleE9mKG5hbWUpID09PSAtMSkgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCdVbmtub3duIG9wdGlvbiAiJyArIG5hbWUgKyAnIiBpcyBtZXQgaW4gZGVmaW5pdGlvbiBvZiAiJyArIHRhZyArICciIFlBTUwgdHlwZS4nKTsKICAgIH0KICB9KTsKICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zOwogIHRoaXMudGFnID0gdGFnOwogIHRoaXMua2luZCA9IG9wdGlvbnNbImtpbmQiXSB8fCBudWxsOwogIHRoaXMucmVzb2x2ZSA9IG9wdGlvbnNbInJlc29sdmUiXSB8fCBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0cnVlOwogIH07CiAgdGhpcy5jb25zdHJ1Y3QgPSBvcHRpb25zWyJjb25zdHJ1Y3QiXSB8fCBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YTsKICB9OwogIHRoaXMuaW5zdGFuY2VPZiA9IG9wdGlvbnNbImluc3RhbmNlT2YiXSB8fCBudWxsOwogIHRoaXMucHJlZGljYXRlID0gb3B0aW9uc1sicHJlZGljYXRlIl0gfHwgbnVsbDsKICB0aGlzLnJlcHJlc2VudCA9IG9wdGlvbnNbInJlcHJlc2VudCJdIHx8IG51bGw7CiAgdGhpcy5yZXByZXNlbnROYW1lID0gb3B0aW9uc1sicmVwcmVzZW50TmFtZSJdIHx8IG51bGw7CiAgdGhpcy5kZWZhdWx0U3R5bGUgPSBvcHRpb25zWyJkZWZhdWx0U3R5bGUiXSB8fCBudWxsOwogIHRoaXMubXVsdGkgPSBvcHRpb25zWyJtdWx0aSJdIHx8IGZhbHNlOwogIHRoaXMuc3R5bGVBbGlhc2VzID0gY29tcGlsZVN0eWxlQWxpYXNlcyhvcHRpb25zWyJzdHlsZUFsaWFzZXMiXSB8fCBudWxsKTsKICBpZiAoWUFNTF9OT0RFX0tJTkRTLmluZGV4T2YodGhpcy5raW5kKSA9PT0gLTEpIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oJ1Vua25vd24ga2luZCAiJyArIHRoaXMua2luZCArICciIGlzIHNwZWNpZmllZCBmb3IgIicgKyB0YWcgKyAnIiBZQU1MIHR5cGUuJyk7CiAgfQp9CnZhciB0eXBlID0gVHlwZSQxOwpmdW5jdGlvbiBjb21waWxlTGlzdChzY2hlbWEyLCBuYW1lKSB7CiAgdmFyIHJlc3VsdCA9IFtdOwogIHNjaGVtYTJbbmFtZV0uZm9yRWFjaChmdW5jdGlvbihjdXJyZW50VHlwZSkgewogICAgdmFyIG5ld0luZGV4ID0gcmVzdWx0Lmxlbmd0aDsKICAgIHJlc3VsdC5mb3JFYWNoKGZ1bmN0aW9uKHByZXZpb3VzVHlwZSwgcHJldmlvdXNJbmRleCkgewogICAgICBpZiAocHJldmlvdXNUeXBlLnRhZyA9PT0gY3VycmVudFR5cGUudGFnICYmIHByZXZpb3VzVHlwZS5raW5kID09PSBjdXJyZW50VHlwZS5raW5kICYmIHByZXZpb3VzVHlwZS5tdWx0aSA9PT0gY3VycmVudFR5cGUubXVsdGkpIHsKICAgICAgICBuZXdJbmRleCA9IHByZXZpb3VzSW5kZXg7CiAgICAgIH0KICAgIH0pOwogICAgcmVzdWx0W25ld0luZGV4XSA9IGN1cnJlbnRUeXBlOwogIH0pOwogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gY29tcGlsZU1hcCgpIHsKICB2YXIgcmVzdWx0ID0gewogICAgc2NhbGFyOiB7fSwKICAgIHNlcXVlbmNlOiB7fSwKICAgIG1hcHBpbmc6IHt9LAogICAgZmFsbGJhY2s6IHt9LAogICAgbXVsdGk6IHsKICAgICAgc2NhbGFyOiBbXSwKICAgICAgc2VxdWVuY2U6IFtdLAogICAgICBtYXBwaW5nOiBbXSwKICAgICAgZmFsbGJhY2s6IFtdCiAgICB9CiAgfSwgaW5kZXgsIGxlbmd0aDsKICBmdW5jdGlvbiBjb2xsZWN0VHlwZSh0eXBlMikgewogICAgaWYgKHR5cGUyLm11bHRpKSB7CiAgICAgIHJlc3VsdC5tdWx0aVt0eXBlMi5raW5kXS5wdXNoKHR5cGUyKTsKICAgICAgcmVzdWx0Lm11bHRpWyJmYWxsYmFjayJdLnB1c2godHlwZTIpOwogICAgfSBlbHNlIHsKICAgICAgcmVzdWx0W3R5cGUyLmtpbmRdW3R5cGUyLnRhZ10gPSByZXN1bHRbImZhbGxiYWNrIl1bdHlwZTIudGFnXSA9IHR5cGUyOwogICAgfQogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIGFyZ3VtZW50c1tpbmRleF0uZm9yRWFjaChjb2xsZWN0VHlwZSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gU2NoZW1hJDEoZGVmaW5pdGlvbikgewogIHJldHVybiB0aGlzLmV4dGVuZChkZWZpbml0aW9uKTsKfQpTY2hlbWEkMS5wcm90b3R5cGUuZXh0ZW5kID0gZnVuY3Rpb24gZXh0ZW5kMihkZWZpbml0aW9uKSB7CiAgdmFyIGltcGxpY2l0ID0gW107CiAgdmFyIGV4cGxpY2l0ID0gW107CiAgaWYgKGRlZmluaXRpb24gaW5zdGFuY2VvZiB0eXBlKSB7CiAgICBleHBsaWNpdC5wdXNoKGRlZmluaXRpb24pOwogIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShkZWZpbml0aW9uKSkgewogICAgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbik7CiAgfSBlbHNlIGlmIChkZWZpbml0aW9uICYmIChBcnJheS5pc0FycmF5KGRlZmluaXRpb24uaW1wbGljaXQpIHx8IEFycmF5LmlzQXJyYXkoZGVmaW5pdGlvbi5leHBsaWNpdCkpKSB7CiAgICBpZiAoZGVmaW5pdGlvbi5pbXBsaWNpdCkgaW1wbGljaXQgPSBpbXBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5pbXBsaWNpdCk7CiAgICBpZiAoZGVmaW5pdGlvbi5leHBsaWNpdCkgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5leHBsaWNpdCk7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNjaGVtYS5leHRlbmQgYXJndW1lbnQgc2hvdWxkIGJlIGEgVHlwZSwgWyBUeXBlIF0sIG9yIGEgc2NoZW1hIGRlZmluaXRpb24gKHsgaW1wbGljaXQ6IFsuLi5dLCBleHBsaWNpdDogWy4uLl0gfSkiKTsKICB9CiAgaW1wbGljaXQuZm9yRWFjaChmdW5jdGlvbih0eXBlJDEpIHsKICAgIGlmICghKHR5cGUkMSBpbnN0YW5jZW9mIHR5cGUpKSB7CiAgICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNwZWNpZmllZCBsaXN0IG9mIFlBTUwgdHlwZXMgKG9yIGEgc2luZ2xlIFR5cGUgb2JqZWN0KSBjb250YWlucyBhIG5vbi1UeXBlIG9iamVjdC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubG9hZEtpbmQgJiYgdHlwZSQxLmxvYWRLaW5kICE9PSAic2NhbGFyIikgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJUaGVyZSBpcyBhIG5vbi1zY2FsYXIgdHlwZSBpbiB0aGUgaW1wbGljaXQgbGlzdCBvZiBhIHNjaGVtYS4gSW1wbGljaXQgcmVzb2x2aW5nIG9mIHN1Y2ggdHlwZXMgaXMgbm90IHN1cHBvcnRlZC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubXVsdGkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiVGhlcmUgaXMgYSBtdWx0aSB0eXBlIGluIHRoZSBpbXBsaWNpdCBsaXN0IG9mIGEgc2NoZW1hLiBNdWx0aSB0YWdzIGNhbiBvbmx5IGJlIGxpc3RlZCBhcyBleHBsaWNpdC4iKTsKICAgIH0KICB9KTsKICBleHBsaWNpdC5mb3JFYWNoKGZ1bmN0aW9uKHR5cGUkMSkgewogICAgaWYgKCEodHlwZSQxIGluc3RhbmNlb2YgdHlwZSkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiU3BlY2lmaWVkIGxpc3Qgb2YgWUFNTCB0eXBlcyAob3IgYSBzaW5nbGUgVHlwZSBvYmplY3QpIGNvbnRhaW5zIGEgbm9uLVR5cGUgb2JqZWN0LiIpOwogICAgfQogIH0pOwogIHZhciByZXN1bHQgPSBPYmplY3QuY3JlYXRlKFNjaGVtYSQxLnByb3RvdHlwZSk7CiAgcmVzdWx0LmltcGxpY2l0ID0gKHRoaXMuaW1wbGljaXQgfHwgW10pLmNvbmNhdChpbXBsaWNpdCk7CiAgcmVzdWx0LmV4cGxpY2l0ID0gKHRoaXMuZXhwbGljaXQgfHwgW10pLmNvbmNhdChleHBsaWNpdCk7CiAgcmVzdWx0LmNvbXBpbGVkSW1wbGljaXQgPSBjb21waWxlTGlzdChyZXN1bHQsICJpbXBsaWNpdCIpOwogIHJlc3VsdC5jb21waWxlZEV4cGxpY2l0ID0gY29tcGlsZUxpc3QocmVzdWx0LCAiZXhwbGljaXQiKTsKICByZXN1bHQuY29tcGlsZWRUeXBlTWFwID0gY29tcGlsZU1hcChyZXN1bHQuY29tcGlsZWRJbXBsaWNpdCwgcmVzdWx0LmNvbXBpbGVkRXhwbGljaXQpOwogIHJldHVybiByZXN1bHQ7Cn07CnZhciBzY2hlbWEgPSBTY2hlbWEkMTsKdmFyIHN0ciA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpzdHIiLCB7CiAga2luZDogInNjYWxhciIsCiAgY29uc3RydWN0OiBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiAiIjsKICB9Cn0pOwp2YXIgc2VxID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNlcSIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107CiAgfQp9KTsKdmFyIG1hcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptYXAiLCB7CiAga2luZDogIm1hcHBpbmciLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDoge307CiAgfQp9KTsKdmFyIGZhaWxzYWZlID0gbmV3IHNjaGVtYSh7CiAgZXhwbGljaXQ6IFsKICAgIHN0ciwKICAgIHNlcSwKICAgIG1hcAogIF0KfSk7CmZ1bmN0aW9uIHJlc29sdmVZYW1sTnVsbChkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiB0cnVlOwogIHZhciBtYXggPSBkYXRhLmxlbmd0aDsKICByZXR1cm4gbWF4ID09PSAxICYmIGRhdGEgPT09ICJ+IiB8fCBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJudWxsIiB8fCBkYXRhID09PSAiTnVsbCIgfHwgZGF0YSA9PT0gIk5VTEwiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sTnVsbCgpIHsKICByZXR1cm4gbnVsbDsKfQpmdW5jdGlvbiBpc051bGwob2JqZWN0KSB7CiAgcmV0dXJuIG9iamVjdCA9PT0gbnVsbDsKfQp2YXIgX251bGwgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6bnVsbCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE51bGwsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sTnVsbCwKICBwcmVkaWNhdGU6IGlzTnVsbCwKICByZXByZXNlbnQ6IHsKICAgIGNhbm9uaWNhbDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAifiI7CiAgICB9LAogICAgbG93ZXJjYXNlOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuICJudWxsIjsKICAgIH0sCiAgICB1cHBlcmNhc2U6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIk5VTEwiOwogICAgfSwKICAgIGNhbWVsY2FzZTogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAiTnVsbCI7CiAgICB9LAogICAgZW1wdHk6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIiI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJvb2xlYW4oZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoOwogIHJldHVybiBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiKSB8fCBtYXggPT09IDUgJiYgKGRhdGEgPT09ICJmYWxzZSIgfHwgZGF0YSA9PT0gIkZhbHNlIiB8fCBkYXRhID09PSAiRkFMU0UiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQm9vbGVhbihkYXRhKSB7CiAgcmV0dXJuIGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiOwp9CmZ1bmN0aW9uIGlzQm9vbGVhbihvYmplY3QpIHsKICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG9iamVjdCkgPT09ICJbb2JqZWN0IEJvb2xlYW5dIjsKfQp2YXIgYm9vbCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpib29sIiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQm9vbGVhbiwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxCb29sZWFuLAogIHByZWRpY2F0ZTogaXNCb29sZWFuLAogIHJlcHJlc2VudDogewogICAgbG93ZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJ0cnVlIiA6ICJmYWxzZSI7CiAgICB9LAogICAgdXBwZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUUlVFIiA6ICJGQUxTRSI7CiAgICB9LAogICAgY2FtZWxjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUcnVlIiA6ICJGYWxzZSI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiBpc0hleENvZGUoYykgewogIHJldHVybiA0OCA8PSBjICYmIGMgPD0gNTcgfHwgNjUgPD0gYyAmJiBjIDw9IDcwIHx8IDk3IDw9IGMgJiYgYyA8PSAxMDI7Cn0KZnVuY3Rpb24gaXNPY3RDb2RlKGMpIHsKICByZXR1cm4gNDggPD0gYyAmJiBjIDw9IDU1Owp9CmZ1bmN0aW9uIGlzRGVjQ29kZShjKSB7CiAgcmV0dXJuIDQ4IDw9IGMgJiYgYyA8PSA1NzsKfQpmdW5jdGlvbiByZXNvbHZlWWFtbEludGVnZXIoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoLCBpbmRleCA9IDAsIGhhc0RpZ2l0cyA9IGZhbHNlLCBjaDsKICBpZiAoIW1heCkgcmV0dXJuIGZhbHNlOwogIGNoID0gZGF0YVtpbmRleF07CiAgaWYgKGNoID09PSAiLSIgfHwgY2ggPT09ICIrIikgewogICAgY2ggPSBkYXRhWysraW5kZXhdOwogIH0KICBpZiAoY2ggPT09ICIwIikgewogICAgaWYgKGluZGV4ICsgMSA9PT0gbWF4KSByZXR1cm4gdHJ1ZTsKICAgIGNoID0gZGF0YVsrK2luZGV4XTsKICAgIGlmIChjaCA9PT0gImIiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmIChjaCAhPT0gIjAiICYmIGNoICE9PSAiMSIpIHJldHVybiBmYWxzZTsKICAgICAgICBoYXNEaWdpdHMgPSB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBoYXNEaWdpdHMgJiYgY2ggIT09ICJfIjsKICAgIH0KICAgIGlmIChjaCA9PT0gIngiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmICghaXNIZXhDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSByZXR1cm4gZmFsc2U7CiAgICAgICAgaGFzRGlnaXRzID0gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gaGFzRGlnaXRzICYmIGNoICE9PSAiXyI7CiAgICB9CiAgICBpZiAoY2ggPT09ICJvIikgewogICAgICBpbmRleCsrOwogICAgICBmb3IgKDsgaW5kZXggPCBtYXg7IGluZGV4KyspIHsKICAgICAgICBjaCA9IGRhdGFbaW5kZXhdOwogICAgICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgICAgICBpZiAoIWlzT2N0Q29kZShkYXRhLmNoYXJDb2RlQXQoaW5kZXgpKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGhhc0RpZ2l0cyAmJiBjaCAhPT0gIl8iOwogICAgfQogIH0KICBpZiAoY2ggPT09ICJfIikgcmV0dXJuIGZhbHNlOwogIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgY2ggPSBkYXRhW2luZGV4XTsKICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgIGlmICghaXNEZWNDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgfQogIGlmICghaGFzRGlnaXRzIHx8IGNoID09PSAiXyIpIHJldHVybiBmYWxzZTsKICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sSW50ZWdlcihkYXRhKSB7CiAgdmFyIHZhbHVlID0gZGF0YSwgc2lnbiA9IDEsIGNoOwogIGlmICh2YWx1ZS5pbmRleE9mKCJfIikgIT09IC0xKSB7CiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL18vZywgIiIpOwogIH0KICBjaCA9IHZhbHVlWzBdOwogIGlmIChjaCA9PT0gIi0iIHx8IGNoID09PSAiKyIpIHsKICAgIGlmIChjaCA9PT0gIi0iKSBzaWduID0gLTE7CiAgICB2YWx1ZSA9IHZhbHVlLnNsaWNlKDEpOwogICAgY2ggPSB2YWx1ZVswXTsKICB9CiAgaWYgKHZhbHVlID09PSAiMCIpIHJldHVybiAwOwogIGlmIChjaCA9PT0gIjAiKSB7CiAgICBpZiAodmFsdWVbMV0gPT09ICJiIikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMik7CiAgICBpZiAodmFsdWVbMV0gPT09ICJ4IikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMTYpOwogICAgaWYgKHZhbHVlWzFdID09PSAibyIpIHJldHVybiBzaWduICogcGFyc2VJbnQodmFsdWUuc2xpY2UoMiksIDgpOwogIH0KICByZXR1cm4gc2lnbiAqIHBhcnNlSW50KHZhbHVlLCAxMCk7Cn0KZnVuY3Rpb24gaXNJbnRlZ2VyKG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgPT09IDAgJiYgIWNvbW1vbi5pc05lZ2F0aXZlWmVybyhvYmplY3QpKTsKfQp2YXIgaW50ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOmludCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEludGVnZXIsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sSW50ZWdlciwKICBwcmVkaWNhdGU6IGlzSW50ZWdlciwKICByZXByZXNlbnQ6IHsKICAgIGJpbmFyeTogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwYiIgKyBvYmoudG9TdHJpbmcoMikgOiAiLTBiIiArIG9iai50b1N0cmluZygyKS5zbGljZSgxKTsKICAgIH0sCiAgICBvY3RhbDogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwbyIgKyBvYmoudG9TdHJpbmcoOCkgOiAiLTBvIiArIG9iai50b1N0cmluZyg4KS5zbGljZSgxKTsKICAgIH0sCiAgICBkZWNpbWFsOiBmdW5jdGlvbihvYmopIHsKICAgICAgcmV0dXJuIG9iai50b1N0cmluZygxMCk7CiAgICB9LAogICAgLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqLwogICAgaGV4YWRlY2ltYWw6IGZ1bmN0aW9uKG9iaikgewogICAgICByZXR1cm4gb2JqID49IDAgPyAiMHgiICsgb2JqLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpIDogIi0weCIgKyBvYmoudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkuc2xpY2UoMSk7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJkZWNpbWFsIiwKICBzdHlsZUFsaWFzZXM6IHsKICAgIGJpbmFyeTogWzIsICJiaW4iXSwKICAgIG9jdGFsOiBbOCwgIm9jdCJdLAogICAgZGVjaW1hbDogWzEwLCAiZGVjIl0sCiAgICBoZXhhZGVjaW1hbDogWzE2LCAiaGV4Il0KICB9Cn0pOwp2YXIgWUFNTF9GTE9BVF9QQVRURVJOID0gbmV3IFJlZ0V4cCgKICAvLyAyLjVlNCwgMi41IGFuZCBpbnRlZ2VycwogICJeKD86Wy0rXT8oPzpbMC05XVswLTlfXSopKD86XFwuWzAtOV9dKik/KD86W2VFXVstK10/WzAtOV0rKT98XFwuWzAtOV9dKyg/OltlRV1bLStdP1swLTldKyk/fFstK10/XFwuKD86aW5mfEluZnxJTkYpfFxcLig/Om5hbnxOYU58TkFOKSkkIgopOwpmdW5jdGlvbiByZXNvbHZlWWFtbEZsb2F0KGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmICghWUFNTF9GTE9BVF9QQVRURVJOLnRlc3QoZGF0YSkgfHwgLy8gUXVpY2sgaGFjayB0byBub3QgYWxsb3cgaW50ZWdlcnMgZW5kIHdpdGggYF9gCiAgLy8gUHJvYmFibHkgc2hvdWxkIHVwZGF0ZSByZWdleHAgJiBjaGVjayBzcGVlZAogIGRhdGFbZGF0YS5sZW5ndGggLSAxXSA9PT0gIl8iKSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxGbG9hdChkYXRhKSB7CiAgdmFyIHZhbHVlLCBzaWduOwogIHZhbHVlID0gZGF0YS5yZXBsYWNlKC9fL2csICIiKS50b0xvd2VyQ2FzZSgpOwogIHNpZ24gPSB2YWx1ZVswXSA9PT0gIi0iID8gLTEgOiAxOwogIGlmICgiKy0iLmluZGV4T2YodmFsdWVbMF0pID49IDApIHsKICAgIHZhbHVlID0gdmFsdWUuc2xpY2UoMSk7CiAgfQogIGlmICh2YWx1ZSA9PT0gIi5pbmYiKSB7CiAgICByZXR1cm4gc2lnbiA9PT0gMSA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6IE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKICB9IGVsc2UgaWYgKHZhbHVlID09PSAiLm5hbiIpIHsKICAgIHJldHVybiBOYU47CiAgfQogIHJldHVybiBzaWduICogcGFyc2VGbG9hdCh2YWx1ZSwgMTApOwp9CnZhciBTQ0lFTlRJRklDX1dJVEhPVVRfRE9UID0gL15bLStdP1swLTldK2UvOwpmdW5jdGlvbiByZXByZXNlbnRZYW1sRmxvYXQob2JqZWN0LCBzdHlsZSkgewogIHZhciByZXM7CiAgaWYgKGlzTmFOKG9iamVjdCkpIHsKICAgIHN3aXRjaCAoc3R5bGUpIHsKICAgICAgY2FzZSAibG93ZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5uYW4iOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLk5BTiI7CiAgICAgIGNhc2UgImNhbWVsY2FzZSI6CiAgICAgICAgcmV0dXJuICIuTmFOIjsKICAgIH0KICB9IGVsc2UgaWYgKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA9PT0gb2JqZWN0KSB7CiAgICBzd2l0Y2ggKHN0eWxlKSB7CiAgICAgIGNhc2UgImxvd2VyY2FzZSI6CiAgICAgICAgcmV0dXJuICIuaW5mIjsKICAgICAgY2FzZSAidXBwZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLkluZiI7CiAgICB9CiAgfSBlbHNlIGlmIChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IG9iamVjdCkgewogICAgc3dpdGNoIChzdHlsZSkgewogICAgICBjYXNlICJsb3dlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5pbmYiOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLS5JbmYiOwogICAgfQogIH0gZWxzZSBpZiAoY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpIHsKICAgIHJldHVybiAiLTAuMCI7CiAgfQogIHJlcyA9IG9iamVjdC50b1N0cmluZygxMCk7CiAgcmV0dXJuIFNDSUVOVElGSUNfV0lUSE9VVF9ET1QudGVzdChyZXMpID8gcmVzLnJlcGxhY2UoImUiLCAiLmUiKSA6IHJlczsKfQpmdW5jdGlvbiBpc0Zsb2F0KG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgIT09IDAgfHwgY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpOwp9CnZhciBmbG9hdCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEZsb2F0LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEZsb2F0LAogIHByZWRpY2F0ZTogaXNGbG9hdCwKICByZXByZXNlbnQ6IHJlcHJlc2VudFlhbWxGbG9hdCwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwp2YXIganNvbiA9IGZhaWxzYWZlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIF9udWxsLAogICAgYm9vbCwKICAgIGludCwKICAgIGZsb2F0CiAgXQp9KTsKdmFyIGNvcmUgPSBqc29uOwp2YXIgWUFNTF9EQVRFX1JFR0VYUCA9IG5ldyBSZWdFeHAoCiAgIl4oWzAtOV1bMC05XVswLTldWzAtOV0pLShbMC05XVswLTldKS0oWzAtOV1bMC05XSkkIgopOwp2YXIgWUFNTF9USU1FU1RBTVBfUkVHRVhQID0gbmV3IFJlZ0V4cCgKICAiXihbMC05XVswLTldWzAtOV1bMC05XSktKFswLTldWzAtOV0/KS0oWzAtOV1bMC05XT8pKD86W1R0XXxbIFxcdF0rKShbMC05XVswLTldPyk6KFswLTldWzAtOV0pOihbMC05XVswLTldKSg/OlxcLihbMC05XSopKT8oPzpbIFxcdF0qKFp8KFstK10pKFswLTldWzAtOV0/KSg/OjooWzAtOV1bMC05XSkpPykpPyQiCik7CmZ1bmN0aW9uIHJlc29sdmVZYW1sVGltZXN0YW1wKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmIChZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSkgIT09IG51bGwpIHJldHVybiB0cnVlOwogIGlmIChZQU1MX1RJTUVTVEFNUF9SRUdFWFAuZXhlYyhkYXRhKSAhPT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxUaW1lc3RhbXAoZGF0YSkgewogIHZhciBtYXRjaCwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uID0gMCwgZGVsdGEgPSBudWxsLCB0el9ob3VyLCB0el9taW51dGUsIGRhdGU7CiAgbWF0Y2ggPSBZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSk7CiAgaWYgKG1hdGNoID09PSBudWxsKSBtYXRjaCA9IFlBTUxfVElNRVNUQU1QX1JFR0VYUC5leGVjKGRhdGEpOwogIGlmIChtYXRjaCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCJEYXRlIHJlc29sdmUgZXJyb3IiKTsKICB5ZWFyID0gK21hdGNoWzFdOwogIG1vbnRoID0gK21hdGNoWzJdIC0gMTsKICBkYXkgPSArbWF0Y2hbM107CiAgaWYgKCFtYXRjaFs0XSkgewogICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKHllYXIsIG1vbnRoLCBkYXkpKTsKICB9CiAgaG91ciA9ICttYXRjaFs0XTsKICBtaW51dGUgPSArbWF0Y2hbNV07CiAgc2Vjb25kID0gK21hdGNoWzZdOwogIGlmIChtYXRjaFs3XSkgewogICAgZnJhY3Rpb24gPSBtYXRjaFs3XS5zbGljZSgwLCAzKTsKICAgIHdoaWxlIChmcmFjdGlvbi5sZW5ndGggPCAzKSB7CiAgICAgIGZyYWN0aW9uICs9ICIwIjsKICAgIH0KICAgIGZyYWN0aW9uID0gK2ZyYWN0aW9uOwogIH0KICBpZiAobWF0Y2hbOV0pIHsKICAgIHR6X2hvdXIgPSArbWF0Y2hbMTBdOwogICAgdHpfbWludXRlID0gKyhtYXRjaFsxMV0gfHwgMCk7CiAgICBkZWx0YSA9ICh0el9ob3VyICogNjAgKyB0el9taW51dGUpICogNmU0OwogICAgaWYgKG1hdGNoWzldID09PSAiLSIpIGRlbHRhID0gLWRlbHRhOwogIH0KICBkYXRlID0gbmV3IERhdGUoRGF0ZS5VVEMoeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uKSk7CiAgaWYgKGRlbHRhKSBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgLSBkZWx0YSk7CiAgcmV0dXJuIGRhdGU7Cn0KZnVuY3Rpb24gcmVwcmVzZW50WWFtbFRpbWVzdGFtcChvYmplY3QpIHsKICByZXR1cm4gb2JqZWN0LnRvSVNPU3RyaW5nKCk7Cn0KdmFyIHRpbWVzdGFtcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjp0aW1lc3RhbXAiLCB7CiAga2luZDogInNjYWxhciIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxUaW1lc3RhbXAsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sVGltZXN0YW1wLAogIGluc3RhbmNlT2Y6IERhdGUsCiAgcmVwcmVzZW50OiByZXByZXNlbnRZYW1sVGltZXN0YW1wCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbE1lcmdlKGRhdGEpIHsKICByZXR1cm4gZGF0YSA9PT0gIjw8IiB8fCBkYXRhID09PSBudWxsOwp9CnZhciBtZXJnZSA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE1lcmdlCn0pOwp2YXIgQkFTRTY0X01BUCA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPVxuXHIiOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJpbmFyeShkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiBmYWxzZTsKICB2YXIgY29kZSwgaWR4LCBiaXRsZW4gPSAwLCBtYXggPSBkYXRhLmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBjb2RlID0gbWFwMi5pbmRleE9mKGRhdGEuY2hhckF0KGlkeCkpOwogICAgaWYgKGNvZGUgPiA2NCkgY29udGludWU7CiAgICBpZiAoY29kZSA8IDApIHJldHVybiBmYWxzZTsKICAgIGJpdGxlbiArPSA2OwogIH0KICByZXR1cm4gYml0bGVuICUgOCA9PT0gMDsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQmluYXJ5KGRhdGEpIHsKICB2YXIgaWR4LCB0YWlsYml0cywgaW5wdXQgPSBkYXRhLnJlcGxhY2UoL1tcclxuPV0vZywgIiIpLCBtYXggPSBpbnB1dC5sZW5ndGgsIG1hcDIgPSBCQVNFNjRfTUFQLCBiaXRzID0gMCwgcmVzdWx0ID0gW107CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgNCA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0LnB1c2goYml0cyA+PiAxNiAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgJiAyNTUpOwogICAgfQogICAgYml0cyA9IGJpdHMgPDwgNiB8IG1hcDIuaW5kZXhPZihpbnB1dC5jaGFyQXQoaWR4KSk7CiAgfQogIHRhaWxiaXRzID0gbWF4ICUgNCAqIDY7CiAgaWYgKHRhaWxiaXRzID09PSAwKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDE2ICYgMjU1KTsKICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzICYgMjU1KTsKICB9IGVsc2UgaWYgKHRhaWxiaXRzID09PSAxOCkgewogICAgcmVzdWx0LnB1c2goYml0cyA+PiAxMCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDIgJiAyNTUpOwogIH0gZWxzZSBpZiAodGFpbGJpdHMgPT09IDEyKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDQgJiAyNTUpOwogIH0KICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkocmVzdWx0KTsKfQpmdW5jdGlvbiByZXByZXNlbnRZYW1sQmluYXJ5KG9iamVjdCkgewogIHZhciByZXN1bHQgPSAiIiwgYml0cyA9IDAsIGlkeCwgdGFpbCwgbWF4ID0gb2JqZWN0Lmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgMyA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxOCAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA2ICYgNjNdOwogICAgICByZXN1bHQgKz0gbWFwMltiaXRzICYgNjNdOwogICAgfQogICAgYml0cyA9IChiaXRzIDw8IDgpICsgb2JqZWN0W2lkeF07CiAgfQogIHRhaWwgPSBtYXggJSAzOwogIGlmICh0YWlsID09PSAwKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDE4ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgPj4gNiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgJiA2M107CiAgfSBlbHNlIGlmICh0YWlsID09PSAyKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDEwICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0gZWxzZSBpZiAodGFpbCA9PT0gMSkgewogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0KICByZXR1cm4gcmVzdWx0Owp9CmZ1bmN0aW9uIGlzQmluYXJ5KG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKSA9PT0gIltvYmplY3QgVWludDhBcnJheV0iOwp9CnZhciBiaW5hcnkgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5IiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQmluYXJ5LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEJpbmFyeSwKICBwcmVkaWNhdGU6IGlzQmluYXJ5LAogIHJlcHJlc2VudDogcmVwcmVzZW50WWFtbEJpbmFyeQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQzID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIF90b1N0cmluZyQyID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxPbWFwKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIG9iamVjdEtleXMgPSBbXSwgaW5kZXgsIGxlbmd0aCwgcGFpciwgcGFpcktleSwgcGFpckhhc0tleSwgb2JqZWN0ID0gZGF0YTsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHBhaXIgPSBvYmplY3RbaW5kZXhdOwogICAgcGFpckhhc0tleSA9IGZhbHNlOwogICAgaWYgKF90b1N0cmluZyQyLmNhbGwocGFpcikgIT09ICJbb2JqZWN0IE9iamVjdF0iKSByZXR1cm4gZmFsc2U7CiAgICBmb3IgKHBhaXJLZXkgaW4gcGFpcikgewogICAgICBpZiAoX2hhc093blByb3BlcnR5JDMuY2FsbChwYWlyLCBwYWlyS2V5KSkgewogICAgICAgIGlmICghcGFpckhhc0tleSkgcGFpckhhc0tleSA9IHRydWU7CiAgICAgICAgZWxzZSByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIGlmICghcGFpckhhc0tleSkgcmV0dXJuIGZhbHNlOwogICAgaWYgKG9iamVjdEtleXMuaW5kZXhPZihwYWlyS2V5KSA9PT0gLTEpIG9iamVjdEtleXMucHVzaChwYWlyS2V5KTsKICAgIGVsc2UgcmV0dXJuIGZhbHNlOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sT21hcChkYXRhKSB7CiAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107Cn0KdmFyIG9tYXAgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6b21hcCIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sT21hcCwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxPbWFwCn0pOwp2YXIgX3RvU3RyaW5nJDEgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwpmdW5jdGlvbiByZXNvbHZlWWFtbFBhaXJzKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGlmIChfdG9TdHJpbmckMS5jYWxsKHBhaXIpICE9PSAiW29iamVjdCBPYmplY3RdIikgcmV0dXJuIGZhbHNlOwogICAga2V5cyA9IE9iamVjdC5rZXlzKHBhaXIpOwogICAgaWYgKGtleXMubGVuZ3RoICE9PSAxKSByZXR1cm4gZmFsc2U7CiAgICByZXN1bHRbaW5kZXhdID0gW2tleXNbMF0sIHBhaXJba2V5c1swXV1dOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sUGFpcnMoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gW107CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGtleXMgPSBPYmplY3Qua2V5cyhwYWlyKTsKICAgIHJlc3VsdFtpbmRleF0gPSBba2V5c1swXSwgcGFpcltrZXlzWzBdXV07CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KdmFyIHBhaXJzID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnBhaXJzIiwgewogIGtpbmQ6ICJzZXF1ZW5jZSIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxQYWlycywKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxQYWlycwp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQyID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxTZXQoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gdHJ1ZTsKICB2YXIga2V5LCBvYmplY3QgPSBkYXRhOwogIGZvciAoa2V5IGluIG9iamVjdCkgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQyLmNhbGwob2JqZWN0LCBrZXkpKSB7CiAgICAgIGlmIChvYmplY3Rba2V5XSAhPT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sU2V0KGRhdGEpIHsKICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiB7fTsKfQp2YXIgc2V0ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNldCIsIHsKICBraW5kOiAibWFwcGluZyIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxTZXQsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sU2V0Cn0pOwp2YXIgX2RlZmF1bHQgPSBjb3JlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIHRpbWVzdGFtcCwKICAgIG1lcmdlCiAgXSwKICBleHBsaWNpdDogWwogICAgYmluYXJ5LAogICAgb21hcCwKICAgIHBhaXJzLAogICAgc2V0CiAgXQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQxID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENPTlRFWFRfRkxPV19JTiA9IDE7CnZhciBDT05URVhUX0ZMT1dfT1VUID0gMjsKdmFyIENPTlRFWFRfQkxPQ0tfSU4gPSAzOwp2YXIgQ09OVEVYVF9CTE9DS19PVVQgPSA0Owp2YXIgQ0hPTVBJTkdfQ0xJUCA9IDE7CnZhciBDSE9NUElOR19TVFJJUCA9IDI7CnZhciBDSE9NUElOR19LRUVQID0gMzsKdmFyIFBBVFRFUk5fTk9OX1BSSU5UQUJMRSA9IC9bXHgwMC1ceDA4XHgwQlx4MENceDBFLVx4MUZceDdGLVx4ODRceDg2LVx4OUZcdUZGRkVcdUZGRkZdfFtcdUQ4MDAtXHVEQkZGXSg/IVtcdURDMDAtXHVERkZGXSl8KD86W15cdUQ4MDAtXHVEQkZGXXxeKVtcdURDMDAtXHVERkZGXS87CnZhciBQQVRURVJOX05PTl9BU0NJSV9MSU5FX0JSRUFLUyA9IC9bXHg4NVx1MjAyOFx1MjAyOV0vOwp2YXIgUEFUVEVSTl9GTE9XX0lORElDQVRPUlMgPSAvWyxcW1xdXHtcfV0vOwp2YXIgUEFUVEVSTl9UQUdfSEFORExFID0gL14oPzohfCEhfCFbYS16XC1dKyEpJC9pOwp2YXIgUEFUVEVSTl9UQUdfVVJJID0gL14oPzohfFteLFxbXF1ce1x9XSkoPzolWzAtOWEtZl17Mn18WzAtOWEtelwtIztcL1w/OkAmPVwrXCQsX1wuIX5cKidcKFwpXFtcXV0pKiQvaTsKZnVuY3Rpb24gX2NsYXNzKG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKTsKfQpmdW5jdGlvbiBpc19FT0woYykgewogIHJldHVybiBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19XSElURV9TUEFDRShjKSB7CiAgcmV0dXJuIGMgPT09IDkgfHwgYyA9PT0gMzI7Cn0KZnVuY3Rpb24gaXNfV1NfT1JfRU9MKGMpIHsKICByZXR1cm4gYyA9PT0gOSB8fCBjID09PSAzMiB8fCBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19GTE9XX0lORElDQVRPUihjKSB7CiAgcmV0dXJuIGMgPT09IDQ0IHx8IGMgPT09IDkxIHx8IGMgPT09IDkzIHx8IGMgPT09IDEyMyB8fCBjID09PSAxMjU7Cn0KZnVuY3Rpb24gZnJvbUhleENvZGUoYykgewogIHZhciBsYzsKICBpZiAoNDggPD0gYyAmJiBjIDw9IDU3KSB7CiAgICByZXR1cm4gYyAtIDQ4OwogIH0KICBsYyA9IGMgfCAzMjsKICBpZiAoOTcgPD0gbGMgJiYgbGMgPD0gMTAyKSB7CiAgICByZXR1cm4gbGMgLSA5NyArIDEwOwogIH0KICByZXR1cm4gLTE7Cn0KZnVuY3Rpb24gZXNjYXBlZEhleExlbihjKSB7CiAgaWYgKGMgPT09IDEyMCkgewogICAgcmV0dXJuIDI7CiAgfQogIGlmIChjID09PSAxMTcpIHsKICAgIHJldHVybiA0OwogIH0KICBpZiAoYyA9PT0gODUpIHsKICAgIHJldHVybiA4OwogIH0KICByZXR1cm4gMDsKfQpmdW5jdGlvbiBmcm9tRGVjaW1hbENvZGUoYykgewogIGlmICg0OCA8PSBjICYmIGMgPD0gNTcpIHsKICAgIHJldHVybiBjIC0gNDg7CiAgfQogIHJldHVybiAtMTsKfQpmdW5jdGlvbiBzaW1wbGVFc2NhcGVTZXF1ZW5jZShjKSB7CiAgcmV0dXJuIGMgPT09IDQ4ID8gIlwwIiA6IGMgPT09IDk3ID8gIlx4MDciIDogYyA9PT0gOTggPyAiXGIiIDogYyA9PT0gMTE2ID8gIgkiIDogYyA9PT0gOSA/ICIJIiA6IGMgPT09IDExMCA/ICJcbiIgOiBjID09PSAxMTggPyAiXHYiIDogYyA9PT0gMTAyID8gIlxmIiA6IGMgPT09IDExNCA/ICJcciIgOiBjID09PSAxMDEgPyAiXHgxQiIgOiBjID09PSAzMiA/ICIgIiA6IGMgPT09IDM0ID8gJyInIDogYyA9PT0gNDcgPyAiLyIgOiBjID09PSA5MiA/ICJcXCIgOiBjID09PSA3OCA/ICJceDg1IiA6IGMgPT09IDk1ID8gIlx4QTAiIDogYyA9PT0gNzYgPyAiXHUyMDI4IiA6IGMgPT09IDgwID8gIlx1MjAyOSIgOiAiIjsKfQpmdW5jdGlvbiBjaGFyRnJvbUNvZGVwb2ludChjKSB7CiAgaWYgKGMgPD0gNjU1MzUpIHsKICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGMpOwogIH0KICByZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZSgKICAgIChjIC0gNjU1MzYgPj4gMTApICsgNTUyOTYsCiAgICAoYyAtIDY1NTM2ICYgMTAyMykgKyA1NjMyMAogICk7Cn0KdmFyIHNpbXBsZUVzY2FwZUNoZWNrID0gbmV3IEFycmF5KDI1Nik7CnZhciBzaW1wbGVFc2NhcGVNYXAgPSBuZXcgQXJyYXkoMjU2KTsKZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7CiAgc2ltcGxlRXNjYXBlQ2hlY2tbaV0gPSBzaW1wbGVFc2NhcGVTZXF1ZW5jZShpKSA/IDEgOiAwOwogIHNpbXBsZUVzY2FwZU1hcFtpXSA9IHNpbXBsZUVzY2FwZVNlcXVlbmNlKGkpOwp9CnZhciBpOwpmdW5jdGlvbiBTdGF0ZSQxKGlucHV0LCBvcHRpb25zKSB7CiAgdGhpcy5pbnB1dCA9IGlucHV0OwogIHRoaXMuZmlsZW5hbWUgPSBvcHRpb25zWyJmaWxlbmFtZSJdIHx8IG51bGw7CiAgdGhpcy5zY2hlbWEgPSBvcHRpb25zWyJzY2hlbWEiXSB8fCBfZGVmYXVsdDsKICB0aGlzLm9uV2FybmluZyA9IG9wdGlvbnNbIm9uV2FybmluZyJdIHx8IG51bGw7CiAgdGhpcy5sZWdhY3kgPSBvcHRpb25zWyJsZWdhY3kiXSB8fCBmYWxzZTsKICB0aGlzLmpzb24gPSBvcHRpb25zWyJqc29uIl0gfHwgZmFsc2U7CiAgdGhpcy5saXN0ZW5lciA9IG9wdGlvbnNbImxpc3RlbmVyIl0gfHwgbnVsbDsKICB0aGlzLmltcGxpY2l0VHlwZXMgPSB0aGlzLnNjaGVtYS5jb21waWxlZEltcGxpY2l0OwogIHRoaXMudHlwZU1hcCA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkVHlwZU1hcDsKICB0aGlzLmxlbmd0aCA9IGlucHV0Lmxlbmd0aDsKICB0aGlzLnBvc2l0aW9uID0gMDsKICB0aGlzLmxpbmUgPSAwOwogIHRoaXMubGluZVN0YXJ0ID0gMDsKICB0aGlzLmxpbmVJbmRlbnQgPSAwOwogIHRoaXMuZmlyc3RUYWJJbkxpbmUgPSAtMTsKICB0aGlzLmRvY3VtZW50cyA9IFtdOwp9CmZ1bmN0aW9uIGdlbmVyYXRlRXJyb3Ioc3RhdGUsIG1lc3NhZ2UpIHsKICB2YXIgbWFyayA9IHsKICAgIG5hbWU6IHN0YXRlLmZpbGVuYW1lLAogICAgYnVmZmVyOiBzdGF0ZS5pbnB1dC5zbGljZSgwLCAtMSksCiAgICAvLyBvbWl0IHRyYWlsaW5nIFwwCiAgICBwb3NpdGlvbjogc3RhdGUucG9zaXRpb24sCiAgICBsaW5lOiBzdGF0ZS5saW5lLAogICAgY29sdW1uOiBzdGF0ZS5wb3NpdGlvbiAtIHN0YXRlLmxpbmVTdGFydAogIH07CiAgbWFyay5zbmlwcGV0ID0gc25pcHBldChtYXJrKTsKICByZXR1cm4gbmV3IGV4Y2VwdGlvbihtZXNzYWdlLCBtYXJrKTsKfQpmdW5jdGlvbiB0aHJvd0Vycm9yKHN0YXRlLCBtZXNzYWdlKSB7CiAgdGhyb3cgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSk7Cn0KZnVuY3Rpb24gdGhyb3dXYXJuaW5nKHN0YXRlLCBtZXNzYWdlKSB7CiAgaWYgKHN0YXRlLm9uV2FybmluZykgewogICAgc3RhdGUub25XYXJuaW5nLmNhbGwobnVsbCwgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSkpOwogIH0KfQp2YXIgZGlyZWN0aXZlSGFuZGxlcnMgPSB7CiAgWUFNTDogZnVuY3Rpb24gaGFuZGxlWWFtbERpcmVjdGl2ZShzdGF0ZSwgbmFtZSwgYXJncykgewogICAgdmFyIG1hdGNoLCBtYWpvciwgbWlub3I7CiAgICBpZiAoc3RhdGUudmVyc2lvbiAhPT0gbnVsbCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgJVlBTUwgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoYXJncy5sZW5ndGggIT09IDEpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIllBTUwgZGlyZWN0aXZlIGFjY2VwdHMgZXhhY3RseSBvbmUgYXJndW1lbnQiKTsKICAgIH0KICAgIG1hdGNoID0gL14oWzAtOV0rKVwuKFswLTldKykkLy5leGVjKGFyZ3NbMF0pOwogICAgaWYgKG1hdGNoID09PSBudWxsKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIGFyZ3VtZW50IG9mIHRoZSBZQU1MIGRpcmVjdGl2ZSIpOwogICAgfQogICAgbWFqb3IgPSBwYXJzZUludChtYXRjaFsxXSwgMTApOwogICAgbWlub3IgPSBwYXJzZUludChtYXRjaFsyXSwgMTApOwogICAgaWYgKG1ham9yICE9PSAxKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ1bmFjY2VwdGFibGUgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogICAgc3RhdGUudmVyc2lvbiA9IGFyZ3NbMF07CiAgICBzdGF0ZS5jaGVja0xpbmVCcmVha3MgPSBtaW5vciA8IDI7CiAgICBpZiAobWlub3IgIT09IDEgJiYgbWlub3IgIT09IDIpIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAidW5zdXBwb3J0ZWQgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogIH0sCiAgVEFHOiBmdW5jdGlvbiBoYW5kbGVUYWdEaXJlY3RpdmUoc3RhdGUsIG5hbWUsIGFyZ3MpIHsKICAgIHZhciBoYW5kbGUsIHByZWZpeDsKICAgIGlmIChhcmdzLmxlbmd0aCAhPT0gMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiVEFHIGRpcmVjdGl2ZSBhY2NlcHRzIGV4YWN0bHkgdHdvIGFyZ3VtZW50cyIpOwogICAgfQogICAgaGFuZGxlID0gYXJnc1swXTsKICAgIHByZWZpeCA9IGFyZ3NbMV07CiAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImlsbC1mb3JtZWQgdGFnIGhhbmRsZSAoZmlyc3QgYXJndW1lbnQpIG9mIHRoZSBUQUcgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3RoZXJlIGlzIGEgcHJldmlvdXNseSBkZWNsYXJlZCBzdWZmaXggZm9yICInICsgaGFuZGxlICsgJyIgdGFnIGhhbmRsZScpOwogICAgfQogICAgaWYgKCFQQVRURVJOX1RBR19VUkkudGVzdChwcmVmaXgpKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIHRhZyBwcmVmaXggKHNlY29uZCBhcmd1bWVudCkgb2YgdGhlIFRBRyBkaXJlY3RpdmUiKTsKICAgIH0KICAgIHRyeSB7CiAgICAgIHByZWZpeCA9IGRlY29kZVVSSUNvbXBvbmVudChwcmVmaXgpOwogICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgcHJlZml4IGlzIG1hbGZvcm1lZDogIiArIHByZWZpeCk7CiAgICB9CiAgICBzdGF0ZS50YWdNYXBbaGFuZGxlXSA9IHByZWZpeDsKICB9Cn07CmZ1bmN0aW9uIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBzdGFydCwgZW5kLCBjaGVja0pzb24pIHsKICB2YXIgX3Bvc2l0aW9uLCBfbGVuZ3RoLCBfY2hhcmFjdGVyLCBfcmVzdWx0OwogIGlmIChzdGFydCA8IGVuZCkgewogICAgX3Jlc3VsdCA9IHN0YXRlLmlucHV0LnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgaWYgKGNoZWNrSnNvbikgewogICAgICBmb3IgKF9wb3NpdGlvbiA9IDAsIF9sZW5ndGggPSBfcmVzdWx0Lmxlbmd0aDsgX3Bvc2l0aW9uIDwgX2xlbmd0aDsgX3Bvc2l0aW9uICs9IDEpIHsKICAgICAgICBfY2hhcmFjdGVyID0gX3Jlc3VsdC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICAgICAgaWYgKCEoX2NoYXJhY3RlciA9PT0gOSB8fCAzMiA8PSBfY2hhcmFjdGVyICYmIF9jaGFyYWN0ZXIgPD0gMTExNDExMSkpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB2YWxpZCBKU09OIGNoYXJhY3RlciIpOwogICAgICAgIH0KICAgICAgfQogICAgfSBlbHNlIGlmIChQQVRURVJOX05PTl9QUklOVEFCTEUudGVzdChfcmVzdWx0KSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGhlIHN0cmVhbSBjb250YWlucyBub24tcHJpbnRhYmxlIGNoYXJhY3RlcnMiKTsKICAgIH0KICAgIHN0YXRlLnJlc3VsdCArPSBfcmVzdWx0OwogIH0KfQpmdW5jdGlvbiBtZXJnZU1hcHBpbmdzKHN0YXRlLCBkZXN0aW5hdGlvbiwgc291cmNlLCBvdmVycmlkYWJsZUtleXMpIHsKICB2YXIgc291cmNlS2V5cywga2V5LCBpbmRleCwgcXVhbnRpdHk7CiAgaWYgKCFjb21tb24uaXNPYmplY3Qoc291cmNlKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImNhbm5vdCBtZXJnZSBtYXBwaW5nczsgdGhlIHByb3ZpZGVkIHNvdXJjZSBvYmplY3QgaXMgdW5hY2NlcHRhYmxlIik7CiAgfQogIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogIGZvciAoaW5kZXggPSAwLCBxdWFudGl0eSA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IHF1YW50aXR5OyBpbmRleCArPSAxKSB7CiAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChkZXN0aW5hdGlvbiwga2V5KSkgewogICAgICBkZXN0aW5hdGlvbltrZXldID0gc291cmNlW2tleV07CiAgICAgIG92ZXJyaWRhYmxlS2V5c1trZXldID0gdHJ1ZTsKICAgIH0KICB9Cn0KZnVuY3Rpb24gc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgc3RhcnRMaW5lLCBzdGFydExpbmVTdGFydCwgc3RhcnRQb3MpIHsKICB2YXIgaW5kZXgsIHF1YW50aXR5OwogIGlmIChBcnJheS5pc0FycmF5KGtleU5vZGUpKSB7CiAgICBrZXlOb2RlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoa2V5Tm9kZSk7CiAgICBmb3IgKGluZGV4ID0gMCwgcXVhbnRpdHkgPSBrZXlOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShrZXlOb2RlW2luZGV4XSkpIHsKICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibmVzdGVkIGFycmF5cyBhcmUgbm90IHN1cHBvcnRlZCBpbnNpZGUga2V5cyIpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGVbaW5kZXhdKSA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgICBrZXlOb2RlW2luZGV4XSA9ICJbb2JqZWN0IE9iamVjdF0iOwogICAgICB9CiAgICB9CiAgfQogIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGUpID09PSAiW29iamVjdCBPYmplY3RdIikgewogICAga2V5Tm9kZSA9ICJbb2JqZWN0IE9iamVjdF0iOwogIH0KICBrZXlOb2RlID0gU3RyaW5nKGtleU5vZGUpOwogIGlmIChfcmVzdWx0ID09PSBudWxsKSB7CiAgICBfcmVzdWx0ID0ge307CiAgfQogIGlmIChrZXlUYWcgPT09ICJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIpIHsKICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlTm9kZSkpIHsKICAgICAgZm9yIChpbmRleCA9IDAsIHF1YW50aXR5ID0gdmFsdWVOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZVtpbmRleF0sIG92ZXJyaWRhYmxlS2V5cyk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZSwgb3ZlcnJpZGFibGVLZXlzKTsKICAgIH0KICB9IGVsc2UgewogICAgaWYgKCFzdGF0ZS5qc29uICYmICFfaGFzT3duUHJvcGVydHkkMS5jYWxsKG92ZXJyaWRhYmxlS2V5cywga2V5Tm9kZSkgJiYgX2hhc093blByb3BlcnR5JDEuY2FsbChfcmVzdWx0LCBrZXlOb2RlKSkgewogICAgICBzdGF0ZS5saW5lID0gc3RhcnRMaW5lIHx8IHN0YXRlLmxpbmU7CiAgICAgIHN0YXRlLmxpbmVTdGFydCA9IHN0YXJ0TGluZVN0YXJ0IHx8IHN0YXRlLmxpbmVTdGFydDsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGFydFBvcyB8fCBzdGF0ZS5wb3NpdGlvbjsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0ZWQgbWFwcGluZyBrZXkiKTsKICAgIH0KICAgIGlmIChrZXlOb2RlID09PSAiX19wcm90b19fIikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoX3Jlc3VsdCwga2V5Tm9kZSwgewogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLAogICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgIHZhbHVlOiB2YWx1ZU5vZGUKICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICBfcmVzdWx0W2tleU5vZGVdID0gdmFsdWVOb2RlOwogICAgfQogICAgZGVsZXRlIG92ZXJyaWRhYmxlS2V5c1trZXlOb2RlXTsKICB9CiAgcmV0dXJuIF9yZXN1bHQ7Cn0KZnVuY3Rpb24gcmVhZExpbmVCcmVhayhzdGF0ZSkgewogIHZhciBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTApIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgfSBlbHNlIGlmIChjaCA9PT0gMTMpIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDEwKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICB9CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIGxpbmUgYnJlYWsgaXMgZXhwZWN0ZWQiKTsKICB9CiAgc3RhdGUubGluZSArPSAxOwogIHN0YXRlLmxpbmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogIHN0YXRlLmZpcnN0VGFiSW5MaW5lID0gLTE7Cn0KZnVuY3Rpb24gc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgYWxsb3dDb21tZW50cywgY2hlY2tJbmRlbnQpIHsKICB2YXIgbGluZUJyZWFrcyA9IDAsIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICB3aGlsZSAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gOSAmJiBzdGF0ZS5maXJzdFRhYkluTGluZSA9PT0gLTEpIHsKICAgICAgICBzdGF0ZS5maXJzdFRhYkluTGluZSA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB9CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmIChhbGxvd0NvbW1lbnRzICYmIGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlIChjaCAhPT0gMTAgJiYgY2ggIT09IDEzICYmIGNoICE9PSAwKTsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIHJlYWRMaW5lQnJlYWsoc3RhdGUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICBsaW5lQnJlYWtzKys7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQgPSAwOwogICAgICB3aGlsZSAoY2ggPT09IDMyKSB7CiAgICAgICAgc3RhdGUubGluZUluZGVudCsrOwogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgYnJlYWs7CiAgICB9CiAgfQogIGlmIChjaGVja0luZGVudCAhPT0gLTEgJiYgbGluZUJyZWFrcyAhPT0gMCAmJiBzdGF0ZS5saW5lSW5kZW50IDwgY2hlY2tJbmRlbnQpIHsKICAgIHRocm93V2FybmluZyhzdGF0ZSwgImRlZmljaWVudCBpbmRlbnRhdGlvbiIpOwogIH0KICByZXR1cm4gbGluZUJyZWFrczsKfQpmdW5jdGlvbiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb24sIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChfcG9zaXRpb24pOwogIGlmICgoY2ggPT09IDQ1IHx8IGNoID09PSA0NikgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMSkgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMikpIHsKICAgIF9wb3NpdGlvbiArPSAzOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICBpZiAoY2ggPT09IDAgfHwgaXNfV1NfT1JfRU9MKGNoKSkgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICB9CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIGNvdW50KSB7CiAgaWYgKGNvdW50ID09PSAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gIiAiOwogIH0gZWxzZSBpZiAoY291bnQgPiAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBjb3VudCAtIDEpOwogIH0KfQpmdW5jdGlvbiByZWFkUGxhaW5TY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQsIHdpdGhpbkZsb3dDb2xsZWN0aW9uKSB7CiAgdmFyIHByZWNlZGluZywgZm9sbG93aW5nLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhhc1BlbmRpbmdDb250ZW50LCBfbGluZSwgX2xpbmVTdGFydCwgX2xpbmVJbmRlbnQsIF9raW5kID0gc3RhdGUua2luZCwgX3Jlc3VsdCA9IHN0YXRlLnJlc3VsdCwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoaXNfV1NfT1JfRU9MKGNoKSB8fCBpc19GTE9XX0lORElDQVRPUihjaCkgfHwgY2ggPT09IDM1IHx8IGNoID09PSAzOCB8fCBjaCA9PT0gNDIgfHwgY2ggPT09IDMzIHx8IGNoID09PSAxMjQgfHwgY2ggPT09IDYyIHx8IGNoID09PSAzOSB8fCBjaCA9PT0gMzQgfHwgY2ggPT09IDM3IHx8IGNoID09PSA2NCB8fCBjaCA9PT0gOTYpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgaWYgKGNoID09PSA2MyB8fCBjaCA9PT0gNDUpIHsKICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICBoYXNQZW5kaW5nQ29udGVudCA9IGZhbHNlOwogIHdoaWxlIChjaCAhPT0gMCkgewogICAgaWYgKGNoID09PSA1OCkgewogICAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoY2ggPT09IDM1KSB7CiAgICAgIHByZWNlZGluZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gLSAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChwcmVjZWRpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHx8IHdpdGhpbkZsb3dDb2xsZWN0aW9uICYmIGlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgICBicmVhazsKICAgIH0gZWxzZSBpZiAoaXNfRU9MKGNoKSkgewogICAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICAgIF9saW5lSW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIC0xKTsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPj0gbm9kZUluZGVudCkgewogICAgICAgIGhhc1BlbmRpbmdDb250ZW50ID0gdHJ1ZTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnBvc2l0aW9uID0gY2FwdHVyZUVuZDsKICAgICAgICBzdGF0ZS5saW5lID0gX2xpbmU7CiAgICAgICAgc3RhdGUubGluZVN0YXJ0ID0gX2xpbmVTdGFydDsKICAgICAgICBzdGF0ZS5saW5lSW5kZW50ID0gX2xpbmVJbmRlbnQ7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0KICAgIGlmIChoYXNQZW5kaW5nQ29udGVudCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBjYXB0dXJlRW5kLCBmYWxzZSk7CiAgICAgIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIHN0YXRlLmxpbmUgLSBfbGluZSk7CiAgICAgIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgaGFzUGVuZGluZ0NvbnRlbnQgPSBmYWxzZTsKICAgIH0KICAgIGlmICghaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbiArIDE7CiAgICB9CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgfQogIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGZhbHNlKTsKICBpZiAoc3RhdGUucmVzdWx0KSB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CiAgc3RhdGUua2luZCA9IF9raW5kOwogIHN0YXRlLnJlc3VsdCA9IF9yZXN1bHQ7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2gsIGNhcHR1cmVTdGFydCwgY2FwdHVyZUVuZDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzkpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIHN0YXRlLnBvc2l0aW9uKys7CiAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogIHdoaWxlICgoY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSkgIT09IDApIHsKICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgICBjYXB0dXJlU3RhcnQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZERvdWJsZVF1b3RlZFNjYWxhcihzdGF0ZSwgbm9kZUluZGVudCkgewogIHZhciBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhleExlbmd0aCwgaGV4UmVzdWx0LCB0bXAsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSAzNCkgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBzdGF0ZS5raW5kID0gInNjYWxhciI7CiAgc3RhdGUucmVzdWx0ID0gIiI7CiAgc3RhdGUucG9zaXRpb24rKzsKICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgd2hpbGUgKChjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pKSAhPT0gMCkgewogICAgaWYgKGNoID09PSAzNCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBzdGF0ZS5wb3NpdGlvbiwgdHJ1ZSk7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSBlbHNlIGlmIChjaCA9PT0gOTIpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIG5vZGVJbmRlbnQpOwogICAgICB9IGVsc2UgaWYgKGNoIDwgMjU2ICYmIHNpbXBsZUVzY2FwZUNoZWNrW2NoXSkgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBzaW1wbGVFc2NhcGVNYXBbY2hdOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSBpZiAoKHRtcCA9IGVzY2FwZWRIZXhMZW4oY2gpKSA+IDApIHsKICAgICAgICBoZXhMZW5ndGggPSB0bXA7CiAgICAgICAgaGV4UmVzdWx0ID0gMDsKICAgICAgICBmb3IgKDsgaGV4TGVuZ3RoID4gMDsgaGV4TGVuZ3RoLS0pIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICAgIGlmICgodG1wID0gZnJvbUhleENvZGUoY2gpKSA+PSAwKSB7CiAgICAgICAgICAgIGhleFJlc3VsdCA9IChoZXhSZXN1bHQgPDwgNCkgKyB0bXA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZXhwZWN0ZWQgaGV4YWRlY2ltYWwgY2hhcmFjdGVyIik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjaGFyRnJvbUNvZGVwb2ludChoZXhSZXN1bHQpOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInVua25vd24gZXNjYXBlIHNlcXVlbmNlIik7CiAgICAgIH0KICAgICAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIHJlYWROZXh0ID0gdHJ1ZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9yZXN1bHQsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIGZvbGxvd2luZywgdGVybWluYXRvciwgaXNQYWlyLCBpc0V4cGxpY2l0UGFpciwgaXNNYXBwaW5nLCBvdmVycmlkYWJsZUtleXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKSwga2V5Tm9kZSwga2V5VGFnLCB2YWx1ZU5vZGUsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoID09PSA5MSkgewogICAgdGVybWluYXRvciA9IDkzOwogICAgaXNNYXBwaW5nID0gZmFsc2U7CiAgICBfcmVzdWx0ID0gW107CiAgfSBlbHNlIGlmIChjaCA9PT0gMTIzKSB7CiAgICB0ZXJtaW5hdG9yID0gMTI1OwogICAgaXNNYXBwaW5nID0gdHJ1ZTsKICAgIF9yZXN1bHQgPSB7fTsKICB9IGVsc2UgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gdGVybWluYXRvcikgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgICBzdGF0ZS5raW5kID0gaXNNYXBwaW5nID8gIm1hcHBpbmciIDogInNlcXVlbmNlIjsKICAgICAgc3RhdGUucmVzdWx0ID0gX3Jlc3VsdDsKICAgICAgcmV0dXJuIHRydWU7CiAgICB9IGVsc2UgaWYgKCFyZWFkTmV4dCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibWlzc2VkIGNvbW1hIGJldHdlZW4gZmxvdyBjb2xsZWN0aW9uIGVudHJpZXMiKTsKICAgIH0gZWxzZSBpZiAoY2ggPT09IDQ0KSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB0aGUgbm9kZSBjb250ZW50LCBidXQgZm91bmQgJywnIik7CiAgICB9CiAgICBrZXlUYWcgPSBrZXlOb2RlID0gdmFsdWVOb2RlID0gbnVsbDsKICAgIGlzUGFpciA9IGlzRXhwbGljaXRQYWlyID0gZmFsc2U7CiAgICBpZiAoY2ggPT09IDYzKSB7CiAgICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgICAgaXNQYWlyID0gaXNFeHBsaWNpdFBhaXIgPSB0cnVlOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIH0KICAgIH0KICAgIF9saW5lID0gc3RhdGUubGluZTsKICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICBfcG9zID0gc3RhdGUucG9zaXRpb247CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9GTE9XX0lOLCBmYWxzZSwgdHJ1ZSk7CiAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChpc0V4cGxpY2l0UGFpciB8fCBzdGF0ZS5saW5lID09PSBfbGluZSkgJiYgY2ggPT09IDU4KSB7CiAgICAgIGlzUGFpciA9IHRydWU7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIGNvbXBvc2VOb2RlKHN0YXRlLCBub2RlSW5kZW50LCBDT05URVhUX0ZMT1dfSU4sIGZhbHNlLCB0cnVlKTsKICAgICAgdmFsdWVOb2RlID0gc3RhdGUucmVzdWx0OwogICAgfQogICAgaWYgKGlzTWFwcGluZykgewogICAgICBzdG9yZU1hcHBpbmdQYWlyKHN0YXRlLCBfcmVzdWx0LCBvdmVycmlkYWJsZUtleXMsIGtleVRhZywga2V5Tm9kZSwgdmFsdWVOb2RlLCBfbGluZSwgX2xpbmVTdGFydCwgX3Bvcyk7CiAgICB9IGVsc2UgaWYgKGlzUGFpcikgewogICAgICBfcmVzdWx0LnB1c2goc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgbnVsbCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MpKTsKICAgIH0gZWxzZSB7CiAgICAgIF9yZXN1bHQucHVzaChrZXlOb2RlKTsKICAgIH0KICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDQpIHsKICAgICAgcmVhZE5leHQgPSB0cnVlOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICByZWFkTmV4dCA9IGZhbHNlOwogICAgfQogIH0KICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24iKTsKfQpmdW5jdGlvbiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2FwdHVyZVN0YXJ0LCBmb2xkaW5nLCBjaG9tcGluZyA9IENIT01QSU5HX0NMSVAsIGRpZFJlYWRDb250ZW50ID0gZmFsc2UsIGRldGVjdGVkSW5kZW50ID0gZmFsc2UsIHRleHRJbmRlbnQgPSBub2RlSW5kZW50LCBlbXB0eUxpbmVzID0gMCwgYXRNb3JlSW5kZW50ZWQgPSBmYWxzZSwgdG1wLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTI0KSB7CiAgICBmb2xkaW5nID0gZmFsc2U7CiAgfSBlbHNlIGlmIChjaCA9PT0gNjIpIHsKICAgIGZvbGRpbmcgPSB0cnVlOwogIH0gZWxzZSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHN0YXRlLmtpbmQgPSAic2NhbGFyIjsKICBzdGF0ZS5yZXN1bHQgPSAiIjsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDMgfHwgY2ggPT09IDQ1KSB7CiAgICAgIGlmIChDSE9NUElOR19DTElQID09PSBjaG9tcGluZykgewogICAgICAgIGNob21waW5nID0gY2ggPT09IDQzID8gQ0hPTVBJTkdfS0VFUCA6IENIT01QSU5HX1NUUklQOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYSBjaG9tcGluZyBtb2RlIGlkZW50aWZpZXIiKTsKICAgICAgfQogICAgfSBlbHNlIGlmICgodG1wID0gZnJvbURlY2ltYWxDb2RlKGNoKSkgPj0gMCkgewogICAgICBpZiAodG1wID09PSAwKSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBleHBsaWNpdCBpbmRlbnRhdGlvbiB3aWR0aCBvZiBhIGJsb2NrIHNjYWxhcjsgaXQgY2Fubm90IGJlIGxlc3MgdGhhbiBvbmUiKTsKICAgICAgfSBlbHNlIGlmICghZGV0ZWN0ZWRJbmRlbnQpIHsKICAgICAgICB0ZXh0SW5kZW50ID0gbm9kZUluZGVudCArIHRtcCAtIDE7CiAgICAgICAgZGV0ZWN0ZWRJbmRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYW4gaW5kZW50YXRpb24gd2lkdGggaWRlbnRpZmllciIpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBicmVhazsKICAgIH0KICB9CiAgaWYgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgZG8gewogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpOwogICAgaWYgKGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlICghaXNfRU9MKGNoKSAmJiBjaCAhPT0gMCk7CiAgICB9CiAgfQogIHdoaWxlIChjaCAhPT0gMCkgewogICAgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBzdGF0ZS5saW5lSW5kZW50ID0gMDsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgICB3aGlsZSAoKCFkZXRlY3RlZEluZGVudCB8fCBzdGF0ZS5saW5lSW5kZW50IDwgdGV4dEluZGVudCkgJiYgY2ggPT09IDMyKSB7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQrKzsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgaWYgKCFkZXRlY3RlZEluZGVudCAmJiBzdGF0ZS5saW5lSW5kZW50ID4gdGV4dEluZGVudCkgewogICAgICB0ZXh0SW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGVtcHR5TGluZXMrKzsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUubGluZUluZGVudCA8IHRleHRJbmRlbnQpIHsKICAgICAgaWYgKGNob21waW5nID09PSBDSE9NUElOR19LRUVQKSB7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZGlkUmVhZENvbnRlbnQgPyAxICsgZW1wdHlMaW5lcyA6IGVtcHR5TGluZXMpOwogICAgICB9IGVsc2UgaWYgKGNob21waW5nID09PSBDSE9NUElOR19DTElQKSB7CiAgICAgICAgaWYgKGRpZFJlYWRDb250ZW50KSB7CiAgICAgICAgICBzdGF0ZS5yZXN1bHQgKz0gIlxuIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgYnJlYWs7CiAgICB9CiAgICBpZiAoZm9sZGluZykgewogICAgICBpZiAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgICAgYXRNb3JlSW5kZW50ZWQgPSB0cnVlOwogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGRpZFJlYWRDb250ZW50ID8gMSArIGVtcHR5TGluZXMgOiBlbXB0eUxpbmVzKTsKICAgICAgfSBlbHNlIGlmIChhdE1vcmVJbmRlbnRlZCkgewogICAgICAgIGF0TW9yZUluZGVudGVkID0gZmFsc2U7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZW1wdHlMaW5lcyArIDEpOwogICAgICB9IGVsc2UgaWYgKGVtcHR5TGluZXMgPT09IDApIHsKICAgICAgICBpZiAoZGlkUmVhZENvbnRlbnQpIHsKICAgICAgICAgIHN0YXRlLnJlc3VsdCArPSAiICI7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGVtcHR5TGluZXMpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBkaWRSZWFkQ29udGVudCA/IDEgKyBlbXB0eUxpbmVzIDogZW1wdHlMaW5lcyk7CiAgICB9CiAgICBkaWRSZWFkQ29udGVudCA9IHRydWU7CiAgICBkZXRlY3RlZEluZGVudCA9IHRydWU7CiAgICBlbXB0eUxpbmVzID0gMDsKICAgIGNhcHR1cmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogICAgd2hpbGUgKCFpc19FT0woY2gpICYmIGNoICE9PSAwKSB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIHN0YXRlLnBvc2l0aW9uLCBmYWxzZSk7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIHJlYWRCbG9ja1NlcXVlbmNlKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIF9saW5lLCBfdGFnID0gc3RhdGUudGFnLCBfYW5jaG9yID0gc3RhdGUuYW5jaG9yLCBfcmVzdWx0ID0gW10sIGZvbGxvd2luZywgZGV0ZWN0ZWQgPSBmYWxzZSwgY2g7CiAgaWYgKHN0YXRlLmZpcnN0VGFiSW5MaW5lICE9PSAtMSkgcmV0dXJuIGZhbHNlOwogIGlmIChzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgIHN0YXRlLmFuY2hvck1hcFtzdGF0ZS5hbmNob3JdID0gX3Jlc3VsdDsKICB9CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGF0ZS5maXJzdFRhYkluTGluZTsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhYiBjaGFyYWN0ZXJzIG11c3Qgbm90IGJlIHVzZWQgaW4gaW5kZW50YXRpb24iKTsKICAgIH0KICAgIGlmIChjaCAhPT0gNDUpIHsKICAgICAgYnJlYWs7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBpZiAoIWlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGJyZWFrOwogICAgfQogICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgc3RhdGUucG9zaXRpb24rKzsKICAgIGlmIChza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSkpIHsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPD0gbm9kZUluZGVudCkgewogICAgICAgIF9yZXN1bHQucHVzaChudWxsKTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9CiAgICB9CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9CTE9DS19JTiwgZmFsc2UsIHRydWUpOwogICAgX3Jlc3VsdC5wdXNoKHN0YXRlLnJlc3VsdCk7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgJiYgY2ggIT09IDApIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBpbmRlbnRhdGlvbiBvZiBhIHNlcXVlbmNlIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoZGV0ZWN0ZWQpIHsKICAgIHN0YXRlLnRhZyA9IF90YWc7CiAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgc3RhdGUua2luZCA9ICJzZXF1ZW5jZSI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogICAgcmV0dXJuIHRydWU7CiAgfQogIHJldHVybiBmYWxzZTsKfQpmdW5jdGlvbiByZWFkQmxvY2tNYXBwaW5nKHN0YXRlLCBub2RlSW5kZW50LCBmbG93SW5kZW50KSB7CiAgdmFyIGZvbGxvd2luZywgYWxsb3dDb21wYWN0LCBfbGluZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIF9yZXN1bHQgPSB7fSwgb3ZlcnJpZGFibGVLZXlzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCksIGtleVRhZyA9IG51bGwsIGtleU5vZGUgPSBudWxsLCB2YWx1ZU5vZGUgPSBudWxsLCBhdEV4cGxpY2l0S2V5ID0gZmFsc2UsIGRldGVjdGVkID0gZmFsc2UsIGNoOwogIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICBpZiAoIWF0RXhwbGljaXRLZXkgJiYgc3RhdGUuZmlyc3RUYWJJbkxpbmUgIT09IC0xKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uID0gc3RhdGUuZmlyc3RUYWJJbkxpbmU7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWIgY2hhcmFjdGVycyBtdXN0IG5vdCBiZSB1c2VkIGluIGluZGVudGF0aW9uIik7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBpZiAoKGNoID09PSA2MyB8fCBjaCA9PT0gNTgpICYmIGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGlmIChjaCA9PT0gNjMpIHsKICAgICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgIH0KICAgICAgICBkZXRlY3RlZCA9IHRydWU7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IHRydWU7CiAgICAgICAgYWxsb3dDb21wYWN0ID0gdHJ1ZTsKICAgICAgfSBlbHNlIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgIGFsbG93Q29tcGFjdCA9IHRydWU7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImluY29tcGxldGUgZXhwbGljaXQgbWFwcGluZyBwYWlyOyBhIGtleSBub2RlIGlzIG1pc3NlZDsgb3IgZm9sbG93ZWQgYnkgYSBub24tdGFidWxhdGVkIGVtcHR5IGxpbmUiKTsKICAgICAgfQogICAgICBzdGF0ZS5wb3NpdGlvbiArPSAxOwogICAgICBjaCA9IGZvbGxvd2luZzsKICAgIH0gZWxzZSB7CiAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgX2tleUxpbmVTdGFydCA9IHN0YXRlLmxpbmVTdGFydDsKICAgICAgX2tleVBvcyA9IHN0YXRlLnBvc2l0aW9uOwogICAgICBpZiAoIWNvbXBvc2VOb2RlKHN0YXRlLCBmbG93SW5kZW50LCBDT05URVhUX0ZMT1dfT1VULCBmYWxzZSwgdHJ1ZSkpIHsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoc3RhdGUubGluZSA9PT0gX2xpbmUpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNoID09PSA1OCkgewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgICAgaWYgKCFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIHdoaXRlc3BhY2UgY2hhcmFjdGVyIGlzIGV4cGVjdGVkIGFmdGVyIHRoZSBrZXktdmFsdWUgc2VwYXJhdG9yIHdpdGhpbiBhIGJsb2NrIG1hcHBpbmciKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgICAgIHN0b3JlTWFwcGluZ1BhaXIoc3RhdGUsIF9yZXN1bHQsIG92ZXJyaWRhYmxlS2V5cywga2V5VGFnLCBrZXlOb2RlLCBudWxsLCBfa2V5TGluZSwgX2tleUxpbmVTdGFydCwgX2tleVBvcyk7CiAgICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgICAgfQogICAgICAgICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgICAgYWxsb3dDb21wYWN0ID0gZmFsc2U7CiAgICAgICAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICAgICAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgICAgIH0gZWxzZSBpZiAoZGV0ZWN0ZWQpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYW4gaW1wbGljaXQgbWFwcGluZyBwYWlyOyBhIGNvbG9uIGlzIG1pc3NlZCIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChkZXRlY3RlZCkgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYSBibG9jayBtYXBwaW5nIGVudHJ5OyBhIG11bHRpbGluZSBrZXkgbWF5IG5vdCBiZSBhbiBpbXBsaWNpdCBrZXkiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgIHN0YXRlLmFuY2hvciA9IF9hbmNob3I7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgIH0KICAgIGlmIChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgewogICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgICBfa2V5TGluZVN0YXJ0ID0gc3RhdGUubGluZVN0YXJ0OwogICAgICAgIF9rZXlQb3MgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfQogICAgICBpZiAoY29tcG9zZU5vZGUoc3RhdGUsIG5vZGVJbmRlbnQsIENPTlRFWFRfQkxPQ0tfT1VULCB0cnVlLCBhbGxvd0NvbXBhY3QpKSB7CiAgICAgICAgaWYgKGF0RXhwbGljaXRLZXkpIHsKICAgICAgICAgIGtleU5vZGUgPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZhbHVlTm9kZSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKCFhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MpOwogICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICB9CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmICgoc3RhdGUubGluZSA9PT0gX2xpbmUgfHwgc3RhdGUubGluZUluZGVudCA+IG5vZGVJbmRlbnQpICYmIGNoICE9PSAwKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJiYWQgaW5kZW50YXRpb24gb2YgYSBtYXBwaW5nIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICB9CiAgaWYgKGRldGVjdGVkKSB7CiAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgIHN0YXRlLmtpbmQgPSAibWFwcGluZyI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogIH0KICByZXR1cm4gZGV0ZWN0ZWQ7Cn0KZnVuY3Rpb24gcmVhZFRhZ1Byb3BlcnR5KHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgaXNWZXJiYXRpbSA9IGZhbHNlLCBpc05hbWVkID0gZmFsc2UsIHRhZ0hhbmRsZSwgdGFnTmFtZSwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggIT09IDMzKSByZXR1cm4gZmFsc2U7CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0aW9uIG9mIGEgdGFnIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggPT09IDYwKSB7CiAgICBpc1ZlcmJhdGltID0gdHJ1ZTsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB9IGVsc2UgaWYgKGNoID09PSAzMykgewogICAgaXNOYW1lZCA9IHRydWU7CiAgICB0YWdIYW5kbGUgPSAiISEiOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0gZWxzZSB7CiAgICB0YWdIYW5kbGUgPSAiISI7CiAgfQogIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBkbyB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0gd2hpbGUgKGNoICE9PSAwICYmIGNoICE9PSA2Mik7CiAgICBpZiAoc3RhdGUucG9zaXRpb24gPCBzdGF0ZS5sZW5ndGgpIHsKICAgICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSB2ZXJiYXRpbSB0YWciKTsKICAgIH0KICB9IGVsc2UgewogICAgd2hpbGUgKGNoICE9PSAwICYmICFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gMzMpIHsKICAgICAgICBpZiAoIWlzTmFtZWQpIHsKICAgICAgICAgIHRhZ0hhbmRsZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiAtIDEsIHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgICAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KHRhZ0hhbmRsZSkpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWVkIHRhZyBoYW5kbGUgY2Fubm90IGNvbnRhaW4gc3VjaCBjaGFyYWN0ZXJzIik7CiAgICAgICAgICB9CiAgICAgICAgICBpc05hbWVkID0gdHJ1ZTsKICAgICAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uICsgMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZXhjbGFtYXRpb24gbWFya3MiKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgaWYgKFBBVFRFUk5fRkxPV19JTkRJQ0FUT1JTLnRlc3QodGFnTmFtZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZmxvdyBpbmRpY2F0b3IgY2hhcmFjdGVycyIpOwogICAgfQogIH0KICBpZiAodGFnTmFtZSAmJiAhUEFUVEVSTl9UQUdfVVJJLnRlc3QodGFnTmFtZSkpIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgbmFtZSBjYW5ub3QgY29udGFpbiBzdWNoIGNoYXJhY3RlcnM6ICIgKyB0YWdOYW1lKTsKICB9CiAgdHJ5IHsKICAgIHRhZ05hbWUgPSBkZWNvZGVVUklDb21wb25lbnQodGFnTmFtZSk7CiAgfSBjYXRjaCAoZXJyKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGFnIG5hbWUgaXMgbWFsZm9ybWVkOiAiICsgdGFnTmFtZSk7CiAgfQogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBzdGF0ZS50YWcgPSB0YWdOYW1lOwogIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIHRhZ0hhbmRsZSkpIHsKICAgIHN0YXRlLnRhZyA9IHN0YXRlLnRhZ01hcFt0YWdIYW5kbGVdICsgdGFnTmFtZTsKICB9IGVsc2UgaWYgKHRhZ0hhbmRsZSA9PT0gIiEiKSB7CiAgICBzdGF0ZS50YWcgPSAiISIgKyB0YWdOYW1lOwogIH0gZWxzZSBpZiAodGFnSGFuZGxlID09PSAiISEiKSB7CiAgICBzdGF0ZS50YWcgPSAidGFnOnlhbWwub3JnLDIwMDI6IiArIHRhZ05hbWU7CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmRlY2xhcmVkIHRhZyBoYW5kbGUgIicgKyB0YWdIYW5kbGUgKyAnIicpOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiByZWFkQW5jaG9yUHJvcGVydHkoc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzgpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgYW4gYW5jaG9yIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYW5jaG9yIG5vZGUgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIiKTsKICB9CiAgc3RhdGUuYW5jaG9yID0gc3RhdGUuaW5wdXQuc2xpY2UoX3Bvc2l0aW9uLCBzdGF0ZS5wb3NpdGlvbik7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gcmVhZEFsaWFzKHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgYWxpYXMsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSA0MikgcmV0dXJuIGZhbHNlOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYWxpYXMgbm9kZSBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIGNoYXJhY3RlciIpOwogIH0KICBhbGlhcyA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS5hbmNob3JNYXAsIGFsaWFzKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3VuaWRlbnRpZmllZCBhbGlhcyAiJyArIGFsaWFzICsgJyInKTsKICB9CiAgc3RhdGUucmVzdWx0ID0gc3RhdGUuYW5jaG9yTWFwW2FsaWFzXTsKICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gY29tcG9zZU5vZGUoc3RhdGUsIHBhcmVudEluZGVudCwgbm9kZUNvbnRleHQsIGFsbG93VG9TZWVrLCBhbGxvd0NvbXBhY3QpIHsKICB2YXIgYWxsb3dCbG9ja1N0eWxlcywgYWxsb3dCbG9ja1NjYWxhcnMsIGFsbG93QmxvY2tDb2xsZWN0aW9ucywgaW5kZW50U3RhdHVzID0gMSwgYXROZXdMaW5lID0gZmFsc2UsIGhhc0NvbnRlbnQgPSBmYWxzZSwgdHlwZUluZGV4LCB0eXBlUXVhbnRpdHksIHR5cGVMaXN0LCB0eXBlMiwgZmxvd0luZGVudCwgYmxvY2tJbmRlbnQ7CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigib3BlbiIsIHN0YXRlKTsKICB9CiAgc3RhdGUudGFnID0gbnVsbDsKICBzdGF0ZS5hbmNob3IgPSBudWxsOwogIHN0YXRlLmtpbmQgPSBudWxsOwogIHN0YXRlLnJlc3VsdCA9IG51bGw7CiAgYWxsb3dCbG9ja1N0eWxlcyA9IGFsbG93QmxvY2tTY2FsYXJzID0gYWxsb3dCbG9ja0NvbGxlY3Rpb25zID0gQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0IHx8IENPTlRFWFRfQkxPQ0tfSU4gPT09IG5vZGVDb250ZXh0OwogIGlmIChhbGxvd1RvU2VlaykgewogICAgaWYgKHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKSkgewogICAgICBhdE5ld0xpbmUgPSB0cnVlOwogICAgICBpZiAoc3RhdGUubGluZUluZGVudCA+IHBhcmVudEluZGVudCkgewogICAgICAgIGluZGVudFN0YXR1cyA9IDE7CiAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gMDsKICAgICAgfSBlbHNlIGlmIChzdGF0ZS5saW5lSW5kZW50IDwgcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgd2hpbGUgKHJlYWRUYWdQcm9wZXJ0eShzdGF0ZSkgfHwgcmVhZEFuY2hvclByb3BlcnR5KHN0YXRlKSkgewogICAgICBpZiAoc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpKSB7CiAgICAgICAgYXROZXdMaW5lID0gdHJ1ZTsKICAgICAgICBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgPSBhbGxvd0Jsb2NrU3R5bGVzOwogICAgICAgIGlmIChzdGF0ZS5saW5lSW5kZW50ID4gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAxOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAwOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA8IHBhcmVudEluZGVudCkgewogICAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGZhbHNlOwogICAgICB9CiAgICB9CiAgfQogIGlmIChhbGxvd0Jsb2NrQ29sbGVjdGlvbnMpIHsKICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGF0TmV3TGluZSB8fCBhbGxvd0NvbXBhY3Q7CiAgfQogIGlmIChpbmRlbnRTdGF0dXMgPT09IDEgfHwgQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0KSB7CiAgICBpZiAoQ09OVEVYVF9GTE9XX0lOID09PSBub2RlQ29udGV4dCB8fCBDT05URVhUX0ZMT1dfT1VUID09PSBub2RlQ29udGV4dCkgewogICAgICBmbG93SW5kZW50ID0gcGFyZW50SW5kZW50OwogICAgfSBlbHNlIHsKICAgICAgZmxvd0luZGVudCA9IHBhcmVudEluZGVudCArIDE7CiAgICB9CiAgICBibG9ja0luZGVudCA9IHN0YXRlLnBvc2l0aW9uIC0gc3RhdGUubGluZVN0YXJ0OwogICAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgICBpZiAoYWxsb3dCbG9ja0NvbGxlY3Rpb25zICYmIChyZWFkQmxvY2tTZXF1ZW5jZShzdGF0ZSwgYmxvY2tJbmRlbnQpIHx8IHJlYWRCbG9ja01hcHBpbmcoc3RhdGUsIGJsb2NrSW5kZW50LCBmbG93SW5kZW50KSkgfHwgcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBmbG93SW5kZW50KSkgewogICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChhbGxvd0Jsb2NrU2NhbGFycyAmJiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWREb3VibGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICB9IGVsc2UgaWYgKHJlYWRBbGlhcyhzdGF0ZSkpIHsKICAgICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICAgICAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCB8fCBzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImFsaWFzIG5vZGUgc2hvdWxkIG5vdCBoYXZlIGFueSBwcm9wZXJ0aWVzIik7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChyZWFkUGxhaW5TY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQsIENPTlRFWFRfRkxPV19JTiA9PT0gbm9kZUNvbnRleHQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICAgIGlmIChzdGF0ZS50YWcgPT09IG51bGwpIHsKICAgICAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoaW5kZW50U3RhdHVzID09PSAwKSB7CiAgICAgIGhhc0NvbnRlbnQgPSBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgJiYgcmVhZEJsb2NrU2VxdWVuY2Uoc3RhdGUsIGJsb2NrSW5kZW50KTsKICAgIH0KICB9CiAgaWYgKHN0YXRlLnRhZyA9PT0gbnVsbCkgewogICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgIH0KICB9IGVsc2UgaWYgKHN0YXRlLnRhZyA9PT0gIj8iKSB7CiAgICBpZiAoc3RhdGUucmVzdWx0ICE9PSBudWxsICYmIHN0YXRlLmtpbmQgIT09ICJzY2FsYXIiKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmFjY2VwdGFibGUgbm9kZSBraW5kIGZvciAhPD8+IHRhZzsgaXQgc2hvdWxkIGJlICJzY2FsYXIiLCBub3QgIicgKyBzdGF0ZS5raW5kICsgJyInKTsKICAgIH0KICAgIGZvciAodHlwZUluZGV4ID0gMCwgdHlwZVF1YW50aXR5ID0gc3RhdGUuaW1wbGljaXRUeXBlcy5sZW5ndGg7IHR5cGVJbmRleCA8IHR5cGVRdWFudGl0eTsgdHlwZUluZGV4ICs9IDEpIHsKICAgICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW3R5cGVJbmRleF07CiAgICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCkpIHsKICAgICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0KTsKICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi50YWc7CiAgICAgICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwogICAgICB9CiAgICB9CiAgfSBlbHNlIGlmIChzdGF0ZS50YWcgIT09ICIhIikgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQxLmNhbGwoc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdLCBzdGF0ZS50YWcpKSB7CiAgICAgIHR5cGUyID0gc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdW3N0YXRlLnRhZ107CiAgICB9IGVsc2UgewogICAgICB0eXBlMiA9IG51bGw7CiAgICAgIHR5cGVMaXN0ID0gc3RhdGUudHlwZU1hcC5tdWx0aVtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdOwogICAgICBmb3IgKHR5cGVJbmRleCA9IDAsIHR5cGVRdWFudGl0eSA9IHR5cGVMaXN0Lmxlbmd0aDsgdHlwZUluZGV4IDwgdHlwZVF1YW50aXR5OyB0eXBlSW5kZXggKz0gMSkgewogICAgICAgIGlmIChzdGF0ZS50YWcuc2xpY2UoMCwgdHlwZUxpc3RbdHlwZUluZGV4XS50YWcubGVuZ3RoKSA9PT0gdHlwZUxpc3RbdHlwZUluZGV4XS50YWcpIHsKICAgICAgICAgIHR5cGUyID0gdHlwZUxpc3RbdHlwZUluZGV4XTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgaWYgKCF0eXBlMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5rbm93biB0YWcgITwiICsgc3RhdGUudGFnICsgIj4iKTsKICAgIH0KICAgIGlmIChzdGF0ZS5yZXN1bHQgIT09IG51bGwgJiYgdHlwZTIua2luZCAhPT0gc3RhdGUua2luZCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5hY2NlcHRhYmxlIG5vZGUga2luZCBmb3IgITwiICsgc3RhdGUudGFnICsgJz4gdGFnOyBpdCBzaG91bGQgYmUgIicgKyB0eXBlMi5raW5kICsgJyIsIG5vdCAiJyArIHN0YXRlLmtpbmQgKyAnIicpOwogICAgfQogICAgaWYgKCF0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCwgc3RhdGUudGFnKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiY2Fubm90IHJlc29sdmUgYSBub2RlIHdpdGggITwiICsgc3RhdGUudGFnICsgIj4gZXhwbGljaXQgdGFnIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0LCBzdGF0ZS50YWcpOwogICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigiY2xvc2UiLCBzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS50YWcgIT09IG51bGwgfHwgc3RhdGUuYW5jaG9yICE9PSBudWxsIHx8IGhhc0NvbnRlbnQ7Cn0KZnVuY3Rpb24gcmVhZERvY3VtZW50KHN0YXRlKSB7CiAgdmFyIGRvY3VtZW50U3RhcnQgPSBzdGF0ZS5wb3NpdGlvbiwgX3Bvc2l0aW9uLCBkaXJlY3RpdmVOYW1lLCBkaXJlY3RpdmVBcmdzLCBoYXNEaXJlY3RpdmVzID0gZmFsc2UsIGNoOwogIHN0YXRlLnZlcnNpb24gPSBudWxsOwogIHN0YXRlLmNoZWNrTGluZUJyZWFrcyA9IHN0YXRlLmxlZ2FjeTsKICBzdGF0ZS50YWdNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICBzdGF0ZS5hbmNob3JNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICB3aGlsZSAoKGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikpICE9PSAwKSB7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPiAwIHx8IGNoICE9PSAzNykgewogICAgICBicmVhazsKICAgIH0KICAgIGhhc0RpcmVjdGl2ZXMgPSB0cnVlOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb247CiAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgZGlyZWN0aXZlTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgZGlyZWN0aXZlQXJncyA9IFtdOwogICAgaWYgKGRpcmVjdGl2ZU5hbWUubGVuZ3RoIDwgMSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlIG5hbWUgbXVzdCBub3QgYmUgbGVzcyB0aGFuIG9uZSBjaGFyYWN0ZXIgaW4gbGVuZ3RoIik7CiAgICB9CiAgICB3aGlsZSAoY2ggIT09IDApIHsKICAgICAgd2hpbGUgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgICBpZiAoY2ggPT09IDM1KSB7CiAgICAgICAgZG8gewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgIH0gd2hpbGUgKGNoICE9PSAwICYmICFpc19FT0woY2gpKTsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoaXNfRU9MKGNoKSkgYnJlYWs7CiAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIH0KICAgICAgZGlyZWN0aXZlQXJncy5wdXNoKHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pKTsKICAgIH0KICAgIGlmIChjaCAhPT0gMCkgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChkaXJlY3RpdmVIYW5kbGVycywgZGlyZWN0aXZlTmFtZSkpIHsKICAgICAgZGlyZWN0aXZlSGFuZGxlcnNbZGlyZWN0aXZlTmFtZV0oc3RhdGUsIGRpcmVjdGl2ZU5hbWUsIGRpcmVjdGl2ZUFyZ3MpOwogICAgfSBlbHNlIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAndW5rbm93biBkb2N1bWVudCBkaXJlY3RpdmUgIicgKyBkaXJlY3RpdmVOYW1lICsgJyInKTsKICAgIH0KICB9CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5saW5lSW5kZW50ID09PSAwICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pID09PSA0NSAmJiBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSkgPT09IDQ1ICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAyKSA9PT0gNDUpIHsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgfSBlbHNlIGlmIChoYXNEaXJlY3RpdmVzKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlcyBlbmQgbWFyayBpcyBleHBlY3RlZCIpOwogIH0KICBjb21wb3NlTm9kZShzdGF0ZSwgc3RhdGUubGluZUluZGVudCAtIDEsIENPTlRFWFRfQkxPQ0tfT1VULCBmYWxzZSwgdHJ1ZSk7CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5jaGVja0xpbmVCcmVha3MgJiYgUEFUVEVSTl9OT05fQVNDSUlfTElORV9CUkVBS1MudGVzdChzdGF0ZS5pbnB1dC5zbGljZShkb2N1bWVudFN0YXJ0LCBzdGF0ZS5wb3NpdGlvbikpKSB7CiAgICB0aHJvd1dhcm5pbmcoc3RhdGUsICJub24tQVNDSUkgbGluZSBicmVha3MgYXJlIGludGVycHJldGVkIGFzIGNvbnRlbnQiKTsKICB9CiAgc3RhdGUuZG9jdW1lbnRzLnB1c2goc3RhdGUucmVzdWx0KTsKICBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpKSB7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDQ2KSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgIH0KICAgIHJldHVybjsKICB9CiAgaWYgKHN0YXRlLnBvc2l0aW9uIDwgc3RhdGUubGVuZ3RoIC0gMSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImVuZCBvZiB0aGUgc3RyZWFtIG9yIGEgZG9jdW1lbnQgc2VwYXJhdG9yIGlzIGV4cGVjdGVkIik7CiAgfSBlbHNlIHsKICAgIHJldHVybjsKICB9Cn0KZnVuY3Rpb24gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucykgewogIGlucHV0ID0gU3RyaW5nKGlucHV0KTsKICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICBpZiAoaW5wdXQubGVuZ3RoICE9PSAwKSB7CiAgICBpZiAoaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTAgJiYgaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTMpIHsKICAgICAgaW5wdXQgKz0gIlxuIjsKICAgIH0KICAgIGlmIChpbnB1dC5jaGFyQ29kZUF0KDApID09PSA2NTI3OSkgewogICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKDEpOwogICAgfQogIH0KICB2YXIgc3RhdGUgPSBuZXcgU3RhdGUkMShpbnB1dCwgb3B0aW9ucyk7CiAgdmFyIG51bGxwb3MgPSBpbnB1dC5pbmRleE9mKCJcMCIpOwogIGlmIChudWxscG9zICE9PSAtMSkgewogICAgc3RhdGUucG9zaXRpb24gPSBudWxscG9zOwogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm51bGwgYnl0ZSBpcyBub3QgYWxsb3dlZCBpbiBpbnB1dCIpOwogIH0KICBzdGF0ZS5pbnB1dCArPSAiXDAiOwogIHdoaWxlIChzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSA9PT0gMzIpIHsKICAgIHN0YXRlLmxpbmVJbmRlbnQgKz0gMTsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDE7CiAgfQogIHdoaWxlIChzdGF0ZS5wb3NpdGlvbiA8IHN0YXRlLmxlbmd0aCAtIDEpIHsKICAgIHJlYWREb2N1bWVudChzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS5kb2N1bWVudHM7Cn0KZnVuY3Rpb24gbG9hZEFsbCQxKGlucHV0LCBpdGVyYXRvciwgb3B0aW9ucykgewogIGlmIChpdGVyYXRvciAhPT0gbnVsbCAmJiB0eXBlb2YgaXRlcmF0b3IgPT09ICJvYmplY3QiICYmIHR5cGVvZiBvcHRpb25zID09PSAidW5kZWZpbmVkIikgewogICAgb3B0aW9ucyA9IGl0ZXJhdG9yOwogICAgaXRlcmF0b3IgPSBudWxsOwogIH0KICB2YXIgZG9jdW1lbnRzID0gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucyk7CiAgaWYgKHR5cGVvZiBpdGVyYXRvciAhPT0gImZ1bmN0aW9uIikgewogICAgcmV0dXJuIGRvY3VtZW50czsKICB9CiAgZm9yICh2YXIgaW5kZXggPSAwLCBsZW5ndGggPSBkb2N1bWVudHMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgaXRlcmF0b3IoZG9jdW1lbnRzW2luZGV4XSk7CiAgfQp9CmZ1bmN0aW9uIGxvYWQkMShpbnB1dCwgb3B0aW9ucykgewogIHZhciBkb2N1bWVudHMgPSBsb2FkRG9jdW1lbnRzKGlucHV0LCBvcHRpb25zKTsKICBpZiAoZG9jdW1lbnRzLmxlbmd0aCA9PT0gMCkgewogICAgcmV0dXJuIHZvaWQgMDsKICB9IGVsc2UgaWYgKGRvY3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgIHJldHVybiBkb2N1bWVudHNbMF07CiAgfQogIHRocm93IG5ldyBleGNlcHRpb24oImV4cGVjdGVkIGEgc2luZ2xlIGRvY3VtZW50IGluIHRoZSBzdHJlYW0sIGJ1dCBmb3VuZCBtb3JlIik7Cn0KdmFyIGxvYWRBbGxfMSA9IGxvYWRBbGwkMTsKdmFyIGxvYWRfMSA9IGxvYWQkMTsKdmFyIGxvYWRlciA9IHsKICBsb2FkQWxsOiBsb2FkQWxsXzEsCiAgbG9hZDogbG9hZF8xCn07CnZhciBfdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp2YXIgX2hhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENIQVJfQk9NID0gNjUyNzk7CnZhciBDSEFSX1RBQiA9IDk7CnZhciBDSEFSX0xJTkVfRkVFRCA9IDEwOwp2YXIgQ0hBUl9DQVJSSUFHRV9SRVRVUk4gPSAxMzsKdmFyIENIQVJfU1BBQ0UgPSAzMjsKdmFyIENIQVJfRVhDTEFNQVRJT04gPSAzMzsKdmFyIENIQVJfRE9VQkxFX1FVT1RFID0gMzQ7CnZhciBDSEFSX1NIQVJQID0gMzU7CnZhciBDSEFSX1BFUkNFTlQgPSAzNzsKdmFyIENIQVJfQU1QRVJTQU5EID0gMzg7CnZhciBDSEFSX1NJTkdMRV9RVU9URSA9IDM5Owp2YXIgQ0hBUl9BU1RFUklTSyA9IDQyOwp2YXIgQ0hBUl9DT01NQSA9IDQ0Owp2YXIgQ0hBUl9NSU5VUyA9IDQ1Owp2YXIgQ0hBUl9DT0xPTiA9IDU4Owp2YXIgQ0hBUl9FUVVBTFMgPSA2MTsKdmFyIENIQVJfR1JFQVRFUl9USEFOID0gNjI7CnZhciBDSEFSX1FVRVNUSU9OID0gNjM7CnZhciBDSEFSX0NPTU1FUkNJQUxfQVQgPSA2NDsKdmFyIENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVCA9IDkxOwp2YXIgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCA9IDkzOwp2YXIgQ0hBUl9HUkFWRV9BQ0NFTlQgPSA5NjsKdmFyIENIQVJfTEVGVF9DVVJMWV9CUkFDS0VUID0gMTIzOwp2YXIgQ0hBUl9WRVJUSUNBTF9MSU5FID0gMTI0Owp2YXIgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDS0VUID0gMTI1Owp2YXIgRVNDQVBFX1NFUVVFTkNFUyA9IHt9OwpFU0NBUEVfU0VRVUVOQ0VTWzBdID0gIlxcMCI7CkVTQ0FQRV9TRVFVRU5DRVNbN10gPSAiXFxhIjsKRVNDQVBFX1NFUVVFTkNFU1s4XSA9ICJcXGIiOwpFU0NBUEVfU0VRVUVOQ0VTWzldID0gIlxcdCI7CkVTQ0FQRV9TRVFVRU5DRVNbMTBdID0gIlxcbiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTFdID0gIlxcdiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTJdID0gIlxcZiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTNdID0gIlxcciI7CkVTQ0FQRV9TRVFVRU5DRVNbMjddID0gIlxcZSI7CkVTQ0FQRV9TRVFVRU5DRVNbMzRdID0gJ1xcIic7CkVTQ0FQRV9TRVFVRU5DRVNbOTJdID0gIlxcXFwiOwpFU0NBUEVfU0VRVUVOQ0VTWzEzM10gPSAiXFxOIjsKRVNDQVBFX1NFUVVFTkNFU1sxNjBdID0gIlxcXyI7CkVTQ0FQRV9TRVFVRU5DRVNbODIzMl0gPSAiXFxMIjsKRVNDQVBFX1NFUVVFTkNFU1s4MjMzXSA9ICJcXFAiOwp2YXIgREVQUkVDQVRFRF9CT09MRUFOU19TWU5UQVggPSBbCiAgInkiLAogICJZIiwKICAieWVzIiwKICAiWWVzIiwKICAiWUVTIiwKICAib24iLAogICJPbiIsCiAgIk9OIiwKICAibiIsCiAgIk4iLAogICJubyIsCiAgIk5vIiwKICAiTk8iLAogICJvZmYiLAogICJPZmYiLAogICJPRkYiCl07CnZhciBERVBSRUNBVEVEX0JBU0U2MF9TWU5UQVggPSAvXlstK10/WzAtOV9dKyg/OjpbMC05X10rKSsoPzpcLlswLTlfXSopPyQvOwpmdW5jdGlvbiBjb21waWxlU3R5bGVNYXAoc2NoZW1hMiwgbWFwMikgewogIHZhciByZXN1bHQsIGtleXMsIGluZGV4LCBsZW5ndGgsIHRhZywgc3R5bGUsIHR5cGUyOwogIGlmIChtYXAyID09PSBudWxsKSByZXR1cm4ge307CiAgcmVzdWx0ID0ge307CiAga2V5cyA9IE9iamVjdC5rZXlzKG1hcDIpOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBrZXlzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHRhZyA9IGtleXNbaW5kZXhdOwogICAgc3R5bGUgPSBTdHJpbmcobWFwMlt0YWddKTsKICAgIGlmICh0YWcuc2xpY2UoMCwgMikgPT09ICIhISIpIHsKICAgICAgdGFnID0gInRhZzp5YW1sLm9yZywyMDAyOiIgKyB0YWcuc2xpY2UoMik7CiAgICB9CiAgICB0eXBlMiA9IHNjaGVtYTIuY29tcGlsZWRUeXBlTWFwWyJmYWxsYmFjayJdW3RhZ107CiAgICBpZiAodHlwZTIgJiYgX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIuc3R5bGVBbGlhc2VzLCBzdHlsZSkpIHsKICAgICAgc3R5bGUgPSB0eXBlMi5zdHlsZUFsaWFzZXNbc3R5bGVdOwogICAgfQogICAgcmVzdWx0W3RhZ10gPSBzdHlsZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBlbmNvZGVIZXgoY2hhcmFjdGVyKSB7CiAgdmFyIHN0cmluZywgaGFuZGxlLCBsZW5ndGg7CiAgc3RyaW5nID0gY2hhcmFjdGVyLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpOwogIGlmIChjaGFyYWN0ZXIgPD0gMjU1KSB7CiAgICBoYW5kbGUgPSAieCI7CiAgICBsZW5ndGggPSAyOwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDY1NTM1KSB7CiAgICBoYW5kbGUgPSAidSI7CiAgICBsZW5ndGggPSA0OwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDQyOTQ5NjcyOTUpIHsKICAgIGhhbmRsZSA9ICJVIjsKICAgIGxlbmd0aCA9IDg7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oImNvZGUgcG9pbnQgd2l0aGluIGEgc3RyaW5nIG1heSBub3QgYmUgZ3JlYXRlciB0aGFuIDB4RkZGRkZGRkYiKTsKICB9CiAgcmV0dXJuICJcXCIgKyBoYW5kbGUgKyBjb21tb24ucmVwZWF0KCIwIiwgbGVuZ3RoIC0gc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7Cn0KdmFyIFFVT1RJTkdfVFlQRV9TSU5HTEUgPSAxOwp2YXIgUVVPVElOR19UWVBFX0RPVUJMRSA9IDI7CmZ1bmN0aW9uIFN0YXRlKG9wdGlvbnMpIHsKICB0aGlzLnNjaGVtYSA9IG9wdGlvbnNbInNjaGVtYSJdIHx8IF9kZWZhdWx0OwogIHRoaXMuaW5kZW50ID0gTWF0aC5tYXgoMSwgb3B0aW9uc1siaW5kZW50Il0gfHwgMik7CiAgdGhpcy5ub0FycmF5SW5kZW50ID0gb3B0aW9uc1sibm9BcnJheUluZGVudCJdIHx8IGZhbHNlOwogIHRoaXMuc2tpcEludmFsaWQgPSBvcHRpb25zWyJza2lwSW52YWxpZCJdIHx8IGZhbHNlOwogIHRoaXMuZmxvd0xldmVsID0gY29tbW9uLmlzTm90aGluZyhvcHRpb25zWyJmbG93TGV2ZWwiXSkgPyAtMSA6IG9wdGlvbnNbImZsb3dMZXZlbCJdOwogIHRoaXMuc3R5bGVNYXAgPSBjb21waWxlU3R5bGVNYXAodGhpcy5zY2hlbWEsIG9wdGlvbnNbInN0eWxlcyJdIHx8IG51bGwpOwogIHRoaXMuc29ydEtleXMgPSBvcHRpb25zWyJzb3J0S2V5cyJdIHx8IGZhbHNlOwogIHRoaXMubGluZVdpZHRoID0gb3B0aW9uc1sibGluZVdpZHRoIl0gfHwgODA7CiAgdGhpcy5ub1JlZnMgPSBvcHRpb25zWyJub1JlZnMiXSB8fCBmYWxzZTsKICB0aGlzLm5vQ29tcGF0TW9kZSA9IG9wdGlvbnNbIm5vQ29tcGF0TW9kZSJdIHx8IGZhbHNlOwogIHRoaXMuY29uZGVuc2VGbG93ID0gb3B0aW9uc1siY29uZGVuc2VGbG93Il0gfHwgZmFsc2U7CiAgdGhpcy5xdW90aW5nVHlwZSA9IG9wdGlvbnNbInF1b3RpbmdUeXBlIl0gPT09ICciJyA/IFFVT1RJTkdfVFlQRV9ET1VCTEUgOiBRVU9USU5HX1RZUEVfU0lOR0xFOwogIHRoaXMuZm9yY2VRdW90ZXMgPSBvcHRpb25zWyJmb3JjZVF1b3RlcyJdIHx8IGZhbHNlOwogIHRoaXMucmVwbGFjZXIgPSB0eXBlb2Ygb3B0aW9uc1sicmVwbGFjZXIiXSA9PT0gImZ1bmN0aW9uIiA/IG9wdGlvbnNbInJlcGxhY2VyIl0gOiBudWxsOwogIHRoaXMuaW1wbGljaXRUeXBlcyA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkSW1wbGljaXQ7CiAgdGhpcy5leHBsaWNpdFR5cGVzID0gdGhpcy5zY2hlbWEuY29tcGlsZWRFeHBsaWNpdDsKICB0aGlzLnRhZyA9IG51bGw7CiAgdGhpcy5yZXN1bHQgPSAiIjsKICB0aGlzLmR1cGxpY2F0ZXMgPSBbXTsKICB0aGlzLnVzZWREdXBsaWNhdGVzID0gbnVsbDsKfQpmdW5jdGlvbiBpbmRlbnRTdHJpbmcoc3RyaW5nLCBzcGFjZXMpIHsKICB2YXIgaW5kID0gY29tbW9uLnJlcGVhdCgiICIsIHNwYWNlcyksIHBvc2l0aW9uID0gMCwgbmV4dCA9IC0xLCByZXN1bHQgPSAiIiwgbGluZSwgbGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICB3aGlsZSAocG9zaXRpb24gPCBsZW5ndGgpIHsKICAgIG5leHQgPSBzdHJpbmcuaW5kZXhPZigiXG4iLCBwb3NpdGlvbik7CiAgICBpZiAobmV4dCA9PT0gLTEpIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbik7CiAgICAgIHBvc2l0aW9uID0gbGVuZ3RoOwogICAgfSBlbHNlIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbiwgbmV4dCArIDEpOwogICAgICBwb3NpdGlvbiA9IG5leHQgKyAxOwogICAgfQogICAgaWYgKGxpbmUubGVuZ3RoICYmIGxpbmUgIT09ICJcbiIpIHJlc3VsdCArPSBpbmQ7CiAgICByZXN1bHQgKz0gbGluZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCkgewogIHJldHVybiAiXG4iICsgY29tbW9uLnJlcGVhdCgiICIsIHN0YXRlLmluZGVudCAqIGxldmVsKTsKfQpmdW5jdGlvbiB0ZXN0SW1wbGljaXRSZXNvbHZpbmcoc3RhdGUsIHN0cjIpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwgdHlwZTI7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHN0YXRlLmltcGxpY2l0VHlwZXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW2luZGV4XTsKICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0cjIpKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gaXNXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gYyA9PT0gQ0hBUl9TUEFDRSB8fCBjID09PSBDSEFSX1RBQjsKfQpmdW5jdGlvbiBpc1ByaW50YWJsZShjKSB7CiAgcmV0dXJuIDMyIDw9IGMgJiYgYyA8PSAxMjYgfHwgMTYxIDw9IGMgJiYgYyA8PSA1NTI5NSAmJiBjICE9PSA4MjMyICYmIGMgIT09IDgyMzMgfHwgNTczNDQgPD0gYyAmJiBjIDw9IDY1NTMzICYmIGMgIT09IENIQVJfQk9NIHx8IDY1NTM2IDw9IGMgJiYgYyA8PSAxMTE0MTExOwp9CmZ1bmN0aW9uIGlzTnNDaGFyT3JXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gaXNQcmludGFibGUoYykgJiYgYyAhPT0gQ0hBUl9CT00gJiYgYyAhPT0gQ0hBUl9DQVJSSUFHRV9SRVRVUk4gJiYgYyAhPT0gQ0hBUl9MSU5FX0ZFRUQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmUoYywgcHJldiwgaW5ibG9jaykgewogIHZhciBjSXNOc0NoYXJPcldoaXRlc3BhY2UgPSBpc05zQ2hhck9yV2hpdGVzcGFjZShjKTsKICB2YXIgY0lzTnNDaGFyID0gY0lzTnNDaGFyT3JXaGl0ZXNwYWNlICYmICFpc1doaXRlc3BhY2UoYyk7CiAgcmV0dXJuICgKICAgIC8vIG5zLXBsYWluLXNhZmUKICAgIChpbmJsb2NrID8gKAogICAgICAvLyBjID0gZmxvdy1pbgogICAgICBjSXNOc0NoYXJPcldoaXRlc3BhY2UKICAgICkgOiBjSXNOc0NoYXJPcldoaXRlc3BhY2UgJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQpICYmIGMgIT09IENIQVJfU0hBUlAgJiYgIShwcmV2ID09PSBDSEFSX0NPTE9OICYmICFjSXNOc0NoYXIpIHx8IGlzTnNDaGFyT3JXaGl0ZXNwYWNlKHByZXYpICYmICFpc1doaXRlc3BhY2UocHJldikgJiYgYyA9PT0gQ0hBUl9TSEFSUCB8fCBwcmV2ID09PSBDSEFSX0NPTE9OICYmIGNJc05zQ2hhcgogICk7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVGaXJzdChjKSB7CiAgcmV0dXJuIGlzUHJpbnRhYmxlKGMpICYmIGMgIT09IENIQVJfQk9NICYmICFpc1doaXRlc3BhY2UoYykgJiYgYyAhPT0gQ0hBUl9NSU5VUyAmJiBjICE9PSBDSEFSX1FVRVNUSU9OICYmIGMgIT09IENIQVJfQ09MT04gJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9TSEFSUCAmJiBjICE9PSBDSEFSX0FNUEVSU0FORCAmJiBjICE9PSBDSEFSX0FTVEVSSVNLICYmIGMgIT09IENIQVJfRVhDTEFNQVRJT04gJiYgYyAhPT0gQ0hBUl9WRVJUSUNBTF9MSU5FICYmIGMgIT09IENIQVJfRVFVQUxTICYmIGMgIT09IENIQVJfR1JFQVRFUl9USEFOICYmIGMgIT09IENIQVJfU0lOR0xFX1FVT1RFICYmIGMgIT09IENIQVJfRE9VQkxFX1FVT1RFICYmIGMgIT09IENIQVJfUEVSQ0VOVCAmJiBjICE9PSBDSEFSX0NPTU1FUkNJQUxfQVQgJiYgYyAhPT0gQ0hBUl9HUkFWRV9BQ0NFTlQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVMYXN0KGMpIHsKICByZXR1cm4gIWlzV2hpdGVzcGFjZShjKSAmJiBjICE9PSBDSEFSX0NPTE9OOwp9CmZ1bmN0aW9uIGNvZGVQb2ludEF0KHN0cmluZywgcG9zKSB7CiAgdmFyIGZpcnN0ID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zKSwgc2Vjb25kOwogIGlmIChmaXJzdCA+PSA1NTI5NiAmJiBmaXJzdCA8PSA1NjMxOSAmJiBwb3MgKyAxIDwgc3RyaW5nLmxlbmd0aCkgewogICAgc2Vjb25kID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zICsgMSk7CiAgICBpZiAoc2Vjb25kID49IDU2MzIwICYmIHNlY29uZCA8PSA1NzM0MykgewogICAgICByZXR1cm4gKGZpcnN0IC0gNTUyOTYpICogMTAyNCArIHNlY29uZCAtIDU2MzIwICsgNjU1MzY7CiAgICB9CiAgfQogIHJldHVybiBmaXJzdDsKfQpmdW5jdGlvbiBuZWVkSW5kZW50SW5kaWNhdG9yKHN0cmluZykgewogIHZhciBsZWFkaW5nU3BhY2VSZSA9IC9eXG4qIC87CiAgcmV0dXJuIGxlYWRpbmdTcGFjZVJlLnRlc3Qoc3RyaW5nKTsKfQp2YXIgU1RZTEVfUExBSU4gPSAxOwp2YXIgU1RZTEVfU0lOR0xFID0gMjsKdmFyIFNUWUxFX0xJVEVSQUwgPSAzOwp2YXIgU1RZTEVfRk9MREVEID0gNDsKdmFyIFNUWUxFX0RPVUJMRSA9IDU7CmZ1bmN0aW9uIGNob29zZVNjYWxhclN0eWxlKHN0cmluZywgc2luZ2xlTGluZU9ubHksIGluZGVudFBlckxldmVsLCBsaW5lV2lkdGgsIHRlc3RBbWJpZ3VvdXNUeXBlLCBxdW90aW5nVHlwZSwgZm9yY2VRdW90ZXMsIGluYmxvY2spIHsKICB2YXIgaTsKICB2YXIgY2hhciA9IDA7CiAgdmFyIHByZXZDaGFyID0gbnVsbDsKICB2YXIgaGFzTGluZUJyZWFrID0gZmFsc2U7CiAgdmFyIGhhc0ZvbGRhYmxlTGluZSA9IGZhbHNlOwogIHZhciBzaG91bGRUcmFja1dpZHRoID0gbGluZVdpZHRoICE9PSAtMTsKICB2YXIgcHJldmlvdXNMaW5lQnJlYWsgPSAtMTsKICB2YXIgcGxhaW4gPSBpc1BsYWluU2FmZUZpcnN0KGNvZGVQb2ludEF0KHN0cmluZywgMCkpICYmIGlzUGxhaW5TYWZlTGFzdChjb2RlUG9pbnRBdChzdHJpbmcsIHN0cmluZy5sZW5ndGggLSAxKSk7CiAgaWYgKHNpbmdsZUxpbmVPbmx5IHx8IGZvcmNlUXVvdGVzKSB7CiAgICBmb3IgKGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgY2hhciA+PSA2NTUzNiA/IGkgKz0gMiA6IGkrKykgewogICAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgICAgaWYgKCFpc1ByaW50YWJsZShjaGFyKSkgewogICAgICAgIHJldHVybiBTVFlMRV9ET1VCTEU7CiAgICAgIH0KICAgICAgcGxhaW4gPSBwbGFpbiAmJiBpc1BsYWluU2FmZShjaGFyLCBwcmV2Q2hhciwgaW5ibG9jayk7CiAgICAgIHByZXZDaGFyID0gY2hhcjsKICAgIH0KICB9IGVsc2UgewogICAgZm9yIChpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGNoYXIgPj0gNjU1MzYgPyBpICs9IDIgOiBpKyspIHsKICAgICAgY2hhciA9IGNvZGVQb2ludEF0KHN0cmluZywgaSk7CiAgICAgIGlmIChjaGFyID09PSBDSEFSX0xJTkVfRkVFRCkgewogICAgICAgIGhhc0xpbmVCcmVhayA9IHRydWU7CiAgICAgICAgaWYgKHNob3VsZFRyYWNrV2lkdGgpIHsKICAgICAgICAgIGhhc0ZvbGRhYmxlTGluZSA9IGhhc0ZvbGRhYmxlTGluZSB8fCAvLyBGb2xkYWJsZSBsaW5lID0gdG9vIGxvbmcsIGFuZCBub3QgbW9yZS1pbmRlbnRlZC4KICAgICAgICAgIGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIjsKICAgICAgICAgIHByZXZpb3VzTGluZUJyZWFrID0gaTsKICAgICAgICB9CiAgICAgIH0gZWxzZSBpZiAoIWlzUHJpbnRhYmxlKGNoYXIpKSB7CiAgICAgICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICAgICAgfQogICAgICBwbGFpbiA9IHBsYWluICYmIGlzUGxhaW5TYWZlKGNoYXIsIHByZXZDaGFyLCBpbmJsb2NrKTsKICAgICAgcHJldkNoYXIgPSBjaGFyOwogICAgfQogICAgaGFzRm9sZGFibGVMaW5lID0gaGFzRm9sZGFibGVMaW5lIHx8IHNob3VsZFRyYWNrV2lkdGggJiYgKGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIik7CiAgfQogIGlmICghaGFzTGluZUJyZWFrICYmICFoYXNGb2xkYWJsZUxpbmUpIHsKICAgIGlmIChwbGFpbiAmJiAhZm9yY2VRdW90ZXMgJiYgIXRlc3RBbWJpZ3VvdXNUeXBlKHN0cmluZykpIHsKICAgICAgcmV0dXJuIFNUWUxFX1BMQUlOOwogICAgfQogICAgcmV0dXJuIHF1b3RpbmdUeXBlID09PSBRVU9USU5HX1RZUEVfRE9VQkxFID8gU1RZTEVfRE9VQkxFIDogU1RZTEVfU0lOR0xFOwogIH0KICBpZiAoaW5kZW50UGVyTGV2ZWwgPiA5ICYmIG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSkgewogICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICB9CiAgaWYgKCFmb3JjZVF1b3RlcykgewogICAgcmV0dXJuIGhhc0ZvbGRhYmxlTGluZSA/IFNUWUxFX0ZPTERFRCA6IFNUWUxFX0xJVEVSQUw7CiAgfQogIHJldHVybiBxdW90aW5nVHlwZSA9PT0gUVVPVElOR19UWVBFX0RPVUJMRSA/IFNUWUxFX0RPVUJMRSA6IFNUWUxFX1NJTkdMRTsKfQpmdW5jdGlvbiB3cml0ZVNjYWxhcihzdGF0ZSwgc3RyaW5nLCBsZXZlbCwgaXNrZXksIGluYmxvY2spIHsKICBzdGF0ZS5kdW1wID0gZnVuY3Rpb24oKSB7CiAgICBpZiAoc3RyaW5nLmxlbmd0aCA9PT0gMCkgewogICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIiInIDogIicnIjsKICAgIH0KICAgIGlmICghc3RhdGUubm9Db21wYXRNb2RlKSB7CiAgICAgIGlmIChERVBSRUNBVEVEX0JPT0xFQU5TX1NZTlRBWC5pbmRleE9mKHN0cmluZykgIT09IC0xIHx8IERFUFJFQ0FURURfQkFTRTYwX1NZTlRBWC50ZXN0KHN0cmluZykpIHsKICAgICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIicgKyBzdHJpbmcgKyAnIicgOiAiJyIgKyBzdHJpbmcgKyAiJyI7CiAgICAgIH0KICAgIH0KICAgIHZhciBpbmRlbnQgPSBzdGF0ZS5pbmRlbnQgKiBNYXRoLm1heCgxLCBsZXZlbCk7CiAgICB2YXIgbGluZVdpZHRoID0gc3RhdGUubGluZVdpZHRoID09PSAtMSA/IC0xIDogTWF0aC5tYXgoTWF0aC5taW4oc3RhdGUubGluZVdpZHRoLCA0MCksIHN0YXRlLmxpbmVXaWR0aCAtIGluZGVudCk7CiAgICB2YXIgc2luZ2xlTGluZU9ubHkgPSBpc2tleSB8fCBzdGF0ZS5mbG93TGV2ZWwgPiAtMSAmJiBsZXZlbCA+PSBzdGF0ZS5mbG93TGV2ZWw7CiAgICBmdW5jdGlvbiB0ZXN0QW1iaWd1aXR5KHN0cmluZzIpIHsKICAgICAgcmV0dXJuIHRlc3RJbXBsaWNpdFJlc29sdmluZyhzdGF0ZSwgc3RyaW5nMik7CiAgICB9CiAgICBzd2l0Y2ggKGNob29zZVNjYWxhclN0eWxlKAogICAgICBzdHJpbmcsCiAgICAgIHNpbmdsZUxpbmVPbmx5LAogICAgICBzdGF0ZS5pbmRlbnQsCiAgICAgIGxpbmVXaWR0aCwKICAgICAgdGVzdEFtYmlndWl0eSwKICAgICAgc3RhdGUucXVvdGluZ1R5cGUsCiAgICAgIHN0YXRlLmZvcmNlUXVvdGVzICYmICFpc2tleSwKICAgICAgaW5ibG9jawogICAgKSkgewogICAgICBjYXNlIFNUWUxFX1BMQUlOOgogICAgICAgIHJldHVybiBzdHJpbmc7CiAgICAgIGNhc2UgU1RZTEVfU0lOR0xFOgogICAgICAgIHJldHVybiAiJyIgKyBzdHJpbmcucmVwbGFjZSgvJy9nLCAiJyciKSArICInIjsKICAgICAgY2FzZSBTVFlMRV9MSVRFUkFMOgogICAgICAgIHJldHVybiAifCIgKyBibG9ja0hlYWRlcihzdHJpbmcsIHN0YXRlLmluZGVudCkgKyBkcm9wRW5kaW5nTmV3bGluZShpbmRlbnRTdHJpbmcoc3RyaW5nLCBpbmRlbnQpKTsKICAgICAgY2FzZSBTVFlMRV9GT0xERUQ6CiAgICAgICAgcmV0dXJuICI+IiArIGJsb2NrSGVhZGVyKHN0cmluZywgc3RhdGUuaW5kZW50KSArIGRyb3BFbmRpbmdOZXdsaW5lKGluZGVudFN0cmluZyhmb2xkU3RyaW5nKHN0cmluZywgbGluZVdpZHRoKSwgaW5kZW50KSk7CiAgICAgIGNhc2UgU1RZTEVfRE9VQkxFOgogICAgICAgIHJldHVybiAnIicgKyBlc2NhcGVTdHJpbmcoc3RyaW5nKSArICciJzsKICAgICAgZGVmYXVsdDoKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJpbXBvc3NpYmxlIGVycm9yOiBpbnZhbGlkIHNjYWxhciBzdHlsZSIpOwogICAgfQogIH0oKTsKfQpmdW5jdGlvbiBibG9ja0hlYWRlcihzdHJpbmcsIGluZGVudFBlckxldmVsKSB7CiAgdmFyIGluZGVudEluZGljYXRvciA9IG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSA/IFN0cmluZyhpbmRlbnRQZXJMZXZlbCkgOiAiIjsKICB2YXIgY2xpcCA9IHN0cmluZ1tzdHJpbmcubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgdmFyIGtlZXAgPSBjbGlwICYmIChzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDJdID09PSAiXG4iIHx8IHN0cmluZyA9PT0gIlxuIik7CiAgdmFyIGNob21wID0ga2VlcCA/ICIrIiA6IGNsaXAgPyAiIiA6ICItIjsKICByZXR1cm4gaW5kZW50SW5kaWNhdG9yICsgY2hvbXAgKyAiXG4iOwp9CmZ1bmN0aW9uIGRyb3BFbmRpbmdOZXdsaW5lKHN0cmluZykgewogIHJldHVybiBzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDFdID09PSAiXG4iID8gc3RyaW5nLnNsaWNlKDAsIC0xKSA6IHN0cmluZzsKfQpmdW5jdGlvbiBmb2xkU3RyaW5nKHN0cmluZywgd2lkdGgpIHsKICB2YXIgbGluZVJlID0gLyhcbispKFteXG5dKikvZzsKICB2YXIgcmVzdWx0ID0gZnVuY3Rpb24oKSB7CiAgICB2YXIgbmV4dExGID0gc3RyaW5nLmluZGV4T2YoIlxuIik7CiAgICBuZXh0TEYgPSBuZXh0TEYgIT09IC0xID8gbmV4dExGIDogc3RyaW5nLmxlbmd0aDsKICAgIGxpbmVSZS5sYXN0SW5kZXggPSBuZXh0TEY7CiAgICByZXR1cm4gZm9sZExpbmUoc3RyaW5nLnNsaWNlKDAsIG5leHRMRiksIHdpZHRoKTsKICB9KCk7CiAgdmFyIHByZXZNb3JlSW5kZW50ZWQgPSBzdHJpbmdbMF0gPT09ICJcbiIgfHwgc3RyaW5nWzBdID09PSAiICI7CiAgdmFyIG1vcmVJbmRlbnRlZDsKICB2YXIgbWF0Y2g7CiAgd2hpbGUgKG1hdGNoID0gbGluZVJlLmV4ZWMoc3RyaW5nKSkgewogICAgdmFyIHByZWZpeCA9IG1hdGNoWzFdLCBsaW5lID0gbWF0Y2hbMl07CiAgICBtb3JlSW5kZW50ZWQgPSBsaW5lWzBdID09PSAiICI7CiAgICByZXN1bHQgKz0gcHJlZml4ICsgKCFwcmV2TW9yZUluZGVudGVkICYmICFtb3JlSW5kZW50ZWQgJiYgbGluZSAhPT0gIiIgPyAiXG4iIDogIiIpICsgZm9sZExpbmUobGluZSwgd2lkdGgpOwogICAgcHJldk1vcmVJbmRlbnRlZCA9IG1vcmVJbmRlbnRlZDsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBmb2xkTGluZShsaW5lLCB3aWR0aCkgewogIGlmIChsaW5lID09PSAiIiB8fCBsaW5lWzBdID09PSAiICIpIHJldHVybiBsaW5lOwogIHZhciBicmVha1JlID0gLyBbXiBdL2c7CiAgdmFyIG1hdGNoOwogIHZhciBzdGFydCA9IDAsIGVuZCwgY3VyciA9IDAsIG5leHQgPSAwOwogIHZhciByZXN1bHQgPSAiIjsKICB3aGlsZSAobWF0Y2ggPSBicmVha1JlLmV4ZWMobGluZSkpIHsKICAgIG5leHQgPSBtYXRjaC5pbmRleDsKICAgIGlmIChuZXh0IC0gc3RhcnQgPiB3aWR0aCkgewogICAgICBlbmQgPSBjdXJyID4gc3RhcnQgPyBjdXJyIDogbmV4dDsKICAgICAgcmVzdWx0ICs9ICJcbiIgKyBsaW5lLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICBzdGFydCA9IGVuZCArIDE7CiAgICB9CiAgICBjdXJyID0gbmV4dDsKICB9CiAgcmVzdWx0ICs9ICJcbiI7CiAgaWYgKGxpbmUubGVuZ3RoIC0gc3RhcnQgPiB3aWR0aCAmJiBjdXJyID4gc3RhcnQpIHsKICAgIHJlc3VsdCArPSBsaW5lLnNsaWNlKHN0YXJ0LCBjdXJyKSArICJcbiIgKyBsaW5lLnNsaWNlKGN1cnIgKyAxKTsKICB9IGVsc2UgewogICAgcmVzdWx0ICs9IGxpbmUuc2xpY2Uoc3RhcnQpOwogIH0KICByZXR1cm4gcmVzdWx0LnNsaWNlKDEpOwp9CmZ1bmN0aW9uIGVzY2FwZVN0cmluZyhzdHJpbmcpIHsKICB2YXIgcmVzdWx0ID0gIiI7CiAgdmFyIGNoYXIgPSAwOwogIHZhciBlc2NhcGVTZXE7CiAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHJpbmcubGVuZ3RoOyBjaGFyID49IDY1NTM2ID8gaSArPSAyIDogaSsrKSB7CiAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgIGVzY2FwZVNlcSA9IEVTQ0FQRV9TRVFVRU5DRVNbY2hhcl07CiAgICBpZiAoIWVzY2FwZVNlcSAmJiBpc1ByaW50YWJsZShjaGFyKSkgewogICAgICByZXN1bHQgKz0gc3RyaW5nW2ldOwogICAgICBpZiAoY2hhciA+PSA2NTUzNikgcmVzdWx0ICs9IHN0cmluZ1tpICsgMV07CiAgICB9IGVsc2UgewogICAgICByZXN1bHQgKz0gZXNjYXBlU2VxIHx8IGVuY29kZUhleChjaGFyKTsKICAgIH0KICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiB3cml0ZUZsb3dTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIG9iamVjdCkgewogIHZhciBfcmVzdWx0ID0gIiIsIF90YWcgPSBzdGF0ZS50YWcsIGluZGV4LCBsZW5ndGgsIHZhbHVlOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdmFsdWUgPSBvYmplY3RbaW5kZXhdOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIHZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIFN0cmluZyhpbmRleCksIHZhbHVlKTsKICAgIH0KICAgIGlmICh3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCB2YWx1ZSwgZmFsc2UsIGZhbHNlKSB8fCB0eXBlb2YgdmFsdWUgPT09ICJ1bmRlZmluZWQiICYmIHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwsIG51bGwsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgaWYgKF9yZXN1bHQgIT09ICIiKSBfcmVzdWx0ICs9ICIsIiArICghc3RhdGUuY29uZGVuc2VGbG93ID8gIiAiIDogIiIpOwogICAgICBfcmVzdWx0ICs9IHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJbIiArIF9yZXN1bHQgKyAiXSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja1NlcXVlbmNlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBjb21wYWN0KSB7CiAgdmFyIF9yZXN1bHQgPSAiIiwgX3RhZyA9IHN0YXRlLnRhZywgaW5kZXgsIGxlbmd0aCwgdmFsdWU7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICB2YWx1ZSA9IG9iamVjdFtpbmRleF07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgdmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgU3RyaW5nKGluZGV4KSwgdmFsdWUpOwogICAgfQogICAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCB2YWx1ZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHRydWUpIHx8IHR5cGVvZiB2YWx1ZSA9PT0gInVuZGVmaW5lZCIgJiYgd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCArIDEsIG51bGwsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlKSkgewogICAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgICBfcmVzdWx0ICs9IGdlbmVyYXRlTmV4dExpbmUoc3RhdGUsIGxldmVsKTsKICAgICAgfQogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSAiOwogICAgICB9CiAgICAgIF9yZXN1bHQgKz0gc3RhdGUuZHVtcDsKICAgIH0KICB9CiAgc3RhdGUudGFnID0gX3RhZzsKICBzdGF0ZS5kdW1wID0gX3Jlc3VsdCB8fCAiW10iOwp9CmZ1bmN0aW9uIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgcGFpckJ1ZmZlcjsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoX3Jlc3VsdCAhPT0gIiIpIHBhaXJCdWZmZXIgKz0gIiwgIjsKICAgIGlmIChzdGF0ZS5jb25kZW5zZUZsb3cpIHBhaXJCdWZmZXIgKz0gJyInOwogICAgb2JqZWN0S2V5ID0gb2JqZWN0S2V5TGlzdFtpbmRleF07CiAgICBvYmplY3RWYWx1ZSA9IG9iamVjdFtvYmplY3RLZXldOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIG9iamVjdFZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIG9iamVjdEtleSwgb2JqZWN0VmFsdWUpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCBvYmplY3RLZXksIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0KSBwYWlyQnVmZmVyICs9ICI/ICI7CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXAgKyAoc3RhdGUuY29uZGVuc2VGbG93ID8gJyInIDogIiIpICsgIjoiICsgKHN0YXRlLmNvbmRlbnNlRmxvdyA/ICIiIDogIiAiKTsKICAgIGlmICghd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0VmFsdWUsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBfcmVzdWx0ICs9IHBhaXJCdWZmZXI7CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJ7IiArIF9yZXN1bHQgKyAifSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QsIGNvbXBhY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgZXhwbGljaXRQYWlyLCBwYWlyQnVmZmVyOwogIGlmIChzdGF0ZS5zb3J0S2V5cyA9PT0gdHJ1ZSkgewogICAgb2JqZWN0S2V5TGlzdC5zb3J0KCk7CiAgfSBlbHNlIGlmICh0eXBlb2Ygc3RhdGUuc29ydEtleXMgPT09ICJmdW5jdGlvbiIpIHsKICAgIG9iamVjdEtleUxpc3Quc29ydChzdGF0ZS5zb3J0S2V5cyk7CiAgfSBlbHNlIGlmIChzdGF0ZS5zb3J0S2V5cykgewogICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigic29ydEtleXMgbXVzdCBiZSBhIGJvb2xlYW4gb3IgYSBmdW5jdGlvbiIpOwogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgcGFpckJ1ZmZlciArPSBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCk7CiAgICB9CiAgICBvYmplY3RLZXkgPSBvYmplY3RLZXlMaXN0W2luZGV4XTsKICAgIG9iamVjdFZhbHVlID0gb2JqZWN0W29iamVjdEtleV07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgb2JqZWN0VmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSk7CiAgICB9CiAgICBpZiAoIXdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCBvYmplY3RLZXksIHRydWUsIHRydWUsIHRydWUpKSB7CiAgICAgIGNvbnRpbnVlOwogICAgfQogICAgZXhwbGljaXRQYWlyID0gc3RhdGUudGFnICE9PSBudWxsICYmIHN0YXRlLnRhZyAhPT0gIj8iIHx8IHN0YXRlLmR1bXAgJiYgc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0OwogICAgaWYgKGV4cGxpY2l0UGFpcikgewogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyAiOwogICAgICB9CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBpZiAoZXhwbGljaXRQYWlyKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gZ2VuZXJhdGVOZXh0TGluZShzdGF0ZSwgbGV2ZWwpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsICsgMSwgb2JqZWN0VmFsdWUsIHRydWUsIGV4cGxpY2l0UGFpcikpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gIjoiOwogICAgfSBlbHNlIHsKICAgICAgcGFpckJ1ZmZlciArPSAiOiAiOwogICAgfQogICAgcGFpckJ1ZmZlciArPSBzdGF0ZS5kdW1wOwogICAgX3Jlc3VsdCArPSBwYWlyQnVmZmVyOwogIH0KICBzdGF0ZS50YWcgPSBfdGFnOwogIHN0YXRlLmR1bXAgPSBfcmVzdWx0IHx8ICJ7fSI7Cn0KZnVuY3Rpb24gZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCBleHBsaWNpdCkgewogIHZhciBfcmVzdWx0LCB0eXBlTGlzdCwgaW5kZXgsIGxlbmd0aCwgdHlwZTIsIHN0eWxlOwogIHR5cGVMaXN0ID0gZXhwbGljaXQgPyBzdGF0ZS5leHBsaWNpdFR5cGVzIDogc3RhdGUuaW1wbGljaXRUeXBlczsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gdHlwZUxpc3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSB0eXBlTGlzdFtpbmRleF07CiAgICBpZiAoKHR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZTIucHJlZGljYXRlKSAmJiAoIXR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZW9mIG9iamVjdCA9PT0gIm9iamVjdCIgJiYgb2JqZWN0IGluc3RhbmNlb2YgdHlwZTIuaW5zdGFuY2VPZikgJiYgKCF0eXBlMi5wcmVkaWNhdGUgfHwgdHlwZTIucHJlZGljYXRlKG9iamVjdCkpKSB7CiAgICAgIGlmIChleHBsaWNpdCkgewogICAgICAgIGlmICh0eXBlMi5tdWx0aSAmJiB0eXBlMi5yZXByZXNlbnROYW1lKSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi5yZXByZXNlbnROYW1lKG9iamVjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHN0YXRlLnRhZyA9IHR5cGUyLnRhZzsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICB9CiAgICAgIGlmICh0eXBlMi5yZXByZXNlbnQpIHsKICAgICAgICBzdHlsZSA9IHN0YXRlLnN0eWxlTWFwW3R5cGUyLnRhZ10gfHwgdHlwZTIuZGVmYXVsdFN0eWxlOwogICAgICAgIGlmIChfdG9TdHJpbmcuY2FsbCh0eXBlMi5yZXByZXNlbnQpID09PSAiW29iamVjdCBGdW5jdGlvbl0iKSB7CiAgICAgICAgICBfcmVzdWx0ID0gdHlwZTIucmVwcmVzZW50KG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIucmVwcmVzZW50LCBzdHlsZSkpIHsKICAgICAgICAgIF9yZXN1bHQgPSB0eXBlMi5yZXByZXNlbnRbc3R5bGVdKG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCIhPCIgKyB0eXBlMi50YWcgKyAnPiB0YWcgcmVzb2x2ZXIgYWNjZXB0cyBub3QgIicgKyBzdHlsZSArICciIHN0eWxlJyk7CiAgICAgICAgfQogICAgICAgIHN0YXRlLmR1bXAgPSBfcmVzdWx0OwogICAgICB9CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBibG9jaywgY29tcGFjdCwgaXNrZXksIGlzYmxvY2tzZXEpIHsKICBzdGF0ZS50YWcgPSBudWxsOwogIHN0YXRlLmR1bXAgPSBvYmplY3Q7CiAgaWYgKCFkZXRlY3RUeXBlKHN0YXRlLCBvYmplY3QsIGZhbHNlKSkgewogICAgZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCB0cnVlKTsKICB9CiAgdmFyIHR5cGUyID0gX3RvU3RyaW5nLmNhbGwoc3RhdGUuZHVtcCk7CiAgdmFyIGluYmxvY2sgPSBibG9jazsKICB2YXIgdGFnU3RyOwogIGlmIChibG9jaykgewogICAgYmxvY2sgPSBzdGF0ZS5mbG93TGV2ZWwgPCAwIHx8IHN0YXRlLmZsb3dMZXZlbCA+IGxldmVsOwogIH0KICB2YXIgb2JqZWN0T3JBcnJheSA9IHR5cGUyID09PSAiW29iamVjdCBPYmplY3RdIiB8fCB0eXBlMiA9PT0gIltvYmplY3QgQXJyYXldIiwgZHVwbGljYXRlSW5kZXgsIGR1cGxpY2F0ZTsKICBpZiAob2JqZWN0T3JBcnJheSkgewogICAgZHVwbGljYXRlSW5kZXggPSBzdGF0ZS5kdXBsaWNhdGVzLmluZGV4T2Yob2JqZWN0KTsKICAgIGR1cGxpY2F0ZSA9IGR1cGxpY2F0ZUluZGV4ICE9PSAtMTsKICB9CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCAmJiBzdGF0ZS50YWcgIT09ICI/IiB8fCBkdXBsaWNhdGUgfHwgc3RhdGUuaW5kZW50ICE9PSAyICYmIGxldmVsID4gMCkgewogICAgY29tcGFjdCA9IGZhbHNlOwogIH0KICBpZiAoZHVwbGljYXRlICYmIHN0YXRlLnVzZWREdXBsaWNhdGVzW2R1cGxpY2F0ZUluZGV4XSkgewogICAgc3RhdGUuZHVtcCA9ICIqcmVmXyIgKyBkdXBsaWNhdGVJbmRleDsKICB9IGVsc2UgewogICAgaWYgKG9iamVjdE9yQXJyYXkgJiYgZHVwbGljYXRlICYmICFzdGF0ZS51c2VkRHVwbGljYXRlc1tkdXBsaWNhdGVJbmRleF0pIHsKICAgICAgc3RhdGUudXNlZER1cGxpY2F0ZXNbZHVwbGljYXRlSW5kZXhdID0gdHJ1ZTsKICAgIH0KICAgIGlmICh0eXBlMiA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIE9iamVjdC5rZXlzKHN0YXRlLmR1bXApLmxlbmd0aCAhPT0gMCkgewogICAgICAgIHdyaXRlQmxvY2tNYXBwaW5nKHN0YXRlLCBsZXZlbCwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgaWYgKGR1cGxpY2F0ZSkgewogICAgICAgICAgc3RhdGUuZHVtcCA9ICImcmVmXyIgKyBkdXBsaWNhdGVJbmRleCArIHN0YXRlLmR1bXA7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IEFycmF5XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIHN0YXRlLmR1bXAubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgaWYgKHN0YXRlLm5vQXJyYXlJbmRlbnQgJiYgIWlzYmxvY2tzZXEgJiYgbGV2ZWwgPiAwKSB7CiAgICAgICAgICB3cml0ZUJsb2NrU2VxdWVuY2Uoc3RhdGUsIGxldmVsIC0gMSwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHdyaXRlQmxvY2tTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIHN0YXRlLmR1bXAsIGNvbXBhY3QpOwogICAgICAgIH0KICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgd3JpdGVGbG93U2VxdWVuY2Uoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IFN0cmluZ10iKSB7CiAgICAgIGlmIChzdGF0ZS50YWcgIT09ICI/IikgewogICAgICAgIHdyaXRlU2NhbGFyKHN0YXRlLCBzdGF0ZS5kdW1wLCBsZXZlbCwgaXNrZXksIGluYmxvY2spOwogICAgICB9CiAgICB9IGVsc2UgaWYgKHR5cGUyID09PSAiW29iamVjdCBVbmRlZmluZWRdIikgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9IGVsc2UgewogICAgICBpZiAoc3RhdGUuc2tpcEludmFsaWQpIHJldHVybiBmYWxzZTsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigidW5hY2NlcHRhYmxlIGtpbmQgb2YgYW4gb2JqZWN0IHRvIGR1bXAgIiArIHR5cGUyKTsKICAgIH0KICAgIGlmIChzdGF0ZS50YWcgIT09IG51bGwgJiYgc3RhdGUudGFnICE9PSAiPyIpIHsKICAgICAgdGFnU3RyID0gZW5jb2RlVVJJKAogICAgICAgIHN0YXRlLnRhZ1swXSA9PT0gIiEiID8gc3RhdGUudGFnLnNsaWNlKDEpIDogc3RhdGUudGFnCiAgICAgICkucmVwbGFjZSgvIS9nLCAiJTIxIik7CiAgICAgIGlmIChzdGF0ZS50YWdbMF0gPT09ICIhIikgewogICAgICAgIHRhZ1N0ciA9ICIhIiArIHRhZ1N0cjsKICAgICAgfSBlbHNlIGlmICh0YWdTdHIuc2xpY2UoMCwgMTgpID09PSAidGFnOnlhbWwub3JnLDIwMDI6IikgewogICAgICAgIHRhZ1N0ciA9ICIhISIgKyB0YWdTdHIuc2xpY2UoMTgpOwogICAgICB9IGVsc2UgewogICAgICAgIHRhZ1N0ciA9ICIhPCIgKyB0YWdTdHIgKyAiPiI7CiAgICAgIH0KICAgICAgc3RhdGUuZHVtcCA9IHRhZ1N0ciArICIgIiArIHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGdldER1cGxpY2F0ZVJlZmVyZW5jZXMob2JqZWN0LCBzdGF0ZSkgewogIHZhciBvYmplY3RzID0gW10sIGR1cGxpY2F0ZXNJbmRleGVzID0gW10sIGluZGV4LCBsZW5ndGg7CiAgaW5zcGVjdE5vZGUob2JqZWN0LCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IGR1cGxpY2F0ZXNJbmRleGVzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHN0YXRlLmR1cGxpY2F0ZXMucHVzaChvYmplY3RzW2R1cGxpY2F0ZXNJbmRleGVzW2luZGV4XV0pOwogIH0KICBzdGF0ZS51c2VkRHVwbGljYXRlcyA9IG5ldyBBcnJheShsZW5ndGgpOwp9CmZ1bmN0aW9uIGluc3BlY3ROb2RlKG9iamVjdCwgb2JqZWN0cywgZHVwbGljYXRlc0luZGV4ZXMpIHsKICB2YXIgb2JqZWN0S2V5TGlzdCwgaW5kZXgsIGxlbmd0aDsKICBpZiAob2JqZWN0ICE9PSBudWxsICYmIHR5cGVvZiBvYmplY3QgPT09ICJvYmplY3QiKSB7CiAgICBpbmRleCA9IG9iamVjdHMuaW5kZXhPZihvYmplY3QpOwogICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICBpZiAoZHVwbGljYXRlc0luZGV4ZXMuaW5kZXhPZihpbmRleCkgPT09IC0xKSB7CiAgICAgICAgZHVwbGljYXRlc0luZGV4ZXMucHVzaChpbmRleCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG9iamVjdHMucHVzaChvYmplY3QpOwogICAgICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7CiAgICAgICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICAgICAgICBpbnNwZWN0Tm9kZShvYmplY3RbaW5kZXhdLCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIG9iamVjdEtleUxpc3QgPSBPYmplY3Qua2V5cyhvYmplY3QpOwogICAgICAgIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3RLZXlMaXN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgICAgICAgIGluc3BlY3ROb2RlKG9iamVjdFtvYmplY3RLZXlMaXN0W2luZGV4XV0sIG9iamVjdHMsIGR1cGxpY2F0ZXNJbmRleGVzKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0KZnVuY3Rpb24gZHVtcCQxKGlucHV0LCBvcHRpb25zKSB7CiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgdmFyIHN0YXRlID0gbmV3IFN0YXRlKG9wdGlvbnMpOwogIGlmICghc3RhdGUubm9SZWZzKSBnZXREdXBsaWNhdGVSZWZlcmVuY2VzKGlucHV0LCBzdGF0ZSk7CiAgdmFyIHZhbHVlID0gaW5wdXQ7CiAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICB2YWx1ZSA9IHN0YXRlLnJlcGxhY2VyLmNhbGwoeyAiIjogdmFsdWUgfSwgIiIsIHZhbHVlKTsKICB9CiAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgMCwgdmFsdWUsIHRydWUsIHRydWUpKSByZXR1cm4gc3RhdGUuZHVtcCArICJcbiI7CiAgcmV0dXJuICIiOwp9CnZhciBkdW1wXzEgPSBkdW1wJDE7CnZhciBkdW1wZXIgPSB7CiAgZHVtcDogZHVtcF8xCn07CmZ1bmN0aW9uIHJlbmFtZWQoZnJvbSwgdG8pIHsKICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoIkZ1bmN0aW9uIHlhbWwuIiArIGZyb20gKyAiIGlzIHJlbW92ZWQgaW4ganMteWFtbCA0LiBVc2UgeWFtbC4iICsgdG8gKyAiIGluc3RlYWQsIHdoaWNoIGlzIG5vdyBzYWZlIGJ5IGRlZmF1bHQuIik7CiAgfTsKfQp2YXIgbG9hZCA9IGxvYWRlci5sb2FkOwp2YXIgbG9hZEFsbCA9IGxvYWRlci5sb2FkQWxsOwp2YXIgZHVtcCA9IGR1bXBlci5kdW1wOwp2YXIgc2FmZUxvYWQgPSByZW5hbWVkKCJzYWZlTG9hZCIsICJsb2FkIik7CnZhciBzYWZlTG9hZEFsbCA9IHJlbmFtZWQoInNhZmVMb2FkQWxsIiwgImxvYWRBbGwiKTsKdmFyIHNhZmVEdW1wID0gcmVuYW1lZCgic2FmZUR1bXAiLCAiZHVtcCIpOwoKLy8gc3JjL3NjaGVtYXRpYy9wcm9qZWN0L3Byb2plY3QuZmFjdG9yeS50cwp2YXIgR0lUSUdOT1JFX1BBVEggPSAiLmdpdGlnbm9yZSI7CnZhciBjYXB0dXJlR2l0SWdub3JlQ29udGVudFJ1bGUgPSAoc3RhdGUpID0+IChob3N0KSA9PiB7CiAgY29uc3QgZ2l0SWdub3JlQnVmZmVyID0gaG9zdC5yZWFkKEdJVElHTk9SRV9QQVRIKTsKICBpZiAoIWdpdElnbm9yZUJ1ZmZlcikgewogICAgcmV0dXJuIGhvc3Q7CiAgfQogIHN0YXRlLmNvbnRlbnQgPSBnaXRJZ25vcmVCdWZmZXIudG9TdHJpbmcoInV0Zi04Iik7CiAgcmV0dXJuIGhvc3Q7Cn07CnZhciBtZXJnZUdpdElnbm9yZUNvbnRlbnRSdWxlID0gKHN0YXRlKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmIChzdGF0ZS5jb250ZW50ID09PSB2b2lkIDApIHsKICAgIHJldHVybiBob3N0OwogIH0KICBjb25zdCBnaXRJZ25vcmVCdWZmZXIgPSBob3N0LnJlYWQoR0lUSUdOT1JFX1BBVEgpOwogIGlmICghZ2l0SWdub3JlQnVmZmVyKSB7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgY29uc3QgdGVtcGxhdGVDb250ZW50ID0gZ2l0SWdub3JlQnVmZmVyLnRvU3RyaW5nKCJ1dGYtOCIpOwogIGNvbnN0IG1lcmdlZENvbnRlbnQgPSBtZXJnZUdpdElnbm9yZUNvbnRlbnQoewogICAgZXhpc3RpbmdDb250ZW50OiBzdGF0ZS5jb250ZW50LAogICAgdGVtcGxhdGVDb250ZW50CiAgfSk7CiAgaWYgKG1lcmdlZENvbnRlbnQgIT09IHRlbXBsYXRlQ29udGVudCkgewogICAgY29udGV4dC5sb2dnZXIuaW5mbygiTWVyZ2luZyB0ZW1wbGF0ZSAuZ2l0aWdub3JlIHdpdGggcHJvamVjdC1zcGVjaWZpYyBlbnRyaWVzIik7CiAgICBob3N0Lm92ZXJ3cml0ZShHSVRJR05PUkVfUEFUSCwgbWVyZ2VkQ29udGVudCk7CiAgfQogIHJldHVybiBob3N0Owp9Owp2YXIgbWFpbiA9IChvcHRpb25zKSA9PiB7CiAgY29uc3Qgc3RhdGUgPSB7fTsKICByZXR1cm4gKDAsIGltcG9ydF9zY2hlbWF0aWNzMTAuY2hhaW4pKFsKICAgIGNhcHR1cmVHaXRJZ25vcmVDb250ZW50UnVsZShzdGF0ZSksCiAgICB1cGRhdGVUc0NvbmZpZ1J1bGUsCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMS5tZXJnZVdpdGgpKGdlbmVyYXRlQ29tbW9uU291cmNlKG9wdGlvbnMpLCBpbXBvcnRfc2NoZW1hdGljczkuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGUpLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzMTEubWVyZ2VXaXRoKShnZW5lcmF0ZVByb2plY3RTcGVjaWZpY1NvdXJjZShvcHRpb25zKSwgaW1wb3J0X3NjaGVtYXRpY3M5Lk1lcmdlU3RyYXRlZ3kuT3ZlcndyaXRlKSwKICAgIG1lcmdlR2l0SWdub3JlQ29udGVudFJ1bGUoc3RhdGUpCiAgXSk7Cn07Ci8vIEFubm90YXRlIHRoZSBDb21tb25KUyBleHBvcnQgbmFtZXMgZm9yIEVTTSBpbXBvcnQgaW4gbm9kZToKMCAmJiAobW9kdWxlLmV4cG9ydHMgPSB7CiAgbWFpbgp9KTsKLyohIEJ1bmRsZWQgbGljZW5zZSBpbmZvcm1hdGlvbjoKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3V0aWxzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS91dGlsaXR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2V4Y2VwdGlvbi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGl0ZXJhbHMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3N0cmluZ3MuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3BhcnRpYWxseS1vcmRlcmVkLXNldC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xhbmcuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbnVsbC1sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci90cmFuc2Zvcm0tbG9nZ2VyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvbWVtb3J5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc3luYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVjb3JkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi93cml0ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW50cnkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvcmVjb3JkZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvbnVsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvY2xpLWxvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3Npbmsvc2luay5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvbW92ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9zY2hlbWF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy91cmwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCmpzLXlhbWwvZGlzdC9qcy15YW1sLm1qczoKICAoKiEganMteWFtbCA0LjEuMCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWNhL2pzLXlhbWwgQGxpY2Vuc2UgTUlUICopCiovCg==",Pts=async e=>{let t=Buffer.from(jal,"base64").toString("utf-8");await(await import("fs/promises")).writeFile(e,t)};var Mts=async e=>{let{writeFiles:t}=await import("@atls/code-runtime");await t(e);let r=ZHr.ppath.join(e,"project");await zal(r,{recursive:!0}),await Pts(ZHr.ppath.join(r,"project.factory.cjs")),console.info("All Schematic files writed to the tmp!")};var O_e=xt(No(),1),Dkt=xt(No(),1),Hts=async e=>{let t=process.cwd();await Dkt.xfs.copyFilePromise(O_e.ppath.join(t,".pnp.cjs"),O_e.ppath.join(e,".pnp.cjs")),await Dkt.xfs.symlinkPromise(O_e.ppath.join(t,"package.json"),O_e.ppath.join(e,"package.json")),await Dkt.xfs.symlinkPromise(O_e.ppath.join(t,"runtime"),O_e.ppath.join(e,"runtime"))};var Xts=async e=>async r=>{try{let n=await Qts.xfs.mktempPromise(),a=Yts.ppath.join(n,"collection.json");await Mts(n),await Hts(n),await Ots("project",e,a)}catch(n){console.error(n)}};var kkt=class extends Jts.BaseCommand{static paths=[["generate","project"]];type=sA.String("-t,--type","project");async execute(){let t=await Uts.Configuration.find(this.context.cwd,this.context.plugins),r=["libraries","project"];if(!r.includes(this.type))throw new Error(`Allowed only ${r.join(", ")} types`);let n={type:this.type,cwd:process.cwd()},a=OUi(this,t),o=await Xts(n);return(await Kts.StreamReport.start(a,o)).exitCode()}};var jts={commands:[kkt]};var VWl=xt(Dls()),WWl=xt(Lls()),OWl=xt(Xls()),PWl=xt(zls()),MWl=xt(dus()),HWl=xt(Vxt()),YWl=xt(mus()),QWl=xt(vus()),XWl=xt(cgs()),JWl=xt(fgs()),UWl=xt(Sgs()),KWl=xt(Lgs()),jWl=xt(bGe()),zWl=xt(Hgs()),qWl=xt(jgs()),$Wl=xt(rAs()),eOl=xt(dAs()),tOl=xt(Ods()),rOl=xt(CJ()),nOl=xt(p1s()),iOl=xt(hme()),sOl=xt(Q1s()),oOl=xt(OGe()),aOl=xt(z1s()),cOl=xt(s2s()),o2s=()=>({modules:new Map([["@yarnpkg/cli",DWl],["@yarnpkg/core",kWl],["@yarnpkg/fslib",xWl],["@yarnpkg/libzip",GWl],["@yarnpkg/parsers",FWl],["@yarnpkg/shell",ZWl],["clipanion",ng],["semver",LWl],["typanion",vZ],["@atls/yarn-plugin-badges",Fpr],["@atls/yarn-plugin-changelog",EIr],["@atls/yarn-plugin-check",SIr],["@atls/yarn-plugin-checks",T1r],["@atls/yarn-plugin-cli-publish",N1r],["@atls/yarn-plugin-commit",ewr],["@atls/yarn-plugin-essentials",rwr],["@atls/yarn-plugin-export",NTr],["@atls/yarn-plugin-files",$Er],["@atls/yarn-plugin-format",sxr],["@atls/yarn-plugin-image",hxr],["@atls/yarn-plugin-jsr",Vxr],["@atls/yarn-plugin-library",Jxr],["@atls/yarn-plugin-lint",eGr],["@atls/yarn-plugin-release",mGr],["@atls/yarn-plugin-renderer",uFr],["@atls/yarn-plugin-service",W9r],["@atls/yarn-plugin-test",J9r],["@atls/yarn-plugin-tools",rVr],["@atls/yarn-plugin-typescript",aVr],["@atls/yarn-plugin-workspaces",a1r],["@atls/yarn-plugin-ui",SVr],["@atls/yarn-plugin-schematics",LHr],["@yarnpkg/plugin-interactive-tools",VWl],["@yarnpkg/plugin-jsr",WWl],["@yarnpkg/plugin-workspace-tools",OWl],["@yarnpkg/plugin-typescript",PWl],["@yarnpkg/plugin-version",MWl],["@yarnpkg/plugin-essentials",HWl],["@yarnpkg/plugin-catalog",YWl],["@yarnpkg/plugin-compat",QWl],["@yarnpkg/plugin-constraints",XWl],["@yarnpkg/plugin-dlx",JWl],["@yarnpkg/plugin-exec",UWl],["@yarnpkg/plugin-file",KWl],["@yarnpkg/plugin-git",jWl],["@yarnpkg/plugin-github",zWl],["@yarnpkg/plugin-http",qWl],["@yarnpkg/plugin-init",$Wl],["@yarnpkg/plugin-link",eOl],["@yarnpkg/plugin-nm",tOl],["@yarnpkg/plugin-npm",rOl],["@yarnpkg/plugin-npm-cli",nOl],["@yarnpkg/plugin-pack",iOl],["@yarnpkg/plugin-patch",sOl],["@yarnpkg/plugin-pnp",oOl],["@yarnpkg/plugin-pnpm",aOl],["@yarnpkg/plugin-stage",cOl]]),plugins:new Set(["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"])});var a2s={name:"@atls/yarn-cli",version:"1.1.80-atls",private:!0,license:"BSD-3-Clause",type:"module",exports:{"./package.json":"./package.json",".":"./src/index.ts"},main:"src/index.ts",files:["dist"],scripts:{build:"yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version","build:bundle":"builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs","build:clean":"rm -rf dist","build:dist":"mv bundles dist","build:fix":"yarn node patches/cli.patch.mjs","build:schemaic":"yarn workspace @atls/code-schematics prepack","build:version":"yarn node patches/version-postfix-toggle.mjs",fix:"yarn run build:fix",prepack:"yarn run build",postpack:"rm -rf dist"},dependencies:{"@atls/yarn-cli-tools":"workspace:*","@atls/yarn-plugin-badges":"workspace:*","@atls/yarn-plugin-changelog":"workspace:*","@atls/yarn-plugin-check":"workspace:*","@atls/yarn-plugin-checks":"workspace:*","@atls/yarn-plugin-cli-publish":"workspace:*","@atls/yarn-plugin-commit":"workspace:*","@atls/yarn-plugin-essentials":"workspace:*","@atls/yarn-plugin-export":"workspace:*","@atls/yarn-plugin-files":"workspace:*","@atls/yarn-plugin-format":"workspace:*","@atls/yarn-plugin-image":"workspace:*","@atls/yarn-plugin-jsr":"workspace:*","@atls/yarn-plugin-library":"workspace:*","@atls/yarn-plugin-lint":"workspace:*","@atls/yarn-plugin-release":"workspace:*","@atls/yarn-plugin-renderer":"workspace:*","@atls/yarn-plugin-schematics":"workspace:*","@atls/yarn-plugin-service":"workspace:*","@atls/yarn-plugin-test":"workspace:*","@atls/yarn-plugin-tools":"workspace:*","@atls/yarn-plugin-typescript":"workspace:*","@atls/yarn-plugin-ui":"workspace:*","@atls/yarn-plugin-workspaces":"workspace:*","@yarnpkg/builder":"4.2.0","@yarnpkg/cli":"4.14.1","@yarnpkg/core":"4.7.0","@yarnpkg/fslib":"3.1.5","@yarnpkg/libzip":"3.2.2","@yarnpkg/parsers":"3.0.3","@yarnpkg/plugin-catalog":"1.0.2","@yarnpkg/plugin-compat":"4.0.12","@yarnpkg/plugin-constraints":"4.0.5","@yarnpkg/plugin-dlx":"4.0.2","@yarnpkg/plugin-essentials":"4.5.0","@yarnpkg/plugin-exec":"3.1.0","@yarnpkg/plugin-file":"3.0.2","@yarnpkg/plugin-git":"3.2.0","@yarnpkg/plugin-github":"3.0.2","@yarnpkg/plugin-http":"3.0.3","@yarnpkg/plugin-init":"4.1.2","@yarnpkg/plugin-interactive-tools":"4.1.0","@yarnpkg/plugin-jsr":"1.1.1","@yarnpkg/plugin-link":"3.0.2","@yarnpkg/plugin-nm":"4.0.8","@yarnpkg/plugin-npm":"3.5.0","@yarnpkg/plugin-npm-cli":"4.4.1","@yarnpkg/plugin-pack":"4.0.4","@yarnpkg/plugin-patch":"4.0.3","@yarnpkg/plugin-pnp":"4.1.5","@yarnpkg/plugin-pnpm":"2.1.2","@yarnpkg/plugin-stage":"4.0.2","@yarnpkg/plugin-typescript":"4.1.3","@yarnpkg/plugin-version":"4.2.0","@yarnpkg/plugin-workspace-tools":"4.1.7","@yarnpkg/shell":"4.1.3",clipanion:"4.0.0-rc.2",semver:"7.6.3",typanion:"3.14.0"},publishConfig:{access:"public",exports:{"./package.json":"./package.json",".":{import:"./dist/index.js",types:"./dist/index.d.ts",default:"./dist/index.js"}},main:"dist/index.js",types:"dist/index.d.ts"},"@yarnpkg/builder":{bundles:{standard:["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"]}}};var c2s=m$r.npath.toPortablePath(m$r.npath.resolve(process.argv[1])),I$r=o2s(a2s["@yarnpkg/builder"].bundles.standard);I$r.then?I$r.then(async e=>{(0,h$r.runExit)(process.argv.slice(2),{cwd:C$r.ppath.cwd(),selfPath:c2s,pluginConfiguration:e})}):(0,h$r.runExit)(process.argv.slice(2),{cwd:C$r.ppath.cwd(),selfPath:c2s,pluginConfiguration:I$r}); /*! Bundled license information: is-number/index.js: diff --git a/.yarnrc.yml b/.yarnrc.yml index 69fb9e8e8..446b4030f 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -8,9 +8,6 @@ defaultSemverRangePrefix: '' pnpEnableEsmLoader: true -plugins: - - path: .yarn/plugins/@yarnpkg/plugin-pnp-patch.cjs - preferReuse: true packageExtensions: diff --git a/collaboration/persistence/package.json b/collaboration/persistence/package.json index 45c445367..2d87e3f74 100644 --- a/collaboration/persistence/package.json +++ b/collaboration/persistence/package.json @@ -2,6 +2,7 @@ "name": "@collaboration/persistence", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@collaboration/domain": "0.0.1", @@ -15,7 +16,6 @@ "typeorm": "0.3.3" }, "devDependencies": { - "@monstrs/tsconfig": "^0.2.0", "@types/node": "12.12.14", "rxjs": "^7.0.1", "typescript": "5.5.4" diff --git a/package.json b/package.json index 28ce78675..08d55502e 100644 --- a/package.json +++ b/package.json @@ -45,13 +45,12 @@ "typescript": "5.5.4" }, "devDependencies": { - "@atls/code-runtime": "2.1.30", + "@atls/code-runtime": "2.1.32", "@jest/core": "^27.4.7", "@types/eslint": "^8", "@types/jest": "^26.0.23", "@types/node": "22.13.10", "@types/react": "^17.0.6", - "esbuild": "npm:esbuild-wasm@^0.23.1", "eslint": "8.4.1", "husky": "5.2.0", "typescript": "5.5.4" diff --git a/yarn.lock b/yarn.lock index b89d720bc..cf2854126 100644 --- a/yarn.lock +++ b/yarn.lock @@ -270,9 +270,9 @@ __metadata: languageName: node linkType: hard -"@atls/code-runtime@npm:2.1.30": - version: 2.1.30 - resolution: "@atls/code-runtime@npm:2.1.30" +"@atls/code-runtime@npm:2.1.32": + version: 2.1.32 + resolution: "@atls/code-runtime@npm:2.1.32" dependencies: "@atls/config-eslint": "npm:2.0.15" "@atls/config-prettier": "npm:2.0.4" @@ -284,10 +284,9 @@ __metadata: node-loader: "npm:2.1.0" strip-json-comments: "npm:3.1.1" ts-loader: "npm:9.5.2" - ts-node: "npm:10.9.2" typescript: "npm:5.5.4" webpack: "npm:5.98.0" - checksum: 10/e76e36ede7fde47fc05d6e6861327d4da6d3c037c84e931b9b0641998693576077af1a1754790708b4b806a49afc5a6cc6aab06514bc8c986f5f6584d218c7eb + checksum: 10/9cbc552c74946276d6736e903fb3d66d36ee0092018139fdcf083449da7e7dee889b8aaf3618ca5532c9a8eea63930322d314980dec2cfb5b5530e063c9980e3 languageName: node linkType: hard @@ -1789,7 +1788,6 @@ __metadata: "@collaboration/domain": "npm:0.0.1" "@monstrs/nestjs-bus": "npm:0.1.4" "@monstrs/nestjs-logger": "npm:0.1.2" - "@monstrs/tsconfig": "npm:^0.2.0" "@nestjs/common": "npm:8.4.2" "@nestjs/typeorm": "npm:8.0.3" "@node-ts/ddd": "npm:^0.1.6" @@ -1846,15 +1844,6 @@ __metadata: languageName: node linkType: hard -"@cspotcode/source-map-support@npm:^0.8.0": - version: 0.8.1 - resolution: "@cspotcode/source-map-support@npm:0.8.1" - dependencies: - "@jridgewell/trace-mapping": "npm:0.3.9" - checksum: 10/b6e38a1712fab242c86a241c229cf562195aad985d0564bd352ac404be583029e89e93028ffd2c251d2c407ecac5fb0cbdca94a2d5c10f29ac806ede0508b3ff - languageName: node - linkType: hard - "@elastic/elasticsearch@npm:7.5.0": version: 7.5.0 resolution: "@elastic/elasticsearch@npm:7.5.0" @@ -3990,7 +3979,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0": +"@jridgewell/resolve-uri@npm:^3.1.0": version: 3.1.2 resolution: "@jridgewell/resolve-uri@npm:3.1.2" checksum: 10/97106439d750a409c22c8bff822d648f6a71f3aa9bc8e5129efdc36343cd3096ddc4eeb1c62d2fe48e9bdd4db37b05d4646a17114ecebd3bbcacfa2de51c3c1d @@ -4007,23 +3996,13 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0": +"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0": version: 1.5.5 resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" checksum: 10/5d9d207b462c11e322d71911e55e21a4e2772f71ffe8d6f1221b8eb5ae6774458c1d242f897fb0814e8714ca9a6b498abfa74dfe4f434493342902b1a48b33a5 languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:0.3.9": - version: 0.3.9 - resolution: "@jridgewell/trace-mapping@npm:0.3.9" - dependencies: - "@jridgewell/resolve-uri": "npm:^3.0.3" - "@jridgewell/sourcemap-codec": "npm:^1.4.10" - checksum: 10/83deafb8e7a5ca98993c2c6eeaa93c270f6f647a4c0dc00deb38c9cf9b2d3b7bf15e8839540155247ef034a052c0ec4466f980bf0c9e2ab63b97d16c0cedd3ff - languageName: node - linkType: hard - "@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.28": version: 0.3.31 resolution: "@jridgewell/trace-mapping@npm:0.3.31" @@ -4217,13 +4196,6 @@ __metadata: languageName: node linkType: hard -"@monstrs/tsconfig@npm:^0.2.0": - version: 0.2.0 - resolution: "@monstrs/tsconfig@npm:0.2.0" - checksum: 10/a1e96a7f3202f475f8ad90a0c089a5f8fe02a8e8a71245ebfbb49c71a58af063356c6f83bb9cdcc40105635b3914ce0ec6ad12f6e2a282fec56669b7afdf5b09 - languageName: node - linkType: hard - "@nestjs/common@npm:*": version: 8.2.6 resolution: "@nestjs/common@npm:8.2.6" @@ -14090,15 +14062,6 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:esbuild-wasm@^0.23.1": - version: 0.23.1 - resolution: "esbuild-wasm@npm:0.23.1" - bin: - esbuild: bin/esbuild - checksum: 10/30677e4ea96211d15f7b3780d70ecee564267767bc4465ba6539f57b565f2505ab930ca409d7b85695b5931fc37afb508f62c694c2e2092dd519efdecf62959b - languageName: node - linkType: hard - "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -24312,13 +24275,12 @@ __metadata: version: 0.0.0-use.local resolution: "root-workspace-0b6124@workspace:." dependencies: - "@atls/code-runtime": "npm:2.1.30" + "@atls/code-runtime": "npm:2.1.32" "@jest/core": "npm:^27.4.7" "@types/eslint": "npm:^8" "@types/jest": "npm:^26.0.23" "@types/node": "npm:22.13.10" "@types/react": "npm:^17.0.6" - esbuild: "npm:esbuild-wasm@^0.23.1" eslint: "npm:8.4.1" husky: "npm:5.2.0" typescript: "npm:5.5.4" @@ -26604,44 +26566,6 @@ __metadata: languageName: node linkType: hard -"ts-node@npm:10.9.2": - version: 10.9.2 - resolution: "ts-node@npm:10.9.2" - dependencies: - "@cspotcode/source-map-support": "npm:^0.8.0" - "@tsconfig/node10": "npm:^1.0.7" - "@tsconfig/node12": "npm:^1.0.7" - "@tsconfig/node14": "npm:^1.0.0" - "@tsconfig/node16": "npm:^1.0.2" - acorn: "npm:^8.4.1" - acorn-walk: "npm:^8.1.1" - arg: "npm:^4.1.0" - create-require: "npm:^1.1.0" - diff: "npm:^4.0.1" - make-error: "npm:^1.1.1" - v8-compile-cache-lib: "npm:^3.0.1" - yn: "npm:3.1.1" - peerDependencies: - "@swc/core": ">=1.2.50" - "@swc/wasm": ">=1.2.50" - "@types/node": "*" - typescript: ">=2.7" - peerDependenciesMeta: - "@swc/core": - optional: true - "@swc/wasm": - optional: true - bin: - ts-node: dist/bin.js - ts-node-cwd: dist/bin-cwd.js - ts-node-esm: dist/bin-esm.js - ts-node-script: dist/bin-script.js - ts-node-transpile-only: dist/bin-transpile.js - ts-script: dist/bin-script-deprecated.js - checksum: 10/a91a15b3c9f76ac462f006fa88b6bfa528130dcfb849dd7ef7f9d640832ab681e235b8a2bc58ecde42f72851cc1d5d4e22c901b0c11aa51001ea1d395074b794 - languageName: node - linkType: hard - "ts-node@npm:8.10.2": version: 8.10.2 resolution: "ts-node@npm:8.10.2" @@ -27483,13 +27407,6 @@ __metadata: languageName: node linkType: hard -"v8-compile-cache-lib@npm:^3.0.1": - version: 3.0.1 - resolution: "v8-compile-cache-lib@npm:3.0.1" - checksum: 10/88d3423a52b6aaf1836be779cab12f7016d47ad8430dffba6edf766695e6d90ad4adaa3d8eeb512cc05924f3e246c4a4ca51e089dccf4402caa536b5e5be8961 - languageName: node - linkType: hard - "v8-compile-cache@npm:^2.0.3": version: 2.3.0 resolution: "v8-compile-cache@npm:2.3.0" From 3082c9b7e1701d18ece174d74e21cac3739b74f1 Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Thu, 11 Jun 2026 23:22:29 +0300 Subject: [PATCH 5/8] build(common): mark workspaces as esm packages --- catalog/application/package.json | 1 + catalog/domain/package.json | 1 + catalog/persistence/package.json | 1 + collaboration/application/package.json | 1 + collaboration/domain/package.json | 1 + email/email-verification-template/package.json | 1 + email/reset-password-template/package.json | 1 + files/application/package.json | 1 + files/domain/package.json | 1 + files/persistence/package.json | 1 + fragments/ceilings-worksheet/package.json | 1 + fragments/chat/package.json | 1 + fragments/choose-specialist-modal/package.json | 1 + fragments/floors-worksheet/package.json | 1 + fragments/home-building-worksheet/package.json | 1 + fragments/project-short/package.json | 1 + fragments/reviews/package.json | 1 + fragments/wallpapering-worksheet/package.json | 1 + fragments/welding-worksheet/package.json | 1 + hits/commands/package.json | 1 + hits/persistence/package.json | 1 + hits/queries/package.json | 1 + identity/adapters/kratos-adapter/package.json | 1 + identity/application/package.json | 1 + identity/domain/package.json | 1 + identity/fragments/login-fragment/package.json | 1 + identity/fragments/messages/package.json | 1 + identity/fragments/recovery-fragment/package.json | 1 + identity/fragments/registration-fragment/package.json | 1 + identity/fragments/settings-fragment/package.json | 1 + identity/pages/login-page/package.json | 1 + identity/pages/logout-page/package.json | 1 + identity/pages/recovery-complete-page/package.json | 1 + identity/pages/recovery-page/package.json | 1 + identity/pages/registration-complete-page/package.json | 1 + identity/pages/registration-page/package.json | 1 + identity/pages/registration-profile-page/package.json | 1 + identity/pages/settings-page/package.json | 1 + mailer/api/package.json | 1 + mailer/db/package.json | 1 + mailer/renderer/package.json | 1 + mailer/transport/package.json | 1 + portfolio/application/package.json | 1 + portfolio/domain/package.json | 1 + portfolio/persistence/package.json | 1 + private-gateway/catalog/package.json | 1 + protos/catalog/package.json | 1 + protos/collaboration/package.json | 1 + protos/common/package.json | 1 + protos/files/package.json | 1 + protos/hits/package.json | 1 + protos/identity/package.json | 1 + protos/interfaces/package.json | 1 + protos/mailer/package.json | 1 + protos/portfolio/package.json | 1 + protos/search/package.json | 1 + public-gateway/catalog/package.json | 1 + public-gateway/collaboration/package.json | 1 + public-gateway/files/package.json | 1 + public-gateway/identity/package.json | 1 + public-gateway/portfolio/package.json | 1 + public-gateway/search/package.json | 1 + public-gateway/types/package.json | 1 + public-gateway/utils/package.json | 1 + site/fragments/catalog/package.json | 1 + site/fragments/filters/package.json | 1 + site/fragments/footer/package.json | 1 + site/fragments/main/package.json | 1 + site/fragments/navigation/package.json | 1 + site/fragments/project-customer/package.json | 1 + site/fragments/project-reply/package.json | 1 + site/fragments/projects-detail/package.json | 1 + site/fragments/projects/package.json | 1 + site/fragments/specialists-detail/package.json | 1 + site/fragments/specialists/package.json | 1 + site/pages/index-page/package.json | 1 + site/pages/projects-detail-page/package.json | 1 + site/pages/projects-page/package.json | 1 + site/pages/specialists-detail-page/package.json | 1 + site/pages/specialists-page/package.json | 1 + ui/accordion/package.json | 1 + ui/avatar/package.json | 1 + ui/button/package.json | 1 + ui/carousel/package.json | 1 + ui/chat/package.json | 1 + ui/condition/package.json | 1 + ui/divider/package.json | 1 + ui/drawer/package.json | 1 + ui/dropdown/package.json | 1 + ui/gallery/package.json | 1 + ui/hamburger/package.json | 1 + ui/icons/package.json | 1 + ui/image/package.json | 1 + ui/input/package.json | 1 + ui/label/package.json | 1 + ui/layout/package.json | 1 + ui/link/package.json | 1 + ui/listview/package.json | 1 + ui/modal/package.json | 1 + ui/navigation/package.json | 1 + ui/rating/package.json | 1 + ui/read-more/package.json | 1 + ui/relative-time/package.json | 1 + ui/search/package.json | 1 + ui/select/package.json | 1 + ui/text/package.json | 1 + ui/theme/package.json | 1 + ui/utils/package.json | 1 + 108 files changed, 108 insertions(+) diff --git a/catalog/application/package.json b/catalog/application/package.json index 1966a1056..523d34b05 100644 --- a/catalog/application/package.json +++ b/catalog/application/package.json @@ -2,6 +2,7 @@ "name": "@catalog/application", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@catalog/domain": "0.1.1", diff --git a/catalog/domain/package.json b/catalog/domain/package.json index e9c725be2..521d899b8 100644 --- a/catalog/domain/package.json +++ b/catalog/domain/package.json @@ -2,6 +2,7 @@ "name": "@catalog/domain", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/catalog/persistence/package.json b/catalog/persistence/package.json index 01a031b8d..6c34f6e50 100644 --- a/catalog/persistence/package.json +++ b/catalog/persistence/package.json @@ -2,6 +2,7 @@ "name": "@catalog/persistence", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@catalog/domain": "0.1.1", diff --git a/collaboration/application/package.json b/collaboration/application/package.json index b6a335fca..3c9535299 100644 --- a/collaboration/application/package.json +++ b/collaboration/application/package.json @@ -2,6 +2,7 @@ "name": "@collaboration/application", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@collaboration/domain": "0.0.1", diff --git a/collaboration/domain/package.json b/collaboration/domain/package.json index 464908f3c..2b1ee61a8 100644 --- a/collaboration/domain/package.json +++ b/collaboration/domain/package.json @@ -2,6 +2,7 @@ "name": "@collaboration/domain", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/email/email-verification-template/package.json b/email/email-verification-template/package.json index c22b132ea..5a41c38a0 100644 --- a/email/email-verification-template/package.json +++ b/email/email-verification-template/package.json @@ -2,6 +2,7 @@ "name": "@email/email-verification-template", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "mjml-react": "^1.2.2", diff --git a/email/reset-password-template/package.json b/email/reset-password-template/package.json index 640d24b77..9a5008058 100644 --- a/email/reset-password-template/package.json +++ b/email/reset-password-template/package.json @@ -2,6 +2,7 @@ "name": "@email/reset-password-template", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "mjml-react": "^1.2.2", diff --git a/files/application/package.json b/files/application/package.json index cdeb0f999..3975074f9 100644 --- a/files/application/package.json +++ b/files/application/package.json @@ -2,6 +2,7 @@ "name": "@files/application", "version": "0.0.2", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@files/domain": "0.0.2", diff --git a/files/domain/package.json b/files/domain/package.json index d842d2c23..46bb10d3f 100644 --- a/files/domain/package.json +++ b/files/domain/package.json @@ -2,6 +2,7 @@ "name": "@files/domain", "version": "0.0.2", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/files/persistence/package.json b/files/persistence/package.json index ec4875958..4deb1e88e 100644 --- a/files/persistence/package.json +++ b/files/persistence/package.json @@ -2,6 +2,7 @@ "name": "@files/persistence", "version": "0.0.2", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@files/domain": "0.0.2", diff --git a/fragments/ceilings-worksheet/package.json b/fragments/ceilings-worksheet/package.json index c23420a1c..827bc3f83 100644 --- a/fragments/ceilings-worksheet/package.json +++ b/fragments/ceilings-worksheet/package.json @@ -2,6 +2,7 @@ "name": "@fragments/ceilings-worksheet", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@ui/button": "workspace:ui/button", diff --git a/fragments/chat/package.json b/fragments/chat/package.json index ed2173e05..aa543d48a 100644 --- a/fragments/chat/package.json +++ b/fragments/chat/package.json @@ -2,6 +2,7 @@ "name": "@fragments/chat", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@apollo/client": "^3.5.8", diff --git a/fragments/choose-specialist-modal/package.json b/fragments/choose-specialist-modal/package.json index 094693eb8..53d8737a4 100644 --- a/fragments/choose-specialist-modal/package.json +++ b/fragments/choose-specialist-modal/package.json @@ -2,6 +2,7 @@ "name": "@fragments/choose-specialist-modal", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.13.1", diff --git a/fragments/floors-worksheet/package.json b/fragments/floors-worksheet/package.json index f8f34451b..2f3225dfa 100644 --- a/fragments/floors-worksheet/package.json +++ b/fragments/floors-worksheet/package.json @@ -2,6 +2,7 @@ "name": "@fragments/floors-worksheet", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@ui/button": "workspace:ui/button", diff --git a/fragments/home-building-worksheet/package.json b/fragments/home-building-worksheet/package.json index 6c4b966a5..ddfed8a54 100644 --- a/fragments/home-building-worksheet/package.json +++ b/fragments/home-building-worksheet/package.json @@ -2,6 +2,7 @@ "name": "@fragments/home-building-worksheet", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@ui/button": "workspace:ui/button", diff --git a/fragments/project-short/package.json b/fragments/project-short/package.json index 338581599..ff55710a3 100644 --- a/fragments/project-short/package.json +++ b/fragments/project-short/package.json @@ -2,6 +2,7 @@ "name": "@fragments/project-short", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@ui/icons": "workspace:ui/icons", diff --git a/fragments/reviews/package.json b/fragments/reviews/package.json index 7873bd88e..59872ec10 100644 --- a/fragments/reviews/package.json +++ b/fragments/reviews/package.json @@ -2,6 +2,7 @@ "name": "@fragments/reviews", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@ui/avatar": "workspace:ui/avatar", diff --git a/fragments/wallpapering-worksheet/package.json b/fragments/wallpapering-worksheet/package.json index e0a16da05..c5f2883f6 100644 --- a/fragments/wallpapering-worksheet/package.json +++ b/fragments/wallpapering-worksheet/package.json @@ -2,6 +2,7 @@ "name": "@fragments/wallpapering-worksheet", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@ui/button": "workspace:ui/button", diff --git a/fragments/welding-worksheet/package.json b/fragments/welding-worksheet/package.json index 7df30f8b4..ac226d453 100644 --- a/fragments/welding-worksheet/package.json +++ b/fragments/welding-worksheet/package.json @@ -2,6 +2,7 @@ "name": "@fragments/welding-worksheet", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "@ui/button": "workspace:ui/button", diff --git a/hits/commands/package.json b/hits/commands/package.json index b12ade1b6..7de2d5119 100644 --- a/hits/commands/package.json +++ b/hits/commands/package.json @@ -2,6 +2,7 @@ "name": "@hits/commands", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@hits/persistence": "0.0.1", diff --git a/hits/persistence/package.json b/hits/persistence/package.json index 6899b0f75..e0ad108a8 100644 --- a/hits/persistence/package.json +++ b/hits/persistence/package.json @@ -2,6 +2,7 @@ "name": "@hits/persistence", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@files/domain": "0.0.2", diff --git a/hits/queries/package.json b/hits/queries/package.json index b5d3276c9..99bb7f636 100644 --- a/hits/queries/package.json +++ b/hits/queries/package.json @@ -2,6 +2,7 @@ "name": "@hits/queries", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@hits/persistence": "0.0.1", diff --git a/identity/adapters/kratos-adapter/package.json b/identity/adapters/kratos-adapter/package.json index e872e6836..377640f6a 100644 --- a/identity/adapters/kratos-adapter/package.json +++ b/identity/adapters/kratos-adapter/package.json @@ -2,6 +2,7 @@ "name": "@identity/kratos-adapter", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/identity/application/package.json b/identity/application/package.json index 90c555155..1203ae88b 100644 --- a/identity/application/package.json +++ b/identity/application/package.json @@ -2,6 +2,7 @@ "name": "@identity/application", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@identity/kratos-adapter": "workspace:0.0.1", diff --git a/identity/domain/package.json b/identity/domain/package.json index c2a2c1acd..24cdd6e8c 100644 --- a/identity/domain/package.json +++ b/identity/domain/package.json @@ -2,6 +2,7 @@ "name": "@identity/domain", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/identity/fragments/login-fragment/package.json b/identity/fragments/login-fragment/package.json index c75ac4544..b6a0721a7 100644 --- a/identity/fragments/login-fragment/package.json +++ b/identity/fragments/login-fragment/package.json @@ -2,6 +2,7 @@ "name": "@identity/login-fragment", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0" diff --git a/identity/fragments/messages/package.json b/identity/fragments/messages/package.json index 6129e3aae..c61354975 100644 --- a/identity/fragments/messages/package.json +++ b/identity/fragments/messages/package.json @@ -2,6 +2,7 @@ "name": "@identity/messages-fragment", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "devDependencies": { "@emotion/react": "^11.9.0", diff --git a/identity/fragments/recovery-fragment/package.json b/identity/fragments/recovery-fragment/package.json index ceef2725a..f2ee4ca83 100644 --- a/identity/fragments/recovery-fragment/package.json +++ b/identity/fragments/recovery-fragment/package.json @@ -2,6 +2,7 @@ "name": "@identity/recovery-fragment", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0" diff --git a/identity/fragments/registration-fragment/package.json b/identity/fragments/registration-fragment/package.json index f335b1ec1..061e57f31 100644 --- a/identity/fragments/registration-fragment/package.json +++ b/identity/fragments/registration-fragment/package.json @@ -2,6 +2,7 @@ "name": "@identity/registration-fragment", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0" diff --git a/identity/fragments/settings-fragment/package.json b/identity/fragments/settings-fragment/package.json index 5c3f0ac60..f3ad5af65 100644 --- a/identity/fragments/settings-fragment/package.json +++ b/identity/fragments/settings-fragment/package.json @@ -2,6 +2,7 @@ "name": "@identity/settings-fragment", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "devDependencies": { "@atls/next-identity-integration": "^0.0.8", diff --git a/identity/pages/login-page/package.json b/identity/pages/login-page/package.json index a2f3b6fbd..b4d05f179 100644 --- a/identity/pages/login-page/package.json +++ b/identity/pages/login-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/login-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0", diff --git a/identity/pages/logout-page/package.json b/identity/pages/logout-page/package.json index 08926acec..8275209b8 100644 --- a/identity/pages/logout-page/package.json +++ b/identity/pages/logout-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/logout-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "devDependencies": { "@atls/next-identity-integration": "^0.0.8", diff --git a/identity/pages/recovery-complete-page/package.json b/identity/pages/recovery-complete-page/package.json index 1b56ae9e6..2fa2d3c49 100644 --- a/identity/pages/recovery-complete-page/package.json +++ b/identity/pages/recovery-complete-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/recovery-complete-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0", diff --git a/identity/pages/recovery-page/package.json b/identity/pages/recovery-page/package.json index 98e8fb35c..0c606321a 100644 --- a/identity/pages/recovery-page/package.json +++ b/identity/pages/recovery-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/recovery-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0", diff --git a/identity/pages/registration-complete-page/package.json b/identity/pages/registration-complete-page/package.json index 1fe8fad2b..6b3690848 100644 --- a/identity/pages/registration-complete-page/package.json +++ b/identity/pages/registration-complete-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/registration-complete-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0", diff --git a/identity/pages/registration-page/package.json b/identity/pages/registration-page/package.json index 16fe8af8e..29ac1640f 100644 --- a/identity/pages/registration-page/package.json +++ b/identity/pages/registration-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/registration-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0", diff --git a/identity/pages/registration-profile-page/package.json b/identity/pages/registration-profile-page/package.json index ebda6c935..71ca910b9 100644 --- a/identity/pages/registration-profile-page/package.json +++ b/identity/pages/registration-profile-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/registration-profile-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.14.0", diff --git a/identity/pages/settings-page/package.json b/identity/pages/settings-page/package.json index 8593a8aa4..3ab380cf4 100644 --- a/identity/pages/settings-page/package.json +++ b/identity/pages/settings-page/package.json @@ -2,6 +2,7 @@ "name": "@identity/settings-page", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "devDependencies": { "@atls/next-identity-integration": "^0.0.8", diff --git a/mailer/api/package.json b/mailer/api/package.json index c79f6d88c..9c277f96c 100644 --- a/mailer/api/package.json +++ b/mailer/api/package.json @@ -2,6 +2,7 @@ "name": "@mailer/api", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@mailer/db": "0.1.1", diff --git a/mailer/db/package.json b/mailer/db/package.json index 22710c1d4..1fd47142b 100644 --- a/mailer/db/package.json +++ b/mailer/db/package.json @@ -2,6 +2,7 @@ "name": "@mailer/db", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/mailer/renderer/package.json b/mailer/renderer/package.json index 4d5f00c79..02191553a 100644 --- a/mailer/renderer/package.json +++ b/mailer/renderer/package.json @@ -2,6 +2,7 @@ "name": "@mailer/renderer", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/mailer/transport/package.json b/mailer/transport/package.json index 0db92743e..3676a5469 100644 --- a/mailer/transport/package.json +++ b/mailer/transport/package.json @@ -2,6 +2,7 @@ "name": "@mailer/transport", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/portfolio/application/package.json b/portfolio/application/package.json index 874a072a5..549e3ba01 100644 --- a/portfolio/application/package.json +++ b/portfolio/application/package.json @@ -2,6 +2,7 @@ "name": "@portfolio/application", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/portfolio/domain/package.json b/portfolio/domain/package.json index db36fa03b..6fa740f3e 100644 --- a/portfolio/domain/package.json +++ b/portfolio/domain/package.json @@ -2,6 +2,7 @@ "name": "@portfolio/domain", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/portfolio/persistence/package.json b/portfolio/persistence/package.json index e712f7d96..36e8e9cab 100644 --- a/portfolio/persistence/package.json +++ b/portfolio/persistence/package.json @@ -2,6 +2,7 @@ "name": "@portfolio/persistence", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@monstrs/nestjs-bus": "0.1.4", diff --git a/private-gateway/catalog/package.json b/private-gateway/catalog/package.json index 9e3208998..f7d7f6478 100644 --- a/private-gateway/catalog/package.json +++ b/private-gateway/catalog/package.json @@ -2,6 +2,7 @@ "name": "@private-gateway/catalog", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/protos/catalog/package.json b/protos/catalog/package.json index 1a3bc846e..ff67511ea 100644 --- a/protos/catalog/package.json +++ b/protos/catalog/package.json @@ -2,6 +2,7 @@ "name": "@protos/catalog", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/microservices": "8.4.2", diff --git a/protos/collaboration/package.json b/protos/collaboration/package.json index 49c821225..dd59edf49 100644 --- a/protos/collaboration/package.json +++ b/protos/collaboration/package.json @@ -2,6 +2,7 @@ "name": "@protos/collaboration", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/microservices": "8.4.2", diff --git a/protos/common/package.json b/protos/common/package.json index 04c45ff9e..1da7cf9d1 100644 --- a/protos/common/package.json +++ b/protos/common/package.json @@ -2,6 +2,7 @@ "name": "@protos/common", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "peerDependencies": { "@nestjs/core": "*" diff --git a/protos/files/package.json b/protos/files/package.json index f9064e1a3..d14426070 100644 --- a/protos/files/package.json +++ b/protos/files/package.json @@ -2,6 +2,7 @@ "name": "@protos/files", "version": "0.0.2", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/microservices": "8.4.2", diff --git a/protos/hits/package.json b/protos/hits/package.json index f04688bf3..3ff12a92a 100644 --- a/protos/hits/package.json +++ b/protos/hits/package.json @@ -2,6 +2,7 @@ "name": "@protos/hits", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/microservices": "8.4.2", diff --git a/protos/identity/package.json b/protos/identity/package.json index 7b25dcef3..958a21490 100644 --- a/protos/identity/package.json +++ b/protos/identity/package.json @@ -2,6 +2,7 @@ "name": "@protos/identity", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@grpc/grpc-js": "^1.5.3", diff --git a/protos/interfaces/package.json b/protos/interfaces/package.json index ce561d8c7..b1caddb7e 100644 --- a/protos/interfaces/package.json +++ b/protos/interfaces/package.json @@ -2,6 +2,7 @@ "name": "@protos/interfaces", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { "compile": "rxjs-grpc -o src/index.ts ../common/*.proto ../catalog/*.proto ../mailer/*.proto ../identity/*.proto" diff --git a/protos/mailer/package.json b/protos/mailer/package.json index ae5b981af..c8a46ff58 100644 --- a/protos/mailer/package.json +++ b/protos/mailer/package.json @@ -2,6 +2,7 @@ "name": "@protos/mailer", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/microservices": "8.4.2", diff --git a/protos/portfolio/package.json b/protos/portfolio/package.json index 3ed036842..a1c2e1d6f 100644 --- a/protos/portfolio/package.json +++ b/protos/portfolio/package.json @@ -2,6 +2,7 @@ "name": "@protos/portfolio", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/microservices": "8.4.2", diff --git a/protos/search/package.json b/protos/search/package.json index ffe31707d..34c4c32e0 100644 --- a/protos/search/package.json +++ b/protos/search/package.json @@ -2,6 +2,7 @@ "name": "@protos/search", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/microservices": "8.4.2", diff --git a/public-gateway/catalog/package.json b/public-gateway/catalog/package.json index ebfb6a535..a4e94656c 100644 --- a/public-gateway/catalog/package.json +++ b/public-gateway/catalog/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/catalog", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/public-gateway/collaboration/package.json b/public-gateway/collaboration/package.json index 45aa0ca36..ed4d09951 100644 --- a/public-gateway/collaboration/package.json +++ b/public-gateway/collaboration/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/collaboration", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@atls/nestjs-dataloader": "^0.0.3", diff --git a/public-gateway/files/package.json b/public-gateway/files/package.json index 4f22e0a82..a4f1e1ac8 100644 --- a/public-gateway/files/package.json +++ b/public-gateway/files/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/files", "version": "0.0.2", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/public-gateway/identity/package.json b/public-gateway/identity/package.json index 5d0104e65..3831f1c55 100644 --- a/public-gateway/identity/package.json +++ b/public-gateway/identity/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/identity", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/public-gateway/portfolio/package.json b/public-gateway/portfolio/package.json index b8deacd37..73cdcb8af 100644 --- a/public-gateway/portfolio/package.json +++ b/public-gateway/portfolio/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/portfolio", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@atls/nestjs-dataloader": "^0.0.3", diff --git a/public-gateway/search/package.json b/public-gateway/search/package.json index 4a8c50cf2..a832ab896 100644 --- a/public-gateway/search/package.json +++ b/public-gateway/search/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/search", "version": "0.0.0", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2", diff --git a/public-gateway/types/package.json b/public-gateway/types/package.json index 66346827a..fa6daffe9 100644 --- a/public-gateway/types/package.json +++ b/public-gateway/types/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/types", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "type-graphql": "0.17.5" diff --git a/public-gateway/utils/package.json b/public-gateway/utils/package.json index db92f9acf..93b644a28 100644 --- a/public-gateway/utils/package.json +++ b/public-gateway/utils/package.json @@ -2,6 +2,7 @@ "name": "@public-gateway/utils", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@nestjs/common": "8.4.2" diff --git a/site/fragments/catalog/package.json b/site/fragments/catalog/package.json index 8d16fee55..95b85ca2e 100644 --- a/site/fragments/catalog/package.json +++ b/site/fragments/catalog/package.json @@ -2,6 +2,7 @@ "name": "@site/catalog-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/fragments/filters/package.json b/site/fragments/filters/package.json index 0d29cb861..5003cdf44 100644 --- a/site/fragments/filters/package.json +++ b/site/fragments/filters/package.json @@ -2,6 +2,7 @@ "name": "@site/filters-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/fragments/footer/package.json b/site/fragments/footer/package.json index db35206a3..dee87be9e 100644 --- a/site/fragments/footer/package.json +++ b/site/fragments/footer/package.json @@ -2,6 +2,7 @@ "name": "@site/footer-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.13.1" diff --git a/site/fragments/main/package.json b/site/fragments/main/package.json index 6e2bf8506..d13b1662b 100644 --- a/site/fragments/main/package.json +++ b/site/fragments/main/package.json @@ -2,6 +2,7 @@ "name": "@site/main-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/fragments/navigation/package.json b/site/fragments/navigation/package.json index 1a66ea9d7..6c735db14 100644 --- a/site/fragments/navigation/package.json +++ b/site/fragments/navigation/package.json @@ -2,6 +2,7 @@ "name": "@site/navigation-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/fragments/project-customer/package.json b/site/fragments/project-customer/package.json index 53d380544..6cec77d01 100644 --- a/site/fragments/project-customer/package.json +++ b/site/fragments/project-customer/package.json @@ -2,6 +2,7 @@ "name": "@site/project-customer-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql-tag": "^2.10.0", diff --git a/site/fragments/project-reply/package.json b/site/fragments/project-reply/package.json index 6a1941d42..229ba64af 100644 --- a/site/fragments/project-reply/package.json +++ b/site/fragments/project-reply/package.json @@ -2,6 +2,7 @@ "name": "@site/project-reply-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/fragments/projects-detail/package.json b/site/fragments/projects-detail/package.json index ca7e330f2..28af28b97 100644 --- a/site/fragments/projects-detail/package.json +++ b/site/fragments/projects-detail/package.json @@ -2,6 +2,7 @@ "name": "@site/projects-detail-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/fragments/projects/package.json b/site/fragments/projects/package.json index b8682a2aa..a830ce9c5 100644 --- a/site/fragments/projects/package.json +++ b/site/fragments/projects/package.json @@ -2,6 +2,7 @@ "name": "@site/projects-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/fragments/specialists-detail/package.json b/site/fragments/specialists-detail/package.json index a77d5f921..e1b730e6e 100644 --- a/site/fragments/specialists-detail/package.json +++ b/site/fragments/specialists-detail/package.json @@ -2,6 +2,7 @@ "name": "@site/specialists-detail-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "next": "12.1.0", diff --git a/site/fragments/specialists/package.json b/site/fragments/specialists/package.json index 56c52c8c8..bccb138f1 100644 --- a/site/fragments/specialists/package.json +++ b/site/fragments/specialists/package.json @@ -2,6 +2,7 @@ "name": "@site/specialists-fragment", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/pages/index-page/package.json b/site/pages/index-page/package.json index 86c393826..cd5858603 100644 --- a/site/pages/index-page/package.json +++ b/site/pages/index-page/package.json @@ -2,6 +2,7 @@ "name": "@site/index-page", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "16.13.1", diff --git a/site/pages/projects-detail-page/package.json b/site/pages/projects-detail-page/package.json index 9ba5429b6..0b8339364 100644 --- a/site/pages/projects-detail-page/package.json +++ b/site/pages/projects-detail-page/package.json @@ -2,6 +2,7 @@ "name": "@site/projects-detail-page", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/pages/projects-page/package.json b/site/pages/projects-page/package.json index ec14424d8..46a3bca17 100644 --- a/site/pages/projects-page/package.json +++ b/site/pages/projects-page/package.json @@ -2,6 +2,7 @@ "name": "@site/projects-page", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "next": "12.1.0", diff --git a/site/pages/specialists-detail-page/package.json b/site/pages/specialists-detail-page/package.json index c54ee3446..ca8ae5409 100644 --- a/site/pages/specialists-detail-page/package.json +++ b/site/pages/specialists-detail-page/package.json @@ -2,6 +2,7 @@ "name": "@site/specialists-detail-page", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "graphql": "^16.3.0", diff --git a/site/pages/specialists-page/package.json b/site/pages/specialists-page/package.json index 01d5868c9..83449d463 100644 --- a/site/pages/specialists-page/package.json +++ b/site/pages/specialists-page/package.json @@ -2,6 +2,7 @@ "name": "@site/specialists-page", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "next": "12.1.0", diff --git a/ui/accordion/package.json b/ui/accordion/package.json index 87b82e71c..282490511 100644 --- a/ui/accordion/package.json +++ b/ui/accordion/package.json @@ -1,6 +1,7 @@ { "name": "@ui/accordion", "version": "0.0.0", + "type": "module", "main": "src/index.ts", "dependencies": { "@ui/button": "workspace:0.3.1", diff --git a/ui/avatar/package.json b/ui/avatar/package.json index 33f836e0d..197dbfc8a 100644 --- a/ui/avatar/package.json +++ b/ui/avatar/package.json @@ -2,6 +2,7 @@ "name": "@ui/avatar", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "^17.0.2", diff --git a/ui/button/package.json b/ui/button/package.json index 7b039943d..827e0a2fe 100644 --- a/ui/button/package.json +++ b/ui/button/package.json @@ -2,6 +2,7 @@ "name": "@ui/button", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/carousel/package.json b/ui/carousel/package.json index d71c0c919..3959758b8 100644 --- a/ui/carousel/package.json +++ b/ui/carousel/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/chat/package.json b/ui/chat/package.json index 397a4b313..5d59aa271 100644 --- a/ui/chat/package.json +++ b/ui/chat/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "events": "^3.3.0", diff --git a/ui/condition/package.json b/ui/condition/package.json index c8d7929bf..27c165848 100644 --- a/ui/condition/package.json +++ b/ui/condition/package.json @@ -1,6 +1,7 @@ { "name": "@ui/condition", "version": "0.0.0", + "type": "module", "main": "src/index.ts", "devDependencies": { "react": "^17.0.2", diff --git a/ui/divider/package.json b/ui/divider/package.json index c5f077aa7..d74ecc0d6 100644 --- a/ui/divider/package.json +++ b/ui/divider/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/drawer/package.json b/ui/drawer/package.json index a4b1d18fa..db6ecc92a 100644 --- a/ui/drawer/package.json +++ b/ui/drawer/package.json @@ -2,6 +2,7 @@ "name": "@ui/drawer", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "framer-motion": "^4.1.17", diff --git a/ui/dropdown/package.json b/ui/dropdown/package.json index 4985206e4..fd521b8bb 100644 --- a/ui/dropdown/package.json +++ b/ui/dropdown/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/gallery/package.json b/ui/gallery/package.json index 80ee10b4c..bc7722690 100644 --- a/ui/gallery/package.json +++ b/ui/gallery/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/hamburger/package.json b/ui/hamburger/package.json index 17e52ca03..7587edf2e 100644 --- a/ui/hamburger/package.json +++ b/ui/hamburger/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/icons/package.json b/ui/icons/package.json index 8d0de9741..ece11021a 100644 --- a/ui/icons/package.json +++ b/ui/icons/package.json @@ -2,6 +2,7 @@ "name": "@ui/icons", "version": "0.1.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "scripts": { "build": "yarn ts-node --project=./tsconfig.compile.json svgr.ts", diff --git a/ui/image/package.json b/ui/image/package.json index 6c44770fb..7376cf9be 100644 --- a/ui/image/package.json +++ b/ui/image/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@types/styled-system": "^5.1.0", diff --git a/ui/input/package.json b/ui/input/package.json index 34e4c146d..5ab215f0f 100644 --- a/ui/input/package.json +++ b/ui/input/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/label/package.json b/ui/label/package.json index bdb3b95ef..5801377a2 100644 --- a/ui/label/package.json +++ b/ui/label/package.json @@ -2,6 +2,7 @@ "name": "@ui/label", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "^17.0.2", diff --git a/ui/layout/package.json b/ui/layout/package.json index 20f274534..8a5f1db58 100644 --- a/ui/layout/package.json +++ b/ui/layout/package.json @@ -2,6 +2,7 @@ "name": "@ui/layout", "version": "0.0.5", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@types/styled-system": "^5.1.0", diff --git a/ui/link/package.json b/ui/link/package.json index 932c09296..e295708ac 100644 --- a/ui/link/package.json +++ b/ui/link/package.json @@ -2,6 +2,7 @@ "name": "@ui/link", "version": "0.0.5", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "next": "12.1.0", diff --git a/ui/listview/package.json b/ui/listview/package.json index 192cb6580..36240ea07 100644 --- a/ui/listview/package.json +++ b/ui/listview/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/modal/package.json b/ui/modal/package.json index 699a40fbe..055024da1 100644 --- a/ui/modal/package.json +++ b/ui/modal/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "framer-motion": "^4.1.17", diff --git a/ui/navigation/package.json b/ui/navigation/package.json index 17d2998b0..b793a58a0 100644 --- a/ui/navigation/package.json +++ b/ui/navigation/package.json @@ -2,6 +2,7 @@ "name": "@ui/navigation", "version": "0.0.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.tsx", "dependencies": { "react": "^17.0.2", diff --git a/ui/rating/package.json b/ui/rating/package.json index f0ead33b2..b5a942433 100644 --- a/ui/rating/package.json +++ b/ui/rating/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/read-more/package.json b/ui/read-more/package.json index 33e53b021..f900d45e0 100644 --- a/ui/read-more/package.json +++ b/ui/read-more/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "16.13.1" diff --git a/ui/relative-time/package.json b/ui/relative-time/package.json index 954eccda1..b6ecb09e0 100644 --- a/ui/relative-time/package.json +++ b/ui/relative-time/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "16.13.1", diff --git a/ui/search/package.json b/ui/search/package.json index 8c770df29..8d21394db 100644 --- a/ui/search/package.json +++ b/ui/search/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/select/package.json b/ui/select/package.json index 54dc6614d..b75c0e1fd 100644 --- a/ui/select/package.json +++ b/ui/select/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@emotion/react": "^11.4.0", diff --git a/ui/text/package.json b/ui/text/package.json index f2689d4ac..e1ba20bfc 100644 --- a/ui/text/package.json +++ b/ui/text/package.json @@ -2,6 +2,7 @@ "name": "@ui/text", "version": "0.3.1", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2", diff --git a/ui/theme/package.json b/ui/theme/package.json index 1bee52023..843a3cbda 100644 --- a/ui/theme/package.json +++ b/ui/theme/package.json @@ -2,6 +2,7 @@ "name": "@ui/theme", "version": "0.0.5", "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "@emotion/css": "^11.1.3", diff --git a/ui/utils/package.json b/ui/utils/package.json index b1b75e6e5..e0c22ca83 100644 --- a/ui/utils/package.json +++ b/ui/utils/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "license": "BSD-3-Clause", + "type": "module", "main": "src/index.ts", "dependencies": { "react": "^17.0.2" From cce4531debd11e055822cad33f1cbae0bac7e9ef Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Thu, 11 Jun 2026 23:22:32 +0300 Subject: [PATCH 6/8] build(persistence): drop legacy monstrs tsconfig --- catalog/persistence/tsconfig.json | 2 +- collaboration/persistence/tsconfig.json | 2 +- files/persistence/tsconfig.json | 2 +- hits/persistence/tsconfig.json | 2 +- mailer/db/tsconfig.json | 2 +- portfolio/persistence/tsconfig.json | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/catalog/persistence/tsconfig.json b/catalog/persistence/tsconfig.json index 94a90b12e..4082f16a5 100644 --- a/catalog/persistence/tsconfig.json +++ b/catalog/persistence/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@monstrs/tsconfig/tsconfig.service.json" + "extends": "../../tsconfig.json" } diff --git a/collaboration/persistence/tsconfig.json b/collaboration/persistence/tsconfig.json index 94a90b12e..4082f16a5 100644 --- a/collaboration/persistence/tsconfig.json +++ b/collaboration/persistence/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@monstrs/tsconfig/tsconfig.service.json" + "extends": "../../tsconfig.json" } diff --git a/files/persistence/tsconfig.json b/files/persistence/tsconfig.json index 94a90b12e..4082f16a5 100644 --- a/files/persistence/tsconfig.json +++ b/files/persistence/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@monstrs/tsconfig/tsconfig.service.json" + "extends": "../../tsconfig.json" } diff --git a/hits/persistence/tsconfig.json b/hits/persistence/tsconfig.json index 94a90b12e..4082f16a5 100644 --- a/hits/persistence/tsconfig.json +++ b/hits/persistence/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@monstrs/tsconfig/tsconfig.service.json" + "extends": "../../tsconfig.json" } diff --git a/mailer/db/tsconfig.json b/mailer/db/tsconfig.json index 94a90b12e..4082f16a5 100644 --- a/mailer/db/tsconfig.json +++ b/mailer/db/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@monstrs/tsconfig/tsconfig.service.json" + "extends": "../../tsconfig.json" } diff --git a/portfolio/persistence/tsconfig.json b/portfolio/persistence/tsconfig.json index 94a90b12e..4082f16a5 100644 --- a/portfolio/persistence/tsconfig.json +++ b/portfolio/persistence/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "@monstrs/tsconfig/tsconfig.service.json" + "extends": "../../tsconfig.json" } From 25a1121de17b3c60909821484ecc246686bdb6ec Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Thu, 11 Jun 2026 23:23:04 +0300 Subject: [PATCH 7/8] fix(protos): resolve proto paths under esm runtime --- protos/catalog/src/index.ts | 9 ++++++--- protos/collaboration/src/index.ts | 9 ++++++--- protos/common/src/index.ts | 9 ++++++--- protos/files/src/index.ts | 9 ++++++--- protos/hits/src/index.ts | 9 ++++++--- protos/identity/src/index.ts | 9 ++++++--- protos/mailer/src/index.ts | 9 ++++++--- protos/portfolio/src/index.ts | 9 ++++++--- protos/search/src/index.ts | 9 ++++++--- 9 files changed, 54 insertions(+), 27 deletions(-) diff --git a/protos/catalog/src/index.ts b/protos/catalog/src/index.ts index d3411440a..ce374e991 100644 --- a/protos/catalog/src/index.ts +++ b/protos/catalog/src/index.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -10,9 +11,11 @@ const name = '@protos/catalog' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../catalog.proto') diff --git a/protos/collaboration/src/index.ts b/protos/collaboration/src/index.ts index f6e71af59..2478dbb63 100644 --- a/protos/collaboration/src/index.ts +++ b/protos/collaboration/src/index.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -10,9 +11,11 @@ const name = '@protos/collaboration' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../collaboration.proto') diff --git a/protos/common/src/index.ts b/protos/common/src/index.ts index d649ce1bd..c52b75a87 100644 --- a/protos/common/src/index.ts +++ b/protos/common/src/index.ts @@ -1,13 +1,16 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' const name = '@protos/common' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../common.proto') diff --git a/protos/files/src/index.ts b/protos/files/src/index.ts index 1f054a169..0e8179b32 100644 --- a/protos/files/src/index.ts +++ b/protos/files/src/index.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -10,9 +11,11 @@ const name = '@protos/files' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../files.proto') diff --git a/protos/hits/src/index.ts b/protos/hits/src/index.ts index 714c2ad84..ae350cc99 100644 --- a/protos/hits/src/index.ts +++ b/protos/hits/src/index.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -10,9 +11,11 @@ const name = '@protos/hits' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../hits.proto') diff --git a/protos/identity/src/index.ts b/protos/identity/src/index.ts index 2ed82f2dd..2a2d33b22 100644 --- a/protos/identity/src/index.ts +++ b/protos/identity/src/index.ts @@ -2,6 +2,7 @@ import grpc from '@grpc/grpc-js' /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -12,9 +13,11 @@ const name = '@protos/identity' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../identity.proto') diff --git a/protos/mailer/src/index.ts b/protos/mailer/src/index.ts index b38e24c73..49a2931ee 100644 --- a/protos/mailer/src/index.ts +++ b/protos/mailer/src/index.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -10,9 +11,11 @@ const name = '@protos/mailer' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../mailer.proto') diff --git a/protos/portfolio/src/index.ts b/protos/portfolio/src/index.ts index aa3095b67..b164aed58 100644 --- a/protos/portfolio/src/index.ts +++ b/protos/portfolio/src/index.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -10,9 +11,11 @@ const name = '@protos/portfolio' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../portfolio.proto') diff --git a/protos/search/src/index.ts b/protos/search/src/index.ts index bfd8f58a5..dccb2fd86 100644 --- a/protos/search/src/index.ts +++ b/protos/search/src/index.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/naming-convention */ /* eslint-disable no-underscore-dangle */ import path from 'path' +import { createRequire } from 'node:module' import { ClientOptions } from '@nestjs/microservices' import { Transport } from '@nestjs/microservices' @@ -10,9 +11,11 @@ const name = '@protos/search' declare const __non_webpack_require__: any -const protosPath = path.dirname( - (typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require).resolve(name) -) +const runtimeRequire = typeof __non_webpack_require__ !== 'undefined' + ? __non_webpack_require__ + : createRequire(import.meta.url) + +const protosPath = path.dirname(runtimeRequire.resolve(name)) export const PROTO_PATH = path.join(protosPath, '../search.proto') From 6a4c1ecb8edc24714a8a6a4488daec75ab894ede Mon Sep 17 00:00:00 2001 From: Andrew Ghostuhin Date: Thu, 11 Jun 2026 23:23:05 +0300 Subject: [PATCH 8/8] build(common): add esm runtime import specifiers --- .../src/commands/CreateCategoryCommand.ts | 2 +- .../commands/CreateCategoryGroupCommand.ts | 2 +- catalog/application/src/commands/index.ts | 12 ++-- catalog/application/src/index.ts | 6 +- catalog/application/src/module.ts | 8 +-- .../src/services/CategoryGroupService.ts | 6 +- .../src/services/CategoryService.ts | 6 +- catalog/application/src/services/index.ts | 8 +-- catalog/domain/src/events/index.ts | 12 ++-- catalog/domain/src/index.ts | 4 +- catalog/domain/src/model/Category.ts | 6 +- catalog/domain/src/model/CategoryGroup.ts | 6 +- catalog/domain/src/model/index.ts | 4 +- catalog/persistence/src/config.ts | 4 +- catalog/persistence/src/entities/Category.ts | 2 +- .../persistence/src/entities/CategoryGroup.ts | 2 +- catalog/persistence/src/entities/index.ts | 4 +- catalog/persistence/src/index.ts | 6 +- catalog/persistence/src/migrations/index.ts | 8 +-- catalog/persistence/src/module.ts | 10 +-- .../repositories/CategoryEntityRepository.ts | 2 +- .../CategoryGroupEntityRepository.ts | 2 +- catalog/persistence/src/repositories/index.ts | 4 +- catalog/service/src/controllers/index.ts | 8 +-- catalog/service/src/health/health.module.ts | 2 +- catalog/service/src/health/index.ts | 4 +- catalog/service/src/index.ts | 2 +- catalog/service/src/module.ts | 8 +-- .../application/src/commands/index.ts | 26 ++++---- .../src/handlers/RecalculateRatingHandler.ts | 2 +- .../application/src/handlers/index.ts | 6 +- collaboration/application/src/index.ts | 10 +-- .../interfaces/find-all-response.interface.ts | 2 +- .../application/src/interfaces/index.ts | 4 +- collaboration/application/src/module.ts | 30 ++++----- .../src/services/CustomerQueriesService.ts | 2 +- .../src/services/CustomerService.ts | 8 +-- .../src/services/DiscussionQueriesService.ts | 2 +- .../src/services/DiscussionService.ts | 2 +- .../src/services/ProjectQueriesService.ts | 2 +- .../src/services/ProjectService.ts | 10 +-- .../src/services/ReplyQueriesService.ts | 2 +- .../application/src/services/ReplyService.ts | 4 +- .../src/services/ReviewQueriesService.ts | 2 +- .../src/services/SpecialistQueriesService.ts | 2 +- .../src/services/SpecialistService.ts | 4 +- .../application/src/services/index.ts | 24 +++---- .../domain/src/events/ProjectCreated.ts | 4 +- .../domain/src/events/ProjectUpdated.ts | 4 +- .../domain/src/events/ReplyStatusChanged.ts | 2 +- .../domain/src/events/SpecialistUpdated.ts | 6 +- collaboration/domain/src/events/index.ts | 28 ++++----- collaboration/domain/src/index.ts | 4 +- collaboration/domain/src/model/Account.ts | 2 +- collaboration/domain/src/model/Chat.ts | 4 +- collaboration/domain/src/model/Company.ts | 4 +- collaboration/domain/src/model/Customer.ts | 8 +-- collaboration/domain/src/model/Discussion.ts | 6 +- collaboration/domain/src/model/Interaction.ts | 2 +- .../domain/src/model/PrivatePerson.ts | 4 +- collaboration/domain/src/model/Project.ts | 26 ++++---- collaboration/domain/src/model/Reply.ts | 8 +-- collaboration/domain/src/model/Review.ts | 4 +- collaboration/domain/src/model/Specialist.ts | 16 ++--- collaboration/domain/src/model/index.ts | 36 +++++------ collaboration/ee2/src/reply.spec.ts | 2 +- collaboration/persistence/ormconfig.ts | 2 +- collaboration/persistence/src/config.ts | 4 +- .../persistence/src/entities/Discussion.ts | 4 +- .../persistence/src/entities/Message.ts | 2 +- .../persistence/src/entities/Project.ts | 2 +- .../persistence/src/entities/Reply.ts | 2 +- .../persistence/src/entities/Specialist.ts | 6 +- .../persistence/src/entities/index.ts | 18 +++--- collaboration/persistence/src/index.ts | 6 +- .../persistence/src/migrations/index.ts | 62 +++++++++---------- collaboration/persistence/src/module.ts | 36 +++++------ .../src/repositories/ChatEntityRepository.ts | 2 +- .../repositories/CustomerEntityRepository.ts | 2 +- .../DiscussionEntityRepository.ts | 2 +- .../repositories/MessageEntityRepository.ts | 2 +- .../repositories/ProjectEntityRepository.ts | 2 +- .../src/repositories/ReplyEntityRepository.ts | 2 +- .../repositories/ReviewEntityRepository.ts | 2 +- .../SpecialistEntityRepository.ts | 2 +- .../persistence/src/repositories/index.ts | 16 ++--- .../service/src/controllers/index.ts | 22 +++---- collaboration/service/src/index.ts | 2 +- collaboration/service/src/module.ts | 22 +++---- .../src/Template.tsx | 2 +- .../email-verification-template/src/index.tsx | 2 +- email/entrypoints/renderer/src/index.ts | 4 +- email/entrypoints/renderer/src/pages/_app.tsx | 4 +- .../renderer/src/providers/index.ts | 4 +- .../reset-password-template/src/Template.tsx | 2 +- email/reset-password-template/src/index.tsx | 2 +- .../src/commands/CreateUploadCommand.ts | 2 +- files/application/src/commands/index.ts | 4 +- files/application/src/index.ts | 6 +- files/application/src/module.ts | 4 +- .../application/src/services/UploadService.ts | 4 +- files/application/src/services/index.ts | 4 +- files/domain/src/events/UploadCreated.ts | 2 +- files/domain/src/events/index.ts | 4 +- files/domain/src/index.ts | 4 +- files/domain/src/model/File.ts | 2 +- files/domain/src/model/Upload.ts | 4 +- files/domain/src/model/index.ts | 4 +- files/persistence/ormconfig.ts | 2 +- files/persistence/src/config.ts | 4 +- files/persistence/src/entities/index.ts | 4 +- files/persistence/src/index.ts | 6 +- files/persistence/src/migrations/index.ts | 2 +- files/persistence/src/module.ts | 10 +-- .../src/repositories/FileEntityRepository.ts | 2 +- .../repositories/UploadEntityRepository.ts | 2 +- files/persistence/src/repositories/index.ts | 4 +- files/service/src/controllers/index.ts | 4 +- files/service/src/index.ts | 2 +- files/service/src/module.ts | 4 +- .../src/CeilingsWorksheet.tsx | 2 +- fragments/ceilings-worksheet/src/index.tsx | 2 +- fragments/chat/src/Chat.tsx | 2 +- fragments/chat/src/index.tsx | 4 +- .../src/ChooseSpecialistModal.tsx | 2 +- .../choose-specialist-modal/src/index.tsx | 2 +- .../floors-worksheet/src/FloorsWorksheet.tsx | 2 +- .../src/__tests__/FloorsWorksheet.test.tsx | 2 +- fragments/floors-worksheet/src/index.tsx | 2 +- .../src/HomeBuildingWorksheet.tsx | 2 +- .../home-building-worksheet/src/index.tsx | 2 +- fragments/project-short/src/ProjectShort.tsx | 2 +- .../src/__tests__/ProjectShort.test.tsx | 2 +- fragments/project-short/src/index.tsx | 2 +- .../reviews/src/__tests__/Reviews.test.tsx | 2 +- fragments/reviews/src/index.tsx | 2 +- .../src/WallpaperingWorksheet.tsx | 2 +- .../__tests__/WallpaperingWorksheet.test.tsx | 2 +- .../wallpapering-worksheet/src/index.tsx | 2 +- .../src/WeldingWorksheet.tsx | 2 +- .../src/__tests__/WeldingWorksheet.test.tsx | 2 +- fragments/welding-worksheet/src/index.tsx | 2 +- hits/app/src/index.ts | 2 +- hits/app/src/module.ts | 2 +- hits/commands/src/index.ts | 4 +- hits/commands/src/module.ts | 4 +- hits/commands/src/services/index.ts | 4 +- hits/persistence/ormconfig.ts | 2 +- hits/persistence/src/config.ts | 4 +- hits/persistence/src/entities/index.ts | 6 +- hits/persistence/src/index.ts | 4 +- hits/persistence/src/migrations/index.ts | 12 ++-- hits/persistence/src/module.ts | 8 +-- hits/queries/src/index.ts | 4 +- hits/queries/src/module.ts | 4 +- hits/queries/src/services/index.ts | 4 +- hits/service/src/controllers/index.ts | 6 +- hits/service/src/index.ts | 2 +- hits/service/src/module.ts | 6 +- identity/adapters/kratos-adapter/src/index.ts | 4 +- .../kratos-adapter/src/module/index.ts | 2 +- .../src/module/kratos-adapter.module.ts | 2 +- .../kratos-adapter/src/services/index.ts | 2 +- identity/application/src/constraints/index.ts | 2 +- identity/application/src/index.ts | 6 +- identity/application/src/module.ts | 2 +- identity/application/src/services/index.ts | 2 +- .../src/events/EmailVerificationComplete.ts | 2 +- .../src/events/EmailVerificationRequested.ts | 2 +- identity/domain/src/events/ProfileCreated.ts | 2 +- .../src/events/ResetPasswordComplete.ts | 2 +- .../src/events/ResetPasswordRequested.ts | 2 +- identity/domain/src/events/UserRegistered.ts | 4 +- identity/domain/src/events/index.ts | 12 ++-- identity/domain/src/index.ts | 4 +- .../domain/src/model/ContactInformation.ts | 2 +- identity/domain/src/model/Credentials.ts | 2 +- identity/domain/src/model/Email.ts | 2 +- identity/domain/src/model/Profile.ts | 10 +-- identity/domain/src/model/User.ts | 26 ++++---- identity/domain/src/model/index.ts | 20 +++--- identity/entrypoints/renderer/src/index.ts | 2 +- .../entrypoints/renderer/src/pages/_app.tsx | 4 +- .../renderer/src/pages/auth/signin/index.ts | 2 +- .../renderer/src/pages/auth/signout/index.ts | 2 +- .../renderer/src/pages/auth/signup/index.ts | 2 +- .../renderer/src/providers/index.ts | 4 +- .../fragments/login-fragment/src/Login.tsx | 2 +- .../fragments/login-fragment/src/index.tsx | 2 +- .../messages/src/field-messages.component.tsx | 2 +- identity/fragments/messages/src/index.ts | 2 +- .../recovery-fragment/src/Recovery.tsx | 2 +- .../fragments/recovery-fragment/src/index.tsx | 2 +- .../src/Registration.tsx | 2 +- .../registration-fragment/src/index.tsx | 2 +- .../settings-fragment/src/Settings.tsx | 2 +- .../fragments/settings-fragment/src/index.tsx | 2 +- identity/pages/login-page/src/Seo.tsx | 2 +- identity/pages/login-page/src/index.tsx | 4 +- identity/pages/logout-page/src/index.tsx | 2 +- .../src/RecoveryCompletePage.tsx | 2 +- .../pages/recovery-complete-page/src/Seo.tsx | 2 +- .../recovery-complete-page/src/index.tsx | 4 +- .../recovery-complete/RecoveryComplete.tsx | 2 +- .../src/recovery-complete/index.tsx | 2 +- identity/pages/recovery-page/src/Seo.tsx | 2 +- identity/pages/recovery-page/src/index.tsx | 4 +- .../src/RegistrationCompletePage.tsx | 2 +- .../registration-complete-page/src/Seo.tsx | 2 +- .../registration-complete-page/src/index.tsx | 4 +- .../RegistrationComplete.tsx | 2 +- .../src/registration-complete/index.tsx | 2 +- identity/pages/registration-page/src/Seo.tsx | 2 +- .../pages/registration-page/src/index.tsx | 4 +- .../src/RegistrationPage.tsx | 2 +- .../registration-profile-page/src/Seo.tsx | 2 +- .../registration-profile-page/src/index.tsx | 4 +- .../src/signup-profile/SignUpProfile.tsx | 2 +- .../src/signup-profile/index.tsx | 4 +- identity/pages/settings-page/src/Seo.tsx | 2 +- identity/pages/settings-page/src/index.tsx | 4 +- identity/service/src/controllers/index.ts | 2 +- identity/service/src/index.ts | 2 +- identity/service/src/module.ts | 2 +- .../api/src/controllers/MailerController.ts | 2 +- mailer/api/src/controllers/index.ts | 2 +- mailer/api/src/index.ts | 2 +- mailer/api/src/module.ts | 4 +- mailer/api/src/services/index.ts | 2 +- mailer/db/ormconfig.ts | 2 +- mailer/db/src/config.ts | 4 +- mailer/db/src/entities/index.ts | 2 +- mailer/db/src/index.ts | 4 +- mailer/db/src/migrations.ts | 2 +- mailer/db/src/module.ts | 4 +- mailer/renderer/src/index.ts | 4 +- mailer/renderer/src/module.ts | 2 +- mailer/service/src/handlers/index.ts | 4 +- mailer/service/src/index.ts | 2 +- mailer/service/src/module.ts | 4 +- mailer/transport/src/index.ts | 4 +- mailer/transport/src/module.ts | 2 +- .../src/commands/CreatePortfolioCommand.ts | 2 +- portfolio/application/src/commands/index.ts | 4 +- portfolio/application/src/index.ts | 6 +- portfolio/application/src/module.ts | 4 +- .../src/services/PortfolioService.ts | 4 +- portfolio/application/src/services/index.ts | 4 +- portfolio/domain/src/events/index.ts | 4 +- portfolio/domain/src/index.ts | 4 +- portfolio/domain/src/model/Portfolio.ts | 4 +- portfolio/domain/src/model/index.ts | 2 +- portfolio/persistence/ormconfig.ts | 2 +- portfolio/persistence/src/config.ts | 4 +- portfolio/persistence/src/entities/index.ts | 2 +- portfolio/persistence/src/index.ts | 6 +- portfolio/persistence/src/migrations.ts | 2 +- portfolio/persistence/src/module.ts | 6 +- .../repositories/PortfolioEntityRepository.ts | 2 +- .../persistence/src/repositories/index.ts | 2 +- portfolio/service/src/controllers/index.ts | 4 +- portfolio/service/src/index.ts | 2 +- portfolio/service/src/module.ts | 4 +- private-gateway/app/src/index.ts | 2 +- private-gateway/catalog/src/index.ts | 6 +- private-gateway/catalog/src/inputs/index.ts | 14 ++--- .../src/resolvers/CategoryGroupMutations.ts | 12 ++-- .../src/resolvers/CategoryGroupQueries.ts | 4 +- .../src/resolvers/CategoryMutations.ts | 12 ++-- .../catalog/src/resolvers/index.ts | 6 +- .../catalog/src/types/CategoryGroup.ts | 2 +- .../catalog/src/types/CategoryGroupsList.ts | 2 +- .../src/types/CreateCategoryGroupResponse.ts | 4 +- .../src/types/CreateCategoryResponse.ts | 4 +- .../src/types/DeleteCategoryGroupResponse.ts | 2 +- .../src/types/DeleteCategoryResponse.ts | 2 +- .../src/types/UpdateCategoryGroupResponse.ts | 4 +- .../src/types/UpdateCategoryResponse.ts | 4 +- private-gateway/catalog/src/types/index.ts | 14 ++--- public-gateway/app/src/index.ts | 4 +- public-gateway/app/src/middleware/index.ts | 2 +- public-gateway/app/src/module.ts | 2 +- public-gateway/catalog/src/index.ts | 6 +- .../src/resolvers/CategoryGroupQueries.ts | 2 +- .../catalog/src/resolvers/CategoryQueries.ts | 2 +- public-gateway/catalog/src/resolvers/index.ts | 4 +- .../catalog/src/types/CategoriesList.ts | 2 +- .../catalog/src/types/CategoryGroup.ts | 2 +- .../catalog/src/types/CategoryGroupsList.ts | 2 +- public-gateway/catalog/src/types/index.ts | 6 +- .../src/dataloaders/ActivityLoader.ts | 2 +- .../src/dataloaders/CategoriesLoader.ts | 2 +- .../src/dataloaders/CategoryLoader.ts | 2 +- .../src/dataloaders/CounterLoader.ts | 2 +- .../src/dataloaders/CustomerLoader.ts | 2 +- .../src/dataloaders/FilesLoader.ts | 2 +- .../src/dataloaders/MemberLoader.ts | 2 +- .../src/dataloaders/ProfileLoader.ts | 2 +- .../src/dataloaders/ProjectLoader.ts | 2 +- .../src/dataloaders/UserLoader.ts | 2 +- .../collaboration/src/dataloaders/index.ts | 26 ++++---- public-gateway/collaboration/src/index.ts | 56 ++++++++--------- .../collaboration/src/inputs/index.ts | 30 ++++----- .../src/resolvers/DiscussionMutations.ts | 4 +- .../src/resolvers/DiscussionResolver.ts | 4 +- .../src/resolvers/MessageResolver.ts | 6 +- .../src/resolvers/ProjectMutations.ts | 16 ++--- .../src/resolvers/ProjectOwnerResolver.ts | 8 +-- .../src/resolvers/ProjectQueries.ts | 4 +- .../src/resolvers/ProjectResolver.ts | 10 +-- .../src/resolvers/ReplyMutations.ts | 24 +++---- .../src/resolvers/ReplyResolver.ts | 4 +- .../src/resolvers/ReviewResolver.ts | 4 +- .../src/resolvers/SpecialisationResolver.ts | 4 +- .../src/resolvers/SpecialistMutations.ts | 8 +-- .../src/resolvers/SpecialistQueries.ts | 4 +- .../src/resolvers/SpecialistResolver.ts | 8 +-- .../collaboration/src/resolvers/index.ts | 28 ++++----- .../src/types/AddDiscussionMessageResponse.ts | 4 +- .../src/types/AddProjectReplyResponse.ts | 4 +- .../src/types/AddReplyMessageResponse.ts | 4 +- .../src/types/ChangeAccountTypeResponse.ts | 4 +- .../src/types/ChangeReplyStatusResponse.ts | 4 +- .../src/types/ChooseSpecialistResponse.ts | 4 +- .../src/types/CompleteProjectResponse.ts | 4 +- .../src/types/ConfirmProjectReplyResponse.ts | 4 +- .../src/types/CreateProjectResponse.ts | 4 +- .../collaboration/src/types/Discussion.ts | 2 +- .../collaboration/src/types/Message.ts | 2 +- .../collaboration/src/types/Project.ts | 6 +- .../collaboration/src/types/ProjectOwner.ts | 4 +- .../collaboration/src/types/ProjectsList.ts | 2 +- .../src/types/PublishProjectResponse.ts | 4 +- .../src/types/RejectProjectReplyResponse.ts | 4 +- .../collaboration/src/types/Reply.ts | 4 +- .../collaboration/src/types/Specialist.ts | 6 +- .../src/types/SpecialistMember.ts | 6 +- .../src/types/SpecialistsList.ts | 2 +- .../src/types/UpdateProjectResponse.ts | 4 +- .../src/types/UpdateSpecialistResponse.ts | 4 +- .../collaboration/src/types/index.ts | 48 +++++++------- public-gateway/files/src/index.ts | 4 +- public-gateway/files/src/inputs/index.ts | 4 +- .../files/src/resolvers/UploadMutations.ts | 8 +-- public-gateway/files/src/resolvers/index.ts | 2 +- .../files/src/types/ConfirmUploadResponse.ts | 2 +- .../files/src/types/CreateUploadResponse.ts | 2 +- public-gateway/files/src/types/Upload.ts | 2 +- public-gateway/files/src/types/index.ts | 6 +- public-gateway/identity/src/index.ts | 18 +++--- public-gateway/identity/src/inputs/index.ts | 2 +- .../src/resolvers/DiscussionsResolver.ts | 2 +- .../identity/src/resolvers/IdentityQueries.ts | 2 +- .../identity/src/resolvers/MemberResolver.ts | 2 +- .../src/resolvers/PortfolioResolver.ts | 2 +- .../src/resolvers/ProfileMutations.ts | 4 +- .../src/resolvers/ProfilePhotoResolver.ts | 2 +- .../src/resolvers/ProjectsResolver.ts | 2 +- .../identity/src/resolvers/RepliesResolver.ts | 2 +- .../identity/src/resolvers/index.ts | 16 ++--- .../identity/src/types/ContactInformation.ts | 2 +- public-gateway/identity/src/types/Profile.ts | 8 +-- .../src/types/UpdateProfileResponse.ts | 4 +- public-gateway/identity/src/types/User.ts | 4 +- public-gateway/identity/src/types/index.ts | 6 +- .../portfolio/src/dataloaders/ImageLoader.ts | 2 +- .../portfolio/src/dataloaders/index.ts | 2 +- public-gateway/portfolio/src/index.ts | 8 +-- public-gateway/portfolio/src/inputs/index.ts | 4 +- .../src/resolvers/PortfolioMutations.ts | 8 +-- .../src/resolvers/PortfolioResolver.ts | 4 +- .../portfolio/src/resolvers/index.ts | 4 +- .../src/types/CreatePortfolioResponse.ts | 4 +- .../src/types/UpdatePortfolioResponse.ts | 4 +- public-gateway/portfolio/src/types/index.ts | 6 +- public-gateway/search/src/index.ts | 8 +-- public-gateway/search/src/inputs/index.ts | 4 +- .../src/resolvers/ProjectsSearchResolver.ts | 4 +- .../search/src/resolvers/SearchQueries.ts | 2 +- .../resolvers/SpecialistsSearchResolver.ts | 4 +- public-gateway/search/src/resolvers/index.ts | 6 +- public-gateway/search/src/types/index.ts | 2 +- public-gateway/types/src/index.ts | 4 +- public-gateway/types/src/inputs/index.ts | 2 +- public-gateway/types/src/types/index.ts | 2 +- public-gateway/utils/src/index.ts | 4 +- public-gateway/utils/src/interfaces/index.ts | 2 +- public-gateway/utils/src/pipes/index.ts | 2 +- search/service/src/controllers/index.ts | 4 +- search/service/src/handlers/index.ts | 14 ++--- .../src/handlers/project-completed.handler.ts | 2 +- .../src/handlers/project-created.handler.ts | 2 +- .../src/handlers/project-published.handler.ts | 2 +- .../project-reply-confirmed.handler.ts | 2 +- .../project-reply-rejected.handler.ts | 2 +- .../src/handlers/project-updated.handler.ts | 2 +- .../handlers/specialist-updated.handler.ts | 2 +- search/service/src/index.ts | 2 +- search/service/src/module.ts | 26 ++++---- search/service/src/services/index.ts | 8 +-- site/entrypoints/renderer/src/index.ts | 2 +- site/entrypoints/renderer/src/pages/_app.tsx | 8 +-- .../renderer/src/providers/index.ts | 8 +-- .../catalog/src/__tests__/Catalog.test.tsx | 2 +- site/fragments/catalog/src/index.tsx | 4 +- .../filters/src/__tests__/Filters.test.tsx | 2 +- site/fragments/filters/src/index.tsx | 4 +- site/fragments/footer/src/index.tsx | 2 +- site/fragments/main/src/Main.tsx | 2 +- .../main/src/__tests__/Main.test.tsx | 2 +- site/fragments/main/src/index.tsx | 4 +- site/fragments/navigation/src/Drawer.tsx | 2 +- site/fragments/navigation/src/Navigation.tsx | 6 +- site/fragments/navigation/src/Profile.tsx | 2 +- site/fragments/navigation/src/index.tsx | 4 +- .../project-customer/src/ProjectCustomer.tsx | 2 +- site/fragments/project-customer/src/index.tsx | 2 +- .../project-reply/src/ProjectReply.tsx | 2 +- .../src/__tests__/ProjectReply.test.tsx | 2 +- site/fragments/project-reply/src/index.tsx | 4 +- .../projects-detail/src/ProjectsDetail.tsx | 4 +- .../src/__tests__/ProjectsDetail.test.tsx | 2 +- site/fragments/projects-detail/src/index.tsx | 2 +- .../src/worksheet/Ceilings.tsx | 2 +- .../projects-detail/src/worksheet/Floors.tsx | 2 +- .../src/worksheet/HomeBuilding.tsx | 2 +- .../src/worksheet/Wallpapering.tsx | 2 +- .../projects-detail/src/worksheet/Welding.tsx | 2 +- .../projects-detail/src/worksheet/index.tsx | 10 +-- site/fragments/projects/src/Projects.tsx | 2 +- .../projects/src/__tests__/Projects.test.tsx | 2 +- site/fragments/projects/src/index.tsx | 4 +- .../src/SpecialistsDetail.tsx | 2 +- .../src/__tests__/SpecialistsDetail.test.tsx | 2 +- .../specialists-detail/src/index.tsx | 2 +- .../fragments/specialists/src/Specialists.tsx | 2 +- .../src/__tests__/Specialists.test.tsx | 2 +- site/fragments/specialists/src/index.tsx | 4 +- site/pages/index-page/src/Seo.tsx | 2 +- site/pages/index-page/src/index.tsx | 4 +- site/pages/projects-detail-page/src/Seo.tsx | 2 +- site/pages/projects-detail-page/src/index.tsx | 10 +-- site/pages/projects-page/src/ProjectsPage.tsx | 2 +- site/pages/projects-page/src/Seo.tsx | 2 +- site/pages/projects-page/src/index.tsx | 4 +- .../pages/specialists-detail-page/src/Seo.tsx | 2 +- .../specialists-detail-page/src/index.tsx | 6 +- site/pages/specialists-page/src/Seo.tsx | 2 +- .../specialists-page/src/SpecialistsPage.tsx | 2 +- site/pages/specialists-page/src/index.tsx | 4 +- ui/accordion/src/accordion.component.tsx | 6 +- .../content-container.component.ts | 2 +- ui/accordion/src/content-container/index.ts | 2 +- ui/accordion/src/index.ts | 2 +- ui/accordion/src/trigger-container/index.ts | 2 +- .../trigger-container.component.ts | 2 +- ui/avatar/src/index.tsx | 2 +- ui/button/src/Button.tsx | 4 +- ui/button/src/CheckButton.tsx | 2 +- ui/button/src/index.ts | 6 +- ui/carousel/src/Carousel.tsx | 2 +- ui/carousel/src/index.ts | 2 +- ui/chat/src/Chat.tsx | 2 +- ui/chat/src/context/ChatContext.tsx | 2 +- ui/chat/src/context/index.ts | 4 +- ui/chat/src/context/useChat.ts | 4 +- ui/chat/src/index.ts | 6 +- ui/condition/src/index.ts | 2 +- ui/divider/src/index.ts | 2 +- ui/drawer/src/Drawer.tsx | 2 +- ui/drawer/src/context/DrawerContext.tsx | 2 +- ui/drawer/src/context/index.ts | 4 +- ui/drawer/src/context/useDrawer.ts | 4 +- ui/drawer/src/drag/DragDrawer.tsx | 10 +-- ui/drawer/src/drag/index.ts | 2 +- ui/drawer/src/index.ts | 8 +-- ui/dropdown/src/index.ts | 6 +- ui/gallery/src/Gallery.tsx | 4 +- ui/gallery/src/index.ts | 2 +- ui/hamburger/src/index.ts | 2 +- ui/icons/src/ArrowBackwardIcon.tsx | 2 +- ui/icons/src/ArrowDownIcon.tsx | 2 +- ui/icons/src/ArrowForwardIcon.tsx | 2 +- ui/icons/src/ArrowLeftIcon.tsx | 2 +- ui/icons/src/ArrowRightIcon.tsx | 2 +- ui/icons/src/ChatIcon.tsx | 2 +- ui/icons/src/CheckIcon.tsx | 2 +- ui/icons/src/CloseIcon.tsx | 2 +- ui/icons/src/ForwardArrowLeftIcon.tsx | 2 +- ui/icons/src/LogoIcon.tsx | 2 +- ui/icons/src/MapIcon.tsx | 2 +- ui/icons/src/MinusIcon.tsx | 2 +- ui/icons/src/PersonIcon.tsx | 2 +- ui/icons/src/PhoneIcon.tsx | 2 +- ui/icons/src/PlusIcon.tsx | 2 +- ui/icons/src/SearchIcon.tsx | 2 +- ui/icons/src/SendIcon.tsx | 2 +- ui/icons/src/StarIcon.tsx | 2 +- ui/icons/src/ThumbUpIcon.tsx | 2 +- ui/icons/src/TurnedInIcon.tsx | 2 +- ui/icons/src/VisibilityIcon.tsx | 2 +- ui/icons/src/WorkIcon.tsx | 2 +- ui/icons/src/index.ts | 44 ++++++------- ui/icons/svgr.ts | 6 +- ui/image/src/index.ts | 6 +- ui/input/src/Input.tsx | 8 +-- ui/input/src/PriceInput.tsx | 2 +- ui/input/src/Textarea.tsx | 2 +- ui/input/src/hooks/index.ts | 8 +-- ui/input/src/index.ts | 8 +-- ui/input/src/parts/Addon.tsx | 2 +- ui/input/src/parts/Addons.tsx | 2 +- ui/input/src/parts/Attachments.tsx | 4 +- ui/input/src/parts/PrefixSuffix.tsx | 4 +- ui/input/src/parts/StyledInput.tsx | 2 +- ui/input/src/parts/index.ts | 10 +-- ui/label/src/index.tsx | 2 +- ui/layout/src/index.ts | 4 +- ui/link/src/NavLink.ts | 2 +- ui/link/src/NextLink.tsx | 6 +- ui/link/src/index.tsx | 8 +-- ui/listview/src/index.ts | 2 +- ui/modal/src/index.ts | 2 +- ui/navigation/src/index.tsx | 2 +- ui/rating/src/index.ts | 4 +- ui/read-more/src/index.ts | 2 +- ui/relative-time/src/index.ts | 2 +- ui/search/src/Search.tsx | 6 +- ui/search/src/index.ts | 2 +- ui/select/src/Select.tsx | 6 +- ui/select/src/index.ts | 2 +- ui/text/src/index.ts | 4 +- ui/theme/src/Provider.ts | 2 +- ui/theme/src/globals.ts | 4 +- ui/theme/src/index.ts | 6 +- ui/theme/src/theme/index.ts | 18 +++--- ui/utils/src/index.ts | 4 +- 537 files changed, 1283 insertions(+), 1283 deletions(-) diff --git a/catalog/application/src/commands/CreateCategoryCommand.ts b/catalog/application/src/commands/CreateCategoryCommand.ts index 4e0459a4f..768ab86ac 100644 --- a/catalog/application/src/commands/CreateCategoryCommand.ts +++ b/catalog/application/src/commands/CreateCategoryCommand.ts @@ -1,6 +1,6 @@ import { IsUUID } from 'class-validator' import { MinLength } from 'class-validator' -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' export class CreateCategoryCommand { id: string = uuid() diff --git a/catalog/application/src/commands/CreateCategoryGroupCommand.ts b/catalog/application/src/commands/CreateCategoryGroupCommand.ts index 41924c4d5..93da663ce 100644 --- a/catalog/application/src/commands/CreateCategoryGroupCommand.ts +++ b/catalog/application/src/commands/CreateCategoryGroupCommand.ts @@ -1,5 +1,5 @@ import { MinLength } from 'class-validator' -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' export class CreateCategoryGroupCommand { id: string = uuid() diff --git a/catalog/application/src/commands/index.ts b/catalog/application/src/commands/index.ts index 908b5fbef..c82816932 100644 --- a/catalog/application/src/commands/index.ts +++ b/catalog/application/src/commands/index.ts @@ -1,6 +1,6 @@ -export * from './CreateCategoryGroupCommand' -export * from './UpdateCategoryGroupCommand' -export * from './DeleteCategoryGroupCommand' -export * from './CreateCategoryCommand' -export * from './UpdateCategoryCommand' -export * from './DeleteCategoryCommand' +export * from './CreateCategoryGroupCommand.js' +export * from './UpdateCategoryGroupCommand.js' +export * from './DeleteCategoryGroupCommand.js' +export * from './CreateCategoryCommand.js' +export * from './UpdateCategoryCommand.js' +export * from './DeleteCategoryCommand.js' diff --git a/catalog/application/src/index.ts b/catalog/application/src/index.ts index da01b5547..a173422ca 100644 --- a/catalog/application/src/index.ts +++ b/catalog/application/src/index.ts @@ -1,3 +1,3 @@ -export * from './commands' -export * from './services' -export * from './module' +export * from './commands/index.js' +export * from './services/index.js' +export * from './module.js' diff --git a/catalog/application/src/module.ts b/catalog/application/src/module.ts index 8caa4379c..a0605f788 100644 --- a/catalog/application/src/module.ts +++ b/catalog/application/src/module.ts @@ -1,9 +1,9 @@ import { Module } from '@nestjs/common' -import { CategoryGroupQueriesService } from './services' -import { CategoryGroupService } from './services' -import { CategoryQueriesService } from './services' -import { CategoryService } from './services' +import { CategoryGroupQueriesService } from './services/index.js' +import { CategoryGroupService } from './services/index.js' +import { CategoryQueriesService } from './services/index.js' +import { CategoryService } from './services/index.js' @Module({ providers: [ diff --git a/catalog/application/src/services/CategoryGroupService.ts b/catalog/application/src/services/CategoryGroupService.ts index ecb51c652..6cb1bfa93 100644 --- a/catalog/application/src/services/CategoryGroupService.ts +++ b/catalog/application/src/services/CategoryGroupService.ts @@ -3,9 +3,9 @@ import { Injectable } from '@nestjs/common' import { CategoryGroup } from '@catalog/domain' import { CategoryGroupEntityRepository } from '@catalog/persistence' -import { CreateCategoryGroupCommand } from '../commands' -import { DeleteCategoryGroupCommand } from '../commands' -import { UpdateCategoryGroupCommand } from '../commands' +import { CreateCategoryGroupCommand } from '../commands/index.js' +import { DeleteCategoryGroupCommand } from '../commands/index.js' +import { UpdateCategoryGroupCommand } from '../commands/index.js' @Injectable() export class CategoryGroupService { diff --git a/catalog/application/src/services/CategoryService.ts b/catalog/application/src/services/CategoryService.ts index 4dbf6ad45..e77703f22 100644 --- a/catalog/application/src/services/CategoryService.ts +++ b/catalog/application/src/services/CategoryService.ts @@ -3,9 +3,9 @@ import { Injectable } from '@nestjs/common' import { Category } from '@catalog/domain' import { CategoryEntityRepository } from '@catalog/persistence' -import { CreateCategoryCommand } from '../commands' -import { DeleteCategoryCommand } from '../commands' -import { UpdateCategoryCommand } from '../commands' +import { CreateCategoryCommand } from '../commands/index.js' +import { DeleteCategoryCommand } from '../commands/index.js' +import { UpdateCategoryCommand } from '../commands/index.js' @Injectable() export class CategoryService { diff --git a/catalog/application/src/services/index.ts b/catalog/application/src/services/index.ts index 40b22ed56..75a7e1db3 100644 --- a/catalog/application/src/services/index.ts +++ b/catalog/application/src/services/index.ts @@ -1,4 +1,4 @@ -export * from './CategoryGroupQueriesService' -export * from './CategoryGroupService' -export * from './CategoryQueriesService' -export * from './CategoryService' +export * from './CategoryGroupQueriesService.js' +export * from './CategoryGroupService.js' +export * from './CategoryQueriesService.js' +export * from './CategoryService.js' diff --git a/catalog/domain/src/events/index.ts b/catalog/domain/src/events/index.ts index ee566c2fe..b2744dccd 100644 --- a/catalog/domain/src/events/index.ts +++ b/catalog/domain/src/events/index.ts @@ -1,6 +1,6 @@ -export * from './CategoryGroupCreated' -export * from './CategoryGroupUpdated' -export * from './CategoryGroupDeleted' -export * from './CategoryCreated' -export * from './CategoryUpdated' -export * from './CategoryDeleted' +export * from './CategoryGroupCreated.js' +export * from './CategoryGroupUpdated.js' +export * from './CategoryGroupDeleted.js' +export * from './CategoryCreated.js' +export * from './CategoryUpdated.js' +export * from './CategoryDeleted.js' diff --git a/catalog/domain/src/index.ts b/catalog/domain/src/index.ts index 9621abb0c..9a4907b1b 100644 --- a/catalog/domain/src/index.ts +++ b/catalog/domain/src/index.ts @@ -1,2 +1,2 @@ -export * from './events' -export * from './model' +export * from './events/index.js' +export * from './model/index.js' diff --git a/catalog/domain/src/model/Category.ts b/catalog/domain/src/model/Category.ts index bf845c0cb..3215f26b4 100644 --- a/catalog/domain/src/model/Category.ts +++ b/catalog/domain/src/model/Category.ts @@ -2,9 +2,9 @@ import { AggregateRoot } from '@node-ts/ddd' /* eslint-disable @typescript-eslint/no-empty-function */ import { AggregateRootProperties } from '@node-ts/ddd-types' -import { CategoryCreated } from '../events' -import { CategoryDeleted } from '../events' -import { CategoryUpdated } from '../events' +import { CategoryCreated } from '../events/index.js' +import { CategoryDeleted } from '../events/index.js' +import { CategoryUpdated } from '../events/index.js' export interface CategoryProperties extends AggregateRootProperties { groupId: string diff --git a/catalog/domain/src/model/CategoryGroup.ts b/catalog/domain/src/model/CategoryGroup.ts index 964772a75..f43c03d32 100644 --- a/catalog/domain/src/model/CategoryGroup.ts +++ b/catalog/domain/src/model/CategoryGroup.ts @@ -2,9 +2,9 @@ import { AggregateRoot } from '@node-ts/ddd' /* eslint-disable @typescript-eslint/no-empty-function */ import { AggregateRootProperties } from '@node-ts/ddd-types' -import { CategoryGroupCreated } from '../events' -import { CategoryGroupDeleted } from '../events' -import { CategoryGroupUpdated } from '../events' +import { CategoryGroupCreated } from '../events/index.js' +import { CategoryGroupDeleted } from '../events/index.js' +import { CategoryGroupUpdated } from '../events/index.js' export interface CategoryGroupProperties extends AggregateRootProperties { name: string diff --git a/catalog/domain/src/model/index.ts b/catalog/domain/src/model/index.ts index 638ee81ff..e7844f39f 100644 --- a/catalog/domain/src/model/index.ts +++ b/catalog/domain/src/model/index.ts @@ -1,2 +1,2 @@ -export * from './CategoryGroup' -export * from './Category' +export * from './CategoryGroup.js' +export * from './Category.js' diff --git a/catalog/persistence/src/config.ts b/catalog/persistence/src/config.ts index e95bd746b..337a812e3 100644 --- a/catalog/persistence/src/config.ts +++ b/catalog/persistence/src/config.ts @@ -1,7 +1,7 @@ import { TypeOrmModuleOptions } from '@nestjs/typeorm' -import * as entities from './entities' -import * as migrations from './migrations' +import * as entities from './entities/index.js' +import * as migrations from './migrations/index.js' const config: TypeOrmModuleOptions = { type: 'postgres', diff --git a/catalog/persistence/src/entities/Category.ts b/catalog/persistence/src/entities/Category.ts index 68d2c8906..78169ef9d 100644 --- a/catalog/persistence/src/entities/Category.ts +++ b/catalog/persistence/src/entities/Category.ts @@ -7,7 +7,7 @@ import { ManyToOne } from 'typeorm' import { PrimaryColumn } from 'typeorm' import { UpdateDateColumn } from 'typeorm' -import { CategoryGroup } from './CategoryGroup' +import { CategoryGroup } from './CategoryGroup.js' @Entity() export class Category { diff --git a/catalog/persistence/src/entities/CategoryGroup.ts b/catalog/persistence/src/entities/CategoryGroup.ts index 95228c82d..cf864ca47 100644 --- a/catalog/persistence/src/entities/CategoryGroup.ts +++ b/catalog/persistence/src/entities/CategoryGroup.ts @@ -5,7 +5,7 @@ import { OneToMany } from 'typeorm' import { PrimaryColumn } from 'typeorm' import { UpdateDateColumn } from 'typeorm' -import { Category } from './Category' +import { Category } from './Category.js' @Entity() export class CategoryGroup { diff --git a/catalog/persistence/src/entities/index.ts b/catalog/persistence/src/entities/index.ts index 638ee81ff..e7844f39f 100644 --- a/catalog/persistence/src/entities/index.ts +++ b/catalog/persistence/src/entities/index.ts @@ -1,2 +1,2 @@ -export * from './CategoryGroup' -export * from './Category' +export * from './CategoryGroup.js' +export * from './Category.js' diff --git a/catalog/persistence/src/index.ts b/catalog/persistence/src/index.ts index ba6c42110..d0ee29778 100644 --- a/catalog/persistence/src/index.ts +++ b/catalog/persistence/src/index.ts @@ -1,3 +1,3 @@ -export * from './repositories' -export * from './entities' -export * from './module' +export * from './repositories/index.js' +export * from './entities/index.js' +export * from './module.js' diff --git a/catalog/persistence/src/migrations/index.ts b/catalog/persistence/src/migrations/index.ts index c63c43112..d4e64b9ae 100644 --- a/catalog/persistence/src/migrations/index.ts +++ b/catalog/persistence/src/migrations/index.ts @@ -1,4 +1,4 @@ -export * from './1564387862723-CreateCategoriesAndGroups' -export * from './1564392658148-AddCategorySeed' -export * from './1564569981769-CategoryGroupChangePrimaryColumn' -export * from './1567160603050-AddVersions' +export * from './1564387862723-CreateCategoriesAndGroups.js' +export * from './1564392658148-AddCategorySeed.js' +export * from './1564569981769-CategoryGroupChangePrimaryColumn.js' +export * from './1567160603050-AddVersions.js' diff --git a/catalog/persistence/src/module.ts b/catalog/persistence/src/module.ts index 36dc6f028..e2f203a48 100644 --- a/catalog/persistence/src/module.ts +++ b/catalog/persistence/src/module.ts @@ -5,11 +5,11 @@ import { BusModule } from '@monstrs/nestjs-bus' import { LoggerModule } from '@monstrs/nestjs-logger' import { TypeOrmModule } from '@nestjs/typeorm' -import { Category } from './entities' -import { CategoryGroup } from './entities' -import { CategoryEntityRepository } from './repositories' -import { CategoryGroupEntityRepository } from './repositories' -import config from './config' +import { Category } from './entities/index.js' +import { CategoryGroup } from './entities/index.js' +import { CategoryEntityRepository } from './repositories/index.js' +import { CategoryGroupEntityRepository } from './repositories/index.js' +import config from './config.js' const feature = TypeOrmModule.forFeature([CategoryGroup, Category]) diff --git a/catalog/persistence/src/repositories/CategoryEntityRepository.ts b/catalog/persistence/src/repositories/CategoryEntityRepository.ts index e93c43f7d..abfeade16 100644 --- a/catalog/persistence/src/repositories/CategoryEntityRepository.ts +++ b/catalog/persistence/src/repositories/CategoryEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { Category } from '../entities' +import { Category } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/catalog/persistence/src/repositories/CategoryGroupEntityRepository.ts b/catalog/persistence/src/repositories/CategoryGroupEntityRepository.ts index 45ac4017a..47c2146a1 100644 --- a/catalog/persistence/src/repositories/CategoryGroupEntityRepository.ts +++ b/catalog/persistence/src/repositories/CategoryGroupEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { CategoryGroup } from '../entities' +import { CategoryGroup } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/catalog/persistence/src/repositories/index.ts b/catalog/persistence/src/repositories/index.ts index 5dc18d89b..1ee1b6791 100644 --- a/catalog/persistence/src/repositories/index.ts +++ b/catalog/persistence/src/repositories/index.ts @@ -1,2 +1,2 @@ -export * from './CategoryGroupEntityRepository' -export * from './CategoryEntityRepository' +export * from './CategoryGroupEntityRepository.js' +export * from './CategoryEntityRepository.js' diff --git a/catalog/service/src/controllers/index.ts b/catalog/service/src/controllers/index.ts index 61888ff18..37a3773e2 100644 --- a/catalog/service/src/controllers/index.ts +++ b/catalog/service/src/controllers/index.ts @@ -1,4 +1,4 @@ -export * from './CategoryGroupQueriesController' -export * from './CategoryGroupController' -export * from './CategoryController' -export * from './CategoryQueriesController' +export * from './CategoryGroupQueriesController.js' +export * from './CategoryGroupController.js' +export * from './CategoryController.js' +export * from './CategoryQueriesController.js' diff --git a/catalog/service/src/health/health.module.ts b/catalog/service/src/health/health.module.ts index a13ef6f7f..31f2d1ead 100644 --- a/catalog/service/src/health/health.module.ts +++ b/catalog/service/src/health/health.module.ts @@ -4,7 +4,7 @@ import { Module } from '@nestjs/common' import { BusHealthModule } from '@monstrs/nestjs-bus-health' import { TerminusModule } from '@nestjs/terminus' -import { TerminusOptionsService } from './terminus-options.service' +import { TerminusOptionsService } from './terminus-options.service.js' @Module({ imports: [TerminusModule, BusHealthModule], diff --git a/catalog/service/src/health/index.ts b/catalog/service/src/health/index.ts index 907c78790..05060c68b 100644 --- a/catalog/service/src/health/index.ts +++ b/catalog/service/src/health/index.ts @@ -1,2 +1,2 @@ -export * from './terminus-options.service' -export * from './health.module' +export * from './terminus-options.service.js' +export * from './health.module.js' diff --git a/catalog/service/src/index.ts b/catalog/service/src/index.ts index da2d6afd4..c64c73451 100644 --- a/catalog/service/src/index.ts +++ b/catalog/service/src/index.ts @@ -1,7 +1,7 @@ import { NestFactory } from '@nestjs/core' import { serverOptions } from '@protos/catalog' -import { ServiceModule } from './module' +import { ServiceModule } from './module.js' declare const module: any diff --git a/catalog/service/src/module.ts b/catalog/service/src/module.ts index a53aa1efb..ac11934ef 100644 --- a/catalog/service/src/module.ts +++ b/catalog/service/src/module.ts @@ -3,10 +3,10 @@ import { Module } from '@nestjs/common' import { ApplicationModule } from '@catalog/application' import { PersistenceModule } from '@catalog/persistence' -import { CategoryController } from './controllers' -import { CategoryGroupController } from './controllers' -import { CategoryGroupQueriesController } from './controllers' -import { CategoryQueriesController } from './controllers' +import { CategoryController } from './controllers/index.js' +import { CategoryGroupController } from './controllers/index.js' +import { CategoryGroupQueriesController } from './controllers/index.js' +import { CategoryQueriesController } from './controllers/index.js' @Module({ imports: [PersistenceModule, ApplicationModule], diff --git a/collaboration/application/src/commands/index.ts b/collaboration/application/src/commands/index.ts index 3665a809f..61bfe9b26 100644 --- a/collaboration/application/src/commands/index.ts +++ b/collaboration/application/src/commands/index.ts @@ -1,13 +1,13 @@ -export * from './UpdateSpecialistCommand' -export * from './CreateProjectCommand' -export * from './UpdateProjectCommand' -export * from './AddProjectReplyCommand' -export * from './AddReplyMessageCommand' -export * from './ChangeReplyStatusCommand' -export * from './ChooseSpecialistCommand' -export * from './PublishProjectCommand' -export * from './CompleteProjectCommand' -export * from './ChangeAccountTypeCommand' -export * from './AddDiscussionMessageCommand' -export * from './ConfirmProjectReplyCommand' -export * from './RejectProjectReplyCommand' +export * from './UpdateSpecialistCommand.js' +export * from './CreateProjectCommand.js' +export * from './UpdateProjectCommand.js' +export * from './AddProjectReplyCommand.js' +export * from './AddReplyMessageCommand.js' +export * from './ChangeReplyStatusCommand.js' +export * from './ChooseSpecialistCommand.js' +export * from './PublishProjectCommand.js' +export * from './CompleteProjectCommand.js' +export * from './ChangeAccountTypeCommand.js' +export * from './AddDiscussionMessageCommand.js' +export * from './ConfirmProjectReplyCommand.js' +export * from './RejectProjectReplyCommand.js' diff --git a/collaboration/application/src/handlers/RecalculateRatingHandler.ts b/collaboration/application/src/handlers/RecalculateRatingHandler.ts index 8cfbf0006..738e476f1 100644 --- a/collaboration/application/src/handlers/RecalculateRatingHandler.ts +++ b/collaboration/application/src/handlers/RecalculateRatingHandler.ts @@ -2,7 +2,7 @@ import { ReviewCreated } from '@collaboration/domain' import { SpecialistEntityRepository } from '@collaboration/persistence' import { Handler } from '@node-ts/bus-core' -import { ReviewQueriesService } from '../services' +import { ReviewQueriesService } from '../services/index.js' export class RecalculateRatingHandler implements Handler { constructor( diff --git a/collaboration/application/src/handlers/index.ts b/collaboration/application/src/handlers/index.ts index 7ab67012b..cdacefd18 100644 --- a/collaboration/application/src/handlers/index.ts +++ b/collaboration/application/src/handlers/index.ts @@ -1,3 +1,3 @@ -export * from './RecalculateRatingHandler' -export * from './ProjectReplyCountHandler' -export * from './SpecialistReviewCreatedHandler' +export * from './RecalculateRatingHandler.js' +export * from './ProjectReplyCountHandler.js' +export * from './SpecialistReviewCreatedHandler.js' diff --git a/collaboration/application/src/index.ts b/collaboration/application/src/index.ts index 706332133..46cb2b685 100644 --- a/collaboration/application/src/index.ts +++ b/collaboration/application/src/index.ts @@ -1,5 +1,5 @@ -export * from './handlers' -export * from './commands' -export * from './services' -export * from './module' -export * from './interfaces' +export * from './handlers/index.js' +export * from './commands/index.js' +export * from './services/index.js' +export * from './module.js' +export * from './interfaces/index.js' diff --git a/collaboration/application/src/interfaces/find-all-response.interface.ts b/collaboration/application/src/interfaces/find-all-response.interface.ts index 3936ccd77..4c4614cfa 100644 --- a/collaboration/application/src/interfaces/find-all-response.interface.ts +++ b/collaboration/application/src/interfaces/find-all-response.interface.ts @@ -1,4 +1,4 @@ -import { PageInfo } from './page-info.interface' +import { PageInfo } from './page-info.interface.js' export interface FindAllResponse { rows: T[] diff --git a/collaboration/application/src/interfaces/index.ts b/collaboration/application/src/interfaces/index.ts index 873a3e87d..28f449ee8 100644 --- a/collaboration/application/src/interfaces/index.ts +++ b/collaboration/application/src/interfaces/index.ts @@ -1,2 +1,2 @@ -export * from './page-info.interface' -export * from './find-all-response.interface' +export * from './page-info.interface.js' +export * from './find-all-response.interface.js' diff --git a/collaboration/application/src/module.ts b/collaboration/application/src/module.ts index 7b5d9d0dc..95d478a66 100644 --- a/collaboration/application/src/module.ts +++ b/collaboration/application/src/module.ts @@ -1,20 +1,20 @@ import { Module } from '@nestjs/common' -import { ProjectReplyCountHandler } from './handlers' -import { RecalculateRatingHandler } from './handlers' -import { SpecialistReviewCreatedHandler } from './handlers' -import { CustomerQueriesService } from './services' -import { CustomerService } from './services' -import { DiscussionQueriesService } from './services' -import { DiscussionService } from './services' -import { ProjectIdService } from './services' -import { ProjectQueriesService } from './services' -import { ProjectService } from './services' -import { ReplyQueriesService } from './services' -import { ReplyService } from './services' -import { ReviewQueriesService } from './services' -import { SpecialistQueriesService } from './services' -import { SpecialistService } from './services' +import { ProjectReplyCountHandler } from './handlers/index.js' +import { RecalculateRatingHandler } from './handlers/index.js' +import { SpecialistReviewCreatedHandler } from './handlers/index.js' +import { CustomerQueriesService } from './services/index.js' +import { CustomerService } from './services/index.js' +import { DiscussionQueriesService } from './services/index.js' +import { DiscussionService } from './services/index.js' +import { ProjectIdService } from './services/index.js' +import { ProjectQueriesService } from './services/index.js' +import { ProjectService } from './services/index.js' +import { ReplyQueriesService } from './services/index.js' +import { ReplyService } from './services/index.js' +import { ReviewQueriesService } from './services/index.js' +import { SpecialistQueriesService } from './services/index.js' +import { SpecialistService } from './services/index.js' @Module({ providers: [ diff --git a/collaboration/application/src/services/CustomerQueriesService.ts b/collaboration/application/src/services/CustomerQueriesService.ts index 873cc867f..1e0721eb7 100644 --- a/collaboration/application/src/services/CustomerQueriesService.ts +++ b/collaboration/application/src/services/CustomerQueriesService.ts @@ -4,7 +4,7 @@ import { Repository } from 'typeorm' import { Customer } from '@collaboration/persistence' import { InjectRepository } from '@nestjs/typeorm' -import { FindAllResponse } from '../interfaces' +import { FindAllResponse } from '../interfaces/index.js' @Injectable() export class CustomerQueriesService { diff --git a/collaboration/application/src/services/CustomerService.ts b/collaboration/application/src/services/CustomerService.ts index e32cbb615..2c4bf5d08 100644 --- a/collaboration/application/src/services/CustomerService.ts +++ b/collaboration/application/src/services/CustomerService.ts @@ -6,10 +6,10 @@ import { ProjectEntityRepository } from '@collaboration/persistence' import { ReplyEntityRepository } from '@collaboration/persistence' import { ReviewEntityRepository } from '@collaboration/persistence' -import { CompleteProjectCommand } from '../commands' -import { CreateProjectCommand } from '../commands' -import { PublishProjectCommand } from '../commands' -import { ProjectIdService } from './ProjectIdService' +import { CompleteProjectCommand } from '../commands/index.js' +import { CreateProjectCommand } from '../commands/index.js' +import { PublishProjectCommand } from '../commands/index.js' +import { ProjectIdService } from './ProjectIdService.js' @Injectable() export class CustomerService { diff --git a/collaboration/application/src/services/DiscussionQueriesService.ts b/collaboration/application/src/services/DiscussionQueriesService.ts index de352671f..015feeed9 100644 --- a/collaboration/application/src/services/DiscussionQueriesService.ts +++ b/collaboration/application/src/services/DiscussionQueriesService.ts @@ -5,7 +5,7 @@ import { Chat } from '@collaboration/persistence' import { Discussion } from '@collaboration/persistence' import { InjectRepository } from '@nestjs/typeorm' -import { FindAllResponse } from '../interfaces' +import { FindAllResponse } from '../interfaces/index.js' @Injectable() export class DiscussionQueriesService { diff --git a/collaboration/application/src/services/DiscussionService.ts b/collaboration/application/src/services/DiscussionService.ts index b669fe67a..cec9ae729 100644 --- a/collaboration/application/src/services/DiscussionService.ts +++ b/collaboration/application/src/services/DiscussionService.ts @@ -6,7 +6,7 @@ import { ChatEntityRepository } from '@collaboration/persistence' import { DiscussionEntityRepository } from '@collaboration/persistence' import { MessageEntityRepository } from '@collaboration/persistence' -import { AddDiscussionMessageCommand } from '../commands' +import { AddDiscussionMessageCommand } from '../commands/index.js' @Injectable() export class DiscussionService { diff --git a/collaboration/application/src/services/ProjectQueriesService.ts b/collaboration/application/src/services/ProjectQueriesService.ts index 734dfb011..440464d22 100644 --- a/collaboration/application/src/services/ProjectQueriesService.ts +++ b/collaboration/application/src/services/ProjectQueriesService.ts @@ -4,7 +4,7 @@ import { Repository } from 'typeorm' import { Project } from '@collaboration/persistence' import { InjectRepository } from '@nestjs/typeorm' -import { FindAllResponse } from '../interfaces' +import { FindAllResponse } from '../interfaces/index.js' @Injectable() export class ProjectQueriesService { diff --git a/collaboration/application/src/services/ProjectService.ts b/collaboration/application/src/services/ProjectService.ts index f6295b6d6..86141ae80 100644 --- a/collaboration/application/src/services/ProjectService.ts +++ b/collaboration/application/src/services/ProjectService.ts @@ -10,11 +10,11 @@ import { ProjectEntityRepository } from '@collaboration/persistence' import { ReplyEntityRepository } from '@collaboration/persistence' import { SpecialistEntityRepository } from '@collaboration/persistence' -import { AddProjectReplyCommand } from '../commands' -import { ChooseSpecialistCommand } from '../commands' -import { ConfirmProjectReplyCommand } from '../commands' -import { RejectProjectReplyCommand } from '../commands' -import { UpdateProjectCommand } from '../commands' +import { AddProjectReplyCommand } from '../commands/index.js' +import { ChooseSpecialistCommand } from '../commands/index.js' +import { ConfirmProjectReplyCommand } from '../commands/index.js' +import { RejectProjectReplyCommand } from '../commands/index.js' +import { UpdateProjectCommand } from '../commands/index.js' @Injectable() export class ProjectService { diff --git a/collaboration/application/src/services/ReplyQueriesService.ts b/collaboration/application/src/services/ReplyQueriesService.ts index a08355b2c..be8416aca 100644 --- a/collaboration/application/src/services/ReplyQueriesService.ts +++ b/collaboration/application/src/services/ReplyQueriesService.ts @@ -4,7 +4,7 @@ import { Repository } from 'typeorm' import { Reply } from '@collaboration/persistence' import { InjectRepository } from '@nestjs/typeorm' -import { FindAllResponse } from '../interfaces' +import { FindAllResponse } from '../interfaces/index.js' @Injectable() export class ReplyQueriesService { diff --git a/collaboration/application/src/services/ReplyService.ts b/collaboration/application/src/services/ReplyService.ts index 5147b1cdc..93978132c 100644 --- a/collaboration/application/src/services/ReplyService.ts +++ b/collaboration/application/src/services/ReplyService.ts @@ -5,8 +5,8 @@ import { MessageEntityRepository } from '@collaboration/persistence' import { ProjectEntityRepository } from '@collaboration/persistence' import { ReplyEntityRepository } from '@collaboration/persistence' -import { AddReplyMessageCommand } from '../commands' -import { ChangeReplyStatusCommand } from '../commands' +import { AddReplyMessageCommand } from '../commands/index.js' +import { ChangeReplyStatusCommand } from '../commands/index.js' @Injectable() export class ReplyService { diff --git a/collaboration/application/src/services/ReviewQueriesService.ts b/collaboration/application/src/services/ReviewQueriesService.ts index d18808837..9b77fb3e0 100644 --- a/collaboration/application/src/services/ReviewQueriesService.ts +++ b/collaboration/application/src/services/ReviewQueriesService.ts @@ -4,7 +4,7 @@ import { Repository } from 'typeorm' import { Review } from '@collaboration/persistence' import { InjectRepository } from '@nestjs/typeorm' -import { FindAllResponse } from '../interfaces' +import { FindAllResponse } from '../interfaces/index.js' @Injectable() export class ReviewQueriesService { diff --git a/collaboration/application/src/services/SpecialistQueriesService.ts b/collaboration/application/src/services/SpecialistQueriesService.ts index df9ccd01f..7ab69ee10 100644 --- a/collaboration/application/src/services/SpecialistQueriesService.ts +++ b/collaboration/application/src/services/SpecialistQueriesService.ts @@ -4,7 +4,7 @@ import { Repository } from 'typeorm' import { Specialist } from '@collaboration/persistence' import { InjectRepository } from '@nestjs/typeorm' -import { FindAllResponse } from '../interfaces' +import { FindAllResponse } from '../interfaces/index.js' @Injectable() export class SpecialistQueriesService { diff --git a/collaboration/application/src/services/SpecialistService.ts b/collaboration/application/src/services/SpecialistService.ts index 67d610397..57bc9477f 100644 --- a/collaboration/application/src/services/SpecialistService.ts +++ b/collaboration/application/src/services/SpecialistService.ts @@ -6,8 +6,8 @@ import { PrivatePerson } from '@collaboration/domain' import { Specialisation } from '@collaboration/domain' import { SpecialistEntityRepository } from '@collaboration/persistence' -import { ChangeAccountTypeCommand } from '../commands' -import { UpdateSpecialistCommand } from '../commands' +import { ChangeAccountTypeCommand } from '../commands/index.js' +import { UpdateSpecialistCommand } from '../commands/index.js' @Injectable() export class SpecialistService { diff --git a/collaboration/application/src/services/index.ts b/collaboration/application/src/services/index.ts index db60e96ce..44744d266 100644 --- a/collaboration/application/src/services/index.ts +++ b/collaboration/application/src/services/index.ts @@ -1,12 +1,12 @@ -export * from './SpecialistQueriesService' -export * from './CustomerQueriesService' -export * from './SpecialistService' -export * from './CustomerService' -export * from './ProjectQueriesService' -export * from './ProjectService' -export * from './ReplyQueriesService' -export * from './ReplyService' -export * from './ReviewQueriesService' -export * from './DiscussionService' -export * from './DiscussionQueriesService' -export * from './ProjectIdService' +export * from './SpecialistQueriesService.js' +export * from './CustomerQueriesService.js' +export * from './SpecialistService.js' +export * from './CustomerService.js' +export * from './ProjectQueriesService.js' +export * from './ProjectService.js' +export * from './ReplyQueriesService.js' +export * from './ReplyService.js' +export * from './ReviewQueriesService.js' +export * from './DiscussionService.js' +export * from './DiscussionQueriesService.js' +export * from './ProjectIdService.js' diff --git a/collaboration/domain/src/events/ProjectCreated.ts b/collaboration/domain/src/events/ProjectCreated.ts index cd0191db8..57411b851 100644 --- a/collaboration/domain/src/events/ProjectCreated.ts +++ b/collaboration/domain/src/events/ProjectCreated.ts @@ -1,8 +1,8 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { Address } from '../model' -import { BeginningOfWork } from '../model' +import { Address } from '../model/index.js' +import { BeginningOfWork } from '../model/index.js' export class ProjectCreated extends Event { static readonly NAME = 'collaboration/project-created' diff --git a/collaboration/domain/src/events/ProjectUpdated.ts b/collaboration/domain/src/events/ProjectUpdated.ts index 66c6dcc0f..00ac006a5 100644 --- a/collaboration/domain/src/events/ProjectUpdated.ts +++ b/collaboration/domain/src/events/ProjectUpdated.ts @@ -1,8 +1,8 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { Address } from '../model' -import { BeginningOfWork } from '../model' +import { Address } from '../model/index.js' +import { BeginningOfWork } from '../model/index.js' export class ProjectUpdated extends Event { static readonly NAME = 'collaboration/project-updated' diff --git a/collaboration/domain/src/events/ReplyStatusChanged.ts b/collaboration/domain/src/events/ReplyStatusChanged.ts index f61679c60..04433956d 100644 --- a/collaboration/domain/src/events/ReplyStatusChanged.ts +++ b/collaboration/domain/src/events/ReplyStatusChanged.ts @@ -1,6 +1,6 @@ import { Event } from '@node-ts/bus-messages' -import { ReplyStatus } from '../model' +import { ReplyStatus } from '../model/index.js' export class ReplyStatusChanged extends Event { static readonly NAME = 'collaboration/reply-status-changed' diff --git a/collaboration/domain/src/events/SpecialistUpdated.ts b/collaboration/domain/src/events/SpecialistUpdated.ts index 8e01dcf9c..6a1d7822e 100644 --- a/collaboration/domain/src/events/SpecialistUpdated.ts +++ b/collaboration/domain/src/events/SpecialistUpdated.ts @@ -1,9 +1,9 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { Company } from '../model' -import { PrivatePerson } from '../model' -import { Specialisation } from '../model' +import { Company } from '../model/index.js' +import { PrivatePerson } from '../model/index.js' +import { Specialisation } from '../model/index.js' export class SpecialistUpdated extends Event { static readonly NAME = 'collaboration/specialist-updated' diff --git a/collaboration/domain/src/events/index.ts b/collaboration/domain/src/events/index.ts index 7a71bcc69..411f27c9c 100644 --- a/collaboration/domain/src/events/index.ts +++ b/collaboration/domain/src/events/index.ts @@ -1,14 +1,14 @@ -export * from './SpecialistUpdated' -export * from './ProjectCreated' -export * from './ProjectUpdated' -export * from './DiscussionCreated' -export * from './ReplyCreated' -export * from './ReplyStatusChanged' -export * from './ProjectSpecialistSelected' -export * from './ReviewCreated' -export * from './ProjectPublished' -export * from './ProjectCompleted' -export * from './SpecialistRatingUpdated' -export * from './ChatCreated' -export * from './ProjectReplyConfirmed' -export * from './ProjectReplyRejected' +export * from './SpecialistUpdated.js' +export * from './ProjectCreated.js' +export * from './ProjectUpdated.js' +export * from './DiscussionCreated.js' +export * from './ReplyCreated.js' +export * from './ReplyStatusChanged.js' +export * from './ProjectSpecialistSelected.js' +export * from './ReviewCreated.js' +export * from './ProjectPublished.js' +export * from './ProjectCompleted.js' +export * from './SpecialistRatingUpdated.js' +export * from './ChatCreated.js' +export * from './ProjectReplyConfirmed.js' +export * from './ProjectReplyRejected.js' diff --git a/collaboration/domain/src/index.ts b/collaboration/domain/src/index.ts index 9621abb0c..9a4907b1b 100644 --- a/collaboration/domain/src/index.ts +++ b/collaboration/domain/src/index.ts @@ -1,2 +1,2 @@ -export * from './events' -export * from './model' +export * from './events/index.js' +export * from './model/index.js' diff --git a/collaboration/domain/src/model/Account.ts b/collaboration/domain/src/model/Account.ts index e4f405a7d..1d40fa430 100644 --- a/collaboration/domain/src/model/Account.ts +++ b/collaboration/domain/src/model/Account.ts @@ -1,4 +1,4 @@ -import { AccountType } from './AccountType' +import { AccountType } from './AccountType.js' export const getStateKey = () => { const date = new Date() diff --git a/collaboration/domain/src/model/Chat.ts b/collaboration/domain/src/model/Chat.ts index fda394e3a..09678a99b 100644 --- a/collaboration/domain/src/model/Chat.ts +++ b/collaboration/domain/src/model/Chat.ts @@ -1,8 +1,8 @@ -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' import { AggregateRoot } from '@node-ts/ddd' -import { ChatCreated } from '../events' +import { ChatCreated } from '../events/index.js' export class Chat extends AggregateRoot { customerId: string diff --git a/collaboration/domain/src/model/Company.ts b/collaboration/domain/src/model/Company.ts index 344a58b0b..fbcc569d0 100644 --- a/collaboration/domain/src/model/Company.ts +++ b/collaboration/domain/src/model/Company.ts @@ -1,5 +1,5 @@ -import { FormOfWork } from './FormOfWork' -import { Interaction } from './Interaction' +import { FormOfWork } from './FormOfWork.js' +import { Interaction } from './Interaction.js' export class Company extends Interaction { formOfWork: FormOfWork = FormOfWork.company diff --git a/collaboration/domain/src/model/Customer.ts b/collaboration/domain/src/model/Customer.ts index 39954ce75..b529ccb84 100644 --- a/collaboration/domain/src/model/Customer.ts +++ b/collaboration/domain/src/model/Customer.ts @@ -1,9 +1,9 @@ import { AggregateRoot } from '@node-ts/ddd' -import { Address } from './Address' -import { BeginningOfWork } from './BeginningOfWork' -import { Project } from './Project' -import { Reply } from './Reply' +import { Address } from './Address.js' +import { BeginningOfWork } from './BeginningOfWork.js' +import { Project } from './Project.js' +import { Reply } from './Reply.js' export class Customer extends AggregateRoot { openProjects: number diff --git a/collaboration/domain/src/model/Discussion.ts b/collaboration/domain/src/model/Discussion.ts index 44045162d..8b87234c3 100644 --- a/collaboration/domain/src/model/Discussion.ts +++ b/collaboration/domain/src/model/Discussion.ts @@ -1,9 +1,9 @@ -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' import { AggregateRoot } from '@node-ts/ddd' -import { DiscussionCreated } from '../events' -import { Message } from './Message' +import { DiscussionCreated } from '../events/index.js' +import { Message } from './Message.js' export class Discussion extends AggregateRoot { specialistId: string diff --git a/collaboration/domain/src/model/Interaction.ts b/collaboration/domain/src/model/Interaction.ts index 13fa2b83d..addf39321 100644 --- a/collaboration/domain/src/model/Interaction.ts +++ b/collaboration/domain/src/model/Interaction.ts @@ -1,4 +1,4 @@ -import { FormOfWork } from './FormOfWork' +import { FormOfWork } from './FormOfWork.js' export class Interaction { formOfWork: FormOfWork = FormOfWork.person diff --git a/collaboration/domain/src/model/PrivatePerson.ts b/collaboration/domain/src/model/PrivatePerson.ts index 438918c18..84b3bff1b 100644 --- a/collaboration/domain/src/model/PrivatePerson.ts +++ b/collaboration/domain/src/model/PrivatePerson.ts @@ -1,5 +1,5 @@ -import { FormOfWork } from './FormOfWork' -import { Interaction } from './Interaction' +import { FormOfWork } from './FormOfWork.js' +import { Interaction } from './Interaction.js' export class PrivatePerson extends Interaction { formOfWork: FormOfWork = FormOfWork.person diff --git a/collaboration/domain/src/model/Project.ts b/collaboration/domain/src/model/Project.ts index 2d756de33..ef28c4d3b 100644 --- a/collaboration/domain/src/model/Project.ts +++ b/collaboration/domain/src/model/Project.ts @@ -1,19 +1,19 @@ import { AggregateRoot } from '@node-ts/ddd' import { AggregateRootProperties } from '@node-ts/ddd-types' -import { ProjectCompleted } from '../events' -import { ProjectCreated } from '../events' -import { ProjectPublished } from '../events' -import { ProjectReplyConfirmed } from '../events' -import { ProjectReplyRejected } from '../events' -import { ProjectSpecialistSelected } from '../events' -import { ProjectUpdated } from '../events' -import { Address } from './Address' -import { BeginningOfWork } from './BeginningOfWork' -import { ProjectStatus } from './ProjectStatus' -import { Reply } from './Reply' -import { ReplyStatus } from './ReplyStatus' -import { Review } from './Review' +import { ProjectCompleted } from '../events/index.js' +import { ProjectCreated } from '../events/index.js' +import { ProjectPublished } from '../events/index.js' +import { ProjectReplyConfirmed } from '../events/index.js' +import { ProjectReplyRejected } from '../events/index.js' +import { ProjectSpecialistSelected } from '../events/index.js' +import { ProjectUpdated } from '../events/index.js' +import { Address } from './Address.js' +import { BeginningOfWork } from './BeginningOfWork.js' +import { ProjectStatus } from './ProjectStatus.js' +import { Reply } from './Reply.js' +import { ReplyStatus } from './ReplyStatus.js' +import { Review } from './Review.js' export interface ProjectProperties extends AggregateRootProperties { customerId: string diff --git a/collaboration/domain/src/model/Reply.ts b/collaboration/domain/src/model/Reply.ts index 6e7e5cf12..770020bef 100644 --- a/collaboration/domain/src/model/Reply.ts +++ b/collaboration/domain/src/model/Reply.ts @@ -1,10 +1,10 @@ -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' import { AggregateRoot } from '@node-ts/ddd' -import { ReplyCreated } from '../events' -import { ReplyStatusChanged } from '../events' -import { ReplyStatus } from './ReplyStatus' +import { ReplyCreated } from '../events/index.js' +import { ReplyStatusChanged } from '../events/index.js' +import { ReplyStatus } from './ReplyStatus.js' export class Reply extends AggregateRoot { projectId: string diff --git a/collaboration/domain/src/model/Review.ts b/collaboration/domain/src/model/Review.ts index 18cfb9074..00445fd39 100644 --- a/collaboration/domain/src/model/Review.ts +++ b/collaboration/domain/src/model/Review.ts @@ -1,9 +1,9 @@ -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' import { AggregateRoot } from '@node-ts/ddd' import { AggregateRootProperties } from '@node-ts/ddd-types' -import { ReviewCreated } from '../events' +import { ReviewCreated } from '../events/index.js' export class Review extends AggregateRoot implements AggregateRootProperties { projectId: string diff --git a/collaboration/domain/src/model/Specialist.ts b/collaboration/domain/src/model/Specialist.ts index a9040ae9b..dbbc3c0d7 100644 --- a/collaboration/domain/src/model/Specialist.ts +++ b/collaboration/domain/src/model/Specialist.ts @@ -2,14 +2,14 @@ import { AggregateRoot } from '@node-ts/ddd' /* eslint-disable no-underscore-dangle */ import { AggregateRootProperties } from '@node-ts/ddd-types' -import { SpecialistRatingUpdated } from '../events' -import { SpecialistUpdated } from '../events' -import { Account } from './Account' -import { AccountType } from './AccountType' -import { Company } from './Company' -import { FormOfWork } from './FormOfWork' -import { PrivatePerson } from './PrivatePerson' -import { Specialisation } from './Specialisation' +import { SpecialistRatingUpdated } from '../events/index.js' +import { SpecialistUpdated } from '../events/index.js' +import { Account } from './Account.js' +import { AccountType } from './AccountType.js' +import { Company } from './Company.js' +import { FormOfWork } from './FormOfWork.js' +import { PrivatePerson } from './PrivatePerson.js' +import { Specialisation } from './Specialisation.js' export interface SpecialistProperties extends AggregateRootProperties { interaction: PrivatePerson | Company diff --git a/collaboration/domain/src/model/index.ts b/collaboration/domain/src/model/index.ts index e6f8a3df3..d2136b292 100644 --- a/collaboration/domain/src/model/index.ts +++ b/collaboration/domain/src/model/index.ts @@ -1,18 +1,18 @@ -export * from './Specialist' -export * from './Customer' -export * from './Company' -export * from './FormOfWork' -export * from './PrivatePerson' -export * from './Specialisation' -export * from './BeginningOfWork' -export * from './Address' -export * from './Project' -export * from './Discussion' -export * from './Message' -export * from './Reply' -export * from './ReplyStatus' -export * from './ProjectStatus' -export * from './Review' -export * from './AccountType' -export * from './Account' -export * from './Chat' +export * from './Specialist.js' +export * from './Customer.js' +export * from './Company.js' +export * from './FormOfWork.js' +export * from './PrivatePerson.js' +export * from './Specialisation.js' +export * from './BeginningOfWork.js' +export * from './Address.js' +export * from './Project.js' +export * from './Discussion.js' +export * from './Message.js' +export * from './Reply.js' +export * from './ReplyStatus.js' +export * from './ProjectStatus.js' +export * from './Review.js' +export * from './AccountType.js' +export * from './Account.js' +export * from './Chat.js' diff --git a/collaboration/ee2/src/reply.spec.ts b/collaboration/ee2/src/reply.spec.ts index c750bc2a4..af8322bad 100644 --- a/collaboration/ee2/src/reply.spec.ts +++ b/collaboration/ee2/src/reply.spec.ts @@ -2,7 +2,7 @@ import 'reflect-metadata' import { Test } from '@nestjs/testing' import { firstValueFrom } from 'rxjs' -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' import { ServiceModule } from '@collaboration/service/src/module' import { Logger } from '@monstrs/nestjs-logger' diff --git a/collaboration/persistence/ormconfig.ts b/collaboration/persistence/ormconfig.ts index 7c12d0eef..3389da294 100644 --- a/collaboration/persistence/ormconfig.ts +++ b/collaboration/persistence/ormconfig.ts @@ -1 +1 @@ -module.exports = require('./src/config').default +module.exports = require('./src/config.js').default diff --git a/collaboration/persistence/src/config.ts b/collaboration/persistence/src/config.ts index 5c8f825fe..82a1a69fd 100644 --- a/collaboration/persistence/src/config.ts +++ b/collaboration/persistence/src/config.ts @@ -1,7 +1,7 @@ import { TypeOrmModuleOptions } from '@nestjs/typeorm' -import * as entities from './entities' -import * as migrations from './migrations' +import * as entities from './entities/index.js' +import * as migrations from './migrations/index.js' const config: TypeOrmModuleOptions = { type: 'postgres', diff --git a/collaboration/persistence/src/entities/Discussion.ts b/collaboration/persistence/src/entities/Discussion.ts index 315458012..c448f6bb4 100644 --- a/collaboration/persistence/src/entities/Discussion.ts +++ b/collaboration/persistence/src/entities/Discussion.ts @@ -6,8 +6,8 @@ import { OneToOne } from 'typeorm' import { PrimaryColumn } from 'typeorm' import { UpdateDateColumn } from 'typeorm' -import { Message } from './Message' -import { Reply } from './Reply' +import { Message } from './Message.js' +import { Reply } from './Reply.js' @Entity() export class Discussion { diff --git a/collaboration/persistence/src/entities/Message.ts b/collaboration/persistence/src/entities/Message.ts index 5b213837e..3681a8a54 100644 --- a/collaboration/persistence/src/entities/Message.ts +++ b/collaboration/persistence/src/entities/Message.ts @@ -7,7 +7,7 @@ import { ManyToOne } from 'typeorm' import { PrimaryColumn } from 'typeorm' import { UpdateDateColumn } from 'typeorm' -import { Discussion } from './Discussion' +import { Discussion } from './Discussion.js' @Entity() export class Message { diff --git a/collaboration/persistence/src/entities/Project.ts b/collaboration/persistence/src/entities/Project.ts index ea6e42802..b70bc04c4 100644 --- a/collaboration/persistence/src/entities/Project.ts +++ b/collaboration/persistence/src/entities/Project.ts @@ -7,7 +7,7 @@ import { UpdateDateColumn } from 'typeorm' import { BeginningOfWork } from '@collaboration/domain' import { ProjectStatus } from '@collaboration/domain' -import { Address } from './Address' +import { Address } from './Address.js' @Entity() export class Project { diff --git a/collaboration/persistence/src/entities/Reply.ts b/collaboration/persistence/src/entities/Reply.ts index a2c918d37..64f17653f 100644 --- a/collaboration/persistence/src/entities/Reply.ts +++ b/collaboration/persistence/src/entities/Reply.ts @@ -9,7 +9,7 @@ import { UpdateDateColumn } from 'typeorm' import { ReplyStatus } from '@collaboration/domain' -import { Discussion } from './Discussion' +import { Discussion } from './Discussion.js' @Entity() @Index(['projectId', 'specialistId'], { unique: true }) diff --git a/collaboration/persistence/src/entities/Specialist.ts b/collaboration/persistence/src/entities/Specialist.ts index 736d1d8b4..0db211512 100644 --- a/collaboration/persistence/src/entities/Specialist.ts +++ b/collaboration/persistence/src/entities/Specialist.ts @@ -5,9 +5,9 @@ import { Entity } from 'typeorm' import { PrimaryColumn } from 'typeorm' import { UpdateDateColumn } from 'typeorm' -import { Account } from './Account' -import { Interaction } from './Interaction' -import { Specialisation } from './Specialisation' +import { Account } from './Account.js' +import { Interaction } from './Interaction.js' +import { Specialisation } from './Specialisation.js' @Entity() export class Specialist { diff --git a/collaboration/persistence/src/entities/index.ts b/collaboration/persistence/src/entities/index.ts index 37eac3b74..6d871528b 100644 --- a/collaboration/persistence/src/entities/index.ts +++ b/collaboration/persistence/src/entities/index.ts @@ -1,9 +1,9 @@ -export * from './Specialist' -export * from './Customer' -export * from './Project' -export * from './Message' -export * from './Discussion' -export * from './Reply' -export * from './Review' -export * from './Chat' -export * from './ProjectId' +export * from './Specialist.js' +export * from './Customer.js' +export * from './Project.js' +export * from './Message.js' +export * from './Discussion.js' +export * from './Reply.js' +export * from './Review.js' +export * from './Chat.js' +export * from './ProjectId.js' diff --git a/collaboration/persistence/src/index.ts b/collaboration/persistence/src/index.ts index ba6c42110..d0ee29778 100644 --- a/collaboration/persistence/src/index.ts +++ b/collaboration/persistence/src/index.ts @@ -1,3 +1,3 @@ -export * from './repositories' -export * from './entities' -export * from './module' +export * from './repositories/index.js' +export * from './entities/index.js' +export * from './module.js' diff --git a/collaboration/persistence/src/migrations/index.ts b/collaboration/persistence/src/migrations/index.ts index f0cde064c..067b820df 100644 --- a/collaboration/persistence/src/migrations/index.ts +++ b/collaboration/persistence/src/migrations/index.ts @@ -1,31 +1,31 @@ -export * from './1567929424839-Clean' -export * from './1567929597710-InitCollaboration' -export * from './1568100277686-AddCompanyName' -export * from './1568147741987-AddProject' -export * from './1568295862642-AddCustomer' -export * from './1568882365412-AddProjectWorksheet' -export * from './1568911059437-ChangeProjectWorksheetType' -export * from './1570297933431-AddMessage' -export * from './1570298229137-AddDiscussion' -export * from './1570298501071-AddReply' -export * from './1570346567292-ReplyDiscussionRef' -export * from './1570346774526-MessageDiscussionRef' -export * from './1570436181070-ReplyUnique' -export * from './1570719769283-ReplyDiscussion' -export * from './1571078719489-AddReplyStatus' -export * from './1571122493516-AddProjectStatus' -export * from './1571123497444-AddProjectSelectedReply' -export * from './1571378432964-InteractionFormOfWorkDefaultFix' -export * from './1571389683757-AddReview' -export * from './1571472097294-ChangeSpecialisationDefaults' -export * from './1571476440345-AddSpecialistRating' -export * from './1571581060117-AddProjectReplyCount' -export * from './1571587437364-AddProjectPublicationDate' -export * from './1571588728385-AddSpecialistStat' -export * from './1572081645676-AddSpecialistAccount' -export * from './1572096233570-AddChat' -export * from './1572363262445-AddCustomerProjectStat' -export * from './1572706843696-AddProjectReplyStatuses' -export * from './1572772109648-AddMessageDateAndRead' -export * from './1573338649508-ChangeProjectId' -export * from './1573339487558-AddProjectId' +export * from './1567929424839-Clean.js' +export * from './1567929597710-InitCollaboration.js' +export * from './1568100277686-AddCompanyName.js' +export * from './1568147741987-AddProject.js' +export * from './1568295862642-AddCustomer.js' +export * from './1568882365412-AddProjectWorksheet.js' +export * from './1568911059437-ChangeProjectWorksheetType.js' +export * from './1570297933431-AddMessage.js' +export * from './1570298229137-AddDiscussion.js' +export * from './1570298501071-AddReply.js' +export * from './1570346567292-ReplyDiscussionRef.js' +export * from './1570346774526-MessageDiscussionRef.js' +export * from './1570436181070-ReplyUnique.js' +export * from './1570719769283-ReplyDiscussion.js' +export * from './1571078719489-AddReplyStatus.js' +export * from './1571122493516-AddProjectStatus.js' +export * from './1571123497444-AddProjectSelectedReply.js' +export * from './1571378432964-InteractionFormOfWorkDefaultFix.js' +export * from './1571389683757-AddReview.js' +export * from './1571472097294-ChangeSpecialisationDefaults.js' +export * from './1571476440345-AddSpecialistRating.js' +export * from './1571581060117-AddProjectReplyCount.js' +export * from './1571587437364-AddProjectPublicationDate.js' +export * from './1571588728385-AddSpecialistStat.js' +export * from './1572081645676-AddSpecialistAccount.js' +export * from './1572096233570-AddChat.js' +export * from './1572363262445-AddCustomerProjectStat.js' +export * from './1572706843696-AddProjectReplyStatuses.js' +export * from './1572772109648-AddMessageDateAndRead.js' +export * from './1573338649508-ChangeProjectId.js' +export * from './1573339487558-AddProjectId.js' diff --git a/collaboration/persistence/src/module.ts b/collaboration/persistence/src/module.ts index b07dff649..d1b3ed120 100644 --- a/collaboration/persistence/src/module.ts +++ b/collaboration/persistence/src/module.ts @@ -5,24 +5,24 @@ import { BusModule } from '@monstrs/nestjs-bus' import { LoggerModule } from '@monstrs/nestjs-logger' import { TypeOrmModule } from '@nestjs/typeorm' -import { Chat } from './entities' -import { Customer } from './entities' -import { Discussion } from './entities' -import { Message } from './entities' -import { Project } from './entities' -import { ProjectId } from './entities' -import { Reply } from './entities' -import { Review } from './entities' -import { Specialist } from './entities' -import { ChatEntityRepository } from './repositories' -import { CustomerEntityRepository } from './repositories' -import { DiscussionEntityRepository } from './repositories' -import { MessageEntityRepository } from './repositories' -import { ProjectEntityRepository } from './repositories' -import { ReplyEntityRepository } from './repositories' -import { ReviewEntityRepository } from './repositories' -import { SpecialistEntityRepository } from './repositories' -import config from './config' +import { Chat } from './entities/index.js' +import { Customer } from './entities/index.js' +import { Discussion } from './entities/index.js' +import { Message } from './entities/index.js' +import { Project } from './entities/index.js' +import { ProjectId } from './entities/index.js' +import { Reply } from './entities/index.js' +import { Review } from './entities/index.js' +import { Specialist } from './entities/index.js' +import { ChatEntityRepository } from './repositories/index.js' +import { CustomerEntityRepository } from './repositories/index.js' +import { DiscussionEntityRepository } from './repositories/index.js' +import { MessageEntityRepository } from './repositories/index.js' +import { ProjectEntityRepository } from './repositories/index.js' +import { ReplyEntityRepository } from './repositories/index.js' +import { ReviewEntityRepository } from './repositories/index.js' +import { SpecialistEntityRepository } from './repositories/index.js' +import config from './config.js' const feature = TypeOrmModule.forFeature([ Specialist, diff --git a/collaboration/persistence/src/repositories/ChatEntityRepository.ts b/collaboration/persistence/src/repositories/ChatEntityRepository.ts index a22f64b0d..117839ab7 100644 --- a/collaboration/persistence/src/repositories/ChatEntityRepository.ts +++ b/collaboration/persistence/src/repositories/ChatEntityRepository.ts @@ -7,7 +7,7 @@ import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' import { Uuid } from '@node-ts/ddd-types' -import { Chat } from '../entities' +import { Chat } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/CustomerEntityRepository.ts b/collaboration/persistence/src/repositories/CustomerEntityRepository.ts index 7e31f2c0a..8bb65dada 100644 --- a/collaboration/persistence/src/repositories/CustomerEntityRepository.ts +++ b/collaboration/persistence/src/repositories/CustomerEntityRepository.ts @@ -7,7 +7,7 @@ import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' import { Uuid } from '@node-ts/ddd-types' -import { Customer } from '../entities' +import { Customer } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/DiscussionEntityRepository.ts b/collaboration/persistence/src/repositories/DiscussionEntityRepository.ts index 69152408a..2fc9a96ee 100644 --- a/collaboration/persistence/src/repositories/DiscussionEntityRepository.ts +++ b/collaboration/persistence/src/repositories/DiscussionEntityRepository.ts @@ -7,7 +7,7 @@ import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' import { Uuid } from '@node-ts/ddd-types' -import { Discussion } from '../entities' +import { Discussion } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/MessageEntityRepository.ts b/collaboration/persistence/src/repositories/MessageEntityRepository.ts index e5eaf2c06..e4cac1086 100644 --- a/collaboration/persistence/src/repositories/MessageEntityRepository.ts +++ b/collaboration/persistence/src/repositories/MessageEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { Message } from '../entities' +import { Message } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/ProjectEntityRepository.ts b/collaboration/persistence/src/repositories/ProjectEntityRepository.ts index 54db052fd..010a295da 100644 --- a/collaboration/persistence/src/repositories/ProjectEntityRepository.ts +++ b/collaboration/persistence/src/repositories/ProjectEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { Project } from '../entities' +import { Project } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/ReplyEntityRepository.ts b/collaboration/persistence/src/repositories/ReplyEntityRepository.ts index 7a3f44e72..c4cb01a15 100644 --- a/collaboration/persistence/src/repositories/ReplyEntityRepository.ts +++ b/collaboration/persistence/src/repositories/ReplyEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { Reply } from '../entities' +import { Reply } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/ReviewEntityRepository.ts b/collaboration/persistence/src/repositories/ReviewEntityRepository.ts index f0b898fad..c47b730cc 100644 --- a/collaboration/persistence/src/repositories/ReviewEntityRepository.ts +++ b/collaboration/persistence/src/repositories/ReviewEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { Review } from '../entities' +import { Review } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/SpecialistEntityRepository.ts b/collaboration/persistence/src/repositories/SpecialistEntityRepository.ts index 8532db705..b727442f1 100644 --- a/collaboration/persistence/src/repositories/SpecialistEntityRepository.ts +++ b/collaboration/persistence/src/repositories/SpecialistEntityRepository.ts @@ -7,7 +7,7 @@ import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' import { Uuid } from '@node-ts/ddd-types' -import { Specialist } from '../entities' +import { Specialist } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/collaboration/persistence/src/repositories/index.ts b/collaboration/persistence/src/repositories/index.ts index 8c5669692..716a53775 100644 --- a/collaboration/persistence/src/repositories/index.ts +++ b/collaboration/persistence/src/repositories/index.ts @@ -1,8 +1,8 @@ -export * from './SpecialistEntityRepository' -export * from './CustomerEntityRepository' -export * from './ProjectEntityRepository' -export * from './MessageEntityRepository' -export * from './DiscussionEntityRepository' -export * from './ReplyEntityRepository' -export * from './ReviewEntityRepository' -export * from './ChatEntityRepository' +export * from './SpecialistEntityRepository.js' +export * from './CustomerEntityRepository.js' +export * from './ProjectEntityRepository.js' +export * from './MessageEntityRepository.js' +export * from './DiscussionEntityRepository.js' +export * from './ReplyEntityRepository.js' +export * from './ReviewEntityRepository.js' +export * from './ChatEntityRepository.js' diff --git a/collaboration/service/src/controllers/index.ts b/collaboration/service/src/controllers/index.ts index 3daf7f604..de6f02fc5 100644 --- a/collaboration/service/src/controllers/index.ts +++ b/collaboration/service/src/controllers/index.ts @@ -1,11 +1,11 @@ -export * from './SpecialistQueriesController' -export * from './CustomerQueriesController' -export * from './SpecialistController' -export * from './CustomerController' -export * from './ProjectQueriesController' -export * from './ProjectController' -export * from './ReplyQueriesController' -export * from './ReplyController' -export * from './ReviewQueriesController' -export * from './DiscussionController' -export * from './DiscussionQueriesController' +export * from './SpecialistQueriesController.js' +export * from './CustomerQueriesController.js' +export * from './SpecialistController.js' +export * from './CustomerController.js' +export * from './ProjectQueriesController.js' +export * from './ProjectController.js' +export * from './ReplyQueriesController.js' +export * from './ReplyController.js' +export * from './ReviewQueriesController.js' +export * from './DiscussionController.js' +export * from './DiscussionQueriesController.js' diff --git a/collaboration/service/src/index.ts b/collaboration/service/src/index.ts index 3593d208c..9aaddd0ff 100644 --- a/collaboration/service/src/index.ts +++ b/collaboration/service/src/index.ts @@ -1,7 +1,7 @@ import { NestFactory } from '@nestjs/core' import { serverOptions } from '@protos/collaboration' -import { ServiceModule } from './module' +import { ServiceModule } from './module.js' declare const module: any diff --git a/collaboration/service/src/module.ts b/collaboration/service/src/module.ts index a0a977c59..7372b326a 100644 --- a/collaboration/service/src/module.ts +++ b/collaboration/service/src/module.ts @@ -3,17 +3,17 @@ import { Module } from '@nestjs/common' import { ApplicationModule } from '@collaboration/application' import { PersistenceModule } from '@collaboration/persistence' -import { CustomerController } from './controllers' -import { CustomerQueriesController } from './controllers' -import { DiscussionController } from './controllers' -import { DiscussionQueriesController } from './controllers' -import { ProjectController } from './controllers' -import { ProjectQueriesController } from './controllers' -import { ReplyController } from './controllers' -import { ReplyQueriesController } from './controllers' -import { ReviewQueriesController } from './controllers' -import { SpecialistController } from './controllers' -import { SpecialistQueriesController } from './controllers' +import { CustomerController } from './controllers/index.js' +import { CustomerQueriesController } from './controllers/index.js' +import { DiscussionController } from './controllers/index.js' +import { DiscussionQueriesController } from './controllers/index.js' +import { ProjectController } from './controllers/index.js' +import { ProjectQueriesController } from './controllers/index.js' +import { ReplyController } from './controllers/index.js' +import { ReplyQueriesController } from './controllers/index.js' +import { ReviewQueriesController } from './controllers/index.js' +import { SpecialistController } from './controllers/index.js' +import { SpecialistQueriesController } from './controllers/index.js' @Module({ imports: [PersistenceModule, ApplicationModule], diff --git a/email/email-verification-template/src/Template.tsx b/email/email-verification-template/src/Template.tsx index 094962071..e38929ade 100644 --- a/email/email-verification-template/src/Template.tsx +++ b/email/email-verification-template/src/Template.tsx @@ -8,7 +8,7 @@ import { MjmlText } from 'mjml-react/dist/src/mjml-text' import { MjmlTitle } from 'mjml-react/dist/src/mjml-title' import React from 'react' -import messages from './messages' +import messages from './messages.js' export const Template = ({ intl, link, webVersionUrl }: any) => ( diff --git a/email/email-verification-template/src/index.tsx b/email/email-verification-template/src/index.tsx index 60db5f661..1c0c3b7ec 100644 --- a/email/email-verification-template/src/index.tsx +++ b/email/email-verification-template/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { Template } from './Template' +import { Template } from './Template.js' const EmailVerificationTemplate = ({ url }) => { const data = url.query || {} diff --git a/email/entrypoints/renderer/src/index.ts b/email/entrypoints/renderer/src/index.ts index b0b94c2be..321563e31 100644 --- a/email/entrypoints/renderer/src/index.ts +++ b/email/entrypoints/renderer/src/index.ts @@ -3,12 +3,12 @@ import mjml2html from 'mjml' import next from 'next' import path from 'path' -import { getSending } from './services' +import { getSending } from './services.js' const bootstrap = async () => { const app = next({ dev: process.env.NODE_ENV !== 'production', - dir: process.env.NODE_ENV !== 'production' ? path.join(__dirname, '../src') : __dirname, + dir: process.env.NODE_ENV !== 'production' ? path.join(__dirname, '../src/index.js') : __dirname, }) const handle = app.getRequestHandler() diff --git a/email/entrypoints/renderer/src/pages/_app.tsx b/email/entrypoints/renderer/src/pages/_app.tsx index 9faa621f2..2f23c8aa0 100644 --- a/email/entrypoints/renderer/src/pages/_app.tsx +++ b/email/entrypoints/renderer/src/pages/_app.tsx @@ -4,8 +4,8 @@ import compose from 'recompose/compose' import { ThemeProvider } from '@ui/theme' import { injectGlobalStyles } from '@ui/theme' -import { withEmotion } from '../providers' -import { withIntl } from '../providers' +import { withEmotion } from '../providers/index.js' +import { withIntl } from '../providers/index.js' export const withProviders = compose( withIntl({ diff --git a/email/entrypoints/renderer/src/providers/index.ts b/email/entrypoints/renderer/src/providers/index.ts index f5648a926..6dc62abe0 100644 --- a/email/entrypoints/renderer/src/providers/index.ts +++ b/email/entrypoints/renderer/src/providers/index.ts @@ -1,2 +1,2 @@ -export * from './with-emotion' -export * from './with-intl' +export * from './with-emotion.js' +export * from './with-intl.js' diff --git a/email/reset-password-template/src/Template.tsx b/email/reset-password-template/src/Template.tsx index 4434d88a2..b27277cb9 100644 --- a/email/reset-password-template/src/Template.tsx +++ b/email/reset-password-template/src/Template.tsx @@ -8,7 +8,7 @@ import { MjmlText } from 'mjml-react/dist/src/mjml-text' import { MjmlTitle } from 'mjml-react/dist/src/mjml-title' import React from 'react' -import messages from './messages' +import messages from './messages.js' export const Template = ({ intl, link, webVersionUrl }: any) => ( diff --git a/email/reset-password-template/src/index.tsx b/email/reset-password-template/src/index.tsx index a970e3b3c..d195ba9e0 100644 --- a/email/reset-password-template/src/index.tsx +++ b/email/reset-password-template/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { Template } from './Template' +import { Template } from './Template.js' const ResetPasswordTemplate = ({ url }) => { const data = url.query || {} diff --git a/files/application/src/commands/CreateUploadCommand.ts b/files/application/src/commands/CreateUploadCommand.ts index 9caa01dd5..a746e7c72 100644 --- a/files/application/src/commands/CreateUploadCommand.ts +++ b/files/application/src/commands/CreateUploadCommand.ts @@ -1,5 +1,5 @@ import { MinLength } from 'class-validator' -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' export class CreateUploadCommand { id: string = uuid() diff --git a/files/application/src/commands/index.ts b/files/application/src/commands/index.ts index b6aeeb2ea..83a89273a 100644 --- a/files/application/src/commands/index.ts +++ b/files/application/src/commands/index.ts @@ -1,2 +1,2 @@ -export * from './ConfirmUploadCommand' -export * from './CreateUploadCommand' +export * from './ConfirmUploadCommand.js' +export * from './CreateUploadCommand.js' diff --git a/files/application/src/index.ts b/files/application/src/index.ts index da01b5547..a173422ca 100644 --- a/files/application/src/index.ts +++ b/files/application/src/index.ts @@ -1,3 +1,3 @@ -export * from './commands' -export * from './services' -export * from './module' +export * from './commands/index.js' +export * from './services/index.js' +export * from './module.js' diff --git a/files/application/src/module.ts b/files/application/src/module.ts index c0ba47e23..955d1601d 100644 --- a/files/application/src/module.ts +++ b/files/application/src/module.ts @@ -1,8 +1,8 @@ import { SignedUrlModule } from '@monstrs/nestjs-signed-url' import { Module } from '@nestjs/common' -import { FileQueriesService } from './services' -import { UploadService } from './services' +import { FileQueriesService } from './services/index.js' +import { UploadService } from './services/index.js' @Module({ imports: [SignedUrlModule.gcs()], diff --git a/files/application/src/services/UploadService.ts b/files/application/src/services/UploadService.ts index a330068e7..8304d7119 100644 --- a/files/application/src/services/UploadService.ts +++ b/files/application/src/services/UploadService.ts @@ -7,8 +7,8 @@ import { Upload } from '@files/domain' import { FileEntityRepository } from '@files/persistence' import { UploadEntityRepository } from '@files/persistence' -import { ConfirmUploadCommand } from '../commands' -import { CreateUploadCommand } from '../commands' +import { ConfirmUploadCommand } from '../commands/index.js' +import { CreateUploadCommand } from '../commands/index.js' @Injectable() export class UploadService { diff --git a/files/application/src/services/index.ts b/files/application/src/services/index.ts index 1850f296d..71066d59b 100644 --- a/files/application/src/services/index.ts +++ b/files/application/src/services/index.ts @@ -1,2 +1,2 @@ -export * from './FileQueriesService' -export * from './UploadService' +export * from './FileQueriesService.js' +export * from './UploadService.js' diff --git a/files/domain/src/events/UploadCreated.ts b/files/domain/src/events/UploadCreated.ts index 190854ccc..1b3bee77a 100644 --- a/files/domain/src/events/UploadCreated.ts +++ b/files/domain/src/events/UploadCreated.ts @@ -1,7 +1,7 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { UploadField } from '../model' +import { UploadField } from '../model/index.js' export class UploadCreated extends Event { static readonly NAME = 'files/upload-created' diff --git a/files/domain/src/events/index.ts b/files/domain/src/events/index.ts index 15755365b..0e627ebd8 100644 --- a/files/domain/src/events/index.ts +++ b/files/domain/src/events/index.ts @@ -1,2 +1,2 @@ -export * from './UploadCreated' -export * from './FileCreated' +export * from './UploadCreated.js' +export * from './FileCreated.js' diff --git a/files/domain/src/index.ts b/files/domain/src/index.ts index 9621abb0c..9a4907b1b 100644 --- a/files/domain/src/index.ts +++ b/files/domain/src/index.ts @@ -1,2 +1,2 @@ -export * from './events' -export * from './model' +export * from './events/index.js' +export * from './model/index.js' diff --git a/files/domain/src/model/File.ts b/files/domain/src/model/File.ts index 9019a915b..2503081d1 100644 --- a/files/domain/src/model/File.ts +++ b/files/domain/src/model/File.ts @@ -1,7 +1,7 @@ import { AggregateRoot } from '@node-ts/ddd' import { AggregateRootProperties } from '@node-ts/ddd-types' -import { FileCreated } from '../events' +import { FileCreated } from '../events/index.js' export interface FileProperties extends AggregateRootProperties { type: string diff --git a/files/domain/src/model/Upload.ts b/files/domain/src/model/Upload.ts index 11d02b2a1..326871066 100644 --- a/files/domain/src/model/Upload.ts +++ b/files/domain/src/model/Upload.ts @@ -4,8 +4,8 @@ import { parse } from 'url' import { AggregateRoot } from '@node-ts/ddd' import { AggregateRootProperties } from '@node-ts/ddd-types' -import { UploadCreated } from '../events' -import { File } from './File' +import { UploadCreated } from '../events/index.js' +import { File } from './File.js' export interface UploadField { key: string diff --git a/files/domain/src/model/index.ts b/files/domain/src/model/index.ts index 84e3b7cca..b7ff0a406 100644 --- a/files/domain/src/model/index.ts +++ b/files/domain/src/model/index.ts @@ -1,2 +1,2 @@ -export * from './Upload' -export * from './File' +export * from './Upload.js' +export * from './File.js' diff --git a/files/persistence/ormconfig.ts b/files/persistence/ormconfig.ts index 7c12d0eef..3389da294 100644 --- a/files/persistence/ormconfig.ts +++ b/files/persistence/ormconfig.ts @@ -1 +1 @@ -module.exports = require('./src/config').default +module.exports = require('./src/config.js').default diff --git a/files/persistence/src/config.ts b/files/persistence/src/config.ts index e95bd746b..337a812e3 100644 --- a/files/persistence/src/config.ts +++ b/files/persistence/src/config.ts @@ -1,7 +1,7 @@ import { TypeOrmModuleOptions } from '@nestjs/typeorm' -import * as entities from './entities' -import * as migrations from './migrations' +import * as entities from './entities/index.js' +import * as migrations from './migrations/index.js' const config: TypeOrmModuleOptions = { type: 'postgres', diff --git a/files/persistence/src/entities/index.ts b/files/persistence/src/entities/index.ts index 84e3b7cca..b7ff0a406 100644 --- a/files/persistence/src/entities/index.ts +++ b/files/persistence/src/entities/index.ts @@ -1,2 +1,2 @@ -export * from './Upload' -export * from './File' +export * from './Upload.js' +export * from './File.js' diff --git a/files/persistence/src/index.ts b/files/persistence/src/index.ts index ba6c42110..d0ee29778 100644 --- a/files/persistence/src/index.ts +++ b/files/persistence/src/index.ts @@ -1,3 +1,3 @@ -export * from './repositories' -export * from './entities' -export * from './module' +export * from './repositories/index.js' +export * from './entities/index.js' +export * from './module.js' diff --git a/files/persistence/src/migrations/index.ts b/files/persistence/src/migrations/index.ts index 7a08115cd..246e57474 100644 --- a/files/persistence/src/migrations/index.ts +++ b/files/persistence/src/migrations/index.ts @@ -1 +1 @@ -export * from './1567187905091-AddUploadFile' +export * from './1567187905091-AddUploadFile.js' diff --git a/files/persistence/src/module.ts b/files/persistence/src/module.ts index 1ff35b359..377e4d6d6 100644 --- a/files/persistence/src/module.ts +++ b/files/persistence/src/module.ts @@ -5,11 +5,11 @@ import { BusModule } from '@monstrs/nestjs-bus' import { LoggerModule } from '@monstrs/nestjs-logger' import { TypeOrmModule } from '@nestjs/typeorm' -import { File } from './entities' -import { Upload } from './entities' -import { FileEntityRepository } from './repositories' -import { UploadEntityRepository } from './repositories' -import config from './config' +import { File } from './entities/index.js' +import { Upload } from './entities/index.js' +import { FileEntityRepository } from './repositories/index.js' +import { UploadEntityRepository } from './repositories/index.js' +import config from './config.js' const feature = TypeOrmModule.forFeature([Upload, File]) diff --git a/files/persistence/src/repositories/FileEntityRepository.ts b/files/persistence/src/repositories/FileEntityRepository.ts index 4c03facf6..02e7c4007 100644 --- a/files/persistence/src/repositories/FileEntityRepository.ts +++ b/files/persistence/src/repositories/FileEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { File } from '../entities' +import { File } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/files/persistence/src/repositories/UploadEntityRepository.ts b/files/persistence/src/repositories/UploadEntityRepository.ts index 7eaf53e8e..317d48501 100644 --- a/files/persistence/src/repositories/UploadEntityRepository.ts +++ b/files/persistence/src/repositories/UploadEntityRepository.ts @@ -6,7 +6,7 @@ import { Bus } from '@monstrs/nestjs-bus' import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' -import { Upload } from '../entities' +import { Upload } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/files/persistence/src/repositories/index.ts b/files/persistence/src/repositories/index.ts index 052c738cd..669992b8c 100644 --- a/files/persistence/src/repositories/index.ts +++ b/files/persistence/src/repositories/index.ts @@ -1,2 +1,2 @@ -export * from './UploadEntityRepository' -export * from './FileEntityRepository' +export * from './UploadEntityRepository.js' +export * from './FileEntityRepository.js' diff --git a/files/service/src/controllers/index.ts b/files/service/src/controllers/index.ts index 523220b79..1ea925e60 100644 --- a/files/service/src/controllers/index.ts +++ b/files/service/src/controllers/index.ts @@ -1,2 +1,2 @@ -export * from './FileQueriesController' -export * from './UploadController' +export * from './FileQueriesController.js' +export * from './UploadController.js' diff --git a/files/service/src/index.ts b/files/service/src/index.ts index 7adfa8bf6..a002cdcab 100644 --- a/files/service/src/index.ts +++ b/files/service/src/index.ts @@ -1,7 +1,7 @@ import { NestFactory } from '@nestjs/core' import { serverOptions } from '@protos/files' -import { ServiceModule } from './module' +import { ServiceModule } from './module.js' declare const module: any diff --git a/files/service/src/module.ts b/files/service/src/module.ts index 0ab5150d6..c72885b48 100644 --- a/files/service/src/module.ts +++ b/files/service/src/module.ts @@ -3,8 +3,8 @@ import { Module } from '@nestjs/common' import { ApplicationModule } from '@files/application' import { PersistenceModule } from '@files/persistence' -import { FileQueriesController } from './controllers' -import { UploadController } from './controllers' +import { FileQueriesController } from './controllers/index.js' +import { UploadController } from './controllers/index.js' @Module({ imports: [PersistenceModule, ApplicationModule], diff --git a/fragments/ceilings-worksheet/src/CeilingsWorksheet.tsx b/fragments/ceilings-worksheet/src/CeilingsWorksheet.tsx index d85943ca0..0303036e6 100644 --- a/fragments/ceilings-worksheet/src/CeilingsWorksheet.tsx +++ b/fragments/ceilings-worksheet/src/CeilingsWorksheet.tsx @@ -11,7 +11,7 @@ import { Option } from '@ui/select' import { Select } from '@ui/select' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' const ceilingTypes = { stretch: { diff --git a/fragments/ceilings-worksheet/src/index.tsx b/fragments/ceilings-worksheet/src/index.tsx index abba634b6..ce326dc46 100644 --- a/fragments/ceilings-worksheet/src/index.tsx +++ b/fragments/ceilings-worksheet/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { CeilingsWorksheet } from './CeilingsWorksheet' +import { CeilingsWorksheet } from './CeilingsWorksheet.js' const doNothing = (a) => { // do nothing diff --git a/fragments/chat/src/Chat.tsx b/fragments/chat/src/Chat.tsx index 4de2d066b..e00fb48fb 100644 --- a/fragments/chat/src/Chat.tsx +++ b/fragments/chat/src/Chat.tsx @@ -4,7 +4,7 @@ import { ChatButton } from '@ui/chat' import { Chat as UIChat } from '@ui/chat' import { SlideDrawer } from '@ui/drawer' -import defaultMessages from './messages' +import defaultMessages from './messages.js' export const Chat = ({ intl, diff --git a/fragments/chat/src/index.tsx b/fragments/chat/src/index.tsx index d8f485748..378bd43d5 100644 --- a/fragments/chat/src/index.tsx +++ b/fragments/chat/src/index.tsx @@ -6,8 +6,8 @@ import React from 'react' import { useChat as useUiChat } from '@ui/chat' -import { Chat } from './Chat' -import { useChat } from './useChat' +import { Chat } from './Chat.js' +import { useChat } from './useChat.js' const ChatFragment = () => { const intl = useIntl() diff --git a/fragments/choose-specialist-modal/src/ChooseSpecialistModal.tsx b/fragments/choose-specialist-modal/src/ChooseSpecialistModal.tsx index 65cec7b6d..ea1da3497 100644 --- a/fragments/choose-specialist-modal/src/ChooseSpecialistModal.tsx +++ b/fragments/choose-specialist-modal/src/ChooseSpecialistModal.tsx @@ -9,7 +9,7 @@ import { Row } from '@ui/layout' import { Modal } from '@ui/modal' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const ChooseSpecialistModal = ({ intl, visible, onClose, onSave, data = {} }: any) => ( diff --git a/fragments/choose-specialist-modal/src/index.tsx b/fragments/choose-specialist-modal/src/index.tsx index 3cc0524ae..ddf2e0a86 100644 --- a/fragments/choose-specialist-modal/src/index.tsx +++ b/fragments/choose-specialist-modal/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { ChooseSpecialistModal } from './ChooseSpecialistModal' +import { ChooseSpecialistModal } from './ChooseSpecialistModal.js' const ChooseSpecialistModalFragment = (data) => { const intl = useIntl() diff --git a/fragments/floors-worksheet/src/FloorsWorksheet.tsx b/fragments/floors-worksheet/src/FloorsWorksheet.tsx index 928daee89..369cf2981 100644 --- a/fragments/floors-worksheet/src/FloorsWorksheet.tsx +++ b/fragments/floors-worksheet/src/FloorsWorksheet.tsx @@ -8,7 +8,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const FloorsWorksheet = ({ intl, diff --git a/fragments/floors-worksheet/src/__tests__/FloorsWorksheet.test.tsx b/fragments/floors-worksheet/src/__tests__/FloorsWorksheet.test.tsx index f4f649d24..423b01335 100644 --- a/fragments/floors-worksheet/src/__tests__/FloorsWorksheet.test.tsx +++ b/fragments/floors-worksheet/src/__tests__/FloorsWorksheet.test.tsx @@ -9,7 +9,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { FloorsWorksheet } from '../FloorsWorksheet' +import { FloorsWorksheet } from '../FloorsWorksheet.js' const TestComponent = () => { const intl = useIntl() diff --git a/fragments/floors-worksheet/src/index.tsx b/fragments/floors-worksheet/src/index.tsx index 27c82ec3d..083399580 100644 --- a/fragments/floors-worksheet/src/index.tsx +++ b/fragments/floors-worksheet/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { FloorsWorksheet } from './FloorsWorksheet' +import { FloorsWorksheet } from './FloorsWorksheet.js' const doNothing = (a) => { // do nothing diff --git a/fragments/home-building-worksheet/src/HomeBuildingWorksheet.tsx b/fragments/home-building-worksheet/src/HomeBuildingWorksheet.tsx index 4e74a2c45..7d10244f7 100644 --- a/fragments/home-building-worksheet/src/HomeBuildingWorksheet.tsx +++ b/fragments/home-building-worksheet/src/HomeBuildingWorksheet.tsx @@ -11,7 +11,7 @@ import { Option } from '@ui/select' import { Select } from '@ui/select' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' const houseTypes = [ { diff --git a/fragments/home-building-worksheet/src/index.tsx b/fragments/home-building-worksheet/src/index.tsx index 41e95af93..ed04df6ef 100644 --- a/fragments/home-building-worksheet/src/index.tsx +++ b/fragments/home-building-worksheet/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { HomeBuildingWorksheet } from './HomeBuildingWorksheet' +import { HomeBuildingWorksheet } from './HomeBuildingWorksheet.js' const doNothing = (a) => { // do nothing diff --git a/fragments/project-short/src/ProjectShort.tsx b/fragments/project-short/src/ProjectShort.tsx index 7c2078e96..4fa9848a4 100644 --- a/fragments/project-short/src/ProjectShort.tsx +++ b/fragments/project-short/src/ProjectShort.tsx @@ -12,7 +12,7 @@ import { NextLink as Link } from '@ui/link' import { RelativeTime } from '@ui/relative-time' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const ProjectShort = ({ intl, diff --git a/fragments/project-short/src/__tests__/ProjectShort.test.tsx b/fragments/project-short/src/__tests__/ProjectShort.test.tsx index d793a4431..9182f0680 100644 --- a/fragments/project-short/src/__tests__/ProjectShort.test.tsx +++ b/fragments/project-short/src/__tests__/ProjectShort.test.tsx @@ -9,7 +9,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { ProjectShort } from '../ProjectShort' +import { ProjectShort } from '../ProjectShort.js' const TestComponent = () => { const intl = useIntl() diff --git a/fragments/project-short/src/index.tsx b/fragments/project-short/src/index.tsx index ac0cce28b..e1a868338 100644 --- a/fragments/project-short/src/index.tsx +++ b/fragments/project-short/src/index.tsx @@ -1,6 +1,6 @@ import React from 'react' -import { ProjectShort } from './ProjectShort' +import { ProjectShort } from './ProjectShort.js' const ProjectShortFragment = (data) => diff --git a/fragments/reviews/src/__tests__/Reviews.test.tsx b/fragments/reviews/src/__tests__/Reviews.test.tsx index b1b28f4b2..794099334 100644 --- a/fragments/reviews/src/__tests__/Reviews.test.tsx +++ b/fragments/reviews/src/__tests__/Reviews.test.tsx @@ -7,7 +7,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { Reviews } from '../Reviews' +import { Reviews } from '../Reviews.js' describe('Reviews', () => { describe('snapshots', () => { diff --git a/fragments/reviews/src/index.tsx b/fragments/reviews/src/index.tsx index e763d4f2b..2eda2de67 100644 --- a/fragments/reviews/src/index.tsx +++ b/fragments/reviews/src/index.tsx @@ -1,6 +1,6 @@ import React from 'react' -import { Reviews } from './Reviews' +import { Reviews } from './Reviews.js' const ReviewsFragment = ({ reviews }) => diff --git a/fragments/wallpapering-worksheet/src/WallpaperingWorksheet.tsx b/fragments/wallpapering-worksheet/src/WallpaperingWorksheet.tsx index 2aca4b419..bd0b51bb3 100644 --- a/fragments/wallpapering-worksheet/src/WallpaperingWorksheet.tsx +++ b/fragments/wallpapering-worksheet/src/WallpaperingWorksheet.tsx @@ -8,7 +8,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const WallpaperingWorksheet = ({ intl, diff --git a/fragments/wallpapering-worksheet/src/__tests__/WallpaperingWorksheet.test.tsx b/fragments/wallpapering-worksheet/src/__tests__/WallpaperingWorksheet.test.tsx index d31899774..71ff2e089 100644 --- a/fragments/wallpapering-worksheet/src/__tests__/WallpaperingWorksheet.test.tsx +++ b/fragments/wallpapering-worksheet/src/__tests__/WallpaperingWorksheet.test.tsx @@ -9,7 +9,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { WallpaperingWorksheet } from '../WallpaperingWorksheet' +import { WallpaperingWorksheet } from '../WallpaperingWorksheet.js' const TestComponent = () => { const intl = useIntl() diff --git a/fragments/wallpapering-worksheet/src/index.tsx b/fragments/wallpapering-worksheet/src/index.tsx index d720e6922..d2d0e7542 100644 --- a/fragments/wallpapering-worksheet/src/index.tsx +++ b/fragments/wallpapering-worksheet/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { WallpaperingWorksheet } from './WallpaperingWorksheet' +import { WallpaperingWorksheet } from './WallpaperingWorksheet.js' const doNothing = (a) => { // do nothing diff --git a/fragments/welding-worksheet/src/WeldingWorksheet.tsx b/fragments/welding-worksheet/src/WeldingWorksheet.tsx index 85472a2a4..0f13b916f 100644 --- a/fragments/welding-worksheet/src/WeldingWorksheet.tsx +++ b/fragments/welding-worksheet/src/WeldingWorksheet.tsx @@ -7,7 +7,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const WeldingWorksheet = ({ intl, diff --git a/fragments/welding-worksheet/src/__tests__/WeldingWorksheet.test.tsx b/fragments/welding-worksheet/src/__tests__/WeldingWorksheet.test.tsx index 02e389978..69da6bf8c 100644 --- a/fragments/welding-worksheet/src/__tests__/WeldingWorksheet.test.tsx +++ b/fragments/welding-worksheet/src/__tests__/WeldingWorksheet.test.tsx @@ -9,7 +9,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { WeldingWorksheet } from '../WeldingWorksheet' +import { WeldingWorksheet } from '../WeldingWorksheet.js' const TestComponent = () => { const intl = useIntl() diff --git a/fragments/welding-worksheet/src/index.tsx b/fragments/welding-worksheet/src/index.tsx index 9c5e7f4c9..c6438195e 100644 --- a/fragments/welding-worksheet/src/index.tsx +++ b/fragments/welding-worksheet/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { WeldingWorksheet } from './WeldingWorksheet' +import { WeldingWorksheet } from './WeldingWorksheet.js' const doNothing = (a) => { // do nothing diff --git a/hits/app/src/index.ts b/hits/app/src/index.ts index 8d6236625..668c4fd20 100644 --- a/hits/app/src/index.ts +++ b/hits/app/src/index.ts @@ -4,7 +4,7 @@ import session from 'express-session' import { NestFactory } from '@nestjs/core' -import { ApplicationModule } from './module' +import { ApplicationModule } from './module.js' declare const module: any diff --git a/hits/app/src/module.ts b/hits/app/src/module.ts index 1580fa87b..6c295f4aa 100644 --- a/hits/app/src/module.ts +++ b/hits/app/src/module.ts @@ -3,7 +3,7 @@ import { Module } from '@nestjs/common' import { CommandsModule } from '@hits/commands' import { PersistenceModule } from '@hits/persistence' -import { TrackController } from './track.controller' +import { TrackController } from './track.controller.js' @Module({ imports: [PersistenceModule, CommandsModule], diff --git a/hits/commands/src/index.ts b/hits/commands/src/index.ts index cfd12418e..8ef0a0dcc 100644 --- a/hits/commands/src/index.ts +++ b/hits/commands/src/index.ts @@ -1,2 +1,2 @@ -export * from './services' -export * from './module' +export * from './services/index.js' +export * from './module.js' diff --git a/hits/commands/src/module.ts b/hits/commands/src/module.ts index b9c65b402..c63033e64 100644 --- a/hits/commands/src/module.ts +++ b/hits/commands/src/module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common' -import { TrackActivityService } from './services' -import { TrackService } from './services' +import { TrackActivityService } from './services/index.js' +import { TrackService } from './services/index.js' @Module({ providers: [TrackService, TrackActivityService], diff --git a/hits/commands/src/services/index.ts b/hits/commands/src/services/index.ts index 19254e03f..881bbcbdc 100644 --- a/hits/commands/src/services/index.ts +++ b/hits/commands/src/services/index.ts @@ -1,2 +1,2 @@ -export * from './track-activity.service' -export * from './track.service' +export * from './track-activity.service.js' +export * from './track.service.js' diff --git a/hits/persistence/ormconfig.ts b/hits/persistence/ormconfig.ts index 7c12d0eef..3389da294 100644 --- a/hits/persistence/ormconfig.ts +++ b/hits/persistence/ormconfig.ts @@ -1 +1 @@ -module.exports = require('./src/config').default +module.exports = require('./src/config.js').default diff --git a/hits/persistence/src/config.ts b/hits/persistence/src/config.ts index e95bd746b..337a812e3 100644 --- a/hits/persistence/src/config.ts +++ b/hits/persistence/src/config.ts @@ -1,7 +1,7 @@ import { TypeOrmModuleOptions } from '@nestjs/typeorm' -import * as entities from './entities' -import * as migrations from './migrations' +import * as entities from './entities/index.js' +import * as migrations from './migrations/index.js' const config: TypeOrmModuleOptions = { type: 'postgres', diff --git a/hits/persistence/src/entities/index.ts b/hits/persistence/src/entities/index.ts index f7ab68617..5e01317e7 100644 --- a/hits/persistence/src/entities/index.ts +++ b/hits/persistence/src/entities/index.ts @@ -1,3 +1,3 @@ -export * from './Counter' -export * from './View' -export * from './Activity' +export * from './Counter.js' +export * from './View.js' +export * from './Activity.js' diff --git a/hits/persistence/src/index.ts b/hits/persistence/src/index.ts index ea304f491..47296e05e 100644 --- a/hits/persistence/src/index.ts +++ b/hits/persistence/src/index.ts @@ -1,2 +1,2 @@ -export * from './entities' -export * from './module' +export * from './entities/index.js' +export * from './module.js' diff --git a/hits/persistence/src/migrations/index.ts b/hits/persistence/src/migrations/index.ts index 17c6259c6..f4ee26a4b 100644 --- a/hits/persistence/src/migrations/index.ts +++ b/hits/persistence/src/migrations/index.ts @@ -1,6 +1,6 @@ -export * from './1571560505539-AddView' -export * from './1571560862676-AddCounter' -export * from './1571562091269-AddDefaultCounter' -export * from './1571562710180-ChangeCounterPrimaryColumn' -export * from './1571563700681-ChangeViewPrimaryColumn' -export * from './1572419993237-AddActivity' +export * from './1571560505539-AddView.js' +export * from './1571560862676-AddCounter.js' +export * from './1571562091269-AddDefaultCounter.js' +export * from './1571562710180-ChangeCounterPrimaryColumn.js' +export * from './1571563700681-ChangeViewPrimaryColumn.js' +export * from './1572419993237-AddActivity.js' diff --git a/hits/persistence/src/module.ts b/hits/persistence/src/module.ts index a1945d719..9eb9decc7 100644 --- a/hits/persistence/src/module.ts +++ b/hits/persistence/src/module.ts @@ -5,10 +5,10 @@ import { BusModule } from '@monstrs/nestjs-bus' import { LoggerModule } from '@monstrs/nestjs-logger' import { TypeOrmModule } from '@nestjs/typeorm' -import { Activity } from './entities' -import { Counter } from './entities' -import { View } from './entities' -import config from './config' +import { Activity } from './entities/index.js' +import { Counter } from './entities/index.js' +import { View } from './entities/index.js' +import config from './config.js' const feature = TypeOrmModule.forFeature([Counter, View, Activity]) diff --git a/hits/queries/src/index.ts b/hits/queries/src/index.ts index cfd12418e..8ef0a0dcc 100644 --- a/hits/queries/src/index.ts +++ b/hits/queries/src/index.ts @@ -1,2 +1,2 @@ -export * from './services' -export * from './module' +export * from './services/index.js' +export * from './module.js' diff --git a/hits/queries/src/module.ts b/hits/queries/src/module.ts index 94e5e99c9..9b4db2e1e 100644 --- a/hits/queries/src/module.ts +++ b/hits/queries/src/module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common' -import { ActivityService } from './services' -import { CounterService } from './services' +import { ActivityService } from './services/index.js' +import { CounterService } from './services/index.js' @Module({ providers: [CounterService, ActivityService], diff --git a/hits/queries/src/services/index.ts b/hits/queries/src/services/index.ts index ba19ade7b..9406b7c00 100644 --- a/hits/queries/src/services/index.ts +++ b/hits/queries/src/services/index.ts @@ -1,2 +1,2 @@ -export * from './CounterService' -export * from './ActivityService' +export * from './CounterService.js' +export * from './ActivityService.js' diff --git a/hits/service/src/controllers/index.ts b/hits/service/src/controllers/index.ts index 51319882c..1c73378da 100644 --- a/hits/service/src/controllers/index.ts +++ b/hits/service/src/controllers/index.ts @@ -1,3 +1,3 @@ -export * from './CounterQueriesController' -export * from './ActivityQueriesController' -export * from './ActivityController' +export * from './CounterQueriesController.js' +export * from './ActivityQueriesController.js' +export * from './ActivityController.js' diff --git a/hits/service/src/index.ts b/hits/service/src/index.ts index 26694cb10..ce09f7f8a 100644 --- a/hits/service/src/index.ts +++ b/hits/service/src/index.ts @@ -1,7 +1,7 @@ import { NestFactory } from '@nestjs/core' import { serverOptions } from '@protos/hits' -import { ServiceModule } from './module' +import { ServiceModule } from './module.js' declare const module: any diff --git a/hits/service/src/module.ts b/hits/service/src/module.ts index c4097cde2..df1150a86 100644 --- a/hits/service/src/module.ts +++ b/hits/service/src/module.ts @@ -4,9 +4,9 @@ import { CommandsModule } from '@hits/commands' import { PersistenceModule } from '@hits/persistence' import { QueriesModule } from '@hits/queries' -import { ActivityController } from './controllers' -import { ActivityQueriesController } from './controllers' -import { CounterQueriesController } from './controllers' +import { ActivityController } from './controllers/index.js' +import { ActivityQueriesController } from './controllers/index.js' +import { CounterQueriesController } from './controllers/index.js' @Module({ imports: [PersistenceModule, CommandsModule, QueriesModule], diff --git a/identity/adapters/kratos-adapter/src/index.ts b/identity/adapters/kratos-adapter/src/index.ts index 9fb2ec364..d4e1d05ed 100644 --- a/identity/adapters/kratos-adapter/src/index.ts +++ b/identity/adapters/kratos-adapter/src/index.ts @@ -1,2 +1,2 @@ -export * from './module' -export * from './services' +export * from './module/index.js' +export * from './services/index.js' diff --git a/identity/adapters/kratos-adapter/src/module/index.ts b/identity/adapters/kratos-adapter/src/module/index.ts index 966dd5d4f..70845fc72 100644 --- a/identity/adapters/kratos-adapter/src/module/index.ts +++ b/identity/adapters/kratos-adapter/src/module/index.ts @@ -1 +1 @@ -export * from './kratos-adapter.module' +export * from './kratos-adapter.module.js' diff --git a/identity/adapters/kratos-adapter/src/module/kratos-adapter.module.ts b/identity/adapters/kratos-adapter/src/module/kratos-adapter.module.ts index fde8dcd52..816cce7ee 100644 --- a/identity/adapters/kratos-adapter/src/module/kratos-adapter.module.ts +++ b/identity/adapters/kratos-adapter/src/module/kratos-adapter.module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common' import { DynamicModule } from '@nestjs/common' -import * as services from '../services' +import * as services from '../services/index.js' @Module({}) export class KratosAdapterModule { diff --git a/identity/adapters/kratos-adapter/src/services/index.ts b/identity/adapters/kratos-adapter/src/services/index.ts index cc7545e20..835cf629a 100644 --- a/identity/adapters/kratos-adapter/src/services/index.ts +++ b/identity/adapters/kratos-adapter/src/services/index.ts @@ -1 +1 @@ -export * from './kratos.service' +export * from './kratos.service.js' diff --git a/identity/application/src/constraints/index.ts b/identity/application/src/constraints/index.ts index be9c8b483..2aa3a6d35 100644 --- a/identity/application/src/constraints/index.ts +++ b/identity/application/src/constraints/index.ts @@ -1 +1 @@ -export * from './IsFieldEqual' +export * from './IsFieldEqual.js' diff --git a/identity/application/src/index.ts b/identity/application/src/index.ts index d4d5abd56..51ad573fd 100644 --- a/identity/application/src/index.ts +++ b/identity/application/src/index.ts @@ -1,3 +1,3 @@ -export * from './services' -export * from './module' -export * from './constraints' +export * from './services/index.js' +export * from './module.js' +export * from './constraints/index.js' diff --git a/identity/application/src/module.ts b/identity/application/src/module.ts index 14ab2b978..5abcea50a 100644 --- a/identity/application/src/module.ts +++ b/identity/application/src/module.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common' import { KratosAdapterModule } from '@identity/kratos-adapter' -import * as services from './services' +import * as services from './services/index.js' @Module({ imports: [KratosAdapterModule.register()], diff --git a/identity/application/src/services/index.ts b/identity/application/src/services/index.ts index 1b62e2418..4f3e2354d 100644 --- a/identity/application/src/services/index.ts +++ b/identity/application/src/services/index.ts @@ -1 +1 @@ -export * from './UserQueriesService' +export * from './UserQueriesService.js' diff --git a/identity/domain/src/events/EmailVerificationComplete.ts b/identity/domain/src/events/EmailVerificationComplete.ts index d322ccd39..a9560e8f3 100644 --- a/identity/domain/src/events/EmailVerificationComplete.ts +++ b/identity/domain/src/events/EmailVerificationComplete.ts @@ -1,7 +1,7 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { Email } from '../model' +import { Email } from '../model/index.js' export class EmailVerificationComplete extends Event { static readonly NAME = 'identity/email-verification-complete' diff --git a/identity/domain/src/events/EmailVerificationRequested.ts b/identity/domain/src/events/EmailVerificationRequested.ts index 72092d31a..3cca2f8d1 100644 --- a/identity/domain/src/events/EmailVerificationRequested.ts +++ b/identity/domain/src/events/EmailVerificationRequested.ts @@ -1,7 +1,7 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { Email } from '../model' +import { Email } from '../model/index.js' export class EmailVerificationRequested extends Event { static readonly NAME = 'identity/email-verification-requested' diff --git a/identity/domain/src/events/ProfileCreated.ts b/identity/domain/src/events/ProfileCreated.ts index 2a4848d1a..9fddb701a 100644 --- a/identity/domain/src/events/ProfileCreated.ts +++ b/identity/domain/src/events/ProfileCreated.ts @@ -1,7 +1,7 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { Profile } from '../model' +import { Profile } from '../model/index.js' export class ProfileCreated extends Event { static readonly NAME = 'identity/profile-created' diff --git a/identity/domain/src/events/ResetPasswordComplete.ts b/identity/domain/src/events/ResetPasswordComplete.ts index 6895551d9..6f63a2395 100644 --- a/identity/domain/src/events/ResetPasswordComplete.ts +++ b/identity/domain/src/events/ResetPasswordComplete.ts @@ -1,7 +1,7 @@ import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' -import { Email } from '../model' +import { Email } from '../model/index.js' export class ResetPasswordComplete extends Event { static readonly NAME = 'identity/reset-password-complete' diff --git a/identity/domain/src/events/ResetPasswordRequested.ts b/identity/domain/src/events/ResetPasswordRequested.ts index 6f8a066bc..32ed9158c 100644 --- a/identity/domain/src/events/ResetPasswordRequested.ts +++ b/identity/domain/src/events/ResetPasswordRequested.ts @@ -1,4 +1,4 @@ -import type { Email } from '../model/Email' +import type { Email } from '../model/Email.js' import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' diff --git a/identity/domain/src/events/UserRegistered.ts b/identity/domain/src/events/UserRegistered.ts index 00b24bdf1..cc1bf09d7 100644 --- a/identity/domain/src/events/UserRegistered.ts +++ b/identity/domain/src/events/UserRegistered.ts @@ -1,5 +1,5 @@ -import type { Credentials } from '../model/Credentials' -import type { Email } from '../model/Email' +import type { Credentials } from '../model/Credentials.js' +import type { Email } from '../model/Email.js' import { Event } from '@node-ts/bus-messages' import { Uuid } from '@node-ts/ddd-types' diff --git a/identity/domain/src/events/index.ts b/identity/domain/src/events/index.ts index 0050e1c0b..39e13b074 100644 --- a/identity/domain/src/events/index.ts +++ b/identity/domain/src/events/index.ts @@ -1,6 +1,6 @@ -export * from './EmailVerificationRequested' -export * from './EmailVerificationComplete' -export * from './ResetPasswordRequested' -export * from './ResetPasswordComplete' -export * from './UserRegistered' -export * from './ProfileCreated' +export * from './EmailVerificationRequested.js' +export * from './EmailVerificationComplete.js' +export * from './ResetPasswordRequested.js' +export * from './ResetPasswordComplete.js' +export * from './UserRegistered.js' +export * from './ProfileCreated.js' diff --git a/identity/domain/src/index.ts b/identity/domain/src/index.ts index 9621abb0c..9a4907b1b 100644 --- a/identity/domain/src/index.ts +++ b/identity/domain/src/index.ts @@ -1,2 +1,2 @@ -export * from './events' -export * from './model' +export * from './events/index.js' +export * from './model/index.js' diff --git a/identity/domain/src/model/ContactInformation.ts b/identity/domain/src/model/ContactInformation.ts index eb3558fd1..82449706c 100644 --- a/identity/domain/src/model/ContactInformation.ts +++ b/identity/domain/src/model/ContactInformation.ts @@ -1,4 +1,4 @@ -import { Phone } from './Phone' +import { Phone } from './Phone.js' export class ContactInformation { phone: Phone diff --git a/identity/domain/src/model/Credentials.ts b/identity/domain/src/model/Credentials.ts index 2274fbae5..6a57fa421 100644 --- a/identity/domain/src/model/Credentials.ts +++ b/identity/domain/src/model/Credentials.ts @@ -1,5 +1,5 @@ import argon2 from 'argon2' -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' export class Credentials { password: string diff --git a/identity/domain/src/model/Email.ts b/identity/domain/src/model/Email.ts index a7f8550b7..a8fc6876a 100644 --- a/identity/domain/src/model/Email.ts +++ b/identity/domain/src/model/Email.ts @@ -1,4 +1,4 @@ -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' export class Email { address: string diff --git a/identity/domain/src/model/Profile.ts b/identity/domain/src/model/Profile.ts index 082aa41fc..cfac8a211 100644 --- a/identity/domain/src/model/Profile.ts +++ b/identity/domain/src/model/Profile.ts @@ -1,8 +1,8 @@ -import { Address } from './Address' -import { ContactInformation } from './ContactInformation' -import { PersonalInformation } from './PersonalInformation' -import { Photo } from './Photo' -import { ProfileType } from './ProfileType' +import { Address } from './Address.js' +import { ContactInformation } from './ContactInformation.js' +import { PersonalInformation } from './PersonalInformation.js' +import { Photo } from './Photo.js' +import { ProfileType } from './ProfileType.js' export class Profile { type: ProfileType diff --git a/identity/domain/src/model/User.ts b/identity/domain/src/model/User.ts index ef7ae35cf..476b71934 100644 --- a/identity/domain/src/model/User.ts +++ b/identity/domain/src/model/User.ts @@ -3,19 +3,19 @@ import { AggregateRoot } from '@node-ts/ddd' import { AggregateRootProperties } from '@node-ts/ddd-types' import { Uuid } from '@node-ts/ddd-types' -import { EmailVerificationComplete } from '../events' -import { EmailVerificationRequested } from '../events' -import { ProfileCreated } from '../events' -import { ResetPasswordComplete } from '../events' -import { ResetPasswordRequested } from '../events' -import { UserRegistered } from '../events' -import { Address } from './Address' -import { ContactInformation } from './ContactInformation' -import { Credentials } from './Credentials' -import { Email } from './Email' -import { PersonalInformation } from './PersonalInformation' -import { Photo } from './Photo' -import { Profile } from './Profile' +import { EmailVerificationComplete } from '../events/index.js' +import { EmailVerificationRequested } from '../events/index.js' +import { ProfileCreated } from '../events/index.js' +import { ResetPasswordComplete } from '../events/index.js' +import { ResetPasswordRequested } from '../events/index.js' +import { UserRegistered } from '../events/index.js' +import { Address } from './Address.js' +import { ContactInformation } from './ContactInformation.js' +import { Credentials } from './Credentials.js' +import { Email } from './Email.js' +import { PersonalInformation } from './PersonalInformation.js' +import { Photo } from './Photo.js' +import { Profile } from './Profile.js' export interface UserProperties extends AggregateRootProperties { email: Email diff --git a/identity/domain/src/model/index.ts b/identity/domain/src/model/index.ts index 6f97c688e..0fa786373 100644 --- a/identity/domain/src/model/index.ts +++ b/identity/domain/src/model/index.ts @@ -1,10 +1,10 @@ -export * from './PersonalInformation' -export * from './ContactInformation' -export * from './ProfileType' -export * from './Profile' -export * from './Credentials' -export * from './Email' -export * from './User' -export * from './Phone' -export * from './Photo' -export * from './Address' +export * from './PersonalInformation.js' +export * from './ContactInformation.js' +export * from './ProfileType.js' +export * from './Profile.js' +export * from './Credentials.js' +export * from './Email.js' +export * from './User.js' +export * from './Phone.js' +export * from './Photo.js' +export * from './Address.js' diff --git a/identity/entrypoints/renderer/src/index.ts b/identity/entrypoints/renderer/src/index.ts index 8e8b303a4..3e038df10 100644 --- a/identity/entrypoints/renderer/src/index.ts +++ b/identity/entrypoints/renderer/src/index.ts @@ -9,7 +9,7 @@ const RedisStore = connectRedis(session) const bootstrap = async () => { const app = next({ dev: process.env.NODE_ENV !== 'production', - dir: process.env.NODE_ENV !== 'production' ? path.join(__dirname, '../src') : __dirname, + dir: process.env.NODE_ENV !== 'production' ? path.join(__dirname, '../src/index.js') : __dirname, }) const handle = app.getRequestHandler() diff --git a/identity/entrypoints/renderer/src/pages/_app.tsx b/identity/entrypoints/renderer/src/pages/_app.tsx index f7dc20199..c401df460 100644 --- a/identity/entrypoints/renderer/src/pages/_app.tsx +++ b/identity/entrypoints/renderer/src/pages/_app.tsx @@ -6,8 +6,8 @@ import compose from 'recompose/compose' import { ThemeProvider } from '@ui/theme' import { injectGlobalStyles } from '@ui/theme' -import { withEmotion } from '../providers' -import { withIntl } from '../providers' +import { withEmotion } from '../providers/index.js' +import { withIntl } from '../providers/index.js' if (typeof window !== 'undefined') { const { kratos }: any = require('@atls/next-identity-integration/dist/sdk') diff --git a/identity/entrypoints/renderer/src/pages/auth/signin/index.ts b/identity/entrypoints/renderer/src/pages/auth/signin/index.ts index e4de91cf2..7d3130f2e 100644 --- a/identity/entrypoints/renderer/src/pages/auth/signin/index.ts +++ b/identity/entrypoints/renderer/src/pages/auth/signin/index.ts @@ -1 +1 @@ -export { default, getServerSideProps } from '../../signin' +export { default, getServerSideProps } from '../../signin.js' diff --git a/identity/entrypoints/renderer/src/pages/auth/signout/index.ts b/identity/entrypoints/renderer/src/pages/auth/signout/index.ts index 5135ed4a3..3bf621a84 100644 --- a/identity/entrypoints/renderer/src/pages/auth/signout/index.ts +++ b/identity/entrypoints/renderer/src/pages/auth/signout/index.ts @@ -1 +1 @@ -export { default, getServerSideProps } from '../../signout' +export { default, getServerSideProps } from '../../signout.js' diff --git a/identity/entrypoints/renderer/src/pages/auth/signup/index.ts b/identity/entrypoints/renderer/src/pages/auth/signup/index.ts index 11575a0a3..b22503a3f 100644 --- a/identity/entrypoints/renderer/src/pages/auth/signup/index.ts +++ b/identity/entrypoints/renderer/src/pages/auth/signup/index.ts @@ -1 +1 @@ -export { default, getServerSideProps } from '../../signup' +export { default, getServerSideProps } from '../../signup.js' diff --git a/identity/entrypoints/renderer/src/providers/index.ts b/identity/entrypoints/renderer/src/providers/index.ts index f5648a926..6dc62abe0 100644 --- a/identity/entrypoints/renderer/src/providers/index.ts +++ b/identity/entrypoints/renderer/src/providers/index.ts @@ -1,2 +1,2 @@ -export * from './with-emotion' -export * from './with-intl' +export * from './with-emotion.js' +export * from './with-intl.js' diff --git a/identity/fragments/login-fragment/src/Login.tsx b/identity/fragments/login-fragment/src/Login.tsx index 0b8b4b168..2bc6e4c0e 100644 --- a/identity/fragments/login-fragment/src/Login.tsx +++ b/identity/fragments/login-fragment/src/Login.tsx @@ -11,7 +11,7 @@ import { Row } from '@ui/layout' import { Link } from '@ui/link' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const Login = ({ intl }: any) => ( diff --git a/identity/fragments/login-fragment/src/index.tsx b/identity/fragments/login-fragment/src/index.tsx index fe13ca0a2..cd38ed3dc 100644 --- a/identity/fragments/login-fragment/src/index.tsx +++ b/identity/fragments/login-fragment/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { Login } from './Login' +import { Login } from './Login.js' const Fragment = () => { const intl = useIntl() diff --git a/identity/fragments/messages/src/field-messages.component.tsx b/identity/fragments/messages/src/field-messages.component.tsx index ef73e7149..fc2e30bde 100644 --- a/identity/fragments/messages/src/field-messages.component.tsx +++ b/identity/fragments/messages/src/field-messages.component.tsx @@ -5,7 +5,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import { FieldMessagesProps } from './messages.interfaces' +import { FieldMessagesProps } from './messages.interfaces.js' const FieldMessages: FC = ({ messages = [] }) => ( diff --git a/identity/fragments/messages/src/index.ts b/identity/fragments/messages/src/index.ts index 40b0b00b0..d6dad885f 100644 --- a/identity/fragments/messages/src/index.ts +++ b/identity/fragments/messages/src/index.ts @@ -1 +1 @@ -export * from './field-messages.component' +export * from './field-messages.component.js' diff --git a/identity/fragments/recovery-fragment/src/Recovery.tsx b/identity/fragments/recovery-fragment/src/Recovery.tsx index 412d01dc8..5f498de58 100644 --- a/identity/fragments/recovery-fragment/src/Recovery.tsx +++ b/identity/fragments/recovery-fragment/src/Recovery.tsx @@ -9,7 +9,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const Recovery = ({ intl }: any) => ( diff --git a/identity/fragments/recovery-fragment/src/index.tsx b/identity/fragments/recovery-fragment/src/index.tsx index fa787ebed..5eae20aa6 100644 --- a/identity/fragments/recovery-fragment/src/index.tsx +++ b/identity/fragments/recovery-fragment/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { Recovery } from './Recovery' +import { Recovery } from './Recovery.js' const Fragment = () => { const intl = useIntl() diff --git a/identity/fragments/registration-fragment/src/Registration.tsx b/identity/fragments/registration-fragment/src/Registration.tsx index 8be65aa47..afb43fc66 100644 --- a/identity/fragments/registration-fragment/src/Registration.tsx +++ b/identity/fragments/registration-fragment/src/Registration.tsx @@ -13,7 +13,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' interface Message { id: string diff --git a/identity/fragments/registration-fragment/src/index.tsx b/identity/fragments/registration-fragment/src/index.tsx index 765a45e27..1217ddf13 100644 --- a/identity/fragments/registration-fragment/src/index.tsx +++ b/identity/fragments/registration-fragment/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { Registration } from './Registration' +import { Registration } from './Registration.js' const Fragment = () => { const intl = useIntl() diff --git a/identity/fragments/settings-fragment/src/Settings.tsx b/identity/fragments/settings-fragment/src/Settings.tsx index 68e533339..394588f31 100644 --- a/identity/fragments/settings-fragment/src/Settings.tsx +++ b/identity/fragments/settings-fragment/src/Settings.tsx @@ -9,7 +9,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const Settings = ({ intl }: any) => ( diff --git a/identity/fragments/settings-fragment/src/index.tsx b/identity/fragments/settings-fragment/src/index.tsx index d8ae2ceca..3cca652c8 100644 --- a/identity/fragments/settings-fragment/src/index.tsx +++ b/identity/fragments/settings-fragment/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { Settings } from './Settings' +import { Settings } from './Settings.js' const SettingsFragment = () => { const intl = useIntl() diff --git a/identity/pages/login-page/src/Seo.tsx b/identity/pages/login-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/identity/pages/login-page/src/Seo.tsx +++ b/identity/pages/login-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/identity/pages/login-page/src/index.tsx b/identity/pages/login-page/src/index.tsx index c979ecee5..07fc51493 100644 --- a/identity/pages/login-page/src/index.tsx +++ b/identity/pages/login-page/src/index.tsx @@ -1,8 +1,8 @@ import { useCallback } from 'react' import React from 'react' -import { LoginPage } from './LoginPage' -import { Seo } from './Seo' +import { LoginPage } from './LoginPage.js' +import { Seo } from './Seo.js' const resolveBackUrl = () => { const search = new URLSearchParams(window.location.search) diff --git a/identity/pages/logout-page/src/index.tsx b/identity/pages/logout-page/src/index.tsx index a6138da71..d1570e6df 100644 --- a/identity/pages/logout-page/src/index.tsx +++ b/identity/pages/logout-page/src/index.tsx @@ -1,6 +1,6 @@ import React from 'react' -import { LogoutPage } from './LogoutPage' +import { LogoutPage } from './LogoutPage.js' const Logout = () => diff --git a/identity/pages/recovery-complete-page/src/RecoveryCompletePage.tsx b/identity/pages/recovery-complete-page/src/RecoveryCompletePage.tsx index ba0365b74..6d434dd56 100644 --- a/identity/pages/recovery-complete-page/src/RecoveryCompletePage.tsx +++ b/identity/pages/recovery-complete-page/src/RecoveryCompletePage.tsx @@ -5,7 +5,7 @@ import { Box } from '@ui/layout' import { Column } from '@ui/layout' import { Layout } from '@ui/layout' -import RecoveryComplete from './recovery-complete' +import RecoveryComplete from './recovery-complete/index.js' export const RecoveryCompletePage = ({ accountUrl, siteUrl }: any) => ( diff --git a/identity/pages/recovery-complete-page/src/Seo.tsx b/identity/pages/recovery-complete-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/identity/pages/recovery-complete-page/src/Seo.tsx +++ b/identity/pages/recovery-complete-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/identity/pages/recovery-complete-page/src/index.tsx b/identity/pages/recovery-complete-page/src/index.tsx index b0563d525..03d08c0ab 100644 --- a/identity/pages/recovery-complete-page/src/index.tsx +++ b/identity/pages/recovery-complete-page/src/index.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { RecoveryCompletePage } from './RecoveryCompletePage' -import { Seo } from './Seo' +import { RecoveryCompletePage } from './RecoveryCompletePage.js' +import { Seo } from './Seo.js' export default class Page extends React.Component { static async getInitialProps(context) { diff --git a/identity/pages/recovery-complete-page/src/recovery-complete/RecoveryComplete.tsx b/identity/pages/recovery-complete-page/src/recovery-complete/RecoveryComplete.tsx index 1be746848..cc15e5850 100644 --- a/identity/pages/recovery-complete-page/src/recovery-complete/RecoveryComplete.tsx +++ b/identity/pages/recovery-complete-page/src/recovery-complete/RecoveryComplete.tsx @@ -7,7 +7,7 @@ import { Layout } from '@ui/layout' import { Link } from '@ui/link' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const RecoveryComplete = ({ intl, siteUrl }: any) => ( diff --git a/identity/pages/recovery-complete-page/src/recovery-complete/index.tsx b/identity/pages/recovery-complete-page/src/recovery-complete/index.tsx index 5f228a5ab..56f2369ac 100644 --- a/identity/pages/recovery-complete-page/src/recovery-complete/index.tsx +++ b/identity/pages/recovery-complete-page/src/recovery-complete/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { RecoveryComplete } from './RecoveryComplete' +import { RecoveryComplete } from './RecoveryComplete.js' const Page = (props: any) => { const intl = useIntl() diff --git a/identity/pages/recovery-page/src/Seo.tsx b/identity/pages/recovery-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/identity/pages/recovery-page/src/Seo.tsx +++ b/identity/pages/recovery-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/identity/pages/recovery-page/src/index.tsx b/identity/pages/recovery-page/src/index.tsx index 6650fca37..9d4ec71ad 100644 --- a/identity/pages/recovery-page/src/index.tsx +++ b/identity/pages/recovery-page/src/index.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { RecoveryPage } from './RecoveryPage' -import { Seo } from './Seo' +import { RecoveryPage } from './RecoveryPage.js' +import { Seo } from './Seo.js' const Page = () => ( <> diff --git a/identity/pages/registration-complete-page/src/RegistrationCompletePage.tsx b/identity/pages/registration-complete-page/src/RegistrationCompletePage.tsx index 620fac6e0..41224f344 100644 --- a/identity/pages/registration-complete-page/src/RegistrationCompletePage.tsx +++ b/identity/pages/registration-complete-page/src/RegistrationCompletePage.tsx @@ -5,7 +5,7 @@ import { Box } from '@ui/layout' import { Column } from '@ui/layout' import { Layout } from '@ui/layout' -import SignupComplete from './registration-complete' +import SignupComplete from './registration-complete/index.js' export const RegistrationCompletePage = ({ accountUrl, siteUrl }: any) => ( diff --git a/identity/pages/registration-complete-page/src/Seo.tsx b/identity/pages/registration-complete-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/identity/pages/registration-complete-page/src/Seo.tsx +++ b/identity/pages/registration-complete-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/identity/pages/registration-complete-page/src/index.tsx b/identity/pages/registration-complete-page/src/index.tsx index c06d7b91d..aa4c4ed67 100644 --- a/identity/pages/registration-complete-page/src/index.tsx +++ b/identity/pages/registration-complete-page/src/index.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { RegistrationCompletePage } from './RegistrationCompletePage' -import { Seo } from './Seo' +import { RegistrationCompletePage } from './RegistrationCompletePage.js' +import { Seo } from './Seo.js' export default class Page extends React.Component { static async getInitialProps(context) { diff --git a/identity/pages/registration-complete-page/src/registration-complete/RegistrationComplete.tsx b/identity/pages/registration-complete-page/src/registration-complete/RegistrationComplete.tsx index dc62c104d..0331f5a2d 100644 --- a/identity/pages/registration-complete-page/src/registration-complete/RegistrationComplete.tsx +++ b/identity/pages/registration-complete-page/src/registration-complete/RegistrationComplete.tsx @@ -7,7 +7,7 @@ import { Layout } from '@ui/layout' import { Link } from '@ui/link' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const RegistrationComplete = ({ intl, accountUrl, siteUrl }: any) => ( diff --git a/identity/pages/registration-complete-page/src/registration-complete/index.tsx b/identity/pages/registration-complete-page/src/registration-complete/index.tsx index 0a1475676..5738c9df0 100644 --- a/identity/pages/registration-complete-page/src/registration-complete/index.tsx +++ b/identity/pages/registration-complete-page/src/registration-complete/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { RegistrationComplete } from './RegistrationComplete' +import { RegistrationComplete } from './RegistrationComplete.js' const Page = (props: any) => { const intl = useIntl() diff --git a/identity/pages/registration-page/src/Seo.tsx b/identity/pages/registration-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/identity/pages/registration-page/src/Seo.tsx +++ b/identity/pages/registration-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/identity/pages/registration-page/src/index.tsx b/identity/pages/registration-page/src/index.tsx index 601482e57..d62280253 100644 --- a/identity/pages/registration-page/src/index.tsx +++ b/identity/pages/registration-page/src/index.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { Registration } from './Registration' -import { Seo } from './Seo' +import { Registration } from './Registration.js' +import { Seo } from './Seo.js' const Page = () => ( <> diff --git a/identity/pages/registration-profile-page/src/RegistrationPage.tsx b/identity/pages/registration-profile-page/src/RegistrationPage.tsx index d875b2202..893c94d58 100644 --- a/identity/pages/registration-profile-page/src/RegistrationPage.tsx +++ b/identity/pages/registration-profile-page/src/RegistrationPage.tsx @@ -5,7 +5,7 @@ import { Box } from '@ui/layout' import { Column } from '@ui/layout' import { Layout } from '@ui/layout' -import SignupProfile from './signup-profile' +import SignupProfile from './signup-profile/index.js' export const RegistrationPage = () => ( diff --git a/identity/pages/registration-profile-page/src/Seo.tsx b/identity/pages/registration-profile-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/identity/pages/registration-profile-page/src/Seo.tsx +++ b/identity/pages/registration-profile-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/identity/pages/registration-profile-page/src/index.tsx b/identity/pages/registration-profile-page/src/index.tsx index e1b6005cb..6dc9892eb 100644 --- a/identity/pages/registration-profile-page/src/index.tsx +++ b/identity/pages/registration-profile-page/src/index.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { RegistrationPage } from './RegistrationPage' -import { Seo } from './Seo' +import { RegistrationPage } from './RegistrationPage.js' +import { Seo } from './Seo.js' const Page = () => ( <> diff --git a/identity/pages/registration-profile-page/src/signup-profile/SignUpProfile.tsx b/identity/pages/registration-profile-page/src/signup-profile/SignUpProfile.tsx index 3aa4977e6..1486c5829 100644 --- a/identity/pages/registration-profile-page/src/signup-profile/SignUpProfile.tsx +++ b/identity/pages/registration-profile-page/src/signup-profile/SignUpProfile.tsx @@ -8,7 +8,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const SignUpProfile = ({ intl, diff --git a/identity/pages/registration-profile-page/src/signup-profile/index.tsx b/identity/pages/registration-profile-page/src/signup-profile/index.tsx index 7b14c031a..cf0b2a554 100644 --- a/identity/pages/registration-profile-page/src/signup-profile/index.tsx +++ b/identity/pages/registration-profile-page/src/signup-profile/index.tsx @@ -1,8 +1,8 @@ import { useIntl } from 'react-intl' import React from 'react' -import { SignUpProfile } from './SignUpProfile' -import { useSignUpProfile } from './useSignUpProfile' +import { SignUpProfile } from './SignUpProfile.js' +import { useSignUpProfile } from './useSignUpProfile.js' const Page = () => { const intl = useIntl() diff --git a/identity/pages/settings-page/src/Seo.tsx b/identity/pages/settings-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/identity/pages/settings-page/src/Seo.tsx +++ b/identity/pages/settings-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/identity/pages/settings-page/src/index.tsx b/identity/pages/settings-page/src/index.tsx index 88e90a9d9..75ecce49a 100644 --- a/identity/pages/settings-page/src/index.tsx +++ b/identity/pages/settings-page/src/index.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { Seo } from './Seo' -import { SettingsPage } from './SettingsPage' +import { Seo } from './Seo.js' +import { SettingsPage } from './SettingsPage.js' const Page = () => ( <> diff --git a/identity/service/src/controllers/index.ts b/identity/service/src/controllers/index.ts index 22714f210..630c9bfeb 100644 --- a/identity/service/src/controllers/index.ts +++ b/identity/service/src/controllers/index.ts @@ -1 +1 @@ -export * from './UserQueriesController' +export * from './UserQueriesController.js' diff --git a/identity/service/src/index.ts b/identity/service/src/index.ts index 511d89bce..31d51ba36 100644 --- a/identity/service/src/index.ts +++ b/identity/service/src/index.ts @@ -3,7 +3,7 @@ import { useContainer } from 'class-validator' import { NestFactory } from '@nestjs/core' import { serverOptions } from '@protos/identity' -import { ServiceModule } from './module' +import { ServiceModule } from './module.js' declare const module: any diff --git a/identity/service/src/module.ts b/identity/service/src/module.ts index 28c0c2a18..d3534ea8a 100644 --- a/identity/service/src/module.ts +++ b/identity/service/src/module.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common' import { ApplicationModule } from '@identity/application' -import { UserQueriesController } from './controllers' +import { UserQueriesController } from './controllers/index.js' @Module({ imports: [ApplicationModule], diff --git a/mailer/api/src/controllers/MailerController.ts b/mailer/api/src/controllers/MailerController.ts index b4d405b6c..697d26aeb 100644 --- a/mailer/api/src/controllers/MailerController.ts +++ b/mailer/api/src/controllers/MailerController.ts @@ -2,7 +2,7 @@ import { Controller } from '@nestjs/common' import { GrpcMethod } from '@nestjs/microservices' -import { MailerService } from '../services' +import { MailerService } from '../services/index.js' @Controller() export class MailerController { diff --git a/mailer/api/src/controllers/index.ts b/mailer/api/src/controllers/index.ts index 1094b27ff..ac6069181 100644 --- a/mailer/api/src/controllers/index.ts +++ b/mailer/api/src/controllers/index.ts @@ -1 +1 @@ -export * from './MailerController' +export * from './MailerController.js' diff --git a/mailer/api/src/index.ts b/mailer/api/src/index.ts index 540134069..8677609df 100644 --- a/mailer/api/src/index.ts +++ b/mailer/api/src/index.ts @@ -1 +1 @@ -export * from './module' +export * from './module.js' diff --git a/mailer/api/src/module.ts b/mailer/api/src/module.ts index 6649a99c0..51176ab79 100644 --- a/mailer/api/src/module.ts +++ b/mailer/api/src/module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common' -import { MailerController } from './controllers' -import { MailerService } from './services' +import { MailerController } from './controllers/index.js' +import { MailerService } from './services/index.js' @Module({ providers: [MailerService], diff --git a/mailer/api/src/services/index.ts b/mailer/api/src/services/index.ts index 16e35793e..172509530 100644 --- a/mailer/api/src/services/index.ts +++ b/mailer/api/src/services/index.ts @@ -1 +1 @@ -export * from './MailerService' +export * from './MailerService.js' diff --git a/mailer/db/ormconfig.ts b/mailer/db/ormconfig.ts index 7c12d0eef..3389da294 100644 --- a/mailer/db/ormconfig.ts +++ b/mailer/db/ormconfig.ts @@ -1 +1 @@ -module.exports = require('./src/config').default +module.exports = require('./src/config.js').default diff --git a/mailer/db/src/config.ts b/mailer/db/src/config.ts index 05a1898fc..c0a9ebd96 100644 --- a/mailer/db/src/config.ts +++ b/mailer/db/src/config.ts @@ -1,7 +1,7 @@ import { ConnectionOptions } from 'typeorm' -import { Sending } from './entities' -import migrations from './migrations' +import { Sending } from './entities/index.js' +import migrations from './migrations.js' const config: ConnectionOptions = { type: 'postgres', diff --git a/mailer/db/src/entities/index.ts b/mailer/db/src/entities/index.ts index cd9c4a4c9..1b7d9e148 100644 --- a/mailer/db/src/entities/index.ts +++ b/mailer/db/src/entities/index.ts @@ -1 +1 @@ -export * from './Sending' +export * from './Sending.js' diff --git a/mailer/db/src/index.ts b/mailer/db/src/index.ts index ea304f491..47296e05e 100644 --- a/mailer/db/src/index.ts +++ b/mailer/db/src/index.ts @@ -1,2 +1,2 @@ -export * from './entities' -export * from './module' +export * from './entities/index.js' +export * from './module.js' diff --git a/mailer/db/src/migrations.ts b/mailer/db/src/migrations.ts index d8fe28d72..e3e79a0af 100644 --- a/mailer/db/src/migrations.ts +++ b/mailer/db/src/migrations.ts @@ -6,7 +6,7 @@ declare const __webpack_require__: any // @ts-ignore if (typeof __webpack_require__ === 'function') { // @ts-ignore - const migrationsRequire = require.context('./migrations/', false, /.ts$/) + const migrationsRequire = require.context('./migrations/.js', false, /.ts$/) // @ts-ignore migrations = migrationsRequire.keys().map(migrationsRequire).map(Object.values).flat() diff --git a/mailer/db/src/module.ts b/mailer/db/src/module.ts index 352336306..a14e2bb77 100644 --- a/mailer/db/src/module.ts +++ b/mailer/db/src/module.ts @@ -3,8 +3,8 @@ import { Module } from '@nestjs/common' import { TypeOrmModule } from '@nestjs/typeorm' -import { Sending } from './entities' -import config from './config' +import { Sending } from './entities/index.js' +import config from './config.js' const feature = TypeOrmModule.forFeature([Sending]) diff --git a/mailer/renderer/src/index.ts b/mailer/renderer/src/index.ts index 26ac54b26..05c4a8fe0 100644 --- a/mailer/renderer/src/index.ts +++ b/mailer/renderer/src/index.ts @@ -1,2 +1,2 @@ -export * from './Renderer' -export * from './module' +export * from './Renderer.js' +export * from './module.js' diff --git a/mailer/renderer/src/module.ts b/mailer/renderer/src/module.ts index f29680ca8..eea009f06 100644 --- a/mailer/renderer/src/module.ts +++ b/mailer/renderer/src/module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common' -import { Renderer } from './Renderer' +import { Renderer } from './Renderer.js' const renderer = { provide: Renderer, diff --git a/mailer/service/src/handlers/index.ts b/mailer/service/src/handlers/index.ts index 68b225179..49ee4c79f 100644 --- a/mailer/service/src/handlers/index.ts +++ b/mailer/service/src/handlers/index.ts @@ -1,2 +1,2 @@ -export * from './EmailVerificationHandler' -export * from './ResetPasswordHandler' +export * from './EmailVerificationHandler.js' +export * from './ResetPasswordHandler.js' diff --git a/mailer/service/src/index.ts b/mailer/service/src/index.ts index bb90969dd..a8fca4dc0 100644 --- a/mailer/service/src/index.ts +++ b/mailer/service/src/index.ts @@ -4,7 +4,7 @@ import path from 'path' import { NestFactory } from '@nestjs/core' import { Transport } from '@nestjs/microservices' -import { AppModule } from './module' +import { AppModule } from './module.js' declare const module: any diff --git a/mailer/service/src/module.ts b/mailer/service/src/module.ts index e13b3663c..4f7a0d0b7 100644 --- a/mailer/service/src/module.ts +++ b/mailer/service/src/module.ts @@ -6,8 +6,8 @@ import { RendererModule } from '@mailer/renderer' import { TransportModule } from '@mailer/transport' import { BusModule } from '@monstrs/nestjs-bus' -import { EmailVerificationHandler } from './handlers' -import { ResetPasswordHandler } from './handlers' +import { EmailVerificationHandler } from './handlers/index.js' +import { ResetPasswordHandler } from './handlers/index.js' @Module({ imports: [ diff --git a/mailer/transport/src/index.ts b/mailer/transport/src/index.ts index 05665969f..49ad936ec 100644 --- a/mailer/transport/src/index.ts +++ b/mailer/transport/src/index.ts @@ -1,2 +1,2 @@ -export * from './Transport' -export * from './module' +export * from './Transport.js' +export * from './module.js' diff --git a/mailer/transport/src/module.ts b/mailer/transport/src/module.ts index 2a34a3b98..deeaa9a61 100644 --- a/mailer/transport/src/module.ts +++ b/mailer/transport/src/module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common' -import { Transport } from './Transport' +import { Transport } from './Transport.js' declare const __non_webpack_require__: any diff --git a/portfolio/application/src/commands/CreatePortfolioCommand.ts b/portfolio/application/src/commands/CreatePortfolioCommand.ts index 877b4f519..f6b08d63e 100644 --- a/portfolio/application/src/commands/CreatePortfolioCommand.ts +++ b/portfolio/application/src/commands/CreatePortfolioCommand.ts @@ -1,6 +1,6 @@ import { IsUUID } from 'class-validator' import { MinLength } from 'class-validator' -import uuid from 'uuid/v4' +import uuid from 'uuid/v4.js' export class CreatePortfolioCommand { id: string = uuid() diff --git a/portfolio/application/src/commands/index.ts b/portfolio/application/src/commands/index.ts index 3dfc40c84..a62fb6924 100644 --- a/portfolio/application/src/commands/index.ts +++ b/portfolio/application/src/commands/index.ts @@ -1,2 +1,2 @@ -export * from './CreatePortfolioCommand' -export * from './UpdatePortfolioCommand' +export * from './CreatePortfolioCommand.js' +export * from './UpdatePortfolioCommand.js' diff --git a/portfolio/application/src/index.ts b/portfolio/application/src/index.ts index da01b5547..a173422ca 100644 --- a/portfolio/application/src/index.ts +++ b/portfolio/application/src/index.ts @@ -1,3 +1,3 @@ -export * from './commands' -export * from './services' -export * from './module' +export * from './commands/index.js' +export * from './services/index.js' +export * from './module.js' diff --git a/portfolio/application/src/module.ts b/portfolio/application/src/module.ts index 056a24b69..9a1eab7aa 100644 --- a/portfolio/application/src/module.ts +++ b/portfolio/application/src/module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common' -import { PortfolioQueriesService } from './services' -import { PortfolioService } from './services' +import { PortfolioQueriesService } from './services/index.js' +import { PortfolioService } from './services/index.js' @Module({ providers: [PortfolioService, PortfolioQueriesService], diff --git a/portfolio/application/src/services/PortfolioService.ts b/portfolio/application/src/services/PortfolioService.ts index 8e28e6dc6..896cf2a3a 100644 --- a/portfolio/application/src/services/PortfolioService.ts +++ b/portfolio/application/src/services/PortfolioService.ts @@ -3,8 +3,8 @@ import { Injectable } from '@nestjs/common' import { Portfolio } from '@portfolio/domain' import { PortfolioEntityRepository } from '@portfolio/persistence' -import { CreatePortfolioCommand } from '../commands' -import { UpdatePortfolioCommand } from '../commands' +import { CreatePortfolioCommand } from '../commands/index.js' +import { UpdatePortfolioCommand } from '../commands/index.js' @Injectable() export class PortfolioService { diff --git a/portfolio/application/src/services/index.ts b/portfolio/application/src/services/index.ts index dcc5a50a7..a42ac3cb7 100644 --- a/portfolio/application/src/services/index.ts +++ b/portfolio/application/src/services/index.ts @@ -1,2 +1,2 @@ -export * from './PortfolioQueriesService' -export * from './PortfolioService' +export * from './PortfolioQueriesService.js' +export * from './PortfolioService.js' diff --git a/portfolio/domain/src/events/index.ts b/portfolio/domain/src/events/index.ts index ff078d0e7..8994e41b9 100644 --- a/portfolio/domain/src/events/index.ts +++ b/portfolio/domain/src/events/index.ts @@ -1,2 +1,2 @@ -export * from './PortfolioCreated' -export * from './PortfolioUpdated' +export * from './PortfolioCreated.js' +export * from './PortfolioUpdated.js' diff --git a/portfolio/domain/src/index.ts b/portfolio/domain/src/index.ts index 9621abb0c..9a4907b1b 100644 --- a/portfolio/domain/src/index.ts +++ b/portfolio/domain/src/index.ts @@ -1,2 +1,2 @@ -export * from './events' -export * from './model' +export * from './events/index.js' +export * from './model/index.js' diff --git a/portfolio/domain/src/model/Portfolio.ts b/portfolio/domain/src/model/Portfolio.ts index 5f23f7b19..a6ef450e9 100644 --- a/portfolio/domain/src/model/Portfolio.ts +++ b/portfolio/domain/src/model/Portfolio.ts @@ -1,8 +1,8 @@ import { AggregateRoot } from '@node-ts/ddd' import { AggregateRootProperties } from '@node-ts/ddd-types' -import { PortfolioCreated } from '../events' -import { PortfolioUpdated } from '../events' +import { PortfolioCreated } from '../events/index.js' +import { PortfolioUpdated } from '../events/index.js' export interface PortfolioProperties extends AggregateRootProperties { userId: string diff --git a/portfolio/domain/src/model/index.ts b/portfolio/domain/src/model/index.ts index adc758799..eb1c2ca23 100644 --- a/portfolio/domain/src/model/index.ts +++ b/portfolio/domain/src/model/index.ts @@ -1 +1 @@ -export * from './Portfolio' +export * from './Portfolio.js' diff --git a/portfolio/persistence/ormconfig.ts b/portfolio/persistence/ormconfig.ts index 7c12d0eef..3389da294 100644 --- a/portfolio/persistence/ormconfig.ts +++ b/portfolio/persistence/ormconfig.ts @@ -1 +1 @@ -module.exports = require('./src/config').default +module.exports = require('./src/config.js').default diff --git a/portfolio/persistence/src/config.ts b/portfolio/persistence/src/config.ts index faaf78edc..9071f3783 100644 --- a/portfolio/persistence/src/config.ts +++ b/portfolio/persistence/src/config.ts @@ -1,7 +1,7 @@ import { ConnectionOptions } from 'typeorm' -import { Portfolio } from './entities' -import migrations from './migrations' +import { Portfolio } from './entities/index.js' +import migrations from './migrations.js' const config: ConnectionOptions = { type: 'postgres', diff --git a/portfolio/persistence/src/entities/index.ts b/portfolio/persistence/src/entities/index.ts index adc758799..eb1c2ca23 100644 --- a/portfolio/persistence/src/entities/index.ts +++ b/portfolio/persistence/src/entities/index.ts @@ -1 +1 @@ -export * from './Portfolio' +export * from './Portfolio.js' diff --git a/portfolio/persistence/src/index.ts b/portfolio/persistence/src/index.ts index ba6c42110..d0ee29778 100644 --- a/portfolio/persistence/src/index.ts +++ b/portfolio/persistence/src/index.ts @@ -1,3 +1,3 @@ -export * from './repositories' -export * from './entities' -export * from './module' +export * from './repositories/index.js' +export * from './entities/index.js' +export * from './module.js' diff --git a/portfolio/persistence/src/migrations.ts b/portfolio/persistence/src/migrations.ts index d8fe28d72..e3e79a0af 100644 --- a/portfolio/persistence/src/migrations.ts +++ b/portfolio/persistence/src/migrations.ts @@ -6,7 +6,7 @@ declare const __webpack_require__: any // @ts-ignore if (typeof __webpack_require__ === 'function') { // @ts-ignore - const migrationsRequire = require.context('./migrations/', false, /.ts$/) + const migrationsRequire = require.context('./migrations/.js', false, /.ts$/) // @ts-ignore migrations = migrationsRequire.keys().map(migrationsRequire).map(Object.values).flat() diff --git a/portfolio/persistence/src/module.ts b/portfolio/persistence/src/module.ts index 171c871e9..ccae8dd04 100644 --- a/portfolio/persistence/src/module.ts +++ b/portfolio/persistence/src/module.ts @@ -5,9 +5,9 @@ import { BusModule } from '@monstrs/nestjs-bus' import { LoggerModule } from '@monstrs/nestjs-logger' import { TypeOrmModule } from '@nestjs/typeorm' -import { Portfolio } from './entities' -import { PortfolioEntityRepository } from './repositories' -import config from './config' +import { Portfolio } from './entities/index.js' +import { PortfolioEntityRepository } from './repositories/index.js' +import config from './config.js' const feature = TypeOrmModule.forFeature([Portfolio]) diff --git a/portfolio/persistence/src/repositories/PortfolioEntityRepository.ts b/portfolio/persistence/src/repositories/PortfolioEntityRepository.ts index a646e4625..15aa1096d 100644 --- a/portfolio/persistence/src/repositories/PortfolioEntityRepository.ts +++ b/portfolio/persistence/src/repositories/PortfolioEntityRepository.ts @@ -6,7 +6,7 @@ import { Logger } from '@monstrs/nestjs-logger' import { WriteRepository } from '@node-ts/ddd' import { Portfolio as PortfolioEntity } from '@portfolio/domain' -import { Portfolio } from '../entities' +import { Portfolio } from '../entities/index.js' @Injectable() // @ts-ignore diff --git a/portfolio/persistence/src/repositories/index.ts b/portfolio/persistence/src/repositories/index.ts index b39e368f4..66e087dfb 100644 --- a/portfolio/persistence/src/repositories/index.ts +++ b/portfolio/persistence/src/repositories/index.ts @@ -1 +1 @@ -export * from './PortfolioEntityRepository' +export * from './PortfolioEntityRepository.js' diff --git a/portfolio/service/src/controllers/index.ts b/portfolio/service/src/controllers/index.ts index 73b1568a5..3be72016f 100644 --- a/portfolio/service/src/controllers/index.ts +++ b/portfolio/service/src/controllers/index.ts @@ -1,2 +1,2 @@ -export * from './PortfolioQueriesController' -export * from './PortfolioController' +export * from './PortfolioQueriesController.js' +export * from './PortfolioController.js' diff --git a/portfolio/service/src/index.ts b/portfolio/service/src/index.ts index e9833821b..359ad3c22 100644 --- a/portfolio/service/src/index.ts +++ b/portfolio/service/src/index.ts @@ -1,7 +1,7 @@ import { NestFactory } from '@nestjs/core' import { serverOptions } from '@protos/portfolio' -import { ServiceModule } from './module' +import { ServiceModule } from './module.js' declare const module: any diff --git a/portfolio/service/src/module.ts b/portfolio/service/src/module.ts index ad6569659..5e7ef0739 100644 --- a/portfolio/service/src/module.ts +++ b/portfolio/service/src/module.ts @@ -3,8 +3,8 @@ import { Module } from '@nestjs/common' import { ApplicationModule } from '@portfolio/application' import { PersistenceModule } from '@portfolio/persistence' -import { PortfolioController } from './controllers' -import { PortfolioQueriesController } from './controllers' +import { PortfolioController } from './controllers/index.js' +import { PortfolioQueriesController } from './controllers/index.js' @Module({ imports: [PersistenceModule, ApplicationModule], diff --git a/private-gateway/app/src/index.ts b/private-gateway/app/src/index.ts index e46856de6..e4ba8694c 100644 --- a/private-gateway/app/src/index.ts +++ b/private-gateway/app/src/index.ts @@ -1,6 +1,6 @@ import { NestFactory } from '@nestjs/core' -import { ApplicationModule } from './module' +import { ApplicationModule } from './module.js' declare const module: any diff --git a/private-gateway/catalog/src/index.ts b/private-gateway/catalog/src/index.ts index 4115e962b..999140757 100644 --- a/private-gateway/catalog/src/index.ts +++ b/private-gateway/catalog/src/index.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common' -import { CategoryGroupMutations } from './resolvers' -import { CategoryGroupQueries } from './resolvers' -import { CategoryMutations } from './resolvers' +import { CategoryGroupMutations } from './resolvers/index.js' +import { CategoryGroupQueries } from './resolvers/index.js' +import { CategoryMutations } from './resolvers/index.js' @Module({ providers: [CategoryGroupQueries, CategoryGroupMutations, CategoryMutations], diff --git a/private-gateway/catalog/src/inputs/index.ts b/private-gateway/catalog/src/inputs/index.ts index 596667a7f..ace35d418 100644 --- a/private-gateway/catalog/src/inputs/index.ts +++ b/private-gateway/catalog/src/inputs/index.ts @@ -1,7 +1,7 @@ -export * from './CreateCategoryGroupInput' -export * from './UpdateCategoryGroupInput' -export * from './DeleteCategoryGroupInput' -export * from './CreateCategoryInput' -export * from './UpdateCategoryInput' -export * from './DeleteCategoryInput' -export * from './CategoryGroupsFilter' +export * from './CreateCategoryGroupInput.js' +export * from './UpdateCategoryGroupInput.js' +export * from './DeleteCategoryGroupInput.js' +export * from './CreateCategoryInput.js' +export * from './UpdateCategoryInput.js' +export * from './DeleteCategoryInput.js' +export * from './CategoryGroupsFilter.js' diff --git a/private-gateway/catalog/src/resolvers/CategoryGroupMutations.ts b/private-gateway/catalog/src/resolvers/CategoryGroupMutations.ts index 0de4521f0..10ad38a77 100644 --- a/private-gateway/catalog/src/resolvers/CategoryGroupMutations.ts +++ b/private-gateway/catalog/src/resolvers/CategoryGroupMutations.ts @@ -9,12 +9,12 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/catalog' import { catalog } from '@protos/interfaces' -import { CreateCategoryGroupInput } from '../inputs' -import { DeleteCategoryGroupInput } from '../inputs' -import { UpdateCategoryGroupInput } from '../inputs' -import { CreateCategoryGroupResponse } from '../types' -import { DeleteCategoryGroupResponse } from '../types' -import { UpdateCategoryGroupResponse } from '../types' +import { CreateCategoryGroupInput } from '../inputs/index.js' +import { DeleteCategoryGroupInput } from '../inputs/index.js' +import { UpdateCategoryGroupInput } from '../inputs/index.js' +import { CreateCategoryGroupResponse } from '../types/index.js' +import { DeleteCategoryGroupResponse } from '../types/index.js' +import { UpdateCategoryGroupResponse } from '../types/index.js' @Injectable() export class CategoryGroupMutations implements OnModuleInit { diff --git a/private-gateway/catalog/src/resolvers/CategoryGroupQueries.ts b/private-gateway/catalog/src/resolvers/CategoryGroupQueries.ts index 55873bea4..189b801e4 100644 --- a/private-gateway/catalog/src/resolvers/CategoryGroupQueries.ts +++ b/private-gateway/catalog/src/resolvers/CategoryGroupQueries.ts @@ -8,8 +8,8 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/catalog' import { catalog } from '@protos/interfaces' -import { CategoryGroupsFilter } from '../inputs' -import { CategoryGroupsList } from '../types' +import { CategoryGroupsFilter } from '../inputs/index.js' +import { CategoryGroupsList } from '../types/index.js' @Injectable() export class CategoryGroupQueries implements OnModuleInit { diff --git a/private-gateway/catalog/src/resolvers/CategoryMutations.ts b/private-gateway/catalog/src/resolvers/CategoryMutations.ts index 3d1188ad5..c994e9c94 100644 --- a/private-gateway/catalog/src/resolvers/CategoryMutations.ts +++ b/private-gateway/catalog/src/resolvers/CategoryMutations.ts @@ -9,12 +9,12 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/catalog' import { catalog } from '@protos/interfaces' -import { CreateCategoryInput } from '../inputs' -import { DeleteCategoryInput } from '../inputs' -import { UpdateCategoryInput } from '../inputs' -import { CreateCategoryResponse } from '../types' -import { DeleteCategoryResponse } from '../types' -import { UpdateCategoryResponse } from '../types' +import { CreateCategoryInput } from '../inputs/index.js' +import { DeleteCategoryInput } from '../inputs/index.js' +import { UpdateCategoryInput } from '../inputs/index.js' +import { CreateCategoryResponse } from '../types/index.js' +import { DeleteCategoryResponse } from '../types/index.js' +import { UpdateCategoryResponse } from '../types/index.js' @Injectable() export class CategoryMutations implements OnModuleInit { diff --git a/private-gateway/catalog/src/resolvers/index.ts b/private-gateway/catalog/src/resolvers/index.ts index 020742b45..9595c1fd9 100644 --- a/private-gateway/catalog/src/resolvers/index.ts +++ b/private-gateway/catalog/src/resolvers/index.ts @@ -1,3 +1,3 @@ -export * from './CategoryGroupMutations' -export * from './CategoryGroupQueries' -export * from './CategoryMutations' +export * from './CategoryGroupMutations.js' +export * from './CategoryGroupQueries.js' +export * from './CategoryMutations.js' diff --git a/private-gateway/catalog/src/types/CategoryGroup.ts b/private-gateway/catalog/src/types/CategoryGroup.ts index 3e0ddc9b4..6e182ced0 100644 --- a/private-gateway/catalog/src/types/CategoryGroup.ts +++ b/private-gateway/catalog/src/types/CategoryGroup.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Category } from './Category' +import { Category } from './Category.js' @ObjectType() export class CategoryGroup { diff --git a/private-gateway/catalog/src/types/CategoryGroupsList.ts b/private-gateway/catalog/src/types/CategoryGroupsList.ts index b3abe938d..bae9e860c 100644 --- a/private-gateway/catalog/src/types/CategoryGroupsList.ts +++ b/private-gateway/catalog/src/types/CategoryGroupsList.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { CategoryGroup } from './CategoryGroup' +import { CategoryGroup } from './CategoryGroup.js' @ObjectType() export class CategoryGroupsList { diff --git a/private-gateway/catalog/src/types/CreateCategoryGroupResponse.ts b/private-gateway/catalog/src/types/CreateCategoryGroupResponse.ts index fbbbce7fb..25939602f 100644 --- a/private-gateway/catalog/src/types/CreateCategoryGroupResponse.ts +++ b/private-gateway/catalog/src/types/CreateCategoryGroupResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { CategoryGroup } from './CategoryGroup' -import { CreateCategoryGroupErrors } from './CreateCategoryGroupErrors' +import { CategoryGroup } from './CategoryGroup.js' +import { CreateCategoryGroupErrors } from './CreateCategoryGroupErrors.js' @ObjectType() export class CreateCategoryGroupResponse { diff --git a/private-gateway/catalog/src/types/CreateCategoryResponse.ts b/private-gateway/catalog/src/types/CreateCategoryResponse.ts index 1a36b0d29..507d409d6 100644 --- a/private-gateway/catalog/src/types/CreateCategoryResponse.ts +++ b/private-gateway/catalog/src/types/CreateCategoryResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Category } from './Category' -import { CreateCategoryErrors } from './CreateCategoryErrors' +import { Category } from './Category.js' +import { CreateCategoryErrors } from './CreateCategoryErrors.js' @ObjectType() export class CreateCategoryResponse { diff --git a/private-gateway/catalog/src/types/DeleteCategoryGroupResponse.ts b/private-gateway/catalog/src/types/DeleteCategoryGroupResponse.ts index f91cbdc75..cbc722473 100644 --- a/private-gateway/catalog/src/types/DeleteCategoryGroupResponse.ts +++ b/private-gateway/catalog/src/types/DeleteCategoryGroupResponse.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { DeleteCategoryGroupErrors } from './DeleteCategoryGroupErrors' +import { DeleteCategoryGroupErrors } from './DeleteCategoryGroupErrors.js' @ObjectType() export class DeleteCategoryGroupResponse { diff --git a/private-gateway/catalog/src/types/DeleteCategoryResponse.ts b/private-gateway/catalog/src/types/DeleteCategoryResponse.ts index cdc38dd5d..c73a8346a 100644 --- a/private-gateway/catalog/src/types/DeleteCategoryResponse.ts +++ b/private-gateway/catalog/src/types/DeleteCategoryResponse.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { DeleteCategoryErrors } from './DeleteCategoryErrors' +import { DeleteCategoryErrors } from './DeleteCategoryErrors.js' @ObjectType() export class DeleteCategoryResponse { diff --git a/private-gateway/catalog/src/types/UpdateCategoryGroupResponse.ts b/private-gateway/catalog/src/types/UpdateCategoryGroupResponse.ts index f756d9068..7df347688 100644 --- a/private-gateway/catalog/src/types/UpdateCategoryGroupResponse.ts +++ b/private-gateway/catalog/src/types/UpdateCategoryGroupResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { CategoryGroup } from './CategoryGroup' -import { UpdateCategoryGroupErrors } from './UpdateCategoryGroupErrors' +import { CategoryGroup } from './CategoryGroup.js' +import { UpdateCategoryGroupErrors } from './UpdateCategoryGroupErrors.js' @ObjectType() export class UpdateCategoryGroupResponse { diff --git a/private-gateway/catalog/src/types/UpdateCategoryResponse.ts b/private-gateway/catalog/src/types/UpdateCategoryResponse.ts index 0e24e5749..f2a25fe2c 100644 --- a/private-gateway/catalog/src/types/UpdateCategoryResponse.ts +++ b/private-gateway/catalog/src/types/UpdateCategoryResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Category } from './Category' -import { UpdateCategoryErrors } from './UpdateCategoryErrors' +import { Category } from './Category.js' +import { UpdateCategoryErrors } from './UpdateCategoryErrors.js' @ObjectType() export class UpdateCategoryResponse { diff --git a/private-gateway/catalog/src/types/index.ts b/private-gateway/catalog/src/types/index.ts index 5a2cc0df9..769b5eb44 100644 --- a/private-gateway/catalog/src/types/index.ts +++ b/private-gateway/catalog/src/types/index.ts @@ -1,7 +1,7 @@ -export * from './CreateCategoryGroupResponse' -export * from './UpdateCategoryGroupResponse' -export * from './DeleteCategoryGroupResponse' -export * from './CreateCategoryResponse' -export * from './UpdateCategoryResponse' -export * from './DeleteCategoryResponse' -export * from './CategoryGroupsList' +export * from './CreateCategoryGroupResponse.js' +export * from './UpdateCategoryGroupResponse.js' +export * from './DeleteCategoryGroupResponse.js' +export * from './CreateCategoryResponse.js' +export * from './UpdateCategoryResponse.js' +export * from './DeleteCategoryResponse.js' +export * from './CategoryGroupsList.js' diff --git a/public-gateway/app/src/index.ts b/public-gateway/app/src/index.ts index 411671967..95048eb03 100644 --- a/public-gateway/app/src/index.ts +++ b/public-gateway/app/src/index.ts @@ -2,8 +2,8 @@ import { oathkeeperAuth } from '@monstrs/oathkeeper-auth' import { NestFactory } from '@nestjs/core' -import { ActivityMiddleware } from './middleware' -import { ApplicationModule } from './module' +import { ActivityMiddleware } from './middleware/index.js' +import { ApplicationModule } from './module.js' declare const module: any diff --git a/public-gateway/app/src/middleware/index.ts b/public-gateway/app/src/middleware/index.ts index 8904a632d..cf06672ec 100644 --- a/public-gateway/app/src/middleware/index.ts +++ b/public-gateway/app/src/middleware/index.ts @@ -1 +1 @@ -export * from './activity.middleware' +export * from './activity.middleware.js' diff --git a/public-gateway/app/src/module.ts b/public-gateway/app/src/module.ts index 91d4cea31..db80f6d1d 100644 --- a/public-gateway/app/src/module.ts +++ b/public-gateway/app/src/module.ts @@ -11,7 +11,7 @@ import { IdentityModule } from '@public-gateway/identity' import { PortfolioModule } from '@public-gateway/portfolio' import { SearchModule } from '@public-gateway/search' -import { ActivityMiddleware } from './middleware' +import { ActivityMiddleware } from './middleware/index.js' // eslint-disable-next-line const playground = diff --git a/public-gateway/catalog/src/index.ts b/public-gateway/catalog/src/index.ts index 7824f91c1..952de1341 100644 --- a/public-gateway/catalog/src/index.ts +++ b/public-gateway/catalog/src/index.ts @@ -1,9 +1,9 @@ import { Module } from '@nestjs/common' -import { CategoryGroupQueries } from './resolvers' -import { CategoryQueries } from './resolvers' +import { CategoryGroupQueries } from './resolvers/index.js' +import { CategoryQueries } from './resolvers/index.js' -export * from './types' +export * from './types/index.js' @Module({ providers: [CategoryGroupQueries, CategoryQueries], diff --git a/public-gateway/catalog/src/resolvers/CategoryGroupQueries.ts b/public-gateway/catalog/src/resolvers/CategoryGroupQueries.ts index b06364a05..80f695dfb 100644 --- a/public-gateway/catalog/src/resolvers/CategoryGroupQueries.ts +++ b/public-gateway/catalog/src/resolvers/CategoryGroupQueries.ts @@ -7,7 +7,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/catalog' import { catalog } from '@protos/interfaces' -import { CategoryGroupsList } from '../types' +import { CategoryGroupsList } from '../types/index.js' @Injectable() export class CategoryGroupQueries implements OnModuleInit { diff --git a/public-gateway/catalog/src/resolvers/CategoryQueries.ts b/public-gateway/catalog/src/resolvers/CategoryQueries.ts index 46c740073..0ceb04cac 100644 --- a/public-gateway/catalog/src/resolvers/CategoryQueries.ts +++ b/public-gateway/catalog/src/resolvers/CategoryQueries.ts @@ -7,7 +7,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/catalog' import { catalog } from '@protos/interfaces' -import { CategoriesList } from '../types' +import { CategoriesList } from '../types/index.js' @Injectable() export class CategoryQueries implements OnModuleInit { diff --git a/public-gateway/catalog/src/resolvers/index.ts b/public-gateway/catalog/src/resolvers/index.ts index 409f78968..c534e477f 100644 --- a/public-gateway/catalog/src/resolvers/index.ts +++ b/public-gateway/catalog/src/resolvers/index.ts @@ -1,2 +1,2 @@ -export * from './CategoryGroupQueries' -export * from './CategoryQueries' +export * from './CategoryGroupQueries.js' +export * from './CategoryQueries.js' diff --git a/public-gateway/catalog/src/types/CategoriesList.ts b/public-gateway/catalog/src/types/CategoriesList.ts index fd646b1af..de27026ee 100644 --- a/public-gateway/catalog/src/types/CategoriesList.ts +++ b/public-gateway/catalog/src/types/CategoriesList.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Category } from './Category' +import { Category } from './Category.js' @ObjectType() export class CategoriesList { diff --git a/public-gateway/catalog/src/types/CategoryGroup.ts b/public-gateway/catalog/src/types/CategoryGroup.ts index 3e0ddc9b4..6e182ced0 100644 --- a/public-gateway/catalog/src/types/CategoryGroup.ts +++ b/public-gateway/catalog/src/types/CategoryGroup.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Category } from './Category' +import { Category } from './Category.js' @ObjectType() export class CategoryGroup { diff --git a/public-gateway/catalog/src/types/CategoryGroupsList.ts b/public-gateway/catalog/src/types/CategoryGroupsList.ts index b3abe938d..bae9e860c 100644 --- a/public-gateway/catalog/src/types/CategoryGroupsList.ts +++ b/public-gateway/catalog/src/types/CategoryGroupsList.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { CategoryGroup } from './CategoryGroup' +import { CategoryGroup } from './CategoryGroup.js' @ObjectType() export class CategoryGroupsList { diff --git a/public-gateway/catalog/src/types/index.ts b/public-gateway/catalog/src/types/index.ts index c91748de5..cd286af3a 100644 --- a/public-gateway/catalog/src/types/index.ts +++ b/public-gateway/catalog/src/types/index.ts @@ -1,3 +1,3 @@ -export * from './CategoryGroupsList' -export * from './CategoriesList' -export * from './Category' +export * from './CategoryGroupsList.js' +export * from './CategoriesList.js' +export * from './Category.js' diff --git a/public-gateway/collaboration/src/dataloaders/ActivityLoader.ts b/public-gateway/collaboration/src/dataloaders/ActivityLoader.ts index 4419aa78d..6f65622e0 100644 --- a/public-gateway/collaboration/src/dataloaders/ActivityLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/ActivityLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/hits' import { hits } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class ActivityLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/CategoriesLoader.ts b/public-gateway/collaboration/src/dataloaders/CategoriesLoader.ts index f79883bdc..09bd9126f 100644 --- a/public-gateway/collaboration/src/dataloaders/CategoriesLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/CategoriesLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/catalog' import { catalog } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class CategoriesLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/CategoryLoader.ts b/public-gateway/collaboration/src/dataloaders/CategoryLoader.ts index e9f77f487..7df904537 100644 --- a/public-gateway/collaboration/src/dataloaders/CategoryLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/CategoryLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/catalog' import { catalog } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class CategoryLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/CounterLoader.ts b/public-gateway/collaboration/src/dataloaders/CounterLoader.ts index 54dfa19d3..61abc7208 100644 --- a/public-gateway/collaboration/src/dataloaders/CounterLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/CounterLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/hits' import { hits } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class CounterLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/CustomerLoader.ts b/public-gateway/collaboration/src/dataloaders/CustomerLoader.ts index 9da5c4a0b..21f0e9a9b 100644 --- a/public-gateway/collaboration/src/dataloaders/CustomerLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/CustomerLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class CustomerLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/FilesLoader.ts b/public-gateway/collaboration/src/dataloaders/FilesLoader.ts index d01da985f..93de2ba7a 100644 --- a/public-gateway/collaboration/src/dataloaders/FilesLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/FilesLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/files' import { files } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class FilesLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/MemberLoader.ts b/public-gateway/collaboration/src/dataloaders/MemberLoader.ts index d885ec746..e353e0304 100644 --- a/public-gateway/collaboration/src/dataloaders/MemberLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/MemberLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class MemberLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/ProfileLoader.ts b/public-gateway/collaboration/src/dataloaders/ProfileLoader.ts index e3539ca98..ae3a6d3de 100644 --- a/public-gateway/collaboration/src/dataloaders/ProfileLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/ProfileLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/identity' import { identity } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class ProfileLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/ProjectLoader.ts b/public-gateway/collaboration/src/dataloaders/ProjectLoader.ts index c844beca9..0aa382018 100644 --- a/public-gateway/collaboration/src/dataloaders/ProjectLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/ProjectLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class ProjectLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/UserLoader.ts b/public-gateway/collaboration/src/dataloaders/UserLoader.ts index 765a0b452..eac85056e 100644 --- a/public-gateway/collaboration/src/dataloaders/UserLoader.ts +++ b/public-gateway/collaboration/src/dataloaders/UserLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/identity' import { identity } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class UserLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/collaboration/src/dataloaders/index.ts b/public-gateway/collaboration/src/dataloaders/index.ts index 85bce0227..a761ad725 100644 --- a/public-gateway/collaboration/src/dataloaders/index.ts +++ b/public-gateway/collaboration/src/dataloaders/index.ts @@ -1,13 +1,13 @@ -export * from './CategoriesLoader' -export * from './CategoryLoader' -export * from './FilesLoader' -export * from './ProfileLoader' -export * from './PortfolioLoader' -export * from './ReplyLoader' -export * from './ProjectLoader' -export * from './ReviewLoader' -export * from './MemberLoader' -export * from './CounterLoader' -export * from './UserLoader' -export * from './CustomerLoader' -export * from './ActivityLoader' +export * from './CategoriesLoader.js' +export * from './CategoryLoader.js' +export * from './FilesLoader.js' +export * from './ProfileLoader.js' +export * from './PortfolioLoader.js' +export * from './ReplyLoader.js' +export * from './ProjectLoader.js' +export * from './ReviewLoader.js' +export * from './MemberLoader.js' +export * from './CounterLoader.js' +export * from './UserLoader.js' +export * from './CustomerLoader.js' +export * from './ActivityLoader.js' diff --git a/public-gateway/collaboration/src/index.ts b/public-gateway/collaboration/src/index.ts index bef3af256..e46e2a369 100644 --- a/public-gateway/collaboration/src/index.ts +++ b/public-gateway/collaboration/src/index.ts @@ -1,34 +1,34 @@ import { Module } from '@nestjs/common' -import { ActivityLoader } from './dataloaders' -import { CategoriesLoader } from './dataloaders' -import { CategoryLoader } from './dataloaders' -import { CounterLoader } from './dataloaders' -import { CustomerLoader } from './dataloaders' -import { FilesLoader } from './dataloaders' -import { MemberLoader } from './dataloaders' -import { PortfolioLoader } from './dataloaders' -import { ProfileLoader } from './dataloaders' -import { ProjectLoader } from './dataloaders' -import { ReplyLoader } from './dataloaders' -import { ReviewLoader } from './dataloaders' -import { UserLoader } from './dataloaders' -import { DiscussionMutations } from './resolvers' -import { DiscussionResolver } from './resolvers' -import { MessageResolver } from './resolvers' -import { ProjectMutations } from './resolvers' -import { ProjectOwnerResolver } from './resolvers' -import { ProjectQueries } from './resolvers' -import { ProjectResolver } from './resolvers' -import { ReplyMutations } from './resolvers' -import { ReplyResolver } from './resolvers' -import { ReviewResolver } from './resolvers' -import { SpecialisationResolver } from './resolvers' -import { SpecialistMutations } from './resolvers' -import { SpecialistQueries } from './resolvers' -import { SpecialistResolver } from './resolvers' +import { ActivityLoader } from './dataloaders/index.js' +import { CategoriesLoader } from './dataloaders/index.js' +import { CategoryLoader } from './dataloaders/index.js' +import { CounterLoader } from './dataloaders/index.js' +import { CustomerLoader } from './dataloaders/index.js' +import { FilesLoader } from './dataloaders/index.js' +import { MemberLoader } from './dataloaders/index.js' +import { PortfolioLoader } from './dataloaders/index.js' +import { ProfileLoader } from './dataloaders/index.js' +import { ProjectLoader } from './dataloaders/index.js' +import { ReplyLoader } from './dataloaders/index.js' +import { ReviewLoader } from './dataloaders/index.js' +import { UserLoader } from './dataloaders/index.js' +import { DiscussionMutations } from './resolvers/index.js' +import { DiscussionResolver } from './resolvers/index.js' +import { MessageResolver } from './resolvers/index.js' +import { ProjectMutations } from './resolvers/index.js' +import { ProjectOwnerResolver } from './resolvers/index.js' +import { ProjectQueries } from './resolvers/index.js' +import { ProjectResolver } from './resolvers/index.js' +import { ReplyMutations } from './resolvers/index.js' +import { ReplyResolver } from './resolvers/index.js' +import { ReviewResolver } from './resolvers/index.js' +import { SpecialisationResolver } from './resolvers/index.js' +import { SpecialistMutations } from './resolvers/index.js' +import { SpecialistQueries } from './resolvers/index.js' +import { SpecialistResolver } from './resolvers/index.js' -export * from './types' +export * from './types/index.js' const loaderProviders = [ CategoriesLoader, diff --git a/public-gateway/collaboration/src/inputs/index.ts b/public-gateway/collaboration/src/inputs/index.ts index ff1b1c825..e3952a10a 100644 --- a/public-gateway/collaboration/src/inputs/index.ts +++ b/public-gateway/collaboration/src/inputs/index.ts @@ -1,15 +1,15 @@ -export * from './UpdateSpecialistInput' -export * from './CreateProjectInput' -export * from './UpdateProjectInput' -export * from './ProjectsFilter' -export * from './SpecialistsFilter' -export * from './AddProjectReplyInput' -export * from './AddReplyMessageInput' -export * from './ChangeReplyStatusInput' -export * from './ChooseSpecialistInput' -export * from './PublishProjectInput' -export * from './CompleteProjectInput' -export * from './ChangeAccountTypeInput' -export * from './AddDiscussionMessageInput' -export * from './RejectProjectReplyInput' -export * from './ConfirmProjectReplyInput' +export * from './UpdateSpecialistInput.js' +export * from './CreateProjectInput.js' +export * from './UpdateProjectInput.js' +export * from './ProjectsFilter.js' +export * from './SpecialistsFilter.js' +export * from './AddProjectReplyInput.js' +export * from './AddReplyMessageInput.js' +export * from './ChangeReplyStatusInput.js' +export * from './ChooseSpecialistInput.js' +export * from './PublishProjectInput.js' +export * from './CompleteProjectInput.js' +export * from './ChangeAccountTypeInput.js' +export * from './AddDiscussionMessageInput.js' +export * from './RejectProjectReplyInput.js' +export * from './ConfirmProjectReplyInput.js' diff --git a/public-gateway/collaboration/src/resolvers/DiscussionMutations.ts b/public-gateway/collaboration/src/resolvers/DiscussionMutations.ts index e8a3a5d82..b73a19592 100644 --- a/public-gateway/collaboration/src/resolvers/DiscussionMutations.ts +++ b/public-gateway/collaboration/src/resolvers/DiscussionMutations.ts @@ -12,8 +12,8 @@ import { clientOptions as identityClientOptions } from '@protos/identity' import { collaboration } from '@protos/interfaces' import { identity } from '@protos/interfaces' -import { AddDiscussionMessageInput } from '../inputs' -import { AddDiscussionMessageResponse } from '../types' +import { AddDiscussionMessageInput } from '../inputs/index.js' +import { AddDiscussionMessageResponse } from '../types/index.js' @Injectable() export class DiscussionMutations implements OnModuleInit { diff --git a/public-gateway/collaboration/src/resolvers/DiscussionResolver.ts b/public-gateway/collaboration/src/resolvers/DiscussionResolver.ts index 810f582e8..8c12c9c88 100644 --- a/public-gateway/collaboration/src/resolvers/DiscussionResolver.ts +++ b/public-gateway/collaboration/src/resolvers/DiscussionResolver.ts @@ -7,8 +7,8 @@ import { ResolveField } from '@nestjs/graphql' import { Resolver } from '@nestjs/graphql' import { Root } from '@nestjs/graphql' -import { UserLoader } from '../dataloaders' -import { Discussion } from '../types' +import { UserLoader } from '../dataloaders/index.js' +import { Discussion } from '../types/index.js' @Injectable() @Resolver((of) => Discussion) diff --git a/public-gateway/collaboration/src/resolvers/MessageResolver.ts b/public-gateway/collaboration/src/resolvers/MessageResolver.ts index e05175744..e780f837f 100644 --- a/public-gateway/collaboration/src/resolvers/MessageResolver.ts +++ b/public-gateway/collaboration/src/resolvers/MessageResolver.ts @@ -6,9 +6,9 @@ import { ResolveField } from '@nestjs/graphql' import { Resolver } from '@nestjs/graphql' import { Root } from '@nestjs/graphql' -import { MemberLoader } from '../dataloaders' -import { UserLoader } from '../dataloaders' -import { Message } from '../types' +import { MemberLoader } from '../dataloaders/index.js' +import { UserLoader } from '../dataloaders/index.js' +import { Message } from '../types/index.js' @Injectable() @Resolver((of) => Message) diff --git a/public-gateway/collaboration/src/resolvers/ProjectMutations.ts b/public-gateway/collaboration/src/resolvers/ProjectMutations.ts index 432225dcd..547802cf5 100644 --- a/public-gateway/collaboration/src/resolvers/ProjectMutations.ts +++ b/public-gateway/collaboration/src/resolvers/ProjectMutations.ts @@ -9,14 +9,14 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { CompleteProjectInput } from '../inputs' -import { CreateProjectInput } from '../inputs' -import { PublishProjectInput } from '../inputs' -import { UpdateProjectInput } from '../inputs' -import { CompleteProjectResponse } from '../types' -import { CreateProjectResponse } from '../types' -import { PublishProjectResponse } from '../types' -import { UpdateProjectResponse } from '../types' +import { CompleteProjectInput } from '../inputs/index.js' +import { CreateProjectInput } from '../inputs/index.js' +import { PublishProjectInput } from '../inputs/index.js' +import { UpdateProjectInput } from '../inputs/index.js' +import { CompleteProjectResponse } from '../types/index.js' +import { CreateProjectResponse } from '../types/index.js' +import { PublishProjectResponse } from '../types/index.js' +import { UpdateProjectResponse } from '../types/index.js' @Injectable() export class ProjectMutations implements OnModuleInit { diff --git a/public-gateway/collaboration/src/resolvers/ProjectOwnerResolver.ts b/public-gateway/collaboration/src/resolvers/ProjectOwnerResolver.ts index 5aac67d51..b4850fb70 100644 --- a/public-gateway/collaboration/src/resolvers/ProjectOwnerResolver.ts +++ b/public-gateway/collaboration/src/resolvers/ProjectOwnerResolver.ts @@ -6,10 +6,10 @@ import { ResolveField } from '@nestjs/graphql' import { Resolver } from '@nestjs/graphql' import { Root } from '@nestjs/graphql' -import { ActivityLoader } from '../dataloaders' -import { CustomerLoader } from '../dataloaders' -import { UserLoader } from '../dataloaders' -import { ProjectOwner } from '../types' +import { ActivityLoader } from '../dataloaders/index.js' +import { CustomerLoader } from '../dataloaders/index.js' +import { UserLoader } from '../dataloaders/index.js' +import { ProjectOwner } from '../types/index.js' @Injectable() @Resolver((of) => ProjectOwner) diff --git a/public-gateway/collaboration/src/resolvers/ProjectQueries.ts b/public-gateway/collaboration/src/resolvers/ProjectQueries.ts index 5491f52d5..7bd29ca11 100644 --- a/public-gateway/collaboration/src/resolvers/ProjectQueries.ts +++ b/public-gateway/collaboration/src/resolvers/ProjectQueries.ts @@ -11,8 +11,8 @@ import { Pager } from '@public-gateway/utils' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { ProjectsFilter } from '../inputs' -import { ProjectsList } from '../types' +import { ProjectsFilter } from '../inputs/index.js' +import { ProjectsList } from '../types/index.js' @Injectable() export class ProjectQueries implements OnModuleInit { diff --git a/public-gateway/collaboration/src/resolvers/ProjectResolver.ts b/public-gateway/collaboration/src/resolvers/ProjectResolver.ts index a61710fc7..6c0845576 100644 --- a/public-gateway/collaboration/src/resolvers/ProjectResolver.ts +++ b/public-gateway/collaboration/src/resolvers/ProjectResolver.ts @@ -9,11 +9,11 @@ import { Category } from '@public-gateway/catalog' import { File } from '@public-gateway/files' import { collaboration } from '@protos/interfaces' -import { CategoryLoader } from '../dataloaders' -import { CounterLoader } from '../dataloaders' -import { FilesLoader } from '../dataloaders' -import { ReplyLoader } from '../dataloaders' -import { Project } from '../types' +import { CategoryLoader } from '../dataloaders/index.js' +import { CounterLoader } from '../dataloaders/index.js' +import { FilesLoader } from '../dataloaders/index.js' +import { ReplyLoader } from '../dataloaders/index.js' +import { Project } from '../types/index.js' @Injectable() @Resolver((of) => Project) diff --git a/public-gateway/collaboration/src/resolvers/ReplyMutations.ts b/public-gateway/collaboration/src/resolvers/ReplyMutations.ts index 3f6fcae8c..08e7dfe45 100644 --- a/public-gateway/collaboration/src/resolvers/ReplyMutations.ts +++ b/public-gateway/collaboration/src/resolvers/ReplyMutations.ts @@ -9,18 +9,18 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { AddProjectReplyInput } from '../inputs' -import { AddReplyMessageInput } from '../inputs' -import { ChangeReplyStatusInput } from '../inputs' -import { ChooseSpecialistInput } from '../inputs' -import { ConfirmProjectReplyInput } from '../inputs' -import { RejectProjectReplyInput } from '../inputs' -import { AddProjectReplyResponse } from '../types' -import { AddReplyMessageResponse } from '../types' -import { ChangeReplyStatusResponse } from '../types' -import { ChooseSpecialistResponse } from '../types' -import { ConfirmProjectReplyResponse } from '../types' -import { RejectProjectReplyResponse } from '../types' +import { AddProjectReplyInput } from '../inputs/index.js' +import { AddReplyMessageInput } from '../inputs/index.js' +import { ChangeReplyStatusInput } from '../inputs/index.js' +import { ChooseSpecialistInput } from '../inputs/index.js' +import { ConfirmProjectReplyInput } from '../inputs/index.js' +import { RejectProjectReplyInput } from '../inputs/index.js' +import { AddProjectReplyResponse } from '../types/index.js' +import { AddReplyMessageResponse } from '../types/index.js' +import { ChangeReplyStatusResponse } from '../types/index.js' +import { ChooseSpecialistResponse } from '../types/index.js' +import { ConfirmProjectReplyResponse } from '../types/index.js' +import { RejectProjectReplyResponse } from '../types/index.js' @Injectable() export class ReplyMutations implements OnModuleInit { diff --git a/public-gateway/collaboration/src/resolvers/ReplyResolver.ts b/public-gateway/collaboration/src/resolvers/ReplyResolver.ts index dcbb17990..a6beda598 100644 --- a/public-gateway/collaboration/src/resolvers/ReplyResolver.ts +++ b/public-gateway/collaboration/src/resolvers/ReplyResolver.ts @@ -7,8 +7,8 @@ import { Resolver } from '@nestjs/graphql' import { Root } from '@nestjs/graphql' import { collaboration } from '@protos/interfaces' -import { ProjectLoader } from '../dataloaders' -import { Reply } from '../types' +import { ProjectLoader } from '../dataloaders/index.js' +import { Reply } from '../types/index.js' @Injectable() @Resolver((of) => Reply) diff --git a/public-gateway/collaboration/src/resolvers/ReviewResolver.ts b/public-gateway/collaboration/src/resolvers/ReviewResolver.ts index bd9f52ece..f1b04ce04 100644 --- a/public-gateway/collaboration/src/resolvers/ReviewResolver.ts +++ b/public-gateway/collaboration/src/resolvers/ReviewResolver.ts @@ -6,8 +6,8 @@ import { ResolveField } from '@nestjs/graphql' import { Resolver } from '@nestjs/graphql' import { Root } from '@nestjs/graphql' -import { UserLoader } from '../dataloaders' -import { Review } from '../types' +import { UserLoader } from '../dataloaders/index.js' +import { Review } from '../types/index.js' @Injectable() @Resolver((of) => Review) diff --git a/public-gateway/collaboration/src/resolvers/SpecialisationResolver.ts b/public-gateway/collaboration/src/resolvers/SpecialisationResolver.ts index 6941b7a22..e881980f4 100644 --- a/public-gateway/collaboration/src/resolvers/SpecialisationResolver.ts +++ b/public-gateway/collaboration/src/resolvers/SpecialisationResolver.ts @@ -8,8 +8,8 @@ import { Root } from '@nestjs/graphql' import { Category } from '@public-gateway/catalog' import { collaboration } from '@protos/interfaces' -import { CategoriesLoader } from '../dataloaders' -import { Specialisation } from '../types' +import { CategoriesLoader } from '../dataloaders/index.js' +import { Specialisation } from '../types/index.js' @Injectable() @Resolver((of) => Specialisation) diff --git a/public-gateway/collaboration/src/resolvers/SpecialistMutations.ts b/public-gateway/collaboration/src/resolvers/SpecialistMutations.ts index 736860273..ead7a3cfe 100644 --- a/public-gateway/collaboration/src/resolvers/SpecialistMutations.ts +++ b/public-gateway/collaboration/src/resolvers/SpecialistMutations.ts @@ -9,10 +9,10 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { ChangeAccountTypeInput } from '../inputs' -import { UpdateSpecialistInput } from '../inputs' -import { ChangeAccountTypeResponse } from '../types' -import { UpdateSpecialistResponse } from '../types' +import { ChangeAccountTypeInput } from '../inputs/index.js' +import { UpdateSpecialistInput } from '../inputs/index.js' +import { ChangeAccountTypeResponse } from '../types/index.js' +import { UpdateSpecialistResponse } from '../types/index.js' @Injectable() export class SpecialistMutations implements OnModuleInit { diff --git a/public-gateway/collaboration/src/resolvers/SpecialistQueries.ts b/public-gateway/collaboration/src/resolvers/SpecialistQueries.ts index 2a5b141cb..f4350c4ab 100644 --- a/public-gateway/collaboration/src/resolvers/SpecialistQueries.ts +++ b/public-gateway/collaboration/src/resolvers/SpecialistQueries.ts @@ -11,8 +11,8 @@ import { Pager } from '@public-gateway/utils' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { SpecialistsFilter } from '../inputs' -import { SpecialistsList } from '../types' +import { SpecialistsFilter } from '../inputs/index.js' +import { SpecialistsList } from '../types/index.js' @Injectable() export class SpecialistQueries implements OnModuleInit { diff --git a/public-gateway/collaboration/src/resolvers/SpecialistResolver.ts b/public-gateway/collaboration/src/resolvers/SpecialistResolver.ts index a3b5aae64..4bbec8674 100644 --- a/public-gateway/collaboration/src/resolvers/SpecialistResolver.ts +++ b/public-gateway/collaboration/src/resolvers/SpecialistResolver.ts @@ -6,10 +6,10 @@ import { ResolveField } from '@nestjs/graphql' import { Resolver } from '@nestjs/graphql' import { Root } from '@nestjs/graphql' -import { PortfolioLoader } from '../dataloaders' -import { ReviewLoader } from '../dataloaders' -import { UserLoader } from '../dataloaders' -import { Specialist } from '../types' +import { PortfolioLoader } from '../dataloaders/index.js' +import { ReviewLoader } from '../dataloaders/index.js' +import { UserLoader } from '../dataloaders/index.js' +import { Specialist } from '../types/index.js' @Injectable() @Resolver((of) => Specialist) diff --git a/public-gateway/collaboration/src/resolvers/index.ts b/public-gateway/collaboration/src/resolvers/index.ts index 2ee059b18..8080c991b 100644 --- a/public-gateway/collaboration/src/resolvers/index.ts +++ b/public-gateway/collaboration/src/resolvers/index.ts @@ -1,14 +1,14 @@ -export * from './SpecialistMutations' -export * from './SpecialisationResolver' -export * from './ProjectMutations' -export * from './ProjectResolver' -export * from './ProjectQueries' -export * from './SpecialistQueries' -export * from './ProjectOwnerResolver' -export * from './SpecialistResolver' -export * from './ReplyMutations' -export * from './MessageResolver' -export * from './ReplyResolver' -export * from './ReviewResolver' -export * from './DiscussionMutations' -export * from './DiscussionResolver' +export * from './SpecialistMutations.js' +export * from './SpecialisationResolver.js' +export * from './ProjectMutations.js' +export * from './ProjectResolver.js' +export * from './ProjectQueries.js' +export * from './SpecialistQueries.js' +export * from './ProjectOwnerResolver.js' +export * from './SpecialistResolver.js' +export * from './ReplyMutations.js' +export * from './MessageResolver.js' +export * from './ReplyResolver.js' +export * from './ReviewResolver.js' +export * from './DiscussionMutations.js' +export * from './DiscussionResolver.js' diff --git a/public-gateway/collaboration/src/types/AddDiscussionMessageResponse.ts b/public-gateway/collaboration/src/types/AddDiscussionMessageResponse.ts index 4afc3fc9f..ff6d85a75 100644 --- a/public-gateway/collaboration/src/types/AddDiscussionMessageResponse.ts +++ b/public-gateway/collaboration/src/types/AddDiscussionMessageResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { AddDiscussionMessageErrors } from './AddDiscussionMessageErrors' -import { Message } from './Message' +import { AddDiscussionMessageErrors } from './AddDiscussionMessageErrors.js' +import { Message } from './Message.js' @ObjectType() export class AddDiscussionMessageResponse { diff --git a/public-gateway/collaboration/src/types/AddProjectReplyResponse.ts b/public-gateway/collaboration/src/types/AddProjectReplyResponse.ts index 433913cfd..9cce1ae73 100644 --- a/public-gateway/collaboration/src/types/AddProjectReplyResponse.ts +++ b/public-gateway/collaboration/src/types/AddProjectReplyResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { AddProjectReplyErrors } from './AddProjectReplyErrors' -import { Reply } from './Reply' +import { AddProjectReplyErrors } from './AddProjectReplyErrors.js' +import { Reply } from './Reply.js' @ObjectType() export class AddProjectReplyResponse { diff --git a/public-gateway/collaboration/src/types/AddReplyMessageResponse.ts b/public-gateway/collaboration/src/types/AddReplyMessageResponse.ts index ad7debf92..bfc8b3c78 100644 --- a/public-gateway/collaboration/src/types/AddReplyMessageResponse.ts +++ b/public-gateway/collaboration/src/types/AddReplyMessageResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { AddReplyMessageErrors } from './AddReplyMessageErrors' -import { Message } from './Message' +import { AddReplyMessageErrors } from './AddReplyMessageErrors.js' +import { Message } from './Message.js' @ObjectType() export class AddReplyMessageResponse { diff --git a/public-gateway/collaboration/src/types/ChangeAccountTypeResponse.ts b/public-gateway/collaboration/src/types/ChangeAccountTypeResponse.ts index 2673c8fcb..f9edb1623 100644 --- a/public-gateway/collaboration/src/types/ChangeAccountTypeResponse.ts +++ b/public-gateway/collaboration/src/types/ChangeAccountTypeResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { ChangeAccountTypeErrors } from './ChangeAccountTypeErrors' -import { SpecialistMember } from './SpecialistMember' +import { ChangeAccountTypeErrors } from './ChangeAccountTypeErrors.js' +import { SpecialistMember } from './SpecialistMember.js' @ObjectType() export class ChangeAccountTypeResponse { diff --git a/public-gateway/collaboration/src/types/ChangeReplyStatusResponse.ts b/public-gateway/collaboration/src/types/ChangeReplyStatusResponse.ts index 9584e79a4..61d22eb84 100644 --- a/public-gateway/collaboration/src/types/ChangeReplyStatusResponse.ts +++ b/public-gateway/collaboration/src/types/ChangeReplyStatusResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { ChangeReplyStatusErrors } from './ChangeReplyStatusErrors' -import { Reply } from './Reply' +import { ChangeReplyStatusErrors } from './ChangeReplyStatusErrors.js' +import { Reply } from './Reply.js' @ObjectType() export class ChangeReplyStatusResponse { diff --git a/public-gateway/collaboration/src/types/ChooseSpecialistResponse.ts b/public-gateway/collaboration/src/types/ChooseSpecialistResponse.ts index 87071897e..d4ba8a123 100644 --- a/public-gateway/collaboration/src/types/ChooseSpecialistResponse.ts +++ b/public-gateway/collaboration/src/types/ChooseSpecialistResponse.ts @@ -1,12 +1,12 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { ChooseSpecialistErrors } from './ChooseSpecialistErrors' +import { ChooseSpecialistErrors } from './ChooseSpecialistErrors.js' @ObjectType() export class ChooseSpecialistResponse { // @ts-ignore - @Field((type) => require('./Project').Project, { nullable: true }) + @Field((type) => require('./Project.js').Project, { nullable: true }) result?: any @Field((type) => ChooseSpecialistErrors, { nullable: true }) diff --git a/public-gateway/collaboration/src/types/CompleteProjectResponse.ts b/public-gateway/collaboration/src/types/CompleteProjectResponse.ts index cdc8c048a..4662f9f02 100644 --- a/public-gateway/collaboration/src/types/CompleteProjectResponse.ts +++ b/public-gateway/collaboration/src/types/CompleteProjectResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { CompleteProjectErrors } from './CompleteProjectErrors' -import { Review } from './Review' +import { CompleteProjectErrors } from './CompleteProjectErrors.js' +import { Review } from './Review.js' @ObjectType() export class CompleteProjectResponse { diff --git a/public-gateway/collaboration/src/types/ConfirmProjectReplyResponse.ts b/public-gateway/collaboration/src/types/ConfirmProjectReplyResponse.ts index 941ce87f2..9088f507e 100644 --- a/public-gateway/collaboration/src/types/ConfirmProjectReplyResponse.ts +++ b/public-gateway/collaboration/src/types/ConfirmProjectReplyResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { ConfirmProjectReplyErrors } from './ConfirmProjectReplyErrors' -import { Reply } from './Reply' +import { ConfirmProjectReplyErrors } from './ConfirmProjectReplyErrors.js' +import { Reply } from './Reply.js' @ObjectType() export class ConfirmProjectReplyResponse { diff --git a/public-gateway/collaboration/src/types/CreateProjectResponse.ts b/public-gateway/collaboration/src/types/CreateProjectResponse.ts index 120caff6b..944f0b9b7 100644 --- a/public-gateway/collaboration/src/types/CreateProjectResponse.ts +++ b/public-gateway/collaboration/src/types/CreateProjectResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { CreateProjectErrors } from './CreateProjectErrors' -import { Project } from './Project' +import { CreateProjectErrors } from './CreateProjectErrors.js' +import { Project } from './Project.js' @ObjectType() export class CreateProjectResponse { diff --git a/public-gateway/collaboration/src/types/Discussion.ts b/public-gateway/collaboration/src/types/Discussion.ts index 32aeb99e7..7cf41d932 100644 --- a/public-gateway/collaboration/src/types/Discussion.ts +++ b/public-gateway/collaboration/src/types/Discussion.ts @@ -2,7 +2,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' import { User } from '@public-gateway/identity' -import { Message } from './Message' +import { Message } from './Message.js' @ObjectType() export class Discussion { diff --git a/public-gateway/collaboration/src/types/Message.ts b/public-gateway/collaboration/src/types/Message.ts index 948a0b2bb..9b11295f1 100644 --- a/public-gateway/collaboration/src/types/Message.ts +++ b/public-gateway/collaboration/src/types/Message.ts @@ -2,7 +2,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' import { Profile } from '@public-gateway/identity' -import { SpecialistMember } from './SpecialistMember' +import { SpecialistMember } from './SpecialistMember.js' @ObjectType() export class Message { diff --git a/public-gateway/collaboration/src/types/Project.ts b/public-gateway/collaboration/src/types/Project.ts index 7f66e7903..0d260820f 100644 --- a/public-gateway/collaboration/src/types/Project.ts +++ b/public-gateway/collaboration/src/types/Project.ts @@ -3,9 +3,9 @@ import { ObjectType } from '@nestjs/graphql' import { Category } from '@public-gateway/catalog' import { File } from '@public-gateway/files' -import { ProjectAddress } from './ProjectAddress' -import { ProjectOwner } from './ProjectOwner' -import { Reply } from './Reply' +import { ProjectAddress } from './ProjectAddress.js' +import { ProjectOwner } from './ProjectOwner.js' +import { Reply } from './Reply.js' @ObjectType() export class Project { diff --git a/public-gateway/collaboration/src/types/ProjectOwner.ts b/public-gateway/collaboration/src/types/ProjectOwner.ts index ea7f184e6..dae9d1953 100644 --- a/public-gateway/collaboration/src/types/ProjectOwner.ts +++ b/public-gateway/collaboration/src/types/ProjectOwner.ts @@ -2,8 +2,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' import { Profile } from '@public-gateway/identity' -import { Activity } from './Activity' -import { CustomerMember } from './CustomerMember' +import { Activity } from './Activity.js' +import { CustomerMember } from './CustomerMember.js' @ObjectType() export class ProjectOwner { diff --git a/public-gateway/collaboration/src/types/ProjectsList.ts b/public-gateway/collaboration/src/types/ProjectsList.ts index 50dd79a7f..7f3f4ead3 100644 --- a/public-gateway/collaboration/src/types/ProjectsList.ts +++ b/public-gateway/collaboration/src/types/ProjectsList.ts @@ -2,7 +2,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' import { PageInfo } from '@public-gateway/types' -import { Project } from './Project' +import { Project } from './Project.js' @ObjectType() export class ProjectsList { diff --git a/public-gateway/collaboration/src/types/PublishProjectResponse.ts b/public-gateway/collaboration/src/types/PublishProjectResponse.ts index d1cba6001..84cf7da63 100644 --- a/public-gateway/collaboration/src/types/PublishProjectResponse.ts +++ b/public-gateway/collaboration/src/types/PublishProjectResponse.ts @@ -1,12 +1,12 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { PublishProjectErrors } from './PublishProjectErrors' +import { PublishProjectErrors } from './PublishProjectErrors.js' @ObjectType() export class PublishProjectResponse { // @ts-ignore - @Field((type) => require('./Project').Project, { nullable: true }) + @Field((type) => require('./Project.js').Project, { nullable: true }) result?: any @Field((type) => PublishProjectErrors, { nullable: true }) diff --git a/public-gateway/collaboration/src/types/RejectProjectReplyResponse.ts b/public-gateway/collaboration/src/types/RejectProjectReplyResponse.ts index f3ad73b2f..18ac46391 100644 --- a/public-gateway/collaboration/src/types/RejectProjectReplyResponse.ts +++ b/public-gateway/collaboration/src/types/RejectProjectReplyResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { RejectProjectReplyErrors } from './RejectProjectReplyErrors' -import { Reply } from './Reply' +import { RejectProjectReplyErrors } from './RejectProjectReplyErrors.js' +import { Reply } from './Reply.js' @ObjectType() export class RejectProjectReplyResponse { diff --git a/public-gateway/collaboration/src/types/Reply.ts b/public-gateway/collaboration/src/types/Reply.ts index 81da705f0..0700835a9 100644 --- a/public-gateway/collaboration/src/types/Reply.ts +++ b/public-gateway/collaboration/src/types/Reply.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Discussion } from './Discussion' -import { Project } from './Project' +import { Discussion } from './Discussion.js' +import { Project } from './Project.js' @ObjectType() export class Reply { diff --git a/public-gateway/collaboration/src/types/Specialist.ts b/public-gateway/collaboration/src/types/Specialist.ts index f12b8fcd9..e5c64e2df 100644 --- a/public-gateway/collaboration/src/types/Specialist.ts +++ b/public-gateway/collaboration/src/types/Specialist.ts @@ -3,9 +3,9 @@ import { ObjectType } from '@nestjs/graphql' import { Profile } from '@public-gateway/identity' import { Portfolio } from '@public-gateway/portfolio' -import { Interaction } from './Interaction' -import { Review } from './Review' -import { Specialisation } from './Specialisation' +import { Interaction } from './Interaction.js' +import { Review } from './Review.js' +import { Specialisation } from './Specialisation.js' @ObjectType() export class Specialist { diff --git a/public-gateway/collaboration/src/types/SpecialistMember.ts b/public-gateway/collaboration/src/types/SpecialistMember.ts index d5fce31b2..6e9d3f212 100644 --- a/public-gateway/collaboration/src/types/SpecialistMember.ts +++ b/public-gateway/collaboration/src/types/SpecialistMember.ts @@ -1,9 +1,9 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Account } from './Account' -import { Interaction } from './Interaction' -import { Specialisation } from './Specialisation' +import { Account } from './Account.js' +import { Interaction } from './Interaction.js' +import { Specialisation } from './Specialisation.js' @ObjectType() export class SpecialistMember { diff --git a/public-gateway/collaboration/src/types/SpecialistsList.ts b/public-gateway/collaboration/src/types/SpecialistsList.ts index dc3cd2c0e..2de705ce2 100644 --- a/public-gateway/collaboration/src/types/SpecialistsList.ts +++ b/public-gateway/collaboration/src/types/SpecialistsList.ts @@ -2,7 +2,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' import { PageInfo } from '@public-gateway/types' -import { Specialist } from './Specialist' +import { Specialist } from './Specialist.js' @ObjectType() export class SpecialistsList { diff --git a/public-gateway/collaboration/src/types/UpdateProjectResponse.ts b/public-gateway/collaboration/src/types/UpdateProjectResponse.ts index 365f02e0b..54838eb63 100644 --- a/public-gateway/collaboration/src/types/UpdateProjectResponse.ts +++ b/public-gateway/collaboration/src/types/UpdateProjectResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Project } from './Project' -import { UpdateProjectErrors } from './UpdateProjectErrors' +import { Project } from './Project.js' +import { UpdateProjectErrors } from './UpdateProjectErrors.js' @ObjectType() export class UpdateProjectResponse { diff --git a/public-gateway/collaboration/src/types/UpdateSpecialistResponse.ts b/public-gateway/collaboration/src/types/UpdateSpecialistResponse.ts index 1b4a8feb3..938440f9f 100644 --- a/public-gateway/collaboration/src/types/UpdateSpecialistResponse.ts +++ b/public-gateway/collaboration/src/types/UpdateSpecialistResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { SpecialistMember } from './SpecialistMember' -import { UpdateSpecialistErrors } from './UpdateSpecialistErrors' +import { SpecialistMember } from './SpecialistMember.js' +import { UpdateSpecialistErrors } from './UpdateSpecialistErrors.js' @ObjectType() export class UpdateSpecialistResponse { diff --git a/public-gateway/collaboration/src/types/index.ts b/public-gateway/collaboration/src/types/index.ts index fef5d9e4d..cc8987401 100644 --- a/public-gateway/collaboration/src/types/index.ts +++ b/public-gateway/collaboration/src/types/index.ts @@ -1,24 +1,24 @@ -export * from './ConfirmProjectReplyResponse' -export * from './RejectProjectReplyResponse' -export * from './AddDiscussionMessageResponse' -export * from './ChangeAccountTypeResponse' -export * from './PublishProjectResponse' -export * from './CompleteProjectResponse' -export * from './ChooseSpecialistResponse' -export * from './ChangeReplyStatusResponse' -export * from './AddReplyMessageResponse' -export * from './AddProjectReplyResponse' -export * from './UpdateSpecialistResponse' -export * from './CreateProjectResponse' -export * from './UpdateProjectResponse' -export * from './Specialisation' -export * from './SpecialistMember' -export * from './Project' -export * from './ProjectsList' -export * from './SpecialistsList' -export * from './ProjectOwner' -export * from './Specialist' -export * from './Message' -export * from './Reply' -export * from './Review' -export * from './Discussion' +export * from './ConfirmProjectReplyResponse.js' +export * from './RejectProjectReplyResponse.js' +export * from './AddDiscussionMessageResponse.js' +export * from './ChangeAccountTypeResponse.js' +export * from './PublishProjectResponse.js' +export * from './CompleteProjectResponse.js' +export * from './ChooseSpecialistResponse.js' +export * from './ChangeReplyStatusResponse.js' +export * from './AddReplyMessageResponse.js' +export * from './AddProjectReplyResponse.js' +export * from './UpdateSpecialistResponse.js' +export * from './CreateProjectResponse.js' +export * from './UpdateProjectResponse.js' +export * from './Specialisation.js' +export * from './SpecialistMember.js' +export * from './Project.js' +export * from './ProjectsList.js' +export * from './SpecialistsList.js' +export * from './ProjectOwner.js' +export * from './Specialist.js' +export * from './Message.js' +export * from './Reply.js' +export * from './Review.js' +export * from './Discussion.js' diff --git a/public-gateway/files/src/index.ts b/public-gateway/files/src/index.ts index 3e67b59e3..39d3fd00e 100644 --- a/public-gateway/files/src/index.ts +++ b/public-gateway/files/src/index.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common' -import { UploadMutations } from './resolvers' +import { UploadMutations } from './resolvers/index.js' -export * from './types' +export * from './types/index.js' @Module({ providers: [UploadMutations], diff --git a/public-gateway/files/src/inputs/index.ts b/public-gateway/files/src/inputs/index.ts index d876433b8..053b392cd 100644 --- a/public-gateway/files/src/inputs/index.ts +++ b/public-gateway/files/src/inputs/index.ts @@ -1,2 +1,2 @@ -export * from './ConfirmUploadInput' -export * from './CreateUploadInput' +export * from './ConfirmUploadInput.js' +export * from './CreateUploadInput.js' diff --git a/public-gateway/files/src/resolvers/UploadMutations.ts b/public-gateway/files/src/resolvers/UploadMutations.ts index 276678b66..a32d307e5 100644 --- a/public-gateway/files/src/resolvers/UploadMutations.ts +++ b/public-gateway/files/src/resolvers/UploadMutations.ts @@ -8,10 +8,10 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/files' import { files } from '@protos/interfaces' -import { ConfirmUploadInput } from '../inputs' -import { CreateUploadInput } from '../inputs' -import { ConfirmUploadResponse } from '../types' -import { CreateUploadResponse } from '../types' +import { ConfirmUploadInput } from '../inputs/index.js' +import { CreateUploadInput } from '../inputs/index.js' +import { ConfirmUploadResponse } from '../types/index.js' +import { CreateUploadResponse } from '../types/index.js' @Injectable() export class UploadMutations implements OnModuleInit { diff --git a/public-gateway/files/src/resolvers/index.ts b/public-gateway/files/src/resolvers/index.ts index b3ac0c347..e65a1ea0c 100644 --- a/public-gateway/files/src/resolvers/index.ts +++ b/public-gateway/files/src/resolvers/index.ts @@ -1 +1 @@ -export * from './UploadMutations' +export * from './UploadMutations.js' diff --git a/public-gateway/files/src/types/ConfirmUploadResponse.ts b/public-gateway/files/src/types/ConfirmUploadResponse.ts index 3a186bc1d..f46da9bd0 100644 --- a/public-gateway/files/src/types/ConfirmUploadResponse.ts +++ b/public-gateway/files/src/types/ConfirmUploadResponse.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { File } from './File' +import { File } from './File.js' @ObjectType() export class ConfirmUploadResponse { diff --git a/public-gateway/files/src/types/CreateUploadResponse.ts b/public-gateway/files/src/types/CreateUploadResponse.ts index 69f15c9ce..f5336c803 100644 --- a/public-gateway/files/src/types/CreateUploadResponse.ts +++ b/public-gateway/files/src/types/CreateUploadResponse.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Upload } from './Upload' +import { Upload } from './Upload.js' @ObjectType() export class CreateUploadResponse { diff --git a/public-gateway/files/src/types/Upload.ts b/public-gateway/files/src/types/Upload.ts index 534e3c2b2..00444b076 100644 --- a/public-gateway/files/src/types/Upload.ts +++ b/public-gateway/files/src/types/Upload.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { UploadField } from './UploadField' +import { UploadField } from './UploadField.js' @ObjectType() export class Upload { diff --git a/public-gateway/files/src/types/index.ts b/public-gateway/files/src/types/index.ts index d6a9c1a7c..45553b1f7 100644 --- a/public-gateway/files/src/types/index.ts +++ b/public-gateway/files/src/types/index.ts @@ -1,3 +1,3 @@ -export * from './ConfirmUploadResponse' -export * from './CreateUploadResponse' -export * from './File' +export * from './ConfirmUploadResponse.js' +export * from './CreateUploadResponse.js' +export * from './File.js' diff --git a/public-gateway/identity/src/index.ts b/public-gateway/identity/src/index.ts index b6f371d8f..8ba099462 100644 --- a/public-gateway/identity/src/index.ts +++ b/public-gateway/identity/src/index.ts @@ -1,15 +1,15 @@ import { Module } from '@nestjs/common' -import { DiscussionsResolver } from './resolvers' -import { IdentityQueries } from './resolvers' -import { MemberResolver } from './resolvers' -import { PortfolioResolver } from './resolvers' -import { ProfileMutations } from './resolvers' -import { ProfilePhotoResolver } from './resolvers' -import { ProjectsResolver } from './resolvers' -import { RepliesResolver } from './resolvers' +import { DiscussionsResolver } from './resolvers/index.js' +import { IdentityQueries } from './resolvers/index.js' +import { MemberResolver } from './resolvers/index.js' +import { PortfolioResolver } from './resolvers/index.js' +import { ProfileMutations } from './resolvers/index.js' +import { ProfilePhotoResolver } from './resolvers/index.js' +import { ProjectsResolver } from './resolvers/index.js' +import { RepliesResolver } from './resolvers/index.js' -export * from './types' +export * from './types/index.js' @Module({ providers: [ diff --git a/public-gateway/identity/src/inputs/index.ts b/public-gateway/identity/src/inputs/index.ts index 4b74c1ea8..c76d6863a 100644 --- a/public-gateway/identity/src/inputs/index.ts +++ b/public-gateway/identity/src/inputs/index.ts @@ -1 +1 @@ -export * from './UpdateProfileInput' +export * from './UpdateProfileInput.js' diff --git a/public-gateway/identity/src/resolvers/DiscussionsResolver.ts b/public-gateway/identity/src/resolvers/DiscussionsResolver.ts index ce6858d75..fda343051 100644 --- a/public-gateway/identity/src/resolvers/DiscussionsResolver.ts +++ b/public-gateway/identity/src/resolvers/DiscussionsResolver.ts @@ -10,7 +10,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { User } from '../types' +import { User } from '../types/index.js' @Injectable() @Resolver((of) => User) diff --git a/public-gateway/identity/src/resolvers/IdentityQueries.ts b/public-gateway/identity/src/resolvers/IdentityQueries.ts index 658ec625f..e9725aea1 100644 --- a/public-gateway/identity/src/resolvers/IdentityQueries.ts +++ b/public-gateway/identity/src/resolvers/IdentityQueries.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/identity' import { identity } from '@protos/interfaces' -import { User } from '../types' +import { User } from '../types/index.js' @Injectable() export class IdentityQueries implements OnModuleInit { diff --git a/public-gateway/identity/src/resolvers/MemberResolver.ts b/public-gateway/identity/src/resolvers/MemberResolver.ts index 5b8282564..923dd0cc1 100644 --- a/public-gateway/identity/src/resolvers/MemberResolver.ts +++ b/public-gateway/identity/src/resolvers/MemberResolver.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { User } from '../types' +import { User } from '../types/index.js' @Injectable() @Resolver((of) => User) diff --git a/public-gateway/identity/src/resolvers/PortfolioResolver.ts b/public-gateway/identity/src/resolvers/PortfolioResolver.ts index 8cd3ea7ab..39d64a4ed 100644 --- a/public-gateway/identity/src/resolvers/PortfolioResolver.ts +++ b/public-gateway/identity/src/resolvers/PortfolioResolver.ts @@ -12,7 +12,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { portfolio } from '@protos/interfaces' import { clientOptions } from '@protos/portfolio' -import { User } from '../types' +import { User } from '../types/index.js' @Injectable() @Resolver((of) => User) diff --git a/public-gateway/identity/src/resolvers/ProfileMutations.ts b/public-gateway/identity/src/resolvers/ProfileMutations.ts index a968ddba4..c50d069bb 100644 --- a/public-gateway/identity/src/resolvers/ProfileMutations.ts +++ b/public-gateway/identity/src/resolvers/ProfileMutations.ts @@ -9,8 +9,8 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/identity' import { identity } from '@protos/interfaces' -import { UpdateProfileInput } from '../inputs' -import { UpdateProfileResponse } from '../types' +import { UpdateProfileInput } from '../inputs/index.js' +import { UpdateProfileResponse } from '../types/index.js' @Injectable() export class ProfileMutations implements OnModuleInit { diff --git a/public-gateway/identity/src/resolvers/ProfilePhotoResolver.ts b/public-gateway/identity/src/resolvers/ProfilePhotoResolver.ts index 72c43b612..d4311d531 100644 --- a/public-gateway/identity/src/resolvers/ProfilePhotoResolver.ts +++ b/public-gateway/identity/src/resolvers/ProfilePhotoResolver.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/files' import { files } from '@protos/interfaces' -import { Profile } from '../types' +import { Profile } from '../types/index.js' @Injectable() @Resolver((of) => Profile) diff --git a/public-gateway/identity/src/resolvers/ProjectsResolver.ts b/public-gateway/identity/src/resolvers/ProjectsResolver.ts index c550a59e2..2976fc41d 100644 --- a/public-gateway/identity/src/resolvers/ProjectsResolver.ts +++ b/public-gateway/identity/src/resolvers/ProjectsResolver.ts @@ -12,7 +12,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { User } from '../types' +import { User } from '../types/index.js' @Injectable() @Resolver((of) => User) diff --git a/public-gateway/identity/src/resolvers/RepliesResolver.ts b/public-gateway/identity/src/resolvers/RepliesResolver.ts index 36f46c220..c2cf4c732 100644 --- a/public-gateway/identity/src/resolvers/RepliesResolver.ts +++ b/public-gateway/identity/src/resolvers/RepliesResolver.ts @@ -12,7 +12,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/collaboration' import { collaboration } from '@protos/interfaces' -import { User } from '../types' +import { User } from '../types/index.js' @Injectable() @Resolver((of) => User) diff --git a/public-gateway/identity/src/resolvers/index.ts b/public-gateway/identity/src/resolvers/index.ts index aae184ece..9a64b7f7a 100644 --- a/public-gateway/identity/src/resolvers/index.ts +++ b/public-gateway/identity/src/resolvers/index.ts @@ -1,8 +1,8 @@ -export * from './IdentityQueries' -export * from './PortfolioResolver' -export * from './ProfileMutations' -export * from './ProfilePhotoResolver' -export * from './MemberResolver' -export * from './ProjectsResolver' -export * from './RepliesResolver' -export * from './DiscussionsResolver' +export * from './IdentityQueries.js' +export * from './PortfolioResolver.js' +export * from './ProfileMutations.js' +export * from './ProfilePhotoResolver.js' +export * from './MemberResolver.js' +export * from './ProjectsResolver.js' +export * from './RepliesResolver.js' +export * from './DiscussionsResolver.js' diff --git a/public-gateway/identity/src/types/ContactInformation.ts b/public-gateway/identity/src/types/ContactInformation.ts index 025a07a5a..b24c8b545 100644 --- a/public-gateway/identity/src/types/ContactInformation.ts +++ b/public-gateway/identity/src/types/ContactInformation.ts @@ -1,7 +1,7 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Phone } from './Phone' +import { Phone } from './Phone.js' @ObjectType() export class ContactInformation { diff --git a/public-gateway/identity/src/types/Profile.ts b/public-gateway/identity/src/types/Profile.ts index 33a369219..87aa4e0bd 100644 --- a/public-gateway/identity/src/types/Profile.ts +++ b/public-gateway/identity/src/types/Profile.ts @@ -1,10 +1,10 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Address } from './Address' -import { ContactInformation } from './ContactInformation' -import { PersonalInformation } from './PersonalInformation' -import { Photo } from './Photo' +import { Address } from './Address.js' +import { ContactInformation } from './ContactInformation.js' +import { PersonalInformation } from './PersonalInformation.js' +import { Photo } from './Photo.js' @ObjectType() export class Profile { diff --git a/public-gateway/identity/src/types/UpdateProfileResponse.ts b/public-gateway/identity/src/types/UpdateProfileResponse.ts index dc5e2c7e7..42f50b90e 100644 --- a/public-gateway/identity/src/types/UpdateProfileResponse.ts +++ b/public-gateway/identity/src/types/UpdateProfileResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Profile } from './Profile' -import { UpdateProfileErrors } from './UpdateProfileErrors' +import { Profile } from './Profile.js' +import { UpdateProfileErrors } from './UpdateProfileErrors.js' @ObjectType() export class UpdateProfileResponse { diff --git a/public-gateway/identity/src/types/User.ts b/public-gateway/identity/src/types/User.ts index 7c31761a6..5834a74d6 100644 --- a/public-gateway/identity/src/types/User.ts +++ b/public-gateway/identity/src/types/User.ts @@ -6,8 +6,8 @@ import { Reply } from '@public-gateway/collaboration' import { SpecialistMember } from '@public-gateway/collaboration/src/types/SpecialistMember' import { Portfolio } from '@public-gateway/portfolio' -import { Email } from './Email' -import { Profile } from './Profile' +import { Email } from './Email.js' +import { Profile } from './Profile.js' @ObjectType() export class User { diff --git a/public-gateway/identity/src/types/index.ts b/public-gateway/identity/src/types/index.ts index dc1f65295..79158c812 100644 --- a/public-gateway/identity/src/types/index.ts +++ b/public-gateway/identity/src/types/index.ts @@ -1,3 +1,3 @@ -export * from './UpdateProfileResponse' -export * from './Profile' -export * from './User' +export * from './UpdateProfileResponse.js' +export * from './Profile.js' +export * from './User.js' diff --git a/public-gateway/portfolio/src/dataloaders/ImageLoader.ts b/public-gateway/portfolio/src/dataloaders/ImageLoader.ts index 335509f94..6ed3e8fe1 100644 --- a/public-gateway/portfolio/src/dataloaders/ImageLoader.ts +++ b/public-gateway/portfolio/src/dataloaders/ImageLoader.ts @@ -9,7 +9,7 @@ import { ClientGrpc } from '@nestjs/microservices' import { clientOptions } from '@protos/files' import { files } from '@protos/interfaces' -import { orderResultByKey } from './orderResultByKey' +import { orderResultByKey } from './orderResultByKey.js' @Injectable() export class ImageLoader implements NestDataLoader, OnModuleInit { diff --git a/public-gateway/portfolio/src/dataloaders/index.ts b/public-gateway/portfolio/src/dataloaders/index.ts index ca8301030..3d2fc8a90 100644 --- a/public-gateway/portfolio/src/dataloaders/index.ts +++ b/public-gateway/portfolio/src/dataloaders/index.ts @@ -1 +1 @@ -export * from './ImageLoader' +export * from './ImageLoader.js' diff --git a/public-gateway/portfolio/src/index.ts b/public-gateway/portfolio/src/index.ts index 8112b855c..a5512a71b 100644 --- a/public-gateway/portfolio/src/index.ts +++ b/public-gateway/portfolio/src/index.ts @@ -1,10 +1,10 @@ import { Module } from '@nestjs/common' -import { ImageLoader } from './dataloaders' -import { PortfolioMutations } from './resolvers' -import { PortfolioResolver } from './resolvers' +import { ImageLoader } from './dataloaders/index.js' +import { PortfolioMutations } from './resolvers/index.js' +import { PortfolioResolver } from './resolvers/index.js' -export * from './types' +export * from './types/index.js' const loaderProviders = [ImageLoader] diff --git a/public-gateway/portfolio/src/inputs/index.ts b/public-gateway/portfolio/src/inputs/index.ts index 98e192804..2a4063560 100644 --- a/public-gateway/portfolio/src/inputs/index.ts +++ b/public-gateway/portfolio/src/inputs/index.ts @@ -1,2 +1,2 @@ -export * from './CreatePortfolioInput' -export * from './UpdatePortfolioInput' +export * from './CreatePortfolioInput.js' +export * from './UpdatePortfolioInput.js' diff --git a/public-gateway/portfolio/src/resolvers/PortfolioMutations.ts b/public-gateway/portfolio/src/resolvers/PortfolioMutations.ts index 765a6a16c..bae4162db 100644 --- a/public-gateway/portfolio/src/resolvers/PortfolioMutations.ts +++ b/public-gateway/portfolio/src/resolvers/PortfolioMutations.ts @@ -9,10 +9,10 @@ import { ClientGrpc } from '@nestjs/microservices' import { portfolio } from '@protos/interfaces' import { clientOptions } from '@protos/portfolio' -import { CreatePortfolioInput } from '../inputs' -import { UpdatePortfolioInput } from '../inputs' -import { CreatePortfolioResponse } from '../types' -import { UpdatePortfolioResponse } from '../types' +import { CreatePortfolioInput } from '../inputs/index.js' +import { UpdatePortfolioInput } from '../inputs/index.js' +import { CreatePortfolioResponse } from '../types/index.js' +import { UpdatePortfolioResponse } from '../types/index.js' @Injectable() export class PortfolioMutations implements OnModuleInit { diff --git a/public-gateway/portfolio/src/resolvers/PortfolioResolver.ts b/public-gateway/portfolio/src/resolvers/PortfolioResolver.ts index f29a0fa42..b683f1f74 100644 --- a/public-gateway/portfolio/src/resolvers/PortfolioResolver.ts +++ b/public-gateway/portfolio/src/resolvers/PortfolioResolver.ts @@ -8,8 +8,8 @@ import { Root } from '@nestjs/graphql' import { File } from '@public-gateway/files' import { portfolio } from '@protos/interfaces' -import { ImageLoader } from '../dataloaders' -import { Portfolio } from '../types' +import { ImageLoader } from '../dataloaders/index.js' +import { Portfolio } from '../types/index.js' @Injectable() @Resolver((of) => Portfolio) diff --git a/public-gateway/portfolio/src/resolvers/index.ts b/public-gateway/portfolio/src/resolvers/index.ts index 37cb04c68..1d36522f7 100644 --- a/public-gateway/portfolio/src/resolvers/index.ts +++ b/public-gateway/portfolio/src/resolvers/index.ts @@ -1,2 +1,2 @@ -export * from './PortfolioMutations' -export * from './PortfolioResolver' +export * from './PortfolioMutations.js' +export * from './PortfolioResolver.js' diff --git a/public-gateway/portfolio/src/types/CreatePortfolioResponse.ts b/public-gateway/portfolio/src/types/CreatePortfolioResponse.ts index 39f81c985..6e135a7cc 100644 --- a/public-gateway/portfolio/src/types/CreatePortfolioResponse.ts +++ b/public-gateway/portfolio/src/types/CreatePortfolioResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { CreatePortfolioErrors } from './CreatePortfolioErrors' -import { Portfolio } from './Portfolio' +import { CreatePortfolioErrors } from './CreatePortfolioErrors.js' +import { Portfolio } from './Portfolio.js' @ObjectType() export class CreatePortfolioResponse { diff --git a/public-gateway/portfolio/src/types/UpdatePortfolioResponse.ts b/public-gateway/portfolio/src/types/UpdatePortfolioResponse.ts index 4152fa786..fdaedf2ca 100644 --- a/public-gateway/portfolio/src/types/UpdatePortfolioResponse.ts +++ b/public-gateway/portfolio/src/types/UpdatePortfolioResponse.ts @@ -1,8 +1,8 @@ import { Field } from '@nestjs/graphql' import { ObjectType } from '@nestjs/graphql' -import { Portfolio } from './Portfolio' -import { UpdatePortfolioErrors } from './UpdatePortfolioErrors' +import { Portfolio } from './Portfolio.js' +import { UpdatePortfolioErrors } from './UpdatePortfolioErrors.js' @ObjectType() export class UpdatePortfolioResponse { diff --git a/public-gateway/portfolio/src/types/index.ts b/public-gateway/portfolio/src/types/index.ts index 97be091dc..4c3614088 100644 --- a/public-gateway/portfolio/src/types/index.ts +++ b/public-gateway/portfolio/src/types/index.ts @@ -1,3 +1,3 @@ -export * from './UpdatePortfolioResponse' -export * from './CreatePortfolioResponse' -export * from './Portfolio' +export * from './UpdatePortfolioResponse.js' +export * from './CreatePortfolioResponse.js' +export * from './Portfolio.js' diff --git a/public-gateway/search/src/index.ts b/public-gateway/search/src/index.ts index ed55111ea..f5c0a0c6f 100644 --- a/public-gateway/search/src/index.ts +++ b/public-gateway/search/src/index.ts @@ -1,10 +1,10 @@ import { Module } from '@nestjs/common' -import { ProjectsSearchResolver } from './resolvers' -import { SearchQueries } from './resolvers' -import { SpecialistsSearchResolver } from './resolvers' +import { ProjectsSearchResolver } from './resolvers/index.js' +import { SearchQueries } from './resolvers/index.js' +import { SpecialistsSearchResolver } from './resolvers/index.js' -export * from './types' +export * from './types/index.js' @Module({ providers: [SearchQueries, ProjectsSearchResolver, SpecialistsSearchResolver], diff --git a/public-gateway/search/src/inputs/index.ts b/public-gateway/search/src/inputs/index.ts index 654f69431..6e1db21b5 100644 --- a/public-gateway/search/src/inputs/index.ts +++ b/public-gateway/search/src/inputs/index.ts @@ -1,2 +1,2 @@ -export * from './SearchProjectsFilter' -export * from './SearchSpecialistsFilter' +export * from './SearchProjectsFilter.js' +export * from './SearchSpecialistsFilter.js' diff --git a/public-gateway/search/src/resolvers/ProjectsSearchResolver.ts b/public-gateway/search/src/resolvers/ProjectsSearchResolver.ts index 17f73bc4a..163ba5813 100644 --- a/public-gateway/search/src/resolvers/ProjectsSearchResolver.ts +++ b/public-gateway/search/src/resolvers/ProjectsSearchResolver.ts @@ -12,8 +12,8 @@ import { collaboration } from '@protos/interfaces' import { search } from '@protos/interfaces' import { clientOptions as searchClientOptions } from '@protos/search' -import { SearchProjectsFilter } from '../inputs' -import { Search } from '../types' +import { SearchProjectsFilter } from '../inputs/index.js' +import { Search } from '../types/index.js' @Injectable() @Resolver((of) => Search) diff --git a/public-gateway/search/src/resolvers/SearchQueries.ts b/public-gateway/search/src/resolvers/SearchQueries.ts index 4145bff8d..ea73262fe 100644 --- a/public-gateway/search/src/resolvers/SearchQueries.ts +++ b/public-gateway/search/src/resolvers/SearchQueries.ts @@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common' import { Query } from '@nestjs/graphql' -import { Search } from '../types' +import { Search } from '../types/index.js' @Injectable() export class SearchQueries { diff --git a/public-gateway/search/src/resolvers/SpecialistsSearchResolver.ts b/public-gateway/search/src/resolvers/SpecialistsSearchResolver.ts index 7e2859362..db6dc36dc 100644 --- a/public-gateway/search/src/resolvers/SpecialistsSearchResolver.ts +++ b/public-gateway/search/src/resolvers/SpecialistsSearchResolver.ts @@ -12,8 +12,8 @@ import { collaboration } from '@protos/interfaces' import { search } from '@protos/interfaces' import { clientOptions as searchClientOptions } from '@protos/search' -import { SearchSpecialistsFilter } from '../inputs' -import { Search } from '../types' +import { SearchSpecialistsFilter } from '../inputs/index.js' +import { Search } from '../types/index.js' @Injectable() @Resolver((of) => Search) diff --git a/public-gateway/search/src/resolvers/index.ts b/public-gateway/search/src/resolvers/index.ts index 5d522c9b5..94db83e21 100644 --- a/public-gateway/search/src/resolvers/index.ts +++ b/public-gateway/search/src/resolvers/index.ts @@ -1,3 +1,3 @@ -export * from './SpecialistsSearchResolver' -export * from './ProjectsSearchResolver' -export * from './SearchQueries' +export * from './SpecialistsSearchResolver.js' +export * from './ProjectsSearchResolver.js' +export * from './SearchQueries.js' diff --git a/public-gateway/search/src/types/index.ts b/public-gateway/search/src/types/index.ts index 354d403d1..94859d84e 100644 --- a/public-gateway/search/src/types/index.ts +++ b/public-gateway/search/src/types/index.ts @@ -1 +1 @@ -export * from './Search' +export * from './Search.js' diff --git a/public-gateway/types/src/index.ts b/public-gateway/types/src/index.ts index 27623357c..dce4c0ce1 100644 --- a/public-gateway/types/src/index.ts +++ b/public-gateway/types/src/index.ts @@ -1,2 +1,2 @@ -export * from './inputs' -export * from './types' +export * from './inputs/index.js' +export * from './types/index.js' diff --git a/public-gateway/types/src/inputs/index.ts b/public-gateway/types/src/inputs/index.ts index f6171342f..4c3e7f736 100644 --- a/public-gateway/types/src/inputs/index.ts +++ b/public-gateway/types/src/inputs/index.ts @@ -1 +1 @@ -export * from './Order' +export * from './Order.js' diff --git a/public-gateway/types/src/types/index.ts b/public-gateway/types/src/types/index.ts index 660ef66b8..28b1ba88b 100644 --- a/public-gateway/types/src/types/index.ts +++ b/public-gateway/types/src/types/index.ts @@ -1 +1 @@ -export * from './PageInfo' +export * from './PageInfo.js' diff --git a/public-gateway/utils/src/index.ts b/public-gateway/utils/src/index.ts index 4ce66d5e1..c123d8df1 100644 --- a/public-gateway/utils/src/index.ts +++ b/public-gateway/utils/src/index.ts @@ -1,2 +1,2 @@ -export * from './interfaces' -export * from './pipes' +export * from './interfaces/index.js' +export * from './pipes/index.js' diff --git a/public-gateway/utils/src/interfaces/index.ts b/public-gateway/utils/src/interfaces/index.ts index 7c790c9da..6c9a7e264 100644 --- a/public-gateway/utils/src/interfaces/index.ts +++ b/public-gateway/utils/src/interfaces/index.ts @@ -1 +1 @@ -export * from './Pager' +export * from './Pager.js' diff --git a/public-gateway/utils/src/pipes/index.ts b/public-gateway/utils/src/pipes/index.ts index 8fda6b309..50c6ee89d 100644 --- a/public-gateway/utils/src/pipes/index.ts +++ b/public-gateway/utils/src/pipes/index.ts @@ -1 +1 @@ -export * from './OffsetToPagerPipe' +export * from './OffsetToPagerPipe.js' diff --git a/search/service/src/controllers/index.ts b/search/service/src/controllers/index.ts index 25e2f4331..021d30698 100644 --- a/search/service/src/controllers/index.ts +++ b/search/service/src/controllers/index.ts @@ -1,2 +1,2 @@ -export * from './project-search.controller' -export * from './specialist-search.controller' +export * from './project-search.controller.js' +export * from './specialist-search.controller.js' diff --git a/search/service/src/handlers/index.ts b/search/service/src/handlers/index.ts index 27401fad1..60d9f70cb 100644 --- a/search/service/src/handlers/index.ts +++ b/search/service/src/handlers/index.ts @@ -1,7 +1,7 @@ -export * from './specialist-updated.handler' -export * from './project-created.handler' -export * from './project-updated.handler' -export * from './project-published.handler' -export * from './project-completed.handler' -export * from './project-reply-rejected.handler' -export * from './project-reply-confirmed.handler' +export * from './specialist-updated.handler.js' +export * from './project-created.handler.js' +export * from './project-updated.handler.js' +export * from './project-published.handler.js' +export * from './project-completed.handler.js' +export * from './project-reply-rejected.handler.js' +export * from './project-reply-confirmed.handler.js' diff --git a/search/service/src/handlers/project-completed.handler.ts b/search/service/src/handlers/project-completed.handler.ts index bbce4f16a..887c2fb4c 100644 --- a/search/service/src/handlers/project-completed.handler.ts +++ b/search/service/src/handlers/project-completed.handler.ts @@ -2,7 +2,7 @@ import { ProjectCompleted } from '@collaboration/domain' import { HandlesMessage } from '@monstrs/nestjs-bus' import { Handler } from '@node-ts/bus-core' -import { ProjectDataService } from '../services' +import { ProjectDataService } from '../services/index.js' @HandlesMessage(ProjectCompleted) export class ProjectCompletedHandler implements Handler { diff --git a/search/service/src/handlers/project-created.handler.ts b/search/service/src/handlers/project-created.handler.ts index d3f59c4ce..7c3de01b0 100644 --- a/search/service/src/handlers/project-created.handler.ts +++ b/search/service/src/handlers/project-created.handler.ts @@ -2,7 +2,7 @@ import { ProjectCreated } from '@collaboration/domain' import { HandlesMessage } from '@monstrs/nestjs-bus' import { Handler } from '@node-ts/bus-core' -import { ProjectDataService } from '../services' +import { ProjectDataService } from '../services/index.js' @HandlesMessage(ProjectCreated) export class ProjectCreatedHandler implements Handler { diff --git a/search/service/src/handlers/project-published.handler.ts b/search/service/src/handlers/project-published.handler.ts index 29d12b5c6..63c9ad42f 100644 --- a/search/service/src/handlers/project-published.handler.ts +++ b/search/service/src/handlers/project-published.handler.ts @@ -2,7 +2,7 @@ import { ProjectPublished } from '@collaboration/domain' import { HandlesMessage } from '@monstrs/nestjs-bus' import { Handler } from '@node-ts/bus-core' -import { ProjectDataService } from '../services' +import { ProjectDataService } from '../services/index.js' @HandlesMessage(ProjectPublished) export class ProjectPublishedHandler implements Handler { diff --git a/search/service/src/handlers/project-reply-confirmed.handler.ts b/search/service/src/handlers/project-reply-confirmed.handler.ts index 801d55741..208a632fa 100644 --- a/search/service/src/handlers/project-reply-confirmed.handler.ts +++ b/search/service/src/handlers/project-reply-confirmed.handler.ts @@ -2,7 +2,7 @@ import { ProjectReplyConfirmed } from '@collaboration/domain' import { HandlesMessage } from '@monstrs/nestjs-bus' import { Handler } from '@node-ts/bus-core' -import { ProjectDataService } from '../services' +import { ProjectDataService } from '../services/index.js' @HandlesMessage(ProjectReplyConfirmed) export class ProjectReplyConfirmedHandler implements Handler { diff --git a/search/service/src/handlers/project-reply-rejected.handler.ts b/search/service/src/handlers/project-reply-rejected.handler.ts index 022eaca8e..f479c7fba 100644 --- a/search/service/src/handlers/project-reply-rejected.handler.ts +++ b/search/service/src/handlers/project-reply-rejected.handler.ts @@ -2,7 +2,7 @@ import { ProjectReplyRejected } from '@collaboration/domain' import { HandlesMessage } from '@monstrs/nestjs-bus' import { Handler } from '@node-ts/bus-core' -import { ProjectDataService } from '../services' +import { ProjectDataService } from '../services/index.js' @HandlesMessage(ProjectReplyRejected) export class ProjectReplyRejectedHandler implements Handler { diff --git a/search/service/src/handlers/project-updated.handler.ts b/search/service/src/handlers/project-updated.handler.ts index 434533bc7..6765ddf40 100644 --- a/search/service/src/handlers/project-updated.handler.ts +++ b/search/service/src/handlers/project-updated.handler.ts @@ -2,7 +2,7 @@ import { ProjectUpdated } from '@collaboration/domain' import { HandlesMessage } from '@monstrs/nestjs-bus' import { Handler } from '@node-ts/bus-core' -import { ProjectDataService } from '../services' +import { ProjectDataService } from '../services/index.js' @HandlesMessage(ProjectUpdated) export class ProjectUpdatedHandler implements Handler { diff --git a/search/service/src/handlers/specialist-updated.handler.ts b/search/service/src/handlers/specialist-updated.handler.ts index b8fc96836..c98a83958 100644 --- a/search/service/src/handlers/specialist-updated.handler.ts +++ b/search/service/src/handlers/specialist-updated.handler.ts @@ -2,7 +2,7 @@ import { SpecialistUpdated } from '@collaboration/domain' import { HandlesMessage } from '@monstrs/nestjs-bus' import { Handler } from '@node-ts/bus-core' -import { SpecialistDataService } from '../services' +import { SpecialistDataService } from '../services/index.js' @HandlesMessage(SpecialistUpdated) export class SpecialistUpdatedHandler implements Handler { diff --git a/search/service/src/index.ts b/search/service/src/index.ts index 1391a3ee8..f11adaef7 100644 --- a/search/service/src/index.ts +++ b/search/service/src/index.ts @@ -1,7 +1,7 @@ import { NestFactory } from '@nestjs/core' import { serverOptions } from '@protos/search' -import { ServiceModule } from './module' +import { ServiceModule } from './module.js' declare const module: any diff --git a/search/service/src/module.ts b/search/service/src/module.ts index e6298a271..2765ab787 100644 --- a/search/service/src/module.ts +++ b/search/service/src/module.ts @@ -1,19 +1,19 @@ import { Module } from '@nestjs/common' import { ElasticsearchModule } from '@nestjs/elasticsearch' -import { ProjectSearchController } from './controllers' -import { SpecialistSearchController } from './controllers' -import { ProjectCompletedHandler } from './handlers' -import { ProjectCreatedHandler } from './handlers' -import { ProjectPublishedHandler } from './handlers' -import { ProjectReplyConfirmedHandler } from './handlers' -import { ProjectReplyRejectedHandler } from './handlers' -import { ProjectUpdatedHandler } from './handlers' -import { SpecialistUpdatedHandler } from './handlers' -import { ProjectDataService } from './services' -import { ProjectIndexService } from './services' -import { SpecialistDataService } from './services' -import { SpecialistIndexService } from './services' +import { ProjectSearchController } from './controllers/index.js' +import { SpecialistSearchController } from './controllers/index.js' +import { ProjectCompletedHandler } from './handlers/index.js' +import { ProjectCreatedHandler } from './handlers/index.js' +import { ProjectPublishedHandler } from './handlers/index.js' +import { ProjectReplyConfirmedHandler } from './handlers/index.js' +import { ProjectReplyRejectedHandler } from './handlers/index.js' +import { ProjectUpdatedHandler } from './handlers/index.js' +import { SpecialistUpdatedHandler } from './handlers/index.js' +import { ProjectDataService } from './services/index.js' +import { ProjectIndexService } from './services/index.js' +import { SpecialistDataService } from './services/index.js' +import { SpecialistIndexService } from './services/index.js' @Module({ imports: [ diff --git a/search/service/src/services/index.ts b/search/service/src/services/index.ts index 7d61c9472..dabd00f45 100644 --- a/search/service/src/services/index.ts +++ b/search/service/src/services/index.ts @@ -1,4 +1,4 @@ -export * from './project-index.service' -export * from './project-data.service' -export * from './specialist-index.service' -export * from './specialist-data.service' +export * from './project-index.service.js' +export * from './project-data.service.js' +export * from './specialist-index.service.js' +export * from './specialist-data.service.js' diff --git a/site/entrypoints/renderer/src/index.ts b/site/entrypoints/renderer/src/index.ts index 5e1dd0c2d..226c29f00 100644 --- a/site/entrypoints/renderer/src/index.ts +++ b/site/entrypoints/renderer/src/index.ts @@ -6,7 +6,7 @@ import path from 'path' const bootstrap = async () => { const app = next({ dev: process.env.NODE_ENV !== 'production', - dir: process.env.NODE_ENV !== 'production' ? path.join(__dirname, '../src') : __dirname, + dir: process.env.NODE_ENV !== 'production' ? path.join(__dirname, '../src/index.js') : __dirname, }) const handle = app.getRequestHandler() diff --git a/site/entrypoints/renderer/src/pages/_app.tsx b/site/entrypoints/renderer/src/pages/_app.tsx index 9b5bfcadb..e085e0f29 100644 --- a/site/entrypoints/renderer/src/pages/_app.tsx +++ b/site/entrypoints/renderer/src/pages/_app.tsx @@ -11,10 +11,10 @@ import { ThemeProvider } from '@ui/theme' import { withProvider } from '@atls/next-app-with-provider' import { injectGlobalStyles } from '@ui/theme' -import { withAuth } from '../providers' -import { withEmotion } from '../providers' -import { withUser } from '../providers' -import { withIntl } from '../providers' +import { withAuth } from '../providers/index.js' +import { withEmotion } from '../providers/index.js' +import { withUser } from '../providers/index.js' +import { withIntl } from '../providers/index.js' const nextHeadModule: any = require('next/head') diff --git a/site/entrypoints/renderer/src/providers/index.ts b/site/entrypoints/renderer/src/providers/index.ts index 79b96ddd1..b83b3fc1a 100644 --- a/site/entrypoints/renderer/src/providers/index.ts +++ b/site/entrypoints/renderer/src/providers/index.ts @@ -1,4 +1,4 @@ -export * from './with-emotion' -export * from './with-user' -export * from './with-auth' -export * from './with-intl' +export * from './with-emotion.js' +export * from './with-user.js' +export * from './with-auth.js' +export * from './with-intl.js' diff --git a/site/fragments/catalog/src/__tests__/Catalog.test.tsx b/site/fragments/catalog/src/__tests__/Catalog.test.tsx index 1588dae46..feae2aa07 100644 --- a/site/fragments/catalog/src/__tests__/Catalog.test.tsx +++ b/site/fragments/catalog/src/__tests__/Catalog.test.tsx @@ -8,7 +8,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { query } from '../useData' +import { query } from '../useData.js' import Catalog from '..' const mocks = [ diff --git a/site/fragments/catalog/src/index.tsx b/site/fragments/catalog/src/index.tsx index 9af860eb6..0cc0fd5fc 100644 --- a/site/fragments/catalog/src/index.tsx +++ b/site/fragments/catalog/src/index.tsx @@ -4,8 +4,8 @@ import { Box } from '@ui/layout' import { useDrawer } from '@ui/drawer' import { useWindowSize } from '@ui/utils' -import { Desktop } from './Desktop' -import { useData } from './useData' +import { Desktop } from './Desktop.js' +import { useData } from './useData.js' const CatalogFragment = () => { const { visible } = useDrawer('catalog') diff --git a/site/fragments/filters/src/__tests__/Filters.test.tsx b/site/fragments/filters/src/__tests__/Filters.test.tsx index 18e11c4e1..a820a9cea 100644 --- a/site/fragments/filters/src/__tests__/Filters.test.tsx +++ b/site/fragments/filters/src/__tests__/Filters.test.tsx @@ -8,7 +8,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { query } from '../useData' +import { query } from '../useData.js' import Filters from '..' const mocks = [ diff --git a/site/fragments/filters/src/index.tsx b/site/fragments/filters/src/index.tsx index df55c8ab8..8258defa4 100644 --- a/site/fragments/filters/src/index.tsx +++ b/site/fragments/filters/src/index.tsx @@ -2,8 +2,8 @@ import { useEffect } from 'react' import { useState } from 'react' import React from 'react' -import { Filters } from './Filters' -import { useData } from './useData' +import { Filters } from './Filters.js' +import { useData } from './useData.js' const doNothing = () => { // do nothing diff --git a/site/fragments/footer/src/index.tsx b/site/fragments/footer/src/index.tsx index b9657faba..aa78bab7f 100644 --- a/site/fragments/footer/src/index.tsx +++ b/site/fragments/footer/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { Footer } from './Footer' +import { Footer } from './Footer.js' const FooterFragment = () => { const intl = useIntl() diff --git a/site/fragments/main/src/Main.tsx b/site/fragments/main/src/Main.tsx index 6e6ec6887..f8b2586d2 100644 --- a/site/fragments/main/src/Main.tsx +++ b/site/fragments/main/src/Main.tsx @@ -8,7 +8,7 @@ import { OptGroup } from '@ui/search' import { Search } from '@ui/search' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' const doNothing = (...args) => { // do nothing diff --git a/site/fragments/main/src/__tests__/Main.test.tsx b/site/fragments/main/src/__tests__/Main.test.tsx index cd6419297..37f4a2484 100644 --- a/site/fragments/main/src/__tests__/Main.test.tsx +++ b/site/fragments/main/src/__tests__/Main.test.tsx @@ -10,7 +10,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { Main } from '../Main' +import { Main } from '../Main.js' const TestComponent = () => { const intl = useIntl() diff --git a/site/fragments/main/src/index.tsx b/site/fragments/main/src/index.tsx index d49615b20..cf128a1b0 100644 --- a/site/fragments/main/src/index.tsx +++ b/site/fragments/main/src/index.tsx @@ -3,8 +3,8 @@ import { useCallback } from 'react' import { useIntl } from 'react-intl' import React from 'react' -import { Main } from './Main' -import { useData } from './useData' +import { Main } from './Main.js' +import { useData } from './useData.js' const MainFragment = () => { const intl = useIntl() diff --git a/site/fragments/navigation/src/Drawer.tsx b/site/fragments/navigation/src/Drawer.tsx index 9082c8837..26015b14a 100644 --- a/site/fragments/navigation/src/Drawer.tsx +++ b/site/fragments/navigation/src/Drawer.tsx @@ -10,7 +10,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import { NextLink as Link } from '@ui/link' -import messages from './messages' +import messages from './messages.js' export const Drawer = ({ intl, diff --git a/site/fragments/navigation/src/Navigation.tsx b/site/fragments/navigation/src/Navigation.tsx index 42230373a..11753b5f7 100644 --- a/site/fragments/navigation/src/Navigation.tsx +++ b/site/fragments/navigation/src/Navigation.tsx @@ -15,9 +15,9 @@ import { NextNavLink as NavLink } from '@ui/link' import { Navigation as UINavigation } from '@ui/navigation' import Chat from '@fragments/chat' -import { Drawer } from './Drawer' -import { Profile } from './Profile' -import messages from './messages' +import { Drawer } from './Drawer.js' +import { Profile } from './Profile.js' +import messages from './messages.js' export const Navigation = ({ intl, diff --git a/site/fragments/navigation/src/Profile.tsx b/site/fragments/navigation/src/Profile.tsx index 1364528e3..3be175625 100644 --- a/site/fragments/navigation/src/Profile.tsx +++ b/site/fragments/navigation/src/Profile.tsx @@ -11,7 +11,7 @@ import { Row } from '@ui/layout' import { NavLink as BaseNavLink } from '@ui/link' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const Profile = ({ intl, diff --git a/site/fragments/navigation/src/index.tsx b/site/fragments/navigation/src/index.tsx index 9bf19c4d9..bfbcfee2f 100644 --- a/site/fragments/navigation/src/index.tsx +++ b/site/fragments/navigation/src/index.tsx @@ -5,8 +5,8 @@ import React from 'react' import { useDrawer } from '@ui/drawer' -import { Navigation } from './Navigation' -import { useProfile } from './useProfile' +import { Navigation } from './Navigation.js' +import { useProfile } from './useProfile.js' const TRAEFIK_LOCAL_PORTS = ['18880', '18443'] diff --git a/site/fragments/project-customer/src/ProjectCustomer.tsx b/site/fragments/project-customer/src/ProjectCustomer.tsx index cc837634c..bbbecc661 100644 --- a/site/fragments/project-customer/src/ProjectCustomer.tsx +++ b/site/fragments/project-customer/src/ProjectCustomer.tsx @@ -9,7 +9,7 @@ import { Row } from '@ui/layout' import { RelativeTime } from '@ui/relative-time' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const ProjectCustomer = ({ intl, profile, member, activity }: any) => ( { const intl = useIntl() diff --git a/site/fragments/project-reply/src/ProjectReply.tsx b/site/fragments/project-reply/src/ProjectReply.tsx index 1df4423c4..b1e39d519 100644 --- a/site/fragments/project-reply/src/ProjectReply.tsx +++ b/site/fragments/project-reply/src/ProjectReply.tsx @@ -20,7 +20,7 @@ import { Select } from '@ui/select' import { Text } from '@ui/text' import ChooseSpecialistModal from '@fragments/choose-specialist-modal' -import messages from './messages' +import messages from './messages.js' export const ProjectReply = ({ intl, diff --git a/site/fragments/project-reply/src/__tests__/ProjectReply.test.tsx b/site/fragments/project-reply/src/__tests__/ProjectReply.test.tsx index 8160ec90f..037f132a5 100644 --- a/site/fragments/project-reply/src/__tests__/ProjectReply.test.tsx +++ b/site/fragments/project-reply/src/__tests__/ProjectReply.test.tsx @@ -10,7 +10,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { ProjectReply } from '../ProjectReply' +import { ProjectReply } from '../ProjectReply.js' const TestComponent = () => { const intl = useIntl() diff --git a/site/fragments/project-reply/src/index.tsx b/site/fragments/project-reply/src/index.tsx index c2ae39e5e..fbebe1cad 100644 --- a/site/fragments/project-reply/src/index.tsx +++ b/site/fragments/project-reply/src/index.tsx @@ -4,8 +4,8 @@ import { useState } from 'react' import { useIntl } from 'react-intl' import React from 'react' -import { ProjectReply } from './ProjectReply' -import { useCreate } from './useCreate' +import { ProjectReply } from './ProjectReply.js' +import { useCreate } from './useCreate.js' const TRAEFIK_LOCAL_PORTS = ['18880', '18443'] diff --git a/site/fragments/projects-detail/src/ProjectsDetail.tsx b/site/fragments/projects-detail/src/ProjectsDetail.tsx index f1042b4b1..b5d567edb 100644 --- a/site/fragments/projects-detail/src/ProjectsDetail.tsx +++ b/site/fragments/projects-detail/src/ProjectsDetail.tsx @@ -8,8 +8,8 @@ import { Layout } from '@ui/layout' import { Text } from '@ui/text' import ProjectsShort from '@fragments/project-short' -import Worksheet from './worksheet' -import messages from './messages' +import Worksheet from './worksheet/index.js' +import messages from './messages.js' export const ProjectsDetail = ({ intl, diff --git a/site/fragments/projects-detail/src/__tests__/ProjectsDetail.test.tsx b/site/fragments/projects-detail/src/__tests__/ProjectsDetail.test.tsx index 334ba7325..96b48053a 100644 --- a/site/fragments/projects-detail/src/__tests__/ProjectsDetail.test.tsx +++ b/site/fragments/projects-detail/src/__tests__/ProjectsDetail.test.tsx @@ -10,7 +10,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { ProjectsDetail } from '../ProjectsDetail' +import { ProjectsDetail } from '../ProjectsDetail.js' const TestComponent = () => { const intl = useIntl() diff --git a/site/fragments/projects-detail/src/index.tsx b/site/fragments/projects-detail/src/index.tsx index 2b26fc766..9206598c4 100644 --- a/site/fragments/projects-detail/src/index.tsx +++ b/site/fragments/projects-detail/src/index.tsx @@ -1,7 +1,7 @@ import { useIntl } from 'react-intl' import React from 'react' -import { ProjectsDetail } from './ProjectsDetail' +import { ProjectsDetail } from './ProjectsDetail.js' const ProjectsDetailFragment = (data) => { const intl = useIntl() diff --git a/site/fragments/projects-detail/src/worksheet/Ceilings.tsx b/site/fragments/projects-detail/src/worksheet/Ceilings.tsx index 52cad2872..c404bc85a 100644 --- a/site/fragments/projects-detail/src/worksheet/Ceilings.tsx +++ b/site/fragments/projects-detail/src/worksheet/Ceilings.tsx @@ -5,7 +5,7 @@ import { Layout } from '@ui/layout' import { Text } from '@ui/text' import messages from '@fragments/ceilings-worksheet/src/messages' -import { CheckItem } from './CheckItem' +import { CheckItem } from './CheckItem.js' export const Ceilings = ({ intl, diff --git a/site/fragments/projects-detail/src/worksheet/Floors.tsx b/site/fragments/projects-detail/src/worksheet/Floors.tsx index 1f01c6e3a..d30eae277 100644 --- a/site/fragments/projects-detail/src/worksheet/Floors.tsx +++ b/site/fragments/projects-detail/src/worksheet/Floors.tsx @@ -5,7 +5,7 @@ import { Layout } from '@ui/layout' import { Text } from '@ui/text' import messages from '@fragments/floors-worksheet/src/messages' -import { CheckItem } from './CheckItem' +import { CheckItem } from './CheckItem.js' export const Floors = ({ intl, diff --git a/site/fragments/projects-detail/src/worksheet/HomeBuilding.tsx b/site/fragments/projects-detail/src/worksheet/HomeBuilding.tsx index 1eea00994..c95e2f6d2 100644 --- a/site/fragments/projects-detail/src/worksheet/HomeBuilding.tsx +++ b/site/fragments/projects-detail/src/worksheet/HomeBuilding.tsx @@ -6,7 +6,7 @@ import { Row } from '@ui/layout' import { Text } from '@ui/text' import messages from '@fragments/home-building-worksheet/src/messages' -import { CheckItem } from './CheckItem' +import { CheckItem } from './CheckItem.js' export const HomeBuilding = ({ intl, diff --git a/site/fragments/projects-detail/src/worksheet/Wallpapering.tsx b/site/fragments/projects-detail/src/worksheet/Wallpapering.tsx index a660b1ddc..f0e96254c 100644 --- a/site/fragments/projects-detail/src/worksheet/Wallpapering.tsx +++ b/site/fragments/projects-detail/src/worksheet/Wallpapering.tsx @@ -5,7 +5,7 @@ import { Layout } from '@ui/layout' import { Text } from '@ui/text' import messages from '@fragments/wallpapering-worksheet/src/messages' -import { CheckItem } from './CheckItem' +import { CheckItem } from './CheckItem.js' export const Wallpapering = ({ intl, diff --git a/site/fragments/projects-detail/src/worksheet/Welding.tsx b/site/fragments/projects-detail/src/worksheet/Welding.tsx index 981c9c58b..62948211a 100644 --- a/site/fragments/projects-detail/src/worksheet/Welding.tsx +++ b/site/fragments/projects-detail/src/worksheet/Welding.tsx @@ -4,7 +4,7 @@ import { Column } from '@ui/layout' import { Layout } from '@ui/layout' import messages from '@fragments/welding-worksheet/src/messages' -import { CheckItem } from './CheckItem' +import { CheckItem } from './CheckItem.js' export const Welding = ({ intl, diff --git a/site/fragments/projects-detail/src/worksheet/index.tsx b/site/fragments/projects-detail/src/worksheet/index.tsx index 1f345acd8..cb52feae0 100644 --- a/site/fragments/projects-detail/src/worksheet/index.tsx +++ b/site/fragments/projects-detail/src/worksheet/index.tsx @@ -1,10 +1,10 @@ import React from 'react' -import { Ceilings } from './Ceilings' -import { Floors } from './Floors' -import { HomeBuilding } from './HomeBuilding' -import { Wallpapering } from './Wallpapering' -import { Welding } from './Welding' +import { Ceilings } from './Ceilings.js' +import { Floors } from './Floors.js' +import { HomeBuilding } from './HomeBuilding.js' +import { Wallpapering } from './Wallpapering.js' +import { Welding } from './Welding.js' const Worksheet = ({ intl, value }) => { const data = value && JSON.parse(value) diff --git a/site/fragments/projects/src/Projects.tsx b/site/fragments/projects/src/Projects.tsx index d33db1282..bf15a0562 100644 --- a/site/fragments/projects/src/Projects.tsx +++ b/site/fragments/projects/src/Projects.tsx @@ -8,7 +8,7 @@ import { Search } from '@ui/search' import { Text } from '@ui/text' import ProjectShort from '@fragments/project-short' -import messages from './messages' +import messages from './messages.js' export const Projects = ({ intl, projects = [], searchData = [], onSearch }: any) => ( diff --git a/site/fragments/projects/src/__tests__/Projects.test.tsx b/site/fragments/projects/src/__tests__/Projects.test.tsx index 0e76a4963..8c767db50 100644 --- a/site/fragments/projects/src/__tests__/Projects.test.tsx +++ b/site/fragments/projects/src/__tests__/Projects.test.tsx @@ -10,7 +10,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { Projects } from '../Projects' +import { Projects } from '../Projects.js' const TestComponent = () => { const intl = useIntl() diff --git a/site/fragments/projects/src/index.tsx b/site/fragments/projects/src/index.tsx index b8f946dfd..a5797477e 100644 --- a/site/fragments/projects/src/index.tsx +++ b/site/fragments/projects/src/index.tsx @@ -2,8 +2,8 @@ import { useState } from 'react' import { useIntl } from 'react-intl' import React from 'react' -import { Projects } from './Projects' -import { useData } from './useData' +import { Projects } from './Projects.js' +import { useData } from './useData.js' const ProjectsFragment = ({ activeCategory = '' }) => { const [query, onSearch] = useState('') diff --git a/site/fragments/specialists-detail/src/SpecialistsDetail.tsx b/site/fragments/specialists-detail/src/SpecialistsDetail.tsx index 8bc620542..c190bd167 100644 --- a/site/fragments/specialists-detail/src/SpecialistsDetail.tsx +++ b/site/fragments/specialists-detail/src/SpecialistsDetail.tsx @@ -20,7 +20,7 @@ import { ReadMore } from '@ui/read-more' import { Text } from '@ui/text' import Reviews from '@fragments/reviews' -import messages from './messages' +import messages from './messages.js' export const SpecialistsDetail = ({ intl, diff --git a/site/fragments/specialists-detail/src/__tests__/SpecialistsDetail.test.tsx b/site/fragments/specialists-detail/src/__tests__/SpecialistsDetail.test.tsx index 51ef08a9e..48f051f5e 100644 --- a/site/fragments/specialists-detail/src/__tests__/SpecialistsDetail.test.tsx +++ b/site/fragments/specialists-detail/src/__tests__/SpecialistsDetail.test.tsx @@ -9,7 +9,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { SpecialistsDetail } from '../SpecialistsDetail' +import { SpecialistsDetail } from '../SpecialistsDetail.js' const TestComponent = () => { const intl = useIntl() diff --git a/site/fragments/specialists-detail/src/index.tsx b/site/fragments/specialists-detail/src/index.tsx index edc012806..204dc8270 100644 --- a/site/fragments/specialists-detail/src/index.tsx +++ b/site/fragments/specialists-detail/src/index.tsx @@ -4,7 +4,7 @@ import React from 'react' import { useChat } from '@ui/chat' -import { SpecialistsDetail } from './SpecialistsDetail' +import { SpecialistsDetail } from './SpecialistsDetail.js' const SpecialistsDetailFragment = (data) => { const intl = useIntl() diff --git a/site/fragments/specialists/src/Specialists.tsx b/site/fragments/specialists/src/Specialists.tsx index a6ab652e0..d86881b8c 100644 --- a/site/fragments/specialists/src/Specialists.tsx +++ b/site/fragments/specialists/src/Specialists.tsx @@ -15,7 +15,7 @@ import { Option } from '@ui/search' import { Search } from '@ui/search' import { Text } from '@ui/text' -import messages from './messages' +import messages from './messages.js' export const Specialists = ({ intl, diff --git a/site/fragments/specialists/src/__tests__/Specialists.test.tsx b/site/fragments/specialists/src/__tests__/Specialists.test.tsx index 552503688..fba4e0e68 100644 --- a/site/fragments/specialists/src/__tests__/Specialists.test.tsx +++ b/site/fragments/specialists/src/__tests__/Specialists.test.tsx @@ -10,7 +10,7 @@ import React from 'react' import { ThemeProvider } from '@ui/theme' import { render } from '@testing-library/react' -import { Specialists } from '../Specialists' +import { Specialists } from '../Specialists.js' const TestComponent = () => { const intl = useIntl() diff --git a/site/fragments/specialists/src/index.tsx b/site/fragments/specialists/src/index.tsx index 1e25b0a92..8de0e0877 100644 --- a/site/fragments/specialists/src/index.tsx +++ b/site/fragments/specialists/src/index.tsx @@ -5,8 +5,8 @@ import React from 'react' import { useChat } from '@ui/chat' -import { Specialists } from './Specialists' -import { useData } from './useData' +import { Specialists } from './Specialists.js' +import { useData } from './useData.js' const SpecialistsFragment = ({ activeCategory = '' }) => { const router = useRouter() diff --git a/site/pages/index-page/src/Seo.tsx b/site/pages/index-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/site/pages/index-page/src/Seo.tsx +++ b/site/pages/index-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/site/pages/index-page/src/index.tsx b/site/pages/index-page/src/index.tsx index f4c42d5f2..7f5932e9d 100644 --- a/site/pages/index-page/src/index.tsx +++ b/site/pages/index-page/src/index.tsx @@ -1,7 +1,7 @@ import React from 'react' -import { IndexPage as Index } from './IndexPage' -import { Seo } from './Seo' +import { IndexPage as Index } from './IndexPage.js' +import { Seo } from './Seo.js' const IndexPage = () => ( <> diff --git a/site/pages/projects-detail-page/src/Seo.tsx b/site/pages/projects-detail-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/site/pages/projects-detail-page/src/Seo.tsx +++ b/site/pages/projects-detail-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/site/pages/projects-detail-page/src/index.tsx b/site/pages/projects-detail-page/src/index.tsx index 21a1b160e..b5a08e6b9 100644 --- a/site/pages/projects-detail-page/src/index.tsx +++ b/site/pages/projects-detail-page/src/index.tsx @@ -2,11 +2,11 @@ import { useUser } from '@atls/react-user' import { useRouter } from 'next/router' import React from 'react' -import { ProjectsDetailPage as ProjectsDetail } from './ProjectsDetailPage' -import { Seo } from './Seo' -import { Track } from './Track' -import { useDataProjects } from './useData' -import { useDataReplies } from './useData' +import { ProjectsDetailPage as ProjectsDetail } from './ProjectsDetailPage.js' +import { Seo } from './Seo.js' +import { Track } from './Track.js' +import { useDataProjects } from './useData.js' +import { useDataReplies } from './useData.js' const ProjectsDetailPage = () => { const router = useRouter() diff --git a/site/pages/projects-page/src/ProjectsPage.tsx b/site/pages/projects-page/src/ProjectsPage.tsx index ff66411d7..c54d5117a 100644 --- a/site/pages/projects-page/src/ProjectsPage.tsx +++ b/site/pages/projects-page/src/ProjectsPage.tsx @@ -8,7 +8,7 @@ import Footer from '@site/footer-fragment' import Navigation from '@site/navigation-fragment' import Projects from '@site/projects-fragment' -import messages from './messages' +import messages from './messages.js' export const ProjectsPage = ({ intl, activeCategory, selectCategory }) => ( <> diff --git a/site/pages/projects-page/src/Seo.tsx b/site/pages/projects-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/site/pages/projects-page/src/Seo.tsx +++ b/site/pages/projects-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/site/pages/projects-page/src/index.tsx b/site/pages/projects-page/src/index.tsx index d4c41080a..efe84d382 100644 --- a/site/pages/projects-page/src/index.tsx +++ b/site/pages/projects-page/src/index.tsx @@ -3,8 +3,8 @@ import { useState } from 'react' import { useIntl } from 'react-intl' import React from 'react' -import { ProjectsPage as Projects } from './ProjectsPage' -import { Seo } from './Seo' +import { ProjectsPage as Projects } from './ProjectsPage.js' +import { Seo } from './Seo.js' const ProjectsPage = () => { const intl = useIntl() diff --git a/site/pages/specialists-detail-page/src/Seo.tsx b/site/pages/specialists-detail-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/site/pages/specialists-detail-page/src/Seo.tsx +++ b/site/pages/specialists-detail-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/site/pages/specialists-detail-page/src/index.tsx b/site/pages/specialists-detail-page/src/index.tsx index 0a1333e4b..29ea2536e 100644 --- a/site/pages/specialists-detail-page/src/index.tsx +++ b/site/pages/specialists-detail-page/src/index.tsx @@ -1,9 +1,9 @@ import { useRouter } from 'next/router' import React from 'react' -import { Seo } from './Seo' -import { SpecialistsDetailPage as SpecialistsDetail } from './SpecialistsDetailPage' -import { useData } from './useData' +import { Seo } from './Seo.js' +import { SpecialistsDetailPage as SpecialistsDetail } from './SpecialistsDetailPage.js' +import { useData } from './useData.js' const SpecialistsDetailPage = () => { const router = useRouter() diff --git a/site/pages/specialists-page/src/Seo.tsx b/site/pages/specialists-page/src/Seo.tsx index 891ffe185..801960065 100644 --- a/site/pages/specialists-page/src/Seo.tsx +++ b/site/pages/specialists-page/src/Seo.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl' import React from 'react' import Helmet from 'react-helmet' -import messages from './messages' +import messages from './messages.js' export const Seo = () => { const intl = useIntl() diff --git a/site/pages/specialists-page/src/SpecialistsPage.tsx b/site/pages/specialists-page/src/SpecialistsPage.tsx index bdc5ea505..cc04ef6ca 100644 --- a/site/pages/specialists-page/src/SpecialistsPage.tsx +++ b/site/pages/specialists-page/src/SpecialistsPage.tsx @@ -8,7 +8,7 @@ import Footer from '@site/footer-fragment' import Navigation from '@site/navigation-fragment' import Specialists from '@site/specialists-fragment' -import messages from './messages' +import messages from './messages.js' export const SpecialistsPage = ({ intl, activeCategory, selectCategory }) => ( <> diff --git a/site/pages/specialists-page/src/index.tsx b/site/pages/specialists-page/src/index.tsx index 075ec00d7..41c999a3d 100644 --- a/site/pages/specialists-page/src/index.tsx +++ b/site/pages/specialists-page/src/index.tsx @@ -3,8 +3,8 @@ import { useState } from 'react' import { useIntl } from 'react-intl' import React from 'react' -import { Seo } from './Seo' -import { SpecialistsPage as Specialists } from './SpecialistsPage' +import { Seo } from './Seo.js' +import { SpecialistsPage as Specialists } from './SpecialistsPage.js' const SpecialistsPage = () => { const intl = useIntl() diff --git a/ui/accordion/src/accordion.component.tsx b/ui/accordion/src/accordion.component.tsx index d9b2ff3ee..263a03edc 100644 --- a/ui/accordion/src/accordion.component.tsx +++ b/ui/accordion/src/accordion.component.tsx @@ -12,9 +12,9 @@ import { Layout } from '@ui/layout' import { Row } from '@ui/layout' import { Text } from '@ui/text' -import { AccordionProps } from './accordion.interface' -import { ContentContainer } from './content-container' -import { TriggerContainer } from './trigger-container' +import { AccordionProps } from './accordion.interface.js' +import { ContentContainer } from './content-container/index.js' +import { TriggerContainer } from './trigger-container/index.js' const Accordion: FC = ({ title, children }) => { const [active, setActive] = useState(false) diff --git a/ui/accordion/src/content-container/content-container.component.ts b/ui/accordion/src/content-container/content-container.component.ts index 4e0c9a7b3..90394a155 100644 --- a/ui/accordion/src/content-container/content-container.component.ts +++ b/ui/accordion/src/content-container/content-container.component.ts @@ -2,7 +2,7 @@ import { motion } from 'framer-motion' import styled from '@emotion/styled' -import { baseStyles } from './content-container.styles' +import { baseStyles } from './content-container.styles.js' const ContentContainer = styled(motion.div)(baseStyles) diff --git a/ui/accordion/src/content-container/index.ts b/ui/accordion/src/content-container/index.ts index becdbdf9b..c904645b7 100644 --- a/ui/accordion/src/content-container/index.ts +++ b/ui/accordion/src/content-container/index.ts @@ -1 +1 @@ -export * from './content-container.component' +export * from './content-container.component.js' diff --git a/ui/accordion/src/index.ts b/ui/accordion/src/index.ts index 2c119f6cc..cb2adcd69 100644 --- a/ui/accordion/src/index.ts +++ b/ui/accordion/src/index.ts @@ -1 +1 @@ -export * from './accordion.component' +export * from './accordion.component.js' diff --git a/ui/accordion/src/trigger-container/index.ts b/ui/accordion/src/trigger-container/index.ts index 631692c00..4921ac638 100644 --- a/ui/accordion/src/trigger-container/index.ts +++ b/ui/accordion/src/trigger-container/index.ts @@ -1 +1 @@ -export * from './trigger-container.component' +export * from './trigger-container.component.js' diff --git a/ui/accordion/src/trigger-container/trigger-container.component.ts b/ui/accordion/src/trigger-container/trigger-container.component.ts index 02074ea26..4634b5e16 100644 --- a/ui/accordion/src/trigger-container/trigger-container.component.ts +++ b/ui/accordion/src/trigger-container/trigger-container.component.ts @@ -1,7 +1,7 @@ import { Row } from '@ui/layout' import styled from '@emotion/styled' -import { baseStyles } from './trigger-container.styles' +import { baseStyles } from './trigger-container.styles.js' const TriggerContainer = styled(Row)(baseStyles) diff --git a/ui/avatar/src/index.tsx b/ui/avatar/src/index.tsx index 227ecdba3..71a66aed8 100644 --- a/ui/avatar/src/index.tsx +++ b/ui/avatar/src/index.tsx @@ -1 +1 @@ -export * from './Avatar' +export * from './Avatar.js' diff --git a/ui/button/src/Button.tsx b/ui/button/src/Button.tsx index f95f683ed..4d77c2312 100644 --- a/ui/button/src/Button.tsx +++ b/ui/button/src/Button.tsx @@ -9,8 +9,8 @@ import React from 'react' import styled from '@emotion/styled' -import { StyledButtonProps } from './types' -import { divideChildren } from './utils' +import { StyledButtonProps } from './types.js' +import { divideChildren } from './utils.js' const base: any = ({ theme }: any) => ({ fontFamily: theme.fonts.primary, diff --git a/ui/button/src/CheckButton.tsx b/ui/button/src/CheckButton.tsx index 9c70c095f..963fd02db 100644 --- a/ui/button/src/CheckButton.tsx +++ b/ui/button/src/CheckButton.tsx @@ -3,7 +3,7 @@ import React from 'react' import { CheckIcon } from '@ui/icons' import { Text } from '@ui/text' -import { Button } from './Button' +import { Button } from './Button.js' export const CheckButton = ({ active = false, name, text, onClick }) => (